From 15362958722fe6d3070d1911a5a9edd7e7b41c58 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 09:20:45 -0500 Subject: [PATCH 001/762] Add support for dkp-less instructions. Todo: actually test building with dkP. --- Makefile | 79 +++++++++++++++++++++++--------------- berry_fix/Makefile | 32 ++++++++------- berry_fix/payload/Makefile | 32 ++++++++------- libagbsyscall/Makefile | 33 ++++++++-------- map_data_rules.mk | 4 +- 5 files changed, 94 insertions(+), 86 deletions(-) diff --git a/Makefile b/Makefile index 07143e4ad4dc..d39b9fb2d447 100644 --- a/Makefile +++ b/Makefile @@ -1,28 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ +# check if dkP's base_tools makefile exists +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) + include $(TOOLCHAIN)/base_tools +# otherwise, either use the bin files or the +# arm-none-eabi binaries on the system else -HOSTCXX := $(CXX) + ifneq ($(TOOLCHAIN),) + export PATH := $(TOOLCHAIN)/bin:$(PATH) + endif + PREFIX := arm-none-eabi- + OBJCOPY := $(PREFIX)objcopy + # note: the makefile must be set up so MODERNCC is never called + # if MODERN=0 + export MODERNCC := $(PREFIX)gcc + export AS := $(PREFIX)as endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools +ifneq ($(TOOLCHAIN),) +export CPP := $(PREFIX)cpp else -export PATH := $(TOOLCHAIN)/bin:$(PATH) -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as +export CPP := $(CC) -E endif -export CPP := $(PREFIX)cpp export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) @@ -37,6 +37,16 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ROM_NAME := pokeemerald.gba +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) @@ -64,18 +74,18 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN) ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -ROM := pokeemerald.gba -OBJ_DIR := build/emerald +ROM := $(ROM_NAME) +OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(CC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(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 := pokeemerald_modern.gba -OBJ_DIR := build/modern -LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +ROM := $(MODERN_ROM_NAME) +OBJ_DIR := $(MODERN_OBJ_DIR_NAME) +LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" endif -CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) +CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -nostdinc -undef ifeq ($(MODERN),0) CPPFLAGS += -I tools/agbcc/include -I tools/agbcc endif @@ -111,7 +121,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -162,7 +172,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) + @$(MAKE) -C $@ rom: $(ROM) ifeq ($(COMPARE),1) @@ -177,7 +187,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidy +mostlyclean: tidynonmodern tidymodern rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -192,10 +202,15 @@ mostlyclean: tidy tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) -ifeq ($(MODERN),0) - @$(MAKE) tidy MODERN=1 -endif +tidynonmodern: + rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) + rm -rf $(OBJ_DIR_NAME) + +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 @@ -296,11 +311,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 0ead3804fd0f..dd52792ec285 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,28 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ +# check if dkP's base_tools makefile exists +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) + include $(TOOLCHAIN)/base_tools +# otherwise, either use the bin files or the +# arm-none-eabi binaries on the system else -HOSTCXX := $(CXX) + ifneq ($(TOOLCHAIN),) + export PATH := $(TOOLCHAIN)/bin:$(PATH) + endif + PREFIX := arm-none-eabi- + OBJCOPY := $(PREFIX)objcopy + export MODERNCC := $(PREFIX)gcc + export AS := $(PREFIX)as endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools +ifneq ($(TOOLCHAIN),) +export CPP := $(PREFIX)cpp else -export PATH := $(TOOLCHAIN)/bin:$(PATH) -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as +export CPP := $(CC) -E endif -export CPP := $(PREFIX)cpp export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index a121fda93bf9..20d3d60c81b5 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,28 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ +# check if dkP's base_tools makefile exists +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) + include $(TOOLCHAIN)/base_tools +# otherwise, either use the bin files or the +# arm-none-eabi binaries on the system else -HOSTCXX := $(CXX) + ifneq ($(TOOLCHAIN),) + export PATH := $(TOOLCHAIN)/bin:$(PATH) + endif + PREFIX := arm-none-eabi- + OBJCOPY := $(PREFIX)objcopy + export MODERNCC := $(PREFIX)gcc + export AS := $(PREFIX)as endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools +ifneq ($(TOOLCHAIN),) +export CPP := $(PREFIX)cpp else -export PATH := $(TOOLCHAIN)/bin:$(PATH) -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as +export CPP := $(CC) -E endif -export CPP := $(PREFIX)cpp export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 911cdb237c44..6c0ba681edd2 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,30 +1,27 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ +# check if dkP's base_tools makefile exists +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) + include $(TOOLCHAIN)/base_tools +# otherwise, either use the bin files or the +# arm-none-eabi binaries on the system else -HOSTCXX := $(CXX) + ifneq ($(TOOLCHAIN),) + export PATH := $(TOOLCHAIN)/bin:$(PATH) + endif + PREFIX := arm-none-eabi- + OBJCOPY := $(PREFIX)objcopy + export MODERNCC := $(PREFIX)gcc + export AS := $(PREFIX)as endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools +ifneq ($(TOOLCHAIN),) +export CPP := $(PREFIX)cpp else -export PATH := $(TOOLCHAIN)/bin:$(PATH) -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as +export CPP := $(CC) -E endif -export CPP := $(PREFIX)cpp export LD := $(PREFIX)ld - ifeq ($(OS),Windows_NT) EXE := .exe else diff --git a/map_data_rules.mk b/map_data_rules.mk index 0203b383d001..626cd4724080 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 - | $(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 - | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json From 51e8b8b8dbf51f57a7d925137a369864f7debdbb Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 10:37:50 -0500 Subject: [PATCH 002/762] Don't use base_tools if dkP is installed, also just use $(CC) -E for CPP regardless. --- Makefile | 37 +++++++++++++++++-------------------- berry_fix/Makefile | 35 +++++++++++++++++------------------ berry_fix/payload/Makefile | 35 +++++++++++++++++------------------ libagbsyscall/Makefile | 36 ++++++++++++++++++------------------ 4 files changed, 69 insertions(+), 74 deletions(-) diff --git a/Makefile b/Makefile index d39b9fb2d447..72af64f5c27b 100644 --- a/Makefile +++ b/Makefile @@ -1,29 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# check if dkP's base_tools makefile exists -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) - include $(TOOLCHAIN)/base_tools -# otherwise, either use the bin files or the -# arm-none-eabi binaries on the system -else - ifneq ($(TOOLCHAIN),) - export PATH := $(TOOLCHAIN)/bin:$(PATH) - endif - PREFIX := arm-none-eabi- - OBJCOPY := $(PREFIX)objcopy - # note: the makefile must be set up so MODERNCC is never called - # if MODERN=0 - export MODERNCC := $(PREFIX)gcc - export AS := $(PREFIX)as -endif +# 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 tihs system ifneq ($(TOOLCHAIN),) -export CPP := $(PREFIX)cpp -else -export CPP := $(CC) -E +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -export LD := $(PREFIX)ld + +PREFIX := arm-none-eabi- +OBJCOPY := $(PREFIX)objcopy +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/Makefile b/berry_fix/Makefile index dd52792ec285..f7ce405047ec 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,27 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# check if dkP's base_tools makefile exists -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) - include $(TOOLCHAIN)/base_tools -# otherwise, either use the bin files or the -# arm-none-eabi binaries on the system -else - ifneq ($(TOOLCHAIN),) - export PATH := $(TOOLCHAIN)/bin:$(PATH) - endif - PREFIX := arm-none-eabi- - OBJCOPY := $(PREFIX)objcopy - export MODERNCC := $(PREFIX)gcc - export AS := $(PREFIX)as -endif +# 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 tihs system ifneq ($(TOOLCHAIN),) -export CPP := $(PREFIX)cpp -else -export CPP := $(CC) -E +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -export LD := $(PREFIX)ld + +PREFIX := arm-none-eabi- +OBJCOPY := $(PREFIX)objcopy +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index 20d3d60c81b5..7a6a92396084 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,27 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# check if dkP's base_tools makefile exists -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) - include $(TOOLCHAIN)/base_tools -# otherwise, either use the bin files or the -# arm-none-eabi binaries on the system -else - ifneq ($(TOOLCHAIN),) - export PATH := $(TOOLCHAIN)/bin:$(PATH) - endif - PREFIX := arm-none-eabi- - OBJCOPY := $(PREFIX)objcopy - export MODERNCC := $(PREFIX)gcc - export AS := $(PREFIX)as -endif +# 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 tihs system ifneq ($(TOOLCHAIN),) -export CPP := $(PREFIX)cpp -else -export CPP := $(CC) -E +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -export LD := $(PREFIX)ld + +PREFIX := arm-none-eabi- +OBJCOPY := $(PREFIX)objcopy +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 6c0ba681edd2..ba349e9ebb80 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,27 +1,27 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# check if dkP's base_tools makefile exists -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) - include $(TOOLCHAIN)/base_tools -# otherwise, either use the bin files or the -# arm-none-eabi binaries on the system -else - ifneq ($(TOOLCHAIN),) - export PATH := $(TOOLCHAIN)/bin:$(PATH) - endif - PREFIX := arm-none-eabi- - OBJCOPY := $(PREFIX)objcopy - export MODERNCC := $(PREFIX)gcc - export AS := $(PREFIX)as -endif +# 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 tihs system ifneq ($(TOOLCHAIN),) -export CPP := $(PREFIX)cpp -else -export CPP := $(CC) -E +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -export LD := $(PREFIX)ld + +PREFIX := arm-none-eabi- +OBJCOPY := $(PREFIX)objcopy +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc + ifeq ($(OS),Windows_NT) EXE := .exe else From 90d8bb1d332036a26da549b456cf0f2a3ace6d54 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 11:28:01 -0500 Subject: [PATCH 003/762] Partially work on the new Install.MD. Todo: - Legacy Windows instructions - macOS, Linux instructions - figure out what to do with the base_tools note for macOS - dkp installation instructions for platforms which do not install dkp. --- INSTALL.md | 203 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 145 insertions(+), 58 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 20d55e134cda..8669738be0c8 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,82 +1,170 @@ -# Prerequisites - -| Linux | macOS | Windows 10 -| - | - | - -| none | [Xcode Command Line Tools Package][xcode] | [Windows Terminal][terminal] and [Windows Subsystem for Linux (WSL)][wsl] - -[xcode]: https://developer.apple.com/library/archive/technotes/tn2339/_index.html -[terminal]: https://docs.microsoft.com/windows/terminal/get-started -[wsl]: https://docs.microsoft.com/windows/wsl/install-win10 - -Independently from the specific OS, make sure that the `gcc`, `g++`, `make`, `git`, and `libpng-dev` packages or their equivalents are installed and accessible to the development tools that are used by the project (this means that, for example, on Windows, the packages have to be installed in the WSL environment). The package names and installation methods may vary with each OS. - -Install the devkitARM toolchain of devkitPro as per [the instructions on their wiki](https://devkitpro.org/wiki/devkitPro_pacman). On Windows, follow the Linux instructions inside WSL as any steps about the Windows installer do not apply. - -**Debian-based distro users:** This applies to Debian, Ubuntu, and similar distros, including in WSL. If necessary, install the `libarchive13`, `pkg-config`, and `gdebi-core` packages to be able to install devkitPro. - -**Windows 10 users:** WSL 2 is available in the 1903 release (build 18362) and later, therefore existing WSL 1 and [prerelease WSL](https://docs.microsoft.com/windows/wsl/install-legacy) users are recommended to update. Right-click the Start button or press `Win`+`X`, choose Run, and run `ms-settings:about` to determine the Windows version. Also check Windows Update to make sure your installation is up-to-date. - -**Windows 7 and 8.1 users:** pret is no longer focusing on support in pokeemerald for [old versions of Windows](https://support.microsoft.com/help/13853) so consider upgrading to a current release of Windows 10 or try a third-party guide like [this one](https://www.pokecommunity.com/showthread.php?t=425246) instead. - - -# Installation - -To set up the repository: - - git clone https://github.com/pret/pokeemerald - git clone https://github.com/pret/agbcc - - cd ./agbcc - ./build.sh - ./install.sh ../pokeemerald - - cd ../pokeemerald - +# Instructions + +These instructions explain how to set up the tools required to build **pokeemerald**, which assembles the source files into a ROM. + +If you run into trouble, ask for help on IRC or Discord (see [README.md](README.md)). + +## Windows 10 +WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1. These steps can be skipped if WSL1 is already installed. + +### Installing WSL1 +Open [Windows Powershell **as Administrator**](https://i.imgur.com/QKmVbP9.png), and run the following command (Shift+Insert is paste in the terminal). +``` +dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart +``` +Once the process finishes, restart your machine. + +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. Advanced users can pick a preferred Linux distribution, but build instructions may differ. + +Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). + +### Setting up WSL1 +Open **Ubuntu** (e.g. using Search). WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). Note that there will be no visible response when typing in the password, but the terminal will still read in input. + +A few notes before proceeding +- In the terminal, Copy and Paste is either done via + - **right-click** (selection + right click to Copy, right click with no selection to Paste) + - **Ctrl+Shift+C/Ctrl+Shift+V** (enabled by right-clicking the title bar, going to Properties, then checking the checkbox next to "Use Ctrl+Shift+C/V as Copy/Paste"). +- Some of the commands that you'll run will ask for your WSL password and/or confirmation to perform the stated action. This is to be expected, just enter your WSL password and/or the yes action when necessary. + +Update WSL/Ubuntu before continuing. Do this by running the following command: +```bash +sudo apt update && sudo apt upgrade +``` +Note that these commands will likely take a long time to finish. + +Certain packages are required to build pokeemerald. Install these packages by running the following command: +```bash +sudo apt install build-essential binutils-arm-none-eabi git libpng-dev +``` +(If the above command does not work, try the above command but replacing `apt` with `apt-get`). + +WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. You'll have to change the **current working directory** every time you open WSL. + +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: +```bash +cd /mnt/c/Users//Desktop/decomps +``` +Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. + +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username, and the drive letter with the letter of the drive of the folder where the package was saved to. Windows path names are case-insensitive so adhereing to capitalization isn't needed) + +If this works, then proceed to [Installation](#Installation). + +Otherwise, continue reading below for [the older Windows instructions](#windows). + +## Windows +TODO: add general Windows instructions + +## macOS +TODO: add macOS instructions + +## Linux +TODO: add Linux instructions + +## Installation +To download the pokeemerald repository: +```bash +git clone https://github.com/pret/pokeemerald +``` +If agbcc isn't built, run the following commands to build and install it into pokeemerald: +``` +git clone https://github.com/pret/agbcc +cd agbcc +./build.sh +./install.sh ../pokeemerald +``` +Otherwise, run the following commands to install agbcc into pokeemerald: +``` +cd agbcc +./install.sh ../pokeemerald +``` +Then, change directory back to the base directory where pokeemerald and agbcc are stored: +``` +cd .. +``` +Now you're ready to [build **pokeemerald**](#build-pokeemerald) +## Build pokeemerald +First, change directory to the pokeemerald folder: +```bash +cd pokeemerald +``` To build **pokeemerald.gba** for the first time and confirm it matches the official ROM image: - - make compare - +```bash +make compare +``` If an OK is returned, then the installation went smoothly. -**Windows users:** Consider adding exceptions for the `pokeemerald` and `agbcc` folders in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. - - -# Start - To build **pokeemerald.gba** with your changes: +```bash +make +``` - make - -**macOS users:** If the base tools are not found in new Terminal sessions after the first successful build, run `echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile` once to prevent the issue from occurring again. Verify that the `devkitarm-rules` package is installed as well; if not, install it by running `sudo dkp-pacman -S devkitarm-rules`. +**Windows users:** Consider adding an exception for the `pokeemerald` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. +**macOS users (this is probably outdated):** If the base tools are not found in new Terminal sessions after the first successful build, run `echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile` once to prevent the issue from occurring again. Verify that the `devkitarm-rules` package is installed as well; if not, install it by running `sudo dkp-pacman -S devkitarm-rules`. # Building guidance - ## Parallel builds See [the GNU docs](https://www.gnu.org/software/make/manual/html_node/Parallel.html) and [this Stack Exchange thread](https://unix.stackexchange.com/questions/208568) for more information. -To speed up building, run: - - make -j$(nproc) +To speed up building, first get the value of `nproc`: +```bash +nproc +``` +Builds can then be sped up by running the following command: +```bash +make -j +``` +Replace `` with the number that the `nproc` command returned. `nproc` is not available on macOS. The alternative is `sysctl -n hw.ncpu` ([relevant Stack Overflow thread](https://stackoverflow.com/questions/1715580)). - ## Debug info To build **pokeemerald.elf** with enhanced debug info: - - make DINFO=1 - +```bash +make DINFO=1 +``` ## devkitARM's C compiler -This project supports the `arm-none-eabi-gcc` compiler included with devkitARM r52. To build this target, simply run: - - make modern - +This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM has already been installed as part of the platform-specific instructions, simply run: +```bash +make modern +``` +Otherwise, follow the instructions below to install devkitARM. +### Installing devkitARM on WSL1 + +`gdebi-core` must be installed beforehand in order to install devkitPro (which facilitates the installation of devkitARM). Install this with the following command: +```bash +sudo apt install gdebi-core +``` +(If the above command does not work, try the above command but replacing `apt` with `apt-get`). + +Once `gdebi-core` is done installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. + +Change directory to where the package was downloaded. For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: +```bash +cd /mnt/c/Users//Downloads +``` +(Replace with your Windows username) + +Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. +```bash +sudo gdebi devkitpro-pacman.amd64.deb +sudo dkp-pacman -Sy +sudo dkp-pacman -S gba-dev +``` +Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + +Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): +```bash +source /etc/profile.d/devkit-env.sh +``` +devkitARM is now installed. ## Other toolchains @@ -90,7 +178,6 @@ The following is an example: To compile the `modern` target with this toolchain, the subdirectories `lib`, `include`, and `arm-none-eabi` must also be present. - # Useful additional tools * [porymap](https://github.com/huderlem/porymap) for viewing and editing maps From 01637deee53232432630e1ff64ff4550c7ca7aec Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 11:30:08 -0500 Subject: [PATCH 004/762] Fix bad clarification. --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index 8669738be0c8..66d49b412d24 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -47,7 +47,7 @@ cd /mnt/c/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username, and the drive letter with the letter of the drive of the folder where the package was saved to. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username, and the drive letter with the letter of the drive where you want to save pokeemerald. Windows path names are case-insensitive so adhereing to capitalization isn't needed) If this works, then proceed to [Installation](#Installation). From 6bf6cf2eb8ca0ee7b66c62ca9ab39d59f2a83877 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 11:32:22 -0500 Subject: [PATCH 005/762] Escape literal text. --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 66d49b412d24..e0164c1f31e9 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -47,7 +47,7 @@ cd /mnt/c/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username, and the drive letter with the letter of the drive where you want to save pokeemerald. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username, and the drive letter with the letter of the drive where you want to save pokeemerald. Windows path names are case-insensitive so adhereing to capitalization isn't needed) If this works, then proceed to [Installation](#Installation). @@ -150,7 +150,7 @@ Change directory to where the package was downloaded. For example, if the packag ```bash cd /mnt/c/Users//Downloads ``` -(Replace with your Windows username) +(Replace *\* with your Windows username) Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. ```bash From 59a6d18679365cb3a2e2d7fa7571fa2495652939 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 25 Nov 2020 11:46:12 -0500 Subject: [PATCH 006/762] Minor INSTALL.md cleanup, also don't print the wall of linked objects during make (helps spot warnings more easily) --- INSTALL.md | 4 ++-- Makefile | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index e0164c1f31e9..779572c69fbd 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -8,7 +8,7 @@ If you run into trouble, ask for help on IRC or Discord (see [README.md](README. WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1. These steps can be skipped if WSL1 is already installed. ### Installing WSL1 -Open [Windows Powershell **as Administrator**](https://i.imgur.com/QKmVbP9.png), and run the following command (Shift+Insert is paste in the terminal). +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). ``` dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart ``` @@ -21,7 +21,7 @@ Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubunt ### Setting up WSL1 Open **Ubuntu** (e.g. using Search). WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). Note that there will be no visible response when typing in the password, but the terminal will still read in input. -A few notes before proceeding +A few notes before proceeding: - In the terminal, Copy and Paste is either done via - **right-click** (selection + right click to Copy, right click with no selection to Paste) - **Ctrl+Shift+C/Ctrl+Shift+V** (enabled by right-clicking the title bar, going to Properties, then checking the checkbox next to "Use Ctrl+Shift+C/V as Copy/Paste"). diff --git a/Makefile b/Makefile index 72af64f5c27b..aa588445f232 100644 --- a/Makefile +++ b/Makefile @@ -341,7 +341,8 @@ $(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) berry_fix libagbsyscall - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB) + @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) From 976b967732454b3171ac5b5d61b865f1cc3a5777 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 26 Nov 2020 20:21:16 -0500 Subject: [PATCH 007/762] Add msys2 and Cygwin instructions, also add .exe extension to built tools. Todo: actually extensively test out msys2 and Cygwin, and double check the readme. --- INSTALL.md | 131 ++++++++++++++++++++++++++++++++++++--- Makefile | 6 +- tools/aif2pcm/Makefile | 10 ++- tools/bin2c/Makefile | 10 ++- tools/gbafix/Makefile | 10 ++- tools/gbagfx/Makefile | 12 +++- tools/jsonproc/Makefile | 10 ++- tools/mapjson/Makefile | 10 ++- tools/mid2agb/Makefile | 10 ++- tools/preproc/Makefile | 10 ++- tools/ramscrgen/Makefile | 10 ++- tools/rsfont/Makefile | 10 ++- tools/scaninc/Makefile | 10 ++- 13 files changed, 213 insertions(+), 36 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 779572c69fbd..f50ea1db76eb 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -4,8 +4,22 @@ These instructions explain how to set up the tools required to build **pokeemera If you run into trouble, ask for help on IRC or Discord (see [README.md](README.md)). -## Windows 10 -WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1. These steps can be skipped if WSL1 is already installed. +## Windows +Windows has instructions for building with three possible terminals, if users encounter unexpected errors in following instructions for one of the terminals. These instructions are: +- [Windows 10 (WSL1)](#windows-10-wsl1) +- [Windows (msys2)](#windows-(msys2)) +- [Windows (Cygwin)](#windows-(cygwin)) + +The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). + +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 the 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. + +## Windows 10 (WSL1) +WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred interchangeably as WSL). + +If WSL is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-(WSL1)). ### Installing WSL1 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). @@ -14,7 +28,7 @@ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux ``` Once the process finishes, restart your machine. -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. Advanced users can pick a preferred Linux distribution, but build instructions may differ. +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. Advanced users can pick a preferred Linux distribution, but setup instructions may differ. Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). @@ -39,6 +53,7 @@ sudo apt install build-essential binutils-arm-none-eabi git libpng-dev ``` (If the above command does not work, try the above command but replacing `apt` with `apt-get`). +### Choosing where to store pokeemerald (WSL1) WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. You'll have to change the **current working directory** every time you open WSL. For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: @@ -47,14 +62,103 @@ cd /mnt/c/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username, and the drive letter with the letter of the drive where you want to save pokeemerald. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) If this works, then proceed to [Installation](#Installation). -Otherwise, continue reading below for [the older Windows instructions](#windows). +Otherwise, continue reading below for [Windows instructions using msys2](#windows-(msys2)). -## Windows -TODO: add general Windows instructions +## Windows (msys2) + +If devkitPro is not installed, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). If devkitPro is installed, but msys2 hasn't previously been set up for another decompilation project, then go to [Setting up msys2](#setting-up-msys2). Otherwise, open msys2 and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-(msys2)). + +### Installing devkitPro +Download the devkitPro installer [here](https://github.com/devkitPro/installer/releases). + +Run the devkitPro installer. In the "Choose Components" screen, uncheck everything except GBA Development unless if you plan to use devkitPro for other purposes. Keep the install location as C:\devkitPro and leave the Start Menu option unchanged. + +### Setting up msys2 +Open msys2 at C:\devkitPro\msys2\msys2_shell.bat. + +Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. + +Certain packages are required to build pokeemerald. Install these by running the following command: +```bash +pacman -S make gcc zlib-devel git +``` +(This command will ask for confirmation, just enter the yes action when prompted). + +Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). + +Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\__**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: +```bash +cd Downloads +``` +(While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. Windows path names are case-insensitive so adhereing to capitalization isn’t needed. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there) + +Run the following command to uncompress and install libpng. +```bash +tar xf libpng-1.6.37 +cd libpng-1.6.37 +./configure --prefix=/usr +make check +make install +``` +Then finally, run the following command to change back to the user profile folder. +```bash +cd +``` + +### Choosing where to store pokeemerald (msys2) +At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open msys2. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). + +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: +```bash +cd Desktop/decomps +``` +Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. + +If this works, then proceed to [Installation](#Installation). + +Otherwise, continue reading below for [Windows instructions using Cygwin](#windows-(cygwin)). + +## Windows (Cygwin) +If devkitPro is not installed, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. + +If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). Otherwise, go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-(cygwin)) + +### Installing Cygwin +Download [Cygwin](https://cygwin.com/install.html): setup-x86_64.exe for 64-bit Windows, setup-x86.exe for 32-bit. + +Run the Cygwin setup and leave the default settings. At "Select Packages", set the view to "Full" and choose to install the following: +- `make` +- `git` +- `gcc-core` +- `gcc-g++` +- `libpng-devel` + +To quickly find these, use the search bar and type the name of each package. Ensure that the selected package name is the **exact** same as the one you're trying to download, e.g. `cmake` is **NOT** the same as `make`. + +Double click on the text that says "**Skip**" next to each package to select the most recent version to install. If the text says anything other than "**Skip**", (e.g. Keep or a version number), then the package is or will be installed and you don't need to do anything. + +Once all required packages have been selected, finish the installation. + +### Choosing where to store pokeemerald (Cygwin) +Open **Cygwin**. + +Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. + +Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\_\_**. If you don't want to store pokeemerald there, you'll have to change the **current working directory** every time you open Cygwin. + +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: +```bash +cd c:/Users//Desktop/decomps +``` +Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. + +(Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) + +If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## macOS TODO: add macOS instructions @@ -63,17 +167,24 @@ TODO: add macOS instructions TODO: add Linux instructions ## Installation -To download the pokeemerald repository: +If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: ```bash git clone https://github.com/pret/pokeemerald ``` -If agbcc isn't built, run the following commands to build and install it into pokeemerald: +If agbcc has not been built before, run the following commands to build and install it into pokeemerald: ``` git clone https://github.com/pret/agbcc cd agbcc ./build.sh ./install.sh ../pokeemerald ``` +If agbcc has been built before, but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: +``` +cd agbcc +git clean -fX +./build.sh +./install.sh ../pokeemerald +``` Otherwise, run the following commands to install agbcc into pokeemerald: ``` cd agbcc @@ -93,7 +204,7 @@ To build **pokeemerald.gba** for the first time and confirm it matches the offic ```bash make compare ``` -If an OK is returned, then the installation went smoothly. +If an OK is returned, then the installation went smoothly. **Note:** if you switched from Cygwin to msys2, you must run `make clean-tools` once before any subsequent `make` commands. To build **pokeemerald.gba** with your changes: ```bash diff --git a/Makefile b/Makefile index aa588445f232..bffa4b560996 100644 --- a/Makefile +++ b/Makefile @@ -235,7 +235,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -244,10 +244,10 @@ $(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 +$(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 +$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/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 diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index 77df29152730..dd48a87597af 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,12 +6,18 @@ LIBS = -lm SRCS = main.c extended.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: aif2pcm +all: aif2pcm$(EXE) @: -aif2pcm: $(SRCS) +aif2pcm$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 52806e39c6f1..4dbfab94fe34 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,10 +6,16 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -all: bin2c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: bin2c$(EXE) @: -bin2c: $(SRCS) +bin2c$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index 91a60a9e4c9d..efb016c97ed8 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,10 +3,16 @@ CC ?= gcc SRCS = gbafix.c -all: gbafix +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: gbafix$(EXE) @: -gbafix: $(SRCS) +gbafix$(EXE): $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index f0638414dae3..b4244aa8d6ab 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,15 +6,21 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: gbagfx +all: gbagfx$(EXE) @: -gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index 47198b171ed8..eec73eb7bf4b 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,12 +8,18 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: jsonproc +all: jsonproc$(EXE) @: -jsonproc: $(SRCS) $(HEADERS) +jsonproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index c1f703f9fe48..100e809c6c27 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,12 +6,18 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mapjson +all: mapjson$(EXE) @: -mapjson: $(SRCS) $(HEADERS) +mapjson$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 451d4b39fb2c..553b7859ede7 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,12 +6,18 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mid2agb +all: mid2agb$(EXE) @: -mid2agb: $(SRCS) $(HEADERS) +mid2agb$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 8c48afea2ad9..1507c973f27e 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,12 +8,18 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: preproc +all: preproc$(EXE) @: -preproc: $(SRCS) $(HEADERS) +preproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index 4e901a29c129..a9375c87abf9 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,10 +8,16 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -all: ramscrgen +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: ramscrgen$(EXE) @: -ramscrgen: $(SRCS) $(HEADERS) +ramscrgen$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 930a92b36ebe..0bc88a42b797 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,10 +8,16 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -all: rsfont +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: rsfont$(EXE) @: -rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 52e663d8da34..96d92f7062af 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,10 +8,16 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -all: scaninc +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: scaninc$(EXE) @: -scaninc: $(SRCS) $(HEADERS) +scaninc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 3d0f0384237185d4fdab5efedd82d2ae25c1918d Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sat, 28 Nov 2020 11:30:11 -0500 Subject: [PATCH 008/762] Add install instructions for repositories which don't have dkp-less support. --- INSTALL.md | 2 ++ docs/legacy_WSL1_INSTALL.md | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 docs/legacy_WSL1_INSTALL.md diff --git a/INSTALL.md b/INSTALL.md index f50ea1db76eb..4ac4690c0f07 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -47,6 +47,8 @@ sudo apt update && sudo apt upgrade ``` Note that these commands will likely take a long time to finish. +*Note: If the repository you plan to build was created before 2020/XX/YY (e.g. modifications of pokeemerald that haven't updated) then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md). These repositories can be identified by the [older revision](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md) of the INSTALL.md* + Certain packages are required to build pokeemerald. Install these packages by running the following command: ```bash sudo apt install build-essential binutils-arm-none-eabi git libpng-dev diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md new file mode 100644 index 000000000000..f9ed7b0e213f --- /dev/null +++ b/docs/legacy_WSL1_INSTALL.md @@ -0,0 +1,32 @@ +### Setting up WSL1 (Legacy Portion) +Certain packages are required to build pokeemerald. Install these packages by running the following command: +```bash +sudo apt install build-essential git libpng-dev gdebi-core +``` +(If the above command does not work, try the above command but replacing `apt` with `apt-get`). + +Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. + +WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. To install the devkitPro package, you'll need to change to the **current working directory** where the package file was saved. + +For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: + +```bash +cd /mnt/c/Users//Downloads +``` + +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username. Windows path names are case-insensitive so adhereing to capitalization isn't needed) + +Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. +```bash +sudo gdebi devkitpro-pacman.amd64.deb +sudo dkp-pacman -Sy +sudo dkp-pacman -S gba-dev +``` +Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + +Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): +```bash +source /etc/profile.d/devkit-env.sh +``` +Proceed to [Choosing where to store pokeemerald (WSL1) of the current INSTALL.md](/INSTALL.md#choosing-where-to-store-pokeemerald-(WSL1)). From b9eb605fbf07b0f27917e83b302074abd2f681d0 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sat, 28 Nov 2020 11:34:03 -0500 Subject: [PATCH 009/762] Fix broken header links. --- INSTALL.md | 14 +++++++------- docs/legacy_WSL1_INSTALL.md | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 4ac4690c0f07..14469ff10480 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -7,8 +7,8 @@ If you run into trouble, ask for help on IRC or Discord (see [README.md](README. ## Windows Windows has instructions for building with three possible terminals, if users encounter unexpected errors in following instructions for one of the terminals. These instructions are: - [Windows 10 (WSL1)](#windows-10-wsl1) -- [Windows (msys2)](#windows-(msys2)) -- [Windows (Cygwin)](#windows-(cygwin)) +- [Windows (msys2)](#windows-msys2) +- [Windows (Cygwin)](#windows-cygwin) The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). @@ -19,7 +19,7 @@ All of the Windows instructions assume that the default drive is C:\\. If this d ## Windows 10 (WSL1) WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred interchangeably as WSL). -If WSL is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-(WSL1)). +If WSL is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1). ### Installing WSL1 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). @@ -68,11 +68,11 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer If this works, then proceed to [Installation](#Installation). -Otherwise, continue reading below for [Windows instructions using msys2](#windows-(msys2)). +Otherwise, continue reading below for [Windows instructions using msys2](#windows-msys2). ## Windows (msys2) -If devkitPro is not installed, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). If devkitPro is installed, but msys2 hasn't previously been set up for another decompilation project, then go to [Setting up msys2](#setting-up-msys2). Otherwise, open msys2 and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-(msys2)). +If devkitPro is not installed, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). If devkitPro is installed, but msys2 hasn't previously been set up for another decompilation project, then go to [Setting up msys2](#setting-up-msys2). Otherwise, open msys2 and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-msys2). ### Installing devkitPro Download the devkitPro installer [here](https://github.com/devkitPro/installer/releases). @@ -122,12 +122,12 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer If this works, then proceed to [Installation](#Installation). -Otherwise, continue reading below for [Windows instructions using Cygwin](#windows-(cygwin)). +Otherwise, continue reading below for [Windows instructions using Cygwin](#windows-cygwin). ## Windows (Cygwin) If devkitPro is not installed, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. -If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). Otherwise, go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-(cygwin)) +If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). Otherwise, go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) ### Installing Cygwin Download [Cygwin](https://cygwin.com/install.html): setup-x86_64.exe for 64-bit Windows, setup-x86.exe for 32-bit. diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index f9ed7b0e213f..5e2a7e167900 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -29,4 +29,4 @@ Run the following command to set devkitPro related environment variables (altern ```bash source /etc/profile.d/devkit-env.sh ``` -Proceed to [Choosing where to store pokeemerald (WSL1) of the current INSTALL.md](/INSTALL.md#choosing-where-to-store-pokeemerald-(WSL1)). +Proceed to [Choosing where to store pokeemerald (WSL1) of the current INSTALL.md](/INSTALL.md#choosing-where-to-store-pokeemerald-WSL1). From 47d4ff24483abbd416598055f8a5867ff7723378 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sat, 28 Nov 2020 11:38:02 -0500 Subject: [PATCH 010/762] Add case for downloads folder with space for the legacy WSL1 instructions, also fix WSL1 path in dedicated folder example with spaces. --- INSTALL.md | 2 +- docs/legacy_WSL1_INSTALL.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 14469ff10480..f096ad6bc530 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -64,7 +64,7 @@ cd /mnt/c/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) If this works, then proceed to [Installation](#Installation). diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index 5e2a7e167900..731b8f4338e8 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -15,7 +15,7 @@ For example, if the package file was saved to **C:\Users\\_\_\Downloads** cd /mnt/c/Users//Downloads ``` -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. ```bash From 24d94185b9857d68f96665ff4205e8086789838b Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sat, 28 Nov 2020 11:42:45 -0500 Subject: [PATCH 011/762] Fix typo (thanks Spherical Ice). --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index f096ad6bc530..05c914ea2ad8 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -12,7 +12,7 @@ Windows has instructions for building with three possible terminals, if users en The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). -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 the drive letter when reading the instructions. +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. From 680187d7d9ca1e5b4088c9a9180df34b62b1bfd0 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 14 Dec 2020 02:16:25 -0500 Subject: [PATCH 012/762] Add more detailed notes on Windows terminal comparisons, fix Cygwin instructions (didn't export devkitpro), add macOS and Linux instructions. macOS and Linux instructions untested. --- INSTALL.md | 94 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 85 insertions(+), 9 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 05c914ea2ad8..c4e0a6e4c951 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -10,7 +10,7 @@ Windows has instructions for building with three possible terminals, if users en - [Windows (msys2)](#windows-msys2) - [Windows (Cygwin)](#windows-cygwin) -The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). +The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. Unscientific benchmarks suggest msys2 is 2x slower than WSL1, and Cygwin is **5-6x** slower than WSL1. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). 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. @@ -125,14 +125,14 @@ If this works, then proceed to [Installation](#Installation). Otherwise, continue reading below for [Windows instructions using Cygwin](#windows-cygwin). ## Windows (Cygwin) -If devkitPro is not installed, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. +If devkitPro is not installed, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. Remember to not continue following the msys2 instructions by mistake! -If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). Otherwise, go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) +If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). If Cygwin is installed, but is not configured to work with devkitPro, then go to [Configuring devkitPro for Cygwin](#configuring-devkitpro-for-cygwin). Otherwise, open Cygwin and go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) ### Installing Cygwin Download [Cygwin](https://cygwin.com/install.html): setup-x86_64.exe for 64-bit Windows, setup-x86.exe for 32-bit. -Run the Cygwin setup and leave the default settings. At "Select Packages", set the view to "Full" and choose to install the following: +Run the Cygwin setup and leave the default settings. At "Choose a Download Site", select any mirror within the Available Download Sites. At "Select Packages", set the view to "Full" (top left) and choose to install the following: - `make` - `git` - `gcc-core` @@ -144,12 +144,22 @@ To quickly find these, use the search bar and type the name of each package. Ens Double click on the text that says "**Skip**" next to each package to select the most recent version to install. If the text says anything other than "**Skip**", (e.g. Keep or a version number), then the package is or will be installed and you don't need to do anything. Once all required packages have been selected, finish the installation. - -### Choosing where to store pokeemerald (Cygwin) +### Configuring devkitPro for Cygwin Open **Cygwin**. Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. +Run the following commands to configure devkitPro to work with Cygwin. +```bash +export DEVKITPRO=/cygdrive/c/devkitpro +echo export DEVKITPRO=$DEVKITPRO >> ~/.bashrc +export DEVKITARM=$DEVKITPRO/devkitARM +echo export DEVKITARM=$DEVKITARM >> ~/.bashrc +``` +(Replace the drive letter c with the actual drive letter if it is not c). + +### Choosing where to store pokeemerald (Cygwin) + Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\_\_**. If you don't want to store pokeemerald there, you'll have to change the **current working directory** every time you open Cygwin. For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: @@ -163,10 +173,76 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## macOS -TODO: add macOS instructions +The [Xcode Command Line Tools Package](https://developer.apple.com/library/archive/technotes/tn2339/_index.html) is required. Open your Terminal and run the following command: +```bash +xcode-select --install +``` + +If devkitPro is not installed, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). Otherwise, open the Terminal and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) + +### Installing devkitPro (macOS) +Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). + +Run the `open` command to install the devkitPro package. The command arguments depend on where the package was saved to. For example, if the package was saved to `~/Downloads` (the Downloads location for most users), enter this command: +```bash +open ~/Downloads/devkitpro-pacman-installer.pkg +``` +(If the path has spaces, then the path must be wrapped with quotations, e.g. "~/Downloads/My Downloads/devkitpro-pacman-installer.pkg"). + +Now devkitPro must be configured with the tools required for GBA development. Run the following commands: +```bash +sudo dkp-pacman -Sy +sudo dkp-pacman -S gba-dev +sudo dkp-pacman -S devkitarm-rules +``` +At this point, press Enter to confirm the installation. After the tools are installed, devkitPro must now be made accessible from anywhere by the system. To do so, run the following commands: + +``` +export DEVKITPRO=$HOME/devkitpro +echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc +export DEVKITARM=$DEVKITPRO/devkitARM +echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc + +echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile +``` + +### Choosing where to store pokeemerald (macOS) +At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open the Terminal. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). + +For example, if you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**, enter this command: +```bash +cd Desktop/decomps +``` +Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. + +If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## Linux -TODO: add Linux instructions +Open Terminal and enter the following commands, depending on which distro you're using. + +### Debian or Ubuntu +Run the following command to install the necessary packages: +```bash +sudo apt install build-essential binutils-arm-none-eabi git libpng-dev +``` +Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to-store-pokeemerald-linux). + +### Other distributions +_(Instructions for other distributions would be greatly appreciated!)_ + +If your distro is not listed here, try to find the required software in its repositories: +- `gcc` +- `g++` +- `make` +- `git` +- `libpng-dev` + +Then, install the devkitARM toolchain of [devkitPro](https://devkitpro.org/wiki/Getting_Started) as per the instructions on their wiki. + +### Choosing where to store pokeemerald (Linux) +At this point, you can choose a folder to store pokeemerald (and agbcc) into. If so, you'll have to change the current working directory every time you open the Terminal. + +If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## Installation If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: @@ -295,4 +371,4 @@ To compile the `modern` target with this toolchain, the subdirectories `lib`, `i * [porymap](https://github.com/huderlem/porymap) for viewing and editing maps * [poryscript](https://github.com/huderlem/poryscript) for scripting ([VS Code extension](https://marketplace.visualstudio.com/items?itemName=karathan.poryscript)) -* [Tilemap Studio](https://github.com/Rangi42/tilemap-studio) for viewing and editing tilemaps +* [Tilemap Studio](https://github.com/Rangi42/tilemap-studio) for viewing and editing tilemaps \ No newline at end of file From 30bd712fd401a9aace68e9f2571cf11ae7eb9731 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 14 Dec 2020 02:20:07 -0500 Subject: [PATCH 013/762] Temporarily change repo links to mine for people testing builds. --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index c4e0a6e4c951..b263cc52f268 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -247,11 +247,11 @@ If this works, then proceed to [Installation](#Installation). Otherwise, ask for ## Installation If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: ```bash -git clone https://github.com/pret/pokeemerald +git clone https://github.com/luckytyphlosion/pokeemerald ``` If agbcc has not been built before, run the following commands to build and install it into pokeemerald: ``` -git clone https://github.com/pret/agbcc +git clone https://github.com/luckytyphlosion/agbcc cd agbcc ./build.sh ./install.sh ../pokeemerald From 4ecbb91ccb609a83d82665d476d22228a1f88762 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 12:46:10 -0500 Subject: [PATCH 014/762] Simplify macOS instructions, clarify Linux instructions, general cleanup of macOS and Linux instructions, also some other minor clarifications. --- INSTALL.md | 64 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index b263cc52f268..ecbce35a263d 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -19,7 +19,7 @@ All of the Windows instructions assume that the default drive is C:\\. If this d ## Windows 10 (WSL1) WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred interchangeably as WSL). -If WSL is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1). +If WSL (Debian or Ubuntu) is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1). ### Installing WSL1 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). @@ -28,7 +28,7 @@ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux ``` Once the process finishes, restart your machine. -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. Advanced users can pick a preferred Linux distribution, but setup instructions may differ. +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 (Note for advanced users: Debian also works here). Advanced users can pick a preferred Linux distribution, but setup instructions may differ. Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). @@ -173,7 +173,7 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## macOS -The [Xcode Command Line Tools Package](https://developer.apple.com/library/archive/technotes/tn2339/_index.html) is required. Open your Terminal and run the following command: +If the Xcode Command Line Tools are not installed, download the tools [here](https://developer.apple.com/library/archive/technotes/tn2339/_index.html), open your Terminal, and run the following command: ```bash xcode-select --install ``` @@ -183,13 +183,9 @@ If devkitPro is not installed, then go to [Installing devkitPro (macOS)](#instal ### Installing devkitPro (macOS) Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). -Run the `open` command to install the devkitPro package. The command arguments depend on where the package was saved to. For example, if the package was saved to `~/Downloads` (the Downloads location for most users), enter this command: -```bash -open ~/Downloads/devkitpro-pacman-installer.pkg -``` -(If the path has spaces, then the path must be wrapped with quotations, e.g. "~/Downloads/My Downloads/devkitpro-pacman-installer.pkg"). +Open the package to install devkitPro pacman. -Now devkitPro must be configured with the tools required for GBA development. Run the following commands: +devkitPro must be configured with the tools required for GBA development. Run the following commands: ```bash sudo dkp-pacman -Sy sudo dkp-pacman -S gba-dev @@ -207,7 +203,7 @@ echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile ``` ### Choosing where to store pokeemerald (macOS) -At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open the Terminal. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). +At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open the Terminal. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). For example, if you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**, enter this command: ```bash @@ -215,12 +211,14 @@ cd Desktop/decomps ``` Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. +(If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"`) + If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## Linux Open Terminal and enter the following commands, depending on which distro you're using. -### Debian or Ubuntu +### Debian/Ubuntu-based distributions Run the following command to install the necessary packages: ```bash sudo apt install build-essential binutils-arm-none-eabi git libpng-dev @@ -228,16 +226,23 @@ sudo apt install build-essential binutils-arm-none-eabi git libpng-dev Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to-store-pokeemerald-linux). ### Other distributions -_(Instructions for other distributions would be greatly appreciated!)_ +_(Specific instructions for other distributions would be greatly appreciated!)_ -If your distro is not listed here, try to find the required software in its repositories: +Try to find the required software in its repositories: - `gcc` - `g++` - `make` - `git` - `libpng-dev` -Then, install the devkitARM toolchain of [devkitPro](https://devkitpro.org/wiki/Getting_Started) as per the instructions on their wiki. +Then, follow the instructions [here](https://devkitpro.org/wiki/devkitPro_pacman) to install devkitPro's pacman installer. As a reminder, the goal is to configure an existing pacman installation to recognize devkitPro's repositories. + +Once devkitPro pacman is configured, run the following commands: +```bash +sudo pacman -Sy +sudo pacman -S gba-dev +``` +Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. ### Choosing where to store pokeemerald (Linux) At this point, you can choose a folder to store pokeemerald (and agbcc) into. If so, you'll have to change the current working directory every time you open the Terminal. @@ -256,7 +261,7 @@ cd agbcc ./build.sh ./install.sh ../pokeemerald ``` -If agbcc has been built before, but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: +If agbcc has been built before (e.g. if the git clone above fails), but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: ``` cd agbcc git clean -fX @@ -278,11 +283,11 @@ First, change directory to the pokeemerald folder: ```bash cd pokeemerald ``` -To build **pokeemerald.gba** for the first time and confirm it matches the official ROM image: +To build **pokeemerald.gba** for the first time and confirm it matches the official ROM image (Note: to speed up builds, see [Parallel builds](#parallel-builds)): ```bash make compare ``` -If an OK is returned, then the installation went smoothly. **Note:** if you switched from Cygwin to msys2, you must run `make clean-tools` once before any subsequent `make` commands. +If an OK is returned, then the installation went smoothly. **Note:** if you switched terminals on Windows since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands. To build **pokeemerald.gba** with your changes: ```bash @@ -291,8 +296,6 @@ make **Windows users:** Consider adding an exception for the `pokeemerald` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. -**macOS users (this is probably outdated):** If the base tools are not found in new Terminal sessions after the first successful build, run `echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile` once to prevent the issue from occurring again. Verify that the `devkitarm-rules` package is installed as well; if not, install it by running `sudo dkp-pacman -S devkitarm-rules`. - # Building guidance ## Parallel builds @@ -320,7 +323,7 @@ make DINFO=1 ## devkitARM's C compiler -This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM has already been installed as part of the platform-specific instructions, simply run: +This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM (a.k.a. gba-dev) has already been installed as part of the platform-specific instructions, simply run: ```bash make modern ``` @@ -355,6 +358,27 @@ source /etc/profile.d/devkit-env.sh ``` devkitARM is now installed. +### Installing devkitARM on Debian/Ubuntu-based distributions +If `gdebi-core` is not installed, run the following command: +```bash +sudo apt install gdebi-core +``` +Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. + +Change directory to where the package was downloaded. Then, run the following commands to install devkitARM: +```bash +sudo gdebi devkitpro-pacman.amd64.deb +sudo dkp-pacman -Sy +sudo dkp-pacman -S gba-dev +``` +Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + +Run the following command to set devkitPro related environment variables (alternatively, close and re-open the Terminal): +```bash +source /etc/profile.d/devkit-env.sh +``` +devkitARM is now installed. + ## Other toolchains To build using a toolchain other than devkitARM, override the `TOOLCHAIN` environment variable with the path to your toolchain, which must contain the subdirectory `bin`. From aad94c34334ee44f1298175df38f14dc27ae5fb8 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 13:15:54 -0500 Subject: [PATCH 015/762] Fix asmdiff.sh to work without DKP, also improve the makefile command for recognizing a toolchain. The new command requires the toolchain binary path to exist in the file system before building using a toolchain (to handle the case where gba-dev is uninstalled but $(DEVKITARM) still exists)) --- Makefile | 2 +- asmdiff.sh | 7 ++++++- berry_fix/Makefile | 2 +- berry_fix/payload/Makefile | 2 +- libagbsyscall/Makefile | 2 +- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index bffa4b560996..de146726bfd0 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,7 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system -ifneq ($(TOOLCHAIN),) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif diff --git a/asmdiff.sh b/asmdiff.sh index 9e8749acff50..534281fdf5e1 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,6 +1,11 @@ #!/bin/bash -OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" +if [[ -d "$DEVKITARM/bin/" ]]; then + OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" +else + OBJDUMP_BIN="arm-none-eabi-objdump" +fi +OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index f7ce405047ec..6aab4ed624a3 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -8,7 +8,7 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system -ifneq ($(TOOLCHAIN),) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index 7a6a92396084..ad8787c3470f 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -8,7 +8,7 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system -ifneq ($(TOOLCHAIN),) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index ba349e9ebb80..e1f502b2f8d5 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -8,7 +8,7 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system -ifneq ($(TOOLCHAIN),) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif From cc5db41f30708c1cc2d33a46879c96a9404764a3 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 13:29:02 -0500 Subject: [PATCH 016/762] Revert multiple source change commits for rebase. --- Makefile | 89 ++++++++++++++++---------------------- asmdiff.sh | 7 +-- berry_fix/Makefile | 35 ++++++++------- berry_fix/payload/Makefile | 35 ++++++++------- libagbsyscall/Makefile | 33 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 +---- tools/bin2c/Makefile | 10 +---- tools/gbafix/Makefile | 10 +---- tools/gbagfx/Makefile | 12 ++--- tools/jsonproc/Makefile | 10 +---- tools/mapjson/Makefile | 10 +---- tools/mid2agb/Makefile | 10 +---- tools/preproc/Makefile | 10 +---- tools/ramscrgen/Makefile | 10 +---- tools/rsfont/Makefile | 10 +---- tools/scaninc/Makefile | 10 +---- 17 files changed, 120 insertions(+), 195 deletions(-) diff --git a/Makefile b/Makefile index de146726bfd0..07143e4ad4dc 100644 --- a/Makefile +++ b/Makefile @@ -1,26 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) +endif + +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe @@ -34,16 +37,6 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 -ROM_NAME := pokeemerald.gba -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) @@ -71,18 +64,18 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN) ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -ROM := $(ROM_NAME) -OBJ_DIR := $(OBJ_DIR_NAME) +ROM := pokeemerald.gba +OBJ_DIR := build/emerald LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(MODERNCC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(CC) --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 $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" +ROM := pokeemerald_modern.gba +OBJ_DIR := build/modern +LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" endif -CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -nostdinc -undef +CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) ifeq ($(MODERN),0) CPPFLAGS += -I tools/agbcc/include -I tools/agbcc endif @@ -118,7 +111,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -169,7 +162,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ + @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) rom: $(ROM) ifeq ($(COMPARE),1) @@ -184,7 +177,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidynonmodern tidymodern +mostlyclean: tidy rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -199,15 +192,10 @@ mostlyclean: tidynonmodern tidymodern tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) +ifeq ($(MODERN),0) + @$(MAKE) tidy MODERN=1 +endif -tidynonmodern: - rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) - rm -rf $(OBJ_DIR_NAME) - -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 @@ -235,7 +223,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -244,10 +232,10 @@ $(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)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc $(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/agbcc/bin/agbcc_arm $(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 @@ -308,11 +296,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -341,8 +329,7 @@ $(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) berry_fix 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) + 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) diff --git a/asmdiff.sh b/asmdiff.sh index 534281fdf5e1..9e8749acff50 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,11 +1,6 @@ #!/bin/bash -if [[ -d "$DEVKITARM/bin/" ]]; then - OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" -else - OBJDUMP_BIN="arm-none-eabi-objdump" -fi -OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" +OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 6aab4ed624a3..0ead3804fd0f 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,26 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) +endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index ad8787c3470f..a121fda93bf9 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,26 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) +endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index e1f502b2f8d5..911cdb237c44 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,26 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) +endif -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 626cd4724080..0203b383d001 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 | $(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 | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index dd48a87597af..77df29152730 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,18 +6,12 @@ LIBS = -lm SRCS = main.c extended.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: aif2pcm$(EXE) +all: aif2pcm @: -aif2pcm$(EXE): $(SRCS) +aif2pcm: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 4dbfab94fe34..52806e39c6f1 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,16 +6,10 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: bin2c$(EXE) +all: bin2c @: -bin2c$(EXE): $(SRCS) +bin2c: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index efb016c97ed8..91a60a9e4c9d 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,16 +3,10 @@ CC ?= gcc SRCS = gbafix.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: gbafix$(EXE) +all: gbafix @: -gbafix$(EXE): $(SRCS) +gbafix: $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index b4244aa8d6ab..f0638414dae3 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,21 +6,15 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: gbagfx$(EXE) +all: gbagfx @: -gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index eec73eb7bf4b..47198b171ed8 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,18 +8,12 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: jsonproc$(EXE) +all: jsonproc @: -jsonproc$(EXE): $(SRCS) $(HEADERS) +jsonproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index 100e809c6c27..c1f703f9fe48 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,18 +6,12 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mapjson$(EXE) +all: mapjson @: -mapjson$(EXE): $(SRCS) $(HEADERS) +mapjson: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 553b7859ede7..451d4b39fb2c 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,18 +6,12 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mid2agb$(EXE) +all: mid2agb @: -mid2agb$(EXE): $(SRCS) $(HEADERS) +mid2agb: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 1507c973f27e..8c48afea2ad9 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,18 +8,12 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: preproc$(EXE) +all: preproc @: -preproc$(EXE): $(SRCS) $(HEADERS) +preproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index a9375c87abf9..4e901a29c129 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,16 +8,10 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: ramscrgen$(EXE) +all: ramscrgen @: -ramscrgen$(EXE): $(SRCS) $(HEADERS) +ramscrgen: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 0bc88a42b797..930a92b36ebe 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,16 +8,10 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: rsfont$(EXE) +all: rsfont @: -rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 96d92f7062af..52e663d8da34 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,16 +8,10 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: scaninc$(EXE) +all: scaninc @: -scaninc$(EXE): $(SRCS) $(HEADERS) +scaninc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 936ba7f1bf492a805596716660cd751e35fc74cd Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 15:10:01 -0500 Subject: [PATCH 017/762] Apply all source related changes for the new INSTALL.md in one commit. For people who want to have dkPless builds in their repo. --- Makefile | 89 ++++++++++++++++++++++---------------- asmdiff.sh | 10 ++++- berry_fix/Makefile | 35 +++++++-------- berry_fix/payload/Makefile | 35 +++++++-------- libagbsyscall/Makefile | 33 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 ++++- tools/bin2c/Makefile | 10 ++++- tools/gbafix/Makefile | 10 ++++- tools/gbagfx/Makefile | 12 +++-- tools/jsonproc/Makefile | 10 ++++- tools/mapjson/Makefile | 10 ++++- tools/mid2agb/Makefile | 10 ++++- tools/preproc/Makefile | 10 ++++- tools/ramscrgen/Makefile | 10 ++++- tools/rsfont/Makefile | 10 ++++- tools/scaninc/Makefile | 10 ++++- 17 files changed, 198 insertions(+), 120 deletions(-) diff --git a/Makefile b/Makefile index 78a2c2a4fcdc..2e5a341ddece 100644 --- a/Makefile +++ b/Makefile @@ -1,29 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +# 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 tihs system + +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe @@ -37,6 +34,16 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ROM_NAME := pokeemerald.gba +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) @@ -64,18 +71,18 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN) ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -g -ROM := pokeemerald.gba -OBJ_DIR := build/emerald +ROM := $(ROM_NAME) +OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(CC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(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 -g -ROM := pokeemerald_modern.gba -OBJ_DIR := build/modern -LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +ROM := $(MODERN_ROM_NAME) +OBJ_DIR := $(MODERN_OBJ_DIR_NAME) +LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" endif -CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) +CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -nostdinc -undef ifeq ($(MODERN),0) CPPFLAGS += -I tools/agbcc/include -I tools/agbcc endif @@ -111,7 +118,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -162,7 +169,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) + @$(MAKE) -C $@ rom: $(ROM) ifeq ($(COMPARE),1) @@ -177,7 +184,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidy +mostlyclean: tidynonmodern tidymodern rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -192,10 +199,15 @@ mostlyclean: tidy tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) -ifeq ($(MODERN),0) - @$(MAKE) tidy MODERN=1 -endif +tidynonmodern: + rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) + rm -rf $(OBJ_DIR_NAME) + +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 @@ -223,7 +235,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -232,10 +244,10 @@ $(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 +$(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 +$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/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 @@ -296,11 +308,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -329,7 +341,8 @@ $(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) berry_fix libagbsyscall - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB) + @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) diff --git a/asmdiff.sh b/asmdiff.sh index 6ea588131d14..f5a7010747c7 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,11 +1,19 @@ #!/bin/bash -OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" +if [[ -d "$DEVKITARM/bin/" ]]; then + OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" +else + OBJDUMP_BIN="arm-none-eabi-objdump" +fi + +OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" + if [ $(($1)) -ge $((0x8000000)) ]; then OPTIONS="--adjust-vma=0x8000000 --start-address=$(($1)) --stop-address=$(($1 + $2))" else OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" fi + $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff -u baserom.dump pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 0ead3804fd0f..6aab4ed624a3 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,29 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +# 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 tihs system + +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index a121fda93bf9..ad8787c3470f 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,29 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +# 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 tihs system + +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 911cdb237c44..e1f502b2f8d5 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,29 +1,26 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif +# 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 tihs system -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 0203b383d001..626cd4724080 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 - | $(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 - | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index 77df29152730..dd48a87597af 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,12 +6,18 @@ LIBS = -lm SRCS = main.c extended.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: aif2pcm +all: aif2pcm$(EXE) @: -aif2pcm: $(SRCS) +aif2pcm$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 52806e39c6f1..4dbfab94fe34 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,10 +6,16 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -all: bin2c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: bin2c$(EXE) @: -bin2c: $(SRCS) +bin2c$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index 91a60a9e4c9d..efb016c97ed8 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,10 +3,16 @@ CC ?= gcc SRCS = gbafix.c -all: gbafix +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: gbafix$(EXE) @: -gbafix: $(SRCS) +gbafix$(EXE): $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index f0638414dae3..b4244aa8d6ab 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,15 +6,21 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: gbagfx +all: gbagfx$(EXE) @: -gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index 47198b171ed8..eec73eb7bf4b 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,12 +8,18 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: jsonproc +all: jsonproc$(EXE) @: -jsonproc: $(SRCS) $(HEADERS) +jsonproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index c1f703f9fe48..100e809c6c27 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,12 +6,18 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mapjson +all: mapjson$(EXE) @: -mapjson: $(SRCS) $(HEADERS) +mapjson$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 451d4b39fb2c..553b7859ede7 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,12 +6,18 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mid2agb +all: mid2agb$(EXE) @: -mid2agb: $(SRCS) $(HEADERS) +mid2agb$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 8c48afea2ad9..1507c973f27e 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,12 +8,18 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: preproc +all: preproc$(EXE) @: -preproc: $(SRCS) $(HEADERS) +preproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index 4e901a29c129..a9375c87abf9 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,10 +8,16 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -all: ramscrgen +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: ramscrgen$(EXE) @: -ramscrgen: $(SRCS) $(HEADERS) +ramscrgen$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 930a92b36ebe..0bc88a42b797 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,10 +8,16 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -all: rsfont +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: rsfont$(EXE) @: -rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 52e663d8da34..96d92f7062af 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,10 +8,16 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -all: scaninc +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: scaninc$(EXE) @: -scaninc: $(SRCS) $(HEADERS) +scaninc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 8ad973090199d4350683f64069ed1cb676e23679 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 15:37:08 -0500 Subject: [PATCH 018/762] Make a note about the Microsoft Account dialog. --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index ecbce35a263d..82d0f228d2ef 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -30,7 +30,7 @@ Once the process finishes, restart your machine. 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 (Note for advanced users: Debian also works here). Advanced users can pick a preferred Linux distribution, but setup instructions may differ. -Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). +Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog. ### Setting up WSL1 Open **Ubuntu** (e.g. using Search). WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). Note that there will be no visible response when typing in the password, but the terminal will still read in input. @@ -395,4 +395,4 @@ To compile the `modern` target with this toolchain, the subdirectories `lib`, `i * [porymap](https://github.com/huderlem/porymap) for viewing and editing maps * [poryscript](https://github.com/huderlem/poryscript) for scripting ([VS Code extension](https://marketplace.visualstudio.com/items?itemName=karathan.poryscript)) -* [Tilemap Studio](https://github.com/Rangi42/tilemap-studio) for viewing and editing tilemaps \ No newline at end of file +* [Tilemap Studio](https://github.com/Rangi42/tilemap-studio) for viewing and editing tilemaps From 3b1cbc58617fe45efbbbdd967ab1e0fae85d76a4 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 18:56:03 -0500 Subject: [PATCH 019/762] Add a note on core.filemode error. --- INSTALL.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 82d0f228d2ef..ee18ce21629e 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -250,10 +250,22 @@ At this point, you can choose a folder to store pokeemerald (and agbcc) into. If If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). ## Installation + +**Windows users:** Consider adding an exception for the `pokeemerald`/`decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. + If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: ```bash git clone https://github.com/luckytyphlosion/pokeemerald ``` +Note for WSL1: If you get an error stating `fatal: could not set 'core.filemode' to 'false'`, then run the following commands: +```bash +cd +sudo umount /mnt/c +sudo mount -t drvfs C: /mnt/c -o metadata +cd +``` +Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). + If agbcc has not been built before, run the following commands to build and install it into pokeemerald: ``` git clone https://github.com/luckytyphlosion/agbcc @@ -294,8 +306,6 @@ To build **pokeemerald.gba** with your changes: make ``` -**Windows users:** Consider adding an exception for the `pokeemerald` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. - # Building guidance ## Parallel builds From 2783eed8257bcee46e33552a15e71b33a3d60058 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 19:54:12 -0500 Subject: [PATCH 020/762] Check for $(TOOLCHAIN) before checking for $(TOOLCHAIN)/bin if TOOLCHAIN is blank, wildcard can still detect the `/bin` directory. --- Makefile | 2 ++ berry_fix/Makefile | 2 ++ berry_fix/payload/Makefile | 2 ++ libagbsyscall/Makefile | 2 ++ 4 files changed, 8 insertions(+) diff --git a/Makefile b/Makefile index 2e5a341ddece..8a5a2b65f190 100644 --- a/Makefile +++ b/Makefile @@ -8,9 +8,11 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system +ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif +endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 6aab4ed624a3..8b8d07d427f2 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -8,9 +8,11 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system +ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif +endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index ad8787c3470f..bae657c92739 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -8,9 +8,11 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system +ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif +endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index e1f502b2f8d5..76368da86b16 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -8,9 +8,11 @@ COMPARE ?= 0 # files, or use arm-none-eabi binaries on the system # if dkP is not installed on tihs system +ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) export PATH := $(TOOLCHAIN)/bin:$(PATH) endif +endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy From d597c5c883ad62b1fc62e9c688c2f8a17a1a853e Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 20:17:27 -0500 Subject: [PATCH 021/762] Fix modern builds. We actually need standard includes for modern. --- Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 8a5a2b65f190..a341ab5d4db7 100644 --- a/Makefile +++ b/Makefile @@ -84,9 +84,9 @@ OBJ_DIR := $(MODERN_OBJ_DIR_NAME) LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" endif -CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -nostdinc -undef -ifeq ($(MODERN),0) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc +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) From 11df2113d9c7ab9e09073a93db2bd467b664f678 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 20:29:58 -0500 Subject: [PATCH 022/762] Use arm-none-eabi-cpp for modern. --- Makefile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Makefile b/Makefile index a341ab5d4db7..891cab4800df 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,13 @@ endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy AS := $(PREFIX)as + +ifneq ($(MODERN),1) CPP := $(CC) -E +else +CPP := $(PREFIX)cpp +endif + LD := $(PREFIX)ld # note: the makefile must be set up so MODERNCC is never called From 345aab63cf2550646a6a56c2c8fe8473d5bf996a Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 20:31:10 -0500 Subject: [PATCH 023/762] [Round 2] Revert multiple source change commits for re-commit. --- Makefile | 95 +++++++++++++++----------------------- asmdiff.sh | 10 +--- berry_fix/Makefile | 35 +++++++------- berry_fix/payload/Makefile | 35 +++++++------- libagbsyscall/Makefile | 35 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 +--- tools/bin2c/Makefile | 10 +--- tools/gbafix/Makefile | 10 +--- tools/gbagfx/Makefile | 12 ++--- tools/jsonproc/Makefile | 10 +--- tools/mapjson/Makefile | 10 +--- tools/mid2agb/Makefile | 10 +--- tools/preproc/Makefile | 10 +--- tools/ramscrgen/Makefile | 10 +--- tools/rsfont/Makefile | 10 +--- tools/scaninc/Makefile | 10 +--- 17 files changed, 117 insertions(+), 209 deletions(-) diff --git a/Makefile b/Makefile index 891cab4800df..78a2c2a4fcdc 100644 --- a/Makefile +++ b/Makefile @@ -1,34 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as - -ifneq ($(MODERN),1) -CPP := $(CC) -E -else -CPP := $(PREFIX)cpp +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as endif - -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe @@ -42,16 +37,6 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 -ROM_NAME := pokeemerald.gba -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) @@ -79,20 +64,20 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(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) +ROM := pokeemerald.gba +OBJ_DIR := build/emerald LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(MODERNCC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(CC) --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 -g -ROM := $(MODERN_ROM_NAME) -OBJ_DIR := $(MODERN_OBJ_DIR_NAME) -LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" +ROM := pokeemerald_modern.gba +OBJ_DIR := build/modern +LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -ifneq ($(MODERN),1) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef +ifeq ($(MODERN),0) +CPPFLAGS += -I tools/agbcc/include -I tools/agbcc endif LDFLAGS = -Map ../../$(MAP) @@ -126,7 +111,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -177,7 +162,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ + @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) rom: $(ROM) ifeq ($(COMPARE),1) @@ -192,7 +177,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidynonmodern tidymodern +mostlyclean: tidy rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -207,15 +192,10 @@ mostlyclean: tidynonmodern tidymodern tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) +ifeq ($(MODERN),0) + @$(MAKE) tidy MODERN=1 +endif -tidynonmodern: - rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) - rm -rf $(OBJ_DIR_NAME) - -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 @@ -243,7 +223,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -252,10 +232,10 @@ $(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)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc $(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/agbcc/bin/agbcc_arm $(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 @@ -316,11 +296,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -349,8 +329,7 @@ $(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) berry_fix 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) + 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) diff --git a/asmdiff.sh b/asmdiff.sh index f5a7010747c7..6ea588131d14 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,19 +1,11 @@ #!/bin/bash -if [[ -d "$DEVKITARM/bin/" ]]; then - OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" -else - OBJDUMP_BIN="arm-none-eabi-objdump" -fi - -OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" - +OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" if [ $(($1)) -ge $((0x8000000)) ]; then OPTIONS="--adjust-vma=0x8000000 --start-address=$(($1)) --stop-address=$(($1 + $2))" else OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" fi - $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff -u baserom.dump pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 8b8d07d427f2..0ead3804fd0f 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index bae657c92739..a121fda93bf9 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 76368da86b16..911cdb237c44 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 626cd4724080..0203b383d001 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 | $(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 | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index dd48a87597af..77df29152730 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,18 +6,12 @@ LIBS = -lm SRCS = main.c extended.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: aif2pcm$(EXE) +all: aif2pcm @: -aif2pcm$(EXE): $(SRCS) +aif2pcm: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 4dbfab94fe34..52806e39c6f1 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,16 +6,10 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: bin2c$(EXE) +all: bin2c @: -bin2c$(EXE): $(SRCS) +bin2c: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index efb016c97ed8..91a60a9e4c9d 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,16 +3,10 @@ CC ?= gcc SRCS = gbafix.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: gbafix$(EXE) +all: gbafix @: -gbafix$(EXE): $(SRCS) +gbafix: $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index b4244aa8d6ab..f0638414dae3 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,21 +6,15 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: gbagfx$(EXE) +all: gbagfx @: -gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index eec73eb7bf4b..47198b171ed8 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,18 +8,12 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: jsonproc$(EXE) +all: jsonproc @: -jsonproc$(EXE): $(SRCS) $(HEADERS) +jsonproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index 100e809c6c27..c1f703f9fe48 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,18 +6,12 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mapjson$(EXE) +all: mapjson @: -mapjson$(EXE): $(SRCS) $(HEADERS) +mapjson: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 553b7859ede7..451d4b39fb2c 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,18 +6,12 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mid2agb$(EXE) +all: mid2agb @: -mid2agb$(EXE): $(SRCS) $(HEADERS) +mid2agb: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 1507c973f27e..8c48afea2ad9 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,18 +8,12 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: preproc$(EXE) +all: preproc @: -preproc$(EXE): $(SRCS) $(HEADERS) +preproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index a9375c87abf9..4e901a29c129 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,16 +8,10 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: ramscrgen$(EXE) +all: ramscrgen @: -ramscrgen$(EXE): $(SRCS) $(HEADERS) +ramscrgen: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 0bc88a42b797..930a92b36ebe 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,16 +8,10 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: rsfont$(EXE) +all: rsfont @: -rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 96d92f7062af..52e663d8da34 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,16 +8,10 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: scaninc$(EXE) +all: scaninc @: -scaninc$(EXE): $(SRCS) $(HEADERS) +scaninc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 166183d5ed73059922b9679b832b591dd6fa073b Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 20:31:56 -0500 Subject: [PATCH 024/762] [Round 2] Apply all source related changes for the new INSTALL.md in one commit. --- Makefile | 95 +++++++++++++++++++++++--------------- asmdiff.sh | 10 +++- berry_fix/Makefile | 35 +++++++------- berry_fix/payload/Makefile | 35 +++++++------- libagbsyscall/Makefile | 35 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 +++- tools/bin2c/Makefile | 10 +++- tools/gbafix/Makefile | 10 +++- tools/gbagfx/Makefile | 12 +++-- tools/jsonproc/Makefile | 10 +++- tools/mapjson/Makefile | 10 +++- tools/mid2agb/Makefile | 10 +++- tools/preproc/Makefile | 10 +++- tools/ramscrgen/Makefile | 10 +++- tools/rsfont/Makefile | 10 +++- tools/scaninc/Makefile | 10 +++- 17 files changed, 209 insertions(+), 117 deletions(-) diff --git a/Makefile b/Makefile index 78a2c2a4fcdc..891cab4800df 100644 --- a/Makefile +++ b/Makefile @@ -1,29 +1,34 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as +AS := $(PREFIX)as + +ifneq ($(MODERN),1) +CPP := $(CC) -E +else +CPP := $(PREFIX)cpp endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld + +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe @@ -37,6 +42,16 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ROM_NAME := pokeemerald.gba +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) @@ -64,20 +79,20 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN) ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -g -ROM := pokeemerald.gba -OBJ_DIR := build/emerald +ROM := $(ROM_NAME) +OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(CC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(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 -g -ROM := pokeemerald_modern.gba -OBJ_DIR := build/modern -LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +ROM := $(MODERN_ROM_NAME) +OBJ_DIR := $(MODERN_OBJ_DIR_NAME) +LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -ifeq ($(MODERN),0) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc +ifneq ($(MODERN),1) +CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef endif LDFLAGS = -Map ../../$(MAP) @@ -111,7 +126,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -162,7 +177,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) + @$(MAKE) -C $@ rom: $(ROM) ifeq ($(COMPARE),1) @@ -177,7 +192,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidy +mostlyclean: tidynonmodern tidymodern rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -192,10 +207,15 @@ mostlyclean: tidy tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) -ifeq ($(MODERN),0) - @$(MAKE) tidy MODERN=1 -endif +tidynonmodern: + rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) + rm -rf $(OBJ_DIR_NAME) + +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 @@ -223,7 +243,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -232,10 +252,10 @@ $(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 +$(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 +$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/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 @@ -296,11 +316,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -329,7 +349,8 @@ $(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) berry_fix libagbsyscall - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB) + @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) diff --git a/asmdiff.sh b/asmdiff.sh index 6ea588131d14..f5a7010747c7 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,11 +1,19 @@ #!/bin/bash -OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" +if [[ -d "$DEVKITARM/bin/" ]]; then + OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" +else + OBJDUMP_BIN="arm-none-eabi-objdump" +fi + +OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" + if [ $(($1)) -ge $((0x8000000)) ]; then OPTIONS="--adjust-vma=0x8000000 --start-address=$(($1)) --stop-address=$(($1 + $2))" else OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" fi + $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff -u baserom.dump pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 0ead3804fd0f..8b8d07d427f2 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index a121fda93bf9..bae657c92739 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 911cdb237c44..76368da86b16 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif +# 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 tihs system -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) +endif endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 0203b383d001..626cd4724080 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 - | $(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 - | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index 77df29152730..dd48a87597af 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,12 +6,18 @@ LIBS = -lm SRCS = main.c extended.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: aif2pcm +all: aif2pcm$(EXE) @: -aif2pcm: $(SRCS) +aif2pcm$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 52806e39c6f1..4dbfab94fe34 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,10 +6,16 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -all: bin2c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: bin2c$(EXE) @: -bin2c: $(SRCS) +bin2c$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index 91a60a9e4c9d..efb016c97ed8 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,10 +3,16 @@ CC ?= gcc SRCS = gbafix.c -all: gbafix +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: gbafix$(EXE) @: -gbafix: $(SRCS) +gbafix$(EXE): $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index f0638414dae3..b4244aa8d6ab 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,15 +6,21 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: gbagfx +all: gbagfx$(EXE) @: -gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index 47198b171ed8..eec73eb7bf4b 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,12 +8,18 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: jsonproc +all: jsonproc$(EXE) @: -jsonproc: $(SRCS) $(HEADERS) +jsonproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index c1f703f9fe48..100e809c6c27 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,12 +6,18 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mapjson +all: mapjson$(EXE) @: -mapjson: $(SRCS) $(HEADERS) +mapjson$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 451d4b39fb2c..553b7859ede7 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,12 +6,18 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mid2agb +all: mid2agb$(EXE) @: -mid2agb: $(SRCS) $(HEADERS) +mid2agb$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 8c48afea2ad9..1507c973f27e 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,12 +8,18 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: preproc +all: preproc$(EXE) @: -preproc: $(SRCS) $(HEADERS) +preproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index 4e901a29c129..a9375c87abf9 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,10 +8,16 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -all: ramscrgen +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: ramscrgen$(EXE) @: -ramscrgen: $(SRCS) $(HEADERS) +ramscrgen$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 930a92b36ebe..0bc88a42b797 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,10 +8,16 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -all: rsfont +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: rsfont$(EXE) @: -rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 52e663d8da34..96d92f7062af 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,10 +8,16 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -all: scaninc +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: scaninc$(EXE) @: -scaninc: $(SRCS) $(HEADERS) +scaninc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 32e566def07698121d5b2f56edb6867329326276 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 21:16:55 -0500 Subject: [PATCH 025/762] Don't define CPP until MODERN is defined. --- Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 891cab4800df..306b8fb6e849 100644 --- a/Makefile +++ b/Makefile @@ -18,12 +18,6 @@ PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy AS := $(PREFIX)as -ifneq ($(MODERN),1) -CPP := $(CC) -E -else -CPP := $(PREFIX)cpp -endif - LD := $(PREFIX)ld # note: the makefile must be set up so MODERNCC is never called @@ -42,6 +36,12 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ifneq ($(MODERN),1) +CPP := $(CC) -E +else +CPP := $(PREFIX)cpp +endif + ROM_NAME := pokeemerald.gba ELF_NAME := $(ROM_NAME:.gba=.elf) MAP_NAME := $(ROM_NAME:.gba=.map) From 5a5acfb0ada48c89d1e398dea3fd3ef701213b60 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 21:24:08 -0500 Subject: [PATCH 026/762] [Round 3] Revert multiple source change commits for re-commit. --- Makefile | 97 +++++++++++++++----------------------- asmdiff.sh | 10 +--- berry_fix/Makefile | 35 +++++++------- berry_fix/payload/Makefile | 35 +++++++------- libagbsyscall/Makefile | 35 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 +--- tools/bin2c/Makefile | 10 +--- tools/gbafix/Makefile | 10 +--- tools/gbagfx/Makefile | 12 ++--- tools/jsonproc/Makefile | 10 +--- tools/mapjson/Makefile | 10 +--- tools/mid2agb/Makefile | 10 +--- tools/preproc/Makefile | 10 +--- tools/ramscrgen/Makefile | 10 +--- tools/rsfont/Makefile | 10 +--- tools/scaninc/Makefile | 10 +--- 17 files changed, 118 insertions(+), 210 deletions(-) diff --git a/Makefile b/Makefile index 306b8fb6e849..78a2c2a4fcdc 100644 --- a/Makefile +++ b/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as - -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe @@ -36,22 +37,6 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 -ifneq ($(MODERN),1) -CPP := $(CC) -E -else -CPP := $(PREFIX)cpp -endif - -ROM_NAME := pokeemerald.gba -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) @@ -79,20 +64,20 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(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) +ROM := pokeemerald.gba +OBJ_DIR := build/emerald LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(MODERNCC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(CC) --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 -g -ROM := $(MODERN_ROM_NAME) -OBJ_DIR := $(MODERN_OBJ_DIR_NAME) -LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" +ROM := pokeemerald_modern.gba +OBJ_DIR := build/modern +LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -ifneq ($(MODERN),1) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef +ifeq ($(MODERN),0) +CPPFLAGS += -I tools/agbcc/include -I tools/agbcc endif LDFLAGS = -Map ../../$(MAP) @@ -126,7 +111,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -177,7 +162,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ + @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) rom: $(ROM) ifeq ($(COMPARE),1) @@ -192,7 +177,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidynonmodern tidymodern +mostlyclean: tidy rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -207,15 +192,10 @@ mostlyclean: tidynonmodern tidymodern tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) +ifeq ($(MODERN),0) + @$(MAKE) tidy MODERN=1 +endif -tidynonmodern: - rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) - rm -rf $(OBJ_DIR_NAME) - -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 @@ -243,7 +223,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -252,10 +232,10 @@ $(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)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc $(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/agbcc/bin/agbcc_arm $(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 @@ -316,11 +296,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -349,8 +329,7 @@ $(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) berry_fix 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) + 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) diff --git a/asmdiff.sh b/asmdiff.sh index f5a7010747c7..6ea588131d14 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,19 +1,11 @@ #!/bin/bash -if [[ -d "$DEVKITARM/bin/" ]]; then - OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" -else - OBJDUMP_BIN="arm-none-eabi-objdump" -fi - -OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" - +OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" if [ $(($1)) -ge $((0x8000000)) ]; then OPTIONS="--adjust-vma=0x8000000 --start-address=$(($1)) --stop-address=$(($1 + $2))" else OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" fi - $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff -u baserom.dump pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 8b8d07d427f2..0ead3804fd0f 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index bae657c92739..a121fda93bf9 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 76368da86b16..911cdb237c44 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,28 +1,29 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -# 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 tihs system - -ifneq (,$(TOOLCHAIN)) -ifneq ($(wildcard $(TOOLCHAIN)/bin),) -export PATH := $(TOOLCHAIN)/bin:$(PATH) +ifeq ($(CC),) +HOSTCC := gcc +else +HOSTCC := $(CC) endif + +ifeq ($(CXX),) +HOSTCXX := g++ +else +HOSTCXX := $(CXX) endif +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) +include $(TOOLCHAIN)/base_tools +else +export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -CPP := $(CC) -E -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc +export CC := $(PREFIX)gcc +export AS := $(PREFIX)as +endif +export CPP := $(PREFIX)cpp +export LD := $(PREFIX)ld ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 626cd4724080..0203b383d001 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 | $(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 | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index dd48a87597af..77df29152730 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,18 +6,12 @@ LIBS = -lm SRCS = main.c extended.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: aif2pcm$(EXE) +all: aif2pcm @: -aif2pcm$(EXE): $(SRCS) +aif2pcm: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 4dbfab94fe34..52806e39c6f1 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,16 +6,10 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: bin2c$(EXE) +all: bin2c @: -bin2c$(EXE): $(SRCS) +bin2c: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index efb016c97ed8..91a60a9e4c9d 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,16 +3,10 @@ CC ?= gcc SRCS = gbafix.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: gbafix$(EXE) +all: gbafix @: -gbafix$(EXE): $(SRCS) +gbafix: $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index b4244aa8d6ab..f0638414dae3 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,21 +6,15 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: gbagfx$(EXE) +all: gbagfx @: -gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index eec73eb7bf4b..47198b171ed8 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,18 +8,12 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: jsonproc$(EXE) +all: jsonproc @: -jsonproc$(EXE): $(SRCS) $(HEADERS) +jsonproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index 100e809c6c27..c1f703f9fe48 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,18 +6,12 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mapjson$(EXE) +all: mapjson @: -mapjson$(EXE): $(SRCS) $(HEADERS) +mapjson: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 553b7859ede7..451d4b39fb2c 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,18 +6,12 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: mid2agb$(EXE) +all: mid2agb @: -mid2agb$(EXE): $(SRCS) $(HEADERS) +mid2agb: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 1507c973f27e..8c48afea2ad9 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,18 +8,12 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - .PHONY: all clean -all: preproc$(EXE) +all: preproc @: -preproc$(EXE): $(SRCS) $(HEADERS) +preproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index a9375c87abf9..4e901a29c129 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,16 +8,10 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: ramscrgen$(EXE) +all: ramscrgen @: -ramscrgen$(EXE): $(SRCS) $(HEADERS) +ramscrgen: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 0bc88a42b797..930a92b36ebe 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,16 +8,10 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: rsfont$(EXE) +all: rsfont @: -rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 96d92f7062af..52e663d8da34 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,16 +8,10 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -all: scaninc$(EXE) +all: scaninc @: -scaninc$(EXE): $(SRCS) $(HEADERS) +scaninc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 3d686116d8acb9f3daa1db9669de6eca11a861d5 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 16 Dec 2020 21:24:44 -0500 Subject: [PATCH 027/762] [Round 3] Apply all source related changes for the new INSTALL.md in one commit. --- Makefile | 97 +++++++++++++++++++++++--------------- asmdiff.sh | 10 +++- berry_fix/Makefile | 35 +++++++------- berry_fix/payload/Makefile | 35 +++++++------- libagbsyscall/Makefile | 35 +++++++------- map_data_rules.mk | 4 +- tools/aif2pcm/Makefile | 10 +++- tools/bin2c/Makefile | 10 +++- tools/gbafix/Makefile | 10 +++- tools/gbagfx/Makefile | 12 +++-- tools/jsonproc/Makefile | 10 +++- tools/mapjson/Makefile | 10 +++- tools/mid2agb/Makefile | 10 +++- tools/preproc/Makefile | 10 +++- tools/ramscrgen/Makefile | 10 +++- tools/rsfont/Makefile | 10 +++- tools/scaninc/Makefile | 10 +++- 17 files changed, 210 insertions(+), 118 deletions(-) diff --git a/Makefile b/Makefile index 78a2c2a4fcdc..306b8fb6e849 100644 --- a/Makefile +++ b/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as + +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe @@ -37,6 +36,22 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ifneq ($(MODERN),1) +CPP := $(CC) -E +else +CPP := $(PREFIX)cpp +endif + +ROM_NAME := pokeemerald.gba +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) @@ -64,20 +79,20 @@ ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN) ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -g -ROM := pokeemerald.gba -OBJ_DIR := build/emerald +ROM := $(ROM_NAME) +OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L ../../tools/agbcc/lib else -CC1 = $(shell $(CC) --print-prog-name=cc1) -quiet +CC1 = $(shell $(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 -g -ROM := pokeemerald_modern.gba -OBJ_DIR := build/modern -LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +ROM := $(MODERN_ROM_NAME) +OBJ_DIR := $(MODERN_OBJ_DIR_NAME) +LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) -ifeq ($(MODERN),0) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc +ifneq ($(MODERN),1) +CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef endif LDFLAGS = -Map ../../$(MAP) @@ -111,7 +126,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -162,7 +177,7 @@ all: rom tools: $(TOOLDIRS) $(TOOLDIRS): - @$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX) + @$(MAKE) -C $@ rom: $(ROM) ifeq ($(COMPARE),1) @@ -177,7 +192,7 @@ clean: mostlyclean clean-tools clean-tools: @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidy +mostlyclean: tidynonmodern tidymodern rm -f $(SAMPLE_SUBDIR)/*.bin rm -f $(CRY_SUBDIR)/*.bin rm -f $(MID_SUBDIR)/*.s @@ -192,10 +207,15 @@ mostlyclean: tidy tidy: rm -f $(ROM) $(ELF) $(MAP) rm -r $(OBJ_DIR) -ifeq ($(MODERN),0) - @$(MAKE) tidy MODERN=1 -endif +tidynonmodern: + rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) + rm -rf $(OBJ_DIR_NAME) + +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 @@ -223,7 +243,7 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ ifeq ($(MODERN),0) -$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc +$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE) $(C_BUILDDIR)/libc.o: CFLAGS := -O2 $(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork @@ -232,10 +252,10 @@ $(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 +$(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 +$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/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 @@ -296,11 +316,11 @@ endif ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else define DATA_ASM_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include | $$(AS) $$(ASFLAGS) -o $$@ + $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif @@ -329,7 +349,8 @@ $(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) berry_fix libagbsyscall - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB) + @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) diff --git a/asmdiff.sh b/asmdiff.sh index 6ea588131d14..f5a7010747c7 100755 --- a/asmdiff.sh +++ b/asmdiff.sh @@ -1,11 +1,19 @@ #!/bin/bash -OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb" +if [[ -d "$DEVKITARM/bin/" ]]; then + OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump" +else + OBJDUMP_BIN="arm-none-eabi-objdump" +fi + +OBJDUMP="$OBJDUMP_BIN -D -bbinary -marmv4t -Mforce-thumb" + if [ $(($1)) -ge $((0x8000000)) ]; then OPTIONS="--adjust-vma=0x8000000 --start-address=$(($1)) --stop-address=$(($1 + $2))" else OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))" fi + $OBJDUMP $OPTIONS baserom.gba > baserom.dump $OBJDUMP $OPTIONS pokeemerald.gba > pokeemerald.dump diff -u baserom.dump pokeemerald.dump diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 0ead3804fd0f..8b8d07d427f2 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index a121fda93bf9..bae657c92739 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) +# 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 tihs system + +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) endif - -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 911cdb237c44..76368da86b16 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -1,29 +1,28 @@ TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 -ifeq ($(CC),) -HOSTCC := gcc -else -HOSTCC := $(CC) -endif +# 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 tihs system -ifeq ($(CXX),) -HOSTCXX := g++ -else -HOSTCXX := $(CXX) +ifneq (,$(TOOLCHAIN)) +ifneq ($(wildcard $(TOOLCHAIN)/bin),) +export PATH := $(TOOLCHAIN)/bin:$(PATH) +endif endif -ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) -include $(TOOLCHAIN)/base_tools -else -export PATH := $(TOOLCHAIN)/bin:$(PATH) PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy -export CC := $(PREFIX)gcc -export AS := $(PREFIX)as -endif -export CPP := $(PREFIX)cpp -export LD := $(PREFIX)ld +AS := $(PREFIX)as +CPP := $(CC) -E +LD := $(PREFIX)ld + +# note: the makefile must be set up so MODERNCC is never called +# if MODERN=0 +MODERNCC := $(PREFIX)gcc ifeq ($(OS),Windows_NT) EXE := .exe diff --git a/map_data_rules.mk b/map_data_rules.mk index 0203b383d001..626cd4724080 100755 --- a/map_data_rules.mk +++ b/map_data_rules.mk @@ -9,9 +9,9 @@ MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS)) MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(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 - | $(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 - | $(AS) $(ASFLAGS) -o $@ $(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index 77df29152730..dd48a87597af 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,12 +6,18 @@ LIBS = -lm SRCS = main.c extended.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: aif2pcm +all: aif2pcm$(EXE) @: -aif2pcm: $(SRCS) +aif2pcm$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 52806e39c6f1..4dbfab94fe34 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -6,10 +6,16 @@ CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 SRCS = bin2c.c -all: bin2c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: bin2c$(EXE) @: -bin2c: $(SRCS) +bin2c$(EXE): $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbafix/Makefile b/tools/gbafix/Makefile index 91a60a9e4c9d..efb016c97ed8 100644 --- a/tools/gbafix/Makefile +++ b/tools/gbafix/Makefile @@ -3,10 +3,16 @@ CC ?= gcc SRCS = gbafix.c -all: gbafix +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: gbafix$(EXE) @: -gbafix: $(SRCS) +gbafix$(EXE): $(SRCS) $(CC) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index f0638414dae3..b4244aa8d6ab 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,15 +6,21 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: gbagfx +all: gbagfx$(EXE) @: -gbagfx-debug: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx-debug$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) -DDEBUG $(SRCS) -o $@ $(LDFLAGS) $(LIBS) -gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h +gbagfx$(EXE): $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index 47198b171ed8..eec73eb7bf4b 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -8,12 +8,18 @@ SRCS := jsonproc.cpp HEADERS := jsonproc.h inja.hpp nlohmann/json.hpp +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: jsonproc +all: jsonproc$(EXE) @: -jsonproc: $(SRCS) $(HEADERS) +jsonproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(INCLUDES) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mapjson/Makefile b/tools/mapjson/Makefile index c1f703f9fe48..100e809c6c27 100644 --- a/tools/mapjson/Makefile +++ b/tools/mapjson/Makefile @@ -6,12 +6,18 @@ SRCS := json11.cpp mapjson.cpp HEADERS := mapjson.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mapjson +all: mapjson$(EXE) @: -mapjson: $(SRCS) $(HEADERS) +mapjson$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index 451d4b39fb2c..553b7859ede7 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,12 +6,18 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: mid2agb +all: mid2agb$(EXE) @: -mid2agb: $(SRCS) $(HEADERS) +mid2agb$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index 8c48afea2ad9..1507c973f27e 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,12 +8,18 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + .PHONY: all clean -all: preproc +all: preproc$(EXE) @: -preproc: $(SRCS) $(HEADERS) +preproc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index 4e901a29c129..a9375c87abf9 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -8,10 +8,16 @@ HEADERS := ramscrgen.h sym_file.h elf.h char_util.h .PHONY: all clean -all: ramscrgen +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: ramscrgen$(EXE) @: -ramscrgen: $(SRCS) $(HEADERS) +ramscrgen$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 930a92b36ebe..0bc88a42b797 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -8,10 +8,16 @@ SRCS = main.c convert_png.c util.c font.c .PHONY: all clean -all: rsfont +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: rsfont$(EXE) @: -rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h +rsfont$(EXE): $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) clean: diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 52e663d8da34..96d92f7062af 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -8,10 +8,16 @@ HEADERS := scaninc.h asm_file.h c_file.h source_file.h .PHONY: all clean -all: scaninc +ifeq ($(OS),Windows_NT) +EXE := .exe +else +EXE := +endif + +all: scaninc$(EXE) @: -scaninc: $(SRCS) $(HEADERS) +scaninc$(EXE): $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) clean: From 946faf682f4ca5fdaebc5cfec34815c1a427ac2d Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 17 Dec 2020 09:03:14 -0500 Subject: [PATCH 028/762] Extra clarification about remounting the C: drive --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index ee18ce21629e..dd5d24defc74 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -261,10 +261,10 @@ Note for WSL1: If you get an error stating `fatal: could not set 'core.filemode' ```bash cd sudo umount /mnt/c -sudo mount -t drvfs C: /mnt/c -o metadata +sudo mount -t drvfs C: /mnt/c -o metadata,noatime cd ``` -Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). +Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). Then run the `git clone` command again. If agbcc has not been built before, run the following commands to build and install it into pokeemerald: ``` From 9da0920969a31bee441ba941263836204ff85f52 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 23 Dec 2020 18:02:30 -0500 Subject: [PATCH 029/762] Improve INSTALL.mds as per recommendations. - Put "conditional" notes in quotes to better communicate which instructions are more required - Number instructions per OS as per Griffin's advice. --- INSTALL.md | 493 ++++++++++++++++++++---------------- docs/legacy_WSL1_INSTALL.md | 55 ++-- 2 files changed, 313 insertions(+), 235 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index dd5d24defc74..b3c106e725f4 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -2,117 +2,145 @@ These instructions explain how to set up the tools required to build **pokeemerald**, which assembles the source files into a ROM. -If you run into trouble, ask for help on IRC or Discord (see [README.md](README.md)). +If you run into trouble, ask for help on Discord or IRC (see [README.md](README.md)). ## Windows Windows has instructions for building with three possible terminals, if users encounter unexpected errors in following instructions for one of the terminals. These instructions are: -- [Windows 10 (WSL1)](#windows-10-wsl1) -- [Windows (msys2)](#windows-msys2) -- [Windows (Cygwin)](#windows-cygwin) +- [Windows 10 (WSL1)](#windows-10-wsl1) (**Fastest, highly recommended**, Windows 10 only) +- [Windows (msys2)](#windows-msys2) (Second fastest) +- [Windows (Cygwin)](#windows-cygwin) (Slowest) -The instructions have been ordered by the performance of their respective terminal. Out of the provided terminals, **WSL1** builds pokeemerald the fastest, and is thus **highly recommended**, but is only available on Windows 10. **msys2** is the second fastest, and **Cygwin** is the slowest. Unscientific benchmarks suggest msys2 is 2x slower than WSL1, and Cygwin is **5-6x** slower than WSL1. For advanced users, **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools such as [porymap](https://github.com/huderlem/porymap) cannot interact with said files due to problems [outside the control of maintainers](https://bugreports.qt.io/browse/QTBUG-86277). +Unscientific benchmarks suggest **msys2 is 2x slower** than WSL1, and **Cygwin is 5-6x slower** than WSL1. + +> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. 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. ## Windows 10 (WSL1) -WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred interchangeably as WSL). - -If WSL (Debian or Ubuntu) is **not installed**, then go to [Installing WSL1](#Installing-WSL1). Otherwise, if WSL is installed, but it hasn't previously been set up for another decompilation project, then go to [Setting up WSL1](#Setting-up-WSL1). Otherwise, open WSL and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1). +WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred to interchangeably as WSL). +- If WSL (Debian or Ubuntu) is **not installed**, then go to [Installing WSL1](#Installing-WSL1). +- Otherwise, if WSL is installed, but it **hasn't previously been set up for another decompilation project**, then go to [Setting up WSL1](#Setting-up-WSL1). +- Otherwise, **open WSL** and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1). ### Installing WSL1 -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). -``` -dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart -``` -Once the process finishes, restart your machine. +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). -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 (Note for advanced users: Debian also works here). Advanced users can pick a preferred Linux distribution, but setup instructions may differ. + ```powershell + dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart + ``` -Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. 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). If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog. +2. Once the process finishes, restart your machine. -### Setting up WSL1 -Open **Ubuntu** (e.g. using Search). WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). Note that there will be no visible response when typing in the password, but the terminal will still read in input. +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. + + > Note for advanced users: Advanced users 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. -A few notes before proceeding: -- In the terminal, Copy and Paste is either done via + > 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). + +### Setting up WSL1 +Some tips before proceeding: +- In WSL, Copy and Paste is either done via - **right-click** (selection + right click to Copy, right click with no selection to Paste) - **Ctrl+Shift+C/Ctrl+Shift+V** (enabled by right-clicking the title bar, going to Properties, then checking the checkbox next to "Use Ctrl+Shift+C/V as Copy/Paste"). - Some of the commands that you'll run will ask for your WSL password and/or confirmation to perform the stated action. This is to be expected, just enter your WSL password and/or the yes action when necessary. -Update WSL/Ubuntu before continuing. Do this by running the following command: -```bash -sudo apt update && sudo apt upgrade -``` -Note that these commands will likely take a long time to finish. +1. Open **Ubuntu** (e.g. using Search). +2. WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). -*Note: If the repository you plan to build was created before 2020/XX/YY (e.g. modifications of pokeemerald that haven't updated) then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md). These repositories can be identified by the [older revision](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md) of the INSTALL.md* + > Note: When typing in the password, there will be no visible response, but the terminal will still read in input. -Certain packages are required to build pokeemerald. Install these packages by running the following command: -```bash -sudo apt install build-essential binutils-arm-none-eabi git libpng-dev -``` -(If the above command does not work, try the above command but replacing `apt` with `apt-get`). +3. Update WSL/Ubuntu before continuing. Do this by running the following command: + + ```bash + sudo apt update && sudo apt upgrade + ``` + > Note: These commands will likely take a long time to finish. + +> *Note: If the repository you plan to build was created before 2020/XX/YY (e.g. modifications of pokeemerald that haven't updated) then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md). These repositories can be identified by the [older revision](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md) of the INSTALL.md* + +4. Certain packages are required to build pokeemerald. Install these packages by running the following command: + + ```bash + sudo apt install build-essential binutils-arm-none-eabi git libpng-dev + ``` + > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. ### Choosing where to store pokeemerald (WSL1) WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. You'll have to change the **current working directory** every time you open WSL. -For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command, where *\* is your **Windows** username: ```bash cd /mnt/c/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. - -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) -If this works, then proceed to [Installation](#Installation). +> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. +> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. +> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed + +If this works, then proceed to [Installation](#installation). -Otherwise, continue reading below for [Windows instructions using msys2](#windows-msys2). +Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using msys2](#windows-msys2). ## Windows (msys2) -If devkitPro is not installed, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). If devkitPro is installed, but msys2 hasn't previously been set up for another decompilation project, then go to [Setting up msys2](#setting-up-msys2). Otherwise, open msys2 and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-msys2). +- If devkitPro is **not installed**, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). +- If devkitPro is installed, but msys2 **hasn't previously been set up for another decompilation project**, then go to [Setting up msys2](#setting-up-msys2). +- Otherwise, **open msys2** and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-msys2). ### Installing devkitPro -Download the devkitPro installer [here](https://github.com/devkitPro/installer/releases). - -Run the devkitPro installer. In the "Choose Components" screen, uncheck everything except GBA Development unless if you plan to use devkitPro for other purposes. Keep the install location as C:\devkitPro and leave the Start Menu option unchanged. +1. Download the devkitPro installer [here](https://github.com/devkitPro/installer/releases). +2. Run the devkitPro installer. In the "Choose Components" screen, uncheck everything except GBA Development unless if you plan to use devkitPro for other purposes. Keep the install location as C:\devkitPro and leave the Start Menu option unchanged. ### Setting up msys2 -Open msys2 at C:\devkitPro\msys2\msys2_shell.bat. Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. -Certain packages are required to build pokeemerald. Install these by running the following command: -```bash -pacman -S make gcc zlib-devel git -``` -(This command will ask for confirmation, just enter the yes action when prompted). +1. Open msys2 at C:\devkitPro\msys2\msys2_shell.bat. -Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). +2. Certain packages are required to build pokeemerald. Install these by running the following command: -Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\__**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: -```bash -cd Downloads -``` -(While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. Windows path names are case-insensitive so adhereing to capitalization isn’t needed. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there) + ```bash + pacman -S make gcc zlib-devel git + ``` + > Note: This command will ask for confirmation, just enter the yes action when prompted. -Run the following command to uncompress and install libpng. -```bash -tar xf libpng-1.6.37 -cd libpng-1.6.37 -./configure --prefix=/usr -make check -make install -``` -Then finally, run the following command to change back to the user profile folder. -```bash -cd -``` +3. Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). + +4. Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\_\_**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: + + ```bash + cd Downloads + ``` + + > Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. + > Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed. + > Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there. + +5. Run the following commands to uncompress and install libpng. + + ```bash + tar xf libpng-1.6.37 + cd libpng-1.6.37 + ./configure --prefix=/usr + make check + make install + ``` + +6. Then finally, run the following command to change back to the user profile folder. + + ```bash + cd + ``` ### Choosing where to store pokeemerald (msys2) -At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open msys2. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). +At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll have to change the **current working directory** an extra time every time you open msys2. For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: ```bash @@ -120,90 +148,106 @@ cd Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -If this works, then proceed to [Installation](#Installation). +If this works, then proceed to [Installation](#installation). -Otherwise, continue reading below for [Windows instructions using Cygwin](#windows-cygwin). +Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using Cygwin](#windows-cygwin). ## Windows (Cygwin) -If devkitPro is not installed, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. Remember to not continue following the msys2 instructions by mistake! +1. If devkitPro is **not installed**, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. *Remember to not continue following the msys2 instructions by mistake!* -If Cygwin is not installed, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). If Cygwin is installed, but is not configured to work with devkitPro, then go to [Configuring devkitPro for Cygwin](#configuring-devkitpro-for-cygwin). Otherwise, open Cygwin and go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) +2. + - If Cygwin is **not installed**, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). + - If Cygwin is installed, but **is not configured to work with devkitPro**, then go to [Configuring devkitPro for Cygwin](#configuring-devkitpro-for-cygwin). + - Otherwise, **open Cygwin** and go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) ### Installing Cygwin -Download [Cygwin](https://cygwin.com/install.html): setup-x86_64.exe for 64-bit Windows, setup-x86.exe for 32-bit. +1. Download [Cygwin](https://cygwin.com/install.html): setup-x86_64.exe for 64-bit Windows, setup-x86.exe for 32-bit. + +2. Run the Cygwin setup. Within the Cygwin setup, leave the default settings until the "Choose A Download Site" screen. + +3. At "Choose a Download Site", select any mirror within the Available Download Sites. + +4. At "Select Packages", set the view to "Full" (top left) and search for the following packages: + - `make` + - `git` + - `gcc-core` + - `gcc-g++` + - `libpng-devel` -Run the Cygwin setup and leave the default settings. At "Choose a Download Site", select any mirror within the Available Download Sites. At "Select Packages", set the view to "Full" (top left) and choose to install the following: -- `make` -- `git` -- `gcc-core` -- `gcc-g++` -- `libpng-devel` + To quickly find these, use the search bar and type the name of each package. Ensure that the selected package name is the **exact** same as the one you're trying to download, e.g. `cmake` is **NOT** the same as `make`. -To quickly find these, use the search bar and type the name of each package. Ensure that the selected package name is the **exact** same as the one you're trying to download, e.g. `cmake` is **NOT** the same as `make`. +5. For each package, double click on the text that says "**Skip**" next to each package to select the most recent version to install. If the text says anything other than "**Skip**", (e.g. Keep or a version number), then the package is or will be installed and you don't need to do anything. -Double click on the text that says "**Skip**" next to each package to select the most recent version to install. If the text says anything other than "**Skip**", (e.g. Keep or a version number), then the package is or will be installed and you don't need to do anything. +6. Once all required packages have been selected, finish the installation. -Once all required packages have been selected, finish the installation. ### Configuring devkitPro for Cygwin -Open **Cygwin**. Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. -Run the following commands to configure devkitPro to work with Cygwin. -```bash -export DEVKITPRO=/cygdrive/c/devkitpro -echo export DEVKITPRO=$DEVKITPRO >> ~/.bashrc -export DEVKITARM=$DEVKITPRO/devkitARM -echo export DEVKITARM=$DEVKITARM >> ~/.bashrc -``` -(Replace the drive letter c with the actual drive letter if it is not c). +1. Open **Cygwin**. + +2. Run the following commands to configure devkitPro to work with Cygwin. + + ```bash + export DEVKITPRO=/cygdrive/c/devkitpro + echo export DEVKITPRO=$DEVKITPRO >> ~/.bashrc + export DEVKITARM=$DEVKITPRO/devkitARM + echo export DEVKITARM=$DEVKITARM >> ~/.bashrc + ``` + + > Note: Replace the drive letter c with the actual drive letter if it is not c. ### Choosing where to store pokeemerald (Cygwin) Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\_\_**. If you don't want to store pokeemerald there, you'll have to change the **current working directory** every time you open Cygwin. -For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command, where *\* is your **Windows** username: ```bash cd c:/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -(Replace *\* in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) +> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. +> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed -If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). +If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## macOS -If the Xcode Command Line Tools are not installed, download the tools [here](https://developer.apple.com/library/archive/technotes/tn2339/_index.html), open your Terminal, and run the following command: -```bash -xcode-select --install -``` +1. If the Xcode Command Line Tools are not installed, download the tools [here](https://developer.apple.com/library/archive/technotes/tn2339/_index.html), open your Terminal, and run the following command: + + ```bash + xcode-select --install + ``` -If devkitPro is not installed, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). Otherwise, open the Terminal and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) +2. - If devkitPro is **not installed**, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). + - Otherwise, **open the Terminal** and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) ### Installing devkitPro (macOS) -Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). +1. Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). +2. Open the package to install devkitPro pacman. +3. devkitPro must be configured with the tools required for GBA development. Run the following commands: -Open the package to install devkitPro pacman. + ```bash + sudo dkp-pacman -Sy + sudo dkp-pacman -S gba-dev + sudo dkp-pacman -S devkitarm-rules + ``` -devkitPro must be configured with the tools required for GBA development. Run the following commands: -```bash -sudo dkp-pacman -Sy -sudo dkp-pacman -S gba-dev -sudo dkp-pacman -S devkitarm-rules -``` -At this point, press Enter to confirm the installation. After the tools are installed, devkitPro must now be made accessible from anywhere by the system. To do so, run the following commands: + The command with gba-dev will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. -``` -export DEVKITPRO=$HOME/devkitpro -echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc -export DEVKITARM=$DEVKITPRO/devkitARM -echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc +4. After the tools are installed, devkitPro must now be made accessible from anywhere by the system. To do so, run the following commands: -echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile -``` + ```bash + export DEVKITPRO=$HOME/devkitpro + echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc + export DEVKITARM=$DEVKITPRO/devkitARM + echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc + + echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile + ``` ### Choosing where to store pokeemerald (macOS) -At this point, you can choose a folder to store pokeemerald into. If so, you'll have to change the **current working directory** every time you open the Terminal. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). +At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). Otherwise, you'll have to change the **current working directory** an extra time every time you open the Terminal. For example, if you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**, enter this command: ```bash @@ -211,9 +255,9 @@ cd Desktop/decomps ``` Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. -(If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"`) +> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` -If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). +If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## Linux Open Terminal and enter the following commands, depending on which distro you're using. @@ -228,70 +272,84 @@ Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to ### Other distributions _(Specific instructions for other distributions would be greatly appreciated!)_ -Try to find the required software in its repositories: -- `gcc` -- `g++` -- `make` -- `git` -- `libpng-dev` +1. Try to find the required software in its repositories: + - `gcc` + - `g++` + - `make` + - `git` + - `libpng-dev` -Then, follow the instructions [here](https://devkitpro.org/wiki/devkitPro_pacman) to install devkitPro's pacman installer. As a reminder, the goal is to configure an existing pacman installation to recognize devkitPro's repositories. +2. Follow the instructions [here](https://devkitpro.org/wiki/devkitPro_pacman) to install devkitPro's pacman installer. As a reminder, the goal is to configure an existing pacman installation to recognize devkitPro's repositories. +3. Once devkitPro pacman is configured, run the following commands: -Once devkitPro pacman is configured, run the following commands: -```bash -sudo pacman -Sy -sudo pacman -S gba-dev -``` -Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. + ```bash + sudo pacman -Sy + sudo pacman -S gba-dev + ``` + + The last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. ### Choosing where to store pokeemerald (Linux) -At this point, you can choose a folder to store pokeemerald (and agbcc) into. If so, you'll have to change the current working directory every time you open the Terminal. +At this point, you can choose a folder to store pokeemerald (and agbcc) into. If so, you'll have to account for the modified folder path when changing directory to the pokeemerald folder. -If this works, then proceed to [Installation](#Installation). Otherwise, ask for help on IRC or Discord (see [README.md](README.md)). +If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## Installation -**Windows users:** Consider adding an exception for the `pokeemerald`/`decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. +**Windows users:** Consider adding an exception for the `pokeemerald` and/or `decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. -If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: -```bash -git clone https://github.com/luckytyphlosion/pokeemerald -``` -Note for WSL1: If you get an error stating `fatal: could not set 'core.filemode' to 'false'`, then run the following commands: -```bash -cd -sudo umount /mnt/c -sudo mount -t drvfs C: /mnt/c -o metadata,noatime -cd -``` -Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). Then run the `git clone` command again. +1. If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: + + ```bash + git clone https://github.com/luckytyphlosion/pokeemerald + ``` + + > Note for WSL1: If you get an error stating `fatal: could not set 'core.filemode' to 'false'`, then run the following commands: + >```bash + >cd + >sudo umount /mnt/c + >sudo mount -t drvfs C: /mnt/c -o metadata,noatime + >cd + >``` + > Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). Then run the `git clone` command again. + +2. Install agbcc into pokeemerald. The commands to run depend on certain conditions: +- If agbcc has **not been built before** in the folder where you chose to store pokeemerald, run the following commands to build and install it into pokeemerald: + + ```bash + git clone https://github.com/luckytyphlosion/agbcc + cd agbcc + ./build.sh + ./install.sh ../pokeemerald + ``` + +- If agbcc has been built before (e.g. if the git clone above fails), but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: + + ```bash + cd agbcc + git clean -fX + ./build.sh + ./install.sh ../pokeemerald + ``` + +- Otherwise, run the following commands to install agbcc into pokeemerald: + + ```bash + cd agbcc + ./install.sh ../pokeemerald + ``` + + > Note: If building agbcc or pokeemerald results in an error, try deleting the agbcc folder and re-installing agbcc as if it has not been built before. + +3. Once agbcc is installed, change directory back to the base directory where pokeemerald and agbcc are stored: + + ```bash + cd .. + ``` -If agbcc has not been built before, run the following commands to build and install it into pokeemerald: -``` -git clone https://github.com/luckytyphlosion/agbcc -cd agbcc -./build.sh -./install.sh ../pokeemerald -``` -If agbcc has been built before (e.g. if the git clone above fails), but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: -``` -cd agbcc -git clean -fX -./build.sh -./install.sh ../pokeemerald -``` -Otherwise, run the following commands to install agbcc into pokeemerald: -``` -cd agbcc -./install.sh ../pokeemerald -``` -Then, change directory back to the base directory where pokeemerald and agbcc are stored: -``` -cd .. -``` Now you're ready to [build **pokeemerald**](#build-pokeemerald) ## Build pokeemerald -First, change directory to the pokeemerald folder: +If you aren't in the pokeemerald directory already, then **change directory** to the pokeemerald folder: ```bash cd pokeemerald ``` @@ -299,7 +357,8 @@ To build **pokeemerald.gba** for the first time and confirm it matches the offic ```bash make compare ``` -If an OK is returned, then the installation went smoothly. **Note:** if you switched terminals on Windows since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands. +If an OK is returned, then the installation went smoothly. +> Note for Windows: if you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands. To build **pokeemerald.gba** with your changes: ```bash @@ -312,7 +371,7 @@ make See [the GNU docs](https://www.gnu.org/software/make/manual/html_node/Parallel.html) and [this Stack Exchange thread](https://unix.stackexchange.com/questions/208568) for more information. -To speed up building, first get the value of `nproc`: +To speed up building, first get the value of `nproc` by running the following command: ```bash nproc ``` @@ -340,65 +399,75 @@ make modern Otherwise, follow the instructions below to install devkitARM. ### Installing devkitARM on WSL1 -`gdebi-core` must be installed beforehand in order to install devkitPro (which facilitates the installation of devkitARM). Install this with the following command: -```bash -sudo apt install gdebi-core -``` -(If the above command does not work, try the above command but replacing `apt` with `apt-get`). +1. `gdebi-core` must be installed beforehand in order to install devkitPro (which facilitates the installation of devkitARM). Install this with the following command: -Once `gdebi-core` is done installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. + ```bash + sudo apt install gdebi-core + ``` + > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. -Change directory to where the package was downloaded. For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: -```bash -cd /mnt/c/Users//Downloads -``` -(Replace *\* with your Windows username) +2. Once `gdebi-core` is done installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +3. Change directory to where the package was downloaded. For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command, where *\ is your **Windows** username: -Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. -```bash -sudo gdebi devkitpro-pacman.amd64.deb -sudo dkp-pacman -Sy -sudo dkp-pacman -S gba-dev -``` -Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + ```bash + cd /mnt/c/Users//Downloads + ``` + +4. Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. + + ```bash + sudo gdebi devkitpro-pacman.amd64.deb + sudo dkp-pacman -Sy + sudo dkp-pacman -S gba-dev + ``` + The last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. + + > Note: `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + +5. Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): + + ```bash + source /etc/profile.d/devkit-env.sh + ``` -Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): -```bash -source /etc/profile.d/devkit-env.sh -``` devkitARM is now installed. ### Installing devkitARM on Debian/Ubuntu-based distributions -If `gdebi-core` is not installed, run the following command: -```bash -sudo apt install gdebi-core -``` -Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +1. If `gdebi-core` is not installed, run the following command: -Change directory to where the package was downloaded. Then, run the following commands to install devkitARM: -```bash -sudo gdebi devkitpro-pacman.amd64.deb -sudo dkp-pacman -Sy -sudo dkp-pacman -S gba-dev -``` -Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + ```bash + sudo apt install gdebi-core + ``` +2. Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +3. Change directory to where the package was downloaded. Then, run the following commands to install devkitARM: -Run the following command to set devkitPro related environment variables (alternatively, close and re-open the Terminal): -```bash -source /etc/profile.d/devkit-env.sh -``` -devkitARM is now installed. + ```bash + sudo gdebi devkitpro-pacman.amd64.deb + sudo dkp-pacman -Sy + sudo dkp-pacman -S gba-dev + ``` + The last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. -## Other toolchains + > Note: `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. -To build using a toolchain other than devkitARM, override the `TOOLCHAIN` environment variable with the path to your toolchain, which must contain the subdirectory `bin`. +4. Run the following command to set devkitPro related environment variables (alternatively, close and re-open the Terminal): - make TOOLCHAIN="/path/to/toolchain/here" + ```bash + source /etc/profile.d/devkit-env.sh + ``` -The following is an example: +devkitARM is now installed. - make TOOLCHAIN="/usr/local/arm-none-eabi" +## Other toolchains +To build using a toolchain other than devkitARM, override the `TOOLCHAIN` environment variable with the path to your toolchain, which must contain the subdirectory `bin`. +```bash +make TOOLCHAIN="/path/to/toolchain/here" +``` +The following is an example: +```bash +make TOOLCHAIN="/usr/local/arm-none-eabi" +``` To compile the `modern` target with this toolchain, the subdirectories `lib`, `include`, and `arm-none-eabi` must also be present. # Useful additional tools diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index 731b8f4338e8..f848abf6762a 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -1,32 +1,41 @@ ### Setting up WSL1 (Legacy Portion) -Certain packages are required to build pokeemerald. Install these packages by running the following command: -```bash -sudo apt install build-essential git libpng-dev gdebi-core -``` -(If the above command does not work, try the above command but replacing `apt` with `apt-get`). -Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +1. Certain packages are required to build pokeemerald. Install these packages by running the following command: -WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. To install the devkitPro package, you'll need to change to the **current working directory** where the package file was saved. + ```bash + sudo apt install build-essential git libpng-dev gdebi-core + ``` + > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. -For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: +2. Once the packages have finished installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. -```bash -cd /mnt/c/Users//Downloads -``` +3. WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. To install the devkitPro package, you'll need to change to the **current working directory** where the package file was saved. -(The Windows C:\ drive is called /mnt/c/ in WSL. Replace in the example path with your **Windows** username. If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. Windows path names are case-insensitive so adhereing to capitalization isn't needed) + For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command, where *\* is your **Windows** username: -Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. -```bash -sudo gdebi devkitpro-pacman.amd64.deb -sudo dkp-pacman -Sy -sudo dkp-pacman -S gba-dev -``` -Note: the last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + ```bash + cd /mnt/c/Users//Downloads + ``` + + > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. + > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed + +4. Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. + + ```bash + sudo gdebi devkitpro-pacman.amd64.deb + sudo dkp-pacman -Sy + sudo dkp-pacman -S gba-dev + ``` + + The last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. + + > Note: `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. + +5. Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): + ```bash + source /etc/profile.d/devkit-env.sh + ``` -Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): -```bash -source /etc/profile.d/devkit-env.sh -``` Proceed to [Choosing where to store pokeemerald (WSL1) of the current INSTALL.md](/INSTALL.md#choosing-where-to-store-pokeemerald-WSL1). From 56cad5c240a2ebb8fab2eec87ec4105f0875fddd Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 23 Dec 2020 18:14:33 -0500 Subject: [PATCH 030/762] Re-add note about Qt since Porymap hasn't upgraded to 6.0. --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index b3c106e725f4..76ad51a242e3 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -12,7 +12,7 @@ Windows has instructions for building with three possible terminals, if users en Unscientific benchmarks suggest **msys2 is 2x slower** than WSL1, and **Cygwin is 5-6x slower** than WSL1. -> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. +> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. For example, tools which use Qt versions before 6.0 such as [porymap](https://github.com/huderlem/porymap) may [have problems with parsing the `\\wsl$` network drive path](https://bugreports.qt.io/browse/QTBUG-86277). 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. From feb6befd09889d2f4518bbd6b6acf45872b95287 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 23 Dec 2020 22:51:35 -0500 Subject: [PATCH 031/762] Improve storage instructions as per Griffin's recommendations. Todo actually properly proofread this. --- INSTALL.md | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 76ad51a242e3..82c22d94b8d5 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -12,7 +12,7 @@ Windows has instructions for building with three possible terminals, if users en Unscientific benchmarks suggest **msys2 is 2x slower** than WSL1, and **Cygwin is 5-6x slower** than WSL1. -> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. For example, tools which use Qt versions before 6.0 such as [porymap](https://github.com/huderlem/porymap) may [have problems with parsing the `\\wsl$` network drive path](https://bugreports.qt.io/browse/QTBUG-86277). +> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. For example, tools which use Qt versions before 5.15.2 such as [porymap](https://github.com/huderlem/porymap) may [have problems with parsing the `\\wsl$` network drive path](https://bugreports.qt.io/browse/QTBUG-86277). 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. @@ -71,9 +71,9 @@ Some tips before proceeding: > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. ### Choosing where to store pokeemerald (WSL1) -WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. You'll have to change the **current working directory** every time you open WSL. +WSL has its own file system that's not natively accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. -For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command, where *\* is your **Windows** username: +For example, say you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command, where *\* is your **Windows** username: ```bash cd /mnt/c/Users//Desktop/decomps ``` @@ -81,7 +81,11 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. -> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed +> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed +> Note 4: If pokeemerald is already installed, then run the following command instead (for the provided example path): +> ```bash +> cd /mnt/c/Users//Desktop/decomps/pokeemerald +> ``` If this works, then proceed to [Installation](#installation). @@ -140,14 +144,21 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. ``` ### Choosing where to store pokeemerald (msys2) -At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll have to change the **current working directory** an extra time every time you open msys2. +At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokeemerald is stored when changing directory to the pokeemerald folder. + +For example, say you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command to **change directory** to the desired folder: -For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command: ```bash cd Desktop/decomps ``` + Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. +> Note: If pokeemerald is already installed, then run the following command instead (for the provided example path): +> ```bash +> cd Desktop/decomps/pokeemerald +> ``` + If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using Cygwin](#windows-cygwin). @@ -199,7 +210,7 @@ Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. ### Choosing where to store pokeemerald (Cygwin) -Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\_\_**. If you don't want to store pokeemerald there, you'll have to change the **current working directory** every time you open Cygwin. +Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\_\_**. If you don't want to store pokeemerald there, you'll need to account for where pokeemerald is stored when **changing directory** to the pokeemerald folder. For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**, enter this command, where *\* is your **Windows** username: ```bash @@ -209,6 +220,10 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer > Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. > Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed +> Note 3: If pokeemerald is already installed, then run the following command instead (for the provided example path): +> ```bash +> cd c:/Users//Desktop/decomps/pokeemerald +> ``` If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). @@ -247,15 +262,19 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ``` ### Choosing where to store pokeemerald (macOS) -At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). Otherwise, you'll have to change the **current working directory** an extra time every time you open the Terminal. +At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokeemerald is stored when changing directory to the pokeemerald folder. -For example, if you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**, enter this command: +For example, say you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command to **change directory** to the desired folder: ```bash cd Desktop/decomps ``` Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. -> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` +> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` +> Note 2: If pokeemerald is already installed, then run the following command instead (for the provided example path: +> ```bash +> cd Desktop/decomps/pokeemerald +> ``` If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). From a0344a4094e97a11415a26758357071c06c591cc Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 30 Dec 2020 18:49:04 -0500 Subject: [PATCH 032/762] Forgot to add some line breaks. --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 82c22d94b8d5..7dd860e8451f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -219,7 +219,7 @@ cd c:/Users//Desktop/decomps Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. > Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. -> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed +> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed > Note 3: If pokeemerald is already installed, then run the following command instead (for the provided example path): > ```bash > cd c:/Users//Desktop/decomps/pokeemerald @@ -270,7 +270,7 @@ cd Desktop/decomps ``` Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. -> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` +> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` > Note 2: If pokeemerald is already installed, then run the following command instead (for the provided example path: > ```bash > cd Desktop/decomps/pokeemerald From e744d86bf15db8e8ca172b849ac3473ae34194c3 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 30 Dec 2020 20:56:04 -0500 Subject: [PATCH 033/762] Fix msys2 instructions, also add more formatting to installation instructions. --- INSTALL.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 7dd860e8451f..566d373792fa 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -130,7 +130,7 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. 5. Run the following commands to uncompress and install libpng. ```bash - tar xf libpng-1.6.37 + tar xf libpng-1.6.37.tar.xz cd libpng-1.6.37 ./configure --prefix=/usr make check @@ -342,7 +342,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ./install.sh ../pokeemerald ``` -- If agbcc has been built before (e.g. if the git clone above fails), but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: +- **Otherwise**, if agbcc has been built before (e.g. if the git clone above fails), but was **last built on a different terminal** than the one currently used (only relevant to Windows, e.g. switching from msys2 to WSL1), then run the following commands to build and install it into pokeemerald: ```bash cd agbcc @@ -351,7 +351,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ./install.sh ../pokeemerald ``` -- Otherwise, run the following commands to install agbcc into pokeemerald: +- **Otherwise**, run the following commands to install agbcc into pokeemerald: ```bash cd agbcc From 98f8c96c9e21791651d2274f07046496ab826ff2 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 4 Jan 2021 11:35:59 -0500 Subject: [PATCH 034/762] Fix $(AR) define, remove \u warns on macOS. --- Makefile | 21 ++++++++++++++++----- berry_fix/Makefile | 22 +++++++++++++++++++--- berry_fix/payload/Makefile | 20 ++++++++++++++++++-- libagbsyscall/Makefile | 21 +++++++++++++++++++-- 4 files changed, 72 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index 306b8fb6e849..3bb5161e31ec 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ COMPARE ?= 0 # 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 tihs system +# if dkP is not installed on this system ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) @@ -36,10 +36,21 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +# use arm-none-eabi-cpp for macOS +# as macOS's default compiler is clang +# and clang's preprocessor will warn on \u +# when preprocessing asm files, expecting a unicode literal +# we can't unconditionally use arm-none-eabi-cpp +# as installations which install binutils-arm-none-eabi +# don't come with it ifneq ($(MODERN),1) -CPP := $(CC) -E + ifeq ($(shell uname -s),Darwin) + CPP := $(PREFIX)cpp + else + CPP := $(CC) -E + endif else -CPP := $(PREFIX)cpp + CPP := $(PREFIX)cpp endif ROM_NAME := pokeemerald.gba @@ -362,7 +373,7 @@ modern: ; @$(MAKE) MODERN=1 berry_fix/berry_fix.gba: berry_fix berry_fix: - @$(MAKE) -C berry_fix COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) + @$(MAKE) -C berry_fix COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) libagbsyscall: - @$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN) + @$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) diff --git a/berry_fix/Makefile b/berry_fix/Makefile index 8b8d07d427f2..464e5f9e9cb0 100644 --- a/berry_fix/Makefile +++ b/berry_fix/Makefile @@ -6,7 +6,7 @@ COMPARE ?= 0 # 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 tihs system +# if dkP is not installed on this system ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) @@ -17,7 +17,6 @@ endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy AS := $(PREFIX)as -CPP := $(CC) -E LD := $(PREFIX)ld # note: the makefile must be set up so MODERNCC is never called @@ -30,6 +29,23 @@ else EXE := endif +# use arm-none-eabi-cpp for macOS +# as macOS's default compiler is clang +# and clang's preprocessor will warn on \u +# when preprocessing asm files, expecting a unicode literal +# we can't unconditionally use arm-none-eabi-cpp +# as installations which install binutils-arm-none-eabi +# don't come with it +ifneq ($(MODERN),1) + ifeq ($(shell uname -s),Darwin) + CPP := $(PREFIX)cpp + else + CPP := $(CC) -E + endif +else + CPP := $(PREFIX)cpp +endif + GAME_CODE := AGBJ MAKER_CODE := 01 REVISION := 0 @@ -165,7 +181,7 @@ $(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s) endif payload: - @$(MAKE) -C payload COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) + @$(MAKE) -C payload COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) payload/payload.gba: payload diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile index bae657c92739..2779c43ba87c 100644 --- a/berry_fix/payload/Makefile +++ b/berry_fix/payload/Makefile @@ -6,7 +6,7 @@ COMPARE ?= 0 # 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 tihs system +# if dkP is not installed on this system ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) @@ -17,7 +17,6 @@ endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy AS := $(PREFIX)as -CPP := $(CC) -E LD := $(PREFIX)ld # note: the makefile must be set up so MODERNCC is never called @@ -30,6 +29,23 @@ else EXE := endif +# use arm-none-eabi-cpp for macOS +# as macOS's default compiler is clang +# and clang's preprocessor will warn on \u +# when preprocessing asm files, expecting a unicode literal +# we can't unconditionally use arm-none-eabi-cpp +# as installations which install binutils-arm-none-eabi +# don't come with it +ifneq ($(MODERN),1) + ifeq ($(shell uname -s),Darwin) + CPP := $(PREFIX)cpp + else + CPP := $(CC) -E + endif +else + CPP := $(PREFIX)cpp +endif + SHELL := /bin/bash -o pipefail CPPFLAGS := -I ../../tools/agbcc/include -I ../../tools/agbcc -iquote include -nostdinc -undef diff --git a/libagbsyscall/Makefile b/libagbsyscall/Makefile index 76368da86b16..78f246af4057 100644 --- a/libagbsyscall/Makefile +++ b/libagbsyscall/Makefile @@ -6,7 +6,7 @@ COMPARE ?= 0 # 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 tihs system +# if dkP is not installed on this system ifneq (,$(TOOLCHAIN)) ifneq ($(wildcard $(TOOLCHAIN)/bin),) @@ -17,8 +17,8 @@ endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy AS := $(PREFIX)as -CPP := $(CC) -E LD := $(PREFIX)ld +AR := $(PREFIX)ar # note: the makefile must be set up so MODERNCC is never called # if MODERN=0 @@ -30,6 +30,23 @@ else EXE := endif +# use arm-none-eabi-cpp for macOS +# as macOS's default compiler is clang +# and clang's preprocessor will warn on \u +# when preprocessing asm files, expecting a unicode literal +# we can't unconditionally use arm-none-eabi-cpp +# as installations which install binutils-arm-none-eabi +# don't come with it +ifneq ($(MODERN),1) + ifeq ($(shell uname -s),Darwin) + CPP := $(PREFIX)cpp + else + CPP := $(CC) -E + endif +else + CPP := $(PREFIX)cpp +endif + ASFLAGS := -mcpu=arm7tdmi ARFLAGS := rc From 10c0566121cb923b7f4e6c1a97a1df8ad70cb327 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Tue, 19 Jan 2021 11:43:50 -0500 Subject: [PATCH 035/762] Don't keep temporary C build files by default. --- Makefile | 10 ++++++++ tools/preproc/c_file.cpp | 54 +++++++++++++++++++++++++++++---------- tools/preproc/c_file.h | 5 +++- tools/preproc/preproc.cpp | 22 +++++++++++----- 4 files changed, 70 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index 3bb5161e31ec..3383cb14dd50 100644 --- a/Makefile +++ b/Makefile @@ -283,10 +283,15 @@ override CFLAGS += -g endif $(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep) +ifeq (,$(KEEP_TEMPS)) + @echo "$(CC1) -o $@ $<" + @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | { $(CC1) $(CFLAGS) -o - -; 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 ifeq ($(NODEP),1) $(GFLIB_BUILDDIR)/%.o: c_dep := @@ -295,10 +300,15 @@ $(GFLIB_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(GFLIB_SUBDIR)/$*.c ]] && $(SCANIN endif $(GFLIB_BUILDDIR)/%.o : $(GFLIB_SUBDIR)/%.c $$(c_dep) +ifeq (,$(KEEP_TEMPS)) + @echo "$(CC1) -o $@ $<" + @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | { $(CC1) $(CFLAGS) -o - -; 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 ifeq ($(NODEP),1) $(C_BUILDDIR)/%.o: c_asm_dep := diff --git a/tools/preproc/c_file.cpp b/tools/preproc/c_file.cpp index b996a048c7cb..f7ca4365ccd3 100644 --- a/tools/preproc/c_file.cpp +++ b/tools/preproc/c_file.cpp @@ -23,32 +23,58 @@ #include #include #include +#include #include "preproc.h" #include "c_file.h" #include "char_util.h" #include "utf8.h" #include "string_parser.h" -CFile::CFile(std::string filename) : m_filename(filename) +CFile::CFile(const char * filenameCStr, bool isStdin) { - FILE *fp = std::fopen(filename.c_str(), "rb"); + FILE *fp; + + if (isStdin) { + fp = stdin; + m_filename = std::string{"/"}.append(filenameCStr); + } else { + fp = std::fopen(filenameCStr, "rb"); + 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()); - std::fseek(fp, 0, SEEK_END); - - m_size = std::ftell(fp); + 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()); + } - if (m_size < 0) - FATAL_ERROR("File size of \"%s\" is less than zero.\n", filename.c_str()); + std::size_t numAllocatedBytes = CHUNK_SIZE + 1; + std::size_t bufferOffset = 0; + std::size_t count; - m_buffer = new char[m_size + 1]; + while ((count = std::fread(m_buffer + bufferOffset, 1, CHUNK_SIZE, fp)) != 0) { + if (!std::ferror(fp)) { + m_size += count; - std::rewind(fp); + if (std::feof(fp)) { + break; + } - if (std::fread(m_buffer, m_size, 1, fp) != 1) - FATAL_ERROR("Failed to read \"%s\".\n", filename.c_str()); + 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; @@ -56,6 +82,7 @@ CFile::CFile(std::string filename) : m_filename(filename) m_pos = 0; m_lineNum = 1; + m_isStdin = isStdin; } CFile::CFile(CFile&& other) : m_filename(std::move(other.m_filename)) @@ -64,13 +91,14 @@ CFile::CFile(CFile&& other) : m_filename(std::move(other.m_filename)) m_pos = other.m_pos; m_size = other.m_size; m_lineNum = other.m_lineNum; + m_isStdin = other.m_isStdin; - other.m_buffer = nullptr; + other.m_buffer = NULL; } CFile::~CFile() { - delete[] m_buffer; + free(m_buffer); } void CFile::Preproc() diff --git a/tools/preproc/c_file.h b/tools/preproc/c_file.h index 7369aba85252..49e633a18dd4 100644 --- a/tools/preproc/c_file.h +++ b/tools/preproc/c_file.h @@ -30,7 +30,7 @@ class CFile { public: - CFile(std::string filename); + CFile(const char * filenameCStr, bool isStdin); CFile(CFile&& other); CFile(const CFile&) = delete; ~CFile(); @@ -42,6 +42,7 @@ class CFile long m_size; long m_lineNum; std::string m_filename; + bool m_isStdin; bool ConsumeHorizontalWhitespace(); bool ConsumeNewline(); @@ -55,4 +56,6 @@ class CFile void RaiseWarning(const char* format, ...); }; +#define CHUNK_SIZE 4096 + #endif // C_FILE_H diff --git a/tools/preproc/preproc.cpp b/tools/preproc/preproc.cpp index c9c6042df192..02950a2963b9 100644 --- a/tools/preproc/preproc.cpp +++ b/tools/preproc/preproc.cpp @@ -103,9 +103,9 @@ void PreprocAsmFile(std::string filename) } } -void PreprocCFile(std::string filename) +void PreprocCFile(const char * filename, bool isStdin) { - CFile cFile(filename); + CFile cFile(filename, isStdin); cFile.Preproc(); } @@ -132,9 +132,9 @@ char* GetFileExtension(char* filename) int main(int argc, char **argv) { - if (argc != 3) + if (argc < 3 || argc > 4) { - std::fprintf(stderr, "Usage: %s SRC_FILE CHARMAP_FILE", argv[0]); + std::fprintf(stderr, "Usage: %s SRC_FILE CHARMAP_FILE [-i]\nwhere -i denotes if input is from stdin", argv[0]); return 1; } @@ -147,9 +147,17 @@ int main(int argc, char **argv) if ((extension[0] == 's') && extension[1] == 0) PreprocAsmFile(argv[1]); - else if ((extension[0] == 'c' || extension[0] == 'i') && extension[1] == 0) - PreprocCFile(argv[1]); - else + 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 FATAL_ERROR("\"%s\" has an unknown file extension of \"%s\".\n", argv[1], extension); return 0; From 57bc32e300b7e23886337e244a3522e1e1bec04f Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 27 Jan 2021 09:57:50 -0500 Subject: [PATCH 036/762] Fix templess builds from not exiting on error. --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 3383cb14dd50..bb65aed74af4 100644 --- a/Makefile +++ b/Makefile @@ -285,7 +285,7 @@ endif $(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep) ifeq (,$(KEEP_TEMPS)) @echo "$(CC1) -o $@ $<" - @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | { $(CC1) $(CFLAGS) -o - -; echo -e ".text\n\t.align\t2, 0"; } | $(AS) $(ASFLAGS) -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)/$*.i @$(PREPROC) $(C_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CFLAGS) -o $(C_BUILDDIR)/$*.s @@ -302,7 +302,7 @@ endif $(GFLIB_BUILDDIR)/%.o : $(GFLIB_SUBDIR)/%.c $$(c_dep) ifeq (,$(KEEP_TEMPS)) @echo "$(CC1) -o $@ $<" - @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | { $(CC1) $(CFLAGS) -o - -; echo -e ".text\n\t.align\t2, 0"; } | $(AS) $(ASFLAGS) -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 From 11eb805856262585248db63668d781d635d266af Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sun, 31 Jan 2021 16:22:54 -0500 Subject: [PATCH 037/762] Temporary fix for macOS install. Should probably figure out what's exactly setting $DEVKITPRO since it's set by something else upon opening the Terminal. --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index 566d373792fa..a59d4002ca01 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -253,7 +253,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for 4. After the tools are installed, devkitPro must now be made accessible from anywhere by the system. To do so, run the following commands: ```bash - export DEVKITPRO=$HOME/devkitpro + export DEVKITPRO=/opt/devkitpro echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc export DEVKITARM=$DEVKITPRO/devkitARM echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc From 4c3c61fa357c36444daade4d16a741418fff95a2 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 8 Feb 2021 11:55:36 -0500 Subject: [PATCH 038/762] Add instructions for installing libpng on macOS --- INSTALL.md | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index a59d4002ca01..fdeffca76696 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -234,13 +234,28 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for xcode-select --install ``` -2. - If devkitPro is **not installed**, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). - - Otherwise, **open the Terminal** and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) +2. - If libpng is **not installed**, then go to [Installing libpng (macOS)](#installing-libpng-macos). + - If devkitPro is **not installed**, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). + - Otherwise, **open the Terminal** and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) + +### Installing libpng (macOS) +> Note for advanced users: This guide installs libpng via Homebrew as it is the easiest method, however advanced users can install libpng through other means if they so desire. + +1. Open the Terminal. +2. If Homebrew is not installed, then install [Homebrew](https://brew.sh/) by following the instructions on the website. +3. Run the following command to install libpng. + + ```bash + brew install libpng + ``` + libpng is now installed. + + Continue to [Installing devkitPro (macOS)](#installing-devkitpro-macos) if **devkitARM is not installed**, otherwise, go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos). ### Installing devkitPro (macOS) 1. Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). 2. Open the package to install devkitPro pacman. -3. devkitPro must be configured with the tools required for GBA development. Run the following commands: +3. devkitPro must be configured with the tools required for GBA development. In the Terminal, run the following commands: ```bash sudo dkp-pacman -Sy From 0f13e061e1d652b2e1d9a1515f10d831f63cc5f5 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 8 Feb 2021 12:35:21 -0500 Subject: [PATCH 039/762] Fix up dkP related naming. --- INSTALL.md | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index fdeffca76696..d91f82434051 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -93,13 +93,13 @@ Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or conti ## Windows (msys2) -- If devkitPro is **not installed**, or is installed but without the GBA Development component, then go to [Installing devkitPro](#installing-devkitpro). -- If devkitPro is installed, but msys2 **hasn't previously been set up for another decompilation project**, then go to [Setting up msys2](#setting-up-msys2). +- If devkitARM is **not installed**, then go to [Installing devkitARM](#installing-devkitarm). +- If devkitARM is installed, but msys2 **hasn't previously been set up for another decompilation project**, then go to [Setting up msys2](#setting-up-msys2). - Otherwise, **open msys2** and go to [Choosing where to store pokeemerald (msys2)](#choosing-where-to-store-pokeemerald-msys2). -### Installing devkitPro +### Installing devkitARM 1. Download the devkitPro installer [here](https://github.com/devkitPro/installer/releases). -2. Run the devkitPro installer. In the "Choose Components" screen, uncheck everything except GBA Development unless if you plan to use devkitPro for other purposes. Keep the install location as C:\devkitPro and leave the Start Menu option unchanged. +2. Run the devkitPro installer. In the "Choose Components" screen, uncheck everything except GBA Development unless if you plan to install other devkitPro components for other purposes. Keep the install location as C:\devkitPro and leave the Start Menu option unchanged. ### Setting up msys2 @@ -164,11 +164,11 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using Cygwin](#windows-cygwin). ## Windows (Cygwin) -1. If devkitPro is **not installed**, or is installed but without the GBA Development component, then follow the instructions used to [install devkitPro](#installing-devkitpro) for the msys2 setup before continuing. *Remember to not continue following the msys2 instructions by mistake!* +1. If devkitARM is **not installed**, then follow the instructions used to [install devkitARM](#installing-devkitarm) for the msys2 setup before continuing. *Remember to not continue following the msys2 instructions by mistake!* 2. - If Cygwin is **not installed**, or does not have all of the required packages installed, then go to [Installing Cygwin](#installing-cygwin). - - If Cygwin is installed, but **is not configured to work with devkitPro**, then go to [Configuring devkitPro for Cygwin](#configuring-devkitpro-for-cygwin). + - If Cygwin is installed, but **is not configured to work with devkitARM**, then go to [Configuring devkitARM for Cygwin](#configuring-devkitarm-for-cygwin). - Otherwise, **open Cygwin** and go to [Choosing where to store pokeemerald (Cygwin)](#choosing-where-to-store-pokeemerald-cygwin) ### Installing Cygwin @@ -191,7 +191,7 @@ Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or conti 6. Once all required packages have been selected, finish the installation. -### Configuring devkitPro for Cygwin +### Configuring devkitARM for Cygwin Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. @@ -235,7 +235,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ``` 2. - If libpng is **not installed**, then go to [Installing libpng (macOS)](#installing-libpng-macos). - - If devkitPro is **not installed**, then go to [Installing devkitPro (macOS)](#installing-devkitpro-macos). + - If devkitARM is **not installed**, then go to [Installing devkitARM (macOS)](#installing-devkitarm-macos). - Otherwise, **open the Terminal** and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) ### Installing libpng (macOS) @@ -250,12 +250,12 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ``` libpng is now installed. - Continue to [Installing devkitPro (macOS)](#installing-devkitpro-macos) if **devkitARM is not installed**, otherwise, go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos). + Continue to [Installing devkitARM (macOS)](#installing-devkitarm-macos) if **devkitARM is not installed**, otherwise, go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos). -### Installing devkitPro (macOS) +### Installing devkitARM (macOS) 1. Download the `devkitpro-pacman-installer.pkg` package from [here](https://github.com/devkitPro/pacman/releases). 2. Open the package to install devkitPro pacman. -3. devkitPro must be configured with the tools required for GBA development. In the Terminal, run the following commands: +3. In the Terminal, run the following commands to install devkitARM: ```bash sudo dkp-pacman -Sy @@ -265,7 +265,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for The command with gba-dev will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. -4. After the tools are installed, devkitPro must now be made accessible from anywhere by the system. To do so, run the following commands: +4. After the tools are installed, devkitARM must now be made accessible from anywhere by the system. To do so, run the following commands: ```bash export DEVKITPRO=/opt/devkitpro @@ -313,7 +313,7 @@ _(Specific instructions for other distributions would be greatly appreciated!)_ - `git` - `libpng-dev` -2. Follow the instructions [here](https://devkitpro.org/wiki/devkitPro_pacman) to install devkitPro's pacman installer. As a reminder, the goal is to configure an existing pacman installation to recognize devkitPro's repositories. +2. Follow the instructions [here](https://devkitpro.org/wiki/devkitPro_pacman) to install devkitPro pacman. As a reminder, the goal is to configure an existing pacman installation to recognize devkitPro's repositories. 3. Once devkitPro pacman is configured, run the following commands: ```bash @@ -433,21 +433,21 @@ make modern Otherwise, follow the instructions below to install devkitARM. ### Installing devkitARM on WSL1 -1. `gdebi-core` must be installed beforehand in order to install devkitPro (which facilitates the installation of devkitARM). Install this with the following command: +1. `gdebi-core` must be installed beforehand in order to install devkitPro pacman (which facilitates the installation of devkitARM). Install this with the following command: ```bash sudo apt install gdebi-core ``` > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. -2. Once `gdebi-core` is done installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +2. Once `gdebi-core` is done installing, download the devkitPro pacman package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. 3. Change directory to where the package was downloaded. For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command, where *\ is your **Windows** username: ```bash cd /mnt/c/Users//Downloads ``` -4. Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. +4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitPro pacman. ```bash sudo gdebi devkitpro-pacman.amd64.deb @@ -472,7 +472,7 @@ devkitARM is now installed. ```bash sudo apt install gdebi-core ``` -2. Download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +2. Download the devkitPro pacman package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. 3. Change directory to where the package was downloaded. Then, run the following commands to install devkitARM: ```bash From 6a865be4c2f640b482d91ede650b52b4b7d5778f Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 8 Feb 2021 12:38:49 -0500 Subject: [PATCH 040/762] Fix up incorrect term. --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index d91f82434051..1ba2e7b42567 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -447,7 +447,7 @@ Otherwise, follow the instructions below to install devkitARM. cd /mnt/c/Users//Downloads ``` -4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitPro pacman. +4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitARM. ```bash sudo gdebi devkitpro-pacman.amd64.deb From 1760d6801074ff20568726beeaea4d539aa9f1bd Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Mon, 8 Feb 2021 12:39:43 -0500 Subject: [PATCH 041/762] Fix up dkP related naming here as well. --- docs/legacy_WSL1_INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index f848abf6762a..b9840d1c8297 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -7,7 +7,7 @@ ``` > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. -2. Once the packages have finished installing, download the devkitPro software package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. +2. Once the packages have finished installing, download the devkitPro pacman package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. 3. WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. To install the devkitPro package, you'll need to change to the **current working directory** where the package file was saved. @@ -21,7 +21,7 @@ > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed -4. Once the directory has been changed to the folder containing the devkitPro package, run the following commands to install devkitPro. +4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitARM. ```bash sudo gdebi devkitpro-pacman.amd64.deb From 52ab1acea16e98accf70acf0fdac493a370550ee Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 10 Feb 2021 17:32:46 -0500 Subject: [PATCH 042/762] Easy changes per Griffin's comments --- INSTALL.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 1ba2e7b42567..36d2b9d25271 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -5,7 +5,7 @@ These instructions explain how to set up the tools required to build **pokeemera If you run into trouble, ask for help on Discord or IRC (see [README.md](README.md)). ## Windows -Windows has instructions for building with three possible terminals, if users encounter unexpected errors in following instructions for one of the terminals. These instructions are: +Windows has instructions for building with three possible terminals, providing 3 different options in case the user stumbled upon unexpected errors. - [Windows 10 (WSL1)](#windows-10-wsl1) (**Fastest, highly recommended**, Windows 10 only) - [Windows (msys2)](#windows-msys2) (Second fastest) - [Windows (Cygwin)](#windows-cygwin) (Slowest) @@ -35,7 +35,7 @@ WSL1 is the preferred terminal to build **pokeemerald**. The following instructi 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. - > Note for advanced users: Advanced users can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested. + > Note for advanced users: 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. @@ -61,7 +61,7 @@ Some tips before proceeding: ``` > Note: These commands will likely take a long time to finish. -> *Note: If the repository you plan to build was created before 2020/XX/YY (e.g. modifications of pokeemerald that haven't updated) then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md). These repositories can be identified by the [older revision](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md) of the INSTALL.md* +> Note: If the repository you plan to build has an **[older revision of the INSTALL.md](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md)**, then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md) from here. 4. Certain packages are required to build pokeemerald. Install these packages by running the following command: @@ -330,7 +330,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ## Installation -**Windows users:** Consider adding an exception for the `pokeemerald` and/or `decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. +> Windows users: Consider adding an exception for the `pokeemerald` and/or `decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. 1. If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: From 22e2c0a47ca876313604f0dd031abb324477186f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Mar 2021 05:40:42 -0400 Subject: [PATCH 043/762] Document Berry Crush --- .../bg.bin} | Bin .../container_cap.bin} | Bin .../tiles.bin => berry_crush/crusher.bin} | 0 .../tiles.pal => berry_crush/crusher.pal} | 0 .../tiles.png => berry_crush/crusher.png} | Bin .../crusher_base.png} | Bin .../crusher_top.bin} | Bin .../effects.pal} | 0 .../impact.png} | Bin .../sparkle.png} | Bin .../timer_digits.png} | Bin .../321start.png | Bin .../321start_static.png | Bin include/berry.h | 8 +- include/berry_crush.h | 2 +- include/constants/game_stat.h | 2 +- include/global.h | 2 +- include/graphics.h | 6 +- include/strings.h | 2 +- src/berry.c | 88 +- src/berry_crush.c | 3338 +++++++++-------- src/graphics.c | 6 +- src/minigame_countdown.c | 8 +- src/strings.c | 2 +- 24 files changed, 1882 insertions(+), 1582 deletions(-) rename graphics/{link_games/berrycrush_background.bin => berry_crush/bg.bin} (100%) rename graphics/{link_games/berrycrush_container_cap.bin => berry_crush/container_cap.bin} (100%) rename graphics/{berry_crusher/tiles.bin => berry_crush/crusher.bin} (100%) rename graphics/{berry_crusher/tiles.pal => berry_crush/crusher.pal} (100%) rename graphics/{berry_crusher/tiles.png => berry_crush/crusher.png} (100%) rename graphics/{link_games/berrycrush_grinder_base.png => berry_crush/crusher_base.png} (100%) rename graphics/{link_games/berrycrush_grinder_top.bin => berry_crush/crusher_top.bin} (100%) rename graphics/{link_games/berrycrush_misc.pal => berry_crush/effects.pal} (100%) rename graphics/{link_games/berrycrush_btnpress.png => berry_crush/impact.png} (100%) rename graphics/{link_games/berrycrush_sparkle.png => berry_crush/sparkle.png} (100%) rename graphics/{link_games/berrycrush_timerdigits.png => berry_crush/timer_digits.png} (100%) rename graphics/{link_games => minigame_countdown}/321start.png (100%) rename graphics/{link_games => minigame_countdown}/321start_static.png (100%) diff --git a/graphics/link_games/berrycrush_background.bin b/graphics/berry_crush/bg.bin similarity index 100% rename from graphics/link_games/berrycrush_background.bin rename to graphics/berry_crush/bg.bin diff --git a/graphics/link_games/berrycrush_container_cap.bin b/graphics/berry_crush/container_cap.bin similarity index 100% rename from graphics/link_games/berrycrush_container_cap.bin rename to graphics/berry_crush/container_cap.bin diff --git a/graphics/berry_crusher/tiles.bin b/graphics/berry_crush/crusher.bin similarity index 100% rename from graphics/berry_crusher/tiles.bin rename to graphics/berry_crush/crusher.bin diff --git a/graphics/berry_crusher/tiles.pal b/graphics/berry_crush/crusher.pal similarity index 100% rename from graphics/berry_crusher/tiles.pal rename to graphics/berry_crush/crusher.pal diff --git a/graphics/berry_crusher/tiles.png b/graphics/berry_crush/crusher.png similarity index 100% rename from graphics/berry_crusher/tiles.png rename to graphics/berry_crush/crusher.png diff --git a/graphics/link_games/berrycrush_grinder_base.png b/graphics/berry_crush/crusher_base.png similarity index 100% rename from graphics/link_games/berrycrush_grinder_base.png rename to graphics/berry_crush/crusher_base.png diff --git a/graphics/link_games/berrycrush_grinder_top.bin b/graphics/berry_crush/crusher_top.bin similarity index 100% rename from graphics/link_games/berrycrush_grinder_top.bin rename to graphics/berry_crush/crusher_top.bin diff --git a/graphics/link_games/berrycrush_misc.pal b/graphics/berry_crush/effects.pal similarity index 100% rename from graphics/link_games/berrycrush_misc.pal rename to graphics/berry_crush/effects.pal diff --git a/graphics/link_games/berrycrush_btnpress.png b/graphics/berry_crush/impact.png similarity index 100% rename from graphics/link_games/berrycrush_btnpress.png rename to graphics/berry_crush/impact.png diff --git a/graphics/link_games/berrycrush_sparkle.png b/graphics/berry_crush/sparkle.png similarity index 100% rename from graphics/link_games/berrycrush_sparkle.png rename to graphics/berry_crush/sparkle.png diff --git a/graphics/link_games/berrycrush_timerdigits.png b/graphics/berry_crush/timer_digits.png similarity index 100% rename from graphics/link_games/berrycrush_timerdigits.png rename to graphics/berry_crush/timer_digits.png diff --git a/graphics/link_games/321start.png b/graphics/minigame_countdown/321start.png similarity index 100% rename from graphics/link_games/321start.png rename to graphics/minigame_countdown/321start.png diff --git a/graphics/link_games/321start_static.png b/graphics/minigame_countdown/321start_static.png similarity index 100% rename from graphics/link_games/321start_static.png rename to graphics/minigame_countdown/321start_static.png diff --git a/include/berry.h b/include/berry.h index 4a5a46615b4f..22b9158ee204 100644 --- a/include/berry.h +++ b/include/berry.h @@ -28,11 +28,11 @@ void SetBerryTreesSeen(void); extern const struct Berry gBerries[]; -struct UnkStruct_0858AB24 { - u8 unk0; - u16 unk1; +struct BerryCrushBerryData { + u8 difficulty; // The number of A presses required to crush it + u16 powder; }; -extern const struct UnkStruct_0858AB24 gUnknown_0858AB24[]; +extern const struct BerryCrushBerryData gBerryCrush_BerryData[]; #endif // GUARD_BERRY_H diff --git a/include/berry_crush.h b/include/berry_crush.h index a08f1f69962b..02dcce5067ff 100755 --- a/include/berry_crush.h +++ b/include/berry_crush.h @@ -3,6 +3,6 @@ #include "main.h" -void StartBerryCrush(MainCallback callback); +void StartBerryCrush(MainCallback exitCallback); #endif // GUARD_BERRY_CRUSH_H diff --git a/include/constants/game_stat.h b/include/constants/game_stat.h index e302f1345c82..2acdfd8a3e78 100644 --- a/include/constants/game_stat.h +++ b/include/constants/game_stat.h @@ -52,7 +52,7 @@ #define GAME_STAT_RODE_CABLE_CAR 48 #define GAME_STAT_ENTERED_HOT_SPRINGS 49 #define GAME_STAT_NUM_UNION_ROOM_BATTLES 50 -#define GAME_STAT_51 51 +#define GAME_STAT_PLAYED_BERRY_CRUSH 51 #define NUM_USED_GAME_STATS 52 #define NUM_GAME_STATS 64 diff --git a/include/global.h b/include/global.h index 1992ff8196f5..7daed8621d3a 100644 --- a/include/global.h +++ b/include/global.h @@ -209,7 +209,7 @@ struct PyramidBag struct BerryCrush { - u16 berryCrushResults[4]; + u16 pressingSpeeds[4]; // For the record with each possible group size, 2-5 players u32 berryPowderAmount; u32 unk; }; diff --git a/include/graphics.h b/include/graphics.h index b1a781ffff1d..9be05f38eb18 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -5001,9 +5001,9 @@ extern const u16 gUsePokeblockUpDown_Pal[]; extern const u16 gUsePokeblockCondition_Pal[]; // Berry Crush -extern const u32 gUnknown_08DE34B8[]; -extern const u16 gUnknown_08DE3398[]; -extern const u32 gUnknown_08DE3FD4[]; +extern const u32 gBerryCrush_Crusher_Gfx[]; +extern const u16 gBerryCrush_Crusher_Pal[]; +extern const u32 gBerryCrush_Crusher_Tilemap[]; // Pokenav extern const u32 gPokenavMessageBox_Gfx[]; diff --git a/include/strings.h b/include/strings.h index 294ab8aa6f87..8880f3a5c818 100644 --- a/include/strings.h +++ b/include/strings.h @@ -2904,7 +2904,7 @@ extern const u8 gText_CrushingResults[]; extern const u8 gText_BerryCrush2[]; extern const u8 gText_PressingSpeedRankings[]; extern const u8 gText_Var1Players[]; -extern const u8 gText_ReadyToBerryCrush[]; +extern const u8 gText_ReadyPickBerry[]; extern const u8 gText_WaitForAllChooseBerry[]; extern const u8 gText_EndedWithXUnitsPowder[]; extern const u8 gText_RecordingGameResults[]; diff --git a/src/berry.c b/src/berry.c index ea62deabf79e..d56ec801ca9e 100644 --- a/src/berry.c +++ b/src/berry.c @@ -889,50 +889,50 @@ const struct Berry gBerries[] = }, }; -const struct UnkStruct_0858AB24 gUnknown_0858AB24[] = { - { 50, 20}, - { 50, 20}, - { 50, 20}, - { 50, 20}, - { 50, 20}, - { 50, 30}, - { 50, 30}, - { 50, 30}, - { 50, 30}, - { 50, 30}, - { 60, 50}, - { 60, 50}, - { 60, 50}, - { 60, 50}, - { 60, 50}, - { 80, 70}, - { 80, 70}, - { 80, 70}, - { 80, 70}, - { 80, 70}, - {100, 100}, - {100, 100}, - {100, 100}, - {100, 100}, - {100, 100}, - {130, 150}, - {130, 150}, - {130, 150}, - {130, 150}, - {130, 150}, - {160, 250}, - {160, 250}, - {160, 250}, - {160, 250}, - {160, 250}, - {180, 500}, - {180, 500}, - {180, 500}, - {180, 500}, - {180, 500}, - {200, 750}, - {200, 750}, - {150, 200} +const struct BerryCrushBerryData gBerryCrush_BerryData[] = { + [ITEM_CHERI_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 20}, + [ITEM_CHESTO_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 20}, + [ITEM_PECHA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 20}, + [ITEM_RAWST_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 20}, + [ITEM_ASPEAR_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 20}, + [ITEM_LEPPA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 30}, + [ITEM_ORAN_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 30}, + [ITEM_PERSIM_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 30}, + [ITEM_LUM_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 30}, + [ITEM_SITRUS_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 50, .powder = 30}, + [ITEM_FIGY_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 60, .powder = 50}, + [ITEM_WIKI_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 60, .powder = 50}, + [ITEM_MAGO_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 60, .powder = 50}, + [ITEM_AGUAV_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 60, .powder = 50}, + [ITEM_IAPAPA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 60, .powder = 50}, + [ITEM_RAZZ_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 80, .powder = 70}, + [ITEM_BLUK_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 80, .powder = 70}, + [ITEM_NANAB_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 80, .powder = 70}, + [ITEM_WEPEAR_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 80, .powder = 70}, + [ITEM_PINAP_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 80, .powder = 70}, + [ITEM_POMEG_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 100, .powder = 100}, + [ITEM_KELPSY_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 100, .powder = 100}, + [ITEM_QUALOT_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 100, .powder = 100}, + [ITEM_HONDEW_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 100, .powder = 100}, + [ITEM_GREPA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 100, .powder = 100}, + [ITEM_TAMATO_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 130, .powder = 150}, + [ITEM_CORNN_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 130, .powder = 150}, + [ITEM_MAGOST_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 130, .powder = 150}, + [ITEM_RABUTA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 130, .powder = 150}, + [ITEM_NOMEL_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 130, .powder = 150}, + [ITEM_SPELON_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 160, .powder = 250}, + [ITEM_PAMTRE_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 160, .powder = 250}, + [ITEM_WATMEL_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 160, .powder = 250}, + [ITEM_DURIN_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 160, .powder = 250}, + [ITEM_BELUE_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 160, .powder = 250}, + [ITEM_LIECHI_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 180, .powder = 500}, + [ITEM_GANLON_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 180, .powder = 500}, + [ITEM_SALAC_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 180, .powder = 500}, + [ITEM_PETAYA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 180, .powder = 500}, + [ITEM_APICOT_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 180, .powder = 500}, + [ITEM_LANSAT_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 200, .powder = 750}, + [ITEM_STARF_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 200, .powder = 750}, + [ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX] = {.difficulty = 150, .powder = 200} }; const struct BerryTree gBlankBerryTree = {}; diff --git a/src/berry_crush.c b/src/berry_crush.c index 635f2a639a57..e63eb9f828a8 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -38,204 +38,352 @@ #include "constants/rgb.h" #include "constants/songs.h" +#define MAX_TIME (10 * 60 * 60) // Timer can go up to 9:59:59 + +#define TAG_CRUSHER_BASE 1 +#define PALTAG_EFFECT 2 // The next two gfx tags share this pal tag +#define GFXTAG_IMPACT 2 +#define GFXTAG_SPARKLE 3 +#define TAG_TIMER_DIGITS 4 +#define TAG_PLAYER1_BERRY 5 +#define TAG_PLAYER2_BERRY 6 +#define TAG_PLAYER3_BERRY 7 +#define TAG_PLAYER4_BERRY 8 +#define TAG_PLAYER5_BERRY 9 + #define TAG_COUNTDOWN 0x1000 -struct BerryCrushGame_Player -{ - u8 unk0[PLAYER_NAME_LENGTH + 1 + 4]; - u16 unkC; - u16 unkE; - u16 unk10; - u16 unk12; - u16 unk14; - u16 unk16; - u16 unk18; - u16 unk1A; - u8 unk1B; - u8 unk1C; +#define CRUSHER_START_Y (-104) + +enum { + RUN_CMD, + SCHEDULE_CMD, +}; + +// IDs for the main berry crush game functions +enum { + CMD_NONE, + CMD_FADE, + CMD_WAIT_FADE, + CMD_PRINT_MSG, + CMD_SHOW_GAME, + CMD_HIDE_GAME, + CMD_READY_BEGIN, + CMD_ASK_PICK_BERRY, + CMD_PICK_BERRY, + CMD_WAIT_BERRIES, + CMD_DROP_BERRIES, + CMD_DROP_LID, + CMD_COUNTDOWN, + CMD_PLAY_GAME_LEADER, + CMD_PLAY_GAME_MEMBER, + CMD_FINISH_GAME, + CMD_TIMES_UP, + CMD_CALC_RESULTS, + CMD_SHOW_RESULTS, + CMD_SAVE, + CMD_ASK_PLAY_AGAIN, + CMD_COMM_PLAY_AGAIN, + CMD_PLAY_AGAIN_YES, + CMD_PLAY_AGAIN_NO, + CMD_CLOSE_LINK, + CMD_QUIT, +}; + +enum { + MSG_PICK_BERRY, + MSG_WAIT_PICK, + MSG_POWDER, + MSG_SAVING, + MSG_PLAY_AGAIN, + MSG_NO_BERRIES, + MSG_DROPPED, + MSG_TIMES_UP, + MSG_COMM_STANDBY, +}; + +#define F_MSG_CLEAR (1 << 0) +#define F_MSG_EXPAND (1 << 1) + +// Main states for the game. Many are assigned but never checked +enum { + STATE_INIT = 1, + STATE_RESET, + STATE_PICK_BERRY, + STATE_DROP_BERRIES, + STATE_DROP_LID, + STATE_COUNTDOWN, + STATE_PLAYING, + STATE_FINISHED, + STATE_TIMES_UP, + STATE_10, // Unused + STATE_RESULTS_PRESSES, + STATE_RESULTS_RANDOM, + STATE_RESULTS_CRUSHING, + STATE_14, // Unused + STATE_PLAY_AGAIN, +}; + +#define RESULTS_STATE_START STATE_RESULTS_PRESSES +#define RESULTS_STATE_END STATE_RESULTS_CRUSHING + +// IDs for each results page that shows in succession at the game's end. +// Only 3 pages are shown for a given game. Presses and Crushing are always shown 1st and 3rd. +// The 2nd page is random, and can be rankings for either Neatness, Cooperative, or Power. +enum { + RESULTS_PAGE_PRESSES, + RESULTS_PAGE_RANDOM, + RESULTS_PAGE_CRUSHING, + NUM_RESULTS_PAGES, +}; +// Random pages, see above +// "Neatness" is how many of the player's inputs were at a regular interval +// "Cooperative" is how often the player pressed A at the same time as others +// "Power" is how much of the time the player spent pressing A +enum { + RESULTS_PAGE_NEATNESS, + RESULTS_PAGE_COOPERATIVE, + RESULTS_PAGE_POWER, + NUM_RANDOM_RESULTS_PAGES +}; + +#define PLAY_AGAIN_YES 0 +#define PLAY_AGAIN_NO 1 +#define PLAY_AGAIN_NO_BERRIES 3 + +enum { + COLORID_GREY, + COLORID_BLACK, + COLORID_LIGHT_GREY, + COLORID_BLUE, + COLORID_GREEN, + COLORID_RED, }; -struct BerryCrushGame_4E -{ - u16 unk0; - u16 unk2; - u8 unk4_0:1; - u8 unk4_1:1; - u8 unk4_2:1; - u8 unk4_3:5; - s8 unk5; - u16 unk6; - u16 unk8; - u16 unkA; - u16 unkC; +// Flags for the inputFlags field +// Field is 16 bits; 3 bits for each player, last bit is unused +// The first two bits are interchangeable +// Needlessly complicated system, the inputState field is sufficient by itself +#define F_INPUT_HIT_A (1 << 0) +#define F_INPUT_HIT_B (1 << 1) +#define F_INPUT_HIT_SYNC (1 << 2) // Input at same time as another player +#define INPUT_FLAGS_PER_PLAYER 3 +#define INPUT_FLAG_MASK ((1 << INPUT_FLAGS_PER_PLAYER) - 1) + +// Values for the inputState field +enum { + INPUT_STATE_NONE, + INPUT_STATE_HIT, // Hit the crusher + INPUT_STATE_HIT_SYNC, // Hit the crusher at same time as another player }; -struct BerryCrushGame_40 +// No reason for this to be 2 +// Simply a flag for whether a given player has sent their data this round +// Data is only sent if the player is the leader or if they pressed A +#define SEND_GAME_STATE 2 + +struct BerryCrushGame_Player { - s16 unk0; - s16 unk2; - s16 unk4; - s16 unk6; - s16 unk8; - s16 unkA; - s16 unkC; - s16 unkE; + u8 name[PLAYER_NAME_LENGTH + 1 + 4]; + u16 berryId; + u16 inputTime; + u16 neatInputStreak; + u16 timeSincePrevInput; + u16 maxNeatInputStreak; + u16 numAPresses; + u16 numSyncedAPresses; + u16 timePressingA; + u8 inputFlags; + u8 inputState; }; -struct BerryCrushGame_5C -{ - u16 unk00; - u8 unk02_0:1; - u8 unk02_1:1; - u8 pushedAButton:1; - u8 unk02_3:5; - s8 unk03; - u16 unk04; - u16 unk06; - u16 unk08; - u16 unk0A; +// This data is set locally and sent to the other players +struct BerryCrushGame_LocalState +{ + u16 sendFlag; + bool8 endGame:1; + bool8 bigSparkle:1; + bool8 pushedAButton:1; + u8 playerPressedAFlags:5; // 1 bit for each player + s8 vibration; + u16 depth; + u16 timer; + u16 inputFlags; + u16 sparkleAmount; }; -struct BerryCrushGame_68 -{ - u32 unk00; - u16 unk04; - u16 unk06; - u16 unk08; - u16 unk0A; - // 0: Number of A presses - // 1: Neatness - u16 stats[2][5]; - u8 unk20[2][8]; +// This data is read from another player's local state above by casting the recvCmd buffer +// It is identical with exception to the addition of rfuCmd +struct BerryCrushGame_LinkState +{ + u16 rfuCmd; + u16 sendFlag; + bool8 endGame:1; + bool8 bigSparkle:1; + bool8 pushedAButton:1; + u8 playerPressedAFlags:5; + s8 vibration; + u16 depth; + u16 timer; + u16 inputFlags; + u16 sparkleAmount; }; -struct BerryCrushPlayerSeatCoords +struct BerryCrushGame_Results { - u8 unk0; - u8 unk1; - u8 unk2; - s16 unk4; - s16 unk6; - s16 unk8; - s16 unkA; + u32 powder; + u16 time; + u16 targetPressesPerSec; // Never read + u16 silkiness; + u16 totalAPresses; + u16 stats[2][MAX_RFU_PLAYERS]; + u8 playerIdsRanked[2][MAX_RFU_PLAYERS + 3]; +}; + +// playerIdsRanked above has 3 additional elements after the players. +// Only 1 of these 2*3 is ever used, and it stores the id for which +// random results page to show. Its define below is for readability. +#define randomPageId playerIdsRanked[0][7] + +// Holds position data for various player-associated graphics +struct BerryCrushPlayerCoords +{ + u8 playerId; + u8 windowGfxX; + u8 windowGfxY; + s16 impactXOffset; + s16 impactYOffset; + s16 berryXOffset; + s16 berryXDest; }; -struct BerryCrushGame_138 +struct BerryCrushGame_Gfx { - u8 animBerryIdx; - u8 unk1; - u8 unk2; - u8 unk3; + u8 counter; + u8 vibrationIdx; + u8 numVibrations; + bool8 vibrating; s16 minutes; s16 secondsInt; s16 secondsFrac; - const struct BerryCrushPlayerSeatCoords *seatCoords[5]; + const struct BerryCrushPlayerCoords *playerCoords[MAX_RFU_PLAYERS]; struct Sprite *coreSprite; - struct Sprite *impactSprites[5]; - struct Sprite *berrySprites[5]; + struct Sprite *impactSprites[MAX_RFU_PLAYERS]; + struct Sprite *berrySprites[MAX_RFU_PLAYERS]; struct Sprite *sparkleSprites[11]; struct Sprite *timerSprites[2]; - u8 unk80; - u8 filler81; - u8 unk82; - u8 unk83[5]; + u8 resultsState; + u8 unused; + u8 resultsWindowId; + u8 nameWindowIds[MAX_RFU_PLAYERS]; u16 bgBuffers[4][0x800]; }; struct BerryCrushGame { - MainCallback savedCallback; + MainCallback exitCallback; u32 (*cmdCallback)(struct BerryCrushGame *, u8 *); u8 localId; u8 playerCount; - u8 mainTask; + u8 taskId; u8 textSpeed; u8 cmdState; - u8 unkD; + u8 unused; // Never read u8 nextCmd; u8 afterPalFadeCmd; - u16 unk10; + u16 cmdTimer; u16 gameState; - u16 unk14; + u16 playAgainState; u16 pressingSpeed; - s16 unk18; - s16 unk1A; + s16 targetAPresses; + s16 totalAPresses; s32 powder; - s32 unk20; - u8 unk24; - u8 unk25_0:1; - u8 unk25_1:1; - u8 unk25_2:1; - u8 unk25_3:1; - u8 unk25_4:1; - u8 unk25_5:3; - u16 unk26; + s32 targetDepth; + u8 newDepth; + bool8 noRoomForPowder:1; // Never read + bool8 newRecord:1; + bool8 playedSound:1; + bool8 endGame:1; + bool8 bigSparkle:1; + u8 sparkleAmount:3; + u16 leaderTimer; u16 timer; s16 depth; s16 vibration; - s16 unk2E; - s16 unk30; - s16 unk32; - s16 unk34; - u8 commandParams[0xC]; + s16 bigSparkleCounter; + s16 numBigSparkles; + s16 numBigSparkleChecks; + s16 sparkleCounter; + u8 commandArgs[12]; u16 sendCmd[6]; u16 recvCmd[7]; - struct BerryCrushGame_5C localState; - struct BerryCrushGame_68 unk68; - struct BerryCrushGame_Player unk98[5]; - struct BerryCrushGame_138 unk138; + struct BerryCrushGame_LocalState localState; + struct BerryCrushGame_Results results; + struct BerryCrushGame_Player players[MAX_RFU_PLAYERS]; + struct BerryCrushGame_Gfx gfx; }; static void VBlankCB(void); static void MainCB(void); static void MainTask(u8); -static void ParseName_Options(struct BerryCrushGame *); -static void BerryCrush_RunOrScheduleCommand(u16, u8, u8 *); -static void BerryCrush_SetPaletteFadeParams(u8 *, bool8, u32, s8, u8, u8, u16); -static s32 sub_8021450(struct BerryCrushGame *); -static void sub_8022588(struct BerryCrushGame *); -static void sub_8022600(struct BerryCrushGame *); -static void sub_80226D0(struct BerryCrushGame *); -static void sub_8022730(struct BerryCrushGame *); -static void sub_8022960(struct BerryCrushGame *); -static void BerryCrush_PrintTimeOnSprites(struct BerryCrushGame_138 *, u16); -static void sub_8022B28(struct Sprite *); -static void BerryCrush_HideTimerSprites(struct BerryCrushGame_138 *r0); -static void sub_8024578(struct BerryCrushGame *); -static void BerryCrush_SetShowMessageParams(u8 *params, u8 stringId, u8 flags, u16 waitKeys, u8 followupCmd); -static void SpriteCB_BerryCrushImpact(struct Sprite *sprite); -static u32 BerryCrushCommand_BeginNormalPaletteFade(struct BerryCrushGame *r6, u8 *r1); -static u32 BerryCrushCommand_WaitPaletteFade(struct BerryCrushGame *r4, u8 *r5); -static u32 BerryCrushCommand_PrintMessage(struct BerryCrushGame *r7, u8 *r5); -static u32 BerryCrushCommand_InitGfx(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_TeardownGfx(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_SignalReadyToBegin(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_AskPickBerry(struct BerryCrushGame *r4, u8 *r5); -static u32 BerryCrushCommand_GoToBerryPouch(struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_WaitForOthersToPickBerries(struct BerryCrushGame *r5, u8 *r2); -static u32 BerryCrushCommand_DropBerriesIntoCrusher(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_DropLid(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_Countdown(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_PlayGame_Master(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_PlayGame_Slave(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_FinishGame(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_HandleTimeUp(struct BerryCrushGame *r5, u8 *r6); -static u32 BerryCrushCommand_TabulateResults(struct BerryCrushGame *r7, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_ShowResults(struct BerryCrushGame *r5, u8 *r6); -static u32 BerryCrushCommand_SaveGame(struct BerryCrushGame *r5, u8 *r4); -static u32 BerryCrushCommand_AskPlayAgain(struct BerryCrushGame *r5, u8 *r6); -static u32 BerryCrushCommand_CommunicatePlayAgainResponses(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_FadeOutToPlayAgain(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_PlayAgainFailureMessage(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_GracefulExit(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1); -static u32 BerryCrushCommand_Quit(__attribute__((unused)) struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1); - -static EWRAM_DATA struct BerryCrushGame *sBerryCrushGamePtr = NULL; - -static const u8 gUnknown_082F325C[] = { 1, 2, 4, 8, 16, 32, 64, 128 }; -static const u8 gUnknown_082F3264[] = { 0, 1, 2, 3, 5, 0, 0, 0 }; - -static const s8 gUnknown_082F326C[][7] = +static void SetNamesAndTextSpeed(struct BerryCrushGame *); +static void RunOrScheduleCommand(u16, u8, u8 *); +static void SetPaletteFadeArgs(u8 *, bool8, u32, s8, u8, u8, u16); +static s32 UpdateGame(struct BerryCrushGame *); +static void CreatePlayerNameWindows(struct BerryCrushGame *); +static void DrawPlayerNameWindows(struct BerryCrushGame *); +static void CopyPlayerNameWindowGfxToBg(struct BerryCrushGame *); +static void CreateGameSprites(struct BerryCrushGame *); +static void DestroyGameSprites(struct BerryCrushGame *); +static void PrintTimer(struct BerryCrushGame_Gfx *, u16); +static void SpriteCB_Sparkle_Init(struct Sprite *); +static void HideTimer(struct BerryCrushGame_Gfx *); +static void ResetGame(struct BerryCrushGame *); +static void SetPrintMessageArgs(u8 *, u8, u8, u16, u8); +static void SpriteCB_Impact(struct Sprite *); +static u32 Cmd_BeginNormalPaletteFade(struct BerryCrushGame *, u8 *); +static u32 Cmd_WaitPaletteFade(struct BerryCrushGame *, u8 *); +static u32 Cmd_PrintMessage(struct BerryCrushGame *, u8 *); +static u32 Cmd_ShowGameDisplay(struct BerryCrushGame *, u8 *); +static u32 Cmd_HideGameDisplay(struct BerryCrushGame *, u8 *); +static u32 Cmd_SignalReadyToBegin(struct BerryCrushGame *, u8 *); +static u32 Cmd_AskPickBerry(struct BerryCrushGame *, u8 *); +static u32 Cmd_GoToBerryPouch(struct BerryCrushGame *, u8 *); +static u32 Cmd_WaitForOthersToPickBerries(struct BerryCrushGame *, u8 *); +static u32 Cmd_DropBerriesIntoCrusher(struct BerryCrushGame *, u8 *); +static u32 Cmd_DropLid(struct BerryCrushGame *, u8 *); +static u32 Cmd_Countdown(struct BerryCrushGame *, u8 *); +static u32 Cmd_PlayGame_Leader(struct BerryCrushGame *, u8 *); +static u32 Cmd_PlayGame_Member(struct BerryCrushGame *, u8 *); +static u32 Cmd_FinishGame(struct BerryCrushGame *, u8 *); +static u32 Cmd_HandleTimeUp(struct BerryCrushGame *, u8 *); +static u32 Cmd_TabulateResults(struct BerryCrushGame *, u8 *); +static u32 Cmd_ShowResults(struct BerryCrushGame *, u8 *); +static u32 Cmd_SaveGame(struct BerryCrushGame *, u8 *); +static u32 Cmd_AskPlayAgain(struct BerryCrushGame *, u8 *); +static u32 Cmd_CommunicatePlayAgainResponses(struct BerryCrushGame *, u8 *); +static u32 Cmd_PlayAgain(struct BerryCrushGame *, u8 *); +static u32 Cmd_StopGame(struct BerryCrushGame *, u8 *); +static u32 Cmd_CloseLink(struct BerryCrushGame *, u8 *); +static u32 Cmd_Quit(struct BerryCrushGame *, u8 *); + +static EWRAM_DATA struct BerryCrushGame *sGame = NULL; + +static const u8 sBitTable[] = { + 1 << 0, + 1 << 1, + 1 << 2, + 1 << 3, + 1 << 4, + 1 << 5, + 1 << 6, + 1 << 7 +}; +// Additional A presses are counted depending on the number of players +// The bonus of 5 is unobtainable +static const u8 sSyncPressBonus[MAX_RFU_PLAYERS] = { 0, 1, 2, 3, 5 }; +ALIGNED(4) +static const s8 sIntroOutroVibrationData[][7] = { { 4, 1, 0, -1, 0, 0, 0}, { 4, 2, 0, -1, 0, 0, 0}, @@ -244,9 +392,8 @@ static const s8 gUnknown_082F326C[][7] = { 6, 4, 1, -2, -4, -2, 0}, }; -static const u8 sUnusedZero = 0; - -static const u8 gUnknown_082F3290[][4] = +ALIGNED(4) +static const u8 sVibrationData[MAX_RFU_PLAYERS][4] = { {3, 2, 1, 0}, {3, 3, 1, 0}, @@ -255,20 +402,20 @@ static const u8 gUnknown_082F3290[][4] = {3, 5, 3, 0}, }; -static const u8 *const sBerryCrushMessages[] = -{ - gText_ReadyToBerryCrush, - gText_WaitForAllChooseBerry, - gText_EndedWithXUnitsPowder, - gText_RecordingGameResults, - gText_PlayBerryCrushAgain, - gText_YouHaveNoBerries, - gText_MemberDroppedOut, - gText_TimesUpNoGoodPowder, - gText_CommunicationStandby2, +static const u8 *const sMessages[] = +{ + [MSG_PICK_BERRY] = gText_ReadyPickBerry, + [MSG_WAIT_PICK] = gText_WaitForAllChooseBerry, + [MSG_POWDER] = gText_EndedWithXUnitsPowder, + [MSG_SAVING] = gText_RecordingGameResults, + [MSG_PLAY_AGAIN] = gText_PlayBerryCrushAgain, + [MSG_NO_BERRIES] = gText_YouHaveNoBerries, + [MSG_DROPPED] = gText_MemberDroppedOut, + [MSG_TIMES_UP] = gText_TimesUpNoGoodPowder, + [MSG_COMM_STANDBY] = gText_CommunicationStandby2, }; -static const struct BgTemplate gUnknown_082F32C8[4] = +static const struct BgTemplate sBgTemplates[4] = { { .bg = 0, @@ -308,19 +455,18 @@ static const struct BgTemplate gUnknown_082F32C8[4] = }, }; - -static const u8 sBerryCrushTextColorTable[][3] = +static const u8 sTextColorTable[][3] = { - {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GREY, TEXT_COLOR_RED}, - {TEXT_COLOR_WHITE, TEXT_COLOR_BLUE, TEXT_COLOR_LIGHT_BLUE}, - {TEXT_COLOR_WHITE, TEXT_COLOR_GREEN, TEXT_COLOR_LIGHT_GREEN}, - {TEXT_COLOR_WHITE, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}, + [COLORID_GREY] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, + [COLORID_BLACK] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, + [COLORID_LIGHT_GREY] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GREY, TEXT_COLOR_RED}, + [COLORID_BLUE] = {TEXT_COLOR_WHITE, TEXT_COLOR_BLUE, TEXT_COLOR_LIGHT_BLUE}, + [COLORID_GREEN] = {TEXT_COLOR_WHITE, TEXT_COLOR_GREEN, TEXT_COLOR_LIGHT_GREEN}, + [COLORID_RED] = {TEXT_COLOR_WHITE, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}, }; -static const struct WindowTemplate sWindowTemplate_BerryCrushRankings = +static const struct WindowTemplate sWindowTemplate_Rankings = { .bg = 0, .tilemapLeft = 3, @@ -331,7 +477,7 @@ static const struct WindowTemplate sWindowTemplate_BerryCrushRankings = .baseBlock = 1 }; -static const struct WindowTemplate gUnknown_082F32F4[] = +static const struct WindowTemplate sWindowTemplates_PlayerNames[MAX_RFU_PLAYERS + 1] = { { .bg = 0, @@ -381,9 +527,9 @@ static const struct WindowTemplate gUnknown_082F32F4[] = DUMMY_WIN_TEMPLATE, }; -static const struct WindowTemplate gUnknown_082F3324[] = +static const struct WindowTemplate sWindowTemplates_Results[] = { - { + [STATE_RESULTS_PRESSES - RESULTS_STATE_START] = { .bg = 0, .tilemapLeft = 5, .tilemapTop = 2, @@ -392,7 +538,7 @@ static const struct WindowTemplate gUnknown_082F3324[] = .paletteNum = 15, .baseBlock = 1 }, - { + [STATE_RESULTS_RANDOM - RESULTS_STATE_START] = { .bg = 0, .tilemapLeft = 5, .tilemapTop = 2, @@ -401,7 +547,7 @@ static const struct WindowTemplate gUnknown_082F3324[] = .paletteNum = 15, .baseBlock = 1 }, - { + [STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = { .bg = 0, .tilemapLeft = 4, .tilemapTop = 2, @@ -413,16 +559,16 @@ static const struct WindowTemplate gUnknown_082F3324[] = DUMMY_WIN_TEMPLATE, }; -static const u8 gUnknown_082F3344[][4] = +// The height of the results window depending on the number of players +// 2 players, 3 players, 4 players, or 5 players +static const u8 sResultsWindowHeights[][MAX_RFU_PLAYERS - 1] = { - {6, 8, 9, 11}, - {12, 14, 15, 16}, + {6, 8, 9, 11}, // "Presses" and "Neatness/Cooperative/Power" pages + {12, 14, 15, 16}, // "Crushing" page }; static const u32 sPressingSpeedConversionTable[] = { - // Decimal point is vertically aligned with the pixel - // directly between the >< below. 50000000, // 50 25000000, // 25 12500000, // 12.5 @@ -433,83 +579,85 @@ static const u32 sPressingSpeedConversionTable[] = 390625 // 0.390625 }; -static const u16 gBerryCrushGrinderBasePal[] = INCBIN_U16("graphics/link_games/berrycrush_grinder_base.gbapal"); -static const u16 gBerryCrushMiscSpritesPal[] = INCBIN_U16("graphics/link_games/berrycrush_misc.gbapal"); -static const u16 gBerryCrushTimerDigitsPal[] = INCBIN_U16("graphics/link_games/berrycrush_timerdigits.gbapal"); -static const u32 gBerryCrushGrinderBaseGfx[] = INCBIN_U32("graphics/link_games/berrycrush_grinder_base.4bpp.lz"); -static const u32 gBerryCrushBtnPressGfx[] = INCBIN_U32("graphics/link_games/berrycrush_btnpress.4bpp.lz"); -static const u32 gBerryCrushSparkleGfx[] = INCBIN_U32("graphics/link_games/berrycrush_sparkle.4bpp.lz"); -static const u8 gBerryCrushTimerDigitsGfx[] = INCBIN_U8("graphics/link_games/berrycrush_timerdigits.4bpp.lz"); -static const u8 gBerryCrushGrinderTopTilemap[] = INCBIN_U8("graphics/link_games/berrycrush_grinder_top.bin.lz"); -static const u8 gBerryCrushContainerCapTilemap[] = INCBIN_U8("graphics/link_games/berrycrush_container_cap.bin.lz"); -static const u8 gBerryCrushBackgroundTilemap[] = INCBIN_U8("graphics/link_games/berrycrush_background.bin.lz"); - -static const u8 gUnknown_082F417C[][5] = -{ - {1, 3, 0, 0, 0}, - {0, 1, 3, 0, 0}, - {1, 3, 2, 4, 0}, +static const u16 sCrusherBase_Pal[] = INCBIN_U16("graphics/berry_crush/crusher_base.gbapal"); +static const u16 sEffects_Pal[] = INCBIN_U16("graphics/berry_crush/effects.gbapal"); +static const u16 sTimerDigits_Pal[] = INCBIN_U16("graphics/berry_crush/timer_digits.gbapal"); +static const u32 sCrusherBase_Gfx[] = INCBIN_U32("graphics/berry_crush/crusher_base.4bpp.lz"); +static const u32 sImpact_Gfx[] = INCBIN_U32("graphics/berry_crush/impact.4bpp.lz"); +static const u32 sSparkle_Gfx[] = INCBIN_U32("graphics/berry_crush/sparkle.4bpp.lz"); +static const u32 sTimerDigits_Gfx[] = INCBIN_U32("graphics/berry_crush/timer_digits.4bpp.lz"); +static const u8 sCrusherTop_Tilemap[] = INCBIN_U8("graphics/berry_crush/crusher_top.bin.lz"); +static const u8 sContainerCap_Tilemap[] = INCBIN_U8("graphics/berry_crush/container_cap.bin.lz"); +static const u8 sBg_Tilemap[] = INCBIN_U8("graphics/berry_crush/bg.bin.lz"); + +// Takes the number of players - 2 and a player id and returns the +// index into sPlayerCoords where that player should be seated +static const u8 sPlayerIdToPosId[MAX_RFU_PLAYERS - 1][MAX_RFU_PLAYERS] = +{ + {1, 3}, + {0, 1, 3}, + {1, 3, 2, 4}, {0, 1, 3, 2, 4}, }; -static const struct BerryCrushPlayerSeatCoords gUnknown_082F4190[] = +static const struct BerryCrushPlayerCoords sPlayerCoords[MAX_RFU_PLAYERS] = { { - .unk0 = 0, - .unk1 = 0, - .unk2 = 0, - .unk4 = 0, - .unk6 = -16, - .unk8 = 0, - .unkA = 0, + .playerId = 0, + .windowGfxX = 0, + .windowGfxY = 0, + .impactXOffset = 0, + .impactYOffset = -16, + .berryXOffset = 0, + .berryXDest = 0, }, { - .unk0 = 1, - .unk1 = 0, - .unk2 = 3, - .unk4 = -28, - .unk6 = -4, - .unk8 = -24, - .unkA = 16, + .playerId = 1, + .windowGfxX = 0, + .windowGfxY = 3, + .impactXOffset = -28, + .impactYOffset = -4, + .berryXOffset = -24, + .berryXDest = 16, }, { - .unk0 = 2, - .unk1 = 0, - .unk2 = 6, - .unk4 = -16, - .unk6 = 20, - .unk8 = -8, - .unkA = 16, + .playerId = 2, + .windowGfxX = 0, + .windowGfxY = 6, + .impactXOffset = -16, + .impactYOffset = 20, + .berryXOffset = -8, + .berryXDest = 16, }, { - .unk0 = 3, - .unk1 = 20, - .unk2 = 3, - .unk4 = 28, - .unk6 = -4, - .unk8 = 32, - .unkA = -8, + .playerId = 3, + .windowGfxX = 20, + .windowGfxY = 3, + .impactXOffset = 28, + .impactYOffset = -4, + .berryXOffset = 32, + .berryXDest = -8, }, { - .unk0 = 4, - .unk1 = 20, - .unk2 = 6, - .unk4 = 16, - .unk6 = 20, - .unk8 = 16, - .unkA = -8, + .playerId = 4, + .windowGfxX = 20, + .windowGfxY = 6, + .impactXOffset = 16, + .impactYOffset = 20, + .berryXOffset = 16, + .berryXDest = -8, } }; -static const s8 gUnknown_082F41CC[][2] = +static const s8 sImpactCoords[][2] = { { 0, 0}, {-1, 0}, { 1, 1}, }; -static const s8 gUnknown_082F41D2[][2] = +static const s8 sSparkleCoords[][2] = { { 0, 0}, {-16, -4}, @@ -524,37 +672,42 @@ static const s8 gUnknown_082F41D2[][2] = { 40, -16}, }; -static const u16 sPlayerBerrySpriteTags[] = {5, 6, 7, 8, 9, 0}; - -static const struct CompressedSpriteSheet gUnknown_082F41F4[] = +static const u16 sPlayerBerrySpriteTags[MAX_RFU_PLAYERS] = { - { .data = gBerryCrushGrinderBaseGfx, .size = 0x800, .tag = 1 }, - { .data = gBerryCrushBtnPressGfx, .size = 0xE00, .tag = 2 }, - { .data = gBerryCrushSparkleGfx, .size = 0x700, .tag = 3 }, + TAG_PLAYER1_BERRY, + TAG_PLAYER2_BERRY, + TAG_PLAYER3_BERRY, + TAG_PLAYER4_BERRY, + TAG_PLAYER5_BERRY }; -static const struct SpriteSheet gUnknown_082F420C[] = +// sTimerDigits_Gfx is part of this array but is (apparently) uncompressed +// It gets cast to raw uncompressed data when used in sDigitObjTemplates +static const struct CompressedSpriteSheet sSpriteSheets[] = { - { .data = gBerryCrushTimerDigitsGfx, .size = 0x2C0, .tag = 4 }, + { .data = sCrusherBase_Gfx, .size = 0x800, .tag = TAG_CRUSHER_BASE }, + { .data = sImpact_Gfx, .size = 0xE00, .tag = GFXTAG_IMPACT }, + { .data = sSparkle_Gfx, .size = 0x700, .tag = GFXTAG_SPARKLE }, + { .data = sTimerDigits_Gfx, .size = 0x2C0, .tag = TAG_TIMER_DIGITS }, {} }; static const struct SpritePalette sSpritePals[] = { - { .data = gBerryCrushGrinderBasePal, .tag = 1 }, - { .data = gBerryCrushMiscSpritesPal, .tag = 2 }, - { .data = gBerryCrushTimerDigitsPal, .tag = 4 }, + { .data = sCrusherBase_Pal, .tag = TAG_CRUSHER_BASE }, + { .data = sEffects_Pal, .tag = PALTAG_EFFECT }, // For the impact and sparkle effects + { .data = sTimerDigits_Pal, .tag = TAG_TIMER_DIGITS }, {} }; -static const union AnimCmd gUnknown_082F423C[] = +static const union AnimCmd sAnim_CrusherBase[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AnimCmd gUnknown_082F4244[] = +static const union AnimCmd sAnim_Impact_Small[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(16, 4), @@ -562,7 +715,7 @@ static const union AnimCmd gUnknown_082F4244[] = ANIMCMD_END }; -static const union AnimCmd gUnknown_082F4254[] = +static const union AnimCmd sAnim_Impact_Big[] = { ANIMCMD_FRAME(48, 2), ANIMCMD_FRAME(64, 2), @@ -571,7 +724,7 @@ static const union AnimCmd gUnknown_082F4254[] = ANIMCMD_END }; -static const union AnimCmd gUnknown_082F4268[] = +static const union AnimCmd sAnim_Sparkle_Small[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(4, 2), @@ -582,7 +735,7 @@ static const union AnimCmd gUnknown_082F4268[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd gUnknown_082F4284[] = +static const union AnimCmd sAnim_Sparkle_Big[] = { ANIMCMD_FRAME(24, 4), ANIMCMD_FRAME(28, 4), @@ -595,105 +748,105 @@ static const union AnimCmd gUnknown_082F4284[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd gUnknown_082F42A8[] = +static const union AnimCmd sAnim_Timer[] = { ANIMCMD_FRAME(20, 0), ANIMCMD_END }; -static const union AnimCmd gUnknown_082F42B0[] = +static const union AnimCmd sAnim_PlayerBerry[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AffineAnimCmd gUnknown_082F42B8[] = +static const union AffineAnimCmd sAffineAnim_PlayerBerry_0[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 2, 1), AFFINEANIMCMD_JUMP(1) }; -static const union AffineAnimCmd gUnknown_082F42D0[] = +static const union AffineAnimCmd sAffineAnim_PlayerBerry_1[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(0, 0, -2, 1), AFFINEANIMCMD_JUMP(1) }; -static const union AnimCmd *const sAnimTable_BerryCrushCore[] = +static const union AnimCmd *const sAnims_CrusherBase[] = { - gUnknown_082F423C + sAnim_CrusherBase }; -static const union AnimCmd *const sAnimTable_BerryCrushImpact[] = +static const union AnimCmd *const sAnims_Impact[] = { - gUnknown_082F4244, - gUnknown_082F4254, + sAnim_Impact_Small, + sAnim_Impact_Big, }; -static const union AnimCmd *const sAnimTable_BerryCrushPowderSparkles[] = +static const union AnimCmd *const sAnims_Sparkle[] = { - gUnknown_082F4268, - gUnknown_082F4284, + sAnim_Sparkle_Small, + sAnim_Sparkle_Big, }; -static const union AnimCmd *const sAnimTable_BerryCrushTimer[] = +static const union AnimCmd *const sAnims_Timer[] = { - gUnknown_082F42A8 + sAnim_Timer }; -static const union AnimCmd *const gUnknown_082F4300[] = +static const union AnimCmd *const sAnims_PlayerBerry[] = { - gUnknown_082F42B0 + sAnim_PlayerBerry }; -static const union AffineAnimCmd *const gUnknown_082F4304[] = +static const union AffineAnimCmd *const sAffineAnims_PlayerBerry[] = { - gUnknown_082F42B8, - gUnknown_082F42D0, + sAffineAnim_PlayerBerry_0, + sAffineAnim_PlayerBerry_1, }; -static const struct SpriteTemplate sSpriteTemplate_BerryCrushCore = +static const struct SpriteTemplate sSpriteTemplate_CrusherBase = { - .tileTag = 1, - .paletteTag = 1, + .tileTag = TAG_CRUSHER_BASE, + .paletteTag = TAG_CRUSHER_BASE, .oam = &gOamData_AffineOff_ObjNormal_64x64, - .anims = sAnimTable_BerryCrushCore, + .anims = sAnims_CrusherBase, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const struct SpriteTemplate sSpriteTemplate_BerryCrushImpact = +static const struct SpriteTemplate sSpriteTemplate_Impact = { - .tileTag = 2, - .paletteTag = 2, + .tileTag = GFXTAG_IMPACT, + .paletteTag = PALTAG_EFFECT, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnimTable_BerryCrushImpact, + .anims = sAnims_Impact, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_BerryCrushImpact + .callback = SpriteCB_Impact }; -static const struct SpriteTemplate sSpriteTemplate_BerryCrushPowderSparkles = +static const struct SpriteTemplate sSpriteTemplate_Sparkle = { - .tileTag = 3, - .paletteTag = 2, + .tileTag = GFXTAG_SPARKLE, + .paletteTag = PALTAG_EFFECT, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sAnimTable_BerryCrushPowderSparkles, + .anims = sAnims_Sparkle, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const struct SpriteTemplate sSpriteTemplate_BerryCrushTimer = +static const struct SpriteTemplate sSpriteTemplate_Timer = { - .tileTag = 4, - .paletteTag = 4, + .tileTag = TAG_TIMER_DIGITS, + .paletteTag = TAG_TIMER_DIGITS, .oam = &gOamData_AffineOff_ObjNormal_8x16, - .anims = sAnimTable_BerryCrushTimer, + .anims = sAnims_Timer, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy @@ -701,18 +854,18 @@ static const struct SpriteTemplate sSpriteTemplate_BerryCrushTimer = static const struct SpriteTemplate sSpriteTemplate_PlayerBerry = { - .tileTag = 5, - .paletteTag = 5, + .tileTag = TAG_PLAYER1_BERRY, + .paletteTag = TAG_PLAYER1_BERRY, .oam = &gOamData_AffineDouble_ObjNormal_32x32, - .anims = gUnknown_082F4300, + .anims = sAnims_PlayerBerry, .images = NULL, - .affineAnims = gUnknown_082F4304, + .affineAnims = sAffineAnims_PlayerBerry, .callback = SpriteCallbackDummy }; static const struct DigitObjUtilTemplate sDigitObjTemplates[] = { - { + { // Minutes .strConvMode = 1, .shape = 2, .size = 0, @@ -721,10 +874,10 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 156, .y = 0, - .spriteSheet = gUnknown_082F420C, + .spriteSheet = (void*) &sSpriteSheets[3], .spritePal = &sSpritePals[2], }, - { + { // Seconds .strConvMode = 0, .shape = 2, .size = 0, @@ -733,10 +886,10 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 180, .y = 0, - .spriteSheet = gUnknown_082F420C, + .spriteSheet = (void*) &sSpriteSheets[3], .spritePal = &sSpritePals[2], }, - { + { // 1/60ths of a second .strConvMode = 0, .shape = 2, .size = 0, @@ -745,79 +898,83 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 204, .y = 0, - .spriteSheet = gUnknown_082F420C, + .spriteSheet = (void*) &sSpriteSheets[3], .spritePal = &sSpritePals[2], } }; -static const u8 *const sBCRankingHeaders[] = +static const u8 *const sResultsTexts[] = { - gText_SpaceTimes2, - gText_XDotY, - gText_Var1Berry, - gText_NeatnessRankings, - gText_CoopRankings, - gText_PressingPowerRankings, + [RESULTS_PAGE_PRESSES] = gText_SpaceTimes2, // " times" + [RESULTS_PAGE_RANDOM] = gText_XDotY, // "##.##", for Neatness, Cooperation, or Power value + [RESULTS_PAGE_CRUSHING] = gText_Var1Berry, + + [RESULTS_PAGE_NEATNESS + NUM_RESULTS_PAGES] = gText_NeatnessRankings, + [RESULTS_PAGE_COOPERATIVE + NUM_RESULTS_PAGES] = gText_CoopRankings, + [RESULTS_PAGE_POWER + NUM_RESULTS_PAGES] = gText_PressingPowerRankings, }; -static u32 (*const sBerryCrushCommands[])(struct BerryCrushGame *, u8 *) = -{ - NULL, - BerryCrushCommand_BeginNormalPaletteFade, - BerryCrushCommand_WaitPaletteFade, - BerryCrushCommand_PrintMessage, - BerryCrushCommand_InitGfx, - BerryCrushCommand_TeardownGfx, - BerryCrushCommand_SignalReadyToBegin, - BerryCrushCommand_AskPickBerry, - BerryCrushCommand_GoToBerryPouch, - BerryCrushCommand_WaitForOthersToPickBerries, - BerryCrushCommand_DropBerriesIntoCrusher, - BerryCrushCommand_DropLid, - BerryCrushCommand_Countdown, - BerryCrushCommand_PlayGame_Master, - BerryCrushCommand_PlayGame_Slave, - BerryCrushCommand_FinishGame, - BerryCrushCommand_HandleTimeUp, - BerryCrushCommand_TabulateResults, - BerryCrushCommand_ShowResults, - BerryCrushCommand_SaveGame, - BerryCrushCommand_AskPlayAgain, - BerryCrushCommand_CommunicatePlayAgainResponses, - BerryCrushCommand_FadeOutToPlayAgain, - BerryCrushCommand_PlayAgainFailureMessage, - BerryCrushCommand_GracefulExit, - BerryCrushCommand_Quit, +static u32 (*const sBerryCrushCommands[])(struct BerryCrushGame * game, u8 * data) = +{ + [CMD_NONE] = NULL, + [CMD_FADE] = Cmd_BeginNormalPaletteFade, + [CMD_WAIT_FADE] = Cmd_WaitPaletteFade, + [CMD_PRINT_MSG] = Cmd_PrintMessage, + [CMD_SHOW_GAME] = Cmd_ShowGameDisplay, + [CMD_HIDE_GAME] = Cmd_HideGameDisplay, + [CMD_READY_BEGIN] = Cmd_SignalReadyToBegin, + [CMD_ASK_PICK_BERRY] = Cmd_AskPickBerry, + [CMD_PICK_BERRY] = Cmd_GoToBerryPouch, + [CMD_WAIT_BERRIES] = Cmd_WaitForOthersToPickBerries, + [CMD_DROP_BERRIES] = Cmd_DropBerriesIntoCrusher, + [CMD_DROP_LID] = Cmd_DropLid, + [CMD_COUNTDOWN] = Cmd_Countdown, + [CMD_PLAY_GAME_LEADER] = Cmd_PlayGame_Leader, + [CMD_PLAY_GAME_MEMBER] = Cmd_PlayGame_Member, + [CMD_FINISH_GAME] = Cmd_FinishGame, + [CMD_TIMES_UP] = Cmd_HandleTimeUp, + [CMD_CALC_RESULTS] = Cmd_TabulateResults, + [CMD_SHOW_RESULTS] = Cmd_ShowResults, + [CMD_SAVE] = Cmd_SaveGame, + [CMD_ASK_PLAY_AGAIN] = Cmd_AskPlayAgain, + [CMD_COMM_PLAY_AGAIN] = Cmd_CommunicatePlayAgainResponses, + [CMD_PLAY_AGAIN_YES] = Cmd_PlayAgain, + [CMD_PLAY_AGAIN_NO] = Cmd_StopGame, + [CMD_CLOSE_LINK] = Cmd_CloseLink, + [CMD_QUIT] = Cmd_Quit, }; -static const u8 gUnknown_082F4434[][4] = +// Per group size, the number of A presses required to increase the number of sparkles. +static const u8 sSparkleThresholds[MAX_RFU_PLAYERS - 1][4] = { - {2, 4, 6, 7}, - {3, 5, 8, 11}, - {3, 7, 11, 15}, - {4, 8, 12, 17}, + {2, 4, 6, 7}, // 2 players + {3, 5, 8, 11}, // 3 players + {3, 7, 11, 15}, // 4 players + {4, 8, 12, 17}, // 5 players }; -static const u8 gUnknown_082F4444[] = {5, 7, 9, 12}; +// Per group size, the number of A presses required to get big sparkles +static const u8 sBigSparkleThresholds[MAX_RFU_PLAYERS - 1] = {5, 7, 9, 12}; + static const u8 sReceivedPlayerBitmasks[] = {0x03, 0x07, 0x0F, 0x1F}; -struct BerryCrushGame * GetBerryCrushGame(void) +static struct BerryCrushGame * GetBerryCrushGame(void) { - return sBerryCrushGamePtr; + return sGame; } -u32 QuitBerryCrush(MainCallback callback) +static u32 QuitBerryCrush(MainCallback exitCallback) { - if (!sBerryCrushGamePtr) + if (!sGame) return 2; - if (!callback) - callback = sBerryCrushGamePtr->savedCallback; + if (!exitCallback) + exitCallback = sGame->exitCallback; - DestroyTask(sBerryCrushGamePtr->mainTask); - FREE_AND_SET_NULL(sBerryCrushGamePtr); - SetMainCallback2(callback); - if (callback == CB2_ReturnToField) + DestroyTask(sGame->taskId); + FREE_AND_SET_NULL(sGame); + SetMainCallback2(exitCallback); + if (exitCallback == CB2_ReturnToField) { gTextFlags.autoScroll = TRUE; PlayNewMapMusic(MUS_POKE_CENTER); @@ -827,17 +984,23 @@ u32 QuitBerryCrush(MainCallback callback) return 0; } -void StartBerryCrush(MainCallback callback) +#define ERROR_EXIT(exitCallback) \ + { \ + SetMainCallback2(exitCallback); \ + Rfu.unk_10 = 0; \ + Rfu.unk_12 = 0; \ + Rfu.errorState = 1; \ + } + +void StartBerryCrush(MainCallback exitCallback) { u8 playerCount = 0; u8 multiplayerId; if (!gReceivedRemoteLinkPlayers || gWirelessCommType == 0) { - SetMainCallback2(callback); - Rfu.unk_10 = 0; - Rfu.unk_12 = 0; - Rfu.errorState = 1; + // Link disconnected + ERROR_EXIT(exitCallback); return; } @@ -845,35 +1008,31 @@ void StartBerryCrush(MainCallback callback) multiplayerId = GetMultiplayerId(); if (playerCount < 2 || multiplayerId >= playerCount) { - SetMainCallback2(callback); - Rfu.unk_10 = 0; - Rfu.unk_12 = 0; - Rfu.errorState = 1; + // Too few players, or invalid id + ERROR_EXIT(exitCallback); return; } - sBerryCrushGamePtr = AllocZeroed(sizeof(struct BerryCrushGame)); - if (!sBerryCrushGamePtr) + sGame = AllocZeroed(sizeof(*sGame)); + if (!sGame) { - SetMainCallback2(callback); - Rfu.unk_10 = 0; - Rfu.unk_12 = 0; - Rfu.errorState = 1; + // Alloc failed + ERROR_EXIT(exitCallback); return; } - sBerryCrushGamePtr->savedCallback = callback; - sBerryCrushGamePtr->localId = multiplayerId; - sBerryCrushGamePtr->playerCount = playerCount; - ParseName_Options(sBerryCrushGamePtr); - sBerryCrushGamePtr->gameState = 1; - sBerryCrushGamePtr->nextCmd = 1; - sBerryCrushGamePtr->afterPalFadeCmd = 6; - BerryCrush_SetPaletteFadeParams(sBerryCrushGamePtr->commandParams, 1, -1, 0, 16, 0, 0); - BerryCrush_RunOrScheduleCommand(4, 1, sBerryCrushGamePtr->commandParams); + sGame->exitCallback = exitCallback; + sGame->localId = multiplayerId; + sGame->playerCount = playerCount; + SetNamesAndTextSpeed(sGame); + sGame->gameState = STATE_INIT; + sGame->nextCmd = CMD_FADE; + sGame->afterPalFadeCmd = CMD_READY_BEGIN; + SetPaletteFadeArgs(sGame->commandArgs, TRUE, PALETTES_ALL, 0, 16, 0, RGB_BLACK); + RunOrScheduleCommand(CMD_SHOW_GAME, 1, sGame->commandArgs); SetMainCallback2(MainCB); - sBerryCrushGamePtr->mainTask = CreateTask(MainTask, 8); - gTextFlags.autoScroll = 0; + sGame->taskId = CreateTask(MainTask, 8); + gTextFlags.autoScroll = FALSE; } static void GetBerryFromBag(void) @@ -883,18 +1042,18 @@ static void GetBerryFromBag(void) else RemoveBagItem(gSpecialVar_ItemId, 1); - sBerryCrushGamePtr->unk98[sBerryCrushGamePtr->localId].unkC = gSpecialVar_ItemId - FIRST_BERRY_INDEX; - sBerryCrushGamePtr->nextCmd = 1; - sBerryCrushGamePtr->afterPalFadeCmd = 9; - BerryCrush_SetPaletteFadeParams(sBerryCrushGamePtr->commandParams, 0, -1, 0, 16, 0, 0); - BerryCrush_RunOrScheduleCommand(4, 1, sBerryCrushGamePtr->commandParams); - sBerryCrushGamePtr->mainTask = CreateTask(MainTask, 8); + sGame->players[sGame->localId].berryId = gSpecialVar_ItemId - FIRST_BERRY_INDEX; + sGame->nextCmd = CMD_FADE; + sGame->afterPalFadeCmd = CMD_WAIT_BERRIES; + SetPaletteFadeArgs(sGame->commandArgs, FALSE, PALETTES_ALL, 0, 16, 0, RGB_BLACK); + RunOrScheduleCommand(CMD_SHOW_GAME, 1, sGame->commandArgs); + sGame->taskId = CreateTask(MainTask, 8); SetMainCallback2(MainCB); } -static void BerryCrush_SetupMainTask(void) +static void ChooseBerry(void) { - DestroyTask(sBerryCrushGamePtr->mainTask); + DestroyTask(sGame->taskId); ChooseBerryForMachine(GetBerryFromBag); } @@ -908,54 +1067,60 @@ static void BerryCrush_InitVBlankCB(void) SetVBlankCallback(NULL); } -static void BerryCrush_SaveResults(void) +static void SaveResults(void) { - u32 var0, var1; + u32 time, presses; + + // Calculate pressing speed ((time / 60) / presses) + time = sGame->results.time; + time = Q_24_8(time); + time = MathUtil_Div32(time, Q_24_8(60)); + presses = sGame->results.totalAPresses; + presses = Q_24_8(presses); + presses = MathUtil_Div32(presses, time) & 0xFFFF; + sGame->pressingSpeed = presses; - var0 = sBerryCrushGamePtr->unk68.unk04; - var0 = Q_24_8(var0); - var0 = MathUtil_Div32(var0, Q_24_8(60)); - var1 = sBerryCrushGamePtr->unk68.unk0A; - var1 = Q_24_8(var1); - var1 = MathUtil_Div32(var1, var0) & 0xFFFF; - sBerryCrushGamePtr->pressingSpeed = var1; - switch (sBerryCrushGamePtr->playerCount) + switch (sGame->playerCount) { case 2: - if (sBerryCrushGamePtr->pressingSpeed > gSaveBlock2Ptr->berryCrush.berryCrushResults[0]) + if (sGame->pressingSpeed > gSaveBlock2Ptr->berryCrush.pressingSpeeds[0]) { - sBerryCrushGamePtr->unk25_1 = 1; - gSaveBlock2Ptr->berryCrush.berryCrushResults[0] = sBerryCrushGamePtr->pressingSpeed; + // New 2-player record + sGame->newRecord = TRUE; + gSaveBlock2Ptr->berryCrush.pressingSpeeds[0] = sGame->pressingSpeed; } break; case 3: - if (sBerryCrushGamePtr->pressingSpeed > gSaveBlock2Ptr->berryCrush.berryCrushResults[1]) + if (sGame->pressingSpeed > gSaveBlock2Ptr->berryCrush.pressingSpeeds[1]) { - sBerryCrushGamePtr->unk25_1 = 1; - gSaveBlock2Ptr->berryCrush.berryCrushResults[1] = sBerryCrushGamePtr->pressingSpeed; + // New 3-player record + sGame->newRecord = TRUE; + gSaveBlock2Ptr->berryCrush.pressingSpeeds[1] = sGame->pressingSpeed; } break; case 4: - if (sBerryCrushGamePtr->pressingSpeed > gSaveBlock2Ptr->berryCrush.berryCrushResults[2]) + if (sGame->pressingSpeed > gSaveBlock2Ptr->berryCrush.pressingSpeeds[2]) { - sBerryCrushGamePtr->unk25_1 = 1; - gSaveBlock2Ptr->berryCrush.berryCrushResults[2] = sBerryCrushGamePtr->pressingSpeed; + // New 4-player record + sGame->newRecord = TRUE; + gSaveBlock2Ptr->berryCrush.pressingSpeeds[2] = sGame->pressingSpeed; } break; case 5: - if (sBerryCrushGamePtr->pressingSpeed > gSaveBlock2Ptr->berryCrush.berryCrushResults[3]) + if (sGame->pressingSpeed > gSaveBlock2Ptr->berryCrush.pressingSpeeds[3]) { - sBerryCrushGamePtr->unk25_1 = 1; - gSaveBlock2Ptr->berryCrush.berryCrushResults[3] = sBerryCrushGamePtr->pressingSpeed; + // New 5-player record + sGame->newRecord = TRUE; + gSaveBlock2Ptr->berryCrush.pressingSpeeds[3] = sGame->pressingSpeed; } break; } - sBerryCrushGamePtr->powder = sBerryCrushGamePtr->unk68.unk00; - if (GiveBerryPowder(sBerryCrushGamePtr->powder)) + sGame->powder = sGame->results.powder; + if (GiveBerryPowder(sGame->powder)) return; - sBerryCrushGamePtr->unk25_0 = 1; + sGame->noRoomForPowder = TRUE; } static void VBlankCB(void) @@ -975,40 +1140,38 @@ static void MainCB(void) static void MainTask(u8 taskId) { - if (sBerryCrushGamePtr->cmdCallback) - sBerryCrushGamePtr->cmdCallback(sBerryCrushGamePtr, sBerryCrushGamePtr->commandParams); + if (sGame->cmdCallback) + sGame->cmdCallback(sGame, sGame->commandArgs); - sub_8021450(sBerryCrushGamePtr); + UpdateGame(sGame); } -static void ParseName_Options(struct BerryCrushGame *arg0) +static void SetNamesAndTextSpeed(struct BerryCrushGame *game) { - u8 i = 0; - - for (; i < arg0->playerCount; i++) - StringCopy(arg0->unk98[i].unk0, gLinkPlayers[i].name); - for (; i < 5; i++) + u8 i; + for (i = 0; i < game->playerCount; i++) + StringCopy(game->players[i].name, gLinkPlayers[i].name); + for (; i < MAX_RFU_PLAYERS; i++) { - memset(arg0->unk98[i].unk0, 1, PLAYER_NAME_LENGTH); - arg0->unk98[i].unk0[PLAYER_NAME_LENGTH] = EOS; + memset(game->players[i].name, 1, PLAYER_NAME_LENGTH); + game->players[i].name[PLAYER_NAME_LENGTH] = EOS; } switch (gSaveBlock2Ptr->optionsTextSpeed) { case OPTIONS_TEXT_SPEED_SLOW: - arg0->textSpeed = 8; + game->textSpeed = 8; break; case OPTIONS_TEXT_SPEED_MID: - arg0->textSpeed = 4; + game->textSpeed = 4; break; case OPTIONS_TEXT_SPEED_FAST: - arg0->textSpeed = 1; + game->textSpeed = 1; break; } } -// TODO: Everything from here on is likely in separate files. -s32 InitBerryCrushDisplay(void) +static s32 ShowGameDisplay(void) { struct BerryCrushGame *game = GetBerryCrushGame(); if (!game) @@ -1035,10 +1198,10 @@ s32 InitBerryCrushDisplay(void) break; case 3: ResetBgsAndClearDma3BusyFlags(0); - InitBgsFromTemplates(0, gUnknown_082F32C8, ARRAY_COUNT(gUnknown_082F32C8)); - SetBgTilemapBuffer(1, game->unk138.bgBuffers[0]); - SetBgTilemapBuffer(2, game->unk138.bgBuffers[2]); - SetBgTilemapBuffer(3, game->unk138.bgBuffers[3]); + InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); + SetBgTilemapBuffer(1, game->gfx.bgBuffers[0]); + SetBgTilemapBuffer(2, game->gfx.bgBuffers[2]); + SetBgTilemapBuffer(3, game->gfx.bgBuffers[3]); ChangeBgX(0, 0, 0); ChangeBgY(0, 0, 0); ChangeBgX(2, 0, 0); @@ -1059,7 +1222,7 @@ s32 InitBerryCrushDisplay(void) CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); - DecompressAndCopyTileDataToVram(1, gUnknown_08DE34B8, 0, 0, 0); + DecompressAndCopyTileDataToVram(1, gBerryCrush_Crusher_Gfx, 0, 0, 0); break; case 6: if (FreeTempTileDataBuffersIfPossible()) @@ -1067,16 +1230,16 @@ s32 InitBerryCrushDisplay(void) InitStandardTextBoxWindows(); InitTextBoxGfxAndPrinters(); - sub_8022588(game); - sub_8022600(game); + CreatePlayerNameWindows(game); + DrawPlayerNameWindows(game); gPaletteFade.bufferTransferDisabled = TRUE; break; case 7: - LoadPalette(gUnknown_08DE3398, 0, 0x180); - CopyToBgTilemapBuffer(1, gBerryCrushGrinderTopTilemap, 0, 0); - CopyToBgTilemapBuffer(2, gBerryCrushContainerCapTilemap, 0, 0); - CopyToBgTilemapBuffer(3, gBerryCrushBackgroundTilemap, 0, 0); - sub_80226D0(game); + LoadPalette(gBerryCrush_Crusher_Pal, 0, 0x180); + CopyToBgTilemapBuffer(1, sCrusherTop_Tilemap, 0, 0); + CopyToBgTilemapBuffer(2, sContainerCap_Tilemap, 0, 0); + CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0); + CopyPlayerNameWindowGfxToBg(game); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); @@ -1084,7 +1247,7 @@ s32 InitBerryCrushDisplay(void) case 8: LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); - sub_8022730(game); + CreateGameSprites(game); SetGpuReg(REG_OFFSET_BG1VOFS, -gSpriteCoordOffsetY); ChangeBgX(1, 0, 0); ChangeBgY(1, 0, 0); @@ -1106,13 +1269,13 @@ s32 InitBerryCrushDisplay(void) return 0; } -static s32 BerryCrush_TeardownBgs(void) +static s32 HideGameDisplay(void) { - struct BerryCrushGame *var0 = GetBerryCrushGame(); - if (!var0) + struct BerryCrushGame *game = GetBerryCrushGame(); + if (!game) return -1; - switch (var0->cmdState) + switch (game->cmdState) { case 0: Rfu_SetLinkStandbyCallback(); @@ -1120,8 +1283,11 @@ static s32 BerryCrush_TeardownBgs(void) case 1: if (!IsLinkTaskFinished()) return 0; - // fall through. The original author forgot to use "break" here - // because this will call BeginNormalPaletteFade() twice. + // fall through + // This will call BeginNormalPaletteFade() twice. +#ifdef BUGFIX + break; +#endif case 2: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); UpdatePaletteFade(); @@ -1154,83 +1320,98 @@ static s32 BerryCrush_TeardownBgs(void) break; case 6: DestroyWirelessStatusIndicatorSprite(); - sub_8022960(var0); + DestroyGameSprites(game); DigitObjUtil_Free(); break; case 7: - var0->cmdState = 0; + game->cmdState = 0; return 1; } - var0->cmdState++; + game->cmdState++; return 0; } -static s32 sub_8021450(struct BerryCrushGame *arg0) +// Handles the crusher vibration and the timer +static s32 UpdateGame(struct BerryCrushGame *game) { - gSpriteCoordOffsetY = arg0->depth + arg0->vibration; + gSpriteCoordOffsetY = game->depth + game->vibration; SetGpuReg(REG_OFFSET_BG1VOFS, -gSpriteCoordOffsetY); - if (arg0->gameState == 7) - { - BerryCrush_PrintTimeOnSprites(&arg0->unk138, arg0->timer); - } + + if (game->gameState == STATE_PLAYING) + PrintTimer(&game->gfx, game->timer); return 0; } -void sub_8021488(struct BerryCrushGame *arg0) +static void ResetCrusherPos(struct BerryCrushGame *game) { - arg0->depth = -104; - arg0->vibration = 0; + game->depth = CRUSHER_START_Y; + game->vibration = 0; gSpriteCoordOffsetX = 0; - gSpriteCoordOffsetY = -104; -} - -static void BerryCrush_CreateBerrySprites(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) + gSpriteCoordOffsetY = CRUSHER_START_Y; +} + +// Sprite data for berry sprites. Identical to fields for sparkle sprites +#define sX data[0] +#define sYSpeed data[1] +#define sYAccel data[2] +#define sXSpeed data[3] +#define sSinIdx data[4] +#define sSinSpeed data[5] +#define sAmplitude data[6] +// The last element (data[7]) is a bitfield. +// The first 15 bits are the y coord to stop at. +// The last bit is a flag for whether or not to move horizontally too +#define sBitfield data[7] +#define MASK_TARGET_Y 0x7FFF +#define F_MOVE_HORIZ 0x8000 + +static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) { u8 i; u8 spriteId; - s16 var0, var1; + s16 distance, var1; s16 *data; - s32 var3; - s16 var5; - u32 var6; + s32 amplitude; + s16 speed; + u32 var2; - for (i = 0; i < arg0->playerCount; i++) + for (i = 0; i < game->playerCount; i++) { spriteId = AddCustomItemIconSprite( &sSpriteTemplate_PlayerBerry, sPlayerBerrySpriteTags[i], sPlayerBerrySpriteTags[i], - arg0->unk98[i].unkC + FIRST_BERRY_INDEX); - arg1->berrySprites[i] = &gSprites[spriteId]; - arg1->berrySprites[i]->oam.priority = 3; - arg1->berrySprites[i]->affineAnimPaused = TRUE; - arg1->berrySprites[i]->pos1.x = arg1->seatCoords[i]->unk8 + 120; - arg1->berrySprites[i]->pos1.y = -16; - data = arg1->berrySprites[i]->data; - var5 = 512; - data[1] = var5; - data[2] = 32; - data[7] = 112; - var0 = arg1->seatCoords[i]->unkA - arg1->seatCoords[i]->unk8; - var3 = var0; - if (var0 < 0) - var3 += 3; - - data[6] = var3 >> 2; - var0 *= 128; - var6 = var5 + 32; - var6 = var6 / 2; - var1 = MathUtil_Div16Shift(7, Q_8_8(63.5), var6); - data[0] = (u16)arg1->berrySprites[i]->pos1.x * 128; - data[3] = MathUtil_Div16Shift(7, var0, var1); + game->players[i].berryId + FIRST_BERRY_INDEX); + gfx->berrySprites[i] = &gSprites[spriteId]; + gfx->berrySprites[i]->oam.priority = 3; + gfx->berrySprites[i]->affineAnimPaused = TRUE; + gfx->berrySprites[i]->pos1.x = gfx->playerCoords[i]->berryXOffset + 120; + gfx->berrySprites[i]->pos1.y = -16; + data = gfx->berrySprites[i]->data; + speed = 512; + sYSpeed = speed; + 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; + distance *= 128; + var2 = speed + 32; + var2 = var2 / 2; + var1 = MathUtil_Div16Shift(7, Q_8_8(63.5), var2); + sX = (u16)gfx->berrySprites[i]->pos1.x * 128; + sXSpeed = MathUtil_Div16Shift(7, distance, var1); var1 = MathUtil_Mul16Shift(7, var1, 85); - data[4] = 0; - data[5] = MathUtil_Div16Shift(7, Q_8_8(63.5), var1); - data[7] |= 0x8000; - if (arg1->seatCoords[i]->unk8 < 0) - StartSpriteAffineAnim(arg1->berrySprites[i], 1); + sSinIdx = 0; + sSinSpeed = MathUtil_Div16Shift(7, Q_8_8(63.5), var1); + sBitfield |= F_MOVE_HORIZ; + if (gfx->playerCoords[i]->berryXOffset < 0) + StartSpriteAffineAnim(gfx->berrySprites[i], 1); } } @@ -1238,22 +1419,22 @@ static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite) { s16 *data = sprite->data; - data[1] += data[2]; - sprite->pos2.y += data[1] >> 8; - if (data[7] & 0x8000) + sYSpeed += sYAccel; + sprite->pos2.y += sYSpeed >> 8; + if (sBitfield & F_MOVE_HORIZ) { - sprite->data[0] += data[3]; - data[4] += data[5]; - sprite->pos2.x = Sin(data[4] >> 7, data[6]); - if ((data[7] & 0x8000) && (data[4] >> 7) > 126) + sprite->sX += sXSpeed; + sSinIdx += sSinSpeed; + sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude); + if ((sBitfield & F_MOVE_HORIZ) && (sSinIdx >> 7) > 126) { sprite->pos2.x = 0; - data[7] &= 0x7FFF; + sBitfield &= MASK_TARGET_Y; } } - sprite->pos1.x = data[0] >> 7; - if (sprite->pos1.y + sprite->pos2.y >= (data[7] & 0x7FFF)) + sprite->pos1.x = sX >> 7; + if (sprite->pos1.y + sprite->pos2.y >= (sBitfield & MASK_TARGET_Y)) { sprite->callback = SpriteCallbackDummy; FreeSpriteOamMatrix(sprite); @@ -1261,119 +1442,143 @@ static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite) } } -void BerryCrushFreeBerrySpriteGfx(struct BerryCrushGame *arg0, __attribute__((unused)) struct BerryCrushGame_138 *arg1) +#undef sX +#undef sYSpeed +#undef sYAccel +#undef sXSpeed +#undef sSinIdx +#undef sSinSpeed +#undef sAmplitude +#undef sBitfield +#undef MASK_TARGET_Y +#undef F_MOVE_HORIZ + +static void BerryCrushFreeBerrySpriteGfx(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) { u8 i; - for (i = 0; i < arg0->playerCount; i++) + for (i = 0; i < game->playerCount; i++) { FreeSpritePaletteByTag(sPlayerBerrySpriteTags[i]); FreeSpriteTilesByTag(sPlayerBerrySpriteTags[i]); } } -void sub_80216E0(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) +static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) { - u8 sp4; - struct BerryCrushGame_4E *var4E; + u8 numPlayersPressed; + struct BerryCrushGame_LinkState *linkState; u8 i; - u16 var, var2; + u16 temp1, xModifier; - sp4 = 0; - var4E = (struct BerryCrushGame_4E *)arg0->recvCmd; - for (i = 0; i < arg0->playerCount; i++) + numPlayersPressed = 0; + linkState = (struct BerryCrushGame_LinkState *)game->recvCmd; + + // Read inputs and update impact effects + for (i = 0; i < game->playerCount; i++) { - var = var4E->unkA >> (i * 3); - var &= 7; - if (var) + #define flags temp1 + + flags = linkState->inputFlags >> (i * INPUT_FLAGS_PER_PLAYER); + flags &= INPUT_FLAG_MASK; + if (flags) { - sp4++; - if (var & 0x4) - StartSpriteAnim(arg1->impactSprites[i], 1); + numPlayersPressed++; + if (flags & F_INPUT_HIT_SYNC) + StartSpriteAnim(gfx->impactSprites[i], 1); // Big impact sprite else - StartSpriteAnim(arg1->impactSprites[i], 0); + StartSpriteAnim(gfx->impactSprites[i], 0); // Small impact sprite - arg1->impactSprites[i]->invisible = FALSE; - arg1->impactSprites[i]->animPaused = FALSE; - arg1->impactSprites[i]->pos2.x = gUnknown_082F41CC[(var % 4) - 1][0]; - arg1->impactSprites[i]->pos2.y = gUnknown_082F41CC[(var % 4) - 1][1]; + gfx->impactSprites[i]->invisible = FALSE; + gfx->impactSprites[i]->animPaused = FALSE; + gfx->impactSprites[i]->pos2.x = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][0]; + gfx->impactSprites[i]->pos2.y = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][1]; } + + #undef flags } - if (sp4 == 0) + if (numPlayersPressed == 0) { - arg0->unk25_2 = 0; + game->playedSound = FALSE; } else { - var = (u8)(arg0->timer % 3); - var2 = var; - for (i = 0; i < var4E->unkC * 2 + 3; i++) + // Update sparkle effect + #define yModifier temp1 + + yModifier = (u8)(game->timer % 3); + xModifier = yModifier; + for (i = 0; i < linkState->sparkleAmount * 2 + 3; i++) { - if (arg1->sparkleSprites[i]->invisible) + if (gfx->sparkleSprites[i]->invisible) { - arg1->sparkleSprites[i]->callback = sub_8022B28; - arg1->sparkleSprites[i]->pos1.x = gUnknown_082F41D2[i][0] + 120; - arg1->sparkleSprites[i]->pos1.y = gUnknown_082F41D2[i][1] + 136 - (var * 4); - arg1->sparkleSprites[i]->pos2.x = gUnknown_082F41D2[i][0] + (gUnknown_082F41D2[i][0] / (var2 * 4)); - arg1->sparkleSprites[i]->pos2.y = gUnknown_082F41D2[i][1]; - if (var4E->unk4_1) - StartSpriteAnim(arg1->sparkleSprites[i], 1); + gfx->sparkleSprites[i]->callback = SpriteCB_Sparkle_Init; + gfx->sparkleSprites[i]->pos1.x = sSparkleCoords[i][0] + 120; + gfx->sparkleSprites[i]->pos1.y = sSparkleCoords[i][1] + 136 - (yModifier * 4); + gfx->sparkleSprites[i]->pos2.x = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4)); + gfx->sparkleSprites[i]->pos2.y = sSparkleCoords[i][1]; + if (linkState->bigSparkle) + StartSpriteAnim(gfx->sparkleSprites[i], 1); else - StartSpriteAnim(arg1->sparkleSprites[i], 0); + StartSpriteAnim(gfx->sparkleSprites[i], 0); - var++; - if (var > 3) - var = 0; + yModifier++; + if (yModifier > 3) + yModifier = 0; } } - if (arg0->unk25_2) + #undef yModifier + + if (game->playedSound) { - arg0->unk25_2 = 0; + game->playedSound = FALSE; } else { - if (sp4 == 1) + if (numPlayersPressed == 1) PlaySE(SE_MUD_BALL); else PlaySE(SE_BREAKABLE_DOOR); - arg0->unk25_2 = 1; + game->playedSound = TRUE; } } } -bool32 sub_80218D4(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1) +static bool32 AreEffectsFinished(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) { u8 i; - for (i = 0; i < arg0->playerCount; i++) + // Are any impact sprites active + for (i = 0; i < game->playerCount; i++) { - if (!arg1->impactSprites[i]->invisible) + if (!gfx->impactSprites[i]->invisible) return FALSE; } - for (i = 0; i < 11; i++) + // Are any sparkle sprites active + for (i = 0; i < ARRAY_COUNT(gfx->sparkleSprites); i++) { - if (!arg1->sparkleSprites[i]->invisible) + if (!gfx->sparkleSprites[i]->invisible) return FALSE; } - if (arg0->vibration != 0) - arg0->vibration = 0; + if (game->vibration != 0) + game->vibration = 0; return TRUE; } -static void FramesToMinSec(struct BerryCrushGame_138 *arg0, u16 arg1) +static void FramesToMinSec(struct BerryCrushGame_Gfx *gfx, u16 frames) { u8 i = 0; u32 fractionalFrames = 0; s16 r3 = 0; - arg0->minutes = arg1 / 3600; - arg0->secondsInt = (arg1 % 3600) / 60; - r3 = MathUtil_Mul16(Q_8_8(arg1 % 60), 4); + gfx->minutes = frames / (60 * 60); + gfx->secondsInt = (frames % (60 * 60)) / 60; + r3 = MathUtil_Mul16(Q_8_8(frames % 60), 4); for (i = 0; i < 8; i++) { @@ -1381,277 +1586,262 @@ static void FramesToMinSec(struct BerryCrushGame_138 *arg0, u16 arg1) fractionalFrames += sPressingSpeedConversionTable[i]; } - arg0->secondsFrac = fractionalFrames / 1000000; + gfx->secondsFrac = fractionalFrames / 1000000; } static void PrintTextCentered(u8 windowId, u8 left, u8 colorId, const u8 *string) { left = (left * 4) - (GetStringWidth(2, string, -1) / 2u); - AddTextPrinterParameterized3(windowId, 2, left, 0, sBerryCrushTextColorTable[colorId], 0, string); + AddTextPrinterParameterized3(windowId, 2, left, 0, sTextColorTable[colorId], 0, string); } -static void PrintBerryCrushResultWindow(struct BerryCrushGame * sp0C, u8 sp10, u8 sp14, u8 sp18) +static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 baseY) { - u8 r8; - u8 sp1C = 0; - u8 sp20 = 0; - u8 r2; - s32 r3; - u8 r7; - struct BerryCrushGame_68 * sp24 = &sp0C->unk68; + u8 i, j; + u8 playerId = 0; + u8 ranking = 0; + s32 x; + u8 stat; + struct BerryCrushGame_Results * results = &game->results; u32 xOffset; - s32 r6; - - sp18 -= 16; - if (sp10 == 2) - sp18 -= 42; - r6 = sp18 - 14 * sp0C->playerCount; - if (r6 > 0) - r6 = r6 / 2 + 16; + s32 y; + + baseY -= 16; + if (page == RESULTS_PAGE_CRUSHING) + baseY -= 42; + + y = baseY - 14 * game->playerCount; + if (y > 0) + y = y / 2 + 16; else - r6 = 16; + y = 16; - for (r8 = 0; r8 < sp0C->playerCount; r6 += 14, ++r8) + for (i = 0; i < game->playerCount; y += 14, i++) { DynamicPlaceholderTextUtil_Reset(); - switch (sp10) + switch (page) { - case 0: - sp1C = sp24->unk20[sp10][r8]; - if (r8 != 0 && sp24->stats[sp10][r8] != sp24->stats[sp10][r8 - 1]) - sp20 = r8; - ConvertIntToDecimalStringN(gStringVar4, sp24->stats[sp10][r8], STR_CONV_MODE_RIGHT_ALIGN, 4); - StringAppend(gStringVar4, sBCRankingHeaders[sp10]); + case RESULTS_PAGE_PRESSES: + playerId = results->playerIdsRanked[page][i]; + if (i != 0 && results->stats[page][i] != results->stats[page][i - 1]) + ranking = i; + ConvertIntToDecimalStringN(gStringVar4, results->stats[page][i], STR_CONV_MODE_RIGHT_ALIGN, 4); + StringAppend(gStringVar4, sResultsTexts[page]); break; - case 1: - sp1C = sp24->unk20[sp10][r8]; - if (r8 != 0 && sp24->stats[sp10][r8] != sp24->stats[sp10][r8 - 1]) - sp20 = r8; - ConvertIntToDecimalStringN(gStringVar1, sp24->stats[sp10][r8] >> 4, STR_CONV_MODE_RIGHT_ALIGN, 3); + case RESULTS_PAGE_RANDOM: + playerId = results->playerIdsRanked[page][i]; + if (i != 0 && results->stats[page][i] != results->stats[page][i - 1]) + ranking = i; + ConvertIntToDecimalStringN(gStringVar1, results->stats[page][i] >> 4, STR_CONV_MODE_RIGHT_ALIGN, 3); xOffset = 0; - r7 = sp24->stats[sp10][r8] & 15; - for (r2 = 0; r2 < 4; ++r2) - if ((r7 >> (3 - r2)) & 1) - xOffset += sPressingSpeedConversionTable[r2]; - r7 = xOffset / 1000000u; - ConvertIntToDecimalStringN(gStringVar2, r7, STR_CONV_MODE_LEADING_ZEROS, 2); - StringExpandPlaceholders(gStringVar4, sBCRankingHeaders[sp10]); + stat = results->stats[page][i] & 15; + for (j = 0; j < 4; j++) + if ((stat >> (3 - j)) & 1) + xOffset += sPressingSpeedConversionTable[j]; + stat = xOffset / 1000000u; + ConvertIntToDecimalStringN(gStringVar2, stat, STR_CONV_MODE_LEADING_ZEROS, 2); + StringExpandPlaceholders(gStringVar4, sResultsTexts[page]); break; - case 2: - sp1C = r8; - sp20 = r8; - r2 = sp0C->unk98[r8].unkC; - if (r2 >= LAST_BERRY_INDEX - FIRST_BERRY_INDEX + 2) - r2 = 0; - StringCopy(gStringVar1, gBerries[r2].name); - StringExpandPlaceholders(gStringVar4, sBCRankingHeaders[sp10]); + case RESULTS_PAGE_CRUSHING: + playerId = i; + ranking = i; + j = game->players[i].berryId; + if (j >= LAST_BERRY_INDEX - FIRST_BERRY_INDEX + 2) + j = 0; + StringCopy(gStringVar1, gBerries[j].name); + StringExpandPlaceholders(gStringVar4, sResultsTexts[page]); break; } - r3 = GetStringRightAlignXOffset(2, gStringVar4, sp14 - 4); - AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, r3, r6, sBerryCrushTextColorTable[0], 0, gStringVar4); - if (sp1C == sp0C->localId) + x = GetStringRightAlignXOffset(2, gStringVar4, sp14 - 4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + if (playerId == game->localId) StringCopy(gStringVar3, gText_1DotBlueF700); else StringCopy(gStringVar3, gText_1DotF700); - gStringVar3[0] = sp20 + CHAR_1; - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sp0C->unk98[sp1C].unk0); + gStringVar3[0] = ranking + CHAR_1; + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, game->players[playerId].name); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3); - AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, 4, r6, sBerryCrushTextColorTable[0], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 4, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); } } -static void sub_8021D34(struct BerryCrushGame *r8) +static void PrintCrushingResults(struct BerryCrushGame *game) { - u8 r10 = 0; - u8 r6 = 0; - u32 sp0C = 0; - struct BerryCrushGame_68 *sp10 = &r8->unk68; - u8 r7 = GetWindowAttribute(r8->unk138.unk82, WINDOW_HEIGHT) * 8 - 42; + u8 i = 0; + u8 x = 0; + u32 pressingSpeedFrac = 0; + struct BerryCrushGame_Results *results = &game->results; + u8 y = GetWindowAttribute(game->gfx.resultsWindowId, WINDOW_HEIGHT) * 8 - 42; + + FramesToMinSec(&game->gfx, results->time); + + // Print time text + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_TimeColon); - FramesToMinSec(&r8->unk138, sp10->unk04); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gText_TimeColon); - r6 = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gText_SpaceSec); - ConvertIntToDecimalStringN(gStringVar1, r8->unk138.secondsInt, STR_CONV_MODE_LEADING_ZEROS, 2); - ConvertIntToDecimalStringN(gStringVar2, r8->unk138.secondsFrac, STR_CONV_MODE_LEADING_ZEROS, 2); + // Print seconds text + x = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_SpaceSec); + + // Print seconds value + ConvertIntToDecimalStringN(gStringVar1, game->gfx.secondsInt, STR_CONV_MODE_LEADING_ZEROS, 2); + ConvertIntToDecimalStringN(gStringVar2, game->gfx.secondsFrac, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY2); - r6 -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gStringVar4); - r6 -= GetStringWidth(2, gText_SpaceMin, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gText_SpaceMin); - ConvertIntToDecimalStringN(gStringVar1, r8->unk138.minutes, STR_CONV_MODE_LEADING_ZEROS, 1); + x -= GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + + // Print minutes text + x -= GetStringWidth(2, gText_SpaceMin, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_SpaceMin); + + // Print minutes value + ConvertIntToDecimalStringN(gStringVar1, game->gfx.minutes, STR_CONV_MODE_LEADING_ZEROS, 1); StringExpandPlaceholders(gStringVar4, gText_StrVar1); - r6 -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gStringVar4); - r7 += 14; - AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColorTable[0], 0, gText_PressingSpeed); - r6 = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gText_TimesPerSec); - for (; r10 < 8; ++r10) - if (((u8)r8->pressingSpeed >> (7 - r10)) & 1) - sp0C += *(r10 + sPressingSpeedConversionTable); // It's accessed in a different way here for unknown reason - ConvertIntToDecimalStringN(gStringVar1, r8->pressingSpeed >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); - ConvertIntToDecimalStringN(gStringVar2, sp0C / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); + x -= GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + + // Print pressing speed text + y += 14; + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GREY], 0, gText_PressingSpeed); + x = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_TimesPerSec); + + // Print pressing speed value + for (i = 0; i < 8; i++) + if (((u8)game->pressingSpeed >> (7 - i)) & 1) + pressingSpeedFrac += *(i + sPressingSpeedConversionTable); // It's accessed in a different way here for unknown reason + ConvertIntToDecimalStringN(gStringVar1, game->pressingSpeed >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); + ConvertIntToDecimalStringN(gStringVar2, pressingSpeedFrac / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY3); - r6 -= GetStringWidth(2, gStringVar4, -1); - if (r8->unk25_1) - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[5], 0, gStringVar4); + x -= GetStringWidth(2, gStringVar4, -1); + if (game->newRecord) + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_RED], 0, gStringVar4); else - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gStringVar4); - r7 += 14; - AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColorTable[0], 0, gText_Silkiness); - ConvertIntToDecimalStringN(gStringVar1, sp10->unk08, STR_CONV_MODE_RIGHT_ALIGN, 3); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + + // Print silkiness text + y += 14; + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GREY], 0, gText_Silkiness); + + // Print silkiness value + ConvertIntToDecimalStringN(gStringVar1, results->silkiness, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_Var1Percent); - r6 = 176 - (u8)GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColorTable[0], 0, gStringVar4); + x = 176 - (u8)GetStringWidth(2, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); } -static bool32 sub_8022070(struct BerryCrushGame *r4, struct BerryCrushGame_138 *r6) +static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) { - u8 r5; + u8 playerCountIdx; struct WindowTemplate template; - switch (r6->unk80) + switch (gfx->resultsState) { case 0: - r5 = r4->playerCount - 2; - BerryCrush_HideTimerSprites(r6); - memcpy(&template, &gUnknown_082F3324[r4->gameState - 11], sizeof(struct WindowTemplate)); - if (r4->gameState == 13) - template.height = gUnknown_082F3344[1][r5]; + playerCountIdx = game->playerCount - 2; + HideTimer(gfx); + memcpy(&template, &sWindowTemplates_Results[game->gameState - RESULTS_STATE_START], sizeof(struct WindowTemplate)); + if (game->gameState == STATE_RESULTS_CRUSHING) + template.height = sResultsWindowHeights[1][playerCountIdx]; else - template.height = gUnknown_082F3344[0][r5]; - r6->unk82 = AddWindow(&template); + template.height = sResultsWindowHeights[0][playerCountIdx]; + gfx->resultsWindowId = AddWindow(&template); break; case 1: - PutWindowTilemap(r6->unk82); - FillWindowPixelBuffer(r6->unk82, PIXEL_FILL(0)); + PutWindowTilemap(gfx->resultsWindowId); + FillWindowPixelBuffer(gfx->resultsWindowId, PIXEL_FILL(0)); break; case 2: - LoadUserWindowBorderGfx_(r6->unk82, 541, 208); - DrawStdFrameWithCustomTileAndPalette(r6->unk82, 0, 541, 13); + LoadUserWindowBorderGfx_(gfx->resultsWindowId, 541, 208); + DrawStdFrameWithCustomTileAndPalette(gfx->resultsWindowId, 0, 541, 13); break; case 3: - r5 = r4->playerCount - 2; - switch (r4->gameState) + playerCountIdx = game->playerCount - 2; + switch (game->gameState) { - case 11: - PrintTextCentered(r6->unk82, 20, 3, gText_PressesRankings); - PrintBerryCrushResultWindow(r4, 0, 0xA0, 8 * gUnknown_082F3344[0][r5]); - r6->unk80 = 5; + case STATE_RESULTS_PRESSES: + PrintTextCentered(gfx->resultsWindowId, 20, COLORID_BLUE, gText_PressesRankings); + PrintResultsText(game, RESULTS_PAGE_PRESSES, 0xA0, 8 * sResultsWindowHeights[0][playerCountIdx]); + gfx->resultsState = 5; // Skip past Crushing Results text return FALSE; - case 12: - PrintTextCentered(r6->unk82, 20, 4, sBCRankingHeaders[r4->unk68.unk20[0][7] + 3]); - PrintBerryCrushResultWindow(r4, 1, 0xA0, 8 * gUnknown_082F3344[0][r5]); - r6->unk80 = 5; + case STATE_RESULTS_RANDOM: + PrintTextCentered(gfx->resultsWindowId, 20, COLORID_GREEN, sResultsTexts[game->results.randomPageId + NUM_RESULTS_PAGES]); + PrintResultsText(game, RESULTS_PAGE_RANDOM, 0xA0, 8 * sResultsWindowHeights[0][playerCountIdx]); + gfx->resultsState = 5; // Skip past Crushing Results text return FALSE; - case 13: - PrintTextCentered(r6->unk82, 22, 3, gText_CrushingResults); - PrintBerryCrushResultWindow(r4, 2, 0xB0, 8 * gUnknown_082F3344[1][r5]); + case STATE_RESULTS_CRUSHING: + PrintTextCentered(gfx->resultsWindowId, 22, COLORID_BLUE, gText_CrushingResults); + PrintResultsText(game, RESULTS_PAGE_CRUSHING, 0xB0, 8 * sResultsWindowHeights[1][playerCountIdx]); break; } break; case 4: - sub_8021D34(r4); + PrintCrushingResults(game); break; case 5: - CopyWindowToVram(r6->unk82, 3); - r6->unk80 = 0; + CopyWindowToVram(gfx->resultsWindowId, 3); + gfx->resultsState = 0; return TRUE; } - ++r6->unk80; + gfx->resultsState++; return FALSE; } -static void sub_802222C(struct BerryCrushGame *r4) +static void CloseResultsWindow(struct BerryCrushGame *game) { - ClearStdWindowAndFrameToTransparent(r4->unk138.unk82, 1); - RemoveWindow(r4->unk138.unk82); - sub_8022600(r4); + ClearStdWindowAndFrameToTransparent(game->gfx.resultsWindowId, 1); + RemoveWindow(game->gfx.resultsWindowId); + DrawPlayerNameWindows(game); } -static void Task_ShowBerryCrushRankings(u8 taskId) +#define tState data[0] +#define tWindowId data[1] +#define tPressingSpeeds(i) data[2 + (i)] // data[2]-[5], for different group sizes + +static void Task_ShowRankings(u8 taskId) { u8 i = 0, j, xPos, yPos; u32 score = 0; s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: - data[1] = AddWindow(&sWindowTemplate_BerryCrushRankings); - PutWindowTilemap(data[1]); - FillWindowPixelBuffer(data[1], PIXEL_FILL(0)); - LoadUserWindowBorderGfx_(data[1], 541, 208); - DrawStdFrameWithCustomTileAndPalette(data[1], 0, 541, 13); + tWindowId = AddWindow(&sWindowTemplate_Rankings); + PutWindowTilemap(tWindowId); + FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0)); + LoadUserWindowBorderGfx_(tWindowId, 541, 208); + DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 541, 13); break; case 1: + // Print header text xPos = 96 - GetStringWidth(1, gText_BerryCrush2, -1) / 2u; - AddTextPrinterParameterized3( - data[1], - 1, - xPos, - 1, - sBerryCrushTextColorTable[3], - 0, - gText_BerryCrush2 - ); + AddTextPrinterParameterized3(tWindowId, 1, xPos, 1, sTextColorTable[COLORID_BLUE], 0, gText_BerryCrush2); xPos = 96 - GetStringWidth(1, gText_PressingSpeedRankings, -1) / 2u; - AddTextPrinterParameterized3( - data[1], - 1, - xPos, - 17, - sBerryCrushTextColorTable[3], - 0, - gText_PressingSpeedRankings - ); + AddTextPrinterParameterized3(tWindowId, 1, xPos, 17, sTextColorTable[COLORID_BLUE], 0, gText_PressingSpeedRankings); + + // Print pressing speed record for each group size, ranked yPos = 41; - for (i = 0; i < 4; ++i) + for (i = 0; i < MAX_RFU_PLAYERS - 1; i++) { ConvertIntToDecimalStringN(gStringVar1, i + 2, STR_CONV_MODE_LEFT_ALIGN, 1); StringExpandPlaceholders(gStringVar4, gText_Var1Players); - AddTextPrinterParameterized3( - data[1], - 1, - 0, - yPos, - sBerryCrushTextColorTable[0], - 0, - gStringVar4 - ); + AddTextPrinterParameterized3(tWindowId, 1, 0, yPos, sTextColorTable[COLORID_GREY], 0, gStringVar4); xPos = 192 - (u8)GetStringWidth(1, gText_TimesPerSec, -1); - AddTextPrinterParameterized3( - data[1], - 1, - xPos, - yPos, - sBerryCrushTextColorTable[0], - 0, - gText_TimesPerSec - ); - for (j = 0; j < 8; ++j) + AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GREY], 0, gText_TimesPerSec); + for (j = 0; j < 8; j++) { - if (((data[i + 2] & 0xFF) >> (7 - j)) & 1) + if (((tPressingSpeeds(i) & 0xFF) >> (7 - j)) & 1) score += sPressingSpeedConversionTable[j]; } - ConvertIntToDecimalStringN(gStringVar1, (u16)data[i + 2] >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); + ConvertIntToDecimalStringN(gStringVar1, (u16)tPressingSpeeds(i) >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); ConvertIntToDecimalStringN(gStringVar2, score / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY3); xPos -= GetStringWidth(1, gStringVar4, -1); - AddTextPrinterParameterized3( - data[1], - 1, - xPos, - yPos, - sBerryCrushTextColorTable[0], - 0, - gStringVar4 - ); + AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GREY], 0, gStringVar4); yPos += 16; score = 0; } - CopyWindowToVram(data[1], 3); + CopyWindowToVram(tWindowId, 3); break; case 2: if (JOY_NEW(A_BUTTON | B_BUTTON)) @@ -1659,16 +1849,16 @@ static void Task_ShowBerryCrushRankings(u8 taskId) else return; case 3: - ClearStdWindowAndFrameToTransparent(data[1], 1); - ClearWindowTilemap(data[1]); - RemoveWindow(data[1]); + ClearStdWindowAndFrameToTransparent(tWindowId, 1); + ClearWindowTilemap(tWindowId); + RemoveWindow(tWindowId); DestroyTask(taskId); EnableBothScriptContexts(); ScriptContext2_Disable(); - data[0] = 0; + tState = 0; return; } - ++data[0]; + tState++; } void ShowBerryCrushRankings(void) @@ -1676,97 +1866,98 @@ void ShowBerryCrushRankings(void) u8 taskId; ScriptContext2_Enable(); - taskId = CreateTask(Task_ShowBerryCrushRankings, 0); - gTasks[taskId].data[2] = gSaveBlock2Ptr->berryCrush.berryCrushResults[0]; - gTasks[taskId].data[3] = gSaveBlock2Ptr->berryCrush.berryCrushResults[1]; - gTasks[taskId].data[4] = gSaveBlock2Ptr->berryCrush.berryCrushResults[2]; - gTasks[taskId].data[5] = gSaveBlock2Ptr->berryCrush.berryCrushResults[3]; + taskId = CreateTask(Task_ShowRankings, 0); + gTasks[taskId].tPressingSpeeds(0) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[0]; + gTasks[taskId].tPressingSpeeds(1) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[1]; + gTasks[taskId].tPressingSpeeds(2) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[2]; + gTasks[taskId].tPressingSpeeds(3) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[3]; } -static void BerryCrush_PrintTimeOnSprites(struct BerryCrushGame_138 *r4, u16 r1) +static void PrintTimer(struct BerryCrushGame_Gfx *gfx, u16 timer) { - FramesToMinSec(r4, r1); - DigitObjUtil_PrintNumOn(0, r4->minutes); - DigitObjUtil_PrintNumOn(1, r4->secondsInt); - DigitObjUtil_PrintNumOn(2, r4->secondsFrac); + FramesToMinSec(gfx, timer); + DigitObjUtil_PrintNumOn(0, gfx->minutes); + DigitObjUtil_PrintNumOn(1, gfx->secondsInt); + DigitObjUtil_PrintNumOn(2, gfx->secondsFrac); } -static void BerryCrush_HideTimerSprites(struct BerryCrushGame_138 *r0) +static void HideTimer(struct BerryCrushGame_Gfx *gfx) { - r0->timerSprites[0]->invisible = TRUE; - r0->timerSprites[1]->invisible = TRUE; + gfx->timerSprites[0]->invisible = TRUE; + gfx->timerSprites[1]->invisible = TRUE; DigitObjUtil_HideOrShow(2, 1); DigitObjUtil_HideOrShow(1, 1); DigitObjUtil_HideOrShow(0, 1); } -static void sub_8022588(struct BerryCrushGame *r5) +static void CreatePlayerNameWindows(struct BerryCrushGame *game) { - u8 r6; - - for (r6 = 0; r6 < r5->playerCount; ++r6) + u8 i; + for (i = 0; i < game->playerCount; i++) { - r5->unk138.seatCoords[r6] = &gUnknown_082F4190[gUnknown_082F417C[r5->playerCount - 2][r6]]; - r5->unk138.unk83[r6] = AddWindow(&gUnknown_082F32F4[r5->unk138.seatCoords[r6]->unk0]); - PutWindowTilemap(r5->unk138.unk83[r6]); - FillWindowPixelBuffer(r5->unk138.unk83[r6], 0); + game->gfx.playerCoords[i] = &sPlayerCoords[sPlayerIdToPosId[game->playerCount - 2][i]]; + game->gfx.nameWindowIds[i] = AddWindow(&sWindowTemplates_PlayerNames[game->gfx.playerCoords[i]->playerId]); + PutWindowTilemap(game->gfx.nameWindowIds[i]); + FillWindowPixelBuffer(game->gfx.nameWindowIds[i], 0); } } -static void sub_8022600(struct BerryCrushGame *r6) +static void DrawPlayerNameWindows(struct BerryCrushGame *game) { - u8 r7; - - for (r7 = 0; r7 < r6->playerCount; ++r7) + u8 i; + for (i = 0; i < game->playerCount; i++) { - PutWindowTilemap(r6->unk138.unk83[r7]); - if (r7 == r6->localId) + PutWindowTilemap(game->gfx.nameWindowIds[i]); + if (i == game->localId) { + // Print the player's name AddTextPrinterParameterized4( - r6->unk138.unk83[r7], + game->gfx.nameWindowIds[i], 2, - 36 - GetStringWidth(2, r6->unk98[r7].unk0, 0) / 2u, + 36 - GetStringWidth(2, game->players[i].name, 0) / 2u, 1, 0, 0, - sBerryCrushTextColorTable[1], + sTextColorTable[COLORID_BLACK], 0, - r6->unk98[r7].unk0 + game->players[i].name ); } else { + // Print a partner's name AddTextPrinterParameterized4( - r6->unk138.unk83[r7], + game->gfx.nameWindowIds[i], 2, - 36 - GetStringWidth(2, r6->unk98[r7].unk0, 0) / 2u, + 36 - GetStringWidth(2, game->players[i].name, 0) / 2u, 1, 0, 0, - sBerryCrushTextColorTable[2], + sTextColorTable[COLORID_LIGHT_GREY], 0, - r6->unk98[r7].unk0 + game->players[i].name ); } - CopyWindowToVram(r6->unk138.unk83[r7], 3); + CopyWindowToVram(game->gfx.nameWindowIds[i], 3); } CopyBgTilemapBufferToVram(0); } -static void sub_80226D0(struct BerryCrushGame *r6) +// Each player name window border uses a color that corresponds to a slot of the crusher lid +static void CopyPlayerNameWindowGfxToBg(struct BerryCrushGame *game) { - u8 r5 = 0; - u8 * r4; + u8 i = 0; + u8 * crusherGfx; - LZ77UnCompWram(gUnknown_08DE3FD4, gDecompressionBuffer); + LZ77UnCompWram(gBerryCrush_Crusher_Tilemap, gDecompressionBuffer); - for (r4 = gDecompressionBuffer; r5 < r6->playerCount; ++r5) + for (crusherGfx = gDecompressionBuffer; i < game->playerCount; i++) { CopyToBgTilemapBufferRect( 3, - &r4[r6->unk138.seatCoords[r5]->unk0 * 40], - r6->unk138.seatCoords[r5]->unk1, - r6->unk138.seatCoords[r5]->unk2, + &crusherGfx[game->gfx.playerCoords[i]->playerId * 40], + game->gfx.playerCoords[i]->windowGfxX, + game->gfx.playerCoords[i]->windowGfxY, 10, 2 ); @@ -1774,96 +1965,99 @@ static void sub_80226D0(struct BerryCrushGame *r6) CopyBgTilemapBufferToVram(3); } -static void sub_8022730(struct BerryCrushGame *r6) +static void CreateGameSprites(struct BerryCrushGame *game) { - u8 r5 = 0; - u8 r2; + u8 i = 0; + u8 spriteId; - r6->depth = -104; - r6->vibration = 0; + game->depth = CRUSHER_START_Y; + game->vibration = 0; gSpriteCoordOffsetX = 0; - gSpriteCoordOffsetY = -104; - for (; r5 < 4; ++r5) - LoadCompressedSpriteSheet(&gUnknown_082F41F4[r5]); + gSpriteCoordOffsetY = CRUSHER_START_Y; + for (i = 0; i < ARRAY_COUNT(sSpriteSheets) - 1; i++) + LoadCompressedSpriteSheet(&sSpriteSheets[i]); LoadSpritePalettes(sSpritePals); - r2 = CreateSprite(&sSpriteTemplate_BerryCrushCore, 120, 88, 5); - r6->unk138.coreSprite = &gSprites[r2]; - r6->unk138.coreSprite->oam.priority = 3; - r6->unk138.coreSprite->coordOffsetEnabled = TRUE; - r6->unk138.coreSprite->animPaused = TRUE; - for (r5 = 0; r5 < r6->playerCount; ++r5) - { - r2 = CreateSprite( - &sSpriteTemplate_BerryCrushImpact, - r6->unk138.seatCoords[r5]->unk4 + 120, - r6->unk138.seatCoords[r5]->unk6 + 32, + + // Create sprite for crusher base + spriteId = CreateSprite(&sSpriteTemplate_CrusherBase, 120, 88, 5); + game->gfx.coreSprite = &gSprites[spriteId]; + game->gfx.coreSprite->oam.priority = 3; + game->gfx.coreSprite->coordOffsetEnabled = TRUE; + game->gfx.coreSprite->animPaused = TRUE; + + // Create sprites for the impact effect + for (i = 0; i < game->playerCount; i++) + { + spriteId = CreateSprite( + &sSpriteTemplate_Impact, + game->gfx.playerCoords[i]->impactXOffset + 120, + game->gfx.playerCoords[i]->impactYOffset + 32, 0 ); - r6->unk138.impactSprites[r5] = &gSprites[r2]; - r6->unk138.impactSprites[r5]->oam.priority = 1; - r6->unk138.impactSprites[r5]->invisible = TRUE; - r6->unk138.impactSprites[r5]->coordOffsetEnabled = TRUE; - r6->unk138.impactSprites[r5]->animPaused = TRUE; - } - for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.sparkleSprites); ++r5) - { - r2 = CreateSprite( - &sSpriteTemplate_BerryCrushPowderSparkles, - gUnknown_082F41D2[r5][0] + 120, - gUnknown_082F41D2[r5][1] + 136, + game->gfx.impactSprites[i] = &gSprites[spriteId]; + game->gfx.impactSprites[i]->oam.priority = 1; + game->gfx.impactSprites[i]->invisible = TRUE; + game->gfx.impactSprites[i]->coordOffsetEnabled = TRUE; + game->gfx.impactSprites[i]->animPaused = TRUE; + } + + // Create sprites for sparkle effect + for (i = 0; i < ARRAY_COUNT(game->gfx.sparkleSprites); i++) + { + spriteId = CreateSprite( + &sSpriteTemplate_Sparkle, + sSparkleCoords[i][0] + 120, + sSparkleCoords[i][1] + 136, 6 ); - r6->unk138.sparkleSprites[r5] = &gSprites[r2]; - r6->unk138.sparkleSprites[r5]->oam.priority = 3; - r6->unk138.sparkleSprites[r5]->invisible = TRUE; - r6->unk138.sparkleSprites[r5]->animPaused = TRUE; - r6->unk138.sparkleSprites[r5]->data[0] = r5; - } - for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.timerSprites); ++r5) - { - r2 = CreateSprite( - &sSpriteTemplate_BerryCrushTimer, - 24 * r5 + 176, - 8, - 0 - ); - r6->unk138.timerSprites[r5] = &gSprites[r2]; - r6->unk138.timerSprites[r5]->oam.priority = 0; - r6->unk138.timerSprites[r5]->invisible = FALSE; - r6->unk138.timerSprites[r5]->animPaused = FALSE; + game->gfx.sparkleSprites[i] = &gSprites[spriteId]; + game->gfx.sparkleSprites[i]->oam.priority = 3; + game->gfx.sparkleSprites[i]->invisible = TRUE; + game->gfx.sparkleSprites[i]->animPaused = TRUE; + game->gfx.sparkleSprites[i]->data[0] = i; + } + + // Create sprites for timer + for (i = 0; i < ARRAY_COUNT(game->gfx.timerSprites); i++) + { + spriteId = CreateSprite(&sSpriteTemplate_Timer, 24 * i + 176, 8, 0); + game->gfx.timerSprites[i] = &gSprites[spriteId]; + game->gfx.timerSprites[i]->oam.priority = 0; + game->gfx.timerSprites[i]->invisible = FALSE; + game->gfx.timerSprites[i]->animPaused = FALSE; } DigitObjUtil_CreatePrinter(0, 0, &sDigitObjTemplates[0]); DigitObjUtil_CreatePrinter(1, 0, &sDigitObjTemplates[1]); DigitObjUtil_CreatePrinter(2, 0, &sDigitObjTemplates[2]); - if (r6->gameState == 1) - BerryCrush_HideTimerSprites(&r6->unk138); + + if (game->gameState == STATE_INIT) + HideTimer(&game->gfx); } -static void sub_8022960(struct BerryCrushGame *r5) +static void DestroyGameSprites(struct BerryCrushGame *game) { - u8 r4 = 0; - - FreeSpriteTilesByTag(4); - FreeSpriteTilesByTag(3); - FreeSpriteTilesByTag(2); - FreeSpriteTilesByTag(1); - FreeSpritePaletteByTag(4); - FreeSpritePaletteByTag(2); - FreeSpritePaletteByTag(1); - for (; r4 < ARRAY_COUNT(r5->unk138.timerSprites); ++r4) - DestroySprite(r5->unk138.timerSprites[r4]); + u8 i = 0; + FreeSpriteTilesByTag(TAG_TIMER_DIGITS); + FreeSpriteTilesByTag(GFXTAG_SPARKLE); + FreeSpriteTilesByTag(GFXTAG_IMPACT); + FreeSpriteTilesByTag(TAG_CRUSHER_BASE); + FreeSpritePaletteByTag(TAG_TIMER_DIGITS); + FreeSpritePaletteByTag(PALTAG_EFFECT); + FreeSpritePaletteByTag(TAG_CRUSHER_BASE); + for (i = 0; i < ARRAY_COUNT(game->gfx.timerSprites); i++) + DestroySprite(game->gfx.timerSprites[i]); DigitObjUtil_DeletePrinter(2); DigitObjUtil_DeletePrinter(1); DigitObjUtil_DeletePrinter(0); - for (r4 = 0; r4 < ARRAY_COUNT(r5->unk138.sparkleSprites); ++r4) - DestroySprite(r5->unk138.sparkleSprites[r4]); - for (r4 = 0; r4 < r5->playerCount; ++r4) - DestroySprite(r5->unk138.impactSprites[r4]); - if (r5->unk138.coreSprite->inUse) - DestroySprite(r5->unk138.coreSprite); + for (i = 0; i < ARRAY_COUNT(game->gfx.sparkleSprites); i++) + DestroySprite(game->gfx.sparkleSprites[i]); + for (i = 0; i < game->playerCount; i++) + DestroySprite(game->gfx.impactSprites[i]); + if (game->gfx.coreSprite->inUse) + DestroySprite(game->gfx.coreSprite); } -static void SpriteCB_BerryCrushImpact(struct Sprite *sprite) +static void SpriteCB_Impact(struct Sprite *sprite) { if (sprite->animEnded) { @@ -1872,93 +2066,116 @@ static void SpriteCB_BerryCrushImpact(struct Sprite *sprite) } } -static void sub_8022A4C(struct Sprite *sprite) +static void SpriteCB_Sparkle_End(struct Sprite *sprite) { - u8 r1 = 0; - SpriteCallback r5 = SpriteCallbackDummy; - - for (; r1 < ARRAY_COUNT(sprite->data); ++r1) - sprite->data[r1] = 0; + u8 i; + for (i = 0; i < ARRAY_COUNT(sprite->data); i++) + sprite->data[i] = 0; sprite->pos2.x = 0; sprite->pos2.y = 0; sprite->invisible = TRUE; sprite->animPaused = TRUE; - sprite->callback = r5; + sprite->callback = SpriteCallbackDummy; } -static void sub_8022A94(struct Sprite *sprite) +#define sX data[0] +#define sYSpeed data[1] +#define sYAccel data[2] +#define sXSpeed data[3] +#define sSinIdx data[4] +#define sSinSpeed data[5] +#define sAmplitude data[6] +// The last element (data[7]) is a bitfield. +// The first 15 bits are the y coord to stop at. +// The last bit is a flag for whether or not to move on the x too +#define sBitfield data[7] +#define MASK_TARGET_Y 0x7FFF +#define F_MOVE_HORIZ 0x8000 + +static void SpriteCB_Sparkle(struct Sprite *sprite) { - s16 *r4 = sprite->data; + s16 *data = sprite->data; - r4[1] += r4[2]; - sprite->pos2.y += r4[1] >> 8; - if (r4[7] & 0x8000) + sYSpeed += sYAccel; + sprite->pos2.y += sYSpeed >> 8; + if (sBitfield & F_MOVE_HORIZ) { - sprite->data[0] += r4[3]; - r4[4] += r4[5]; - sprite->pos2.x = Sin(r4[4] >> 7, r4[6]); - if (r4[7] & 0x8000 && r4[4] >> 7 > 126) + sprite->sX += sXSpeed; + sSinIdx += sSinSpeed; + sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude); + if (sBitfield & F_MOVE_HORIZ && sSinIdx >> 7 > 126) { sprite->pos2.x = 0; - r4[7] &= 0x7FFF; + sBitfield &= MASK_TARGET_Y; } } - sprite->pos1.x = r4[0] >> 7; - if (sprite->pos1.y + sprite->pos2.y > (r4[7] & 0x7FFF)) - sprite->callback = sub_8022A4C; -} - -static void sub_8022B28(struct Sprite *sprite) -{ - s16 *r7 = sprite->data; - s16 r4, r5; - s32 r2; - u32 r8 = 0; - - r2 = 640; - r7[1] = r2; - r7[2] = 32; - r7[7] = 168; - r4 = sprite->pos2.x * 128; - r5 = MathUtil_Div16Shift(7, (168 - sprite->pos1.y) << 7, (r2 + 32) >> 1); - sprite->data[0] = sprite->pos1.x << 7; - r7[3] = MathUtil_Div16Shift(7, r4, r5); - r2 = MathUtil_Mul16Shift(7, r5, 85); - r7[4] = r8; - r7[5] = MathUtil_Div16Shift(7, Q_8_8(63.5), r2); - r7[6] = sprite->pos2.x / 4; - r7[7] |= 0x8000; - sprite->pos2.y = r8; - sprite->pos2.x = r8; - sprite->callback = sub_8022A94; + sprite->pos1.x = sX >> 7; + if (sprite->pos1.y + sprite->pos2.y > (sBitfield & MASK_TARGET_Y)) + sprite->callback = SpriteCB_Sparkle_End; +} + +static void SpriteCB_Sparkle_Init(struct Sprite *sprite) +{ + s16 *data = sprite->data; + s16 xMult, xDiv; + s32 var; + u32 zero = 0; + + var = 640; + sYSpeed = var; + sYAccel = 32; + sBitfield = 168; // Setting bits in MASK_TARGET_Y + xMult = sprite->pos2.x * 128; + xDiv = MathUtil_Div16Shift(7, (168 - sprite->pos1.y) << 7, (var + 32) >> 1); + sprite->sX = sprite->pos1.x << 7; + sXSpeed = MathUtil_Div16Shift(7, xMult, xDiv); + var = MathUtil_Mul16Shift(7, xDiv, 85); + sSinIdx = zero; + sSinSpeed = MathUtil_Div16Shift(7, Q_8_8(63.5), var); + sAmplitude = sprite->pos2.x / 4; + sBitfield |= F_MOVE_HORIZ; + sprite->pos2.y = zero; + sprite->pos2.x = zero; + sprite->callback = SpriteCB_Sparkle; sprite->animPaused = FALSE; sprite->invisible = FALSE; } -static void BerryCrush_RunOrScheduleCommand(u16 r5, u8 r4, u8 *r7) +#undef sX +#undef sYSpeed +#undef sYAccel +#undef sXSpeed +#undef sSinIdx +#undef sSinSpeed +#undef sAmplitude +#undef sBitfield +#undef MASK_TARGET_Y +#undef F_MOVE_HORIZ + +static void RunOrScheduleCommand(u16 cmdId, u8 mode, u8 *args) { - struct BerryCrushGame *r6 = GetBerryCrushGame(); + struct BerryCrushGame *game = GetBerryCrushGame(); - if (r5 >= ARRAY_COUNT(sBerryCrushCommands)) - r5 = 0; - switch (r4) + if (cmdId >= ARRAY_COUNT(sBerryCrushCommands)) + cmdId = CMD_NONE; + switch (mode) { - case 0: - if (r5 != 0) - sBerryCrushCommands[r5](r6, r7); - if (r6->nextCmd >= ARRAY_COUNT(sBerryCrushCommands)) - r6->nextCmd = r4; - r6->cmdCallback = sBerryCrushCommands[r6->nextCmd]; + case RUN_CMD: + if (cmdId != CMD_NONE) + sBerryCrushCommands[cmdId](game, args); + if (game->nextCmd >= ARRAY_COUNT(sBerryCrushCommands)) + game->nextCmd = CMD_NONE; + game->cmdCallback = sBerryCrushCommands[game->nextCmd]; break; - case 1: - r6->cmdCallback = sBerryCrushCommands[r5]; + case SCHEDULE_CMD: + game->cmdCallback = sBerryCrushCommands[cmdId]; break; } } -static u32 BerryCrushCommand_BeginNormalPaletteFade(struct BerryCrushGame *game, u8 *params) +static u32 Cmd_BeginNormalPaletteFade(struct BerryCrushGame *game, u8 *args) { - // params points to packed values: + // args points to packed values: // bytes 0-3: selectedPals (bitfield) // byte 4: delay // byte 5: startY @@ -1969,126 +2186,128 @@ static u32 BerryCrushCommand_BeginNormalPaletteFade(struct BerryCrushGame *game, u16 color; u32 selectedPals[2]; - selectedPals[0] = (u32)params[0]; - selectedPals[1] = (u32)params[1]; + selectedPals[0] = (u32)args[0]; + selectedPals[1] = (u32)args[1]; selectedPals[1] <<= 8; selectedPals[0] |= selectedPals[1]; - selectedPals[1] = (u32)params[2]; + selectedPals[1] = (u32)args[2]; selectedPals[1] <<= 16; selectedPals[0] |= selectedPals[1]; - selectedPals[1] = (u32)params[3]; + selectedPals[1] = (u32)args[3]; selectedPals[1] <<= 24; selectedPals[0] |= selectedPals[1]; - params[0] = params[9]; + args[0] = args[9]; - color = params[8]; + color = args[8]; color <<= 8; - color |= params[7]; + color |= args[7]; gPaletteFade.bufferTransferDisabled = FALSE; - BeginNormalPaletteFade(selectedPals[0], params[4], params[5], params[6], color); + BeginNormalPaletteFade(selectedPals[0], args[4], args[5], args[6], color); UpdatePaletteFade(); - game->nextCmd = 2; + game->nextCmd = CMD_WAIT_FADE; return 0; } -static u32 BerryCrushCommand_WaitPaletteFade(struct BerryCrushGame *r4, u8 *r5) +static u32 Cmd_WaitPaletteFade(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { case 0: if (UpdatePaletteFade()) return 0; - if(r5[0] != 0) - ++r4->cmdState; + if(args[0] != 0) + game->cmdState++; else - r4->cmdState = 3; + game->cmdState = 3; return 0; case 1: Rfu_SetLinkStandbyCallback(); - ++r4->cmdState; + game->cmdState++; return 0; case 2: if (IsLinkTaskFinished()) { - ++r4->cmdState; + game->cmdState++; return 0; } return 0; case 3: - BerryCrush_RunOrScheduleCommand(r4->afterPalFadeCmd, 1, NULL); - r4->cmdState = 0; + RunOrScheduleCommand(game->afterPalFadeCmd, SCHEDULE_CMD, NULL); + game->cmdState = 0; return 0; default: - ++r4->cmdState; + game->cmdState++; return 0; } } -static u32 BerryCrushCommand_PrintMessage(struct BerryCrushGame *r7, u8 *r5) +static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) { - u16 r4 = r5[3]; + u16 keys = args[3]; + keys <<= 8; + keys |= args[2]; - r4 <<= 8; - r4 |= r5[2]; - switch (r7->cmdState) + switch (game->cmdState) { case 0: DrawDialogueFrame(0, 0); - if (r5[1] & 2) + if (args[1] & F_MSG_EXPAND) { - StringExpandPlaceholders(gStringVar4, sBerryCrushMessages[r5[0]]); - AddTextPrinterParameterized2(0, 1, gStringVar4, r7->textSpeed, 0, 2, 1, 3); + StringExpandPlaceholders(gStringVar4, sMessages[args[0]]); + AddTextPrinterParameterized2(0, 1, gStringVar4, game->textSpeed, 0, 2, 1, 3); } else { - AddTextPrinterParameterized2(0, 1, sBerryCrushMessages[r5[0]], r7->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, 1, sMessages[args[0]], game->textSpeed, 0, 2, 1, 3); } CopyWindowToVram(0, 3); break; case 1: if (!IsTextPrinterActive(0)) { - if (r4 == 0) - ++r7->cmdState; + // If no wait keys are given, skip + // waiting state below + if (keys == 0) + game->cmdState++; break; } return 0; case 2: - if (!(r4 & gMain.newKeys)) + if (!JOY_NEW(keys)) return 0; break; case 3: - if (r5[1] & 1) + if (args[1] & F_MSG_CLEAR) ClearDialogWindowAndFrame(0, 1); - BerryCrush_RunOrScheduleCommand(r7->nextCmd, 1, NULL); - r7->cmdState = r5[4]; + RunOrScheduleCommand(game->nextCmd, SCHEDULE_CMD, NULL); + game->cmdState = args[4]; return 0; } - ++r7->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_InitGfx(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_ShowGameDisplay(struct BerryCrushGame *game, u8 *args) { - if (InitBerryCrushDisplay() != 0) - BerryCrush_RunOrScheduleCommand(r4->nextCmd, 0, r4->commandParams); + if (ShowGameDisplay()) + RunOrScheduleCommand(game->nextCmd, RUN_CMD, game->commandArgs); return 0; } -static u32 BerryCrushCommand_TeardownGfx(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_HideGameDisplay(struct BerryCrushGame *game, u8 *args) { - if (BerryCrush_TeardownBgs() != 0) - BerryCrush_RunOrScheduleCommand(r4->nextCmd, 0, r4->commandParams); + if (HideGameDisplay()) + RunOrScheduleCommand(game->nextCmd, RUN_CMD, game->commandArgs); return 0; } -static u32 BerryCrushCommand_SignalReadyToBegin(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_SignalReadyToBegin(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { case 0: Rfu_SetLinkStandbyCallback(); @@ -2097,55 +2316,55 @@ static u32 BerryCrushCommand_SignalReadyToBegin(struct BerryCrushGame *r4, __att if (IsLinkTaskFinished()) { PlayNewMapMusic(MUS_RG_GAME_CORNER); - BerryCrush_RunOrScheduleCommand(7, 1, NULL); - r4->gameState = 3; - r4->cmdState = 0; + RunOrScheduleCommand(CMD_ASK_PICK_BERRY, SCHEDULE_CMD, NULL); + game->gameState = STATE_PICK_BERRY; + game->cmdState = 0; } return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_AskPickBerry(struct BerryCrushGame *r4, u8 *r5) +static u32 Cmd_AskPickBerry(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { default: - ++r4->cmdState; + game->cmdState++; break; case 0: - sub_8024578(r4); - BerryCrush_SetShowMessageParams(r5, 0, 1, 0, 1); - r4->nextCmd = 7; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); + ResetGame(game); + SetPrintMessageArgs(args, MSG_PICK_BERRY, F_MSG_CLEAR, 0, 1); + game->nextCmd = CMD_ASK_PICK_BERRY; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); break; case 1: - r4->nextCmd = 8; - BerryCrush_RunOrScheduleCommand(5, 1, NULL); - r4->cmdState = 2; + game->nextCmd = CMD_PICK_BERRY; + RunOrScheduleCommand(CMD_HIDE_GAME, SCHEDULE_CMD, NULL); + game->cmdState = 2; break; } return 0; } -static u32 BerryCrushCommand_GoToBerryPouch(struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1) +static u32 Cmd_GoToBerryPouch(struct BerryCrushGame *game, u8 *args) { - r0->cmdCallback = NULL; - SetMainCallback2(BerryCrush_SetupMainTask); + game->cmdCallback = NULL; + SetMainCallback2(ChooseBerry); return 0; } -static u32 BerryCrushCommand_WaitForOthersToPickBerries(struct BerryCrushGame *r5, u8 *r2) +static u32 Cmd_WaitForOthersToPickBerries(struct BerryCrushGame *game, u8 *args) { - u8 r3; + u8 i; - switch (r5->cmdState) + switch (game->cmdState) { case 0: - BerryCrush_SetShowMessageParams(r2, 1, 0, 0, 1); - r5->nextCmd = 9; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); + SetPrintMessageArgs(args, MSG_WAIT_PICK, 0, 0, 1); + game->nextCmd = CMD_WAIT_BERRIES; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); return 0; case 1: Rfu_SetLinkStandbyCallback(); @@ -2153,126 +2372,131 @@ static u32 BerryCrushCommand_WaitForOthersToPickBerries(struct BerryCrushGame *r case 2: if (!IsLinkTaskFinished()) return 0; - memset(r5->sendCmd, 0, sizeof(r5->sendCmd)); - r5->sendCmd[0] = r5->unk98[r5->localId].unkC; - SendBlock(0, r5->sendCmd, 2); + + // Send player's chosen berry to partners + memset(game->sendCmd, 0, sizeof(game->sendCmd)); + game->sendCmd[0] = game->players[game->localId].berryId; + SendBlock(0, game->sendCmd, 2); break; case 3: if (!IsLinkTaskFinished()) return 0; - r5->unk10 = 0; + game->cmdTimer = 0; break; case 4: - if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[r5->playerCount - 2]) + // Wait for partners responses + if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[game->playerCount - 2]) return 0; - for (r3 = 0; r3 < r5->playerCount; ++r3) + + // Read partners chosen berries + for (i = 0; i < game->playerCount; i++) { - r5->unk98[r3].unkC = gBlockRecvBuffer[r3][0]; - if (r5->unk98[r3].unkC > 0xB0) - r5->unk98[r3].unkC = 0; - r5->unk18 += gUnknown_0858AB24[r5->unk98[r3].unkC].unk0; - r5->powder += gUnknown_0858AB24[r5->unk98[r3].unkC].unk1; + game->players[i].berryId = gBlockRecvBuffer[i][0]; + if (game->players[i].berryId > LAST_BERRY_INDEX + 1) + game->players[i].berryId = 0; + game->targetAPresses += gBerryCrush_BerryData[game->players[i].berryId].difficulty; + game->powder += gBerryCrush_BerryData[game->players[i].berryId].powder; } - r5->unk10 = 0; + game->cmdTimer = 0; ResetBlockReceivedFlags(); - r5->unk20 = MathUtil_Div32(Q_24_8(r5->unk18), Q_24_8(32)); + game->targetDepth = MathUtil_Div32(Q_24_8(game->targetAPresses), Q_24_8(32)); break; case 5: ClearDialogWindowAndFrame(0, 1); - BerryCrush_RunOrScheduleCommand(10, 1, NULL); - r5->gameState = 4; - r5->cmdState = 0; + RunOrScheduleCommand(CMD_DROP_BERRIES, SCHEDULE_CMD, NULL); + game->gameState = STATE_DROP_BERRIES; + game->cmdState = 0; return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_DropBerriesIntoCrusher(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_DropBerriesIntoCrusher(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { case 0: - BerryCrush_CreateBerrySprites(r4, &r4->unk138); + CreateBerrySprites(game, &game->gfx); Rfu_SetLinkStandbyCallback(); break; case 1: if (!IsLinkTaskFinished()) return 0; - r4->unk138.animBerryIdx = 0; - r4->unk138.unk1 = 0; - r4->unk138.unk2 = 0; - r4->unk138.unk3 = 0; + game->gfx.counter = 0; + game->gfx.vibrationIdx = 0; + game->gfx.numVibrations = 0; + game->gfx.vibrating = FALSE; break; case 2: - r4->unk138.berrySprites[r4->unk138.animBerryIdx]->callback = SpriteCB_DropBerryIntoCrusher; - r4->unk138.berrySprites[r4->unk138.animBerryIdx]->affineAnimPaused = FALSE; + game->gfx.berrySprites[game->gfx.counter]->callback = SpriteCB_DropBerryIntoCrusher; + game->gfx.berrySprites[game->gfx.counter]->affineAnimPaused = FALSE; PlaySE(SE_BALL_THROW); break; case 3: - if (r4->unk138.berrySprites[r4->unk138.animBerryIdx]->callback == SpriteCB_DropBerryIntoCrusher) + if (game->gfx.berrySprites[game->gfx.counter]->callback == SpriteCB_DropBerryIntoCrusher) return 0; - r4->unk138.berrySprites[r4->unk138.animBerryIdx] = NULL; - ++r4->unk138.animBerryIdx; + game->gfx.berrySprites[game->gfx.counter] = NULL; + game->gfx.counter++; Rfu_SetLinkStandbyCallback(); break; case 4: if (!IsLinkTaskFinished()) return 0; - if (r4->unk138.animBerryIdx < r4->playerCount) + if (game->gfx.counter < game->playerCount) { - r4->cmdState = 2; + game->cmdState = 2; return 0; } - r4->unk138.animBerryIdx = 0; + game->gfx.counter = 0; break; case 5: - BerryCrushFreeBerrySpriteGfx(r4, &r4->unk138); + BerryCrushFreeBerrySpriteGfx(game, &game->gfx); Rfu_SetLinkStandbyCallback(); break; case 6: if (!IsLinkTaskFinished()) return 0; PlaySE(SE_FALL); - BerryCrush_RunOrScheduleCommand(11, 1, NULL); - r4->gameState = 5; - r4->cmdState = 0; + RunOrScheduleCommand(CMD_DROP_LID, SCHEDULE_CMD, NULL); + game->gameState = STATE_DROP_LID; + game->cmdState = 0; return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_DropLid(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_DropLid(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { case 0: - r4->depth += 4; - if (r4->depth < 0) + game->depth += 4; + if (game->depth < 0) return 0; - r4->depth = 0; - r4->unk138.unk1 = 4; - r4->unk138.animBerryIdx = 0; - r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + game->depth = 0; + game->gfx.vibrationIdx = 4; + game->gfx.counter = 0; + game->gfx.numVibrations = sIntroOutroVibrationData[game->gfx.vibrationIdx][0]; PlaySE(SE_M_STRENGTH); break; case 1: - r4->vibration = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.animBerryIdx]; - SetGpuReg(REG_OFFSET_BG0VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG2VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG3VOFS, -r4->vibration); - ++r4->unk138.animBerryIdx; - if (r4->unk138.animBerryIdx < r4->unk138.unk2) + game->vibration = sIntroOutroVibrationData[game->gfx.vibrationIdx][game->gfx.counter]; + SetGpuReg(REG_OFFSET_BG0VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG2VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG3VOFS, -game->vibration); + game->gfx.counter++; + if (game->gfx.counter < game->gfx.numVibrations) return 0; - if (r4->unk138.unk1 == 0) + if (game->gfx.vibrationIdx == 0) break; - --r4->unk138.unk1; - r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; - r4->unk138.animBerryIdx = 0; + game->gfx.vibrationIdx--; + game->gfx.numVibrations = sIntroOutroVibrationData[game->gfx.vibrationIdx][0]; + game->gfx.counter = 0; return 0; case 2: - r4->vibration = 0; + game->vibration = 0; SetGpuReg(REG_OFFSET_BG0VOFS, 0); SetGpuReg(REG_OFFSET_BG2VOFS, 0); SetGpuReg(REG_OFFSET_BG3VOFS, 0); @@ -2281,18 +2505,18 @@ static u32 BerryCrushCommand_DropLid(struct BerryCrushGame *r4, __attribute__(( case 3: if (!IsLinkTaskFinished()) return 0; - BerryCrush_RunOrScheduleCommand(12, 1, NULL); - r4->gameState = 6; - r4->cmdState = 0; + RunOrScheduleCommand(CMD_COUNTDOWN, SCHEDULE_CMD, NULL); + game->gameState = STATE_COUNTDOWN; + game->cmdState = 0; return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_Countdown(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_Countdown(struct BerryCrushGame *game, u8 *args) { - switch (r4-> cmdState) + switch (game->cmdState) { case 1: if (!IsLinkTaskFinished()) @@ -2309,405 +2533,442 @@ static u32 BerryCrushCommand_Countdown(struct BerryCrushGame *r4, __attribute__ case 3: if (!IsLinkTaskFinished()) return 0; - r4->unk138.animBerryIdx = 0; - r4->unk138.unk1 = 0; - r4->unk138.unk2 = 0; - r4->unk138.unk3 = 0; - r4->unk10 = 0; - if (r4->localId == 0) - BerryCrush_RunOrScheduleCommand(13, 1, NULL); + game->gfx.counter = 0; + game->gfx.vibrationIdx = 0; + game->gfx.numVibrations = 0; + game->gfx.vibrating = FALSE; + game->cmdTimer = 0; + if (game->localId == 0) + RunOrScheduleCommand(CMD_PLAY_GAME_LEADER, SCHEDULE_CMD, NULL); else - BerryCrush_RunOrScheduleCommand(14, 1, NULL); - r4->gameState = 7; - r4->cmdState = 0; + RunOrScheduleCommand(CMD_PLAY_GAME_MEMBER, SCHEDULE_CMD, NULL); + game->gameState = STATE_PLAYING; + game->cmdState = 0; return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -void BerryCrush_ProcessGamePartnerInput(struct BerryCrushGame *r4) +// Receive and process data from all players +// Only used by the link leader +static void HandlePartnerInput(struct BerryCrushGame *game) { - u8 r8 = 0; - u8 r7 = 0; - u16 r3; - s32 r2_ = 0; - struct BerryCrushGame_4E *r2; + u8 numPlayersPressed = 0; + u8 i = 0; + u16 timeDiff; + s32 temp = 0; + struct BerryCrushGame_LinkState *linkState; - for (r7 = 0; r7 < r4->playerCount; r7++) + for (i = 0; i < game->playerCount; i++) { - r2 = (struct BerryCrushGame_4E *)gRecvCmds[r7]; - if ((r2->unk0 & 0xFF00) != RFUCMD_SEND_PACKET) + linkState = (struct BerryCrushGame_LinkState *)gRecvCmds[i]; + + // Skip player if we have not received a packet from them + if ((linkState->rfuCmd & 0xFF00) != RFUCMD_SEND_PACKET) continue; - if (r2->unk2 != 2) + if (linkState->sendFlag != SEND_GAME_STATE) continue; - if (r2->unk4_2) + if (linkState->pushedAButton) { - r4->localState.unk02_3 |= gUnknown_082F325C[r7]; - r4->unk98[r7].unk1C = 1; - ++r4->unk98[r7].unk16; - ++r8; - r3 = r4->timer - r4->unk98[r7].unkE; - if (r3 >= r4->unk98[r7].unk12 - 1 && r3 <= r4->unk98[r7].unk12 + 1) + game->localState.playerPressedAFlags |= sBitTable[i]; + game->players[i].inputState = INPUT_STATE_HIT; + game->players[i].numAPresses++; + numPlayersPressed++; + timeDiff = game->timer - game->players[i].inputTime; + + // If the interval between inputs is regular, the input is considered "neat" + // This counts toward the player's neatness score + if (timeDiff >= game->players[i].timeSincePrevInput - 1 + && timeDiff <= game->players[i].timeSincePrevInput + 1) { - ++r4->unk98[r7].unk10; - r4->unk98[r7].unk12 = r3; - if (r4->unk98[r7].unk10 > r4->unk98[r7].unk14) - r4->unk98[r7].unk14 = r4->unk98[r7].unk10; + // On neat input streak + game->players[i].neatInputStreak++; + game->players[i].timeSincePrevInput = timeDiff; + if (game->players[i].neatInputStreak > game->players[i].maxNeatInputStreak) + game->players[i].maxNeatInputStreak = game->players[i].neatInputStreak; } else { - r4->unk98[r7].unk10 = 0; - r4->unk98[r7].unk12 = r3; + // End neat input streak + game->players[i].neatInputStreak = 0; + game->players[i].timeSincePrevInput = timeDiff; } - r4->unk98[r7].unkE = r4->timer; - ++r4->unk98[r7].unk1B; - if (r4->unk98[r7].unk1B > 2) - r4->unk98[r7].unk1B = 0; + + game->players[i].inputTime = game->timer; + game->players[i].inputFlags++; + if (game->players[i].inputFlags > F_INPUT_HIT_B) + game->players[i].inputFlags = 0; } else { - r4->unk98[r7].unk1C = 0; + game->players[i].inputState = INPUT_STATE_NONE; } } - if (r8 > 1) + if (numPlayersPressed > 1) { - for (r7 = 0; r7 < r4->playerCount; ++r7) + // For each player that pressed A, flag their input as synchronous + // This is used to change their impact sprite to a big impact + for (i = 0; i < game->playerCount; i++) { - if (!r4->unk98[r7].unk1C) + if (game->players[i].inputState == INPUT_STATE_NONE) continue; - r4->unk98[r7].unk1C |= 2; - ++r4->unk98[r7].unk18; + game->players[i].inputState |= INPUT_STATE_HIT_SYNC; + game->players[i].numSyncedAPresses++; } } - if (r8 == 0) + if (numPlayersPressed == 0) return; - r4->unk2E += r8; - r8 += gUnknown_082F3264[r8 - 1]; - r4->unk34 += r8; - r4->unk1A += r8; - if (r4->unk18 - r4->unk1A > 0) - { - r2_ = (s32)r4->unk1A; - r2_ <<= 8; - r2_ = MathUtil_Div32(r2_, r4->unk20); - r2_ >>= 8; - r4->unk24 = (u8)r2_; + game->bigSparkleCounter += numPlayersPressed; + numPlayersPressed += sSyncPressBonus[numPlayersPressed - 1]; + game->sparkleCounter += numPlayersPressed; + game->totalAPresses += numPlayersPressed; + if (game->targetAPresses - game->totalAPresses > 0) + { + temp = (s32)game->totalAPresses; + temp = Q_24_8(temp); + temp = MathUtil_Div32(temp, game->targetDepth); + temp = Q_24_8_TO_INT(temp); + game->newDepth = (u8)temp; return; } - r4->unk24 = 32; - r4->localState.unk02_0 = 1; + // Target number of A presses has been reached, game is complete + game->newDepth = 32; + game->localState.endGame = TRUE; } -void BerryCrush_BuildLocalState(struct BerryCrushGame *r3) +// Updates the crusher, input flags, and timer to send to group members +// Only used by the link leader +static void UpdateLeaderGameState(struct BerryCrushGame *game) { - u8 r6 = 0; - u16 r1 = 0; - u16 r2 = 0; - u8 r4 = 0; + u8 numPlayersPressed = 0; + u16 flags = 0; + u16 temp = 0; + u8 i = 0; - for (r4 = 0; r4 < r3->playerCount; ++r4) + for (i = 0; i < game->playerCount; i++) { - if (r3->unk98[r4].unk1C != 0) + if (game->players[i].inputState != INPUT_STATE_NONE) { - ++r6; - r1 = r3->unk98[r4].unk1B + 1; - if (r3->unk98[r4].unk1C & 2) - r1 |= 4; - r1 <<= 3 * r4; - r3->localState.unk08 |= r1; + numPlayersPressed++; + flags = game->players[i].inputFlags + F_INPUT_HIT_A; + if (game->players[i].inputState & INPUT_STATE_HIT_SYNC) + flags |= F_INPUT_HIT_SYNC; + flags <<= INPUT_FLAGS_PER_PLAYER * i; + game->localState.inputFlags |= flags; } } - r2 = (u16)r3->unk24; - r3->localState.unk04 = r2; - if (r6 == 0) + temp = (u16)game->newDepth; + game->localState.depth = temp; + if (numPlayersPressed == 0) { - if (r3->unk138.unk3 != 0) - ++r3->unk138.animBerryIdx; + if (game->gfx.vibrating) + game->gfx.counter++; } - else if (r3->unk138.unk3 != 0) + else if (game->gfx.vibrating) { - if (r6 != r3->unk138.unk1) + if (numPlayersPressed != game->gfx.vibrationIdx) { - r3->unk138.unk1 = r6 - 1; - r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0]; + game->gfx.vibrationIdx = numPlayersPressed - 1; + game->gfx.numVibrations = sVibrationData[numPlayersPressed - 1][0]; } else { - ++r3->unk138.animBerryIdx; + game->gfx.counter++; } } else { - r3->unk138.animBerryIdx = 0; - r3->unk138.unk1 = r6 - 1; - r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0]; - r3->unk138.unk3 = 1; + game->gfx.counter = 0; + game->gfx.vibrationIdx = numPlayersPressed - 1; + game->gfx.numVibrations = sVibrationData[numPlayersPressed - 1][0]; + game->gfx.vibrating = TRUE; } - if (r3->unk138.unk3 != 0) + if (game->gfx.vibrating) { - if (r3->unk138.animBerryIdx >= r3->unk138.unk2) + if (game->gfx.counter >= game->gfx.numVibrations) { - r3->unk138.animBerryIdx = 0; - r3->unk138.unk1 = 0; - r3->unk138.unk2 = 0; - r3->unk138.unk3 = 0; - r1 = 0; + game->gfx.counter = 0; + game->gfx.vibrationIdx = 0; + game->gfx.numVibrations = 0; + game->gfx.vibrating = FALSE; + temp = 0; } else { - r1 = gUnknown_082F3290[r3->unk138.unk1][r3->unk138.animBerryIdx + 1]; + temp = sVibrationData[game->gfx.vibrationIdx][game->gfx.counter + 1]; } - r3->localState.unk03 = (u8)r1; + game->localState.vibration = (u8)temp; } else { - r3->localState.unk03 = 0; + game->localState.vibration = 0; } - r3->localState.unk06 = r3->unk26; + game->localState.timer = game->leaderTimer; } -void BerryCrush_HandlePlayerInput(struct BerryCrushGame *r5) +// Checks for input and sends data to group members +static void HandlePlayerInput(struct BerryCrushGame *game) { if (JOY_NEW(A_BUTTON)) - r5->localState.pushedAButton = 1; + game->localState.pushedAButton = TRUE; + if (JOY_HELD(A_BUTTON)) { - if (r5->unk98[r5->localId].unk1A < r5->timer) - ++r5->unk98[r5->localId].unk1A; + if (game->players[game->localId].timePressingA < game->timer) + game->players[game->localId].timePressingA++; } - if (r5->localId != 0 && r5->localState.pushedAButton == 0) + + // Only send data to other players if you are the leader or you pressed A + if (game->localId != 0 && !game->localState.pushedAButton) return; - r5->localState.unk00 = 2; - if (r5->timer % 30 == 0) + game->localState.sendFlag = SEND_GAME_STATE; + + // Every 30 frames, check whether the sparkles produced should be big, + // depending on how many A presses there were in that time + if (game->timer % 30 == 0) { - if (r5->unk2E > gUnknown_082F4444[r5->playerCount - 2]) + if (game->bigSparkleCounter > sBigSparkleThresholds[game->playerCount - 2]) { - ++r5->unk30; - r5->unk25_4 = 1; + game->numBigSparkles++; + game->bigSparkle = TRUE; } else { - r5->unk25_4 = 0; + game->bigSparkle = FALSE; } - r5->unk2E = 0; - ++r5->unk32; - } - if (r5->timer % 15 == 0) - { - if (r5->unk34 < gUnknown_082F4434[r5->playerCount - 2][0]) - r5->unk25_5 = 0; - else if (r5->unk34 < gUnknown_082F4434[r5->playerCount - 2][1]) - r5->unk25_5 = 1; - else if (r5->unk34 < gUnknown_082F4434[r5->playerCount - 2][2]) - r5->unk34 = 2; // typo since r5->unk34 will be reset? - else if (r5->unk34 < gUnknown_082F4434[r5->playerCount - 2][3]) - r5->unk34 = 3; // typo since r5->unk34 will be reset? + game->bigSparkleCounter = 0; + game->numBigSparkleChecks++; + } + + // Every 15 frames, update the amount of sparkles that should be produced, + // depending on how many A presses there were in that time (including the bonus) + if (game->timer % 15 == 0) + { + // BUG: The wrong field is used twice below + // As a result, only a sparkleAmount of 0, 1, or 4 is attainable + #ifdef BUGFIX + #define field sparkleAmount + #else + #define field sparkleCounter + #endif + + if (game->sparkleCounter < sSparkleThresholds[game->playerCount - 2][0]) + game->sparkleAmount = 0; + else if (game->sparkleCounter < sSparkleThresholds[game->playerCount - 2][1]) + game->sparkleAmount = 1; + else if (game->sparkleCounter < sSparkleThresholds[game->playerCount - 2][2]) + game->field = 2; + else if (game->sparkleCounter < sSparkleThresholds[game->playerCount - 2][3]) + game->field = 3; else - r5->unk25_5 = 4; - r5->unk34 = 0; + game->sparkleAmount = 4; + game->sparkleCounter = 0; + + #undef field } else { - ++r5->unk10; - if (r5->unk10 > 60) + game->cmdTimer++; + if (game->cmdTimer > 60) { - if (r5->unk10 > 70) + if (game->cmdTimer > 70) { ClearRecvCommands(); - r5->unk10 = 0; + game->cmdTimer = 0; } - else if (r5->localState.unk02_3 == 0) + else if (game->localState.playerPressedAFlags == 0) { ClearRecvCommands(); - r5->unk10 = 0; + game->cmdTimer = 0; } } } - if (r5->timer >= 36000) - r5->localState.unk02_0 = 1; - r5->localState.unk02_1 = r5->unk25_4; - r5->localState.unk0A = r5->unk25_5; - memcpy(r5->sendCmd, &r5->localState, sizeof(r5->sendCmd)); - Rfu_SendPacket(r5->sendCmd); + if (game->timer >= MAX_TIME) + game->localState.endGame = TRUE; + game->localState.bigSparkle = game->bigSparkle; + game->localState.sparkleAmount = game->sparkleAmount; + memcpy(game->sendCmd, &game->localState, sizeof(game->sendCmd)); + Rfu_SendPacket(game->sendCmd); } -void BerryCrush_UpdateGameState(struct BerryCrushGame *r5) +static void RecvLinkData(struct BerryCrushGame *game) { - u8 r4 = 0; - struct BerryCrushGame_4E *r4_ = NULL; + u8 i = 0; + struct BerryCrushGame_LinkState *linkState = NULL; + + for (i = 0; i < game->playerCount; i++) + game->players[i].inputState = INPUT_STATE_NONE; - for (r4 = 0; r4 < r5->playerCount; r4++) - r5->unk98[r4].unk1C = 0; if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) { - r5->unk25_2 = 0; + game->playedSound = FALSE; return; } if (gRecvCmds[0][1] != 2) { - r5->unk25_2 = 0; + game->playedSound = FALSE; return; } - memcpy(r5->recvCmd, gRecvCmds[0], 14); - r4_ = (struct BerryCrushGame_4E *)&r5->recvCmd; - r5->depth = r4_->unk6; - r5->vibration = (s16)r4_->unk5; - r5->timer = r4_->unk8; - sub_80216E0(r5, &(r5->unk138)); - if (r4_->unk4_0) - { - r5->unk25_3 = 1; - } + memcpy(game->recvCmd, gRecvCmds[0], sizeof(game->recvCmd)); + linkState = (struct BerryCrushGame_LinkState *)&game->recvCmd; + game->depth = linkState->depth; + game->vibration = (s16)linkState->vibration; + game->timer = linkState->timer; + UpdateInputEffects(game, &(game->gfx)); + + if (linkState->endGame) + game->endGame = TRUE; } -static u32 BerryCrushCommand_PlayGame_Master(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_PlayGame_Leader(struct BerryCrushGame *game, u8 *args) { - memset(&r4->localState, 0, sizeof(r4->localState)); - memset(&r4->recvCmd, 0, sizeof(r4->recvCmd)); - BerryCrush_UpdateGameState(r4); - SetGpuReg(REG_OFFSET_BG0VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG2VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG3VOFS, -r4->vibration); - if (r4->unk25_3) + memset(&game->localState, 0, sizeof(game->localState)); + memset(&game->recvCmd, 0, sizeof(game->recvCmd)); + RecvLinkData(game); + SetGpuReg(REG_OFFSET_BG0VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG2VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG3VOFS, -game->vibration); + if (game->endGame) { - if (r4->timer >= 36000) + if (game->timer >= MAX_TIME) { - r4->timer = 36000; - BerryCrush_RunOrScheduleCommand(16, 1, NULL); + game->timer = MAX_TIME; + RunOrScheduleCommand(CMD_TIMES_UP, SCHEDULE_CMD, NULL); } else { - BerryCrush_RunOrScheduleCommand(15, 1, NULL); + RunOrScheduleCommand(CMD_FINISH_GAME, SCHEDULE_CMD, NULL); } - r4->unk10 = 0; - r4->cmdState = 0; + game->cmdTimer = 0; + game->cmdState = 0; return 0; } else { - ++r4->unk26; - BerryCrush_ProcessGamePartnerInput(r4); - BerryCrush_BuildLocalState(r4); - BerryCrush_HandlePlayerInput(r4); + game->leaderTimer++; + HandlePartnerInput(game); + UpdateLeaderGameState(game); + HandlePlayerInput(game); return 0; } } -static u32 BerryCrushCommand_PlayGame_Slave(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_PlayGame_Member(struct BerryCrushGame *game, u8 *args) { - memset(&r4->localState, 0, sizeof(r4->localState)); - memset(&r4->recvCmd, 0, sizeof(r4->recvCmd)); - BerryCrush_UpdateGameState(r4); - SetGpuReg(REG_OFFSET_BG0VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG2VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG3VOFS, -r4->vibration); - if (r4->unk25_3) + memset(&game->localState, 0, sizeof(game->localState)); + memset(&game->recvCmd, 0, sizeof(game->recvCmd)); + RecvLinkData(game); + SetGpuReg(REG_OFFSET_BG0VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG2VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG3VOFS, -game->vibration); + if (game->endGame) { - if (r4->timer >= 36000) + if (game->timer >= MAX_TIME) { - r4->timer = 36000; - BerryCrush_RunOrScheduleCommand(16, 1, NULL); + game->timer = MAX_TIME; + RunOrScheduleCommand(CMD_TIMES_UP, SCHEDULE_CMD, NULL); } else { - BerryCrush_RunOrScheduleCommand(15, 1, NULL); + RunOrScheduleCommand(CMD_FINISH_GAME, SCHEDULE_CMD, NULL); } - r4->unk10 = 0; - r4->cmdState = 0; + game->cmdTimer = 0; + game->cmdState = 0; return 0; } else { - BerryCrush_HandlePlayerInput(r4); + HandlePlayerInput(game); return 0; } } -static u32 BerryCrushCommand_FinishGame(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +// Game was 'won', crusher was pushed down fully before time was up +static u32 Cmd_FinishGame(struct BerryCrushGame *game, u8 *args) { - switch (r4->cmdState) + switch (game->cmdState) { case 0: - r4->gameState = 8; + game->gameState = STATE_FINISHED; PlaySE(SE_M_STRENGTH); BlendPalettes(PALETTES_ALL, 8, RGB(31, 31, 0)); - r4->unk138.animBerryIdx = 2; + game->gfx.counter = 2; break; case 1: - if (--r4->unk138.animBerryIdx != 255) + if (--game->gfx.counter != (u8)-1) return 0; BlendPalettes(PALETTES_ALL, 0, RGB(31, 31, 0)); - r4->unk138.unk1 = 4; - r4->unk138.animBerryIdx = 0; - r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; + game->gfx.vibrationIdx = 4; + game->gfx.counter = 0; + game->gfx.numVibrations = sIntroOutroVibrationData[game->gfx.vibrationIdx][0]; break; case 2: - r4->vibration = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.animBerryIdx]; - SetGpuReg(REG_OFFSET_BG0VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG2VOFS, -r4->vibration); - SetGpuReg(REG_OFFSET_BG3VOFS, -r4->vibration); - if (++r4->unk138.animBerryIdx < r4->unk138.unk2) + game->vibration = sIntroOutroVibrationData[game->gfx.vibrationIdx][game->gfx.counter]; + SetGpuReg(REG_OFFSET_BG0VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG2VOFS, -game->vibration); + SetGpuReg(REG_OFFSET_BG3VOFS, -game->vibration); + if (++game->gfx.counter < game->gfx.numVibrations) return 0; - if (r4->unk138.unk1 != 0) + if (game->gfx.vibrationIdx != 0) { - --r4->unk138.unk1; - r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0]; - r4->unk138.animBerryIdx = 0; + game->gfx.vibrationIdx--; + game->gfx.numVibrations = sIntroOutroVibrationData[game->gfx.vibrationIdx][0]; + game->gfx.counter = 0; return 0; } break; case 3: - r4->vibration = 0; + game->vibration = 0; SetGpuReg(REG_OFFSET_BG0VOFS, 0); SetGpuReg(REG_OFFSET_BG2VOFS, 0); SetGpuReg(REG_OFFSET_BG3VOFS, 0); break; case 4: - if (!sub_80218D4(r4, &r4->unk138)) + if (!AreEffectsFinished(game, &game->gfx)) return 0; Rfu_SetLinkStandbyCallback(); - r4->unk10 = 0; + game->cmdTimer = 0; break; case 5: if (!IsLinkTaskFinished()) return 0; - BerryCrush_RunOrScheduleCommand(17, 1, NULL); - r4->unk10 = 0; - r4->cmdState = 0; + RunOrScheduleCommand(CMD_CALC_RESULTS, SCHEDULE_CMD, NULL); + game->cmdTimer = 0; + game->cmdState = 0; return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_HandleTimeUp(struct BerryCrushGame *r5, u8 *r6) +static u32 Cmd_HandleTimeUp(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: - r5->gameState = 9; + game->gameState = STATE_TIMES_UP; PlaySE(SE_FAILURE); BlendPalettes(PALETTES_ALL, 8, RGB(31, 0, 0)); - r5->unk138.animBerryIdx = 4; + game->gfx.counter = 4; break; case 1: - if (--r5->unk138.animBerryIdx != 255) + if (--game->gfx.counter != (u8)-1) return 0; BlendPalettes(PALETTES_ALL, 0, RGB(31, 0, 0)); - r5->unk138.animBerryIdx = 0; + game->gfx.counter = 0; break; case 2: - if (!sub_80218D4(r5, &r5->unk138)) + if (!AreEffectsFinished(game, &game->gfx)) return 0; Rfu_SetLinkStandbyCallback(); - r5->unk10 = 0; + game->cmdTimer = 0; SetGpuReg(REG_OFFSET_BG0VOFS, 0); SetGpuReg(REG_OFFSET_BG2VOFS, 0); SetGpuReg(REG_OFFSET_BG3VOFS, 0); @@ -2715,235 +2976,264 @@ static u32 BerryCrushCommand_HandleTimeUp(struct BerryCrushGame *r5, u8 *r6) case 3: if (!IsLinkTaskFinished()) return 0; - ConvertIntToDecimalStringN(gStringVar1, r5->powder, STR_CONV_MODE_LEFT_ALIGN, 6); - BerryCrush_SetShowMessageParams(r6, 7, 1, 0, 0); - r5->nextCmd = 19; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); - r5->unk10 = 0; - r5->cmdState = 0; + ConvertIntToDecimalStringN(gStringVar1, game->powder, STR_CONV_MODE_LEFT_ALIGN, 6); + SetPrintMessageArgs(args, MSG_TIMES_UP, F_MSG_CLEAR, 0, 0); + game->nextCmd = CMD_SAVE; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); + game->cmdTimer = 0; + game->cmdState = 0; return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_TabulateResults(struct BerryCrushGame *r7, __attribute__((unused)) u8 *r1) +static u32 Cmd_TabulateResults(struct BerryCrushGame *game, u8 *args) { - u8 r8, r4_, r3; - s32 r2; - s32 r4; - u16 r6; + u8 i, j, tempPlayerId; + s32 temp1, temp2; + u16 tempStat; - switch (r7->cmdState) + switch (game->cmdState) { case 0: - memset(r7->sendCmd, 0, 2 * sizeof(u16)); - if (r7->unk98[r7->localId].unk1A > r7->timer) - r7->unk98[r7->localId].unk1A = r7->timer; - r7->sendCmd[0] = r7->unk98[r7->localId].unk1A; - SendBlock(0, r7->sendCmd, 2); + memset(game->sendCmd, 0, 2 * sizeof(u16)); + if (game->players[game->localId].timePressingA > game->timer) + game->players[game->localId].timePressingA = game->timer; + game->sendCmd[0] = game->players[game->localId].timePressingA; + SendBlock(0, game->sendCmd, 2); break; case 1: if (!IsLinkTaskFinished()) return 0; - r7->unk10 = 0; + game->cmdTimer = 0; break; case 2: - if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[r7->playerCount - 2]) + if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[game->playerCount - 2]) return 0; - for (r8 = 0; r8 < r7->playerCount; ++r8) - r7->unk98[r8].unk1A = gBlockRecvBuffer[r8][0]; - r7->unk10 = 0; - r7->sendCmd[0] = 0; + for (i = 0; i < game->playerCount; i++) + game->players[i].timePressingA = gBlockRecvBuffer[i][0]; + + game->cmdTimer = 0; + game->sendCmd[0] = 0; ResetBlockReceivedFlags(); - if (r7->localId == 0) - r7->cmdState = 3; + + // If player is not leader, skip the steps + // where the results are calculated and sent. + // Group members just read the results sent + // to them by the leader. + if (game->localId == 0) + game->cmdState = 3; else - r7->cmdState = 6; + game->cmdState = 6; return 0; case 3: - memset(&r7->unk68, 0, sizeof(struct BerryCrushGame_68)); - r7->unk68.unk04 = r7->timer; - r7->unk68.unk06 = r7->unk18 / (r7->timer / 60); - r2 = MathUtil_Mul32(Q_24_8(r7->unk30), Q_24_8(50)); - r2 = MathUtil_Div32(r2, Q_24_8(r7->unk32)) + Q_24_8(50); - r2 = Q_24_8_TO_INT(r2); - r7->unk68.unk08 = r2 & 0x7F; - r2 = Q_24_8(r2); - r2 = MathUtil_Div32(r2, Q_24_8(100)); - r4 = Q_24_8(r7->powder * r7->playerCount); - r4 = MathUtil_Mul32(r4, r2); - r7->unk68.unk00 = r4 >> 8; - r7->unk68.unk20[0][7] = Random() % 3; - for (r8 = 0; r8 < r7->playerCount; ++r8) + memset(&game->results, 0, sizeof(game->results)); + game->results.time = game->timer; + game->results.targetPressesPerSec = game->targetAPresses / (game->timer / 60); + + // Calculate silkiness + // Silkiness is the percentage of times big sparkles were produced when possible, + // which itself depends on the number of A presses every 30 frames + temp1 = MathUtil_Mul32(Q_24_8(game->numBigSparkles), Q_24_8(50)); + temp1 = MathUtil_Div32(temp1, Q_24_8(game->numBigSparkleChecks)) + Q_24_8(50); + temp1 = Q_24_8_TO_INT(temp1); + game->results.silkiness = temp1 & 0x7F; + + // Calculate amount of powder + temp1 = Q_24_8(temp1); + temp1 = MathUtil_Div32(temp1, Q_24_8(100)); + temp2 = Q_24_8(game->powder * game->playerCount); + temp2 = MathUtil_Mul32(temp2, temp1); + game->results.powder = Q_24_8_TO_INT(temp2); + + // Choose random second results page + game->results.randomPageId = Random() % NUM_RANDOM_RESULTS_PAGES; + + for (i = 0; i < game->playerCount; i++) { - r7->unk68.unk20[0][r8] = r8; - r7->unk68.unk20[1][r8] = r8; - r7->unk68.stats[0][r8] = r7->unk98[r8].unk16; - r7->unk68.unk0A += r7->unk68.stats[0][r8]; - switch (r7->unk68.unk20[0][7]) + game->results.playerIdsRanked[RESULTS_PAGE_PRESSES][i] = i; + game->results.playerIdsRanked[RESULTS_PAGE_RANDOM][i] = i; + game->results.stats[RESULTS_PAGE_PRESSES][i] = game->players[i].numAPresses; + game->results.totalAPresses += game->results.stats[RESULTS_PAGE_PRESSES][i]; + + // Calculate value for random second results page + switch (game->results.randomPageId) { - case 0: - if (r7->unk98[r8].unk16 != 0) + case RESULTS_PAGE_NEATNESS: + if (game->players[i].numAPresses != 0) { - r2 = r7->unk98[r8].unk14; - r2 = Q_24_8(r2); - r2 = MathUtil_Mul32(r2, Q_24_8(100)); - r4 = r7->unk98[r8].unk16; - r4 = Q_24_8(r4); - r4 = MathUtil_Div32(r2, r4); + // Calculate percentage of inputs that were in largest "neat" streak + // "Neat" inputs are those done at a regular interval + temp1 = game->players[i].maxNeatInputStreak; + temp1 = Q_24_8(temp1); + temp1 = MathUtil_Mul32(temp1, Q_24_8(100)); + temp2 = game->players[i].numAPresses; + temp2 = Q_24_8(temp2); + temp2 = MathUtil_Div32(temp1, temp2); } else { - r4 = 0; + temp2 = 0; } break; - case 1: - if (r7->unk98[r8].unk16 != 0) + case RESULTS_PAGE_COOPERATIVE: + if (game->players[i].numAPresses != 0) { - r2 = r7->unk98[r8].unk18; - r2 = Q_24_8(r2); - r2 = MathUtil_Mul32(r2, Q_24_8(100)); - r4 = r7->unk98[r8].unk16; - r4 = Q_24_8(r4); - r4 = MathUtil_Div32(r2, r4); + // Calculate percentage of inputs that were + // done at the same time as another player + temp1 = game->players[i].numSyncedAPresses; + temp1 = Q_24_8(temp1); + temp1 = MathUtil_Mul32(temp1, Q_24_8(100)); + temp2 = game->players[i].numAPresses; + temp2 = Q_24_8(temp2); + temp2 = MathUtil_Div32(temp1, temp2); } else { - r4 = 0; + temp2 = 0; } break; - case 2: - if (r7->unk98[r8].unk16 == 0) + case RESULTS_PAGE_POWER: + if (game->players[i].numAPresses == 0) { - r4 = 0; + temp2 = 0; } - else if (r7->unk98[r8].unk1A >= r7->timer) + else if (game->players[i].timePressingA >= game->timer) { - r4 = 0x6400; + // Spent 100% of the time pressing A + temp2 = Q_24_8(100); } else { - r2 = r7->unk98[r8].unk1A; - r2 = Q_24_8(r2); - r2 = MathUtil_Mul32(r2, Q_24_8(100)); - r4 = r7->timer; - r4 = Q_24_8(r4); - r4 = MathUtil_Div32(r2, r4); + // Calculate percentage of time the + // player spent pressing A + temp1 = game->players[i].timePressingA; + temp1 = Q_24_8(temp1); + temp1 = MathUtil_Mul32(temp1, Q_24_8(100)); + temp2 = game->timer; + temp2 = Q_24_8(temp2); + temp2 = MathUtil_Div32(temp1, temp2); } break; } - r4 >>= 4; - r7->unk68.stats[1][r8] = r4; + temp2 >>= 4; + game->results.stats[RESULTS_PAGE_RANDOM][i] = temp2; } break; case 4: - for (r8 = 0; r8 < r7->playerCount - 1; ++r8) + for (i = 0; i < game->playerCount - 1; i++) { - for (r4_ = r7->playerCount - 1; r4_ > r8; --r4_) + for (j = game->playerCount - 1; j > i; j--) { - if (r7->unk68.stats[0][r4_ - 1] < r7->unk68.stats[0][r4_]) + // Calculate player rankings for "Number of Presses" by sorting arrays + if (game->results.stats[RESULTS_PAGE_PRESSES][j - 1] < game->results.stats[RESULTS_PAGE_PRESSES][j]) { - r6 = r7->unk68.stats[0][r4_]; - r7->unk68.stats[0][r4_] = r7->unk68.stats[0][r4_ - 1]; - r7->unk68.stats[0][r4_ - 1] = r6; - r3 = r7->unk68.unk20[0][r4_]; - r7->unk68.unk20[0][r4_] = r7->unk68.unk20[0][r4_ - 1]; - r7->unk68.unk20[0][r4_ - 1] = r3; + SWAP(game->results.stats[RESULTS_PAGE_PRESSES][j], + game->results.stats[RESULTS_PAGE_PRESSES][j - 1], + tempStat); + SWAP(game->results.playerIdsRanked[RESULTS_PAGE_PRESSES][j], + game->results.playerIdsRanked[RESULTS_PAGE_PRESSES][j - 1], + tempPlayerId); } - if (r7->unk68.stats[1][r4_ - 1] < r7->unk68.stats[1][r4_]) + // Calculate player rankings for random second results page by sorting arrays + if (game->results.stats[RESULTS_PAGE_RANDOM][j - 1] < game->results.stats[RESULTS_PAGE_RANDOM][j]) { - r6 = r7->unk68.stats[1][r4_]; - r7->unk68.stats[1][r4_] = r7->unk68.stats[1][r4_ - 1]; - r7->unk68.stats[1][r4_ - 1] = r6; - r3 = r7->unk68.unk20[1][r4_]; - r7->unk68.unk20[1][r4_] = r7->unk68.unk20[1][r4_ - 1]; - r7->unk68.unk20[1][r4_ - 1] = r3; + SWAP(game->results.stats[RESULTS_PAGE_RANDOM][j], + game->results.stats[RESULTS_PAGE_RANDOM][j - 1], + tempStat); + SWAP(game->results.playerIdsRanked[RESULTS_PAGE_RANDOM][j], + game->results.playerIdsRanked[RESULTS_PAGE_RANDOM][j - 1], + tempPlayerId); } } } - SendBlock(0,&r7->unk68, sizeof(struct BerryCrushGame_68)); + SendBlock(0, &game->results, sizeof(game->results)); break; case 5: if (!IsLinkTaskFinished()) return 0; - r7->unk10 = 0; + game->cmdTimer = 0; break; case 6: if (GetBlockReceivedStatus() != 1) return 0; - memset(&r7->unk68, 0, sizeof(struct BerryCrushGame_68)); - memcpy(&r7->unk68, gBlockRecvBuffer, sizeof(struct BerryCrushGame_68)); + + // Receive results calculated by leader + memset(&game->results, 0, sizeof(game->results)); + memcpy(&game->results, gBlockRecvBuffer, sizeof(game->results)); ResetBlockReceivedFlags(); - r7->unk10 = 0; + game->cmdTimer = 0; break; case 7: - BerryCrush_SaveResults(); - BerryCrush_RunOrScheduleCommand(18, 1, NULL); - r7->gameState = 11; - r7->cmdState = 0; - r7->unk24 = 0; + SaveResults(); + RunOrScheduleCommand(CMD_SHOW_RESULTS, SCHEDULE_CMD, NULL); + game->gameState = STATE_RESULTS_PRESSES; + game->cmdState = 0; + game->newDepth = 0; return 0; } - ++r7->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_ShowResults(struct BerryCrushGame *r5, u8 *r6) +static u32 Cmd_ShowResults(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: - if (!sub_8022070(r5, &r5->unk138)) + if (!OpenResultsWindow(game, &game->gfx)) return 0; break; case 1: CopyBgTilemapBufferToVram(0); - r5->unk138.animBerryIdx = 30; + game->gfx.counter = 30; break; case 2: - if (r5->unk138.animBerryIdx != 0) + if (game->gfx.counter != 0) { - --r5->unk138.animBerryIdx; + game->gfx.counter--; return 0; } if (!(JOY_NEW(A_BUTTON))) return 0; PlaySE(SE_SELECT); - sub_802222C(r5); + CloseResultsWindow(game); break; case 3: - if (r5->gameState <= 12) + // Progress through each page of the results + if (game->gameState < RESULTS_STATE_END) { - ++r5->gameState; - r5->cmdState = 0; + game->gameState++; + game->cmdState = 0; return 0; } break; case 4: - ConvertIntToDecimalStringN(gStringVar1, r5->powder, STR_CONV_MODE_LEFT_ALIGN, 6); + // Print message showing how much powder was created + ConvertIntToDecimalStringN(gStringVar1, game->powder, STR_CONV_MODE_LEFT_ALIGN, 6); ConvertIntToDecimalStringN(gStringVar2, GetBerryPowder(), STR_CONV_MODE_LEFT_ALIGN, 6); - BerryCrush_SetShowMessageParams(r6, 2, 3, 0, 0); - r5->nextCmd = 19; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); - r5->cmdState = 0; + SetPrintMessageArgs(args, MSG_POWDER, F_MSG_CLEAR | F_MSG_EXPAND, 0, 0); + game->nextCmd = CMD_SAVE; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); + game->cmdState = 0; return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_SaveGame(struct BerryCrushGame *r5, u8 *r4) +static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: - if (r5->timer >= 36000) - BerryCrush_HideTimerSprites(&r5->unk138); - BerryCrush_SetShowMessageParams(r4, 8, 0, 0, 1); - r5->nextCmd = 19; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); - r5->cmdState = 0; + if (game->timer >= MAX_TIME) + HideTimer(&game->gfx); + SetPrintMessageArgs(args, MSG_COMM_STANDBY, 0, 0, 1); + game->nextCmd = CMD_SAVE; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); + game->cmdState = 0; // State is progressed by CMD_PRINT_MSG return 0; case 1: Rfu_SetLinkStandbyCallback(); @@ -2961,63 +3251,67 @@ static u32 BerryCrushCommand_SaveGame(struct BerryCrushGame *r5, u8 *r4) return 0; break; case 4: - BerryCrush_RunOrScheduleCommand(20, 1, NULL); - r5->gameState = 15; - r5->cmdState = 0; + RunOrScheduleCommand(CMD_ASK_PLAY_AGAIN, SCHEDULE_CMD, NULL); + game->gameState = STATE_PLAY_AGAIN; + game->cmdState = 0; return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_AskPlayAgain(struct BerryCrushGame *r5, u8 *r6) +static u32 Cmd_AskPlayAgain(struct BerryCrushGame *game, u8 *args) { - s8 r4 = 0; + s8 input = 0; - switch (r5->cmdState) + switch (game->cmdState) { case 0: - BerryCrush_SetShowMessageParams(r6, 4, 0, 0, 1); - r5->nextCmd = 20; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); - r5->cmdState = 0; // dunno what it's doing because it's already in case 0 + SetPrintMessageArgs(args, MSG_PLAY_AGAIN, 0, 0, 1); + game->nextCmd = CMD_ASK_PLAY_AGAIN; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); + game->cmdState = 0; // State is progressed by CMD_PRINT_MSG return 0; case 1: DisplayYesNoMenuDefaultYes(); break; case 2: - r4 = Menu_ProcessInputNoWrapClearOnChoose(); - if (r4 != -2) + input = Menu_ProcessInputNoWrapClearOnChoose(); + if (input != -2) { - memset(r5->sendCmd, 0, sizeof(r5->sendCmd)); - if (r4 == 0) + memset(game->sendCmd, 0, sizeof(game->sendCmd)); + if (input == 0) { + // Selected Yes if (HasAtLeastOneBerry()) - r5->unk14 = 0; + game->playAgainState = PLAY_AGAIN_YES; else - r5->unk14 = 3; + game->playAgainState = PLAY_AGAIN_NO_BERRIES; } else { - r5->unk14 = 1; + // Selected No + game->playAgainState = PLAY_AGAIN_NO; } + + // Close Yes/No and start communication ClearDialogWindowAndFrame(0, 1); - BerryCrush_SetShowMessageParams(r6, 8, 0, 0, 0); - r5->nextCmd = 21; - BerryCrush_RunOrScheduleCommand(3, 1, NULL); - r5->cmdState = 0; + SetPrintMessageArgs(args, MSG_COMM_STANDBY, 0, 0, 0); + game->nextCmd = CMD_COMM_PLAY_AGAIN; + RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); + game->cmdState = 0; } return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_CommunicatePlayAgainResponses(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1) +static u32 Cmd_CommunicatePlayAgainResponses(struct BerryCrushGame *game, u8 *args) { - u8 r5 = 0; + u8 i = 0; - switch (r4->cmdState) + switch (game->cmdState) { case 0: Rfu_SetLinkStandbyCallback(); @@ -3025,41 +3319,47 @@ static u32 BerryCrushCommand_CommunicatePlayAgainResponses(struct BerryCrushGame case 1: if (!IsLinkTaskFinished()) return 0; - r4->sendCmd[0] = r4->unk14; - r4->recvCmd[0] = 0; - SendBlock(0, r4->sendCmd, sizeof(u16)); + + // Send player's Yes/No response to partners + game->sendCmd[0] = game->playAgainState; + game->recvCmd[0] = 0; + SendBlock(0, game->sendCmd, sizeof(u16)); break; case 2: if (!IsLinkTaskFinished()) return 0; - r4->unk10 = 0; + game->cmdTimer = 0; break; case 3: - if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[r4->playerCount - 2]) + // Wait for partners responses + if (GetBlockReceivedStatus() != sReceivedPlayerBitmasks[game->playerCount - 2]) return 0; - for (; r5 < r4->playerCount; ++r5) - r4->recvCmd[0] += gBlockRecvBuffer[r5][0]; - if (r4->recvCmd[0] != 0) - BerryCrush_RunOrScheduleCommand(23, 1, NULL); + + // Read partners responses + for (i = 0; i < game->playerCount; i++) + game->recvCmd[0] += gBlockRecvBuffer[i][0]; + + if (game->recvCmd[0] != PLAY_AGAIN_YES) + RunOrScheduleCommand(CMD_PLAY_AGAIN_NO, SCHEDULE_CMD, NULL); else - BerryCrush_RunOrScheduleCommand(22, 1, NULL); + RunOrScheduleCommand(CMD_PLAY_AGAIN_YES, SCHEDULE_CMD, NULL); ResetBlockReceivedFlags(); - r4->sendCmd[0] = 0; - r4->recvCmd[0] = 0; - r4->unk10 = 0; - r4->cmdState = 0; + game->sendCmd[0] = 0; + game->recvCmd[0] = 0; + game->cmdTimer = 0; + game->cmdState = 0; return 0; } - ++r4->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_FadeOutToPlayAgain(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +static u32 Cmd_PlayAgain(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: - BeginNormalPaletteFade(PALETTES_ALL, 1, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 1, 0, 16, RGB_BLACK); UpdatePaletteFade(); break; case 1: @@ -3068,56 +3368,56 @@ static u32 BerryCrushCommand_FadeOutToPlayAgain(struct BerryCrushGame *r5, __att break; case 2: ClearDialogWindowAndFrame(0, 1); - sub_8021488(r5); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); + ResetCrusherPos(game); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); UpdatePaletteFade(); break; case 3: if (UpdatePaletteFade()) return 0; - BerryCrush_RunOrScheduleCommand(7, 1, NULL); - r5->gameState = 3; - r5->cmdState = 0; + RunOrScheduleCommand(CMD_ASK_PICK_BERRY, SCHEDULE_CMD, NULL); + game->gameState = STATE_PICK_BERRY; + game->cmdState = 0; return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_PlayAgainFailureMessage(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: DrawDialogueFrame(0, 0); - if (r5->unk14 == 3) - AddTextPrinterParameterized2(0, 1, sBerryCrushMessages[5], r5->textSpeed, 0, 2, 1, 3); + if (game->playAgainState == PLAY_AGAIN_NO_BERRIES) + AddTextPrinterParameterized2(0, 1, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); else - AddTextPrinterParameterized2(0, 1, sBerryCrushMessages[6], r5->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, 1, sMessages[MSG_DROPPED], game->textSpeed, 0, 2, 1, 3); CopyWindowToVram(0, 3); break; case 1: if (IsTextPrinterActive(0)) return 0; - r5->unk138.animBerryIdx = 120; + game->gfx.counter = 120; break; case 2: - if (r5->unk138.animBerryIdx != 0) - --r5->unk138.animBerryIdx; + if (game->gfx.counter != 0) + game->gfx.counter--; else { - BerryCrush_RunOrScheduleCommand(24, 1, NULL); - r5->cmdState = 0; + RunOrScheduleCommand(CMD_CLOSE_LINK, SCHEDULE_CMD, NULL); + game->cmdState = 0; } return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_GracefulExit(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1) +static u32 Cmd_CloseLink(struct BerryCrushGame *game, u8 *args) { - switch (r5->cmdState) + switch (game->cmdState) { case 0: Rfu_SetLinkStandbyCallback(); @@ -3130,81 +3430,81 @@ static u32 BerryCrushCommand_GracefulExit(struct BerryCrushGame *r5, __attribute case 2: if (gReceivedRemoteLinkPlayers != 0) return 0; - r5->nextCmd = 25; - BerryCrush_RunOrScheduleCommand(5, 1, NULL); - r5->cmdState = 2; // ??? + game->nextCmd = CMD_QUIT; + RunOrScheduleCommand(CMD_HIDE_GAME, SCHEDULE_CMD, NULL); + game->cmdState = 2; // ??? return 0; } - ++r5->cmdState; + game->cmdState++; return 0; } -static u32 BerryCrushCommand_Quit(__attribute__((unused)) struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1) +static u32 Cmd_Quit(struct BerryCrushGame *game, u8 *args) { QuitBerryCrush(NULL); return 0; } -static void sub_8024578(struct BerryCrushGame *r4) -{ - u8 r5 = 0; - - IncrementGameStat(GAME_STAT_51); - r4->unkD = 0; - r4->unk10 = 0; - r4->gameState = 2; - r4->unk14 = 0; - r4->powder = 0; - r4->unk18 = 0; - r4->unk1A = 0; - r4->unk20 = 0; - r4->unk24 = 0; - r4->unk25_0 = 0; - r4->unk25_1 = 0; - r4->unk25_2 = 0; - r4->unk25_3 = 0; - r4->unk25_4 = 0; - r4->unk25_5 = 0; - r4->unk26 = 0; - r4->timer = 0; - r4->unk2E = 0; - r4->unk32 = -1; - r4->unk30 = 0; - r4->unk34 = 0; - for (; r5 < 5; ++r5) - { - r4->unk98[r5].unkC = -1; - r4->unk98[r5].unkE = 0; - r4->unk98[r5].unk10 = 0; - r4->unk98[r5].unk12 = 1; - r4->unk98[r5].unk14 = 0; - r4->unk98[r5].unk16 = 0; - r4->unk98[r5].unk18 = 0; - r4->unk98[r5].unk1A = 0; - r4->unk98[r5].unk1B = 0; - r4->unk98[r5].unk1C = 0; - } -} - -static void BerryCrush_SetPaletteFadeParams(u8 *params, bool8 communicateAfter, u32 selectedPals, s8 delay, u8 startY, u8 targetY, u16 palette) -{ - params[0] = ((u8 *)&selectedPals)[0]; - params[1] = ((u8 *)&selectedPals)[1]; - params[2] = ((u8 *)&selectedPals)[2]; - params[3] = ((u8 *)&selectedPals)[3]; - params[4] = delay; - params[5] = startY; - params[6] = targetY; - params[7] = ((u8 *)&palette)[0]; - params[8] = ((u8 *)&palette)[1]; - params[9] = communicateAfter; -} - -static void BerryCrush_SetShowMessageParams(u8 *params, u8 stringId, u8 flags, u16 waitKeys, u8 followupCmd) -{ - params[0] = stringId; - params[1] = flags; - params[2] = ((u8 *)&waitKeys)[0]; - params[3] = ((u8 *)&waitKeys)[1]; - params[4] = followupCmd; +static void ResetGame(struct BerryCrushGame *game) +{ + u8 i = 0; + + IncrementGameStat(GAME_STAT_PLAYED_BERRY_CRUSH); + game->unused = 0; + game->cmdTimer = 0; + game->gameState = STATE_RESET; + game->playAgainState = 0; + game->powder = 0; + game->targetAPresses = 0; + game->totalAPresses = 0; + game->targetDepth = 0; + game->newDepth = 0; + game->noRoomForPowder = FALSE; + game->newRecord = FALSE; + game->playedSound = FALSE; + game->endGame = FALSE; + game->bigSparkle = FALSE; + game->sparkleAmount = 0; + game->leaderTimer = 0; + game->timer = 0; + game->bigSparkleCounter = 0; + game->numBigSparkleChecks = -1; + game->numBigSparkles = 0; + game->sparkleCounter = 0; + for (i = 0; i < MAX_RFU_PLAYERS; i++) + { + game->players[i].berryId = -1; + game->players[i].inputTime = 0; + game->players[i].neatInputStreak = 0; + game->players[i].timeSincePrevInput = 1; + game->players[i].maxNeatInputStreak = 0; + game->players[i].numAPresses = 0; + game->players[i].numSyncedAPresses = 0; + game->players[i].timePressingA = 0; + game->players[i].inputFlags = 0; + game->players[i].inputState = INPUT_STATE_NONE; + } +} + +static void SetPaletteFadeArgs(u8 *args, bool8 communicateAfter, u32 selectedPals, s8 delay, u8 startY, u8 targetY, u16 palette) +{ + args[0] = ((u8 *)&selectedPals)[0]; + args[1] = ((u8 *)&selectedPals)[1]; + args[2] = ((u8 *)&selectedPals)[2]; + args[3] = ((u8 *)&selectedPals)[3]; + args[4] = delay; + args[5] = startY; + args[6] = targetY; + args[7] = ((u8 *)&palette)[0]; + args[8] = ((u8 *)&palette)[1]; + args[9] = communicateAfter; +} + +static void SetPrintMessageArgs(u8 *args, u8 msgId, u8 flags, u16 waitKeys, u8 followupState) +{ + args[0] = msgId; + args[1] = flags; + args[2] = ((u8 *)&waitKeys)[0]; + args[3] = ((u8 *)&waitKeys)[1]; + args[4] = followupState; } diff --git a/src/graphics.c b/src/graphics.c index 1a3423fb6818..7a7a11b2b95c 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1543,9 +1543,9 @@ const u16 gUnknown_08DE3350[] = INCBIN_U16("graphics/frontier_pass/tilemap1.bin" const u16 gUnknown_08DE3374[] = INCBIN_U16("graphics/frontier_pass/tilemap2.bin"); // Berry Crush -const u16 gUnknown_08DE3398[] = INCBIN_U16("graphics/berry_crusher/tiles.gbapal"); -const u32 gUnknown_08DE34B8[] = INCBIN_U32("graphics/berry_crusher/tiles.4bpp.lz"); -const u32 gUnknown_08DE3FD4[] = INCBIN_U32("graphics/berry_crusher/tiles.bin.lz"); +const u16 gBerryCrush_Crusher_Pal[] = INCBIN_U16("graphics/berry_crush/crusher.gbapal"); +const u32 gBerryCrush_Crusher_Gfx[] = INCBIN_U32("graphics/berry_crush/crusher.4bpp.lz"); +const u32 gBerryCrush_Crusher_Tilemap[] = INCBIN_U32("graphics/berry_crush/crusher.bin.lz"); // random garbage at the end. static const u8 sEmpty3[0x54BAC] = {0}; diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index f7dad4800546..2d4d981386c2 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -48,8 +48,8 @@ static void Task_StaticCountdown_Free(u8 taskId); static void Task_StaticCountdown_Start(u8 taskId); static void Task_StaticCountdown_Run(u8 taskId); -static const u16 s321Start_Static_Pal[] = INCBIN_U16("graphics/link_games/321start_static.gbapal"); -static const u32 s321Start_Static_Gfx[] = INCBIN_U32("graphics/link_games/321start_static.4bpp.lz"); +static const u16 s321Start_Static_Pal[] = INCBIN_U16("graphics/minigame_countdown/321start_static.gbapal"); +static const u32 s321Start_Static_Gfx[] = INCBIN_U32("graphics/minigame_countdown/321start_static.4bpp.lz"); static const struct CompressedSpriteSheet sSpriteSheet_321Start_Static[] = { @@ -374,8 +374,8 @@ static void CreateStartSprite(u16 tileTag, u16 palTag, s16 x, s16 y, u8 subprior static void InitStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3); static void SpriteCB_Start(struct Sprite *sprite); -static const u16 s321Start_Pal[] = INCBIN_U16("graphics/link_games/321start.gbapal"); -static const u32 s321Start_Gfx[] = INCBIN_U32("graphics/link_games/321start.4bpp.lz"); +static const u16 s321Start_Pal[] = INCBIN_U16("graphics/minigame_countdown/321start.gbapal"); +static const u32 s321Start_Gfx[] = INCBIN_U32("graphics/minigame_countdown/321start.4bpp.lz"); #define tState data[0] #define tTilesTag data[2] diff --git a/src/strings.c b/src/strings.c index fe5051d71151..19d0e3ccad9a 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1292,7 +1292,7 @@ const u8 gText_MatchCallMay_Intro1[] = _("My POKéMON and I help"); const u8 gText_MatchCallMay_Intro2[] = _("my father's research."); const u8 gText_HatchedFromEgg[] = _("{STR_VAR_1} hatched from the EGG!"); const u8 gText_NicknameHatchPrompt[] = _("Would you like to nickname the newly\nhatched {STR_VAR_1}?"); -ALIGNED(4) const u8 gText_ReadyToBerryCrush[] = _("Are you ready to BERRY-CRUSH?\nPlease pick a BERRY for use.\p"); +ALIGNED(4) const u8 gText_ReadyPickBerry[] = _("Are you ready to BERRY-CRUSH?\nPlease pick a BERRY for use.\p"); ALIGNED(4) const u8 gText_WaitForAllChooseBerry[] = _("Please wait while each member\nchooses a BERRY."); ALIGNED(4) const u8 gText_EndedWithXUnitsPowder[] = _("{PAUSE_MUSIC}{PLAY_BGM MUS_LEVEL_UP}You ended up with {STR_VAR_1} units of\nsilky-smooth BERRY POWDER.{RESUME_MUSIC}\pYour total amount of BERRY POWDER\nis {STR_VAR_2}.\p"); ALIGNED(4) const u8 gText_RecordingGameResults[] = _("Recording your game results in the\nsave file.\lPlease wait."); From 5b910a11b4f6d548b6643455ccb806c0e60f48a2 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Thu, 18 Mar 2021 20:35:39 -0400 Subject: [PATCH 044/762] port miscellaneous fr documentation --- include/overworld.h | 8 ++++---- src/link.c | 4 ++-- src/mail.c | 2 +- src/main.c | 4 ++-- src/menu_helpers.c | 2 +- src/overworld.c | 40 ++++++++++++++++++++-------------------- src/pokenav.c | 2 +- src/trainer_card.c | 6 +++--- 8 files changed, 34 insertions(+), 34 deletions(-) diff --git a/include/overworld.h b/include/overworld.h index a2eac7e29a30..6efaa6ccb6b8 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -152,10 +152,10 @@ u16 sub_8087288(void); u16 sub_808729C(void); u16 QueueExitLinkRoomKey(void); u16 sub_80872C4(void); -bool32 sub_8087598(void); -bool32 sub_80875C8(void); -bool32 sub_8087634(void); -bool32 sub_808766C(void); +bool32 Overworld_LinkRecvQueueLengthMoreThan2(void); +bool32 Overworld_RecvKeysFromLinkIsRunning(void); +bool32 Overworld_SendKeysToLinkIsRunning(void); +bool32 IsSendingKeysOverCable(void); void ClearLinkPlayerObjectEvents(void); #endif // GUARD_OVERWORLD_H diff --git a/src/link.c b/src/link.c index 9f0ac6654e49..fac5f3252a15 100644 --- a/src/link.c +++ b/src/link.c @@ -1832,7 +1832,7 @@ bool8 HandleLinkConnection(void) { gLinkStatus = LinkMain1(&gShouldAdvanceLinkState, gSendCmd, gRecvCmds); LinkMain2(&gMain.heldKeys); - if ((gLinkStatus & LINK_STAT_RECEIVED_NOTHING) && sub_808766C() == TRUE) + if ((gLinkStatus & LINK_STAT_RECEIVED_NOTHING) && IsSendingKeysOverCable() == TRUE) { return TRUE; } @@ -1841,7 +1841,7 @@ bool8 HandleLinkConnection(void) { r4 = sub_8010EC0(); r5 = sub_8010F1C(); - if (sub_808766C() == TRUE) + if (IsSendingKeysOverCable() == TRUE) { if (r4 == TRUE || IsRfuRecvQueueEmpty() || r5) { diff --git a/src/mail.c b/src/mail.c index db8451395d3c..0ee294787cf8 100644 --- a/src/mail.c +++ b/src/mail.c @@ -593,7 +593,7 @@ static bool8 MailReadBuildGraphics(void) } break; case 15: - if (sub_8087598() == TRUE) + if (Overworld_LinkRecvQueueLengthMoreThan2() == TRUE) { return FALSE; } diff --git a/src/main.c b/src/main.c index 278b93542bf2..75861a3acd88 100644 --- a/src/main.c +++ b/src/main.c @@ -132,7 +132,7 @@ void AgbMain() DoSoftReset(); } - if (sub_8087634() == 1) + if (Overworld_SendKeysToLinkIsRunning() == 1) { gLinkTransferringData = TRUE; UpdateLinkAndCallCallbacks(); @@ -143,7 +143,7 @@ void AgbMain() gLinkTransferringData = FALSE; UpdateLinkAndCallCallbacks(); - if (sub_80875C8() == 1) + if (Overworld_RecvKeysFromLinkIsRunning() == 1) { gMain.newKeys = 0; ClearSpriteCopyRequests(); diff --git a/src/menu_helpers.c b/src/menu_helpers.c index b31d84a1e377..edff67ab8de7 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -312,7 +312,7 @@ static bool8 sub_81221D0(void) if (!MenuHelpers_LinkSomething()) return FALSE; else - return sub_8087598(); + return Overworld_LinkRecvQueueLengthMoreThan2(); } bool8 MenuHelpers_CallLinkSomething(void) diff --git a/src/overworld.c b/src/overworld.c index 5aa5bb73df54..665b840c5686 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -125,14 +125,14 @@ static void CreateLinkPlayerSprite(u8 linkPlayerId, u8 gameVersion); static void GetLinkPlayerCoords(u8 linkPlayerId, u16 *x, u16 *y); static u8 GetLinkPlayerFacingDirection(u8 linkPlayerId); static u8 GetLinkPlayerElevation(u8 linkPlayerId); -static s32 sub_80878E4(u8 linkPlayerId); +static s32 GetLinkPlayerObjectStepTimer(u8 linkPlayerId); static u8 GetLinkPlayerIdAt(s16 x, s16 y); static void SetPlayerFacingDirection(u8 linkPlayerId, u8 a2); static void ZeroObjectEvent(struct ObjectEvent *objEvent); static void SpawnLinkPlayerObjectEvent(u8 linkPlayerId, s16 x, s16 y, u8 a4); static void InitLinkPlayerObjectEventPos(struct ObjectEvent *objEvent, s16 x, s16 y); -static void sub_80877DC(u8 linkPlayerId, u8 a2); -static void sub_808780C(u8 linkPlayerId); +static void SetLinkPlayerObjectRange(u8 linkPlayerId, u8 a2); +static void DestroyLinkPlayerObject(u8 linkPlayerId); static u8 GetSpriteForLinkedPlayer(u8 linkPlayerId); static void RunTerminateLinkScript(void); static u32 GetLinkSendQueueLength(void); @@ -172,7 +172,7 @@ static u8 sPlayerTradingStates[MAX_LINK_PLAYERS]; // adjusted key code, effectively intercepting the input before anything // can process it. static u16 (*sPlayerKeyInterceptCallback)(u32); -static bool8 sUnknown_03000E18; +static bool8 sReceivingFromLink; static u8 sRfuKeepAliveTimer; // IWRAM common @@ -1626,7 +1626,7 @@ static void CB2_ReturnToFieldLocal(void) static void CB2_ReturnToFieldLink(void) { - if (!sub_8087598() && ReturnToFieldLink(&gMain.state)) + if (!Overworld_LinkRecvQueueLengthMoreThan2() && ReturnToFieldLink(&gMain.state)) SetMainCallback2(CB2_Overworld); } @@ -2823,18 +2823,18 @@ static void RunTerminateLinkScript(void) ScriptContext2_Enable(); } -bool32 sub_8087598(void) +bool32 Overworld_LinkRecvQueueLengthMoreThan2(void) { if (!IsUpdateLinkStateCBActive()) return FALSE; if (GetLinkRecvQueueLength() >= 3) - sUnknown_03000E18 = TRUE; + sReceivingFromLink = TRUE; else - sUnknown_03000E18 = FALSE; - return sUnknown_03000E18; + sReceivingFromLink = FALSE; + return sReceivingFromLink; } -bool32 sub_80875C8(void) +bool32 Overworld_RecvKeysFromLinkIsRunning(void) { u8 temp; @@ -2849,8 +2849,8 @@ bool32 sub_80875C8(void) else if (sPlayerKeyInterceptCallback != KeyInterCB_DeferToEventScript) return FALSE; - temp = sUnknown_03000E18; - sUnknown_03000E18 = FALSE; + temp = sReceivingFromLink; + sReceivingFromLink = FALSE; if (temp == TRUE) return TRUE; @@ -2860,7 +2860,7 @@ bool32 sub_80875C8(void) return FALSE; } -bool32 sub_8087634(void) +bool32 Overworld_SendKeysToLinkIsRunning(void) { if (GetLinkSendQueueLength() < 2) return FALSE; @@ -2874,7 +2874,7 @@ bool32 sub_8087634(void) return FALSE; } -bool32 sub_808766C(void) +bool32 IsSendingKeysOverCable(void) { if (gWirelessCommType != 0) return FALSE; @@ -2923,15 +2923,15 @@ static void SpawnLinkPlayerObjectEvent(u8 linkPlayerId, s16 x, s16 y, u8 gender) ZeroLinkPlayerObjectEvent(linkPlayerObjEvent); ZeroObjectEvent(objEvent); - linkPlayerObjEvent->active = 1; + linkPlayerObjEvent->active = TRUE; linkPlayerObjEvent->linkPlayerId = linkPlayerId; linkPlayerObjEvent->objEventId = objEventId; linkPlayerObjEvent->movementMode = MOVEMENT_MODE_FREE; - objEvent->active = 1; + objEvent->active = TRUE; linkGender(objEvent) = gender; linkDirection(objEvent) = DIR_NORTH; - objEvent->spriteId = 64; + objEvent->spriteId = MAX_SPRITES; InitLinkPlayerObjectEventPos(objEvent, x, y); } @@ -2947,7 +2947,7 @@ static void InitLinkPlayerObjectEventPos(struct ObjectEvent *objEvent, s16 x, s1 ObjectEventUpdateZCoord(objEvent); } -static void sub_80877DC(u8 linkPlayerId, u8 dir) +static void SetLinkPlayerObjectRange(u8 linkPlayerId, u8 dir) { if (gLinkPlayerObjectEvents[linkPlayerId].active) { @@ -2957,7 +2957,7 @@ static void sub_80877DC(u8 linkPlayerId, u8 dir) } } -static void sub_808780C(u8 linkPlayerId) +static void DestroyLinkPlayerObject(u8 linkPlayerId) { struct LinkPlayerObjectEvent *linkPlayerObjEvent = &gLinkPlayerObjectEvents[linkPlayerId]; u8 objEventId = linkPlayerObjEvent->objEventId; @@ -2998,7 +2998,7 @@ static u8 GetLinkPlayerElevation(u8 linkPlayerId) return objEvent->currentElevation; } -static s32 sub_80878E4(u8 linkPlayerId) +static s32 GetLinkPlayerObjectStepTimer(u8 linkPlayerId) { u8 objEventId = gLinkPlayerObjectEvents[linkPlayerId].objEventId; struct ObjectEvent *objEvent = &gObjectEvents[objEventId]; diff --git a/src/pokenav.c b/src/pokenav.c index eac0c85b4f7d..881411b9ecb1 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -288,7 +288,7 @@ static void Task_RunLoopedTask_LinkMode(u8 taskId) s16 *state; u32 action; - if (sub_8087598()) + if (Overworld_LinkRecvQueueLengthMoreThan2()) return; task = (LoopedTask)GetWordTaskArg(taskId, 1); diff --git a/src/trainer_card.c b/src/trainer_card.c index c42c16845ada..9e14a7e9cf29 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -458,7 +458,7 @@ static void Task_TrainerCard(u8 taskId) } break; case STATE_WAIT_FLIP_TO_BACK: - if (IsCardFlipTaskActive() && sub_8087598() != TRUE) + if (IsCardFlipTaskActive() && Overworld_LinkRecvQueueLengthMoreThan2() != TRUE) { PlaySE(SE_RG_CARD_OPEN); sData->mainState = STATE_HANDLE_INPUT_BACK; @@ -515,7 +515,7 @@ static void Task_TrainerCard(u8 taskId) CloseTrainerCard(taskId); break; case STATE_WAIT_FLIP_TO_FRONT: - if (IsCardFlipTaskActive() && sub_8087598() != TRUE) + if (IsCardFlipTaskActive() && Overworld_LinkRecvQueueLengthMoreThan2() != TRUE) { sData->mainState = STATE_HANDLE_INPUT_FRONT; PlaySE(SE_RG_CARD_OPEN); @@ -1663,7 +1663,7 @@ static bool8 Task_AnimateCardFlipDown(struct Task* task) static bool8 Task_DrawFlippedCardSide(struct Task* task) { sData->allowDMACopy = FALSE; - if (sub_8087598() == TRUE) + if (Overworld_LinkRecvQueueLengthMoreThan2() == TRUE) return FALSE; do From 7198d40ec8dac00e3fc5b0d2ae01741fd12aea0e Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 19 Mar 2021 18:49:19 -0400 Subject: [PATCH 045/762] port some documentation from FR --- gflib/text.c | 5 ++--- src/overworld.c | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index ffce2cb56122..f07a2367ac40 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -1280,7 +1280,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) default: return 0; } - case CHAR_DYNAMIC: + case CHAR_SPECIAL_F7: if (bufferPointer == NULL) bufferPointer = DynamicPlaceholderTextUtil_GetPlaceholderPtr(*++str); while (*bufferPointer != EOS) @@ -1398,8 +1398,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) if (lineWidth > width) return lineWidth; - else - return width; + return width; } u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) diff --git a/src/overworld.c b/src/overworld.c index 665b840c5686..e7c86b0a4a22 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -3048,32 +3048,32 @@ static void SetPlayerFacingDirection(u8 linkPlayerId, u8 facing) } -static u8 MovementEventModeCB_Normal(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static u8 MovementEventModeCB_Normal(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { - return gLinkPlayerFacingHandlers[a3](linkPlayerObjEvent, objEvent, a3); + return gLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); } -static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { return FACING_UP; } // Duplicate Function -static u8 MovementEventModeCB_Normal_2(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static u8 MovementEventModeCB_Normal_2(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { - return gLinkPlayerFacingHandlers[a3](linkPlayerObjEvent, objEvent, a3); + return gLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); } -static bool8 FacingHandler_DoNothing(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static bool8 FacingHandler_DoNothing(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { return FALSE; } -static bool8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static bool8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { s16 x, y; - linkDirection(objEvent) = FlipVerticalAndClearForced(a3, linkDirection(objEvent)); + linkDirection(objEvent) = FlipVerticalAndClearForced(dir, linkDirection(objEvent)); ObjectEventMoveDestCoords(objEvent, linkDirection(objEvent), &x, &y); if (LinkPlayerDetectCollision(linkPlayerObjEvent->objEventId, linkDirection(objEvent), x, y)) @@ -3089,9 +3089,9 @@ static bool8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *linkPlayer } } -static bool8 FacingHandler_ForcedFacingChange(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 a3) +static bool8 FacingHandler_ForcedFacingChange(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { - linkDirection(objEvent) = FlipVerticalAndClearForced(a3, linkDirection(objEvent)); + linkDirection(objEvent) = FlipVerticalAndClearForced(dir, linkDirection(objEvent)); return FALSE; } From 0691632ac61decd53901f4a59a56d2ca79554311 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 19 Mar 2021 18:52:37 -0400 Subject: [PATCH 046/762] oops --- gflib/text.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gflib/text.c b/gflib/text.c index f07a2367ac40..a4e8d8bd36b3 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -1280,7 +1280,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) default: return 0; } - case CHAR_SPECIAL_F7: + case CHAR_DYNAMIC: if (bufferPointer == NULL) bufferPointer = DynamicPlaceholderTextUtil_GetPlaceholderPtr(*++str); while (*bufferPointer != EOS) From 557152b06eab9320987f9c3b676b903141beb026 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 19 Mar 2021 14:10:13 -0400 Subject: [PATCH 047/762] Minor link cleanup --- include/link.h | 29 ++-- src/cable_club.c | 2 +- src/link.c | 360 +++++++++++++++++++-------------------------- src/link_rfu_2.c | 8 +- src/menu_helpers.c | 2 +- src/trade.c | 14 +- 6 files changed, 180 insertions(+), 235 deletions(-) diff --git a/include/link.h b/include/link.h index 34710597fab6..3b621e6c13b1 100644 --- a/include/link.h +++ b/include/link.h @@ -56,17 +56,17 @@ #define LINKCMD_BLENDER_SEND_KEYS 0x4444 #define LINKCMD_BLENDER_SCORE_BEST 0x4523 #define LINKCMD_BLENDER_SCORE_GOOD 0x5432 -#define LINKCMD_0x5555 0x5555 -#define LINKCMD_0x5566 0x5566 +#define LINKCMD_DUMMY_1 0x5555 +#define LINKCMD_DUMMY_2 0x5566 #define LINKCMD_READY_CLOSE_LINK 0x5FFF -#define LINKCMD_0x6666 0x6666 -#define LINKCMD_0x7777 0x7777 +#define LINKCMD_SEND_EMPTY 0x6666 +#define LINKCMD_SEND_0xEE 0x7777 #define LINKCMD_BLENDER_PLAY_AGAIN 0x7779 #define LINKCMD_COUNTDOWN 0x7FFF #define LINKCMD_CONT_BLOCK 0x8888 #define LINKCMD_BLENDER_NO_BERRIES 0x9999 #define LINKCMD_BLENDER_NO_PBLOCK_SPACE 0xAAAA -#define LINKCMD_0xAAAB 0xAAAB +#define LINKCMD_SEND_ITEM 0xAAAB #define LINKCMD_READY_TO_TRADE 0xAABB #define LINKCMD_READY_FINISH_TRADE 0xABCD #define LINKCMD_INIT_BLOCK 0xBBBB @@ -76,17 +76,18 @@ #define LINKCMD_START_TRADE 0xCCDD #define LINKCMD_CONFIRM_FINISH_TRADE 0xDCBA #define LINKCMD_SET_MONS_TO_TRADE 0xDDDD -#define LINKCMD_0xDDEE 0xDDEE +#define LINKCMD_PLAYER_CANCEL_TRADE 0xDDEE #define LINKCMD_REQUEST_CANCEL 0xEEAA -#define LINKCMD_CANCEL_TRADE 0xEEBB -#define LINKCMD_0xEECC 0xEECC +#define LINKCMD_BOTH_CANCEL_TRADE 0xEEBB +#define LINKCMD_PARTNER_CANCEL_TRADE 0xEECC +#define LINKCMD_NONE 0xEFFF #define LINKTYPE_TRADE 0x1111 #define LINKTYPE_TRADE_CONNECTING 0x1122 #define LINKTYPE_TRADE_SETUP 0x1133 #define LINKTYPE_TRADE_DISCONNECTED 0x1144 #define LINKTYPE_BATTLE 0x2211 -#define LINKTYPE_0x2222 0x2222 // unused battle? +#define LINKTYPE_UNUSED_BATTLE 0x2222 // Unused, inferred from gap #define LINKTYPE_SINGLE_BATTLE 0x2233 #define LINKTYPE_DOUBLE_BATTLE 0x2244 #define LINKTYPE_MULTI_BATTLE 0x2255 @@ -98,7 +99,7 @@ #define LINKTYPE_BERRY_BLENDER_SETUP 0x4411 #define LINKTYPE_BERRY_BLENDER 0x4422 #define LINKTYPE_MYSTERY_EVENT 0x5501 -#define LINKTYPE_0x5502 0x5502 // unused? +#define LINKTYPE_UNUSED_EREADER 0x5502 // Unused, inferred from gap #define LINKTYPE_EREADER 0x5503 #define LINKTYPE_CONTEST_GMODE 0x6601 #define LINKTYPE_CONTEST_EMODE 0x6602 @@ -290,17 +291,17 @@ bool8 HandleLinkConnection(void); void SetLinkDebugValues(u32 seed, u32 flags); void SetBerryBlenderLinkCallback(void); void SetSuppressLinkErrorMessage(bool8 flag); -void sub_800B524(struct LinkPlayer *linkPlayer); +void ConvertLinkPlayerName(struct LinkPlayer *linkPlayer); u8 GetSioMultiSI(void); void ClearSavedLinkPlayers(void); -void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, u8 unk_06); -void sub_800B348(void); +void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected); +void LocalLinkPlayerToBlock(void); void LinkPlayerFromBlock(u32 who); bool32 Link_AnyPartnersPlayingFRLG_JP(void); void ResetLinkPlayerCount(void); void SaveLinkPlayers(u8 a0); void SetWirelessCommType0(void); -bool32 sub_800B504(void); +bool32 IsLinkRecvQueueLengthAtLeast3(void); extern u16 gLinkPartnersHeldKeys[6]; extern u32 gLinkDebugSeed; diff --git a/src/cable_club.c b/src/cable_club.c index 8b321d67038f..1d8c6e53d7f5 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -904,7 +904,7 @@ static void Task_StartWirelessCableClubBattle(u8 taskId) { struct LinkPlayer *player = (struct LinkPlayer *)gBlockRecvBuffer[i]; gLinkPlayers[i] = *player; - sub_800B524(&gLinkPlayers[i]); + ConvertLinkPlayerName(&gLinkPlayers[i]); ResetBlockReceivedFlag(i); } tState = 4; diff --git a/src/link.c b/src/link.c index 9f0ac6654e49..6dc5a09f3d16 100644 --- a/src/link.c +++ b/src/link.c @@ -41,8 +41,8 @@ struct LinkTestBGInfo { u32 screenBaseBlock; u32 paletteNum; - u32 dummy_8; - u32 dummy_C; + u32 baseChar; + u32 unused; }; static struct BlockTransfer sBlockSend; @@ -97,28 +97,26 @@ struct Link gLink; u8 gLastRecvQueueCount; u16 gLinkSavedIme; -EWRAM_DATA u8 gLinkTestDebugValuesEnabled = 0; -EWRAM_DATA u8 gUnknown_020223BD = 0; +static EWRAM_DATA u8 sLinkTestDebugValuesEnabled = 0; +static EWRAM_DATA u8 sDummyFlag = FALSE; EWRAM_DATA u32 gBerryBlenderKeySendAttempts = 0; EWRAM_DATA u16 gBlockRecvBuffer[MAX_RFU_PLAYERS][BLOCK_BUFFER_SIZE / 2] = {}; EWRAM_DATA u8 gBlockSendBuffer[BLOCK_BUFFER_SIZE] = {}; -EWRAM_DATA bool8 gLinkOpen = FALSE; +static EWRAM_DATA bool8 sLinkOpen = FALSE; EWRAM_DATA u16 gLinkType = 0; -EWRAM_DATA u16 gLinkTimeOutCounter = 0; +static EWRAM_DATA u16 sTimeOutCounter = 0; EWRAM_DATA struct LinkPlayer gLocalLinkPlayer = {}; EWRAM_DATA struct LinkPlayer gLinkPlayers[MAX_RFU_PLAYERS] = {}; -EWRAM_DATA struct LinkPlayer gSavedLinkPlayers[MAX_RFU_PLAYERS] = {}; +static EWRAM_DATA struct LinkPlayer sSavedLinkPlayers[MAX_RFU_PLAYERS] = {}; EWRAM_DATA struct { u32 status; u8 lastRecvQueueCount; u8 lastSendQueueCount; - u8 unk_06; + bool8 disconnected; } sLinkErrorBuffer = {}; static EWRAM_DATA u16 sReadyCloseLinkAttempts = 0; // never read static EWRAM_DATA void *sLinkErrorBgTilemapBuffer = NULL; -// Static ROM declarations - static void InitLocalLinkPlayer(void); static void VBlankCB_LinkError(void); static void CB2_LinkTest(void); @@ -131,7 +129,7 @@ static void LinkCB_BlockSend(void); static void LinkCB_BlockSendEnd(void); static void SetBlockReceivedFlag(u8 who); static u16 LinkTestCalcBlockChecksum(const u16 *src, u16 size); -static void LinkTest_prnthex(u32 pos, u8 a0, u8 a1, u8 a2); +static void LinkTest_PrintHex(u32 pos, u8 a0, u8 a1, u8 a2); static void LinkCB_RequestPlayerDataExchange(void); static void Task_PrintTestData(u8 taskId); @@ -160,8 +158,6 @@ static void DoSend(void); static void StopTimer(void); static void SendRecvDone(void); -// .rodata - static const u16 sWirelessLinkDisplayPal[] = INCBIN_U16("graphics/interface/wireless_link_display.gbapal"); static const u32 sWirelessLinkDisplayGfx[] = INCBIN_U32("graphics/interface/wireless_link_display.4bpp.lz"); static const u32 sWirelessLinkDisplayTilemap[] = INCBIN_U32("graphics/interface/wireless_link_display.bin.lz"); @@ -226,15 +222,13 @@ static const struct WindowTemplate sLinkErrorWindowTemplates[] = { }; static const u8 sTextColors[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY }; -static const u8 sUnused_082ED224[] = {0x00, 0xFF, 0xFE, 0xFF, 0x00}; - -// .text +static const u8 sUnusedData[] = {0x00, 0xFF, 0xFE, 0xFF, 0x00}; bool8 IsWirelessAdapterConnected(void) { SetWirelessCommType1(); InitRFUAPI(); - if (rfu_LMAN_REQBN_softReset_and_checkID() == 0x8001) + if (rfu_LMAN_REQBN_softReset_and_checkID() == RFU_ID) { rfu_REQ_stopMode(); rfu_waitREQComplete(); @@ -251,13 +245,13 @@ void Task_DestroySelf(u8 taskId) DestroyTask(taskId); } -static void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock, u16 a4) +static void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock, u16 baseChar) { LoadPalette(sLinkTestDigitsPal, paletteNum * 16, 0x20); - DmaCopy16(3, sLinkTestDigitsGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock) + (16 * a4), sizeof sLinkTestDigitsGfx); + DmaCopy16(3, sLinkTestDigitsGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock) + (16 * baseChar), sizeof sLinkTestDigitsGfx); gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.paletteNum = paletteNum; - gLinkTestBGInfo.dummy_8 = a4; + gLinkTestBGInfo.baseChar = baseChar; switch (bgNum) { case 1: @@ -274,17 +268,19 @@ static void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charB SetGpuReg(REG_OFFSET_BG0VOFS + bgNum * 4, 0); } -void sub_80094EC(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock) +// Unused +static void LoadLinkTestBgGfx(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock) { LoadPalette(sLinkTestDigitsPal, paletteNum * 16, 0x20); DmaCopy16(3, sLinkTestDigitsGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock), sizeof sLinkTestDigitsGfx); gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.paletteNum = paletteNum; - gLinkTestBGInfo.dummy_8 = 0; + gLinkTestBGInfo.baseChar = 0; SetGpuReg(sBGControlRegs[bgNum], BGCNT_SCREENBASE(screenBaseBlock) | BGCNT_CHARBASE(charBaseBlock)); } -void LinkTestScreen(void) +// Unused +static void LinkTestScreen(void) { int i; @@ -346,10 +342,9 @@ static void InitLink(void) int i; for (i = 0; i < CMD_LENGTH; i++) - { - gSendCmd[i] = 0xEfff; - } - gLinkOpen = TRUE; + gSendCmd[i] = LINKCMD_NONE; + + sLinkOpen = TRUE; EnableSerial(); } @@ -402,7 +397,7 @@ void CloseLink(void) { LinkRfu_Shutdown(); } - gLinkOpen = FALSE; + sLinkOpen = FALSE; DisableSerial(); } @@ -413,14 +408,14 @@ static void TestBlockTransfer(u8 nothing, u8 is, u8 used) if (sLinkTestLastBlockSendPos != sBlockSend.pos) { - LinkTest_prnthex(sBlockSend.pos, 2, 3, 2); + LinkTest_PrintHex(sBlockSend.pos, 2, 3, 2); sLinkTestLastBlockSendPos = sBlockSend.pos; } for (i = 0; i < MAX_LINK_PLAYERS; i++) { if (sLinkTestLastBlockRecvPos[i] != sBlockRecv[i].pos) { - LinkTest_prnthex(sBlockRecv[i].pos, 2, i + 4, 2); + LinkTest_PrintHex(sBlockRecv[i].pos, 2, i + 4, 2); sLinkTestLastBlockRecvPos[i] = sBlockRecv[i].pos; } } @@ -435,8 +430,8 @@ static void TestBlockTransfer(u8 nothing, u8 is, u8 used) ResetBlockReceivedFlag(i); if (gLinkTestBlockChecksums[i] != 0x0342) { - gLinkTestDebugValuesEnabled = FALSE; - gUnknown_020223BD = FALSE; + sLinkTestDebugValuesEnabled = FALSE; + sDummyFlag = FALSE; } } } @@ -469,7 +464,7 @@ static void LinkTestProcessKeyInput(void) { SetCloseLinkCallback(); } - if (gLinkTestDebugValuesEnabled) + if (sLinkTestDebugValuesEnabled) { SetLinkDebugValues(gMain.vblankCounter2, gLinkCallback ? gLinkVSyncDisabled : gLinkVSyncDisabled | 0x10); } @@ -489,7 +484,7 @@ u16 LinkMain2(const u16 *heldKeys) { u8 i; - if (!gLinkOpen) + if (!sLinkOpen) { return 0; } @@ -555,10 +550,10 @@ static void ProcessRecvCmds(u8 unused) case LINKCMD_BLENDER_SEND_KEYS: gLinkPartnersHeldKeys[i] = gRecvCmds[i][1]; break; - case LINKCMD_0x5555: + case LINKCMD_DUMMY_1: gLinkDummy2 = TRUE; break; - case LINKCMD_0x5566: + case LINKCMD_DUMMY_2: gLinkDummy2 = TRUE; break; case LINKCMD_INIT_BLOCK: @@ -612,7 +607,7 @@ static void ProcessRecvCmds(u8 unused) linkPlayer->neverRead = 0; linkPlayer->progressFlags = 0; } - sub_800B524(linkPlayer); + ConvertLinkPlayerName(linkPlayer); if (strcmp(block->magic1, sASCIIGameFreakInc) != 0 || strcmp(block->magic2, sASCIIGameFreakInc) != 0) { @@ -664,22 +659,19 @@ static void BuildSendCmd(u16 command) gSendCmd[0] = LINKCMD_BLENDER_SEND_KEYS; gSendCmd[1] = gMain.heldKeys; break; - case LINKCMD_0x5555: - gSendCmd[0] = LINKCMD_0x5555; + case LINKCMD_DUMMY_1: + gSendCmd[0] = LINKCMD_DUMMY_1; break; - case LINKCMD_0x6666: - gSendCmd[0] = LINKCMD_0x6666; + case LINKCMD_SEND_EMPTY: + gSendCmd[0] = LINKCMD_SEND_EMPTY; gSendCmd[1] = 0; break; - case LINKCMD_0x7777: + case LINKCMD_SEND_0xEE: { u8 i; - - gSendCmd[0] = LINKCMD_0x7777; + gSendCmd[0] = LINKCMD_SEND_0xEE; for (i = 0; i < 5; i++) - { gSendCmd[i + 1] = 0xEE; - } break; } case LINKCMD_INIT_BLOCK: @@ -690,8 +682,8 @@ static void BuildSendCmd(u16 command) case LINKCMD_BLENDER_NO_PBLOCK_SPACE: gSendCmd[0] = LINKCMD_BLENDER_NO_PBLOCK_SPACE; break; - case LINKCMD_0xAAAB: - gSendCmd[0] = LINKCMD_0xAAAB; + case LINKCMD_SEND_ITEM: + gSendCmd[0] = LINKCMD_SEND_ITEM; gSendCmd[1] = gSpecialVar_ItemId; break; case LINKCMD_SEND_BLOCK_REQ: @@ -702,14 +694,13 @@ static void BuildSendCmd(u16 command) gSendCmd[0] = LINKCMD_READY_CLOSE_LINK; gSendCmd[1] = gReadyCloseLinkType; break; - case LINKCMD_0x5566: - gSendCmd[0] = LINKCMD_0x5566; + case LINKCMD_DUMMY_2: + gSendCmd[0] = LINKCMD_DUMMY_2; break; case LINKCMD_SEND_HELD_KEYS: if (gHeldKeyCodeToSend == 0 || gLinkTransferringData) - { break; - } + gSendCmd[0] = LINKCMD_SEND_HELD_KEYS; gSendCmd[1] = gHeldKeyCodeToSend; break; @@ -819,7 +810,7 @@ bool32 Link_AnyPartnersPlayingFRLG_JP(void) void OpenLinkTimed(void) { sPlayerDataExchangeStatus = EXCHANGE_NOT_STARTED; - gLinkTimeOutCounter = 0; + sTimeOutCounter = 0; OpenLink(); } @@ -892,7 +883,7 @@ u8 GetLinkPlayerDataExchangeStatusTimed(int minPlayers, int maxPlayers) } } } - else if (++gLinkTimeOutCounter > 600) + else if (++sTimeOutCounter > 600) { sPlayerDataExchangeStatus = EXCHANGE_TIMED_OUT; } @@ -909,9 +900,7 @@ bool8 IsLinkPlayerDataExchangeComplete(void) for (i = 0; i < GetLinkPlayerCount(); i++) { if (gLinkPlayers[i].linkType == gLinkPlayers[0].linkType) - { count++; - } } if (count == GetLinkPlayerCount()) { @@ -936,9 +925,7 @@ void ResetLinkPlayers(void) int i; for (i = 0; i <= MAX_LINK_PLAYERS; i++) - { gLinkPlayers[i] = (struct LinkPlayer){}; - } } static void ResetBlockSend(void) @@ -966,9 +953,8 @@ static bool32 InitBlockSend(const void *src, size_t size) else { if (src != gBlockSendBuffer) - { memcpy(gBlockSendBuffer, src, size); - } + sBlockSend.src = gBlockSendBuffer; } BuildSendCmd(LINKCMD_INIT_BLOCK); @@ -980,9 +966,7 @@ static bool32 InitBlockSend(const void *src, size_t size) static void LinkCB_BlockSendBegin(void) { if (++sBlockSendDelayCounter > 2) - { gLinkCallback = LinkCB_BlockSend; - } } static void LinkCB_BlockSend(void) @@ -1020,13 +1004,9 @@ void SetBerryBlenderLinkCallback(void) { gBerryBlenderKeySendAttempts = 0; if (gWirelessCommType) - { Rfu_SetBerryBlenderLinkCallback(); - } else - { gLinkCallback = LinkCB_BerryBlenderSendHeldKeys; - } } // Unused @@ -1044,9 +1024,8 @@ static void SendBerryBlenderNoSpaceForPokeblocks(void) u8 GetMultiplayerId(void) { if (gWirelessCommType == TRUE) - { return Rfu_GetMultiplayerId(); - } + return SIO_MULTI_CNT->id; } @@ -1061,18 +1040,16 @@ u8 bitmask_all_link_players_but_self(void) bool8 SendBlock(u8 unused, const void *src, u16 size) { if (gWirelessCommType == TRUE) - { return Rfu_InitBlockSend(src, size); - } + return InitBlockSend(src, size); } bool8 SendBlockRequest(u8 blockReqType) { if (gWirelessCommType == TRUE) - { return Rfu_SendBlockRequest(blockReqType); - } + if (gLinkCallback == NULL) { gBlockRequestType = blockReqType; @@ -1085,31 +1062,25 @@ bool8 SendBlockRequest(u8 blockReqType) bool8 IsLinkTaskFinished(void) { if (gWirelessCommType == TRUE) - { return IsLinkRfuTaskFinished(); - } + return gLinkCallback == NULL; } u8 GetBlockReceivedStatus(void) { if (gWirelessCommType == TRUE) - { return Rfu_GetBlockReceivedStatus(); - } + return (gBlockReceivedStatus[3] << 3) | (gBlockReceivedStatus[2] << 2) | (gBlockReceivedStatus[1] << 1) | (gBlockReceivedStatus[0] << 0); } static void SetBlockReceivedFlag(u8 who) { if (gWirelessCommType == TRUE) - { Rfu_SetBlockReceivedFlag(who); - } else - { gBlockReceivedStatus[who] = TRUE; - } } void ResetBlockReceivedFlags(void) @@ -1119,16 +1090,12 @@ void ResetBlockReceivedFlags(void) if (gWirelessCommType == TRUE) { for (i = 0; i < MAX_RFU_PLAYERS; i++) - { Rfu_ResetBlockReceivedFlag(i); - } } else { for (i = 0; i < MAX_LINK_PLAYERS; i++) - { gBlockReceivedStatus[i] = FALSE; - } } } @@ -1147,9 +1114,7 @@ void ResetBlockReceivedFlag(u8 who) void CheckShouldAdvanceLinkState(void) { if ((gLinkStatus & LINK_STAT_MASTER) && EXTRACT_PLAYER_COUNT(gLinkStatus) > 1) - { gShouldAdvanceLinkState = 1; - } } static u16 LinkTestCalcBlockChecksum(const u16 *src, u16 size) @@ -1159,92 +1124,90 @@ static u16 LinkTestCalcBlockChecksum(const u16 *src, u16 size) chksum = 0; for (i = 0; i < size / 2; i++) - { chksum += src[i]; - } + return chksum; } -static void LinkTest_prnthexchar(char a0, u8 a1, u8 a2) +static void LinkTest_PrintNumChar(char val, u8 x, u8 y) { u16 *vAddr; vAddr = (u16 *)BG_SCREEN_ADDR(gLinkTestBGInfo.screenBaseBlock); - vAddr[a2 * 32 + a1] = (gLinkTestBGInfo.paletteNum << 12) | (a0 + 1 + gLinkTestBGInfo.dummy_8); + vAddr[y * 32 + x] = (gLinkTestBGInfo.paletteNum << 12) | (val + 1 + gLinkTestBGInfo.baseChar); } -static void LinkTest_prntchar(char a0, u8 a1, u8 a2) +static void LinkTest_PrintChar(char val, u8 x, u8 y) { u16 *vAddr; vAddr = (u16 *)BG_SCREEN_ADDR(gLinkTestBGInfo.screenBaseBlock); - vAddr[a2 * 32 + a1] = (gLinkTestBGInfo.paletteNum << 12) | (a0 + gLinkTestBGInfo.dummy_8); + vAddr[y * 32 + x] = (gLinkTestBGInfo.paletteNum << 12) | (val + gLinkTestBGInfo.baseChar); } -static void LinkTest_prnthex(u32 pos, u8 a0, u8 a1, u8 a2) +static void LinkTest_PrintHex(u32 num, u8 x, u8 y, u8 length) { - char sp[32 / 2]; + char buff[16]; int i; - for (i = 0; i < a2; i++) + for (i = 0; i < length; i++) { - sp[i] = pos & 0xf; - pos >>= 4; + buff[i] = num & 0xF; + num >>= 4; } - for (i = a2 - 1; i >= 0; i--) + for (i = length - 1; i >= 0; i--) { - LinkTest_prnthexchar(sp[i], a0, a1); - a0++; + LinkTest_PrintNumChar(buff[i], x, y); + x++; } } -static void LinkTest_prntint(int a0, u8 a1, u8 a2, u8 a3) +static void LinkTest_PrintInt(int num, u8 x, u8 y, u8 length) { - char sp[32 / 2]; - int sp10; + char buff[16]; + int negX; int i; - sp10 = -1; - if (a0 < 0) + negX = -1; + if (num < 0) { - sp10 = a1; - a0 = -a0; + negX = x; + num = -num; } - for (i = 0; i < a3; i++) + for (i = 0; i < length; i++) { - sp[i] = a0 % 10; - a0 /= 10; + buff[i] = num % 10; + num /= 10; } - for (i = a3 - 1; i >= 0; i--) + for (i = length - 1; i >= 0; i--) { - LinkTest_prnthexchar(sp[i], a1, a2); - a1++; - } - if (sp10 != -1) - { - LinkTest_prnthexchar(*"\n", sp10, a2); + LinkTest_PrintNumChar(buff[i], x, y); + x++; } + + if (negX != -1) + LinkTest_PrintNumChar(*"\n", negX, y); } -static void LinkTest_prntstr(const char *a0, u8 a1, u8 a2) +static void LinkTest_PrintString(const char *str, u8 x, u8 y) { - int r6; + int xOffset; int i; - int r5; + int yOffset; - r5 = 0; - r6 = 0; - for (i = 0; a0[i] != 0; a0++) + yOffset = 0; + xOffset = 0; + for (i = 0; str[i] != 0; str++) { - if (a0[i] == *"\n") + if (str[i] == *"\n") { - r5++; - r6 = 0; + yOffset++; + xOffset = 0; } else { - LinkTest_prntchar(a0[i], a1 + r6, a2 + r5); - r6++; + LinkTest_PrintChar(str[i], x + xOffset, y + yOffset); + xOffset++; } } } @@ -1260,29 +1223,28 @@ static void LinkCB_RequestPlayerDataExchange(void) static void Task_PrintTestData(u8 taskId) { - char sp[32]; + char testTitle[32]; int i; - strcpy(sp, sASCIITestPrint); - LinkTest_prntstr(sp, 5, 2); - LinkTest_prnthex(gShouldAdvanceLinkState, 2, 1, 2); - LinkTest_prnthex(gLinkStatus, 15, 1, 8); - LinkTest_prnthex(gLink.state, 2, 10, 2); - LinkTest_prnthex(EXTRACT_PLAYER_COUNT(gLinkStatus), 15, 10, 2); - LinkTest_prnthex(GetMultiplayerId(), 15, 12, 2); - LinkTest_prnthex(gLastSendQueueCount, 25, 1, 2); - LinkTest_prnthex(gLastRecvQueueCount, 25, 2, 2); - LinkTest_prnthex(GetBlockReceivedStatus(), 15, 5, 2); - LinkTest_prnthex(gLinkDebugSeed, 2, 12, 8); - LinkTest_prnthex(gLinkDebugFlags, 2, 13, 8); - LinkTest_prnthex(GetSioMultiSI(), 25, 5, 1); - LinkTest_prnthex(IsSioMultiMaster(), 25, 6, 1); - LinkTest_prnthex(IsLinkConnectionEstablished(), 25, 7, 1); - LinkTest_prnthex(HasLinkErrorOccurred(), 25, 8, 1); + strcpy(testTitle, sASCIITestPrint); + LinkTest_PrintString(testTitle, 5, 2); + LinkTest_PrintHex(gShouldAdvanceLinkState, 2, 1, 2); + LinkTest_PrintHex(gLinkStatus, 15, 1, 8); + LinkTest_PrintHex(gLink.state, 2, 10, 2); + LinkTest_PrintHex(EXTRACT_PLAYER_COUNT(gLinkStatus), 15, 10, 2); + LinkTest_PrintHex(GetMultiplayerId(), 15, 12, 2); + LinkTest_PrintHex(gLastSendQueueCount, 25, 1, 2); + LinkTest_PrintHex(gLastRecvQueueCount, 25, 2, 2); + LinkTest_PrintHex(GetBlockReceivedStatus(), 15, 5, 2); + LinkTest_PrintHex(gLinkDebugSeed, 2, 12, 8); + LinkTest_PrintHex(gLinkDebugFlags, 2, 13, 8); + LinkTest_PrintHex(GetSioMultiSI(), 25, 5, 1); + LinkTest_PrintHex(IsSioMultiMaster(), 25, 6, 1); + LinkTest_PrintHex(IsLinkConnectionEstablished(), 25, 7, 1); + LinkTest_PrintHex(HasLinkErrorOccurred(), 25, 8, 1); + for (i = 0; i < MAX_LINK_PLAYERS; i++) - { - LinkTest_prnthex(gLinkTestBlockChecksums[i], 10, 4 + i, 4); - } + LinkTest_PrintHex(gLinkTestBlockChecksums[i], 10, 4 + i, 4); } void SetLinkDebugValues(u32 seed, u32 flags) @@ -1298,9 +1260,8 @@ u8 GetSavedLinkPlayerCountAsBitFlags(void) flags = 0; for (i = 0; i < gSavedLinkPlayerCount; i++) - { flags |= (1 << i); - } + return flags; } @@ -1311,9 +1272,8 @@ u8 GetLinkPlayerCountAsBitFlags(void) flags = 0; for (i = 0; i < GetLinkPlayerCount(); i++) - { flags |= (1 << i); - } + return flags; } @@ -1324,9 +1284,7 @@ void SaveLinkPlayers(u8 playerCount) gSavedLinkPlayerCount = playerCount; gSavedMultiplayerId = GetMultiplayerId(); for (i = 0; i < MAX_RFU_PLAYERS; i++) - { - gSavedLinkPlayers[i] = gLinkPlayers[i]; - } + sSavedLinkPlayers[i] = gLinkPlayers[i]; } // The number of players when trading began. This is frequently compared against the @@ -1349,7 +1307,7 @@ bool8 DoesLinkPlayerCountMatchSaved(void) for (i = 0; i < gSavedLinkPlayerCount; i++) { - if (gLinkPlayers[i].trainerId == gSavedLinkPlayers[i].trainerId) + if (gLinkPlayers[i].trainerId == sSavedLinkPlayers[i].trainerId) { if (gLinkType == LINKTYPE_BATTLE_TOWER) { @@ -1375,12 +1333,15 @@ bool8 DoesLinkPlayerCountMatchSaved(void) void ClearSavedLinkPlayers(void) { int i; - - // Clearly not what was meant to be written, but here it is anyway. - for (i = 0; i < 4; i++) - { - CpuSet(&gSavedLinkPlayers[i], NULL, sizeof(struct LinkPlayer)); - } + // The CpuSet loop below is incorrectly writing to NULL + // instead of sSavedLinkPlayers. + // Additionally it's using the wrong array size. +#ifdef UBFIX + memset(sSavedLinkPlayers, 0, sizeof(sSavedLinkPlayers)); +#else + for (i = 0; i < MAX_LINK_PLAYERS; i++) + CpuSet(&sSavedLinkPlayers[i], NULL, sizeof(struct LinkPlayer)); +#endif } void CheckLinkPlayersMatchSaved(void) @@ -1389,8 +1350,8 @@ void CheckLinkPlayersMatchSaved(void) for (i = 0; i < gSavedLinkPlayerCount; i++) { - if (gSavedLinkPlayers[i].trainerId != gLinkPlayers[i].trainerId - || StringCompare(gSavedLinkPlayers[i].name, gLinkPlayers[i].name) != 0) + if (sSavedLinkPlayers[i].trainerId != gLinkPlayers[i].trainerId + || StringCompare(sSavedLinkPlayers[i].name, gLinkPlayers[i].name) != 0) { gLinkErrorOccurred = TRUE; CloseLink(); @@ -1413,9 +1374,8 @@ u8 GetLinkPlayerCount_2(void) bool8 IsLinkMaster(void) { if (gWirelessCommType) - { return Rfu_IsMaster(); - } + return EXTRACT_MASTER(gLinkStatus); } @@ -1568,9 +1528,8 @@ void SetLinkStandbyCallback(void) else { if (gLinkCallback == NULL) - { gLinkCallback = LinkCB_Standby; - } + gLinkDummy1 = FALSE; } } @@ -1606,7 +1565,7 @@ static void LinkCB_StandbyForAll(void) static void CheckErrorStatus(void) { - if (gLinkOpen && EXTRACT_LINK_ERRORS(gLinkStatus)) + if (sLinkOpen && EXTRACT_LINK_ERRORS(gLinkStatus)) { if (!gSuppressLinkErrorMessage) { @@ -1620,12 +1579,12 @@ static void CheckErrorStatus(void) } } -void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 unk_06) +void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected) { sLinkErrorBuffer.status = status; sLinkErrorBuffer.lastSendQueueCount = lastSendQueueCount; sLinkErrorBuffer.lastRecvQueueCount = lastRecvQueueCount; - sLinkErrorBuffer.unk_06 = unk_06; + sLinkErrorBuffer.disconnected = disconnected; } void CB2_LinkError(void) @@ -1645,16 +1604,15 @@ void CB2_LinkError(void) ScanlineEffect_Stop(); if (gWirelessCommType) { - if (!sLinkErrorBuffer.unk_06) - { + if (!sLinkErrorBuffer.disconnected) gWirelessCommType = 3; - } + ResetLinkRfuGFLayer(); } SetVBlankCallback(VBlankCB_LinkError); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sLinkErrorBgTemplates, ARRAY_COUNT(sLinkErrorBgTemplates)); - sLinkErrorBgTilemapBuffer = tilemapBuffer = malloc(0x800); + sLinkErrorBgTilemapBuffer = tilemapBuffer = malloc(BG_SCREEN_SIZE); SetBgTilemapBuffer(1, tilemapBuffer); if (InitWindows(sLinkErrorWindowTemplates)) { @@ -1714,14 +1672,16 @@ static void CB2_PrintErrorMessage(void) switch (gMain.state) { case 00: - if (sLinkErrorBuffer.unk_06) + // Below is only true for the RFU, so the other error + // type is inferred to be from a wired connection + if (sLinkErrorBuffer.disconnected) ErrorMsg_MoveCloserToPartner(); else ErrorMsg_CheckConnections(); break; case 02: ShowBg(0); - if (sLinkErrorBuffer.unk_06) + if (sLinkErrorBuffer.disconnected) ShowBg(1); break; case 30: @@ -1748,7 +1708,7 @@ static void CB2_PrintErrorMessage(void) { PlaySE(SE_PIN); gWirelessCommType = 0; - sLinkErrorBuffer.unk_06 = 0; + sLinkErrorBuffer.disconnected = FALSE; sub_81700F8(); } } @@ -1762,10 +1722,9 @@ static void CB2_PrintErrorMessage(void) } } } + if (gMain.state != 160) - { gMain.state++; - } } // TODO: there might be a file boundary here, let's name it @@ -1795,7 +1754,7 @@ bool8 HasLinkErrorOccurred(void) return gLinkErrorOccurred; } -void sub_800B348(void) +void LocalLinkPlayerToBlock(void) { struct LinkPlayerBlock *block; @@ -1816,11 +1775,11 @@ void LinkPlayerFromBlock(u32 who) block = (struct LinkPlayerBlock *)gBlockRecvBuffer[who_]; player = &gLinkPlayers[who_]; *player = block->linkPlayer; - sub_800B524(player); - if (strcmp(block->magic1, sASCIIGameFreakInc) != 0 || strcmp(block->magic2, sASCIIGameFreakInc) != 0) - { + ConvertLinkPlayerName(player); + + if (strcmp(block->magic1, sASCIIGameFreakInc) != 0 + || strcmp(block->magic2, sASCIIGameFreakInc) != 0) SetMainCallback2(CB2_LinkError); - } } bool8 HandleLinkConnection(void) @@ -1832,10 +1791,9 @@ bool8 HandleLinkConnection(void) { gLinkStatus = LinkMain1(&gShouldAdvanceLinkState, gSendCmd, gRecvCmds); LinkMain2(&gMain.heldKeys); + if ((gLinkStatus & LINK_STAT_RECEIVED_NOTHING) && sub_808766C() == TRUE) - { return TRUE; - } } else { @@ -1844,9 +1802,7 @@ bool8 HandleLinkConnection(void) if (sub_808766C() == TRUE) { if (r4 == TRUE || IsRfuRecvQueueEmpty() || r5) - { return TRUE; - } } } return FALSE; @@ -1855,42 +1811,34 @@ bool8 HandleLinkConnection(void) void SetWirelessCommType1(void) { if (gReceivedRemoteLinkPlayers == 0) - { gWirelessCommType = 1; - } } static void SetWirelessCommType0_Internal(void) { if (gReceivedRemoteLinkPlayers == 0) - { gWirelessCommType = 0; - } } void SetWirelessCommType0(void) { if (gReceivedRemoteLinkPlayers == 0) - { gWirelessCommType = 0; - } } u32 GetLinkRecvQueueLength(void) { if (gWirelessCommType != 0) - { return GetRfuRecvQueueLength(); - } + return gLink.recvQueue.count; } -bool32 sub_800B504(void) +bool32 IsLinkRecvQueueLengthAtLeast3(void) { if (GetLinkRecvQueueLength() > 2) - { return TRUE; - } + return FALSE; } @@ -1900,9 +1848,9 @@ u8 GetWirelessCommType(void) return gWirelessCommType; } -void sub_800B524(struct LinkPlayer *player) +void ConvertLinkPlayerName(struct LinkPlayer *player) { - player->progressFlagsCopy = player->progressFlags; + player->progressFlagsCopy = player->progressFlags; // ? Perhaps relocating for a longer name field ConvertInternationalString(player->name, player->language); } @@ -2410,9 +2358,7 @@ void ResetSendBuffer(void) for (i = 0; i < CMD_LENGTH; i++) { for (j = 0; j < QUEUE_CAPACITY; j++) - { - gLink.sendQueue.data[i][j] = 0xEFFF; - } + gLink.sendQueue.data[i][j] = LINKCMD_NONE; } } @@ -2429,9 +2375,7 @@ void ResetRecvBuffer(void) for (j = 0; j < CMD_LENGTH; j++) { for (k = 0; k < QUEUE_CAPACITY; k++) - { - gLink.recvQueue.data[i][j][k] = 0xEFFF; - } + gLink.recvQueue.data[i][j][k] = LINKCMD_NONE; } } } diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 54f21ed9f782..6366b97047f3 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -1697,7 +1697,7 @@ static void sub_801084C(u8 taskId) if (AreNoPlayersReceiving()) { ResetBlockReceivedFlags(); - sub_800B348(); + LocalLinkPlayerToBlock(); gTasks[taskId].data[0]++; } break; @@ -1786,7 +1786,7 @@ static void ReceiveRfuLinkPlayers(const struct SioInfo *sioInfo) for (i = 0; i < MAX_RFU_PLAYERS; i++) { gLinkPlayers[i] = sioInfo->linkPlayers[i]; - sub_800B524(gLinkPlayers + i); + ConvertLinkPlayerName(gLinkPlayers + i); } } @@ -1831,7 +1831,7 @@ static void Task_ExchangeLinkPlayers(u8 taskId) ResetBlockReceivedFlag(r4); r2 = (struct LinkPlayerBlock *)gBlockRecvBuffer[r4]; gLinkPlayers[r4] = r2->linkPlayer; - sub_800B524(gLinkPlayers + r4); + ConvertLinkPlayerName(gLinkPlayers + r4); gTasks[taskId].data[0]++; } break; @@ -1887,7 +1887,7 @@ static void sub_8010D0C(u8 taskId) case 0: if (Rfu.playerCount) { - sub_800B348(); + LocalLinkPlayerToBlock(); SendBlock(0, gBlockSendBuffer, sizeof(struct LinkPlayerBlock)); gTasks[taskId].data[0]++; } diff --git a/src/menu_helpers.c b/src/menu_helpers.c index b31d84a1e377..3fe19efcce3c 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -319,7 +319,7 @@ bool8 MenuHelpers_CallLinkSomething(void) { if (sub_81221D0() == TRUE) return TRUE; - else if (sub_800B504() != TRUE) + else if (IsLinkRecvQueueLengthAtLeast3() != TRUE) return FALSE; else return TRUE; diff --git a/src/trade.c b/src/trade.c index a42c9c805380..0e5110a589fd 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1160,12 +1160,12 @@ static void ReactToLinkTradeData(u8 mpId, u8 status) { switch (gBlockRecvBuffer[0][0]) { - case LINKCMD_CANCEL_TRADE: + case LINKCMD_BOTH_CANCEL_TRADE: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); PrintTradeMessage(TRADE_MSG_WAITING_FOR_FRIEND); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_CANCEL_TRADE_1; break; - case LINKCMD_0xEECC: + case LINKCMD_PARTNER_CANCEL_TRADE: PrintTradeMessage(TRADE_MSG_FRIEND_WANTS_TO_TRADE); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_REDRAW_MAIN_MENU; break; @@ -1180,7 +1180,7 @@ static void ReactToLinkTradeData(u8 mpId, u8 status) BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_LINK_TRADE_WAIT_FADE; break; - case LINKCMD_0xDDEE: + case LINKCMD_PLAYER_CANCEL_TRADE: PrintTradeMessage(TRADE_MSG_CANCELED); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_REDRAW_MAIN_MENU; } @@ -1208,7 +1208,7 @@ static void QueueLinkTradeData(void) && sTradeMenuData->partnerLinkFlagChoseAction == WANTS_TO_CANCEL) { PrintTradeMessage(TRADE_MSG_CANCELED); - sTradeMenuData->linkData[0] = LINKCMD_0xEECC; + sTradeMenuData->linkData[0] = LINKCMD_PARTNER_CANCEL_TRADE; sTradeMenuData->linkData[1] = 0; QueueAction(QUEUE_DELAY_DATA, QUEUE_SEND_DATA); sTradeMenuData->playerLinkFlagStatus = sTradeMenuData->partnerLinkFlagStatus = 0; @@ -1219,7 +1219,7 @@ static void QueueLinkTradeData(void) && sTradeMenuData->partnerLinkFlagChoseAction == WANTS_TO_TRADE) { PrintTradeMessage(TRADE_MSG_FRIEND_WANTS_TO_TRADE); - sTradeMenuData->linkData[0] = LINKCMD_0xDDEE; + sTradeMenuData->linkData[0] = LINKCMD_PLAYER_CANCEL_TRADE; sTradeMenuData->linkData[1] = 0; QueueAction(QUEUE_DELAY_DATA, QUEUE_SEND_DATA); sTradeMenuData->playerLinkFlagStatus = sTradeMenuData->partnerLinkFlagStatus = 0; @@ -1229,7 +1229,7 @@ static void QueueLinkTradeData(void) else if (sTradeMenuData->playerLinkFlagChoseAction == WANTS_TO_CANCEL && sTradeMenuData->partnerLinkFlagChoseAction == WANTS_TO_CANCEL) { - sTradeMenuData->linkData[0] = LINKCMD_CANCEL_TRADE; + sTradeMenuData->linkData[0] = LINKCMD_BOTH_CANCEL_TRADE; sTradeMenuData->linkData[1] = 0; QueueAction(QUEUE_DELAY_DATA, QUEUE_SEND_DATA); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); @@ -1255,7 +1255,7 @@ static void QueueLinkTradeData(void) || sTradeMenuData->partnerLinkFlagStatus == CANCEL_TRADE) { PrintTradeMessage(TRADE_MSG_CANCELED); - sTradeMenuData->linkData[0] = LINKCMD_0xDDEE; + sTradeMenuData->linkData[0] = LINKCMD_PLAYER_CANCEL_TRADE; sTradeMenuData->linkData[1] = 0; QueueAction(QUEUE_DELAY_DATA, QUEUE_SEND_DATA); sTradeMenuData->playerLinkFlagStatus = 0; From 28aff5b179d14aa8cb440d2f72c3e098482f6a75 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 19 Mar 2021 17:01:31 -0400 Subject: [PATCH 048/762] Correct ClearRankingHallRecords bugfix --- src/frontier_util.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/frontier_util.c b/src/frontier_util.c index 095c750a6986..491aef93677a 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -2383,13 +2383,13 @@ void ClearRankingHallRecords(void) { s32 i, j, k; - // BUG: Passing 0 as a pointer instead of a pointer holding a value of 0. - #ifdef BUGFIX - u8 zero = 0; - #define ZERO (&zero) - #else + // UB: Passing 0 as a pointer instead of a pointer holding a value of 0. +#ifdef UBFIX + u8 emptyId[TRAINER_ID_LENGTH] = {0}; + #define ZERO emptyId +#else #define ZERO 0 - #endif +#endif for (i = 0; i < HALL_FACILITIES_COUNT; i++) { From dfc6ee0e9e20658a80e4080da16c2f6423b85457 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 19 Mar 2021 18:17:43 -0400 Subject: [PATCH 049/762] Add SAFE_DIV --- gflib/sprite.c | 7 +------ include/global.h | 8 ++++++++ src/battle_anim_mons.c | 4 ++-- src/field_effect.c | 12 ++---------- src/intro.c | 2 +- src/pokedex.c | 11 +---------- 6 files changed, 15 insertions(+), 29 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 764ead3d39a2..c66b1e47dc25 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -1329,12 +1329,7 @@ void ApplyAffineAnimFrameRelativeAndUpdateMatrix(u8 matrixNum, struct AffineAnim s16 ConvertScaleParam(s16 scale) { s32 val = 0x10000; - // UB: possible division by zero -#ifdef UBFIX - if (scale == 0) - return 0; -#endif //UBFIX - return val / scale; + return SAFE_DIV(val, scale); } void GetAffineAnimFrame(u8 matrixNum, struct Sprite *sprite, struct AffineAnimFrameCmd *frameCmd) diff --git a/include/global.h b/include/global.h index 1992ff8196f5..112d2cbc4238 100644 --- a/include/global.h +++ b/include/global.h @@ -74,6 +74,14 @@ #define abs(x) (((x) < 0) ? -(x) : (x)) #endif +// 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) +#else +#define SAFE_DIV(a, b) ((a) / (b)) +#endif + // Extracts the upper 16 bits of a 32-bit number #define HIHALF(n) (((n) & 0xFFFF0000) >> 16) diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 3f4a35475f9b..688009519d5a 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1815,7 +1815,7 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId) { int var = 64 - GetBattlerYDeltaFromSpriteId(spriteId) * 2; u16 matrix = gSprites[spriteId].oam.matrixNum; - int var2 = (var << 8) / gOamMatrices[matrix].d; + int var2 = SAFE_DIV(var << 8, gOamMatrices[matrix].d); if (var2 > 128) var2 = 128; @@ -1828,7 +1828,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId) { int var = 64 - GetBattlerYDeltaFromSpriteId(otherSpriteId) * 2; u16 matrix = gSprites[spriteId].oam.matrixNum; - int var2 = (var << 8) / gOamMatrices[matrix].d; + int var2 = SAFE_DIV(var << 8, gOamMatrices[matrix].d); if (var2 > 128) var2 = 128; diff --git a/src/field_effect.c b/src/field_effect.c index 162a530caff6..a70ef2892f04 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3853,16 +3853,8 @@ static void Task_MoveDeoxysRock(u8 taskId) case 0: data[4] = sprite->pos1.x << 4; data[5] = sprite->pos1.y << 4; - - // UB: Possible divide by zero - #ifdef UBFIX - #define DIVISOR (data[8] ? data[8] : 1); - #else - #define DIVISOR (data[8]) - #endif - - data[6] = (data[2] * 16 - data[4]) / DIVISOR; - data[7] = (data[3] * 16 - data[5]) / DIVISOR; + data[6] = SAFE_DIV(data[2] * 16 - data[4], data[8]); + data[7] = SAFE_DIV(data[3] * 16 - data[5], data[8]); data[0]++; case 1: if (data[8] != 0) diff --git a/src/intro.c b/src/intro.c index 376176fe4407..324ec6d4613e 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1576,7 +1576,7 @@ static void Task_IntroSpinAndZoomPokeball(u8 taskId) gTasks[taskId].func = Task_IntroWaitToSetupPart3LegendsFight; } - PanFadeAndZoomScreen(0x78, 0x50, 0x10000 / gTasks[taskId].data[1], gTasks[taskId].data[0]); + PanFadeAndZoomScreen(0x78, 0x50, SAFE_DIV(0x10000, gTasks[taskId].data[1]), gTasks[taskId].data[0]); if (gIntroFrameCounter == 28) BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_WHITEALPHA); diff --git a/src/pokedex.c b/src/pokedex.c index 645d8e6c8cdb..558c27083e61 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -3032,17 +3032,8 @@ static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite) else { u32 var; - sprite->pos2.y = gSineTable[(u8)sprite->data[5]] * 76 / 256; - // UB: possible division by zero -#ifdef UBFIX - if (gSineTable[sprite->data[5] + 64] != 0) - var = 0x10000 / gSineTable[sprite->data[5] + 64]; - else - var = 0; -#else - var = 0x10000 / gSineTable[sprite->data[5] + 64]; -#endif //UBFIX + var = SAFE_DIV(0x10000, gSineTable[sprite->data[5] + 64]); if (var > 0xFFFF) var = 0xFFFF; SetOamMatrix(sprite->data[1] + 1, 0x100, 0, 0, var); From 9eb5794482fc1d529a866f53a6cadb743d8f9e2c Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 19 Mar 2021 18:58:50 -0400 Subject: [PATCH 050/762] cleanup some m4a code (thanks to shoomer) --- src/m4a.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/m4a.c b/src/m4a.c index e079ba4f63f8..7d7193334f40 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1616,6 +1616,9 @@ void ply_xcmd_0C(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *tra void ply_xcmd_0D(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track) { u32 unk; +#ifdef UBFIX + unk = 0; +#endif READ_XCMD_BYTE(unk, 0) // UB: uninitialized variable READ_XCMD_BYTE(unk, 1) @@ -1657,18 +1660,12 @@ struct MusicPlayerInfo *SetPokemonCryTone(struct ToneData *tone) mplayInfo = &gPokemonCryMusicPlayers[i]; mplayInfo->ident++; -#define CRY ((s32)&gPokemonCrySongs + i * sizeof(struct PokemonCrySong)) -#define CRY_OFS(field) offsetof(struct PokemonCrySong, field) + gPokemonCrySongs[i] = gPokemonCrySong; - memcpy((void *)CRY, &gPokemonCrySong, sizeof(struct PokemonCrySong)); - - *(u32 *)(CRY + CRY_OFS(tone)) = (u32)tone; - *(u32 *)(CRY + CRY_OFS(part)) = CRY + CRY_OFS(part0); - *(u32 *)(CRY + CRY_OFS(part) + 4) = CRY + CRY_OFS(part1); - *(u32 *)(CRY + CRY_OFS(gotoTarget)) = CRY + CRY_OFS(cont); - -#undef CRY_OFS -#undef CRY + gPokemonCrySongs[i].tone = tone; + gPokemonCrySongs[i].part[0] = &gPokemonCrySongs[i].part0; + gPokemonCrySongs[i].part[1] = &gPokemonCrySongs[i].part1; + gPokemonCrySongs[i].gotoTarget = (u32)&gPokemonCrySongs[i].cont; mplayInfo->ident = ID_NUMBER; From 6127c6f32e25aec976c290b717a2e4fddffc30d1 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 20 Mar 2021 23:47:08 -0400 Subject: [PATCH 051/762] Misc labels in battle facilities --- include/constants/battle_pike.h | 4 ++-- include/trainer_hill.h | 1 - src/battle_arena.c | 3 ++- src/battle_factory_screen.c | 24 ++++++++++++------------ src/battle_pike.c | 12 ++++++------ src/battle_tower.c | 8 ++------ src/trainer_hill.c | 10 +++++----- 7 files changed, 29 insertions(+), 33 deletions(-) diff --git a/include/constants/battle_pike.h b/include/constants/battle_pike.h index 9187ae28c004..76309436e1db 100644 --- a/include/constants/battle_pike.h +++ b/include/constants/battle_pike.h @@ -42,8 +42,8 @@ #define BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM 6 #define BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM 7 #define BATTLE_PIKE_FUNC_SAVE 8 -#define BATTLE_PIKE_FUNC_NULL_9 9 -#define BATTLE_PIKE_FUNC_NULL_10 10 +#define BATTLE_PIKE_FUNC_DUMMY_1 9 +#define BATTLE_PIKE_FUNC_DUMMY_2 10 #define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11 #define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12 #define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13 diff --git a/include/trainer_hill.h b/include/trainer_hill.h index 94d29a7cad4a..acf8faccaa26 100644 --- a/include/trainer_hill.h +++ b/include/trainer_hill.h @@ -66,7 +66,6 @@ void InitTrainerHillBattleStruct(void); void FreeTrainerHillBattleStruct(void); void CopyTrainerHillTrainerText(u8 which, u16 trainerId); bool8 InTrainerHillChallenge(void); -void nullsub_129(void); void PrintOnTrainerHillRecordsWindow(void); void LoadTrainerHillObjectEventTemplates(void); bool32 LoadTrainerHillFloorObjectEventScripts(void); diff --git a/src/battle_arena.c b/src/battle_arena.c index 0ffba49108a1..11c918225a4d 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -774,7 +774,8 @@ void BattleArena_DeductMindPoints(u8 battler, u16 stringId) } } -void sub_81A586C(u8 battler) // Unused. +// Unused +static void UpdateHPAtStart(u8 battler) { u16 *hpAtStart = gBattleStruct->arenaStartHp; diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 8c056da1b908..7b0af774a1b1 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -529,7 +529,7 @@ static const union AnimCmd * const sAnims_Select_Pokeball[] = sAnim_Select_Pokeball_Moving, }; -static const union AffineAnimCmd gUnknown_0861050C[] = +static const union AffineAnimCmd sAffineAnim_Select_MonPicBg_Opening[] = { AFFINEANIMCMD_FRAME(5, 5, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 0, 1), @@ -545,7 +545,7 @@ static const union AffineAnimCmd gUnknown_0861050C[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_0861056C[] = +static const union AffineAnimCmd sAffineAnim_Select_MonPicBg_Closing[] = { AFFINEANIMCMD_FRAME(128, 5, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 0, 1), @@ -559,7 +559,7 @@ static const union AffineAnimCmd gUnknown_0861056C[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_086105BC[] = +static const union AffineAnimCmd sAffineAnim_Select_MonPicBg_Open[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END, @@ -567,9 +567,9 @@ static const union AffineAnimCmd gUnknown_086105BC[] = static const union AffineAnimCmd * const sAffineAnims_Select_MonPicBgAnim[] = { - gUnknown_0861050C, - gUnknown_0861056C, - gUnknown_086105BC, + sAffineAnim_Select_MonPicBg_Opening, + sAffineAnim_Select_MonPicBg_Closing, + sAffineAnim_Select_MonPicBg_Open, }; static const struct SpriteTemplate sSpriteTemplate_Select_Pokeball = @@ -780,7 +780,7 @@ static const union AnimCmd * const sAnims_Swap_Pokeball[] = sAnim_Swap_Pokeball_Moving, }; -static const union AffineAnimCmd gUnknown_08610768[] = +static const union AffineAnimCmd sAffineAnim_Swap_MonPicBg_Opening[] = { AFFINEANIMCMD_FRAME(5, 5, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 0, 1), @@ -796,7 +796,7 @@ static const union AffineAnimCmd gUnknown_08610768[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_086107C8[] = +static const union AffineAnimCmd sAffineAnim_Swap_MonPicBg_Closing[] = { AFFINEANIMCMD_FRAME(128, 5, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 0, 1), @@ -810,7 +810,7 @@ static const union AffineAnimCmd gUnknown_086107C8[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_08610818[] = +static const union AffineAnimCmd sAffineAnim_Swap_MonPicBg_Open[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END, @@ -818,9 +818,9 @@ static const union AffineAnimCmd gUnknown_08610818[] = static const union AffineAnimCmd * const sAffineAnims_Swap_MonPicBgAnim[] = { - gUnknown_08610768, - gUnknown_086107C8, - gUnknown_08610818, + sAffineAnim_Swap_MonPicBg_Opening, + sAffineAnim_Swap_MonPicBg_Closing, + sAffineAnim_Swap_MonPicBg_Open, }; static const struct SpriteTemplate sSpriteTemplate_Swap_Pokeball = diff --git a/src/battle_pike.c b/src/battle_pike.c index ccb52fda224f..ed89f5ed9644 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -57,8 +57,8 @@ static void GetRoomType(void); static void SetInWildMonRoom(void); static void ClearInWildMonRoom(void); static void SavePikeChallenge(void); -static void nullsub_76(void); -static void nullsub_124(void); +static void PikeDummy1(void); +static void PikeDummy2(void); static void GetRoomInflictedStatus(void); static void GetRoomInflictedStatusMon(void); static void HealOneOrTwoMons(void); @@ -488,8 +488,8 @@ static void (* const sBattlePikeFunctions[])(void) = [BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM] = SetInWildMonRoom, [BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM] = ClearInWildMonRoom, [BATTLE_PIKE_FUNC_SAVE] = SavePikeChallenge, - [BATTLE_PIKE_FUNC_NULL_9] = nullsub_76, - [BATTLE_PIKE_FUNC_NULL_10] = nullsub_124, + [BATTLE_PIKE_FUNC_DUMMY_1] = PikeDummy1, + [BATTLE_PIKE_FUNC_DUMMY_2] = PikeDummy2, [BATTLE_PIKE_FUNC_GET_ROOM_STATUS] = GetRoomInflictedStatus, [BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON] = GetRoomInflictedStatusMon, [BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS] = HealOneOrTwoMons, @@ -715,12 +715,12 @@ static void SavePikeChallenge(void) TrySavingData(SAVE_LINK); } -static void nullsub_76(void) +static void PikeDummy1(void) { } -static void nullsub_124(void) +static void PikeDummy2(void) { } diff --git a/src/battle_tower.c b/src/battle_tower.c index 1bf4b737c971..b1e5d78172ef 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -878,12 +878,8 @@ static const u16 sFrontierTrainerIdRangesHard[][2] = {FRONTIER_TRAINER_JAXON, FRONTIER_TRAINER_GRETEL}, // 200 - 299 }; -// Trainer IDs? Don't make sense as part of previous array, min/max relationship reversed and never accessed -static const u16 sUnused_085DFA1A[][2] = -{ - {179, 141}, // FRONTIER_TRAINER_ALISON - FRONTIER_TRAINER_KAYDEN - {200, 183}, // FRONTIER_TRAINER_JAXON - FRONTIER_TRAINER_HUNTER -}; +// Unknown, unused data +static const u16 sUnused[] = { 179, 141, 200, 183 }; static const u8 sBattleTowerPartySizes[FRONTIER_MODE_COUNT] = { diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 18d56723cf31..3bc6c970b567 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -74,7 +74,7 @@ static void GetChallengeWon(void); static void TrainerHillSetTag(void); static void SetUpDataStruct(void); static void FreeDataStruct(void); -static void nullsub_2(void); +static void TrainerHillDummy(void); static void SetTimerValue(u32 *dst, u32 val); static u32 GetTimerValue(u32 *src); static void SetTrainerHillMonLevel(struct Pokemon *mon, u8 level); @@ -358,7 +358,7 @@ static void SetUpDataStruct(void) sHillData = AllocZeroed(sizeof(*sHillData)); sHillData->floorId = gMapHeader.mapLayoutId - LAYOUT_TRAINER_HILL_1F; CpuCopy32(sDataPerTag[gSaveBlock1Ptr->trainerHill.tag], &sHillData->tag, sizeof(sHillData->tag) + 4 * sizeof(struct TrHillFloor)); - nullsub_2(); + TrainerHillDummy(); } } @@ -397,7 +397,7 @@ void CopyTrainerHillTrainerText(u8 which, u16 trainerId) static void TrainerHillStartChallenge(void) { - nullsub_2(); + TrainerHillDummy(); if (!ReadTrainerHillAndValidate()) gSaveBlock1Ptr->trainerHill.field_3D6E_0f = 1; else @@ -573,12 +573,12 @@ static void IsTrainerHillChallengeActive(void) gSpecialVar_Result = TRUE; } -void nullsub_129(void) +static void TrainerHillDummy_Unused(void) { } -static void nullsub_2(void) +static void TrainerHillDummy(void) { } From 9773b436d22872e2e7017b7fd733ca48710abab5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Mar 2021 00:00:16 -0400 Subject: [PATCH 052/762] Clean up shop.c --- src/shop.c | 261 ++++++++++++++++++++++++++--------------------------- 1 file changed, 130 insertions(+), 131 deletions(-) diff --git a/src/shop.c b/src/shop.c index 26bd964c5466..dac43c96d16e 100755 --- a/src/shop.c +++ b/src/shop.c @@ -40,11 +40,14 @@ #include "constants/songs.h" #include "constants/tv.h" -EWRAM_DATA struct MartInfo gMartInfo = {0}; -EWRAM_DATA struct ShopData *gShopDataPtr = NULL; -EWRAM_DATA struct ListMenuItem *gUnknown_02039F74 = NULL; -EWRAM_DATA u8 (*gUnknown_02039F78)[16] = {0}; -EWRAM_DATA u8 gMartPurchaseHistoryId = 0; +#define TAG_SCROLL_ARROW 2100 +#define TAG_ITEM_ICON_BASE 2110 + +static EWRAM_DATA struct MartInfo sMartInfo = {0}; +static EWRAM_DATA struct ShopData *sShopData = NULL; +static EWRAM_DATA struct ListMenuItem *sListMenuItems = NULL; +static EWRAM_DATA u8 (*sItemNames)[16] = {0}; +static EWRAM_DATA u8 sPurchaseHistoryId = 0; EWRAM_DATA struct ItemSlot gMartPurchaseHistory[3] = {0}; static void Task_ShopMenu(u8 taskId); @@ -276,15 +279,15 @@ static u8 CreateShopMenu(u8 martType) int numMenuItems; ScriptContext2_Enable(); - gMartInfo.martType = martType; + sMartInfo.martType = martType; if (martType == MART_TYPE_NORMAL) { struct WindowTemplate winTemplate; winTemplate = sShopMenuWindowTemplates[0]; winTemplate.width = GetMaxWidthInMenuTable(sShopMenuActions_BuySellQuit, ARRAY_COUNT(sShopMenuActions_BuySellQuit)); - gMartInfo.windowId = AddWindow(&winTemplate); - gMartInfo.menuActions = sShopMenuActions_BuySellQuit; + sMartInfo.windowId = AddWindow(&winTemplate); + sMartInfo.menuActions = sShopMenuActions_BuySellQuit; numMenuItems = ARRAY_COUNT(sShopMenuActions_BuySellQuit); } else @@ -292,35 +295,35 @@ static u8 CreateShopMenu(u8 martType) struct WindowTemplate winTemplate; winTemplate = sShopMenuWindowTemplates[1]; winTemplate.width = GetMaxWidthInMenuTable(sShopMenuActions_BuyQuit, ARRAY_COUNT(sShopMenuActions_BuyQuit)); - gMartInfo.windowId = AddWindow(&winTemplate); - gMartInfo.menuActions = sShopMenuActions_BuyQuit; + sMartInfo.windowId = AddWindow(&winTemplate); + sMartInfo.menuActions = sShopMenuActions_BuyQuit; numMenuItems = ARRAY_COUNT(sShopMenuActions_BuyQuit); } - SetStandardWindowBorderStyle(gMartInfo.windowId, 0); - PrintMenuTable(gMartInfo.windowId, numMenuItems, gMartInfo.menuActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(gMartInfo.windowId, numMenuItems, 0); - PutWindowTilemap(gMartInfo.windowId); - CopyWindowToVram(gMartInfo.windowId, 1); + SetStandardWindowBorderStyle(sMartInfo.windowId, 0); + PrintMenuTable(sMartInfo.windowId, numMenuItems, sMartInfo.menuActions); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sMartInfo.windowId, numMenuItems, 0); + PutWindowTilemap(sMartInfo.windowId); + CopyWindowToVram(sMartInfo.windowId, 1); return CreateTask(Task_ShopMenu, 8); } static void SetShopMenuCallback(void (* callback)(void)) { - gMartInfo.callback = callback; + sMartInfo.callback = callback; } static void SetShopItemsForSale(const u16 *items) { u16 i = 0; - gMartInfo.itemList = items; - gMartInfo.itemCount = 0; + sMartInfo.itemList = items; + sMartInfo.itemCount = 0; - while (gMartInfo.itemList[i]) + while (sMartInfo.itemList[i]) { - gMartInfo.itemCount++; + sMartInfo.itemCount++; i++; } } @@ -337,7 +340,7 @@ static void Task_ShopMenu(u8 taskId) Task_HandleShopMenuQuit(taskId); break; default: - gMartInfo.menuActions[inputCode].func.void_u8(taskId); + sMartInfo.menuActions[inputCode].func.void_u8(taskId); break; } } @@ -368,14 +371,14 @@ void CB2_ExitSellMenu(void) static void Task_HandleShopMenuQuit(u8 taskId) { - ClearStdWindowAndFrameToTransparent(gMartInfo.windowId, 2); - RemoveWindow(gMartInfo.windowId); + ClearStdWindowAndFrameToTransparent(sMartInfo.windowId, 2); + RemoveWindow(sMartInfo.windowId); SaveRecordedItemPurchasesForTVShow(); ScriptContext2_Disable(); DestroyTask(taskId); - if (gMartInfo.callback) - gMartInfo.callback(); + if (sMartInfo.callback) + sMartInfo.callback(); } static void Task_GoToBuyOrSellMenu(u8 taskId) @@ -398,7 +401,7 @@ static void Task_ReturnToShopMenu(u8 taskId) { if (IsWeatherNotFadingIn() == TRUE) { - if (gMartInfo.martType == MART_TYPE_DECOR2) + if (sMartInfo.martType == MART_TYPE_DECOR2) DisplayItemMessageOnField(taskId, gText_CanIHelpWithAnythingElse, ShowShopMenuAfterExitingBuyOrSellMenu); else DisplayItemMessageOnField(taskId, gText_AnythingElseICanHelp, ShowShopMenuAfterExitingBuyOrSellMenu); @@ -407,7 +410,7 @@ static void Task_ReturnToShopMenu(u8 taskId) static void ShowShopMenuAfterExitingBuyOrSellMenu(u8 taskId) { - CreateShopMenu(gMartInfo.martType); + CreateShopMenu(sMartInfo.martType); DestroyTask(taskId); } @@ -447,10 +450,10 @@ static void CB2_InitBuyMenu(void) ResetSpriteData(); ResetTasks(); ClearScheduledBgCopiesToVram(); - gShopDataPtr = AllocZeroed(sizeof(struct ShopData)); - gShopDataPtr->scrollIndicatorsTaskId = TASK_NONE; - gShopDataPtr->itemSpriteIds[0] = SPRITE_NONE; - gShopDataPtr->itemSpriteIds[1] = SPRITE_NONE; + sShopData = AllocZeroed(sizeof(struct ShopData)); + sShopData->scrollIndicatorsTaskId = TASK_NONE; + sShopData->itemSpriteIds[0] = SPRITE_NONE; + sShopData->itemSpriteIds[1] = SPRITE_NONE; BuyMenuBuildListMenuTemplate(); BuyMenuInitBgs(); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); @@ -480,9 +483,9 @@ static void CB2_InitBuyMenu(void) static void BuyMenuFreeMemory(void) { - Free(gShopDataPtr); - Free(gUnknown_02039F74); - Free(gUnknown_02039F78); + Free(sShopData); + Free(sListMenuItems); + Free(sItemNames); FreeAllWindowBuffers(); } @@ -490,29 +493,29 @@ static void BuyMenuBuildListMenuTemplate(void) { u16 i; - gUnknown_02039F74 = Alloc((gMartInfo.itemCount + 1) * sizeof(*gUnknown_02039F74)); - gUnknown_02039F78 = Alloc((gMartInfo.itemCount + 1) * sizeof(*gUnknown_02039F78)); - for (i = 0; i < gMartInfo.itemCount; i++) - BuyMenuSetListEntry(&gUnknown_02039F74[i], gMartInfo.itemList[i], gUnknown_02039F78[i]); + sListMenuItems = Alloc((sMartInfo.itemCount + 1) * sizeof(*sListMenuItems)); + sItemNames = Alloc((sMartInfo.itemCount + 1) * sizeof(*sItemNames)); + for (i = 0; i < sMartInfo.itemCount; i++) + BuyMenuSetListEntry(&sListMenuItems[i], sMartInfo.itemList[i], sItemNames[i]); - StringCopy(gUnknown_02039F78[i], gText_Cancel2); - gUnknown_02039F74[i].name = gUnknown_02039F78[i]; - gUnknown_02039F74[i].id = -2; + StringCopy(sItemNames[i], gText_Cancel2); + sListMenuItems[i].name = sItemNames[i]; + sListMenuItems[i].id = LIST_CANCEL; gMultiuseListMenuTemplate = sShopBuyMenuListTemplate; - gMultiuseListMenuTemplate.items = gUnknown_02039F74; - gMultiuseListMenuTemplate.totalItems = gMartInfo.itemCount + 1; + gMultiuseListMenuTemplate.items = sListMenuItems; + gMultiuseListMenuTemplate.totalItems = sMartInfo.itemCount + 1; if (gMultiuseListMenuTemplate.totalItems > 8) gMultiuseListMenuTemplate.maxShowed = 8; else gMultiuseListMenuTemplate.maxShowed = gMultiuseListMenuTemplate.totalItems; - gShopDataPtr->itemsShowed = gMultiuseListMenuTemplate.maxShowed; + sShopData->itemsShowed = gMultiuseListMenuTemplate.maxShowed; } static void BuyMenuSetListEntry(struct ListMenuItem *menuItem, u16 item, u8 *name) { - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) CopyItemName(item, name); else StringCopy(name, gDecorations[item].name); @@ -527,16 +530,16 @@ static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, s if (onInit != TRUE) PlaySE(SE_SELECT); - if (item != -2) - BuyMenuAddItemIcon(item, gShopDataPtr->iconSlot); + if (item != LIST_CANCEL) + BuyMenuAddItemIcon(item, sShopData->iconSlot); else - BuyMenuAddItemIcon(-1, gShopDataPtr->iconSlot); + BuyMenuAddItemIcon(-1, sShopData->iconSlot); - BuyMenuRemoveItemIcon(item, gShopDataPtr->iconSlot ^ 1); - gShopDataPtr->iconSlot ^= 1; - if (item != -2) + BuyMenuRemoveItemIcon(item, sShopData->iconSlot ^ 1); + sShopData->iconSlot ^= 1; + if (item != LIST_CANCEL) { - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) description = ItemId_GetDescription(item); else description = gDecorations[item].description; @@ -554,9 +557,9 @@ static void BuyMenuPrintPriceInList(u8 windowId, s32 item, u8 y) { u8 x; - if (item != -2) + if (item != LIST_CANCEL) { - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) { ConvertIntToDecimalStringN( gStringVar1, @@ -581,26 +584,26 @@ static void BuyMenuPrintPriceInList(u8 windowId, s32 item, u8 y) static void BuyMenuAddScrollIndicatorArrows(void) { - if (gShopDataPtr->scrollIndicatorsTaskId == TASK_NONE && gMartInfo.itemCount + 1 > 8) + if (sShopData->scrollIndicatorsTaskId == TASK_NONE && sMartInfo.itemCount + 1 > 8) { - gShopDataPtr->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized( + sShopData->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized( SCROLL_ARROW_UP, - 0xAC, - 0xC, - 0x94, - gMartInfo.itemCount - 7, - 2100, - 2100, - &gShopDataPtr->scrollOffset); + 172, + 12, + 148, + sMartInfo.itemCount - 7, + TAG_SCROLL_ARROW, + TAG_SCROLL_ARROW, + &sShopData->scrollOffset); } } static void BuyMenuRemoveScrollIndicatorArrows(void) { - if (gShopDataPtr->scrollIndicatorsTaskId != TASK_NONE) + if (sShopData->scrollIndicatorsTaskId != TASK_NONE) { - RemoveScrollIndicatorArrowPair(gShopDataPtr->scrollIndicatorsTaskId); - gShopDataPtr->scrollIndicatorsTaskId = TASK_NONE; + RemoveScrollIndicatorArrowPair(sShopData->scrollIndicatorsTaskId); + sShopData->scrollIndicatorsTaskId = TASK_NONE; } } @@ -613,13 +616,13 @@ static void BuyMenuPrintCursor(u8 scrollIndicatorsTaskId, u8 colorSet) static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) { u8 spriteId; - u8 *spriteIdPtr = &gShopDataPtr->itemSpriteIds[iconSlot]; + u8 *spriteIdPtr = &sShopData->itemSpriteIds[iconSlot]; if (*spriteIdPtr != SPRITE_NONE) return; - if (gMartInfo.martType == MART_TYPE_NORMAL || item == 0xFFFF) + if (sMartInfo.martType == MART_TYPE_NORMAL || item == 0xFFFF) { - spriteId = AddItemIconSprite(iconSlot + 2110, iconSlot + 2110, item); + spriteId = AddItemIconSprite(iconSlot + TAG_ITEM_ICON_BASE, iconSlot + TAG_ITEM_ICON_BASE, item); if (spriteId != MAX_SPRITES) { *spriteIdPtr = spriteId; @@ -629,7 +632,7 @@ static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) } else { - spriteId = AddDecorationIconObject(item, 20, 84, 1, iconSlot + 2110, iconSlot + 2110); + spriteId = AddDecorationIconObject(item, 20, 84, 1, iconSlot + TAG_ITEM_ICON_BASE, iconSlot + TAG_ITEM_ICON_BASE); if (spriteId != MAX_SPRITES) *spriteIdPtr = spriteId; } @@ -637,12 +640,12 @@ static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) static void BuyMenuRemoveItemIcon(u16 item, u8 iconSlot) { - u8 *spriteIdPtr = &gShopDataPtr->itemSpriteIds[iconSlot]; + u8 *spriteIdPtr = &sShopData->itemSpriteIds[iconSlot]; if (*spriteIdPtr == SPRITE_NONE) return; - FreeSpriteTilesByTag(iconSlot + 2110); - FreeSpritePaletteByTag(iconSlot + 2110); + FreeSpriteTilesByTag(iconSlot + TAG_ITEM_ICON_BASE); + FreeSpritePaletteByTag(iconSlot + TAG_ITEM_ICON_BASE); DestroySprite(&gSprites[*spriteIdPtr]); *spriteIdPtr = SPRITE_NONE; } @@ -651,9 +654,9 @@ static void BuyMenuInitBgs(void) { ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sShopBuyMenuBgTemplates, ARRAY_COUNT(sShopBuyMenuBgTemplates)); - SetBgTilemapBuffer(1, gShopDataPtr->tilemapBuffers[1]); - SetBgTilemapBuffer(2, gShopDataPtr->tilemapBuffers[3]); - SetBgTilemapBuffer(3, gShopDataPtr->tilemapBuffers[2]); + SetBgTilemapBuffer(1, sShopData->tilemapBuffers[1]); + SetBgTilemapBuffer(2, sShopData->tilemapBuffers[3]); + SetBgTilemapBuffer(3, sShopData->tilemapBuffers[2]); SetGpuReg(REG_OFFSET_BG0HOFS, 0); SetGpuReg(REG_OFFSET_BG0VOFS, 0); SetGpuReg(REG_OFFSET_BG1HOFS, 0); @@ -673,7 +676,7 @@ static void BuyMenuInitBgs(void) static void BuyMenuDecompressBgGraphics(void) { DecompressAndCopyTileDataToVram(1, gBuyMenuFrame_Gfx, 0x3A0, 0x3E3, 0); - LZDecompressWram(gBuyMenuFrame_Tilemap, gShopDataPtr->tilemapBuffers[0]); + LZDecompressWram(gBuyMenuFrame_Tilemap, sShopData->tilemapBuffers[0]); LoadCompressedPalette(gMenuMoneyPal, 0xC0, 0x20); } @@ -763,16 +766,16 @@ static void BuyMenuDrawMapMetatile(s16 x, s16 y, const u16 *src, u8 metatileLaye switch (metatileLayerType) { case 0: - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[3], offset1, offset2, src); - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[1], offset1, offset2, src + 4); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[3], offset1, offset2, src); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[1], offset1, offset2, src + 4); break; case 1: - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[2], offset1, offset2, src); - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[3], offset1, offset2, src + 4); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[2], offset1, offset2, src); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[3], offset1, offset2, src + 4); break; case 2: - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[2], offset1, offset2, src); - BuyMenuDrawMapMetatileLayer(gShopDataPtr->tilemapBuffers[1], offset1, offset2, src + 4); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[2], offset1, offset2, src); + BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[1], offset1, offset2, src + 4); break; } } @@ -796,7 +799,7 @@ static void BuyMenuCollectObjectEventData(void) GetXYCoordsOneStepInFrontOfPlayer(&facingX, &facingY); for (y = 0; y < OBJECT_EVENTS_COUNT; y++) - gShopDataPtr->viewportObjects[y][OBJ_EVENT_ID] = OBJECT_EVENTS_COUNT; + sShopData->viewportObjects[y][OBJ_EVENT_ID] = OBJECT_EVENTS_COUNT; for (y = 0; y < 5; y++) { for (x = 0; x < 7; x++) @@ -805,25 +808,25 @@ static void BuyMenuCollectObjectEventData(void) if (objEventId != OBJECT_EVENTS_COUNT) { - gShopDataPtr->viewportObjects[r8][OBJ_EVENT_ID] = objEventId; - gShopDataPtr->viewportObjects[r8][X_COORD] = x; - gShopDataPtr->viewportObjects[r8][Y_COORD] = y; - gShopDataPtr->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y); + sShopData->viewportObjects[r8][OBJ_EVENT_ID] = objEventId; + sShopData->viewportObjects[r8][X_COORD] = x; + sShopData->viewportObjects[r8][Y_COORD] = y; + sShopData->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y); switch (gObjectEvents[objEventId].facingDirection) { case DIR_SOUTH: - gShopDataPtr->viewportObjects[r8][ANIM_NUM] = 0; + sShopData->viewportObjects[r8][ANIM_NUM] = 0; break; case DIR_NORTH: - gShopDataPtr->viewportObjects[r8][ANIM_NUM] = 1; + sShopData->viewportObjects[r8][ANIM_NUM] = 1; break; case DIR_WEST: - gShopDataPtr->viewportObjects[r8][ANIM_NUM] = 2; + sShopData->viewportObjects[r8][ANIM_NUM] = 2; break; case DIR_EAST: default: - gShopDataPtr->viewportObjects[r8][ANIM_NUM] = 3; + sShopData->viewportObjects[r8][ANIM_NUM] = 3; break; } r8++; @@ -840,25 +843,25 @@ static void BuyMenuDrawObjectEvents(void) for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { - if (gShopDataPtr->viewportObjects[i][OBJ_EVENT_ID] == OBJECT_EVENTS_COUNT) + if (sShopData->viewportObjects[i][OBJ_EVENT_ID] == OBJECT_EVENTS_COUNT) continue; - graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[gShopDataPtr->viewportObjects[i][OBJ_EVENT_ID]].graphicsId); + graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[sShopData->viewportObjects[i][OBJ_EVENT_ID]].graphicsId); spriteId = AddPseudoObjectEvent( - gObjectEvents[gShopDataPtr->viewportObjects[i][OBJ_EVENT_ID]].graphicsId, + gObjectEvents[sShopData->viewportObjects[i][OBJ_EVENT_ID]].graphicsId, SpriteCallbackDummy, - (u16)gShopDataPtr->viewportObjects[i][X_COORD] * 16 + 8, - (u16)gShopDataPtr->viewportObjects[i][Y_COORD] * 16 + 48 - graphicsInfo->height / 2, + (u16)sShopData->viewportObjects[i][X_COORD] * 16 + 8, + (u16)sShopData->viewportObjects[i][Y_COORD] * 16 + 48 - graphicsInfo->height / 2, 2); - if (BuyMenuCheckIfObjectEventOverlapsMenuBg(gShopDataPtr->viewportObjects[i]) == TRUE) + if (BuyMenuCheckIfObjectEventOverlapsMenuBg(sShopData->viewportObjects[i]) == TRUE) { gSprites[spriteId].subspriteTableNum = 4; gSprites[spriteId].subspriteMode = SUBSPRITES_ON; } - StartSpriteAnim(&gSprites[spriteId], gShopDataPtr->viewportObjects[i][ANIM_NUM]); + StartSpriteAnim(&gSprites[spriteId], sShopData->viewportObjects[i][ANIM_NUM]); } } @@ -877,8 +880,8 @@ static bool8 BuyMenuCheckIfObjectEventOverlapsMenuBg(s16 *object) static void BuyMenuCopyMenuBgToBg1TilemapBuffer(void) { s16 i; - u16 *dest = gShopDataPtr->tilemapBuffers[1]; - const u16 *src = gShopDataPtr->tilemapBuffers[0]; + u16 *dest = sShopData->tilemapBuffers[1]; + const u16 *src = sShopData->tilemapBuffers[0]; for (i = 0; i < 1024; i++) { @@ -891,7 +894,7 @@ static void BuyMenuCopyMenuBgToBg1TilemapBuffer(void) static bool8 BuyMenuCheckForOverlapWithMenuBg(int x, int y) { - const u16 *metatile = gShopDataPtr->tilemapBuffers[0]; + const u16 *metatile = sShopData->tilemapBuffers[0]; int offset1 = x * 2; int offset2 = y * 64; @@ -913,7 +916,7 @@ static void Task_BuyMenu(u8 taskId) if (!gPaletteFade.active) { s32 itemId = ListMenu_ProcessInput(tListTaskId); - ListMenuGetScrollAndRow(tListTaskId, &gShopDataPtr->scrollOffset, &gShopDataPtr->selectedRow); + ListMenuGetScrollAndRow(tListTaskId, &sShopData->scrollOffset, &sShopData->selectedRow); switch (itemId) { @@ -930,22 +933,22 @@ static void Task_BuyMenu(u8 taskId) BuyMenuRemoveScrollIndicatorArrows(); BuyMenuPrintCursor(tListTaskId, 2); - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) { - gShopDataPtr->totalCost = (ItemId_GetPrice(itemId) >> GetPriceReduction(POKENEWS_SLATEPORT)); + sShopData->totalCost = (ItemId_GetPrice(itemId) >> GetPriceReduction(POKENEWS_SLATEPORT)); } else { - gShopDataPtr->totalCost = gDecorations[itemId].price; + sShopData->totalCost = gDecorations[itemId].price; } - if (!IsEnoughMoney(&gSaveBlock1Ptr->money, gShopDataPtr->totalCost)) + if (!IsEnoughMoney(&gSaveBlock1Ptr->money, sShopData->totalCost)) { BuyMenuDisplayMessage(taskId, gText_YouDontHaveMoney, BuyMenuReturnToItemList); } else { - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) { CopyItemName(itemId, gStringVar1); if (ItemId_GetPocket(itemId) == POCKET_TM_HM) @@ -961,9 +964,9 @@ static void Task_BuyMenu(u8 taskId) else { StringCopy(gStringVar1, gDecorations[itemId].name); - ConvertIntToDecimalStringN(gStringVar2, gShopDataPtr->totalCost, STR_CONV_MODE_LEFT_ALIGN, 6); + ConvertIntToDecimalStringN(gStringVar2, sShopData->totalCost, STR_CONV_MODE_LEFT_ALIGN, 6); - if (gMartInfo.martType == MART_TYPE_DECOR) + if (sMartInfo.martType == MART_TYPE_DECOR) StringExpandPlaceholders(gStringVar4, gText_Var1IsItThatllBeVar2); else // MART_TYPE_DECOR2 StringExpandPlaceholders(gStringVar4, gText_YouWantedVar1ThatllBeVar2); @@ -992,15 +995,15 @@ static void Task_BuyHowManyDialogueInit(u8 taskId) BuyMenuPrintItemQuantityAndPrice(taskId); ScheduleBgCopyTilemapToVram(0); - maxQuantity = GetMoney(&gSaveBlock1Ptr->money) / gShopDataPtr->totalCost; + maxQuantity = GetMoney(&gSaveBlock1Ptr->money) / sShopData->totalCost; if (maxQuantity > MAX_BAG_ITEM_CAPACITY) { - gShopDataPtr->maxQuantity = MAX_BAG_ITEM_CAPACITY; + sShopData->maxQuantity = MAX_BAG_ITEM_CAPACITY; } else { - gShopDataPtr->maxQuantity = maxQuantity; + sShopData->maxQuantity = maxQuantity; } gTasks[taskId].func = Task_BuyHowManyDialogueHandleInput; @@ -1010,9 +1013,9 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (AdjustQuantityAccordingToDPadInput(&tItemCount, gShopDataPtr->maxQuantity) == TRUE) + if (AdjustQuantityAccordingToDPadInput(&tItemCount, sShopData->maxQuantity) == TRUE) { - gShopDataPtr->totalCost = (ItemId_GetPrice(tItemId) >> GetPriceReduction(POKENEWS_SLATEPORT)) * tItemCount; + sShopData->totalCost = (ItemId_GetPrice(tItemId) >> GetPriceReduction(POKENEWS_SLATEPORT)) * tItemCount; BuyMenuPrintItemQuantityAndPrice(taskId); } else @@ -1027,7 +1030,7 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) PutWindowTilemap(1); CopyItemName(tItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, BAG_ITEM_CAPACITY_DIGITS); - ConvertIntToDecimalStringN(gStringVar3, gShopDataPtr->totalCost, STR_CONV_MODE_LEFT_ALIGN, 6); + ConvertIntToDecimalStringN(gStringVar3, sShopData->totalCost, STR_CONV_MODE_LEFT_ALIGN, 6); BuyMenuDisplayMessage(taskId, gText_Var1AndYouWantedVar2, BuyMenuConfirmPurchase); } else if (JOY_NEW(B_BUTTON)) @@ -1053,7 +1056,7 @@ static void BuyMenuTryMakePurchase(u8 taskId) PutWindowTilemap(1); - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) { if (AddBagItem(tItemId, tItemCount) == TRUE) { @@ -1069,7 +1072,7 @@ static void BuyMenuTryMakePurchase(u8 taskId) { if (DecorationAdd(tItemId)) { - if (gMartInfo.martType == MART_TYPE_DECOR) + if (sMartInfo.martType == MART_TYPE_DECOR) BuyMenuDisplayMessage(taskId, gText_ThankYouIllSendItHome, BuyMenuSubtractMoney); else // MART_TYPE_DECOR2 BuyMenuDisplayMessage(taskId, gText_ThanksIllSendItHome, BuyMenuSubtractMoney); @@ -1084,11 +1087,11 @@ static void BuyMenuTryMakePurchase(u8 taskId) static void BuyMenuSubtractMoney(u8 taskId) { IncrementGameStat(GAME_STAT_SHOPPED); - RemoveMoney(&gSaveBlock1Ptr->money, gShopDataPtr->totalCost); + RemoveMoney(&gSaveBlock1Ptr->money, sShopData->totalCost); PlaySE(SE_SHOP); PrintMoneyAmountInMoneyBox(0, GetMoney(&gSaveBlock1Ptr->money), 0); - if (gMartInfo.martType == MART_TYPE_NORMAL) + if (sMartInfo.martType == MART_TYPE_NORMAL) { gTasks[taskId].func = Task_ReturnToItemListAfterItemPurchase; } @@ -1143,7 +1146,7 @@ static void BuyMenuPrintItemQuantityAndPrice(u8 taskId) s16 *data = gTasks[taskId].data; FillWindowPixelBuffer(4, PIXEL_FILL(1)); - PrintMoneyAmount(4, 38, 1, gShopDataPtr->totalCost, TEXT_SPEED_FF); + PrintMoneyAmount(4, 38, 1, sShopData->totalCost, TEXT_SPEED_FF); ConvertIntToDecimalStringN(gStringVar1, tItemCount, STR_CONV_MODE_LEADING_ZEROS, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); BuyMenuPrint(4, gStringVar4, 0, 1, 0, 0); @@ -1169,7 +1172,7 @@ static void Task_ExitBuyMenu(u8 taskId) static void ClearItemPurchases(void) { - gMartPurchaseHistoryId = 0; + sPurchaseHistoryId = 0; memset(gMartPurchaseHistory, 0, sizeof(gMartPurchaseHistory)); } @@ -1179,27 +1182,23 @@ static void RecordItemPurchase(u8 taskId) u16 i; - for (i = 0; i < 3; i++) + for (i = 0; i < ARRAY_COUNT(gMartPurchaseHistory); i++) { if (gMartPurchaseHistory[i].itemId == tItemId && gMartPurchaseHistory[i].quantity != 0) { if (gMartPurchaseHistory[i].quantity + tItemCount > 255) - { gMartPurchaseHistory[i].quantity = 255; - } else - { gMartPurchaseHistory[i].quantity += tItemCount; - } return; } } - if (gMartPurchaseHistoryId < 3) + if (sPurchaseHistoryId < ARRAY_COUNT(gMartPurchaseHistory)) { - gMartPurchaseHistory[gMartPurchaseHistoryId].itemId = tItemId; - gMartPurchaseHistory[gMartPurchaseHistoryId].quantity = tItemCount; - gMartPurchaseHistoryId++; + gMartPurchaseHistory[sPurchaseHistoryId].itemId = tItemId; + gMartPurchaseHistory[sPurchaseHistoryId].quantity = tItemCount; + sPurchaseHistoryId++; } } From 4077c533388d38a0ec725baf2f5f4bd858c76897 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Mar 2021 00:54:24 -0400 Subject: [PATCH 053/762] A few labels in party, start, option menus --- src/data/party_menu.h | 6 ++--- src/option_menu.c | 52 ++++++++++++++++++++++++++----------------- src/start_menu.c | 46 +++++++++++++++++++++++++------------- 3 files changed, 66 insertions(+), 38 deletions(-) diff --git a/src/data/party_menu.h b/src/data/party_menu.h index daf3f4f6c7b2..a4a030e3fd4a 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -543,7 +543,7 @@ static const struct WindowTemplate sLevelUpStatsWindowTemplate = .baseBlock = 0x2E9, }; -static const struct WindowTemplate sUnusedWindowTemplate_08615978 = +static const struct WindowTemplate sUnusedWindowTemplate1 = { .bg = 2, .tilemapLeft = 2, @@ -554,7 +554,7 @@ static const struct WindowTemplate sUnusedWindowTemplate_08615978 = .baseBlock = 0x1DF, }; -static const struct WindowTemplate sUnusedWindowTemplate_08615980 = +static const struct WindowTemplate sUnusedWindowTemplate2 = { .bg = 2, .tilemapLeft = 0, @@ -669,7 +669,7 @@ static const u8 *const sDescriptionStringTable[] = [PARTYBOX_DESC_DONT_HAVE] = gText_DontHave, }; -static const u16 sUnused_08615B94[] = +static const u16 sUnusedData[] = { 0x0108, 0x0151, 0x0160, 0x015b, 0x002e, 0x005c, 0x0102, 0x0153, 0x014b, 0x00ed, 0x00f1, 0x010d, 0x003a, 0x003b, 0x003f, 0x0071, 0x00b6, 0x00f0, 0x00ca, 0x00db, 0x00da, 0x004c, 0x00e7, 0x0055, 0x0057, 0x0059, 0x00d8, 0x005b, 0x005e, 0x00f7, 0x0118, 0x0068, diff --git a/src/option_menu.c b/src/option_menu.c index 64e9b6576bd9..936aff923370 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -75,7 +75,7 @@ static u8 ButtonMode_ProcessInput(u8 selection); static void ButtonMode_DrawChoices(u8 selection); static void DrawTextOption(void); static void DrawOptionMenuTexts(void); -static void sub_80BB154(void); +static void DrawBgWindowFrames(void); EWRAM_DATA static bool8 sArrowPressed = FALSE; @@ -228,7 +228,7 @@ void CB2_InitOptionMenu(void) DrawOptionMenuTexts(); gMain.state++; case 9: - sub_80BB154(); + DrawBgWindowFrames(); gMain.state++; break; case 10: @@ -642,25 +642,37 @@ static void DrawOptionMenuTexts(void) CopyWindowToVram(WIN_OPTIONS, 3); } -static void sub_80BB154(void) +#define TILE_TOP_CORNER_L 0x1A2 +#define TILE_TOP_EDGE 0x1A3 +#define TILE_TOP_CORNER_R 0x1A4 +#define TILE_LEFT_EDGE 0x1A5 +#define TILE_RIGHT_EDGE 0x1A7 +#define TILE_BOT_CORNER_L 0x1A8 +#define TILE_BOT_EDGE 0x1A9 +#define TILE_BOT_CORNER_R 0x1AA + +static void DrawBgWindowFrames(void) { - // bg, tileNum, x, y, width, height, pal - FillBgTilemapBufferRect(1, 0x1A2, 1, 0, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A3, 2, 0, 0x1B, 1, 7); - FillBgTilemapBufferRect(1, 0x1A4, 28, 0, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A5, 1, 1, 1, 2, 7); - FillBgTilemapBufferRect(1, 0x1A7, 28, 1, 1, 2, 7); - FillBgTilemapBufferRect(1, 0x1A8, 1, 3, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A9, 2, 3, 0x1B, 1, 7); - FillBgTilemapBufferRect(1, 0x1AA, 28, 3, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A2, 1, 4, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A3, 2, 4, 0x1A, 1, 7); - FillBgTilemapBufferRect(1, 0x1A4, 28, 4, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A5, 1, 5, 1, 0x12, 7); - FillBgTilemapBufferRect(1, 0x1A7, 28, 5, 1, 0x12, 7); - FillBgTilemapBufferRect(1, 0x1A8, 1, 19, 1, 1, 7); - FillBgTilemapBufferRect(1, 0x1A9, 2, 19, 0x1A, 1, 7); - FillBgTilemapBufferRect(1, 0x1AA, 28, 19, 1, 1, 7); + // bg, tile, x, y, width, height, palNum + // Draw title window frame + FillBgTilemapBufferRect(1, TILE_TOP_CORNER_L, 1, 0, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_TOP_EDGE, 2, 0, 27, 1, 7); + FillBgTilemapBufferRect(1, TILE_TOP_CORNER_R, 28, 0, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_LEFT_EDGE, 1, 1, 1, 2, 7); + FillBgTilemapBufferRect(1, TILE_RIGHT_EDGE, 28, 1, 1, 2, 7); + FillBgTilemapBufferRect(1, TILE_BOT_CORNER_L, 1, 3, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_BOT_EDGE, 2, 3, 27, 1, 7); + FillBgTilemapBufferRect(1, TILE_BOT_CORNER_R, 28, 3, 1, 1, 7); + + // Draw options list window frame + FillBgTilemapBufferRect(1, TILE_TOP_CORNER_L, 1, 4, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_TOP_EDGE, 2, 4, 26, 1, 7); + FillBgTilemapBufferRect(1, TILE_TOP_CORNER_R, 28, 4, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_LEFT_EDGE, 1, 5, 1, 18, 7); + FillBgTilemapBufferRect(1, TILE_RIGHT_EDGE, 28, 5, 1, 18, 7); + FillBgTilemapBufferRect(1, TILE_BOT_CORNER_L, 1, 19, 1, 1, 7); + FillBgTilemapBufferRect(1, TILE_BOT_EDGE, 2, 19, 26, 1, 7); + FillBgTilemapBufferRect(1, TILE_BOT_CORNER_R, 28, 19, 1, 1, 7); CopyBgTilemapBufferToVram(1); } diff --git a/src/start_menu.c b/src/start_menu.c index 26a5097a659e..2316b85b60a1 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -170,7 +170,7 @@ static const struct MenuAction sStartMenuItems[] = {gText_MenuBag, {.u8_void = StartMenuBattlePyramidBagCallback}} }; -static const struct BgTemplate sUnknown_085105A8[] = +static const struct BgTemplate sBgTemplates_LinkBattleSave[] = { { .bg = 0, @@ -183,13 +183,29 @@ static const struct BgTemplate sUnknown_085105A8[] = } }; -static const struct WindowTemplate sUnknown_085105AC[] = +static const struct WindowTemplate sWindowTemplates_LinkBattleSave[] = { - {0, 2, 0xF, 0x1A, 4, 0xF, 0x194}, + { + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 26, + .height = 4, + .paletteNum = 15, + .baseBlock = 0x194 + }, DUMMY_WIN_TEMPLATE }; -static const struct WindowTemplate sSaveInfoWindowTemplate = {0, 1, 1, 0xE, 0xA, 0xF, 8}; +static const struct WindowTemplate sSaveInfoWindowTemplate = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 14, + .height = 10, + .paletteNum = 15, + .baseBlock = 8 +}; // Local functions static void BuildStartMenuActions(void); @@ -211,13 +227,13 @@ static void CreateStartMenuTask(TaskFunc followupFunc); static void InitSave(void); static u8 RunSaveCallback(void); static void ShowSaveMessage(const u8 *message, u8 (*saveCallback)(void)); -static void sub_80A0014(void); +static void HideSaveMessageWindow(void); static void HideSaveInfoWindow(void); static void SaveStartTimer(void); static bool8 SaveSuccesTimer(void); static bool8 SaveErrorTimer(void); static void InitBattlePyramidRetire(void); -static void sub_80A03D8(void); +static void VBlankCB_LinkBattleSave(void); static bool32 InitSaveWindowAfterLinkBattle(u8 *par1); static void CB2_SaveAfterLinkBattle(void); static void ShowSaveInfoWindow(void); @@ -887,7 +903,7 @@ static void SaveGameTask(u8 taskId) EnableBothScriptContexts(); } -static void sub_80A0014(void) +static void HideSaveMessageWindow(void) { ClearDialogWindowAndFrame(0, TRUE); } @@ -982,7 +998,7 @@ static u8 SaveConfirmInputCallback(void) case -1: // B Button case 1: // No HideSaveInfoWindow(); - sub_80A0014(); + HideSaveMessageWindow(); return SAVE_CANCELED; } @@ -1028,7 +1044,7 @@ static u8 SaveOverwriteInputCallback(void) case -1: // B Button case 1: // No HideSaveInfoWindow(); - sub_80A0014(); + HideSaveMessageWindow(); return SAVE_CANCELED; } @@ -1146,14 +1162,14 @@ static u8 BattlePyramidRetireInputCallback(void) return SAVE_CANCELED; case -1: // B Button case 1: // No - sub_80A0014(); + HideSaveMessageWindow(); return SAVE_SUCCESS; } return SAVE_IN_PROGRESS; } -static void sub_80A03D8(void) +static void VBlankCB_LinkBattleSave(void) { TransferPlttBuffer(); } @@ -1167,7 +1183,7 @@ static bool32 InitSaveWindowAfterLinkBattle(u8 *state) SetVBlankCallback(NULL); ScanlineEffect_Stop(); DmaClear16(3, PLTT, PLTT_SIZE); - DmaFillLarge16(3, 0, (void *)(VRAM + 0x0), 0x18000, 0x1000); + DmaFillLarge16(3, 0, (void *)VRAM, VRAM_SIZE, 0x1000); break; case 1: ResetSpriteData(); @@ -1177,15 +1193,15 @@ static bool32 InitSaveWindowAfterLinkBattle(u8 *state) break; case 2: ResetBgsAndClearDma3BusyFlags(0); - InitBgsFromTemplates(0, sUnknown_085105A8, ARRAY_COUNT(sUnknown_085105A8)); - InitWindows(sUnknown_085105AC); + InitBgsFromTemplates(0, sBgTemplates_LinkBattleSave, ARRAY_COUNT(sBgTemplates_LinkBattleSave)); + InitWindows(sWindowTemplates_LinkBattleSave); LoadUserWindowBorderGfx_(0, 8, 224); Menu_LoadStdPalAt(240); break; case 3: ShowBg(0); BlendPalettes(-1, 16, 0); - SetVBlankCallback(sub_80A03D8); + SetVBlankCallback(VBlankCB_LinkBattleSave); EnableInterrupts(1); break; case 4: From 1cc0a3506f6a3d8e75ed70299f770cdb7a01a74f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Mar 2021 01:22:42 -0400 Subject: [PATCH 054/762] Label misc field effects --- ...{85B2890.pal => cave_transition_enter.pal} | 0 .../{85B28A0.pal => cave_transition_exit.pal} | 0 src/field_door.c | 58 ++++++++++--------- src/field_effect.c | 23 ++++---- src/fldeff_flash.c | 40 ++++++------- 5 files changed, 60 insertions(+), 61 deletions(-) rename graphics/misc/{85B2890.pal => cave_transition_enter.pal} (100%) rename graphics/misc/{85B28A0.pal => cave_transition_exit.pal} (100%) diff --git a/graphics/misc/85B2890.pal b/graphics/misc/cave_transition_enter.pal similarity index 100% rename from graphics/misc/85B2890.pal rename to graphics/misc/cave_transition_enter.pal diff --git a/graphics/misc/85B28A0.pal b/graphics/misc/cave_transition_exit.pal similarity index 100% rename from graphics/misc/85B28A0.pal rename to graphics/misc/cave_transition_exit.pal diff --git a/src/field_door.c b/src/field_door.c index 4dcb07ccaefe..8aeb1d491498 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -357,40 +357,42 @@ static void DrawDoor(const struct DoorGraphics *gfx, const struct DoorAnimFrame } } -enum +#define tFramesHi data[0] +#define tFramesLo data[1] +#define tGfxHi data[2] +#define tGfxLo data[3] +#define tFrameId data[4] +#define tCounter data[5] +#define tX data[6] +#define tY data[7] + +// Draws a single frame of the door animation, or skips drawing to wait between frames. +// Returns FALSE when the final frame has been reached +static bool32 AnimateDoorFrame(struct DoorGraphics *gfx, struct DoorAnimFrame *frames, s16 *data) { - TD_FRAMELIST = 0, - TD_GFX = 2, - TD_FRAME = 4, - TD_COUNTER, - TD_X, - TD_Y -}; + if (tCounter == 0) + DrawDoor(gfx, &frames[tFrameId], tX, tY); -static bool32 sub_808A5F0(struct DoorGraphics *gfx, struct DoorAnimFrame *frames, s16 *taskData) -{ - if (taskData[TD_COUNTER] == 0) - DrawDoor(gfx, &frames[taskData[TD_FRAME]], taskData[TD_X], taskData[TD_Y]); - if (taskData[TD_COUNTER] == frames[taskData[TD_FRAME]].time) + if (tCounter == frames[tFrameId].time) { - taskData[TD_COUNTER] = 0; - taskData[TD_FRAME]++; - if (frames[taskData[TD_FRAME]].time == 0) + tCounter = 0; + tFrameId++; + if (frames[tFrameId].time == 0) return FALSE; else return TRUE; } - taskData[TD_COUNTER]++; + tCounter++; return TRUE; } static void Task_AnimateDoor(u8 taskId) { - u16 *taskData = gTasks[taskId].data; - struct DoorAnimFrame *frames = (struct DoorAnimFrame *)(taskData[TD_FRAMELIST] << 16 | taskData[TD_FRAMELIST + 1]); - struct DoorGraphics *gfx = (struct DoorGraphics *)(taskData[TD_GFX] << 16 | taskData[TD_GFX + 1]); + u16 *data = gTasks[taskId].data; + struct DoorAnimFrame *frames = (struct DoorAnimFrame *)(tFramesHi << 16 | tFramesLo); + struct DoorGraphics *gfx = (struct DoorGraphics *)(tGfxHi << 16 | tGfxLo); - if (sub_808A5F0(gfx, frames, taskData) == FALSE) + if (AnimateDoorFrame(gfx, frames, data) == FALSE) DestroyTask(taskId); } @@ -419,16 +421,16 @@ static s8 StartDoorAnimationTask(const struct DoorGraphics *gfx, const struct Do else { u8 taskId = CreateTask(Task_AnimateDoor, 0x50); - s16 *taskData = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; - taskData[TD_X] = x; - taskData[TD_Y] = y; + tX = x; + tY = y; - taskData[TD_FRAMELIST + 1] = (u32)frames; - taskData[TD_FRAMELIST] = (u32)frames >> 16; + tFramesLo = (u32)frames; + tFramesHi = (u32)frames >> 16; - taskData[TD_GFX + 1] = (u32)gfx; - taskData[TD_GFX] = (u32)gfx >> 16; + tGfxLo = (u32)gfx; + tGfxHi = (u32)gfx >> 16; return taskId; } diff --git a/src/field_effect.c b/src/field_effect.c index a70ef2892f04..445827390a20 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -480,13 +480,13 @@ static const struct Subsprite sSubsprites_HofMonitorBig[] = static const struct SubspriteTable sSubspriteTable_HofMonitorBig = subsprite_table(sSubsprites_HofMonitorBig); -const union AnimCmd gSpriteAnim_855C2CC[] = +const union AnimCmd sAnim_Static[] = { ANIMCMD_FRAME(.imageValue = 0, .duration = 1), ANIMCMD_JUMP(0) }; -const union AnimCmd gSpriteAnim_855C2D4[] = +const union AnimCmd sAnim_Flicker[] = { ANIMCMD_FRAME(.imageValue = 0, .duration = 16), ANIMCMD_FRAME(.imageValue = 1, .duration = 16), @@ -499,15 +499,16 @@ const union AnimCmd gSpriteAnim_855C2D4[] = ANIMCMD_END }; -const union AnimCmd *const gSpriteAnimTable_855C2F8[] = +// Flicker on and off, for the Pokéballs / monitors during the PokéCenter heal effect +const union AnimCmd *const sAnims_Flicker[] = { - gSpriteAnim_855C2CC, - gSpriteAnim_855C2D4 + sAnim_Static, + sAnim_Flicker }; -static const union AnimCmd *const sAnimTable_HofMonitor[] = +static const union AnimCmd *const sAnims_HofMonitor[] = { - gSpriteAnim_855C2CC + sAnim_Static }; static const struct SpriteTemplate sSpriteTemplate_PokeballGlow = @@ -515,7 +516,7 @@ static const struct SpriteTemplate sSpriteTemplate_PokeballGlow = .tileTag = 0xFFFF, .paletteTag = FLDEFF_PAL_TAG_POKEBALL_GLOW, .oam = &sOam_8x8, - .anims = gSpriteAnimTable_855C2F8, + .anims = sAnims_Flicker, .images = sPicTable_PokeballGlow, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_PokeballGlow @@ -526,7 +527,7 @@ static const struct SpriteTemplate sSpriteTemplate_PokecenterMonitor = .tileTag = 0xFFFF, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &sOam_16x16, - .anims = gSpriteAnimTable_855C2F8, + .anims = sAnims_Flicker, .images = sPicTable_PokecenterMonitor, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_PokecenterMonitor @@ -537,7 +538,7 @@ static const struct SpriteTemplate sSpriteTemplate_HofMonitorBig = .tileTag = 0xFFFF, .paletteTag = FLDEFF_PAL_TAG_HOF_MONITOR, .oam = &sOam_16x16, - .anims = sAnimTable_HofMonitor, + .anims = sAnims_HofMonitor, .images = sPicTable_HofMonitorBig, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_HallOfFameMonitor @@ -548,7 +549,7 @@ static const struct SpriteTemplate sSpriteTemplate_HofMonitorSmall = .tileTag = 0xFFFF, .paletteTag = FLDEFF_PAL_TAG_HOF_MONITOR, .oam = &sOam_32x16, - .anims = sAnimTable_HofMonitor, + .anims = sAnims_HofMonitor, .images = sPicTable_HofMonitorSmall, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_HallOfFameMonitor diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c index b2ddf3180104..9c166d008554 100644 --- a/src/fldeff_flash.c +++ b/src/fldeff_flash.c @@ -16,7 +16,6 @@ #include "constants/songs.h" #include "constants/map_types.h" -// structures struct FlashStruct { u8 fromType; @@ -26,7 +25,6 @@ struct FlashStruct void (*func)(void); }; -// static functions static void FieldCallback_Flash(void); static void FldEff_UseFlash(void); static bool8 TryDoMapTransition(void); @@ -42,7 +40,6 @@ static void Task_EnterCaveTransition2(u8 taskId); static void Task_EnterCaveTransition3(u8 taskId); static void Task_EnterCaveTransition4(u8 taskId); -// rodata static const struct FlashStruct sTransitionTypes[] = { {MAP_TYPE_TOWN, MAP_TYPE_UNDERGROUND, TRUE, FALSE, DoEnterCaveTransition}, @@ -64,15 +61,14 @@ static const struct FlashStruct sTransitionTypes[] = {}, }; -static const u16 gCaveTransitionPalette_White[] = INCBIN_U16("graphics/misc/cave_transition_white.gbapal"); -static const u16 gCaveTransitionPalette_Black[] = INCBIN_U16("graphics/misc/cave_transition_black.gbapal"); +static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/misc/cave_transition_white.gbapal"); +static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/misc/cave_transition_black.gbapal"); -static const u16 gUnknown_085B2890[] = INCBIN_U16("graphics/misc/85B2890.gbapal"); -static const u16 gUnknown_085B28A0[] = INCBIN_U16("graphics/misc/85B28A0.gbapal"); -static const u32 gCaveTransitionTilemap[] = INCBIN_U32("graphics/misc/cave_transition_map.bin.lz"); -static const u32 gCaveTransitionTiles[] = INCBIN_U32("graphics/misc/cave_transition.4bpp.lz"); +static const u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/misc/cave_transition_enter.gbapal"); +static const u16 sCaveTransitionPalette_Exit[] = INCBIN_U16("graphics/misc/cave_transition_exit.gbapal"); +static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/misc/cave_transition_map.bin.lz"); +static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/misc/cave_transition.4bpp.lz"); -// text bool8 SetUpFieldMove_Flash(void) { // In Ruby and Sapphire, Registeel's tomb is opened by using Fly. In Emerald, @@ -220,10 +216,10 @@ static void Task_ExitCaveTransition1(u8 taskId) static void Task_ExitCaveTransition2(u8 taskId) { SetGpuReg(REG_OFFSET_DISPCNT, 0); - LZ77UnCompVram(gCaveTransitionTiles, (void *)(VRAM + 0xC000)); - LZ77UnCompVram(gCaveTransitionTilemap, (void *)(VRAM + 0xF800)); - LoadPalette(gCaveTransitionPalette_White, 0xE0, 0x20); - LoadPalette(gUnknown_085B28A0, 0xE0, 0x10); + LZ77UnCompVram(sCaveTransitionTiles, (void *)(VRAM + 0xC000)); + LZ77UnCompVram(sCaveTransitionTilemap, (void *)(VRAM + 0xF800)); + LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); + LoadPalette(sCaveTransitionPalette_Exit, 0xE0, 0x10); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 @@ -274,11 +270,11 @@ static void Task_ExitCaveTransition4(u8 taskId) if (count < 8) { gTasks[taskId].data[2]++; - LoadPalette(&gUnknown_085B28A0[count], 0xE0, 16 - 2 * count); + LoadPalette(&sCaveTransitionPalette_Exit[count], 0xE0, 16 - 2 * count); } else { - LoadPalette(gCaveTransitionPalette_White, 0, 0x20); + LoadPalette(sCaveTransitionPalette_White, 0, 0x20); gTasks[taskId].func = Task_ExitCaveTransition5; gTasks[taskId].data[2] = 8; } @@ -305,8 +301,8 @@ static void Task_EnterCaveTransition1(u8 taskId) static void Task_EnterCaveTransition2(u8 taskId) { SetGpuReg(REG_OFFSET_DISPCNT, 0); - LZ77UnCompVram(gCaveTransitionTiles, (void *)(VRAM + 0xC000)); - LZ77UnCompVram(gCaveTransitionTilemap, (void *)(VRAM + 0xF800)); + LZ77UnCompVram(sCaveTransitionTiles, (void *)(VRAM + 0xC000)); + LZ77UnCompVram(sCaveTransitionTilemap, (void *)(VRAM + 0xF800)); SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); @@ -319,8 +315,8 @@ static void Task_EnterCaveTransition2(u8 taskId) | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_OBJ_ON); - LoadPalette(gCaveTransitionPalette_White, 0xE0, 0x20); - LoadPalette(gCaveTransitionPalette_Black, 0, 0x20); + LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); + LoadPalette(sCaveTransitionPalette_Black, 0, 0x20); gTasks[taskId].func = Task_EnterCaveTransition3; gTasks[taskId].data[0] = 16; gTasks[taskId].data[1] = 0; @@ -335,7 +331,7 @@ static void Task_EnterCaveTransition3(u8 taskId) { gTasks[taskId].data[2]++; gTasks[taskId].data[2]++; - LoadPalette(&gUnknown_085B2890[15 - count], 0xE0, 2 * (count + 1)); + LoadPalette(&sCaveTransitionPalette_Enter[15 - count], 0xE0, 2 * (count + 1)); } else { @@ -363,7 +359,7 @@ static void Task_EnterCaveTransition4(u8 taskId) } else { - LoadPalette(gCaveTransitionPalette_Black, 0, 0x20); + LoadPalette(sCaveTransitionPalette_Black, 0, 0x20); SetMainCallback2(gMain.savedCallback); } } From 2be0c52c173f67aa098ffff3a0bbc70d3437cd24 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Mar 2021 18:19:35 -0400 Subject: [PATCH 055/762] Remaining labels in map_name_popup --- src/map_name_popup.c | 48 +++++++++++++++++++++++++++----------------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 8939edd90879..65192fa3356a 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -197,8 +197,8 @@ static const u8 * const gBattlePyramid_MapHeaderStrings[] = gText_Pyramid, }; -// text -bool8 sub_80D47D4(void) +// Unused +static bool8 StartMenu_ShowMapNamePopup(void) { HideStartMenu(); ShowMapNamePopup(); @@ -333,24 +333,36 @@ static void ShowMapNamePopUpWindow(void) CopyWindowToVram(GetMapNamePopUpWindowId(), 3); } -static void sub_80D4A78(u8 bg, u8 x, u8 y, u8 deltaX, u8 deltaY, u8 unused) +#define TILE_TOP_EDGE_START 0x21D +#define TILE_TOP_EDGE_END 0x228 +#define TILE_LEFT_EDGE_TOP 0x229 +#define TILE_RIGHT_EDGE_TOP 0x22A +#define TILE_LEFT_EDGE_MID 0x22B +#define TILE_RIGHT_EDGE_MID 0x22C +#define TILE_LEFT_EDGE_BOT 0x22D +#define TILE_RIGHT_EDGE_BOT 0x22E +#define TILE_BOT_EDGE_START 0x22F +#define TILE_BOT_EDGE_END 0x23A + +static void DrawMapNamePopUpFrame(u8 bg, u8 x, u8 y, u8 deltaX, u8 deltaY, u8 unused) { s32 i; - for (i = 0; i < 12; i++) - { - FillBgTilemapBufferRect(bg, 0x21D + i, i - 1 + x, y - 1, 1, 1, 0xE); - } - FillBgTilemapBufferRect(bg, 0x229, x - 1, y, 1, 1, 0xE); - FillBgTilemapBufferRect(bg, 0x22A, deltaX + x, y, 1, 1, 0xE); - FillBgTilemapBufferRect(bg, 0x22B, x - 1, y + 1 , 1, 1, 0xE); - FillBgTilemapBufferRect(bg, 0x22C, deltaX + x, y + 1, 1, 1, 0xE); - FillBgTilemapBufferRect(bg, 0x22D, x - 1, y + 2, 1, 1, 0xE); - FillBgTilemapBufferRect(bg, 0x22E, deltaX + x, y + 2, 1, 1, 0xE); - for (i = 0; i < 12; i++) - { - FillBgTilemapBufferRect(bg, 0x22F + i, i - 1 + x, y + deltaY, 1, 1, 0xE); - } + // Draw top edge + for (i = 0; i < 1 + TILE_TOP_EDGE_END - TILE_TOP_EDGE_START; i++) + FillBgTilemapBufferRect(bg, TILE_TOP_EDGE_START + i, i - 1 + x, y - 1, 1, 1, 14); + + // Draw sides + FillBgTilemapBufferRect(bg, TILE_LEFT_EDGE_TOP, x - 1, y, 1, 1, 14); + FillBgTilemapBufferRect(bg, TILE_RIGHT_EDGE_TOP, deltaX + x, y, 1, 1, 14); + FillBgTilemapBufferRect(bg, TILE_LEFT_EDGE_MID, x - 1, y + 1, 1, 1, 14); + FillBgTilemapBufferRect(bg, TILE_RIGHT_EDGE_MID, deltaX + x, y + 1, 1, 1, 14); + FillBgTilemapBufferRect(bg, TILE_LEFT_EDGE_BOT, x - 1, y + 2, 1, 1, 14); + FillBgTilemapBufferRect(bg, TILE_RIGHT_EDGE_BOT, deltaX + x, y + 2, 1, 1, 14); + + // Draw bottom edge + for (i = 0; i < 1 + TILE_BOT_EDGE_END - TILE_BOT_EDGE_START; i++) + FillBgTilemapBufferRect(bg, TILE_BOT_EDGE_START + i, i - 1 + x, y + deltaY, 1, 1, 14); } static void LoadMapNamePopUpWindowBg(void) @@ -369,7 +381,7 @@ static void LoadMapNamePopUpWindowBg(void) popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId]; LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), gMapPopUp_Outline_Table[popUpThemeId], 0x400, 0x21D); - CallWindowFunction(popupWindowId, sub_80D4A78); + CallWindowFunction(popupWindowId, DrawMapNamePopUpFrame); PutWindowTilemap(popupWindowId); if (gMapHeader.weather == WEATHER_UNDERWATER_BUBBLES) LoadPalette(&gUnknown_0857F444, 0xE0, 0x20); From 0f869fb26630cd7ec65a1873d76d144bdfaf11d4 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Mar 2021 19:54:23 -0400 Subject: [PATCH 056/762] Remaining labels in trainer_card --- .../{unknown_56F18C.pal => unused.pal} | 0 src/trainer_card.c | 155 +++++++++--------- 2 files changed, 77 insertions(+), 78 deletions(-) rename graphics/trainer_card/{unknown_56F18C.pal => unused.pal} (100%) diff --git a/graphics/trainer_card/unknown_56F18C.pal b/graphics/trainer_card/unused.pal similarity index 100% rename from graphics/trainer_card/unknown_56F18C.pal rename to graphics/trainer_card/unused.pal diff --git a/src/trainer_card.c b/src/trainer_card.c index c42c16845ada..91a8047df8c0 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -80,7 +80,7 @@ struct TrainerCardData u8 cardTiles[0x2300]; u16 cardTilemapBuffer[0x1000]; u16 bgTilemapBuffer[0x1000]; - u16 var_7CA8; + u16 cardTop; u8 language; }; @@ -113,7 +113,7 @@ static void SetPlayerCardData(struct TrainerCard*, u8); static void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard*); static u8 VersionToCardType(u8); static void SetDataFromTrainerCard(void); -static void HandleGpuRegs(void); +static void InitGpuRegs(void); static void ResetGpuRegs(void); static void InitBgsAndWindows(void); static void SetTrainerCardCb2(void); @@ -158,31 +158,30 @@ static bool8 Task_DrawFlippedCardSide(struct Task* task); static bool8 Task_SetCardFlipped(struct Task* task); static bool8 Task_AnimateCardFlipUp(struct Task* task); static bool8 Task_EndCardFlip(struct Task* task); -static void sub_80C32EC(u16); +static void UpdateCardFlipRegs(u16); static void LoadMonIconGfx(void); -// const rom data -static const u32 sTrainerCardStickers_Gfx[] = INCBIN_U32("graphics/trainer_card/stickers_fr.4bpp.lz"); -static const u16 sUnused_0856F18C[] = INCBIN_U16("graphics/trainer_card/unknown_56F18C.gbapal"); -static const u16 sHoennTrainerCard1Star_Pal[] = INCBIN_U16("graphics/trainer_card/one_star.gbapal"); -static const u16 sKantoTrainerCard1Star_Pal[] = INCBIN_U16("graphics/trainer_card/one_star_fr.gbapal"); -static const u16 sHoennTrainerCard2Star_Pal[] = INCBIN_U16("graphics/trainer_card/two_stars.gbapal"); -static const u16 sKantoTrainerCard2Star_Pal[] = INCBIN_U16("graphics/trainer_card/two_stars_fr.gbapal"); -static const u16 sHoennTrainerCard3Star_Pal[] = INCBIN_U16("graphics/trainer_card/three_stars.gbapal"); -static const u16 sKantoTrainerCard3Star_Pal[] = INCBIN_U16("graphics/trainer_card/three_stars_fr.gbapal"); -static const u16 sHoennTrainerCard4Star_Pal[] = INCBIN_U16("graphics/trainer_card/four_stars.gbapal"); -static const u16 sKantoTrainerCard4Star_Pal[] = INCBIN_U16("graphics/trainer_card/four_stars_fr.gbapal"); +static const u32 sTrainerCardStickers_Gfx[] = INCBIN_U32("graphics/trainer_card/stickers_fr.4bpp.lz"); +static const u16 sUnused_Pal[] = INCBIN_U16("graphics/trainer_card/unused.gbapal"); +static const u16 sHoennTrainerCard1Star_Pal[] = INCBIN_U16("graphics/trainer_card/one_star.gbapal"); +static const u16 sKantoTrainerCard1Star_Pal[] = INCBIN_U16("graphics/trainer_card/one_star_fr.gbapal"); +static const u16 sHoennTrainerCard2Star_Pal[] = INCBIN_U16("graphics/trainer_card/two_stars.gbapal"); +static const u16 sKantoTrainerCard2Star_Pal[] = INCBIN_U16("graphics/trainer_card/two_stars_fr.gbapal"); +static const u16 sHoennTrainerCard3Star_Pal[] = INCBIN_U16("graphics/trainer_card/three_stars.gbapal"); +static const u16 sKantoTrainerCard3Star_Pal[] = INCBIN_U16("graphics/trainer_card/three_stars_fr.gbapal"); +static const u16 sHoennTrainerCard4Star_Pal[] = INCBIN_U16("graphics/trainer_card/four_stars.gbapal"); +static const u16 sKantoTrainerCard4Star_Pal[] = INCBIN_U16("graphics/trainer_card/four_stars_fr.gbapal"); static const u16 sHoennTrainerCardFemaleBg_Pal[] = INCBIN_U16("graphics/trainer_card/female_bg.gbapal"); static const u16 sKantoTrainerCardFemaleBg_Pal[] = INCBIN_U16("graphics/trainer_card/female_bg_fr.gbapal"); -static const u16 sHoennTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/badges.gbapal"); -static const u16 sKantoTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/badges_fr.gbapal"); -static const u16 sTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/gold.gbapal"); -static const u16 sTrainerCardSticker1_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr1.gbapal"); -static const u16 sTrainerCardSticker2_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr2.gbapal"); -static const u16 sTrainerCardSticker3_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr3.gbapal"); -static const u16 sTrainerCardSticker4_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr4.gbapal"); -static const u32 sHoennTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz"); -static const u32 sKantoTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges_fr.4bpp.lz"); +static const u16 sHoennTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/badges.gbapal"); +static const u16 sKantoTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/badges_fr.gbapal"); +static const u16 sTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/gold.gbapal"); +static const u16 sTrainerCardSticker1_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr1.gbapal"); +static const u16 sTrainerCardSticker2_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr2.gbapal"); +static const u16 sTrainerCardSticker3_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr3.gbapal"); +static const u16 sTrainerCardSticker4_Pal[] = INCBIN_U16("graphics/trainer_card/stickers_fr4.gbapal"); +static const u32 sHoennTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz"); +static const u32 sKantoTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges_fr.4bpp.lz"); static const struct BgTemplate sTrainerCardBgTemplates[4] = { @@ -321,7 +320,6 @@ static bool8 (*const sTrainerCardFlipTasks[])(struct Task *) = Task_EndCardFlip, }; -// code static void VblankCb_TrainerCard(void) { LoadOam(); @@ -620,7 +618,7 @@ static void CB2_InitTrainerCard(void) gMain.state++; break; case 8: - HandleGpuRegs(); + InitGpuRegs(); gMain.state++; break; case 9: @@ -841,7 +839,7 @@ static void SetDataFromTrainerCard(void) } } -static void HandleGpuRegs(void) +static void InitGpuRegs(void) { SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); ShowBg(0); @@ -852,24 +850,23 @@ static void HandleGpuRegs(void) SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ); - SetGpuReg(REG_OFFSET_WIN0V, 160); - SetGpuReg(REG_OFFSET_WIN0H, 240); + SetGpuReg(REG_OFFSET_WIN0V, DISPLAY_HEIGHT); + SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); if (gReceivedRemoteLinkPlayers) EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_HBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); else EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_HBLANK); } -// Part of animating card flip -static void sub_80C32EC(u16 arg0) +static void UpdateCardFlipRegs(u16 cardTop) { - s8 quotient = (arg0 + 40) / 10; + s8 blendY = (cardTop + 40) / 10; - if (quotient <= 4) - quotient = 0; - sData->flipBlendY = quotient; + if (blendY <= 4) + blendY = 0; + sData->flipBlendY = blendY; SetGpuReg(REG_OFFSET_BLDY, sData->flipBlendY); - SetGpuReg(REG_OFFSET_WIN0V, (sData->var_7CA8 * 256) | (160 - sData->var_7CA8)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(sData->cardTop, DISPLAY_HEIGHT - sData->cardTop)); } static void ResetGpuRegs(void) @@ -1578,6 +1575,7 @@ u8 GetTrainerCardStars(u8 cardId) } #define tFlipState data[0] +#define tCardTop data[1] static void FlipTrainerCard(void) { @@ -1608,41 +1606,43 @@ static bool8 Task_BeginCardFlip(struct Task* task) HideBg(3); ScanlineEffect_Stop(); ScanlineEffect_Clear(); - for (i = 0; i < 160; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0; task->tFlipState++; return FALSE; } +// Note: Cannot be DISPLAY_HEIGHT / 2, or cardHeight will be 0 +#define CARD_FLIP_Y ((DISPLAY_HEIGHT / 2) - 3) + static bool8 Task_AnimateCardFlipDown(struct Task* task) { - u32 r4, r5, r10, r7, r6, var_24, r9, var; + u32 cardHeight, r5, r10, cardTop, r6, var_24, cardBottom, var; s16 i; sData->allowDMACopy = FALSE; - if (task->data[1] >= 77) - task->data[1] = 77; + if (task->tCardTop >= CARD_FLIP_Y) + task->tCardTop = CARD_FLIP_Y; else - task->data[1] += 7; - - sData->var_7CA8 = task->data[1]; - sub_80C32EC(task->data[1]); - - // ??? - r7 = task->data[1]; - r9 = 160 - r7; - r4 = r9 - r7; - r6 = -r7 << 16; - r5 = 0xA00000 / r4; - r5 += 0xFFFF0000; + task->tCardTop += 7; + + sData->cardTop = task->tCardTop; + UpdateCardFlipRegs(task->tCardTop); + + cardTop = task->tCardTop; + cardBottom = DISPLAY_HEIGHT - cardTop; + cardHeight = cardBottom - cardTop; + r6 = -cardTop << 16; + r5 = (DISPLAY_HEIGHT << 16) / cardHeight; + r5 -= 1 << 16; var_24 = r6; - var_24 += r5 * r4; - r10 = r5 / r4; + var_24 += r5 * cardHeight; + r10 = r5 / cardHeight; r5 *= 2; - for (i = 0; i < r7; i++) + for (i = 0; i < cardTop; i++) gScanlineEffectRegBuffers[0][i] = -i; - for (; i < (s16)(r9); i++) + for (; i < (s16)cardBottom; i++) { var = r6 >> 16; r6 += r5; @@ -1650,11 +1650,11 @@ static bool8 Task_AnimateCardFlipDown(struct Task* task) gScanlineEffectRegBuffers[0][i] = var; } var = var_24 >> 16; - for (; i < 160; i++) + for (; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[0][i] = var; sData->allowDMACopy = TRUE; - if (task->data[1] >= 77) + if (task->tCardTop >= CARD_FLIP_Y) task->tFlipState++; return FALSE; @@ -1736,33 +1736,32 @@ static bool8 Task_SetCardFlipped(struct Task* task) static bool8 Task_AnimateCardFlipUp(struct Task* task) { - u32 r4, r5, r10, r7, r6, var_24, r9, var; + u32 cardHeight, r5, r10, cardTop, r6, var_24, cardBottom, var; s16 i; sData->allowDMACopy = FALSE; - if (task->data[1] <= 5) - task->data[1] = 0; + if (task->tCardTop <= 5) + task->tCardTop = 0; else - task->data[1] -= 5; - - sData->var_7CA8 = task->data[1]; - sub_80C32EC(task->data[1]); - - // ??? - r7 = task->data[1]; - r9 = 160 - r7; - r4 = r9 - r7; - r6 = -r7 << 16; - r5 = 0xA00000 / r4; - r5 += 0xFFFF0000; + task->tCardTop -= 5; + + sData->cardTop = task->tCardTop; + UpdateCardFlipRegs(task->tCardTop); + + cardTop = task->tCardTop; + cardBottom = DISPLAY_HEIGHT - cardTop; + cardHeight = cardBottom - cardTop; + r6 = -cardTop << 16; + r5 = (DISPLAY_HEIGHT << 16) / cardHeight; + r5 -= 1 << 16; var_24 = r6; - var_24 += r5 * r4; - r10 = r5 / r4; + var_24 += r5 * cardHeight; + r10 = r5 / cardHeight; r5 /= 2; - for (i = 0; i < r7; i++) + for (i = 0; i < cardTop; i++) gScanlineEffectRegBuffers[0][i] = -i; - for (; i < (s16)(r9); i++) + for (; i < (s16)cardBottom; i++) { var = r6 >> 16; r6 += r5; @@ -1770,11 +1769,11 @@ static bool8 Task_AnimateCardFlipUp(struct Task* task) gScanlineEffectRegBuffers[0][i] = var; } var = var_24 >> 16; - for (; i < 160; i++) + for (; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[0][i] = var; sData->allowDMACopy = TRUE; - if (task->data[1] <= 0) + if (task->tCardTop <= 0) task->tFlipState++; return FALSE; From ff866d0735985b82daa3788df9cfe140e86bc8dd Mon Sep 17 00:00:00 2001 From: SatoMew Date: Tue, 23 Mar 2021 22:31:01 +0000 Subject: [PATCH 057/762] Remove Travis badge --- README.md | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 2c3447abc4c7..1dbde694b1a1 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,15 @@ # Pokémon Emerald -[![Build Status][travis-badge]][travis] - -[travis]: https://travis-ci.org/pret/pokeemerald -[travis-badge]: https://travis-ci.org/pret/pokeemerald.svg?branch=master - This is a decompilation of Pokémon Emerald. It builds the following ROM: -* [**pokeemerald.gba**](https://datomatic.no-intro.org/index.php?page=show_record&s=23&n=1961) `sha1: f3ae088181bf583e55daf962a92bb46f4f1d07b7` +* [**pokeemerald.gba**](https://datomatic.no-intro.org/index.php?page=show_record&s=23&n=1961) (SHA-1 hash: `f3ae088181bf583e55daf962a92bb46f4f1d07b7`) To set up the repository, see [INSTALL.md](INSTALL.md). +If you need any help, feel free to ask on the #gen-3-help channel of our [Discord](https://discord.gg/d5dubZ3), or on our [IRC server](https://kiwiirc.com/client/irc.freenode.net/?#pret). + ## See also @@ -29,8 +26,3 @@ Other disassembly and/or decompilation projects: * [**Pokémon Pinball: Ruby & Sapphire**](https://github.com/pret/pokepinballrs) * [**Pokémon FireRed and LeafGreen**](https://github.com/pret/pokefirered) * [**Pokémon Mystery Dungeon: Red Rescue Team**](https://github.com/pret/pmd-red) - - -## Contacts - -You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://kiwiirc.com/client/irc.freenode.net/?#pret). From 7a5c6d4d869b314ce748fe2ccff493c468fa0a91 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 25 Mar 2021 13:26:22 -0400 Subject: [PATCH 058/762] Standardize Friendship/Happiness --- asm/macros/battle_script.inc | 2 +- data/battle_scripts_1.s | 2 +- include/constants/hold_effects.h | 2 +- include/constants/vars.h | 2 +- src/battle_script_commands.c | 6 +++--- src/data/items.h | 2 +- src/field_control_avatar.c | 13 +++++++------ src/pokemon.c | 4 ++-- 8 files changed, 17 insertions(+), 16 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 8f3d9faa54c1..f3664a1c40fe 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -941,7 +941,7 @@ .byte 0xb5 .endm - .macro happinesstodamagecalculation + .macro friendshiptodamagecalculation .byte 0xb6 .endm diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 6e0476182c8a..ad9576a6247a 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1678,7 +1678,7 @@ BattleScript_EffectReturn:: BattleScript_EffectFrustration:: attackcanceler accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE - happinesstodamagecalculation + friendshiptodamagecalculation goto BattleScript_HitFromAtkString BattleScript_EffectPresent:: diff --git a/include/constants/hold_effects.h b/include/constants/hold_effects.h index b653f5a92fe3..5853f1708660 100644 --- a/include/constants/hold_effects.h +++ b/include/constants/hold_effects.h @@ -28,7 +28,7 @@ #define HOLD_EFFECT_MACHO_BRACE 24 #define HOLD_EFFECT_EXP_SHARE 25 #define HOLD_EFFECT_QUICK_CLAW 26 -#define HOLD_EFFECT_HAPPINESS_UP 27 +#define HOLD_EFFECT_FRIENDSHIP_UP 27 #define HOLD_EFFECT_CURE_ATTRACT 28 #define HOLD_EFFECT_CHOICE_BAND 29 #define HOLD_EFFECT_FLINCH 30 diff --git a/include/constants/vars.h b/include/constants/vars.h index 625c37aa9c92..d3d1aba87daa 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -56,7 +56,7 @@ #define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 #define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 #define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 -#define VAR_HAPPINESS_STEP_COUNTER 0x402A +#define VAR_FRIENDSHIP_STEP_COUNTER 0x402A #define VAR_POISON_STEP_COUNTER 0x402B #define VAR_RESET_RTC_ENABLE 0x402C #define VAR_ENIGMA_BERRY_AVAILABLE 0x402D diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 43c554e888cb..96c849cbc0a3 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -258,7 +258,7 @@ static void Cmd_trysetperishsong(void); static void Cmd_rolloutdamagecalculation(void); static void Cmd_jumpifconfusedandstatmaxed(void); static void Cmd_furycuttercalc(void); -static void Cmd_happinesstodamagecalculation(void); +static void Cmd_friendshiptodamagecalculation(void); static void Cmd_presentdamagecalculation(void); static void Cmd_setsafeguard(void); static void Cmd_magnitudedamagecalculation(void); @@ -510,7 +510,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_rolloutdamagecalculation, //0xB3 Cmd_jumpifconfusedandstatmaxed, //0xB4 Cmd_furycuttercalc, //0xB5 - Cmd_happinesstodamagecalculation, //0xB6 + Cmd_friendshiptodamagecalculation, //0xB6 Cmd_presentdamagecalculation, //0xB7 Cmd_setsafeguard, //0xB8 Cmd_magnitudedamagecalculation, //0xB9 @@ -8471,7 +8471,7 @@ static void Cmd_furycuttercalc(void) } } -static void Cmd_happinesstodamagecalculation(void) +static void Cmd_friendshiptodamagecalculation(void) { if (gBattleMoves[gCurrentMove].effect == EFFECT_RETURN) gDynamicBasePower = 10 * (gBattleMons[gBattlerAttacker].friendship) / 25; diff --git a/src/data/items.h b/src/data/items.h index e4e7e0fbc71b..fc7792186013 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -2250,7 +2250,7 @@ const struct Item gItems[] = .name = _("SOOTHE BELL"), .itemId = ITEM_SOOTHE_BELL, .price = 100, - .holdEffect = HOLD_EFFECT_HAPPINESS_UP, + .holdEffect = HOLD_EFFECT_FRIENDSHIP_UP, .description = sSootheBellDesc, .pocket = POCKET_ITEMS, .type = ITEM_USE_BAG_MENU, diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index a811901a9e95..6ec280fd0d79 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -67,7 +67,7 @@ static bool8 TryStartCoordEventScript(struct MapPosition *); static bool8 TryStartWarpEventScript(struct MapPosition *, u16); static bool8 TryStartMiscWalkingScripts(u16); static bool8 TryStartStepCountScript(u16); -static void UpdateHappinessStepCounter(void); +static void UpdateFriendshipStepCounter(void); static bool8 UpdatePoisonStepCounter(void); void FieldClearPlayerInput(struct FieldInput *input) @@ -542,7 +542,7 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior) } IncrementRematchStepCounter(); - UpdateHappinessStepCounter(); + UpdateFriendshipStepCounter(); UpdateFarawayIslandStepCounter(); if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FORCED_MOVE) && !MetatileBehavior_IsForcedMovementTile(metatileBehavior)) @@ -607,14 +607,15 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior) return FALSE; } -void Unref_ClearHappinessStepCounter(void) +// Unused +static void ClearFriendshipStepCounter(void) { - VarSet(VAR_HAPPINESS_STEP_COUNTER, 0); + VarSet(VAR_FRIENDSHIP_STEP_COUNTER, 0); } -static void UpdateHappinessStepCounter(void) +static void UpdateFriendshipStepCounter(void) { - u16 *ptr = GetVarPointer(VAR_HAPPINESS_STEP_COUNTER); + u16 *ptr = GetVarPointer(VAR_FRIENDSHIP_STEP_COUNTER); int i; (*ptr)++; diff --git a/src/pokemon.c b/src/pokemon.c index 2abf9cb56136..5b683584bee8 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -4649,7 +4649,7 @@ bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, { \ friendshipChange = itemEffect[itemEffectParam]; \ friendship = GetMonData(mon, MON_DATA_FRIENDSHIP, NULL); \ - if (friendshipChange > 0 && holdEffect == HOLD_EFFECT_HAPPINESS_UP) \ + if (friendshipChange > 0 && holdEffect == HOLD_EFFECT_FRIENDSHIP_UP) \ friendship += 150 * friendshipChange / 100; \ else \ friendship += friendshipChange; \ @@ -5828,7 +5828,7 @@ void AdjustFriendship(struct Pokemon *mon, u8 event) && (event != FRIENDSHIP_EVENT_LEAGUE_BATTLE || IS_LEAGUE_BATTLE)) { s8 mod = sFriendshipEventModifiers[event][friendshipLevel]; - if (mod > 0 && holdEffect == HOLD_EFFECT_HAPPINESS_UP) + if (mod > 0 && holdEffect == HOLD_EFFECT_FRIENDSHIP_UP) mod = (150 * mod) / 100; friendship += mod; if (mod > 0) From 5cb8ec424764845b1cb38871586346a885601b0f Mon Sep 17 00:00:00 2001 From: Scott Date: Thu, 25 Mar 2021 09:05:58 -0400 Subject: [PATCH 059/762] Rename IsNotEventLegalMewOrDeoxys --- src/battle_util.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_util.c b/src/battle_util.c index 2bf06f331b2f..6e1202bd12cc 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3949,7 +3949,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) return targetBattler; } -static bool32 IsNotEventLegalMewOrDeoxys(u8 battlerId) +static bool32 IsMonEventLegal(u8 battlerId) { if (GetBattlerSide(battlerId) == B_SIDE_OPPONENT) return TRUE; @@ -3970,7 +3970,7 @@ u8 IsMonDisobedient(void) if (GetBattlerSide(gBattlerAttacker) == B_SIDE_OPPONENT) return 0; - if (IsNotEventLegalMewOrDeoxys(gBattlerAttacker)) // only if species is Mew or Deoxys + if (IsMonEventLegal(gBattlerAttacker)) // only false if illegal Mew or Deoxys { if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && GetBattlerPosition(gBattlerAttacker) == 2) return 0; From c86cc8b371efa875446796fb44c7e285c4b26f70 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 5 Mar 2021 15:13:08 -0500 Subject: [PATCH 060/762] Document intro, start intro_credits/credits --- graphics/intro/intro.png | Bin 1113 -> 0 bytes graphics/intro/intro2_bgtrees2.pal | 19 - .../{intro1_bgpal.pal => scene_1/bg.pal} | 0 .../intro/{introgfx.png => scene_1/bg.png} | Bin .../bg0_map.bin} | Bin .../bg1_map.bin} | Bin .../bg2_map.bin} | Bin .../bg3_map.bin} | Bin .../{intro1_drops.pal => scene_1/drops.pal} | 0 graphics/intro/scene_1/drops_logo.png | Bin 0 -> 1064 bytes .../{intro1_flygon.png => scene_1/flygon.png} | Bin .../{intro1_eon.png => scene_1/lati.png} | Bin .../{intro1_gflogo.pal => scene_1/logo.pal} | 0 .../sparkle.png} | Bin .../{intro1_text.pal => scene_1/text.pal} | 0 .../bicycle.png} | Bin .../brendan.png} | Bin .../brendan_credits.png} | Bin .../clouds.png} | Bin .../clouds_afternoon.pal} | 0 .../{85F0CFC.pal => scene_2/clouds_bg.pal} | 0 .../clouds_bg.png} | Bin .../clouds_bg_afternoon.pal} | 0 .../clouds_bg_map.bin} | Bin .../{intro2_flygon.png => scene_2/flygon.png} | Bin .../{intro2_grass.png => scene_2/grass.png} | Bin .../grass_afternoon.pal} | 0 .../grass_map.bin} | Bin .../grass_night.pal} | 0 .../house_silhouette.png} | Bin .../intro/{85F231C.pal => scene_2/houses.pal} | 0 .../houses.png} | Bin .../houses_map.bin} | Bin .../{intro2_latias.png => scene_2/latias.png} | Bin .../{intro2_latios.png => scene_2/latios.png} | Bin .../manectric.png} | Bin .../may.png} | Bin .../may_credits.png} | Bin .../player.pal} | 0 .../torchic.png} | Bin .../{intro2_bgtrees.png => scene_2/trees.png} | Bin .../trees_afternoon.pal} | 0 .../trees_map.bin} | Bin .../trees_small.png} | Bin .../volbeat.png} | Bin graphics/intro/{intro3.pal => scene_3/bg.pal} | 0 .../bubbles.png} | Bin .../{intro3_clouds.png => scene_3/clouds.png} | Bin .../clouds1.bin} | Bin .../clouds2.bin} | Bin .../clouds2.png} | Bin .../clouds3.bin} | Bin .../clouds4.bin} | Bin .../groudon.bin} | Bin .../groudon.png} | Bin .../{intro3_kyogre.bin => scene_3/kyogre.bin} | Bin .../{intro3_kyogre.png => scene_3/kyogre.png} | Bin graphics/intro/{ => scene_3}/legend_bg.png | Bin graphics/intro/{ => scene_3}/legend_bg1.bin | Bin graphics/intro/{ => scene_3}/legend_bg2.bin | 0 .../lightning.png} | Bin .../{intro3_misc.png => scene_3/misc.png} | Bin .../{intro3_misc1.pal => scene_3/misc1.pal} | 0 .../{intro3_misc2.pal => scene_3/misc2.pal} | 0 .../pokeball.png} | Bin .../pokeball_map.bin} | Bin .../rayquaza.bin} | Bin .../rayquaza.png} | Bin .../streaks.png} | Bin .../streaks_map.bin} | Bin include/graphics.h | 16 +- include/intro_credits_graphics.h | 53 +- include/title_screen.h | 2 +- src/battle_anim_rock.c | 30 +- src/credits.c | 1170 ++++---- src/data/graphics/intro_scene.h | 68 +- src/intro.c | 2673 ++++++++++------- src/intro_credits_graphics.c | 725 ++--- src/title_screen.c | 8 +- 79 files changed, 2569 insertions(+), 2195 deletions(-) delete mode 100644 graphics/intro/intro.png delete mode 100644 graphics/intro/intro2_bgtrees2.pal rename graphics/intro/{intro1_bgpal.pal => scene_1/bg.pal} (100%) rename graphics/intro/{introgfx.png => scene_1/bg.png} (100%) rename graphics/intro/{intro1_bg0_map.bin => scene_1/bg0_map.bin} (100%) rename graphics/intro/{intro1_bg1_map.bin => scene_1/bg1_map.bin} (100%) rename graphics/intro/{intro1_bg2_map.bin => scene_1/bg2_map.bin} (100%) rename graphics/intro/{intro1_bg3_map.bin => scene_1/bg3_map.bin} (100%) rename graphics/intro/{intro1_drops.pal => scene_1/drops.pal} (100%) create mode 100644 graphics/intro/scene_1/drops_logo.png rename graphics/intro/{intro1_flygon.png => scene_1/flygon.png} (100%) rename graphics/intro/{intro1_eon.png => scene_1/lati.png} (100%) rename graphics/intro/{intro1_gflogo.pal => scene_1/logo.pal} (100%) rename graphics/intro/{intro1_sparkle.png => scene_1/sparkle.png} (100%) rename graphics/intro/{intro1_text.pal => scene_1/text.pal} (100%) rename graphics/intro/{intro2_bicycle.png => scene_2/bicycle.png} (100%) rename graphics/intro/{intro2_brendan_noturn.png => scene_2/brendan.png} (100%) rename graphics/intro/{intro2_brendan.png => scene_2/brendan_credits.png} (100%) rename graphics/intro/{intro2_bgclouds2.png => scene_2/clouds.png} (100%) rename graphics/intro/{intro2_bgclouds_afternoon.pal => scene_2/clouds_afternoon.pal} (100%) rename graphics/intro/{85F0CFC.pal => scene_2/clouds_bg.pal} (100%) rename graphics/intro/{intro2_bgclouds.png => scene_2/clouds_bg.png} (100%) rename graphics/intro/{85F0D5C.pal => scene_2/clouds_bg_afternoon.pal} (100%) rename graphics/intro/{intro2_bgclouds_map.bin => scene_2/clouds_bg_map.bin} (100%) rename graphics/intro/{intro2_flygon.png => scene_2/flygon.png} (100%) rename graphics/intro/{intro2_grass.png => scene_2/grass.png} (100%) rename graphics/intro/{intro2_grass_afternoon.pal => scene_2/grass_afternoon.pal} (100%) rename graphics/intro/{intro2_grass_map.bin => scene_2/grass_map.bin} (100%) rename graphics/intro/{intro2_grass_night.pal => scene_2/grass_night.pal} (100%) rename graphics/intro/{intro2_night.png => scene_2/house_silhouette.png} (100%) rename graphics/intro/{85F231C.pal => scene_2/houses.pal} (100%) rename graphics/intro/{intro2_bgnight.png => scene_2/houses.png} (100%) rename graphics/intro/{intro2_bgnight_map.bin => scene_2/houses_map.bin} (100%) rename graphics/intro/{intro2_latias.png => scene_2/latias.png} (100%) rename graphics/intro/{intro2_latios.png => scene_2/latios.png} (100%) rename graphics/intro/{intro2_manectric.png => scene_2/manectric.png} (100%) rename graphics/intro/{intro2_may_noturn.png => scene_2/may.png} (100%) rename graphics/intro/{intro2_may.png => scene_2/may_credits.png} (100%) rename graphics/intro/{intro2_brendan_noturn.pal => scene_2/player.pal} (100%) rename graphics/intro/{intro2_torchic.png => scene_2/torchic.png} (100%) rename graphics/intro/{intro2_bgtrees.png => scene_2/trees.png} (100%) rename graphics/intro/{intro2_bgtrees2_afternoon.pal => scene_2/trees_afternoon.pal} (100%) rename graphics/intro/{intro2_bgtrees_map.bin => scene_2/trees_map.bin} (100%) rename graphics/intro/{intro2_bgtreessmall.png => scene_2/trees_small.png} (100%) rename graphics/intro/{intro2_volbeat.png => scene_2/volbeat.png} (100%) rename graphics/intro/{intro3.pal => scene_3/bg.pal} (100%) rename graphics/intro/{intro2_bubbles.png => scene_3/bubbles.png} (100%) rename graphics/intro/{intro3_clouds.png => scene_3/clouds.png} (100%) rename graphics/intro/{intro3_clouds1.bin => scene_3/clouds1.bin} (100%) rename graphics/intro/{intro3_clouds2.bin => scene_3/clouds2.bin} (100%) rename graphics/intro/{intro3_clouds2.png => scene_3/clouds2.png} (100%) rename graphics/intro/{intro3_clouds3.bin => scene_3/clouds3.bin} (100%) rename graphics/intro/{intro3_clouds4.bin => scene_3/clouds4.bin} (100%) rename graphics/intro/{intro3_groudon.bin => scene_3/groudon.bin} (100%) rename graphics/intro/{intro3_groudon.png => scene_3/groudon.png} (100%) rename graphics/intro/{intro3_kyogre.bin => scene_3/kyogre.bin} (100%) rename graphics/intro/{intro3_kyogre.png => scene_3/kyogre.png} (100%) rename graphics/intro/{ => scene_3}/legend_bg.png (100%) rename graphics/intro/{ => scene_3}/legend_bg1.bin (100%) rename graphics/intro/{ => scene_3}/legend_bg2.bin (100%) rename graphics/intro/{intro3_lightning.png => scene_3/lightning.png} (100%) rename graphics/intro/{intro3_misc.png => scene_3/misc.png} (100%) rename graphics/intro/{intro3_misc1.pal => scene_3/misc1.pal} (100%) rename graphics/intro/{intro3_misc2.pal => scene_3/misc2.pal} (100%) rename graphics/intro/{intro3_pokeball.png => scene_3/pokeball.png} (100%) rename graphics/intro/{intro3_pokeball_map.bin => scene_3/pokeball_map.bin} (100%) rename graphics/intro/{intro3_rayquaza.bin => scene_3/rayquaza.bin} (100%) rename graphics/intro/{intro3_rayquaza.png => scene_3/rayquaza.png} (100%) rename graphics/intro/{intro3_streaks.png => scene_3/streaks.png} (100%) rename graphics/intro/{intro3_streaks_map.bin => scene_3/streaks_map.bin} (100%) diff --git a/graphics/intro/intro.png b/graphics/intro/intro.png deleted file mode 100644 index e0f28c8413a9dc7b9488ca83e13819323226ea5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1113 zcmV-f1g86mP)~Jh|u}?gp2|5T0sL^xr`+i;F&NY)`%)f{~sKKQMsI z$D=_pz4FjHI652uRzQOS-M&65rU0#@vnhH#_&UAejj;^&9ZLpMMpTAY##jdXc|FNG#}01I z+|9}+Gyf+DzXLdTa}E37*757u3{^-Xi1LlCb>w2@YXYB=gft=^QJUv;YimZoPuraS zh<~tVS1kCzK>q#mUHd~=(YX{rOa79J=3A1lPfrq*Yf=QcCWVUhM=~>`sMP=6;`AgJ zDFWxqh2qqxm{ED-7v%h*10f}<%{#nA%}~=6mbMld?Bg0S1zm4rg2EmVkUJ%RzFJLIz+K zq60I(uh;7v=#?QO|78KZ;{H6q9u}d%YUHW}@RtzuJk0@8r(v%5_ng}dRyMbDsH`h> zsolE&>+&f$NICVUHo&H6M6hY=)$luc?T%Olowp?^bH~$_>r{&ebRHVdFLpf_vPN>>DplC@^njA0wV8U7gNL_^6KB*a@Eq;HVRh!sqx4fj?TN)7d%pALakS2TYGa8Sc{& zg1-n(m*@oVpaUU*7{dkwi^-km^|UMN;7k7=yL`7>N%a_HldgH- zGcm~cEQvK(Fm~RnJ8!Xbfs7RhGWM2{NaZ70X53?shECY5rhH2>m?aD?jx=k42_`5L zp5V0(y#|;ja8-gJLSiTlfmQ>u26#yktRSI)43q(YnrygK{vNhKKm_lCrgsjk7lT(P z&FvKOk({*>e{Uh0KML;Gxiep;=7asiPAD)!3W| zb+!j(3Uu_d+(ma*prR+63q+wJphFaL0cjK z0Ts@u{+iLo8EsjGi?St}KaZywAEdnZrbnx4xhyvCwqR8)gqRnbZG0uf)s+y%y-Qe# z+2!R_%x%(fC1#WJ^YK&^cN%?~z0I-Lq5TZzeAb$vA!h1RTY zC#kxL#@B^XJzjh}Gs~TRo-0+pn7udP^>khuU_Boh@I1mn3PegsicF4y927lDa@eFD zNW+kpqD@EJk~Hq~_@Bnj3O@PatOhr5yZNzw`eG$FU-r3pC~p8^##D$xD_@Z)88n%|8o`>oWb@&cGe%3zJ`mwZ?^?aaQ zUwtc z>ZSIPTOXO;u;*h)d~Dws>w~E8^}DmT(e1vpzi#IOeyqz5I{MdvhaDB+K)1^-Aku}K zr%b1)sEbbs=#-9%-o=Lv4*>J#aF4+O272uPpor)3ZzJi2^JviO2Velhk7+58V&LaQ zFb#4NNJ#t~CE4;r^cqR6qBM1$2m1Qo5Rp#c1}l>q4CJD}Z1A?Vps8Zc-8=?);V zo3WyO32lN{4S=mwef+j}Y7l8d zUJEq>&jw?CS1;Ev>A;o8f}Yk->ZXelfAb2sYPe2zy->eX4)k0K1`MZcBl<|wwOCSv izO4q_B_|-2K*%4|6or@?(TqX>0000> 1) & 0x7F, 12); + gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskIdC].data[TDC_5] >> 1) & 0x7F, 12); gTasks[taskIdC].data[TDC_5]++; break; case 1: - if (gUnknown_0203BD26 != 0) + if (gIntroCredits_MovingSceneryVOffset != 0) { - gUnknown_0203BD26 = Sin((gTasks[taskIdC].data[TDC_5] >> 1) & 0x7F, 12); + gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskIdC].data[TDC_5] >> 1) & 0x7F, 12); gTasks[taskIdC].data[TDC_5]++; } else @@ -1741,7 +1741,7 @@ static void sub_817624C(u8 taskIdC) if (gTasks[taskIdC].data[TDC_5] < 64) { gTasks[taskIdC].data[TDC_5]++; - gUnknown_0203BD26 = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); + gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); } else { @@ -1769,7 +1769,7 @@ static void sub_817624C(u8 taskIdC) if (gTasks[taskIdC].data[TDC_5] > 0) { gTasks[taskIdC].data[TDC_5]--; - gUnknown_0203BD26 = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); + gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); } else { @@ -1816,10 +1816,10 @@ static void sub_817651C(u8 taskIdE) gTasks[taskIdE].data[TDE_1] = 0x7FFF; } } - sub_817B540(0); + CycleSceneryPalette(0); break; case 1: - sub_817B540(0); + CycleSceneryPalette(0); break; case 2: if (gTasks[taskIdE].data[TDE_1] != 0x7FFF) @@ -1833,7 +1833,7 @@ static void sub_817651C(u8 taskIdE) gTasks[taskIdE].data[TDE_1] = 0x7FFF; } } - sub_817B540(1); + CycleSceneryPalette(1); break; case 3: if (gTasks[taskIdE].data[TDE_1] != 0x7FFF) @@ -1849,17 +1849,17 @@ static void sub_817651C(u8 taskIdE) gTasks[taskIdE].data[TDE_1] += 1; } } - sub_817B540(1); + CycleSceneryPalette(1); break; case 4: - sub_817B540(2); + CycleSceneryPalette(2); break; } } -static void sub_817664C(u8 data, u8 taskIdA) +static void sub_817664C(u8 scene, u8 taskIdA) { - switch (data) + switch (scene) { case 0: gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; @@ -1870,7 +1870,7 @@ static void sub_817664C(u8 data, u8 taskIdA) gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleAnimationTask(0, 0x2000, 0x20, 8); + gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; case 1: gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; @@ -1881,7 +1881,7 @@ static void sub_817664C(u8 data, u8 taskIdA) gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleAnimationTask(0, 0x2000, 0x20, 8); + gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; case 2: gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; @@ -1892,7 +1892,7 @@ static void sub_817664C(u8 data, u8 taskIdA) gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleAnimationTask(1, 0x2000, 0x200, 8); + gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; case 3: gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; @@ -1903,7 +1903,7 @@ static void sub_817664C(u8 data, u8 taskIdA) gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleAnimationTask(1, 0x2000, 0x200, 8); + gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; case 4: gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; @@ -1914,12 +1914,12 @@ static void sub_817664C(u8 data, u8 taskIdA) gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleAnimationTask(2, 0x2000, 0x200, 8); + gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8); break; } gTasks[taskIdA].data[TDA_TASK_E_ID] = CreateTask(sub_817651C, 0); - gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_0] = data; + gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_0] = scene; gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_1] = 0; gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_TASK_A_ID] = taskIdA; @@ -1930,11 +1930,11 @@ static void sub_817664C(u8 data, u8 taskIdA) gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_3] = gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]; gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_4] = 0; - if (data == 2) + if (scene == 2) gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_5] = 0x45; } -static bool8 sub_8176AB0(u8 data, u8 taskIdA) +static bool8 sub_8176AB0(u8 scene, u8 taskIdA) { u8 spriteId; @@ -1956,42 +1956,42 @@ static bool8 sub_8176AB0(u8 data, u8 taskIdA) gMain.state = 1; break; case 1: - gUnknown_0203BD24 = 34; - gUnknown_0203BD26 = 0; - sub_817B1C8(data); + gIntroCredits_MovingSceneryVBase = 34; + gIntroCredits_MovingSceneryVOffset = 0; + LoadCreditsSceneGraphics(scene); gMain.state += 1; break; case 2: if (gSaveBlock2Ptr->playerGender == MALE) { - LoadCompressedSpriteSheet(gUnknown_085F5334); - LoadCompressedSpriteSheet(gUnknown_085F53BC); - LoadCompressedSpriteSheet(gUnknown_085F5354); - LoadSpritePalettes(gUnknown_085F5384); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsBrendan); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsRivalMay); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsBicycle); + LoadSpritePalettes(gSpritePalettes_Credits); - spriteId = intro_create_brendan_sprite(120, 46); + spriteId = CreateIntroBrendanSprite(120, 46); gTasks[taskIdA].data[TDA_PLAYER_CYCLIST] = spriteId; gSprites[spriteId].callback = sub_8176EE8; gSprites[spriteId].anims = gUnknown_085E6FD0; - spriteId = intro_create_may_sprite(272, 46); + spriteId = CreateIntroMaySprite(272, 46); gTasks[taskIdA].data[TDA_RIVAL_CYCLIST] = spriteId; gSprites[spriteId].callback = sub_8176F90; gSprites[spriteId].anims = gUnknown_085E7010; } else { - LoadCompressedSpriteSheet(gUnknown_085F5344); - LoadCompressedSpriteSheet(gUnknown_085F53AC); - LoadCompressedSpriteSheet(gUnknown_085F5354); - LoadSpritePalettes(gUnknown_085F5384); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsMay); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsRivalBrendan); + LoadCompressedSpriteSheet(gSpriteSheet_CreditsBicycle); + LoadSpritePalettes(gSpritePalettes_Credits); - spriteId = intro_create_may_sprite(120, 46); + spriteId = CreateIntroMaySprite(120, 46); gTasks[taskIdA].data[TDA_PLAYER_CYCLIST] = spriteId; gSprites[spriteId].callback = sub_8176EE8; gSprites[spriteId].anims = gUnknown_085E6FD0; - spriteId = intro_create_brendan_sprite(272, 46); + spriteId = CreateIntroBrendanSprite(272, 46); gTasks[taskIdA].data[TDA_RIVAL_CYCLIST] = spriteId; gSprites[spriteId].callback = sub_8176F90; gSprites[spriteId].anims = gUnknown_085E7010; @@ -1999,8 +1999,8 @@ static bool8 sub_8176AB0(u8 data, u8 taskIdA) gMain.state += 1; break; case 3: - sub_817664C(data, taskIdA); - sub_817B3A8(data); + sub_817664C(scene, taskIdA); + SetCreditsSceneBgCnt(scene); gMain.state = 0; return TRUE; } @@ -2033,7 +2033,7 @@ static void ResetCreditsTasks(u8 taskIdA) gTasks[taskIdA].data[TDA_TASK_D_ID] = 0; } - gUnknown_0203BD28 = 1; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_DESTROY; } static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 arg2) @@ -2041,7 +2041,7 @@ static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 arg2) u16 baseTile; u16 i; - LZ77UnCompVram(gCreditsCopyrightEnd_Gfx, (void *)(VRAM + arg0)); + LZ77UnCompVram(sCreditsCopyrightEnd_Gfx, (void *)(VRAM + arg0)); LoadPalette(gIntroCopyright_Pal, arg2, sizeof(gIntroCopyright_Pal)); baseTile = (arg2 / 16) << 12; @@ -2050,22 +2050,22 @@ static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 arg2) ((u16 *) (VRAM + arg1))[i] = baseTile + 1; } -static u16 sub_8176D78(u8 arg0) +static u16 sub_8176D78(u8 baseTiles) { - u16 out = (arg0 & 0x3F) + 80; + u16 out = (baseTiles & 0x3F) + 80; - if (arg0 == 0xFF) + if (baseTiles == 0xFF) return 1; - if (arg0 & (1 << 7)) + if (baseTiles & (1 << 7)) out |= 1 << 11; - if (arg0 & (1 << 6)) + if (baseTiles & (1 << 6)) out |= 1 << 10; return out; } -static void sub_8176DBC(const u8 arg0[], u8 baseX, u8 baseY, u16 arg3, u16 palette) +static void sub_8176DBC(const u8 baseTiles[], u8 baseX, u8 baseY, u16 arg3, u16 palette) { u8 y, x; const u16 tileOffset = (palette / 16) << 12; @@ -2073,7 +2073,7 @@ static void sub_8176DBC(const u8 arg0[], u8 baseX, u8 baseY, u16 arg3, u16 palet for (y = 0; y < 5; y++) { for (x = 0; x < 3; x++) - ((u16 *) (VRAM + arg3 + (baseY + y) * 64))[baseX + x] = tileOffset + sub_8176D78(arg0[y * 3 + x]); + ((u16 *) (VRAM + arg3 + (baseY + y) * 64))[baseX + x] = tileOffset + sub_8176D78(baseTiles[y * 3 + x]); } } @@ -2095,7 +2095,7 @@ static void sub_8176E40(u16 arg0, u16 palette) static void sub_8176EE8(struct Sprite *sprite) { - if (gUnknown_0203BD28 != 0) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) { DestroySprite(sprite); return; @@ -2132,7 +2132,7 @@ static void sub_8176EE8(struct Sprite *sprite) static void sub_8176F90(struct Sprite *sprite) { - if (gUnknown_0203BD28 != 0) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) { DestroySprite(sprite); return; @@ -2151,7 +2151,7 @@ static void sub_8176F90(struct Sprite *sprite) StartSpriteAnimIfDifferent(sprite, 2); if (sprite->pos1.x > -32) sprite->pos1.x -= 2; - sprite->pos2.y = -gUnknown_0203BD26; + sprite->pos2.y = -gIntroCredits_MovingSceneryVOffset; break; case 2: sprite->data[7] += 1; @@ -2169,7 +2169,7 @@ static void sub_8176F90(struct Sprite *sprite) static void sub_8177050(struct Sprite *sprite) { - if (gUnknown_0203BD28) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) { FreeAndDestroyMonPicSprite(sprite->data[6]); return; @@ -2276,7 +2276,7 @@ static u8 MakeMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position) static void sub_81772B8(struct Sprite *sprite) { - if (gSprites[sprite->data[0]].data[0] == 10 || gUnknown_0203BD28) + if (gSprites[sprite->data[0]].data[0] == 10 || gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) { DestroySprite(sprite); return; @@ -2310,7 +2310,7 @@ static void DeterminePokemonToShow(void) // Fill the rest of the array with zeroes for (dexNum = j; dexNum < NATIONAL_DEX_COUNT; dexNum++) - sCreditsData->caughtMonIds[dexNum] = 0; + 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) sCreditsData->numCaughtMon = j; @@ -2352,7 +2352,7 @@ static void DeterminePokemonToShow(void) page = 0; } // Ensure the last pokemon is our starter - sCreditsData->monToShow[NUM_MON_SLIDES-1] = starter; + sCreditsData->monToShow[NUM_MON_SLIDES - 1] = starter; } else { @@ -2363,12 +2363,12 @@ static void DeterminePokemonToShow(void) if (dexNum < sCreditsData->numMonToShow - 1) { sCreditsData->monToShow[dexNum] = sCreditsData->monToShow[NUM_MON_SLIDES-1]; - sCreditsData->monToShow[NUM_MON_SLIDES-1] = starter; + sCreditsData->monToShow[NUM_MON_SLIDES - 1] = starter; } else { // Ensure the last pokemon is our starter - sCreditsData->monToShow[NUM_MON_SLIDES-1] = starter; + sCreditsData->monToShow[NUM_MON_SLIDES - 1] = starter; } } sCreditsData->numMonToShow = NUM_MON_SLIDES; diff --git a/src/data/graphics/intro_scene.h b/src/data/graphics/intro_scene.h index ea67c7b0d016..ab1cdcd9c2ee 100644 --- a/src/data/graphics/intro_scene.h +++ b/src/data/graphics/intro_scene.h @@ -1,48 +1,48 @@ -const u16 gIntro1GameFreakTextFadePal[] = INCBIN_U16("graphics/intro/intro1_text.gbapal"); // game freak text blue fade -const u16 gIntro2BrendanNoTurnPal[] = INCBIN_U16("graphics/intro/intro2_brendan_noturn.gbapal"); -const u16 gIntro3BgPal[] = INCBIN_U16("graphics/intro/intro3.gbapal"); -const u16 gIntro2VolbeatPal[] = INCBIN_U16("graphics/intro/intro2_volbeat.gbapal"); -const u16 gIntro2TorchicPal[] = INCBIN_U16("graphics/intro/intro2_torchic.gbapal"); -const u16 gIntro2ManectricPal[] = INCBIN_U16("graphics/intro/intro2_manectric.gbapal"); -const u16 gIntro2FlygonPal[] = INCBIN_U16("graphics/intro/intro2_flygon.gbapal"); +const u16 gIntro1GameFreakTextFadePal[] = INCBIN_U16("graphics/intro/scene_1/text.gbapal"); // game freak text blue fade +const u16 gIntro2PlayerPal[] = INCBIN_U16("graphics/intro/scene_2/player.gbapal"); +const u16 gIntro3BgPal[] = INCBIN_U16("graphics/intro/scene_3/bg.gbapal"); +const u16 gIntro2VolbeatPal[] = INCBIN_U16("graphics/intro/scene_2/volbeat.gbapal"); +const u16 gIntro2TorchicPal[] = INCBIN_U16("graphics/intro/scene_2/torchic.gbapal"); +const u16 gIntro2ManectricPal[] = INCBIN_U16("graphics/intro/scene_2/manectric.gbapal"); +const u16 gIntro2FlygonPal[] = INCBIN_U16("graphics/intro/scene_2/flygon.gbapal"); -const u32 gIntro2VolbeatGfx[] = INCBIN_U32("graphics/intro/intro2_volbeat.4bpp.lz"); -const u32 gIntro2TorchicGfx[] = INCBIN_U32("graphics/intro/intro2_torchic.4bpp.lz"); -const u32 gIntro2ManectricGfx[] = INCBIN_U32("graphics/intro/intro2_manectric.4bpp.lz"); -const u32 gIntro2FlygonGfx[] = INCBIN_U32("graphics/intro/intro2_flygon.4bpp.lz"); -const u32 gIntro2BrendanNoTurnGfx[] = INCBIN_U32("graphics/intro/intro2_brendan_noturn.4bpp.lz"); -const u32 gIntro2MayNoTurnGfx[] = INCBIN_U32("graphics/intro/intro2_may_noturn.4bpp.lz"); +const u32 gIntro2VolbeatGfx[] = INCBIN_U32("graphics/intro/scene_2/volbeat.4bpp.lz"); +const u32 gIntro2TorchicGfx[] = INCBIN_U32("graphics/intro/scene_2/torchic.4bpp.lz"); +const u32 gIntro2ManectricGfx[] = INCBIN_U32("graphics/intro/scene_2/manectric.4bpp.lz"); +const u32 gIntro2FlygonGfx[] = INCBIN_U32("graphics/intro/scene_2/flygon.4bpp.lz"); +const u32 gIntro2BrendanGfx[] = INCBIN_U32("graphics/intro/scene_2/brendan.4bpp.lz"); +const u32 gIntro2MayGfx[] = INCBIN_U32("graphics/intro/scene_2/may.4bpp.lz"); -const u32 gIntro3GroudonGfx[] = INCBIN_U32("graphics/intro/intro3_groudon.8bpp.lz"); -const u32 gIntro3GroudonTilemap[] = INCBIN_U32("graphics/intro/intro3_groudon.bin.lz"); +const u32 gIntro3GroudonGfx[] = INCBIN_U32("graphics/intro/scene_3/groudon.8bpp.lz"); +const u32 gIntro3GroudonTilemap[] = INCBIN_U32("graphics/intro/scene_3/groudon.bin.lz"); -const u32 gIntro3KyogreGfx[] = INCBIN_U32("graphics/intro/intro3_kyogre.8bpp.lz"); -const u32 gIntro3KyogreTilemap[] = INCBIN_U32("graphics/intro/intro3_kyogre.bin.lz"); +const u32 gIntro3KyogreGfx[] = INCBIN_U32("graphics/intro/scene_3/kyogre.8bpp.lz"); +const u32 gIntro3KyogreTilemap[] = INCBIN_U32("graphics/intro/scene_3/kyogre.bin.lz"); -const u32 gIntro3LegendBgGfx[] = INCBIN_U32("graphics/intro/legend_bg.4bpp.lz"); // groudon/kyogre/bg +const u32 gIntro3LegendBgGfx[] = INCBIN_U32("graphics/intro/scene_3/legend_bg.4bpp.lz"); // groudon/kyogre bg -const u32 gIntro3GroudonBgTilemap[] = INCBIN_U32("graphics/intro/legend_bg1.bin.lz"); -const u32 gIntro3KyogreBgTilemap[] = INCBIN_U32("graphics/intro/legend_bg2.bin.lz"); +const u32 gIntro3GroudonBgTilemap[] = INCBIN_U32("graphics/intro/scene_3/legend_bg1.bin.lz"); +const u32 gIntro3KyogreBgTilemap[] = INCBIN_U32("graphics/intro/scene_3/legend_bg2.bin.lz"); -const u32 gIntro3CloudsGfx[] = INCBIN_U32("graphics/intro/intro3_clouds.4bpp.lz"); -const u32 gIntro3Clouds1Tilemap[] = INCBIN_U32("graphics/intro/intro3_clouds1.bin.lz"); -const u32 gIntro3Clouds2Tilemap[] = INCBIN_U32("graphics/intro/intro3_clouds2.bin.lz"); -const u32 gIntro3Clouds3Tilemap[] = INCBIN_U32("graphics/intro/intro3_clouds3.bin.lz"); +const u32 gIntro3CloudsGfx[] = INCBIN_U32("graphics/intro/scene_3/clouds.4bpp.lz"); +const u32 gIntro3Clouds1Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds1.bin.lz"); +const u32 gIntro3Clouds2Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds2.bin.lz"); +const u32 gIntro3Clouds3Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds3.bin.lz"); -const u32 gIntro3LightningGfx[] = INCBIN_U32("graphics/intro/intro3_lightning.4bpp.lz"); -const u16 gIntro3LightningPal[] = INCBIN_U16("graphics/intro/intro3_lightning.gbapal"); +const u32 gIntro3LightningGfx[] = INCBIN_U32("graphics/intro/scene_3/lightning.4bpp.lz"); +const u16 gIntro3LightningPal[] = INCBIN_U16("graphics/intro/scene_3/lightning.gbapal"); -const u32 gIntro3RayquazaGfx[] = INCBIN_U32("graphics/intro/intro3_rayquaza.4bpp.lz"); -const u32 gIntro3RayquazaTilemap[] = INCBIN_U32("graphics/intro/intro3_rayquaza.bin.lz"); +const u32 gIntro3RayquazaGfx[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.4bpp.lz"); +const u32 gIntro3RayquazaTilemap[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.bin.lz"); const u32 gUnknown_D8C374[] = INCBIN_U32("graphics/unknown/unknown_D8C374.bin.lz"); const u32 gUnknown_D8C5C4[] = INCBIN_U32("graphics/unknown/unknown_D8C5C4.bin.lz"); -const u32 gIntro3Clouds2Gfx[] = INCBIN_U32("graphics/intro/intro3_clouds2.4bpp.lz"); //clouds 2, during the rayquaza flash -const u32 gIntro3Clouds4Tilemap[] = INCBIN_U32("graphics/intro/intro3_clouds4.bin.lz"); +const u32 gIntro3Clouds2Gfx[] = INCBIN_U32("graphics/intro/scene_3/clouds2.4bpp.lz"); // during the rayquaza flash +const u32 gIntro3Clouds4Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds4.bin.lz"); -const u32 gIntro2BubblesGfx[] = INCBIN_U32("graphics/intro/intro2_bubbles.4bpp.lz"); -const u16 gIntro2BubblesPal[] = INCBIN_U16("graphics/intro/intro2_bubbles.gbapal"); +const u32 gIntro3Bubbles_Gfx[] = INCBIN_U32("graphics/intro/scene_3/bubbles.4bpp.lz"); +const u16 gIntro3Bubbles_Pal[] = INCBIN_U16("graphics/intro/scene_3/bubbles.gbapal"); -const u32 gIntro1FlygonGfx[] = INCBIN_U32("graphics/intro/intro1_flygon.4bpp.lz"); -const u32 gIntro1SparkleGfx[] = INCBIN_U32("graphics/intro/intro1_sparkle.4bpp.lz"); +const u32 gIntro1Flygon_Gfx[] = INCBIN_U32("graphics/intro/scene_1/flygon.4bpp.lz"); +const u32 gIntro1Sparkle_Gfx[] = INCBIN_U32("graphics/intro/scene_1/sparkle.4bpp.lz"); diff --git a/src/intro.c b/src/intro.c index 376176fe4407..2597e5a9e8b4 100644 --- a/src/intro.c +++ b/src/intro.c @@ -27,119 +27,193 @@ #include "constants/battle_anim.h" /* - * Intro animation sequence state machine - * -------------------------------------- - * - * Entry Point: CB2_InitCopyrightScreenAfterBootup - * - * Note: States advance sequentially unless otherwise stated. - * - * CB2_InitCopyrightScreenAfterBootup - * - Registers a serial interrupt handler that listens for a GameCube. - * - Waits for 140 frames, and then until palette fading completes. - * - Stops looking for a GameCube for dualboot. - * - Check the save file for corruption - * - Setup global pointers to save file - * - Initialize gHeap - * - * MainCB2_Intro - * - Spawn Task_IntroLoadPart1Graphics - * - If any keys are pressed during the intro, advance to - * MainCB2_EndIntro (which will then kill all tasks). - * - * Task_IntroLoadPart1Graphics - * Task_IntroFadeIn (frame counter starts at 0 here) - * Task_IntroWaterDrops - * - At frame 128 of this state, spawn Task_IntroWaterDrops_1 - * - At frame 256 of this state, spawn Task_IntroWaterDrops_2 - * - At frame 560 of this state, spawn Task_IntroWaterDrops_3 - * Task_IntroScrollDownAndShowFlygon - * Task_IntroWaitToSetupPart2 - * Task_IntroLoadPart2Graphics - * Task_IntroStartBikeRide - * - Spawn Task_AdvanceBicycleAnimation - * Task_IntroHandleBikeAndFlygonMovement - * - At frame 1856, kills the bicycle animation task - * Task_IntroWaitToSetupPart3 - * Task_IntroLoadPart3Graphics (frame counter resets to 0 here) - * Task_IntroSpinAndZoomPokeball - * - Continues until the zoom reaches a certain point - * Task_IntroWaitToSetupPart3LegendsFight - * Task_IntroLoadGroudonScene - * Task_IntroLoadPart3Graphics1 - * Task_IntroLoadPart3Graphics2 - * Task_IntroLoadPart3Graphics3 - * Task_IntroLoadPart3Graphics4 - * Task_IntroGroudonScene - * Task_IntroLoadKyogreScene - * Task_IntroKyogreScene - * Task_IntroLoadClouds1 - * Task_IntroLoadClouds2 - * Task_IntroLoadClouds3 - * Task_IntroCloudsScene - * Task_IntroLoadRayquazaLightningScene - * Task_IntroRayquazaLightningScene - * Task_IntroLoadRayquazaGlowScene - * Task_IntroRayquazaGlowScene_0 - * - Runs concurrently with Task_IntroRayquazaGlowScene_1 - * Task_EndIntroMovie - * MainCB2_EndIntro - * - Advances to CB2_InitTitleScreen - */ + The intro is grouped into the following scenes + Scene 0. Copyright screen + Scene 1. GF Logo, pan up over plants, Flygon silhouette goes by + Scene 2. Player biking on path, joined by Pokémon + Scene 3. A fight between Groudon/Kyogre ends with Rayquaza + + After this it progresses to the title screen +*/ + +// Scene 1 main tasks +static void Task_Scene1_Load(u8); +static void Task_Scene1_FadeIn(u8); +static void Task_Scene1_WaterDrops(u8); +static void Task_Scene1_PanUp(u8); +static void Task_Scene1_End(u8); + +// Scene 1 supplemental functions +static void IntroResetGpuRegs(void); +static u8 CreateGameFreakLogoSprites(s16, s16, s16); +static void Task_BlendLogoIn(u8); +static void Task_BlendLogoOut(u8); +static void Task_CreateSparkles(u8); +static u8 CreateWaterDrop(s16, s16, u16, u16, u16, u8); +static void SpriteCB_WaterDrop(struct Sprite *sprite); +static void SpriteCB_WaterDrop_Slide(struct Sprite *); +static void SpriteCB_WaterDrop_ReachLeafEnd(struct Sprite *); +static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *); +static void SpriteCB_WaterDrop_Fall(struct Sprite *); +static void SpriteCB_WaterDrop_Ripple(struct Sprite *); +static void SpriteCB_Sparkle(struct Sprite *sprite); +static void SpriteCB_LogoLetter(struct Sprite *sprite); +static void SpriteCB_GameFreakLogo(struct Sprite *sprite); +static void SpriteCB_FlygonSilhouette(struct Sprite *sprite); + +// Scene 2 main tasks +static void Task_Scene2_Load(u8); +static void Task_Scene2_CreateSprites(u8); +static void Task_Scene2_BikeRide(u8); +static void Task_Scene2_End(u8); + +// Scene 2 supplemental functions +static void SpriteCB_Torchic(struct Sprite *sprite); +static void SpriteCB_Manectric(struct Sprite *sprite); +static void SpriteCB_Volbeat(struct Sprite *sprite); +static void SpriteCB_Flygon(struct Sprite *); +static void SpriteCB_PlayerOnBicycle(struct Sprite *); + +// Scene 3 main tasks +static void Task_Scene3_Load(u8); +static void Task_Scene3_SpinPokeball(u8); +static void Task_Scene3_WaitGroudon(u8); +static void Task_Scene3_LoadGroudon(u8); +static void Task_Scene3_InitGroudonBg(u8); +static void Task_Scene3_NarrowWindow(u8); +static void Task_Scene3_EndNarrowWindow(u8); +static void Task_Scene3_StartGroudon(u8); +static void Task_Scene3_Groudon(u8); +static void Task_Scene3_LoadKyogre(u8); +static void Task_Scene3_Kyogre(u8); +static void Task_Scene3_LoadClouds1(u8); +static void Task_Scene3_LoadClouds2(u8); +static void Task_Scene3_InitClouds(u8); +static void Task_Scene3_Clouds(u8); +static void Task_Scene3_LoadLightning(u8); +static void Task_Scene3_Lightning(u8); +static void Task_Scene3_LoadRayquazaAttack(u8); +static void Task_Scene3_Rayquaza(u8); +static void Task_EndIntroMovie(u8); + +// Scene 3 supplemental functions +static void CreateGroudonRockSprites(u8); +static void CreateKyogreBubbleSprites_Body(u8); +static void CreateKyogreBubbleSprites_Fins(void); +static void Task_RayquazaAttack(u8); +static void SpriteCB_GroudonRocks(struct Sprite *); +static void SpriteCB_KyogreBubbles(struct Sprite *sprite); +static void SpriteCB_Lightning(struct Sprite *sprite); +static void SpriteCB_RayquazaOrb(struct Sprite *sprite); + +static void MainCB2_EndIntro(void); extern const struct CompressedSpriteSheet gBattleAnimPicTable[]; extern const struct CompressedSpritePalette gBattleAnimPaletteTable[]; extern const struct SpriteTemplate gAncientPowerRockSpriteTemplate[]; -//ewram -EWRAM_DATA u16 gIntroCharacterGender = 0; -EWRAM_DATA u16 gUnknown_0203BCCA = 0; -EWRAM_DATA u16 gIntroGraphicsFlygonYOffset = 0; +#define TAG_VOLBEAT 1500 +#define TAG_TORCHIC 1501 +#define TAG_MANECTRIC 1502 +#define TAG_LIGHTNING 1503 +#define TAG_BUBBLES 1504 +#define TAG_SPARKLE 1505 + +#define GFXTAG_DROPS_LOGO 2000 +#define PALTAG_DROPS 2000 +#define PALTAG_LOGO 2001 + +#define TAG_FLYGON_SILHOUETTE 2002 +#define TAG_RAYQUAZA_ORB 2003 + +#define COLOSSEUM_GAME_CODE 0x65366347 // "Gc6e" in ASCII + +// Used by various tasks and sprites +#define tState data[0] +#define sState data[0] + +/* + gIntroFrameCounter is used as a persistent timer throughout the + intro cinematic. At various points it's used to determine when + to trigger actions or progress through the cutscene. + The values for these are defined contiguously below. +*/ +#define TIMER_BIG_DROP_START 76 +#define TIMER_LOGO_APPEAR 128 +#define TIMER_LOGO_LETTERS_COLOR 144 +#define TIMER_BIG_DROP_FALLS 251 +#define TIMER_LOGO_BLEND_OUT 256 +#define TIMER_LOGO_DISAPPEAR 272 +#define TIMER_SMALL_DROP_1 368 +#define TIMER_SMALL_DROP_2 384 +#define TIMER_SPARKLES 560 +#define TIMER_FLYGON_SILHOUETTE_APPEAR 832 +#define TIMER_END_PAN_UP 904 +#define TIMER_END_SCENE_1 1007 +#define TIMER_START_SCENE_2 1026 +#define TIMER_MANECTRIC_ENTER 1088 +#define TIMER_PLAYER_DRIFT_BACK 1109 +#define TIMER_MANECTRIC_RUN_CIRCULAR 1168 +#define TIMER_PLAYER_MOVE_FORWARD 1214 +#define TIMER_TORCHIC_ENTER 1224 +#define TIMER_FLYGON_ENTER 1394 +#define TIMER_PLAYER_MOVE_BACKWARD 1398 +#define TIMER_PLAYER_HOLD_POSITION 1576 +#define TIMER_PLAYER_EXIT 1727 +#define TIMER_TORCHIC_SPEED_UP 1735 +#define TIMER_TORCHIC_EXIT 1856 +#define TIMER_END_SCENE_2 1946 +#define TIMER_START_SCENE_3 2068 +// timer is reset for scene 3 +#define TIMER_POKEBALL_FADE 28 +#define TIMER_START_LEGENDARIES 43 + +static EWRAM_DATA u16 sIntroCharacterGender = 0; +static EWRAM_DATA u16 sUnusedVar = 0; +static EWRAM_DATA u16 sFlygonYOffset = 0; -//iwram u32 gIntroFrameCounter; struct GcmbStruct gMultibootProgramStruct; -//.rodata -static const u16 gIntro1DropsPal[] = INCBIN_U16("graphics/intro/intro1_drops.gbapal"); -static const u16 gIntro1GFLogoPal[] = INCBIN_U16("graphics/intro/intro1_gflogo.gbapal"); -static const u32 gIntroTiles[] = INCBIN_U32("graphics/intro/intro.4bpp.lz"); -static const u16 gIntro1BGPals[16][16] = INCBIN_U16("graphics/intro/intro1_bgpal.gbapal"); -static const u32 gIntro1BG0_Tilemap[] = INCBIN_U32("graphics/intro/intro1_bg0_map.bin.lz"); -static const u32 gIntro1BG1_Tilemap[] = INCBIN_U32("graphics/intro/intro1_bg1_map.bin.lz"); -static const u32 gIntro1BG2_Tilemap[] = INCBIN_U32("graphics/intro/intro1_bg2_map.bin.lz"); -static const u32 gIntro1BG3_Tilemap[] = INCBIN_U32("graphics/intro/intro1_bg3_map.bin.lz"); -static const u32 gIntro1BGLeavesGfx[] = INCBIN_U32("graphics/intro/introgfx.4bpp.lz"); -static const u16 gIntro3PokeballPal[] = INCBIN_U16("graphics/intro/intro3_pokeball.gbapal"); -static const u32 gIntro3Pokeball_Tilemap[] = INCBIN_U32("graphics/intro/intro3_pokeball_map.bin.lz"); -static const u32 gIntro3Pokeball_Gfx[] = INCBIN_U32("graphics/intro/intro3_pokeball.8bpp.lz"); -static const u16 gIntro3Streaks_Pal_Unused[] = INCBIN_U16("graphics/intro/intro3_streaks.gbapal"); -static const u32 gIntro3Streaks_Gfx_Unused[] = INCBIN_U32("graphics/intro/intro3_streaks.4bpp.lz"); -static const u32 gIntro3Streaks_Tilemap_Unused[] = INCBIN_U32("graphics/intro/intro3_streaks_map.bin.lz"); -static const u16 gIntro3Misc1Palette[] = INCBIN_U16("graphics/intro/intro3_misc1.gbapal"); -static const u16 gIntro3Misc2Palette_Unused[] = INCBIN_U16("graphics/intro/intro3_misc2.gbapal"); -static const u32 gIntro3MiscTiles[] = INCBIN_U32("graphics/intro/intro3_misc.4bpp.lz"); -static const u16 gIntro1FlygonPalette[] = INCBIN_U16("graphics/intro/intro1_flygon.gbapal"); -static const u32 gIntro1EonTiles_Unused[] = INCBIN_U32("graphics/intro/intro1_eon.4bpp.lz"); -static const u8 sUnknownBytes[] = { +static const u16 sIntro1DropsPal[] = INCBIN_U16("graphics/intro/scene_1/drops.gbapal"); +static const u16 sIntro1Logo_Pal[] = INCBIN_U16("graphics/intro/scene_1/logo.gbapal"); +static const u32 sIntro1DropsLogo_Gfx[] = INCBIN_U32("graphics/intro/scene_1/drops_logo.4bpp.lz"); +static const u16 sIntro1Bg_Pal[16][16] = INCBIN_U16("graphics/intro/scene_1/bg.gbapal"); +static const u32 sIntro1Bg0_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg0_map.bin.lz"); +static const u32 sIntro1Bg1_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg1_map.bin.lz"); +static const u32 sIntro1Bg2_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg2_map.bin.lz"); +static const u32 sIntro1Bg3_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg3_map.bin.lz"); +static const u32 sIntro1Bg_Gfx[] = INCBIN_U32("graphics/intro/scene_1/bg.4bpp.lz"); +static const u16 sIntro3Pokeball_Pal[] = INCBIN_U16("graphics/intro/scene_3/pokeball.gbapal"); +static const u32 sIntro3Pokeball_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/pokeball_map.bin.lz"); +static const u32 sIntro3Pokeball_Gfx[] = INCBIN_U32("graphics/intro/scene_3/pokeball.8bpp.lz"); +static const u16 sIntro3Streaks_Pal[] = INCBIN_U16("graphics/intro/scene_3/streaks.gbapal"); // Unused +static const u32 sIntro3Streaks_Gfx[] = INCBIN_U32("graphics/intro/scene_3/streaks.4bpp.lz"); // Unused +static const u32 sIntro3Streaks_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/streaks_map.bin.lz"); // Unused +static const u16 sIntro3Misc1_Pal[] = INCBIN_U16("graphics/intro/scene_3/misc1.gbapal"); +static const u16 sIntro3Misc2_Pal[] = INCBIN_U16("graphics/intro/scene_3/misc2.gbapal"); // Unused +static const u32 sIntro3Misc_Gfx[] = INCBIN_U32("graphics/intro/scene_3/misc.4bpp.lz"); +static const u16 sIntro1Flygon_Pal[] = INCBIN_U16("graphics/intro/scene_1/flygon.gbapal"); +static const u32 sIntro1Lati_Gfx[] = INCBIN_U32("graphics/intro/scene_1/lati.4bpp.lz"); // Unused +static const u8 sUnusedData[] = { 0x02, 0x03, 0x04, 0x05, 0x01, 0x01, 0x01, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x02, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x02, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x02, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x00 }; -static const struct CompressedSpriteSheet gIntroSpriteSheet_Sparkle[] = +static const struct CompressedSpriteSheet sSpriteSheet_Sparkle[] = { - {gIntro1SparkleGfx, 0x400, 1505}, - {NULL}, + {gIntro1Sparkle_Gfx, 0x400, TAG_SPARKLE}, + {}, }; -static const struct SpritePalette gIntroPalette_Lightning[] = +static const struct SpritePalette sSpritePalette_Sparkle[] = { - {gIntro3LightningPal, 1505}, - {NULL}, + {gIntro3LightningPal, TAG_SPARKLE}, // Lightning palette re-used + {}, }; -static const struct OamData gUnknown_085E4A94 = +static const struct OamData sOamData_Sparkle = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -153,7 +227,7 @@ static const struct OamData gUnknown_085E4A94 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4A9C[] = +static const union AnimCmd sAnim_Sparkle[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(4, 2), @@ -162,53 +236,52 @@ static const union AnimCmd gUnknown_085E4A9C[] = ANIMCMD_FRAME(16, 2), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const gUnknown_085E4AB4[] = +static const union AnimCmd *const sAnims_Sparkle[] = { - gUnknown_085E4A9C, + sAnim_Sparkle, }; -static void sub_816D338(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4AB8 = +static const struct SpriteTemplate sSpriteTemplate_Sparkle = { - .tileTag = 1505, - .paletteTag = 1505, - .oam = &gUnknown_085E4A94, - .anims = gUnknown_085E4AB4, + .tileTag = TAG_SPARKLE, + .paletteTag = TAG_SPARKLE, + .oam = &sOamData_Sparkle, + .anims = sAnims_Sparkle, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816D338, + .callback = SpriteCB_Sparkle, }; -static const u8 gUnknown_085E4AD0[][2] = +static const u8 sSparkleCoords[][2] = { - {0x7C, 0x28}, - {0x66, 0x1E}, - {0x4D, 0x1E}, - {0x36, 0x0F}, - {0x94, 0x09}, - {0x3F, 0x1C}, - {0x5D, 0x28}, - {0x94, 0x20}, - {0xAD, 0x29}, - {0x5E, 0x14}, - {0xD0, 0x26}, - {0x00, 0x00}, + {124, 40}, + {102, 30}, + { 77, 30}, + { 54, 15}, + {148, 9}, + { 63, 28}, + { 93, 40}, + {148, 32}, + {173, 41}, + { 94, 20}, + {208, 38}, + {}, }; -static const struct CompressedSpriteSheet gIntroPokemonRunningSpriteSheet[] = +static const struct CompressedSpriteSheet sSpriteSheet_RunningPokemon[] = { - {gIntro2VolbeatGfx, 0x400, 1500}, - {gIntro2TorchicGfx, 0xC00, 1501}, - {gIntro2ManectricGfx, 0x2000, 1502}, - {NULL}, + {gIntro2VolbeatGfx, 0x400, TAG_VOLBEAT}, + {gIntro2TorchicGfx, 0xC00, TAG_TORCHIC}, + {gIntro2ManectricGfx, 0x2000, TAG_MANECTRIC}, + {}, }; -static const struct SpritePalette gIntroPokemonRunningPalette[] = +static const struct SpritePalette sSpritePalettes_RunningPokemon[] = { - {gIntro2VolbeatPal, 1500}, - {gIntro2TorchicPal, 1501}, - {gIntro2ManectricPal, 1502}, - {NULL}, + {gIntro2VolbeatPal, TAG_VOLBEAT}, + {gIntro2TorchicPal, TAG_TORCHIC}, + {gIntro2ManectricPal, TAG_MANECTRIC}, + {}, }; -static const struct OamData gUnknown_085E4B28 = +static const struct OamData sOamData_Volbeat = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -222,30 +295,29 @@ static const struct OamData gUnknown_085E4B28 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4B30[] = +static const union AnimCmd sAnim_Volbeat[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(16, 2), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const gUnknown_085E4B3C[] = +static const union AnimCmd *const sAnims_Volbeat[] = { - gUnknown_085E4B30, + sAnim_Volbeat, }; -static void sub_816D81C(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4B40 = +static const struct SpriteTemplate sSpriteTemplate_Volbeat = { - .tileTag = 1500, - .paletteTag = 1500, - .oam = &gUnknown_085E4B28, - .anims = gUnknown_085E4B3C, + .tileTag = TAG_VOLBEAT, + .paletteTag = TAG_VOLBEAT, + .oam = &sOamData_Volbeat, + .anims = sAnims_Volbeat, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816D81C, + .callback = SpriteCB_Volbeat, }; -static const struct OamData gUnknown_085E4B58 = +static const struct OamData sOamData_Torchic = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -259,7 +331,7 @@ static const struct OamData gUnknown_085E4B58 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4B60[] = +static const union AnimCmd sAnim_Torchic_Walk[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(16, 5), @@ -267,7 +339,7 @@ static const union AnimCmd gUnknown_085E4B60[] = ANIMCMD_FRAME(16, 5), ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E4B74[] = +static const union AnimCmd sAnim_Torchic_Run[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(16, 3), @@ -275,33 +347,37 @@ static const union AnimCmd gUnknown_085E4B74[] = ANIMCMD_FRAME(16, 3), ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E4B88[] = +static const union AnimCmd sAnim_Torchic_Trip[] = { ANIMCMD_FRAME(48, 4), ANIMCMD_FRAME(64, 6), ANIMCMD_FRAME(80, 0), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E4B98[] = +enum { + TORCHIC_ANIM_WALK, + TORCHIC_ANIM_RUN, + TORCHIC_ANIM_TRIP, +}; +static const union AnimCmd *const sAnims_Torchic[] = { - gUnknown_085E4B60, - gUnknown_085E4B74, - gUnknown_085E4B88, + [TORCHIC_ANIM_WALK] = sAnim_Torchic_Walk, + [TORCHIC_ANIM_RUN] = sAnim_Torchic_Run, + [TORCHIC_ANIM_TRIP] = sAnim_Torchic_Trip, }; -static void sub_816D9C0(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4BA4 = +static const struct SpriteTemplate sSpriteTemplate_Torchic = { - .tileTag = 1501, - .paletteTag = 1501, - .oam = &gUnknown_085E4B58, - .anims = gUnknown_085E4B98, + .tileTag = TAG_TORCHIC, + .paletteTag = TAG_TORCHIC, + .oam = &sOamData_Torchic, + .anims = sAnims_Torchic, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816D9C0, + .callback = SpriteCB_Torchic, }; -static const struct OamData gUnknown_085E4BBC = +static const struct OamData sOamData_Manectric = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -315,7 +391,7 @@ static const struct OamData gUnknown_085E4BBC = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4BC4[] = +static const union AnimCmd sAnim_Manectric[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(64, 4), @@ -323,34 +399,33 @@ static const union AnimCmd gUnknown_085E4BC4[] = ANIMCMD_FRAME(192, 4), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const gUnknown_085E4BD8[] = +static const union AnimCmd *const sAnims_Manectric[] = { - gUnknown_085E4BC4, + sAnim_Manectric, }; -static void sub_816DAE8(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4BDC = +static const struct SpriteTemplate sSpriteTemplate_Manectric = { - .tileTag = 1502, - .paletteTag = 1502, - .oam = &gUnknown_085E4BBC, - .anims = gUnknown_085E4BD8, + .tileTag = TAG_MANECTRIC, + .paletteTag = TAG_MANECTRIC, + .oam = &sOamData_Manectric, + .anims = sAnims_Manectric, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816DAE8, + .callback = SpriteCB_Manectric, }; -static const struct CompressedSpriteSheet gIntroRayquazaLightningSpriteSheet[] = +static const struct CompressedSpriteSheet sSpriteSheet_Lightning[] = { - {gIntro3LightningGfx, 0xC00, 1503}, - {NULL}, + {gIntro3LightningGfx, 0xC00, TAG_LIGHTNING}, + {}, }; -static const struct SpritePalette gIntroRayquazaLightningPalette[] = +static const struct SpritePalette sSpritePalette_Lightning[] = { - {gIntro3LightningPal, 1503}, - {NULL}, + {gIntro3LightningPal, TAG_LIGHTNING}, + {}, }; -static const struct OamData gUnknown_085E4C14 = +static const struct OamData sOamData_Lightning = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -364,78 +439,84 @@ static const struct OamData gUnknown_085E4C14 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4C1C[] = +static const union AnimCmd sAnim_Lightning_Top[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(48, 2), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4C28[] = +static const union AnimCmd sAnim_Lightning_Middle[] = { ANIMCMD_FRAME(16, 2), ANIMCMD_FRAME(64, 2), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4C34[] = +static const union AnimCmd sAnim_Lightning_Bottom[] = { ANIMCMD_FRAME(32, 2), ANIMCMD_FRAME(80, 2), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E4C40[] = +static const union AnimCmd *const sAnims_Lightning[] = { - gUnknown_085E4C1C, - gUnknown_085E4C28, - gUnknown_085E4C34, + sAnim_Lightning_Top, + sAnim_Lightning_Middle, + sAnim_Lightning_Bottom, }; -static void SpriteCB_IntroRayquazaLightning(struct Sprite *sprite); -static const struct SpriteTemplate gIntroLightningSprite = +static const struct SpriteTemplate sSpriteTemplate_Lightning = { - .tileTag = 1503, - .paletteTag = 1503, - .oam = &gUnknown_085E4C14, - .anims = gUnknown_085E4C40, + .tileTag = TAG_LIGHTNING, + .paletteTag = TAG_LIGHTNING, + .oam = &sOamData_Lightning, + .anims = sAnims_Lightning, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_IntroRayquazaLightning, -}; -static const s16 gIntroGroudonRockData[][3] = -{ - {0x68, 0x00, 0x0C0}, - {0x8E, 0x03, 0x280}, - {0x53, 0x01, 0x180}, - {0x9B, 0x00, 0x080}, - {0x38, 0x02, 0x200}, - {0xAE, 0x01, 0x100}, -}; -static const struct CompressedSpriteSheet gUnknown_085E4C88[] = -{ - {gIntro2BubblesGfx, 0x600, 1504}, - {NULL}, -}; -static const struct SpritePalette gUnknown_085E4C98[] = -{ - {gIntro2BubblesPal, 1504}, - {NULL}, -}; -static const s16 gIntroKyogreBubbleData[][3] = -{ - {0x42, 0x40, 0x1}, - {0x60, 0x60, 0x8}, - {0x80, 0x40, 0x1}, - {0x90, 0x30, 0x8}, - {0xA0, 0x48, 0x1}, - {0xB0, 0x60, 0x8}, - {0x60, 0x60, 0x4}, - {0x70, 0x68, 0x8}, - {0x80, 0x60, 0x4}, - {0x58, 0x20, 0x4}, - {0x68, 0x18, 0x8}, - {0x78, 0x20, 0x4}, -}; -static const struct OamData gUnknown_085E4CF0 = -{ - .y = 160, + .callback = SpriteCB_Lightning, +}; +// x coord, anim number, speed +// Smaller anim numbers are larger rocks, and are given slower speeds +static const s16 sGroudonRockData[][3] = +{ + {104, 0, 0x0C0}, + {142, 3, 0x280}, + { 83, 1, 0x180}, + {155, 0, 0x080}, + { 56, 2, 0x200}, + {174, 1, 0x100}, +}; +static const struct CompressedSpriteSheet sSpriteSheet_Bubbles[] = +{ + {gIntro3Bubbles_Gfx, 0x600, TAG_BUBBLES}, + {}, +}; +static const struct SpritePalette sSpritePalette_Bubbles[] = +{ + {gIntro3Bubbles_Pal, TAG_BUBBLES}, + {}, +}; +#define NUM_BUBBLES_IN_SET 6 +// x coord, y coord, delay before animation +// Can be produced in two different sets depending on the function called to create the sprites +static const s16 sKyogreBubbleData[NUM_BUBBLES_IN_SET * 2][3] = +{ + // Set 1, for Kyogre's body + { 66, 64, 1}, + { 96, 96, 8}, + {128, 64, 1}, + {144, 48, 8}, + {160, 72, 1}, + {176, 96, 8}, + // Set 2, for Kyogre's fins + { 96, 96, 4}, + {112, 104, 8}, + {128, 96, 4}, + { 88, 32, 4}, + {104, 24, 8}, + {120, 32, 4}, +}; +static const struct OamData sOamData_Bubbles = +{ + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -449,7 +530,7 @@ static const struct OamData gUnknown_085E4CF0 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4CF8[] = +static const union AnimCmd sAnim_Bubbles[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(8, 4), @@ -458,24 +539,23 @@ static const union AnimCmd gUnknown_085E4CF8[] = ANIMCMD_FRAME(32, 4), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E4D10[] = +static const union AnimCmd *const sAnims_Bubbles[] = { - gUnknown_085E4CF8, + sAnim_Bubbles, }; -static void SpriteCB_IntroKyogreBubbles(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4D14 = +static const struct SpriteTemplate sSpriteTemplate_Bubbles = { - .tileTag = 1504, - .paletteTag = 1504, - .oam = &gUnknown_085E4CF0, - .anims = gUnknown_085E4D10, + .tileTag = TAG_BUBBLES, + .paletteTag = TAG_BUBBLES, + .oam = &sOamData_Bubbles, + .anims = sAnims_Bubbles, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_IntroKyogreBubbles, + .callback = SpriteCB_KyogreBubbles, }; -static const struct OamData gUnknown_085E4D2C = +static const struct OamData sOamData_WaterDrop = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -489,45 +569,50 @@ static const struct OamData gUnknown_085E4D2C = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4D34[] = +enum { + DROP_ANIM_UPPER_HALF, + DROP_ANIM_LOWER_HALF, + DROP_ANIM_REFLECTION, + DROP_ANIM_RIPPLE, +}; +static const union AnimCmd sAnim_WaterDrop_UpperHalf[] = { ANIMCMD_FRAME(16, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4D3C[] = +static const union AnimCmd sAnim_WaterDrop_LowerHalf[] = { ANIMCMD_FRAME(24, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4D44[] = +static const union AnimCmd sAnim_WaterDrop_Reflection[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4D4C[] = +static const union AnimCmd sAnim_WaterDrop_Ripple[] = { ANIMCMD_FRAME(48, 8), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E4D54[] = +static const union AnimCmd *const sAnims_WaterDrop[] = { - gUnknown_085E4D34, - gUnknown_085E4D3C, - gUnknown_085E4D44, - gUnknown_085E4D4C, + [DROP_ANIM_UPPER_HALF] = sAnim_WaterDrop_UpperHalf, + [DROP_ANIM_LOWER_HALF] = sAnim_WaterDrop_LowerHalf, + [DROP_ANIM_REFLECTION] = sAnim_WaterDrop_Reflection, + [DROP_ANIM_RIPPLE] = sAnim_WaterDrop_Ripple, }; -static void sub_816F454(struct Sprite *sprite); -static const struct SpriteTemplate gIntroWaterDropSprite = +static const struct SpriteTemplate sSpriteTemplate_WaterDrop = { - .tileTag = 2000, - .paletteTag = 2000, - .oam = &gUnknown_085E4D2C, - .anims = gUnknown_085E4D54, + .tileTag = GFXTAG_DROPS_LOGO, + .paletteTag = PALTAG_DROPS, + .oam = &sOamData_WaterDrop, + .anims = sAnims_WaterDrop, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816F454, + .callback = SpriteCB_WaterDrop, }; -static const union AnimCmd gUnknown_085E4D7C[] = +static const union AnimCmd sAnim_PlayerBicycle_Fast[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(64, 4), @@ -535,7 +620,7 @@ static const union AnimCmd gUnknown_085E4D7C[] = ANIMCMD_FRAME(192, 4), ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E4D90[] = +static const union AnimCmd sAnim_PlayerBicycle_Slow[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(64, 8), @@ -543,30 +628,36 @@ static const union AnimCmd gUnknown_085E4D90[] = ANIMCMD_FRAME(192, 8), ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E4DA4[] = +// The below two animations appear to be copied from the Credits version +// of the player graphic, where additional frames are present to show +// the player turning around to look at their rival. +// They go unused here, and if they were used they'd overflow beyond +// the player graphics data. +// The above sAnim_PlayerBicycle_Slow, while valid, is likewise unused +static const union AnimCmd sAnim_PlayerBicycle_LookBack[] = { ANIMCMD_FRAME(256, 4), - ANIMCMD_FRAME(0x140, 4), - ANIMCMD_FRAME(0x180, 4), + ANIMCMD_FRAME(320, 4), + ANIMCMD_FRAME(384, 4), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4DB4[] = +static const union AnimCmd sAnim_PlayerBicycle_LookForward[] = { - ANIMCMD_FRAME(0x180, 16), - ANIMCMD_FRAME(0x140, 16), + ANIMCMD_FRAME(384, 16), + ANIMCMD_FRAME(320, 16), ANIMCMD_FRAME(256, 16), ANIMCMD_END, }; -static const union AnimCmd *const gIntroBicycleAnimationCommands[] = +static const union AnimCmd *const sAnims_PlayerBicycle[] = { - gUnknown_085E4D7C, - gUnknown_085E4D90, - gUnknown_085E4DA4, - gUnknown_085E4DB4, + sAnim_PlayerBicycle_Fast, + sAnim_PlayerBicycle_Slow, + sAnim_PlayerBicycle_LookBack, + sAnim_PlayerBicycle_LookForward, }; -static const struct OamData gUnknown_085E4DD4 = +static const struct OamData sOamData_GameFreakLetter = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -580,9 +671,9 @@ static const struct OamData gUnknown_085E4DD4 = .paletteNum = 0, .affineParam = 0, }; -static const struct OamData gUnknown_085E4DDC = +static const struct OamData sOamData_PresentsLetter = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -596,9 +687,9 @@ static const struct OamData gUnknown_085E4DDC = .paletteNum = 0, .affineParam = 0, }; -static const struct OamData gUnknown_085E4DE4 = +static const struct OamData sOamData_GameFreakLogo = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_BLEND, .mosaic = 0, @@ -612,193 +703,232 @@ static const struct OamData gUnknown_085E4DE4 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4DEC[] = +static const union AnimCmd sAnim_GameFreakLetter_G[] = { ANIMCMD_FRAME(80, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4DF4[] = +static const union AnimCmd sAnim_GameFreakLetter_A[] = { ANIMCMD_FRAME(84, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4DFC[] = +static const union AnimCmd sAnim_GameFreakLetter_M[] = { ANIMCMD_FRAME(88, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E04[] = +static const union AnimCmd sAnim_GameFreakLetter_E[] = { ANIMCMD_FRAME(92, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E0C[] = +static const union AnimCmd sAnim_GameFreakLetter_F[] = { ANIMCMD_FRAME(96, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E14[] = +static const union AnimCmd sAnim_GameFreakLetter_R[] = { ANIMCMD_FRAME(100, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E1C[] = +static const union AnimCmd sAnim_GameFreakLetter_K[] = { ANIMCMD_FRAME(104, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E24[] = +static const union AnimCmd sAnim_PresentsLetter_P[] = { ANIMCMD_FRAME(112, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E2C[] = +static const union AnimCmd sAnim_PresentsLetter_R[] = { ANIMCMD_FRAME(113, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E34[] = +static const union AnimCmd sAnim_PresentsLetter_E[] = { ANIMCMD_FRAME(114, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E3C[] = +static const union AnimCmd sAnim_PresentsLetter_S[] = { ANIMCMD_FRAME(115, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E44[] = +static const union AnimCmd sAnim_PresentsLetter_N[] = { ANIMCMD_FRAME(116, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E4C[] = +static const union AnimCmd sAnim_PresentsLetter_T[] = { ANIMCMD_FRAME(117, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E4E54[] = +static const union AnimCmd sAnim_GameFreakLogo[] = { ANIMCMD_FRAME(128, 8), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E4E5C[] = -{ - gUnknown_085E4DEC, - gUnknown_085E4DF4, - gUnknown_085E4DFC, - gUnknown_085E4E04, - gUnknown_085E4E0C, - gUnknown_085E4E14, - gUnknown_085E4E1C, -}; -static const union AnimCmd *const gUnknown_085E4E78[] = -{ - gUnknown_085E4E24, - gUnknown_085E4E2C, - gUnknown_085E4E34, - gUnknown_085E4E3C, - gUnknown_085E4E44, - gUnknown_085E4E4C, -}; -static const union AnimCmd *const gUnknown_085E4E90[] = -{ - gUnknown_085E4E54, -}; -static const s16 gUnknown_085E4E94[][2] = -{ - {0, -72}, - {1, -56}, - {2, -40}, - {3, -24}, - {4, 8}, - {5, 24}, - {3, 40}, - {1, 56}, - {6, 72}, - {0, -28}, - {1, -20}, - {2, -12}, - {3, -4}, - {2, 4}, - {4, 12}, - {5, 20}, - {3, 28}, -}; -static const union AffineAnimCmd gUnknown_085E4ED8[] = + +enum { + GAMEFREAK_G, + GAMEFREAK_A, + GAMEFREAK_M, + GAMEFREAK_E, + GAMEFREAK_F, + GAMEFREAK_R, + GAMEFREAK_K, +}; +enum { + PRESENTS_P, + PRESENTS_R, + PRESENTS_E, + PRESENTS_S, + PRESENTS_N, + PRESENTS_T, +}; +static const union AnimCmd *const sAnims_GameFreakLetter[] = +{ + [GAMEFREAK_G] = sAnim_GameFreakLetter_G, + [GAMEFREAK_A] = sAnim_GameFreakLetter_A, + [GAMEFREAK_M] = sAnim_GameFreakLetter_M, + [GAMEFREAK_E] = sAnim_GameFreakLetter_E, + [GAMEFREAK_F] = sAnim_GameFreakLetter_F, + [GAMEFREAK_R] = sAnim_GameFreakLetter_R, + [GAMEFREAK_K] = sAnim_GameFreakLetter_K, +}; +static const union AnimCmd *const sAnims_PresentsLetter[] = +{ + [PRESENTS_P] = sAnim_PresentsLetter_P, + [PRESENTS_R] = sAnim_PresentsLetter_R, + [PRESENTS_E] = sAnim_PresentsLetter_E, + [PRESENTS_S] = sAnim_PresentsLetter_S, + [PRESENTS_N] = sAnim_PresentsLetter_N, + [PRESENTS_T] = sAnim_PresentsLetter_T, +}; +static const union AnimCmd *const sAnims_GameFreakLogo[] = +{ + sAnim_GameFreakLogo, +}; +#define NUM_GF_LETTERS 9 // Letters in "Game Freak" +static const s16 sGameFreakLetterData[NUM_GF_LETTERS][2] = +{ + // Letter, x offset + {GAMEFREAK_G, -72}, + {GAMEFREAK_A, -56}, + {GAMEFREAK_M, -40}, + {GAMEFREAK_E, -24}, + {GAMEFREAK_F, 8}, + {GAMEFREAK_R, 24}, + {GAMEFREAK_E, 40}, + {GAMEFREAK_A, 56}, + {GAMEFREAK_K, 72}, +}; +static const s16 sPresentsLetterData[][2] = +{ + // Letter, x offset + {PRESENTS_P, -28}, + {PRESENTS_R, -20}, + {PRESENTS_E, -12}, + {PRESENTS_S, -4}, + {PRESENTS_E, 4}, + {PRESENTS_N, 12}, + {PRESENTS_T, 20}, + {PRESENTS_S, 28}, +}; +static const union AffineAnimCmd sAffineAnim_GameFreak_Small[] = { AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_085E4EE8[] = +static const union AffineAnimCmd sAffineAnim_GameFreak_GrowAndShrink[] = { AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_FRAME(16, 16, 0, 16), AFFINEANIMCMD_FRAME(-16, -16, 0, 8), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_085E4F08[] = +static const union AffineAnimCmd sAffineAnim_GameFreak_GrowBig[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(8, 8, 0, 48), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_085E4F20[] = +static const union AffineAnimCmd sAffineAnim_GameFreak_GrowMedium[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(2, 2, 0, 48), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd *const gUnknown_085E4F38[] = +static const union AffineAnimCmd *const sAffineAnims_GameFreak[] = { - gUnknown_085E4ED8, - gUnknown_085E4EE8, - gUnknown_085E4F08, - gUnknown_085E4F20, + sAffineAnim_GameFreak_Small, // Initialize letters while still invisible + sAffineAnim_GameFreak_GrowAndShrink, // For letters appearing. Logo does this too, but while it's invisible + sAffineAnim_GameFreak_GrowBig, // For letters disappearing + sAffineAnim_GameFreak_GrowMedium, // For logo disappearing }; -static const u16 gUnknown_085E4F48[] = +static const u16 sGameFreakLettersMoveSpeed[NUM_GF_LETTERS] = { - 0x100, 0xC0, 0x80, 0x40, 0x00, 0x40, 0x80, 0xC0, 0x100 + 256, // G + 192, // A + 128, // M + 64, // E + 0, // F + 64, // R + 128, // E + 192, // A + 256 // K }; -static void sub_816FB38(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4F5C = +static const struct SpriteTemplate sSpriteTemplate_GameFreakLetter = { - .tileTag = 2000, - .paletteTag = 2001, - .oam = &gUnknown_085E4DD4, - .anims = gUnknown_085E4E5C, + .tileTag = GFXTAG_DROPS_LOGO, + .paletteTag = PALTAG_LOGO, + .oam = &sOamData_GameFreakLetter, + .anims = sAnims_GameFreakLetter, .images = NULL, - .affineAnims = gUnknown_085E4F38, - .callback = sub_816FB38, + .affineAnims = sAffineAnims_GameFreak, + .callback = SpriteCB_LogoLetter, }; -static const struct SpriteTemplate gUnknown_085E4F74 = +// Unused +static const struct SpriteTemplate sSpriteTemplate_PresentsLetter = { - .tileTag = 2000, - .paletteTag = 2001, - .oam = &gUnknown_085E4DDC, - .anims = gUnknown_085E4E78, + .tileTag = GFXTAG_DROPS_LOGO, + .paletteTag = PALTAG_LOGO, + .oam = &sOamData_PresentsLetter, + .anims = sAnims_PresentsLetter, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816FB38, + .callback = SpriteCB_LogoLetter, }; -static void sub_816FD44(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4F8C = +static const struct SpriteTemplate sSpriteTemplate_GameFreakLogo = { - .tileTag = 2000, - .paletteTag = 2001, - .oam = &gUnknown_085E4DE4, - .anims = gUnknown_085E4E90, + .tileTag = GFXTAG_DROPS_LOGO, + .paletteTag = PALTAG_LOGO, + .oam = &sOamData_GameFreakLogo, + .anims = sAnims_GameFreakLogo, .images = NULL, - .affineAnims = gUnknown_085E4F38, - .callback = sub_816FD44, + .affineAnims = sAffineAnims_GameFreak, + .callback = SpriteCB_GameFreakLogo, }; -static const u8 gUnknown_085E4FA4[] = +static const u8 sGameFreakLetterStartDelays[NUM_GF_LETTERS] = { - 0x00, 0x17, 0x17, 0x31, 0x3E, 0x24, 0x24, 0x0A, 0x0A + 0, // G + 23, // A + 23, // M + 49, // E + 62, // F + 36, // R + 36, // E + 10, // A + 10 // K }; -static const struct OamData gUnknown_085E4FB0 = +static const struct OamData sOamData_FlygonSilhouette = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -812,46 +942,45 @@ static const struct OamData gUnknown_085E4FB0 = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E4FB8[] = +static const union AnimCmd sAnim_FlygonSilhouette[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const gUnknown_085E4FC0[] = +static const union AnimCmd *const sAnims_FlygonSilhouette[] = { - gUnknown_085E4FB8, + sAnim_FlygonSilhouette, }; -static void sub_816FEDC(struct Sprite *sprite); -static const struct SpriteTemplate gUnknown_085E4FC4 = +static const struct SpriteTemplate sSpriteTemplate_FlygonSilhouette = { - .tileTag = 2002, - .paletteTag = 2002, - .oam = &gUnknown_085E4FB0, - .anims = gUnknown_085E4FC0, + .tileTag = TAG_FLYGON_SILHOUETTE, + .paletteTag = TAG_FLYGON_SILHOUETTE, + .oam = &sOamData_FlygonSilhouette, + .anims = sAnims_FlygonSilhouette, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_816FEDC, + .callback = SpriteCB_FlygonSilhouette, }; -static const struct CompressedSpriteSheet gIntroSpriteSheet_WaterDropAndLogo[] = +static const struct CompressedSpriteSheet sSpriteSheet_WaterDropsAndLogo[] = { - {gIntroTiles, 0x1400, 2000}, - {NULL}, + {sIntro1DropsLogo_Gfx, 0x1400, GFXTAG_DROPS_LOGO}, + {}, }; -static const struct CompressedSpriteSheet gIntroSpriteSheet_Flygon[] = +static const struct CompressedSpriteSheet sSpriteSheet_FlygonSilhouette[] = { - {gIntro1FlygonGfx, 0x400, 2002}, - {NULL}, + {gIntro1Flygon_Gfx, 0x400, TAG_FLYGON_SILHOUETTE}, + {}, }; -static const struct SpritePalette gIntroPalette_DropLogoFlygon[] = +static const struct SpritePalette sSpritePalettes_Intro1[] = { - {gIntro1DropsPal, 2000}, - {gIntro1GFLogoPal, 2001}, - {gIntro1FlygonPalette, 2002}, - {NULL}, + {sIntro1DropsPal, PALTAG_DROPS}, + {sIntro1Logo_Pal, PALTAG_LOGO}, + {sIntro1Flygon_Pal, TAG_FLYGON_SILHOUETTE}, + {}, }; -static const struct OamData gUnknown_085E501C = +static const struct OamData sOamData_RayquazaOrb = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -865,86 +994,36 @@ static const struct OamData gUnknown_085E501C = .paletteNum = 0, .affineParam = 0, }; -static const union AnimCmd gUnknown_085E5024[] = +static const union AnimCmd sAnim_RayquazaOrb[] = { ANIMCMD_FRAME(16, 8), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E502C[] = +static const union AnimCmd *const sAnims_RayquazaOrb[] = { - gUnknown_085E5024, + sAnim_RayquazaOrb, }; -static void SpriteCB_IntroRayquazaHyperbeam(struct Sprite *sprite); -static const struct SpriteTemplate gIntroRayquazaHyperbeamSprite = +static const struct SpriteTemplate sSpriteTemplate_RayquazaOrb = { - .tileTag = 2003, - .paletteTag = 2003, - .oam = &gUnknown_085E501C, - .anims = gUnknown_085E502C, + .tileTag = TAG_RAYQUAZA_ORB, + .paletteTag = TAG_RAYQUAZA_ORB, + .oam = &sOamData_RayquazaOrb, + .anims = sAnims_RayquazaOrb, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_IntroRayquazaHyperbeam, + .callback = SpriteCB_RayquazaOrb, }; -static const struct CompressedSpriteSheet gIntroRayquazaGlowSpriteSheet[] = +static const struct CompressedSpriteSheet sSpriteSheet_RayquazaOrb[] = { - {gIntro3MiscTiles, 0xA00, 2003}, - {NULL}, + {sIntro3Misc_Gfx, 0xA00, TAG_RAYQUAZA_ORB}, + {}, }; -static const struct SpritePalette gIntroRayquazaGlowPalette[] = +static const struct SpritePalette sSpritePalette_RayquazaOrb[] = { - {gIntro3Misc1Palette, 2003}, - {NULL}, + {sIntro3Misc1_Pal, TAG_RAYQUAZA_ORB}, + {}, }; -// this file's functions -static void MainCB2_EndIntro(void); -static void Task_IntroLoadPart1Graphics(u8); -static u8 CreateWaterDrop(s16, s16, u16, u16, u16, u8); -static void Task_IntroFadeIn(u8); -static void intro_reset_and_hide_bgs(void); -static void Task_IntroWaterDrops(u8); -static void Task_IntroWaterDrops_1(u8); -static void Task_IntroWaterDrops_2(u8); -static void Task_IntroWaterDrops_3(u8); -static void Task_IntroScrollDownAndShowFlygon(u8); -static void Task_IntroWaitToSetupPart2(u8); -static void Task_IntroLoadPart2Graphics(u8); -static void Task_IntroStartBikeRide(u8); -static void Task_IntroHandleBikeAndFlygonMovement(u8); -static void Task_IntroWaitToSetupPart3(u8); -static void Task_IntroLoadPart3Graphics(u8); -static void Task_IntroSpinAndZoomPokeball(u8); -static void Task_IntroWaitToSetupPart3LegendsFight(u8); -static void Task_IntroLoadGroudonScene(u8); -static void Task_IntroLoadPart3Graphics1(u8); -static void Task_IntroLoadPart3Graphics2(u8); -static void Task_IntroLoadPart3Graphics3(u8); -static void Task_IntroLoadPart3Graphics4(u8); -static void Task_IntroGroudonScene(u8); -static void Task_IntroLoadKyogreScene(u8); -static void Task_IntroKyogreScene(u8); -static void Task_IntroLoadClouds1(u8); -static void Task_IntroLoadClouds2(u8); -static void Task_IntroLoadClouds3(u8); -static void Task_IntroCloudScene(u8); -static void Task_IntroLoadRayquazaLightningScene(u8); -static void Task_IntroRayquazaLightningScene(u8); -static void Task_IntroLoadRayquazaGlowScene(u8); -static void Task_IntroRayquazaGlowScene_0(u8); -static void Task_EndIntroMovie(u8); -static void CreateGroudonRockSprites(u8); -static void SpriteCB_IntroGroudonRocks(struct Sprite *); -static void CreateKyogreBubbleSprites_0(u8); -static void CreateKyogreBubbleSprites_1(void); -static void Task_IntroRayquazaGlowScene_1(u8); -static void sub_816F46C(struct Sprite *); -static void sub_816F5B4(struct Sprite *); -static void sub_816F660(struct Sprite *); -static void SpriteCB_WaterDropFall(struct Sprite *); -static void sub_816F318(struct Sprite *); -static void SpriteCB_IntroGraphicsBicycle(struct Sprite *); -static void SpriteCB_IntroGraphicsFlygon(struct Sprite *); -static u8 CreatePart1Animations(s16, s16, s16); static void VBlankCB_Intro(void) { @@ -976,7 +1055,7 @@ static void LoadCopyrightGraphics(u16 tilesetAddress, u16 tilemapAddress, u16 pa { LZ77UnCompVram(gIntroCopyright_Gfx, (void *)(VRAM + tilesetAddress)); LZ77UnCompVram(gIntroCopyright_Tilemap, (void *)(VRAM + tilemapAddress)); - LoadPalette(gIntroCopyright_Pal, paletteAddress, 0x20); + LoadPalette(gIntroCopyright_Pal, paletteAddress, 32); } static void SerialCB_CopyrightScreen(void) @@ -993,7 +1072,7 @@ static u8 SetUpCopyrightScreen(void) SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); - *(u16 *)PLTT = 0x7FFF; + *(u16 *)PLTT = RGB_WHITE; SetGpuReg(REG_OFFSET_DISPCNT, 0); SetGpuReg(REG_OFFSET_BG0HOFS, 0); SetGpuReg(REG_OFFSET_BG0VOFS, 0); @@ -1006,7 +1085,7 @@ static u8 SetUpCopyrightScreen(void) ResetTasks(); ResetSpriteData(); FreeAllSpritePalettes(); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITEALPHA); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITEALPHA); SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(7) @@ -1026,24 +1105,24 @@ static u8 SetUpCopyrightScreen(void) GameCubeMultiBoot_Main(&gMultibootProgramStruct); if (gMultibootProgramStruct.gcmb_field_2 != 1) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gMain.state++; } break; case 141: if (UpdatePaletteFade()) break; - CreateTask(Task_IntroLoadPart1Graphics, 0); + CreateTask(Task_Scene1_Load, 0); SetMainCallback2(MainCB2_Intro); if (gMultibootProgramStruct.gcmb_field_2 != 0) { if (gMultibootProgramStruct.gcmb_field_2 == 2) { // check the multiboot ROM header game code to see if we already did this - if (*(u32 *)(EWRAM_START + 0xAC) == 0x65366347) // "Gc6e" in ASCII + if (*(u32 *)(EWRAM_START + 0xAC) == COLOSSEUM_GAME_CODE) { CpuCopy16(&gMultiBootProgram_PokemonColosseum_Start, (void *)EWRAM_START, sizeof(gMultiBootProgram_PokemonColosseum_Start)); - *(u32 *)(EWRAM_START + 0xAC) = 0x65366347; + *(u32 *)(EWRAM_START + 0xAC) = COLOSSEUM_GAME_CODE; } GameCubeMultiBoot_ExecuteProgram(&gMultibootProgramStruct); } @@ -1079,408 +1158,482 @@ void CB2_InitCopyrightScreenAfterTitleScreen(void) SetUpCopyrightScreen(); } -static void Task_IntroLoadPart1Graphics(u8 taskId) +#define sBigDropSpriteId data[0] + +static void Task_Scene1_Load(u8 taskId) { SetVBlankCallback(NULL); - gIntroCharacterGender = Random() & 1; - intro_reset_and_hide_bgs(); + sIntroCharacterGender = Random() & 1; + IntroResetGpuRegs(); SetGpuReg(REG_OFFSET_BG3VOFS, 0); - SetGpuReg(REG_OFFSET_BG2VOFS, 0x50); - SetGpuReg(REG_OFFSET_BG1VOFS, 0x18); - SetGpuReg(REG_OFFSET_BG0VOFS, 0x28); - LZ77UnCompVram(gIntro1BGLeavesGfx, (void *)VRAM); - LZ77UnCompVram(gIntro1BG0_Tilemap, (void *)(BG_CHAR_ADDR(2))); - DmaClear16(3, BG_SCREEN_ADDR(17), 0x800); - LZ77UnCompVram(gIntro1BG1_Tilemap, (void *)(BG_SCREEN_ADDR(18))); - DmaClear16(3, BG_SCREEN_ADDR(19), 0x800); - LZ77UnCompVram(gIntro1BG2_Tilemap, (void *)(BG_SCREEN_ADDR(20))); - DmaClear16(3, BG_SCREEN_ADDR(21), 0x800); - LZ77UnCompVram(gIntro1BG3_Tilemap, (void *)(BG_SCREEN_ADDR(22))); - DmaClear16(3, BG_SCREEN_ADDR(23), 0x800); - LoadPalette(gIntro1BGPals, 0, sizeof(gIntro1BGPals)); + SetGpuReg(REG_OFFSET_BG2VOFS, 80); + SetGpuReg(REG_OFFSET_BG1VOFS, 24); + SetGpuReg(REG_OFFSET_BG0VOFS, 40); + LZ77UnCompVram(sIntro1Bg_Gfx, (void *)VRAM); + LZ77UnCompVram(sIntro1Bg0_Tilemap, (void *)(BG_CHAR_ADDR(2))); + DmaClear16(3, BG_SCREEN_ADDR(17), BG_SCREEN_SIZE); + LZ77UnCompVram(sIntro1Bg1_Tilemap, (void *)(BG_SCREEN_ADDR(18))); + DmaClear16(3, BG_SCREEN_ADDR(19), BG_SCREEN_SIZE); + LZ77UnCompVram(sIntro1Bg2_Tilemap, (void *)(BG_SCREEN_ADDR(20))); + DmaClear16(3, BG_SCREEN_ADDR(21), BG_SCREEN_SIZE); + LZ77UnCompVram(sIntro1Bg3_Tilemap, (void *)(BG_SCREEN_ADDR(22))); + DmaClear16(3, BG_SCREEN_ADDR(23), BG_SCREEN_SIZE); + LoadPalette(sIntro1Bg_Pal, 0, sizeof(sIntro1Bg_Pal)); SetGpuReg(REG_OFFSET_BG3CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(22) | BGCNT_16COLOR | BGCNT_TXT256x512); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(20) | BGCNT_16COLOR | BGCNT_TXT256x512); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(18) | BGCNT_16COLOR | BGCNT_TXT256x512); SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(16) | BGCNT_16COLOR | BGCNT_TXT256x512); - LoadCompressedSpriteSheet(gIntroSpriteSheet_WaterDropAndLogo); - LoadCompressedSpriteSheet(gIntroSpriteSheet_Flygon); - LoadSpritePalettes(gIntroPalette_DropLogoFlygon); - LoadCompressedSpriteSheet(gIntroSpriteSheet_Sparkle); - LoadSpritePalettes(gIntroPalette_Lightning); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1F0, 0x20); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1E1, 0x1E); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1D2, 0x1C); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1C3, 0x1A); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1B4, 0x18); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1A5, 0x16); - CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x196, 0x14); - CreatePart1Animations(0x78, 0x50, 0); - gTasks[taskId].data[0] = CreateWaterDrop(236, -14, 0x200, 1, 0x78, FALSE); - gTasks[taskId].func = Task_IntroFadeIn; -} - -static void Task_IntroFadeIn(u8 taskId) + LoadCompressedSpriteSheet(sSpriteSheet_WaterDropsAndLogo); + LoadCompressedSpriteSheet(sSpriteSheet_FlygonSilhouette); + LoadSpritePalettes(sSpritePalettes_Intro1); + LoadCompressedSpriteSheet(sSpriteSheet_Sparkle); + LoadSpritePalettes(sSpritePalette_Sparkle); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1F0], 0x20); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1E1], 0x1E); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1D2], 0x1C); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1C3], 0x1A); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1B4], 0x18); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x1A5], 0x16); + CpuCopy16(&gPlttBufferUnfaded[0x100], &gPlttBufferUnfaded[0x196], 0x14); + CreateGameFreakLogoSprites(120, 80, 0); + gTasks[taskId].sBigDropSpriteId = CreateWaterDrop(236, -14, 0x200, 1, 0x78, FALSE); + gTasks[taskId].func = Task_Scene1_FadeIn; +} + +static void Task_Scene1_FadeIn(u8 taskId) { BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); SetVBlankCallback(VBlankCB_Intro); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON); - gTasks[taskId].func = Task_IntroWaterDrops; + gTasks[taskId].func = Task_Scene1_WaterDrops; gIntroFrameCounter = 0; m4aSongNumStart(MUS_INTRO); ResetSerial(); } -static void Task_IntroWaterDrops(u8 taskId) +// Task data for Task_Scene1_PanUp +#define tBg2PosHi data[1] +#define tBg2PosLo data[2] +#define tBg1PosHi data[3] +#define tBg1PosLo data[4] +#define tBg3PosHi data[5] +#define tBg3PosLo data[6] + +static void Task_Scene1_WaterDrops(u8 taskId) { - //start moving rock - if (gIntroFrameCounter == 76) - gSprites[gTasks[taskId].data[0]].data[0] = 1; + if (gIntroFrameCounter == TIMER_BIG_DROP_START) + gSprites[gTasks[taskId].sBigDropSpriteId].sState = 1; - if (gIntroFrameCounter == 128) - CreateTask(Task_IntroWaterDrops_1, 0); + if (gIntroFrameCounter == TIMER_LOGO_APPEAR) + CreateTask(Task_BlendLogoIn, 0); - //drop rock - if (gIntroFrameCounter == 251) - gSprites[gTasks[taskId].data[0]].data[0] = 2; + if (gIntroFrameCounter == TIMER_BIG_DROP_FALLS) + gSprites[gTasks[taskId].sBigDropSpriteId].sState = 2; - if (gIntroFrameCounter == 256) - CreateTask(Task_IntroWaterDrops_2, 0); + if (gIntroFrameCounter == TIMER_LOGO_BLEND_OUT) + CreateTask(Task_BlendLogoOut, 0); - if (gIntroFrameCounter == 368) + if (gIntroFrameCounter == TIMER_SMALL_DROP_1) CreateWaterDrop(48, 0, 0x400, 5, 0x70, TRUE); - if (gIntroFrameCounter == 384) + if (gIntroFrameCounter == TIMER_SMALL_DROP_2) CreateWaterDrop(200, 60, 0x400, 9, 0x80, TRUE); - if (gIntroFrameCounter == 560) - CreateTask(Task_IntroWaterDrops_3, 0); + if (gIntroFrameCounter == TIMER_SPARKLES) + CreateTask(Task_CreateSparkles, 0); - if (gIntroFrameCounter > 560) + if (gIntroFrameCounter > TIMER_SPARKLES) { - gTasks[taskId].data[1] = 0x50; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[3] = 0x18; - gTasks[taskId].data[4] = 0; - gTasks[taskId].data[5] = 0x28; - gTasks[taskId].data[6] = 0; - gTasks[taskId].func = Task_IntroScrollDownAndShowFlygon; + gTasks[taskId].tBg2PosHi = 80; + gTasks[taskId].tBg2PosLo = 0; + gTasks[taskId].tBg1PosHi = 24; + gTasks[taskId].tBg1PosLo = 0; + gTasks[taskId].tBg3PosHi = 40; + gTasks[taskId].tBg3PosLo = 0; + gTasks[taskId].func = Task_Scene1_PanUp; } } -static void Task_IntroWaterDrops_3(u8 taskId) +#define tDelay data[1] +#define tTimer data[2] +#define tTimerSteps data[3] +#define tNumSparkles data[4] + +static void Task_CreateSparkles(u8 taskId) { s16 *data = gTasks[taskId].data; - if (++data[2] & 1) - data[3]++; - switch (data[0]) + if (++tTimer & 1) + tTimerSteps++; + + switch (tState) { case 0: - CreateSprite(&gUnknown_085E4AB8, gUnknown_085E4AD0[data[4]][0], gUnknown_085E4AD0[data[4]][1] + data[3], 0); - data[0]++; - data[1] = 0xC; - data[4]++; + CreateSprite(&sSpriteTemplate_Sparkle, sSparkleCoords[tNumSparkles][0], sSparkleCoords[tNumSparkles][1] + tTimerSteps, 0); + tState++; + tDelay = 12; + tNumSparkles++; break; case 1: - if (!--data[1]) - data[0] = 0; + if (--tDelay == 0) + tState = 0; break; } - if (data[3] > 0x3C) + if (tTimerSteps > 60) DestroyTask(taskId); } -static void sub_816D338(struct Sprite *sprite) +#undef tDelay +#undef tTimer +#undef tTimerSteps +#undef tNumSparkles + +#define sTimer data[0] +static void SpriteCB_Sparkle(struct Sprite *sprite) { - if (++sprite->data[0] == 0xC) + if (++sprite->sTimer == 12) DestroySprite(sprite); } +#undef sTimer -static void Task_IntroScrollDownAndShowFlygon(u8 taskId) +static void Task_Scene1_PanUp(u8 taskId) { - if (gIntroFrameCounter < 904) + if (gIntroFrameCounter < TIMER_END_PAN_UP) { - s32 r2; - - //slide backgrounds downward - r2 = (gTasks[taskId].data[1] << 16) + (u16)gTasks[taskId].data[2]; - r2 -= 0x6000; - gTasks[taskId].data[1] = r2 >> 16; - gTasks[taskId].data[2] = r2; - SetGpuReg(REG_OFFSET_BG2VOFS, gTasks[taskId].data[1]); - r2 = (gTasks[taskId].data[3] << 16) + (u16)gTasks[taskId].data[4]; - r2 -= 0x8000; - gTasks[taskId].data[3] = r2 >> 16; - gTasks[taskId].data[4] = r2; - SetGpuReg(REG_OFFSET_BG1VOFS, gTasks[taskId].data[3]); - r2 = (gTasks[taskId].data[5] << 16) + (u16)gTasks[taskId].data[6]; - r2 -= 0xC000; - gTasks[taskId].data[5] = r2 >> 16; - gTasks[taskId].data[6] = r2; - SetGpuReg(REG_OFFSET_BG0VOFS, gTasks[taskId].data[5]); - - //show Flygon sprite - if (gIntroFrameCounter == 832) - { - u8 spriteId = CreateSprite(&gUnknown_085E4FC4, 120, 160, 10); + s32 offset; + + // Slide bg 2 downward + offset = (gTasks[taskId].tBg2PosHi << 16) + (u16)gTasks[taskId].tBg2PosLo; + offset -= 0x6000; + gTasks[taskId].tBg2PosHi = offset >> 16; + gTasks[taskId].tBg2PosLo = offset; + SetGpuReg(REG_OFFSET_BG2VOFS, gTasks[taskId].tBg2PosHi); + + // Slide bg 1 downward + offset = (gTasks[taskId].tBg1PosHi << 16) + (u16)gTasks[taskId].tBg1PosLo; + offset -= 0x8000; + gTasks[taskId].tBg1PosHi = offset >> 16; + gTasks[taskId].tBg1PosLo = offset; + SetGpuReg(REG_OFFSET_BG1VOFS, gTasks[taskId].tBg1PosHi); + + // Slide bg 3 downward + offset = (gTasks[taskId].tBg3PosHi << 16) + (u16)gTasks[taskId].tBg3PosLo; + offset -= 0xC000; + gTasks[taskId].tBg3PosHi = offset >> 16; + gTasks[taskId].tBg3PosLo = offset; + SetGpuReg(REG_OFFSET_BG0VOFS, gTasks[taskId].tBg3PosHi); + + if (gIntroFrameCounter == TIMER_FLYGON_SILHOUETTE_APPEAR) + { + // Show Flygon silhouette + u8 spriteId = CreateSprite(&sSpriteTemplate_FlygonSilhouette, 120, DISPLAY_HEIGHT, 10); gSprites[spriteId].invisible = TRUE; } } else { - //fade to white - if (gIntroFrameCounter > 1007) + if (gIntroFrameCounter > TIMER_END_SCENE_1) { + // Fade to white BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITEALPHA); - gTasks[taskId].func = Task_IntroWaitToSetupPart2; + gTasks[taskId].func = Task_Scene1_End; } } } -static void Task_IntroWaitToSetupPart2(u8 taskId) +static void Task_Scene1_End(u8 taskId) { - if (gIntroFrameCounter > 1026) - gTasks[taskId].func = Task_IntroLoadPart2Graphics; + if (gIntroFrameCounter > TIMER_START_SCENE_2) + gTasks[taskId].func = Task_Scene2_Load; } -static void Task_IntroLoadPart2Graphics(u8 taskId) +static void Task_Scene2_Load(u8 taskId) { - intro_reset_and_hide_bgs(); + IntroResetGpuRegs(); SetVBlankCallback(NULL); ResetSpriteData(); FreeAllSpritePalettes(); - gUnknown_0203BD24 = 0; - gUnknown_0203BD26 = 0; - gIntroGraphicsFlygonYOffset = 0; - load_intro_part2_graphics(1); - gTasks[taskId].func = Task_IntroStartBikeRide; + gIntroCredits_MovingSceneryVBase = 0; + gIntroCredits_MovingSceneryVOffset = 0; + sFlygonYOffset = 0; + LoadIntroPart2Graphics(1); + gTasks[taskId].func = Task_Scene2_CreateSprites; } -static void Task_IntroStartBikeRide(u8 taskId) +#define tBgAnimTaskId data[0] +#define tPlayerSpriteId data[1] +#define tFlygonSpriteId data[2] +#define tFlygonTimer data[3] + +static void Task_Scene2_CreateSprites(u8 taskId) { u8 spriteId; - if (gIntroCharacterGender == 0) - LoadCompressedSpriteSheet(gIntro2BrendanSpriteSheet); + // Load sprite sheets + if (sIntroCharacterGender == MALE) + LoadCompressedSpriteSheet(gSpriteSheet_IntroBrendan); else - LoadCompressedSpriteSheet(gIntro2MaySpriteSheet); + LoadCompressedSpriteSheet(gSpriteSheet_IntroMay); - LoadCompressedSpriteSheet(gIntro2BicycleSpriteSheet); - LoadCompressedSpriteSheet(gIntro2FlygonSpriteSheet); + LoadCompressedSpriteSheet(gSpriteSheet_IntroBicycle); + LoadCompressedSpriteSheet(gSpriteSheet_IntroFlygon); - for (spriteId = 0; spriteId < 3; spriteId++) - { - LoadCompressedSpriteSheet(&gIntroPokemonRunningSpriteSheet[spriteId]); - } + // Load sprite palettes + for (spriteId = 0; spriteId < ARRAY_COUNT(sSpriteSheet_RunningPokemon) - 1; spriteId++) + LoadCompressedSpriteSheet(&sSpriteSheet_RunningPokemon[spriteId]); - LoadSpritePalettes(gIntroBikeAndFlygonPalette); - LoadSpritePalettes(gIntroPokemonRunningPalette); - CreateSprite(&gUnknown_085E4BDC, 0x110, 0x80, 0); - CreateSprite(&gUnknown_085E4BA4, 0x120, 0x6E, 1); + LoadSpritePalettes(gSpritePalettes_IntroPlayerFlygon); + LoadSpritePalettes(sSpritePalettes_RunningPokemon); - if (gIntroCharacterGender == 0) - spriteId = intro_create_brendan_sprite(0x110, 100); + // Create Pokémon and player sprites + CreateSprite(&sSpriteTemplate_Manectric, DISPLAY_WIDTH + 32, 128, 0); + CreateSprite(&sSpriteTemplate_Torchic, DISPLAY_WIDTH + 48, 110, 1); + + if (sIntroCharacterGender == MALE) + spriteId = CreateIntroBrendanSprite(DISPLAY_WIDTH + 32, 100); else - spriteId = intro_create_may_sprite(0x110, 100); - - gSprites[spriteId].callback = SpriteCB_IntroGraphicsBicycle; - gSprites[spriteId].anims = gIntroBicycleAnimationCommands; - gTasks[taskId].data[1] = spriteId; - CreateSprite(&gUnknown_085E4B40, 0x110, 0x50, 0x4); - spriteId = intro_create_flygon_sprite(-0x40, 0x3C); - gSprites[spriteId].callback = SpriteCB_IntroGraphicsFlygon; - gTasks[taskId].data[2] = spriteId; + spriteId = CreateIntroMaySprite(DISPLAY_WIDTH + 32, 100); + + gSprites[spriteId].callback = SpriteCB_PlayerOnBicycle; + gSprites[spriteId].anims = sAnims_PlayerBicycle; + gTasks[taskId].tPlayerSpriteId = spriteId; + CreateSprite(&sSpriteTemplate_Volbeat, DISPLAY_WIDTH + 32, 80, 4); + spriteId = CreateIntroFlygonSprite(-64, 60); + gSprites[spriteId].callback = SpriteCB_Flygon; + gTasks[taskId].tFlygonSpriteId = spriteId; + + // Fade in and start bike ride BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITEALPHA); SetVBlankCallback(VBlankCB_Intro); - gTasks[taskId].data[0] = CreateBicycleAnimationTask(1, 0x4000, 0x400, 0x10); - sub_817B150(1); - gTasks[taskId].func = Task_IntroHandleBikeAndFlygonMovement; + gTasks[taskId].tBgAnimTaskId = CreateBicycleBgAnimationTask(1, 0x4000, 0x400, 0x10); + SetIntroPart2BgCnt(1); + gTasks[taskId].func = Task_Scene2_BikeRide; } -static void Task_IntroHandleBikeAndFlygonMovement(u8 taskId) +static void Task_Scene2_BikeRide(u8 taskId) { u16 offset; - if (gIntroFrameCounter == 1856) + if (gIntroFrameCounter == TIMER_TORCHIC_EXIT) { - gUnknown_0203BD28 = 2; - // Destroys the CreateBicycleAnimationTask created earlier. - DestroyTask(gTasks[taskId].data[0]); + // Stop the moving scenery/backgrounds, for when the camera fixes on Torchic + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_FROZEN; + DestroyTask(gTasks[taskId].tBgAnimTaskId); } - if (gIntroFrameCounter > 1946) + + if (gIntroFrameCounter > TIMER_END_SCENE_2) { + // Fade out to next scene BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_WHITEALPHA); - gTasks[taskId].func = Task_IntroWaitToSetupPart3; + gTasks[taskId].func = Task_Scene2_End; } - if (gIntroFrameCounter == 1109) - gSprites[gTasks[taskId].data[1]].data[0] = 1; - if (gIntroFrameCounter == 1214) - gSprites[gTasks[taskId].data[1]].data[0] = 0; - if (gIntroFrameCounter == 1394) - gSprites[gTasks[taskId].data[2]].data[0] = 1; - if (gIntroFrameCounter == 1398) - gSprites[gTasks[taskId].data[1]].data[0] = 2; - if (gIntroFrameCounter == 1576) - gSprites[gTasks[taskId].data[1]].data[0] = 3; - if (gIntroFrameCounter == 1727) - gSprites[gTasks[taskId].data[1]].data[0] = 4; - - offset = Sin(gTasks[taskId].data[3] >> 2 & 0x7F, 48); - gIntroGraphicsFlygonYOffset = offset; - if (gTasks[taskId].data[3] < 512) - gTasks[taskId].data[3]++; - sub_817B540(0); -} -static void Task_IntroWaitToSetupPart3(u8 taskId) -{ - if (gIntroFrameCounter > 2068) - gTasks[taskId].func = Task_IntroLoadPart3Graphics; -} - -static void sub_816D81C(struct Sprite *sprite) -{ - sprite->data[3] += 4; - switch (sprite->data[0]) + // Check for updates to player/flygon sprites + // These states are for SpriteCB_PlayerOnBicycle and SpriteCB_Flygon respectively + if (gIntroFrameCounter == TIMER_PLAYER_DRIFT_BACK) + gSprites[gTasks[taskId].tPlayerSpriteId].sState = 1; + if (gIntroFrameCounter == TIMER_PLAYER_MOVE_FORWARD) + gSprites[gTasks[taskId].tPlayerSpriteId].sState = 0; + if (gIntroFrameCounter == TIMER_FLYGON_ENTER) + gSprites[gTasks[taskId].tFlygonSpriteId].sState = 1; + if (gIntroFrameCounter == TIMER_PLAYER_MOVE_BACKWARD) + gSprites[gTasks[taskId].tPlayerSpriteId].sState = 2; + if (gIntroFrameCounter == TIMER_PLAYER_HOLD_POSITION) + gSprites[gTasks[taskId].tPlayerSpriteId].sState = 3; + if (gIntroFrameCounter == TIMER_PLAYER_EXIT) + gSprites[gTasks[taskId].tPlayerSpriteId].sState = 4; + + // Handle flygon's y movement + offset = Sin(gTasks[taskId].tFlygonTimer >> 2 & 0x7F, 48); + sFlygonYOffset = offset; + if (gTasks[taskId].tFlygonTimer < 512) + gTasks[taskId].tFlygonTimer++; + + // Alternate colors of the trees + CycleSceneryPalette(0); +} + +static void Task_Scene2_End(u8 taskId) +{ + if (gIntroFrameCounter > TIMER_START_SCENE_3) + gTasks[taskId].func = Task_Scene3_Load; +} + +#define sStateDelay data[1] +#define sNextState data[2] +#define sCosYIdx data[3] +#define sSinXIdx data[4] +#define sSinYIdx data[5] +#define sFig8Loops data[6] + +enum { + VOLBEAT_WAIT_ENTER, + VOLBEAT_ENTER, + VOLBEAT_ZIP_BACKWARD, + VOLBEAT_ZIP_DOWN, + VOLBEAT_ZIP_FORWARD, + VOLBEAT_INIT_FIGURE_8, + VOLBEAT_FIGURE_8, + VOLBEAT_EXIT, + VOLBEAT_WAIT_STATE +}; + +static void SpriteCB_Volbeat(struct Sprite *sprite) +{ + sprite->sCosYIdx += 4; + switch (sprite->sState) { - case 0: - if (++sprite->data[1] < 180) + case VOLBEAT_WAIT_ENTER: + if (++sprite->sStateDelay < 180) break; - ++sprite->data[0]; - case 1: + sprite->sState++; + // fallthrough + case VOLBEAT_ENTER: sprite->pos1.x -= 4; - if (sprite->pos1.x == 0x3C) + if (sprite->pos1.x == 60) { - sprite->data[0] = 8; - sprite->data[1] = 20; - sprite->data[2] = 2; + sprite->sState = VOLBEAT_WAIT_STATE; + sprite->sStateDelay = 20; + sprite->sNextState = VOLBEAT_ZIP_BACKWARD; } break; - case 2: + case VOLBEAT_ZIP_BACKWARD: sprite->pos1.x += 8; sprite->pos1.y -= 2; - if (sprite->pos1.x == 0x7C) + if (sprite->pos1.x == 124) { - sprite->data[0] = 8; - sprite->data[1] = 20; - sprite->data[2] = 3; + sprite->sState = VOLBEAT_WAIT_STATE; + sprite->sStateDelay = 20; + sprite->sNextState = VOLBEAT_ZIP_DOWN; } break; - case 3: + case VOLBEAT_ZIP_DOWN: sprite->pos1.y += 4; - if (sprite->pos1.y == 0x50) + if (sprite->pos1.y == 80) { - sprite->data[0] = 8; - sprite->data[1] = 10; - sprite->data[2] = 4; + sprite->sState = VOLBEAT_WAIT_STATE; + sprite->sStateDelay = 10; + sprite->sNextState = VOLBEAT_ZIP_FORWARD; } break; - case 4: + case VOLBEAT_ZIP_FORWARD: sprite->pos1.x -= 8; sprite->pos1.y -= 2; - if (sprite->pos1.x == 0x3C) - { - sprite->data[0] = 8; - sprite->data[1] = 10; - sprite->data[2] = 5; - } - break; - case 5: - sprite->pos1.x += 0x3C; - sprite->data[4] = 0xC0; - sprite->data[5] = 0x80; - sprite->data[6] = 0x3; - sprite->data[0]++; - case 6: - sprite->pos2.x = Sin((u8)sprite->data[4], 0x3C); - sprite->pos2.y = Sin((u8)sprite->data[5], 0x14); - sprite->data[4] += 2; - sprite->data[5] += 4; - if ((sprite->data[4] & 0xFF) == 0x40) + if (sprite->pos1.x == 60) + { + sprite->sState = VOLBEAT_WAIT_STATE; + sprite->sStateDelay = 10; + sprite->sNextState = VOLBEAT_INIT_FIGURE_8; + } + break; + case VOLBEAT_INIT_FIGURE_8: + sprite->pos1.x += 60; + sprite->sSinXIdx = 0xC0; + sprite->sSinYIdx = 0x80; + sprite->sFig8Loops = 3; + sprite->sState++; + // fallthrough + case VOLBEAT_FIGURE_8: + sprite->pos2.x = Sin((u8)sprite->sSinXIdx, 0x3C); + sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14); + sprite->sSinXIdx += 2; + sprite->sSinYIdx += 4; + if ((sprite->sSinXIdx & 0xFF) == 64) { sprite->hFlip = FALSE; - if (!--sprite->data[6]) + if (--sprite->sFig8Loops == 0) { sprite->pos1.x += sprite->pos2.x; sprite->pos2.x = 0; - sprite->data[0]++; + sprite->sState++; } } break; - case 7: + case VOLBEAT_EXIT: sprite->pos1.x -= 2; - sprite->pos2.y = Sin((u8)sprite->data[5], 0x14); - sprite->data[5] += 4; + sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14); + sprite->sSinYIdx += 4; if (sprite->pos1.x < -16) DestroySprite(sprite); break; - case 8: - sprite->pos2.y = Cos((u8)sprite->data[3], 2); - if (!--sprite->data[1]) - sprite->data[0] = sprite->data[2]; + case VOLBEAT_WAIT_STATE: + // Wait for state progression, fly idly until then + sprite->pos2.y = Cos((u8)sprite->sCosYIdx, 2); + if (!--sprite->sStateDelay) + sprite->sState = sprite->sNextState; break; } } -static void sub_816D9C0(struct Sprite *sprite) +#undef sStateDelay +#undef sNextState +#undef sCosYIdx +#undef sSinXIdx +#undef sSinYIdx +#undef sFig8Loops + +#define sMoveTimer data[1] +#define sDelay data[2] + +static void SpriteCB_Torchic(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: - if (gIntroFrameCounter == 1224) + if (gIntroFrameCounter == TIMER_TORCHIC_ENTER) { - StartSpriteAnim(sprite, 1); - sprite->data[0]++; + StartSpriteAnim(sprite, TORCHIC_ANIM_RUN); + sprite->sState++; } break; case 1: - if (gIntroFrameCounter == 1576) + if (gIntroFrameCounter == TIMER_PLAYER_HOLD_POSITION) { - StartSpriteAnim(sprite, 0); - sprite->data[0]++; + StartSpriteAnim(sprite, TORCHIC_ANIM_WALK); + sprite->sState++; } else { - sprite->data[1] += 0x40; - if (sprite->data[1] & 0xFF00) + sprite->sMoveTimer += 64; + if (sprite->sMoveTimer & 0xFF00) { sprite->pos1.x--; - sprite->data[1] &= 0xFF; + sprite->sMoveTimer &= 0xFF; } } break; case 2: - if (gIntroFrameCounter != 1735) + if (gIntroFrameCounter != TIMER_TORCHIC_SPEED_UP) { - sprite->data[1] += 0x20; - if (sprite->data[1] & 0xFF00) + sprite->sMoveTimer += 32; + if (sprite->sMoveTimer & 0xFF00) { sprite->pos1.x++; - sprite->data[1] &= 0xFF; + sprite->sMoveTimer &= 0xFF; } } else { - StartSpriteAnim(sprite, 1); - sprite->data[0]++; - sprite->data[2] = 0x50; + StartSpriteAnim(sprite, TORCHIC_ANIM_RUN); + sprite->sState++; + sprite->sDelay = 80; } break; case 3: - if (--sprite->data[2]) + if (--sprite->sDelay) { - sprite->data[1] += 0x40; - if (sprite->data[1] & 0xFF00) + sprite->sMoveTimer += 64; + if (sprite->sMoveTimer & 0xFF00) { sprite->pos1.x--; - sprite->data[1] &= 0xFF; + sprite->sMoveTimer &= 0xFF; } } else { - StartSpriteAnim(sprite, 2); - sprite->data[0]++; + StartSpriteAnim(sprite, TORCHIC_ANIM_TRIP); + sprite->sState++; } break; case 4: @@ -1489,110 +1642,131 @@ static void sub_816D9C0(struct Sprite *sprite) if (sprite->pos1.x > 336) { - StartSpriteAnim(sprite, 1); - sprite->data[0]++; + StartSpriteAnim(sprite, TORCHIC_ANIM_RUN); + sprite->sState++; } break; case 5: - if (gIntroFrameCounter > 1855) + if (gIntroFrameCounter >= TIMER_TORCHIC_EXIT) sprite->pos1.x -= 2; break; } } -static void sub_816DAE8(struct Sprite *sprite) +#undef sMoveTimer +#undef sDelay + +#define sSinIdx data[1] +#define sCosIdx data[2] + +static void SpriteCB_Manectric(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: - if (gIntroFrameCounter == 1088) - sprite->data[0]++; + if (gIntroFrameCounter == TIMER_MANECTRIC_ENTER) + sprite->sState++; break; case 1: sprite->pos1.x -= 2; - if (gIntroFrameCounter != 1168) + if (gIntroFrameCounter != TIMER_MANECTRIC_RUN_CIRCULAR) break; + + // Initialize circular pattern running sprite->pos1.y -= 12; - sprite->data[1] = 0x80; - sprite->data[2] = 0; - sprite->data[0]++; + sprite->sSinIdx = 0x80; + sprite->sCosIdx = 0; + sprite->sState++; + // fallthrough case 2: - if (sprite->pos1.x + sprite->pos2.x <= -0x20) + if (sprite->pos1.x + sprite->pos2.x <= -32) { + // Manectric is offscreen now, destroy it DestroySprite(sprite); } else { - if ((sprite->data[1] & 0xFF) < 0x40) + // Run in circular pattern + if ((sprite->sSinIdx & 0xFF) < 64) { - sprite->pos2.x = Sin((u8)sprite->data[1], 0x10); + sprite->pos2.x = Sin((u8)sprite->sSinIdx, 16); } else { - if ((sprite->data[1] & 0xFF) == 0x40) - sprite->pos1.x -= 0x30; - sprite->pos2.x = Sin((u8)sprite->data[1], 0x40); + if ((sprite->sSinIdx & 0xFF) == 64) + sprite->pos1.x -= 48; + sprite->pos2.x = Sin((u8)sprite->sSinIdx, 64); } - sprite->data[1]++; - sprite->pos2.y = Cos((u8)sprite->data[2], 0xC); - sprite->data[2]++; + sprite->sSinIdx++; + sprite->pos2.y = Cos((u8)sprite->sCosIdx, 12); + sprite->sCosIdx++; } break; } } -static void Task_IntroLoadPart3Graphics(u8 taskId) +#undef sSinIdx +#undef sCosIdx + +#define tAlpha data[0] +#define tZoomDiv data[1] +#define tZoomDivSpeed data[2] + +static void Task_Scene3_Load(u8 taskId) { - intro_reset_and_hide_bgs(); - LZ77UnCompVram(gIntro3Pokeball_Gfx, (void *)VRAM); - LZ77UnCompVram(gIntro3Pokeball_Tilemap, (void *)(BG_CHAR_ADDR(1))); - LoadPalette(gIntro3PokeballPal, 0, 0x200); - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = 0; + IntroResetGpuRegs(); + LZ77UnCompVram(sIntro3Pokeball_Gfx, (void *)VRAM); + LZ77UnCompVram(sIntro3Pokeball_Tilemap, (void *)(BG_CHAR_ADDR(1))); + LoadPalette(sIntro3Pokeball_Pal, 0, sizeof(sIntro3Pokeball_Pal)); + gTasks[taskId].tAlpha = 0; + gTasks[taskId].tZoomDiv = 0; + gTasks[taskId].tZoomDivSpeed = 0; gTasks[taskId].data[3] = 0; PanFadeAndZoomScreen(0x78, 0x50, 0, 0); ResetSpriteData(); FreeAllSpritePalettes(); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITEALPHA); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITEALPHA); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(8) | BGCNT_256COLOR | BGCNT_AFF256x256); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG2_ON | DISPCNT_OBJ_ON); - gTasks[taskId].func = Task_IntroSpinAndZoomPokeball; + gTasks[taskId].func = Task_Scene3_SpinPokeball; gIntroFrameCounter = 0; m4aSongNumStart(MUS_INTRO_BATTLE); } - -static void Task_IntroSpinAndZoomPokeball(u8 taskId) +static void Task_Scene3_SpinPokeball(u8 taskId) { - gTasks[taskId].data[0] += 0x400; + gTasks[taskId].tAlpha += 0x400; - if (gTasks[taskId].data[1] <= 0x6BF) + if (gTasks[taskId].tZoomDiv <= 0x6BF) { - gTasks[taskId].data[1] += gTasks[taskId].data[2]; - gTasks[taskId].data[2] += 2; + gTasks[taskId].tZoomDiv += gTasks[taskId].tZoomDivSpeed; + gTasks[taskId].tZoomDivSpeed += 2; } else { - gTasks[taskId].func = Task_IntroWaitToSetupPart3LegendsFight; + gTasks[taskId].func = Task_Scene3_WaitGroudon; } - PanFadeAndZoomScreen(0x78, 0x50, 0x10000 / gTasks[taskId].data[1], gTasks[taskId].data[0]); + PanFadeAndZoomScreen(0x78, 0x50, 0x10000 / gTasks[taskId].tZoomDiv, gTasks[taskId].tAlpha); - if (gIntroFrameCounter == 28) - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_WHITEALPHA); + if (gIntroFrameCounter == TIMER_POKEBALL_FADE) + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITEALPHA); } -static void Task_IntroWaitToSetupPart3LegendsFight(u8 taskId) +#undef tAlpha +#undef tZoomDiv +#undef tZoomDivSpeed + +static void Task_Scene3_WaitGroudon(u8 taskId) { - if (gIntroFrameCounter > 43) - gTasks[taskId].func = Task_IntroLoadGroudonScene; + if (gIntroFrameCounter > TIMER_START_LEGENDARIES) + gTasks[taskId].func = Task_Scene3_LoadGroudon; } -static void Task_IntroLoadGroudonScene(u8 taskId) +static void Task_Scene3_LoadGroudon(u8 taskId) { if (!gPaletteFade.active) { - intro_reset_and_hide_bgs(); + IntroResetGpuRegs(); ResetSpriteData(); FreeAllSpritePalettes(); gReservedSpritePaletteCount = 8; @@ -1603,15 +1777,20 @@ static void Task_IntroLoadGroudonScene(u8 taskId) LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]); LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]); CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal)); - gTasks[taskId].func = Task_IntroLoadPart3Graphics1; + gTasks[taskId].func = Task_Scene3_InitGroudonBg; } } -static void Task_IntroLoadPart3Graphics1(u8 taskId) +#define tWinPos data[0] +#define tScreenX data[1] +#define tScreenY data[2] +#define tZoom data[3] + +static void Task_Scene3_InitGroudonBg(u8 taskId) { - SetGpuReg(REG_OFFSET_WIN0H, 0xF0); - SetGpuReg(REG_OFFSET_WIN0V, 0xA0); - SetGpuReg(REG_OFFSET_WININ, 0x3F); + SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); + SetGpuReg(REG_OFFSET_WIN0V, DISPLAY_HEIGHT); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL); SetGpuReg(REG_OFFSET_WINOUT, 0); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) @@ -1630,185 +1809,220 @@ static void Task_IntroLoadPart3Graphics1(u8 taskId) | DISPCNT_BG2_ON | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITEALPHA); - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 0xFFA0; - gTasks[taskId].data[2] = 0xFF51; - gTasks[taskId].data[3] = 0x100; - PanFadeAndZoomScreen(0xFFA0, 0xFF51, 0x100, 0); - gTasks[taskId].func = Task_IntroLoadPart3Graphics2; + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITEALPHA); + gTasks[taskId].tWinPos = 0; + gTasks[taskId].tScreenX = 0xFFA0; + gTasks[taskId].tScreenY = 0xFF51; + gTasks[taskId].tZoom = 0x100; + PanFadeAndZoomScreen(gTasks[taskId].tScreenX, gTasks[taskId].tScreenY, gTasks[taskId].tZoom, 0); + gTasks[taskId].func = Task_Scene3_NarrowWindow; } -static void Task_IntroLoadPart3Graphics2(u8 taskId) +// Before the Groudon scene starts, the black top/bottom edges of the screen +// come inward for a more 'cinematic' look +#define NARROW_HEIGHT 32 +static void Task_Scene3_NarrowWindow(u8 taskId) { - if (gTasks[taskId].data[0] != 32) + if (gTasks[taskId].tWinPos != NARROW_HEIGHT) { - gTasks[taskId].data[0] += 4; - SetGpuReg(REG_OFFSET_WIN0V, (gTasks[taskId].data[0] * 256) - (gTasks[taskId].data[0] - 160)); + gTasks[taskId].tWinPos += 4; + SetGpuReg(REG_OFFSET_WIN0V, (gTasks[taskId].tWinPos * 256) - (gTasks[taskId].tWinPos - DISPLAY_HEIGHT)); } else { - SetGpuReg(REG_OFFSET_WIN0V, 0x2080); - gTasks[taskId].func = Task_IntroLoadPart3Graphics3; + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(NARROW_HEIGHT, DISPLAY_HEIGHT - NARROW_HEIGHT)); + gTasks[taskId].func = Task_Scene3_EndNarrowWindow; } } +#undef tWinPos +#undef tScreenX +#undef tScreenY +#undef tZoom -static void Task_IntroLoadPart3Graphics3(u8 taskId) +static void Task_Scene3_EndNarrowWindow(u8 taskId) { - gTasks[taskId].func = Task_IntroLoadPart3Graphics4; + gTasks[taskId].func = Task_Scene3_StartGroudon; } -static void Task_IntroLoadPart3Graphics4(u8 taskId) +static void Task_Scene3_StartGroudon(u8 taskId) { - gTasks[taskId].data[0] = 0; - gTasks[taskId].func = Task_IntroGroudonScene; - ScanlineEffect_InitWave(0, 0xA0, 0x4, 4, 1, 4, 0); + gTasks[taskId].tState = 0; + gTasks[taskId].func = Task_Scene3_Groudon; + ScanlineEffect_InitWave(0, 160, 4, 4, 1, 4, 0); } -static void Task_IntroGroudonScene(u8 taskId) +#define tScreenX data[1] +#define tScreenY data[2] +#define tZoom data[3] +#define tYShake data[4] +#define tTimer data[5] +#define tDelay data[6] +#define tTrigIdx data[6] // Re-used +#define tPalIdx data[7] + +static void Task_Scene3_Groudon(u8 taskId) { s16 *data = gTasks[taskId].data; - data[5]++; - if ((u16)(data[0] - 1) < 7 && data[5] % 2 == 0) - data[4] ^= 3; - PanFadeAndZoomScreen(data[1], data[2] + data[4], data[3], 0); - switch (data[0]) + tTimer++; + if ((u16)(tState - 1) < 7 && tTimer % 2 == 0) + tYShake ^= 3; + PanFadeAndZoomScreen(tScreenX, tScreenY + tYShake, tZoom, 0); + switch (tState) { case 0: - data[1] += 0x10; - if (data[1] == 0xA0) + tScreenX += 16; + if (tScreenX == 160) { - data[0]++; - data[6] = 2; - data[7] = 0x1E2; + tState++; + tDelay = 2; + tPalIdx = 0x1E2; CreateGroudonRockSprites(taskId); } break; case 1: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 2; - CpuCopy16(&gIntro3BgPal[data[7]], &gPlttBufferFaded[31], sizeof(u16)); - data[7] += 2; - if (data[7] == 0x1EC) - data[0]++; + tDelay = 2; + CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); + tPalIdx += 2; + if (tPalIdx == 0x1EC) + tState++; } break; case 2: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 2; - data[0]++; + tDelay = 2; + tState++; } break; case 3: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 2; - CpuCopy16(&gIntro3BgPal[data[7]], &gPlttBufferFaded[31], sizeof(u16)); - data[7] -= 2; - if (data[7] == 0x1E0) + tDelay = 2; + CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); + tPalIdx -= 2; + if (tPalIdx == 0x1E0) { - data[6] = 8; - data[0]++; + tDelay = 8; + tState++; } } break; case 4: - if (--data[6] == 0) + if (--tDelay == 0) { - data[1] = -0x60; - data[2] = 0xA9; - data[6] = 3; - data[0]++; + tScreenX = -96; + tScreenY = 169; + tDelay = 3; + tState++; } break; case 5: - if (--data[6] == 0) + if (--tDelay == 0) { - data[1] = 0x50; - data[2] = 0x29; - data[6] = 0x10; + tScreenX = 80; + tScreenY = 41; + tDelay = 16; PlayCryInternal(SPECIES_GROUDON, 0, 100, 10, 0); - data[0]++; + tState++; } break; case 6: - if (--data[6] == 0) + if (--tDelay == 0) { - data[1] = 0x50; - data[2] = 0x28; - data[0]++; + tScreenX = 80; + tScreenY = 40; + tState++; } break; case 7: - data[1] += 4; - data[2] += 4; - data[6] += 0x666; - data[3] = Sin((data[6] & 0xFF00) >> 8, 0x40) + 0x100; - if (data[1] == 0x78) + tScreenX += 4; + tScreenY += 4; + tTrigIdx += 0x666; + tZoom = Sin((tTrigIdx & 0xFF00) >> 8, 64) + 256; + if (tScreenX == 120) { BeginNormalPaletteFade(PALETTES_ALL & ~1, 3, 0, 16, RGB_WHITE); - data[3] = 0x100; - data[4] = 0; - data[0]++; + tZoom = 256; + tYShake = 0; + tState++; } break; case 8: - if (data[3]) - data[3] -= 8; + if (tZoom) + tZoom -= 8; else - data[0]++; + tState++; break; case 9: if (!gPaletteFade.active) { - gTasks[taskId].func = Task_IntroLoadKyogreScene; + gTasks[taskId].func = Task_Scene3_LoadKyogre; gScanlineEffect.state = 3; } break; } } -static void CreateGroudonRockSprites(u8 a0) +#undef tScreenX +#undef tScreenY +#undef tZoom +#undef tYShake +#undef tTimer +#undef tDelay +#undef tTrigIdx +#undef tPalIdx + +#define sRockId data[1] +#define sSpeed data[2] +#define sTimer data[3] +#define sTaskId data[4] + +static void CreateGroudonRockSprites(u8 taskId) { int i; u8 spriteId; - for (i = 0; i < 6; i++) + for (i = 0; i < (int)ARRAY_COUNT(sGroudonRockData); i++) { - spriteId = CreateSprite(gAncientPowerRockSpriteTemplate, gIntroGroudonRockData[i][0], 0xA0, i); - gSprites[spriteId].callback = SpriteCB_IntroGroudonRocks; + spriteId = CreateSprite(gAncientPowerRockSpriteTemplate, sGroudonRockData[i][0], DISPLAY_HEIGHT, i); + gSprites[spriteId].callback = SpriteCB_GroudonRocks; gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].data[1] = i; - gSprites[spriteId].data[4] = a0; - StartSpriteAnim(&gSprites[spriteId], gIntroGroudonRockData[i][1]); + gSprites[spriteId].sRockId = i; + gSprites[spriteId].sTaskId = taskId; + StartSpriteAnim(&gSprites[spriteId], sGroudonRockData[i][1]); } } -static void SpriteCB_IntroGroudonRocks(struct Sprite *sprite) +static void SpriteCB_GroudonRocks(struct Sprite *sprite) { - sprite->data[3]++; - if (sprite->data[3] % 2 == 0) + // Introduce some wobble to the floating + sprite->sTimer++; + if (sprite->sTimer % 2 == 0) sprite->pos2.y ^= 3; - switch(sprite->data[0]) + switch(sprite->sState) { case 0: - sprite->data[2] += gIntroGroudonRockData[sprite->data[1]][2]; - sprite->pos1.y -= (sprite->data[2] & 0xFF00) >> 8; - sprite->data[2] &= 0xFF; - if (gTasks[sprite->data[4]].data[0] > 7) - sprite->data[0]++; + // Rock floats up + sprite->sSpeed += sGroudonRockData[sprite->sRockId][2]; + sprite->pos1.y -= (sprite->sSpeed & 0xFF00) >> 8; + sprite->sSpeed &= 0xFF; + + // Check if Groudon scene is ending + if (gTasks[sprite->sTaskId].tState > 7) + sprite->sState++; break; case 1: - if (sprite->pos1.x < 0x78) + // Scene zooms in, move rock offscreen + if (sprite->pos1.x < DISPLAY_WIDTH / 2) sprite->pos1.x -= 2; else sprite->pos1.x += 2; - if (sprite->pos1.y < 0x50) + if (sprite->pos1.y < DISPLAY_HEIGHT / 2) sprite->pos1.y -= 2; else sprite->pos1.y += 2; @@ -1816,237 +2030,294 @@ static void SpriteCB_IntroGroudonRocks(struct Sprite *sprite) } } -static void Task_IntroLoadKyogreScene(u8 taskId) +#undef sRockId +#undef sSpeed +#undef sTimer +#undef sTaskId + +#define tScreenX data[1] +#define tScreenY data[2] +#define tZoom data[3] +#define tDelay data[6] +#define tTrigIdx data[6] // Re-used +#define tPalIdx data[7] + +static void Task_Scene3_LoadKyogre(u8 taskId) { ResetSpriteData(); LZDecompressVram(gIntro3KyogreGfx, (void *)VRAM); LZDecompressVram(gIntro3KyogreTilemap, (void *)(BG_CHAR_ADDR(3))); LZDecompressVram(gIntro3KyogreBgTilemap, (void *)(BG_SCREEN_ADDR(28))); - LoadCompressedSpriteSheet(gUnknown_085E4C88); - LoadSpritePalette(gUnknown_085E4C98); - BeginNormalPaletteFade(PALETTES_ALL & ~1, 0, 0x10, 0, RGB_WHITEALPHA); - gTasks[taskId].func = Task_IntroKyogreScene; - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 0x150; - gTasks[taskId].data[2] = 0x50; - gTasks[taskId].data[6] = 0x10; - gTasks[taskId].data[3] = 0x100; - PanFadeAndZoomScreen(0x150, 0x50, 0x100, 0); + LoadCompressedSpriteSheet(sSpriteSheet_Bubbles); + LoadSpritePalette(sSpritePalette_Bubbles); + BeginNormalPaletteFade(PALETTES_ALL & ~1, 0, 16, 0, RGB_WHITEALPHA); + gTasks[taskId].func = Task_Scene3_Kyogre; + gTasks[taskId].tState = 0; + gTasks[taskId].tScreenX = 336; + gTasks[taskId].tScreenY = 80; + gTasks[taskId].tDelay = 16; + gTasks[taskId].tZoom = 256; + PanFadeAndZoomScreen(gTasks[taskId].tScreenX, gTasks[taskId].tScreenY, gTasks[taskId].tZoom, 0); ScanlineEffect_InitWave(0, 0xA0, 4, 4, 1, 6, 0); } -static void Task_IntroKyogreScene(u8 taskId) +static void Task_Scene3_Kyogre(u8 taskId) { s16 *data = gTasks[taskId].data; - PanFadeAndZoomScreen(data[1], data[2], data[3], 0); + PanFadeAndZoomScreen(tScreenX, tScreenY, tZoom, 0); - switch (data[0]) + switch (tState) { case 0: - if (--data[6] != 0) + if (--tDelay != 0) break; - data[0]++; + tState++; case 1: - data[6] += 4; - gTasks[taskId].data[1] = 0x158 - Sin(data[6], 0x100); - gTasks[taskId].data[2] = 0x54 - Cos(data[6], 0x40); - if (data[6] == 0x40) + tTrigIdx += 4; + gTasks[taskId].tScreenX = 344 - Sin(tTrigIdx, 0x100); + gTasks[taskId].tScreenY = 84 - Cos(tTrigIdx, 0x40); + if (tTrigIdx == 64) { - data[6] = 0x19; - data[7] = 1; - data[0]++; - CreateKyogreBubbleSprites_0(0); + tDelay = 0x19; + tPalIdx = 1; + tState++; + CreateKyogreBubbleSprites_Body(0); } break; case 2: - if (--data[6] == 0) + if (--tDelay == 0) { - gTasks[taskId].data[1] += 0x100; - gTasks[taskId].data[2] -= 0x102; - data[6] = 8; - data[0]++; - CreateKyogreBubbleSprites_0(0); - CreateKyogreBubbleSprites_1(); + gTasks[taskId].tScreenX += 256; + gTasks[taskId].tScreenY -= 258; + tDelay = 8; + tState++; + CreateKyogreBubbleSprites_Body(0); + CreateKyogreBubbleSprites_Fins(); } break; case 3: - if (--data[6] == 0) + if (--tDelay == 0) { - gTasks[taskId].data[1] -= 0x100; - gTasks[taskId].data[2] += 0x102; - data[6] = 8; - data[0]++; + gTasks[taskId].tScreenX -= 256; + gTasks[taskId].tScreenY += 258; + tDelay = 8; + tState++; } break; case 4: - if (--data[6] == 0) + if (--tDelay == 0) { - gTasks[taskId].data[2] -= 0xFC; - data[6] = 8; - data[0]++; + gTasks[taskId].tScreenY -= 252; + tDelay = 8; + tState++; } break; case 5: - if (--data[6] == 0) + if (--tDelay == 0) { - gTasks[taskId].data[2] += 0xFC; - if (data[7] != 0) + gTasks[taskId].tScreenY += 252; + if (tPalIdx != 0) { - data[6] = 12; - data[7]--; - data[0] = 2; + tDelay = 12; + tPalIdx--; + tState = 2; } else { - data[6] = 1; - data[0]++; + tDelay = 1; + tState++; PlayCryInternal(SPECIES_KYOGRE, 0, 120, 10, 0); } } break; case 6: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 4; - data[7] = 0x1EA; - data[0]++; + tDelay = 4; + tPalIdx = 0x1EA; + tState++; } break; case 7: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 4; - CpuCopy16(&gIntro3BgPal[data[7]], &gPlttBufferFaded[47], sizeof(u16)); - data[7] -= 2; - if (data[7] == 0x1E0) - data[0]++; + tDelay = 4; + CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); + tPalIdx -= 2; + if (tPalIdx == 0x1E0) + tState++; } break; case 8: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 4; - data[7] = 0x1E2; - data[0]++; + tDelay = 4; + tPalIdx = 0x1E2; + tState++; } break; case 9: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 4; - CpuCopy16(&gIntro3BgPal[data[7]], &gPlttBufferFaded[47], sizeof(u16)); - data[7] += 2; - if (data[7] == 0x1EE) + tDelay = 4; + CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); + tPalIdx += 2; + if (tPalIdx == 0x1EE) { - data[6] = 0x10; - data[0]++; + tDelay = 16; + tState++; } } break; case 10: - if (--data[6] == 0) + if (--tDelay == 0) { - data[6] = 0; - data[0]++; - CreateKyogreBubbleSprites_0(taskId); + tTrigIdx = 0; + tState++; + CreateKyogreBubbleSprites_Body(taskId); } break; case 11: - data[6] += 4; - data[3] -= 8; - gTasks[taskId].data[1] = Sin(data[6], 0x3C) + 0x58; - if (data[6] == 0x40) + tTrigIdx += 4; + tZoom -= 8; + gTasks[taskId].tScreenX = Sin(tTrigIdx, 0x3C) + 88; + if (tTrigIdx == 64) { BeginNormalPaletteFade(PALETTES_ALL & ~1, 3, 0, 16, RGB_WHITE); - data[0]++; + tState++; } break; case 12: - data[6] += 4; - data[3] -= 8; - gTasks[taskId].data[1] = Sin(data[6], 0x14) + 0x80; - if (data[6] == 0x80) - data[0]++; + tTrigIdx += 4; + tZoom -= 8; + gTasks[taskId].tScreenX = Sin(tTrigIdx, 0x14) + 128; + if (tTrigIdx == 128) + tState++; break; case 13: if (!gPaletteFade.active) { - gTasks[taskId].func = Task_IntroLoadClouds1; + gTasks[taskId].func = Task_Scene3_LoadClouds1; gScanlineEffect.state = 3; } break; } } -static void CreateKyogreBubbleSprites_0(u8 taskId) +#undef tScreenX +#undef tScreenY +#undef tZoom +#undef tDelay +#undef tTrigIdx +#undef tPalIdx + +#define sSinIdx data[1] +#define sBaseY data[2] +#define sTaskId data[5] +#define sDelay data[6] +#define sUnk data[7] // Never read + +// taskId is used inconsistently for these two functions. +// The sprite callback for the bubbles will always read it, unless delay is 0 to +// start (it never is), but the first function is often passed 0 instead of a +// taskId, and the second function doesn't take/assign a taskId at all. +// The only time an actual taskId is given is when it actually needs the +// result of reading it, to zoom in at the end of the scene. + +// Creates bubbles at positions spread across Kyogre's body +static void CreateKyogreBubbleSprites_Body(u8 taskId) { int i; u8 spriteId; - for (i = 0; i < 6; i++) + for (i = 0; i < NUM_BUBBLES_IN_SET; i++) { - spriteId = CreateSprite(&gUnknown_085E4D14, gIntroKyogreBubbleData[i][0], gIntroKyogreBubbleData[i][1], i); + spriteId = CreateSprite(&sSpriteTemplate_Bubbles, + sKyogreBubbleData[i][0], + sKyogreBubbleData[i][1], + i); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].data[5] = taskId; - gSprites[spriteId].data[6] = gIntroKyogreBubbleData[i][2]; - gSprites[spriteId].data[7] = 0x40; + gSprites[spriteId].sTaskId = taskId; + gSprites[spriteId].sDelay = sKyogreBubbleData[i][2]; + gSprites[spriteId].sUnk = 64; } } -static void CreateKyogreBubbleSprites_1(void) +// Creates bubbles at positions around Kyogre's fins, for when it's moving them +static void CreateKyogreBubbleSprites_Fins(void) { int i; u8 spriteId; - for (i = 0; i < 6; i++) + for (i = 0; i < NUM_BUBBLES_IN_SET; i++) { - spriteId = CreateSprite(&gUnknown_085E4D14, gIntroKyogreBubbleData[i + 6][0], gIntroKyogreBubbleData[i + 6][1], i); + spriteId = CreateSprite(&sSpriteTemplate_Bubbles, + sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][0], + sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][1], + i); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].data[6] = gIntroKyogreBubbleData[i][2]; - gSprites[spriteId].data[7] = 0x40; +#ifdef BUGFIX + gSprites[spriteId].sDelay = sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][2]; +#else + gSprites[spriteId].sDelay = sKyogreBubbleData[i][2]; // Using the wrong set of delays here +#endif + gSprites[spriteId].sUnk = 64; } } -static void SpriteCB_IntroKyogreBubbles(struct Sprite *sprite) +static void SpriteCB_KyogreBubbles(struct Sprite *sprite) { - switch(sprite->data[0]) + switch(sprite->sState) { case 0: - if (sprite->data[6] == 0) + if (sprite->sDelay == 0) { - sprite->data[1] = (sprite->data[1] + 11) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], 4); - sprite->data[2] += 0x30; - sprite->pos2.y = -(sprite->data[2] >> 8); + // Animation has started, float bubbles up + sprite->sSinIdx = (sprite->sSinIdx + 11) & 0xFF; + sprite->pos2.x = Sin(sprite->sSinIdx, 4); + sprite->sBaseY += 48; + sprite->pos2.y = -(sprite->sBaseY >> 8); if (sprite->animEnded) DestroySprite(sprite); } - else if (--sprite->data[6] == 0) + else if (--sprite->sDelay == 0) { + // Start bubble animation after delay has finished StartSpriteAnim(sprite, 0); sprite->invisible = FALSE; } - if (gTasks[sprite->data[5]].data[0] > 11) - sprite->data[0]++; + + // Check if Kyogre scene is ending + // For all but the last bubbles, sTaskId isn't actually set + if (gTasks[sprite->sTaskId].tState > 11) + sprite->sState++; break; case 1: - if (sprite->pos1.x < 120) + // Scene zooms in, move bubbles offscreen + if (sprite->pos1.x < DISPLAY_WIDTH / 2) sprite->pos1.x -= 3; else sprite->pos1.x += 3; - if (sprite->pos1.y < 80) + if (sprite->pos1.y < DISPLAY_HEIGHT / 2) sprite->pos1.y -= 3; else sprite->pos1.y += 3; - if ((u16)(sprite->pos1.y - 20) > 140) + + if ((u16)(sprite->pos1.y - 20) > DISPLAY_HEIGHT - 20) DestroySprite(sprite); break; } } -static void Task_IntroLoadClouds1(u8 taskId) +#undef sSinIdx +#undef sBaseY +#undef sTaskId +#undef sDelay +#undef sUnk + +static void Task_Scene3_LoadClouds1(u8 taskId) { SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 @@ -2085,56 +2356,69 @@ static void Task_IntroLoadClouds1(u8 taskId) LZDecompressVram(gIntro3CloudsGfx, (void *)VRAM); LZDecompressVram(gIntro3CloudsGfx, (void *)(BG_CHAR_ADDR(1))); LZDecompressVram(gIntro3Clouds3Tilemap, (void *)(BG_SCREEN_ADDR(28))); - gTasks[taskId].func = Task_IntroLoadClouds2; + gTasks[taskId].func = Task_Scene3_LoadClouds2; } -static void Task_IntroLoadClouds2(u8 taskId) +static void Task_Scene3_LoadClouds2(u8 taskId) { LZDecompressVram(gIntro3Clouds1Tilemap, (void *)(BG_CHAR_ADDR(3))); LZDecompressVram(gIntro3Clouds2Tilemap, (void *)(BG_SCREEN_ADDR(26))); - gTasks[taskId].func = Task_IntroLoadClouds3; + gTasks[taskId].func = Task_Scene3_InitClouds; } -static void Task_IntroLoadClouds3(u8 taskId) +#define tCloudPos data[6] + +static void Task_Scene3_InitClouds(u8 taskId) { SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); - gTasks[taskId].func = Task_IntroCloudScene; - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[6] = 16; + gTasks[taskId].func = Task_Scene3_Clouds; + gTasks[taskId].tState = 0; + gTasks[taskId].tCloudPos = 16; } -static void Task_IntroCloudScene(u8 taskId) +// Clouds coming in from the sides before Rayquaza appears +static void Task_Scene3_Clouds(u8 taskId) { s16 *data = gTasks[taskId].data; - SetGpuReg(REG_OFFSET_BG0HOFS, (data[6] >> 8)); - SetGpuReg(REG_OFFSET_BG1HOFS, -(data[6] >> 8)); + // Left clouds are on BG0, right clouds are on BG1 + SetGpuReg(REG_OFFSET_BG0HOFS, (tCloudPos >> 8)); + SetGpuReg(REG_OFFSET_BG1HOFS, -(tCloudPos >> 8)); - switch (data[0]) + switch (tState) { case 0: - if (--data[6] == 0) + // Cloud position is used briefly as a delay, before + // the scene has faded in from white + if (--tCloudPos == 0) { + // Start fade in from white, set cloud starting positions BeginNormalPaletteFade(PALETTES_ALL & ~1, 0, 16, 0, RGB_WHITEALPHA); - data[6] = 0x5000; - data[0]++; + tCloudPos = 80 << 8; + tState++; } break; case 1: - if (data[6] == 0x2800) + // Start fading out + if (tCloudPos == 40 << 8) BeginNormalPaletteFade(PALETTES_BG & ~1, 3, 0, 16, RGB(9, 10, 10)); - if (data[6] != 0) - data[6] -= 0x80; + // Move clouds inward toward each other + if (tCloudPos != 0) + tCloudPos -= 128; else if (!gPaletteFade.active) - gTasks[taskId].func = Task_IntroLoadRayquazaLightningScene; + gTasks[taskId].func = Task_Scene3_LoadLightning; break; } } +#undef tCloudPos -static void Task_IntroLoadRayquazaLightningScene(u8 taskId) +#define tDelay data[6] +#define tTimer data[7] + +static void Task_Scene3_LoadLightning(u8 taskId) { LZDecompressVram(gIntro3RayquazaTilemap, (void *)(BG_SCREEN_ADDR(28))); LZDecompressVram(gIntro3Clouds4Tilemap, (void *)(BG_CHAR_ADDR(3))); @@ -2146,119 +2430,129 @@ static void Task_IntroLoadRayquazaLightningScene(u8 taskId) | DISPCNT_BG2_ON | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON); - gTasks[taskId].func = Task_IntroRayquazaLightningScene; - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[6] = 1; - gTasks[taskId].data[7] = 0; - LoadCompressedSpriteSheetUsingHeap(gIntroRayquazaLightningSpriteSheet); - LoadSpritePalettes(gIntroRayquazaLightningPalette); + gTasks[taskId].func = Task_Scene3_Lightning; + gTasks[taskId].tState = 0; + gTasks[taskId].tDelay = 1; + gTasks[taskId].tTimer = 0; + LoadCompressedSpriteSheetUsingHeap(sSpriteSheet_Lightning); + LoadSpritePalettes(sSpritePalette_Lightning); } -static void Task_IntroRayquazaLightningScene(u8 taskId) +static void Task_Scene3_Lightning(u8 taskId) { s16 *data = gTasks[taskId].data; u8 spriteId; - switch (data[0]) + switch (tState) { case 0: - if (--data[6] == 0) + if (--tDelay == 0) { - CreateSprite(&gIntroLightningSprite, 200, 48, 0); - spriteId = CreateSprite(&gIntroLightningSprite, 200, 80, 1); + // Do first lightning bolt + CreateSprite(&sSpriteTemplate_Lightning, 200, 48, 0); + spriteId = CreateSprite(&sSpriteTemplate_Lightning, 200, 80, 1); StartSpriteAnim(&gSprites[spriteId], 1); - spriteId = CreateSprite(&gIntroLightningSprite, 200, 112, 2); + spriteId = CreateSprite(&sSpriteTemplate_Lightning, 200, 112, 2); StartSpriteAnim(&gSprites[spriteId], 2); - data[0]++; - data[6] = 72; + tState++; + tDelay = 72; } break; case 1: - if (--data[6] == 0) + if (--tDelay == 0) { - CreateSprite(&gIntroLightningSprite, 40, 48, 0); - spriteId = CreateSprite(&gIntroLightningSprite, 40, 80, 1); + // Do second lightning bolt + CreateSprite(&sSpriteTemplate_Lightning, 40, 48, 0); + spriteId = CreateSprite(&sSpriteTemplate_Lightning, 40, 80, 1); StartSpriteAnim(&gSprites[spriteId], 1); - spriteId = CreateSprite(&gIntroLightningSprite, 40, 112, 2); + spriteId = CreateSprite(&sSpriteTemplate_Lightning, 40, 112, 2); StartSpriteAnim(&gSprites[spriteId], 2); - data[0]++; - data[6] = 48; + tState++; + tDelay = 48; } break; case 2: - if (--data[6] == 0) - gTasks[taskId].func = Task_IntroLoadRayquazaGlowScene; + if (--tDelay == 0) + gTasks[taskId].func = Task_Scene3_LoadRayquazaAttack; break; } } -static void SpriteCB_IntroRayquazaLightning(struct Sprite *sprite) +#define sPalIdx data[1] +#define sDelay data[2] + +static void SpriteCB_Lightning(struct Sprite *sprite) { if (sprite->animEnded) sprite->invisible = TRUE; - switch(sprite->data[0]) + switch(sprite->sState) { case 0: - sprite->data[1] = 0x1C2; - sprite->data[0]++; + sprite->sPalIdx = 0x1C2; + sprite->sState++; case 1: - CpuCopy16(&gIntro3BgPal[sprite->data[1]], &gPlttBufferFaded[93], 2); - sprite->data[1] += 2; - if (sprite->data[1] != 0x1CE) + CpuCopy16(&gIntro3BgPal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); + sprite->sPalIdx += 2; + if (sprite->sPalIdx != 0x1CE) break; - sprite->data[1] = 0x1CC; - sprite->data[2] = 4; - sprite->data[0]++; + sprite->sPalIdx = 0x1CC; + sprite->sDelay = 4; + sprite->sState++; case 2: - if (--sprite->data[2] == 0) + if (--sprite->sDelay == 0) { - sprite->data[2] = 4; - CpuCopy16(&gIntro3BgPal[sprite->data[1]], &gPlttBufferFaded[93], 2); - sprite->data[1] -= 2; - if (sprite->data[1] == 0x1C0) + sprite->sDelay = 4; + CpuCopy16(&gIntro3BgPal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); + sprite->sPalIdx -= 2; + if (sprite->sPalIdx == 0x1C0) DestroySprite(sprite); } break; } } -static void Task_IntroLoadRayquazaGlowScene(u8 taskId) +#undef sPalIdx +#undef sDelay + +#define tRayquazaTaskId data[4] + +static void Task_Scene3_LoadRayquazaAttack(u8 taskId) { - u8 newTaskId; + u8 attackTaskId; - LoadCompressedSpriteSheet(gIntroRayquazaGlowSpriteSheet); - LoadSpritePalettes(gIntroRayquazaGlowPalette); + LoadCompressedSpriteSheet(sSpriteSheet_RayquazaOrb); + LoadSpritePalettes(sSpritePalette_RayquazaOrb); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON); - gTasks[taskId].func = Task_IntroRayquazaGlowScene_0; + gTasks[taskId].func = Task_Scene3_Rayquaza; BeginNormalPaletteFade(PALETTES_BG & ~(0x21), 0, 16, 0, RGB(9, 10, 10)); - gTasks[taskId].data[0] = 0; + gTasks[taskId].tState = 0; gTasks[taskId].data[1] = 0xA8; gTasks[taskId].data[2] = -0x10; gTasks[taskId].data[3] = -0x88; gTasks[taskId].data[4] = -0x10; - newTaskId = CreateTask(Task_IntroRayquazaGlowScene_1, 0); - gTasks[newTaskId].data[4] = taskId; + attackTaskId = CreateTask(Task_RayquazaAttack, 0); + gTasks[attackTaskId].tRayquazaTaskId = taskId; } -static void Task_IntroRayquazaGlowScene_0(u8 taskId) +static void Task_Scene3_Rayquaza(u8 taskId) { s16 *data = gTasks[taskId].data; - if (data[7] % 2 == 0) + if (tTimer % 2 == 0) data[6] ^= 2; - data[7]++; + tTimer++; - switch(data[0]) + switch(tState) { case 0: - if ((data[7] & 1) != 0) + if ((tTimer & 1) != 0) { data[1] -= 2; data[2]++; @@ -2267,12 +2561,12 @@ static void Task_IntroRayquazaGlowScene_0(u8 taskId) } if (data[1] == 0x68) { - data[0]++; + tState++; data[5] = 1; } break; case 1: - data[0]++; + tState++; data[5] = 4; break; case 2: @@ -2283,7 +2577,7 @@ static void Task_IntroRayquazaGlowScene_0(u8 taskId) if (!gPaletteFade.active) { data[5] = 0x8C; - data[0]++; + tState++; } break; case 3: @@ -2292,6 +2586,8 @@ static void Task_IntroRayquazaGlowScene_0(u8 taskId) break; } } +#undef tDelay +#undef tTimer static void Task_EndIntroMovie(u8 taskId) { @@ -2299,14 +2595,13 @@ static void Task_EndIntroMovie(u8 taskId) SetMainCallback2(MainCB2_EndIntro); } -static void Task_IntroRayquazaGlowScene_1(u8 taskId) +static void Task_RayquazaAttack(u8 taskId) { - // Note: data[4] contains the taskId of Task_IntroRayquazaGlowScene_0 u8 spriteId; s16 *data = gTasks[taskId].data; data[2]++; - switch(data[0]) + switch(tState) { case 0: if ((data[2] & 1) != 0) @@ -2316,7 +2611,7 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) } if (data[1] == 6) { - data[0]++; + tState++; data[1] = 0; data[3] = 10; } @@ -2331,7 +2626,7 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) } if (data[1] == 6) { - data[0]++; + tState++; data[3] = 10; } } @@ -2350,11 +2645,11 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) } if (data[1] == 6) { - spriteId = CreateSprite(&gIntroRayquazaHyperbeamSprite, 120, 88, 15); + spriteId = CreateSprite(&sSpriteTemplate_RayquazaOrb, 120, 88, 15); PlaySE(SE_INTRO_BLAST); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].data[3] = data[4]; - data[0]++; + gSprites[spriteId].data[3] = tRayquazaTaskId; + tState++; data[3] = 16; } } @@ -2375,7 +2670,7 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) } else { - data[0]++; + tState++; data[3] = 53; } } @@ -2384,7 +2679,7 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) if (--data[3] == 0) { BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE); - data[0]++; + tState++; } break; case 5: @@ -2394,7 +2689,7 @@ static void Task_IntroRayquazaGlowScene_1(u8 taskId) } } -static void intro_reset_and_hide_bgs(void) +static void IntroResetGpuRegs(void) { SetGpuReg(REG_OFFSET_DISPCNT, 0); SetGpuReg(REG_OFFSET_BG3HOFS, 0); @@ -2410,9 +2705,9 @@ static void intro_reset_and_hide_bgs(void) SetGpuReg(REG_OFFSET_BLDY, 0); } -static void Task_IntroWaterDrops_1(u8 taskId) +static void Task_BlendLogoIn(u8 taskId) { - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: default: @@ -2423,10 +2718,10 @@ static void Task_IntroWaterDrops_1(u8 taskId) | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD); - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[31]); + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[31]); SetGpuReg(REG_OFFSET_BLDY, 0); - gTasks[taskId].data[1] = 0x40; - gTasks[taskId].data[0]++; + gTasks[taskId].data[1] = ARRAY_COUNT(gTitleScreenAlphaBlend); + gTasks[taskId].tState++; break; case 1: if (gTasks[taskId].data[1] != 0) @@ -2435,13 +2730,13 @@ static void Task_IntroWaterDrops_1(u8 taskId) gTasks[taskId].data[1]--; tmp = gTasks[taskId].data[1] / 2; - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[tmp]); + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[tmp]); } else { - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[0]); - gTasks[taskId].data[1] = 0x10; - gTasks[taskId].data[0]++; + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[0]); + gTasks[taskId].data[1] = ARRAY_COUNT(gTitleScreenAlphaBlend) / 4; + gTasks[taskId].tState++; } break; case 2: @@ -2453,9 +2748,9 @@ static void Task_IntroWaterDrops_1(u8 taskId) } } -static void Task_IntroWaterDrops_2(u8 taskId) +static void Task_BlendLogoOut(u8 taskId) { - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: default: @@ -2466,25 +2761,25 @@ static void Task_IntroWaterDrops_2(u8 taskId) | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD); - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[0]); + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[0]); SetGpuReg(REG_OFFSET_BLDY, 0); gTasks[taskId].data[1] = 0; - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 1: - if (gTasks[taskId].data[1] < 62) + if (gTasks[taskId].data[1] < (int)ARRAY_COUNT(gTitleScreenAlphaBlend) - 2) { u8 tmp; gTasks[taskId].data[1]++; tmp = gTasks[taskId].data[1] / 2; - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[tmp]); + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[tmp]); } else { - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[31]); - gTasks[taskId].data[1] = 0x10; - gTasks[taskId].data[0]++; + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[31]); + gTasks[taskId].data[1] = ARRAY_COUNT(gTitleScreenAlphaBlend) / 4; + gTasks[taskId].tState++; } break; case 2: @@ -2526,9 +2821,9 @@ void PanFadeAndZoomScreen(u16 screenX, u16 screenY, u16 zoom, u16 alpha) SetGpuReg(REG_OFFSET_BG2Y_H, dest.dy >> 16); } -static void sub_816F318(struct Sprite *sprite) +static void SpriteCB_WaterDrop_Ripple(struct Sprite *sprite) { - u8 r0; + u8 palNum; if (sprite->data[2] >= 192) { @@ -2541,10 +2836,10 @@ static void sub_816F318(struct Sprite *sprite) sprite->invisible = FALSE; SetOamMatrix(sprite->data[1], sprite->data[2], 0, 0, sprite->data[2]); sprite->data[2] = (sprite->data[2] * 95) / 100; - r0 = (sprite->data[2] - 192) / 128 + 9; - if (r0 > 15) - r0 = 15; - sprite->oam.paletteNum = r0; + palNum = (sprite->data[2] - 192) / 128 + 9; + if (palNum > 15) + palNum = 15; + sprite->oam.paletteNum = palNum; } } else @@ -2553,17 +2848,17 @@ static void sub_816F318(struct Sprite *sprite) } } -static void sub_816F3A4(struct Sprite *sprite) +static void SpriteCB_WaterDropHalf(struct Sprite *sprite) { if (gSprites[sprite->data[7]].data[7] != 0) { sprite->invisible = TRUE; sprite->pos1.x += sprite->pos2.x; sprite->pos1.y += sprite->pos2.y; - StartSpriteAnim(sprite, 3); + StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); - sprite->callback = sub_816F318; + sprite->callback = SpriteCB_WaterDrop_Ripple; sprite->oam.shape = SPRITE_SHAPE(64x32); sprite->oam.size = SPRITE_SIZE(64x32); CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x32), SPRITE_SIZE(64x32), ST_OAM_AFFINE_ERASE); @@ -2577,13 +2872,14 @@ static void sub_816F3A4(struct Sprite *sprite) } } -static void sub_816F454(struct Sprite *sprite) +static void SpriteCB_WaterDrop(struct Sprite *sprite) { - if (sprite->data[0] != 0) - sprite->callback = sub_816F46C; + // Wait for sState to be modified by Task_Scene1_WaterDrops + if (sprite->sState != 0) + sprite->callback = SpriteCB_WaterDrop_Slide; } -static void sub_816F46C(struct Sprite *sprite) +static void SpriteCB_WaterDrop_Slide(struct Sprite *sprite) { if (sprite->pos1.x <= 116) { @@ -2592,7 +2888,7 @@ static void sub_816F46C(struct Sprite *sprite) sprite->pos1.x += 4; sprite->pos2.x = -4; sprite->data[4] = 128; - sprite->callback = sub_816F5B4; + sprite->callback = SpriteCB_WaterDrop_ReachLeafEnd; } else { @@ -2632,28 +2928,27 @@ static void sub_816F46C(struct Sprite *sprite) } } -static void sub_816F5B4(struct Sprite *sprite) +static void SpriteCB_WaterDrop_ReachLeafEnd(struct Sprite *sprite) { SetOamMatrix(sprite->data[1], sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); SetOamMatrix(sprite->data[1] + 1, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); SetOamMatrix(sprite->data[1] + 2, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); if (sprite->data[4] != 64) { - u16 data4; - + u16 sinIdx; sprite->data[4] -= 8; - data4 = sprite->data[4]; - sprite->pos2.x = gSineTable[(u8)(data4 + 64)] / 64; - sprite->pos2.y = gSineTable[(u8)data4] / 64; + sinIdx = sprite->data[4]; + sprite->pos2.x = gSineTable[(u8)(sinIdx + 64)] / 64; + sprite->pos2.y = gSineTable[(u8)sinIdx] / 64; } else { sprite->data[4] = 0; - sprite->callback = sub_816F660; + sprite->callback = SpriteCB_WaterDrop_DangleFromLeaf; } } -static void sub_816F660(struct Sprite *sprite) +static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *sprite) { if (sprite->data[0] != 2) { @@ -2666,11 +2961,11 @@ static void sub_816F660(struct Sprite *sprite) } else { - sprite->callback = SpriteCB_WaterDropFall; + sprite->callback = SpriteCB_WaterDrop_Fall; } } -static void SpriteCB_WaterDropFall(struct Sprite *sprite) +static void SpriteCB_WaterDrop_Fall(struct Sprite *sprite) { if (sprite->pos1.y < sprite->data[5]) { @@ -2682,18 +2977,19 @@ static void SpriteCB_WaterDropFall(struct Sprite *sprite) sprite->invisible = TRUE; sprite->pos1.x += sprite->pos2.x; sprite->pos1.y += sprite->pos2.y; - StartSpriteAnim(sprite, 3); + StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); - sprite->callback = sub_816F318; + sprite->callback = SpriteCB_WaterDrop_Ripple; sprite->oam.shape = SPRITE_SHAPE(64x32); sprite->oam.size = SPRITE_SIZE(64x32); CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x32), SPRITE_SIZE(64x32), ST_OAM_AFFINE_ERASE); } } -//Duplicate function -static void SpriteCB_WaterDropFall_2(struct Sprite *sprite) +// Identical to SpriteCB_WaterDrop_Fall +// Used by the 2nd and 3rd water drops to skip the leaf slide +static void SpriteCB_WaterDropShort(struct Sprite *sprite) { if (sprite->pos1.y < sprite->data[5]) { @@ -2705,10 +3001,10 @@ static void SpriteCB_WaterDropFall_2(struct Sprite *sprite) sprite->invisible = TRUE; sprite->pos1.x += sprite->pos2.x; sprite->pos1.y += sprite->pos2.y; - StartSpriteAnim(sprite, 3); + StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); - sprite->callback = sub_816F318; + sprite->callback = SpriteCB_WaterDrop_Ripple; sprite->oam.shape = SPRITE_SHAPE(64x32); sprite->oam.size = SPRITE_SIZE(64x32); CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x32), SPRITE_SIZE(64x32), ST_OAM_AFFINE_ERASE); @@ -2720,7 +3016,8 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately) u8 spriteId; u8 oldSpriteId; - spriteId = CreateSprite(&gIntroWaterDropSprite, x, y, 1); + // Create water drop reflection + spriteId = CreateSprite(&sSpriteTemplate_WaterDrop, x, y, 1); gSprites[spriteId].data[0] = 0; gSprites[spriteId].data[7] = 0; gSprites[spriteId].data[1] = d; @@ -2731,29 +3028,32 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately) gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_DOUBLE; gSprites[spriteId].oam.matrixNum = d; CalcCenterToCornerVec(&gSprites[spriteId], SPRITE_SHAPE(32x32), SPRITE_SIZE(32x32), ST_OAM_AFFINE_ERASE); - StartSpriteAnim(&gSprites[spriteId], 2); + StartSpriteAnim(&gSprites[spriteId], DROP_ANIM_REFLECTION); if (!fallImmediately) - gSprites[spriteId].callback = sub_816F454; + gSprites[spriteId].callback = SpriteCB_WaterDrop; // Do full anim, for 1st drop that slides along the leaf else - gSprites[spriteId].callback = SpriteCB_WaterDropFall_2; + gSprites[spriteId].callback = SpriteCB_WaterDropShort; // Skip to drop falling into the water, for 2nd and 3rd drops oldSpriteId = spriteId; - spriteId = CreateSprite(&gIntroWaterDropSprite, x, y, 1); + // Create water drop upper half + // Implicitly anim number 0, DROP_ANIM_UPPER_HALF + spriteId = CreateSprite(&sSpriteTemplate_WaterDrop, x, y, 1); gSprites[spriteId].data[7] = oldSpriteId; gSprites[spriteId].data[1] = d + 1; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_DOUBLE; gSprites[spriteId].oam.matrixNum = d + 1; CalcCenterToCornerVec(&gSprites[spriteId], SPRITE_SHAPE(32x32), SPRITE_SIZE(32x32), ST_OAM_AFFINE_ERASE); - gSprites[spriteId].callback = sub_816F3A4; + gSprites[spriteId].callback = SpriteCB_WaterDropHalf; - spriteId = CreateSprite(&gIntroWaterDropSprite, x, y, 1); + // Create water drop lower half + spriteId = CreateSprite(&sSpriteTemplate_WaterDrop, x, y, 1); gSprites[spriteId].data[7] = oldSpriteId; gSprites[spriteId].data[1] = d + 2; - StartSpriteAnim(&gSprites[spriteId], 1); + StartSpriteAnim(&gSprites[spriteId], DROP_ANIM_LOWER_HALF); gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_DOUBLE; gSprites[spriteId].oam.matrixNum = d + 2; CalcCenterToCornerVec(&gSprites[spriteId], SPRITE_SHAPE(32x32), SPRITE_SIZE(32x32), ST_OAM_AFFINE_ERASE); - gSprites[spriteId].callback = sub_816F3A4; + gSprites[spriteId].callback = SpriteCB_WaterDropHalf; SetOamMatrix(d, c + 32, 0, 0, c + 32); SetOamMatrix(d + 1, c + 32, 0, 0, c + 32); @@ -2762,39 +3062,51 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately) return oldSpriteId; } -static void SpriteCB_IntroGraphicsBicycle(struct Sprite *sprite) +// State is handled by Task_Scene2_BikeRide +static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite) { - switch (sprite->data[0]) + // Adjust x position + switch (sprite->sState) { case 0: + // Move forwards StartSpriteAnimIfDifferent(sprite, 0); sprite->pos1.x--; break; case 1: + // Drift backwards slowly StartSpriteAnimIfDifferent(sprite, 0); if (gIntroFrameCounter & 7) return; sprite->pos1.x++; break; case 2: + // Move backwards if (sprite->pos1.x <= 120 || gIntroFrameCounter & 7) sprite->pos1.x++; break; case 3: + // Bike in place break; case 4: + // Exit to the left if (sprite->pos1.x > -32) sprite->pos1.x -= 2; break; } + if (gIntroFrameCounter & 7) return; + + // Adjust y position if (sprite->pos2.y != 0) { + // Return to neutral after wobble sprite->pos2.y = 0; } else { + // Random wobble on y axis switch (Random() & 3) { case 0: @@ -2811,115 +3123,136 @@ static void SpriteCB_IntroGraphicsBicycle(struct Sprite *sprite) } } -static void SpriteCB_IntroGraphicsFlygon(struct Sprite *sprite) +#define sSinIdx data[1] + +// Movement is started by setting state to 1 in Task_Scene2_BikeRide +static void SpriteCB_Flygon(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: break; case 1: - if (sprite->pos2.x + sprite->pos1.x < 304) + if (sprite->pos2.x + sprite->pos1.x < DISPLAY_WIDTH + 64) sprite->pos2.x += 8; else - sprite->data[0] = 2; + sprite->sState = 2; break; case 2: if (sprite->pos2.x + sprite->pos1.x > 120) sprite->pos2.x -= 1; else - sprite->data[0] = 3; + sprite->sState = 3; break; case 3: if (sprite->pos2.x > 0) sprite->pos2.x -= 2; break; } - sprite->pos2.y = Sin((u8)sprite->data[1], 8) - gIntroGraphicsFlygonYOffset; - sprite->data[1] += 4; + sprite->pos2.y = Sin((u8)sprite->sSinIdx, 8) - sFlygonYOffset; + sprite->sSinIdx += 4; } -static void sub_816FB38(struct Sprite *sprite) +#undef sSinIdx + +#define sTimer data[1] +#define sLetterId data[2] +#define sColorDelay data[3] +#define sLetterX data[3] // Re-used + +#define COLOR_CHANGES 9 // Number of stages for changing the letter color + +// For the letters in "Game Freak" +// Also intended for the letters in "Presents", which is never shown +static void SpriteCB_LogoLetter(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: - if (sprite->data[1] != 0) + if (sprite->sTimer != 0) { - sprite->data[1]--; + sprite->sTimer--; } else { + // Start the grow and shrink appearance animation sprite->invisible = FALSE; StartSpriteAffineAnim(sprite, 1); - sprite->data[0]++; + sprite->sState++; } break; case 1: - if (gIntroFrameCounter == 0x90) + if (gIntroFrameCounter == TIMER_LOGO_LETTERS_COLOR) { - sprite->data[0]++; - sprite->data[1] = 9; - sprite->data[3] = 2; + // Initialize color fade + sprite->sState++; + sprite->sTimer = COLOR_CHANGES; + sprite->sColorDelay = 2; } break; case 2: - if (sprite->data[3] == 0) + // Fade letters to blue + if (sprite->sColorDelay == 0) { - sprite->data[3] = 2; - if (sprite->data[1] != 0) + sprite->sColorDelay = 2; + if (sprite->sTimer != 0) { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1]], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x10], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x20], &gPlttBufferFaded[0x11A], 2); - sprite->data[1]--; + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + sprite->sTimer--; } else { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1]], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x10], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x20], &gPlttBufferFaded[0x11A], 2); - sprite->data[0]++; + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + sprite->sState++; } } else { - sprite->data[3]--; + sprite->sColorDelay--; } break; case 3: - if (sprite->data[3] != 0) + // Fade letters back to white + if (sprite->sColorDelay != 0) { - sprite->data[3]--; + sprite->sColorDelay--; } else { - sprite->data[3] = 2; - if (sprite->data[1] < 10) + sprite->sColorDelay = 2; + if (sprite->sTimer <= COLOR_CHANGES) { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1]], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x10], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->data[1] + 0x20], &gPlttBufferFaded[0x11A], 2); - sprite->data[1]++; + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + sprite->sTimer++; } else { - sprite->data[0]++; + sprite->sState++; } } break; case 4: - if (gIntroFrameCounter == 0x110) + if (gIntroFrameCounter == TIMER_LOGO_DISAPPEAR) { + // Start the grow disappearance animation StartSpriteAffineAnim(sprite, 2); sprite->oam.objMode = ST_OAM_OBJ_BLEND; - sprite->data[0]++; + sprite->sState++; } break; case 5: - sprite->data[3] += gUnknown_085E4F48[sprite->data[2]]; - sprite->pos2.x = (sprite->data[3] & 0xFF00) >> 8; - if (sprite->data[2] < 4) + // Spread the letters out as they grow + sprite->sLetterX += sGameFreakLettersMoveSpeed[sprite->sLetterId]; + sprite->pos2.x = (sprite->sLetterX & 0xFF00) >> 8; + if (sprite->sLetterId < 4) { + // Is in first 4 letters, i.e. "Game" s16 temp = sprite->pos2.x; sprite->pos2.x = -temp; } @@ -2929,22 +3262,23 @@ static void sub_816FB38(struct Sprite *sprite) } } -static void sub_816FD44(struct Sprite *sprite) +static void SpriteCB_GameFreakLogo(struct Sprite *sprite) { - switch(sprite->data[0]) + switch(sprite->sState) { case 0: - if (gIntroFrameCounter == 0x80) + if (gIntroFrameCounter == TIMER_LOGO_APPEAR) { sprite->invisible = FALSE; - sprite->data[0]++; + sprite->sState++; } break; case 1: - if (gIntroFrameCounter == 0x110) + if (gIntroFrameCounter == TIMER_LOGO_DISAPPEAR) { + // Start the grow disappearance animation StartSpriteAffineAnim(sprite, 3); - sprite->data[0]++; + sprite->sState++; } break; case 2: @@ -2954,35 +3288,45 @@ static void sub_816FD44(struct Sprite *sprite) } } -static u8 CreatePart1Animations(s16 a0, s16 a1, s16 a2) +static u8 CreateGameFreakLogoSprites(s16 x, s16 y, s16 unused) { u16 i; u8 spriteId; - for (i = 0; i < 9; i++) + // Create "Game Freak" letters + for (i = 0; i < NUM_GF_LETTERS; i++) { - spriteId = CreateSprite(&gUnknown_085E4F5C, gUnknown_085E4E94[i][1] + a0, a1 - 4, 0); - gSprites[spriteId].data[0] = 0; - gSprites[spriteId].data[1] = gUnknown_085E4FA4[i]; - gSprites[spriteId].data[2] = i; + spriteId = CreateSprite(&sSpriteTemplate_GameFreakLetter, sGameFreakLetterData[i][1] + x, y - 4, 0); + gSprites[spriteId].sState = 0; + gSprites[spriteId].sTimer = sGameFreakLetterStartDelays[i]; + gSprites[spriteId].sLetterId = i; gSprites[spriteId].invisible = TRUE; gSprites[spriteId].oam.matrixNum = i + 12; - StartSpriteAnim(&gSprites[spriteId], gUnknown_085E4E94[i][0]); + StartSpriteAnim(&gSprites[spriteId], sGameFreakLetterData[i][0]); StartSpriteAffineAnim(&gSprites[spriteId], 0); } - spriteId = CreateSprite(&gUnknown_085E4F8C, 120, a1 - 6, 0); - gSprites[spriteId].data[0] = 0; + + // Create Game Freak logo + spriteId = CreateSprite(&sSpriteTemplate_GameFreakLogo, 120, y - 6, 0); + gSprites[spriteId].sState = 0; gSprites[spriteId].invisible = TRUE; gSprites[spriteId].oam.matrixNum = i + 12; StartSpriteAffineAnim(&gSprites[spriteId], 1); + return spriteId; } -static void sub_816FEDC(struct Sprite *sprite) +#undef sTimer +#undef sLetterId +#undef sColorDelay +#undef sLetterX +#undef COLOR_CHANGES + +static void SpriteCB_FlygonSilhouette(struct Sprite *sprite) { sprite->data[7]++; - if (sprite->data[0] != 0) + if (sprite->sState != 0) { s16 sin1; s16 sin2; @@ -3000,7 +3344,7 @@ static void sub_816FEDC(struct Sprite *sprite) SetOamMatrix(1, a, b, c, d); } - switch (sprite->data[0]) + switch (sprite->sState) { case 0: default: @@ -3008,7 +3352,7 @@ static void sub_816FEDC(struct Sprite *sprite) sprite->oam.matrixNum = 1; CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x32), SPRITE_SIZE(64x32), ST_OAM_AFFINE_DOUBLE); sprite->invisible = FALSE; - sprite->data[0] = 1; + sprite->sState = 1; sprite->data[1] = 0x80; sprite->data[2] = 0; sprite->data[3] = 0; @@ -3021,7 +3365,7 @@ static void sub_816FEDC(struct Sprite *sprite) if (sprite->pos1.x + sprite->pos2.x <= -16) { sprite->oam.priority = 3; - sprite->data[0]++; + sprite->sState++; sprite->pos1.x = 20; sprite->pos1.y = 40; sprite->data[1] = 0x200; @@ -3039,13 +3383,10 @@ static void sub_816FEDC(struct Sprite *sprite) } } -static void SpriteCB_IntroRayquazaHyperbeam(struct Sprite *sprite) +static void SpriteCB_RayquazaOrb(struct Sprite *sprite) { u16 foo; - - //I'm not sure why a switch statement was used here. - //if (sprite->data[0] != 1) would have been more appropriate. - switch (sprite->data[0]) + switch (sprite->sState) { case 0: default: @@ -3054,7 +3395,7 @@ static void SpriteCB_IntroRayquazaHyperbeam(struct Sprite *sprite) sprite->oam.matrixNum = 18; CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x64), SPRITE_SIZE(64x64), ST_OAM_AFFINE_DOUBLE); sprite->data[1] = 0; - sprite->data[0] = 1; + sprite->sState = 1; //fall through case 1: sprite->data[7]++; diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index 45cc24e5c899..4cb26a9bf2be 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -6,6 +6,25 @@ #include "task.h" #include "main.h" #include "graphics.h" +#include "constants/rgb.h" + +/* + The graphics here are used by both the second scene of the intro + and the credit sequence, where the player bikes along a grassy path. + + These graphics are placed in graphics/intro/scene_2 to keep + all of the intro graphics files together, though it includes + the related graphics that are used only by the credits. +*/ + +#define TAG_BICYCLE 1001 +#define TAG_BRENDAN 1002 +#define TAG_MAY 1003 +#define TAG_FLYGON_LATIOS 1004 +#define TAG_FLYGON_LATIAS 1005 + +// Used for the Clouds/Trees/Houses sprites that pass by in the background +#define TAG_MOVING_SCENERY 2000 struct IntroCreditsSpriteMetadata { @@ -18,62 +37,62 @@ struct IntroCreditsSpriteMetadata u16 xOff; }; -static const u16 gUnknown_085F06E0[] = INCBIN_U16("graphics/intro/intro2_grass.gbapal"); -static const u16 gUnknown_085F0700[] = INCBIN_U16("graphics/intro/intro2_grass_afternoon.gbapal"); -static const u16 gUnknown_085F0720[] = INCBIN_U16("graphics/intro/intro2_grass_night.gbapal"); -static const u32 gUnknown_085F0740[] = INCBIN_U32("graphics/intro/intro2_grass.4bpp.lz"); -static const u32 gUnknown_085F0BC0[] = INCBIN_U32("graphics/intro/intro2_grass_map.bin.lz"); -static const u16 gUnknown_085F0CFC[] = INCBIN_U16("graphics/intro/85F0CFC.gbapal"); -static const u16 gUnknown_085F0D5C[] = INCBIN_U16("graphics/intro/85F0D5C.gbapal"); -static const u32 gUnknown_085F0DBC[] = INCBIN_U32("graphics/intro/intro2_bgclouds.4bpp.lz"); -static const u32 gUnknown_085F1398[] = INCBIN_U32("graphics/intro/intro2_bgclouds_map.bin.lz"); -static const u16 gUnknown_085F1668[] = INCBIN_U16("graphics/intro/intro2_bgclouds.gbapal"); -static const u16 gUnknown_085F1688[] = INCBIN_U16("graphics/intro/intro2_bgclouds_afternoon.gbapal"); -static const u32 gUnknown_085F16A8[] = INCBIN_U32("graphics/intro/intro2_bgclouds2.4bpp.lz"); -static const u16 gUnknown_085F17E4[] = INCBIN_U16("graphics/intro/intro2_bgtrees2.gbapal"); -static const u16 gUnknown_085F1804[] = INCBIN_U16("graphics/intro/intro2_bgtrees2_afternoon.gbapal"); -static const u32 gUnknown_085F1824[] = INCBIN_U32("graphics/intro/intro2_bgtrees.4bpp.lz"); -static const u32 gUnknown_085F1EAC[] = INCBIN_U32("graphics/intro/intro2_bgtrees_map.bin.lz"); -static const u16 gUnknown_085F21B0[] = INCBIN_U16("graphics/intro/intro2_bgtrees.gbapal"); -static const u32 gIntro2TreeTiles[] = INCBIN_U32("graphics/intro/intro2_bgtreessmall.4bpp.lz"); -static const u16 gUnknown_085F231C[] = INCBIN_U16("graphics/intro/85F231C.gbapal"); -static const u32 gUnknown_085F235C[] = INCBIN_U32("graphics/intro/intro2_bgnight.4bpp.lz"); -static const u16 gUnknown_085F2548[] = INCBIN_U16("graphics/intro/intro2_bgnight.gbapal"); -static const u32 gUnknown_085F2568[] = INCBIN_U32("graphics/intro/intro2_bgnight_map.bin.lz"); -static const u32 gIntro2NightTiles[] = INCBIN_U32("graphics/intro/intro2_night.4bpp.lz"); -static const u16 gIntro2BrendanPalette[] = INCBIN_U16("graphics/intro/intro2_brendan.gbapal"); -static const u32 gIntro2BrendanTiles[] = INCBIN_U32("graphics/intro/intro2_brendan.4bpp.lz"); -static const u16 gIntro2MayPalette[] = INCBIN_U16("graphics/intro/intro2_may.gbapal"); -static const u16 gUnknown_085F3490[0xF0] = {0}; -static const u32 gIntro2MayTiles[] = INCBIN_U32("graphics/intro/intro2_may.4bpp.lz"); -static const u32 gIntro2BicycleTiles[] = INCBIN_U32("graphics/intro/intro2_bicycle.4bpp.lz"); -static const u16 gIntro2LatiosPalette[] = INCBIN_U16("graphics/intro/intro2_latios.gbapal"); -static const u32 gIntro2LatiosTiles[] = INCBIN_U32("graphics/intro/intro2_latios.4bpp.lz"); -static const u16 gIntro2LatiasPalette[] = INCBIN_U16("graphics/intro/intro2_latias.gbapal"); -static const u32 gIntro2LatiasTiles[] = INCBIN_U32("graphics/intro/intro2_latias.4bpp.lz"); - -static void sub_817B62C(struct Sprite *sprite); -static void nullsub_65(struct Sprite *sprite); -static void sub_817B7C4(struct Sprite *sprite); -static void nullsub_66(struct Sprite *sprite); - -static const struct SpriteTemplate gUnknown_085F504C = -{ - .tileTag = 2000, +static const u16 sGrass_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass.gbapal"); +static const u16 sGrassAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass_afternoon.gbapal"); +static const u16 sGrassNight_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass_night.gbapal"); +static const u32 sGrass_Gfx[] = INCBIN_U32("graphics/intro/scene_2/grass.4bpp.lz"); +static const u32 sGrass_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/grass_map.bin.lz"); +static const u16 sCloudsBg_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_bg.gbapal"); +static const u16 sCloudsBgAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_bg_afternoon.gbapal"); +static const u32 sCloudsBg_Gfx[] = INCBIN_U32("graphics/intro/scene_2/clouds_bg.4bpp.lz"); +static const u32 sCloudsBg_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/clouds_bg_map.bin.lz"); +static const u16 sClouds_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds.gbapal"); +static const u16 sCloudsAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_afternoon.gbapal"); +static const u32 sClouds_Gfx[] = INCBIN_U32("graphics/intro/scene_2/clouds.4bpp.lz"); +static const u16 sTrees_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees.gbapal"); +static const u16 sTreesAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees_afternoon.gbapal"); +static const u32 sTrees_Gfx[] = INCBIN_U32("graphics/intro/scene_2/trees.4bpp.lz"); +static const u32 sTrees_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/trees_map.bin.lz"); +static const u16 sTreesSmall_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees_small.gbapal"); +static const u32 sTreesSmall_Gfx[] = INCBIN_U32("graphics/intro/scene_2/trees_small.4bpp.lz"); +static const u16 sHouses_Pal[] = INCBIN_U16("graphics/intro/scene_2/houses.gbapal"); +static const u32 sHouses_Gfx[] = INCBIN_U32("graphics/intro/scene_2/houses.4bpp.lz"); +static const u16 sHouseSilhouette_Pal[] = INCBIN_U16("graphics/intro/scene_2/house_silhouette.gbapal"); +static const u32 sHouses_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/houses_map.bin.lz"); +static const u32 sHouseSilhouette_Gfx[] = INCBIN_U32("graphics/intro/scene_2/house_silhouette.4bpp.lz"); +static const u16 sBrendanCredits_Pal[] = INCBIN_U16("graphics/intro/scene_2/brendan_credits.gbapal"); +static const u32 sBrendanCredits_Gfx[] = INCBIN_U32("graphics/intro/scene_2/brendan_credits.4bpp.lz"); +static const u16 sMayCredits_Pal[] = INCBIN_U16("graphics/intro/scene_2/may_credits.gbapal"); +static const u16 sUnused[0xF0] = {0}; +static const u32 sMayCredits_Gfx[] = INCBIN_U32("graphics/intro/scene_2/may_credits.4bpp.lz"); +static const u32 sBicycle_Gfx[] = INCBIN_U32("graphics/intro/scene_2/bicycle.4bpp.lz"); +static const u16 sLatios_Pal[] = INCBIN_U16("graphics/intro/scene_2/latios.gbapal"); +static const u32 sLatios_Gfx[] = INCBIN_U32("graphics/intro/scene_2/latios.4bpp.lz"); +static const u16 sLatias_Pal[] = INCBIN_U16("graphics/intro/scene_2/latias.gbapal"); +static const u32 sLatias_Gfx[] = INCBIN_U32("graphics/intro/scene_2/latias.4bpp.lz"); + +static void SpriteCB_MovingScenery(struct Sprite *sprite); +static void SpriteCB_Player(struct Sprite *sprite); +static void SpriteCB_Bicycle(struct Sprite *sprite); +static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite); + +static const struct SpriteTemplate sSpriteTemplate_MovingScenery = +{ + .tileTag = TAG_MOVING_SCENERY, .paletteTag = 0xFFFF, .oam = &gDummyOamData, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_817B62C + .callback = SpriteCB_MovingScenery }; -static const struct CompressedSpriteSheet gUnknown_085F5064[] = +static const struct CompressedSpriteSheet sSpriteSheet_Clouds[] = { { - .data = gUnknown_085F16A8, + .data = sClouds_Gfx, .size = 0x400, - .tag = 2000 + .tag = TAG_MOVING_SCENERY }, {} }; @@ -102,7 +121,7 @@ static const union AnimCmd gUnknown_085F508C[] = ANIMCMD_END }; -static const union AnimCmd *const gUnknown_085F5094[] = +static const union AnimCmd *const sAnims_Clouds[] = { gUnknown_085F5074, gUnknown_085F507C, @@ -110,7 +129,7 @@ static const union AnimCmd *const gUnknown_085F5094[] = gUnknown_085F508C }; -static const struct IntroCreditsSpriteMetadata gUnknown_085F50A4[] = +static const struct IntroCreditsSpriteMetadata sSpriteMetadata_Clouds[] = { { .animNum = 0, @@ -195,12 +214,12 @@ static const struct IntroCreditsSpriteMetadata gUnknown_085F50A4[] = }, }; -static const struct CompressedSpriteSheet gUnknown_085F50EC[] = +static const struct CompressedSpriteSheet sSpriteSheet_TreesSmall[] = { { - .data = gIntro2TreeTiles, + .data = sTreesSmall_Gfx, .size = 0x400, - .tag = 2000 + .tag = TAG_MOVING_SCENERY }, {} }; @@ -223,14 +242,14 @@ static const union AnimCmd gUnknown_085F510C[] = ANIMCMD_END }; -static const union AnimCmd *const gUnknown_085F5114[] = +static const union AnimCmd *const sAnims_TreesSmall[] = { gUnknown_085F50FC, gUnknown_085F5104, gUnknown_085F510C }; -static const struct IntroCreditsSpriteMetadata gUnknown_085F5120[] = +static const struct IntroCreditsSpriteMetadata sSpriteMetadata_Trees[] = { { .animNum = 0, @@ -342,28 +361,28 @@ static const struct IntroCreditsSpriteMetadata gUnknown_085F5120[] = } }; -static const struct CompressedSpriteSheet gUnknown_085F5180[] = +static const struct CompressedSpriteSheet sSpriteSheet_HouseSilhouette[] = { { - .data = gIntro2NightTiles, + .data = sHouseSilhouette_Gfx, .size = 0x400, - .tag = 2000 + .tag = TAG_MOVING_SCENERY }, {} }; -static const union AnimCmd gUnknown_085F5190[] = +static const union AnimCmd sAnim_HouseSilhouette[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_END }; -static const union AnimCmd *const gUnknown_085F5198[] = +static const union AnimCmd *const sAnims_HouseSilhouette[] = { - gUnknown_085F5190 + sAnim_HouseSilhouette }; -static const struct IntroCreditsSpriteMetadata gUnknown_085F519C[] = +static const struct IntroCreditsSpriteMetadata sSpriteMetadata_HouseSilhouette[] = { { .animNum = 0, @@ -421,7 +440,7 @@ static const struct IntroCreditsSpriteMetadata gUnknown_085F519C[] = } }; -static const struct OamData gOamData_85F51CC = +static const struct OamData sOamData_Player = { .y = 160, .shape = SPRITE_SHAPE(64x64), @@ -429,7 +448,7 @@ static const struct OamData gOamData_85F51CC = .priority = 1 }; -static const union AnimCmd gUnknown_085F51D4[] = +static const union AnimCmd sAnim_Player[] = { ANIMCMD_FRAME( 0, 8), ANIMCMD_FRAME( 64, 8), @@ -438,34 +457,34 @@ static const union AnimCmd gUnknown_085F51D4[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd *const gUnknown_085F51E8[] = +static const union AnimCmd *const sAnims_Player[] = { - gUnknown_085F51D4 + sAnim_Player }; -static const struct SpriteTemplate gUnknown_085F51EC = +static const struct SpriteTemplate sSpriteTemplate_Brendan = { - .tileTag = 1002, - .paletteTag = 1002, - .oam = &gOamData_85F51CC, - .anims = gUnknown_085F51E8, + .tileTag = TAG_BRENDAN, + .paletteTag = TAG_BRENDAN, + .oam = &sOamData_Player, + .anims = sAnims_Player, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = nullsub_65 + .callback = SpriteCB_Player }; -static const struct SpriteTemplate gUnknown_085F5204 = +static const struct SpriteTemplate sSpriteTemplate_May = { - .tileTag = 1003, - .paletteTag = 1003, - .oam = &gOamData_85F51CC, - .anims = gUnknown_085F51E8, + .tileTag = TAG_MAY, + .paletteTag = TAG_MAY, + .oam = &sOamData_Player, + .anims = sAnims_Player, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = nullsub_65 + .callback = SpriteCB_Player }; -static const struct OamData gUnknown_085F521C = +static const struct OamData sOamData_Bicycle = { .y = 160, .shape = SPRITE_SHAPE(64x32), @@ -473,7 +492,7 @@ static const struct OamData gUnknown_085F521C = .priority = 1 }; -static const union AnimCmd gUnknown_085F5224[] = +static const union AnimCmd sAnim_Bicycle[] = { ANIMCMD_FRAME( 0, 8), ANIMCMD_FRAME( 32, 8), @@ -482,34 +501,34 @@ static const union AnimCmd gUnknown_085F5224[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd *const gUnknown_085F5238[] = +static const union AnimCmd *const sAnims_Bicycle[] = { - gUnknown_085F5224 + sAnim_Bicycle }; -static const struct SpriteTemplate gUnknown_085F523C = +static const struct SpriteTemplate sSpriteTemplate_BrendanBicycle = { - .tileTag = 1001, - .paletteTag = 1002, - .oam = &gUnknown_085F521C, - .anims = gUnknown_085F5238, + .tileTag = TAG_BICYCLE, + .paletteTag = TAG_BRENDAN, + .oam = &sOamData_Bicycle, + .anims = sAnims_Bicycle, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_817B7C4 + .callback = SpriteCB_Bicycle }; -static const struct SpriteTemplate gUnknown_085F5254 = +static const struct SpriteTemplate sSpriteTemplate_MayBicycle = { - .tileTag = 1001, - .paletteTag = 1003, - .oam = &gUnknown_085F521C, - .anims = gUnknown_085F5238, + .tileTag = TAG_BICYCLE, + .paletteTag = TAG_MAY, + .oam = &sOamData_Bicycle, + .anims = sAnims_Bicycle, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_817B7C4 + .callback = SpriteCB_Bicycle }; -static const struct OamData gUnknown_085F526C = +static const struct OamData sOamData_Flygon = { .y = 160, .shape = SPRITE_SHAPE(64x64), @@ -517,226 +536,232 @@ static const struct OamData gUnknown_085F526C = .priority = 1 }; -static const union AnimCmd gUnknown_085F5274[] = +static const union AnimCmd sAnim_FlygonLeft[] = { ANIMCMD_FRAME( 0, 16), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F527C[] = +static const union AnimCmd sAnim_FlygonRight[] = { ANIMCMD_FRAME( 64, 16), ANIMCMD_END }; -static const union AnimCmd *const gUnknown_085F5284[] = +static const union AnimCmd *const sAnims_Flygon[] = { - gUnknown_085F5274, - gUnknown_085F527C + sAnim_FlygonLeft, + sAnim_FlygonRight }; -static const struct SpriteTemplate gUnknown_085F528C = +static const struct SpriteTemplate sSpriteTemplate_FlygonLatios = { - .tileTag = 1004, - .paletteTag = 1004, - .oam = &gUnknown_085F526C, - .anims = gUnknown_085F5284, + .tileTag = TAG_FLYGON_LATIOS, + .paletteTag = TAG_FLYGON_LATIOS, + .oam = &sOamData_Flygon, + .anims = sAnims_Flygon, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = nullsub_66 + .callback = SpriteCB_FlygonLeftHalf }; -static const struct SpriteTemplate gUnknown_085F52A4 = +static const struct SpriteTemplate sSpriteTemplate_FlygonLatias = { - .tileTag = 1005, - .paletteTag = 1005, - .oam = &gUnknown_085F526C, - .anims = gUnknown_085F5284, + .tileTag = TAG_FLYGON_LATIAS, + .paletteTag = TAG_FLYGON_LATIAS, + .oam = &sOamData_Flygon, + .anims = sAnims_Flygon, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = nullsub_66 + .callback = SpriteCB_FlygonLeftHalf }; -const struct CompressedSpriteSheet gIntro2BrendanSpriteSheet[] = +const struct CompressedSpriteSheet gSpriteSheet_IntroBrendan[] = { { - .data = gIntro2BrendanNoTurnGfx, + .data = gIntro2BrendanGfx, .size = 0x2000, - .tag = 1002 + .tag = TAG_BRENDAN }, {} }; -const struct CompressedSpriteSheet gIntro2MaySpriteSheet[] = +const struct CompressedSpriteSheet gSpriteSheet_IntroMay[] = { { - .data = gIntro2MayNoTurnGfx, + .data = gIntro2MayGfx, .size = 0x2000, - .tag = 1003 + .tag = TAG_MAY }, {} }; -const struct CompressedSpriteSheet gIntro2BicycleSpriteSheet[] = +const struct CompressedSpriteSheet gSpriteSheet_IntroBicycle[] = { { - .data = gIntro2BicycleTiles, + .data = sBicycle_Gfx, .size = 0x1000, - .tag = 1001 + .tag = TAG_BICYCLE }, {} }; -static const struct CompressedSpriteSheet gUnknown_085F52EC[] = +// In RS these were Latios/Latias. In Emerald both are replaced with Flygon and now only 1 is used +static const struct CompressedSpriteSheet sSpriteSheet_IntroFlygon_Unused[] = { { .data = gIntro2FlygonGfx, .size = 0x1000, - .tag = 1004 + .tag = TAG_FLYGON_LATIOS }, {} }; -const struct CompressedSpriteSheet gIntro2FlygonSpriteSheet[] = +const struct CompressedSpriteSheet gSpriteSheet_IntroFlygon[] = { { .data = gIntro2FlygonGfx, .size = 0x1000, - .tag = 1005 + .tag = TAG_FLYGON_LATIAS }, {} }; -const struct SpritePalette gIntroBikeAndFlygonPalette[] = +const struct SpritePalette gSpritePalettes_IntroPlayerFlygon[] = { - { .data = gIntro2BrendanNoTurnPal, .tag = 1002 }, - { .data = gIntro2BrendanNoTurnPal, .tag = 1003 }, - { .data = gIntro2FlygonPal, .tag = 1004 }, - { .data = gIntro2FlygonPal, .tag = 1005 }, + { .data = gIntro2PlayerPal, .tag = TAG_BRENDAN }, + { .data = gIntro2PlayerPal, .tag = TAG_MAY }, + { .data = gIntro2FlygonPal, .tag = TAG_FLYGON_LATIOS }, + { .data = gIntro2FlygonPal, .tag = TAG_FLYGON_LATIAS }, {} }; -const struct CompressedSpriteSheet gUnknown_085F5334[] = +const struct CompressedSpriteSheet gSpriteSheet_CreditsBrendan[] = { { - .data = gIntro2BrendanTiles, + .data = sBrendanCredits_Gfx, .size = 0x3800, - .tag = 1002 + .tag = TAG_BRENDAN }, {} }; -const struct CompressedSpriteSheet gUnknown_085F5344[] = +const struct CompressedSpriteSheet gSpriteSheet_CreditsMay[] = { { - .data = gIntro2MayTiles, + .data = sMayCredits_Gfx, .size = 0x3800, - .tag = 1003 + .tag = TAG_MAY }, {} }; -const struct CompressedSpriteSheet gUnknown_085F5354[] = +const struct CompressedSpriteSheet gSpriteSheet_CreditsBicycle[] = { { - .data = gIntro2BicycleTiles, + .data = sBicycle_Gfx, .size = 0x1000, - .tag = 1001 + .tag = TAG_BICYCLE }, {} }; -static const struct CompressedSpriteSheet gUnknown_085F5364[] = +// Unused +static const struct CompressedSpriteSheet sSpriteSheet_Latios[] = { { - .data = gIntro2LatiosTiles, + .data = sLatios_Gfx, .size = 0x1000, - .tag = 1004 + .tag = TAG_FLYGON_LATIOS }, {} }; -static const struct CompressedSpriteSheet gUnknown_085F5374[] = +// Unused +static const struct CompressedSpriteSheet sSpriteSheet_Latias[] = { { - .data = gIntro2LatiasTiles, + .data = sLatias_Gfx, .size = 0x1000, - .tag = 1005 + .tag = TAG_FLYGON_LATIAS }, {} }; -const struct SpritePalette gUnknown_085F5384[] = +const struct SpritePalette gSpritePalettes_Credits[] = { - { .data = gIntro2BrendanPalette, .tag = 1002 }, - { .data = gIntro2MayPalette, .tag = 1003 }, - { .data = gIntro2LatiosPalette, .tag = 1004 }, - { .data = gIntro2LatiasPalette, .tag = 1005 }, + { .data = sBrendanCredits_Pal, .tag = TAG_BRENDAN }, + { .data = sMayCredits_Pal, .tag = TAG_MAY }, + { .data = sLatios_Pal, .tag = TAG_FLYGON_LATIOS }, + { .data = sLatias_Pal, .tag = TAG_FLYGON_LATIAS }, {} }; -const struct CompressedSpriteSheet gUnknown_085F53AC[] = +const struct CompressedSpriteSheet gSpriteSheet_CreditsRivalBrendan[] = { { - .data = gIntro2BrendanTiles, + .data = sBrendanCredits_Gfx, .size = 0x2000, - .tag = 1002 + .tag = TAG_BRENDAN }, {} }; -const struct CompressedSpriteSheet gUnknown_085F53BC[] = +const struct CompressedSpriteSheet gSpriteSheet_CreditsRivalMay[] = { { - .data = gIntro2MayTiles, + .data = sMayCredits_Gfx, .size = 0x2000, - .tag = 1003 + .tag = TAG_MAY }, {} }; -EWRAM_DATA u16 gUnknown_0203BD24 = 0; -EWRAM_DATA s16 gUnknown_0203BD26 = 0; -EWRAM_DATA s16 gUnknown_0203BD28 = 0; +EWRAM_DATA u16 gIntroCredits_MovingSceneryVBase = 0; +EWRAM_DATA s16 gIntroCredits_MovingSceneryVOffset = 0; +EWRAM_DATA s16 gIntroCredits_MovingSceneryState = 0; -static void sub_817B76C(void); -static void sub_817B788(void); -static void sub_817B7A4(void); -static void sub_817B458(u8); +static void CreateCloudSprites(void); +static void CreateTreeSprites(void); +static void CreateHouseSprites(void); +static void Task_BicycleBgAnimation(u8); -void load_intro_part2_graphics(u8 a) +void LoadIntroPart2Graphics(u8 scene) { - LZ77UnCompVram(gUnknown_085F0740, (void *)(BG_CHAR_ADDR(1))); - LZ77UnCompVram(gUnknown_085F0BC0, (void *)(BG_SCREEN_ADDR(15))); - LoadPalette(&gUnknown_085F06E0, 240, 32); - switch (a) + LZ77UnCompVram(sGrass_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZ77UnCompVram(sGrass_Tilemap, (void *)(BG_SCREEN_ADDR(15))); + LoadPalette(&sGrass_Pal, 240, sizeof(sGrass_Pal)); + switch (scene) { case 0: default: - LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F1398, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F0CFC, 0, 96); - LoadCompressedSpriteSheet(gUnknown_085F5064); - LoadPalette(&gUnknown_085F1668, 256, 32); - sub_817B76C(); + // Never reached, only called with an argument of 1 + // Clouds are never used in this part of the intro + LZ77UnCompVram(sCloudsBg_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sCloudsBg_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sCloudsBg_Pal, 0, sizeof(sCloudsBg_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_Clouds); + LoadPalette(&sClouds_Pal, 256, sizeof(sClouds_Pal)); + CreateCloudSprites(); break; case 1: - LZ77UnCompVram(gUnknown_085F1824, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F1EAC, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F17E4, 0, 32); - LoadCompressedSpriteSheet(gUnknown_085F50EC); - LoadPalette(&gUnknown_085F21B0, 256, 32); - sub_817B788(); + LZ77UnCompVram(sTrees_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sTrees_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sTrees_Pal, 0, sizeof(sTrees_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_TreesSmall); + LoadPalette(&sTreesSmall_Pal, 256, sizeof(sTreesSmall_Pal)); + CreateTreeSprites(); break; } - gUnknown_0203BD28 = 0; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_MOVING; gReservedSpritePaletteCount = 8; } // Note: This is only called with a=1. -void sub_817B150(u8 a) +void SetIntroPart2BgCnt(u8 scene) { - switch (a) + // Only called with scene = 1 + switch (scene) { default: case 0: @@ -811,58 +836,58 @@ void sub_817B150(u8 a) } } -void sub_817B1C8(u8 a) +void LoadCreditsSceneGraphics(u8 scene) { - LZ77UnCompVram(gUnknown_085F0740, (void *)(BG_CHAR_ADDR(1))); - LZ77UnCompVram(gUnknown_085F0BC0, (void *)(BG_SCREEN_ADDR(15))); - switch (a) + LZ77UnCompVram(sGrass_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZ77UnCompVram(sGrass_Tilemap, (void *)(BG_SCREEN_ADDR(15))); + switch (scene) { case 0: default: - LoadPalette(&gUnknown_085F06E0, 240, 32); - LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F1398, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F0CFC, 0, 96); - LoadCompressedSpriteSheet(gUnknown_085F5064); - LZ77UnCompVram(gUnknown_085F16A8, (void *)(OBJ_VRAM0)); - LoadPalette(&gUnknown_085F1668, 256, 32); - sub_817B76C(); + LoadPalette(&sGrass_Pal, 240, sizeof(sGrass_Pal)); + LZ77UnCompVram(sCloudsBg_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sCloudsBg_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sCloudsBg_Pal, 0, sizeof(sCloudsBg_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_Clouds); + LZ77UnCompVram(sClouds_Gfx, (void *)(OBJ_VRAM0)); + LoadPalette(&sClouds_Pal, 256, sizeof(sClouds_Pal)); + CreateCloudSprites(); break; case 1: - LoadPalette(&gUnknown_085F0700, 240, 32); - LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F1398, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F0D5C, 0, 96); - LoadCompressedSpriteSheet(gUnknown_085F5064); - LZ77UnCompVram(gUnknown_085F16A8, (void *)(OBJ_VRAM0)); - LoadPalette(&gUnknown_085F1688, 256, 32); - sub_817B76C(); + LoadPalette(&sGrassAfternoon_Pal, 240, sizeof(sGrassAfternoon_Pal)); + LZ77UnCompVram(sCloudsBg_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sCloudsBg_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sCloudsBgAfternoon_Pal, 0, sizeof(sCloudsBgAfternoon_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_Clouds); + LZ77UnCompVram(sClouds_Gfx, (void *)(OBJ_VRAM0)); + LoadPalette(&sCloudsAfternoon_Pal, 256, sizeof(sCloudsAfternoon_Pal)); + CreateCloudSprites(); break; case 2: case 3: - LoadPalette(&gUnknown_085F0700, 240, 32); - LZ77UnCompVram(gUnknown_085F1824, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F1EAC, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F1804, 0, 32); - LoadCompressedSpriteSheet(gUnknown_085F50EC); - LoadPalette(&gUnknown_085F1804, 256, 32); - sub_817B788(); + LoadPalette(&sGrassAfternoon_Pal, 240, sizeof(sGrassAfternoon_Pal)); + LZ77UnCompVram(sTrees_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sTrees_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sTreesAfternoon_Pal, 0, sizeof(sTreesAfternoon_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_TreesSmall); + LoadPalette(&sTreesAfternoon_Pal, 256, sizeof(sTreesAfternoon_Pal)); + CreateTreeSprites(); break; case 4: - LoadPalette(&gUnknown_085F0720, 240, 32); - LZ77UnCompVram(gUnknown_085F235C, (void *)(VRAM)); - LZ77UnCompVram(gUnknown_085F2568, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&gUnknown_085F231C, 0, 64); - LoadCompressedSpriteSheet(gUnknown_085F5180); - LoadPalette(&gUnknown_085F2548, 256, 32); - sub_817B7A4(); + LoadPalette(&sGrassNight_Pal, 240, sizeof(sGrassNight_Pal)); + LZ77UnCompVram(sHouses_Gfx, (void *)(VRAM)); + LZ77UnCompVram(sHouses_Tilemap, (void *)(BG_SCREEN_ADDR(6))); + LoadPalette(&sHouses_Pal, 0, sizeof(sHouses_Pal)); + LoadCompressedSpriteSheet(sSpriteSheet_HouseSilhouette); + LoadPalette(&sHouseSilhouette_Pal, 256, sizeof(sHouseSilhouette_Pal)); + CreateHouseSprites(); break; } gReservedSpritePaletteCount = 8; - gUnknown_0203BD28 = 0; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_MOVING; } -void sub_817B3A8(u8 a) +void SetCreditsSceneBgCnt(u8 scene) { SetGpuReg(REG_OFFSET_BG3CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(0) @@ -885,77 +910,91 @@ void sub_817B3A8(u8 a) | DISPCNT_OBJ_ON); } -u8 CreateBicycleAnimationTask(u8 a, u16 b, u16 c, u16 d) -{ - u8 taskId = CreateTask(&sub_817B458, 0); - - gTasks[taskId].data[0] = a; - gTasks[taskId].data[1] = b; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[3] = 0; - gTasks[taskId].data[4] = c; - gTasks[taskId].data[5] = 0; - gTasks[taskId].data[6] = 0; - gTasks[taskId].data[7] = d; - gTasks[taskId].data[8] = 8; - gTasks[taskId].data[9] = 0; - sub_817B458(taskId); +#define tMode data[0] // Can be 0-2, but only != 0 matters. Determines vertical movement for bg2 +#define tBg1Speed data[1] +#define tBg1PosHi data[2] +#define tBg1PosLo data[3] +#define tBg2Speed data[4] +#define tBg2PosHi data[5] +#define tBg2PosLo data[6] +#define tBg3Speed data[7] +#define tBg3PosHi data[8] +#define tBg3PosLo data[9] + +// Create task that manages the moving backgrounds during the bicycle ride +u8 CreateBicycleBgAnimationTask(u8 mode, u16 bg1Speed, u16 bg2Speed, u16 bg3Speed) +{ + u8 taskId = CreateTask(Task_BicycleBgAnimation, 0); + + gTasks[taskId].tMode = mode; + gTasks[taskId].tBg1Speed = bg1Speed; + gTasks[taskId].tBg1PosHi = 0; + gTasks[taskId].tBg1PosLo = 0; + gTasks[taskId].tBg2Speed = bg2Speed; + gTasks[taskId].tBg2PosHi = 0; + gTasks[taskId].tBg2PosLo = 0; + gTasks[taskId].tBg3Speed = bg3Speed; + gTasks[taskId].tBg3PosHi = 8; + gTasks[taskId].tBg3PosLo = 0; + Task_BicycleBgAnimation(taskId); return taskId; } -static void sub_817B458(u8 taskId) +static void Task_BicycleBgAnimation(u8 taskId) { - s16 data1; - s16 data4; - s16 data7; - s32 r2; + s16 bg1Speed; + s16 bg2Speed; + s16 bg3Speed; + s32 offset; - data1 = gTasks[taskId].data[1]; - if (data1 != 0) + // Move BG1 + bg1Speed = gTasks[taskId].tBg1Speed; + if (bg1Speed != 0) { - r2 = (gTasks[taskId].data[2] << 16) + (u16)gTasks[taskId].data[3]; - r2 -= (u16)data1 << 4; - gTasks[taskId].data[2] = r2 >> 16; - gTasks[taskId].data[3] = r2; - SetGpuReg(REG_OFFSET_BG1HOFS, gTasks[taskId].data[2]); - SetGpuReg(REG_OFFSET_BG1VOFS, gUnknown_0203BD24 + gUnknown_0203BD26); + offset = (gTasks[taskId].tBg1PosHi << 16) + (u16)gTasks[taskId].tBg1PosLo; + offset -= (u16)bg1Speed << 4; + gTasks[taskId].tBg1PosHi = offset >> 16; + gTasks[taskId].tBg1PosLo = offset; + SetGpuReg(REG_OFFSET_BG1HOFS, gTasks[taskId].tBg1PosHi); + SetGpuReg(REG_OFFSET_BG1VOFS, gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); } - data4 = gTasks[taskId].data[4]; - if (data4 != 0) + // Move BG2 + bg2Speed = gTasks[taskId].tBg2Speed; + if (bg2Speed != 0) { - r2 = (gTasks[taskId].data[5] << 16) + (u16)gTasks[taskId].data[6]; - r2 -= (u16)data4 << 4; - gTasks[taskId].data[5] = r2 >> 16; - gTasks[taskId].data[6] = r2; - SetGpuReg(REG_OFFSET_BG2HOFS, gTasks[taskId].data[5]); - if (gTasks[taskId].data[0] != 0) - SetGpuReg(REG_OFFSET_BG2VOFS, gUnknown_0203BD24 + gUnknown_0203BD26); + offset = (gTasks[taskId].tBg2PosHi << 16) + (u16)gTasks[taskId].tBg2PosLo; + offset -= (u16)bg2Speed << 4; + gTasks[taskId].tBg2PosHi = offset >> 16; + gTasks[taskId].tBg2PosLo = offset; + SetGpuReg(REG_OFFSET_BG2HOFS, gTasks[taskId].tBg2PosHi); + if (gTasks[taskId].tMode != 0) + SetGpuReg(REG_OFFSET_BG2VOFS, gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); else - SetGpuReg(REG_OFFSET_BG2VOFS, gUnknown_0203BD24); + SetGpuReg(REG_OFFSET_BG2VOFS, gIntroCredits_MovingSceneryVBase); } - data7 = gTasks[taskId].data[7]; - if (data7 != 0) + // Move BG3 + bg3Speed = gTasks[taskId].tBg3Speed; + if (bg3Speed != 0) { - r2 = (gTasks[taskId].data[8] << 16) + (u16)gTasks[taskId].data[9]; - r2 -= (u16)data7 << 4; - gTasks[taskId].data[8] = r2 >> 16; - gTasks[taskId].data[9] = r2; - SetGpuReg(REG_OFFSET_BG3HOFS, gTasks[taskId].data[8]); - SetGpuReg(REG_OFFSET_BG3VOFS, gUnknown_0203BD24); + offset = (gTasks[taskId].tBg3PosHi << 16) + (u16)gTasks[taskId].tBg3PosLo; + offset -= (u16)bg3Speed << 4; + gTasks[taskId].tBg3PosHi = offset >> 16; + gTasks[taskId].tBg3PosLo = offset; + SetGpuReg(REG_OFFSET_BG3HOFS, gTasks[taskId].tBg3PosHi); + SetGpuReg(REG_OFFSET_BG3VOFS, gIntroCredits_MovingSceneryVBase); } } -void sub_817B540(u8 mode) +void CycleSceneryPalette(u8 scene) { u16 x; u16 y; - switch (mode) + switch (scene) { case 0: default: - /* stuff */ if (gMain.vblankCounter1 & 3 || gPaletteFade.active) break; if (gMain.vblankCounter1 & 4) @@ -968,149 +1007,159 @@ void sub_817B540(u8 mode) x = gPlttBufferUnfaded[10]; y = gPlttBufferUnfaded[9]; } - LoadPalette(&x, 9, 2); - LoadPalette(&y, 10, 2); + LoadPalette(&x, 9, sizeof(x)); + LoadPalette(&y, 10, sizeof(y)); break; case 2: if (gMain.vblankCounter1 & 3 || gPaletteFade.active) break; if (gMain.vblankCounter1 & 4) { - x = 0x3D27; - y = 0x295; + x = RGB(7, 9, 15); + y = RGB(21, 20, 0); } else { - x = 0x31C; - y = 0x3D27; + x = RGB(28, 24, 0); + y = RGB(7, 9, 15); } - LoadPalette(&x, 12, 2); - LoadPalette(&y, 13, 2); + LoadPalette(&x, 12, sizeof(x)); + LoadPalette(&y, 13, sizeof(y)); break; case 1: break; } } -static void sub_817B62C(struct Sprite *sprite) +static void SpriteCB_MovingScenery(struct Sprite *sprite) { - s32 var; - s16 var2 = gUnknown_0203BD28; + s32 x; + s16 state = gIntroCredits_MovingSceneryState; - if (var2 != 2) + if (state != INTROCRED_SCENERY_FROZEN) { - switch (var2) + switch (state) { - default: + default: // INTROCRED_SCENERY_DESTROY DestroySprite(sprite); break; - case 0: - var = ((sprite->pos1.x << 16) | (u16)sprite->data[2]) + (u16)sprite->data[1]; - sprite->pos1.x = var >> 16; - sprite->data[2] = var; + case INTROCRED_SCENERY_MOVING: + x = ((sprite->pos1.x << 16) | (u16)sprite->data[2]) + (u16)sprite->data[1]; + sprite->pos1.x = x >> 16; + sprite->data[2] = x; if (sprite->pos1.x > 0xFF) sprite->pos1.x = -0x20; if (sprite->data[0]) - sprite->pos2.y = -(gUnknown_0203BD24 + gUnknown_0203BD26); + sprite->pos2.y = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); else - sprite->pos2.y = -gUnknown_0203BD24; + sprite->pos2.y = -gIntroCredits_MovingSceneryVBase; break; } } } -static void sub_817B698(u8 a, const struct IntroCreditsSpriteMetadata *b, const union AnimCmd *const *c, u8 d) +static void CreateMovingScenerySprites(bool8 a, const struct IntroCreditsSpriteMetadata *metadata, const union AnimCmd *const *anims, u8 numSprites) { u8 i; - for(i = 0; i < d; i++) + for(i = 0; i < numSprites; i++) { - u8 sprite = CreateSprite(&gUnknown_085F504C, b[i].x, b[i].y, b[i].subpriority); - CalcCenterToCornerVec(&gSprites[sprite], b[i].shape, b[i].size, ST_OAM_AFFINE_OFF); + u8 sprite = CreateSprite(&sSpriteTemplate_MovingScenery, metadata[i].x, metadata[i].y, metadata[i].subpriority); + CalcCenterToCornerVec(&gSprites[sprite], metadata[i].shape, metadata[i].size, ST_OAM_AFFINE_OFF); gSprites[sprite].oam.priority = 3; - gSprites[sprite].oam.shape = b[i].shape; - gSprites[sprite].oam.size = b[i].size; + gSprites[sprite].oam.shape = metadata[i].shape; + gSprites[sprite].oam.size = metadata[i].size; gSprites[sprite].oam.paletteNum = 0; - gSprites[sprite].anims = c; - StartSpriteAnim(&gSprites[sprite], b[i].animNum); + gSprites[sprite].anims = anims; + StartSpriteAnim(&gSprites[sprite], metadata[i].animNum); gSprites[sprite].data[0] = a; - gSprites[sprite].data[1] = b[i].xOff; + gSprites[sprite].data[1] = metadata[i].xOff; gSprites[sprite].data[2] = 0; } } -static void sub_817B76C(void) +static void CreateCloudSprites(void) { - sub_817B698(0, gUnknown_085F50A4, gUnknown_085F5094, 9); + CreateMovingScenerySprites(FALSE, sSpriteMetadata_Clouds, sAnims_Clouds, 9); } -static void sub_817B788(void) +static void CreateTreeSprites(void) { - sub_817B698(1, gUnknown_085F5120, gUnknown_085F5114, 12); + CreateMovingScenerySprites(TRUE, sSpriteMetadata_Trees, sAnims_TreesSmall, 12); } -static void sub_817B7A4(void) +static void CreateHouseSprites(void) { - sub_817B698(1, gUnknown_085F519C, gUnknown_085F5198, 6); + CreateMovingScenerySprites(TRUE, sSpriteMetadata_HouseSilhouette, sAnims_HouseSilhouette, 6); } -static void nullsub_65(struct Sprite *sprite) +static void SpriteCB_Player(struct Sprite *sprite) { } -static void sub_817B7C4(struct Sprite* sprite) +#define sPlayerSpriteId data[0] + +static void SpriteCB_Bicycle(struct Sprite* sprite) { - sprite->invisible = gSprites[sprite->data[0]].invisible; - sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y + 8; - sprite->pos2.x = gSprites[sprite->data[0]].pos2.x; - sprite->pos2.y = gSprites[sprite->data[0]].pos2.y; + sprite->invisible = gSprites[sprite->sPlayerSpriteId].invisible; + sprite->pos1.x = gSprites[sprite->sPlayerSpriteId].pos1.x; + sprite->pos1.y = gSprites[sprite->sPlayerSpriteId].pos1.y + 8; + sprite->pos2.x = gSprites[sprite->sPlayerSpriteId].pos2.x; + sprite->pos2.y = gSprites[sprite->sPlayerSpriteId].pos2.y; } -u8 intro_create_brendan_sprite(s16 a, s16 b) +u8 CreateIntroBrendanSprite(s16 x, s16 y) { - u8 sprite = CreateSprite(&gUnknown_085F51EC, a, b, 2); - u8 brendan = CreateSprite(&gUnknown_085F523C, a, b + 8, 3); - gSprites[brendan].data[0] = sprite; - return sprite; + u8 playerSpriteId = CreateSprite(&sSpriteTemplate_Brendan, x, y, 2); + u8 bicycleSpriteId = CreateSprite(&sSpriteTemplate_BrendanBicycle, x, y + 8, 3); + gSprites[bicycleSpriteId].sPlayerSpriteId = playerSpriteId; + return playerSpriteId; } -u8 intro_create_may_sprite(s16 a, s16 b) +u8 CreateIntroMaySprite(s16 x, s16 y) { - u8 sprite = CreateSprite(&gUnknown_085F5204, a, b, 2); - u8 may = CreateSprite(&gUnknown_085F5254, a, b + 8, 3); - gSprites[may].data[0] = sprite; - return sprite; + u8 playerSpriteId = CreateSprite(&sSpriteTemplate_May, x, y, 2); + u8 bicycleSpriteId = CreateSprite(&sSpriteTemplate_MayBicycle, x, y + 8, 3); + gSprites[bicycleSpriteId].sPlayerSpriteId = playerSpriteId; + return playerSpriteId; } -static void nullsub_66(struct Sprite *sprite) +#undef sPlayerSpriteId + +static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite) { } -static void sub_817B8E8(struct Sprite* sprite) +#define sLeftSpriteId data[0] + +static void SpriteCB_FlygonRightHalf(struct Sprite* sprite) { - sprite->invisible = gSprites[sprite->data[0]].invisible; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; - sprite->pos2.x = gSprites[sprite->data[0]].pos2.x; - sprite->pos2.y = gSprites[sprite->data[0]].pos2.y; + sprite->invisible = gSprites[sprite->sLeftSpriteId].invisible; + sprite->pos1.y = gSprites[sprite->sLeftSpriteId].pos1.y; + sprite->pos2.x = gSprites[sprite->sLeftSpriteId].pos2.x; + sprite->pos2.y = gSprites[sprite->sLeftSpriteId].pos2.y; } -static u8 sub_817B948(s16 a, s16 b) +// In RS these were for Latios/Latias. In Emerald both are replaced with Flygon and now only 1 is used +static u8 CreateIntroFlygonSprite_Unused(s16 x, s16 y) { - u8 sprite = CreateSprite(&gUnknown_085F528C, a - 32, b, 5); - u8 latios = CreateSprite(&gUnknown_085F528C, a + 32, b, 6); - gSprites[latios].data[0] = sprite; - StartSpriteAnim(&gSprites[latios], 1); - gSprites[latios].callback = &sub_817B8E8; - return sprite; + u8 leftSpriteId = CreateSprite(&sSpriteTemplate_FlygonLatios, x - 32, y, 5); + u8 rightSpriteId = CreateSprite(&sSpriteTemplate_FlygonLatios, x + 32, y, 6); + gSprites[rightSpriteId].sLeftSpriteId = leftSpriteId; + StartSpriteAnim(&gSprites[rightSpriteId], 1); + gSprites[rightSpriteId].callback = &SpriteCB_FlygonRightHalf; + return leftSpriteId; } -u8 intro_create_flygon_sprite(s16 a, s16 b) + +u8 CreateIntroFlygonSprite(s16 x, s16 y) { - u8 sprite = CreateSprite(&gUnknown_085F52A4, a - 32, b, 5); - u8 flygon = CreateSprite(&gUnknown_085F52A4, a + 32, b, 6); - gSprites[flygon].data[0] = sprite; - StartSpriteAnim(&gSprites[flygon], 1); - gSprites[flygon].callback = &sub_817B8E8; - return sprite; + u8 leftSpriteId = CreateSprite(&sSpriteTemplate_FlygonLatias, x - 32, y, 5); + u8 rightSpriteId = CreateSprite(&sSpriteTemplate_FlygonLatias, x + 32, y, 6); + gSprites[rightSpriteId].sLeftSpriteId = leftSpriteId; + StartSpriteAnim(&gSprites[rightSpriteId], 1); + gSprites[rightSpriteId].callback = &SpriteCB_FlygonRightHalf; + return leftSpriteId; } + +#undef sLeftSpriteId diff --git a/src/title_screen.c b/src/title_screen.c index f86a0b0b3ad9..f2c609fecc4b 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -64,7 +64,9 @@ static const u32 sTitleScreenCloudsGfx[] = INCBIN_U32("graphics/title_screen/clo -const u16 gIntroWaterDropAlphaBlend[] = +// Used to blend "Emerald Version" as it passes over over the Pokémon banner. +// Also used by the intro to blend the Game Freak name/logo in and out as they appear and disappear +const u16 gTitleScreenAlphaBlend[64] = { BLDALPHA_BLEND(16, 0), BLDALPHA_BLEND(16, 1), @@ -364,7 +366,7 @@ static void SpriteCB_VersionBannerLeft(struct Sprite *sprite) sprite->pos1.y++; if (sprite->data[0] != 0) sprite->data[0]--; - SetGpuReg(REG_OFFSET_BLDALPHA, gIntroWaterDropAlphaBlend[sprite->data[0]]); + SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[sprite->data[0]]); } } @@ -388,7 +390,7 @@ static void SpriteCB_PressStartCopyrightBanner(struct Sprite *sprite) { sprite->data[1]++; // Alternate between hidden and shown every 16th frame - if (sprite->data[1] & 0x10) + if (sprite->data[1] & 16) sprite->invisible = FALSE; else sprite->invisible = TRUE; From 357c5439f5170ec1ebb1fe52c00d8d934b65c6bc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 28 Mar 2021 23:56:42 -0400 Subject: [PATCH 061/762] Document some credits --- graphics/credits/credits.pal | 67 ++ graphics/credits/credits_1.pal | 19 - graphics/credits/credits_2.pal | 19 - graphics/credits/credits_3.pal | 19 - graphics/credits/credits_4.pal | 19 - include/credits.h | 4 - include/intro_credits_graphics.h | 2 +- src/credits.c | 1340 +++++++----------------------- src/data/credits.h | 787 ++++++++++++++++++ src/intro_credits_graphics.c | 16 +- 10 files changed, 1153 insertions(+), 1139 deletions(-) create mode 100644 graphics/credits/credits.pal delete mode 100644 graphics/credits/credits_1.pal delete mode 100644 graphics/credits/credits_2.pal delete mode 100644 graphics/credits/credits_3.pal delete mode 100644 graphics/credits/credits_4.pal create mode 100644 src/data/credits.h diff --git a/graphics/credits/credits.pal b/graphics/credits/credits.pal new file mode 100644 index 000000000000..d086095d8ba5 --- /dev/null +++ b/graphics/credits/credits.pal @@ -0,0 +1,67 @@ +JASC-PAL +0100 +64 +0 0 0 +255 255 255 +164 164 164 +255 230 123 +255 82 41 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +255 230 123 +255 82 41 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +131 65 32 +16 0 0 +8 139 65 +8 8 0 +8 8 0 +8 8 0 +148 131 32 +16 8 0 +0 74 65 +16 65 65 +131 131 32 +148 131 65 +8 139 65 +8 139 0 +8 8 32 +148 131 0 +148 65 65 +16 74 65 +0 139 65 +0 131 65 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/credits/credits_1.pal b/graphics/credits/credits_1.pal deleted file mode 100644 index 222be71012a0..000000000000 --- a/graphics/credits/credits_1.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -255 255 255 -164 164 164 -255 230 123 -255 82 41 -0 0 0 -0 0 0 -0 0 0 -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/credits/credits_2.pal b/graphics/credits/credits_2.pal deleted file mode 100644 index 7dac48572e21..000000000000 --- a/graphics/credits/credits_2.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -255 230 123 -255 82 41 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -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/credits/credits_3.pal b/graphics/credits/credits_3.pal deleted file mode 100644 index cbd66ec0cc5a..000000000000 --- a/graphics/credits/credits_3.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -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 -131 65 32 -16 0 0 -8 139 65 -8 8 0 -8 8 0 -8 8 0 -148 131 32 -16 8 0 diff --git a/graphics/credits/credits_4.pal b/graphics/credits/credits_4.pal deleted file mode 100644 index 2df49dc85b62..000000000000 --- a/graphics/credits/credits_4.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 74 65 -16 65 65 -131 131 32 -148 131 65 -8 139 65 -8 139 0 -8 8 32 -148 131 0 -148 65 65 -16 74 65 -0 139 65 -0 131 65 -0 0 0 -0 0 0 -0 0 0 -0 0 0 diff --git a/include/credits.h b/include/credits.h index f7dfa9997045..2e8c7e0c3cac 100644 --- a/include/credits.h +++ b/include/credits.h @@ -1,12 +1,8 @@ #ifndef GUARD_CREDITS_H #define GUARD_CREDITS_H -// Exported type declarations - -// Exported RAM declarations extern EWRAM_DATA bool8 gHasHallOfFameRecords; -// Exported ROM declarations void CB2_StartCreditsSequence(void); #endif // GUARD_CREDITS_H diff --git a/include/intro_credits_graphics.h b/include/intro_credits_graphics.h index 431446ed24d1..df3854aef029 100644 --- a/include/intro_credits_graphics.h +++ b/include/intro_credits_graphics.h @@ -3,7 +3,7 @@ // States for gIntroCredits_MovingSceneryState enum { - INTROCRED_SCENERY_MOVING, + INTROCRED_SCENERY_NORMAL, INTROCRED_SCENERY_DESTROY, INTROCRED_SCENERY_FROZEN, }; diff --git a/src/credits.c b/src/credits.c index f39c0ff8577b..16d71f3e948b 100644 --- a/src/credits.c +++ b/src/credits.c @@ -23,71 +23,21 @@ #include "event_data.h" #include "random.h" -enum -{ - PAGE_TITLE, - PAGE_DIRECTOR, - PAGE_ART_DIRECTOR, - PAGE_WORLD_DIRECTOR, - PAGE_LEAD_PROGRAMMER, - PAGE_PROGRAMMERS_1, - PAGE_PROGRAMMERS_2, - PAGE_PROGRAMMERS_3, - PAGE_PROGRAMMERS_4, - PAGE_GRAPHIC_DESIGNERS_1, - PAGE_GRAPHIC_DESIGNERS_2, - PAGE_GRAPHIC_DESIGNERS_3, - PAGE_MUSIC_COMPOSITION, - PAGE_SOUND_EFFECTS, - PAGE_GAME_DESIGNERS_1, - PAGE_GAME_DESIGNERS_2, - PAGE_GAME_DESIGNERS_3, - PAGE_SCENARIO_PLOT, - PAGE_SCENARIO, - PAGE_SCRIPT_DESIGNERS, - PAGE_MAP_DESIGNERS, - PAGE_BATTLE_FRONTIER_DATA, - PAGE_PARAMETRIC_DESIGNERS, - PAGE_POKEDEX_TEXT, - PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_1, - PAGE_PKMN_DESIGNERS_1, - PAGE_PKMN_DESIGNERS_2, - PAGE_PKMN_DESIGNERS_3, - PAGE_PKMN_DESIGNERS_4, - PAGE_SUPPORT_PROGRAMMERS, - PAGE_NCL_PRODUCT_TESTING, - PAGE_PACKAGE_AND_MANUAL, - PAGE_SPECIAL_THANKS_1, - PAGE_SPECIAL_THANKS_2, - PAGE_SPECIAL_THANKS_3, - PAGE_SPECIAL_THANKS_4, - PAGE_INFORMATION_SUPERVISORS, - PAGE_ARTWORK_1, - PAGE_ARTWORK_2, - PAGE_ARTWORK_3, - PAGE_COORDINATORS, - PAGE_ENGLISH_VERSION, - PAGE_TRANSLATOR, - PAGE_TEXT_EDITOR, - PAGE_NCL_COORDINATOR, - PAGE_PROGRAMMERS_5, - PAGE_GRAPHIC_DESIGNER, - PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_2, - PAGE_NOA_TESTING, - PAGE_BRAILLE_CODE_CHECK_1, - PAGE_BRAILLE_CODE_CHECK_2, - PAGE_SPECIAL_THANKS_5, - PAGE_TASK_MANAGERS, - PAGE_PRODUCERS, - PAGE_EXECUTIVE_DIRECTOR, - PAGE_EXECUTIVE_PRODUCERS_1, - PAGE_EXECUTIVE_PRODUCERS_2, - PAGE_COUNT -}; - #define COLOR_DARK_GREEN RGB(7, 11, 6) #define COLOR_LIGHT_GREEN RGB(13, 20, 12) +#define TAG_MON_BG 1001 + +// Positions for the Pokémon images +enum { + POS_LEFT, + POS_CENTER, + POS_RIGHT, +}; + +#define tPlayerSpriteId data[5] +#define tRivalSpriteId data[6] + enum { TDA_0 = 0, @@ -142,30 +92,50 @@ struct CreditsData struct CreditsEntry { - u8 var_0; + u8 unk; // Never read bool8 isTitle; const u8 *text; }; -static EWRAM_DATA s16 gUnknown_0203BCE0 = 0; -static EWRAM_DATA u16 gUnknown_0203BCE2 = 0; // TASK A +static EWRAM_DATA s16 sUnkVar = 0; // Never read, only set to 0 +static EWRAM_DATA u16 sSavedTaskId = 0; EWRAM_DATA bool8 gHasHallOfFameRecords = 0; -static EWRAM_DATA u8 gUnknown_0203BCE5 = 0; +static EWRAM_DATA bool8 sUsedSpeedUp = 0; // Never read static EWRAM_DATA struct CreditsData *sCreditsData = {0}; -static const u16 gUnknown_085E56F0[][16] = -{ - INCBIN_U16("graphics/credits/credits_1.gbapal"), - INCBIN_U16("graphics/credits/credits_2.gbapal"), - INCBIN_U16("graphics/credits/credits_3.gbapal"), - INCBIN_U16("graphics/credits/credits_4.gbapal"), -}; - +static const u16 sCredits_Pal[] = INCBIN_U16("graphics/credits/credits.gbapal"); static const u32 sCreditsCopyrightEnd_Gfx[] = INCBIN_U32("graphics/credits/the_end_copyright.4bpp.lz"); -static void sub_81772B8(struct Sprite *sprite); +static void SpriteCB_CreditsMonBg(struct Sprite *); +static void Task_WaitPaletteFade(u8); +static void Task_ProgressCreditTasks(u8); +static void sub_8175808(u8); +static void c2_080C9BFC(u8); +static void Task_CreditsLoadGrassScene(u8); +static void sub_81758A4(u8); +static void Task_CreditsTheEnd1(u8); +static void Task_CreditsTheEnd2(u8); +static void Task_CreditsTheEnd3(u8); +static void Task_CreditsTheEnd4(u8); +static void Task_CreditsTheEnd5(u8); +static void Task_CreditsTheEnd6(u8); +static void Task_CreditsSoftReset(u8); +static void ResetGpuAndVram(void); +static void sub_8175DA0(u8); +static u8 CheckChangeScene(u8, u8); +static void sub_81760FC(u8); +static void sub_817651C(u8); +static void sub_817624C(u8); +static bool8 sub_8176AB0(u8 data, u8); +static void ResetCreditsTasks(u8); +static void LoadTheEndScreen(u16, u16, u16); +static void DrawTheEnd(u16, u16); +static void SpriteCB_PlayerCyclist(struct Sprite *); +static void SpriteCB_RivalCyclist(struct Sprite *); +static u8 CreateCreditsMonSprite(u16, s16, s16, u16); +static void DeterminePokemonToShow(void); -static const u8 sTheEnd_LetterTMap[] = +static const u8 sTheEnd_LetterMap_T[] = { 0, 1, 0, 0xFF, 1, 0xFF, @@ -174,7 +144,7 @@ static const u8 sTheEnd_LetterTMap[] = 0xFF, 1, 0xFF, }; -static const u8 sTheEnd_LetterHMap[] = +static const u8 sTheEnd_LetterMap_H[] = { 1, 0xFF, 1, 1, 0xFF, 1, @@ -183,7 +153,7 @@ static const u8 sTheEnd_LetterHMap[] = 1, 0xFF, 1, }; -static const u8 sTheEnd_LetterEMap[] = +static const u8 sTheEnd_LetterMap_E[] = { 1, 0, 0, 1, 0xFF, 0xFF, @@ -192,7 +162,7 @@ static const u8 sTheEnd_LetterEMap[] = 1, 0x80, 0x80, }; -static const u8 sTheEnd_LetterNMap[] = +static const u8 sTheEnd_LetterMap_N[] = { 1, 3, 1, 1, 4, 1, @@ -201,7 +171,7 @@ static const u8 sTheEnd_LetterNMap[] = 1, 0xC3, 1, }; -static const u8 sTheEnd_LetterDMap[] = +static const u8 sTheEnd_LetterMap_D[] = { 1, 6, 7, 1, 8, 9, @@ -210,729 +180,7 @@ static const u8 sTheEnd_LetterDMap[] = 1, 0x86, 0x87, }; -static const u8 sCreditsText_EmptyString[] = _(""); -static const u8 sCreditsText_PkmnEmeraldVersion[] = _("POKéMON EMERALD VERSION"); -static const u8 sCreditsText_Credits[] = _("Credits"); -static const u8 sCreditsText_ExecutiveDirector[] = _("Executive Director"); -static const u8 sCreditsText_Director[] = _("Director"); -static const u8 sCreditsText_ArtDirector[] = _("Art Director"); -static const u8 sCreditsText_BattleDirector[] = _("Battle Director"); -static const u8 sCreditsText_MainProgrammer[] = _("Main Programmer"); -static const u8 sCreditsText_BattleSystemPgrms[] = _("Battle System Programmers"); -static const u8 sCreditsText_FieldSystemPgrms[] = _("Field System Programmer"); -static const u8 sCreditsText_Programmers[] = _("Programmers"); -static const u8 sCreditsText_MainGraphicDesigner[] = _("Main Graphic Designer"); -static const u8 sCreditsText_GraphicDesigners[] = _("Graphic Designers"); -static const u8 sCreditsText_PkmnDesigners[] = _("POKéMON Designers"); -static const u8 sCreditsText_MusicComposition[] = _("Music Composition"); -static const u8 sCreditsText_SoundEffectsAndPkmnVoices[] = _("Sound Effects & POKéMON Voices"); -static const u8 sCreditsText_GameDesigners[] = _("Game Designers"); -static const u8 sCreditsText_ScenarioPlot[] = _("Scenario Plot"); -static const u8 sCreditsText_Scenario[] = _("Scenario"); -static const u8 sCreditsText_ScriptDesigners[] = _("Script Designers"); -static const u8 sCreditsText_MapDesigners[] = _("Map Designers"); -static const u8 sCreditsText_MapDataDesigners[] = _("Map Data Designers"); -static const u8 sCreditsText_ParametricDesigners[] = _("Parametric Designers"); -static const u8 sCreditsText_PokedexText[] = _("POKéDEX Text"); -static const u8 sCreditsText_EnvAndToolPgrms[] = _("Environment & Tool Programmers"); -static const u8 sCreditsText_NCLProductTesting[] = _("NCL Product Testing"); -static const u8 sCreditsText_SpecialThanks[] = _("Special Thanks"); -static const u8 sCreditsText_Coordinators[] = _("Coordinators"); -static const u8 sCreditsText_Producers[] = _("Producers"); -static const u8 sCreditsText_ExecProducers[] = _("Executive Producers"); -static const u8 sCreditsText_InfoSupervisors[] = _("Information Supervisors"); -static const u8 sCreditsText_TaskManagers[] = _("Task Managers"); -static const u8 sCreditsText_BrailleCodeCheck[] = _("Braille Code Check"); -static const u8 sCreditsText_WorldDirector[] = _("World Director"); -static const u8 sCreditsText_BattleFrontierData[] = _("Battle Frontier Data"); -static const u8 sCreditsText_SupportProgrammers[] = _("Support Programmers"); -static const u8 sCreditsText_Artwork[] = _("Artwork"); -static const u8 sCreditsText_LeadProgrammer[] = _("Lead Programmer"); -static const u8 sCreditsText_LeadGraphicArtist[] = _("Lead Graphic Artist"); -static const u8 sCreditsText_SatoshiTajiri[] = _("Satoshi Tajiri"); -static const u8 sCreditsText_JunichiMasuda[] = _("Junichi Masuda"); -static const u8 sCreditsText_KenSugimori[] = _("Ken Sugimori"); -static const u8 sCreditsText_ShigekiMorimoto[] = _("Shigeki Morimoto"); -static const u8 sCreditsText_TetsuyaWatanabe[] = _("Tetsuya Watanabe"); -static const u8 sCreditsText_HisashiSogabe[] = _("Hisashi Sogabe"); -static const u8 sCreditsText_SosukeTamada[] = _("Sosuke Tamada"); -static const u8 sCreditsText_AkitoMori[] = _("Akito Mori"); -static const u8 sCreditsText_KeitaKagaya[] = _("Keita Kagaya"); -static const u8 sCreditsText_YoshinoriMatsuda[] = _("Yoshinori Matsuda"); -static const u8 sCreditsText_HiroyukiNakamura[] = _("Hiroyuki Nakamura"); -static const u8 sCreditsText_MasaoTaya[] = _("Masao Taya"); -static const u8 sCreditsText_SatoshiNohara[] = _("Satoshi Nohara"); -static const u8 sCreditsText_TomomichiOhta[] = _("Tomomichi Ohta"); -static const u8 sCreditsText_MiyukiIwasawa[] = _("Miyuki Iwasawa"); -static const u8 sCreditsText_TakenoriOhta[] = _("Takenori Ohta"); -static const u8 sCreditsText_HironobuYoshida[] = _("Hironobu Yoshida"); -static const u8 sCreditsText_MotofumiFujiwara[] = _("Motofumi Fujiwara"); -static const u8 sCreditsText_SatoshiOhta[] = _("Satoshi Ohta"); -static const u8 sCreditsText_AsukaIwashita[] = _("Asuka Iwashita"); -static const u8 sCreditsText_AimiTomita[] = _("Aimi Tomita"); -static const u8 sCreditsText_TakaoUnno[] = _("Takao Unno"); -static const u8 sCreditsText_KanakoEo[] = _("Kanako Eo"); -static const u8 sCreditsText_JunOkutani[] = _("Jun Okutani"); -static const u8 sCreditsText_AtsukoNishida[] = _("Atsuko Nishida"); -static const u8 sCreditsText_MuneoSaito[] = _("Muneo Saito"); -static const u8 sCreditsText_RenaYoshikawa[] = _("Rena Yoshikawa"); -static const u8 sCreditsText_GoIchinose[] = _("Go Ichinose"); -static const u8 sCreditsText_MorikazuAoki[] = _("Morikazu Aoki"); -static const u8 sCreditsText_KojiNishino[] = _("Koji Nishino"); -static const u8 sCreditsText_KenjiMatsushima[] = _("Kenji Matsushima"); -static const u8 sCreditsText_TetsujiOhta[] = _("Tetsuji Ohta"); -static const u8 sCreditsText_HitomiSato[] = _("Hitomi Sato"); -static const u8 sCreditsText_TakeshiKawachimaru[] = _("Takeshi Kawachimaru"); -static const u8 sCreditsText_TeruyukiShimoyamada[] = _("Teruyuki Shimoyamada"); -static const u8 sCreditsText_ShigeruOhmori[] = _("Shigeru Ohmori"); -static const u8 sCreditsText_TadashiTakahashi[] = _("Tadashi Takahashi"); -static const u8 sCreditsText_ToshinobuMatsumiya[] = _("Toshinobu Matsumiya"); -static const u8 sCreditsText_AkihitoTomisawa[] = _("Akihito Tomisawa"); -static const u8 sCreditsText_HirokiEnomoto[] = _("Hiroki Enomoto"); -static const u8 sCreditsText_KazuyukiTerada[] = _("Kazuyuki Terada"); -static const u8 sCreditsText_YuriSakurai[] = _("Yuri Sakurai"); -static const u8 sCreditsText_HiromiSagawa[] = _("Hiromi Sagawa"); -static const u8 sCreditsText_KenjiTominaga[] = _("Kenji Tominaga"); -static const u8 sCreditsText_YoshioTajiri[] = _("Yoshio Tajiri"); -static const u8 sCreditsText_TeikoSasaki[] = _("Teiko Sasaki"); -static const u8 sCreditsText_SachikoHamano[] = _("Sachiko Hamano"); -static const u8 sCreditsText_ChieMatsumiya[] = _("Chie Matsumiya"); -static const u8 sCreditsText_AkikoShinozaki[] = _("Akiko Shinozaki"); -static const u8 sCreditsText_AstukoFujii[] = _("Astuko Fujii"); -static const u8 sCreditsText_NozomuSaito[] = _("Nozomu Saito"); -static const u8 sCreditsText_KenkichiToyama[] = _("Kenkichi Toyama"); -static const u8 sCreditsText_SuguruNakatsui[] = _("Suguru Nakatsui"); -static const u8 sCreditsText_YumiFunasaka[] = _("Yumi Funasaka"); -static const u8 sCreditsText_NaokoYanase[] = _("Naoko Yanase"); -static const u8 sCreditsText_NCLSuperMarioClub[] = _("NCL Super Mario Club"); -static const u8 sCreditsText_AtsushiTada[] = _("Atsushi Tada"); -static const u8 sCreditsText_TakahiroOhnishi[] = _("Takahiro Ohnishi"); -static const u8 sCreditsText_NorihideOkamura[] = _("Norihide Okamura"); -static const u8 sCreditsText_HiroNakamura[] = _("Hiro Nakamura"); -static const u8 sCreditsText_HiroyukiUesugi[] = _("Hiroyuki Uesugi"); -static const u8 sCreditsText_TerukiMurakawa[] = _("Teruki Murakawa"); -static const u8 sCreditsText_AkiraKinashi[] = _("Akira Kinashi"); -static const u8 sCreditsText_MichikoTakizawa[] = _("Michiko Takizawa"); -static const u8 sCreditsText_MakikoTakada[] = _("Makiko Takada"); -static const u8 sCreditsText_TakanaoKondo[] = _("Takanao Kondo"); -static const u8 sCreditsText_AiMashima[] = _("Ai Mashima"); -static const u8 sCreditsText_GakujiNomoto[] = _("Gakuji Nomoto"); -static const u8 sCreditsText_TakehiroIzushi[] = _("Takehiro Izushi"); -static const u8 sCreditsText_HitoshiYamagami[] = _("Hitoshi Yamagami"); -static const u8 sCreditsText_KyokoWatanabe[] = _("Kyoko Watanabe"); -static const u8 sCreditsText_TakaoNakano[] = _("Takao Nakano"); -static const u8 sCreditsText_HiroyukiJinnai[] = _("Hiroyuki Jinnai"); -static const u8 sCreditsText_HiroakiTsuru[] = _("Hiroaki Tsuru"); -static const u8 sCreditsText_TsunekazIshihara[] = _("Tsunekaz Ishihara"); -static const u8 sCreditsText_SatoruIwata[] = _("Satoru Iwata"); -static const u8 sCreditsText_KazuyaSuyama[] = _("Kazuya Suyama"); -static const u8 sCreditsText_SatoshiMitsuhara[] = _("Satoshi Mitsuhara"); -static const u8 sCreditsText_JapanBrailleLibrary[] = _("Japan Braille Library"); -static const u8 sCreditsText_TomotakaKomura[] = _("Tomotaka Komura"); -static const u8 sCreditsText_MikikoOhhashi[] = _("Mikiko Ohhashi"); -static const u8 sCreditsText_DaisukeHoshino[] = _("Daisuke Hoshino"); -static const u8 sCreditsText_KenjiroIto[] = _("Kenjiro Ito"); -static const u8 sCreditsText_RuiKawaguchi[] = _("Rui Kawaguchi"); -static const u8 sCreditsText_ShunsukeKohori[] = _("Shunsuke Kohori"); -static const u8 sCreditsText_SachikoNakamichi[] = _("Sachiko Nakamichi"); -static const u8 sCreditsText_FujikoNomura[] = _("Fujiko Nomura"); -static const u8 sCreditsText_KazukiYoshihara[] = _("Kazuki Yoshihara"); -static const u8 sCreditsText_RetsujiNomoto[] = _("Retsuji Nomoto"); -static const u8 sCreditsText_AzusaTajima[] = _("Azusa Tajima"); -static const u8 sCreditsText_ShusakuEgami[] = _("Shusaku Egami"); -static const u8 sCreditsText_PackageAndManual[] = _("Package & Manual Illustration"); -static const u8 sCreditsText_EnglishVersion[] = _("English Version Coordinators"); -static const u8 sCreditsText_Translator[] = _("Translator"); -static const u8 sCreditsText_TextEditor[] = _("Text Editor"); -static const u8 sCreditsText_NCLCoordinator[] = _("NCL Coordinator"); -static const u8 sCreditsText_GraphicDesigner[] = _("Graphic Designer"); -static const u8 sCreditsText_NOAProductTesting[] = _("NOA Product Testing"); -static const u8 sCreditsText_HideyukiNakajima[] = _("Hideyuki Nakajima"); -static const u8 sCreditsText_HidenoriSaeki[] = _("Hidenori Saeki"); -static const u8 sCreditsText_YokoWatanabe[] = _("Yoko Watanabe"); -static const u8 sCreditsText_SakaeKimura[] = _("Sakae Kimura"); -static const u8 sCreditsText_ChiakiShinkai[] = _("Chiaki Shinkai"); -static const u8 sCreditsText_SethMcMahill[] = _("Seth McMahill"); -static const u8 sCreditsText_NobOgasawara[] = _("Nob Ogasawara"); -static const u8 sCreditsText_TeresaLillygren[] = _("Teresa Lillygren"); -static const u8 sCreditsText_KimikoNakamichi[] = _("Kimiko Nakamichi"); -static const u8 sCreditsText_SouichiYamamoto[] = _("Souichi Yamamoto"); -static const u8 sCreditsText_YuichiroIto[] = _("Yuichiro Ito"); -static const u8 sCreditsText_ThomasHertzog[] = _("Thomas Hertzog"); -static const u8 sCreditsText_MikaKurosawa[] = _("Mika Kurosawa"); -static const u8 sCreditsText_NationalFederationBlind[] = _("National Federation of the Blind"); -static const u8 sCreditsText_PatriciaAMaurer[] = _("Patricia A. Maurer"); -static const u8 sCreditsText_EuropeanBlindUnion[] = _("European Blind Union"); -static const u8 sCreditsText_AustralianBrailleAuthority[] = _("Australian Braille Authority"); -static const u8 sCreditsText_RoyalNewZealandFederationBlind[] = _("Royal New Zealand Federation for the Blind"); -static const u8 sCreditsText_MotoyasuTojima[] = _("Motoyasu Tojima"); -static const u8 sCreditsText_NicolaPrattBarlow[] = _("Nicola Pratt-Barlow"); -static const u8 sCreditsText_ShellieDow[] = _("Shellie Dow"); -static const u8 sCreditsText_ErikJohnson[] = _("Erik Johnson"); -static const struct CreditsEntry sCreditsEntry_EmptyString[] = { 0, FALSE, sCreditsText_EmptyString}; -static const struct CreditsEntry sCreditsEntry_PkmnEmeraldVersion[] = { 7, TRUE, sCreditsText_PkmnEmeraldVersion}; -static const struct CreditsEntry sCreditsEntry_Credits[] = {11, TRUE, sCreditsText_Credits}; -static const struct CreditsEntry sCreditsEntry_ExecutiveDirector[] = { 8, TRUE, sCreditsText_ExecutiveDirector}; -static const struct CreditsEntry sCreditsEntry_Director[] = {12, TRUE, sCreditsText_Director}; -static const struct CreditsEntry sCreditsEntry_ArtDirector[] = {10, TRUE, sCreditsText_ArtDirector}; -static const struct CreditsEntry sCreditsEntry_BattleDirector[] = {10, TRUE, sCreditsText_BattleDirector}; -static const struct CreditsEntry sCreditsEntry_MainProgrammer[] = {10, TRUE, sCreditsText_MainProgrammer}; -static const struct CreditsEntry sCreditsEntry_BattleSystemPgrms[] = { 8, TRUE, sCreditsText_BattleSystemPgrms}; -static const struct CreditsEntry sCreditsEntry_FieldSystemPgrms[] = { 7, TRUE, sCreditsText_FieldSystemPgrms}; -static const struct CreditsEntry sCreditsEntry_Programmers[] = {12, TRUE, sCreditsText_Programmers}; -static const struct CreditsEntry sCreditsEntry_MainGraphicDesigner[] = { 7, TRUE, sCreditsText_MainGraphicDesigner}; -static const struct CreditsEntry sCreditsEntry_GraphicDesigners[] = { 9, TRUE, sCreditsText_GraphicDesigners}; -static const struct CreditsEntry sCreditsEntry_PkmnDesigners[] = {10, TRUE, sCreditsText_PkmnDesigners}; -static const struct CreditsEntry sCreditsEntry_MusicComposition[] = {13, TRUE, sCreditsText_MusicComposition}; -static const struct CreditsEntry sCreditsEntry_SoundEffectsAndPkmnVoices[] = { 4, TRUE, sCreditsText_SoundEffectsAndPkmnVoices}; -static const struct CreditsEntry sCreditsEntry_GameDesigners[] = {11, TRUE, sCreditsText_GameDesigners}; -static const struct CreditsEntry sCreditsEntry_ScenarioPlot[] = {11, TRUE, sCreditsText_ScenarioPlot}; -static const struct CreditsEntry sCreditsEntry_Scenario[] = {13, TRUE, sCreditsText_Scenario}; -static const struct CreditsEntry sCreditsEntry_ScriptDesigners[] = {10, TRUE, sCreditsText_ScriptDesigners}; -static const struct CreditsEntry sCreditsEntry_MapDesigners[] = {11, TRUE, sCreditsText_MapDesigners}; -static const struct CreditsEntry sCreditsEntry_MapDataDesigners[] = { 9, TRUE, sCreditsText_MapDataDesigners}; -static const struct CreditsEntry sCreditsEntry_ParametricDesigners[] = { 9, TRUE, sCreditsText_ParametricDesigners}; -static const struct CreditsEntry sCreditsEntry_PokedexText[] = {11, TRUE, sCreditsText_PokedexText}; -static const struct CreditsEntry sCreditsEntry_EnvAndToolPgrms[] = { 6, TRUE, sCreditsText_EnvAndToolPgrms}; -static const struct CreditsEntry sCreditsEntry_NCLProductTesting[] = {11, TRUE, sCreditsText_NCLProductTesting}; -static const struct CreditsEntry sCreditsEntry_SpecialThanks[] = {10, TRUE, sCreditsText_SpecialThanks}; -static const struct CreditsEntry sCreditsEntry_Coordinators[] = {11, TRUE, sCreditsText_Coordinators}; -static const struct CreditsEntry sCreditsEntry_Producers[] = {11, TRUE, sCreditsText_Producers}; -static const struct CreditsEntry sCreditsEntry_ExecProducers[] = { 7, TRUE, sCreditsText_ExecProducers}; -static const struct CreditsEntry sCreditsEntry_InfoSupervisors[] = {10, TRUE, sCreditsText_InfoSupervisors}; -static const struct CreditsEntry sCreditsEntry_TaskManagers[] = { 8, TRUE, sCreditsText_TaskManagers}; -static const struct CreditsEntry sCreditsEntry_BrailleCodeCheck[] = {10, TRUE, sCreditsText_BrailleCodeCheck}; -static const struct CreditsEntry sCreditsEntry_WorldDirector[] = {10, TRUE, sCreditsText_WorldDirector}; -static const struct CreditsEntry sCreditsEntry_BattleFrontierData[] = { 8, TRUE, sCreditsText_BattleFrontierData}; -static const struct CreditsEntry sCreditsEntry_SupportProgrammers[] = {10, TRUE, sCreditsText_SupportProgrammers}; -static const struct CreditsEntry sCreditsEntry_Artwork[] = {12, TRUE, sCreditsText_Artwork}; -static const struct CreditsEntry sCreditsEntry_LeadProgrammer[] = {10, TRUE, sCreditsText_LeadProgrammer}; -static const struct CreditsEntry sCreditsEntry_LeadGraphicArtist[] = { 9, TRUE, sCreditsText_LeadGraphicArtist}; -static const struct CreditsEntry sCreditsEntry_SatoshiTajiri[] = {11, FALSE, sCreditsText_SatoshiTajiri}; -static const struct CreditsEntry sCreditsEntry_JunichiMasuda[] = {11, FALSE, sCreditsText_JunichiMasuda}; -static const struct CreditsEntry sCreditsEntry_KenSugimori[] = {11, FALSE, sCreditsText_KenSugimori}; -static const struct CreditsEntry sCreditsEntry_ShigekiMorimoto[] = {11, FALSE, sCreditsText_ShigekiMorimoto}; -static const struct CreditsEntry sCreditsEntry_TetsuyaWatanabe[] = {11, FALSE, sCreditsText_TetsuyaWatanabe}; -static const struct CreditsEntry sCreditsEntry_HisashiSogabe[] = {11, FALSE, sCreditsText_HisashiSogabe}; -static const struct CreditsEntry sCreditsEntry_SosukeTamada[] = {11, FALSE, sCreditsText_SosukeTamada}; -static const struct CreditsEntry sCreditsEntry_AkitoMori[] = {11, FALSE, sCreditsText_AkitoMori}; -static const struct CreditsEntry sCreditsEntry_KeitaKagaya[] = {11, FALSE, sCreditsText_KeitaKagaya}; -static const struct CreditsEntry sCreditsEntry_YoshinoriMatsuda[] = {11, FALSE, sCreditsText_YoshinoriMatsuda}; -static const struct CreditsEntry sCreditsEntry_HiroyukiNakamura[] = {11, FALSE, sCreditsText_HiroyukiNakamura}; -static const struct CreditsEntry sCreditsEntry_MasaoTaya[] = {11, FALSE, sCreditsText_MasaoTaya}; -static const struct CreditsEntry sCreditsEntry_SatoshiNohara[] = {11, FALSE, sCreditsText_SatoshiNohara}; -static const struct CreditsEntry sCreditsEntry_TomomichiOhta[] = {11, FALSE, sCreditsText_TomomichiOhta}; -static const struct CreditsEntry sCreditsEntry_MiyukiIwasawa[] = {11, FALSE, sCreditsText_MiyukiIwasawa}; -static const struct CreditsEntry sCreditsEntry_TakenoriOhta[] = {11, FALSE, sCreditsText_TakenoriOhta}; -static const struct CreditsEntry sCreditsEntry_HironobuYoshida[] = {11, FALSE, sCreditsText_HironobuYoshida}; -static const struct CreditsEntry sCreditsEntry_MotofumiFujiwara[] = {11, FALSE, sCreditsText_MotofumiFujiwara}; -static const struct CreditsEntry sCreditsEntry_SatoshiOhta[] = {11, FALSE, sCreditsText_SatoshiOhta}; -static const struct CreditsEntry sCreditsEntry_AsukaIwashita[] = {11, FALSE, sCreditsText_AsukaIwashita}; -static const struct CreditsEntry sCreditsEntry_AimiTomita[] = {11, FALSE, sCreditsText_AimiTomita}; -static const struct CreditsEntry sCreditsEntry_TakaoUnno[] = {11, FALSE, sCreditsText_TakaoUnno}; -static const struct CreditsEntry sCreditsEntry_KanakoEo[] = {11, FALSE, sCreditsText_KanakoEo}; -static const struct CreditsEntry sCreditsEntry_JunOkutani[] = {11, FALSE, sCreditsText_JunOkutani}; -static const struct CreditsEntry sCreditsEntry_AtsukoNishida[] = {11, FALSE, sCreditsText_AtsukoNishida}; -static const struct CreditsEntry sCreditsEntry_MuneoSaito[] = {11, FALSE, sCreditsText_MuneoSaito}; -static const struct CreditsEntry sCreditsEntry_RenaYoshikawa[] = {11, FALSE, sCreditsText_RenaYoshikawa}; -static const struct CreditsEntry sCreditsEntry_GoIchinose[] = {11, FALSE, sCreditsText_GoIchinose}; -static const struct CreditsEntry sCreditsEntry_MorikazuAoki[] = {11, FALSE, sCreditsText_MorikazuAoki}; -static const struct CreditsEntry sCreditsEntry_KojiNishino[] = {11, FALSE, sCreditsText_KojiNishino}; -static const struct CreditsEntry sCreditsEntry_KenjiMatsushima[] = {11, FALSE, sCreditsText_KenjiMatsushima}; -static const struct CreditsEntry sCreditsEntry_TetsujiOhta[] = {11, FALSE, sCreditsText_TetsujiOhta}; -static const struct CreditsEntry sCreditsEntry_HitomiSato[] = {11, FALSE, sCreditsText_HitomiSato}; -static const struct CreditsEntry sCreditsEntry_TakeshiKawachimaru[] = {11, FALSE, sCreditsText_TakeshiKawachimaru}; -static const struct CreditsEntry sCreditsEntry_TeruyukiShimoyamada[] = {11, FALSE, sCreditsText_TeruyukiShimoyamada}; -static const struct CreditsEntry sCreditsEntry_ShigeruOhmori[] = {11, FALSE, sCreditsText_ShigeruOhmori}; -static const struct CreditsEntry sCreditsEntry_TadashiTakahashi[] = {11, FALSE, sCreditsText_TadashiTakahashi}; -static const struct CreditsEntry sCreditsEntry_ToshinobuMatsumiya[] = {11, FALSE, sCreditsText_ToshinobuMatsumiya}; -static const struct CreditsEntry sCreditsEntry_AkihitoTomisawa[] = {11, FALSE, sCreditsText_AkihitoTomisawa}; -static const struct CreditsEntry sCreditsEntry_HirokiEnomoto[] = {11, FALSE, sCreditsText_HirokiEnomoto}; -static const struct CreditsEntry sCreditsEntry_KazuyukiTerada[] = {11, FALSE, sCreditsText_KazuyukiTerada}; -static const struct CreditsEntry sCreditsEntry_YuriSakurai[] = {11, FALSE, sCreditsText_YuriSakurai}; -static const struct CreditsEntry sCreditsEntry_HiromiSagawa[] = {11, FALSE, sCreditsText_HiromiSagawa}; -static const struct CreditsEntry sCreditsEntry_KenjiTominaga[] = {11, FALSE, sCreditsText_KenjiTominaga}; -static const struct CreditsEntry sCreditsEntry_YoshioTajiri[] = {11, FALSE, sCreditsText_YoshioTajiri}; -static const struct CreditsEntry sCreditsEntry_TeikoSasaki[] = {11, FALSE, sCreditsText_TeikoSasaki}; -static const struct CreditsEntry sCreditsEntry_SachikoHamano[] = {11, FALSE, sCreditsText_SachikoHamano}; -static const struct CreditsEntry sCreditsEntry_ChieMatsumiya[] = {11, FALSE, sCreditsText_ChieMatsumiya}; -static const struct CreditsEntry sCreditsEntry_AkikoShinozaki[] = {11, FALSE, sCreditsText_AkikoShinozaki}; -static const struct CreditsEntry sCreditsEntry_AstukoFujii[] = {11, FALSE, sCreditsText_AstukoFujii}; -static const struct CreditsEntry sCreditsEntry_NozomuSaito[] = {11, FALSE, sCreditsText_NozomuSaito}; -static const struct CreditsEntry sCreditsEntry_KenkichiToyama[] = {11, FALSE, sCreditsText_KenkichiToyama}; -static const struct CreditsEntry sCreditsEntry_SuguruNakatsui[] = {11, FALSE, sCreditsText_SuguruNakatsui}; -static const struct CreditsEntry sCreditsEntry_YumiFunasaka[] = {11, FALSE, sCreditsText_YumiFunasaka}; -static const struct CreditsEntry sCreditsEntry_NaokoYanase[] = {11, FALSE, sCreditsText_NaokoYanase}; -static const struct CreditsEntry sCreditsEntry_NCLSuperMarioClub[] = {11, FALSE, sCreditsText_NCLSuperMarioClub}; -static const struct CreditsEntry sCreditsEntry_AtsushiTada[] = {11, FALSE, sCreditsText_AtsushiTada}; -static const struct CreditsEntry sCreditsEntry_TakahiroOhnishi[] = {11, FALSE, sCreditsText_TakahiroOhnishi}; -static const struct CreditsEntry sCreditsEntry_NorihideOkamura[] = {11, FALSE, sCreditsText_NorihideOkamura}; -static const struct CreditsEntry sCreditsEntry_HiroNakamura[] = {11, FALSE, sCreditsText_HiroNakamura}; -static const struct CreditsEntry sCreditsEntry_HiroyukiUesugi[] = {11, FALSE, sCreditsText_HiroyukiUesugi}; -static const struct CreditsEntry sCreditsEntry_TerukiMurakawa[] = {11, FALSE, sCreditsText_TerukiMurakawa}; -static const struct CreditsEntry sCreditsEntry_AkiraKinashi[] = {11, FALSE, sCreditsText_AkiraKinashi}; -static const struct CreditsEntry sCreditsEntry_MichikoTakizawa[] = {11, FALSE, sCreditsText_MichikoTakizawa}; -static const struct CreditsEntry sCreditsEntry_MakikoTakada[] = {11, FALSE, sCreditsText_MakikoTakada}; -static const struct CreditsEntry sCreditsEntry_TakanaoKondo[] = {11, FALSE, sCreditsText_TakanaoKondo}; -static const struct CreditsEntry sCreditsEntry_AiMashima[] = {11, FALSE, sCreditsText_AiMashima}; -static const struct CreditsEntry sCreditsEntry_GakujiNomoto[] = {11, FALSE, sCreditsText_GakujiNomoto}; -static const struct CreditsEntry sCreditsEntry_TakehiroIzushi[] = {11, FALSE, sCreditsText_TakehiroIzushi}; -static const struct CreditsEntry sCreditsEntry_HitoshiYamagami[] = {11, FALSE, sCreditsText_HitoshiYamagami}; -static const struct CreditsEntry sCreditsEntry_KyokoWatanabe[] = {11, FALSE, sCreditsText_KyokoWatanabe}; -static const struct CreditsEntry sCreditsEntry_TakaoNakano[] = {11, FALSE, sCreditsText_TakaoNakano}; -static const struct CreditsEntry sCreditsEntry_HiroyukiJinnai[] = {11, FALSE, sCreditsText_HiroyukiJinnai}; -static const struct CreditsEntry sCreditsEntry_HiroakiTsuru[] = {11, FALSE, sCreditsText_HiroakiTsuru}; -static const struct CreditsEntry sCreditsEntry_TsunekazIshihara[] = {11, FALSE, sCreditsText_TsunekazIshihara}; -static const struct CreditsEntry sCreditsEntry_SatoruIwata[] = {11, FALSE, sCreditsText_SatoruIwata}; -static const struct CreditsEntry sCreditsEntry_KazuyaSuyama[] = {11, FALSE, sCreditsText_KazuyaSuyama}; -static const struct CreditsEntry sCreditsEntry_SatoshiMitsuhara[] = {11, FALSE, sCreditsText_SatoshiMitsuhara}; -static const struct CreditsEntry sCreditsEntry_JapanBrailleLibrary[] = { 9, FALSE, sCreditsText_JapanBrailleLibrary}; -static const struct CreditsEntry sCreditsEntry_TomotakaKomura[] = {11, FALSE, sCreditsText_TomotakaKomura}; -static const struct CreditsEntry sCreditsEntry_MikikoOhhashi[] = {11, FALSE, sCreditsText_MikikoOhhashi}; -static const struct CreditsEntry sCreditsEntry_DaisukeHoshino[] = {11, FALSE, sCreditsText_DaisukeHoshino}; -static const struct CreditsEntry sCreditsEntry_KenjiroIto[] = {11, FALSE, sCreditsText_KenjiroIto}; -static const struct CreditsEntry sCreditsEntry_RuiKawaguchi[] = {11, FALSE, sCreditsText_RuiKawaguchi}; -static const struct CreditsEntry sCreditsEntry_ShunsukeKohori[] = {11, FALSE, sCreditsText_ShunsukeKohori}; -static const struct CreditsEntry sCreditsEntry_SachikoNakamichi[] = {11, FALSE, sCreditsText_SachikoNakamichi}; -static const struct CreditsEntry sCreditsEntry_FujikoNomura[] = {11, FALSE, sCreditsText_FujikoNomura}; -static const struct CreditsEntry sCreditsEntry_KazukiYoshihara[] = {11, FALSE, sCreditsText_KazukiYoshihara}; -static const struct CreditsEntry sCreditsEntry_RetsujiNomoto[] = {11, FALSE, sCreditsText_RetsujiNomoto}; -static const struct CreditsEntry sCreditsEntry_AzusaTajima[] = {11, FALSE, sCreditsText_AzusaTajima}; -static const struct CreditsEntry sCreditsEntry_ShusakuEgami[] = {11, FALSE, sCreditsText_ShusakuEgami}; -static const struct CreditsEntry sCreditsEntry_PackageAndManual[] = { 0, TRUE, sCreditsText_PackageAndManual}; -static const struct CreditsEntry sCreditsEntry_EnglishVersion[] = { 0, TRUE, sCreditsText_EnglishVersion}; -static const struct CreditsEntry sCreditsEntry_Translator[] = { 0, TRUE, sCreditsText_Translator}; -static const struct CreditsEntry sCreditsEntry_TextEditor[] = { 0, TRUE, sCreditsText_TextEditor}; -static const struct CreditsEntry sCreditsEntry_NCLCoordinator[] = { 0, TRUE, sCreditsText_NCLCoordinator}; -static const struct CreditsEntry sCreditsEntry_GraphicDesigner[] = { 0, TRUE, sCreditsText_GraphicDesigner}; -static const struct CreditsEntry sCreditsEntry_NOAProductTesting[] = { 0, TRUE, sCreditsText_NOAProductTesting}; -static const struct CreditsEntry sCreditsEntry_HideyukiNakajima[] = { 0, FALSE, sCreditsText_HideyukiNakajima}; -static const struct CreditsEntry sCreditsEntry_HidenoriSaeki[] = { 0, FALSE, sCreditsText_HidenoriSaeki}; -static const struct CreditsEntry sCreditsEntry_YokoWatanabe[] = { 0, FALSE, sCreditsText_YokoWatanabe}; -static const struct CreditsEntry sCreditsEntry_SakaeKimura[] = { 0, FALSE, sCreditsText_SakaeKimura}; -static const struct CreditsEntry sCreditsEntry_ChiakiShinkai[] = { 0, FALSE, sCreditsText_ChiakiShinkai}; -static const struct CreditsEntry sCreditsEntry_SethMcMahill[] = { 0, FALSE, sCreditsText_SethMcMahill}; -static const struct CreditsEntry sCreditsEntry_NobOgasawara[] = { 0, FALSE, sCreditsText_NobOgasawara}; -static const struct CreditsEntry sCreditsEntry_TeresaLillygren[] = { 0, FALSE, sCreditsText_TeresaLillygren}; -static const struct CreditsEntry sCreditsEntry_KimikoNakamichi[] = { 0, FALSE, sCreditsText_KimikoNakamichi}; -static const struct CreditsEntry sCreditsEntry_SouichiYamamoto[] = { 0, FALSE, sCreditsText_SouichiYamamoto}; -static const struct CreditsEntry sCreditsEntry_YuichiroIto[] = { 0, FALSE, sCreditsText_YuichiroIto}; -static const struct CreditsEntry sCreditsEntry_ThomasHertzog[] = { 0, FALSE, sCreditsText_ThomasHertzog}; -static const struct CreditsEntry sCreditsEntry_MikaKurosawa[] = { 0, FALSE, sCreditsText_MikaKurosawa}; -static const struct CreditsEntry sCreditsEntry_NationalFederationBlind[] = { 0, FALSE, sCreditsText_NationalFederationBlind}; -static const struct CreditsEntry sCreditsEntry_PatriciaAMaurer[] = { 0, FALSE, sCreditsText_PatriciaAMaurer}; -static const struct CreditsEntry sCreditsEntry_EuropeanBlindUnion[] = { 0, FALSE, sCreditsText_EuropeanBlindUnion}; -static const struct CreditsEntry sCreditsEntry_AustralianBrailleAuthority[] = { 0, FALSE, sCreditsText_AustralianBrailleAuthority}; -static const struct CreditsEntry sCreditsEntry_RoyalNewZealandFederationBlind[] = { 0, FALSE, sCreditsText_RoyalNewZealandFederationBlind}; -static const struct CreditsEntry sCreditsEntry_MotoyasuTojima[] = { 0, FALSE, sCreditsText_MotoyasuTojima}; -static const struct CreditsEntry sCreditsEntry_NicolaPrattBarlow[] = { 0, FALSE, sCreditsText_NicolaPrattBarlow}; -static const struct CreditsEntry sCreditsEntry_ShellieDow[] = { 0, FALSE, sCreditsText_ShellieDow}; -static const struct CreditsEntry sCreditsEntry_ErikJohnson[] = { 0, FALSE, sCreditsText_ErikJohnson}; - -#define _ sCreditsEntry_EmptyString -static const struct CreditsEntry *const gCreditsEntryPointerTable[][5] = -{ - { - _, - sCreditsEntry_PkmnEmeraldVersion, - sCreditsEntry_Credits, - _, - _ - }, - { - _, - sCreditsEntry_Director, - sCreditsEntry_ShigekiMorimoto, - _, - _, - }, - { - _, - sCreditsEntry_ArtDirector, - sCreditsEntry_KenSugimori, - _, - _, - }, - { - _, - sCreditsEntry_WorldDirector, - sCreditsEntry_JunichiMasuda, - _, - _, - }, - { - sCreditsEntry_LeadProgrammer, - sCreditsEntry_HisashiSogabe, - sCreditsEntry_LeadGraphicArtist, - sCreditsEntry_MotofumiFujiwara, - _, - }, - { - sCreditsEntry_Programmers, - sCreditsEntry_HisashiSogabe, - sCreditsEntry_TomomichiOhta, - sCreditsEntry_NozomuSaito, - sCreditsEntry_EmptyString, - }, - { - sCreditsEntry_Programmers, - sCreditsEntry_AkitoMori, - sCreditsEntry_HiroyukiNakamura, - sCreditsEntry_MasaoTaya, - _, - }, - { - sCreditsEntry_Programmers, - sCreditsEntry_SatoshiNohara, - sCreditsEntry_MiyukiIwasawa, - sCreditsEntry_YoshinoriMatsuda, - sCreditsEntry_KeitaKagaya, - }, - { - sCreditsEntry_Programmers, - sCreditsEntry_TetsuyaWatanabe, - sCreditsEntry_SosukeTamada, - sCreditsEntry_TakenoriOhta, - _, - }, - { - _, - sCreditsEntry_GraphicDesigners, - sCreditsEntry_MotofumiFujiwara, - sCreditsEntry_SatoshiOhta, - _, - }, - { - sCreditsEntry_GraphicDesigners, - sCreditsEntry_KenkichiToyama, - sCreditsEntry_AsukaIwashita, - sCreditsEntry_TakaoUnno, - _, - }, - { - sCreditsEntry_GraphicDesigners, - sCreditsEntry_KenSugimori, - sCreditsEntry_HironobuYoshida, - sCreditsEntry_AimiTomita, - sCreditsEntry_KanakoEo, - }, - { - sCreditsEntry_MusicComposition, - sCreditsEntry_GoIchinose, - sCreditsEntry_JunichiMasuda, - sCreditsEntry_MorikazuAoki, - sCreditsEntry_HitomiSato, - }, - { - _, - sCreditsEntry_SoundEffectsAndPkmnVoices, - sCreditsEntry_GoIchinose, - sCreditsEntry_MorikazuAoki, - _, - }, - { - sCreditsEntry_GameDesigners, - sCreditsEntry_ShigekiMorimoto, - sCreditsEntry_TeruyukiShimoyamada, - sCreditsEntry_TakeshiKawachimaru, - sCreditsEntry_AkihitoTomisawa, - }, - { - sCreditsEntry_GameDesigners, - sCreditsEntry_SuguruNakatsui, - sCreditsEntry_TetsujiOhta, - sCreditsEntry_HitomiSato, - sCreditsEntry_KenjiMatsushima, - }, - { - sCreditsEntry_GameDesigners, - sCreditsEntry_JunichiMasuda, - sCreditsEntry_KojiNishino, - sCreditsEntry_ShigeruOhmori, - sCreditsEntry_TadashiTakahashi, - }, - { - sCreditsEntry_ScenarioPlot, - sCreditsEntry_AkihitoTomisawa, - sCreditsEntry_JunichiMasuda, - sCreditsEntry_KojiNishino, - _, - }, - { - sCreditsEntry_Scenario, - sCreditsEntry_AkihitoTomisawa, - sCreditsEntry_HitomiSato, - sCreditsEntry_ToshinobuMatsumiya, - _, - }, - { - sCreditsEntry_ScriptDesigners, - sCreditsEntry_TomomichiOhta, - sCreditsEntry_SatoshiNohara, - _, - _, - }, - { - sCreditsEntry_MapDesigners, - sCreditsEntry_SuguruNakatsui, - sCreditsEntry_TeruyukiShimoyamada, - sCreditsEntry_ShigeruOhmori, - sCreditsEntry_TetsujiOhta, - }, - { - _, - sCreditsEntry_BattleFrontierData, - sCreditsEntry_TetsujiOhta, - _, - _, - }, - { - sCreditsEntry_ParametricDesigners, - sCreditsEntry_TeruyukiShimoyamada, - sCreditsEntry_ShigekiMorimoto, - sCreditsEntry_TetsujiOhta, - sCreditsEntry_KojiNishino, - }, - { - _, - sCreditsEntry_PokedexText, - sCreditsEntry_KenjiMatsushima, - _, - _, - }, - { - sCreditsEntry_EnvAndToolPgrms, - sCreditsEntry_HisashiSogabe, - sCreditsEntry_SosukeTamada, - sCreditsEntry_HiroyukiNakamura, - sCreditsEntry_AkitoMori, - }, - { - sCreditsEntry_PkmnDesigners, - sCreditsEntry_KenSugimori, - sCreditsEntry_MotofumiFujiwara, - sCreditsEntry_ShigekiMorimoto, - _, - }, - { - sCreditsEntry_PkmnDesigners, - sCreditsEntry_HironobuYoshida, - sCreditsEntry_SatoshiOhta, - sCreditsEntry_AsukaIwashita, - _, - }, - { - sCreditsEntry_PkmnDesigners, - sCreditsEntry_TakaoUnno, - sCreditsEntry_KanakoEo, - sCreditsEntry_AimiTomita, - _, - }, - { - sCreditsEntry_PkmnDesigners, - sCreditsEntry_AtsukoNishida, - sCreditsEntry_MuneoSaito, - sCreditsEntry_RenaYoshikawa, - sCreditsEntry_JunOkutani, - }, - { - _, - sCreditsEntry_SupportProgrammers, - sCreditsEntry_SatoshiMitsuhara, - sCreditsEntry_DaisukeHoshino, - _, - }, - { - _, - sCreditsEntry_NCLProductTesting, - sCreditsEntry_NCLSuperMarioClub, - _, - _, - }, - { - _, - sCreditsEntry_PackageAndManual, - sCreditsEntry_KenSugimori, - _, - _, - }, - { - _, - sCreditsEntry_SpecialThanks, - sCreditsEntry_KenjiTominaga, - sCreditsEntry_HirokiEnomoto, - _, - }, - { - sCreditsEntry_SpecialThanks, - sCreditsEntry_KazuyaSuyama, - sCreditsEntry_KenjiroIto, - sCreditsEntry_MichikoTakizawa, - sCreditsEntry_MakikoTakada, - }, - { - sCreditsEntry_SpecialThanks, - sCreditsEntry_MikikoOhhashi, - sCreditsEntry_TakanaoKondo, - sCreditsEntry_RuiKawaguchi, - _, - }, - { - sCreditsEntry_SpecialThanks, - sCreditsEntry_TakahiroOhnishi, - sCreditsEntry_NorihideOkamura, - sCreditsEntry_ShunsukeKohori, - _, - }, - { - sCreditsEntry_InfoSupervisors, - sCreditsEntry_KazuyukiTerada, - sCreditsEntry_YuriSakurai, - sCreditsEntry_YumiFunasaka, - sCreditsEntry_NaokoYanase, - }, - { - _, - sCreditsEntry_Artwork, - sCreditsEntry_SachikoNakamichi, - sCreditsEntry_FujikoNomura, - _, - }, - { - _, - sCreditsEntry_Artwork, - sCreditsEntry_HideyukiNakajima, - sCreditsEntry_HidenoriSaeki, - _, - }, - { - sCreditsEntry_Artwork, - sCreditsEntry_YokoWatanabe, - sCreditsEntry_SakaeKimura, - sCreditsEntry_ChiakiShinkai, - _, - }, - { - sCreditsEntry_Coordinators, - sCreditsEntry_KazukiYoshihara, - sCreditsEntry_AkiraKinashi, - sCreditsEntry_RetsujiNomoto, - _, - }, - { - _, - sCreditsEntry_EnglishVersion, - sCreditsEntry_HiroNakamura, - sCreditsEntry_SethMcMahill, - _, - }, - { - _, - sCreditsEntry_Translator, - sCreditsEntry_NobOgasawara, - _, - _, - }, - { - _, - sCreditsEntry_TextEditor, - sCreditsEntry_TeresaLillygren, - _, - _, - }, - { - _, - sCreditsEntry_NCLCoordinator, - sCreditsEntry_KimikoNakamichi, - _, - _, - }, - { - sCreditsEntry_Programmers, - sCreditsEntry_TerukiMurakawa, - sCreditsEntry_SouichiYamamoto, - sCreditsEntry_YuichiroIto, - sCreditsEntry_AkiraKinashi, - }, - { - _, - sCreditsEntry_GraphicDesigner, - sCreditsEntry_AkiraKinashi, - _, - _, - }, - { - sCreditsEntry_EnvAndToolPgrms, - sCreditsEntry_TerukiMurakawa, - sCreditsEntry_SouichiYamamoto, - sCreditsEntry_KimikoNakamichi, - _, - }, - { - sCreditsEntry_NOAProductTesting, - sCreditsEntry_ThomasHertzog, - sCreditsEntry_ErikJohnson, - sCreditsEntry_MikaKurosawa, - _, - }, - { - sCreditsEntry_BrailleCodeCheck, - sCreditsEntry_NationalFederationBlind, - sCreditsEntry_PatriciaAMaurer, - sCreditsEntry_JapanBrailleLibrary, - sCreditsEntry_EuropeanBlindUnion, - }, - { - _, - sCreditsEntry_BrailleCodeCheck, - sCreditsEntry_AustralianBrailleAuthority, - sCreditsEntry_RoyalNewZealandFederationBlind, - _, - }, - { - sCreditsEntry_SpecialThanks, - sCreditsEntry_HiroyukiUesugi, - sCreditsEntry_MotoyasuTojima, - sCreditsEntry_NicolaPrattBarlow, - sCreditsEntry_ShellieDow, - }, - { - _, - sCreditsEntry_TaskManagers, - sCreditsEntry_AzusaTajima, - sCreditsEntry_ShusakuEgami, - _, - }, - { - sCreditsEntry_Producers, - sCreditsEntry_HiroyukiJinnai, - sCreditsEntry_HitoshiYamagami, - sCreditsEntry_GakujiNomoto, - sCreditsEntry_HiroakiTsuru, - }, - { - _, - sCreditsEntry_ExecutiveDirector, - sCreditsEntry_SatoshiTajiri, - _, - _, - }, - { - _, - sCreditsEntry_ExecProducers, - sCreditsEntry_SatoruIwata, - _, - _, - }, - { - _, - sCreditsEntry_ExecProducers, - sCreditsEntry_TsunekazIshihara, - _, - _, - }, -}; -#undef _ +#include "data/credits.h" static const struct BgTemplate sBackgroundTemplates[] = { @@ -966,7 +214,7 @@ static const u8 sMonSpritePos[][2] = {136, 36}, }; -static const union AnimCmd gUnknown_085E6F84[] = +static const union AnimCmd sAnim_Player_Slow[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(64, 8), @@ -975,7 +223,7 @@ static const union AnimCmd gUnknown_085E6F84[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E6F98[] = +static const union AnimCmd sAnim_Player_Fast[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(64, 4), @@ -984,7 +232,7 @@ static const union AnimCmd gUnknown_085E6F98[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E6FAC[] = +static const union AnimCmd sAnim_Player_LookBack[] = { ANIMCMD_FRAME(256, 4), ANIMCMD_FRAME(320, 4), @@ -992,7 +240,7 @@ static const union AnimCmd gUnknown_085E6FAC[] = ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E6FBC[] = +static const union AnimCmd sAnim_Player_LookForward[] = { ANIMCMD_FRAME(384, 30), ANIMCMD_FRAME(320, 30), @@ -1001,15 +249,15 @@ static const union AnimCmd gUnknown_085E6FBC[] = ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E6FD0[] = +static const union AnimCmd *const sAnims_Player[] = { - gUnknown_085E6F84, - gUnknown_085E6F98, - gUnknown_085E6FAC, - gUnknown_085E6FBC, + sAnim_Player_Slow, + sAnim_Player_Fast, + sAnim_Player_LookBack, + sAnim_Player_LookForward, }; -static const union AnimCmd gUnknown_085E6FE0[] = +static const union AnimCmd sAnim_Rival_Slow[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(64, 8), @@ -1018,7 +266,7 @@ static const union AnimCmd gUnknown_085E6FE0[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E6FF4[] = +static const union AnimCmd sAnim_Rival_Fast[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(64, 4), @@ -1027,31 +275,32 @@ static const union AnimCmd gUnknown_085E6FF4[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd gUnknown_085E7008[] = +static const union AnimCmd sAnim_Rival_Still[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E7010[] = +static const union AnimCmd *const sAnims_Rival[] = { - gUnknown_085E6FE0, - gUnknown_085E6FF4, - gUnknown_085E7008, + sAnim_Rival_Slow, + sAnim_Rival_Fast, + sAnim_Rival_Still, }; -static const struct SpriteSheet gUnknown_085E701C[] = { - { gDecompressionBuffer, 6144, 1001 }, - { NULL }, +#define MONBG_OFFSET (0x800 * 3) +static const struct SpriteSheet sSpriteSheet_MonBg[] = { + { gDecompressionBuffer, MONBG_OFFSET, TAG_MON_BG }, + {}, }; -static const struct SpritePalette gUnknown_085E702C[] = { - { (const u16 *)(gDecompressionBuffer + 0x1800), 1001 }, - { NULL }, +static const struct SpritePalette sSpritePalette_MonBg[] = { + { (const u16 *)&gDecompressionBuffer[MONBG_OFFSET], TAG_MON_BG }, + {}, }; -static const struct OamData gUnknown_085E703C = +static const struct OamData sOamData_MonBg = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -1066,90 +315,63 @@ static const struct OamData gUnknown_085E703C = .affineParam = 0, }; -static const union AnimCmd gUnknown_085E7044[] = +static const union AnimCmd sAnim_MonBg_Yellow[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E704C[] = +static const union AnimCmd sAnim_MonBg_Red[] = { ANIMCMD_FRAME(64, 8), ANIMCMD_END, }; -static const union AnimCmd gUnknown_085E7054[] = +static const union AnimCmd sAnim_MonBg_Blue[] = { ANIMCMD_FRAME(128, 8), ANIMCMD_END, }; -static const union AnimCmd *const gUnknown_085E705C[] = +static const union AnimCmd *const sAnims_MonBg[] = { - gUnknown_085E7044, - gUnknown_085E704C, - gUnknown_085E7054, + [POS_LEFT] = sAnim_MonBg_Yellow, + [POS_CENTER] = sAnim_MonBg_Red, + [POS_RIGHT] = sAnim_MonBg_Blue, }; -static const struct SpriteTemplate gUnknown_085E7068 = +static const struct SpriteTemplate sSpriteTemplate_CreditsMonBg = { - .tileTag = 1001, - .paletteTag = 1001, - .oam = &gUnknown_085E703C, - .anims = gUnknown_085E705C, + .tileTag = TAG_MON_BG, + .paletteTag = TAG_MON_BG, + .oam = &sOamData_MonBg, + .anims = sAnims_MonBg, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_81772B8, + .callback = SpriteCB_CreditsMonBg, }; -static void Task_WaitPaletteFade(u8 taskIdA); -static void Task_ProgressCreditTasks(u8 taskIdA); -static void sub_8175808(u8 taskIdA); -static void c2_080C9BFC(u8 taskIdA); -static void Task_CreditsLoadGrassScene(u8 taskIdA); -static void sub_81758A4(u8 taskIdA); -static void Task_CreditsTheEnd1(u8 taskIdA); -static void Task_CreditsTheEnd2(u8 taskIdA); -static void Task_CreditsTheEnd3(u8 taskIdA); -static void Task_CreditsTheEnd4(u8 taskIdA); -static void Task_CreditsTheEnd5(u8 taskIdA); -static void Task_CreditsTheEnd6(u8 taskIdA); -static void Task_CreditsSoftReset(u8 taskIdA); -static void ResetGpuAndVram(void); -static void sub_8175DA0(u8 taskIdB); -static u8 CheckChangeScene(u8 page, u8 taskIdA); -static void sub_81760FC(u8 taskIdA); -static void sub_817651C(u8 taskIdA); -static void sub_817624C(u8 taskIdA); -static bool8 sub_8176AB0(u8 data, u8 taskIdA); -static void ResetCreditsTasks(u8 taskIdA); -static void LoadTheEndScreen(u16, u16, u16); -static void sub_8176E40(u16 arg0, u16 palette); -static void sub_8176EE8(struct Sprite *sprite); -static void sub_8176F90(struct Sprite *sprite); -static u8 MakeMonSprite(u16 species, s16 x, s16 y, u16 position); -static void DeterminePokemonToShow(void); - -static void CreditsVBlankCallback(void) +static void VBlankCB_Credits(void) { LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); } -static void CB2_RunCreditsSequence(void) +static void CB2_Credits(void) { RunTasks(); AnimateSprites(); if ((JOY_HELD(B_BUTTON)) - && gHasHallOfFameRecords != 0 - && gTasks[gUnknown_0203BCE2].func == Task_ProgressCreditTasks) + && gHasHallOfFameRecords + && gTasks[sSavedTaskId].func == Task_ProgressCreditTasks) { - CreditsVBlankCallback(); + // Speed up credits + VBlankCB_Credits(); RunTasks(); AnimateSprites(); - gUnknown_0203BCE5 = 1; + sUsedSpeedUp = TRUE; } BuildOamBuffer(); UpdatePaletteFade(); @@ -1160,7 +382,7 @@ static void InitCreditsBgsAndWindows(void) ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBackgroundTemplates, ARRAY_COUNT(sBackgroundTemplates)); SetBgTilemapBuffer(0, AllocZeroed(BG_SCREEN_SIZE)); - LoadPalette(gUnknown_085E56F0, 0x80, 0x40); + LoadPalette(sCredits_Pal, 0x80, 64); InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); PutWindowTilemap(0); @@ -1182,20 +404,20 @@ static void PrintCreditsText(const u8 *string, u8 y, bool8 isTitle) u8 x; u8 color[3]; - color[0] = 0; + color[0] = TEXT_COLOR_TRANSPARENT; if (isTitle == TRUE) { - color[1] = 3; - color[2] = 4; + color[1] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_RED; } else { - color[1] = 1; - color[2] = 2; + color[1] = TEXT_COLOR_WHITE; + color[2] = TEXT_COLOR_DARK_GREY; } - x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, 0xF0, 1); + x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, DISPLAY_WIDTH, 1); AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string); } @@ -1237,19 +459,19 @@ void CB2_StartCreditsSequence(void) BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(INTR_FLAG_VBLANK); - SetVBlankCallback(CreditsVBlankCallback); + SetVBlankCallback(VBlankCB_Credits); m4aSongNumStart(MUS_CREDITS); - SetMainCallback2(CB2_RunCreditsSequence); - gUnknown_0203BCE5 = 0; + SetMainCallback2(CB2_Credits); + sUsedSpeedUp = FALSE; sCreditsData = AllocZeroed(sizeof(struct CreditsData)); DeterminePokemonToShow(); sCreditsData->imgCounter = 0; - sCreditsData->nextImgPos = 0; + sCreditsData->nextImgPos = POS_LEFT; sCreditsData->currShownMon = 0; - gUnknown_0203BCE2 = taskIdA; + sSavedTaskId = taskIdA; } static void Task_WaitPaletteFade(u8 taskIdA) @@ -1274,7 +496,7 @@ static void Task_ProgressCreditTasks(u8 taskIdA) return; } - gUnknown_0203BCE0 = 0; + sUnkVar = 0; data1 = gTasks[taskIdA].data[TDA_11]; if (gTasks[taskIdA].data[TDA_11] == 1) @@ -1311,7 +533,7 @@ static void c2_080C9BFC(u8 taskIdA) { BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(INTR_FLAG_VBLANK); - SetVBlankCallback(CreditsVBlankCallback); + SetVBlankCallback(VBlankCB_Credits); gTasks[taskIdA].func = Task_WaitPaletteFade; } } @@ -1349,18 +571,18 @@ static void Task_CreditsLoadGrassScene(u8 taskIdA) for (i = 0; i < 0x800; i++) (gDecompressionBuffer + 0x800)[i] = 0x22; for (i = 0; i < 0x800; i++) - (gDecompressionBuffer + 0x1000)[i] = 0x33; + (gDecompressionBuffer + 0x800 * 2)[i] = 0x33; - temp = (u16 *)(&gDecompressionBuffer[0x1800]); + temp = (u16 *)(&gDecompressionBuffer[MONBG_OFFSET]); temp[0] = RGB_BLACK; temp[1] = RGB(31, 31, 20); // light yellow temp[2] = RGB(31, 20, 20); // light red temp[3] = RGB(20, 20, 31); // light blue - LoadSpriteSheet(gUnknown_085E701C); - LoadSpritePalette(gUnknown_085E702C); + LoadSpriteSheet(sSpriteSheet_MonBg); + LoadSpritePalette(sSpritePalette_MonBg); - gMain.state += 1; + gMain.state++; break; } case 1: @@ -1384,7 +606,7 @@ static void Task_CreditsLoadGrassScene(u8 taskIdA) | DISPCNT_OBJ_ON); gMain.state = 0; - gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_MOVING; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_NORMAL; gTasks[taskIdA].func = Task_WaitPaletteFade; break; } @@ -1394,7 +616,7 @@ static void Task_CreditsTheEnd1(u8 taskIdA) { if (gTasks[taskIdA].data[TDA_12]) { - gTasks[taskIdA].data[TDA_12] -= 1; + gTasks[taskIdA].data[TDA_12]--; return; } @@ -1411,6 +633,8 @@ static void Task_CreditsTheEnd2(u8 taskIdA) } } +#define tDelay data[0] + static void Task_CreditsTheEnd3(u8 taskIdA) { ResetGpuAndVram(); @@ -1430,15 +654,15 @@ static void Task_CreditsTheEnd3(u8 taskIdA) | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON); - gTasks[taskIdA].data[TDA_0] = 235; //set this to 215 to actually show "THE END" in time to the last song beat + gTasks[taskIdA].tDelay = 235; //set this to 215 to actually show "THE END" in time to the last song beat gTasks[taskIdA].func = Task_CreditsTheEnd4; } static void Task_CreditsTheEnd4(u8 taskIdA) { - if (gTasks[taskIdA].data[TDA_0]) + if (gTasks[taskIdA].tDelay) { - gTasks[taskIdA].data[TDA_0] -= 1; + gTasks[taskIdA].tDelay--; return; } @@ -1450,10 +674,10 @@ static void Task_CreditsTheEnd5(u8 taskIdA) { if (!gPaletteFade.active) { - sub_8176E40(0x3800, 0); + DrawTheEnd(0x3800, 0); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0, RGB_BLACK); - gTasks[taskIdA].data[TDA_0] = 7200; + gTasks[taskIdA].tDelay = 7200; gTasks[taskIdA].func = Task_CreditsTheEnd6; } } @@ -1462,7 +686,7 @@ static void Task_CreditsTheEnd6(u8 taskIdA) { if (!gPaletteFade.active) { - if (gTasks[taskIdA].data[TDA_0] == 0 || gMain.newKeys) + if (gTasks[taskIdA].tDelay == 0 || gMain.newKeys) { FadeOutBGM(4); BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_WHITEALPHA); @@ -1470,20 +694,22 @@ static void Task_CreditsTheEnd6(u8 taskIdA) return; } - if (gTasks[taskIdA].data[TDA_0] == 7144) + if (gTasks[taskIdA].tDelay == 7144) FadeOutBGM(8); - if (gTasks[taskIdA].data[TDA_0] == 6840) + if (gTasks[taskIdA].tDelay == 6840) m4aSongNumStart(MUS_END); - gTasks[taskIdA].data[TDA_0] -= 1; + gTasks[taskIdA].tDelay--; } } +#undef tDelay + static void Task_CreditsSoftReset(u8 taskIdA) { if (!gPaletteFade.active) - SoftReset(0xFF); + SoftReset(RESET_ALL); } static void ResetGpuAndVram(void) @@ -1525,32 +751,32 @@ static void sub_8175DA0(u8 taskIdB) gTasks[taskIdB].data[TDB_0] = 1; gTasks[taskIdB].data[TDB_3] = 0x48; gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_14] = 0; - gUnknown_0203BCE0 = 0; + sUnkVar = 0; } return; case 1: if (gTasks[taskIdB].data[TDB_3] != 0) { - gTasks[taskIdB].data[TDB_3] -= 1; + gTasks[taskIdB].data[TDB_3]--; return; } - gTasks[taskIdB].data[TDB_0] += 1; + gTasks[taskIdB].data[TDB_0]++; return; case 2: if (gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].func == Task_ProgressCreditTasks) { if (gTasks[taskIdB].data[TDB_CURRENT_PAGE] < PAGE_COUNT) { - for (i = 0; i < 5; i++) + for (i = 0; i < ENTRIES_PER_PAGE; i++) PrintCreditsText( - gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, + sCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, 5 + i * 16, - gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->isTitle); + sCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->isTitle); CopyWindowToVram(0, 2); - gTasks[taskIdB].data[TDB_CURRENT_PAGE] += 1; - gTasks[taskIdB].data[TDB_0] += 1; + gTasks[taskIdB].data[TDB_CURRENT_PAGE]++; + gTasks[taskIdB].data[TDB_0]++; gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_14] = 1; @@ -1569,22 +795,22 @@ static void sub_8175DA0(u8 taskIdB) if (!gPaletteFade.active) { gTasks[taskIdB].data[TDB_3] = 0x73; - gTasks[taskIdB].data[TDB_0] += 1; + gTasks[taskIdB].data[TDB_0]++; } return; case 4: if (gTasks[taskIdB].data[TDB_3] != 0) { - gTasks[taskIdB].data[TDB_3] -= 1; + gTasks[taskIdB].data[TDB_3]--; return; } if (CheckChangeScene((u8)gTasks[taskIdB].data[TDB_CURRENT_PAGE], (u8)gTasks[taskIdB].data[TDB_TASK_A_ID])) { - gTasks[taskIdB].data[TDB_0] += 1; + gTasks[taskIdB].data[TDB_0]++; return; } - gTasks[taskIdB].data[TDB_0] += 1; + gTasks[taskIdB].data[TDB_0]++; if (gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_13] == 1) BeginNormalPaletteFade(0x00000300, 0, 0, 16, COLOR_LIGHT_GREEN); else @@ -1613,7 +839,7 @@ static u8 CheckChangeScene(u8 page, u8 taskIdA) if (page == 6) { - // Grass patch + // Pokémon interlude gTasks[taskIdA].data[TDA_11] = 2; } @@ -1626,7 +852,7 @@ static u8 CheckChangeScene(u8 page, u8 taskIdA) if (page == 18) { - // Grass patch + // Pokémon interlude gTasks[taskIdA].data[TDA_11] = 2; } @@ -1639,7 +865,7 @@ static u8 CheckChangeScene(u8 page, u8 taskIdA) if (page == 30) { - // Grass patch + // Pokémon interlude gTasks[taskIdA].data[TDA_11] = 2; } @@ -1652,7 +878,7 @@ static u8 CheckChangeScene(u8 page, u8 taskIdA) if (page == 42) { - // Grass patch + // Pokémon interlude gTasks[taskIdA].data[TDA_11] = 2; } @@ -1681,14 +907,17 @@ static void sub_81760FC(u8 taskIdD) case 0: break; case 1: - if (sCreditsData->nextImgPos == 0 && gTasks[gTasks[taskIdD].data[TDD_TASK_A_ID]].data[TDA_14] == 0) + if (sCreditsData->nextImgPos == POS_LEFT && gTasks[gTasks[taskIdD].data[TDD_TASK_A_ID]].data[TDA_14] == 0) break; gTasks[taskIdD].data[TDD_STATE]++; break; case 2: if (sCreditsData->imgCounter == NUM_MON_SLIDES || gTasks[gTasks[taskIdD].data[TDD_TASK_A_ID]].func != Task_ProgressCreditTasks) break; - r2 = MakeMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], sMonSpritePos[sCreditsData->nextImgPos][0], sMonSpritePos[sCreditsData->nextImgPos][1], sCreditsData->nextImgPos); + r2 = CreateCreditsMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], + sMonSpritePos[sCreditsData->nextImgPos][0], + sMonSpritePos[sCreditsData->nextImgPos][1], + sCreditsData->nextImgPos); if (sCreditsData->currShownMon < sCreditsData->numMonToShow - 1) { sCreditsData->currShownMon++; @@ -1700,10 +929,12 @@ static void sub_81760FC(u8 taskIdD) gSprites[r2].data[3] = 512; } sCreditsData->imgCounter++; - if (sCreditsData->nextImgPos == 2) - sCreditsData->nextImgPos = 0; + + if (sCreditsData->nextImgPos == POS_RIGHT) + sCreditsData->nextImgPos = POS_LEFT; else sCreditsData->nextImgPos++; + gTasks[taskIdD].data[TDD_3] = 50; gTasks[taskIdD].data[TDD_STATE]++; break; @@ -1846,7 +1077,7 @@ static void sub_817651C(u8 taskIdE) } else { - gTasks[taskIdE].data[TDE_1] += 1; + gTasks[taskIdE].data[TDE_1]++; } } CycleSceneryPalette(1); @@ -1857,63 +1088,63 @@ static void sub_817651C(u8 taskIdE) } } -static void sub_817664C(u8 scene, u8 taskIdA) +static void InitCreditsSceneGfx(u8 scene, u8 taskIdA) { switch (scene) { case 0: - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.x = 272; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.x = 272; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; + gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 272; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; case 1: - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.x = 120; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.x = 272; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; + gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; case 2: - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.x = 120; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.x = 272; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; + gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; case 3: - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.x = 120; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.x = -32; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; + gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = -32; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; case 4: - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].invisible = FALSE; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.x = 88; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.x = 152; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].pos1.y = 46; - gSprites[gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]].data[0] = 0; - gSprites[gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]].data[0] = 0; + gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 88; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 152; + gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8); break; } @@ -1926,8 +1157,8 @@ static void sub_817664C(u8 scene, u8 taskIdA) gTasks[taskIdA].data[TDA_TASK_C_ID] = CreateTask(sub_817624C, 0); gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_0] = 0; gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_1] = taskIdA; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_2] = gTasks[taskIdA].data[TDA_PLAYER_CYCLIST]; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_3] = gTasks[taskIdA].data[TDA_RIVAL_CYCLIST]; + gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_2] = gTasks[taskIdA].tPlayerSpriteId; + gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_3] = gTasks[taskIdA].tRivalSpriteId; gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_4] = 0; if (scene == 2) @@ -1959,7 +1190,7 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) gIntroCredits_MovingSceneryVBase = 34; gIntroCredits_MovingSceneryVOffset = 0; LoadCreditsSceneGraphics(scene); - gMain.state += 1; + gMain.state++; break; case 2: if (gSaveBlock2Ptr->playerGender == MALE) @@ -1970,14 +1201,14 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) LoadSpritePalettes(gSpritePalettes_Credits); spriteId = CreateIntroBrendanSprite(120, 46); - gTasks[taskIdA].data[TDA_PLAYER_CYCLIST] = spriteId; - gSprites[spriteId].callback = sub_8176EE8; - gSprites[spriteId].anims = gUnknown_085E6FD0; + gTasks[taskIdA].tPlayerSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_PlayerCyclist; + gSprites[spriteId].anims = sAnims_Player; spriteId = CreateIntroMaySprite(272, 46); - gTasks[taskIdA].data[TDA_RIVAL_CYCLIST] = spriteId; - gSprites[spriteId].callback = sub_8176F90; - gSprites[spriteId].anims = gUnknown_085E7010; + gTasks[taskIdA].tRivalSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_RivalCyclist; + gSprites[spriteId].anims = sAnims_Rival; } else { @@ -1987,19 +1218,19 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) LoadSpritePalettes(gSpritePalettes_Credits); spriteId = CreateIntroMaySprite(120, 46); - gTasks[taskIdA].data[TDA_PLAYER_CYCLIST] = spriteId; - gSprites[spriteId].callback = sub_8176EE8; - gSprites[spriteId].anims = gUnknown_085E6FD0; + gTasks[taskIdA].tPlayerSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_PlayerCyclist; + gSprites[spriteId].anims = sAnims_Player; spriteId = CreateIntroBrendanSprite(272, 46); - gTasks[taskIdA].data[TDA_RIVAL_CYCLIST] = spriteId; - gSprites[spriteId].callback = sub_8176F90; - gSprites[spriteId].anims = gUnknown_085E7010; + gTasks[taskIdA].tRivalSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_RivalCyclist; + gSprites[spriteId].anims = sAnims_Rival; }; - gMain.state += 1; + gMain.state++; break; case 3: - sub_817664C(scene, taskIdA); + InitCreditsSceneGfx(scene, taskIdA); SetCreditsSceneBgCnt(scene); gMain.state = 0; return TRUE; @@ -2036,21 +1267,21 @@ static void ResetCreditsTasks(u8 taskIdA) gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_DESTROY; } -static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 arg2) +static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 palOffset) { u16 baseTile; u16 i; LZ77UnCompVram(sCreditsCopyrightEnd_Gfx, (void *)(VRAM + arg0)); - LoadPalette(gIntroCopyright_Pal, arg2, sizeof(gIntroCopyright_Pal)); + LoadPalette(gIntroCopyright_Pal, palOffset, sizeof(gIntroCopyright_Pal)); - baseTile = (arg2 / 16) << 12; + baseTile = (palOffset / 16) << 12; for (i = 0; i < 32 * 32; i++) ((u16 *) (VRAM + arg1))[i] = baseTile + 1; } -static u16 sub_8176D78(u8 baseTiles) +static u16 GetLetterMapTile(u8 baseTiles) { u16 out = (baseTiles & 0x3F) + 80; @@ -2065,7 +1296,7 @@ static u16 sub_8176D78(u8 baseTiles) return out; } -static void sub_8176DBC(const u8 baseTiles[], u8 baseX, u8 baseY, u16 arg3, u16 palette) +static void DrawLetterMapTiles(const u8 baseTiles[], u8 baseX, u8 baseY, u16 offset, u16 palette) { u8 y, x; const u16 tileOffset = (palette / 16) << 12; @@ -2073,35 +1304,37 @@ static void sub_8176DBC(const u8 baseTiles[], u8 baseX, u8 baseY, u16 arg3, u16 for (y = 0; y < 5; y++) { for (x = 0; x < 3; x++) - ((u16 *) (VRAM + arg3 + (baseY + y) * 64))[baseX + x] = tileOffset + sub_8176D78(baseTiles[y * 3 + x]); + ((u16 *) (VRAM + offset + (baseY + y) * 64))[baseX + x] = tileOffset + GetLetterMapTile(baseTiles[y * 3 + x]); } } -static void sub_8176E40(u16 arg0, u16 palette) +static void DrawTheEnd(u16 offset, u16 palette) { u16 pos; u16 baseTile = (palette / 16) << 12; for (pos = 0; pos < 32 * 32; pos++) - ((u16 *) (VRAM + arg0))[pos] = baseTile + 1; - - sub_8176DBC(sTheEnd_LetterTMap, 3, 7, arg0, palette); - sub_8176DBC(sTheEnd_LetterHMap, 7, 7, arg0, palette); - sub_8176DBC(sTheEnd_LetterEMap, 11, 7, arg0, palette); - sub_8176DBC(sTheEnd_LetterEMap, 16, 7, arg0, palette); - sub_8176DBC(sTheEnd_LetterNMap, 20, 7, arg0, palette); - sub_8176DBC(sTheEnd_LetterDMap, 24, 7, arg0, palette); + ((u16 *) (VRAM + offset))[pos] = baseTile + 1; + + DrawLetterMapTiles(sTheEnd_LetterMap_T, 3, 7, offset, palette); + DrawLetterMapTiles(sTheEnd_LetterMap_H, 7, 7, offset, palette); + DrawLetterMapTiles(sTheEnd_LetterMap_E, 11, 7, offset, palette); + DrawLetterMapTiles(sTheEnd_LetterMap_E, 16, 7, offset, palette); + DrawLetterMapTiles(sTheEnd_LetterMap_N, 20, 7, offset, palette); + DrawLetterMapTiles(sTheEnd_LetterMap_D, 24, 7, offset, palette); } -static void sub_8176EE8(struct Sprite *sprite) +#define sState data[0] + +static void SpriteCB_PlayerCyclist(struct Sprite *sprite) { - if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { DestroySprite(sprite); return; } - switch (sprite->data[0]) + switch (sprite->sState) { case 0: StartSpriteAnimIfDifferent(sprite, 0); @@ -2109,7 +1342,7 @@ static void sub_8176EE8(struct Sprite *sprite) case 1: StartSpriteAnimIfDifferent(sprite, 1); if (sprite->pos1.x > -32) - sprite->pos1.x -= 1; + sprite->pos1.x--; break; case 2: StartSpriteAnimIfDifferent(sprite, 2); @@ -2120,25 +1353,25 @@ static void sub_8176EE8(struct Sprite *sprite) case 4: StartSpriteAnimIfDifferent(sprite, 0); if (sprite->pos1.x > 120) - sprite->pos1.x -= 1; + sprite->pos1.x--; break; case 5: StartSpriteAnimIfDifferent(sprite, 0); if (sprite->pos1.x > -32) - sprite->pos1.x -= 1; + sprite->pos1.x--; break; } } -static void sub_8176F90(struct Sprite *sprite) +static void SpriteCB_RivalCyclist(struct Sprite *sprite) { - if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { DestroySprite(sprite); return; } - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->pos2.y = 0; @@ -2154,29 +1387,32 @@ static void sub_8176F90(struct Sprite *sprite) sprite->pos2.y = -gIntroCredits_MovingSceneryVOffset; break; case 2: - sprite->data[7] += 1; + sprite->data[7]++; StartSpriteAnimIfDifferent(sprite, 0); if ((sprite->data[7] & 3) == 0) - sprite->pos1.x += 1; + sprite->pos1.x++; break; case 3: StartSpriteAnimIfDifferent(sprite, 0); if (sprite->pos1.x > -32) - sprite->pos1.x -= 1; + sprite->pos1.x--; break; } } -static void sub_8177050(struct Sprite *sprite) +#define sPosition data[1] +#define sSpriteId data[6] + +static void SpriteCB_CreditsMon(struct Sprite *sprite) { - if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) + if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { - FreeAndDestroyMonPicSprite(sprite->data[6]); + FreeAndDestroyMonPicSprite(sprite->sSpriteId); return; } - sprite->data[7] += 1; - switch (sprite->data[0]) + sprite->data[7]++; + switch (sprite->sState) { case 0: default: @@ -2185,7 +1421,7 @@ static void sub_8177050(struct Sprite *sprite) sprite->data[2] = 16; SetOamMatrix(sprite->data[1], 0x10000 / sprite->data[2], 0, 0, 0x10000 / sprite->data[2]); sprite->invisible = FALSE; - sprite->data[0] = 1; + sprite->sState = 1; break; case 1: if (sprite->data[2] < 256) @@ -2195,20 +1431,20 @@ static void sub_8177050(struct Sprite *sprite) } else { - sprite->data[0] += 1; + sprite->sState++; } - switch (sprite->data[1]) + switch (sprite->sPosition) { - case 1: + case POS_LEFT + 1: if ((sprite->data[7] & 3) == 0) - sprite->pos1.y += 1; + sprite->pos1.y++; sprite->pos1.x -= 2; break; - case 2: + case POS_CENTER + 1: break; - case 3: + case POS_RIGHT + 1: if ((sprite->data[7] & 3) == 0) - sprite->pos1.y += 1; + sprite->pos1.y++; sprite->pos1.x += 2; break; } @@ -2216,7 +1452,7 @@ static void sub_8177050(struct Sprite *sprite) case 2: if (sprite->data[3] != 0) { - sprite->data[3] -= 1; + sprite->data[3]--; } else { @@ -2224,7 +1460,7 @@ static void sub_8177050(struct Sprite *sprite) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); sprite->oam.objMode = ST_OAM_OBJ_BLEND; sprite->data[3] = 16; - sprite->data[0] += 1; + sprite->sState++; } break; case 3: @@ -2232,7 +1468,7 @@ static void sub_8177050(struct Sprite *sprite) { int data3; - sprite->data[3] -= 1; + sprite->data[3]--; data3 = 16 - sprite->data[3]; SetGpuReg(REG_OFFSET_BLDALPHA, (data3 << 8) + sprite->data[3]); @@ -2240,11 +1476,11 @@ static void sub_8177050(struct Sprite *sprite) else { sprite->invisible = TRUE; - sprite->data[0] = 9; + sprite->sState = 9; } break; case 9: - sprite->data[0] += 1; + sprite->sState++; break; case 10: SetGpuReg(REG_OFFSET_BLDCNT, 0); @@ -2254,40 +1490,44 @@ static void sub_8177050(struct Sprite *sprite) } } -static u8 MakeMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position) +#define sMonSpriteId data[0] + +static u8 CreateCreditsMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position) { - u8 spriteId; - u8 spriteId2; + u8 monSpriteId; + u8 bgSpriteId; - spriteId = CreateMonSpriteFromNationalDexNumber(nationalDexNum, x, y, position); - gSprites[spriteId].oam.priority = 1; - gSprites[spriteId].data[1] = position + 1; - gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].callback = sub_8177050; - gSprites[spriteId].data[6] = spriteId; + monSpriteId = CreateMonSpriteFromNationalDexNumber(nationalDexNum, x, y, position); + gSprites[monSpriteId].oam.priority = 1; + gSprites[monSpriteId].sPosition = position + 1; + gSprites[monSpriteId].invisible = TRUE; + gSprites[monSpriteId].callback = SpriteCB_CreditsMon; + gSprites[monSpriteId].sSpriteId = monSpriteId; - spriteId2 = CreateSprite(&gUnknown_085E7068, gSprites[spriteId].pos1.x, gSprites[spriteId].pos1.y, 1); - gSprites[spriteId2].data[0] = spriteId; + bgSpriteId = CreateSprite(&sSpriteTemplate_CreditsMonBg, gSprites[monSpriteId].pos1.x, gSprites[monSpriteId].pos1.y, 1); + gSprites[bgSpriteId].sMonSpriteId = monSpriteId; - StartSpriteAnimIfDifferent(&gSprites[spriteId2], position); + StartSpriteAnimIfDifferent(&gSprites[bgSpriteId], position); - return spriteId; + return monSpriteId; } -static void sub_81772B8(struct Sprite *sprite) +static void SpriteCB_CreditsMonBg(struct Sprite *sprite) { - if (gSprites[sprite->data[0]].data[0] == 10 || gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_MOVING) + if (gSprites[sprite->sMonSpriteId].data[0] == 10 + || gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { DestroySprite(sprite); return; } - sprite->invisible = gSprites[sprite->data[0]].invisible; - sprite->oam.objMode = gSprites[sprite->data[0]].oam.objMode; - sprite->oam.affineMode = gSprites[sprite->data[0]].oam.affineMode; - sprite->oam.matrixNum = gSprites[sprite->data[0]].oam.matrixNum; - sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; + // Copy sprite data from the associated Pokémon + sprite->invisible = gSprites[sprite->sMonSpriteId].invisible; + sprite->oam.objMode = gSprites[sprite->sMonSpriteId].oam.objMode; + sprite->oam.affineMode = gSprites[sprite->sMonSpriteId].oam.affineMode; + sprite->oam.matrixNum = gSprites[sprite->sMonSpriteId].oam.matrixNum; + sprite->pos1.x = gSprites[sprite->sMonSpriteId].pos1.x; + sprite->pos1.y = gSprites[sprite->sMonSpriteId].pos1.y; } static void DeterminePokemonToShow(void) diff --git a/src/data/credits.h b/src/data/credits.h new file mode 100644 index 000000000000..3ae2b1d3bea2 --- /dev/null +++ b/src/data/credits.h @@ -0,0 +1,787 @@ +enum +{ + PAGE_TITLE, + PAGE_DIRECTOR, + PAGE_ART_DIRECTOR, + PAGE_WORLD_DIRECTOR, + PAGE_LEAD_PROGRAMMER, + PAGE_PROGRAMMERS_1, + PAGE_PROGRAMMERS_2, + PAGE_PROGRAMMERS_3, + PAGE_PROGRAMMERS_4, + PAGE_GRAPHIC_DESIGNERS_1, + PAGE_GRAPHIC_DESIGNERS_2, + PAGE_GRAPHIC_DESIGNERS_3, + PAGE_MUSIC_COMPOSITION, + PAGE_SOUND_EFFECTS, + PAGE_GAME_DESIGNERS_1, + PAGE_GAME_DESIGNERS_2, + PAGE_GAME_DESIGNERS_3, + PAGE_SCENARIO_PLOT, + PAGE_SCENARIO, + PAGE_SCRIPT_DESIGNERS, + PAGE_MAP_DESIGNERS, + PAGE_BATTLE_FRONTIER_DATA, + PAGE_PARAMETRIC_DESIGNERS, + PAGE_POKEDEX_TEXT, + PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_1, + PAGE_PKMN_DESIGNERS_1, + PAGE_PKMN_DESIGNERS_2, + PAGE_PKMN_DESIGNERS_3, + PAGE_PKMN_DESIGNERS_4, + PAGE_SUPPORT_PROGRAMMERS, + PAGE_NCL_PRODUCT_TESTING, + PAGE_PACKAGE_AND_MANUAL, + PAGE_SPECIAL_THANKS_1, + PAGE_SPECIAL_THANKS_2, + PAGE_SPECIAL_THANKS_3, + PAGE_SPECIAL_THANKS_4, + PAGE_INFORMATION_SUPERVISORS, + PAGE_ARTWORK_1, + PAGE_ARTWORK_2, + PAGE_ARTWORK_3, + PAGE_COORDINATORS, + PAGE_ENGLISH_VERSION, + PAGE_TRANSLATOR, + PAGE_TEXT_EDITOR, + PAGE_NCL_COORDINATOR, + PAGE_PROGRAMMERS_5, + PAGE_GRAPHIC_DESIGNER, + PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_2, + PAGE_NOA_TESTING, + PAGE_BRAILLE_CODE_CHECK_1, + PAGE_BRAILLE_CODE_CHECK_2, + PAGE_SPECIAL_THANKS_5, + PAGE_TASK_MANAGERS, + PAGE_PRODUCERS, + PAGE_EXECUTIVE_DIRECTOR, + PAGE_EXECUTIVE_PRODUCERS_1, + PAGE_EXECUTIVE_PRODUCERS_2, + PAGE_COUNT +}; + +#define ENTRIES_PER_PAGE 5 + +static const u8 sCreditsText_EmptyString[] = _(""); +static const u8 sCreditsText_PkmnEmeraldVersion[] = _("POKéMON EMERALD VERSION"); +static const u8 sCreditsText_Credits[] = _("Credits"); +static const u8 sCreditsText_ExecutiveDirector[] = _("Executive Director"); +static const u8 sCreditsText_Director[] = _("Director"); +static const u8 sCreditsText_ArtDirector[] = _("Art Director"); +static const u8 sCreditsText_BattleDirector[] = _("Battle Director"); +static const u8 sCreditsText_MainProgrammer[] = _("Main Programmer"); +static const u8 sCreditsText_BattleSystemPgrms[] = _("Battle System Programmers"); +static const u8 sCreditsText_FieldSystemPgrms[] = _("Field System Programmer"); +static const u8 sCreditsText_Programmers[] = _("Programmers"); +static const u8 sCreditsText_MainGraphicDesigner[] = _("Main Graphic Designer"); +static const u8 sCreditsText_GraphicDesigners[] = _("Graphic Designers"); +static const u8 sCreditsText_PkmnDesigners[] = _("POKéMON Designers"); +static const u8 sCreditsText_MusicComposition[] = _("Music Composition"); +static const u8 sCreditsText_SoundEffectsAndPkmnVoices[] = _("Sound Effects & POKéMON Voices"); +static const u8 sCreditsText_GameDesigners[] = _("Game Designers"); +static const u8 sCreditsText_ScenarioPlot[] = _("Scenario Plot"); +static const u8 sCreditsText_Scenario[] = _("Scenario"); +static const u8 sCreditsText_ScriptDesigners[] = _("Script Designers"); +static const u8 sCreditsText_MapDesigners[] = _("Map Designers"); +static const u8 sCreditsText_MapDataDesigners[] = _("Map Data Designers"); +static const u8 sCreditsText_ParametricDesigners[] = _("Parametric Designers"); +static const u8 sCreditsText_PokedexText[] = _("POKéDEX Text"); +static const u8 sCreditsText_EnvAndToolPgrms[] = _("Environment & Tool Programmers"); +static const u8 sCreditsText_NCLProductTesting[] = _("NCL Product Testing"); +static const u8 sCreditsText_SpecialThanks[] = _("Special Thanks"); +static const u8 sCreditsText_Coordinators[] = _("Coordinators"); +static const u8 sCreditsText_Producers[] = _("Producers"); +static const u8 sCreditsText_ExecProducers[] = _("Executive Producers"); +static const u8 sCreditsText_InfoSupervisors[] = _("Information Supervisors"); +static const u8 sCreditsText_TaskManagers[] = _("Task Managers"); +static const u8 sCreditsText_BrailleCodeCheck[] = _("Braille Code Check"); +static const u8 sCreditsText_WorldDirector[] = _("World Director"); +static const u8 sCreditsText_BattleFrontierData[] = _("Battle Frontier Data"); +static const u8 sCreditsText_SupportProgrammers[] = _("Support Programmers"); +static const u8 sCreditsText_Artwork[] = _("Artwork"); +static const u8 sCreditsText_LeadProgrammer[] = _("Lead Programmer"); +static const u8 sCreditsText_LeadGraphicArtist[] = _("Lead Graphic Artist"); +static const u8 sCreditsText_SatoshiTajiri[] = _("Satoshi Tajiri"); +static const u8 sCreditsText_JunichiMasuda[] = _("Junichi Masuda"); +static const u8 sCreditsText_KenSugimori[] = _("Ken Sugimori"); +static const u8 sCreditsText_ShigekiMorimoto[] = _("Shigeki Morimoto"); +static const u8 sCreditsText_TetsuyaWatanabe[] = _("Tetsuya Watanabe"); +static const u8 sCreditsText_HisashiSogabe[] = _("Hisashi Sogabe"); +static const u8 sCreditsText_SosukeTamada[] = _("Sosuke Tamada"); +static const u8 sCreditsText_AkitoMori[] = _("Akito Mori"); +static const u8 sCreditsText_KeitaKagaya[] = _("Keita Kagaya"); +static const u8 sCreditsText_YoshinoriMatsuda[] = _("Yoshinori Matsuda"); +static const u8 sCreditsText_HiroyukiNakamura[] = _("Hiroyuki Nakamura"); +static const u8 sCreditsText_MasaoTaya[] = _("Masao Taya"); +static const u8 sCreditsText_SatoshiNohara[] = _("Satoshi Nohara"); +static const u8 sCreditsText_TomomichiOhta[] = _("Tomomichi Ohta"); +static const u8 sCreditsText_MiyukiIwasawa[] = _("Miyuki Iwasawa"); +static const u8 sCreditsText_TakenoriOhta[] = _("Takenori Ohta"); +static const u8 sCreditsText_HironobuYoshida[] = _("Hironobu Yoshida"); +static const u8 sCreditsText_MotofumiFujiwara[] = _("Motofumi Fujiwara"); +static const u8 sCreditsText_SatoshiOhta[] = _("Satoshi Ohta"); +static const u8 sCreditsText_AsukaIwashita[] = _("Asuka Iwashita"); +static const u8 sCreditsText_AimiTomita[] = _("Aimi Tomita"); +static const u8 sCreditsText_TakaoUnno[] = _("Takao Unno"); +static const u8 sCreditsText_KanakoEo[] = _("Kanako Eo"); +static const u8 sCreditsText_JunOkutani[] = _("Jun Okutani"); +static const u8 sCreditsText_AtsukoNishida[] = _("Atsuko Nishida"); +static const u8 sCreditsText_MuneoSaito[] = _("Muneo Saito"); +static const u8 sCreditsText_RenaYoshikawa[] = _("Rena Yoshikawa"); +static const u8 sCreditsText_GoIchinose[] = _("Go Ichinose"); +static const u8 sCreditsText_MorikazuAoki[] = _("Morikazu Aoki"); +static const u8 sCreditsText_KojiNishino[] = _("Koji Nishino"); +static const u8 sCreditsText_KenjiMatsushima[] = _("Kenji Matsushima"); +static const u8 sCreditsText_TetsujiOhta[] = _("Tetsuji Ohta"); +static const u8 sCreditsText_HitomiSato[] = _("Hitomi Sato"); +static const u8 sCreditsText_TakeshiKawachimaru[] = _("Takeshi Kawachimaru"); +static const u8 sCreditsText_TeruyukiShimoyamada[] = _("Teruyuki Shimoyamada"); +static const u8 sCreditsText_ShigeruOhmori[] = _("Shigeru Ohmori"); +static const u8 sCreditsText_TadashiTakahashi[] = _("Tadashi Takahashi"); +static const u8 sCreditsText_ToshinobuMatsumiya[] = _("Toshinobu Matsumiya"); +static const u8 sCreditsText_AkihitoTomisawa[] = _("Akihito Tomisawa"); +static const u8 sCreditsText_HirokiEnomoto[] = _("Hiroki Enomoto"); +static const u8 sCreditsText_KazuyukiTerada[] = _("Kazuyuki Terada"); +static const u8 sCreditsText_YuriSakurai[] = _("Yuri Sakurai"); +static const u8 sCreditsText_HiromiSagawa[] = _("Hiromi Sagawa"); +static const u8 sCreditsText_KenjiTominaga[] = _("Kenji Tominaga"); +static const u8 sCreditsText_YoshioTajiri[] = _("Yoshio Tajiri"); +static const u8 sCreditsText_TeikoSasaki[] = _("Teiko Sasaki"); +static const u8 sCreditsText_SachikoHamano[] = _("Sachiko Hamano"); +static const u8 sCreditsText_ChieMatsumiya[] = _("Chie Matsumiya"); +static const u8 sCreditsText_AkikoShinozaki[] = _("Akiko Shinozaki"); +static const u8 sCreditsText_AstukoFujii[] = _("Astuko Fujii"); +static const u8 sCreditsText_NozomuSaito[] = _("Nozomu Saito"); +static const u8 sCreditsText_KenkichiToyama[] = _("Kenkichi Toyama"); +static const u8 sCreditsText_SuguruNakatsui[] = _("Suguru Nakatsui"); +static const u8 sCreditsText_YumiFunasaka[] = _("Yumi Funasaka"); +static const u8 sCreditsText_NaokoYanase[] = _("Naoko Yanase"); +static const u8 sCreditsText_NCLSuperMarioClub[] = _("NCL Super Mario Club"); +static const u8 sCreditsText_AtsushiTada[] = _("Atsushi Tada"); +static const u8 sCreditsText_TakahiroOhnishi[] = _("Takahiro Ohnishi"); +static const u8 sCreditsText_NorihideOkamura[] = _("Norihide Okamura"); +static const u8 sCreditsText_HiroNakamura[] = _("Hiro Nakamura"); +static const u8 sCreditsText_HiroyukiUesugi[] = _("Hiroyuki Uesugi"); +static const u8 sCreditsText_TerukiMurakawa[] = _("Teruki Murakawa"); +static const u8 sCreditsText_AkiraKinashi[] = _("Akira Kinashi"); +static const u8 sCreditsText_MichikoTakizawa[] = _("Michiko Takizawa"); +static const u8 sCreditsText_MakikoTakada[] = _("Makiko Takada"); +static const u8 sCreditsText_TakanaoKondo[] = _("Takanao Kondo"); +static const u8 sCreditsText_AiMashima[] = _("Ai Mashima"); +static const u8 sCreditsText_GakujiNomoto[] = _("Gakuji Nomoto"); +static const u8 sCreditsText_TakehiroIzushi[] = _("Takehiro Izushi"); +static const u8 sCreditsText_HitoshiYamagami[] = _("Hitoshi Yamagami"); +static const u8 sCreditsText_KyokoWatanabe[] = _("Kyoko Watanabe"); +static const u8 sCreditsText_TakaoNakano[] = _("Takao Nakano"); +static const u8 sCreditsText_HiroyukiJinnai[] = _("Hiroyuki Jinnai"); +static const u8 sCreditsText_HiroakiTsuru[] = _("Hiroaki Tsuru"); +static const u8 sCreditsText_TsunekazIshihara[] = _("Tsunekaz Ishihara"); +static const u8 sCreditsText_SatoruIwata[] = _("Satoru Iwata"); +static const u8 sCreditsText_KazuyaSuyama[] = _("Kazuya Suyama"); +static const u8 sCreditsText_SatoshiMitsuhara[] = _("Satoshi Mitsuhara"); +static const u8 sCreditsText_JapanBrailleLibrary[] = _("Japan Braille Library"); +static const u8 sCreditsText_TomotakaKomura[] = _("Tomotaka Komura"); +static const u8 sCreditsText_MikikoOhhashi[] = _("Mikiko Ohhashi"); +static const u8 sCreditsText_DaisukeHoshino[] = _("Daisuke Hoshino"); +static const u8 sCreditsText_KenjiroIto[] = _("Kenjiro Ito"); +static const u8 sCreditsText_RuiKawaguchi[] = _("Rui Kawaguchi"); +static const u8 sCreditsText_ShunsukeKohori[] = _("Shunsuke Kohori"); +static const u8 sCreditsText_SachikoNakamichi[] = _("Sachiko Nakamichi"); +static const u8 sCreditsText_FujikoNomura[] = _("Fujiko Nomura"); +static const u8 sCreditsText_KazukiYoshihara[] = _("Kazuki Yoshihara"); +static const u8 sCreditsText_RetsujiNomoto[] = _("Retsuji Nomoto"); +static const u8 sCreditsText_AzusaTajima[] = _("Azusa Tajima"); +static const u8 sCreditsText_ShusakuEgami[] = _("Shusaku Egami"); +static const u8 sCreditsText_PackageAndManual[] = _("Package & Manual Illustration"); +static const u8 sCreditsText_EnglishVersion[] = _("English Version Coordinators"); +static const u8 sCreditsText_Translator[] = _("Translator"); +static const u8 sCreditsText_TextEditor[] = _("Text Editor"); +static const u8 sCreditsText_NCLCoordinator[] = _("NCL Coordinator"); +static const u8 sCreditsText_GraphicDesigner[] = _("Graphic Designer"); +static const u8 sCreditsText_NOAProductTesting[] = _("NOA Product Testing"); +static const u8 sCreditsText_HideyukiNakajima[] = _("Hideyuki Nakajima"); +static const u8 sCreditsText_HidenoriSaeki[] = _("Hidenori Saeki"); +static const u8 sCreditsText_YokoWatanabe[] = _("Yoko Watanabe"); +static const u8 sCreditsText_SakaeKimura[] = _("Sakae Kimura"); +static const u8 sCreditsText_ChiakiShinkai[] = _("Chiaki Shinkai"); +static const u8 sCreditsText_SethMcMahill[] = _("Seth McMahill"); +static const u8 sCreditsText_NobOgasawara[] = _("Nob Ogasawara"); +static const u8 sCreditsText_TeresaLillygren[] = _("Teresa Lillygren"); +static const u8 sCreditsText_KimikoNakamichi[] = _("Kimiko Nakamichi"); +static const u8 sCreditsText_SouichiYamamoto[] = _("Souichi Yamamoto"); +static const u8 sCreditsText_YuichiroIto[] = _("Yuichiro Ito"); +static const u8 sCreditsText_ThomasHertzog[] = _("Thomas Hertzog"); +static const u8 sCreditsText_MikaKurosawa[] = _("Mika Kurosawa"); +static const u8 sCreditsText_NationalFederationBlind[] = _("National Federation of the Blind"); +static const u8 sCreditsText_PatriciaAMaurer[] = _("Patricia A. Maurer"); +static const u8 sCreditsText_EuropeanBlindUnion[] = _("European Blind Union"); +static const u8 sCreditsText_AustralianBrailleAuthority[] = _("Australian Braille Authority"); +static const u8 sCreditsText_RoyalNewZealandFederationBlind[] = _("Royal New Zealand Federation for the Blind"); +static const u8 sCreditsText_MotoyasuTojima[] = _("Motoyasu Tojima"); +static const u8 sCreditsText_NicolaPrattBarlow[] = _("Nicola Pratt-Barlow"); +static const u8 sCreditsText_ShellieDow[] = _("Shellie Dow"); +static const u8 sCreditsText_ErikJohnson[] = _("Erik Johnson"); +static const struct CreditsEntry sCreditsEntry_EmptyString[] = { 0, FALSE, sCreditsText_EmptyString}; +static const struct CreditsEntry sCreditsEntry_PkmnEmeraldVersion[] = { 7, TRUE, sCreditsText_PkmnEmeraldVersion}; +static const struct CreditsEntry sCreditsEntry_Credits[] = {11, TRUE, sCreditsText_Credits}; +static const struct CreditsEntry sCreditsEntry_ExecutiveDirector[] = { 8, TRUE, sCreditsText_ExecutiveDirector}; +static const struct CreditsEntry sCreditsEntry_Director[] = {12, TRUE, sCreditsText_Director}; +static const struct CreditsEntry sCreditsEntry_ArtDirector[] = {10, TRUE, sCreditsText_ArtDirector}; +static const struct CreditsEntry sCreditsEntry_BattleDirector[] = {10, TRUE, sCreditsText_BattleDirector}; +static const struct CreditsEntry sCreditsEntry_MainProgrammer[] = {10, TRUE, sCreditsText_MainProgrammer}; +static const struct CreditsEntry sCreditsEntry_BattleSystemPgrms[] = { 8, TRUE, sCreditsText_BattleSystemPgrms}; +static const struct CreditsEntry sCreditsEntry_FieldSystemPgrms[] = { 7, TRUE, sCreditsText_FieldSystemPgrms}; +static const struct CreditsEntry sCreditsEntry_Programmers[] = {12, TRUE, sCreditsText_Programmers}; +static const struct CreditsEntry sCreditsEntry_MainGraphicDesigner[] = { 7, TRUE, sCreditsText_MainGraphicDesigner}; +static const struct CreditsEntry sCreditsEntry_GraphicDesigners[] = { 9, TRUE, sCreditsText_GraphicDesigners}; +static const struct CreditsEntry sCreditsEntry_PkmnDesigners[] = {10, TRUE, sCreditsText_PkmnDesigners}; +static const struct CreditsEntry sCreditsEntry_MusicComposition[] = {13, TRUE, sCreditsText_MusicComposition}; +static const struct CreditsEntry sCreditsEntry_SoundEffectsAndPkmnVoices[] = { 4, TRUE, sCreditsText_SoundEffectsAndPkmnVoices}; +static const struct CreditsEntry sCreditsEntry_GameDesigners[] = {11, TRUE, sCreditsText_GameDesigners}; +static const struct CreditsEntry sCreditsEntry_ScenarioPlot[] = {11, TRUE, sCreditsText_ScenarioPlot}; +static const struct CreditsEntry sCreditsEntry_Scenario[] = {13, TRUE, sCreditsText_Scenario}; +static const struct CreditsEntry sCreditsEntry_ScriptDesigners[] = {10, TRUE, sCreditsText_ScriptDesigners}; +static const struct CreditsEntry sCreditsEntry_MapDesigners[] = {11, TRUE, sCreditsText_MapDesigners}; +static const struct CreditsEntry sCreditsEntry_MapDataDesigners[] = { 9, TRUE, sCreditsText_MapDataDesigners}; +static const struct CreditsEntry sCreditsEntry_ParametricDesigners[] = { 9, TRUE, sCreditsText_ParametricDesigners}; +static const struct CreditsEntry sCreditsEntry_PokedexText[] = {11, TRUE, sCreditsText_PokedexText}; +static const struct CreditsEntry sCreditsEntry_EnvAndToolPgrms[] = { 6, TRUE, sCreditsText_EnvAndToolPgrms}; +static const struct CreditsEntry sCreditsEntry_NCLProductTesting[] = {11, TRUE, sCreditsText_NCLProductTesting}; +static const struct CreditsEntry sCreditsEntry_SpecialThanks[] = {10, TRUE, sCreditsText_SpecialThanks}; +static const struct CreditsEntry sCreditsEntry_Coordinators[] = {11, TRUE, sCreditsText_Coordinators}; +static const struct CreditsEntry sCreditsEntry_Producers[] = {11, TRUE, sCreditsText_Producers}; +static const struct CreditsEntry sCreditsEntry_ExecProducers[] = { 7, TRUE, sCreditsText_ExecProducers}; +static const struct CreditsEntry sCreditsEntry_InfoSupervisors[] = {10, TRUE, sCreditsText_InfoSupervisors}; +static const struct CreditsEntry sCreditsEntry_TaskManagers[] = { 8, TRUE, sCreditsText_TaskManagers}; +static const struct CreditsEntry sCreditsEntry_BrailleCodeCheck[] = {10, TRUE, sCreditsText_BrailleCodeCheck}; +static const struct CreditsEntry sCreditsEntry_WorldDirector[] = {10, TRUE, sCreditsText_WorldDirector}; +static const struct CreditsEntry sCreditsEntry_BattleFrontierData[] = { 8, TRUE, sCreditsText_BattleFrontierData}; +static const struct CreditsEntry sCreditsEntry_SupportProgrammers[] = {10, TRUE, sCreditsText_SupportProgrammers}; +static const struct CreditsEntry sCreditsEntry_Artwork[] = {12, TRUE, sCreditsText_Artwork}; +static const struct CreditsEntry sCreditsEntry_LeadProgrammer[] = {10, TRUE, sCreditsText_LeadProgrammer}; +static const struct CreditsEntry sCreditsEntry_LeadGraphicArtist[] = { 9, TRUE, sCreditsText_LeadGraphicArtist}; +static const struct CreditsEntry sCreditsEntry_SatoshiTajiri[] = {11, FALSE, sCreditsText_SatoshiTajiri}; +static const struct CreditsEntry sCreditsEntry_JunichiMasuda[] = {11, FALSE, sCreditsText_JunichiMasuda}; +static const struct CreditsEntry sCreditsEntry_KenSugimori[] = {11, FALSE, sCreditsText_KenSugimori}; +static const struct CreditsEntry sCreditsEntry_ShigekiMorimoto[] = {11, FALSE, sCreditsText_ShigekiMorimoto}; +static const struct CreditsEntry sCreditsEntry_TetsuyaWatanabe[] = {11, FALSE, sCreditsText_TetsuyaWatanabe}; +static const struct CreditsEntry sCreditsEntry_HisashiSogabe[] = {11, FALSE, sCreditsText_HisashiSogabe}; +static const struct CreditsEntry sCreditsEntry_SosukeTamada[] = {11, FALSE, sCreditsText_SosukeTamada}; +static const struct CreditsEntry sCreditsEntry_AkitoMori[] = {11, FALSE, sCreditsText_AkitoMori}; +static const struct CreditsEntry sCreditsEntry_KeitaKagaya[] = {11, FALSE, sCreditsText_KeitaKagaya}; +static const struct CreditsEntry sCreditsEntry_YoshinoriMatsuda[] = {11, FALSE, sCreditsText_YoshinoriMatsuda}; +static const struct CreditsEntry sCreditsEntry_HiroyukiNakamura[] = {11, FALSE, sCreditsText_HiroyukiNakamura}; +static const struct CreditsEntry sCreditsEntry_MasaoTaya[] = {11, FALSE, sCreditsText_MasaoTaya}; +static const struct CreditsEntry sCreditsEntry_SatoshiNohara[] = {11, FALSE, sCreditsText_SatoshiNohara}; +static const struct CreditsEntry sCreditsEntry_TomomichiOhta[] = {11, FALSE, sCreditsText_TomomichiOhta}; +static const struct CreditsEntry sCreditsEntry_MiyukiIwasawa[] = {11, FALSE, sCreditsText_MiyukiIwasawa}; +static const struct CreditsEntry sCreditsEntry_TakenoriOhta[] = {11, FALSE, sCreditsText_TakenoriOhta}; +static const struct CreditsEntry sCreditsEntry_HironobuYoshida[] = {11, FALSE, sCreditsText_HironobuYoshida}; +static const struct CreditsEntry sCreditsEntry_MotofumiFujiwara[] = {11, FALSE, sCreditsText_MotofumiFujiwara}; +static const struct CreditsEntry sCreditsEntry_SatoshiOhta[] = {11, FALSE, sCreditsText_SatoshiOhta}; +static const struct CreditsEntry sCreditsEntry_AsukaIwashita[] = {11, FALSE, sCreditsText_AsukaIwashita}; +static const struct CreditsEntry sCreditsEntry_AimiTomita[] = {11, FALSE, sCreditsText_AimiTomita}; +static const struct CreditsEntry sCreditsEntry_TakaoUnno[] = {11, FALSE, sCreditsText_TakaoUnno}; +static const struct CreditsEntry sCreditsEntry_KanakoEo[] = {11, FALSE, sCreditsText_KanakoEo}; +static const struct CreditsEntry sCreditsEntry_JunOkutani[] = {11, FALSE, sCreditsText_JunOkutani}; +static const struct CreditsEntry sCreditsEntry_AtsukoNishida[] = {11, FALSE, sCreditsText_AtsukoNishida}; +static const struct CreditsEntry sCreditsEntry_MuneoSaito[] = {11, FALSE, sCreditsText_MuneoSaito}; +static const struct CreditsEntry sCreditsEntry_RenaYoshikawa[] = {11, FALSE, sCreditsText_RenaYoshikawa}; +static const struct CreditsEntry sCreditsEntry_GoIchinose[] = {11, FALSE, sCreditsText_GoIchinose}; +static const struct CreditsEntry sCreditsEntry_MorikazuAoki[] = {11, FALSE, sCreditsText_MorikazuAoki}; +static const struct CreditsEntry sCreditsEntry_KojiNishino[] = {11, FALSE, sCreditsText_KojiNishino}; +static const struct CreditsEntry sCreditsEntry_KenjiMatsushima[] = {11, FALSE, sCreditsText_KenjiMatsushima}; +static const struct CreditsEntry sCreditsEntry_TetsujiOhta[] = {11, FALSE, sCreditsText_TetsujiOhta}; +static const struct CreditsEntry sCreditsEntry_HitomiSato[] = {11, FALSE, sCreditsText_HitomiSato}; +static const struct CreditsEntry sCreditsEntry_TakeshiKawachimaru[] = {11, FALSE, sCreditsText_TakeshiKawachimaru}; +static const struct CreditsEntry sCreditsEntry_TeruyukiShimoyamada[] = {11, FALSE, sCreditsText_TeruyukiShimoyamada}; +static const struct CreditsEntry sCreditsEntry_ShigeruOhmori[] = {11, FALSE, sCreditsText_ShigeruOhmori}; +static const struct CreditsEntry sCreditsEntry_TadashiTakahashi[] = {11, FALSE, sCreditsText_TadashiTakahashi}; +static const struct CreditsEntry sCreditsEntry_ToshinobuMatsumiya[] = {11, FALSE, sCreditsText_ToshinobuMatsumiya}; +static const struct CreditsEntry sCreditsEntry_AkihitoTomisawa[] = {11, FALSE, sCreditsText_AkihitoTomisawa}; +static const struct CreditsEntry sCreditsEntry_HirokiEnomoto[] = {11, FALSE, sCreditsText_HirokiEnomoto}; +static const struct CreditsEntry sCreditsEntry_KazuyukiTerada[] = {11, FALSE, sCreditsText_KazuyukiTerada}; +static const struct CreditsEntry sCreditsEntry_YuriSakurai[] = {11, FALSE, sCreditsText_YuriSakurai}; +static const struct CreditsEntry sCreditsEntry_HiromiSagawa[] = {11, FALSE, sCreditsText_HiromiSagawa}; +static const struct CreditsEntry sCreditsEntry_KenjiTominaga[] = {11, FALSE, sCreditsText_KenjiTominaga}; +static const struct CreditsEntry sCreditsEntry_YoshioTajiri[] = {11, FALSE, sCreditsText_YoshioTajiri}; +static const struct CreditsEntry sCreditsEntry_TeikoSasaki[] = {11, FALSE, sCreditsText_TeikoSasaki}; +static const struct CreditsEntry sCreditsEntry_SachikoHamano[] = {11, FALSE, sCreditsText_SachikoHamano}; +static const struct CreditsEntry sCreditsEntry_ChieMatsumiya[] = {11, FALSE, sCreditsText_ChieMatsumiya}; +static const struct CreditsEntry sCreditsEntry_AkikoShinozaki[] = {11, FALSE, sCreditsText_AkikoShinozaki}; +static const struct CreditsEntry sCreditsEntry_AstukoFujii[] = {11, FALSE, sCreditsText_AstukoFujii}; +static const struct CreditsEntry sCreditsEntry_NozomuSaito[] = {11, FALSE, sCreditsText_NozomuSaito}; +static const struct CreditsEntry sCreditsEntry_KenkichiToyama[] = {11, FALSE, sCreditsText_KenkichiToyama}; +static const struct CreditsEntry sCreditsEntry_SuguruNakatsui[] = {11, FALSE, sCreditsText_SuguruNakatsui}; +static const struct CreditsEntry sCreditsEntry_YumiFunasaka[] = {11, FALSE, sCreditsText_YumiFunasaka}; +static const struct CreditsEntry sCreditsEntry_NaokoYanase[] = {11, FALSE, sCreditsText_NaokoYanase}; +static const struct CreditsEntry sCreditsEntry_NCLSuperMarioClub[] = {11, FALSE, sCreditsText_NCLSuperMarioClub}; +static const struct CreditsEntry sCreditsEntry_AtsushiTada[] = {11, FALSE, sCreditsText_AtsushiTada}; +static const struct CreditsEntry sCreditsEntry_TakahiroOhnishi[] = {11, FALSE, sCreditsText_TakahiroOhnishi}; +static const struct CreditsEntry sCreditsEntry_NorihideOkamura[] = {11, FALSE, sCreditsText_NorihideOkamura}; +static const struct CreditsEntry sCreditsEntry_HiroNakamura[] = {11, FALSE, sCreditsText_HiroNakamura}; +static const struct CreditsEntry sCreditsEntry_HiroyukiUesugi[] = {11, FALSE, sCreditsText_HiroyukiUesugi}; +static const struct CreditsEntry sCreditsEntry_TerukiMurakawa[] = {11, FALSE, sCreditsText_TerukiMurakawa}; +static const struct CreditsEntry sCreditsEntry_AkiraKinashi[] = {11, FALSE, sCreditsText_AkiraKinashi}; +static const struct CreditsEntry sCreditsEntry_MichikoTakizawa[] = {11, FALSE, sCreditsText_MichikoTakizawa}; +static const struct CreditsEntry sCreditsEntry_MakikoTakada[] = {11, FALSE, sCreditsText_MakikoTakada}; +static const struct CreditsEntry sCreditsEntry_TakanaoKondo[] = {11, FALSE, sCreditsText_TakanaoKondo}; +static const struct CreditsEntry sCreditsEntry_AiMashima[] = {11, FALSE, sCreditsText_AiMashima}; +static const struct CreditsEntry sCreditsEntry_GakujiNomoto[] = {11, FALSE, sCreditsText_GakujiNomoto}; +static const struct CreditsEntry sCreditsEntry_TakehiroIzushi[] = {11, FALSE, sCreditsText_TakehiroIzushi}; +static const struct CreditsEntry sCreditsEntry_HitoshiYamagami[] = {11, FALSE, sCreditsText_HitoshiYamagami}; +static const struct CreditsEntry sCreditsEntry_KyokoWatanabe[] = {11, FALSE, sCreditsText_KyokoWatanabe}; +static const struct CreditsEntry sCreditsEntry_TakaoNakano[] = {11, FALSE, sCreditsText_TakaoNakano}; +static const struct CreditsEntry sCreditsEntry_HiroyukiJinnai[] = {11, FALSE, sCreditsText_HiroyukiJinnai}; +static const struct CreditsEntry sCreditsEntry_HiroakiTsuru[] = {11, FALSE, sCreditsText_HiroakiTsuru}; +static const struct CreditsEntry sCreditsEntry_TsunekazIshihara[] = {11, FALSE, sCreditsText_TsunekazIshihara}; +static const struct CreditsEntry sCreditsEntry_SatoruIwata[] = {11, FALSE, sCreditsText_SatoruIwata}; +static const struct CreditsEntry sCreditsEntry_KazuyaSuyama[] = {11, FALSE, sCreditsText_KazuyaSuyama}; +static const struct CreditsEntry sCreditsEntry_SatoshiMitsuhara[] = {11, FALSE, sCreditsText_SatoshiMitsuhara}; +static const struct CreditsEntry sCreditsEntry_JapanBrailleLibrary[] = { 9, FALSE, sCreditsText_JapanBrailleLibrary}; +static const struct CreditsEntry sCreditsEntry_TomotakaKomura[] = {11, FALSE, sCreditsText_TomotakaKomura}; +static const struct CreditsEntry sCreditsEntry_MikikoOhhashi[] = {11, FALSE, sCreditsText_MikikoOhhashi}; +static const struct CreditsEntry sCreditsEntry_DaisukeHoshino[] = {11, FALSE, sCreditsText_DaisukeHoshino}; +static const struct CreditsEntry sCreditsEntry_KenjiroIto[] = {11, FALSE, sCreditsText_KenjiroIto}; +static const struct CreditsEntry sCreditsEntry_RuiKawaguchi[] = {11, FALSE, sCreditsText_RuiKawaguchi}; +static const struct CreditsEntry sCreditsEntry_ShunsukeKohori[] = {11, FALSE, sCreditsText_ShunsukeKohori}; +static const struct CreditsEntry sCreditsEntry_SachikoNakamichi[] = {11, FALSE, sCreditsText_SachikoNakamichi}; +static const struct CreditsEntry sCreditsEntry_FujikoNomura[] = {11, FALSE, sCreditsText_FujikoNomura}; +static const struct CreditsEntry sCreditsEntry_KazukiYoshihara[] = {11, FALSE, sCreditsText_KazukiYoshihara}; +static const struct CreditsEntry sCreditsEntry_RetsujiNomoto[] = {11, FALSE, sCreditsText_RetsujiNomoto}; +static const struct CreditsEntry sCreditsEntry_AzusaTajima[] = {11, FALSE, sCreditsText_AzusaTajima}; +static const struct CreditsEntry sCreditsEntry_ShusakuEgami[] = {11, FALSE, sCreditsText_ShusakuEgami}; +static const struct CreditsEntry sCreditsEntry_PackageAndManual[] = { 0, TRUE, sCreditsText_PackageAndManual}; +static const struct CreditsEntry sCreditsEntry_EnglishVersion[] = { 0, TRUE, sCreditsText_EnglishVersion}; +static const struct CreditsEntry sCreditsEntry_Translator[] = { 0, TRUE, sCreditsText_Translator}; +static const struct CreditsEntry sCreditsEntry_TextEditor[] = { 0, TRUE, sCreditsText_TextEditor}; +static const struct CreditsEntry sCreditsEntry_NCLCoordinator[] = { 0, TRUE, sCreditsText_NCLCoordinator}; +static const struct CreditsEntry sCreditsEntry_GraphicDesigner[] = { 0, TRUE, sCreditsText_GraphicDesigner}; +static const struct CreditsEntry sCreditsEntry_NOAProductTesting[] = { 0, TRUE, sCreditsText_NOAProductTesting}; +static const struct CreditsEntry sCreditsEntry_HideyukiNakajima[] = { 0, FALSE, sCreditsText_HideyukiNakajima}; +static const struct CreditsEntry sCreditsEntry_HidenoriSaeki[] = { 0, FALSE, sCreditsText_HidenoriSaeki}; +static const struct CreditsEntry sCreditsEntry_YokoWatanabe[] = { 0, FALSE, sCreditsText_YokoWatanabe}; +static const struct CreditsEntry sCreditsEntry_SakaeKimura[] = { 0, FALSE, sCreditsText_SakaeKimura}; +static const struct CreditsEntry sCreditsEntry_ChiakiShinkai[] = { 0, FALSE, sCreditsText_ChiakiShinkai}; +static const struct CreditsEntry sCreditsEntry_SethMcMahill[] = { 0, FALSE, sCreditsText_SethMcMahill}; +static const struct CreditsEntry sCreditsEntry_NobOgasawara[] = { 0, FALSE, sCreditsText_NobOgasawara}; +static const struct CreditsEntry sCreditsEntry_TeresaLillygren[] = { 0, FALSE, sCreditsText_TeresaLillygren}; +static const struct CreditsEntry sCreditsEntry_KimikoNakamichi[] = { 0, FALSE, sCreditsText_KimikoNakamichi}; +static const struct CreditsEntry sCreditsEntry_SouichiYamamoto[] = { 0, FALSE, sCreditsText_SouichiYamamoto}; +static const struct CreditsEntry sCreditsEntry_YuichiroIto[] = { 0, FALSE, sCreditsText_YuichiroIto}; +static const struct CreditsEntry sCreditsEntry_ThomasHertzog[] = { 0, FALSE, sCreditsText_ThomasHertzog}; +static const struct CreditsEntry sCreditsEntry_MikaKurosawa[] = { 0, FALSE, sCreditsText_MikaKurosawa}; +static const struct CreditsEntry sCreditsEntry_NationalFederationBlind[] = { 0, FALSE, sCreditsText_NationalFederationBlind}; +static const struct CreditsEntry sCreditsEntry_PatriciaAMaurer[] = { 0, FALSE, sCreditsText_PatriciaAMaurer}; +static const struct CreditsEntry sCreditsEntry_EuropeanBlindUnion[] = { 0, FALSE, sCreditsText_EuropeanBlindUnion}; +static const struct CreditsEntry sCreditsEntry_AustralianBrailleAuthority[] = { 0, FALSE, sCreditsText_AustralianBrailleAuthority}; +static const struct CreditsEntry sCreditsEntry_RoyalNewZealandFederationBlind[] = { 0, FALSE, sCreditsText_RoyalNewZealandFederationBlind}; +static const struct CreditsEntry sCreditsEntry_MotoyasuTojima[] = { 0, FALSE, sCreditsText_MotoyasuTojima}; +static const struct CreditsEntry sCreditsEntry_NicolaPrattBarlow[] = { 0, FALSE, sCreditsText_NicolaPrattBarlow}; +static const struct CreditsEntry sCreditsEntry_ShellieDow[] = { 0, FALSE, sCreditsText_ShellieDow}; +static const struct CreditsEntry sCreditsEntry_ErikJohnson[] = { 0, FALSE, sCreditsText_ErikJohnson}; + +#define _ sCreditsEntry_EmptyString +static const struct CreditsEntry *const sCreditsEntryPointerTable[PAGE_COUNT][ENTRIES_PER_PAGE] = +{ + [PAGE_TITLE] = { + _, + sCreditsEntry_PkmnEmeraldVersion, + sCreditsEntry_Credits, + _, + _ + }, + [PAGE_DIRECTOR] = { + _, + sCreditsEntry_Director, + sCreditsEntry_ShigekiMorimoto, + _, + _, + }, + [PAGE_ART_DIRECTOR] = { + _, + sCreditsEntry_ArtDirector, + sCreditsEntry_KenSugimori, + _, + _, + }, + [PAGE_WORLD_DIRECTOR] = { + _, + sCreditsEntry_WorldDirector, + sCreditsEntry_JunichiMasuda, + _, + _, + }, + [PAGE_LEAD_PROGRAMMER] = { + sCreditsEntry_LeadProgrammer, + sCreditsEntry_HisashiSogabe, + sCreditsEntry_LeadGraphicArtist, + sCreditsEntry_MotofumiFujiwara, + _, + }, + [PAGE_PROGRAMMERS_1] = { + sCreditsEntry_Programmers, + sCreditsEntry_HisashiSogabe, + sCreditsEntry_TomomichiOhta, + sCreditsEntry_NozomuSaito, + sCreditsEntry_EmptyString, + }, + [PAGE_PROGRAMMERS_2] = { + sCreditsEntry_Programmers, + sCreditsEntry_AkitoMori, + sCreditsEntry_HiroyukiNakamura, + sCreditsEntry_MasaoTaya, + _, + }, + [PAGE_PROGRAMMERS_3] = { + sCreditsEntry_Programmers, + sCreditsEntry_SatoshiNohara, + sCreditsEntry_MiyukiIwasawa, + sCreditsEntry_YoshinoriMatsuda, + sCreditsEntry_KeitaKagaya, + }, + [PAGE_PROGRAMMERS_4] = { + sCreditsEntry_Programmers, + sCreditsEntry_TetsuyaWatanabe, + sCreditsEntry_SosukeTamada, + sCreditsEntry_TakenoriOhta, + _, + }, + [PAGE_GRAPHIC_DESIGNERS_1] = { + _, + sCreditsEntry_GraphicDesigners, + sCreditsEntry_MotofumiFujiwara, + sCreditsEntry_SatoshiOhta, + _, + }, + [PAGE_GRAPHIC_DESIGNERS_2] = { + sCreditsEntry_GraphicDesigners, + sCreditsEntry_KenkichiToyama, + sCreditsEntry_AsukaIwashita, + sCreditsEntry_TakaoUnno, + _, + }, + [PAGE_GRAPHIC_DESIGNERS_3] = { + sCreditsEntry_GraphicDesigners, + sCreditsEntry_KenSugimori, + sCreditsEntry_HironobuYoshida, + sCreditsEntry_AimiTomita, + sCreditsEntry_KanakoEo, + }, + [PAGE_MUSIC_COMPOSITION] = { + sCreditsEntry_MusicComposition, + sCreditsEntry_GoIchinose, + sCreditsEntry_JunichiMasuda, + sCreditsEntry_MorikazuAoki, + sCreditsEntry_HitomiSato, + }, + [PAGE_SOUND_EFFECTS] = { + _, + sCreditsEntry_SoundEffectsAndPkmnVoices, + sCreditsEntry_GoIchinose, + sCreditsEntry_MorikazuAoki, + _, + }, + [PAGE_GAME_DESIGNERS_1] = { + sCreditsEntry_GameDesigners, + sCreditsEntry_ShigekiMorimoto, + sCreditsEntry_TeruyukiShimoyamada, + sCreditsEntry_TakeshiKawachimaru, + sCreditsEntry_AkihitoTomisawa, + }, + [PAGE_GAME_DESIGNERS_2] = { + sCreditsEntry_GameDesigners, + sCreditsEntry_SuguruNakatsui, + sCreditsEntry_TetsujiOhta, + sCreditsEntry_HitomiSato, + sCreditsEntry_KenjiMatsushima, + }, + [PAGE_GAME_DESIGNERS_3] = { + sCreditsEntry_GameDesigners, + sCreditsEntry_JunichiMasuda, + sCreditsEntry_KojiNishino, + sCreditsEntry_ShigeruOhmori, + sCreditsEntry_TadashiTakahashi, + }, + [PAGE_SCENARIO_PLOT] = { + sCreditsEntry_ScenarioPlot, + sCreditsEntry_AkihitoTomisawa, + sCreditsEntry_JunichiMasuda, + sCreditsEntry_KojiNishino, + _, + }, + [PAGE_SCENARIO] = { + sCreditsEntry_Scenario, + sCreditsEntry_AkihitoTomisawa, + sCreditsEntry_HitomiSato, + sCreditsEntry_ToshinobuMatsumiya, + _, + }, + [PAGE_SCRIPT_DESIGNERS] = { + sCreditsEntry_ScriptDesigners, + sCreditsEntry_TomomichiOhta, + sCreditsEntry_SatoshiNohara, + _, + _, + }, + [PAGE_MAP_DESIGNERS] = { + sCreditsEntry_MapDesigners, + sCreditsEntry_SuguruNakatsui, + sCreditsEntry_TeruyukiShimoyamada, + sCreditsEntry_ShigeruOhmori, + sCreditsEntry_TetsujiOhta, + }, + [PAGE_BATTLE_FRONTIER_DATA] = { + _, + sCreditsEntry_BattleFrontierData, + sCreditsEntry_TetsujiOhta, + _, + _, + }, + [PAGE_PARAMETRIC_DESIGNERS] = { + sCreditsEntry_ParametricDesigners, + sCreditsEntry_TeruyukiShimoyamada, + sCreditsEntry_ShigekiMorimoto, + sCreditsEntry_TetsujiOhta, + sCreditsEntry_KojiNishino, + }, + [PAGE_POKEDEX_TEXT] = { + _, + sCreditsEntry_PokedexText, + sCreditsEntry_KenjiMatsushima, + _, + _, + }, + [PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_1] = { + sCreditsEntry_EnvAndToolPgrms, + sCreditsEntry_HisashiSogabe, + sCreditsEntry_SosukeTamada, + sCreditsEntry_HiroyukiNakamura, + sCreditsEntry_AkitoMori, + }, + [PAGE_PKMN_DESIGNERS_1] = { + sCreditsEntry_PkmnDesigners, + sCreditsEntry_KenSugimori, + sCreditsEntry_MotofumiFujiwara, + sCreditsEntry_ShigekiMorimoto, + _, + }, + [PAGE_PKMN_DESIGNERS_2] = { + sCreditsEntry_PkmnDesigners, + sCreditsEntry_HironobuYoshida, + sCreditsEntry_SatoshiOhta, + sCreditsEntry_AsukaIwashita, + _, + }, + [PAGE_PKMN_DESIGNERS_3] = { + sCreditsEntry_PkmnDesigners, + sCreditsEntry_TakaoUnno, + sCreditsEntry_KanakoEo, + sCreditsEntry_AimiTomita, + _, + }, + [PAGE_PKMN_DESIGNERS_4] = { + sCreditsEntry_PkmnDesigners, + sCreditsEntry_AtsukoNishida, + sCreditsEntry_MuneoSaito, + sCreditsEntry_RenaYoshikawa, + sCreditsEntry_JunOkutani, + }, + [PAGE_SUPPORT_PROGRAMMERS] = { + _, + sCreditsEntry_SupportProgrammers, + sCreditsEntry_SatoshiMitsuhara, + sCreditsEntry_DaisukeHoshino, + _, + }, + [PAGE_NCL_PRODUCT_TESTING] = { + _, + sCreditsEntry_NCLProductTesting, + sCreditsEntry_NCLSuperMarioClub, + _, + _, + }, + [PAGE_PACKAGE_AND_MANUAL] = { + _, + sCreditsEntry_PackageAndManual, + sCreditsEntry_KenSugimori, + _, + _, + }, + [PAGE_SPECIAL_THANKS_1] = { + _, + sCreditsEntry_SpecialThanks, + sCreditsEntry_KenjiTominaga, + sCreditsEntry_HirokiEnomoto, + _, + }, + [PAGE_SPECIAL_THANKS_2] = { + sCreditsEntry_SpecialThanks, + sCreditsEntry_KazuyaSuyama, + sCreditsEntry_KenjiroIto, + sCreditsEntry_MichikoTakizawa, + sCreditsEntry_MakikoTakada, + }, + [PAGE_SPECIAL_THANKS_3] = { + sCreditsEntry_SpecialThanks, + sCreditsEntry_MikikoOhhashi, + sCreditsEntry_TakanaoKondo, + sCreditsEntry_RuiKawaguchi, + _, + }, + [PAGE_SPECIAL_THANKS_4] = { + sCreditsEntry_SpecialThanks, + sCreditsEntry_TakahiroOhnishi, + sCreditsEntry_NorihideOkamura, + sCreditsEntry_ShunsukeKohori, + _, + }, + [PAGE_INFORMATION_SUPERVISORS] = { + sCreditsEntry_InfoSupervisors, + sCreditsEntry_KazuyukiTerada, + sCreditsEntry_YuriSakurai, + sCreditsEntry_YumiFunasaka, + sCreditsEntry_NaokoYanase, + }, + [PAGE_ARTWORK_1] = { + _, + sCreditsEntry_Artwork, + sCreditsEntry_SachikoNakamichi, + sCreditsEntry_FujikoNomura, + _, + }, + [PAGE_ARTWORK_2] = { + _, + sCreditsEntry_Artwork, + sCreditsEntry_HideyukiNakajima, + sCreditsEntry_HidenoriSaeki, + _, + }, + [PAGE_ARTWORK_3] = { + sCreditsEntry_Artwork, + sCreditsEntry_YokoWatanabe, + sCreditsEntry_SakaeKimura, + sCreditsEntry_ChiakiShinkai, + _, + }, + [PAGE_COORDINATORS] = { + sCreditsEntry_Coordinators, + sCreditsEntry_KazukiYoshihara, + sCreditsEntry_AkiraKinashi, + sCreditsEntry_RetsujiNomoto, + _, + }, + [PAGE_ENGLISH_VERSION] = { + _, + sCreditsEntry_EnglishVersion, + sCreditsEntry_HiroNakamura, + sCreditsEntry_SethMcMahill, + _, + }, + [PAGE_TRANSLATOR] = { + _, + sCreditsEntry_Translator, + sCreditsEntry_NobOgasawara, + _, + _, + }, + [PAGE_TEXT_EDITOR] = { + _, + sCreditsEntry_TextEditor, + sCreditsEntry_TeresaLillygren, + _, + _, + }, + [PAGE_NCL_COORDINATOR] = { + _, + sCreditsEntry_NCLCoordinator, + sCreditsEntry_KimikoNakamichi, + _, + _, + }, + [PAGE_PROGRAMMERS_5] = { + sCreditsEntry_Programmers, + sCreditsEntry_TerukiMurakawa, + sCreditsEntry_SouichiYamamoto, + sCreditsEntry_YuichiroIto, + sCreditsEntry_AkiraKinashi, + }, + [PAGE_GRAPHIC_DESIGNER] = { + _, + sCreditsEntry_GraphicDesigner, + sCreditsEntry_AkiraKinashi, + _, + _, + }, + [PAGE_ENVIRONMENT_AND_TOOL_PROGRAMS_2] = { + sCreditsEntry_EnvAndToolPgrms, + sCreditsEntry_TerukiMurakawa, + sCreditsEntry_SouichiYamamoto, + sCreditsEntry_KimikoNakamichi, + _, + }, + [PAGE_NOA_TESTING] = { + sCreditsEntry_NOAProductTesting, + sCreditsEntry_ThomasHertzog, + sCreditsEntry_ErikJohnson, + sCreditsEntry_MikaKurosawa, + _, + }, + [PAGE_BRAILLE_CODE_CHECK_1] = { + sCreditsEntry_BrailleCodeCheck, + sCreditsEntry_NationalFederationBlind, + sCreditsEntry_PatriciaAMaurer, + sCreditsEntry_JapanBrailleLibrary, + sCreditsEntry_EuropeanBlindUnion, + }, + [PAGE_BRAILLE_CODE_CHECK_2] = { + _, + sCreditsEntry_BrailleCodeCheck, + sCreditsEntry_AustralianBrailleAuthority, + sCreditsEntry_RoyalNewZealandFederationBlind, + _, + }, + [PAGE_SPECIAL_THANKS_5] = { + sCreditsEntry_SpecialThanks, + sCreditsEntry_HiroyukiUesugi, + sCreditsEntry_MotoyasuTojima, + sCreditsEntry_NicolaPrattBarlow, + sCreditsEntry_ShellieDow, + }, + [PAGE_TASK_MANAGERS] = { + _, + sCreditsEntry_TaskManagers, + sCreditsEntry_AzusaTajima, + sCreditsEntry_ShusakuEgami, + _, + }, + [PAGE_PRODUCERS] = { + sCreditsEntry_Producers, + sCreditsEntry_HiroyukiJinnai, + sCreditsEntry_HitoshiYamagami, + sCreditsEntry_GakujiNomoto, + sCreditsEntry_HiroakiTsuru, + }, + [PAGE_EXECUTIVE_DIRECTOR] = { + _, + sCreditsEntry_ExecutiveDirector, + sCreditsEntry_SatoshiTajiri, + _, + _, + }, + [PAGE_EXECUTIVE_PRODUCERS_1] = { + _, + sCreditsEntry_ExecProducers, + sCreditsEntry_SatoruIwata, + _, + _, + }, + [PAGE_EXECUTIVE_PRODUCERS_2] = { + _, + sCreditsEntry_ExecProducers, + sCreditsEntry_TsunekazIshihara, + _, + _, + }, +}; +#undef _ diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index 4cb26a9bf2be..401d077ef758 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -442,7 +442,7 @@ static const struct IntroCreditsSpriteMetadata sSpriteMetadata_HouseSilhouette[] static const struct OamData sOamData_Player = { - .y = 160, + .y = DISPLAY_HEIGHT, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), .priority = 1 @@ -486,7 +486,7 @@ static const struct SpriteTemplate sSpriteTemplate_May = static const struct OamData sOamData_Bicycle = { - .y = 160, + .y = DISPLAY_HEIGHT, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .priority = 1 @@ -530,7 +530,7 @@ static const struct SpriteTemplate sSpriteTemplate_MayBicycle = static const struct OamData sOamData_Flygon = { - .y = 160, + .y = DISPLAY_HEIGHT, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), .priority = 1 @@ -538,13 +538,13 @@ static const struct OamData sOamData_Flygon = static const union AnimCmd sAnim_FlygonLeft[] = { - ANIMCMD_FRAME( 0, 16), + ANIMCMD_FRAME(0, 16), ANIMCMD_END }; static const union AnimCmd sAnim_FlygonRight[] = { - ANIMCMD_FRAME( 64, 16), + ANIMCMD_FRAME(64, 16), ANIMCMD_END }; @@ -753,7 +753,7 @@ void LoadIntroPart2Graphics(u8 scene) CreateTreeSprites(); break; } - gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_MOVING; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_NORMAL; gReservedSpritePaletteCount = 8; } @@ -884,7 +884,7 @@ void LoadCreditsSceneGraphics(u8 scene) break; } gReservedSpritePaletteCount = 8; - gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_MOVING; + gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_NORMAL; } void SetCreditsSceneBgCnt(u8 scene) @@ -1043,7 +1043,7 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite) default: // INTROCRED_SCENERY_DESTROY DestroySprite(sprite); break; - case INTROCRED_SCENERY_MOVING: + case INTROCRED_SCENERY_NORMAL: x = ((sprite->pos1.x << 16) | (u16)sprite->data[2]) + (u16)sprite->data[1]; sprite->pos1.x = x >> 16; sprite->data[2] = x; From 62968895ca220cf5b6f7c066e9061cf45fe7913e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 29 Mar 2021 09:38:19 -0400 Subject: [PATCH 062/762] Add MON_PIC_SIZE constant --- include/constants/pokemon.h | 2 ++ src/battle_anim_effects_3.c | 2 +- src/battle_anim_mons.c | 6 ++-- src/battle_anim_throw.c | 2 +- src/battle_gfx_sfx_util.c | 8 ++--- src/credits.c | 12 ++++---- src/data.c | 36 ++++++++++++---------- src/decompress.c | 2 +- src/menu_specialized.c | 2 +- src/mystery_gift.c | 8 ++--- src/pokemon_jump.c | 4 +-- src/pokemon_storage_system.c | 6 ++-- src/pokenav_conditions_1.c | 2 +- src/pokenav_conditions_2.c | 2 +- src/trade.c | 6 ++-- src/use_pokeblock.c | 2 +- src/wireless_communication_status_screen.c | 4 +-- 17 files changed, 55 insertions(+), 51 deletions(-) diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 11a7c7fc59cc..51ef0c015b0d 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -346,4 +346,6 @@ #define NUM_MALE_LINK_FACILITY_CLASSES 8 #define NUM_FEMALE_LINK_FACILITY_CLASSES 8 +#define MON_PIC_SIZE (64 * 64 / 2) + #endif // GUARD_CONSTANTS_POKEMON_H diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 81ba475f92a5..0c56c6bcab08 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2292,7 +2292,7 @@ void AnimTask_TransformMon(u8 taskId) src = gMonSpritesGfxPtr->sprites.ptr[position] + (gBattleMonForms[gBattleAnimAttacker] << 11); dest = animBg.bgTiles; - CpuCopy32(src, dest, 0x800); + CpuCopy32(src, dest, MON_PIC_SIZE); LoadBgTiles(1, animBg.bgTiles, 0x800, animBg.tilesOffset); if (IsContest()) { diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 3f4a35475f9b..3f8ccad52ec6 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -107,8 +107,8 @@ static const struct SpriteTemplate sSpriteTemplate_MoveEffectMons[] = static const struct SpriteSheet sSpriteSheet_MoveEffectMons[] = { - { gMiscBlank_Gfx, 0x800, TAG_MOVE_EFFECT_MON_1, }, - { gMiscBlank_Gfx, 0x800, TAG_MOVE_EFFECT_MON_2, }, + { gMiscBlank_Gfx, MON_PIC_SIZE, TAG_MOVE_EFFECT_MON_1, }, + { gMiscBlank_Gfx, MON_PIC_SIZE, TAG_MOVE_EFFECT_MON_2, }, }; u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType) @@ -2068,7 +2068,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 FALSE); } - RequestDma3Copy(gMonSpritesGfxPtr->buffer, (void *)(OBJ_VRAM0 + (sheet * 0x20)), 0x800, 1); + RequestDma3Copy(gMonSpritesGfxPtr->buffer, (void *)(OBJ_VRAM0 + (sheet * 0x20)), MON_PIC_SIZE, 1); FREE_AND_SET_NULL(gMonSpritesGfxPtr->buffer); if (!isBackpic) diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 5b355c4bddf5..d36f6c3f91b6 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -2182,7 +2182,7 @@ void AnimTask_SubstituteFadeToInvisible(u8 taskId) break; case 2: spriteId = gBattlerSpriteIds[gBattleAnimAttacker]; - RequestDma3Fill(0, (void *)OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * TILE_SIZE_4BPP, 0x800, 1); + RequestDma3Fill(0, (void *)OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * TILE_SIZE_4BPP, MON_PIC_SIZE, 1); ClearBehindSubstituteBit(gBattleAnimAttacker); DestroyAnimVisualTask(taskId); break; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index d9e1cdc2f205..ba0cab8146be 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -967,7 +967,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform src = gMonSpritesGfxPtr->sprites.ptr[position]; dst = (void *)(OBJ_VRAM0 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32); - DmaCopy32(3, src, dst, 0x800); + DmaCopy32(3, src, dst, MON_PIC_SIZE); paletteOffset = 0x100 + battlerAtk * 16; lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue); LZDecompressWram(lzPaletteData, gDecompressionBuffer); @@ -1014,7 +1014,7 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite) for (i = 1; i < 4; i++) { - Dma3CopyLarge32_(gMonSpritesGfxPtr->sprites.ptr[position], &gMonSpritesGfxPtr->sprites.byte[position][0x800 * i], 0x800); + Dma3CopyLarge32_(gMonSpritesGfxPtr->sprites.ptr[position], &gMonSpritesGfxPtr->sprites.byte[position][MON_PIC_SIZE * i], MON_PIC_SIZE); } palOffset = (battlerId * 16) + 0x100; @@ -1259,8 +1259,8 @@ void AllocateMonSpritesGfx(void) for (j = 0; j < 4; j++) { - gMonSpritesGfxPtr->field_74[i][j].data = gMonSpritesGfxPtr->sprites.ptr[i] + (j * 0x800); - gMonSpritesGfxPtr->field_74[i][j].size = 0x800; + gMonSpritesGfxPtr->field_74[i][j].data = gMonSpritesGfxPtr->sprites.ptr[i] + (j * MON_PIC_SIZE); + gMonSpritesGfxPtr->field_74[i][j].size = MON_PIC_SIZE; } gMonSpritesGfxPtr->templates[i].images = gMonSpritesGfxPtr->field_74[i]; diff --git a/src/credits.c b/src/credits.c index 16d71f3e948b..2045d116a525 100644 --- a/src/credits.c +++ b/src/credits.c @@ -288,7 +288,7 @@ static const union AnimCmd *const sAnims_Rival[] = sAnim_Rival_Still, }; -#define MONBG_OFFSET (0x800 * 3) +#define MONBG_OFFSET (MON_PIC_SIZE * 3) static const struct SpriteSheet sSpriteSheet_MonBg[] = { { gDecompressionBuffer, MONBG_OFFSET, TAG_MON_BG }, {}, @@ -566,12 +566,12 @@ static void Task_CreditsLoadGrassScene(u8 taskIdA) LZ77UnCompVram(gBirchGrassTilemap, (void *)(BG_SCREEN_ADDR(7))); LoadPalette(gBirchBagGrassPal[0] + 1, 1, 31 * 2); - for (i = 0; i < 0x800; i++) + for (i = 0; i < MON_PIC_SIZE; i++) gDecompressionBuffer[i] = 0x11; - for (i = 0; i < 0x800; i++) - (gDecompressionBuffer + 0x800)[i] = 0x22; - for (i = 0; i < 0x800; i++) - (gDecompressionBuffer + 0x800 * 2)[i] = 0x33; + for (i = 0; i < MON_PIC_SIZE; i++) + (gDecompressionBuffer + MON_PIC_SIZE)[i] = 0x22; + for (i = 0; i < MON_PIC_SIZE; i++) + (gDecompressionBuffer + MON_PIC_SIZE * 2)[i] = 0x33; temp = (u16 *)(&gDecompressionBuffer[MONBG_OFFSET]); temp[0] = RGB_BLACK; diff --git a/src/data.c b/src/data.c index 6a4295440c0a..30672f7c4fca 100644 --- a/src/data.c +++ b/src/data.c @@ -12,36 +12,38 @@ const u16 gMinigameDigits_Pal[] = INCBIN_U16("graphics/link/minigame_digits.gbap const u32 gMinigameDigits_Gfx[] = INCBIN_U32("graphics/link/minigame_digits.4bpp.lz"); static const u32 sMinigameDigitsThin_Gfx[] = INCBIN_U32("graphics/link/minigame_digits2.4bpp.lz"); // Unused +#define BATTLER_OFFSET(i) (gHeap + 0x8000 + MON_PIC_SIZE * (i)) + const struct SpriteFrameImage gBattlerPicTable_PlayerLeft[] = { - gHeap + 0x8000, 0x800, - gHeap + 0x8800, 0x800, - gHeap + 0x9000, 0x800, - gHeap + 0x9800, 0x800, + BATTLER_OFFSET(0), MON_PIC_SIZE, + BATTLER_OFFSET(1), MON_PIC_SIZE, + BATTLER_OFFSET(2), MON_PIC_SIZE, + BATTLER_OFFSET(3), MON_PIC_SIZE, }; const struct SpriteFrameImage gBattlerPicTable_OpponentLeft[] = { - gHeap + 0xA000, 0x800, - gHeap + 0xA800, 0x800, - gHeap + 0xB000, 0x800, - gHeap + 0xB800, 0x800, + BATTLER_OFFSET(4), MON_PIC_SIZE, + BATTLER_OFFSET(5), MON_PIC_SIZE, + BATTLER_OFFSET(6), MON_PIC_SIZE, + BATTLER_OFFSET(7), MON_PIC_SIZE, }; const struct SpriteFrameImage gBattlerPicTable_PlayerRight[] = { - gHeap + 0xC000, 0x800, - gHeap + 0xC800, 0x800, - gHeap + 0xD000, 0x800, - gHeap + 0xD800, 0x800, + BATTLER_OFFSET(8), MON_PIC_SIZE, + BATTLER_OFFSET(9), MON_PIC_SIZE, + BATTLER_OFFSET(10), MON_PIC_SIZE, + BATTLER_OFFSET(11), MON_PIC_SIZE, }; const struct SpriteFrameImage gBattlerPicTable_OpponentRight[] = { - gHeap + 0xE000, 0x800, - gHeap + 0xE800, 0x800, - gHeap + 0xF000, 0x800, - gHeap + 0xF800, 0x800, + BATTLER_OFFSET(12), MON_PIC_SIZE, + BATTLER_OFFSET(13), MON_PIC_SIZE, + BATTLER_OFFSET(14), MON_PIC_SIZE, + BATTLER_OFFSET(15), MON_PIC_SIZE, }; const struct SpriteFrameImage gTrainerBackPicTable_Brendan[] = @@ -290,7 +292,7 @@ const union AnimCmd *const gUnknown_082FF70C[] = gUnknown_082FF704, }; -#define SPECIES_SPRITE(species, sprite) [SPECIES_##species] = {sprite, 0x800, SPECIES_##species} +#define SPECIES_SPRITE(species, sprite) [SPECIES_##species] = {sprite, MON_PIC_SIZE, SPECIES_##species} #define SPECIES_PAL(species, pal) [SPECIES_##species] = {pal, SPECIES_##species} #define SPECIES_SHINY_PAL(species, pal) [SPECIES_##species] = {pal, SPECIES_##species + SPECIES_SHINY_TAG} diff --git a/src/decompress.c b/src/decompress.c index 335699449bad..a65f38c2d7e8 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -390,5 +390,5 @@ void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src static void DuplicateDeoxysTiles(void *pointer, s32 species) { if (species == SPECIES_DEOXYS) - CpuCopy32(pointer + 0x800, pointer, 0x800); + CpuCopy32(pointer + MON_PIC_SIZE, pointer, MON_PIC_SIZE); } diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 8eda1621e4a5..687324612136 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -1150,7 +1150,7 @@ static const union AnimCmd *const sAnims_ConditionSelectionIcon[] = // Just loads the generic data, up to the caller to load the actual sheet/pal for the specific mon void LoadConditionMonPicTemplate(struct SpriteSheet *sheet, struct SpriteTemplate *template, struct SpritePalette *pal) { - struct SpriteSheet dataSheet = {NULL, 0x800, TAG_CONDITION_MON}; + struct SpriteSheet dataSheet = {NULL, MON_PIC_SIZE, TAG_CONDITION_MON}; struct SpriteTemplate dataTemplate = { diff --git a/src/mystery_gift.c b/src/mystery_gift.c index a23f159b2dd8..1e00a5788bdc 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -394,10 +394,10 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader) ChangeBgX(3, 0, 0); ChangeBgY(3, 0, 0); - SetBgTilemapBuffer(3, Alloc(0x800)); - SetBgTilemapBuffer(2, Alloc(0x800)); - SetBgTilemapBuffer(1, Alloc(0x800)); - SetBgTilemapBuffer(0, Alloc(0x800)); + SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(2, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); bgid_upload_textbox_1(3); InitWindows(sMainWindows); diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 4d7efe9ba642..f50a2d042a51 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -2713,7 +2713,7 @@ static void CreateJumpMonSprite(struct PokemonJumpGfx *jumpGfx, struct PokemonJu spriteTemplate = sSpriteTemplate_JumpMon; buffer = Alloc(0x2000); - unusedBuffer = Alloc(0x800); + unusedBuffer = Alloc(MON_PIC_SIZE); if (multiplayerId == GetPokeJumpMultiplayerId()) subpriority = 3; else @@ -2729,7 +2729,7 @@ static void CreateJumpMonSprite(struct PokemonJumpGfx *jumpGfx, struct PokemonJu spriteSheet.data = buffer; spriteSheet.tag = multiplayerId; - spriteSheet.size = 0x800; + spriteSheet.size = MON_PIC_SIZE; LoadSpriteSheet(&spriteSheet); spritePalette.data = GetMonSpritePalFromSpeciesAndPersonality(monInfo->species, monInfo->otId, monInfo->personality); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 3d6dc331c15b..d249381d8531 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -4049,11 +4049,11 @@ static void LoadCursorMonSprite(void) u16 tileStart; u8 palSlot; u8 spriteId; - struct SpriteSheet sheet = {sPSSData->field_22C4, 0x800, TAG_TILE_2}; + struct SpriteSheet sheet = {sPSSData->field_22C4, MON_PIC_SIZE, TAG_TILE_2}; struct SpritePalette palette = {sPSSData->field_2244, TAG_PAL_DAC6}; struct SpriteTemplate template = sSpriteTemplate_CursorMon; - for (i = 0; i < 0x800; i++) + for (i = 0; i < MON_PIC_SIZE; i++) sPSSData->field_22C4[i] = 0; for (i = 0; i < 0x10; i++) sPSSData->field_2244[i] = 0; @@ -4095,7 +4095,7 @@ static void LoadCursorMonGfx(u16 species, u32 pid) { LoadSpecialPokePic(&gMonFrontPicTable[species], sPSSData->field_22C4, species, pid, TRUE); LZ77UnCompWram(sPSSData->cursorMonPalette, sPSSData->field_2244); - CpuCopy32(sPSSData->field_22C4, sPSSData->field_223C, 0x800); + CpuCopy32(sPSSData->field_22C4, sPSSData->field_223C, MON_PIC_SIZE); LoadPalette(sPSSData->field_2244, sPSSData->field_223A, 0x20); sPSSData->cursorMonSprite->invisible = FALSE; } diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index 0545ff1c178f..ebe870f80f73 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -17,7 +17,7 @@ struct PokenavSub11 { u32 monPal[3][0x20]; u8 fill[0x180]; - u32 monPicGfx[3][0x800]; + u32 monPicGfx[3][MON_PIC_SIZE]; u8 searchMode; s16 monIndex; u32 (*callback)(struct PokenavSub11 *); diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index 26607926b7e1..dc07dd44c668 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -828,7 +828,7 @@ void CreateConditionMonPic(u8 id) } else { - DmaCopy16Defvars(3, GetConditionMonPicGfx(id), structPtr->unk181C, 0x800); + DmaCopy16Defvars(3, GetConditionMonPicGfx(id), structPtr->unk181C, MON_PIC_SIZE); LoadPalette(GetConditionMonPal(id), structPtr->monPalIndex, 0x20); } } diff --git a/src/trade.c b/src/trade.c index 436da66b0e01..b6646378db8f 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2893,9 +2893,9 @@ static void InitTradeBgInternal(void) InitBgsFromTemplates(0, sTradeSequenceBgTemplates, ARRAY_COUNT(sTradeSequenceBgTemplates)); ChangeBgX(0, 0, 0); ChangeBgY(0, 0, 0); - SetBgTilemapBuffer(0, Alloc(0x800)); - SetBgTilemapBuffer(1, Alloc(0x800)); - SetBgTilemapBuffer(3, Alloc(0x800)); + SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); DeactivateAllTextPrinters(); DecompressAndLoadBgGfxUsingHeap(0, gBattleTextboxTiles, 0, 0, 0); LZDecompressWram(gBattleTextboxTilemap, gDecompressionBuffer); diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 5d8f5ce24c62..cfaec6f18766 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -1241,7 +1241,7 @@ static void UpdateMonPic(u8 loadId) } else { - Dma3CopyLarge16_(sMenu->partySheets[loadId], sMenu->curMonTileStart, 0x800); + Dma3CopyLarge16_(sMenu->partySheets[loadId], sMenu->curMonTileStart, MON_PIC_SIZE); LoadPalette(sMenu->partyPalettes[loadId], sMenu->curMonPalette, 32); } } diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 23d63832fa0f..72557aefd531 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -174,8 +174,8 @@ static void CB2_InitWirelessCommunicationScreen(void) SetVBlankCallback(NULL); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); - SetBgTilemapBuffer(1, Alloc(0x800)); - SetBgTilemapBuffer(0, Alloc(0x800)); + SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); DecompressAndLoadBgGfxUsingHeap(1, sBgTiles_Gfx, 0, 0, 0); CopyToBgTilemapBuffer(1, sBgTiles_Tilemap, 0, 0); InitWindows(sWindowTemplates); From 6cceb05cb75f368c924c19fd456c2e09e71426a0 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Mon, 29 Mar 2021 11:20:00 -0500 Subject: [PATCH 063/762] Document some text-related things --- common_syms/text.txt | 4 +- gflib/text.c | 232 ++++++++++++++++++++--------------------- gflib/text.h | 12 +-- src/mauville_old_man.c | 18 ++-- src/unk_text_util_2.c | 22 ++-- sym_common.txt | 4 +- 6 files changed, 145 insertions(+), 147 deletions(-) diff --git a/common_syms/text.txt b/common_syms/text.txt index 4406c8bf9307..cd8886e5b1f5 100644 --- a/common_syms/text.txt +++ b/common_syms/text.txt @@ -1,4 +1,4 @@ gFonts -gUnknown_03002F84 -gUnknown_03002F90 +gDisableTextPrinters +gCurGlyph gTextFlags diff --git a/gflib/text.c b/gflib/text.c index ffce2cb56122..d75be2fbf3ca 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -21,8 +21,8 @@ static u16 gLastTextFgColor; static u16 gLastTextShadowColor; const struct FontInfo *gFonts; -u8 gUnknown_03002F84; -struct Struct_03002F90 gUnknown_03002F90; +u8 gDisableTextPrinters; +struct TextGlyph gCurGlyph; TextFlags gTextFlags; const u8 gFontHalfRowOffsets[] = @@ -204,7 +204,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi CopyWindowToVram(gTempTextPrinter.printerTemplate.windowId, 2); gTextPrinters[printerTemplate->windowId].active = 0; } - gUnknown_03002F84 = 0; + gDisableTextPrinters = 0; return TRUE; } @@ -212,7 +212,7 @@ void RunTextPrinters(void) { int i; - if (gUnknown_03002F84 == 0) + if (gDisableTextPrinters == 0) { for (i = 0; i < NUM_TEXT_PRINTERS; ++i) { @@ -461,9 +461,9 @@ u8 GetLastTextColor(u8 colorType) } } -inline static void GLYPH_COPY(u8 *windowTiles, u32 widthOffset, u32 j, u32 i, u32 *ptr, s32 width, s32 height) +inline static void GLYPH_COPY(u8 *windowTiles, u32 widthOffset, u32 j, u32 i, u32 *glyphPixels, s32 width, s32 height) { - u32 xAdd, yAdd, r5, bits, toOrr, dummyX; + u32 xAdd, yAdd, pixelData, bits, toOrr, dummyX; u8 *dst; xAdd = j + width; @@ -471,69 +471,69 @@ inline static void GLYPH_COPY(u8 *windowTiles, u32 widthOffset, u32 j, u32 i, u3 dummyX = j; for (; i < yAdd; i++) { - r5 = *ptr++; + pixelData = *glyphPixels++; for (j = dummyX; j < xAdd; j++) { - if ((toOrr = r5 & 0xF)) + if ((toOrr = pixelData & 0xF)) { dst = windowTiles + ((j / 8) * 32) + ((j % 8) / 2) + ((i / 8) * widthOffset) + ((i % 8) * 4); bits = ((j & 1) * 4); *dst = (toOrr << bits) | (*dst & (0xF0 >> bits)); } - r5 >>= 4; + pixelData >>= 4; } } } void CopyGlyphToWindow(struct TextPrinter *textPrinter) { - struct Window *win; - struct WindowTemplate *winTempl; - u32 *unkStruct; + struct Window *window; + struct WindowTemplate *template; + u32 *glyphPixels; u32 currX, currY, widthOffset; - s32 r4, r0; + s32 glyphWidth, glyphHeight; u8 *windowTiles; - win = &gWindows[textPrinter->printerTemplate.windowId]; - winTempl = &win->window; + window = &gWindows[textPrinter->printerTemplate.windowId]; + template = &window->window; - if ((r4 = (winTempl->width * 8) - textPrinter->printerTemplate.currentX) > gUnknown_03002F90.width) - r4 = gUnknown_03002F90.width; + if ((glyphWidth = (template->width * 8) - textPrinter->printerTemplate.currentX) > gCurGlyph.width) + glyphWidth = gCurGlyph.width; - if ((r0 = (winTempl->height * 8) - textPrinter->printerTemplate.currentY) > gUnknown_03002F90.height) - r0 = gUnknown_03002F90.height; + if ((glyphHeight = (template->height * 8) - textPrinter->printerTemplate.currentY) > gCurGlyph.height) + glyphHeight = gCurGlyph.height; currX = textPrinter->printerTemplate.currentX; currY = textPrinter->printerTemplate.currentY; - unkStruct = (u32 *)&gUnknown_03002F90.unk0; - windowTiles = win->tileData; - widthOffset = winTempl->width * 32; + glyphPixels = gCurGlyph.gfxBufferTop; + windowTiles = window->tileData; + widthOffset = template->width * 32; - if (r4 < 9) + if (glyphWidth < 9) { - if (r0 < 9) + if (glyphHeight < 9) { - GLYPH_COPY(windowTiles, widthOffset, currX, currY, unkStruct, r4, r0); + GLYPH_COPY(windowTiles, widthOffset, currX, currY, glyphPixels, glyphWidth, glyphHeight); } else { - GLYPH_COPY(windowTiles, widthOffset, currX, currY, unkStruct, r4, 8); - GLYPH_COPY(windowTiles, widthOffset, currX, currY + 8, unkStruct + 16, r4, r0 - 8); + GLYPH_COPY(windowTiles, widthOffset, currX, currY, glyphPixels, glyphWidth, 8); + GLYPH_COPY(windowTiles, widthOffset, currX, currY + 8, glyphPixels + 16, glyphWidth, glyphHeight - 8); } } else { - if (r0 < 9) + if (glyphHeight < 9) { - GLYPH_COPY(windowTiles, widthOffset, currX, currY, unkStruct, 8, r0); - GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY, unkStruct + 8, r4 - 8, r0); + GLYPH_COPY(windowTiles, widthOffset, currX, currY, glyphPixels, 8, glyphHeight); + GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY, glyphPixels + 8, glyphWidth - 8, glyphHeight); } else { - GLYPH_COPY(windowTiles, widthOffset, currX, currY, unkStruct, 8, 8); - GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY, unkStruct + 8, r4 - 8, 8); - GLYPH_COPY(windowTiles, widthOffset, currX, currY + 8, unkStruct + 16, 8, r0 - 8); - GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY + 8, unkStruct + 24, r4 - 8, r0 - 8); + GLYPH_COPY(windowTiles, widthOffset, currX, currY, glyphPixels, 8, 8); + GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY, glyphPixels + 8, glyphWidth - 8, 8); + GLYPH_COPY(windowTiles, widthOffset, currX, currY + 8, glyphPixels + 16, 8, glyphHeight - 8); + GLYPH_COPY(windowTiles, widthOffset, currX + 8, currY + 8, glyphPixels + 24, glyphWidth - 8, glyphHeight - 8); } } } @@ -542,7 +542,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) { struct Window *window; struct Bitmap pixels_data; - struct Struct_03002F90 *gUnk; + struct TextGlyph *glyph; u8* glyphHeight; if (gLastTextBgColor != 0) @@ -552,8 +552,8 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) pixels_data.width = window->window.width << 3; pixels_data.height = window->window.height << 3; - gUnk = &gUnknown_03002F90; - glyphHeight = &gUnk->height; + glyph = &gCurGlyph; + glyphHeight = &glyph->height; FillBitmapRect4Bit( &pixels_data, @@ -1015,8 +1015,8 @@ u16 RenderText(struct TextPrinter *textPrinter) break; case CHAR_KEYPAD_ICON: currChar = *textPrinter->printerTemplate.currentChar++; - gUnknown_03002F90.width = DrawKeypadIcon(textPrinter->printerTemplate.windowId, currChar, textPrinter->printerTemplate.currentX, textPrinter->printerTemplate.currentY); - textPrinter->printerTemplate.currentX += gUnknown_03002F90.width + textPrinter->printerTemplate.letterSpacing; + gCurGlyph.width = DrawKeypadIcon(textPrinter->printerTemplate.windowId, currChar, textPrinter->printerTemplate.currentX, textPrinter->printerTemplate.currentY); + textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; return 0; case EOS: return 1; @@ -1050,8 +1050,8 @@ u16 RenderText(struct TextPrinter *textPrinter) if (textPrinter->minLetterSpacing) { - textPrinter->printerTemplate.currentX += gUnknown_03002F90.width; - width = textPrinter->minLetterSpacing - gUnknown_03002F90.width; + textPrinter->printerTemplate.currentX += gCurGlyph.width; + width = textPrinter->minLetterSpacing - gCurGlyph.width; if (width > 0) { ClearTextSpan(textPrinter, width); @@ -1061,9 +1061,9 @@ u16 RenderText(struct TextPrinter *textPrinter) else { if (textPrinter->japanese) - textPrinter->printerTemplate.currentX += (gUnknown_03002F90.width + textPrinter->printerTemplate.letterSpacing); + textPrinter->printerTemplate.currentX += (gCurGlyph.width + textPrinter->printerTemplate.letterSpacing); else - textPrinter->printerTemplate.currentX += gUnknown_03002F90.width; + textPrinter->printerTemplate.currentX += gCurGlyph.width; } return 0; case 1: @@ -1499,8 +1499,8 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) DecompressGlyphFont1(temp, 1); break; } - CpuCopy32(gUnknown_03002F90.unk0, pixels, 0x20); - CpuCopy32(gUnknown_03002F90.unk40, pixels + 0x20, 0x20); + CpuCopy32(gCurGlyph.gfxBufferTop, pixels, 0x20); + CpuCopy32(gCurGlyph.gfxBufferBottom, pixels + 0x20, 0x20); pixels += 0x40; break; } @@ -1592,30 +1592,30 @@ void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese) if (isJapanese == 1) { glyphs = gFont0JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); // gUnknown_03002F90 + 0x40 - gUnknown_03002F90.width = 8; // gGlyphWidth - gUnknown_03002F90.height = 12; // gGlyphHeight + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + gCurGlyph.width = 8; + gCurGlyph.height = 12; } else { glyphs = gFont0LatinGlyphs + (0x20 * glyphId); - gUnknown_03002F90.width = gFont0LatinGlyphWidths[glyphId]; + gCurGlyph.width = gFont0LatinGlyphWidths[glyphId]; - if (gUnknown_03002F90.width <= 8) + if (gCurGlyph.width <= 8) { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); } else { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); - DecompressGlyphTile(glyphs + 0x18, gUnknown_03002F90.unk60); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x18, gCurGlyph.gfxBufferBottom + 8); } - gUnknown_03002F90.height = 13; + gCurGlyph.height = 13; } } @@ -1635,30 +1635,30 @@ void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese) { int eff; glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & (eff = 0xF))); // shh, no questions, only matching now - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); // gUnknown_03002F90 + 0x40 - gUnknown_03002F90.width = 8; // gGlyphWidth - gUnknown_03002F90.height = 15; // gGlyphHeight + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + gCurGlyph.width = 8; + gCurGlyph.height = 15; } else { glyphs = gFont7LatinGlyphs + (0x20 * glyphId); - gUnknown_03002F90.width = gFont7LatinGlyphWidths[glyphId]; + gCurGlyph.width = gFont7LatinGlyphWidths[glyphId]; - if (gUnknown_03002F90.width <= 8) + if (gCurGlyph.width <= 8) { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); } else { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); - DecompressGlyphTile(glyphs + 0x18, gUnknown_03002F90.unk60); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x18, gCurGlyph.gfxBufferBottom + 8); } - gUnknown_03002F90.height = 15; + gCurGlyph.height = 15; } } @@ -1677,30 +1677,30 @@ void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese) if (isJapanese == TRUE) { glyphs = gFont0JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); // gUnknown_03002F90 + 0x40 - gUnknown_03002F90.width = 8; // gGlyphWidth - gUnknown_03002F90.height = 12; // gGlyphHeight + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + gCurGlyph.width = 8; + gCurGlyph.height = 12; } else { glyphs = gFont8LatinGlyphs + (0x20 * glyphId); - gUnknown_03002F90.width = gFont8LatinGlyphWidths[glyphId]; + gCurGlyph.width = gFont8LatinGlyphWidths[glyphId]; - if (gUnknown_03002F90.width <= 8) + if (gCurGlyph.width <= 8) { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); } else { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); - DecompressGlyphTile(glyphs + 0x18, gUnknown_03002F90.unk60); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x18, gCurGlyph.gfxBufferBottom + 8); } - gUnknown_03002F90.height = 12; + gCurGlyph.height = 12; } } @@ -1719,32 +1719,32 @@ void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese) if (isJapanese == TRUE) { glyphs = gFont2JapaneseGlyphs + (0x100 * (glyphId >> 0x3)) + (0x10 * (glyphId & 0x7)); - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); // gUnknown_03002F90 + 0x40 - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); // gUnknown_03002F90 + 0x20 - DecompressGlyphTile(glyphs + 0x88, gUnknown_03002F90.unk60); // gUnknown_03002F90 + 0x60 - gUnknown_03002F90.width = gFont2JapaneseGlyphWidths[glyphId]; // gGlyphWidth - gUnknown_03002F90.height = 14; // gGlyphHeight + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); // gCurGlyph + 0x20 + DecompressGlyphTile(glyphs + 0x88, gCurGlyph.gfxBufferBottom + 8); // gCurGlyph + 0x60 + gCurGlyph.width = gFont2JapaneseGlyphWidths[glyphId]; + gCurGlyph.height = 14; } else { glyphs = gFont2LatinGlyphs + (0x20 * glyphId); - gUnknown_03002F90.width = gFont2LatinGlyphWidths[glyphId]; + gCurGlyph.width = gFont2LatinGlyphWidths[glyphId]; - if (gUnknown_03002F90.width <= 8) + if (gCurGlyph.width <= 8) { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); } else { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); - DecompressGlyphTile(glyphs + 0x18, gUnknown_03002F90.unk60); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x18, gCurGlyph.gfxBufferBottom + 8); } - gUnknown_03002F90.height = 14; + gCurGlyph.height = 14; } } @@ -1764,30 +1764,30 @@ void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese) { int eff; glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & (eff = 0xF))); // shh, no questions, only matching now - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); // gUnknown_03002F90 + 0x40 - gUnknown_03002F90.width = 8; // gGlyphWidth - gUnknown_03002F90.height = 15; // gGlyphHeight + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + gCurGlyph.width = 8; + gCurGlyph.height = 15; } else { glyphs = gFont1LatinGlyphs + (0x20 * glyphId); - gUnknown_03002F90.width = gFont1LatinGlyphWidths[glyphId]; + gCurGlyph.width = gFont1LatinGlyphWidths[glyphId]; - if (gUnknown_03002F90.width <= 8) + if (gCurGlyph.width <= 8) { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); } else { - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, gUnknown_03002F90.unk20); - DecompressGlyphTile(glyphs + 0x10, gUnknown_03002F90.unk40); - DecompressGlyphTile(glyphs + 0x18, gUnknown_03002F90.unk60); + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x10, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x18, gCurGlyph.gfxBufferBottom + 8); } - gUnknown_03002F90.height = 15; + gCurGlyph.height = 15; } } @@ -1804,8 +1804,8 @@ void DecompressGlyphFont9(u16 glyphId) const u16* glyphs; glyphs = gFont9JapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); - DecompressGlyphTile(glyphs, gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x80, gUnknown_03002F90.unk40); - gUnknown_03002F90.width = 8; - gUnknown_03002F90.height = 12; + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + gCurGlyph.width = 8; + gCurGlyph.height = 12; } diff --git a/gflib/text.h b/gflib/text.h index 723a2fc0e565..3e9b4f2aedcd 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -360,20 +360,18 @@ typedef struct { bool8 forceMidTextSpeed:1; } TextFlags; -struct Struct_03002F90 +struct TextGlyph { - u32 unk0[8]; - u32 unk20[8]; - u32 unk40[8]; - u32 unk60[8]; + u32 gfxBufferTop[16]; + u32 gfxBufferBottom[16]; u8 width; u8 height; }; extern TextFlags gTextFlags; -extern u8 gUnknown_03002F84; -extern struct Struct_03002F90 gUnknown_03002F90; +extern u8 gDisableTextPrinters; +extern struct TextGlyph gCurGlyph; void SetFontsPointer(const struct FontInfo *fonts); void DeactivateAllTextPrinters(void); diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index cdcde9b0625f..22841562836e 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -425,21 +425,21 @@ static void StartBardSong(bool8 useTemporaryLyrics) gTasks[taskId].tUseTemporaryLyrics = useTemporaryLyrics; } -static void sub_81206F0(void) +static void EnableTextPrinters(void) { - gUnknown_03002F84 = FALSE; + gDisableTextPrinters = FALSE; } -static void BardSong_TextSubPrinter(struct TextPrinterTemplate * printer, u16 a1) +static void BardSong_DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) { - gUnknown_03002F84 = TRUE; + gDisableTextPrinters = TRUE; } static void sub_8120708(const u8 * src) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, src, 0, 1, 1, BardSong_TextSubPrinter); - gUnknown_03002F84 = TRUE; + AddTextPrinterParameterized(0, 1, src, 0, 1, 1, BardSong_DisableTextPrinters); + gDisableTextPrinters = TRUE; CopyWindowToVram(0, 3); } @@ -620,7 +620,7 @@ static void Task_BardSong(u8 taskId) else if (gStringVar4[task->tCharIndex] == CHAR_SPACE) { - sub_81206F0(); + EnableTextPrinters(); task->tCharIndex++; task->tState = 2; task->data[2] = 0; @@ -640,7 +640,7 @@ static void Task_BardSong(u8 taskId) else if (gStringVar4[task->tCharIndex] == CHAR_SONG_WORD_SEPARATOR) { gStringVar4[task->tCharIndex] = CHAR_SPACE; // restore it back to a space - sub_81206F0(); + EnableTextPrinters(); task->tCharIndex++; task->data[2] = 0; } @@ -649,7 +649,7 @@ static void Task_BardSong(u8 taskId) switch (task->data[1]) { case 0: - sub_81206F0(); + EnableTextPrinters(); task->data[1]++; break; case 1: diff --git a/src/unk_text_util_2.c b/src/unk_text_util_2.c index b92b34fbd2b4..3459dde85814 100644 --- a/src/unk_text_util_2.c +++ b/src/unk_text_util_2.c @@ -5,7 +5,7 @@ #include "sound.h" ALIGNED(4) -static const u8 sUnknown_08616124[] = {1, 2, 4}; +static const u8 sScrollDistances[] = {1, 2, 4}; static const u16 sFont6BrailleGlyphs[] = INCBIN_U16("graphics/fonts/font6.fwjpnfont"); static void DecompressGlyphFont6(u16); @@ -135,7 +135,7 @@ u16 Font6Func(struct TextPrinter *textPrinter) } DecompressGlyphFont6(char_); CopyGlyphToWindow(textPrinter); - textPrinter->printerTemplate.currentX += gUnknown_03002F90.width + textPrinter->printerTemplate.letterSpacing; + textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; return 0; case 1: if (TextPrinterWait(textPrinter)) @@ -164,15 +164,15 @@ u16 Font6Func(struct TextPrinter *textPrinter) case 4: if (textPrinter->scrollDistance) { - if (textPrinter->scrollDistance < sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]) + if (textPrinter->scrollDistance < sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]) { ScrollWindow(textPrinter->printerTemplate.windowId, 0, textPrinter->scrollDistance, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); textPrinter->scrollDistance = 0; } else { - ScrollWindow(textPrinter->printerTemplate.windowId, 0, sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed], PIXEL_FILL(textPrinter->printerTemplate.bgColor)); - textPrinter->scrollDistance -= sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]; + ScrollWindow(textPrinter->printerTemplate.windowId, 0, sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed], PIXEL_FILL(textPrinter->printerTemplate.bgColor)); + textPrinter->scrollDistance -= sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]; } CopyWindowToVram(textPrinter->printerTemplate.windowId, 2); } @@ -206,12 +206,12 @@ static void DecompressGlyphFont6(u16 glyph) const u16 *glyphs; glyphs = sFont6BrailleGlyphs + 0x100 * (glyph / 8) + 0x10 * (glyph % 8); - DecompressGlyphTile(glyphs, (u16 *)gUnknown_03002F90.unk0); - DecompressGlyphTile(glyphs + 0x8, (u16 *)(gUnknown_03002F90.unk20)); - DecompressGlyphTile(glyphs + 0x80, (u16 *)(gUnknown_03002F90.unk40)); - DecompressGlyphTile(glyphs + 0x88, (u16 *)(gUnknown_03002F90.unk60)); - gUnknown_03002F90.width = 0x10; - gUnknown_03002F90.height = 0x10; + DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); + DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); + DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); + DecompressGlyphTile(glyphs + 0x88, gCurGlyph.gfxBufferBottom + 8); + gCurGlyph.width = 0x10; + gCurGlyph.height = 0x10; } u32 GetGlyphWidthFont6(u16 glyphId, bool32 isJapanese) diff --git a/sym_common.txt b/sym_common.txt index 22d70d7063e4..1525d8aec8cd 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -16,10 +16,10 @@ gWindowBgTilemapBuffers: gFonts: .space 4 .align 2 -gUnknown_03002F84: +gDisableTextPrinters: .space 1 .align 4 -gUnknown_03002F90: +gCurGlyph: .space 132 .align 2 gTextFlags: From 79a8eb481f08a035d2b357b5f9c9a57cb54e99da Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 29 Mar 2021 18:32:22 -0400 Subject: [PATCH 064/762] 1 to true --- src/main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main.c b/src/main.c index 75861a3acd88..3125716e2542 100644 --- a/src/main.c +++ b/src/main.c @@ -132,7 +132,7 @@ void AgbMain() DoSoftReset(); } - if (Overworld_SendKeysToLinkIsRunning() == 1) + if (Overworld_SendKeysToLinkIsRunning() == TRUE) { gLinkTransferringData = TRUE; UpdateLinkAndCallCallbacks(); @@ -143,7 +143,7 @@ void AgbMain() gLinkTransferringData = FALSE; UpdateLinkAndCallCallbacks(); - if (Overworld_RecvKeysFromLinkIsRunning() == 1) + if (Overworld_RecvKeysFromLinkIsRunning() == TRUE) { gMain.newKeys = 0; ClearSpriteCopyRequests(); From 09ff1524b4fd89a3d0b9291f03cb8f0655ed69b7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 29 Mar 2021 12:39:49 -0400 Subject: [PATCH 065/762] Finish documenting credits --- ..._bg_afternoon.pal => clouds_bg_sunset.pal} | 0 ...clouds_afternoon.pal => clouds_sunset.pal} | 0 .../{grass_afternoon.pal => grass_sunset.pal} | 0 .../{trees_afternoon.pal => trees_sunset.pal} | 0 include/intro_credits_graphics.h | 9 + src/credits.c | 726 +++++++++--------- src/hall_of_fame.c | 6 +- src/intro_credits_graphics.c | 102 +-- 8 files changed, 439 insertions(+), 404 deletions(-) rename graphics/intro/scene_2/{clouds_bg_afternoon.pal => clouds_bg_sunset.pal} (100%) rename graphics/intro/scene_2/{clouds_afternoon.pal => clouds_sunset.pal} (100%) rename graphics/intro/scene_2/{grass_afternoon.pal => grass_sunset.pal} (100%) rename graphics/intro/scene_2/{trees_afternoon.pal => trees_sunset.pal} (100%) diff --git a/graphics/intro/scene_2/clouds_bg_afternoon.pal b/graphics/intro/scene_2/clouds_bg_sunset.pal similarity index 100% rename from graphics/intro/scene_2/clouds_bg_afternoon.pal rename to graphics/intro/scene_2/clouds_bg_sunset.pal diff --git a/graphics/intro/scene_2/clouds_afternoon.pal b/graphics/intro/scene_2/clouds_sunset.pal similarity index 100% rename from graphics/intro/scene_2/clouds_afternoon.pal rename to graphics/intro/scene_2/clouds_sunset.pal diff --git a/graphics/intro/scene_2/grass_afternoon.pal b/graphics/intro/scene_2/grass_sunset.pal similarity index 100% rename from graphics/intro/scene_2/grass_afternoon.pal rename to graphics/intro/scene_2/grass_sunset.pal diff --git a/graphics/intro/scene_2/trees_afternoon.pal b/graphics/intro/scene_2/trees_sunset.pal similarity index 100% rename from graphics/intro/scene_2/trees_afternoon.pal rename to graphics/intro/scene_2/trees_sunset.pal diff --git a/include/intro_credits_graphics.h b/include/intro_credits_graphics.h index df3854aef029..bed30ffe82df 100644 --- a/include/intro_credits_graphics.h +++ b/include/intro_credits_graphics.h @@ -8,6 +8,15 @@ enum { INTROCRED_SCENERY_FROZEN, }; +// Scenes for the Credits sequence +enum { + SCENE_OCEAN_MORNING, + SCENE_OCEAN_SUNSET, + SCENE_FOREST_RIVAL_ARRIVE, + SCENE_FOREST_CATCH_RIVAL, + SCENE_CITY_NIGHT, +}; + extern u16 gIntroCredits_MovingSceneryVBase; extern s16 gIntroCredits_MovingSceneryVOffset; extern s16 gIntroCredits_MovingSceneryState; diff --git a/src/credits.c b/src/credits.c index 2045d116a525..f6871aeec30d 100644 --- a/src/credits.c +++ b/src/credits.c @@ -35,49 +35,32 @@ enum { POS_RIGHT, }; -#define tPlayerSpriteId data[5] -#define tRivalSpriteId data[6] - -enum -{ - TDA_0 = 0, - TDA_TASK_C_ID = 1, - TDA_TASK_E_ID = 2, - TDA_TASK_D_ID = 3, - TDA_4 = 4, - TDA_PLAYER_CYCLIST = 5, - TDA_RIVAL_CYCLIST = 6, - TDA_7 = 7, // Has something to do with the bike scene - TDA_11 = 11, // Gets set depending on whether the bike or the grass scene should be shown - TDA_12 = 12, - TDA_13 = 13, - TDA_14 = 14, - TDA_TASK_B_ID = 15, - - // Appears to be responsible for text - TDB_0 = 0, - TDB_TASK_A_ID = 1, - TDB_CURRENT_PAGE = 2, - TDB_3 = 3, - - TDC_0 = 0, - TDC_1 = 1, - TDC_2 = 2, - TDC_3 = 3, - TDC_4 = 4, - TDC_5 = 5, - - TDD_STATE = 0, - TDD_TASK_A_ID = 1, - TDD_2 = 2, - TDD_3 = 3, - - TDE_0 = 0, - TDE_1 = 1, - TDE_TASK_A_ID = 2, +enum { + MODE_NONE, + MODE_BIKE_SCENE, + MODE_SHOW_MONS, }; +#define tState data[0] + +// Task data for the main Credits tasks +#define tTaskId_BgScenery data[0] // ID for Task_BicycleBgAnimation (created by CreateBicycleBgAnimationTask) +#define tTaskId_BikeScene data[1] // ID for Task_BikeScene +#define tTaskId_SceneryPal data[2] // ID for Task_CycleSceneryPalette +#define tTaskId_ShowMons data[3] // ID for Task_ShowMons +#define tEndCredits data[4] +#define tPlayerSpriteId data[5] +#define tRivalSpriteId data[6] +#define tSceneNum data[7] +// data[8]-[10] are unused +#define tNextMode data[11] +#define tTheEndDelay data[12] +#define tCurrentMode data[13] +#define tPrintedPage data[14] +#define tTaskId_UpdatePage data[15] + #define NUM_MON_SLIDES 71 + struct CreditsData { u16 monToShow[NUM_MON_SLIDES]; // List of Pokemon species ids that will show during the credits @@ -108,11 +91,11 @@ static const u32 sCreditsCopyrightEnd_Gfx[] = INCBIN_U32("graphics/credits/the_e static void SpriteCB_CreditsMonBg(struct Sprite *); static void Task_WaitPaletteFade(u8); -static void Task_ProgressCreditTasks(u8); -static void sub_8175808(u8); -static void c2_080C9BFC(u8); -static void Task_CreditsLoadGrassScene(u8); -static void sub_81758A4(u8); +static void Task_CreditsMain(u8); +static void Task_ReadyBikeScene(u8); +static void Task_SetBikeScene(u8); +static void Task_LoadShowMons(u8); +static void Task_ReadyShowMons(u8); static void Task_CreditsTheEnd1(u8); static void Task_CreditsTheEnd2(u8); static void Task_CreditsTheEnd3(u8); @@ -121,17 +104,17 @@ static void Task_CreditsTheEnd5(u8); static void Task_CreditsTheEnd6(u8); static void Task_CreditsSoftReset(u8); static void ResetGpuAndVram(void); -static void sub_8175DA0(u8); +static void Task_UpdatePage(u8); static u8 CheckChangeScene(u8, u8); -static void sub_81760FC(u8); -static void sub_817651C(u8); -static void sub_817624C(u8); -static bool8 sub_8176AB0(u8 data, u8); +static void Task_ShowMons(u8); +static void Task_CycleSceneryPalette(u8); +static void Task_BikeScene(u8); +static bool8 LoadBikeScene(u8 data, u8); static void ResetCreditsTasks(u8); static void LoadTheEndScreen(u16, u16, u16); static void DrawTheEnd(u16, u16); -static void SpriteCB_PlayerCyclist(struct Sprite *); -static void SpriteCB_RivalCyclist(struct Sprite *); +static void SpriteCB_Player(struct Sprite *); +static void SpriteCB_Rival(struct Sprite *); static u8 CreateCreditsMonSprite(u16, s16, s16, u16); static void DeterminePokemonToShow(void); @@ -365,7 +348,7 @@ static void CB2_Credits(void) if ((JOY_HELD(B_BUTTON)) && gHasHallOfFameRecords - && gTasks[sSavedTaskId].func == Task_ProgressCreditTasks) + && gTasks[sSavedTaskId].func == Task_CreditsMain) { // Speed up credits VBlankCB_Credits(); @@ -390,7 +373,7 @@ static void InitCreditsBgsAndWindows(void) ShowBg(0); } -static void sub_81755A4(void) +static void FreeCreditsBgsAndWindows(void) { void *ptr; FreeAllWindowBuffers(); @@ -421,11 +404,13 @@ static void PrintCreditsText(const u8 *string, u8 y, bool8 isTitle) AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string); } +#define tMainTaskId data[1] + void CB2_StartCreditsSequence(void) { - u8 taskIdA; - s16 taskIdC; - u8 taskIdB; + u8 taskId; + s16 bikeTaskId; + u8 pageTaskId; ResetGpuAndVram(); SetVBlankCallback(NULL); @@ -434,28 +419,28 @@ void CB2_StartCreditsSequence(void) ResetTasks(); InitCreditsBgsAndWindows(); - taskIdA = CreateTask(Task_WaitPaletteFade, 0); + taskId = CreateTask(Task_WaitPaletteFade, 0); - gTasks[taskIdA].data[TDA_4] = 0; - gTasks[taskIdA].data[TDA_7] = 0; - gTasks[taskIdA].data[TDA_11] = 0; - gTasks[taskIdA].data[TDA_13] = 1; + gTasks[taskId].tEndCredits = FALSE; + gTasks[taskId].tSceneNum = SCENE_OCEAN_MORNING; + gTasks[taskId].tNextMode = MODE_NONE; + gTasks[taskId].tCurrentMode = MODE_BIKE_SCENE; while (TRUE) { - if (sub_8176AB0(0, taskIdA)) + if (LoadBikeScene(SCENE_OCEAN_MORNING, taskId)) break; } - taskIdC = gTasks[taskIdA].data[TDA_TASK_C_ID]; - gTasks[taskIdC].data[TDC_0] = 40; + bikeTaskId = gTasks[taskId].tTaskId_BikeScene; + gTasks[bikeTaskId].tState = 40; SetGpuReg(REG_OFFSET_BG0VOFS, 0xFFFC); - taskIdB = CreateTask(sub_8175DA0, 0); + pageTaskId = CreateTask(Task_UpdatePage, 0); - gTasks[taskIdB].data[TDB_TASK_A_ID] = taskIdA; - gTasks[taskIdA].data[TDA_TASK_B_ID] = taskIdB; + gTasks[pageTaskId].tMainTaskId = taskId; + gTasks[taskId].tTaskId_UpdatePage = pageTaskId; BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(INTR_FLAG_VBLANK); @@ -471,84 +456,84 @@ void CB2_StartCreditsSequence(void) sCreditsData->nextImgPos = POS_LEFT; sCreditsData->currShownMon = 0; - sSavedTaskId = taskIdA; + sSavedTaskId = taskId; } -static void Task_WaitPaletteFade(u8 taskIdA) +static void Task_WaitPaletteFade(u8 taskId) { if (!gPaletteFade.active) - gTasks[taskIdA].func = Task_ProgressCreditTasks; + gTasks[taskId].func = Task_CreditsMain; } -static void Task_ProgressCreditTasks(u8 taskIdA) +static void Task_CreditsMain(u8 taskId) { - u16 data1; + u16 mode; - if (gTasks[taskIdA].data[TDA_4]) + if (gTasks[taskId].tEndCredits) { - s16 taskIdC; - - taskIdC = gTasks[taskIdA].data[TDA_TASK_C_ID]; - gTasks[taskIdC].data[TDC_0] = 30; + s16 bikeTaskId = gTasks[taskId].tTaskId_BikeScene; + gTasks[bikeTaskId].tState = 30; - gTasks[taskIdA].data[TDA_12] = 0x100; - gTasks[taskIdA].func = Task_CreditsTheEnd1; + gTasks[taskId].tTheEndDelay = 256; + gTasks[taskId].func = Task_CreditsTheEnd1; return; } sUnkVar = 0; - data1 = gTasks[taskIdA].data[TDA_11]; + mode = gTasks[taskId].tNextMode; - if (gTasks[taskIdA].data[TDA_11] == 1) + if (gTasks[taskId].tNextMode == MODE_BIKE_SCENE) { - gTasks[taskIdA].data[TDA_13] = data1; - gTasks[taskIdA].data[TDA_11] = 0; + // Start a bike cutscene + gTasks[taskId].tCurrentMode = mode; + gTasks[taskId].tNextMode = MODE_NONE; BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - gTasks[taskIdA].func = sub_8175808; + gTasks[taskId].func = Task_ReadyBikeScene; } - else if (gTasks[taskIdA].data[TDA_11] == 2) + else if (gTasks[taskId].tNextMode == MODE_SHOW_MONS) { - gTasks[taskIdA].data[TDA_13] = data1; - gTasks[taskIdA].data[TDA_11] = 0; + // Start a Pokémon interlude + gTasks[taskId].tCurrentMode = mode; + gTasks[taskId].tNextMode = MODE_NONE; BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - gTasks[taskIdA].func = sub_81758A4; + gTasks[taskId].func = Task_ReadyShowMons; } } -static void sub_8175808(u8 taskIdA) +static void Task_ReadyBikeScene(u8 taskId) { if (!gPaletteFade.active) { SetGpuReg(REG_OFFSET_DISPCNT, 0); - ResetCreditsTasks(taskIdA); - gTasks[taskIdA].func = c2_080C9BFC; + ResetCreditsTasks(taskId); + gTasks[taskId].func = Task_SetBikeScene; } } -static void c2_080C9BFC(u8 taskIdA) +static void Task_SetBikeScene(u8 taskId) { SetVBlankCallback(NULL); - if (sub_8176AB0(gTasks[taskIdA].data[TDA_7], taskIdA)) + if (LoadBikeScene(gTasks[taskId].tSceneNum, taskId)) { BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(INTR_FLAG_VBLANK); SetVBlankCallback(VBlankCB_Credits); - gTasks[taskIdA].func = Task_WaitPaletteFade; + gTasks[taskId].func = Task_WaitPaletteFade; } } -static void sub_81758A4(u8 taskIdA) +static void Task_ReadyShowMons(u8 taskId) { if (!gPaletteFade.active) { SetGpuReg(REG_OFFSET_DISPCNT, 0); - ResetCreditsTasks(taskIdA); - gTasks[taskIdA].func = Task_CreditsLoadGrassScene; + ResetCreditsTasks(taskId); + gTasks[taskId].func = Task_LoadShowMons; } } -static void Task_CreditsLoadGrassScene(u8 taskIdA) +static void Task_LoadShowMons(u8 taskId) { switch (gMain.state) { @@ -586,10 +571,10 @@ static void Task_CreditsLoadGrassScene(u8 taskIdA) break; } case 1: - gTasks[taskIdA].data[TDA_TASK_D_ID] = CreateTask(sub_81760FC, 0); - gTasks[gTasks[taskIdA].data[TDA_TASK_D_ID]].data[TDD_STATE] = 1; - gTasks[gTasks[taskIdA].data[TDA_TASK_D_ID]].data[TDD_TASK_A_ID] = taskIdA; - gTasks[gTasks[taskIdA].data[TDA_TASK_D_ID]].data[TDD_2] = gTasks[taskIdA].data[TDA_7]; + gTasks[taskId].tTaskId_ShowMons = CreateTask(Task_ShowMons, 0); + gTasks[gTasks[taskId].tTaskId_ShowMons].tState = 1; + gTasks[gTasks[taskId].tTaskId_ShowMons].tMainTaskId = taskId; + gTasks[gTasks[taskId].tTaskId_ShowMons].data[2] = gTasks[taskId].tSceneNum; // data[2] never read BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); SetGpuReg(REG_OFFSET_BG3HOFS, 0); @@ -607,35 +592,35 @@ static void Task_CreditsLoadGrassScene(u8 taskIdA) gMain.state = 0; gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_NORMAL; - gTasks[taskIdA].func = Task_WaitPaletteFade; + gTasks[taskId].func = Task_WaitPaletteFade; break; } } -static void Task_CreditsTheEnd1(u8 taskIdA) +static void Task_CreditsTheEnd1(u8 taskId) { - if (gTasks[taskIdA].data[TDA_12]) + if (gTasks[taskId].tTheEndDelay) { - gTasks[taskIdA].data[TDA_12]--; + gTasks[taskId].tTheEndDelay--; return; } BeginNormalPaletteFade(PALETTES_ALL, 12, 0, 16, RGB_BLACK); - gTasks[taskIdA].func = Task_CreditsTheEnd2; + gTasks[taskId].func = Task_CreditsTheEnd2; } -static void Task_CreditsTheEnd2(u8 taskIdA) +static void Task_CreditsTheEnd2(u8 taskId) { if (!gPaletteFade.active) { - ResetCreditsTasks(taskIdA); - gTasks[taskIdA].func = Task_CreditsTheEnd3; + ResetCreditsTasks(taskId); + gTasks[taskId].func = Task_CreditsTheEnd3; } } #define tDelay data[0] -static void Task_CreditsTheEnd3(u8 taskIdA) +static void Task_CreditsTheEnd3(u8 taskId) { ResetGpuAndVram(); ResetPaletteFade(); @@ -654,59 +639,59 @@ static void Task_CreditsTheEnd3(u8 taskIdA) | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON); - gTasks[taskIdA].tDelay = 235; //set this to 215 to actually show "THE END" in time to the last song beat - gTasks[taskIdA].func = Task_CreditsTheEnd4; + gTasks[taskId].tDelay = 235; //set this to 215 to actually show "THE END" in time to the last song beat + gTasks[taskId].func = Task_CreditsTheEnd4; } -static void Task_CreditsTheEnd4(u8 taskIdA) +static void Task_CreditsTheEnd4(u8 taskId) { - if (gTasks[taskIdA].tDelay) + if (gTasks[taskId].tDelay) { - gTasks[taskIdA].tDelay--; + gTasks[taskId].tDelay--; return; } BeginNormalPaletteFade(PALETTES_ALL, 6, 0, 16, RGB_BLACK); - gTasks[taskIdA].func = Task_CreditsTheEnd5; + gTasks[taskId].func = Task_CreditsTheEnd5; } -static void Task_CreditsTheEnd5(u8 taskIdA) +static void Task_CreditsTheEnd5(u8 taskId) { if (!gPaletteFade.active) { DrawTheEnd(0x3800, 0); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0, RGB_BLACK); - gTasks[taskIdA].tDelay = 7200; - gTasks[taskIdA].func = Task_CreditsTheEnd6; + gTasks[taskId].tDelay = 7200; + gTasks[taskId].func = Task_CreditsTheEnd6; } } -static void Task_CreditsTheEnd6(u8 taskIdA) +static void Task_CreditsTheEnd6(u8 taskId) { if (!gPaletteFade.active) { - if (gTasks[taskIdA].tDelay == 0 || gMain.newKeys) + if (gTasks[taskId].tDelay == 0 || gMain.newKeys) { FadeOutBGM(4); BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_WHITEALPHA); - gTasks[taskIdA].func = Task_CreditsSoftReset; + gTasks[taskId].func = Task_CreditsSoftReset; return; } - if (gTasks[taskIdA].tDelay == 7144) + if (gTasks[taskId].tDelay == 7144) FadeOutBGM(8); - if (gTasks[taskIdA].tDelay == 6840) + if (gTasks[taskId].tDelay == 6840) m4aSongNumStart(MUS_END); - gTasks[taskIdA].tDelay--; + gTasks[taskId].tDelay--; } } #undef tDelay -static void Task_CreditsSoftReset(u8 taskIdA) +static void Task_CreditsSoftReset(u8 taskId) { if (!gPaletteFade.active) SoftReset(RESET_ALL); @@ -734,11 +719,14 @@ static void ResetGpuAndVram(void) DmaFill16(3, 0, (void *)(PLTT + 2), PLTT_SIZE - 2); } -static void sub_8175DA0(u8 taskIdB) +#define tCurrentPage data[2] +#define tDelay data[3] + +static void Task_UpdatePage(u8 taskId) { int i; - switch (gTasks[taskIdB].data[TDB_0]) + switch (gTasks[taskId].tState) { case 0: case 6: @@ -748,185 +736,194 @@ static void sub_8175DA0(u8 taskIdB) default: if (!gPaletteFade.active) { - gTasks[taskIdB].data[TDB_0] = 1; - gTasks[taskIdB].data[TDB_3] = 0x48; - gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_14] = 0; + gTasks[taskId].tState = 1; + gTasks[taskId].tDelay = 72; + gTasks[gTasks[taskId].tMainTaskId].tPrintedPage = FALSE; sUnkVar = 0; } return; case 1: - if (gTasks[taskIdB].data[TDB_3] != 0) + if (gTasks[taskId].tDelay != 0) { - gTasks[taskIdB].data[TDB_3]--; + gTasks[taskId].tDelay--; return; } - gTasks[taskIdB].data[TDB_0]++; + gTasks[taskId].tState++; return; case 2: - if (gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].func == Task_ProgressCreditTasks) + if (gTasks[gTasks[taskId].tMainTaskId].func == Task_CreditsMain) { - if (gTasks[taskIdB].data[TDB_CURRENT_PAGE] < PAGE_COUNT) + if (gTasks[taskId].tCurrentPage < PAGE_COUNT) { + // Print text for this Credits page for (i = 0; i < ENTRIES_PER_PAGE; i++) PrintCreditsText( - sCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, + sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->text, 5 + i * 16, - sCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->isTitle); - + sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->isTitle); CopyWindowToVram(0, 2); - gTasks[taskIdB].data[TDB_CURRENT_PAGE]++; - gTasks[taskIdB].data[TDB_0]++; + gTasks[taskId].tCurrentPage++; + gTasks[taskId].tState++; - gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_14] = 1; + gTasks[gTasks[taskId].tMainTaskId].tPrintedPage = TRUE; - if (gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_13] == 1) - BeginNormalPaletteFade(0x00000300, 0, 16, 0, COLOR_LIGHT_GREEN); - else - BeginNormalPaletteFade(0x00000300, 0, 16, 0, COLOR_DARK_GREEN); + if (gTasks[gTasks[taskId].tMainTaskId].tCurrentMode == MODE_BIKE_SCENE) + BeginNormalPaletteFade(0x300, 0, 16, 0, COLOR_LIGHT_GREEN); + else // MODE_SHOW_MONS + BeginNormalPaletteFade(0x300, 0, 16, 0, COLOR_DARK_GREEN); return; } - gTasks[taskIdB].data[TDB_0] = 10; + + // Reached final page of Credits, end task + gTasks[taskId].tState = 10; return; } - gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_14] = 0; + gTasks[gTasks[taskId].tMainTaskId].tPrintedPage = FALSE; return; case 3: if (!gPaletteFade.active) { - gTasks[taskIdB].data[TDB_3] = 0x73; - gTasks[taskIdB].data[TDB_0]++; + gTasks[taskId].tDelay = 115; + gTasks[taskId].tState++; } return; case 4: - if (gTasks[taskIdB].data[TDB_3] != 0) + if (gTasks[taskId].tDelay != 0) { - gTasks[taskIdB].data[TDB_3]--; + gTasks[taskId].tDelay--; return; } - if (CheckChangeScene((u8)gTasks[taskIdB].data[TDB_CURRENT_PAGE], (u8)gTasks[taskIdB].data[TDB_TASK_A_ID])) + if (CheckChangeScene((u8)gTasks[taskId].tCurrentPage, (u8)gTasks[taskId].tMainTaskId)) { - gTasks[taskIdB].data[TDB_0]++; + gTasks[taskId].tState++; return; } - gTasks[taskIdB].data[TDB_0]++; - if (gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_13] == 1) - BeginNormalPaletteFade(0x00000300, 0, 0, 16, COLOR_LIGHT_GREEN); - else - BeginNormalPaletteFade(0x00000300, 0, 0, 16, COLOR_DARK_GREEN); + gTasks[taskId].tState++; + if (gTasks[gTasks[taskId].tMainTaskId].tCurrentMode == MODE_BIKE_SCENE) + BeginNormalPaletteFade(0x300, 0, 0, 16, COLOR_LIGHT_GREEN); + else // MODE_SHOW_MONS + BeginNormalPaletteFade(0x300, 0, 0, 16, COLOR_DARK_GREEN); return; case 5: if (!gPaletteFade.active) { + // Still more Credits pages to show, return to state 2 to print FillWindowPixelBuffer(0, PIXEL_FILL(0)); CopyWindowToVram(0, 2); - gTasks[taskIdB].data[TDB_0] = 2; + gTasks[taskId].tState = 2; } return; case 10: - gTasks[gTasks[taskIdB].data[TDB_TASK_A_ID]].data[TDA_4] = 1; - DestroyTask(taskIdB); - sub_81755A4(); + gTasks[gTasks[taskId].tMainTaskId].tEndCredits = TRUE; + DestroyTask(taskId); + FreeCreditsBgsAndWindows(); FREE_AND_SET_NULL(sCreditsData); return; } } -static u8 CheckChangeScene(u8 page, u8 taskIdA) +#undef tDelay + +#define PAGE_INTERVAL (PAGE_COUNT / 9) // 9 scenes (5 bike scenes, 4 Pokémon interludes) + +static u8 CheckChangeScene(u8 page, u8 taskId) { - // Starts with bike + ocean + morning + // Starts with bike + ocean + morning (SCENE_OCEAN_MORNING) - if (page == 6) + if (page == PAGE_INTERVAL * 1) { // Pokémon interlude - gTasks[taskIdA].data[TDA_11] = 2; + gTasks[taskId].tNextMode = MODE_SHOW_MONS; } - if (page == 12) + if (page == PAGE_INTERVAL * 2) { // Bike + ocean + sunset - gTasks[taskIdA].data[TDA_7] = 1; - gTasks[taskIdA].data[TDA_11] = 1; + gTasks[taskId].tSceneNum = SCENE_OCEAN_SUNSET; + gTasks[taskId].tNextMode = MODE_BIKE_SCENE; } - if (page == 18) + if (page == PAGE_INTERVAL * 3) { // Pokémon interlude - gTasks[taskIdA].data[TDA_11] = 2; + gTasks[taskId].tNextMode = MODE_SHOW_MONS; } - if (page == 24) + if (page == PAGE_INTERVAL * 4) { // Bike + forest + sunset - gTasks[taskIdA].data[TDA_7] = 2; - gTasks[taskIdA].data[TDA_11] = 1; + gTasks[taskId].tSceneNum = SCENE_FOREST_RIVAL_ARRIVE; + gTasks[taskId].tNextMode = MODE_BIKE_SCENE; } - if (page == 30) + if (page == PAGE_INTERVAL * 5) { // Pokémon interlude - gTasks[taskIdA].data[TDA_11] = 2; + gTasks[taskId].tNextMode = MODE_SHOW_MONS; } - if (page == 36) + if (page == PAGE_INTERVAL * 6) { // Bike + forest + sunset - gTasks[taskIdA].data[TDA_7] = 3; - gTasks[taskIdA].data[TDA_11] = 1; + gTasks[taskId].tSceneNum = SCENE_FOREST_CATCH_RIVAL; + gTasks[taskId].tNextMode = MODE_BIKE_SCENE; } - if (page == 42) + if (page == PAGE_INTERVAL * 7) { // Pokémon interlude - gTasks[taskIdA].data[TDA_11] = 2; + gTasks[taskId].tNextMode = MODE_SHOW_MONS; } - if (page == 48) + if (page == PAGE_INTERVAL * 8) { // Bike + town + night - gTasks[taskIdA].data[TDA_7] = 4; - gTasks[taskIdA].data[TDA_11] = 1; + gTasks[taskId].tSceneNum = SCENE_CITY_NIGHT; + gTasks[taskId].tNextMode = MODE_BIKE_SCENE; } - if (gTasks[taskIdA].data[TDA_11] != 0) + if (gTasks[taskId].tNextMode != MODE_NONE) { - // Returns true if changed? + // Returns true if changed return TRUE; } return FALSE; } -static void sub_81760FC(u8 taskIdD) +#define tDelay data[3] + +static void Task_ShowMons(u8 taskId) { - u8 r2; + u8 spriteId; - switch (gTasks[taskIdD].data[TDD_STATE]) + switch (gTasks[taskId].tState) { case 0: break; case 1: - if (sCreditsData->nextImgPos == POS_LEFT && gTasks[gTasks[taskIdD].data[TDD_TASK_A_ID]].data[TDA_14] == 0) + if (sCreditsData->nextImgPos == POS_LEFT && gTasks[gTasks[taskId].tMainTaskId].tPrintedPage == FALSE) break; - gTasks[taskIdD].data[TDD_STATE]++; + gTasks[taskId].tState++; break; case 2: - if (sCreditsData->imgCounter == NUM_MON_SLIDES || gTasks[gTasks[taskIdD].data[TDD_TASK_A_ID]].func != Task_ProgressCreditTasks) + if (sCreditsData->imgCounter == NUM_MON_SLIDES || gTasks[gTasks[taskId].tMainTaskId].func != Task_CreditsMain) break; - r2 = CreateCreditsMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], + spriteId = CreateCreditsMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], sMonSpritePos[sCreditsData->nextImgPos][0], sMonSpritePos[sCreditsData->nextImgPos][1], sCreditsData->nextImgPos); if (sCreditsData->currShownMon < sCreditsData->numMonToShow - 1) { sCreditsData->currShownMon++; - gSprites[r2].data[3] = 50; + gSprites[spriteId].data[3] = 50; } else { sCreditsData->currShownMon = 0; - gSprites[r2].data[3] = 512; + gSprites[spriteId].data[3] = 512; } sCreditsData->imgCounter++; @@ -935,237 +932,254 @@ static void sub_81760FC(u8 taskIdD) else sCreditsData->nextImgPos++; - gTasks[taskIdD].data[TDD_3] = 50; - gTasks[taskIdD].data[TDD_STATE]++; + gTasks[taskId].tDelay = 50; + gTasks[taskId].tState++; break; case 3: - if (gTasks[taskIdD].data[TDD_3] != 0) - gTasks[taskIdD].data[TDD_3]--; + if (gTasks[taskId].tDelay != 0) + gTasks[taskId].tDelay--; else - gTasks[taskIdD].data[TDD_STATE] = 1; + gTasks[taskId].tState = 1; break; } } -static void sub_817624C(u8 taskIdC) +#undef tMainTaskId +#undef tDelay + +#define tPlayer data[2] +#define tRival data[3] +#define tDelay data[4] +#define tSinIdx data[5] + +static void Task_BikeScene(u8 taskId) { - switch (gTasks[taskIdC].data[TDC_0]) + switch (gTasks[taskId].tState) { case 0: - gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskIdC].data[TDC_5] >> 1) & 0x7F, 12); - gTasks[taskIdC].data[TDC_5]++; + gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskId].tSinIdx >> 1) & 0x7F, 12); + gTasks[taskId].tSinIdx++; break; case 1: if (gIntroCredits_MovingSceneryVOffset != 0) { - gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskIdC].data[TDC_5] >> 1) & 0x7F, 12); - gTasks[taskIdC].data[TDC_5]++; + gIntroCredits_MovingSceneryVOffset = Sin((gTasks[taskId].tSinIdx >> 1) & 0x7F, 12); + gTasks[taskId].tSinIdx++; } else { - gSprites[gTasks[taskIdC].data[TDC_2]].data[0] = 2; - gTasks[taskIdC].data[TDC_5] = 0; - gTasks[taskIdC].data[TDC_0]++; + gSprites[gTasks[taskId].tPlayer].data[0] = 2; + gTasks[taskId].tSinIdx = 0; + gTasks[taskId].tState++; } break; case 2: - if (gTasks[taskIdC].data[TDC_5] < 64) + if (gTasks[taskId].tSinIdx < 64) { - gTasks[taskIdC].data[TDC_5]++; - gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); + gTasks[taskId].tSinIdx++; + gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskId].tSinIdx & 0x7F, 20); } else { - gTasks[taskIdC].data[TDC_0]++; + gTasks[taskId].tState++; } break; case 3: - gSprites[gTasks[taskIdC].data[TDC_2]].data[0] = 3; - gSprites[gTasks[taskIdC].data[TDC_3]].data[0] = 1; - gTasks[taskIdC].data[TDC_4] = 120; - gTasks[taskIdC].data[TDC_0]++; + gSprites[gTasks[taskId].tPlayer].data[0] = 3; + gSprites[gTasks[taskId].tRival].data[0] = 1; + gTasks[taskId].tDelay = 120; + gTasks[taskId].tState++; break; case 4: - if (gTasks[taskIdC].data[TDC_4] != 0) + if (gTasks[taskId].tDelay != 0) { - gTasks[taskIdC].data[TDC_4]--; + gTasks[taskId].tDelay--; } else { - gTasks[taskIdC].data[TDC_5] = 64; - gTasks[taskIdC].data[TDC_0]++; + gTasks[taskId].tSinIdx = 64; + gTasks[taskId].tState++; } break; case 5: - if (gTasks[taskIdC].data[TDC_5] > 0) + if (gTasks[taskId].tSinIdx > 0) { - gTasks[taskIdC].data[TDC_5]--; - gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskIdC].data[TDC_5] & 0x7F, 20); + gTasks[taskId].tSinIdx--; + gIntroCredits_MovingSceneryVOffset = Sin(gTasks[taskId].tSinIdx & 0x7F, 20); } else { - gSprites[gTasks[taskIdC].data[TDC_2]].data[0] = 1; - gTasks[taskIdC].data[TDC_0]++; + gSprites[gTasks[taskId].tPlayer].data[0] = 1; + gTasks[taskId].tState++; } break; case 6: - gTasks[taskIdC].data[TDC_0] = 50; + gTasks[taskId].tState = 50; break; case 10: - gSprites[gTasks[taskIdC].data[TDC_3]].data[0] = 2; - gTasks[taskIdC].data[TDC_0] = 50; + gSprites[gTasks[taskId].tRival].data[0] = 2; + gTasks[taskId].tState = 50; break; case 20: - gSprites[gTasks[taskIdC].data[TDC_2]].data[0] = 4; - gTasks[taskIdC].data[TDC_0] = 50; + gSprites[gTasks[taskId].tPlayer].data[0] = 4; + gTasks[taskId].tState = 50; break; case 30: - gSprites[gTasks[taskIdC].data[TDC_2]].data[0] = 5; - gSprites[gTasks[taskIdC].data[TDC_3]].data[0] = 3; - gTasks[taskIdC].data[TDC_0] = 50; + gSprites[gTasks[taskId].tPlayer].data[0] = 5; + gSprites[gTasks[taskId].tRival].data[0] = 3; + gTasks[taskId].tState = 50; break; case 50: - gTasks[taskIdC].data[TDC_0] = 0; + gTasks[taskId].tState = 0; break; } } -static void sub_817651C(u8 taskIdE) +#define TIMER_STOP 0x7FFF +#define tTimer data[1] +#define tMainTaskId data[2] + +static void Task_CycleSceneryPalette(u8 taskId) { - s16 taskIdC; + s16 bikeTaskId; - switch (gTasks[taskIdE].data[TDE_0]) + switch (gTasks[taskId].tState) { default: - case 0: - if (gTasks[taskIdE].data[TDE_1] != 0x7FFF) + case SCENE_OCEAN_MORNING: + if (gTasks[taskId].tTimer != TIMER_STOP) { - - if (gTasks[gTasks[gTasks[taskIdE].data[TDE_TASK_A_ID]].data[TDA_TASK_B_ID]].data[TDB_CURRENT_PAGE] == 2) + if (gTasks[gTasks[gTasks[taskId].tMainTaskId].tTaskId_UpdatePage].tCurrentPage == 2) { - gTasks[gTasks[gTasks[taskIdE].data[TDE_TASK_A_ID]].data[TDA_TASK_C_ID]].data[TDC_0] = 20; - gTasks[taskIdE].data[TDE_1] = 0x7FFF; + gTasks[gTasks[gTasks[taskId].tMainTaskId].tTaskId_BikeScene].tState = 20; + gTasks[taskId].tTimer = TIMER_STOP; } } CycleSceneryPalette(0); break; - case 1: + case SCENE_OCEAN_SUNSET: CycleSceneryPalette(0); break; - case 2: - if (gTasks[taskIdE].data[TDE_1] != 0x7FFF) + case SCENE_FOREST_RIVAL_ARRIVE: + if (gTasks[taskId].tTimer != TIMER_STOP) { - taskIdC = gTasks[gTasks[taskIdE].data[TDE_TASK_A_ID]].data[TDA_TASK_C_ID]; + bikeTaskId = gTasks[gTasks[taskId].tMainTaskId].tTaskId_BikeScene; // Floor to multiple of 128 - if ((gTasks[taskIdC].data[TDC_5] & -128) == 640) + if ((gTasks[bikeTaskId].tSinIdx & -128) == 640) { - gTasks[taskIdC].data[TDC_0] = 1; - gTasks[taskIdE].data[TDE_1] = 0x7FFF; + gTasks[bikeTaskId].tState = 1; + gTasks[taskId].tTimer = TIMER_STOP; } } CycleSceneryPalette(1); break; - case 3: - if (gTasks[taskIdE].data[TDE_1] != 0x7FFF) + case SCENE_FOREST_CATCH_RIVAL: + if (gTasks[taskId].tTimer != TIMER_STOP) { - if (gTasks[taskIdE].data[TDE_1] == 0x248) + if (gTasks[taskId].tTimer == 584) { - gTasks[gTasks[gTasks[taskIdE].data[TDE_TASK_A_ID]].data[TDA_TASK_C_ID]].data[TDC_0] = 10; - gTasks[taskIdE].data[TDE_1] = 0x7FFF; + gTasks[gTasks[gTasks[taskId].tMainTaskId].tTaskId_BikeScene].tState = 10; + gTasks[taskId].tTimer = TIMER_STOP; } else { - gTasks[taskIdE].data[TDE_1]++; + gTasks[taskId].tTimer++; } } CycleSceneryPalette(1); break; - case 4: + case SCENE_CITY_NIGHT: CycleSceneryPalette(2); break; } } -static void InitCreditsSceneGfx(u8 scene, u8 taskIdA) +static void SetBikeScene(u8 scene, u8 taskId) { switch (scene) { - case 0: - gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 272; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; - gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); + case SCENE_OCEAN_MORNING: + gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; + gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; - case 1: - gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; - gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); + case SCENE_OCEAN_SUNSET: + gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; + gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); break; - case 2: - gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 272; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; - gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); + case SCENE_FOREST_RIVAL_ARRIVE: + gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; + gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; - case 3: - gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = -32; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; - gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); + case SCENE_FOREST_CATCH_RIVAL: + gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = -32; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; + gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); break; - case 4: - gSprites[gTasks[taskIdA].tPlayerSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.x = 88; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.x = 152; - gSprites[gTasks[taskIdA].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tRivalSpriteId].pos1.y = 46; - gSprites[gTasks[taskIdA].tPlayerSpriteId].data[0] = 0; - gSprites[gTasks[taskIdA].tRivalSpriteId].data[0] = 0; - gTasks[taskIdA].data[TDA_0] = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8); + case SCENE_CITY_NIGHT: + gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 88; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = 152; + gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; + gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; + gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8); break; } - gTasks[taskIdA].data[TDA_TASK_E_ID] = CreateTask(sub_817651C, 0); - gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_0] = scene; - gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_1] = 0; - gTasks[gTasks[taskIdA].data[TDA_TASK_E_ID]].data[TDE_TASK_A_ID] = taskIdA; + gTasks[taskId].tTaskId_SceneryPal = CreateTask(Task_CycleSceneryPalette, 0); + gTasks[gTasks[taskId].tTaskId_SceneryPal].tState = scene; + gTasks[gTasks[taskId].tTaskId_SceneryPal].tTimer = 0; + gTasks[gTasks[taskId].tTaskId_SceneryPal].tMainTaskId = taskId; - gTasks[taskIdA].data[TDA_TASK_C_ID] = CreateTask(sub_817624C, 0); - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_0] = 0; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_1] = taskIdA; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_2] = gTasks[taskIdA].tPlayerSpriteId; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_3] = gTasks[taskIdA].tRivalSpriteId; - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_4] = 0; + gTasks[taskId].tTaskId_BikeScene = CreateTask(Task_BikeScene, 0); + gTasks[gTasks[taskId].tTaskId_BikeScene].tState = 0; + gTasks[gTasks[taskId].tTaskId_BikeScene].data[1] = taskId; // data[1] is never read + gTasks[gTasks[taskId].tTaskId_BikeScene].tPlayer = gTasks[taskId].tPlayerSpriteId; + gTasks[gTasks[taskId].tTaskId_BikeScene].tRival = gTasks[taskId].tRivalSpriteId; + gTasks[gTasks[taskId].tTaskId_BikeScene].tDelay = 0; - if (scene == 2) - gTasks[gTasks[taskIdA].data[TDA_TASK_C_ID]].data[TDC_5] = 0x45; + if (scene == SCENE_FOREST_RIVAL_ARRIVE) + gTasks[gTasks[taskId].tTaskId_BikeScene].tSinIdx = 69; } -static bool8 sub_8176AB0(u8 scene, u8 taskIdA) +#undef tTimer +#undef tDelay +#undef tSinIdx +#undef tRival +#undef tPlayer + +static bool8 LoadBikeScene(u8 scene, u8 taskId) { u8 spriteId; @@ -1201,13 +1215,13 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) LoadSpritePalettes(gSpritePalettes_Credits); spriteId = CreateIntroBrendanSprite(120, 46); - gTasks[taskIdA].tPlayerSpriteId = spriteId; - gSprites[spriteId].callback = SpriteCB_PlayerCyclist; + gTasks[taskId].tPlayerSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_Player; gSprites[spriteId].anims = sAnims_Player; - spriteId = CreateIntroMaySprite(272, 46); - gTasks[taskIdA].tRivalSpriteId = spriteId; - gSprites[spriteId].callback = SpriteCB_RivalCyclist; + spriteId = CreateIntroMaySprite(DISPLAY_WIDTH + 32, 46); + gTasks[taskId].tRivalSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_Rival; gSprites[spriteId].anims = sAnims_Rival; } else @@ -1218,19 +1232,19 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) LoadSpritePalettes(gSpritePalettes_Credits); spriteId = CreateIntroMaySprite(120, 46); - gTasks[taskIdA].tPlayerSpriteId = spriteId; - gSprites[spriteId].callback = SpriteCB_PlayerCyclist; + gTasks[taskId].tPlayerSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_Player; gSprites[spriteId].anims = sAnims_Player; - spriteId = CreateIntroBrendanSprite(272, 46); - gTasks[taskIdA].tRivalSpriteId = spriteId; - gSprites[spriteId].callback = SpriteCB_RivalCyclist; + spriteId = CreateIntroBrendanSprite(DISPLAY_WIDTH + 32, 46); + gTasks[taskId].tRivalSpriteId = spriteId; + gSprites[spriteId].callback = SpriteCB_Rival; gSprites[spriteId].anims = sAnims_Rival; }; gMain.state++; break; case 3: - InitCreditsSceneGfx(scene, taskIdA); + SetBikeScene(scene, taskId); SetCreditsSceneBgCnt(scene); gMain.state = 0; return TRUE; @@ -1238,30 +1252,34 @@ static bool8 sub_8176AB0(u8 scene, u8 taskIdA) return FALSE; } -static void ResetCreditsTasks(u8 taskIdA) +static void ResetCreditsTasks(u8 taskId) { - if (gTasks[taskIdA].data[TDA_0] != 0) + // Destroy Task_BicycleBgAnimation, if running + if (gTasks[taskId].tTaskId_BgScenery != 0) { - DestroyTask(gTasks[taskIdA].data[TDA_0]); - gTasks[taskIdA].data[TDA_0] = 0; + DestroyTask(gTasks[taskId].tTaskId_BgScenery); + gTasks[taskId].tTaskId_BgScenery = 0; } - if (gTasks[taskIdA].data[TDA_TASK_C_ID] != 0) + // Destroy Task_BikeScene, if running + if (gTasks[taskId].tTaskId_BikeScene != 0) { - DestroyTask(gTasks[taskIdA].data[TDA_TASK_C_ID]); - gTasks[taskIdA].data[TDA_TASK_C_ID] = 0; + DestroyTask(gTasks[taskId].tTaskId_BikeScene); + gTasks[taskId].tTaskId_BikeScene = 0; } - if (gTasks[taskIdA].data[TDA_TASK_E_ID] != 0) + // Destroy Task_CycleSceneryPalette, if running + if (gTasks[taskId].tTaskId_SceneryPal != 0) { - DestroyTask(gTasks[taskIdA].data[TDA_TASK_E_ID]); - gTasks[taskIdA].data[TDA_TASK_E_ID] = 0; + DestroyTask(gTasks[taskId].tTaskId_SceneryPal); + gTasks[taskId].tTaskId_SceneryPal = 0; } - if (gTasks[taskIdA].data[TDA_TASK_D_ID] != 0) + // Destroy Task_ShowMons, if running + if (gTasks[taskId].tTaskId_ShowMons != 0) { - DestroyTask(gTasks[taskIdA].data[TDA_TASK_D_ID]); - gTasks[taskIdA].data[TDA_TASK_D_ID] = 0; + DestroyTask(gTasks[taskId].tTaskId_ShowMons); + gTasks[taskId].tTaskId_ShowMons = 0; } gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_DESTROY; @@ -1326,7 +1344,7 @@ static void DrawTheEnd(u16 offset, u16 palette) #define sState data[0] -static void SpriteCB_PlayerCyclist(struct Sprite *sprite) +static void SpriteCB_Player(struct Sprite *sprite) { if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { @@ -1363,7 +1381,7 @@ static void SpriteCB_PlayerCyclist(struct Sprite *sprite) } } -static void SpriteCB_RivalCyclist(struct Sprite *sprite) +static void SpriteCB_Rival(struct Sprite *sprite) { if (gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { @@ -1417,9 +1435,9 @@ static void SpriteCB_CreditsMon(struct Sprite *sprite) case 0: default: sprite->oam.affineMode = ST_OAM_AFFINE_NORMAL; - sprite->oam.matrixNum = sprite->data[1]; + sprite->oam.matrixNum = sprite->sPosition; sprite->data[2] = 16; - SetOamMatrix(sprite->data[1], 0x10000 / sprite->data[2], 0, 0, 0x10000 / sprite->data[2]); + SetOamMatrix(sprite->sPosition, 0x10000 / sprite->data[2], 0, 0, 0x10000 / sprite->data[2]); sprite->invisible = FALSE; sprite->sState = 1; break; @@ -1427,7 +1445,7 @@ static void SpriteCB_CreditsMon(struct Sprite *sprite) if (sprite->data[2] < 256) { sprite->data[2] += 8; - SetOamMatrix(sprite->data[1], 0x10000 / sprite->data[2], 0, 0, 0x10000 / sprite->data[2]); + SetOamMatrix(sprite->sPosition, 0x10000 / sprite->data[2], 0, 0, 0x10000 / sprite->data[2]); } else { diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 7d3a7f28b0e7..4461a5e5dad4 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -71,7 +71,7 @@ static void ClearVramOamPltt_LoadHofPal(void); static void LoadHofGfx(void); static void InitHofBgs(void); static bool8 CreateHofConfettiSprite(void); -static void SetCallback2AfterHallOfFameDisplay(void); +static void StartCredits(void); static bool8 sub_8175024(void); static void Task_Hof_InitMonData(u8 taskId); static void Task_Hof_InitTeamSaveData(u8 taskId); @@ -774,11 +774,11 @@ static void Task_Hof_HandleExit(u8 taskId) if (sHofMonPtr != NULL) FREE_AND_SET_NULL(sHofMonPtr); - SetCallback2AfterHallOfFameDisplay(); + StartCredits(); } } -static void SetCallback2AfterHallOfFameDisplay(void) +static void StartCredits(void) { SetMainCallback2(CB2_StartCreditsSequence); } diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index 401d077ef758..d19a3deea424 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -38,19 +38,19 @@ struct IntroCreditsSpriteMetadata }; static const u16 sGrass_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass.gbapal"); -static const u16 sGrassAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass_afternoon.gbapal"); +static const u16 sGrassSunset_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass_sunset.gbapal"); static const u16 sGrassNight_Pal[] = INCBIN_U16("graphics/intro/scene_2/grass_night.gbapal"); static const u32 sGrass_Gfx[] = INCBIN_U32("graphics/intro/scene_2/grass.4bpp.lz"); static const u32 sGrass_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/grass_map.bin.lz"); static const u16 sCloudsBg_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_bg.gbapal"); -static const u16 sCloudsBgAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_bg_afternoon.gbapal"); +static const u16 sCloudsBgSunset_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_bg_sunset.gbapal"); static const u32 sCloudsBg_Gfx[] = INCBIN_U32("graphics/intro/scene_2/clouds_bg.4bpp.lz"); static const u32 sCloudsBg_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/clouds_bg_map.bin.lz"); static const u16 sClouds_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds.gbapal"); -static const u16 sCloudsAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_afternoon.gbapal"); +static const u16 sCloudsSunset_Pal[] = INCBIN_U16("graphics/intro/scene_2/clouds_sunset.gbapal"); static const u32 sClouds_Gfx[] = INCBIN_U32("graphics/intro/scene_2/clouds.4bpp.lz"); static const u16 sTrees_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees.gbapal"); -static const u16 sTreesAfternoon_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees_afternoon.gbapal"); +static const u16 sTreesSunset_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees_sunset.gbapal"); static const u32 sTrees_Gfx[] = INCBIN_U32("graphics/intro/scene_2/trees.4bpp.lz"); static const u32 sTrees_Tilemap[] = INCBIN_U32("graphics/intro/scene_2/trees_map.bin.lz"); static const u16 sTreesSmall_Pal[] = INCBIN_U16("graphics/intro/scene_2/trees_small.gbapal"); @@ -97,25 +97,25 @@ static const struct CompressedSpriteSheet sSpriteSheet_Clouds[] = {} }; -static const union AnimCmd gUnknown_085F5074[] = +static const union AnimCmd sAnim_Cloud_Largest[] = { ANIMCMD_FRAME( 0, 30), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F507C[] = +static const union AnimCmd sAnim_Cloud_Large[] = { ANIMCMD_FRAME(16, 30), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F5084[] = +static const union AnimCmd sAnim_Cloud_Small[] = { ANIMCMD_FRAME(20, 30), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F508C[] = +static const union AnimCmd sAnim_Cloud_Smallest[] = { ANIMCMD_FRAME(22, 30), ANIMCMD_END @@ -123,10 +123,10 @@ static const union AnimCmd gUnknown_085F508C[] = static const union AnimCmd *const sAnims_Clouds[] = { - gUnknown_085F5074, - gUnknown_085F507C, - gUnknown_085F5084, - gUnknown_085F508C + sAnim_Cloud_Largest, + sAnim_Cloud_Large, + sAnim_Cloud_Small, + sAnim_Cloud_Smallest }; static const struct IntroCreditsSpriteMetadata sSpriteMetadata_Clouds[] = @@ -224,29 +224,29 @@ static const struct CompressedSpriteSheet sSpriteSheet_TreesSmall[] = {} }; -static const union AnimCmd gUnknown_085F50FC[] = +static const union AnimCmd sAnim_Trees_0[] = { ANIMCMD_FRAME( 0, 30), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F5104[] = +static const union AnimCmd sAnim_Trees_1[] = { ANIMCMD_FRAME(16, 30), ANIMCMD_END }; -static const union AnimCmd gUnknown_085F510C[] = +static const union AnimCmd sAnim_Trees_2[] = { ANIMCMD_FRAME(24, 30), ANIMCMD_END }; -static const union AnimCmd *const sAnims_TreesSmall[] = +static const union AnimCmd *const sAnims_Trees[] = { - gUnknown_085F50FC, - gUnknown_085F5104, - gUnknown_085F510C + sAnim_Trees_0, + sAnim_Trees_1, + sAnim_Trees_2 }; static const struct IntroCreditsSpriteMetadata sSpriteMetadata_Trees[] = @@ -726,12 +726,12 @@ static void CreateTreeSprites(void); static void CreateHouseSprites(void); static void Task_BicycleBgAnimation(u8); -void LoadIntroPart2Graphics(u8 scene) +void LoadIntroPart2Graphics(u8 scenery) { LZ77UnCompVram(sGrass_Gfx, (void *)(BG_CHAR_ADDR(1))); LZ77UnCompVram(sGrass_Tilemap, (void *)(BG_SCREEN_ADDR(15))); LoadPalette(&sGrass_Pal, 240, sizeof(sGrass_Pal)); - switch (scene) + switch (scenery) { case 0: default: @@ -758,10 +758,10 @@ void LoadIntroPart2Graphics(u8 scene) } // Note: This is only called with a=1. -void SetIntroPart2BgCnt(u8 scene) +void SetIntroPart2BgCnt(u8 scenery) { - // Only called with scene = 1 - switch (scene) + // Only called with scenery = 1 + switch (scenery) { default: case 0: @@ -842,7 +842,7 @@ void LoadCreditsSceneGraphics(u8 scene) LZ77UnCompVram(sGrass_Tilemap, (void *)(BG_SCREEN_ADDR(15))); switch (scene) { - case 0: + case SCENE_OCEAN_MORNING: default: LoadPalette(&sGrass_Pal, 240, sizeof(sGrass_Pal)); LZ77UnCompVram(sCloudsBg_Gfx, (void *)(VRAM)); @@ -853,27 +853,27 @@ void LoadCreditsSceneGraphics(u8 scene) LoadPalette(&sClouds_Pal, 256, sizeof(sClouds_Pal)); CreateCloudSprites(); break; - case 1: - LoadPalette(&sGrassAfternoon_Pal, 240, sizeof(sGrassAfternoon_Pal)); + case SCENE_OCEAN_SUNSET: + LoadPalette(&sGrassSunset_Pal, 240, sizeof(sGrassSunset_Pal)); LZ77UnCompVram(sCloudsBg_Gfx, (void *)(VRAM)); LZ77UnCompVram(sCloudsBg_Tilemap, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&sCloudsBgAfternoon_Pal, 0, sizeof(sCloudsBgAfternoon_Pal)); + LoadPalette(&sCloudsBgSunset_Pal, 0, sizeof(sCloudsBgSunset_Pal)); LoadCompressedSpriteSheet(sSpriteSheet_Clouds); LZ77UnCompVram(sClouds_Gfx, (void *)(OBJ_VRAM0)); - LoadPalette(&sCloudsAfternoon_Pal, 256, sizeof(sCloudsAfternoon_Pal)); + LoadPalette(&sCloudsSunset_Pal, 256, sizeof(sCloudsSunset_Pal)); CreateCloudSprites(); break; - case 2: - case 3: - LoadPalette(&sGrassAfternoon_Pal, 240, sizeof(sGrassAfternoon_Pal)); + case SCENE_FOREST_RIVAL_ARRIVE: + case SCENE_FOREST_CATCH_RIVAL: + LoadPalette(&sGrassSunset_Pal, 240, sizeof(sGrassSunset_Pal)); LZ77UnCompVram(sTrees_Gfx, (void *)(VRAM)); LZ77UnCompVram(sTrees_Tilemap, (void *)(BG_SCREEN_ADDR(6))); - LoadPalette(&sTreesAfternoon_Pal, 0, sizeof(sTreesAfternoon_Pal)); + LoadPalette(&sTreesSunset_Pal, 0, sizeof(sTreesSunset_Pal)); LoadCompressedSpriteSheet(sSpriteSheet_TreesSmall); - LoadPalette(&sTreesAfternoon_Pal, 256, sizeof(sTreesAfternoon_Pal)); + LoadPalette(&sTreesSunset_Pal, 256, sizeof(sTreesSunset_Pal)); CreateTreeSprites(); break; - case 4: + case SCENE_CITY_NIGHT: LoadPalette(&sGrassNight_Pal, 240, sizeof(sGrassNight_Pal)); LZ77UnCompVram(sHouses_Gfx, (void *)(VRAM)); LZ77UnCompVram(sHouses_Tilemap, (void *)(BG_SCREEN_ADDR(6))); @@ -987,11 +987,11 @@ static void Task_BicycleBgAnimation(u8 taskId) } } -void CycleSceneryPalette(u8 scene) +void CycleSceneryPalette(u8 mode) { u16 x; u16 y; - switch (scene) + switch (mode) { case 0: default: @@ -1031,6 +1031,10 @@ void CycleSceneryPalette(u8 scene) } } +#define tHasVerticalMove data[0] +#define tXOffset data[1] +#define tXPos data[2] + static void SpriteCB_MovingScenery(struct Sprite *sprite) { s32 x; @@ -1044,12 +1048,12 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite) DestroySprite(sprite); break; case INTROCRED_SCENERY_NORMAL: - x = ((sprite->pos1.x << 16) | (u16)sprite->data[2]) + (u16)sprite->data[1]; + x = ((sprite->pos1.x << 16) | (u16)sprite->tXPos) + (u16)sprite->tXOffset; sprite->pos1.x = x >> 16; - sprite->data[2] = x; - if (sprite->pos1.x > 0xFF) - sprite->pos1.x = -0x20; - if (sprite->data[0]) + sprite->tXPos = x; + if (sprite->pos1.x > 255) + sprite->pos1.x = -32; + if (sprite->tHasVerticalMove) sprite->pos2.y = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); else sprite->pos2.y = -gIntroCredits_MovingSceneryVBase; @@ -1058,7 +1062,7 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite) } } -static void CreateMovingScenerySprites(bool8 a, const struct IntroCreditsSpriteMetadata *metadata, const union AnimCmd *const *anims, u8 numSprites) +static void CreateMovingScenerySprites(bool8 hasVerticalMove, const struct IntroCreditsSpriteMetadata *metadata, const union AnimCmd *const *anims, u8 numSprites) { u8 i; @@ -1072,12 +1076,16 @@ static void CreateMovingScenerySprites(bool8 a, const struct IntroCreditsSpriteM gSprites[sprite].oam.paletteNum = 0; gSprites[sprite].anims = anims; StartSpriteAnim(&gSprites[sprite], metadata[i].animNum); - gSprites[sprite].data[0] = a; - gSprites[sprite].data[1] = metadata[i].xOff; - gSprites[sprite].data[2] = 0; + gSprites[sprite].tHasVerticalMove = hasVerticalMove; + gSprites[sprite].tXOffset = metadata[i].xOff; + gSprites[sprite].tXPos = 0; } } +#undef tHasVerticalMove +#undef tXOffset +#undef tXPos + static void CreateCloudSprites(void) { CreateMovingScenerySprites(FALSE, sSpriteMetadata_Clouds, sAnims_Clouds, 9); @@ -1085,7 +1093,7 @@ static void CreateCloudSprites(void) static void CreateTreeSprites(void) { - CreateMovingScenerySprites(TRUE, sSpriteMetadata_Trees, sAnims_TreesSmall, 12); + CreateMovingScenerySprites(TRUE, sSpriteMetadata_Trees, sAnims_Trees, 12); } static void CreateHouseSprites(void) From dea07dc8656c8fb32f5b389b9f4f9a30fe26e555 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 29 Mar 2021 20:31:21 -0400 Subject: [PATCH 066/762] Standardize intro gfx names --- .../scene_3/{clouds1.bin => clouds_left.bin} | Bin .../scene_3/{clouds2.bin => clouds_right.bin} | Bin .../scene_3/{clouds3.bin => clouds_sun.bin} | Bin .../{legend_bg1.bin => groudon_bg.bin} | Bin .../scene_3/{legend_bg2.bin => kyogre_bg.bin} | 0 .../intro/scene_3/{misc2.pal => misc.pal} | 0 .../{clouds4.bin => rayquaza_clouds.bin} | Bin .../{clouds2.png => rayquaza_clouds.png} | Bin .../scene_3/{misc1.pal => rayquaza_orb.pal} | 0 .../scene_3/unused_1.bin} | Bin .../scene_3/unused_2.bin} | Bin include/graphics.h | 69 ++++---- src/data/graphics/intro_scene.h | 73 ++++---- src/intro.c | 160 +++++++++--------- src/intro_credits_graphics.c | 16 +- 15 files changed, 158 insertions(+), 160 deletions(-) rename graphics/intro/scene_3/{clouds1.bin => clouds_left.bin} (100%) rename graphics/intro/scene_3/{clouds2.bin => clouds_right.bin} (100%) rename graphics/intro/scene_3/{clouds3.bin => clouds_sun.bin} (100%) rename graphics/intro/scene_3/{legend_bg1.bin => groudon_bg.bin} (100%) rename graphics/intro/scene_3/{legend_bg2.bin => kyogre_bg.bin} (100%) rename graphics/intro/scene_3/{misc2.pal => misc.pal} (100%) rename graphics/intro/scene_3/{clouds4.bin => rayquaza_clouds.bin} (100%) rename graphics/intro/scene_3/{clouds2.png => rayquaza_clouds.png} (100%) rename graphics/intro/scene_3/{misc1.pal => rayquaza_orb.pal} (100%) rename graphics/{unknown/unknown_D8C374.bin => intro/scene_3/unused_1.bin} (100%) rename graphics/{unknown/unknown_D8C5C4.bin => intro/scene_3/unused_2.bin} (100%) diff --git a/graphics/intro/scene_3/clouds1.bin b/graphics/intro/scene_3/clouds_left.bin similarity index 100% rename from graphics/intro/scene_3/clouds1.bin rename to graphics/intro/scene_3/clouds_left.bin diff --git a/graphics/intro/scene_3/clouds2.bin b/graphics/intro/scene_3/clouds_right.bin similarity index 100% rename from graphics/intro/scene_3/clouds2.bin rename to graphics/intro/scene_3/clouds_right.bin diff --git a/graphics/intro/scene_3/clouds3.bin b/graphics/intro/scene_3/clouds_sun.bin similarity index 100% rename from graphics/intro/scene_3/clouds3.bin rename to graphics/intro/scene_3/clouds_sun.bin diff --git a/graphics/intro/scene_3/legend_bg1.bin b/graphics/intro/scene_3/groudon_bg.bin similarity index 100% rename from graphics/intro/scene_3/legend_bg1.bin rename to graphics/intro/scene_3/groudon_bg.bin diff --git a/graphics/intro/scene_3/legend_bg2.bin b/graphics/intro/scene_3/kyogre_bg.bin similarity index 100% rename from graphics/intro/scene_3/legend_bg2.bin rename to graphics/intro/scene_3/kyogre_bg.bin diff --git a/graphics/intro/scene_3/misc2.pal b/graphics/intro/scene_3/misc.pal similarity index 100% rename from graphics/intro/scene_3/misc2.pal rename to graphics/intro/scene_3/misc.pal diff --git a/graphics/intro/scene_3/clouds4.bin b/graphics/intro/scene_3/rayquaza_clouds.bin similarity index 100% rename from graphics/intro/scene_3/clouds4.bin rename to graphics/intro/scene_3/rayquaza_clouds.bin diff --git a/graphics/intro/scene_3/clouds2.png b/graphics/intro/scene_3/rayquaza_clouds.png similarity index 100% rename from graphics/intro/scene_3/clouds2.png rename to graphics/intro/scene_3/rayquaza_clouds.png diff --git a/graphics/intro/scene_3/misc1.pal b/graphics/intro/scene_3/rayquaza_orb.pal similarity index 100% rename from graphics/intro/scene_3/misc1.pal rename to graphics/intro/scene_3/rayquaza_orb.pal diff --git a/graphics/unknown/unknown_D8C374.bin b/graphics/intro/scene_3/unused_1.bin similarity index 100% rename from graphics/unknown/unknown_D8C374.bin rename to graphics/intro/scene_3/unused_1.bin diff --git a/graphics/unknown/unknown_D8C5C4.bin b/graphics/intro/scene_3/unused_2.bin similarity index 100% rename from graphics/unknown/unknown_D8C5C4.bin rename to graphics/intro/scene_3/unused_2.bin diff --git a/include/graphics.h b/include/graphics.h index 9af68a052d54..1d39eb1f5e76 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3874,44 +3874,43 @@ extern const u32 gBagPalette[]; extern const u32 gBerryCheckCircle_Gfx[]; //intro graphics -extern const u32 gIntro1Sparkle_Gfx[]; -extern const u32 gIntro1Flygon_Gfx[]; -extern const u16 gIntro3LightningPal[]; +extern const u32 gIntroSparkle_Gfx[]; +extern const u32 gIntroFlygonSilhouette_Gfx[]; +extern const u32 gIntroLightning_Gfx[]; +extern const u16 gIntroLightning_Pal[]; extern const u32 gIntroCopyright_Gfx[]; extern const u32 gIntroCopyright_Tilemap[]; extern const u16 gIntroCopyright_Pal[16]; -extern const u32 gIntro2VolbeatGfx[]; -extern const u32 gIntro2TorchicGfx[]; -extern const u32 gIntro2ManectricGfx[]; -extern const u16 gIntro2VolbeatPal[]; -extern const u16 gIntro2TorchicPal[]; -extern const u16 gIntro2ManectricPal[]; -extern const u32 gIntro3Bubbles_Gfx[]; -extern const u16 gIntro3Bubbles_Pal[]; -extern const u32 gIntro3LightningGfx[]; -extern const u32 gIntro3GroudonGfx[]; -extern const u32 gIntro3GroudonTilemap[]; -extern const u32 gIntro3LegendBgGfx[]; -extern const u32 gIntro3GroudonBgTilemap[]; -extern const u32 gIntro3GroudonBgTilemap[]; -extern const u8 gIntro3BgPal[0x200]; -extern const u32 gIntro3KyogreGfx[]; -extern const u32 gIntro3KyogreTilemap[]; -extern const u32 gIntro3KyogreBgTilemap[]; -extern const u32 gIntro3CloudsGfx[]; -extern const u32 gIntro3Clouds1Tilemap[]; -extern const u32 gIntro3Clouds2Tilemap[]; -extern const u32 gIntro3Clouds3Tilemap[]; -extern const u32 gIntro3Clouds4Tilemap[]; -extern const u32 gIntro3RayquazaTilemap[]; -extern const u32 gIntro3RayquazaGfx[]; -extern const u32 gIntro3Clouds2Gfx[]; -extern const u16 gIntro1GameFreakTextFadePal[]; -extern const u32 gIntro2BrendanGfx[]; -extern const u32 gIntro2MayGfx[]; -extern const u16 gIntro2PlayerPal[]; -extern const u16 gIntro2FlygonPal[]; -extern const u32 gIntro2FlygonGfx[]; +extern const u32 gIntroVolbeat_Gfx[]; +extern const u16 gIntroVolbeat_Pal[]; +extern const u32 gIntroTorchic_Gfx[]; +extern const u16 gIntroTorchic_Pal[]; +extern const u32 gIntroManectric_Gfx[]; +extern const u16 gIntroManectric_Pal[]; +extern const u32 gIntroBubbles_Gfx[]; +extern const u16 gIntroBubbles_Pal[]; +extern const u32 gIntroGroudon_Gfx[]; +extern const u32 gIntroGroudon_Tilemap[]; +extern const u32 gIntroLegendBg_Gfx[]; +extern const u32 gIntroGroudonBg_Tilemap[]; +extern const u8 gIntro3Bg_Pal[0x200]; +extern const u32 gIntroKyogre_Gfx[]; +extern const u32 gIntroKyogre_Tilemap[]; +extern const u32 gIntroKyogreBg_Tilemap[]; +extern const u32 gIntroClouds_Gfx[]; +extern const u32 gIntroCloudsLeft_Tilemap[]; +extern const u32 gIntroCloudsRight_Tilemap[]; +extern const u32 gIntroCloudsSun_Tilemap[]; +extern const u32 gIntroRayquaza_Tilemap[]; +extern const u32 gIntroRayquaza_Gfx[]; +extern const u32 gIntroRayquazaClouds_Gfx[]; +extern const u32 gIntroRayquazaClouds_Tilemap[]; +extern const u16 gIntroGameFreakTextFade_Pal[]; +extern const u32 gIntroBrendan_Gfx[]; +extern const u32 gIntroMay_Gfx[]; +extern const u16 gIntroPlayer_Pal[]; +extern const u16 gIntroFlygon_Pal[]; +extern const u32 gIntroFlygon_Gfx[]; // party menu graphics extern const u32 gPartyMenuBg_Gfx[]; diff --git a/src/data/graphics/intro_scene.h b/src/data/graphics/intro_scene.h index ab1cdcd9c2ee..cb7706c9a3df 100644 --- a/src/data/graphics/intro_scene.h +++ b/src/data/graphics/intro_scene.h @@ -1,48 +1,47 @@ -const u16 gIntro1GameFreakTextFadePal[] = INCBIN_U16("graphics/intro/scene_1/text.gbapal"); // game freak text blue fade -const u16 gIntro2PlayerPal[] = INCBIN_U16("graphics/intro/scene_2/player.gbapal"); -const u16 gIntro3BgPal[] = INCBIN_U16("graphics/intro/scene_3/bg.gbapal"); -const u16 gIntro2VolbeatPal[] = INCBIN_U16("graphics/intro/scene_2/volbeat.gbapal"); -const u16 gIntro2TorchicPal[] = INCBIN_U16("graphics/intro/scene_2/torchic.gbapal"); -const u16 gIntro2ManectricPal[] = INCBIN_U16("graphics/intro/scene_2/manectric.gbapal"); -const u16 gIntro2FlygonPal[] = INCBIN_U16("graphics/intro/scene_2/flygon.gbapal"); +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 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"); +const u16 gIntroFlygon_Pal[] = INCBIN_U16("graphics/intro/scene_2/flygon.gbapal"); -const u32 gIntro2VolbeatGfx[] = INCBIN_U32("graphics/intro/scene_2/volbeat.4bpp.lz"); -const u32 gIntro2TorchicGfx[] = INCBIN_U32("graphics/intro/scene_2/torchic.4bpp.lz"); -const u32 gIntro2ManectricGfx[] = INCBIN_U32("graphics/intro/scene_2/manectric.4bpp.lz"); -const u32 gIntro2FlygonGfx[] = INCBIN_U32("graphics/intro/scene_2/flygon.4bpp.lz"); -const u32 gIntro2BrendanGfx[] = INCBIN_U32("graphics/intro/scene_2/brendan.4bpp.lz"); -const u32 gIntro2MayGfx[] = INCBIN_U32("graphics/intro/scene_2/may.4bpp.lz"); +const u32 gIntroVolbeat_Gfx[] = INCBIN_U32("graphics/intro/scene_2/volbeat.4bpp.lz"); +const u32 gIntroTorchic_Gfx[] = INCBIN_U32("graphics/intro/scene_2/torchic.4bpp.lz"); +const u32 gIntroManectric_Gfx[] = INCBIN_U32("graphics/intro/scene_2/manectric.4bpp.lz"); +const u32 gIntroFlygon_Gfx[] = INCBIN_U32("graphics/intro/scene_2/flygon.4bpp.lz"); +const u32 gIntroBrendan_Gfx[] = INCBIN_U32("graphics/intro/scene_2/brendan.4bpp.lz"); +const u32 gIntroMay_Gfx[] = INCBIN_U32("graphics/intro/scene_2/may.4bpp.lz"); -const u32 gIntro3GroudonGfx[] = INCBIN_U32("graphics/intro/scene_3/groudon.8bpp.lz"); -const u32 gIntro3GroudonTilemap[] = INCBIN_U32("graphics/intro/scene_3/groudon.bin.lz"); +const u32 gIntroGroudon_Gfx[] = INCBIN_U32("graphics/intro/scene_3/groudon.8bpp.lz"); +const u32 gIntroGroudon_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/groudon.bin.lz"); -const u32 gIntro3KyogreGfx[] = INCBIN_U32("graphics/intro/scene_3/kyogre.8bpp.lz"); -const u32 gIntro3KyogreTilemap[] = INCBIN_U32("graphics/intro/scene_3/kyogre.bin.lz"); +const u32 gIntroKyogre_Gfx[] = INCBIN_U32("graphics/intro/scene_3/kyogre.8bpp.lz"); +const u32 gIntroKyogre_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/kyogre.bin.lz"); -const u32 gIntro3LegendBgGfx[] = INCBIN_U32("graphics/intro/scene_3/legend_bg.4bpp.lz"); // groudon/kyogre bg +const u32 gIntroLegendBg_Gfx[] = INCBIN_U32("graphics/intro/scene_3/legend_bg.4bpp.lz"); // groudon/kyogre bg +const u32 gIntroGroudonBg_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/groudon_bg.bin.lz"); +const u32 gIntroKyogreBg_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/kyogre_bg.bin.lz"); -const u32 gIntro3GroudonBgTilemap[] = INCBIN_U32("graphics/intro/scene_3/legend_bg1.bin.lz"); -const u32 gIntro3KyogreBgTilemap[] = INCBIN_U32("graphics/intro/scene_3/legend_bg2.bin.lz"); +const u32 gIntroClouds_Gfx[] = INCBIN_U32("graphics/intro/scene_3/clouds.4bpp.lz"); +const u32 gIntroCloudsLeft_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds_left.bin.lz"); +const u32 gIntroCloudsRight_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds_right.bin.lz"); +const u32 gIntroCloudsSun_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds_sun.bin.lz"); -const u32 gIntro3CloudsGfx[] = INCBIN_U32("graphics/intro/scene_3/clouds.4bpp.lz"); -const u32 gIntro3Clouds1Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds1.bin.lz"); -const u32 gIntro3Clouds2Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds2.bin.lz"); -const u32 gIntro3Clouds3Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds3.bin.lz"); +const u32 gIntroLightning_Gfx[] = INCBIN_U32("graphics/intro/scene_3/lightning.4bpp.lz"); +const u16 gIntroLightning_Pal[] = INCBIN_U16("graphics/intro/scene_3/lightning.gbapal"); -const u32 gIntro3LightningGfx[] = INCBIN_U32("graphics/intro/scene_3/lightning.4bpp.lz"); -const u16 gIntro3LightningPal[] = INCBIN_U16("graphics/intro/scene_3/lightning.gbapal"); +const u32 gIntroRayquaza_Gfx[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.4bpp.lz"); +const u32 gIntroRayquaza_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.bin.lz"); -const u32 gIntro3RayquazaGfx[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.4bpp.lz"); -const u32 gIntro3RayquazaTilemap[] = INCBIN_U32("graphics/intro/scene_3/rayquaza.bin.lz"); +const u32 gIntroUnused1_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/unused_1.bin.lz"); +const u32 gIntroUnused2_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/unused_2.bin.lz"); -const u32 gUnknown_D8C374[] = INCBIN_U32("graphics/unknown/unknown_D8C374.bin.lz"); -const u32 gUnknown_D8C5C4[] = INCBIN_U32("graphics/unknown/unknown_D8C5C4.bin.lz"); +const u32 gIntroRayquazaClouds_Gfx[] = INCBIN_U32("graphics/intro/scene_3/rayquaza_clouds.4bpp.lz"); +const u32 gIntroRayquazaClouds_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/rayquaza_clouds.bin.lz"); -const u32 gIntro3Clouds2Gfx[] = INCBIN_U32("graphics/intro/scene_3/clouds2.4bpp.lz"); // during the rayquaza flash -const u32 gIntro3Clouds4Tilemap[] = INCBIN_U32("graphics/intro/scene_3/clouds4.bin.lz"); +const u32 gIntroBubbles_Gfx[] = INCBIN_U32("graphics/intro/scene_3/bubbles.4bpp.lz"); +const u16 gIntroBubbles_Pal[] = INCBIN_U16("graphics/intro/scene_3/bubbles.gbapal"); -const u32 gIntro3Bubbles_Gfx[] = INCBIN_U32("graphics/intro/scene_3/bubbles.4bpp.lz"); -const u16 gIntro3Bubbles_Pal[] = INCBIN_U16("graphics/intro/scene_3/bubbles.gbapal"); - -const u32 gIntro1Flygon_Gfx[] = INCBIN_U32("graphics/intro/scene_1/flygon.4bpp.lz"); -const u32 gIntro1Sparkle_Gfx[] = INCBIN_U32("graphics/intro/scene_1/sparkle.4bpp.lz"); +const u32 gIntroFlygonSilhouette_Gfx[] = INCBIN_U32("graphics/intro/scene_1/flygon.4bpp.lz"); +const u32 gIntroSparkle_Gfx[] = INCBIN_U32("graphics/intro/scene_1/sparkle.4bpp.lz"); diff --git a/src/intro.c b/src/intro.c index 2597e5a9e8b4..a8468d518ca2 100644 --- a/src/intro.c +++ b/src/intro.c @@ -175,26 +175,26 @@ static EWRAM_DATA u16 sFlygonYOffset = 0; u32 gIntroFrameCounter; struct GcmbStruct gMultibootProgramStruct; -static const u16 sIntro1DropsPal[] = INCBIN_U16("graphics/intro/scene_1/drops.gbapal"); -static const u16 sIntro1Logo_Pal[] = INCBIN_U16("graphics/intro/scene_1/logo.gbapal"); -static const u32 sIntro1DropsLogo_Gfx[] = INCBIN_U32("graphics/intro/scene_1/drops_logo.4bpp.lz"); -static const u16 sIntro1Bg_Pal[16][16] = INCBIN_U16("graphics/intro/scene_1/bg.gbapal"); -static const u32 sIntro1Bg0_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg0_map.bin.lz"); -static const u32 sIntro1Bg1_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg1_map.bin.lz"); -static const u32 sIntro1Bg2_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg2_map.bin.lz"); -static const u32 sIntro1Bg3_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg3_map.bin.lz"); -static const u32 sIntro1Bg_Gfx[] = INCBIN_U32("graphics/intro/scene_1/bg.4bpp.lz"); -static const u16 sIntro3Pokeball_Pal[] = INCBIN_U16("graphics/intro/scene_3/pokeball.gbapal"); -static const u32 sIntro3Pokeball_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/pokeball_map.bin.lz"); -static const u32 sIntro3Pokeball_Gfx[] = INCBIN_U32("graphics/intro/scene_3/pokeball.8bpp.lz"); -static const u16 sIntro3Streaks_Pal[] = INCBIN_U16("graphics/intro/scene_3/streaks.gbapal"); // Unused -static const u32 sIntro3Streaks_Gfx[] = INCBIN_U32("graphics/intro/scene_3/streaks.4bpp.lz"); // Unused -static const u32 sIntro3Streaks_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/streaks_map.bin.lz"); // Unused -static const u16 sIntro3Misc1_Pal[] = INCBIN_U16("graphics/intro/scene_3/misc1.gbapal"); -static const u16 sIntro3Misc2_Pal[] = INCBIN_U16("graphics/intro/scene_3/misc2.gbapal"); // Unused -static const u32 sIntro3Misc_Gfx[] = INCBIN_U32("graphics/intro/scene_3/misc.4bpp.lz"); -static const u16 sIntro1Flygon_Pal[] = INCBIN_U16("graphics/intro/scene_1/flygon.gbapal"); -static const u32 sIntro1Lati_Gfx[] = INCBIN_U32("graphics/intro/scene_1/lati.4bpp.lz"); // Unused +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"); +static const u32 sIntroDropsLogo_Gfx[] = INCBIN_U32("graphics/intro/scene_1/drops_logo.4bpp.lz"); +static const u16 sIntro1Bg_Pal[16][16] = INCBIN_U16("graphics/intro/scene_1/bg.gbapal"); +static const u32 sIntro1Bg0_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg0_map.bin.lz"); +static const u32 sIntro1Bg1_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg1_map.bin.lz"); +static const u32 sIntro1Bg2_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg2_map.bin.lz"); +static const u32 sIntro1Bg3_Tilemap[] = INCBIN_U32("graphics/intro/scene_1/bg3_map.bin.lz"); +static const u32 sIntro1Bg_Gfx[] = INCBIN_U32("graphics/intro/scene_1/bg.4bpp.lz"); +static const u16 sIntroPokeball_Pal[] = INCBIN_U16("graphics/intro/scene_3/pokeball.gbapal"); +static const u32 sIntroPokeball_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/pokeball_map.bin.lz"); +static const u32 sIntroPokeball_Gfx[] = INCBIN_U32("graphics/intro/scene_3/pokeball.8bpp.lz"); +static const u16 sIntroStreaks_Pal[] = INCBIN_U16("graphics/intro/scene_3/streaks.gbapal"); // Unused +static const u32 sIntroStreaks_Gfx[] = INCBIN_U32("graphics/intro/scene_3/streaks.4bpp.lz"); // Unused +static const u32 sIntroStreaks_Tilemap[] = INCBIN_U32("graphics/intro/scene_3/streaks_map.bin.lz"); // Unused +static const u16 sIntroRayquzaOrb_Pal[] = INCBIN_U16("graphics/intro/scene_3/rayquaza_orb.gbapal"); +static const u16 sIntroMisc_Pal[] = INCBIN_U16("graphics/intro/scene_3/misc.gbapal"); // Unused +static const u32 sIntroMisc_Gfx[] = INCBIN_U32("graphics/intro/scene_3/misc.4bpp.lz"); // Rayquza orb, and misc unused gfx +static const u16 sIntroFlygonSilhouette_Pal[] = INCBIN_U16("graphics/intro/scene_1/flygon.gbapal"); +static const u32 sIntroLati_Gfx[] = INCBIN_U32("graphics/intro/scene_1/lati.4bpp.lz"); // Unused static const u8 sUnusedData[] = { 0x02, 0x03, 0x04, 0x05, 0x01, 0x01, 0x01, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x02, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x02, 0x0D, 0x0E, 0x0F, @@ -203,12 +203,12 @@ static const u8 sUnusedData[] = { }; static const struct CompressedSpriteSheet sSpriteSheet_Sparkle[] = { - {gIntro1Sparkle_Gfx, 0x400, TAG_SPARKLE}, + {gIntroSparkle_Gfx, 0x400, TAG_SPARKLE}, {}, }; static const struct SpritePalette sSpritePalette_Sparkle[] = { - {gIntro3LightningPal, TAG_SPARKLE}, // Lightning palette re-used + {gIntroLightning_Pal, TAG_SPARKLE}, // Lightning palette re-used {}, }; static const struct OamData sOamData_Sparkle = @@ -267,16 +267,16 @@ static const u8 sSparkleCoords[][2] = }; static const struct CompressedSpriteSheet sSpriteSheet_RunningPokemon[] = { - {gIntro2VolbeatGfx, 0x400, TAG_VOLBEAT}, - {gIntro2TorchicGfx, 0xC00, TAG_TORCHIC}, - {gIntro2ManectricGfx, 0x2000, TAG_MANECTRIC}, + {gIntroVolbeat_Gfx, 0x400, TAG_VOLBEAT}, + {gIntroTorchic_Gfx, 0xC00, TAG_TORCHIC}, + {gIntroManectric_Gfx, 0x2000, TAG_MANECTRIC}, {}, }; static const struct SpritePalette sSpritePalettes_RunningPokemon[] = { - {gIntro2VolbeatPal, TAG_VOLBEAT}, - {gIntro2TorchicPal, TAG_TORCHIC}, - {gIntro2ManectricPal, TAG_MANECTRIC}, + {gIntroVolbeat_Pal, TAG_VOLBEAT}, + {gIntroTorchic_Pal, TAG_TORCHIC}, + {gIntroManectric_Pal, TAG_MANECTRIC}, {}, }; static const struct OamData sOamData_Volbeat = @@ -415,12 +415,12 @@ static const struct SpriteTemplate sSpriteTemplate_Manectric = }; static const struct CompressedSpriteSheet sSpriteSheet_Lightning[] = { - {gIntro3LightningGfx, 0xC00, TAG_LIGHTNING}, + {gIntroLightning_Gfx, 0xC00, TAG_LIGHTNING}, {}, }; static const struct SpritePalette sSpritePalette_Lightning[] = { - {gIntro3LightningPal, TAG_LIGHTNING}, + {gIntroLightning_Pal, TAG_LIGHTNING}, {}, }; static const struct OamData sOamData_Lightning = @@ -486,12 +486,12 @@ static const s16 sGroudonRockData[][3] = }; static const struct CompressedSpriteSheet sSpriteSheet_Bubbles[] = { - {gIntro3Bubbles_Gfx, 0x600, TAG_BUBBLES}, + {gIntroBubbles_Gfx, 0x600, TAG_BUBBLES}, {}, }; static const struct SpritePalette sSpritePalette_Bubbles[] = { - {gIntro3Bubbles_Pal, TAG_BUBBLES}, + {gIntroBubbles_Pal, TAG_BUBBLES}, {}, }; #define NUM_BUBBLES_IN_SET 6 @@ -963,19 +963,19 @@ static const struct SpriteTemplate sSpriteTemplate_FlygonSilhouette = }; static const struct CompressedSpriteSheet sSpriteSheet_WaterDropsAndLogo[] = { - {sIntro1DropsLogo_Gfx, 0x1400, GFXTAG_DROPS_LOGO}, + {sIntroDropsLogo_Gfx, 0x1400, GFXTAG_DROPS_LOGO}, {}, }; static const struct CompressedSpriteSheet sSpriteSheet_FlygonSilhouette[] = { - {gIntro1Flygon_Gfx, 0x400, TAG_FLYGON_SILHOUETTE}, + {gIntroFlygonSilhouette_Gfx, 0x400, TAG_FLYGON_SILHOUETTE}, {}, }; static const struct SpritePalette sSpritePalettes_Intro1[] = { - {sIntro1DropsPal, PALTAG_DROPS}, - {sIntro1Logo_Pal, PALTAG_LOGO}, - {sIntro1Flygon_Pal, TAG_FLYGON_SILHOUETTE}, + {sIntroDrops_Pal, PALTAG_DROPS}, + {sIntroLogo_Pal, PALTAG_LOGO}, + {sIntroFlygonSilhouette_Pal, TAG_FLYGON_SILHOUETTE}, {}, }; static const struct OamData sOamData_RayquazaOrb = @@ -1015,12 +1015,12 @@ static const struct SpriteTemplate sSpriteTemplate_RayquazaOrb = }; static const struct CompressedSpriteSheet sSpriteSheet_RayquazaOrb[] = { - {sIntro3Misc_Gfx, 0xA00, TAG_RAYQUAZA_ORB}, + {sIntroMisc_Gfx, 0xA00, TAG_RAYQUAZA_ORB}, {}, }; static const struct SpritePalette sSpritePalette_RayquazaOrb[] = { - {sIntro3Misc1_Pal, TAG_RAYQUAZA_ORB}, + {sIntroRayquzaOrb_Pal, TAG_RAYQUAZA_ORB}, {}, }; @@ -1715,9 +1715,9 @@ static void SpriteCB_Manectric(struct Sprite *sprite) static void Task_Scene3_Load(u8 taskId) { IntroResetGpuRegs(); - LZ77UnCompVram(sIntro3Pokeball_Gfx, (void *)VRAM); - LZ77UnCompVram(sIntro3Pokeball_Tilemap, (void *)(BG_CHAR_ADDR(1))); - LoadPalette(sIntro3Pokeball_Pal, 0, sizeof(sIntro3Pokeball_Pal)); + LZ77UnCompVram(sIntroPokeball_Gfx, (void *)VRAM); + LZ77UnCompVram(sIntroPokeball_Tilemap, (void *)(BG_CHAR_ADDR(1))); + LoadPalette(sIntroPokeball_Pal, 0, sizeof(sIntroPokeball_Pal)); gTasks[taskId].tAlpha = 0; gTasks[taskId].tZoomDiv = 0; gTasks[taskId].tZoomDivSpeed = 0; @@ -1770,13 +1770,13 @@ static void Task_Scene3_LoadGroudon(u8 taskId) ResetSpriteData(); FreeAllSpritePalettes(); gReservedSpritePaletteCount = 8; - LZDecompressVram(gIntro3GroudonGfx, (void *)VRAM); - LZDecompressVram(gIntro3GroudonTilemap, (void *)(BG_CHAR_ADDR(3))); - LZDecompressVram(gIntro3LegendBgGfx, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gIntroGroudon_Gfx, (void *)VRAM); + LZDecompressVram(gIntroGroudon_Tilemap, (void *)(BG_CHAR_ADDR(3))); + LZDecompressVram(gIntroLegendBg_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gIntroGroudonBg_Tilemap, (void *)(BG_SCREEN_ADDR(28))); LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]); LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]); - CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal)); + CpuCopy16(gIntro3Bg_Pal, gPlttBufferUnfaded, sizeof(gIntro3Bg_Pal)); gTasks[taskId].func = Task_Scene3_InitGroudonBg; } } @@ -1884,7 +1884,7 @@ static void Task_Scene3_Groudon(u8 taskId) if (--tDelay == 0) { tDelay = 2; - CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); + CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); tPalIdx += 2; if (tPalIdx == 0x1EC) tState++; @@ -1901,7 +1901,7 @@ static void Task_Scene3_Groudon(u8 taskId) if (--tDelay == 0) { tDelay = 2; - CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); + CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[31], sizeof(u16)); tPalIdx -= 2; if (tPalIdx == 0x1E0) { @@ -2045,9 +2045,9 @@ static void SpriteCB_GroudonRocks(struct Sprite *sprite) static void Task_Scene3_LoadKyogre(u8 taskId) { ResetSpriteData(); - LZDecompressVram(gIntro3KyogreGfx, (void *)VRAM); - LZDecompressVram(gIntro3KyogreTilemap, (void *)(BG_CHAR_ADDR(3))); - LZDecompressVram(gIntro3KyogreBgTilemap, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gIntroKyogre_Gfx, (void *)VRAM); + LZDecompressVram(gIntroKyogre_Tilemap, (void *)(BG_CHAR_ADDR(3))); + LZDecompressVram(gIntroKyogreBg_Tilemap, (void *)(BG_SCREEN_ADDR(28))); LoadCompressedSpriteSheet(sSpriteSheet_Bubbles); LoadSpritePalette(sSpritePalette_Bubbles); BeginNormalPaletteFade(PALETTES_ALL & ~1, 0, 16, 0, RGB_WHITEALPHA); @@ -2143,7 +2143,7 @@ static void Task_Scene3_Kyogre(u8 taskId) if (--tDelay == 0) { tDelay = 4; - CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); + CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); tPalIdx -= 2; if (tPalIdx == 0x1E0) tState++; @@ -2161,7 +2161,7 @@ static void Task_Scene3_Kyogre(u8 taskId) if (--tDelay == 0) { tDelay = 4; - CpuCopy16(&gIntro3BgPal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); + CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[47], sizeof(u16)); tPalIdx += 2; if (tPalIdx == 0x1EE) { @@ -2353,16 +2353,16 @@ static void Task_Scene3_LoadClouds1(u8 taskId) SetGpuReg(REG_OFFSET_BG1VOFS, 0); SetGpuReg(REG_OFFSET_BG2HOFS, 0); SetGpuReg(REG_OFFSET_BG2VOFS, 0); - LZDecompressVram(gIntro3CloudsGfx, (void *)VRAM); - LZDecompressVram(gIntro3CloudsGfx, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gIntro3Clouds3Tilemap, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gIntroClouds_Gfx, (void *)VRAM); + LZDecompressVram(gIntroClouds_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gIntroCloudsSun_Tilemap, (void *)(BG_SCREEN_ADDR(28))); gTasks[taskId].func = Task_Scene3_LoadClouds2; } static void Task_Scene3_LoadClouds2(u8 taskId) { - LZDecompressVram(gIntro3Clouds1Tilemap, (void *)(BG_CHAR_ADDR(3))); - LZDecompressVram(gIntro3Clouds2Tilemap, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gIntroCloudsLeft_Tilemap, (void *)(BG_CHAR_ADDR(3))); + LZDecompressVram(gIntroCloudsRight_Tilemap, (void *)(BG_SCREEN_ADDR(26))); gTasks[taskId].func = Task_Scene3_InitClouds; } @@ -2420,10 +2420,10 @@ static void Task_Scene3_Clouds(u8 taskId) static void Task_Scene3_LoadLightning(u8 taskId) { - LZDecompressVram(gIntro3RayquazaTilemap, (void *)(BG_SCREEN_ADDR(28))); - LZDecompressVram(gIntro3Clouds4Tilemap, (void *)(BG_CHAR_ADDR(3))); - LZDecompressVram(gIntro3RayquazaGfx, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gIntro3Clouds2Gfx, (void *)VRAM); + LZDecompressVram(gIntroRayquaza_Tilemap, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gIntroRayquazaClouds_Tilemap, (void *)(BG_CHAR_ADDR(3))); + LZDecompressVram(gIntroRayquaza_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gIntroRayquazaClouds_Gfx, (void *)VRAM); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON @@ -2492,7 +2492,7 @@ static void SpriteCB_Lightning(struct Sprite *sprite) sprite->sPalIdx = 0x1C2; sprite->sState++; case 1: - CpuCopy16(&gIntro3BgPal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); + CpuCopy16(&gIntro3Bg_Pal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); sprite->sPalIdx += 2; if (sprite->sPalIdx != 0x1CE) break; @@ -2503,7 +2503,7 @@ static void SpriteCB_Lightning(struct Sprite *sprite) if (--sprite->sDelay == 0) { sprite->sDelay = 4; - CpuCopy16(&gIntro3BgPal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); + CpuCopy16(&gIntro3Bg_Pal[sprite->sPalIdx], &gPlttBufferFaded[93], 2); sprite->sPalIdx -= 2; if (sprite->sPalIdx == 0x1C0) DestroySprite(sprite); @@ -2606,7 +2606,7 @@ static void Task_RayquazaAttack(u8 taskId) case 0: if ((data[2] & 1) != 0) { - CpuCopy16(&gIntro3BgPal[0x1A2 + data[1] * 2], &gPlttBufferFaded[94], 2); + CpuCopy16(&gIntro3Bg_Pal[0x1A2 + data[1] * 2], &gPlttBufferFaded[94], 2); data[1]++; } if (data[1] == 6) @@ -2621,7 +2621,7 @@ static void Task_RayquazaAttack(u8 taskId) { if ((data[2] & 1) != 0) { - CpuCopy16(&gIntro3BgPal[0x1A2 + data[1] * 2], &gPlttBufferFaded[88], 2); + CpuCopy16(&gIntro3Bg_Pal[0x1A2 + data[1] * 2], &gPlttBufferFaded[88], 2); data[1]++; } if (data[1] == 6) @@ -2640,7 +2640,7 @@ static void Task_RayquazaAttack(u8 taskId) { if ((data[2] & 1) != 0) { - CpuCopy16(&gIntro3BgPal[0x182 + data[1] * 2], &gPlttBufferFaded[92], 2); + CpuCopy16(&gIntro3Bg_Pal[0x182 + data[1] * 2], &gPlttBufferFaded[92], 2); data[1]++; } if (data[1] == 6) @@ -2664,9 +2664,9 @@ static void Task_RayquazaAttack(u8 taskId) if (--data[3] != 0) { BlendPalette(0x50, 16, data[3], RGB(9, 10, 10)); - CpuCopy16(&gIntro3BgPal[0x1AC], &gPlttBufferFaded[94], 2); - CpuCopy16(&gIntro3BgPal[0x1AC], &gPlttBufferFaded[88], 2); - CpuCopy16(&gIntro3BgPal[0x18C], &gPlttBufferFaded[92], 2); + CpuCopy16(&gIntro3Bg_Pal[0x1AC], &gPlttBufferFaded[94], 2); + CpuCopy16(&gIntro3Bg_Pal[0x1AC], &gPlttBufferFaded[88], 2); + CpuCopy16(&gIntro3Bg_Pal[0x18C], &gPlttBufferFaded[92], 2); } else { @@ -3197,16 +3197,16 @@ static void SpriteCB_LogoLetter(struct Sprite *sprite) sprite->sColorDelay = 2; if (sprite->sTimer != 0) { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); sprite->sTimer--; } else { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); sprite->sState++; } } @@ -3226,9 +3226,9 @@ static void SpriteCB_LogoLetter(struct Sprite *sprite) sprite->sColorDelay = 2; if (sprite->sTimer <= COLOR_CHANGES) { - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); - CpuCopy16(&gIntro1GameFreakTextFadePal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer], &gPlttBufferFaded[0x11F], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 16], &gPlttBufferFaded[0x114], 2); + CpuCopy16(&gIntroGameFreakTextFade_Pal[sprite->sTimer + 32], &gPlttBufferFaded[0x11A], 2); sprite->sTimer++; } else diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index d19a3deea424..1f196b268d40 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -579,7 +579,7 @@ static const struct SpriteTemplate sSpriteTemplate_FlygonLatias = const struct CompressedSpriteSheet gSpriteSheet_IntroBrendan[] = { { - .data = gIntro2BrendanGfx, + .data = gIntroBrendan_Gfx, .size = 0x2000, .tag = TAG_BRENDAN }, @@ -589,7 +589,7 @@ const struct CompressedSpriteSheet gSpriteSheet_IntroBrendan[] = const struct CompressedSpriteSheet gSpriteSheet_IntroMay[] = { { - .data = gIntro2MayGfx, + .data = gIntroMay_Gfx, .size = 0x2000, .tag = TAG_MAY }, @@ -610,7 +610,7 @@ const struct CompressedSpriteSheet gSpriteSheet_IntroBicycle[] = static const struct CompressedSpriteSheet sSpriteSheet_IntroFlygon_Unused[] = { { - .data = gIntro2FlygonGfx, + .data = gIntroFlygon_Gfx, .size = 0x1000, .tag = TAG_FLYGON_LATIOS }, @@ -620,7 +620,7 @@ static const struct CompressedSpriteSheet sSpriteSheet_IntroFlygon_Unused[] = const struct CompressedSpriteSheet gSpriteSheet_IntroFlygon[] = { { - .data = gIntro2FlygonGfx, + .data = gIntroFlygon_Gfx, .size = 0x1000, .tag = TAG_FLYGON_LATIAS }, @@ -629,10 +629,10 @@ const struct CompressedSpriteSheet gSpriteSheet_IntroFlygon[] = const struct SpritePalette gSpritePalettes_IntroPlayerFlygon[] = { - { .data = gIntro2PlayerPal, .tag = TAG_BRENDAN }, - { .data = gIntro2PlayerPal, .tag = TAG_MAY }, - { .data = gIntro2FlygonPal, .tag = TAG_FLYGON_LATIOS }, - { .data = gIntro2FlygonPal, .tag = TAG_FLYGON_LATIAS }, + { .data = gIntroPlayer_Pal, .tag = TAG_BRENDAN }, + { .data = gIntroPlayer_Pal, .tag = TAG_MAY }, + { .data = gIntroFlygon_Pal, .tag = TAG_FLYGON_LATIOS }, + { .data = gIntroFlygon_Pal, .tag = TAG_FLYGON_LATIAS }, {} }; From d5d1caf96550c91baef4a7f02670a6f1c83f6559 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 30 Mar 2021 15:07:04 -0400 Subject: [PATCH 067/762] Add some uses of OBJ_VRAM/VRAM_SIZE --- src/battle_bg.c | 2 +- src/battle_interface.c | 4 ++-- src/overworld.c | 2 +- src/pokeball.c | 2 +- src/pokenav_main_menu.c | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/battle_bg.c b/src/battle_bg.c index af0e374e204a..571080aea109 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -1126,7 +1126,7 @@ void DrawBattleEntryBackground(void) if (gBattleTypeFlags & BATTLE_TYPE_LINK) { LZDecompressVram(gUnknown_08D778F0, (void*)(BG_CHAR_ADDR(1))); - LZDecompressVram(gVsLettersGfx, (void*)(VRAM + 0x10000)); + LZDecompressVram(gVsLettersGfx, (void*)OBJ_VRAM0); LoadCompressedPalette(gUnknown_08D77AE4, 0x60, 0x20); SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1); SetGpuReg(REG_OFFSET_BG1CNT, 0x5C04); diff --git a/src/battle_interface.c b/src/battle_interface.c index df123630c9f9..cccc0b97117b 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1935,7 +1935,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) if (GetBattlerSide(gSprites[healthboxSpriteId].data[6]) == B_SIDE_PLAYER) { - TextIntoHealthboxObject((void*)(VRAM + 0x10040 + spriteTileNum), windowTileData, 6); + TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x40 + spriteTileNum), windowTileData, 6); ptr = (void*)(OBJ_VRAM0); if (!IsDoubleBattle()) ptr += spriteTileNum + 0x800; @@ -1945,7 +1945,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) } else { - TextIntoHealthboxObject((void*)(VRAM + 0x10020 + spriteTileNum), windowTileData, 7); + TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x20 + spriteTileNum), windowTileData, 7); } RemoveWindowOnHealthbox(windowId); diff --git a/src/overworld.c b/src/overworld.c index 5aa5bb73df54..63f648fe4a29 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2060,7 +2060,7 @@ static void sub_80867D8(void) ScanlineEffect_Stop(); DmaClear16(3, PLTT + 2, PLTT_SIZE - 2); - DmaFillLarge16(3, 0, (void *)(VRAM + 0x0), 0x18000, 0x1000); + DmaFillLarge16(3, 0, (void *)VRAM, VRAM_SIZE, 0x1000); ResetOamRange(0, 128); LoadOam(); } diff --git a/src/pokeball.c b/src/pokeball.c index 503bae2d2867..678b9da33ea0 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1272,7 +1272,7 @@ void LoadBallGfx(u8 ballId) break; default: var = GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag); - LZDecompressVram(gOpenPokeballGfx, (void *)(VRAM + 0x10100 + var * 32)); + LZDecompressVram(gOpenPokeballGfx, (void *)(OBJ_VRAM0 + 0x100 + var * 32)); break; } } diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index e8262ad9a20f..07e5242fe5b8 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -702,7 +702,7 @@ static void LoadLeftHeaderGfxForSubMenu(u32 menuGfxId) size = GetDecompressedDataSize(sPokenavSubMenuLeftHeaderSpriteSheets[menuGfxId].data); LoadPalette(&gPokenavLeftHeader_Pal[tag * 16], (IndexOfSpritePaletteTag(2) * 16) + 0x100, 0x20); LZ77UnCompWram(sPokenavSubMenuLeftHeaderSpriteSheets[menuGfxId].data, &gDecompressionBuffer[0x1000]); - RequestDma3Copy(&gDecompressionBuffer[0x1000], (void *)VRAM + 0x10800 + (GetSpriteTileStartByTag(2) * 32), size, 1); + RequestDma3Copy(&gDecompressionBuffer[0x1000], (void *)OBJ_VRAM0 + 0x800 + (GetSpriteTileStartByTag(2) * 32), size, 1); } void ShowLeftHeaderGfx(u32 menuGfxId, bool32 isMain, bool32 isOnRightSide) From 8c6e89e994b312b3c6d36bcda8636343f80e4801 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 30 Mar 2021 17:38:09 -0400 Subject: [PATCH 068/762] Bit shifts from hex to decimal --- src/battle_main.c | 14 +++++++------- src/battle_script_commands.c | 8 ++++---- src/battle_util.c | 4 ++-- src/image_processing_effects.c | 4 ++-- src/load_save.c | 2 +- src/menu.c | 4 ++-- src/new_game.c | 2 +- src/pokeblock.c | 4 ++-- src/pokemon.c | 6 +++--- 9 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index 3507ff7653af..9bb2268a6b9a 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -4087,7 +4087,7 @@ static void HandleTurnActionSelectionState(void) } break; case STATE_WAIT_ACTION_CHOSEN: // Try to perform an action. - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { RecordedBattle_SetBattlerAction(gActiveBattler, gBattleBufferB[gActiveBattler][1]); gChosenActionByBattler[gActiveBattler] = gBattleBufferB[gActiveBattler][1]; @@ -4266,7 +4266,7 @@ static void HandleTurnActionSelectionState(void) } break; case STATE_WAIT_ACTION_CASE_CHOSEN: - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { switch (gChosenActionByBattler[gActiveBattler]) { @@ -4375,7 +4375,7 @@ static void HandleTurnActionSelectionState(void) break; case STATE_WAIT_ACTION_CONFIRMED_STANDBY: if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) - | (0xF0000000) + | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) @@ -4400,7 +4400,7 @@ static void HandleTurnActionSelectionState(void) } break; case STATE_WAIT_ACTION_CONFIRMED: - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { gBattleCommunication[ACTIONS_CONFIRMED_COUNT]++; } @@ -4414,7 +4414,7 @@ static void HandleTurnActionSelectionState(void) { gBattlerAttacker = gActiveBattler; gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBattler]; - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); } @@ -4422,7 +4422,7 @@ static void HandleTurnActionSelectionState(void) } break; case STATE_WAIT_SET_BEFORE_ACTION: - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN; } @@ -4446,7 +4446,7 @@ static void HandleTurnActionSelectionState(void) { gBattlerAttacker = gActiveBattler; gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBattler]; - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF0000000) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 0xC)))) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 96c849cbc0a3..84f8efaa84fd 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -4855,7 +4855,7 @@ static void Cmd_openpartyscreen(void) { u8 flag40_0, flag40_1, flag40_2, flag40_3; - hitmarkerFaintBits = gHitMarker >> 0x1C; + hitmarkerFaintBits = gHitMarker >> 28; if (gBitTable[0] & hitmarkerFaintBits) { @@ -4984,7 +4984,7 @@ static void Cmd_openpartyscreen(void) { if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - hitmarkerFaintBits = gHitMarker >> 0x1C; + hitmarkerFaintBits = gHitMarker >> 28; if (gBitTable[2] & hitmarkerFaintBits && gBitTable[0] & hitmarkerFaintBits) { gActiveBattler = 2; @@ -5029,7 +5029,7 @@ static void Cmd_openpartyscreen(void) gBattlescriptCurrInstr += 6; } - hitmarkerFaintBits = gHitMarker >> 0x1C; + hitmarkerFaintBits = gHitMarker >> 28; gBattlerFainted = 0; while (!(gBitTable[gBattlerFainted] & hitmarkerFaintBits) @@ -5229,7 +5229,7 @@ static void Cmd_switchineffects(void) if (gBattlescriptCurrInstr[1] == 5) { - u32 hitmarkerFaintBits = gHitMarker >> 0x1C; + u32 hitmarkerFaintBits = gHitMarker >> 28; gBattlerFainted++; while (1) diff --git a/src/battle_util.c b/src/battle_util.c index 6e1202bd12cc..c0d897707c73 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -801,7 +801,7 @@ void MarkAllBattlersForControllerExec(void) // unused if (gBattleTypeFlags & BATTLE_TYPE_LINK) { for (i = 0; i < gBattlersCount; i++) - gBattleControllerExecFlags |= gBitTable[i] << 0x1C; + gBattleControllerExecFlags |= gBitTable[i] << (32 - MAX_BATTLERS_COUNT); } else { @@ -813,7 +813,7 @@ void MarkAllBattlersForControllerExec(void) // unused void MarkBattlerForControllerExec(u8 battlerId) { if (gBattleTypeFlags & BATTLE_TYPE_LINK) - gBattleControllerExecFlags |= gBitTable[battlerId] << 0x1C; + gBattleControllerExecFlags |= gBitTable[battlerId] << (32 - MAX_BATTLERS_COUNT); else gBattleControllerExecFlags |= gBitTable[battlerId]; } diff --git a/src/image_processing_effects.c b/src/image_processing_effects.c index 4a56871a4c34..fa6867f2c52b 100644 --- a/src/image_processing_effects.c +++ b/src/image_processing_effects.c @@ -804,8 +804,8 @@ void ConvertImageProcessingToGBA(struct ImageProcessingContext *context) dest = dest_ + ((i * width + j) << 4) + (k << 1); src = src_ + ((((i << 3) + k) << 3) * width) + (j << 3); - dest[0] = src[0] | (src[1] << 4) | (src[2] << 8) | (src[3] << 0xC); - dest[1] = src[4] | (src[5] << 4) | (src[6] << 8) | (src[7] << 0xC); + dest[0] = src[0] | (src[1] << 4) | (src[2] << 8) | (src[3] << 12); + dest[1] = src[4] | (src[5] << 4) | (src[6] << 8) | (src[7] << 12); } } } diff --git a/src/load_save.c b/src/load_save.c index 8459cd96b339..eec8f91aeac9 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -130,7 +130,7 @@ void MoveSaveBlocks_ResetHeap(void) gMain.vblankCallback = vblankCB; // create a new encryption key - encryptionKey = (Random() << 0x10) + (Random()); + encryptionKey = (Random() << 16) + (Random()); ApplyNewEncryptionKeyToAllEncryptedData(encryptionKey); gSaveBlock2Ptr->encryptionKey = encryptionKey; } diff --git a/src/menu.c b/src/menu.c index 86e5caac24ee..9957f72037cf 100644 --- a/src/menu.c +++ b/src/menu.c @@ -2036,8 +2036,8 @@ void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 src { for (loopSrcX = srcX, loopDstX = dstX; loopSrcX < xEnd; loopSrcX++, loopDstX++) { - pixelsSrc = src->pixels + ((loopSrcX >> 1) & 3) + ((loopSrcX >> 3) << 5) + (((loopSrcY >> 3) * multiplierSrcY) << 5) + ((u32)(loopSrcY << 0x1d) >> 0x1B); - pixelsDst = (void*) dst->pixels + ((loopDstX >> 1) & 3) + ((loopDstX >> 3) << 5) + ((( loopDstY >> 3) * multiplierDstY) << 5) + ((u32)(loopDstY << 0x1d) >> 0x1B); + pixelsSrc = src->pixels + ((loopSrcX >> 1) & 3) + ((loopSrcX >> 3) << 5) + (((loopSrcY >> 3) * multiplierSrcY) << 5) + ((u32)(loopSrcY << 29) >> 27); + pixelsDst = (void*) dst->pixels + ((loopDstX >> 1) & 3) + ((loopDstX >> 3) << 5) + ((( loopDstY >> 3) * multiplierDstY) << 5) + ((u32)(loopDstY << 29) >> 27); if ((uintptr_t)pixelsDst & 0x1) { diff --git a/src/new_game.c b/src/new_game.c index c43c6ae9f2b7..05d86aa8cf48 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -87,7 +87,7 @@ void CopyTrainerId(u8 *dst, u8 *src) static void InitPlayerTrainerId(void) { - u32 trainerId = (Random() << 0x10) | GetGeneratedTrainerIdLower(); + u32 trainerId = (Random() << 16) | GetGeneratedTrainerIdLower(); SetTrainerId(trainerId, gSaveBlock2Ptr->playerTrainerId); } diff --git a/src/pokeblock.c b/src/pokeblock.c index ee546deda479..3513e7dd240f 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -760,8 +760,8 @@ static void sub_8135FCC(s32 pkblId) { if (GetPokeblockData(pokeblock, PBLOCK_SPICY + i) > 0) { - rectTilemapSrc[0] = (i << 0xC) + 0x17; - rectTilemapSrc[1] = (i << 0xC) + 0x18; + rectTilemapSrc[0] = (i << 12) + 0x17; + rectTilemapSrc[1] = (i << 12) + 0x18; } else { diff --git a/src/pokemon.c b/src/pokemon.c index 5b683584bee8..e28fba1b489d 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6605,12 +6605,12 @@ const u8 *GetTrainerPartnerName(void) #define READ_PTR_FROM_TASK(taskId, dataId) \ (void*)( \ ((u16)(gTasks[taskId].data[dataId]) | \ - ((u16)(gTasks[taskId].data[dataId + 1]) << 0x10))) + ((u16)(gTasks[taskId].data[dataId + 1]) << 16))) #define STORE_PTR_IN_TASK(ptr, taskId, dataId) \ { \ gTasks[taskId].data[dataId] = (u32)(ptr); \ - gTasks[taskId].data[dataId + 1] = (u32)(ptr) >> 0x10; \ + gTasks[taskId].data[dataId + 1] = (u32)(ptr) >> 16; \ } static void Task_AnimateAfterDelay(u8 taskId) @@ -6897,7 +6897,7 @@ struct Unknown_806F160_Struct *sub_806F2AC(u8 id, u8 arg1) else { for (i = 0; i < structPtr->field_0_0; i++) - structPtr->byteArrays[i] = structPtr->bytes + (structPtr->field_3_0 * (i << 0xD)); + structPtr->byteArrays[i] = structPtr->bytes + (structPtr->field_3_0 * (i << 13)); } structPtr->templates = AllocZeroed(sizeof(struct SpriteTemplate) * structPtr->field_0_0); From f602a9dcbf4534fad68c8ee91b7da58682f62d56 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 31 Mar 2021 00:35:56 -0400 Subject: [PATCH 069/762] Use bool for multichoice ignoreBPress --- asm/macros/event.inc | 50 ++++++++++--------- .../scripts.inc | 12 ++--- .../scripts.inc | 8 +-- .../scripts.inc | 8 +-- .../scripts.inc | 8 +-- .../scripts.inc | 8 +-- .../scripts.inc | 12 ++--- .../scripts.inc | 12 ++--- .../scripts.inc | 8 +-- .../scripts.inc | 6 +-- .../scripts.inc | 2 +- .../scripts.inc | 10 ++-- .../scripts.inc | 12 ++--- .../scripts.inc | 24 ++++----- .../scripts.inc | 16 +++--- .../scripts.inc | 4 +- data/maps/BattleFrontier_Lounge3/scripts.inc | 2 +- .../BattleFrontier_OutsideWest/scripts.inc | 2 +- .../BattleFrontier_ReceptionGate/scripts.inc | 4 +- data/maps/CaveOfOrigin_B1F/scripts.inc | 2 +- data/maps/DewfordTown/scripts.inc | 4 +- .../scripts.inc | 4 +- .../FallarborTown_BattleTentLobby/scripts.inc | 4 +- data/maps/FortreeCity_House2/scripts.inc | 6 +-- .../LilycoveCity_ContestLobby/scripts.inc | 10 ++-- .../scripts.inc | 10 ++-- .../scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/MauvilleCity_BikeShop/scripts.inc | 6 +-- data/maps/MauvilleCity_GameCorner/scripts.inc | 8 +-- data/maps/Route104_MrBrineysHouse/scripts.inc | 2 +- data/maps/Route109/scripts.inc | 2 +- data/maps/Route110_TrickHouseEnd/scripts.inc | 2 +- .../Route110_TrickHouseEntrance/scripts.inc | 2 +- .../Route110_TrickHousePuzzle5/scripts.inc | 30 +++++------ .../scripts.inc | 30 +++++------ .../RustboroCity_DevonCorp_2F/scripts.inc | 2 +- .../RustboroCity_PokemonSchool/scripts.inc | 2 +- .../scripts.inc | 4 +- .../SlateportCity_BattleTentLobby/scripts.inc | 4 +- data/maps/SlateportCity_Harbor/scripts.inc | 6 +-- data/maps/TrainerHill_Entrance/scripts.inc | 4 +- .../scripts.inc | 4 +- .../scripts.inc | 2 +- data/scripts/berry_blender.inc | 2 +- data/scripts/cable_club.inc | 30 +++++------ data/scripts/contest_hall.inc | 8 +-- data/scripts/interview.inc | 2 +- data/scripts/mystery_event_club.inc | 4 +- data/scripts/players_house.inc | 2 +- data/scripts/shared_secret_base.inc | 6 +-- src/scrcmd.c | 10 ++-- 52 files changed, 214 insertions(+), 212 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 4625f8df6cf9..84fdd592a71d 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -846,38 +846,40 @@ .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. - @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with list. If b 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, list:req, b:req + @ 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 \x .byte \y - .byte \list - .byte \b + .byte \multichoiceId + .byte \ignoreBPress .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. - @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with list. 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 0x00. - @ If b 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, list:req, default:req, b:req + @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with multichoiceId. + @ 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 0x00. + @ 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 \x .byte \y - .byte \list + .byte \multichoiceId .byte \default - .byte \b + .byte \ignoreBPress .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. - @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with list. + @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with multichoiceId. @ The per_row argument determines how many list items will be shown on a single row of the box. - .macro multichoicegrid x:req, y:req, list:req, per_row:req, B:req + @ 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 \x .byte \y - .byte \list + .byte \multichoiceId .byte \per_row - .byte \B + .byte \ignoreBPress .endm @ Nopped in Emerald. @@ -886,21 +888,21 @@ .endm @ Nopped in Emerald, but still consumes parameters. - .macro erasebox byte1:req, byte2:req, byte3:req, byte4:req + .macro erasebox left:req, top:req, right:req, bottom:req .byte 0x73 - .byte \byte1 - .byte \byte2 - .byte \byte3 - .byte \byte4 + .byte \left + .byte \top + .byte \right + .byte \bottom .endm @ Nopped in Emerald, but still consumes parameters. - .macro drawboxtext byte1:req, byte2:req, byte3:req, byte4:req + .macro drawboxtext left:req, top:req, multichoiceId:req, ignoreBPress:req .byte 0x74 - .byte \byte1 - .byte \byte2 - .byte \byte3 - .byte \byte4 + .byte \left + .byte \top + .byte \multichoiceId + .byte \ignoreBPress .endm @ Displays a box containing the front sprite for the specified (species) Pokemon species. diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index 5badc62d0700..ac48a45bfd4a 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -155,7 +155,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: @ 82576B0 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle @@ -164,7 +164,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: @ 82576B0 case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8257768 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskPauseChallenge @@ -174,7 +174,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle:: @ 825779E message BattleFrontier_BattleArenaBattleRoom_Text_RecordLastBattle waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_RecordBattle @@ -194,7 +194,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskPauseChallenge:: @ 82577DA BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge:: @ 8257808 message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_WarpToLobbyLost @@ -264,7 +264,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: @ 82578D4 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle @@ -273,7 +273,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: @ 82578D4 case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord:: @ 825792B - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskPauseChallenge diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index a2d785e66174..2c8253456134 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -84,7 +84,7 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge:: @ 8255D59 goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge message BattleFrontier_BattleArenaLobby_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge case 0, BattleFrontier_BattleArenaLobby_EventScript_RecordMatch @@ -116,7 +116,7 @@ BattleFrontier_BattleArenaLobby_EventScript_Attendant:: @ 8255DF4 BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge:: @ 8255E0B message BattleFrontier_BattleArenaLobby_Text_WishToTakeChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattleArenaLobby_EventScript_ExplainChallenge @@ -126,7 +126,7 @@ BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge:: @ 8255E0B BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: @ 8255E47 message BattleFrontier_BattleArenaLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge @@ -325,7 +325,7 @@ BattleFrontier_BattleArenaLobby_EventScript_RulesBoard:: @ 82560CA BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard:: @ 82560D9 message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 2, MULTI_BATTLE_ARENA_RULES, 0 + multichoice 17, 2, MULTI_BATTLE_ARENA_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleArenaLobby_EventScript_BattleRules case 1, BattleFrontier_BattleArenaLobby_EventScript_MindRules diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc index 328f7bd40b0d..39bca5a3d309 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc @@ -92,7 +92,7 @@ BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle:: @ 8249991 goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_EndChallenge message BattleFrontier_BattleDomeLobby_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleDomeLobby_EventScript_EndChallenge case 0, BattleFrontier_BattleDomeLobby_EventScript_RecordBattle @@ -147,7 +147,7 @@ BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: @ 8249A72 compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_TakeDoublesChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattleDomeLobby_EventScript_ExplainChallenge @@ -157,7 +157,7 @@ BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: @ 8249A72 BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: @ 8249ABF message BattleFrontier_BattleDomeLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge @@ -427,7 +427,7 @@ BattleFrontier_BattleDomeLobby_EventScript_RulesBoard:: @ 8249E34 BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard:: @ 8249E43 message BattleFrontier_BattleDomeLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 4, MULTI_BATTLE_DOME_RULES, 0 + multichoice 17, 4, MULTI_BATTLE_DOME_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleDomeLobby_EventScript_RulesMatchup case 1, BattleFrontier_BattleDomeLobby_EventScript_RulesTourneyTree diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc index 977a0bcae26c..4499bda92d55 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc @@ -33,7 +33,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: @ 824B call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord - multichoice 16, 0, MULTI_TOURNEY_WITH_RECORD, 1 + multichoice 16, 0, MULTI_TOURNEY_WITH_RECORD, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree @@ -44,7 +44,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: @ 824B case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord:: @ 824B2C1 - multichoice 16, 2, MULTI_TOURNEY_NO_RECORD, 1 + multichoice 16, 2, MULTI_TOURNEY_NO_RECORD, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree @@ -56,7 +56,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord: BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle:: @ 824B30D message BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle @@ -76,7 +76,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge:: @ 824B349 BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge:: @ 824B377 message BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc index 60d0ae58791a..dfdb7c944e4d 100644 --- a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc @@ -83,7 +83,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle:: @ 825853B goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle message BattleFrontier_BattleFactoryLobby_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle case 0, BattleFrontier_BattleFactoryLobby_EventScript_RecordBattle @@ -136,7 +136,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: @ 8258606 compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TakeDoublesChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattleFactoryLobby_EventScript_ExplainChallenge @@ -146,7 +146,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: @ 8258606 BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge:: @ 8258653 message BattleFrontier_BattleFactoryLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge @@ -293,7 +293,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_RulesBoard:: @ 8258839 BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard:: @ 8258848 message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 0, MULTI_BATTLE_FACTORY_RULES, 0 + multichoice 17, 0, MULTI_BATTLE_FACTORY_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryLobby_EventScript_RulesBasics case 1, BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapPartner diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index e8569714672d..3d3f2faeee83 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -105,7 +105,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle @@ -114,7 +114,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8259CC6 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskPauseChallenge @@ -124,7 +124,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecor BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle:: @ 8259CFC message BattleFrontier_BattleFactoryPreBattleRoom_Text_RecordLatestBattle waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_RecordBattle @@ -144,7 +144,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskPauseChallenge:: @ 8259 BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge:: @ 8259D66 message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost @@ -396,7 +396,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: @ 825A0B call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle @@ -405,7 +405,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: @ 825A0B case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord:: @ 825A110 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead case 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskPauseChallenge diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index 43db81321ba3..0ad0a9377329 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -113,7 +113,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: @ 824F98 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle @@ -122,7 +122,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: @ 824F98 case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 824FA42 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskPauseChallenge @@ -132,7 +132,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord:: BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle:: @ 824FA78 message BattleFrontier_BattlePalaceBattleRoom_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_RecordBattle @@ -152,7 +152,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskPauseChallenge:: @ 824FAB4 BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge:: @ 824FAE2 message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost @@ -189,7 +189,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: @ 824FB79 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle @@ -198,7 +198,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: @ 824FB79 case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord:: @ 824FBD0 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskPauseChallenge diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index dc0fe4af1def..4c2a4841e833 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -85,7 +85,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge:: @ 824D8A1 goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge message BattleFrontier_BattlePalaceLobby_Text_LikeToRecordMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge case 0, BattleFrontier_BattlePalaceLobby_EventScript_RecordMatch @@ -139,7 +139,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: @ 824D999 compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattlePalaceLobby_EventScript_ExplainChallenge @@ -149,7 +149,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: @ 824D999 BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: @ 824D9E6 message BattleFrontier_BattlePalaceLobby_Text_WhichChallenge waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge @@ -351,7 +351,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_RulesBoard:: @ 824DCA6 BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard:: @ 824DCB5 message BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading waitmessage - multichoice 16, 0, MULTI_BATTLE_PALACE_RULES, 0 + multichoice 16, 0, MULTI_BATTLE_PALACE_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceLobby_EventScript_RulesBasics case 1, BattleFrontier_BattlePalaceLobby_EventScript_RulesNature diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index 3e6111f427fa..1bc66bbfa034 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -101,7 +101,7 @@ BattleFrontier_BattlePikeLobby_EventScript_Attendant:: @ 825B868 BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge:: @ 825B87F message BattleFrontier_BattlePikeLobby_Text_TakeChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattlePikeLobby_EventScript_ExplainChallenge @@ -111,7 +111,7 @@ BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge:: @ 825B87F BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: @ 825B8BB message BattleFrontier_BattlePikeLobby_Text_WhichChallengeMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge @@ -236,7 +236,7 @@ BattleFrontier_BattlePikeLobby_EventScript_RulesBoard:: @ 825BAC6 BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard:: @ 825BAD5 message BattleFrontier_BattlePikeLobby_Text_ReadWhichHeading waitmessage - multichoice 16, 4, MULTI_BATTLE_PIKE_RULES, 0 + multichoice 16, 4, MULTI_BATTLE_PIKE_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePikeLobby_EventScript_RulesPokenavBag case 1, BattleFrontier_BattlePikeLobby_EventScript_RulesHeldItems diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc index 46edebce685f..acdd490204e7 100644 --- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc @@ -143,7 +143,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AskSaveChallenge:: @ 825CA2A BattleFrontier_BattlePikeThreePathRoom_EventScript_AskRetireChallenge:: @ 825CA5A message BattleFrontier_BattlePikeThreePathRoom_Text_RetireFromChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePike_EventScript_Retire release diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc index fc33a8c91173..175d2c56b710 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc @@ -115,7 +115,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_Attendant:: @ 82508B1 BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge:: @ 82508C8 message BattleFrontier_BattlePyramidLobby_Text_EmbarkOnChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge case 1, BattleFrontier_BattlePyramidLobby_EventScript_ExplainChallenge @@ -125,7 +125,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge:: @ 82508C8 BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: @ 8250904 message BattleFrontier_BattlePyramidLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge @@ -218,7 +218,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_HintGiver:: @ 8250ACE end BattleFrontier_BattlePyramidLobby_EventScript_GiveHint:: @ 8250AF0 - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLvOpen @@ -446,7 +446,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_HeldItemsStoredInPyramidBag:: @ 82 @ When exiting Battle Pyramid with a full pyramid bag and held items the player must select to keep/toss party held items and make room for any kept items by tossing from the pyramid bag BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep:: @ 8250E09 - multichoice 17, 6, MULTI_FRONTIER_ITEM_CHOOSE, 0 + multichoice 17, 6, MULTI_FRONTIER_ITEM_CHOOSE, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromBag case 1, BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromParty @@ -500,7 +500,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_RulesBoard:: @ 8250E95 BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard:: @ 8250EA4 message BattleFrontier_BattlePyramidLobby_Text_ReadWhichHeading waitmessage - multichoice 15, 2, MULTI_BATTLE_PYRAMID_RULES, 0 + multichoice 15, 2, MULTI_BATTLE_PYRAMID_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePyramidLobby_EventScript_RulesPokemon case 1, BattleFrontier_BattlePyramidLobby_EventScript_RulesTrainers diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc index cc623e2166e2..bfe26edb52ff 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc @@ -82,7 +82,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: @ 8241C8F call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle @@ -91,7 +91,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: @ 8241C8F case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8241D0A - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskPauseChallenge @@ -101,7 +101,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle:: @ 8241D40 message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_RecordBattle @@ -121,7 +121,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskPauseChallenge:: @ 8241D7C BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge:: @ 8241DAA message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_RetireChallenge @@ -224,7 +224,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: @ 8241F22 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle @@ -233,7 +233,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: @ 8241F22 case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord:: @ 8241F79 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskPauseChallenge diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index c1174cf0660f..465b04f78d76 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -135,7 +135,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: @ 823E84D goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle message BattleFrontier_BattleTowerLobby_Text_RecordLastMatch waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle case 0, BattleFrontier_EventScript_SaveBattle @@ -187,7 +187,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SinglesAttendant:: @ 823E936 BattleFrontier_BattleTowerLobby_EventScript_AskEnterSinglesChallenge:: @ 823E948 message BattleFrontier_BattleTowerLobby_Text_TakeSinglesChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge case 1, BattleFrontier_BattleTowerLobby_EventScript_ExplainSinglesChallenge @@ -198,7 +198,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: @ 823E984 setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge @@ -253,7 +253,7 @@ BattleFrontier_BattleTowerLobby_EventScript_DoublesAttendant:: @ 823EA9F BattleFrontier_BattleTowerLobby_EventScript_AskEnterDoublesChallenge:: @ 823EAB1 message BattleFrontier_BattleTowerLobby_Text_TakeDoublesChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge case 1, BattleFrontier_BattleTowerLobby_EventScript_ExplainDoublesChallenge @@ -264,7 +264,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: @ 823EAED setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge @@ -320,7 +320,7 @@ BattleFrontier_BattleTowerLobby_EventScript_MultisAttendant:: @ 823EC08 BattleFrontier_BattleTowerLobby_EventScript_AskEnterMultisChallenge:: @ 823EC1D message BattleFrontier_BattleTowerLobby_Text_TakeMultisChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge case 1, BattleFrontier_BattleTowerLobby_EventScript_ExplainMultisChallenge @@ -331,7 +331,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: @ 823EC59 setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge @@ -386,7 +386,7 @@ BattleFrontier_BattleTowerLobby_EventScript_LinkMultisAttendant:: @ 823ED74 BattleFrontier_BattleTowerLobby_EventScript_AskEnterLinkMultisChallenge:: @ 823ED86 message BattleFrontier_BattleTowerLobby_Text_TakeLinkMultisChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge case 1, BattleFrontier_BattleTowerLobby_EventScript_ExplainLinkMultisChallenge @@ -397,7 +397,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: @ 823E setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage - multichoice 17, 6, MULTI_LEVEL_MODE, 0 + multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge @@ -446,7 +446,7 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsMan:: @ 823EEE7 faceplayer message BattleFrontier_BattleTowerLobby_Text_DescribeFeelingsAboutBattleTower waitmessage - multichoice 16, 4, MULTI_BATTLE_TOWER_FEELINGS, 0 + multichoice 16, 4, MULTI_BATTLE_TOWER_FEELINGS, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_FeelingsBattleNow case 1, BattleFrontier_BattleTowerLobby_EventScript_FeelingsIWon @@ -879,7 +879,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink:: @ 823F3E8 BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader:: @ 823F3F3 message CableClub_Text_ChooseGroupLeaderOfTwo waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup case 1, BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader @@ -935,7 +935,7 @@ BattleFrontier_BattleTowerLobby_EventScript_RulesBoard:: @ 823F4BE BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard:: @ 823F4CD message BattleFrontier_BattleTowerLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 2, MULTI_BATTLE_TOWER_RULES, 0 + multichoice 17, 2, MULTI_BATTLE_TOWER_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_BattleTowerLobby_EventScript_RulesTower case 1, BattleFrontier_BattleTowerLobby_EventScript_RulesMons diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc index dfce6d1550fd..0e8f5e8cd0e6 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc @@ -155,7 +155,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: @ 8 call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord - multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, 1 + multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattle @@ -164,7 +164,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: @ 8 case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord:: @ 82491B1 - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskPauseChallenge @@ -174,7 +174,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoReco BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattle:: @ 82491E7 message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RecordBattle @@ -194,7 +194,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskPauseChallenge:: @ 8249 BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge:: @ 8249251 message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost @@ -324,7 +324,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_LinkDelayForMsg:: @ 824941 BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink:: @ 8249417 goto_if_set FLAG_TEMP_2, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNoRecord - multichoice 19, 6, MULTI_GO_ON_RECORD_RETIRE, 1 + multichoice 19, 6, MULTI_GO_ON_RECORD_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink @@ -333,7 +333,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink:: end BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNoRecord:: @ 8249457 - multichoice 20, 8, MULTI_GO_ON_RETIRE, 1 + multichoice 20, 8, MULTI_GO_ON_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink @@ -355,7 +355,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink:: @ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink:: @ 82494A8 message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents @@ -367,7 +367,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink:: @ 82 BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink:: @ 82494DD message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc index 71487225cad0..297514524a2e 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc @@ -86,7 +86,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: @ 8243E7A faceplayer message BattleFrontier_BattleTowerMultiPartnerRoom_Text_QuitLookingForPartner waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner2, MSGBOX_DEFAULT @@ -175,7 +175,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: waitbuttonpress tower_dopartnermsg PARTNER_MSGID_MON2_ASK waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_RejectPartner case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_RejectPartner diff --git a/data/maps/BattleFrontier_Lounge3/scripts.inc b/data/maps/BattleFrontier_Lounge3/scripts.inc index bc85d92d0fd3..d1b8d2024505 100644 --- a/data/maps/BattleFrontier_Lounge3/scripts.inc +++ b/data/maps/BattleFrontier_Lounge3/scripts.inc @@ -34,7 +34,7 @@ BattleFrontier_Lounge3_EventScript_AskToEnterChallenge:: @ 8261DAF end BattleFrontier_Lounge3_EventScript_ChooseBetAmount:: @ 8261DE9 - multichoice 20, 4, MULTI_FRONTIER_GAMBLER_BET, 0 + multichoice 20, 4, MULTI_FRONTIER_GAMBLER_BET, FALSE copyvar VAR_FRONTIER_GAMBLER_AMOUNT_BET, VAR_RESULT switch VAR_RESULT case FRONTIER_GAMBLER_BET_5, BattleFrontier_Lounge3_EventScript_Bet5 diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index 561b4e86a424..9a85593a16ef 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -29,7 +29,7 @@ BattleFrontier_OutsideWest_EventScript_FerryAttendant:: @ 823D3F0 end BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination:: @ 823D416 - multichoicedefault 18, 6, MULTI_SSTIDAL_BATTLE_FRONTIER, 2, 0 + multichoicedefault 18, 6, MULTI_SSTIDAL_BATTLE_FRONTIER, 2, FALSE switch VAR_RESULT case 0, BattleFrontier_OutsideWest_EventScript_FerryToSlateport case 1, BattleFrontier_OutsideWest_EventScript_FerryToLilycove diff --git a/data/maps/BattleFrontier_ReceptionGate/scripts.inc b/data/maps/BattleFrontier_ReceptionGate/scripts.inc index 28f53de08654..904bb5247977 100644 --- a/data/maps/BattleFrontier_ReceptionGate/scripts.inc +++ b/data/maps/BattleFrontier_ReceptionGate/scripts.inc @@ -218,7 +218,7 @@ BattleFrontier_ReceptionGate_EventScript_RulesGuide:: @ 8266436 BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout:: @ 8266446 message BattleFrontier_ReceptionGate_Text_LearnAboutWhat waitmessage - multichoice 15, 0, MULTI_FRONTIER_RULES, 0 + multichoice 15, 0, MULTI_FRONTIER_RULES, FALSE switch VAR_RESULT case 0, BattleFrontier_ReceptionGate_EventScript_LevelMode case 1, BattleFrontier_ReceptionGate_EventScript_Level50 @@ -269,7 +269,7 @@ BattleFrontier_ReceptionGate_EventScript_FrontierPassGuide:: @ 82664F4 BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout:: @ 8266504 message BattleFrontier_ReceptionGate_Text_LearnAboutWhich1 waitmessage - multichoice 16, 4, MULTI_FRONTIER_PASS_INFO, 0 + multichoice 16, 4, MULTI_FRONTIER_PASS_INFO, FALSE switch VAR_RESULT case 0, BattleFrontier_ReceptionGate_EventScript_Symbols case 1, BattleFrontier_ReceptionGate_EventScript_RecordBattle diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc index db267aaaa39a..e9a146f735bc 100644 --- a/data/maps/CaveOfOrigin_B1F/scripts.inc +++ b/data/maps/CaveOfOrigin_B1F/scripts.inc @@ -24,7 +24,7 @@ CaveOfOrigin_B1F_EventScript_Wallace:: @ 82357A9 goto CaveOfOrigin_B1F_EventScript_WheresRayquaza CaveOfOrigin_B1F_EventScript_WheresRayquaza:: @ 82357F0 - multichoice 0, 0, MULTI_WHERES_RAYQUAZA, 0 + multichoice 0, 0, MULTI_WHERES_RAYQUAZA, FALSE switch VAR_RESULT case 0, CaveOfOrigin_B1F_EventScript_AtCaveOfOrigin case 1, CaveOfOrigin_B1F_EventScript_AtMtPyre diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index 27e82167ce79..6298963c2b17 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -24,7 +24,7 @@ DewfordTown_EventScript_Briney:: @ 81E9511 goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, DewfordTown_EventScript_ReturnToPetalburgPrompt message DewfordTown_Text_WhereAreWeBound waitmessage - multichoicedefault 21, 6, MULTI_BRINEY_ON_DEWFORD, 2, 0 + multichoicedefault 21, 6, MULTI_BRINEY_ON_DEWFORD, 2, FALSE switch VAR_RESULT case 0, DewfordTown_EventScript_ChoosePetalburg case 1, DewfordTown_EventScript_ChooseSlateport @@ -109,7 +109,7 @@ DewfordTown_EventScript_NotGettingItchToFish:: @ 81E9620 DewfordTown_EventScript_HowsFishing:: @ 81E962A message DewfordTown_Text_HowsYourFishing waitmessage - multichoice 20, 8, MULTI_HOWS_FISHING, 1 + multichoice 20, 8, MULTI_HOWS_FISHING, TRUE compare VAR_RESULT, 0 goto_if_eq DewfordTown_EventScript_FishingExcellent compare VAR_RESULT, 1 diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index fd1f27860803..83b91ab482c5 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -107,7 +107,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge @@ -123,7 +123,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 8200A78 FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6 message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge case 0, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc index 0a6a4f16cd3a..29fcb43a5e4b 100644 --- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc +++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc @@ -113,7 +113,7 @@ FallarborTown_BattleTentLobby_EventScript_Attendant:: @ 8200001 FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8200021 message FallarborTown_BattleTentLobby_Text_TakeChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge case 1, FallarborTown_BattleTentLobby_EventScript_ExplainChallenge @@ -266,7 +266,7 @@ FallarborTown_BattleTentLobby_EventScript_RulesBoard:: @ 820024F FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 820025E message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 0, MULTI_FALLARBOR_TENT_RULES, 0 + multichoice 17, 0, MULTI_FALLARBOR_TENT_RULES, FALSE switch VAR_RESULT case 0, FallarborTown_BattleTentLobby_EventScript_RulesLevel case 1, FallarborTown_BattleTentLobby_EventScript_RulesBattle diff --git a/data/maps/FortreeCity_House2/scripts.inc b/data/maps/FortreeCity_House2/scripts.inc index 98b8272fe772..394ad9ffc28d 100644 --- a/data/maps/FortreeCity_House2/scripts.inc +++ b/data/maps/FortreeCity_House2/scripts.inc @@ -7,15 +7,15 @@ FortreeCity_House2_EventScript_HiddenPowerGiver:: @ 82177CB goto_if_set FLAG_RECEIVED_TM10, FortreeCity_House2_EventScript_ExplainHiddenPower call_if_unset FLAG_MET_HIDDEN_POWER_GIVER, FortreeCity_House2_EventScript_Greeting msgbox FortreeCity_House2_Text_CoinInWhichHand, MSGBOX_DEFAULT - multichoice 21, 8, MULTI_RIGHTLEFT, 1 + multichoice 21, 8, MULTI_RIGHTLEFT, TRUE switch VAR_RESULT case 1, FortreeCity_House2_EventScript_WrongGuess msgbox FortreeCity_House2_Text_CorrectTryAgainWhichHand, MSGBOX_DEFAULT - multichoice 21, 8, MULTI_RIGHTLEFT, 1 + multichoice 21, 8, MULTI_RIGHTLEFT, TRUE switch VAR_RESULT case 1, FortreeCity_House2_EventScript_WrongGuess msgbox FortreeCity_House2_Text_CorrectTryAgainWhichHand2, MSGBOX_DEFAULT - multichoice 21, 8, MULTI_RIGHTLEFT, 1 + multichoice 21, 8, MULTI_RIGHTLEFT, TRUE switch VAR_RESULT case 0, FortreeCity_House2_EventScript_WrongGuess msgbox FortreeCity_House2_Text_YourHiddenPowerHasAwoken, MSGBOX_DEFAULT diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 3a3b3d86bf1f..300d4dfab2ad 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -638,7 +638,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestReceptionist:: @ 821A806 LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest:: @ 821A819 message LilycoveCity_ContestLobby_Text_EnterContest3 waitmessage - multichoice 0, 0, MULTI_ENTERINFO, 0 + multichoice 0, 0, MULTI_ENTERINFO, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest case 1, LilycoveCity_ContestLobby_EventScript_LinkContestInfo @@ -656,7 +656,7 @@ LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest:: @ 821A856 message LilycoveCity_ContestLobby_Text_WhichContestMode waitmessage specialvar VAR_TEMP_D, IsWirelessAdapterConnected - multichoice 0, 0, MULTI_LINK_CONTEST_MODE, 0 + multichoice 0, 0, MULTI_LINK_CONTEST_MODE, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_EmeraldMode @ Shortened to E-Mode case 1, LilycoveCity_ContestLobby_EventScript_GlobalMode @ Shortened to G-Mode @@ -679,7 +679,7 @@ LilycoveCity_ContestLobby_EventScript_GlobalMode:: @ 821A8C6 LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType:: @ 821A8DC message LilycoveCity_ContestLobby_Text_EnterWhichContest3 waitmessage - multichoice 0, 0, MULTI_CONTEST_TYPE, 0 + multichoice 0, 0, MULTI_CONTEST_TYPE, FALSE switch VAR_RESULT case CONTEST_CATEGORIES_COUNT, LilycoveCity_ContestLobby_EventScript_CancelLinkContest case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelLinkContest @@ -690,7 +690,7 @@ LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType:: @ 821A8DC LilycoveCity_ContestLobby_EventScript_LinkContestInfo:: @ 821A90D message LilycoveCity_ContestLobby_Text_WhichTopic2 waitmessage - multichoice 0, 0, MULTI_LINK_CONTEST_INFO, 0 + multichoice 0, 0, MULTI_LINK_CONTEST_INFO, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_ExplainLinkContest case 1, LilycoveCity_ContestLobby_EventScript_ExplainEMode @@ -885,7 +885,7 @@ LilycoveCity_ContestLobby_EventScript_SetLinkGroupToughContest:: @ 821ABA0 LilycoveCity_ContestLobby_EventScript_DecideLinkLeader:: @ 821ABA6 message LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_TryJoinGroup case 1, LilycoveCity_ContestLobby_EventScript_TryLeadGroup diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc index b7d6e4a49d45..10bd9eee52b7 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc @@ -22,27 +22,27 @@ LilycoveCity_DepartmentStoreElevator_EventScript_Attendant:: @ 8220624 @ Below scripts ensure the cursor for floor select always starts on the current floor LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom5th:: @ 8220689 - multichoicedefault 0, 0, MULTI_FLOORS, 0, 0 + multichoicedefault 0, 0, MULTI_FLOORS, 0, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom4th:: @ 8220695 - multichoicedefault 0, 0, MULTI_FLOORS, 1, 0 + multichoicedefault 0, 0, MULTI_FLOORS, 1, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom3rd:: @ 82206A1 - multichoicedefault 0, 0, MULTI_FLOORS, 2, 0 + multichoicedefault 0, 0, MULTI_FLOORS, 2, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom2nd:: @ 82206AD - multichoicedefault 0, 0, MULTI_FLOORS, 3, 0 + multichoicedefault 0, 0, MULTI_FLOORS, 3, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom1st:: @ 82206B9 - multichoicedefault 0, 0, MULTI_FLOORS, 4, 0 + multichoicedefault 0, 0, MULTI_FLOORS, 4, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index 8d7459b3c3d5..68771a2ddfd3 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -76,7 +76,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_VendingMachine:: @ 8220295 end LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink:: @ 82202A6 - multichoice 16, 0, MULTI_VENDING_MACHINE, 0 + multichoice 16, 0, MULTI_VENDING_MACHINE, FALSE copyvar VAR_TEMP_1, VAR_RESULT switch VAR_TEMP_1 case 0, LilycoveCity_DepartmentStoreRooftop_EventScript_FreshWater diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc index 624e304c830d..ded9ed53d8ec 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc @@ -13,7 +13,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Curator:: @ 8218CC2 applymovement LOCALID_CURATOR, Common_Movement_FacePlayer message LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings waitmessage - multichoice 20, 8, MULTI_VIEWED_PAINTINGS, 1 + multichoice 20, 8, MULTI_VIEWED_PAINTINGS, TRUE compare VAR_RESULT, 0 goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings compare VAR_RESULT, 1 diff --git a/data/maps/MauvilleCity_BikeShop/scripts.inc b/data/maps/MauvilleCity_BikeShop/scripts.inc index ffde9583b62c..6832554e44b7 100644 --- a/data/maps/MauvilleCity_BikeShop/scripts.inc +++ b/data/maps/MauvilleCity_BikeShop/scripts.inc @@ -25,7 +25,7 @@ MauvilleCity_BikeShop_EventScript_SkipGreeting:: @ 820EBF7 MauvilleCity_BikeShop_EventScript_ChooseBike:: @ 820EC16 message MauvilleCity_BikeShop_Text_ExplainBikesChooseWhichOne waitmessage - multichoice 21, 8, MULTI_BIKE, 1 + multichoice 21, 8, MULTI_BIKE, TRUE switch VAR_RESULT case 0, MauvilleCity_BikeShop_EventScript_GetMachBike case 1, MauvilleCity_BikeShop_EventScript_GetAcroBike @@ -113,7 +113,7 @@ MauvilleCity_BikeShop_EventScript_MachBikeHandbook:: @ 820ED3A end MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage:: @ 820ED46 - multichoice 0, 0, MULTI_MACH_BIKE_INFO, 0 + multichoice 0, 0, MULTI_MACH_BIKE_INFO, FALSE switch VAR_RESULT case 0, MauvilleCity_BikeShop_EventScript_HowToRide case 1, MauvilleCity_BikeShop_EventScript_HowToTurn @@ -151,7 +151,7 @@ MauvilleCity_BikeShop_EventScript_AcroBikeHandbook:: @ 820EDAE end MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage:: @ 820EDBA - multichoice 0, 0, MULTI_ACRO_BIKE_INFO, 0 + multichoice 0, 0, MULTI_ACRO_BIKE_INFO, FALSE switch VAR_RESULT case 0, MauvilleCity_BikeShop_EventScript_Wheelies case 1, MauvilleCity_BikeShop_EventScript_BunnyHops diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc index ad3f7a407fec..f8cf2ea1816a 100644 --- a/data/maps/MauvilleCity_GameCorner/scripts.inc +++ b/data/maps/MauvilleCity_GameCorner/scripts.inc @@ -26,7 +26,7 @@ MauvilleCity_GameCorner_EventScript_CoinsClerk:: @ 820FBB9 goto MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50 MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50:: @ 820FBE5 - multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 0, 0 + multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 0, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_Buy50Coins case 1, MauvilleCity_GameCorner_EventScript_Buy500Coins @@ -35,7 +35,7 @@ MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50:: @ 820FBE5 @ Unused MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault500:: @ 820FC0C - multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 1, 0 + multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 1, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_Buy50Coins case 1, MauvilleCity_GameCorner_EventScript_Buy500Coins @@ -127,7 +127,7 @@ MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize:: @ 820FD20 goto MauvilleCity_GameCorner_EventScript_ChooseDollPrize MauvilleCity_GameCorner_EventScript_ChooseDollPrize:: @ 820FD2B - multichoice 12, 0, MULTI_GAME_CORNER_DOLLS, 0 + multichoice 12, 0, MULTI_GAME_CORNER_DOLLS, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_TreeckoDoll case 1, MauvilleCity_GameCorner_EventScript_TorchicDoll @@ -248,7 +248,7 @@ MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize:: @ 820FECE goto MauvilleCity_GameCorner_EventScript_ChooseTMPrize MauvilleCity_GameCorner_EventScript_ChooseTMPrize:: @ 820FED9 - multichoice 12, 0, MULTI_GAME_CORNER_TMS, 0 + multichoice 12, 0, MULTI_GAME_CORNER_TMS, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_TM32 case 1, MauvilleCity_GameCorner_EventScript_TM29 diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc index aef3ae80fea8..186254d92bda 100644 --- a/data/maps/Route104_MrBrineysHouse/scripts.inc +++ b/data/maps/Route104_MrBrineysHouse/scripts.inc @@ -44,7 +44,7 @@ Route104_MrBrineysHouse_EventScript_SailingIntro:: @ 8229D8A Route104_MrBrineysHouse_EventScript_WhereAreWeBound:: @ 8229DAE message Route104_MrBrineysHouse_Text_WhereAreWeBound waitmessage - multichoicedefault 20, 8, MULTI_BRINEY_OFF_DEWFORD, 1, 0 + multichoicedefault 20, 8, MULTI_BRINEY_OFF_DEWFORD, 1, FALSE switch VAR_RESULT case 0, Route104_MrBrineysHouse_EventScript_SailToDewford case 1, Route104_MrBrineysHouse_EventScript_DeclineSailing diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index 26da7f2b59f8..a88e8645914b 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -290,7 +290,7 @@ Route109_EventScript_HaveNotDeliveredDevonGood:: @ 81EE921 Route109_EventScript_DeliveredDevonGoods:: @ 81EE93F message Route109_Text_BrineyWhereAreWeBound waitmessage - multichoicedefault 21, 8, MULTI_BRINEY_OFF_DEWFORD, 1, 0 + multichoicedefault 21, 8, MULTI_BRINEY_OFF_DEWFORD, 1, FALSE switch VAR_RESULT case 0, Route109_EventScript_SailToDewford case 1, Route109_EventScript_ChoseNotToSail diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc index 0852b4e334d2..8e1ffdeb2078 100644 --- a/data/maps/Route110_TrickHouseEnd/scripts.inc +++ b/data/maps/Route110_TrickHouseEnd/scripts.inc @@ -178,7 +178,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: @ 826AF28 end Route110_TrickHouseEnd_EventScript_ChooseTent:: @ 826AFA5 - multichoice 0, 0, MULTI_TENT, 1 + multichoice 0, 0, MULTI_TENT, TRUE switch VAR_RESULT case 0, Route110_TrickHouseEnd_EventScript_GiveRedTent goto Route110_TrickHouseEnd_EventScript_GiveBlueTent diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index adfcf6bbc453..4df752dc1697 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -460,7 +460,7 @@ Route110_TrickHouseEntrance_EventScript_MechadollReward:: @ 826A039 end Route110_TrickHouseEntrance_EventScript_ChooseTent:: @ 826A070 - multichoice 0, 0, MULTI_TENT, 1 + multichoice 0, 0, MULTI_TENT, TRUE switch VAR_RESULT case 0, Route110_TrickHouseEntrance_EventScript_GiveRedTent goto Route110_TrickHouseEntrance_EventScript_GiveBlueTent diff --git a/data/maps/Route110_TrickHousePuzzle5/scripts.inc b/data/maps/Route110_TrickHousePuzzle5/scripts.inc index 36162f42f719..9c66a2c8f905 100644 --- a/data/maps/Route110_TrickHousePuzzle5/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle5/scripts.inc @@ -334,7 +334,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate:: @ 826CEF2 Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz1:: @ 826CF45 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz1, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL1_Q1, 1 + multichoice 0, 0, MULTI_MECHADOLL1_Q1, TRUE switch VAR_RESULT case 2, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -342,7 +342,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz1:: @ 826CF45 Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz2:: @ 826CF68 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz2, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL1_Q2, 1 + multichoice 0, 0, MULTI_MECHADOLL1_Q2, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -350,7 +350,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz2:: @ 826CF68 Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3:: @ 826CF8B msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz3, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL1_Q3, 1 + multichoice 0, 0, MULTI_MECHADOLL1_Q3, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -358,7 +358,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3:: @ 826CF8B Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz1:: @ 826CFAE msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz1, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL2_Q1, 1 + multichoice 0, 0, MULTI_MECHADOLL2_Q1, TRUE switch VAR_RESULT case 1, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -366,7 +366,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz1:: @ 826CFAE Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz2:: @ 826CFD1 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz2, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL2_Q2, 1 + multichoice 0, 0, MULTI_MECHADOLL2_Q2, TRUE switch VAR_RESULT case 2, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -374,7 +374,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz2:: @ 826CFD1 Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3:: @ 826CFF4 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz3, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL2_Q3, 1 + multichoice 0, 0, MULTI_MECHADOLL2_Q3, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -382,7 +382,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3:: @ 826CFF4 Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz1:: @ 826D017 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz1, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL3_Q1, 1 + multichoice 0, 0, MULTI_MECHADOLL3_Q1, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -390,7 +390,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz1:: @ 826D017 Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz2:: @ 826D03A msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz2, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL3_Q2, 1 + multichoice 0, 0, MULTI_MECHADOLL3_Q2, TRUE switch VAR_RESULT case 2, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -398,7 +398,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz2:: @ 826D03A Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3:: @ 826D05D msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz3, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL3_Q3, 1 + multichoice 0, 0, MULTI_MECHADOLL3_Q3, TRUE switch VAR_RESULT case 1, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -406,7 +406,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3:: @ 826D05D Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz1:: @ 826D080 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz1, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL4_Q1, 1 + multichoice 0, 0, MULTI_MECHADOLL4_Q1, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -414,7 +414,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz1:: @ 826D080 Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz2:: @ 826D0A3 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz2, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL4_Q2, 1 + multichoice 0, 0, MULTI_MECHADOLL4_Q2, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -422,7 +422,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz2:: @ 826D0A3 Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3:: @ 826D0C6 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz3, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL4_Q3, 1 + multichoice 0, 0, MULTI_MECHADOLL4_Q3, TRUE switch VAR_RESULT case 1, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -430,7 +430,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3:: @ 826D0C6 Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz1:: @ 826D0E9 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz1, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL5_Q1, 1 + multichoice 0, 0, MULTI_MECHADOLL5_Q1, TRUE switch VAR_RESULT case 1, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -438,7 +438,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz1:: @ 826D0E9 Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz2:: @ 826D10C msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz2, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL5_Q2, 1 + multichoice 0, 0, MULTI_MECHADOLL5_Q2, TRUE switch VAR_RESULT case 0, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer @@ -446,7 +446,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz2:: @ 826D10C Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz3:: @ 826D12F msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz3, MSGBOX_DEFAULT - multichoice 0, 0, MULTI_MECHADOLL5_Q3, 1 + multichoice 0, 0, MULTI_MECHADOLL5_Q3, TRUE switch VAR_RESULT case 2, Route110_TrickHousePuzzle5_EventScript_CorrectAnswer goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc index c5d43799d91a..acf53c1edae4 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc +++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc @@ -86,7 +86,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions:: @ 8270ADE end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsR:: @ 8270B8F - multichoice 0, 0, MULTI_SHARDS_R, 0 + multichoice 0, 0, MULTI_SHARDS_R, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade @@ -94,7 +94,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsR:: @ 8270B8F end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsY:: @ 8270BB5 - multichoice 0, 0, MULTI_SHARDS_Y, 0 + multichoice 0, 0, MULTI_SHARDS_Y, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade @@ -102,7 +102,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsY:: @ 8270BB5 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRY:: @ 8270BDB - multichoice 0, 0, MULTI_SHARDS_RY, 0 + multichoice 0, 0, MULTI_SHARDS_RY, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -111,7 +111,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRY:: @ 8270BDB end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsB:: @ 8270C0C - multichoice 0, 0, MULTI_SHARDS_B, 0 + multichoice 0, 0, MULTI_SHARDS_B, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade @@ -119,7 +119,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsB:: @ 8270C0C end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRB:: @ 8270C32 - multichoice 0, 0, MULTI_SHARDS_RB, 0 + multichoice 0, 0, MULTI_SHARDS_RB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -128,7 +128,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRB:: @ 8270C32 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYB:: @ 8270C63 - multichoice 0, 0, MULTI_SHARDS_YB, 0 + multichoice 0, 0, MULTI_SHARDS_YB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -137,7 +137,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYB:: @ 8270C63 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYB:: @ 8270C94 - multichoice 0, 0, MULTI_SHARDS_RYB, 0 + multichoice 0, 0, MULTI_SHARDS_RYB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -147,7 +147,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYB:: @ 8270C94 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsG:: @ 8270CD0 - multichoice 0, 0, MULTI_SHARDS_G, 0 + multichoice 0, 0, MULTI_SHARDS_G, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade @@ -155,7 +155,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsG:: @ 8270CD0 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRG:: @ 8270CF6 - multichoice 0, 0, MULTI_SHARDS_RG, 0 + multichoice 0, 0, MULTI_SHARDS_RG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard @@ -164,7 +164,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRG:: @ 8270CF6 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYG:: @ 8270D27 - multichoice 0, 0, MULTI_SHARDS_YG, 0 + multichoice 0, 0, MULTI_SHARDS_YG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard @@ -173,7 +173,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYG:: @ 8270D27 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYG:: @ 8270D58 - multichoice 0, 0, MULTI_SHARDS_RYG, 0 + multichoice 0, 0, MULTI_SHARDS_RYG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -183,7 +183,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYG:: @ 8270D58 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsBG:: @ 8270D94 - multichoice 0, 0, MULTI_SHARDS_BG, 0 + multichoice 0, 0, MULTI_SHARDS_BG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard @@ -192,7 +192,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsBG:: @ 8270D94 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRBG:: @ 8270DC5 - multichoice 0, 0, MULTI_SHARDS_RBG, 0 + multichoice 0, 0, MULTI_SHARDS_RBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -202,7 +202,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRBG:: @ 8270DC5 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYBG:: @ 8270E01 - multichoice 0, 0, MULTI_SHARDS_YBG, 0 + multichoice 0, 0, MULTI_SHARDS_YBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -212,7 +212,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYBG:: @ 8270E01 end Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYBG:: @ 8270E3D - multichoice 0, 0, MULTI_SHARDS_RYBG, 0 + multichoice 0, 0, MULTI_SHARDS_RYBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard case 1, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index eb22fcc43ad9..03396cc8fb15 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -259,7 +259,7 @@ RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith:: @ 8211B7A RustboroCity_DevonCorp_2F_EventScript_ChooseFossil:: @ 8211B84 message RustboroCity_DevonCorp_2F_Text_TwoFossilsPickOne waitmessage - multichoice 17, 6, MULTI_FOSSIL, 0 + multichoice 17, 6, MULTI_FOSSIL, FALSE switch VAR_RESULT case 0, RustboroCity_DevonCorp_2F_EventScript_ChooseClawFossil case 1, RustboroCity_DevonCorp_2F_EventScript_ChooseRootFossil diff --git a/data/maps/RustboroCity_PokemonSchool/scripts.inc b/data/maps/RustboroCity_PokemonSchool/scripts.inc index 6e5bf0fcedc4..29c37fe49504 100644 --- a/data/maps/RustboroCity_PokemonSchool/scripts.inc +++ b/data/maps/RustboroCity_PokemonSchool/scripts.inc @@ -10,7 +10,7 @@ RustboroCity_PokemonSchool_EventScript_Blackboard:: @ 8213EA9 RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic:: @ 8213EB8 message RustboroCity_PokemonSchool_Text_ReadWhichTopic waitmessage - multichoicegrid 8, 1, MULTI_STATUS_INFO, 3, 0 + multichoicegrid 8, 1, MULTI_STATUS_INFO, 3, FALSE switch VAR_RESULT case 0, RustboroCity_PokemonSchool_EventScript_Poison case 1, RustboroCity_PokemonSchool_EventScript_Paralysis diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index c018f54b9dfd..b04b03b99b61 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -69,7 +69,7 @@ SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: @ 8208F0D call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, SlateportCity_BattleTentCorridor_EventScript_AskSwapMon case 1, SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge @@ -85,7 +85,7 @@ SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge:: @ 8208F5B SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: @ 8208F89 message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent case 0, SlateportCity_BattleTent_EventScript_WarpToLobbyLost diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc index bdc8eb05f994..07758d42d406 100644 --- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc +++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc @@ -100,7 +100,7 @@ SlateportCity_BattleTentLobby_EventScript_Attendant:: @ 82088AA SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @ 82088CA message SlateportCity_BattleTentLobby_Text_TakeChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge case 1, SlateportCity_BattleTentLobby_EventScript_ExplainChallenge @@ -237,7 +237,7 @@ SlateportCity_BattleTentLobby_EventScript_RulesBoard:: @ 8208A99 SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8208AA8 message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading waitmessage - multichoice 17, 0, MULTI_SLATEPORT_TENT_RULES, 0 + multichoice 17, 0, MULTI_SLATEPORT_TENT_RULES, FALSE switch VAR_RESULT case 0, SlateportCity_BattleTentLobby_EventScript_RulesBasics case 1, SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index 41a224f75d77..276ee32f8d13 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -182,7 +182,7 @@ SlateportCity_Harbor_EventScript_AskForTicket:: @ 820CB06 SlateportCity_Harbor_EventScript_ChooseDestination:: @ 820CB1A goto_if_set FLAG_MET_SCOTT_ON_SS_TIDAL, SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier - multichoicedefault 18, 8, MULTI_SSTIDAL_SLATEPORT_NO_BF, 2, 0 + multichoicedefault 18, 8, MULTI_SSTIDAL_SLATEPORT_NO_BF, 2, FALSE switch VAR_RESULT case 0, SlateportCity_Harbor_EventScript_Lilycove case 1, SlateportCity_Harbor_EventScript_CancelDestinationSelect @@ -190,7 +190,7 @@ SlateportCity_Harbor_EventScript_ChooseDestination:: @ 820CB1A end SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier:: @ 820CB50 - multichoicedefault 17, 6, MULTI_SSTIDAL_SLATEPORT_WITH_BF, 2, 0 + multichoicedefault 17, 6, MULTI_SSTIDAL_SLATEPORT_WITH_BF, 2, FALSE switch VAR_RESULT case 0, SlateportCity_Harbor_EventScript_Lilycove case 1, SlateportCity_Harbor_EventScript_BattleFrontier @@ -352,7 +352,7 @@ SlateportCity_Harbor_EventScript_AskToTradeScanner:: @ 820CD38 end SlateportCity_Harbor_EventScript_ChooseScannerTrade:: @ 820CD44 - multichoice 0, 0, MULTI_STERN_DEEPSEA, 0 + multichoice 0, 0, MULTI_STERN_DEEPSEA, FALSE switch VAR_RESULT case 0, SlateportCity_Harbor_EventScript_DeepSeaTooth case 1, SlateportCity_Harbor_EventScript_DeepSeaScale diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index b5b0f716ca54..7f8178d007d2 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -145,7 +145,7 @@ TrainerHill_Entrance_EventScript_AllFloorsUsed:: @ 8268275 TrainerHill_Entrance_EventScript_AskChallengeTrainers:: @ 826827D message TrainerHill_Entrance_Text_LikeToChallengeTrainers waitmessage - multichoice 15, 6, MULTI_YESNOINFO, 0 + multichoice 15, 6, MULTI_YESNOINFO, FALSE switch VAR_RESULT case 0, TrainerHill_Entrance_EventScript_ChooseChallenge case 1, TrainerHill_Entrance_EventScript_CancelEntry @@ -159,7 +159,7 @@ TrainerHill_Entrance_EventScript_Info:: @ 82682BA end TrainerHill_Entrance_EventScript_ChooseChallenge:: @ 82682C8 - multichoice 13, 2, MULTI_TAG_MATCH_TYPE, 0 + multichoice 13, 2, MULTI_TAG_MATCH_TYPE, FALSE switch VAR_RESULT case 4, TrainerHill_Entrance_EventScript_CancelEntry case MULTI_B_PRESSED, TrainerHill_Entrance_EventScript_CancelEntry diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index ad77cdf5fc30..f917db9ed442 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -88,7 +88,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 820243C call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent compare VAR_RESULT, 2 call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent - multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1 + multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge @@ -104,7 +104,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 820248A VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 82024B8 message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge waitmessage - multichoicedefault 20, 8, MULTI_YESNO, 1, 0 + multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE switch VAR_RESULT case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc index f7a03b1ec994..ff2e6b12402b 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc @@ -114,7 +114,7 @@ VerdanturfTown_BattleTentLobby_EventScript_Attendant:: @ 8201873 VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8201893 message VerdanturfTown_BattleTentLobby_Text_TakeChallenge waitmessage - multichoice 17, 6, MULTI_CHALLENGEINFO, 0 + multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT case 0, VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge case 1, VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index 7ad8e9e3ae30..d8dbe80bdfd0 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -711,7 +711,7 @@ BerryBlender_EventScript_StartDecideLinkLeader: @ 82941ED BerryBlender_EventScript_DecideLinkLeader: @ 82941F8 message LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, BerryBlender_EventScript_TryJoinGroup case 1, BerryBlender_EventScript_TryLeadGroup diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index b81fbb4d54de..189a97b256ed 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -277,7 +277,7 @@ CableClub_EventScript_UnusedWelcomeToCableClub:: @ 8276E22 CableClub_EventScript_SelectCableClubRoom:: @ 8276E30 setvar VAR_0x8004, 0 goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_CableClubUnlockedRecordCorner - multichoice 0, 0, MULTI_CABLE_CLUB_NO_RECORD_MIX, 0 + multichoice 0, 0, MULTI_CABLE_CLUB_NO_RECORD_MIX, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TradeCenter case 1, CableClub_EventScript_Colosseum @@ -286,7 +286,7 @@ CableClub_EventScript_SelectCableClubRoom:: @ 8276E30 end CableClub_EventScript_CableClubUnlockedRecordCorner:: @ 8276E75 - multichoice 0, 0, MULTI_CABLE_CLUB_WITH_RECORD_MIX, 0 + multichoice 0, 0, MULTI_CABLE_CLUB_WITH_RECORD_MIX, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TradeCenter case 1, CableClub_EventScript_Colosseum @@ -303,7 +303,7 @@ CableClub_EventScript_Colosseum:: @ 8276EB7 CableClub_EventScript_SelectBattleMode:: @ 8276EC2 message CableClub_Text_PlayWhichBattleMode waitmessage - multichoice 0, 0, MULTI_BATTLE_MODE, 0 + multichoice 0, 0, MULTI_BATTLE_MODE, FALSE switch VAR_RESULT case 0, CableClub_EventScript_SingleBattleMode case 1, CableClub_EventScript_DoubleBattleMode @@ -927,7 +927,7 @@ CableClub_EventScript_UnionRoomAttendant:: @ 827751B end CableClub_EventScript_UnionRoomSelect:: @ 827755C - multichoice 17, 6, MULTI_YESNOINFO, 0 + multichoice 17, 6, MULTI_YESNOINFO, FALSE switch VAR_RESULT case 0, CableClub_EventScript_EnterUnionRoom case 1, CableClub_EventScript_AbortLink @@ -1039,7 +1039,7 @@ CableClub_EventScript_DirectCornerSelectService:: @ 82776E3 compare VAR_RESULT, FALSE goto_if_eq CableClub_EventScript_DirectCornerNoBerry goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_DirectCornerSelectAllServices - multichoice 0, 0, MULTI_WIRELESS_NO_RECORD, 0 + multichoice 0, 0, MULTI_WIRELESS_NO_RECORD, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade case 1, CableClub_EventScript_WirelessBattleSelect @@ -1049,7 +1049,7 @@ CableClub_EventScript_DirectCornerSelectService:: @ 82776E3 end CableClub_EventScript_DirectCornerSelectAllServices:: @ 827773E - multichoice 0, 0, MULTI_WIRELESS_ALL_SERVICES, 0 + multichoice 0, 0, MULTI_WIRELESS_ALL_SERVICES, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade case 1, CableClub_EventScript_WirelessBattleSelect @@ -1061,7 +1061,7 @@ CableClub_EventScript_DirectCornerSelectAllServices:: @ 827773E CableClub_EventScript_DirectCornerNoBerry:: @ 827778B goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_DirectCornerHasRecordMix - multichoice 0, 0, MULTI_WIRELESS_NO_RECORD_BERRY, 0 + multichoice 0, 0, MULTI_WIRELESS_NO_RECORD_BERRY, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade case 1, CableClub_EventScript_WirelessBattleSelect @@ -1070,7 +1070,7 @@ CableClub_EventScript_DirectCornerNoBerry:: @ 827778B end CableClub_EventScript_DirectCornerHasRecordMix:: @ 82777CB - multichoice 0, 0, MULTI_WIRELESS_NO_BERRY, 0 + multichoice 0, 0, MULTI_WIRELESS_NO_BERRY, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade case 1, CableClub_EventScript_WirelessBattleSelect @@ -1093,7 +1093,7 @@ CableClub_EventScript_WirelessTrade:: @ 827780D CableClub_EventScript_WirelessBattleSelect:: @ 827783B message CableClub_Text_PlayWhichBattleMode waitmessage - multichoice 0, 0, MULTI_BATTLE_MODE, 0 + multichoice 0, 0, MULTI_BATTLE_MODE, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessSingleBattle case 1, CableClub_EventScript_WirelessDoubleBattle @@ -1171,7 +1171,7 @@ CableClub_EventScript_SaveAndChooseLinkLeader:: @ 8277931 CableClub_EventScript_ChooseLinkLeaderFrom2:: @ 8277989 message CableClub_Text_ChooseGroupLeaderOfTwo waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TryJoinGroup2Players case 1, CableClub_EventScript_TryLeadGroup2Players @@ -1204,7 +1204,7 @@ CableClub_EventScript_TryJoinGroup2Players:: @ 82779EE CableClub_EventScript_ChooseLinkLeaderFrom4:: @ 8277A16 message CableClub_Text_ChooseGroupLeaderOfFour waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TryJoinGroup4Players case 1, CableClub_EventScript_TryLeadGroup4Players @@ -1237,7 +1237,7 @@ CableClub_EventScript_TryJoinGroup4Players:: @ 8277A7B CableClub_EventScript_ChooseLinkLeader:: @ 8277AA3 message CableClub_Text_ChooseGroupLeader waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TryJoinGroupXPlayers case 1, CableClub_EventScript_TryLeadGroupXPlayers @@ -1360,7 +1360,7 @@ MossdeepCity_GameCorner_1F_EventScript_InfoMan2:: @ 8277C34 faceplayer message MossdeepCity_GameCorner_1F_Text_DescribeWhichGame waitmessage - multichoice 0, 0, MULTI_WIRELESS_MINIGAME, 0 + multichoice 0, 0, MULTI_WIRELESS_MINIGAME, FALSE switch VAR_RESULT case 0, MossdeepCity_GameCorner_1F_EventScript_PokemonJumpInfo case 1, MossdeepCity_GameCorner_1F_EventScript_DodrioBerryPickingInfo @@ -1394,7 +1394,7 @@ MossdeepCity_GameCorner_1F_EventScript_OldMan2:: @ 8277C91 delay 60 message MossdeepCity_GameCorner_1F_Text_PlayWhichGame waitmessage - multichoice 0, 0, MULTI_WIRELESS_MINIGAME, 0 + multichoice 0, 0, MULTI_WIRELESS_MINIGAME, FALSE switch VAR_RESULT case 0, MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump case 1, MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking @@ -1443,7 +1443,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: @ 8277D35 MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader:: @ 8277D81 message CableClub_Text_ChooseGroupLeader waitmessage - multichoice 16, 6, MULTI_LINK_LEADER, 0 + multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup case 1, MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 1ef723c375bb..51be0027cb7d 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -60,7 +60,7 @@ LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter:: @ 8279D4B LilycoveCity_ContestLobby_EventScript_AskEnterContest:: @ 8279D5A message LilycoveCity_ContestLobby_Text_EnterContest1 waitmessage - multichoice 0, 0, MULTI_ENTERINFO, 0 + multichoice 0, 0, MULTI_ENTERINFO, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_ChooseContestRank case 1, LilycoveCity_ContestLobby_EventScript_ContestInfo @@ -71,7 +71,7 @@ LilycoveCity_ContestLobby_EventScript_AskEnterContest:: @ 8279D5A LilycoveCity_ContestLobby_EventScript_ContestInfo:: @ 8279D97 message LilycoveCity_ContestLobby_Text_WhichTopic1 waitmessage - multichoice 0, 0, MULTI_CONTEST_INFO, 0 + multichoice 0, 0, MULTI_CONTEST_INFO, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_ExplainContests case 1, LilycoveCity_ContestLobby_EventScript_ExplainContestTypes @@ -121,7 +121,7 @@ LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: @ 8279E13 LilycoveCity_ContestLobby_EventScript_ChooseContestRank:: @ 8279E62 message LilycoveCity_ContestLobby_Text_EnterWhichRank waitmessage - multichoice 0, 0, MULTI_CONTEST_RANK, 0 + multichoice 0, 0, MULTI_CONTEST_RANK, FALSE switch VAR_RESULT case 0, LilycoveCity_ContestLobby_EventScript_EnterNormalRank case 1, LilycoveCity_ContestLobby_EventScript_EnterSuperRank @@ -156,7 +156,7 @@ LilycoveCity_ContestLobby_EventScript_EnterMasterRank:: @ 8279ED6 LilycoveCity_ContestLobby_EventScript_ChooseContestType:: @ 8279EE1 message LilycoveCity_ContestLobby_Text_EnterWhichContest1 waitmessage - multichoice 0, 0, MULTI_CONTEST_TYPE, 0 + multichoice 0, 0, MULTI_CONTEST_TYPE, FALSE switch VAR_RESULT case 5, LilycoveCity_ContestLobby_EventScript_CancelEnterContest case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelEnterContest diff --git a/data/scripts/interview.inc b/data/scripts/interview.inc index 9921aa6031c9..2d1c081967d8 100644 --- a/data/scripts/interview.inc +++ b/data/scripts/interview.inc @@ -278,7 +278,7 @@ BattleFrontier_BattleTowerLobby_EventScript_Reporter:: @ 828CB96 BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: @ 828CBD8 message BattleFrontier_BattleTowerLobby_Text_HowDidBattleTowerTurnOut waitmessage - multichoice 20, 8, MULTI_SATISFACTION, 1 + multichoice 20, 8, MULTI_SATISFACTION, TRUE copyvar VAR_0x8008, VAR_RESULT compare VAR_RESULT, 0 call_if_eq BattleFrontier_BattleTowerLobby_EventScript_Satisfied diff --git a/data/scripts/mystery_event_club.inc b/data/scripts/mystery_event_club.inc index 16e9a657f27e..77d24adf6b5b 100644 --- a/data/scripts/mystery_event_club.inc +++ b/data/scripts/mystery_event_club.inc @@ -8,7 +8,7 @@ MysteryEventClub_EventScript_Man:: @ 8291539 MysteryEventClub_EventScript_AskToSeeProfile:: @ 8291552 msgbox MysteryEventClub_Text_MayISeeYourProfile, MSGBOX_DEFAULT - multichoice 17, 6, MULTI_YESNOINFO_2, 0 + multichoice 17, 6, MULTI_YESNOINFO_2, FALSE switch VAR_RESULT case 0, MysteryEventClub_EventScript_CreateProfile case 1, MysteryEventClub_EventScript_DeclineShowProfile @@ -60,7 +60,7 @@ MysteryEventClub_EventScript_GivenProfileBefore:: @ 82915F5 MysteryEventClub_EventScript_AskToSeeNewProfile:: @ 8291603 msgbox MysteryEventClub_Text_MayISeeYourNewProfile, MSGBOX_DEFAULT - multichoice 17, 6, MULTI_YESNOINFO_2, 0 + multichoice 17, 6, MULTI_YESNOINFO_2, FALSE switch VAR_RESULT case 0, MysteryEventClub_EventScript_CreateNewProfile case 1, MysteryEventClub_EventScript_DeclineNewProfile diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index 684b27e71e45..03b8eaf998b1 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -501,7 +501,7 @@ PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: @ 8292AF2 compare VAR_0x8008, FEMALE call_if_eq PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale msgbox PlayersHouse_1F_Text_WhatColorDidTheySay, MSGBOX_DEFAULT - multichoice 22, 8, MULTI_TV_LATI, 1 + multichoice 22, 8, MULTI_TV_LATI, TRUE copyvar VAR_0x8004, VAR_RESULT special InitRoamer copyvar VAR_ROAMER_POKEMON, VAR_RESULT diff --git a/data/scripts/shared_secret_base.inc b/data/scripts/shared_secret_base.inc index 0fa61a214eeb..9e175987223e 100644 --- a/data/scripts/shared_secret_base.inc +++ b/data/scripts/shared_secret_base.inc @@ -48,7 +48,7 @@ SecretBase_EventScript_PCCancel:: @ 823B4E8 end SecretBase_EventScript_PCMainMenuWithRegister:: @ 823B4EF - multichoice 0, 0, MULTI_BASE_PC_WITH_REGISTRY, 0 + multichoice 0, 0, MULTI_BASE_PC_WITH_REGISTRY, FALSE switch VAR_RESULT case 0, SecretBase_EventScript_PCDecorationMenu case 1, SecretBase_EventScript_PCPackUp @@ -58,7 +58,7 @@ SecretBase_EventScript_PCMainMenuWithRegister:: @ 823B4EF end SecretBase_EventScript_PCMainMenuWithoutRegister:: @ 823B531 - multichoice 0, 0, MULTI_BASE_PC_NO_REGISTRY, 0 + multichoice 0, 0, MULTI_BASE_PC_NO_REGISTRY, FALSE switch VAR_RESULT case 0, SecretBase_EventScript_PCDecorationMenu case 1, SecretBase_EventScript_PCPackUp @@ -98,7 +98,7 @@ SecretBase_EventScript_RecordMixingPC:: @ 823B589 SecretBase_EventScript_PCRegisterMenu:: @ 823B5A1 message SecretBase_Text_WhatWouldYouLikeToDo waitmessage - multichoice 0, 0, MULTI_REGISTER_MENU, 0 + multichoice 0, 0, MULTI_REGISTER_MENU, FALSE switch VAR_RESULT case 0, SecretBase_EventScript_PCRegister case 1, SecretBase_EventScript_PCRegistryMenu diff --git a/src/scrcmd.c b/src/scrcmd.c index 7caaa194bce6..7dc02b6a8f0f 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1358,7 +1358,7 @@ bool8 ScrCmd_multichoice(struct ScriptContext *ctx) u8 left = ScriptReadByte(ctx); u8 top = ScriptReadByte(ctx); u8 multichoiceId = ScriptReadByte(ctx); - u8 ignoreBPress = ScriptReadByte(ctx); + bool8 ignoreBPress = ScriptReadByte(ctx); if (ScriptMenu_Multichoice(left, top, multichoiceId, ignoreBPress) == TRUE) { @@ -1377,7 +1377,7 @@ bool8 ScrCmd_multichoicedefault(struct ScriptContext *ctx) u8 top = ScriptReadByte(ctx); u8 multichoiceId = ScriptReadByte(ctx); u8 defaultChoice = ScriptReadByte(ctx); - u8 ignoreBPress = ScriptReadByte(ctx); + bool8 ignoreBPress = ScriptReadByte(ctx); if (ScriptMenu_MultichoiceWithDefault(left, top, multichoiceId, ignoreBPress, defaultChoice) == TRUE) { @@ -1407,7 +1407,7 @@ bool8 ScrCmd_multichoicegrid(struct ScriptContext *ctx) u8 top = ScriptReadByte(ctx); u8 multichoiceId = ScriptReadByte(ctx); u8 numColumns = ScriptReadByte(ctx); - u8 ignoreBPress = ScriptReadByte(ctx); + bool8 ignoreBPress = ScriptReadByte(ctx); if (ScriptMenu_MultichoiceGrid(left, top, multichoiceId, ignoreBPress, numColumns) == TRUE) { @@ -1427,7 +1427,7 @@ bool8 ScrCmd_erasebox(struct ScriptContext *ctx) u8 right = ScriptReadByte(ctx); u8 bottom = ScriptReadByte(ctx); - // MenuZeroFillWindowRect(left, top, right, bottom); + // Menu_EraseWindowRect(left, top, right, bottom); return FALSE; } @@ -1436,7 +1436,7 @@ bool8 ScrCmd_drawboxtext(struct ScriptContext *ctx) u8 left = ScriptReadByte(ctx); u8 top = ScriptReadByte(ctx); u8 multichoiceId = ScriptReadByte(ctx); - u8 ignoreBPress = ScriptReadByte(ctx); + bool8 ignoreBPress = ScriptReadByte(ctx); /*if (Multichoice(left, top, multichoiceId, ignoreBPress) == TRUE) { From 86856098a35b58eabb74db1d41cb9a2853c6746f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 31 Mar 2021 15:53:01 -0400 Subject: [PATCH 070/762] Document Dewford Trend --- data/maps/DewfordTown_Hall/scripts.inc | 2 +- data/specials.inc | 2 +- include/constants/flags.h | 2 +- include/constants/global.h | 1 + include/dewford_trend.h | 5 +- include/global.h | 13 +- include/tv.h | 2 +- src/dewford_trend.c | 453 ++++++++++++++----------- src/easy_chat.c | 6 +- src/field_specials.c | 2 +- src/match_call.c | 6 +- src/record_mixing.c | 18 +- src/tv.c | 2 +- src/wild_encounter.c | 2 +- 14 files changed, 294 insertions(+), 222 deletions(-) diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc index 72db32317899..814392b3deca 100644 --- a/data/maps/DewfordTown_Hall/scripts.inc +++ b/data/maps/DewfordTown_Hall/scripts.inc @@ -10,7 +10,7 @@ DewfordTown_Hall_EventScript_Girl:: @ 81FD4D0 lock faceplayer call Common_EventScript_BufferTrendyPhrase - special TrendyPhraseIsOld + special IsTrendyPhraseBoring compare VAR_RESULT, TRUE goto_if_eq DewfordTown_Hall_EventScript_GirlBoredOfTrend msgbox DewfordTown_Hall_Text_CantImagineLifeWithoutTrend, MSGBOX_DEFAULT diff --git a/data/specials.inc b/data/specials.inc index 620fae369be7..f672a7b870c8 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -138,7 +138,7 @@ gSpecials:: @ 81DBA64 def_special BufferMonNickname def_special IsMonOTIDNotPlayers def_special BufferTrendyPhraseString - def_special TrendyPhraseIsOld + def_special IsTrendyPhraseBoring def_special BufferDeepLinkPhrase def_special GetDewfordHallPaintingNameIndex def_special SwapRegisteredBike diff --git a/include/constants/flags.h b/include/constants/flags.h index 21b730de39dc..798b42d4ddf4 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -1402,7 +1402,7 @@ #define FLAG_SYS_TV_HOME (SYSTEM_FLAGS + 0x30) #define FLAG_SYS_TV_WATCH (SYSTEM_FLAGS + 0x31) #define FLAG_SYS_TV_START (SYSTEM_FLAGS + 0x32) -#define FLAG_SYS_POPWORD_INPUT (SYSTEM_FLAGS + 0x33) +#define FLAG_SYS_CHANGED_DEWFORD_TREND (SYSTEM_FLAGS + 0x33) #define FLAG_SYS_MIX_RECORD (SYSTEM_FLAGS + 0x34) #define FLAG_SYS_CLOCK_SET (SYSTEM_FLAGS + 0x35) #define FLAG_SYS_NATIONAL_DEX (SYSTEM_FLAGS + 0x36) diff --git a/include/constants/global.h b/include/constants/global.h index 213ccca5b54e..9b0c46ce400b 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -52,6 +52,7 @@ #define NUM_CONTEST_WINNERS 13 #define UNION_ROOM_KB_ROW_COUNT 10 #define GIFT_RIBBONS_COUNT 11 +#define SAVED_TRENDS_COUNT 5 #define PYRAMID_BAG_ITEMS_COUNT 10 #define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode. diff --git a/include/dewford_trend.h b/include/dewford_trend.h index a7ed006f033c..6a3194468723 100644 --- a/include/dewford_trend.h +++ b/include/dewford_trend.h @@ -2,10 +2,9 @@ #define GUARD_DEWFORDTREND_H void InitDewfordTrend(void); -void UpdateDewfordTrendPerDay(u16); void UpdateDewfordTrendPerDay(u16 days); -bool8 IsPhraseTrendy(u16 *a); -void ReceiveEasyChatPairsData(struct EasyChatPair *a, size_t b, u8 unused); +bool8 TrySetTrendyPhrase(u16 *phrase); +void ReceiveDewfordTrendData(struct DewfordTrend *linkedTrends, size_t size, u8 unused); #endif // GUARD_DEWFORDTREND_H diff --git a/include/global.h b/include/global.h index 7806c0b59cb7..497fb40b14b0 100644 --- a/include/global.h +++ b/include/global.h @@ -587,12 +587,13 @@ struct RamScript struct RamScriptData data; }; -struct EasyChatPair +// See dewford_trend.c +struct DewfordTrend { - u16 unk0_0:7; - u16 unk0_7:7; - u16 unk1_6:1; - u16 unk2; + u16 trendiness:7; + u16 maxTrendiness:7; + u16 gainingTrendiness:1; + u16 rand; u16 words[2]; }; /*size = 0x8*/ @@ -1021,7 +1022,7 @@ struct SaveBlock1 /*0x2BE0*/ struct MailStruct mail[MAIL_COUNT]; /*0x2E20*/ u8 additionalPhrases[8]; // bitfield for 33 additional phrases in easy chat system /*0x2E28*/ OldMan oldMan; - /*0x2e64*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff + /*0x2e64*/ struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; /*0x2e90*/ struct ContestWinner contestWinners[NUM_CONTEST_WINNERS]; // see CONTEST_WINNER_* /*0x3030*/ struct DayCare daycare; /*0x3150*/ struct LinkBattleRecords linkBattleRecords; diff --git a/include/tv.h b/include/tv.h index 4829094990ed..f94c5b7e507a 100644 --- a/include/tv.h +++ b/include/tv.h @@ -31,7 +31,7 @@ void AlertTVThatPlayerPlayedRoulette(u16 nCoinsSpent); void AlertTVOfNewCoinTotal(u16 nCoinsPaidOut); void TryPutSecretBaseSecretsOnAir(void); void TryPutTodaysRivalTrainerOnAir(void); -void sub_80EDC60(const u16 *words); +void TryPutTrendWatcherOnAir(const u16 *words); void sub_80EDA80(void); void ReceivePokeNewsData(void *src, u32 size, u8 masterIdx); void sub_80F0BB8(void); diff --git a/src/dewford_trend.c b/src/dewford_trend.c index c60797f863b8..3358334dd608 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -10,311 +10,383 @@ #include "string_util.h" #include "constants/easy_chat.h" -// static functions -static void sub_8122804(struct EasyChatPair *s, u16 b, u8 c); -static bool8 sub_8122A58(struct EasyChatPair *a, struct EasyChatPair *b, u8 c); -static void sub_8122B28(struct EasyChatPair *s); -static bool8 SB1ContainsWords(u16 *a); -static bool8 IsEasyChatPairEqual(u16 *words1, u16 *words2); -static s16 GetEqualEasyChatPairIndex(struct EasyChatPair *s, struct EasyChatPair *a, u16 b); - -// text +/* + ## Overview ## + This file handles the "Dewford Trend", a pair of Easy Chat words + repeated by NPCs around Dewford Hall. + + The NPC outside Dewford Hall will ask what the player thinks of the + current trendy phrase, and the player may submit a new pair of words. + If the NPC thinks the submitted phrase is "trendier" than the + current one (see TrySetTrendyPhrase), it becomes the new phrase. + + ## struct DewfordTrend ## + Information about a Dewford trend is stored in a struct DewfordTrend. + In addition to the two easy chat words that make up the trend's phrase, + each trend has a few randomly generated values associated with it. + - rand: + This is a 16 bit value generated once when the phrase is created. + It's used in calculations for Feebas tiles, Slot Machines, and Match Call. + It's also used to determine how much "trendiness" is lost over time (see below). + - trendiness / maxTrendiness: + Initialized as a random value between 30-127 inclusive. This is used to + compare how trendy one phrase is vs another. If a submitted phrase is + less trendy than the current one it won't be accepted. If the trend is + "boring" (see below) it will lose trendiness over time until it reaches 0, + at which point it will stop being boring and gain trendiness until it + reaches maxTrendiness (then it becomes boring again and the cycle repeats). + - gainingTrendiness: + This is a flag that determines whether a phrase should be gaining or losing + trendiness. An NPC in Dewford Hall will comment on whether the current phrase + is "boring" or not, and if it is gaining trendiness (or if it is still trendier + than the last phrase) it is not boring. This field will always be TRUE for any + new phrase submitted after the 1st submission. + + ## Saving trends ## + Each time a new trendy phrase is accepted, the previous Dewford Trend is saved + in gSaveBlock1Ptr->dewfordTrends[]. Up to SAVED_TRENDS_COUNT (5) trends may be + saved at one time. The trends in this array are kept in sorted order from most trendy + to least trendy. The current trendy phrase is always at gSaveBlock1Ptr->dewfordTrends[0]. + If the player mixes records with another player, their own trends are replaced with + their mixing partner's, unless the phrase is the same, in which case the version with + a higher trendiness value is used (see ReceiveDewfordTrendData). + +*/ + +enum { + SORT_MODE_NORMAL, + SORT_MODE_MAX_FIRST, + SORT_MODE_FULL, +}; + +static void SortTrends(struct DewfordTrend *, u16, u8); +static bool8 CompareTrends(struct DewfordTrend *, struct DewfordTrend *, u8); +static void SeedTrendRng(struct DewfordTrend *); +static bool8 IsPhraseInSavedTrends(u16 *); +static bool8 IsEasyChatPairEqual(u16 *, u16 *); +static s16 GetSavedTrendIndex(struct DewfordTrend *, struct DewfordTrend *, u16); + void InitDewfordTrend(void) { u16 i; - for (i = 0; i < 5; i++) + for (i = 0; i < SAVED_TRENDS_COUNT; i++) { - gSaveBlock1Ptr->easyChatPairs[i].words[0] = GetRandomEasyChatWordFromGroup(EC_GROUP_CONDITIONS); + gSaveBlock1Ptr->dewfordTrends[i].words[0] = GetRandomEasyChatWordFromGroup(EC_GROUP_CONDITIONS); if (Random() & 1) - gSaveBlock1Ptr->easyChatPairs[i].words[1] = GetRandomEasyChatWordFromGroup(EC_GROUP_LIFESTYLE); + gSaveBlock1Ptr->dewfordTrends[i].words[1] = GetRandomEasyChatWordFromGroup(EC_GROUP_LIFESTYLE); else - gSaveBlock1Ptr->easyChatPairs[i].words[1] = GetRandomEasyChatWordFromGroup(EC_GROUP_HOBBIES); + gSaveBlock1Ptr->dewfordTrends[i].words[1] = GetRandomEasyChatWordFromGroup(EC_GROUP_HOBBIES); - gSaveBlock1Ptr->easyChatPairs[i].unk1_6 = Random() & 1; - sub_8122B28(&(gSaveBlock1Ptr->easyChatPairs[i])); + gSaveBlock1Ptr->dewfordTrends[i].gainingTrendiness = Random() & 1; + SeedTrendRng(&(gSaveBlock1Ptr->dewfordTrends[i])); } - sub_8122804(gSaveBlock1Ptr->easyChatPairs, 5, 0); + SortTrends(gSaveBlock1Ptr->dewfordTrends, SAVED_TRENDS_COUNT, SORT_MODE_NORMAL); } -void UpdateDewfordTrendPerDay(u16 a) +void UpdateDewfordTrendPerDay(u16 days) { u16 i; - if (a != 0) + if (days != 0) { - u32 sp0 = a * 5; + u32 clockRand = days * 5; - for (i = 0; i < 5; i++) + for (i = 0; i < SAVED_TRENDS_COUNT; i++) { - u32 r4; - u32 r2 = sp0; - struct EasyChatPair *r5 = &(gSaveBlock1Ptr->easyChatPairs[i]); + u32 trendiness; + u32 rand = clockRand; + struct DewfordTrend *trend = &gSaveBlock1Ptr->dewfordTrends[i]; - if (r5->unk1_6 == 0) + if (!trend->gainingTrendiness) { - if (r5->unk0_0 >= (u16)r2) + // This trend is "boring" + // Lose trendiness until it becomes 0 + if (trend->trendiness >= (u16)rand) { - r5->unk0_0 -= r2; - if (r5->unk0_0 == 0) - r5->unk1_6 = 1; + trend->trendiness -= rand; + if (trend->trendiness == 0) + trend->gainingTrendiness = TRUE; continue; } - r2 -= r5->unk0_0; - r5->unk0_0 = 0; - r5->unk1_6 = 1; + rand -= trend->trendiness; + trend->trendiness = 0; + trend->gainingTrendiness = TRUE; } - r4 = r5->unk0_0 + r2; - if ((u16)r4 > r5->unk0_7) + + trendiness = trend->trendiness + rand; + if ((u16)trendiness > trend->maxTrendiness) { - u32 sp4 = r4 % r5->unk0_7; - r4 = r4 / r5->unk0_7; + // Reached limit, reset trendiness + u32 newTrendiness = trendiness % trend->maxTrendiness; + trendiness = trendiness / trend->maxTrendiness; - r5->unk1_6 = r4 ^ 1; - if (r5->unk1_6) - r5->unk0_0 = sp4; + trend->gainingTrendiness = trendiness ^ 1; + if (trend->gainingTrendiness) + trend->trendiness = newTrendiness; else - r5->unk0_0 = r5->unk0_7 - sp4; + trend->trendiness = trend->maxTrendiness - newTrendiness; } else { - r5->unk0_0 = r4; + // Increase trendiness + trend->trendiness = trendiness; - if (r5->unk0_0 == r5->unk0_7) - r5->unk1_6 = 0; + // Trend has reached its max, becoming "boring" and start losing trendiness + if (trend->trendiness == trend->maxTrendiness) + trend->gainingTrendiness = FALSE; } } - sub_8122804(gSaveBlock1Ptr->easyChatPairs, 5, 0); + SortTrends(gSaveBlock1Ptr->dewfordTrends, SAVED_TRENDS_COUNT, SORT_MODE_NORMAL); } } - -bool8 IsPhraseTrendy(u16 *a) +// Returns TRUE if the current trendy phrase was successfully changed to the given phrase +// Returns FALSE otherwise +bool8 TrySetTrendyPhrase(u16 *phrase) { - struct EasyChatPair s = {0}; + struct DewfordTrend trend = {0}; u16 i; - if (!SB1ContainsWords(a)) + if (!IsPhraseInSavedTrends(phrase)) { - if (!FlagGet(FLAG_SYS_POPWORD_INPUT)) + if (!FlagGet(FLAG_SYS_CHANGED_DEWFORD_TREND)) { - FlagSet(FLAG_SYS_POPWORD_INPUT); + FlagSet(FLAG_SYS_CHANGED_DEWFORD_TREND); + + // Make sure player couldn't have received this phrase by mixing records if (!FlagGet(FLAG_SYS_MIX_RECORD)) { - gSaveBlock1Ptr->easyChatPairs[0].words[0] = a[0]; - gSaveBlock1Ptr->easyChatPairs[0].words[1] = a[1]; + // This is the first time submitting a phrase + // No need to check saved phrases or reset rng, just set the new words + gSaveBlock1Ptr->dewfordTrends[0].words[0] = phrase[0]; + gSaveBlock1Ptr->dewfordTrends[0].words[1] = phrase[1]; return TRUE; } } - s.words[0] = a[0]; - s.words[1] = a[1]; - s.unk1_6 = 1; - sub_8122B28(&s); + // Initialize DewfordTrend using given phrase + trend.words[0] = phrase[0]; + trend.words[1] = phrase[1]; + trend.gainingTrendiness = TRUE; + SeedTrendRng(&trend); - for (i = 0; i < 5; i++) + for (i = 0; i < SAVED_TRENDS_COUNT; i++) { - if (sub_8122A58(&s, &(gSaveBlock1Ptr->easyChatPairs[i]), 0)) + if (CompareTrends(&trend, &(gSaveBlock1Ptr->dewfordTrends[i]), SORT_MODE_NORMAL)) { - u16 r3 = 4; - - while (r3 > i) + // New trend is "trendier" than dewfordTrend[i] + // Shift other trends back to insert new trend + u16 j = SAVED_TRENDS_COUNT - 1; + while (j > i) { - gSaveBlock1Ptr->easyChatPairs[r3] = gSaveBlock1Ptr->easyChatPairs[r3 - 1]; - r3--; + gSaveBlock1Ptr->dewfordTrends[j] = gSaveBlock1Ptr->dewfordTrends[j - 1]; + j--; } - gSaveBlock1Ptr->easyChatPairs[i] = s; - if(i == 4) - sub_80EDC60(a); + gSaveBlock1Ptr->dewfordTrends[i] = trend; + + if (i == SAVED_TRENDS_COUNT - 1) + TryPutTrendWatcherOnAir(phrase); + + // If i is 0, the given phrase is the new current phrase return (i == 0); } } - gSaveBlock1Ptr->easyChatPairs[4] = s; - sub_80EDC60(a); + + // New trend is less "trendy" than all other saved trends, put it in last + gSaveBlock1Ptr->dewfordTrends[SAVED_TRENDS_COUNT - 1] = trend; + TryPutTrendWatcherOnAir(phrase); } return FALSE; } -static void sub_8122804(struct EasyChatPair *s, u16 b, u8 c) +static void SortTrends(struct DewfordTrend *trends, u16 numTrends, u8 mode) { - u16 h; - - for (h = 0; h < b; h++) + u16 i; + for (i = 0; i < numTrends; i++) { - u16 i; - - for (i = h + 1; i < b; i++) + u16 j; + for (j = i + 1; j < numTrends; j++) { - if (sub_8122A58(&s[i], &s[h], c)) + if (CompareTrends(&trends[j], &trends[i], mode)) { - struct EasyChatPair temp; - - temp = s[i]; - s[i] = s[h]; - s[h] = temp; + struct DewfordTrend temp; + SWAP(trends[j], trends[i], temp); } } } } -void ReceiveEasyChatPairsData(struct EasyChatPair *a, size_t size, u8 unused) +#define SAVED_TRENDS_SIZE (sizeof(struct DewfordTrend) * SAVED_TRENDS_COUNT) +#define BUFFER_SIZE (SAVED_TRENDS_SIZE * MAX_LINK_PLAYERS > 0x100 ? SAVED_TRENDS_SIZE * MAX_LINK_PLAYERS : 0x100) // More space was allocated than needed + +void ReceiveDewfordTrendData(struct DewfordTrend *linkedTrends, size_t size, u8 unused) { - u16 i, j, r3, players; - struct EasyChatPair *buffer1, *buffer2, *src, *dst, *foo_of_buffer2; + u16 i, j, numTrends, players; + struct DewfordTrend *linkedTrendsBuffer, *savedTrendsBuffer, *src, *dst, *temp; - buffer1 = Alloc(0x100); - if(buffer1 != NULL) + // Exit if alloc fails + if (!(linkedTrendsBuffer = Alloc(BUFFER_SIZE))) + return; + + // Exit if alloc fails + if (!(savedTrendsBuffer = Alloc(BUFFER_SIZE))) { - buffer2 = Alloc(0x100); - if(buffer2 == NULL) - { - Free(buffer1); - } - else + Free(linkedTrendsBuffer); + return; + } + + // Buffer the new trends being received via Record Mixing + players = GetLinkPlayerCount(); + for (i = 0; i < players; i++) + memcpy(&linkedTrendsBuffer[i * SAVED_TRENDS_COUNT], (u8 *)linkedTrends + i * size, SAVED_TRENDS_SIZE); + + // Determine which of the received trends should be saved. + // savedTrendsBuffer starts empty, and when finished will contain + // which of the linked trends to save in the saveblock. + src = linkedTrendsBuffer; + dst = savedTrendsBuffer; + numTrends = 0; + for (i = 0; i < players; i++) + { + for (j = 0; j < SAVED_TRENDS_COUNT; j++) { - players = GetLinkPlayerCount(); - for (i = 0; i < players; i++) - memcpy(&(buffer1[i * 5]), (u8 *)a + i * size, 40); - src = buffer1; - dst = buffer2; - r3 = 0; - for (i = 0; i < players; i++) + s16 idx = GetSavedTrendIndex(savedTrendsBuffer, src, numTrends); + if (idx < 0) { - for (j = 0; j < 5; j++) + // This phrase is not a currently saved trend, save it + *(dst++) = *src; + numTrends++; + } + else + { + // This phrase already exists as a saved phrase + // Only overwrrite it if it's "trendier" + temp = &savedTrendsBuffer[idx]; + if (temp->trendiness < src->trendiness) { - s16 foo = GetEqualEasyChatPairIndex(buffer2, src, r3); - if (foo < 0) - { - *(dst++) = *src; - r3++; - } - else - { - foo_of_buffer2 = (struct EasyChatPair *)((u32)buffer2 + (foo * 8)); //required to do this to reverse the order of register operands in add ASM statement - if (foo_of_buffer2->unk0_0 < src->unk0_0) - { - *foo_of_buffer2 = *src; - } - } - src++; + *temp = *src; } } - sub_8122804(buffer2, r3, 2); - src = buffer2; - dst = gSaveBlock1Ptr->easyChatPairs; - for (i = 0; i < 5; i++) - *(dst++) = *(src++); - Free(buffer1); - Free(buffer2); + src++; } } + SortTrends(savedTrendsBuffer, numTrends, SORT_MODE_FULL); + + // Overwrite current saved trends with new saved trends + src = savedTrendsBuffer; + dst = gSaveBlock1Ptr->dewfordTrends; + for (i = 0; i < SAVED_TRENDS_COUNT; i++) + *(dst++) = *(src++); + + Free(linkedTrendsBuffer); + Free(savedTrendsBuffer); } void BufferTrendyPhraseString(void) { - struct EasyChatPair *s = &gSaveBlock1Ptr->easyChatPairs[gSpecialVar_0x8004]; - - ConvertEasyChatWordsToString(gStringVar1, s->words, 2, 1); + struct DewfordTrend *trend = &gSaveBlock1Ptr->dewfordTrends[gSpecialVar_0x8004]; + ConvertEasyChatWordsToString(gStringVar1, trend->words, 2, 1); } -void TrendyPhraseIsOld(void) +// Returns TRUE if the current trendy phrase is "boring", FALSE otherwise +// This only influences the comment of an NPC inside the Dewford Town Hall +void IsTrendyPhraseBoring(void) { - u16 result = 0; + bool16 result = FALSE; do { - if (gSaveBlock1Ptr->easyChatPairs[0].unk0_0 - gSaveBlock1Ptr->easyChatPairs[1].unk0_0 > 1) + if (gSaveBlock1Ptr->dewfordTrends[0].trendiness - gSaveBlock1Ptr->dewfordTrends[1].trendiness > 1) break; - if (gSaveBlock1Ptr->easyChatPairs[0].unk1_6) + if (gSaveBlock1Ptr->dewfordTrends[0].gainingTrendiness) break; - if (!gSaveBlock1Ptr->easyChatPairs[1].unk1_6) + if (!gSaveBlock1Ptr->dewfordTrends[1].gainingTrendiness) break; - result = 1; + result = TRUE; } while (0); gSpecialVar_Result = result; } +// A painting hangs on the wall of the Dewford Hall +// When interacted with it says "{trendy phrase}'S {name} is the title" +// {name} is one of 8 pre-set words, depending on the current phrase +// See DewfordTown_Hall_EventScript_Painting void GetDewfordHallPaintingNameIndex(void) { - gSpecialVar_Result = (gSaveBlock1Ptr->easyChatPairs[0].words[0] + gSaveBlock1Ptr->easyChatPairs[0].words[1]) & 7; + gSpecialVar_Result = (gSaveBlock1Ptr->dewfordTrends[0].words[0] + gSaveBlock1Ptr->dewfordTrends[0].words[1]) & 7; } -static bool8 sub_8122A58(struct EasyChatPair *a, struct EasyChatPair *b, u8 c) +// Returns TRUE if a > b (a is "trendier" than b), FALSE if a < b (b is "trendier" than a) +// How one trend is compared to the other depends on the mode +// In SORT_MODE_FULL if the trends are equal then TRUE is always returned, otherwise TRUE or FALSE is returned randomly +static bool8 CompareTrends(struct DewfordTrend *a, struct DewfordTrend *b, u8 mode) { - switch (c) + switch (mode) { - case 0: - if (a->unk0_0 > b->unk0_0) - return 1; - if (a->unk0_0 < b->unk0_0) - return 0; - if (a->unk0_7 > b->unk0_7) - return 1; - if (a->unk0_7 < b->unk0_7) - return 0; + case SORT_MODE_NORMAL: + if (a->trendiness > b->trendiness) return TRUE; + if (a->trendiness < b->trendiness) return FALSE; + + if (a->maxTrendiness > b->maxTrendiness) return TRUE; + if (a->maxTrendiness < b->maxTrendiness) return FALSE; break; - case 1: - if (a->unk0_7 > b->unk0_7) - return 1; - if (a->unk0_7 < b->unk0_7) - return 0; - if (a->unk0_0 > b->unk0_0) - return 1; - if (a->unk0_0 < b->unk0_0) - return 0; + case SORT_MODE_MAX_FIRST: // Unused + if (a->maxTrendiness > b->maxTrendiness) return TRUE; + if (a->maxTrendiness < b->maxTrendiness) return FALSE; + + if (a->trendiness > b->trendiness) return TRUE; + if (a->trendiness < b->trendiness) return FALSE; break; - case 2: - if (a->unk0_0 > b->unk0_0) - return 1; - if (a->unk0_0 < b->unk0_0) - return 0; - if (a->unk0_7 > b->unk0_7) - return 1; - if (a->unk0_7 < b->unk0_7) - return 0; - if (a->unk2 > b->unk2) - return 1; - if (a->unk2 < b->unk2) - return 0; - if (a->words[0] > b->words[0]) - return 1; - if (a->words[0] < b->words[0]) - return 0; - if (a->words[1] > b->words[1]) - return 1; - if (a->words[1] < b->words[1]) - return 0; - return 1; + case SORT_MODE_FULL: + if (a->trendiness > b->trendiness) return TRUE; + if (a->trendiness < b->trendiness) return FALSE; + + if (a->maxTrendiness > b->maxTrendiness) return TRUE; + if (a->maxTrendiness < b->maxTrendiness) return FALSE; + + if (a->rand > b->rand) return TRUE; + if (a->rand < b->rand) return FALSE; + + if (a->words[0] > b->words[0]) return TRUE; + if (a->words[0] < b->words[0]) return FALSE; + + if (a->words[1] > b->words[1]) return TRUE; + if (a->words[1] < b->words[1]) return FALSE; + return TRUE; } + + // Invalid mode given, or trends are equal in SORT_MODE_NORMAL or SORT_MODE_MAX_FIRST + // Randomly pick one of the phrases return Random() & 1; } -static void sub_8122B28(struct EasyChatPair *s) +static void SeedTrendRng(struct DewfordTrend *trend) { - u16 r4; + u16 rand; - r4 = Random() % 98; - if (r4 > 50) + rand = Random() % 98; + if (rand > 50) { - r4 = Random() % 98; - if (r4 > 80) - r4 = Random() % 98; + rand = Random() % 98; + if (rand > 80) + rand = Random() % 98; } - s->unk0_7 = r4 + 30; - s->unk0_0 = (Random() % (r4 + 1)) + 30; - s->unk2 = Random(); + trend->maxTrendiness = rand + 30; + trend->trendiness = (Random() % (rand + 1)) + 30; + trend->rand = Random(); } -static bool8 SB1ContainsWords(u16 *a) +static bool8 IsPhraseInSavedTrends(u16 *phrase) { u16 i; - for (i = 0; i < 5; i++) + for (i = 0; i < SAVED_TRENDS_COUNT; i++) { - if (IsEasyChatPairEqual(a, gSaveBlock1Ptr->easyChatPairs[i].words) != 0) + if (IsEasyChatPairEqual(phrase, gSaveBlock1Ptr->dewfordTrends[i].words)) return TRUE; } return FALSE; @@ -332,15 +404,14 @@ static bool8 IsEasyChatPairEqual(u16 *words1, u16 *words2) return TRUE; } -static s16 GetEqualEasyChatPairIndex(struct EasyChatPair*s, struct EasyChatPair *a, u16 b) +static s16 GetSavedTrendIndex(struct DewfordTrend *savedTrends, struct DewfordTrend *trend, u16 numSaved) { s16 i; - - for (i = 0; i < b; i++) + for (i = 0; i < numSaved; i++) { - if (IsEasyChatPairEqual(a->words, s->words)) + if (IsEasyChatPairEqual(trend->words, savedTrends->words)) return i; - s++; + savedTrends++; } return -1; } diff --git a/src/easy_chat.c b/src/easy_chat.c index a27e1780eb9b..fcbd1fba381a 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1477,8 +1477,8 @@ void ShowEasyChatScreen(void) break; case EASY_CHAT_TYPE_TRENDY_PHRASE: words = (u16 *)gStringVar3; - words[0] = gSaveBlock1Ptr->easyChatPairs[0].words[0]; - words[1] = gSaveBlock1Ptr->easyChatPairs[0].words[1]; + words[0] = gSaveBlock1Ptr->dewfordTrends[0].words[0]; + words[1] = gSaveBlock1Ptr->dewfordTrends[0].words[1]; break; case EASY_CHAT_TYPE_GABBY_AND_TY: words = gSaveBlock1Ptr->gabbyAndTyData.quote; @@ -2958,7 +2958,7 @@ static void SetSpecialEasyChatResult(void) break; case EASY_CHAT_TYPE_TRENDY_PHRASE: BufferCurrentPhraseToStringVar2(); - gSpecialVar_0x8004 = IsPhraseTrendy(sEasyChatScreen->currentPhrase); + gSpecialVar_0x8004 = TrySetTrendyPhrase(sEasyChatScreen->currentPhrase); break; case EASY_CHAT_TYPE_GOOD_SAYING: gSpecialVar_0x8004 = DidPlayerInputABerryMasterWifePhrase(); diff --git a/src/field_specials.c b/src/field_specials.c index 86be21edace0..30503ed8d4d3 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1336,7 +1336,7 @@ u16 GetSlotMachineId(void) static const u8 sSlotMachineIds[] = {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5}; static const u8 sSlotMachineServiceDayIds[] = {3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5}; - u32 rnd = gSaveBlock1Ptr->easyChatPairs[0].unk0_0 + gSaveBlock1Ptr->easyChatPairs[0].unk2 + sSlotMachineRandomSeeds[gSpecialVar_0x8004]; + u32 rnd = gSaveBlock1Ptr->dewfordTrends[0].trendiness + gSaveBlock1Ptr->dewfordTrends[0].rand + sSlotMachineRandomSeeds[gSpecialVar_0x8004]; if (GetPriceReduction(POKENEWS_GAME_CORNER)) { return sSlotMachineServiceDayIds[rnd % SLOT_MACHINE_COUNT]; diff --git a/src/match_call.c b/src/match_call.c index fb8ebc98cc7a..b78441f9311c 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1773,7 +1773,7 @@ static bool32 sub_8196D74(int matchCallId) { int dayCount; int otId; - u16 easyChatWord; + u16 rand; int numRematchTrainersFought; int var0, var1, var2; @@ -1783,10 +1783,10 @@ static bool32 sub_8196D74(int matchCallId) dayCount = RtcGetLocalDayCount(); otId = GetTrainerId(gSaveBlock2Ptr->playerTrainerId) & 0xFFFF; - easyChatWord = gSaveBlock1Ptr->easyChatPairs[0].unk2; + rand = gSaveBlock1Ptr->dewfordTrends[0].rand; numRematchTrainersFought = GetNumRematchTrainersFought(); var0 = (numRematchTrainersFought * 13) / 10; - var1 = ((dayCount ^ easyChatWord) + (easyChatWord ^ GetGameStat(GAME_STAT_TRAINER_BATTLES))) ^ otId; + var1 = ((dayCount ^ rand) + (rand ^ GetGameStat(GAME_STAT_TRAINER_BATTLES))) ^ otId; var2 = var1 % var0; if (var2 < numRematchTrainersFought) { diff --git a/src/record_mixing.c b/src/record_mixing.c index 2028cc647772..bb19fad743b3 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -50,7 +50,7 @@ struct PlayerRecordsRS TVShow tvShows[TV_SHOWS_COUNT]; PokeNews pokeNews[POKE_NEWS_COUNT]; OldMan oldMan; - struct EasyChatPair easyChatPairs[5]; + struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; struct RecordMixingDayCareMail dayCareMail; struct RSBattleTowerRecord battleTowerRecord; u16 giftItem; @@ -63,7 +63,7 @@ struct PlayerRecordsEmerald /* 0x0c80 */ TVShow tvShows[TV_SHOWS_COUNT]; /* 0x1004 */ PokeNews pokeNews[POKE_NEWS_COUNT]; /* 0x1044 */ OldMan oldMan; - /* 0x1084 */ struct EasyChatPair easyChatPairs[5]; + /* 0x1084 */ struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; /* 0x10ac */ struct RecordMixingDayCareMail dayCareMail; /* 0x1124 */ struct EmeraldBattleTowerRecord battleTowerRecord; /* 0x1210 */ u16 giftItem; @@ -86,7 +86,7 @@ static struct SecretBase *sSecretBasesSave; static TVShow *sTvShowsSave; static PokeNews *sPokeNewsSave; static OldMan *sOldManSave; -static struct EasyChatPair *sEasyChatPairsSave; +static struct DewfordTrend *sDewfordTrendsSave; static struct RecordMixingDayCareMail *gUnknown_03001148; static void *sBattleTowerSave; static LilycoveLady *sLilycoveLadySave; @@ -179,7 +179,7 @@ static void SetSrcLookupPointers(void) sTvShowsSave = gSaveBlock1Ptr->tvShows; sPokeNewsSave = gSaveBlock1Ptr->pokeNews; sOldManSave = &gSaveBlock1Ptr->oldMan; - sEasyChatPairsSave = gSaveBlock1Ptr->easyChatPairs; + sDewfordTrendsSave = gSaveBlock1Ptr->dewfordTrends; gUnknown_03001148 = &gUnknown_02039F9C; sBattleTowerSave = &gSaveBlock2Ptr->frontier.towerPlayer; sLilycoveLadySave = &gSaveBlock1Ptr->lilycoveLady; @@ -194,7 +194,7 @@ static void PrepareUnknownExchangePacket(struct PlayerRecordsRS *dest) sub_80F14F8(dest->tvShows); memcpy(dest->pokeNews, sPokeNewsSave, sizeof(dest->pokeNews)); memcpy(&dest->oldMan, sOldManSave, sizeof(dest->oldMan)); - memcpy(dest->easyChatPairs, sEasyChatPairsSave, sizeof(dest->easyChatPairs)); + memcpy(dest->dewfordTrends, sDewfordTrendsSave, sizeof(dest->dewfordTrends)); sub_80E89F8(&dest->dayCareMail); EmeraldBattleTowerRecordToRuby(sBattleTowerSave, &dest->battleTowerRecord); @@ -211,7 +211,7 @@ static void PrepareExchangePacketForRubySapphire(struct PlayerRecordsRS *dest) memcpy(dest->pokeNews, sPokeNewsSave, sizeof(dest->pokeNews)); memcpy(&dest->oldMan, sOldManSave, sizeof(dest->oldMan)); sub_8120B70(&dest->oldMan); - memcpy(dest->easyChatPairs, sEasyChatPairsSave, sizeof(dest->easyChatPairs)); + memcpy(dest->dewfordTrends, sDewfordTrendsSave, sizeof(dest->dewfordTrends)); sub_80E89F8(&dest->dayCareMail); SanitizeDayCareMailForRuby(&dest->dayCareMail); EmeraldBattleTowerRecordToRuby(sBattleTowerSave, &dest->battleTowerRecord); @@ -241,7 +241,7 @@ static void PrepareExchangePacket(void) memcpy(sSentRecord->emerald.pokeNews, sPokeNewsSave, sizeof(sSentRecord->emerald.pokeNews)); memcpy(&sSentRecord->emerald.oldMan, sOldManSave, sizeof(sSentRecord->emerald.oldMan)); memcpy(&sSentRecord->emerald.lilycoveLady, sLilycoveLadySave, sizeof(sSentRecord->emerald.lilycoveLady)); - memcpy(sSentRecord->emerald.easyChatPairs, sEasyChatPairsSave, sizeof(sSentRecord->emerald.easyChatPairs)); + memcpy(sSentRecord->emerald.dewfordTrends, sDewfordTrendsSave, sizeof(sSentRecord->emerald.dewfordTrends)); sub_80E89F8(&sSentRecord->emerald.dayCareMail); memcpy(&sSentRecord->emerald.battleTowerRecord, sBattleTowerSave, sizeof(sSentRecord->emerald.battleTowerRecord)); SanitizeEmeraldBattleTowerRecord(&sSentRecord->emerald.battleTowerRecord); @@ -266,7 +266,7 @@ static void ReceiveExchangePacket(u32 which) ReceiveTvShowsData(sReceivedRecords->ruby.tvShows, sizeof(struct PlayerRecordsRS), which); ReceivePokeNewsData(sReceivedRecords->ruby.pokeNews, sizeof(struct PlayerRecordsRS), which); ReceiveOldManData(&sReceivedRecords->ruby.oldMan, sizeof(struct PlayerRecordsRS), which); - ReceiveEasyChatPairsData(sReceivedRecords->ruby.easyChatPairs, sizeof(struct PlayerRecordsRS), which); + ReceiveDewfordTrendData(sReceivedRecords->ruby.dewfordTrends, sizeof(struct PlayerRecordsRS), which); ReceiveGiftItem(&sReceivedRecords->ruby.giftItem, which); } else @@ -277,7 +277,7 @@ static void ReceiveExchangePacket(u32 which) ReceiveTvShowsData(sReceivedRecords->emerald.tvShows, sizeof(struct PlayerRecordsEmerald), which); ReceivePokeNewsData(sReceivedRecords->emerald.pokeNews, sizeof(struct PlayerRecordsEmerald), which); ReceiveOldManData(&sReceivedRecords->emerald.oldMan, sizeof(struct PlayerRecordsEmerald), which); - ReceiveEasyChatPairsData(sReceivedRecords->emerald.easyChatPairs, sizeof(struct PlayerRecordsEmerald), which); + ReceiveDewfordTrendData(sReceivedRecords->emerald.dewfordTrends, sizeof(struct PlayerRecordsEmerald), which); ReceiveDaycareMailData(&sReceivedRecords->emerald.dayCareMail, sizeof(struct PlayerRecordsEmerald), which, sReceivedRecords->emerald.tvShows); ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(struct PlayerRecordsEmerald), which); ReceiveGiftItem(&sReceivedRecords->emerald.giftItem, which); diff --git a/src/tv.c b/src/tv.c index d499e31a8380..7f3aa6aafcd9 100644 --- a/src/tv.c +++ b/src/tv.c @@ -1972,7 +1972,7 @@ void TryPutTodaysRivalTrainerOnAir(void) } } -void sub_80EDC60(const u16 *words) +void TryPutTrendWatcherOnAir(const u16 *words) { TVShow *show; diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 9f81a3b3ed06..767fbe4e7ef3 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -108,7 +108,7 @@ static bool8 CheckFeebas(void) if (Random() % 100 > 49) // 50% chance of encountering Feebas return FALSE; - FeebasSeedRng(gSaveBlock1Ptr->easyChatPairs[0].unk2); + FeebasSeedRng(gSaveBlock1Ptr->dewfordTrends[0].rand); for (i = 0; i != NUM_FEEBAS_SPOTS;) { feebasSpots[i] = FeebasRandom() % 447; From 771a4347309cd2f486072794d7de2c41b84c9b12 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 31 Mar 2021 16:29:42 -0400 Subject: [PATCH 071/762] Label Trend Watcher TV show texts --- data/text/tv.inc | 16 ++++---- include/constants/tv.h | 9 +++++ include/event_scripts.h | 14 +++---- src/dewford_trend.c | 20 +++++---- src/tv.c | 90 +++++++++++++++++++---------------------- 5 files changed, 79 insertions(+), 70 deletions(-) diff --git a/data/text/tv.inc b/data/text/tv.inc index 444b37f179d9..72d3910340c7 100644 --- a/data/text/tv.inc +++ b/data/text/tv.inc @@ -1229,7 +1229,7 @@ gTVTodaysRivalTrainerText06:: @ 082849AE .string "Let's all keep moving forward\n" .string "and ahead of our rivals!$" -gTVDewfordTrendWatcherNetworkText00:: @ 08284A3E +TrendWatcher_Text_Intro:: @ 08284A3E .string "DEWFORD TREND-WATCHER NETWORK!\p" .string "MC: Wassup?\n" .string "We'll keep it real with the latest on\l" @@ -1251,17 +1251,18 @@ gTVDewfordTrendWatcherNetworkText00:: @ 08284A3E .string "MC: Uh, no. What we want to know is\n" .string "what's the in thing of the moment…$" -gTVDewfordTrendWatcherNetworkText01:: @ 08284C55 +@ Identical to below, may have been different in other languages +TrendWatcher_Text_MaleTaughtMePhrase:: @ 08284C55 .string "Old man: {STR_VAR_1} {STR_VAR_2}\n" .string "was what {STR_VAR_3} from LITTLEROOT\l" .string "taught me as being trendy…$" -gTVDewfordTrendWatcherNetworkText02:: @ 08284C9B +TrendWatcher_Text_FemaleTaughtMePhrase:: @ 08284C9B .string "Old man: {STR_VAR_1} {STR_VAR_2}\n" .string "was what {STR_VAR_3} from LITTLEROOT\l" .string "taught me as being trendy…$" -gTVDewfordTrendWatcherNetworkText03:: @ 08284CE1 +TrendWatcher_Text_PhraseWasHopeless:: @ 08284CE1 .string "But it was utterly hopeless.\p" .string "{STR_VAR_1} {STR_VAR_2} festival!\p" .string "{STR_VAR_1} {STR_VAR_2} contest!\p" @@ -1272,17 +1273,18 @@ gTVDewfordTrendWatcherNetworkText03:: @ 08284CE1 .string "MC: Uh, excuse me, compadre, I need\n" .string "to hear about what's in now…$" -gTVDewfordTrendWatcherNetworkText04:: @ 08284DB6 +@ Identical to below, may have been different in other languages +TrendWatcher_Text_MaleTellMeBigger:: @ 08284DB6 .string "Old man: {STR_VAR_3}!\n" .string "Please, tell me something bigger than\l" .string "that {STR_VAR_1} {STR_VAR_2}!$" -gTVDewfordTrendWatcherNetworkText05:: @ 08284DF5 +TrendWatcher_Text_FemaleTellMeBigger:: @ 08284DF5 .string "Old man: {STR_VAR_3}!\n" .string "Please, tell me something bigger than\l" .string "that {STR_VAR_1} {STR_VAR_2}!$" -gTVDewfordTrendWatcherNetworkText06:: @ 08284E34 +TrendWatcher_Text_Outro:: @ 08284E34 .string "MC: …Uh… So, there you have it,\n" .string "all you trendy, hep cats out there!\p" .string "{STR_VAR_1} {STR_VAR_2}…uh…\n" diff --git a/include/constants/tv.h b/include/constants/tv.h index 72eae3f1cae5..57da9837b991 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -206,4 +206,13 @@ #define SPOTCUTIES_STATE_RIBBON_EFFORT 14 #define SPOTCUTIES_STATE_OUTRO 15 +// TV Show states for Trend Watcher +#define TRENDWATCHER_STATE_INTRO 0 +#define TRENDWATCHER_STATE_TAUGHT_MALE 1 +#define TRENDWATCHER_STATE_TAUGHT_FEMALE 2 +#define TRENDWATCHER_STATE_PHRASE_HOPELESS 3 +#define TRENDWATCHER_STATE_BIGGER_MALE 4 +#define TRENDWATCHER_STATE_BIGGER_FEMALE 5 +#define TRENDWATCHER_STATE_OUTRO 6 + #endif //GUARD_CONSTANTS_TV_H diff --git a/include/event_scripts.h b/include/event_scripts.h index 79ef0ea142d8..ecb40c266257 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -135,13 +135,13 @@ extern const u8 gTVTodaysRivalTrainerText03[]; extern const u8 gTVTodaysRivalTrainerText04[]; extern const u8 gTVTodaysRivalTrainerText05[]; extern const u8 gTVTodaysRivalTrainerText06[]; -extern const u8 gTVDewfordTrendWatcherNetworkText00[]; -extern const u8 gTVDewfordTrendWatcherNetworkText01[]; -extern const u8 gTVDewfordTrendWatcherNetworkText02[]; -extern const u8 gTVDewfordTrendWatcherNetworkText03[]; -extern const u8 gTVDewfordTrendWatcherNetworkText04[]; -extern const u8 gTVDewfordTrendWatcherNetworkText05[]; -extern const u8 gTVDewfordTrendWatcherNetworkText06[]; +extern const u8 TrendWatcher_Text_Intro[]; +extern const u8 TrendWatcher_Text_MaleTaughtMePhrase[]; +extern const u8 TrendWatcher_Text_FemaleTaughtMePhrase[]; +extern const u8 TrendWatcher_Text_PhraseWasHopeless[]; +extern const u8 TrendWatcher_Text_MaleTellMeBigger[]; +extern const u8 TrendWatcher_Text_FemaleTellMeBigger[]; +extern const u8 TrendWatcher_Text_Outro[]; extern const u8 gTVHoennTreasureInvestigatorsText00[]; extern const u8 gTVHoennTreasureInvestigatorsText01[]; extern const u8 gTVHoennTreasureInvestigatorsText02[]; diff --git a/src/dewford_trend.c b/src/dewford_trend.c index 3358334dd608..5ce2844d479b 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -43,13 +43,17 @@ new phrase submitted after the 1st submission. ## Saving trends ## - Each time a new trendy phrase is accepted, the previous Dewford Trend is saved - in gSaveBlock1Ptr->dewfordTrends[]. Up to SAVED_TRENDS_COUNT (5) trends may be - saved at one time. The trends in this array are kept in sorted order from most trendy - to least trendy. The current trendy phrase is always at gSaveBlock1Ptr->dewfordTrends[0]. - If the player mixes records with another player, their own trends are replaced with - their mixing partner's, unless the phrase is the same, in which case the version with - a higher trendiness value is used (see ReceiveDewfordTrendData). + Each time a potential trendy phrase is submitted, it is saved in gSaveBlock1Ptr->dewfordTrends[]. + Up to SAVED_TRENDS_COUNT (5) trends may be saved at one time. The trends in this array are kept + in sorted order from most trendy to least trendy. The current trendy phrase is always at + gSaveBlock1Ptr->dewfordTrends[0]. If the player mixes records with another player, their own + trends are replaced with their mixing partner's, unless the phrase is the same, in which case + the version with a higher trendiness value is used (see ReceiveDewfordTrendData). + + ## TV Show ## + If a submitted phrase is only trendier than 1 or none of the saved trends, it may trigger a + TV Show called Trend Watcher (see TryPutTrendWatcherOnAir) that, ironically, spends the + show talking about how the submitted phrase was not trendy. */ @@ -144,6 +148,8 @@ void UpdateDewfordTrendPerDay(u16 days) // Returns TRUE if the current trendy phrase was successfully changed to the given phrase // Returns FALSE otherwise +// Regardless of whether or not the current trendy phrase was changed, the submitted +// phrase is always saved in gSaveBlock1Ptr->dewfordTrends bool8 TrySetTrendyPhrase(u16 *phrase) { struct DewfordTrend trend = {0}; diff --git a/src/tv.c b/src/tv.c index 7f3aa6aafcd9..691b343d8182 100644 --- a/src/tv.c +++ b/src/tv.c @@ -504,13 +504,13 @@ static const u8 *const sTVTodaysRivalTrainerTextGroup[] = { }; static const u8 *const sTVDewfordTrendWatcherNetworkTextGroup[] = { - gTVDewfordTrendWatcherNetworkText00, - gTVDewfordTrendWatcherNetworkText01, - gTVDewfordTrendWatcherNetworkText02, - gTVDewfordTrendWatcherNetworkText03, - gTVDewfordTrendWatcherNetworkText04, - gTVDewfordTrendWatcherNetworkText05, - gTVDewfordTrendWatcherNetworkText06 + [TRENDWATCHER_STATE_INTRO] = TrendWatcher_Text_Intro, + [TRENDWATCHER_STATE_TAUGHT_MALE] = TrendWatcher_Text_MaleTaughtMePhrase, + [TRENDWATCHER_STATE_TAUGHT_FEMALE] = TrendWatcher_Text_FemaleTaughtMePhrase, + [TRENDWATCHER_STATE_PHRASE_HOPELESS] = TrendWatcher_Text_PhraseWasHopeless, + [TRENDWATCHER_STATE_BIGGER_MALE] = TrendWatcher_Text_MaleTellMeBigger, + [TRENDWATCHER_STATE_BIGGER_FEMALE] = TrendWatcher_Text_FemaleTellMeBigger, + [TRENDWATCHER_STATE_OUTRO] = TrendWatcher_Text_Outro }; static const u8 *const sTVHoennTreasureInvestisatorsTextGroup[] = { @@ -5979,48 +5979,40 @@ static void DoTVShowDewfordTrendWatcherNetwork(void) state = sTVShowState; switch (state) { - case 0: - CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); - CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); - if (show->trendWatcher.gender == MALE) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } - break; - case 1: - case 2: - CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); - CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); - TVShowConvertInternationalString(gStringVar3, show->trendWatcher.playerName, show->trendWatcher.language); - sTVShowState = 3; - break; - case 3: - CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); - CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); - if (show->trendWatcher.gender == MALE) - { - sTVShowState = 4; - } - else - { - sTVShowState = 5; - } - break; - case 4: - case 5: - CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); - CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); - TVShowConvertInternationalString(gStringVar3, show->trendWatcher.playerName, show->trendWatcher.language); - sTVShowState = 6; - break; - case 6: - CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); - CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); - TVShowDone(); + case TRENDWATCHER_STATE_INTRO: + CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); + CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); + if (show->trendWatcher.gender == MALE) + sTVShowState = TRENDWATCHER_STATE_TAUGHT_MALE; + else + sTVShowState = TRENDWATCHER_STATE_TAUGHT_FEMALE; + break; + case TRENDWATCHER_STATE_TAUGHT_MALE: + case TRENDWATCHER_STATE_TAUGHT_FEMALE: + CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); + CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); + TVShowConvertInternationalString(gStringVar3, show->trendWatcher.playerName, show->trendWatcher.language); + sTVShowState = TRENDWATCHER_STATE_PHRASE_HOPELESS; + break; + case TRENDWATCHER_STATE_PHRASE_HOPELESS: + CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); + CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); + if (show->trendWatcher.gender == MALE) + sTVShowState = TRENDWATCHER_STATE_BIGGER_MALE; + else + sTVShowState = TRENDWATCHER_STATE_BIGGER_FEMALE; + break; + case TRENDWATCHER_STATE_BIGGER_MALE: + case TRENDWATCHER_STATE_BIGGER_FEMALE: + CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); + CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); + TVShowConvertInternationalString(gStringVar3, show->trendWatcher.playerName, show->trendWatcher.language); + sTVShowState = TRENDWATCHER_STATE_OUTRO; + break; + case TRENDWATCHER_STATE_OUTRO: + CopyEasyChatWord(gStringVar1, show->trendWatcher.words[0]); + CopyEasyChatWord(gStringVar2, show->trendWatcher.words[1]); + TVShowDone(); } ShowFieldMessage(sTVDewfordTrendWatcherNetworkTextGroup[state]); } From 5ba858d19c7134c6bf40f97b276b819e3ff4261a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 31 Mar 2021 16:56:10 -0400 Subject: [PATCH 072/762] Label missing easy chat symbols --- graphics/{misc => easy_chat}/interview.pal | 0 .../{misc => easy_chat}/interview_frame.png | Bin .../{misc/8597C24.pal => easy_chat/text.pal} | 0 .../8597C1C.pal => easy_chat/title_text.pal} | 0 src/easy_chat.c | 31 ++++++++++-------- 5 files changed, 17 insertions(+), 14 deletions(-) rename graphics/{misc => easy_chat}/interview.pal (100%) rename graphics/{misc => easy_chat}/interview_frame.png (100%) rename graphics/{misc/8597C24.pal => easy_chat/text.pal} (100%) rename graphics/{misc/8597C1C.pal => easy_chat/title_text.pal} (100%) diff --git a/graphics/misc/interview.pal b/graphics/easy_chat/interview.pal similarity index 100% rename from graphics/misc/interview.pal rename to graphics/easy_chat/interview.pal diff --git a/graphics/misc/interview_frame.png b/graphics/easy_chat/interview_frame.png similarity index 100% rename from graphics/misc/interview_frame.png rename to graphics/easy_chat/interview_frame.png diff --git a/graphics/misc/8597C24.pal b/graphics/easy_chat/text.pal similarity index 100% rename from graphics/misc/8597C24.pal rename to graphics/easy_chat/text.pal diff --git a/graphics/misc/8597C1C.pal b/graphics/easy_chat/title_text.pal similarity index 100% rename from graphics/misc/8597C1C.pal rename to graphics/easy_chat/title_text.pal diff --git a/src/easy_chat.c b/src/easy_chat.c index fcbd1fba381a..13e89c31f96f 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -230,14 +230,14 @@ static void DoQuizSetQuestionEasyChatScreen(void); #define PALTAG_TRIANGLE_CURSOR 0 #define PALTAG_RECTANGLE_CURSOR 1 #define PALTAG_MISC_UI 2 -#define PALTAG_3 3 +#define PALTAG_RS_INTERVIEW_FRAME 3 #define GFXTAG_TRIANGLE_CURSOR 0 #define GFXTAG_RECTANGLE_CURSOR 1 #define GFXTAG_SCROLL_INDICATOR 2 #define GFXTAG_START_SELECT_BUTTONS 3 #define GFXTAG_MODE_WINDOW 4 -#define GFXTAG_5 5 +#define GFXTAG_RS_INTERVIEW_FRAME 5 #define GFXTAG_BUTTON_WINDOW 6 // State values for sEasyChatScreen->inputState @@ -698,13 +698,16 @@ static const u16 sTriangleCursor_Pal[] = INCBIN_U16("graphics/easy_chat/triangle static const u32 sTriangleCursor_Gfx[] = INCBIN_U32("graphics/easy_chat/triangle_cursor.4bpp"); static const u32 sScrollIndicator_Gfx[] = INCBIN_U32("graphics/easy_chat/scroll_indicator.4bpp"); static const u32 sStartSelectButtons_Gfx[] = INCBIN_U32("graphics/easy_chat/start_select_buttons.4bpp"); -static const u16 sUnknown_085979C0[] = INCBIN_U16("graphics/misc/interview_frame.gbapal"); -static const u32 sUnknown_085979E0[] = INCBIN_U32("graphics/misc/interview_frame.4bpp.lz"); +// In Ruby/Sapphire Easy Chat screens had a black background, and when the player & interviewer were present +// on screen the interview_frame gfx was shown behind them. +// In Emerald all Easy Chat screens have a filled background, so these gfx go unused +static const u16 sRSInterviewFrame_Pal[] = INCBIN_U16("graphics/easy_chat/interview_frame.gbapal"); +static const u32 sRSInterviewFrame_Gfx[] = INCBIN_U32("graphics/easy_chat/interview_frame.4bpp.lz"); static const u16 sTextInputFrameOrange_Pal[] = INCBIN_U16("graphics/easy_chat/text_input_frame_orange.gbapal"); static const u16 sTextInputFrameGreen_Pal[] = INCBIN_U16("graphics/easy_chat/text_input_frame_green.gbapal"); static const u32 sTextInputFrame_Gfx[] = INCBIN_U32("graphics/easy_chat/text_input_frame.4bpp.lz"); -static const u16 sUnknown_08597C1C[] = INCBIN_U16("graphics/misc/8597C1C.gbapal"); -static const u16 sUnknown_08597C24[] = INCBIN_U16("graphics/misc/8597C24.gbapal"); +static const u16 sTitleText_Pal[] = INCBIN_U16("graphics/easy_chat/title_text.gbapal"); +static const u16 sText_Pal[] = INCBIN_U16("graphics/easy_chat/text.gbapal"); static const struct EasyChatPhraseFrameDimensions sPhraseFrameDimensions[] = { [FRAMEID_GENERAL_2x2] = { @@ -895,17 +898,17 @@ static const struct SpritePalette sSpritePalettes[] = { .tag = PALTAG_MISC_UI, // The palette is generated from the button window but used for various parts of the UI }, { - .data = sUnknown_085979C0, - .tag = PALTAG_3, + .data = sRSInterviewFrame_Pal, + .tag = PALTAG_RS_INTERVIEW_FRAME, }, {0} }; static const struct CompressedSpriteSheet sCompressedSpriteSheets[] = { { - .data = sUnknown_085979E0, + .data = sRSInterviewFrame_Gfx, .size = 0x800, - .tag = GFXTAG_5, + .tag = GFXTAG_RS_INTERVIEW_FRAME, }, { .data = gEasyChatRectangleCursor_Gfx, @@ -3914,10 +3917,10 @@ static void LoadEasyChatPalettes(void) LoadPalette(gEasyChatMode_Pal, 0, 32); LoadPalette(sTextInputFrameOrange_Pal, 1 * 16, 32); LoadPalette(sTextInputFrameGreen_Pal, 4 * 16, 32); - LoadPalette(sUnknown_08597C1C, 10 * 16, 8); - LoadPalette(sUnknown_08597C24, 11 * 16, 12); - LoadPalette(sUnknown_08597C24, 15 * 16, 12); - LoadPalette(sUnknown_08597C24, 3 * 16, 12); + LoadPalette(sTitleText_Pal, 10 * 16, 8); + LoadPalette(sText_Pal, 11 * 16, 12); + LoadPalette(sText_Pal, 15 * 16, 12); + LoadPalette(sText_Pal, 3 * 16, 12); } static void PrintTitle(void) From 69a6a97468d18d53058a188def1e9c21cd3596b0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 31 Mar 2021 17:29:09 -0400 Subject: [PATCH 073/762] Remove incorrect comment --- src/dewford_trend.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/dewford_trend.c b/src/dewford_trend.c index 5ce2844d479b..09a8d2afe919 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -27,7 +27,6 @@ - rand: This is a 16 bit value generated once when the phrase is created. It's used in calculations for Feebas tiles, Slot Machines, and Match Call. - It's also used to determine how much "trendiness" is lost over time (see below). - trendiness / maxTrendiness: Initialized as a random value between 30-127 inclusive. This is used to compare how trendy one phrase is vs another. If a submitted phrase is From 038505984ccb5286c49ecca68248b7d71ce799e2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 1 Apr 2021 02:42:02 -0400 Subject: [PATCH 074/762] Fix bg event macros --- asm/macros/map.inc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/asm/macros/map.inc b/asm/macros/map.inc index b520eb21672b..74ed069179d9 100644 --- a/asm/macros/map.inc +++ b/asm/macros/map.inc @@ -51,25 +51,25 @@ inc _num_traps .endm - .macro bg_event x, y, elevation, kind, arg6, arg7, arg8 + .macro bg_event x, y, elevation, kind, arg6, arg7 .2byte \x, \y .byte \elevation, \kind .2byte 0 - .if \kind < 5 + .if \kind != BG_EVENT_HIDDEN_ITEM .4byte \arg6 .else .2byte \arg6 - .byte \arg7, \arg8 + .2byte \arg7 .endif inc _num_signs .endm .macro bg_hidden_item_event x, y, height, item, flag - bg_event \x, \y, \height, 7, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START), 0 + bg_event \x, \y, \height, BG_EVENT_HIDDEN_ITEM, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START) .endm .macro bg_secret_base_event x, y, height, secret_base_id - bg_event \x, \y, \height, 8, \secret_base_id, 0, 0 + bg_event \x, \y, \height, BG_EVENT_SECRET_BASE, \secret_base_id .endm .macro map_events npcs, warps, traps, signs From f58465a274fbae2275766c50206be1a364f21abc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 1 Apr 2021 02:35:14 -0400 Subject: [PATCH 075/762] Document match_call.c --- gflib/string_util.h | 8 +- graphics/interface/menu_border.png | Bin 150 -> 0 bytes graphics/pokenav/match_call_window.png | Bin 0 -> 209 bytes graphics/unknown/unknown_60EA4C.pal | 19 -- include/match_call.h | 4 +- src/match_call.c | 269 ++++++++++++++----------- src/pokenav_match_call_2.c | 6 +- 7 files changed, 163 insertions(+), 143 deletions(-) delete mode 100644 graphics/interface/menu_border.png create mode 100644 graphics/pokenav/match_call_window.png delete mode 100644 graphics/unknown/unknown_60EA4C.pal diff --git a/gflib/string_util.h b/gflib/string_util.h index b921d2391de9..229193d52d7e 100644 --- a/gflib/string_util.h +++ b/gflib/string_util.h @@ -1,10 +1,10 @@ #ifndef GUARD_STRING_UTIL_H #define GUARD_STRING_UTIL_H -extern u8 gStringVar1[]; -extern u8 gStringVar2[]; -extern u8 gStringVar3[]; -extern u8 gStringVar4[]; +extern u8 gStringVar1[0x100]; +extern u8 gStringVar2[0x100]; +extern u8 gStringVar3[0x100]; +extern u8 gStringVar4[0x3E8]; enum StringConvertMode { diff --git a/graphics/interface/menu_border.png b/graphics/interface/menu_border.png deleted file mode 100644 index ba748b169d80ae574c96b36167a2db68e49b928a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4nWMo0wfq#{`6)7Qn8*cjv*3LefzbA4j6E-?hMXN zjrBj_awRx=vQl>O!d)zCjoaB~MAm&NE)cEU_jgKGp>%}b8ph@eGQy{{C+}Xipnb8L yN5i2btvW#`)D9IY9*8>BJguQ!c;6P5n!U_!3+J}lY%GriS?KBN=d#Wzp$Py({4|^Z diff --git a/graphics/pokenav/match_call_window.png b/graphics/pokenav/match_call_window.png new file mode 100644 index 0000000000000000000000000000000000000000..0541bf1476eab2b74521d8d0ec02ba552b254aac GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^4nWMo!VDyL`#gCAqznRlLR^9L|NsAi0wL1zyiaLx~2FB|F-j96O|)8c*jL6fkOXv@)l#1~7y*JWvo( yFfmk+W)E*j(PiG$oWM0f_FTgo)fr4F>zNtsWfE(5`KsxHZ1i;Xb6Mw<&;$UxPD*|N literal 0 HcmV?d00001 diff --git a/graphics/unknown/unknown_60EA4C.pal b/graphics/unknown/unknown_60EA4C.pal deleted file mode 100644 index 87bb7840e271..000000000000 --- a/graphics/unknown/unknown_60EA4C.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -255 255 255 -0 0 0 -197 197 205 -32 222 148 -106 238 180 -180 255 213 -213 197 255 -238 230 255 -255 189 180 -255 222 213 -189 148 0 -238 238 230 -0 0 0 -0 0 0 -0 0 0 diff --git a/include/match_call.h b/include/match_call.h index bc5f374bd1ba..8aebb3bc77d8 100644 --- a/include/match_call.h +++ b/include/match_call.h @@ -17,7 +17,7 @@ bool32 IsMatchCallTaskActive(void); void StartMatchCallFromScript(const u8 *message); void BufferPokedexRatingForMatchCall(u8 *destStr); bool32 SelectMatchCallMessage(int, u8 *); -void sub_8197184(u32 windowId, u32 destOffset, u32 paletteId); -void sub_81971C4(u32 windowId, u32 tileOffset, u32 paletteId); +void LoadMatchCallWindowGfx(u32 windowId, u32 destOffset, u32 paletteId); +void DrawMatchCallTextBoxBorder(u32 windowId, u32 tileOffset, u32 paletteId); #endif //GUARD_MATCH_CALL_H diff --git a/src/match_call.c b/src/match_call.c index b78441f9311c..c047ca123ecc 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -39,7 +39,7 @@ struct MatchCallState u32 minutes; u16 trainerId; u8 stepCounter; - u8 triggeredFromScript; + bool8 triggeredFromScript; }; struct MatchCallTrainerTextInfo @@ -82,27 +82,27 @@ static u16 GetRematchTrainerLocation(int); static bool32 TrainerIsEligibleForRematch(int); static void StartMatchCall(void); static void ExecuteMatchCall(u8); -static void DrawMatchCallTextBoxBorder(u32, u32, u32); -static void sub_8196694(u8); +static void DrawMatchCallTextBoxBorder_Internal(u32, u32, u32); +static void Task_SpinPokenavIcon(u8); static void InitMatchCallTextPrinter(int, const u8 *); -static bool32 ExecuteMatchCallTextPrinter(int); +static bool32 RunMatchCallTextPrinter(int); static const struct MatchCallText *GetSameRouteMatchCallText(int, u8 *); static const struct MatchCallText *GetDifferentRouteMatchCallText(int, u8 *); static const struct MatchCallText *GetBattleMatchCallText(int, u8 *); static const struct MatchCallText *GetGeneralMatchCallText(int, u8 *); -static bool32 sub_8196D74(int); +static bool32 ShouldTrainerRequestBattle(int); static void BuildMatchCallString(int, const struct MatchCallText *, u8 *); static u16 GetFrontierStreakInfo(u16, u32 *); static void PopulateMatchCallStringVars(int, const s8 *); static void PopulateMatchCallStringVar(int, int, u8 *); -static bool32 LoadMatchCallWindowGfx(u8); -static bool32 MoveMatchCallWindowToVram(u8); -static bool32 PrintMatchCallIntroEllipsis(u8); -static bool32 sub_81962B0(u8); -static bool32 sub_81962D8(u8); -static bool32 sub_8196330(u8); -static bool32 sub_8196390(u8); -static bool32 sub_81963F0(u8); +static bool32 MatchCall_LoadGfx(u8); +static bool32 MatchCall_DrawWindow(u8); +static bool32 MatchCall_ReadyIntro(u8); +static bool32 MatchCall_SlideWindowIn(u8); +static bool32 MatchCall_PrintIntro(u8); +static bool32 MatchCall_PrintMessage(u8); +static bool32 MatchCall_SlideWindowOut(u8); +static bool32 MatchCall_EndCall(u8); static void PopulateTrainerName(int, u8 *); static void PopulateMapName(int, u8 *); static void PopulateSpeciesFromTrainerLocation(int, u8 *); @@ -977,7 +977,7 @@ void InitMatchCallCounters(void) static u32 GetCurrentTotalMinutes(struct Time *time) { - return time->days * 1440 + time->hours * 60 + time->minutes; + return time->days * 24 * 60 + time->hours * 60 + time->minutes; } static bool32 UpdateMatchCallMinutesCounter(void) @@ -1041,11 +1041,11 @@ static bool32 SelectMatchCallTrainer(void) { u32 matchCallId; u32 numRegistered = GetNumRegisteredNPCs(); - if (!numRegistered) + if (numRegistered == 0) return FALSE; gMatchCallState.trainerId = GetActiveMatchCallTrainerId(Random() % numRegistered); - gMatchCallState.triggeredFromScript = 0; + gMatchCallState.triggeredFromScript = FALSE; if (gMatchCallState.trainerId == REMATCH_TABLE_ENTRIES) return FALSE; @@ -1085,10 +1085,23 @@ static u32 GetActiveMatchCallTrainerId(u32 activeMatchCallId) return REMATCH_TABLE_ENTRIES; } +/* + From the function calls below, a call can only be triggered... + - If the player has match call + - Every 10th step + - Every 10 minutes + - 1/3 of the time (or 2/3 of the time, if the lead party Pokémon has Lightning Rod) + - If in a valid outdoor map (not Safari Zone, not underwater, not Mt Chimney with Team Magma, not Sootopolis with legendaries) + - If an eligible trainer to call the player is selected +*/ bool32 TryStartMatchCall(void) { - if (FlagGet(FLAG_HAS_MATCH_CALL) && UpdateMatchCallStepCounter() && UpdateMatchCallMinutesCounter() - && CheckMatchCallChance() && MapAllowsMatchCall() && SelectMatchCallTrainer()) + if (FlagGet(FLAG_HAS_MATCH_CALL) + && UpdateMatchCallStepCounter() + && UpdateMatchCallMinutesCounter() + && CheckMatchCallChance() + && MapAllowsMatchCall() + && SelectMatchCallTrainer()) { StartMatchCall(); return TRUE; @@ -1099,7 +1112,7 @@ bool32 TryStartMatchCall(void) void StartMatchCallFromScript(const u8 *message) { - gMatchCallState.triggeredFromScript = 1; + gMatchCallState.triggeredFromScript = TRUE; StartMatchCall(); } @@ -1122,33 +1135,37 @@ static void StartMatchCall(void) CreateTask(ExecuteMatchCall, 1); } -static const u16 sUnknown_0860EA4C[] = INCBIN_U16("graphics/unknown/unknown_60EA4C.gbapal"); -static const u8 sUnknown_0860EA6C[] = INCBIN_U8("graphics/interface/menu_border.4bpp"); -static const u16 sPokeNavIconPalette[] = INCBIN_U16("graphics/pokenav/icon.gbapal"); -static const u32 sPokeNavIconGfx[] = INCBIN_U32("graphics/pokenav/icon.4bpp.lz"); +static const u16 sMatchCallWindow_Pal[] = INCBIN_U16("graphics/pokenav/match_call_window.gbapal"); +static const u8 sMatchCallWindow_Gfx[] = INCBIN_U8("graphics/pokenav/match_call_window.4bpp"); +static const u16 sPokenavIcon_Pal[] = INCBIN_U16("graphics/pokenav/icon.gbapal"); +static const u32 sPokenavIcon_Gfx[] = INCBIN_U32("graphics/pokenav/icon.4bpp.lz"); static const u8 sText_PokenavCallEllipsis[] = _("………………\p"); +#define tState data[0] +#define tWindowId data[2] +#define tIconTaskId data[5] + static bool32 (*const sMatchCallTaskFuncs[])(u8) = { - LoadMatchCallWindowGfx, - MoveMatchCallWindowToVram, - PrintMatchCallIntroEllipsis, - sub_81962B0, - sub_81962D8, - sub_8196330, - sub_8196390, - sub_81963F0, + MatchCall_LoadGfx, + MatchCall_DrawWindow, + MatchCall_ReadyIntro, + MatchCall_SlideWindowIn, + MatchCall_PrintIntro, + MatchCall_PrintMessage, + MatchCall_SlideWindowOut, + MatchCall_EndCall, }; static void ExecuteMatchCall(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - if (sMatchCallTaskFuncs[taskData[0]](taskId)) + s16 *data = gTasks[taskId].data; + if (sMatchCallTaskFuncs[tState](taskId)) { - taskData[0]++; - taskData[1] = 0; - if ((u16)taskData[0] > 7) + tState++; + data[1] = 0; // Never read + if ((u16)tState > 7) DestroyTask(taskId); } } @@ -1164,65 +1181,69 @@ static const struct WindowTemplate sMatchCallTextWindow = .baseBlock = 0x200 }; -static bool32 LoadMatchCallWindowGfx(u8 taskId) +#define TILE_MC_WINDOW 0x270 +#define TILE_POKENAV_ICON 0x279 + +static bool32 MatchCall_LoadGfx(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - taskData[2] = AddWindow(&sMatchCallTextWindow); - if (taskData[2] == WINDOW_NONE) + s16 *data = gTasks[taskId].data; + tWindowId = AddWindow(&sMatchCallTextWindow); + if (tWindowId == WINDOW_NONE) { DestroyTask(taskId); return FALSE; } - if (LoadBgTiles(0, sUnknown_0860EA6C, sizeof(sUnknown_0860EA6C), 0x270) == 0xFFFF) + if (LoadBgTiles(0, sMatchCallWindow_Gfx, sizeof(sMatchCallWindow_Gfx), TILE_MC_WINDOW) == 0xFFFF) { - RemoveWindow(taskData[2]); + RemoveWindow(tWindowId); DestroyTask(taskId); return FALSE; } - if (!DecompressAndCopyTileDataToVram(0, sPokeNavIconGfx, 0, 0x279, 0)) + if (!DecompressAndCopyTileDataToVram(0, sPokenavIcon_Gfx, 0, TILE_POKENAV_ICON, 0)) { - RemoveWindow(taskData[2]); + RemoveWindow(tWindowId); DestroyTask(taskId); return FALSE; } - FillWindowPixelBuffer(taskData[2], PIXEL_FILL(8)); - LoadPalette(sUnknown_0860EA4C, 0xE0, 0x20); - LoadPalette(sPokeNavIconPalette, 0xF0, 0x20); + FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); + LoadPalette(sMatchCallWindow_Pal, 0xE0, sizeof(sMatchCallWindow_Pal)); + LoadPalette(sPokenavIcon_Pal, 0xF0, sizeof(sPokenavIcon_Pal)); ChangeBgY(0, -0x2000, 0); return TRUE; } -static bool32 MoveMatchCallWindowToVram(u8 taskId) +static bool32 MatchCall_DrawWindow(u8 taskId) { - s16 *taskData = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (FreeTempTileDataBuffersIfPossible()) return FALSE; - PutWindowTilemap(taskData[2]); - DrawMatchCallTextBoxBorder(taskData[2], 0x270, 14); - WriteSequenceToBgTilemapBuffer(0, 0xF279, 1, 15, 4, 4, 17, 1); - taskData[5] = CreateTask(sub_8196694, 10); - CopyWindowToVram(taskData[2], 2); + PutWindowTilemap(tWindowId); + DrawMatchCallTextBoxBorder_Internal(tWindowId, TILE_MC_WINDOW, 14); + WriteSequenceToBgTilemapBuffer(0, (0xF << 12) | TILE_POKENAV_ICON, 1, 15, 4, 4, 17, 1); + tIconTaskId = CreateTask(Task_SpinPokenavIcon, 10); + CopyWindowToVram(tWindowId, 2); CopyBgTilemapBufferToVram(0); return TRUE; } -static bool32 PrintMatchCallIntroEllipsis(u8 taskId) +static bool32 MatchCall_ReadyIntro(u8 taskId) { - s16 *taskData = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!IsDma3ManagerBusyWithBgCopy()) { - InitMatchCallTextPrinter(taskData[2], sText_PokenavCallEllipsis); + // Note that "..." is not printed yet, just readied + InitMatchCallTextPrinter(tWindowId, sText_PokenavCallEllipsis); return TRUE; } return FALSE; } -static bool32 sub_81962B0(u8 taskId) +static bool32 MatchCall_SlideWindowIn(u8 taskId) { if (ChangeBgY(0, 0x600, 1) >= 0) { @@ -1233,29 +1254,30 @@ static bool32 sub_81962B0(u8 taskId) return FALSE; } -static bool32 sub_81962D8(u8 taskId) +static bool32 MatchCall_PrintIntro(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - if (!ExecuteMatchCallTextPrinter(taskData[2])) + s16 *data = gTasks[taskId].data; + if (!RunMatchCallTextPrinter(tWindowId)) { - FillWindowPixelBuffer(taskData[2], PIXEL_FILL(8)); + FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); + + // Ready the message if (!gMatchCallState.triggeredFromScript) SelectMatchCallMessage(gMatchCallState.trainerId, gStringVar4); - - InitMatchCallTextPrinter(taskData[2], gStringVar4); + InitMatchCallTextPrinter(tWindowId, gStringVar4); return TRUE; } return FALSE; } -static bool32 sub_8196330(u8 taskId) +static bool32 MatchCall_PrintMessage(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - if (!ExecuteMatchCallTextPrinter(taskData[2]) && !IsSEPlaying() && JOY_NEW(A_BUTTON | B_BUTTON)) + s16 *data = gTasks[taskId].data; + if (!RunMatchCallTextPrinter(tWindowId) && !IsSEPlaying() && JOY_NEW(A_BUTTON | B_BUTTON)) { - FillWindowPixelBuffer(taskData[2], PIXEL_FILL(8)); - CopyWindowToVram(taskData[2], 2); + FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); + CopyWindowToVram(tWindowId, 2); PlaySE(SE_POKENAV_HANG_UP); return TRUE; } @@ -1263,14 +1285,14 @@ static bool32 sub_8196330(u8 taskId) return FALSE; } -static bool32 sub_8196390(u8 taskId) +static bool32 MatchCall_SlideWindowOut(u8 taskId) { - s16 *taskData = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (ChangeBgY(0, 0x600, 2) <= -0x2000) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 14, 30, 6); - DestroyTask(taskData[5]); - RemoveWindow(taskData[2]); + DestroyTask(tIconTaskId); + RemoveWindow(tWindowId); CopyBgTilemapBufferToVram(0); return TRUE; } @@ -1278,7 +1300,7 @@ static bool32 sub_8196390(u8 taskId) return FALSE; } -static bool32 sub_81963F0(u8 taskId) +static bool32 MatchCall_EndCall(u8 taskId) { u8 playerObjectId; if (!IsDma3ManagerBusyWithBgCopy() && !IsSEPlaying()) @@ -1300,7 +1322,7 @@ static bool32 sub_81963F0(u8 taskId) return FALSE; } -static void DrawMatchCallTextBoxBorder(u32 windowId, u32 tileOffset, u32 paletteId) +static void DrawMatchCallTextBoxBorder_Internal(u32 windowId, u32 tileOffset, u32 paletteId) { int bg, x, y, width, height; int tileNum; @@ -1335,40 +1357,48 @@ static void InitMatchCallTextPrinter(int windowId, const u8 *str) printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.unk = 0; - printerTemplate.fgColor = 10; - printerTemplate.bgColor = 8; - printerTemplate.shadowColor = 14; - gTextFlags.useAlternateDownArrow = 0; + printerTemplate.fgColor = TEXT_DYNAMIC_COLOR_1; + printerTemplate.bgColor = TEXT_COLOR_BLUE; + printerTemplate.shadowColor = TEXT_DYNAMIC_COLOR_5; + gTextFlags.useAlternateDownArrow = FALSE; AddTextPrinter(&printerTemplate, GetPlayerTextSpeedDelay(), NULL); } -static bool32 ExecuteMatchCallTextPrinter(int windowId) +static bool32 RunMatchCallTextPrinter(int windowId) { if (JOY_HELD(A_BUTTON)) - gTextFlags.canABSpeedUpPrint = 1; + gTextFlags.canABSpeedUpPrint = TRUE; else - gTextFlags.canABSpeedUpPrint = 0; + gTextFlags.canABSpeedUpPrint = FALSE; RunTextPrinters(); return IsTextPrinterActive(windowId); } -static void sub_8196694(u8 taskId) +#define tTimer data[0] +#define tSpinStage data[1] +#define tTileNum data[2] + +static void Task_SpinPokenavIcon(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - if (++taskData[0] > 8) + s16 *data = gTasks[taskId].data; + if (++tTimer > 8) { - taskData[0] = 0; - if (++taskData[1] > 7) - taskData[1] = 0; + tTimer = 0; + if (++tSpinStage > 7) + tSpinStage = 0; - taskData[2] = (taskData[1] * 16) + 0x279; - WriteSequenceToBgTilemapBuffer(0, taskData[2] | ~0xFFF, 1, 15, 4, 4, 17, 1); + tTileNum = (tSpinStage * 16) + TILE_POKENAV_ICON; + WriteSequenceToBgTilemapBuffer(0, tTileNum | ~0xFFF, 1, 15, 4, 4, 17, 1); CopyBgTilemapBufferToVram(0); } } +#undef tTimer +#undef tSpinStage +#undef tTileNum + static bool32 TrainerIsEligibleForRematch(int matchCallId) { return gSaveBlock1Ptr->trainerRematches[matchCallId] > 0; @@ -1392,7 +1422,10 @@ static u32 GetNumRematchTrainersFought(void) return count; } -static u32 sub_8196774(int arg0) +// Look through the rematch table for trainers that have been defeated once before. +// Return the index into the rematch table of the nth defeated trainer, +// or REMATCH_TABLE_ENTRIES if fewer than n rematch trainers have been defeated. +static u32 GetNthRematchTrainerFought(int n) { u32 i, count; @@ -1400,7 +1433,7 @@ static u32 sub_8196774(int arg0) { if (HasTrainerBeenFought(gRematchTable[i].trainerIds[0])) { - if (count == arg0) + if (count == n) return i; count++; @@ -1418,12 +1451,18 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) matchCallId = GetTrainerMatchCallId(trainerId); gBattleFrontierStreakInfo.facilityId = 0; + + // If the player is on the same route as the trainer + // and they can be rematched, they will always request a battle if (TrainerIsEligibleForRematch(matchCallId) && GetRematchTrainerLocation(matchCallId) == gMapHeader.regionMapSectionId) { matchCallText = GetSameRouteMatchCallText(matchCallId, str); } - else if (sub_8196D74(matchCallId)) + // If the player is not on the same route as the trainer + // and they can be rematched, there is a random chance for + // the trainer to request a battle + else if (ShouldTrainerRequestBattle(matchCallId)) { matchCallText = GetDifferentRouteMatchCallText(matchCallId, str); retVal = TRUE; @@ -1431,10 +1470,12 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) } else if (Random() % 3) { + // Message talking about a battle the NPC had matchCallText = GetBattleMatchCallText(matchCallId, str); } else { + // Message talking about something else matchCallText = GetGeneralMatchCallText(matchCallId, str); } @@ -1577,7 +1618,7 @@ static void PopulateTrainerName(int matchCallId, u8 *destStr) { u32 i; u16 trainerId = sMatchCallTrainers[matchCallId].trainerId; - for (i = 0; i < 6; i++) + for (i = 0; i < ARRAY_COUNT(sMultiTrainerMatchCallTexts); i++) { if (sMultiTrainerMatchCallTexts[i].trainerId == trainerId) { @@ -1769,13 +1810,14 @@ static int GetNumOwnedBadges(void) return i; } -static bool32 sub_8196D74(int matchCallId) +// Whether or not a trainer calling the player from a different route should request a battle +static bool32 ShouldTrainerRequestBattle(int matchCallId) { int dayCount; int otId; - u16 rand; + u16 dewfordRand; int numRematchTrainersFought; - int var0, var1, var2; + int max, rand, n; if (GetNumOwnedBadges() < 5) return FALSE; @@ -1783,14 +1825,14 @@ static bool32 sub_8196D74(int matchCallId) dayCount = RtcGetLocalDayCount(); otId = GetTrainerId(gSaveBlock2Ptr->playerTrainerId) & 0xFFFF; - rand = gSaveBlock1Ptr->dewfordTrends[0].rand; + dewfordRand = gSaveBlock1Ptr->dewfordTrends[0].rand; numRematchTrainersFought = GetNumRematchTrainersFought(); - var0 = (numRematchTrainersFought * 13) / 10; - var1 = ((dayCount ^ rand) + (rand ^ GetGameStat(GAME_STAT_TRAINER_BATTLES))) ^ otId; - var2 = var1 % var0; - if (var2 < numRematchTrainersFought) + max = (numRematchTrainersFought * 13) / 10; + rand = ((dayCount ^ dewfordRand) + (dewfordRand ^ GetGameStat(GAME_STAT_TRAINER_BATTLES))) ^ otId; + n = rand % max; + if (n < numRematchTrainersFought) { - if (sub_8196774(var2) == matchCallId) + if (GetNthRematchTrainerFought(n) == matchCallId) return TRUE; } @@ -1971,7 +2013,7 @@ void BufferPokedexRatingForMatchCall(u8 *destStr) u8 *str; u8 dexRatingLevel; - u8 *buffer = Alloc(0x3E8); + u8 *buffer = Alloc(sizeof(gStringVar4)); if (!buffer) { destStr[0] = EOS; @@ -1984,18 +2026,15 @@ void BufferPokedexRatingForMatchCall(u8 *destStr) ConvertIntToDecimalStringN(gStringVar2, numCaught, STR_CONV_MODE_LEFT_ALIGN, 3); dexRatingLevel = GetPokedexRatingLevel(numCaught); str = StringCopy(buffer, gBirchDexRatingText_AreYouCurious); - str[0] = CHAR_PROMPT_CLEAR; - str++; + *(str++) = CHAR_PROMPT_CLEAR; str = StringCopy(str, gBirchDexRatingText_SoYouveSeenAndCaught); - str[0] = CHAR_PROMPT_CLEAR; - str++; + *(str++) = CHAR_PROMPT_CLEAR; StringCopy(str, sBirchDexRatingTexts[dexRatingLevel]); str = StringExpandPlaceholders(destStr, buffer); if (IsNationalPokedexEnabled()) { - str[0] = CHAR_PROMPT_CLEAR; - str++; + *(str++) = CHAR_PROMPT_CLEAR; numSeen = GetNationalPokedexCount(FLAG_GET_SEEN); numCaught = GetNationalPokedexCount(FLAG_GET_CAUGHT); ConvertIntToDecimalStringN(gStringVar1, numSeen, STR_CONV_MODE_LEFT_ALIGN, 3); @@ -2006,14 +2045,14 @@ void BufferPokedexRatingForMatchCall(u8 *destStr) Free(buffer); } -void sub_8197184(u32 windowId, u32 destOffset, u32 paletteId) +void LoadMatchCallWindowGfx(u32 windowId, u32 destOffset, u32 paletteId) { u8 bg = GetWindowAttribute(windowId, WINDOW_BG); - LoadBgTiles(bg, sUnknown_0860EA6C, 0x100, destOffset); - LoadPalette(sUnknown_0860EA4C, paletteId << 4, 0x20); + LoadBgTiles(bg, sMatchCallWindow_Gfx, 0x100, destOffset); + LoadPalette(sMatchCallWindow_Pal, paletteId << 4, sizeof(sMatchCallWindow_Pal)); } -void sub_81971C4(u32 windowId, u32 tileOffset, u32 paletteId) +void DrawMatchCallTextBoxBorder(u32 windowId, u32 tileOffset, u32 paletteId) { - DrawMatchCallTextBoxBorder(windowId, tileOffset, paletteId); + DrawMatchCallTextBoxBorder_Internal(windowId, tileOffset, paletteId); } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 593581d0e264..398e174d8f7a 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -1061,15 +1061,15 @@ static void UpdateWindowsToShowCheckPage(struct Pokenav4Struct *state) static void sub_81CC034(struct Pokenav4Struct *state) { state->msgBoxWindowId = AddWindow(&sCallMsgBoxWindowTemplate); - sub_8197184(state->msgBoxWindowId, 1, 4); + LoadMatchCallWindowGfx(state->msgBoxWindowId, 1, 4); sub_81C7B40(); } static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state) { struct Sprite *sprite; - sub_8197184(state->msgBoxWindowId, 1, 4); - sub_81971C4(state->msgBoxWindowId, 1, 4); + LoadMatchCallWindowGfx(state->msgBoxWindowId, 1, 4); + DrawMatchCallTextBoxBorder(state->msgBoxWindowId, 1, 4); FillWindowPixelBuffer(state->msgBoxWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->msgBoxWindowId); CopyWindowToVram(state->msgBoxWindowId, 3); From 1ff6aaf57d591c79c845d2fd15509fa4b9f95f91 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 1 Apr 2021 04:21:26 -0400 Subject: [PATCH 076/762] Add constant use for match call text ids --- src/match_call.c | 1078 ++++++++++++++++++++++++---------------------- 1 file changed, 565 insertions(+), 513 deletions(-) diff --git a/src/match_call.c b/src/match_call.c index c047ca123ecc..fd0db630c4ec 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -34,6 +34,56 @@ #include "constants/songs.h" #include "constants/trainers.h" +// Each match call message has variables that can be populated randomly or +// dependent on the trainer. The below are IDs for how to populate the vars +// in a given message. +// Each message may have up to 3 vars in it +enum { + STR_TRAINER_NAME, + STR_MAP_NAME, + STR_SPECIES_IN_ROUTE, + STR_SPECIES_IN_PARTY, + STR_FACILITY_NAME, + STR_FRONTIER_STREAK, + STR_NONE = -1, +}; +#define STRS_NORMAL_MSG {STR_TRAINER_NAME, STR_NONE, STR_NONE} +#define STRS_WILD_BATTLE {STR_TRAINER_NAME, STR_SPECIES_IN_ROUTE, STR_NONE} +#define STRS_BATTLE_NEGATIVE {STR_TRAINER_NAME, STR_NONE, STR_NONE} +#define STRS_BATTLE_POSITIVE {STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE} +#define STRS_BATTLE_REQUEST {STR_TRAINER_NAME, STR_MAP_NAME, STR_NONE} +#define STRS_FRONTIER {STR_TRAINER_NAME, STR_FACILITY_NAME, STR_FRONTIER_STREAK} + +#define NUM_STRVARS_IN_MSG 3 + +// Topic IDs for sMatchCallGeneralTopics +enum { + GEN_TOPIC_PERSONAL = 1, + GEN_TOPIC_STREAK, + GEN_TOPIC_STREAK_RECORD, + GEN_TOPIC_B_DOME, + GEN_TOPIC_B_PIKE, + GEN_TOPIC_B_PYRAMID, +}; + +// Topic IDs for sMatchCallBattleTopics +enum { + B_TOPIC_WILD = 1, + B_TOPIC_NEGATIVE, + B_TOPIC_POSITIVE, +}; + +// Each trainer has a text id for 1 of each of the 3 battle topics +// The msgId is the index into the respective topic's message table +// For all but 2 trainers this index is the same for each topic +#define BATTLE_TEXT_IDS(msgId) {TEXT_ID(B_TOPIC_WILD, (msgId)), TEXT_ID(B_TOPIC_NEGATIVE, (msgId)), TEXT_ID(B_TOPIC_POSITIVE, (msgId))} + +// Topic IDs for sMatchCallBattleRequestTopics +enum { + REQ_TOPIC_SAME_ROUTE = 1, + REQ_TOPIC_DIFF_ROUTE, +}; + struct MatchCallState { u32 minutes; @@ -56,7 +106,7 @@ struct MatchCallTrainerTextInfo struct MatchCallText { const u8 *text; - s8 stringVarFuncIds[3]; + s8 stringVarFuncIds[NUM_STRVARS_IN_MSG]; }; struct MultiTrainerMatchCallText @@ -71,8 +121,8 @@ struct BattleFrontierStreakInfo u16 streak; }; -EWRAM_DATA struct MatchCallState gMatchCallState = {0}; -EWRAM_DATA struct BattleFrontierStreakInfo gBattleFrontierStreakInfo = {0}; +static EWRAM_DATA struct MatchCallState sMatchCallState = {0}; +static EWRAM_DATA struct BattleFrontierStreakInfo sBattleFrontierStreakInfo = {0}; static u32 GetCurrentTotalMinutes(struct Time *); static u32 GetNumRegisteredNPCs(void); @@ -117,851 +167,853 @@ static const struct MatchCallTrainerTextInfo sMatchCallTrainers[] = { .trainerId = TRAINER_ROSE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 3), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 3), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_ANDRES_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) }, - .generalTextId = TEXT_ID(1, 62), + .battleTopicTextIds = BATTLE_TEXT_IDS(12), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 62), .battleFrontierRecordStreakTextIndex = 12, - .sameRouteMatchCallTextId = TEXT_ID(1, 12), - .differentRouteMatchCallTextId = TEXT_ID(2, 12), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 12), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 12), }, { .trainerId = TRAINER_DUSTY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) }, - .generalTextId = TEXT_ID(1, 4), + .battleTopicTextIds = BATTLE_TEXT_IDS(12), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 4), .battleFrontierRecordStreakTextIndex = 12, - .sameRouteMatchCallTextId = TEXT_ID(1, 12), - .differentRouteMatchCallTextId = TEXT_ID(2, 12), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 12), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 12), }, { .trainerId = TRAINER_LOLA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) }, - .generalTextId = TEXT_ID(1, 5), + .battleTopicTextIds = BATTLE_TEXT_IDS(2), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 5), .battleFrontierRecordStreakTextIndex = 2, - .sameRouteMatchCallTextId = TEXT_ID(1, 2), - .differentRouteMatchCallTextId = TEXT_ID(2, 2), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 2), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 2), }, { .trainerId = TRAINER_RICKY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 6), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 6), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_LILA_AND_ROY_1, .unused = 4, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 61), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 61), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_CRISTIN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 10), TEXT_ID(2, 10), TEXT_ID(3, 10) }, - .generalTextId = TEXT_ID(1, 64), + .battleTopicTextIds = BATTLE_TEXT_IDS(10), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 64), .battleFrontierRecordStreakTextIndex = 10, - .sameRouteMatchCallTextId = TEXT_ID(1, 10), - .differentRouteMatchCallTextId = TEXT_ID(2, 10), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 10), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 10), }, { .trainerId = TRAINER_BROOKE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 8), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 8), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_WILTON_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) }, - .generalTextId = TEXT_ID(1, 7), + .battleTopicTextIds = BATTLE_TEXT_IDS(6), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 7), .battleFrontierRecordStreakTextIndex = 6, - .sameRouteMatchCallTextId = TEXT_ID(1, 6), - .differentRouteMatchCallTextId = TEXT_ID(2, 6), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 6), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 6), }, { .trainerId = TRAINER_VALERIE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 9), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 9), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_CINDY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 10), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 10), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_THALIA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 10), TEXT_ID(3, 10) }, - .generalTextId = TEXT_ID(1, 14), + // Thalia and Sawyer are the only ones who use different msg ids for their battle topics + .battleTopicTextIds = { TEXT_ID(B_TOPIC_WILD, 8), TEXT_ID(B_TOPIC_NEGATIVE, 10), TEXT_ID(B_TOPIC_POSITIVE, 10) }, + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 14), .battleFrontierRecordStreakTextIndex = 10, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 10), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 10), }, { .trainerId = TRAINER_JESSICA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 10), TEXT_ID(2, 10), TEXT_ID(3, 10) }, - .generalTextId = TEXT_ID(1, 11), + .battleTopicTextIds = BATTLE_TEXT_IDS(10), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 11), .battleFrontierRecordStreakTextIndex = 10, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 10), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 10), }, { .trainerId = TRAINER_WINSTON_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) }, - .generalTextId = TEXT_ID(1, 12), + .battleTopicTextIds = BATTLE_TEXT_IDS(4), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 12), .battleFrontierRecordStreakTextIndex = 4, - .sameRouteMatchCallTextId = TEXT_ID(1, 4), - .differentRouteMatchCallTextId = TEXT_ID(2, 4), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 4), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 4), }, { .trainerId = TRAINER_STEVE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) }, - .generalTextId = TEXT_ID(1, 13), + .battleTopicTextIds = BATTLE_TEXT_IDS(7), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 13), .battleFrontierRecordStreakTextIndex = 7, - .sameRouteMatchCallTextId = TEXT_ID(1, 7), - .differentRouteMatchCallTextId = TEXT_ID(2, 7), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 7), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 7), }, { .trainerId = TRAINER_TONY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 15), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 15), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_NOB_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 16), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 16), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_KOJI_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 59), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 59), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_FERNANDO_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) }, - .generalTextId = TEXT_ID(1, 17), + .battleTopicTextIds = BATTLE_TEXT_IDS(6), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 17), .battleFrontierRecordStreakTextIndex = 6, - .sameRouteMatchCallTextId = TEXT_ID(1, 6), - .differentRouteMatchCallTextId = TEXT_ID(2, 6), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 6), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 6), }, { .trainerId = TRAINER_DALTON_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) }, - .generalTextId = TEXT_ID(1, 18), + .battleTopicTextIds = BATTLE_TEXT_IDS(4), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 18), .battleFrontierRecordStreakTextIndex = 4, - .sameRouteMatchCallTextId = TEXT_ID(1, 4), - .differentRouteMatchCallTextId = TEXT_ID(2, 4), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 4), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 4), }, { .trainerId = TRAINER_BERNIE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 11), TEXT_ID(2, 11), TEXT_ID(3, 11) }, - .generalTextId = TEXT_ID(1, 19), + .battleTopicTextIds = BATTLE_TEXT_IDS(11), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 19), .battleFrontierRecordStreakTextIndex = 11, - .sameRouteMatchCallTextId = TEXT_ID(1, 11), - .differentRouteMatchCallTextId = TEXT_ID(2, 11), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 11), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 11), }, { .trainerId = TRAINER_ETHAN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 20), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 20), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_JOHN_AND_JAY_1, .unused = 3, - .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) }, - .generalTextId = TEXT_ID(1, 60), + .battleTopicTextIds = BATTLE_TEXT_IDS(12), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 60), .battleFrontierRecordStreakTextIndex = 12, - .sameRouteMatchCallTextId = TEXT_ID(1, 12), - .differentRouteMatchCallTextId = TEXT_ID(2, 12), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 12), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 12), }, { .trainerId = TRAINER_JEFFREY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) }, - .generalTextId = TEXT_ID(1, 21), + .battleTopicTextIds = BATTLE_TEXT_IDS(7), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 21), .battleFrontierRecordStreakTextIndex = 7, - .sameRouteMatchCallTextId = TEXT_ID(1, 7), - .differentRouteMatchCallTextId = TEXT_ID(2, 7), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 7), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 7), }, { .trainerId = TRAINER_CAMERON_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) }, - .generalTextId = TEXT_ID(1, 22), + .battleTopicTextIds = BATTLE_TEXT_IDS(4), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 22), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 4), - .differentRouteMatchCallTextId = TEXT_ID(2, 4), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 4), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 4), }, { .trainerId = TRAINER_JACKI_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 23), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 23), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_WALTER_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) }, - .generalTextId = TEXT_ID(1, 24), + .battleTopicTextIds = BATTLE_TEXT_IDS(12), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 24), .battleFrontierRecordStreakTextIndex = 12, - .sameRouteMatchCallTextId = TEXT_ID(1, 12), - .differentRouteMatchCallTextId = TEXT_ID(2, 12), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 12), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 12), }, { .trainerId = TRAINER_KAREN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) }, - .generalTextId = TEXT_ID(1, 26), + .battleTopicTextIds = BATTLE_TEXT_IDS(2), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 26), .battleFrontierRecordStreakTextIndex = 2, - .sameRouteMatchCallTextId = TEXT_ID(1, 2), - .differentRouteMatchCallTextId = TEXT_ID(2, 2), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 2), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 2), }, { .trainerId = TRAINER_JERRY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 25), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 25), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_ANNA_AND_MEG_1, .unused = 6, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 27), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 27), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_ISABEL_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 14), TEXT_ID(2, 14), TEXT_ID(3, 14) }, - .generalTextId = TEXT_ID(1, 29), + .battleTopicTextIds = BATTLE_TEXT_IDS(14), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 29), .battleFrontierRecordStreakTextIndex = 14, - .sameRouteMatchCallTextId = TEXT_ID(1, 14), - .differentRouteMatchCallTextId = TEXT_ID(2, 14), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 14), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 14), }, { .trainerId = TRAINER_MIGUEL_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 11), TEXT_ID(2, 11), TEXT_ID(3, 11) }, - .generalTextId = TEXT_ID(1, 28), + .battleTopicTextIds = BATTLE_TEXT_IDS(11), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 28), .battleFrontierRecordStreakTextIndex = 11, - .sameRouteMatchCallTextId = TEXT_ID(1, 11), - .differentRouteMatchCallTextId = TEXT_ID(2, 11), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 11), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 11), }, { .trainerId = TRAINER_TIMOTHY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) }, - .generalTextId = TEXT_ID(1, 30), + .battleTopicTextIds = BATTLE_TEXT_IDS(12), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 30), .battleFrontierRecordStreakTextIndex = 12, - .sameRouteMatchCallTextId = TEXT_ID(1, 12), - .differentRouteMatchCallTextId = TEXT_ID(2, 12), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 12), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 12), }, { .trainerId = TRAINER_SHELBY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 13), TEXT_ID(2, 13), TEXT_ID(3, 13) }, - .generalTextId = TEXT_ID(1, 31), + .battleTopicTextIds = BATTLE_TEXT_IDS(13), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 31), .battleFrontierRecordStreakTextIndex = 13, - .sameRouteMatchCallTextId = TEXT_ID(1, 13), - .differentRouteMatchCallTextId = TEXT_ID(2, 13), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 13), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 13), }, { .trainerId = TRAINER_CALVIN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 32), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 32), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_ELLIOT_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 33), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 33), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_ISAIAH_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 38), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 38), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_MARIA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 37), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 37), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_ABIGAIL_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 35), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 35), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_DYLAN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 36), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 36), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_KATELYN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 40), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 40), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_BENJAMIN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 34), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 34), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_PABLO_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 39), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 39), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_NICOLAS_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) }, - .generalTextId = TEXT_ID(1, 41), + .battleTopicTextIds = BATTLE_TEXT_IDS(4), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 41), .battleFrontierRecordStreakTextIndex = 4, - .sameRouteMatchCallTextId = TEXT_ID(1, 4), - .differentRouteMatchCallTextId = TEXT_ID(2, 4), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 4), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 4), }, { .trainerId = TRAINER_ROBERT_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) }, - .generalTextId = TEXT_ID(1, 42), + .battleTopicTextIds = BATTLE_TEXT_IDS(6), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 42), .battleFrontierRecordStreakTextIndex = 6, - .sameRouteMatchCallTextId = TEXT_ID(1, 6), - .differentRouteMatchCallTextId = TEXT_ID(2, 6), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 6), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 6), }, { .trainerId = TRAINER_LAO_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 43), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 43), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_CYNDY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 44), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 44), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_MADELINE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 45), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 45), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_JENNY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 46), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 46), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_DIANA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) }, - .generalTextId = TEXT_ID(1, 47), + .battleTopicTextIds = BATTLE_TEXT_IDS(2), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 47), .battleFrontierRecordStreakTextIndex = 2, - .sameRouteMatchCallTextId = TEXT_ID(1, 2), - .differentRouteMatchCallTextId = TEXT_ID(2, 2), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 2), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 2), }, { .trainerId = TRAINER_AMY_AND_LIV_1, .unused = 2, - .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) }, - .generalTextId = TEXT_ID(1, 48), + .battleTopicTextIds = BATTLE_TEXT_IDS(2), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 48), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 2), - .differentRouteMatchCallTextId = TEXT_ID(2, 2), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 2), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 2), }, { .trainerId = TRAINER_ERNEST_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 49), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 49), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_CORY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 63), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 63), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_EDWIN_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) }, - .generalTextId = TEXT_ID(1, 50), + .battleTopicTextIds = BATTLE_TEXT_IDS(7), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 50), .battleFrontierRecordStreakTextIndex = 7, - .sameRouteMatchCallTextId = TEXT_ID(1, 7), - .differentRouteMatchCallTextId = TEXT_ID(2, 7), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 7), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 7), }, { .trainerId = TRAINER_LYDIA_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 52), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 52), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_ISAAC_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 51), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 51), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_GABRIELLE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) }, - .generalTextId = TEXT_ID(1, 2), + .battleTopicTextIds = BATTLE_TEXT_IDS(8), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 2), .battleFrontierRecordStreakTextIndex = 8, - .sameRouteMatchCallTextId = TEXT_ID(1, 8), - .differentRouteMatchCallTextId = TEXT_ID(2, 8), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 8), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 8), }, { .trainerId = TRAINER_CATHERINE_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 54), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 54), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, { .trainerId = TRAINER_JACKSON_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) }, - .generalTextId = TEXT_ID(1, 53), + .battleTopicTextIds = BATTLE_TEXT_IDS(5), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 53), .battleFrontierRecordStreakTextIndex = 5, - .sameRouteMatchCallTextId = TEXT_ID(1, 5), - .differentRouteMatchCallTextId = TEXT_ID(2, 5), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 5), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 5), }, { .trainerId = TRAINER_HALEY_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) }, - .generalTextId = TEXT_ID(1, 55), + .battleTopicTextIds = BATTLE_TEXT_IDS(2), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 55), .battleFrontierRecordStreakTextIndex = 2, - .sameRouteMatchCallTextId = TEXT_ID(1, 2), - .differentRouteMatchCallTextId = TEXT_ID(2, 2), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 2), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 2), }, { .trainerId = TRAINER_JAMES_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) }, - .generalTextId = TEXT_ID(1, 56), + .battleTopicTextIds = BATTLE_TEXT_IDS(1), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 56), .battleFrontierRecordStreakTextIndex = 1, - .sameRouteMatchCallTextId = TEXT_ID(1, 1), - .differentRouteMatchCallTextId = TEXT_ID(2, 1), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 1), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 1), }, { .trainerId = TRAINER_TRENT_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 57), + .battleTopicTextIds = BATTLE_TEXT_IDS(3), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 57), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_SAWYER_1, .unused = 0, - .battleTopicTextIds = { TEXT_ID(1, 15), TEXT_ID(2, 3), TEXT_ID(3, 3) }, - .generalTextId = TEXT_ID(1, 1), + // Thalia and Sawyer are the only ones who use different msg ids for their battle topics + .battleTopicTextIds = { TEXT_ID(B_TOPIC_WILD, 15), TEXT_ID(B_TOPIC_NEGATIVE, 3), TEXT_ID(B_TOPIC_POSITIVE, 3) }, + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 1), .battleFrontierRecordStreakTextIndex = 3, - .sameRouteMatchCallTextId = TEXT_ID(1, 3), - .differentRouteMatchCallTextId = TEXT_ID(2, 3), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 3), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 3), }, { .trainerId = TRAINER_KIRA_AND_DAN_1, .unused = 1, - .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) }, - .generalTextId = TEXT_ID(1, 58), + .battleTopicTextIds = BATTLE_TEXT_IDS(9), + .generalTextId = TEXT_ID(GEN_TOPIC_PERSONAL, 58), .battleFrontierRecordStreakTextIndex = 9, - .sameRouteMatchCallTextId = TEXT_ID(1, 9), - .differentRouteMatchCallTextId = TEXT_ID(2, 9), + .sameRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_SAME_ROUTE, 9), + .differentRouteMatchCallTextId = TEXT_ID(REQ_TOPIC_DIFF_ROUTE, 9), }, }; static const struct MatchCallText sMatchCallWildBattleTexts[] = { - { .text = MatchCall_WildBattleText1, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText2, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText3, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText4, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText5, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText6, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText7, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText8, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText9, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText10, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText11, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText12, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText13, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText14, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_WildBattleText15, .stringVarFuncIds = { 0, 2, -1 } }, + { .text = MatchCall_WildBattleText1, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText2, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText3, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText4, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText5, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText6, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText7, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText8, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText9, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText10, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText11, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText12, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText13, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText14, .stringVarFuncIds = STRS_WILD_BATTLE }, + { .text = MatchCall_WildBattleText15, .stringVarFuncIds = STRS_WILD_BATTLE }, }; - static const struct MatchCallText sMatchCallNegativeBattleTexts[] = - { - { .text = MatchCall_NegativeBattleText1, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText2, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText3, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText4, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText5, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText6, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText7, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText8, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText9, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText10, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText11, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText12, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText13, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_NegativeBattleText14, .stringVarFuncIds = { 0, -1, -1 } }, +static const struct MatchCallText sMatchCallNegativeBattleTexts[] = +{ + { .text = MatchCall_NegativeBattleText1, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText2, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText3, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText4, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText5, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText6, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText7, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText8, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText9, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText10, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText11, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText12, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText13, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, + { .text = MatchCall_NegativeBattleText14, .stringVarFuncIds = STRS_BATTLE_NEGATIVE }, }; static const struct MatchCallText sMatchCallPositiveBattleTexts[] = { - { .text = MatchCall_PositiveBattleText1, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText2, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText3, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText4, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText5, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText6, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText7, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText8, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText9, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText10, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText11, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText12, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText13, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PositiveBattleText14, .stringVarFuncIds = { 0, 3, -1 } }, + { .text = MatchCall_PositiveBattleText1, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText2, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText3, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText4, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText5, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText6, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText7, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText8, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText9, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText10, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText11, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText12, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText13, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, + { .text = MatchCall_PositiveBattleText14, .stringVarFuncIds = STRS_BATTLE_POSITIVE }, }; static const struct MatchCallText sMatchCallSameRouteBattleRequestTexts[] = { - { .text = MatchCall_SameRouteBattleRequestText1, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText2, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText3, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText4, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText5, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText6, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText7, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText8, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText9, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText10, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText11, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText12, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText13, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_SameRouteBattleRequestText14, .stringVarFuncIds = { 0, 1, -1 } }, + { .text = MatchCall_SameRouteBattleRequestText1, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText2, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText3, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText4, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText5, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText6, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText7, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText8, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText9, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText10, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText11, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText12, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText13, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_SameRouteBattleRequestText14, .stringVarFuncIds = STRS_BATTLE_REQUEST }, }; static const struct MatchCallText sMatchCallDifferentRouteBattleRequestTexts[] = { - { .text = MatchCall_DifferentRouteBattleRequestText1, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText2, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText3, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText4, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText5, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText6, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText7, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText8, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText9, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText10, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText11, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText12, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText13, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_DifferentRouteBattleRequestText14, .stringVarFuncIds = { 0, 1, -1 } }, + { .text = MatchCall_DifferentRouteBattleRequestText1, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText2, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText3, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText4, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText5, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText6, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText7, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText8, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText9, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText10, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText11, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText12, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText13, .stringVarFuncIds = STRS_BATTLE_REQUEST }, + { .text = MatchCall_DifferentRouteBattleRequestText14, .stringVarFuncIds = STRS_BATTLE_REQUEST }, }; static const struct MatchCallText sMatchCallPersonalizedTexts[] = { - { .text = MatchCall_PersonalizedText1, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_PersonalizedText2, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText3, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText4, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText5, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText6, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText7, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText8, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText9, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText10, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText11, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText12, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText13, .stringVarFuncIds = { 0, 2, -1 } }, - { .text = MatchCall_PersonalizedText14, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText15, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText16, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText17, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText18, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText19, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText20, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText21, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText22, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText23, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText24, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText25, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText26, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText27, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText28, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText29, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText30, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText31, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText32, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText33, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText34, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText35, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText36, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText37, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText38, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText39, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText40, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText41, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText42, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText43, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText44, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText45, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText46, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText47, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText48, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText49, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText50, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText51, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_PersonalizedText52, .stringVarFuncIds = { 0, 3, -1 } }, - { .text = MatchCall_PersonalizedText53, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText54, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText55, .stringVarFuncIds = { 0, 1, -1 } }, - { .text = MatchCall_PersonalizedText56, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText57, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText58, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText59, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText60, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText61, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText62, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText63, .stringVarFuncIds = { 0, -1, -1 } }, - { .text = MatchCall_PersonalizedText64, .stringVarFuncIds = { 0, -1, -1 } }, + { .text = MatchCall_PersonalizedText1, .stringVarFuncIds = { STR_TRAINER_NAME, STR_MAP_NAME, STR_NONE } }, + { .text = MatchCall_PersonalizedText2, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText3, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText4, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText5, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText6, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText7, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText8, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText9, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText10, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText11, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText12, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText13, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_ROUTE, STR_NONE } }, + { .text = MatchCall_PersonalizedText14, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText15, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText16, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText17, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText18, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText19, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText20, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText21, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText22, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText23, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText24, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText25, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText26, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText27, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText28, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText29, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText30, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText31, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText32, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText33, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText34, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText35, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText36, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText37, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText38, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText39, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText40, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText41, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText42, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText43, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText44, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText45, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText46, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText47, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText48, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText49, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText50, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText51, .stringVarFuncIds = { STR_TRAINER_NAME, STR_MAP_NAME, STR_NONE } }, + { .text = MatchCall_PersonalizedText52, .stringVarFuncIds = { STR_TRAINER_NAME, STR_SPECIES_IN_PARTY, STR_NONE } }, + { .text = MatchCall_PersonalizedText53, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText54, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText55, .stringVarFuncIds = { STR_TRAINER_NAME, STR_MAP_NAME, STR_NONE } }, + { .text = MatchCall_PersonalizedText56, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText57, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText58, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText59, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText60, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText61, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText62, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText63, .stringVarFuncIds = STRS_NORMAL_MSG }, + { .text = MatchCall_PersonalizedText64, .stringVarFuncIds = STRS_NORMAL_MSG }, }; static const struct MatchCallText sMatchCallBattleFrontierStreakTexts[] = { - { .text = MatchCall_BattleFrontierStreakText1, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText2, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText3, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText4, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText5, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText6, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText7, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText8, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText9, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText10, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText11, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText12, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText13, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierStreakText14, .stringVarFuncIds = { 0, 4, 5 } }, + { .text = MatchCall_BattleFrontierStreakText1, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText2, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText3, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText4, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText5, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText6, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText7, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText8, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText9, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText10, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText11, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText12, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText13, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierStreakText14, .stringVarFuncIds = STRS_FRONTIER }, }; static const struct MatchCallText sMatchCallBattleFrontierRecordStreakTexts[] = { - { .text = MatchCall_BattleFrontierRecordStreakText1, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText2, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText3, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText4, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText5, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText6, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText7, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText8, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText9, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText10, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText11, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText12, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText13, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleFrontierRecordStreakText14, .stringVarFuncIds = { 0, 4, 5 } }, + { .text = MatchCall_BattleFrontierRecordStreakText1, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText2, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText3, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText4, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText5, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText6, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText7, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText8, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText9, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText10, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText11, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText12, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText13, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleFrontierRecordStreakText14, .stringVarFuncIds = STRS_FRONTIER }, }; static const struct MatchCallText sMatchCallBattleDomeTexts[] = { - { .text = MatchCall_BattleDomeText1, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText2, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText3, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText4, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText5, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText6, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText7, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText8, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText9, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText10, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText11, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText12, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText13, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattleDomeText14, .stringVarFuncIds = { 0, 4, 5 } }, + { .text = MatchCall_BattleDomeText1, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText2, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText3, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText4, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText5, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText6, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText7, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText8, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText9, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText10, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText11, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText12, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText13, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattleDomeText14, .stringVarFuncIds = STRS_FRONTIER }, }; static const struct MatchCallText sMatchCallBattlePikeTexts[] = { - { .text = MatchCall_BattlePikeText1, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText2, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText3, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText4, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText5, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText6, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText7, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText8, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText9, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText10, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText11, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText12, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText13, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePikeText14, .stringVarFuncIds = { 0, 4, 5 } }, + { .text = MatchCall_BattlePikeText1, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText2, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText3, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText4, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText5, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText6, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText7, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText8, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText9, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText10, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText11, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText12, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText13, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePikeText14, .stringVarFuncIds = STRS_FRONTIER }, }; static const struct MatchCallText sMatchCallBattlePyramidTexts[] = { - { .text = MatchCall_BattlePyramidText1, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText2, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText3, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText4, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText5, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText6, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText7, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText8, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText9, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText10, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText11, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText12, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText13, .stringVarFuncIds = { 0, 4, 5 } }, - { .text = MatchCall_BattlePyramidText14, .stringVarFuncIds = { 0, 4, 5 } }, + { .text = MatchCall_BattlePyramidText1, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText2, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText3, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText4, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText5, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText6, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText7, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText8, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText9, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText10, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText11, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText12, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText13, .stringVarFuncIds = STRS_FRONTIER }, + { .text = MatchCall_BattlePyramidText14, .stringVarFuncIds = STRS_FRONTIER }, }; static const struct MatchCallText *const sMatchCallBattleTopics[] = { - sMatchCallWildBattleTexts, - sMatchCallNegativeBattleTexts, - sMatchCallPositiveBattleTexts, + [B_TOPIC_WILD - 1] = sMatchCallWildBattleTexts, + [B_TOPIC_NEGATIVE - 1] = sMatchCallNegativeBattleTexts, + [B_TOPIC_POSITIVE - 1] = sMatchCallPositiveBattleTexts, }; static const struct MatchCallText *const sMatchCallBattleRequestTopics[] = { - sMatchCallSameRouteBattleRequestTexts, - sMatchCallDifferentRouteBattleRequestTexts, + [REQ_TOPIC_SAME_ROUTE - 1] = sMatchCallSameRouteBattleRequestTexts, + [REQ_TOPIC_DIFF_ROUTE - 1] = sMatchCallDifferentRouteBattleRequestTexts, }; static const struct MatchCallText *const sMatchCallGeneralTopics[] = { - sMatchCallPersonalizedTexts, - sMatchCallBattleFrontierStreakTexts, - sMatchCallBattleFrontierRecordStreakTexts, - sMatchCallBattleDomeTexts, - sMatchCallBattlePikeTexts, - sMatchCallBattlePyramidTexts, + [GEN_TOPIC_PERSONAL - 1] = sMatchCallPersonalizedTexts, + [GEN_TOPIC_STREAK - 1] = sMatchCallBattleFrontierStreakTexts, + [GEN_TOPIC_STREAK_RECORD - 1] = sMatchCallBattleFrontierRecordStreakTexts, + [GEN_TOPIC_B_DOME - 1] = sMatchCallBattleDomeTexts, + [GEN_TOPIC_B_PIKE - 1] = sMatchCallBattlePikeTexts, + [GEN_TOPIC_B_PYRAMID - 1] = sMatchCallBattlePyramidTexts, }; extern const u8 gBirchDexRatingText_AreYouCurious[]; @@ -971,8 +1023,8 @@ extern const u8 gBirchDexRatingText_OnANationwideBasis[]; void InitMatchCallCounters(void) { RtcCalcLocalTime(); - gMatchCallState.minutes = GetCurrentTotalMinutes(&gLocalTime) + 10; - gMatchCallState.stepCounter = 0; + sMatchCallState.minutes = GetCurrentTotalMinutes(&gLocalTime) + 10; + sMatchCallState.stepCounter = 0; } static u32 GetCurrentTotalMinutes(struct Time *time) @@ -985,9 +1037,9 @@ static bool32 UpdateMatchCallMinutesCounter(void) int curMinutes; RtcCalcLocalTime(); curMinutes = GetCurrentTotalMinutes(&gLocalTime); - if (gMatchCallState.minutes > curMinutes || curMinutes - gMatchCallState.minutes > 9) + if (sMatchCallState.minutes > curMinutes || curMinutes - sMatchCallState.minutes > 9) { - gMatchCallState.minutes = curMinutes; + sMatchCallState.minutes = curMinutes; return TRUE; } @@ -1026,9 +1078,9 @@ static bool32 MapAllowsMatchCall(void) static bool32 UpdateMatchCallStepCounter(void) { - if (++gMatchCallState.stepCounter >= 10) + if (++sMatchCallState.stepCounter >= 10) { - gMatchCallState.stepCounter = 0; + sMatchCallState.stepCounter = 0; return TRUE; } else @@ -1044,12 +1096,12 @@ static bool32 SelectMatchCallTrainer(void) if (numRegistered == 0) return FALSE; - gMatchCallState.trainerId = GetActiveMatchCallTrainerId(Random() % numRegistered); - gMatchCallState.triggeredFromScript = FALSE; - if (gMatchCallState.trainerId == REMATCH_TABLE_ENTRIES) + sMatchCallState.trainerId = GetActiveMatchCallTrainerId(Random() % numRegistered); + sMatchCallState.triggeredFromScript = FALSE; + if (sMatchCallState.trainerId == REMATCH_TABLE_ENTRIES) return FALSE; - matchCallId = GetTrainerMatchCallId(gMatchCallState.trainerId); + matchCallId = GetTrainerMatchCallId(sMatchCallState.trainerId); if (GetRematchTrainerLocation(matchCallId) == gMapHeader.regionMapSectionId && !TrainerIsEligibleForRematch(matchCallId)) return FALSE; @@ -1112,7 +1164,7 @@ bool32 TryStartMatchCall(void) void StartMatchCallFromScript(const u8 *message) { - gMatchCallState.triggeredFromScript = TRUE; + sMatchCallState.triggeredFromScript = TRUE; StartMatchCall(); } @@ -1123,7 +1175,7 @@ bool32 IsMatchCallTaskActive(void) static void StartMatchCall(void) { - if (!gMatchCallState.triggeredFromScript) + if (!sMatchCallState.triggeredFromScript) { ScriptContext2_Enable(); FreezeObjectEvents(); @@ -1262,8 +1314,8 @@ static bool32 MatchCall_PrintIntro(u8 taskId) FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); // Ready the message - if (!gMatchCallState.triggeredFromScript) - SelectMatchCallMessage(gMatchCallState.trainerId, gStringVar4); + if (!sMatchCallState.triggeredFromScript) + SelectMatchCallMessage(sMatchCallState.trainerId, gStringVar4); InitMatchCallTextPrinter(tWindowId, gStringVar4); return TRUE; } @@ -1306,7 +1358,7 @@ static bool32 MatchCall_EndCall(u8 taskId) if (!IsDma3ManagerBusyWithBgCopy() && !IsSEPlaying()) { ChangeBgY(0, 0, 0); - if (!gMatchCallState.triggeredFromScript) + if (!sMatchCallState.triggeredFromScript) { LoadMessageBoxAndBorderGfx(); playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); @@ -1450,7 +1502,7 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) bool32 retVal = FALSE; matchCallId = GetTrainerMatchCallId(trainerId); - gBattleFrontierStreakInfo.facilityId = 0; + sBattleFrontierStreakInfo.facilityId = 0; // If the player is on the same route as the trainer // and they can be rematched, they will always request a battle @@ -1550,8 +1602,8 @@ static const struct MatchCallText *GetGeneralMatchCallText(int matchCallId, u8 * count = Random() % count; for (i = 0; i < NUM_FRONTIER_FACILITIES; i++) { - gBattleFrontierStreakInfo.streak = GetFrontierStreakInfo(i, &topic); - if (gBattleFrontierStreakInfo.streak < 2) + sBattleFrontierStreakInfo.streak = GetFrontierStreakInfo(i, &topic); + if (sBattleFrontierStreakInfo.streak < 2) continue; if (!count) @@ -1560,7 +1612,7 @@ static const struct MatchCallText *GetGeneralMatchCallText(int matchCallId, u8 * count--; } - gBattleFrontierStreakInfo.facilityId = i; + sBattleFrontierStreakInfo.facilityId = i; id = sMatchCallTrainers[matchCallId].battleFrontierRecordStreakTextIndex - 1; return &sMatchCallGeneralTopics[topic][id]; } @@ -1582,7 +1634,7 @@ static u8 *const sMatchCallTextStringVars[] = { gStringVar1, gStringVar2, gStrin static void PopulateMatchCallStringVars(int matchCallId, const s8 *stringVarFuncIds) { int i; - for (i = 0; i < 3; i++) + for (i = 0; i < NUM_STRVARS_IN_MSG; i++) { if (stringVarFuncIds[i] >= 0) PopulateMatchCallStringVar(matchCallId, stringVarFuncIds[i], sMatchCallTextStringVars[i]); @@ -1591,12 +1643,12 @@ static void PopulateMatchCallStringVars(int matchCallId, const s8 *stringVarFunc static void (*const sPopulateMatchCallStringVarFuncs[])(int, u8 *) = { - PopulateTrainerName, - PopulateMapName, - PopulateSpeciesFromTrainerLocation, - PopulateSpeciesFromTrainerParty, - PopulateBattleFrontierFacilityName, - PopulateBattleFrontierStreak, + [STR_TRAINER_NAME] = PopulateTrainerName, + [STR_MAP_NAME] = PopulateMapName, + [STR_SPECIES_IN_ROUTE] = PopulateSpeciesFromTrainerLocation, + [STR_SPECIES_IN_PARTY] = PopulateSpeciesFromTrainerParty, + [STR_FACILITY_NAME] = PopulateBattleFrontierFacilityName, + [STR_FRONTIER_STREAK] = PopulateBattleFrontierStreak, }; static void PopulateMatchCallStringVar(int matchCallId, int funcId, u8 *destStr) @@ -1769,20 +1821,20 @@ static const u8 *const sBattleFrontierFacilityNames[] = static void PopulateBattleFrontierFacilityName(int matchCallId, u8 *destStr) { - StringCopy(destStr, sBattleFrontierFacilityNames[gBattleFrontierStreakInfo.facilityId]); + StringCopy(destStr, sBattleFrontierFacilityNames[sBattleFrontierStreakInfo.facilityId]); } static void PopulateBattleFrontierStreak(int matchCallId, u8 *destStr) { int i = 0; - int streak = gBattleFrontierStreakInfo.streak; + int streak = sBattleFrontierStreakInfo.streak; while (streak != 0) { streak /= 10; i++; } - ConvertIntToDecimalStringN(destStr, gBattleFrontierStreakInfo.streak, STR_CONV_MODE_LEFT_ALIGN, i); + ConvertIntToDecimalStringN(destStr, sBattleFrontierStreakInfo.streak, STR_CONV_MODE_LEFT_ALIGN, i); } static const u16 sBadgeFlags[NUM_BADGES] = @@ -1856,7 +1908,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) streak = gSaveBlock2Ptr->frontier.domeRecordWinStreaks[i][j]; } } - *topicTextId = 3; + *topicTextId = GEN_TOPIC_B_DOME - 1; break; #ifdef BUGFIX case FRONTIER_FACILITY_PIKE: @@ -1868,7 +1920,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) if (streak < gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]; } - *topicTextId = 4; + *topicTextId = GEN_TOPIC_B_PIKE - 1; break; case FRONTIER_FACILITY_TOWER: for (i = 0; i < 4; i++) @@ -1879,7 +1931,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) streak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[i][j]; } } - *topicTextId = 2; + *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_PALACE: for (i = 0; i < 2; i++) @@ -1890,7 +1942,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) streak = gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[i][j]; } } - *topicTextId = 2; + *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; #ifdef BUGFIX case FRONTIER_FACILITY_FACTORY: @@ -1905,7 +1957,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) streak = gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[i][j]; } } - *topicTextId = 2; + *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_ARENA: for (i = 0; i < 2; i++) @@ -1913,7 +1965,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) if (streak < gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]; } - *topicTextId = 2; + *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_PYRAMID: for (i = 0; i < 2; i++) @@ -1921,7 +1973,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) if (streak < gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]; } - *topicTextId = 5; + *topicTextId = GEN_TOPIC_B_PYRAMID - 1; break; } From 691c680908312c883362d0bbc2aad30e986b665a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 1 Apr 2021 14:32:23 -0400 Subject: [PATCH 077/762] Delete unreferenced palette --- graphics/easy_chat/interview.pal | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 graphics/easy_chat/interview.pal diff --git a/graphics/easy_chat/interview.pal b/graphics/easy_chat/interview.pal deleted file mode 100644 index dfe91b5debdc..000000000000 --- a/graphics/easy_chat/interview.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -255 255 148 -255 197 148 -238 139 90 -189 90 41 -255 213 213 -246 180 180 -197 131 131 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -41 49 49 -98 98 98 -180 189 180 -222 213 222 -255 255 255 From 8be2c5d60b54347c9df22410d97255d836d9fc9d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 01:49:38 -0400 Subject: [PATCH 078/762] Document Contest Lady TV Show --- data/text/tv.inc | 8 +-- include/constants/lilycove_lady.h | 10 +++- include/constants/tv.h | 8 ++- include/event_scripts.h | 8 +-- include/global.tv.h | 4 +- include/lilycove_lady.h | 2 +- src/lilycove_lady.c | 19 ++----- src/tv.c | 90 +++++++++++++++---------------- 8 files changed, 76 insertions(+), 73 deletions(-) diff --git a/data/text/tv.inc b/data/text/tv.inc index 72d3910340c7..287ce7f00f40 100644 --- a/data/text/tv.inc +++ b/data/text/tv.inc @@ -2925,7 +2925,7 @@ gTVInSearchOfTrainersText08:: @ 0828C011 .string "That's all for today!\n" .string "See you again on our next broadcast!$" -gTVPokemonContestLiveUpdates2Text00:: @ 0828C137 +ContestLadyShow_Text_Intro:: @ 0828C137 .string "“POKéMON CONTEST LIVE UPDATES!”\p" .string "MC: Sorry to interrupt the regular\n" .string "programming, and thanks for joining us!\p" @@ -2940,7 +2940,7 @@ gTVPokemonContestLiveUpdates2Text00:: @ 0828C137 .string "Spectators: ?!!!!\n" .string "?!!!!$" -gTVPokemonContestLiveUpdates2Text01:: @ 0828C28C +ContestLadyShow_Text_Won:: @ 0828C28C .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "May I congratulate you on your win?\p" @@ -2959,7 +2959,7 @@ gTVPokemonContestLiveUpdates2Text01:: @ 0828C28C .string "We did it!\l" .string "Thank you!$" -gTVPokemonContestLiveUpdates2Text02:: @ 0828C45B +ContestLadyShow_Text_Lost:: @ 0828C45B .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "You must be disappointed by that turn\n" @@ -2979,7 +2979,7 @@ gTVPokemonContestLiveUpdates2Text02:: @ 0828C45B .string "Uh… That's all the time we have today!\n" .string "Thanks for tuning in!$" -gTVPokemonContestLiveUpdates2Text03:: @ 0828C662 +ContestLadyShow_Text_LostBadly:: @ 0828C662 .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "How did your CONTEST appearance go?\p" diff --git a/include/constants/lilycove_lady.h b/include/constants/lilycove_lady.h index 01f60ccf447d..11b9b31e93d3 100644 --- a/include/constants/lilycove_lady.h +++ b/include/constants/lilycove_lady.h @@ -21,6 +21,12 @@ #define QUIZ_AUTHOR_NAME_PLAYER 1 #define QUIZ_AUTHOR_NAME_OTHER_PLAYER 2 -#define QUIZ_QUESTION_LEN 9 +#define QUIZ_QUESTION_LEN 9 -#endif +// Constants for how many good Pokéblocks the Contest Lady was given +// This determines how her performance is described when her TV show comes on +#define CONTEST_LADY_NORMAL 0 +#define CONTEST_LADY_GOOD 1 +#define CONTEST_LADY_BAD 2 + +#endif // GUARD_LILYCOVE_LADY_CONSTANTS_H diff --git a/include/constants/tv.h b/include/constants/tv.h index 57da9837b991..f7b091f49422 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -19,7 +19,7 @@ #define TVSHOW_3_CHEERS_FOR_POKEBLOCKS 9 #define TVSHOW_BATTLE_UPDATE 10 #define TVSHOW_FAN_CLUB_SPECIAL 11 -#define TVSHOW_CONTEST_LIVE_UPDATES_2 12 +#define TVSHOW_LILYCOVE_CONTEST_LADY 12 // // #define TVSHOW_POKEMON_TODAY_CAUGHT 21 #define TVSHOW_SMART_SHOPPER 22 @@ -215,4 +215,10 @@ #define TRENDWATCHER_STATE_BIGGER_FEMALE 5 #define TRENDWATCHER_STATE_OUTRO 6 +// TV Show states for the Contest Lady's Live Updates show +#define CONTESTLADYLIVE_STATE_INTRO 0 +#define CONTESTLADYLIVE_STATE_WON 1 +#define CONTESTLADYLIVE_STATE_LOST 2 +#define CONTESTLADYLIVE_STATE_LOST_BADLY 3 + #endif //GUARD_CONSTANTS_TV_H diff --git a/include/event_scripts.h b/include/event_scripts.h index ecb40c266257..122af54cc4c1 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -344,10 +344,10 @@ extern const u8 gTVInSearchOfTrainersText05[]; extern const u8 gTVInSearchOfTrainersText06[]; extern const u8 gTVInSearchOfTrainersText07[]; extern const u8 gTVInSearchOfTrainersText08[]; -extern const u8 gTVPokemonContestLiveUpdates2Text00[]; -extern const u8 gTVPokemonContestLiveUpdates2Text01[]; -extern const u8 gTVPokemonContestLiveUpdates2Text02[]; -extern const u8 gTVPokemonContestLiveUpdates2Text03[]; +extern const u8 ContestLadyShow_Text_Intro[]; +extern const u8 ContestLadyShow_Text_Won[]; +extern const u8 ContestLadyShow_Text_Lost[]; +extern const u8 ContestLadyShow_Text_LostBadly[]; extern const u8 gPokeNewsTextSlateport_Upcoming[]; extern const u8 gPokeNewsTextSlateport_Ongoing[]; extern const u8 gPokeNewsTextSlateport_Ending[]; diff --git a/include/global.tv.h b/include/global.tv.h index 8e1a898b6154..64e6a984eda2 100644 --- a/include/global.tv.h +++ b/include/global.tv.h @@ -179,7 +179,7 @@ typedef union // size = 0x24 /*0x18*/ u8 idolNameLanguage; } fanClubSpecial; - // TVSHOW_CONTEST_LIVE_UPDATES_2 + // TVSHOW_LILYCOVE_CONTEST_LADY struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; @@ -189,7 +189,7 @@ typedef union // size = 0x24 /*0x16*/ u8 pokeblockState; /*0x17*/ u8 language; /*0x18*/ u8 pokemonNameLanguage; - } contestLiveUpdates2; + } contestLady; // Record Mixing Shows // TVSHOW_POKEMON_TODAY_CAUGHT diff --git a/include/lilycove_lady.h b/include/lilycove_lady.h index 1ec327be9dc6..d3cce4ca8322 100644 --- a/include/lilycove_lady.h +++ b/include/lilycove_lady.h @@ -12,6 +12,6 @@ void BufferContestLadyMonName(u8 *dest1, u8 *dest2); void BufferContestLadyPlayerName(u8 *dest); void BufferContestLadyLanguage(u8 *dest); void BufferContestName(u8 *dest, u8 category); -u8 sub_818E880(void); +u8 GetContestLadyPokeblockState(void); #endif //GUARD_LILYCOVE_LADY_H diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 5bad0742043c..22155ffd5937 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -762,25 +762,16 @@ void BufferContestName(u8 *dest, u8 category) StringCopy(dest, sContestNames[category]); } -// used in tv.c to determine sTVShowState for Contest Lady show -// if return val is 1, sTVShowState is 1 -// if return val is 2, sTVShowState is 3 -// if return val is 0, sTVShowState is 2 -u8 sub_818E880(void) +// Used by the Contest Lady's TV show to determine how well she performed +u8 GetContestLadyPokeblockState(void) { sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; if (sContestLadyPtr->numGoodPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD) - { - return 1; - } + return CONTEST_LADY_GOOD; else if (sContestLadyPtr->numGoodPokeblocksGiven == 0) - { - return 2; - } + return CONTEST_LADY_BAD; else - { - return 0; - } + return CONTEST_LADY_NORMAL; } diff --git a/src/tv.c b/src/tv.c index 691b343d8182..0466ee713aaf 100644 --- a/src/tv.c +++ b/src/tv.c @@ -38,6 +38,7 @@ #include "constants/contest.h" #include "constants/items.h" #include "constants/layouts.h" +#include "constants/lilycove_lady.h" #include "constants/maps.h" #include "constants/metatile_behaviors.h" #include "constants/moves.h" @@ -179,7 +180,7 @@ static void DoTVShowPokemonNewsBattleFrontier(void); static void DoTVShowWhatsNo1InHoennToday(void); static void DoTVShowSecretBaseSecrets(void); static void DoTVShowSafariFanClub(void); -static void DoTVShowPokemonContestLiveUpdates2(void); +static void DoTVShowLilycoveContestLady(void); // .rodata @@ -461,11 +462,11 @@ static const u8 *const sTVNameRaterTextGroup[] = { gTVNameRaterText18 }; -static const u8 *const sTVPokemonContestLiveUpdates2TextGroup[] = { - gTVPokemonContestLiveUpdates2Text00, - gTVPokemonContestLiveUpdates2Text01, - gTVPokemonContestLiveUpdates2Text02, - gTVPokemonContestLiveUpdates2Text03 +static const u8 *const sTVLilycoveContestLadyTextGroup[] = { + [CONTESTLADYLIVE_STATE_INTRO] = ContestLadyShow_Text_Intro, + [CONTESTLADYLIVE_STATE_WON] = ContestLadyShow_Text_Won, + [CONTESTLADYLIVE_STATE_LOST] = ContestLadyShow_Text_Lost, + [CONTESTLADYLIVE_STATE_LOST_BADLY] = ContestLadyShow_Text_LostBadly }; static const u8 *const sTVPokemonTodayFailedTextGroup[] = { @@ -1661,13 +1662,13 @@ void PutLilycoveContestLadyShowOnTheAir(void) if (gSpecialVar_Result != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; - BufferContestLadyLanguage(&show->contestLiveUpdates2.language); - show->contestLiveUpdates2.pokemonNameLanguage = GAME_LANGUAGE; - show->contestLiveUpdates2.kind = TVSHOW_CONTEST_LIVE_UPDATES_2; - show->contestLiveUpdates2.active = TRUE; - BufferContestLadyPlayerName(show->contestLiveUpdates2.playerName); - BufferContestLadyMonName(&show->contestLiveUpdates2.contestCategory, show->contestLiveUpdates2.nickname); - show->contestLiveUpdates2.pokeblockState = sub_818E880(); + BufferContestLadyLanguage(&show->contestLady.language); + show->contestLady.pokemonNameLanguage = GAME_LANGUAGE; + show->contestLady.kind = TVSHOW_LILYCOVE_CONTEST_LADY; + show->contestLady.active = TRUE; + BufferContestLadyPlayerName(show->contestLady.playerName); + BufferContestLadyMonName(&show->contestLady.contestCategory, show->contestLady.nickname); + show->contestLady.pokeblockState = GetContestLadyPokeblockState(); tv_store_id_2x(show); } } @@ -3812,9 +3813,8 @@ static void sub_80F0708(void) // FIXME: register allocation shenanigans break; case TVSHOW_FAN_CLUB_SPECIAL: break; - case TVSHOW_CONTEST_LIVE_UPDATES_2: + case TVSHOW_LILYCOVE_CONTEST_LADY: break; - case TVSHOW_OFF_AIR: break; case TVSHOW_FAN_CLUB_LETTER: @@ -4308,11 +4308,10 @@ static void sub_80F12A4(TVShow *shows) curShow->fanClubSpecial.language = TV_GetStringLanguage(curShow->fanClubSpecial.playerName); curShow->fanClubSpecial.idolNameLanguage = TV_GetStringLanguage(curShow->fanClubSpecial.idolName); break; - case TVSHOW_CONTEST_LIVE_UPDATES_2: - curShow->contestLiveUpdates2.language = TV_GetStringLanguage(curShow->contestLiveUpdates2.playerName); - curShow->contestLiveUpdates2.pokemonNameLanguage = TV_GetStringLanguage(curShow->contestLiveUpdates2.nickname); + case TVSHOW_LILYCOVE_CONTEST_LADY: + curShow->contestLady.language = TV_GetStringLanguage(curShow->contestLady.playerName); + curShow->contestLady.pokemonNameLanguage = TV_GetStringLanguage(curShow->contestLady.nickname); break; - case TVSHOW_POKEMON_TODAY_CAUGHT: curShow->pokemonToday.language = TV_GetStringLanguage(curShow->pokemonToday.playerName); curShow->pokemonToday.language2 = TV_GetStringLanguage(curShow->pokemonToday.nickname); @@ -4492,8 +4491,8 @@ void DoTVShow(void) case TVSHOW_SAFARI_FAN_CLUB: DoTVShowSafariFanClub(); break; - case TVSHOW_CONTEST_LIVE_UPDATES_2: - DoTVShowPokemonContestLiveUpdates2(); + case TVSHOW_LILYCOVE_CONTEST_LADY: + DoTVShowLilycoveContestLady(); break; } } @@ -7174,7 +7173,8 @@ static void DoTVShowSafariFanClub(void) ShowFieldMessage(sTVSafariFanClubTextGroup[state]); } -static void DoTVShowPokemonContestLiveUpdates2(void) +// This show is a version of Contest Live Updates for the Lilycove Contest Lady +static void DoTVShowLilycoveContestLady(void) { TVShow *show; u8 state; @@ -7184,30 +7184,30 @@ static void DoTVShowPokemonContestLiveUpdates2(void) state = sTVShowState; switch (state) { - case 0: - BufferContestName(gStringVar1, show->contestLiveUpdates2.contestCategory); - if (show->contestLiveUpdates2.pokeblockState == 1) - { - sTVShowState = 1; - } - else if (show->contestLiveUpdates2.pokeblockState == 0) - { - sTVShowState = 2; - } - else - { - sTVShowState = 3; - } - break; - case 1: - case 2: - TVShowConvertInternationalString(gStringVar3, show->contestLiveUpdates2.playerName, show->contestLiveUpdates2.language); - case 3: - TVShowConvertInternationalString(gStringVar2, show->contestLiveUpdates2.nickname, show->contestLiveUpdates2.pokemonNameLanguage); - TVShowDone(); - break; + case CONTESTLADYLIVE_STATE_INTRO: + BufferContestName(gStringVar1, show->contestLady.contestCategory); + if (show->contestLady.pokeblockState == CONTEST_LADY_GOOD) + { + sTVShowState = CONTESTLADYLIVE_STATE_WON; + } + else if (show->contestLady.pokeblockState == CONTEST_LADY_NORMAL) + { + sTVShowState = CONTESTLADYLIVE_STATE_LOST; + } + else // CONTEST_LADY_BAD + { + sTVShowState = CONTESTLADYLIVE_STATE_LOST_BADLY; + } + break; + case CONTESTLADYLIVE_STATE_WON: + case CONTESTLADYLIVE_STATE_LOST: + TVShowConvertInternationalString(gStringVar3, show->contestLady.playerName, show->contestLady.language); + case CONTESTLADYLIVE_STATE_LOST_BADLY: + TVShowConvertInternationalString(gStringVar2, show->contestLady.nickname, show->contestLady.pokemonNameLanguage); + TVShowDone(); + break; } - ShowFieldMessage(sTVPokemonContestLiveUpdates2TextGroup[state]); + ShowFieldMessage(sTVLilycoveContestLadyTextGroup[state]); } void TVShowDone(void) From c9d3b26ff7de11b39ceeb0c713cb7b821f2b03d3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 02:12:46 -0400 Subject: [PATCH 079/762] Label miss string indexes --- data/battle_scripts_1.s | 12 +++++----- include/constants/battle_script_commands.h | 1 + include/constants/battle_string_ids.h | 7 ++++++ src/battle_message.c | 8 ++++--- src/battle_script_commands.c | 28 +++++++++++----------- 5 files changed, 33 insertions(+), 23 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index ad9576a6247a..99b9be8dc9ee 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -2113,7 +2113,7 @@ BattleScript_EffectStockpile:: BattleScript_EffectSpitUp:: attackcanceler - jumpifbyte CMP_EQUAL, gBattleCommunication + 6, 0x1, BattleScript_82D9FA2 + jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_SpitUpFailProtect attackstring ppreduce accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE @@ -2127,7 +2127,7 @@ BattleScript_SpitUpFail:: waitmessage 0x40 goto BattleScript_MoveEnd -BattleScript_82D9FA2:: +BattleScript_SpitUpFailProtect:: attackstring ppreduce pause 0x40 @@ -2223,7 +2223,7 @@ BattleScript_AlreadyBurned:: BattleScript_EffectMemento:: attackcanceler - jumpifbyte CMP_EQUAL, gBattleCommunication + 6, 0x1, BattleScript_82DA153 + jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_MementoFailProtect attackstring ppreduce jumpifattackandspecialattackcannotfall BattleScript_ButItFailed @@ -2253,11 +2253,11 @@ BattleScript_EffectMementoPrintNoEffect: printstring STRINGID_BUTNOEFFECT waitmessage 0x40 goto BattleScript_EffectMementoTryFaint -BattleScript_82DA153: +BattleScript_MementoFailProtect: attackstring ppreduce - jumpifattackandspecialattackcannotfall BattleScript_82DA15A -BattleScript_82DA15A: + jumpifattackandspecialattackcannotfall BattleScript_MementoFailEnd +BattleScript_MementoFailEnd: setatkhptozero pause 0x40 effectivenesssound diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index 9372377c451b..cef0b184dac5 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -32,6 +32,7 @@ #define cEFFECT_CHOOSER gBattleCommunication + 3 #define cMULTISTRING_CHOOSER gBattleCommunication + 5 +#define cMISS_TYPE gBattleCommunication + 6 // Battle Script defines for getting the wanted battler #define BS_TARGET 0 diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index 1886043f16a1..f5b036b5d770 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -383,4 +383,11 @@ #define STRINGID_TRAINER1WINTEXT 379 #define STRINGID_TRAINER2WINTEXT 380 +// Indexes into gMissStringIds +#define B_MSG_MISSED 0 +#define B_MSG_PROTECTED 1 +#define B_MSG_AVOIDED_ATK 2 +#define B_MSG_AVOIDED_DMG 3 +#define B_MSG_GROUND_MISS 4 + #endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H diff --git a/src/battle_message.c b/src/battle_message.c index 46444a8fa9c9..5f088dded324 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -893,9 +893,11 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = const u16 gMissStringIds[] = { - STRINGID_ATTACKMISSED, STRINGID_PKMNPROTECTEDITSELF, - STRINGID_PKMNAVOIDEDATTACK, STRINGID_AVOIDEDDAMAGE, - STRINGID_PKMNMAKESGROUNDMISS + [B_MSG_MISSED] = STRINGID_ATTACKMISSED, + [B_MSG_PROTECTED] = STRINGID_PKMNPROTECTEDITSELF, + [B_MSG_AVOIDED_ATK] = STRINGID_PKMNAVOIDEDATTACK, + [B_MSG_AVOIDED_DMG] = STRINGID_AVOIDEDDAMAGE, + [B_MSG_GROUND_MISS] = STRINGID_PKMNMAKESGROUNDMISS }; const u16 gNoEscapeStringIds[] = diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 84f8efaa84fd..e0a3693eb095 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -991,7 +991,7 @@ static void Cmd_attackcanceler(void) gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = 1; + gBattleCommunication[6] = B_MSG_PROTECTED; gBattlescriptCurrInstr++; } else @@ -1024,7 +1024,7 @@ static void Cmd_jumpifaffectedbyprotect(void) { gMoveResultFlags |= MOVE_RESULT_MISSED; JumpIfMoveFailed(5, 0); - gBattleCommunication[6] = 1; + gBattleCommunication[6] = B_MSG_PROTECTED; } else { @@ -1039,7 +1039,7 @@ bool8 JumpIfMoveAffectedByProtect(u16 move) { gMoveResultFlags |= MOVE_RESULT_MISSED; JumpIfMoveFailed(7, move); - gBattleCommunication[6] = 1; + gBattleCommunication[6] = B_MSG_PROTECTED; affected = TRUE; } return affected; @@ -1172,9 +1172,9 @@ static void Cmd_accuracycheck(void) gMoveResultFlags |= MOVE_RESULT_MISSED; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && (gBattleMoves[move].target == MOVE_TARGET_BOTH || gBattleMoves[move].target == MOVE_TARGET_FOES_AND_ALLY)) - gBattleCommunication[6] = 2; + gBattleCommunication[6] = B_MSG_AVOIDED_ATK; else - gBattleCommunication[6] = 0; + gBattleCommunication[6] = B_MSG_MISSED; CheckWonderGuardAndLevitate(); } @@ -1370,7 +1370,7 @@ static void Cmd_typecalc(void) gMoveResultFlags |= (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE); gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = moveType; + gBattleCommunication[6] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } else @@ -1406,7 +1406,7 @@ static void Cmd_typecalc(void) gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = 3; + gBattleCommunication[6] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } if (gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) @@ -1429,7 +1429,7 @@ static void CheckWonderGuardAndLevitate(void) if (gBattleMons[gBattlerTarget].ability == ABILITY_LEVITATE && moveType == TYPE_GROUND) { gLastUsedAbility = ABILITY_LEVITATE; - gBattleCommunication[6] = moveType; + gBattleCommunication[6] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, ABILITY_LEVITATE); return; } @@ -1484,7 +1484,7 @@ static void CheckWonderGuardAndLevitate(void) if (((flags & 2) || !(flags & 1)) && gBattleMoves[gCurrentMove].power) { gLastUsedAbility = ABILITY_WONDER_GUARD; - gBattleCommunication[6] = 3; + gBattleCommunication[6] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, ABILITY_WONDER_GUARD); } } @@ -2019,7 +2019,7 @@ static void Cmd_resultmessage(void) if (gBattleControllerExecFlags) return; - if (gMoveResultFlags & MOVE_RESULT_MISSED && (!(gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) || gBattleCommunication[6] > 2)) + if (gMoveResultFlags & MOVE_RESULT_MISSED && (!(gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) || gBattleCommunication[6] > B_MSG_AVOIDED_ATK)) { stringId = gMissStringIds[gBattleCommunication[6]]; gBattleCommunication[MSG_DISPLAY] = 1; @@ -4459,7 +4459,7 @@ static void Cmd_typecalc2(void) gLastUsedAbility = gBattleMons[gBattlerTarget].ability; gMoveResultFlags |= (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE); gLastLandedMoves[gBattlerTarget] = 0; - gBattleCommunication[6] = moveType; + gBattleCommunication[6] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } else @@ -4534,7 +4534,7 @@ static void Cmd_typecalc2(void) gLastUsedAbility = ABILITY_WONDER_GUARD; gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; - gBattleCommunication[6] = 3; + gBattleCommunication[6] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } if (gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) @@ -6802,7 +6802,7 @@ static void Cmd_stockpiletobasedamage(void) } else { - if (gBattleCommunication[6] != 1) + if (gBattleCommunication[6] != B_MSG_PROTECTED) { gBattleMoveDamage = CalculateBaseDamage(&gBattleMons[gBattlerAttacker], &gBattleMons[gBattlerTarget], gCurrentMove, gSideStatuses[GET_BATTLER_SIDE(gBattlerTarget)], 0, @@ -8928,7 +8928,7 @@ static void Cmd_jumpifattackandspecialattackcannotfall(void) // memento { if (gBattleMons[gBattlerTarget].statStages[STAT_ATK] == MIN_STAT_STAGE && gBattleMons[gBattlerTarget].statStages[STAT_SPATK] == MIN_STAT_STAGE - && gBattleCommunication[6] != 1) + && gBattleCommunication[6] != B_MSG_PROTECTED) { gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } From 87430a1ebcee5570613127ab674269e4e62400d0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 02:16:01 -0400 Subject: [PATCH 080/762] Add WAIT_TIME battle script constants --- data/battle_scripts_1.s | 827 ++++++++++++++++++++-------------------- 1 file changed, 415 insertions(+), 412 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 99b9be8dc9ee..92ef199cc619 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -12,6 +12,9 @@ .include "constants/constants.inc" .section script_data, "aw", %progbits + +.set WAIT_TIME_LONG, 64 +.set WAIT_TIME_SHORT, 32 .align 2 gBattleScriptsForMoveEffects:: @ 82D86A8 @@ -256,7 +259,7 @@ BattleScript_EffectHit:: jumpifnotmove MOVE_SURF, BattleScript_HitFromAtkCanceler jumpifnostatus3 BS_TARGET, STATUS3_UNDERWATER, BattleScript_HitFromAtkCanceler orword gHitMarker, HITMARKER_IGNORE_UNDERWATER - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 BattleScript_HitFromAtkCanceler:: attackcanceler BattleScript_HitFromAccCheck:: @@ -278,9 +281,9 @@ BattleScript_HitFromAtkAnimation:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL BattleScript_MoveEnd:: @@ -293,11 +296,11 @@ BattleScript_PrintMoveMissed:: attackstring ppreduce BattleScript_MoveMissedPause:: - pause 0x20 + pause WAIT_TIME_SHORT BattleScript_MoveMissed:: effectivenesssound resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSleep:: @@ -318,21 +321,21 @@ BattleScript_EffectSleep:: BattleScript_AlreadyAsleep:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_WasntAffected:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNWASNTAFFECTED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_CantMakeAsleep:: - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gUproarAwakeStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoisonHit:: @@ -357,9 +360,9 @@ BattleScript_EffectAbsorb:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG negativedamage orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE jumpifability BS_TARGET, ABILITY_LIQUID_OOZE, BattleScript_AbsorbLiquidOoze @@ -373,7 +376,7 @@ BattleScript_AbsorbUpdateHp:: datahpupdate BS_ATTACKER jumpifmovehadnoeffect BattleScript_AbsorbTryFainting printfromtable gLeechSeedDrainStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AbsorbTryFainting:: tryfaintmon BS_ATTACKER, FALSE, NULL tryfaintmon BS_TARGET, FALSE, NULL @@ -418,9 +421,9 @@ BattleScript_ExplosionLoop: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop @@ -429,7 +432,7 @@ BattleScript_ExplosionLoop: BattleScript_ExplosionMissed: effectivenesssound resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop tryfaintmon BS_ATTACKER, FALSE, NULL @@ -449,7 +452,7 @@ BattleScript_EffectDreamEater:: BattleScript_DreamEaterNoEffect: attackstring ppreduce - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_WasntAffected BattleScript_DreamEaterWorked: accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE @@ -467,16 +470,16 @@ BattleScript_DreamEaterWorked: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG negativedamage orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER jumpifmovehadnoeffect BattleScript_DreamEaterTryFaintEnd printstring STRINGID_PKMNDREAMEATEN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_DreamEaterTryFaintEnd: tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -484,12 +487,12 @@ BattleScript_DreamEaterTryFaintEnd: BattleScript_EffectMirrorMove:: attackcanceler attackstring - pause 0x40 + pause WAIT_TIME_LONG trymirrormove ppreduce orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_MIRRORMOVEFAILED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackUp:: @@ -513,7 +516,7 @@ BattleScript_EffectStatUpAfterAtkCanceler:: ppreduce statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_StatUpEnd jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatUpAttackAnim - pause 0x20 + pause WAIT_TIME_SHORT goto BattleScript_StatUpPrintString BattleScript_StatUpAttackAnim:: attackanimation @@ -523,14 +526,14 @@ BattleScript_StatUpDoAnim:: playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 BattleScript_StatUpPrintString:: printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_StatUpEnd:: goto BattleScript_MoveEnd BattleScript_StatUp:: playanimation BS_EFFECT_BATTLER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_EffectAttackDown:: @@ -560,7 +563,7 @@ BattleScript_EffectStatDown:: statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_StatDownEnd jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatDownDoAnim jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x3, BattleScript_StatDownEnd - pause 0x20 + pause WAIT_TIME_SHORT goto BattleScript_StatDownPrintString BattleScript_StatDownDoAnim:: attackanimation @@ -569,14 +572,14 @@ BattleScript_StatDownDoAnim:: playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 BattleScript_StatDownPrintString:: printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_StatDownEnd:: goto BattleScript_MoveEnd BattleScript_StatDown:: playanimation BS_EFFECT_BATTLER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_EffectHaze:: @@ -587,7 +590,7 @@ BattleScript_EffectHaze:: waitanimation normalisebuffs printstring STRINGID_STATCHANGESGONE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectBide:: @@ -650,23 +653,23 @@ BattleScript_DoMultiHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 - waitmessage 0x1 + waitmessage 1 addbyte sMULTIHIT_STRING + 4, 0x1 moveendto MOVEEND_NEXT_TARGET jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_FOE_ENDURED, BattleScript_MultiHitPrintStrings decrementmultihit BattleScript_MultiHitLoop goto BattleScript_MultiHitPrintStrings BattleScript_MultiHitNoMoreHits:: - pause 0x20 + pause WAIT_TIME_SHORT BattleScript_MultiHitPrintStrings:: resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifmovehadnoeffect BattleScript_MultiHitEnd copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 printstring STRINGID_HITXTIMES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_MultiHitEnd:: seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL @@ -682,7 +685,7 @@ BattleScript_EffectConversion:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlinchHit:: @@ -700,7 +703,7 @@ BattleScript_EffectRestoreHp:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectToxic:: @@ -721,14 +724,14 @@ BattleScript_EffectToxic:: setmoveeffect MOVE_EFFECT_TOXIC seteffectprimary resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyPoisoned:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x40 + pause WAIT_TIME_LONG printstring STRINGID_PKMNALREADYPOISONED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_ImmunityProtected:: @@ -759,24 +762,24 @@ BattleScript_EffectRest:: jumpifstatus BS_ATTACKER, STATUS1_SLEEP, BattleScript_RestIsAlreadyAsleep jumpifcantmakeasleep BattleScript_RestCantSleep trysetrest BattleScript_AlreadyAtFullHp - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gRestUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER waitstate goto BattleScript_PresentHealTarget BattleScript_RestCantSleep:: - pause 0x40 + pause WAIT_TIME_LONG printfromtable gUproarAwakeStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_RestIsAlreadyAsleep:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYASLEEP2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectOHKO:: @@ -790,9 +793,9 @@ BattleScript_EffectOHKO:: trysetdestinybondtohappen goto BattleScript_HitFromAtkAnimation BattleScript_KOFail:: - pause 0x40 + pause WAIT_TIME_LONG printfromtable gKOFailedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRazorWind:: @@ -823,7 +826,7 @@ BattleScriptFirstChargingTurn:: seteffectprimary copybyte cMULTISTRING_CHOOSER, sTWOTURN_STRINGID printfromtable gFirstTurnOfTwoStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_EffectSuperFang:: @@ -851,7 +854,7 @@ BattleScript_EffectTrap:: jumpifnotmove MOVE_WHIRLPOOL, BattleScript_DoWrapEffect jumpifnostatus3 BS_TARGET, STATUS3_UNDERWATER, BattleScript_DoWrapEffect orword gHitMarker, HITMARKER_IGNORE_UNDERWATER - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 BattleScript_DoWrapEffect:: setmoveeffect MOVE_EFFECT_WRAP goto BattleScript_EffectHit @@ -873,12 +876,12 @@ BattleScript_EffectRecoilIfMiss:: BattleScript_MoveMissedDoDamage:: attackstring ppreduce - pause 0x40 + pause WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_MoveEnd printstring STRINGID_PKMNCRASHED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG damagecalc typecalc adjustnormaldamage @@ -899,7 +902,7 @@ BattleScript_EffectMist:: attackanimation waitanimation printfromtable gMistUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFocusEnergy:: @@ -911,7 +914,7 @@ BattleScript_EffectFocusEnergy:: attackanimation waitanimation printfromtable gFocusEnergyUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecoil:: @@ -934,14 +937,14 @@ BattleScript_EffectConfuse:: setmoveeffect MOVE_EFFECT_CONFUSION seteffectprimary resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyConfused:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYCONFUSED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackUp2:: @@ -972,7 +975,7 @@ BattleScript_EffectTransform:: attackanimation waitanimation printfromtable gTransformUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackDown2:: @@ -1000,7 +1003,7 @@ BattleScript_PrintReflectLightScreenSafeguardString:: attackanimation waitanimation printfromtable gReflectLightScreenSafeguardStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoison:: @@ -1021,7 +1024,7 @@ BattleScript_EffectPoison:: setmoveeffect MOVE_EFFECT_POISON seteffectprimary resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectParalyze:: @@ -1041,14 +1044,14 @@ BattleScript_EffectParalyze:: setmoveeffect MOVE_EFFECT_PARALYSIS seteffectprimary resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyParalyzed:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNISALREADYPARALYZED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_LimberProtected:: @@ -1110,7 +1113,7 @@ BattleScript_EffectSubstitute:: jumpifstatus2 BS_ATTACKER, STATUS2_SUBSTITUTE, BattleScript_AlreadyHasSubstitute setsubstitute jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x1, BattleScript_SubstituteAnim - pause 0x20 + pause WAIT_TIME_SHORT goto BattleScript_SubstituteString BattleScript_SubstituteAnim:: attackanimation @@ -1119,13 +1122,13 @@ BattleScript_SubstituteAnim:: datahpupdate BS_ATTACKER BattleScript_SubstituteString:: printfromtable gSubsituteUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyHasSubstitute:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNHASSUBSTITUTE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecharge:: @@ -1136,7 +1139,7 @@ BattleScript_EffectRecharge:: BattleScript_MoveUsedMustRecharge:: printstring STRINGID_PKMNMUSTRECHARGE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRage:: @@ -1161,13 +1164,13 @@ BattleScript_EffectMimic:: attackanimation waitanimation printstring STRINGID_PKMNLEARNEDMOVE2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMetronome:: attackcanceler attackstring - pause 0x20 + pause WAIT_TIME_SHORT attackanimation waitanimation setbyte sB_ANIM_TURN, 0x0 @@ -1177,7 +1180,7 @@ BattleScript_EffectMetronome:: BattleScript_EffectLeechSeed:: attackcanceler attackstring - pause 0x20 + pause WAIT_TIME_SHORT ppreduce jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed accuracycheck BattleScript_DoLeechSeed, ACC_CURR_MOVE @@ -1186,7 +1189,7 @@ BattleScript_DoLeechSeed:: attackanimation waitanimation printfromtable gLeechSeedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSplash:: @@ -1197,7 +1200,7 @@ BattleScript_EffectSplash:: waitanimation incrementgamestat GAME_STAT_USED_SPLASH printstring STRINGID_BUTNOTHINGHAPPENED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectDisable:: @@ -1209,7 +1212,7 @@ BattleScript_EffectDisable:: attackanimation waitanimation printstring STRINGID_PKMNMOVEWASDISABLED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLevelDamage:: @@ -1253,7 +1256,7 @@ BattleScript_EffectEncore:: attackanimation waitanimation printstring STRINGID_PKMNGOTENCORE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPainSplit:: @@ -1271,7 +1274,7 @@ BattleScript_EffectPainSplit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_SHAREDPAIN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSnore:: @@ -1283,7 +1286,7 @@ BattleScript_EffectSnore:: BattleScript_SnoreIsAsleep:: jumpifhalfword CMP_EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoSnore printstring STRINGID_PKMNFASTASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG statusanimation BS_ATTACKER BattleScript_DoSnore:: attackstring @@ -1300,7 +1303,7 @@ BattleScript_EffectConversion2:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLockOn:: @@ -1313,7 +1316,7 @@ BattleScript_EffectLockOn:: attackanimation waitanimation printstring STRINGID_PKMNTOOKAIM - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSketch:: @@ -1325,7 +1328,7 @@ BattleScript_EffectSketch:: attackanimation waitanimation printstring STRINGID_PKMNSKETCHEDMOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSleepTalk:: @@ -1336,13 +1339,13 @@ BattleScript_EffectSleepTalk:: goto BattleScript_ButItFailed BattleScript_SleepTalkIsAsleep:: printstring STRINGID_PKMNFASTASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG statusanimation BS_ATTACKER attackstring ppreduce orword gHitMarker, HITMARKER_NO_PPDEDUCT trychoosesleeptalkmove BattleScript_SleepTalkUsingMove - pause 0x40 + pause WAIT_TIME_LONG goto BattleScript_ButItFailed BattleScript_SleepTalkUsingMove:: attackanimation @@ -1359,7 +1362,7 @@ BattleScript_EffectDestinyBond:: attackanimation waitanimation printstring STRINGID_PKMNTRYINGTOTAKEFOE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlail:: @@ -1375,7 +1378,7 @@ BattleScript_EffectSpite:: attackanimation waitanimation printstring STRINGID_PKMNREDUCEDPP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHealBell:: @@ -1387,15 +1390,15 @@ BattleScript_EffectHealBell:: attackanimation waitanimation printfromtable gPartyStatusHealStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifnotmove MOVE_HEAL_BELL, BattleScript_PartyHealEnd jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x1, BattleScript_CheckHealBellMon2Unaffected printstring STRINGID_PKMNSXBLOCKSY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CheckHealBellMon2Unaffected:: jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x2, BattleScript_PartyHealEnd printstring STRINGID_PKMNSXBLOCKSY2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_PartyHealEnd:: updatestatusicon BS_ATTACKER_WITH_PARTNER waitstate @@ -1432,25 +1435,25 @@ BattleScript_DoTripleKickAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 - waitmessage 0x1 + waitmessage 1 moveendto MOVEEND_NEXT_TARGET jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_FOE_ENDURED, BattleScript_TripleKickPrintStrings decrementmultihit BattleScript_TripleKickLoop goto BattleScript_TripleKickPrintStrings BattleScript_TripleKickNoMoreHits:: - pause 0x20 + pause WAIT_TIME_SHORT jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickPrintStrings bicbyte gMoveResultFlags, MOVE_RESULT_MISSED BattleScript_TripleKickPrintStrings:: resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickEnd jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_TripleKickEnd copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 printstring STRINGID_HITXTIMES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_TripleKickEnd:: seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL @@ -1473,7 +1476,7 @@ BattleScript_EffectMeanLook:: setmoveeffect MOVE_EFFECT_PREVENT_ESCAPE seteffectprimary printstring STRINGID_TARGETCANTESCAPENOW - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectNightmare:: @@ -1490,7 +1493,7 @@ BattleScript_NightmareWorked:: setmoveeffect MOVE_EFFECT_NIGHTMARE seteffectprimary printstring STRINGID_PKMNFELLINTONIGHTMARE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMinimize:: @@ -1515,17 +1518,17 @@ BattleScript_CurseTrySpeed:: setstatchanger STAT_SPEED, 1, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryAttack printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CurseTryAttack:: setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryDefence printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CurseTryDefence:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseEnd printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CurseEnd:: goto BattleScript_MoveEnd BattleScript_GhostCurse:: @@ -1545,7 +1548,7 @@ BattleScript_DoGhostCurse:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNLAIDCURSE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd @@ -1558,7 +1561,7 @@ BattleScript_EffectEndure:: attackanimation waitanimation printfromtable gProtectLikeUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSpikes:: @@ -1569,7 +1572,7 @@ BattleScript_EffectSpikes:: attackanimation waitanimation printstring STRINGID_SPIKESSCATTERED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectForesight:: @@ -1581,7 +1584,7 @@ BattleScript_EffectForesight:: attackanimation waitanimation printstring STRINGID_PKMNIDENTIFIED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPerishSong:: @@ -1592,7 +1595,7 @@ BattleScript_EffectPerishSong:: attackanimation waitanimation printstring STRINGID_FAINTINTHREE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setbyte sBATTLER, 0x0 BattleScript_PerishSongLoop:: jumpifability BS_SCRIPTING, ABILITY_SOUNDPROOF, BattleScript_PerishSongNotAffected @@ -1603,7 +1606,7 @@ BattleScript_PerishSongLoopIncrement:: BattleScript_PerishSongNotAffected:: printstring STRINGID_PKMNSXBLOCKSY2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_PerishSongLoopIncrement BattleScript_EffectSandstorm:: @@ -1640,7 +1643,7 @@ BattleScript_EffectSwagger:: setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_SwaggerTryConfuse:: jumpifability BS_TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifsideaffecting BS_TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected @@ -1671,7 +1674,7 @@ BattleScript_EffectAttract:: attackanimation waitanimation printstring STRINGID_PKMNFELLINLOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectReturn:: @@ -1706,9 +1709,9 @@ BattleScript_EffectMagnitude:: ppreduce selectfirstvalidtarget magnitudedamagecalculation - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_MAGNITUDESTRENGTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_HitsAllWithUndergroundBonusLoop BattleScript_EffectBatonPass:: @@ -1770,7 +1773,7 @@ BattleScript_MoveWeatherChange:: attackanimation waitanimation printfromtable gMoveWeatherChangeStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG call BattleScript_WeatherFormChanges goto BattleScript_MoveEnd @@ -1804,7 +1807,7 @@ BattleScript_EffectBellyDrum:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNCUTHPMAXEDATTACK - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPsychUp:: @@ -1815,7 +1818,7 @@ BattleScript_EffectPsychUp:: attackanimation waitanimation printstring STRINGID_PKMNCOPIEDSTATCHANGES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMirrorCoat:: @@ -1839,14 +1842,14 @@ BattleScript_EffectSkullBash:: setgraphicalstatchangevalues playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_SkullBashEnd:: goto BattleScript_MoveEnd BattleScript_EffectTwister:: jumpifnostatus3 BS_TARGET, STATUS3_ON_AIR, BattleScript_FlinchEffect orword gHitMarker, HITMARKER_IGNORE_ON_AIR - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 BattleScript_FlinchEffect:: setmoveeffect MOVE_EFFECT_FLINCH goto BattleScript_EffectHit @@ -1860,11 +1863,11 @@ BattleScript_HitsAllWithUndergroundBonusLoop:: movevaluescleanup jumpifnostatus3 BS_TARGET, STATUS3_UNDERGROUND, BattleScript_HitsAllNoUndergroundBonus orword gHitMarker, HITMARKER_IGNORE_UNDERGROUND - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 goto BattleScript_DoHitAllWithUndergroundBonus BattleScript_HitsAllNoUndergroundBonus:: bicword gHitMarker, HITMARKER_IGNORE_UNDERGROUND - setbyte sDMG_MULTIPLIER, 0x1 + setbyte sDMG_MULTIPLIER, 1 BattleScript_DoHitAllWithUndergroundBonus:: accuracycheck BattleScript_HitAllWithUndergroundBonusMissed, ACC_CURR_MOVE critcalc @@ -1879,21 +1882,21 @@ BattleScript_DoHitAllWithUndergroundBonus:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 - waitmessage 0x1 + waitmessage 1 tryfaintmon BS_TARGET, FALSE, NULL moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end BattleScript_HitAllWithUndergroundBonusMissed:: - pause 0x20 + pause WAIT_TIME_SHORT typecalc effectivenesssound resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end @@ -1906,18 +1909,18 @@ BattleScript_EffectFutureSight:: attackanimation waitanimation printfromtable gFutureMoveUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectGust:: jumpifnostatus3 BS_TARGET, STATUS3_ON_AIR, BattleScript_EffectHit orword gHitMarker, HITMARKER_IGNORE_ON_AIR - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 goto BattleScript_EffectHit BattleScript_EffectStomp:: jumpifnostatus3 BS_TARGET, STATUS3_MINIMIZED, BattleScript_FlinchEffect - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 goto BattleScript_FlinchEffect BattleScript_EffectSolarbeam:: @@ -1953,7 +1956,7 @@ BattleScript_EffectTeleport:: attackanimation waitanimation printstring STRINGID_PKMNFLEDFROMBATTLE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setoutcomeonteleport BS_ATTACKER goto BattleScript_MoveEnd @@ -1961,7 +1964,7 @@ BattleScript_EffectBeatUp:: attackcanceler accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring - pause 0x20 + pause WAIT_TIME_SHORT ppreduce setbyte gBattleCommunication, 0x0 BattleScript_BeatUpLoop:: @@ -1981,9 +1984,9 @@ BattleScript_BeatUpAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendto MOVEEND_NEXT_TARGET goto BattleScript_BeatUpLoop @@ -2056,13 +2059,13 @@ BattleScript_PresentHealTarget:: healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyAtFullHp:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNHPFULL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFakeOut:: @@ -2076,17 +2079,17 @@ BattleScript_ButItFailedAtkStringPpReduce:: BattleScript_ButItFailedPpReduce:: ppreduce BattleScript_ButItFailed:: - pause 0x20 + pause WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_NotAffected:: - pause 0x20 + pause WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectUproar:: @@ -2108,7 +2111,7 @@ BattleScript_EffectStockpile:: attackanimation waitanimation printfromtable gStockpileUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSpitUp:: @@ -2122,18 +2125,18 @@ BattleScript_EffectSpitUp:: adjustsetdamage goto BattleScript_HitFromAtkAnimation BattleScript_SpitUpFail:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_FAILEDTOSPITUP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SpitUpFailProtect:: attackstring ppreduce - pause 0x40 + pause WAIT_TIME_LONG stockpiletobasedamage BattleScript_SpitUpFail resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSwallow:: @@ -2144,9 +2147,9 @@ BattleScript_EffectSwallow:: goto BattleScript_PresentHealTarget BattleScript_SwallowFail:: - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gSwallowFailStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHail:: @@ -2165,7 +2168,7 @@ BattleScript_EffectTorment:: attackanimation waitanimation printstring STRINGID_PKMNSUBJECTEDTOTORMENT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlatter:: @@ -2183,7 +2186,7 @@ BattleScript_EffectFlatter:: setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_FlatterTryConfuse:: jumpifability BS_TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifsideaffecting BS_TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected @@ -2216,9 +2219,9 @@ BattleScript_WaterVeilPrevents:: BattleScript_AlreadyBurned:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYHASBURN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMemento:: @@ -2238,20 +2241,20 @@ BattleScript_EffectMemento:: statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 0x1, BattleScript_EffectMementoTrySpAtk printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_EffectMementoTrySpAtk: playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTryFaint jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 0x1, BattleScript_EffectMementoTryFaint printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_EffectMementoTryFaint: tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd BattleScript_EffectMementoPrintNoEffect: printstring STRINGID_BUTNOEFFECT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_EffectMementoTryFaint BattleScript_MementoFailProtect: attackstring @@ -2259,10 +2262,10 @@ BattleScript_MementoFailProtect: jumpifattackandspecialattackcannotfall BattleScript_MementoFailEnd BattleScript_MementoFailEnd: setatkhptozero - pause 0x40 + pause WAIT_TIME_LONG effectivenesssound resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd @@ -2271,7 +2274,7 @@ BattleScript_EffectFacade:: goto BattleScript_EffectHit BattleScript_FacadeDoubleDmg:: - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 goto BattleScript_EffectHit BattleScript_EffectFocusPunch:: @@ -2279,7 +2282,7 @@ BattleScript_EffectFocusPunch:: jumpifnodamage BattleScript_HitFromAccCheck ppreduce printstring STRINGID_PKMNLOSTFOCUS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSmellingsalt:: @@ -2288,7 +2291,7 @@ BattleScript_EffectSmellingsalt:: jumpifstatus BS_TARGET, STATUS1_PARALYSIS, BattleScript_SmellingsaltDoubleDmg goto BattleScript_EffectHit BattleScript_SmellingsaltDoubleDmg: - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 goto BattleScript_EffectHit BattleScript_EffectFollowMe:: @@ -2299,16 +2302,16 @@ BattleScript_EffectFollowMe:: attackanimation waitanimation printstring STRINGID_PKMNCENTERATTENTION - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectNaturePower:: attackcanceler attackstring - pause 0x20 + pause WAIT_TIME_SHORT callterrainattack printstring STRINGID_NATUREPOWERTURNEDINTO - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_EffectCharge:: @@ -2319,7 +2322,7 @@ BattleScript_EffectCharge:: attackanimation waitanimation printstring STRINGID_PKMNCHARGINGPOWER - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectTaunt:: @@ -2331,7 +2334,7 @@ BattleScript_EffectTaunt:: attackanimation waitanimation printstring STRINGID_PKMNFELLFORTAUNT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHelpingHand:: @@ -2342,7 +2345,7 @@ BattleScript_EffectHelpingHand:: attackanimation waitanimation printstring STRINGID_PKMNREADYTOHELP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectTrick:: @@ -2355,9 +2358,9 @@ BattleScript_EffectTrick:: attackanimation waitanimation printstring STRINGID_PKMNSWITCHEDITEMS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG printfromtable gItemSwapStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRolePlay:: @@ -2369,7 +2372,7 @@ BattleScript_EffectRolePlay:: attackanimation waitanimation printstring STRINGID_PKMNCOPIEDFOE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectWish:: @@ -2399,7 +2402,7 @@ BattleScript_EffectIngrain:: attackanimation waitanimation printstring STRINGID_PKMNPLANTEDROOTS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSuperpower:: @@ -2414,7 +2417,7 @@ BattleScript_EffectMagicCoat:: attackanimation waitanimation printstring STRINGID_PKMNSHROUDEDITSELF - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecycle:: @@ -2425,7 +2428,7 @@ BattleScript_EffectRecycle:: attackanimation waitanimation printstring STRINGID_XFOUNDONEY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRevenge:: @@ -2449,7 +2452,7 @@ BattleScript_BrickBreakAnim:: waitanimation jumpifbyte CMP_LESS_THAN, sB_ANIM_TURN, 0x2, BattleScript_BrickBreakDoHit printstring STRINGID_THEWALLSHATTERED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_BrickBreakDoHit:: typecalc2 effectivenesssound @@ -2458,9 +2461,9 @@ BattleScript_BrickBreakDoHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -2479,14 +2482,14 @@ BattleScript_EffectYawn:: attackanimation waitanimation printstring STRINGID_PKMNWASMADEDROWSY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_PrintBankAbilityMadeIneffective:: copybyte sBATTLER, sBATTLER_WITH_ABILITY BattleScript_PrintAbilityMadeIneffective:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEITINEFFECTIVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectKnockOff:: @@ -2520,7 +2523,7 @@ BattleScript_EffectSkillSwap:: attackanimation waitanimation printstring STRINGID_PKMNSWAPPEDABILITIES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectImprison:: @@ -2531,7 +2534,7 @@ BattleScript_EffectImprison:: attackanimation waitanimation printstring STRINGID_PKMNSEALEDOPPONENTMOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRefresh:: @@ -2542,7 +2545,7 @@ BattleScript_EffectRefresh:: attackanimation waitanimation printstring STRINGID_PKMNSTATUSNORMAL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER goto BattleScript_MoveEnd @@ -2554,7 +2557,7 @@ BattleScript_EffectGrudge:: attackanimation waitanimation printstring STRINGID_PKMNWANTSGRUDGE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSnatch:: @@ -2564,9 +2567,9 @@ BattleScript_EffectSnatch:: ppreduce attackanimation waitanimation - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNWAITSFORTARGET - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLowKick:: @@ -2604,7 +2607,7 @@ BattleScript_TeeterDanceLoop:: waitanimation seteffectprimary resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_TeeterDanceDoMoveEndIncrement:: moveendto MOVEEND_NEXT_TARGET BattleScript_TeeterDanceLoopIncrement:: @@ -2613,33 +2616,33 @@ BattleScript_TeeterDanceLoopIncrement:: end BattleScript_TeeterDanceOwnTempoPrevents:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSCONFUSIONWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceSafeguardProtected:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNUSEDSAFEGUARD - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceSubstitutePrevents:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_BUTITFAILED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceAlreadyConfused:: setalreadystatusedmoveattempt BS_ATTACKER - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYCONFUSED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceMissed:: resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_EffectMudSport:: @@ -2651,7 +2654,7 @@ BattleScript_EffectWaterSport:: attackanimation waitanimation printfromtable gSportsUsedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoisonFang:: @@ -2683,22 +2686,22 @@ BattleScript_TickleDoMoveAnim:: statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleTryLowerDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleTryLowerDef printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_TickleTryLowerDef:: playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleEnd printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_TickleEnd:: goto BattleScript_MoveEnd BattleScript_CantLowerMultipleStats:: - pause 0x20 + pause WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_STATSWONTDECREASE2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectCosmicPower:: @@ -2716,13 +2719,13 @@ BattleScript_CosmicPowerDoMoveAnim:: statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerTrySpDef printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CosmicPowerTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerEnd printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CosmicPowerEnd:: goto BattleScript_MoveEnd @@ -2745,13 +2748,13 @@ BattleScript_BulkUpDoMoveAnim:: statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpTryDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpTryDef printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_BulkUpTryDef:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpEnd printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_BulkUpEnd:: goto BattleScript_MoveEnd @@ -2770,21 +2773,21 @@ BattleScript_CalmMindDoMoveAnim:: statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindTrySpDef printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CalmMindTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindEnd printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_CalmMindEnd:: goto BattleScript_MoveEnd BattleScript_CantRaiseMultipleStats:: - pause 0x20 + pause WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_STATSWONTINCREASE2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectDragonDance:: @@ -2802,13 +2805,13 @@ BattleScript_DragonDanceDoMoveAnim:: statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceTrySpeed jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceTrySpeed printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_DragonDanceTrySpeed:: setstatchanger STAT_SPEED, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceEnd printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_DragonDanceEnd:: goto BattleScript_MoveEnd @@ -2820,12 +2823,12 @@ BattleScript_EffectCamouflage:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_FaintAttacker:: playfaintcry BS_ATTACKER - pause 0x40 + pause WAIT_TIME_LONG dofaintanimation BS_ATTACKER cleareffectsonfaint BS_ATTACKER printstring STRINGID_ATTACKERFAINTED @@ -2833,7 +2836,7 @@ BattleScript_FaintAttacker:: BattleScript_FaintTarget:: playfaintcry BS_TARGET - pause 0x40 + pause WAIT_TIME_LONG dofaintanimation BS_TARGET cleareffectsonfaint BS_TARGET printstring STRINGID_TARGETFAINTED @@ -2948,7 +2951,7 @@ BattleScript_LocalBattleWonLoseTexts:: BattleScript_LocalBattleWonReward:: getmoneyreward printstring STRINGID_PLAYERGOTMONEY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_PayDayMoneyAndPickUpItems:: givepaydaymoney pickup @@ -2962,9 +2965,9 @@ BattleScript_LocalBattleLost:: jumpifhalfword CMP_EQUAL, gTrainerBattleOpponent_A, 0x400, BattleScript_LocalBattleLostEnd BattleScript_LocalBattleLostPrintWhiteOut:: printstring STRINGID_PLAYERWHITEOUT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG printstring STRINGID_PLAYERWHITEOUT2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_LocalBattleLostEnd:: end2 BattleScript_CheckDomeDrew:: @@ -3005,23 +3008,23 @@ BattleScript_FrontierLinkBattleLost:: jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_FrontierLinkBattleLostEnd endlinkbattle BattleScript_FrontierLinkBattleLostEnd:: - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_LinkBattleWonOrLost:: jumpifbattletype BATTLE_TYPE_BATTLE_TOWER, BattleScript_TowerLinkBattleWon printstring STRINGID_BATTLEEND - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_LinkBattleWonOrLostWaitEnd endlinkbattle BattleScript_LinkBattleWonOrLostWaitEnd:: - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_TowerLinkBattleWon:: playtrainerdefeatbgm BS_ATTACKER printstring STRINGID_BATTLEEND - waitmessage 0x40 + waitmessage WAIT_TIME_LONG trainerslidein BS_ATTACKER waitstate printstring STRINGID_TRAINER1LOSETEXT @@ -3033,7 +3036,7 @@ BattleScript_TowerLinkBattleWon:: jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_TowerLinkBattleWonEnd endlinkbattle BattleScript_TowerLinkBattleWonEnd:: - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_FrontierTrainerBattleWon:: @@ -3062,22 +3065,22 @@ BattleScript_FrontierTrainerBattleWon_End: BattleScript_SmokeBallEscape:: playanimation BS_ATTACKER, B_ANIM_SMOKEBALL_ESCAPE, NULL printstring STRINGID_PKMNFLEDUSINGITS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_RanAwayUsingMonAbility:: printstring STRINGID_PKMNFLEDUSING - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_GotAwaySafely:: printstring STRINGID_GOTAWAYSAFELY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_WildMonFled:: printstring STRINGID_WILDPKMNFLED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_PrintCantRunFromTrainer:: @@ -3086,7 +3089,7 @@ BattleScript_PrintCantRunFromTrainer:: BattleScript_PrintFailedToRunString:: printfromtable gNoEscapeStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_PrintCantEscapeFromBattle:: @@ -3100,7 +3103,7 @@ BattleScript_PrintFullBox:: BattleScript_ActionSwitch:: hpthresholds2 BS_ATTACKER printstring STRINGID_RETURNMON - setbyte sDMG_MULTIPLIER, 0x2 + setbyte sDMG_MULTIPLIER, 2 jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_PursuitSwitchDmgSetMultihit setmultihit 0x1 goto BattleScript_PursuitSwitchDmgLoop @@ -3133,7 +3136,7 @@ BattleScript_DoSwitchOut:: end2 BattleScript_PursuitDmgOnSwitchOut:: - pause 0x20 + pause WAIT_TIME_SHORT attackstring ppreduce critcalc @@ -3148,9 +3151,9 @@ BattleScript_PursuitDmgOnSwitchOut:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendfromto MOVEEND_ON_DAMAGE_ABILITIES, MOVEEND_CHOICE_MOVE getbattlerfainted BS_TARGET @@ -3161,7 +3164,7 @@ BattleScript_PursuitDmgOnSwitchOutRet: return BattleScript_Pausex20:: - pause 0x20 + pause WAIT_TIME_SHORT return BattleScript_LevelUp:: @@ -3195,7 +3198,7 @@ BattleScript_LearnedNewMove:: buffermovetolearn fanfare MUS_LEVEL_UP printstring STRINGID_PKMNLEARNEDMOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatechoicemoveonlvlup BS_ATTACKER goto BattleScript_TryLearnMoveLoop BattleScript_LearnMoveReturn:: @@ -3203,7 +3206,7 @@ BattleScript_LearnMoveReturn:: BattleScript_RainContinuesOrEnds:: printfromtable gRainContinuesStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_RainContinuesOrEndsEnd playanimation BS_ATTACKER, B_ANIM_RAIN_CONTINUES, NULL BattleScript_RainContinuesOrEndsEnd:: @@ -3211,7 +3214,7 @@ BattleScript_RainContinuesOrEndsEnd:: BattleScript_DamagingWeatherContinues:: printfromtable gSandStormHailContinuesStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL setbyte gBattleCommunication, 0x0 BattleScript_DamagingWeatherLoop:: @@ -3219,7 +3222,7 @@ BattleScript_DamagingWeatherLoop:: weatherdamage jumpifword CMP_EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement printfromtable gSandStormHailDmgStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE effectivenesssound hitanimation BS_ATTACKER @@ -3237,41 +3240,41 @@ BattleScript_DamagingWeatherContinuesEnd:: BattleScript_SandStormHailEnds:: printfromtable gSandStormHailEndStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_SunlightContinues:: printstring STRINGID_SUNLIGHTSTRONG - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playanimation BS_ATTACKER, B_ANIM_SUN_CONTINUES, NULL end2 BattleScript_SunlightFaded:: printstring STRINGID_SUNLIGHTFADED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_OverworldWeatherStarts:: printfromtable gWeatherStartsStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL end3 BattleScript_SideStatusWoreOff:: printstring STRINGID_PKMNSXWOREOFF - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_SafeguardProtected:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNUSEDSAFEGUARD - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_SafeguardEnds:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSAFEGUARDEXPIRED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_LeechSeedTurnDrain:: @@ -3291,14 +3294,14 @@ BattleScript_LeechSeedTurnPrintAndUpdateHp:: healthbarupdate BS_TARGET datahpupdate BS_TARGET printfromtable gLeechSeedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL tryfaintmon BS_TARGET, FALSE, NULL end2 BattleScript_BideStoringEnergy:: printstring STRINGID_PKMNSTORINGENERGY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_BideAttack:: @@ -3306,7 +3309,7 @@ BattleScript_BideAttack:: setmoveeffect MOVE_EFFECT_CHARGING clearstatusfromeffect BS_ATTACKER printstring STRINGID_PKMNUNLEASHEDENERGY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE typecalc bicbyte gMoveResultFlags, MOVE_RESULT_SUPER_EFFECTIVE | MOVE_RESULT_NOT_VERY_EFFECTIVE @@ -3321,7 +3324,7 @@ BattleScript_BideAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -3330,7 +3333,7 @@ BattleScript_BideNoEnergyToAttack:: setmoveeffect MOVE_EFFECT_CHARGING clearstatusfromeffect BS_ATTACKER printstring STRINGID_PKMNUNLEASHEDENERGY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_ButItFailed BattleScript_SuccessForceOut:: @@ -3353,19 +3356,19 @@ BattleScript_TrainerBattleForceOut:: goto BattleScript_MoveEnd BattleScript_MistProtected:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPROTECTEDBYMIST - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_RageIsBuilding:: printstring STRINGID_PKMNRAGEBUILDING - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveUsedIsDisabled:: printstring STRINGID_PKMNMOVEISDISABLED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingDisabledMove:: @@ -3374,7 +3377,7 @@ BattleScript_SelectingDisabledMove:: BattleScript_DisabledNoMore:: printstring STRINGID_PKMNMOVEDISABLEDNOMORE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_SelectingDisabledMoveInPalace:: @@ -3385,12 +3388,12 @@ BattleScript_SelectingUnusableMoveInPalace:: BattleScript_EncoredNoMore:: printstring STRINGID_PKMNENCOREENDED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_DestinyBondTakesLife:: printstring STRINGID_PKMNTOOKFOE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -3444,12 +3447,12 @@ BattleScript_SpikesOnFaintedBattlerFainted:: BattleScript_PrintHurtBySpikes:: printstring STRINGID_PKMNHURTBYSPIKES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_PerishSongTakesLife:: printstring STRINGID_PKMNPERISHCOUNTFELL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -3458,7 +3461,7 @@ BattleScript_PerishSongTakesLife:: BattleScript_PerishSongCountGoesDown:: printstring STRINGID_PKMNPERISHCOUNTFELL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_AllStatsUp:: @@ -3473,27 +3476,27 @@ BattleScript_AllStatsUpAtk:: setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpDef printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AllStatsUpDef:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpeed printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AllStatsUpSpeed:: setstatchanger STAT_SPEED, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpAtk printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AllStatsUpSpAtk:: setstatchanger STAT_SPATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpDef printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AllStatsUpSpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpRet printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AllStatsUpRet:: return @@ -3503,23 +3506,23 @@ BattleScript_RapidSpinAway:: BattleScript_WrapFree:: printstring STRINGID_PKMNGOTFREE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG copybyte gBattlerTarget, sBATTLER return BattleScript_LeechSeedFree:: printstring STRINGID_PKMNSHEDLEECHSEED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_SpikesFree:: printstring STRINGID_PKMNBLEWAWAYSPIKES - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MonTookFutureAttack:: printstring STRINGID_PKMNTOOKATTACK - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_CheckDoomDesireMiss accuracycheck BattleScript_FutureAttackMiss, MOVE_FUTURE_SIGHT goto BattleScript_FutureAttackAnimate @@ -3539,7 +3542,7 @@ BattleScript_DoFutureAttackHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL atk24 BattleScript_FutureAttackEnd BattleScript_FutureAttackEnd:: @@ -3549,11 +3552,11 @@ BattleScript_FutureAttackEnd:: end2 BattleScript_FutureAttackMiss:: - pause 0x20 + pause WAIT_TIME_SHORT setbyte gMoveResultFlags, 0 orbyte gMoveResultFlags, MOVE_RESULT_FAILED resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setbyte gMoveResultFlags, 0 end2 @@ -3567,9 +3570,9 @@ BattleScript_SelectingMoveWithNoPP:: BattleScript_NoPPForMove:: attackstring - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_BUTNOPPLEFT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingTormentedMove:: @@ -3578,7 +3581,7 @@ BattleScript_SelectingTormentedMove:: BattleScript_MoveUsedIsTormented:: printstring STRINGID_PKMNCANTUSEMOVETORMENT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingTormentedMoveInPalace:: @@ -3591,7 +3594,7 @@ BattleScript_SelectingNotAllowedMoveTaunt:: BattleScript_MoveUsedIsTaunted:: printstring STRINGID_PKMNCANTUSEMOVETAUNT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingNotAllowedMoveTauntInPalace:: @@ -3602,35 +3605,35 @@ BattleScript_WishComesTrue:: trywish 0x1, BattleScript_WishButFullHp playanimation BS_TARGET, B_ANIM_WISH_HEAL, NULL printstring STRINGID_PKMNWISHCAMETRUE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_WishButFullHp:: printstring STRINGID_PKMNWISHCAMETRUE - waitmessage 0x40 - pause 0x20 + waitmessage WAIT_TIME_LONG + pause WAIT_TIME_SHORT printstring STRINGID_PKMNHPFULL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_IngrainTurnHeal:: playanimation BS_ATTACKER, B_ANIM_INGRAIN_HEAL, NULL printstring STRINGID_PKMNABSORBEDNUTRIENTS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER end2 BattleScript_PrintMonIsRooted:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNANCHOREDITSELF - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AtkDefDown:: @@ -3641,26 +3644,26 @@ BattleScript_AtkDefDown:: statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_TryDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_AtkDefDown_TryDef printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AtkDefDown_TryDef:: playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_End jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_AtkDefDown_End printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_AtkDefDown_End:: return BattleScript_KnockedOff:: playanimation BS_TARGET, B_ANIM_ITEM_KNOCKOFF, NULL printstring STRINGID_PKMNKNOCKEDOFF - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveUsedIsImprisoned:: printstring STRINGID_PKMNCANTUSEMOVESEALED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingImprisonedMove:: @@ -3673,15 +3676,15 @@ BattleScript_SelectingImprisonedMoveInPalace:: BattleScript_GrudgeTakesPp:: printstring STRINGID_PKMNLOSTPPGRUDGE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MagicCoatBounce:: attackstring ppreduce - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNMOVEBOUNCED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 setmagiccoattarget BS_ATTACKER return @@ -3692,19 +3695,19 @@ BattleScript_SnatchedMove:: snatchsetbattlers playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL printstring STRINGID_PKMNSNATCHEDMOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 swapattackerwithtarget return BattleScript_EnduredMsg:: printstring STRINGID_PKMNENDUREDHIT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_OneHitKOMsg:: printstring STRINGID_ONEHITKO - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_SAtkDown2:: @@ -3714,40 +3717,40 @@ BattleScript_SAtkDown2:: statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_SAtkDown2End jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SAtkDown2End printfromtable gStatDownStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_SAtkDown2End:: return BattleScript_FocusPunchSetUp:: printstring STRINGID_EMPTYSTRING3 - waitmessage 0x1 + waitmessage 1 playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP, NULL printstring STRINGID_PKMNTIGHTENINGFOCUS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_MoveUsedIsAsleep:: printstring STRINGID_PKMNFASTASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG statusanimation BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedWokeUp:: bicword gHitMarker, HITMARKER_x10 printfromtable gWokeUpStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER return BattleScript_MonWokeUpInUproar:: printstring STRINGID_PKMNWOKEUPINUPROAR - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER end2 BattleScript_PoisonTurnDmg:: printstring STRINGID_PKMNHURTBYPOISON - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_DoStatusTurnDmg:: statusanimation BS_ATTACKER BattleScript_DoTurnDmg:: @@ -3761,60 +3764,60 @@ BattleScript_DoTurnDmgEnd:: BattleScript_BurnTurnDmg:: printstring STRINGID_PKMNHURTBYBURN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_DoStatusTurnDmg BattleScript_MoveUsedIsFrozen:: printstring STRINGID_PKMNISFROZEN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG statusanimation BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedUnfroze:: printfromtable gGotDefrostedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER return BattleScript_DefrostedViaFireMove:: printstring STRINGID_PKMNWASDEFROSTED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_TARGET return BattleScript_MoveUsedIsParalyzed:: printstring STRINGID_PKMNISPARALYZED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG statusanimation BS_ATTACKER cancelmultiturnmoves BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedFlinched:: printstring STRINGID_PKMNFLINCHED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_PrintUproarOverTurns:: printfromtable gUproarOverTurnStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_ThrashConfuses:: chosenstatus2animation BS_ATTACKER, STATUS2_CONFUSION printstring STRINGID_PKMNFATIGUECONFUSION - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_MoveUsedIsConfused:: printstring STRINGID_PKMNISCONFUSED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_CONFUSION jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_MoveUsedIsConfusedRet BattleScript_DoSelfConfusionDmg:: cancelmultiturnmoves BS_ATTACKER adjustnormaldamage2 printstring STRINGID_ITHURTCONFUSION - waitmessage 0x40 + waitmessage WAIT_TIME_LONG effectivenesssound hitanimation BS_ATTACKER waitstate @@ -3822,7 +3825,7 @@ BattleScript_DoSelfConfusionDmg:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER resultmessage - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd BattleScript_MoveUsedIsConfusedRet:: @@ -3830,58 +3833,58 @@ BattleScript_MoveUsedIsConfusedRet:: BattleScript_MoveUsedIsConfusedNoMore:: printstring STRINGID_PKMNHEALEDCONFUSION - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_PrintPayDayMoneyString:: printstring STRINGID_PLAYERPICKEDUPMONEY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_WrapTurnDmg:: playanimation BS_ATTACKER, B_ANIM_TURN_TRAP, sB_ANIM_ARG1 printstring STRINGID_PKMNHURTBY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_DoTurnDmg BattleScript_WrapEnds:: printstring STRINGID_PKMNFREEDFROM - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_MoveUsedIsInLove:: printstring STRINGID_PKMNINLOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_INFATUATION return BattleScript_MoveUsedIsInLoveCantAttack:: printstring STRINGID_PKMNIMMOBILIZEDBYLOVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_NightmareTurnDmg:: printstring STRINGID_PKMNLOCKEDINNIGHTMARE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_NIGHTMARE goto BattleScript_DoTurnDmg BattleScript_CurseTurnDmg:: printstring STRINGID_PKMNAFFLICTEDBYCURSE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_CURSED goto BattleScript_DoTurnDmg BattleScript_TargetPRLZHeal:: printstring STRINGID_PKMNHEALEDPARALYSIS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_TARGET return BattleScript_MoveEffectSleep:: statusanimation BS_EFFECT_BATTLER printfromtable gFellAsleepStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_UpdateEffectStatusIconRet:: updatestatusicon BS_EFFECT_BATTLER waitstate @@ -3890,7 +3893,7 @@ BattleScript_UpdateEffectStatusIconRet:: BattleScript_YawnMakesAsleep:: statusanimation BS_EFFECT_BATTLER printstring STRINGID_PKMNFELLASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_EFFECT_BATTLER waitstate makevisible BS_EFFECT_BATTLER @@ -3899,52 +3902,52 @@ BattleScript_YawnMakesAsleep:: BattleScript_MoveEffectPoison:: statusanimation BS_EFFECT_BATTLER printfromtable gGotPoisonedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectBurn:: statusanimation BS_EFFECT_BATTLER printfromtable gGotBurnedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectFreeze:: statusanimation BS_EFFECT_BATTLER printfromtable gGotFrozenStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectParalysis:: statusanimation BS_EFFECT_BATTLER printfromtable gGotParalyzedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectUproar:: printstring STRINGID_PKMNCAUSEDUPROAR - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveEffectToxic:: statusanimation BS_EFFECT_BATTLER printstring STRINGID_PKMNBADLYPOISONED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectPayDay:: printstring STRINGID_COINSSCATTERED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveEffectWrap:: printfromtable gWrappedStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveEffectConfusion:: chosenstatus2animation BS_EFFECT_BATTLER, STATUS2_CONFUSION printstring STRINGID_PKMNWASCONFUSED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_MoveEffectRecoil:: @@ -3955,7 +3958,7 @@ BattleScript_DoRecoil:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHITWITHRECOIL - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL BattleScript_RecoilEnd:: return @@ -3963,11 +3966,11 @@ BattleScript_RecoilEnd:: BattleScript_ItemSteal:: playanimation BS_TARGET, B_ANIM_ITEM_STEAL, NULL printstring STRINGID_PKMNSTOLEITEM - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_DrizzleActivates:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNMADEITRAIN waitstate playanimation BS_BATTLER_0, B_ANIM_RAIN_CONTINUES, NULL @@ -3977,25 +3980,25 @@ BattleScript_DrizzleActivates:: BattleScript_SpeedBoostActivates:: playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printstring STRINGID_PKMNRAISEDSPEED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end3 BattleScript_TraceActivates:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNTRACED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end3 BattleScript_RainDishActivates:: printstring STRINGID_PKMNSXRESTOREDHPALITTLE2 - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER end3 BattleScript_SandstreamActivates:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXWHIPPEDUPSANDSTORM waitstate playanimation BS_BATTLER_0, B_ANIM_SANDSTORM_CONTINUES, NULL @@ -4004,7 +4007,7 @@ BattleScript_SandstreamActivates:: BattleScript_ShedSkinActivates:: printstring STRINGID_PKMNSXCUREDYPROBLEM - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_ATTACKER end3 @@ -4024,7 +4027,7 @@ BattleScript_DoCastformChange:: docastformchangeanimation waitstate printstring STRINGID_PKMNTRANSFORMED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_IntimidateActivatesEnd3:: @@ -4032,7 +4035,7 @@ BattleScript_IntimidateActivatesEnd3:: end3 BattleScript_PauseIntimidateActivates: - pause 0x20 + pause WAIT_TIME_SHORT BattleScript_IntimidateActivates:: setbyte gBattlerTarget, 0x0 setstatchanger STAT_ATK, 1, TRUE @@ -4047,20 +4050,20 @@ BattleScript_IntimidateActivatesLoop: setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printstring STRINGID_PKMNCUTSATTACKWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_IntimidateActivatesLoopIncrement: addbyte gBattlerTarget, 0x1 goto BattleScript_IntimidateActivatesLoop BattleScript_IntimidateActivatesReturn: return BattleScript_IntimidatePrevented: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PREVENTEDFROMWORKING - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_IntimidateActivatesLoopIncrement BattleScript_DroughtActivates:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXINTENSIFIEDSUN waitstate playanimation BS_BATTLER_0, B_ANIM_SUN_CONTINUES, NULL @@ -4069,34 +4072,34 @@ BattleScript_DroughtActivates:: BattleScript_TookAttack:: attackstring - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXTOOKATTACK - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED return BattleScript_SturdyPreventsOHKO:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPROTECTEDBY - pause 0x40 + pause WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_DampStopsExplosion:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSUSAGE - pause 0x40 + pause WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_MoveHPDrain_PPLoss:: ppreduce BattleScript_MoveHPDrain:: attackstring - pause 0x20 + pause WAIT_TIME_SHORT orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNRESTOREDHPUSING - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE goto BattleScript_MoveEnd @@ -4104,9 +4107,9 @@ BattleScript_MonMadeMoveUseless_PPLoss:: ppreduce BattleScript_MonMadeMoveUseless:: attackstring - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYUSELESS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE goto BattleScript_MoveEnd @@ -4114,83 +4117,83 @@ BattleScript_FlashFireBoost_PPLoss:: ppreduce BattleScript_FlashFireBoost:: attackstring - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gFlashFireStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityPreventsPhasingOut:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNANCHORSITSELFWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityNoStatLoss:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSSTATLOSSWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_BRNPrevention:: - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gBRNPreventionStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_PRLZPrevention:: - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gPRLZPreventionStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_PSNPrevention:: - pause 0x20 + pause WAIT_TIME_SHORT printfromtable gPSNPreventionStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_ObliviousPreventsAttraction:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSROMANCEWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_FlinchPrevention:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXPREVENTSFLINCHING - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_OwnTempoPrevents:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSCONFUSIONWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SoundproofProtected:: attackstring ppreduce - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXBLOCKSY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityNoSpecificStatLoss:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXPREVENTSYLOSS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setbyte cMULTISTRING_CHOOSER, 0x3 return BattleScript_StickyHoldActivates:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYINEFFECTIVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_ColorChangeActivates:: printstring STRINGID_PKMNCHANGEDTYPEWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_RoughSkinActivates:: @@ -4198,14 +4201,14 @@ BattleScript_RoughSkinActivates:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHURTSWITH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL return BattleScript_CuteCharmActivates:: status2animation BS_ATTACKER, STATUS2_INFATUATION printstring STRINGID_PKMNSXINFATUATEDY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_ApplySecondaryEffect:: @@ -4219,26 +4222,26 @@ BattleScript_SynchronizeActivates:: return BattleScript_NoItemSteal:: - pause 0x20 + pause WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYINEFFECTIVE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_AbilityCuredStatus:: printstring STRINGID_PKMNSXCUREDITSYPROBLEM - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING return BattleScript_IgnoresWhileAsleep:: printstring STRINGID_PKMNIGNORESASLEEP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET end BattleScript_IgnoresAndUsesRandomMove:: printstring STRINGID_PKMNIGNOREDORDERS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG jumptocalledmove FALSE BattleScript_MoveUsedLoafingAround:: @@ -4248,13 +4251,13 @@ BattleScript_MoveUsedLoafingAround:: setbyte cMULTISTRING_CHOOSER, 0x4 BattleScript_82DB6C7:: printfromtable gInobedientStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET end BattleScript_IgnoresAndFallsAsleep:: printstring STRINGID_PKMNBEGANTONAP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setmoveeffect MOVE_EFFECT_SLEEP | MOVE_EFFECT_AFFECTS_USER seteffectprimary moveendto MOVEEND_NEXT_TARGET @@ -4262,7 +4265,7 @@ BattleScript_IgnoresAndFallsAsleep:: BattleScript_IgnoresAndHitsItself:: printstring STRINGID_PKMNWONTOBEY - waitmessage 0x40 + waitmessage WAIT_TIME_LONG goto BattleScript_DoSelfConfusionDmg BattleScript_SubstituteFade:: @@ -4277,7 +4280,7 @@ BattleScript_BerryCurePrlzEnd2:: BattleScript_BerryCureParRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMCUREDPARALYSIS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4289,7 +4292,7 @@ BattleScript_BerryCurePsnEnd2:: BattleScript_BerryCurePsnRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMCUREDPOISON - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4301,7 +4304,7 @@ BattleScript_BerryCureBrnEnd2:: BattleScript_BerryCureBrnRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMHEALEDBURN - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4313,7 +4316,7 @@ BattleScript_BerryCureFrzEnd2:: BattleScript_BerryCureFrzRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMDEFROSTEDIT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4325,7 +4328,7 @@ BattleScript_BerryCureSlpEnd2:: BattleScript_BerryCureSlpRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMWOKEIT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4337,7 +4340,7 @@ BattleScript_BerryCureConfusionEnd2:: BattleScript_BerryCureConfusionRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMSNAPPEDOUT - waitmessage 0x40 + waitmessage WAIT_TIME_LONG removeitem BS_SCRIPTING return @@ -4348,7 +4351,7 @@ BattleScript_BerryCureChosenStatusEnd2:: BattleScript_BerryCureChosenStatusRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printfromtable gBerryEffectStringIds - waitmessage 0x40 + waitmessage WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4360,14 +4363,14 @@ BattleScript_WhiteHerbEnd2:: BattleScript_WhiteHerbRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDSTATUS - waitmessage 0x40 + waitmessage WAIT_TIME_LONG removeitem BS_SCRIPTING return BattleScript_ItemHealHP_RemoveItem:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHEALTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -4377,7 +4380,7 @@ BattleScript_ItemHealHP_RemoveItem:: BattleScript_BerryPPHealEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDPP - waitmessage 0x40 + waitmessage WAIT_TIME_LONG removeitem BS_ATTACKER end2 @@ -4388,7 +4391,7 @@ BattleScript_ItemHealHP_End2:: BattleScript_ItemHealHP_Ret:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHPALITTLE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -4401,18 +4404,18 @@ BattleScript_SelectingNotAllowedMoveChoiceItem:: BattleScript_FocusBandActivates:: playanimation BS_TARGET, B_ANIM_FOCUS_BAND, NULL printstring STRINGID_PKMNHUNGONWITHX - waitmessage 0x40 + waitmessage WAIT_TIME_LONG return BattleScript_BerryConfuseHealEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHEALTH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_FORXCOMMAYZ - waitmessage 0x40 + waitmessage WAIT_TIME_LONG setmoveeffect MOVE_EFFECT_CONFUSION | MOVE_EFFECT_AFFECTS_USER seteffectprimary removeitem BS_ATTACKER @@ -4430,7 +4433,7 @@ BattleScript_82DB85B:: BattleScript_BerryFocusEnergyEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNUSEDXTOGETPUMPED - waitmessage 0x40 + waitmessage WAIT_TIME_LONG removeitem BS_ATTACKER end2 @@ -4448,7 +4451,7 @@ BattleScript_PalaceTryBattlerFlavorText:: palaceflavortext BS_ATTACKER @ BS_ATTACKER here overwritten by gBattleCommunication + 1 jumpifbyte CMP_NOT_EQUAL, gBattleCommunication, TRUE, BattleScript_PalaceEndFlavorText printfromtable gBattlePalaceFlavorTextTable - waitmessage 0x40 + waitmessage WAIT_TIME_LONG BattleScript_PalaceEndFlavorText:: addbyte gBattleCommunication + 1, 1 jumpifbytenotequal gBattleCommunication + 1, gBattlersCount, BattleScript_PalaceTryBattlerFlavorText @@ -4460,12 +4463,12 @@ BattleScript_ArenaTurnBeginning:: waitcry BS_ATTACKER volumedown playse SE_ARENA_TIMEUP1 - pause 0x8 + pause 8 playse SE_ARENA_TIMEUP1 various14 BS_ATTACKER arenajudmengtstring 8 arenawaitmessage 8 - pause 0x40 + pause WAIT_TIME_LONG various15 BS_ATTACKER volumeup end2 @@ -4475,7 +4478,7 @@ BattleScript_82DB8E0:: @ Unused battlescript various14 BS_ATTACKER arenajudmengtstring BS_TARGET arenawaitmessage BS_TARGET - pause 0x40 + pause WAIT_TIME_LONG various15 BS_ATTACKER end2 @@ -4486,16 +4489,16 @@ BattleScript_ArenaDoJudgment:: waitstate volumedown playse SE_ARENA_TIMEUP1 - pause 0x8 + pause 8 playse SE_ARENA_TIMEUP1 - pause 0x40 + pause WAIT_TIME_LONG various14 BS_ATTACKER arenajudmengtstring 1 arenawaitmessage 1 - pause 0x40 + pause WAIT_TIME_LONG setbyte gBattleCommunication, 0x0 arenajudgmentwindow - pause 0x40 + pause WAIT_TIME_LONG arenajudgmentwindow arenajudmengtstring 2 arenawaitmessage 2 @@ -4513,7 +4516,7 @@ BattleScript_ArenaDoJudgment:: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_DEFEATEDOPPONENTBYREFEREE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playfaintcry BS_OPPONENT1 waitcry BS_ATTACKER dofaintanimation BS_OPPONENT1 @@ -4527,7 +4530,7 @@ BattleScript_ArenaJudgmentPlayerLoses: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_LOSTTOOPPONENTBYREFEREE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playfaintcry BS_PLAYER1 waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 @@ -4541,7 +4544,7 @@ BattleScript_ArenaJudgmentDraw: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_TIEDOPPONENTBYREFEREE - waitmessage 0x40 + waitmessage WAIT_TIME_LONG playfaintcry BS_PLAYER1 waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 @@ -4560,12 +4563,12 @@ BattleScript_AskIfWantsToForfeitMatch:: BattleScript_PrintPlayerForfeited:: printstring STRINGID_FORFEITEDMATCH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 BattleScript_PrintPlayerForfeitedLinkBattle:: printstring STRINGID_FORFEITEDMATCH - waitmessage 0x40 + waitmessage WAIT_TIME_LONG endlinkbattle - waitmessage 0x40 + waitmessage WAIT_TIME_LONG end2 From a836bd1085c64f34d58584cb0e510d9af72a586c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 02:17:36 -0400 Subject: [PATCH 081/762] Add missing trainer constant use --- data/battle_scripts_1.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 92ef199cc619..97234679978c 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -7,6 +7,7 @@ #include "constants/moves.h" #include "constants/songs.h" #include "constants/game_stat.h" +#include "constants/trainers.h" .include "asm/macros.inc" .include "asm/macros/battle_script.inc" .include "constants/constants.inc" @@ -2962,7 +2963,7 @@ BattleScript_LocalBattleLost:: jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_LocalBattleLostPrintTrainersWinText jumpifbattletype BATTLE_TYPE_TRAINER_HILL, BattleScript_LocalBattleLostPrintTrainersWinText jumpifbattletype BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd - jumpifhalfword CMP_EQUAL, gTrainerBattleOpponent_A, 0x400, BattleScript_LocalBattleLostEnd + jumpifhalfword CMP_EQUAL, gTrainerBattleOpponent_A, TRAINER_SECRET_BASE, BattleScript_LocalBattleLostEnd BattleScript_LocalBattleLostPrintWhiteOut:: printstring STRINGID_PLAYERWHITEOUT waitmessage WAIT_TIME_LONG From 1b8d405b5e39de986954f8c3c7c3e15ea4a4967c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 12:54:40 -0400 Subject: [PATCH 082/762] Add missing include guard suffixes --- berry_fix/payload/include/gba/defines.h | 6 +++--- include/battle_gfx_sfx_util.h | 6 +++--- include/constants/metatile_behaviors.h | 6 +++--- include/gba/defines.h | 6 +++--- include/item_menu_icons.h | 6 +++--- include/metatile_behavior.h | 6 +++--- include/script_pokemon_util.h | 6 +++--- 7 files changed, 21 insertions(+), 21 deletions(-) diff --git a/berry_fix/payload/include/gba/defines.h b/berry_fix/payload/include/gba/defines.h index 289518cf3775..4037af584640 100644 --- a/berry_fix/payload/include/gba/defines.h +++ b/berry_fix/payload/include/gba/defines.h @@ -1,5 +1,5 @@ -#ifndef GUARD_GBA_DEFINES -#define GUARD_GBA_DEFINES +#ifndef GUARD_GBA_DEFINES_H +#define GUARD_GBA_DEFINES_H #include @@ -84,4 +84,4 @@ #define RGB_CYAN RGB(0, 31, 31) #define RGB_WHITEALPHA (RGB_WHITE | 0x8000) -#endif // GUARD_GBA_DEFINES +#endif // GUARD_GBA_DEFINES_H diff --git a/include/battle_gfx_sfx_util.h b/include/battle_gfx_sfx_util.h index e3f549aa905c..3288204d121c 100644 --- a/include/battle_gfx_sfx_util.h +++ b/include/battle_gfx_sfx_util.h @@ -1,5 +1,5 @@ -#ifndef GUARD_BATTLE_GFX_SFX_UTIL -#define GUARD_BATTLE_GFX_SFX_UTIL +#ifndef GUARD_BATTLE_GFX_SFX_UTIL_H +#define GUARD_BATTLE_GFX_SFX_UTIL_H void AllocateBattleSpritesData(void); void FreeBattleSpritesData(void); @@ -45,4 +45,4 @@ void AllocateMonSpritesGfx(void); void FreeMonSpritesGfx(void); bool32 ShouldPlayNormalMonCry(struct Pokemon *mon); -#endif // GUARD_BATTLE_GFX_SFX_UTIL +#endif // GUARD_BATTLE_GFX_SFX_UTIL_H diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 94cb0ffcaa18..cc069c66cd8a 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -1,5 +1,5 @@ -#ifndef GUARD_METATILE_BEHAVIORS -#define GUARD_METATILE_BEHAVIORS +#ifndef GUARD_METATILE_BEHAVIORS_H +#define GUARD_METATILE_BEHAVIORS_H #define MB_NORMAL 0x00 #define MB_SECRET_BASE_WALL 0x01 @@ -242,4 +242,4 @@ #define MB_UNUSED_EE 0xEE #define MB_UNUSED_EF 0xEF -#endif // GUARD_METATILE_BEHAVIORS +#endif // GUARD_METATILE_BEHAVIORS_H diff --git a/include/gba/defines.h b/include/gba/defines.h index 78c68859390d..ad06aaad2db8 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -1,5 +1,5 @@ -#ifndef GUARD_GBA_DEFINES -#define GUARD_GBA_DEFINES +#ifndef GUARD_GBA_DEFINES_H +#define GUARD_GBA_DEFINES_H #include @@ -76,4 +76,4 @@ #define TOTAL_OBJ_TILE_COUNT 1024 -#endif // GUARD_GBA_DEFINES +#endif // GUARD_GBA_DEFINES_H diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index e061149fc56f..7ff6ace94bd4 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -1,5 +1,5 @@ -#ifndef GUARD_ITEM_MENU_ICONS -#define GUARD_ITEM_MENU_ICONS +#ifndef GUARD_ITEM_MENU_ICONS_H +#define GUARD_ITEM_MENU_ICONS_H extern const struct CompressedSpriteSheet gBagMaleSpriteSheet; extern const struct CompressedSpriteSheet gBagFemaleSpriteSheet; @@ -28,4 +28,4 @@ u8 CreateBerryFlavorCircleSprite(s16 x); #define TAG_BERRY_PIC_TILE 0xFFFF #define TAG_BERRY_PIC_PAL 0x7544 -#endif // GUARD_ITEM_MENU_ICONS +#endif // GUARD_ITEM_MENU_ICONS_H diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index d4bd9e683248..584b3e546ec5 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -1,5 +1,5 @@ -#ifndef GUARD_METATILE_BEHAVIOR -#define GUARD_METATILE_BEHAVIOR +#ifndef GUARD_METATILE_BEHAVIOR_H +#define GUARD_METATILE_BEHAVIOR_H bool8 MetatileBehavior_IsATile(u8); bool8 MetatileBehavior_IsEncounterTile(u8); @@ -146,4 +146,4 @@ bool8 MetatileBehavior_IsLongGrass_Duplicate(u8); bool8 MetatileBehavior_IsLongGrassSouthEdge(u8); bool8 MetatileBehavior_IsTrainerHillTimer(u8); -#endif // GUARD_METATILE_BEHAVIOR +#endif // GUARD_METATILE_BEHAVIOR_H diff --git a/include/script_pokemon_util.h b/include/script_pokemon_util.h index 120c28a63706..cae16e40a69b 100644 --- a/include/script_pokemon_util.h +++ b/include/script_pokemon_util.h @@ -1,5 +1,5 @@ -#ifndef GUARD_SCRIPT_POKEMON_UTIL -#define GUARD_SCRIPT_POKEMON_UTIL +#ifndef GUARD_SCRIPT_POKEMON_UTIL_H +#define GUARD_SCRIPT_POKEMON_UTIL_H u8 ScriptGiveMon(u16, u8, u16, u32, u32, u8); u8 ScriptGiveEgg(u16); @@ -8,4 +8,4 @@ void ScriptSetMonMoveSlot(u8, u16, u8); void ReducePlayerPartyToSelectedMons(void); void HealPlayerParty(void); -#endif // GUARD_SCRIPT_POKEMON_UTIL +#endif // GUARD_SCRIPT_POKEMON_UTIL_H From 9ea9ffde09c9f3ca1772045935b3b0bd858232a0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Apr 2021 02:27:12 -0400 Subject: [PATCH 083/762] Add remaining multistring chooser constants --- data/battle_scripts_1.s | 909 +++++++++++++------------- data/battle_scripts_2.s | 52 +- include/battle.h | 21 +- include/battle_ai_switch_items.h | 20 + include/battle_message.h | 3 +- include/constants/battle.h | 4 + include/constants/battle_string_ids.h | 208 +++++- src/battle_ai_switch_items.c | 27 +- src/battle_main.c | 10 +- src/battle_message.c | 235 ++++--- src/battle_script_commands.c | 235 +++---- src/battle_tv.c | 8 +- src/battle_util.c | 136 ++-- src/battle_util2.c | 7 +- src/pokemon.c | 2 +- 15 files changed, 1104 insertions(+), 773 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 97234679978c..daaf5eafd275 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -13,9 +13,6 @@ .include "constants/constants.inc" .section script_data, "aw", %progbits - -.set WAIT_TIME_LONG, 64 -.set WAIT_TIME_SHORT, 32 .align 2 gBattleScriptsForMoveEffects:: @ 82D86A8 @@ -282,9 +279,9 @@ BattleScript_HitFromAtkAnimation:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL BattleScript_MoveEnd:: @@ -297,11 +294,11 @@ BattleScript_PrintMoveMissed:: attackstring ppreduce BattleScript_MoveMissedPause:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT BattleScript_MoveMissed:: effectivenesssound resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSleep:: @@ -322,21 +319,21 @@ BattleScript_EffectSleep:: BattleScript_AlreadyAsleep:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_WasntAffected:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNWASNTAFFECTED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_CantMakeAsleep:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gUproarAwakeStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoisonHit:: @@ -361,23 +358,23 @@ BattleScript_EffectAbsorb:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG negativedamage orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE jumpifability BS_TARGET, ABILITY_LIQUID_OOZE, BattleScript_AbsorbLiquidOoze - setbyte cMULTISTRING_CHOOSER, 0x0 + setbyte cMULTISTRING_CHOOSER, B_MSG_ABSORB goto BattleScript_AbsorbUpdateHp BattleScript_AbsorbLiquidOoze:: manipulatedamage DMG_CHANGE_SIGN - setbyte cMULTISTRING_CHOOSER, 0x1 + setbyte cMULTISTRING_CHOOSER, B_MSG_ABSORB_OOZE BattleScript_AbsorbUpdateHp:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER jumpifmovehadnoeffect BattleScript_AbsorbTryFainting - printfromtable gLeechSeedDrainStringIds - waitmessage WAIT_TIME_LONG + printfromtable gAbsorbDrainStringIds + waitmessage B_WAIT_TIME_LONG BattleScript_AbsorbTryFainting:: tryfaintmon BS_ATTACKER, FALSE, NULL tryfaintmon BS_TARGET, FALSE, NULL @@ -422,9 +419,9 @@ BattleScript_ExplosionLoop: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop @@ -433,7 +430,7 @@ BattleScript_ExplosionLoop: BattleScript_ExplosionMissed: effectivenesssound resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop tryfaintmon BS_ATTACKER, FALSE, NULL @@ -453,7 +450,7 @@ BattleScript_EffectDreamEater:: BattleScript_DreamEaterNoEffect: attackstring ppreduce - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_WasntAffected BattleScript_DreamEaterWorked: accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE @@ -471,16 +468,16 @@ BattleScript_DreamEaterWorked: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG negativedamage orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER jumpifmovehadnoeffect BattleScript_DreamEaterTryFaintEnd printstring STRINGID_PKMNDREAMEATEN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_DreamEaterTryFaintEnd: tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -488,12 +485,12 @@ BattleScript_DreamEaterTryFaintEnd: BattleScript_EffectMirrorMove:: attackcanceler attackstring - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG trymirrormove ppreduce orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_MIRRORMOVEFAILED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackUp:: @@ -516,8 +513,8 @@ BattleScript_EffectStatUpAfterAtkCanceler:: attackstring ppreduce statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_StatUpEnd - jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatUpAttackAnim - pause WAIT_TIME_SHORT + jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpAttackAnim + pause B_WAIT_TIME_SHORT goto BattleScript_StatUpPrintString BattleScript_StatUpAttackAnim:: attackanimation @@ -527,14 +524,14 @@ BattleScript_StatUpDoAnim:: playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 BattleScript_StatUpPrintString:: printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_StatUpEnd:: goto BattleScript_MoveEnd BattleScript_StatUp:: playanimation BS_EFFECT_BATTLER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_EffectAttackDown:: @@ -562,9 +559,9 @@ BattleScript_EffectStatDown:: attackstring ppreduce statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_StatDownEnd - jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatDownDoAnim - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x3, BattleScript_StatDownEnd - pause WAIT_TIME_SHORT + jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_StatDownDoAnim + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_FELL_EMPTY, BattleScript_StatDownEnd + pause B_WAIT_TIME_SHORT goto BattleScript_StatDownPrintString BattleScript_StatDownDoAnim:: attackanimation @@ -573,14 +570,14 @@ BattleScript_StatDownDoAnim:: playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 BattleScript_StatDownPrintString:: printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_StatDownEnd:: goto BattleScript_MoveEnd BattleScript_StatDown:: playanimation BS_EFFECT_BATTLER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_EffectHaze:: @@ -591,7 +588,7 @@ BattleScript_EffectHaze:: waitanimation normalisebuffs printstring STRINGID_STATCHANGESGONE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectBide:: @@ -654,7 +651,7 @@ BattleScript_DoMultiHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 waitmessage 1 addbyte sMULTIHIT_STRING + 4, 0x1 @@ -663,14 +660,14 @@ BattleScript_DoMultiHit:: decrementmultihit BattleScript_MultiHitLoop goto BattleScript_MultiHitPrintStrings BattleScript_MultiHitNoMoreHits:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT BattleScript_MultiHitPrintStrings:: resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumpifmovehadnoeffect BattleScript_MultiHitEnd copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 printstring STRINGID_HITXTIMES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_MultiHitEnd:: seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL @@ -686,7 +683,7 @@ BattleScript_EffectConversion:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlinchHit:: @@ -704,7 +701,7 @@ BattleScript_EffectRestoreHp:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectToxic:: @@ -725,19 +722,19 @@ BattleScript_EffectToxic:: setmoveeffect MOVE_EFFECT_TOXIC seteffectprimary resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyPoisoned:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG printstring STRINGID_PKMNALREADYPOISONED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_ImmunityProtected:: copybyte gEffectBattler, gBattlerTarget - setbyte cMULTISTRING_CHOOSER, 0x0 + setbyte cMULTISTRING_CHOOSER, B_MSG_ABILITY_PREVENTS_MOVE_STATUS call BattleScript_PSNPrevention goto BattleScript_MoveEnd @@ -763,24 +760,24 @@ BattleScript_EffectRest:: jumpifstatus BS_ATTACKER, STATUS1_SLEEP, BattleScript_RestIsAlreadyAsleep jumpifcantmakeasleep BattleScript_RestCantSleep trysetrest BattleScript_AlreadyAtFullHp - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gRestUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER waitstate goto BattleScript_PresentHealTarget BattleScript_RestCantSleep:: - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG printfromtable gUproarAwakeStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_RestIsAlreadyAsleep:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYASLEEP2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectOHKO:: @@ -794,15 +791,15 @@ BattleScript_EffectOHKO:: trysetdestinybondtohappen goto BattleScript_HitFromAtkAnimation BattleScript_KOFail:: - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG printfromtable gKOFailedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRazorWind:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn - setbyte sTWOTURN_STRINGID, 0 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_RAZOR_WIND call BattleScriptFirstChargingTurn goto BattleScript_MoveEnd @@ -827,7 +824,7 @@ BattleScriptFirstChargingTurn:: seteffectprimary copybyte cMULTISTRING_CHOOSER, sTWOTURN_STRINGID printfromtable gFirstTurnOfTwoStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_EffectSuperFang:: @@ -877,12 +874,12 @@ BattleScript_EffectRecoilIfMiss:: BattleScript_MoveMissedDoDamage:: attackstring ppreduce - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_MoveEnd printstring STRINGID_PKMNCRASHED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG damagecalc typecalc adjustnormaldamage @@ -903,7 +900,7 @@ BattleScript_EffectMist:: attackanimation waitanimation printfromtable gMistUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFocusEnergy:: @@ -915,7 +912,7 @@ BattleScript_EffectFocusEnergy:: attackanimation waitanimation printfromtable gFocusEnergyUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecoil:: @@ -938,14 +935,14 @@ BattleScript_EffectConfuse:: setmoveeffect MOVE_EFFECT_CONFUSION seteffectprimary resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyConfused:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYCONFUSED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackUp2:: @@ -976,7 +973,7 @@ BattleScript_EffectTransform:: attackanimation waitanimation printfromtable gTransformUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectAttackDown2:: @@ -1004,7 +1001,7 @@ BattleScript_PrintReflectLightScreenSafeguardString:: attackanimation waitanimation printfromtable gReflectLightScreenSafeguardStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoison:: @@ -1025,7 +1022,7 @@ BattleScript_EffectPoison:: setmoveeffect MOVE_EFFECT_POISON seteffectprimary resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectParalyze:: @@ -1045,19 +1042,19 @@ BattleScript_EffectParalyze:: setmoveeffect MOVE_EFFECT_PARALYSIS seteffectprimary resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyParalyzed:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNISALREADYPARALYZED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_LimberProtected:: copybyte gEffectBattler, gBattlerTarget - setbyte cMULTISTRING_CHOOSER, 0x0 + setbyte cMULTISTRING_CHOOSER, B_MSG_ABILITY_PREVENTS_MOVE_STATUS call BattleScript_PRLZPrevention goto BattleScript_MoveEnd @@ -1088,7 +1085,7 @@ BattleScript_EffectAccuracyDownHit:: BattleScript_EffectSkyAttack:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn - setbyte sTWOTURN_STRINGID, 3 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SKY_ATTACK call BattleScriptFirstChargingTurn goto BattleScript_MoveEnd @@ -1113,8 +1110,8 @@ BattleScript_EffectSubstitute:: waitstate jumpifstatus2 BS_ATTACKER, STATUS2_SUBSTITUTE, BattleScript_AlreadyHasSubstitute setsubstitute - jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x1, BattleScript_SubstituteAnim - pause WAIT_TIME_SHORT + jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_SUBSTITUTE_FAILED, BattleScript_SubstituteAnim + pause B_WAIT_TIME_SHORT goto BattleScript_SubstituteString BattleScript_SubstituteAnim:: attackanimation @@ -1123,13 +1120,13 @@ BattleScript_SubstituteAnim:: datahpupdate BS_ATTACKER BattleScript_SubstituteString:: printfromtable gSubsituteUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyHasSubstitute:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNHASSUBSTITUTE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecharge:: @@ -1140,7 +1137,7 @@ BattleScript_EffectRecharge:: BattleScript_MoveUsedMustRecharge:: printstring STRINGID_PKMNMUSTRECHARGE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRage:: @@ -1165,13 +1162,13 @@ BattleScript_EffectMimic:: attackanimation waitanimation printstring STRINGID_PKMNLEARNEDMOVE2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMetronome:: attackcanceler attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT attackanimation waitanimation setbyte sB_ANIM_TURN, 0x0 @@ -1181,7 +1178,7 @@ BattleScript_EffectMetronome:: BattleScript_EffectLeechSeed:: attackcanceler attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT ppreduce jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed accuracycheck BattleScript_DoLeechSeed, ACC_CURR_MOVE @@ -1190,7 +1187,7 @@ BattleScript_DoLeechSeed:: attackanimation waitanimation printfromtable gLeechSeedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSplash:: @@ -1201,7 +1198,7 @@ BattleScript_EffectSplash:: waitanimation incrementgamestat GAME_STAT_USED_SPLASH printstring STRINGID_BUTNOTHINGHAPPENED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectDisable:: @@ -1213,7 +1210,7 @@ BattleScript_EffectDisable:: attackanimation waitanimation printstring STRINGID_PKMNMOVEWASDISABLED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLevelDamage:: @@ -1257,7 +1254,7 @@ BattleScript_EffectEncore:: attackanimation waitanimation printstring STRINGID_PKMNGOTENCORE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPainSplit:: @@ -1275,7 +1272,7 @@ BattleScript_EffectPainSplit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_SHAREDPAIN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSnore:: @@ -1287,7 +1284,7 @@ BattleScript_EffectSnore:: BattleScript_SnoreIsAsleep:: jumpifhalfword CMP_EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoSnore printstring STRINGID_PKMNFASTASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER BattleScript_DoSnore:: attackstring @@ -1304,7 +1301,7 @@ BattleScript_EffectConversion2:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLockOn:: @@ -1317,7 +1314,7 @@ BattleScript_EffectLockOn:: attackanimation waitanimation printstring STRINGID_PKMNTOOKAIM - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSketch:: @@ -1329,7 +1326,7 @@ BattleScript_EffectSketch:: attackanimation waitanimation printstring STRINGID_PKMNSKETCHEDMOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSleepTalk:: @@ -1340,13 +1337,13 @@ BattleScript_EffectSleepTalk:: goto BattleScript_ButItFailed BattleScript_SleepTalkIsAsleep:: printstring STRINGID_PKMNFASTASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER attackstring ppreduce orword gHitMarker, HITMARKER_NO_PPDEDUCT trychoosesleeptalkmove BattleScript_SleepTalkUsingMove - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG goto BattleScript_ButItFailed BattleScript_SleepTalkUsingMove:: attackanimation @@ -1363,7 +1360,7 @@ BattleScript_EffectDestinyBond:: attackanimation waitanimation printstring STRINGID_PKMNTRYINGTOTAKEFOE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlail:: @@ -1379,7 +1376,7 @@ BattleScript_EffectSpite:: attackanimation waitanimation printstring STRINGID_PKMNREDUCEDPP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHealBell:: @@ -1391,15 +1388,15 @@ BattleScript_EffectHealBell:: attackanimation waitanimation printfromtable gPartyStatusHealStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumpifnotmove MOVE_HEAL_BELL, BattleScript_PartyHealEnd - jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x1, BattleScript_CheckHealBellMon2Unaffected + jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, B_MSG_BELL_SOUNDPROOF_ATTACKER, BattleScript_CheckHealBellMon2Unaffected printstring STRINGID_PKMNSXBLOCKSY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CheckHealBellMon2Unaffected:: - jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x2, BattleScript_PartyHealEnd + jumpifbyte CMP_NO_COMMON_BITS, cMULTISTRING_CHOOSER, B_MSG_BELL_SOUNDPROOF_PARTNER, BattleScript_PartyHealEnd printstring STRINGID_PKMNSXBLOCKSY2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_PartyHealEnd:: updatestatusicon BS_ATTACKER_WITH_PARTNER waitstate @@ -1436,7 +1433,7 @@ BattleScript_DoTripleKickAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 waitmessage 1 moveendto MOVEEND_NEXT_TARGET @@ -1444,17 +1441,17 @@ BattleScript_DoTripleKickAttack:: decrementmultihit BattleScript_TripleKickLoop goto BattleScript_TripleKickPrintStrings BattleScript_TripleKickNoMoreHits:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickPrintStrings bicbyte gMoveResultFlags, MOVE_RESULT_MISSED BattleScript_TripleKickPrintStrings:: resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickEnd jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_TripleKickEnd copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 printstring STRINGID_HITXTIMES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_TripleKickEnd:: seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL @@ -1477,7 +1474,7 @@ BattleScript_EffectMeanLook:: setmoveeffect MOVE_EFFECT_PREVENT_ESCAPE seteffectprimary printstring STRINGID_TARGETCANTESCAPENOW - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectNightmare:: @@ -1494,7 +1491,7 @@ BattleScript_NightmareWorked:: setmoveeffect MOVE_EFFECT_NIGHTMARE seteffectprimary printstring STRINGID_PKMNFELLINTONIGHTMARE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMinimize:: @@ -1519,17 +1516,17 @@ BattleScript_CurseTrySpeed:: setstatchanger STAT_SPEED, 1, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryAttack printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CurseTryAttack:: setstatchanger STAT_ATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryDefence + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryDefense printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG -BattleScript_CurseTryDefence:: + waitmessage B_WAIT_TIME_LONG +BattleScript_CurseTryDefense:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseEnd printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CurseEnd:: goto BattleScript_MoveEnd BattleScript_GhostCurse:: @@ -1549,7 +1546,7 @@ BattleScript_DoGhostCurse:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNLAIDCURSE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd @@ -1562,7 +1559,7 @@ BattleScript_EffectEndure:: attackanimation waitanimation printfromtable gProtectLikeUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSpikes:: @@ -1573,7 +1570,7 @@ BattleScript_EffectSpikes:: attackanimation waitanimation printstring STRINGID_SPIKESSCATTERED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectForesight:: @@ -1585,7 +1582,7 @@ BattleScript_EffectForesight:: attackanimation waitanimation printstring STRINGID_PKMNIDENTIFIED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPerishSong:: @@ -1596,7 +1593,7 @@ BattleScript_EffectPerishSong:: attackanimation waitanimation printstring STRINGID_FAINTINTHREE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG setbyte sBATTLER, 0x0 BattleScript_PerishSongLoop:: jumpifability BS_SCRIPTING, ABILITY_SOUNDPROOF, BattleScript_PerishSongNotAffected @@ -1607,7 +1604,7 @@ BattleScript_PerishSongLoopIncrement:: BattleScript_PerishSongNotAffected:: printstring STRINGID_PKMNSXBLOCKSY2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_PerishSongLoopIncrement BattleScript_EffectSandstorm:: @@ -1640,11 +1637,11 @@ BattleScript_EffectSwagger:: waitanimation setstatchanger STAT_ATK, 2, FALSE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_SwaggerTryConfuse - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SwaggerTryConfuse + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SwaggerTryConfuse setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_SwaggerTryConfuse:: jumpifability BS_TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifsideaffecting BS_TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected @@ -1675,7 +1672,7 @@ BattleScript_EffectAttract:: attackanimation waitanimation printstring STRINGID_PKMNFELLINLOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectReturn:: @@ -1710,9 +1707,9 @@ BattleScript_EffectMagnitude:: ppreduce selectfirstvalidtarget magnitudedamagecalculation - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_MAGNITUDESTRENGTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_HitsAllWithUndergroundBonusLoop BattleScript_EffectBatonPass:: @@ -1774,7 +1771,7 @@ BattleScript_MoveWeatherChange:: attackanimation waitanimation printfromtable gMoveWeatherChangeStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG call BattleScript_WeatherFormChanges goto BattleScript_MoveEnd @@ -1808,7 +1805,7 @@ BattleScript_EffectBellyDrum:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNCUTHPMAXEDATTACK - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPsychUp:: @@ -1819,7 +1816,7 @@ BattleScript_EffectPsychUp:: attackanimation waitanimation printstring STRINGID_PKMNCOPIEDSTATCHANGES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMirrorCoat:: @@ -1835,15 +1832,15 @@ BattleScript_EffectMirrorCoat:: BattleScript_EffectSkullBash:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn - setbyte sTWOTURN_STRINGID, 2 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SKULL_BASH call BattleScriptFirstChargingTurn setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_SkullBashEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SkullBashEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SkullBashEnd setgraphicalstatchangevalues playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_SkullBashEnd:: goto BattleScript_MoveEnd @@ -1883,9 +1880,9 @@ BattleScript_DoHitAllWithUndergroundBonus:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 waitmessage 1 tryfaintmon BS_TARGET, FALSE, NULL @@ -1893,11 +1890,11 @@ BattleScript_DoHitAllWithUndergroundBonus:: jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end BattleScript_HitAllWithUndergroundBonusMissed:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT typecalc effectivenesssound resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end @@ -1910,7 +1907,7 @@ BattleScript_EffectFutureSight:: attackanimation waitanimation printfromtable gFutureMoveUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectGust:: @@ -1931,7 +1928,7 @@ BattleScript_EffectSolarbeam:: BattleScript_SolarbeamDecideTurn:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn - setbyte sTWOTURN_STRINGID, 1 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SOLAR_BEAM call BattleScriptFirstChargingTurn goto BattleScript_MoveEnd BattleScript_SolarbeamOnFirstTurn:: @@ -1957,7 +1954,7 @@ BattleScript_EffectTeleport:: attackanimation waitanimation printstring STRINGID_PKMNFLEDFROMBATTLE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG setoutcomeonteleport BS_ATTACKER goto BattleScript_MoveEnd @@ -1965,7 +1962,7 @@ BattleScript_EffectBeatUp:: attackcanceler accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT ppreduce setbyte gBattleCommunication, 0x0 BattleScript_BeatUpLoop:: @@ -1985,9 +1982,9 @@ BattleScript_BeatUpAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendto MOVEEND_NEXT_TARGET goto BattleScript_BeatUpLoop @@ -2000,19 +1997,19 @@ BattleScript_EffectSemiInvulnerable:: jumpifmove MOVE_FLY, BattleScript_FirstTurnFly jumpifmove MOVE_DIVE, BattleScript_FirstTurnDive jumpifmove MOVE_BOUNCE, BattleScript_FirstTurnBounce - setbyte sTWOTURN_STRINGID, 5 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_DIG goto BattleScript_FirstTurnSemiInvulnerable BattleScript_FirstTurnBounce:: - setbyte sTWOTURN_STRINGID, 7 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_BOUNCE goto BattleScript_FirstTurnSemiInvulnerable BattleScript_FirstTurnDive:: - setbyte sTWOTURN_STRINGID, 6 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_DIVE goto BattleScript_FirstTurnSemiInvulnerable BattleScript_FirstTurnFly:: - setbyte sTWOTURN_STRINGID, 4 + setbyte sTWOTURN_STRINGID, B_MSG_TURN1_FLY BattleScript_FirstTurnSemiInvulnerable:: call BattleScriptFirstChargingTurn setsemiinvulnerablebit @@ -2042,7 +2039,7 @@ BattleScript_EffectDefenseCurl:: setdefensecurlbit setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DefenseCurlDoStatUpAnim - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatUpPrintString + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpPrintString attackanimation waitanimation BattleScript_DefenseCurlDoStatUpAnim:: @@ -2060,13 +2057,13 @@ BattleScript_PresentHealTarget:: healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyAtFullHp:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNHPFULL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFakeOut:: @@ -2080,17 +2077,17 @@ BattleScript_ButItFailedAtkStringPpReduce:: BattleScript_ButItFailedPpReduce:: ppreduce BattleScript_ButItFailed:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_NotAffected:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectUproar:: @@ -2112,7 +2109,7 @@ BattleScript_EffectStockpile:: attackanimation waitanimation printfromtable gStockpileUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSpitUp:: @@ -2126,18 +2123,18 @@ BattleScript_EffectSpitUp:: adjustsetdamage goto BattleScript_HitFromAtkAnimation BattleScript_SpitUpFail:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_FAILEDTOSPITUP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SpitUpFailProtect:: attackstring ppreduce - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG stockpiletobasedamage BattleScript_SpitUpFail resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSwallow:: @@ -2148,9 +2145,9 @@ BattleScript_EffectSwallow:: goto BattleScript_PresentHealTarget BattleScript_SwallowFail:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gSwallowFailStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHail:: @@ -2169,7 +2166,7 @@ BattleScript_EffectTorment:: attackanimation waitanimation printstring STRINGID_PKMNSUBJECTEDTOTORMENT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectFlatter:: @@ -2183,11 +2180,11 @@ BattleScript_EffectFlatter:: waitanimation setstatchanger STAT_SPATK, 1, FALSE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_FlatterTryConfuse - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_FlatterTryConfuse + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_FlatterTryConfuse setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_FlatterTryConfuse:: jumpifability BS_TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifsideaffecting BS_TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected @@ -2214,15 +2211,15 @@ BattleScript_EffectWillOWisp:: BattleScript_WaterVeilPrevents:: copybyte gEffectBattler, gBattlerTarget - setbyte cMULTISTRING_CHOOSER, 0x0 + setbyte cMULTISTRING_CHOOSER, B_MSG_ABILITY_PREVENTS_MOVE_STATUS call BattleScript_BRNPrevention goto BattleScript_MoveEnd BattleScript_AlreadyBurned:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYHASBURN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectMemento:: @@ -2240,22 +2237,24 @@ BattleScript_EffectMemento:: playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_ATK, 2, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk - jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 0x1, BattleScript_EffectMementoTrySpAtk + @ Greater than STAT_FELL is checking if the stat cannot decrease + jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTrySpAtk printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_EffectMementoTrySpAtk: playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTryFaint - jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 0x1, BattleScript_EffectMementoTryFaint + @ Greater than STAT_FELL is checking if the stat cannot decrease + jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTryFaint printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_EffectMementoTryFaint: tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd BattleScript_EffectMementoPrintNoEffect: printstring STRINGID_BUTNOEFFECT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_EffectMementoTryFaint BattleScript_MementoFailProtect: attackstring @@ -2263,10 +2262,10 @@ BattleScript_MementoFailProtect: jumpifattackandspecialattackcannotfall BattleScript_MementoFailEnd BattleScript_MementoFailEnd: setatkhptozero - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG effectivenesssound resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd @@ -2283,7 +2282,7 @@ BattleScript_EffectFocusPunch:: jumpifnodamage BattleScript_HitFromAccCheck ppreduce printstring STRINGID_PKMNLOSTFOCUS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSmellingsalt:: @@ -2303,16 +2302,16 @@ BattleScript_EffectFollowMe:: attackanimation waitanimation printstring STRINGID_PKMNCENTERATTENTION - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectNaturePower:: attackcanceler attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT callterrainattack printstring STRINGID_NATUREPOWERTURNEDINTO - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_EffectCharge:: @@ -2323,7 +2322,7 @@ BattleScript_EffectCharge:: attackanimation waitanimation printstring STRINGID_PKMNCHARGINGPOWER - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectTaunt:: @@ -2335,7 +2334,7 @@ BattleScript_EffectTaunt:: attackanimation waitanimation printstring STRINGID_PKMNFELLFORTAUNT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectHelpingHand:: @@ -2346,7 +2345,7 @@ BattleScript_EffectHelpingHand:: attackanimation waitanimation printstring STRINGID_PKMNREADYTOHELP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectTrick:: @@ -2359,9 +2358,9 @@ BattleScript_EffectTrick:: attackanimation waitanimation printstring STRINGID_PKMNSWITCHEDITEMS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG printfromtable gItemSwapStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRolePlay:: @@ -2373,7 +2372,7 @@ BattleScript_EffectRolePlay:: attackanimation waitanimation printstring STRINGID_PKMNCOPIEDFOE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectWish:: @@ -2403,7 +2402,7 @@ BattleScript_EffectIngrain:: attackanimation waitanimation printstring STRINGID_PKMNPLANTEDROOTS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSuperpower:: @@ -2418,7 +2417,7 @@ BattleScript_EffectMagicCoat:: attackanimation waitanimation printstring STRINGID_PKMNSHROUDEDITSELF - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRecycle:: @@ -2429,7 +2428,7 @@ BattleScript_EffectRecycle:: attackanimation waitanimation printstring STRINGID_XFOUNDONEY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRevenge:: @@ -2453,7 +2452,7 @@ BattleScript_BrickBreakAnim:: waitanimation jumpifbyte CMP_LESS_THAN, sB_ANIM_TURN, 0x2, BattleScript_BrickBreakDoHit printstring STRINGID_THEWALLSHATTERED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_BrickBreakDoHit:: typecalc2 effectivenesssound @@ -2462,9 +2461,9 @@ BattleScript_BrickBreakDoHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG seteffectwithchance tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -2483,14 +2482,14 @@ BattleScript_EffectYawn:: attackanimation waitanimation printstring STRINGID_PKMNWASMADEDROWSY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_PrintBankAbilityMadeIneffective:: copybyte sBATTLER, sBATTLER_WITH_ABILITY BattleScript_PrintAbilityMadeIneffective:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEITINEFFECTIVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectKnockOff:: @@ -2524,7 +2523,7 @@ BattleScript_EffectSkillSwap:: attackanimation waitanimation printstring STRINGID_PKMNSWAPPEDABILITIES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectImprison:: @@ -2535,7 +2534,7 @@ BattleScript_EffectImprison:: attackanimation waitanimation printstring STRINGID_PKMNSEALEDOPPONENTMOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectRefresh:: @@ -2546,7 +2545,7 @@ BattleScript_EffectRefresh:: attackanimation waitanimation printstring STRINGID_PKMNSTATUSNORMAL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER goto BattleScript_MoveEnd @@ -2558,7 +2557,7 @@ BattleScript_EffectGrudge:: attackanimation waitanimation printstring STRINGID_PKMNWANTSGRUDGE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectSnatch:: @@ -2568,9 +2567,9 @@ BattleScript_EffectSnatch:: ppreduce attackanimation waitanimation - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNWAITSFORTARGET - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectLowKick:: @@ -2608,7 +2607,7 @@ BattleScript_TeeterDanceLoop:: waitanimation seteffectprimary resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_TeeterDanceDoMoveEndIncrement:: moveendto MOVEEND_NEXT_TARGET BattleScript_TeeterDanceLoopIncrement:: @@ -2617,33 +2616,33 @@ BattleScript_TeeterDanceLoopIncrement:: end BattleScript_TeeterDanceOwnTempoPrevents:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSCONFUSIONWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceSafeguardProtected:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNUSEDSAFEGUARD - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceSubstitutePrevents:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_BUTITFAILED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceAlreadyConfused:: setalreadystatusedmoveattempt BS_ATTACKER - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNALREADYCONFUSED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_TeeterDanceMissed:: resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_EffectMudSport:: @@ -2655,7 +2654,7 @@ BattleScript_EffectWaterSport:: attackanimation waitanimation printfromtable gSportsUsedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectPoisonFang:: @@ -2685,24 +2684,24 @@ BattleScript_TickleDoMoveAnim:: playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE setstatchanger STAT_ATK, 1, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleTryLowerDef - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleTryLowerDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleTryLowerDef printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_TickleTryLowerDef:: playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleEnd printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_TickleEnd:: goto BattleScript_MoveEnd BattleScript_CantLowerMultipleStats:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_STATSWONTDECREASE2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectCosmicPower:: @@ -2718,15 +2717,15 @@ BattleScript_CosmicPowerDoMoveAnim:: playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0x0 setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerTrySpDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerTrySpDef printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CosmicPowerTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerEnd printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CosmicPowerEnd:: goto BattleScript_MoveEnd @@ -2747,15 +2746,15 @@ BattleScript_BulkUpDoMoveAnim:: playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0x0 setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpTryDef - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpTryDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpTryDef printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_BulkUpTryDef:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpEnd printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_BulkUpEnd:: goto BattleScript_MoveEnd @@ -2772,23 +2771,23 @@ BattleScript_CalmMindDoMoveAnim:: playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0x0 setstatchanger STAT_SPATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindTrySpDef - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindTrySpDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindTrySpDef printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CalmMindTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindEnd printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_CalmMindEnd:: goto BattleScript_MoveEnd BattleScript_CantRaiseMultipleStats:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT orbyte gMoveResultFlags, MOVE_RESULT_FAILED printstring STRINGID_STATSWONTINCREASE2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_EffectDragonDance:: @@ -2804,15 +2803,15 @@ BattleScript_DragonDanceDoMoveAnim:: playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0x0 setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceTrySpeed - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceTrySpeed + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceTrySpeed printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_DragonDanceTrySpeed:: setstatchanger STAT_SPEED, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceEnd - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceEnd printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_DragonDanceEnd:: goto BattleScript_MoveEnd @@ -2824,12 +2823,12 @@ BattleScript_EffectCamouflage:: attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_FaintAttacker:: playfaintcry BS_ATTACKER - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG dofaintanimation BS_ATTACKER cleareffectsonfaint BS_ATTACKER printstring STRINGID_ATTACKERFAINTED @@ -2837,7 +2836,7 @@ BattleScript_FaintAttacker:: BattleScript_FaintTarget:: playfaintcry BS_TARGET - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG dofaintanimation BS_TARGET cleareffectsonfaint BS_TARGET printstring STRINGID_TARGETFAINTED @@ -2952,7 +2951,7 @@ BattleScript_LocalBattleWonLoseTexts:: BattleScript_LocalBattleWonReward:: getmoneyreward printstring STRINGID_PLAYERGOTMONEY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_PayDayMoneyAndPickUpItems:: givepaydaymoney pickup @@ -2966,9 +2965,9 @@ BattleScript_LocalBattleLost:: jumpifhalfword CMP_EQUAL, gTrainerBattleOpponent_A, TRAINER_SECRET_BASE, BattleScript_LocalBattleLostEnd BattleScript_LocalBattleLostPrintWhiteOut:: printstring STRINGID_PLAYERWHITEOUT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG printstring STRINGID_PLAYERWHITEOUT2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_LocalBattleLostEnd:: end2 BattleScript_CheckDomeDrew:: @@ -3009,23 +3008,23 @@ BattleScript_FrontierLinkBattleLost:: jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_FrontierLinkBattleLostEnd endlinkbattle BattleScript_FrontierLinkBattleLostEnd:: - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_LinkBattleWonOrLost:: jumpifbattletype BATTLE_TYPE_BATTLE_TOWER, BattleScript_TowerLinkBattleWon printstring STRINGID_BATTLEEND - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_LinkBattleWonOrLostWaitEnd endlinkbattle BattleScript_LinkBattleWonOrLostWaitEnd:: - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_TowerLinkBattleWon:: playtrainerdefeatbgm BS_ATTACKER printstring STRINGID_BATTLEEND - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG trainerslidein BS_ATTACKER waitstate printstring STRINGID_TRAINER1LOSETEXT @@ -3037,7 +3036,7 @@ BattleScript_TowerLinkBattleWon:: jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_TowerLinkBattleWonEnd endlinkbattle BattleScript_TowerLinkBattleWonEnd:: - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_FrontierTrainerBattleWon:: @@ -3066,22 +3065,22 @@ BattleScript_FrontierTrainerBattleWon_End: BattleScript_SmokeBallEscape:: playanimation BS_ATTACKER, B_ANIM_SMOKEBALL_ESCAPE, NULL printstring STRINGID_PKMNFLEDUSINGITS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_RanAwayUsingMonAbility:: printstring STRINGID_PKMNFLEDUSING - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_GotAwaySafely:: printstring STRINGID_GOTAWAYSAFELY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_WildMonFled:: printstring STRINGID_WILDPKMNFLED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_PrintCantRunFromTrainer:: @@ -3090,7 +3089,7 @@ BattleScript_PrintCantRunFromTrainer:: BattleScript_PrintFailedToRunString:: printfromtable gNoEscapeStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_PrintCantEscapeFromBattle:: @@ -3137,7 +3136,7 @@ BattleScript_DoSwitchOut:: end2 BattleScript_PursuitDmgOnSwitchOut:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT attackstring ppreduce critcalc @@ -3152,9 +3151,9 @@ BattleScript_PursuitDmgOnSwitchOut:: healthbarupdate BS_TARGET datahpupdate BS_TARGET critmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL moveendfromto MOVEEND_ON_DAMAGE_ABILITIES, MOVEEND_CHOICE_MOVE getbattlerfainted BS_TARGET @@ -3165,7 +3164,7 @@ BattleScript_PursuitDmgOnSwitchOutRet: return BattleScript_Pausex20:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT return BattleScript_LevelUp:: @@ -3199,7 +3198,7 @@ BattleScript_LearnedNewMove:: buffermovetolearn fanfare MUS_LEVEL_UP printstring STRINGID_PKMNLEARNEDMOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatechoicemoveonlvlup BS_ATTACKER goto BattleScript_TryLearnMoveLoop BattleScript_LearnMoveReturn:: @@ -3207,15 +3206,15 @@ BattleScript_LearnMoveReturn:: BattleScript_RainContinuesOrEnds:: printfromtable gRainContinuesStringIds - waitmessage WAIT_TIME_LONG - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_RainContinuesOrEndsEnd + waitmessage B_WAIT_TIME_LONG + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_RAIN_STOPPED, BattleScript_RainContinuesOrEndsEnd playanimation BS_ATTACKER, B_ANIM_RAIN_CONTINUES, NULL BattleScript_RainContinuesOrEndsEnd:: end2 BattleScript_DamagingWeatherContinues:: printfromtable gSandStormHailContinuesStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL setbyte gBattleCommunication, 0x0 BattleScript_DamagingWeatherLoop:: @@ -3223,7 +3222,7 @@ BattleScript_DamagingWeatherLoop:: weatherdamage jumpifword CMP_EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement printfromtable gSandStormHailDmgStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE effectivenesssound hitanimation BS_ATTACKER @@ -3241,41 +3240,41 @@ BattleScript_DamagingWeatherContinuesEnd:: BattleScript_SandStormHailEnds:: printfromtable gSandStormHailEndStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_SunlightContinues:: printstring STRINGID_SUNLIGHTSTRONG - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playanimation BS_ATTACKER, B_ANIM_SUN_CONTINUES, NULL end2 BattleScript_SunlightFaded:: printstring STRINGID_SUNLIGHTFADED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_OverworldWeatherStarts:: printfromtable gWeatherStartsStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL end3 BattleScript_SideStatusWoreOff:: printstring STRINGID_PKMNSXWOREOFF - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_SafeguardProtected:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNUSEDSAFEGUARD - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_SafeguardEnds:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSAFEGUARDEXPIRED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_LeechSeedTurnDrain:: @@ -3286,23 +3285,23 @@ BattleScript_LeechSeedTurnDrain:: copyword gBattleMoveDamage, gHpDealt jumpifability BS_ATTACKER, ABILITY_LIQUID_OOZE, BattleScript_LeechSeedTurnPrintLiquidOoze manipulatedamage DMG_CHANGE_SIGN - setbyte cMULTISTRING_CHOOSER, 0x3 + setbyte cMULTISTRING_CHOOSER, B_MSG_LEECH_SEED_DRAIN goto BattleScript_LeechSeedTurnPrintAndUpdateHp BattleScript_LeechSeedTurnPrintLiquidOoze:: - setbyte cMULTISTRING_CHOOSER, 0x4 + setbyte cMULTISTRING_CHOOSER, B_MSG_LEECH_SEED_OOZE BattleScript_LeechSeedTurnPrintAndUpdateHp:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate BS_TARGET datahpupdate BS_TARGET printfromtable gLeechSeedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL tryfaintmon BS_TARGET, FALSE, NULL end2 BattleScript_BideStoringEnergy:: printstring STRINGID_PKMNSTORINGENERGY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_BideAttack:: @@ -3310,7 +3309,7 @@ BattleScript_BideAttack:: setmoveeffect MOVE_EFFECT_CHARGING clearstatusfromeffect BS_ATTACKER printstring STRINGID_PKMNUNLEASHEDENERGY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE typecalc bicbyte gMoveResultFlags, MOVE_RESULT_SUPER_EFFECTIVE | MOVE_RESULT_NOT_VERY_EFFECTIVE @@ -3325,7 +3324,7 @@ BattleScript_BideAttack:: healthbarupdate BS_TARGET datahpupdate BS_TARGET resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -3334,7 +3333,7 @@ BattleScript_BideNoEnergyToAttack:: setmoveeffect MOVE_EFFECT_CHARGING clearstatusfromeffect BS_ATTACKER printstring STRINGID_PKMNUNLEASHEDENERGY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_ButItFailed BattleScript_SuccessForceOut:: @@ -3357,19 +3356,19 @@ BattleScript_TrainerBattleForceOut:: goto BattleScript_MoveEnd BattleScript_MistProtected:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPROTECTEDBYMIST - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_RageIsBuilding:: printstring STRINGID_PKMNRAGEBUILDING - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveUsedIsDisabled:: printstring STRINGID_PKMNMOVEISDISABLED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingDisabledMove:: @@ -3378,7 +3377,7 @@ BattleScript_SelectingDisabledMove:: BattleScript_DisabledNoMore:: printstring STRINGID_PKMNMOVEDISABLEDNOMORE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_SelectingDisabledMoveInPalace:: @@ -3389,12 +3388,12 @@ BattleScript_SelectingUnusableMoveInPalace:: BattleScript_EncoredNoMore:: printstring STRINGID_PKMNENCOREENDED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_DestinyBondTakesLife:: printstring STRINGID_PKMNTOOKFOE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -3448,12 +3447,12 @@ BattleScript_SpikesOnFaintedBattlerFainted:: BattleScript_PrintHurtBySpikes:: printstring STRINGID_PKMNHURTBYSPIKES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_PerishSongTakesLife:: printstring STRINGID_PKMNPERISHCOUNTFELL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -3462,7 +3461,7 @@ BattleScript_PerishSongTakesLife:: BattleScript_PerishSongCountGoesDown:: printstring STRINGID_PKMNPERISHCOUNTFELL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_AllStatsUp:: @@ -3477,27 +3476,27 @@ BattleScript_AllStatsUpAtk:: setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpDef printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpDef:: setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpeed printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpeed:: setstatchanger STAT_SPEED, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpAtk printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpAtk:: setstatchanger STAT_SPATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpDef printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpDef:: setstatchanger STAT_SPDEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpRet printfromtable gStatUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpRet:: return @@ -3507,31 +3506,31 @@ BattleScript_RapidSpinAway:: BattleScript_WrapFree:: printstring STRINGID_PKMNGOTFREE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG copybyte gBattlerTarget, sBATTLER return BattleScript_LeechSeedFree:: printstring STRINGID_PKMNSHEDLEECHSEED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_SpikesFree:: printstring STRINGID_PKMNBLEWAWAYSPIKES - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MonTookFutureAttack:: printstring STRINGID_PKMNTOOKATTACK - waitmessage WAIT_TIME_LONG - jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_CheckDoomDesireMiss + waitmessage B_WAIT_TIME_LONG + jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_FUTURE_SIGHT, BattleScript_CheckDoomDesireMiss accuracycheck BattleScript_FutureAttackMiss, MOVE_FUTURE_SIGHT goto BattleScript_FutureAttackAnimate BattleScript_CheckDoomDesireMiss:: accuracycheck BattleScript_FutureAttackMiss, MOVE_DOOM_DESIRE BattleScript_FutureAttackAnimate:: adjustnormaldamage2 - jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_FutureHitAnimDoomDesire + jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_FUTURE_SIGHT, BattleScript_FutureHitAnimDoomDesire playanimation BS_ATTACKER, B_ANIM_FUTURE_SIGHT_HIT, NULL goto BattleScript_DoFutureAttackHit BattleScript_FutureHitAnimDoomDesire:: @@ -3543,7 +3542,7 @@ BattleScript_DoFutureAttackHit:: healthbarupdate BS_TARGET datahpupdate BS_TARGET resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL atk24 BattleScript_FutureAttackEnd BattleScript_FutureAttackEnd:: @@ -3553,11 +3552,11 @@ BattleScript_FutureAttackEnd:: end2 BattleScript_FutureAttackMiss:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT setbyte gMoveResultFlags, 0 orbyte gMoveResultFlags, MOVE_RESULT_FAILED resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG setbyte gMoveResultFlags, 0 end2 @@ -3571,9 +3570,9 @@ BattleScript_SelectingMoveWithNoPP:: BattleScript_NoPPForMove:: attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_BUTNOPPLEFT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingTormentedMove:: @@ -3582,7 +3581,7 @@ BattleScript_SelectingTormentedMove:: BattleScript_MoveUsedIsTormented:: printstring STRINGID_PKMNCANTUSEMOVETORMENT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingTormentedMoveInPalace:: @@ -3595,7 +3594,7 @@ BattleScript_SelectingNotAllowedMoveTaunt:: BattleScript_MoveUsedIsTaunted:: printstring STRINGID_PKMNCANTUSEMOVETAUNT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingNotAllowedMoveTauntInPalace:: @@ -3606,35 +3605,35 @@ BattleScript_WishComesTrue:: trywish 0x1, BattleScript_WishButFullHp playanimation BS_TARGET, B_ANIM_WISH_HEAL, NULL printstring STRINGID_PKMNWISHCAMETRUE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNREGAINEDHEALTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_WishButFullHp:: printstring STRINGID_PKMNWISHCAMETRUE - waitmessage WAIT_TIME_LONG - pause WAIT_TIME_SHORT + waitmessage B_WAIT_TIME_LONG + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNHPFULL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_IngrainTurnHeal:: playanimation BS_ATTACKER, B_ANIM_INGRAIN_HEAL, NULL printstring STRINGID_PKMNABSORBEDNUTRIENTS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER end2 BattleScript_PrintMonIsRooted:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNANCHOREDITSELF - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AtkDefDown:: @@ -3643,28 +3642,28 @@ BattleScript_AtkDefDown:: playstatchangeanimation BS_ATTACKER, BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE setstatchanger STAT_ATK, 1, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_TryDef - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_AtkDefDown_TryDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_TryDef printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AtkDefDown_TryDef:: playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_End - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_AtkDefDown_End + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_End printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_AtkDefDown_End:: return BattleScript_KnockedOff:: playanimation BS_TARGET, B_ANIM_ITEM_KNOCKOFF, NULL printstring STRINGID_PKMNKNOCKEDOFF - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveUsedIsImprisoned:: printstring STRINGID_PKMNCANTUSEMOVESEALED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SelectingImprisonedMove:: @@ -3677,15 +3676,15 @@ BattleScript_SelectingImprisonedMoveInPalace:: BattleScript_GrudgeTakesPp:: printstring STRINGID_PKMNLOSTPPGRUDGE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MagicCoatBounce:: attackstring ppreduce - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNMOVEBOUNCED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 setmagiccoattarget BS_ATTACKER return @@ -3696,19 +3695,19 @@ BattleScript_SnatchedMove:: snatchsetbattlers playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL printstring STRINGID_PKMNSNATCHEDMOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 swapattackerwithtarget return BattleScript_EnduredMsg:: printstring STRINGID_PKMNENDUREDHIT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_OneHitKOMsg:: printstring STRINGID_ONEHITKO - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_SAtkDown2:: @@ -3716,9 +3715,9 @@ BattleScript_SAtkDown2:: playstatchangeanimation BS_ATTACKER, BIT_SPATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_SAtkDown2End - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SAtkDown2End + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_SAtkDown2End printfromtable gStatDownStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_SAtkDown2End:: return @@ -3727,31 +3726,31 @@ BattleScript_FocusPunchSetUp:: waitmessage 1 playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP, NULL printstring STRINGID_PKMNTIGHTENINGFOCUS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_MoveUsedIsAsleep:: printstring STRINGID_PKMNFASTASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedWokeUp:: bicword gHitMarker, HITMARKER_x10 printfromtable gWokeUpStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER return BattleScript_MonWokeUpInUproar:: printstring STRINGID_PKMNWOKEUPINUPROAR - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER end2 BattleScript_PoisonTurnDmg:: printstring STRINGID_PKMNHURTBYPOISON - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_DoStatusTurnDmg:: statusanimation BS_ATTACKER BattleScript_DoTurnDmg:: @@ -3765,60 +3764,60 @@ BattleScript_DoTurnDmgEnd:: BattleScript_BurnTurnDmg:: printstring STRINGID_PKMNHURTBYBURN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_DoStatusTurnDmg BattleScript_MoveUsedIsFrozen:: printstring STRINGID_PKMNISFROZEN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedUnfroze:: printfromtable gGotDefrostedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER return BattleScript_DefrostedViaFireMove:: printstring STRINGID_PKMNWASDEFROSTED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_TARGET return BattleScript_MoveUsedIsParalyzed:: printstring STRINGID_PKMNISPARALYZED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER cancelmultiturnmoves BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedFlinched:: printstring STRINGID_PKMNFLINCHED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_PrintUproarOverTurns:: printfromtable gUproarOverTurnStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_ThrashConfuses:: chosenstatus2animation BS_ATTACKER, STATUS2_CONFUSION printstring STRINGID_PKMNFATIGUECONFUSION - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_MoveUsedIsConfused:: printstring STRINGID_PKMNISCONFUSED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_CONFUSION - jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_MoveUsedIsConfusedRet + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, FALSE, BattleScript_MoveUsedIsConfusedRet BattleScript_DoSelfConfusionDmg:: cancelmultiturnmoves BS_ATTACKER adjustnormaldamage2 printstring STRINGID_ITHURTCONFUSION - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG effectivenesssound hitanimation BS_ATTACKER waitstate @@ -3826,7 +3825,7 @@ BattleScript_DoSelfConfusionDmg:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER resultmessage - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL goto BattleScript_MoveEnd BattleScript_MoveUsedIsConfusedRet:: @@ -3834,58 +3833,58 @@ BattleScript_MoveUsedIsConfusedRet:: BattleScript_MoveUsedIsConfusedNoMore:: printstring STRINGID_PKMNHEALEDCONFUSION - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_PrintPayDayMoneyString:: printstring STRINGID_PLAYERPICKEDUPMONEY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_WrapTurnDmg:: playanimation BS_ATTACKER, B_ANIM_TURN_TRAP, sB_ANIM_ARG1 printstring STRINGID_PKMNHURTBY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_DoTurnDmg BattleScript_WrapEnds:: printstring STRINGID_PKMNFREEDFROM - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_MoveUsedIsInLove:: printstring STRINGID_PKMNINLOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_INFATUATION return BattleScript_MoveUsedIsInLoveCantAttack:: printstring STRINGID_PKMNIMMOBILIZEDBYLOVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_NightmareTurnDmg:: printstring STRINGID_PKMNLOCKEDINNIGHTMARE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_NIGHTMARE goto BattleScript_DoTurnDmg BattleScript_CurseTurnDmg:: printstring STRINGID_PKMNAFFLICTEDBYCURSE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG status2animation BS_ATTACKER, STATUS2_CURSED goto BattleScript_DoTurnDmg BattleScript_TargetPRLZHeal:: printstring STRINGID_PKMNHEALEDPARALYSIS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_TARGET return BattleScript_MoveEffectSleep:: statusanimation BS_EFFECT_BATTLER printfromtable gFellAsleepStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_UpdateEffectStatusIconRet:: updatestatusicon BS_EFFECT_BATTLER waitstate @@ -3894,7 +3893,7 @@ BattleScript_UpdateEffectStatusIconRet:: BattleScript_YawnMakesAsleep:: statusanimation BS_EFFECT_BATTLER printstring STRINGID_PKMNFELLASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_EFFECT_BATTLER waitstate makevisible BS_EFFECT_BATTLER @@ -3903,52 +3902,52 @@ BattleScript_YawnMakesAsleep:: BattleScript_MoveEffectPoison:: statusanimation BS_EFFECT_BATTLER printfromtable gGotPoisonedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectBurn:: statusanimation BS_EFFECT_BATTLER printfromtable gGotBurnedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectFreeze:: statusanimation BS_EFFECT_BATTLER printfromtable gGotFrozenStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectParalysis:: statusanimation BS_EFFECT_BATTLER printfromtable gGotParalyzedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectUproar:: printstring STRINGID_PKMNCAUSEDUPROAR - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveEffectToxic:: statusanimation BS_EFFECT_BATTLER printstring STRINGID_PKMNBADLYPOISONED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectPayDay:: printstring STRINGID_COINSSCATTERED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveEffectWrap:: printfromtable gWrappedStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveEffectConfusion:: chosenstatus2animation BS_EFFECT_BATTLER, STATUS2_CONFUSION printstring STRINGID_PKMNWASCONFUSED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_MoveEffectRecoil:: @@ -3959,7 +3958,7 @@ BattleScript_DoRecoil:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHITWITHRECOIL - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL BattleScript_RecoilEnd:: return @@ -3967,11 +3966,11 @@ BattleScript_RecoilEnd:: BattleScript_ItemSteal:: playanimation BS_TARGET, B_ANIM_ITEM_STEAL, NULL printstring STRINGID_PKMNSTOLEITEM - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_DrizzleActivates:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNMADEITRAIN waitstate playanimation BS_BATTLER_0, B_ANIM_RAIN_CONTINUES, NULL @@ -3981,25 +3980,25 @@ BattleScript_DrizzleActivates:: BattleScript_SpeedBoostActivates:: playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printstring STRINGID_PKMNRAISEDSPEED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end3 BattleScript_TraceActivates:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNTRACED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end3 BattleScript_RainDishActivates:: printstring STRINGID_PKMNSXRESTOREDHPALITTLE2 - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER end3 BattleScript_SandstreamActivates:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXWHIPPEDUPSANDSTORM waitstate playanimation BS_BATTLER_0, B_ANIM_SANDSTORM_CONTINUES, NULL @@ -4008,7 +4007,7 @@ BattleScript_SandstreamActivates:: BattleScript_ShedSkinActivates:: printstring STRINGID_PKMNSXCUREDYPROBLEM - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER end3 @@ -4028,7 +4027,7 @@ BattleScript_DoCastformChange:: docastformchangeanimation waitstate printstring STRINGID_PKMNTRANSFORMED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_IntimidateActivatesEnd3:: @@ -4036,7 +4035,7 @@ BattleScript_IntimidateActivatesEnd3:: end3 BattleScript_PauseIntimidateActivates: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT BattleScript_IntimidateActivates:: setbyte gBattlerTarget, 0x0 setstatchanger STAT_ATK, 1, TRUE @@ -4047,24 +4046,24 @@ BattleScript_IntimidateActivatesLoop: jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidatePrevented statbuffchange STAT_BUFF_NOT_PROTECT_AFFECTED | STAT_BUFF_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement - jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 0x1, BattleScript_IntimidateActivatesLoopIncrement + jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateActivatesLoopIncrement setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printstring STRINGID_PKMNCUTSATTACKWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_IntimidateActivatesLoopIncrement: addbyte gBattlerTarget, 0x1 goto BattleScript_IntimidateActivatesLoop BattleScript_IntimidateActivatesReturn: return BattleScript_IntimidatePrevented: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PREVENTEDFROMWORKING - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_IntimidateActivatesLoopIncrement BattleScript_DroughtActivates:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXINTENSIFIEDSUN waitstate playanimation BS_BATTLER_0, B_ANIM_SUN_CONTINUES, NULL @@ -4073,34 +4072,34 @@ BattleScript_DroughtActivates:: BattleScript_TookAttack:: attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXTOOKATTACK - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED return BattleScript_SturdyPreventsOHKO:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPROTECTEDBY - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_DampStopsExplosion:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSUSAGE - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_MoveHPDrain_PPLoss:: ppreduce BattleScript_MoveHPDrain:: attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNRESTOREDHPUSING - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE goto BattleScript_MoveEnd @@ -4108,9 +4107,9 @@ BattleScript_MonMadeMoveUseless_PPLoss:: ppreduce BattleScript_MonMadeMoveUseless:: attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYUSELESS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orbyte gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE goto BattleScript_MoveEnd @@ -4118,83 +4117,83 @@ BattleScript_FlashFireBoost_PPLoss:: ppreduce BattleScript_FlashFireBoost:: attackstring - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gFlashFireStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityPreventsPhasingOut:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNANCHORSITSELFWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityNoStatLoss:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSSTATLOSSWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_BRNPrevention:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gBRNPreventionStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_PRLZPrevention:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gPRLZPreventionStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_PSNPrevention:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printfromtable gPSNPreventionStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_ObliviousPreventsAttraction:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSROMANCEWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_FlinchPrevention:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXPREVENTSFLINCHING - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_OwnTempoPrevents:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNPREVENTSCONFUSIONWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_SoundproofProtected:: attackstring ppreduce - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXBLOCKSY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AbilityNoSpecificStatLoss:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXPREVENTSYLOSS - waitmessage WAIT_TIME_LONG - setbyte cMULTISTRING_CHOOSER, 0x3 + waitmessage B_WAIT_TIME_LONG + setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_FELL_EMPTY return BattleScript_StickyHoldActivates:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYINEFFECTIVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_ColorChangeActivates:: printstring STRINGID_PKMNCHANGEDTYPEWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_RoughSkinActivates:: @@ -4202,14 +4201,14 @@ BattleScript_RoughSkinActivates:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHURTSWITH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER, FALSE, NULL return BattleScript_CuteCharmActivates:: status2animation BS_ATTACKER, STATUS2_INFATUATION printstring STRINGID_PKMNSXINFATUATEDY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_ApplySecondaryEffect:: @@ -4223,42 +4222,42 @@ BattleScript_SynchronizeActivates:: return BattleScript_NoItemSteal:: - pause WAIT_TIME_SHORT + pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXMADEYINEFFECTIVE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_AbilityCuredStatus:: printstring STRINGID_PKMNSXCUREDITSYPROBLEM - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING return BattleScript_IgnoresWhileAsleep:: printstring STRINGID_PKMNIGNORESASLEEP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET end BattleScript_IgnoresAndUsesRandomMove:: printstring STRINGID_PKMNIGNOREDORDERS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG jumptocalledmove FALSE BattleScript_MoveUsedLoafingAround:: - jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 0x4, BattleScript_82DB6C7 - setbyte gBattleCommunication, 0x0 + jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_INCAPABLE_OF_POWER, BattleScript_MoveUsedLoafingAroundMsg + setbyte gBattleCommunication, 0 various24 BS_ATTACKER - setbyte cMULTISTRING_CHOOSER, 0x4 -BattleScript_82DB6C7:: + setbyte cMULTISTRING_CHOOSER, B_MSG_INCAPABLE_OF_POWER +BattleScript_MoveUsedLoafingAroundMsg:: printfromtable gInobedientStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET end BattleScript_IgnoresAndFallsAsleep:: printstring STRINGID_PKMNBEGANTONAP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG setmoveeffect MOVE_EFFECT_SLEEP | MOVE_EFFECT_AFFECTS_USER seteffectprimary moveendto MOVEEND_NEXT_TARGET @@ -4266,7 +4265,7 @@ BattleScript_IgnoresAndFallsAsleep:: BattleScript_IgnoresAndHitsItself:: printstring STRINGID_PKMNWONTOBEY - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG goto BattleScript_DoSelfConfusionDmg BattleScript_SubstituteFade:: @@ -4281,7 +4280,7 @@ BattleScript_BerryCurePrlzEnd2:: BattleScript_BerryCureParRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMCUREDPARALYSIS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4293,7 +4292,7 @@ BattleScript_BerryCurePsnEnd2:: BattleScript_BerryCurePsnRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMCUREDPOISON - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4305,7 +4304,7 @@ BattleScript_BerryCureBrnEnd2:: BattleScript_BerryCureBrnRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMHEALEDBURN - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4317,7 +4316,7 @@ BattleScript_BerryCureFrzEnd2:: BattleScript_BerryCureFrzRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMDEFROSTEDIT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4329,7 +4328,7 @@ BattleScript_BerryCureSlpEnd2:: BattleScript_BerryCureSlpRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMWOKEIT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4341,7 +4340,7 @@ BattleScript_BerryCureConfusionEnd2:: BattleScript_BerryCureConfusionRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMSNAPPEDOUT - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG removeitem BS_SCRIPTING return @@ -4352,7 +4351,7 @@ BattleScript_BerryCureChosenStatusEnd2:: BattleScript_BerryCureChosenStatusRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printfromtable gBerryEffectStringIds - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING removeitem BS_SCRIPTING return @@ -4364,14 +4363,14 @@ BattleScript_WhiteHerbEnd2:: BattleScript_WhiteHerbRet:: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDSTATUS - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG removeitem BS_SCRIPTING return BattleScript_ItemHealHP_RemoveItem:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHEALTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -4381,7 +4380,7 @@ BattleScript_ItemHealHP_RemoveItem:: BattleScript_BerryPPHealEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDPP - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG removeitem BS_ATTACKER end2 @@ -4392,7 +4391,7 @@ BattleScript_ItemHealHP_End2:: BattleScript_ItemHealHP_Ret:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHPALITTLE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -4405,18 +4404,18 @@ BattleScript_SelectingNotAllowedMoveChoiceItem:: BattleScript_FocusBandActivates:: playanimation BS_TARGET, B_ANIM_FOCUS_BAND, NULL printstring STRINGID_PKMNHUNGONWITHX - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG return BattleScript_BerryConfuseHealEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNSITEMRESTOREDHEALTH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_FORXCOMMAYZ - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG setmoveeffect MOVE_EFFECT_CONFUSION | MOVE_EFFECT_AFFECTS_USER seteffectprimary removeitem BS_ATTACKER @@ -4424,9 +4423,9 @@ BattleScript_BerryConfuseHealEnd2:: BattleScript_BerryStatRaiseEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_82DB85B -BattleScript_82DB85B:: - setbyte cMULTISTRING_CHOOSER, 0x4 + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp +BattleScript_BerryStatRaiseDoStatUp:: + setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_ROSE_ITEM call BattleScript_StatUp removeitem BS_ATTACKER end2 @@ -4434,7 +4433,7 @@ BattleScript_82DB85B:: BattleScript_BerryFocusEnergyEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL printstring STRINGID_PKMNUSEDXTOGETPUMPED - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG removeitem BS_ATTACKER end2 @@ -4452,7 +4451,7 @@ BattleScript_PalaceTryBattlerFlavorText:: palaceflavortext BS_ATTACKER @ BS_ATTACKER here overwritten by gBattleCommunication + 1 jumpifbyte CMP_NOT_EQUAL, gBattleCommunication, TRUE, BattleScript_PalaceEndFlavorText printfromtable gBattlePalaceFlavorTextTable - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG BattleScript_PalaceEndFlavorText:: addbyte gBattleCommunication + 1, 1 jumpifbytenotequal gBattleCommunication + 1, gBattlersCount, BattleScript_PalaceTryBattlerFlavorText @@ -4469,7 +4468,7 @@ BattleScript_ArenaTurnBeginning:: various14 BS_ATTACKER arenajudmengtstring 8 arenawaitmessage 8 - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG various15 BS_ATTACKER volumeup end2 @@ -4479,7 +4478,7 @@ BattleScript_82DB8E0:: @ Unused battlescript various14 BS_ATTACKER arenajudmengtstring BS_TARGET arenawaitmessage BS_TARGET - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG various15 BS_ATTACKER end2 @@ -4492,14 +4491,14 @@ BattleScript_ArenaDoJudgment:: playse SE_ARENA_TIMEUP1 pause 8 playse SE_ARENA_TIMEUP1 - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG various14 BS_ATTACKER arenajudmengtstring 1 arenawaitmessage 1 - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG setbyte gBattleCommunication, 0x0 arenajudgmentwindow - pause WAIT_TIME_LONG + pause B_WAIT_TIME_LONG arenajudgmentwindow arenajudmengtstring 2 arenawaitmessage 2 @@ -4517,7 +4516,7 @@ BattleScript_ArenaDoJudgment:: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_DEFEATEDOPPONENTBYREFEREE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playfaintcry BS_OPPONENT1 waitcry BS_ATTACKER dofaintanimation BS_OPPONENT1 @@ -4531,7 +4530,7 @@ BattleScript_ArenaJudgmentPlayerLoses: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_LOSTTOOPPONENTBYREFEREE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playfaintcry BS_PLAYER1 waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 @@ -4545,7 +4544,7 @@ BattleScript_ArenaJudgmentDraw: arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_TIEDOPPONENTBYREFEREE - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG playfaintcry BS_PLAYER1 waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 @@ -4564,12 +4563,12 @@ BattleScript_AskIfWantsToForfeitMatch:: BattleScript_PrintPlayerForfeited:: printstring STRINGID_FORFEITEDMATCH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 BattleScript_PrintPlayerForfeitedLinkBattle:: printstring STRINGID_FORFEITEDMATCH - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG endlinkbattle - waitmessage WAIT_TIME_LONG + waitmessage B_WAIT_TIME_LONG end2 diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index caa6cddac981..4b8ca0d874fb 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -69,16 +69,16 @@ BattleScript_PrintCaughtMonInfo:: trysetcaughtmondexflags BattleScript_TryNicknameCaughtMon printstring STRINGID_PKMNDATAADDEDTODEX waitstate - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 displaydexinfo BattleScript_TryNicknameCaughtMon:: printstring STRINGID_GIVENICKNAMECAPTURED waitstate - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 trygivecaughtmonnick BattleScript_GiveCaughtMonEnd givecaughtmon printfromtable gCaughtMonStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG goto BattleScript_SuccessBallThrowEnd BattleScript_GiveCaughtMonEnd:: givecaughtmon @@ -93,21 +93,21 @@ BattleScript_WallyBallThrow:: BattleScript_ShakeBallThrow:: printfromtable gBallEscapeStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG jumpifword CMP_NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_SAFARI, BattleScript_ShakeBallThrowEnd jumpifbyte CMP_NOT_EQUAL, gNumSafariBalls, 0x0, BattleScript_ShakeBallThrowEnd printstring STRINGID_OUTOFSAFARIBALLS - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG setbyte gBattleOutcome, B_OUTCOME_NO_SAFARI_BALLS BattleScript_ShakeBallThrowEnd:: finishaction BattleScript_TrainerBallBlock:: - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG printstring STRINGID_TRAINERBLOCKEDBALL - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG printstring STRINGID_DONTBEATHIEF - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG finishaction BattleScript_PlayerUsesItem:: @@ -117,16 +117,16 @@ BattleScript_PlayerUsesItem:: BattleScript_OpponentUsesHealItem:: printstring STRINGID_EMPTYSTRING3 - pause 0x30 + pause B_WAIT_TIME_MED playse SE_USE_ITEM printstring STRINGID_TRAINER1USEDITEM - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG useitemonopponent orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNSITEMRESTOREDHEALTH - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER setbyte sMOVEEND_STATE, 0xF moveend 0x1, 0x0 @@ -134,13 +134,13 @@ BattleScript_OpponentUsesHealItem:: BattleScript_OpponentUsesStatusCureItem:: printstring STRINGID_EMPTYSTRING3 - pause 0x30 + pause B_WAIT_TIME_MED playse SE_USE_ITEM printstring STRINGID_TRAINER1USEDITEM - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG useitemonopponent printfromtable gTrainerItemCuredStatusStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER setbyte sMOVEEND_STATE, 0xF moveend 0x1, 0x0 @@ -148,26 +148,26 @@ BattleScript_OpponentUsesStatusCureItem:: BattleScript_OpponentUsesXItem:: printstring STRINGID_EMPTYSTRING3 - pause 0x30 + pause B_WAIT_TIME_MED playse SE_USE_ITEM printstring STRINGID_TRAINER1USEDITEM - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG useitemonopponent printfromtable gStatUpStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG setbyte sMOVEEND_STATE, 0xF moveend 0x1, 0x0 finishaction BattleScript_OpponentUsesGuardSpecs:: printstring STRINGID_EMPTYSTRING3 - pause 0x30 + pause B_WAIT_TIME_MED playse SE_USE_ITEM printstring STRINGID_TRAINER1USEDITEM - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG useitemonopponent printfromtable gMistUsedStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG setbyte sMOVEEND_STATE, 0xF moveend 0x1, 0x0 finishaction @@ -179,29 +179,29 @@ BattleScript_RunByUsingItem:: BattleScript_ActionWatchesCarefully: printstring STRINGID_PKMNWATCHINGCAREFULLY - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG end2 BattleScript_ActionGetNear: printfromtable gSafariGetNearStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG end2 BattleScript_ActionThrowPokeblock: printstring STRINGID_THREWPOKEBLOCKATPKMN - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG playanimation BS_ATTACKER, B_ANIM_POKEBLOCK_THROW, NULL printfromtable gSafariPokeblockResultStringIds - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG end2 BattleScript_ActionWallyThrow: printstring STRINGID_RETURNMON - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG returnatktoball waitstate trainerslidein BS_TARGET waitstate printstring STRINGID_YOUTHROWABALLNOWRIGHT - waitmessage 0x40 + waitmessage B_WAIT_TIME_LONG end2 diff --git a/include/battle.h b/include/battle.h index 954d33b07b80..14ecfbdd3431 100644 --- a/include/battle.h +++ b/include/battle.h @@ -40,16 +40,17 @@ #define MAX_TRAINER_ITEMS 4 // array entries for battle communication -#define MULTIUSE_STATE 0x0 -#define CURSOR_POSITION 0x1 -#define TASK_ID 0x1 // task Id and cursor position share the same field -#define SPRITES_INIT_STATE1 0x1 // shares the Id as well -#define SPRITES_INIT_STATE2 0x2 -#define MOVE_EFFECT_BYTE 0x3 -#define ACTIONS_CONFIRMED_COUNT 0x4 -#define MULTISTRING_CHOOSER 0x5 -#define MSG_DISPLAY 0x7 -#define BATTLE_COMMUNICATION_ENTRIES_COUNT 0x8 +#define MULTIUSE_STATE 0 +#define CURSOR_POSITION 1 +#define TASK_ID 1 // task Id and cursor position share the same field +#define SPRITES_INIT_STATE1 1 // shares the Id as well +#define SPRITES_INIT_STATE2 2 +#define MOVE_EFFECT_BYTE 3 +#define ACTIONS_CONFIRMED_COUNT 4 +#define MULTISTRING_CHOOSER 5 +#define MISS_TYPE 6 +#define MSG_DISPLAY 7 +#define BATTLE_COMMUNICATION_ENTRIES_COUNT 8 #define MOVE_TARGET_SELECTED 0x0 #define MOVE_TARGET_DEPENDS 0x1 diff --git a/include/battle_ai_switch_items.h b/include/battle_ai_switch_items.h index 0a230e7f6ee6..db390346d332 100644 --- a/include/battle_ai_switch_items.h +++ b/include/battle_ai_switch_items.h @@ -11,6 +11,26 @@ enum AI_ITEM_NOT_RECOGNIZABLE }; +enum { + AI_HEAL_CONFUSION, + AI_HEAL_PARALYSIS, + AI_HEAL_FREEZE, + AI_HEAL_BURN, + AI_HEAL_POISON, + AI_HEAL_SLEEP, +}; + +enum { + AI_X_ATTACK, + AI_X_DEFEND, + AI_X_SPEED, + AI_X_SPATK, + AI_X_SPDEF, // Unused + AI_X_ACCURACY, + AI_X_EVASION, // Unused + AI_DIRE_HIT, +}; + void AI_TrySwitchOrUseItem(void); u8 GetMostSuitableMonToSwitchInto(void); diff --git a/include/battle_message.h b/include/battle_message.h index 011a1cb0c704..da3009d63f86 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -223,7 +223,6 @@ extern const u8* const gBattleStringsTable[]; extern const u8* const gStatNamesTable[]; extern const u8* const gPokeblockWasTooXStringTable[]; extern const u8* const gRefereeStringsTable[]; -extern const u8* const gStatNamesTable2[]; extern const u8 *const gRoundsStringTable[]; extern const u8 gText_PkmnIsEvolving[]; @@ -269,7 +268,7 @@ extern const u8 gText_Win[]; extern const u8 gText_Loss[]; extern const u8 gText_Draw[]; extern const u8 gText_StatRose[]; -extern const u8 gText_PkmnsStatChanged2[]; +extern const u8 gText_DefendersStatRose[]; extern const u8 gText_PkmnGettingPumped[]; extern const u8 gText_PkmnShroudedInMist[]; extern const u8 gText_PkmnsXPreventsSwitching[]; diff --git a/include/constants/battle.h b/include/constants/battle.h index e6ebc85e4bf7..3dbd8325592d 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -302,4 +302,8 @@ #define BATTLE_TERRAIN_BUILDING 8 #define BATTLE_TERRAIN_PLAIN 9 +#define B_WAIT_TIME_LONG 64 +#define B_WAIT_TIME_MED 48 +#define B_WAIT_TIME_SHORT 32 + #endif // GUARD_CONSTANTS_BATTLE_H diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index f5b036b5d770..f1c589fee8ea 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -214,10 +214,10 @@ #define STRINGID_STATROSE 210 #define STRINGID_STATHARSHLY 211 #define STRINGID_STATFELL 212 -#define STRINGID_PKMNSSTATCHANGED 213 -#define STRINGID_PKMNSSTATCHANGED2 214 -#define STRINGID_PKMNSSTATCHANGED3 215 -#define STRINGID_PKMNSSTATCHANGED4 216 +#define STRINGID_ATTACKERSSTATROSE 213 +#define STRINGID_DEFENDERSSTATROSE 214 +#define STRINGID_ATTACKERSSTATFELL 215 +#define STRINGID_DEFENDERSSTATFELL 216 #define STRINGID_CRITICALHIT 217 #define STRINGID_ONEHITKO 218 #define STRINGID_123POOF 219 @@ -326,7 +326,7 @@ #define STRINGID_SOOTHINGAROMA 322 #define STRINGID_ITEMSCANTBEUSEDNOW 323 #define STRINGID_FORXCOMMAYZ 324 -#define STRINGID_USINGXTHEYOFZN 325 +#define STRINGID_USINGITEMSTATOFPKMNROSE 325 #define STRINGID_PKMNUSEDXTOGETPUMPED 326 #define STRINGID_PKMNSXMADEYUSELESS 327 #define STRINGID_PKMNTRAPPEDBYSANDTOMB 328 @@ -383,11 +383,207 @@ #define STRINGID_TRAINER1WINTEXT 379 #define STRINGID_TRAINER2WINTEXT 380 -// Indexes into gMissStringIds + +// The below IDs are all indexes into battle message tables, +// used to determine which of a set of messages to print. +// They are assigned to the MULTISTRING_CHOOSER byte of gBattleCommunication +// and read when e.g. the command printfromtable is used. + +// gStatUpStringIds +#define B_MSG_ATTACKER_STAT_ROSE 0 +#define B_MSG_DEFENDER_STAT_ROSE 1 +#define B_MSG_STAT_WONT_INCREASE 2 +#define B_MSG_STAT_ROSE_EMPTY 3 +#define B_MSG_STAT_ROSE_ITEM 4 +#define B_MSG_USED_DIRE_HIT 5 + +// gStatDownStringIds +#define B_MSG_ATTACKER_STAT_FELL 0 +#define B_MSG_DEFENDER_STAT_FELL 1 +#define B_MSG_STAT_WONT_DECREASE 2 +#define B_MSG_STAT_FELL_EMPTY 3 + +// gMissStringIds #define B_MSG_MISSED 0 #define B_MSG_PROTECTED 1 #define B_MSG_AVOIDED_ATK 2 #define B_MSG_AVOIDED_DMG 3 #define B_MSG_GROUND_MISS 4 +// gAbsorbDrainStringIds +#define B_MSG_ABSORB 0 +#define B_MSG_ABSORB_OOZE 1 + +// gLeechSeedStringIds +#define B_MSG_LEECH_SEED_SET 0 +#define B_MSG_LEECH_SEED_MISS 1 +#define B_MSG_LEECH_SEED_FAIL 2 +#define B_MSG_LEECH_SEED_DRAIN 3 +#define B_MSG_LEECH_SEED_OOZE 4 + +// gBattlePalaceFlavorTextTable +#define B_MSG_GLINT_IN_EYE 0 +#define B_MSG_GETTING_IN_POS 1 +#define B_MSG_GROWL_DEEPLY 2 +#define B_MSG_EAGER_FOR_MORE 3 + +// gFirstTurnOfTwoStringIds +#define B_MSG_TURN1_RAZOR_WIND 0 +#define B_MSG_TURN1_SOLAR_BEAM 1 +#define B_MSG_TURN1_SKULL_BASH 2 +#define B_MSG_TURN1_SKY_ATTACK 3 +#define B_MSG_TURN1_FLY 4 +#define B_MSG_TURN1_DIG 5 +#define B_MSG_TURN1_DIVE 6 +#define B_MSG_TURN1_BOUNCE 7 + +// gMoveWeatherChangeStringIds +#define B_MSG_STARTED_RAIN 0 +#define B_MSG_STARTED_DOWNPOUR 1 +#define B_MSG_WEATHER_FAILED 2 +#define B_MSG_STARTED_SANDSTORM 3 +#define B_MSG_STARTED_SUNLIGHT 4 +#define B_MSG_STARTED_HAIL 5 + +// gRainContinuesStringIds +#define B_MSG_RAIN_CONTINUES 0 +#define B_MSG_DOWNPOUR_CONTINUES 1 +#define B_MSG_RAIN_STOPPED 2 + +// gSandStormHailContinuesStringIds / gSandStormHailDmgStringIds/ gSandStormHailEndStringIds +#define B_MSG_SANDSTORM 0 +#define B_MSG_HAIL 1 + +// gReflectLightScreenSafeguardStringIds +#define B_MSG_SIDE_STATUS_FAILED 0 +#define B_MSG_SET_REFLECT_SINGLE 1 +#define B_MSG_SET_REFLECT_DOUBLE 2 +#define B_MSG_SET_LIGHTSCREEN_SINGLE 3 +#define B_MSG_SET_LIGHTSCREEN_DOUBLE 4 +#define B_MSG_SET_SAFEGUARD 5 + +// gProtectLikeUsedStringIds +#define B_MSG_PROTECTED_ITSELF 0 +#define B_MSG_BRACED_ITSELF 1 +#define B_MSG_PROTECT_FAILED 2 + +// gRestUsedStringIds +#define B_MSG_REST 0 +#define B_MSG_REST_STATUSED 1 + +// gWokeUpStringIds +#define B_MSG_WOKE_UP 0 +#define B_MSG_WOKE_UP_UPROAR 1 + +// gUproarAwakeStringIds +#define B_MSG_CANT_SLEEP_UPROAR 0 +#define B_MSG_UPROAR_KEPT_AWAKE 1 +#define B_MSG_STAYED_AWAKE_USING 2 + +// gUproarOverTurnStringIds +#define B_MSG_UPROAR_CONTINUES 0 +#define B_MSG_UPROAR_ENDS 1 + +// gStockpileUsedStringIds +#define B_MSG_STOCKPILED 0 +#define B_MSG_CANT_STOCKPILE 1 + +// gSwallowFailStringIds +#define B_MSG_SWALLOW_FAILED 0 +#define B_MSG_SWALLOW_FULL_HP 1 + +// gKOFailedStringIds +#define B_MSG_KO_MISS 0 +#define B_MSG_KO_UNAFFECTED 1 + +// gMistUsedStringIds +#define B_MSG_SET_MIST 0 +#define B_MSG_MIST_FAILED 1 + +// gFocusEnergyUsedStringIds +#define B_MSG_GETTING_PUMPED 0 +#define B_MSG_FOCUS_ENERGY_FAILED 1 + +// gTransformUsedStringIds +#define B_MSG_TRANSFORMED 0 +#define B_MSG_TRANSFORM_FAILED 1 + +// gSubsituteUsedStringIds +#define B_MSG_SET_SUBSTITUTE 0 +#define B_MSG_SUBSTITUTE_FAILED 1 + +// gPartyStatusHealStringIds +#define B_MSG_BELL 0 +#define B_MSG_BELL_SOUNDPROOF_ATTACKER 1 +#define B_MSG_BELL_SOUNDPROOF_PARTNER 2 +#define B_MSG_BELL_BOTH_SOUNDPROOF 3 +#define B_MSG_SOOTHING_AROMA 4 + +// gFutureMoveUsedStringIds +#define B_MSG_FUTURE_SIGHT 0 +#define B_MSG_DOOM_DESIRE 1 + +// gItemSwapStringIds +#define B_MSG_ITEM_SWAP_TAKEN 0 +#define B_MSG_ITEM_SWAP_GIVEN 1 +#define B_MSG_ITEM_SWAP_BOTH 2 + +// gSportsUsedStringIds +#define B_MSG_WEAKEN_ELECTRIC 0 +#define B_MSG_WEAKEN_FIRE 1 + +// gCaughtMonStringIds +#define B_MSG_SENT_SOMEONES_PC 0 +#define B_MSG_SENT_LANETTES_PC 1 +#define B_MSG_SOMEONES_BOX_FULL 2 +#define B_MSG_LANETTES_BOX_FULL 3 + +// gInobedientStringIds +#define B_MSG_LOAFING 0 +#define B_MSG_WONT_OBEY 1 +#define B_MSG_TURNED_AWAY 2 +#define B_MSG_PRETEND_NOT_NOTICE 3 +#define B_MSG_INCAPABLE_OF_POWER 4 +// For randomly selecting a disobey string +// Skips the one used for Battle Palace +#define NUM_LOAF_STRINGS 4 + +// gSafariGetNearStringIds +#define B_MSG_CREPT_CLOSER 0 +#define B_MSG_CANT_GET_CLOSER 1 + +// gSafariPokeblockResultStringIds +#define B_MSG_MON_CURIOUS 0 +#define B_MSG_MON_ENTHRALLED 1 +#define B_MSG_MON_IGNORED 2 + +// gFlashFireStringIds +#define B_MSG_FLASH_FIRE_BOOST 0 +#define B_MSG_FLASH_FIRE_NO_BOOST 1 + +// gBerryEffectStringIds +#define B_MSG_CURED_PROBLEM 0 +#define B_MSG_NORMALIZED_STATUS 1 + +// gNoEscapeStringIds +#define B_MSG_CANT_ESCAPE 0 +#define B_MSG_DONT_LEAVE_BIRCH 1 +#define B_MSG_PREVENTS_ESCAPE 2 +#define B_MSG_CANT_ESCAPE_2 3 +#define B_MSG_ATTACKER_CANT_ESCAPE 4 + +// gGotPoisonedStringIds / gGotParalyzedStringIds / gFellAsleepStringIds +// gGotBurnedStringIds / gGotFrozenStringIds / gAttractUsedStringIds +#define B_MSG_STATUSED 0 +#define B_MSG_STATUSED_BY_ABILITY 1 + +// gBRNPreventionStringIds / gPRLZPreventionStringIds / gPSNPreventionStringIds +#define B_MSG_ABILITY_PREVENTS_MOVE_STATUS 0 +#define B_MSG_ABILITY_PREVENTS_ABILITY_STATUS 1 +#define B_MSG_STATUS_HAD_NO_EFFECT 2 + +// gGotDefrostedStringIds +#define B_MSG_DEFROSTED 0 +#define B_MSG_DEFROSTED_BY_MOVE 1 + #endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 263c1e7cc315..e92630808588 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -863,32 +863,33 @@ static bool8 ShouldUseItem(void) *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) = 0; if (itemEffects[3] & ITEM3_SLEEP && gBattleMons[gActiveBattler].status1 & STATUS1_SLEEP) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x20; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_SLEEP); shouldUse = TRUE; } - if (itemEffects[3] & ITEM3_POISON && (gBattleMons[gActiveBattler].status1 & STATUS1_POISON || gBattleMons[gActiveBattler].status1 & STATUS1_TOXIC_POISON)) + if (itemEffects[3] & ITEM3_POISON && (gBattleMons[gActiveBattler].status1 & STATUS1_POISON + || gBattleMons[gActiveBattler].status1 & STATUS1_TOXIC_POISON)) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x10; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_POISON); shouldUse = TRUE; } if (itemEffects[3] & ITEM3_BURN && gBattleMons[gActiveBattler].status1 & STATUS1_BURN) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x8; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_BURN); shouldUse = TRUE; } if (itemEffects[3] & ITEM3_FREEZE && gBattleMons[gActiveBattler].status1 & STATUS1_FREEZE) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x4; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_FREEZE); shouldUse = TRUE; } if (itemEffects[3] & ITEM3_PARALYSIS && gBattleMons[gActiveBattler].status1 & STATUS1_PARALYSIS) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x2; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_PARALYSIS); shouldUse = TRUE; } if (itemEffects[3] & ITEM3_CONFUSION && gBattleMons[gActiveBattler].status2 & STATUS2_CONFUSION) { - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x1; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_CONFUSION); shouldUse = TRUE; } break; @@ -897,17 +898,17 @@ static bool8 ShouldUseItem(void) if (gDisableStructs[gActiveBattler].isFirstTurn == 0) break; if (itemEffects[0] & ITEM0_X_ATTACK) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x1; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ATTACK); if (itemEffects[1] & ITEM1_X_DEFEND) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x2; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_DEFEND); if (itemEffects[1] & ITEM1_X_SPEED) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x4; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_SPEED); if (itemEffects[2] & ITEM2_X_SPATK) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x8; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_SPATK); if (itemEffects[2] & ITEM2_X_ACCURACY) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x20; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ACCURACY); if (itemEffects[0] & ITEM0_DIRE_HIT) - *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= 0x80; + *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_DIRE_HIT); shouldUse = TRUE; break; case AI_ITEM_GUARD_SPECS: diff --git a/src/battle_main.c b/src/battle_main.c index 9bb2268a6b9a..8a85c27f5dde 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3959,7 +3959,7 @@ u8 IsRunningFromBattleImpossible(void) { gBattleScripting.battler = i; gLastUsedAbility = gBattleMons[i].ability; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; return 2; } if (side != GetBattlerSide(i) @@ -3969,7 +3969,7 @@ u8 IsRunningFromBattleImpossible(void) { gBattleScripting.battler = i; gLastUsedAbility = gBattleMons[i].ability; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; return 2; } } @@ -3978,18 +3978,18 @@ u8 IsRunningFromBattleImpossible(void) { gBattleScripting.battler = i - 1; gLastUsedAbility = gBattleMons[i - 1].ability; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; return 2; } if ((gBattleMons[gActiveBattler].status2 & (STATUS2_ESCAPE_PREVENTION | STATUS2_WRAPPED)) || (gStatuses3[gActiveBattler] & STATUS3_ROOTED)) { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_ESCAPE; return 1; } if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DONT_LEAVE_BIRCH; return 1; } return 0; diff --git a/src/battle_message.c b/src/battle_message.c index 5f088dded324..4f219c06399f 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -305,11 +305,11 @@ static const u8 sText_StatSharply[] = _("sharply "); const u8 gText_StatRose[] = _("rose!"); static const u8 sText_StatHarshly[] = _("harshly "); static const u8 sText_StatFell[] = _("fell!"); -static const u8 sText_PkmnsStatChanged[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); -const u8 gText_PkmnsStatChanged2[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); -static const u8 sText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}"); -static const u8 sText_PkmnsStatChanged3[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); -static const u8 sText_PkmnsStatChanged4[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); +static const u8 sText_AttackersStatRose[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); +const u8 gText_DefendersStatRose[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); +static const u8 sText_UsingItemTheStatOfPkmnRose[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}"); +static const u8 sText_AttackersStatFell[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); +static const u8 sText_DefendersStatFell[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}"); static const u8 sText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}'s stats won't\ngo any higher!"); static const u8 sText_StatsWontDecrease2[] = _("{B_DEF_NAME_WITH_PREFIX}'s stats won't\ngo any lower!"); static const u8 sText_CriticalHit[] = _("A critical hit!"); @@ -721,10 +721,10 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = [STRINGID_STATROSE - 12] = gText_StatRose, [STRINGID_STATHARSHLY - 12] = sText_StatHarshly, [STRINGID_STATFELL - 12] = sText_StatFell, - [STRINGID_PKMNSSTATCHANGED - 12] = sText_PkmnsStatChanged, - [STRINGID_PKMNSSTATCHANGED2 - 12] = gText_PkmnsStatChanged2, - [STRINGID_PKMNSSTATCHANGED3 - 12] = sText_PkmnsStatChanged3, - [STRINGID_PKMNSSTATCHANGED4 - 12] = sText_PkmnsStatChanged4, + [STRINGID_ATTACKERSSTATROSE - 12] = sText_AttackersStatRose, + [STRINGID_DEFENDERSSTATROSE - 12] = gText_DefendersStatRose, + [STRINGID_ATTACKERSSTATFELL - 12] = sText_AttackersStatFell, + [STRINGID_DEFENDERSSTATFELL - 12] = sText_DefendersStatFell, [STRINGID_CRITICALHIT - 12] = sText_CriticalHit, [STRINGID_ONEHITKO - 12] = sText_OneHitKO, [STRINGID_123POOF - 12] = sText_123Poof, @@ -833,7 +833,7 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = [STRINGID_SOOTHINGAROMA - 12] = sText_SoothingAroma, [STRINGID_ITEMSCANTBEUSEDNOW - 12] = sText_ItemsCantBeUsedNow, [STRINGID_FORXCOMMAYZ - 12] = sText_ForXCommaYZ, - [STRINGID_USINGXTHEYOFZN - 12] = sText_UsingXTheYOfZN, + [STRINGID_USINGITEMSTATOFPKMNROSE - 12] = sText_UsingItemTheStatOfPkmnRose, [STRINGID_PKMNUSEDXTOGETPUMPED - 12] = sText_PkmnUsedXToGetPumped, [STRINGID_PKMNSXMADEYUSELESS - 12] = sText_PkmnsXMadeYUseless, [STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = sText_PkmnTrappedBySandTomb, @@ -902,105 +902,140 @@ const u16 gMissStringIds[] = const u16 gNoEscapeStringIds[] = { - STRINGID_CANTESCAPE, STRINGID_DONTLEAVEBIRCH, STRINGID_PREVENTSESCAPE, - STRINGID_CANTESCAPE2, STRINGID_ATTACKERCANTESCAPE + [B_MSG_CANT_ESCAPE] = STRINGID_CANTESCAPE, + [B_MSG_DONT_LEAVE_BIRCH] = STRINGID_DONTLEAVEBIRCH, + [B_MSG_PREVENTS_ESCAPE] = STRINGID_PREVENTSESCAPE, + [B_MSG_CANT_ESCAPE_2] = STRINGID_CANTESCAPE2, + [B_MSG_ATTACKER_CANT_ESCAPE] = STRINGID_ATTACKERCANTESCAPE }; const u16 gMoveWeatherChangeStringIds[] = { - STRINGID_STARTEDTORAIN, STRINGID_DOWNPOURSTARTED, STRINGID_BUTITFAILED, - STRINGID_SANDSTORMBREWED, STRINGID_SUNLIGHTGOTBRIGHT, STRINGID_STARTEDHAIL + [B_MSG_STARTED_RAIN] = STRINGID_STARTEDTORAIN, + [B_MSG_STARTED_DOWNPOUR] = STRINGID_DOWNPOURSTARTED, // Unused + [B_MSG_WEATHER_FAILED] = STRINGID_BUTITFAILED, + [B_MSG_STARTED_SANDSTORM] = STRINGID_SANDSTORMBREWED, + [B_MSG_STARTED_SUNLIGHT] = STRINGID_SUNLIGHTGOTBRIGHT, + [B_MSG_STARTED_HAIL] = STRINGID_STARTEDHAIL, }; const u16 gSandStormHailContinuesStringIds[] = { - STRINGID_SANDSTORMRAGES, STRINGID_HAILCONTINUES + [B_MSG_SANDSTORM] = STRINGID_SANDSTORMRAGES, + [B_MSG_HAIL] = STRINGID_HAILCONTINUES }; const u16 gSandStormHailDmgStringIds[] = { - STRINGID_PKMNBUFFETEDBYSANDSTORM, STRINGID_PKMNPELTEDBYHAIL + [B_MSG_SANDSTORM] = STRINGID_PKMNBUFFETEDBYSANDSTORM, + [B_MSG_HAIL] = STRINGID_PKMNPELTEDBYHAIL }; const u16 gSandStormHailEndStringIds[] = { - STRINGID_SANDSTORMSUBSIDED, STRINGID_HAILSTOPPED + [B_MSG_SANDSTORM] = STRINGID_SANDSTORMSUBSIDED, + [B_MSG_HAIL] = STRINGID_HAILSTOPPED }; const u16 gRainContinuesStringIds[] = { - STRINGID_RAINCONTINUES, STRINGID_DOWNPOURCONTINUES, STRINGID_RAINSTOPPED + [B_MSG_RAIN_CONTINUES] = STRINGID_RAINCONTINUES, + [B_MSG_DOWNPOUR_CONTINUES] = STRINGID_DOWNPOURCONTINUES, + [B_MSG_RAIN_STOPPED] = STRINGID_RAINSTOPPED }; const u16 gProtectLikeUsedStringIds[] = { - STRINGID_PKMNPROTECTEDITSELF2, STRINGID_PKMNBRACEDITSELF, STRINGID_BUTITFAILED + [B_MSG_PROTECTED_ITSELF] = STRINGID_PKMNPROTECTEDITSELF2, + [B_MSG_BRACED_ITSELF] = STRINGID_PKMNBRACEDITSELF, + [B_MSG_PROTECT_FAILED] = STRINGID_BUTITFAILED, }; const u16 gReflectLightScreenSafeguardStringIds[] = { - STRINGID_BUTITFAILED, STRINGID_PKMNRAISEDDEF, STRINGID_PKMNRAISEDDEFALITTLE, - STRINGID_PKMNRAISEDSPDEF, STRINGID_PKMNRAISEDSPDEFALITTLE, STRINGID_PKMNCOVEREDBYVEIL + [B_MSG_SIDE_STATUS_FAILED] = STRINGID_BUTITFAILED, + [B_MSG_SET_REFLECT_SINGLE] = STRINGID_PKMNRAISEDDEF, + [B_MSG_SET_REFLECT_DOUBLE] = STRINGID_PKMNRAISEDDEFALITTLE, + [B_MSG_SET_LIGHTSCREEN_SINGLE] = STRINGID_PKMNRAISEDSPDEF, + [B_MSG_SET_LIGHTSCREEN_DOUBLE] = STRINGID_PKMNRAISEDSPDEFALITTLE, + [B_MSG_SET_SAFEGUARD] = STRINGID_PKMNCOVEREDBYVEIL, }; const u16 gLeechSeedStringIds[] = { - STRINGID_PKMNSEEDED, STRINGID_PKMNEVADEDATTACK, - STRINGID_ITDOESNTAFFECT, STRINGID_PKMNSAPPEDBYLEECHSEED, STRINGID_ITSUCKEDLIQUIDOOZE, + [B_MSG_LEECH_SEED_SET] = STRINGID_PKMNSEEDED, + [B_MSG_LEECH_SEED_MISS] = STRINGID_PKMNEVADEDATTACK, + [B_MSG_LEECH_SEED_FAIL] = STRINGID_ITDOESNTAFFECT, + [B_MSG_LEECH_SEED_DRAIN] = STRINGID_PKMNSAPPEDBYLEECHSEED, + [B_MSG_LEECH_SEED_OOZE] = STRINGID_ITSUCKEDLIQUIDOOZE, }; const u16 gRestUsedStringIds[] = { - STRINGID_PKMNWENTTOSLEEP, STRINGID_PKMNSLEPTHEALTHY + [B_MSG_REST] = STRINGID_PKMNWENTTOSLEEP, + [B_MSG_REST_STATUSED] = STRINGID_PKMNSLEPTHEALTHY }; const u16 gUproarOverTurnStringIds[] = { - STRINGID_PKMNMAKINGUPROAR, STRINGID_PKMNCALMEDDOWN + [B_MSG_UPROAR_CONTINUES] = STRINGID_PKMNMAKINGUPROAR, + [B_MSG_UPROAR_ENDS] = STRINGID_PKMNCALMEDDOWN }; const u16 gStockpileUsedStringIds[] = { - STRINGID_PKMNSTOCKPILED, STRINGID_PKMNCANTSTOCKPILE, + [B_MSG_STOCKPILED] = STRINGID_PKMNSTOCKPILED, + [B_MSG_CANT_STOCKPILE] = STRINGID_PKMNCANTSTOCKPILE, }; const u16 gWokeUpStringIds[] = { - STRINGID_PKMNWOKEUP, STRINGID_PKMNWOKEUPINUPROAR + [B_MSG_WOKE_UP] = STRINGID_PKMNWOKEUP, + [B_MSG_WOKE_UP_UPROAR] = STRINGID_PKMNWOKEUPINUPROAR }; const u16 gSwallowFailStringIds[] = { - STRINGID_FAILEDTOSWALLOW, STRINGID_PKMNHPFULL + [B_MSG_SWALLOW_FAILED] = STRINGID_FAILEDTOSWALLOW, + [B_MSG_SWALLOW_FULL_HP] = STRINGID_PKMNHPFULL }; const u16 gUproarAwakeStringIds[] = { - STRINGID_PKMNCANTSLEEPINUPROAR2, STRINGID_UPROARKEPTPKMNAWAKE, STRINGID_PKMNSTAYEDAWAKEUSING + [B_MSG_CANT_SLEEP_UPROAR] = STRINGID_PKMNCANTSLEEPINUPROAR2, + [B_MSG_UPROAR_KEPT_AWAKE] = STRINGID_UPROARKEPTPKMNAWAKE, + [B_MSG_STAYED_AWAKE_USING] = STRINGID_PKMNSTAYEDAWAKEUSING, }; const u16 gStatUpStringIds[] = { - STRINGID_PKMNSSTATCHANGED, STRINGID_PKMNSSTATCHANGED2, STRINGID_STATSWONTINCREASE, - STRINGID_EMPTYSTRING3, STRINGID_USINGXTHEYOFZN, STRINGID_PKMNUSEDXTOGETPUMPED + [B_MSG_ATTACKER_STAT_ROSE] = STRINGID_ATTACKERSSTATROSE, + [B_MSG_DEFENDER_STAT_ROSE] = STRINGID_DEFENDERSSTATROSE, + [B_MSG_STAT_WONT_INCREASE] = STRINGID_STATSWONTINCREASE, + [B_MSG_STAT_ROSE_EMPTY] = STRINGID_EMPTYSTRING3, + [B_MSG_STAT_ROSE_ITEM] = STRINGID_USINGITEMSTATOFPKMNROSE, + [B_MSG_USED_DIRE_HIT] = STRINGID_PKMNUSEDXTOGETPUMPED, }; const u16 gStatDownStringIds[] = { - STRINGID_PKMNSSTATCHANGED3, STRINGID_PKMNSSTATCHANGED4, STRINGID_STATSWONTDECREASE, STRINGID_EMPTYSTRING3 + [B_MSG_ATTACKER_STAT_FELL] = STRINGID_ATTACKERSSTATFELL, + [B_MSG_DEFENDER_STAT_FELL] = STRINGID_DEFENDERSSTATFELL, + [B_MSG_STAT_WONT_DECREASE] = STRINGID_STATSWONTDECREASE, + [B_MSG_STAT_FELL_EMPTY] = STRINGID_EMPTYSTRING3, }; // Index read from sTWOTURN_STRINGID const u16 gFirstTurnOfTwoStringIds[] = { - STRINGID_PKMNWHIPPEDWHIRLWIND, // MOVE_RAZOR_WIND - STRINGID_PKMNTOOKSUNLIGHT, // MOVE_SOLAR_BEAM - STRINGID_PKMNLOWEREDHEAD, // MOVE_SKULL_BASH - STRINGID_PKMNISGLOWING, // MOVE_SKY_ATTACK - STRINGID_PKMNFLEWHIGH, // MOVE_FLY - STRINGID_PKMNDUGHOLE, // MOVE_DIG - STRINGID_PKMNHIDUNDERWATER, // MOVE_DIVE - STRINGID_PKMNSPRANGUP // MOVE_BOUNCE + [B_MSG_TURN1_RAZOR_WIND] = STRINGID_PKMNWHIPPEDWHIRLWIND, + [B_MSG_TURN1_SOLAR_BEAM] = STRINGID_PKMNTOOKSUNLIGHT, + [B_MSG_TURN1_SKULL_BASH] = STRINGID_PKMNLOWEREDHEAD, + [B_MSG_TURN1_SKY_ATTACK] = STRINGID_PKMNISGLOWING, + [B_MSG_TURN1_FLY] = STRINGID_PKMNFLEWHIGH, + [B_MSG_TURN1_DIG] = STRINGID_PKMNDUGHOLE, + [B_MSG_TURN1_DIVE] = STRINGID_PKMNHIDUNDERWATER, + [B_MSG_TURN1_BOUNCE] = STRINGID_PKMNSPRANGUP, }; // Index copied from move's index in gTrappingMoves @@ -1016,89 +1051,109 @@ const u16 gWrappedStringIds[] = const u16 gMistUsedStringIds[] = { - STRINGID_PKMNSHROUDEDINMIST, STRINGID_BUTITFAILED + [B_MSG_SET_MIST] = STRINGID_PKMNSHROUDEDINMIST, + [B_MSG_MIST_FAILED] = STRINGID_BUTITFAILED }; const u16 gFocusEnergyUsedStringIds[] = { - STRINGID_PKMNGETTINGPUMPED, STRINGID_BUTITFAILED + [B_MSG_GETTING_PUMPED] = STRINGID_PKMNGETTINGPUMPED, + [B_MSG_FOCUS_ENERGY_FAILED] = STRINGID_BUTITFAILED }; const u16 gTransformUsedStringIds[] = { - STRINGID_PKMNTRANSFORMEDINTO, STRINGID_BUTITFAILED + [B_MSG_TRANSFORMED] = STRINGID_PKMNTRANSFORMEDINTO, + [B_MSG_TRANSFORM_FAILED] = STRINGID_BUTITFAILED }; const u16 gSubsituteUsedStringIds[] = { - STRINGID_PKMNMADESUBSTITUTE, STRINGID_TOOWEAKFORSUBSTITUTE + [B_MSG_SET_SUBSTITUTE] = STRINGID_PKMNMADESUBSTITUTE, + [B_MSG_SUBSTITUTE_FAILED] = STRINGID_TOOWEAKFORSUBSTITUTE }; const u16 gGotPoisonedStringIds[] = { - STRINGID_PKMNWASPOISONED, STRINGID_PKMNPOISONEDBY + [B_MSG_STATUSED] = STRINGID_PKMNWASPOISONED, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNPOISONEDBY }; const u16 gGotParalyzedStringIds[] = { - STRINGID_PKMNWASPARALYZED, STRINGID_PKMNWASPARALYZEDBY + [B_MSG_STATUSED] = STRINGID_PKMNWASPARALYZED, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNWASPARALYZEDBY }; const u16 gFellAsleepStringIds[] = { - STRINGID_PKMNFELLASLEEP, STRINGID_PKMNMADESLEEP, + [B_MSG_STATUSED] = STRINGID_PKMNFELLASLEEP, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNMADESLEEP, }; const u16 gGotBurnedStringIds[] = { - STRINGID_PKMNWASBURNED, STRINGID_PKMNBURNEDBY + [B_MSG_STATUSED] = STRINGID_PKMNWASBURNED, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNBURNEDBY }; const u16 gGotFrozenStringIds[] = { - STRINGID_PKMNWASFROZEN, STRINGID_PKMNFROZENBY + [B_MSG_STATUSED] = STRINGID_PKMNWASFROZEN, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNFROZENBY }; const u16 gGotDefrostedStringIds[] = { - STRINGID_PKMNWASDEFROSTED2, STRINGID_PKMNWASDEFROSTEDBY + [B_MSG_DEFROSTED] = STRINGID_PKMNWASDEFROSTED2, + [B_MSG_DEFROSTED_BY_MOVE] = STRINGID_PKMNWASDEFROSTEDBY }; const u16 gKOFailedStringIds[] = { - STRINGID_ATTACKMISSED, STRINGID_PKMNUNAFFECTED + [B_MSG_KO_MISS] = STRINGID_ATTACKMISSED, + [B_MSG_KO_UNAFFECTED] = STRINGID_PKMNUNAFFECTED }; const u16 gAttractUsedStringIds[] = { - STRINGID_PKMNFELLINLOVE, STRINGID_PKMNSXINFATUATEDY + [B_MSG_STATUSED] = STRINGID_PKMNFELLINLOVE, + [B_MSG_STATUSED_BY_ABILITY] = STRINGID_PKMNSXINFATUATEDY }; -const u16 gLeechSeedDrainStringIds[] = +const u16 gAbsorbDrainStringIds[] = { - STRINGID_PKMNENERGYDRAINED, STRINGID_ITSUCKEDLIQUIDOOZE + [B_MSG_ABSORB] = STRINGID_PKMNENERGYDRAINED, + [B_MSG_ABSORB_OOZE] = STRINGID_ITSUCKEDLIQUIDOOZE }; const u16 gSportsUsedStringIds[] = { - STRINGID_ELECTRICITYWEAKENED, STRINGID_FIREWEAKENED + [B_MSG_WEAKEN_ELECTRIC] = STRINGID_ELECTRICITYWEAKENED, + [B_MSG_WEAKEN_FIRE] = STRINGID_FIREWEAKENED }; const u16 gPartyStatusHealStringIds[] = { - STRINGID_BELLCHIMED, STRINGID_BELLCHIMED, STRINGID_BELLCHIMED, STRINGID_BELLCHIMED, - // interesting how there are four instances of the same string - STRINGID_SOOTHINGAROMA + [B_MSG_BELL] = STRINGID_BELLCHIMED, + [B_MSG_BELL_SOUNDPROOF_ATTACKER] = STRINGID_BELLCHIMED, + [B_MSG_BELL_SOUNDPROOF_PARTNER] = STRINGID_BELLCHIMED, + [B_MSG_BELL_BOTH_SOUNDPROOF] = STRINGID_BELLCHIMED, + [B_MSG_SOOTHING_AROMA] = STRINGID_SOOTHINGAROMA }; const u16 gFutureMoveUsedStringIds[] = { - STRINGID_PKMNFORESAWATTACK, STRINGID_PKMNCHOSEXASDESTINY + [B_MSG_FUTURE_SIGHT] = STRINGID_PKMNFORESAWATTACK, + [B_MSG_DOOM_DESIRE] = STRINGID_PKMNCHOSEXASDESTINY }; const u16 gBallEscapeStringIds[] = { - STRINGID_PKMNBROKEFREE, STRINGID_ITAPPEAREDCAUGHT, STRINGID_AARGHALMOSTHADIT, STRINGID_SHOOTSOCLOSE + [BALL_NO_SHAKES] = STRINGID_PKMNBROKEFREE, + [BALL_1_SHAKE] = STRINGID_ITAPPEAREDCAUGHT, + [BALL_2_SHAKES] = STRINGID_AARGHALMOSTHADIT, + [BALL_3_SHAKES_FAIL] = STRINGID_SHOOTSOCLOSE }; // Overworld weathers that don't have an associated battle weather default to "It is raining." @@ -1124,59 +1179,82 @@ const u16 gWeatherStartsStringIds[] = const u16 gInobedientStringIds[] = { - STRINGID_PKMNLOAFING, STRINGID_PKMNWONTOBEY, STRINGID_PKMNTURNEDAWAY, - STRINGID_PKMNPRETENDNOTNOTICE, STRINGID_PKMNINCAPABLEOFPOWER + [B_MSG_LOAFING] = STRINGID_PKMNLOAFING, + [B_MSG_WONT_OBEY] = STRINGID_PKMNWONTOBEY, + [B_MSG_TURNED_AWAY] = STRINGID_PKMNTURNEDAWAY, + [B_MSG_PRETEND_NOT_NOTICE] = STRINGID_PKMNPRETENDNOTNOTICE, + [B_MSG_INCAPABLE_OF_POWER] = STRINGID_PKMNINCAPABLEOFPOWER }; const u16 gSafariGetNearStringIds[] = { - STRINGID_CREPTCLOSER, STRINGID_CANTGETCLOSER + [B_MSG_CREPT_CLOSER] = STRINGID_CREPTCLOSER, + [B_MSG_CANT_GET_CLOSER] = STRINGID_CANTGETCLOSER }; const u16 gSafariPokeblockResultStringIds[] = { - STRINGID_PKMNCURIOUSABOUTX, STRINGID_PKMNENTHRALLEDBYX, STRINGID_PKMNIGNOREDX + [B_MSG_MON_CURIOUS] = STRINGID_PKMNCURIOUSABOUTX, + [B_MSG_MON_ENTHRALLED] = STRINGID_PKMNENTHRALLEDBYX, + [B_MSG_MON_IGNORED] = STRINGID_PKMNIGNOREDX }; const u16 gTrainerItemCuredStatusStringIds[] = { - STRINGID_PKMNSITEMSNAPPEDOUT, STRINGID_PKMNSITEMCUREDPARALYSIS, STRINGID_PKMNSITEMDEFROSTEDIT, - STRINGID_PKMNSITEMHEALEDBURN, STRINGID_PKMNSITEMCUREDPOISON, STRINGID_PKMNSITEMWOKEIT + [AI_HEAL_CONFUSION] = STRINGID_PKMNSITEMSNAPPEDOUT, + [AI_HEAL_PARALYSIS] = STRINGID_PKMNSITEMCUREDPARALYSIS, + [AI_HEAL_FREEZE] = STRINGID_PKMNSITEMDEFROSTEDIT, + [AI_HEAL_BURN] = STRINGID_PKMNSITEMHEALEDBURN, + [AI_HEAL_POISON] = STRINGID_PKMNSITEMCUREDPOISON, + [AI_HEAL_SLEEP] = STRINGID_PKMNSITEMWOKEIT }; const u16 gBerryEffectStringIds[] = { - STRINGID_PKMNSITEMCUREDPROBLEM, STRINGID_PKMNSITEMNORMALIZEDSTATUS + [B_MSG_CURED_PROBLEM] = STRINGID_PKMNSITEMCUREDPROBLEM, + [B_MSG_NORMALIZED_STATUS] = STRINGID_PKMNSITEMNORMALIZEDSTATUS }; const u16 gBRNPreventionStringIds[] = { - STRINGID_PKMNSXPREVENTSBURNS, STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY + [B_MSG_ABILITY_PREVENTS_MOVE_STATUS] = STRINGID_PKMNSXPREVENTSBURNS, + [B_MSG_ABILITY_PREVENTS_ABILITY_STATUS] = STRINGID_PKMNSXPREVENTSYSZ, + [B_MSG_STATUS_HAD_NO_EFFECT] = STRINGID_PKMNSXHADNOEFFECTONY }; const u16 gPRLZPreventionStringIds[] = { - STRINGID_PKMNPREVENTSPARALYSISWITH, STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY + [B_MSG_ABILITY_PREVENTS_MOVE_STATUS] = STRINGID_PKMNPREVENTSPARALYSISWITH, + [B_MSG_ABILITY_PREVENTS_ABILITY_STATUS] = STRINGID_PKMNSXPREVENTSYSZ, + [B_MSG_STATUS_HAD_NO_EFFECT] = STRINGID_PKMNSXHADNOEFFECTONY }; const u16 gPSNPreventionStringIds[] = { - STRINGID_PKMNPREVENTSPOISONINGWITH, STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY + [B_MSG_ABILITY_PREVENTS_MOVE_STATUS] = STRINGID_PKMNPREVENTSPOISONINGWITH, + [B_MSG_ABILITY_PREVENTS_ABILITY_STATUS] = STRINGID_PKMNSXPREVENTSYSZ, + [B_MSG_STATUS_HAD_NO_EFFECT] = STRINGID_PKMNSXHADNOEFFECTONY }; const u16 gItemSwapStringIds[] = { - STRINGID_PKMNOBTAINEDX, STRINGID_PKMNOBTAINEDX2, STRINGID_PKMNOBTAINEDXYOBTAINEDZ + [B_MSG_ITEM_SWAP_TAKEN] = STRINGID_PKMNOBTAINEDX, + [B_MSG_ITEM_SWAP_GIVEN] = STRINGID_PKMNOBTAINEDX2, + [B_MSG_ITEM_SWAP_BOTH] = STRINGID_PKMNOBTAINEDXYOBTAINEDZ }; const u16 gFlashFireStringIds[] = { - STRINGID_PKMNRAISEDFIREPOWERWITH, STRINGID_PKMNSXMADEYINEFFECTIVE + [B_MSG_FLASH_FIRE_BOOST] = STRINGID_PKMNRAISEDFIREPOWERWITH, + [B_MSG_FLASH_FIRE_NO_BOOST] = STRINGID_PKMNSXMADEYINEFFECTIVE }; const u16 gCaughtMonStringIds[] = { - STRINGID_PKMNTRANSFERREDSOMEONESPC, STRINGID_PKMNTRANSFERREDLANETTESPC, STRINGID_PKMNBOXSOMEONESPCFULL, STRINGID_PKMNBOXLANETTESPCFULL, + [B_MSG_SENT_SOMEONES_PC] = STRINGID_PKMNTRANSFERREDSOMEONESPC, + [B_MSG_SENT_LANETTES_PC] = STRINGID_PKMNTRANSFERREDLANETTESPC, + [B_MSG_SOMEONES_BOX_FULL] = STRINGID_PKMNBOXSOMEONESPCFULL, + [B_MSG_LANETTES_BOX_FULL] = STRINGID_PKMNBOXLANETTESPCFULL, }; const u16 gTrappingMoves[] = @@ -1218,7 +1296,8 @@ static const u8 sText_Defense[] = _("DEFENSE"); static const u8 sText_SpAtk[] = _("SP. ATK"); static const u8 sText_SpDef[] = _("SP. DEF"); -const u8 * const gStatNamesTable2[] = +// Unused +static const u8 * const sStatNamesTable2[] = { sText_HP, sText_SpAtk, sText_Attack, sText_SpDef, sText_Defense, sText_Speed @@ -1311,10 +1390,10 @@ static const u8 sText_PkmnEagerForMore[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is const u16 gBattlePalaceFlavorTextTable[] = { - STRINGID_GLINTAPPEARSINEYE, - STRINGID_PKMNGETTINGINTOPOSITION, - STRINGID_PKMNBEGANGROWLINGDEEPLY, - STRINGID_PKMNEAGERFORMORE + [B_MSG_GLINT_IN_EYE] = STRINGID_GLINTAPPEARSINEYE, + [B_MSG_GETTING_IN_POS] = STRINGID_PKMNGETTINGINTOPOSITION, + [B_MSG_GROWL_DEEPLY] = STRINGID_PKMNBEGANGROWLINGDEEPLY, + [B_MSG_EAGER_FOR_MORE] = STRINGID_PKMNEAGERFORMORE, }; static const u8 sText_RefIfNothingIsDecided[] = _("REFEREE: If nothing is decided in\n3 turns, we will go to judging!"); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e0a3693eb095..6cd7debda8ac 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -876,34 +876,33 @@ const ALIGNED(4) u8 gBattlePalaceNatureToMoveGroupLikelihood[NUM_NATURES][4] = [NATURE_QUIRKY] = PALACE_STYLE(56, 22, 56, 22) // 22%, 22% }; -// Indices into gBattlePalaceFlavorTextTable static const u8 sBattlePalaceNatureToFlavorTextId[NUM_NATURES] = { - [NATURE_HARDY] = 3, - [NATURE_LONELY] = 0, - [NATURE_BRAVE] = 1, - [NATURE_ADAMANT] = 0, - [NATURE_NAUGHTY] = 0, - [NATURE_BOLD] = 1, - [NATURE_DOCILE] = 3, - [NATURE_RELAXED] = 0, - [NATURE_IMPISH] = 1, - [NATURE_LAX] = 2, - [NATURE_TIMID] = 2, - [NATURE_HASTY] = 0, - [NATURE_SERIOUS] = 3, - [NATURE_JOLLY] = 1, - [NATURE_NAIVE] = 3, - [NATURE_MODEST] = 1, - [NATURE_MILD] = 2, - [NATURE_QUIET] = 3, - [NATURE_BASHFUL] = 3, - [NATURE_RASH] = 2, - [NATURE_CALM] = 1, - [NATURE_GENTLE] = 0, - [NATURE_SASSY] = 2, - [NATURE_CAREFUL] = 2, - [NATURE_QUIRKY] = 3, + [NATURE_HARDY] = B_MSG_EAGER_FOR_MORE, + [NATURE_LONELY] = B_MSG_GLINT_IN_EYE, + [NATURE_BRAVE] = B_MSG_GETTING_IN_POS, + [NATURE_ADAMANT] = B_MSG_GLINT_IN_EYE, + [NATURE_NAUGHTY] = B_MSG_GLINT_IN_EYE, + [NATURE_BOLD] = B_MSG_GETTING_IN_POS, + [NATURE_DOCILE] = B_MSG_EAGER_FOR_MORE, + [NATURE_RELAXED] = B_MSG_GLINT_IN_EYE, + [NATURE_IMPISH] = B_MSG_GETTING_IN_POS, + [NATURE_LAX] = B_MSG_GROWL_DEEPLY, + [NATURE_TIMID] = B_MSG_GROWL_DEEPLY, + [NATURE_HASTY] = B_MSG_GLINT_IN_EYE, + [NATURE_SERIOUS] = B_MSG_EAGER_FOR_MORE, + [NATURE_JOLLY] = B_MSG_GETTING_IN_POS, + [NATURE_NAIVE] = B_MSG_EAGER_FOR_MORE, + [NATURE_MODEST] = B_MSG_GETTING_IN_POS, + [NATURE_MILD] = B_MSG_GROWL_DEEPLY, + [NATURE_QUIET] = B_MSG_EAGER_FOR_MORE, + [NATURE_BASHFUL] = B_MSG_EAGER_FOR_MORE, + [NATURE_RASH] = B_MSG_GROWL_DEEPLY, + [NATURE_CALM] = B_MSG_GETTING_IN_POS, + [NATURE_GENTLE] = B_MSG_GLINT_IN_EYE, + [NATURE_SASSY] = B_MSG_GROWL_DEEPLY, + [NATURE_CAREFUL] = B_MSG_GROWL_DEEPLY, + [NATURE_QUIRKY] = B_MSG_EAGER_FOR_MORE, }; static void Cmd_attackcanceler(void) @@ -991,7 +990,7 @@ static void Cmd_attackcanceler(void) gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = B_MSG_PROTECTED; + gBattleCommunication[MISS_TYPE] = B_MSG_PROTECTED; gBattlescriptCurrInstr++; } else @@ -1024,7 +1023,7 @@ static void Cmd_jumpifaffectedbyprotect(void) { gMoveResultFlags |= MOVE_RESULT_MISSED; JumpIfMoveFailed(5, 0); - gBattleCommunication[6] = B_MSG_PROTECTED; + gBattleCommunication[MISS_TYPE] = B_MSG_PROTECTED; } else { @@ -1039,7 +1038,7 @@ bool8 JumpIfMoveAffectedByProtect(u16 move) { gMoveResultFlags |= MOVE_RESULT_MISSED; JumpIfMoveFailed(7, move); - gBattleCommunication[6] = B_MSG_PROTECTED; + gBattleCommunication[MISS_TYPE] = B_MSG_PROTECTED; affected = TRUE; } return affected; @@ -1172,9 +1171,9 @@ static void Cmd_accuracycheck(void) gMoveResultFlags |= MOVE_RESULT_MISSED; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && (gBattleMoves[move].target == MOVE_TARGET_BOTH || gBattleMoves[move].target == MOVE_TARGET_FOES_AND_ALLY)) - gBattleCommunication[6] = B_MSG_AVOIDED_ATK; + gBattleCommunication[MISS_TYPE] = B_MSG_AVOIDED_ATK; else - gBattleCommunication[6] = B_MSG_MISSED; + gBattleCommunication[MISS_TYPE] = B_MSG_MISSED; CheckWonderGuardAndLevitate(); } @@ -1370,7 +1369,7 @@ static void Cmd_typecalc(void) gMoveResultFlags |= (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE); gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = B_MSG_GROUND_MISS; + gBattleCommunication[MISS_TYPE] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } else @@ -1406,7 +1405,7 @@ static void Cmd_typecalc(void) gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; gLastHitByType[gBattlerTarget] = 0; - gBattleCommunication[6] = B_MSG_AVOIDED_DMG; + gBattleCommunication[MISS_TYPE] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } if (gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) @@ -1429,7 +1428,7 @@ static void CheckWonderGuardAndLevitate(void) if (gBattleMons[gBattlerTarget].ability == ABILITY_LEVITATE && moveType == TYPE_GROUND) { gLastUsedAbility = ABILITY_LEVITATE; - gBattleCommunication[6] = B_MSG_GROUND_MISS; + gBattleCommunication[MISS_TYPE] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, ABILITY_LEVITATE); return; } @@ -1484,7 +1483,7 @@ static void CheckWonderGuardAndLevitate(void) if (((flags & 2) || !(flags & 1)) && gBattleMoves[gCurrentMove].power) { gLastUsedAbility = ABILITY_WONDER_GUARD; - gBattleCommunication[6] = B_MSG_AVOIDED_DMG; + gBattleCommunication[MISS_TYPE] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, ABILITY_WONDER_GUARD); } } @@ -2019,9 +2018,9 @@ static void Cmd_resultmessage(void) if (gBattleControllerExecFlags) return; - if (gMoveResultFlags & MOVE_RESULT_MISSED && (!(gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) || gBattleCommunication[6] > B_MSG_AVOIDED_ATK)) + if (gMoveResultFlags & MOVE_RESULT_MISSED && (!(gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) || gBattleCommunication[MISS_TYPE] > B_MSG_AVOIDED_ATK)) { - stringId = gMissStringIds[gBattleCommunication[6]]; + stringId = gMissStringIds[gBattleCommunication[MISS_TYPE]]; gBattleCommunication[MSG_DISPLAY] = 1; } else @@ -2273,12 +2272,12 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_MOVE_STATUS; } RESET_RETURN } @@ -2289,7 +2288,7 @@ void SetMoveEffect(bool8 primary, u8 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_PSNPrevention; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUS_HAD_NO_EFFECT; RESET_RETURN } if (IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_POISON)) @@ -2314,12 +2313,12 @@ void SetMoveEffect(bool8 primary, u8 certain) gBattlescriptCurrInstr = BattleScript_BRNPrevention; if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_MOVE_STATUS; } RESET_RETURN } @@ -2330,7 +2329,7 @@ void SetMoveEffect(bool8 primary, u8 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_BRNPrevention; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUS_HAD_NO_EFFECT; RESET_RETURN } if (IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_FIRE)) @@ -2370,12 +2369,12 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_MOVE_STATUS; } RESET_RETURN } @@ -2398,12 +2397,12 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_MOVE_STATUS; } RESET_RETURN } @@ -2414,7 +2413,7 @@ void SetMoveEffect(bool8 primary, u8 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_PSNPrevention; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUS_HAD_NO_EFFECT; RESET_RETURN } if (gBattleMons[gEffectBattler].status1) @@ -2453,12 +2452,12 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUSED_BY_ABILITY; gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUSED; } // for synchronize @@ -3579,7 +3578,7 @@ static void MoveValuesCleanUp(void) gBattleScripting.dmgMultiplier = 1; gCritMultiplier = 1; gBattleCommunication[MOVE_EFFECT_BYTE] = 0; - gBattleCommunication[6] = 0; + gBattleCommunication[MISS_TYPE] = 0; gHitMarker &= ~(HITMARKER_DESTINYBOND); gHitMarker &= ~(HITMARKER_SYNCHRONISE_EFFECT); } @@ -4459,7 +4458,7 @@ static void Cmd_typecalc2(void) gLastUsedAbility = gBattleMons[gBattlerTarget].ability; gMoveResultFlags |= (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE); gLastLandedMoves[gBattlerTarget] = 0; - gBattleCommunication[6] = B_MSG_GROUND_MISS; + gBattleCommunication[MISS_TYPE] = B_MSG_GROUND_MISS; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } else @@ -4534,7 +4533,7 @@ static void Cmd_typecalc2(void) gLastUsedAbility = ABILITY_WONDER_GUARD; gMoveResultFlags |= MOVE_RESULT_MISSED; gLastLandedMoves[gBattlerTarget] = 0; - gBattleCommunication[6] = B_MSG_AVOIDED_DMG; + gBattleCommunication[MISS_TYPE] = B_MSG_AVOIDED_DMG; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } if (gMoveResultFlags & MOVE_RESULT_DOESNT_AFFECT_FOE) @@ -6446,19 +6445,19 @@ static void Cmd_setprotectlike(void) // protect and endure if (gBattleMoves[gCurrentMove].effect == EFFECT_PROTECT) { gProtectStructs[gBattlerAttacker].protected = 1; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PROTECTED_ITSELF; } if (gBattleMoves[gCurrentMove].effect == EFFECT_ENDURE) { gProtectStructs[gBattlerAttacker].endured = 1; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_BRACED_ITSELF; } gDisableStructs[gBattlerAttacker].protectUses++; } else { gDisableStructs[gBattlerAttacker].protectUses = 0; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PROTECT_FAILED; gMoveResultFlags |= MOVE_RESULT_MISSED; } @@ -6611,12 +6610,12 @@ static void Cmd_setrain(void) if (gBattleWeather & WEATHER_RAIN_ANY) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { gBattleWeather = WEATHER_RAIN_TEMPORARY; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_RAIN; gWishFutureKnock.weatherDuration = 5; } gBattlescriptCurrInstr++; @@ -6627,7 +6626,7 @@ static void Cmd_setreflect(void) if (gSideStatuses[GET_BATTLER_SIDE(gBattlerAttacker)] & SIDE_STATUS_REFLECT) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SIDE_STATUS_FAILED; } else { @@ -6636,9 +6635,9 @@ static void Cmd_setreflect(void) gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].reflectBattlerId = gBattlerAttacker; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && CountAliveMonsInBattle(BATTLE_ALIVE_ATK_SIDE) == 2) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_REFLECT_DOUBLE; else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_REFLECT_SINGLE; } gBattlescriptCurrInstr++; } @@ -6648,18 +6647,18 @@ static void Cmd_setseeded(void) if (gMoveResultFlags & MOVE_RESULT_NO_EFFECT || gStatuses3[gBattlerTarget] & STATUS3_LEECHSEED) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_LEECH_SEED_MISS; } else if (IS_BATTLER_OF_TYPE(gBattlerTarget, TYPE_GRASS)) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_LEECH_SEED_FAIL; } else { gStatuses3[gBattlerTarget] |= gBattlerAttacker; gStatuses3[gBattlerTarget] |= STATUS3_LEECHSEED; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_LEECH_SEED_SET; } gBattlescriptCurrInstr++; @@ -6700,11 +6699,11 @@ static void Cmd_trysetrest(void) else { if (gBattleMons[gBattlerTarget].status1 & ((u8)(~STATUS1_SLEEP))) - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_REST_STATUSED; else - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_REST; - gBattleMons[gBattlerTarget].status1 = 3; + gBattleMons[gBattlerTarget].status1 = STATUS1_SLEEP_TURN(3); BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 5; @@ -6740,9 +6739,9 @@ bool8 UproarWakeUpCheck(u8 battlerId) if (gBattlerTarget == 0xFF) gBattlerTarget = i; else if (gBattlerTarget == i) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_SLEEP_UPROAR; else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_UPROAR_KEPT_AWAKE; break; } @@ -6765,7 +6764,7 @@ static void Cmd_jumpifcantmakeasleep(void) || gBattleMons[gBattlerTarget].ability == ABILITY_VITAL_SPIRIT) { gLastUsedAbility = gBattleMons[gBattlerTarget].ability; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STAYED_AWAKE_USING; gBattlescriptCurrInstr = jumpPtr; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } @@ -6780,7 +6779,7 @@ static void Cmd_stockpile(void) if (gDisableStructs[gBattlerAttacker].stockpileCounter == 3) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_STOCKPILE; } else { @@ -6788,7 +6787,7 @@ static void Cmd_stockpile(void) PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff1, 1, gDisableStructs[gBattlerAttacker].stockpileCounter) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STOCKPILED; } gBattlescriptCurrInstr++; } @@ -6802,7 +6801,7 @@ static void Cmd_stockpiletobasedamage(void) } else { - if (gBattleCommunication[6] != B_MSG_PROTECTED) + if (gBattleCommunication[MISS_TYPE] != B_MSG_PROTECTED) { gBattleMoveDamage = CalculateBaseDamage(&gBattleMons[gBattlerAttacker], &gBattleMons[gBattlerTarget], gCurrentMove, gSideStatuses[GET_BATTLER_SIDE(gBattlerTarget)], 0, @@ -6826,14 +6825,14 @@ static void Cmd_stockpiletohpheal(void) if (gDisableStructs[gBattlerAttacker].stockpileCounter == 0) { gBattlescriptCurrInstr = jumpPtr; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SWALLOW_FAILED; } else if (gBattleMons[gBattlerAttacker].maxHP == gBattleMons[gBattlerAttacker].hp) { gDisableStructs[gBattlerAttacker].stockpileCounter = 0; gBattlescriptCurrInstr = jumpPtr; gBattlerTarget = gBattlerAttacker; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SWALLOW_FULL_HP; } else { @@ -6985,9 +6984,9 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gBattleTextBuff2[index] = B_BUFF_EOS; if (gBattleMons[gActiveBattler].statStages[statId] == MIN_STAT_STAGE) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STAT_WONT_DECREASE; else - gBattleCommunication[MULTISTRING_CHOOSER] = (gBattlerTarget == gActiveBattler); + gBattleCommunication[MULTISTRING_CHOOSER] = (gBattlerTarget == gActiveBattler); // B_MSG_ATTACKER_STAT_FELL or B_MSG_DEFENDER_STAT_FELL } } @@ -7012,9 +7011,9 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gBattleTextBuff2[index] = B_BUFF_EOS; if (gBattleMons[gActiveBattler].statStages[statId] == MAX_STAT_STAGE) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STAT_WONT_INCREASE; else - gBattleCommunication[MULTISTRING_CHOOSER] = (gBattlerTarget == gActiveBattler); + gBattleCommunication[MULTISTRING_CHOOSER] = (gBattlerTarget == gActiveBattler); // B_MSG_ATTACKER_STAT_ROSE or B_MSG_DEFENDER_STAT_ROSE } gBattleMons[gActiveBattler].statStages[statId] += statValue; @@ -7023,10 +7022,10 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) if (gBattleMons[gActiveBattler].statStages[statId] > MAX_STAT_STAGE) gBattleMons[gActiveBattler].statStages[statId] = MAX_STAT_STAGE; - if (gBattleCommunication[MULTISTRING_CHOOSER] == 2 && flags & STAT_BUFF_ALLOW_PTR) + if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && flags & STAT_BUFF_ALLOW_PTR) gMoveResultFlags |= MOVE_RESULT_MISSED; - if (gBattleCommunication[MULTISTRING_CHOOSER] == 2 && !(flags & STAT_BUFF_ALLOW_PTR)) + if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && !(flags & STAT_BUFF_ALLOW_PTR)) return STAT_BUFF_DIDNT_WORK; return STAT_BUFF_WORKED; @@ -7358,7 +7357,7 @@ static void Cmd_setlightscreen(void) if (gSideStatuses[GET_BATTLER_SIDE(gBattlerAttacker)] & SIDE_STATUS_LIGHTSCREEN) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SIDE_STATUS_FAILED; } else { @@ -7367,9 +7366,9 @@ static void Cmd_setlightscreen(void) gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].lightscreenBattlerId = gBattlerAttacker; if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && CountAliveMonsInBattle(BATTLE_ALIVE_ATK_SIDE) == 2) - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_LIGHTSCREEN_DOUBLE; else - gBattleCommunication[MULTISTRING_CHOOSER] = 3; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_LIGHTSCREEN_SINGLE; } gBattlescriptCurrInstr++; @@ -7453,9 +7452,9 @@ static void Cmd_tryKO(void) { gMoveResultFlags |= MOVE_RESULT_MISSED; if (gBattleMons[gBattlerAttacker].level >= gBattleMons[gBattlerTarget].level) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_KO_MISS; else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_KO_UNAFFECTED; gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } } @@ -7475,12 +7474,12 @@ static void Cmd_setsandstorm(void) if (gBattleWeather & WEATHER_SANDSTORM_ANY) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { gBattleWeather = WEATHER_SANDSTORM_TEMPORARY; - gBattleCommunication[MULTISTRING_CHOOSER] = 3; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_SANDSTORM; gWishFutureKnock.weatherDuration = 5; } gBattlescriptCurrInstr++; @@ -7621,14 +7620,14 @@ static void Cmd_setmist(void) if (gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].mistTimer) { gMoveResultFlags |= MOVE_RESULT_FAILED; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MIST_FAILED; } else { gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].mistTimer = 5; gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].mistBattlerId = gBattlerAttacker; gSideStatuses[GET_BATTLER_SIDE(gBattlerAttacker)] |= SIDE_STATUS_MIST; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_MIST; } gBattlescriptCurrInstr++; } @@ -7638,12 +7637,12 @@ static void Cmd_setfocusenergy(void) if (gBattleMons[gBattlerAttacker].status2 & STATUS2_FOCUS_ENERGY) { gMoveResultFlags |= MOVE_RESULT_FAILED; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FOCUS_ENERGY_FAILED; } else { gBattleMons[gBattlerAttacker].status2 |= STATUS2_FOCUS_ENERGY; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_GETTING_PUMPED; } gBattlescriptCurrInstr++; } @@ -7656,7 +7655,7 @@ static void Cmd_transformdataexecution(void) || gStatuses3[gBattlerTarget] & STATUS3_SEMI_INVULNERABLE) { gMoveResultFlags |= MOVE_RESULT_FAILED; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_TRANSFORM_FAILED; } else { @@ -7688,7 +7687,7 @@ static void Cmd_transformdataexecution(void) gActiveBattler = gBattlerAttacker; BtlController_EmitResetActionMoveSelection(0, RESET_MOVE_SELECTION); MarkBattlerForControllerExec(gActiveBattler); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_TRANSFORMED; } } @@ -7701,7 +7700,7 @@ static void Cmd_setsubstitute(void) if (gBattleMons[gBattlerAttacker].hp <= hp) { gBattleMoveDamage = 0; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SUBSTITUTE_FAILED; } else { @@ -7712,7 +7711,7 @@ static void Cmd_setsubstitute(void) gBattleMons[gBattlerAttacker].status2 |= STATUS2_SUBSTITUTE; gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_WRAPPED); gDisableStructs[gBattlerAttacker].substituteHP = gBattleMoveDamage; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_SUBSTITUTE; gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE; } @@ -8250,7 +8249,7 @@ static void Cmd_healpartystatus(void) struct Pokemon *party; s32 i; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_BELL; if (GetBattlerSide(gBattlerAttacker) == B_SIDE_PLAYER) party = gPlayerParty; @@ -8265,7 +8264,7 @@ static void Cmd_healpartystatus(void) else { RecordAbilityBattle(gBattlerAttacker, gBattleMons[gBattlerAttacker].ability); - gBattleCommunication[MULTISTRING_CHOOSER] |= 1; + gBattleCommunication[MULTISTRING_CHOOSER] |= B_MSG_BELL_SOUNDPROOF_ATTACKER; } gActiveBattler = gBattleScripting.battler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); @@ -8281,10 +8280,12 @@ static void Cmd_healpartystatus(void) else { RecordAbilityBattle(gActiveBattler, gBattleMons[gActiveBattler].ability); - gBattleCommunication[MULTISTRING_CHOOSER] |= 2; + gBattleCommunication[MULTISTRING_CHOOSER] |= B_MSG_BELL_SOUNDPROOF_PARTNER; } } + // Because the above MULTISTRING_CHOOSER are ORd, if both are set then it will be B_MSG_BELL_BOTH_SOUNDPROOF + for (i = 0; i < PARTY_SIZE; i++) { u16 species = GetMonData(&party[i], MON_DATA_SPECIES2); @@ -8310,7 +8311,7 @@ static void Cmd_healpartystatus(void) } else // Aromatherapy { - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SOOTHING_AROMA; toHeal = 0x3F; gBattleMons[gBattlerAttacker].status1 = 0; @@ -8514,14 +8515,14 @@ static void Cmd_setsafeguard(void) if (gSideStatuses[GET_BATTLER_SIDE(gBattlerAttacker)] & SIDE_STATUS_SAFEGUARD) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SIDE_STATUS_FAILED; } else { gSideStatuses[GET_BATTLER_SIDE(gBattlerAttacker)] |= SIDE_STATUS_SAFEGUARD; gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].safeguardTimer = 5; gSideTimers[GET_BATTLER_SIDE(gBattlerAttacker)].safeguardBattlerId = gBattlerAttacker; - gBattleCommunication[MULTISTRING_CHOOSER] = 5; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_SAFEGUARD; } gBattlescriptCurrInstr++; @@ -8630,12 +8631,12 @@ static void Cmd_setsunny(void) if (gBattleWeather & WEATHER_SUN_ANY) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { gBattleWeather = WEATHER_SUN_TEMPORARY; - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_SUNLIGHT; gWishFutureKnock.weatherDuration = 5; } @@ -8806,9 +8807,9 @@ static void Cmd_trysetfutureattack(void) gWishFutureKnock.futureSightDmg[gBattlerTarget] = gWishFutureKnock.futureSightDmg[gBattlerTarget] * 15 / 10; if (gCurrentMove == MOVE_DOOM_DESIRE) - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOOM_DESIRE; else - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FUTURE_SIGHT; gBattlescriptCurrInstr += 5; } @@ -8912,12 +8913,12 @@ static void Cmd_sethail(void) if (gBattleWeather & WEATHER_HAIL_ANY) { gMoveResultFlags |= MOVE_RESULT_MISSED; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { gBattleWeather = WEATHER_HAIL; - gBattleCommunication[MULTISTRING_CHOOSER] = 5; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_HAIL; gWishFutureKnock.weatherDuration = 5; } @@ -8928,7 +8929,7 @@ static void Cmd_jumpifattackandspecialattackcannotfall(void) // memento { if (gBattleMons[gBattlerTarget].statStages[STAT_ATK] == MIN_STAT_STAGE && gBattleMons[gBattlerTarget].statStages[STAT_SPATK] == MIN_STAT_STAGE - && gBattleCommunication[6] != B_MSG_PROTECTED) + && gBattleCommunication[MISS_TYPE] != B_MSG_PROTECTED) { gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -9113,11 +9114,11 @@ static void Cmd_tryswapitems(void) // trick PREPARE_ITEM_BUFFER(gBattleTextBuff2, oldItemAtk) if (oldItemAtk != 0 && *newItemAtk != 0) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; // attacker's item -> <- target's item + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_BOTH; // attacker's item -> <- target's item else if (oldItemAtk == 0 && *newItemAtk != 0) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; // nothing -> <- target's item + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_TAKEN; // nothing -> <- target's item else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; // attacker's item -> <- nothing + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_GIVEN; // attacker's item -> <- nothing } } } @@ -9605,7 +9606,7 @@ static void Cmd_settypebasedhalvers(void) // water and mud sport if (!(gStatuses3[gBattlerAttacker] & STATUS3_MUDSPORT)) { gStatuses3[gBattlerAttacker] |= STATUS3_MUDSPORT; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEAKEN_ELECTRIC; worked = TRUE; } } @@ -9614,7 +9615,7 @@ static void Cmd_settypebasedhalvers(void) // water and mud sport if (!(gStatuses3[gBattlerAttacker] & STATUS3_WATERSPORT)) { gStatuses3[gBattlerAttacker] |= STATUS3_WATERSPORT; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEAKEN_FIRE; worked = TRUE; } } @@ -9883,7 +9884,6 @@ static void Cmd_handleballthrow(void) else // not caught { gBattleCommunication[MULTISTRING_CHOOSER] = shakes; - // Maybe inject SpriteCB_TestBallThrow here gBattlescriptCurrInstr = BattleScript_ShakeBallThrow; } } @@ -9896,7 +9896,7 @@ static void Cmd_givecaughtmon(void) { if (!ShouldShowBoxWasFullMessage()) { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SENT_SOMEONES_PC; StringCopy(gStringVar1, GetBoxNamePtr(VarGet(VAR_PC_BOX_TO_SEND_MON))); GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gStringVar2); } @@ -9905,9 +9905,10 @@ static void Cmd_givecaughtmon(void) StringCopy(gStringVar1, GetBoxNamePtr(VarGet(VAR_PC_BOX_TO_SEND_MON))); // box the mon was sent to GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gStringVar2); StringCopy(gStringVar3, GetBoxNamePtr(GetPCBoxToSendMon())); //box the mon was going to be sent to - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SOMEONES_BOX_FULL; } + // Change to B_MSG_SENT_LANETTES_PC or B_MSG_LANETTES_BOX_FULL if (FlagGet(FLAG_SYS_PC_LANETTE)) gBattleCommunication[MULTISTRING_CHOOSER]++; } diff --git a/src/battle_tv.c b/src/battle_tv.c index 8c8ea90abdbc..a61f5ff29110 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -666,7 +666,7 @@ void BattleTv_SetDataBasedOnString(u16 stringId) case STRINGID_CRITICALHIT: AddMovePoints(PTS_CRITICAL_HIT, moveSlot, 0, 0); break; - case STRINGID_PKMNSSTATCHANGED: + case STRINGID_ATTACKERSSTATROSE: if (gBattleTextBuff1[2] != 0) { if (*statStringId == STRINGID_STATSHARPLY) @@ -675,7 +675,7 @@ void BattleTv_SetDataBasedOnString(u16 stringId) AddMovePoints(PTS_STAT_INCREASE_1, moveSlot, gBattleTextBuff1[2] - 1, 0); } break; - case STRINGID_PKMNSSTATCHANGED2: + case STRINGID_DEFENDERSSTATROSE: if (gBattleTextBuff1[2] != 0) { if (gBattlerAttacker == gBattlerTarget) @@ -691,11 +691,11 @@ void BattleTv_SetDataBasedOnString(u16 stringId) } } break; - case STRINGID_PKMNSSTATCHANGED3: + case STRINGID_ATTACKERSSTATFELL: if (gBattleTextBuff1[2] != 0) AddMovePoints(PTS_STAT_DECREASE_SELF, moveSlot, gBattleTextBuff1[2] - 1, 0); break; - case STRINGID_PKMNSSTATCHANGED4: + case STRINGID_DEFENDERSSTATFELL: if (gBattleTextBuff1[2] != 0) { if (*statStringId == STRINGID_STATHARSHLY) diff --git a/src/battle_util.c b/src/battle_util.c index c0d897707c73..6fb307d63a5e 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -49,7 +49,29 @@ extern const u8 *const gBattlescriptsForRunningByItem[]; extern const u8 *const gBattlescriptsForUsingItem[]; extern const u8 *const gBattlescriptsForSafariActions[]; -static const u8 sPkblToEscapeFactor[][3] = {{0, 0, 0}, {3, 5, 0}, {2, 3, 0}, {1, 2, 0}, {1, 1, 0}}; +static const u8 sPkblToEscapeFactor[][3] = { + { + [B_MSG_MON_CURIOUS] = 0, + [B_MSG_MON_ENTHRALLED] = 0, + [B_MSG_MON_IGNORED] = 0 + },{ + [B_MSG_MON_CURIOUS] = 3, + [B_MSG_MON_ENTHRALLED] = 5, + [B_MSG_MON_IGNORED] = 0 + },{ + [B_MSG_MON_CURIOUS] = 2, + [B_MSG_MON_ENTHRALLED] = 3, + [B_MSG_MON_IGNORED] = 0 + },{ + [B_MSG_MON_CURIOUS] = 1, + [B_MSG_MON_ENTHRALLED] = 2, + [B_MSG_MON_IGNORED] = 0 + },{ + [B_MSG_MON_CURIOUS] = 1, + [B_MSG_MON_ENTHRALLED] = 1, + [B_MSG_MON_IGNORED] = 0 + } +}; static const u8 sGoNearCounterToCatchFactor[] = {4, 3, 2, 1}; static const u8 sGoNearCounterToEscapeFactor[] = {4, 4, 4, 4}; @@ -238,10 +260,9 @@ void HandleAction_UseMove(void) } } - // choose battlescript - if (gBattleTypeFlags & BATTLE_TYPE_PALACE - && gProtectStructs[gBattlerAttacker].palaceUnableToUseMove) + if (gBattleTypeFlags & BATTLE_TYPE_PALACE && gProtectStructs[gBattlerAttacker].palaceUnableToUseMove) { + // Battle Palace, select battle script for failure to use move if (gBattleMons[gBattlerAttacker].hp == 0) { gCurrentActionFuncId = B_ACTION_FINISHED; @@ -249,13 +270,13 @@ void HandleAction_UseMove(void) } else if (gPalaceSelectionBattleScripts[gBattlerAttacker] != NULL) { - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_INCAPABLE_OF_POWER; gBattlescriptCurrInstr = gPalaceSelectionBattleScripts[gBattlerAttacker]; gPalaceSelectionBattleScripts[gBattlerAttacker] = NULL; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_INCAPABLE_OF_POWER; gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; } } @@ -318,26 +339,29 @@ void HandleAction_UseItem(void) case AI_ITEM_HEAL_HP: break; case AI_ITEM_CURE_CONDITION: - gBattleCommunication[MULTISTRING_CHOOSER] = 0; - if (*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1) + gBattleCommunication[MULTISTRING_CHOOSER] = AI_HEAL_CONFUSION; + if (*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & (1 << AI_HEAL_CONFUSION)) { if (*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 0x3E) - gBattleCommunication[MULTISTRING_CHOOSER] = 5; + gBattleCommunication[MULTISTRING_CHOOSER] = AI_HEAL_SLEEP; } else { + // Check for other statuses, stopping at first (shouldn't be more than one) while (!(*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1)) { *(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) >>= 1; gBattleCommunication[MULTISTRING_CHOOSER]++; + // MULTISTRING_CHOOSER will be either AI_HEAL_PARALYSIS, AI_HEAL_FREEZE, + // AI_HEAL_BURN, AI_HEAL_POISON, or AI_HEAL_SLEEP } } break; case AI_ITEM_X_STAT: - gBattleCommunication[MULTISTRING_CHOOSER] = 4; - if (*(gBattleStruct->AI_itemFlags + (gBattlerAttacker >> 1)) & 0x80) + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STAT_ROSE_ITEM; + if (*(gBattleStruct->AI_itemFlags + (gBattlerAttacker >> 1)) & (1 << AI_DIRE_HIT)) { - gBattleCommunication[MULTISTRING_CHOOSER] = 5; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_USED_DIRE_HIT; } else { @@ -356,9 +380,9 @@ void HandleAction_UseItem(void) break; case AI_ITEM_GUARD_SPECS: if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = 2; // Going OOB for gMistUsedStringIds? else - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_MIST; break; } @@ -479,7 +503,7 @@ void HandleAction_Run(void) if (!TryRunFromBattle(gBattlerAttacker)) // failed to run away { ClearFuryCutterDestinyBondGrudge(gBattlerAttacker); - gBattleCommunication[MULTISTRING_CHOOSER] = 3; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_ESCAPE_2; gBattlescriptCurrInstr = BattleScript_PrintFailedToRunString; gCurrentActionFuncId = B_ACTION_EXEC_SCRIPT; } @@ -488,7 +512,7 @@ void HandleAction_Run(void) { if (gBattleMons[gBattlerAttacker].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION)) { - gBattleCommunication[MULTISTRING_CHOOSER] = 4; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ATTACKER_CANT_ESCAPE; gBattlescriptCurrInstr = BattleScript_PrintFailedToRunString; gCurrentActionFuncId = B_ACTION_EXEC_SCRIPT; } @@ -567,11 +591,11 @@ void HandleAction_GoNear(void) if (gBattleStruct->safariGoNearCounter < 3) { gBattleStruct->safariGoNearCounter++; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CREPT_CLOSER; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; // Can't get closer. + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_GET_CLOSER; } gBattlescriptCurrInstr = gBattlescriptsForSafariActions[1]; gCurrentActionFuncId = B_ACTION_EXEC_SCRIPT; @@ -1295,20 +1319,20 @@ u8 DoFieldEndTurnEffects(void) { gBattleWeather &= ~WEATHER_RAIN_TEMPORARY; gBattleWeather &= ~WEATHER_RAIN_DOWNPOUR; - gBattleCommunication[MULTISTRING_CHOOSER] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_STOPPED; } else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR) - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOWNPOUR_CONTINUES; else - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_CONTINUES; } else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR) { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOWNPOUR_CONTINUES; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_CONTINUES; } BattleScriptExecute(BattleScript_RainContinuesOrEnds); @@ -1330,7 +1354,7 @@ u8 DoFieldEndTurnEffects(void) } gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SANDSTORM; BattleScriptExecute(gBattlescriptCurrInstr); effect++; } @@ -1368,7 +1392,7 @@ u8 DoFieldEndTurnEffects(void) } gBattleScripting.animArg1 = B_ANIM_HAIL_CONTINUES; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_HAIL; BattleScriptExecute(gBattlescriptCurrInstr); effect++; } @@ -1597,16 +1621,16 @@ u8 DoBattlerEndTurnEffects(void) if (WasUnableToUseMove(gActiveBattler)) { CancelMultiTurnMoves(gActiveBattler); - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_UPROAR_ENDS; } else if (gBattleMons[gActiveBattler].status2 & STATUS2_UPROAR) { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_UPROAR_CONTINUES; gBattleMons[gActiveBattler].status2 |= STATUS2_MULTIPLETURNS; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_UPROAR_ENDS; CancelMultiTurnMoves(gActiveBattler); } BattleScriptExecute(BattleScript_PrintUproarOverTurns); @@ -1749,9 +1773,9 @@ bool8 HandleWishPerishSongOnTurnEnd(void) && gBattleMons[gActiveBattler].hp != 0) { if (gWishFutureKnock.futureSightMove[gActiveBattler] == MOVE_FUTURE_SIGHT) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FUTURE_SIGHT; else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOOM_DESIRE; PREPARE_MOVE_BUFFER(gBattleTextBuff1, gWishFutureKnock.futureSightMove[gActiveBattler]); @@ -1962,7 +1986,7 @@ u8 AtkCanceller_UnableToUseMove(void) gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_SLEEP); gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP_UPROAR; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; } @@ -1990,7 +2014,7 @@ u8 AtkCanceller_UnableToUseMove(void) { gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; } @@ -2019,7 +2043,7 @@ u8 AtkCanceller_UnableToUseMove(void) gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_FREEZE); BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED; } effect = 2; } @@ -2030,7 +2054,7 @@ u8 AtkCanceller_UnableToUseMove(void) { CancelMultiTurnMoves(gBattlerAttacker); gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_LOAFING; gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; gMoveResultFlags |= MOVE_RESULT_MISSED; effect = 1; @@ -2103,12 +2127,14 @@ u8 AtkCanceller_UnableToUseMove(void) { if (Random() & 1) { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + // The MULTISTRING_CHOOSER is used here as a bool to signal + // to BattleScript_MoveUsedIsConfused whether or not damage was taken + gBattleCommunication[MULTISTRING_CHOOSER] = FALSE; BattleScriptPushCursor(); } else // confusion dmg { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = TRUE; gBattlerTarget = gBattlerAttacker; gBattleMoveDamage = CalculateBaseDamage(&gBattleMons[gBattlerAttacker], &gBattleMons[gBattlerAttacker], MOVE_POUND, 0, 40, 0, gBattlerAttacker, gBattlerAttacker); gProtectStructs[gBattlerAttacker].confusionSelfDmg = 1; @@ -2195,7 +2221,7 @@ u8 AtkCanceller_UnableToUseMove(void) gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_FREEZE); BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED_BY_MOVE; } effect = 2; } @@ -2593,7 +2619,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (gBattleMons[battler].statStages[STAT_SPEED] < MAX_STAT_STAGE && gDisableStructs[battler].isFirstTurn != 2) { gBattleMons[battler].statStages[STAT_SPEED]++; - gBattleScripting.animArg1 = 0x11; + gBattleScripting.animArg1 = 14 + STAT_SPEED; gBattleScripting.animArg2 = 0; BattleScriptPushCursorAndCallback(BattleScript_SpeedBoostActivates); gBattleScripting.battler = battler; @@ -2655,7 +2681,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA { if (!(gBattleResources->flags->flags[battler] & RESOURCE_FLAG_FLASH_FIRE)) { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FLASH_FIRE_BOOST; if (gProtectStructs[gBattlerAttacker].notFirstStrike) gBattlescriptCurrInstr = BattleScript_FlashFireBoost; else @@ -2666,7 +2692,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FLASH_FIRE_NO_BOOST; if (gProtectStructs[gBattlerAttacker].notFirstStrike) gBattlescriptCurrInstr = BattleScript_FlashFireBoost; else @@ -3431,7 +3457,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gEffectBattler = battlerId; SET_STATCHANGER(STAT_ATK, 1, FALSE); - gBattleScripting.animArg1 = 0xE + STAT_ATK; + gBattleScripting.animArg1 = 14 + STAT_ATK; gBattleScripting.animArg2 = 0; BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; @@ -3445,7 +3471,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gEffectBattler = battlerId; SET_STATCHANGER(STAT_DEF, 1, FALSE); - gBattleScripting.animArg1 = 0xE + STAT_DEF; + gBattleScripting.animArg1 = 14 + STAT_DEF; gBattleScripting.animArg2 = 0; BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; @@ -3459,7 +3485,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gEffectBattler = battlerId; SET_STATCHANGER(STAT_SPEED, 1, FALSE); - gBattleScripting.animArg1 = 0xE + STAT_SPEED; + gBattleScripting.animArg1 = 14 + STAT_SPEED; gBattleScripting.animArg2 = 0; BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; @@ -3473,7 +3499,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gEffectBattler = battlerId; SET_STATCHANGER(STAT_SPATK, 1, FALSE); - gBattleScripting.animArg1 = 0xE + STAT_SPATK; + gBattleScripting.animArg1 = 14 + STAT_SPATK; gBattleScripting.animArg2 = 0; BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; @@ -3487,7 +3513,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gEffectBattler = battlerId; SET_STATCHANGER(STAT_SPDEF, 1, FALSE); - gBattleScripting.animArg1 = 0xE + STAT_SPDEF; + gBattleScripting.animArg1 = 14 + STAT_SPDEF; gBattleScripting.animArg2 = 0; BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); effect = ITEM_STATS_CHANGE; @@ -3622,9 +3648,9 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) i++; } if (!(i > 1)) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; else - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_NORMALIZED_STATUS; gBattleMons[battlerId].status1 = 0; gBattleMons[battlerId].status2 &= ~(STATUS2_CONFUSION); BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); @@ -3637,7 +3663,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gBattleMons[battlerId].status2 &= ~(STATUS2_INFATUATION); StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; effect = ITEM_EFFECT_OTHER; } break; @@ -3740,7 +3766,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gBattleMons[battlerId].status2 &= ~(STATUS2_INFATUATION); StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; effect = ITEM_EFFECT_OTHER; } @@ -3776,7 +3802,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gBattleMons[battlerId].status1 = 0; gBattleMons[battlerId].status2 &= ~(STATUS2_CONFUSION); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; effect = ITEM_STATUS_CHANGE; } @@ -4016,7 +4042,9 @@ u8 IsMonDisobedient(void) calc = CheckMoveLimitations(gBattlerAttacker, gBitTable[gCurrMovePos], 0xFF); if (calc == 0xF) // all moves cannot be used { - gBattleCommunication[MULTISTRING_CHOOSER] = Random() & 3; + // Randomly select, then print a disobedient string + // B_MSG_LOAFING, B_MSG_WONT_OBEY, B_MSG_TURNED_AWAY, or B_MSG_PRETEND_NOT_NOTICE + gBattleCommunication[MULTISTRING_CHOOSER] = Random() & (NUM_LOAF_STRINGS - 1); gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; return 1; } @@ -4024,7 +4052,7 @@ u8 IsMonDisobedient(void) { do { - gCurrMovePos = gChosenMovePos = Random() & 3; + gCurrMovePos = gChosenMovePos = Random() & (MAX_MON_MOVES - 1); } while (gBitTable[gCurrMovePos] & calc); gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; @@ -4065,7 +4093,9 @@ u8 IsMonDisobedient(void) } else { - gBattleCommunication[MULTISTRING_CHOOSER] = Random() & 3; + // Randomly select, then print a disobedient string + // B_MSG_LOAFING, B_MSG_WONT_OBEY, B_MSG_TURNED_AWAY, or B_MSG_PRETEND_NOT_NOTICE + gBattleCommunication[MULTISTRING_CHOOSER] = Random() & (NUM_LOAF_STRINGS - 1); gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; return 1; } diff --git a/src/battle_util2.c b/src/battle_util2.c index 6d51f51e7dcc..def7302d38e5 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -10,6 +10,7 @@ #include "constants/abilities.h" #include "random.h" #include "battle_scripts.h" +#include "constants/battle_string_ids.h" void AllocateBattleResources(void) { @@ -136,7 +137,7 @@ u32 sub_805725C(u8 battlerId) gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP); gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP_UPROAR; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; } @@ -163,7 +164,7 @@ u32 sub_805725C(u8 battlerId) { gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; effect = 2; } @@ -183,7 +184,7 @@ u32 sub_805725C(u8 battlerId) gBattleMons[battlerId].status1 &= ~(STATUS1_FREEZE); BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED; } effect = 2; } diff --git a/src/pokemon.c b/src/pokemon.c index e28fba1b489d..9fe008d56232 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5366,7 +5366,7 @@ static void BufferStatRoseMessage(s32 arg0) gBattlerTarget = gBattlerInMenuId; StringCopy(gBattleTextBuff1, gStatNamesTable[sStatsToRaise[arg0]]); StringCopy(gBattleTextBuff2, gText_StatRose); - BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnsStatChanged2); + BattleStringExpandPlaceholdersToDisplayedString(gText_DefendersStatRose); } u8 *UseStatIncreaseItem(u16 itemId) From f4d8a91ba44d7bcf0f9df8db7ca5f7aeb688497f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 3 Apr 2021 12:38:07 -0400 Subject: [PATCH 084/762] Misc battle script cleanup --- asm/macros/battle_script.inc | 2 +- data/battle_scripts_1.s | 216 +++++++++++---------- data/battle_scripts_2.s | 17 +- include/battle_controllers.h | 4 +- include/constants/battle_script_commands.h | 48 ++--- include/constants/battle_string_ids.h | 23 ++- src/battle_controller_link_opponent.c | 6 +- src/battle_controller_link_partner.c | 6 +- src/battle_controller_opponent.c | 6 +- src/battle_controller_player.c | 6 +- src/battle_controller_player_partner.c | 6 +- src/battle_controller_recorded_opponent.c | 6 +- src/battle_controller_recorded_player.c | 6 +- src/battle_controller_safari.c | 6 +- src/battle_controller_wally.c | 6 +- src/battle_controllers.c | 10 +- src/battle_message.c | 24 +-- src/battle_script_commands.c | 62 +++--- src/battle_util.c | 2 +- 19 files changed, 238 insertions(+), 224 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index f3664a1c40fe..0f51061e8580 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1311,7 +1311,7 @@ various \battler, 15 .endm - .macro arenajudmengtstring id:req + .macro arenajudgmentstring id:req various \id, VARIOUS_ARENA_JUDGMENT_STRING .endm diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index daaf5eafd275..045db19c59b5 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1,3 +1,4 @@ +#include "constants/global.h" #include "constants/battle.h" #include "constants/pokemon.h" #include "constants/battle_script_commands.h" @@ -627,9 +628,9 @@ BattleScript_EffectMultiHit:: accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - setmultihitcounter 0x0 + setmultihitcounter 0 initmultihitstring - setbyte sMULTIHIT_EFFECT, 0x0 + setbyte sMULTIHIT_EFFECT, 0 BattleScript_MultiHitLoop:: jumpifhasnohp BS_ATTACKER, BattleScript_MultiHitEnd jumpifhasnohp BS_TARGET, BattleScript_MultiHitPrintStrings @@ -654,7 +655,7 @@ BattleScript_DoMultiHit:: waitmessage B_WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 waitmessage 1 - addbyte sMULTIHIT_STRING + 4, 0x1 + addbyte sMULTIHIT_STRING + 4, 1 moveendto MOVEEND_NEXT_TARGET jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_FOE_ENDURED, BattleScript_MultiHitPrintStrings decrementmultihit BattleScript_MultiHitLoop @@ -665,7 +666,7 @@ BattleScript_MultiHitPrintStrings:: resultmessage waitmessage B_WAIT_TIME_LONG jumpifmovehadnoeffect BattleScript_MultiHitEnd - copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 + copyarray gBattleTextBuff1, sMULTIHIT_STRING, 6 printstring STRINGID_HITXTIMES waitmessage B_WAIT_TIME_LONG BattleScript_MultiHitEnd:: @@ -806,7 +807,7 @@ BattleScript_EffectRazorWind:: BattleScript_TwoTurnMovesSecondTurn:: attackcanceler setmoveeffect MOVE_EFFECT_CHARGING - setbyte sB_ANIM_TURN, 0x1 + setbyte sB_ANIM_TURN, 1 clearstatusfromeffect BS_ATTACKER orword gHitMarker, HITMARKER_NO_PPDEDUCT jumpifnotmove MOVE_SKY_ATTACK, BattleScript_HitFromAccCheck @@ -862,9 +863,9 @@ BattleScript_EffectDoubleHit:: accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - setmultihitcounter 0x2 + setmultihitcounter 2 initmultihitstring - setbyte sMULTIHIT_EFFECT, 0x0 + setbyte sMULTIHIT_EFFECT, 0 goto BattleScript_MultiHitLoop BattleScript_EffectRecoilIfMiss:: @@ -1099,7 +1100,7 @@ BattleScript_EffectTwineedle:: setbyte sMULTIHIT_EFFECT, MOVE_EFFECT_POISON attackstring ppreduce - setmultihitcounter 0x2 + setmultihitcounter 2 initmultihitstring goto BattleScript_MultiHitLoop @@ -1171,8 +1172,8 @@ BattleScript_EffectMetronome:: pause B_WAIT_TIME_SHORT attackanimation waitanimation - setbyte sB_ANIM_TURN, 0x0 - setbyte sB_ANIM_TARGETS_HIT, 0x0 + setbyte sB_ANIM_TURN, 0 + setbyte sB_ANIM_TARGETS_HIT, 0 metronome BattleScript_EffectLeechSeed:: @@ -1348,8 +1349,8 @@ BattleScript_SleepTalkIsAsleep:: BattleScript_SleepTalkUsingMove:: attackanimation waitanimation - setbyte sB_ANIM_TURN, 0x0 - setbyte sB_ANIM_TARGETS_HIT, 0x0 + setbyte sB_ANIM_TURN, 0 + setbyte sB_ANIM_TARGETS_HIT, 0 jumptocalledmove TRUE BattleScript_EffectDestinyBond:: @@ -1406,9 +1407,9 @@ BattleScript_EffectTripleKick:: attackcanceler attackstring ppreduce - sethword sTRIPLE_KICK_POWER, 0x0 + sethword sTRIPLE_KICK_POWER, 0 initmultihitstring - setmultihit 0x3 + setmultihit 3 BattleScript_TripleKickLoop:: jumpifhasnohp BS_ATTACKER, BattleScript_TripleKickEnd jumpifhasnohp BS_TARGET, BattleScript_TripleKickNoMoreHits @@ -1418,7 +1419,7 @@ BattleScript_DoTripleKickAttack:: accuracycheck BattleScript_TripleKickNoMoreHits, ACC_CURR_MOVE movevaluescleanup addbyte sTRIPLE_KICK_POWER, 10 - addbyte sMULTIHIT_STRING + 4, 0x1 + addbyte sMULTIHIT_STRING + 4, 1 copyhword gDynamicBasePower, sTRIPLE_KICK_POWER critcalc damagecalc @@ -1442,14 +1443,14 @@ BattleScript_DoTripleKickAttack:: goto BattleScript_TripleKickPrintStrings BattleScript_TripleKickNoMoreHits:: pause B_WAIT_TIME_SHORT - jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickPrintStrings + jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0, BattleScript_TripleKickPrintStrings bicbyte gMoveResultFlags, MOVE_RESULT_MISSED BattleScript_TripleKickPrintStrings:: resultmessage waitmessage B_WAIT_TIME_LONG - jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0x0, BattleScript_TripleKickEnd + jumpifbyte CMP_EQUAL, sMULTIHIT_STRING + 4, 0, BattleScript_TripleKickEnd jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_TripleKickEnd - copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 + copyarray gBattleTextBuff1, sMULTIHIT_STRING, 6 printstring STRINGID_HITXTIMES waitmessage B_WAIT_TIME_LONG BattleScript_TripleKickEnd:: @@ -1510,7 +1511,7 @@ BattleScript_EffectCurse:: jumpifstat BS_ATTACKER, CMP_EQUAL, STAT_DEF, MAX_STAT_STAGE, BattleScript_ButItFailed BattleScript_CurseTrySpeed:: copybyte gBattlerTarget, gBattlerAttacker - setbyte sB_ANIM_TURN, 0x1 + setbyte sB_ANIM_TURN, 1 attackanimation waitanimation setstatchanger STAT_SPEED, 1, TRUE @@ -1540,7 +1541,7 @@ BattleScript_DoGhostCurse:: accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON cursetarget BattleScript_ButItFailed orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE - setbyte sB_ANIM_TURN, 0x0 + setbyte sB_ANIM_TURN, 0 attackanimation waitanimation healthbarupdate BS_ATTACKER @@ -1594,11 +1595,11 @@ BattleScript_EffectPerishSong:: waitanimation printstring STRINGID_FAINTINTHREE waitmessage B_WAIT_TIME_LONG - setbyte sBATTLER, 0x0 + setbyte sBATTLER, 0 BattleScript_PerishSongLoop:: jumpifability BS_SCRIPTING, ABILITY_SOUNDPROOF, BattleScript_PerishSongNotAffected BattleScript_PerishSongLoopIncrement:: - addbyte sBATTLER, 0x1 + addbyte sBATTLER, 1 jumpifbytenotequal sBATTLER, gBattlersCount, BattleScript_PerishSongLoop goto BattleScript_MoveEnd @@ -1720,10 +1721,10 @@ BattleScript_EffectBatonPass:: jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_ButItFailed attackanimation waitanimation - openpartyscreen 0x1, BattleScript_ButItFailed + openpartyscreen BS_ATTACKER, BattleScript_ButItFailed switchoutabilities BS_ATTACKER waitstate - switchhandleorder BS_ATTACKER, 0x2 + switchhandleorder BS_ATTACKER, 2 returntoball BS_ATTACKER getswitchedmondata BS_ATTACKER switchindataupdate BS_ATTACKER @@ -1949,8 +1950,8 @@ BattleScript_EffectTeleport:: ppreduce jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed getifcantrunfrombattle BS_ATTACKER - jumpifbyte CMP_EQUAL, gBattleCommunication, 0x1, BattleScript_ButItFailed - jumpifbyte CMP_EQUAL, gBattleCommunication, 0x2, BattleScript_PrintAbilityMadeIneffective + jumpifbyte CMP_EQUAL, gBattleCommunication, 1, BattleScript_ButItFailed + jumpifbyte CMP_EQUAL, gBattleCommunication, 2, BattleScript_PrintAbilityMadeIneffective attackanimation waitanimation printstring STRINGID_PKMNFLEDFROMBATTLE @@ -1964,13 +1965,13 @@ BattleScript_EffectBeatUp:: attackstring pause B_WAIT_TIME_SHORT ppreduce - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 BattleScript_BeatUpLoop:: movevaluescleanup trydobeatup BattleScript_BeatUpEnd, BattleScript_ButItFailed printstring STRINGID_PKMNATTACK critcalc - jumpifbyte CMP_NOT_EQUAL, gCritMultiplier, 0x2, BattleScript_BeatUpAttack + jumpifbyte CMP_NOT_EQUAL, gCritMultiplier, 2, BattleScript_BeatUpAttack manipulatedamage DMG_DOUBLED BattleScript_BeatUpAttack:: adjustnormaldamage @@ -2018,7 +2019,7 @@ BattleScript_FirstTurnSemiInvulnerable:: BattleScript_SecondTurnSemiInvulnerable:: attackcanceler setmoveeffect MOVE_EFFECT_CHARGING - setbyte sB_ANIM_TURN, 0x1 + setbyte sB_ANIM_TURN, 1 clearstatusfromeffect BS_ATTACKER orword gHitMarker, HITMARKER_NO_PPDEDUCT jumpifnotmove MOVE_BOUNCE, BattleScript_SemiInvulnerableTryHit @@ -2379,7 +2380,7 @@ BattleScript_EffectWish:: attackcanceler attackstring ppreduce - trywish 0x0, BattleScript_ButItFailed + trywish 0, BattleScript_ButItFailed attackanimation waitanimation goto BattleScript_MoveEnd @@ -2390,8 +2391,8 @@ BattleScript_EffectAssist:: assistattackselect BattleScript_ButItFailedPpReduce attackanimation waitanimation - setbyte sB_ANIM_TURN, 0x0 - setbyte sB_ANIM_TARGETS_HIT, 0x0 + setbyte sB_ANIM_TURN, 0 + setbyte sB_ANIM_TARGETS_HIT, 0 jumptocalledmove TRUE BattleScript_EffectIngrain:: @@ -2445,12 +2446,12 @@ BattleScript_EffectBrickBreak:: damagecalc typecalc adjustnormaldamage - jumpifbyte CMP_EQUAL, sB_ANIM_TURN, 0x0, BattleScript_BrickBreakAnim + jumpifbyte CMP_EQUAL, sB_ANIM_TURN, 0, BattleScript_BrickBreakAnim bicbyte gMoveResultFlags, MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE BattleScript_BrickBreakAnim:: attackanimation waitanimation - jumpifbyte CMP_LESS_THAN, sB_ANIM_TURN, 0x2, BattleScript_BrickBreakDoHit + jumpifbyte CMP_LESS_THAN, sB_ANIM_TURN, 2, BattleScript_BrickBreakDoHit printstring STRINGID_THEWALLSHATTERED waitmessage B_WAIT_TIME_LONG BattleScript_BrickBreakDoHit:: @@ -2592,7 +2593,7 @@ BattleScript_EffectTeeterDance:: attackcanceler attackstring ppreduce - setbyte gBattlerTarget, 0x0 + setbyte gBattlerTarget, 0 BattleScript_TeeterDanceLoop:: movevaluescleanup setmoveeffect MOVE_EFFECT_CONFUSION @@ -2611,7 +2612,7 @@ BattleScript_TeeterDanceLoop:: BattleScript_TeeterDanceDoMoveEndIncrement:: moveendto MOVEEND_NEXT_TARGET BattleScript_TeeterDanceLoopIncrement:: - addbyte gBattlerTarget, 0x1 + addbyte gBattlerTarget, 1 jumpifbytenotequal gBattlerTarget, gBattlersCount, BattleScript_TeeterDanceLoop end @@ -2714,7 +2715,7 @@ BattleScript_CosmicPowerDoMoveAnim:: attackanimation waitanimation setbyte sSTAT_ANIM_PLAYED, FALSE - playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0x0 + playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0 setstatchanger STAT_DEF, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerTrySpDef @@ -2743,7 +2744,7 @@ BattleScript_BulkUpDoMoveAnim:: attackanimation waitanimation setbyte sSTAT_ANIM_PLAYED, FALSE - playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0x0 + playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0 setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpTryDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpTryDef @@ -2768,7 +2769,7 @@ BattleScript_CalmMindDoMoveAnim:: attackanimation waitanimation setbyte sSTAT_ANIM_PLAYED, FALSE - playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0x0 + playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0 setstatchanger STAT_SPATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindTrySpDef @@ -2800,7 +2801,7 @@ BattleScript_DragonDanceDoMoveAnim:: attackanimation waitanimation setbyte sSTAT_ANIM_PLAYED, FALSE - playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0x0 + playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0 setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceTrySpeed jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceTrySpeed @@ -2843,40 +2844,40 @@ BattleScript_FaintTarget:: return BattleScript_GiveExp:: - setbyte sGIVEEXP_STATE, 0x0 + setbyte sGIVEEXP_STATE, 0 getexp BS_TARGET end2 BattleScript_HandleFaintedMon:: - atk24 BattleScript_82DA8F6 + atk24 BattleScript_HandleFaintedMonMultiple jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonTryChooseAnother printstring STRINGID_USENEXTPKMN - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 yesnobox - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0x0, BattleScript_FaintedMonTryChooseAnother + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0, BattleScript_FaintedMonTryChooseAnother jumpifplayerran BattleScript_FaintedMonEnd printstring STRINGID_CANTESCAPE2 BattleScript_FaintedMonTryChooseAnother:: - openpartyscreen 0x3, BattleScript_FaintedMonEnd - switchhandleorder BS_FAINTED, 0x2 + openpartyscreen BS_FAINTED, BattleScript_FaintedMonEnd + switchhandleorder BS_FAINTED, 2 jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_LINK, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_RECORDED_LINK, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonChooseAnother jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonChooseAnother - jumpifbyte CMP_EQUAL, sBATTLE_STYLE, 0x1, BattleScript_FaintedMonChooseAnother + jumpifbyte CMP_EQUAL, sBATTLE_STYLE, OPTIONS_BATTLE_STYLE_SET, BattleScript_FaintedMonChooseAnother jumpifcantswitch BS_PLAYER1, BattleScript_FaintedMonChooseAnother printstring STRINGID_ENEMYABOUTTOSWITCHPKMN - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 yesnobox - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0x1, BattleScript_FaintedMonChooseAnother + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_FaintedMonChooseAnother setatktoplayer0 - openpartyscreen 0x81, BattleScript_FaintedMonChooseAnother - switchhandleorder BS_ATTACKER, 0x2 - jumpifbyte CMP_EQUAL, gBattleCommunication, 0x6, BattleScript_FaintedMonChooseAnother + openpartyscreen BS_ATTACKER | PARTY_SCREEN_OPTIONAL, BattleScript_FaintedMonChooseAnother + switchhandleorder BS_ATTACKER, 2 + jumpifbyte CMP_EQUAL, gBattleCommunication, PARTY_SIZE, BattleScript_FaintedMonChooseAnother atknameinbuff1 resetintimidatetracebits BS_ATTACKER hpthresholds2 BS_ATTACKER @@ -2891,7 +2892,7 @@ BattleScript_FaintedMonTryChooseAnother:: hpthresholds BS_ATTACKER printstring STRINGID_SWITCHINMON hidepartystatussummary BS_ATTACKER - switchinanim BS_ATTACKER, 0x0 + switchinanim BS_ATTACKER, 0 waitstate switchineffects BS_ATTACKER resetsentmonsvalue @@ -2911,14 +2912,14 @@ BattleScript_FaintedMonChooseAnother:: BattleScript_FaintedMonEnd:: end2 -BattleScript_82DA8F6:: - openpartyscreen 0x5, BattleScript_82DA8FC -BattleScript_82DA8FC:: - switchhandleorder BS_FAINTED, 0x0 - openpartyscreen 0x6, BattleScript_82DA92C - switchhandleorder BS_FAINTED, 0x0 -BattleScript_82DA908:: - switchhandleorder BS_FAINTED, 0x3 +BattleScript_HandleFaintedMonMultiple:: + openpartyscreen BS_UNK_5, BattleScript_HandleFaintedMonMultipleStart +BattleScript_HandleFaintedMonMultipleStart:: + switchhandleorder BS_FAINTED, 0 + openpartyscreen BS_UNK_6, BattleScript_HandleFaintedMonMultipleEnd + switchhandleorder BS_FAINTED, 0 +BattleScript_HandleFaintedMonLoop:: + switchhandleorder BS_FAINTED, 3 drawpartystatussummary BS_FAINTED getswitchedmondata BS_FAINTED switchindataupdate BS_FAINTED @@ -2928,8 +2929,8 @@ BattleScript_82DA908:: switchinanim BS_FAINTED, FALSE waitstate switchineffects 5 - jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_82DA908 -BattleScript_82DA92C:: + jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_HandleFaintedMonLoop +BattleScript_HandleFaintedMonMultipleEnd:: end2 BattleScript_LocalTrainerBattleWon:: @@ -3105,10 +3106,10 @@ BattleScript_ActionSwitch:: printstring STRINGID_RETURNMON setbyte sDMG_MULTIPLIER, 2 jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_PursuitSwitchDmgSetMultihit - setmultihit 0x1 + setmultihit 1 goto BattleScript_PursuitSwitchDmgLoop BattleScript_PursuitSwitchDmgSetMultihit:: - setmultihit 0x2 + setmultihit 2 BattleScript_PursuitSwitchDmgLoop:: jumpifnopursuitswitchdmg BattleScript_DoSwitchOut swapattackerwithtarget @@ -3122,7 +3123,7 @@ BattleScript_DoSwitchOut:: returnatktoball waitstate drawpartystatussummary BS_ATTACKER - switchhandleorder BS_ATTACKER, 0x1 + switchhandleorder BS_ATTACKER, 1 getswitchedmondata BS_ATTACKER switchindataupdate BS_ATTACKER hpthresholds BS_ATTACKER @@ -3158,7 +3159,7 @@ BattleScript_PursuitDmgOnSwitchOut:: moveendfromto MOVEEND_ON_DAMAGE_ABILITIES, MOVEEND_CHOICE_MOVE getbattlerfainted BS_TARGET jumpifbyte CMP_EQUAL, gBattleCommunication, FALSE, BattleScript_PursuitDmgOnSwitchOutRet - setbyte sGIVEEXP_STATE, 0x0 + setbyte sGIVEEXP_STATE, 0 getexp BS_TARGET BattleScript_PursuitDmgOnSwitchOutRet: return @@ -3170,7 +3171,7 @@ BattleScript_Pausex20:: BattleScript_LevelUp:: fanfare MUS_LEVEL_UP printstring STRINGID_PKMNGREWTOLV - setbyte sLVLBOX_STATE, 0x0 + setbyte sLVLBOX_STATE, 0 drawlvlupbox handlelearnnewmove BattleScript_LearnedNewMove, BattleScript_LearnMoveReturn, TRUE goto BattleScript_AskToLearnMove @@ -3182,11 +3183,11 @@ BattleScript_AskToLearnMove:: printstring STRINGID_TRYTOLEARNMOVE2 printstring STRINGID_TRYTOLEARNMOVE3 waitstate - setbyte sLEARNMOVE_STATE, 0x0 + setbyte sLEARNMOVE_STATE, 0 yesnoboxlearnmove BattleScript_ForgotAndLearnedNewMove printstring STRINGID_STOPLEARNINGMOVE waitstate - setbyte sLEARNMOVE_STATE, 0x0 + setbyte sLEARNMOVE_STATE, 0 yesnoboxstoplearningmove BattleScript_AskToLearnMove printstring STRINGID_DIDNOTLEARNMOVE goto BattleScript_TryLearnMoveLoop @@ -3216,11 +3217,11 @@ BattleScript_DamagingWeatherContinues:: printfromtable gSandStormHailContinuesStringIds waitmessage B_WAIT_TIME_LONG playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 BattleScript_DamagingWeatherLoop:: - copyarraywithindex gBattlerAttacker, gBattlerByTurnOrder, gBattleCommunication, 0x1 + copyarraywithindex gBattlerAttacker, gBattlerByTurnOrder, gBattleCommunication, 1 weatherdamage - jumpifword CMP_EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement + jumpifword CMP_EQUAL, gBattleMoveDamage, 0, BattleScript_DamagingWeatherLoopIncrement printfromtable gSandStormHailDmgStringIds waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE @@ -3232,7 +3233,7 @@ BattleScript_DamagingWeatherLoop:: atk24 BattleScript_DamagingWeatherLoopIncrement BattleScript_DamagingWeatherLoopIncrement:: jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_DamagingWeatherContinuesEnd - addbyte gBattleCommunication, 0x1 + addbyte gBattleCommunication, 1 jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop BattleScript_DamagingWeatherContinuesEnd:: bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE @@ -3315,7 +3316,7 @@ BattleScript_BideAttack:: bicbyte gMoveResultFlags, MOVE_RESULT_SUPER_EFFECTIVE | MOVE_RESULT_NOT_VERY_EFFECTIVE copyword gBattleMoveDamage, sBIDE_DMG adjustsetdamage - setbyte sB_ANIM_TURN, 0x1 + setbyte sB_ANIM_TURN, 1 attackanimation waitanimation effectivenesssound @@ -3410,7 +3411,7 @@ BattleScript_SpikesOnAttacker:: return BattleScript_SpikesOnAttackerFainted:: - setbyte sGIVEEXP_STATE, 0x0 + setbyte sGIVEEXP_STATE, 0 getexp BS_ATTACKER moveendall goto BattleScript_HandleFaintedMon @@ -3425,7 +3426,7 @@ BattleScript_SpikesOnTarget:: return BattleScript_SpikesOnTargetFainted:: - setbyte sGIVEEXP_STATE, 0x0 + setbyte sGIVEEXP_STATE, 0 getexp BS_TARGET moveendall goto BattleScript_HandleFaintedMon @@ -3440,7 +3441,7 @@ BattleScript_SpikesOnFaintedBattler:: return BattleScript_SpikesOnFaintedBattlerFainted:: - setbyte sGIVEEXP_STATE, 0x0 + setbyte sGIVEEXP_STATE, 0 getexp BS_FAINTED moveendall goto BattleScript_HandleFaintedMon @@ -3472,7 +3473,7 @@ BattleScript_AllStatsUp:: jumpifstat BS_ATTACKER, CMP_EQUAL, STAT_SPDEF, MAX_STAT_STAGE, BattleScript_AllStatsUpRet BattleScript_AllStatsUpAtk:: setbyte sSTAT_ANIM_PLAYED, FALSE - playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0x0 + playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0 setstatchanger STAT_ATK, 1, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpDef printfromtable gStatUpStringIds @@ -3602,7 +3603,7 @@ BattleScript_SelectingNotAllowedMoveTauntInPalace:: goto BattleScript_SelectingUnusableMoveInPalace BattleScript_WishComesTrue:: - trywish 0x1, BattleScript_WishButFullHp + trywish 1, BattleScript_WishButFullHp playanimation BS_TARGET, B_ANIM_WISH_HEAL, NULL printstring STRINGID_PKMNWISHCAMETRUE waitmessage B_WAIT_TIME_LONG @@ -4012,10 +4013,10 @@ BattleScript_ShedSkinActivates:: end3 BattleScript_WeatherFormChanges:: - setbyte sBATTLER, 0x0 + setbyte sBATTLER, 0 BattleScript_WeatherFormChangesLoop:: trycastformdatachange - addbyte sBATTLER, 0x1 + addbyte sBATTLER, 1 jumpifbytenotequal sBATTLER, gBattlersCount, BattleScript_WeatherFormChangesLoop return @@ -4037,7 +4038,7 @@ BattleScript_IntimidateActivatesEnd3:: BattleScript_PauseIntimidateActivates: pause B_WAIT_TIME_SHORT BattleScript_IntimidateActivates:: - setbyte gBattlerTarget, 0x0 + setbyte gBattlerTarget, 0 setstatchanger STAT_ATK, 1, TRUE BattleScript_IntimidateActivatesLoop: trygetintimidatetarget BattleScript_IntimidateActivatesReturn @@ -4052,7 +4053,7 @@ BattleScript_IntimidateActivatesLoop: printstring STRINGID_PKMNCUTSATTACKWITH waitmessage B_WAIT_TIME_LONG BattleScript_IntimidateActivatesLoopIncrement: - addbyte gBattlerTarget, 0x1 + addbyte gBattlerTarget, 1 goto BattleScript_IntimidateActivatesLoop BattleScript_IntimidateActivatesReturn: return @@ -4466,18 +4467,19 @@ BattleScript_ArenaTurnBeginning:: pause 8 playse SE_ARENA_TIMEUP1 various14 BS_ATTACKER - arenajudmengtstring 8 - arenawaitmessage 8 + arenajudgmentstring B_MSG_REF_COMMENCE_BATTLE + arenawaitmessage B_MSG_REF_COMMENCE_BATTLE pause B_WAIT_TIME_LONG various15 BS_ATTACKER volumeup end2 - -BattleScript_82DB8E0:: @ Unused battlescript + +@ Unused +BattleScript_ArenaNothingDecided:: playse SE_DING_DONG various14 BS_ATTACKER - arenajudmengtstring BS_TARGET - arenawaitmessage BS_TARGET + arenajudgmentstring B_MSG_REF_NOTHING_IS_DECIDED + arenawaitmessage B_MSG_REF_NOTHING_IS_DECIDED pause B_WAIT_TIME_LONG various15 BS_ATTACKER end2 @@ -4493,26 +4495,26 @@ BattleScript_ArenaDoJudgment:: playse SE_ARENA_TIMEUP1 pause B_WAIT_TIME_LONG various14 BS_ATTACKER - arenajudmengtstring 1 - arenawaitmessage 1 + arenajudgmentstring B_MSG_REF_THATS_IT + arenawaitmessage B_MSG_REF_THATS_IT pause B_WAIT_TIME_LONG - setbyte gBattleCommunication, 0x0 + setbyte gBattleCommunication, 0 arenajudgmentwindow pause B_WAIT_TIME_LONG arenajudgmentwindow - arenajudmengtstring 2 - arenawaitmessage 2 + arenajudgmentstring B_MSG_REF_JUDGE_MIND + arenawaitmessage B_MSG_REF_JUDGE_MIND arenajudgmentwindow - arenajudmengtstring 3 - arenawaitmessage 3 + arenajudgmentstring B_MSG_REF_JUDGE_SKILL + arenawaitmessage B_MSG_REF_JUDGE_SKILL arenajudgmentwindow - arenajudmengtstring 4 - arenawaitmessage 4 + arenajudgmentstring B_MSG_REF_JUDGE_BODY + arenawaitmessage B_MSG_REF_JUDGE_BODY arenajudgmentwindow - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0x3, BattleScript_ArenaJudgmentPlayerLoses - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0x4, BattleScript_ArenaJudgmentDraw - arenajudmengtstring 5 - arenawaitmessage 5 + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 3, BattleScript_ArenaJudgmentPlayerLoses + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 4, BattleScript_ArenaJudgmentDraw + arenajudgmentstring B_MSG_REF_PLAYER_WON + arenawaitmessage B_MSG_REF_PLAYER_WON arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_DEFEATEDOPPONENTBYREFEREE @@ -4525,8 +4527,8 @@ BattleScript_ArenaDoJudgment:: end2 BattleScript_ArenaJudgmentPlayerLoses: - arenajudmengtstring 6 - arenawaitmessage 6 + arenajudgmentstring B_MSG_REF_OPPONENT_WON + arenawaitmessage B_MSG_REF_OPPONENT_WON arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_LOSTTOOPPONENTBYREFEREE @@ -4539,8 +4541,8 @@ BattleScript_ArenaJudgmentPlayerLoses: end2 BattleScript_ArenaJudgmentDraw: - arenajudmengtstring 7 - arenawaitmessage 7 + arenajudgmentstring B_MSG_REF_DRAW + arenawaitmessage B_MSG_REF_DRAW arenajudgmentwindow various15 BS_ATTACKER printstring STRINGID_TIEDOPPONENTBYREFEREE diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 4b8ca0d874fb..378819a944a1 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -95,7 +95,7 @@ BattleScript_ShakeBallThrow:: printfromtable gBallEscapeStringIds waitmessage B_WAIT_TIME_LONG jumpifword CMP_NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_SAFARI, BattleScript_ShakeBallThrowEnd - jumpifbyte CMP_NOT_EQUAL, gNumSafariBalls, 0x0, BattleScript_ShakeBallThrowEnd + jumpifbyte CMP_NOT_EQUAL, gNumSafariBalls, 0, BattleScript_ShakeBallThrowEnd printstring STRINGID_OUTOFSAFARIBALLS waitmessage B_WAIT_TIME_LONG setbyte gBattleOutcome, B_OUTCOME_NO_SAFARI_BALLS @@ -111,8 +111,7 @@ BattleScript_TrainerBallBlock:: finishaction BattleScript_PlayerUsesItem:: - setbyte sMOVEEND_STATE, 0xF - moveend 0x1, 0x0 + moveendcase MOVEEND_MIRROR_MOVE end BattleScript_OpponentUsesHealItem:: @@ -128,8 +127,7 @@ BattleScript_OpponentUsesHealItem:: printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER - setbyte sMOVEEND_STATE, 0xF - moveend 0x1, 0x0 + moveendcase MOVEEND_MIRROR_MOVE finishaction BattleScript_OpponentUsesStatusCureItem:: @@ -142,8 +140,7 @@ BattleScript_OpponentUsesStatusCureItem:: printfromtable gTrainerItemCuredStatusStringIds waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER - setbyte sMOVEEND_STATE, 0xF - moveend 0x1, 0x0 + moveendcase MOVEEND_MIRROR_MOVE finishaction BattleScript_OpponentUsesXItem:: @@ -155,8 +152,7 @@ BattleScript_OpponentUsesXItem:: useitemonopponent printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG - setbyte sMOVEEND_STATE, 0xF - moveend 0x1, 0x0 + moveendcase MOVEEND_MIRROR_MOVE finishaction BattleScript_OpponentUsesGuardSpecs:: @@ -168,8 +164,7 @@ BattleScript_OpponentUsesGuardSpecs:: useitemonopponent printfromtable gMistUsedStringIds waitmessage B_WAIT_TIME_LONG - setbyte sMOVEEND_STATE, 0xF - moveend 0x1, 0x0 + moveendcase MOVEEND_MIRROR_MOVE finishaction BattleScript_RunByUsingItem:: diff --git a/include/battle_controllers.h b/include/battle_controllers.h index da76ab0c66f8..34e916b0f21c 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -156,7 +156,7 @@ enum CONTROLLER_CLEARUNKFLAG, CONTROLLER_TOGGLEUNKFLAG, CONTROLLER_HITANIMATION, - CONTROLLER_42, + CONTROLLER_CANTSWITCH, CONTROLLER_PLAYSE, CONTROLLER_PLAYFANFAREORBGM, CONTROLLER_FAINTINGCRY, @@ -227,7 +227,7 @@ void BtlController_EmitSetUnkVar(u8 bufferId, u8 b); // unused void BtlController_EmitClearUnkFlag(u8 bufferId); // unused void BtlController_EmitToggleUnkFlag(u8 bufferId); // unused void BtlController_EmitHitAnimation(u8 bufferId); -void BtlController_EmitCmd42(u8 bufferId); +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); diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index cef0b184dac5..9794589af2fe 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -39,8 +39,10 @@ #define BS_ATTACKER 1 #define BS_EFFECT_BATTLER 2 #define BS_FAINTED 3 -#define BS_BATTLER_0 7 #define BS_ATTACKER_WITH_PARTNER 4 // for Cmd_updatestatusicon +#define BS_UNK_5 5 +#define BS_UNK_6 6 +#define BS_BATTLER_0 7 #define BS_ATTACKER_SIDE 8 // for Cmd_jumpifability #define BS_NOT_ATTACKER_SIDE 9 // for Cmd_jumpifability #define BS_SCRIPTING 10 @@ -55,12 +57,12 @@ #define ACC_CURR_MOVE 0 // compare operands -#define CMP_EQUAL 0x0 -#define CMP_NOT_EQUAL 0x1 -#define CMP_GREATER_THAN 0x2 -#define CMP_LESS_THAN 0x3 -#define CMP_COMMON_BITS 0x4 -#define CMP_NO_COMMON_BITS 0x5 +#define CMP_EQUAL 0 +#define CMP_NOT_EQUAL 1 +#define CMP_GREATER_THAN 2 +#define CMP_LESS_THAN 3 +#define CMP_COMMON_BITS 4 +#define CMP_NO_COMMON_BITS 5 // Cmd_various #define VARIOUS_CANCEL_MULTI_TURN_MOVES 0 @@ -93,27 +95,29 @@ #define DMG_DOUBLED 2 // Cmd_jumpifcantswitch -#define SWITCH_IGNORE_ESCAPE_PREVENTION 0x80 +#define SWITCH_IGNORE_ESCAPE_PREVENTION (1 << 7) // Cmd_statbuffchange -#define STAT_BUFF_ALLOW_PTR 0x1 // If set, allow use of jumpptr. Set in every use of statbuffchange -#define STAT_BUFF_NOT_PROTECT_AFFECTED 0x20 +#define STAT_BUFF_ALLOW_PTR (1 << 0) // If set, allow use of jumpptr. Set in every use of statbuffchange +#define STAT_BUFF_NOT_PROTECT_AFFECTED (1 << 5) // stat change flags for Cmd_playstatchangeanimation -#define STAT_CHANGE_NEGATIVE 0x1 -#define STAT_CHANGE_BY_TWO 0x2 -#define STAT_CHANGE_MULTIPLE_STATS 0x4 -#define STAT_CHANGE_CANT_PREVENT 0x8 +#define STAT_CHANGE_NEGATIVE (1 << 0) +#define STAT_CHANGE_BY_TWO (1 << 1) +#define STAT_CHANGE_MULTIPLE_STATS (1 << 2) +#define STAT_CHANGE_CANT_PREVENT (1 << 3) // stat flags for Cmd_playstatchangeanimation -#define BIT_HP 0x1 -#define BIT_ATK 0x2 -#define BIT_DEF 0x4 -#define BIT_SPEED 0x8 -#define BIT_SPATK 0x10 -#define BIT_SPDEF 0x20 -#define BIT_ACC 0x40 -#define BIT_EVASION 0x80 +#define BIT_HP (1 << 0) +#define BIT_ATK (1 << 1) +#define BIT_DEF (1 << 2) +#define BIT_SPEED (1 << 3) +#define BIT_SPATK (1 << 4) +#define BIT_SPDEF (1 << 5) +#define BIT_ACC (1 << 6) +#define BIT_EVASION (1 << 7) + +#define PARTY_SCREEN_OPTIONAL (1 << 7) // Flag for first argument to openpartyscreen // cases for Cmd_moveend #define MOVEEND_RAGE 0 diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index f1c589fee8ea..f22541272248 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -421,12 +421,6 @@ #define B_MSG_LEECH_SEED_DRAIN 3 #define B_MSG_LEECH_SEED_OOZE 4 -// gBattlePalaceFlavorTextTable -#define B_MSG_GLINT_IN_EYE 0 -#define B_MSG_GETTING_IN_POS 1 -#define B_MSG_GROWL_DEEPLY 2 -#define B_MSG_EAGER_FOR_MORE 3 - // gFirstTurnOfTwoStringIds #define B_MSG_TURN1_RAZOR_WIND 0 #define B_MSG_TURN1_SOLAR_BEAM 1 @@ -586,4 +580,21 @@ #define B_MSG_DEFROSTED 0 #define B_MSG_DEFROSTED_BY_MOVE 1 +// gBattlePalaceFlavorTextTable +#define B_MSG_GLINT_IN_EYE 0 +#define B_MSG_GETTING_IN_POS 1 +#define B_MSG_GROWL_DEEPLY 2 +#define B_MSG_EAGER_FOR_MORE 3 + +// gRefereeStringsTable +#define B_MSG_REF_NOTHING_IS_DECIDED 0 +#define B_MSG_REF_THATS_IT 1 +#define B_MSG_REF_JUDGE_MIND 2 +#define B_MSG_REF_JUDGE_SKILL 3 +#define B_MSG_REF_JUDGE_BODY 4 +#define B_MSG_REF_PLAYER_WON 5 +#define B_MSG_REF_OPPONENT_WON 6 +#define B_MSG_REF_DRAW 7 +#define B_MSG_REF_COMMENCE_BATTLE 8 + #endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index dd44bc91b968..179ae18e845e 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -74,7 +74,7 @@ static void LinkOpponentHandleSetUnkVar(void); static void LinkOpponentHandleClearUnkFlag(void); static void LinkOpponentHandleToggleUnkFlag(void); static void LinkOpponentHandleHitAnimation(void); -static void LinkOpponentHandleCmd42(void); +static void LinkOpponentHandleCantSwitch(void); static void LinkOpponentHandlePlaySE(void); static void LinkOpponentHandlePlayFanfareOrBGM(void); static void LinkOpponentHandleFaintingCry(void); @@ -146,7 +146,7 @@ static void (*const sLinkOpponentBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = LinkOpponentHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = LinkOpponentHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = LinkOpponentHandleHitAnimation, - [CONTROLLER_42] = LinkOpponentHandleCmd42, + [CONTROLLER_CANTSWITCH] = LinkOpponentHandleCantSwitch, [CONTROLLER_PLAYSE] = LinkOpponentHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = LinkOpponentHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = LinkOpponentHandleFaintingCry, @@ -1647,7 +1647,7 @@ static void LinkOpponentHandleHitAnimation(void) } } -static void LinkOpponentHandleCmd42(void) +static void LinkOpponentHandleCantSwitch(void) { LinkOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 3d6cd7c3b3f1..2bb1cd914d9a 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -72,7 +72,7 @@ static void LinkPartnerHandleSetUnkVar(void); static void LinkPartnerHandleClearUnkFlag(void); static void LinkPartnerHandleToggleUnkFlag(void); static void LinkPartnerHandleHitAnimation(void); -static void LinkPartnerHandleCmd42(void); +static void LinkPartnerHandleCantSwitch(void); static void LinkPartnerHandlePlaySE(void); static void LinkPartnerHandlePlayFanfareOrBGM(void); static void LinkPartnerHandleFaintingCry(void); @@ -143,7 +143,7 @@ static void (*const sLinkPartnerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = LinkPartnerHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = LinkPartnerHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = LinkPartnerHandleHitAnimation, - [CONTROLLER_42] = LinkPartnerHandleCmd42, + [CONTROLLER_CANTSWITCH] = LinkPartnerHandleCantSwitch, [CONTROLLER_PLAYSE] = LinkPartnerHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = LinkPartnerHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = LinkPartnerHandleFaintingCry, @@ -1477,7 +1477,7 @@ static void LinkPartnerHandleHitAnimation(void) } } -static void LinkPartnerHandleCmd42(void) +static void LinkPartnerHandleCantSwitch(void) { LinkPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 69f729ee0bc2..2c181c14f20d 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -79,7 +79,7 @@ static void OpponentHandleSetUnkVar(void); static void OpponentHandleClearUnkFlag(void); static void OpponentHandleToggleUnkFlag(void); static void OpponentHandleHitAnimation(void); -static void OpponentHandleCmd42(void); +static void OpponentHandleCantSwitch(void); static void OpponentHandlePlaySE(void); static void OpponentHandlePlayFanfareOrBGM(void); static void OpponentHandleFaintingCry(void); @@ -151,7 +151,7 @@ static void (*const sOpponentBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = OpponentHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = OpponentHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = OpponentHandleHitAnimation, - [CONTROLLER_42] = OpponentHandleCmd42, + [CONTROLLER_CANTSWITCH] = OpponentHandleCantSwitch, [CONTROLLER_PLAYSE] = OpponentHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = OpponentHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = OpponentHandleFaintingCry, @@ -1813,7 +1813,7 @@ static void OpponentHandleHitAnimation(void) } } -static void OpponentHandleCmd42(void) +static void OpponentHandleCantSwitch(void) { OpponentBufferExecCompleted(); } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 7b5e55adb9fb..e7801d0e49c9 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -80,7 +80,7 @@ static void PlayerHandleSetUnkVar(void); static void PlayerHandleClearUnkFlag(void); static void PlayerHandleToggleUnkFlag(void); static void PlayerHandleHitAnimation(void); -static void PlayerHandleCmd42(void); +static void PlayerHandleCantSwitch(void); static void PlayerHandlePlaySE(void); static void PlayerHandlePlayFanfareOrBGM(void); static void PlayerHandleFaintingCry(void); @@ -167,7 +167,7 @@ static void (*const sPlayerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = PlayerHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = PlayerHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = PlayerHandleHitAnimation, - [CONTROLLER_42] = PlayerHandleCmd42, + [CONTROLLER_CANTSWITCH] = PlayerHandleCantSwitch, [CONTROLLER_PLAYSE] = PlayerHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = PlayerHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = PlayerHandleFaintingCry, @@ -2890,7 +2890,7 @@ static void PlayerHandleHitAnimation(void) } } -static void PlayerHandleCmd42(void) +static void PlayerHandleCantSwitch(void) { PlayerBufferExecCompleted(); } diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 251542a48652..cc433a9b20e3 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -70,7 +70,7 @@ static void PlayerPartnerHandleSetUnkVar(void); static void PlayerPartnerHandleClearUnkFlag(void); static void PlayerPartnerHandleToggleUnkFlag(void); static void PlayerPartnerHandleHitAnimation(void); -static void PlayerPartnerHandleCmd42(void); +static void PlayerPartnerHandleCantSwitch(void); static void PlayerPartnerHandlePlaySE(void); static void PlayerPartnerHandlePlayFanfareOrBGM(void); static void PlayerPartnerHandleFaintingCry(void); @@ -146,7 +146,7 @@ static void (*const sPlayerPartnerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = PlayerPartnerHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = PlayerPartnerHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = PlayerPartnerHandleHitAnimation, - [CONTROLLER_42] = PlayerPartnerHandleCmd42, + [CONTROLLER_CANTSWITCH] = PlayerPartnerHandleCantSwitch, [CONTROLLER_PLAYSE] = PlayerPartnerHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = PlayerPartnerHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = PlayerPartnerHandleFaintingCry, @@ -1727,7 +1727,7 @@ static void PlayerPartnerHandleHitAnimation(void) } } -static void PlayerPartnerHandleCmd42(void) +static void PlayerPartnerHandleCantSwitch(void) { PlayerPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 26d93ad28b93..663d71ec7584 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -74,7 +74,7 @@ static void RecordedOpponentHandleSetUnkVar(void); static void RecordedOpponentHandleClearUnkFlag(void); static void RecordedOpponentHandleToggleUnkFlag(void); static void RecordedOpponentHandleHitAnimation(void); -static void RecordedOpponentHandleCmd42(void); +static void RecordedOpponentHandleCantSwitch(void); static void RecordedOpponentHandlePlaySE(void); static void RecordedOpponentHandlePlayFanfareOrBGM(void); static void RecordedOpponentHandleFaintingCry(void); @@ -146,7 +146,7 @@ static void (*const sRecordedOpponentBufferCommands[CONTROLLER_CMDS_COUNT])(void [CONTROLLER_CLEARUNKFLAG] = RecordedOpponentHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = RecordedOpponentHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = RecordedOpponentHandleHitAnimation, - [CONTROLLER_42] = RecordedOpponentHandleCmd42, + [CONTROLLER_CANTSWITCH] = RecordedOpponentHandleCantSwitch, [CONTROLLER_PLAYSE] = RecordedOpponentHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = RecordedOpponentHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = RecordedOpponentHandleFaintingCry, @@ -1587,7 +1587,7 @@ static void RecordedOpponentHandleHitAnimation(void) } } -static void RecordedOpponentHandleCmd42(void) +static void RecordedOpponentHandleCantSwitch(void) { RecordedOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 63a04ac405f5..aa4154a3f980 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -70,7 +70,7 @@ static void RecordedPlayerHandleSetUnkVar(void); static void RecordedPlayerHandleClearUnkFlag(void); static void RecordedPlayerHandleToggleUnkFlag(void); static void RecordedPlayerHandleHitAnimation(void); -static void RecordedPlayerHandleCmd42(void); +static void RecordedPlayerHandleCantSwitch(void); static void RecordedPlayerHandlePlaySE(void); static void RecordedPlayerHandlePlayFanfareOrBGM(void); static void RecordedPlayerHandleFaintingCry(void); @@ -141,7 +141,7 @@ static void (*const sRecordedPlayerBufferCommands[CONTROLLER_CMDS_COUNT])(void) [CONTROLLER_CLEARUNKFLAG] = RecordedPlayerHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = RecordedPlayerHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = RecordedPlayerHandleHitAnimation, - [CONTROLLER_42] = RecordedPlayerHandleCmd42, + [CONTROLLER_CANTSWITCH] = RecordedPlayerHandleCantSwitch, [CONTROLLER_PLAYSE] = RecordedPlayerHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = RecordedPlayerHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = RecordedPlayerHandleFaintingCry, @@ -1610,7 +1610,7 @@ static void RecordedPlayerHandleHitAnimation(void) } } -static void RecordedPlayerHandleCmd42(void) +static void RecordedPlayerHandleCantSwitch(void) { RecordedPlayerBufferExecCompleted(); } diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 22c01586d187..0fdf32fb642a 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -67,7 +67,7 @@ static void SafariHandleSetUnkVar(void); static void SafariHandleClearUnkFlag(void); static void SafariHandleToggleUnkFlag(void); static void SafariHandleHitAnimation(void); -static void SafariHandleCmd42(void); +static void SafariHandleCantSwitch(void); static void SafariHandlePlaySE(void); static void SafariHandlePlayFanfareOrBGM(void); static void SafariHandleFaintingCry(void); @@ -131,7 +131,7 @@ static void (*const sSafariBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = SafariHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = SafariHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = SafariHandleHitAnimation, - [CONTROLLER_42] = SafariHandleCmd42, + [CONTROLLER_CANTSWITCH] = SafariHandleCantSwitch, [CONTROLLER_PLAYSE] = SafariHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = SafariHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = SafariHandleFaintingCry, @@ -580,7 +580,7 @@ static void SafariHandleHitAnimation(void) SafariBufferExecCompleted(); } -static void SafariHandleCmd42(void) +static void SafariHandleCantSwitch(void) { SafariBufferExecCompleted(); } diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 8b3863c8581d..8b490a5bfb51 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -75,7 +75,7 @@ static void WallyHandleSetUnkVar(void); static void WallyHandleClearUnkFlag(void); static void WallyHandleToggleUnkFlag(void); static void WallyHandleHitAnimation(void); -static void WallyHandleCmd42(void); +static void WallyHandleCantSwitch(void); static void WallyHandlePlaySE(void); static void WallyHandlePlayFanfareOrBGM(void); static void WallyHandleFaintingCry(void); @@ -144,7 +144,7 @@ static void (*const sWallyBufferCommands[CONTROLLER_CMDS_COUNT])(void) = [CONTROLLER_CLEARUNKFLAG] = WallyHandleClearUnkFlag, [CONTROLLER_TOGGLEUNKFLAG] = WallyHandleToggleUnkFlag, [CONTROLLER_HITANIMATION] = WallyHandleHitAnimation, - [CONTROLLER_42] = WallyHandleCmd42, + [CONTROLLER_CANTSWITCH] = WallyHandleCantSwitch, [CONTROLLER_PLAYSE] = WallyHandlePlaySE, [CONTROLLER_PLAYFANFAREORBGM] = WallyHandlePlayFanfareOrBGM, [CONTROLLER_FAINTINGCRY] = WallyHandleFaintingCry, @@ -1385,7 +1385,7 @@ static void WallyHandleHitAnimation(void) } } -static void WallyHandleCmd42(void) +static void WallyHandleCantSwitch(void) { WallyBufferExecCompleted(); } diff --git a/src/battle_controllers.c b/src/battle_controllers.c index a9f3ab610e1e..0f32345791ce 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -1385,12 +1385,12 @@ void BtlController_EmitHitAnimation(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitCmd42(u8 bufferId) +void BtlController_EmitCantSwitch(u8 bufferId) { - sBattleBuffersTransferData[0] = CONTROLLER_42; - sBattleBuffersTransferData[1] = CONTROLLER_42; - sBattleBuffersTransferData[2] = CONTROLLER_42; - sBattleBuffersTransferData[3] = CONTROLLER_42; + sBattleBuffersTransferData[0] = CONTROLLER_CANTSWITCH; + sBattleBuffersTransferData[1] = CONTROLLER_CANTSWITCH; + sBattleBuffersTransferData[2] = CONTROLLER_CANTSWITCH; + sBattleBuffersTransferData[3] = CONTROLLER_CANTSWITCH; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } diff --git a/src/battle_message.c b/src/battle_message.c index 4f219c06399f..7472e2e89717 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1401,9 +1401,9 @@ static const u8 sText_RefThatsIt[] = _("REFEREE: That's it! We will now go to\nj static const u8 sText_RefJudgeMind[] = _("REFEREE: Judging category 1, Mind!\nThe POKéMON showing the most guts!\p"); static const u8 sText_RefJudgeSkill[] = _("REFEREE: Judging category 2, Skill!\nThe POKéMON using moves the best!\p"); static const u8 sText_RefJudgeBody[] = _("REFEREE: Judging category 3, Body!\nThe POKéMON with the most vitality!\p"); -static const u8 sText_RefJudgement1[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_PLAYER_NAME}'s {B_PLAYER_MON1_NAME}!\p"); -static const u8 sText_RefJudgement2[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_TRAINER1_NAME}'s {B_OPPONENT_MON1_NAME}!\p"); -static const u8 sText_RefJudgement3[] = _("REFEREE: Judgment: 3 to 3!\nWe have a draw!\p"); +static const u8 sText_RefPlayerWon[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_PLAYER_NAME}'s {B_PLAYER_MON1_NAME}!\p"); +static const u8 sText_RefOpponentWon[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_TRAINER1_NAME}'s {B_OPPONENT_MON1_NAME}!\p"); +static const u8 sText_RefDraw[] = _("REFEREE: Judgment: 3 to 3!\nWe have a draw!\p"); static const u8 sText_DefeatedOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} defeated the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE's decision!"); static const u8 sText_LostToOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} lost to the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE's decision!"); static const u8 sText_TiedOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} tied the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE's decision!"); @@ -1411,15 +1411,15 @@ static const u8 sText_RefCommenceBattle[] = _("REFEREE: {B_PLAYER_MON1_NAME} VS const u8 * const gRefereeStringsTable[] = { - sText_RefIfNothingIsDecided, - sText_RefThatsIt, - sText_RefJudgeMind, - sText_RefJudgeSkill, - sText_RefJudgeBody, - sText_RefJudgement1, - sText_RefJudgement2, - sText_RefJudgement3, - sText_RefCommenceBattle, + [B_MSG_REF_NOTHING_IS_DECIDED] = sText_RefIfNothingIsDecided, + [B_MSG_REF_THATS_IT] = sText_RefThatsIt, + [B_MSG_REF_JUDGE_MIND] = sText_RefJudgeMind, + [B_MSG_REF_JUDGE_SKILL] = sText_RefJudgeSkill, + [B_MSG_REF_JUDGE_BODY] = sText_RefJudgeBody, + [B_MSG_REF_PLAYER_WON] = sText_RefPlayerWon, + [B_MSG_REF_OPPONENT_WON] = sText_RefOpponentWon, + [B_MSG_REF_DRAW] = sText_RefDraw, + [B_MSG_REF_COMMENCE_BATTLE] = sText_RefCommenceBattle, }; static const u8 sText_QuestionForfeitMatch[] = _("Would you like to forfeit the match\nand quit now?"); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 6cd7debda8ac..3962c43698b9 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -4801,7 +4801,9 @@ static void Cmd_jumpifcantswitch(void) } } -static void sub_804CF10(u8 slotId) +// Opens the party screen to choose a new Pokémon to send out +// slotId is the Pokémon to replace +static void ChooseMonToSendOut(u8 slotId) { *(gBattleStruct->field_58 + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; @@ -4822,7 +4824,7 @@ static void Cmd_openpartyscreen(void) flags = 0; jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2); - if (gBattlescriptCurrInstr[1] == 5) + if (gBattlescriptCurrInstr[1] == BS_UNK_5) { if ((gBattleTypeFlags & (BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI)) != BATTLE_TYPE_DOUBLE) { @@ -4830,7 +4832,7 @@ static void Cmd_openpartyscreen(void) { if (gHitMarker & HITMARKER_FAINTED(gActiveBattler)) { - if (HasNoMonsToSwitch(gActiveBattler, 6, 6)) + if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); @@ -4839,7 +4841,7 @@ static void Cmd_openpartyscreen(void) } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(PARTY_SIZE); + ChooseMonToSendOut(PARTY_SIZE); gSpecialStatuses[gActiveBattler].flag40 = 1; } } @@ -4859,16 +4861,16 @@ static void Cmd_openpartyscreen(void) if (gBitTable[0] & hitmarkerFaintBits) { gActiveBattler = 0; - if (HasNoMonsToSwitch(0, 6, 6)) + if (HasNoMonsToSwitch(0, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[2]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[2]); gSpecialStatuses[gActiveBattler].flag40 = 1; } else @@ -4881,16 +4883,16 @@ static void Cmd_openpartyscreen(void) if (gBitTable[2] & hitmarkerFaintBits && !(gBitTable[0] & hitmarkerFaintBits)) { gActiveBattler = 2; - if (HasNoMonsToSwitch(2, 6, 6)) + if (HasNoMonsToSwitch(2, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[0]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); gSpecialStatuses[gActiveBattler].flag40 = 1; } else if (!(flags & 1)) @@ -4902,16 +4904,16 @@ static void Cmd_openpartyscreen(void) if (gBitTable[1] & hitmarkerFaintBits) { gActiveBattler = 1; - if (HasNoMonsToSwitch(1, 6, 6)) + if (HasNoMonsToSwitch(1, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[3]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[3]); gSpecialStatuses[gActiveBattler].flag40 = 1; } else @@ -4924,16 +4926,16 @@ static void Cmd_openpartyscreen(void) if (gBitTable[3] & hitmarkerFaintBits && !(gBitTable[1] & hitmarkerFaintBits)) { gActiveBattler = 3; - if (HasNoMonsToSwitch(3, 6, 6)) + if (HasNoMonsToSwitch(3, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[1]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); gSpecialStatuses[gActiveBattler].flag40 = 1; } else if (!(flags & 2)) @@ -4977,7 +4979,7 @@ static void Cmd_openpartyscreen(void) } gBattlescriptCurrInstr += 6; } - else if (gBattlescriptCurrInstr[1] == 6) + else if (gBattlescriptCurrInstr[1] == BS_UNK_6) { if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { @@ -4987,32 +4989,32 @@ static void Cmd_openpartyscreen(void) if (gBitTable[2] & hitmarkerFaintBits && gBitTable[0] & hitmarkerFaintBits) { gActiveBattler = 2; - if (HasNoMonsToSwitch(2, gBattleBufferB[0][1], 6)) + if (HasNoMonsToSwitch(2, gBattleBufferB[0][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[0]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); gSpecialStatuses[gActiveBattler].flag40 = 1; } } if (gBitTable[3] & hitmarkerFaintBits && hitmarkerFaintBits & gBitTable[1]) { gActiveBattler = 3; - if (HasNoMonsToSwitch(3, gBattleBufferB[1][1], 6)) + if (HasNoMonsToSwitch(3, gBattleBufferB[1][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); - BtlController_EmitCmd42(0); + BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } else if (!gSpecialStatuses[gActiveBattler].flag40) { - sub_804CF10(gBattleStruct->monToSwitchIntoId[1]); + ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); gSpecialStatuses[gActiveBattler].flag40 = 1; } } @@ -5040,17 +5042,17 @@ static void Cmd_openpartyscreen(void) } else { - if (gBattlescriptCurrInstr[1] & 0x80) + if (gBattlescriptCurrInstr[1] & PARTY_SCREEN_OPTIONAL) hitmarkerFaintBits = PARTY_ACTION_CHOOSE_MON; // Used here as the caseId for the EmitChoose function. else hitmarkerFaintBits = PARTY_ACTION_SEND_OUT; - battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~(0x80)); + battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~(PARTY_SCREEN_OPTIONAL)); if (gSpecialStatuses[battlerId].flag40) { gBattlescriptCurrInstr += 6; } - else if (HasNoMonsToSwitch(battlerId, 6, 6)) + else if (HasNoMonsToSwitch(battlerId, PARTY_SIZE, PARTY_SIZE)) { gActiveBattler = battlerId; gAbsentBattlerFlags |= gBitTable[gActiveBattler]; @@ -6372,10 +6374,10 @@ static void Cmd_various(void) break; case VARIOUS_ARENA_JUDGMENT_STRING: BattleStringExpandPlaceholdersToDisplayedString(gRefereeStringsTable[gBattlescriptCurrInstr[1]]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0x16); + BattlePutTextOnWindow(gDisplayedStringBattle, 22); break; case VARIOUS_ARENA_WAIT_STRING: - if (IsTextPrinterActive(0x16)) + if (IsTextPrinterActive(22)) return; break; case VARIOUS_WAIT_CRY: @@ -7313,7 +7315,7 @@ static void Cmd_tryconversiontypechange(void) // randomly changes user's type to do { - while ((moveChecked = Random() & 3) >= validMoves); + while ((moveChecked = Random() & (MAX_MON_MOVES - 1)) >= validMoves); moveType = gBattleMoves[gBattleMons[gBattlerAttacker].moves[moveChecked]].type; @@ -8138,7 +8140,7 @@ static void Cmd_trychoosesleeptalkmove(void) do { - movePosition = Random() & 3; + movePosition = Random() & (MAX_MON_MOVES - 1); } while ((gBitTable[movePosition] & unusableMovesBits)); gCalledMove = gBattleMons[gBattlerAttacker].moves[movePosition]; diff --git a/src/battle_util.c b/src/battle_util.c index 6fb307d63a5e..e2dfeef2710e 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1874,7 +1874,7 @@ bool8 HandleFaintedMonActions(void) gBattleStruct->faintedActionsState++; for (i = 0; i < gBattlersCount; i++) { - if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, 6, 6)) + if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, PARTY_SIZE, PARTY_SIZE)) gAbsentBattlerFlags &= ~(gBitTable[i]); } // fall through From b6711441f548dfac4a9b1c69d19aa3d28a3b1ec3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 3 Apr 2021 15:18:17 -0400 Subject: [PATCH 085/762] Fix AI Guard Spec use, and Specs->Spec --- data/battle_scripts_2.s | 4 ++-- include/battle_ai_switch_items.h | 2 +- src/battle_ai_switch_items.c | 4 ++-- src/battle_util.c | 13 +++++++++++-- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 378819a944a1..996048dd3dc2 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -34,7 +34,7 @@ gBattlescriptsForUsingItem:: @ 82DBD3C .4byte BattleScript_OpponentUsesHealItem @ AI_ITEM_HEAL_HP .4byte BattleScript_OpponentUsesStatusCureItem @ AI_ITEM_CURE_CONDITION .4byte BattleScript_OpponentUsesXItem @ AI_ITEM_X_STAT - .4byte BattleScript_OpponentUsesGuardSpecs @ AI_ITEM_GUARD_SPECS + .4byte BattleScript_OpponentUsesGuardSpec @ AI_ITEM_GUARD_SPEC .align 2 gBattlescriptsForRunningByItem:: @ 82DBD54 @@ -155,7 +155,7 @@ BattleScript_OpponentUsesXItem:: moveendcase MOVEEND_MIRROR_MOVE finishaction -BattleScript_OpponentUsesGuardSpecs:: +BattleScript_OpponentUsesGuardSpec:: printstring STRINGID_EMPTYSTRING3 pause B_WAIT_TIME_MED playse SE_USE_ITEM diff --git a/include/battle_ai_switch_items.h b/include/battle_ai_switch_items.h index db390346d332..a0b6fe62c307 100644 --- a/include/battle_ai_switch_items.h +++ b/include/battle_ai_switch_items.h @@ -7,7 +7,7 @@ enum AI_ITEM_HEAL_HP, AI_ITEM_CURE_CONDITION, AI_ITEM_X_STAT, - AI_ITEM_GUARD_SPECS, + AI_ITEM_GUARD_SPEC, AI_ITEM_NOT_RECOGNIZABLE }; diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index e92630808588..04122b17d1a8 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -789,7 +789,7 @@ static u8 GetAI_ItemType(u8 itemId, const u8 *itemEffect) // NOTE: should take u else if (itemEffect[0] & (ITEM0_DIRE_HIT | ITEM0_X_ATTACK) || itemEffect[1] != 0 || itemEffect[2] != 0) return AI_ITEM_X_STAT; else if (itemEffect[3] & ITEM3_GUARD_SPEC) - return AI_ITEM_GUARD_SPECS; + return AI_ITEM_GUARD_SPEC; else return AI_ITEM_NOT_RECOGNIZABLE; } @@ -911,7 +911,7 @@ static bool8 ShouldUseItem(void) *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_DIRE_HIT); shouldUse = TRUE; break; - case AI_ITEM_GUARD_SPECS: + case AI_ITEM_GUARD_SPEC: battlerSide = GetBattlerSide(gActiveBattler); if (gDisableStructs[gActiveBattler].isFirstTurn != 0 && gSideTimers[battlerSide].mistTimer == 0) shouldUse = TRUE; diff --git a/src/battle_util.c b/src/battle_util.c index e2dfeef2710e..cbcd445b7ee2 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -378,10 +378,19 @@ void HandleAction_UseItem(void) gBattleScripting.animArg2 = 0; } break; - case AI_ITEM_GUARD_SPECS: + case AI_ITEM_GUARD_SPEC: + // It seems probable that at some point there was a special message for + // an AI trainer using Guard Spec in a double battle. + // There isn't now however, and the assignment to 2 below goes out of + // bounds for gMistUsedStringIds and instead prints "{mon} is getting pumped" + // from the next table, gFocusEnergyUsedStringIds. + // In any case this isn't an issue in the retail version, as no trainers + // are ever given any Guard Spec to use. +#ifndef UBFIX if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - gBattleCommunication[MULTISTRING_CHOOSER] = 2; // Going OOB for gMistUsedStringIds? + gBattleCommunication[MULTISTRING_CHOOSER] = 2; else +#endif gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_MIST; break; } From fe1b757af5ae8e8942d747863d04c4c33e5399d8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 3 Apr 2021 16:37:00 -0400 Subject: [PATCH 086/762] Some constant use in WallyHandleActions --- src/battle_controller_wally.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 8b490a5bfb51..0d15152139ce 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -190,7 +190,7 @@ static void WallyHandleActions(void) switch (gBattleStruct->wallyBattleState) { case 0: - gBattleStruct->wallyWaitFrames = 64; + gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG; gBattleStruct->wallyBattleState++; case 1: if (--gBattleStruct->wallyWaitFrames == 0) @@ -200,7 +200,7 @@ static void WallyHandleActions(void) WallyBufferExecCompleted(); gBattleStruct->wallyBattleState++; gBattleStruct->wallyMovesState = 0; - gBattleStruct->wallyWaitFrames = 64; + gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG; } break; case 2: @@ -211,17 +211,17 @@ static void WallyHandleActions(void) WallyBufferExecCompleted(); gBattleStruct->wallyBattleState++; gBattleStruct->wallyMovesState = 0; - gBattleStruct->wallyWaitFrames = 64; + gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG; } break; case 3: if (--gBattleStruct->wallyWaitFrames == 0) { - BtlController_EmitTwoReturnValues(1, 9, 0); + BtlController_EmitTwoReturnValues(1, B_ACTION_WALLY_THROW, 0); WallyBufferExecCompleted(); gBattleStruct->wallyBattleState++; gBattleStruct->wallyMovesState = 0; - gBattleStruct->wallyWaitFrames = 64; + gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG; } break; case 4: @@ -230,7 +230,7 @@ static void WallyHandleActions(void) PlaySE(SE_SELECT); ActionSelectionDestroyCursorAt(0); ActionSelectionCreateCursorAt(1, 0); - gBattleStruct->wallyWaitFrames = 64; + gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG; gBattleStruct->wallyBattleState++; } break; From 1494a8303579e2bd92d24554b1f3e1cebd97a273 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 3 Apr 2021 22:47:58 -0400 Subject: [PATCH 087/762] Sync drought with pokefirered, add weather tags --- include/field_weather.h | 28 ++++++++++++---- src/field_weather.c | 54 +++++++++++++++--------------- src/field_weather_effect.c | 68 +++++++++++++++++++------------------- 3 files changed, 82 insertions(+), 68 deletions(-) diff --git a/include/field_weather.h b/include/field_weather.h index 9ecf5250132f..894c661bed8a 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -4,6 +4,21 @@ #include "sprite.h" #include "constants/field_weather.h" +#define TAG_WEATHER_START 0x1200 +enum { + GFXTAG_CLOUD = TAG_WEATHER_START, + GFXTAG_FOG_H, + GFXTAG_ASH, + GFXTAG_FOG_D, + GFXTAG_SANDSTORM, + GFXTAG_BUBBLE, + GFXTAG_RAIN, +}; +enum { + PALTAG_WEATHER = TAG_WEATHER_START, + PALTAG_WEATHER_2 +}; + struct Weather { union @@ -105,10 +120,10 @@ struct Weather u8 blendFrameCounter; u8 blendDelay; u8 filler_73B[0x3C-0x3B]; - s16 unknown_73C; - s16 unknown_73E; - s16 unknown_740; - s16 unknown_742; + s16 droughtBrightnessStage; + s16 droughtLastBrightnessStage; + s16 droughtTimer; + s16 droughtState; u8 filler_744[0xD-4]; s8 loadDroughtPalsIndex; u8 loadDroughtPalsOffset; @@ -136,9 +151,8 @@ u8 sub_80ABF20(void); void LoadCustomWeatherSpritePalette(const u16 *palette); void ResetDroughtWeatherPaletteLoading(void); bool8 LoadDroughtWeatherPalettes(void); -void sub_80ABFE0(s8 gammaIndex); -void sub_80ABFF0(void); -void sub_80AC01C(void); +void DroughtStateInit(void); +void DroughtStateRun(void); void Weather_SetBlendCoeffs(u8 eva, u8 evb); void Weather_SetTargetBlendCoeffs(u8 eva, u8 evb, int delay); bool8 Weather_UpdateBlend(void); diff --git a/src/field_weather.c b/src/field_weather.c index 655e24590e8b..331f0be78290 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -160,11 +160,11 @@ void StartWeather(void) { if (!FuncIsActiveTask(Task_WeatherMain)) { - u8 index = AllocSpritePalette(0x1200); + u8 index = AllocSpritePalette(TAG_WEATHER_START); CpuCopy32(gFogPalette, &gPlttBufferUnfaded[0x100 + index * 16], 32); BuildGammaShiftTables(); gWeatherPtr->altGammaSpritePalIndex = index; - gWeatherPtr->weatherPicSpritePalIndex = AllocSpritePalette(0x1201); + gWeatherPtr->weatherPicSpritePalIndex = AllocSpritePalette(PALTAG_WEATHER_2); gWeatherPtr->rainSpriteCount = 0; gWeatherPtr->curRainSpriteIndex = 0; gWeatherPtr->cloudSpritesCreated = 0; @@ -885,50 +885,50 @@ bool8 LoadDroughtWeatherPalettes(void) return FALSE; } -void sub_80ABFE0(s8 gammaIndex) +static void SetDroughtGamma(s8 gammaIndex) { sub_80ABC48(-gammaIndex - 1); } -void sub_80ABFF0(void) +void DroughtStateInit(void) { - gWeatherPtr->unknown_73C = 0; - gWeatherPtr->unknown_740 = 0; - gWeatherPtr->unknown_742 = 0; - gWeatherPtr->unknown_73E = 0; + gWeatherPtr->droughtBrightnessStage = 0; + gWeatherPtr->droughtTimer = 0; + gWeatherPtr->droughtState = 0; + gWeatherPtr->droughtLastBrightnessStage = 0; } -void sub_80AC01C(void) +void DroughtStateRun(void) { - switch (gWeatherPtr->unknown_742) + switch (gWeatherPtr->droughtState) { case 0: - if (++gWeatherPtr->unknown_740 > 5) + if (++gWeatherPtr->droughtTimer > 5) { - gWeatherPtr->unknown_740 = 0; - sub_80ABFE0(gWeatherPtr->unknown_73C++); - if (gWeatherPtr->unknown_73C > 5) + gWeatherPtr->droughtTimer = 0; + SetDroughtGamma(gWeatherPtr->droughtBrightnessStage++); + if (gWeatherPtr->droughtBrightnessStage > 5) { - gWeatherPtr->unknown_73E = gWeatherPtr->unknown_73C; - gWeatherPtr->unknown_742 = 1; - gWeatherPtr->unknown_740 = 0x3C; + gWeatherPtr->droughtLastBrightnessStage = gWeatherPtr->droughtBrightnessStage; + gWeatherPtr->droughtState = 1; + gWeatherPtr->droughtTimer = 60; } } break; case 1: - gWeatherPtr->unknown_740 = (gWeatherPtr->unknown_740 + 3) & 0x7F; - gWeatherPtr->unknown_73C = ((gSineTable[gWeatherPtr->unknown_740] - 1) >> 6) + 2; - if (gWeatherPtr->unknown_73C != gWeatherPtr->unknown_73E) - sub_80ABFE0(gWeatherPtr->unknown_73C); - gWeatherPtr->unknown_73E = gWeatherPtr->unknown_73C; + gWeatherPtr->droughtTimer = (gWeatherPtr->droughtTimer + 3) & 0x7F; + gWeatherPtr->droughtBrightnessStage = ((gSineTable[gWeatherPtr->droughtTimer] - 1) >> 6) + 2; + if (gWeatherPtr->droughtBrightnessStage != gWeatherPtr->droughtLastBrightnessStage) + SetDroughtGamma(gWeatherPtr->droughtBrightnessStage); + gWeatherPtr->droughtLastBrightnessStage = gWeatherPtr->droughtBrightnessStage; break; case 2: - if (++gWeatherPtr->unknown_740 > 5) + if (++gWeatherPtr->droughtTimer > 5) { - gWeatherPtr->unknown_740 = 0; - sub_80ABFE0(--gWeatherPtr->unknown_73C); - if (gWeatherPtr->unknown_73C == 3) - gWeatherPtr->unknown_742 = 0; + gWeatherPtr->droughtTimer = 0; + SetDroughtGamma(--gWeatherPtr->droughtBrightnessStage); + if (gWeatherPtr->droughtBrightnessStage == 3) + gWeatherPtr->droughtState = 0; } break; } diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 320a10670118..b8a09faad18d 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -51,7 +51,7 @@ static const struct SpriteSheet sCloudSpriteSheet = { .data = gWeatherCloudTiles, .size = sizeof(gWeatherCloudTiles), - .tag = 0x1200 + .tag = GFXTAG_CLOUD }; static const struct OamData sCloudSpriteOamData = @@ -84,8 +84,8 @@ static const union AnimCmd *const sCloudSpriteAnimCmds[] = static const struct SpriteTemplate sCloudSpriteTemplate = { - .tileTag = 0x1200, - .paletteTag = 0x1201, + .tileTag = GFXTAG_CLOUD, + .paletteTag = PALTAG_WEATHER_2, .oam = &sCloudSpriteOamData, .anims = sCloudSpriteAnimCmds, .images = NULL, @@ -214,7 +214,7 @@ static void DestroyCloudSprites(void) DestroySprite(gWeatherPtr->sprites.s1.cloudSprites[i]); } - FreeSpriteTilesByTag(0x1200); + FreeSpriteTilesByTag(GFXTAG_CLOUD); gWeatherPtr->cloudSpritesCreated = FALSE; } @@ -264,19 +264,19 @@ void Drought_Main(void) gWeatherPtr->initStep++; break; case 3: - sub_80ABFF0(); + DroughtStateInit(); gWeatherPtr->initStep++; break; case 4: - sub_80AC01C(); - if (gWeatherPtr->unknown_73C == 6) + DroughtStateRun(); + if (gWeatherPtr->droughtBrightnessStage == 6) { gWeatherPtr->weatherGfxLoaded = TRUE; gWeatherPtr->initStep++; } break; default: - sub_80AC01C(); + DroughtStateRun(); break; } } @@ -288,7 +288,7 @@ bool8 Drought_Finish(void) void StartDroughtWeatherBlend(void) { - CreateTask(UpdateDroughtBlend, 0x50); + CreateTask(UpdateDroughtBlend, 80); } #define tState data[0] @@ -437,8 +437,8 @@ static const union AnimCmd *const sRainSpriteAnimCmds[] = static const struct SpriteTemplate sRainSpriteTemplate = { - .tileTag = 4614, - .paletteTag = 0x1200, + .tileTag = GFXTAG_RAIN, + .paletteTag = PALTAG_WEATHER, .oam = &sRainSpriteOamData, .anims = sRainSpriteAnimCmds, .images = NULL, @@ -466,7 +466,7 @@ static const struct SpriteSheet sRainSpriteSheet = { .data = gWeatherRainTiles, .size = sizeof(gWeatherRainTiles), - .tag = 0x1206, + .tag = GFXTAG_RAIN, }; void Rain_InitVars(void) @@ -744,7 +744,7 @@ static void DestroyRainSprites(void) DestroySprite(gWeatherPtr->sprites.s1.rainSprites[i]); } gWeatherPtr->rainSpriteCount = 0; - FreeSpriteTilesByTag(0x1206); + FreeSpriteTilesByTag(GFXTAG_RAIN); } #undef tCounter @@ -879,7 +879,7 @@ static const union AnimCmd *const sSnowflakeAnimCmds[] = static const struct SpriteTemplate sSnowflakeSpriteTemplate = { .tileTag = 0xFFFF, - .paletteTag = 0x1200, + .paletteTag = PALTAG_WEATHER, .oam = &sSnowflakeSpriteOamData, .anims = sSnowflakeAnimCmds, .images = sSnowflakeSpriteImages, @@ -1317,8 +1317,8 @@ static const union AffineAnimCmd *const gSpriteAffineAnimTable_839AB8C[] = static void FogHorizontalSpriteCallback(struct Sprite *); static const struct SpriteTemplate sFogHorizontalSpriteTemplate = { - .tileTag = 0x1201, - .paletteTag = 0x1200, + .tileTag = GFXTAG_FOG_H, + .paletteTag = PALTAG_WEATHER, .oam = &gOamData_839AB2C, .anims = gSpriteAnimTable_839AB64, .images = NULL, @@ -1433,7 +1433,7 @@ static void CreateFogHorizontalSprites(void) struct SpriteSheet fogHorizontalSpriteSheet = { .data = gWeatherFogHorizontalTiles, .size = sizeof(gWeatherFogHorizontalTiles), - .tag = 0x1201, + .tag = GFXTAG_FOG_H, }; LoadSpriteSheet(&fogHorizontalSpriteSheet); for (i = 0; i < NUM_FOG_HORIZONTAL_SPRITES; i++) @@ -1469,7 +1469,7 @@ static void DestroyFogHorizontalSprites(void) DestroySprite(gWeatherPtr->sprites.s2.fogHSprites[i]); } - FreeSpriteTilesByTag(0x1201); + FreeSpriteTilesByTag(GFXTAG_FOG_H); gWeatherPtr->fogHSpritesCreated = 0; } } @@ -1567,7 +1567,7 @@ static const struct SpriteSheet sAshSpriteSheet = { .data = gWeatherAshTiles, .size = sizeof(gWeatherAshTiles), - .tag = 0x1202, + .tag = GFXTAG_ASH, }; static void LoadAshSpriteSheet(void) @@ -1603,8 +1603,8 @@ static const union AnimCmd *const sAshSpriteAnimCmds[] = static const struct SpriteTemplate sAshSpriteTemplate = { - .tileTag = 4610, - .paletteTag = 0x1200, + .tileTag = GFXTAG_ASH, + .paletteTag = PALTAG_WEATHER, .oam = &sAshSpriteOamData, .anims = sAshSpriteAnimCmds, .images = NULL, @@ -1659,7 +1659,7 @@ static void DestroyAshSprites(void) DestroySprite(gWeatherPtr->sprites.s2.ashSprites[i]); } - FreeSpriteTilesByTag(0x1202); + FreeSpriteTilesByTag(GFXTAG_ASH); gWeatherPtr->ashSpritesCreated = FALSE; } } @@ -1790,7 +1790,7 @@ static const struct SpriteSheet gFogDiagonalSpriteSheet = { .data = gWeatherFogDiagonalTiles, .size = sizeof(gWeatherFogDiagonalTiles), - .tag = 0x1203, + .tag = GFXTAG_FOG_D, }; static const struct OamData sFogDiagonalSpriteOamData = @@ -1820,8 +1820,8 @@ static const union AnimCmd *const sFogDiagonalSpriteAnimCmds[] = static const struct SpriteTemplate sFogDiagonalSpriteTemplate = { - .tileTag = 0x1203, - .paletteTag = 0x1200, + .tileTag = GFXTAG_FOG_D, + .paletteTag = PALTAG_WEATHER, .oam = &sFogDiagonalSpriteOamData, .anims = sFogDiagonalSpriteAnimCmds, .images = NULL, @@ -1875,7 +1875,7 @@ static void DestroyFogDiagonalSprites(void) DestroySprite(gWeatherPtr->sprites.s2.fogDSprites[i]); } - FreeSpriteTilesByTag(0x1203); + FreeSpriteTilesByTag(GFXTAG_FOG_D); gWeatherPtr->fogDSpritesCreated = FALSE; } } @@ -2018,7 +2018,7 @@ static void DestroySandstormSprites(void) } gWeatherPtr->sandstormSpritesCreated = FALSE; - FreeSpriteTilesByTag(0x1204); + FreeSpriteTilesByTag(GFXTAG_SANDSTORM); } if (gWeatherPtr->sandstormSwirlSpritesCreated) @@ -2067,8 +2067,8 @@ static const union AnimCmd *const sSandstormSpriteAnimCmds[] = static const struct SpriteTemplate sSandstormSpriteTemplate = { - .tileTag = 0x1204, - .paletteTag = 0x1201, + .tileTag = GFXTAG_SANDSTORM, + .paletteTag = PALTAG_WEATHER_2, .oam = &sSandstormSpriteOamData, .anims = sSandstormSpriteAnimCmds, .images = NULL, @@ -2080,7 +2080,7 @@ static const struct SpriteSheet sSandstormSpriteSheet = { .data = gWeatherSandstormTiles, .size = sizeof(gWeatherSandstormTiles), - .tag = 0x1204, + .tag = GFXTAG_SANDSTORM, }; // Regular sandstorm sprites @@ -2242,7 +2242,7 @@ static const struct SpriteSheet sWeatherBubbleSpriteSheet = { .data = gWeatherBubbleTiles, .size = sizeof(gWeatherBubbleTiles), - .tag = 0x1205, + .tag = GFXTAG_BUBBLE, }; static const s16 sBubbleStartCoords[][2] = @@ -2322,8 +2322,8 @@ static const union AnimCmd *const sBubbleSpriteAnimCmds[] = static const struct SpriteTemplate sBubbleSpriteTemplate = { - .tileTag = 0x1205, - .paletteTag = 0x1200, + .tileTag = GFXTAG_BUBBLE, + .paletteTag = PALTAG_WEATHER, .oam = &gOamData_AffineOff_ObjNormal_8x8, .anims = sBubbleSpriteAnimCmds, .images = NULL, @@ -2363,7 +2363,7 @@ static void DestroyBubbleSprites(void) DestroySprite(&gSprites[i]); } - FreeSpriteTilesByTag(0x1205); + FreeSpriteTilesByTag(GFXTAG_BUBBLE); gWeatherPtr->bubblesSpriteCount = 0; } } From b926fa6b0741cc878e4de5fe81183af12275d267 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 4 Apr 2021 00:23:06 -0400 Subject: [PATCH 088/762] Document thunderstorm --- include/field_weather.h | 43 +++++++----- src/field_weather.c | 6 +- src/field_weather_effect.c | 140 ++++++++++++++++++++++--------------- 3 files changed, 111 insertions(+), 78 deletions(-) diff --git a/include/field_weather.h b/include/field_weather.h index 894c661bed8a..48118c9a69f0 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -46,11 +46,11 @@ struct Weather u8 gammaStepDelay; u8 gammaStepFrameCounter; u16 fadeDestColor; - /*0x6C6*/ u8 palProcessingState; - /*0x6C7*/ u8 fadeScreenCounter; - /*0x6C8*/ bool8 readyForInit; - /*0x6C9*/ u8 taskId; - /*0x6CA*/ u8 unknown_6CA; + u8 palProcessingState; + u8 fadeScreenCounter; + bool8 readyForInit; + u8 taskId; + u8 unknown_6CA; u8 unknown_6CB; u16 initStep; u16 finishStep; @@ -60,6 +60,7 @@ struct Weather bool8 weatherChangeComplete; u8 weatherPicSpritePalIndex; u8 altGammaSpritePalIndex; + // Rain u16 rainSpriteVisibleCounter; u8 curRainSpriteIndex; u8 targetRainSpriteCount; @@ -67,37 +68,41 @@ struct Weather u8 rainSpriteVisibleDelay; u8 isDownpour; u8 rainStrength; - /*0x6DE*/ u8 cloudSpritesCreated; - u8 filler_6DF[1]; + u8 cloudSpritesCreated; + // Snow u16 snowflakeVisibleCounter; u16 unknown_6E2; u8 snowflakeSpriteCount; u8 targetSnowflakeSpriteCount; - u16 unknown_6E6; + // Thunderstorm + u16 thunderDelay; u16 thunderCounter; - u8 unknown_6EA; - u8 unknown_6EB; - u8 unknown_6EC; - u8 thunderTriggered; + bool8 thunderAllowEnd; + bool8 thunderSkipShort; + u8 thunderShortRetries; + bool8 thunderTriggered; + // Horizontal fog u16 fogHScrollPosX; u16 fogHScrollCounter; u16 fogHScrollOffset; u8 lightenedFogSpritePals[6]; u8 lightenedFogSpritePalsCount; u8 fogHSpritesCreated; + // Ash u16 ashBaseSpritesX; u16 unknown_6FE; u8 ashSpritesCreated; - u8 filler_701[3]; + // Sandstorm u32 sandstormXOffset; u32 sandstormYOffset; - u8 filler_70C[2]; + u16 sandstormUnused; u16 sandstormBaseSpritesX; u16 sandstormPosY; u16 sandstormWaveIndex; u16 sandstormWaveCounter; u8 sandstormSpritesCreated; u8 sandstormSwirlSpritesCreated; + // Diagonal fog u16 fogDBaseSpritesX; u16 fogDPosY; u16 fogDScrollXCounter; @@ -105,13 +110,13 @@ struct Weather u16 fogDXOffset; u16 fogDYOffset; u8 fogDSpritesCreated; - u8 filler_725[1]; + // Bubbles u16 bubblesDelayCounter; u16 bubblesDelayIndex; u16 bubblesCoordsIndex; u16 bubblesSpriteCount; u8 bubblesSpritesCreated; - u8 filler_72F; + u16 currBlendEVA; u16 currBlendEVB; u16 targetBlendEVA; @@ -119,12 +124,12 @@ struct Weather u8 blendUpdateCounter; u8 blendFrameCounter; u8 blendDelay; - u8 filler_73B[0x3C-0x3B]; + // Drought s16 droughtBrightnessStage; s16 droughtLastBrightnessStage; s16 droughtTimer; s16 droughtState; - u8 filler_744[0xD-4]; + u8 droughtUnused[9]; s8 loadDroughtPalsIndex; u8 loadDroughtPalsOffset; }; @@ -141,7 +146,7 @@ void StartWeather(void); void SetNextWeather(u8 weather); void SetCurrentAndNextWeather(u8 weather); void SetCurrentAndNextWeatherNoDelay(u8 weather); -void sub_80ABC48(s8 gammaIndex); +void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex); void sub_80ABC7C(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay); void FadeScreen(u8 mode, s8 delay); bool8 IsWeatherNotFadingIn(void); diff --git a/src/field_weather.c b/src/field_weather.c index 331f0be78290..67051377c4d1 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -710,7 +710,7 @@ static bool8 LightenSpritePaletteInFog(u8 paletteIndex) return FALSE; } -void sub_80ABC48(s8 gammaIndex) +void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex) { if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { @@ -728,7 +728,7 @@ void sub_80ABC7C(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay) gWeatherPtr->gammaTargetIndex = gammaTargetIndex; gWeatherPtr->gammaStepFrameCounter = 0; gWeatherPtr->gammaStepDelay = gammaStepDelay; - sub_80ABC48(gammaIndex); + ApplyWeatherGammaShiftIfIdle(gammaIndex); } } @@ -887,7 +887,7 @@ bool8 LoadDroughtWeatherPalettes(void) static void SetDroughtGamma(s8 gammaIndex) { - sub_80ABC48(-gammaIndex - 1); + ApplyWeatherGammaShiftIfIdle(-gammaIndex - 1); } void DroughtStateInit(void) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index b8a09faad18d..1069bc9a2972 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -677,7 +677,7 @@ static bool8 CreateRainSprite(void) if (spriteId != MAX_SPRITES) { - gSprites[spriteId].tActive = 0; + gSprites[spriteId].tActive = FALSE; gSprites[spriteId].tRandom = spriteIndex * 145; while (gSprites[spriteId].tRandom >= 600) gSprites[spriteId].tRandom -= 600; @@ -722,12 +722,12 @@ static bool8 UpdateVisibleRainSprites(void) gWeatherPtr->rainSpriteVisibleCounter = 0; if (gWeatherPtr->curRainSpriteIndex < gWeatherPtr->targetRainSpriteCount) { - gWeatherPtr->sprites.s1.rainSprites[gWeatherPtr->curRainSpriteIndex++]->tActive = 1; + gWeatherPtr->sprites.s1.rainSprites[gWeatherPtr->curRainSpriteIndex++]->tActive = TRUE; } else { gWeatherPtr->curRainSpriteIndex--; - gWeatherPtr->sprites.s1.rainSprites[gWeatherPtr->curRainSpriteIndex]->tActive = 0; + gWeatherPtr->sprites.s1.rainSprites[gWeatherPtr->curRainSpriteIndex]->tActive = FALSE; gWeatherPtr->sprites.s1.rainSprites[gWeatherPtr->curRainSpriteIndex]->invisible = TRUE; } } @@ -1011,9 +1011,32 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite) // WEATHER_RAIN_THUNDERSTORM //------------------------------------------------------------------------------ +enum { + // This block of states is run only once + // when first setting up the thunderstorm + TSTORM_STATE_LOAD_RAIN, + TSTORM_STATE_CREATE_RAIN, + TSTORM_STATE_INIT_RAIN, + TSTORM_STATE_WAIT_CHANGE, + + // The thunderstorm loops through these states, + // not necessarily in order. + TSTORM_STATE_LOOP_START, + TSTORM_STATE_LOOP_WAIT, + TSTORM_STATE_INIT_THUNDER_SHORT_1, + TSTORM_STATE_INIT_THUNDER_SHORT_2, + TSTORM_STATE_TRY_THUNDER_SHORT, + TSTORM_STATE_TRY_NEW_THUNDER, + TSTORM_STATE_WAIT_THUNDER_SHORT, + TSTORM_STATE_INIT_THUNDER_LONG, + TSTORM_STATE_WAIT_THUNDER_LONG, + TSTORM_STATE_FADE_THUNDER_LONG, + TSTORM_STATE_END_THUNDER_LONG, +}; + void Thunderstorm_InitVars(void) { - gWeatherPtr->initStep = 0; + gWeatherPtr->initStep = TSTORM_STATE_LOAD_RAIN; gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->rainSpriteVisibleCounter = 0; gWeatherPtr->rainSpriteVisibleDelay = 4; @@ -1022,7 +1045,7 @@ void Thunderstorm_InitVars(void) gWeatherPtr->gammaTargetIndex = 3; gWeatherPtr->gammaStepDelay = 20; gWeatherPtr->weatherGfxLoaded = FALSE; // duplicate assignment - gWeatherPtr->thunderTriggered = 0; + gWeatherPtr->thunderTriggered = FALSE; SetRainStrengthFromSoundEffect(SE_THUNDERSTORM); } @@ -1042,7 +1065,7 @@ static void SetThunderCounter(u16); void Downpour_InitVars(void) { - gWeatherPtr->initStep = 0; + gWeatherPtr->initStep = TSTORM_STATE_LOAD_RAIN; gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->rainSpriteVisibleCounter = 0; gWeatherPtr->rainSpriteVisibleDelay = 4; @@ -1066,100 +1089,105 @@ void Thunderstorm_Main(void) UpdateThunderSound(); switch (gWeatherPtr->initStep) { - case 0: + case TSTORM_STATE_LOAD_RAIN: LoadRainSpriteSheet(); gWeatherPtr->initStep++; break; - case 1: + case TSTORM_STATE_CREATE_RAIN: if (!CreateRainSprite()) gWeatherPtr->initStep++; break; - case 2: + case TSTORM_STATE_INIT_RAIN: if (!UpdateVisibleRainSprites()) { gWeatherPtr->weatherGfxLoaded = TRUE; gWeatherPtr->initStep++; } break; - case 3: + case TSTORM_STATE_WAIT_CHANGE: if (gWeatherPtr->palProcessingState != WEATHER_PAL_STATE_CHANGING_WEATHER) - gWeatherPtr->initStep = 6; + gWeatherPtr->initStep = TSTORM_STATE_INIT_THUNDER_SHORT_1; break; - case 4: - gWeatherPtr->unknown_6EA = 1; - gWeatherPtr->unknown_6E6 = (Random() % 360) + 360; + case TSTORM_STATE_LOOP_START: + gWeatherPtr->thunderAllowEnd = TRUE; + gWeatherPtr->thunderDelay = (Random() % 360) + 360; gWeatherPtr->initStep++; // fall through - case 5: - if (--gWeatherPtr->unknown_6E6 == 0) + case TSTORM_STATE_LOOP_WAIT: + // Wait between 360-720 frames before trying thunder again + if (--gWeatherPtr->thunderDelay == 0) gWeatherPtr->initStep++; break; - case 6: - gWeatherPtr->unknown_6EA = 1; - gWeatherPtr->unknown_6EB = Random() % 2; + case TSTORM_STATE_INIT_THUNDER_SHORT_1: + gWeatherPtr->thunderAllowEnd = TRUE; + gWeatherPtr->thunderSkipShort = Random() % 2; gWeatherPtr->initStep++; break; - case 7: - gWeatherPtr->unknown_6EC = (Random() & 1) + 1; + case TSTORM_STATE_INIT_THUNDER_SHORT_2: + gWeatherPtr->thunderShortRetries = (Random() & 1) + 1; gWeatherPtr->initStep++; // fall through - case 8: - sub_80ABC48(19); - if (gWeatherPtr->unknown_6EB == 0 && gWeatherPtr->unknown_6EC == 1) - SetThunderCounter(20); + case TSTORM_STATE_TRY_THUNDER_SHORT: + ApplyWeatherGammaShiftIfIdle(19); + if (!gWeatherPtr->thunderSkipShort && gWeatherPtr->thunderShortRetries == 1) + SetThunderCounter(20); // Do short thunder - gWeatherPtr->unknown_6E6 = (Random() % 3) + 6; + gWeatherPtr->thunderDelay = (Random() % 3) + 6; gWeatherPtr->initStep++; break; - case 9: - if (--gWeatherPtr->unknown_6E6 == 0) + case TSTORM_STATE_TRY_NEW_THUNDER: + if (--gWeatherPtr->thunderDelay == 0) { - sub_80ABC48(3); - gWeatherPtr->unknown_6EA = 1; - if (--gWeatherPtr->unknown_6EC != 0) + ApplyWeatherGammaShiftIfIdle(3); + gWeatherPtr->thunderAllowEnd = TRUE; + if (--gWeatherPtr->thunderShortRetries != 0) { - gWeatherPtr->unknown_6E6 = (Random() % 16) + 60; - gWeatherPtr->initStep = 10; + // Try a short thunder again + gWeatherPtr->thunderDelay = (Random() % 16) + 60; + gWeatherPtr->initStep = TSTORM_STATE_WAIT_THUNDER_SHORT; } - else if (gWeatherPtr->unknown_6EB == 0) + else if (!gWeatherPtr->thunderSkipShort) { - gWeatherPtr->initStep = 4; + // No more thunder, restart loop + gWeatherPtr->initStep = TSTORM_STATE_LOOP_START; } else { - gWeatherPtr->initStep = 11; + // Set up long thunder + gWeatherPtr->initStep = TSTORM_STATE_INIT_THUNDER_LONG; } } break; - case 10: - if (--gWeatherPtr->unknown_6E6 == 0) - gWeatherPtr->initStep = 8; + case TSTORM_STATE_WAIT_THUNDER_SHORT: + if (--gWeatherPtr->thunderDelay == 0) + gWeatherPtr->initStep = TSTORM_STATE_TRY_THUNDER_SHORT; break; - case 11: - gWeatherPtr->unknown_6E6 = (Random() % 16) + 60; + case TSTORM_STATE_INIT_THUNDER_LONG: + gWeatherPtr->thunderDelay = (Random() % 16) + 60; gWeatherPtr->initStep++; break; - case 12: - if (--gWeatherPtr->unknown_6E6 == 0) + case TSTORM_STATE_WAIT_THUNDER_LONG: + if (--gWeatherPtr->thunderDelay == 0) { + // Do long thunder SetThunderCounter(100); - sub_80ABC48(19); - gWeatherPtr->unknown_6E6 = (Random() & 0xF) + 30; + ApplyWeatherGammaShiftIfIdle(19); + gWeatherPtr->thunderDelay = (Random() & 0xF) + 30; gWeatherPtr->initStep++; } break; - case 13: - if (--gWeatherPtr->unknown_6E6 == 0) + case TSTORM_STATE_FADE_THUNDER_LONG: + if (--gWeatherPtr->thunderDelay == 0) { sub_80ABC7C(19, 3, 5); gWeatherPtr->initStep++; } break; - case 14: + case TSTORM_STATE_END_THUNDER_LONG: if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { - gWeatherPtr->unknown_6EA = 1; - gWeatherPtr->initStep = 4; + gWeatherPtr->thunderAllowEnd = TRUE; + gWeatherPtr->initStep = TSTORM_STATE_LOOP_START; } break; } @@ -1170,12 +1198,12 @@ bool8 Thunderstorm_Finish(void) switch (gWeatherPtr->finishStep) { case 0: - gWeatherPtr->unknown_6EA = 0; + gWeatherPtr->thunderAllowEnd = FALSE; gWeatherPtr->finishStep++; // fall through case 1: Thunderstorm_Main(); - if (gWeatherPtr->unknown_6EA) + if (gWeatherPtr->thunderAllowEnd) { if (gWeatherPtr->nextWeather == WEATHER_RAIN || gWeatherPtr->nextWeather == WEATHER_RAIN_THUNDERSTORM @@ -1203,16 +1231,16 @@ bool8 Thunderstorm_Finish(void) static void SetThunderCounter(u16 max) { - if (gWeatherPtr->thunderTriggered == 0) + if (!gWeatherPtr->thunderTriggered) { gWeatherPtr->thunderCounter = Random() % max; - gWeatherPtr->thunderTriggered = 1; + gWeatherPtr->thunderTriggered = TRUE; } } static void UpdateThunderSound(void) { - if (gWeatherPtr->thunderTriggered == 1) + if (gWeatherPtr->thunderTriggered == TRUE) { if (gWeatherPtr->thunderCounter == 0) { @@ -1224,7 +1252,7 @@ static void UpdateThunderSound(void) else PlaySE(SE_THUNDER2); - gWeatherPtr->thunderTriggered = 0; + gWeatherPtr->thunderTriggered = FALSE; } else { From 5fa20534f9843d5ede403474e675be5330b8060d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 4 Apr 2021 00:52:17 -0400 Subject: [PATCH 089/762] Label remaining fields in Weather struct --- include/field_weather.h | 9 ++++----- src/field_weather.c | 17 +++++++++-------- src/field_weather_effect.c | 7 ++++--- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/include/field_weather.h b/include/field_weather.h index 48118c9a69f0..69686498310b 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -50,8 +50,8 @@ struct Weather u8 fadeScreenCounter; bool8 readyForInit; u8 taskId; - u8 unknown_6CA; - u8 unknown_6CB; + u8 fadeInFirstFrame; + u8 fadeInTimer; u16 initStep; u16 finishStep; u8 currWeather; @@ -71,7 +71,7 @@ struct Weather u8 cloudSpritesCreated; // Snow u16 snowflakeVisibleCounter; - u16 unknown_6E2; + u16 snowflakeTimer; u8 snowflakeSpriteCount; u8 targetSnowflakeSpriteCount; // Thunderstorm @@ -90,7 +90,7 @@ struct Weather u8 fogHSpritesCreated; // Ash u16 ashBaseSpritesX; - u16 unknown_6FE; + u16 ashUnused; u8 ashSpritesCreated; // Sandstorm u32 sandstormXOffset; @@ -152,7 +152,6 @@ void FadeScreen(u8 mode, s8 delay); bool8 IsWeatherNotFadingIn(void); void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex); void ApplyWeatherGammaShiftToPal(u8 paletteIndex); -u8 sub_80ABF20(void); void LoadCustomWeatherSpritePalette(const u16 *palette); void ResetDroughtWeatherPaletteLoading(void); bool8 LoadDroughtWeatherPalettes(void); diff --git a/src/field_weather.c b/src/field_weather.c index 67051377c4d1..6fc1d331a3c8 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -365,8 +365,8 @@ static void UpdateWeatherGammaShift(void) static void FadeInScreenWithWeather(void) { - if (++gWeatherPtr->unknown_6CB > 1) - gWeatherPtr->unknown_6CA = 0; + if (++gWeatherPtr->fadeInTimer > 1) + gWeatherPtr->fadeInFirstFrame = FALSE; switch (gWeatherPtr->currWeather) { @@ -793,8 +793,8 @@ void FadeScreen(u8 mode, s8 delay) BeginNormalPaletteFade(PALETTES_ALL, delay, 16, 0, fadeColor); gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_IN; - gWeatherPtr->unknown_6CA = 1; - gWeatherPtr->unknown_6CB = 0; + gWeatherPtr->fadeInFirstFrame = TRUE; + gWeatherPtr->fadeInTimer = 0; Weather_SetBlendCoeffs(gWeatherPtr->currBlendEVA, gWeatherPtr->currBlendEVB); gWeatherPtr->readyForInit = TRUE; } @@ -813,7 +813,7 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex) switch (gWeatherPtr->palProcessingState) { case WEATHER_PAL_STATE_SCREEN_FADING_IN: - if (gWeatherPtr->unknown_6CA != 0) + if (gWeatherPtr->fadeInFirstFrame) { if (gWeatherPtr->currWeather == WEATHER_FOG_HORIZONTAL) MarkFogSpritePalToLighten(paletteIndex); @@ -848,12 +848,13 @@ void ApplyWeatherGammaShiftToPal(u8 paletteIndex) ApplyGammaShift(paletteIndex, 1, gWeatherPtr->gammaIndex); } -u8 sub_80ABF20(void) +// Unused +static bool8 IsFirstFrameOfWeatherFadeIn(void) { if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_SCREEN_FADING_IN) - return gWeatherPtr->unknown_6CA; + return gWeatherPtr->fadeInFirstFrame; else - return 0; + return FALSE; } void LoadCustomWeatherSpritePalette(const u16 *palette) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 1069bc9a2972..e0103c5a33cd 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -941,13 +941,14 @@ static void InitSnowflakeSpriteMovement(struct Sprite *sprite) static void WaitSnowflakeSprite(struct Sprite *sprite) { - if (gWeatherPtr->unknown_6E2 > 18) + // Timer is never incremented + if (gWeatherPtr->snowflakeTimer > 18) { sprite->invisible = FALSE; sprite->callback = UpdateSnowflakeSprite; sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); sprite->tPosY = sprite->pos1.y * 128; - gWeatherPtr->unknown_6E2 = 0; + gWeatherPtr->snowflakeTimer = 0; } } @@ -1519,7 +1520,7 @@ void Ash_InitVars(void) gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->gammaTargetIndex = 0; gWeatherPtr->gammaStepDelay = 20; - gWeatherPtr->unknown_6FE = 20; + gWeatherPtr->ashUnused = 20; // Never read if (!gWeatherPtr->ashSpritesCreated) { Weather_SetBlendCoeffs(0, 16); From f90026826a0c4fb1f85a3e1648026392cb5072f9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 4 Apr 2021 17:52:07 -0400 Subject: [PATCH 090/762] Document some weather, field effects --- include/event_object_movement.h | 2 +- include/field_weather.h | 3 +- src/event_object_movement.c | 16 +- src/field_effect_helpers.c | 259 +++++++++++++++++++------------- src/field_weather.c | 27 ++-- src/fldeff_sweetscent.c | 2 +- src/overworld.c | 2 +- 7 files changed, 180 insertions(+), 131 deletions(-) diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 1e754dcd938d..79b8921f0c62 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -198,7 +198,7 @@ u8 GetMoveDirectionFastestAnimNum(u8); u8 GetLedgeJumpDirection(s16, s16, u8); void CameraObjectSetFollowedObjectId(u8 objectId); u16 GetObjectPaletteTag(u8 palSlot); -void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible); +void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible); s16 GetFigure8XOffset(s16 idx); s16 GetFigure8YOffset(s16 idx); void CameraObjectReset2(void); diff --git a/include/field_weather.h b/include/field_weather.h index 69686498310b..9c6a4ab7add9 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -160,13 +160,12 @@ void DroughtStateRun(void); void Weather_SetBlendCoeffs(u8 eva, u8 evb); void Weather_SetTargetBlendCoeffs(u8 eva, u8 evb, int delay); bool8 Weather_UpdateBlend(void); -void sub_80AC274(u8 a); u8 GetCurrentWeather(void); void SetRainStrengthFromSoundEffect(u16 soundEffect); void PlayRainStoppingSoundEffect(void); u8 IsWeatherChangeComplete(void); void SetWeatherScreenFadeOut(void); -void sub_80AC3E4(void); +void SetWeatherPalStateIdle(void); void PreservePaletteInWeather(u8 preservedPalIndex); void ResetPreservedPalettesInWeather(void); diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 1a7d08db2721..8ab6268fc202 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -7919,11 +7919,11 @@ void GroundEffect_SpawnOnTallGrass(struct ObjectEvent *objEvent, struct Sprite * gFieldEffectArguments[0] = objEvent->currentCoords.x; gFieldEffectArguments[1] = objEvent->currentCoords.y; gFieldEffectArguments[2] = objEvent->previousElevation; - gFieldEffectArguments[3] = 2; + gFieldEffectArguments[3] = 2; // priority gFieldEffectArguments[4] = objEvent->localId << 8 | objEvent->mapNum; gFieldEffectArguments[5] = objEvent->mapGroup; gFieldEffectArguments[6] = (u8)gSaveBlock1Ptr->location.mapNum << 8 | (u8)gSaveBlock1Ptr->location.mapGroup; - gFieldEffectArguments[7] = 1; + gFieldEffectArguments[7] = TRUE; // skip to end of anim FieldEffectStart(FLDEFF_TALL_GRASS); } @@ -7932,11 +7932,11 @@ void GroundEffect_StepOnTallGrass(struct ObjectEvent *objEvent, struct Sprite *s gFieldEffectArguments[0] = objEvent->currentCoords.x; gFieldEffectArguments[1] = objEvent->currentCoords.y; gFieldEffectArguments[2] = objEvent->previousElevation; - gFieldEffectArguments[3] = 2; + gFieldEffectArguments[3] = 2; // priority gFieldEffectArguments[4] = objEvent->localId << 8 | objEvent->mapNum; gFieldEffectArguments[5] = objEvent->mapGroup; gFieldEffectArguments[6] = (u8)gSaveBlock1Ptr->location.mapNum << 8 | (u8)gSaveBlock1Ptr->location.mapGroup; - gFieldEffectArguments[7] = 0; + gFieldEffectArguments[7] = FALSE; // don't skip to end of anim FieldEffectStart(FLDEFF_TALL_GRASS); } @@ -8621,7 +8621,7 @@ bool8 SpriteAnimEnded(struct Sprite *sprite) return FALSE; } -void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible) +void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible) { u16 x, y; s16 x2, y2; @@ -8642,9 +8642,9 @@ void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible) x2 = x - (sprite->centerToCornerVecX >> 1); y2 = y - (sprite->centerToCornerVecY >> 1); - if ((s16)x > 255 || x2 < -16) + if ((s16)x >= DISPLAY_WIDTH + 16 || x2 < -16) sprite->invisible = TRUE; - if ((s16)y > 175 || y2 < -16) + if ((s16)y >= DISPLAY_HEIGHT + 16 || y2 < -16) sprite->invisible = TRUE; } @@ -8656,7 +8656,7 @@ static void UpdateObjectEventSprite(struct Sprite *sprite) { UpdateObjectEventSpritePosition(sprite); SetObjectSubpriorityByZCoord(sprite->data[1], sprite, 1); - UpdateObjectEventSpriteVisibility(sprite, sprite->tInvisible); + UpdateObjectEventSpriteInvisibility(sprite, sprite->tInvisible); } // Unused diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 67102a83b2a6..b263ecb88e00 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -19,13 +19,13 @@ static void UpdateObjectReflectionSprite(struct Sprite *); static void LoadObjectReflectionPalette(struct ObjectEvent *objectEvent, struct Sprite *sprite); static void LoadObjectHighBridgeReflectionPalette(struct ObjectEvent *, u8); static void LoadObjectRegularReflectionPalette(struct ObjectEvent *, u8); -static void sub_81561FC(struct Sprite *, u8, u8); +static void UpdateGrassFieldEffectSubpriority(struct Sprite *, u8, u8); static void FadeFootprintsTireTracks_Step0(struct Sprite *); static void FadeFootprintsTireTracks_Step1(struct Sprite *); static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *); -static void UpdateAshFieldEffect_Step0(struct Sprite *); -static void UpdateAshFieldEffect_Step1(struct Sprite *); -static void UpdateAshFieldEffect_Step2(struct Sprite *); +static void UpdateAshFieldEffect_Wait(struct Sprite *); +static void UpdateAshFieldEffect_Show(struct Sprite *); +static void UpdateAshFieldEffect_End(struct Sprite *); static void SynchroniseSurfAnim(struct ObjectEvent *, struct Sprite *); static void sub_81556E8(struct ObjectEvent *, struct Sprite *); static void CreateBobbingEffect(struct ObjectEvent *, struct Sprite *, struct Sprite *); @@ -273,6 +273,16 @@ void UpdateShadowFieldEffect(struct Sprite *sprite) } } +// Sprite data for FLDEFF_TALL_GRASS and FLDEFF_LONG_GRASS +#define sElevation data[0] +#define sX data[1] +#define sY data[2] +#define sMapNum data[3] // Lower 8 bits +#define sLocalId data[3] >> 8 // Upper 8 bits +#define sMapGroup data[4] +#define sCurrentMap data[5] +#define sObjectMoved data[7] + u32 FldEff_TallGrass(void) { s16 x; @@ -289,16 +299,15 @@ u32 FldEff_TallGrass(void) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.priority = gFieldEffectArguments[3]; - sprite->data[0] = gFieldEffectArguments[2]; - sprite->data[1] = gFieldEffectArguments[0]; - sprite->data[2] = gFieldEffectArguments[1]; - sprite->data[3] = gFieldEffectArguments[4]; - sprite->data[4] = gFieldEffectArguments[5]; - sprite->data[5] = gFieldEffectArguments[6]; + sprite->sElevation = gFieldEffectArguments[2]; + sprite->sX = gFieldEffectArguments[0]; + sprite->sY = gFieldEffectArguments[1]; + sprite->sMapNum = gFieldEffectArguments[4]; // Also sLocalId + sprite->sMapGroup = gFieldEffectArguments[5]; + sprite->sCurrentMap = gFieldEffectArguments[6]; + if (gFieldEffectArguments[7]) - { - SeekSpriteAnim(sprite, 4); - } + SeekSpriteAnim(sprite, 4); // Skip to end of anim } return 0; } @@ -312,37 +321,48 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite) u8 objectEventId; struct ObjectEvent *objectEvent; - mapNum = sprite->data[5] >> 8; - mapGroup = sprite->data[5]; + mapNum = sprite->sCurrentMap >> 8; + mapGroup = sprite->sCurrentMap; if (gCamera.active && (gSaveBlock1Ptr->location.mapNum != mapNum || gSaveBlock1Ptr->location.mapGroup != mapGroup)) { - sprite->data[1] -= gCamera.x; - sprite->data[2] -= gCamera.y; - sprite->data[5] = ((u8)gSaveBlock1Ptr->location.mapNum << 8) | (u8)gSaveBlock1Ptr->location.mapGroup; + sprite->sX -= gCamera.x; + sprite->sY -= gCamera.y; + sprite->sCurrentMap = ((u8)gSaveBlock1Ptr->location.mapNum << 8) | (u8)gSaveBlock1Ptr->location.mapGroup; } - localId = sprite->data[3] >> 8; - mapNum = sprite->data[3]; - mapGroup = sprite->data[4]; - metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->data[1], sprite->data[2]); - if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) || !MetatileBehavior_IsTallGrass(metatileBehavior) || (sprite->data[7] && sprite->animEnded)) + localId = sprite->sLocalId; + mapNum = sprite->sMapNum; + mapGroup = sprite->sMapGroup; + metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->sX, sprite->sY); + + if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) + || !MetatileBehavior_IsTallGrass(metatileBehavior) + || (sprite->sObjectMoved && sprite->animEnded)) { FieldEffectStop(sprite, FLDEFF_TALL_GRASS); } else { + // Check if the object that triggered the effect has moved away objectEvent = &gObjectEvents[objectEventId]; - if ((objectEvent->currentCoords.x != sprite->data[1] || objectEvent->currentCoords.y != sprite->data[2]) && (objectEvent->previousCoords.x != sprite->data[1] || objectEvent->previousCoords.y != sprite->data[2])) - sprite->data[7] = TRUE; + if ((objectEvent->currentCoords.x != sprite->sX + || objectEvent->currentCoords.y != sprite->sY) + && (objectEvent->previousCoords.x != sprite->sX + || objectEvent->previousCoords.y != sprite->sY)) + sprite->sObjectMoved = TRUE; + // Metatile behavior var re-used metatileBehavior = 0; if (sprite->animCmdIndex == 0) metatileBehavior = 4; - UpdateObjectEventSpriteVisibility(sprite, 0); - sub_81561FC(sprite, sprite->data[0], metatileBehavior); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); + UpdateGrassFieldEffectSubpriority(sprite, sprite->sElevation, metatileBehavior); } } +// Sprite data for FLDEFF_JUMP_TALL_GRASS and FLDEFF_JUMP_LONG_GRASS +#define sFldEff data[1] + u32 FldEff_JumpTallGrass(void) { u8 spriteId; @@ -355,8 +375,8 @@ u32 FldEff_JumpTallGrass(void) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.priority = gFieldEffectArguments[3]; - sprite->data[0] = gFieldEffectArguments[2]; - sprite->data[1] = FLDEFF_JUMP_TALL_GRASS; + sprite->sElevation = gFieldEffectArguments[2]; + sprite->sFldEff = FLDEFF_JUMP_TALL_GRASS; } return 0; } @@ -371,11 +391,14 @@ u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s if (gSprites[i].inUse) { sprite = &gSprites[i]; - if (sprite->callback == UpdateTallGrassFieldEffect && (x == sprite->data[1] && y == sprite->data[2]) && (localId == (u8)(sprite->data[3] >> 8) && mapNum == (sprite->data[3] & 0xFF) && mapGroup == sprite->data[4])) + if (sprite->callback == UpdateTallGrassFieldEffect + && (x == sprite->sX && y == sprite->sY) + && localId == (u8)(sprite->sLocalId) + && mapNum == (sprite->sMapNum & 0xFF) + && mapGroup == sprite->sMapGroup) return i; } } - return MAX_SPRITES; } @@ -395,16 +418,15 @@ u32 FldEff_LongGrass(void) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.priority = ZCoordToPriority(gFieldEffectArguments[2]); - sprite->data[0] = gFieldEffectArguments[2]; - sprite->data[1] = gFieldEffectArguments[0]; - sprite->data[2] = gFieldEffectArguments[1]; - sprite->data[3] = gFieldEffectArguments[4]; - sprite->data[4] = gFieldEffectArguments[5]; - sprite->data[5] = gFieldEffectArguments[6]; + sprite->sElevation = gFieldEffectArguments[2]; + sprite->sX = gFieldEffectArguments[0]; + sprite->sY = gFieldEffectArguments[1]; + sprite->sMapNum = gFieldEffectArguments[4]; // Also sLocalId + sprite->sMapGroup = gFieldEffectArguments[5]; + sprite->sCurrentMap = gFieldEffectArguments[6]; + if (gFieldEffectArguments[7]) - { - SeekSpriteAnim(sprite, 6); - } + SeekSpriteAnim(sprite, 6); // Skip to end of anim } return 0; } @@ -418,34 +440,47 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite) u8 objectEventId; struct ObjectEvent *objectEvent; - mapNum = sprite->data[5] >> 8; - mapGroup = sprite->data[5]; + mapNum = sprite->sCurrentMap >> 8; + mapGroup = sprite->sCurrentMap; if (gCamera.active && (gSaveBlock1Ptr->location.mapNum != mapNum || gSaveBlock1Ptr->location.mapGroup != mapGroup)) { - sprite->data[1] -= gCamera.x; - sprite->data[2] -= gCamera.y; - sprite->data[5] = ((u8)gSaveBlock1Ptr->location.mapNum << 8) | (u8)gSaveBlock1Ptr->location.mapGroup; + sprite->sX -= gCamera.x; + sprite->sY -= gCamera.y; + sprite->sCurrentMap = ((u8)gSaveBlock1Ptr->location.mapNum << 8) | (u8)gSaveBlock1Ptr->location.mapGroup; } - localId = sprite->data[3] >> 8; - mapNum = sprite->data[3]; - mapGroup = sprite->data[4]; + localId = sprite->sLocalId; + mapNum = sprite->sMapNum; + mapGroup = sprite->sMapGroup; metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->data[1], sprite->data[2]); - if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) || !MetatileBehavior_IsLongGrass(metatileBehavior) || (sprite->data[7] && sprite->animEnded)) + if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) + || !MetatileBehavior_IsLongGrass(metatileBehavior) + || (sprite->sObjectMoved && sprite->animEnded)) { FieldEffectStop(sprite, FLDEFF_LONG_GRASS); } else { + // Check if the object that triggered the effect has moved away objectEvent = &gObjectEvents[objectEventId]; - if ((objectEvent->currentCoords.x != sprite->data[1] || objectEvent->currentCoords.y != sprite->data[2]) && (objectEvent->previousCoords.x != sprite->data[1] || objectEvent->previousCoords.y != sprite->data[2])) - { - sprite->data[7] = TRUE; - } - UpdateObjectEventSpriteVisibility(sprite, 0); - sub_81561FC(sprite, sprite->data[0], 0); + if ((objectEvent->currentCoords.x != sprite->data[1] + || objectEvent->currentCoords.y != sprite->data[2]) + && (objectEvent->previousCoords.x != sprite->data[1] + || objectEvent->previousCoords.y != sprite->data[2])) + sprite->sObjectMoved = TRUE; + + UpdateObjectEventSpriteInvisibility(sprite, FALSE); + UpdateGrassFieldEffectSubpriority(sprite, sprite->sElevation, 0); } } +#undef sX +#undef sY +#undef sMapNum +#undef sLocalId +#undef sMapGroup +#undef sCurrentMap +#undef sObjectMoved + u32 FldEff_JumpLongGrass(void) { u8 spriteId; @@ -458,8 +493,8 @@ u32 FldEff_JumpLongGrass(void) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.priority = gFieldEffectArguments[3]; - sprite->data[0] = gFieldEffectArguments[2]; - sprite->data[1] = FLDEFF_JUMP_LONG_GRASS; + sprite->sElevation = gFieldEffectArguments[2]; + sprite->sFldEff = FLDEFF_JUMP_LONG_GRASS; } return 0; } @@ -520,7 +555,7 @@ void UpdateShortGrassFieldEffect(struct Sprite *sprite) sprite->pos2.y = (graphicsInfo->height >> 1) - 8; sprite->subpriority = linkedSprite->subpriority - 1; sprite->oam.priority = linkedSprite->oam.priority; - UpdateObjectEventSpriteVisibility(sprite, linkedSprite->invisible); + UpdateObjectEventSpriteInvisibility(sprite, linkedSprite->invisible); } } @@ -594,14 +629,14 @@ static void FadeFootprintsTireTracks_Step0(struct Sprite *sprite) if (++sprite->data[1] > 40) sprite->data[0] = 1; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); } static void FadeFootprintsTireTracks_Step1(struct Sprite *sprite) { sprite->invisible ^= 1; sprite->data[1]++; - UpdateObjectEventSpriteVisibility(sprite, sprite->invisible); + UpdateObjectEventSpriteInvisibility(sprite, sprite->invisible); if (sprite->data[1] > 56) { FieldEffectStop(sprite, sprite->data[7]); @@ -648,7 +683,7 @@ void UpdateSplashFieldEffect(struct Sprite *sprite) { sprite->pos1.x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x; sprite->pos1.y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); } } @@ -734,7 +769,7 @@ static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite) sprite->pos1.x = linkedSprite->pos1.x; sprite->pos1.y = linkedSprite->pos1.y; sprite->subpriority = linkedSprite->subpriority; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (objectEvent->currentCoords.x != sprite->data[3] || objectEvent->currentCoords.y != sprite->data[4]) { sprite->data[3] = objectEvent->currentCoords.x; @@ -804,7 +839,7 @@ void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite) sprite->pos1.x = linkedSprite->pos1.x; sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 8; sprite->subpriority = linkedSprite->subpriority - 1; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); } } @@ -876,14 +911,21 @@ u32 FldEff_WaterSurfacing(void) return 0; } -void StartAshFieldEffect(s16 x, s16 y, u16 metatileId, s16 d) +// Sprite data for FLDEFF_ASH +#define sState data[0] +#define sX data[1] +#define sY data[2] +#define sMetatileId data[3] +#define sDelay data[4] + +void StartAshFieldEffect(s16 x, s16 y, u16 metatileId, s16 delay) { gFieldEffectArguments[0] = x; gFieldEffectArguments[1] = y; - gFieldEffectArguments[2] = 0x52; - gFieldEffectArguments[3] = 1; + gFieldEffectArguments[2] = 82; // subpriority + gFieldEffectArguments[3] = 1; // priority gFieldEffectArguments[4] = metatileId; - gFieldEffectArguments[5] = d; + gFieldEffectArguments[5] = delay; FieldEffectStart(FLDEFF_ASH); } @@ -903,50 +945,56 @@ u32 FldEff_Ash(void) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.priority = gFieldEffectArguments[3]; - sprite->data[1] = gFieldEffectArguments[0]; - sprite->data[2] = gFieldEffectArguments[1]; - sprite->data[3] = gFieldEffectArguments[4]; - sprite->data[4] = gFieldEffectArguments[5]; + sprite->sX = gFieldEffectArguments[0]; + sprite->sY = gFieldEffectArguments[1]; + sprite->sMetatileId = gFieldEffectArguments[4]; + sprite->sDelay = gFieldEffectArguments[5]; } return 0; } void (*const gAshFieldEffectFuncs[])(struct Sprite *) = { - UpdateAshFieldEffect_Step0, - UpdateAshFieldEffect_Step1, - UpdateAshFieldEffect_Step2 + UpdateAshFieldEffect_Wait, + UpdateAshFieldEffect_Show, + UpdateAshFieldEffect_End }; void UpdateAshFieldEffect(struct Sprite *sprite) { - gAshFieldEffectFuncs[sprite->data[0]](sprite); + gAshFieldEffectFuncs[sprite->sState](sprite); } -static void UpdateAshFieldEffect_Step0(struct Sprite *sprite) +static void UpdateAshFieldEffect_Wait(struct Sprite *sprite) { sprite->invisible = TRUE; sprite->animPaused = TRUE; - if (--sprite->data[4] == 0) - sprite->data[0] = 1; + if (--sprite->sDelay == 0) + sprite->sState = 1; } -static void UpdateAshFieldEffect_Step1(struct Sprite *sprite) +static void UpdateAshFieldEffect_Show(struct Sprite *sprite) { sprite->invisible = FALSE; sprite->animPaused = FALSE; - MapGridSetMetatileIdAt(sprite->data[1], sprite->data[2], sprite->data[3]); - CurrentMapDrawMetatileAt(sprite->data[1], sprite->data[2]); + MapGridSetMetatileIdAt(sprite->sX, sprite->sY, sprite->sMetatileId); + CurrentMapDrawMetatileAt(sprite->sX, sprite->sY); gObjectEvents[gPlayerAvatar.objectEventId].triggerGroundEffectsOnMove = TRUE; - sprite->data[0] = 2; + sprite->sState = 2; } -static void UpdateAshFieldEffect_Step2(struct Sprite *sprite) +static void UpdateAshFieldEffect_End(struct Sprite *sprite) { - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (sprite->animEnded) FieldEffectStop(sprite, FLDEFF_ASH); } +#undef sState +#undef sX +#undef sY +#undef sMetatileId +#undef sDelay + u32 FldEff_SurfBlob(void) { u8 spriteId; @@ -1048,7 +1096,7 @@ void sub_81556E8(struct ObjectEvent *objectEvent, struct Sprite *sprite) MoveCoords(i, &x, &y); if (MapGridGetZCoordAt(x, y) == 3) { - sprite->data[5] ++; + sprite->data[5]++; break; } } @@ -1182,7 +1230,7 @@ void UpdateSandPileFieldEffect(struct Sprite *sprite) sprite->pos1.x = x; sprite->pos1.y = y; sprite->subpriority = gSprites[gObjectEvents[objectEventId].spriteId].subpriority; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); } } @@ -1207,7 +1255,7 @@ void UpdateBubblesFieldEffect(struct Sprite *sprite) sprite->data[0] += 0x80; sprite->data[0] &= 0x100; sprite->pos1.y -= sprite->data[0] >> 8; - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (sprite->invisible || sprite->animEnded) { FieldEffectStop(sprite, FLDEFF_BUBBLES); @@ -1551,16 +1599,17 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) #undef sAnimCounter #undef sAnimState +// Used by FLDEFF_JUMP_TALL_GRASS and FLDEFF_JUMP_LONG_GRASS void UpdateJumpImpactEffect(struct Sprite *sprite) { if (sprite->animEnded) { - FieldEffectStop(sprite, sprite->data[1]); + FieldEffectStop(sprite, sprite->sFldEff); } else { - UpdateObjectEventSpriteVisibility(sprite, FALSE); - SetObjectSubpriorityByZCoord(sprite->data[0], sprite, 0); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); + SetObjectSubpriorityByZCoord(sprite->sElevation, sprite, 0); } } @@ -1569,10 +1618,10 @@ void WaitFieldEffectSpriteAnim(struct Sprite *sprite) if (sprite->animEnded) FieldEffectStop(sprite, sprite->data[0]); else - UpdateObjectEventSpriteVisibility(sprite, FALSE); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); } -static void sub_81561FC(struct Sprite *sprite, u8 z, u8 offset) +static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 offset) { u8 i; s16 var, xhi, lyhi, yhi, ylo; @@ -1606,17 +1655,17 @@ static void sub_81561FC(struct Sprite *sprite, u8 z, u8 offset) } // Unused data. Feel free to remove. -static const u8 gUnknown_085CDC6E[] = -{ - 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x01, 0x02, 0x02, - 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x02, 0x01, 0x01, 0x02, 0x01, 0x01, 0x02, - 0x01, 0x01, 0x02, 0x01, 0x01, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, - 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, - 0x00, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00 +static const u8 sUnusedData[] = +{ + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, + 1, 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 2, + 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, + 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, + 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, + 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -1, 0, 0, -1, 0, 0, -1, 0, -1, -1, 0, -1, + -1, 0, -1, -1, -1, -1, -1, -1, -1, -2, 0, 0 }; diff --git a/src/field_weather.c b/src/field_weather.c index 6fc1d331a3c8..4b9c6a863021 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -990,38 +990,39 @@ bool8 Weather_UpdateBlend(void) return FALSE; } -void sub_80AC274(u8 a) +// Unused. Uses the same numbering scheme as the coord events +static void SetFieldWeather(u8 weather) { - switch (a) + switch (weather) { - case 1: + case COORD_EVENT_WEATHER_SUNNY_CLOUDS: SetWeather(WEATHER_SUNNY_CLOUDS); break; - case 2: + case COORD_EVENT_WEATHER_SUNNY: SetWeather(WEATHER_SUNNY); break; - case 3: + case COORD_EVENT_WEATHER_RAIN: SetWeather(WEATHER_RAIN); break; - case 4: + case COORD_EVENT_WEATHER_SNOW: SetWeather(WEATHER_SNOW); break; - case 5: + case COORD_EVENT_WEATHER_RAIN_THUNDERSTORM: SetWeather(WEATHER_RAIN_THUNDERSTORM); break; - case 6: + case COORD_EVENT_WEATHER_FOG_HORIZONTAL: SetWeather(WEATHER_FOG_HORIZONTAL); break; - case 7: + case COORD_EVENT_WEATHER_FOG_DIAGONAL: SetWeather(WEATHER_FOG_DIAGONAL); break; - case 8: + case COORD_EVENT_WEATHER_VOLCANIC_ASH: SetWeather(WEATHER_VOLCANIC_ASH); break; - case 9: + case COORD_EVENT_WEATHER_SANDSTORM: SetWeather(WEATHER_SANDSTORM); break; - case 10: + case COORD_EVENT_WEATHER_SHADE: SetWeather(WEATHER_SHADE); break; } @@ -1085,7 +1086,7 @@ void SetWeatherScreenFadeOut(void) gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT; } -void sub_80AC3E4(void) +void SetWeatherPalStateIdle(void) { gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } diff --git a/src/fldeff_sweetscent.c b/src/fldeff_sweetscent.c index a9d81501f384..55463440c8b4 100644 --- a/src/fldeff_sweetscent.c +++ b/src/fldeff_sweetscent.c @@ -92,7 +92,7 @@ static void FailSweetScentEncounter(u8 taskId) if (!gPaletteFade.active) { CpuFastSet(gPaletteDecompressionBuffer, gPlttBufferUnfaded, 0x100); - sub_80AC3E4(); + SetWeatherPalStateIdle(); ScriptContext1_SetupScript(EventScript_FailSweetScent); DestroyTask(taskId); } diff --git a/src/overworld.c b/src/overworld.c index 9d5e40fb37bb..3dda9b6657a4 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -3198,7 +3198,7 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite) else StartSpriteAnimIfDifferent(sprite, GetMoveDirectionAnimNum(linkDirection(objEvent))); - UpdateObjectEventSpriteVisibility(sprite, 0); + UpdateObjectEventSpriteInvisibility(sprite, 0); if (objEvent->triggerGroundEffectsOnMove) { sprite->invisible = ((sprite->data[7] & 4) >> 2); From 553fe6239ab55ac456e80528bfe3a1697a05c2ed Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 5 Apr 2021 10:32:33 -0400 Subject: [PATCH 091/762] Document more field effects --- include/field_effect_helpers.h | 22 +++-- src/field_effect.c | 10 +-- src/field_effect_helpers.c | 142 +++++++++++++++++++-------------- src/field_player_avatar.c | 12 +-- 4 files changed, 108 insertions(+), 78 deletions(-) diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index 9b7b6ffd5c4d..9795d96e8687 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -1,16 +1,22 @@ #ifndef GUARD_FIELD_EFFECT_HELPERS_H #define GUARD_FIELD_EFFECT_HELPERS_H -// Exported type declarations +// States for bobbing up and down while surfing +enum { + // No bobbing + BOB_NONE, + // Both the surf blob/mon should bob up and down + BOB_PLAYER_AND_MON, + // Only the surf blob/mon should bob up and down + // For when the player has jumped/flown off + BOB_JUST_MON, +}; -// Exported RAM declarations - -// Exported ROM declarations u8 CreateWarpArrowSprite(void); -u8 sub_8155800(u8 oldSpriteId); -void SetSurfBobState(u8 spriteId, u8 value); -void SetSurfBobWhileFlyingOutState(u8 spriteId, u8 value); -void SetSurfBobWhileFishingState(u8 spriteId, u8 value, s16 data1); +u8 StartUnderwaterSurfBlobBobbing(u8 oldSpriteId); +void SetSurfBlob_BobState(u8 spriteId, u8 state); +void SetSurfBlob_DontSyncAnim(u8 spriteId, bool8 dontSync); +void SetSurfBlob_PlayerOffset(u8 spriteId, bool8 hasOffset, s16 offset); bool8 sub_8155DA0(struct ObjectEvent *); void sub_8155D78(struct ObjectEvent *); void StartAshFieldEffect(s16, s16, u16, s16); diff --git a/src/field_effect.c b/src/field_effect.c index 445827390a20..8152f19bb84c 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3053,7 +3053,7 @@ static void SurfFieldEffect_End(struct Task *task) gPlayerAvatar.preventStep = FALSE; gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_5; ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->movementDirection)); - SetSurfBobState(objectEvent->fieldEffectSpriteId, 1); + SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_PLAYER_AND_MON); UnfreezeObjectEvents(); ScriptContext2_Disable(); FieldEffectActiveListRemove(FLDEFF_USE_SURF); @@ -3204,8 +3204,8 @@ static void FlyOutFieldEffect_BirdLeaveBall(struct Task *task) struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; if (task->tAvatarFlags & PLAYER_AVATAR_FLAG_SURFING) { - SetSurfBobState(objectEvent->fieldEffectSpriteId, 2); - SetSurfBobWhileFlyingOutState(objectEvent->fieldEffectSpriteId, 0); + SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_JUST_MON); + SetSurfBlob_DontSyncAnim(objectEvent->fieldEffectSpriteId, FALSE); } task->tBirdSpriteId = CreateFlyBirdSprite(); // Does "leave ball" animation by default task->tState++; @@ -3473,7 +3473,7 @@ static void FlyInFieldEffect_BirdSwoopDown(struct Task *task) SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_ON_FOOT); if (task->tAvatarFlags & PLAYER_AVATAR_FLAG_SURFING) { - SetSurfBobState(objectEvent->fieldEffectSpriteId, 0); + SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_NONE); } ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING)); CameraObjectReset2(); @@ -3582,7 +3582,7 @@ static void FlyInFieldEffect_End(struct Task *task) if (task->tAvatarFlags & PLAYER_AVATAR_FLAG_SURFING) { state = PLAYER_AVATAR_STATE_SURFING; - SetSurfBobState(objectEvent->fieldEffectSpriteId, 1); + SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_PLAYER_AND_MON); } ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(state)); ObjectEventTurn(objectEvent, DIR_SOUTH); diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index b263ecb88e00..49116b5d3eb2 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -27,9 +27,9 @@ static void UpdateAshFieldEffect_Wait(struct Sprite *); static void UpdateAshFieldEffect_Show(struct Sprite *); static void UpdateAshFieldEffect_End(struct Sprite *); static void SynchroniseSurfAnim(struct ObjectEvent *, struct Sprite *); -static void sub_81556E8(struct ObjectEvent *, struct Sprite *); -static void CreateBobbingEffect(struct ObjectEvent *, struct Sprite *, struct Sprite *); -static void sub_8155850(struct Sprite *); +static void SynchroniseSurfPosition(struct ObjectEvent *, struct Sprite *); +static void UpdateBobbingEffect(struct ObjectEvent *, struct Sprite *, struct Sprite *); +static void SpriteCB_UnderwaterSurfBlob(struct Sprite *); static u32 ShowDisguiseFieldEffect(u8, u8, u8); #define sReflectionObjEventId data[0] @@ -995,6 +995,12 @@ static void UpdateAshFieldEffect_End(struct Sprite *sprite) #undef sMetatileId #undef sDelay +// Sprite data for FLDEFF_SURF_BLOB +#define tBitfield data[0] +#define tPlayerOffset data[1] +#define tPlayerObjId data[2] + + u32 FldEff_SurfBlob(void) { u8 spriteId; @@ -1002,12 +1008,12 @@ u32 FldEff_SurfBlob(void) SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8); spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_SURF_BLOB], gFieldEffectArguments[0], gFieldEffectArguments[1], 0x96); - if (spriteId !=MAX_SPRITES) + if (spriteId != MAX_SPRITES) { sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; sprite->oam.paletteNum = 0; - sprite->data[2] = gFieldEffectArguments[2]; + sprite->tPlayerObjId = gFieldEffectArguments[2]; sprite->data[3] = -1; sprite->data[6] = -1; sprite->data[7] = -1; @@ -1016,53 +1022,55 @@ u32 FldEff_SurfBlob(void) return spriteId; } -// States for bobbing up and down while surfing -void SetSurfBobState(u8 spriteId, u8 value) + +void SetSurfBlob_BobState(u8 spriteId, u8 state) { - gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF) | (value & 0xF); + gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF) | (state & 0xF); } -void SetSurfBobWhileFlyingOutState(u8 spriteId, u8 value) +void SetSurfBlob_DontSyncAnim(u8 spriteId, bool8 dontSync) { - gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF0) | ((value & 0xF) << 4); + gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF0) | ((dontSync & 0xF) << 4); } -void SetSurfBobWhileFishingState(u8 spriteId, u8 value, s16 data1) +void SetSurfBlob_PlayerOffset(u8 spriteId, bool8 hasOffset, s16 offset) { - gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF00) | ((value & 0xF) << 8); - gSprites[spriteId].data[1] = data1; + gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF00) | ((hasOffset & 0xF) << 8); + gSprites[spriteId].tPlayerOffset = offset; } -static u8 GetSurfBobState(struct Sprite *sprite) +static u8 GetSurfBlob_BobState(struct Sprite *sprite) { return sprite->data[0] & 0xF; } -static u8 GetSurfBobWhileFlyingOutState(struct Sprite *sprite) +// Never TRUE +static u8 GetSurfBlob_DontSyncAnim(struct Sprite *sprite) { return (sprite->data[0] & 0xF0) >> 4; } -static u8 GetSurfBobWhileFishingState(struct Sprite *sprite) +static u8 GetSurfBlob_HasPlayerOffset(struct Sprite *sprite) { return (sprite->data[0] & 0xF00) >> 8; } void UpdateSurfBlobFieldEffect(struct Sprite *sprite) { - struct ObjectEvent *objectEvent; - struct Sprite *linkedSprite; + struct ObjectEvent *playerObj; + struct Sprite *playerSprite; - objectEvent = &gObjectEvents[sprite->data[2]]; - linkedSprite = &gSprites[objectEvent->spriteId]; - SynchroniseSurfAnim(objectEvent, sprite); - sub_81556E8(objectEvent, sprite); - CreateBobbingEffect(objectEvent, linkedSprite, sprite); - sprite->oam.priority = linkedSprite->oam.priority; + playerObj = &gObjectEvents[sprite->tPlayerObjId]; + playerSprite = &gSprites[playerObj->spriteId]; + SynchroniseSurfAnim(playerObj, sprite); + SynchroniseSurfPosition(playerObj, sprite); + UpdateBobbingEffect(playerObj, playerSprite, sprite); + sprite->oam.priority = playerSprite->oam.priority; } -static void SynchroniseSurfAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static void SynchroniseSurfAnim(struct ObjectEvent *playerObj, struct Sprite *sprite) { + // Indexes into sAnimTable_SurfBlob u8 surfBlobDirectionAnims[] = { [DIR_NONE] = 0, [DIR_SOUTH] = 0, @@ -1075,15 +1083,15 @@ static void SynchroniseSurfAnim(struct ObjectEvent *objectEvent, struct Sprite * [DIR_NORTHEAST] = 1, }; - if (GetSurfBobWhileFlyingOutState(sprite) == 0) - StartSpriteAnimIfDifferent(sprite, surfBlobDirectionAnims[objectEvent->movementDirection]); + if (!GetSurfBlob_DontSyncAnim(sprite)) + StartSpriteAnimIfDifferent(sprite, surfBlobDirectionAnims[playerObj->movementDirection]); } -void sub_81556E8(struct ObjectEvent *objectEvent, struct Sprite *sprite) +void SynchroniseSurfPosition(struct ObjectEvent *playerObj, struct Sprite *sprite) { u8 i; - s16 x = objectEvent->currentCoords.x; - s16 y = objectEvent->currentCoords.y; + s16 x = playerObj->currentCoords.x; + s16 y = playerObj->currentCoords.y; s32 spriteY = sprite->pos2.y; if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7])) @@ -1103,61 +1111,74 @@ void sub_81556E8(struct ObjectEvent *objectEvent, struct Sprite *sprite) } } -static void CreateBobbingEffect(struct ObjectEvent *objectEvent, struct Sprite *linkedSprite, struct Sprite *sprite) +static void UpdateBobbingEffect(struct ObjectEvent *playerObj, struct Sprite *playerSprite, struct Sprite *sprite) { - u16 unk_085CDC6A[] = {3, 7}; - u8 bobState = GetSurfBobState(sprite); - if (bobState != 0) + u16 intervals[] = {3, 7}; + u8 bobState = GetSurfBlob_BobState(sprite); + if (bobState != BOB_NONE) { - if (((u16)(++ sprite->data[4]) & unk_085CDC6A[sprite->data[5]]) == 0) + // Update bobbing position of surf blob + if (((u16)(++sprite->data[4]) & intervals[sprite->data[5]]) == 0) { sprite->pos2.y += sprite->data[3]; } - if ((sprite->data[4] & 0x0F) == 0) + if ((sprite->data[4] & 15) == 0) { sprite->data[3] = -sprite->data[3]; } - if (bobState != 2) + if (bobState != BOB_JUST_MON) { - if (GetSurfBobWhileFishingState(sprite) == 0) - linkedSprite->pos2.y = sprite->pos2.y; + // Update bobbing position of player + if (!GetSurfBlob_HasPlayerOffset(sprite)) + playerSprite->pos2.y = sprite->pos2.y; else - linkedSprite->pos2.y = sprite->data[1] + sprite->pos2.y; - sprite->pos1.x = linkedSprite->pos1.x; - sprite->pos1.y = linkedSprite->pos1.y + 8; + playerSprite->pos2.y = sprite->tPlayerOffset + sprite->pos2.y; + sprite->pos1.x = playerSprite->pos1.x; + sprite->pos1.y = playerSprite->pos1.y + 8; } } } -u8 sub_8155800(u8 oldSpriteId) +#define sSpriteId data[0] +#define sBobY data[1] +#define sTimer data[2] + +u8 StartUnderwaterSurfBlobBobbing(u8 blobSpriteId) { u8 spriteId; struct Sprite *sprite; + // Create a dummy sprite with its own callback + // that tracks the actual surf blob sprite and + // makes it bob up and down underwater spriteId = CreateSpriteAtEnd(&gDummySpriteTemplate, 0, 0, -1); sprite = &gSprites[spriteId]; - sprite->callback = sub_8155850; + sprite->callback = SpriteCB_UnderwaterSurfBlob; sprite->invisible = TRUE; - sprite->data[0] = oldSpriteId; - sprite->data[1] = 1; + sprite->sSpriteId = blobSpriteId; + sprite->sBobY = 1; return spriteId; } -static void sub_8155850(struct Sprite *sprite) +static void SpriteCB_UnderwaterSurfBlob(struct Sprite *sprite) { - struct Sprite *oldSprite; + struct Sprite *blobSprite; - oldSprite = &gSprites[sprite->data[0]]; - if (((sprite->data[2]++) & 0x03) == 0) + blobSprite = &gSprites[sprite->sSpriteId]; + if (((sprite->sTimer++) & 3) == 0) { - oldSprite->pos2.y += sprite->data[1]; + blobSprite->pos2.y += sprite->sBobY; } - if ((sprite->data[2] & 0x0F) == 0) + if ((sprite->sTimer & 15) == 0) { - sprite->data[1] = -sprite->data[1]; + sprite->sBobY = -sprite->sBobY; } } +#undef sSpriteId +#undef sBobY +#undef sTimer + u32 FldEff_Dust(void) { u8 spriteId; @@ -1397,24 +1418,27 @@ u32 FldEff_Sparkle(void) return 0; } +#define sFinished data[0] +#define sEndTimer data[1] + void UpdateSparkleFieldEffect(struct Sprite *sprite) { - if (sprite->data[0] == 0) + if (!sprite->sFinished) { if (sprite->animEnded) { sprite->invisible = TRUE; - sprite->data[0]++; + sprite->sFinished++; } - - if (sprite->data[0] == 0) - return; } - if (++sprite->data[1] > 34) + if (sprite->sFinished && ++sprite->sEndTimer > 34) FieldEffectStop(sprite, FLDEFF_SPARKLE); } +#undef sFinished +#undef sEndTimer + #define sTimer data[0] #define sState data[2] #define sStartY data[4] diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 4f85ad628b60..94325bf341b3 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -863,7 +863,7 @@ static void PlayerAvatarTransition_Surfing(struct ObjectEvent *objEvent) gFieldEffectArguments[2] = gPlayerAvatar.objectEventId; spriteId = FieldEffectStart(FLDEFF_SURF_BLOB); objEvent->fieldEffectSpriteId = spriteId; - SetSurfBobState(spriteId, 1); + SetSurfBlob_BobState(spriteId, BOB_PLAYER_AND_MON); } static void PlayerAvatarTransition_Underwater(struct ObjectEvent *objEvent) @@ -871,7 +871,7 @@ static void PlayerAvatarTransition_Underwater(struct ObjectEvent *objEvent) ObjectEventSetGraphicsId(objEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_UNDERWATER)); ObjectEventTurn(objEvent, objEvent->movementDirection); SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_UNDERWATER); - objEvent->fieldEffectSpriteId = sub_8155800(objEvent->spriteId); + objEvent->fieldEffectSpriteId = StartUnderwaterSurfBlobBobbing(objEvent->spriteId); } static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *objEvent) @@ -1646,7 +1646,7 @@ static void Task_StopSurfingInit(u8 taskId) if (!ObjectEventClearHeldMovementIfFinished(playerObjEvent)) return; } - SetSurfBobState(playerObjEvent->fieldEffectSpriteId, 2); + SetSurfBlob_BobState(playerObjEvent->fieldEffectSpriteId, BOB_JUST_MON); ObjectEventSetHeldMovement(playerObjEvent, GetJumpSpecialMovementAction((u8)gTasks[taskId].data[0])); gTasks[taskId].func = Task_WaitStopSurfing; } @@ -1932,7 +1932,7 @@ static bool8 Fishing_StartEncounter(struct Task *task) ObjectEventSetGraphicsId(playerObjEvent, task->tPlayerGfxId); ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) - SetSurfBobWhileFishingState(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0); + SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0); gSprites[gPlayerAvatar.spriteId].pos2.x = 0; gSprites[gPlayerAvatar.spriteId].pos2.y = 0; ClearDialogWindowAndFrame(0, TRUE); @@ -1989,7 +1989,7 @@ static bool8 Fishing_PutRodAway(struct Task *task) ObjectEventSetGraphicsId(playerObjEvent, task->tPlayerGfxId); ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) - SetSurfBobWhileFishingState(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0); + SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0); gSprites[gPlayerAvatar.spriteId].pos2.x = 0; gSprites[gPlayerAvatar.spriteId].pos2.y = 0; task->tStep++; @@ -2048,7 +2048,7 @@ static void AlignFishingAnimationFrames(void) if (animType == 10 || animType == 11) playerSprite->pos2.y = 8; if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) - SetSurfBobWhileFishingState(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 1, playerSprite->pos2.y); + SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, TRUE, playerSprite->pos2.y); } void SetSpinStartFacingDir(u8 direction) From 806abe2999ebb94b544c2d1db961fcec66c16537 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 5 Apr 2021 19:52:35 -0400 Subject: [PATCH 092/762] Document some objev anims, make objevgfx info static --- include/event_object_movement.h | 1 - src/data/field_effects/field_effect_objects.h | 12 +- .../berry_tree_graphics_tables.h | 146 ++-- src/data/object_events/object_event_anims.h | 809 +++++++++--------- .../object_event_graphics_info.h | 490 +++++------ .../object_events/object_event_pic_tables.h | 438 +++++----- .../object_events/object_event_subsprites.h | 166 ++-- src/event_object_movement.c | 2 + 8 files changed, 1035 insertions(+), 1029 deletions(-) diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 79b8921f0c62..446d0dd4e566 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -65,7 +65,6 @@ struct LockedAnimObjectEvents u8 count; }; -extern const struct SpriteFrameImage gObjectEventPicTable_PechaBerryTree[]; extern const struct OamData gObjectEventBaseOam_32x8; extern const struct OamData gObjectEventBaseOam_32x32; extern const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[]; diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 4fc3ecff69c0..54145efbcc5f 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1263,16 +1263,16 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle = { const struct SpritePalette gSpritePalette_SmallSparkle = {gFieldEffectPal_SmallSparkle, FLDEFF_PAL_TAG_SMALL_SPARKLE}; -static const union AnimCmd sAnim_Rayquaza[] = { +static const union AnimCmd sAnim_RayquazaSpotlightEffect[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd *const sAnimTable_Rayquaza[] = { - sAnim_Rayquaza, +static const union AnimCmd *const sAnimTable_RayquazaSpotlightEffect[] = { + sAnim_RayquazaSpotlightEffect, }; -const struct SpriteFrameImage sPicTable_Rayquaza[] = { +const struct SpriteFrameImage sPicTable_RayquazaSpotlightEffect[] = { overworld_frame(gObjectEventPic_Rayquaza, 4, 4, 0), }; @@ -1280,8 +1280,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza = { .tileTag = 0xFFFF, .paletteTag = 0xFFFF, .oam = &gObjectEventBaseOam_32x32, - .anims = sAnimTable_Rayquaza, - .images = sPicTable_Rayquaza, + .anims = sAnimTable_RayquazaSpotlightEffect, + .images = sPicTable_RayquazaSpotlightEffect, .affineAnims = gDummySpriteAffineAnimTable, .callback = UpdateRayquazaSpotlightEffect, }; diff --git a/src/data/object_events/berry_tree_graphics_tables.h b/src/data/object_events/berry_tree_graphics_tables.h index d558b583f8ba..390c82f95507 100755 --- a/src/data/object_events/berry_tree_graphics_tables.h +++ b/src/data/object_events/berry_tree_graphics_tables.h @@ -1,4 +1,4 @@ -const struct SpriteFrameImage gObjectEventPicTable_PechaBerryTree[] = { +static const struct SpriteFrameImage sPicTable_PechaBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -12,7 +12,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PechaBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Pecha[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_KelpsyBerryTree[] = { +static const struct SpriteFrameImage sPicTable_KelpsyBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -26,7 +26,7 @@ const struct SpriteFrameImage gObjectEventPicTable_KelpsyBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Kelpsy[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_WepearBerryTree[] = { +static const struct SpriteFrameImage sPicTable_WepearBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -40,7 +40,7 @@ const struct SpriteFrameImage gObjectEventPicTable_WepearBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Wepear[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_IapapaBerryTree[] = { +static const struct SpriteFrameImage sPicTable_IapapaBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -54,7 +54,7 @@ const struct SpriteFrameImage gObjectEventPicTable_IapapaBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Iapapa[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_CheriBerryTree[] = { +static const struct SpriteFrameImage sPicTable_CheriBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -68,7 +68,7 @@ const struct SpriteFrameImage gObjectEventPicTable_CheriBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Cheri[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_FigyBerryTree[] = { +static const struct SpriteFrameImage sPicTable_FigyBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -82,7 +82,7 @@ const struct SpriteFrameImage gObjectEventPicTable_FigyBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Figy[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_MagoBerryTree[] = { +static const struct SpriteFrameImage sPicTable_MagoBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -96,7 +96,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MagoBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Mago[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_LumBerryTree[] = { +static const struct SpriteFrameImage sPicTable_LumBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -110,7 +110,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LumBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Lum[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_RazzBerryTree[] = { +static const struct SpriteFrameImage sPicTable_RazzBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -124,7 +124,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RazzBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Razz[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_GrepaBerryTree[] = { +static const struct SpriteFrameImage sPicTable_GrepaBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -138,7 +138,7 @@ const struct SpriteFrameImage gObjectEventPicTable_GrepaBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Grepa[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_RabutaBerryTree[] = { +static const struct SpriteFrameImage sPicTable_RabutaBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -152,7 +152,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RabutaBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Rabuta[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_NomelBerryTree[] = { +static const struct SpriteFrameImage sPicTable_NomelBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -166,7 +166,7 @@ const struct SpriteFrameImage gObjectEventPicTable_NomelBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Nomel[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_LeppaBerryTree[] = { +static const struct SpriteFrameImage sPicTable_LeppaBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -180,7 +180,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LeppaBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Leppa[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_LiechiBerryTree[] = { +static const struct SpriteFrameImage sPicTable_LiechiBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -194,7 +194,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LiechiBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Liechi[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_HondewBerryTree[] = { +static const struct SpriteFrameImage sPicTable_HondewBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -208,7 +208,7 @@ const struct SpriteFrameImage gObjectEventPicTable_HondewBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Hondew[] = {3, 4, 5, 5, 5}; -const struct SpriteFrameImage gObjectEventPicTable_AguavBerryTree[] = { +static const struct SpriteFrameImage sPicTable_AguavBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -222,7 +222,7 @@ const struct SpriteFrameImage gObjectEventPicTable_AguavBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Aguav[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_WikiBerryTree[] = { +static const struct SpriteFrameImage sPicTable_WikiBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -236,7 +236,7 @@ const struct SpriteFrameImage gObjectEventPicTable_WikiBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Wiki[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_PomegBerryTree[] = { +static const struct SpriteFrameImage sPicTable_PomegBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -250,7 +250,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PomegBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Pomeg[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_RawstBerryTree[] = { +static const struct SpriteFrameImage sPicTable_RawstBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -264,7 +264,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RawstBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Rawst[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_SpelonBerryTree[] = { +static const struct SpriteFrameImage sPicTable_SpelonBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -278,7 +278,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SpelonBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Spelon[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_ChestoBerryTree[] = { +static const struct SpriteFrameImage sPicTable_ChestoBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -292,7 +292,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ChestoBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Chesto[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_OranBerryTree[] = { +static const struct SpriteFrameImage sPicTable_OranBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -306,7 +306,7 @@ const struct SpriteFrameImage gObjectEventPicTable_OranBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Oran[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_PersimBerryTree[] = { +static const struct SpriteFrameImage sPicTable_PersimBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -320,7 +320,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PersimBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Persim[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_SitrusBerryTree[] = { +static const struct SpriteFrameImage sPicTable_SitrusBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -334,7 +334,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SitrusBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Sitrus[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_AspearBerryTree[] = { +static const struct SpriteFrameImage sPicTable_AspearBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -348,7 +348,7 @@ const struct SpriteFrameImage gObjectEventPicTable_AspearBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Aspear[] = {3, 4, 3, 3, 3}; -const struct SpriteFrameImage gObjectEventPicTable_PamtreBerryTree[] = { +static const struct SpriteFrameImage sPicTable_PamtreBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -362,7 +362,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PamtreBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Pamtre[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_CornnBerryTree[] = { +static const struct SpriteFrameImage sPicTable_CornnBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -376,7 +376,7 @@ const struct SpriteFrameImage gObjectEventPicTable_CornnBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Cornn[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_LansatBerryTree[] = { +static const struct SpriteFrameImage sPicTable_LansatBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -390,7 +390,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LansatBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Lansat[] = {3, 4, 2, 2, 2}; -const struct SpriteFrameImage gObjectEventPicTable_DurinBerryTree[] = { +static const struct SpriteFrameImage sPicTable_DurinBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -404,7 +404,7 @@ const struct SpriteFrameImage gObjectEventPicTable_DurinBerryTree[] = { const u8 gBerryTreePaletteSlotTable_Durin[] = {3, 4, 4, 4, 4}; -const struct SpriteFrameImage gObjectEventPicTable_TamatoBerryTree[] = { +static const struct SpriteFrameImage sPicTable_TamatoBerryTree[] = { overworld_frame(gObjectEventPic_BerryTreeDirtPile, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 0), overworld_frame(gObjectEventPic_BerryTreeSprout, 2, 2, 1), @@ -423,49 +423,49 @@ const u8 gDeadBerryTreeObjectEventGraphicsIdTable[] = {OBJ_EVENT_GFX_BERRY_TREE_ const u8 gBerryTreeObjectEventGraphicsIdTable[] = {OBJ_EVENT_GFX_BERRY_TREE_EARLY_STAGES, OBJ_EVENT_GFX_BERRY_TREE_EARLY_STAGES, OBJ_EVENT_GFX_BERRY_TREE_LATE_STAGES, OBJ_EVENT_GFX_BERRY_TREE_LATE_STAGES, OBJ_EVENT_GFX_BERRY_TREE_LATE_STAGES}; const struct SpriteFrameImage *const gBerryTreePicTablePointers[] = { - [ITEM_CHERI_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_CheriBerryTree, - [ITEM_CHESTO_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_ChestoBerryTree, - [ITEM_PECHA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PechaBerryTree, - [ITEM_RAWST_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_RawstBerryTree, - [ITEM_ASPEAR_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_AspearBerryTree, - [ITEM_LEPPA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_LeppaBerryTree, - [ITEM_ORAN_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_OranBerryTree, - [ITEM_PERSIM_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PersimBerryTree, - [ITEM_LUM_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_LumBerryTree, - [ITEM_SITRUS_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_SitrusBerryTree, - [ITEM_FIGY_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_FigyBerryTree, - [ITEM_WIKI_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_WikiBerryTree, - [ITEM_MAGO_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_MagoBerryTree, - [ITEM_AGUAV_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_AguavBerryTree, - [ITEM_IAPAPA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_IapapaBerryTree, - [ITEM_RAZZ_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_RazzBerryTree, - [ITEM_BLUK_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_RazzBerryTree, - [ITEM_NANAB_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_MagoBerryTree, - [ITEM_WEPEAR_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_WepearBerryTree, - [ITEM_PINAP_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_IapapaBerryTree, - [ITEM_POMEG_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PomegBerryTree, - [ITEM_KELPSY_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_KelpsyBerryTree, - [ITEM_QUALOT_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_WepearBerryTree, - [ITEM_HONDEW_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_HondewBerryTree, - [ITEM_GREPA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_GrepaBerryTree, - [ITEM_TAMATO_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_TamatoBerryTree, - [ITEM_CORNN_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_CornnBerryTree, - [ITEM_MAGOST_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PomegBerryTree, - [ITEM_RABUTA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_RabutaBerryTree, - [ITEM_NOMEL_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_NomelBerryTree, - [ITEM_SPELON_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_SpelonBerryTree, - [ITEM_PAMTRE_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PamtreBerryTree, - [ITEM_WATMEL_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_RabutaBerryTree, - [ITEM_DURIN_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_DurinBerryTree, - [ITEM_BELUE_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_HondewBerryTree, - [ITEM_LIECHI_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_LiechiBerryTree, - [ITEM_GANLON_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_HondewBerryTree, - [ITEM_SALAC_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_AguavBerryTree, - [ITEM_PETAYA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_PomegBerryTree, - [ITEM_APICOT_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_GrepaBerryTree, - [ITEM_LANSAT_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_LansatBerryTree, - [ITEM_STARF_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_CornnBerryTree, - [ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX] = gObjectEventPicTable_DurinBerryTree, + [ITEM_CHERI_BERRY - FIRST_BERRY_INDEX] = sPicTable_CheriBerryTree, + [ITEM_CHESTO_BERRY - FIRST_BERRY_INDEX] = sPicTable_ChestoBerryTree, + [ITEM_PECHA_BERRY - FIRST_BERRY_INDEX] = sPicTable_PechaBerryTree, + [ITEM_RAWST_BERRY - FIRST_BERRY_INDEX] = sPicTable_RawstBerryTree, + [ITEM_ASPEAR_BERRY - FIRST_BERRY_INDEX] = sPicTable_AspearBerryTree, + [ITEM_LEPPA_BERRY - FIRST_BERRY_INDEX] = sPicTable_LeppaBerryTree, + [ITEM_ORAN_BERRY - FIRST_BERRY_INDEX] = sPicTable_OranBerryTree, + [ITEM_PERSIM_BERRY - FIRST_BERRY_INDEX] = sPicTable_PersimBerryTree, + [ITEM_LUM_BERRY - FIRST_BERRY_INDEX] = sPicTable_LumBerryTree, + [ITEM_SITRUS_BERRY - FIRST_BERRY_INDEX] = sPicTable_SitrusBerryTree, + [ITEM_FIGY_BERRY - FIRST_BERRY_INDEX] = sPicTable_FigyBerryTree, + [ITEM_WIKI_BERRY - FIRST_BERRY_INDEX] = sPicTable_WikiBerryTree, + [ITEM_MAGO_BERRY - FIRST_BERRY_INDEX] = sPicTable_MagoBerryTree, + [ITEM_AGUAV_BERRY - FIRST_BERRY_INDEX] = sPicTable_AguavBerryTree, + [ITEM_IAPAPA_BERRY - FIRST_BERRY_INDEX] = sPicTable_IapapaBerryTree, + [ITEM_RAZZ_BERRY - FIRST_BERRY_INDEX] = sPicTable_RazzBerryTree, + [ITEM_BLUK_BERRY - FIRST_BERRY_INDEX] = sPicTable_RazzBerryTree, + [ITEM_NANAB_BERRY - FIRST_BERRY_INDEX] = sPicTable_MagoBerryTree, + [ITEM_WEPEAR_BERRY - FIRST_BERRY_INDEX] = sPicTable_WepearBerryTree, + [ITEM_PINAP_BERRY - FIRST_BERRY_INDEX] = sPicTable_IapapaBerryTree, + [ITEM_POMEG_BERRY - FIRST_BERRY_INDEX] = sPicTable_PomegBerryTree, + [ITEM_KELPSY_BERRY - FIRST_BERRY_INDEX] = sPicTable_KelpsyBerryTree, + [ITEM_QUALOT_BERRY - FIRST_BERRY_INDEX] = sPicTable_WepearBerryTree, + [ITEM_HONDEW_BERRY - FIRST_BERRY_INDEX] = sPicTable_HondewBerryTree, + [ITEM_GREPA_BERRY - FIRST_BERRY_INDEX] = sPicTable_GrepaBerryTree, + [ITEM_TAMATO_BERRY - FIRST_BERRY_INDEX] = sPicTable_TamatoBerryTree, + [ITEM_CORNN_BERRY - FIRST_BERRY_INDEX] = sPicTable_CornnBerryTree, + [ITEM_MAGOST_BERRY - FIRST_BERRY_INDEX] = sPicTable_PomegBerryTree, + [ITEM_RABUTA_BERRY - FIRST_BERRY_INDEX] = sPicTable_RabutaBerryTree, + [ITEM_NOMEL_BERRY - FIRST_BERRY_INDEX] = sPicTable_NomelBerryTree, + [ITEM_SPELON_BERRY - FIRST_BERRY_INDEX] = sPicTable_SpelonBerryTree, + [ITEM_PAMTRE_BERRY - FIRST_BERRY_INDEX] = sPicTable_PamtreBerryTree, + [ITEM_WATMEL_BERRY - FIRST_BERRY_INDEX] = sPicTable_RabutaBerryTree, + [ITEM_DURIN_BERRY - FIRST_BERRY_INDEX] = sPicTable_DurinBerryTree, + [ITEM_BELUE_BERRY - FIRST_BERRY_INDEX] = sPicTable_HondewBerryTree, + [ITEM_LIECHI_BERRY - FIRST_BERRY_INDEX] = sPicTable_LiechiBerryTree, + [ITEM_GANLON_BERRY - FIRST_BERRY_INDEX] = sPicTable_HondewBerryTree, + [ITEM_SALAC_BERRY - FIRST_BERRY_INDEX] = sPicTable_AguavBerryTree, + [ITEM_PETAYA_BERRY - FIRST_BERRY_INDEX] = sPicTable_PomegBerryTree, + [ITEM_APICOT_BERRY - FIRST_BERRY_INDEX] = sPicTable_GrepaBerryTree, + [ITEM_LANSAT_BERRY - FIRST_BERRY_INDEX] = sPicTable_LansatBerryTree, + [ITEM_STARF_BERRY - FIRST_BERRY_INDEX] = sPicTable_CornnBerryTree, + [ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX] = sPicTable_DurinBerryTree, }; const u8 *const gBerryTreePaletteSlotTablePointers[] = { diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index b319c2845f8e..109c0abc7f71 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -1,4 +1,4 @@ -const union AnimCmd gObjectEventImageAnim_StayStill[] = +static const union AnimCmd sAnim_StayStill[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(0, 8), @@ -7,31 +7,31 @@ const union AnimCmd gObjectEventImageAnim_StayStill[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpFaceSouth[] = +static const union AnimCmd sAnim_QuintyPlumpFaceSouth[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpFaceNorth[] = +static const union AnimCmd sAnim_QuintyPlumpFaceNorth[] = { ANIMCMD_FRAME(1, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpFaceWest[] = +static const union AnimCmd sAnim_QuintyPlumpFaceWest[] = { ANIMCMD_FRAME(2, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpFaceEast[] = +static const union AnimCmd sAnim_QuintyPlumpFaceEast[] = { ANIMCMD_FRAME(2, 16, .hFlip = TRUE), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoSouth[] = +static const union AnimCmd sAnim_QuintyPlumpGoSouth[] = { ANIMCMD_FRAME(3, 8), ANIMCMD_FRAME(0, 8), @@ -40,7 +40,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoNorth[] = +static const union AnimCmd sAnim_QuintyPlumpGoNorth[] = { ANIMCMD_FRAME(4, 8), ANIMCMD_FRAME(1, 8), @@ -49,7 +49,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoWest[] = +static const union AnimCmd sAnim_QuintyPlumpGoWest[] = { ANIMCMD_FRAME(5, 8), ANIMCMD_FRAME(2, 8), @@ -58,7 +58,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoEast[] = +static const union AnimCmd sAnim_QuintyPlumpGoEast[] = { ANIMCMD_FRAME(5, 8, .hFlip = TRUE), ANIMCMD_FRAME(2, 8, .hFlip = TRUE), @@ -67,7 +67,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastSouth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastSouth[] = { ANIMCMD_FRAME(3, 4), ANIMCMD_FRAME(0, 4), @@ -76,7 +76,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastNorth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastNorth[] = { ANIMCMD_FRAME(4, 4), ANIMCMD_FRAME(1, 4), @@ -85,7 +85,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastWest[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastWest[] = { ANIMCMD_FRAME(5, 4), ANIMCMD_FRAME(2, 4), @@ -94,7 +94,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastEast[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastEast[] = { ANIMCMD_FRAME(5, 4, .hFlip = TRUE), ANIMCMD_FRAME(2, 4, .hFlip = TRUE), @@ -103,7 +103,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterSouth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFasterSouth[] = { ANIMCMD_FRAME(3, 2), ANIMCMD_FRAME(0, 2), @@ -112,7 +112,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterNorth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFasterNorth[] = { ANIMCMD_FRAME(4, 2), ANIMCMD_FRAME(1, 2), @@ -121,7 +121,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterWest[] = +static const union AnimCmd sAnim_QuintyPlumpGoFasterWest[] = { ANIMCMD_FRAME(5, 2), ANIMCMD_FRAME(2, 2), @@ -130,7 +130,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterEast[] = +static const union AnimCmd sAnim_QuintyPlumpGoFasterEast[] = { ANIMCMD_FRAME(5, 2, .hFlip = TRUE), ANIMCMD_FRAME(2, 2, .hFlip = TRUE), @@ -139,7 +139,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFasterEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestSouth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastestSouth[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_FRAME(0, 1), @@ -148,7 +148,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestNorth[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastestNorth[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_FRAME(1, 1), @@ -157,7 +157,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestWest[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastestWest[] = { ANIMCMD_FRAME(5, 1), ANIMCMD_FRAME(2, 1), @@ -166,7 +166,7 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestEast[] = +static const union AnimCmd sAnim_QuintyPlumpGoFastestEast[] = { ANIMCMD_FRAME(5, 1, .hFlip = TRUE), ANIMCMD_FRAME(2, 1, .hFlip = TRUE), @@ -175,31 +175,31 @@ const union AnimCmd gObjectEventImageAnim_QuintyPlumpGoFastestEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_FaceSouth[] = +static const union AnimCmd sAnim_FaceSouth[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_FaceNorth[] = +static const union AnimCmd sAnim_FaceNorth[] = { ANIMCMD_FRAME(1, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_FaceWest[] = +static const union AnimCmd sAnim_FaceWest[] = { ANIMCMD_FRAME(2, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_FaceEast[] = +static const union AnimCmd sAnim_FaceEast[] = { ANIMCMD_FRAME(2, 16, .hFlip = TRUE), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoSouth[] = +static const union AnimCmd sAnim_GoSouth[] = { ANIMCMD_FRAME(3, 8), ANIMCMD_FRAME(0, 8), @@ -208,7 +208,7 @@ const union AnimCmd gObjectEventImageAnim_GoSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoNorth[] = +static const union AnimCmd sAnim_GoNorth[] = { ANIMCMD_FRAME(5, 8), ANIMCMD_FRAME(1, 8), @@ -217,7 +217,7 @@ const union AnimCmd gObjectEventImageAnim_GoNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoWest[] = +static const union AnimCmd sAnim_GoWest[] = { ANIMCMD_FRAME(7, 8), ANIMCMD_FRAME(2, 8), @@ -226,7 +226,7 @@ const union AnimCmd gObjectEventImageAnim_GoWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoEast[] = +static const union AnimCmd sAnim_GoEast[] = { ANIMCMD_FRAME(7, 8, .hFlip = TRUE), ANIMCMD_FRAME(2, 8, .hFlip = TRUE), @@ -235,7 +235,7 @@ const union AnimCmd gObjectEventImageAnim_GoEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastSouth[] = +static const union AnimCmd sAnim_GoFastSouth[] = { ANIMCMD_FRAME(3, 4), ANIMCMD_FRAME(0, 4), @@ -244,7 +244,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastNorth[] = +static const union AnimCmd sAnim_GoFastNorth[] = { ANIMCMD_FRAME(5, 4), ANIMCMD_FRAME(1, 4), @@ -253,7 +253,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastWest[] = +static const union AnimCmd sAnim_GoFastWest[] = { ANIMCMD_FRAME(7, 4), ANIMCMD_FRAME(2, 4), @@ -262,7 +262,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastEast[] = +static const union AnimCmd sAnim_GoFastEast[] = { ANIMCMD_FRAME(7, 4, .hFlip = TRUE), ANIMCMD_FRAME(2, 4, .hFlip = TRUE), @@ -271,7 +271,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFasterSouth[] = +static const union AnimCmd sAnim_GoFasterSouth[] = { ANIMCMD_FRAME(3, 2), ANIMCMD_FRAME(0, 2), @@ -280,7 +280,7 @@ const union AnimCmd gObjectEventImageAnim_GoFasterSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFasterNorth[] = +static const union AnimCmd sAnim_GoFasterNorth[] = { ANIMCMD_FRAME(5, 2), ANIMCMD_FRAME(1, 2), @@ -289,7 +289,7 @@ const union AnimCmd gObjectEventImageAnim_GoFasterNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFasterWest[] = +static const union AnimCmd sAnim_GoFasterWest[] = { ANIMCMD_FRAME(7, 2), ANIMCMD_FRAME(2, 2), @@ -298,7 +298,7 @@ const union AnimCmd gObjectEventImageAnim_GoFasterWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFasterEast[] = +static const union AnimCmd sAnim_GoFasterEast[] = { ANIMCMD_FRAME(7, 2, .hFlip = TRUE), ANIMCMD_FRAME(2, 2, .hFlip = TRUE), @@ -307,7 +307,7 @@ const union AnimCmd gObjectEventImageAnim_GoFasterEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastestSouth[] = +static const union AnimCmd sAnim_GoFastestSouth[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_FRAME(0, 1), @@ -316,7 +316,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastestSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastestNorth[] = +static const union AnimCmd sAnim_GoFastestNorth[] = { ANIMCMD_FRAME(5, 1), ANIMCMD_FRAME(1, 1), @@ -325,7 +325,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastestNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastestWest[] = +static const union AnimCmd sAnim_GoFastestWest[] = { ANIMCMD_FRAME(7, 1), ANIMCMD_FRAME(2, 1), @@ -334,7 +334,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastestWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GoFastestEast[] = +static const union AnimCmd sAnim_GoFastestEast[] = { ANIMCMD_FRAME(7, 1, .hFlip = TRUE), ANIMCMD_FRAME(2, 1, .hFlip = TRUE), @@ -343,7 +343,7 @@ const union AnimCmd gObjectEventImageAnim_GoFastestEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_RunSouth[] = +static const union AnimCmd sAnim_RunSouth[] = { ANIMCMD_FRAME(12, 5), ANIMCMD_FRAME(9, 3), @@ -352,7 +352,7 @@ const union AnimCmd gObjectEventImageAnim_RunSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_RunNorth[] = +static const union AnimCmd sAnim_RunNorth[] = { ANIMCMD_FRAME(14, 5), ANIMCMD_FRAME(10, 3), @@ -361,7 +361,7 @@ const union AnimCmd gObjectEventImageAnim_RunNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_RunWest[] = +static const union AnimCmd sAnim_RunWest[] = { ANIMCMD_FRAME(16, 5), ANIMCMD_FRAME(11, 3), @@ -370,7 +370,7 @@ const union AnimCmd gObjectEventImageAnim_RunWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_RunEast[] = +static const union AnimCmd sAnim_RunEast[] = { ANIMCMD_FRAME(16, 5, .hFlip = TRUE), ANIMCMD_FRAME(11, 3, .hFlip = TRUE), @@ -379,7 +379,7 @@ const union AnimCmd gObjectEventImageAnim_RunEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_FieldMove[] = +static const union AnimCmd sAnim_FieldMove[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -389,143 +389,143 @@ const union AnimCmd gObjectEventImageAnim_FieldMove[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_GetOnOffSurfBlobSouth[] = +static const union AnimCmd sAnim_GetOnOffSurfBlobSouth[] = { ANIMCMD_FRAME(9, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GetOnOffSurfBlobNorth[] = +static const union AnimCmd sAnim_GetOnOffSurfBlobNorth[] = { ANIMCMD_FRAME(10, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GetOnOffSurfBlobWest[] = +static const union AnimCmd sAnim_GetOnOffSurfBlobWest[] = { ANIMCMD_FRAME(11, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_GetOnOffSurfBlobEast[] = +static const union AnimCmd sAnim_GetOnOffSurfBlobEast[] = { ANIMCMD_FRAME(11, 32, .hFlip = TRUE), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyBackWheelSouth[] = +static const union AnimCmd sAnim_BunnyHoppyBackWheelSouth[] = { ANIMCMD_FRAME(9, 4), ANIMCMD_FRAME(10, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyBackWheelNorth[] = +static const union AnimCmd sAnim_BunnyHoppyBackWheelNorth[] = { ANIMCMD_FRAME(13, 4), ANIMCMD_FRAME(14, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyBackWheelWest[] = +static const union AnimCmd sAnim_BunnyHoppyBackWheelWest[] = { ANIMCMD_FRAME(17, 4), ANIMCMD_FRAME(18, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyBackWheelEast[] = +static const union AnimCmd sAnim_BunnyHoppyBackWheelEast[] = { ANIMCMD_FRAME(17, 4, .hFlip = TRUE), ANIMCMD_FRAME(18, 4, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyFrontWheelSouth[] = +static const union AnimCmd sAnim_BunnyHoppyFrontWheelSouth[] = { ANIMCMD_FRAME(11, 4), ANIMCMD_FRAME(12, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyFrontWheelNorth[] = +static const union AnimCmd sAnim_BunnyHoppyFrontWheelNorth[] = { ANIMCMD_FRAME(15, 4), ANIMCMD_FRAME(16, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyFrontWheelWest[] = +static const union AnimCmd sAnim_BunnyHoppyFrontWheelWest[] = { ANIMCMD_FRAME(19, 4), ANIMCMD_FRAME(20, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BunnyHoppyFrontWheelEast[] = +static const union AnimCmd sAnim_BunnyHoppyFrontWheelEast[] = { ANIMCMD_FRAME(19, 4, .hFlip = TRUE), ANIMCMD_FRAME(20, 4, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieBackWheelSouth[] = +static const union AnimCmd sAnim_StandingWheelieBackWheelSouth[] = { ANIMCMD_FRAME(9, 4), ANIMCMD_FRAME(0, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieBackWheelNorth[] = +static const union AnimCmd sAnim_StandingWheelieBackWheelNorth[] = { ANIMCMD_FRAME(13, 4), ANIMCMD_FRAME(1, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieBackWheelWest[] = +static const union AnimCmd sAnim_StandingWheelieBackWheelWest[] = { ANIMCMD_FRAME(17, 4), ANIMCMD_FRAME(2, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieBackWheelEast[] = +static const union AnimCmd sAnim_StandingWheelieBackWheelEast[] = { ANIMCMD_FRAME(17, 4, .hFlip = TRUE), ANIMCMD_FRAME(2, 4, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieFrontWheelSouth[] = +static const union AnimCmd sAnim_StandingWheelieFrontWheelSouth[] = { ANIMCMD_FRAME(11, 4), ANIMCMD_FRAME(0, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieFrontWheelNorth[] = +static const union AnimCmd sAnim_StandingWheelieFrontWheelNorth[] = { ANIMCMD_FRAME(15, 4), ANIMCMD_FRAME(1, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieFrontWheelWest[] = +static const union AnimCmd sAnim_StandingWheelieFrontWheelWest[] = { ANIMCMD_FRAME(19, 4), ANIMCMD_FRAME(2, 4), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_StandingWheelieFrontWheelEast[] = +static const union AnimCmd sAnim_StandingWheelieFrontWheelEast[] = { ANIMCMD_FRAME(19, 4, .hFlip = TRUE), ANIMCMD_FRAME(2, 4, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_MovingWheelieSouth[] = +static const union AnimCmd sAnim_MovingWheelieSouth[] = { ANIMCMD_FRAME(21, 4), ANIMCMD_FRAME(10, 4), @@ -534,7 +534,7 @@ const union AnimCmd gObjectEventImageAnim_MovingWheelieSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_MovingWheelieNorth[] = +static const union AnimCmd sAnim_MovingWheelieNorth[] = { ANIMCMD_FRAME(23, 4), ANIMCMD_FRAME(14, 4), @@ -543,7 +543,7 @@ const union AnimCmd gObjectEventImageAnim_MovingWheelieNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_MovingWheelieWest[] = +static const union AnimCmd sAnim_MovingWheelieWest[] = { ANIMCMD_FRAME(25, 4), ANIMCMD_FRAME(18, 4), @@ -552,7 +552,7 @@ const union AnimCmd gObjectEventImageAnim_MovingWheelieWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_MovingWheelieEast[] = +static const union AnimCmd sAnim_MovingWheelieEast[] = { ANIMCMD_FRAME(25, 4, .hFlip = TRUE), ANIMCMD_FRAME(18, 4, .hFlip = TRUE), @@ -561,27 +561,27 @@ const union AnimCmd gObjectEventImageAnim_MovingWheelieEast[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_BerryTreeStage0[] = +static const union AnimCmd sAnim_BerryTreeStage0[] = { ANIMCMD_FRAME(0, 32), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BerryTreeStage1[] = +static const union AnimCmd sAnim_BerryTreeStage1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(2, 32), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BerryTreeStage2[] = +static const union AnimCmd sAnim_BerryTreeStage2[] = { ANIMCMD_FRAME(3, 48), ANIMCMD_FRAME(4, 48), ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BerryTreeStage3[] = +static const union AnimCmd sAnim_BerryTreeStage3[] = { ANIMCMD_FRAME(5, 32), ANIMCMD_FRAME(5, 32), @@ -590,7 +590,7 @@ const union AnimCmd gObjectEventImageAnim_BerryTreeStage3[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_BerryTreeStage4[] = +static const union AnimCmd sAnim_BerryTreeStage4[] = { ANIMCMD_FRAME(7, 48), ANIMCMD_FRAME(7, 48), @@ -599,7 +599,7 @@ const union AnimCmd gObjectEventImageAnim_BerryTreeStage4[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_NurseBow[] = +static const union AnimCmd sAnim_NurseBow[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(9, 32), @@ -607,7 +607,7 @@ const union AnimCmd gObjectEventImageAnim_NurseBow[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_RockBreak[] = +static const union AnimCmd sAnim_RockBreak[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -616,7 +616,7 @@ const union AnimCmd gObjectEventImageAnim_RockBreak[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_TreeCut[] = +static const union AnimCmd sAnim_TreeCut[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -625,7 +625,7 @@ const union AnimCmd gObjectEventImageAnim_TreeCut[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_TakeOutRodSouth[] = +static const union AnimCmd sAnim_TakeOutRodSouth[] = { ANIMCMD_FRAME(8, 4), ANIMCMD_FRAME(9, 4), @@ -634,7 +634,7 @@ const union AnimCmd gObjectEventImageAnim_TakeOutRodSouth[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_TakeOutRodNorth[] = +static const union AnimCmd sAnim_TakeOutRodNorth[] = { ANIMCMD_FRAME(4, 4), ANIMCMD_FRAME(5, 4), @@ -643,7 +643,7 @@ const union AnimCmd gObjectEventImageAnim_TakeOutRodNorth[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_TakeOutRodWest[] = +static const union AnimCmd sAnim_TakeOutRodWest[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -652,7 +652,7 @@ const union AnimCmd gObjectEventImageAnim_TakeOutRodWest[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_TakeOutRodEast[] = +static const union AnimCmd sAnim_TakeOutRodEast[] = { ANIMCMD_FRAME(0, 4, .hFlip = TRUE), ANIMCMD_FRAME(1, 4, .hFlip = TRUE), @@ -661,7 +661,7 @@ const union AnimCmd gObjectEventImageAnim_TakeOutRodEast[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_PutAwayRodSouth[] = +static const union AnimCmd sAnim_PutAwayRodSouth[] = { ANIMCMD_FRAME(11, 4), ANIMCMD_FRAME(10, 6), @@ -670,7 +670,7 @@ const union AnimCmd gObjectEventImageAnim_PutAwayRodSouth[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_PutAwayRodNorth[] = +static const union AnimCmd sAnim_PutAwayRodNorth[] = { ANIMCMD_FRAME(7, 4), ANIMCMD_FRAME(6, 6), @@ -679,7 +679,7 @@ const union AnimCmd gObjectEventImageAnim_PutAwayRodNorth[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_PutAwayRodWest[] = +static const union AnimCmd sAnim_PutAwayRodWest[] = { ANIMCMD_FRAME(3, 4), ANIMCMD_FRAME(2, 4), @@ -688,7 +688,7 @@ const union AnimCmd gObjectEventImageAnim_PutAwayRodWest[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_PutAwayRodEast[] = +static const union AnimCmd sAnim_PutAwayRodEast[] = { ANIMCMD_FRAME(3, 4, .hFlip = TRUE), ANIMCMD_FRAME(2, 4, .hFlip = TRUE), @@ -697,7 +697,7 @@ const union AnimCmd gObjectEventImageAnim_PutAwayRodEast[] = ANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_HookedPokemonSouth[] = +static const union AnimCmd sAnim_HookedPokemonSouth[] = { ANIMCMD_FRAME(10, 6), ANIMCMD_FRAME(11, 6), @@ -706,7 +706,7 @@ const union AnimCmd gObjectEventImageAnim_HookedPokemonSouth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_HookedPokemonNorth[] = +static const union AnimCmd sAnim_HookedPokemonNorth[] = { ANIMCMD_FRAME(6, 6), ANIMCMD_FRAME(7, 6), @@ -715,7 +715,7 @@ const union AnimCmd gObjectEventImageAnim_HookedPokemonNorth[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_HookedPokemonWest[] = +static const union AnimCmd sAnim_HookedPokemonWest[] = { ANIMCMD_FRAME(2, 6), ANIMCMD_FRAME(3, 6), @@ -724,7 +724,7 @@ const union AnimCmd gObjectEventImageAnim_HookedPokemonWest[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_HookedPokemonEast[] = +static const union AnimCmd sAnim_HookedPokemonEast[] = { ANIMCMD_FRAME(2, 6, .hFlip = TRUE), ANIMCMD_FRAME(3, 6, .hFlip = TRUE), @@ -733,7 +733,7 @@ const union AnimCmd gObjectEventImageAnim_HookedPokemonEast[] = ANIMCMD_JUMP(0), }; -const union AffineAnimCmd gObjectEventRotScalAnim_8508FD8[] = +static const union AffineAnimCmd sAffineAnim_8508FD8[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 1), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1), @@ -743,7 +743,7 @@ const union AffineAnimCmd gObjectEventRotScalAnim_8508FD8[] = AFFINEANIMCMD_JUMP(0), }; -const union AffineAnimCmd gObjectEventRotScalAnim_8509008[] = +static const union AffineAnimCmd sAffineAnim_8509008[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 1), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1), @@ -754,33 +754,33 @@ const union AffineAnimCmd gObjectEventRotScalAnim_8509008[] = AFFINEANIMCMD_JUMP(0), }; -const union AffineAnimCmd gObjectEventRotScalAnim_8509040[] = +static const union AffineAnimCmd sAffineAnim_8509040[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 10, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gObjectEventRotScalAnim_8509050[] = +static const union AffineAnimCmd sAffineAnim_8509050[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 10, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gObjectEventRotScalAnim_8509060[] = +static const union AffineAnimCmd sAffineAnim_8509060[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 1), AFFINEANIMCMD_LOOP(8), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gObjectEventRotScalAnim_8509078[] = +static const union AffineAnimCmd sAffineAnim_8509078[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 1), AFFINEANIMCMD_LOOP(8), AFFINEANIMCMD_END, }; -const union AnimCmd gObjectEventImageAnim_HoOhFlapWings[] = +static const union AnimCmd sAnim_HoOhFlapWings[] = { ANIMCMD_FRAME(3, 8), ANIMCMD_FRAME(4, 8), @@ -789,383 +789,388 @@ const union AnimCmd gObjectEventImageAnim_HoOhFlapWings[] = ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_HoOhStayStill[] = +static const union AnimCmd sAnim_HoOhStayStill[] = { ANIMCMD_FRAME(3, 16), ANIMCMD_JUMP(0), }; -const union AnimCmd *const gObjectEventImageAnimTable_Inanimate[] = { - gObjectEventImageAnim_StayStill, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_QuintyPlump[] = { - gObjectEventImageAnim_QuintyPlumpFaceSouth, - gObjectEventImageAnim_QuintyPlumpFaceNorth, - gObjectEventImageAnim_QuintyPlumpFaceWest, - gObjectEventImageAnim_QuintyPlumpFaceEast, - gObjectEventImageAnim_QuintyPlumpGoSouth, - gObjectEventImageAnim_QuintyPlumpGoNorth, - gObjectEventImageAnim_QuintyPlumpGoWest, - gObjectEventImageAnim_QuintyPlumpGoEast, - gObjectEventImageAnim_QuintyPlumpGoFastSouth, - gObjectEventImageAnim_QuintyPlumpGoFastNorth, - gObjectEventImageAnim_QuintyPlumpGoFastWest, - gObjectEventImageAnim_QuintyPlumpGoFastEast, - gObjectEventImageAnim_QuintyPlumpGoFasterSouth, - gObjectEventImageAnim_QuintyPlumpGoFasterNorth, - gObjectEventImageAnim_QuintyPlumpGoFasterWest, - gObjectEventImageAnim_QuintyPlumpGoFasterEast, - gObjectEventImageAnim_QuintyPlumpGoFastestSouth, - gObjectEventImageAnim_QuintyPlumpGoFastestNorth, - gObjectEventImageAnim_QuintyPlumpGoFastestWest, - gObjectEventImageAnim_QuintyPlumpGoFastestEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_Standard[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoNorth, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_HoOh[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_HoOhFlapWings, - gObjectEventImageAnim_HoOhStayStill, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_Groudon3[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestEast, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, -}; - -const union AnimCmd gObjectEventImageAnim_85091F0[] = +static const union AnimCmd *const sAnimTable_Inanimate[] = { + sAnim_StayStill, +}; + +static const union AnimCmd *const sAnimTable_QuintyPlump[] = { + sAnim_QuintyPlumpFaceSouth, + sAnim_QuintyPlumpFaceNorth, + sAnim_QuintyPlumpFaceWest, + sAnim_QuintyPlumpFaceEast, + sAnim_QuintyPlumpGoSouth, + sAnim_QuintyPlumpGoNorth, + sAnim_QuintyPlumpGoWest, + sAnim_QuintyPlumpGoEast, + sAnim_QuintyPlumpGoFastSouth, + sAnim_QuintyPlumpGoFastNorth, + sAnim_QuintyPlumpGoFastWest, + sAnim_QuintyPlumpGoFastEast, + sAnim_QuintyPlumpGoFasterSouth, + sAnim_QuintyPlumpGoFasterNorth, + sAnim_QuintyPlumpGoFasterWest, + sAnim_QuintyPlumpGoFasterEast, + sAnim_QuintyPlumpGoFastestSouth, + sAnim_QuintyPlumpGoFastestNorth, + sAnim_QuintyPlumpGoFastestWest, + sAnim_QuintyPlumpGoFastestEast, +}; + +static const union AnimCmd *const sAnimTable_Standard[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoNorth, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, +}; + +static const union AnimCmd *const sAnimTable_HoOh[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_HoOhFlapWings, + sAnim_HoOhStayStill, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, +}; + +static const union AnimCmd *const sAnimTable_GroudonSide[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoEast, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastEast, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterEast, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestEast, + sAnim_GoFastestWest, + sAnim_GoFastestEast, +}; + +static const union AnimCmd sAnim_RayquazaCoiledAwake[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_85091F8[] = +static const union AnimCmd sAnim_RayquazaFlyUp[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509200[] = +static const union AnimCmd sAnim_RayquazaCoiledAsleep[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509208[] = +static const union AnimCmd sAnim_RayquazaCoiledMouthOpen[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509210[] = +static const union AnimCmd sAnim_RayquazaNormal[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509218[] = +// Identical to sAnim_RayquazaCoiledAsleep +static const union AnimCmd sAnim_RayquazaFaceSouth[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509220[] = +// Identical to sAnim_RayquazaCoiledAsleep +static const union AnimCmd sAnim_RayquazaFaceNorth[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509228[] = +// Identical to sAnim_RayquazaCoiledAsleep +static const union AnimCmd sAnim_RayquazaFaceWest[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gObjectEventImageAnim_8509230[] = +// Identical to sAnim_RayquazaNormal +static const union AnimCmd sAnim_RayquazaFaceEast[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd *const gObjectEventImageAnimTable_Rayquaza2[] = { - gObjectEventImageAnim_8509218, - gObjectEventImageAnim_8509220, - gObjectEventImageAnim_8509228, - gObjectEventImageAnim_8509230, - gObjectEventImageAnim_8509200, - gObjectEventImageAnim_85091F8, - gObjectEventImageAnim_8509208, - gObjectEventImageAnim_8509210, - gObjectEventImageAnim_8509200, - gObjectEventImageAnim_85091F8, - gObjectEventImageAnim_85091F0, - gObjectEventImageAnim_8509210, - gObjectEventImageAnim_8509200, - gObjectEventImageAnim_85091F8, - gObjectEventImageAnim_8509208, - gObjectEventImageAnim_8509210, - gObjectEventImageAnim_8509200, - gObjectEventImageAnim_85091F8, - gObjectEventImageAnim_8509208, - gObjectEventImageAnim_8509210, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_BrendanMayNormal[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoNorth, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, - gObjectEventImageAnim_RunSouth, - gObjectEventImageAnim_RunNorth, - gObjectEventImageAnim_RunWest, - gObjectEventImageAnim_RunEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_AcroBike[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoNorth, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, - gObjectEventImageAnim_BunnyHoppyBackWheelSouth, - gObjectEventImageAnim_BunnyHoppyBackWheelNorth, - gObjectEventImageAnim_BunnyHoppyBackWheelWest, - gObjectEventImageAnim_BunnyHoppyBackWheelEast, - gObjectEventImageAnim_BunnyHoppyFrontWheelSouth, - gObjectEventImageAnim_BunnyHoppyFrontWheelNorth, - gObjectEventImageAnim_BunnyHoppyFrontWheelWest, - gObjectEventImageAnim_BunnyHoppyFrontWheelEast, - gObjectEventImageAnim_StandingWheelieBackWheelSouth, - gObjectEventImageAnim_StandingWheelieBackWheelNorth, - gObjectEventImageAnim_StandingWheelieBackWheelWest, - gObjectEventImageAnim_StandingWheelieBackWheelEast, - gObjectEventImageAnim_StandingWheelieFrontWheelSouth, - gObjectEventImageAnim_StandingWheelieFrontWheelNorth, - gObjectEventImageAnim_StandingWheelieFrontWheelWest, - gObjectEventImageAnim_StandingWheelieFrontWheelEast, - gObjectEventImageAnim_MovingWheelieSouth, - gObjectEventImageAnim_MovingWheelieNorth, - gObjectEventImageAnim_MovingWheelieWest, - gObjectEventImageAnim_MovingWheelieEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_Surfing[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoNorth, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, - gObjectEventImageAnim_GetOnOffSurfBlobSouth, - gObjectEventImageAnim_GetOnOffSurfBlobNorth, - gObjectEventImageAnim_GetOnOffSurfBlobWest, - gObjectEventImageAnim_GetOnOffSurfBlobEast, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_Nurse[] = { - gObjectEventImageAnim_FaceSouth, - gObjectEventImageAnim_FaceNorth, - gObjectEventImageAnim_FaceWest, - gObjectEventImageAnim_FaceEast, - gObjectEventImageAnim_GoSouth, - gObjectEventImageAnim_GoNorth, - gObjectEventImageAnim_GoWest, - gObjectEventImageAnim_GoEast, - gObjectEventImageAnim_GoFastSouth, - gObjectEventImageAnim_GoFastNorth, - gObjectEventImageAnim_GoFastWest, - gObjectEventImageAnim_GoFastEast, - gObjectEventImageAnim_GoFasterSouth, - gObjectEventImageAnim_GoFasterNorth, - gObjectEventImageAnim_GoFasterWest, - gObjectEventImageAnim_GoFasterEast, - gObjectEventImageAnim_GoFastestSouth, - gObjectEventImageAnim_GoFastestNorth, - gObjectEventImageAnim_GoFastestWest, - gObjectEventImageAnim_GoFastestEast, - gObjectEventImageAnim_NurseBow, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_FieldMove[] = { - gObjectEventImageAnim_FieldMove, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_BerryTree[] = { - gObjectEventImageAnim_BerryTreeStage0, - gObjectEventImageAnim_BerryTreeStage1, - gObjectEventImageAnim_BerryTreeStage2, - gObjectEventImageAnim_BerryTreeStage3, - gObjectEventImageAnim_BerryTreeStage4, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_BreakableRock[] = { - gObjectEventImageAnim_StayStill, - gObjectEventImageAnim_RockBreak, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_CuttableTree[] = { - gObjectEventImageAnim_StayStill, - gObjectEventImageAnim_TreeCut, -}; - -const union AnimCmd *const gObjectEventImageAnimTable_Fishing[] = { - gObjectEventImageAnim_TakeOutRodSouth, - gObjectEventImageAnim_TakeOutRodNorth, - gObjectEventImageAnim_TakeOutRodWest, - gObjectEventImageAnim_TakeOutRodEast, - gObjectEventImageAnim_PutAwayRodSouth, - gObjectEventImageAnim_PutAwayRodNorth, - gObjectEventImageAnim_PutAwayRodWest, - gObjectEventImageAnim_PutAwayRodEast, - gObjectEventImageAnim_HookedPokemonSouth, - gObjectEventImageAnim_HookedPokemonNorth, - gObjectEventImageAnim_HookedPokemonWest, - gObjectEventImageAnim_HookedPokemonEast, -}; - -const union AffineAnimCmd *const gObjectEventRotScalAnimTable_KyogreGroudon[] = { - gObjectEventRotScalAnim_8508FD8, - gObjectEventRotScalAnim_8509008, - gObjectEventRotScalAnim_8509050, - gObjectEventRotScalAnim_8509040, - gObjectEventRotScalAnim_8509078, - gObjectEventRotScalAnim_8509060, +// Though they correspond to facing/walking movements, Rayquaza doesn't have +// equivalent images aside from flying up. Its other frames aside from the 'normal' +// frame are for the sequence where it awakens on Sky Pillar. +// The corresponding facing/walking movements are commented alongside +static const union AnimCmd *const sAnimTable_Rayquaza[] = { + sAnim_RayquazaFaceSouth, // Face South + sAnim_RayquazaFaceNorth, // Face North + sAnim_RayquazaFaceWest, // Face West + sAnim_RayquazaFaceEast, // Face East + sAnim_RayquazaCoiledAsleep, // Go South + sAnim_RayquazaFlyUp, // Go North + sAnim_RayquazaCoiledMouthOpen, // Go West + sAnim_RayquazaNormal, // Go East + sAnim_RayquazaCoiledAsleep, // Go fast South + sAnim_RayquazaFlyUp, // Go fast North + sAnim_RayquazaCoiledAwake, // Go fast West + sAnim_RayquazaNormal, // Go fast East + sAnim_RayquazaCoiledAsleep, // Go faster South + sAnim_RayquazaFlyUp, // Go faster North + sAnim_RayquazaCoiledMouthOpen, // Go faster West + sAnim_RayquazaNormal, // Go faster East + sAnim_RayquazaCoiledAsleep, // Go fastest South + sAnim_RayquazaFlyUp, // Go fastest North + sAnim_RayquazaCoiledMouthOpen, // Go fastest West + sAnim_RayquazaNormal, // Go fastest East +}; + +static const union AnimCmd *const sAnimTable_BrendanMayNormal[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoNorth, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, + sAnim_RunSouth, + sAnim_RunNorth, + sAnim_RunWest, + sAnim_RunEast, +}; + +static const union AnimCmd *const sAnimTable_AcroBike[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoNorth, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, + sAnim_BunnyHoppyBackWheelSouth, + sAnim_BunnyHoppyBackWheelNorth, + sAnim_BunnyHoppyBackWheelWest, + sAnim_BunnyHoppyBackWheelEast, + sAnim_BunnyHoppyFrontWheelSouth, + sAnim_BunnyHoppyFrontWheelNorth, + sAnim_BunnyHoppyFrontWheelWest, + sAnim_BunnyHoppyFrontWheelEast, + sAnim_StandingWheelieBackWheelSouth, + sAnim_StandingWheelieBackWheelNorth, + sAnim_StandingWheelieBackWheelWest, + sAnim_StandingWheelieBackWheelEast, + sAnim_StandingWheelieFrontWheelSouth, + sAnim_StandingWheelieFrontWheelNorth, + sAnim_StandingWheelieFrontWheelWest, + sAnim_StandingWheelieFrontWheelEast, + sAnim_MovingWheelieSouth, + sAnim_MovingWheelieNorth, + sAnim_MovingWheelieWest, + sAnim_MovingWheelieEast, +}; + +static const union AnimCmd *const sAnimTable_Surfing[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoNorth, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, + sAnim_GetOnOffSurfBlobSouth, + sAnim_GetOnOffSurfBlobNorth, + sAnim_GetOnOffSurfBlobWest, + sAnim_GetOnOffSurfBlobEast, +}; + +static const union AnimCmd *const sAnimTable_Nurse[] = { + sAnim_FaceSouth, + sAnim_FaceNorth, + sAnim_FaceWest, + sAnim_FaceEast, + sAnim_GoSouth, + sAnim_GoNorth, + sAnim_GoWest, + sAnim_GoEast, + sAnim_GoFastSouth, + sAnim_GoFastNorth, + sAnim_GoFastWest, + sAnim_GoFastEast, + sAnim_GoFasterSouth, + sAnim_GoFasterNorth, + sAnim_GoFasterWest, + sAnim_GoFasterEast, + sAnim_GoFastestSouth, + sAnim_GoFastestNorth, + sAnim_GoFastestWest, + sAnim_GoFastestEast, + sAnim_NurseBow, +}; + +static const union AnimCmd *const sAnimTable_FieldMove[] = { + sAnim_FieldMove, +}; + +static const union AnimCmd *const sAnimTable_BerryTree[] = { + sAnim_BerryTreeStage0, + sAnim_BerryTreeStage1, + sAnim_BerryTreeStage2, + sAnim_BerryTreeStage3, + sAnim_BerryTreeStage4, +}; + +static const union AnimCmd *const sAnimTable_BreakableRock[] = { + sAnim_StayStill, + sAnim_RockBreak, +}; + +static const union AnimCmd *const sAnimTable_CuttableTree[] = { + sAnim_StayStill, + sAnim_TreeCut, +}; + +static const union AnimCmd *const sAnimTable_Fishing[] = { + sAnim_TakeOutRodSouth, + sAnim_TakeOutRodNorth, + sAnim_TakeOutRodWest, + sAnim_TakeOutRodEast, + sAnim_PutAwayRodSouth, + sAnim_PutAwayRodNorth, + sAnim_PutAwayRodWest, + sAnim_PutAwayRodEast, + sAnim_HookedPokemonSouth, + sAnim_HookedPokemonNorth, + sAnim_HookedPokemonWest, + sAnim_HookedPokemonEast, +}; + +static const union AffineAnimCmd *const sAffineAnimTable_KyogreGroudon[] = { + sAffineAnim_8508FD8, + sAffineAnim_8509008, + sAffineAnim_8509050, + sAffineAnim_8509040, + sAffineAnim_8509078, + sAffineAnim_8509060, }; const struct UnkStruct_085094AC gUnknown_085094AC[] = { { - .anims = gObjectEventImageAnimTable_QuintyPlump, + .anims = sAnimTable_QuintyPlump, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_Standard, + .anims = sAnimTable_Standard, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_BrendanMayNormal, + .anims = sAnimTable_BrendanMayNormal, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_AcroBike, + .anims = sAnimTable_AcroBike, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_Surfing, + .anims = sAnimTable_Surfing, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_Nurse, + .anims = sAnimTable_Nurse, .animPos = {1, 3, 0, 2}, }, { - .anims = gObjectEventImageAnimTable_Fishing, + .anims = sAnimTable_Fishing, .animPos = {1, 3, 0, 2}, }, - { - NULL, - {0, 0, 0, 0}, - }, + {}, }; diff --git a/src/data/object_events/object_event_graphics_info.h b/src/data/object_events/object_event_graphics_info.h index c6c78dca9919..cd530722bd79 100755 --- a/src/data/object_events/object_event_graphics_info.h +++ b/src/data/object_events/object_event_graphics_info.h @@ -1,245 +1,245 @@ -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Surfing, gObjectEventPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_FieldMove, gObjectEventPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = {0xFFFF, OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_QuintyPlump, gObjectEventPicTable_QuintyPlump, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_NinjaBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Twin, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Boy1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Girl1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Boy2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Girl2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_LittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_LittleGirl, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Boy3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Girl3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RichBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Woman1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_FatMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_PokefanF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Man1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Woman2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ExpertM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ExpertF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Man2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Woman3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_PokefanM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Woman4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Cook, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_LinkReceptionist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_OldMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_OldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Camper, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Picnicker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Man3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Woman5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Youngster, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BugCatcher, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_PsychicM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Maniac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_HexManiac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, gObjectEventSpriteOamTables_64x64, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_SwimmerM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_SwimmerF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BlackBelt, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Beauty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Scientist1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Lass, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Gentleman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Sailor, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Fisherman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RunningTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RunningTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_TuberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_TuberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Hiker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_CyclingTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_CyclingTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Nurse, gObjectEventPicTable_Nurse, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_ItemBall, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, NULL, gObjectEventImageAnimTable_BerryTree, gObjectEventPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_BerryTree, gObjectEventPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BerryTree, gObjectEventPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ProfBirch, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Man4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Man5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ReporterM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ReporterF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedNatuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedMagnemiteDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedSquirtleDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedWooperDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedPikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_UnusedPorygon2Doll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_CuttableTree, gObjectEventPicTable_CuttableTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MartEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RooftopSaleWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Teala, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_BreakableRock, gObjectEventPicTable_BreakableRock, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_PushableBoulder, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MrBrineysBoat, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Surfing, gObjectEventPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_FieldMove, gObjectEventPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = {0xFFFF, OBJ_EVENT_PAL_TAG_TRUCK, OBJ_EVENT_PAL_TAG_NONE, 1152, 48, 48, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_48x48, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_Truck, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_VigorothCarryingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_VigorothFacingAway, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BirchsBag, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_ZIGZAGOON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_EnemyZigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = {0xFFFF, OBJ_EVENT_PAL_TAG_POOCHYENA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Poochyena, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Artist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Surfing, gObjectEventPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_FieldMove, gObjectEventPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_AcroBike, gObjectEventPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Surfing, gObjectEventPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_FieldMove, gObjectEventPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Cameraman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BrendanUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MayUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_MOVING_BOX, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_MovingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = {0xFFFF, OBJ_EVENT_PAL_TAG_CABLE_CAR, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_64x64, gObjectEventSpriteOamTables_64x64, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_CableCar, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Scientist2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_DevonEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_AquaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_AquaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MagmaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MagmaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Sidney, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Phoebe, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Glacia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Drake, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Roxanne, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Brawly, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Wattson, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Flannery, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Norman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Winona, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Liza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Tate, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Wallace, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Steven, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Wally, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RubySapphireLittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Fishing, gObjectEventPicTable_BrendanFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Fishing, gObjectEventPicTable_MayFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_HotSpringsOldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = {0xFFFF, OBJ_EVENT_PAL_TAG_SSTIDAL, OBJ_EVENT_PAL_TAG_NONE, 1920, 96, 40, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, gObjectEventSpriteOamTables_96x40, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_SSTidal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, OBJ_EVENT_PAL_TAG_NONE, 1408, 88, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, gObjectEventSpriteOamTables_88x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_SubmarineShadow, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_PichuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_PikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_MarillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_TogepiDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_CyndaquilDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_ChikoritaDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_TotodileDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_JigglypuffDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_MeowthDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_ClefairyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_DittoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_SmoochumDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_TreeckoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_TorchicDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_MudkipDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_DuskullDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_WynautDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BaltoyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_KecleonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_AzurillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_SkittyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_SwabluDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_GulpinDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_LotadDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_SeedotDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_PikaCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_RoundCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_KissCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_ZigzagCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_SpinCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_DiamondCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BallCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_GrassCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_FireCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_WaterCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigSnorlaxDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigRhydonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigLaprasDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigVenusaurDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigCharizardDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigBlastoiseDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigWailmerDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigRegirockDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigRegiceDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_GameboyKid, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_ContestJudge, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_BrendanWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MayWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BrendanDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_MayDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Archie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Maxie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_KyogreFront, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_GroudonFront, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_KyogreSide, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Groudon3, gObjectEventPicTable_GroudonSide, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_Fossil, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Skitty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre2 = {0xFFFF, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_KyogreFront, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon2 = {0xFFFF, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_GroudonFront, gObjectEventRotScalAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, gObjectEventSpriteOamTables_64x64, gObjectEventImageAnimTable_Rayquaza2, gObjectEventPicTable_Rayquaza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Pikachu, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Azumarill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Wingull, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 128, 16, 16, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_TuberMSwimming, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, gObjectEventSpriteOamTables_16x16, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Azurill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Mom, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_BrendanMayNormal, gObjectEventPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Juan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Scott, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_MysteryEventDeliveryman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_Statue, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_S, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Kirlia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Dusclops, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_UnionRoomAttendant, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Red, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Leaf, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Sudowoodo, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Mew, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = {0xFFFF, OBJ_EVENT_PAL_TAG_DEOXYS, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Deoxys, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = {0xFFFF, OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Inanimate, gObjectEventPicTable_BirthIslandStone, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Anabel, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Tucker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Greta, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Spenser, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Noland, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Lucy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Brandon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RubySapphireBrendan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_MAY, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, gObjectEventSpriteOamTables_16x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_RubySapphireMay, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = {0xFFFF, OBJ_EVENT_PAL_TAG_LUGIA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_Standard, gObjectEventPicTable_Lugia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = {0xFFFF, OBJ_EVENT_PAL_TAG_HO_OH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, gObjectEventSpriteOamTables_32x32, gObjectEventImageAnimTable_HoOh, gObjectEventPicTable_HoOh, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = {0xFFFF, OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_QuintyPlump, sPicTable_QuintyPlump, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_NinjaBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Twin, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleGirl, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RichBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_FatMan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman4, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cook, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_LinkReceptionist, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldMan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Camper, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Picnicker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman5, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Youngster, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BugCatcher, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PsychicM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maniac, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HexManiac, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BlackBelt, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Beauty, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lass, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Gentleman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sailor, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Fisherman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Hiker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Nurse, sPicTable_Nurse, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ItemBall, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, NULL, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ProfBirch, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man4, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man5, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedNatuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedMagnemiteDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedSquirtleDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedWooperDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPikachuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPorygon2Doll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_CuttableTree, sPicTable_CuttableTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MartEmployee, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RooftopSaleWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Teala, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BreakableRock, sPicTable_BreakableRock, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PushableBoulder, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MrBrineysBoat, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = {0xFFFF, OBJ_EVENT_PAL_TAG_TRUCK, OBJ_EVENT_PAL_TAG_NONE, 1152, 48, 48, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_48x48, sAnimTable_Inanimate, sPicTable_Truck, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothCarryingBox, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothFacingAway, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BirchsBag, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_ZIGZAGOON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_EnemyZigzagoon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = {0xFFFF, OBJ_EVENT_PAL_TAG_POOCHYENA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Poochyena, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Artist, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cameraman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanUnderwater, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayUnderwater, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_MOVING_BOX, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MovingBox, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = {0xFFFF, OBJ_EVENT_PAL_TAG_CABLE_CAR, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Inanimate, sPicTable_CableCar, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_DevonEmployee, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sidney, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Phoebe, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Glacia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Drake, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Roxanne, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brawly, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wattson, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Flannery, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Norman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Winona, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Liza, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tate, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wallace, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Steven, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wally, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_RubySapphireLittleBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_BrendanFishing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_MayFishing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HotSpringsOldWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = {0xFFFF, OBJ_EVENT_PAL_TAG_SSTIDAL, OBJ_EVENT_PAL_TAG_NONE, 1920, 96, 40, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_96x40, sAnimTable_Standard, sPicTable_SSTidal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, OBJ_EVENT_PAL_TAG_NONE, 1408, 88, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_88x32, sAnimTable_Standard, sPicTable_SubmarineShadow, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PichuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikachuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MarillDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TogepiDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_CyndaquilDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ChikoritaDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TotodileDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_JigglypuffDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MeowthDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ClefairyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DittoDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SmoochumDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TreeckoDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TorchicDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MudkipDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DuskullDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WynautDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BaltoyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KecleonDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_AzurillDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SkittyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SwabluDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GulpinDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_LotadDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SeedotDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikaCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_RoundCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KissCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ZigzagCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SpinCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DiamondCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BallCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GrassCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_FireCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WaterCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigSnorlaxDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRhydonDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigLaprasDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigVenusaurDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigCharizardDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigBlastoiseDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigWailmerDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegirockDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegiceDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_GameboyKid, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ContestJudge, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanWatering, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayWatering, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_BrendanDecorating, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_MayDecorating, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Archie, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maxie, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_Fossil, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Skitty, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre2 = {0xFFFF, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon2 = {0xFFFF, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Pikachu, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azumarill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Wingull, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 128, 16, 16, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberMSwimming, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azurill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mom, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Juan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scott, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MysteryEventDeliveryman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_Statue, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_S, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Kirlia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Dusclops, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_UnionRoomAttendant, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Red, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Leaf, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sudowoodo, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mew, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = {0xFFFF, OBJ_EVENT_PAL_TAG_DEOXYS, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Deoxys, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = {0xFFFF, OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BirthIslandStone, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Anabel, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tucker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Greta, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Spenser, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Noland, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lucy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brandon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireBrendan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_MAY, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireMay, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = {0xFFFF, OBJ_EVENT_PAL_TAG_LUGIA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Lugia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = {0xFFFF, OBJ_EVENT_PAL_TAG_HO_OH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_HoOh, sPicTable_HoOh, gDummySpriteAffineAnimTable}; diff --git a/src/data/object_events/object_event_pic_tables.h b/src/data/object_events/object_event_pic_tables.h index 9cfdca7c16b9..1b8c9c727a2d 100755 --- a/src/data/object_events/object_event_pic_tables.h +++ b/src/data/object_events/object_event_pic_tables.h @@ -1,4 +1,4 @@ -const struct SpriteFrameImage gObjectEventPicTable_BrendanNormal[] = { +static const struct SpriteFrameImage sPicTable_BrendanNormal[] = { overworld_frame(gObjectEventPic_BrendanNormal, 2, 4, 0), overworld_frame(gObjectEventPic_BrendanNormal, 2, 4, 1), overworld_frame(gObjectEventPic_BrendanNormal, 2, 4, 2), @@ -19,7 +19,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanNormal[] = { overworld_frame(gObjectEventPic_BrendanRunning, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanMachBike[] = { +static const struct SpriteFrameImage sPicTable_BrendanMachBike[] = { overworld_frame(gObjectEventPic_BrendanMachBike, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanMachBike, 4, 4, 1), overworld_frame(gObjectEventPic_BrendanMachBike, 4, 4, 2), @@ -31,7 +31,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanMachBike[] = { overworld_frame(gObjectEventPic_BrendanMachBike, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanAcroBike[] = { +static const struct SpriteFrameImage sPicTable_BrendanAcroBike[] = { overworld_frame(gObjectEventPic_BrendanAcroBike, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanAcroBike, 4, 4, 1), overworld_frame(gObjectEventPic_BrendanAcroBike, 4, 4, 2), @@ -61,7 +61,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanAcroBike[] = { overworld_frame(gObjectEventPic_BrendanAcroBike, 4, 4, 26), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanSurfing[] = { +static const struct SpriteFrameImage sPicTable_BrendanSurfing[] = { overworld_frame(gObjectEventPic_BrendanSurfing, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanSurfing, 4, 4, 2), overworld_frame(gObjectEventPic_BrendanSurfing, 4, 4, 4), @@ -76,7 +76,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanSurfing[] = { overworld_frame(gObjectEventPic_BrendanSurfing, 4, 4, 5), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanUnderwater[] = { +static const struct SpriteFrameImage sPicTable_BrendanUnderwater[] = { overworld_frame(gObjectEventPic_BrendanUnderwater, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanUnderwater, 4, 4, 1), overworld_frame(gObjectEventPic_BrendanUnderwater, 4, 4, 2), @@ -88,7 +88,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanUnderwater[] = { overworld_frame(gObjectEventPic_BrendanUnderwater, 4, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanFieldMove[] = { +static const struct SpriteFrameImage sPicTable_BrendanFieldMove[] = { overworld_frame(gObjectEventPic_BrendanFieldMove, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanFieldMove, 4, 4, 1), overworld_frame(gObjectEventPic_BrendanFieldMove, 4, 4, 2), @@ -96,7 +96,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanFieldMove[] = { overworld_frame(gObjectEventPic_BrendanFieldMove, 4, 4, 4), }; -const struct SpriteFrameImage gObjectEventPicTable_QuintyPlump[] = { +static const struct SpriteFrameImage sPicTable_QuintyPlump[] = { overworld_frame(gObjectEventPic_QuintyPlump, 4, 4, 0), overworld_frame(gObjectEventPic_QuintyPlump, 4, 4, 1), overworld_frame(gObjectEventPic_QuintyPlump, 4, 4, 2), @@ -106,7 +106,7 @@ const struct SpriteFrameImage gObjectEventPicTable_QuintyPlump[] = { overworld_frame(gObjectEventPic_QuintyPlump, 4, 4, 6), }; -const struct SpriteFrameImage gObjectEventPicTable_NinjaBoy[] = { +static const struct SpriteFrameImage sPicTable_NinjaBoy[] = { overworld_frame(gObjectEventPic_NinjaBoy, 2, 2, 0), overworld_frame(gObjectEventPic_NinjaBoy, 2, 2, 1), overworld_frame(gObjectEventPic_NinjaBoy, 2, 2, 2), @@ -118,7 +118,7 @@ const struct SpriteFrameImage gObjectEventPicTable_NinjaBoy[] = { overworld_frame(gObjectEventPic_NinjaBoy, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Twin[] = { +static const struct SpriteFrameImage sPicTable_Twin[] = { overworld_frame(gObjectEventPic_Twin, 2, 4, 0), overworld_frame(gObjectEventPic_Twin, 2, 4, 1), overworld_frame(gObjectEventPic_Twin, 2, 4, 2), @@ -130,7 +130,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Twin[] = { overworld_frame(gObjectEventPic_Twin, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Boy1[] = { +static const struct SpriteFrameImage sPicTable_Boy1[] = { overworld_frame(gObjectEventPic_Boy1, 2, 4, 0), overworld_frame(gObjectEventPic_Boy1, 2, 4, 1), overworld_frame(gObjectEventPic_Boy1, 2, 4, 2), @@ -142,7 +142,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Boy1[] = { overworld_frame(gObjectEventPic_Boy1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Girl1[] = { +static const struct SpriteFrameImage sPicTable_Girl1[] = { overworld_frame(gObjectEventPic_Girl1, 2, 4, 0), overworld_frame(gObjectEventPic_Girl1, 2, 4, 1), overworld_frame(gObjectEventPic_Girl1, 2, 4, 2), @@ -154,7 +154,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Girl1[] = { overworld_frame(gObjectEventPic_Girl1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Boy2[] = { +static const struct SpriteFrameImage sPicTable_Boy2[] = { overworld_frame(gObjectEventPic_Boy2, 2, 4, 0), overworld_frame(gObjectEventPic_Boy2, 2, 4, 1), overworld_frame(gObjectEventPic_Boy2, 2, 4, 2), @@ -166,7 +166,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Boy2[] = { overworld_frame(gObjectEventPic_Boy2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Girl2[] = { +static const struct SpriteFrameImage sPicTable_Girl2[] = { overworld_frame(gObjectEventPic_Girl2, 2, 4, 0), overworld_frame(gObjectEventPic_Girl2, 2, 4, 1), overworld_frame(gObjectEventPic_Girl2, 2, 4, 2), @@ -178,7 +178,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Girl2[] = { overworld_frame(gObjectEventPic_Girl2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_LittleBoy[] = { +static const struct SpriteFrameImage sPicTable_LittleBoy[] = { overworld_frame(gObjectEventPic_LittleBoy, 2, 2, 0), overworld_frame(gObjectEventPic_LittleBoy, 2, 2, 1), overworld_frame(gObjectEventPic_LittleBoy, 2, 2, 2), @@ -190,7 +190,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LittleBoy[] = { overworld_frame(gObjectEventPic_LittleBoy, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_LittleGirl[] = { +static const struct SpriteFrameImage sPicTable_LittleGirl[] = { overworld_frame(gObjectEventPic_LittleGirl, 2, 2, 0), overworld_frame(gObjectEventPic_LittleGirl, 2, 2, 1), overworld_frame(gObjectEventPic_LittleGirl, 2, 2, 2), @@ -202,7 +202,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LittleGirl[] = { overworld_frame(gObjectEventPic_LittleGirl, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Boy3[] = { +static const struct SpriteFrameImage sPicTable_Boy3[] = { overworld_frame(gObjectEventPic_Boy3, 2, 4, 0), overworld_frame(gObjectEventPic_Boy3, 2, 4, 1), overworld_frame(gObjectEventPic_Boy3, 2, 4, 2), @@ -214,7 +214,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Boy3[] = { overworld_frame(gObjectEventPic_Boy3, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Girl3[] = { +static const struct SpriteFrameImage sPicTable_Girl3[] = { overworld_frame(gObjectEventPic_Girl3, 2, 4, 0), overworld_frame(gObjectEventPic_Girl3, 2, 4, 1), overworld_frame(gObjectEventPic_Girl3, 2, 4, 2), @@ -226,7 +226,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Girl3[] = { overworld_frame(gObjectEventPic_Girl3, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RichBoy[] = { +static const struct SpriteFrameImage sPicTable_RichBoy[] = { overworld_frame(gObjectEventPic_RichBoy, 2, 4, 0), overworld_frame(gObjectEventPic_RichBoy, 2, 4, 1), overworld_frame(gObjectEventPic_RichBoy, 2, 4, 2), @@ -238,7 +238,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RichBoy[] = { overworld_frame(gObjectEventPic_RichBoy, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Woman1[] = { +static const struct SpriteFrameImage sPicTable_Woman1[] = { overworld_frame(gObjectEventPic_Woman1, 2, 4, 0), overworld_frame(gObjectEventPic_Woman1, 2, 4, 1), overworld_frame(gObjectEventPic_Woman1, 2, 4, 2), @@ -250,7 +250,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Woman1[] = { overworld_frame(gObjectEventPic_Woman1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_FatMan[] = { +static const struct SpriteFrameImage sPicTable_FatMan[] = { overworld_frame(gObjectEventPic_FatMan, 2, 4, 0), overworld_frame(gObjectEventPic_FatMan, 2, 4, 1), overworld_frame(gObjectEventPic_FatMan, 2, 4, 2), @@ -262,7 +262,7 @@ const struct SpriteFrameImage gObjectEventPicTable_FatMan[] = { overworld_frame(gObjectEventPic_FatMan, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_PokefanF[] = { +static const struct SpriteFrameImage sPicTable_PokefanF[] = { overworld_frame(gObjectEventPic_PokefanF, 2, 4, 0), overworld_frame(gObjectEventPic_PokefanF, 2, 4, 1), overworld_frame(gObjectEventPic_PokefanF, 2, 4, 2), @@ -274,7 +274,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PokefanF[] = { overworld_frame(gObjectEventPic_PokefanF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Man1[] = { +static const struct SpriteFrameImage sPicTable_Man1[] = { overworld_frame(gObjectEventPic_Man1, 2, 4, 0), overworld_frame(gObjectEventPic_Man1, 2, 4, 1), overworld_frame(gObjectEventPic_Man1, 2, 4, 2), @@ -286,7 +286,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Man1[] = { overworld_frame(gObjectEventPic_Man1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Woman2[] = { +static const struct SpriteFrameImage sPicTable_Woman2[] = { overworld_frame(gObjectEventPic_Woman2, 2, 4, 0), overworld_frame(gObjectEventPic_Woman2, 2, 4, 1), overworld_frame(gObjectEventPic_Woman2, 2, 4, 2), @@ -298,7 +298,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Woman2[] = { overworld_frame(gObjectEventPic_Woman2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_ExpertM[] = { +static const struct SpriteFrameImage sPicTable_ExpertM[] = { overworld_frame(gObjectEventPic_ExpertM, 2, 4, 0), overworld_frame(gObjectEventPic_ExpertM, 2, 4, 1), overworld_frame(gObjectEventPic_ExpertM, 2, 4, 2), @@ -310,7 +310,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ExpertM[] = { overworld_frame(gObjectEventPic_ExpertM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_ExpertF[] = { +static const struct SpriteFrameImage sPicTable_ExpertF[] = { overworld_frame(gObjectEventPic_ExpertF, 2, 4, 0), overworld_frame(gObjectEventPic_ExpertF, 2, 4, 1), overworld_frame(gObjectEventPic_ExpertF, 2, 4, 2), @@ -322,7 +322,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ExpertF[] = { overworld_frame(gObjectEventPic_ExpertF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Man2[] = { +static const struct SpriteFrameImage sPicTable_Man2[] = { overworld_frame(gObjectEventPic_Man2, 2, 4, 0), overworld_frame(gObjectEventPic_Man2, 2, 4, 1), overworld_frame(gObjectEventPic_Man2, 2, 4, 2), @@ -334,7 +334,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Man2[] = { overworld_frame(gObjectEventPic_Man2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Woman3[] = { +static const struct SpriteFrameImage sPicTable_Woman3[] = { overworld_frame(gObjectEventPic_Woman3, 2, 4, 0), overworld_frame(gObjectEventPic_Woman3, 2, 4, 1), overworld_frame(gObjectEventPic_Woman3, 2, 4, 2), @@ -346,7 +346,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Woman3[] = { overworld_frame(gObjectEventPic_Woman3, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_PokefanM[] = { +static const struct SpriteFrameImage sPicTable_PokefanM[] = { overworld_frame(gObjectEventPic_PokefanM, 2, 4, 0), overworld_frame(gObjectEventPic_PokefanM, 2, 4, 1), overworld_frame(gObjectEventPic_PokefanM, 2, 4, 2), @@ -358,7 +358,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PokefanM[] = { overworld_frame(gObjectEventPic_PokefanM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Woman4[] = { +static const struct SpriteFrameImage sPicTable_Woman4[] = { overworld_frame(gObjectEventPic_Woman4, 2, 4, 0), overworld_frame(gObjectEventPic_Woman4, 2, 4, 1), overworld_frame(gObjectEventPic_Woman4, 2, 4, 2), @@ -370,7 +370,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Woman4[] = { overworld_frame(gObjectEventPic_Woman4, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Cook[] = { +static const struct SpriteFrameImage sPicTable_Cook[] = { overworld_frame(gObjectEventPic_Cook, 2, 4, 0), overworld_frame(gObjectEventPic_Cook, 2, 4, 1), overworld_frame(gObjectEventPic_Cook, 2, 4, 2), @@ -382,7 +382,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Cook[] = { overworld_frame(gObjectEventPic_Cook, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_LinkReceptionist[] = { +static const struct SpriteFrameImage sPicTable_LinkReceptionist[] = { overworld_frame(gObjectEventPic_LinkReceptionist, 2, 4, 0), overworld_frame(gObjectEventPic_LinkReceptionist, 2, 4, 1), overworld_frame(gObjectEventPic_LinkReceptionist, 2, 4, 2), @@ -394,7 +394,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LinkReceptionist[] = { overworld_frame(gObjectEventPic_LinkReceptionist, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_OldMan[] = { +static const struct SpriteFrameImage sPicTable_OldMan[] = { overworld_frame(gObjectEventPic_OldMan, 2, 4, 0), overworld_frame(gObjectEventPic_OldMan, 2, 4, 1), overworld_frame(gObjectEventPic_OldMan, 2, 4, 2), @@ -406,7 +406,7 @@ const struct SpriteFrameImage gObjectEventPicTable_OldMan[] = { overworld_frame(gObjectEventPic_OldMan, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_OldWoman[] = { +static const struct SpriteFrameImage sPicTable_OldWoman[] = { overworld_frame(gObjectEventPic_OldWoman, 2, 4, 0), overworld_frame(gObjectEventPic_OldWoman, 2, 4, 1), overworld_frame(gObjectEventPic_OldWoman, 2, 4, 2), @@ -418,7 +418,7 @@ const struct SpriteFrameImage gObjectEventPicTable_OldWoman[] = { overworld_frame(gObjectEventPic_OldWoman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Camper[] = { +static const struct SpriteFrameImage sPicTable_Camper[] = { overworld_frame(gObjectEventPic_Camper, 2, 4, 0), overworld_frame(gObjectEventPic_Camper, 2, 4, 1), overworld_frame(gObjectEventPic_Camper, 2, 4, 2), @@ -430,7 +430,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Camper[] = { overworld_frame(gObjectEventPic_Camper, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Picnicker[] = { +static const struct SpriteFrameImage sPicTable_Picnicker[] = { overworld_frame(gObjectEventPic_Picnicker, 2, 4, 0), overworld_frame(gObjectEventPic_Picnicker, 2, 4, 1), overworld_frame(gObjectEventPic_Picnicker, 2, 4, 2), @@ -442,7 +442,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Picnicker[] = { overworld_frame(gObjectEventPic_Picnicker, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Man3[] = { +static const struct SpriteFrameImage sPicTable_Man3[] = { overworld_frame(gObjectEventPic_Man3, 2, 4, 0), overworld_frame(gObjectEventPic_Man3, 2, 4, 1), overworld_frame(gObjectEventPic_Man3, 2, 4, 2), @@ -454,7 +454,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Man3[] = { overworld_frame(gObjectEventPic_Man3, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Woman5[] = { +static const struct SpriteFrameImage sPicTable_Woman5[] = { overworld_frame(gObjectEventPic_Woman5, 2, 4, 0), overworld_frame(gObjectEventPic_Woman5, 2, 4, 1), overworld_frame(gObjectEventPic_Woman5, 2, 4, 2), @@ -466,7 +466,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Woman5[] = { overworld_frame(gObjectEventPic_Woman5, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Youngster[] = { +static const struct SpriteFrameImage sPicTable_Youngster[] = { overworld_frame(gObjectEventPic_Youngster, 2, 4, 0), overworld_frame(gObjectEventPic_Youngster, 2, 4, 1), overworld_frame(gObjectEventPic_Youngster, 2, 4, 2), @@ -478,7 +478,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Youngster[] = { overworld_frame(gObjectEventPic_Youngster, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BugCatcher[] = { +static const struct SpriteFrameImage sPicTable_BugCatcher[] = { overworld_frame(gObjectEventPic_BugCatcher, 2, 4, 0), overworld_frame(gObjectEventPic_BugCatcher, 2, 4, 1), overworld_frame(gObjectEventPic_BugCatcher, 2, 4, 2), @@ -490,7 +490,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BugCatcher[] = { overworld_frame(gObjectEventPic_BugCatcher, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_PsychicM[] = { +static const struct SpriteFrameImage sPicTable_PsychicM[] = { overworld_frame(gObjectEventPic_PsychicM, 2, 4, 0), overworld_frame(gObjectEventPic_PsychicM, 2, 4, 1), overworld_frame(gObjectEventPic_PsychicM, 2, 4, 2), @@ -502,7 +502,7 @@ const struct SpriteFrameImage gObjectEventPicTable_PsychicM[] = { overworld_frame(gObjectEventPic_PsychicM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_SchoolKidM[] = { +static const struct SpriteFrameImage sPicTable_SchoolKidM[] = { overworld_frame(gObjectEventPic_SchoolKidM, 2, 4, 0), overworld_frame(gObjectEventPic_SchoolKidM, 2, 4, 1), overworld_frame(gObjectEventPic_SchoolKidM, 2, 4, 2), @@ -514,7 +514,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SchoolKidM[] = { overworld_frame(gObjectEventPic_SchoolKidM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Maniac[] = { +static const struct SpriteFrameImage sPicTable_Maniac[] = { overworld_frame(gObjectEventPic_Maniac, 2, 4, 0), overworld_frame(gObjectEventPic_Maniac, 2, 4, 1), overworld_frame(gObjectEventPic_Maniac, 2, 4, 2), @@ -526,7 +526,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Maniac[] = { overworld_frame(gObjectEventPic_Maniac, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_HexManiac[] = { +static const struct SpriteFrameImage sPicTable_HexManiac[] = { overworld_frame(gObjectEventPic_HexManiac, 2, 4, 0), overworld_frame(gObjectEventPic_HexManiac, 2, 4, 1), overworld_frame(gObjectEventPic_HexManiac, 2, 4, 2), @@ -538,7 +538,7 @@ const struct SpriteFrameImage gObjectEventPicTable_HexManiac[] = { overworld_frame(gObjectEventPic_HexManiac, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_SwimmerM[] = { +static const struct SpriteFrameImage sPicTable_SwimmerM[] = { overworld_frame(gObjectEventPic_SwimmerM, 2, 4, 0), overworld_frame(gObjectEventPic_SwimmerM, 2, 4, 1), overworld_frame(gObjectEventPic_SwimmerM, 2, 4, 2), @@ -550,7 +550,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SwimmerM[] = { overworld_frame(gObjectEventPic_SwimmerM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_SwimmerF[] = { +static const struct SpriteFrameImage sPicTable_SwimmerF[] = { overworld_frame(gObjectEventPic_SwimmerF, 2, 4, 0), overworld_frame(gObjectEventPic_SwimmerF, 2, 4, 1), overworld_frame(gObjectEventPic_SwimmerF, 2, 4, 2), @@ -562,7 +562,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SwimmerF[] = { overworld_frame(gObjectEventPic_SwimmerF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BlackBelt[] = { +static const struct SpriteFrameImage sPicTable_BlackBelt[] = { overworld_frame(gObjectEventPic_BlackBelt, 2, 4, 0), overworld_frame(gObjectEventPic_BlackBelt, 2, 4, 1), overworld_frame(gObjectEventPic_BlackBelt, 2, 4, 2), @@ -574,7 +574,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BlackBelt[] = { overworld_frame(gObjectEventPic_BlackBelt, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Beauty[] = { +static const struct SpriteFrameImage sPicTable_Beauty[] = { overworld_frame(gObjectEventPic_Beauty, 2, 4, 0), overworld_frame(gObjectEventPic_Beauty, 2, 4, 1), overworld_frame(gObjectEventPic_Beauty, 2, 4, 2), @@ -586,7 +586,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Beauty[] = { overworld_frame(gObjectEventPic_Beauty, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Scientist1[] = { +static const struct SpriteFrameImage sPicTable_Scientist1[] = { overworld_frame(gObjectEventPic_Scientist1, 2, 4, 0), overworld_frame(gObjectEventPic_Scientist1, 2, 4, 1), overworld_frame(gObjectEventPic_Scientist1, 2, 4, 2), @@ -598,7 +598,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Scientist1[] = { overworld_frame(gObjectEventPic_Scientist1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Lass[] = { +static const struct SpriteFrameImage sPicTable_Lass[] = { overworld_frame(gObjectEventPic_Lass, 2, 4, 0), overworld_frame(gObjectEventPic_Lass, 2, 4, 1), overworld_frame(gObjectEventPic_Lass, 2, 4, 2), @@ -610,7 +610,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Lass[] = { overworld_frame(gObjectEventPic_Lass, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Gentleman[] = { +static const struct SpriteFrameImage sPicTable_Gentleman[] = { overworld_frame(gObjectEventPic_Gentleman, 2, 4, 0), overworld_frame(gObjectEventPic_Gentleman, 2, 4, 1), overworld_frame(gObjectEventPic_Gentleman, 2, 4, 2), @@ -622,7 +622,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Gentleman[] = { overworld_frame(gObjectEventPic_Gentleman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Sailor[] = { +static const struct SpriteFrameImage sPicTable_Sailor[] = { overworld_frame(gObjectEventPic_Sailor, 2, 4, 0), overworld_frame(gObjectEventPic_Sailor, 2, 4, 1), overworld_frame(gObjectEventPic_Sailor, 2, 4, 2), @@ -634,7 +634,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Sailor[] = { overworld_frame(gObjectEventPic_Sailor, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Fisherman[] = { +static const struct SpriteFrameImage sPicTable_Fisherman[] = { overworld_frame(gObjectEventPic_Fisherman, 2, 4, 0), overworld_frame(gObjectEventPic_Fisherman, 2, 4, 1), overworld_frame(gObjectEventPic_Fisherman, 2, 4, 2), @@ -646,7 +646,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Fisherman[] = { overworld_frame(gObjectEventPic_Fisherman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RunningTriathleteM[] = { +static const struct SpriteFrameImage sPicTable_RunningTriathleteM[] = { overworld_frame(gObjectEventPic_RunningTriathleteM, 2, 4, 0), overworld_frame(gObjectEventPic_RunningTriathleteM, 2, 4, 1), overworld_frame(gObjectEventPic_RunningTriathleteM, 2, 4, 2), @@ -658,7 +658,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RunningTriathleteM[] = { overworld_frame(gObjectEventPic_RunningTriathleteM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RunningTriathleteF[] = { +static const struct SpriteFrameImage sPicTable_RunningTriathleteF[] = { overworld_frame(gObjectEventPic_RunningTriathleteF, 2, 4, 0), overworld_frame(gObjectEventPic_RunningTriathleteF, 2, 4, 1), overworld_frame(gObjectEventPic_RunningTriathleteF, 2, 4, 2), @@ -670,7 +670,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RunningTriathleteF[] = { overworld_frame(gObjectEventPic_RunningTriathleteF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_TuberF[] = { +static const struct SpriteFrameImage sPicTable_TuberF[] = { overworld_frame(gObjectEventPic_TuberF, 2, 2, 0), overworld_frame(gObjectEventPic_TuberF, 2, 2, 1), overworld_frame(gObjectEventPic_TuberF, 2, 2, 2), @@ -682,7 +682,7 @@ const struct SpriteFrameImage gObjectEventPicTable_TuberF[] = { overworld_frame(gObjectEventPic_TuberF, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_TuberM[] = { +static const struct SpriteFrameImage sPicTable_TuberM[] = { overworld_frame(gObjectEventPic_TuberM, 2, 2, 0), overworld_frame(gObjectEventPic_TuberM, 2, 2, 1), overworld_frame(gObjectEventPic_TuberM, 2, 2, 2), @@ -694,7 +694,7 @@ const struct SpriteFrameImage gObjectEventPicTable_TuberM[] = { overworld_frame(gObjectEventPic_TuberM, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Hiker[] = { +static const struct SpriteFrameImage sPicTable_Hiker[] = { overworld_frame(gObjectEventPic_Hiker, 2, 4, 0), overworld_frame(gObjectEventPic_Hiker, 2, 4, 1), overworld_frame(gObjectEventPic_Hiker, 2, 4, 2), @@ -706,7 +706,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Hiker[] = { overworld_frame(gObjectEventPic_Hiker, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_CyclingTriathleteM[] = { +static const struct SpriteFrameImage sPicTable_CyclingTriathleteM[] = { overworld_frame(gObjectEventPic_CyclingTriathleteM, 4, 4, 0), overworld_frame(gObjectEventPic_CyclingTriathleteM, 4, 4, 1), overworld_frame(gObjectEventPic_CyclingTriathleteM, 4, 4, 2), @@ -718,7 +718,7 @@ const struct SpriteFrameImage gObjectEventPicTable_CyclingTriathleteM[] = { overworld_frame(gObjectEventPic_CyclingTriathleteM, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_CyclingTriathleteF[] = { +static const struct SpriteFrameImage sPicTable_CyclingTriathleteF[] = { overworld_frame(gObjectEventPic_CyclingTriathleteF, 4, 4, 0), overworld_frame(gObjectEventPic_CyclingTriathleteF, 4, 4, 1), overworld_frame(gObjectEventPic_CyclingTriathleteF, 4, 4, 2), @@ -730,7 +730,7 @@ const struct SpriteFrameImage gObjectEventPicTable_CyclingTriathleteF[] = { overworld_frame(gObjectEventPic_CyclingTriathleteF, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Nurse[] = { +static const struct SpriteFrameImage sPicTable_Nurse[] = { overworld_frame(gObjectEventPic_Nurse, 2, 4, 0), overworld_frame(gObjectEventPic_Nurse, 2, 4, 1), overworld_frame(gObjectEventPic_Nurse, 2, 4, 2), @@ -743,11 +743,11 @@ const struct SpriteFrameImage gObjectEventPicTable_Nurse[] = { overworld_frame(gObjectEventPic_Nurse, 2, 4, 3), }; -const struct SpriteFrameImage gObjectEventPicTable_ItemBall[] = { +static const struct SpriteFrameImage sPicTable_ItemBall[] = { obj_frame_tiles(gObjectEventPic_ItemBall), }; -const struct SpriteFrameImage gObjectEventPicTable_ProfBirch[] = { +static const struct SpriteFrameImage sPicTable_ProfBirch[] = { overworld_frame(gObjectEventPic_ProfBirch, 2, 4, 0), overworld_frame(gObjectEventPic_ProfBirch, 2, 4, 1), overworld_frame(gObjectEventPic_ProfBirch, 2, 4, 2), @@ -759,7 +759,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ProfBirch[] = { overworld_frame(gObjectEventPic_ProfBirch, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Man4[] = { +static const struct SpriteFrameImage sPicTable_Man4[] = { overworld_frame(gObjectEventPic_Man4, 2, 4, 0), overworld_frame(gObjectEventPic_Man4, 2, 4, 1), overworld_frame(gObjectEventPic_Man4, 2, 4, 2), @@ -771,7 +771,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Man4[] = { overworld_frame(gObjectEventPic_Man4, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Man5[] = { +static const struct SpriteFrameImage sPicTable_Man5[] = { overworld_frame(gObjectEventPic_Man5, 2, 4, 0), overworld_frame(gObjectEventPic_Man5, 2, 4, 1), overworld_frame(gObjectEventPic_Man5, 2, 4, 2), @@ -783,7 +783,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Man5[] = { overworld_frame(gObjectEventPic_Man5, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_ReporterM[] = { +static const struct SpriteFrameImage sPicTable_ReporterM[] = { overworld_frame(gObjectEventPic_ReporterM, 2, 4, 0), overworld_frame(gObjectEventPic_ReporterM, 2, 4, 1), overworld_frame(gObjectEventPic_ReporterM, 2, 4, 2), @@ -795,7 +795,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ReporterM[] = { overworld_frame(gObjectEventPic_ReporterM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_ReporterF[] = { +static const struct SpriteFrameImage sPicTable_ReporterF[] = { overworld_frame(gObjectEventPic_ReporterF, 2, 4, 0), overworld_frame(gObjectEventPic_ReporterF, 2, 4, 1), overworld_frame(gObjectEventPic_ReporterF, 2, 4, 2), @@ -807,7 +807,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ReporterF[] = { overworld_frame(gObjectEventPic_ReporterF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MauvilleOldMan1[] = { +static const struct SpriteFrameImage sPicTable_MauvilleOldMan1[] = { overworld_frame(gObjectEventPic_MauvilleOldMan1, 2, 4, 0), overworld_frame(gObjectEventPic_MauvilleOldMan1, 2, 4, 1), overworld_frame(gObjectEventPic_MauvilleOldMan1, 2, 4, 2), @@ -819,7 +819,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MauvilleOldMan1[] = { overworld_frame(gObjectEventPic_MauvilleOldMan1, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MauvilleOldMan2[] = { +static const struct SpriteFrameImage sPicTable_MauvilleOldMan2[] = { overworld_frame(gObjectEventPic_MauvilleOldMan2, 2, 4, 0), overworld_frame(gObjectEventPic_MauvilleOldMan2, 2, 4, 1), overworld_frame(gObjectEventPic_MauvilleOldMan2, 2, 4, 2), @@ -831,38 +831,38 @@ const struct SpriteFrameImage gObjectEventPicTable_MauvilleOldMan2[] = { overworld_frame(gObjectEventPic_MauvilleOldMan2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedNatuDoll[] = { +static const struct SpriteFrameImage sPicTable_UnusedNatuDoll[] = { obj_frame_tiles(gObjectEventPic_UnusedNatuDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedMagnemiteDoll[] = { +static const struct SpriteFrameImage sPicTable_UnusedMagnemiteDoll[] = { obj_frame_tiles(gObjectEventPic_UnusedMagnemiteDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedSquirtleDoll[] = { +static const struct SpriteFrameImage sPicTable_UnusedSquirtleDoll[] = { obj_frame_tiles(gObjectEventPic_UnusedSquirtleDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedWooperDoll[] = { +static const struct SpriteFrameImage sPicTable_UnusedWooperDoll[] = { obj_frame_tiles(gObjectEventPic_UnusedWooperDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedPikachuDoll[] = { +static const struct SpriteFrameImage sPicTable_UnusedPikachuDoll[] = { obj_frame_tiles(gObjectEventPic_UnusedPikachuDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_UnusedPorygon2Doll[] = { +static const struct SpriteFrameImage sPicTable_UnusedPorygon2Doll[] = { obj_frame_tiles(gObjectEventPic_UnusedPorygon2Doll), }; -const struct SpriteFrameImage gObjectEventPicTable_CuttableTree[] = { +static const struct SpriteFrameImage sPicTable_CuttableTree[] = { overworld_frame(gObjectEventPic_CuttableTree, 2, 2, 0), overworld_frame(gObjectEventPic_CuttableTree, 2, 2, 1), overworld_frame(gObjectEventPic_CuttableTree, 2, 2, 2), overworld_frame(gObjectEventPic_CuttableTree, 2, 2, 3), }; -const struct SpriteFrameImage gObjectEventPicTable_MartEmployee[] = { +static const struct SpriteFrameImage sPicTable_MartEmployee[] = { overworld_frame(gObjectEventPic_MartEmployee, 2, 4, 0), overworld_frame(gObjectEventPic_MartEmployee, 2, 4, 1), overworld_frame(gObjectEventPic_MartEmployee, 2, 4, 2), @@ -874,7 +874,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MartEmployee[] = { overworld_frame(gObjectEventPic_MartEmployee, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RooftopSaleWoman[] = { +static const struct SpriteFrameImage sPicTable_RooftopSaleWoman[] = { overworld_frame(gObjectEventPic_RooftopSaleWoman, 2, 4, 0), overworld_frame(gObjectEventPic_RooftopSaleWoman, 2, 4, 1), overworld_frame(gObjectEventPic_RooftopSaleWoman, 2, 4, 2), @@ -886,7 +886,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RooftopSaleWoman[] = { overworld_frame(gObjectEventPic_RooftopSaleWoman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Teala[] = { +static const struct SpriteFrameImage sPicTable_Teala[] = { overworld_frame(gObjectEventPic_Teala, 2, 4, 0), overworld_frame(gObjectEventPic_Teala, 2, 4, 1), overworld_frame(gObjectEventPic_Teala, 2, 4, 2), @@ -898,18 +898,18 @@ const struct SpriteFrameImage gObjectEventPicTable_Teala[] = { overworld_frame(gObjectEventPic_Teala, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BreakableRock[] = { +static const struct SpriteFrameImage sPicTable_BreakableRock[] = { overworld_frame(gObjectEventPic_BreakableRock, 2, 2, 0), overworld_frame(gObjectEventPic_BreakableRock, 2, 2, 1), overworld_frame(gObjectEventPic_BreakableRock, 2, 2, 2), overworld_frame(gObjectEventPic_BreakableRock, 2, 2, 3), }; -const struct SpriteFrameImage gObjectEventPicTable_PushableBoulder[] = { +static const struct SpriteFrameImage sPicTable_PushableBoulder[] = { obj_frame_tiles(gObjectEventPic_PushableBoulder), }; -const struct SpriteFrameImage gObjectEventPicTable_MrBrineysBoat[] = { +static const struct SpriteFrameImage sPicTable_MrBrineysBoat[] = { overworld_frame(gObjectEventPic_MrBrineysBoat, 4, 4, 0), overworld_frame(gObjectEventPic_MrBrineysBoat, 4, 4, 1), overworld_frame(gObjectEventPic_MrBrineysBoat, 4, 4, 2), @@ -921,11 +921,11 @@ const struct SpriteFrameImage gObjectEventPicTable_MrBrineysBoat[] = { overworld_frame(gObjectEventPic_MrBrineysBoat, 4, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Truck[] = { +static const struct SpriteFrameImage sPicTable_Truck[] = { obj_frame_tiles(gObjectEventPic_Truck), }; -const struct SpriteFrameImage gObjectEventPicTable_VigorothCarryingBox[] = { +static const struct SpriteFrameImage sPicTable_VigorothCarryingBox[] = { overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 0), overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 0), overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 0), @@ -937,7 +937,7 @@ const struct SpriteFrameImage gObjectEventPicTable_VigorothCarryingBox[] = { overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_VigorothFacingAway[] = { +static const struct SpriteFrameImage sPicTable_VigorothFacingAway[] = { overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 3), overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 3), overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 3), @@ -949,11 +949,11 @@ const struct SpriteFrameImage gObjectEventPicTable_VigorothFacingAway[] = { overworld_frame(gObjectEventPic_Vigoroth, 4, 4, 4), }; -const struct SpriteFrameImage gObjectEventPicTable_BirchsBag[] = { +static const struct SpriteFrameImage sPicTable_BirchsBag[] = { obj_frame_tiles(gObjectEventPic_BirchsBag), }; -const struct SpriteFrameImage gObjectEventPicTable_EnemyZigzagoon[] = { +static const struct SpriteFrameImage sPicTable_EnemyZigzagoon[] = { overworld_frame(gObjectEventPic_EnemyZigzagoon, 4, 4, 0), overworld_frame(gObjectEventPic_EnemyZigzagoon, 4, 4, 1), overworld_frame(gObjectEventPic_EnemyZigzagoon, 4, 4, 2), @@ -965,7 +965,7 @@ const struct SpriteFrameImage gObjectEventPicTable_EnemyZigzagoon[] = { overworld_frame(gObjectEventPic_EnemyZigzagoon, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Poochyena[] = { +static const struct SpriteFrameImage sPicTable_Poochyena[] = { overworld_frame(gObjectEventPic_Poochyena, 4, 4, 0), overworld_frame(gObjectEventPic_Poochyena, 4, 4, 1), overworld_frame(gObjectEventPic_Poochyena, 4, 4, 2), @@ -977,7 +977,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Poochyena[] = { overworld_frame(gObjectEventPic_Poochyena, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Artist[] = { +static const struct SpriteFrameImage sPicTable_Artist[] = { overworld_frame(gObjectEventPic_Artist, 2, 4, 0), overworld_frame(gObjectEventPic_Artist, 2, 4, 1), overworld_frame(gObjectEventPic_Artist, 2, 4, 2), @@ -989,7 +989,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Artist[] = { overworld_frame(gObjectEventPic_Artist, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MayNormal[] = { +static const struct SpriteFrameImage sPicTable_MayNormal[] = { overworld_frame(gObjectEventPic_MayNormal, 2, 4, 0), overworld_frame(gObjectEventPic_MayNormal, 2, 4, 1), overworld_frame(gObjectEventPic_MayNormal, 2, 4, 2), @@ -1010,7 +1010,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayNormal[] = { overworld_frame(gObjectEventPic_MayRunning, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MayMachBike[] = { +static const struct SpriteFrameImage sPicTable_MayMachBike[] = { overworld_frame(gObjectEventPic_MayMachBike, 4, 4, 0), overworld_frame(gObjectEventPic_MayMachBike, 4, 4, 1), overworld_frame(gObjectEventPic_MayMachBike, 4, 4, 2), @@ -1022,7 +1022,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayMachBike[] = { overworld_frame(gObjectEventPic_MayMachBike, 4, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MayAcroBike[] = { +static const struct SpriteFrameImage sPicTable_MayAcroBike[] = { overworld_frame(gObjectEventPic_MayAcroBike, 4, 4, 0), overworld_frame(gObjectEventPic_MayAcroBike, 4, 4, 1), overworld_frame(gObjectEventPic_MayAcroBike, 4, 4, 2), @@ -1052,7 +1052,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayAcroBike[] = { overworld_frame(gObjectEventPic_MayAcroBike, 4, 4, 26), }; -const struct SpriteFrameImage gObjectEventPicTable_MaySurfing[] = { +static const struct SpriteFrameImage sPicTable_MaySurfing[] = { overworld_frame(gObjectEventPic_MaySurfing, 4, 4, 0), overworld_frame(gObjectEventPic_MaySurfing, 4, 4, 2), overworld_frame(gObjectEventPic_MaySurfing, 4, 4, 4), @@ -1067,7 +1067,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MaySurfing[] = { overworld_frame(gObjectEventPic_MaySurfing, 4, 4, 5), }; -const struct SpriteFrameImage gObjectEventPicTable_MayUnderwater[] = { +static const struct SpriteFrameImage sPicTable_MayUnderwater[] = { overworld_frame(gObjectEventPic_MayUnderwater, 4, 4, 0), overworld_frame(gObjectEventPic_MayUnderwater, 4, 4, 1), overworld_frame(gObjectEventPic_MayUnderwater, 4, 4, 2), @@ -1079,7 +1079,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayUnderwater[] = { overworld_frame(gObjectEventPic_MayUnderwater, 4, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_MayFieldMove[] = { +static const struct SpriteFrameImage sPicTable_MayFieldMove[] = { overworld_frame(gObjectEventPic_MayFieldMove, 4, 4, 0), overworld_frame(gObjectEventPic_MayFieldMove, 4, 4, 1), overworld_frame(gObjectEventPic_MayFieldMove, 4, 4, 2), @@ -1087,7 +1087,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayFieldMove[] = { overworld_frame(gObjectEventPic_MayFieldMove, 4, 4, 4), }; -const struct SpriteFrameImage gObjectEventPicTable_Cameraman[] = { +static const struct SpriteFrameImage sPicTable_Cameraman[] = { overworld_frame(gObjectEventPic_Cameraman, 2, 4, 0), overworld_frame(gObjectEventPic_Cameraman, 2, 4, 1), overworld_frame(gObjectEventPic_Cameraman, 2, 4, 2), @@ -1099,15 +1099,15 @@ const struct SpriteFrameImage gObjectEventPicTable_Cameraman[] = { overworld_frame(gObjectEventPic_Cameraman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MovingBox[] = { +static const struct SpriteFrameImage sPicTable_MovingBox[] = { obj_frame_tiles(gObjectEventPic_MovingBox), }; -const struct SpriteFrameImage gObjectEventPicTable_CableCar[] = { +static const struct SpriteFrameImage sPicTable_CableCar[] = { obj_frame_tiles(gObjectEventPic_CableCar), }; -const struct SpriteFrameImage gObjectEventPicTable_Scientist2[] = { +static const struct SpriteFrameImage sPicTable_Scientist2[] = { overworld_frame(gObjectEventPic_Scientist2, 2, 4, 0), overworld_frame(gObjectEventPic_Scientist2, 2, 4, 1), overworld_frame(gObjectEventPic_Scientist2, 2, 4, 2), @@ -1119,7 +1119,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Scientist2[] = { overworld_frame(gObjectEventPic_Scientist2, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_DevonEmployee[] = { +static const struct SpriteFrameImage sPicTable_DevonEmployee[] = { overworld_frame(gObjectEventPic_DevonEmployee, 2, 4, 0), overworld_frame(gObjectEventPic_DevonEmployee, 2, 4, 1), overworld_frame(gObjectEventPic_DevonEmployee, 2, 4, 2), @@ -1131,7 +1131,7 @@ const struct SpriteFrameImage gObjectEventPicTable_DevonEmployee[] = { overworld_frame(gObjectEventPic_DevonEmployee, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_AquaMemberM[] = { +static const struct SpriteFrameImage sPicTable_AquaMemberM[] = { overworld_frame(gObjectEventPic_AquaMemberM, 2, 4, 0), overworld_frame(gObjectEventPic_AquaMemberM, 2, 4, 1), overworld_frame(gObjectEventPic_AquaMemberM, 2, 4, 2), @@ -1143,7 +1143,7 @@ const struct SpriteFrameImage gObjectEventPicTable_AquaMemberM[] = { overworld_frame(gObjectEventPic_AquaMemberM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_AquaMemberF[] = { +static const struct SpriteFrameImage sPicTable_AquaMemberF[] = { overworld_frame(gObjectEventPic_AquaMemberF, 2, 4, 0), overworld_frame(gObjectEventPic_AquaMemberF, 2, 4, 1), overworld_frame(gObjectEventPic_AquaMemberF, 2, 4, 2), @@ -1155,7 +1155,7 @@ const struct SpriteFrameImage gObjectEventPicTable_AquaMemberF[] = { overworld_frame(gObjectEventPic_AquaMemberF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MagmaMemberM[] = { +static const struct SpriteFrameImage sPicTable_MagmaMemberM[] = { overworld_frame(gObjectEventPic_MagmaMemberM, 2, 4, 0), overworld_frame(gObjectEventPic_MagmaMemberM, 2, 4, 1), overworld_frame(gObjectEventPic_MagmaMemberM, 2, 4, 2), @@ -1167,7 +1167,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MagmaMemberM[] = { overworld_frame(gObjectEventPic_MagmaMemberM, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MagmaMemberF[] = { +static const struct SpriteFrameImage sPicTable_MagmaMemberF[] = { overworld_frame(gObjectEventPic_MagmaMemberF, 2, 4, 0), overworld_frame(gObjectEventPic_MagmaMemberF, 2, 4, 1), overworld_frame(gObjectEventPic_MagmaMemberF, 2, 4, 2), @@ -1179,7 +1179,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MagmaMemberF[] = { overworld_frame(gObjectEventPic_MagmaMemberF, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Sidney[] = { +static const struct SpriteFrameImage sPicTable_Sidney[] = { overworld_frame(gObjectEventPic_Sidney, 2, 4, 0), overworld_frame(gObjectEventPic_Sidney, 2, 4, 1), overworld_frame(gObjectEventPic_Sidney, 2, 4, 2), @@ -1191,7 +1191,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Sidney[] = { overworld_frame(gObjectEventPic_Sidney, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Phoebe[] = { +static const struct SpriteFrameImage sPicTable_Phoebe[] = { overworld_frame(gObjectEventPic_Phoebe, 2, 4, 0), overworld_frame(gObjectEventPic_Phoebe, 2, 4, 1), overworld_frame(gObjectEventPic_Phoebe, 2, 4, 2), @@ -1203,7 +1203,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Phoebe[] = { overworld_frame(gObjectEventPic_Phoebe, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Glacia[] = { +static const struct SpriteFrameImage sPicTable_Glacia[] = { overworld_frame(gObjectEventPic_Glacia, 2, 4, 0), overworld_frame(gObjectEventPic_Glacia, 2, 4, 1), overworld_frame(gObjectEventPic_Glacia, 2, 4, 2), @@ -1215,7 +1215,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Glacia[] = { overworld_frame(gObjectEventPic_Glacia, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Drake[] = { +static const struct SpriteFrameImage sPicTable_Drake[] = { overworld_frame(gObjectEventPic_Drake, 2, 4, 0), overworld_frame(gObjectEventPic_Drake, 2, 4, 1), overworld_frame(gObjectEventPic_Drake, 2, 4, 2), @@ -1227,7 +1227,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Drake[] = { overworld_frame(gObjectEventPic_Drake, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Roxanne[] = { +static const struct SpriteFrameImage sPicTable_Roxanne[] = { overworld_frame(gObjectEventPic_Roxanne, 2, 4, 0), overworld_frame(gObjectEventPic_Roxanne, 2, 4, 1), overworld_frame(gObjectEventPic_Roxanne, 2, 4, 2), @@ -1239,7 +1239,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Roxanne[] = { overworld_frame(gObjectEventPic_Roxanne, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Brawly[] = { +static const struct SpriteFrameImage sPicTable_Brawly[] = { overworld_frame(gObjectEventPic_Brawly, 2, 4, 0), overworld_frame(gObjectEventPic_Brawly, 2, 4, 1), overworld_frame(gObjectEventPic_Brawly, 2, 4, 2), @@ -1251,7 +1251,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Brawly[] = { overworld_frame(gObjectEventPic_Brawly, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Wattson[] = { +static const struct SpriteFrameImage sPicTable_Wattson[] = { overworld_frame(gObjectEventPic_Wattson, 2, 4, 0), overworld_frame(gObjectEventPic_Wattson, 2, 4, 1), overworld_frame(gObjectEventPic_Wattson, 2, 4, 2), @@ -1263,7 +1263,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Wattson[] = { overworld_frame(gObjectEventPic_Wattson, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Flannery[] = { +static const struct SpriteFrameImage sPicTable_Flannery[] = { overworld_frame(gObjectEventPic_Flannery, 2, 4, 0), overworld_frame(gObjectEventPic_Flannery, 2, 4, 1), overworld_frame(gObjectEventPic_Flannery, 2, 4, 2), @@ -1275,7 +1275,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Flannery[] = { overworld_frame(gObjectEventPic_Flannery, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Norman[] = { +static const struct SpriteFrameImage sPicTable_Norman[] = { overworld_frame(gObjectEventPic_Norman, 2, 4, 0), overworld_frame(gObjectEventPic_Norman, 2, 4, 1), overworld_frame(gObjectEventPic_Norman, 2, 4, 2), @@ -1287,7 +1287,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Norman[] = { overworld_frame(gObjectEventPic_Norman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Winona[] = { +static const struct SpriteFrameImage sPicTable_Winona[] = { overworld_frame(gObjectEventPic_Winona, 2, 4, 0), overworld_frame(gObjectEventPic_Winona, 2, 4, 1), overworld_frame(gObjectEventPic_Winona, 2, 4, 2), @@ -1299,7 +1299,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Winona[] = { overworld_frame(gObjectEventPic_Winona, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Liza[] = { +static const struct SpriteFrameImage sPicTable_Liza[] = { overworld_frame(gObjectEventPic_Liza, 2, 4, 0), overworld_frame(gObjectEventPic_Liza, 2, 4, 1), overworld_frame(gObjectEventPic_Liza, 2, 4, 2), @@ -1311,7 +1311,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Liza[] = { overworld_frame(gObjectEventPic_Liza, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Tate[] = { +static const struct SpriteFrameImage sPicTable_Tate[] = { overworld_frame(gObjectEventPic_Tate, 2, 4, 0), overworld_frame(gObjectEventPic_Tate, 2, 4, 1), overworld_frame(gObjectEventPic_Tate, 2, 4, 2), @@ -1323,7 +1323,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Tate[] = { overworld_frame(gObjectEventPic_Tate, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Wallace[] = { +static const struct SpriteFrameImage sPicTable_Wallace[] = { overworld_frame(gObjectEventPic_Wallace, 2, 4, 0), overworld_frame(gObjectEventPic_Wallace, 2, 4, 1), overworld_frame(gObjectEventPic_Wallace, 2, 4, 2), @@ -1335,7 +1335,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Wallace[] = { overworld_frame(gObjectEventPic_Wallace, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Steven[] = { +static const struct SpriteFrameImage sPicTable_Steven[] = { overworld_frame(gObjectEventPic_Steven, 2, 4, 0), overworld_frame(gObjectEventPic_Steven, 2, 4, 1), overworld_frame(gObjectEventPic_Steven, 2, 4, 2), @@ -1347,7 +1347,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Steven[] = { overworld_frame(gObjectEventPic_Steven, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Wally[] = { +static const struct SpriteFrameImage sPicTable_Wally[] = { overworld_frame(gObjectEventPic_Wally, 2, 4, 0), overworld_frame(gObjectEventPic_Wally, 2, 4, 1), overworld_frame(gObjectEventPic_Wally, 2, 4, 2), @@ -1359,7 +1359,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Wally[] = { overworld_frame(gObjectEventPic_Wally, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RubySapphireLittleBoy[] = { +static const struct SpriteFrameImage sPicTable_RubySapphireLittleBoy[] = { overworld_frame(gObjectEventPic_RubySapphireLittleBoy, 2, 2, 0), overworld_frame(gObjectEventPic_RubySapphireLittleBoy, 2, 2, 1), overworld_frame(gObjectEventPic_RubySapphireLittleBoy, 2, 2, 2), @@ -1371,7 +1371,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RubySapphireLittleBoy[] = { overworld_frame(gObjectEventPic_RubySapphireLittleBoy, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanFishing[] = { +static const struct SpriteFrameImage sPicTable_BrendanFishing[] = { overworld_frame(gObjectEventPic_BrendanFishing, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanFishing, 4, 4, 1), overworld_frame(gObjectEventPic_BrendanFishing, 4, 4, 2), @@ -1386,7 +1386,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanFishing[] = { overworld_frame(gObjectEventPic_BrendanFishing, 4, 4, 11), }; -const struct SpriteFrameImage gObjectEventPicTable_MayFishing[] = { +static const struct SpriteFrameImage sPicTable_MayFishing[] = { overworld_frame(gObjectEventPic_MayFishing, 4, 4, 0), overworld_frame(gObjectEventPic_MayFishing, 4, 4, 1), overworld_frame(gObjectEventPic_MayFishing, 4, 4, 2), @@ -1401,7 +1401,7 @@ const struct SpriteFrameImage gObjectEventPicTable_MayFishing[] = { overworld_frame(gObjectEventPic_MayFishing, 4, 4, 11), }; -const struct SpriteFrameImage gObjectEventPicTable_HotSpringsOldWoman[] = { +static const struct SpriteFrameImage sPicTable_HotSpringsOldWoman[] = { overworld_frame(gObjectEventPic_HotSpringsOldWoman, 2, 4, 0), overworld_frame(gObjectEventPic_HotSpringsOldWoman, 2, 4, 1), overworld_frame(gObjectEventPic_HotSpringsOldWoman, 2, 4, 2), @@ -1413,7 +1413,7 @@ const struct SpriteFrameImage gObjectEventPicTable_HotSpringsOldWoman[] = { overworld_frame(gObjectEventPic_HotSpringsOldWoman, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_SSTidal[] = { +static const struct SpriteFrameImage sPicTable_SSTidal[] = { obj_frame_tiles(gObjectEventPic_SSTidal), obj_frame_tiles(gObjectEventPic_SSTidal), obj_frame_tiles(gObjectEventPic_SSTidal), @@ -1425,7 +1425,7 @@ const struct SpriteFrameImage gObjectEventPicTable_SSTidal[] = { obj_frame_tiles(gObjectEventPic_SSTidal), }; -const struct SpriteFrameImage gObjectEventPicTable_SubmarineShadow[] = { +static const struct SpriteFrameImage sPicTable_SubmarineShadow[] = { obj_frame_tiles(gObjectEventPic_SubmarineShadow), obj_frame_tiles(gObjectEventPic_SubmarineShadow), obj_frame_tiles(gObjectEventPic_SubmarineShadow), @@ -1437,187 +1437,187 @@ const struct SpriteFrameImage gObjectEventPicTable_SubmarineShadow[] = { obj_frame_tiles(gObjectEventPic_SubmarineShadow), }; -const struct SpriteFrameImage gObjectEventPicTable_PichuDoll[] = { +static const struct SpriteFrameImage sPicTable_PichuDoll[] = { obj_frame_tiles(gObjectEventPic_PichuDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_PikachuDoll[] = { +static const struct SpriteFrameImage sPicTable_PikachuDoll[] = { obj_frame_tiles(gObjectEventPic_PikachuDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_MarillDoll[] = { +static const struct SpriteFrameImage sPicTable_MarillDoll[] = { obj_frame_tiles(gObjectEventPic_MarillDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_TogepiDoll[] = { +static const struct SpriteFrameImage sPicTable_TogepiDoll[] = { obj_frame_tiles(gObjectEventPic_TogepiDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_CyndaquilDoll[] = { +static const struct SpriteFrameImage sPicTable_CyndaquilDoll[] = { obj_frame_tiles(gObjectEventPic_CyndaquilDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_ChikoritaDoll[] = { +static const struct SpriteFrameImage sPicTable_ChikoritaDoll[] = { obj_frame_tiles(gObjectEventPic_ChikoritaDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_TotodileDoll[] = { +static const struct SpriteFrameImage sPicTable_TotodileDoll[] = { obj_frame_tiles(gObjectEventPic_TotodileDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_JigglypuffDoll[] = { +static const struct SpriteFrameImage sPicTable_JigglypuffDoll[] = { obj_frame_tiles(gObjectEventPic_JigglypuffDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_MeowthDoll[] = { +static const struct SpriteFrameImage sPicTable_MeowthDoll[] = { obj_frame_tiles(gObjectEventPic_MeowthDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_ClefairyDoll[] = { +static const struct SpriteFrameImage sPicTable_ClefairyDoll[] = { obj_frame_tiles(gObjectEventPic_ClefairyDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_DittoDoll[] = { +static const struct SpriteFrameImage sPicTable_DittoDoll[] = { obj_frame_tiles(gObjectEventPic_DittoDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_SmoochumDoll[] = { +static const struct SpriteFrameImage sPicTable_SmoochumDoll[] = { obj_frame_tiles(gObjectEventPic_SmoochumDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_TreeckoDoll[] = { +static const struct SpriteFrameImage sPicTable_TreeckoDoll[] = { obj_frame_tiles(gObjectEventPic_TreeckoDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_TorchicDoll[] = { +static const struct SpriteFrameImage sPicTable_TorchicDoll[] = { obj_frame_tiles(gObjectEventPic_TorchicDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_MudkipDoll[] = { +static const struct SpriteFrameImage sPicTable_MudkipDoll[] = { obj_frame_tiles(gObjectEventPic_MudkipDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_DuskullDoll[] = { +static const struct SpriteFrameImage sPicTable_DuskullDoll[] = { obj_frame_tiles(gObjectEventPic_DuskullDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_WynautDoll[] = { +static const struct SpriteFrameImage sPicTable_WynautDoll[] = { obj_frame_tiles(gObjectEventPic_WynautDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BaltoyDoll[] = { +static const struct SpriteFrameImage sPicTable_BaltoyDoll[] = { obj_frame_tiles(gObjectEventPic_BaltoyDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_KecleonDoll[] = { +static const struct SpriteFrameImage sPicTable_KecleonDoll[] = { obj_frame_tiles(gObjectEventPic_KecleonDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_AzurillDoll[] = { +static const struct SpriteFrameImage sPicTable_AzurillDoll[] = { obj_frame_tiles(gObjectEventPic_AzurillDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_SkittyDoll[] = { +static const struct SpriteFrameImage sPicTable_SkittyDoll[] = { obj_frame_tiles(gObjectEventPic_SkittyDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_SwabluDoll[] = { +static const struct SpriteFrameImage sPicTable_SwabluDoll[] = { obj_frame_tiles(gObjectEventPic_SwabluDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_GulpinDoll[] = { +static const struct SpriteFrameImage sPicTable_GulpinDoll[] = { obj_frame_tiles(gObjectEventPic_GulpinDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_LotadDoll[] = { +static const struct SpriteFrameImage sPicTable_LotadDoll[] = { obj_frame_tiles(gObjectEventPic_LotadDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_SeedotDoll[] = { +static const struct SpriteFrameImage sPicTable_SeedotDoll[] = { obj_frame_tiles(gObjectEventPic_SeedotDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_PikaCushion[] = { +static const struct SpriteFrameImage sPicTable_PikaCushion[] = { obj_frame_tiles(gObjectEventPic_PikaCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_RoundCushion[] = { +static const struct SpriteFrameImage sPicTable_RoundCushion[] = { obj_frame_tiles(gObjectEventPic_RoundCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_KissCushion[] = { +static const struct SpriteFrameImage sPicTable_KissCushion[] = { obj_frame_tiles(gObjectEventPic_KissCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_ZigzagCushion[] = { +static const struct SpriteFrameImage sPicTable_ZigzagCushion[] = { obj_frame_tiles(gObjectEventPic_ZigzagCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_SpinCushion[] = { +static const struct SpriteFrameImage sPicTable_SpinCushion[] = { obj_frame_tiles(gObjectEventPic_SpinCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_DiamondCushion[] = { +static const struct SpriteFrameImage sPicTable_DiamondCushion[] = { obj_frame_tiles(gObjectEventPic_DiamondCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_BallCushion[] = { +static const struct SpriteFrameImage sPicTable_BallCushion[] = { obj_frame_tiles(gObjectEventPic_BallCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_GrassCushion[] = { +static const struct SpriteFrameImage sPicTable_GrassCushion[] = { obj_frame_tiles(gObjectEventPic_GrassCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_FireCushion[] = { +static const struct SpriteFrameImage sPicTable_FireCushion[] = { obj_frame_tiles(gObjectEventPic_FireCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_WaterCushion[] = { +static const struct SpriteFrameImage sPicTable_WaterCushion[] = { obj_frame_tiles(gObjectEventPic_WaterCushion), }; -const struct SpriteFrameImage gObjectEventPicTable_BigSnorlaxDoll[] = { +static const struct SpriteFrameImage sPicTable_BigSnorlaxDoll[] = { obj_frame_tiles(gObjectEventPic_BigSnorlaxDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigRhydonDoll[] = { +static const struct SpriteFrameImage sPicTable_BigRhydonDoll[] = { obj_frame_tiles(gObjectEventPic_BigRhydonDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigLaprasDoll[] = { +static const struct SpriteFrameImage sPicTable_BigLaprasDoll[] = { obj_frame_tiles(gObjectEventPic_BigLaprasDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigVenusaurDoll[] = { +static const struct SpriteFrameImage sPicTable_BigVenusaurDoll[] = { obj_frame_tiles(gObjectEventPic_BigVenusaurDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigCharizardDoll[] = { +static const struct SpriteFrameImage sPicTable_BigCharizardDoll[] = { obj_frame_tiles(gObjectEventPic_BigCharizardDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigBlastoiseDoll[] = { +static const struct SpriteFrameImage sPicTable_BigBlastoiseDoll[] = { obj_frame_tiles(gObjectEventPic_BigBlastoiseDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigWailmerDoll[] = { +static const struct SpriteFrameImage sPicTable_BigWailmerDoll[] = { obj_frame_tiles(gObjectEventPic_BigWailmerDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigRegirockDoll[] = { +static const struct SpriteFrameImage sPicTable_BigRegirockDoll[] = { obj_frame_tiles(gObjectEventPic_BigRegirockDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigRegiceDoll[] = { +static const struct SpriteFrameImage sPicTable_BigRegiceDoll[] = { obj_frame_tiles(gObjectEventPic_BigRegiceDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_BigRegisteelDoll[] = { +static const struct SpriteFrameImage sPicTable_BigRegisteelDoll[] = { obj_frame_tiles(gObjectEventPic_BigRegisteelDoll), }; -const struct SpriteFrameImage gObjectEventPicTable_LatiasLatios[] = { +static const struct SpriteFrameImage sPicTable_LatiasLatios[] = { overworld_frame(gObjectEventPic_LatiasLatios, 4, 4, 0), overworld_frame(gObjectEventPic_LatiasLatios, 4, 4, 0), overworld_frame(gObjectEventPic_LatiasLatios, 4, 4, 0), @@ -1629,7 +1629,7 @@ const struct SpriteFrameImage gObjectEventPicTable_LatiasLatios[] = { overworld_frame(gObjectEventPic_LatiasLatios, 4, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_GameboyKid[] = { +static const struct SpriteFrameImage sPicTable_GameboyKid[] = { overworld_frame(gObjectEventPic_GameboyKid, 2, 4, 0), overworld_frame(gObjectEventPic_GameboyKid, 2, 4, 1), overworld_frame(gObjectEventPic_GameboyKid, 2, 4, 2), @@ -1641,7 +1641,7 @@ const struct SpriteFrameImage gObjectEventPicTable_GameboyKid[] = { overworld_frame(gObjectEventPic_GameboyKid, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_ContestJudge[] = { +static const struct SpriteFrameImage sPicTable_ContestJudge[] = { overworld_frame(gObjectEventPic_ContestJudge, 2, 4, 0), overworld_frame(gObjectEventPic_ContestJudge, 2, 4, 1), overworld_frame(gObjectEventPic_ContestJudge, 2, 4, 2), @@ -1653,7 +1653,7 @@ const struct SpriteFrameImage gObjectEventPicTable_ContestJudge[] = { overworld_frame(gObjectEventPic_ContestJudge, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanWatering[] = { +static const struct SpriteFrameImage sPicTable_BrendanWatering[] = { overworld_frame(gObjectEventPic_BrendanWatering, 4, 4, 0), overworld_frame(gObjectEventPic_BrendanWatering, 4, 4, 2), overworld_frame(gObjectEventPic_BrendanWatering, 4, 4, 4), @@ -1665,7 +1665,7 @@ const struct SpriteFrameImage gObjectEventPicTable_BrendanWatering[] = { overworld_frame(gObjectEventPic_BrendanWatering, 4, 4, 5), }; -const struct SpriteFrameImage gObjectEventPicTable_MayWatering[] = { +static const struct SpriteFrameImage sPicTable_MayWatering[] = { overworld_frame(gObjectEventPic_MayWatering, 4, 4, 0), overworld_frame(gObjectEventPic_MayWatering, 4, 4, 2), overworld_frame(gObjectEventPic_MayWatering, 4, 4, 4), @@ -1677,15 +1677,15 @@ const struct SpriteFrameImage gObjectEventPicTable_MayWatering[] = { overworld_frame(gObjectEventPic_MayWatering, 4, 4, 5), }; -const struct SpriteFrameImage gObjectEventPicTable_BrendanDecorating[] = { +static const struct SpriteFrameImage sPicTable_BrendanDecorating[] = { obj_frame_tiles(gObjectEventPic_BrendanDecorating), }; -const struct SpriteFrameImage gObjectEventPicTable_MayDecorating[] = { +static const struct SpriteFrameImage sPicTable_MayDecorating[] = { obj_frame_tiles(gObjectEventPic_MayDecorating), }; -const struct SpriteFrameImage gObjectEventPicTable_Archie[] = { +static const struct SpriteFrameImage sPicTable_Archie[] = { overworld_frame(gObjectEventPic_Archie, 2, 4, 0), overworld_frame(gObjectEventPic_Archie, 2, 4, 1), overworld_frame(gObjectEventPic_Archie, 2, 4, 2), @@ -1697,7 +1697,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Archie[] = { overworld_frame(gObjectEventPic_Archie, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Maxie[] = { +static const struct SpriteFrameImage sPicTable_Maxie[] = { overworld_frame(gObjectEventPic_Maxie, 2, 4, 0), overworld_frame(gObjectEventPic_Maxie, 2, 4, 1), overworld_frame(gObjectEventPic_Maxie, 2, 4, 2), @@ -1709,7 +1709,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Maxie[] = { overworld_frame(gObjectEventPic_Maxie, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_KyogreFront[] = { +static const struct SpriteFrameImage sPicTable_KyogreFront[] = { overworld_frame(gObjectEventPic_Kyogre, 4, 4, 0), overworld_frame(gObjectEventPic_Kyogre, 4, 4, 0), overworld_frame(gObjectEventPic_Kyogre, 4, 4, 0), @@ -1721,7 +1721,7 @@ const struct SpriteFrameImage gObjectEventPicTable_KyogreFront[] = { overworld_frame(gObjectEventPic_Kyogre, 4, 4, 1), }; -const struct SpriteFrameImage gObjectEventPicTable_GroudonFront[] = { +static const struct SpriteFrameImage sPicTable_GroudonFront[] = { overworld_frame(gObjectEventPic_Groudon, 4, 4, 0), overworld_frame(gObjectEventPic_Groudon, 4, 4, 0), overworld_frame(gObjectEventPic_Groudon, 4, 4, 0), @@ -1733,7 +1733,7 @@ const struct SpriteFrameImage gObjectEventPicTable_GroudonFront[] = { overworld_frame(gObjectEventPic_Groudon, 4, 4, 1), }; -const struct SpriteFrameImage gObjectEventPicTable_KyogreSide[] = { +static const struct SpriteFrameImage sPicTable_KyogreSide[] = { overworld_frame(gObjectEventPic_Kyogre, 4, 4, 2), overworld_frame(gObjectEventPic_Kyogre, 4, 4, 2), overworld_frame(gObjectEventPic_Kyogre, 4, 4, 2), @@ -1745,7 +1745,7 @@ const struct SpriteFrameImage gObjectEventPicTable_KyogreSide[] = { overworld_frame(gObjectEventPic_Kyogre, 4, 4, 3), }; -const struct SpriteFrameImage gObjectEventPicTable_GroudonSide[] = { +static const struct SpriteFrameImage sPicTable_GroudonSide[] = { overworld_frame(gObjectEventPic_Groudon, 4, 4, 2), overworld_frame(gObjectEventPic_Groudon, 4, 4, 2), overworld_frame(gObjectEventPic_Groudon, 4, 4, 2), @@ -1757,11 +1757,11 @@ const struct SpriteFrameImage gObjectEventPicTable_GroudonSide[] = { overworld_frame(gObjectEventPic_Groudon, 4, 4, 3), }; -const struct SpriteFrameImage gObjectEventPicTable_Fossil[] = { +static const struct SpriteFrameImage sPicTable_Fossil[] = { obj_frame_tiles(gObjectEventPic_Fossil), }; -const struct SpriteFrameImage gObjectEventPicTable_Regi[] = { +static const struct SpriteFrameImage sPicTable_Regi[] = { obj_frame_tiles(gObjectEventPic_Regi), obj_frame_tiles(gObjectEventPic_Regi), obj_frame_tiles(gObjectEventPic_Regi), @@ -1773,7 +1773,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Regi[] = { obj_frame_tiles(gObjectEventPic_Regi), }; -const struct SpriteFrameImage gObjectEventPicTable_Skitty[] = { +static const struct SpriteFrameImage sPicTable_Skitty[] = { overworld_frame(gObjectEventPic_Skitty, 2, 2, 0), overworld_frame(gObjectEventPic_Skitty, 2, 2, 1), overworld_frame(gObjectEventPic_Skitty, 2, 2, 2), @@ -1785,7 +1785,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Skitty[] = { overworld_frame(gObjectEventPic_Skitty, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Kecleon[] = { +static const struct SpriteFrameImage sPicTable_Kecleon[] = { overworld_frame(gObjectEventPic_Kecleon, 2, 2, 0), overworld_frame(gObjectEventPic_Kecleon, 2, 2, 1), overworld_frame(gObjectEventPic_Kecleon, 2, 2, 2), @@ -1797,7 +1797,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Kecleon[] = { overworld_frame(gObjectEventPic_Kecleon, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Rayquaza[] = { +static const struct SpriteFrameImage sPicTable_Rayquaza[] = { overworld_frame(gObjectEventPic_Rayquaza, 8, 8, 0), overworld_frame(gObjectEventPic_Rayquaza, 8, 8, 1), overworld_frame(gObjectEventPic_Rayquaza, 8, 8, 2), @@ -1805,7 +1805,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Rayquaza[] = { overworld_frame(gObjectEventPic_Rayquaza, 8, 8, 4), }; -const struct SpriteFrameImage gObjectEventPicTable_RayquazaStill[] = { +static const struct SpriteFrameImage sPicTable_RayquazaStill[] = { obj_frame_tiles(gObjectEventPic_RayquazaStill), obj_frame_tiles(gObjectEventPic_RayquazaStill), obj_frame_tiles(gObjectEventPic_RayquazaStill), @@ -1817,7 +1817,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RayquazaStill[] = { obj_frame_tiles(gObjectEventPic_RayquazaStill), }; -const struct SpriteFrameImage gObjectEventPicTable_Zigzagoon[] = { +static const struct SpriteFrameImage sPicTable_Zigzagoon[] = { overworld_frame(gObjectEventPic_Zigzagoon, 2, 2, 0), overworld_frame(gObjectEventPic_Zigzagoon, 2, 2, 1), overworld_frame(gObjectEventPic_Zigzagoon, 2, 2, 2), @@ -1829,7 +1829,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Zigzagoon[] = { overworld_frame(gObjectEventPic_Zigzagoon, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Pikachu[] = { +static const struct SpriteFrameImage sPicTable_Pikachu[] = { overworld_frame(gObjectEventPic_Pikachu, 2, 2, 0), overworld_frame(gObjectEventPic_Pikachu, 2, 2, 1), overworld_frame(gObjectEventPic_Pikachu, 2, 2, 2), @@ -1841,7 +1841,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Pikachu[] = { overworld_frame(gObjectEventPic_Pikachu, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Azumarill[] = { +static const struct SpriteFrameImage sPicTable_Azumarill[] = { overworld_frame(gObjectEventPic_Azumarill, 2, 2, 0), overworld_frame(gObjectEventPic_Azumarill, 2, 2, 1), overworld_frame(gObjectEventPic_Azumarill, 2, 2, 2), @@ -1853,7 +1853,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Azumarill[] = { overworld_frame(gObjectEventPic_Azumarill, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Wingull[] = { +static const struct SpriteFrameImage sPicTable_Wingull[] = { overworld_frame(gObjectEventPic_Wingull, 2, 2, 0), overworld_frame(gObjectEventPic_Wingull, 2, 2, 2), overworld_frame(gObjectEventPic_Wingull, 2, 2, 4), @@ -1865,7 +1865,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Wingull[] = { overworld_frame(gObjectEventPic_Wingull, 2, 2, 5), }; -const struct SpriteFrameImage gObjectEventPicTable_TuberMSwimming[] = { +static const struct SpriteFrameImage sPicTable_TuberMSwimming[] = { overworld_frame(gObjectEventPic_TuberMSwimming, 2, 2, 0), overworld_frame(gObjectEventPic_TuberMSwimming, 2, 2, 1), overworld_frame(gObjectEventPic_TuberMSwimming, 2, 2, 2), @@ -1877,7 +1877,7 @@ const struct SpriteFrameImage gObjectEventPicTable_TuberMSwimming[] = { overworld_frame(gObjectEventPic_TuberMSwimming, 2, 2, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Azurill[] = { +static const struct SpriteFrameImage sPicTable_Azurill[] = { overworld_frame(gObjectEventPic_Azurill, 2, 2, 0), overworld_frame(gObjectEventPic_Azurill, 2, 2, 1), overworld_frame(gObjectEventPic_Azurill, 2, 2, 2), @@ -1889,7 +1889,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Azurill[] = { overworld_frame(gObjectEventPic_Azurill, 2, 2, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Mom[] = { +static const struct SpriteFrameImage sPicTable_Mom[] = { overworld_frame(gObjectEventPic_Mom, 2, 4, 0), overworld_frame(gObjectEventPic_Mom, 2, 4, 1), overworld_frame(gObjectEventPic_Mom, 2, 4, 2), @@ -1901,7 +1901,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Mom[] = { overworld_frame(gObjectEventPic_Mom, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Scott[] = { +static const struct SpriteFrameImage sPicTable_Scott[] = { overworld_frame(gObjectEventPic_Scott, 2, 4, 0), overworld_frame(gObjectEventPic_Scott, 2, 4, 1), overworld_frame(gObjectEventPic_Scott, 2, 4, 2), @@ -1913,7 +1913,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Scott[] = { overworld_frame(gObjectEventPic_Scott, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Juan[] = { +static const struct SpriteFrameImage sPicTable_Juan[] = { overworld_frame(gObjectEventPic_Juan, 2, 4, 0), overworld_frame(gObjectEventPic_Juan, 2, 4, 1), overworld_frame(gObjectEventPic_Juan, 2, 4, 2), @@ -1925,7 +1925,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Juan[] = { overworld_frame(gObjectEventPic_Juan, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_MysteryEventDeliveryman[] = { +static const struct SpriteFrameImage sPicTable_MysteryEventDeliveryman[] = { overworld_frame(gObjectEventPic_MysteryEventDeliveryman, 2, 4, 0), overworld_frame(gObjectEventPic_MysteryEventDeliveryman, 2, 4, 1), overworld_frame(gObjectEventPic_MysteryEventDeliveryman, 2, 4, 2), @@ -1937,11 +1937,11 @@ const struct SpriteFrameImage gObjectEventPicTable_MysteryEventDeliveryman[] = { overworld_frame(gObjectEventPic_MysteryEventDeliveryman, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Statue[] = { +static const struct SpriteFrameImage sPicTable_Statue[] = { obj_frame_tiles(gObjectEventPic_Statue), }; -const struct SpriteFrameImage gObjectEventPicTable_Dusclops[] = { +static const struct SpriteFrameImage sPicTable_Dusclops[] = { overworld_frame(gObjectEventPic_Dusclops, 2, 4, 0), overworld_frame(gObjectEventPic_Dusclops, 2, 4, 1), overworld_frame(gObjectEventPic_Dusclops, 2, 4, 2), @@ -1953,7 +1953,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Dusclops[] = { overworld_frame(gObjectEventPic_Dusclops, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Kirlia[] = { +static const struct SpriteFrameImage sPicTable_Kirlia[] = { overworld_frame(gObjectEventPic_Kirlia, 2, 4, 0), overworld_frame(gObjectEventPic_Kirlia, 2, 4, 1), overworld_frame(gObjectEventPic_Kirlia, 2, 4, 2), @@ -1965,7 +1965,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Kirlia[] = { overworld_frame(gObjectEventPic_Kirlia, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_UnionRoomAttendant[] = { +static const struct SpriteFrameImage sPicTable_UnionRoomAttendant[] = { overworld_frame(gObjectEventPic_UnionRoomAttendant, 2, 4, 0), overworld_frame(gObjectEventPic_UnionRoomAttendant, 2, 4, 1), overworld_frame(gObjectEventPic_UnionRoomAttendant, 2, 4, 2), @@ -1977,7 +1977,7 @@ const struct SpriteFrameImage gObjectEventPicTable_UnionRoomAttendant[] = { overworld_frame(gObjectEventPic_UnionRoomAttendant, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Sudowoodo[] = { +static const struct SpriteFrameImage sPicTable_Sudowoodo[] = { overworld_frame(gObjectEventPic_Sudowoodo, 2, 4, 0), overworld_frame(gObjectEventPic_Sudowoodo, 2, 4, 0), overworld_frame(gObjectEventPic_Sudowoodo, 2, 4, 1), @@ -1989,7 +1989,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Sudowoodo[] = { overworld_frame(gObjectEventPic_Sudowoodo, 2, 4, 2), }; -const struct SpriteFrameImage gObjectEventPicTable_Mew[] = { +static const struct SpriteFrameImage sPicTable_Mew[] = { overworld_frame(gObjectEventPic_Mew, 2, 4, 0), overworld_frame(gObjectEventPic_Mew, 2, 4, 1), overworld_frame(gObjectEventPic_Mew, 2, 4, 2), @@ -2001,7 +2001,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Mew[] = { overworld_frame(gObjectEventPic_Mew, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Red[] = { +static const struct SpriteFrameImage sPicTable_Red[] = { overworld_frame(gObjectEventPic_Red, 2, 4, 0), overworld_frame(gObjectEventPic_Red, 2, 4, 1), overworld_frame(gObjectEventPic_Red, 2, 4, 2), @@ -2013,7 +2013,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Red[] = { overworld_frame(gObjectEventPic_Red, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Leaf[] = { +static const struct SpriteFrameImage sPicTable_Leaf[] = { overworld_frame(gObjectEventPic_Leaf, 2, 4, 0), overworld_frame(gObjectEventPic_Leaf, 2, 4, 1), overworld_frame(gObjectEventPic_Leaf, 2, 4, 2), @@ -2025,7 +2025,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Leaf[] = { overworld_frame(gObjectEventPic_Leaf, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Deoxys[] = { +static const struct SpriteFrameImage sPicTable_Deoxys[] = { overworld_frame(gObjectEventPic_Deoxys, 4, 4, 0), overworld_frame(gObjectEventPic_Deoxys, 4, 4, 0), overworld_frame(gObjectEventPic_Deoxys, 4, 4, 0), @@ -2037,11 +2037,11 @@ const struct SpriteFrameImage gObjectEventPicTable_Deoxys[] = { overworld_frame(gObjectEventPic_Deoxys, 4, 4, 0), }; -const struct SpriteFrameImage gObjectEventPicTable_BirthIslandStone[] = { +static const struct SpriteFrameImage sPicTable_BirthIslandStone[] = { obj_frame_tiles(gObjectEventPic_BirthIslandStone), }; -const struct SpriteFrameImage gObjectEventPicTable_Anabel[] = { +static const struct SpriteFrameImage sPicTable_Anabel[] = { overworld_frame(gObjectEventPic_Anabel, 2, 4, 0), overworld_frame(gObjectEventPic_Anabel, 2, 4, 1), overworld_frame(gObjectEventPic_Anabel, 2, 4, 2), @@ -2053,7 +2053,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Anabel[] = { overworld_frame(gObjectEventPic_Anabel, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Tucker[] = { +static const struct SpriteFrameImage sPicTable_Tucker[] = { overworld_frame(gObjectEventPic_Tucker, 2, 4, 0), overworld_frame(gObjectEventPic_Tucker, 2, 4, 1), overworld_frame(gObjectEventPic_Tucker, 2, 4, 2), @@ -2065,7 +2065,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Tucker[] = { overworld_frame(gObjectEventPic_Tucker, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Spenser[] = { +static const struct SpriteFrameImage sPicTable_Spenser[] = { overworld_frame(gObjectEventPic_Spenser, 2, 4, 0), overworld_frame(gObjectEventPic_Spenser, 2, 4, 1), overworld_frame(gObjectEventPic_Spenser, 2, 4, 2), @@ -2077,7 +2077,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Spenser[] = { overworld_frame(gObjectEventPic_Spenser, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Greta[] = { +static const struct SpriteFrameImage sPicTable_Greta[] = { overworld_frame(gObjectEventPic_Greta, 2, 4, 0), overworld_frame(gObjectEventPic_Greta, 2, 4, 1), overworld_frame(gObjectEventPic_Greta, 2, 4, 2), @@ -2089,7 +2089,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Greta[] = { overworld_frame(gObjectEventPic_Greta, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Noland[] = { +static const struct SpriteFrameImage sPicTable_Noland[] = { overworld_frame(gObjectEventPic_Noland, 2, 4, 0), overworld_frame(gObjectEventPic_Noland, 2, 4, 1), overworld_frame(gObjectEventPic_Noland, 2, 4, 2), @@ -2101,7 +2101,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Noland[] = { overworld_frame(gObjectEventPic_Noland, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Lucy[] = { +static const struct SpriteFrameImage sPicTable_Lucy[] = { overworld_frame(gObjectEventPic_Lucy, 2, 4, 0), overworld_frame(gObjectEventPic_Lucy, 2, 4, 1), overworld_frame(gObjectEventPic_Lucy, 2, 4, 2), @@ -2113,7 +2113,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Lucy[] = { overworld_frame(gObjectEventPic_Lucy, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Brandon[] = { +static const struct SpriteFrameImage sPicTable_Brandon[] = { overworld_frame(gObjectEventPic_Brandon, 2, 4, 0), overworld_frame(gObjectEventPic_Brandon, 2, 4, 1), overworld_frame(gObjectEventPic_Brandon, 2, 4, 2), @@ -2125,7 +2125,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Brandon[] = { overworld_frame(gObjectEventPic_Brandon, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_Lugia[] = { +static const struct SpriteFrameImage sPicTable_Lugia[] = { overworld_frame(gObjectEventPic_Lugia, 4, 4, 0), overworld_frame(gObjectEventPic_Lugia, 4, 4, 0), overworld_frame(gObjectEventPic_Lugia, 4, 4, 0), @@ -2137,7 +2137,7 @@ const struct SpriteFrameImage gObjectEventPicTable_Lugia[] = { overworld_frame(gObjectEventPic_Lugia, 4, 4, 1), }; -const struct SpriteFrameImage gObjectEventPicTable_HoOh[] = { +static const struct SpriteFrameImage sPicTable_HoOh[] = { overworld_frame(gObjectEventPic_HoOh, 4, 4, 0), overworld_frame(gObjectEventPic_HoOh, 4, 4, 0), overworld_frame(gObjectEventPic_HoOh, 4, 4, 0), @@ -2149,7 +2149,7 @@ const struct SpriteFrameImage gObjectEventPicTable_HoOh[] = { overworld_frame(gObjectEventPic_HoOh, 4, 4, 1), }; -const struct SpriteFrameImage gObjectEventPicTable_RubySapphireBrendan[] = { +static const struct SpriteFrameImage sPicTable_RubySapphireBrendan[] = { overworld_frame(gObjectEventPic_RubySapphireBrendanNormal, 2, 4, 0), overworld_frame(gObjectEventPic_RubySapphireBrendanNormal, 2, 4, 1), overworld_frame(gObjectEventPic_RubySapphireBrendanNormal, 2, 4, 2), @@ -2161,7 +2161,7 @@ const struct SpriteFrameImage gObjectEventPicTable_RubySapphireBrendan[] = { overworld_frame(gObjectEventPic_RubySapphireBrendanNormal, 2, 4, 8), }; -const struct SpriteFrameImage gObjectEventPicTable_RubySapphireMay[] = { +static const struct SpriteFrameImage sPicTable_RubySapphireMay[] = { overworld_frame(gObjectEventPic_RubySapphireMayNormal, 2, 4, 0), overworld_frame(gObjectEventPic_RubySapphireMayNormal, 2, 4, 1), overworld_frame(gObjectEventPic_RubySapphireMayNormal, 2, 4, 2), diff --git a/src/data/object_events/object_event_subsprites.h b/src/data/object_events/object_event_subsprites.h index 63df1f777860..0d55c2df28a9 100755 --- a/src/data/object_events/object_event_subsprites.h +++ b/src/data/object_events/object_event_subsprites.h @@ -1,4 +1,4 @@ -const struct Subsprite gObjectEventSpriteOamTable_16x16_0[] = { +static const struct Subsprite sOamTable_16x16_0[] = { { .x = -8, .y = -8, @@ -9,7 +9,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x16_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x16_1[] = { +static const struct Subsprite sOamTable_16x16_1[] = { { .x = -8, .y = -8, @@ -20,7 +20,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x16_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x16_2[] = { +static const struct Subsprite sOamTable_16x16_2[] = { { .x = -8, .y = -8, @@ -39,7 +39,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x16_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x16_3[] = { +static const struct Subsprite sOamTable_16x16_3[] = { { .x = -8, .y = -8, @@ -58,7 +58,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x16_3[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x16_4[] = { +static const struct Subsprite sOamTable_16x16_4[] = { { .x = -8, .y = -8, @@ -77,16 +77,16 @@ const struct Subsprite gObjectEventSpriteOamTable_16x16_4[] = { } }; -const struct SubspriteTable gObjectEventSpriteOamTables_16x16[] = { +static const struct SubspriteTable sOamTables_16x16[] = { {0, NULL}, - {1, gObjectEventSpriteOamTable_16x16_0}, - {1, gObjectEventSpriteOamTable_16x16_1}, - {2, gObjectEventSpriteOamTable_16x16_2}, - {2, gObjectEventSpriteOamTable_16x16_3}, - {2, gObjectEventSpriteOamTable_16x16_4} + {1, sOamTable_16x16_0}, + {1, sOamTable_16x16_1}, + {2, sOamTable_16x16_2}, + {2, sOamTable_16x16_3}, + {2, sOamTable_16x16_4} }; -const struct Subsprite gObjectEventSpriteOamTable_16x32_0[] = { +static const struct Subsprite sOamTable_16x32_0[] = { { .x = -8, .y = -16, @@ -97,7 +97,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x32_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x32_1[] = { +static const struct Subsprite sOamTable_16x32_1[] = { { .x = -8, .y = -16, @@ -108,7 +108,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x32_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x32_2[] = { +static const struct Subsprite sOamTable_16x32_2[] = { { .x = -8, .y = -16, @@ -135,7 +135,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x32_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x32_3[] = { +static const struct Subsprite sOamTable_16x32_3[] = { { .x = -8, .y = -16, @@ -154,7 +154,7 @@ const struct Subsprite gObjectEventSpriteOamTable_16x32_3[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_16x32_4[] = { +static const struct Subsprite sOamTable_16x32_4[] = { { .x = -8, .y = -16, @@ -173,16 +173,16 @@ const struct Subsprite gObjectEventSpriteOamTable_16x32_4[] = { } }; -const struct SubspriteTable gObjectEventSpriteOamTables_16x32[] = { +static const struct SubspriteTable sOamTables_16x32[] = { {0, NULL}, - {1, gObjectEventSpriteOamTable_16x32_0}, - {1, gObjectEventSpriteOamTable_16x32_1}, - {3, gObjectEventSpriteOamTable_16x32_2}, - {2, gObjectEventSpriteOamTable_16x32_3}, - {2, gObjectEventSpriteOamTable_16x32_4} + {1, sOamTable_16x32_0}, + {1, sOamTable_16x32_1}, + {3, sOamTable_16x32_2}, + {2, sOamTable_16x32_3}, + {2, sOamTable_16x32_4} }; -const struct Subsprite gObjectEventSpriteOamTable_32x32_0[] = { +static const struct Subsprite sOamTable_32x32_0[] = { { .x = -16, .y = -16, @@ -193,7 +193,7 @@ const struct Subsprite gObjectEventSpriteOamTable_32x32_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_32x32_1[] = { +static const struct Subsprite sOamTable_32x32_1[] = { { .x = -16, .y = -16, @@ -204,7 +204,7 @@ const struct Subsprite gObjectEventSpriteOamTable_32x32_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_32x32_2[] = { +static const struct Subsprite sOamTable_32x32_2[] = { { .x = -16, .y = -16, @@ -231,7 +231,7 @@ const struct Subsprite gObjectEventSpriteOamTable_32x32_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_32x32_3[] = { +static const struct Subsprite sOamTable_32x32_3[] = { { .x = -16, .y = -16, @@ -250,7 +250,7 @@ const struct Subsprite gObjectEventSpriteOamTable_32x32_3[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_32x32_4[] = { +static const struct Subsprite sOamTable_32x32_4[] = { { .x = -16, .y = -16, @@ -269,16 +269,16 @@ const struct Subsprite gObjectEventSpriteOamTable_32x32_4[] = { } }; -const struct SubspriteTable gObjectEventSpriteOamTables_32x32[] = { +static const struct SubspriteTable sOamTables_32x32[] = { {0, NULL}, - {1, gObjectEventSpriteOamTable_32x32_0}, - {1, gObjectEventSpriteOamTable_32x32_1}, - {3, gObjectEventSpriteOamTable_32x32_2}, - {2, gObjectEventSpriteOamTable_32x32_3}, - {2, gObjectEventSpriteOamTable_32x32_4} + {1, sOamTable_32x32_0}, + {1, sOamTable_32x32_1}, + {3, sOamTable_32x32_2}, + {2, sOamTable_32x32_3}, + {2, sOamTable_32x32_4} }; -const struct Subsprite gObjectEventSpriteOamTable_48x48[] = { +static const struct Subsprite sOamTable_48x48[] = { { .x = -24, .y = -24, @@ -377,16 +377,16 @@ const struct Subsprite gObjectEventSpriteOamTable_48x48[] = { } }; -const struct SubspriteTable gObjectEventSpriteOamTables_48x48[] = { - {12, gObjectEventSpriteOamTable_48x48}, - {12, gObjectEventSpriteOamTable_48x48}, - {12, gObjectEventSpriteOamTable_48x48}, - {12, gObjectEventSpriteOamTable_48x48}, - {12, gObjectEventSpriteOamTable_48x48}, - {12, gObjectEventSpriteOamTable_48x48} +static const struct SubspriteTable sOamTables_48x48[] = { + {12, sOamTable_48x48}, + {12, sOamTable_48x48}, + {12, sOamTable_48x48}, + {12, sOamTable_48x48}, + {12, sOamTable_48x48}, + {12, sOamTable_48x48} }; -const struct Subsprite gObjectEventSpriteOamTable_64x32_0[] = { +static const struct Subsprite sOamTable_64x32_0[] = { { .x = -32, .y = -16, @@ -397,7 +397,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x32_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x32_1[] = { +static const struct Subsprite sOamTable_64x32_1[] = { { .x = -32, .y = -16, @@ -408,7 +408,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x32_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x32_2[] = { +static const struct Subsprite sOamTable_64x32_2[] = { { .x = -32, .y = -16, @@ -419,7 +419,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x32_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x32_3[] = { +static const struct Subsprite sOamTable_64x32_3[] = { { .x = -32, .y = -16, @@ -431,16 +431,16 @@ const struct Subsprite gObjectEventSpriteOamTable_64x32_3[] = { }; // Unused -const struct SubspriteTable gObjectEventSpriteOamTables_64x32[] = { +static const struct SubspriteTable sOamTables_64x32[] = { {0, NULL}, - {1, gObjectEventSpriteOamTable_64x32_0}, - {1, gObjectEventSpriteOamTable_64x32_1}, - {1, gObjectEventSpriteOamTable_64x32_2}, - {1, gObjectEventSpriteOamTable_64x32_3}, - {1, gObjectEventSpriteOamTable_64x32_3} + {1, sOamTable_64x32_0}, + {1, sOamTable_64x32_1}, + {1, sOamTable_64x32_2}, + {1, sOamTable_64x32_3}, + {1, sOamTable_64x32_3} }; -const struct Subsprite gObjectEventSpriteOamTable_64x64_0[] = { +static const struct Subsprite sOamTable_64x64_0[] = { { .x = -32, .y = -32, @@ -451,7 +451,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x64_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x64_1[] = { +static const struct Subsprite sOamTable_64x64_1[] = { { .x = -32, .y = -32, @@ -462,7 +462,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x64_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x64_2[] = { +static const struct Subsprite sOamTable_64x64_2[] = { { .x = -32, .y = -32, @@ -473,7 +473,7 @@ const struct Subsprite gObjectEventSpriteOamTable_64x64_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_64x64_3[] = { +static const struct Subsprite sOamTable_64x64_3[] = { { .x = -32, .y = -32, @@ -484,16 +484,16 @@ const struct Subsprite gObjectEventSpriteOamTable_64x64_3[] = { } }; -const struct SubspriteTable gObjectEventSpriteOamTables_64x64[] = { +static const struct SubspriteTable sOamTables_64x64[] = { {0, NULL}, - {1, gObjectEventSpriteOamTable_64x64_0}, - {1, gObjectEventSpriteOamTable_64x64_1}, - {1, gObjectEventSpriteOamTable_64x64_2}, - {1, gObjectEventSpriteOamTable_64x64_3}, - {1, gObjectEventSpriteOamTable_64x64_3} + {1, sOamTable_64x64_0}, + {1, sOamTable_64x64_1}, + {1, sOamTable_64x64_2}, + {1, sOamTable_64x64_3}, + {1, sOamTable_64x64_3} }; -const struct Subsprite gObjectEventSpriteOamTable_96x40_0[] = { +static const struct Subsprite sOamTable_96x40_0[] = { { .x = -48, .y = -20, @@ -616,7 +616,7 @@ const struct Subsprite gObjectEventSpriteOamTable_96x40_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_96x40_1[] = { +static const struct Subsprite sOamTable_96x40_1[] = { { .x = -48, .y = -20, @@ -739,7 +739,7 @@ const struct Subsprite gObjectEventSpriteOamTable_96x40_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_96x40_2[] = { +static const struct Subsprite sOamTable_96x40_2[] = { { .x = -48, .y = -20, @@ -862,7 +862,7 @@ const struct Subsprite gObjectEventSpriteOamTable_96x40_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_96x40_3[] = { +static const struct Subsprite sOamTable_96x40_3[] = { { .x = -48, .y = -20, @@ -986,16 +986,16 @@ const struct Subsprite gObjectEventSpriteOamTable_96x40_3[] = { }; // Used by SS Tidal -const struct SubspriteTable gObjectEventSpriteOamTables_96x40[] = { - {15, gObjectEventSpriteOamTable_96x40_0}, - {15, gObjectEventSpriteOamTable_96x40_0}, - {15, gObjectEventSpriteOamTable_96x40_1}, - {15, gObjectEventSpriteOamTable_96x40_2}, - {15, gObjectEventSpriteOamTable_96x40_3}, - {15, gObjectEventSpriteOamTable_96x40_3} +static const struct SubspriteTable sOamTables_96x40[] = { + {15, sOamTable_96x40_0}, + {15, sOamTable_96x40_0}, + {15, sOamTable_96x40_1}, + {15, sOamTable_96x40_2}, + {15, sOamTable_96x40_3}, + {15, sOamTable_96x40_3} }; -const struct Subsprite gObjectEventSpriteOamTable_88x32_0[] = { +static const struct Subsprite sOamTable_88x32_0[] = { { .x = -48, .y = -20, @@ -1126,7 +1126,7 @@ const struct Subsprite gObjectEventSpriteOamTable_88x32_0[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_88x32_1[] = { +static const struct Subsprite sOamTable_88x32_1[] = { { .x = -48, .y = -20, @@ -1257,7 +1257,7 @@ const struct Subsprite gObjectEventSpriteOamTable_88x32_1[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_88x32_2[] = { +static const struct Subsprite sOamTable_88x32_2[] = { { .x = -48, .y = -20, @@ -1388,7 +1388,7 @@ const struct Subsprite gObjectEventSpriteOamTable_88x32_2[] = { } }; -const struct Subsprite gObjectEventSpriteOamTable_88x32_3[] = { +static const struct Subsprite sOamTable_88x32_3[] = { { .x = -48, .y = -20, @@ -1520,11 +1520,11 @@ const struct Subsprite gObjectEventSpriteOamTable_88x32_3[] = { }; // Used by Submarine Shadow -const struct SubspriteTable gObjectEventSpriteOamTables_88x32[] = { - {16, gObjectEventSpriteOamTable_88x32_0}, - {16, gObjectEventSpriteOamTable_88x32_0}, - {16, gObjectEventSpriteOamTable_88x32_1}, - {16, gObjectEventSpriteOamTable_88x32_2}, - {16, gObjectEventSpriteOamTable_88x32_3}, - {16, gObjectEventSpriteOamTable_88x32_3} +static const struct SubspriteTable sOamTables_88x32[] = { + {16, sOamTable_88x32_0}, + {16, sOamTable_88x32_0}, + {16, sOamTable_88x32_1}, + {16, sOamTable_88x32_2}, + {16, sOamTable_88x32_3}, + {16, sOamTable_88x32_3} }; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 8ab6268fc202..746642e15ab5 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -134,6 +134,8 @@ static void InitSpriteForFigure8Anim(struct Sprite *sprite); static bool8 AnimateSpriteInFigure8(struct Sprite *sprite); static void UpdateObjectEventSprite(struct Sprite *); +static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; + const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0}; const struct SpriteTemplate gCameraSpriteTemplate = {0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, ObjectCB_CameraObject}; From 00c3044c96631b6e54bdf308d0b2ff9e3d27b9b7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 02:38:15 -0400 Subject: [PATCH 093/762] Clarify Groudon/Kyogre/Rayquaza gfx names --- data/maps/MagmaHideout_4F/map.json | 8 ++--- data/maps/MarineCave_End/map.json | 2 +- data/maps/SeafloorCavern_Room9/map.json | 8 ++--- data/maps/SeafloorCavern_Room9/scripts.inc | 2 +- data/maps/SkyPillar_Top/map.json | 8 ++--- data/maps/SkyPillar_Top/scripts.inc | 16 ++++++---- data/maps/SootopolisCity/map.json | 6 ++-- data/maps/TerraCave_End/map.json | 2 +- data/scripts/new_game.inc | 6 ++-- include/constants/event_objects.h | 16 +++++----- include/constants/flags.h | 18 +++++------ .../object_event_graphics_info.h | 16 +++++----- .../object_event_graphics_info_pointers.h | 32 +++++++++---------- 13 files changed, 71 insertions(+), 69 deletions(-) diff --git a/data/maps/MagmaHideout_4F/map.json b/data/maps/MagmaHideout_4F/map.json index d38e85fdf87f..94cf295e0223 100644 --- a/data/maps/MagmaHideout_4F/map.json +++ b/data/maps/MagmaHideout_4F/map.json @@ -15,7 +15,7 @@ "connections": null, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_GROUDON_1", + "graphics_id": "OBJ_EVENT_GFX_GROUDON_FRONT", "x": 16, "y": 17, "elevation": 0, @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1" + "flag": "FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON" }, { "graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M", @@ -93,7 +93,7 @@ "flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS" }, { - "graphics_id": "OBJ_EVENT_GFX_GROUDON_2", + "graphics_id": "OBJ_EVENT_GFX_GROUDON_ASLEEP", "x": 16, "y": 17, "elevation": 3, @@ -103,7 +103,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_2" + "flag": "FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_ASLEEP" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/MarineCave_End/map.json b/data/maps/MarineCave_End/map.json index d2e506a1474e..0beeb7a4cfc3 100644 --- a/data/maps/MarineCave_End/map.json +++ b/data/maps/MarineCave_End/map.json @@ -15,7 +15,7 @@ "connections": null, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_KYOGRE_1", + "graphics_id": "OBJ_EVENT_GFX_KYOGRE_FRONT", "x": 9, "y": 22, "elevation": 1, diff --git a/data/maps/SeafloorCavern_Room9/map.json b/data/maps/SeafloorCavern_Room9/map.json index 94ef88e849bc..0557b0c3eb73 100644 --- a/data/maps/SeafloorCavern_Room9/map.json +++ b/data/maps/SeafloorCavern_Room9/map.json @@ -15,7 +15,7 @@ "connections": null, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_KYOGRE_1", + "graphics_id": "OBJ_EVENT_GFX_KYOGRE_FRONT", "x": 17, "y": 38, "elevation": 3, @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1" + "flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE" }, { "graphics_id": "OBJ_EVENT_GFX_ARCHIE", @@ -93,7 +93,7 @@ "flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26" }, { - "graphics_id": "OBJ_EVENT_GFX_KYOGRE_2", + "graphics_id": "OBJ_EVENT_GFX_KYOGRE_ASLEEP", "x": 17, "y": 38, "elevation": 3, @@ -103,7 +103,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_2" + "flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_ASLEEP" } ], "warp_events": [ diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc index 63c5853c3549..53386f33c0e2 100644 --- a/data/maps/SeafloorCavern_Room9/scripts.inc +++ b/data/maps/SeafloorCavern_Room9/scripts.inc @@ -142,7 +142,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: @ 8234DC9 setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS - setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 + setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE setflag FLAG_HIDE_SEAFLOOR_CAVERN_AQUA_GRUNTS setflag FLAG_HIDE_MAP_NAME_POPUP warp MAP_ROUTE128, 255, 38, 22 diff --git a/data/maps/SkyPillar_Top/map.json b/data/maps/SkyPillar_Top/map.json index 90301c53bf0e..a980c6b07baf 100644 --- a/data/maps/SkyPillar_Top/map.json +++ b/data/maps/SkyPillar_Top/map.json @@ -15,7 +15,7 @@ "connections": null, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA_2", + "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA", "x": 14, "y": 7, "elevation": 3, @@ -25,10 +25,10 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_2" + "flag": "FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA" }, { - "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA_1", + "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA_STILL", "x": 14, "y": 6, "elevation": 3, @@ -38,7 +38,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SkyPillar_Top_EventScript_Rayquaza", - "flag": "FLAG_HIDE_RAYQUAZA_SKY_TOWER_SUMMIT" + "flag": "FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_STILL" } ], "warp_events": [ diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index b8173bc69775..86d6cf717118 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -34,7 +34,7 @@ SkyPillar_Top_EventScript_TryShowRayquaza:: @ 8239705 return SkyPillar_Top_EventScript_ShowRayquaza:: @ 823970F - clearflag FLAG_HIDE_RAYQUAZA_SKY_TOWER_SUMMIT + clearflag FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_STILL return SkyPillar_Top_OnWarp: @ 8239713 @@ -138,17 +138,19 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: @ 823979A releaseall end +@ Rayquaza has unusual movement frames +@ See comments, or sAnimTable_Rayquaza SkyPillar_Top_Movement_RayquazaStir: @ 823983A delay_16 - walk_in_place_fast_left + walk_in_place_fast_left @ Coiled, awake delay_16 delay_16 delay_16 delay_16 delay_16 - walk_in_place_left + walk_in_place_left @ Coiled, mouth open delay_16 - walk_in_place_right + walk_in_place_right @ Normal, awake delay_16 delay_16 delay_16 @@ -159,11 +161,11 @@ SkyPillar_Top_Movement_RayquazaStir: @ 823983A SkyPillar_Top_Movement_RayquazaFlyOff: @ 823984B delay_16 - walk_in_place_down + walk_in_place_down @ Coiled, asleep delay_8 - walk_in_place_right + walk_in_place_right @ Normal, awake delay_8 - walk_fastest_up + walk_fastest_up @ Fly up slide_up slide_up slide_up diff --git a/data/maps/SootopolisCity/map.json b/data/maps/SootopolisCity/map.json index d4c71db61261..f5c265139b83 100644 --- a/data/maps/SootopolisCity/map.json +++ b/data/maps/SootopolisCity/map.json @@ -119,7 +119,7 @@ "flag": "0" }, { - "graphics_id": "OBJ_EVENT_GFX_GROUDON_3", + "graphics_id": "OBJ_EVENT_GFX_GROUDON_SIDE", "x": 28, "y": 44, "elevation": 0, @@ -132,7 +132,7 @@ "flag": "FLAG_HIDE_SOOTOPOLIS_CITY_GROUDON" }, { - "graphics_id": "OBJ_EVENT_GFX_KYOGRE_3", + "graphics_id": "OBJ_EVENT_GFX_KYOGRE_SIDE", "x": 34, "y": 44, "elevation": 1, @@ -145,7 +145,7 @@ "flag": "FLAG_HIDE_SOOTOPOLIS_CITY_KYOGRE" }, { - "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA_2", + "graphics_id": "OBJ_EVENT_GFX_RAYQUAZA", "x": 31, "y": 41, "elevation": 1, diff --git a/data/maps/TerraCave_End/map.json b/data/maps/TerraCave_End/map.json index b186bddb2804..e5fef758b72f 100644 --- a/data/maps/TerraCave_End/map.json +++ b/data/maps/TerraCave_End/map.json @@ -15,7 +15,7 @@ "connections": null, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_GROUDON_1", + "graphics_id": "OBJ_EVENT_GFX_GROUDON_FRONT", "x": 17, "y": 22, "elevation": 1, diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc index 42218669561d..2a314b3d13c3 100644 --- a/data/scripts/new_game.inc +++ b/data/scripts/new_game.inc @@ -179,8 +179,8 @@ EventScript_ResetAllMapFlags:: @ 82715DE setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS - setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 - setflag FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1 + setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE + setflag FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON setflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN setflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT setflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE @@ -271,6 +271,6 @@ EventScript_ResetAllMapFlags:: @ 82715DE setflag FLAG_HIDE_FALLARBOR_TOWN_BATTLE_TENT_SCOTT setflag FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT setflag FLAG_HIDE_SKY_PILLAR_WALLACE - setflag FLAG_HIDE_RAYQUAZA_SKY_TOWER_SUMMIT + setflag FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_STILL call EventScript_ResetAllBerries end diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 8e026ef2dc2b..7a224940f6f1 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -42,7 +42,7 @@ #define OBJ_EVENT_GFX_SCHOOL_KID_M 38 #define OBJ_EVENT_GFX_MANIAC 39 #define OBJ_EVENT_GFX_HEX_MANIAC 40 -#define OBJ_EVENT_GFX_RAYQUAZA_1 41 +#define OBJ_EVENT_GFX_RAYQUAZA_STILL 41 #define OBJ_EVENT_GFX_SWIMMER_M 42 #define OBJ_EVENT_GFX_SWIMMER_F 43 #define OBJ_EVENT_GFX_BLACK_BELT 44 @@ -198,17 +198,17 @@ #define OBJ_EVENT_GFX_MAY_DECORATING 194 #define OBJ_EVENT_GFX_ARCHIE 195 #define OBJ_EVENT_GFX_MAXIE 196 -#define OBJ_EVENT_GFX_KYOGRE_1 197 -#define OBJ_EVENT_GFX_GROUDON_1 198 +#define OBJ_EVENT_GFX_KYOGRE_FRONT 197 +#define OBJ_EVENT_GFX_GROUDON_FRONT 198 #define OBJ_EVENT_GFX_FOSSIL 199 #define OBJ_EVENT_GFX_REGIROCK 200 #define OBJ_EVENT_GFX_REGICE 201 #define OBJ_EVENT_GFX_REGISTEEL 202 #define OBJ_EVENT_GFX_SKITTY 203 #define OBJ_EVENT_GFX_KECLEON 204 -#define OBJ_EVENT_GFX_KYOGRE_2 205 -#define OBJ_EVENT_GFX_GROUDON_2 206 -#define OBJ_EVENT_GFX_RAYQUAZA_2 207 +#define OBJ_EVENT_GFX_KYOGRE_ASLEEP 205 +#define OBJ_EVENT_GFX_GROUDON_ASLEEP 206 +#define OBJ_EVENT_GFX_RAYQUAZA 207 #define OBJ_EVENT_GFX_ZIGZAGOON_2 208 #define OBJ_EVENT_GFX_PIKACHU 209 #define OBJ_EVENT_GFX_AZUMARILL 210 @@ -222,8 +222,8 @@ #define OBJ_EVENT_GFX_JUAN 218 #define OBJ_EVENT_GFX_SCOTT 219 #define OBJ_EVENT_GFX_POOCHYENA 220 -#define OBJ_EVENT_GFX_KYOGRE_3 221 -#define OBJ_EVENT_GFX_GROUDON_3 222 +#define OBJ_EVENT_GFX_KYOGRE_SIDE 221 +#define OBJ_EVENT_GFX_GROUDON_SIDE 222 #define OBJ_EVENT_GFX_MYSTERY_GIFT_MAN 223 #define OBJ_EVENT_GFX_TRICK_HOUSE_STATUE 224 #define OBJ_EVENT_GFX_KIRLIA 225 diff --git a/include/constants/flags.h b/include/constants/flags.h index 798b42d4ddf4..48606962a1cc 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -91,10 +91,10 @@ #define FLAG_UNUSED_0x04F 0x4F // Unused Flag // Scripts -#define FLAG_HIDE_RAYQUAZA_SKY_TOWER_SUMMIT 0x50 -#define FLAG_SET_WALL_CLOCK 0x51 -#define FLAG_RESCUED_BIRCH 0x52 -#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53 +#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_STILL 0x50 +#define FLAG_SET_WALL_CLOCK 0x51 +#define FLAG_RESCUED_BIRCH 0x52 +#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53 #define FLAG_UNUSED_0x054 0x54 // Unused Flag #define FLAG_UNUSED_0x055 0x55 // Unused Flag @@ -775,7 +775,7 @@ #define FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER 0x2DA #define FLAG_HIDE_RUSTBORO_CITY_AQUA_GRUNT 0x2DB #define FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1 0x2DC -#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_2 0x2DD +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_ASLEEP 0x2DD #define FLAG_HIDE_PLAYERS_HOUSE_DAD 0x2DE #define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING 0x2DF #define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING 0x2E0 @@ -815,7 +815,7 @@ #define FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE 0x302 #define FLAG_HIDE_ROUTE_111_VICKY_WINSTRATE 0x303 #define FLAG_HIDE_PETALBURG_GYM_NORMAN 0x304 -#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_2 0x305 +#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA 0x305 #define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_1 0x306 #define FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR 0x307 #define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1 0x308 @@ -892,16 +892,16 @@ #define FLAG_HIDE_JAGGED_PASS_MAGMA_GUARD 0x34F #define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SUBMARINE_SHADOW 0x350 #define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_PICHU_DOLL 0x351 -#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_2 0x352 +#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_ASLEEP 0x352 #define FLAG_HIDE_ROUTE_119_RIVAL 0x353 #define FLAG_HIDE_LILYCOVE_CITY_AQUA_GRUNTS 0x354 -#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1 0x355 +#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON 0x355 #define FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS 0x356 #define FLAG_HIDE_SKY_PILLAR_WALLACE 0x357 #define FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE 0x358 #define FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS 0x359 #define FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY 0x35A -#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 0x35B +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE 0x35B #define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL 0x35C #define FLAG_HIDE_LILYCOVE_HARBOR_SSTIDAL 0x35D #define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA 0x35E diff --git a/src/data/object_events/object_event_graphics_info.h b/src/data/object_events/object_event_graphics_info.h index cd530722bd79..ddc6a1cad38a 100755 --- a/src/data/object_events/object_event_graphics_info.h +++ b/src/data/object_events/object_event_graphics_info.h @@ -40,7 +40,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {0xFFFF const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maniac, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HexManiac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerM, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerF, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BlackBelt, gDummySpriteAffineAnimTable}; @@ -196,19 +196,19 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_MayDecorating, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Archie, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maxie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_Fossil, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Skitty, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre2 = {0xFFFF, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon2 = {0xFFFF, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep = {0xFFFF, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep = {0xFFFF, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Pikachu, gDummySpriteAffineAnimTable}; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azumarill, gDummySpriteAffineAnimTable}; diff --git a/src/data/object_events/object_event_graphics_info_pointers.h b/src/data/object_events/object_event_graphics_info_pointers.h index 0ca70fa3373e..1c94919a7558 100755 --- a/src/data/object_events/object_event_graphics_info_pointers.h +++ b/src/data/object_events/object_event_graphics_info_pointers.h @@ -39,7 +39,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza1; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt; @@ -195,17 +195,17 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon1; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza2; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill; @@ -219,8 +219,8 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kyogre3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Groudon3; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue; const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia; @@ -288,7 +288,7 @@ const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM [OBJ_EVENT_GFX_SCHOOL_KID_M] = &gObjectEventGraphicsInfo_SchoolKidM, [OBJ_EVENT_GFX_MANIAC] = &gObjectEventGraphicsInfo_Maniac, [OBJ_EVENT_GFX_HEX_MANIAC] = &gObjectEventGraphicsInfo_HexManiac, - [OBJ_EVENT_GFX_RAYQUAZA_1] = &gObjectEventGraphicsInfo_Rayquaza1, + [OBJ_EVENT_GFX_RAYQUAZA_STILL] = &gObjectEventGraphicsInfo_RayquazaStill, [OBJ_EVENT_GFX_SWIMMER_M] = &gObjectEventGraphicsInfo_SwimmerM, [OBJ_EVENT_GFX_SWIMMER_F] = &gObjectEventGraphicsInfo_SwimmerF, [OBJ_EVENT_GFX_BLACK_BELT] = &gObjectEventGraphicsInfo_BlackBelt, @@ -444,17 +444,17 @@ const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM [OBJ_EVENT_GFX_MAY_DECORATING] = &gObjectEventGraphicsInfo_MayDecorating, [OBJ_EVENT_GFX_ARCHIE] = &gObjectEventGraphicsInfo_Archie, [OBJ_EVENT_GFX_MAXIE] = &gObjectEventGraphicsInfo_Maxie, - [OBJ_EVENT_GFX_KYOGRE_1] = &gObjectEventGraphicsInfo_Kyogre1, - [OBJ_EVENT_GFX_GROUDON_1] = &gObjectEventGraphicsInfo_Groudon1, + [OBJ_EVENT_GFX_KYOGRE_FRONT] = &gObjectEventGraphicsInfo_KyogreFront, + [OBJ_EVENT_GFX_GROUDON_FRONT] = &gObjectEventGraphicsInfo_GroudonFront, [OBJ_EVENT_GFX_FOSSIL] = &gObjectEventGraphicsInfo_Fossil, [OBJ_EVENT_GFX_REGIROCK] = &gObjectEventGraphicsInfo_Regirock, [OBJ_EVENT_GFX_REGICE] = &gObjectEventGraphicsInfo_Regice, [OBJ_EVENT_GFX_REGISTEEL] = &gObjectEventGraphicsInfo_Registeel, [OBJ_EVENT_GFX_SKITTY] = &gObjectEventGraphicsInfo_Skitty, [OBJ_EVENT_GFX_KECLEON] = &gObjectEventGraphicsInfo_Kecleon, - [OBJ_EVENT_GFX_KYOGRE_2] = &gObjectEventGraphicsInfo_Kyogre2, - [OBJ_EVENT_GFX_GROUDON_2] = &gObjectEventGraphicsInfo_Groudon2, - [OBJ_EVENT_GFX_RAYQUAZA_2] = &gObjectEventGraphicsInfo_Rayquaza2, + [OBJ_EVENT_GFX_KYOGRE_ASLEEP] = &gObjectEventGraphicsInfo_KyogreAsleep, + [OBJ_EVENT_GFX_GROUDON_ASLEEP] = &gObjectEventGraphicsInfo_GroudonAsleep, + [OBJ_EVENT_GFX_RAYQUAZA] = &gObjectEventGraphicsInfo_Rayquaza, [OBJ_EVENT_GFX_ZIGZAGOON_2] = &gObjectEventGraphicsInfo_Zigzagoon, [OBJ_EVENT_GFX_PIKACHU] = &gObjectEventGraphicsInfo_Pikachu, [OBJ_EVENT_GFX_AZUMARILL] = &gObjectEventGraphicsInfo_Azumarill, @@ -468,8 +468,8 @@ const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM [OBJ_EVENT_GFX_JUAN] = &gObjectEventGraphicsInfo_Juan, [OBJ_EVENT_GFX_SCOTT] = &gObjectEventGraphicsInfo_Scott, [OBJ_EVENT_GFX_POOCHYENA] = &gObjectEventGraphicsInfo_Poochyena, - [OBJ_EVENT_GFX_KYOGRE_3] = &gObjectEventGraphicsInfo_Kyogre3, - [OBJ_EVENT_GFX_GROUDON_3] = &gObjectEventGraphicsInfo_Groudon3, + [OBJ_EVENT_GFX_KYOGRE_SIDE] = &gObjectEventGraphicsInfo_KyogreSide, + [OBJ_EVENT_GFX_GROUDON_SIDE] = &gObjectEventGraphicsInfo_GroudonSide, [OBJ_EVENT_GFX_MYSTERY_GIFT_MAN] = &gObjectEventGraphicsInfo_MysteryEventDeliveryman, [OBJ_EVENT_GFX_TRICK_HOUSE_STATUE] = &gObjectEventGraphicsInfo_Statue, [OBJ_EVENT_GFX_KIRLIA] = &gObjectEventGraphicsInfo_Kirlia, From 802d2b2f0f4d5d5be80617dfbb53f6fe11cbeeb9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 03:46:19 -0400 Subject: [PATCH 094/762] Label Kyogre/Groudon anims --- data/maps/SootopolisCity/scripts.inc | 12 +++++------ src/data/object_events/object_event_anims.h | 24 ++++++++++----------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index e6ceb6418397..00fb6b54107d 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -258,8 +258,8 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: @ 81E5946 waitmovement 0 waitse playmoncry SPECIES_GROUDON, 2 - applymovement LOCALID_KYOGRE, SootopolisCity_Movement_GroudonAttack - applymovement LOCALID_GROUDON, SootopolisCity_Movement_KyogreDefend + applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend + applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack waitmovement 0 setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan @@ -358,8 +358,8 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: @ 81E5A82 waitmovement 0 waitse playmoncry SPECIES_GROUDON, 2 - applymovement LOCALID_KYOGRE, SootopolisCity_Movement_GroudonAttack - applymovement LOCALID_GROUDON, SootopolisCity_Movement_KyogreDefend + applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend + applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack waitmovement 0 setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan @@ -431,7 +431,7 @@ SootopolisCity_Movement_KyogreAttack: @ 81E5BB8 clear_affine_anim step_end -SootopolisCity_Movement_GroudonAttack: @ 81E5BC2 +SootopolisCity_Movement_KyogreDefend: @ 81E5BC2 delay_16 delay_16 delay_16 @@ -464,7 +464,7 @@ SootopolisCity_Movement_KyogreIdle: @ 81E5BD6 walk_in_place_slow_left step_end -SootopolisCity_Movement_KyogreDefend: @ 81E5BDD +SootopolisCity_Movement_GroudonAttack: @ 81E5BDD walk_in_place_slow_right walk_in_place_slow_right walk_in_place_slow_right diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index 109c0abc7f71..f3af96f0196d 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -733,7 +733,7 @@ static const union AnimCmd sAnim_HookedPokemonEast[] = ANIMCMD_JUMP(0), }; -static const union AffineAnimCmd sAffineAnim_8508FD8[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_GoSouthStart[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 1), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1), @@ -743,7 +743,7 @@ static const union AffineAnimCmd sAffineAnim_8508FD8[] = AFFINEANIMCMD_JUMP(0), }; -static const union AffineAnimCmd sAffineAnim_8509008[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_GoSouth[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 1), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1), @@ -754,26 +754,26 @@ static const union AffineAnimCmd sAffineAnim_8509008[] = AFFINEANIMCMD_JUMP(0), }; -static const union AffineAnimCmd sAffineAnim_8509040[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_AttackEast[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 10, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd sAffineAnim_8509050[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_AttackWest[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 10, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd sAffineAnim_8509060[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_DipEast[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 1), AFFINEANIMCMD_LOOP(8), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd sAffineAnim_8509078[] = +static const union AffineAnimCmd sAffineAnim_KyogreGroudon_DipWest[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 1), AFFINEANIMCMD_LOOP(8), @@ -1135,12 +1135,12 @@ static const union AnimCmd *const sAnimTable_Fishing[] = { }; static const union AffineAnimCmd *const sAffineAnimTable_KyogreGroudon[] = { - sAffineAnim_8508FD8, - sAffineAnim_8509008, - sAffineAnim_8509050, - sAffineAnim_8509040, - sAffineAnim_8509078, - sAffineAnim_8509060, + sAffineAnim_KyogreGroudon_GoSouthStart, // Used by Kyogre/Groudon when awakened + sAffineAnim_KyogreGroudon_GoSouth, // Used by Kyogre/Groudon when awakened + sAffineAnim_KyogreGroudon_AttackWest, // Used by Kyogre during Sootopolis fight + sAffineAnim_KyogreGroudon_AttackEast, // Unused + sAffineAnim_KyogreGroudon_DipWest, // Unused + sAffineAnim_KyogreGroudon_DipEast, // Unused }; const struct UnkStruct_085094AC gUnknown_085094AC[] = { From 756fad0e61e62e71af6cf451257f882691c004b0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 05:05:33 -0400 Subject: [PATCH 095/762] Document some event object movement --- include/constants/event_object_movement.h | 3 +- include/event_object_movement.h | 16 +- include/field_player_avatar.h | 2 +- .../movement_action_func_tables.h | 12 +- src/event_object_movement.c | 1765 ++++++++--------- src/field_effect_helpers.c | 37 +- src/field_player_avatar.c | 6 +- src/field_specials.c | 4 +- src/fldeff_cut.c | 2 +- src/fldeff_misc.c | 2 +- src/fldeff_sweetscent.c | 4 +- src/overworld.c | 10 +- src/rotating_gate.c | 2 +- 13 files changed, 921 insertions(+), 944 deletions(-) diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 2236500810c2..13e91c41573b 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -237,11 +237,12 @@ #define MOVEMENT_ACTION_WALK_RIGHT_AFFINE 0x97 #define MOVEMENT_ACTION_LEVITATE 0x98 #define MOVEMENT_ACTION_STOP_LEVITATE 0x99 -#define MOVEMENT_ACTION_DESTROY_EXTRA_TASK_IF_AT_TOP 0x9A +#define MOVEMENT_ACTION_STOP_LEVITATE_AT_TOP 0x9A #define MOVEMENT_ACTION_FIGURE_8 0x9B #define MOVEMENT_ACTION_FLY_UP 0x9C #define MOVEMENT_ACTION_FLY_DOWN 0x9D #define MOVEMENT_ACTION_STEP_END 0xFE +#define MOVEMENT_ACTION_NONE 0xFF #endif // GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 446d0dd4e566..9deacfbb7696 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -86,9 +86,9 @@ void LoadPlayerObjectReflectionPalette(u16, u8); void LoadSpecialObjectReflectionPalette(u16, u8); void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16); void PatchObjectPalette(u16, u8); -void sub_808E16C(s16, s16); +void SpawnObjectEventsOnReturnToField(s16, s16); void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat); -void sub_8092FF0(s16, s16, s16 *, s16 *); +void GetMapCoordsFromSpritePos(s16, s16, s16 *, s16 *); u8 GetFaceDirectionAnimNum(u8); void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16); void ObjectEventClearHeldMovement(struct ObjectEvent *); @@ -110,7 +110,7 @@ void FreeAndReserveObjectSpritePalettes(void); void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y); void ResetObjectPriority(u8, u8, u8); void SetObjectPriority(u8, u8, u8, u8); -void sub_808E75C(s16, s16); +void AllowObjectAtPosTriggerGroundEffects(s16, s16); void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup); void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16); void MoveObjectEventToMapCoords(struct ObjectEvent *, s16, s16); @@ -175,16 +175,8 @@ bool8 IsZCoordMismatchAt(u8, s16, s16); void UnfreezeObjectEvent(struct ObjectEvent *); u8 FindLockedObjectEventIndex(struct ObjectEvent *); bool8 obj_npc_ministep(struct Sprite *sprite); -bool8 sub_80976EC(struct Sprite *sprite); -void sub_80976DC(struct Sprite *, u8); -void sub_809783C(struct Sprite *, u8, u8, u8); -void DoShadowFieldEffect(struct ObjectEvent *); -u8 sub_809785C(struct Sprite *); -u8 sub_80978E4(struct Sprite *); void SetAndStartSpriteAnim(struct Sprite *, u8, u8); bool8 SpriteAnimEnded(struct Sprite *); -void CreateLevitateMovementTask(struct ObjectEvent *); -void DestroyExtraMovementTask(u8); void UnfreezeObjectEvents(void); void FreezeObjectEventsExceptOne(u8 objectEventId); void TurnObjectEventSprite(u8, u8); @@ -195,7 +187,7 @@ u8 GetMoveDirectionFastAnimNum(u8); u8 GetMoveDirectionFasterAnimNum(u8); u8 GetMoveDirectionFastestAnimNum(u8); u8 GetLedgeJumpDirection(s16, s16, u8); -void CameraObjectSetFollowedObjectId(u8 objectId); +void CameraObjectSetFollowedSpriteId(u8 objectId); u16 GetObjectPaletteTag(u8 palSlot); void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible); s16 GetFigure8XOffset(s16 idx); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index c30ce0b6fb87..903fe6ef1bdc 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -6,7 +6,7 @@ void ClearPlayerAvatarInfo(void); void SetPlayerAvatarExtraStateTransition(u8, u8); u8 GetPlayerAvatarGenderByGraphicsId(u8); bool8 TestPlayerAvatarFlags(u8); -u8 GetPlayerAvatarObjectId(void); +u8 GetPlayerAvatarSpriteId(void); void PlayerGetDestCoords(s16 *, s16 *); u8 GetPlayerFacingDirection(void); u8 GetPlayerMovementDirection(void); diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 8cf7d1699f49..295bd51fa7c9 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -252,7 +252,7 @@ u8 MovementAction_AcroEndWheelieMoveRight_Step0(struct ObjectEvent *, struct Spr u8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_Levitate_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_StopLevitate_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_DestroyExtraTaskIfAtTop_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_Finish(struct ObjectEvent *, struct Sprite *); u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *, struct Sprite *); @@ -416,7 +416,7 @@ u8 (*const gMovementActionFuncs_WalkLeftAffine[])(struct ObjectEvent *, struct S u8 (*const gMovementActionFuncs_WalkRightAffine[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_Levitate[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_StopLevitate[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_DestroyExtraTaskIfAtTop[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_StopLevitateAtTop[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_Figure8[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_FlyUp[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_FlyDown[])(struct ObjectEvent *, struct Sprite *); @@ -576,7 +576,7 @@ u8 (*const *const gMovementActionFuncs[])(struct ObjectEvent *, struct Sprite *) [MOVEMENT_ACTION_WALK_RIGHT_AFFINE] = gMovementActionFuncs_WalkRightAffine, [MOVEMENT_ACTION_LEVITATE] = gMovementActionFuncs_Levitate, [MOVEMENT_ACTION_STOP_LEVITATE] = gMovementActionFuncs_StopLevitate, - [MOVEMENT_ACTION_DESTROY_EXTRA_TASK_IF_AT_TOP] = gMovementActionFuncs_DestroyExtraTaskIfAtTop, + [MOVEMENT_ACTION_STOP_LEVITATE_AT_TOP] = gMovementActionFuncs_StopLevitateAtTop, [MOVEMENT_ACTION_FIGURE_8] = gMovementActionFuncs_Figure8, [MOVEMENT_ACTION_FLY_UP] = gMovementActionFuncs_FlyUp, [MOVEMENT_ACTION_FLY_DOWN] = gMovementActionFuncs_FlyDown, @@ -602,7 +602,7 @@ u8 (*const gMovementActionFuncs_FaceRight[])(struct ObjectEvent *, struct Sprite MovementAction_PauseSpriteAnim, }; -u8 (*const gUnknown_0850DEE8[])(u8) = { +static u8 (*const sDirectionAnimFuncsBySpeed[])(u8) = { GetMoveDirectionAnimNum, GetMoveDirectionFastAnimNum, GetMoveDirectionFastAnimNum, @@ -1507,7 +1507,7 @@ u8 (*const gMovementActionFuncs_StopLevitate[])(struct ObjectEvent *, struct Spr MovementAction_Finish, }; -u8 (*const gMovementActionFuncs_DestroyExtraTaskIfAtTop[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_DestroyExtraTaskIfAtTop_Step0, +u8 (*const gMovementActionFuncs_StopLevitateAtTop[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_StopLevitateAtTop_Step0, MovementAction_Finish, }; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 746642e15ab5..75e4a5cd8dda 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -32,31 +32,37 @@ // this file was known as evobjmv.c in Game Freak's original source +// Sprite data used throughout +#define sObjEventId data[0] +#define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table +#define sActionFuncId data[2] // Index into corresponding gMovementActionFuncs_* table + + #define movement_type_def(setup, table) \ static u8 setup##_callback(struct ObjectEvent *, struct Sprite *);\ void setup(struct Sprite *sprite)\ {\ - UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, setup##_callback);\ + UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->sObjEventId], sprite, setup##_callback);\ }\ static u8 setup##_callback(struct ObjectEvent *objectEvent, struct Sprite *sprite)\ {\ - return table[sprite->data[1]](objectEvent, sprite);\ + return table[sprite->sTypeFuncId](objectEvent, sprite);\ } #define movement_type_empty_callback(setup) \ static u8 setup##_callback(struct ObjectEvent *, struct Sprite *);\ void setup(struct Sprite *sprite)\ {\ - UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, setup##_callback);\ + UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->sObjEventId], sprite, setup##_callback);\ }\ static u8 setup##_callback(struct ObjectEvent *objectEvent, struct Sprite *sprite)\ {\ return 0;\ } -EWRAM_DATA u8 sCurrentReflectionType = 0; -EWRAM_DATA u16 sCurrentSpecialObjectPaletteTag = 0; -EWRAM_DATA struct LockedAnimObjectEvents *gLockedAnimObjectEvents = {0}; +static EWRAM_DATA u8 sCurrentReflectionType = 0; +static EWRAM_DATA u16 sCurrentSpecialObjectPaletteTag = 0; +static EWRAM_DATA struct LockedAnimObjectEvents *sLockedAnimObjectEvents = {0}; static void MoveCoordsInDirection(u32, s16 *, s16 *, s16, s16); static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *, struct Sprite *); @@ -70,8 +76,8 @@ static void UpdateObjectEventSpriteAnimPause(struct ObjectEvent *, struct Sprite static bool8 IsCoordOutsideObjectEventMovementRange(struct ObjectEvent *, s16, s16); static bool8 IsMetatileDirectionallyImpassable(struct ObjectEvent *, s16, s16, u8); static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *, s16, s16); -static void sub_8096530(struct ObjectEvent *, struct Sprite *); -static void UpdateObjEventSpriteVisibility(struct ObjectEvent *, struct Sprite *); +static void UpdateObjectEventOffscreen(struct ObjectEvent *, struct Sprite *); +static void UpdateObjectEventSpriteVisibility(struct ObjectEvent *, struct Sprite *); static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent*); static void GetGroundEffectFlags_Reflection(struct ObjectEvent*, u32*); static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent*, u32*); @@ -115,14 +121,14 @@ static void GetObjectEventMovingCameraOffset(s16 *, s16 *); static struct ObjectEventTemplate *GetObjectEventTemplateByLocalIdAndMap(u8, u8, u8); static void LoadObjectEventPalette(u16); static void RemoveObjectEventIfOutsideView(struct ObjectEvent *); -static void sub_808E1B8(u8, s16, s16); +static void SpawnObjectEventOnReturnToField(u8, s16, s16); static void SetPlayerAvatarObjectEventIdAndObjectId(u8, u8); -static void sub_808E38C(struct ObjectEvent *); -static u8 sub_808E8F4(const struct SpritePalette *); +static void ResetObjectEventFldEffData(struct ObjectEvent *); +static u8 LoadSpritePaletteIfTagExists(const struct SpritePalette *); static u8 FindObjectEventPaletteIndexByTag(u16); -static void sub_808EAB0(u16, u8); +static void _PatchObjectPalette(u16, u8); static bool8 ObjectEventDoesZCoordMatch(struct ObjectEvent *, u8); -static void ObjectCB_CameraObject(struct Sprite *); +static void SpriteCB_CameraObject(struct Sprite *); static void CameraObject_0(struct Sprite *); static void CameraObject_1(struct Sprite *); static void CameraObject_2(struct Sprite *); @@ -133,14 +139,30 @@ static void oamt_npc_ministep_reset(struct Sprite *, u8, u8); static void InitSpriteForFigure8Anim(struct Sprite *sprite); static bool8 AnimateSpriteInFigure8(struct Sprite *sprite); static void UpdateObjectEventSprite(struct Sprite *); +static void DoShadowFieldEffect(struct ObjectEvent *); +static void SetJumpSpriteData(struct Sprite *, u8, u8, u8); +static void SetWalkSlowSpriteData(struct Sprite *sprite, u8 direction); +static bool8 UpdateWalkSlowAnim(struct Sprite *sprite); +static u8 DoJumpSpriteMovement(struct Sprite *sprite); +static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite); +static void CreateLevitateMovementTask(struct ObjectEvent *); +static void DestroyLevitateMovementTask(u8); static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0}; -const struct SpriteTemplate gCameraSpriteTemplate = {0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, ObjectCB_CameraObject}; +static const struct SpriteTemplate sCameraSpriteTemplate = { + .tileTag = 0, + .paletteTag = 0xFFFF, + .oam = &gDummyOamData, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCB_CameraObject +}; -void (*const gCameraObjectFuncs[])(struct Sprite *) = { +static void (*const sCameraObjectFuncs[])(struct Sprite *) = { CameraObject_0, CameraObject_1, CameraObject_2, @@ -671,13 +693,13 @@ static const u16 *const sObjectPaletteTagSets[] = { #include "data/object_events/berry_tree_graphics_tables.h" #include "data/field_effects/field_effect_objects.h" -const s16 gMovementDelaysMedium[] = {32, 64, 96, 128}; -const s16 gMovementDelaysLong[] = {32, 64, 128, 192}; -const s16 gMovementDelaysShort[] = {32, 48, 64, 80}; +static const s16 sMovementDelaysMedium[] = {32, 64, 96, 128}; +static const s16 sMovementDelaysLong[] = {32, 64, 128, 192}; // Unused +static const s16 sMovementDelaysShort[] = {32, 48, 64, 80}; #include "data/object_events/movement_type_func_tables.h" -const u8 gFaceDirectionAnimNums[] = { +static const u8 sFaceDirectionAnimNums[] = { [DIR_NONE] = 0, [DIR_SOUTH] = 0, [DIR_NORTH] = 1, @@ -688,7 +710,7 @@ const u8 gFaceDirectionAnimNums[] = { [DIR_NORTHWEST] = 1, [DIR_NORTHEAST] = 1, }; -const u8 gMoveDirectionAnimNums[] = { +static const u8 sMoveDirectionAnimNums[] = { [DIR_NONE] = 4, [DIR_SOUTH] = 4, [DIR_NORTH] = 5, @@ -699,7 +721,7 @@ const u8 gMoveDirectionAnimNums[] = { [DIR_NORTHWEST] = 5, [DIR_NORTHEAST] = 5, }; -const u8 gMoveDirectionFastAnimNums[] = { +static const u8 sMoveDirectionFastAnimNums[] = { [DIR_NONE] = 8, [DIR_SOUTH] = 8, [DIR_NORTH] = 9, @@ -710,7 +732,7 @@ const u8 gMoveDirectionFastAnimNums[] = { [DIR_NORTHWEST] = 9, [DIR_NORTHEAST] = 9, }; -const u8 gMoveDirectionFasterAnimNums[] = { +static const u8 sMoveDirectionFasterAnimNums[] = { [DIR_NONE] = 12, [DIR_SOUTH] = 12, [DIR_NORTH] = 13, @@ -721,7 +743,7 @@ const u8 gMoveDirectionFasterAnimNums[] = { [DIR_NORTHWEST] = 13, [DIR_NORTHEAST] = 13, }; -const u8 gMoveDirectionFastestAnimNums[] = { +static const u8 sMoveDirectionFastestAnimNums[] = { [DIR_NONE] = 16, [DIR_SOUTH] = 16, [DIR_NORTH] = 17, @@ -732,7 +754,7 @@ const u8 gMoveDirectionFastestAnimNums[] = { [DIR_NORTHWEST] = 17, [DIR_NORTHEAST] = 17, }; -const u8 gJumpSpecialDirectionAnimNums[] = { // used for jumping onto surf mon +static const u8 sJumpSpecialDirectionAnimNums[] = { // used for jumping onto surf mon [DIR_NONE] = 20, [DIR_SOUTH] = 20, [DIR_NORTH] = 21, @@ -743,7 +765,7 @@ const u8 gJumpSpecialDirectionAnimNums[] = { // used for jumping onto surf mon [DIR_NORTHWEST] = 21, [DIR_NORTHEAST] = 21, }; -const u8 gAcroWheelieDirectionAnimNums[] = { +static const u8 sAcroWheelieDirectionAnimNums[] = { [DIR_NONE] = 20, [DIR_SOUTH] = 20, [DIR_NORTH] = 21, @@ -754,7 +776,7 @@ const u8 gAcroWheelieDirectionAnimNums[] = { [DIR_NORTHWEST] = 21, [DIR_NORTHEAST] = 21, }; -const u8 gUnrefAnimNums_08375633[] = { +static const u8 sAcroUnusedDirectionAnimNums[] = { [DIR_NONE] = 24, [DIR_SOUTH] = 24, [DIR_NORTH] = 25, @@ -765,7 +787,7 @@ const u8 gUnrefAnimNums_08375633[] = { [DIR_NORTHWEST] = 25, [DIR_NORTHEAST] = 25, }; -const u8 gAcroEndWheelieDirectionAnimNums[] = { +static const u8 sAcroEndWheelieDirectionAnimNums[] = { [DIR_NONE] = 28, [DIR_SOUTH] = 28, [DIR_NORTH] = 29, @@ -776,7 +798,7 @@ const u8 gAcroEndWheelieDirectionAnimNums[] = { [DIR_NORTHWEST] = 29, [DIR_NORTHEAST] = 29, }; -const u8 gAcroUnusedActionDirectionAnimNums[] = { +static const u8 sAcroUnusedActionDirectionAnimNums[] = { [DIR_NONE] = 32, [DIR_SOUTH] = 32, [DIR_NORTH] = 33, @@ -787,7 +809,7 @@ const u8 gAcroUnusedActionDirectionAnimNums[] = { [DIR_NORTHWEST] = 33, [DIR_NORTHEAST] = 33, }; -const u8 gAcroWheeliePedalDirectionAnimNums[] = { +static const u8 sAcroWheeliePedalDirectionAnimNums[] = { [DIR_NONE] = 36, [DIR_SOUTH] = 36, [DIR_NORTH] = 37, @@ -798,7 +820,7 @@ const u8 gAcroWheeliePedalDirectionAnimNums[] = { [DIR_NORTHWEST] = 37, [DIR_NORTHEAST] = 37, }; -const u8 gFishingDirectionAnimNums[] = { +static const u8 sFishingDirectionAnimNums[] = { [DIR_NONE] = 0, [DIR_SOUTH] = 0, [DIR_NORTH] = 1, @@ -809,7 +831,7 @@ const u8 gFishingDirectionAnimNums[] = { [DIR_NORTHWEST] = 1, [DIR_NORTHEAST] = 1, }; -const u8 gFishingNoCatchDirectionAnimNums[] = { +static const u8 sFishingNoCatchDirectionAnimNums[] = { [DIR_NONE] = 4, [DIR_SOUTH] = 4, [DIR_NORTH] = 5, @@ -820,7 +842,7 @@ const u8 gFishingNoCatchDirectionAnimNums[] = { [DIR_NORTHWEST] = 5, [DIR_NORTHEAST] = 5, }; -const u8 gFishingBiteDirectionAnimNums[] = { +static const u8 sFishingBiteDirectionAnimNums[] = { [DIR_NONE] = 8, [DIR_SOUTH] = 8, [DIR_NORTH] = 9, @@ -831,7 +853,7 @@ const u8 gFishingBiteDirectionAnimNums[] = { [DIR_NORTHWEST] = 9, [DIR_NORTHEAST] = 9, }; -const u8 gRunningDirectionAnimNums[] = { +static const u8 sRunningDirectionAnimNums[] = { [DIR_NONE] = 20, [DIR_SOUTH] = 20, [DIR_NORTH] = 21, @@ -1071,7 +1093,7 @@ const u8 gAcroEndWheelieMoveDirectionMovementActions[] = { MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_RIGHT, }; -const u8 gOppositeDirections[] = { +static const u8 sOppositeDirections[] = { DIR_NORTH, DIR_SOUTH, DIR_EAST, @@ -1375,7 +1397,7 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl else if (paletteSlot >= 16) { paletteSlot -= 16; - sub_808EAB0(graphicsInfo->paletteTag, paletteSlot); + _PatchObjectPalette(graphicsInfo->paletteTag, paletteSlot); } if (objectEvent->movementType == MOVEMENT_TYPE_INVISIBLE) @@ -1390,14 +1412,14 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl } sprite = &gSprites[spriteId]; - sub_8092FF0(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->pos1.x, &sprite->pos1.y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->pos1.x += 8; sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->oam.paletteNum = paletteSlot; sprite->coordOffsetEnabled = TRUE; - sprite->data[0] = objectEventId; + sprite->sObjEventId = objectEventId; objectEvent->spriteId = spriteId; objectEvent->inanimate = graphicsInfo->inanimate; if (!objectEvent->inanimate) @@ -1524,7 +1546,7 @@ u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x // Used to create sprite object events instead of a full object event // Used when resources are limiting, e.g. for the audience in contests or group members in Union Room -u8 CreateObjectSprite(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction) +u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 direction) { u8 spriteId; struct Sprite *sprite; @@ -1551,7 +1573,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction) sprite->oam.paletteNum -= 16; } sprite->coordOffsetEnabled = TRUE; - sprite->data[0] = a1; + sprite->sObjEventId = objectEventId; sprite->data[1] = z; if (graphicsInfo->paletteSlot == 10) { @@ -1559,7 +1581,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction) } else if (graphicsInfo->paletteSlot >= 16) { - sub_808EAB0(graphicsInfo->paletteTag, graphicsInfo->paletteSlot | 0xf0); + _PatchObjectPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot | 0xf0); } if (subspriteTables != NULL) { @@ -1586,17 +1608,11 @@ void TrySpawnObjectEvents(s16 cameraX, s16 cameraY) s16 bottom = gSaveBlock1Ptr->pos.y + 16; if (InBattlePyramid()) - { objectCount = GetNumBattlePyramidObjectEvents(); - } else if (InTrainerHill()) - { objectCount = 2; - } else - { objectCount = gMapHeader.events->objectEventCount; - } for (i = 0; i < objectCount; i++) { @@ -1649,7 +1665,7 @@ static void RemoveObjectEventIfOutsideView(struct ObjectEvent *objectEvent) RemoveObjectEvent(objectEvent); } -void sub_808E16C(s16 x, s16 y) +void SpawnObjectEventsOnReturnToField(s16 x, s16 y) { u8 i; @@ -1657,16 +1673,14 @@ void sub_808E16C(s16 x, s16 y) for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { if (gObjectEvents[i].active) - { - sub_808E1B8(i, x, y); - } + SpawnObjectEventOnReturnToField(i, x, y); } CreateReflectionEffectSprites(); } -static void sub_808E1B8(u8 objectEventId, s16 x, s16 y) +static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) { - u8 spriteId; + u8 i; u8 paletteSlot; struct Sprite *sprite; struct ObjectEvent *objectEvent; @@ -1675,15 +1689,11 @@ static void sub_808E1B8(u8 objectEventId, s16 x, s16 y) const struct SubspriteTable *subspriteTables; const struct ObjectEventGraphicsInfo *graphicsInfo; -#define i spriteId for (i = 0; i < ARRAY_COUNT(gLinkPlayerObjectEvents); i++) { if (gLinkPlayerObjectEvents[i].active && objectEventId == gLinkPlayerObjectEvents[i].objEventId) - { return; - } } -#undef i objectEvent = &gObjectEvents[objectEventId]; subspriteTables = NULL; @@ -1691,6 +1701,7 @@ static void sub_808E1B8(u8 objectEventId, s16 x, s16 y) spriteFrameImage.size = graphicsInfo->size; MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(objectEvent->graphicsId, objectEvent->movementType, &spriteTemplate, &subspriteTables); spriteTemplate.images = &spriteFrameImage; + *(u16 *)&spriteTemplate.paletteTag = 0xFFFF; paletteSlot = graphicsInfo->paletteSlot; if (paletteSlot == 0) @@ -1704,14 +1715,15 @@ static void sub_808E1B8(u8 objectEventId, s16 x, s16 y) else if (paletteSlot >= 16) { paletteSlot -= 16; - sub_808EAB0(graphicsInfo->paletteTag, paletteSlot); + _PatchObjectPalette(graphicsInfo->paletteTag, paletteSlot); } *(u16 *)&spriteTemplate.paletteTag = 0xFFFF; - spriteId = CreateSprite(&spriteTemplate, 0, 0, 0); - if (spriteId != MAX_SPRITES) + + i = CreateSprite(&spriteTemplate, 0, 0, 0); + if (i != MAX_SPRITES) { - sprite = &gSprites[spriteId]; - sub_8092FF0(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); + sprite = &gSprites[i]; + GetMapCoordsFromSpritePos(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->pos1.x += 8; @@ -1719,27 +1731,25 @@ static void sub_808E1B8(u8 objectEventId, s16 x, s16 y) sprite->images = graphicsInfo->images; if (objectEvent->movementType == MOVEMENT_TYPE_PLAYER) { - SetPlayerAvatarObjectEventIdAndObjectId(objectEventId, spriteId); + SetPlayerAvatarObjectEventIdAndObjectId(objectEventId, i); objectEvent->warpArrowSpriteId = CreateWarpArrowSprite(); } if (subspriteTables != NULL) - { SetSubspriteTables(sprite, subspriteTables); - } + sprite->oam.paletteNum = paletteSlot; sprite->coordOffsetEnabled = TRUE; - sprite->data[0] = objectEventId; - objectEvent->spriteId = spriteId; + sprite->sObjEventId = objectEventId; + objectEvent->spriteId = i; if (!objectEvent->inanimate && objectEvent->movementType != MOVEMENT_TYPE_PLAYER) - { StartSpriteAnim(sprite, GetFaceDirectionAnimNum(objectEvent->facingDirection)); - } - sub_808E38C(objectEvent); + + ResetObjectEventFldEffData(objectEvent); SetObjectSubpriorityByZCoord(objectEvent->previousElevation, sprite, 1); } } -static void sub_808E38C(struct ObjectEvent *objectEvent) +static void ResetObjectEventFldEffData(struct ObjectEvent *objectEvent) { objectEvent->singleMovementActive = FALSE; objectEvent->triggerGroundEffectsOnMove = TRUE; @@ -1780,7 +1790,7 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId) else if (paletteSlot >= 16) { paletteSlot -= 16; - sub_808EAB0(graphicsInfo->paletteTag, paletteSlot); + _PatchObjectPalette(graphicsInfo->paletteTag, paletteSlot); } sprite->oam.shape = graphicsInfo->oam->shape; sprite->oam.size = graphicsInfo->oam->size; @@ -1907,7 +1917,7 @@ void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, *(u8*)(mapGroup) = objectEvent->mapGroup; } -void sub_808E75C(s16 x, s16 y) +void AllowObjectAtPosTriggerGroundEffects(s16 x, s16 y) { u8 objectEventId; struct ObjectEvent *objectEvent; @@ -1972,27 +1982,23 @@ static void LoadObjectEventPalette(u16 paletteTag) u16 i = FindObjectEventPaletteIndexByTag(paletteTag); if (i != OBJ_EVENT_PAL_TAG_NONE) // always true - { - sub_808E8F4(&sObjectEventSpritePalettes[i]); - } + LoadSpritePaletteIfTagExists(&sObjectEventSpritePalettes[i]); } -void Unused_LoadObjectEventPaletteSet(u16 *paletteTags) +// Unused +static void LoadObjectEventPaletteSet(u16 *paletteTags) { u8 i; for (i = 0; paletteTags[i] != OBJ_EVENT_PAL_TAG_NONE; i++) - { LoadObjectEventPalette(paletteTags[i]); - } } -static u8 sub_808E8F4(const struct SpritePalette *spritePalette) +static u8 LoadSpritePaletteIfTagExists(const struct SpritePalette *spritePalette) { if (IndexOfSpritePaletteTag(spritePalette->tag) != 0xFF) - { return 0xFF; - } + return LoadSpritePalette(spritePalette); } @@ -2058,12 +2064,13 @@ void LoadSpecialObjectReflectionPalette(u16 tag, u8 slot) } } -static void sub_808EAB0(u16 tag, u8 slot) +static void _PatchObjectPalette(u16 tag, u8 slot) { PatchObjectPalette(tag, slot); } -void unref_sub_808EAC4(struct ObjectEvent *objectEvent, s16 x, s16 y) +// Unused +static void IncrementObjectEventCoords(struct ObjectEvent *objectEvent, s16 x, s16 y) { objectEvent->previousCoords.x = objectEvent->currentCoords.x; objectEvent->previousCoords.y = objectEvent->currentCoords.y; @@ -2100,7 +2107,7 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y) sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->pos1.x += 8; sprite->pos1.y += 16 + sprite->centerToCornerVecY; - sub_808E38C(objectEvent); + ResetObjectEventFldEffData(objectEvent); if (objectEvent->trackedByCamera) CameraObjectReset1(); } @@ -2179,36 +2186,39 @@ void UpdateObjectEventsForCameraUpdate(s16 x, s16 y) RemoveObjectEventsOutsideView(); } +#define sLinkedSpriteId data[0] +#define sState data[1] + u8 AddCameraObject(u8 linkedSpriteId) { - u8 spriteId = CreateSprite(&gCameraSpriteTemplate, 0, 0, 4); + u8 spriteId = CreateSprite(&sCameraSpriteTemplate, 0, 0, 4); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].data[0] = linkedSpriteId; + gSprites[spriteId].sLinkedSpriteId = linkedSpriteId; return spriteId; } -static void ObjectCB_CameraObject(struct Sprite *sprite) +static void SpriteCB_CameraObject(struct Sprite *sprite) { - void (*callbacks[ARRAY_COUNT(gCameraObjectFuncs)])(struct Sprite *); + void (*callbacks[ARRAY_COUNT(sCameraObjectFuncs)])(struct Sprite *); - memcpy(callbacks, gCameraObjectFuncs, sizeof gCameraObjectFuncs); - callbacks[sprite->data[1]](sprite); + memcpy(callbacks, sCameraObjectFuncs, sizeof sCameraObjectFuncs); + callbacks[sprite->sState](sprite); } static void CameraObject_0(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; + sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x; + sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y; sprite->invisible = TRUE; - sprite->data[1] = 1; + sprite->sState = 1; CameraObject_1(sprite); } static void CameraObject_1(struct Sprite *sprite) { - s16 x = gSprites[sprite->data[0]].pos1.x; - s16 y = gSprites[sprite->data[0]].pos1.y; + s16 x = gSprites[sprite->sLinkedSpriteId].pos1.x; + s16 y = gSprites[sprite->sLinkedSpriteId].pos1.y; sprite->data[2] = x - sprite->pos1.x; sprite->data[3] = y - sprite->pos1.y; @@ -2218,75 +2228,74 @@ static void CameraObject_1(struct Sprite *sprite) static void CameraObject_2(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; + sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x; + sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y; sprite->data[2] = 0; sprite->data[3] = 0; } -static struct Sprite *FindCameraObject(void) +static struct Sprite *FindCameraSprite(void) { u8 i; for (i = 0; i < MAX_SPRITES; i++) { - if (gSprites[i].inUse && gSprites[i].callback == ObjectCB_CameraObject) - { + if (gSprites[i].inUse && gSprites[i].callback == SpriteCB_CameraObject) return &gSprites[i]; - } } return NULL; } void CameraObjectReset1(void) { - struct Sprite *cameraObject; + struct Sprite *camera; - cameraObject = FindCameraObject(); - if (cameraObject != NULL) + camera = FindCameraSprite(); + if (camera != NULL) { - cameraObject->data[1] = 0; - cameraObject->callback(cameraObject); + camera->sState = 0; + camera->callback(camera); } } -void CameraObjectSetFollowedObjectId(u8 objectId) +void CameraObjectSetFollowedSpriteId(u8 spriteId) { - struct Sprite *cameraObject; + struct Sprite *camera; - cameraObject = FindCameraObject(); - if (cameraObject != NULL) + camera = FindCameraSprite(); + if (camera != NULL) { - cameraObject->data[0] = objectId; + camera->sLinkedSpriteId = spriteId; CameraObjectReset1(); } } -u8 CameraObjectGetFollowedObjectId(void) +// Unused +static u8 CameraObjectGetFollowedSpriteId(void) { - struct Sprite *cameraObject; + struct Sprite *camera; - cameraObject = FindCameraObject(); - if (cameraObject == NULL) + camera = FindCameraSprite(); + if (camera == NULL) { return MAX_SPRITES; } - return cameraObject->data[0]; + return camera->sLinkedSpriteId; } void CameraObjectReset2(void) { // UB: Possible null dereference #ifdef UBFIX - struct Sprite *cameraObject; + struct Sprite *camera; - cameraObject = FindCameraObject(); - if (cameraObject != NULL) + camera = FindCameraSprite(); + if (camera != NULL) { - cameraObject->data[1] = 2; + camera->sState = 2; } #else - FindCameraObject()->data[1] = 2; + FindCameraSprite()->sState = 2; #endif // UBFIX } @@ -2547,14 +2556,14 @@ movement_type_def(MovementType_WanderAround, gMovementTypeFuncs_WanderAround) bool8 MovementType_WanderAround_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_WanderAround_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -2564,8 +2573,8 @@ bool8 MovementType_WanderAround_Step2(struct ObjectEvent *objectEvent, struct Sp { return FALSE; } - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); - sprite->data[1] = 3; + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); + sprite->sTypeFuncId = 3; return TRUE; } @@ -2573,7 +2582,7 @@ bool8 MovementType_WanderAround_Step3(struct ObjectEvent *objectEvent, struct Sp { if (WaitForMovementDelay(sprite)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -2587,9 +2596,9 @@ bool8 MovementType_WanderAround_Step4(struct ObjectEvent *objectEvent, struct Sp memcpy(directions, gStandardDirections, sizeof directions); chosenDirection = directions[Random() & 3]; SetObjectEventDirection(objectEvent, chosenDirection); - sprite->data[1] = 5; + sprite->sTypeFuncId = 5; if (GetCollisionInDirection(objectEvent, chosenDirection)) - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -2598,7 +2607,7 @@ bool8 MovementType_WanderAround_Step5(struct ObjectEvent *objectEvent, struct Sp { ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkNormalMovementAction(objectEvent->movementDirection)); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 6; + sprite->sTypeFuncId = 6; return TRUE; } @@ -2607,7 +2616,7 @@ bool8 MovementType_WanderAround_Step6(struct ObjectEvent *objectEvent, struct Sp if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -2653,17 +2662,13 @@ u8 GetVectorDirection(s16 dx, s16 dy, s16 absdx, s16 absdy) { direction = DIR_EAST; if (dx < 0) - { direction = DIR_WEST; - } } else { direction = DIR_SOUTH; if (dy < 0) - { direction = DIR_NORTH; - } } return direction; } @@ -2674,9 +2679,7 @@ u8 GetLimitedVectorDirection_SouthNorth(s16 dx, s16 dy, s16 absdx, s16 absdy) direction = DIR_SOUTH; if (dy < 0) - { direction = DIR_NORTH; - } return direction; } @@ -2686,9 +2689,7 @@ u8 GetLimitedVectorDirection_WestEast(s16 dx, s16 dy, s16 absdx, s16 absdy) direction = DIR_EAST; if (dx < 0) - { direction = DIR_WEST; - } return direction; } @@ -2701,17 +2702,13 @@ u8 GetLimitedVectorDirection_WestNorth(s16 dx, s16 dy, s16 absdx, s16 absdy) { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); if (direction == DIR_EAST) - { direction = DIR_NORTH; - } } else if (direction == DIR_EAST) { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); if (direction == DIR_SOUTH) - { direction = DIR_NORTH; - } } return direction; } @@ -2725,17 +2722,13 @@ u8 GetLimitedVectorDirection_EastNorth(s16 dx, s16 dy, s16 absdx, s16 absdy) { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); if (direction == DIR_WEST) - { direction = DIR_NORTH; - } } else if (direction == DIR_WEST) { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); if (direction == DIR_SOUTH) - { direction = DIR_NORTH; - } } return direction; } @@ -2749,17 +2742,13 @@ u8 GetLimitedVectorDirection_WestSouth(s16 dx, s16 dy, s16 absdx, s16 absdy) { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); if (direction == DIR_EAST) - { direction = DIR_SOUTH; - } } else if (direction == DIR_EAST) { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); if (direction == DIR_NORTH) - { direction = DIR_SOUTH; - } } return direction; } @@ -2773,17 +2762,13 @@ u8 GetLimitedVectorDirection_EastSouth(s16 dx, s16 dy, s16 absdx, s16 absdy) { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); if (direction == DIR_WEST) - { direction = DIR_SOUTH; - } } else if (direction == DIR_WEST) { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); if (direction == DIR_NORTH) - { direction = DIR_SOUTH; - } } return direction; } @@ -2794,9 +2779,7 @@ u8 GetLimitedVectorDirection_SouthNorthWest(s16 dx, s16 dy, s16 absdx, s16 absdy direction = GetVectorDirection(dx, dy, absdx, absdy); if (direction == DIR_EAST) - { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); - } return direction; } @@ -2806,9 +2789,7 @@ u8 GetLimitedVectorDirection_SouthNorthEast(s16 dx, s16 dy, s16 absdx, s16 absdy direction = GetVectorDirection(dx, dy, absdx, absdy); if (direction == DIR_WEST) - { direction = GetLimitedVectorDirection_SouthNorth(dx, dy, absdx, absdy); - } return direction; } @@ -2818,9 +2799,7 @@ u8 GetLimitedVectorDirection_NorthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy) direction = GetVectorDirection(dx, dy, absdx, absdy); if (direction == DIR_SOUTH) - { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); - } return direction; } @@ -2830,9 +2809,7 @@ u8 GetLimitedVectorDirection_SouthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy) direction = GetVectorDirection(dx, dy, absdx, absdy); if (direction == DIR_NORTH) - { direction = GetLimitedVectorDirection_WestEast(dx, dy, absdx, absdy); - } return direction; } @@ -2842,22 +2819,19 @@ u8 TryGetTrainerEncounterDirection(struct ObjectEvent *objectEvent, u8 movementT s16 absdx, absdy; if (!ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) - { - return 0; - } + return DIR_NONE; + PlayerGetDestCoords(&dx, &dy); dx -= objectEvent->currentCoords.x; dy -= objectEvent->currentCoords.y; absdx = dx; absdy = dy; + if (absdx < 0) - { absdx = -absdx; - } if (absdy < 0) - { absdy = -absdy; - } + return gGetVectorDirectionFuncs[movementType](dx, dy, absdx, absdy); } @@ -2866,14 +2840,14 @@ movement_type_def(MovementType_LookAround, gMovementTypeFuncs_LookAround) bool8 MovementType_LookAround_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_LookAround_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -2881,9 +2855,9 @@ bool8 MovementType_LookAround_Step2(struct ObjectEvent *objectEvent, struct Spri { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -2892,7 +2866,7 @@ bool8 MovementType_LookAround_Step3(struct ObjectEvent *objectEvent, struct Spri { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -2908,7 +2882,7 @@ bool8 MovementType_LookAround_Step4(struct ObjectEvent *objectEvent, struct Spri direction = directions[Random() & 3]; SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -2917,25 +2891,24 @@ movement_type_def(MovementType_WanderUpAndDown, gMovementTypeFuncs_WanderUpAndDo bool8 MovementType_WanderUpAndDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_WanderUpAndDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } bool8 MovementType_WanderUpAndDown_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!ObjectEventExecSingleMovementAction(objectEvent, sprite)) - { return FALSE; - } - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); - sprite->data[1] = 3; + + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); + sprite->sTypeFuncId = 3; return TRUE; } @@ -2943,7 +2916,7 @@ bool8 MovementType_WanderUpAndDown_Step3(struct ObjectEvent *objectEvent, struct { if (WaitForMovementDelay(sprite)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -2956,9 +2929,9 @@ bool8 MovementType_WanderUpAndDown_Step4(struct ObjectEvent *objectEvent, struct memcpy(directions, gUpAndDownDirections, sizeof directions); direction = directions[Random() & 1]; SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 5; + sprite->sTypeFuncId = 5; if (GetCollisionInDirection(objectEvent, direction)) - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -2967,7 +2940,7 @@ bool8 MovementType_WanderUpAndDown_Step5(struct ObjectEvent *objectEvent, struct { ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkNormalMovementAction(objectEvent->movementDirection)); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 6; + sprite->sTypeFuncId = 6; return TRUE; } @@ -2976,7 +2949,7 @@ bool8 MovementType_WanderUpAndDown_Step6(struct ObjectEvent *objectEvent, struct if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -2986,25 +2959,24 @@ movement_type_def(MovementType_WanderLeftAndRight, gMovementTypeFuncs_WanderLeft bool8 MovementType_WanderLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_WanderLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } bool8 MovementType_WanderLeftAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!ObjectEventExecSingleMovementAction(objectEvent, sprite)) - { return FALSE; - } - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); - sprite->data[1] = 3; + + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); + sprite->sTypeFuncId = 3; return TRUE; } @@ -3012,7 +2984,7 @@ bool8 MovementType_WanderLeftAndRight_Step3(struct ObjectEvent *objectEvent, str { if (WaitForMovementDelay(sprite)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3025,9 +2997,9 @@ bool8 MovementType_WanderLeftAndRight_Step4(struct ObjectEvent *objectEvent, str memcpy(directions, gLeftAndRightDirections, sizeof directions); direction = directions[Random() & 1]; SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 5; + sprite->sTypeFuncId = 5; if (GetCollisionInDirection(objectEvent, direction)) - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3036,7 +3008,7 @@ bool8 MovementType_WanderLeftAndRight_Step5(struct ObjectEvent *objectEvent, str { ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkNormalMovementAction(objectEvent->movementDirection)); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 6; + sprite->sTypeFuncId = 6; return TRUE; } @@ -3045,7 +3017,7 @@ bool8 MovementType_WanderLeftAndRight_Step6(struct ObjectEvent *objectEvent, str if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -3056,7 +3028,7 @@ bool8 MovementType_FaceDirection_Step0(struct ObjectEvent *objectEvent, struct S { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3064,7 +3036,7 @@ bool8 MovementType_FaceDirection_Step1(struct ObjectEvent *objectEvent, struct S { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } return FALSE; @@ -3087,8 +3059,6 @@ enum { BERRYTREEFUNC_SPARKLE_END, }; -#define sObjEventId data[0] -#define sFuncId data[1] #define sTimer data[2] #define sBerryTreeFlags data[7] @@ -3110,7 +3080,7 @@ void MovementType_BerryTreeGrowth(struct Sprite *sprite) } static bool8 ObjectEventCB2_BerryTree(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - return gMovementTypeFuncs_BerryTreeGrowth[sprite->sFuncId](objectEvent, sprite); + return gMovementTypeFuncs_BerryTreeGrowth[sprite->sTypeFuncId](objectEvent, sprite); } // BERRYTREEFUNC_NORMAL @@ -3139,12 +3109,12 @@ bool8 MovementType_BerryTreeGrowth_Normal(struct ObjectEvent *objectEvent, struc berryStage--; if (sprite->animNum != berryStage) { - sprite->sFuncId = BERRYTREEFUNC_SPARKLE_START; + sprite->sTypeFuncId = BERRYTREEFUNC_SPARKLE_START; return TRUE; } SetBerryTreeGraphics(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION); - sprite->sFuncId = BERRYTREEFUNC_MOVE; + sprite->sTypeFuncId = BERRYTREEFUNC_MOVE; return TRUE; } @@ -3153,7 +3123,7 @@ bool8 MovementType_BerryTreeGrowth_Move(struct ObjectEvent *objectEvent, struct { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - sprite->sFuncId = BERRYTREEFUNC_NORMAL; + sprite->sTypeFuncId = BERRYTREEFUNC_NORMAL; return TRUE; } return FALSE; @@ -3163,7 +3133,7 @@ bool8 MovementType_BerryTreeGrowth_Move(struct ObjectEvent *objectEvent, struct bool8 MovementType_BerryTreeGrowth_SparkleStart(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->singleMovementActive = TRUE; - sprite->sFuncId = BERRYTREEFUNC_SPARKLE; + sprite->sTypeFuncId = BERRYTREEFUNC_SPARKLE; sprite->sTimer = 0; sprite->sBerryTreeFlags |= BERRY_FLAG_SPARKLING; gFieldEffectArguments[0] = objectEvent->currentCoords.x; @@ -3183,7 +3153,7 @@ bool8 MovementType_BerryTreeGrowth_Sparkle(struct ObjectEvent *objectEvent, stru if (sprite->sTimer > 64) { SetBerryTreeGraphics(objectEvent, sprite); - sprite->sFuncId = BERRYTREEFUNC_SPARKLE_END; + sprite->sTypeFuncId = BERRYTREEFUNC_SPARKLE_END; sprite->sTimer = 0; return TRUE; } @@ -3198,7 +3168,7 @@ bool8 MovementType_BerryTreeGrowth_SparkleEnd(struct ObjectEvent *objectEvent, s sprite->animPaused = TRUE; if (sprite->sTimer > 64) { - sprite->sFuncId = BERRYTREEFUNC_NORMAL; + sprite->sTypeFuncId = BERRYTREEFUNC_NORMAL; sprite->sBerryTreeFlags &= ~BERRY_FLAG_SPARKLING; return TRUE; } @@ -3210,14 +3180,14 @@ movement_type_def(MovementType_FaceDownAndUp, gMovementTypeFuncs_FaceDownAndUp) bool8 MovementType_FaceDownAndUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownAndUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3225,9 +3195,9 @@ bool8 MovementType_FaceDownAndUp_Step2(struct ObjectEvent *objectEvent, struct S { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3236,7 +3206,7 @@ bool8 MovementType_FaceDownAndUp_Step3(struct ObjectEvent *objectEvent, struct S { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3253,7 +3223,7 @@ bool8 MovementType_FaceDownAndUp_Step4(struct ObjectEvent *objectEvent, struct S direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3262,14 +3232,14 @@ movement_type_def(MovementType_FaceLeftAndRight, gMovementTypeFuncs_FaceLeftAndR bool8 MovementType_FaceLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3277,9 +3247,9 @@ bool8 MovementType_FaceLeftAndRight_Step2(struct ObjectEvent *objectEvent, struc { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3288,7 +3258,7 @@ bool8 MovementType_FaceLeftAndRight_Step3(struct ObjectEvent *objectEvent, struc { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3305,7 +3275,7 @@ bool8 MovementType_FaceLeftAndRight_Step4(struct ObjectEvent *objectEvent, struc direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3314,14 +3284,14 @@ movement_type_def(MovementType_FaceUpAndLeft, gMovementTypeFuncs_FaceUpAndLeft) bool8 MovementType_FaceUpAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceUpAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3329,9 +3299,9 @@ bool8 MovementType_FaceUpAndLeft_Step2(struct ObjectEvent *objectEvent, struct S { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3340,7 +3310,7 @@ bool8 MovementType_FaceUpAndLeft_Step3(struct ObjectEvent *objectEvent, struct S { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3357,7 +3327,7 @@ bool8 MovementType_FaceUpAndLeft_Step4(struct ObjectEvent *objectEvent, struct S direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3366,14 +3336,14 @@ movement_type_def(MovementType_FaceUpAndRight, gMovementTypeFuncs_FaceUpAndRight bool8 MovementType_FaceUpAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceUpAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3381,9 +3351,9 @@ bool8 MovementType_FaceUpAndRight_Step2(struct ObjectEvent *objectEvent, struct { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3392,7 +3362,7 @@ bool8 MovementType_FaceUpAndRight_Step3(struct ObjectEvent *objectEvent, struct { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3409,7 +3379,7 @@ bool8 MovementType_FaceUpAndRight_Step4(struct ObjectEvent *objectEvent, struct direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3418,14 +3388,14 @@ movement_type_def(MovementType_FaceDownAndLeft, gMovementTypeFuncs_FaceDownAndLe bool8 MovementType_FaceDownAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3433,9 +3403,9 @@ bool8 MovementType_FaceDownAndLeft_Step2(struct ObjectEvent *objectEvent, struct { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3444,7 +3414,7 @@ bool8 MovementType_FaceDownAndLeft_Step3(struct ObjectEvent *objectEvent, struct { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3461,7 +3431,7 @@ bool8 MovementType_FaceDownAndLeft_Step4(struct ObjectEvent *objectEvent, struct direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3470,14 +3440,14 @@ movement_type_def(MovementType_FaceDownAndRight, gMovementTypeFuncs_FaceDownAndR bool8 MovementType_FaceDownAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3485,9 +3455,9 @@ bool8 MovementType_FaceDownAndRight_Step2(struct ObjectEvent *objectEvent, struc { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3496,7 +3466,7 @@ bool8 MovementType_FaceDownAndRight_Step3(struct ObjectEvent *objectEvent, struc { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3513,7 +3483,7 @@ bool8 MovementType_FaceDownAndRight_Step4(struct ObjectEvent *objectEvent, struc direction = directions[Random() & 1]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3522,14 +3492,14 @@ movement_type_def(MovementType_FaceDownUpAndLeft, gMovementTypeFuncs_FaceDownUpA bool8 MovementType_FaceDownUpAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownUpAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3537,9 +3507,9 @@ bool8 MovementType_FaceDownUpAndLeft_Step2(struct ObjectEvent *objectEvent, stru { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3548,7 +3518,7 @@ bool8 MovementType_FaceDownUpAndLeft_Step3(struct ObjectEvent *objectEvent, stru { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3565,7 +3535,7 @@ bool8 MovementType_FaceDownUpAndLeft_Step4(struct ObjectEvent *objectEvent, stru direction = directions[Random() & 3]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3574,14 +3544,14 @@ movement_type_def(MovementType_FaceDownUpAndRight, gMovementTypeFuncs_FaceDownUp bool8 MovementType_FaceDownUpAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownUpAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3589,9 +3559,9 @@ bool8 MovementType_FaceDownUpAndRight_Step2(struct ObjectEvent *objectEvent, str { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3600,7 +3570,7 @@ bool8 MovementType_FaceDownUpAndRight_Step3(struct ObjectEvent *objectEvent, str { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3617,7 +3587,7 @@ bool8 MovementType_FaceDownUpAndRight_Step4(struct ObjectEvent *objectEvent, str direction = directions[Random() & 3]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3626,14 +3596,14 @@ movement_type_def(MovementType_FaceUpRightAndLeft, gMovementTypeFuncs_FaceUpLeft bool8 MovementType_FaceUpLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceUpLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3641,9 +3611,9 @@ bool8 MovementType_FaceUpLeftAndRight_Step2(struct ObjectEvent *objectEvent, str { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3652,7 +3622,7 @@ bool8 MovementType_FaceUpLeftAndRight_Step3(struct ObjectEvent *objectEvent, str { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3669,7 +3639,7 @@ bool8 MovementType_FaceUpLeftAndRight_Step4(struct ObjectEvent *objectEvent, str direction = directions[Random() & 3]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3678,14 +3648,14 @@ movement_type_def(MovementType_FaceDownRightAndLeft, gMovementTypeFuncs_FaceDown bool8 MovementType_FaceDownLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_FaceDownLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3693,9 +3663,9 @@ bool8 MovementType_FaceDownLeftAndRight_Step2(struct ObjectEvent *objectEvent, s { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - SetMovementDelay(sprite, gMovementDelaysShort[Random() & 3]); + SetMovementDelay(sprite, sMovementDelaysShort[Random() & 3]); objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3704,7 +3674,7 @@ bool8 MovementType_FaceDownLeftAndRight_Step3(struct ObjectEvent *objectEvent, s { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 4; + sprite->sTypeFuncId = 4; return TRUE; } return FALSE; @@ -3721,7 +3691,7 @@ bool8 MovementType_FaceDownLeftAndRight_Step4(struct ObjectEvent *objectEvent, s direction = directions[Random() & 3]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3731,7 +3701,7 @@ bool8 MovementType_RotateCounterclockwise_Step0(struct ObjectEvent *objectEvent, { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3740,7 +3710,7 @@ bool8 MovementType_RotateCounterclockwise_Step1(struct ObjectEvent *objectEvent, if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { SetMovementDelay(sprite, 48); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; } return FALSE; } @@ -3749,7 +3719,7 @@ bool8 MovementType_RotateCounterclockwise_Step2(struct ObjectEvent *objectEvent, { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3765,7 +3735,7 @@ bool8 MovementType_RotateCounterclockwise_Step3(struct ObjectEvent *objectEvent, direction = directions[objectEvent->facingDirection]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 0; + sprite->sTypeFuncId = 0; return TRUE; } @@ -3775,7 +3745,7 @@ bool8 MovementType_RotateClockwise_Step0(struct ObjectEvent *objectEvent, struct { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3784,7 +3754,7 @@ bool8 MovementType_RotateClockwise_Step1(struct ObjectEvent *objectEvent, struct if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { SetMovementDelay(sprite, 48); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; } return FALSE; } @@ -3793,7 +3763,7 @@ bool8 MovementType_RotateClockwise_Step2(struct ObjectEvent *objectEvent, struct { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) { - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; } return FALSE; } @@ -3809,7 +3779,7 @@ bool8 MovementType_RotateClockwise_Step3(struct ObjectEvent *objectEvent, struct direction = directions[objectEvent->facingDirection]; } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 0; + sprite->sTypeFuncId = 0; return TRUE; } @@ -3818,7 +3788,7 @@ movement_type_def(MovementType_WalkBackAndForth, gMovementTypeFuncs_WalkBackAndF bool8 MovementType_WalkBackAndForth_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3832,7 +3802,7 @@ bool8 MovementType_WalkBackAndForth_Step1(struct ObjectEvent *objectEvent, struc direction = GetOppositeDirection(direction); } SetObjectEventDirection(objectEvent, direction); - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3861,7 +3831,7 @@ bool8 MovementType_WalkBackAndForth_Step2(struct ObjectEvent *objectEvent, struc ObjectEventSetSingleMovement(objectEvent, sprite, movementActionId); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 3; + sprite->sTypeFuncId = 3; return TRUE; } @@ -3870,7 +3840,7 @@ bool8 MovementType_WalkBackAndForth_Step3(struct ObjectEvent *objectEvent, struc if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -3878,7 +3848,7 @@ bool8 MovementType_WalkBackAndForth_Step3(struct ObjectEvent *objectEvent, struc bool8 MovementType_WalkSequence_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -3906,7 +3876,7 @@ bool8 MoveNextDirectionInSequence(struct ObjectEvent *objectEvent, struct Sprite ObjectEventSetSingleMovement(objectEvent, sprite, movementActionId); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -3915,7 +3885,7 @@ bool8 MovementType_WalkSequence_Step2(struct ObjectEvent *objectEvent, struct Sp if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -4241,7 +4211,7 @@ bool8 MovementType_CopyPlayer_Step0(struct ObjectEvent *objectEvent, struct Spri { objectEvent->directionSequenceIndex = GetPlayerFacingDirection(); } - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -4259,7 +4229,7 @@ bool8 MovementType_CopyPlayer_Step2(struct ObjectEvent *objectEvent, struct Spri if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { objectEvent->singleMovementActive = FALSE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; } return FALSE; } @@ -4273,7 +4243,7 @@ bool8 CopyablePlayerMovement_FaceDirection(struct ObjectEvent *objectEvent, stru { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, playerDirection))); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4294,7 +4264,7 @@ bool8 CopyablePlayerMovement_GoSpeed0(struct ObjectEvent *objectEvent, struct Sp ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } } @@ -4309,7 +4279,7 @@ bool8 CopyablePlayerMovement_GoSpeed0(struct ObjectEvent *objectEvent, struct Sp ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4328,7 +4298,7 @@ bool8 CopyablePlayerMovement_GoSpeed1(struct ObjectEvent *objectEvent, struct Sp ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4347,7 +4317,7 @@ bool8 CopyablePlayerMovement_GoSpeed2(struct ObjectEvent *objectEvent, struct Sp ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4366,7 +4336,7 @@ bool8 CopyablePlayerMovement_Slide(struct ObjectEvent *objectEvent, struct Sprit ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4378,7 +4348,7 @@ bool8 cph_IM_DIFFERENT(struct ObjectEvent *objectEvent, struct Sprite *sprite, u direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventSetSingleMovement(objectEvent, sprite, GetJumpInPlaceMovementAction(direction)); objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4397,7 +4367,7 @@ bool8 CopyablePlayerMovement_GoSpeed4(struct ObjectEvent *objectEvent, struct Sp ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4418,7 +4388,7 @@ bool8 CopyablePlayerMovement_Jump(struct ObjectEvent *objectEvent, struct Sprite ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); } objectEvent->singleMovementActive = TRUE; - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } @@ -4437,7 +4407,7 @@ void MovementType_TreeDisguise(struct Sprite *sprite) { struct ObjectEvent *objectEvent; - objectEvent = &gObjectEvents[sprite->data[0]]; + objectEvent = &gObjectEvents[sprite->sObjEventId]; if (objectEvent->directionSequenceIndex == 0 || (objectEvent->directionSequenceIndex == 1 && !sprite->data[7])) { ObjectEventGetLocalIdAndMap(objectEvent, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]); @@ -4445,7 +4415,7 @@ void MovementType_TreeDisguise(struct Sprite *sprite) objectEvent->directionSequenceIndex = 1; sprite->data[7]++; } - UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, MovementType_Disguise_Callback); + UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->sObjEventId], sprite, MovementType_Disguise_Callback); } static bool8 MovementType_Disguise_Callback(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -4458,7 +4428,7 @@ void MovementType_MountainDisguise(struct Sprite *sprite) { struct ObjectEvent *objectEvent; - objectEvent = &gObjectEvents[sprite->data[0]]; + objectEvent = &gObjectEvents[sprite->sObjEventId]; if (objectEvent->directionSequenceIndex == 0 || (objectEvent->directionSequenceIndex == 1 && !sprite->data[7])) { ObjectEventGetLocalIdAndMap(objectEvent, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]); @@ -4466,24 +4436,24 @@ void MovementType_MountainDisguise(struct Sprite *sprite) objectEvent->directionSequenceIndex = 1; sprite->data[7]++; } - UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, MovementType_Disguise_Callback); + UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->sObjEventId], sprite, MovementType_Disguise_Callback); } void MovementType_Buried(struct Sprite *sprite) { if (!sprite->data[7]) { - gObjectEvents[sprite->data[0]].fixedPriority = TRUE; + gObjectEvents[sprite->sObjEventId].fixedPriority = TRUE; sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; sprite->oam.priority = 3; sprite->data[7]++; } - UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, MovementType_Buried_Callback); + UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->sObjEventId], sprite, MovementType_Buried_Callback); } static bool8 MovementType_Buried_Callback(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - return gMovementTypeFuncs_Buried[sprite->data[1]](objectEvent, sprite); + return gMovementTypeFuncs_Buried[sprite->sTypeFuncId](objectEvent, sprite); } bool8 MovementType_Buried_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -4496,7 +4466,7 @@ bool8 MovementType_MoveInPlace_Step1(struct ObjectEvent *objectEvent, struct Spr { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - sprite->data[1] = 0; + sprite->sTypeFuncId = 0; } return FALSE; } @@ -4507,7 +4477,7 @@ bool8 MovementType_WalkInPlace_Step0(struct ObjectEvent *objectEvent, struct Spr { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceNormalMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -4517,7 +4487,7 @@ bool8 MovementType_WalkSlowlyInPlace_Step0(struct ObjectEvent *objectEvent, stru { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceSlowMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -4527,7 +4497,7 @@ bool8 MovementType_JogInPlace_Step0(struct ObjectEvent *objectEvent, struct Spri { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceFastMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -4537,7 +4507,7 @@ bool8 MovementType_RunInPlace_Step0(struct ObjectEvent *objectEvent, struct Spri { ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceFastestMovementAction(objectEvent->facingDirection)); - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } @@ -4548,14 +4518,14 @@ bool8 MovementType_Invisible_Step0(struct ObjectEvent *objectEvent, struct Sprit ClearObjectEventMovement(objectEvent, sprite); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(objectEvent->facingDirection)); objectEvent->invisible = TRUE; - sprite->data[1] = 1; + sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_Invisible_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) { - sprite->data[1] = 2; + sprite->sTypeFuncId = 2; return TRUE; } return FALSE; @@ -4573,82 +4543,82 @@ static void ClearObjectEventMovement(struct ObjectEvent *objectEvent, struct Spr objectEvent->heldMovementActive = FALSE; objectEvent->heldMovementFinished = FALSE; objectEvent->movementActionId = 0xFF; - sprite->data[1] = 0; + sprite->sTypeFuncId = 0; } u8 GetFaceDirectionAnimNum(u8 direction) { - return gFaceDirectionAnimNums[direction]; + return sFaceDirectionAnimNums[direction]; } u8 GetMoveDirectionAnimNum(u8 direction) { - return gMoveDirectionAnimNums[direction]; + return sMoveDirectionAnimNums[direction]; } u8 GetMoveDirectionFastAnimNum(u8 direction) { - return gMoveDirectionFastAnimNums[direction]; + return sMoveDirectionFastAnimNums[direction]; } u8 GetMoveDirectionFasterAnimNum(u8 direction) { - return gMoveDirectionFasterAnimNums[direction]; + return sMoveDirectionFasterAnimNums[direction]; } u8 GetMoveDirectionFastestAnimNum(u8 direction) { - return gMoveDirectionFastestAnimNums[direction]; + return sMoveDirectionFastestAnimNums[direction]; } u8 GetJumpSpecialDirectionAnimNum(u8 direction) { - return gJumpSpecialDirectionAnimNums[direction]; + return sJumpSpecialDirectionAnimNums[direction]; } u8 GetAcroWheelieDirectionAnimNum(u8 direction) { - return gAcroWheelieDirectionAnimNums[direction]; + return sAcroWheelieDirectionAnimNums[direction]; } -u8 Unref_GetAnimNums_08375633(u8 direction) +u8 GetAcroUnusedDirectionAnimNum(u8 direction) { - return gUnrefAnimNums_08375633[direction]; + return sAcroUnusedDirectionAnimNums[direction]; } u8 GetAcroEndWheelieDirectionAnimNum(u8 direction) { - return gAcroEndWheelieDirectionAnimNums[direction]; + return sAcroEndWheelieDirectionAnimNums[direction]; } u8 GetAcroUnusedActionDirectionAnimNum(u8 direction) { - return gAcroUnusedActionDirectionAnimNums[direction]; + return sAcroUnusedActionDirectionAnimNums[direction]; } u8 GetAcroWheeliePedalDirectionAnimNum(u8 direction) { - return gAcroWheeliePedalDirectionAnimNums[direction]; + return sAcroWheeliePedalDirectionAnimNums[direction]; } u8 GetFishingDirectionAnimNum(u8 direction) { - return gFishingDirectionAnimNums[direction]; + return sFishingDirectionAnimNums[direction]; } u8 GetFishingNoCatchDirectionAnimNum(u8 direction) { - return gFishingNoCatchDirectionAnimNums[direction]; + return sFishingNoCatchDirectionAnimNums[direction]; } u8 GetFishingBiteDirectionAnimNum(u8 direction) { - return gFishingBiteDirectionAnimNums[direction]; + return sFishingBiteDirectionAnimNums[direction]; } u8 GetRunningDirectionAnimNum(u8 direction) { - return gRunningDirectionAnimNums[direction]; + return sRunningDirectionAnimNums[direction]; } static const struct UnkStruct_085094AC *sub_8092A4C(const union AnimCmd *const *anims) @@ -4658,9 +4628,7 @@ static const struct UnkStruct_085094AC *sub_8092A4C(const union AnimCmd *const * for (retval = gUnknown_085094AC; retval->anims != NULL; retval++) { if (retval->anims == anims) - { return retval; - } } return NULL; } @@ -4710,22 +4678,17 @@ void obj_npc_animation_step(struct ObjectEvent *objectEvent, struct Sprite *spri } } -// file boundary? - -u8 GetDirectionToFace(s16 x1, s16 y1, s16 x2, s16 y2) +u8 GetDirectionToFace(s16 x, s16 y, s16 targetX, s16 targetY) { - if (x1 > x2) - { + if (x > targetX) return DIR_WEST; - } - if (x1 < x2) - { + + if (x < targetX) return DIR_EAST; - } - if (y1 > y2) - { + + if (y > targetY) return DIR_NORTH; - } + return DIR_SOUTH; } @@ -4735,7 +4698,7 @@ void SetTrainerMovementType(struct ObjectEvent *objectEvent, u8 movementType) objectEvent->directionSequenceIndex = 0; objectEvent->playerCopyableMovement = 0; gSprites[objectEvent->spriteId].callback = sMovementTypeCallbacks[movementType]; - gSprites[objectEvent->spriteId].data[1] = 0; + gSprites[objectEvent->spriteId].sTypeFuncId = 0; } u8 GetTrainerFacingDirectionMovementType(u8 direction) @@ -4745,10 +4708,8 @@ u8 GetTrainerFacingDirectionMovementType(u8 direction) static u8 GetCollisionInDirection(struct ObjectEvent *objectEvent, u8 direction) { - s16 x; - s16 y; - x = objectEvent->currentCoords.x; - y = objectEvent->currentCoords.y; + s16 x = objectEvent->currentCoords.x; + s16 y = objectEvent->currentCoords.y; MoveCoords(direction, &x, &y); return GetCollisionAtCoords(objectEvent, x, y, direction); } @@ -4795,19 +4756,17 @@ static bool8 IsCoordOutsideObjectEventMovementRange(struct ObjectEvent *objectEv { left = objectEvent->initialCoords.x - objectEvent->rangeX; right = objectEvent->initialCoords.x + objectEvent->rangeX; + if (left > x || right < x) - { return TRUE; - } } if (objectEvent->rangeY != 0) { top = objectEvent->initialCoords.y - objectEvent->rangeY; bottom = objectEvent->initialCoords.y + objectEvent->rangeY; + if (top > y || bottom < y) - { return TRUE; - } } return FALSE; } @@ -4867,13 +4826,17 @@ void SetBerryTreeJustPicked(u8 localId, u8 mapNum, u8 mapGroup) } } +#undef sTimer +#undef sBerryTreeFlags + void MoveCoords(u8 direction, s16 *x, s16 *y) { *x += sDirectionToVectors[direction].x; *y += sDirectionToVectors[direction].y; } -void sub_8092F60(u8 direction, s16 *x, s16 *y) +// Unused +static void MoveCoordsInMapCoordIncrement(u8 direction, s16 *x, s16 *y) { *x += sDirectionToVectors[direction].x << 4; *y += sDirectionToVectors[direction].y << 4; @@ -4894,7 +4857,7 @@ static void MoveCoordsInDirection(u32 dir, s16 *x, s16 *y, s16 deltaX, s16 delta *y -= dy2; } -void sub_8092FF0(s16 x, s16 y, s16 *destX, s16 *destY) +void GetMapCoordsFromSpritePos(s16 x, s16 y, s16 *destX, s16 *destY) { *destX = (x - gSaveBlock1Ptr->pos.x) << 4; *destY = (y - gSaveBlock1Ptr->pos.y) << 4; @@ -4933,22 +4896,18 @@ static void GetObjectEventMovingCameraOffset(s16 *x, s16 *y) { *x = 0; *y = 0; + if (gFieldCamera.x > 0) - { (*x)++; - } + if (gFieldCamera.x < 0) - { - (*x) --; - } + (*x)--; + if (gFieldCamera.y > 0) - { (*y)++; - } + if (gFieldCamera.y < 0) - { - (*y) --; - } + (*y)--; } void ObjectEventMoveDestCoords(struct ObjectEvent *objectEvent, u32 direction, s16 *x, s16 *y) @@ -4984,7 +4943,7 @@ bool8 ObjectEventSetHeldMovement(struct ObjectEvent *objectEvent, u8 movementAct objectEvent->movementActionId = movementActionId; objectEvent->heldMovementActive = TRUE; objectEvent->heldMovementFinished = FALSE; - gSprites[objectEvent->spriteId].data[2] = 0; + gSprites[objectEvent->spriteId].sActionFuncId = 0; return FALSE; } @@ -5005,8 +4964,8 @@ void ObjectEventClearHeldMovement(struct ObjectEvent *objectEvent) objectEvent->movementActionId = 0xFF; objectEvent->heldMovementActive = FALSE; objectEvent->heldMovementFinished = FALSE; - gSprites[objectEvent->spriteId].data[1] = 0; - gSprites[objectEvent->spriteId].data[2] = 0; + gSprites[objectEvent->spriteId].sTypeFuncId = 0; + gSprites[objectEvent->spriteId].sActionFuncId = 0; } u8 ObjectEventCheckHeldMovementStatus(struct ObjectEvent *objectEvent) @@ -5031,7 +4990,7 @@ u8 ObjectEventGetHeldMovementActionId(struct ObjectEvent *objectEvent) if (objectEvent->heldMovementActive) return objectEvent->movementActionId; - return 0xFF; + return MOVEMENT_ACTION_NONE; } void UpdateObjectEventCurrentMovement(struct ObjectEvent *objectEvent, struct Sprite *sprite, bool8 (*callback)(struct ObjectEvent *, struct Sprite *)) @@ -5100,10 +5059,10 @@ dirn_to_anim(GetAcroEndWheelieMoveDirectionMovementAction, gAcroEndWheelieMoveDi u8 GetOppositeDirection(u8 direction) { - u8 directions[sizeof gOppositeDirections]; + u8 directions[sizeof sOppositeDirections]; - memcpy(directions, gOppositeDirections, sizeof gOppositeDirections); - if (direction < 1 || direction > (sizeof gOppositeDirections)) + memcpy(directions, sOppositeDirections, sizeof sOppositeDirections); + if (direction <= DIR_NONE || direction > (sizeof sOppositeDirections)) { return direction; } @@ -5133,7 +5092,7 @@ static u32 state_to_direction(u8 a0, u32 a1, u32 a2) static void ObjectEventExecHeldMovementAction(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (gMovementActionFuncs[objectEvent->movementActionId][sprite->data[2]](objectEvent, sprite)) + if (gMovementActionFuncs[objectEvent->movementActionId][sprite->sActionFuncId](objectEvent, sprite)) { objectEvent->heldMovementFinished = TRUE; } @@ -5141,10 +5100,10 @@ static void ObjectEventExecHeldMovementAction(struct ObjectEvent *objectEvent, s static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (gMovementActionFuncs[objectEvent->movementActionId][sprite->data[2]](objectEvent, sprite)) + if (gMovementActionFuncs[objectEvent->movementActionId][sprite->sActionFuncId](objectEvent, sprite)) { objectEvent->movementActionId = 0xFF; - sprite->data[2] = 0; + sprite->sActionFuncId = 0; return TRUE; } return FALSE; @@ -5153,7 +5112,7 @@ static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *objectEvent static void ObjectEventSetSingleMovement(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animId) { objectEvent->movementActionId = animId; - sprite->data[2] = 0; + sprite->sActionFuncId = 0; } static void FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) @@ -5162,7 +5121,7 @@ static void FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite ShiftStillObjectEventCoords(objectEvent); obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); sprite->animPaused = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; } bool8 MovementAction_FaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -5201,30 +5160,30 @@ void npc_apply_direction(struct ObjectEvent *objectEvent, struct Sprite *sprite, ShiftObjectEventCoords(objectEvent, x, y); oamt_npc_ministep_reset(sprite, direction, speed); sprite->animPaused = FALSE; - if (gLockedAnimObjectEvents != NULL && FindLockedObjectEventIndex(objectEvent) != OBJECT_EVENTS_COUNT) + if (sLockedAnimObjectEvents != NULL && FindLockedObjectEventIndex(objectEvent) != OBJECT_EVENTS_COUNT) { sprite->animPaused = TRUE; } objectEvent->triggerGroundEffectsOnMove = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; } -void do_go_anim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) +static void InitMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { - u8 (*functions[ARRAY_COUNT(gUnknown_0850DEE8)])(u8); + u8 (*functions[ARRAY_COUNT(sDirectionAnimFuncsBySpeed)])(u8); - memcpy(functions, gUnknown_0850DEE8, sizeof gUnknown_0850DEE8); + memcpy(functions, sDirectionAnimFuncsBySpeed, sizeof sDirectionAnimFuncsBySpeed); npc_apply_direction(objectEvent, sprite, direction, speed); npc_apply_anim_looping(objectEvent, sprite, functions[speed](objectEvent->facingDirection)); } -void StartRunningAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) +static void StartRunningAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { npc_apply_direction(objectEvent, sprite, direction, 1); npc_apply_anim_looping(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection)); } -bool8 npc_obj_ministep_stop_on_arrival(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 UpdateMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (obj_npc_ministep(sprite)) { @@ -5236,7 +5195,7 @@ bool8 npc_obj_ministep_stop_on_arrival(struct ObjectEvent *objectEvent, struct S return FALSE; } -void sub_8093AF0(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) +static void InitNpcForWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { s16 x; s16 y; @@ -5246,21 +5205,21 @@ void sub_8093AF0(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire SetObjectEventDirection(objectEvent, direction); MoveCoords(direction, &x, &y); ShiftObjectEventCoords(objectEvent, x, y); - sub_80976DC(sprite, direction); + SetWalkSlowSpriteData(sprite, direction); sprite->animPaused = FALSE; objectEvent->triggerGroundEffectsOnMove = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; } -void sub_8093B60(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) +static void InitWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - sub_8093AF0(objectEvent, sprite, direction); + InitNpcForWalkSlow(objectEvent, sprite, direction); npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); } -bool8 an_walk_any_2(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 UpdateWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80976EC(sprite)) + if (UpdateWalkSlowAnim(sprite)) { ShiftStillObjectEventCoords(objectEvent); objectEvent->triggerGroundEffectsOnStop = TRUE; @@ -5272,15 +5231,15 @@ bool8 an_walk_any_2(struct ObjectEvent *objectEvent, struct Sprite *sprite) bool8 MovementAction_WalkSlowDiagonalUpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_NORTHWEST); + InitWalkSlow(objectEvent, sprite, DIR_NORTHWEST); return MovementAction_WalkSlowDiagonalUpLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowDiagonalUpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5288,15 +5247,15 @@ bool8 MovementAction_WalkSlowDiagonalUpLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_WalkSlowDiagonalUpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_NORTHEAST); + InitWalkSlow(objectEvent, sprite, DIR_NORTHEAST); return MovementAction_WalkSlowDiagonalUpRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowDiagonalUpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5304,15 +5263,15 @@ bool8 MovementAction_WalkSlowDiagonalUpRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_WalkSlowDiagonalDownLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_SOUTHWEST); + InitWalkSlow(objectEvent, sprite, DIR_SOUTHWEST); return MovementAction_WalkSlowDiagonalDownLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowDiagonalDownLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5320,15 +5279,15 @@ bool8 MovementAction_WalkSlowDiagonalDownLeft_Step1(struct ObjectEvent *objectEv bool8 MovementAction_WalkSlowDiagonalDownRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_SOUTHEAST); + InitWalkSlow(objectEvent, sprite, DIR_SOUTHEAST); return MovementAction_WalkSlowDiagonalDownRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowDiagonalDownRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5336,15 +5295,15 @@ bool8 MovementAction_WalkSlowDiagonalDownRight_Step1(struct ObjectEvent *objectE bool8 MovementAction_WalkSlowDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_SOUTH); + InitWalkSlow(objectEvent, sprite, DIR_SOUTH); return MovementAction_WalkSlowDown_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5352,15 +5311,15 @@ bool8 MovementAction_WalkSlowDown_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkSlowUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_NORTH); + InitWalkSlow(objectEvent, sprite, DIR_NORTH); return MovementAction_WalkSlowUp_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5368,15 +5327,15 @@ bool8 MovementAction_WalkSlowUp_Step1(struct ObjectEvent *objectEvent, struct Sp bool8 MovementAction_WalkSlowLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_WEST); + InitWalkSlow(objectEvent, sprite, DIR_WEST); return MovementAction_WalkSlowLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5384,15 +5343,15 @@ bool8 MovementAction_WalkSlowLeft_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkSlowRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_EAST); + InitWalkSlow(objectEvent, sprite, DIR_EAST); return MovementAction_WalkSlowRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkSlowRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5400,15 +5359,15 @@ bool8 MovementAction_WalkSlowRight_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkNormalDiagonalUpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTHWEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTHWEST, 0); return MovementAction_WalkNormalDiagonalUpLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalDiagonalUpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5416,15 +5375,15 @@ bool8 MovementAction_WalkNormalDiagonalUpLeft_Step1(struct ObjectEvent *objectEv bool8 MovementAction_WalkNormalDiagonalUpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTHEAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTHEAST, 0); return MovementAction_WalkNormalDiagonalUpRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalDiagonalUpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5432,15 +5391,15 @@ bool8 MovementAction_WalkNormalDiagonalUpRight_Step1(struct ObjectEvent *objectE bool8 MovementAction_WalkNormalDiagonalDownLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTHWEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTHWEST, 0); return MovementAction_WalkNormalDiagonalDownLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalDiagonalDownLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5448,15 +5407,15 @@ bool8 MovementAction_WalkNormalDiagonalDownLeft_Step1(struct ObjectEvent *object bool8 MovementAction_WalkNormalDiagonalDownRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTHEAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTHEAST, 0); return MovementAction_WalkNormalDiagonalDownRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalDiagonalDownRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5464,15 +5423,15 @@ bool8 MovementAction_WalkNormalDiagonalDownRight_Step1(struct ObjectEvent *objec bool8 MovementAction_WalkNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTH, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 0); return MovementAction_WalkNormalDown_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5480,15 +5439,15 @@ bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTH, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, 0); return MovementAction_WalkNormalUp_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5496,15 +5455,15 @@ bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 0); return MovementAction_WalkNormalLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5512,21 +5471,30 @@ bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 0); return MovementAction_WalkNormalRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkNormalRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8093FC4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a5) +#define JUMP_HALFWAY 1 +#define JUMP_FINISHED ((u8)-1) + +enum { + JUMP_TYPE_HIGH, + JUMP_TYPE_LOW, + JUMP_TYPE_NORMAL, +}; + +static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) { s16 displacements[ARRAY_COUNT(gUnknown_0850DFBC)]; s16 x; @@ -5538,21 +5506,21 @@ void sub_8093FC4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire SetObjectEventDirection(objectEvent, direction); MoveCoordsInDirection(direction, &x, &y, displacements[speed], displacements[speed]); ShiftObjectEventCoords(objectEvent, objectEvent->currentCoords.x + x, objectEvent->currentCoords.y + y); - sub_809783C(sprite, direction, speed, a5); - sprite->data[2] = 1; - sprite->animPaused = 0; - objectEvent->triggerGroundEffectsOnMove = 1; - objectEvent->disableCoveringGroundEffects = 1; + SetJumpSpriteData(sprite, direction, speed, type); + sprite->sActionFuncId = 1; + sprite->animPaused = FALSE; + objectEvent->triggerGroundEffectsOnMove = TRUE; + objectEvent->disableCoveringGroundEffects = TRUE; } -void maybe_shadow_1(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4) +static void InitJumpRegular(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) { - sub_8093FC4(objectEvent, sprite, direction, speed, a4); + InitJump(objectEvent, sprite, direction, speed, type); npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); DoShadowFieldEffect(objectEvent); } -u8 sub_80940C4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *)) +static u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *)) { s16 displacements[ARRAY_COUNT(gUnknown_0850DFC2)]; s16 x; @@ -5561,7 +5529,7 @@ u8 sub_80940C4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callba memcpy(displacements, gUnknown_0850DFC2, sizeof gUnknown_0850DFC2); result = callback(sprite); - if (result == 1 && displacements[sprite->data[4]] != 0) + if (result == JUMP_HALFWAY && displacements[sprite->data[4]] != 0) { x = 0; y = 0; @@ -5570,7 +5538,7 @@ u8 sub_80940C4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callba objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->disableCoveringGroundEffects = TRUE; } - else if (result == 0xFF) + else if (result == JUMP_FINISHED) { ShiftStillObjectEventCoords(objectEvent); objectEvent->triggerGroundEffectsOnStop = TRUE; @@ -5580,41 +5548,39 @@ u8 sub_80940C4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callba return result; } -u8 sub_8094188(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static u8 DoJumpAnimStep(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - return sub_80940C4(objectEvent, sprite, sub_809785C); + return UpdateJumpAnim(objectEvent, sprite, DoJumpSpriteMovement); } -u8 sub_809419C(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static u8 DoJumpSpecialAnimStep(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - return sub_80940C4(objectEvent, sprite, sub_80978E4); + return UpdateJumpAnim(objectEvent, sprite, DoJumpSpecialSpriteMovement); } -bool8 sub_80941B0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 DoJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_8094188(objectEvent, sprite) == 0xFF) - { + if (DoJumpAnimStep(objectEvent, sprite) == JUMP_FINISHED) return TRUE; - } + return FALSE; } -bool8 sub_80941C8(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 DoJumpSpecialAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_809419C(objectEvent, sprite) == 0xFF) - { + if (DoJumpSpecialAnimStep(objectEvent, sprite) == JUMP_FINISHED) return TRUE; - } + return FALSE; } -bool8 sub_80941E0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - switch (sub_8094188(objectEvent, sprite)) + switch (DoJumpAnimStep(objectEvent, sprite)) { - case 255: + case JUMP_FINISHED: return TRUE; - case 1: + case JUMP_HALFWAY: SetObjectEventDirection(objectEvent, GetOppositeDirection(objectEvent->movementDirection)); obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); default: @@ -5624,16 +5590,16 @@ bool8 sub_80941E0(struct ObjectEvent *objectEvent, struct Sprite *sprite) bool8 MovementAction_Jump2Down_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 2, 0); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Down_Step1(objectEvent, sprite); } bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5641,16 +5607,16 @@ bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Up_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 2, 0); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Up_Step1(objectEvent, sprite); } bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5658,16 +5624,16 @@ bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_Jump2Left_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_WEST, 2, 0); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Left_Step1(objectEvent, sprite); } bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5675,33 +5641,32 @@ bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Right_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_EAST, 2, 0); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Right_Step1(objectEvent, sprite); } bool8 MovementAction_Jump2Right_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } - -void sub_8094390(struct Sprite *sprite, u16 duration) +static void InitMovementDelay(struct Sprite *sprite, u16 duration) { - sprite->data[2] = 1; + sprite->sActionFuncId = 1; sprite->data[3] = duration; } bool8 MovementAction_Delay_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (-- sprite->data[3] == 0) + if (--sprite->data[3] == 0) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5709,45 +5674,45 @@ bool8 MovementAction_Delay_Step1(struct ObjectEvent *objectEvent, struct Sprite bool8 MovementAction_Delay1_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094390(sprite, 1); + InitMovementDelay(sprite, 1); return MovementAction_Delay_Step1(objectEvent, sprite); } bool8 MovementAction_Delay2_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094390(sprite, 2); + InitMovementDelay(sprite, 2); return MovementAction_Delay_Step1(objectEvent, sprite); } bool8 MovementAction_Delay4_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094390(sprite, 4); + InitMovementDelay(sprite, 4); return MovementAction_Delay_Step1(objectEvent, sprite); } bool8 MovementAction_Delay8_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094390(sprite, 8); + InitMovementDelay(sprite, 8); return MovementAction_Delay_Step1(objectEvent, sprite); } bool8 MovementAction_Delay16_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094390(sprite, 16); + InitMovementDelay(sprite, 16); return MovementAction_Delay_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTH, 1); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_WalkFastDown_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5755,15 +5720,15 @@ bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTH, 1); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_WalkFastUp_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5771,15 +5736,15 @@ bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, struct Sp bool8 MovementAction_WalkFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 1); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 1); return MovementAction_WalkFastLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5787,27 +5752,27 @@ bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 1); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 1); return MovementAction_WalkFastRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8094554(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 animNum, u16 duration) +static void InitMoveInPlace(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 animNum, u16 duration) { SetObjectEventDirection(objectEvent, direction); npc_apply_anim_looping(objectEvent, sprite, animNum); sprite->animPaused = FALSE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; sprite->data[3] = duration; } @@ -5815,7 +5780,7 @@ bool8 MovementAction_WalkInPlace_Step1(struct ObjectEvent *objectEvent, struct S { if (-- sprite->data[3] == 0) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; sprite->animPaused = TRUE; return TRUE; } @@ -5833,111 +5798,111 @@ bool8 MovementAction_WalkInPlaceSlow_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkInPlaceSlowDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 32); + InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 32); return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceSlowUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 32); + InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 32); return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceSlowLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 32); + InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 32); return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceSlowRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 32); + InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 32); return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 16); + InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 16); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 16); + InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 16); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 16); + InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 16); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 16); + InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 16); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFastAnimNum(DIR_SOUTH), 8); + InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFastAnimNum(DIR_SOUTH), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFastAnimNum(DIR_NORTH), 8); + InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFastAnimNum(DIR_NORTH), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_WEST, GetMoveDirectionFastAnimNum(DIR_WEST), 8); + InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionFastAnimNum(DIR_WEST), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_EAST, GetMoveDirectionFastAnimNum(DIR_EAST), 8); + InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionFastAnimNum(DIR_EAST), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFasterAnimNum(DIR_SOUTH), 4); + InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFasterAnimNum(DIR_SOUTH), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFasterAnimNum(DIR_NORTH), 4); + InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFasterAnimNum(DIR_NORTH), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_WEST, GetMoveDirectionFasterAnimNum(DIR_WEST), 4); + InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionFasterAnimNum(DIR_WEST), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_EAST, GetMoveDirectionFasterAnimNum(DIR_EAST), 4); + InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionFasterAnimNum(DIR_EAST), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_RideWaterCurrentDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTH, 2); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 2); return MovementAction_RideWaterCurrentDown_Step1(objectEvent, sprite); } bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5945,15 +5910,15 @@ bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_RideWaterCurrentUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTH, 2); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, 2); return MovementAction_RideWaterCurrentUp_Step1(objectEvent, sprite); } bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5961,15 +5926,15 @@ bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_RideWaterCurrentLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 2); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 2); return MovementAction_RideWaterCurrentLeft_Step1(objectEvent, sprite); } bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5977,15 +5942,15 @@ bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_RideWaterCurrentRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 2); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 2); return MovementAction_RideWaterCurrentRight_Step1(objectEvent, sprite); } bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -5993,15 +5958,15 @@ bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent bool8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTH, 3); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 3); return MovementAction_WalkFastestDown_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6009,15 +5974,15 @@ bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTH, 3); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, 3); return MovementAction_WalkFastestUp_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6025,15 +5990,15 @@ bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 3); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 3); return MovementAction_WalkFastestLeft_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6041,15 +6006,15 @@ bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 3); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 3); return MovementAction_WalkFastestRight_Step1(objectEvent, sprite); } bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6057,15 +6022,15 @@ bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_SlideDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_SOUTH, 4); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 4); return MovementAction_SlideDown_Step1(objectEvent, sprite); } bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6073,15 +6038,15 @@ bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_SlideUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_NORTH, 4); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, 4); return MovementAction_SlideUp_Step1(objectEvent, sprite); } bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6089,15 +6054,15 @@ bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_SlideLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 4); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 4); return MovementAction_SlideLeft_Step1(objectEvent, sprite); } bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6105,15 +6070,15 @@ bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_SlideRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 4); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 4); return MovementAction_SlideRight_Step1(objectEvent, sprite); } bool8 MovementAction_SlideRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6127,9 +6092,9 @@ bool8 MovementAction_PlayerRunDown_Step0(struct ObjectEvent *objectEvent, struct bool8 MovementAction_PlayerRunDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6143,9 +6108,9 @@ bool8 MovementAction_PlayerRunUp_Step0(struct ObjectEvent *objectEvent, struct S bool8 MovementAction_PlayerRunUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6159,9 +6124,9 @@ bool8 MovementAction_PlayerRunLeft_Step0(struct ObjectEvent *objectEvent, struct bool8 MovementAction_PlayerRunLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6175,9 +6140,9 @@ bool8 MovementAction_PlayerRunRight_Step0(struct ObjectEvent *objectEvent, struc bool8 MovementAction_PlayerRunRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6187,7 +6152,7 @@ void StartSpriteAnimInDirection(struct ObjectEvent *objectEvent, struct Sprite * { SetAndStartSpriteAnim(sprite, animNum, 0); SetObjectEventDirection(objectEvent, direction); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; } bool8 MovementAction_StartAnimInDirection_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -6200,29 +6165,29 @@ bool8 MovementAction_WaitSpriteAnim(struct ObjectEvent *objectEvent, struct Spri { if (SpriteAnimEnded(sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8094DE4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) +static void InitJumpSpecial(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - sub_8093FC4(objectEvent, sprite, direction, 1, 0); + InitJump(objectEvent, sprite, direction, 1, JUMP_TYPE_HIGH); StartSpriteAnim(sprite, GetJumpSpecialDirectionAnimNum(direction)); } bool8 MovementAction_JumpSpecialDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094DE4(objectEvent, sprite, DIR_SOUTH); + InitJumpSpecial(objectEvent, sprite, DIR_SOUTH); return MovementAction_JumpSpecialDown_Step1(objectEvent, sprite); } bool8 MovementAction_JumpSpecialDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941C8(objectEvent, sprite)) + if (DoJumpSpecialAnim(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; objectEvent->landingJump = FALSE; return TRUE; } @@ -6231,15 +6196,15 @@ bool8 MovementAction_JumpSpecialDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpSpecialUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094DE4(objectEvent, sprite, DIR_NORTH); + InitJumpSpecial(objectEvent, sprite, DIR_NORTH); return MovementAction_JumpSpecialUp_Step1(objectEvent, sprite); } bool8 MovementAction_JumpSpecialUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941C8(objectEvent, sprite)) + if (DoJumpSpecialAnim(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; objectEvent->landingJump = FALSE; return TRUE; } @@ -6248,15 +6213,15 @@ bool8 MovementAction_JumpSpecialUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_JumpSpecialLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094DE4(objectEvent, sprite, DIR_WEST); + InitJumpSpecial(objectEvent, sprite, DIR_WEST); return MovementAction_JumpSpecialLeft_Step1(objectEvent, sprite); } bool8 MovementAction_JumpSpecialLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941C8(objectEvent, sprite)) + if (DoJumpSpecialAnim(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; objectEvent->landingJump = FALSE; return TRUE; } @@ -6265,15 +6230,15 @@ bool8 MovementAction_JumpSpecialLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpSpecialRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094DE4(objectEvent, sprite, DIR_EAST); + InitJumpSpecial(objectEvent, sprite, DIR_EAST); return MovementAction_JumpSpecialRight_Step1(objectEvent, sprite); } bool8 MovementAction_JumpSpecialRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941C8(objectEvent, sprite)) + if (DoJumpSpecialAnim(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; objectEvent->landingJump = FALSE; return TRUE; } @@ -6288,7 +6253,7 @@ bool8 MovementAction_FacePlayer_Step0(struct ObjectEvent *objectEvent, struct Sp { FaceDirection(objectEvent, sprite, GetDirectionToFace(objectEvent->currentCoords.x, objectEvent->currentCoords.y, gObjectEvents[playerObjectId].currentCoords.x, gObjectEvents[playerObjectId].currentCoords.y)); } - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6300,36 +6265,36 @@ bool8 MovementAction_FaceAwayPlayer_Step0(struct ObjectEvent *objectEvent, struc { FaceDirection(objectEvent, sprite, GetOppositeDirection(GetDirectionToFace(objectEvent->currentCoords.x, objectEvent->currentCoords.y, gObjectEvents[playerObjectId].currentCoords.x, gObjectEvents[playerObjectId].currentCoords.y))); } - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_LockFacingDirection_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->facingDirectionLocked = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_UnlockFacingDirection_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->facingDirectionLocked = FALSE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_JumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 1, 2); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpDown_Step1(objectEvent, sprite); } bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6337,16 +6302,16 @@ bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 1, 2); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpUp_Step1(objectEvent, sprite); } bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6354,16 +6319,16 @@ bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite bool8 MovementAction_JumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_WEST, 1, 2); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpLeft_Step1(objectEvent, sprite); } bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6371,16 +6336,16 @@ bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_EAST, 1, 2); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpRight_Step1(objectEvent, sprite); } bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6388,16 +6353,16 @@ bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_JumpInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 0, 0); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceDown_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6405,16 +6370,16 @@ bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 0, 0); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceUp_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6422,16 +6387,16 @@ bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_JumpInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_WEST, 0, 0); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceLeft_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6439,16 +6404,16 @@ bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_EAST, 0, 0); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceRight_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6456,16 +6421,16 @@ bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_JumpInPlaceDownUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 0, 2); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceDownUp_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941E0(objectEvent, sprite)) + if (DoJumpInPlaceAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6473,16 +6438,16 @@ bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceUpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 0, 2); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceUpDown_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941E0(objectEvent, sprite)) + if (DoJumpInPlaceAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6490,16 +6455,16 @@ bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceLeftRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_WEST, 0, 2); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceLeftRight_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941E0(objectEvent, sprite)) + if (DoJumpInPlaceAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6507,16 +6472,16 @@ bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_JumpInPlaceRightLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - maybe_shadow_1(objectEvent, sprite, DIR_EAST, 0, 2); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceRightLeft_Step1(objectEvent, sprite); } bool8 MovementAction_JumpInPlaceRightLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941E0(objectEvent, sprite)) + if (DoJumpInPlaceAnim(objectEvent, sprite)) { objectEvent->hasShadow = 0; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6537,42 +6502,42 @@ bool8 MovementAction_NurseJoyBowDown_Step0(struct ObjectEvent *objectEvent, stru bool8 MovementAction_EnableJumpLandingGroundEffect_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->disableJumpLandingGroundEffect = FALSE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_DisableJumpLandingGroundEffect_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->disableJumpLandingGroundEffect = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_DisableAnimation_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->inanimate = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_RestoreAnimation_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->inanimate = GetObjectEventGraphicsInfo(objectEvent->graphicsId)->inanimate; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_SetInvisible_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->invisible = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_SetVisible_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->invisible = FALSE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6580,7 +6545,7 @@ bool8 MovementAction_EmoteExclamationMark_Step0(struct ObjectEvent *objectEvent, { ObjectEventGetLocalIdAndMap(objectEvent, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6588,7 +6553,7 @@ bool8 MovementAction_EmoteQuestionMark_Step0(struct ObjectEvent *objectEvent, st { ObjectEventGetLocalIdAndMap(objectEvent, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_QUESTION_MARK_ICON); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6596,7 +6561,7 @@ bool8 MovementAction_EmoteHeart_Step0(struct ObjectEvent *objectEvent, struct Sp { ObjectEventGetLocalIdAndMap(objectEvent, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_HEART_ICON); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6609,11 +6574,11 @@ bool8 MovementAction_RevealTrainer_Step0(struct ObjectEvent *objectEvent, struct } if (objectEvent->movementType != MOVEMENT_TYPE_TREE_DISGUISE && objectEvent->movementType != MOVEMENT_TYPE_MOUNTAIN_DISGUISE) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } sub_8155D78(objectEvent); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return MovementAction_RevealTrainer_Step1(objectEvent, sprite); } @@ -6621,7 +6586,7 @@ bool8 MovementAction_RevealTrainer_Step1(struct ObjectEvent *objectEvent, struct { if (sub_8155DA0(objectEvent)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6630,7 +6595,7 @@ bool8 MovementAction_RevealTrainer_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_RockSmashBreak_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { SetAndStartSpriteAnim(sprite, 1, 0); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return FALSE; } @@ -6639,7 +6604,7 @@ bool8 MovementAction_RockSmashBreak_Step1(struct ObjectEvent *objectEvent, struc if (SpriteAnimEnded(sprite)) { SetMovementDelay(sprite, 32); - sprite->data[2] = 2; + sprite->sActionFuncId = 2; } return FALSE; } @@ -6650,7 +6615,7 @@ bool8 MovementAction_RockSmashBreak_Step2(struct ObjectEvent *objectEvent, struc if (WaitForMovementDelay(sprite)) { objectEvent->invisible = TRUE; - sprite->data[2] = 3; + sprite->sActionFuncId = 3; } return FALSE; } @@ -6658,7 +6623,7 @@ bool8 MovementAction_RockSmashBreak_Step2(struct ObjectEvent *objectEvent, struc bool8 MovementAction_CutTree_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { SetAndStartSpriteAnim(sprite, 1, 0); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return FALSE; } @@ -6667,7 +6632,7 @@ bool8 MovementAction_CutTree_Step1(struct ObjectEvent *objectEvent, struct Sprit if (SpriteAnimEnded(sprite)) { SetMovementDelay(sprite, 32); - sprite->data[2] = 2; + sprite->sActionFuncId = 2; } return FALSE; } @@ -6678,7 +6643,7 @@ bool8 MovementAction_CutTree_Step2(struct ObjectEvent *objectEvent, struct Sprit if (WaitForMovementDelay(sprite)) { objectEvent->invisible = TRUE; - sprite->data[2] = 3; + sprite->sActionFuncId = 3; } return FALSE; } @@ -6686,14 +6651,14 @@ bool8 MovementAction_CutTree_Step2(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_SetFixedPriority_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->fixedPriority = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_ClearFixedPriority_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { objectEvent->fixedPriority = FALSE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -6728,7 +6693,7 @@ bool8 MovementAction_ShowReflection_Step0(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkDownStartAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_SOUTH); + InitWalkSlow(objectEvent, sprite, DIR_SOUTH); sprite->affineAnimPaused = FALSE; StartSpriteAffineAnimIfDifferent(sprite, 0); return MovementAction_WalkDownStartAffine_Step1(objectEvent, sprite); @@ -6736,10 +6701,10 @@ bool8 MovementAction_WalkDownStartAffine_Step0(struct ObjectEvent *objectEvent, bool8 MovementAction_WalkDownStartAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { sprite->affineAnimPaused = TRUE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6747,7 +6712,7 @@ bool8 MovementAction_WalkDownStartAffine_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_WalkDownAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8093B60(objectEvent, sprite, DIR_SOUTH); + InitWalkSlow(objectEvent, sprite, DIR_SOUTH); sprite->affineAnimPaused = FALSE; ChangeSpriteAffineAnimIfDifferent(sprite, 1); return MovementAction_WalkDownAffine_Step1(objectEvent, sprite); @@ -6755,10 +6720,10 @@ bool8 MovementAction_WalkDownAffine_Step0(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (an_walk_any_2(objectEvent, sprite)) + if (UpdateWalkSlow(objectEvent, sprite)) { sprite->affineAnimPaused = TRUE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6766,7 +6731,7 @@ bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkLeftAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_WEST, 1); + InitMovementNormal(objectEvent, sprite, DIR_WEST, 1); sprite->affineAnimPaused = FALSE; ChangeSpriteAffineAnimIfDifferent(sprite, 2); return MovementAction_WalkLeftAffine_Step1(objectEvent, sprite); @@ -6774,10 +6739,10 @@ bool8 MovementAction_WalkLeftAffine_Step0(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkLeftAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { sprite->affineAnimPaused = TRUE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6785,7 +6750,7 @@ bool8 MovementAction_WalkLeftAffine_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkRightAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - do_go_anim(objectEvent, sprite, DIR_EAST, 1); + InitMovementNormal(objectEvent, sprite, DIR_EAST, 1); sprite->affineAnimPaused = FALSE; ChangeSpriteAffineAnimIfDifferent(sprite, 3); return MovementAction_WalkRightAffine_Step1(objectEvent, sprite); @@ -6793,45 +6758,45 @@ bool8 MovementAction_WalkRightAffine_Step0(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkRightAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { sprite->affineAnimPaused = TRUE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -static void sub_80958C0(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) +static void AcroWheelieFaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { SetObjectEventDirection(objectEvent, direction); ShiftStillObjectEventCoords(objectEvent); obj_npc_animation_step(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(direction)); sprite->animPaused = TRUE; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; } bool8 MovementAction_AcroWheelieFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80958C0(objectEvent, sprite, DIR_SOUTH); + AcroWheelieFaceDirection(objectEvent, sprite, DIR_SOUTH); return TRUE; } bool8 MovementAction_AcroWheelieFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80958C0(objectEvent, sprite, DIR_NORTH); + AcroWheelieFaceDirection(objectEvent, sprite, DIR_NORTH); return TRUE; } bool8 MovementAction_AcroWheelieFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80958C0(objectEvent, sprite, DIR_WEST); + AcroWheelieFaceDirection(objectEvent, sprite, DIR_WEST); return TRUE; } bool8 MovementAction_AcroWheelieFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80958C0(objectEvent, sprite, DIR_EAST); + AcroWheelieFaceDirection(objectEvent, sprite, DIR_EAST); return TRUE; } @@ -6928,7 +6893,7 @@ bool8 DoFigure8Anim(struct ObjectEvent *objectEvent, struct Sprite *sprite) bool8 MovementAction_Figure8_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitFigure8Anim(objectEvent, sprite); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return MovementAction_Figure8_Step1(objectEvent, sprite); } @@ -6936,31 +6901,31 @@ bool8 MovementAction_Figure8_Step1(struct ObjectEvent *objectEvent, struct Sprit { if (DoFigure8Anim(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8095B84(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4) +static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) { - sub_8093FC4(objectEvent, sprite, direction, speed, a4); + InitJump(objectEvent, sprite, direction, speed, type); StartSpriteAnimIfDifferent(sprite, GetAcroWheelieDirectionAnimNum(direction)); DoShadowFieldEffect(objectEvent); } bool8 MovementAction_AcroWheelieHopFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_SOUTH, 0, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6968,16 +6933,16 @@ bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_NORTH, 0, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -6985,16 +6950,16 @@ bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieHopFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_WEST, 0, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7002,16 +6967,16 @@ bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_EAST, 0, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7019,16 +6984,16 @@ bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_AcroWheelieHopDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_SOUTH, 1, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7036,16 +7001,16 @@ bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_NORTH, 1, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7053,16 +7018,16 @@ bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_AcroWheelieHopLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_WEST, 1, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7070,16 +7035,16 @@ bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_EAST, 1, 1); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7087,16 +7052,16 @@ bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_SOUTH, 2, 0); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7104,16 +7069,16 @@ bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_NORTH, 2, 0); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7121,16 +7086,16 @@ bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieJumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_WEST, 2, 0); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7138,16 +7103,16 @@ bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8095B84(objectEvent, sprite, DIR_EAST, 2, 0); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieJumpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_80941B0(objectEvent, sprite)) + if (DoJumpAnim(objectEvent, sprite)) { objectEvent->hasShadow = FALSE; - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7155,29 +7120,29 @@ bool8 MovementAction_AcroWheelieJumpRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_SOUTH, GetAcroWheeliePedalDirectionAnimNum(DIR_SOUTH), 8); + InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetAcroWheeliePedalDirectionAnimNum(DIR_SOUTH), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_NORTH, GetAcroWheeliePedalDirectionAnimNum(DIR_NORTH), 8); + InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetAcroWheeliePedalDirectionAnimNum(DIR_NORTH), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_WEST, GetAcroWheeliePedalDirectionAnimNum(DIR_WEST), 8); + InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetAcroWheeliePedalDirectionAnimNum(DIR_WEST), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8094554(objectEvent, sprite, DIR_EAST, GetAcroWheeliePedalDirectionAnimNum(DIR_EAST), 8); + InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetAcroWheeliePedalDirectionAnimNum(DIR_EAST), 8); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } -void sub_80960C8(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) +static void InitAcroPopWheelie(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { npc_apply_direction(objectEvent, sprite, direction, speed); StartSpriteAnim(sprite, GetAcroWheelieDirectionAnimNum(objectEvent->facingDirection)); @@ -7186,15 +7151,15 @@ void sub_80960C8(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire bool8 MovementAction_AcroPopWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80960C8(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroPopWheelieMoveDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7202,15 +7167,15 @@ bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80960C8(objectEvent, sprite, DIR_NORTH, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroPopWheelieMoveUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7218,15 +7183,15 @@ bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroPopWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80960C8(objectEvent, sprite, DIR_WEST, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroPopWheelieMoveLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7234,21 +7199,21 @@ bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_80960C8(objectEvent, sprite, DIR_EAST, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroPopWheelieMoveRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroPopWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8096200(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) +static void InitAcroWheelieMove(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { npc_apply_direction(objectEvent, sprite, direction, speed); npc_apply_anim_looping(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(objectEvent->facingDirection)); @@ -7256,15 +7221,15 @@ void sub_8096200(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire bool8 MovementAction_AcroWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096200(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroWheelieMoveDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7272,15 +7237,15 @@ bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096200(objectEvent, sprite, DIR_NORTH, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroWheelieMoveUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7288,15 +7253,15 @@ bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096200(objectEvent, sprite, DIR_WEST, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroWheelieMoveLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7304,21 +7269,21 @@ bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096200(objectEvent, sprite, DIR_EAST, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroWheelieMoveRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; } -void sub_8096330(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) +static void InitAcroEndWheelie(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { npc_apply_direction(objectEvent, sprite, direction, speed); StartSpriteAnim(sprite, GetAcroEndWheelieDirectionAnimNum(objectEvent->facingDirection)); @@ -7327,15 +7292,15 @@ void sub_8096330(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire bool8 MovementAction_AcroEndWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096330(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroEndWheelieMoveDown_Step1(objectEvent, sprite); } bool8 MovementAction_AcroEndWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7343,15 +7308,15 @@ bool8 MovementAction_AcroEndWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096330(objectEvent, sprite, DIR_NORTH, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroEndWheelieMoveUp_Step1(objectEvent, sprite); } bool8 MovementAction_AcroEndWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7359,15 +7324,15 @@ bool8 MovementAction_AcroEndWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroEndWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096330(objectEvent, sprite, DIR_WEST, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroEndWheelieMoveLeft_Step1(objectEvent, sprite); } bool8 MovementAction_AcroEndWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7375,15 +7340,15 @@ bool8 MovementAction_AcroEndWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096330(objectEvent, sprite, DIR_EAST, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroEndWheelieMoveRight_Step1(objectEvent, sprite); } bool8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite)) + if (UpdateMovementNormal(objectEvent, sprite)) { - sprite->data[2] = 2; + sprite->sActionFuncId = 2; return TRUE; } return FALSE; @@ -7392,24 +7357,24 @@ bool8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_Levitate_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { CreateLevitateMovementTask(objectEvent); - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_StopLevitate_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - DestroyExtraMovementTask(objectEvent->warpArrowSpriteId); + DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId); sprite->pos2.y = 0; - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } -bool8 MovementAction_DestroyExtraTaskIfAtTop_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (sprite->pos2.y == 0) { - DestroyExtraMovementTask(objectEvent->warpArrowSpriteId); - sprite->data[2] = 1; + DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId); + sprite->sActionFuncId = 1; return TRUE; } return FALSE; @@ -7446,17 +7411,18 @@ static void TryEnableObjectEventAnim(struct ObjectEvent *objectEvent, struct Spr static void UpdateObjectEventVisibility(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sub_8096530(objectEvent, sprite); - UpdateObjEventSpriteVisibility(objectEvent, sprite); + UpdateObjectEventOffscreen(objectEvent, sprite); + UpdateObjectEventSpriteVisibility(objectEvent, sprite); } -static void sub_8096530(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static void UpdateObjectEventOffscreen(struct ObjectEvent *objectEvent, struct Sprite *sprite) { u16 x, y; u16 x2, y2; const struct ObjectEventGraphicsInfo *graphicsInfo; objectEvent->offScreen = FALSE; + graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); if (sprite->coordOffsetEnabled) { @@ -7472,23 +7438,19 @@ static void sub_8096530(struct ObjectEvent *objectEvent, struct Sprite *sprite) x2 += x; y2 = y; y2 += graphicsInfo->height; - if ((s16)x >= 0x100 || (s16)x2 < -0x10) - { + + if ((s16)x >= DISPLAY_WIDTH + 16 || (s16)x2 < -16) objectEvent->offScreen = TRUE; - } - if ((s16)y >= 0xB0 || (s16)y2 < -0x10) - { + + if ((s16)y >= DISPLAY_HEIGHT + 16 || (s16)y2 < -16) objectEvent->offScreen = TRUE; - } } -static void UpdateObjEventSpriteVisibility(struct ObjectEvent *objectEvent, struct Sprite *sprite) +static void UpdateObjectEventSpriteVisibility(struct ObjectEvent *objectEvent, struct Sprite *sprite) { sprite->invisible = FALSE; if (objectEvent->invisible || objectEvent->offScreen) - { sprite->invisible = TRUE; - } } static void GetAllGroundEffectFlags_OnSpawn(struct ObjectEvent *objEvent, u32 *flags) @@ -7772,30 +7734,30 @@ static u8 GetReflectionTypeByMetatileBehavior(u32 behavior) return REFL_TYPE_NONE; } -u8 GetLedgeJumpDirection(s16 x, s16 y, u8 z) +u8 GetLedgeJumpDirection(s16 x, s16 y, u8 direction) { - static bool8 (*const unknown_08376040[])(u8) = { - MetatileBehavior_IsJumpSouth, - MetatileBehavior_IsJumpNorth, - MetatileBehavior_IsJumpWest, - MetatileBehavior_IsJumpEast, + static bool8 (*const ledgeBehaviorFuncs[])(u8) = { + [DIR_SOUTH - 1] = MetatileBehavior_IsJumpSouth, + [DIR_NORTH - 1] = MetatileBehavior_IsJumpNorth, + [DIR_WEST - 1] = MetatileBehavior_IsJumpWest, + [DIR_EAST - 1] = MetatileBehavior_IsJumpEast, }; - u8 b; - u8 index = z; + u8 behavior; + u8 index = direction; - if (index == 0) - return 0; - else if (index > 4) - index -= 4; + if (index == DIR_NONE) + return DIR_NONE; + else if (index > DIR_EAST) + index -= DIR_EAST; index--; - b = MapGridGetMetatileBehaviorAt(x, y); + behavior = MapGridGetMetatileBehaviorAt(x, y); - if (unknown_08376040[index](b) == 1) + if (ledgeBehaviorFuncs[index](behavior) == TRUE) return index + 1; - return 0; + return DIR_NONE; } static void SetObjectEventSpriteOamTableForLongGrass(struct ObjectEvent *objEvent, struct Sprite *sprite) @@ -7824,7 +7786,7 @@ bool8 IsZCoordMismatchAt(u8 z, s16 x, s16 y) mapZ = MapGridGetZCoordAt(x, y); - if (mapZ == 0 || mapZ == 0xF) + if (mapZ == 0 || mapZ == 15) return FALSE; if (mapZ != z) @@ -7833,21 +7795,15 @@ bool8 IsZCoordMismatchAt(u8 z, s16 x, s16 y) return FALSE; } -static const u8 sUnknown_08376050[] = { - 0x73, 0x73, 0x53, 0x73, 0x53, 0x73, 0x53, 0x73, 0x53, 0x73, 0x53, 0x73, 0x53, 0x00, 0x00, 0x73 +static const u8 sElevationToSubpriority[] = { + 115, 115, 83, 115, 83, 115, 83, 115, 83, 115, 83, 115, 83, 0, 0, 115 }; -// Each byte corresponds to a sprite priority for an object event. -// This is directly the inverse of gObjectEventPriorities_08376070. -static const u8 sObjectEventPriorities_08376060[] = { +static const u8 sElevationToPriority[] = { 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0, 0, 2 }; -// Each byte corresponds to a sprite priority for an object event. -// This is the inverse of gObjectEventPriorities_08376060. -// 1 = Above player sprite -// 2 = Below player sprite -static const u8 sObjectEventPriorities_08376070[] = { +static const u8 sElevationToSubspriteTableNum[] = { 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 0, 1, }; @@ -7858,19 +7814,19 @@ void UpdateObjectEventZCoordAndPriority(struct ObjectEvent *objEvent, struct Spr ObjectEventUpdateZCoord(objEvent); - sprite->subspriteTableNum = sObjectEventPriorities_08376070[objEvent->previousElevation]; - sprite->oam.priority = sObjectEventPriorities_08376060[objEvent->previousElevation]; + sprite->subspriteTableNum = sElevationToSubspriteTableNum[objEvent->previousElevation]; + sprite->oam.priority = sElevationToPriority[objEvent->previousElevation]; } static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z) { - sprite->subspriteTableNum = sObjectEventPriorities_08376070[z]; - sprite->oam.priority = sObjectEventPriorities_08376060[z]; + sprite->subspriteTableNum = sElevationToSubspriteTableNum[z]; + sprite->oam.priority = sElevationToPriority[z]; } u8 ZCoordToPriority(u8 z) { - return sObjectEventPriorities_08376060[z]; + return sElevationToPriority[z]; } void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent) @@ -7887,14 +7843,14 @@ void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent) objEvent->previousElevation = z; } -void SetObjectSubpriorityByZCoord(u8 a, struct Sprite *sprite, u8 b) +void SetObjectSubpriorityByZCoord(u8 elevation, struct Sprite *sprite, u8 subpriority) { s32 tmp = sprite->centerToCornerVecY; u32 tmpa = *(u16 *)&sprite->pos1.y; u32 tmpb = *(u16 *)&gSpriteCoordOffsetY; s32 tmp2 = (tmpa - tmp) + tmpb; - u16 tmp3 = (0x10 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2; - sprite->subpriority = tmp3 + sUnknown_08376050[a] + b; + u16 tmp3 = (16 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2; + sprite->subpriority = tmp3 + sElevationToSubpriority[elevation] + subpriority; } static void ObjectEventUpdateSubpriority(struct ObjectEvent *objEvent, struct Sprite *sprite) @@ -8412,29 +8368,37 @@ bool8 obj_npc_ministep(struct Sprite *sprite) return TRUE; } -void sub_80976DC(struct Sprite *sprite, u8 direction) +#define sDirection data[3] +#define sTimer data[4] +#define sNumSteps data[5] + +static void SetWalkSlowSpriteData(struct Sprite *sprite, u8 direction) { - sprite->data[3] = direction; - sprite->data[4] = 0; - sprite->data[5] = 0; + sprite->sDirection = direction; + sprite->sTimer = 0; + sprite->sNumSteps = 0; } -bool8 sub_80976EC(struct Sprite *sprite) +static bool8 UpdateWalkSlowAnim(struct Sprite *sprite) { - if (!(sprite->data[4] & 1)) + if (!(sprite->sTimer & 1)) { - Step1(sprite, sprite->data[3]); - sprite->data[5]++; + Step1(sprite, sprite->sDirection); + sprite->sNumSteps++; } - sprite->data[4]++; + sprite->sTimer++; - if (sprite->data[5] > 15) + if (sprite->sNumSteps > 15) return TRUE; else return FALSE; } +#undef sDirection +#undef sTimer +#undef sNumSteps + static const s8 sFigure8XOffsets[FIGURE_8_LENGTH] = { 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, @@ -8512,87 +8476,100 @@ static bool8 AnimateSpriteInFigure8(struct Sprite *sprite) return finished; } -static const s8 gUnknown_0850E802[] = { - -4, -6, -8, -10, -11, -12, -12, -12, -11, -10, -9, -8, -6, -4, 0, 0 +static const s8 sJumpY_High[] = { + -4, -6, -8, -10, -11, -12, -12, -12, + -11, -10, -9, -8, -6, -4, 0, 0 }; -static const s8 gUnknown_0850E812[] = { - 0, -2, -3, -4, -5, -6, -6, -6, -5, -5, -4, -3, -2, 0, 0, 0 +static const s8 sJumpY_Low[] = { + 0, -2, -3, -4, -5, -6, -6, -6, + -5, -5, -4, -3, -2, 0, 0, 0 }; -static const s8 gUnknown_0850E822[] = { - -2, -4, -6, -8, -9, -10, -10, -10, -9, -8, -6, -5, -3, -2, 0, 0 +static const s8 sJumpY_Normal[] = { + -2, -4, -6, -8, -9, -10, -10, -10, + -9, -8, -6, -5, -3, -2, 0, 0 }; -static const s8 *const gUnknown_0850E834[] = { - gUnknown_0850E802, - gUnknown_0850E812, - gUnknown_0850E822 +static const s8 *const sJumpYTable[] = { + [JUMP_TYPE_HIGH] = sJumpY_High, + [JUMP_TYPE_LOW] = sJumpY_Low, + [JUMP_TYPE_NORMAL] = sJumpY_Normal }; -s16 sub_8097820(s16 a1, u8 a2) +static s16 GetJumpY(s16 i, u8 type) { - return gUnknown_0850E834[a2][a1]; + return sJumpYTable[type][i]; } -void sub_809783C(struct Sprite *sprite, u8 a2, u8 a3, u8 a4) +#define sDirection data[3] +#define sSpeed data[4] +#define sJumpType data[5] +#define sTimer data[6] + +static void SetJumpSpriteData(struct Sprite *sprite, u8 direction, u8 speed, u8 type) { - sprite->data[3] = a2; - sprite->data[4] = a3; - sprite->data[5] = a4; - sprite->data[6] = 0; + sprite->sDirection = direction; + sprite->sSpeed = speed; + sprite->sJumpType = type; + sprite->sTimer = 0; } -u8 sub_809785C(struct Sprite *sprite) +static u8 DoJumpSpriteMovement(struct Sprite *sprite) { - s16 v5[] = {16, 16, 32}; - u8 v6[] = {0, 0, 1}; - u8 v2 = 0; + s16 speedToTime[] = {16, 16, 32}; + u8 speedToShift[] = {0, 0, 1}; + u8 result = 0; - if (sprite->data[4]) - Step1(sprite, sprite->data[3]); + if (sprite->sSpeed) + Step1(sprite, sprite->sDirection); - sprite->pos2.y = sub_8097820(sprite->data[6] >> v6[sprite->data[4]], sprite->data[5]); + sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); - sprite->data[6]++; + sprite->sTimer++; - if (sprite->data[6] == (v5[sprite->data[4]] >> 1)) - v2 = 1; + if (sprite->sTimer == speedToTime[sprite->sSpeed] >> 1) + result = JUMP_HALFWAY; - if (sprite->data[6] >= v5[sprite->data[4]]) + if (sprite->sTimer >= speedToTime[sprite->sSpeed]) { sprite->pos2.y = 0; - v2 = -1; + result = JUMP_FINISHED; } - return v2; + return result; } -u8 sub_80978E4(struct Sprite *sprite) +static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) { - s16 v5[] = {32, 32, 64}; - u8 v6[] = {1, 1, 2}; - u8 v2 = 0; + s16 speedToTime[] = {32, 32, 64}; + u8 speedToShift[] = {1, 1, 2}; + u8 result = 0; - if (sprite->data[4] && !(sprite->data[6] & 1)) - Step1(sprite, sprite->data[3]); + if (sprite->sSpeed && !(sprite->sTimer & 1)) + Step1(sprite, sprite->sDirection); - sprite->pos2.y = sub_8097820(sprite->data[6] >> v6[sprite->data[4]], sprite->data[5]); + sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); - sprite->data[6]++; + sprite->sTimer++; - if (sprite->data[6] == (v5[sprite->data[4]] >> 1)) - v2 = 1; + if (sprite->sTimer == speedToTime[sprite->sSpeed] >> 1) + result = JUMP_HALFWAY; - if (sprite->data[6] >= v5[sprite->data[4]]) + if (sprite->sTimer >= speedToTime[sprite->sSpeed]) { sprite->pos2.y = 0; - v2 = -1; + result = JUMP_FINISHED; } - return v2; + return result; } +#undef sDirection +#undef sSpeed +#undef sJumpType +#undef sTimer + static void SetMovementDelay(struct Sprite *sprite, s16 timer) { sprite->data[3] = timer; @@ -8600,9 +8577,7 @@ static void SetMovementDelay(struct Sprite *sprite, s16 timer) static bool8 WaitForMovementDelay(struct Sprite *sprite) { - sprite->data[3]--; - - if (sprite->data[3] == 0) + if (--sprite->data[3] == 0) return TRUE; else return FALSE; @@ -8650,15 +8625,15 @@ void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible) sprite->invisible = TRUE; } -#define tInvisible data[2] -#define tAnimNum data[3] -#define tAnimState data[4] +#define sInvisible data[2] +#define sAnimNum data[3] +#define sAnimState data[4] static void UpdateObjectEventSprite(struct Sprite *sprite) { UpdateObjectEventSpritePosition(sprite); SetObjectSubpriorityByZCoord(sprite->data[1], sprite, 1); - UpdateObjectEventSpriteInvisibility(sprite, sprite->tInvisible); + UpdateObjectEventSpriteInvisibility(sprite, sprite->sInvisible); } // Unused @@ -8681,7 +8656,7 @@ static int GetObjectEventSpriteId(u8 objectEventId) // this should return a u8, for (i = 0; i < MAX_SPRITES; i++) { struct Sprite *sprite = &gSprites[i]; - if (sprite->inUse && sprite->callback == UpdateObjectEventSprite && (u8)sprite->data[0] == objectEventId) + if (sprite->inUse && sprite->callback == UpdateObjectEventSprite && (u8)sprite->sObjEventId == objectEventId) return i; } return MAX_SPRITES; @@ -8733,9 +8708,9 @@ void SetObjectEventSpriteInvisibility(u8 objectEventId, bool32 invisible) return; if (invisible) - gSprites[spriteId].tInvisible = TRUE; + gSprites[spriteId].sInvisible = TRUE; else - gSprites[spriteId].tInvisible = FALSE; + gSprites[spriteId].sInvisible = FALSE; } bool32 IsObjectEventSpriteInvisible(u8 objectEventId) @@ -8745,7 +8720,7 @@ bool32 IsObjectEventSpriteInvisible(u8 objectEventId) if (spriteId == MAX_SPRITES) return FALSE; - return (gSprites[spriteId].tInvisible == TRUE); + return (gSprites[spriteId].sInvisible == TRUE); } void SetObjectEventSpriteAnim(u8 objectEventId, u8 animNum) @@ -8754,50 +8729,50 @@ void SetObjectEventSpriteAnim(u8 objectEventId, u8 animNum) if (spriteId != MAX_SPRITES) { - gSprites[spriteId].tAnimNum = animNum; - gSprites[spriteId].tAnimState = 0; + gSprites[spriteId].sAnimNum = animNum; + gSprites[spriteId].sAnimState = 0; } } static void MoveUnionRoomObjectUp(struct Sprite *sprite) { - switch(sprite->tAnimState) + switch(sprite->sAnimState) { case 0: sprite->pos2.y = 0; - sprite->tAnimState++; + sprite->sAnimState++; case 1: sprite->pos2.y -= 8; - if (sprite->pos2.y == -160) + if (sprite->pos2.y == -DISPLAY_HEIGHT) { sprite->pos2.y = 0; - sprite->tInvisible = TRUE; - sprite->tAnimNum = 0; - sprite->tAnimState = 0; + sprite->sInvisible = TRUE; + sprite->sAnimNum = 0; + sprite->sAnimState = 0; } } } static void MoveUnionRoomObjectDown(struct Sprite *sprite) { - switch(sprite->tAnimState) + switch(sprite->sAnimState) { case 0: - sprite->pos2.y = -160; - sprite->tAnimState++; + sprite->pos2.y = -DISPLAY_HEIGHT; + sprite->sAnimState++; case 1: sprite->pos2.y += 8; if(sprite->pos2.y == 0) { - sprite->tAnimNum = 0; - sprite->tAnimState = 0; + sprite->sAnimNum = 0; + sprite->sAnimState = 0; } } } static void UpdateObjectEventSpritePosition(struct Sprite *sprite) { - switch(sprite->tAnimNum) + switch(sprite->sAnimNum) { case UNION_ROOM_SPAWN_IN: MoveUnionRoomObjectDown(sprite); @@ -8808,7 +8783,7 @@ static void UpdateObjectEventSpritePosition(struct Sprite *sprite) case 0: break; default: - sprite->tAnimNum = 0; + sprite->sAnimNum = 0; break; } } @@ -8820,7 +8795,7 @@ bool32 IsObjectEventSpriteAnimating(u8 objectEventId) if (spriteId == MAX_SPRITES) return FALSE; - if (gSprites[spriteId].tAnimNum != 0) + if (gSprites[spriteId].sAnimNum != 0) return TRUE; return FALSE; @@ -8832,11 +8807,11 @@ u32 StartFieldEffectForObjectEvent(u8 fieldEffectId, struct ObjectEvent *objectE return FieldEffectStart(fieldEffectId); } -void DoShadowFieldEffect(struct ObjectEvent *objectEvent) +static void DoShadowFieldEffect(struct ObjectEvent *objectEvent) { if (!objectEvent->hasShadow) { - objectEvent->hasShadow = 1; + objectEvent->hasShadow = TRUE; StartFieldEffectForObjectEvent(FLDEFF_SHADOW, objectEvent); } } @@ -8876,11 +8851,11 @@ u8 (*const gMovementActionFuncs_FlyDown[])(struct ObjectEvent *, struct Sprite * u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { bool32 ableToStore = FALSE; - if (gLockedAnimObjectEvents == NULL) + if (sLockedAnimObjectEvents == NULL) { - gLockedAnimObjectEvents = AllocZeroed(sizeof(struct LockedAnimObjectEvents)); - gLockedAnimObjectEvents->objectEventIds[0] = objectEvent->localId; - gLockedAnimObjectEvents->count = 1; + sLockedAnimObjectEvents = AllocZeroed(sizeof(struct LockedAnimObjectEvents)); + sLockedAnimObjectEvents->objectEventIds[0] = objectEvent->localId; + sLockedAnimObjectEvents->count = 1; ableToStore = TRUE; } else @@ -8890,10 +8865,10 @@ u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct bool32 found; for (firstFreeSlot = 16, found = FALSE, i = 0; i < 16; i++) { - if (firstFreeSlot == 16 && gLockedAnimObjectEvents->objectEventIds[i] == 0) + if (firstFreeSlot == 16 && sLockedAnimObjectEvents->objectEventIds[i] == 0) firstFreeSlot = i; - if (gLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) + if (sLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) { found = TRUE; break; @@ -8902,8 +8877,8 @@ u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct if (!found && firstFreeSlot != 16) { - gLockedAnimObjectEvents->objectEventIds[firstFreeSlot] = objectEvent->localId; - gLockedAnimObjectEvents->count++; + sLockedAnimObjectEvents->objectEventIds[firstFreeSlot] = objectEvent->localId; + sLockedAnimObjectEvents->count++; ableToStore = TRUE; } } @@ -8914,7 +8889,7 @@ u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct objectEvent->facingDirectionLocked = TRUE; } - sprite->data[2] = 1; + sprite->sActionFuncId = 1; return TRUE; } @@ -8923,19 +8898,19 @@ u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *objectEvent, struc bool32 ableToStore; u8 index; - sprite->data[2] = 1; - if (gLockedAnimObjectEvents != NULL) + sprite->sActionFuncId = 1; + if (sLockedAnimObjectEvents != NULL) { ableToStore = FALSE; index = FindLockedObjectEventIndex(objectEvent); if (index != 16) { - gLockedAnimObjectEvents->objectEventIds[index] = 0; - gLockedAnimObjectEvents->count--; + sLockedAnimObjectEvents->objectEventIds[index] = 0; + sLockedAnimObjectEvents->count--; ableToStore = TRUE; } - if (gLockedAnimObjectEvents->count == 0) - FREE_AND_SET_NULL(gLockedAnimObjectEvents); + if (sLockedAnimObjectEvents->count == 0) + FREE_AND_SET_NULL(sLockedAnimObjectEvents); if (ableToStore == TRUE) { objectEvent->inanimate = GetObjectEventGraphicsInfo(objectEvent->graphicsId)->inanimate; @@ -8953,13 +8928,13 @@ u8 FindLockedObjectEventIndex(struct ObjectEvent *objectEvent) for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { - if (gLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) + if (sLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) return i; } return OBJECT_EVENTS_COUNT; } -void CreateLevitateMovementTask(struct ObjectEvent *objectEvent) +static void CreateLevitateMovementTask(struct ObjectEvent *objectEvent) { u8 taskId = CreateTask(ApplyLevitateMovement, 0xFF); struct Task *task = &gTasks[taskId]; @@ -8978,16 +8953,16 @@ static void ApplyLevitateMovement(u8 taskId) LoadWordFromTwoHalfwords(&task->data[0], (u32 *)&objectEvent); // load the map object pointer. sprite = &gSprites[objectEvent->spriteId]; - if(!(task->data[2] & 0x3)) + if(!(task->data[2] & 3)) sprite->pos2.y += task->data[3]; - if(!(task->data[2] & 0xF)) + if(!(task->data[2] & 15)) task->data[3] = -task->data[3]; task->data[2]++; } -void DestroyExtraMovementTask(u8 taskId) +static void DestroyLevitateMovementTask(u8 taskId) { struct ObjectEvent *objectEvent; struct Task *task = &gTasks[taskId]; @@ -9012,7 +8987,7 @@ void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2) u8 MovementAction_FlyUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { sprite->pos2.y = 0; - sprite->data[2]++; + sprite->sActionFuncId++; return FALSE; } @@ -9020,15 +8995,15 @@ u8 MovementAction_FlyUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sp { sprite->pos2.y -= 8; - if(sprite->pos2.y == -160) - sprite->data[2]++; + if(sprite->pos2.y == -DISPLAY_HEIGHT) + sprite->sActionFuncId++; return FALSE; } u8 MovementAction_FlyDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y = -160; - sprite->data[2]++; + sprite->pos2.y = -DISPLAY_HEIGHT; + sprite->sActionFuncId++; return FALSE; } @@ -9037,7 +9012,7 @@ u8 MovementAction_FlyDown_Step1(struct ObjectEvent *objectEvent, struct Sprite * sprite->pos2.y += 8; if(!sprite->pos2.y) - sprite->data[2]++; + sprite->sActionFuncId++; return FALSE; } diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 49116b5d3eb2..30eeaadfa311 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -1678,18 +1678,27 @@ static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 of } } -// Unused data. Feel free to remove. -static const u8 sUnusedData[] = -{ - 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, - 1, 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 2, - 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, - 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, - 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, - 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -1, 0, 0, -1, 0, 0, -1, 0, -1, -1, 0, -1, - -1, 0, -1, -1, -1, -1, -1, -1, -1, -2, 0, 0 +// Unused, duplicates of data in event_object_movement.c +static const s8 sFigure8XOffsets[FIGURE_8_LENGTH] = { + 1, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 1, 2, 2, 1, 2, + 2, 1, 2, 2, 1, 2, 1, 1, + 2, 1, 1, 2, 1, 1, 2, 1, + 1, 2, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 0, 1, 1, 1, 0, 1, 1, 0, + 1, 0, 1, 0, 1, 0, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, +}; + +static const s8 sFigure8YOffsets[FIGURE_8_LENGTH] = { + 0, 0, 1, 0, 0, 1, 0, 0, + 1, 0, 1, 1, 0, 1, 1, 0, + 1, 1, 0, 1, 1, 0, 1, 1, + 0, 0, 1, 0, 0, 1, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -1, 0, 0, -1, 0, 0, + -1, 0, -1, -1, 0, -1, -1, 0, + -1, -1, -1, -1, -1, -1, -1, -2, }; diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 94325bf341b3..9b1f4ceb6cf9 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -722,9 +722,9 @@ static bool8 CanStopSurfing(s16 x, s16 y, u8 direction) } } -static bool8 ShouldJumpLedge(s16 x, s16 y, u8 z) +static bool8 ShouldJumpLedge(s16 x, s16 y, u8 direction) { - if (GetLedgeJumpDirection(x, y, z) != 0) + if (GetLedgeJumpDirection(x, y, direction) != DIR_NONE) return TRUE; else return FALSE; @@ -1192,7 +1192,7 @@ u8 GetPlayerAvatarFlags(void) return gPlayerAvatar.flags; } -u8 GetPlayerAvatarObjectId(void) +u8 GetPlayerAvatarSpriteId(void) { return gPlayerAvatar.spriteId; } diff --git a/src/field_specials.c b/src/field_specials.c index 30503ed8d4d3..df16583ed100 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1301,12 +1301,12 @@ void SpawnCameraObject(void) { u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1, MOVEMENT_TYPE_FACE_DOWN, OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7, 3); gObjectEvents[obj].invisible = TRUE; - CameraObjectSetFollowedObjectId(gObjectEvents[obj].spriteId); + CameraObjectSetFollowedSpriteId(gObjectEvents[obj].spriteId); } void RemoveCameraObject(void) { - CameraObjectSetFollowedObjectId(GetPlayerAvatarObjectId()); + CameraObjectSetFollowedSpriteId(GetPlayerAvatarSpriteId()); RemoveObjectEventByLocalIdAndMap(OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); } diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 446633a53810..044e25a8fbf8 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -326,7 +326,7 @@ bool8 FldEff_CutGrass(void) y = yAdd + gPlayerFacingPosition.y; SetCutGrassMetatile(x, y); - sub_808E75C(x, y); + AllowObjectAtPosTriggerGroundEffects(x, y); } } diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index b320f3eb008b..914ba2880723 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -1298,7 +1298,7 @@ u8 CreateRecordMixingLights(void) else { struct Sprite *sprite = &gSprites[spriteId]; - sub_8092FF0(16, 13, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(16, 13, &sprite->pos1.x, &sprite->pos1.y); sprite->coordOffsetEnabled = TRUE; sprite->pos1.x += 16; sprite->pos1.y += 2; diff --git a/src/fldeff_sweetscent.c b/src/fldeff_sweetscent.c index 55463440c8b4..e34d195045b5 100644 --- a/src/fldeff_sweetscent.c +++ b/src/fldeff_sweetscent.c @@ -54,7 +54,7 @@ static void StartSweetScentFieldEffect(void) PlaySE(SE_M_SWEET_SCENT); CpuFastSet(gPlttBufferUnfaded, gPaletteDecompressionBuffer, 0x100); CpuFastSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x100); - BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 0, 8, RGB_RED); + BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarSpriteId()].oam.paletteNum + 16)), 4, 0, 8, RGB_RED); taskId = CreateTask(TrySweetScentEncounter, 0); gTasks[taskId].data[0] = 0; FieldEffectActiveListRemove(FLDEFF_SWEET_SCENT); @@ -76,7 +76,7 @@ static void TrySweetScentEncounter(u8 taskId) else { gTasks[taskId].func = FailSweetScentEncounter; - BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 8, 0, RGB_RED); + BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarSpriteId()].oam.paletteNum + 16)), 4, 8, 0, RGB_RED); TryStartMirageTowerPulseBlendEffect(); } } diff --git a/src/overworld.c b/src/overworld.c index 3dda9b6657a4..f2ed5952c299 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -111,7 +111,7 @@ static void SpawnLinkPlayers(void); static void SetCameraToTrackGuestPlayer(void); static void ResumeMap(bool32 arg0); static void SetCameraToTrackPlayer(void); -static void sub_8086A68(void); +static void InitObjectEventsReturnToField(void); static void InitViewGraphics(void); static void SetCameraToTrackGuestPlayer_2(void); static void CreateLinkPlayerSprites(void); @@ -1946,7 +1946,7 @@ static bool32 ReturnToFieldLocal(u8 *state) ResetMirageTowerAndSaveBlockPtrs(); sub_80867D8(); ResumeMap(FALSE); - sub_8086A68(); + InitObjectEventsReturnToField(); SetCameraToTrackPlayer(); (*state)++; break; @@ -1982,7 +1982,7 @@ static bool32 ReturnToFieldLink(u8 *state) break; case 2: CreateLinkPlayerSprites(); - sub_8086A68(); + InitObjectEventsReturnToField(); SetCameraToTrackGuestPlayer_2(); (*state)++; break; @@ -2157,9 +2157,9 @@ static void InitObjectEventsLocal(void) TryRunOnWarpIntoMapScript(); } -static void sub_8086A68(void) +static void InitObjectEventsReturnToField(void) { - sub_808E16C(0, 0); + SpawnObjectEventsOnReturnToField(0, 0); RotatingGate_InitPuzzleAndGraphics(); RunOnReturnToFieldMapScript(); } diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 162eb3e6dc0f..22a0b0bdfac4 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -754,7 +754,7 @@ static u8 RotatingGate_CreateGate(u8 gateId, s16 deltaX, s16 deltaY) sprite->data[0] = gateId; sprite->coordOffsetEnabled = 1; - sub_8092FF0(x + deltaX, y + deltaY, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(x + deltaX, y + deltaY, &sprite->pos1.x, &sprite->pos1.y); RotatingGate_HideGatesOutsideViewport(sprite); StartSpriteAffineAnim(sprite, RotatingGate_GetGateOrientation(gateId)); From 8bad478b4999e762eb26cef0a9b6b07891236370 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 14:51:39 -0400 Subject: [PATCH 096/762] Document disguise field effects --- include/field_effect_helpers.h | 4 +- src/event_object_movement.c | 9 ++-- src/field_effect_helpers.c | 77 ++++++++++++++++++---------------- 3 files changed, 48 insertions(+), 42 deletions(-) diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index 9795d96e8687..528492d81407 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -17,8 +17,8 @@ u8 StartUnderwaterSurfBlobBobbing(u8 oldSpriteId); void SetSurfBlob_BobState(u8 spriteId, u8 state); void SetSurfBlob_DontSyncAnim(u8 spriteId, bool8 dontSync); void SetSurfBlob_PlayerOffset(u8 spriteId, bool8 hasOffset, s16 offset); -bool8 sub_8155DA0(struct ObjectEvent *); -void sub_8155D78(struct ObjectEvent *); +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*); diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 75e4a5cd8dda..4f334e827be5 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -4396,10 +4396,9 @@ movement_type_def(MovementType_CopyPlayerInGrass, gMovementTypeFuncs_CopyPlayerI bool8 MovementType_CopyPlayerInGrass_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (gObjectEvents[gPlayerAvatar.objectEventId].movementActionId == 0xFF || gPlayerAvatar.tileTransitionState == T_TILE_CENTER) - { + if (gObjectEvents[gPlayerAvatar.objectEventId].movementActionId == MOVEMENT_ACTION_NONE || gPlayerAvatar.tileTransitionState == T_TILE_CENTER) return FALSE; - } + return gCopyPlayerMovementFuncs[PlayerGetCopyableMovement()](objectEvent, sprite, GetPlayerMovementDirection(), MetatileBehavior_IsPokeGrass); } @@ -6577,14 +6576,14 @@ bool8 MovementAction_RevealTrainer_Step0(struct ObjectEvent *objectEvent, struct sprite->sActionFuncId = 2; return TRUE; } - sub_8155D78(objectEvent); + StartRevealDisguise(objectEvent); sprite->sActionFuncId = 1; return MovementAction_RevealTrainer_Step1(objectEvent, sprite); } bool8 MovementAction_RevealTrainer_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sub_8155DA0(objectEvent)) + if (UpdateRevealDisguise(objectEvent)) { sprite->sActionFuncId = 2; return TRUE; diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 30eeaadfa311..67a151aaa729 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -32,6 +32,9 @@ static void UpdateBobbingEffect(struct ObjectEvent *, struct Sprite *, struct Sp static void SpriteCB_UnderwaterSurfBlob(struct Sprite *); static u32 ShowDisguiseFieldEffect(u8, u8, u8); +// Used by several field effects to determine which of a group it is +#define sFldEff data[1] + #define sReflectionObjEventId data[0] #define sReflectionObjEventLocalId data[1] #define sReflectionVerticalOffset data[2] @@ -360,9 +363,6 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite) } } -// Sprite data for FLDEFF_JUMP_TALL_GRASS and FLDEFF_JUMP_LONG_GRASS -#define sFldEff data[1] - u32 FldEff_JumpTallGrass(void) { u8 spriteId; @@ -1301,6 +1301,13 @@ u32 FldEff_BerryTreeGrowthSparkle(void) return 0; } +// Sprite data for FLDEFF_TREE_DISGUISE / FLDEFF_MOUNTAIN_DISGUISE / FLDEFF_SAND_DISGUISE +#define sState data[0] +#define sLocalId data[2] +#define sMapNum data[3] +#define sMapGroup data[4] +#define sReadyToEnd data[7] + u32 ShowTreeDisguiseFieldEffect(void) { return ShowDisguiseFieldEffect(FLDEFF_TREE_DISGUISE, FLDEFFOBJ_TREE_DISGUISE, 4); @@ -1332,10 +1339,10 @@ static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 fldEffObj, u8 paletteNum) sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled ++; sprite->oam.paletteNum = paletteNum; - sprite->data[1] = fldEff; - sprite->data[2] = gFieldEffectArguments[0]; - sprite->data[3] = gFieldEffectArguments[1]; - sprite->data[4] = gFieldEffectArguments[2]; + sprite->sFldEff = fldEff; + sprite->sLocalId = gFieldEffectArguments[0]; + sprite->sMapNum = gFieldEffectArguments[1]; + sprite->sMapGroup = gFieldEffectArguments[2]; } return spriteId; } @@ -1346,10 +1353,8 @@ void UpdateDisguiseFieldEffect(struct Sprite *sprite) const struct ObjectEventGraphicsInfo *graphicsInfo; struct Sprite *linkedSprite; - if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[2], sprite->data[3], sprite->data[4], &objectEventId)) - { - FieldEffectStop(sprite, sprite->data[1]); - } + if (TryGetObjectEventIdByLocalIdAndMap(sprite->sLocalId, sprite->sMapNum, sprite->sMapGroup, &objectEventId)) + FieldEffectStop(sprite, sprite->sFldEff); graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; @@ -1357,51 +1362,56 @@ void UpdateDisguiseFieldEffect(struct Sprite *sprite) sprite->pos1.x = linkedSprite->pos1.x; sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 16; sprite->subpriority = linkedSprite->subpriority - 1; - if (sprite->data[0] == 1) + + if (sprite->sState == 1) { - sprite->data[0] ++; + sprite->sState++; StartSpriteAnim(sprite, 1); } - if (sprite->data[0] == 2 && sprite->animEnded) - { - sprite->data[7] = 1; - } - if (sprite->data[0] == 3) - { - FieldEffectStop(sprite, sprite->data[1]); - } + + if (sprite->sState == 2 && sprite->animEnded) + sprite->sReadyToEnd = TRUE; + + if (sprite->sState == 3) + FieldEffectStop(sprite, sprite->sFldEff); } -void sub_8155D78(struct ObjectEvent *objectEvent) +void StartRevealDisguise(struct ObjectEvent *objectEvent) { if (objectEvent->directionSequenceIndex == 1) - { - gSprites[objectEvent->fieldEffectSpriteId].data[0]++; - } + gSprites[objectEvent->fieldEffectSpriteId].sState++; } -bool8 sub_8155DA0(struct ObjectEvent *objectEvent) +bool8 UpdateRevealDisguise(struct ObjectEvent *objectEvent) { struct Sprite *sprite; if (objectEvent->directionSequenceIndex == 2) - { return TRUE; - } + if (objectEvent->directionSequenceIndex == 0) - { return TRUE; - } + sprite = &gSprites[objectEvent->fieldEffectSpriteId]; - if (sprite->data[7]) + if (sprite->sReadyToEnd) { objectEvent->directionSequenceIndex = 2; - sprite->data[0]++; + sprite->sState++; return TRUE; } return FALSE; } +#undef sState +#undef sLocalId +#undef sMapNum +#undef sMapGroup +#undef sReadyToEnd + +// Sprite data for FLDEFF_SPARKLE +#define sFinished data[0] +#define sEndTimer data[1] + u32 FldEff_Sparkle(void) { u8 spriteId; @@ -1418,9 +1428,6 @@ u32 FldEff_Sparkle(void) return 0; } -#define sFinished data[0] -#define sEndTimer data[1] - void UpdateSparkleFieldEffect(struct Sprite *sprite) { if (!sprite->sFinished) From 86a9d94ce1eb7930cb9a59ad8f968388a627c58a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 16:05:43 -0400 Subject: [PATCH 097/762] Document fieldmap --- include/constants/metatile_behaviors.h | 1 + include/fieldmap.h | 7 +- include/global.fieldmap.h | 5 +- src/battle_pike.c | 2 +- src/battle_pyramid.c | 2 +- src/fieldmap.c | 118 ++++++++++++------------- src/save.c | 2 +- src/start_menu.c | 2 +- 8 files changed, 66 insertions(+), 73 deletions(-) diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 94cb0ffcaa18..5120bd9dcc1e 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -241,5 +241,6 @@ #define MB_UNUSED_ED 0xED #define MB_UNUSED_EE 0xEE #define MB_UNUSED_EF 0xEF +#define MB_INVALID 0xFF #endif // GUARD_METATILE_BEHAVIORS diff --git a/include/fieldmap.h b/include/fieldmap.h index 438fb4787c02..5bcbe20ea676 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -20,16 +20,13 @@ void MapGridSetMetatileEntryAt(int, int, u16); void GetCameraCoords(u16*, u16*); bool8 MapGridIsImpassableAt(int, int); int GetMapBorderIdAt(int x, int y); -int CanCameraMoveInDirection(int direction); +bool32 CanCameraMoveInDirection(int direction); u16 GetBehaviorByMetatileId(u16 metatileId); void GetCameraFocusCoords(u16 *x, u16 *y); u8 MapGridGetMetatileLayerTypeAt(int x, int y); u8 MapGridGetZCoordAt(int x, int y); bool8 CameraMove(int deltaX, int deltaY); -struct MapConnection *sub_8088950(u8 direction, int x, int y); -bool8 sub_80889A8(u8 direction, int x, int y, struct MapConnection *connection); -bool8 sub_8088A0C(int x, int src_width, int dest_width, int offset); -void save_serialize_map(void); +void SaveMapView(void); void SetCameraFocusCoords(u16 x, u16 y); void InitMap(void); void InitMapFromSavedGame(void); diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index c4d7be35da3a..a3d99ee21280 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -1,6 +1,7 @@ #ifndef GUARD_GLOBAL_FIELDMAP_H #define GUARD_GLOBAL_FIELDMAP_H +#define METATILE_BEHAVIOR_MASK 0x00FF #define METATILE_COLLISION_MASK 0x0C00 #define METATILE_ID_MASK 0x03FF #define METATILE_ID_UNDEFINED 0x03FF @@ -12,7 +13,9 @@ enum { - CONNECTION_SOUTH = 1, + CONNECTION_INVALID = -1, + CONNECTION_NONE, + CONNECTION_SOUTH, CONNECTION_NORTH, CONNECTION_WEST, CONNECTION_EAST, diff --git a/src/battle_pike.c b/src/battle_pike.c index ed89f5ed9644..d889d7cddfcf 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -711,7 +711,7 @@ static void SavePikeChallenge(void) gSaveBlock2Ptr->frontier.challengeStatus = gSpecialVar_0x8005; VarSet(VAR_TEMP_0, 0); gSaveBlock2Ptr->frontier.challengePaused = TRUE; - save_serialize_map(); + SaveMapView(); TrySavingData(SAVE_LINK); } diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index ac6d95338aa9..a41a80bbb3f0 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -933,7 +933,7 @@ static void SavePyramidChallenge(void) gSaveBlock2Ptr->frontier.challengeStatus = gSpecialVar_0x8005; VarSet(VAR_TEMP_0, 0); gSaveBlock2Ptr->frontier.challengePaused = TRUE; - save_serialize_map(); + SaveMapView(); TrySavingData(SAVE_LINK); } diff --git a/src/fieldmap.c b/src/fieldmap.c index 2961d2f49757..82c085f9ff1f 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -15,6 +15,7 @@ #include "trainer_hill.h" #include "tv.h" #include "constants/rgb.h" +#include "constants/metatile_behaviors.h" struct ConnectionFlags { @@ -43,6 +44,9 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader); static void LoadSavedMapView(void); static bool8 SkipCopyingMetatileFromSavedMap(u16* mapMetatilePtr, u16 mapWidth, u8 yMode); +static struct MapConnection *GetIncomingConnection(u8 direction, int x, int y); +static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, struct MapConnection *connection); +static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset); struct MapHeader const *const GetMapHeaderFromConnection(struct MapConnection *connection) { @@ -149,7 +153,7 @@ static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader) } } -static void sub_8087F54(int x, int y, struct MapHeader const *connectedMapHeader, int x2, int y2, int width, int height) +static void FillConnection(int x, int y, struct MapHeader const *connectedMapHeader, int x2, int y2, int width, int height) { int i; u16 *src; @@ -207,7 +211,7 @@ static void FillSouthConnection(struct MapHeader const *mapHeader, struct MapHea } } - sub_8087F54( + FillConnection( x, y, connectedMapHeader, x2, /*y2*/ 0, @@ -255,7 +259,7 @@ static void FillNorthConnection(struct MapHeader const *mapHeader, struct MapHea } } - sub_8087F54( + FillConnection( x, /*y*/ 0, connectedMapHeader, x2, y2, @@ -302,7 +306,7 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead } } - sub_8087F54( + FillConnection( /*x*/ 0, y, connectedMapHeader, x2, y2, @@ -347,7 +351,7 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead } } - sub_8087F54( + FillConnection( x, y, connectedMapHeader, /*x2*/ 0, y2, @@ -458,7 +462,7 @@ u32 MapGridGetMetatileBehaviorAt(int x, int y) { u16 metatile; metatile = MapGridGetMetatileIdAt(x, y); - return GetBehaviorByMetatileId(metatile) & 0xff; + return GetBehaviorByMetatileId(metatile) & METATILE_BEHAVIOR_MASK; } u8 MapGridGetMetatileLayerTypeAt(int x, int y) @@ -505,11 +509,11 @@ u16 GetBehaviorByMetatileId(u16 metatile) } else { - return 0xFF; + return MB_INVALID; } } -void save_serialize_map(void) +void SaveMapView(void) { int i, j; int x, y; @@ -595,7 +599,7 @@ static void LoadSavedMapView(void) } } -void sub_80885C4(u8 a1) +static void MoveMapViewToBackup(u8 direction) { int width; u16 *mapView; @@ -614,7 +618,7 @@ void sub_80885C4(u8 a1) y0 = gSaveBlock1Ptr->pos.y; x2 = 15; y2 = 14; - switch (a1) + switch (direction) { case CONNECTION_NORTH: y0 += 1; @@ -680,14 +684,14 @@ int GetMapBorderIdAt(int x, int y) } goto success; fail: - return -1; + return CONNECTION_INVALID; success: if (x >= (gBackupMapLayout.width - 8)) { if (!gMapConnectionFlags.east) { - return -1; + return CONNECTION_INVALID; } return CONNECTION_EAST; } @@ -695,7 +699,7 @@ int GetMapBorderIdAt(int x, int y) { if (!gMapConnectionFlags.west) { - return -1; + return CONNECTION_INVALID; } return CONNECTION_WEST; } @@ -703,7 +707,7 @@ int GetMapBorderIdAt(int x, int y) { if (!gMapConnectionFlags.south) { - return -1; + return CONNECTION_INVALID; } return CONNECTION_SOUTH; } @@ -711,13 +715,13 @@ int GetMapBorderIdAt(int x, int y) { if (!gMapConnectionFlags.north) { - return -1; + return CONNECTION_INVALID; } return CONNECTION_NORTH; } else { - return 0; + return CONNECTION_NONE; } } @@ -726,19 +730,19 @@ int GetPostCameraMoveMapBorderId(int x, int y) return GetMapBorderIdAt(gSaveBlock1Ptr->pos.x + 7 + x, gSaveBlock1Ptr->pos.y + 7 + y); } -int CanCameraMoveInDirection(int direction) +bool32 CanCameraMoveInDirection(int direction) { int x, y; x = gSaveBlock1Ptr->pos.x + 7 + gDirectionToVectors[direction].x; y = gSaveBlock1Ptr->pos.y + 7 + gDirectionToVectors[direction].y; if (GetMapBorderIdAt(x, y) == -1) { - return 0; + return FALSE; } - return 1; + return TRUE; } -void sub_80887F8(struct MapConnection *connection, int direction, int x, int y) +static void SetPositionFromConnection(struct MapConnection *connection, int direction, int x, int y) { struct MapHeader const *mapHeader; mapHeader = GetMapHeaderFromConnection(connection); @@ -765,69 +769,57 @@ void sub_80887F8(struct MapConnection *connection, int direction, int x, int y) bool8 CameraMove(int x, int y) { - unsigned int direction; + int direction; struct MapConnection *connection; int old_x, old_y; gCamera.active = FALSE; direction = GetPostCameraMoveMapBorderId(x, y); - if (direction + 1 <= 1) + if (direction == CONNECTION_NONE || direction == CONNECTION_INVALID) { gSaveBlock1Ptr->pos.x += x; gSaveBlock1Ptr->pos.y += y; } else { - save_serialize_map(); + SaveMapView(); ClearMirageTowerPulseBlendEffect(); old_x = gSaveBlock1Ptr->pos.x; old_y = gSaveBlock1Ptr->pos.y; - connection = sub_8088950(direction, gSaveBlock1Ptr->pos.x, gSaveBlock1Ptr->pos.y); - sub_80887F8(connection, direction, x, y); + connection = GetIncomingConnection(direction, gSaveBlock1Ptr->pos.x, gSaveBlock1Ptr->pos.y); + SetPositionFromConnection(connection, direction, x, y); LoadMapFromCameraTransition(connection->mapGroup, connection->mapNum); gCamera.active = TRUE; gCamera.x = old_x - gSaveBlock1Ptr->pos.x; gCamera.y = old_y - gSaveBlock1Ptr->pos.y; gSaveBlock1Ptr->pos.x += x; gSaveBlock1Ptr->pos.y += y; - sub_80885C4(direction); + MoveMapViewToBackup(direction); } return gCamera.active; } -struct MapConnection *sub_8088950(u8 direction, int x, int y) +static struct MapConnection *GetIncomingConnection(u8 direction, int x, int y) { int count; int i; struct MapConnection *connection; const struct MapConnections *connections = gMapHeader.connections; - // UB: Multiple possible null dereferences -#ifdef UBFIX - if (connections != NULL) - { - count = connections->count; - connection = connections->connections; - if (connection != NULL) - { - for (i = 0; i < count; i++, connection++) - { - if (connection->direction == direction && sub_80889A8(direction, x, y, connection) == TRUE) - return connection; - } - } - } -#else + +#ifdef UBFIX // UB: Multiple possible null dereferences + if (connections == NULL || connections->connections == NULL) + return NULL; +#endif count = connections->count; connection = connections->connections; for (i = 0; i < count; i++, connection++) { - if (connection->direction == direction && sub_80889A8(direction, x, y, connection) == TRUE) + if (connection->direction == direction && IsPosInIncomingConnectingMap(direction, x, y, connection) == TRUE) return connection; } -#endif return NULL; } -bool8 sub_80889A8(u8 direction, int x, int y, struct MapConnection *connection) +static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, struct MapConnection *connection) { struct MapHeader const *mapHeader; mapHeader = GetMapHeaderFromConnection(connection); @@ -835,15 +827,15 @@ bool8 sub_80889A8(u8 direction, int x, int y, struct MapConnection *connection) { case CONNECTION_SOUTH: case CONNECTION_NORTH: - return sub_8088A0C(x, gMapHeader.mapLayout->width, mapHeader->mapLayout->width, connection->offset); + return IsCoordInIncomingConnectingMap(x, gMapHeader.mapLayout->width, mapHeader->mapLayout->width, connection->offset); case CONNECTION_WEST: case CONNECTION_EAST: - return sub_8088A0C(y, gMapHeader.mapLayout->height, mapHeader->mapLayout->height, connection->offset); + return IsCoordInIncomingConnectingMap(y, gMapHeader.mapLayout->height, mapHeader->mapLayout->height, connection->offset); } return FALSE; } -bool8 sub_8088A0C(int x, int src_width, int dest_width, int offset) +static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset) { int offset2; offset2 = offset; @@ -851,24 +843,24 @@ bool8 sub_8088A0C(int x, int src_width, int dest_width, int offset) if (offset2 < 0) offset2 = 0; - if (dest_width + offset < src_width) - src_width = dest_width + offset; + if (destMax + offset < srcMax) + srcMax = destMax + offset; - if (offset2 <= x && x <= src_width) + if (offset2 <= coord && coord <= srcMax) return TRUE; return FALSE; } -int sub_8088A38(int x, int width) +static int IsCoordInConnectingMap(int coord, int max) { - if (x >= 0 && x < width) + if (coord >= 0 && coord < max) return TRUE; return FALSE; } -int sub_8088A4C(struct MapConnection *connection, int x, int y) +static int IsPosInConnectingMap(struct MapConnection *connection, int x, int y) { struct MapHeader const *mapHeader; mapHeader = GetMapHeaderFromConnection(connection); @@ -876,10 +868,10 @@ int sub_8088A4C(struct MapConnection *connection, int x, int y) { case CONNECTION_SOUTH: case CONNECTION_NORTH: - return sub_8088A38(x - connection->offset, mapHeader->mapLayout->width); + return IsCoordInConnectingMap(x - connection->offset, mapHeader->mapLayout->width); case CONNECTION_WEST: case CONNECTION_EAST: - return sub_8088A38(y - connection->offset, mapHeader->mapLayout->height); + return IsCoordInConnectingMap(y - connection->offset, mapHeader->mapLayout->height); } return FALSE; } @@ -909,7 +901,7 @@ struct MapConnection *GetConnectionAtCoords(s16 x, s16 y) { continue; } - if (sub_8088A4C(connection, x - 7, y - 7) == TRUE) + if (IsPosInConnectingMap(connection, x - 7, y - 7) == TRUE) { return connection; } @@ -991,12 +983,12 @@ static void CopyTilesetToVramUsingHeap(struct Tileset const *tileset, u16 numTil } } -void nullsub_3(u16 a0, u16 a1) +static void FieldmapPaletteDummy(u16 offset, u16 size) { } -void nullsub_90(void) +static void FieldmapUnkDummy(void) { } @@ -1011,17 +1003,17 @@ void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) { LoadPalette(&black, destOffset, 2); LoadPalette(((u16*)tileset->palettes) + 1, destOffset + 1, size - 2); - nullsub_3(destOffset + 1, (size - 2) >> 1); + FieldmapPaletteDummy(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) { LoadPalette(((u16*)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); - nullsub_3(destOffset, size >> 1); + FieldmapPaletteDummy(destOffset, size >> 1); } else { LoadCompressedPalette((u32*)tileset->palettes, destOffset, size); - nullsub_3(destOffset, size >> 1); + FieldmapPaletteDummy(destOffset, size >> 1); } } } diff --git a/src/save.c b/src/save.c index bbf4e7dbef56..52301df03643 100644 --- a/src/save.c +++ b/src/save.c @@ -913,7 +913,7 @@ void Task_LinkSave(u8 taskId) if (IsLinkTaskFinished()) { if (!tPartialSave) - save_serialize_map(); + SaveMapView(); tState = 3; } break; diff --git a/src/start_menu.c b/src/start_menu.c index 2316b85b60a1..275c6c0327a5 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -850,7 +850,7 @@ static bool8 BattlePyramidRetireCallback(void) static void InitSave(void) { - save_serialize_map(); + SaveMapView(); sSaveDialogCallback = SaveConfirmSaveCallback; sSavingComplete = FALSE; } From 4a1cfbead245b3cac609b498dfca6b6d238f7f7a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 16:55:33 -0400 Subject: [PATCH 098/762] Document remaining overworld --- data/scripts/cable_club.inc | 2 +- include/cable_club.h | 1 + include/constants/cable_club.h | 4 + include/event_scripts.h | 2 +- include/global.h | 10 - include/overworld.h | 17 +- src/cable_club.c | 16 +- src/diploma.c | 2 +- src/overworld.c | 331 +++++++++++++++++---------------- src/record_mixing.c | 2 +- 10 files changed, 197 insertions(+), 190 deletions(-) diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 189a97b256ed..c17f77c0a240 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -889,7 +889,7 @@ RecordCorner_EventScript_AlreadyMixed:: @ 82774E0 closemessage end -EventScript_ConfirmLeaveTradeRoom:: @ 82774EF +EventScript_ConfirmLeaveCableClubRoom:: @ 82774EF msgbox Text_TerminateLinkConfirmation, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq EventScript_TerminateLink diff --git a/include/cable_club.h b/include/cable_club.h index a5a6acfa4749..c493691c1c5e 100644 --- a/include/cable_club.h +++ b/include/cable_club.h @@ -2,6 +2,7 @@ #define GUARD_CABLE_CLUB_H #include "task.h" +#include "constants/cable_club.h" void CreateTask_EnterCableClubSeat(TaskFunc taskFunc); u8 CreateTask_ReestablishCableClubLink(void); diff --git a/include/constants/cable_club.h b/include/constants/cable_club.h index cbdd049db50e..3515ffa2c449 100644 --- a/include/constants/cable_club.h +++ b/include/constants/cable_club.h @@ -28,4 +28,8 @@ #define LINKUP_FAILED_BATTLE_TOWER 11 #define LINKUP_FOREIGN_GAME 12 +#define CABLE_SEAT_WAITING 0 +#define CABLE_SEAT_SUCCESS 1 +#define CABLE_SEAT_FAILED 2 + #endif //GUARD_CONSTANTS_CABLE_CLUB_H diff --git a/include/event_scripts.h b/include/event_scripts.h index ecb40c266257..f5151ce20107 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -607,7 +607,7 @@ extern const u8 EventScript_BattleColosseum_2P_PlayerSpot0[]; extern const u8 EventScript_BattleColosseum_2P_PlayerSpot1[]; extern const u8 EventScript_TradeCenter_Chair1[]; extern const u8 EventScript_TradeCenter_Chair0[]; -extern const u8 EventScript_ConfirmLeaveTradeRoom[]; +extern const u8 EventScript_ConfirmLeaveCableClubRoom[]; extern const u8 EventScript_TerminateLink[]; #endif // GUARD_EVENT_SCRIPTS_H diff --git a/include/global.h b/include/global.h index 497fb40b14b0..18e2bfea74b4 100644 --- a/include/global.h +++ b/include/global.h @@ -1055,14 +1055,4 @@ struct MapPosition s8 height; }; -struct TradeRoomPlayer -{ - u8 playerId; - u8 isLocalPlayer; - u8 c; - u8 facing; - struct MapPosition pos; - u16 field_C; -}; - #endif // GUARD_GLOBAL_H diff --git a/include/overworld.h b/include/overworld.h index 6efaa6ccb6b8..16c75861cfe7 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -7,17 +7,17 @@ #define LINK_KEY_CODE_DPAD_UP 0x13 #define LINK_KEY_CODE_DPAD_LEFT 0x14 #define LINK_KEY_CODE_DPAD_RIGHT 0x15 -#define LINK_KEY_CODE_UNK_2 0x16 +#define LINK_KEY_CODE_READY 0x16 #define LINK_KEY_CODE_EXIT_ROOM 0x17 #define LINK_KEY_CODE_START_BUTTON 0x18 #define LINK_KEY_CODE_A_BUTTON 0x19 -#define LINK_KEY_CODE_UNK_4 0x1A // I'd guess this is the B button? +#define LINK_KEY_CODE_IDLE 0x1A // These two are a hack to stop user input until link stuff can be // resolved. #define LINK_KEY_CODE_HANDLE_RECV_QUEUE 0x1B #define LINK_KEY_CODE_HANDLE_SEND_QUEUE 0x1C -#define LINK_KEY_CODE_UNK_7 0x1D +#define LINK_KEY_CODE_EXIT_SEAT 0x1D #define LINK_KEY_CODE_UNK_8 0x1E #define MOVEMENT_MODE_FREE 0 @@ -143,15 +143,14 @@ void CB2_ReturnToFieldFromMultiplayer(void); void CB2_ReturnToFieldWithOpenMenu(void); void CB2_ReturnToFieldContinueScript(void); void CB2_ReturnToFieldContinueScriptPlayMapMusic(void); -void sub_80861E8(void); +void CB2_ReturnToFieldFadeFromBlack(void); void CB2_ContinueSavedGame(void); void ResetAllMultiplayerState(void); -u32 sub_8087214(void); -bool32 sub_808727C(void); -u16 sub_8087288(void); -u16 sub_808729C(void); +u32 GetCableClubPartnersReady(void); +u16 SetInCableClubSeat(void); +u16 SetLinkWaitingForScript(void); u16 QueueExitLinkRoomKey(void); -u16 sub_80872C4(void); +u16 SetStartedCableClubActivity(void); bool32 Overworld_LinkRecvQueueLengthMoreThan2(void); bool32 Overworld_RecvKeysFromLinkIsRunning(void); bool32 Overworld_SendKeysToLinkIsRunning(void); diff --git a/src/cable_club.c b/src/cable_club.c index 1d8c6e53d7f5..abe1d5d4dd83 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -1053,29 +1053,31 @@ static void Task_EnterCableClubSeat(u8 taskId) case 1: if (IsFieldMessageBoxHidden()) { - sub_8087288(); + SetInCableClubSeat(); SetLocalLinkPlayerId(gSpecialVar_0x8005); task->tState = 2; } break; case 2: - switch (sub_8087214()) + switch (GetCableClubPartnersReady()) { - case 0: + case CABLE_SEAT_WAITING: break; - case 1: + case CABLE_SEAT_SUCCESS: + // Partners linked and ready, switch to relevant link function HideFieldMessageBox(); task->tState = 0; - sub_80872C4(); + SetStartedCableClubActivity(); SwitchTaskToFollowupFunc(taskId); break; - case 2: + case CABLE_SEAT_FAILED: task->tState = 3; break; } break; case 3: - sub_808729C(); + // Exit, failure + SetLinkWaitingForScript(); sub_8197AE8(TRUE); DestroyTask(taskId); EnableBothScriptContexts(); diff --git a/src/diploma.c b/src/diploma.c index bf0d5b057dd3..8652430e764a 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -121,7 +121,7 @@ static void Task_DiplomaFadeOut(u8 taskId) Free(sDiplomaTilemapPtr); FreeAllWindowBuffers(); DestroyTask(taskId); - SetMainCallback2(sub_80861E8); + SetMainCallback2(CB2_ReturnToFieldFadeFromBlack); } } diff --git a/src/overworld.c b/src/overworld.c index f2ed5952c299..600333a47a06 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -68,10 +68,20 @@ #include "constants/trainer_hill.h" #include "constants/weather.h" -#define PLAYER_TRADING_STATE_IDLE 0x80 -#define PLAYER_TRADING_STATE_BUSY 0x81 -#define PLAYER_TRADING_STATE_UNK_2 0x82 -#define PLAYER_TRADING_STATE_EXITING_ROOM 0x83 +struct CableClubPlayer +{ + u8 playerId; + u8 isLocalPlayer; + u8 movementMode; + u8 facing; + struct MapPosition pos; + u16 metatileBehavior; +}; + +#define PLAYER_LINK_STATE_IDLE 0x80 +#define PLAYER_LINK_STATE_BUSY 0x81 +#define PLAYER_LINK_STATE_READY 0x82 +#define PLAYER_LINK_STATE_EXITING_ROOM 0x83 #define FACING_NONE 0 #define FACING_UP 1 @@ -92,82 +102,82 @@ static void CB2_ReturnToFieldLink(void); static void CB2_LoadMapOnReturnToFieldCableClub(void); static void CB2_LoadMap2(void); static void VBlankCB_Field(void); -static void SpriteCB_LinkPlayer(struct Sprite *sprite); +static void SpriteCB_LinkPlayer(struct Sprite *); static void ChooseAmbientCrySpecies(void); -static void DoMapLoadLoop(u8 *state); -static bool32 LoadMapInStepsLocal(u8 *state, bool32); -static bool32 LoadMapInStepsLink(u8 *state); -static bool32 ReturnToFieldLocal(u8 *state); -static bool32 ReturnToFieldLink(u8 *state); +static void DoMapLoadLoop(u8 *); +static bool32 LoadMapInStepsLocal(u8 *, bool32); +static bool32 LoadMapInStepsLink(u8 *); +static bool32 ReturnToFieldLocal(u8 *); +static bool32 ReturnToFieldLink(u8 *); static void InitObjectEventsLink(void); static void InitObjectEventsLocal(void); static void InitOverworldGraphicsRegisters(void); static u8 GetSpriteForLinkedPlayer(u8); -static u16 KeyInterCB_SendNothing(u32 a1); +static u16 KeyInterCB_SendNothing(u32); static void ResetMirageTowerAndSaveBlockPtrs(void); -static void sub_80867D8(void); +static void ResetScreenForMapLoad(void); static void OffsetCameraFocusByLinkPlayerId(void); static void SpawnLinkPlayers(void); static void SetCameraToTrackGuestPlayer(void); -static void ResumeMap(bool32 arg0); +static void ResumeMap(bool32); static void SetCameraToTrackPlayer(void); static void InitObjectEventsReturnToField(void); static void InitViewGraphics(void); static void SetCameraToTrackGuestPlayer_2(void); static void CreateLinkPlayerSprites(void); static void ClearAllPlayerKeys(void); -static void ResetAllTradingStates(void); +static void ResetAllPlayerLinkStates(void); static void UpdateHeldKeyCode(u16); static void UpdateAllLinkPlayers(u16*, s32); -static u8 FlipVerticalAndClearForced(u8 a1, u8 a2); -static u8 LinkPlayerDetectCollision(u8 selfObjEventId, u8 a2, s16 x, s16 y); -static void CreateLinkPlayerSprite(u8 linkPlayerId, u8 gameVersion); -static void GetLinkPlayerCoords(u8 linkPlayerId, u16 *x, u16 *y); -static u8 GetLinkPlayerFacingDirection(u8 linkPlayerId); -static u8 GetLinkPlayerElevation(u8 linkPlayerId); -static s32 GetLinkPlayerObjectStepTimer(u8 linkPlayerId); -static u8 GetLinkPlayerIdAt(s16 x, s16 y); -static void SetPlayerFacingDirection(u8 linkPlayerId, u8 a2); -static void ZeroObjectEvent(struct ObjectEvent *objEvent); -static void SpawnLinkPlayerObjectEvent(u8 linkPlayerId, s16 x, s16 y, u8 a4); -static void InitLinkPlayerObjectEventPos(struct ObjectEvent *objEvent, s16 x, s16 y); -static void SetLinkPlayerObjectRange(u8 linkPlayerId, u8 a2); -static void DestroyLinkPlayerObject(u8 linkPlayerId); -static u8 GetSpriteForLinkedPlayer(u8 linkPlayerId); +static u8 FlipVerticalAndClearForced(u8, u8); +static u8 LinkPlayerDetectCollision(u8, u8, s16, s16); +static void CreateLinkPlayerSprite(u8, u8); +static void GetLinkPlayerCoords(u8, u16 *, u16 *); +static u8 GetLinkPlayerFacingDirection(u8); +static u8 GetLinkPlayerElevation(u8); +static s32 GetLinkPlayerObjectStepTimer(u8); +static u8 GetLinkPlayerIdAt(s16, s16); +static void SetPlayerFacingDirection(u8, u8); +static void ZeroObjectEvent(struct ObjectEvent *); +static void SpawnLinkPlayerObjectEvent(u8, s16, s16, u8); +static void InitLinkPlayerObjectEventPos(struct ObjectEvent *, s16, s16); +static void SetLinkPlayerObjectRange(u8, u8); +static void DestroyLinkPlayerObject(u8); +static u8 GetSpriteForLinkedPlayer(u8); static void RunTerminateLinkScript(void); static u32 GetLinkSendQueueLength(void); -static void ZeroLinkPlayerObjectEvent(struct LinkPlayerObjectEvent *linkPlayerObjEvent); -static const u8 *TryInteractWithPlayer(struct TradeRoomPlayer *a1); -static u16 GetDirectionForEventScript(const u8 *script); -static void sub_8087510(void); +static void ZeroLinkPlayerObjectEvent(struct LinkPlayerObjectEvent *); +static const u8 *TryInteractWithPlayer(struct CableClubPlayer *); +static u16 GetDirectionForEventScript(const u8 *); +static void InitLinkPlayerQueueScript(void); static void InitLinkRoomStartMenuScript(void); -static void sub_8087530(const u8 *script); -static void CreateConfirmLeaveTradeRoomPrompt(void); -static void InitMenuBasedScript(const u8 *script); -static void LoadTradeRoomPlayer(s32 linkPlayerId, s32 a2, struct TradeRoomPlayer *a3); -static bool32 sub_8087340(struct TradeRoomPlayer *a1); -static bool32 sub_8087340_2(struct TradeRoomPlayer *a1); -static u8 *TryGetTileEventScript(struct TradeRoomPlayer *a1); -static bool32 PlayerIsAtSouthExit(struct TradeRoomPlayer *a1); -static const u8 *TryInteractWithPlayer(struct TradeRoomPlayer *a1); +static void RunInteractLocalPlayerScript(const u8 *); +static void RunConfirmLeaveCableClubScript(void); +static void InitMenuBasedScript(const u8 *); +static void LoadCableClubPlayer(s32, s32, struct CableClubPlayer *); +static bool32 IsCableClubPlayerUnfrozen(struct CableClubPlayer *); +static bool32 CanCableClubPlayerPressStart(struct CableClubPlayer *); +static u8 *TryGetTileEventScript(struct CableClubPlayer *); +static bool32 PlayerIsAtSouthExit(struct CableClubPlayer *); +static const u8 *TryInteractWithPlayer(struct CableClubPlayer *); static u16 KeyInterCB_DeferToRecvQueue(u32); static u16 KeyInterCB_DeferToSendQueue(u32); -static void ResetPlayerHeldKeys(u16 *a1); -static u16 KeyInterCB_SelfIdle(u32 a1); -static u16 KeyInterCB_DeferToEventScript(u32 a1); -static u16 GetDirectionForDpadKey(u16 a1); +static void ResetPlayerHeldKeys(u16 *); +static u16 KeyInterCB_SelfIdle(u32); +static u16 KeyInterCB_DeferToEventScript(u32); +static u16 GetDirectionForDpadKey(u16); static void CB1_UpdateLinkState(void); static void SetKeyInterceptCallback(u16 (*func)(u32)); static void SetFieldVBlankCallback(void); static void FieldClearVBlankHBlankCallbacks(void); static void TransitionMapMusic(void); -static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState *playerStruct, u16 a2, u8 a3); -static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *playerStruct, u8 a2, u16 a3, u8 a4); +static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState *, u16, u8); +static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *, u8, u16, u8); static u16 GetCenterScreenMetatileBehavior(void); // IWRAM bss vars static void *sUnusedOverworldCallback; -static u8 sPlayerTradingStates[MAX_LINK_PLAYERS]; +static u8 sPlayerLinkStates[MAX_LINK_PLAYERS]; // This callback is called with a player's key code. It then returns an // adjusted key code, effectively intercepting the input before anything // can process it. @@ -311,13 +321,13 @@ static const struct ScanlineEffectParams sFlashEffectParams = static u8 MovementEventModeCB_Normal(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); -static u8 MovementEventModeCB_Normal_2(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); +static u8 MovementEventModeCB_Scripted(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); static u8 (*const gLinkPlayerMovementModes[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = { - MovementEventModeCB_Normal, // MOVEMENT_MODE_FREE - MovementEventModeCB_Ignored, // MOVEMENT_MODE_FROZEN - MovementEventModeCB_Normal_2, // MOVEMENT_MODE_SCRIPTED + [MOVEMENT_MODE_FREE] = MovementEventModeCB_Normal, + [MOVEMENT_MODE_FROZEN] = MovementEventModeCB_Ignored, + [MOVEMENT_MODE_SCRIPTED] = MovementEventModeCB_Scripted, }; static u8 FacingHandler_DoNothing(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); @@ -411,7 +421,7 @@ static void Overworld_ResetStateAfterWhiteOut(void) } } -static void sub_8084788(void) +static void UpdateMiscOverworldStates(void) { FlagClear(FLAG_SYS_SAFARI_MODE); ChooseAmbientCrySpecies(); @@ -1668,14 +1678,14 @@ void CB2_ReturnToFieldContinueScriptPlayMapMusic(void) CB2_ReturnToField(); } -void sub_80861E8(void) +void CB2_ReturnToFieldFadeFromBlack(void) { FieldClearVBlankHBlankCallbacks(); gFieldCallback = FieldCB_WarpExitFadeFromBlack; CB2_ReturnToField(); } -static void sub_8086204(void) +static void FieldCB_FadeTryShowMapPopup(void) { if (SHOW_MAP_NAME_ENABLED && SecretBaseMapPopupEnabled() == TRUE) ShowMapNamePopup(); @@ -1704,7 +1714,7 @@ void CB2_ContinueSavedGame(void) UnfreezeObjectEvents(); DoTimeBasedEvents(); - sub_8084788(); + UpdateMiscOverworldStates(); if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR) InitBattlePyramidMap(TRUE); else if (trainerHillMapId != 0) @@ -1727,7 +1737,7 @@ void CB2_ContinueSavedGame(void) else { TryPutTodaysRivalTrainerOnAir(); - gFieldCallback = sub_8086204; + gFieldCallback = FieldCB_FadeTryShowMapPopup; SetMainCallback1(CB1_Overworld); CB2_ReturnToField(); } @@ -1796,7 +1806,7 @@ static bool32 LoadMapInStepsLink(u8 *state) ScriptContext1_Init(); ScriptContext2_Disable(); ResetMirageTowerAndSaveBlockPtrs(); - sub_80867D8(); + ResetScreenForMapLoad(); (*state)++; break; case 1: @@ -1877,7 +1887,7 @@ static bool32 LoadMapInStepsLocal(u8 *state, bool32 a2) break; case 1: ResetMirageTowerAndSaveBlockPtrs(); - sub_80867D8(); + ResetScreenForMapLoad(); (*state)++; break; case 2: @@ -1944,7 +1954,7 @@ static bool32 ReturnToFieldLocal(u8 *state) { case 0: ResetMirageTowerAndSaveBlockPtrs(); - sub_80867D8(); + ResetScreenForMapLoad(); ResumeMap(FALSE); InitObjectEventsReturnToField(); SetCameraToTrackPlayer(); @@ -1973,7 +1983,7 @@ static bool32 ReturnToFieldLink(u8 *state) case 0: FieldClearVBlankHBlankCallbacks(); ResetMirageTowerAndSaveBlockPtrs(); - sub_80867D8(); + ResetScreenForMapLoad(); (*state)++; break; case 1: @@ -2054,7 +2064,7 @@ static void ResetMirageTowerAndSaveBlockPtrs(void) MoveSaveBlocks_ResetHeap(); } -static void sub_80867D8(void) +static void ResetScreenForMapLoad(void) { SetGpuReg(REG_OFFSET_DISPCNT, 0); ScanlineEffect_Stop(); @@ -2241,7 +2251,7 @@ static void CB1_UpdateLinkState(void) void ResetAllMultiplayerState(void) { - ResetAllTradingStates(); + ResetAllPlayerLinkStates(); SetKeyInterceptCallback(KeyInterCB_SelfIdle); } @@ -2266,57 +2276,57 @@ static void CheckRfuKeepAliveTimer(void) LinkRfu_FatalError(); } -static void ResetAllTradingStates(void) +static void ResetAllPlayerLinkStates(void) { s32 i; for (i = 0; i < MAX_LINK_PLAYERS; i++) - sPlayerTradingStates[i] = PLAYER_TRADING_STATE_IDLE; + sPlayerLinkStates[i] = PLAYER_LINK_STATE_IDLE; } -// Returns true if all connected players are in tradingState. -static bool32 AreAllPlayersInTradingState(u16 tradingState) +// Returns true if all connected players are in state. +static bool32 AreAllPlayersInLinkState(u16 state) { s32 i; s32 count = gFieldLinkPlayerCount; for (i = 0; i < count; i++) - if (sPlayerTradingStates[i] != tradingState) + if (sPlayerLinkStates[i] != state) return FALSE; return TRUE; } -static bool32 IsAnyPlayerInTradingState(u16 tradingState) +static bool32 IsAnyPlayerInLinkState(u16 state) { s32 i; s32 count = gFieldLinkPlayerCount; for (i = 0; i < count; i++) - if (sPlayerTradingStates[i] == tradingState) + if (sPlayerLinkStates[i] == state) return TRUE; return FALSE; } -static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlayer *trainer, u16 *forceFacing) +static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct CableClubPlayer *trainer, u16 *forceFacing) { const u8 *script; - if (sPlayerTradingStates[playerId] == PLAYER_TRADING_STATE_IDLE) + if (sPlayerLinkStates[playerId] == PLAYER_LINK_STATE_IDLE) { script = TryGetTileEventScript(trainer); if (script) { *forceFacing = GetDirectionForEventScript(script); - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); - sub_8087530(script); + RunInteractLocalPlayerScript(script); } return; } - if (IsAnyPlayerInTradingState(PLAYER_TRADING_STATE_EXITING_ROOM) == TRUE) + if (IsAnyPlayerInLinkState(PLAYER_LINK_STATE_EXITING_ROOM) == TRUE) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); @@ -2328,9 +2338,9 @@ static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlay switch (key) { case LINK_KEY_CODE_START_BUTTON: - if (sub_8087340_2(trainer)) + if (CanCableClubPlayerPressStart(trainer)) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); @@ -2341,11 +2351,11 @@ static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlay case LINK_KEY_CODE_DPAD_DOWN: if (PlayerIsAtSouthExit(trainer) == TRUE) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); - CreateConfirmLeaveTradeRoomPrompt(); + RunConfirmLeaveCableClubScript(); } } break; @@ -2353,7 +2363,7 @@ static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlay script = TryInteractWithPlayer(trainer); if (script) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); @@ -2362,24 +2372,24 @@ static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlay } break; case LINK_KEY_CODE_HANDLE_RECV_QUEUE: - if (sub_8087340(trainer)) + if (IsCableClubPlayerUnfrozen(trainer)) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToRecvQueue); - sub_8087510(); + InitLinkPlayerQueueScript(); } } break; case LINK_KEY_CODE_HANDLE_SEND_QUEUE: - if (sub_8087340(trainer)) + if (IsCableClubPlayerUnfrozen(trainer)) { - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; if (trainer->isLocalPlayer) { SetKeyInterceptCallback(KeyInterCB_DeferToSendQueue); - sub_8087510(); + InitLinkPlayerQueueScript(); } } break; @@ -2389,35 +2399,35 @@ static void HandleLinkPlayerKeyInput(u32 playerId, u16 key, struct TradeRoomPlay switch (key) { case LINK_KEY_CODE_EXIT_ROOM: - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_EXITING_ROOM; + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_EXITING_ROOM; break; - case LINK_KEY_CODE_UNK_2: - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_UNK_2; + case LINK_KEY_CODE_READY: + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_READY; break; - case LINK_KEY_CODE_UNK_4: - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_IDLE; + case LINK_KEY_CODE_IDLE: + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_IDLE; if (trainer->isLocalPlayer) SetKeyInterceptCallback(KeyInterCB_SelfIdle); break; - case LINK_KEY_CODE_UNK_7: - if (sPlayerTradingStates[playerId] == PLAYER_TRADING_STATE_UNK_2) - sPlayerTradingStates[playerId] = PLAYER_TRADING_STATE_BUSY; + case LINK_KEY_CODE_EXIT_SEAT: + if (sPlayerLinkStates[playerId] == PLAYER_LINK_STATE_READY) + sPlayerLinkStates[playerId] = PLAYER_LINK_STATE_BUSY; break; } } static void UpdateAllLinkPlayers(u16 *keys, s32 selfId) { - struct TradeRoomPlayer trainer; + struct CableClubPlayer trainer; s32 i; for (i = 0; i < MAX_LINK_PLAYERS; i++) { u8 key = keys[i]; u16 setFacing = FACING_NONE; - LoadTradeRoomPlayer(i, selfId, &trainer); + LoadCableClubPlayer(i, selfId, &trainer); HandleLinkPlayerKeyInput(i, key, &trainer, &setFacing); - if (sPlayerTradingStates[i] == PLAYER_TRADING_STATE_IDLE) + if (sPlayerLinkStates[i] == PLAYER_LINK_STATE_IDLE) setFacing = GetDirectionForDpadKey(key); SetPlayerFacingDirection(i, setFacing); } @@ -2504,7 +2514,7 @@ static u16 KeyInterCB_SelfIdle(u32 key) return LINK_KEY_CODE_HANDLE_SEND_QUEUE; } -static u16 sub_80870EC(u32 key) +static u16 KeyInterCB_Idle(u32 key) { CheckRfuKeepAliveTimer(); return LINK_KEY_CODE_EMPTY; @@ -2521,8 +2531,8 @@ static u16 KeyInterCB_DeferToEventScript(u32 key) } else { - retVal = LINK_KEY_CODE_UNK_4; - SetKeyInterceptCallback(sub_80870EC); + retVal = LINK_KEY_CODE_IDLE; + SetKeyInterceptCallback(KeyInterCB_Idle); } return retVal; } @@ -2537,9 +2547,9 @@ static u16 KeyInterCB_DeferToRecvQueue(u32 key) } else { - retVal = LINK_KEY_CODE_UNK_4; + retVal = LINK_KEY_CODE_IDLE; ScriptContext2_Disable(); - SetKeyInterceptCallback(sub_80870EC); + SetKeyInterceptCallback(KeyInterCB_Idle); } return retVal; } @@ -2554,27 +2564,27 @@ static u16 KeyInterCB_DeferToSendQueue(u32 key) } else { - retVal = LINK_KEY_CODE_UNK_4; + retVal = LINK_KEY_CODE_IDLE; ScriptContext2_Disable(); - SetKeyInterceptCallback(sub_80870EC); + SetKeyInterceptCallback(KeyInterCB_Idle); } return retVal; } -static u16 KeyInterCB_DoNothingAndKeepAlive(u32 key) +static u16 KeyInterCB_ExitingSeat(u32 key) { CheckRfuKeepAliveTimer(); return LINK_KEY_CODE_EMPTY; } -static u16 sub_8087170(u32 keyOrPlayerId) +static u16 KeyInterCB_Ready(u32 keyOrPlayerId) { - if (sPlayerTradingStates[keyOrPlayerId] == PLAYER_TRADING_STATE_UNK_2) + if (sPlayerLinkStates[keyOrPlayerId] == PLAYER_LINK_STATE_READY) { if (JOY_NEW(B_BUTTON)) { - SetKeyInterceptCallback(KeyInterCB_DoNothingAndKeepAlive); - return LINK_KEY_CODE_UNK_7; + SetKeyInterceptCallback(KeyInterCB_ExitingSeat); + return LINK_KEY_CODE_EXIT_SEAT; } else { @@ -2588,10 +2598,10 @@ static u16 sub_8087170(u32 keyOrPlayerId) } } -static u16 sub_80871AC(u32 a1) +static u16 KeyInterCB_SetReady(u32 a1) { - SetKeyInterceptCallback(sub_8087170); - return LINK_KEY_CODE_UNK_2; + SetKeyInterceptCallback(KeyInterCB_Ready); + return LINK_KEY_CODE_READY; } static u16 KeyInterCB_SendNothing(u32 key) @@ -2604,9 +2614,9 @@ static u16 KeyInterCB_WaitForPlayersToExit(u32 keyOrPlayerId) // keyOrPlayerId could be any keycode. This callback does no sanity checking // on the size of the key. It's assuming that it is being called from // CB1_UpdateLinkState. - if (sPlayerTradingStates[keyOrPlayerId] != PLAYER_TRADING_STATE_EXITING_ROOM) + if (sPlayerLinkStates[keyOrPlayerId] != PLAYER_LINK_STATE_EXITING_ROOM) CheckRfuKeepAliveTimer(); - if (AreAllPlayersInTradingState(PLAYER_TRADING_STATE_EXITING_ROOM) == TRUE) + if (AreAllPlayersInLinkState(PLAYER_LINK_STATE_EXITING_ROOM) == TRUE) { ScriptContext1_SetupScript(EventScript_DoLinkRoomExit); SetKeyInterceptCallback(KeyInterCB_SendNothing); @@ -2620,37 +2630,38 @@ static u16 KeyInterCB_SendExitRoomKey(u32 key) return LINK_KEY_CODE_EXIT_ROOM; } -// Duplicate function. -static u16 KeyInterCB_SendNothing_2(u32 key) +// Identical to KeyInterCB_SendNothing +static u16 KeyInterCB_InLinkActivity(u32 key) { return LINK_KEY_CODE_EMPTY; } -u32 sub_8087214(void) +u32 GetCableClubPartnersReady(void) { - if (IsAnyPlayerInTradingState(PLAYER_TRADING_STATE_EXITING_ROOM) == TRUE) - return 2; - if (sPlayerKeyInterceptCallback == sub_8087170 && sPlayerTradingStates[gLocalLinkPlayerId] != PLAYER_TRADING_STATE_UNK_2) - return 0; - if (sPlayerKeyInterceptCallback == KeyInterCB_DoNothingAndKeepAlive && sPlayerTradingStates[gLocalLinkPlayerId] == PLAYER_TRADING_STATE_BUSY) - return 2; - if (AreAllPlayersInTradingState(PLAYER_TRADING_STATE_UNK_2) != FALSE) - return 1; - return 0; + if (IsAnyPlayerInLinkState(PLAYER_LINK_STATE_EXITING_ROOM) == TRUE) + return CABLE_SEAT_FAILED; + if (sPlayerKeyInterceptCallback == KeyInterCB_Ready && sPlayerLinkStates[gLocalLinkPlayerId] != PLAYER_LINK_STATE_READY) + return CABLE_SEAT_WAITING; + if (sPlayerKeyInterceptCallback == KeyInterCB_ExitingSeat && sPlayerLinkStates[gLocalLinkPlayerId] == PLAYER_LINK_STATE_BUSY) + return CABLE_SEAT_FAILED; + if (AreAllPlayersInLinkState(PLAYER_LINK_STATE_READY)) + return CABLE_SEAT_SUCCESS; + return CABLE_SEAT_WAITING; } -bool32 sub_808727C(void) +// Unused +static bool32 IsAnyPlayerExitingCableClub(void) { - return IsAnyPlayerInTradingState(PLAYER_TRADING_STATE_EXITING_ROOM); + return IsAnyPlayerInLinkState(PLAYER_LINK_STATE_EXITING_ROOM); } -u16 sub_8087288(void) +u16 SetInCableClubSeat(void) { - SetKeyInterceptCallback(sub_80871AC); + SetKeyInterceptCallback(KeyInterCB_SetReady); return 0; } -u16 sub_808729C(void) +u16 SetLinkWaitingForScript(void) { SetKeyInterceptCallback(KeyInterCB_DeferToEventScript); return 0; @@ -2664,58 +2675,58 @@ u16 QueueExitLinkRoomKey(void) return 0; } -u16 sub_80872C4(void) +u16 SetStartedCableClubActivity(void) { - SetKeyInterceptCallback(KeyInterCB_SendNothing_2); + SetKeyInterceptCallback(KeyInterCB_InLinkActivity); return 0; } -static void LoadTradeRoomPlayer(s32 linkPlayerId, s32 myPlayerId, struct TradeRoomPlayer *trainer) +static void LoadCableClubPlayer(s32 linkPlayerId, s32 myPlayerId, struct CableClubPlayer *trainer) { s16 x, y; trainer->playerId = linkPlayerId; trainer->isLocalPlayer = (linkPlayerId == myPlayerId) ? 1 : 0; - trainer->c = gLinkPlayerObjectEvents[linkPlayerId].movementMode; + trainer->movementMode = gLinkPlayerObjectEvents[linkPlayerId].movementMode; trainer->facing = GetLinkPlayerFacingDirection(linkPlayerId); GetLinkPlayerCoords(linkPlayerId, &x, &y); trainer->pos.x = x; trainer->pos.y = y; trainer->pos.height = GetLinkPlayerElevation(linkPlayerId); - trainer->field_C = MapGridGetMetatileBehaviorAt(x, y); + trainer->metatileBehavior = MapGridGetMetatileBehaviorAt(x, y); } -static bool32 sub_8087340(struct TradeRoomPlayer *player) +static bool32 IsCableClubPlayerUnfrozen(struct CableClubPlayer *player) { - u8 v1 = player->c; - if (v1 == MOVEMENT_MODE_SCRIPTED || v1 == MOVEMENT_MODE_FREE) + u8 mode = player->movementMode; + if (mode == MOVEMENT_MODE_SCRIPTED || mode == MOVEMENT_MODE_FREE) return TRUE; else return FALSE; } -// Duplicate function. -static bool32 sub_8087340_2(struct TradeRoomPlayer *player) +// Identical to IsCableClubPlayerUnfrozen +static bool32 CanCableClubPlayerPressStart(struct CableClubPlayer *player) { - u8 v1 = player->c; - if (v1 == MOVEMENT_MODE_SCRIPTED || v1 == MOVEMENT_MODE_FREE) + u8 mode = player->movementMode; + if (mode == MOVEMENT_MODE_SCRIPTED || mode == MOVEMENT_MODE_FREE) return TRUE; else return FALSE; } -static u8 *TryGetTileEventScript(struct TradeRoomPlayer *player) +static u8 *TryGetTileEventScript(struct CableClubPlayer *player) { - if (player->c != MOVEMENT_MODE_SCRIPTED) + if (player->movementMode != MOVEMENT_MODE_SCRIPTED) return FACING_NONE; return GetCoordEventScriptAtMapPosition(&player->pos); } -static bool32 PlayerIsAtSouthExit(struct TradeRoomPlayer *player) +static bool32 PlayerIsAtSouthExit(struct CableClubPlayer *player) { - if (player->c != MOVEMENT_MODE_SCRIPTED && player->c != MOVEMENT_MODE_FREE) + if (player->movementMode != MOVEMENT_MODE_SCRIPTED && player->movementMode != MOVEMENT_MODE_FREE) return FALSE; - else if (!MetatileBehavior_IsSouthArrowWarp(player->field_C)) + else if (!MetatileBehavior_IsSouthArrowWarp(player->metatileBehavior)) return FALSE; else if (player->facing != DIR_SOUTH) return FALSE; @@ -2723,12 +2734,12 @@ static bool32 PlayerIsAtSouthExit(struct TradeRoomPlayer *player) return TRUE; } -static const u8 *TryInteractWithPlayer(struct TradeRoomPlayer *player) +static const u8 *TryInteractWithPlayer(struct CableClubPlayer *player) { struct MapPosition otherPlayerPos; u8 linkPlayerId; - if (player->c != MOVEMENT_MODE_FREE && player->c != MOVEMENT_MODE_SCRIPTED) + if (player->movementMode != MOVEMENT_MODE_FREE && player->movementMode != MOVEMENT_MODE_SCRIPTED) return FACING_NONE; otherPlayerPos = player->pos; @@ -2741,7 +2752,7 @@ static const u8 *TryInteractWithPlayer(struct TradeRoomPlayer *player) { if (!player->isLocalPlayer) return CableClub_EventScript_TooBusyToNotice; - else if (sPlayerTradingStates[linkPlayerId] != PLAYER_TRADING_STATE_IDLE) + else if (sPlayerLinkStates[linkPlayerId] != PLAYER_LINK_STATE_IDLE) return CableClub_EventScript_TooBusyToNotice; else if (!GetLinkTrainerCardColor(linkPlayerId)) return CableClub_EventScript_ReadTrainerCard; @@ -2749,7 +2760,7 @@ static const u8 *TryInteractWithPlayer(struct TradeRoomPlayer *player) return CableClub_EventScript_ReadTrainerCardColored; } - return GetInteractedLinkPlayerScript(&otherPlayerPos, player->field_C, player->facing); + return GetInteractedLinkPlayerScript(&otherPlayerPos, player->metatileBehavior, player->facing); } // This returns which direction to force the player to look when one of @@ -2784,7 +2795,7 @@ static u16 GetDirectionForEventScript(const u8 *script) return FACING_NONE; } -static void sub_8087510(void) +static void InitLinkPlayerQueueScript(void) { ScriptContext2_Enable(); } @@ -2796,17 +2807,17 @@ static void InitLinkRoomStartMenuScript(void) ScriptContext2_Enable(); } -static void sub_8087530(const u8 *script) +static void RunInteractLocalPlayerScript(const u8 *script) { PlaySE(SE_SELECT); ScriptContext1_SetupScript(script); ScriptContext2_Enable(); } -static void CreateConfirmLeaveTradeRoomPrompt(void) +static void RunConfirmLeaveCableClubScript(void) { PlaySE(SE_WIN_OPEN); - ScriptContext1_SetupScript(EventScript_ConfirmLeaveTradeRoom); + ScriptContext1_SetupScript(EventScript_ConfirmLeaveCableClubRoom); ScriptContext2_Enable(); } @@ -3058,8 +3069,8 @@ static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *linkPlayerOb return FACING_UP; } -// Duplicate Function -static u8 MovementEventModeCB_Normal_2(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) +// Identical to MovementEventModeCB_Normal +static u8 MovementEventModeCB_Scripted(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { return gLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); } diff --git a/src/record_mixing.c b/src/record_mixing.c index bb19fad743b3..7cc88a54c12d 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -363,7 +363,7 @@ static void Task_RecordMixing_Main(u8 taskId) { free(sReceivedRecords); free(sSentRecord); - sub_808729C(); + SetLinkWaitingForScript(); if (gWirelessCommType != 0) { CreateTask(Task_ReturnToFieldRecordMixing, 10); From 7d2a94282a809661693db9f3ba6a80a834337baa Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 17:05:38 -0400 Subject: [PATCH 099/762] Label horizontal fog data --- src/field_weather_effect.c | 43 +++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index e0103c5a33cd..63043885d477 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -1266,10 +1266,9 @@ static void UpdateThunderSound(void) // WEATHER_FOG_HORIZONTAL and WEATHER_UNDERWATER //------------------------------------------------------------------------------ -// unused data -static const u16 unusedData_839AB1C[] = {0, 6, 6, 12, 18, 42, 300, 300}; +static const u16 sUnusedData[] = {0, 6, 6, 12, 18, 42, 300, 300}; -static const struct OamData gOamData_839AB2C = +static const struct OamData sOamData_FogH = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1286,61 +1285,61 @@ static const struct OamData gOamData_839AB2C = .affineParam = 0, }; -static const union AnimCmd gSpriteAnim_839AB34[] = +static const union AnimCmd sAnim_FogH_0[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_839AB3C[] = +static const union AnimCmd sAnim_FogH_1[] = { ANIMCMD_FRAME(32, 16), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_839AB44[] = +static const union AnimCmd sAnim_FogH_2[] = { ANIMCMD_FRAME(64, 16), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_839AB4C[] = +static const union AnimCmd sAnim_FogH_3[] = { ANIMCMD_FRAME(96, 16), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_839AB54[] = +static const union AnimCmd sAnim_FogH_4[] = { ANIMCMD_FRAME(128, 16), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_839AB5C[] = +static const union AnimCmd sAnim_FogH_5[] = { ANIMCMD_FRAME(160, 16), ANIMCMD_END, }; -static const union AnimCmd *const gSpriteAnimTable_839AB64[] = +static const union AnimCmd *const sAnims_FogH[] = { - gSpriteAnim_839AB34, - gSpriteAnim_839AB3C, - gSpriteAnim_839AB44, - gSpriteAnim_839AB4C, - gSpriteAnim_839AB54, - gSpriteAnim_839AB5C, + sAnim_FogH_0, + sAnim_FogH_1, + sAnim_FogH_2, + sAnim_FogH_3, + sAnim_FogH_4, + sAnim_FogH_5, }; -static const union AffineAnimCmd gSpriteAffineAnim_839AB7C[] = +static const union AffineAnimCmd sAffineAnim_FogH[] = { AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd *const gSpriteAffineAnimTable_839AB8C[] = +static const union AffineAnimCmd *const sAffineAnims_FogH[] = { - gSpriteAffineAnim_839AB7C, + sAffineAnim_FogH, }; static void FogHorizontalSpriteCallback(struct Sprite *); @@ -1348,10 +1347,10 @@ static const struct SpriteTemplate sFogHorizontalSpriteTemplate = { .tileTag = GFXTAG_FOG_H, .paletteTag = PALTAG_WEATHER, - .oam = &gOamData_839AB2C, - .anims = gSpriteAnimTable_839AB64, + .oam = &sOamData_FogH, + .anims = sAnims_FogH, .images = NULL, - .affineAnims = gSpriteAffineAnimTable_839AB8C, + .affineAnims = sAffineAnims_FogH, .callback = FogHorizontalSpriteCallback, }; From 0dc7ff89945d471a62659b3d9f21cb7f50f331eb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 17:17:41 -0400 Subject: [PATCH 100/762] Minor misc field doc --- .../map_popup/{857F444.pal => underwater.pal} | 0 include/field_camera.h | 7 +-- src/battle_transition.c | 2 +- src/field_camera.c | 14 ++--- src/field_screen_effect.c | 12 ++--- src/map_name_popup.c | 52 +++++++++---------- 6 files changed, 39 insertions(+), 48 deletions(-) rename graphics/interface/map_popup/{857F444.pal => underwater.pal} (100%) diff --git a/graphics/interface/map_popup/857F444.pal b/graphics/interface/map_popup/underwater.pal similarity index 100% rename from graphics/interface/map_popup/857F444.pal rename to graphics/interface/map_popup/underwater.pal diff --git a/include/field_camera.h b/include/field_camera.h index 2bed02b20d87..b245fca8426f 100644 --- a/include/field_camera.h +++ b/include/field_camera.h @@ -1,8 +1,6 @@ #ifndef GUARD_FIELD_CAMERA_H #define GUARD_FIELD_CAMERA_H -// Exported type declarations - struct CameraObject { void (*callback)(struct CameraObject *); @@ -13,18 +11,15 @@ struct CameraObject s32 y; }; -// Exported RAM declarations extern struct CameraObject gFieldCamera; extern u16 gTotalCameraPixelOffsetX; extern u16 gTotalCameraPixelOffsetY; -// Exported ROM declarations void DrawWholeMapView(void); void CurrentMapDrawMetatileAt(int x, int y); -void sub_8089C08(s16 *a0, s16 *a1); +void GetCameraOffsetWithPan(s16 *a0, s16 *a1); void DrawDoorMetatileAt(int x, int y, u16 *arr); void ResetFieldCamera(void); -void sub_8057A58(void); void ResetCameraUpdateInfo(void); u32 InitCameraUpdateCallback(u8 a); void CameraUpdate(void); diff --git a/src/battle_transition.c b/src/battle_transition.c index 66a4395b9835..d47b99c862c8 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -3675,7 +3675,7 @@ static bool8 Phase1_TransitionAll_Func2(struct Task *task) static void InitTransitionStructVars(void) { memset(sTransitionStructPtr, 0, sizeof(*sTransitionStructPtr)); - sub_8089C08(&sTransitionStructPtr->field_14, &sTransitionStructPtr->field_16); + GetCameraOffsetWithPan(&sTransitionStructPtr->field_14, &sTransitionStructPtr->field_16); } static void VBlankCB_BattleTransition(void) diff --git a/src/field_camera.c b/src/field_camera.c index 699b984ac7e4..a36b6883c18e 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -39,7 +39,7 @@ static void CameraPanningCB_PanAhead(void); static struct FieldCameraOffset sFieldCameraOffset; static s16 sHorizontalCameraPan; static s16 sVerticalCameraPan; -static bool8 gUnknown_03000E2C; +static bool8 sBikeCameraPanFlag; static void (*sFieldCameraPanningCallback)(void); struct CameraObject gFieldCamera; @@ -89,7 +89,7 @@ void FieldUpdateBgTilemapScroll(void) SetGpuReg(REG_OFFSET_BG3VOFS, r4); } -void sub_8089C08(s16 *x, s16 *y) +void GetCameraOffsetWithPan(s16 *x, s16 *y) { *x = sFieldCameraOffset.xPixelOffset + sHorizontalCameraPan; *y = sFieldCameraOffset.yPixelOffset + sVerticalCameraPan + 8; @@ -450,7 +450,7 @@ void SetCameraPanning(s16 a, s16 b) void InstallCameraPanAheadCallback(void) { sFieldCameraPanningCallback = CameraPanningCB_PanAhead; - gUnknown_03000E2C = FALSE; + sBikeCameraPanFlag = FALSE; sHorizontalCameraPan = 0; sVerticalCameraPan = 32; } @@ -474,16 +474,16 @@ static void CameraPanningCB_PanAhead(void) } else { - // this code is never reached. + // this code is never reached if (gPlayerAvatar.tileTransitionState == T_TILE_TRANSITION) { - gUnknown_03000E2C ^= 1; - if (gUnknown_03000E2C == FALSE) + sBikeCameraPanFlag ^= 1; + if (sBikeCameraPanFlag == FALSE) return; } else { - gUnknown_03000E2C = FALSE; + sBikeCameraPanFlag = FALSE; } var = GetPlayerMovementDirection(); diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index db82d667ceff..fbe725c0b1ff 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -1087,7 +1087,7 @@ static void LoadOrbEffectPalette(bool8 blueOrb) } } -static bool8 sub_80B02C8(u16 shakeDir) +static bool8 UpdateOrbEffectBlend(u16 shakeDir) { u8 lo = REG_BLDALPHA & 0xFF; u8 hi = REG_BLDALPHA >> 8; @@ -1095,21 +1095,17 @@ static bool8 sub_80B02C8(u16 shakeDir) if (shakeDir != 0) { if (lo) - { lo--; - } } else { - if (hi < 0x10) - { + if (hi < 16) hi++; - } } SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(lo, hi)); - if (lo == 0 && hi == 0x10) + if (lo == 0 && hi == 16) return TRUE; else return FALSE; @@ -1193,7 +1189,7 @@ static void Task_OrbEffect(u8 taskId) { tShakeDelay = 8; tShakeDir ^= 1; - if (sub_80B02C8(tShakeDir) == TRUE) + if (UpdateOrbEffectBlend(tShakeDir) == TRUE) { tState = 5; sub_8199DF0(0, PIXEL_FILL(0), 0, 1); diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 65192fa3356a..cd92bbac1854 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -36,37 +36,37 @@ static void LoadMapNamePopUpWindowBg(void); static EWRAM_DATA u8 sPopupTaskId = 0; // .rodata -static const u8 gMapPopUp_Table[][960] = +static const u8 sMapPopUp_Table[][960] = { - INCBIN_U8("graphics/interface/map_popup/wood.4bpp"), - INCBIN_U8("graphics/interface/map_popup/marble.4bpp"), - INCBIN_U8("graphics/interface/map_popup/stone.4bpp"), - INCBIN_U8("graphics/interface/map_popup/brick.4bpp"), - INCBIN_U8("graphics/interface/map_popup/underwater.4bpp"), - INCBIN_U8("graphics/interface/map_popup/stone2.4bpp"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/interface/map_popup/wood.4bpp"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/interface/map_popup/marble.4bpp"), + [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/interface/map_popup/stone.4bpp"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/interface/map_popup/brick.4bpp"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/interface/map_popup/underwater.4bpp"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/interface/map_popup/stone2.4bpp"), }; -static const u8 gMapPopUp_Outline_Table[][960] = +static const u8 sMapPopUp_OutlineTable[][960] = { - INCBIN_U8("graphics/interface/map_popup/wood_outline.4bpp"), - INCBIN_U8("graphics/interface/map_popup/marble_outline.4bpp"), - INCBIN_U8("graphics/interface/map_popup/stone_outline.4bpp"), - INCBIN_U8("graphics/interface/map_popup/brick_outline.4bpp"), - INCBIN_U8("graphics/interface/map_popup/underwater_outline.4bpp"), - INCBIN_U8("graphics/interface/map_popup/stone2_outline.4bpp"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/interface/map_popup/wood_outline.4bpp"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/interface/map_popup/marble_outline.4bpp"), + [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/interface/map_popup/stone_outline.4bpp"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/interface/map_popup/brick_outline.4bpp"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/interface/map_popup/underwater_outline.4bpp"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/interface/map_popup/stone2_outline.4bpp"), }; -static const u16 gMapPopUp_Palette_Table[][16] = +static const u16 sMapPopUp_PaletteTable[][16] = { - INCBIN_U16("graphics/interface/map_popup/wood.gbapal"), - INCBIN_U16("graphics/interface/map_popup/marble_outline.gbapal"), - INCBIN_U16("graphics/interface/map_popup/stone_outline.gbapal"), - INCBIN_U16("graphics/interface/map_popup/brick_outline.gbapal"), - INCBIN_U16("graphics/interface/map_popup/underwater_outline.gbapal"), - INCBIN_U16("graphics/interface/map_popup/stone2_outline.gbapal"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U16("graphics/interface/map_popup/wood.gbapal"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U16("graphics/interface/map_popup/marble_outline.gbapal"), + [MAPPOPUP_THEME_STONE] = INCBIN_U16("graphics/interface/map_popup/stone_outline.gbapal"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U16("graphics/interface/map_popup/brick_outline.gbapal"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U16("graphics/interface/map_popup/underwater_outline.gbapal"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U16("graphics/interface/map_popup/stone2_outline.gbapal"), }; -static const u16 gUnknown_0857F444[16] = INCBIN_U16("graphics/interface/map_popup/857F444.gbapal"); +static const u16 sMapPopUp_Palette_Underwater[16] = INCBIN_U16("graphics/interface/map_popup/underwater.gbapal"); static const u8 gRegionMapSectionId_To_PopUpThemeIdMapping[] = { @@ -380,12 +380,12 @@ static void LoadMapNamePopUpWindowBg(void) } popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId]; - LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), gMapPopUp_Outline_Table[popUpThemeId], 0x400, 0x21D); + LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), sMapPopUp_OutlineTable[popUpThemeId], 0x400, 0x21D); CallWindowFunction(popupWindowId, DrawMapNamePopUpFrame); PutWindowTilemap(popupWindowId); if (gMapHeader.weather == WEATHER_UNDERWATER_BUBBLES) - LoadPalette(&gUnknown_0857F444, 0xE0, 0x20); + LoadPalette(&sMapPopUp_Palette_Underwater, 0xE0, sizeof(sMapPopUp_Palette_Underwater)); else - LoadPalette(gMapPopUp_Palette_Table[popUpThemeId], 0xE0, 0x20); - BlitBitmapToWindow(popupWindowId, gMapPopUp_Table[popUpThemeId], 0, 0, 80, 24); + LoadPalette(sMapPopUp_PaletteTable[popUpThemeId], 0xE0, sizeof(sMapPopUp_PaletteTable[0])); + BlitBitmapToWindow(popupWindowId, sMapPopUp_Table[popUpThemeId], 0, 0, 80, 24); } From d717a635c89e9fc44feb45153c267f3ff38ef497 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 6 Apr 2021 17:55:29 -0400 Subject: [PATCH 101/762] event_object_movement cleanup --- include/event_object_movement.h | 3 +- .../movement_action_func_tables.h | 4 +- src/data/object_events/object_event_anims.h | 3 +- src/event_object_movement.c | 153 +++++++++--------- 4 files changed, 80 insertions(+), 83 deletions(-) diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 9deacfbb7696..a935502e641b 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -47,7 +47,7 @@ enum ReflectionTypes #define GROUND_EFFECT_FLAG_HOT_SPRINGS (1 << 18) #define GROUND_EFFECT_FLAG_SEAWEED (1 << 19) -struct UnkStruct_085094AC +struct StepAnimTable { const union AnimCmd *const *anims; u8 animPos[4]; @@ -174,7 +174,6 @@ void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8); bool8 IsZCoordMismatchAt(u8, s16, s16); void UnfreezeObjectEvent(struct ObjectEvent *); u8 FindLockedObjectEventIndex(struct ObjectEvent *); -bool8 obj_npc_ministep(struct Sprite *sprite); void SetAndStartSpriteAnim(struct Sprite *, u8, u8); bool8 SpriteAnimEnded(struct Sprite *); void UnfreezeObjectEvents(void); diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 295bd51fa7c9..4df07be0dd0f 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -706,8 +706,8 @@ u8 (*const gMovementActionFuncs_WalkNormalRight[])(struct ObjectEvent *, struct MovementAction_PauseSpriteAnim, }; -const s16 gUnknown_0850DFBC[] = {0, 1, 1}; -const s16 gUnknown_0850DFC2[] = {0, 0, 1}; +static const s16 sJumpInitDisplacements[] = {0, 1, 1}; +static const s16 sJumpDisplacements[] = {0, 0, 1}; u8 (*const gMovementActionFuncs_Jump2Down[])(struct ObjectEvent *, struct Sprite *) = { MovementAction_Jump2Down_Step0, diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index f3af96f0196d..93f40225834a 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -1143,7 +1143,8 @@ static const union AffineAnimCmd *const sAffineAnimTable_KyogreGroudon[] = { sAffineAnim_KyogreGroudon_DipEast, // Unused }; -const struct UnkStruct_085094AC gUnknown_085094AC[] = { +// For animations with alternating steps +static const struct StepAnimTable sStepAnimTables[] = { { .anims = sAnimTable_QuintyPlump, .animPos = {1, 3, 0, 2}, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 4f334e827be5..67f203dcdc4f 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -36,6 +36,8 @@ #define sObjEventId data[0] #define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table #define sActionFuncId data[2] // Index into corresponding gMovementActionFuncs_* table +#define sDirection data[3] +#define sSpeed data[4] #define movement_type_def(setup, table) \ @@ -135,7 +137,7 @@ static void CameraObject_2(struct Sprite *); static struct ObjectEventTemplate *FindObjectEventTemplateByLocalId(u8 localId, struct ObjectEventTemplate *templates, u8 count); static void ClearObjectEventMovement(struct ObjectEvent *, struct Sprite *); static void ObjectEventSetSingleMovement(struct ObjectEvent *, struct Sprite *, u8); -static void oamt_npc_ministep_reset(struct Sprite *, u8, u8); +static void SetSpriteDataForNormalStep(struct Sprite *, u8, u8); static void InitSpriteForFigure8Anim(struct Sprite *sprite); static bool8 AnimateSpriteInFigure8(struct Sprite *sprite); static void UpdateObjectEventSprite(struct Sprite *); @@ -147,6 +149,7 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite); static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite); static void CreateLevitateMovementTask(struct ObjectEvent *); static void DestroyLevitateMovementTask(u8); +static bool8 NpcTakeStep(struct Sprite *sprite); static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; @@ -4620,58 +4623,53 @@ u8 GetRunningDirectionAnimNum(u8 direction) return sRunningDirectionAnimNums[direction]; } -static const struct UnkStruct_085094AC *sub_8092A4C(const union AnimCmd *const *anims) +static const struct StepAnimTable *GetStepAnimTable(const union AnimCmd *const *anims) { - const struct UnkStruct_085094AC *retval; + const struct StepAnimTable *stepTable; - for (retval = gUnknown_085094AC; retval->anims != NULL; retval++) + for (stepTable = sStepAnimTables; stepTable->anims != NULL; stepTable++) { - if (retval->anims == anims) - return retval; + if (stepTable->anims == anims) + return stepTable; } return NULL; } -void npc_apply_anim_looping(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum) +void SetStepAnimHandleAlternation(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum) { - const struct UnkStruct_085094AC *unk85094AC; + const struct StepAnimTable *stepTable; if (!objectEvent->inanimate) { sprite->animNum = animNum; - unk85094AC = sub_8092A4C(sprite->anims); - if (unk85094AC != NULL) + stepTable = GetStepAnimTable(sprite->anims); + if (stepTable != NULL) { - if (sprite->animCmdIndex == unk85094AC->animPos[0]) - { - sprite->animCmdIndex = unk85094AC->animPos[3]; - } - else if (sprite->animCmdIndex == unk85094AC->animPos[1]) - { - sprite->animCmdIndex = unk85094AC->animPos[2]; - } + if (sprite->animCmdIndex == stepTable->animPos[0]) + sprite->animCmdIndex = stepTable->animPos[3]; + else if (sprite->animCmdIndex == stepTable->animPos[1]) + sprite->animCmdIndex = stepTable->animPos[2]; } SeekSpriteAnim(sprite, sprite->animCmdIndex); } } -void obj_npc_animation_step(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum) +void SetStepAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum) { - const struct UnkStruct_085094AC *unk85094AC; + const struct StepAnimTable *stepTable; if (!objectEvent->inanimate) { u8 animPos; sprite->animNum = animNum; - unk85094AC = sub_8092A4C(sprite->anims); - if (unk85094AC != NULL) + stepTable = GetStepAnimTable(sprite->anims); + if (stepTable != NULL) { - animPos = unk85094AC->animPos[1]; - if (sprite->animCmdIndex <= unk85094AC->animPos[0]) - { - animPos = unk85094AC->animPos[0]; - } + animPos = stepTable->animPos[1]; + if (sprite->animCmdIndex <= stepTable->animPos[0]) + animPos = stepTable->animPos[0]; + SeekSpriteAnim(sprite, animPos); } } @@ -5118,7 +5116,7 @@ static void FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite { SetObjectEventDirection(objectEvent, direction); ShiftStillObjectEventCoords(objectEvent); - obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); + SetStepAnim(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); sprite->animPaused = TRUE; sprite->sActionFuncId = 1; } @@ -5147,7 +5145,7 @@ bool8 MovementAction_FaceRight_Step0(struct ObjectEvent *objectEvent, struct Spr return TRUE; } -void npc_apply_direction(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) +void InitNpcForMovement(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { s16 x; s16 y; @@ -5157,12 +5155,12 @@ void npc_apply_direction(struct ObjectEvent *objectEvent, struct Sprite *sprite, SetObjectEventDirection(objectEvent, direction); MoveCoords(direction, &x, &y); ShiftObjectEventCoords(objectEvent, x, y); - oamt_npc_ministep_reset(sprite, direction, speed); + SetSpriteDataForNormalStep(sprite, direction, speed); sprite->animPaused = FALSE; + if (sLockedAnimObjectEvents != NULL && FindLockedObjectEventIndex(objectEvent) != OBJECT_EVENTS_COUNT) - { sprite->animPaused = TRUE; - } + objectEvent->triggerGroundEffectsOnMove = TRUE; sprite->sActionFuncId = 1; } @@ -5172,19 +5170,19 @@ static void InitMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *s u8 (*functions[ARRAY_COUNT(sDirectionAnimFuncsBySpeed)])(u8); memcpy(functions, sDirectionAnimFuncsBySpeed, sizeof sDirectionAnimFuncsBySpeed); - npc_apply_direction(objectEvent, sprite, direction, speed); - npc_apply_anim_looping(objectEvent, sprite, functions[speed](objectEvent->facingDirection)); + InitNpcForMovement(objectEvent, sprite, direction, speed); + SetStepAnimHandleAlternation(objectEvent, sprite, functions[speed](objectEvent->facingDirection)); } static void StartRunningAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - npc_apply_direction(objectEvent, sprite, direction, 1); - npc_apply_anim_looping(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection)); + InitNpcForMovement(objectEvent, sprite, direction, 1); + SetStepAnimHandleAlternation(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection)); } static bool8 UpdateMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (obj_npc_ministep(sprite)) + if (NpcTakeStep(sprite)) { ShiftStillObjectEventCoords(objectEvent); objectEvent->triggerGroundEffectsOnStop = TRUE; @@ -5213,7 +5211,7 @@ static void InitNpcForWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *s static void InitWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { InitNpcForWalkSlow(objectEvent, sprite, direction); - npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); + SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); } static bool8 UpdateWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -5495,11 +5493,11 @@ enum { static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) { - s16 displacements[ARRAY_COUNT(gUnknown_0850DFBC)]; + s16 displacements[ARRAY_COUNT(sJumpInitDisplacements)]; s16 x; s16 y; - memcpy(displacements, gUnknown_0850DFBC, sizeof gUnknown_0850DFBC); + memcpy(displacements, sJumpInitDisplacements, sizeof sJumpInitDisplacements); x = 0; y = 0; SetObjectEventDirection(objectEvent, direction); @@ -5515,24 +5513,24 @@ static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 static void InitJumpRegular(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) { InitJump(objectEvent, sprite, direction, speed, type); - npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); + SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); DoShadowFieldEffect(objectEvent); } static u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *)) { - s16 displacements[ARRAY_COUNT(gUnknown_0850DFC2)]; + s16 displacements[ARRAY_COUNT(sJumpDisplacements)]; s16 x; s16 y; u8 result; - memcpy(displacements, gUnknown_0850DFC2, sizeof gUnknown_0850DFC2); + memcpy(displacements, sJumpDisplacements, sizeof sJumpDisplacements); result = callback(sprite); - if (result == JUMP_HALFWAY && displacements[sprite->data[4]] != 0) + if (result == JUMP_HALFWAY && displacements[sprite->sSpeed] != 0) { x = 0; y = 0; - MoveCoordsInDirection(objectEvent->movementDirection, &x, &y, displacements[sprite->data[4]], displacements[sprite->data[4]]); + MoveCoordsInDirection(objectEvent->movementDirection, &x, &y, displacements[sprite->sSpeed], displacements[sprite->sSpeed]); ShiftObjectEventCoords(objectEvent, objectEvent->currentCoords.x + x, objectEvent->currentCoords.y + y); objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->disableCoveringGroundEffects = TRUE; @@ -5581,7 +5579,7 @@ static bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *s return TRUE; case JUMP_HALFWAY: SetObjectEventDirection(objectEvent, GetOppositeDirection(objectEvent->movementDirection)); - obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); + SetStepAnim(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); default: return FALSE; } @@ -5769,7 +5767,7 @@ bool8 MovementAction_WalkFastRight_Step1(struct ObjectEvent *objectEvent, struct static void InitMoveInPlace(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 animNum, u16 duration) { SetObjectEventDirection(objectEvent, direction); - npc_apply_anim_looping(objectEvent, sprite, animNum); + SetStepAnimHandleAlternation(objectEvent, sprite, animNum); sprite->animPaused = FALSE; sprite->sActionFuncId = 1; sprite->data[3] = duration; @@ -6770,7 +6768,7 @@ static void AcroWheelieFaceDirection(struct ObjectEvent *objectEvent, struct Spr { SetObjectEventDirection(objectEvent, direction); ShiftStillObjectEventCoords(objectEvent); - obj_npc_animation_step(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(direction)); + SetStepAnim(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(direction)); sprite->animPaused = TRUE; sprite->sActionFuncId = 1; } @@ -7143,7 +7141,7 @@ bool8 MovementAction_AcroWheelieInPlaceRight_Step0(struct ObjectEvent *objectEve static void InitAcroPopWheelie(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { - npc_apply_direction(objectEvent, sprite, direction, speed); + InitNpcForMovement(objectEvent, sprite, direction, speed); StartSpriteAnim(sprite, GetAcroWheelieDirectionAnimNum(objectEvent->facingDirection)); SeekSpriteAnim(sprite, 0); } @@ -7214,8 +7212,8 @@ bool8 MovementAction_AcroPopWheelieMoveRight_Step1(struct ObjectEvent *objectEve static void InitAcroWheelieMove(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { - npc_apply_direction(objectEvent, sprite, direction, speed); - npc_apply_anim_looping(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(objectEvent->facingDirection)); + InitNpcForMovement(objectEvent, sprite, direction, speed); + SetStepAnimHandleAlternation(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(objectEvent->facingDirection)); } bool8 MovementAction_AcroWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -7284,7 +7282,7 @@ bool8 MovementAction_AcroWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, static void InitAcroEndWheelie(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed) { - npc_apply_direction(objectEvent, sprite, direction, speed); + InitNpcForMovement(objectEvent, sprite, direction, speed); StartSpriteAnim(sprite, GetAcroEndWheelieDirectionAnimNum(objectEvent->facingDirection)); SeekSpriteAnim(sprite, 0); } @@ -8280,16 +8278,18 @@ static void Step8(struct Sprite *sprite, u8 dir) sprite->pos1.y += 8 * (u16) sDirectionToVectors[dir].y; } -static void oamt_npc_ministep_reset(struct Sprite *sprite, u8 direction, u8 a3) +#define sTimer data[5] + +static void SetSpriteDataForNormalStep(struct Sprite *sprite, u8 direction, u8 speed) { - sprite->data[3] = direction; - sprite->data[4] = a3; - sprite->data[5] = 0; + sprite->sDirection = direction; + sprite->sSpeed = speed; + sprite->sTimer = 0; } typedef void (*SpriteStepFunc)(struct Sprite *sprite, u8 direction); -static const SpriteStepFunc gUnknown_0850E6C4[] = { +static const SpriteStepFunc sStep1Funcs[] = { Step1, Step1, Step1, @@ -8308,7 +8308,7 @@ static const SpriteStepFunc gUnknown_0850E6C4[] = { Step1, }; -static const SpriteStepFunc gUnknown_0850E704[] = { +static const SpriteStepFunc sStep2Funcs[] = { Step2, Step2, Step2, @@ -8319,7 +8319,7 @@ static const SpriteStepFunc gUnknown_0850E704[] = { Step2, }; -static const SpriteStepFunc gUnknown_0850E724[] = { +static const SpriteStepFunc sStep3Funcs[] = { Step2, Step3, Step3, @@ -8328,46 +8328,47 @@ static const SpriteStepFunc gUnknown_0850E724[] = { Step3, }; -static const SpriteStepFunc gUnknown_0850E73C[] = { +static const SpriteStepFunc sStep4Funcs[] = { Step4, Step4, Step4, Step4, }; -static const SpriteStepFunc gUnknown_0850E74C[] = { +static const SpriteStepFunc sStep8Funcs[] = { Step8, Step8, }; -static const SpriteStepFunc *const gUnknown_0850E754[] = { - gUnknown_0850E6C4, - gUnknown_0850E704, - gUnknown_0850E724, - gUnknown_0850E73C, - gUnknown_0850E74C, +static const SpriteStepFunc *const sNpcStepFuncTables[] = { + sStep1Funcs, + sStep2Funcs, + sStep3Funcs, + sStep4Funcs, + sStep8Funcs, }; -static const s16 gUnknown_0850E768[] = { +static const s16 sStepTimes[] = { 16, 8, 6, 4, 2 }; -bool8 obj_npc_ministep(struct Sprite *sprite) +static bool8 NpcTakeStep(struct Sprite *sprite) { - if (sprite->data[5] >= gUnknown_0850E768[sprite->data[4]]) + if (sprite->sTimer >= sStepTimes[sprite->sSpeed]) return FALSE; - gUnknown_0850E754[sprite->data[4]][sprite->data[5]](sprite, sprite->data[3]); + sNpcStepFuncTables[sprite->sSpeed][sprite->sTimer](sprite, sprite->sDirection); - sprite->data[5]++; + sprite->sTimer++; - if (sprite->data[5] < gUnknown_0850E768[sprite->data[4]]) + if (sprite->sTimer < sStepTimes[sprite->sSpeed]) return FALSE; return TRUE; } -#define sDirection data[3] +#undef sTimer + #define sTimer data[4] #define sNumSteps data[5] @@ -8394,7 +8395,6 @@ static bool8 UpdateWalkSlowAnim(struct Sprite *sprite) return FALSE; } -#undef sDirection #undef sTimer #undef sNumSteps @@ -8501,8 +8501,6 @@ static s16 GetJumpY(s16 i, u8 type) return sJumpYTable[type][i]; } -#define sDirection data[3] -#define sSpeed data[4] #define sJumpType data[5] #define sTimer data[6] @@ -8564,7 +8562,6 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) return result; } -#undef sDirection #undef sSpeed #undef sJumpType #undef sTimer From 356e63db033b050db40fb4ea2807b767f5b355da Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 7 Apr 2021 13:26:02 -0400 Subject: [PATCH 102/762] Clean up fieldmap, port frlg macros --- src/fieldmap.c | 209 +++++++++++-------------------------------------- 1 file changed, 45 insertions(+), 164 deletions(-) diff --git a/src/fieldmap.c b/src/fieldmap.c index 82c085f9ff1f..38e0781b734a 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -48,6 +48,21 @@ static struct MapConnection *GetIncomingConnection(u8 direction, int x, int y); static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, struct MapConnection *connection); static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset); +#define MapGridGetBorderTileAt(x, y) ({ \ + u16 block; \ + int i; \ + u16 *border = gMapHeader.mapLayout->border; \ + \ + i = (x + 1) & 1; \ + i += ((y + 1) & 1) * 2; \ + \ + block = gMapHeader.mapLayout->border[i] | METATILE_COLLISION_MASK; \ +}) + +#define AreCoordsWithinMapGridBounds(x, y) (x >= 0 && x < gBackupMapLayout.width && y >= 0 && y < gBackupMapLayout.height) + +#define MapGridGetTileAt(x, y) (AreCoordsWithinMapGridBounds(x, y) ? gBackupMapLayout.map[x + gBackupMapLayout.width * y] : MapGridGetBorderTileAt(x, y)) + struct MapHeader const *const GetMapHeaderFromConnection(struct MapConnection *connection) { return Overworld_GetMapHeaderByGroupAndId(connection->mapGroup, connection->mapNum); @@ -72,13 +87,13 @@ void InitMapFromSavedGame(void) void InitBattlePyramidMap(bool8 setPlayerPosition) { - CpuFastFill(0x03ff03ff, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill(METATILE_ID_UNDEFINED << 16 | METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); GenerateBattlePyramidFloorLayout(gBackupMapData, setPlayerPosition); } void InitTrainerHillMap(void) { - CpuFastFill(0x03ff03ff, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill(METATILE_ID_UNDEFINED << 16 | METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); GenerateTrainerHillFloorLayout(gBackupMapData); } @@ -88,7 +103,7 @@ static void InitMapLayoutData(struct MapHeader *mapHeader) int width; int height; mapLayout = mapHeader->mapLayout; - CpuFastFill16(0x03ff, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill16(METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); gBackupMapLayout.map = gBackupMapData; width = mapLayout->width + 15; gBackupMapLayout.width = width; @@ -134,19 +149,19 @@ static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader) { case CONNECTION_SOUTH: FillSouthConnection(mapHeader, cMap, offset); - gMapConnectionFlags.south = 1; + gMapConnectionFlags.south = TRUE; break; case CONNECTION_NORTH: FillNorthConnection(mapHeader, cMap, offset); - gMapConnectionFlags.north = 1; + gMapConnectionFlags.north = TRUE; break; case CONNECTION_WEST: FillWestConnection(mapHeader, cMap, offset); - gMapConnectionFlags.west = 1; + gMapConnectionFlags.west = TRUE; break; case CONNECTION_EAST: FillEastConnection(mapHeader, cMap, offset); - gMapConnectionFlags.east = 1; + gMapConnectionFlags.east = TRUE; break; } } @@ -189,26 +204,18 @@ static void FillSouthConnection(struct MapHeader const *mapHeader, struct MapHea x2 = -x; x += cWidth; if (x < gBackupMapLayout.width) - { width = x; - } else - { width = gBackupMapLayout.width; - } x = 0; } else { x2 = 0; if (x + cWidth < gBackupMapLayout.width) - { width = cWidth; - } else - { width = gBackupMapLayout.width - x; - } } FillConnection( @@ -237,26 +244,18 @@ static void FillNorthConnection(struct MapHeader const *mapHeader, struct MapHea x2 = -x; x += cWidth; if (x < gBackupMapLayout.width) - { width = x; - } else - { width = gBackupMapLayout.width; - } x = 0; } else { x2 = 0; if (x + cWidth < gBackupMapLayout.width) - { width = cWidth; - } else - { width = gBackupMapLayout.width - x; - } } FillConnection( @@ -284,26 +283,18 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead { y2 = -y; if (y + cHeight < gBackupMapLayout.height) - { height = y + cHeight; - } else - { height = gBackupMapLayout.height; - } y = 0; } else { y2 = 0; if (y + cHeight < gBackupMapLayout.height) - { height = cHeight; - } else - { height = gBackupMapLayout.height - y; - } } FillConnection( @@ -329,26 +320,18 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead { y2 = -y; if (y + cHeight < gBackupMapLayout.height) - { height = y + cHeight; - } else - { height = gBackupMapLayout.height; - } y = 0; } else { y2 = 0; if (y + cHeight < gBackupMapLayout.height) - { height = cHeight; - } else - { height = gBackupMapLayout.height - y; - } } FillConnection( @@ -359,124 +342,52 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead } } -union Block -{ - struct - { - u16 block:10; - u16 collision:2; - u16 elevation:4; - } block; - u16 value; -}; - u8 MapGridGetZCoordAt(int x, int y) { - u16 block; - int i; - u16 *border; - - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) - { - block = gBackupMapLayout.map[x + gBackupMapLayout.width * y]; - } - else - { - border = gMapHeader.mapLayout->border; - i = (x + 1) & 1; - i += ((y + 1) & 1) * 2; - block = gMapHeader.mapLayout->border[i]; - block |= METATILE_COLLISION_MASK; - } + u16 block = MapGridGetTileAt(x, y); if (block == METATILE_ID_UNDEFINED) - { return 0; - } return block >> METATILE_ELEVATION_SHIFT; } -u8 MapGridIsImpassableAt(int x, int y) +bool8 MapGridIsImpassableAt(int x, int y) { - u16 block; - int i; - u16 *border; + u16 block = MapGridGetTileAt(x, y); - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) - { - block = gBackupMapLayout.map[x + gBackupMapLayout.width * y]; - } - else - { - border = gMapHeader.mapLayout->border; - i = (x + 1) & 1; - i += ((y + 1) & 1) * 2; - block = gMapHeader.mapLayout->border[i]; - block |= METATILE_COLLISION_MASK; - } if (block == METATILE_ID_UNDEFINED) - { - return 1; - } + return TRUE; + return (block & METATILE_COLLISION_MASK) >> METATILE_COLLISION_SHIFT; } u32 MapGridGetMetatileIdAt(int x, int y) { - u16 block; - int i; - int j; - struct MapLayout const *mapLayout; - u16 *border; - u16 block2; + u16 block = MapGridGetTileAt(x, y); - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) - { - block = gBackupMapLayout.map[x + gBackupMapLayout.width * y]; - } - else - { - mapLayout = gMapHeader.mapLayout; - i = (x + 1) & 1; - i += ((y + 1) & 1) * 2; - block = mapLayout->border[i] | METATILE_COLLISION_MASK; - } if (block == METATILE_ID_UNDEFINED) - { - border = gMapHeader.mapLayout->border; - j = (x + 1) & 1; - j += ((y + 1) & 1) * 2; - block2 = gMapHeader.mapLayout->border[j]; - // This OR is completely pointless. - block2 |= METATILE_COLLISION_MASK; - return block2 & METATILE_ID_MASK; - } + return MapGridGetBorderTileAt(x, y) & METATILE_ID_MASK; + return block & METATILE_ID_MASK; } u32 MapGridGetMetatileBehaviorAt(int x, int y) { - u16 metatile; - metatile = MapGridGetMetatileIdAt(x, y); + u16 metatile = MapGridGetMetatileIdAt(x, y); return GetBehaviorByMetatileId(metatile) & METATILE_BEHAVIOR_MASK; } u8 MapGridGetMetatileLayerTypeAt(int x, int y) { - u16 metatile; - metatile = MapGridGetMetatileIdAt(x, y); + u16 metatile = MapGridGetMetatileIdAt(x, y); return (GetBehaviorByMetatileId(metatile) & METATILE_ELEVATION_MASK) >> METATILE_ELEVATION_SHIFT; } void MapGridSetMetatileIdAt(int x, int y, u16 metatile) { int i; - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) + if (AreCoordsWithinMapGridBounds(x, y)) { i = x + y * gBackupMapLayout.width; gBackupMapLayout.map[i] = (gBackupMapLayout.map[i] & METATILE_ELEVATION_MASK) | (metatile & ~METATILE_ELEVATION_MASK); @@ -486,8 +397,7 @@ void MapGridSetMetatileIdAt(int x, int y, u16 metatile) void MapGridSetMetatileEntryAt(int x, int y, u16 metatile) { int i; - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) + if (AreCoordsWithinMapGridBounds(x, y)) { i = x + gBackupMapLayout.width * y; gBackupMapLayout.map[i] = metatile; @@ -526,9 +436,7 @@ void SaveMapView(void) for (i = y; i < y + 14; i++) { for (j = x; j < x + 15; j++) - { *mapView++ = gBackupMapData[width * i + j]; - } } } @@ -660,63 +568,36 @@ int GetMapBorderIdAt(int x, int y) struct MapLayout const *mapLayout; u16 block, block2; int i, j; - if (x >= 0 && x < gBackupMapLayout.width - && y >= 0 && y < gBackupMapLayout.height) - { - i = gBackupMapLayout.width; - i *= y; - block = gBackupMapLayout.map[x + i]; - if (block == METATILE_ID_UNDEFINED) - { - goto fail; - } - } - else - { - mapLayout = gMapHeader.mapLayout; - j = (x + 1) & 1; - j += ((y + 1) & 1) * 2; - block2 = METATILE_COLLISION_MASK | mapLayout->border[j]; - if (block2 == METATILE_ID_UNDEFINED) - { - goto fail; - } - } - goto success; -fail: - return CONNECTION_INVALID; -success: + + if (MapGridGetTileAt(x, y) == METATILE_ID_UNDEFINED) + return CONNECTION_INVALID; if (x >= (gBackupMapLayout.width - 8)) { if (!gMapConnectionFlags.east) - { return CONNECTION_INVALID; - } + return CONNECTION_EAST; } else if (x < 7) { if (!gMapConnectionFlags.west) - { return CONNECTION_INVALID; - } + return CONNECTION_WEST; } else if (y >= (gBackupMapLayout.height - 7)) { if (!gMapConnectionFlags.south) - { return CONNECTION_INVALID; - } + return CONNECTION_SOUTH; } else if (y < 7) { if (!gMapConnectionFlags.north) - { return CONNECTION_INVALID; - } + return CONNECTION_NORTH; } else @@ -735,10 +616,10 @@ bool32 CanCameraMoveInDirection(int direction) int x, y; x = gSaveBlock1Ptr->pos.x + 7 + gDirectionToVectors[direction].x; y = gSaveBlock1Ptr->pos.y + 7 + gDirectionToVectors[direction].y; - if (GetMapBorderIdAt(x, y) == -1) - { + + if (GetMapBorderIdAt(x, y) == CONNECTION_INVALID) return FALSE; - } + return TRUE; } @@ -937,7 +818,7 @@ void GetCameraCoords(u16 *x, u16 *y) void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable) { - if (x >= 0 && x < gBackupMapLayout.width && y >= 0 && y < gBackupMapLayout.height) + if (AreCoordsWithinMapGridBounds(x, y)) { if (impassable) gBackupMapLayout.map[x + gBackupMapLayout.width * y] |= METATILE_COLLISION_MASK; From c95e89e083f4911d41036ecd3b8a744ff59ec8a9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 7 Apr 2021 13:32:08 -0400 Subject: [PATCH 103/762] Remove old variables --- src/fieldmap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/fieldmap.c b/src/fieldmap.c index 38e0781b734a..e437ea7fc2e6 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -565,10 +565,6 @@ static void MoveMapViewToBackup(u8 direction) int GetMapBorderIdAt(int x, int y) { - struct MapLayout const *mapLayout; - u16 block, block2; - int i, j; - if (MapGridGetTileAt(x, y) == METATILE_ID_UNDEFINED) return CONNECTION_INVALID; From 3e725272fc8b8f2ea825783771d54104d1f25e82 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 9 Apr 2021 22:39:34 -0400 Subject: [PATCH 104/762] standardize "grey" to "gray" --- berry_fix/charmap.txt | 4 +-- berry_fix/payload/charmap.txt | 4 +-- charmap.txt | 4 +-- gflib/text.c | 4 +-- gflib/text.h | 4 +-- src/battle_dome.c | 4 +-- src/battle_factory_screen.c | 4 +-- src/battle_message.c | 4 +-- src/battle_script_commands.c | 2 +- src/berry_blender.c | 8 ++--- src/berry_crush.c | 42 +++++++++++----------- src/credits.c | 4 +-- src/data/party_menu.h | 6 ++-- src/data/trade.h | 10 +++--- src/dodrio_berry_picking.c | 10 +++--- src/easy_chat.c | 4 +-- src/frontier_pass.c | 2 +- src/hall_of_fame.c | 4 +-- src/link.c | 2 +- src/menu.c | 6 ++-- src/menu_specialized.c | 4 +-- src/mevent_801BAAC.c | 4 +-- src/naming_screen.c | 8 ++--- src/party_menu.c | 4 +-- src/pokedex.c | 8 ++--- src/pokemon_jump.c | 6 ++-- src/pokemon_storage_system.c | 8 ++--- src/pokemon_summary_screen.c | 2 +- src/pokenav_conditions_3.c | 4 +-- src/pokenav_main_menu.c | 2 +- src/pokenav_match_call_ui.c | 2 +- src/pokenav_ribbons_1.c | 4 +-- src/pokenav_ribbons_2.c | 8 ++--- src/save_failed_screen.c | 2 +- src/slot_machine.c | 2 +- src/start_menu.c | 4 +-- src/starter_choose.c | 2 +- src/strings.c | 24 ++++++------- src/trainer_card.c | 2 +- src/trainer_hill.c | 2 +- src/union_room.c | 10 +++--- src/union_room_battle.c | 2 +- src/wireless_communication_status_screen.c | 8 ++--- 43 files changed, 127 insertions(+), 127 deletions(-) diff --git a/berry_fix/charmap.txt b/berry_fix/charmap.txt index 09427dc8dc3d..1c143ada4f8d 100644 --- a/berry_fix/charmap.txt +++ b/berry_fix/charmap.txt @@ -434,8 +434,8 @@ RESUME_MUSIC = FC 18 TRANSPARENT = 00 WHITE = 01 -DARK_GREY = 02 -LIGHT_GREY = 03 +DARK_GRAY = 02 +LIGHT_GRAY = 03 RED = 04 LIGHT_RED = 05 GREEN = 06 diff --git a/berry_fix/payload/charmap.txt b/berry_fix/payload/charmap.txt index 09427dc8dc3d..1c143ada4f8d 100644 --- a/berry_fix/payload/charmap.txt +++ b/berry_fix/payload/charmap.txt @@ -434,8 +434,8 @@ RESUME_MUSIC = FC 18 TRANSPARENT = 00 WHITE = 01 -DARK_GREY = 02 -LIGHT_GREY = 03 +DARK_GRAY = 02 +LIGHT_GRAY = 03 RED = 04 LIGHT_RED = 05 GREEN = 06 diff --git a/charmap.txt b/charmap.txt index ca4db0fc73b5..84e1496f053f 100644 --- a/charmap.txt +++ b/charmap.txt @@ -438,8 +438,8 @@ RESUME_MUSIC = FC 18 TRANSPARENT = 00 WHITE = 01 -DARK_GREY = 02 -LIGHT_GREY = 03 +DARK_GRAY = 02 +LIGHT_GRAY = 03 RED = 04 LIGHT_RED = 05 GREEN = 06 diff --git a/gflib/text.c b/gflib/text.c index e456a695d4a0..445a7b1be003 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -1416,9 +1416,9 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) fgColor = TEXT_COLOR_WHITE; bgColor = TEXT_COLOR_TRANSPARENT; - shadowColor = TEXT_COLOR_LIGHT_GREY; + shadowColor = TEXT_COLOR_LIGHT_GRAY; - GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GREY); + GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GRAY); strLocal = str; strPos = 0; diff --git a/gflib/text.h b/gflib/text.h index 3e9b4f2aedcd..5274ad8b51a5 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -233,8 +233,8 @@ #define TEXT_COLOR_TRANSPARENT 0x0 #define TEXT_COLOR_WHITE 0x1 -#define TEXT_COLOR_DARK_GREY 0x2 -#define TEXT_COLOR_LIGHT_GREY 0x3 +#define TEXT_COLOR_DARK_GRAY 0x2 +#define TEXT_COLOR_LIGHT_GRAY 0x3 #define TEXT_COLOR_RED 0x4 #define TEXT_COLOR_LIGHT_RED 0x5 #define TEXT_COLOR_GREEN 0x6 diff --git a/src/battle_dome.c b/src/battle_dome.c index 3b22e2926167..4e6e6a65263f 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5397,7 +5397,7 @@ static void Task_ShowTourneyTree(u8 taskId) { if (DOME_TRAINERS[i].trainerId == TRAINER_PLAYER) { - textPrinter.fgColor = TEXT_COLOR_LIGHT_GREY; + textPrinter.fgColor = TEXT_COLOR_LIGHT_GRAY; textPrinter.shadowColor = TEXT_COLOR_RED; } else @@ -5410,7 +5410,7 @@ static void Task_ShowTourneyTree(u8 taskId) { if (DOME_TRAINERS[i].trainerId == TRAINER_PLAYER) { - textPrinter.fgColor = TEXT_COLOR_LIGHT_GREY; + textPrinter.fgColor = TEXT_COLOR_LIGHT_GRAY; textPrinter.shadowColor = TEXT_COLOR_RED; } else diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 7b0af774a1b1..5be53a8b3c73 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -402,7 +402,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] = }; static const u16 sSelectText_Pal[] = INCBIN_U16("graphics/battle_frontier/factory_screen/text.gbapal"); -static const u8 sMenuOptionTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_TRANSPARENT}; +static const u8 sMenuOptionTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_TRANSPARENT}; static const u8 sSpeciesNameTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_TRANSPARENT}; static const struct OamData sOam_Select_Pokeball = @@ -1024,7 +1024,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] = }; static const u16 sSwapText_Pal[] = INCBIN_U16("graphics/battle_frontier/factory_screen/text.gbapal"); // Identical to sSelectText_Pal -static const u8 sSwapMenuOptionsTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_TRANSPARENT}; +static const u8 sSwapMenuOptionsTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_TRANSPARENT}; static const u8 sSwapSpeciesNameTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_TRANSPARENT}; #define SWAPACTION_MON 1 diff --git a/src/battle_message.c b/src/battle_message.c index 46444a8fa9c9..219a33bb9266 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1222,8 +1222,8 @@ const u8 * const gStatNamesTable2[] = sText_SpDef, sText_Defense, sText_Speed }; -const u8 gText_SafariBalls[] = _("{HIGHLIGHT DARK_GREY}SAFARI BALLS"); -const u8 gText_SafariBallLeft[] = _("{HIGHLIGHT DARK_GREY}Left: $" "{HIGHLIGHT DARK_GREY}"); +const u8 gText_SafariBalls[] = _("{HIGHLIGHT DARK_GRAY}SAFARI BALLS"); +const u8 gText_SafariBallLeft[] = _("{HIGHLIGHT DARK_GRAY}Left: $" "{HIGHLIGHT DARK_GRAY}"); const u8 gText_Sleep[] = _("sleep"); const u8 gText_Poison[] = _("poison"); const u8 gText_Burn[] = _("burn"); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 84f8efaa84fd..8f89a02b3c51 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6033,7 +6033,7 @@ static void PutLevelAndGenderOnLvlUpBox(void) printerTemplate.unk = 0; printerTemplate.fgColor = TEXT_COLOR_WHITE; printerTemplate.bgColor = TEXT_COLOR_TRANSPARENT; - printerTemplate.shadowColor = TEXT_COLOR_DARK_GREY; + printerTemplate.shadowColor = TEXT_COLOR_DARK_GRAY; AddTextPrinter(&printerTemplate, 0xFF, NULL); diff --git a/src/berry_blender.c b/src/berry_blender.c index ede1f6e9986e..39e1dca083fe 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -3859,13 +3859,13 @@ static void Blender_AddTextPrinter(u8 windowId, const u8 *string, u8 x, u8 y, s3 case 0: case 3: txtColor[0] = TEXT_COLOR_WHITE; - txtColor[1] = TEXT_COLOR_DARK_GREY; - txtColor[2] = TEXT_COLOR_LIGHT_GREY; + txtColor[1] = TEXT_COLOR_DARK_GRAY; + txtColor[2] = TEXT_COLOR_LIGHT_GRAY; break; case 1: txtColor[0] = TEXT_COLOR_TRANSPARENT; - txtColor[1] = TEXT_COLOR_DARK_GREY; - txtColor[2] = TEXT_COLOR_LIGHT_GREY; + txtColor[1] = TEXT_COLOR_DARK_GRAY; + txtColor[2] = TEXT_COLOR_LIGHT_GRAY; break; case 2: txtColor[0] = TEXT_COLOR_TRANSPARENT; diff --git a/src/berry_crush.c b/src/berry_crush.c index e63eb9f828a8..abaad232e80e 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -152,9 +152,9 @@ enum { #define PLAY_AGAIN_NO_BERRIES 3 enum { - COLORID_GREY, + COLORID_GRAY, COLORID_BLACK, - COLORID_LIGHT_GREY, + COLORID_LIGHT_GRAY, COLORID_BLUE, COLORID_GREEN, COLORID_RED, @@ -457,9 +457,9 @@ static const struct BgTemplate sBgTemplates[4] = static const u8 sTextColorTable[][3] = { - [COLORID_GREY] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, - [COLORID_BLACK] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, - [COLORID_LIGHT_GREY] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GREY, TEXT_COLOR_RED}, + [COLORID_GRAY] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, + [COLORID_BLACK] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}, + [COLORID_LIGHT_GRAY] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_RED}, [COLORID_BLUE] = {TEXT_COLOR_WHITE, TEXT_COLOR_BLUE, TEXT_COLOR_LIGHT_BLUE}, [COLORID_GREEN] = {TEXT_COLOR_WHITE, TEXT_COLOR_GREEN, TEXT_COLOR_LIGHT_GREEN}, [COLORID_RED] = {TEXT_COLOR_WHITE, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}, @@ -1653,7 +1653,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 break; } x = GetStringRightAlignXOffset(2, gStringVar4, sp14 - 4); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); if (playerId == game->localId) StringCopy(gStringVar3, gText_1DotBlueF700); else @@ -1661,7 +1661,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 gStringVar3[0] = ranking + CHAR_1; DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, game->players[playerId].name); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 4, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 4, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); } } @@ -1676,34 +1676,34 @@ static void PrintCrushingResults(struct BerryCrushGame *game) FramesToMinSec(&game->gfx, results->time); // Print time text - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_TimeColon); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimeColon); // Print seconds text x = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_SpaceSec); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceSec); // Print seconds value ConvertIntToDecimalStringN(gStringVar1, game->gfx.secondsInt, STR_CONV_MODE_LEADING_ZEROS, 2); ConvertIntToDecimalStringN(gStringVar2, game->gfx.secondsFrac, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY2); x -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print minutes text x -= GetStringWidth(2, gText_SpaceMin, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_SpaceMin); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceMin); // Print minutes value ConvertIntToDecimalStringN(gStringVar1, game->gfx.minutes, STR_CONV_MODE_LEADING_ZEROS, 1); StringExpandPlaceholders(gStringVar4, gText_StrVar1); x -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print pressing speed text y += 14; - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GREY], 0, gText_PressingSpeed); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed); x = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gText_TimesPerSec); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); // Print pressing speed value for (i = 0; i < 8; i++) @@ -1716,17 +1716,17 @@ static void PrintCrushingResults(struct BerryCrushGame *game) if (game->newRecord) AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_RED], 0, gStringVar4); else - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print silkiness text y += 14; - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GREY], 0, gText_Silkiness); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_Silkiness); // Print silkiness value ConvertIntToDecimalStringN(gStringVar1, results->silkiness, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_Var1Percent); x = 176 - (u8)GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); } static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) @@ -1825,9 +1825,9 @@ static void Task_ShowRankings(u8 taskId) { ConvertIntToDecimalStringN(gStringVar1, i + 2, STR_CONV_MODE_LEFT_ALIGN, 1); StringExpandPlaceholders(gStringVar4, gText_Var1Players); - AddTextPrinterParameterized3(tWindowId, 1, 0, yPos, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(tWindowId, 1, 0, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); xPos = 192 - (u8)GetStringWidth(1, gText_TimesPerSec, -1); - AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GREY], 0, gText_TimesPerSec); + AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); for (j = 0; j < 8; j++) { if (((tPressingSpeeds(i) & 0xFF) >> (7 - j)) & 1) @@ -1837,7 +1837,7 @@ static void Task_ShowRankings(u8 taskId) ConvertIntToDecimalStringN(gStringVar2, score / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY3); xPos -= GetStringWidth(1, gStringVar4, -1); - AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GREY], 0, gStringVar4); + AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); yPos += 16; score = 0; } @@ -1933,7 +1933,7 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game) 1, 0, 0, - sTextColorTable[COLORID_LIGHT_GREY], + sTextColorTable[COLORID_LIGHT_GRAY], 0, game->players[i].name ); diff --git a/src/credits.c b/src/credits.c index f6871aeec30d..b32949754bba 100644 --- a/src/credits.c +++ b/src/credits.c @@ -391,13 +391,13 @@ static void PrintCreditsText(const u8 *string, u8 y, bool8 isTitle) if (isTitle == TRUE) { - color[1] = TEXT_COLOR_LIGHT_GREY; + color[1] = TEXT_COLOR_LIGHT_GRAY; color[2] = TEXT_COLOR_RED; } else { color[1] = TEXT_COLOR_WHITE; - color[2] = TEXT_COLOR_DARK_GREY; + color[2] = TEXT_COLOR_DARK_GRAY; } x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, DISPLAY_WIDTH, 1); diff --git a/src/data/party_menu.h b/src/data/party_menu.h index a4a030e3fd4a..570ef738eb10 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -118,12 +118,12 @@ static const u32 sCancelButton_Tilemap[] = INCBIN_U32("graphics/interface/party_ // Text colors for BG, FG, and Shadow in that order static const u8 sFontColorTable[][3] = { - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GREY, TEXT_COLOR_DARK_GREY}, // Default + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_DARK_GRAY}, // Default {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_GREEN}, // Unused {TEXT_COLOR_TRANSPARENT, TEXT_DYNAMIC_COLOR_2, TEXT_DYNAMIC_COLOR_3}, // Gender symbol - {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, // Selection actions + {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, // Selection actions {TEXT_COLOR_WHITE, TEXT_COLOR_BLUE, TEXT_COLOR_LIGHT_BLUE}, // Field moves - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, // Unused + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}, // Unused }; static const struct WindowTemplate sSinglePartyMenuWindowTemplate[] = diff --git a/src/data/trade.h b/src/data/trade.h index 7001b6ce510e..b29e7c3d1d63 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -15,7 +15,7 @@ static const u16 sTradePartyBoxTilemap[] = INCBIN_U16("graphics/trade/party_box_ static const u8 sTradeStripesBG2Tilemap[] = INCBIN_U8("graphics/trade/stripes_bg2_map.bin"); static const u8 sTradeStripesBG3Tilemap[] = INCBIN_U8("graphics/trade/stripes_bg3_map.bin"); static const u8 sText_EmptyString[] = _(""); -static const u8 sText_UnusedTextFormat[] = _("{COLOR WHITE}{HIGHLIGHT TRANSPARENT}{SHADOW DARK_GREY}"); +static const u8 sText_UnusedTextFormat[] = _("{COLOR WHITE}{HIGHLIGHT TRANSPARENT}{SHADOW DARK_GRAY}"); const u8 gText_MaleSymbol4[] = _("♂"); const u8 gText_FemaleSymbol4[] = _("♀"); const u8 gText_GenderlessSymbol[] = _(""); @@ -35,10 +35,10 @@ static const u8 sText_CancelTrade[] = _("Cancel trade?"); static const u8 sJPText_PressBButtonToQuit[] = _("Băśă‚żăłă€€ă§ă€€ă‚‚ă©ă‚Šăľă™"); static const u8 sText_Summary2[] = _("SUMMARY"); static const u8 sText_Trade2[] = _("TRADE"); -static const u8 sText_CommunicationStandby[] = _("{COLOR DARK_GREY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GREY}Communication standby…\nPlease wait."); -static const u8 sText_TheTradeHasBeenCanceled[] = _("{COLOR DARK_GREY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GREY}The trade has\nbeen canceled."); +static const u8 sText_CommunicationStandby[] = _("{COLOR DARK_GRAY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GRAY}Communication standby…\nPlease wait."); +static const u8 sText_TheTradeHasBeenCanceled[] = _("{COLOR DARK_GRAY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GRAY}The trade has\nbeen canceled."); static const u8 sText_OnlyPkmnForBattle[] = _("That's your only\nPOKĂ©MON for battle."); -static const u8 sText_WaitingForYourFriend[] = _("{COLOR DARK_GREY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GREY}Waiting for your friend\nto finish…"); +static const u8 sText_WaitingForYourFriend[] = _("{COLOR DARK_GRAY}{HIGHLIGHT WHITE}{SHADOW LIGHT_GRAY}Waiting for your friend\nto finish…"); static const u8 sText_YourFriendWantsToTrade[] = _("Your friend wants\nto trade POKĂ©MON."); static const struct OamData sTradeOamData_32x16 = @@ -392,7 +392,7 @@ static const u8 sTradeTextColors[] = { TEXT_COLOR_TRANSPARENT, //bg color TEXT_COLOR_WHITE, //fg color - TEXT_COLOR_DARK_GREY //shadow color + TEXT_COLOR_DARK_GRAY //shadow color }; static const struct BgTemplate sTradeMenuBgTemplates[] = diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index d3244f4b9b68..d766da607d35 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -4500,7 +4500,7 @@ struct WinCoords }; enum { - COLORID_GREY, + COLORID_GRAY, COLORID_RED, COLORID_BLUE, COLORID_GREEN, // Unused @@ -4508,7 +4508,7 @@ enum { static const u8 sTextColorTable[][3] = { - [COLORID_GREY] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, + [COLORID_GRAY] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, [COLORID_RED] = {TEXT_COLOR_WHITE, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}, [COLORID_BLUE] = {TEXT_COLOR_WHITE, TEXT_COLOR_BLUE, TEXT_COLOR_LIGHT_BLUE}, [COLORID_GREEN] = {TEXT_COLOR_WHITE, TEXT_COLOR_GREEN, TEXT_COLOR_LIGHT_GREEN}, @@ -4638,7 +4638,7 @@ static void ShowNames(void) window.baseBlock = 0x13; for (i = 0; i < numPlayers; coords++, i++) { - colorsId = COLORID_GREY; + colorsId = COLORID_GRAY; playerId = GetPlayerIdByPos(i); left = (56 - GetStringWidth(1, GetPlayerName(playerId), -1)) / 2u; window.tilemapLeft = coords->left; @@ -4729,7 +4729,7 @@ static void PrintRankedScores(u8 numPlayers_) x = 216 - GetStringWidth(1, gText_SpacePoints, 0); for (i = 0; i < numPlayers; i++) { - u8 colorsId = COLORID_GREY; + u8 colorsId = COLORID_GRAY; u8 playerId = playersByRanking[i]; u32 points = scoreResults[playerId].score; @@ -4776,7 +4776,7 @@ static void ShowResults(void) AddTextPrinterParameterized(sGfx->windowIds[1], 1, gText_10P30P50P50P, 68, 17, -1, NULL); for (i = 0; i < numPlayers; i++) { - u8 colorsId = COLORID_GREY; + u8 colorsId = COLORID_GRAY; if (i == GetMultiplayerId()) colorsId = COLORID_BLUE; diff --git a/src/easy_chat.c b/src/easy_chat.c index 13e89c31f96f..96d6808400b5 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -3932,7 +3932,7 @@ static void PrintTitle(void) xOffset = GetStringCenterAlignXOffset(1, titleText, 144); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - PrintEasyChatTextWithColors(0, 1, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY); + PrintEasyChatTextWithColors(0, 1, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); PutWindowTilemap(0); CopyWindowToVram(0, 3); } @@ -4330,7 +4330,7 @@ static void PrintWordSelectText(u8 scrollOffset, u8 numRows) if (!DummyWordCheck(easyChatWord)) PrintEasyChatText(2, 1, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, NULL); else // Never reached - PrintEasyChatTextWithColors(2, 1, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GREY); + PrintEasyChatTextWithColors(2, 1, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GRAY); } } diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 2de27c36bd61..4081aaabf11b 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -288,7 +288,7 @@ static const struct WindowTemplate sMapWindowTemplates[] = static const u8 sTextColors[][3] = { - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_BLUE}, {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}, }; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 4461a5e5dad4..037acd09c629 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -138,8 +138,8 @@ static const struct BgTemplate sHof_BgTemplates[] = static const struct WindowTemplate sHof_WindowTemplate = {0, 2, 2, 0xE, 6, 0xE, 1}; -static const u8 sMonInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}; -static const u8 sPlayerInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; +static const u8 sMonInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}; +static const u8 sPlayerInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; static const u8 sUnused_085E538C[] = {4, 5, 0, 0}; diff --git a/src/link.c b/src/link.c index 0b2f46a34903..8a04b53e5890 100644 --- a/src/link.c +++ b/src/link.c @@ -221,7 +221,7 @@ static const struct WindowTemplate sLinkErrorWindowTemplates[] = { }, DUMMY_WIN_TEMPLATE }; -static const u8 sTextColors[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY }; +static const u8 sTextColors[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; static const u8 sUnusedData[] = {0x00, 0xFF, 0xFE, 0xFF, 0x00}; bool8 IsWirelessAdapterConnected(void) diff --git a/src/menu.c b/src/menu.c index 9957f72037cf..44b39d762d46 100644 --- a/src/menu.c +++ b/src/menu.c @@ -95,7 +95,7 @@ static const struct WindowTemplate sYesNo_WindowTemplates = }; const u16 gUnknown_0860F0B0[] = INCBIN_U16("graphics/interface/860F0B0.gbapal"); -const u8 sTextColors[] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY }; +const u8 sTextColors[] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; // Table of move info icon offsets in graphics/interface_fr/menu.png static const struct MenuInfoIcon sMenuInfoIcons[] = @@ -843,13 +843,13 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo { color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_COLOR_WHITE; - color[2] = TEXT_COLOR_DARK_GREY; + color[2] = TEXT_COLOR_DARK_GRAY; } else { color[0] = TEXT_DYNAMIC_COLOR_6; color[1] = TEXT_COLOR_WHITE; - color[2] = TEXT_COLOR_DARK_GREY; + color[2] = TEXT_COLOR_DARK_GRAY; } PutWindowTilemap(sWindowId); FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 687324612136..4c4be57f04fd 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -73,7 +73,7 @@ static const struct WindowTemplate sUnknown_086253E8[] = static const u8 sPlayerNameTextColors[] = { - TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY + TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY }; static const u8 sEmptyItemName[] = _(""); @@ -840,7 +840,7 @@ void MoveRelearnerPrintText(u8 *str) FillWindowPixelBuffer(3, PIXEL_FILL(1)); gTextFlags.canABSpeedUpPrint = TRUE; speed = GetPlayerTextSpeedDelay(); - AddTextPrinterParameterized2(3, 1, str, speed, NULL, TEXT_COLOR_DARK_GREY, TEXT_COLOR_WHITE, 3); + AddTextPrinterParameterized2(3, 1, str, speed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, 3); } bool16 MoveRelearnerRunTextPrinters(void) diff --git a/src/mevent_801BAAC.c b/src/mevent_801BAAC.c index fa0153e62c9f..2afb9ea70c67 100644 --- a/src/mevent_801BAAC.c +++ b/src/mevent_801BAAC.c @@ -63,8 +63,8 @@ void sub_801C61C(void); extern const struct OamData gOamData_AffineOff_ObjNormal_32x16; const u8 sTextColorTable[][3] = { - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}, - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY} + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} }; const u8 ALIGNED(4) gUnknown_082F0E18[3] = {7, 4, 7}; const struct WindowTemplate gUnknown_082F0E1C[] = { diff --git a/src/naming_screen.c b/src/naming_screen.c index a1dfac88e8fc..b594fe106015 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1929,9 +1929,9 @@ struct TextColor // Needed because of alignment static const struct TextColor sTextColorStruct = { { - {TEXT_DYNAMIC_COLOR_4, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, - {TEXT_DYNAMIC_COLOR_5, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}, - {TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY} + {TEXT_DYNAMIC_COLOR_4, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}, + {TEXT_DYNAMIC_COLOR_5, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}, + {TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} } }; @@ -1999,7 +1999,7 @@ static void DrawKeyboardPageOnDeck(void) static void PrintControls(void) { - const u8 color[3] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY }; + const u8 color[3] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; FillWindowPixelBuffer(sNamingScreen->windows[WIN_BANNER], PIXEL_FILL(15)); AddTextPrinterParameterized3(sNamingScreen->windows[WIN_BANNER], 0, 2, 1, color, 0, gText_MoveOkBack); diff --git a/src/party_menu.c b/src/party_menu.c index 7b77a106706b..8a0c01e257d2 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -4954,7 +4954,7 @@ static void DisplayLevelUpStatsPg1(u8 taskId) s16 *arrayPtr = sPartyMenuInternal->data; arrayPtr[12] = CreateLevelUpStatsWindow(); - DrawLevelUpWindowPg1(arrayPtr[12], arrayPtr, &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY); + DrawLevelUpWindowPg1(arrayPtr[12], arrayPtr, &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(arrayPtr[12], 2); ScheduleBgCopyTilemapToVram(2); } @@ -4963,7 +4963,7 @@ static void DisplayLevelUpStatsPg2(u8 taskId) { s16 *arrayPtr = sPartyMenuInternal->data; - DrawLevelUpWindowPg2(arrayPtr[12], &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY); + DrawLevelUpWindowPg2(arrayPtr[12], &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(arrayPtr[12], 2); ScheduleBgCopyTilemapToVram(2); } diff --git a/src/pokedex.c b/src/pokedex.c index 558c27083e61..2d371f937253 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2318,7 +2318,7 @@ static void PrintMonDexNumAndName(u8 windowId, u8 fontId, const u8* str, u8 left color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_LIGHT_GRAY; AddTextPrinterParameterized4(windowId, fontId, left * 8, (top * 8) + 1, 0, 0, color, -1, str); } @@ -3160,7 +3160,7 @@ static void PrintInfoScreenText(const u8* str, u8 left, u8 top) u8 color[3]; color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_LIGHT_GRAY; AddTextPrinterParameterized4(0, 1, left, top, 0, 0, color, -1, str); } @@ -4457,7 +4457,7 @@ static void PrintInfoSubMenuText(u8 windowId, const u8 *str, u8 left, u8 top) u8 color[3]; color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_LIGHT_GRAY; AddTextPrinterParameterized4(windowId, 1, left, top, 0, 0, color, -1, str); } @@ -4766,7 +4766,7 @@ static void PrintSearchText(const u8 *str, u32 x, u32 y) color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; - color[2] = TEXT_COLOR_DARK_GREY; + color[2] = TEXT_COLOR_DARK_GRAY; AddTextPrinterParameterized4(0, 1, x, y, 0, 0, color, -1, str); } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index a1b7d36aadc7..5c678ed8c4dc 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3628,7 +3628,7 @@ static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos) // "Points" for jump score and "times" for number of jumps in a row static void PrintScoreSuffixes(void) { - u8 color[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; + u8 color[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; PutWindowTilemap(WIN_POINTS); PutWindowTilemap(WIN_TIMES); @@ -3868,7 +3868,7 @@ static void PrintPokeJumpPlayerNames(bool32 highlightSelf) if (!highlightSelf) { for (i = 0; i < playersCount; i++) - PrintPokeJumpPlayerName(i, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY); + PrintPokeJumpPlayerName(i, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); } else { @@ -3877,7 +3877,7 @@ static void PrintPokeJumpPlayerNames(bool32 highlightSelf) for (i = 0; i < playersCount; i++) { if (multiplayerId != i) - PrintPokeJumpPlayerName(i, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY); + PrintPokeJumpPlayerName(i, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); else PrintPokeJumpPlayerName(i, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED); } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index d249381d8531..0a35aa323a9f 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -6884,18 +6884,18 @@ static void SetCursorMonData(void *pokemon, u8 mode) *(txtPtr)++ = CHAR_FEMALE; break; default: - *(txtPtr)++ = TEXT_COLOR_DARK_GREY; + *(txtPtr)++ = TEXT_COLOR_DARK_GRAY; *(txtPtr)++ = TEXT_COLOR_WHITE; - *(txtPtr)++ = TEXT_COLOR_LIGHT_GREY; + *(txtPtr)++ = TEXT_COLOR_LIGHT_GRAY; *(txtPtr)++ = CHAR_UNK_SPACER; break; } *(txtPtr++) = EXT_CTRL_CODE_BEGIN; *(txtPtr++) = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; - *(txtPtr++) = TEXT_COLOR_DARK_GREY; + *(txtPtr++) = TEXT_COLOR_DARK_GRAY; *(txtPtr++) = TEXT_COLOR_WHITE; - *(txtPtr++) = TEXT_COLOR_LIGHT_GREY; + *(txtPtr++) = TEXT_COLOR_LIGHT_GRAY; *(txtPtr++) = CHAR_SPACE; *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 7dcfd7b994c9..3041fdb13cae 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -707,7 +707,7 @@ static void (*const sTextPrinterTasks[])(u8 taskId) = }; static const u8 sMemoNatureTextColor[] = _("{COLOR LIGHT_RED}{SHADOW GREEN}"); -static const u8 sMemoMiscTextColor[] = _("{COLOR WHITE}{SHADOW DARK_GREY}"); // This is also affected by palettes, apparently +static const u8 sMemoMiscTextColor[] = _("{COLOR WHITE}{SHADOW DARK_GRAY}"); // This is also affected by palettes, apparently static const u8 sStatsLeftColumnLayout[] = _("{DYNAMIC 0}/{DYNAMIC 1}\n{DYNAMIC 2}\n{DYNAMIC 3}"); static const u8 sStatsRightColumnLayout[] = _("{DYNAMIC 0}\n{DYNAMIC 1}\n{DYNAMIC 2}"); static const u8 sMovesPPLayout[] = _("{PP}{DYNAMIC 0}/{DYNAMIC 1}"); diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 2a1dda1fad9b..712be6f695bc 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -124,8 +124,8 @@ static const struct WindowTemplate sSearchResultListMenuWindowTemplate = .baseBlock = 20 }; -static const u8 sText_MaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); -static const u8 sText_FemaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +static const u8 sText_MaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); +static const u8 sText_FemaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); static const u8 sText_NoGenderSymbol[] = _("{UNK_SPACER}"); bool32 PokenavCallback_Init_ConditionSearch(void) diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 07e5242fe5b8..9c4d1528658a 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -102,7 +102,7 @@ static const u8 *const sHelpBarTexts[HELPBAR_COUNT] = static const u8 sHelpBarTextColors[3] = { - TEXT_COLOR_RED, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY + TEXT_COLOR_RED, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; static const struct CompressedSpriteSheet gSpinningPokenavSpriteSheet[] = diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 11bb301622af..b3f9331b7397 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -708,7 +708,7 @@ void sub_81C8C64(struct PokenavListMenuWindow *listWindow, u32 a1) void sub_81C8CB4(struct MatchCallWindowState *state, struct PokenavSub17Substruct *list) { - u8 colors[3] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_RED}; + u8 colors[3] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_RED}; list->unk34(state->unk10 + state->unkC * state->windowTopIndex, list->unkTextBuffer); list->unk38(list->listWindow.windowId, state->windowTopIndex, list->listWindow.unkA); diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index f80f959988ac..69326ad23bf8 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -119,8 +119,8 @@ static const struct WindowTemplate sRibbonsMonListWindowTemplate = .baseBlock = 20 }; -static const u8 sText_MaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); -static const u8 sText_FemaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +static const u8 sText_MaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); +static const u8 sText_FemaleSymbol[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); static const u8 sText_NoGenderSymbol[] = _("{UNK_SPACER}"); bool32 PokenavCallback_Init_MonRibbonList(void) diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index cbcd2977622d..8a9061ace985 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -802,7 +802,7 @@ static void AddRibbonCountWindow(struct PokenavSub14 *structPtr) static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) { - u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; + u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; ConvertIntToDecimalStringN(gStringVar1, GetCurrMonRibbonCount(), STR_CONV_MODE_LEFT_ALIGN, 2); DynamicPlaceholderTextUtil_Reset(); @@ -817,7 +817,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) { s32 i; u32 ribbonId = GetRibbonId(); - u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; + u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); if (ribbonId < FIRST_GIFT_RIBBON) @@ -864,8 +864,8 @@ static void AddRibbonSummaryMonNameWindow(struct PokenavSub14 *structPtr) PrintRibbbonsSummaryMonInfo(structPtr); } -static const u8 sMaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); -static const u8 sFemaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +static const u8 sMaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); +static const u8 sFemaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); static const u8 sGenderlessIconString[] = _("{UNK_SPACER}"); static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index facdbdc174d6..529bb75e7f38 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -152,7 +152,7 @@ static void SaveFailedScreenTextPrint(const u8 *text, u8 x, u8 y) color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_LIGHT_GRAY; AddTextPrinterParameterized4(sWindowIds[TEXT_WIN_ID], 1, x * 8, y * 8 + 1, 0, 0, color, 0, text); } diff --git a/src/slot_machine.c b/src/slot_machine.c index 199e01bdd5cf..aa32d5d95452 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -682,7 +682,7 @@ static const struct WindowTemplate sWindowTemplate_InfoBox = .baseBlock = 1 }; -static const u8 sColors_ReeltimeHelp[] = {TEXT_COLOR_LIGHT_GREY, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY}; +static const u8 sColors_ReeltimeHelp[] = {TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}; static bool8 (*const sSlotActions[])(struct Task *task) = { diff --git a/src/start_menu.c b/src/start_menu.c index 2316b85b60a1..7c4b0d5228e6 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -1242,9 +1242,9 @@ static void Task_SaveAfterLinkBattle(u8 taskId) gText_SavingDontTurnOffPower, TEXT_SPEED_FF, NULL, - TEXT_COLOR_DARK_GREY, + TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, - TEXT_COLOR_LIGHT_GREY); + TEXT_COLOR_LIGHT_GRAY); DrawTextBorderOuter(0, 8, 14); PutWindowTilemap(0); CopyWindowToVram(0, 3); diff --git a/src/starter_choose.c b/src/starter_choose.c index f29023d96d12..4b582f839f25 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -153,7 +153,7 @@ static const struct BgTemplate sBgTemplates[3] = }, }; -static const u8 sTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GREY}; +static const u8 sTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY}; static const struct OamData sOam_Hand = { diff --git a/src/strings.c b/src/strings.c index 19d0e3ccad9a..5c9b09c8399e 100644 --- a/src/strings.c +++ b/src/strings.c @@ -981,8 +981,8 @@ const u8 gText_TrainerCloseBy[] = _("That TRAINER is close by.\nTalk to the TRAI const u8 gText_InParty[] = _("IN PARTY"); const u8 gText_Number2[] = _("No. "); const u8 gText_Ribbons[] = _("RIBBONS"); // Unused -const u8 gText_PokemonMaleLv[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_RED WHITE GREEN}♂{COLOR_HIGHLIGHT_SHADOW DARK_GREY WHITE LIGHT_GREY}/{LV}{DYNAMIC 1}"); // Unused -const u8 gText_PokemonFemaleLv[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_GREEN WHITE BLUE}♀{COLOR_HIGHLIGHT_SHADOW DARK_GREY WHITE LIGHT_GREY}/{LV}{DYNAMIC 1}"); // Unused +const u8 gText_PokemonMaleLv[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_RED WHITE GREEN}♂{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}"); // Unused +const u8 gText_PokemonFemaleLv[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_GREEN WHITE BLUE}♀{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}"); // Unused const u8 gText_PokemonNoGenderLv[] = _("{DYNAMIC 0}/{LV}{DYNAMIC 1}"); // Unused const u8 gText_Unknown[] = _("UNKNOWN"); const u8 gText_Call[] = _("CALL"); @@ -990,8 +990,8 @@ const u8 gText_Check[] = _("CHECK"); const u8 gText_Cancel6[] = _("CANCEL"); const u8 gText_NumberF700[] = _("No. {DYNAMIC 0}"); const u8 gText_RibbonsF700[] = _("RIBBONS {DYNAMIC 0}"); -const u8 gText_PokemonMaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_RED WHITE GREEN}♂{COLOR_HIGHLIGHT_SHADOW DARK_GREY WHITE LIGHT_GREY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused -const u8 gText_PokemonFemaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_GREEN WHITE BLUE}♀{COLOR_HIGHLIGHT_SHADOW DARK_GREY WHITE LIGHT_GREY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused +const u8 gText_PokemonMaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_RED WHITE GREEN}♂{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused +const u8 gText_PokemonFemaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_GREEN WHITE BLUE}♀{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused const u8 gText_PokemonNoGenderLv2[] = _("{DYNAMIC 0}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused const u8 gText_CombineFourWordsOrPhrases[] = _("Combine four words or phrases"); const u8 gText_AndMakeYourProfile[] = _("and make your profile."); @@ -1200,18 +1200,18 @@ const u8 gText_Var1sTrainerCard[] = _("{STR_VAR_1}'s TRAINER CARD"); const u8 gText_HallOfFameDebut[] = _("HALL OF FAME DEBUT "); const u8 gText_LinkBattles[] = _("LINK BATTLES"); const u8 gText_LinkCableBattles[] = _("LINK CABLE BATTLES"); -const u8 gText_WinsLosses[] = _("W:{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_1}{COLOR DARK_GREY}{SHADOW LIGHT_GREY} L:{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_2}{COLOR DARK_GREY}{SHADOW LIGHT_GREY}"); +const u8 gText_WinsLosses[] = _("W:{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_1}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY} L:{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_2}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY}"); const u8 gText_PokemonTrades[] = _("POKĂ©MON TRADES"); const u8 gText_UnionTradesAndBattles[] = _("UNION TRADES & BATTLES"); const u8 gText_BerryCrush[] = _("BERRY CRUSH"); const u8 gText_WaitingTrainerFinishReading[] = _("Waiting for the other TRAINER to\nfinish reading your TRAINER CARD."); const u8 gText_PokeblocksWithFriends[] = _("{POKEBLOCK}S W/FRIENDS"); -const u8 gText_NumPokeblocks[] = _("{STR_VAR_1}{COLOR DARK_GREY}{SHADOW LIGHT_GREY}"); +const u8 gText_NumPokeblocks[] = _("{STR_VAR_1}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY}"); const u8 gText_WonContestsWFriends[] = _("WON CONTESTS W/FRIENDS"); const u8 gText_BattlePtsWon[] = _("BATTLE POINTS WON"); -const u8 gText_NumBP[] = _("{STR_VAR_1}{COLOR DARK_GREY}{SHADOW LIGHT_GREY}BP"); +const u8 gText_NumBP[] = _("{STR_VAR_1}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY}BP"); const u8 gText_BattleTower[] = _("BATTLE TOWER"); -const u8 gText_WinsStraight[] = _("W/{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_1}{COLOR DARK_GREY}{SHADOW LIGHT_GREY} STRAIGHT/{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_2}"); +const u8 gText_WinsStraight[] = _("W/{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_1}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY} STRAIGHT/{COLOR RED}{SHADOW LIGHT_RED}{STR_VAR_2}"); const u8 gText_BattleTower2[] = _("BATTLE TOWER"); const u8 gText_BattleDome[] = _("BATTLE DOME"); const u8 gText_BattlePalace[] = _("BATTLE PALACE"); @@ -1228,7 +1228,7 @@ ALIGNED(4) const u8 gText_Facility[] = _("{STR_VAR_1}"); const u8 gText_Give[] = _("Give"); const u8 gText_NoNeed[] = _("No need"); -const u8 gText_ColorLightShadowDarkGrey[] = _("{COLOR LIGHT_GREY}{SHADOW DARK_GREY}"); +const u8 gText_ColorLightShadowDarkGrey[] = _("{COLOR LIGHT_GRAY}{SHADOW DARK_GRAY}"); const u8 gText_ColorBlue[] = _("{COLOR BLUE}"); const u8 gText_ColorTransparent[] = _("{HIGHLIGHT TRANSPARENT}{COLOR TRANSPARENT}"); const u8 gText_CDot[] = _("C."); @@ -1238,9 +1238,9 @@ const u8 gText_PreliminaryResults[] = _("The preliminary results!"); const u8 gText_Round2Results[] = _("Round 2 results!"); const u8 gText_ContestantsMonWon[] = _("{STR_VAR_1}'s {STR_VAR_2} won!"); const u8 gText_CommunicationStandby[] = _("Communication standby…"); -const u8 gText_ColorDarkGrey[] = _("{COLOR DARK_GREY}"); +const u8 gText_ColorDarkGrey[] = _("{COLOR DARK_GRAY}"); const u8 gText_ColorDynamic6WhiteDynamic5[] = _("{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR6 WHITE DYNAMIC_COLOR5}"); // Unused -const u8 gText_HighlightDarkGrey[] = _("{HIGHLIGHT DARK_GREY}"); +const u8 gText_HighlightDarkGrey[] = _("{HIGHLIGHT DARK_GRAY}"); const u8 gText_EmptySpace2[] = _(" "); // Unused const u8 gText_DynColor2Male[] = _("{COLOR DYNAMIC_COLOR2}♂"); const u8 gText_DynColor1Female[] = _("{COLOR DYNAMIC_COLOR1}♀"); @@ -1535,7 +1535,7 @@ const u8 gJPText_Player[] = _("ă—ă¬ă‚¤ă¤ăĽ"); // Unused const u8 gJPText_Sama[] = _("ă•ăľ"); // Unused const u8 gText_DexHoenn[] = _("HOENN"); const u8 gText_DexNational[] = _("NATIONAL"); -const u8 gText_PokedexDiploma[] = _("PLAYER: {CLEAR 0x10}{COLOR RED}{SHADOW LIGHT_RED}{PLAYER}{COLOR DARK_GREY}{SHADOW LIGHT_GREY}\n\nThis document certifies\nthat you have successfully\ncompleted your\n{STR_VAR_1} POKĂ©DEX.\n\n{CLEAR_TO 0x42}{COLOR RED}{SHADOW LIGHT_RED}GAME FREAK"); +const u8 gText_PokedexDiploma[] = _("PLAYER: {CLEAR 0x10}{COLOR RED}{SHADOW LIGHT_RED}{PLAYER}{COLOR DARK_GRAY}{SHADOW LIGHT_GRAY}\n\nThis document certifies\nthat you have successfully\ncompleted your\n{STR_VAR_1} POKĂ©DEX.\n\n{CLEAR_TO 0x42}{COLOR RED}{SHADOW LIGHT_RED}GAME FREAK"); const u8 gJPText_GameFreak[] = _("{COLOR RED}{SHADOW LIGHT_RED}ゲ-ă ă•ăŞ-ク"); // Unused const u8 gText_DiplomaEmpty[] = _("{COLOR RED}{SHADOW LIGHT_RED}"); // Unused const u8 gText_Hoenn[] = _("HOENN"); diff --git a/src/trainer_card.c b/src/trainer_card.c index d4bcf4299ebf..03a7b9219811 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -273,7 +273,7 @@ static const u16 *const sKantoTrainerCardStarPals[] = sKantoTrainerCard4Star_Pal, }; -static const u8 sTrainerCardTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; +static const u8 sTrainerCardTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; static const u8 sTrainerCardStatColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}; static const u8 sTimeColonInvisibleTextColors[6] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT}; diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 3bc6c970b567..059773a0be1a 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -202,7 +202,7 @@ static const u16 *const *const sPrizeListSets[] = }; static const u16 sEReader_Pal[] = INCBIN_U16("graphics/misc/trainer_hill_ereader.gbapal"); -static const u8 sRecordWinColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY}; +static const u8 sRecordWinColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; static const struct TrHillTag *const sDataPerTag[] = { diff --git a/src/union_room.c b/src/union_room.c index a12b385f5ecb..f41cfd45f30d 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -3769,9 +3769,9 @@ static void UR_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str case UR_COLOR_DKE_WHT_LTE: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; - printerTemplate.fgColor = TEXT_COLOR_DARK_GREY; + printerTemplate.fgColor = TEXT_COLOR_DARK_GRAY; printerTemplate.bgColor = TEXT_COLOR_WHITE; - printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GREY; + printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; case UR_COLOR_RED_WHT_LTR: printerTemplate.letterSpacing = 0; @@ -3792,14 +3792,14 @@ static void UR_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_WHITE; printerTemplate.bgColor = TEXT_COLOR_WHITE; - printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GREY; + printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; case UR_COLOR_WHT_DKE_LTE: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_WHITE; - printerTemplate.bgColor = TEXT_COLOR_DARK_GREY; - printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GREY; + printerTemplate.bgColor = TEXT_COLOR_DARK_GRAY; + printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; case UR_COLOR_GRN_DN6_LTB: printerTemplate.letterSpacing = 0; diff --git a/src/union_room_battle.c b/src/union_room_battle.c index c212e4706029..2d1274f6ee22 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -49,7 +49,7 @@ static const struct WindowTemplate sWindowTemplates[] = { DUMMY_WIN_TEMPLATE }; -static const u8 sTextColors[] = { TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY }; +static const u8 sTextColors[] = { TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY }; static void CB2_SetUpPartiesAndStartBattle(void) { diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 72557aefd531..dbc71d6345d5 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -319,13 +319,13 @@ static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 * { case COLORMODE_NORMAL: color[0] = TEXT_COLOR_TRANSPARENT; - color[1] = TEXT_COLOR_DARK_GREY; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[1] = TEXT_COLOR_DARK_GRAY; + color[2] = TEXT_COLOR_LIGHT_GRAY; break; case COLORMODE_WHITE_LGRAY: color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_COLOR_WHITE; - color[2] = TEXT_COLOR_LIGHT_GREY; + color[2] = TEXT_COLOR_LIGHT_GRAY; break; case COLORMODE_RED: color[0] = TEXT_COLOR_TRANSPARENT; @@ -340,7 +340,7 @@ static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 * case COLORMODE_WHITE_DGRAY: color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_COLOR_WHITE; - color[2] = TEXT_COLOR_DARK_GREY; + color[2] = TEXT_COLOR_DARK_GRAY; break; } From 72ba8cf58de8297c56d2269e0519064dc2de5f76 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 9 Apr 2021 12:41:02 -0400 Subject: [PATCH 105/762] Document pokemon animation types --- include/constants/battle_anim.h | 29 - include/pokemon_animation.h | 182 ++ include/pokemon_summary_screen.h | 3 +- src/pokeball.c | 2 +- src/pokemon.c | 910 ++++---- src/pokemon_animation.c | 3500 +++++++++++++++--------------- src/pokemon_summary_screen.c | 23 +- 7 files changed, 2374 insertions(+), 2275 deletions(-) diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 5f8900bf66b7..4622876cc07f 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -410,33 +410,4 @@ #define ANIM_WEATHER_SANDSTORM 3 #define ANIM_WEATHER_HAIL 4 -// Battle mon back animations. -#define BACK_ANIM_NONE 0x00 -#define BACK_ANIM_H_SLIDE_QUICK 0x01 -#define BACK_ANIM_H_SLIDE 0x02 -#define BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1 0x03 -#define BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2 0x04 -#define BACK_ANIM_SHRINK_GROW_1 0x05 -#define BACK_ANIM_GROW_1 0x06 -#define BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE 0x07 -#define BACK_ANIM_HORIZONTAL_SHAKE 0x08 -#define BACK_ANIM_VERTICAL_SHAKE 0x09 -#define BACK_ANIM_V_SHAKE_WITH_H_SLIDE 0x0a -#define BACK_ANIM_VERTICAL_STRETCH 0x0b -#define BACK_ANIM_HORIZONTAL_STRETCH 0x0c -#define BACK_ANIM_GROW_2 0x0d -#define BACK_ANIM_V_SHAKE_WITH_PAUSE 0x0e -#define BACK_ANIM_CIRCLE_MOVE_CLOCKWISE 0x0f -#define BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL 0x10 -#define BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE 0x11 -#define BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE 0x12 -#define BACK_ANIM_DIP_RIGHT_SIDE 0x13 -#define BACK_ANIM_SHRINK_GROW_2 0x14 -#define BACK_ANIM_JOLT_RIGHT 0x15 -#define BACK_ANIM_FLASH_YELLOW_WITH_SHAKE 0x16 -#define BACK_ANIM_FADE_RED_WITH_SHAKE 0x17 -#define BACK_ANIM_FADE_GREEN_WITH_SHAKE 0x18 -#define BACK_ANIM_FADE_BLUE_WITH_SHAKE 0x19 - - #endif // GUARD_CONSTANTS_BATTLE_ANIM_H diff --git a/include/pokemon_animation.h b/include/pokemon_animation.h index c1ab8d817d66..5174c8a776c2 100644 --- a/include/pokemon_animation.h +++ b/include/pokemon_animation.h @@ -7,4 +7,186 @@ void StartMonSummaryAnimation(struct Sprite *sprite, u8 frontAnimId); void LaunchAnimationTaskForBackSprite(struct Sprite *sprite, u8 backAnimSet); void SetSpriteCB_MonAnimDummy(struct Sprite *sprite); +// PokĂ©mon back animation sets +#define BACK_ANIM_NONE 0 +#define BACK_ANIM_H_VIBRATE 1 +#define BACK_ANIM_H_SLIDE 2 +#define BACK_ANIM_H_SPRING 3 +#define BACK_ANIM_H_SPRING_REPEATED 4 +#define BACK_ANIM_SHRINK_GROW 5 +#define BACK_ANIM_GROW 6 +#define BACK_ANIM_CIRCLE_COUNTERCLOCKWISE 7 +#define BACK_ANIM_H_SHAKE 8 +#define BACK_ANIM_V_SHAKE 9 +#define BACK_ANIM_V_SHAKE_H_SLIDE 10 +#define BACK_ANIM_V_STRETCH 11 +#define BACK_ANIM_H_STRETCH 12 +#define BACK_ANIM_GROW_STUTTER 13 +#define BACK_ANIM_V_SHAKE_LOW 14 +#define BACK_ANIM_TRIANGLE_DOWN 15 +#define BACK_ANIM_CONCAVE_ARC_LARGE 16 +#define BACK_ANIM_CONVEX_DOUBLE_ARC 17 +#define BACK_ANIM_CONCAVE_ARC_SMALL 18 +#define BACK_ANIM_DIP_RIGHT_SIDE 19 +#define BACK_ANIM_SHRINK_GROW_VIBRATE 20 +#define BACK_ANIM_JOLT_RIGHT 21 +#define BACK_ANIM_SHAKE_FLASH_YELLOW 22 +#define BACK_ANIM_SHAKE_GLOW_RED 23 +#define BACK_ANIM_SHAKE_GLOW_GREEN 24 +#define BACK_ANIM_SHAKE_GLOW_BLUE 25 + +// PokĂ©mon animation function ids (for front and back) +// Each front anim uses 1, and each back anim uses a set of 3 +#define ANIM_V_SQUISH_AND_BOUNCE 0 +#define ANIM_CIRCULAR_STRETCH_TWICE 1 +#define ANIM_H_VIBRATE 2 +#define ANIM_H_SLIDE 3 +#define ANIM_V_SLIDE 4 +#define ANIM_BOUNCE_ROTATE_TO_SIDES 5 +#define ANIM_V_JUMPS_H_JUMPS 6 +#define ANIM_ROTATE_TO_SIDES 7 +#define ANIM_ROTATE_TO_SIDES_TWICE 8 +#define ANIM_GROW_VIBRATE 9 +#define ANIM_ZIGZAG_FAST 10 +#define ANIM_SWING_CONCAVE 11 +#define ANIM_SWING_CONCAVE_FAST 12 +#define ANIM_SWING_CONVEX 13 +#define ANIM_SWING_CONVEX_FAST 14 +#define ANIM_H_SHAKE 15 +#define ANIM_V_SHAKE 16 +#define ANIM_CIRCULAR_VIBRATE 17 +#define ANIM_TWIST 18 +#define ANIM_SHRINK_GROW 19 +#define ANIM_CIRCLE_C_CLOCKWISE 20 +#define ANIM_GLOW_BLACK 21 +#define ANIM_H_STRETCH 22 +#define ANIM_V_STRETCH 23 +#define ANIM_RISING_WOBBLE 24 +#define ANIM_V_SHAKE_TWICE 25 +#define ANIM_TIP_MOVE_FORWARD 26 +#define ANIM_H_PIVOT 27 +#define ANIM_V_SLIDE_WOBBLE 28 +#define ANIM_H_SLIDE_WOBBLE 29 +#define ANIM_V_JUMPS_BIG 30 +#define ANIM_SPIN_LONG 31 +#define ANIM_GLOW_ORANGE 32 +#define ANIM_GLOW_RED 33 +#define ANIM_GLOW_BLUE 34 +#define ANIM_GLOW_YELLOW 35 +#define ANIM_GLOW_PURPLE 36 +#define ANIM_BACK_AND_LUNGE 37 +#define ANIM_BACK_FLIP 38 +#define ANIM_FLICKER 39 +#define ANIM_BACK_FLIP_BIG 40 +#define ANIM_FRONT_FLIP 41 +#define ANIM_TUMBLING_FRONT_FLIP 42 +#define ANIM_FIGURE_8 43 +#define ANIM_FLASH_YELLOW 44 +#define ANIM_SWING_CONCAVE_FAST_SHORT 45 +#define ANIM_SWING_CONVEX_FAST_SHORT 46 +#define ANIM_ROTATE_UP_SLAM_DOWN 47 +#define ANIM_DEEP_V_SQUISH_AND_BOUNCE 48 +#define ANIM_H_JUMPS 49 +#define ANIM_H_JUMPS_V_STRETCH 50 +#define ANIM_ROTATE_TO_SIDES_FAST 51 +#define ANIM_ROTATE_UP_TO_SIDES 52 +#define ANIM_FLICKER_INCREASING 53 +#define ANIM_TIP_HOP_FORWARD 54 +#define ANIM_PIVOT_SHAKE 55 +#define ANIM_TIP_AND_SHAKE 56 +#define ANIM_VIBRATE_TO_CORNERS 57 +#define ANIM_GROW_IN_STAGES 58 +#define ANIM_V_SPRING 59 +#define ANIM_V_REPEATED_SPRING 60 +#define ANIM_SPRING_RISING 61 +#define ANIM_H_SPRING 62 +#define ANIM_H_REPEATED_SPRING_SLOW 63 +#define ANIM_H_SLIDE_SHRINK 64 +#define ANIM_LUNGE_GROW 65 +#define ANIM_CIRCLE_INTO_BG 66 +#define ANIM_RAPID_H_HOPS 67 +#define ANIM_FOUR_PETAL 68 +#define ANIM_V_SQUISH_AND_BOUNCE_SLOW 69 +#define ANIM_H_SLIDE_SLOW 70 +#define ANIM_V_SLIDE_SLOW 71 +#define ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL 72 +#define ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW 73 +#define ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL_SLOW 74 +#define ANIM_ZIGZAG_SLOW 75 +#define ANIM_H_SHAKE_SLOW 76 +#define ANIM_V_SHAKE_SLOW 77 +#define ANIM_TWIST_TWICE 78 +#define ANIM_CIRCLE_C_CLOCKWISE_SLOW 79 +#define ANIM_V_SHAKE_TWICE_SLOW 80 +#define ANIM_V_SLIDE_WOBBLE_SMALL 81 +#define ANIM_V_JUMPS_SMALL 82 +#define ANIM_SPIN 83 +#define ANIM_TUMBLING_FRONT_FLIP_TWICE 84 +#define ANIM_DEEP_V_SQUISH_AND_BOUNCE_TWICE 85 +#define ANIM_H_JUMPS_V_STRETCH_TWICE 86 +#define ANIM_V_SHAKE_BACK 87 +#define ANIM_V_SHAKE_BACK_SLOW 88 +#define ANIM_V_SHAKE_H_SLIDE_SLOW 89 +#define ANIM_V_STRETCH_BOTH_ENDS_SLOW 90 +#define ANIM_H_STRETCH_FAR_SLOW 91 +#define ANIM_V_SHAKE_LOW_TWICE 92 +#define ANIM_H_SHAKE_FAST 93 +#define ANIM_H_SLIDE_FAST 94 +#define ANIM_H_VIBRATE_FAST 95 +#define ANIM_H_VIBRATE_FASTEST 96 +#define ANIM_V_SHAKE_BACK_FAST 97 +#define ANIM_V_SHAKE_LOW_TWICE_SLOW 98 +#define ANIM_V_SHAKE_LOW_TWICE_FAST 99 +#define ANIM_CIRCLE_C_CLOCKWISE_LONG 100 +#define ANIM_GROW_STUTTER_SLOW 101 +#define ANIM_V_SHAKE_H_SLIDE 102 +#define ANIM_V_SHAKE_H_SLIDE_FAST 103 +#define ANIM_TRIANGLE_DOWN_SLOW 104 +#define ANIM_TRIANGLE_DOWN 105 +#define ANIM_TRIANGLE_DOWN_TWICE 106 +#define ANIM_GROW 107 +#define ANIM_GROW_TWICE 108 +#define ANIM_H_SPRING_FAST 109 +#define ANIM_H_SPRING_SLOW 110 +#define ANIM_H_REPEATED_SPRING_FAST 111 +#define ANIM_H_REPEATED_SPRING 112 +#define ANIM_SHRINK_GROW_FAST 113 +#define ANIM_SHRINK_GROW_SLOW 114 +#define ANIM_V_STRETCH_BOTH_ENDS 115 +#define ANIM_V_STRETCH_BOTH_ENDS_TWICE 116 +#define ANIM_H_STRETCH_FAR_TWICE 117 +#define ANIM_H_STRETCH_FAR 118 +#define ANIM_GROW_STUTTER_TWICE 119 +#define ANIM_GROW_STUTTER 120 +#define ANIM_CONCAVE_ARC_LARGE_SLOW 121 +#define ANIM_CONCAVE_ARC_LARGE 122 +#define ANIM_CONCAVE_ARC_LARGE_TWICE 123 +#define ANIM_CONVEX_DOUBLE_ARC_SLOW 124 +#define ANIM_CONVEX_DOUBLE_ARC 125 +#define ANIM_CONVEX_DOUBLE_ARC_TWICE 126 +#define ANIM_CONCAVE_ARC_SMALL_SLOW 127 +#define ANIM_CONCAVE_ARC_SMALL 128 +#define ANIM_CONCAVE_ARC_SMALL_TWICE 129 +#define ANIM_H_DIP 130 +#define ANIM_H_DIP_FAST 131 +#define ANIM_H_DIP_TWICE 132 +#define ANIM_SHRINK_GROW_VIBRATE_FAST 133 +#define ANIM_SHRINK_GROW_VIBRATE 134 +#define ANIM_SHRINK_GROW_VIBRATE_SLOW 135 +#define ANIM_JOLT_RIGHT_FAST 136 +#define ANIM_JOLT_RIGHT 137 +#define ANIM_JOLT_RIGHT_SLOW 138 +#define ANIM_SHAKE_FLASH_YELLOW_FAST 139 +#define ANIM_SHAKE_FLASH_YELLOW 140 +#define ANIM_SHAKE_FLASH_YELLOW_SLOW 141 +#define ANIM_SHAKE_GLOW_RED_FAST 142 +#define ANIM_SHAKE_GLOW_RED 143 +#define ANIM_SHAKE_GLOW_RED_SLOW 144 +#define ANIM_SHAKE_GLOW_GREEN_FAST 145 +#define ANIM_SHAKE_GLOW_GREEN 146 +#define ANIM_SHAKE_GLOW_GREEN_SLOW 147 +#define ANIM_SHAKE_GLOW_BLUE_FAST 148 +#define ANIM_SHAKE_GLOW_BLUE 149 +#define ANIM_SHAKE_GLOW_BLUE_SLOW 150 + #endif // GUARD_POKEMON_ANIMATION_H diff --git a/include/pokemon_summary_screen.h b/include/pokemon_summary_screen.h index 6413dcdeca7a..151ea3af8d71 100755 --- a/include/pokemon_summary_screen.h +++ b/include/pokemon_summary_screen.h @@ -12,8 +12,7 @@ void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, void ShowSelectMovePokemonSummaryScreen(struct Pokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void), u16 newMove); void ShowPokemonSummaryScreenSet40EF(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)); u8 GetMoveSlotToReplace(void); -void SummaryScreen_SetUnknownTaskId(u8 taskId); -void SummaryScreen_DestroyUnknownTask(void); +void SummaryScreen_SetAnimDelayTaskId(u8 taskId); // The Pokemon Summary Screen can operate in different modes. Certain features, // such as move re-ordering, are available in the different modes. diff --git a/src/pokeball.c b/src/pokeball.c index 678b9da33ea0..77d2b119c9fd 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -791,7 +791,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) gTasks[taskId].tCryTaskWantedCry = wantedCryCase; gTasks[taskId].tCryTaskBattler = battlerId; gTasks[taskId].tCryTaskMonSpriteId = gBattlerSpriteIds[sprite->sBattler]; - gTasks[taskId].tCryTaskMonPtr1 = (u32)(mon) >> 0x10; + gTasks[taskId].tCryTaskMonPtr1 = (u32)(mon) >> 16; gTasks[taskId].tCryTaskMonPtr2 = (u32)(mon); gTasks[taskId].tCryTaskState = 0; } diff --git a/src/pokemon.c b/src/pokemon.c index e28fba1b489d..5166070f9d66 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1391,476 +1391,450 @@ const s8 gNatureStatTable[NUM_NATURES][NUM_NATURE_STATS] = static const u8 sMonFrontAnimIdsTable[] = { - [SPECIES_BULBASAUR - 1] = 0x06, - [SPECIES_IVYSAUR - 1] = 0x17, - [SPECIES_VENUSAUR - 1] = 0x2f, - [SPECIES_CHARMANDER - 1] = 0x52, - [SPECIES_CHARMELEON - 1] = 0x25, - [SPECIES_CHARIZARD - 1] = 0x10, - [SPECIES_SQUIRTLE - 1] = 0x0b, - [SPECIES_WARTORTLE - 1] = 0x13, - [SPECIES_BLASTOISE - 1] = 0x19, - [SPECIES_CATERPIE - 1] = 0x0b, - [SPECIES_METAPOD - 1] = 0x0b, - [SPECIES_BUTTERFREE - 1] = 0x1d, - [SPECIES_WEEDLE - 1] = 0x46, - [SPECIES_KAKUNA - 1] = 0x20, - [SPECIES_BEEDRILL - 1] = 0x02, - [SPECIES_PIDGEY - 1] = 0x47, - [SPECIES_PIDGEOTTO - 1] = 0x17, - [SPECIES_PIDGEOT - 1] = 0x29, - [SPECIES_RATTATA - 1] = 0x43, - [SPECIES_RATICATE - 1] = 0x2b, - [SPECIES_SPEAROW - 1] = 0x18, - [SPECIES_FEAROW - 1] = 0x2b, - [SPECIES_EKANS - 1] = 0x16, - [SPECIES_ARBOK - 1] = 0x17, - [SPECIES_PIKACHU - 1] = 0x2c, - [SPECIES_RAICHU - 1] = 0x17, - [SPECIES_SANDSHREW - 1] = 0x2d, - [SPECIES_SANDSLASH - 1] = 0x17, - [SPECIES_NIDORAN_F - 1] = 0x00, - [SPECIES_NIDORINA - 1] = 0x17, - [SPECIES_NIDOQUEEN - 1] = 0x0f, - [SPECIES_NIDORAN_M - 1] = 0x09, - [SPECIES_NIDORINO - 1] = 0x13, - [SPECIES_NIDOKING - 1] = 0x0f, - [SPECIES_CLEFAIRY - 1] = 0x00, - [SPECIES_CLEFABLE - 1] = 0x4a, - [SPECIES_VULPIX - 1] = 0x17, - [SPECIES_NINETALES - 1] = 0x10, - [SPECIES_JIGGLYPUFF - 1] = 0x48, - [SPECIES_WIGGLYTUFF - 1] = 0x31, - [SPECIES_ZUBAT - 1] = 0x00, - [SPECIES_GOLBAT - 1] = 0x1d, - [SPECIES_ODDISH - 1] = 0x00, - [SPECIES_GLOOM - 1] = 0x45, - [SPECIES_VILEPLUME - 1] = 0x49, - [SPECIES_PARAS - 1] = 0x46, - [SPECIES_PARASECT - 1] = 0x0f, - [SPECIES_VENONAT - 1] = 0x06, - [SPECIES_VENOMOTH - 1] = 0x4b, - [SPECIES_DIGLETT - 1] = 0x10, - [SPECIES_DUGTRIO - 1] = 0x4c, - [SPECIES_MEOWTH - 1] = 0x52, - [SPECIES_PERSIAN - 1] = 0x17, - [SPECIES_PSYDUCK - 1] = 0x06, - [SPECIES_GOLDUCK - 1] = 0x4c, - [SPECIES_MANKEY - 1] = 0x32, - [SPECIES_PRIMEAPE - 1] = 0x48, - [SPECIES_GROWLITHE - 1] = 0x25, - [SPECIES_ARCANINE - 1] = 0x02, - [SPECIES_POLIWAG - 1] = 0x00, - [SPECIES_POLIWHIRL - 1] = 0x32, - [SPECIES_POLIWRATH - 1] = 0x19, - [SPECIES_ABRA - 1] = 0x31, - [SPECIES_KADABRA - 1] = 0x09, - [SPECIES_ALAKAZAM - 1] = 0x17, - [SPECIES_MACHOP - 1] = 0x00, - [SPECIES_MACHOKE - 1] = 0x10, - [SPECIES_MACHAMP - 1] = 0x31, - [SPECIES_BELLSPROUT - 1] = 0x17, - [SPECIES_WEEPINBELL - 1] = 0x0d, - [SPECIES_VICTREEBEL - 1] = 0x32, - [SPECIES_TENTACOOL - 1] = 0x00, - [SPECIES_TENTACRUEL - 1] = 0x00, - [SPECIES_GEODUDE - 1] = 0x48, - [SPECIES_GRAVELER - 1] = 0x48, - [SPECIES_GOLEM - 1] = 0x2f, - [SPECIES_PONYTA - 1] = 0x20, - [SPECIES_RAPIDASH - 1] = 0x11, - [SPECIES_SLOWPOKE - 1] = 0x45, - [SPECIES_SLOWBRO - 1] = 0x0b, - [SPECIES_MAGNEMITE - 1] = 0x54, - [SPECIES_MAGNETON - 1] = 0x2c, - [SPECIES_FARFETCHD - 1] = 0x48, - [SPECIES_DODUO - 1] = 0x4c, - [SPECIES_DODRIO - 1] = 0x41, - [SPECIES_SEEL - 1] = 0x0b, - [SPECIES_DEWGONG - 1] = 0x45, - [SPECIES_GRIMER - 1] = 0x46, - [SPECIES_MUK - 1] = 0x30, - [SPECIES_SHELLDER - 1] = 0x12, - [SPECIES_CLOYSTER - 1] = 0x1d, - [SPECIES_GASTLY - 1] = 0x15, - [SPECIES_HAUNTER - 1] = 0x35, - [SPECIES_GENGAR - 1] = 0x3a, - [SPECIES_ONIX - 1] = 0x43, - [SPECIES_DROWZEE - 1] = 0x4f, - [SPECIES_HYPNO - 1] = 0x09, - [SPECIES_KRABBY - 1] = 0x03, - [SPECIES_KINGLER - 1] = 0x4b, - [SPECIES_VOLTORB - 1] = 0x00, - [SPECIES_ELECTRODE - 1] = 0x00, - [SPECIES_EXEGGCUTE - 1] = 0x46, - [SPECIES_EXEGGUTOR - 1] = 0x32, - [SPECIES_CUBONE - 1] = 0x48, - [SPECIES_MAROWAK - 1] = 0x05, - [SPECIES_HITMONLEE - 1] = 0x16, - [SPECIES_HITMONCHAN - 1] = 0x09, - [SPECIES_LICKITUNG - 1] = 0x45, - [SPECIES_KOFFING - 1] = 0x13, - [SPECIES_WEEZING - 1] = 0x04, - [SPECIES_RHYHORN - 1] = 0x10, - [SPECIES_RHYDON - 1] = 0x13, - [SPECIES_CHANSEY - 1] = 0x45, - [SPECIES_TANGELA - 1] = 0x48, - [SPECIES_KANGASKHAN - 1] = 0x17, - [SPECIES_HORSEA - 1] = 0x12, - [SPECIES_SEADRA - 1] = 0x04, - [SPECIES_GOLDEEN - 1] = 0x0d, - [SPECIES_SEAKING - 1] = 0x1c, - [SPECIES_STARYU - 1] = 0x4e, - [SPECIES_STARMIE - 1] = 0x12, - [SPECIES_MR_MIME - 1] = 0x46, - [SPECIES_SCYTHER - 1] = 0x02, - [SPECIES_JYNX - 1] = 0x17, - [SPECIES_ELECTABUZZ - 1] = 0x2c, - [SPECIES_MAGMAR - 1] = 0x0f, - [SPECIES_PINSIR - 1] = 0x09, - [SPECIES_TAUROS - 1] = 0x19, - [SPECIES_MAGIKARP - 1] = 0x05, - [SPECIES_GYARADOS - 1] = 0x48, - [SPECIES_LAPRAS - 1] = 0x17, - [SPECIES_DITTO - 1] = 0x01, - [SPECIES_EEVEE - 1] = 0x17, - [SPECIES_VAPOREON - 1] = 0x17, - [SPECIES_JOLTEON - 1] = 0x00, - [SPECIES_FLAREON - 1] = 0x17, - [SPECIES_PORYGON - 1] = 0x52, - [SPECIES_OMANYTE - 1] = 0x51, - [SPECIES_OMASTAR - 1] = 0x09, - [SPECIES_KABUTO - 1] = 0x1d, - [SPECIES_KABUTOPS - 1] = 0x0f, - [SPECIES_AERODACTYL - 1] = 0x47, - [SPECIES_SNORLAX - 1] = 0x0b, - [SPECIES_ARTICUNO - 1] = 0x09, - [SPECIES_ZAPDOS - 1] = 0x2c, - [SPECIES_MOLTRES - 1] = 0x45, - [SPECIES_DRATINI - 1] = 0x00, - [SPECIES_DRAGONAIR - 1] = 0x10, - [SPECIES_DRAGONITE - 1] = 0x47, - [SPECIES_MEWTWO - 1] = 0x09, - [SPECIES_MEW - 1] = 0x0d, - [SPECIES_CHIKORITA - 1] = 0x00, - [SPECIES_BAYLEEF - 1] = 0x00, - [SPECIES_MEGANIUM - 1] = 0x17, - [SPECIES_CYNDAQUIL - 1] = 0x52, - [SPECIES_QUILAVA - 1] = 0x17, - [SPECIES_TYPHLOSION - 1] = 0x10, - [SPECIES_TOTODILE - 1] = 0x31, - [SPECIES_CROCONAW - 1] = 0x0f, - [SPECIES_FERALIGATR - 1] = 0x0f, - [SPECIES_SENTRET - 1] = 0x00, - [SPECIES_FURRET - 1] = 0x32, - [SPECIES_HOOTHOOT - 1] = 0x47, - [SPECIES_NOCTOWL - 1] = 0x17, - [SPECIES_LEDYBA - 1] = 0x52, - [SPECIES_LEDIAN - 1] = 0x47, - [SPECIES_SPINARAK - 1] = 0x4f, - [SPECIES_ARIADOS - 1] = 0x0f, - [SPECIES_CROBAT - 1] = 0x00, - [SPECIES_CHINCHOU - 1] = 0x45, - [SPECIES_LANTURN - 1] = 0x51, - [SPECIES_PICHU - 1] = 0x1e, - [SPECIES_CLEFFA - 1] = 0x52, - [SPECIES_IGGLYBUFF - 1] = 0x0c, - [SPECIES_TOGEPI - 1] = 0x0b, - [SPECIES_TOGETIC - 1] = 0x00, - [SPECIES_NATU - 1] = 0x31, - [SPECIES_XATU - 1] = 0x09, - [SPECIES_MAREEP - 1] = 0x00, - [SPECIES_FLAAFFY - 1] = 0x1e, - [SPECIES_AMPHAROS - 1] = 0x2c, - [SPECIES_BELLOSSOM - 1] = 0x0b, - [SPECIES_MARILL - 1] = 0x00, - [SPECIES_AZUMARILL - 1] = 0x4a, - [SPECIES_SUDOWOODO - 1] = 0x46, - [SPECIES_POLITOED - 1] = 0x32, - [SPECIES_HOPPIP - 1] = 0x1c, - [SPECIES_SKIPLOOM - 1] = 0x18, - [SPECIES_JUMPLUFF - 1] = 0x51, - [SPECIES_AIPOM - 1] = 0x32, - [SPECIES_SUNKERN - 1] = 0x52, - [SPECIES_SUNFLORA - 1] = 0x00, - [SPECIES_YANMA - 1] = 0x2b, - [SPECIES_WOOPER - 1] = 0x00, - [SPECIES_QUAGSIRE - 1] = 0x16, - [SPECIES_ESPEON - 1] = 0x09, - [SPECIES_UMBREON - 1] = 0x10, - [SPECIES_MURKROW - 1] = 0x00, - [SPECIES_SLOWKING - 1] = 0x13, - [SPECIES_MISDREAVUS - 1] = 0x1c, - [SPECIES_UNOWN - 1] = 0x0a, - [SPECIES_WOBBUFFET - 1] = 0x30, - [SPECIES_GIRAFARIG - 1] = 0x1e, - [SPECIES_PINECO - 1] = 0x0b, - [SPECIES_FORRETRESS - 1] = 0x10, - [SPECIES_DUNSPARCE - 1] = 0x00, - [SPECIES_GLIGAR - 1] = 0x13, - [SPECIES_STEELIX - 1] = 0x0f, - [SPECIES_SNUBBULL - 1] = 0x17, - [SPECIES_GRANBULL - 1] = 0x10, - [SPECIES_QWILFISH - 1] = 0x3a, - [SPECIES_SCIZOR - 1] = 0x02, - [SPECIES_SHUCKLE - 1] = 0x0b, - [SPECIES_HERACROSS - 1] = 0x41, - [SPECIES_SNEASEL - 1] = 0x16, - [SPECIES_TEDDIURSA - 1] = 0x17, - [SPECIES_URSARING - 1] = 0x10, - [SPECIES_SLUGMA - 1] = 0x17, - [SPECIES_MAGCARGO - 1] = 0x17, - [SPECIES_SWINUB - 1] = 0x00, - [SPECIES_PILOSWINE - 1] = 0x0f, - [SPECIES_CORSOLA - 1] = 0x03, - [SPECIES_REMORAID - 1] = 0x52, - [SPECIES_OCTILLERY - 1] = 0x17, - [SPECIES_DELIBIRD - 1] = 0x52, - [SPECIES_MANTINE - 1] = 0x0d, - [SPECIES_SKARMORY - 1] = 0x17, - [SPECIES_HOUNDOUR - 1] = 0x17, - [SPECIES_HOUNDOOM - 1] = 0x10, - [SPECIES_KINGDRA - 1] = 0x42, - [SPECIES_PHANPY - 1] = 0x32, - [SPECIES_DONPHAN - 1] = 0x19, - [SPECIES_PORYGON2 - 1] = 0x00, - [SPECIES_STANTLER - 1] = 0x00, - [SPECIES_SMEARGLE - 1] = 0x31, - [SPECIES_TYROGUE - 1] = 0x16, - [SPECIES_HITMONTOP - 1] = 0x02, - [SPECIES_SMOOCHUM - 1] = 0x09, - [SPECIES_ELEKID - 1] = 0x2c, - [SPECIES_MAGBY - 1] = 0x00, - [SPECIES_MILTANK - 1] = 0x45, - [SPECIES_BLISSEY - 1] = 0x00, - [SPECIES_RAIKOU - 1] = 0x2c, - [SPECIES_ENTEI - 1] = 0x09, - [SPECIES_SUICUNE - 1] = 0x10, - [SPECIES_LARVITAR - 1] = 0x52, - [SPECIES_PUPITAR - 1] = 0x10, - [SPECIES_TYRANITAR - 1] = 0x0f, - [SPECIES_LUGIA - 1] = 0x3a, - [SPECIES_HO_OH - 1] = 0x09, - [SPECIES_CELEBI - 1] = 0x18, - [SPECIES_OLD_UNOWN_B - 1] = 0x00, - [SPECIES_OLD_UNOWN_C - 1] = 0x00, - [SPECIES_OLD_UNOWN_D - 1] = 0x00, - [SPECIES_OLD_UNOWN_E - 1] = 0x00, - [SPECIES_OLD_UNOWN_F - 1] = 0x00, - [SPECIES_OLD_UNOWN_G - 1] = 0x00, - [SPECIES_OLD_UNOWN_H - 1] = 0x00, - [SPECIES_OLD_UNOWN_I - 1] = 0x00, - [SPECIES_OLD_UNOWN_J - 1] = 0x00, - [SPECIES_OLD_UNOWN_K - 1] = 0x00, - [SPECIES_OLD_UNOWN_L - 1] = 0x00, - [SPECIES_OLD_UNOWN_M - 1] = 0x00, - [SPECIES_OLD_UNOWN_N - 1] = 0x00, - [SPECIES_OLD_UNOWN_O - 1] = 0x00, - [SPECIES_OLD_UNOWN_P - 1] = 0x00, - [SPECIES_OLD_UNOWN_Q - 1] = 0x00, - [SPECIES_OLD_UNOWN_R - 1] = 0x00, - [SPECIES_OLD_UNOWN_S - 1] = 0x00, - [SPECIES_OLD_UNOWN_T - 1] = 0x00, - [SPECIES_OLD_UNOWN_U - 1] = 0x00, - [SPECIES_OLD_UNOWN_V - 1] = 0x00, - [SPECIES_OLD_UNOWN_W - 1] = 0x00, - [SPECIES_OLD_UNOWN_X - 1] = 0x00, - [SPECIES_OLD_UNOWN_Y - 1] = 0x00, - [SPECIES_OLD_UNOWN_Z - 1] = 0x00, - [SPECIES_TREECKO - 1] = 0x00, - [SPECIES_GROVYLE - 1] = 0x17, - [SPECIES_SCEPTILE - 1] = 0x10, - [SPECIES_TORCHIC - 1] = 0x16, - [SPECIES_COMBUSKEN - 1] = 0x06, - [SPECIES_BLAZIKEN - 1] = 0x0f, - [SPECIES_MUDKIP - 1] = 0x01, - [SPECIES_MARSHTOMP - 1] = 0x04, - [SPECIES_SWAMPERT - 1] = 0x1e, - [SPECIES_POOCHYENA - 1] = 0x10, - [SPECIES_MIGHTYENA - 1] = 0x10, - [SPECIES_ZIGZAGOON - 1] = 0x03, - [SPECIES_LINOONE - 1] = 0x09, - [SPECIES_WURMPLE - 1] = 0x00, - [SPECIES_SILCOON - 1] = 0x00, - [SPECIES_BEAUTIFLY - 1] = 0x04, - [SPECIES_CASCOON - 1] = 0x04, - [SPECIES_DUSTOX - 1] = 0x06, - [SPECIES_LOTAD - 1] = 0x00, - [SPECIES_LOMBRE - 1] = 0x00, - [SPECIES_LUDICOLO - 1] = 0x49, - [SPECIES_SEEDOT - 1] = 0x05, - [SPECIES_NUZLEAF - 1] = 0x00, - [SPECIES_SHIFTRY - 1] = 0x02, - [SPECIES_NINCADA - 1] = 0x00, - [SPECIES_NINJASK - 1] = 0x46, - [SPECIES_SHEDINJA - 1] = 0x1c, - [SPECIES_TAILLOW - 1] = 0x1e, - [SPECIES_SWELLOW - 1] = 0x01, - [SPECIES_SHROOMISH - 1] = 0x00, - [SPECIES_BRELOOM - 1] = 0x00, - [SPECIES_SPINDA - 1] = 0x31, - [SPECIES_WINGULL - 1] = 0x1b, - [SPECIES_PELIPPER - 1] = 0x1c, - [SPECIES_SURSKIT - 1] = 0x00, - [SPECIES_MASQUERAIN - 1] = 0x00, - [SPECIES_WAILMER - 1] = 0x01, - [SPECIES_WAILORD - 1] = 0x1c, - [SPECIES_SKITTY - 1] = 0x00, - [SPECIES_DELCATTY - 1] = 0x17, - [SPECIES_KECLEON - 1] = 0x35, - [SPECIES_BALTOY - 1] = 0x1d, - [SPECIES_CLAYDOL - 1] = 0x51, - [SPECIES_NOSEPASS - 1] = 0x49, - [SPECIES_TORKOAL - 1] = 0x17, - [SPECIES_SABLEYE - 1] = 0x15, - [SPECIES_BARBOACH - 1] = 0x49, - [SPECIES_WHISCASH - 1] = 0x49, - [SPECIES_LUVDISC - 1] = 0x1d, - [SPECIES_CORPHISH - 1] = 0x10, - [SPECIES_CRAWDAUNT - 1] = 0x09, - [SPECIES_FEEBAS - 1] = 0x49, - [SPECIES_MILOTIC - 1] = 0x22, - [SPECIES_CARVANHA - 1] = 0x49, - [SPECIES_SHARPEDO - 1] = 0x56, - [SPECIES_TRAPINCH - 1] = 0x10, - [SPECIES_VIBRAVA - 1] = 0x0f, - [SPECIES_FLYGON - 1] = 0x4b, - [SPECIES_MAKUHITA - 1] = 0x0b, - [SPECIES_HARIYAMA - 1] = 0x34, - [SPECIES_ELECTRIKE - 1] = 0x00, - [SPECIES_MANECTRIC - 1] = 0x00, - [SPECIES_NUMEL - 1] = 0x04, - [SPECIES_CAMERUPT - 1] = 0x10, - [SPECIES_SPHEAL - 1] = 0x53, - [SPECIES_SEALEO - 1] = 0x17, - [SPECIES_WALREIN - 1] = 0x0f, - [SPECIES_CACNEA - 1] = 0x49, - [SPECIES_CACTURNE - 1] = 0x04, - [SPECIES_SNORUNT - 1] = 0x45, - [SPECIES_GLALIE - 1] = 0x0a, - [SPECIES_LUNATONE - 1] = 0x0e, - [SPECIES_SOLROCK - 1] = 0x08, - [SPECIES_AZURILL - 1] = 0x00, - [SPECIES_SPOINK - 1] = 0x56, - [SPECIES_GRUMPIG - 1] = 0x32, - [SPECIES_PLUSLE - 1] = 0x00, - [SPECIES_MINUN - 1] = 0x01, - [SPECIES_MAWILE - 1] = 0x00, - [SPECIES_MEDITITE - 1] = 0x05, - [SPECIES_MEDICHAM - 1] = 0x45, - [SPECIES_SWABLU - 1] = 0x04, - [SPECIES_ALTARIA - 1] = 0x16, - [SPECIES_WYNAUT - 1] = 0x32, - [SPECIES_DUSKULL - 1] = 0x0a, - [SPECIES_DUSCLOPS - 1] = 0x02, - [SPECIES_ROSELIA - 1] = 0x45, - [SPECIES_SLAKOTH - 1] = 0x45, - [SPECIES_VIGOROTH - 1] = 0x31, - [SPECIES_SLAKING - 1] = 0x45, - [SPECIES_GULPIN - 1] = 0x00, - [SPECIES_SWALOT - 1] = 0x45, - [SPECIES_TROPIUS - 1] = 0x10, - [SPECIES_WHISMUR - 1] = 0x03, - [SPECIES_LOUDRED - 1] = 0x49, - [SPECIES_EXPLOUD - 1] = 0x19, - [SPECIES_CLAMPERL - 1] = 0x12, - [SPECIES_HUNTAIL - 1] = 0x09, - [SPECIES_GOREBYSS - 1] = 0x1c, - [SPECIES_ABSOL - 1] = 0x11, - [SPECIES_SHUPPET - 1] = 0x1c, - [SPECIES_BANETTE - 1] = 0x0d, - [SPECIES_SEVIPER - 1] = 0x17, - [SPECIES_ZANGOOSE - 1] = 0x09, - [SPECIES_RELICANTH - 1] = 0x1a, - [SPECIES_ARON - 1] = 0x45, - [SPECIES_LAIRON - 1] = 0x00, - [SPECIES_AGGRON - 1] = 0x19, - [SPECIES_CASTFORM - 1] = 0x1d, - [SPECIES_VOLBEAT - 1] = 0x00, - [SPECIES_ILLUMISE - 1] = 0x05, - [SPECIES_LILEEP - 1] = 0x17, - [SPECIES_CRADILY - 1] = 0x19, - [SPECIES_ANORITH - 1] = 0x12, - [SPECIES_ARMALDO - 1] = 0x10, - [SPECIES_RALTS - 1] = 0x45, - [SPECIES_KIRLIA - 1] = 0x00, - [SPECIES_GARDEVOIR - 1] = 0x00, - [SPECIES_BAGON - 1] = 0x19, - [SPECIES_SHELGON - 1] = 0x04, - [SPECIES_SALAMENCE - 1] = 0x0f, - [SPECIES_BELDUM - 1] = 0x0f, - [SPECIES_METANG - 1] = 0x04, - [SPECIES_METAGROSS - 1] = 0x10, - [SPECIES_REGIROCK - 1] = 0x01, - [SPECIES_REGICE - 1] = 0x44, - [SPECIES_REGISTEEL - 1] = 0x09, - [SPECIES_KYOGRE - 1] = 0x2d, - [SPECIES_GROUDON - 1] = 0x10, - [SPECIES_RAYQUAZA - 1] = 0x0f, - [SPECIES_LATIAS - 1] = 0x2d, - [SPECIES_LATIOS - 1] = 0x10, - [SPECIES_JIRACHI - 1] = 0x0d, - [SPECIES_DEOXYS - 1] = 0x1b, - [SPECIES_CHIMECHO - 1] = 0x1d, + [SPECIES_BULBASAUR - 1] = ANIM_V_JUMPS_H_JUMPS, + [SPECIES_IVYSAUR - 1] = ANIM_V_STRETCH, + [SPECIES_VENUSAUR - 1] = ANIM_ROTATE_UP_SLAM_DOWN, + [SPECIES_CHARMANDER - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_CHARMELEON - 1] = ANIM_BACK_AND_LUNGE, + [SPECIES_CHARIZARD - 1] = ANIM_V_SHAKE, + [SPECIES_SQUIRTLE - 1] = ANIM_SWING_CONCAVE, + [SPECIES_WARTORTLE - 1] = ANIM_SHRINK_GROW, + [SPECIES_BLASTOISE - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_CATERPIE - 1] = ANIM_SWING_CONCAVE, + [SPECIES_METAPOD - 1] = ANIM_SWING_CONCAVE, + [SPECIES_BUTTERFREE - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_WEEDLE - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_KAKUNA - 1] = ANIM_GLOW_ORANGE, + [SPECIES_BEEDRILL - 1] = ANIM_H_VIBRATE, + [SPECIES_PIDGEY - 1] = ANIM_V_SLIDE_SLOW, + [SPECIES_PIDGEOTTO - 1] = ANIM_V_STRETCH, + [SPECIES_PIDGEOT - 1] = ANIM_FRONT_FLIP, + [SPECIES_RATTATA - 1] = ANIM_RAPID_H_HOPS, + [SPECIES_RATICATE - 1] = ANIM_FIGURE_8, + [SPECIES_SPEAROW - 1] = ANIM_RISING_WOBBLE, + [SPECIES_FEAROW - 1] = ANIM_FIGURE_8, + [SPECIES_EKANS - 1] = ANIM_H_STRETCH, + [SPECIES_ARBOK - 1] = ANIM_V_STRETCH, + [SPECIES_PIKACHU - 1] = ANIM_FLASH_YELLOW, + [SPECIES_RAICHU - 1] = ANIM_V_STRETCH, + [SPECIES_SANDSHREW - 1] = ANIM_SWING_CONCAVE_FAST_SHORT, + [SPECIES_SANDSLASH - 1] = ANIM_V_STRETCH, + [SPECIES_NIDORAN_F - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_NIDORINA - 1] = ANIM_V_STRETCH, + [SPECIES_NIDOQUEEN - 1] = ANIM_H_SHAKE, + [SPECIES_NIDORAN_M - 1] = ANIM_GROW_VIBRATE, + [SPECIES_NIDORINO - 1] = ANIM_SHRINK_GROW, + [SPECIES_NIDOKING - 1] = ANIM_H_SHAKE, + [SPECIES_CLEFAIRY - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_CLEFABLE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL_SLOW, + [SPECIES_VULPIX - 1] = ANIM_V_STRETCH, + [SPECIES_NINETALES - 1] = ANIM_V_SHAKE, + [SPECIES_JIGGLYPUFF - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_WIGGLYTUFF - 1] = ANIM_H_JUMPS, + [SPECIES_ZUBAT - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_GOLBAT - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_ODDISH - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_GLOOM - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_VILEPLUME - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_PARAS - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_PARASECT - 1] = ANIM_H_SHAKE, + [SPECIES_VENONAT - 1] = ANIM_V_JUMPS_H_JUMPS, + [SPECIES_VENOMOTH - 1] = ANIM_ZIGZAG_SLOW, + [SPECIES_DIGLETT - 1] = ANIM_V_SHAKE, + [SPECIES_DUGTRIO - 1] = ANIM_H_SHAKE_SLOW, + [SPECIES_MEOWTH - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_PERSIAN - 1] = ANIM_V_STRETCH, + [SPECIES_PSYDUCK - 1] = ANIM_V_JUMPS_H_JUMPS, + [SPECIES_GOLDUCK - 1] = ANIM_H_SHAKE_SLOW, + [SPECIES_MANKEY - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_PRIMEAPE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_GROWLITHE - 1] = ANIM_BACK_AND_LUNGE, + [SPECIES_ARCANINE - 1] = ANIM_H_VIBRATE, + [SPECIES_POLIWAG - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_POLIWHIRL - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_POLIWRATH - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_ABRA - 1] = ANIM_H_JUMPS, + [SPECIES_KADABRA - 1] = ANIM_GROW_VIBRATE, + [SPECIES_ALAKAZAM - 1] = ANIM_V_STRETCH, + [SPECIES_MACHOP - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MACHOKE - 1] = ANIM_V_SHAKE, + [SPECIES_MACHAMP - 1] = ANIM_H_JUMPS, + [SPECIES_BELLSPROUT - 1] = ANIM_V_STRETCH, + [SPECIES_WEEPINBELL - 1] = ANIM_SWING_CONVEX, + [SPECIES_VICTREEBEL - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_TENTACOOL - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_TENTACRUEL - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_GEODUDE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_GRAVELER - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_GOLEM - 1] = ANIM_ROTATE_UP_SLAM_DOWN, + [SPECIES_PONYTA - 1] = ANIM_GLOW_ORANGE, + [SPECIES_RAPIDASH - 1] = ANIM_CIRCULAR_VIBRATE, + [SPECIES_SLOWPOKE - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_SLOWBRO - 1] = ANIM_SWING_CONCAVE, + [SPECIES_MAGNEMITE - 1] = ANIM_TUMBLING_FRONT_FLIP_TWICE, + [SPECIES_MAGNETON - 1] = ANIM_FLASH_YELLOW, + [SPECIES_FARFETCHD - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_DODUO - 1] = ANIM_H_SHAKE_SLOW, + [SPECIES_DODRIO - 1] = ANIM_LUNGE_GROW, + [SPECIES_SEEL - 1] = ANIM_SWING_CONCAVE, + [SPECIES_DEWGONG - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_GRIMER - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_MUK - 1] = ANIM_DEEP_V_SQUISH_AND_BOUNCE, + [SPECIES_SHELLDER - 1] = ANIM_TWIST, + [SPECIES_CLOYSTER - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_GASTLY - 1] = ANIM_GLOW_BLACK, + [SPECIES_HAUNTER - 1] = ANIM_FLICKER_INCREASING, + [SPECIES_GENGAR - 1] = ANIM_GROW_IN_STAGES, + [SPECIES_ONIX - 1] = ANIM_RAPID_H_HOPS, + [SPECIES_DROWZEE - 1] = ANIM_CIRCLE_C_CLOCKWISE_SLOW, + [SPECIES_HYPNO - 1] = ANIM_GROW_VIBRATE, + [SPECIES_KRABBY - 1] = ANIM_H_SLIDE, + [SPECIES_KINGLER - 1] = ANIM_ZIGZAG_SLOW, + [SPECIES_VOLTORB - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_ELECTRODE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_EXEGGCUTE - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_EXEGGUTOR - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_CUBONE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_MAROWAK - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES, + [SPECIES_HITMONLEE - 1] = ANIM_H_STRETCH, + [SPECIES_HITMONCHAN - 1] = ANIM_GROW_VIBRATE, + [SPECIES_LICKITUNG - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_KOFFING - 1] = ANIM_SHRINK_GROW, + [SPECIES_WEEZING - 1] = ANIM_V_SLIDE, + [SPECIES_RHYHORN - 1] = ANIM_V_SHAKE, + [SPECIES_RHYDON - 1] = ANIM_SHRINK_GROW, + [SPECIES_CHANSEY - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_TANGELA - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_KANGASKHAN - 1] = ANIM_V_STRETCH, + [SPECIES_HORSEA - 1] = ANIM_TWIST, + [SPECIES_SEADRA - 1] = ANIM_V_SLIDE, + [SPECIES_GOLDEEN - 1] = ANIM_SWING_CONVEX, + [SPECIES_SEAKING - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_STARYU - 1] = ANIM_TWIST_TWICE, + [SPECIES_STARMIE - 1] = ANIM_TWIST, + [SPECIES_MR_MIME - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_SCYTHER - 1] = ANIM_H_VIBRATE, + [SPECIES_JYNX - 1] = ANIM_V_STRETCH, + [SPECIES_ELECTABUZZ - 1] = ANIM_FLASH_YELLOW, + [SPECIES_MAGMAR - 1] = ANIM_H_SHAKE, + [SPECIES_PINSIR - 1] = ANIM_GROW_VIBRATE, + [SPECIES_TAUROS - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_MAGIKARP - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES, + [SPECIES_GYARADOS - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL, + [SPECIES_LAPRAS - 1] = ANIM_V_STRETCH, + [SPECIES_DITTO - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_EEVEE - 1] = ANIM_V_STRETCH, + [SPECIES_VAPOREON - 1] = ANIM_V_STRETCH, + [SPECIES_JOLTEON - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_FLAREON - 1] = ANIM_V_STRETCH, + [SPECIES_PORYGON - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_OMANYTE - 1] = ANIM_V_SLIDE_WOBBLE_SMALL, + [SPECIES_OMASTAR - 1] = ANIM_GROW_VIBRATE, + [SPECIES_KABUTO - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_KABUTOPS - 1] = ANIM_H_SHAKE, + [SPECIES_AERODACTYL - 1] = ANIM_V_SLIDE_SLOW, + [SPECIES_SNORLAX - 1] = ANIM_SWING_CONCAVE, + [SPECIES_ARTICUNO - 1] = ANIM_GROW_VIBRATE, + [SPECIES_ZAPDOS - 1] = ANIM_FLASH_YELLOW, + [SPECIES_MOLTRES - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_DRATINI - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_DRAGONAIR - 1] = ANIM_V_SHAKE, + [SPECIES_DRAGONITE - 1] = ANIM_V_SLIDE_SLOW, + [SPECIES_MEWTWO - 1] = ANIM_GROW_VIBRATE, + [SPECIES_MEW - 1] = ANIM_SWING_CONVEX, + [SPECIES_CHIKORITA - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_BAYLEEF - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MEGANIUM - 1] = ANIM_V_STRETCH, + [SPECIES_CYNDAQUIL - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_QUILAVA - 1] = ANIM_V_STRETCH, + [SPECIES_TYPHLOSION - 1] = ANIM_V_SHAKE, + [SPECIES_TOTODILE - 1] = ANIM_H_JUMPS, + [SPECIES_CROCONAW - 1] = ANIM_H_SHAKE, + [SPECIES_FERALIGATR - 1] = ANIM_H_SHAKE, + [SPECIES_SENTRET - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_FURRET - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_HOOTHOOT - 1] = ANIM_V_SLIDE_SLOW, + [SPECIES_NOCTOWL - 1] = ANIM_V_STRETCH, + [SPECIES_LEDYBA - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_LEDIAN - 1] = ANIM_V_SLIDE_SLOW, + [SPECIES_SPINARAK - 1] = ANIM_CIRCLE_C_CLOCKWISE_SLOW, + [SPECIES_ARIADOS - 1] = ANIM_H_SHAKE, + [SPECIES_CROBAT - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_CHINCHOU - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_LANTURN - 1] = ANIM_V_SLIDE_WOBBLE_SMALL, + [SPECIES_PICHU - 1] = ANIM_V_JUMPS_BIG, + [SPECIES_CLEFFA - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_IGGLYBUFF - 1] = ANIM_SWING_CONCAVE_FAST, + [SPECIES_TOGEPI - 1] = ANIM_SWING_CONCAVE, + [SPECIES_TOGETIC - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_NATU - 1] = ANIM_H_JUMPS, + [SPECIES_XATU - 1] = ANIM_GROW_VIBRATE, + [SPECIES_MAREEP - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_FLAAFFY - 1] = ANIM_V_JUMPS_BIG, + [SPECIES_AMPHAROS - 1] = ANIM_FLASH_YELLOW, + [SPECIES_BELLOSSOM - 1] = ANIM_SWING_CONCAVE, + [SPECIES_MARILL - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_AZUMARILL - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL_SLOW, + [SPECIES_SUDOWOODO - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_POLITOED - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_HOPPIP - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_SKIPLOOM - 1] = ANIM_RISING_WOBBLE, + [SPECIES_JUMPLUFF - 1] = ANIM_V_SLIDE_WOBBLE_SMALL, + [SPECIES_AIPOM - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_SUNKERN - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_SUNFLORA - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_YANMA - 1] = ANIM_FIGURE_8, + [SPECIES_WOOPER - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_QUAGSIRE - 1] = ANIM_H_STRETCH, + [SPECIES_ESPEON - 1] = ANIM_GROW_VIBRATE, + [SPECIES_UMBREON - 1] = ANIM_V_SHAKE, + [SPECIES_MURKROW - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SLOWKING - 1] = ANIM_SHRINK_GROW, + [SPECIES_MISDREAVUS - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_UNOWN - 1] = ANIM_ZIGZAG_FAST, + [SPECIES_WOBBUFFET - 1] = ANIM_DEEP_V_SQUISH_AND_BOUNCE, + [SPECIES_GIRAFARIG - 1] = ANIM_V_JUMPS_BIG, + [SPECIES_PINECO - 1] = ANIM_SWING_CONCAVE, + [SPECIES_FORRETRESS - 1] = ANIM_V_SHAKE, + [SPECIES_DUNSPARCE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_GLIGAR - 1] = ANIM_SHRINK_GROW, + [SPECIES_STEELIX - 1] = ANIM_H_SHAKE, + [SPECIES_SNUBBULL - 1] = ANIM_V_STRETCH, + [SPECIES_GRANBULL - 1] = ANIM_V_SHAKE, + [SPECIES_QWILFISH - 1] = ANIM_GROW_IN_STAGES, + [SPECIES_SCIZOR - 1] = ANIM_H_VIBRATE, + [SPECIES_SHUCKLE - 1] = ANIM_SWING_CONCAVE, + [SPECIES_HERACROSS - 1] = ANIM_LUNGE_GROW, + [SPECIES_SNEASEL - 1] = ANIM_H_STRETCH, + [SPECIES_TEDDIURSA - 1] = ANIM_V_STRETCH, + [SPECIES_URSARING - 1] = ANIM_V_SHAKE, + [SPECIES_SLUGMA - 1] = ANIM_V_STRETCH, + [SPECIES_MAGCARGO - 1] = ANIM_V_STRETCH, + [SPECIES_SWINUB - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_PILOSWINE - 1] = ANIM_H_SHAKE, + [SPECIES_CORSOLA - 1] = ANIM_H_SLIDE, + [SPECIES_REMORAID - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_OCTILLERY - 1] = ANIM_V_STRETCH, + [SPECIES_DELIBIRD - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_MANTINE - 1] = ANIM_SWING_CONVEX, + [SPECIES_SKARMORY - 1] = ANIM_V_STRETCH, + [SPECIES_HOUNDOUR - 1] = ANIM_V_STRETCH, + [SPECIES_HOUNDOOM - 1] = ANIM_V_SHAKE, + [SPECIES_KINGDRA - 1] = ANIM_CIRCLE_INTO_BG, + [SPECIES_PHANPY - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_DONPHAN - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_PORYGON2 - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_STANTLER - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SMEARGLE - 1] = ANIM_H_JUMPS, + [SPECIES_TYROGUE - 1] = ANIM_H_STRETCH, + [SPECIES_HITMONTOP - 1] = ANIM_H_VIBRATE, + [SPECIES_SMOOCHUM - 1] = ANIM_GROW_VIBRATE, + [SPECIES_ELEKID - 1] = ANIM_FLASH_YELLOW, + [SPECIES_MAGBY - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MILTANK - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_BLISSEY - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_RAIKOU - 1] = ANIM_FLASH_YELLOW, + [SPECIES_ENTEI - 1] = ANIM_GROW_VIBRATE, + [SPECIES_SUICUNE - 1] = ANIM_V_SHAKE, + [SPECIES_LARVITAR - 1] = ANIM_V_JUMPS_SMALL, + [SPECIES_PUPITAR - 1] = ANIM_V_SHAKE, + [SPECIES_TYRANITAR - 1] = ANIM_H_SHAKE, + [SPECIES_LUGIA - 1] = ANIM_GROW_IN_STAGES, + [SPECIES_HO_OH - 1] = ANIM_GROW_VIBRATE, + [SPECIES_CELEBI - 1] = ANIM_RISING_WOBBLE, + [SPECIES_GROVYLE - 1] = ANIM_V_STRETCH, + [SPECIES_SCEPTILE - 1] = ANIM_V_SHAKE, + [SPECIES_TORCHIC - 1] = ANIM_H_STRETCH, + [SPECIES_COMBUSKEN - 1] = ANIM_V_JUMPS_H_JUMPS, + [SPECIES_BLAZIKEN - 1] = ANIM_H_SHAKE, + [SPECIES_MUDKIP - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_MARSHTOMP - 1] = ANIM_V_SLIDE, + [SPECIES_SWAMPERT - 1] = ANIM_V_JUMPS_BIG, + [SPECIES_POOCHYENA - 1] = ANIM_V_SHAKE, + [SPECIES_MIGHTYENA - 1] = ANIM_V_SHAKE, + [SPECIES_ZIGZAGOON - 1] = ANIM_H_SLIDE, + [SPECIES_LINOONE - 1] = ANIM_GROW_VIBRATE, + [SPECIES_WURMPLE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SILCOON - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_BEAUTIFLY - 1] = ANIM_V_SLIDE, + [SPECIES_CASCOON - 1] = ANIM_V_SLIDE, + [SPECIES_DUSTOX - 1] = ANIM_V_JUMPS_H_JUMPS, + [SPECIES_LOTAD - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_LOMBRE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_LUDICOLO - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_SEEDOT - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES, + [SPECIES_NUZLEAF - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SHIFTRY - 1] = ANIM_H_VIBRATE, + [SPECIES_NINCADA - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_NINJASK - 1] = ANIM_H_SLIDE_SLOW, + [SPECIES_SHEDINJA - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_TAILLOW - 1] = ANIM_V_JUMPS_BIG, + [SPECIES_SWELLOW - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_SHROOMISH - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_BRELOOM - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SPINDA - 1] = ANIM_H_JUMPS, + [SPECIES_WINGULL - 1] = ANIM_H_PIVOT, + [SPECIES_PELIPPER - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_SURSKIT - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MASQUERAIN - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_WAILMER - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_WAILORD - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_SKITTY - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_DELCATTY - 1] = ANIM_V_STRETCH, + [SPECIES_KECLEON - 1] = ANIM_FLICKER_INCREASING, + [SPECIES_BALTOY - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_CLAYDOL - 1] = ANIM_V_SLIDE_WOBBLE_SMALL, + [SPECIES_NOSEPASS - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_TORKOAL - 1] = ANIM_V_STRETCH, + [SPECIES_SABLEYE - 1] = ANIM_GLOW_BLACK, + [SPECIES_BARBOACH - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_WHISCASH - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_LUVDISC - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_CORPHISH - 1] = ANIM_V_SHAKE, + [SPECIES_CRAWDAUNT - 1] = ANIM_GROW_VIBRATE, + [SPECIES_FEEBAS - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_MILOTIC - 1] = ANIM_GLOW_BLUE, + [SPECIES_CARVANHA - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_SHARPEDO - 1] = ANIM_H_JUMPS_V_STRETCH_TWICE, + [SPECIES_TRAPINCH - 1] = ANIM_V_SHAKE, + [SPECIES_VIBRAVA - 1] = ANIM_H_SHAKE, + [SPECIES_FLYGON - 1] = ANIM_ZIGZAG_SLOW, + [SPECIES_MAKUHITA - 1] = ANIM_SWING_CONCAVE, + [SPECIES_HARIYAMA - 1] = ANIM_ROTATE_UP_TO_SIDES, + [SPECIES_ELECTRIKE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MANECTRIC - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_NUMEL - 1] = ANIM_V_SLIDE, + [SPECIES_CAMERUPT - 1] = ANIM_V_SHAKE, + [SPECIES_SPHEAL - 1] = ANIM_SPIN, + [SPECIES_SEALEO - 1] = ANIM_V_STRETCH, + [SPECIES_WALREIN - 1] = ANIM_H_SHAKE, + [SPECIES_CACNEA - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_CACTURNE - 1] = ANIM_V_SLIDE, + [SPECIES_SNORUNT - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_GLALIE - 1] = ANIM_ZIGZAG_FAST, + [SPECIES_LUNATONE - 1] = ANIM_SWING_CONVEX_FAST, + [SPECIES_SOLROCK - 1] = ANIM_ROTATE_TO_SIDES_TWICE, + [SPECIES_AZURILL - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SPOINK - 1] = ANIM_H_JUMPS_V_STRETCH_TWICE, + [SPECIES_GRUMPIG - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_PLUSLE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MINUN - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_MAWILE - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_MEDITITE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES, + [SPECIES_MEDICHAM - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_SWABLU - 1] = ANIM_V_SLIDE, + [SPECIES_ALTARIA - 1] = ANIM_H_STRETCH, + [SPECIES_WYNAUT - 1] = ANIM_H_JUMPS_V_STRETCH, + [SPECIES_DUSKULL - 1] = ANIM_ZIGZAG_FAST, + [SPECIES_DUSCLOPS - 1] = ANIM_H_VIBRATE, + [SPECIES_ROSELIA - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_SLAKOTH - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_VIGOROTH - 1] = ANIM_H_JUMPS, + [SPECIES_SLAKING - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_GULPIN - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_SWALOT - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_TROPIUS - 1] = ANIM_V_SHAKE, + [SPECIES_WHISMUR - 1] = ANIM_H_SLIDE, + [SPECIES_LOUDRED - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW, + [SPECIES_EXPLOUD - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_CLAMPERL - 1] = ANIM_TWIST, + [SPECIES_HUNTAIL - 1] = ANIM_GROW_VIBRATE, + [SPECIES_GOREBYSS - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_ABSOL - 1] = ANIM_CIRCULAR_VIBRATE, + [SPECIES_SHUPPET - 1] = ANIM_V_SLIDE_WOBBLE, + [SPECIES_BANETTE - 1] = ANIM_SWING_CONVEX, + [SPECIES_SEVIPER - 1] = ANIM_V_STRETCH, + [SPECIES_ZANGOOSE - 1] = ANIM_GROW_VIBRATE, + [SPECIES_RELICANTH - 1] = ANIM_TIP_MOVE_FORWARD, + [SPECIES_ARON - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_LAIRON - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_AGGRON - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_CASTFORM - 1] = ANIM_H_SLIDE_WOBBLE, + [SPECIES_VOLBEAT - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_ILLUMISE - 1] = ANIM_BOUNCE_ROTATE_TO_SIDES, + [SPECIES_LILEEP - 1] = ANIM_V_STRETCH, + [SPECIES_CRADILY - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_ANORITH - 1] = ANIM_TWIST, + [SPECIES_ARMALDO - 1] = ANIM_V_SHAKE, + [SPECIES_RALTS - 1] = ANIM_V_SQUISH_AND_BOUNCE_SLOW, + [SPECIES_KIRLIA - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_GARDEVOIR - 1] = ANIM_V_SQUISH_AND_BOUNCE, + [SPECIES_BAGON - 1] = ANIM_V_SHAKE_TWICE, + [SPECIES_SHELGON - 1] = ANIM_V_SLIDE, + [SPECIES_SALAMENCE - 1] = ANIM_H_SHAKE, + [SPECIES_BELDUM - 1] = ANIM_H_SHAKE, + [SPECIES_METANG - 1] = ANIM_V_SLIDE, + [SPECIES_METAGROSS - 1] = ANIM_V_SHAKE, + [SPECIES_REGIROCK - 1] = ANIM_CIRCULAR_STRETCH_TWICE, + [SPECIES_REGICE - 1] = ANIM_FOUR_PETAL, + [SPECIES_REGISTEEL - 1] = ANIM_GROW_VIBRATE, + [SPECIES_KYOGRE - 1] = ANIM_SWING_CONCAVE_FAST_SHORT, + [SPECIES_GROUDON - 1] = ANIM_V_SHAKE, + [SPECIES_RAYQUAZA - 1] = ANIM_H_SHAKE, + [SPECIES_LATIAS - 1] = ANIM_SWING_CONCAVE_FAST_SHORT, + [SPECIES_LATIOS - 1] = ANIM_V_SHAKE, + [SPECIES_JIRACHI - 1] = ANIM_SWING_CONVEX, + [SPECIES_DEOXYS - 1] = ANIM_H_PIVOT, + [SPECIES_CHIMECHO - 1] = ANIM_H_SLIDE_WOBBLE, }; static const u8 sMonAnimationDelayTable[NUM_SPECIES - 1] = { - [SPECIES_BLASTOISE - 1] = 0x32, - [SPECIES_WEEDLE - 1] = 0x0a, - [SPECIES_KAKUNA - 1] = 0x14, - [SPECIES_BEEDRILL - 1] = 0x23, - [SPECIES_PIDGEOTTO - 1] = 0x19, - [SPECIES_FEAROW - 1] = 0x02, - [SPECIES_EKANS - 1] = 0x1e, - [SPECIES_NIDORAN_F - 1] = 0x1c, - [SPECIES_NIDOKING - 1] = 0x19, - [SPECIES_PARAS - 1] = 0x0a, - [SPECIES_PARASECT - 1] = 0x2d, - [SPECIES_VENONAT - 1] = 0x14, - [SPECIES_DIGLETT - 1] = 0x19, - [SPECIES_DUGTRIO - 1] = 0x23, - [SPECIES_MEOWTH - 1] = 0x28, - [SPECIES_PERSIAN - 1] = 0x14, - [SPECIES_MANKEY - 1] = 0x14, - [SPECIES_GROWLITHE - 1] = 0x1e, - [SPECIES_ARCANINE - 1] = 0x28, - [SPECIES_POLIWHIRL - 1] = 0x05, - [SPECIES_WEEPINBELL - 1] = 0x03, - [SPECIES_MUK - 1] = 0x2d, - [SPECIES_SHELLDER - 1] = 0x14, - [SPECIES_HAUNTER - 1] = 0x17, - [SPECIES_DROWZEE - 1] = 0x30, - [SPECIES_HYPNO - 1] = 0x28, - [SPECIES_HITMONCHAN - 1] = 0x19, - [SPECIES_SCYTHER - 1] = 0x0a, - [SPECIES_TAUROS - 1] = 0x0a, - [SPECIES_TYPHLOSION - 1] = 0x14, - [SPECIES_FERALIGATR - 1] = 0x05, - [SPECIES_NATU - 1] = 0x1e, - [SPECIES_MAREEP - 1] = 0x32, - [SPECIES_AMPHAROS - 1] = 0x0a, - [SPECIES_POLITOED - 1] = 0x28, - [SPECIES_DUNSPARCE - 1] = 0x0a, - [SPECIES_STEELIX - 1] = 0x2d, - [SPECIES_QWILFISH - 1] = 0x27, - [SPECIES_SCIZOR - 1] = 0x13, - [SPECIES_OCTILLERY - 1] = 0x14, - [SPECIES_SMOOCHUM - 1] = 0x28, - [SPECIES_TYRANITAR - 1] = 0x0a, - [SPECIES_LUGIA - 1] = 0x14, - [SPECIES_WAILORD - 1] = 0x0a, - [SPECIES_KECLEON - 1] = 0x1e, - [SPECIES_MILOTIC - 1] = 0x2d, - [SPECIES_SPHEAL - 1] = 0x0f, - [SPECIES_SNORUNT - 1] = 0x14, - [SPECIES_GRUMPIG - 1] = 0x0f, - [SPECIES_WYNAUT - 1] = 0x0f, - [SPECIES_DUSCLOPS - 1] = 0x1e, - [SPECIES_ABSOL - 1] = 0x2d, - [SPECIES_SALAMENCE - 1] = 0x46, - [SPECIES_KYOGRE - 1] = 0x3c, - [SPECIES_RAYQUAZA - 1] = 0x3c, + [SPECIES_BLASTOISE - 1] = 50, + [SPECIES_WEEDLE - 1] = 10, + [SPECIES_KAKUNA - 1] = 20, + [SPECIES_BEEDRILL - 1] = 35, + [SPECIES_PIDGEOTTO - 1] = 25, + [SPECIES_FEAROW - 1] = 2, + [SPECIES_EKANS - 1] = 30, + [SPECIES_NIDORAN_F - 1] = 28, + [SPECIES_NIDOKING - 1] = 25, + [SPECIES_PARAS - 1] = 10, + [SPECIES_PARASECT - 1] = 45, + [SPECIES_VENONAT - 1] = 20, + [SPECIES_DIGLETT - 1] = 25, + [SPECIES_DUGTRIO - 1] = 35, + [SPECIES_MEOWTH - 1] = 40, + [SPECIES_PERSIAN - 1] = 20, + [SPECIES_MANKEY - 1] = 20, + [SPECIES_GROWLITHE - 1] = 30, + [SPECIES_ARCANINE - 1] = 40, + [SPECIES_POLIWHIRL - 1] = 5, + [SPECIES_WEEPINBELL - 1] = 3, + [SPECIES_MUK - 1] = 45, + [SPECIES_SHELLDER - 1] = 20, + [SPECIES_HAUNTER - 1] = 23, + [SPECIES_DROWZEE - 1] = 48, + [SPECIES_HYPNO - 1] = 40, + [SPECIES_HITMONCHAN - 1] = 25, + [SPECIES_SCYTHER - 1] = 10, + [SPECIES_TAUROS - 1] = 10, + [SPECIES_TYPHLOSION - 1] = 20, + [SPECIES_FERALIGATR - 1] = 5, + [SPECIES_NATU - 1] = 30, + [SPECIES_MAREEP - 1] = 50, + [SPECIES_AMPHAROS - 1] = 10, + [SPECIES_POLITOED - 1] = 40, + [SPECIES_DUNSPARCE - 1] = 10, + [SPECIES_STEELIX - 1] = 45, + [SPECIES_QWILFISH - 1] = 39, + [SPECIES_SCIZOR - 1] = 19, + [SPECIES_OCTILLERY - 1] = 20, + [SPECIES_SMOOCHUM - 1] = 40, + [SPECIES_TYRANITAR - 1] = 10, + [SPECIES_LUGIA - 1] = 20, + [SPECIES_WAILORD - 1] = 10, + [SPECIES_KECLEON - 1] = 30, + [SPECIES_MILOTIC - 1] = 45, + [SPECIES_SPHEAL - 1] = 15, + [SPECIES_SNORUNT - 1] = 20, + [SPECIES_GRUMPIG - 1] = 15, + [SPECIES_WYNAUT - 1] = 15, + [SPECIES_DUSCLOPS - 1] = 30, + [SPECIES_ABSOL - 1] = 45, + [SPECIES_SALAMENCE - 1] = 70, + [SPECIES_KYOGRE - 1] = 60, + [SPECIES_RAYQUAZA - 1] = 60, }; const u8 gPPUpGetMask[] = {0x03, 0x0c, 0x30, 0xc0}; // Masks for getting PP Up count, also PP Max values @@ -6627,7 +6601,7 @@ static void Task_PokemonSummaryAnimateAfterDelay(u8 taskId) if (--gTasks[taskId].data[3] == 0) { StartMonSummaryAnimation(READ_PTR_FROM_TASK(taskId, 0), gTasks[taskId].data[2]); - SummaryScreen_SetUnknownTaskId(0xFF); + SummaryScreen_SetAnimDelayTaskId(TASK_NONE); DestroyTask(taskId); } } @@ -6694,7 +6668,7 @@ void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneF STORE_PTR_IN_TASK(sprite, taskId, 0); gTasks[taskId].data[2] = sMonFrontAnimIdsTable[species - 1]; gTasks[taskId].data[3] = sMonAnimationDelayTable[species - 1]; - SummaryScreen_SetUnknownTaskId(taskId); + SummaryScreen_SetAnimDelayTaskId(taskId); SetSpriteCB_MonAnimDummy(sprite); } else diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index da30963b550f..5c5cdde7b530 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -10,7 +10,33 @@ #include "constants/battle_anim.h" #include "constants/rgb.h" -struct UnkAnimStruct +/* + This file handles the movements of the PokĂ©mon intro animations. + + Each animation type is identified by an ANIM_* constant that + refers to a sprite callback to start the animation. These functions + are named Anim_ or Anim__. Many of these + functions share additional movement functions to do a variation of the + same movement (e.g. a faster or larger movement). + Vertical and Horizontal are frequently shortened to V and H. + + Every front animation uses 1 of these ANIMs, and every back animation + uses a BACK_ANIM_* that refers to a set of 3 ANIM functions. Which of + 3 that gets used depends on the PokĂ©mon's nature (see sBackAnimationIds). + + The table linking species to a BACK_ANIM is in this file (sSpeciesToBackAnimSet) + while the table linking species to an ANIM for their front animation is in + pokemon.c (sMonFrontAnimIdsTable). + + These are the functions that will start an animation: + - LaunchAnimationTaskForFrontSprite + - LaunchAnimationTaskForBackSprite + - StartMonSummaryAnimation +*/ + +#define sDontFlip data[1] // TRUE if a normal animation, FALSE if Summary Screen animation + +struct PokemonAnimData { u16 field_0; s16 field_2; @@ -19,797 +45,794 @@ struct UnkAnimStruct s16 field_8; }; -// this file's functions -static void pokemonanimfunc_00(struct Sprite *sprite); -static void pokemonanimfunc_01(struct Sprite *sprite); -static void pokemonanimfunc_02(struct Sprite *sprite); -static void pokemonanimfunc_03(struct Sprite *sprite); -static void pokemonanimfunc_04(struct Sprite *sprite); -static void pokemonanimfunc_05(struct Sprite *sprite); -static void pokemonanimfunc_06(struct Sprite *sprite); -static void pokemonanimfunc_07(struct Sprite *sprite); -static void pokemonanimfunc_08(struct Sprite *sprite); -static void pokemonanimfunc_09(struct Sprite *sprite); -static void pokemonanimfunc_0A(struct Sprite *sprite); -static void pokemonanimfunc_0B(struct Sprite *sprite); -static void pokemonanimfunc_0C(struct Sprite *sprite); -static void pokemonanimfunc_0D(struct Sprite *sprite); -static void pokemonanimfunc_0E(struct Sprite *sprite); -static void pokemonanimfunc_0F(struct Sprite *sprite); -static void pokemonanimfunc_10(struct Sprite *sprite); -static void pokemonanimfunc_11(struct Sprite *sprite); -static void pokemonanimfunc_12(struct Sprite *sprite); -static void pokemonanimfunc_13(struct Sprite *sprite); -static void pokemonanimfunc_14(struct Sprite *sprite); -static void pokemonanimfunc_15(struct Sprite *sprite); -static void pokemonanimfunc_16(struct Sprite *sprite); -static void pokemonanimfunc_17(struct Sprite *sprite); -static void pokemonanimfunc_18(struct Sprite *sprite); -static void pokemonanimfunc_19(struct Sprite *sprite); -static void pokemonanimfunc_1A(struct Sprite *sprite); -static void pokemonanimfunc_1B(struct Sprite *sprite); -static void pokemonanimfunc_1C(struct Sprite *sprite); -static void pokemonanimfunc_1D(struct Sprite *sprite); -static void pokemonanimfunc_1E(struct Sprite *sprite); -static void pokemonanimfunc_1F(struct Sprite *sprite); -static void pokemonanimfunc_20(struct Sprite *sprite); -static void pokemonanimfunc_21(struct Sprite *sprite); -static void pokemonanimfunc_22(struct Sprite *sprite); -static void pokemonanimfunc_23(struct Sprite *sprite); -static void pokemonanimfunc_24(struct Sprite *sprite); -static void pokemonanimfunc_25(struct Sprite *sprite); -static void pokemonanimfunc_26(struct Sprite *sprite); -static void pokemonanimfunc_27(struct Sprite *sprite); -static void pokemonanimfunc_28(struct Sprite *sprite); -static void pokemonanimfunc_29(struct Sprite *sprite); -static void pokemonanimfunc_2A(struct Sprite *sprite); -static void pokemonanimfunc_2B(struct Sprite *sprite); -static void pokemonanimfunc_2C(struct Sprite *sprite); -static void pokemonanimfunc_2D(struct Sprite *sprite); -static void pokemonanimfunc_2E(struct Sprite *sprite); -static void pokemonanimfunc_2F(struct Sprite *sprite); -static void pokemonanimfunc_30(struct Sprite *sprite); -static void pokemonanimfunc_31(struct Sprite *sprite); -static void pokemonanimfunc_32(struct Sprite *sprite); -static void pokemonanimfunc_33(struct Sprite *sprite); -static void pokemonanimfunc_34(struct Sprite *sprite); -static void pokemonanimfunc_35(struct Sprite *sprite); -static void pokemonanimfunc_36(struct Sprite *sprite); -static void pokemonanimfunc_37(struct Sprite *sprite); -static void pokemonanimfunc_38(struct Sprite *sprite); -static void pokemonanimfunc_39(struct Sprite *sprite); -static void pokemonanimfunc_3A(struct Sprite *sprite); -static void pokemonanimfunc_3B(struct Sprite *sprite); -static void pokemonanimfunc_3C(struct Sprite *sprite); -static void pokemonanimfunc_3D(struct Sprite *sprite); -static void pokemonanimfunc_3E(struct Sprite *sprite); -static void pokemonanimfunc_3F(struct Sprite *sprite); -static void pokemonanimfunc_40(struct Sprite *sprite); -static void pokemonanimfunc_41(struct Sprite *sprite); -static void pokemonanimfunc_42(struct Sprite *sprite); -static void pokemonanimfunc_43(struct Sprite *sprite); -static void pokemonanimfunc_44(struct Sprite *sprite); -static void pokemonanimfunc_45(struct Sprite *sprite); -static void pokemonanimfunc_46(struct Sprite *sprite); -static void pokemonanimfunc_47(struct Sprite *sprite); -static void pokemonanimfunc_48(struct Sprite *sprite); -static void pokemonanimfunc_49(struct Sprite *sprite); -static void pokemonanimfunc_4A(struct Sprite *sprite); -static void pokemonanimfunc_4B(struct Sprite *sprite); -static void pokemonanimfunc_4C(struct Sprite *sprite); -static void pokemonanimfunc_4D(struct Sprite *sprite); -static void pokemonanimfunc_4E(struct Sprite *sprite); -static void pokemonanimfunc_4F(struct Sprite *sprite); -static void pokemonanimfunc_50(struct Sprite *sprite); -static void pokemonanimfunc_51(struct Sprite *sprite); -static void pokemonanimfunc_52(struct Sprite *sprite); -static void pokemonanimfunc_53(struct Sprite *sprite); -static void pokemonanimfunc_54(struct Sprite *sprite); -static void pokemonanimfunc_55(struct Sprite *sprite); -static void pokemonanimfunc_56(struct Sprite *sprite); -static void pokemonanimfunc_57(struct Sprite *sprite); -static void pokemonanimfunc_58(struct Sprite *sprite); -static void pokemonanimfunc_59(struct Sprite *sprite); -static void pokemonanimfunc_5A(struct Sprite *sprite); -static void pokemonanimfunc_5B(struct Sprite *sprite); -static void pokemonanimfunc_5C(struct Sprite *sprite); -static void pokemonanimfunc_5D(struct Sprite *sprite); -static void pokemonanimfunc_5E(struct Sprite *sprite); -static void pokemonanimfunc_5F(struct Sprite *sprite); -static void pokemonanimfunc_60(struct Sprite *sprite); -static void pokemonanimfunc_61(struct Sprite *sprite); -static void pokemonanimfunc_62(struct Sprite *sprite); -static void pokemonanimfunc_63(struct Sprite *sprite); -static void pokemonanimfunc_64(struct Sprite *sprite); -static void pokemonanimfunc_65(struct Sprite *sprite); -static void pokemonanimfunc_66(struct Sprite *sprite); -static void pokemonanimfunc_67(struct Sprite *sprite); -static void pokemonanimfunc_68(struct Sprite *sprite); -static void pokemonanimfunc_69(struct Sprite *sprite); -static void pokemonanimfunc_6A(struct Sprite *sprite); -static void pokemonanimfunc_6B(struct Sprite *sprite); -static void pokemonanimfunc_6C(struct Sprite *sprite); -static void pokemonanimfunc_6D(struct Sprite *sprite); -static void pokemonanimfunc_6E(struct Sprite *sprite); -static void pokemonanimfunc_6F(struct Sprite *sprite); -static void pokemonanimfunc_70(struct Sprite *sprite); -static void pokemonanimfunc_71(struct Sprite *sprite); -static void pokemonanimfunc_72(struct Sprite *sprite); -static void pokemonanimfunc_73(struct Sprite *sprite); -static void pokemonanimfunc_74(struct Sprite *sprite); -static void pokemonanimfunc_75(struct Sprite *sprite); -static void pokemonanimfunc_76(struct Sprite *sprite); -static void pokemonanimfunc_77(struct Sprite *sprite); -static void pokemonanimfunc_78(struct Sprite *sprite); -static void pokemonanimfunc_79(struct Sprite *sprite); -static void pokemonanimfunc_7A(struct Sprite *sprite); -static void pokemonanimfunc_7B(struct Sprite *sprite); -static void pokemonanimfunc_7C(struct Sprite *sprite); -static void pokemonanimfunc_7D(struct Sprite *sprite); -static void pokemonanimfunc_7E(struct Sprite *sprite); -static void pokemonanimfunc_7F(struct Sprite *sprite); -static void pokemonanimfunc_80(struct Sprite *sprite); -static void pokemonanimfunc_81(struct Sprite *sprite); -static void pokemonanimfunc_82(struct Sprite *sprite); -static void pokemonanimfunc_83(struct Sprite *sprite); -static void pokemonanimfunc_84(struct Sprite *sprite); -static void pokemonanimfunc_85(struct Sprite *sprite); -static void pokemonanimfunc_86(struct Sprite *sprite); -static void pokemonanimfunc_87(struct Sprite *sprite); -static void pokemonanimfunc_88(struct Sprite *sprite); -static void pokemonanimfunc_89(struct Sprite *sprite); -static void pokemonanimfunc_8A(struct Sprite *sprite); -static void pokemonanimfunc_8B(struct Sprite *sprite); -static void pokemonanimfunc_8C(struct Sprite *sprite); -static void pokemonanimfunc_8D(struct Sprite *sprite); -static void pokemonanimfunc_8E(struct Sprite *sprite); -static void pokemonanimfunc_8F(struct Sprite *sprite); -static void pokemonanimfunc_90(struct Sprite *sprite); -static void pokemonanimfunc_91(struct Sprite *sprite); -static void pokemonanimfunc_92(struct Sprite *sprite); -static void pokemonanimfunc_93(struct Sprite *sprite); -static void pokemonanimfunc_94(struct Sprite *sprite); -static void pokemonanimfunc_95(struct Sprite *sprite); -static void pokemonanimfunc_96(struct Sprite *sprite); - -static void SpriteCB_SetDummyOnAnimEnd(struct Sprite *sprite); - -#define STRUCT_COUNT 4 - -// IWRAM bss -static struct UnkAnimStruct sUnknown_03001240[STRUCT_COUNT]; -static u8 sUnknown_03001270; -static bool32 sUnknown_03001274; - -// const rom data +static void Anim_VerticalSquishBounce(struct Sprite *sprite); +static void Anim_CircularStretchTwice(struct Sprite *sprite); +static void Anim_HorizontalVibrate(struct Sprite *sprite); +static void Anim_HorizontalSlide(struct Sprite *sprite); +static void Anim_VerticalSlide(struct Sprite *sprite); +static void Anim_BounceRotateToSides(struct Sprite *sprite); +static void Anim_VerticalJumpsHorizontalJumps(struct Sprite *sprite); +static void Anim_RotateToSides(struct Sprite *sprite); +static void Anim_RotateToSides_Twice(struct Sprite *sprite); +static void Anim_GrowVibrate(struct Sprite *sprite); +static void Anim_ZigzagFast(struct Sprite *sprite); +static void Anim_SwingConcave(struct Sprite *sprite); +static void Anim_SwingConcave_Fast(struct Sprite *sprite); +static void Anim_SwingConvex(struct Sprite *sprite); +static void Anim_SwingConvex_Fast(struct Sprite *sprite); +static void Anim_HorizontalShake(struct Sprite *sprite); +static void Anim_VerticalShake(struct Sprite *sprite); +static void Anim_CircularVibrate(struct Sprite *sprite); +static void Anim_Twist(struct Sprite *sprite); +static void Anim_ShrinkGrow(struct Sprite *sprite); +static void Anim_CircleCounterclockwise(struct Sprite *sprite); +static void Anim_GlowBlack(struct Sprite *sprite); +static void Anim_HorizontalStretch(struct Sprite *sprite); +static void Anim_VerticalStretch(struct Sprite *sprite); +static void Anim_RisingWobble(struct Sprite *sprite); +static void Anim_VerticalShakeTwice(struct Sprite *sprite); +static void Anim_TipMoveForward(struct Sprite *sprite); +static void Anim_HorizontalPivot(struct Sprite *sprite); +static void Anim_VerticalSlideWobble(struct Sprite *sprite); +static void Anim_HorizontalSlideWobble(struct Sprite *sprite); +static void Anim_VerticalJumps_Big(struct Sprite *sprite); +static void Anim_Spin_Long(struct Sprite *sprite); +static void Anim_GlowOrange(struct Sprite *sprite); +static void Anim_GlowRed(struct Sprite *sprite); +static void Anim_GlowBlue(struct Sprite *sprite); +static void Anim_GlowYellow(struct Sprite *sprite); +static void Anim_GlowPurple(struct Sprite *sprite); +static void Anim_BackAndLunge(struct Sprite *sprite); +static void Anim_BackFlip(struct Sprite *sprite); +static void Anim_Flicker(struct Sprite *sprite); +static void Anim_BackFlipBig(struct Sprite *sprite); +static void Anim_FrontFlip(struct Sprite *sprite); +static void Anim_TumblingFrontFlip(struct Sprite *sprite); +static void Anim_Figure8(struct Sprite *sprite); +static void Anim_FlashYellow(struct Sprite *sprite); +static void Anim_SwingConcave_FastShort(struct Sprite *sprite); +static void Anim_SwingConvex_FastShort(struct Sprite *sprite); +static void Anim_RotateUpSlamDown(struct Sprite *sprite); +static void Anim_DeepVerticalSquishBounce(struct Sprite *sprite); +static void Anim_HorizontalJumps(struct Sprite *sprite); +static void Anim_HorizontalJumpsVerticalStretch(struct Sprite *sprite); +static void Anim_RotateToSides_Fast(struct Sprite *sprite); +static void Anim_RotateUpToSides(struct Sprite *sprite); +static void Anim_FlickerIncreasing(struct Sprite *sprite); +static void Anim_TipHopForward(struct Sprite *sprite); +static void Anim_PivotShake(struct Sprite *sprite); +static void Anim_TipAndShake(struct Sprite *sprite); +static void Anim_VibrateToCorners(struct Sprite *sprite); +static void Anim_GrowInStages(struct Sprite *sprite); +static void Anim_VerticalSpring(struct Sprite *sprite); +static void Anim_VerticalRepeatedSpring(struct Sprite *sprite); +static void Anim_SpringRising(struct Sprite *sprite); +static void Anim_HorizontalSpring(struct Sprite *sprite); +static void Anim_HorizontalRepeatedSpring_Slow(struct Sprite *sprite); +static void Anim_HorizontalSlideShrink(struct Sprite *sprite); +static void Anim_LungeGrow(struct Sprite *sprite); +static void Anim_CircleIntoBackground(struct Sprite *sprite); +static void Anim_RapidHorizontalHops(struct Sprite *sprite); +static void Anim_FourPetal(struct Sprite *sprite); +static void Anim_VerticalSquishBounce_Slow(struct Sprite *sprite); +static void Anim_HorizontalSlide_Slow(struct Sprite *sprite); +static void Anim_VerticalSlide_Slow(struct Sprite *sprite); +static void Anim_BounceRotateToSides_Small(struct Sprite *sprite); +static void Anim_BounceRotateToSides_Slow(struct Sprite *sprite); +static void Anim_BounceRotateToSides_SmallSlow(struct Sprite *sprite); +static void Anim_ZigzagSlow(struct Sprite *sprite); +static void Anim_HorizontalShake_Slow(struct Sprite *sprite); +static void Anim_VertialShake_Slow(struct Sprite *sprite); +static void Anim_Twist_Twice(struct Sprite *sprite); +static void Anim_CircleCounterclockwise_Slow(struct Sprite *sprite); +static void Anim_VerticalShakeTwice_Slow(struct Sprite *sprite); +static void Anim_VerticalSlideWobble_Small(struct Sprite *sprite); +static void Anim_VerticalJumps_Small(struct Sprite *sprite); +static void Anim_Spin(struct Sprite *sprite); +static void Anim_TumblingFrontFlip_Twice(struct Sprite *sprite); +static void Anim_DeepVerticalSquishBounce_Twice(struct Sprite *sprite); +static void Anim_HorizontalJumpsVerticalStretch_Twice(struct Sprite *sprite); +static void Anim_VerticalShakeBack(struct Sprite *sprite); +static void Anim_VerticalShakeBack_Slow(struct Sprite *sprite); +static void Anim_VerticalShakeHorizontalSlide_Slow(struct Sprite *sprite); +static void Anim_VerticalStretchBothEnds_Slow(struct Sprite *sprite); +static void Anim_HorizontalStretchFar_Slow(struct Sprite *sprite); +static void Anim_VerticalShakeLowTwice(struct Sprite *sprite); +static void Anim_HorizontalShake_Fast(struct Sprite *sprite); +static void Anim_HorizontalSlide_Fast(struct Sprite *sprite); +static void Anim_HorizontalVibrate_Fast(struct Sprite *sprite); +static void Anim_HorizontalVibrate_Fastest(struct Sprite *sprite); +static void Anim_VerticalShakeBack_Fast(struct Sprite *sprite); +static void Anim_VerticalShakeLowTwice_Slow(struct Sprite *sprite); +static void Anim_VerticalShakeLowTwice_Fast(struct Sprite *sprite); +static void Anim_CircleCounterclockwise_Long(struct Sprite *sprite); +static void Anim_GrowStutter_Slow(struct Sprite *sprite); +static void Anim_VerticalShakeHorizontalSlide(struct Sprite *sprite); +static void Anim_VerticalShakeHorizontalSlide_Fast(struct Sprite *sprite); +static void Anim_TriangleDown_Slow(struct Sprite *sprite); +static void Anim_TriangleDown(struct Sprite *sprite); +static void Anim_TriangleDown_Fast(struct Sprite *sprite); +static void Anim_Grow(struct Sprite *sprite); +static void Anim_Grow_Twice(struct Sprite *sprite); +static void Anim_HorizontalSpring_Fast(struct Sprite *sprite); +static void Anim_HorizontalSpring_Slow(struct Sprite *sprite); +static void Anim_HorizontalRepeatedSpring_Fast(struct Sprite *sprite); +static void Anim_HorizontalRepeatedSpring(struct Sprite *sprite); +static void Anim_ShrinkGrow_Fast(struct Sprite *sprite); +static void Anim_ShrinkGrow_Slow(struct Sprite *sprite); +static void Anim_VerticalStretchBothEnds(struct Sprite *sprite); +static void Anim_VerticalStretchBothEnds_Twice(struct Sprite *sprite); +static void Anim_HorizontalStretchFar_Twice(struct Sprite *sprite); +static void Anim_HorizontalStretchFar(struct Sprite *sprite); +static void Anim_GrowStutter_Twice(struct Sprite *sprite); +static void Anim_GrowStutter(struct Sprite *sprite); +static void Anim_ConcaveArcLarge_Slow(struct Sprite *sprite); +static void Anim_ConcaveArcLarge(struct Sprite *sprite); +static void Anim_ConcaveArcLarge_Twice(struct Sprite *sprite); +static void Anim_ConvexDoubleArc_Slow(struct Sprite *sprite); +static void Anim_ConvexDoubleArc(struct Sprite *sprite); +static void Anim_ConvexDoubleArc_Twice(struct Sprite *sprite); +static void Anim_ConcaveArcSmall_Slow(struct Sprite *sprite); +static void Anim_ConcaveArcSmall(struct Sprite *sprite); +static void Anim_ConcaveArcSmall_Twice(struct Sprite *sprite); +static void Anim_HorizontalDip(struct Sprite *sprite); +static void Anim_HorizontalDip_Fast(struct Sprite *sprite); +static void Anim_HorizontalDip_Twice(struct Sprite *sprite); +static void Anim_ShrinkGrowVibrate_Fast(struct Sprite *sprite); +static void Anim_ShrinkGrowVibrate(struct Sprite *sprite); +static void Anim_ShrinkGrowVibrate_Slow(struct Sprite *sprite); +static void Anim_JoltRight_Fast(struct Sprite *sprite); +static void Anim_JoltRight(struct Sprite *sprite); +static void Anim_JoltRight_Slow(struct Sprite *sprite); +static void Anim_ShakeFlashYellow_Fast(struct Sprite *sprite); +static void Anim_ShakeFlashYellow(struct Sprite *sprite); +static void Anim_ShakeFlashYellow_Slow(struct Sprite *sprite); +static void Anim_ShakeGlowRed_Fast(struct Sprite *sprite); +static void Anim_ShakeGlowRed(struct Sprite *sprite); +static void Anim_ShakeGlowRed_Slow(struct Sprite *sprite); +static void Anim_ShakeGlowGreen_Fast(struct Sprite *sprite); +static void Anim_ShakeGlowGreen(struct Sprite *sprite); +static void Anim_ShakeGlowGreen_Slow(struct Sprite *sprite); +static void Anim_ShakeGlowBlue_Fast(struct Sprite *sprite); +static void Anim_ShakeGlowBlue(struct Sprite *sprite); +static void Anim_ShakeGlowBlue_Slow(struct Sprite *sprite); + +static void WaitAnimEnd(struct Sprite *sprite); + +static struct PokemonAnimData sAnims[MAX_BATTLERS_COUNT]; +static u8 sAnimIdx; +static bool32 sIsSummaryAnim; + static const u8 sSpeciesToBackAnimSet[] = { - [SPECIES_BULBASAUR] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_IVYSAUR] = BACK_ANIM_H_SLIDE, - [SPECIES_VENUSAUR] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_CHARMANDER] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, + [SPECIES_BULBASAUR] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_IVYSAUR] = BACK_ANIM_H_SLIDE, + [SPECIES_VENUSAUR] = BACK_ANIM_H_SHAKE, + [SPECIES_CHARMANDER] = BACK_ANIM_CONCAVE_ARC_SMALL, [SPECIES_CHARMELEON] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_CHARIZARD] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_SQUIRTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_WARTORTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_BLASTOISE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_CATERPIE] = BACK_ANIM_H_SLIDE, - [SPECIES_METAPOD] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_BUTTERFREE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_WEEDLE] = BACK_ANIM_H_SLIDE, - [SPECIES_KAKUNA] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_BEEDRILL] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_PIDGEY] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_PIDGEOTTO] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_PIDGEOT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_RATTATA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_RATICATE] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_SPEAROW] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_FEAROW] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_EKANS] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_ARBOK] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_PIKACHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_RAICHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_SANDSHREW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_SANDSLASH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_NIDORAN_F] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_NIDORINA] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_NIDOQUEEN] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_NIDORAN_M] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_NIDORINO] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_NIDOKING] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_CLEFAIRY] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_CLEFABLE] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_VULPIX] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_NINETALES] = BACK_ANIM_H_SLIDE_QUICK, + [SPECIES_CHARIZARD] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_SQUIRTLE] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_WARTORTLE] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_BLASTOISE] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_CATERPIE] = BACK_ANIM_H_SLIDE, + [SPECIES_METAPOD] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_BUTTERFREE] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_WEEDLE] = BACK_ANIM_H_SLIDE, + [SPECIES_KAKUNA] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_BEEDRILL] = BACK_ANIM_H_VIBRATE, + [SPECIES_PIDGEY] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_PIDGEOTTO] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_PIDGEOT] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_RATTATA] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_RATICATE] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_SPEAROW] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_FEAROW] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_EKANS] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_ARBOK] = BACK_ANIM_V_SHAKE, + [SPECIES_PIKACHU] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_RAICHU] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_SANDSHREW] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_SANDSLASH] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_NIDORAN_F] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_NIDORINA] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_NIDOQUEEN] = BACK_ANIM_V_SHAKE, + [SPECIES_NIDORAN_M] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_NIDORINO] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_NIDOKING] = BACK_ANIM_V_SHAKE, + [SPECIES_CLEFAIRY] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_CLEFABLE] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_VULPIX] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_NINETALES] = BACK_ANIM_H_VIBRATE, [SPECIES_JIGGLYPUFF] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_WIGGLYTUFF] = BACK_ANIM_GROW_1, - [SPECIES_ZUBAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_GOLBAT] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_ODDISH] = BACK_ANIM_H_SLIDE, - [SPECIES_GLOOM] = BACK_ANIM_H_SLIDE, - [SPECIES_VILEPLUME] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_PARAS] = BACK_ANIM_H_SLIDE, - [SPECIES_PARASECT] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_VENONAT] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_VENOMOTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_DIGLETT] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_DUGTRIO] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_MEOWTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_PERSIAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_PSYDUCK] = BACK_ANIM_H_SLIDE, - [SPECIES_GOLDUCK] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_MANKEY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_PRIMEAPE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_GROWLITHE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_ARCANINE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_POLIWAG] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_POLIWHIRL] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_POLIWRATH] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_ABRA] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_KADABRA] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_ALAKAZAM] = BACK_ANIM_GROW_2, - [SPECIES_MACHOP] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_MACHOKE] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_MACHAMP] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_BELLSPROUT] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_WEEPINBELL] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_VICTREEBEL] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_TENTACOOL] = BACK_ANIM_H_SLIDE, + [SPECIES_WIGGLYTUFF] = BACK_ANIM_GROW, + [SPECIES_ZUBAT] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_GOLBAT] = BACK_ANIM_V_SHAKE, + [SPECIES_ODDISH] = BACK_ANIM_H_SLIDE, + [SPECIES_GLOOM] = BACK_ANIM_H_SLIDE, + [SPECIES_VILEPLUME] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_PARAS] = BACK_ANIM_H_SLIDE, + [SPECIES_PARASECT] = BACK_ANIM_H_SHAKE, + [SPECIES_VENONAT] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_VENOMOTH] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_DIGLETT] = BACK_ANIM_V_SHAKE, + [SPECIES_DUGTRIO] = BACK_ANIM_V_SHAKE, + [SPECIES_MEOWTH] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_PERSIAN] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_PSYDUCK] = BACK_ANIM_H_SLIDE, + [SPECIES_GOLDUCK] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_MANKEY] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_PRIMEAPE] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_GROWLITHE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_ARCANINE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_POLIWAG] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_POLIWHIRL] = BACK_ANIM_V_SHAKE, + [SPECIES_POLIWRATH] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_ABRA] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_KADABRA] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_ALAKAZAM] = BACK_ANIM_GROW_STUTTER, + [SPECIES_MACHOP] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_MACHOKE] = BACK_ANIM_V_SHAKE, + [SPECIES_MACHAMP] = BACK_ANIM_V_SHAKE, + [SPECIES_BELLSPROUT] = BACK_ANIM_V_STRETCH, + [SPECIES_WEEPINBELL] = BACK_ANIM_V_STRETCH, + [SPECIES_VICTREEBEL] = BACK_ANIM_V_STRETCH, + [SPECIES_TENTACOOL] = BACK_ANIM_H_SLIDE, [SPECIES_TENTACRUEL] = BACK_ANIM_H_SLIDE, - [SPECIES_GEODUDE] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_GRAVELER] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_GOLEM] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_PONYTA] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_RAPIDASH] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SLOWPOKE] = BACK_ANIM_H_SLIDE, - [SPECIES_SLOWBRO] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_MAGNEMITE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_MAGNETON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_FARFETCHD] = BACK_ANIM_H_SLIDE, - [SPECIES_DODUO] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_DODRIO] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SEEL] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_DEWGONG] = BACK_ANIM_H_SLIDE, - [SPECIES_GRIMER] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_MUK] = BACK_ANIM_HORIZONTAL_STRETCH, - [SPECIES_SHELLDER] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_CLOYSTER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_GASTLY] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_HAUNTER] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_GENGAR] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_ONIX] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_DROWZEE] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_HYPNO] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_KRABBY] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_KINGLER] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_VOLTORB] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_ELECTRODE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_EXEGGCUTE] = BACK_ANIM_H_SLIDE, - [SPECIES_EXEGGUTOR] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_CUBONE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_MAROWAK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_HITMONLEE] = BACK_ANIM_H_SLIDE, - [SPECIES_HITMONCHAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_LICKITUNG] = BACK_ANIM_H_SLIDE, - [SPECIES_KOFFING] = BACK_ANIM_GROW_1, - [SPECIES_WEEZING] = BACK_ANIM_GROW_1, - [SPECIES_RHYHORN] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_RHYDON] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_CHANSEY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_TANGELA] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_KANGASKHAN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_HORSEA] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SEADRA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_GOLDEEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_SEAKING] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_STARYU] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_STARMIE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_MR_MIME] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_SCYTHER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_JYNX] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_ELECTABUZZ] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_MAGMAR] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_PINSIR] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_TAUROS] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_MAGIKARP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_GYARADOS] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_LAPRAS] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_DITTO] = BACK_ANIM_SHRINK_GROW_1, - [SPECIES_EEVEE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_VAPOREON] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_JOLTEON] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_FLAREON] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_PORYGON] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_OMANYTE] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_OMASTAR] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_KABUTO] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_KABUTOPS] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_GEODUDE] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_GRAVELER] = BACK_ANIM_H_SHAKE, + [SPECIES_GOLEM] = BACK_ANIM_H_SHAKE, + [SPECIES_PONYTA] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_RAPIDASH] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SLOWPOKE] = BACK_ANIM_H_SLIDE, + [SPECIES_SLOWBRO] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_MAGNEMITE] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_MAGNETON] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_FARFETCHD] = BACK_ANIM_H_SLIDE, + [SPECIES_DODUO] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_DODRIO] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SEEL] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_DEWGONG] = BACK_ANIM_H_SLIDE, + [SPECIES_GRIMER] = BACK_ANIM_V_STRETCH, + [SPECIES_MUK] = BACK_ANIM_H_STRETCH, + [SPECIES_SHELLDER] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_CLOYSTER] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_GASTLY] = BACK_ANIM_H_VIBRATE, + [SPECIES_HAUNTER] = BACK_ANIM_H_VIBRATE, + [SPECIES_GENGAR] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_ONIX] = BACK_ANIM_V_SHAKE, + [SPECIES_DROWZEE] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_HYPNO] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_KRABBY] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_KINGLER] = BACK_ANIM_V_SHAKE, + [SPECIES_VOLTORB] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_ELECTRODE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_EXEGGCUTE] = BACK_ANIM_H_SLIDE, + [SPECIES_EXEGGUTOR] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_CUBONE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_MAROWAK] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_HITMONLEE] = BACK_ANIM_H_SLIDE, + [SPECIES_HITMONCHAN] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_LICKITUNG] = BACK_ANIM_H_SLIDE, + [SPECIES_KOFFING] = BACK_ANIM_GROW, + [SPECIES_WEEZING] = BACK_ANIM_GROW, + [SPECIES_RHYHORN] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_RHYDON] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_CHANSEY] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_TANGELA] = BACK_ANIM_V_STRETCH, + [SPECIES_KANGASKHAN] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_HORSEA] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SEADRA] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_GOLDEEN] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_SEAKING] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_STARYU] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_STARMIE] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_MR_MIME] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_SCYTHER] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_JYNX] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_ELECTABUZZ] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_MAGMAR] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_PINSIR] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_TAUROS] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_MAGIKARP] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_GYARADOS] = BACK_ANIM_V_SHAKE, + [SPECIES_LAPRAS] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_DITTO] = BACK_ANIM_SHRINK_GROW, + [SPECIES_EEVEE] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_VAPOREON] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_JOLTEON] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_FLAREON] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_PORYGON] = BACK_ANIM_H_VIBRATE, + [SPECIES_OMANYTE] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_OMASTAR] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_KABUTO] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_KABUTOPS] = BACK_ANIM_JOLT_RIGHT, [SPECIES_AERODACTYL] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SNORLAX] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_ARTICUNO] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_ZAPDOS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_MOLTRES] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_DRATINI] = BACK_ANIM_H_SLIDE, - [SPECIES_DRAGONAIR] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_DRAGONITE] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_MEWTWO] = BACK_ANIM_GROW_2, - [SPECIES_MEW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_CHIKORITA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_BAYLEEF] = BACK_ANIM_H_SLIDE, - [SPECIES_MEGANIUM] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_CYNDAQUIL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_QUILAVA] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_TYPHLOSION] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_TOTODILE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_CROCONAW] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_FERALIGATR] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SENTRET] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_FURRET] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_HOOTHOOT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_NOCTOWL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_LEDYBA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_LEDIAN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_SPINARAK] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_ARIADOS] = BACK_ANIM_H_SLIDE, - [SPECIES_CROBAT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_CHINCHOU] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_LANTURN] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_PICHU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_CLEFFA] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_IGGLYBUFF] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_TOGEPI] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_TOGETIC] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_NATU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_XATU] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_MAREEP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_FLAAFFY] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_AMPHAROS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_BELLOSSOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_MARILL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_AZUMARILL] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SUDOWOODO] = BACK_ANIM_H_SLIDE, - [SPECIES_POLITOED] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_HOPPIP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_SKIPLOOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_JUMPLUFF] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_AIPOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_SUNKERN] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SUNFLORA] = BACK_ANIM_H_SLIDE, - [SPECIES_YANMA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_WOOPER] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_QUAGSIRE] = BACK_ANIM_H_SLIDE, - [SPECIES_ESPEON] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_UMBREON] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_MURKROW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_SLOWKING] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_MISDREAVUS] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_UNOWN] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_WOBBUFFET] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_GIRAFARIG] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_PINECO] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_FORRETRESS] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_DUNSPARCE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_GLIGAR] = BACK_ANIM_SHRINK_GROW_1, - [SPECIES_STEELIX] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SNUBBULL] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_GRANBULL] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_QWILFISH] = BACK_ANIM_GROW_2, - [SPECIES_SCIZOR] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SHUCKLE] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_HERACROSS] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SNEASEL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_TEDDIURSA] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_URSARING] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SLUGMA] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_MAGCARGO] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_SWINUB] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_PILOSWINE] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_CORSOLA] = BACK_ANIM_H_SLIDE, - [SPECIES_REMORAID] = BACK_ANIM_H_SLIDE, - [SPECIES_OCTILLERY] = BACK_ANIM_SHRINK_GROW_1, - [SPECIES_DELIBIRD] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_MANTINE] = BACK_ANIM_H_SLIDE, - [SPECIES_SKARMORY] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_HOUNDOUR] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_HOUNDOOM] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_KINGDRA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_PHANPY] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_DONPHAN] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_PORYGON2] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_STANTLER] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SMEARGLE] = BACK_ANIM_H_SLIDE, - [SPECIES_TYROGUE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_HITMONTOP] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE, - [SPECIES_SMOOCHUM] = BACK_ANIM_H_SLIDE, - [SPECIES_ELEKID] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_MAGBY] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_MILTANK] = BACK_ANIM_H_SLIDE, - [SPECIES_BLISSEY] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_RAIKOU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE, - [SPECIES_ENTEI] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_SUICUNE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_LARVITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_PUPITAR] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_TYRANITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_LUGIA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_HO_OH] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_CELEBI] = BACK_ANIM_FADE_GREEN_WITH_SHAKE, - [SPECIES_TREECKO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_GROVYLE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SCEPTILE] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_TORCHIC] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_COMBUSKEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_BLAZIKEN] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_MUDKIP] = BACK_ANIM_H_SLIDE, - [SPECIES_MARSHTOMP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_SWAMPERT] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_POOCHYENA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_MIGHTYENA] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_ZIGZAGOON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_LINOONE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_WURMPLE] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_SILCOON] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_BEAUTIFLY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_CASCOON] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_DUSTOX] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_LOTAD] = BACK_ANIM_H_SLIDE, - [SPECIES_LOMBRE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_LUDICOLO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_SEEDOT] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_NUZLEAF] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SHIFTRY] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_NINCADA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_NINJASK] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_SHEDINJA] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_TAILLOW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_SWELLOW] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SHROOMISH] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_BRELOOM] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_SPINDA] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE, - [SPECIES_WINGULL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_PELIPPER] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_SURSKIT] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1, - [SPECIES_MASQUERAIN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_WAILMER] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_WAILORD] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_SKITTY] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_DELCATTY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_KECLEON] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_BALTOY] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_CLAYDOL] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_NOSEPASS] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_TORKOAL] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_SABLEYE] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_BARBOACH] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_WHISCASH] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_LUVDISC] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2, - [SPECIES_CORPHISH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_CRAWDAUNT] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_FEEBAS] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1, - [SPECIES_MILOTIC] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_CARVANHA] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2, - [SPECIES_SHARPEDO] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_TRAPINCH] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_VIBRAVA] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_FLYGON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_MAKUHITA] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_HARIYAMA] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_ELECTRIKE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_MANECTRIC] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_NUMEL] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_CAMERUPT] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_SPHEAL] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SEALEO] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_WALREIN] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_CACNEA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE, - [SPECIES_CACTURNE] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_SNORUNT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_GLALIE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_LUNATONE] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_SOLROCK] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_AZURILL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_SPOINK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_GRUMPIG] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_PLUSLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_MINUN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_MAWILE] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_MEDITITE] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_MEDICHAM] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_SWABLU] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_ALTARIA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_WYNAUT] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE, - [SPECIES_DUSKULL] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_DUSCLOPS] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_ROSELIA] = BACK_ANIM_FADE_GREEN_WITH_SHAKE, - [SPECIES_SLAKOTH] = BACK_ANIM_H_SLIDE, - [SPECIES_VIGOROTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL, - [SPECIES_SLAKING] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_GULPIN] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_SWALOT] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_TROPIUS] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_WHISMUR] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_LOUDRED] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_EXPLOUD] = BACK_ANIM_GROW_2, - [SPECIES_CLAMPERL] = BACK_ANIM_DIP_RIGHT_SIDE, - [SPECIES_HUNTAIL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_GOREBYSS] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_ABSOL] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_SHUPPET] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_BANETTE] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_SEVIPER] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_ZANGOOSE] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_RELICANTH] = BACK_ANIM_H_SLIDE, - [SPECIES_ARON] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_LAIRON] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_AGGRON] = BACK_ANIM_V_SHAKE_WITH_PAUSE, - [SPECIES_CASTFORM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_VOLBEAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_ILLUMISE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_LILEEP] = BACK_ANIM_HORIZONTAL_STRETCH, - [SPECIES_CRADILY] = BACK_ANIM_VERTICAL_STRETCH, - [SPECIES_ANORITH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_ARMALDO] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_RALTS] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_KIRLIA] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_GARDEVOIR] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_BAGON] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SHELGON] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_SALAMENCE] = BACK_ANIM_HORIZONTAL_SHAKE, - [SPECIES_BELDUM] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE, - [SPECIES_METANG] = BACK_ANIM_JOLT_RIGHT, - [SPECIES_METAGROSS] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_REGIROCK] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_REGICE] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_REGISTEEL] = BACK_ANIM_VERTICAL_SHAKE, - [SPECIES_KYOGRE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE, - [SPECIES_GROUDON] = BACK_ANIM_FADE_RED_WITH_SHAKE, - [SPECIES_RAYQUAZA] = BACK_ANIM_GROW_2, - [SPECIES_LATIAS] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_LATIOS] = BACK_ANIM_H_SLIDE_QUICK, - [SPECIES_JIRACHI] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, - [SPECIES_DEOXYS] = BACK_ANIM_SHRINK_GROW_2, - [SPECIES_CHIMECHO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE, + [SPECIES_SNORLAX] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_ARTICUNO] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_ZAPDOS] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_MOLTRES] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_DRATINI] = BACK_ANIM_H_SLIDE, + [SPECIES_DRAGONAIR] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_DRAGONITE] = BACK_ANIM_V_SHAKE, + [SPECIES_MEWTWO] = BACK_ANIM_GROW_STUTTER, + [SPECIES_MEW] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_CHIKORITA] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_BAYLEEF] = BACK_ANIM_H_SLIDE, + [SPECIES_MEGANIUM] = BACK_ANIM_V_SHAKE, + [SPECIES_CYNDAQUIL] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_QUILAVA] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_TYPHLOSION] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_TOTODILE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_CROCONAW] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_FERALIGATR] = BACK_ANIM_V_SHAKE, + [SPECIES_SENTRET] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_FURRET] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_HOOTHOOT] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_NOCTOWL] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_LEDYBA] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_LEDIAN] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_SPINARAK] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_ARIADOS] = BACK_ANIM_H_SLIDE, + [SPECIES_CROBAT] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_CHINCHOU] = BACK_ANIM_V_STRETCH, + [SPECIES_LANTURN] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_PICHU] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_CLEFFA] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_IGGLYBUFF] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_TOGEPI] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_TOGETIC] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_NATU] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_XATU] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_MAREEP] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_FLAAFFY] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_AMPHAROS] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_BELLOSSOM] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_MARILL] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_AZUMARILL] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SUDOWOODO] = BACK_ANIM_H_SLIDE, + [SPECIES_POLITOED] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_HOPPIP] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_SKIPLOOM] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_JUMPLUFF] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_AIPOM] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_SUNKERN] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SUNFLORA] = BACK_ANIM_H_SLIDE, + [SPECIES_YANMA] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_WOOPER] = BACK_ANIM_V_STRETCH, + [SPECIES_QUAGSIRE] = BACK_ANIM_H_SLIDE, + [SPECIES_ESPEON] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_UMBREON] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_MURKROW] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_SLOWKING] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_MISDREAVUS] = BACK_ANIM_H_VIBRATE, + [SPECIES_UNOWN] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_WOBBUFFET] = BACK_ANIM_V_STRETCH, + [SPECIES_GIRAFARIG] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_PINECO] = BACK_ANIM_H_SHAKE, + [SPECIES_FORRETRESS] = BACK_ANIM_V_SHAKE, + [SPECIES_DUNSPARCE] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_GLIGAR] = BACK_ANIM_SHRINK_GROW, + [SPECIES_STEELIX] = BACK_ANIM_V_SHAKE, + [SPECIES_SNUBBULL] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_GRANBULL] = BACK_ANIM_V_SHAKE, + [SPECIES_QWILFISH] = BACK_ANIM_GROW_STUTTER, + [SPECIES_SCIZOR] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SHUCKLE] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_HERACROSS] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SNEASEL] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_TEDDIURSA] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_URSARING] = BACK_ANIM_V_SHAKE, + [SPECIES_SLUGMA] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_MAGCARGO] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_SWINUB] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_PILOSWINE] = BACK_ANIM_H_SHAKE, + [SPECIES_CORSOLA] = BACK_ANIM_H_SLIDE, + [SPECIES_REMORAID] = BACK_ANIM_H_SLIDE, + [SPECIES_OCTILLERY] = BACK_ANIM_SHRINK_GROW, + [SPECIES_DELIBIRD] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_MANTINE] = BACK_ANIM_H_SLIDE, + [SPECIES_SKARMORY] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_HOUNDOUR] = BACK_ANIM_V_SHAKE, + [SPECIES_HOUNDOOM] = BACK_ANIM_V_SHAKE, + [SPECIES_KINGDRA] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_PHANPY] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_DONPHAN] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_PORYGON2] = BACK_ANIM_H_VIBRATE, + [SPECIES_STANTLER] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SMEARGLE] = BACK_ANIM_H_SLIDE, + [SPECIES_TYROGUE] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_HITMONTOP] = BACK_ANIM_CIRCLE_COUNTERCLOCKWISE, + [SPECIES_SMOOCHUM] = BACK_ANIM_H_SLIDE, + [SPECIES_ELEKID] = BACK_ANIM_H_SHAKE, + [SPECIES_MAGBY] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_MILTANK] = BACK_ANIM_H_SLIDE, + [SPECIES_BLISSEY] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_RAIKOU] = BACK_ANIM_SHAKE_FLASH_YELLOW, + [SPECIES_ENTEI] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_SUICUNE] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_LARVITAR] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_PUPITAR] = BACK_ANIM_V_SHAKE, + [SPECIES_TYRANITAR] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_LUGIA] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_HO_OH] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_CELEBI] = BACK_ANIM_SHAKE_GLOW_GREEN, + [SPECIES_TREECKO] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_GROVYLE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SCEPTILE] = BACK_ANIM_V_SHAKE, + [SPECIES_TORCHIC] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_COMBUSKEN] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_BLAZIKEN] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_MUDKIP] = BACK_ANIM_H_SLIDE, + [SPECIES_MARSHTOMP] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_SWAMPERT] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_POOCHYENA] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_MIGHTYENA] = BACK_ANIM_H_SHAKE, + [SPECIES_ZIGZAGOON] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_LINOONE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_WURMPLE] = BACK_ANIM_V_STRETCH, + [SPECIES_SILCOON] = BACK_ANIM_H_SHAKE, + [SPECIES_BEAUTIFLY] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_CASCOON] = BACK_ANIM_H_SHAKE, + [SPECIES_DUSTOX] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_LOTAD] = BACK_ANIM_H_SLIDE, + [SPECIES_LOMBRE] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_LUDICOLO] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_SEEDOT] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_NUZLEAF] = BACK_ANIM_V_SHAKE, + [SPECIES_SHIFTRY] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_NINCADA] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_NINJASK] = BACK_ANIM_H_VIBRATE, + [SPECIES_SHEDINJA] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_TAILLOW] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_SWELLOW] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SHROOMISH] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_BRELOOM] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_SPINDA] = BACK_ANIM_CIRCLE_COUNTERCLOCKWISE, + [SPECIES_WINGULL] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_PELIPPER] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_SURSKIT] = BACK_ANIM_H_SPRING, + [SPECIES_MASQUERAIN] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_WAILMER] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_WAILORD] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_SKITTY] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_DELCATTY] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_KECLEON] = BACK_ANIM_H_VIBRATE, + [SPECIES_BALTOY] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_CLAYDOL] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_NOSEPASS] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_TORKOAL] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_SABLEYE] = BACK_ANIM_H_VIBRATE, + [SPECIES_BARBOACH] = BACK_ANIM_V_STRETCH, + [SPECIES_WHISCASH] = BACK_ANIM_V_SHAKE, + [SPECIES_LUVDISC] = BACK_ANIM_H_SPRING_REPEATED, + [SPECIES_CORPHISH] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_CRAWDAUNT] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_FEEBAS] = BACK_ANIM_H_SPRING, + [SPECIES_MILOTIC] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_CARVANHA] = BACK_ANIM_H_SPRING_REPEATED, + [SPECIES_SHARPEDO] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_TRAPINCH] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_VIBRAVA] = BACK_ANIM_H_VIBRATE, + [SPECIES_FLYGON] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_MAKUHITA] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_HARIYAMA] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_ELECTRIKE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_MANECTRIC] = BACK_ANIM_V_SHAKE, + [SPECIES_NUMEL] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_CAMERUPT] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_SPHEAL] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SEALEO] = BACK_ANIM_V_SHAKE, + [SPECIES_WALREIN] = BACK_ANIM_V_SHAKE, + [SPECIES_CACNEA] = BACK_ANIM_V_SHAKE_H_SLIDE, + [SPECIES_CACTURNE] = BACK_ANIM_H_SHAKE, + [SPECIES_SNORUNT] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_GLALIE] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_LUNATONE] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_SOLROCK] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_AZURILL] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_SPOINK] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_GRUMPIG] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_PLUSLE] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_MINUN] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_MAWILE] = BACK_ANIM_V_SHAKE, + [SPECIES_MEDITITE] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_MEDICHAM] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_SWABLU] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_ALTARIA] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_WYNAUT] = BACK_ANIM_CONCAVE_ARC_SMALL, + [SPECIES_DUSKULL] = BACK_ANIM_H_VIBRATE, + [SPECIES_DUSCLOPS] = BACK_ANIM_H_VIBRATE, + [SPECIES_ROSELIA] = BACK_ANIM_SHAKE_GLOW_GREEN, + [SPECIES_SLAKOTH] = BACK_ANIM_H_SLIDE, + [SPECIES_VIGOROTH] = BACK_ANIM_CONCAVE_ARC_LARGE, + [SPECIES_SLAKING] = BACK_ANIM_H_SHAKE, + [SPECIES_GULPIN] = BACK_ANIM_V_STRETCH, + [SPECIES_SWALOT] = BACK_ANIM_V_STRETCH, + [SPECIES_TROPIUS] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_WHISMUR] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_LOUDRED] = BACK_ANIM_V_SHAKE, + [SPECIES_EXPLOUD] = BACK_ANIM_GROW_STUTTER, + [SPECIES_CLAMPERL] = BACK_ANIM_DIP_RIGHT_SIDE, + [SPECIES_HUNTAIL] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_GOREBYSS] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_ABSOL] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_SHUPPET] = BACK_ANIM_H_VIBRATE, + [SPECIES_BANETTE] = BACK_ANIM_H_VIBRATE, + [SPECIES_SEVIPER] = BACK_ANIM_V_STRETCH, + [SPECIES_ZANGOOSE] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_RELICANTH] = BACK_ANIM_H_SLIDE, + [SPECIES_ARON] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_LAIRON] = BACK_ANIM_V_SHAKE, + [SPECIES_AGGRON] = BACK_ANIM_V_SHAKE_LOW, + [SPECIES_CASTFORM] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_VOLBEAT] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_ILLUMISE] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_LILEEP] = BACK_ANIM_H_STRETCH, + [SPECIES_CRADILY] = BACK_ANIM_V_STRETCH, + [SPECIES_ANORITH] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_ARMALDO] = BACK_ANIM_V_SHAKE, + [SPECIES_RALTS] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_KIRLIA] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_GARDEVOIR] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_BAGON] = BACK_ANIM_V_SHAKE, + [SPECIES_SHELGON] = BACK_ANIM_V_SHAKE, + [SPECIES_SALAMENCE] = BACK_ANIM_H_SHAKE, + [SPECIES_BELDUM] = BACK_ANIM_TRIANGLE_DOWN, + [SPECIES_METANG] = BACK_ANIM_JOLT_RIGHT, + [SPECIES_METAGROSS] = BACK_ANIM_V_SHAKE, + [SPECIES_REGIROCK] = BACK_ANIM_V_SHAKE, + [SPECIES_REGICE] = BACK_ANIM_V_SHAKE, + [SPECIES_REGISTEEL] = BACK_ANIM_V_SHAKE, + [SPECIES_KYOGRE] = BACK_ANIM_SHAKE_GLOW_BLUE, + [SPECIES_GROUDON] = BACK_ANIM_SHAKE_GLOW_RED, + [SPECIES_RAYQUAZA] = BACK_ANIM_GROW_STUTTER, + [SPECIES_LATIAS] = BACK_ANIM_H_VIBRATE, + [SPECIES_LATIOS] = BACK_ANIM_H_VIBRATE, + [SPECIES_JIRACHI] = BACK_ANIM_CONVEX_DOUBLE_ARC, + [SPECIES_DEOXYS] = BACK_ANIM_SHRINK_GROW_VIBRATE, + [SPECIES_CHIMECHO] = BACK_ANIM_CONVEX_DOUBLE_ARC, }; -static const u8 sUnknown_0860AA64[][2] = -{ - {0, 5}, - {1, 1}, - {0, 15}, - {1, 4}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {0, 0xFF} +static const u8 sFlashYellowData[][2] = +{ + {FALSE, 5}, + { TRUE, 1}, + {FALSE, 15}, + { TRUE, 4}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + {FALSE, -1} }; static const u8 sUnknown_0860AA80[][2] = { - {6, 30}, - {0xFE, 15}, - {6, 30}, - {0xFF, 0} + { 6, 30}, + {-2, 15}, + { 6, 30}, + {-1, 0} }; static void (* const sMonAnimFunctions[])(struct Sprite *sprite) = { - pokemonanimfunc_00, - pokemonanimfunc_01, - pokemonanimfunc_02, - pokemonanimfunc_03, - pokemonanimfunc_04, - pokemonanimfunc_05, - pokemonanimfunc_06, - pokemonanimfunc_07, - pokemonanimfunc_08, - pokemonanimfunc_09, - pokemonanimfunc_0A, - pokemonanimfunc_0B, - pokemonanimfunc_0C, - pokemonanimfunc_0D, - pokemonanimfunc_0E, - pokemonanimfunc_0F, - pokemonanimfunc_10, - pokemonanimfunc_11, - pokemonanimfunc_12, - pokemonanimfunc_13, - pokemonanimfunc_14, - pokemonanimfunc_15, - pokemonanimfunc_16, - pokemonanimfunc_17, - pokemonanimfunc_18, - pokemonanimfunc_19, - pokemonanimfunc_1A, - pokemonanimfunc_1B, - pokemonanimfunc_1C, - pokemonanimfunc_1D, - pokemonanimfunc_1E, - pokemonanimfunc_1F, - pokemonanimfunc_20, - pokemonanimfunc_21, - pokemonanimfunc_22, - pokemonanimfunc_23, - pokemonanimfunc_24, - pokemonanimfunc_25, - pokemonanimfunc_26, - pokemonanimfunc_27, - pokemonanimfunc_28, - pokemonanimfunc_29, - pokemonanimfunc_2A, - pokemonanimfunc_2B, - pokemonanimfunc_2C, - pokemonanimfunc_2D, - pokemonanimfunc_2E, - pokemonanimfunc_2F, - pokemonanimfunc_30, - pokemonanimfunc_31, - pokemonanimfunc_32, - pokemonanimfunc_33, - pokemonanimfunc_34, - pokemonanimfunc_35, - pokemonanimfunc_36, - pokemonanimfunc_37, - pokemonanimfunc_38, - pokemonanimfunc_39, - pokemonanimfunc_3A, - pokemonanimfunc_3B, - pokemonanimfunc_3C, - pokemonanimfunc_3D, - pokemonanimfunc_3E, - pokemonanimfunc_3F, - pokemonanimfunc_40, - pokemonanimfunc_41, - pokemonanimfunc_42, - pokemonanimfunc_43, - pokemonanimfunc_44, - pokemonanimfunc_45, - pokemonanimfunc_46, - pokemonanimfunc_47, - pokemonanimfunc_48, - pokemonanimfunc_49, - pokemonanimfunc_4A, - pokemonanimfunc_4B, - pokemonanimfunc_4C, - pokemonanimfunc_4D, - pokemonanimfunc_4E, - pokemonanimfunc_4F, - pokemonanimfunc_50, - pokemonanimfunc_51, - pokemonanimfunc_52, - pokemonanimfunc_53, - pokemonanimfunc_54, - pokemonanimfunc_55, - pokemonanimfunc_56, - pokemonanimfunc_57, - pokemonanimfunc_58, - pokemonanimfunc_59, - pokemonanimfunc_5A, - pokemonanimfunc_5B, - pokemonanimfunc_5C, - pokemonanimfunc_5D, - pokemonanimfunc_5E, - pokemonanimfunc_5F, - pokemonanimfunc_60, - pokemonanimfunc_61, - pokemonanimfunc_62, - pokemonanimfunc_63, - pokemonanimfunc_64, - pokemonanimfunc_65, - pokemonanimfunc_66, - pokemonanimfunc_67, - pokemonanimfunc_68, - pokemonanimfunc_69, - pokemonanimfunc_6A, - pokemonanimfunc_6B, - pokemonanimfunc_6C, - pokemonanimfunc_6D, - pokemonanimfunc_6E, - pokemonanimfunc_6F, - pokemonanimfunc_70, - pokemonanimfunc_71, - pokemonanimfunc_72, - pokemonanimfunc_73, - pokemonanimfunc_74, - pokemonanimfunc_75, - pokemonanimfunc_76, - pokemonanimfunc_77, - pokemonanimfunc_78, - pokemonanimfunc_79, - pokemonanimfunc_7A, - pokemonanimfunc_7B, - pokemonanimfunc_7C, - pokemonanimfunc_7D, - pokemonanimfunc_7E, - pokemonanimfunc_7F, - pokemonanimfunc_80, - pokemonanimfunc_81, - pokemonanimfunc_82, - pokemonanimfunc_83, - pokemonanimfunc_84, - pokemonanimfunc_85, - pokemonanimfunc_86, - pokemonanimfunc_87, - pokemonanimfunc_88, - pokemonanimfunc_89, - pokemonanimfunc_8A, - pokemonanimfunc_8B, - pokemonanimfunc_8C, - pokemonanimfunc_8D, - pokemonanimfunc_8E, - pokemonanimfunc_8F, - pokemonanimfunc_90, - pokemonanimfunc_91, - pokemonanimfunc_92, - pokemonanimfunc_93, - pokemonanimfunc_94, - pokemonanimfunc_95, - pokemonanimfunc_96 + [ANIM_V_SQUISH_AND_BOUNCE] = Anim_VerticalSquishBounce, + [ANIM_CIRCULAR_STRETCH_TWICE] = Anim_CircularStretchTwice, + [ANIM_H_VIBRATE] = Anim_HorizontalVibrate, + [ANIM_H_SLIDE] = Anim_HorizontalSlide, + [ANIM_V_SLIDE] = Anim_VerticalSlide, + [ANIM_BOUNCE_ROTATE_TO_SIDES] = Anim_BounceRotateToSides, + [ANIM_V_JUMPS_H_JUMPS] = Anim_VerticalJumpsHorizontalJumps, + [ANIM_ROTATE_TO_SIDES] = Anim_RotateToSides, // Unused + [ANIM_ROTATE_TO_SIDES_TWICE] = Anim_RotateToSides_Twice, + [ANIM_GROW_VIBRATE] = Anim_GrowVibrate, + [ANIM_ZIGZAG_FAST] = Anim_ZigzagFast, + [ANIM_SWING_CONCAVE] = Anim_SwingConcave, + [ANIM_SWING_CONCAVE_FAST] = Anim_SwingConcave_Fast, + [ANIM_SWING_CONVEX] = Anim_SwingConvex, + [ANIM_SWING_CONVEX_FAST] = Anim_SwingConvex_Fast, + [ANIM_H_SHAKE] = Anim_HorizontalShake, + [ANIM_V_SHAKE] = Anim_VerticalShake, + [ANIM_CIRCULAR_VIBRATE] = Anim_CircularVibrate, + [ANIM_TWIST] = Anim_Twist, + [ANIM_SHRINK_GROW] = Anim_ShrinkGrow, + [ANIM_CIRCLE_C_CLOCKWISE] = Anim_CircleCounterclockwise, + [ANIM_GLOW_BLACK] = Anim_GlowBlack, + [ANIM_H_STRETCH] = Anim_HorizontalStretch, + [ANIM_V_STRETCH] = Anim_VerticalStretch, + [ANIM_RISING_WOBBLE] = Anim_RisingWobble, + [ANIM_V_SHAKE_TWICE] = Anim_VerticalShakeTwice, + [ANIM_TIP_MOVE_FORWARD] = Anim_TipMoveForward, + [ANIM_H_PIVOT] = Anim_HorizontalPivot, + [ANIM_V_SLIDE_WOBBLE] = Anim_VerticalSlideWobble, + [ANIM_H_SLIDE_WOBBLE] = Anim_HorizontalSlideWobble, + [ANIM_V_JUMPS_BIG] = Anim_VerticalJumps_Big, + [ANIM_SPIN_LONG] = Anim_Spin_Long, // Unused + [ANIM_GLOW_ORANGE] = Anim_GlowOrange, + [ANIM_GLOW_RED] = Anim_GlowRed, // Unused + [ANIM_GLOW_BLUE] = Anim_GlowBlue, + [ANIM_GLOW_YELLOW] = Anim_GlowYellow, // Unused + [ANIM_GLOW_PURPLE] = Anim_GlowPurple, // Unused + [ANIM_BACK_AND_LUNGE] = Anim_BackAndLunge, + [ANIM_BACK_FLIP] = Anim_BackFlip, // Unused + [ANIM_FLICKER] = Anim_Flicker, // Unused + [ANIM_BACK_FLIP_BIG] = Anim_BackFlipBig, // Unused + [ANIM_FRONT_FLIP] = Anim_FrontFlip, + [ANIM_TUMBLING_FRONT_FLIP] = Anim_TumblingFrontFlip, // Unused + [ANIM_FIGURE_8] = Anim_Figure8, + [ANIM_FLASH_YELLOW] = Anim_FlashYellow, + [ANIM_SWING_CONCAVE_FAST_SHORT] = Anim_SwingConcave_FastShort, + [ANIM_SWING_CONVEX_FAST_SHORT] = Anim_SwingConvex_FastShort, // Unused + [ANIM_ROTATE_UP_SLAM_DOWN] = Anim_RotateUpSlamDown, + [ANIM_DEEP_V_SQUISH_AND_BOUNCE] = Anim_DeepVerticalSquishBounce, + [ANIM_H_JUMPS] = Anim_HorizontalJumps, + [ANIM_H_JUMPS_V_STRETCH] = Anim_HorizontalJumpsVerticalStretch, + [ANIM_ROTATE_TO_SIDES_FAST] = Anim_RotateToSides_Fast, // Unused + [ANIM_ROTATE_UP_TO_SIDES] = Anim_RotateUpToSides, + [ANIM_FLICKER_INCREASING] = Anim_FlickerIncreasing, + [ANIM_TIP_HOP_FORWARD] = Anim_TipHopForward, // Unused + [ANIM_PIVOT_SHAKE] = Anim_PivotShake, // Unused + [ANIM_TIP_AND_SHAKE] = Anim_TipAndShake, // Unused + [ANIM_VIBRATE_TO_CORNERS] = Anim_VibrateToCorners, // Unused + [ANIM_GROW_IN_STAGES] = Anim_GrowInStages, + [ANIM_V_SPRING] = Anim_VerticalSpring, // Unused + [ANIM_V_REPEATED_SPRING] = Anim_VerticalRepeatedSpring, // Unused + [ANIM_SPRING_RISING] = Anim_SpringRising, // Unused + [ANIM_H_SPRING] = Anim_HorizontalSpring, + [ANIM_H_REPEATED_SPRING_SLOW] = Anim_HorizontalRepeatedSpring_Slow, + [ANIM_H_SLIDE_SHRINK] = Anim_HorizontalSlideShrink, // Unused + [ANIM_LUNGE_GROW] = Anim_LungeGrow, + [ANIM_CIRCLE_INTO_BG] = Anim_CircleIntoBackground, + [ANIM_RAPID_H_HOPS] = Anim_RapidHorizontalHops, + [ANIM_FOUR_PETAL] = Anim_FourPetal, + [ANIM_V_SQUISH_AND_BOUNCE_SLOW] = Anim_VerticalSquishBounce_Slow, + [ANIM_H_SLIDE_SLOW] = Anim_HorizontalSlide_Slow, + [ANIM_V_SLIDE_SLOW] = Anim_VerticalSlide_Slow, + [ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL] = Anim_BounceRotateToSides_Small, + [ANIM_BOUNCE_ROTATE_TO_SIDES_SLOW] = Anim_BounceRotateToSides_Slow, + [ANIM_BOUNCE_ROTATE_TO_SIDES_SMALL_SLOW] = Anim_BounceRotateToSides_SmallSlow, + [ANIM_ZIGZAG_SLOW] = Anim_ZigzagSlow, + [ANIM_H_SHAKE_SLOW] = Anim_HorizontalShake_Slow, + [ANIM_V_SHAKE_SLOW] = Anim_VertialShake_Slow, // Unused + [ANIM_TWIST_TWICE] = Anim_Twist_Twice, + [ANIM_CIRCLE_C_CLOCKWISE_SLOW] = Anim_CircleCounterclockwise_Slow, + [ANIM_V_SHAKE_TWICE_SLOW] = Anim_VerticalShakeTwice_Slow, // Unused + [ANIM_V_SLIDE_WOBBLE_SMALL] = Anim_VerticalSlideWobble_Small, + [ANIM_V_JUMPS_SMALL] = Anim_VerticalJumps_Small, + [ANIM_SPIN] = Anim_Spin, + [ANIM_TUMBLING_FRONT_FLIP_TWICE] = Anim_TumblingFrontFlip_Twice, + [ANIM_DEEP_V_SQUISH_AND_BOUNCE_TWICE] = Anim_DeepVerticalSquishBounce_Twice, // Unused + [ANIM_H_JUMPS_V_STRETCH_TWICE] = Anim_HorizontalJumpsVerticalStretch_Twice, + [ANIM_V_SHAKE_BACK] = Anim_VerticalShakeBack, + [ANIM_V_SHAKE_BACK_SLOW] = Anim_VerticalShakeBack_Slow, + [ANIM_V_SHAKE_H_SLIDE_SLOW] = Anim_VerticalShakeHorizontalSlide_Slow, + [ANIM_V_STRETCH_BOTH_ENDS_SLOW] = Anim_VerticalStretchBothEnds_Slow, + [ANIM_H_STRETCH_FAR_SLOW] = Anim_HorizontalStretchFar_Slow, + [ANIM_V_SHAKE_LOW_TWICE] = Anim_VerticalShakeLowTwice, + [ANIM_H_SHAKE_FAST] = Anim_HorizontalShake_Fast, + [ANIM_H_SLIDE_FAST] = Anim_HorizontalSlide_Fast, + [ANIM_H_VIBRATE_FAST] = Anim_HorizontalVibrate_Fast, + [ANIM_H_VIBRATE_FASTEST] = Anim_HorizontalVibrate_Fastest, + [ANIM_V_SHAKE_BACK_FAST] = Anim_VerticalShakeBack_Fast, + [ANIM_V_SHAKE_LOW_TWICE_SLOW] = Anim_VerticalShakeLowTwice_Slow, + [ANIM_V_SHAKE_LOW_TWICE_FAST] = Anim_VerticalShakeLowTwice_Fast, + [ANIM_CIRCLE_C_CLOCKWISE_LONG] = Anim_CircleCounterclockwise_Long, + [ANIM_GROW_STUTTER_SLOW] = Anim_GrowStutter_Slow, + [ANIM_V_SHAKE_H_SLIDE] = Anim_VerticalShakeHorizontalSlide, + [ANIM_V_SHAKE_H_SLIDE_FAST] = Anim_VerticalShakeHorizontalSlide_Fast, + [ANIM_TRIANGLE_DOWN_SLOW] = Anim_TriangleDown_Slow, + [ANIM_TRIANGLE_DOWN] = Anim_TriangleDown, + [ANIM_TRIANGLE_DOWN_TWICE] = Anim_TriangleDown_Fast, + [ANIM_GROW] = Anim_Grow, + [ANIM_GROW_TWICE] = Anim_Grow_Twice, + [ANIM_H_SPRING_FAST] = Anim_HorizontalSpring_Fast, + [ANIM_H_SPRING_SLOW] = Anim_HorizontalSpring_Slow, + [ANIM_H_REPEATED_SPRING_FAST] = Anim_HorizontalRepeatedSpring_Fast, + [ANIM_H_REPEATED_SPRING] = Anim_HorizontalRepeatedSpring, + [ANIM_SHRINK_GROW_FAST] = Anim_ShrinkGrow_Fast, + [ANIM_SHRINK_GROW_SLOW] = Anim_ShrinkGrow_Slow, + [ANIM_V_STRETCH_BOTH_ENDS] = Anim_VerticalStretchBothEnds, + [ANIM_V_STRETCH_BOTH_ENDS_TWICE] = Anim_VerticalStretchBothEnds_Twice, + [ANIM_H_STRETCH_FAR_TWICE] = Anim_HorizontalStretchFar_Twice, + [ANIM_H_STRETCH_FAR] = Anim_HorizontalStretchFar, + [ANIM_GROW_STUTTER_TWICE] = Anim_GrowStutter_Twice, + [ANIM_GROW_STUTTER] = Anim_GrowStutter, + [ANIM_CONCAVE_ARC_LARGE_SLOW] = Anim_ConcaveArcLarge_Slow, + [ANIM_CONCAVE_ARC_LARGE] = Anim_ConcaveArcLarge, + [ANIM_CONCAVE_ARC_LARGE_TWICE] = Anim_ConcaveArcLarge_Twice, + [ANIM_CONVEX_DOUBLE_ARC_SLOW] = Anim_ConvexDoubleArc_Slow, + [ANIM_CONVEX_DOUBLE_ARC] = Anim_ConvexDoubleArc, + [ANIM_CONVEX_DOUBLE_ARC_TWICE] = Anim_ConvexDoubleArc_Twice, + [ANIM_CONCAVE_ARC_SMALL_SLOW] = Anim_ConcaveArcSmall_Slow, + [ANIM_CONCAVE_ARC_SMALL] = Anim_ConcaveArcSmall, + [ANIM_CONCAVE_ARC_SMALL_TWICE] = Anim_ConcaveArcSmall_Twice, + [ANIM_H_DIP] = Anim_HorizontalDip, + [ANIM_H_DIP_FAST] = Anim_HorizontalDip_Fast, + [ANIM_H_DIP_TWICE] = Anim_HorizontalDip_Twice, + [ANIM_SHRINK_GROW_VIBRATE_FAST] = Anim_ShrinkGrowVibrate_Fast, + [ANIM_SHRINK_GROW_VIBRATE] = Anim_ShrinkGrowVibrate, + [ANIM_SHRINK_GROW_VIBRATE_SLOW] = Anim_ShrinkGrowVibrate_Slow, + [ANIM_JOLT_RIGHT_FAST] = Anim_JoltRight_Fast, + [ANIM_JOLT_RIGHT] = Anim_JoltRight, + [ANIM_JOLT_RIGHT_SLOW] = Anim_JoltRight_Slow, + [ANIM_SHAKE_FLASH_YELLOW_FAST] = Anim_ShakeFlashYellow_Fast, + [ANIM_SHAKE_FLASH_YELLOW] = Anim_ShakeFlashYellow, + [ANIM_SHAKE_FLASH_YELLOW_SLOW] = Anim_ShakeFlashYellow_Slow, + [ANIM_SHAKE_GLOW_RED_FAST] = Anim_ShakeGlowRed_Fast, + [ANIM_SHAKE_GLOW_RED] = Anim_ShakeGlowRed, + [ANIM_SHAKE_GLOW_RED_SLOW] = Anim_ShakeGlowRed_Slow, + [ANIM_SHAKE_GLOW_GREEN_FAST] = Anim_ShakeGlowGreen_Fast, + [ANIM_SHAKE_GLOW_GREEN] = Anim_ShakeGlowGreen, + [ANIM_SHAKE_GLOW_GREEN_SLOW] = Anim_ShakeGlowGreen_Slow, + [ANIM_SHAKE_GLOW_BLUE_FAST] = Anim_ShakeGlowBlue_Fast, + [ANIM_SHAKE_GLOW_BLUE] = Anim_ShakeGlowBlue, + [ANIM_SHAKE_GLOW_BLUE_SLOW] = Anim_ShakeGlowBlue_Slow }; -// counting from Id 1, because 0 in sSpeciesToBackAnimSet is used for mons with no back animation +// Each back anim set has 3 possible animations depending on nature +// Each of the 3 animations is a slight variation of the others +// BACK_ANIM_NONE is skipped below. GetSpeciesBackAnimSet subtracts 1 from the back anim id static const u8 sBackAnimationIds[] = { - 0x60, 0x5f, 0x02, // 1 - 0x5e, 0x03, 0x46, // 2 - 0x6d, 0x3e, 0x6e, // 3 - 0x6f, 0x70, 0x3f, // 4 - 0x71, 0x13, 0x72, // 5 - 0x6c, 0x6b, 0x3a, // 6 - 0x64, 0x14, 0x4f, // 7 - 0x5d, 0x0f, 0x4c, // 8 - 0x61, 0x57, 0x58, // 9 - 0x67, 0x66, 0x59, // 0xA - 0x74, 0x73, 0x5a, // 0xB - 0x75, 0x76, 0x5b, // 0xC - 0x77, 0x78, 0x65, // 0xD - 0x63, 0x5c, 0x62, // 0xE - 0x6a, 0x69, 0x68, // 0xF - 0x7b, 0x7a, 0x79, // 0x10 - 0x7e, 0x7d, 0x7c, // 0x11 - 0x81, 0x80, 0x7f, // 0x12 - 0x84, 0x82, 0x83, // 0x13 - 0x85, 0x86, 0x87, // 0x14 - 0x88, 0x89, 0x8a, // 0x15 - 0x8b, 0x8c, 0x8d, // 0x16 - 0x8e, 0x8f, 0x90, // 0x17 - 0x91, 0x92, 0x93, // 0x18 - 0x94, 0x95, 0x96, // 0x19 + [(BACK_ANIM_H_VIBRATE - 1) * 3] = ANIM_H_VIBRATE_FASTEST, ANIM_H_VIBRATE_FAST, ANIM_H_VIBRATE, + [(BACK_ANIM_H_SLIDE - 1) * 3] = ANIM_H_SLIDE_FAST, ANIM_H_SLIDE, ANIM_H_SLIDE_SLOW, + [(BACK_ANIM_H_SPRING - 1) * 3] = ANIM_H_SPRING_FAST, ANIM_H_SPRING, ANIM_H_SPRING_SLOW, + [(BACK_ANIM_H_SPRING_REPEATED - 1) * 3] = ANIM_H_REPEATED_SPRING_FAST, ANIM_H_REPEATED_SPRING, ANIM_H_REPEATED_SPRING_SLOW, + [(BACK_ANIM_SHRINK_GROW - 1) * 3] = ANIM_SHRINK_GROW_FAST, ANIM_SHRINK_GROW, ANIM_SHRINK_GROW_SLOW, + [(BACK_ANIM_GROW - 1) * 3] = ANIM_GROW_TWICE, ANIM_GROW, ANIM_GROW_IN_STAGES, + [(BACK_ANIM_CIRCLE_COUNTERCLOCKWISE - 1) * 3] = ANIM_CIRCLE_C_CLOCKWISE_LONG, ANIM_CIRCLE_C_CLOCKWISE, ANIM_CIRCLE_C_CLOCKWISE_SLOW, + [(BACK_ANIM_H_SHAKE - 1) * 3] = ANIM_H_SHAKE_FAST, ANIM_H_SHAKE, ANIM_H_SHAKE_SLOW, + [(BACK_ANIM_V_SHAKE - 1) * 3] = ANIM_V_SHAKE_BACK_FAST, ANIM_V_SHAKE_BACK, ANIM_V_SHAKE_BACK_SLOW, + [(BACK_ANIM_V_SHAKE_H_SLIDE - 1) * 3] = ANIM_V_SHAKE_H_SLIDE_FAST, ANIM_V_SHAKE_H_SLIDE, ANIM_V_SHAKE_H_SLIDE_SLOW, + [(BACK_ANIM_V_STRETCH - 1) * 3] = ANIM_V_STRETCH_BOTH_ENDS_TWICE, ANIM_V_STRETCH_BOTH_ENDS, ANIM_V_STRETCH_BOTH_ENDS_SLOW, + [(BACK_ANIM_H_STRETCH - 1) * 3] = ANIM_H_STRETCH_FAR_TWICE, ANIM_H_STRETCH_FAR, ANIM_H_STRETCH_FAR_SLOW, + [(BACK_ANIM_GROW_STUTTER - 1) * 3] = ANIM_GROW_STUTTER_TWICE, ANIM_GROW_STUTTER, ANIM_GROW_STUTTER_SLOW, + [(BACK_ANIM_V_SHAKE_LOW - 1) * 3] = ANIM_V_SHAKE_LOW_TWICE_FAST, ANIM_V_SHAKE_LOW_TWICE, ANIM_V_SHAKE_LOW_TWICE_SLOW, + [(BACK_ANIM_TRIANGLE_DOWN - 1) * 3] = ANIM_TRIANGLE_DOWN_TWICE, ANIM_TRIANGLE_DOWN, ANIM_TRIANGLE_DOWN_SLOW, + [(BACK_ANIM_CONCAVE_ARC_LARGE - 1) * 3] = ANIM_CONCAVE_ARC_LARGE_TWICE, ANIM_CONCAVE_ARC_LARGE, ANIM_CONCAVE_ARC_LARGE_SLOW, + [(BACK_ANIM_CONVEX_DOUBLE_ARC - 1) * 3] = ANIM_CONVEX_DOUBLE_ARC_TWICE, ANIM_CONVEX_DOUBLE_ARC, ANIM_CONVEX_DOUBLE_ARC_SLOW, + [(BACK_ANIM_CONCAVE_ARC_SMALL - 1) * 3] = ANIM_CONCAVE_ARC_SMALL_TWICE, ANIM_CONCAVE_ARC_SMALL, ANIM_CONCAVE_ARC_SMALL_SLOW, + [(BACK_ANIM_DIP_RIGHT_SIDE - 1) * 3] = ANIM_H_DIP_TWICE, ANIM_H_DIP, ANIM_H_DIP_FAST, + [(BACK_ANIM_SHRINK_GROW_VIBRATE - 1) * 3] = ANIM_SHRINK_GROW_VIBRATE_FAST, ANIM_SHRINK_GROW_VIBRATE, ANIM_SHRINK_GROW_VIBRATE_SLOW, + [(BACK_ANIM_JOLT_RIGHT - 1) * 3] = ANIM_JOLT_RIGHT_FAST, ANIM_JOLT_RIGHT, ANIM_JOLT_RIGHT_SLOW, + [(BACK_ANIM_SHAKE_FLASH_YELLOW - 1) * 3] = ANIM_SHAKE_FLASH_YELLOW_FAST, ANIM_SHAKE_FLASH_YELLOW, ANIM_SHAKE_FLASH_YELLOW_SLOW, + [(BACK_ANIM_SHAKE_GLOW_RED - 1) * 3] = ANIM_SHAKE_GLOW_RED_FAST, ANIM_SHAKE_GLOW_RED, ANIM_SHAKE_GLOW_RED_SLOW, + [(BACK_ANIM_SHAKE_GLOW_GREEN - 1) * 3] = ANIM_SHAKE_GLOW_GREEN_FAST, ANIM_SHAKE_GLOW_GREEN, ANIM_SHAKE_GLOW_GREEN_SLOW, + [(BACK_ANIM_SHAKE_GLOW_BLUE - 1) * 3] = ANIM_SHAKE_GLOW_BLUE_FAST, ANIM_SHAKE_GLOW_BLUE, ANIM_SHAKE_GLOW_BLUE_SLOW, }; static const u8 sBackAnimNatureModTable[NUM_NATURES] = { - [NATURE_HARDY] = 0x00, - [NATURE_LONELY] = 0x02, - [NATURE_BRAVE] = 0x00, - [NATURE_ADAMANT] = 0x00, - [NATURE_NAUGHTY] = 0x00, - [NATURE_BOLD] = 0x01, - [NATURE_DOCILE] = 0x01, - [NATURE_RELAXED] = 0x01, - [NATURE_IMPISH] = 0x00, - [NATURE_LAX] = 0x01, - [NATURE_TIMID] = 0x02, - [NATURE_HASTY] = 0x00, - [NATURE_SERIOUS] = 0x01, - [NATURE_JOLLY] = 0x00, - [NATURE_NAIVE] = 0x00, - [NATURE_MODEST] = 0x02, - [NATURE_MILD] = 0x02, - [NATURE_QUIET] = 0x02, - [NATURE_BASHFUL] = 0x02, - [NATURE_RASH] = 0x01, - [NATURE_CALM] = 0x01, - [NATURE_GENTLE] = 0x02, - [NATURE_SASSY] = 0x01, - [NATURE_CAREFUL] = 0x02, - [NATURE_QUIRKY] = 0x01, + [NATURE_HARDY] = 0, + [NATURE_LONELY] = 2, + [NATURE_BRAVE] = 0, + [NATURE_ADAMANT] = 0, + [NATURE_NAUGHTY] = 0, + [NATURE_BOLD] = 1, + [NATURE_DOCILE] = 1, + [NATURE_RELAXED] = 1, + [NATURE_IMPISH] = 0, + [NATURE_LAX] = 1, + [NATURE_TIMID] = 2, + [NATURE_HASTY] = 0, + [NATURE_SERIOUS] = 1, + [NATURE_JOLLY] = 0, + [NATURE_NAIVE] = 0, + [NATURE_MODEST] = 2, + [NATURE_MILD] = 2, + [NATURE_QUIET] = 2, + [NATURE_BASHFUL] = 2, + [NATURE_RASH] = 1, + [NATURE_CALM] = 1, + [NATURE_GENTLE] = 2, + [NATURE_SASSY] = 1, + [NATURE_CAREFUL] = 2, + [NATURE_QUIRKY] = 1, }; static const union AffineAnimCmd sSpriteAffineAnim_860AD48[] = @@ -854,7 +877,7 @@ static void sub_817F3F0(struct Sprite *sprite, u16 index, s16 amplitudeX, s16 am u8 GetSpeciesBackAnimSet(u16 species) { - if (sSpeciesToBackAnimSet[species] != 0) + if (sSpeciesToBackAnimSet[species] != BACK_ANIM_NONE) return sSpeciesToBackAnimSet[species] - 1; else return 0; @@ -864,8 +887,8 @@ u8 GetSpeciesBackAnimSet(u16 species) #define tPtrHi data[1] #define tPtrLo data[2] #define tAnimId data[3] -#define tSaved0 data[4] -#define tSaved2 data[5] +#define tBattlerId data[4] +#define tSpeciesId data[5] // BUG: In vanilla, tPtrLo is read as an s16, so if bit 15 of the // address were to be set it would cause the pointer to be read @@ -885,23 +908,23 @@ static void Task_HandleMonAnimation(u8 taskId) if (gTasks[taskId].tState == 0) { - gTasks[taskId].tSaved0 = sprite->data[0]; - gTasks[taskId].tSaved2 = sprite->data[2]; - sprite->data[1] = 1; + gTasks[taskId].tBattlerId = sprite->data[0]; + gTasks[taskId].tSpeciesId = sprite->data[2]; + sprite->sDontFlip = TRUE; sprite->data[0] = 0; for (i = 2; i < ARRAY_COUNT(sprite->data); i++) sprite->data[i] = 0; sprite->callback = sMonAnimFunctions[gTasks[taskId].tAnimId]; - sUnknown_03001274 = FALSE; + sIsSummaryAnim = FALSE; gTasks[taskId].tState++; } if (sprite->callback == SpriteCallbackDummy) { - sprite->data[0] = gTasks[taskId].tSaved0; - sprite->data[2] = gTasks[taskId].tSaved2; + sprite->data[0] = gTasks[taskId].tBattlerId; + sprite->data[2] = gTasks[taskId].tSpeciesId; sprite->data[1] = 0; DestroyTask(taskId); @@ -911,14 +934,15 @@ static void Task_HandleMonAnimation(u8 taskId) void LaunchAnimationTaskForFrontSprite(struct Sprite *sprite, u8 frontAnimId) { u8 taskId = CreateTask(Task_HandleMonAnimation, 128); - gTasks[taskId].tPtrHi = (u32)(sprite) >> 0x10; + gTasks[taskId].tPtrHi = (u32)(sprite) >> 16; gTasks[taskId].tPtrLo = (u32)(sprite); gTasks[taskId].tAnimId = frontAnimId; } void StartMonSummaryAnimation(struct Sprite *sprite, u8 frontAnimId) { - sUnknown_03001274 = TRUE; + // sDontFlip is expected to still be FALSE here, not explicitly cleared + sIsSummaryAnim = TRUE; sprite->callback = sMonAnimFunctions[frontAnimId]; } @@ -927,12 +951,13 @@ void LaunchAnimationTaskForBackSprite(struct Sprite *sprite, u8 backAnimSet) u8 nature, taskId, animId, battlerId; taskId = CreateTask(Task_HandleMonAnimation, 128); - gTasks[taskId].tPtrHi = (u32)(sprite) >> 0x10; + gTasks[taskId].tPtrHi = (u32)(sprite) >> 16; gTasks[taskId].tPtrLo = (u32)(sprite); battlerId = sprite->data[0]; nature = GetNature(&gPlayerParty[gBattlerPartyIndexes[battlerId]]); + // * 3 below because each back anim has 3 variants depending on nature animId = 3 * backAnimSet + sBackAnimNatureModTable[nature]; gTasks[taskId].tAnimId = sBackAnimationIds[animId]; } @@ -941,8 +966,8 @@ void LaunchAnimationTaskForBackSprite(struct Sprite *sprite, u8 backAnimSet) #undef tPtrHi #undef tPtrLo #undef tAnimId -#undef tSaved0 -#undef tSaved2 +#undef tBattlerId +#undef tSpeciesId void SetSpriteCB_MonAnimDummy(struct Sprite *sprite) { @@ -973,21 +998,21 @@ static void HandleStartAffineAnim(struct Sprite *sprite) sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE; sprite->affineAnims = sSpriteAffineAnimTable_860AD68; - if (sUnknown_03001274 == TRUE) + if (sIsSummaryAnim == TRUE) InitSpriteAffineAnim(sprite); - if (!sprite->data[1]) + if (!sprite->sDontFlip) StartSpriteAffineAnim(sprite, 1); else StartSpriteAffineAnim(sprite, 0); CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); - sprite->affineAnimPaused = 1; + sprite->affineAnimPaused = TRUE; } static void HandleSetAffineData(struct Sprite *sprite, s16 xScale, s16 yScale, u16 rotation) { - if (!sprite->data[1]) + if (!sprite->sDontFlip) { xScale *= -1; rotation *= -1; @@ -996,47 +1021,47 @@ static void HandleSetAffineData(struct Sprite *sprite, s16 xScale, s16 yScale, u SetAffineData(sprite, xScale, yScale, rotation); } -static void sub_817F70C(struct Sprite *sprite) +static void TryFlipX(struct Sprite *sprite) { - if (!sprite->data[1]) + if (!sprite->sDontFlip) sprite->pos2.x *= -1; } -static bool32 sub_817F724(u8 id) +static bool32 InitAnimData(u8 id) { - if (id >= STRUCT_COUNT) + if (id >= MAX_BATTLERS_COUNT) { return FALSE; } else { - sUnknown_03001240[id].field_6 = 0; - sUnknown_03001240[id].field_0 = 0; - sUnknown_03001240[id].field_4 = 1; - sUnknown_03001240[id].field_2 = 0; - sUnknown_03001240[id].field_8 = 0; + sAnims[id].field_6 = 0; + sAnims[id].field_0 = 0; + sAnims[id].field_4 = 1; + sAnims[id].field_2 = 0; + sAnims[id].field_8 = 0; return TRUE; } } -static u8 sub_817F758(void) +static u8 AddNewAnim(void) { - sUnknown_03001270 = (sUnknown_03001270 + 1) % STRUCT_COUNT; - sub_817F724(sUnknown_03001270); - return sUnknown_03001270; + sAnimIdx = (sAnimIdx + 1) % MAX_BATTLERS_COUNT; + InitAnimData(sAnimIdx); + return sAnimIdx; } -static void sub_817F77C(struct Sprite *sprite) +static void ResetSpriteAfterAnim(struct Sprite *sprite) { sprite->oam.affineMode = ST_OAM_AFFINE_NORMAL; CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); - if (sUnknown_03001274 == TRUE) + if (sIsSummaryAnim == TRUE) { - if (!sprite->data[1]) - sprite->hFlip = 1; + if (!sprite->sDontFlip) + sprite->hFlip = TRUE; else - sprite->hFlip = 0; + sprite->hFlip = FALSE; FreeOamMatrix(sprite->oam.matrixNum); sprite->oam.matrixNum |= (sprite->hFlip << 3); @@ -1052,7 +1077,7 @@ static void sub_817F77C(struct Sprite *sprite) #endif // BUGFIX } -static void pokemonanimfunc_01(struct Sprite *sprite) +static void Anim_CircularStretchTwice(struct Sprite *sprite) { if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); @@ -1060,8 +1085,8 @@ static void pokemonanimfunc_01(struct Sprite *sprite) if (sprite->data[2] > 40) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1075,11 +1100,11 @@ static void pokemonanimfunc_01(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_02(struct Sprite *sprite) +static void Anim_HorizontalVibrate(struct Sprite *sprite) { if (sprite->data[2] > 40) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -1096,13 +1121,13 @@ static void pokemonanimfunc_02(struct Sprite *sprite) sprite->data[2]++; } -static void sub_817F8FC(struct Sprite *sprite) +static void HorizontalSlide(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > sprite->data[0]) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -1111,23 +1136,23 @@ static void sub_817F8FC(struct Sprite *sprite) } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_03(struct Sprite *sprite) +static void Anim_HorizontalSlide(struct Sprite *sprite) { sprite->data[0] = 40; - sub_817F8FC(sprite); - sprite->callback = sub_817F8FC; + HorizontalSlide(sprite); + sprite->callback = HorizontalSlide; } -static void sub_817F978(struct Sprite *sprite) +static void VerticalSlide(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > sprite->data[0]) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; } else @@ -1136,22 +1161,22 @@ static void sub_817F978(struct Sprite *sprite) } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_04(struct Sprite *sprite) +static void Anim_VerticalSlide(struct Sprite *sprite) { sprite->data[0] = 40; - sub_817F978(sprite); - sprite->callback = sub_817F978; + VerticalSlide(sprite); + sprite->callback = VerticalSlide; } -static void sub_817F9F4(struct Sprite *sprite) +static void VerticalJumps(struct Sprite *sprite) { s32 counter = sprite->data[2]; if (counter > 384) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; sprite->pos2.y = 0; } @@ -1175,20 +1200,20 @@ static void sub_817F9F4(struct Sprite *sprite) sprite->data[2] += 12; } -static void pokemonanimfunc_1E(struct Sprite *sprite) +static void Anim_VerticalJumps_Big(struct Sprite *sprite) { sprite->data[0] = 4; - sub_817F9F4(sprite); - sprite->callback = sub_817F9F4; + VerticalJumps(sprite); + sprite->callback = VerticalJumps; } -static void pokemonanimfunc_06(struct Sprite *sprite) +static void Anim_VerticalJumpsHorizontalJumps(struct Sprite *sprite) { s32 counter = sprite->data[2]; if (counter > 768) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; sprite->pos2.y = 0; } @@ -1222,7 +1247,7 @@ static void pokemonanimfunc_06(struct Sprite *sprite) sprite->data[2] += 12; } -static void pokemonanimfunc_09(struct Sprite *sprite) +static void Anim_GrowVibrate(struct Sprite *sprite) { if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); @@ -1230,8 +1255,8 @@ static void pokemonanimfunc_09(struct Sprite *sprite) if (sprite->data[2] > 40) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1254,32 +1279,33 @@ static void pokemonanimfunc_09(struct Sprite *sprite) sprite->data[2]++; } -static const s8 sUnknown_0860AD70[][3] = +// x delta, y delta, time +static const s8 sZigzagData[][3] = { {-1, -1, 6}, - {2, 0, 6}, + { 2, 0, 6}, {-2, 2, 6}, - {2, 0, 6}, + { 2, 0, 6}, {-2, -2, 6}, - {2, 0, 6}, + { 2, 0, 6}, {-2, 2, 6}, - {2, 0, 6}, + { 2, 0, 6}, {-1, -1, 6}, - {0, 0, 0}, + { 0, 0, 0}, }; -static void sub_817FC20(struct Sprite *sprite) +static void Zigzag(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) sprite->data[3] = 0; - if (sUnknown_0860AD70[sprite->data[3]][2] == sprite->data[2]) + if (sZigzagData[sprite->data[3]][2] == sprite->data[2]) { - if (sUnknown_0860AD70[sprite->data[3]][2] == 0) + if (sZigzagData[sprite->data[3]][2] == 0) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { @@ -1288,32 +1314,32 @@ static void sub_817FC20(struct Sprite *sprite) } } - if (sUnknown_0860AD70[sprite->data[3]][2] == 0) + if (sZigzagData[sprite->data[3]][2] == 0) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { - sprite->pos2.x += sUnknown_0860AD70[sprite->data[3]][0]; - sprite->pos2.y += sUnknown_0860AD70[sprite->data[3]][1]; + sprite->pos2.x += sZigzagData[sprite->data[3]][0]; + sprite->pos2.y += sZigzagData[sprite->data[3]][1]; sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void pokemonanimfunc_0A(struct Sprite *sprite) +static void Anim_ZigzagFast(struct Sprite *sprite) { - sub_817FC20(sprite); - sprite->callback = sub_817FC20; + Zigzag(sprite); + sprite->callback = Zigzag; } -static void sub_817FCDC(struct Sprite *sprite) +static void HorizontalShake(struct Sprite *sprite) { s32 counter = sprite->data[2]; if (counter > 2304) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -1324,21 +1350,21 @@ static void sub_817FCDC(struct Sprite *sprite) sprite->data[2] += sprite->data[0]; } -static void pokemonanimfunc_0F(struct Sprite *sprite) +static void Anim_HorizontalShake(struct Sprite *sprite) { sprite->data[0] = 60; sprite->data[7] = 3; - sub_817FCDC(sprite); - sprite->callback = sub_817FCDC; + HorizontalShake(sprite); + sprite->callback = HorizontalShake; } -static void sub_817FD44(struct Sprite *sprite) +static void VerticalShake(struct Sprite *sprite) { s32 counter = sprite->data[2]; if (counter > 2304) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; } else @@ -1349,18 +1375,18 @@ static void sub_817FD44(struct Sprite *sprite) sprite->data[2] += sprite->data[0]; } -static void pokemonanimfunc_10(struct Sprite *sprite) +static void Anim_VerticalShake(struct Sprite *sprite) { sprite->data[0] = 60; - sub_817FD44(sprite); - sprite->callback = sub_817FD44; + VerticalShake(sprite); + sprite->callback = VerticalShake; } -static void pokemonanimfunc_11(struct Sprite *sprite) +static void Anim_CircularVibrate(struct Sprite *sprite) { if (sprite->data[2] > 512) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; sprite->pos2.y = 0; } @@ -1384,36 +1410,36 @@ static void pokemonanimfunc_11(struct Sprite *sprite) sprite->data[2] += 9; } -static void sub_817FE30(struct Sprite *sprite) +static void Twist(struct Sprite *sprite) { s16 id = sprite->data[0]; - if (sUnknown_03001240[id].field_0 != 0) + if (sAnims[id].field_0 != 0) { - sUnknown_03001240[id].field_0--; + sAnims[id].field_0--; } else { - if (sprite->data[2] == 0 && sUnknown_03001240[id].field_8 == 0) + if (sprite->data[2] == 0 && sAnims[id].field_8 == 0) { HandleStartAffineAnim(sprite); - sUnknown_03001240[id].field_8++; + sAnims[id].field_8++; } - if (sprite->data[2] > sUnknown_03001240[id].field_6) + if (sprite->data[2] > sAnims[id].field_6) { HandleSetAffineData(sprite, 256, 256, 0); - if (sUnknown_03001240[id].field_4 > 1) + if (sAnims[id].field_4 > 1) { - sUnknown_03001240[id].field_4--; - sUnknown_03001240[id].field_0 = 10; + sAnims[id].field_4--; + sAnims[id].field_0 = 10; sprite->data[2] = 0; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } else @@ -1426,103 +1452,107 @@ static void sub_817FE30(struct Sprite *sprite) } } -static void pokemonanimfunc_12(struct Sprite *sprite) +static void Anim_Twist(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 512; - sUnknown_03001240[id].field_0 = 0; - sub_817FE30(sprite); - sprite->callback = sub_817FE30; + sAnims[id].field_6 = 512; + sAnims[id].field_0 = 0; + Twist(sprite); + sprite->callback = Twist; } -static void sub_817FF3C(struct Sprite *sprite) +static void Spin(struct Sprite *sprite) { u8 id = sprite->data[0]; if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); - if (sprite->data[2] > sUnknown_03001240[id].field_0) + if (sprite->data[2] > sAnims[id].field_0) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { - sprite->data[6] = (65536 / sUnknown_03001240[id].field_8) * sprite->data[2]; + sprite->data[6] = (65536 / sAnims[id].field_8) * sprite->data[2]; HandleSetAffineData(sprite, 256, 256, sprite->data[6]); } sprite->data[2]++; } -static void pokemonanimfunc_1F(struct Sprite *sprite) +static void Anim_Spin_Long(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_0 = 60; - sUnknown_03001240[id].field_8 = 20; - sub_817FF3C(sprite); - sprite->callback = sub_817FF3C; + sAnims[id].field_0 = 60; + sAnims[id].field_8 = 20; + Spin(sprite); + sprite->callback = Spin; } -static void sub_817FFF0(struct Sprite *sprite) +static void CircleCounterclockwise(struct Sprite *sprite) { u8 id = sprite->data[0]; - sub_817F70C(sprite); + TryFlipX(sprite); - if (sprite->data[2] > sUnknown_03001240[id].field_6) + if (sprite->data[2] > sAnims[id].field_6) { sprite->pos2.x = 0; sprite->pos2.y = 0; - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { s16 index = (sprite->data[2] + 192) % 256; - sprite->pos2.x = -(Cos(index, sUnknown_03001240[id].field_8 * 2)); - sprite->pos2.y = Sin(index, sUnknown_03001240[id].field_8) + sUnknown_03001240[id].field_8; + sprite->pos2.x = -(Cos(index, sAnims[id].field_8 * 2)); + sprite->pos2.y = Sin(index, sAnims[id].field_8) + sAnims[id].field_8; } - sprite->data[2] += sUnknown_03001240[id].field_2; - sub_817F70C(sprite); + sprite->data[2] += sAnims[id].field_2; + TryFlipX(sprite); } -static void pokemonanimfunc_14(struct Sprite *sprite) +static void Anim_CircleCounterclockwise(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 512; - sUnknown_03001240[id].field_8 = 6; - sUnknown_03001240[id].field_2 = 24; - sub_817FFF0(sprite); - sprite->callback = sub_817FFF0; + sAnims[id].field_6 = 512; + sAnims[id].field_8 = 6; + sAnims[id].field_2 = 24; + CircleCounterclockwise(sprite); + sprite->callback = CircleCounterclockwise; } -static void pokemonanimfunc_15(struct Sprite *sprite) -{ - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB_BLACK); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 16); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB_BLACK); - } +#define GlowColor(color, colorIncrement, speed) \ +{ \ + if (sprite->data[2] == 0) \ + sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; \ + \ + if (sprite->data[2] > 128) \ + { \ + BlendPalette(sprite->data[7], 16, 0, (color)); \ + sprite->callback = WaitAnimEnd; \ + } \ + else \ + { \ + sprite->data[6] = Sin(sprite->data[2], (colorIncrement)); \ + BlendPalette(sprite->data[7], 16, sprite->data[6], (color)); \ + } \ + sprite->data[2] += (speed); \ +} - sprite->data[2]++; +static void Anim_GlowBlack(struct Sprite *sprite) +{ + GlowColor(RGB_BLACK, 16, 1); } -static void pokemonanimfunc_16(struct Sprite *sprite) +static void Anim_HorizontalStretch(struct Sprite *sprite) { s16 index1 = 0, index2 = 0; @@ -1532,8 +1562,8 @@ static void pokemonanimfunc_16(struct Sprite *sprite) if (sprite->data[2] > 40) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1545,7 +1575,7 @@ static void pokemonanimfunc_16(struct Sprite *sprite) index1 = 0xFF & sprite->data[7]; } - if (sprite->data[1] == 0) + if (!sprite->sDontFlip) sprite->data[4] = (Sin(index2, 40) - 256) + Sin(index1, 16); else sprite->data[4] = (256 - Sin(index2, 40)) - Sin(index1, 16); @@ -1557,7 +1587,7 @@ static void pokemonanimfunc_16(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_17(struct Sprite *sprite) +static void Anim_VerticalStretch(struct Sprite *sprite) { s16 posY = 0, index1 = 0, index2 = 0; @@ -1567,8 +1597,8 @@ static void pokemonanimfunc_17(struct Sprite *sprite) if (sprite->data[2] > 40) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; sprite->pos2.y = posY; } else @@ -1581,7 +1611,7 @@ static void pokemonanimfunc_17(struct Sprite *sprite) index1 = 0xFF & sprite->data[7]; } - if (sprite->data[1] == 0) + if (!sprite->sDontFlip) sprite->data[4] = -(Sin(index2, 16)) - 256; else sprite->data[4] = Sin(index2, 16) + 256; @@ -1598,7 +1628,7 @@ static void pokemonanimfunc_17(struct Sprite *sprite) sprite->data[2]++; } -static void sub_818031C(struct Sprite *sprite) +static void VerticalShakeTwice(struct Sprite *sprite) { u8 index = sprite->data[2]; u8 var7 = sprite->data[6]; @@ -1606,14 +1636,14 @@ static void sub_818031C(struct Sprite *sprite) u8 var6 = sUnknown_0860AA80[sprite->data[5]][1]; u8 amplitude = 0; - if (var5 != 0xFE) + if (var5 != (u8)-2) amplitude = (var6 - var7) * var5 / var6; else amplitude = 0; - if (var5 == 0xFF) + if (var5 == (u8)-1) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; } else @@ -1633,18 +1663,18 @@ static void sub_818031C(struct Sprite *sprite) } } -static void pokemonanimfunc_19(struct Sprite *sprite) +static void Anim_VerticalShakeTwice(struct Sprite *sprite) { sprite->data[0] = 48; - sub_818031C(sprite); - sprite->callback = sub_818031C; + VerticalShakeTwice(sprite); + sprite->callback = VerticalShakeTwice; } -static void pokemonanimfunc_1A(struct Sprite *sprite) +static void Anim_TipMoveForward(struct Sprite *sprite) { u8 counter = 0; - sub_817F70C(sprite); + TryFlipX(sprite); counter = sprite->data[2]; if (sprite->data[2] == 0) @@ -1653,8 +1683,8 @@ static void pokemonanimfunc_1A(struct Sprite *sprite) if (sprite->data[2] > 35) { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -1670,10 +1700,10 @@ static void pokemonanimfunc_1A(struct Sprite *sprite) } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_1B(struct Sprite *sprite) +static void Anim_HorizontalPivot(struct Sprite *sprite) { if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); @@ -1682,8 +1712,8 @@ static void pokemonanimfunc_1B(struct Sprite *sprite) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1695,7 +1725,7 @@ static void pokemonanimfunc_1B(struct Sprite *sprite) sprite->data[2]++; } -static void sub_81804F8(struct Sprite *sprite) +static void VerticalSlideWobble(struct Sprite *sprite) { s32 var = 0; s16 index = 0; @@ -1707,8 +1737,8 @@ static void sub_81804F8(struct Sprite *sprite) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1722,14 +1752,14 @@ static void sub_81804F8(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_1C(struct Sprite *sprite) +static void Anim_VerticalSlideWobble(struct Sprite *sprite) { sprite->data[0] = 10; - sub_81804F8(sprite); - sprite->callback = sub_81804F8; + VerticalSlideWobble(sprite); + sprite->callback = VerticalSlideWobble; } -static void sub_81805B0(struct Sprite *sprite) +static void RisingWobble(struct Sprite *sprite) { s32 var = 0; s16 index = 0; @@ -1741,8 +1771,8 @@ static void sub_81805B0(struct Sprite *sprite) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1756,19 +1786,19 @@ static void sub_81805B0(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_18(struct Sprite *sprite) +static void Anim_RisingWobble(struct Sprite *sprite) { sprite->data[0] = 5; - sub_81805B0(sprite); - sprite->callback = sub_81805B0; + RisingWobble(sprite); + sprite->callback = RisingWobble; } -static void pokemonanimfunc_1D(struct Sprite *sprite) +static void Anim_HorizontalSlideWobble(struct Sprite *sprite) { s32 var; s16 index = 0; - sub_817F70C(sprite); + TryFlipX(sprite); var = 0; if (sprite->data[2] == 0) @@ -1778,25 +1808,23 @@ static void pokemonanimfunc_1D(struct Sprite *sprite) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { - s16 toDiv = 100; - - index = (sprite->data[2] * 256) / toDiv; - var = (sprite->data[2] * 512) / toDiv; + index = (sprite->data[2] * 256) / 100; + var = (sprite->data[2] * 512) / 100; var &= 0xFF; sprite->pos2.x = Sin(index, 8); HandleSetAffineData(sprite, 256, 256, Sin(var, 3276)); } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180714(struct Sprite *sprite) +static void VerticalSquishBounce(struct Sprite *sprite) { s16 posY = 0; @@ -1806,14 +1834,14 @@ static void sub_8180714(struct Sprite *sprite) sprite->data[3] = 0; } - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > sprite->data[0] * 3) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1830,17 +1858,17 @@ static void sub_8180714(struct Sprite *sprite) sprite->data[4] = (sprite->data[4] + 128 / sprite->data[0]) & 0xFF; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_00(struct Sprite *sprite) +static void Anim_VerticalSquishBounce(struct Sprite *sprite) { sprite->data[0] = 16; - sub_8180714(sprite); - sprite->callback = sub_8180714; + VerticalSquishBounce(sprite); + sprite->callback = VerticalSquishBounce; } -static void sub_8180828(struct Sprite *sprite) +static void ShrinkGrow(struct Sprite *sprite) { s16 posY = 0; @@ -1848,8 +1876,8 @@ static void sub_8180828(struct Sprite *sprite) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1865,7 +1893,7 @@ static void sub_8180828(struct Sprite *sprite) } } -static void pokemonanimfunc_13(struct Sprite *sprite) +static void Anim_ShrinkGrow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -1874,7 +1902,7 @@ static void pokemonanimfunc_13(struct Sprite *sprite) sprite->data[6] = 8; } - sub_8180828(sprite); + ShrinkGrow(sprite); } static const s8 sUnknown_0860AD8E[][8][3] = @@ -1901,7 +1929,7 @@ static const s8 sUnknown_0860AD8E[][8][3] = }, }; -static void sub_8180900(struct Sprite *sprite) +static void BounceRotateToSides(struct Sprite *sprite) { s16 var; u8 structId; @@ -1910,12 +1938,12 @@ static void sub_8180900(struct Sprite *sprite) s16 r7; u32 arrId; - sub_817F70C(sprite); + TryFlipX(sprite); structId = sprite->data[0]; - var = sUnknown_03001240[structId].field_6; - r9 = sUnknown_0860AD8E[sUnknown_03001240[structId].field_8][sprite->data[4]][0]; - r10 = sUnknown_0860AD8E[sUnknown_03001240[structId].field_8][sprite->data[4]][1] - r9; - arrId = sUnknown_03001240[structId].field_8; + var = sAnims[structId].field_6; + r9 = sUnknown_0860AD8E[sAnims[structId].field_8][sprite->data[4]][0]; + r10 = sUnknown_0860AD8E[sAnims[structId].field_8][sprite->data[4]][1] - r9; + arrId = sAnims[structId].field_8; r7 = sprite->data[3]; if (sprite->data[2] == 0) @@ -1929,8 +1957,8 @@ static void sub_8180900(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -1953,140 +1981,70 @@ static void sub_8180900(struct Sprite *sprite) } } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_05(struct Sprite *sprite) +static void Anim_BounceRotateToSides(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_6 = 4096; - sUnknown_03001240[id].field_8 = sprite->data[6]; - sub_8180900(sprite); - sprite->callback = sub_8180900; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_6 = 4096; + sAnims[id].field_8 = sprite->data[6]; + BounceRotateToSides(sprite); + sprite->callback = BounceRotateToSides; } -static void pokemonanimfunc_20(struct Sprite *sprite) +static void Anim_GlowOrange(struct Sprite *sprite) { - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB(31, 22, 0)); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB(31, 22, 0)); - } - - sprite->data[2] += 2; + GlowColor(RGB(31, 22, 0), 12, 2); } -static void pokemonanimfunc_21(struct Sprite *sprite) +static void Anim_GlowRed(struct Sprite *sprite) { - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB_RED); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB_RED); - } - - sprite->data[2] += 2; + GlowColor(RGB_RED, 12, 2); } -static void pokemonanimfunc_22(struct Sprite *sprite) +static void Anim_GlowBlue(struct Sprite *sprite) { - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB_BLUE); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB_BLUE); - } - - sprite->data[2] += 2; + GlowColor(RGB_BLUE, 12, 2); } -static void pokemonanimfunc_23(struct Sprite *sprite) +static void Anim_GlowYellow(struct Sprite *sprite) { - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB_YELLOW); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB_YELLOW); - } - - sprite->data[2] += 2; + GlowColor(RGB_YELLOW, 12, 2); } -static void pokemonanimfunc_24(struct Sprite *sprite) +static void Anim_GlowPurple(struct Sprite *sprite) { - if (sprite->data[2] == 0) - sprite->data[7] = (sprite->oam.paletteNum * 16) + 256; - - if (sprite->data[2] > 128) - { - BlendPalette(sprite->data[7], 0x10, 0, RGB(24, 0, 24)); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - } - else - { - sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], RGB(24, 0, 24)); - } - - sprite->data[2] += 2; + GlowColor(RGB(24, 0, 24), 12, 2); } -static void sub_8180CB4(struct Sprite *sprite); -static void sub_8180CE8(struct Sprite *sprite); -static void sub_8180D44(struct Sprite *sprite); -static void sub_8180DC0(struct Sprite *sprite); -static void sub_8180E28(struct Sprite *sprite); +static void BackAndLunge_0(struct Sprite *sprite); +static void BackAndLunge_1(struct Sprite *sprite); +static void BackAndLunge_2(struct Sprite *sprite); +static void BackAndLunge_3(struct Sprite *sprite); +static void BackAndLunge_4(struct Sprite *sprite); -static void pokemonanimfunc_25(struct Sprite *sprite) +static void Anim_BackAndLunge(struct Sprite *sprite) { HandleStartAffineAnim(sprite); - sprite->callback = sub_8180CB4; + sprite->callback = BackAndLunge_0; } -static void sub_8180CB4(struct Sprite *sprite) +static void BackAndLunge_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (++sprite->pos2.x > 7) { sprite->pos2.x = 8; sprite->data[7] = 2; - sprite->callback = sub_8180CE8; + sprite->callback = BackAndLunge_1; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180CE8(struct Sprite *sprite) +static void BackAndLunge_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x -= sprite->data[7]; sprite->data[7]++; @@ -2106,17 +2064,17 @@ static void sub_8180CE8(struct Sprite *sprite) while (subResult > -8); sprite->data[5] = 1; - sprite->callback = sub_8180D44; + sprite->callback = BackAndLunge_2; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180D44(struct Sprite *sprite) +static void BackAndLunge_2(struct Sprite *sprite) { u8 rotation; - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x -= sprite->data[7]; sprite->data[7]++; rotation = (sprite->data[5] * 6) / sprite->data[6]; @@ -2132,15 +2090,15 @@ static void sub_8180D44(struct Sprite *sprite) sprite->data[4] = 2; sprite->data[3] = 0; sprite->data[2] = rotation; - sprite->callback = sub_8180DC0; + sprite->callback = BackAndLunge_3; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180DC0(struct Sprite *sprite) +static void BackAndLunge_3(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[3] > 11) { @@ -2150,7 +2108,7 @@ static void sub_8180DC0(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, sprite->data[2] << 8); if (sprite->data[2] == 0) - sprite->callback = sub_8180E28; + sprite->callback = BackAndLunge_4; } else { @@ -2159,38 +2117,38 @@ static void sub_8180DC0(struct Sprite *sprite) sprite->data[3]++; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180E28(struct Sprite *sprite) +static void BackAndLunge_4(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x += 2; if (sprite->pos2.x > 0) { sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180E78(struct Sprite *sprite); -static void sub_8180ED0(struct Sprite *sprite); -static void sub_8180F2C(struct Sprite *sprite); +static void BackFlip_0(struct Sprite *sprite); +static void BackFlip_1(struct Sprite *sprite); +static void BackFlip_2(struct Sprite *sprite); -static void pokemonanimfunc_26(struct Sprite *sprite) +static void Anim_BackFlip(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[3] = 0; - sprite->callback = sub_8180E78; + sprite->callback = BackFlip_0; } -static void sub_8180E78(struct Sprite *sprite) +static void BackFlip_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x++; sprite->pos2.y--; @@ -2201,15 +2159,15 @@ static void sub_8180E78(struct Sprite *sprite) sprite->pos2.x = 8; sprite->pos2.y = -8; sprite->data[4] = 0; - sprite->callback = sub_8180ED0; + sprite->callback = BackFlip_1; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180ED0(struct Sprite *sprite) +static void BackFlip_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x = Cos(sprite->data[4], 16) - 8; sprite->pos2.y = Sin(sprite->data[4], 16) - 8; @@ -2217,18 +2175,18 @@ static void sub_8180ED0(struct Sprite *sprite) { sprite->data[2] = 160; sprite->data[3] = 10; - sprite->callback = sub_8180F2C; + sprite->callback = BackFlip_2; } sprite->data[4] += 8; if (sprite->data[4] > 64) sprite->data[4] = 64; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8180F2C(struct Sprite *sprite) +static void BackFlip_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[3] > 0) { @@ -2248,15 +2206,15 @@ static void sub_8180F2C(struct Sprite *sprite) { sprite->pos2.x = 0; sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_27(struct Sprite *sprite) +static void Anim_Flicker(struct Sprite *sprite) { if (sprite->data[3] > 0) { @@ -2264,30 +2222,30 @@ static void pokemonanimfunc_27(struct Sprite *sprite) } else { - sprite->data[4] = (sprite->data[4] == 0) ? 1 : 0; + sprite->data[4] = (sprite->data[4] == 0) ? TRUE : FALSE; sprite->invisible = sprite->data[4]; if (++sprite->data[2] > 19) { sprite->invisible = FALSE; - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } sprite->data[3] = 2; } } -static void sub_8181024(struct Sprite *sprite); -static void sub_8181068(struct Sprite *sprite); -static void sub_81810C4(struct Sprite *sprite); +static void BackFlipBig_0(struct Sprite *sprite); +static void BackFlipBig_1(struct Sprite *sprite); +static void BackFlipBig_2(struct Sprite *sprite); -static void pokemonanimfunc_28(struct Sprite *sprite) +static void Anim_BackFlipBig(struct Sprite *sprite) { HandleStartAffineAnim(sprite); - sprite->callback = sub_8181024; + sprite->callback = BackFlipBig_0; } -static void sub_8181024(struct Sprite *sprite) +static void BackFlipBig_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x--; sprite->pos2.y++; @@ -2295,18 +2253,18 @@ static void sub_8181024(struct Sprite *sprite) { sprite->pos2.x = -16; sprite->pos2.y = 16; - sprite->callback = sub_8181068; + sprite->callback = BackFlipBig_1; sprite->data[2] = 160; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181068(struct Sprite *sprite) +static void BackFlipBig_1(struct Sprite *sprite) { u32 rotation; - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[2] -= 4; sprite->pos2.x = Cos(sprite->data[2], 22); sprite->pos2.y = -(Sin(sprite->data[2], 22)); @@ -2314,54 +2272,54 @@ static void sub_8181068(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, rotation * 512); if (sprite->data[2] <= 32) - sprite->callback = sub_81810C4; + sprite->callback = BackFlipBig_2; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81810C4(struct Sprite *sprite) +static void BackFlipBig_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x--; sprite->pos2.y++; if (sprite->pos2.x <= 0) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181110(struct Sprite *sprite); -static void sub_8181144(struct Sprite *sprite); -static void sub_81811A4(struct Sprite *sprite); +static void FrontFlip_0(struct Sprite *sprite); +static void FrontFlip_1(struct Sprite *sprite); +static void FrontFlip_2(struct Sprite *sprite); -static void pokemonanimfunc_29(struct Sprite *sprite) +static void Anim_FrontFlip(struct Sprite *sprite) { HandleStartAffineAnim(sprite); - sprite->callback = sub_8181110; + sprite->callback = FrontFlip_0; } -static void sub_8181110(struct Sprite *sprite) +static void FrontFlip_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x++; sprite->pos2.y--; if (sprite->pos2.x > 15) { sprite->data[2] = 0; - sprite->callback = sub_8181144; + sprite->callback = FrontFlip_1; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181144(struct Sprite *sprite) +static void FrontFlip_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[2] += 16; if (sprite->pos2.x <= -16) @@ -2369,7 +2327,7 @@ static void sub_8181144(struct Sprite *sprite) sprite->pos2.x = -16; sprite->pos2.y = 16; sprite->data[2] = 0; - sprite->callback = sub_81811A4; + sprite->callback = FrontFlip_2; } else { @@ -2378,12 +2336,12 @@ static void sub_8181144(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, sprite->data[2] << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81811A4(struct Sprite *sprite) +static void FrontFlip_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x++; sprite->pos2.y--;; @@ -2391,37 +2349,37 @@ static void sub_81811A4(struct Sprite *sprite) { sprite->pos2.x = 0; sprite->pos2.y = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181214(struct Sprite *sprite); +static void TumblingFrontFlip(struct Sprite *sprite); -static void pokemonanimfunc_2A(struct Sprite *sprite) +static void Anim_TumblingFrontFlip(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_2 = 2; - sub_8181214(sprite); - sprite->callback = sub_8181214; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_2 = 2; + TumblingFrontFlip(sprite); + sprite->callback = TumblingFrontFlip; } -static void sub_8181214(struct Sprite *sprite) +static void TumblingFrontFlip(struct Sprite *sprite) { - if (sUnknown_03001240[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].field_0 != 0) { - sUnknown_03001240[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].field_0--; } else { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { sprite->data[2]++; HandleStartAffineAnim(sprite); - sprite->data[7] = sUnknown_03001240[sprite->data[0]].field_2; + sprite->data[7] = sAnims[sprite->data[0]].field_2; sprite->data[3] = -1; sprite->data[4] = -1; sprite->data[5] = 0; @@ -2448,38 +2406,38 @@ static void sub_8181214(struct Sprite *sprite) { sprite->pos2.x = 0; sprite->pos2.y = 0; - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_4--; sprite->data[5] = 0; sprite->data[6] = 0; - sUnknown_03001240[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].field_0 = 10; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } HandleSetAffineData(sprite, 256, 256, sprite->data[6] << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void sub_8181370(struct Sprite *sprite); +static void Figure8(struct Sprite *sprite); -static void pokemonanimfunc_2B(struct Sprite *sprite) +static void Anim_Figure8(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[6] = 0; sprite->data[7] = 0; - sprite->callback = sub_8181370; + sprite->callback = Figure8; } -static void sub_8181370(struct Sprite *sprite) +static void Figure8(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[6] += 4; sprite->pos2.x = -(Sin(sprite->data[6], 16)); sprite->pos2.y = -(Sin((sprite->data[6] * 2) & 0xFF, 8)); @@ -2499,13 +2457,13 @@ static void sub_8181370(struct Sprite *sprite) sprite->pos2.x = 0; sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_2C(struct Sprite *sprite) +static void Anim_FlashYellow(struct Sprite *sprite) { if (++sprite->data[2] == 1) { @@ -2515,23 +2473,23 @@ static void pokemonanimfunc_2C(struct Sprite *sprite) sprite->data[4] = 0; } - if (sUnknown_0860AA64[sprite->data[6]][1] == 0xFF) + if (sFlashYellowData[sprite->data[6]][1] == (u8)-1) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { if (sprite->data[4] == 1) { - if (sUnknown_0860AA64[sprite->data[6]][0] != 0) - BlendPalette(sprite->data[7], 0x10, 0x10, RGB_YELLOW); + if (sFlashYellowData[sprite->data[6]][0]) + BlendPalette(sprite->data[7], 16, 16, RGB_YELLOW); else - BlendPalette(sprite->data[7], 0x10, 0, RGB_YELLOW); + BlendPalette(sprite->data[7], 16, 0, RGB_YELLOW); sprite->data[4] = 0; } - if (sUnknown_0860AA64[sprite->data[6]][1] == sprite->data[5]) + if (sFlashYellowData[sprite->data[6]][1] == sprite->data[5]) { sprite->data[4] = 1; sprite->data[5] = 0; @@ -2544,101 +2502,101 @@ static void pokemonanimfunc_2C(struct Sprite *sprite) } } -static void sub_81814D4(struct Sprite *sprite) +static void SwingConcave(struct Sprite *sprite) { if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); - sub_817F70C(sprite); - if (sprite->data[2] > sUnknown_03001240[sprite->data[0]].field_8) + TryFlipX(sprite); + if (sprite->data[2] > sAnims[sprite->data[0]].field_8) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_4--; sprite->data[2] = 0; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } else { - s16 index = (sprite->data[2] * 256) / sUnknown_03001240[sprite->data[0]].field_8; + s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].field_8; sprite->pos2.x = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, Sin(index, 3276)); } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_2D(struct Sprite *sprite) +static void Anim_SwingConcave_FastShort(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_8 = 50; - sub_81814D4(sprite); - sprite->callback = sub_81814D4; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_8 = 50; + SwingConcave(sprite); + sprite->callback = SwingConcave; } -static void sub_81815D4(struct Sprite *sprite) +static void SwingConvex(struct Sprite *sprite) { if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); - sub_817F70C(sprite); - if (sprite->data[2] > sUnknown_03001240[sprite->data[0]].field_8) + TryFlipX(sprite); + if (sprite->data[2] > sAnims[sprite->data[0]].field_8) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_4--; sprite->data[2] = 0; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } else { - s16 index = (sprite->data[2] * 256) / sUnknown_03001240[sprite->data[0]].field_8; + s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].field_8; sprite->pos2.x = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, -(Sin(index, 3276))); } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_2E(struct Sprite *sprite) +static void Anim_SwingConvex_FastShort(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_8 = 50; - sub_81815D4(sprite); - sprite->callback = sub_81815D4; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_8 = 50; + SwingConvex(sprite); + sprite->callback = SwingConvex; } -static void sub_8181708(struct Sprite *sprite); -static void sub_8181770(struct Sprite *sprite); -static void sub_8181794(struct Sprite *sprite); +static void RotateUpSlamDown_0(struct Sprite *sprite); +static void RotateUpSlamDown_1(struct Sprite *sprite); +static void RotateUpSlamDown_2(struct Sprite *sprite); -static void pokemonanimfunc_2F(struct Sprite *sprite) +static void Anim_RotateUpSlamDown(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[6] = -(14 * sprite->centerToCornerVecX / 10); sprite->data[7] = 128; - sprite->callback = sub_8181708; + sprite->callback = RotateUpSlamDown_0; } -static void sub_8181708(struct Sprite *sprite) +static void RotateUpSlamDown_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[7]--; sprite->pos2.x = Cos(sprite->data[7], sprite->data[6]) + sprite->data[6]; @@ -2649,26 +2607,26 @@ static void sub_8181708(struct Sprite *sprite) { sprite->data[7] = 120; sprite->data[3] = 0; - sprite->callback = sub_8181770; + sprite->callback = RotateUpSlamDown_1; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181770(struct Sprite *sprite) +static void RotateUpSlamDown_1(struct Sprite *sprite) { if (sprite->data[3] == 20) { - sprite->callback = sub_8181794; + sprite->callback = RotateUpSlamDown_2; sprite->data[3] = 0; } sprite->data[3]++; } -static void sub_8181794(struct Sprite *sprite) +static void RotateUpSlamDown_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[7] += 2; sprite->pos2.x = Cos(sprite->data[7], sprite->data[6]) + sprite->data[6]; @@ -2681,18 +2639,18 @@ static void sub_8181794(struct Sprite *sprite) sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); sprite->data[2] = 0; - sub_817F77C(sprite); - sprite->callback = pokemonanimfunc_10; + ResetSpriteAfterAnim(sprite); + sprite->callback = Anim_VerticalShake; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181810(struct Sprite *sprite) +static void DeepVerticalSquishBounce(struct Sprite *sprite) { - if (sUnknown_03001240[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].field_0 != 0) { - sUnknown_03001240[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].field_0--; } else { @@ -2724,41 +2682,41 @@ static void sub_8181810(struct Sprite *sprite) HandleSetAffineData(sprite, 256 + sprite->data[6], 256 - sprite->data[7], 0); if (sprite->data[4] == 128) { - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; - sUnknown_03001240[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_0 = 10; sprite->data[4] = 0; sprite->data[5] = 0; } else { HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } } } - sprite->data[4] += sUnknown_03001240[sprite->data[0]].field_6; + sprite->data[4] += sAnims[sprite->data[0]].field_6; } } -static void pokemonanimfunc_30(struct Sprite *sprite) +static void Anim_DeepVerticalSquishBounce(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_6 = 4; - sub_8181810(sprite); - sprite->callback = sub_8181810; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_6 = 4; + DeepVerticalSquishBounce(sprite); + sprite->callback = DeepVerticalSquishBounce; } -static void pokemonanimfunc_31(struct Sprite *sprite) +static void Anim_HorizontalJumps(struct Sprite *sprite) { s32 counter = sprite->data[2]; - sub_817F70C(sprite); + TryFlipX(sprite); if (counter > 512) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; sprite->pos2.y = 0; } @@ -2784,61 +2742,61 @@ static void pokemonanimfunc_31(struct Sprite *sprite) } sprite->data[2] += 12; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181ABC(struct Sprite *sprite); -static void sub_8181B4C(struct Sprite *sprite); -static void sub_8181C2C(struct Sprite *sprite); +static void HorizontalJumpsVerticalStretch_0(struct Sprite *sprite); +static void HorizontalJumpsVerticalStretch_1(struct Sprite *sprite); +static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite); -static void pokemonanimfunc_32(struct Sprite *sprite) +static void Anim_HorizontalJumpsVerticalStretch(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_8 = -1; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_8 = -1; HandleStartAffineAnim(sprite); sprite->data[3] = 0; - sub_8181ABC(sprite); - sprite->callback = sub_8181ABC; + HorizontalJumpsVerticalStretch_0(sprite); + sprite->callback = HorizontalJumpsVerticalStretch_0; } -static void sub_8181ABC(struct Sprite *sprite) +static void HorizontalJumpsVerticalStretch_0(struct Sprite *sprite) { - if (sUnknown_03001240[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].field_0 != 0) { - sUnknown_03001240[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].field_0--; } else { s32 counter; - sub_817F70C(sprite); + TryFlipX(sprite); counter = sprite->data[2]; if (sprite->data[2] > 128) { sprite->data[2] = 0; - sprite->callback = sub_8181B4C; + sprite->callback = HorizontalJumpsVerticalStretch_1; } else { - s32 var = 8 * sUnknown_03001240[sprite->data[0]].field_8; + s32 var = 8 * sAnims[sprite->data[0]].field_8; sprite->pos2.x = var * (counter % 128) / 128; sprite->pos2.y = -(Sin(counter % 128, 8)); sprite->data[2] += 12; } - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void sub_8181B4C(struct Sprite *sprite) +static void HorizontalJumpsVerticalStretch_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 48) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.y = 0; sprite->data[2] = 0; - sprite->callback = sub_8181C2C; + sprite->callback = HorizontalJumpsVerticalStretch_2; } else { @@ -2847,7 +2805,7 @@ static void sub_8181B4C(struct Sprite *sprite) if (sprite->data[2] >= 16 && sprite->data[2] <= 31) { sprite->data[3] += 8; - sprite->pos2.x -= sUnknown_03001240[sprite->data[0]].field_8; + sprite->pos2.x -= sAnims[sprite->data[0]].field_8; } yDelta = 0; @@ -2861,30 +2819,30 @@ static void sub_8181B4C(struct Sprite *sprite) sprite->data[4] &= 0xFF; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181C2C(struct Sprite *sprite) +static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite) { s32 counter; - sub_817F70C(sprite); + TryFlipX(sprite); counter = sprite->data[2]; if (counter > 128) { - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; - sUnknown_03001240[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_0 = 10; sprite->data[3] = 0; sprite->data[2] = 0; sprite->data[4] = 0; - sprite->callback = sub_8181ABC; + sprite->callback = HorizontalJumpsVerticalStretch_0; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } sprite->pos2.x = 0; @@ -2892,17 +2850,17 @@ static void sub_8181C2C(struct Sprite *sprite) } else { - s32 var = sUnknown_03001240[sprite->data[0]].field_8; + s32 var = sAnims[sprite->data[0]].field_8; sprite->pos2.x = var * ((counter % 128) * 8) / 128 + 8 * -var; sprite->pos2.y = -(Sin(counter % 128, 8)); } sprite->data[2] += 12; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181CE8(struct Sprite *sprite) +static void RotateToSides(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -2910,25 +2868,25 @@ static void sub_8181CE8(struct Sprite *sprite) sprite->data[2]++; } - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] > 254) { sprite->pos2.x = 0; sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - if (sUnknown_03001240[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].field_4 > 1) { - sUnknown_03001240[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].field_4--; sprite->data[2] = 0; sprite->data[7] = 0; } else { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } else { @@ -2937,20 +2895,20 @@ static void sub_8181CE8(struct Sprite *sprite) sprite->pos2.x = -(Sin(sprite->data[7], 16)); rotation = Sin(sprite->data[7], 32); HandleSetAffineData(sprite, 256, 256, rotation << 8); - sprite->data[7] += sUnknown_03001240[sprite->data[0]].field_6; - sub_817F70C(sprite); + sprite->data[7] += sAnims[sprite->data[0]].field_6; + TryFlipX(sprite); } } -static void pokemonanimfunc_33(struct Sprite *sprite) +static void Anim_RotateToSides_Fast(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); - sUnknown_03001240[id].field_6 = 4; - sub_8181CE8(sprite); - sprite->callback = sub_8181CE8; + u8 id = sprite->data[0] = AddNewAnim(); + sAnims[id].field_6 = 4; + RotateToSides(sprite); + sprite->callback = RotateToSides; } -static void pokemonanimfunc_34(struct Sprite *sprite) +static void Anim_RotateUpToSides(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -2958,15 +2916,15 @@ static void pokemonanimfunc_34(struct Sprite *sprite) sprite->data[2]++; } - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] > 254) { sprite->pos2.x = 0; sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; - sub_817F70C(sprite); + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; + TryFlipX(sprite); } else { @@ -2977,11 +2935,11 @@ static void pokemonanimfunc_34(struct Sprite *sprite) rotation = Sin(sprite->data[7], 32); HandleSetAffineData(sprite, 256, 256, rotation << 8); sprite->data[7] += 8; - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void pokemonanimfunc_35(struct Sprite *sprite) +static void Anim_FlickerIncreasing(struct Sprite *sprite) { if (sprite->data[2] == 0) sprite->data[7] = 0; @@ -3001,28 +2959,28 @@ static void pokemonanimfunc_35(struct Sprite *sprite) if (sprite->data[2] > 10) { sprite->invisible = FALSE; - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } } -static void sub_8181F14(struct Sprite *sprite); -static void sub_8181F50(struct Sprite *sprite); -static void sub_8181FC0(struct Sprite *sprite); +static void TipHopForward_0(struct Sprite *sprite); +static void TipHopForward_1(struct Sprite *sprite); +static void TipHopForward_2(struct Sprite *sprite); -static void pokemonanimfunc_36(struct Sprite *sprite) +static void Anim_TipHopForward(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[7] = 0; - sprite->callback = sub_8181F14; + sprite->callback = TipHopForward_0; } -static void sub_8181F14(struct Sprite *sprite) +static void TipHopForward_0(struct Sprite *sprite) { if (sprite->data[7] > 31) { sprite->data[7] = 32; sprite->data[2] = 0; - sprite->callback = sub_8181F50; + sprite->callback = TipHopForward_1; } else { @@ -3032,12 +2990,12 @@ static void sub_8181F14(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, sprite->data[7] << 8); } -static void sub_8181F50(struct Sprite *sprite) +static void TipHopForward_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 512) { - sprite->callback = sub_8181FC0; + sprite->callback = TipHopForward_2; sprite->data[6] = 0; } else @@ -3047,19 +3005,19 @@ static void sub_8181F50(struct Sprite *sprite) sprite->data[2] += 12; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8181FC0(struct Sprite *sprite) +static void TipHopForward_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[7] -= 2; if (sprite->data[7] < 0) { sprite->data[7] = 0; sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -3067,10 +3025,10 @@ static void sub_8181FC0(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, sprite->data[7] << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_37(struct Sprite *sprite) +static void Anim_PivotShake(struct Sprite *sprite) { u16 rotation; @@ -3081,14 +3039,14 @@ static void pokemonanimfunc_37(struct Sprite *sprite) sprite->data[7] = 0; } - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] > 255) { sprite->pos2.x = 0; sprite->pos2.y = 0; sprite->data[7] = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -3099,31 +3057,31 @@ static void pokemonanimfunc_37(struct Sprite *sprite) rotation = Sin(sprite->data[7] % 128, 16); HandleSetAffineData(sprite, 256, 256, rotation << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81820FC(struct Sprite *sprite); -static void sub_818216C(struct Sprite *sprite); -static void sub_81821CC(struct Sprite *sprite); -static void sub_8182248(struct Sprite *sprite); +static void TipAndShake_0(struct Sprite *sprite); +static void TipAndShake_1(struct Sprite *sprite); +static void TipAndShake_2(struct Sprite *sprite); +static void TipAndShake_3(struct Sprite *sprite); -static void pokemonanimfunc_38(struct Sprite *sprite) +static void Anim_TipAndShake(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[7] = 0; sprite->data[4] = 0; - sprite->callback = sub_81820FC; + sprite->callback = TipAndShake_0; } -static void sub_81820FC(struct Sprite *sprite) +static void TipAndShake_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] > 24) { if (++sprite->data[4] > 4) { sprite->data[4] = 0; - sprite->callback = sub_818216C; + sprite->callback = TipAndShake_1; } } else @@ -3134,16 +3092,16 @@ static void sub_81820FC(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_818216C(struct Sprite *sprite) +static void TipAndShake_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] > 32) { sprite->data[6] = 1; - sprite->callback = sub_81821CC; + sprite->callback = TipAndShake_2; } else { @@ -3153,17 +3111,17 @@ static void sub_818216C(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81821CC(struct Sprite *sprite) +static void TipAndShake_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->data[7] += (sprite->data[6] * 4); if (sprite->data[5] > 9) { sprite->data[7] = 32; - sprite->callback = sub_8182248; + sprite->callback = TipAndShake_3; } sprite->pos2.x = Sin(sprite->data[7], 8); @@ -3175,17 +3133,17 @@ static void sub_81821CC(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8182248(struct Sprite *sprite) +static void TipAndShake_3(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[7] <= 0) { sprite->data[7] = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -3195,15 +3153,15 @@ static void sub_8182248(struct Sprite *sprite) } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_39(struct Sprite *sprite) +static void Anim_VibrateToCorners(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 40) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -3227,12 +3185,12 @@ static void pokemonanimfunc_39(struct Sprite *sprite) } sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_3A(struct Sprite *sprite) +static void Anim_GrowInStages(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -3262,8 +3220,8 @@ static void pokemonanimfunc_3A(struct Sprite *sprite) { sprite->data[7] = 64; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } var = Cos(sprite->data[7], 64); } @@ -3295,10 +3253,10 @@ static void pokemonanimfunc_3A(struct Sprite *sprite) HandleSetAffineData(sprite, 256 - var, 256 - var, 0); } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_3B(struct Sprite *sprite) +static void Anim_VerticalSpring(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -3311,8 +3269,8 @@ static void pokemonanimfunc_3B(struct Sprite *sprite) { sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -3325,7 +3283,7 @@ static void pokemonanimfunc_3B(struct Sprite *sprite) } } -static void pokemonanimfunc_3C(struct Sprite *sprite) +static void Anim_VerticalRepeatedSpring(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -3338,8 +3296,8 @@ static void pokemonanimfunc_3C(struct Sprite *sprite) { sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -3352,18 +3310,18 @@ static void pokemonanimfunc_3C(struct Sprite *sprite) } } -static void sub_81825F8(struct Sprite *sprite); -static void sub_8182648(struct Sprite *sprite); -static void sub_81826F8(struct Sprite *sprite); +static void SpringRising_0(struct Sprite *sprite); +static void SpringRising_1(struct Sprite *sprite); +static void SpringRising_2(struct Sprite *sprite); -static void pokemonanimfunc_3D(struct Sprite *sprite) +static void Anim_SpringRising(struct Sprite *sprite) { HandleStartAffineAnim(sprite); - sprite->callback = sub_81825F8; + sprite->callback = SpringRising_0; sprite->data[7] = 0; } -static void sub_81825F8(struct Sprite *sprite) +static void SpringRising_0(struct Sprite *sprite) { s16 yScale; @@ -3372,7 +3330,7 @@ static void sub_81825F8(struct Sprite *sprite) { sprite->data[7] = 0; sprite->data[6] = 0; - sprite->callback = sub_8182648; + sprite->callback = SpringRising_1; yScale = Sin(64, 128); // 128 * 1 = 128 } else @@ -3383,7 +3341,7 @@ static void sub_81825F8(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256 + yScale, 0); } -static void sub_8182648(struct Sprite *sprite) +static void SpringRising_1(struct Sprite *sprite) { s16 yScale; @@ -3417,11 +3375,11 @@ static void sub_8182648(struct Sprite *sprite) if (sprite->data[6] == 3) { sprite->data[7] = 0; - sprite->callback = sub_81826F8; + sprite->callback = SpringRising_2; } } -static void sub_81826F8(struct Sprite *sprite) +static void SpringRising_2(struct Sprite *sprite) { s16 yScale; @@ -3430,8 +3388,8 @@ static void sub_81826F8(struct Sprite *sprite) sprite->pos2.y = -(Cos(sprite->data[7], 12)); if (sprite->data[7] > 63) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); } @@ -3439,13 +3397,13 @@ static void sub_81826F8(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256 + yScale, 0); } -static void sub_8182764(struct Sprite *sprite) +static void HorizontalSpring(struct Sprite *sprite) { if (sprite->data[7] > sprite->data[5]) { sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; HandleSetAffineData(sprite, 256, 256, 0); } else @@ -3459,7 +3417,7 @@ static void sub_8182764(struct Sprite *sprite) } } -static void pokemonanimfunc_3E(struct Sprite *sprite) +static void Anim_HorizontalSpring(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -3471,16 +3429,16 @@ static void pokemonanimfunc_3E(struct Sprite *sprite) sprite->data[4] = 8; } - sub_8182764(sprite); + HorizontalSpring(sprite); } -static void sub_8182830(struct Sprite *sprite) +static void HorizontalRepeatedSpring(struct Sprite *sprite) { if (sprite->data[7] > sprite->data[5]) { sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; HandleSetAffineData(sprite, 256, 256, 0); } else @@ -3494,7 +3452,7 @@ static void sub_8182830(struct Sprite *sprite) } } -static void pokemonanimfunc_3F(struct Sprite *sprite) +static void Anim_HorizontalRepeatedSpring_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -3506,12 +3464,12 @@ static void pokemonanimfunc_3F(struct Sprite *sprite) sprite->data[4] = 16; } - sub_8182830(sprite); + HorizontalRepeatedSpring(sprite); } -static void pokemonanimfunc_40(struct Sprite *sprite) +static void Anim_HorizontalSlideShrink(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -3522,9 +3480,9 @@ static void pokemonanimfunc_40(struct Sprite *sprite) if (sprite->data[7] > 512) { sprite->pos2.x = 0; - sub_817F77C(sprite); + ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { @@ -3536,12 +3494,12 @@ static void pokemonanimfunc_40(struct Sprite *sprite) HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_41(struct Sprite *sprite) +static void Anim_LungeGrow(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -3552,9 +3510,9 @@ static void pokemonanimfunc_41(struct Sprite *sprite) if (sprite->data[7] > 512) { sprite->pos2.x = 0; - sub_817F77C(sprite); + ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { @@ -3566,12 +3524,12 @@ static void pokemonanimfunc_41(struct Sprite *sprite) HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_42(struct Sprite *sprite) +static void Anim_CircleIntoBackground(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -3582,9 +3540,9 @@ static void pokemonanimfunc_42(struct Sprite *sprite) if (sprite->data[7] > 512) { sprite->pos2.x = 0; - sub_817F77C(sprite); + ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { @@ -3596,15 +3554,15 @@ static void pokemonanimfunc_42(struct Sprite *sprite) HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_43(struct Sprite *sprite) +static void Anim_RapidHorizontalHops(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 2048) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->data[6] = 0; } else @@ -3630,12 +3588,12 @@ static void pokemonanimfunc_43(struct Sprite *sprite) sprite->data[2] += 24; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_44(struct Sprite *sprite) +static void Anim_FourPetal(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { sprite->data[6] = 0; @@ -3683,64 +3641,64 @@ static void pokemonanimfunc_44(struct Sprite *sprite) default: sprite->pos2.x = 0; sprite->pos2.y = 0; - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; break; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_45(struct Sprite *sprite) +static void Anim_VerticalSquishBounce_Slow(struct Sprite *sprite) { sprite->data[0] = 32; - sub_8180714(sprite); - sprite->callback = sub_8180714; + VerticalSquishBounce(sprite); + sprite->callback = VerticalSquishBounce; } -static void pokemonanimfunc_46(struct Sprite *sprite) +static void Anim_HorizontalSlide_Slow(struct Sprite *sprite) { sprite->data[0] = 80; - sub_817F8FC(sprite); - sprite->callback = sub_817F8FC; + HorizontalSlide(sprite); + sprite->callback = HorizontalSlide; } -static void pokemonanimfunc_47(struct Sprite *sprite) +static void Anim_VerticalSlide_Slow(struct Sprite *sprite) { sprite->data[0] = 80; - sub_817F978(sprite); - sprite->callback = sub_817F978; + VerticalSlide(sprite); + sprite->callback = VerticalSlide; } -static void pokemonanimfunc_48(struct Sprite *sprite) +static void Anim_BounceRotateToSides_Small(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 2048; - sUnknown_03001240[id].field_8 = sprite->data[6]; - sub_8180900(sprite); - sprite->callback = sub_8180900; + sAnims[id].field_6 = 2048; + sAnims[id].field_8 = sprite->data[6]; + BounceRotateToSides(sprite); + sprite->callback = BounceRotateToSides; } -static void pokemonanimfunc_49(struct Sprite *sprite) +static void Anim_BounceRotateToSides_Slow(struct Sprite *sprite) { sprite->data[6] = 1; - pokemonanimfunc_05(sprite); + Anim_BounceRotateToSides(sprite); } -static void pokemonanimfunc_4A(struct Sprite *sprite) +static void Anim_BounceRotateToSides_SmallSlow(struct Sprite *sprite) { sprite->data[6] = 1; - pokemonanimfunc_48(sprite); + Anim_BounceRotateToSides_Small(sprite); } -static void pokemonanimfunc_4B(struct Sprite *sprite) +static void Anim_ZigzagSlow(struct Sprite *sprite) { if (sprite->data[2] == 0) sprite->data[0] = 0; if (sprite->data[0] <= 0) { - sub_817FC20(sprite); + Zigzag(sprite); sprite->data[0] = 1; } else @@ -3749,169 +3707,170 @@ static void pokemonanimfunc_4B(struct Sprite *sprite) } } -static void pokemonanimfunc_4C(struct Sprite *sprite) +static void Anim_HorizontalShake_Slow(struct Sprite *sprite) { sprite->data[0] = 30; sprite->data[7] = 3; - sub_817FCDC(sprite); - sprite->callback = sub_817FCDC; + HorizontalShake(sprite); + sprite->callback = HorizontalShake; } -static void pokemonanimfunc_4D(struct Sprite *sprite) +static void Anim_VertialShake_Slow(struct Sprite *sprite) { sprite->data[0] = 30; - sub_817FD44(sprite); - sprite->callback = sub_817FD44; + VerticalShake(sprite); + sprite->callback = VerticalShake; } -static void pokemonanimfunc_4E(struct Sprite *sprite) +static void Anim_Twist_Twice(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 1024; - sUnknown_03001240[id].field_0 = 0; - sUnknown_03001240[id].field_4 = 2; - sub_817FE30(sprite); - sprite->callback = sub_817FE30; + sAnims[id].field_6 = 1024; + sAnims[id].field_0 = 0; + sAnims[id].field_4 = 2; + Twist(sprite); + sprite->callback = Twist; } -static void pokemonanimfunc_4F(struct Sprite *sprite) +static void Anim_CircleCounterclockwise_Slow(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 512; - sUnknown_03001240[id].field_8 = 3; - sUnknown_03001240[id].field_2 = 12; - sub_817FFF0(sprite); - sprite->callback = sub_817FFF0; + sAnims[id].field_6 = 512; + sAnims[id].field_8 = 3; + sAnims[id].field_2 = 12; + CircleCounterclockwise(sprite); + sprite->callback = CircleCounterclockwise; } -static void pokemonanimfunc_50(struct Sprite *sprite) +static void Anim_VerticalShakeTwice_Slow(struct Sprite *sprite) { sprite->data[0] = 24; - sub_818031C(sprite); - sprite->callback = sub_818031C; + VerticalShakeTwice(sprite); + sprite->callback = VerticalShakeTwice; } -static void pokemonanimfunc_51(struct Sprite *sprite) +static void Anim_VerticalSlideWobble_Small(struct Sprite *sprite) { sprite->data[0] = 5; - sub_81804F8(sprite); - sprite->callback = sub_81804F8; + VerticalSlideWobble(sprite); + sprite->callback = VerticalSlideWobble; } -static void pokemonanimfunc_52(struct Sprite *sprite) +static void Anim_VerticalJumps_Small(struct Sprite *sprite) { sprite->data[0] = 3; - sub_817F9F4(sprite); - sprite->callback = sub_817F9F4; + VerticalJumps(sprite); + sprite->callback = VerticalJumps; } -static void pokemonanimfunc_53(struct Sprite *sprite) +static void Anim_Spin(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_0 = 60; - sUnknown_03001240[id].field_8 = 30; - sub_817FF3C(sprite); - sprite->callback = sub_817FF3C; + sAnims[id].field_0 = 60; + sAnims[id].field_8 = 30; + Spin(sprite); + sprite->callback = Spin; } -static void pokemonanimfunc_54(struct Sprite *sprite) +static void Anim_TumblingFrontFlip_Twice(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_2 = 1; - sUnknown_03001240[id].field_4 = 2; - sub_8181214(sprite); - sprite->callback = sub_8181214; + sAnims[id].field_2 = 1; + sAnims[id].field_4 = 2; + TumblingFrontFlip(sprite); + sprite->callback = TumblingFrontFlip; } -static void pokemonanimfunc_55(struct Sprite *sprite) +static void Anim_DeepVerticalSquishBounce_Twice(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 4; - sUnknown_03001240[id].field_4 = 2; - sub_8181810(sprite); - sprite->callback = sub_8181810; + sAnims[id].field_6 = 4; + sAnims[id].field_4 = 2; + DeepVerticalSquishBounce(sprite); + sprite->callback = DeepVerticalSquishBounce; } -static void pokemonanimfunc_56(struct Sprite *sprite) +static void Anim_HorizontalJumpsVerticalStretch_Twice(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_8 = 1; - sUnknown_03001240[id].field_4 = 2; + sAnims[id].field_8 = 1; + sAnims[id].field_4 = 2; HandleStartAffineAnim(sprite); sprite->data[3] = 0; - sub_8181ABC(sprite); - sprite->callback = sub_8181ABC; + HorizontalJumpsVerticalStretch_0(sprite); + sprite->callback = HorizontalJumpsVerticalStretch_0; } -static void pokemonanimfunc_07(struct Sprite *sprite) +static void Anim_RotateToSides(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 2; - sub_8181CE8(sprite); - sprite->callback = sub_8181CE8; + sAnims[id].field_6 = 2; + RotateToSides(sprite); + sprite->callback = RotateToSides; } -static void pokemonanimfunc_08(struct Sprite *sprite) +static void Anim_RotateToSides_Twice(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 4; - sUnknown_03001240[id].field_4 = 2; - sub_8181CE8(sprite); - sprite->callback = sub_8181CE8; + sAnims[id].field_6 = 4; + sAnims[id].field_4 = 2; + RotateToSides(sprite); + sprite->callback = RotateToSides; } -static void pokemonanimfunc_0B(struct Sprite *sprite) +static void Anim_SwingConcave(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_8 = 100; - sub_81814D4(sprite); - sprite->callback = sub_81814D4; + sAnims[id].field_8 = 100; + SwingConcave(sprite); + sprite->callback = SwingConcave; } -static void pokemonanimfunc_0C(struct Sprite *sprite) +static void Anim_SwingConcave_Fast(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_8 = 50; - sUnknown_03001240[id].field_4 = 2; - sub_81814D4(sprite); - sprite->callback = sub_81814D4; + sAnims[id].field_8 = 50; + sAnims[id].field_4 = 2; + SwingConcave(sprite); + sprite->callback = SwingConcave; } -static void pokemonanimfunc_0D(struct Sprite *sprite) +static void Anim_SwingConvex(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_8 = 100; - sub_81815D4(sprite); - sprite->callback = sub_81815D4; + sAnims[id].field_8 = 100; + SwingConvex(sprite); + sprite->callback = SwingConvex; } -static void pokemonanimfunc_0E(struct Sprite *sprite) +static void Anim_SwingConvex_Fast(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_8 = 50; - sUnknown_03001240[id].field_4 = 2; - sub_81815D4(sprite); - sprite->callback = sub_81815D4; + sAnims[id].field_8 = 50; + sAnims[id].field_4 = 2; + SwingConvex(sprite); + sprite->callback = SwingConvex; } -static void sub_8183140(struct Sprite *sprite) +// Very similar to VerticalShake, used by back animations only +static void VerticalShakeBack(struct Sprite *sprite) { s32 counter = sprite->data[2]; if (counter > 2304) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; } else @@ -3922,28 +3881,28 @@ static void sub_8183140(struct Sprite *sprite) sprite->data[2] += sprite->data[0]; } -static void pokemonanimfunc_57(struct Sprite *sprite) +static void Anim_VerticalShakeBack(struct Sprite *sprite) { sprite->data[0] = 60; sprite->data[7] = 3; - sub_8183140(sprite); - sprite->callback = sub_8183140; + VerticalShakeBack(sprite); + sprite->callback = VerticalShakeBack; } -static void pokemonanimfunc_58(struct Sprite *sprite) +static void Anim_VerticalShakeBack_Slow(struct Sprite *sprite) { sprite->data[0] = 30; sprite->data[7] = 3; - sub_8183140(sprite); - sprite->callback = sub_8183140; + VerticalShakeBack(sprite); + sprite->callback = VerticalShakeBack; } -static void pokemonanimfunc_59(struct Sprite *sprite) +static void Anim_VerticalShakeHorizontalSlide_Slow(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 2048) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->data[6] = 0; } else @@ -3969,10 +3928,10 @@ static void pokemonanimfunc_59(struct Sprite *sprite) sprite->data[2] += 24; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81832C8(struct Sprite *sprite) +static void VerticalStretchBothEnds(struct Sprite *sprite) { s16 index1 = 0, index2 = 0; @@ -3983,8 +3942,8 @@ static void sub_81832C8(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); if (sprite->data[4] <= 1) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -4006,7 +3965,7 @@ static void sub_81832C8(struct Sprite *sprite) index1 = sprite->data[7] & 0xFF; } - if (sprite->data[1] == 0) + if (!sprite->sDontFlip) xScale = -256 - Sin(index2, 16); else xScale = 256 + Sin(index2, 16); @@ -4018,7 +3977,7 @@ static void sub_81832C8(struct Sprite *sprite) } } -static void pokemonanimfunc_5A(struct Sprite *sprite) +static void Anim_VerticalStretchBothEnds_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4031,10 +3990,10 @@ static void pokemonanimfunc_5A(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81832C8(sprite); + VerticalStretchBothEnds(sprite); } -static void sub_8183418(struct Sprite *sprite) +static void HorizontalStretchFar(struct Sprite *sprite) { s16 index1 = 0, index2; @@ -4044,8 +4003,8 @@ static void sub_8183418(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); if (sprite->data[4] <= 1) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -4069,7 +4028,7 @@ static void sub_8183418(struct Sprite *sprite) amplitude = sprite->data[3]; - if (sprite->data[1] == 0) + if (!sprite->sDontFlip) xScale = -256 + Sin(index2, amplitude) + Sin(index1, amplitude / 5 * 2); else xScale = 256 - Sin(index2, amplitude) - Sin(index1, amplitude / 5 * 2); @@ -4079,7 +4038,7 @@ static void sub_8183418(struct Sprite *sprite) } } -static void pokemonanimfunc_5B(struct Sprite *sprite) +static void Anim_HorizontalStretchFar_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4092,29 +4051,29 @@ static void pokemonanimfunc_5B(struct Sprite *sprite) sprite->data[7] = 0; } - sub_8183418(sprite); + HorizontalStretchFar(sprite); } -static void sub_8183574(struct Sprite *sprite) +static void VerticalShakeLowTwice(struct Sprite *sprite) { u8 var6, var7; u8 var8 = sprite->data[2]; u8 var9 = sprite->data[6]; u8 var5 = sUnknown_0860AA80[sprite->data[5]][0]; u8 var2 = var5; - if (var5 != 0xFF) + if (var5 != (u8)-1) var5 = sprite->data[7]; else - var5 = 0xFF; // needed to match + var5 = (u8)-1; // needed to match var6 = sUnknown_0860AA80[sprite->data[5]][1]; var7 = 0; - if (var2 != 0xFE) + if (var2 != (u8)-2) var7 = (var6 - var9) * var5 / var6; - if (var5 == 0xFF) + if (var5 == (u8)-1) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.y = 0; } else @@ -4133,34 +4092,35 @@ static void sub_8183574(struct Sprite *sprite) } } -static void pokemonanimfunc_5C(struct Sprite *sprite) +// Very similar in appearance to Anim_VerticalShakeTwice (especially the fast variant), but deeper +static void Anim_VerticalShakeLowTwice(struct Sprite *sprite) { sprite->data[0] = 40; sprite->data[7] = 6; - sub_8183574(sprite); - sprite->callback = sub_8183574; + VerticalShakeLowTwice(sprite); + sprite->callback = VerticalShakeLowTwice; } -static void pokemonanimfunc_5D(struct Sprite *sprite) +static void Anim_HorizontalShake_Fast(struct Sprite *sprite) { sprite->data[0] = 70; sprite->data[7] = 6; - sub_817FCDC(sprite); - sprite->callback = sub_817FCDC; + HorizontalShake(sprite); + sprite->callback = HorizontalShake; } -static void pokemonanimfunc_5E(struct Sprite *sprite) +static void Anim_HorizontalSlide_Fast(struct Sprite *sprite) { sprite->data[0] = 20; - sub_817F8FC(sprite); - sprite->callback = sub_817F8FC; + HorizontalSlide(sprite); + sprite->callback = HorizontalSlide; } -static void pokemonanimfunc_5F(struct Sprite *sprite) +static void Anim_HorizontalVibrate_Fast(struct Sprite *sprite) { if (sprite->data[2] > 40) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -4177,11 +4137,11 @@ static void pokemonanimfunc_5F(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_60(struct Sprite *sprite) +static void Anim_HorizontalVibrate_Fastest(struct Sprite *sprite) { if (sprite->data[2] > 40) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; } else @@ -4198,42 +4158,42 @@ static void pokemonanimfunc_60(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_61(struct Sprite *sprite) +static void Anim_VerticalShakeBack_Fast(struct Sprite *sprite) { sprite->data[0] = 70; sprite->data[7] = 6; - sub_8183140(sprite); - sprite->callback = sub_8183140; + VerticalShakeBack(sprite); + sprite->callback = VerticalShakeBack; } -static void pokemonanimfunc_62(struct Sprite *sprite) +static void Anim_VerticalShakeLowTwice_Slow(struct Sprite *sprite) { sprite->data[0] = 24; sprite->data[7] = 6; - sub_8183574(sprite); - sprite->callback = sub_8183574; + VerticalShakeLowTwice(sprite); + sprite->callback = VerticalShakeLowTwice; } -static void pokemonanimfunc_63(struct Sprite *sprite) +static void Anim_VerticalShakeLowTwice_Fast(struct Sprite *sprite) { sprite->data[0] = 56; sprite->data[7] = 9; - sub_8183574(sprite); - sprite->callback = sub_8183574; + VerticalShakeLowTwice(sprite); + sprite->callback = VerticalShakeLowTwice; } -static void pokemonanimfunc_64(struct Sprite *sprite) +static void Anim_CircleCounterclockwise_Long(struct Sprite *sprite) { - u8 id = sprite->data[0] = sub_817F758(); + u8 id = sprite->data[0] = AddNewAnim(); - sUnknown_03001240[id].field_6 = 1024; - sUnknown_03001240[id].field_8 = 6; - sUnknown_03001240[id].field_2 = 24; - sub_817FFF0(sprite); - sprite->callback = sub_817FFF0; + sAnims[id].field_6 = 1024; + sAnims[id].field_8 = 6; + sAnims[id].field_2 = 24; + CircleCounterclockwise(sprite); + sprite->callback = CircleCounterclockwise; } -static void sub_81837DC(struct Sprite *sprite) +static void GrowStutter(struct Sprite *sprite) { s16 index1 = 0, index2 = 0; if (sprite->data[5] > sprite->data[6]) @@ -4243,8 +4203,8 @@ static void sub_81837DC(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); if (sprite->data[4] <= 1) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -4268,7 +4228,7 @@ static void sub_81837DC(struct Sprite *sprite) amplitude = sprite->data[3]; - if (sprite->data[1] == 0) + if (!sprite->sDontFlip) xScale = Sin(index2, amplitude) + (Sin(index1, amplitude / 5 * 2) - 256); else xScale = 256 - Sin(index1, amplitude / 5 * 2) - Sin(index2, amplitude); @@ -4279,7 +4239,7 @@ static void sub_81837DC(struct Sprite *sprite) } } -static void pokemonanimfunc_65(struct Sprite *sprite) +static void Anim_GrowStutter_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4292,15 +4252,15 @@ static void pokemonanimfunc_65(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81837DC(sprite); + GrowStutter(sprite); } -static void pokemonanimfunc_66(struct Sprite *sprite) +static void Anim_VerticalShakeHorizontalSlide(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 2048) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->data[6] = 0; } else @@ -4326,15 +4286,15 @@ static void pokemonanimfunc_66(struct Sprite *sprite) sprite->data[2] += 48; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_67(struct Sprite *sprite) +static void Anim_VerticalShakeHorizontalSlide_Fast(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] > 2048) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->data[6] = 0; } else @@ -4360,7 +4320,7 @@ static void pokemonanimfunc_67(struct Sprite *sprite) sprite->data[2] += 64; } - sub_817F70C(sprite); + TryFlipX(sprite); } static const s8 sUnknown_0860ADBE[][3] = @@ -4372,9 +4332,9 @@ static const s8 sUnknown_0860ADBE[][3] = {0, 0, 0} }; -static void sub_8183B4C(struct Sprite *sprite) +static void TriangleDown(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) sprite->data[3] = 0; @@ -4387,7 +4347,7 @@ static void sub_8183B4C(struct Sprite *sprite) if (sUnknown_0860ADBE[sprite->data[3]][2] / sprite->data[5] == 0) { if (--sprite->data[6] == 0) - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; else sprite->data[2] = 0; } @@ -4395,44 +4355,44 @@ static void sub_8183B4C(struct Sprite *sprite) { s32 amplitude = sprite->data[5]; sprite->pos2.x += (sUnknown_0860ADBE[sprite->data[3]][0] * amplitude); - sprite->pos2.y += (sUnknown_0860ADBE[sprite->data[3]][1] * sprite->data[5]); // what's the point of the var if you're not reusing it? + sprite->pos2.y += (sUnknown_0860ADBE[sprite->data[3]][1] * sprite->data[5]); sprite->data[2]++; - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void pokemonanimfunc_68(struct Sprite *sprite) +static void Anim_TriangleDown_Slow(struct Sprite *sprite) { sprite->data[5] = 1; sprite->data[6] = 1; - sub_8183B4C(sprite); - sprite->callback = sub_8183B4C; + TriangleDown(sprite); + sprite->callback = TriangleDown; } -static void pokemonanimfunc_69(struct Sprite *sprite) +static void Anim_TriangleDown(struct Sprite *sprite) { sprite->data[5] = 2; sprite->data[6] = 1; - sub_8183B4C(sprite); - sprite->callback = sub_8183B4C; + TriangleDown(sprite); + sprite->callback = TriangleDown; } -static void pokemonanimfunc_6A(struct Sprite *sprite) +static void Anim_TriangleDown_Fast(struct Sprite *sprite) { sprite->data[5] = 2; sprite->data[6] = 2; - sub_8183B4C(sprite); - sprite->callback = sub_8183B4C; + TriangleDown(sprite); + sprite->callback = TriangleDown; } -static void sub_8183C6C(struct Sprite *sprite) +static void Grow(struct Sprite *sprite) { if (sprite->data[7] > 255) { if (sprite->data[5] <= 1) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; HandleSetAffineData(sprite, 256, 256, 0); } else @@ -4454,9 +4414,9 @@ static void sub_8183C6C(struct Sprite *sprite) } } -static void pokemonanimfunc_6B(struct Sprite *sprite) +static void Anim_Grow(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -4466,13 +4426,13 @@ static void pokemonanimfunc_6B(struct Sprite *sprite) sprite->data[5] = 1; } - sub_8183C6C(sprite); - sub_817F70C(sprite); + Grow(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_6C(struct Sprite *sprite) +static void Anim_Grow_Twice(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); @@ -4482,11 +4442,11 @@ static void pokemonanimfunc_6C(struct Sprite *sprite) sprite->data[5] = 2; } - sub_8183C6C(sprite); - sub_817F70C(sprite); + Grow(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_6D(struct Sprite *sprite) +static void Anim_HorizontalSpring_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4498,10 +4458,10 @@ static void pokemonanimfunc_6D(struct Sprite *sprite) sprite->data[4] = 16; } - sub_8182764(sprite); + HorizontalSpring(sprite); } -static void pokemonanimfunc_6E(struct Sprite *sprite) +static void Anim_HorizontalSpring_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4513,10 +4473,10 @@ static void pokemonanimfunc_6E(struct Sprite *sprite) sprite->data[4] = 16; } - sub_8182764(sprite); + HorizontalSpring(sprite); } -static void pokemonanimfunc_6F(struct Sprite *sprite) +static void Anim_HorizontalRepeatedSpring_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4528,10 +4488,10 @@ static void pokemonanimfunc_6F(struct Sprite *sprite) sprite->data[4] = 16; } - sub_8182830(sprite); + HorizontalRepeatedSpring(sprite); } -static void pokemonanimfunc_70(struct Sprite *sprite) +static void Anim_HorizontalRepeatedSpring(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4543,10 +4503,10 @@ static void pokemonanimfunc_70(struct Sprite *sprite) sprite->data[4] = 8; } - sub_8182830(sprite); + HorizontalRepeatedSpring(sprite); } -static void pokemonanimfunc_71(struct Sprite *sprite) +static void Anim_ShrinkGrow_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4555,10 +4515,10 @@ static void pokemonanimfunc_71(struct Sprite *sprite) sprite->data[6] = 8; } - sub_8180828(sprite); + ShrinkGrow(sprite); } -static void pokemonanimfunc_72(struct Sprite *sprite) +static void Anim_ShrinkGrow_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4567,10 +4527,10 @@ static void pokemonanimfunc_72(struct Sprite *sprite) sprite->data[6] = 4; } - sub_8180828(sprite); + ShrinkGrow(sprite); } -static void pokemonanimfunc_73(struct Sprite *sprite) +static void Anim_VerticalStretchBothEnds(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4582,10 +4542,10 @@ static void pokemonanimfunc_73(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81832C8(sprite); + VerticalStretchBothEnds(sprite); } -static void pokemonanimfunc_74(struct Sprite *sprite) +static void Anim_VerticalStretchBothEnds_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4597,10 +4557,10 @@ static void pokemonanimfunc_74(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81832C8(sprite); + VerticalStretchBothEnds(sprite); } -static void pokemonanimfunc_75(struct Sprite *sprite) +static void Anim_HorizontalStretchFar_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4613,10 +4573,10 @@ static void pokemonanimfunc_75(struct Sprite *sprite) sprite->data[7] = 0; } - sub_8183418(sprite); + HorizontalStretchFar(sprite); } -static void pokemonanimfunc_76(struct Sprite *sprite) +static void Anim_HorizontalStretchFar(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4629,10 +4589,10 @@ static void pokemonanimfunc_76(struct Sprite *sprite) sprite->data[7] = 0; } - sub_8183418(sprite); + HorizontalStretchFar(sprite); } -static void pokemonanimfunc_77(struct Sprite *sprite) +static void Anim_GrowStutter_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4645,10 +4605,10 @@ static void pokemonanimfunc_77(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81837DC(sprite); + GrowStutter(sprite); } -static void pokemonanimfunc_78(struct Sprite *sprite) +static void Anim_GrowStutter(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4661,16 +4621,16 @@ static void pokemonanimfunc_78(struct Sprite *sprite) sprite->data[7] = 0; } - sub_81837DC(sprite); + GrowStutter(sprite); } -static void sub_8183FA8(struct Sprite *sprite) +static void ConcaveArc(struct Sprite *sprite) { if (sprite->data[7] > 255) { if (sprite->data[6] <= 1) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; sprite->pos2.x = 0; sprite->pos2.y = 0; } @@ -4692,7 +4652,7 @@ static void sub_8183FA8(struct Sprite *sprite) } } -static void pokemonanimfunc_79(struct Sprite *sprite) +static void Anim_ConcaveArcLarge_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4704,10 +4664,10 @@ static void pokemonanimfunc_79(struct Sprite *sprite) sprite->data[3] = 4; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } -static void pokemonanimfunc_7A(struct Sprite *sprite) +static void Anim_ConcaveArcLarge(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4719,10 +4679,10 @@ static void pokemonanimfunc_7A(struct Sprite *sprite) sprite->data[3] = 6; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } -static void pokemonanimfunc_7B(struct Sprite *sprite) +static void Anim_ConcaveArcLarge_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4734,16 +4694,16 @@ static void pokemonanimfunc_7B(struct Sprite *sprite) sprite->data[3] = 8; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } -static void sub_81840C4(struct Sprite *sprite) +static void ConvexDoubleArc(struct Sprite *sprite) { if (sprite->data[7] > 256) { if (sprite->data[6] <= sprite->data[4]) { - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { @@ -4783,7 +4743,7 @@ static void sub_81840C4(struct Sprite *sprite) } } -static void pokemonanimfunc_7C(struct Sprite *sprite) +static void Anim_ConvexDoubleArc_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4795,10 +4755,10 @@ static void pokemonanimfunc_7C(struct Sprite *sprite) sprite->data[3] = 4; } - sub_81840C4(sprite); + ConvexDoubleArc(sprite); } -static void pokemonanimfunc_7D(struct Sprite *sprite) +static void Anim_ConvexDoubleArc(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4810,10 +4770,10 @@ static void pokemonanimfunc_7D(struct Sprite *sprite) sprite->data[3] = 6; } - sub_81840C4(sprite); + ConvexDoubleArc(sprite); } -static void pokemonanimfunc_7E(struct Sprite *sprite) +static void Anim_ConvexDoubleArc_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4825,10 +4785,10 @@ static void pokemonanimfunc_7E(struct Sprite *sprite) sprite->data[3] = 8; } - sub_81840C4(sprite); + ConvexDoubleArc(sprite); } -static void pokemonanimfunc_7F(struct Sprite *sprite) +static void Anim_ConcaveArcSmall_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4840,10 +4800,10 @@ static void pokemonanimfunc_7F(struct Sprite *sprite) sprite->data[3] = 4; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } -static void pokemonanimfunc_80(struct Sprite *sprite) +static void Anim_ConcaveArcSmall(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4855,10 +4815,10 @@ static void pokemonanimfunc_80(struct Sprite *sprite) sprite->data[3] = 6; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } -static void pokemonanimfunc_81(struct Sprite *sprite) +static void Anim_ConcaveArcSmall_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4870,7 +4830,7 @@ static void pokemonanimfunc_81(struct Sprite *sprite) sprite->data[3] = 8; } - sub_8183FA8(sprite); + ConcaveArc(sprite); } static void sub_8184290(struct Sprite *sprite) @@ -4881,7 +4841,7 @@ static void sub_8184290(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, sprite->data[6]); } -static void pokemonanimfunc_82(struct Sprite *sprite) +static void Anim_HorizontalDip(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4901,8 +4861,8 @@ static void pokemonanimfunc_82(struct Sprite *sprite) sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; return; } else @@ -4918,7 +4878,7 @@ static void pokemonanimfunc_82(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_83(struct Sprite *sprite) +static void Anim_HorizontalDip_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4938,8 +4898,8 @@ static void pokemonanimfunc_83(struct Sprite *sprite) sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; return; } else @@ -4955,7 +4915,7 @@ static void pokemonanimfunc_83(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_84(struct Sprite *sprite) +static void Anim_HorizontalDip_Twice(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4975,8 +4935,8 @@ static void pokemonanimfunc_84(struct Sprite *sprite) sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; return; } else @@ -4992,14 +4952,14 @@ static void pokemonanimfunc_84(struct Sprite *sprite) sprite->data[2]++; } -static void sub_8184468(struct Sprite *sprite) +static void ShrinkGrowVibrate(struct Sprite *sprite) { if (sprite->data[2] > sprite->data[7]) { sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } else { @@ -5032,7 +4992,7 @@ static void sub_8184468(struct Sprite *sprite) sprite->data[2]++; } -static void pokemonanimfunc_85(struct Sprite *sprite) +static void Anim_ShrinkGrowVibrate_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5042,10 +5002,10 @@ static void pokemonanimfunc_85(struct Sprite *sprite) sprite->data[7] = 80; } - sub_8184468(sprite); + ShrinkGrowVibrate(sprite); } -static void pokemonanimfunc_86(struct Sprite *sprite) +static void Anim_ShrinkGrowVibrate(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5055,10 +5015,10 @@ static void pokemonanimfunc_86(struct Sprite *sprite) sprite->data[7] = 40; } - sub_8184468(sprite); + ShrinkGrowVibrate(sprite); } -static void pokemonanimfunc_87(struct Sprite *sprite) +static void Anim_ShrinkGrowVibrate_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5068,59 +5028,59 @@ static void pokemonanimfunc_87(struct Sprite *sprite) sprite->data[7] = 80; } - sub_8184468(sprite); + ShrinkGrowVibrate(sprite); } -static void sub_8184610(struct Sprite *sprite); -static void sub_8184640(struct Sprite *sprite); -static void sub_8184678(struct Sprite *sprite); -static void sub_81846B8(struct Sprite *sprite); +static void JoltRight_0(struct Sprite *sprite); +static void JoltRight_1(struct Sprite *sprite); +static void JoltRight_2(struct Sprite *sprite); +static void JoltRight_3(struct Sprite *sprite); -static void sub_81845D4(struct Sprite *sprite) +static void JoltRight(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x -= sprite->data[2]; if (sprite->pos2.x <= -sprite->data[6]) { sprite->pos2.x = -sprite->data[6]; sprite->data[7] = 2; - sprite->callback = sub_8184610; + sprite->callback = JoltRight_0; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8184610(struct Sprite *sprite) +static void JoltRight_0(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x += sprite->data[7]; sprite->data[7]++; if (sprite->pos2.x >= 0) - sprite->callback = sub_8184640; + sprite->callback = JoltRight_1; - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8184640(struct Sprite *sprite) +static void JoltRight_1(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x += sprite->data[7]; sprite->data[7]++; if (sprite->pos2.x > sprite->data[6]) { sprite->pos2.x = sprite->data[6]; - sprite->callback = sub_8184678; + sprite->callback = JoltRight_2; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_8184678(struct Sprite *sprite) +static void JoltRight_2(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[3] >= sprite->data[5]) { - sprite->callback = sub_81846B8; + sprite->callback = JoltRight_3; } else { @@ -5129,24 +5089,24 @@ static void sub_8184678(struct Sprite *sprite) sprite->data[3]++; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void sub_81846B8(struct Sprite *sprite) +static void JoltRight_3(struct Sprite *sprite) { - sub_817F70C(sprite); + TryFlipX(sprite); sprite->pos2.x -= 2; if (sprite->pos2.x <= 0) { sprite->pos2.x = 0; - sub_817F77C(sprite); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + ResetSpriteAfterAnim(sprite); + sprite->callback = WaitAnimEnd; } - sub_817F70C(sprite); + TryFlipX(sprite); } -static void pokemonanimfunc_88(struct Sprite *sprite) +static void Anim_JoltRight_Fast(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[7] = 4; @@ -5155,10 +5115,10 @@ static void pokemonanimfunc_88(struct Sprite *sprite) sprite->data[4] = 4; sprite->data[3] = 0; sprite->data[2] = 2; - sprite->callback = sub_81845D4; + sprite->callback = JoltRight; } -static void pokemonanimfunc_89(struct Sprite *sprite) +static void Anim_JoltRight(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[7] = 2; @@ -5167,10 +5127,10 @@ static void pokemonanimfunc_89(struct Sprite *sprite) sprite->data[4] = 2; sprite->data[3] = 0; sprite->data[2] = 1; - sprite->callback = sub_81845D4; + sprite->callback = JoltRight; } -static void pokemonanimfunc_8A(struct Sprite *sprite) +static void Anim_JoltRight_Slow(struct Sprite *sprite) { HandleStartAffineAnim(sprite); sprite->data[7] = 0; @@ -5179,7 +5139,7 @@ static void pokemonanimfunc_8A(struct Sprite *sprite) sprite->data[4] = 2; sprite->data[3] = 0; sprite->data[2] = 1; - sprite->callback = sub_81845D4; + sprite->callback = JoltRight; } static void sub_8184770(struct Sprite *sprite) @@ -5265,23 +5225,23 @@ static const struct YellowBlendStruct *const sUnknown_0860AE7C[] = sUnknown_0860AE54 }; -static void BackAnimBlendYellow(struct Sprite *sprite) +static void ShakeFlashYellow(struct Sprite *sprite) { const struct YellowBlendStruct *array = sUnknown_0860AE7C[sprite->data[3]]; sub_8184770(sprite); if (array[sprite->data[6]].field_1 == 0xFF) { sprite->pos2.x = 0; - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + sprite->callback = WaitAnimEnd; } else { if (sprite->data[4] == 1) { if (array[sprite->data[6]].field_0 != 0) - BlendPalette(sprite->data[7], 0x10, 0x10, RGB_YELLOW); + BlendPalette(sprite->data[7], 16, 16, RGB_YELLOW); else - BlendPalette(sprite->data[7], 0x10, 0, RGB_YELLOW); + BlendPalette(sprite->data[7], 16, 0, RGB_YELLOW); sprite->data[4] = 0; } @@ -5299,7 +5259,7 @@ static void BackAnimBlendYellow(struct Sprite *sprite) } } -static void pokemonanimfunc_8B(struct Sprite *sprite) +static void Anim_ShakeFlashYellow_Fast(struct Sprite *sprite) { if (++sprite->data[2] == 1) { @@ -5310,10 +5270,10 @@ static void pokemonanimfunc_8B(struct Sprite *sprite) sprite->data[3] = 0; } - BackAnimBlendYellow(sprite); + ShakeFlashYellow(sprite); } -static void pokemonanimfunc_8C(struct Sprite *sprite) +static void Anim_ShakeFlashYellow(struct Sprite *sprite) { if (++sprite->data[2] == 1) { @@ -5324,10 +5284,10 @@ static void pokemonanimfunc_8C(struct Sprite *sprite) sprite->data[3] = 1; } - BackAnimBlendYellow(sprite); + ShakeFlashYellow(sprite); } -static void pokemonanimfunc_8D(struct Sprite *sprite) +static void Anim_ShakeFlashYellow_Slow(struct Sprite *sprite) { if (++sprite->data[2] == 1) { @@ -5338,33 +5298,43 @@ static void pokemonanimfunc_8D(struct Sprite *sprite) sprite->data[3] = 2; } - BackAnimBlendYellow(sprite); + ShakeFlashYellow(sprite); } -static void BackAnimBlend(struct Sprite *sprite) +enum { + SHAKEGLOW_RED, + SHAKEGLOW_GREEN, + SHAKEGLOW_BLUE, + SHAKEGLOW_BLACK +}; + +static void ShakeGlow_Blend(struct Sprite *sprite) { static const u16 sColors[] = { - RGB_RED, RGB_GREEN, RGB_BLUE, RGB_BLACK + [SHAKEGLOW_RED] = RGB_RED, + [SHAKEGLOW_GREEN] = RGB_GREEN, + [SHAKEGLOW_BLUE] = RGB_BLUE, + [SHAKEGLOW_BLACK] = RGB_BLACK }; if (sprite->data[2] > 127) { - BlendPalette(sprite->data[7], 0x10, 0, RGB_RED); - sprite->callback = SpriteCB_SetDummyOnAnimEnd; + BlendPalette(sprite->data[7], 16, 0, RGB_RED); + sprite->callback = WaitAnimEnd; } else { sprite->data[6] = Sin(sprite->data[2], 12); - BlendPalette(sprite->data[7], 0x10, sprite->data[6], sColors[sprite->data[1]]); + BlendPalette(sprite->data[7], 16, sprite->data[6], sColors[sprite->data[1]]); } } -static void sub_8184934(struct Sprite *sprite) +static void ShakeGlow_Move(struct Sprite *sprite) { if (sprite->data[3] < sprite->data[4]) { - sub_817F70C(sprite); + TryFlipX(sprite); if (sprite->data[5] > sprite->data[0]) { if (++sprite->data[3] < sprite->data[4]) @@ -5379,11 +5349,11 @@ static void sub_8184934(struct Sprite *sprite) sprite->data[5]++; } - sub_817F70C(sprite); + TryFlipX(sprite); } } -static void pokemonanimfunc_8E(struct Sprite *sprite) +static void Anim_ShakeGlowRed_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5392,19 +5362,19 @@ static void pokemonanimfunc_8E(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 2; sprite->data[3] = 0; - sprite->data[1] = 0; + sprite->data[1] = SHAKEGLOW_RED; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_8F(struct Sprite *sprite) +static void Anim_ShakeGlowRed(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5413,19 +5383,19 @@ static void pokemonanimfunc_8F(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 0; + sprite->data[1] = SHAKEGLOW_RED; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_90(struct Sprite *sprite) +static void Anim_ShakeGlowRed_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5434,19 +5404,19 @@ static void pokemonanimfunc_90(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 0; + sprite->data[1] = SHAKEGLOW_RED; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_91(struct Sprite *sprite) +static void Anim_ShakeGlowGreen_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5455,19 +5425,19 @@ static void pokemonanimfunc_91(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 2; sprite->data[3] = 0; - sprite->data[1] = 1; + sprite->data[1] = SHAKEGLOW_GREEN; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_92(struct Sprite *sprite) +static void Anim_ShakeGlowGreen(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5476,19 +5446,19 @@ static void pokemonanimfunc_92(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 1; + sprite->data[1] = SHAKEGLOW_GREEN; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_93(struct Sprite *sprite) +static void Anim_ShakeGlowGreen_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5497,19 +5467,19 @@ static void pokemonanimfunc_93(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 1; + sprite->data[1] = SHAKEGLOW_GREEN; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_94(struct Sprite *sprite) +static void Anim_ShakeGlowBlue_Fast(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5518,19 +5488,19 @@ static void pokemonanimfunc_94(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 2; sprite->data[3] = 0; - sprite->data[1] = 2; + sprite->data[1] = SHAKEGLOW_BLUE; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_95(struct Sprite *sprite) +static void Anim_ShakeGlowBlue(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5539,19 +5509,19 @@ static void pokemonanimfunc_95(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 2; + sprite->data[1] = SHAKEGLOW_BLUE; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void pokemonanimfunc_96(struct Sprite *sprite) +static void Anim_ShakeGlowBlue_Slow(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -5560,19 +5530,19 @@ static void pokemonanimfunc_96(struct Sprite *sprite) sprite->data[5] = 0; sprite->data[4] = 1; sprite->data[3] = 0; - sprite->data[1] = 2; + sprite->data[1] = SHAKEGLOW_BLUE; } if (sprite->data[2] % 2 == 0) - BackAnimBlend(sprite); + ShakeGlow_Blend(sprite); if (sprite->data[2] >= (128 - sprite->data[0] * sprite->data[4]) / 2) - sub_8184934(sprite); + ShakeGlow_Move(sprite); sprite->data[2]++; } -static void SpriteCB_SetDummyOnAnimEnd(struct Sprite *sprite) +static void WaitAnimEnd(struct Sprite *sprite) { if (sprite->animEnded) sprite->callback = SpriteCallbackDummy; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 7dcfd7b994c9..b8279c253796 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -175,7 +175,7 @@ static EWRAM_DATA struct PokemonSummaryScreenData } *sMonSummaryScreen = NULL; EWRAM_DATA u8 gLastViewedMonIndex = 0; static EWRAM_DATA u8 sMoveSlotToReplace = 0; -ALIGNED(4) static EWRAM_DATA u8 sUnknownTaskId = 0; +ALIGNED(4) static EWRAM_DATA u8 sAnimDelayTaskId = 0; // forward declarations static bool8 LoadGraphics(void); @@ -296,6 +296,7 @@ static void SpriteCb_MoveSelector(struct Sprite *sprite); static void DestroyMoveSelectorSprites(u8 firstArrayId); static void SetMainMoveSelectorColor(u8 whichColor); static void KeepMoveSelectorVisible(u8 firstSpriteId); +static void SummaryScreen_DestroyAnimDelayTask(void); // const rom data #include "data/text/move_descriptions.h" @@ -1094,7 +1095,7 @@ void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, } sMonSummaryScreen->currPageIndex = sMonSummaryScreen->minPageIndex; - SummaryScreen_SetUnknownTaskId(0xFF); + SummaryScreen_SetAnimDelayTaskId(TASK_NONE); if (gMonSpritesGfxPtr == NULL) sub_806F2AC(0, 0); @@ -1480,7 +1481,7 @@ static void CloseSummaryScreen(u8 taskId) { SetMainCallback2(sMonSummaryScreen->callback); gLastViewedMonIndex = sMonSummaryScreen->curMonIndex; - SummaryScreen_DestroyUnknownTask(); + SummaryScreen_DestroyAnimDelayTask(); ResetSpriteData(); FreeAllSpritePalettes(); StopCryAndClearCrySongs(); @@ -1598,7 +1599,7 @@ static void Task_ChangeSummaryMon(u8 taskId) StopCryAndClearCrySongs(); break; case 1: - SummaryScreen_DestroyUnknownTask(); + SummaryScreen_DestroyAnimDelayTask(); DestroySpriteAndFreeResources(&gSprites[sMonSummaryScreen->spriteIds[SPRITE_ARR_ID_MON]]); break; case 2: @@ -3933,17 +3934,19 @@ static void SpriteCB_Pokemon(struct Sprite *sprite) } } -void SummaryScreen_SetUnknownTaskId(u8 taskId) +// Track and then destroy Task_PokemonSummaryAnimateAfterDelay +// Normally destroys itself but it can be interrupted before the animation starts +void SummaryScreen_SetAnimDelayTaskId(u8 taskId) { - sUnknownTaskId = taskId; + sAnimDelayTaskId = taskId; } -void SummaryScreen_DestroyUnknownTask(void) +static void SummaryScreen_DestroyAnimDelayTask(void) { - if (sUnknownTaskId != TASK_NONE) + if (sAnimDelayTaskId != TASK_NONE) { - DestroyTask(sUnknownTaskId); - sUnknownTaskId = TASK_NONE; + DestroyTask(sAnimDelayTaskId); + sAnimDelayTaskId = TASK_NONE; } } From fb24336e8f3c3dfbc9fc03ab09a4fd3b5295536d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 10 Apr 2021 01:28:45 -0400 Subject: [PATCH 106/762] Pokemon animation misc cleanup --- src/pokemon_animation.c | 432 ++++++++++++++++++++-------------------- 1 file changed, 216 insertions(+), 216 deletions(-) diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index 5c5cdde7b530..14a17437cc51 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -21,7 +21,7 @@ Vertical and Horizontal are frequently shortened to V and H. Every front animation uses 1 of these ANIMs, and every back animation - uses a BACK_ANIM_* that refers to a set of 3 ANIM functions. Which of + uses a BACK_ANIM_* that refers to a set of 3 ANIM functions. Which of the 3 that gets used depends on the PokĂ©mon's nature (see sBackAnimationIds). The table linking species to a BACK_ANIM is in this file (sSpeciesToBackAnimSet) @@ -38,11 +38,17 @@ struct PokemonAnimData { - u16 field_0; - s16 field_2; - s16 field_4; - s16 field_6; - s16 field_8; + u16 delay; + s16 speed; // Only used by 2 sets of animations + s16 runs; // Number of times to do the animation + s16 rotation; + s16 data; // General use +}; + +struct YellowFlashData +{ + bool8 isYellow; + u8 time; }; static void Anim_VerticalSquishBounce(struct Sprite *sprite); @@ -593,7 +599,8 @@ static const u8 sSpeciesToBackAnimSet[] = [SPECIES_CHIMECHO] = BACK_ANIM_CONVEX_DOUBLE_ARC, }; -static const u8 sFlashYellowData[][2] = +// Equivalent to struct YellowFlashData, but doesn't match as a struct +static const u8 sYellowFlashData[][2] = { {FALSE, 5}, { TRUE, 1}, @@ -611,7 +618,7 @@ static const u8 sFlashYellowData[][2] = {FALSE, -1} }; -static const u8 sUnknown_0860AA80[][2] = +static const u8 sVerticalShakeData[][2] = { { 6, 30}, {-2, 15}, @@ -835,30 +842,29 @@ static const u8 sBackAnimNatureModTable[NUM_NATURES] = [NATURE_QUIRKY] = 1, }; -static const union AffineAnimCmd sSpriteAffineAnim_860AD48[] = +static const union AffineAnimCmd sMonAffineAnim_0[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMDTYPE_END }; -static const union AffineAnimCmd sSpriteAffineAnim_860AD58[] = +static const union AffineAnimCmd sMonAffineAnim_1[] = { AFFINEANIMCMD_FRAME(-256, 256, 0, 0), AFFINEANIMCMDTYPE_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_860AD68[] = +static const union AffineAnimCmd *const sMonAffineAnims[] = { - sSpriteAffineAnim_860AD48, - sSpriteAffineAnim_860AD58 + sMonAffineAnim_0, + sMonAffineAnim_1 }; -// code static void MonAnimDummySpriteCallback(struct Sprite *sprite) { } -static void sub_817F3F0(struct Sprite *sprite, u16 index, s16 amplitudeX, s16 amplitudeY) +static void SetPosForRotation(struct Sprite *sprite, u16 index, s16 amplitudeX, s16 amplitudeY) { s16 xAdder, yAdder; @@ -996,7 +1002,7 @@ static void SetAffineData(struct Sprite *sprite, s16 xScale, s16 yScale, u16 rot static void HandleStartAffineAnim(struct Sprite *sprite) { sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE; - sprite->affineAnims = sSpriteAffineAnimTable_860AD68; + sprite->affineAnims = sMonAffineAnims; if (sIsSummaryAnim == TRUE) InitSpriteAffineAnim(sprite); @@ -1035,11 +1041,11 @@ static bool32 InitAnimData(u8 id) } else { - sAnims[id].field_6 = 0; - sAnims[id].field_0 = 0; - sAnims[id].field_4 = 1; - sAnims[id].field_2 = 0; - sAnims[id].field_8 = 0; + sAnims[id].rotation = 0; + sAnims[id].delay = 0; + sAnims[id].runs = 1; + sAnims[id].speed = 0; + sAnims[id].data = 0; return TRUE; } } @@ -1414,26 +1420,26 @@ static void Twist(struct Sprite *sprite) { s16 id = sprite->data[0]; - if (sAnims[id].field_0 != 0) + if (sAnims[id].delay != 0) { - sAnims[id].field_0--; + sAnims[id].delay--; } else { - if (sprite->data[2] == 0 && sAnims[id].field_8 == 0) + if (sprite->data[2] == 0 && sAnims[id].data == 0) { HandleStartAffineAnim(sprite); - sAnims[id].field_8++; + sAnims[id].data++; } - if (sprite->data[2] > sAnims[id].field_6) + if (sprite->data[2] > sAnims[id].rotation) { HandleSetAffineData(sprite, 256, 256, 0); - if (sAnims[id].field_4 > 1) + if (sAnims[id].runs > 1) { - sAnims[id].field_4--; - sAnims[id].field_0 = 10; + sAnims[id].runs--; + sAnims[id].delay = 10; sprite->data[2] = 0; } else @@ -1456,8 +1462,8 @@ static void Anim_Twist(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 512; - sAnims[id].field_0 = 0; + sAnims[id].rotation = 512; + sAnims[id].delay = 0; Twist(sprite); sprite->callback = Twist; } @@ -1469,7 +1475,7 @@ static void Spin(struct Sprite *sprite) if (sprite->data[2] == 0) HandleStartAffineAnim(sprite); - if (sprite->data[2] > sAnims[id].field_0) + if (sprite->data[2] > sAnims[id].delay) { HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); @@ -1477,7 +1483,7 @@ static void Spin(struct Sprite *sprite) } else { - sprite->data[6] = (65536 / sAnims[id].field_8) * sprite->data[2]; + sprite->data[6] = (65536 / sAnims[id].data) * sprite->data[2]; HandleSetAffineData(sprite, 256, 256, sprite->data[6]); } @@ -1488,8 +1494,8 @@ static void Anim_Spin_Long(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_0 = 60; - sAnims[id].field_8 = 20; + sAnims[id].delay = 60; + sAnims[id].data = 20; Spin(sprite); sprite->callback = Spin; } @@ -1500,7 +1506,7 @@ static void CircleCounterclockwise(struct Sprite *sprite) TryFlipX(sprite); - if (sprite->data[2] > sAnims[id].field_6) + if (sprite->data[2] > sAnims[id].rotation) { sprite->pos2.x = 0; sprite->pos2.y = 0; @@ -1510,11 +1516,11 @@ static void CircleCounterclockwise(struct Sprite *sprite) { s16 index = (sprite->data[2] + 192) % 256; - sprite->pos2.x = -(Cos(index, sAnims[id].field_8 * 2)); - sprite->pos2.y = Sin(index, sAnims[id].field_8) + sAnims[id].field_8; + sprite->pos2.x = -(Cos(index, sAnims[id].data * 2)); + sprite->pos2.y = Sin(index, sAnims[id].data) + sAnims[id].data; } - sprite->data[2] += sAnims[id].field_2; + sprite->data[2] += sAnims[id].speed; TryFlipX(sprite); } @@ -1522,9 +1528,9 @@ static void Anim_CircleCounterclockwise(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 512; - sAnims[id].field_8 = 6; - sAnims[id].field_2 = 24; + sAnims[id].rotation = 512; + sAnims[id].data = 6; + sAnims[id].speed = 24; CircleCounterclockwise(sprite); sprite->callback = CircleCounterclockwise; } @@ -1632,8 +1638,8 @@ static void VerticalShakeTwice(struct Sprite *sprite) { u8 index = sprite->data[2]; u8 var7 = sprite->data[6]; - u8 var5 = sUnknown_0860AA80[sprite->data[5]][0]; - u8 var6 = sUnknown_0860AA80[sprite->data[5]][1]; + u8 var5 = sVerticalShakeData[sprite->data[5]][0]; + u8 var6 = sVerticalShakeData[sprite->data[5]][1]; u8 amplitude = 0; if (var5 != (u8)-2) @@ -1905,27 +1911,27 @@ static void Anim_ShrinkGrow(struct Sprite *sprite) ShrinkGrow(sprite); } -static const s8 sUnknown_0860AD8E[][8][3] = +static const s8 sBounceRotateToSidesData[][8][3] = { { - {0, 8, 8}, - {8, -8, 12}, - {-8, 8, 12}, - {8, -8, 12}, - {-8, 8, 12}, - {8, -8, 12}, - {-8, 0, 12}, - {0, 0, 0} + { 0, 8, 8}, + { 8, -8, 12}, + {-8, 8, 12}, + { 8, -8, 12}, + {-8, 8, 12}, + { 8, -8, 12}, + {-8, 0, 12}, + { 0, 0, 0} }, { - {0, 8, 16}, - {8, -8, 24}, - {-8, 8, 24}, - {8, -8, 24}, - {-8, 8, 24}, - {8, -8, 24}, - {-8, 0, 24}, - {0, 0, 0} + { 0, 8, 16}, + { 8, -8, 24}, + {-8, 8, 24}, + { 8, -8, 24}, + {-8, 8, 24}, + { 8, -8, 24}, + {-8, 0, 24}, + { 0, 0, 0} }, }; @@ -1940,10 +1946,10 @@ static void BounceRotateToSides(struct Sprite *sprite) TryFlipX(sprite); structId = sprite->data[0]; - var = sAnims[structId].field_6; - r9 = sUnknown_0860AD8E[sAnims[structId].field_8][sprite->data[4]][0]; - r10 = sUnknown_0860AD8E[sAnims[structId].field_8][sprite->data[4]][1] - r9; - arrId = sAnims[structId].field_8; + var = sAnims[structId].rotation; + r9 = sBounceRotateToSidesData[sAnims[structId].data][sprite->data[4]][0]; + r10 = sBounceRotateToSidesData[sAnims[structId].data][sprite->data[4]][1] - r9; + arrId = sAnims[structId].data; r7 = sprite->data[3]; if (sprite->data[2] == 0) @@ -1952,7 +1958,7 @@ static void BounceRotateToSides(struct Sprite *sprite) sprite->data[2]++; } - if (sUnknown_0860AD8E[arrId][sprite->data[4]][2] == 0) + if (sBounceRotateToSidesData[arrId][sprite->data[4]][2] == 0) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; @@ -1964,13 +1970,13 @@ static void BounceRotateToSides(struct Sprite *sprite) { u16 rotation; - sprite->pos2.y = -(Sin(r7 * 128 / sUnknown_0860AD8E[arrId][sprite->data[4]][2], 10)); - sprite->pos2.x = (r10 * r7 / sUnknown_0860AD8E[arrId][sprite->data[4]][2]) + r9; + sprite->pos2.y = -(Sin(r7 * 128 / sBounceRotateToSidesData[arrId][sprite->data[4]][2], 10)); + sprite->pos2.x = (r10 * r7 / sBounceRotateToSidesData[arrId][sprite->data[4]][2]) + r9; rotation = -(var * sprite->pos2.x) / 8; HandleSetAffineData(sprite, 256, 256, rotation); - if (r7 == sUnknown_0860AD8E[arrId][sprite->data[4]][2]) + if (r7 == sBounceRotateToSidesData[arrId][sprite->data[4]][2]) { sprite->data[4]++; sprite->data[3] = 0; @@ -1987,8 +1993,8 @@ static void BounceRotateToSides(struct Sprite *sprite) static void Anim_BounceRotateToSides(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 4096; - sAnims[id].field_8 = sprite->data[6]; + sAnims[id].rotation = 4096; + sAnims[id].data = sprite->data[6]; BounceRotateToSides(sprite); sprite->callback = BounceRotateToSides; } @@ -2361,16 +2367,16 @@ static void TumblingFrontFlip(struct Sprite *sprite); static void Anim_TumblingFrontFlip(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_2 = 2; + sAnims[id].speed = 2; TumblingFrontFlip(sprite); sprite->callback = TumblingFrontFlip; } static void TumblingFrontFlip(struct Sprite *sprite) { - if (sAnims[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].delay != 0) { - sAnims[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].delay--; } else { @@ -2379,7 +2385,7 @@ static void TumblingFrontFlip(struct Sprite *sprite) { sprite->data[2]++; HandleStartAffineAnim(sprite); - sprite->data[7] = sAnims[sprite->data[0]].field_2; + sprite->data[7] = sAnims[sprite->data[0]].speed; sprite->data[3] = -1; sprite->data[4] = -1; sprite->data[5] = 0; @@ -2406,12 +2412,12 @@ static void TumblingFrontFlip(struct Sprite *sprite) { sprite->pos2.x = 0; sprite->pos2.y = 0; - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].runs--; sprite->data[5] = 0; sprite->data[6] = 0; - sAnims[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].delay = 10; } else { @@ -2473,7 +2479,7 @@ static void Anim_FlashYellow(struct Sprite *sprite) sprite->data[4] = 0; } - if (sFlashYellowData[sprite->data[6]][1] == (u8)-1) + if (sYellowFlashData[sprite->data[6]][1] == (u8)-1) { sprite->callback = WaitAnimEnd; } @@ -2481,7 +2487,7 @@ static void Anim_FlashYellow(struct Sprite *sprite) { if (sprite->data[4] == 1) { - if (sFlashYellowData[sprite->data[6]][0]) + if (sYellowFlashData[sprite->data[6]][0]) BlendPalette(sprite->data[7], 16, 16, RGB_YELLOW); else BlendPalette(sprite->data[7], 16, 0, RGB_YELLOW); @@ -2489,7 +2495,7 @@ static void Anim_FlashYellow(struct Sprite *sprite) sprite->data[4] = 0; } - if (sFlashYellowData[sprite->data[6]][1] == sprite->data[5]) + if (sYellowFlashData[sprite->data[6]][1] == sprite->data[5]) { sprite->data[4] = 1; sprite->data[5] = 0; @@ -2508,13 +2514,13 @@ static void SwingConcave(struct Sprite *sprite) HandleStartAffineAnim(sprite); TryFlipX(sprite); - if (sprite->data[2] > sAnims[sprite->data[0]].field_8) + if (sprite->data[2] > sAnims[sprite->data[0]].data) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].runs--; sprite->data[2] = 0; } else @@ -2525,7 +2531,7 @@ static void SwingConcave(struct Sprite *sprite) } else { - s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].field_8; + s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].data; sprite->pos2.x = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, Sin(index, 3276)); } @@ -2537,7 +2543,7 @@ static void SwingConcave(struct Sprite *sprite) static void Anim_SwingConcave_FastShort(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 50; + sAnims[id].data = 50; SwingConcave(sprite); sprite->callback = SwingConcave; } @@ -2548,13 +2554,13 @@ static void SwingConvex(struct Sprite *sprite) HandleStartAffineAnim(sprite); TryFlipX(sprite); - if (sprite->data[2] > sAnims[sprite->data[0]].field_8) + if (sprite->data[2] > sAnims[sprite->data[0]].data) { HandleSetAffineData(sprite, 256, 256, 0); sprite->pos2.x = 0; - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].runs--; sprite->data[2] = 0; } else @@ -2565,7 +2571,7 @@ static void SwingConvex(struct Sprite *sprite) } else { - s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].field_8; + s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].data; sprite->pos2.x = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, -(Sin(index, 3276))); } @@ -2577,7 +2583,7 @@ static void SwingConvex(struct Sprite *sprite) static void Anim_SwingConvex_FastShort(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 50; + sAnims[id].data = 50; SwingConvex(sprite); sprite->callback = SwingConvex; } @@ -2648,9 +2654,9 @@ static void RotateUpSlamDown_2(struct Sprite *sprite) static void DeepVerticalSquishBounce(struct Sprite *sprite) { - if (sAnims[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].delay != 0) { - sAnims[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].delay--; } else { @@ -2682,10 +2688,10 @@ static void DeepVerticalSquishBounce(struct Sprite *sprite) HandleSetAffineData(sprite, 256 + sprite->data[6], 256 - sprite->data[7], 0); if (sprite->data[4] == 128) { - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; - sAnims[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].runs--; + sAnims[sprite->data[0]].delay = 10; sprite->data[4] = 0; sprite->data[5] = 0; } @@ -2698,14 +2704,14 @@ static void DeepVerticalSquishBounce(struct Sprite *sprite) } } - sprite->data[4] += sAnims[sprite->data[0]].field_6; + sprite->data[4] += sAnims[sprite->data[0]].rotation; } } static void Anim_DeepVerticalSquishBounce(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 4; + sAnims[id].rotation = 4; DeepVerticalSquishBounce(sprite); sprite->callback = DeepVerticalSquishBounce; } @@ -2752,7 +2758,7 @@ static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite); static void Anim_HorizontalJumpsVerticalStretch(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = -1; + sAnims[id].data = -1; HandleStartAffineAnim(sprite); sprite->data[3] = 0; HorizontalJumpsVerticalStretch_0(sprite); @@ -2761,9 +2767,9 @@ static void Anim_HorizontalJumpsVerticalStretch(struct Sprite *sprite) static void HorizontalJumpsVerticalStretch_0(struct Sprite *sprite) { - if (sAnims[sprite->data[0]].field_0 != 0) + if (sAnims[sprite->data[0]].delay != 0) { - sAnims[sprite->data[0]].field_0--; + sAnims[sprite->data[0]].delay--; } else { @@ -2778,7 +2784,7 @@ static void HorizontalJumpsVerticalStretch_0(struct Sprite *sprite) } else { - s32 var = 8 * sAnims[sprite->data[0]].field_8; + s32 var = 8 * sAnims[sprite->data[0]].data; sprite->pos2.x = var * (counter % 128) / 128; sprite->pos2.y = -(Sin(counter % 128, 8)); sprite->data[2] += 12; @@ -2805,7 +2811,7 @@ static void HorizontalJumpsVerticalStretch_1(struct Sprite *sprite) if (sprite->data[2] >= 16 && sprite->data[2] <= 31) { sprite->data[3] += 8; - sprite->pos2.x -= sAnims[sprite->data[0]].field_8; + sprite->pos2.x -= sAnims[sprite->data[0]].data; } yDelta = 0; @@ -2830,10 +2836,10 @@ static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite) counter = sprite->data[2]; if (counter > 128) { - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; - sAnims[sprite->data[0]].field_0 = 10; + sAnims[sprite->data[0]].runs--; + sAnims[sprite->data[0]].delay = 10; sprite->data[3] = 0; sprite->data[2] = 0; sprite->data[4] = 0; @@ -2850,7 +2856,7 @@ static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite) } else { - s32 var = sAnims[sprite->data[0]].field_8; + s32 var = sAnims[sprite->data[0]].data; sprite->pos2.x = var * ((counter % 128) * 8) / 128 + 8 * -var; sprite->pos2.y = -(Sin(counter % 128, 8)); @@ -2874,9 +2880,9 @@ static void RotateToSides(struct Sprite *sprite) sprite->pos2.x = 0; sprite->pos2.y = 0; HandleSetAffineData(sprite, 256, 256, 0); - if (sAnims[sprite->data[0]].field_4 > 1) + if (sAnims[sprite->data[0]].runs > 1) { - sAnims[sprite->data[0]].field_4--; + sAnims[sprite->data[0]].runs--; sprite->data[2] = 0; sprite->data[7] = 0; } @@ -2895,7 +2901,7 @@ static void RotateToSides(struct Sprite *sprite) sprite->pos2.x = -(Sin(sprite->data[7], 16)); rotation = Sin(sprite->data[7], 32); HandleSetAffineData(sprite, 256, 256, rotation << 8); - sprite->data[7] += sAnims[sprite->data[0]].field_6; + sprite->data[7] += sAnims[sprite->data[0]].rotation; TryFlipX(sprite); } } @@ -2903,7 +2909,7 @@ static void RotateToSides(struct Sprite *sprite) static void Anim_RotateToSides_Fast(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 4; + sAnims[id].rotation = 4; RotateToSides(sprite); sprite->callback = RotateToSides; } @@ -3673,8 +3679,8 @@ static void Anim_BounceRotateToSides_Small(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 2048; - sAnims[id].field_8 = sprite->data[6]; + sAnims[id].rotation = 2048; + sAnims[id].data = sprite->data[6]; BounceRotateToSides(sprite); sprite->callback = BounceRotateToSides; } @@ -3726,9 +3732,9 @@ static void Anim_Twist_Twice(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 1024; - sAnims[id].field_0 = 0; - sAnims[id].field_4 = 2; + sAnims[id].rotation = 1024; + sAnims[id].delay = 0; + sAnims[id].runs = 2; Twist(sprite); sprite->callback = Twist; } @@ -3737,9 +3743,9 @@ static void Anim_CircleCounterclockwise_Slow(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 512; - sAnims[id].field_8 = 3; - sAnims[id].field_2 = 12; + sAnims[id].rotation = 512; + sAnims[id].data = 3; + sAnims[id].speed = 12; CircleCounterclockwise(sprite); sprite->callback = CircleCounterclockwise; } @@ -3769,8 +3775,8 @@ static void Anim_Spin(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_0 = 60; - sAnims[id].field_8 = 30; + sAnims[id].delay = 60; + sAnims[id].data = 30; Spin(sprite); sprite->callback = Spin; } @@ -3779,8 +3785,8 @@ static void Anim_TumblingFrontFlip_Twice(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_2 = 1; - sAnims[id].field_4 = 2; + sAnims[id].speed = 1; + sAnims[id].runs = 2; TumblingFrontFlip(sprite); sprite->callback = TumblingFrontFlip; } @@ -3789,8 +3795,8 @@ static void Anim_DeepVerticalSquishBounce_Twice(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 4; - sAnims[id].field_4 = 2; + sAnims[id].rotation = 4; + sAnims[id].runs = 2; DeepVerticalSquishBounce(sprite); sprite->callback = DeepVerticalSquishBounce; } @@ -3799,8 +3805,8 @@ static void Anim_HorizontalJumpsVerticalStretch_Twice(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 1; - sAnims[id].field_4 = 2; + sAnims[id].data = 1; + sAnims[id].runs = 2; HandleStartAffineAnim(sprite); sprite->data[3] = 0; HorizontalJumpsVerticalStretch_0(sprite); @@ -3811,7 +3817,7 @@ static void Anim_RotateToSides(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 2; + sAnims[id].rotation = 2; RotateToSides(sprite); sprite->callback = RotateToSides; } @@ -3820,8 +3826,8 @@ static void Anim_RotateToSides_Twice(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 4; - sAnims[id].field_4 = 2; + sAnims[id].rotation = 4; + sAnims[id].runs = 2; RotateToSides(sprite); sprite->callback = RotateToSides; } @@ -3830,7 +3836,7 @@ static void Anim_SwingConcave(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 100; + sAnims[id].data = 100; SwingConcave(sprite); sprite->callback = SwingConcave; } @@ -3839,8 +3845,8 @@ static void Anim_SwingConcave_Fast(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 50; - sAnims[id].field_4 = 2; + sAnims[id].data = 50; + sAnims[id].runs = 2; SwingConcave(sprite); sprite->callback = SwingConcave; } @@ -3849,7 +3855,7 @@ static void Anim_SwingConvex(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 100; + sAnims[id].data = 100; SwingConvex(sprite); sprite->callback = SwingConvex; } @@ -3858,8 +3864,8 @@ static void Anim_SwingConvex_Fast(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_8 = 50; - sAnims[id].field_4 = 2; + sAnims[id].data = 50; + sAnims[id].runs = 2; SwingConvex(sprite); sprite->callback = SwingConvex; } @@ -4059,14 +4065,14 @@ static void VerticalShakeLowTwice(struct Sprite *sprite) u8 var6, var7; u8 var8 = sprite->data[2]; u8 var9 = sprite->data[6]; - u8 var5 = sUnknown_0860AA80[sprite->data[5]][0]; + u8 var5 = sVerticalShakeData[sprite->data[5]][0]; u8 var2 = var5; if (var5 != (u8)-1) var5 = sprite->data[7]; else var5 = (u8)-1; // needed to match - var6 = sUnknown_0860AA80[sprite->data[5]][1]; + var6 = sVerticalShakeData[sprite->data[5]][1]; var7 = 0; if (var2 != (u8)-2) var7 = (var6 - var9) * var5 / var6; @@ -4186,9 +4192,9 @@ static void Anim_CircleCounterclockwise_Long(struct Sprite *sprite) { u8 id = sprite->data[0] = AddNewAnim(); - sAnims[id].field_6 = 1024; - sAnims[id].field_8 = 6; - sAnims[id].field_2 = 24; + sAnims[id].rotation = 1024; + sAnims[id].data = 6; + sAnims[id].speed = 24; CircleCounterclockwise(sprite); sprite->callback = CircleCounterclockwise; } @@ -4323,7 +4329,7 @@ static void Anim_VerticalShakeHorizontalSlide_Fast(struct Sprite *sprite) TryFlipX(sprite); } -static const s8 sUnknown_0860ADBE[][3] = +static const s8 sTriangleDownData[][3] = { // x y timer {1, 1, 12}, @@ -4338,13 +4344,13 @@ static void TriangleDown(struct Sprite *sprite) if (sprite->data[2] == 0) sprite->data[3] = 0; - if (sUnknown_0860ADBE[sprite->data[3]][2] / sprite->data[5] == sprite->data[2]) + if (sTriangleDownData[sprite->data[3]][2] / sprite->data[5] == sprite->data[2]) { sprite->data[3]++; sprite->data[2] = 0; } - if (sUnknown_0860ADBE[sprite->data[3]][2] / sprite->data[5] == 0) + if (sTriangleDownData[sprite->data[3]][2] / sprite->data[5] == 0) { if (--sprite->data[6] == 0) sprite->callback = WaitAnimEnd; @@ -4354,8 +4360,8 @@ static void TriangleDown(struct Sprite *sprite) else { s32 amplitude = sprite->data[5]; - sprite->pos2.x += (sUnknown_0860ADBE[sprite->data[3]][0] * amplitude); - sprite->pos2.y += (sUnknown_0860ADBE[sprite->data[3]][1] * sprite->data[5]); + sprite->pos2.x += (sTriangleDownData[sprite->data[3]][0] * amplitude); + sprite->pos2.y += (sTriangleDownData[sprite->data[3]][1] * sprite->data[5]); // Not using amplitude here. No reason for this. sprite->data[2]++; TryFlipX(sprite); } @@ -4833,11 +4839,11 @@ static void Anim_ConcaveArcSmall_Twice(struct Sprite *sprite) ConcaveArc(sprite); } -static void sub_8184290(struct Sprite *sprite) +static void SetHorizontalDip(struct Sprite *sprite) { u16 index = Sin((sprite->data[2] * 128) / sprite->data[7], sprite->data[5]); sprite->data[6] = -(index << 8); - sub_817F3F0(sprite, index, sprite->data[4], 0); + SetPosForRotation(sprite, index, sprite->data[4], 0); HandleSetAffineData(sprite, 256, 256, sprite->data[6]); } @@ -4872,7 +4878,7 @@ static void Anim_HorizontalDip(struct Sprite *sprite) } else { - sub_8184290(sprite); + SetHorizontalDip(sprite); } sprite->data[2]++; @@ -4909,7 +4915,7 @@ static void Anim_HorizontalDip_Fast(struct Sprite *sprite) } else { - sub_8184290(sprite); + SetHorizontalDip(sprite); } sprite->data[2]++; @@ -4946,7 +4952,7 @@ static void Anim_HorizontalDip_Twice(struct Sprite *sprite) } else { - sub_8184290(sprite); + SetHorizontalDip(sprite); } sprite->data[2]++; @@ -5142,7 +5148,7 @@ static void Anim_JoltRight_Slow(struct Sprite *sprite) sprite->callback = JoltRight; } -static void sub_8184770(struct Sprite *sprite) +static void SetShakeFlashYellowPos(struct Sprite *sprite) { sprite->pos2.x = sprite->data[1]; if (sprite->data[0] > 1) @@ -5156,80 +5162,74 @@ static void sub_8184770(struct Sprite *sprite) } } -struct YellowBlendStruct +static const struct YellowFlashData sShakeYellowFlashData_Fast[] = { - u8 field_0; - u8 field_1; -}; - -static const struct YellowBlendStruct sUnknown_0860ADCC[] = -{ - {0, 1}, - {1, 2}, - {0, 15}, - {1, 1}, - {0, 15}, - {1, 1}, - {0, 15}, - {1, 1}, - {0, 1}, - {1, 1}, - {0, 1}, - {1, 1}, - {0, 1}, - {1, 1}, - {0, 1}, - {1, 1}, - {0, 1}, - {1, 1}, - {0, 1}, - {0, 0xFF} + {FALSE, 1}, + { TRUE, 2}, + {FALSE, 15}, + { TRUE, 1}, + {FALSE, 15}, + { TRUE, 1}, + {FALSE, 15}, + { TRUE, 1}, + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 1}, + {FALSE, -1} }; -static const struct YellowBlendStruct sUnknown_0860AE1C[] = -{ - {0, 5}, - {1, 1}, - {0, 15}, - {1, 4}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {1, 2}, - {0, 2}, - {0, 0xFF} +static const struct YellowFlashData sShakeYellowFlashData_Normal[] = +{ + {FALSE, 5}, + { TRUE, 1}, + {FALSE, 15}, + { TRUE, 4}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + { TRUE, 2}, + {FALSE, 2}, + {FALSE, -1} }; -static const struct YellowBlendStruct sUnknown_0860AE54[] = -{ - {0, 1}, - {1, 1}, - {0, 20}, - {1, 1}, - {0, 20}, - {1, 1}, - {0, 20}, - {1, 1}, - {0, 1}, - {0, 0xFF} +static const struct YellowFlashData sShakeYellowFlashData_Slow[] = +{ + {FALSE, 1}, + { TRUE, 1}, + {FALSE, 20}, + { TRUE, 1}, + {FALSE, 20}, + { TRUE, 1}, + {FALSE, 20}, + { TRUE, 1}, + {FALSE, 1}, + {FALSE, -1} }; -static const struct YellowBlendStruct *const sUnknown_0860AE7C[] = +static const struct YellowFlashData *const sShakeYellowFlashData[] = { - sUnknown_0860ADCC, - sUnknown_0860AE1C, - sUnknown_0860AE54 + sShakeYellowFlashData_Fast, + sShakeYellowFlashData_Normal, + sShakeYellowFlashData_Slow }; static void ShakeFlashYellow(struct Sprite *sprite) { - const struct YellowBlendStruct *array = sUnknown_0860AE7C[sprite->data[3]]; - sub_8184770(sprite); - if (array[sprite->data[6]].field_1 == 0xFF) + const struct YellowFlashData *array = sShakeYellowFlashData[sprite->data[3]]; + SetShakeFlashYellowPos(sprite); + if (array[sprite->data[6]].time == (u8)-1) { sprite->pos2.x = 0; sprite->callback = WaitAnimEnd; @@ -5238,7 +5238,7 @@ static void ShakeFlashYellow(struct Sprite *sprite) { if (sprite->data[4] == 1) { - if (array[sprite->data[6]].field_0 != 0) + if (array[sprite->data[6]].isYellow) BlendPalette(sprite->data[7], 16, 16, RGB_YELLOW); else BlendPalette(sprite->data[7], 16, 0, RGB_YELLOW); @@ -5246,7 +5246,7 @@ static void ShakeFlashYellow(struct Sprite *sprite) sprite->data[4] = 0; } - if (array[sprite->data[6]].field_1 == sprite->data[5]) + if (array[sprite->data[6]].time == sprite->data[5]) { sprite->data[4] = 1; sprite->data[5] = 0; From 2166e337a1136355e207e99b2dd70df70764c665 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 11 Apr 2021 13:21:22 -0400 Subject: [PATCH 107/762] Label unused move anims --- src/battle_anim_dark.c | 46 +++++++++++++++++++------------------- src/battle_anim_electric.c | 38 +++++++++++++++---------------- src/battle_anim_fight.c | 8 +++---- src/battle_anim_fire.c | 34 ++++++++++++++-------------- src/battle_anim_flying.c | 25 +++++++++++---------- src/battle_anim_ice.c | 26 ++++++++++----------- 6 files changed, 89 insertions(+), 88 deletions(-) diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index 19e8c952359f..c2bfe269bd5e 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -9,24 +9,24 @@ #include "util.h" #include "constants/rgb.h" -static void sub_81138D4(struct Sprite *); +static void AnimUnusedBagSteal(struct Sprite *); +static void AnimUnusedBagSteal_Step(struct Sprite *); static void AnimBite(struct Sprite *); static void AnimTearDrop(struct Sprite *); static void AnimClawSlash(struct Sprite *); static void AnimTask_AttackerFadeToInvisible_Step(u8); static void AnimTask_AttackerFadeFromInvisible_Step(u8); -static void sub_8113950(struct Sprite *); static void AnimBite_Step1(struct Sprite *); static void AnimBite_Step2(struct Sprite *); static void AnimTearDrop_Step(struct Sprite *); static void AnimTask_MoveAttackerMementoShadow_Step(u8); static void AnimTask_MoveTargetMementoShadow_Step(u8); -static void sub_8114244(struct Task *); -static void sub_8114374(u8); +static void DoMementoShadowEffect(struct Task *); +static void SetAllBattlersSpritePriority(u8); static void AnimTask_MetallicShine_Step(u8); // Unused -const struct SpriteTemplate gUnknown_08596FC8 = +static const struct SpriteTemplate sUnusedBagStealSpriteTemplate = { .tileTag = ANIM_TAG_TIED_BAG, .paletteTag = ANIM_TAG_TIED_BAG, @@ -34,7 +34,7 @@ const struct SpriteTemplate gUnknown_08596FC8 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_81138D4, + .callback = AnimUnusedBagSteal, }; static const union AffineAnimCmd sAffineAnim_Bite_0[] = @@ -268,7 +268,7 @@ void AnimTask_InitAttackerFadeFromInvisible(u8 taskId) DestroyAnimVisualTask(taskId); } -static void sub_81138D4(struct Sprite *sprite) +static void AnimUnusedBagSteal(struct Sprite *sprite) { sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); @@ -279,11 +279,11 @@ static void sub_81138D4(struct Sprite *sprite) sprite->data[3] = -sprite->data[1]; sprite->data[4] = -sprite->data[2]; sprite->data[6] = 0xFFD8; - sprite->callback = sub_8113950; + sprite->callback = AnimUnusedBagSteal_Step; sprite->callback(sprite); } -static void sub_8113950(struct Sprite *sprite) +static void AnimUnusedBagSteal_Step(struct Sprite *sprite) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; @@ -430,7 +430,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) scanlineParams.dmaDest = ®_BG1VOFS; var0 = WINOUT_WIN01_BG1; if (!IsContest()) - gBattle_BG2_X += 240; + gBattle_BG2_X += DISPLAY_WIDTH; } else { @@ -440,7 +440,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) scanlineParams.dmaDest = ®_BG2VOFS; var0 = WINOUT_WIN01_BG2; if (!IsContest()) - gBattle_BG1_X += 240; + gBattle_BG1_X += DISPLAY_WIDTH; } scanlineParams.dmaControl = SCANLINE_EFFECT_DMACNT_16BIT; @@ -451,7 +451,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) task->data[0] = 0; task->data[1] = 0; task->data[2] = 0; - sub_8114374(3); + SetAllBattlersSpritePriority(3); for (i = 0; i < 112; i++) { gScanlineEffectRegBuffers[0][i] = task->data[10]; @@ -462,7 +462,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR | (var0 ^ (WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR))); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); gBattle_WIN0H = (task->data[14] << 8) | task->data[15]; - gBattle_WIN0V = 160; + gBattle_WIN0V = DISPLAY_HEIGHT; task->func = AnimTask_MoveAttackerMementoShadow_Step; } @@ -496,14 +496,14 @@ static void AnimTask_MoveAttackerMementoShadow_Step(u8 taskId) break; case 1: task->data[4] -= 8; - sub_8114244(task); + DoMementoShadowEffect(task); if (task->data[4] < task->data[8]) task->data[0]++; break; case 2: task->data[4] -= 8; - sub_8114244(task); + DoMementoShadowEffect(task); task->data[14] += 4; task->data[15] -= 4; @@ -550,12 +550,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId) if (task->data[3] == 1) { SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1); - gBattle_BG2_X += 240; + gBattle_BG2_X += DISPLAY_WIDTH; } else { SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2); - gBattle_BG1_X += 240; + gBattle_BG1_X += DISPLAY_WIDTH; } task->data[0]++; @@ -574,7 +574,7 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId) FillPalette(0, 9 * 16, 32); } - sub_8114374(3); + SetAllBattlersSpritePriority(3); task->data[0]++; break; case 2: @@ -622,7 +622,7 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId) SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); gBattle_WIN0H = (task->data[14] << 8) | task->data[15]; - gBattle_WIN0V = 160; + gBattle_WIN0V = DISPLAY_HEIGHT; task->data[0] = 0; task->data[1] = 0; @@ -644,7 +644,7 @@ static void AnimTask_MoveTargetMementoShadow_Step(u8 taskId) if (task->data[5] >= task->data[7]) task->data[5] = task->data[7]; - sub_8114244(task); + DoMementoShadowEffect(task); if (task->data[5] == task->data[7]) task->data[0]++; break; @@ -664,7 +664,7 @@ static void AnimTask_MoveTargetMementoShadow_Step(u8 taskId) if (task->data[4] >= task->data[6]) task->data[4] = task->data[6]; - sub_8114244(task); + DoMementoShadowEffect(task); if (task->data[4] == task->data[6] && task->data[1]) { task->data[1] = 0; @@ -706,7 +706,7 @@ static void AnimTask_MoveTargetMementoShadow_Step(u8 taskId) } } -static void sub_8114244(struct Task *task) +static void DoMementoShadowEffect(struct Task *task) { int var0, var1; s16 var2; @@ -757,7 +757,7 @@ static void sub_8114244(struct Task *task) } } -static void sub_8114374(u8 priority) +static void SetAllBattlersSpritePriority(u8 priority) { u16 i; diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 1e24f8a167b8..2c5c7e0f1de0 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -7,9 +7,9 @@ static void AnimLightning(struct Sprite *); static void AnimLightning_Step(struct Sprite *); -static void AnimUnused_0810A214(struct Sprite *); -static void AnimUnused_0810A214_Step(struct Sprite *); -static void AnimUnused_0810A274(struct Sprite *); +static void AnimUnusedSpinningFist(struct Sprite *); +static void AnimUnusedSpinningFist_Step(struct Sprite *); +static void AnimUnusedCirclingShock(struct Sprite *); static void AnimSparkElectricity(struct Sprite *); static void AnimZapCannonSpark(struct Sprite *); static void AnimZapCannonSpark_Step(struct Sprite *); @@ -63,7 +63,7 @@ const struct SpriteTemplate gLightningSpriteTemplate = .callback = AnimLightning, }; -static const union AffineAnimCmd sAnim_Unused_085956D8[] = +static const union AffineAnimCmd sAffineAnim_UnusedSpinningFist[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20), @@ -71,24 +71,24 @@ static const union AffineAnimCmd sAnim_Unused_085956D8[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd *const sAnims_Unused_085956F8[] = +static const union AffineAnimCmd *const sAffineAnims_UnusedSpinningFist[] = { - sAnim_Unused_085956D8, + sAffineAnim_UnusedSpinningFist, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_085956FC = +static const struct SpriteTemplate sUnusedSpinningFistSpriteTemplate = { .tileTag = ANIM_TAG_HANDS_AND_FEET, .paletteTag = ANIM_TAG_HANDS_AND_FEET, .oam = &gOamData_AffineNormal_ObjNormal_32x32, .anims = gDummySpriteAnimTable, .images = NULL, - .affineAnims = sAnims_Unused_085956F8, - .callback = AnimUnused_0810A214, + .affineAnims = sAffineAnims_UnusedSpinningFist, + .callback = AnimUnusedSpinningFist, }; -static const union AnimCmd sAnim_Unused_08595714[] = +static const union AnimCmd sAnim_UnusedCirclingShock[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(16, 5), @@ -99,21 +99,21 @@ static const union AnimCmd sAnim_Unused_08595714[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_Unused_08595730[] = +static const union AnimCmd *const sAnims_UnusedCirclingShock[] = { - sAnim_Unused_08595714, + sAnim_UnusedCirclingShock, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_08595734 = +static const struct SpriteTemplate sUnusedCirclingShockSpriteTemplate = { .tileTag = ANIM_TAG_SHOCK, .paletteTag = ANIM_TAG_SHOCK, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnims_Unused_08595730, + .anims = sAnims_UnusedCirclingShock, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_0810A274, + .callback = AnimUnusedCirclingShock, }; const struct SpriteTemplate gSparkElectricitySpriteTemplate = @@ -473,23 +473,23 @@ static void AnimLightning_Step(struct Sprite *sprite) DestroyAnimSprite(sprite); } -static void AnimUnused_0810A214(struct Sprite *sprite) +static void AnimUnusedSpinningFist(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) sprite->pos1.x -= gBattleAnimArgs[0]; else sprite->pos1.x += gBattleAnimArgs[0]; - sprite->callback = AnimUnused_0810A214_Step; + sprite->callback = AnimUnusedSpinningFist_Step; } -static void AnimUnused_0810A214_Step(struct Sprite *sprite) +static void AnimUnusedSpinningFist_Step(struct Sprite *sprite) { if (sprite->affineAnimEnded) DestroySpriteAndMatrix(sprite); } -static void AnimUnused_0810A274(struct Sprite *sprite) +static void AnimUnusedCirclingShock(struct Sprite *sprite) { sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index 328f178ae102..b3399901e4ff 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -6,7 +6,7 @@ #include "trig.h" #include "constants/rgb.h" -static void AnimUnused_080B08A0(struct Sprite *); +static void AnimUnusedHumanoidFoot(struct Sprite *); static void AnimSlideHandOrFootToTarget(struct Sprite *); static void AnimJumpKick(struct Sprite *); static void AnimBasicFistOrFoot(struct Sprite *); @@ -40,7 +40,7 @@ static void AnimSpinningKickOrPunchFinish(struct Sprite *); extern struct SpriteTemplate gBasicHitSplatSpriteTemplate; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_08595E14 = +static const struct SpriteTemplate sUnusedHumanoidFootSpriteTemplate = { .tileTag = ANIM_TAG_HUMANOID_FOOT, .paletteTag = ANIM_TAG_HUMANOID_FOOT, @@ -48,7 +48,7 @@ const struct SpriteTemplate gUnusedSpriteTemplate_08595E14 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_080B08A0, + .callback = AnimUnusedHumanoidFoot, }; static const union AnimCmd sAnim_Fist[] = @@ -409,7 +409,7 @@ const struct SpriteTemplate gFocusPunchFistSpriteTemplate = .callback = AnimFocusPunchFist, }; -static void AnimUnused_080B08A0(struct Sprite *sprite) +static void AnimUnusedHumanoidFoot(struct Sprite *sprite) { SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); sprite->pos1.y += gBattleAnimArgs[1]; diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 5b43f42762ce..e18d72c31c6d 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -12,8 +12,8 @@ static void AnimFireSpread(struct Sprite *); static void AnimFirePlume(struct Sprite *); static void AnimLargeFlame(struct Sprite *); static void AnimLargeFlame_Step(struct Sprite *); -static void AnimUnused_8109064(struct Sprite *); -static void AnimUnused_8109064_Step(struct Sprite *); +static void AnimUnusedSmallEmber(struct Sprite *); +static void AnimUnusedSmallEmber_Step(struct Sprite *); static void AnimSunlight(struct Sprite *); static void AnimEmberFlare(struct Sprite *); static void AnimBurnFlame(struct Sprite *); @@ -162,7 +162,7 @@ const struct SpriteTemplate gFirePlumeSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_08595440 = +static const struct SpriteTemplate sUnusedEmberFirePlumeSpriteTemplate = { .tileTag = ANIM_TAG_SMALL_EMBER, .paletteTag = ANIM_TAG_SMALL_EMBER, @@ -173,7 +173,7 @@ const struct SpriteTemplate gUnusedSpriteTemplate_08595440 = .callback = AnimFirePlume, }; -static const union AnimCmd sAnim_Unused_08595458[] = +static const union AnimCmd sAnim_UnusedSmallEmber[] = { ANIMCMD_FRAME(16, 6), ANIMCMD_FRAME(32, 6), @@ -181,21 +181,21 @@ static const union AnimCmd sAnim_Unused_08595458[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_Unused_08595468[] = +static const union AnimCmd *const sAnims_UnusedSmallEmber[] = { - sAnim_Unused_08595458, + sAnim_UnusedSmallEmber, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0859546C = +static const struct SpriteTemplate sUnusedSmallEmberSpriteTemplate = { .tileTag = ANIM_TAG_SMALL_EMBER, .paletteTag = ANIM_TAG_SMALL_EMBER, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnims_Unused_08595468, + .anims = sAnims_UnusedSmallEmber, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_8109064, + .callback = AnimUnusedSmallEmber, }; static const union AffineAnimCmd sAffineAnim_SunlightRay[] = @@ -292,23 +292,23 @@ static const union AnimCmd *const sAnims_FireBlastCross[] = sAnim_FireBlastCross, }; -static const union AffineAnimCmd sAnim_Unused_08595544[] = +static const union AffineAnimCmd sAffineAnim_Unused_0[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd sAnim_Unused_08595554[] = +static const union AffineAnimCmd sAffineAnim_Unused_1[] = { AFFINEANIMCMD_FRAME(0xA0, 0xA0, 0, 0), AFFINEANIMCMD_END, }; // Unused -static const union AffineAnimCmd *const sAnims_Unused_08595564[] = +static const union AffineAnimCmd *const sAffineAnims_Unused[] = { - sAnim_Unused_08595544, - sAnim_Unused_08595554, + sAffineAnim_Unused_0, + sAffineAnim_Unused_1, }; const struct SpriteTemplate gFireBlastCrossSpriteTemplate = @@ -548,7 +548,7 @@ static void AnimLargeFlame_Step(struct Sprite *sprite) DestroySpriteAndMatrix(sprite); } -static void AnimUnused_8109064(struct Sprite *sprite) +static void AnimUnusedSmallEmber(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); @@ -570,10 +570,10 @@ static void AnimUnused_8109064(struct Sprite *sprite) sprite->data[4] = gBattleAnimArgs[6]; sprite->data[5] = 0; - sprite->callback = AnimUnused_8109064_Step; + sprite->callback = AnimUnusedSmallEmber_Step; } -static void AnimUnused_8109064_Step(struct Sprite *sprite) +static void AnimUnusedSmallEmber_Step(struct Sprite *sprite) { if (sprite->data[3]) { diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 060149a9e83a..bd6a494c84e8 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -20,7 +20,7 @@ static void AnimFlyBallAttack_Step(struct Sprite *); static void AnimFallingFeather(struct Sprite *); static void AnimFallingFeather_Step(struct Sprite *); static void AnimWhirlwindLine_Step(struct Sprite *); -static void AnimUnused_810EA4C(struct Sprite *); +static void AnimUnusedBubbleThrow(struct Sprite *); static void AnimWhirlwindLine(struct Sprite *); static void AnimBounceBallShrink(struct Sprite *); static void AnimBounceBallLand(struct Sprite *); @@ -30,8 +30,8 @@ static void AnimDiveBall_Step2(struct Sprite *); static void AnimDiveWaterSplash(struct Sprite *); static void AnimSprayWaterDroplet(struct Sprite *); static void AnimSprayWaterDroplet_Step(struct Sprite *); -static void AnimUnused_810F004(struct Sprite *); -static void AnimUnused_810F004_Step(struct Sprite *); +static void AnimUnusedFlashingLight(struct Sprite *); +static void AnimUnusedFlashingLight_Step(struct Sprite *); static void AnimSkyAttackBird(struct Sprite *); static void AnimSkyAttackBird_Step(struct Sprite *); static void AnimTask_AnimateGustTornadoPalette_Step(u8); @@ -180,7 +180,7 @@ const struct SpriteTemplate gFallingFeatherSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_085963A0 = +static const struct SpriteTemplate sUnusedBubbleThrowSpriteTemplate = { .tileTag = ANIM_TAG_SMALL_BUBBLES, .paletteTag = ANIM_TAG_SMALL_BUBBLES, @@ -188,7 +188,7 @@ const struct SpriteTemplate gUnusedSpriteTemplate_085963A0 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_810EA4C, + .callback = AnimUnusedBubbleThrow, }; static const union AnimCmd sAnim_WhirlwindLines[] = @@ -327,7 +327,7 @@ const struct SpriteTemplate gSprayWaterDropletSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_085964FC = +static const struct SpriteTemplate sUnusedFlashingLightSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -335,7 +335,7 @@ const struct SpriteTemplate gUnusedSpriteTemplate_085964FC = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_810F004, + .callback = AnimUnusedFlashingLight, }; const struct SpriteTemplate gSkyAttackBirdSpriteTemplate = @@ -892,7 +892,7 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) } } -static void AnimUnused_810EA4C(struct Sprite *sprite) +static void AnimUnusedBubbleThrow(struct Sprite *sprite) { sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget); sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); @@ -1158,14 +1158,14 @@ static void AnimSprayWaterDroplet_Step(struct Sprite *sprite) DestroyAnimSprite(sprite); } -static void AnimUnused_810F004(struct Sprite *sprite) +static void AnimUnusedFlashingLight(struct Sprite *sprite) { sprite->data[6] = 0; sprite->data[7] = 64; - sprite->callback = AnimUnused_810F004_Step; + sprite->callback = AnimUnusedFlashingLight_Step; } -static void AnimUnused_810F004_Step(struct Sprite *sprite) +static void AnimUnusedFlashingLight_Step(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -1220,7 +1220,8 @@ void AnimSkyAttackBird_Step(struct Sprite *sprite) DestroySpriteAndMatrix(sprite); } -void AnimTask_Unused_810F184(u8 taskId) +// Unused +static void AnimTask_SetAttackerVisibility(u8 taskId) { if (gBattleAnimArgs[0] == 0) { diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 53aa14cffb59..659cd0cb80c4 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -20,8 +20,8 @@ struct HailStruct { s32 unk3:4; }; -static void AnimUnused_810B6C4(struct Sprite *); -static void AnimUnused_810B6C4_Step(struct Sprite *); +static void AnimUnusedIceCrystalThrow(struct Sprite *); +static void AnimUnusedIceCrystalThrow_Step(struct Sprite *); static void AnimIcePunchSwirlingParticle(struct Sprite *); static void AnimIceBeamParticle(struct Sprite *); static void AnimIceEffectParticle(struct Sprite *); @@ -62,7 +62,7 @@ static const union AnimCmd *const sAnims_Unused_08595A54[] = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_08595A58 = +static const struct SpriteTemplate sUnusedIceCrystalThrowSpriteTemplate = { .tileTag = ANIM_TAG_ICE_CRYSTALS, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -70,10 +70,10 @@ const struct SpriteTemplate gUnusedSpriteTemplate_08595A58 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_810B6C4, + .callback = AnimUnusedIceCrystalThrow, }; -static const union AnimCmd sAnim_Unused_08595A70[] = +static const union AnimCmd sAnim_IceCrystalLargeChunk[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, @@ -110,10 +110,10 @@ static const union AnimCmd sAnim_SmallBubblePair[] = ANIMCMD_JUMP(0), }; -// Unused -static const union AnimCmd *const sAnims_Unused_08595AA4[] = +// Unused, contains just the top left corner of the large ice crystal +static const union AnimCmd *const sAnims_IceCrystalLargeChunk[] = { - sAnim_Unused_08595A70, + sAnim_IceCrystalLargeChunk, }; static const union AnimCmd *const sAnims_IceCrystalLarge[] = @@ -524,7 +524,7 @@ const struct SpriteTemplate gIceBallImpactShardSpriteTemplate = }; // Unused -static void AnimUnused_810B6C4(struct Sprite *sprite) +static void AnimUnusedIceCrystalThrow(struct Sprite *sprite) { s16 targetX, targetY, attackerX, attackerY; @@ -540,13 +540,13 @@ static void AnimUnused_810B6C4(struct Sprite *sprite) sprite->data[4] = gBattleAnimArgs[3] + targetY; sub_80A64EC(sprite); - for (;(targetX >= -32 && targetX <= 272) && (targetY >= -32 && targetY <= 192); + for (;(targetX >= -32 && targetX <= DISPLAY_WIDTH + 32) && (targetY >= -32 && targetY <= DISPLAY_HEIGHT + 32); targetX += sprite->data[1], targetY += sprite->data[2]) ; sprite->data[1] = -sprite->data[1]; sprite->data[2] = -sprite->data[2]; - for (;(attackerX >= -32 && attackerX <= 272) && (attackerY >= -32 && attackerY <= 192); + for (;(attackerX >= -32 && attackerX <= DISPLAY_WIDTH + 32) && (attackerY >= -32 && attackerY <= DISPLAY_HEIGHT + 32); attackerX += sprite->data[1], attackerY += sprite->data[2]) ; @@ -560,10 +560,10 @@ static void AnimUnused_810B6C4(struct Sprite *sprite) sub_80A64EC(sprite); sprite->data[3] = gBattleAnimArgs[5]; sprite->data[4] = gBattleAnimArgs[6]; - sprite->callback = AnimUnused_810B6C4_Step; + sprite->callback = AnimUnusedIceCrystalThrow_Step; } -static void AnimUnused_810B6C4_Step(struct Sprite *sprite) +static void AnimUnusedIceCrystalThrow_Step(struct Sprite *sprite) { if (sprite->data[0] != 0) { From c786a9b20c7d70546523a13406d7871f5fa5be2b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 11 Apr 2021 16:23:10 -0400 Subject: [PATCH 108/762] Document pokeblock menu --- include/item_menu_icons.h | 6 +- include/menu_helpers.h | 10 +- include/pokeblock.h | 3 +- src/battle_pyramid_bag.c | 32 +-- src/item_menu.c | 14 +- src/item_menu_icons.c | 12 +- src/lilycove_lady.c | 2 +- src/menu_helpers.c | 60 +++-- src/player_pc.c | 20 +- src/pokeblock.c | 506 ++++++++++++++++++++------------------ src/pokeblock_feed.c | 8 +- 11 files changed, 350 insertions(+), 323 deletions(-) diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index 7ff6ace94bd4..50e11dfd9dfa 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -14,9 +14,9 @@ void ShakeBagSprite(void); void AddSwitchPocketRotatingBallSprite(s16 rotationDirection); void AddBagItemIconSprite(u16 itemId, u8 id); void RemoveBagItemIconSprite(u8 id); -void sub_80D4FAC(void); -void sub_80D4FC8(u8 arg0); -void sub_80D4FEC(u8 arg0); +void CreateItemMenuSwapLine(void); +void SetItemMenuSwapLineInvisibility(bool8 invisible); +void UpdateItemMenuSwapLinePos(u8 y); u8 CreateBerryTagSprite(u8 id, s16 x, s16 y); void FreeBerryTagSpritePalette(void); u8 CreateSpinningBerrySprite(u8 berryId, u8 x, u8 y, bool8 startAffine); diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 4557ebbb1ec9..c4401354b728 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -35,10 +35,10 @@ bool8 MenuHelpers_CallLinkSomething(void); void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount); void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItems); void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4); -void LoadListMenuArrowsGfx(void); -void sub_8122344(u8 *spriteIds, u8 count); -void sub_81223B0(u8 *spriteIds, u8 count); -void sub_81223FC(u8 *spriteIds, u8 count, bool8 invisible); -void sub_8122448(u8 *spriteIds, u8 count, s16 x, u16 y); +void LoadListMenuSwapLineGfx(void); +void CreateSwapLineSprites(u8 *spriteIds, u8 count); +void DestroySwapLineSprites(u8 *spriteIds, u8 count); +void SetSwapLineSpritesInvisibility(u8 *spriteIds, u8 count, bool8 invisible); +void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y); #endif //GUARD_MENU_HELPERS_H diff --git a/include/pokeblock.h b/include/pokeblock.h index c82e99d8fb39..4c5a4048829c 100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h @@ -4,8 +4,7 @@ #include "constants/berry.h" #include "constants/pokemon.h" -#define GFX_TAG_POKEBLOCK 14818 -#define GFX_TAG_POKEBLOCK_CASE 14800 +#define TAG_POKEBLOCK 14818 enum { diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index f39bbf522483..23f2f965306a 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -63,7 +63,7 @@ static void sub_81C56F8(void); static void sub_81C5A20(void); static void sub_81C6BD8(void); static void sub_81C6EF4(void); -static void sub_81C700C(void); +static void CreateSwapLine(void); static void sub_81C6E98(void); static void sub_81C6F20(void); static void sub_81C6404(void); @@ -84,8 +84,8 @@ static void sub_81C5F08(u8 windowId, u8 horizontalCount, u8 verticalCount); static bool8 IsValidMenuAction(s8 arg0); static void sub_81C6DAC(u8 taskId, const struct YesNoFuncTable *yesNoTable); static void sub_81C6CEC(u8 windowId); -static void sub_81C704C(u8 y); -static void sub_81C7028(bool8 invisible); +static void UpdateSwapLinePos(u8 y); +static void SetSwapLineInvisibility(bool8 invisible); static void sub_81C6F68(struct Sprite *sprite); static void BagAction_UseOnField(u8 taskId); static void BagAction_Toss(u8 taskId); @@ -489,7 +489,7 @@ static bool8 sub_81C5078(void) gMain.state++; break; case 14: - sub_81C700C(); + CreateSwapLine(); gMain.state++; break; case 15: @@ -555,7 +555,7 @@ static bool8 sub_81C5238(void) gPyramidBagResources->state++; break; default: - LoadListMenuArrowsGfx(); + LoadListMenuSwapLineGfx(); gPyramidBagResources->state = 0; return TRUE; } @@ -1268,7 +1268,7 @@ static void Task_BeginItemSwap(u8 taskId) FillWindowPixelBuffer(1, PIXEL_FILL(0)); PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); sub_81C5A98(data[0], 1); - sub_81C704C(data[1]); + UpdateSwapLinePos(data[1]); gTasks[taskId].func = Task_ItemSwapHandleInput; } @@ -1287,8 +1287,8 @@ static void Task_ItemSwapHandleInput(u8 taskId) { s32 id = ListMenu_ProcessInput(data[0]); ListMenuGetScrollAndRow(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); - sub_81C7028(FALSE); - sub_81C704C(gPyramidBagCursorData.cursorPosition); + SetSwapLineInvisibility(FALSE); + UpdateSwapLinePos(gPyramidBagCursorData.cursorPosition); switch (id) { case LIST_NOTHING_CHOSEN: @@ -1324,7 +1324,7 @@ static void PerformItemSwap(u8 taskId) { MovePyramidBagItemSlotInList(data[1], var); gPyramidBagResources->unk814 = 0xFF; - sub_81C7028(TRUE); + SetSwapLineInvisibility(TRUE); DestroyListMenuTask(data[0], scrollOffset, selectedRow); if (data[1] < var) gPyramidBagCursorData.cursorPosition--; @@ -1341,7 +1341,7 @@ static void sub_81C6A14(u8 taskId) u16 *selectedRow = &gPyramidBagCursorData.cursorPosition; gPyramidBagResources->unk814 = 0xFF; - sub_81C7028(TRUE); + SetSwapLineInvisibility(TRUE); DestroyListMenuTask(data[0], scrollOffset, selectedRow); if (data[1] < *scrollOffset + *selectedRow) gPyramidBagCursorData.cursorPosition--; @@ -1545,17 +1545,17 @@ static void sub_81C6FF8(u8 itemSpriteArrayId) sub_81C6E38(itemSpriteArrayId + 1); } -static void sub_81C700C(void) +static void CreateSwapLine(void) { - sub_8122344(&gPyramidBagResources->itemsSpriteIds[3], 8); + CreateSwapLineSprites(&gPyramidBagResources->itemsSpriteIds[3], 8); } -static void sub_81C7028(bool8 invisible) +static void SetSwapLineInvisibility(bool8 invisible) { - sub_81223FC(&gPyramidBagResources->itemsSpriteIds[3], 8, invisible); + SetSwapLineSpritesInvisibility(&gPyramidBagResources->itemsSpriteIds[3], 8, invisible); } -static void sub_81C704C(u8 y) +static void UpdateSwapLinePos(u8 y) { - sub_8122448(&gPyramidBagResources->itemsSpriteIds[3], 8 | 0x80, 120, (y + 1) * 16); + UpdateSwapLineSpritesPos(&gPyramidBagResources->itemsSpriteIds[3], 8 | 0x80, 120, (y + 1) * 16); } diff --git a/src/item_menu.c b/src/item_menu.c index 8836c0c63271..865f8d8d1635 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -707,7 +707,7 @@ bool8 SetupBagMenu(void) gMain.state++; break; case 16: - sub_80D4FAC(); + CreateItemMenuSwapLine(); gMain.state++; break; case 17: @@ -787,7 +787,7 @@ bool8 LoadBagMenu_Graphics(void) gBagMenu->graphicsLoadState++; break; default: - LoadListMenuArrowsGfx(); + LoadListMenuSwapLineGfx(); gBagMenu->graphicsLoadState = 0; return TRUE; } @@ -1373,7 +1373,7 @@ void BagMenu_SwapItems(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where); FillWindowPixelBuffer(1, PIXEL_FILL(0)); BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - sub_80D4FEC(data[1]); + UpdateItemMenuSwapLinePos(data[1]); BagDestroyPocketSwitchArrowPair(); BagMenu_PrintCursor_(data[0], 2); gTasks[taskId].func = Task_HandleSwappingItemsInput; @@ -1396,8 +1396,8 @@ static void Task_HandleSwappingItemsInput(u8 taskId) { input = ListMenu_ProcessInput(data[0]); ListMenuGetScrollAndRow(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); - sub_80D4FC8(0); - sub_80D4FEC(gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); + SetItemMenuSwapLineInvisibility(FALSE); + UpdateItemMenuSwapLinePos(gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); switch (input) { case LIST_NOTHING_CHOSEN: @@ -1435,7 +1435,7 @@ void sub_81AC498(u8 taskId) gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--; LoadBagItemListBuffers(gBagPositionStruct.pocket); data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); - sub_80D4FC8(1); + SetItemMenuSwapLineInvisibility(TRUE); CreatePocketSwitchArrowPair(); gTasks[taskId].func = Task_BagMenu_HandleInput; } @@ -1453,7 +1453,7 @@ void sub_81AC590(u8 taskId) gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--; LoadBagItemListBuffers(gBagPositionStruct.pocket); data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); - sub_80D4FC8(1); + SetItemMenuSwapLineInvisibility(TRUE); CreatePocketSwitchArrowPair(); gTasks[taskId].func = Task_BagMenu_HandleInput; } diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index dd00811616e0..d15409226954 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -537,19 +537,19 @@ void RemoveBagItemIconSprite(u8 id) RemoveBagSprite(id + 2); } -void sub_80D4FAC(void) +void CreateItemMenuSwapLine(void) { - sub_8122344(&gBagMenu->spriteId[4], 8); + CreateSwapLineSprites(&gBagMenu->spriteId[4], 8); } -void sub_80D4FC8(u8 arg0) +void SetItemMenuSwapLineInvisibility(bool8 invisible) { - sub_81223FC(&gBagMenu->spriteId[4], 8, arg0); + SetSwapLineSpritesInvisibility(&gBagMenu->spriteId[4], 8, invisible); } -void sub_80D4FEC(u8 arg0) +void UpdateItemMenuSwapLinePos(u8 y) { - sub_8122448(&gBagMenu->spriteId[4], 136, 120, (arg0 + 1) * 16); + UpdateSwapLineSpritesPos(&gBagMenu->spriteId[4], 136, 120, (y + 1) * 16); } static void sub_80D5018(void *mem0, void *mem1) diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 22155ffd5937..6fa8ba4eb4a6 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -805,7 +805,7 @@ void Script_BufferContestLadyCategoryAndMonName(void) void OpenPokeblockCaseForContestLady(void) { - OpenPokeblockCase(3, CB2_ReturnToField); + OpenPokeblockCase(PBLOCK_CASE_GIVE, CB2_ReturnToField); } void SetContestLadyGivenPokeblock(void) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index e7385a5edf0c..5a6ac8394731 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -18,19 +18,17 @@ #include "constants/items.h" #include "constants/maps.h" -// this file's functions +#define TAG_SWAP_LINE 109 + static void Task_ContinueTaskAfterMessagePrints(u8 taskId); static void Task_CallYesOrNoCallback(u8 taskId); -// EWRAM vars EWRAM_DATA static struct YesNoFuncTable gUnknown_0203A138 = {0}; EWRAM_DATA static u8 gUnknown_0203A140 = 0; -// IWRAM bss vars static TaskFunc gUnknown_0300117C; -// const rom data -static const struct OamData sOamData_859F4E8 = +static const struct OamData sOamData_SwapLine = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -47,47 +45,47 @@ static const struct OamData sOamData_859F4E8 = .affineParam = 0 }; -static const union AnimCmd sSpriteAnim_859F4F0[] = +static const union AnimCmd sAnim_SwapLine_RightArrow[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_859F4F8[] = +static const union AnimCmd sAnim_SwapLine_Line[] = { ANIMCMD_FRAME(4, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_859F500[] = +static const union AnimCmd sAnim_SwapLine_LeftArrow[] = { - ANIMCMD_FRAME(0, 0, 1, 0), + ANIMCMD_FRAME(0, 0, .hFlip = TRUE), ANIMCMD_END }; -static const union AnimCmd *const sSpriteAnimTable_859F508[] = +static const union AnimCmd *const sAnims_SwapLine[] = { - sSpriteAnim_859F4F0, - sSpriteAnim_859F4F8, - sSpriteAnim_859F500 + sAnim_SwapLine_RightArrow, + sAnim_SwapLine_Line, + sAnim_SwapLine_LeftArrow }; -static const struct CompressedSpriteSheet gUnknown_0859F514 = +static const struct CompressedSpriteSheet sSpriteSheet_SwapLine = { - gBagSwapLineGfx, 0x100, 109 + gBagSwapLineGfx, 0x100, TAG_SWAP_LINE }; -static const struct CompressedSpritePalette gUnknown_0859F51C = +static const struct CompressedSpritePalette sSpritePalette_SwapLine = { - gBagSwapLinePal, 109 + gBagSwapLinePal, TAG_SWAP_LINE }; -static const struct SpriteTemplate gUnknown_0859F524 = +static const struct SpriteTemplate sSpriteTemplate_SwapLine = { - .tileTag = 109, - .paletteTag = 109, - .oam = &sOamData_859F4E8, - .anims = sSpriteAnimTable_859F508, + .tileTag = TAG_SWAP_LINE, + .paletteTag = TAG_SWAP_LINE, + .oam = &sOamData_SwapLine, + .anims = sAnims_SwapLine, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -390,19 +388,19 @@ void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4) } } -void LoadListMenuArrowsGfx(void) +void LoadListMenuSwapLineGfx(void) { - LoadCompressedSpriteSheet(&gUnknown_0859F514); - LoadCompressedSpritePalette(&gUnknown_0859F51C); + LoadCompressedSpriteSheet(&sSpriteSheet_SwapLine); + LoadCompressedSpritePalette(&sSpritePalette_SwapLine); } -void sub_8122344(u8 *spriteIds, u8 count) +void CreateSwapLineSprites(u8 *spriteIds, u8 count) { u8 i; for (i = 0; i < count; i++) { - spriteIds[i] = CreateSprite(&gUnknown_0859F524, i * 16, 0, 0); + spriteIds[i] = CreateSprite(&sSpriteTemplate_SwapLine, i * 16, 0, 0); if (i != 0) StartSpriteAnim(&gSprites[spriteIds[i]], 1); @@ -410,7 +408,7 @@ void sub_8122344(u8 *spriteIds, u8 count) } } -void sub_81223B0(u8 *spriteIds, u8 count) +void DestroySwapLineSprites(u8 *spriteIds, u8 count) { u8 i; @@ -423,17 +421,15 @@ void sub_81223B0(u8 *spriteIds, u8 count) } } -void sub_81223FC(u8 *spriteIds, u8 count, bool8 invisible) +void SetSwapLineSpritesInvisibility(u8 *spriteIds, u8 count, bool8 invisible) { u8 i; for (i = 0; i < count; i++) - { gSprites[spriteIds[i]].invisible = invisible; - } } -void sub_8122448(u8 *spriteIds, u8 count, s16 x, u16 y) +void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y) { u8 i; bool8 unknownBit = count & 0x80; diff --git a/src/player_pc.c b/src/player_pc.c index a06aad60e792..e5c3c5a184e1 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -112,7 +112,7 @@ static void CopyItemName_PlayerPC(u8 *string, u16 itemId); static void sub_816BC14(void); static void sub_816BFE0(u8 y, u8, u8 speed); static void sub_816BCC4(u8); -static void sub_816C690(u8); +static void UpdateSwapLinePos(u8); static void sub_816C4FC(u8 taskId); static void sub_816C0C8(void); static void sub_816C060(u16 itemId); @@ -558,8 +558,8 @@ static void ItemStorage_WithdrawToss_Helper(u8 taskId, bool8 toss) ItemStorage_SetItemAndMailCount(taskId); sub_816BC14(); FreeAndReserveObjectSpritePalettes(); - LoadListMenuArrowsGfx(); - sub_8122344(gUnknown_0203BCC4->spriteIds, 7); + LoadListMenuSwapLineGfx(); + CreateSwapLineSprites(gUnknown_0203BCC4->spriteIds, 7); ClearDialogWindowAndFrame(0,0); gTasks[taskId].func = ItemStorage_ProcessWithdrawTossInput; } @@ -1186,7 +1186,7 @@ static void ItemStorage_GoBackToPlayerPCMenu(u8 taskId) sub_816C0C8(); ItemStorage_RemoveScrollIndicator(); DestroyListMenuTask(data[5], NULL, NULL); - sub_81223B0(gUnknown_0203BCC4->spriteIds, 7); + DestroySwapLineSprites(gUnknown_0203BCC4->spriteIds, 7); sub_816BC58(); gTasks[taskId].func = ItemStorage_GoBackToPlayerPCMenu_InitStorage; } @@ -1199,7 +1199,7 @@ static void ItemStorage_ItemSwapChoosePrompt(u8 taskId) ListMenuSetUnkIndicatorsStructField(data[5], 16, 1); gUnknown_0203BCC4->unk666 = (playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos); sub_816BFB8(data[5], 0, 0); - sub_816C690(gUnknown_0203BCC4->unk666); + UpdateSwapLinePos(gUnknown_0203BCC4->unk666); CopyItemName(gSaveBlock1Ptr->pcItems[gUnknown_0203BCC4->unk666].itemId, gStringVar1); ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_SWITCH_WHICH_ITEM)); gTasks[taskId].func = sub_816C4FC; @@ -1219,8 +1219,8 @@ static void sub_816C4FC(u8 taskId) } id = ListMenu_ProcessInput(data[5]); ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - sub_81223FC(gUnknown_0203BCC4->spriteIds, 7, 0); - sub_816C690(playerPCItemPageInfo.cursorPos); + SetSwapLineSpritesInvisibility(gUnknown_0203BCC4->spriteIds, 7, FALSE); + UpdateSwapLinePos(playerPCItemPageInfo.cursorPos); switch(id) { case LIST_NOTHING_CHOSEN: @@ -1268,16 +1268,16 @@ static void ItemStorage_DoItemSwap(u8 taskId, bool8 a) if (gUnknown_0203BCC4->unk666 < b) playerPCItemPageInfo.cursorPos--; LABEL_SKIP_CURSOR_DECREMENT: - sub_81223FC(gUnknown_0203BCC4->spriteIds, 7, 1); + SetSwapLineSpritesInvisibility(gUnknown_0203BCC4->spriteIds, 7, TRUE); gUnknown_0203BCC4->unk666 = 0xFF; data[5] = ListMenuInit(&gMultiuseListMenuTemplate, playerPCItemPageInfo.itemsAbove, playerPCItemPageInfo.cursorPos); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = ItemStorage_ProcessInput; } -static void sub_816C690(u8 a) +static void UpdateSwapLinePos(u8 y) { - sub_8122448(gUnknown_0203BCC4->spriteIds, 7, 128, ((a+1) * 16)); + UpdateSwapLineSpritesPos(gUnknown_0203BCC4->spriteIds, 7, 128, ((y+1) * 16)); } static void sub_816C6BC(u8 windowId, u16 value, u32 mode, u8 x, u8 y, u8 n) diff --git a/src/pokeblock.c b/src/pokeblock.c index 3513e7dd240f..7856e70546bb 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -33,23 +33,46 @@ #include "constants/songs.h" #include "constants/rgb.h" +#define MAX_MENU_ITEMS 9 +#define MENU_MIDPOINT (MAX_MENU_ITEMS / 2) + +#define TILE_HIGHLIGHT_NONE 0x0005 // Tile number for the bg of an unselected menu item +#define TILE_HIGHLIGHT_BLUE 0x1005 // Tile number for the bg of a selected menu item +#define TILE_HIGHLIGHT_RED 0x2005 // Tile number for the bg of a menu item to swap + +#define TAG_POKEBLOCK_CASE 14800 +#define TAG_SCROLL_ARROW 1110 + #define POKEBLOCK_MAX_FEEL 99 -#define FIELD_E75_COUNT 7 + +enum { + WIN_TITLE, + WIN_LIST, + WIN_SPICY, + WIN_DRY, + WIN_SWEET, + WIN_BITTER, + WIN_SOUR, + WIN_FEEL, + WIN_ACTIONS_TALL, + WIN_ACTIONS, + WIN_TOSS_MSG, +}; struct PokeblockMenuStruct { - u8 tilemap[0x800]; + u8 tilemap[BG_SCREEN_SIZE]; void (*callbackOnUse)(void); - const u8 *pokeblockOptionsIds; - u8 optionsNo; + const u8 *pokeblockActionIds; + u8 numActions; u8 caseId; u8 itemsNo; u8 maxShowed; struct ListMenuItem items[POKEBLOCKS_COUNT + 1]; - u8 menuItemsStrings[POKEBLOCKS_COUNT + 1][0x20]; // + 1 because of STOW CASE item + u8 menuItemsStrings[POKEBLOCKS_COUNT + 1][32]; // + 1 because of STOW CASE item u8 pokeblockCaseSpriteId; - u8 field_E75[FIELD_E75_COUNT]; - u8 unkTaskId; + u8 swapLineSpriteIds[7]; + u8 arrowTaskId; bool8 isSwapping; s16 gfxState; u8 unused[8]; @@ -58,8 +81,8 @@ struct PokeblockMenuStruct struct PokeblockSavedData { void (*callback)(void); - u16 lastItemPos; - u16 lastItemPage; + u16 selectedRow; + u16 scrollOffset; }; enum @@ -82,43 +105,41 @@ static bool8 LoadPokeblockMenuGfx(void); static void HandleInitBackgrounds(void); static void HandleInitWindows(void); static void SetMenuItemsCountAndMaxShowed(void); -static void sub_81362E0(void); -static void sub_8136344(void); -static void HandlePokeblockListMenuItems(void); -static void sub_81363BC(void); -static void MovePokeblockMenuCursor(s32 pkblId, bool8 arg1, struct ListMenu *arg2); -static void PutPokeblockInfoText(void); -static void HandlePokeblockMenuCursor(u16 cursorPos, u16 arg1); -static void PutPokeblockListMenuString(u8 *dst, u16 pkblId); -static void Task_HandlePokeblockMenuInput(u8 taskId); -static void PokeblockAction_UseOnField(u8 taskId); -static void PokeblockAction_Toss(u8 taskId); -static void PokeblockAction_Cancel(u8 taskId); -static void PokeblockAction_UseInBattle(u8 taskId); -static void PokeblockAction_UseOnPokeblockFeeder(u8 taskId); -static void PokeblockAction_GiveToContestLady(u8 taskId); -static void TossPokeblockChoice_Yes(u8 taskId); -static void TossPokeblockChoice_No(u8 taskId); -static void Task_FreeDataAndExitPokeblockCase(u8 taskId); -static void Task_HandlePokeblockOptionsInput(u8 taskId); -static void PutPokeblockOptionsWindow(u8 taskId); -static void Task_HandlePokeblocksSwapInput(u8 taskId); -static void sub_8136470(struct Sprite *sprite); -static void sub_8135FCC(s32 pkblId); -static void HandlePokeblocksSwap(u8 taskId, bool8 noSwap); +static void LimitMenuScrollAndRow(void); +static void SetInitialScroll(void); +static void UpdatePokeblockList(void); +static void CreateScrollArrows(void); +static void MovePokeblockMenuCursor(s32, bool8, struct ListMenu *); +static void DrawPokeblockMenuTitleText(void); +static void DrawPokeblockMenuHighlight(u16, u16); +static void PutPokeblockListMenuString(u8 *, u16); +static void Task_HandlePokeblockMenuInput(u8); +static void PokeblockAction_UseOnField(u8); +static void PokeblockAction_Toss(u8); +static void PokeblockAction_Cancel(u8); +static void PokeblockAction_UseInBattle(u8); +static void PokeblockAction_UseOnPokeblockFeeder(u8); +static void PokeblockAction_GiveToContestLady(u8); +static void TossedPokeblockMessage(u8); +static void CloseTossPokeblockWindow(u8); +static void Task_FreeDataAndExitPokeblockCase(u8); +static void Task_HandlePokeblockActionsInput(u8); +static void ShowPokeblockActionsWindow(u8); +static void Task_HandlePokeblocksSwapInput(u8); +static void SpriteCB_ShakePokeblockCase(struct Sprite *); +static void DrawPokeblockInfo(s32); +static void UpdatePokeblockSwapMenu(u8, bool8); static void UsePokeblockOnField(void); static void ReturnToPokeblockCaseOnField(void); -static void CreateTossPokeblockYesNoMenu(u8 taskId); -static void HandleErasePokeblock(u8 taskId); +static void CreateTossPokeblockYesNoMenu(u8); +static void TossPokeblock(u8); -// ram variables EWRAM_DATA static struct PokeblockSavedData sSavedPokeblockData = {0}; EWRAM_DATA static struct PokeblockMenuStruct *sPokeblockMenu = NULL; -// const rom data const s8 gPokeblockFlavorCompatibilityTable[NUM_NATURES * FLAVOR_COUNT] = { - // Cool, Beauty, Cute, Smart, Tough + // Spicy, Dry, Sweet, Bitter, Sour 0, 0, 0, 0, 0, // Hardy 1, 0, 0, 0, -1, // Lonely 1, 0, -1, 0, 0, // Brave @@ -198,12 +219,12 @@ const u8 *const gPokeblockNames[] = static const struct MenuAction sPokeblockMenuActions[] = { - {gMenuText_Use, PokeblockAction_UseOnField}, - {gMenuText_Toss, PokeblockAction_Toss}, - {gText_Cancel2, PokeblockAction_Cancel}, - {gMenuText_Use, PokeblockAction_UseInBattle}, - {gMenuText_Use, PokeblockAction_UseOnPokeblockFeeder}, - {gMenuText_Give2, PokeblockAction_GiveToContestLady}, + [PKBL_USE_ON_FIELD] = {gMenuText_Use, PokeblockAction_UseOnField}, + [PKBL_TOSS] = {gMenuText_Toss, PokeblockAction_Toss}, + [PKBL_CANCEL] = {gText_Cancel2, PokeblockAction_Cancel}, + [PKBL_USE_IN_BATTLE] = {gMenuText_Use, PokeblockAction_UseInBattle}, + [PKBL_USE_ON_FEEDER] = {gMenuText_Use, PokeblockAction_UseOnPokeblockFeeder}, + [PKBL_GIVE_TO_LADY] = {gMenuText_Give2, PokeblockAction_GiveToContestLady}, }; static const u8 sActionsOnField[] = {PKBL_USE_ON_FIELD, PKBL_TOSS, PKBL_CANCEL}; @@ -211,7 +232,7 @@ static const u8 sActionsInBattle[] = {PKBL_USE_IN_BATTLE, PKBL_CANCEL}; static const u8 sActionsOnPokeblockFeeder[] = {PKBL_USE_ON_FEEDER, PKBL_CANCEL}; static const u8 sActionsWhenGivingToLady[] = {PKBL_GIVE_TO_LADY, PKBL_CANCEL}; -static const struct YesNoFuncTable sTossYesNoFuncTable = {TossPokeblockChoice_Yes, TossPokeblockChoice_No}; +static const struct YesNoFuncTable sTossYesNoFuncTable = {TossedPokeblockMessage, CloseTossPokeblockWindow}; static const u8 sContestStatsMonData[] = {MON_DATA_COOL, MON_DATA_BEAUTY, MON_DATA_CUTE, MON_DATA_SMART, MON_DATA_TOUGH}; @@ -259,39 +280,39 @@ static const union AffineAnimCmd *const sSpriteAffineAnimTable_85B26F0[] = const struct CompressedSpriteSheet gPokeblockCase_SpriteSheet = { - gMenuPokeblockDevice_Gfx, 0x800, GFX_TAG_POKEBLOCK_CASE + gMenuPokeblockDevice_Gfx, 0x800, TAG_POKEBLOCK_CASE }; const struct CompressedSpritePalette gPokeblockCase_SpritePal = { - gMenuPokeblockDevice_Pal, GFX_TAG_POKEBLOCK_CASE + gMenuPokeblockDevice_Pal, TAG_POKEBLOCK_CASE }; static const struct SpriteTemplate sSpriteTemplate_PokeblockCase = { - GFX_TAG_POKEBLOCK_CASE, - GFX_TAG_POKEBLOCK_CASE, - &sOamData_PokeblockCase, - sSpriteAnimTable_PokeblockCase, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy + .tileTag = TAG_POKEBLOCK_CASE, + .paletteTag = TAG_POKEBLOCK_CASE, + .oam = &sOamData_PokeblockCase, + .anims = sSpriteAnimTable_PokeblockCase, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; -static const u8 sTextColorInPokeblockMenu[3] = {0, 2, 3}; +static const u8 sTextColor[3] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; -static const struct Pokeblock sFavoritePokeblocksTable[] = +static const struct Pokeblock sFavoritePokeblocksTable[FLAVOR_COUNT] = { - { PBLOCK_CLR_RED, 20, 0, 0, 0, 0, 20}, - { PBLOCK_CLR_BLUE, 0, 20, 0, 0, 0, 20}, - { PBLOCK_CLR_PINK, 0, 0, 20, 0, 0, 20}, - { PBLOCK_CLR_GREEN, 0, 0, 0, 20, 0, 20}, - { PBLOCK_CLR_YELLOW, 0, 0, 0, 0, 20, 20} + [FLAVOR_SPICY] = { PBLOCK_CLR_RED, 20, 0, 0, 0, 0, 20}, + [FLAVOR_DRY] = { PBLOCK_CLR_BLUE, 0, 20, 0, 0, 0, 20}, + [FLAVOR_SWEET] = { PBLOCK_CLR_PINK, 0, 0, 20, 0, 0, 20}, + [FLAVOR_BITTER] = { PBLOCK_CLR_GREEN, 0, 0, 0, 20, 0, 20}, + [FLAVOR_SOUR] = { PBLOCK_CLR_YELLOW, 0, 0, 0, 0, 20, 20} }; -static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = +static const struct WindowTemplate sWindowTemplates[] = { - { + [WIN_TITLE] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 1, @@ -300,7 +321,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x1E }, - { + [WIN_LIST] = { .bg = 0, .tilemapLeft = 15, .tilemapTop = 1, @@ -309,7 +330,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x30 }, - { + [WIN_SPICY] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 13, @@ -318,7 +339,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x12C }, - { + [WIN_DRY] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, @@ -327,7 +348,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x136 }, - { + [WIN_SWEET] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 17, @@ -336,7 +357,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x140 }, - { + [WIN_BITTER] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 13, @@ -345,7 +366,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x14A }, - { + [WIN_SOUR] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 15, @@ -354,7 +375,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x154 }, - { + [WIN_FEEL] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 17, @@ -363,7 +384,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x15E }, - { + [WIN_ACTIONS_TALL] = { .bg = 1, .tilemapLeft = 7, .tilemapTop = 5, @@ -372,7 +393,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x162 }, - { + [WIN_ACTIONS] = { .bg = 1, .tilemapLeft = 7, .tilemapTop = 7, @@ -381,7 +402,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] = .paletteNum = 15, .baseBlock = 0x186 }, - { + [WIN_TOSS_MSG] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 15, @@ -411,7 +432,7 @@ static const struct ListMenuTemplate sPokeblockListMenuTemplate = .itemPrintFunc = NULL, .totalItems = 0, .maxShowed = 0, - .windowId = 1, + .windowId = WIN_LIST, .header_X = 0, .item_X = 1, .cursor_X = 0, @@ -426,33 +447,32 @@ static const struct ListMenuTemplate sPokeblockListMenuTemplate = .cursorKind = 1 }; -// code void OpenPokeblockCase(u8 caseId, void (*callback)(void)) { sPokeblockMenu = Alloc(sizeof(*sPokeblockMenu)); sPokeblockMenu->caseId = caseId; sPokeblockMenu->callbackOnUse = NULL; - sPokeblockMenu->unkTaskId = TASK_NONE; + sPokeblockMenu->arrowTaskId = TASK_NONE; sPokeblockMenu->isSwapping = FALSE; sSavedPokeblockData.callback = callback; switch (sPokeblockMenu->caseId) { case PBLOCK_CASE_BATTLE: - sPokeblockMenu->pokeblockOptionsIds = sActionsInBattle; - sPokeblockMenu->optionsNo = ARRAY_COUNT(sActionsInBattle); + sPokeblockMenu->pokeblockActionIds = sActionsInBattle; + sPokeblockMenu->numActions = ARRAY_COUNT(sActionsInBattle); break; case PBLOCK_CASE_FEEDER: - sPokeblockMenu->pokeblockOptionsIds = sActionsOnPokeblockFeeder; - sPokeblockMenu->optionsNo = ARRAY_COUNT(sActionsOnPokeblockFeeder); + sPokeblockMenu->pokeblockActionIds = sActionsOnPokeblockFeeder; + sPokeblockMenu->numActions = ARRAY_COUNT(sActionsOnPokeblockFeeder); break; case PBLOCK_CASE_GIVE: - sPokeblockMenu->pokeblockOptionsIds = sActionsWhenGivingToLady; - sPokeblockMenu->optionsNo = ARRAY_COUNT(sActionsWhenGivingToLady); + sPokeblockMenu->pokeblockActionIds = sActionsWhenGivingToLady; + sPokeblockMenu->numActions = ARRAY_COUNT(sActionsWhenGivingToLady); break; default: // PBLOCK_CASE_FIELD - sPokeblockMenu->pokeblockOptionsIds = sActionsOnField; - sPokeblockMenu->optionsNo = ARRAY_COUNT(sActionsOnField); + sPokeblockMenu->pokeblockActionIds = sActionsOnField; + sPokeblockMenu->numActions = ARRAY_COUNT(sActionsOnField); break; } @@ -498,6 +518,10 @@ static void CB2_InitPokeblockMenu(void) } } +#define tListTaskId data[0] +#define tWindowId data[1] +#define tToSwapId data[2] + static bool8 InitPokeblockMenu(void) { u8 taskId; @@ -519,7 +543,7 @@ static bool8 InitPokeblockMenu(void) break; case 3: ResetPaletteFade(); - gPaletteFade.bufferTransferDisabled = 1; + gPaletteFade.bufferTransferDisabled = TRUE; gMain.state++; break; case 4: @@ -543,8 +567,8 @@ static bool8 InitPokeblockMenu(void) break; case 8: SetMenuItemsCountAndMaxShowed(); - sub_81362E0(); - sub_8136344(); + LimitMenuScrollAndRow(); + SetInitialScroll(); gMain.state++; break; case 9: @@ -552,11 +576,11 @@ static bool8 InitPokeblockMenu(void) gMain.state++; break; case 10: - sub_8122344(sPokeblockMenu->field_E75, FIELD_E75_COUNT); + CreateSwapLineSprites(sPokeblockMenu->swapLineSpriteIds, ARRAY_COUNT(sPokeblockMenu->swapLineSpriteIds)); gMain.state++; break; case 11: - HandlePokeblockMenuCursor(sSavedPokeblockData.lastItemPos, 0x1005); + DrawPokeblockMenuHighlight(sSavedPokeblockData.selectedRow, TILE_HIGHLIGHT_BLUE); gMain.state++; break; case 12: @@ -564,29 +588,29 @@ static bool8 InitPokeblockMenu(void) gMain.state++; break; case 13: - HandlePokeblockListMenuItems(); + UpdatePokeblockList(); gMain.state++; break; case 14: - sub_81363BC(); + CreateScrollArrows(); gMain.state++; break; case 15: taskId = CreateTask(Task_HandlePokeblockMenuInput, 0); - gTasks[taskId].data[0] = ListMenuInit(&gMultiuseListMenuTemplate, sSavedPokeblockData.lastItemPage, sSavedPokeblockData.lastItemPos); + gTasks[taskId].tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, sSavedPokeblockData.scrollOffset, sSavedPokeblockData.selectedRow); gMain.state++; break; case 16: - PutPokeblockInfoText(); + DrawPokeblockMenuTitleText(); gMain.state++; break; case 17: - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 16, 0); gMain.state++; break; case 18: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); - gPaletteFade.bufferTransferDisabled = 0; + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + gPaletteFade.bufferTransferDisabled = FALSE; gMain.state++; break; default: @@ -645,7 +669,7 @@ static bool8 LoadPokeblockMenuGfx(void) sPokeblockMenu->gfxState++; break; case 5: - LoadListMenuArrowsGfx(); + LoadListMenuSwapLineGfx(); sPokeblockMenu->gfxState = 0; return TRUE; } @@ -657,16 +681,14 @@ static void HandleInitWindows(void) { u8 i; - InitWindows(sWindowTemplatesForPokeblockMenu); + InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 1, 0xE0); LoadMessageBoxGfx(0, 0xA, 0xD0); LoadPalette(gUnknown_0860F074, 0xF0, 0x20); - for (i = 0; i < ARRAY_COUNT(sWindowTemplatesForPokeblockMenu) - 1; i++) - { + for (i = 0; i < ARRAY_COUNT(sWindowTemplates) - 1; i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); - } ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); @@ -674,29 +696,27 @@ static void HandleInitWindows(void) static void PrintOnPokeblockWindow(u8 windowId, const u8 *string, s32 x) { - AddTextPrinterParameterized4(windowId, 1, x, 1, 0, 0, sTextColorInPokeblockMenu, 0, string); + AddTextPrinterParameterized4(windowId, 1, x, 1, 0, 0, sTextColor, 0, string); } -static void PutPokeblockInfoText(void) +static void DrawPokeblockMenuTitleText(void) { u8 i; const u8 *itemName = ItemId_GetName(ITEM_POKEBLOCK_CASE); - PrintOnPokeblockWindow(0, itemName, GetStringCenterAlignXOffset(1, itemName, 0x48)); + PrintOnPokeblockWindow(WIN_TITLE, itemName, GetStringCenterAlignXOffset(1, itemName, 0x48)); - PrintOnPokeblockWindow(2, gText_Spicy, 0); - PrintOnPokeblockWindow(3, gText_Dry, 0); - PrintOnPokeblockWindow(4, gText_Sweet, 0); - PrintOnPokeblockWindow(5, gText_Bitter, 0); - PrintOnPokeblockWindow(6, gText_Sour, 0); + PrintOnPokeblockWindow(WIN_SPICY, gText_Spicy, 0); + PrintOnPokeblockWindow(WIN_DRY, gText_Dry, 0); + PrintOnPokeblockWindow(WIN_SWEET, gText_Sweet, 0); + PrintOnPokeblockWindow(WIN_BITTER, gText_Bitter, 0); + PrintOnPokeblockWindow(WIN_SOUR, gText_Sour, 0); - for (i = 0; i < 8; i++) - { + for (i = 0; i < WIN_ACTIONS_TALL; i++) PutWindowTilemap(i); - } } -static void HandlePokeblockListMenuItems(void) +static void UpdatePokeblockList(void) { u16 i; @@ -731,19 +751,19 @@ static void PutPokeblockListMenuString(u8 *dst, u16 pkblId) StringExpandPlaceholders(txtPtr, gText_LvVar1); } -static void MovePokeblockMenuCursor(s32 pkblId, bool8 arg1, struct ListMenu *arg2) +static void MovePokeblockMenuCursor(s32 pkblId, bool8 onInit, struct ListMenu *list) { - if (arg1 != TRUE) + if (onInit != TRUE) { PlaySE(SE_SELECT); - gSprites[sPokeblockMenu->pokeblockCaseSpriteId].callback = sub_8136470; + gSprites[sPokeblockMenu->pokeblockCaseSpriteId].callback = SpriteCB_ShakePokeblockCase; } if (!sPokeblockMenu->isSwapping) - sub_8135FCC(pkblId); + DrawPokeblockInfo(pkblId); } -static void sub_8135FCC(s32 pkblId) +static void DrawPokeblockInfo(s32 pkblId) { u8 i; struct Pokeblock *pokeblock; @@ -760,28 +780,32 @@ static void sub_8135FCC(s32 pkblId) { if (GetPokeblockData(pokeblock, PBLOCK_SPICY + i) > 0) { + // PokĂ©block has this flavor, draw PokĂ©block icon next to it rectTilemapSrc[0] = (i << 12) + 0x17; rectTilemapSrc[1] = (i << 12) + 0x18; } else { + // PokĂ©block doesn't have this flavor, draw regular tiles rectTilemapSrc[0] = 0xF; rectTilemapSrc[1] = 0xF; } CopyToBgTilemapBufferRect(2, rectTilemapSrc, (i / 3 * 6) + 1, (i % 3 * 2) + 13, 1, 2); } + + // Print the PokĂ©block's feel ConvertIntToDecimalStringN(gStringVar1, GetPokeblocksFeel(pokeblock), STR_CONV_MODE_RIGHT_ALIGN, 2); - PrintOnPokeblockWindow(7, gStringVar1, 4); + PrintOnPokeblockWindow(WIN_FEEL, gStringVar1, 4); } else { + // Selected cancel, erase info rectTilemapSrc[0] = 0xF; rectTilemapSrc[1] = 0xF; for (i = 0; i < FLAVOR_COUNT; i++) - { CopyToBgTilemapBufferRect(2, rectTilemapSrc, (i / 3 * 6) + 1, (i % 3 * 2) + 13, 1, 2); - } + CopyWindowToVram(7, 2); } @@ -789,9 +813,9 @@ static void sub_8135FCC(s32 pkblId) ScheduleBgCopyTilemapToVram(2); } -static void HandlePokeblockMenuCursor(u16 cursorPos, u16 arg1) +static void DrawPokeblockMenuHighlight(u16 cursorPos, u16 tileNum) { - FillBgTilemapBufferRect_Palette0(2, arg1, 0xF, (cursorPos * 2) + 1, 0xE, 2); + FillBgTilemapBufferRect_Palette0(2, tileNum, 0xF, (cursorPos * 2) + 1, 0xE, 2); ScheduleBgCopyTilemapToVram(2); } @@ -813,7 +837,7 @@ static void CompactPokeblockSlots(void) } } -static void SwapSortPokeblocksInternalData(u32 id1, u32 id2) +static void SwapPokeblockMenuItems(u32 id1, u32 id2) { s16 i, count; struct Pokeblock *pokeblocks = gSaveBlock1Ptr->pokeblocks; @@ -843,8 +867,8 @@ static void SwapSortPokeblocksInternalData(u32 id1, u32 id2) void ResetPokeblockScrollPositions(void) { - sSavedPokeblockData.lastItemPos = 0; - sSavedPokeblockData.lastItemPage = 0; + sSavedPokeblockData.selectedRow = 0; + sSavedPokeblockData.scrollOffset = 0; } static void SetMenuItemsCountAndMaxShowed(void) @@ -861,56 +885,56 @@ static void SetMenuItemsCountAndMaxShowed(void) sPokeblockMenu->itemsNo++; // STOW CASE menu item - if (sPokeblockMenu->itemsNo > 9) - sPokeblockMenu->maxShowed = 9; + if (sPokeblockMenu->itemsNo > MAX_MENU_ITEMS) + sPokeblockMenu->maxShowed = MAX_MENU_ITEMS; else sPokeblockMenu->maxShowed = sPokeblockMenu->itemsNo; } -static void sub_81362E0(void) +static void LimitMenuScrollAndRow(void) { - if (sSavedPokeblockData.lastItemPage != 0) + if (sSavedPokeblockData.scrollOffset != 0) { - if (sSavedPokeblockData.lastItemPage + sPokeblockMenu->maxShowed > sPokeblockMenu->itemsNo) - sSavedPokeblockData.lastItemPage = sPokeblockMenu->itemsNo - sPokeblockMenu->maxShowed; + if (sSavedPokeblockData.scrollOffset + sPokeblockMenu->maxShowed > sPokeblockMenu->itemsNo) + sSavedPokeblockData.scrollOffset = sPokeblockMenu->itemsNo - sPokeblockMenu->maxShowed; } - if (sSavedPokeblockData.lastItemPage + sSavedPokeblockData.lastItemPos >= sPokeblockMenu->itemsNo) + if (sSavedPokeblockData.scrollOffset + sSavedPokeblockData.selectedRow >= sPokeblockMenu->itemsNo) { if (sPokeblockMenu->itemsNo == 0) - sSavedPokeblockData.lastItemPos = 0; + sSavedPokeblockData.selectedRow = 0; else - sSavedPokeblockData.lastItemPos = sPokeblockMenu->itemsNo - 1; + sSavedPokeblockData.selectedRow = sPokeblockMenu->itemsNo - 1; } } -static void sub_8136344(void) +static void SetInitialScroll(void) { - if (sSavedPokeblockData.lastItemPos > 4) + if (sSavedPokeblockData.selectedRow > MENU_MIDPOINT) { u8 i; for (i = 0; - (i < sSavedPokeblockData.lastItemPos - 4) && (sSavedPokeblockData.lastItemPage + sPokeblockMenu->maxShowed != sPokeblockMenu->itemsNo); - sSavedPokeblockData.lastItemPos--, sSavedPokeblockData.lastItemPage++, i++); + (i < sSavedPokeblockData.selectedRow - MENU_MIDPOINT) && (sSavedPokeblockData.scrollOffset + sPokeblockMenu->maxShowed != sPokeblockMenu->itemsNo); + sSavedPokeblockData.selectedRow--, sSavedPokeblockData.scrollOffset++, i++); } } -static void sub_81363BC(void) +static void CreateScrollArrows(void) { - if (sPokeblockMenu->unkTaskId == TASK_NONE) + if (sPokeblockMenu->arrowTaskId == TASK_NONE) { - sPokeblockMenu->unkTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 0xB0, 8, 0x98, sPokeblockMenu->itemsNo - sPokeblockMenu->maxShowed, - 0x456, 0x456, &sSavedPokeblockData.lastItemPage); + sPokeblockMenu->arrowTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 0xB0, 8, 0x98, sPokeblockMenu->itemsNo - sPokeblockMenu->maxShowed, + TAG_SCROLL_ARROW, TAG_SCROLL_ARROW, &sSavedPokeblockData.scrollOffset); } } -static void sub_8136418(void) +static void DestroyScrollArrows(void) { - if (sPokeblockMenu->unkTaskId != TASK_NONE) + if (sPokeblockMenu->arrowTaskId != TASK_NONE) { - RemoveScrollIndicatorArrowPair(sPokeblockMenu->unkTaskId); - sPokeblockMenu->unkTaskId = TASK_NONE; + RemoveScrollIndicatorArrowPair(sPokeblockMenu->arrowTaskId); + sPokeblockMenu->arrowTaskId = TASK_NONE; } } @@ -919,26 +943,29 @@ u8 CreatePokeblockCaseSprite(s16 x, s16 y, u8 subpriority) return CreateSprite(&sSpriteTemplate_PokeblockCase, x, y, subpriority); } -static void sub_8136470(struct Sprite *sprite) +#define sState data[0] +#define sTimer data[1] + +static void SpriteCB_ShakePokeblockCase(struct Sprite *sprite) { - if (sprite->data[0] > 1) - sprite->data[0] = 0; + if (sprite->sState > 1) + sprite->sState = 0; - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->oam.affineMode = ST_OAM_AFFINE_NORMAL; sprite->affineAnims = sSpriteAffineAnimTable_85B26F0; InitSpriteAffineAnim(sprite); - sprite->data[0] = 1; - sprite->data[1] = 0; + sprite->sState = 1; + sprite->sTimer = 0; break; case 1: - if (++sprite->data[1] > 11) + if (++sprite->sTimer > 11) { sprite->oam.affineMode = ST_OAM_AFFINE_OFF; - sprite->data[0] = 0; - sprite->data[1] = 0; + sprite->sState = 0; + sprite->sTimer = 0; FreeOamMatrix(sprite->oam.matrixNum); sprite->callback = SpriteCallbackDummy; } @@ -948,7 +975,7 @@ static void sub_8136470(struct Sprite *sprite) static void FadePaletteAndSetTaskToClosePokeblockCase(u8 taskId) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gTasks[taskId].func = Task_FreeDataAndExitPokeblockCase; } @@ -961,8 +988,8 @@ static void Task_FreeDataAndExitPokeblockCase(u8 taskId) if (sPokeblockMenu->caseId == PBLOCK_CASE_FEEDER || sPokeblockMenu->caseId == PBLOCK_CASE_GIVE) gFieldCallback = FieldCB_ContinueScriptHandleMusic; - DestroyListMenuTask(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); - sub_8136418(); + DestroyListMenuTask(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); + DestroyScrollArrows(); ResetSpriteData(); FreeAllSpritePalettes(); @@ -985,29 +1012,31 @@ static void Task_HandlePokeblockMenuInput(u8 taskId) { if (JOY_NEW(SELECT_BUTTON)) { - ListMenuGetScrollAndRow(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); - if (sSavedPokeblockData.lastItemPage + sSavedPokeblockData.lastItemPos != sPokeblockMenu->itemsNo - 1) + ListMenuGetScrollAndRow(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); + if (sSavedPokeblockData.scrollOffset + sSavedPokeblockData.selectedRow != sPokeblockMenu->itemsNo - 1) { + // Chose menu item to swap PlaySE(SE_SELECT); - HandlePokeblockMenuCursor(sSavedPokeblockData.lastItemPos, 0x2005); - data[2] = sSavedPokeblockData.lastItemPage + sSavedPokeblockData.lastItemPos; + DrawPokeblockMenuHighlight(sSavedPokeblockData.selectedRow, TILE_HIGHLIGHT_RED); + tToSwapId = sSavedPokeblockData.scrollOffset + sSavedPokeblockData.selectedRow; sPokeblockMenu->isSwapping = TRUE; gTasks[taskId].func = Task_HandlePokeblocksSwapInput; } } else { - u16 oldPosition = sSavedPokeblockData.lastItemPos; - s32 itemId = ListMenu_ProcessInput(data[0]); + u16 oldPosition = sSavedPokeblockData.selectedRow; + s32 input = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); - ListMenuGetScrollAndRow(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); - if (oldPosition != sSavedPokeblockData.lastItemPos) + if (oldPosition != sSavedPokeblockData.selectedRow) { - HandlePokeblockMenuCursor(oldPosition, 5); - HandlePokeblockMenuCursor(sSavedPokeblockData.lastItemPos, 0x1005); + // Moved cursor + DrawPokeblockMenuHighlight(oldPosition, TILE_HIGHLIGHT_NONE); + DrawPokeblockMenuHighlight(sSavedPokeblockData.selectedRow, TILE_HIGHLIGHT_BLUE); } - switch (itemId) + switch (input) { case LIST_NOTHING_CHOSEN: break; @@ -1018,9 +1047,10 @@ static void Task_HandlePokeblockMenuInput(u8 taskId) FadePaletteAndSetTaskToClosePokeblockCase(taskId); break; default: + // Selected PokĂ©block PlaySE(SE_SELECT); - gSpecialVar_ItemId = itemId; - PutPokeblockOptionsWindow(taskId); + gSpecialVar_ItemId = input; + ShowPokeblockActionsWindow(taskId); break; } } @@ -1036,100 +1066,102 @@ static void Task_HandlePokeblocksSwapInput(u8 taskId) if (JOY_NEW(SELECT_BUTTON)) { + // Swap items PlaySE(SE_SELECT); - ListMenuGetScrollAndRow(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); - HandlePokeblocksSwap(taskId, FALSE); + ListMenuGetScrollAndRow(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); + UpdatePokeblockSwapMenu(taskId, FALSE); } else { - u16 i = sSavedPokeblockData.lastItemPage; - u16 var = sSavedPokeblockData.lastItemPos; - s32 itemId = ListMenu_ProcessInput(data[0]); + u16 i = sSavedPokeblockData.scrollOffset; + u16 row = sSavedPokeblockData.selectedRow; + s32 input = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); - ListMenuGetScrollAndRow(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); - if (i != sSavedPokeblockData.lastItemPage || var != sSavedPokeblockData.lastItemPos) + if (i != sSavedPokeblockData.scrollOffset || row != sSavedPokeblockData.selectedRow) { - for (i = 0; i < 9; i++) + for (i = 0; i < MAX_MENU_ITEMS; i++) { - var = i + sSavedPokeblockData.lastItemPage; - if (var == data[2]) - HandlePokeblockMenuCursor(i, 0x2005); + row = i + sSavedPokeblockData.scrollOffset; + if (row == tToSwapId) + DrawPokeblockMenuHighlight(i, TILE_HIGHLIGHT_RED); else - HandlePokeblockMenuCursor(i, 5); + DrawPokeblockMenuHighlight(i, TILE_HIGHLIGHT_NONE); } } - sub_81223FC(sPokeblockMenu->field_E75, FIELD_E75_COUNT, 0); - sub_8122448(sPokeblockMenu->field_E75, FIELD_E75_COUNT, 0x80, (sSavedPokeblockData.lastItemPos * 16) + 8); + SetSwapLineSpritesInvisibility(sPokeblockMenu->swapLineSpriteIds, ARRAY_COUNT(sPokeblockMenu->swapLineSpriteIds), FALSE); + UpdateSwapLineSpritesPos(sPokeblockMenu->swapLineSpriteIds, ARRAY_COUNT(sPokeblockMenu->swapLineSpriteIds), 128, (sSavedPokeblockData.selectedRow * 16) + 8); - switch (itemId) + switch (input) { case LIST_NOTHING_CHOSEN: break; - case LIST_CANCEL: // same id as STOW CASE field + case LIST_CANCEL: PlaySE(SE_SELECT); - if (JOY_NEW(A_BUTTON)) - HandlePokeblocksSwap(taskId, FALSE); + if (JOY_NEW(A_BUTTON)) // Pointless check, B Button has been pressed here + UpdatePokeblockSwapMenu(taskId, FALSE); else - HandlePokeblocksSwap(taskId, TRUE); + UpdatePokeblockSwapMenu(taskId, TRUE); // Canceled swapping break; default: + // Swap items PlaySE(SE_SELECT); - HandlePokeblocksSwap(taskId, FALSE); + UpdatePokeblockSwapMenu(taskId, FALSE); break; } } } -static void HandlePokeblocksSwap(u8 taskId, bool8 noSwap) +static void UpdatePokeblockSwapMenu(u8 taskId, bool8 noSwap) { u8 i; s16 *data = gTasks[taskId].data; - u16 swappedFromId = sSavedPokeblockData.lastItemPage + sSavedPokeblockData.lastItemPos; + u16 swappedFromId = sSavedPokeblockData.scrollOffset + sSavedPokeblockData.selectedRow; sPokeblockMenu->isSwapping = FALSE; - DestroyListMenuTask(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); + DestroyListMenuTask(tListTaskId, &sSavedPokeblockData.scrollOffset, &sSavedPokeblockData.selectedRow); - if (!noSwap && data[2] != swappedFromId && data[2] != swappedFromId - 1) + if (!noSwap && tToSwapId != swappedFromId && tToSwapId != swappedFromId - 1) { - SwapSortPokeblocksInternalData(data[2], swappedFromId); - HandlePokeblockListMenuItems(); + SwapPokeblockMenuItems(tToSwapId, swappedFromId); + UpdatePokeblockList(); } - if (data[2] < swappedFromId) - sSavedPokeblockData.lastItemPos--; + if (tToSwapId < swappedFromId) + sSavedPokeblockData.selectedRow--; - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, sSavedPokeblockData.lastItemPage, sSavedPokeblockData.lastItemPos); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, sSavedPokeblockData.scrollOffset, sSavedPokeblockData.selectedRow); ScheduleBgCopyTilemapToVram(0); - sub_81223FC(sPokeblockMenu->field_E75, FIELD_E75_COUNT, 1); + SetSwapLineSpritesInvisibility(sPokeblockMenu->swapLineSpriteIds, ARRAY_COUNT(sPokeblockMenu->swapLineSpriteIds), TRUE); - for (i = 0; i < 9; i++) - HandlePokeblockMenuCursor(i, 5); + for (i = 0; i < MAX_MENU_ITEMS; i++) + DrawPokeblockMenuHighlight(i, TILE_HIGHLIGHT_NONE); - HandlePokeblockMenuCursor(sSavedPokeblockData.lastItemPos, 0x1005); + DrawPokeblockMenuHighlight(sSavedPokeblockData.selectedRow, TILE_HIGHLIGHT_BLUE); gTasks[taskId].func = Task_HandlePokeblockMenuInput; } -static void PutPokeblockOptionsWindow(u8 taskId) +static void ShowPokeblockActionsWindow(u8 taskId) { s16 *data = gTasks[taskId].data; - if (sPokeblockMenu->optionsNo == 3) - data[1] = 8; + if (sPokeblockMenu->numActions == 3) + tWindowId = WIN_ACTIONS_TALL; else - data[1] = 9; + tWindowId = WIN_ACTIONS; - sub_8136418(); - DrawStdFrameWithCustomTileAndPalette(data[1], 0, 1, 0xE); - sub_81995E4(data[1], sPokeblockMenu->optionsNo, sPokeblockMenuActions, sPokeblockMenu->pokeblockOptionsIds); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[1], sPokeblockMenu->optionsNo, 0); - PutWindowTilemap(data[1]); + DestroyScrollArrows(); + DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 1, 0xE); + sub_81995E4(tWindowId, sPokeblockMenu->numActions, sPokeblockMenuActions, sPokeblockMenu->pokeblockActionIds); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, sPokeblockMenu->numActions, 0); + PutWindowTilemap(tWindowId); ScheduleBgCopyTilemapToVram(1); - gTasks[taskId].func = Task_HandlePokeblockOptionsInput; + gTasks[taskId].func = Task_HandlePokeblockActionsInput; } -static void Task_HandlePokeblockOptionsInput(u8 taskId) +static void Task_HandlePokeblockActionsInput(u8 taskId) { s8 itemId; @@ -1149,7 +1181,7 @@ static void Task_HandlePokeblockOptionsInput(u8 taskId) else { PlaySE(SE_SELECT); - sPokeblockMenuActions[sPokeblockMenu->pokeblockOptionsIds[itemId]].func.void_u8(taskId); + sPokeblockMenuActions[sPokeblockMenu->pokeblockActionIds[itemId]].func.void_u8(taskId); } } @@ -1173,10 +1205,10 @@ static void PokeblockAction_Toss(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearStdWindowAndFrameToTransparent(data[1], FALSE); + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); StringCopy(gStringVar1, gPokeblockNames[gSaveBlock1Ptr->pokeblocks[gSpecialVar_ItemId].color]); StringExpandPlaceholders(gStringVar4, gText_ThrowAwayVar1); - DisplayMessageAndContinueTask(taskId, 10, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, CreateTossPokeblockYesNoMenu); + DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, CreateTossPokeblockYesNoMenu); } static void CreateTossPokeblockYesNoMenu(u8 taskId) @@ -1184,44 +1216,44 @@ static void CreateTossPokeblockYesNoMenu(u8 taskId) CreateYesNoMenuWithCallbacks(taskId, &sTossPkblockWindowTemplate, 1, 0, 2, 1, 0xE, &sTossYesNoFuncTable); } -static void TossPokeblockChoice_Yes(u8 taskId) +static void TossedPokeblockMessage(u8 taskId) { StringExpandPlaceholders(gStringVar4, gText_Var1ThrownAway); - DisplayMessageAndContinueTask(taskId, 10, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, HandleErasePokeblock); + DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, TossPokeblock); } -static void HandleErasePokeblock(u8 taskId) +static void TossPokeblock(u8 taskId) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { s16 *data; - u16 *lastPage, *lastPos; + u16 *scrollOffset, *selectedRow; TryClearPokeblock(gSpecialVar_ItemId); PlaySE(SE_SELECT); - lastPage = &sSavedPokeblockData.lastItemPage; - lastPos = &sSavedPokeblockData.lastItemPos; + scrollOffset = &sSavedPokeblockData.scrollOffset; + selectedRow = &sSavedPokeblockData.selectedRow; data = gTasks[taskId].data; - DestroyListMenuTask(data[0], lastPage, lastPos); - HandlePokeblockMenuCursor(*lastPos, 5); + DestroyListMenuTask(tListTaskId, scrollOffset, selectedRow); + DrawPokeblockMenuHighlight(*selectedRow, TILE_HIGHLIGHT_NONE); SetMenuItemsCountAndMaxShowed(); - sub_81362E0(); - HandlePokeblockListMenuItems(); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *lastPage, *lastPos); - HandlePokeblockMenuCursor(*lastPos, 0x1005); + LimitMenuScrollAndRow(); + UpdatePokeblockList(); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); + DrawPokeblockMenuHighlight(*selectedRow, TILE_HIGHLIGHT_BLUE); ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); - TossPokeblockChoice_No(taskId); + CloseTossPokeblockWindow(taskId); } } -static void TossPokeblockChoice_No(u8 taskId) +static void CloseTossPokeblockWindow(u8 taskId) { - ClearDialogWindowAndFrameToTransparent(10, FALSE); + ClearDialogWindowAndFrameToTransparent(WIN_TOSS_MSG, FALSE); ScheduleBgCopyTilemapToVram(1); - sub_81363BC(); + CreateScrollArrows(); gTasks[taskId].func = Task_HandlePokeblockMenuInput; } @@ -1266,9 +1298,9 @@ static void PokeblockAction_Cancel(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearStdWindowAndFrameToTransparent(data[1], FALSE); + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); ScheduleBgCopyTilemapToVram(1); - sub_81363BC(); + CreateScrollArrows(); gTasks[taskId].func = Task_HandlePokeblockMenuInput; } diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index e5b13e2f6369..1da999fb8e0f 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -498,13 +498,13 @@ static const union AffineAnimCmd *const sThrownPokeblockAffineAnimTable[] = static const struct CompressedSpriteSheet sPokeblock_SpriteSheet = { - gPokeblock_Gfx, 0x20, GFX_TAG_POKEBLOCK + gPokeblock_Gfx, 0x20, TAG_POKEBLOCK }; static const struct SpriteTemplate sThrownPokeblockSpriteTemplate = { - .tileTag = GFX_TAG_POKEBLOCK, - .paletteTag = GFX_TAG_POKEBLOCK, + .tileTag = TAG_POKEBLOCK, + .paletteTag = TAG_POKEBLOCK, .oam = &sThrownPokeblockOamData, .anims = sThrownPokeblockAnimTable, .images = NULL, @@ -711,7 +711,7 @@ static void SetPokeblockSpritePal(u8 pokeblockCaseId) { u8 colorId = GetPokeblockData(&gSaveBlock1Ptr->pokeblocks[pokeblockCaseId], PBLOCK_COLOR); sPokeblockSpritePal.data = sPokeblocksPals[colorId - 1]; - sPokeblockSpritePal.tag = GFX_TAG_POKEBLOCK; + sPokeblockSpritePal.tag = TAG_POKEBLOCK; } // defines for task data fields From e92d2005c40073b264cd4d6de08f19c9600d07c5 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Mon, 12 Apr 2021 17:33:20 -0500 Subject: [PATCH 109/762] Use designated initializers for gTypeNames --- src/battle_main.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index 8a85c27f5dde..c30c929299cb 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -434,24 +434,24 @@ const u8 gTypeEffectiveness[336] = const u8 gTypeNames[NUMBER_OF_MON_TYPES][TYPE_NAME_LENGTH + 1] = { - _("NORMAL"), - _("FIGHT"), - _("FLYING"), - _("POISON"), - _("GROUND"), - _("ROCK"), - _("BUG"), - _("GHOST"), - _("STEEL"), - _("???"), - _("FIRE"), - _("WATER"), - _("GRASS"), - _("ELECTR"), - _("PSYCHC"), - _("ICE"), - _("DRAGON"), - _("DARK"), + [TYPE_NORMAL] = _("NORMAL"), + [TYPE_FIGHTING] = _("FIGHT"), + [TYPE_FLYING] = _("FLYING"), + [TYPE_POISON] = _("POISON"), + [TYPE_GROUND] = _("GROUND"), + [TYPE_ROCK] = _("ROCK"), + [TYPE_BUG] = _("BUG"), + [TYPE_GHOST] = _("GHOST"), + [TYPE_STEEL] = _("STEEL"), + [TYPE_MYSTERY] = _("???"), + [TYPE_FIRE] = _("FIRE"), + [TYPE_WATER] = _("WATER"), + [TYPE_GRASS] = _("GRASS"), + [TYPE_ELECTRIC] = _("ELECTR"), + [TYPE_PSYCHIC] = _("PSYCHC"), + [TYPE_ICE] = _("ICE"), + [TYPE_DRAGON] = _("DRAGON"), + [TYPE_DARK] = _("DARK"), }; // This is a factor in how much money you get for beating a trainer. From 042a2ecc417001be93bd363cbaff5415be65308c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 12 Apr 2021 12:33:06 -0400 Subject: [PATCH 110/762] Document pokeblock feed scene --- include/graphics.h | 2 +- include/pokeblock.h | 2 +- src/graphics.c | 2 +- src/pokeblock.c | 2 +- src/pokeblock_feed.c | 853 ++++++++++++++++++++++++------------------- src/use_pokeblock.c | 2 +- 6 files changed, 480 insertions(+), 383 deletions(-) diff --git a/include/graphics.h b/include/graphics.h index 7c36b9cf59a2..cea8bbab180f 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4076,7 +4076,7 @@ extern const u8 gNamingScreenCursor_Gfx[]; extern const u8 gNamingScreenInputArrow_Gfx[]; extern const u8 gNamingScreenUnderscore_Gfx[]; -extern const u32 gUnknown_08D9BA44[]; +extern const u32 gPokeblockFeedBg_Tilemap[]; extern const u32 gConfetti_Gfx[]; extern const u32 gConfetti_Pal[]; diff --git a/include/pokeblock.h b/include/pokeblock.h index 4c5a4048829c..9e0161495142 100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h @@ -51,7 +51,7 @@ extern s16 gPokeblockGain; void ChooseMonToGivePokeblock(struct Pokeblock *pokeblock, void (*callback)(void)); // pokeblock feed -void CB2_PreparePokeblockFeedScene(void); +void PreparePokeblockFeedScene(void); // pokeblock extern const s8 gPokeblockFlavorCompatibilityTable[NUM_NATURES * FLAVOR_COUNT]; diff --git a/src/graphics.c b/src/graphics.c index 7a7a11b2b95c..09779eab7ab4 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1201,7 +1201,7 @@ const u32 gPokeblockBlack_Pal[] = INCBIN_U32("graphics/pokeblock/black.gbapal.lz const u32 gPokeblockWhite_Pal[] = INCBIN_U32("graphics/pokeblock/white.gbapal.lz"); const u32 gPokeblockGold_Pal[] = INCBIN_U32("graphics/pokeblock/gold.gbapal.lz"); -const u32 gUnknown_08D9BA44[] = INCBIN_U32("graphics/interface/pokeblock_feeding_bg_map.bin.lz"); +const u32 gPokeblockFeedBg_Tilemap[] = INCBIN_U32("graphics/interface/pokeblock_feeding_bg_map.bin.lz"); #include "data/graphics/berries.h" #include "data/graphics/rayquaza_scene.h" diff --git a/src/pokeblock.c b/src/pokeblock.c index 7856e70546bb..daf50a612ebd 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -37,7 +37,7 @@ #define MENU_MIDPOINT (MAX_MENU_ITEMS / 2) #define TILE_HIGHLIGHT_NONE 0x0005 // Tile number for the bg of an unselected menu item -#define TILE_HIGHLIGHT_BLUE 0x1005 // Tile number for the bg of a selected menu item +#define TILE_HIGHLIGHT_BLUE 0x1005 // Tile number for the bg of a selected menu item #define TILE_HIGHLIGHT_RED 0x2005 // Tile number for the bg of a menu item to swap #define TAG_POKEBLOCK_CASE 14800 diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 1da999fb8e0f..793ef64dc418 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -26,207 +26,283 @@ #include "util.h" #include "constants/rgb.h" -struct PokeblockFeedStruct +enum { + ANIMDATA_ROT_IDX, + ANIMDATA_ROT_SPEED, + ANIMDATA_SIN_AMPLITUDE, + ANIMDATA_COS_AMPLITUDE, + ANIMDATA_TIME, + ANIMDATA_ROT_ACCEL, + ANIMDATA_TARGET_X, + ANIMDATA_TARGET_Y, + ANIMDATA_APPR_TIME, + ANIMDATA_IS_LAST, + NUM_ANIMDATA +}; + +enum { + AFFINE_NONE, + AFFINE_TURN_UP, + AFFINE_TURN_UP_AND_DOWN, + AFFINE_TURN_DOWN, + AFFINE_TURN_DOWN_SLOW, + AFFINE_TURN_DOWN_SLIGHT, + AFFINE_TURN_UP_HIGH, + AFFINE_UNUSED_1, + AFFINE_UNUSED_2, + AFFINE_UNUSED_3, + NUM_MON_AFFINES, +}; + +#define MON_X 48 +#define MON_Y 80 + +// The animation the PokĂ©mon does during the feeding scene depends on their nature. +// The below values are offsets into sMonPokeblockAnims of the animation data for that nature. +#define ANIM_HARDY 0 +#define ANIM_LONELY (ANIM_HARDY + 3) +#define ANIM_BRAVE (ANIM_LONELY + 1) +#define ANIM_ADAMANT (ANIM_BRAVE + 1) +#define ANIM_NAUGHTY (ANIM_ADAMANT + 5) +#define ANIM_BOLD (ANIM_NAUGHTY + 3) +#define ANIM_DOCILE (ANIM_BOLD + 2) +#define ANIM_RELAXED (ANIM_DOCILE + 1) +#define ANIM_IMPISH (ANIM_RELAXED + 2) +#define ANIM_LAX (ANIM_IMPISH + 1) +#define ANIM_TIMID (ANIM_LAX + 1) +#define ANIM_HASTY (ANIM_TIMID + 5) +#define ANIM_SERIOUS (ANIM_HASTY + 2) +#define ANIM_JOLLY (ANIM_SERIOUS + 1) +#define ANIM_NAIVE (ANIM_JOLLY + 1) +#define ANIM_MODEST (ANIM_NAIVE + 4) +#define ANIM_MILD (ANIM_MODEST + 3) +#define ANIM_QUIET (ANIM_MILD + 1) +#define ANIM_BASHFUL (ANIM_QUIET + 2) +#define ANIM_RASH (ANIM_BASHFUL + 3) +#define ANIM_CALM (ANIM_RASH + 3) +#define ANIM_GENTLE (ANIM_CALM + 1) +#define ANIM_SASSY (ANIM_GENTLE + 1) +#define ANIM_CAREFUL (ANIM_SASSY + 1) +#define ANIM_QUIRKY (ANIM_CAREFUL + 5) + +struct PokeblockFeed { struct Sprite *monSpritePtr; struct Sprite savedMonSprite; - u8 tilemapBuffer[0x808]; - s16 field_850[0x200]; - s16 field_C50[0x200]; - u8 field_1050; + u8 tilemapBuffer[BG_SCREEN_SIZE]; + u8 unused1[8]; + s16 monAnimX[0x200]; + s16 monAnimY[0x200]; + u8 animRunState; u8 animId; - u8 field_1052; + u8 unused2; bool8 noMonFlip; u16 species; - u16 field_1056; - u16 field_1058; + u16 monAnimLength; + u16 timer; u8 nature; - u8 monSpriteId_; - u8 field_105C; + u8 monSpriteId_; // Duplicated unnecessarily + u8 unused3; u8 monSpriteId; u8 pokeblockCaseSpriteId; u8 pokeblockSpriteId; - s16 field_1060[15]; + s16 animData[NUM_ANIMDATA]; + s16 monInitX; + s16 monInitY; + s16 maxAnimStageTime; + s16 monX; + s16 monY; s16 loadGfxState; - u8 unused; + u8 unused4; }; extern struct MusicPlayerInfo gMPlayInfo_BGM; extern const u16 gUnknown_0860F074[]; -// this file's functions static void HandleInitBackgrounds(void); static void HandleInitWindows(void); static void LaunchPokeblockFeedTask(void); static void SetPokeblockSpritePal(u8 pokeblockCaseId); -static void sub_817A5CC(void); +static void CalculateMonAnimLength(void); static void DoPokeblockCaseThrowEffect(u8 spriteId, bool8 arg1); -static void PrepareMonToMoveToPokeblock(u8 spriteId); -static void Task_HandleMonAtePokeblock(u8 taskId); -static void Task_PaletteFadeToReturn(u8 taskId); -static void sub_817A634(void); -static void sub_817A468(struct Sprite *sprite); -static void sub_817AB68(void); -static void sub_817AA54(void); -static bool8 sub_817A91C(void); +static void StartMonJumpForPokeblock(u8 spriteId); +static void Task_PrintAtePokeblockMessage(u8 taskId); +static void Task_FadeOutPokeblockFeed(u8 taskId); +static void UpdateMonAnim(void); +static void SpriteCB_MonJumpForPokeblock(struct Sprite *sprite); +static void CalculateMonAnimMovement(void); +static void CalculateMonAnimMovementEnd(void); +static bool8 InitMonAnimStage(void); static bool8 FreeMonSpriteOamMatrix(void); -static bool8 sub_817A9E4(void); +static bool8 DoMonAnimStep(void); static bool8 LoadMonAndSceneGfx(struct Pokemon *mon); static u8 CreatePokeblockSprite(void); static u8 CreatePokeblockCaseSpriteForFeeding(void); static u8 CreateMonSprite(struct Pokemon *mon); static void SpriteCB_ThrownPokeblock(struct Sprite* sprite); -// ram variables -EWRAM_DATA static struct PokeblockFeedStruct *sPokeblockFeed = NULL; +EWRAM_DATA static struct PokeblockFeed *sPokeblockFeed = NULL; EWRAM_DATA static struct CompressedSpritePalette sPokeblockSpritePal = {0}; -// const rom data static const u8 sNatureToMonPokeblockAnim[NUM_NATURES][2] = { - [NATURE_HARDY] = { 0, 0 }, - [NATURE_LONELY] = { 3, 0 }, - [NATURE_BRAVE] = { 4, 1 }, - [NATURE_ADAMANT] = { 5, 0 }, - [NATURE_NAUGHTY] = { 10, 0 }, - [NATURE_BOLD] = { 13, 0 }, - [NATURE_DOCILE] = { 15, 0 }, - [NATURE_RELAXED] = { 16, 2 }, - [NATURE_IMPISH] = { 18, 0 }, - [NATURE_LAX] = { 19, 0 }, - [NATURE_TIMID] = { 20, 0 }, - [NATURE_HASTY] = { 25, 0 }, - [NATURE_SERIOUS] = { 27, 3 }, - [NATURE_JOLLY] = { 28, 0 }, - [NATURE_NAIVE] = { 29, 0 }, - [NATURE_MODEST] = { 33, 4 }, - [NATURE_MILD] = { 36, 0 }, - [NATURE_QUIET] = { 37, 0 }, - [NATURE_BASHFUL] = { 39, 0 }, - [NATURE_RASH] = { 42, 0 }, - [NATURE_CALM] = { 45, 0 }, - [NATURE_GENTLE] = { 46, 5 }, - [NATURE_SASSY] = { 47, 6 }, - [NATURE_CAREFUL] = { 48, 0 }, - [NATURE_QUIRKY] = { 53, 0 }, + [NATURE_HARDY] = { ANIM_HARDY, AFFINE_NONE }, + [NATURE_LONELY] = { ANIM_LONELY, AFFINE_NONE }, + [NATURE_BRAVE] = { ANIM_BRAVE, AFFINE_TURN_UP }, + [NATURE_ADAMANT] = { ANIM_ADAMANT, AFFINE_NONE }, + [NATURE_NAUGHTY] = { ANIM_NAUGHTY, AFFINE_NONE }, + [NATURE_BOLD] = { ANIM_BOLD, AFFINE_NONE }, + [NATURE_DOCILE] = { ANIM_DOCILE, AFFINE_NONE }, + [NATURE_RELAXED] = { ANIM_RELAXED, AFFINE_TURN_UP_AND_DOWN }, + [NATURE_IMPISH] = { ANIM_IMPISH, AFFINE_NONE }, + [NATURE_LAX] = { ANIM_LAX, AFFINE_NONE }, + [NATURE_TIMID] = { ANIM_TIMID, AFFINE_NONE }, + [NATURE_HASTY] = { ANIM_HASTY, AFFINE_NONE }, + [NATURE_SERIOUS] = { ANIM_SERIOUS, AFFINE_TURN_DOWN }, + [NATURE_JOLLY] = { ANIM_JOLLY, AFFINE_NONE }, + [NATURE_NAIVE] = { ANIM_NAIVE, AFFINE_NONE }, + [NATURE_MODEST] = { ANIM_MODEST, AFFINE_TURN_DOWN_SLOW }, + [NATURE_MILD] = { ANIM_MILD, AFFINE_NONE }, + [NATURE_QUIET] = { ANIM_QUIET, AFFINE_NONE }, + [NATURE_BASHFUL] = { ANIM_BASHFUL, AFFINE_NONE }, + [NATURE_RASH] = { ANIM_RASH, AFFINE_NONE }, + [NATURE_CALM] = { ANIM_CALM, AFFINE_NONE }, + [NATURE_GENTLE] = { ANIM_GENTLE, AFFINE_TURN_DOWN_SLIGHT }, + [NATURE_SASSY] = { ANIM_SASSY, AFFINE_TURN_UP_HIGH }, + [NATURE_CAREFUL] = { ANIM_CAREFUL, AFFINE_NONE }, + [NATURE_QUIRKY] = { ANIM_QUIRKY, AFFINE_NONE }, }; -static const s16 sMonPokeblockAnims[][10] = +// Data for the animation the PokĂ©mon does while readying to jump for the PokĂ©block +// Each nature can have up to 8 anim 'stages' it progresses through, and each stage has its own array of data. +// The elements in each array correspond in order to the following: +// - ANIMDATA_ROT_IDX : Index into sin/cos table for circular movement +// - ANIMDATA_ROT_SPEED : Circular movement speed +// - ANIMDATA_SIN_AMPLITUDE: How far on the x to move +// - ANIMDATA_COS_AMPLITUDE: How far on the y to move +// - ANIMDATA_TIME : How long in frames this part of the animation takes +// - ANIMDATA_ROT_ACCEL : How much to increase circular movement speed +// - ANIMDATA_TARGET_X : Target x coord offset from start position +// - ANIMDATA_TARGET_Y : Target y coord offset from start position +// - ANIMDATA_APPR_TIME : The time over which the target position should be approached +// - ANIMDATA_IS_LAST : TRUE if it's the last anim stage for this nature, FALSE otherwise +// +static const s16 sMonPokeblockAnims[][NUM_ANIMDATA] = { - // HARDY - { 0, 4, 0, 8, 24, 0, 0, 0, 12, 0}, - { 0, 4, 0, 16, 24, 0, 0, 0, 12, 0}, - { 0, 4, 0, 32, 32, 0, 0, 0, 16, 1}, - - // LONELY - { 0, 3, 6, 0, 48, 0, 0, 0, 24, 1}, - - // BRAVE - { 64, 16, -24, 0, 32, 0, 0, 0, 0, 1}, - - // ADAMANT - { 0, 4, 8, 0, 16, 0, -8, 0, 0, 0}, - { 0, 0, 0, 0, 16, 0, 0, 0, 0, 0}, - { 0, 4, 8, 0, 16, 0, -8, 0, 0, 0}, - { 0, 0, 0, 0, 16, 0, 0, 0, 0, 0}, - { 0, 4, -16, 0, 4, 0, 16, 0, 0, 1}, - - // NAUGHTY - { 0, 3, 6, 0, 12, 0, 0, 0, 6, 0}, - { 0, 3, -6, 0, 12, 0, 0, 0, 6, 0}, - { 0, 16, 16, 0, 45, 1, 0, 0, 0, 1}, - - // BOLD - { 0, 16, 0, 24, 32, 0, 0, 0, 16, 0}, - { 0, 16, 0, 23, 32, 0, 0, 0, 16, 1}, - - // DOCILE - { 0, 0, 0, 0, 80, 0, 0, 0, 0, 1}, - - // RELAXED - { 0, 2, 8, 0, 32, 0, 0, 0, 0, 0}, - { 0, 2, -8, 0, 32, 0, 0, 0, 0, 1}, - - // IMPISH - { 0, 32, 2, 1, 48, 1, 0, 0, 24, 1}, - - // LAX - { 0, 2, 16, 16, 128, 0, 0, 0, 0, 1}, - - // TIMID - { 0, 2, -8, 0, 48, 0, -24, 0, 0, 0}, - { 0, 0, 0, 0, 8, 0, 0, 0, 0, 0}, - { 64, 32, 2, 0, 36, 0, 0, 0, 0, 0}, - { 0, 0, 0, 0, 8, 0, 0, 0, 0, 0}, - { 0, 2, 8, 0, 48, 0, 24, 0, 0, 1}, - - // HASTY - { 64, 24, 16, 0, 32, 0, 0, 0, 0, 0}, - { 0, 28, 2, 1, 32, 1, 0, 0, 16, 1}, - - // SERIOUS - { 0, 0, 0, 0, 32, 0, 0, 0, 0, 1}, - - // JOLLY - { 64, 16, -16, 2, 48, 0, 0, 0, 32, 1}, - - // NAIVE - { 0, 12, -8, 4, 24, 0, 8, 0, 12, 0}, - { 0, 12, 8, 8, 24, 0, -16, 0, 12, 0}, - { 0, 12, -8, 16, 24, 0, 16, 0, 12, 0}, - { 0, 12, 8, 28, 24, 0, -8, 0, 12, 1}, - - // MODEST - { 0, 0, 0, 0, 8, 0, 0, 0, 0, 0}, - { 64, 16, -4, 0, 32, 0, 0, 0, 0, 0}, - { 0, 0, 0, 0, 8, 0, 0, 0, 0, 1}, - - // MILD - { 128, 4, 0, 8, 64, 0, 0, 0, 0, 1}, - - // QUIET - { 0, 2, 16, 0, 48, 0, 0, 0, 0, 0}, - { 128, 2, 16, 0, 48, 0, 0, 0, 0, 1}, - - // BASHFUL - { 0, 2, -4, 0, 48, 0, -48, 0, 0, 0}, - { 0, 0, 0, 0, 80, 0, 0, 0, 0, 0}, - { 0, 2, 8, 0, 24, 0, 48, 0, 0, 1}, - - // RASH - { 64, 4, 64, 58, 52, 0, -88, 0, 0, 0}, - { 0, 0, 0, 0, 80, 0, 0, 0, 0, 0}, - { 0, 24, 80, 0, 32, 0, 88, 0, 0, 1}, - - // CALM - { 0, 2, 16, 4, 64, 0, 0, 0, 0, 1}, - - // GENTLE - { 0, 0, 0, 0, 32, 0, 0, 0, 0, 1}, - - // SASSY - { 0, 0, 0, 0, 42, 0, 0, 0, 0, 1}, - - // CAREFUL - { 0, 4, 0, 8, 24, 0, 0, 0, 12, 0}, - { 0, 0, 0, 0, 12, 0, 0, 0, 0, 0}, - { 0, 4, 0, 12, 24, 0, 0, 0, 12, 0}, - { 0, 0, 0, 0, 12, 0, 0, 0, 0, 0}, - { 0, 4, 0, 4, 24, 0, 0, 0, 12, 1}, - - // QUIRKY - { 0, 4, 16, 12, 64, 0, 0, 0, 0, 0}, - { 0, -4, 16, 12, 64, 0, 0, 0, 0, 1}, + [ANIM_HARDY] = + { 0, 4, 0, 8, 24, 0, 0, 0, 12, FALSE}, + { 0, 4, 0, 16, 24, 0, 0, 0, 12, FALSE}, + { 0, 4, 0, 32, 32, 0, 0, 0, 16, TRUE}, + + [ANIM_LONELY] = + { 0, 3, 6, 0, 48, 0, 0, 0, 24, TRUE}, + + [ANIM_BRAVE] = + { 64, 16, -24, 0, 32, 0, 0, 0, 0, TRUE}, + + [ANIM_ADAMANT] = + { 0, 4, 8, 0, 16, 0, -8, 0, 0, FALSE}, + { 0, 0, 0, 0, 16, 0, 0, 0, 0, FALSE}, + { 0, 4, 8, 0, 16, 0, -8, 0, 0, FALSE}, + { 0, 0, 0, 0, 16, 0, 0, 0, 0, FALSE}, + { 0, 4, -16, 0, 4, 0, 16, 0, 0, TRUE}, + + [ANIM_NAUGHTY] = + { 0, 3, 6, 0, 12, 0, 0, 0, 6, FALSE}, + { 0, 3, -6, 0, 12, 0, 0, 0, 6, FALSE}, + { 0, 16, 16, 0, 45, 1, 0, 0, 0, TRUE}, + + [ANIM_BOLD] = + { 0, 16, 0, 24, 32, 0, 0, 0, 16, FALSE}, + { 0, 16, 0, 23, 32, 0, 0, 0, 16, TRUE}, + + [ANIM_DOCILE] = + { 0, 0, 0, 0, 80, 0, 0, 0, 0, TRUE}, + + [ANIM_RELAXED] = + { 0, 2, 8, 0, 32, 0, 0, 0, 0, FALSE}, + { 0, 2, -8, 0, 32, 0, 0, 0, 0, TRUE}, + + [ANIM_IMPISH] = + { 0, 32, 2, 1, 48, 1, 0, 0, 24, TRUE}, + + [ANIM_LAX] = + { 0, 2, 16, 16, 128, 0, 0, 0, 0, TRUE}, + + [ANIM_TIMID] = + { 0, 2, -8, 0, 48, 0, -24, 0, 0, FALSE}, + { 0, 0, 0, 0, 8, 0, 0, 0, 0, FALSE}, + { 64, 32, 2, 0, 36, 0, 0, 0, 0, FALSE}, + { 0, 0, 0, 0, 8, 0, 0, 0, 0, FALSE}, + { 0, 2, 8, 0, 48, 0, 24, 0, 0, TRUE}, + + [ANIM_HASTY] = + { 64, 24, 16, 0, 32, 0, 0, 0, 0, FALSE}, + { 0, 28, 2, 1, 32, 1, 0, 0, 16, TRUE}, + + [ANIM_SERIOUS] = + { 0, 0, 0, 0, 32, 0, 0, 0, 0, TRUE}, + + [ANIM_JOLLY] = + { 64, 16, -16, 2, 48, 0, 0, 0, 32, TRUE}, + + [ANIM_NAIVE] = + { 0, 12, -8, 4, 24, 0, 8, 0, 12, FALSE}, + { 0, 12, 8, 8, 24, 0, -16, 0, 12, FALSE}, + { 0, 12, -8, 16, 24, 0, 16, 0, 12, FALSE}, + { 0, 12, 8, 28, 24, 0, -8, 0, 12, TRUE}, + + [ANIM_MODEST] = + { 0, 0, 0, 0, 8, 0, 0, 0, 0, FALSE}, + { 64, 16, -4, 0, 32, 0, 0, 0, 0, FALSE}, + { 0, 0, 0, 0, 8, 0, 0, 0, 0, TRUE}, + + [ANIM_MILD] = + { 128, 4, 0, 8, 64, 0, 0, 0, 0, TRUE}, + + [ANIM_QUIET] = + { 0, 2, 16, 0, 48, 0, 0, 0, 0, FALSE}, + { 128, 2, 16, 0, 48, 0, 0, 0, 0, TRUE}, + + [ANIM_BASHFUL] = + { 0, 2, -4, 0, 48, 0, -48, 0, 0, FALSE}, + { 0, 0, 0, 0, 80, 0, 0, 0, 0, FALSE}, + { 0, 2, 8, 0, 24, 0, 48, 0, 0, TRUE}, + + [ANIM_RASH] = + { 64, 4, 64, 58, 52, 0, -88, 0, 0, FALSE}, + { 0, 0, 0, 0, 80, 0, 0, 0, 0, FALSE}, + { 0, 24, 80, 0, 32, 0, 88, 0, 0, TRUE}, + + [ANIM_CALM] = + { 0, 2, 16, 4, 64, 0, 0, 0, 0, TRUE}, + + [ANIM_GENTLE] = + { 0, 0, 0, 0, 32, 0, 0, 0, 0, TRUE}, + + [ANIM_SASSY] = + { 0, 0, 0, 0, 42, 0, 0, 0, 0, TRUE}, + + [ANIM_CAREFUL] = + { 0, 4, 0, 8, 24, 0, 0, 0, 12, FALSE}, + { 0, 0, 0, 0, 12, 0, 0, 0, 0, FALSE}, + { 0, 4, 0, 12, 24, 0, 0, 0, 12, FALSE}, + { 0, 0, 0, 0, 12, 0, 0, 0, 0, FALSE}, + { 0, 4, 0, 4, 24, 0, 0, 0, 12, TRUE}, + + [ANIM_QUIRKY] = + { 0, 4, 16, 12, 64, 0, 0, 0, 0, FALSE}, + { 0, -4, 16, 12, 64, 0, 0, 0, 0, TRUE}, }; -static const union AffineAnimCmd sSpriteAffineAnim_8411E90[] = +static const union AffineAnimCmd sAffineAnim_Mon_None[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411EA0[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUp[] = { AFFINEANIMCMD_FRAME(0, 0, 12, 1), AFFINEANIMCMD_FRAME(0, 0, 0, 30), @@ -234,7 +310,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411EA0[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411EC0[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUp_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0, 0, 12, 1), @@ -243,7 +319,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411EC0[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411EE8[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUpAndDown[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 16), AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 32), @@ -251,7 +327,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411EE8[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411F08[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUpAndDown_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 16), @@ -260,7 +336,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411F08[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411F30[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDown[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 8), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 16), @@ -268,7 +344,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411F30[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411F50[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDown_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 8), @@ -277,7 +353,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411F50[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411F78[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDownSlow[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 8), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 32), @@ -285,7 +361,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411F78[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411F98[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDownSlow_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 8), @@ -294,7 +370,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411F98[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411FC0[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDownSlight[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 4), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 24), @@ -302,7 +378,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411FC0[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8411FE0[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnDownSlight_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 4), @@ -311,7 +387,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8411FE0[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8412008[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUpHigh[] = { AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 24), AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 16), @@ -319,7 +395,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_8412008[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8412028[] = +static const union AffineAnimCmd sAffineAnim_Mon_TurnUpHigh_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 24), @@ -328,29 +404,33 @@ static const union AffineAnimCmd sSpriteAffineAnim_8412028[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85F04FC[] = +static const union AffineAnimCmd *const sAffineAnims_Mon[] = { - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411EA0, - sSpriteAffineAnim_8411EE8, - sSpriteAffineAnim_8411F30, - sSpriteAffineAnim_8411F78, - sSpriteAffineAnim_8411FC0, - sSpriteAffineAnim_8412008, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411EC0, - sSpriteAffineAnim_8411F08, - sSpriteAffineAnim_8411F50, - sSpriteAffineAnim_8411F98, - sSpriteAffineAnim_8411FE0, - sSpriteAffineAnim_8412028, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, - sSpriteAffineAnim_8411E90, + // Animations for non-flipped mon sprites + [AFFINE_NONE] = sAffineAnim_Mon_None, + [AFFINE_TURN_UP] = sAffineAnim_Mon_TurnUp, + [AFFINE_TURN_UP_AND_DOWN] = sAffineAnim_Mon_TurnUpAndDown, + [AFFINE_TURN_DOWN] = sAffineAnim_Mon_TurnDown, + [AFFINE_TURN_DOWN_SLOW] = sAffineAnim_Mon_TurnDownSlow, + [AFFINE_TURN_DOWN_SLIGHT] = sAffineAnim_Mon_TurnDownSlight, + [AFFINE_TURN_UP_HIGH] = sAffineAnim_Mon_TurnUpHigh, + [AFFINE_UNUSED_1] = sAffineAnim_Mon_None, + [AFFINE_UNUSED_2] = sAffineAnim_Mon_None, + [AFFINE_UNUSED_3] = sAffineAnim_Mon_None, + + // Animations for flipped mon sprites + [AFFINE_NONE + NUM_MON_AFFINES] = sAffineAnim_Mon_None, + [AFFINE_TURN_UP + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnUp_Flipped, + [AFFINE_TURN_UP_AND_DOWN + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnUpAndDown_Flipped, + [AFFINE_TURN_DOWN + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnDown_Flipped, + [AFFINE_TURN_DOWN_SLOW + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnDownSlow_Flipped, + [AFFINE_TURN_DOWN_SLIGHT + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnDownSlight_Flipped, + [AFFINE_TURN_UP_HIGH + NUM_MON_AFFINES] = sAffineAnim_Mon_TurnUpHigh_Flipped, + [AFFINE_UNUSED_1 + NUM_MON_AFFINES] = sAffineAnim_Mon_None, + [AFFINE_UNUSED_2 + NUM_MON_AFFINES] = sAffineAnim_Mon_None, + [AFFINE_UNUSED_3 + NUM_MON_AFFINES] = sAffineAnim_Mon_None, + + sAffineAnim_Mon_None, // ? Extra for some reason }; static const struct BgTemplate sBackgroundTemplates[] = @@ -377,7 +457,15 @@ static const struct BgTemplate sBackgroundTemplates[] = static const struct WindowTemplate sWindowTemplates[] = { - {0, 1, 0xF, 0x1C, 4, 0xF, 0xA}, + { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 15, + .baseBlock = 0xA + }, DUMMY_WIN_TEMPLATE }; @@ -400,7 +488,7 @@ static const u32* const sPokeblocksPals[] = [PBLOCK_CLR_GOLD - 1] = gPokeblockGold_Pal }; -static const union AffineAnimCmd sSpriteAffineAnim_84120DC[] = +static const union AffineAnimCmd sAffineAnim_Still[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_END @@ -408,10 +496,10 @@ static const union AffineAnimCmd sSpriteAffineAnim_84120DC[] = static const union AffineAnimCmd *const sSpriteAffineAnimTable_MonNoFlip[] = { - sSpriteAffineAnim_84120DC + sAffineAnim_Still }; -static const union AffineAnimCmd sSpriteAffineAnim_84120F0[] = +static const union AffineAnimCmd sAffineAnim_PokeblockCase_ThrowFromVertical[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 1), @@ -426,7 +514,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_84120F0[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_8412148[] = +static const union AffineAnimCmd sAffineAnim_PokeblockCase_ThrowFromHorizontal[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 1), @@ -441,22 +529,22 @@ static const union AffineAnimCmd sSpriteAffineAnim_8412148[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85F0664[] = +static const union AffineAnimCmd *const sAffineAnims_PokeblockCase_Still[] = { - sSpriteAffineAnim_84120DC + sAffineAnim_Still }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85F0668[] = +static const union AffineAnimCmd *const sAffineAnims_PokeblockCase_ThrowFromVertical[] = { - sSpriteAffineAnim_84120F0 + sAffineAnim_PokeblockCase_ThrowFromVertical }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85F066C[] = +static const union AffineAnimCmd *const sAffineAnims_PokeblockCase_ThrowFromHorizontal[] = { - sSpriteAffineAnim_8412148 + sAffineAnim_PokeblockCase_ThrowFromHorizontal }; -static const struct OamData sThrownPokeblockOamData = +static const struct OamData sOamData_Pokeblock = { .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, @@ -473,46 +561,45 @@ static const struct OamData sThrownPokeblockOamData = .affineParam = 0, }; -static const union AnimCmd sThrownPokeblockSpriteAnim[] = +static const union AnimCmd sAnim_Pokeblock[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AnimCmd *const sThrownPokeblockAnimTable[] = +static const union AnimCmd *const sAnims_Pokeblock[] = { - sThrownPokeblockSpriteAnim, + sAnim_Pokeblock, }; -static const union AffineAnimCmd sSpriteAffineAnim_84121C0[] = +static const union AffineAnimCmd sAffineAnim_Pokeblock[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(-8, -8, 0, 1), AFFINEANIMCMD_JUMP(1) }; -static const union AffineAnimCmd *const sThrownPokeblockAffineAnimTable[] = +static const union AffineAnimCmd *const sAffineAnims_Pokeblock[] = { - sSpriteAffineAnim_84121C0 + sAffineAnim_Pokeblock }; -static const struct CompressedSpriteSheet sPokeblock_SpriteSheet = +static const struct CompressedSpriteSheet sSpriteSheet_Pokeblock = { gPokeblock_Gfx, 0x20, TAG_POKEBLOCK }; -static const struct SpriteTemplate sThrownPokeblockSpriteTemplate = +static const struct SpriteTemplate sSpriteTemplate_Pokeblock = { .tileTag = TAG_POKEBLOCK, .paletteTag = TAG_POKEBLOCK, - .oam = &sThrownPokeblockOamData, - .anims = sThrownPokeblockAnimTable, + .oam = &sOamData_Pokeblock, + .anims = sAnims_Pokeblock, .images = NULL, - .affineAnims = sThrownPokeblockAffineAnimTable, + .affineAnims = sAffineAnims_Pokeblock, .callback = SpriteCB_ThrownPokeblock }; -// code static void CB2_PokeblockFeed(void) { RunTasks(); @@ -529,7 +616,7 @@ static void VBlankCB_PokeblockFeed(void) TransferPlttBuffer(); } -static bool8 TransitionToPokeblockFeedScene(void) +static bool8 LoadPokeblockFeedScene(void) { switch (gMain.state) { @@ -541,7 +628,7 @@ static bool8 TransitionToPokeblockFeedScene(void) break; case 1: ResetPaletteFade(); - gPaletteFade.bufferTransferDisabled = 1; + gPaletteFade.bufferTransferDisabled = TRUE; gMain.state++; break; case 2: @@ -566,9 +653,7 @@ static bool8 TransitionToPokeblockFeedScene(void) break; case 7: if (LoadMonAndSceneGfx(&gPlayerParty[gPokeblockMonId])) - { gMain.state++; - } break; case 8: sPokeblockFeed->pokeblockCaseSpriteId = CreatePokeblockCaseSpriteForFeeding(); @@ -587,12 +672,12 @@ static bool8 TransitionToPokeblockFeedScene(void) gMain.state++; break; case 12: - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 16, 0); gMain.state++; break; case 13: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); - gPaletteFade.bufferTransferDisabled = 0; + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + gPaletteFade.bufferTransferDisabled = FALSE; gMain.state++; break; default: @@ -603,13 +688,13 @@ static bool8 TransitionToPokeblockFeedScene(void) return FALSE; } -void CB2_PreparePokeblockFeedScene(void) +void PreparePokeblockFeedScene(void) { while (1) { if (MenuHelpers_CallLinkSomething() == TRUE) break; - if (TransitionToPokeblockFeedScene() == TRUE) + if (LoadPokeblockFeedScene() == TRUE) break; if (MenuHelpers_LinkSomething() == TRUE) break; @@ -643,12 +728,14 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) switch (sPokeblockFeed->loadGfxState) { case 0: + // Load mon gfx species = GetMonData(mon, MON_DATA_SPECIES2); personality = GetMonData(mon, MON_DATA_PERSONALITY); HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[1], species, personality); sPokeblockFeed->loadGfxState++; break; case 1: + // Load mon palette species = GetMonData(mon, MON_DATA_SPECIES2); personality = GetMonData(mon, MON_DATA_PERSONALITY); trainerId = GetMonData(mon, MON_DATA_OT_ID); @@ -667,7 +754,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) sPokeblockFeed->loadGfxState++; break; case 4: - LoadCompressedSpriteSheet(&sPokeblock_SpriteSheet); + LoadCompressedSpriteSheet(&sSpriteSheet_Pokeblock); sPokeblockFeed->loadGfxState++; break; case 5: @@ -683,7 +770,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) case 7: if (FreeTempTileDataBuffersIfPossible() != TRUE) { - LZDecompressWram(gUnknown_08D9BA44, sPokeblockFeed->tilemapBuffer); + LZDecompressWram(gPokeblockFeedBg_Tilemap, sPokeblockFeed->tilemapBuffer); sPokeblockFeed->loadGfxState++; } break; @@ -716,58 +803,63 @@ static void SetPokeblockSpritePal(u8 pokeblockCaseId) // defines for task data fields -#define tFrames data[0] -#define tData1 data[1] +#define tState data[0] +#define tHorizontalThrow data[1] + +#define STATE_START_THROW 255 // If the length of the PokĂ©mon's animation exceeds 255 the throw may happen twice +#define STATE_SPAWN_PBLOCK (STATE_START_THROW + 14) +#define STATE_START_JUMP (STATE_SPAWN_PBLOCK + 12) +#define STATE_PRINT_MSG (STATE_START_JUMP + 16) static void Task_HandlePokeblockFeed(u8 taskId) { if (!gPaletteFade.active) { - switch (gTasks[taskId].tFrames) + switch (gTasks[taskId].tState) { case 0: - sPokeblockFeed->field_1050 = 0; - sPokeblockFeed->field_1058 = 0; - sub_817A5CC(); + sPokeblockFeed->animRunState = 0; + sPokeblockFeed->timer = 0; + CalculateMonAnimLength(); break; - case 255: - DoPokeblockCaseThrowEffect(sPokeblockFeed->pokeblockCaseSpriteId, gTasks[taskId].tData1); + case STATE_START_THROW: + DoPokeblockCaseThrowEffect(sPokeblockFeed->pokeblockCaseSpriteId, gTasks[taskId].tHorizontalThrow); break; - case 269: + case STATE_SPAWN_PBLOCK: sPokeblockFeed->pokeblockSpriteId = CreatePokeblockSprite(); break; - case 281: - PrepareMonToMoveToPokeblock(sPokeblockFeed->monSpriteId); + case STATE_START_JUMP: + StartMonJumpForPokeblock(sPokeblockFeed->monSpriteId); break; - case 297: - gTasks[taskId].func = Task_HandleMonAtePokeblock; + case STATE_PRINT_MSG: + gTasks[taskId].func = Task_PrintAtePokeblockMessage; return; } - if (sPokeblockFeed->field_1058 < sPokeblockFeed->field_1056) - sub_817A634(); - else if (sPokeblockFeed->field_1058 == sPokeblockFeed->field_1056) - gTasks[taskId].tFrames = 254; + if (sPokeblockFeed->timer < sPokeblockFeed->monAnimLength) + UpdateMonAnim(); + else if (sPokeblockFeed->timer == sPokeblockFeed->monAnimLength) + gTasks[taskId].tState = STATE_START_THROW - 1; - sPokeblockFeed->field_1058++; - gTasks[taskId].tFrames++; + sPokeblockFeed->timer++; + gTasks[taskId].tState++; } } static void LaunchPokeblockFeedTask(void) { u8 taskId = CreateTask(Task_HandlePokeblockFeed, 0); - gTasks[taskId].tFrames = 0; - gTasks[taskId].tData1 = 1; + gTasks[taskId].tState = 0; + gTasks[taskId].tHorizontalThrow = TRUE; } -static void Task_WaitForAtePokeblockText(u8 taskId) +static void Task_WaitForAtePokeblockMessage(u8 taskId) { if (RunTextPrintersRetIsActive(0) != TRUE) - gTasks[taskId].func = Task_PaletteFadeToReturn; + gTasks[taskId].func = Task_FadeOutPokeblockFeed; } -static void Task_HandleMonAtePokeblock(u8 taskId) +static void Task_PrintAtePokeblockMessage(u8 taskId) { struct Pokemon *mon = &gPlayerParty[gPokeblockMonId]; struct Pokeblock *pokeblock = &gSaveBlock1Ptr->pokeblocks[gSpecialVar_ItemId]; @@ -783,12 +875,12 @@ static void Task_HandleMonAtePokeblock(u8 taskId) else StringExpandPlaceholders(gStringVar4, gText_Var1DisdainfullyAteVar2); - gTextFlags.canABSpeedUpPrint = 1; + gTextFlags.canABSpeedUpPrint = TRUE; AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); - gTasks[taskId].func = Task_WaitForAtePokeblockText; + gTasks[taskId].func = Task_WaitForAtePokeblockMessage; } -static void Task_ReturnAfterPaletteFade(u8 taskId) +static void Task_ExitPokeblockFeed(u8 taskId) { if (!gPaletteFade.active) { @@ -803,30 +895,29 @@ static void Task_ReturnAfterPaletteFade(u8 taskId) } } -static void Task_PaletteFadeToReturn(u8 taskId) +static void Task_FadeOutPokeblockFeed(u8 taskId) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gTasks[taskId].func = Task_ReturnAfterPaletteFade; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + gTasks[taskId].func = Task_ExitPokeblockFeed; } -#undef tFrames -#undef tData1 - -// defines for mon sprite data fields +#undef tState +#undef tHorizontalThrow -#define tDelta data[0] -#define tDeltaMod data[1] -#define tSpecies data[2] +// Sprite data for PokĂ©block and PokĂ©mon +#define sSpeed data[0] +#define sAccel data[1] +#define sSpecies data[2] static u8 CreateMonSprite(struct Pokemon* mon) { u16 species = GetMonData(mon, MON_DATA_SPECIES2); - u8 spriteId = CreateSprite(&gMultiuseSpriteTemplate, 48, 80, 2); + u8 spriteId = CreateSprite(&gMultiuseSpriteTemplate, MON_X, MON_Y, 2); sPokeblockFeed->species = species; sPokeblockFeed->monSpriteId_ = spriteId; sPokeblockFeed->nature = GetNature(mon); - gSprites[spriteId].tSpecies = species; + gSprites[spriteId].sSpecies = species; gSprites[spriteId].callback = SpriteCallbackDummy; sPokeblockFeed->noMonFlip = TRUE; @@ -841,189 +932,191 @@ static u8 CreateMonSprite(struct Pokemon* mon) return spriteId; } -static void PrepareMonToMoveToPokeblock(u8 spriteId) +static void StartMonJumpForPokeblock(u8 spriteId) { - gSprites[spriteId].pos1.x = 48; - gSprites[spriteId].pos1.y = 80; - gSprites[spriteId].tDelta = -8; - gSprites[spriteId].tDeltaMod = 1; - gSprites[spriteId].callback = sub_817A468; + gSprites[spriteId].pos1.x = MON_X; + gSprites[spriteId].pos1.y = MON_Y; + gSprites[spriteId].sSpeed = -8; + gSprites[spriteId].sAccel = 1; + gSprites[spriteId].callback = SpriteCB_MonJumpForPokeblock; } -static void sub_817A468(struct Sprite* sprite) +static void SpriteCB_MonJumpForPokeblock(struct Sprite* sprite) { sprite->pos1.x += 4; - sprite->pos1.y += sprite->tDelta; - sprite->tDelta += sprite->tDeltaMod; + sprite->pos1.y += sprite->sSpeed; + sprite->sSpeed += sprite->sAccel; - if (sprite->tDelta == 0) - PlayCry1(sprite->tSpecies, 0); - if (sprite->tDelta == 9) + // Play cry at jump peak + if (sprite->sSpeed == 0) + PlayCry1(sprite->sSpecies, 0); + + if (sprite->sSpeed == 9) sprite->callback = SpriteCallbackDummy; } -#undef tDelta -#undef tDeltaMod -#undef tSpecies - static u8 CreatePokeblockCaseSpriteForFeeding(void) { u8 spriteId = CreatePokeblockCaseSprite(188, 100, 2); gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteId].affineAnims = sSpriteAffineAnimTable_85F0664; + gSprites[spriteId].affineAnims = sAffineAnims_PokeblockCase_Still; gSprites[spriteId].callback = SpriteCallbackDummy; InitSpriteAffineAnim(&gSprites[spriteId]); return spriteId; } -static void DoPokeblockCaseThrowEffect(u8 spriteId, bool8 a1) +static void DoPokeblockCaseThrowEffect(u8 spriteId, bool8 horizontalThrow) { FreeOamMatrix(gSprites[spriteId].oam.matrixNum); gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_DOUBLE; - if (!a1) - gSprites[spriteId].affineAnims = sSpriteAffineAnimTable_85F0668; + if (!horizontalThrow) + gSprites[spriteId].affineAnims = sAffineAnims_PokeblockCase_ThrowFromVertical; // Never used, horizontalThrow always TRUE else - gSprites[spriteId].affineAnims = sSpriteAffineAnimTable_85F066C; + gSprites[spriteId].affineAnims = sAffineAnims_PokeblockCase_ThrowFromHorizontal; InitSpriteAffineAnim(&gSprites[spriteId]); } -// defines for the pokeblock sprite data fields -#define tDelta data[0] -#define tDeltaMod data[1] - static u8 CreatePokeblockSprite(void) { - u8 spriteId = CreateSprite(&sThrownPokeblockSpriteTemplate, 174, 84, 1); - gSprites[spriteId].tDelta = -12; - gSprites[spriteId].tDeltaMod = 1; + u8 spriteId = CreateSprite(&sSpriteTemplate_Pokeblock, 174, 84, 1); + gSprites[spriteId].sSpeed = -12; + gSprites[spriteId].sAccel = 1; return spriteId; } static void SpriteCB_ThrownPokeblock(struct Sprite* sprite) { sprite->pos1.x -= 4; - sprite->pos1.y += sprite->tDelta; - sprite->tDelta += sprite->tDeltaMod; - if (sprite->tDelta == 10) + sprite->pos1.y += sprite->sSpeed; + sprite->sSpeed += sprite->sAccel; + if (sprite->sSpeed == 10) DestroySprite(sprite); } -#undef tDelta -#undef tDeltaMod - -static void sub_817A5CC(void) +static void CalculateMonAnimLength(void) { u8 animId, i; - struct PokeblockFeedStruct *pokeblockFeed; + struct PokeblockFeed *pokeblockFeed; pokeblockFeed = sPokeblockFeed; - pokeblockFeed->field_1056 = 1; + pokeblockFeed->monAnimLength = 1; animId = sNatureToMonPokeblockAnim[pokeblockFeed->nature][0]; + + // Add up the time each stage of the animation will take for (i = 0; i < 8; i++, animId++) { - pokeblockFeed->field_1056 += sMonPokeblockAnims[animId][4]; - if (sMonPokeblockAnims[animId][9] == 1) + pokeblockFeed->monAnimLength += sMonPokeblockAnims[animId][ANIMDATA_TIME]; + if (sMonPokeblockAnims[animId][ANIMDATA_IS_LAST] == TRUE) break; } } -static void sub_817A634(void) +static void UpdateMonAnim(void) { - struct PokeblockFeedStruct *pokeblockFeed = sPokeblockFeed; + struct PokeblockFeed *pokeblockFeed = sPokeblockFeed; - switch (pokeblockFeed->field_1050) + switch (pokeblockFeed->animRunState) { case 0: pokeblockFeed->animId = sNatureToMonPokeblockAnim[pokeblockFeed->nature][0]; pokeblockFeed->monSpritePtr = &gSprites[pokeblockFeed->monSpriteId_]; pokeblockFeed->savedMonSprite = *pokeblockFeed->monSpritePtr; - pokeblockFeed->field_1050 = 10; + pokeblockFeed->animRunState = 10; break; case 1 ... 9: break; case 10: - sub_817A91C(); - if (sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] != 0) + InitMonAnimStage(); + if (sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] != AFFINE_NONE) { + // Initialize affine anim pokeblockFeed->monSpritePtr->oam.affineMode = ST_OAM_AFFINE_DOUBLE; pokeblockFeed->monSpritePtr->oam.matrixNum = 0; - pokeblockFeed->monSpritePtr->affineAnims = sSpriteAffineAnimTable_85F04FC; + pokeblockFeed->monSpritePtr->affineAnims = sAffineAnims_Mon; InitSpriteAffineAnim(pokeblockFeed->monSpritePtr); } - pokeblockFeed->field_1050 = 50; + pokeblockFeed->animRunState = 50; case 50: - if (sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] != 0) + if (sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] != AFFINE_NONE) { + // Start affine anim if (!pokeblockFeed->noMonFlip) // double negation, so mon's sprite is flipped - StartSpriteAffineAnim(pokeblockFeed->monSpritePtr, sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] + 10); + StartSpriteAffineAnim(pokeblockFeed->monSpritePtr, sNatureToMonPokeblockAnim[pokeblockFeed->nature][1] + NUM_MON_AFFINES); else StartSpriteAffineAnim(pokeblockFeed->monSpritePtr, sNatureToMonPokeblockAnim[pokeblockFeed->nature][1]); } - pokeblockFeed->field_1050 = 60; + pokeblockFeed->animRunState = 60; break; case 60: - if (sub_817A9E4() == TRUE) + if (DoMonAnimStep() == TRUE) { - if (pokeblockFeed->field_1060[9] == 0) + if (!pokeblockFeed->animData[ANIMDATA_IS_LAST]) { + // Continue to next stage of animation pokeblockFeed->animId++; - sub_817A91C(); - pokeblockFeed->field_1050 = 60; + InitMonAnimStage(); + pokeblockFeed->animRunState = 60; } else { + // End animation FreeOamMatrix(pokeblockFeed->monSpritePtr->oam.matrixNum); - pokeblockFeed->field_1050 = 70; + pokeblockFeed->animRunState = 70; } } break; case 70: FreeMonSpriteOamMatrix(); pokeblockFeed->animId = 0; - pokeblockFeed->field_1050 = 0; + pokeblockFeed->animRunState = 0; break; case 71 ... 90: break; } } -static bool8 sub_817A91C(void) +static bool8 InitMonAnimStage(void) { - struct PokeblockFeedStruct *pokeblockFeed = sPokeblockFeed; + struct PokeblockFeed *pokeblockFeed = sPokeblockFeed; u8 i; - for (i = 0; i < 10; i++) - pokeblockFeed->field_1060[i] = sMonPokeblockAnims[pokeblockFeed->animId][i]; + for (i = 0; i < NUM_ANIMDATA; i++) + pokeblockFeed->animData[i] = sMonPokeblockAnims[pokeblockFeed->animId][i]; - if (pokeblockFeed->field_1060[4] == 0) + if (pokeblockFeed->animData[ANIMDATA_TIME] == 0) { return TRUE; } else { - pokeblockFeed->field_1060[10] = Sin(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[2]); - pokeblockFeed->field_1060[11] = Cos(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[3]); - pokeblockFeed->field_1060[12] = pokeblockFeed->field_1060[4]; - pokeblockFeed->field_1060[13] = pokeblockFeed->monSpritePtr->pos2.x; - pokeblockFeed->field_1060[14] = pokeblockFeed->monSpritePtr->pos2.y; - sub_817AB68(); - pokeblockFeed->field_1060[4] = pokeblockFeed->field_1060[12]; - sub_817AA54(); - pokeblockFeed->field_1060[4] = pokeblockFeed->field_1060[12]; + pokeblockFeed->monInitX = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE]); + pokeblockFeed->monInitY = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE]); + pokeblockFeed->maxAnimStageTime = pokeblockFeed->animData[ANIMDATA_TIME]; + pokeblockFeed->monX = pokeblockFeed->monSpritePtr->pos2.x; + pokeblockFeed->monY = pokeblockFeed->monSpritePtr->pos2.y; + + // Calculate the positions to move to during the animation + // The time is counted down during this, so reset it afterwards + CalculateMonAnimMovement(); + pokeblockFeed->animData[ANIMDATA_TIME] = pokeblockFeed->maxAnimStageTime; + CalculateMonAnimMovementEnd(); + pokeblockFeed->animData[ANIMDATA_TIME] = pokeblockFeed->maxAnimStageTime; // Redundant return FALSE; } } -static bool8 sub_817A9E4(void) +static bool8 DoMonAnimStep(void) { - u16 var = sPokeblockFeed->field_1060[12] - sPokeblockFeed->field_1060[4]; - - sPokeblockFeed->monSpritePtr->pos2.x = sPokeblockFeed->field_850[var]; - sPokeblockFeed->monSpritePtr->pos2.y = sPokeblockFeed->field_C50[var]; - - if (--sPokeblockFeed->field_1060[4] == 0) + // Update mon's position + u16 time = sPokeblockFeed->maxAnimStageTime - sPokeblockFeed->animData[ANIMDATA_TIME]; + sPokeblockFeed->monSpritePtr->pos2.x = sPokeblockFeed->monAnimX[time]; + sPokeblockFeed->monSpritePtr->pos2.y = sPokeblockFeed->monAnimY[time]; + + // Count down time remaining in this stage + // Return TRUE if this stage is complete + if (--sPokeblockFeed->animData[ANIMDATA_TIME] == 0) return TRUE; else return FALSE; @@ -1035,66 +1128,70 @@ static bool8 FreeMonSpriteOamMatrix(void) return FALSE; } -static void sub_817AA54(void) +static void CalculateMonAnimMovementEnd(void) { - struct PokeblockFeedStruct *pokeblockFeed = sPokeblockFeed; + struct PokeblockFeed *pokeblockFeed = sPokeblockFeed; u16 i; - u16 r8 = pokeblockFeed->field_1060[8]; - u16 r7 = pokeblockFeed->field_1060[12] - r8; - s16 var3 = pokeblockFeed->field_1060[13] + pokeblockFeed->field_1060[6]; - s16 r9 = pokeblockFeed->field_1060[14] + pokeblockFeed->field_1060[7]; + u16 approachTime = pokeblockFeed->animData[ANIMDATA_APPR_TIME]; + u16 time = pokeblockFeed->maxAnimStageTime - approachTime; + s16 x = pokeblockFeed->monX + pokeblockFeed->animData[ANIMDATA_TARGET_X]; + s16 y = pokeblockFeed->monY + pokeblockFeed->animData[ANIMDATA_TARGET_Y]; - for (i = 0; i < r7 - 1; i++) + for (i = 0; i < time - 1; i++) { - s16 r1 = pokeblockFeed->field_850[r8 + i] - (var3); - s16 r4 = pokeblockFeed->field_C50[r8 + i] - r9; + s16 xOffset = pokeblockFeed->monAnimX[approachTime + i] - x; + s16 yOffset = pokeblockFeed->monAnimY[approachTime + i] - y; - pokeblockFeed->field_850[r8 + i] -= r1 * (i + 1) / r7; - pokeblockFeed->field_C50[r8 + i] -= r4 * (i + 1) / r7; + pokeblockFeed->monAnimX[approachTime + i] -= xOffset * (i + 1) / time; + pokeblockFeed->monAnimY[approachTime + i] -= yOffset * (i + 1) / time; } - pokeblockFeed->field_850[(r8 + r7) - 1] = var3; - pokeblockFeed->field_C50[(r8 + r7) - 1] = r9; + pokeblockFeed->monAnimX[approachTime + time - 1] = x; + pokeblockFeed->monAnimY[approachTime + time - 1] = y; } -static void sub_817AB68(void) +static void CalculateMonAnimMovement(void) { - struct PokeblockFeedStruct *pokeblockFeed = sPokeblockFeed; - bool8 var_24 = FALSE; - s16 r8 = pokeblockFeed->field_1060[13] - pokeblockFeed->field_1060[10]; - s16 r7 = pokeblockFeed->field_1060[14] - pokeblockFeed->field_1060[11]; + struct PokeblockFeed *pokeblockFeed = sPokeblockFeed; + bool8 negative = FALSE; + s16 x = pokeblockFeed->monX - pokeblockFeed->monInitX; + s16 y = pokeblockFeed->monY - pokeblockFeed->monInitY; while (1) { - u16 r5; - u16 r4; - u16 var; + u16 amplitude; + u16 time; + u16 acceleration; - var = abs(pokeblockFeed->field_1060[5]); - r5 = var + pokeblockFeed->field_1060[3]; - pokeblockFeed->field_1060[3] = r5; + acceleration = abs(pokeblockFeed->animData[ANIMDATA_ROT_ACCEL]); + amplitude = acceleration + pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE]; + pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE] = amplitude; - if (pokeblockFeed->field_1060[2] < 0) - var_24 = TRUE; + if (pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE] < 0) + negative = TRUE; - r4 = pokeblockFeed->field_1060[12] - pokeblockFeed->field_1060[4]; + time = pokeblockFeed->maxAnimStageTime - pokeblockFeed->animData[ANIMDATA_TIME]; - if (pokeblockFeed->field_1060[4] == 0) + if (pokeblockFeed->animData[ANIMDATA_TIME] == 0) break; - if (!var_24) + if (!negative) { - pokeblockFeed->field_850[r4] = Sin(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[2] + r5 / 0x100) + r8; - pokeblockFeed->field_C50[r4] = Cos(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[3] + r5 / 0x100) + r7; + pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE] + amplitude / 0x100) + x; + pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE] + amplitude / 0x100) + y; } else { - pokeblockFeed->field_850[r4] = Sin(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[2] - r5 / 0x100) + r8; - pokeblockFeed->field_C50[r4] = Cos(pokeblockFeed->field_1060[0], pokeblockFeed->field_1060[3] - r5 / 0x100) + r7; + pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE] - amplitude / 0x100) + x; + pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE] - amplitude / 0x100) + y; } - pokeblockFeed->field_1060[0] += pokeblockFeed->field_1060[1]; - pokeblockFeed->field_1060[0] &= 0xFF; - pokeblockFeed->field_1060[4]--; + pokeblockFeed->animData[ANIMDATA_ROT_IDX] += pokeblockFeed->animData[ANIMDATA_ROT_SPEED]; + pokeblockFeed->animData[ANIMDATA_ROT_IDX] &= 0xFF; + pokeblockFeed->animData[ANIMDATA_TIME]--; } } diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index cfaec6f18766..669b6ab25156 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -708,7 +708,7 @@ static void FeedPokeblockToMon(void) FREE_AND_SET_NULL(sMenu); FreeAllWindowBuffers(); gMain.savedCallback = CB2_ReturnAndChooseMonToGivePokeblock; - CB2_PreparePokeblockFeedScene(); + PreparePokeblockFeedScene(); } break; } From 56057d3c32420b8c348b4054b6ef2ab65fb572a2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 13 Apr 2021 02:45:16 -0400 Subject: [PATCH 111/762] Label more unused battle anims --- src/battle_anim_effects_1.c | 252 +++++++++++++++++++----------------- 1 file changed, 130 insertions(+), 122 deletions(-) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 03dc75dafa12..9901aa5ddd5f 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -16,7 +16,12 @@ #include "constants/rgb.h" #include "constants/songs.h" -EWRAM_DATA s16 gUnknown_0203A0F8[4] = {0}; +struct { + s16 startX; + s16 startY; + s16 targetX; + s16 targetY; +} static EWRAM_DATA sFrenzyPlantRootData = {0}; // Debug? Written to but never read. static void AnimMovePowderParticle(struct Sprite *); static void AnimMovePowderParticle_Step(struct Sprite *); @@ -65,14 +70,14 @@ static void AnimFlyingParticle(struct Sprite *); static void AnimFlyingParticle_Step(struct Sprite *); static void AnimNeedleArmSpike(struct Sprite *); static void AnimNeedleArmSpike_Step(struct Sprite *); -static void sub_81009F8(struct Sprite *); +static void AnimSlidingHit(struct Sprite *); static void AnimWhipHit(struct Sprite *); -static void sub_8100A94(struct Sprite *); +static void AnimFlickeringPunch(struct Sprite *); static void AnimCuttingSlice(struct Sprite *); static void AnimAirCutterSlice(struct Sprite *); static void AnimSlice_Step(struct Sprite *); -static void sub_8100E1C(struct Sprite *); -static void sub_8100E80(struct Sprite *); +static void AnimCirclingMusicNote(struct Sprite *); +static void AnimCirclingMusicNote_Step(struct Sprite *); static void AnimProtect(struct Sprite *); static void AnimProtect_Step(struct Sprite *); static void AnimMilkBottle(struct Sprite *); @@ -80,8 +85,8 @@ static void AnimMilkBottle_Step1(struct Sprite *); static void AnimMilkBottle_Step2(struct Sprite *, int, int); static void AnimGrantingStars(struct Sprite *); static void AnimSparkingStars(struct Sprite *); -static void sub_8101440(struct Sprite *); -static void sub_81014A0(struct Sprite *); +static void AnimBubbleBurst(struct Sprite *); +static void AnimBubbleBurst_Step(struct Sprite *); static void AnimSleepLetterZ(struct Sprite *); static void AnimSleepLetterZ_Step(struct Sprite *); static void AnimLockOnTarget(struct Sprite *); @@ -99,8 +104,8 @@ static void AnimBowMon_Step2(struct Sprite *); static void AnimBowMon_Step3(struct Sprite *); static void AnimBowMon_Step4(struct Sprite *); static void AnimBowMon_Step3_Callback(struct Sprite *); -static void sub_8101B90(struct Sprite *); -static void sub_8101BA0(struct Sprite *); +static void AnimTipMon(struct Sprite *); +static void AnimTipMon_Step(struct Sprite *); static void AnimSlashSlice(struct Sprite *); static void AnimFalseSwipeSlice(struct Sprite *); static void AnimFalseSwipeSlice_Step1(struct Sprite *); @@ -571,7 +576,7 @@ const struct SpriteTemplate gSwiftStarSpriteTemplate = .callback = AnimTranslateLinearSingleSineWave, }; -const union AnimCmd gConstrictBindingAnimCmds1[] = +static const union AnimCmd sAnim_ConstrictBinding[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(32, 4), @@ -580,7 +585,7 @@ const union AnimCmd gConstrictBindingAnimCmds1[] = ANIMCMD_END, }; -const union AnimCmd gConstrictBindingAnimCmds2[] = +static const union AnimCmd sAnim_ConstrictBinding_Flipped[] = { ANIMCMD_FRAME(0, 4, .hFlip = TRUE), ANIMCMD_FRAME(32, 4, .hFlip = TRUE), @@ -589,29 +594,29 @@ const union AnimCmd gConstrictBindingAnimCmds2[] = ANIMCMD_END, }; -const union AnimCmd *const gConstrictBindingAnimTable[] = +static const union AnimCmd *const sAnims_ConstrictBinding[] = { - gConstrictBindingAnimCmds1, - gConstrictBindingAnimCmds2, + sAnim_ConstrictBinding, + sAnim_ConstrictBinding_Flipped, }; -const union AffineAnimCmd gConstrictBindingAffineAnimCmds1[] = { +static const union AffineAnimCmd sAffineAnim_ConstrictBinding[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(-11, 0, 0, 6), AFFINEANIMCMD_FRAME(11, 0, 0, 6), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gConstrictBindingAffineAnimCmds2[] = { +static const union AffineAnimCmd sAffineAnim_ConstrictBinding_Flipped[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(11, 0, 0, 6), AFFINEANIMCMD_FRAME(-11, 0, 0, 6), AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const gConstrictBindingAffineAnimTable[] = { - gConstrictBindingAffineAnimCmds1, - gConstrictBindingAffineAnimCmds2, +static const union AffineAnimCmd *const sAffineAnims_ConstrictBinding[] = { + sAffineAnim_ConstrictBinding, + sAffineAnim_ConstrictBinding_Flipped, }; const struct SpriteTemplate gConstrictBindingSpriteTemplate = @@ -619,9 +624,9 @@ const struct SpriteTemplate gConstrictBindingSpriteTemplate = .tileTag = ANIM_TAG_TENDRILS, .paletteTag = ANIM_TAG_TENDRILS, .oam = &gOamData_AffineNormal_ObjNormal_64x32, - .anims = gConstrictBindingAnimTable, + .anims = sAnims_ConstrictBinding, .images = NULL, - .affineAnims = gConstrictBindingAffineAnimTable, + .affineAnims = sAffineAnims_ConstrictBinding, .callback = AnimConstrictBinding, }; @@ -1060,7 +1065,7 @@ const struct SpriteTemplate gNeedleArmSpikeSpriteTemplate = .callback = AnimNeedleArmSpike, }; -const union AnimCmd gWhipAnimCmds1[] = +static const union AnimCmd sAnim_Whip[] = { ANIMCMD_FRAME(64, 3), ANIMCMD_FRAME(80, 3), @@ -1069,7 +1074,7 @@ const union AnimCmd gWhipAnimCmds1[] = ANIMCMD_END, }; -const union AnimCmd gWhipAnimCmds2[] = +static const union AnimCmd sAnim_Whip_Flipped[] = { ANIMCMD_FRAME(64, 3, .hFlip = TRUE), ANIMCMD_FRAME(80, 3, .hFlip = TRUE), @@ -1078,10 +1083,10 @@ const union AnimCmd gWhipAnimCmds2[] = ANIMCMD_END, }; -const union AnimCmd *const gWhipAnimTable[] = +static const union AnimCmd *const sAnims_Whip[] = { - gWhipAnimCmds1, - gWhipAnimCmds2, + sAnim_Whip, + sAnim_Whip_Flipped, }; const struct SpriteTemplate gSlamHitSpriteTemplate = @@ -1089,7 +1094,7 @@ const struct SpriteTemplate gSlamHitSpriteTemplate = .tileTag = ANIM_TAG_SLAM_HIT, .paletteTag = ANIM_TAG_SLAM_HIT, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gWhipAnimTable, + .anims = sAnims_Whip, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimWhipHit, @@ -1100,13 +1105,13 @@ const struct SpriteTemplate gVineWhipSpriteTemplate = .tileTag = ANIM_TAG_WHIP_HIT, .paletteTag = ANIM_TAG_WHIP_HIT, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gWhipAnimTable, + .anims = sAnims_Whip, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimWhipHit, }; -const union AnimCmd gUnknown_08592900[] = +static const union AnimCmd sAnim_SlidingHit[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(16, 4), @@ -1116,96 +1121,96 @@ const union AnimCmd gUnknown_08592900[] = ANIMCMD_END, }; -const union AnimCmd *const gUnknown_08592918[] = +static const union AnimCmd *const sAnims_SlidingHit[] = { - gUnknown_08592900, + sAnim_SlidingHit, }; // Unused -const struct SpriteTemplate gUnknown_0859291C = +static const struct SpriteTemplate sSlidingHit1SpriteTemplate = { .tileTag = ANIM_TAG_HIT, .paletteTag = ANIM_TAG_HIT, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gUnknown_08592918, + .anims = sAnims_SlidingHit, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_81009F8, + .callback = AnimSlidingHit, }; // Unused -const struct SpriteTemplate gUnknown_08592934 = +static const struct SpriteTemplate sSlidingHit2SpriteTemplate = { .tileTag = ANIM_TAG_HIT_2, .paletteTag = ANIM_TAG_HIT_2, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gUnknown_08592918, + .anims = sAnims_SlidingHit, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_81009F8, + .callback = AnimSlidingHit, }; -const union AffineAnimCmd gUnknown_0859294C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_Normal[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_0859295C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedTopLeft[] = { AFFINEANIMCMD_FRAME(256, 256, 32, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_0859296C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedLeft[] = { AFFINEANIMCMD_FRAME(256, 256, 64, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_0859297C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedBottomLeft[] = { AFFINEANIMCMD_FRAME(256, 256, 96, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_0859298C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_UpsideDown[] = { AFFINEANIMCMD_FRAME(256, 256, -128, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_0859299C[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedBottomRight[] = { AFFINEANIMCMD_FRAME(256, 256, -96, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_085929AC[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedRight[] = { AFFINEANIMCMD_FRAME(256, 256, -64, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd gUnknown_085929BC[] = { +static const union AffineAnimCmd sAffineAnim_FlickeringPunch_TurnedTopRight[] = { AFFINEANIMCMD_FRAME(256, 256, -32, 0), AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const gUnknown_085929CC[] = { - gUnknown_0859294C, - gUnknown_0859295C, - gUnknown_0859296C, - gUnknown_0859297C, - gUnknown_0859298C, - gUnknown_0859299C, - gUnknown_085929AC, - gUnknown_085929BC, +static const union AffineAnimCmd *const sAffineAnims_FlickeringPunch[] = { + sAffineAnim_FlickeringPunch_Normal, + sAffineAnim_FlickeringPunch_TurnedTopLeft, + sAffineAnim_FlickeringPunch_TurnedLeft, + sAffineAnim_FlickeringPunch_TurnedBottomLeft, + sAffineAnim_FlickeringPunch_UpsideDown, + sAffineAnim_FlickeringPunch_TurnedBottomRight, + sAffineAnim_FlickeringPunch_TurnedRight, + sAffineAnim_FlickeringPunch_TurnedTopRight, }; // Unused -const struct SpriteTemplate gUnknown_085929EC = +static const struct SpriteTemplate sFlickeringPunchSpriteTemplate = { .tileTag = ANIM_TAG_HANDS_AND_FEET, .paletteTag = ANIM_TAG_HANDS_AND_FEET, .oam = &gOamData_AffineNormal_ObjNormal_32x32, .anims = gDummySpriteAnimTable, .images = NULL, - .affineAnims = gUnknown_085929CC, - .callback = sub_8100A94, + .affineAnims = sAffineAnims_FlickeringPunch, + .callback = AnimFlickeringPunch, }; const union AnimCmd gCuttingSliceAnimCmds[] = @@ -1244,90 +1249,90 @@ const struct SpriteTemplate gAirCutterSliceSpriteTemplate = .callback = AnimAirCutterSlice, }; -const union AnimCmd gUnknown_08592A4C[] = +static const union AnimCmd sAnim_CirclingMusicNote_Eighth[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A54[] = +static const union AnimCmd sAnim_CirclingMusicNote_BeamedEighth[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A5C[] = +static const union AnimCmd sAnim_CirclingMusicNote_SlantedBeamedEighth[] = { ANIMCMD_FRAME(8, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A64[] = +static const union AnimCmd sAnim_CirclingMusicNote_Quarter[] = { ANIMCMD_FRAME(12, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A6C[] = +static const union AnimCmd sAnim_CirclingMusicNote_QuarterRest[] = { ANIMCMD_FRAME(16, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A74[] = +static const union AnimCmd sAnim_CirclingMusicNote_EighthRest[] = { ANIMCMD_FRAME(20, 1), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A7C[] = +static const union AnimCmd sAnim_CirclingMusicNote_Eighth_Flipped[] = { ANIMCMD_FRAME(0, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A84[] = +static const union AnimCmd sAnim_CirclingMusicNote_BeamedEighth_Flipped[] = { ANIMCMD_FRAME(4, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A8C[] = +static const union AnimCmd sAnim_CirclingMusicNote_SlantedBeamedEighth_Flipped[] = { ANIMCMD_FRAME(8, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gUnknown_08592A94[] = +static const union AnimCmd sAnim_CirclingMusicNote_Quarter_Flipped[] = { ANIMCMD_FRAME(12, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd *const gUnknown_08592A9C[] = +static const union AnimCmd *const sAnims_CirclingMusicNote[] = { - gUnknown_08592A4C, - gUnknown_08592A54, - gUnknown_08592A5C, - gUnknown_08592A64, - gUnknown_08592A6C, - gUnknown_08592A74, - gUnknown_08592A7C, - gUnknown_08592A84, - gUnknown_08592A8C, - gUnknown_08592A94, + sAnim_CirclingMusicNote_Eighth, + sAnim_CirclingMusicNote_BeamedEighth, + sAnim_CirclingMusicNote_SlantedBeamedEighth, + sAnim_CirclingMusicNote_Quarter, + sAnim_CirclingMusicNote_QuarterRest, + sAnim_CirclingMusicNote_EighthRest, + sAnim_CirclingMusicNote_Eighth_Flipped, + sAnim_CirclingMusicNote_BeamedEighth_Flipped, + sAnim_CirclingMusicNote_SlantedBeamedEighth_Flipped, + sAnim_CirclingMusicNote_Quarter_Flipped, }; // Unused -const struct SpriteTemplate gUnknown_08592AC4 = +static const struct SpriteTemplate sCirclingMusicNoteSpriteTemplate = { .tileTag = ANIM_TAG_MUSIC_NOTES, .paletteTag = ANIM_TAG_MUSIC_NOTES, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = gUnknown_08592A9C, + .anims = sAnims_CirclingMusicNote, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8100E1C, + .callback = AnimCirclingMusicNote, }; const struct SpriteTemplate gProtectSpriteTemplate = @@ -1414,7 +1419,7 @@ const struct SpriteTemplate gSparklingStarsSpriteTemplate = .callback = AnimSparkingStars, }; -const union AnimCmd gUnknown_08592BAC[] = +static const union AnimCmd sAnim_BubbleBurst[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(4, 10), @@ -1427,7 +1432,7 @@ const union AnimCmd gUnknown_08592BAC[] = ANIMCMD_END, }; -const union AnimCmd gUnknown_08592BD0[] = +static const union AnimCmd sAnim_BubbleBurst_Flipped[] = { ANIMCMD_FRAME(0, 10, .hFlip = TRUE), ANIMCMD_FRAME(4, 10, .hFlip = TRUE), @@ -1440,22 +1445,22 @@ const union AnimCmd gUnknown_08592BD0[] = ANIMCMD_END, }; -const union AnimCmd *const gUnknown_08592BF4[] = +static const union AnimCmd *const sAnims_BubbleBurst[] = { - gUnknown_08592BAC, - gUnknown_08592BD0, + sAnim_BubbleBurst, + sAnim_BubbleBurst_Flipped, }; // Unused -const struct SpriteTemplate gUnknown_08592BFC = +static const struct SpriteTemplate sBubbleBurstSpriteTemplate = { .tileTag = ANIM_TAG_BUBBLE_BURST, .paletteTag = ANIM_TAG_BUBBLE_BURST, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = gUnknown_08592BF4, + .anims = sAnims_BubbleBurst, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8101440, + .callback = AnimBubbleBurst, }; const union AnimCmd gSleepLetterZAnimCmds[] = @@ -1556,7 +1561,8 @@ const struct SpriteTemplate gBowMonSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnknown_08592CF0 = +// Same as BowMon above but without backing up +static const struct SpriteTemplate sTipMonSpriteTemplate = { .tileTag = 0, .paletteTag = 0, @@ -1564,7 +1570,7 @@ const struct SpriteTemplate gUnknown_08592CF0 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8101B90, + .callback = AnimTipMon, }; const union AnimCmd gSlashSliceAnimCmds1[] = @@ -2684,9 +2690,9 @@ static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) destroy = TRUE; } - if (sprite->pos1.x + sprite->pos2.x > 256 + if (sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 16 || sprite->pos1.x + sprite->pos2.x < -16 - || sprite->pos1.y + sprite->pos2.y > 160 + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) destroy = TRUE; @@ -2940,10 +2946,10 @@ static void AnimFrenzyPlantRoot(struct Sprite *sprite) StartSpriteAnim(sprite, gBattleAnimArgs[4]); sprite->data[2] = gBattleAnimArgs[5]; sprite->callback = AnimRootFlickerOut; - gUnknown_0203A0F8[0] = sprite->pos1.x; - gUnknown_0203A0F8[1] = sprite->pos1.y; - gUnknown_0203A0F8[2] = targetX; - gUnknown_0203A0F8[3] = targetY; + sFrenzyPlantRootData.startX = sprite->pos1.x; + sFrenzyPlantRootData.startY = sprite->pos1.y; + sFrenzyPlantRootData.targetX = targetX; + sFrenzyPlantRootData.targetY = targetY; } static void AnimRootFlickerOut(struct Sprite* sprite) @@ -2979,7 +2985,7 @@ static void AnimIngrainOrb(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void sub_80FF9B8(struct Sprite* sprite, s16 c) +static void InitItemBagData(struct Sprite* sprite, s16 c) { int a = (sprite->pos1.x << 8) | sprite->pos1.y; int b = (sprite->data[6] << 8) | sprite->data[7]; @@ -3005,7 +3011,7 @@ bool8 moveAlongLinearPath(struct Sprite* sprite) if (xEndPos == 0) xEndPos = -32; else if (xEndPos == 255) - xEndPos = 272; + xEndPos = DISPLAY_WIDTH + 32; yEndPos_2 = yEndPos - yStartPos; r0 = xEndPos - xStartPos; @@ -3059,14 +3065,14 @@ static void AnimPresent(struct Sprite* sprite) { sprite->data[6] = targetX; sprite->data[7] = targetY + 10; - sub_80FF9B8(sprite, 60); + InitItemBagData(sprite, 60); sprite->data[3] = 1; } else { sprite->data[6] = targetX; sprite->data[7] = targetY + 10; - sub_80FF9B8(sprite, 60); + InitItemBagData(sprite, 60); sprite->data[3] = 3; } @@ -3101,7 +3107,7 @@ static void AnimKnockOffItem(struct Sprite* sprite) { sprite->data[6] = 0; sprite->data[7] = targetY + 10; - sub_80FF9B8(sprite, 40); + InitItemBagData(sprite, 40); sprite->data[3] = 3; sprite->data[4] = 60; sprite->callback = AnimItemSteal_Step1; @@ -3113,7 +3119,7 @@ static void AnimKnockOffItem(struct Sprite* sprite) if (IsContest()) sprite->data[6] = 0; - sub_80FF9B8(sprite, 40); + InitItemBagData(sprite, 40); sprite->data[3] = 3; sprite->data[4] = 60; sprite->callback = AnimKnockOffOpponentsItem; @@ -3150,14 +3156,14 @@ static void AnimItemSteal(struct Sprite* sprite) { sprite->data[6] = attackerX; sprite->data[7] = attackerY + 10; - sub_80FF9B8(sprite, 60); + InitItemBagData(sprite, 60); sprite->data[3] = 1; } else { sprite->data[6] = attackerX; sprite->data[7] = attackerY + 10; - sub_80FF9B8(sprite, 60); + InitItemBagData(sprite, 60); sprite->data[3] = 3; } @@ -3737,7 +3743,7 @@ static void AnimWhipHit_WaitEnd(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void sub_81009F8(struct Sprite* sprite) +static void AnimSlidingHit(struct Sprite* sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { @@ -3764,7 +3770,7 @@ static void AnimWhipHit(struct Sprite* sprite) sprite->pos1.y += gBattleAnimArgs[1]; } -static void sub_8100A94(struct Sprite* sprite) +static void AnimFlickeringPunch(struct Sprite* sprite) { sprite->pos1.x += gBattleAnimArgs[0]; sprite->pos1.y += gBattleAnimArgs[1]; @@ -3879,7 +3885,7 @@ static void AnimSlice_Step(struct Sprite* sprite) } } -void unref_sub_8100D38(struct Sprite* sprite) +static void UnusedFlickerAnim(struct Sprite* sprite) { if (sprite->data[2] > 1) { @@ -3912,7 +3918,7 @@ void unref_sub_8100D38(struct Sprite* sprite) } } -static void sub_8100E1C(struct Sprite* sprite) +static void AnimCirclingMusicNote(struct Sprite* sprite) { sprite->data[0] = gBattleAnimArgs[2]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -3924,11 +3930,11 @@ static void sub_8100E1C(struct Sprite* sprite) sprite->data[1] = -gBattleAnimArgs[3]; sprite->pos1.y += gBattleAnimArgs[1]; sprite->data[3] = gBattleAnimArgs[4]; - sprite->callback = sub_8100E80; + sprite->callback = AnimCirclingMusicNote_Step; sprite->callback(sprite); } -static void sub_8100E80(struct Sprite* sprite) +static void AnimCirclingMusicNote_Step(struct Sprite* sprite) { sprite->pos2.x = Cos(sprite->data[0], 100); sprite->pos2.y = Sin(sprite->data[0], 20); @@ -3938,7 +3944,7 @@ static void sub_8100E80(struct Sprite* sprite) sprite->subpriority = 14; sprite->data[0] = (sprite->data[0] + sprite->data[1]) & 0xFF; - sprite->data[5] += 0x82; + sprite->data[5] += 130; sprite->pos2.y += sprite->data[5] >> 8; sprite->data[2]++; if (sprite->data[2] == sprite->data[3]) @@ -4169,7 +4175,7 @@ static void AnimSparkingStars(struct Sprite* sprite) sprite->callback = TranslateSpriteLinearFixedPoint; } -static void sub_8101440(struct Sprite* sprite) +static void AnimBubbleBurst(struct Sprite* sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) @@ -4184,10 +4190,10 @@ static void sub_8101440(struct Sprite* sprite) StartSpriteAnim(sprite, 1); } - sprite->callback = sub_81014A0; + sprite->callback = AnimBubbleBurst_Step; } -static void sub_81014A0(struct Sprite* sprite) +static void AnimBubbleBurst_Step(struct Sprite* sprite) { if (++sprite->data[0] > 30) { @@ -4511,13 +4517,13 @@ static void AnimBowMon_Step4(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void sub_8101B90(struct Sprite *sprite) +static void AnimTipMon(struct Sprite *sprite) { sprite->data[0] = 0; - sprite->callback = sub_8101BA0; + sprite->callback = AnimTipMon_Step; } -static void sub_8101BA0(struct Sprite *sprite) +static void AnimTipMon_Step(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -4912,22 +4918,24 @@ void AnimTask_Conversion2AlphaBlend(u8 taskId) } } -void unref_sub_8102434(u8 taskId) +// Unused +static void AnimTask_HideBattlersHealthbox(u8 taskId) { u8 i; for (i = 0; i < gBattlersCount; i++) { - if (gBattleAnimArgs[0] == 1 && GetBattlerSide(i) == B_SIDE_PLAYER) + if (gBattleAnimArgs[0] == TRUE && GetBattlerSide(i) == B_SIDE_PLAYER) SetHealthboxSpriteInvisible(gHealthboxSpriteIds[i]); - if (gBattleAnimArgs[1] == 1 && GetBattlerSide(i) == B_SIDE_OPPONENT) + if (gBattleAnimArgs[1] == TRUE && GetBattlerSide(i) == B_SIDE_OPPONENT) SetHealthboxSpriteInvisible(gHealthboxSpriteIds[i]); } DestroyAnimVisualTask(taskId); } -void unref_sub_81024A8(u8 taskId) +// Unused +static void AnimTask_ShowBattlersHealthbox(u8 taskId) { u8 i; for (i = 0; i < gBattlersCount; i++) From 33ea2a10613df0d6ef25b146b175f8b3712896c3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 13 Apr 2021 02:50:50 -0400 Subject: [PATCH 112/762] Remove unnecessary scope for TEST_BUTTON --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/global.h b/include/global.h index 18e2bfea74b4..19605ca57c89 100644 --- a/include/global.h +++ b/include/global.h @@ -107,7 +107,7 @@ #define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr) // Macros for checking the joypad -#define TEST_BUTTON(field, button) ({(field) & (button);}) +#define TEST_BUTTON(field, button) ((field) & (button)) #define JOY_NEW(button) TEST_BUTTON(gMain.newKeys, button) #define JOY_HELD(button) TEST_BUTTON(gMain.heldKeys, button) #define JOY_HELD_RAW(button) TEST_BUTTON(gMain.heldKeysRaw, button) From f9f33b643e0e15ba6bc150e508a7ba25ebc533f4 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 13 Apr 2021 03:17:39 -0400 Subject: [PATCH 113/762] Label unused move anims in anim_effects_2 --- src/battle_anim_effects_2.c | 108 ++++++++++++++++++------------------ 1 file changed, 54 insertions(+), 54 deletions(-) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 8142624a2704..3a04c8c46208 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -16,13 +16,13 @@ #include "constants/rgb.h" #include "constants/songs.h" -static void sub_8103448(struct Sprite *); -static void sub_8103498(struct Sprite *); -static void sub_81034D8(struct Sprite *); -static void sub_810358C(struct Sprite *); -static void sub_8103620(struct Sprite *); -static void sub_8103658(struct Sprite *); -static void sub_8103680(struct Sprite *); +static void AnimCirclingFinger(struct Sprite *); +static void AnimBouncingMusicNote(struct Sprite *); +static void AnimBouncingMusicNote_Step(struct Sprite *); +static void AnimVibrateBattlerBack(struct Sprite *); +static void AnimMovingClamp(struct Sprite *); +static void AnimMovingClamp_Step(struct Sprite *); +static void AnimMovingClamp_End(struct Sprite *); static void AnimKinesisZapEnergy(struct Sprite *); static void AnimSwordsDanceBlade(struct Sprite *); static void AnimSwordsDanceBlade_Step(struct Sprite *); @@ -30,8 +30,8 @@ static void AnimSonicBoomProjectile(struct Sprite *); static void AnimAirWaveProjectile(struct Sprite *); static void AnimAirWaveProjectile_Step1(struct Sprite *sprite); static void AnimAirWaveProjectile_Step2(struct Sprite *sprite); -static void sub_8103FE8(struct Sprite *); -static void sub_8104018(struct Sprite *); +static void AnimVoidLines(struct Sprite *); +static void AnimVoidLines_Step(struct Sprite *); static void AnimCoinThrow(struct Sprite *); static void AnimFallingCoin(struct Sprite *); static void AnimFallingCoin_Step(struct Sprite *); @@ -109,7 +109,7 @@ static void AnimTask_ScaryFace_Step(u8); static void AnimTask_UproarDistortion_Step(u8); // Unused -const struct SpriteTemplate gUnknown_08593264 = +static const struct SpriteTemplate sCirclingFingerSpriteTemplate = { .tileTag = ANIM_TAG_FINGER, .paletteTag = ANIM_TAG_FINGER, @@ -117,23 +117,23 @@ const struct SpriteTemplate gUnknown_08593264 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8103448, + .callback = AnimCirclingFinger, }; -const union AnimCmd gUnknown_0859327C[] = +static const union AnimCmd sAnim_BouncingMusicNote[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_END, }; -// Unused -const union AnimCmd *const gUnknown_08593284[] = +// Unused (association assumed) +static const union AnimCmd *const sAnims_BouncingMusicNote[] = { - gUnknown_0859327C, + sAnim_BouncingMusicNote, }; // Unused -const struct SpriteTemplate gUnknown_08593288 = +static const struct SpriteTemplate sBouncingMusicNoteSpriteTemplate = { .tileTag = ANIM_TAG_MUSIC_NOTES, .paletteTag = ANIM_TAG_MUSIC_NOTES, @@ -141,11 +141,11 @@ const struct SpriteTemplate gUnknown_08593288 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8103498, + .callback = AnimBouncingMusicNote, }; // Unused -const struct SpriteTemplate gUnknown_085932A0 = +static const struct SpriteTemplate sVibrateBattlerBackSpriteTemplate = { .tileTag = 0, .paletteTag = 0, @@ -153,11 +153,11 @@ const struct SpriteTemplate gUnknown_085932A0 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_810358C, + .callback = AnimVibrateBattlerBack, }; // Unused -const struct SpriteTemplate gUnknown_085932B8 = +static const struct SpriteTemplate sMovingClampSpriteTemplate = { .tileTag = ANIM_TAG_CLAMP, .paletteTag = ANIM_TAG_CLAMP, @@ -165,10 +165,10 @@ const struct SpriteTemplate gUnknown_085932B8 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gAffineAnims_Bite, - .callback = sub_8103620, + .callback = AnimMovingClamp, }; -const union AnimCmd gUnknown_085932D0[] = +static const union AnimCmd sAnim_SmallExplosion[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(16, 3), @@ -177,32 +177,32 @@ const union AnimCmd gUnknown_085932D0[] = ANIMCMD_END, }; -const union AnimCmd *const gUnknown_085932E4[] = +static const union AnimCmd *const sAnims_SmallExplosion[] = { - gUnknown_085932D0, + sAnim_SmallExplosion, }; -const union AffineAnimCmd gUnknown_085932E8[] = +static const union AffineAnimCmd sAffineAnim_SmallExplosion[] = { AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0), AFFINEANIMCMD_FRAME(0x9, 0x9, 0, 18), AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const gUnknown_08593300[] = +static const union AffineAnimCmd *const sAffineAnims_SmallExplosion[] = { - gUnknown_085932E8, + sAffineAnim_SmallExplosion, }; // Unused -const struct SpriteTemplate gUnknown_08593304 = +static const struct SpriteTemplate sSmallExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_6, .paletteTag = ANIM_TAG_EXPLOSION_6, .oam = &gOamData_AffineNormal_ObjNormal_32x32, - .anims = gUnknown_085932E4, + .anims = sAnims_SmallExplosion, .images = NULL, - .affineAnims = gUnknown_08593300, + .affineAnims = sAffineAnims_SmallExplosion, .callback = AnimSpriteOnMonPos, }; @@ -366,7 +366,7 @@ const struct SpriteTemplate gEggThrowSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnknown_085934A0 = +static const struct SpriteTemplate sVoidLinesSpriteTemplate = { .tileTag = ANIM_TAG_VOID_LINES, .paletteTag = ANIM_TAG_VOID_LINES, @@ -374,7 +374,7 @@ const struct SpriteTemplate gUnknown_085934A0 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8103FE8, + .callback = AnimVoidLines, }; const union AnimCmd gCoinAnimCmds[] = @@ -1096,7 +1096,7 @@ const struct SpriteTemplate gDevilSpriteTemplate = .callback = AnimDevil, }; -const union AnimCmd gUnknown_08593B08[] = +static const union AnimCmd sAnim_FurySwipes[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(16, 4), @@ -1105,7 +1105,7 @@ const union AnimCmd gUnknown_08593B08[] = ANIMCMD_END, }; -const union AnimCmd gUnknown_08593B1C[] = +static const union AnimCmd sAnim_FurySwipes_Flipped[] = { ANIMCMD_FRAME(0, 4, .hFlip = TRUE), ANIMCMD_FRAME(16, 4, .hFlip = TRUE), @@ -1114,10 +1114,10 @@ const union AnimCmd gUnknown_08593B1C[] = ANIMCMD_END, }; -const union AnimCmd *const gFurySwipesAnimTable[] = +static const union AnimCmd *const sAnims_FurySwipes[] = { - gUnknown_08593B08, - gUnknown_08593B1C, + sAnim_FurySwipes, + sAnim_FurySwipes_Flipped, }; const struct SpriteTemplate gFurySwipesSpriteTemplate = @@ -1125,7 +1125,7 @@ const struct SpriteTemplate gFurySwipesSpriteTemplate = .tileTag = ANIM_TAG_SWIPE, .paletteTag = ANIM_TAG_SWIPE, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gFurySwipesAnimTable, + .anims = sAnims_FurySwipes, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimFurySwipes, @@ -1262,7 +1262,7 @@ const struct SpriteTemplate gGuardRingSpriteTemplate = .callback = AnimGuardRing, }; -static void sub_8103448(struct Sprite *sprite) +static void AnimCirclingFinger(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); @@ -1276,7 +1276,7 @@ static void sub_8103448(struct Sprite *sprite) sprite->callback(sprite); } -static void sub_8103498(struct Sprite *sprite) +static void AnimBouncingMusicNote(struct Sprite *sprite) { u8 battler; if (gBattleAnimArgs[0] == 0) @@ -1287,10 +1287,10 @@ static void sub_8103498(struct Sprite *sprite) SetSpriteNextToMonHead(battler, sprite); sprite->data[0] = 0; sprite->data[1] = 0; - sprite->callback = sub_81034D8; + sprite->callback = AnimBouncingMusicNote_Step; } -static void sub_81034D8(struct Sprite *sprite) +static void AnimBouncingMusicNote_Step(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -1311,7 +1311,7 @@ static void sub_81034D8(struct Sprite *sprite) } } -static void sub_810353C(struct Sprite *sprite) +static void AnimVibrateBattlerBack_Step(struct Sprite *sprite) { s16 temp; gSprites[sprite->data[2]].pos2.x += sprite->data[1]; @@ -1326,7 +1326,7 @@ static void sub_810353C(struct Sprite *sprite) sprite->data[0]--; } -static void sub_810358C(struct Sprite *sprite) +static void AnimVibrateBattlerBack(struct Sprite *sprite) { u8 spriteId; sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); @@ -1341,30 +1341,30 @@ static void sub_810358C(struct Sprite *sprite) sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = spriteId; - sprite->callback = sub_810353C; + sprite->callback = AnimVibrateBattlerBack_Step; sprite->invisible = TRUE; } -static void sub_8103620(struct Sprite *sprite) +static void AnimMovingClamp(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[4]; sprite->callback = WaitAnimForDuration; - StoreSpriteCallbackInData6(sprite, sub_8103658); + StoreSpriteCallbackInData6(sprite, AnimMovingClamp_Step); } -static void sub_8103658(struct Sprite *sprite) +static void AnimMovingClamp_Step(struct Sprite *sprite) { sprite->data[0] = sprite->data[1]; sprite->data[2] = sprite->pos1.x; sprite->data[4] = sprite->pos1.y + 15; sprite->callback = StartAnimLinearTranslation; - StoreSpriteCallbackInData6(sprite, sub_8103680); + StoreSpriteCallbackInData6(sprite, AnimMovingClamp_End); } -static void sub_8103680(struct Sprite *sprite) +static void AnimMovingClamp_End(struct Sprite *sprite) { if (sprite->data[5] == 0) DestroyAnimSprite(sprite); @@ -1738,14 +1738,14 @@ void AnimTask_AirCutterProjectile(u8 taskId) gTasks[taskId].func = AirCutterProjectileStep1; } -static void sub_8103FE8(struct Sprite *sprite) +static void AnimVoidLines(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, FALSE); - sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(gUnknown_085934A0.paletteTag) << 4); - sprite->callback = sub_8104018; + sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag) << 4); + sprite->callback = AnimVoidLines_Step; } -static void sub_8104018(struct Sprite *sprite) +static void AnimVoidLines_Step(struct Sprite *sprite) { u16 id, val; int i; From 7645be27ebfb06d39b2b8d68dd8fc4ca24c6433c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 13 Apr 2021 03:28:03 -0400 Subject: [PATCH 114/762] Label unused move anims in anim_effects_3 --- .../unused.pal} | 0 src/battle_anim_effects_3.c | 26 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) rename graphics/{unknown/unknown_85CE55C.pal => battle_anims/unused.pal} (100%) diff --git a/graphics/unknown/unknown_85CE55C.pal b/graphics/battle_anims/unused.pal similarity index 100% rename from graphics/unknown/unknown_85CE55C.pal rename to graphics/battle_anims/unused.pal diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 0c56c6bcab08..67452fe908ae 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -91,7 +91,7 @@ static void AnimMeteorMashStar(struct Sprite *); static void AnimMeteorMashStar_Step(struct Sprite *sprite); static void AnimBlockX(struct Sprite *); static void AnimBlockX_Step(struct Sprite *); -static void sub_815FE80(struct Sprite *); +static void AnimUnusedItemBagSteal(struct Sprite *); static void AnimKnockOffStrike(struct Sprite *); static void AnimKnockOffStrike_Step(struct Sprite *sprite); static void AnimRecycle(struct Sprite *); @@ -432,7 +432,7 @@ const struct SpriteTemplate gRapidSpinSpriteTemplate = .callback = AnimRapidSpin, }; -const union AffineAnimCmd gUnknown_085CE2A0[] = +static const union AffineAnimCmd sAffineAnims_Torment[] = { AFFINEANIMCMD_FRAME(-12, 8, 0, 4), AFFINEANIMCMD_FRAME(20, -20, 0, 4), @@ -718,7 +718,7 @@ const struct SpriteTemplate gSweetScentPetalSpriteTemplate = .callback = AnimSweetScentPetal, }; -const u16 gUnknown_085CE55C[] = INCBIN_U16("graphics/unknown/unknown_85CE55C.gbapal"); +static const u16 sUnusedPalette[] = INCBIN_U16("graphics/battle_anims/unused.gbapal"); const union AnimCmd gPainSplitAnimCmds[] = { @@ -1071,7 +1071,7 @@ const struct SpriteTemplate gMeteorMashStarSpriteTemplate = .callback = AnimMeteorMashStar, }; -const struct SpriteTemplate gUnknown_085CE8F4 = +static const struct SpriteTemplate sUnusedStarBurstSpriteTemplate = { .tileTag = ANIM_TAG_GOLD_STARS, .paletteTag = ANIM_TAG_GOLD_STARS, @@ -1093,7 +1093,7 @@ const struct SpriteTemplate gBlockXSpriteTemplate = .callback = AnimBlockX, }; -const struct SpriteTemplate gUnknown_085CE924 = +static const struct SpriteTemplate sUnusedItemBagStealSpriteTemplate = { .tileTag = ANIM_TAG_ITEM_BAG, .paletteTag = ANIM_TAG_ITEM_BAG, @@ -1101,7 +1101,7 @@ const struct SpriteTemplate gUnknown_085CE924 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_815FE80, + .callback = AnimUnusedItemBagSteal, }; const union AnimCmd gKnockOffStrikeAnimCmds[] = @@ -1944,7 +1944,7 @@ static void TormentAttacker_Step(u8 taskId) task->data[5] -= 6; } - PrepareAffineAnimInTaskData(task, task->data[15], gUnknown_085CE2A0); + PrepareAffineAnimInTaskData(task, task->data[15], sAffineAnims_Torment); task->data[1]++; task->data[0] = 1; break; @@ -3580,7 +3580,7 @@ static void AnimSmokeBallEscapeCloud(struct Sprite *sprite) sprite->callback = DestroyAnimSpriteAfterTimer; } -static void sub_815D8D8(u8 taskId) +static void AnimTask_SlideMonForFocusBand_Step2(u8 taskId) { u16 var0 = 0; u16 var1 = 0; @@ -3630,7 +3630,7 @@ static void sub_815D8D8(u8 taskId) } } -static void sub_815DA20(u8 taskId) +static void AnimTask_SlideMonForFocusBand_Step1(u8 taskId) { u16 var0 = 0; u16 var1 = 0; @@ -3679,7 +3679,7 @@ static void sub_815DA20(u8 taskId) { gTasks[taskId].data[0] = 30; gTasks[taskId].data[13] = 0; - gTasks[taskId].func = sub_815D8D8; + gTasks[taskId].func = AnimTask_SlideMonForFocusBand_Step2; } } @@ -3714,7 +3714,7 @@ void AnimTask_SlideMonForFocusBand(u8 taskId) gTasks[taskId].data[7] = 0; gTasks[taskId].data[4] = gBattleAnimArgs[4]; gTasks[taskId].data[5] = gBattleAnimArgs[5]; - gTasks[taskId].func = sub_815DA20; + gTasks[taskId].func = AnimTask_SlideMonForFocusBand_Step1; } // Squishes the mon vertically and emits sweat droplets a few times. @@ -4737,7 +4737,7 @@ void AnimTask_MonToSubstitute(u8 taskId) StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimAttacker]], 0); } - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_TASK_DATA; i++) gTasks[taskId].data[i] = 0; gTasks[taskId].func = AnimTask_MonToSubstituteDoll; @@ -5143,7 +5143,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) } } -static void sub_815FE80(struct Sprite *sprite) +static void AnimUnusedItemBagSteal(struct Sprite *sprite) { switch (sprite->data[7]) { From 98ab546d3a014b8563df859cf37fe619442d9951 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 13 Apr 2021 04:04:09 -0400 Subject: [PATCH 115/762] Label misc unused move anims --- src/battle_anim_flying.c | 6 ++-- src/battle_anim_ghost.c | 20 ++++++------- src/battle_anim_ice.c | 6 ++-- src/battle_anim_normal.c | 16 +++++----- src/battle_anim_status_effects.c | 50 ++++++++++++++++---------------- 5 files changed, 49 insertions(+), 49 deletions(-) diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index bd6a494c84e8..5955d203e34d 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -290,7 +290,7 @@ const struct SpriteTemplate gDiveBallSpriteTemplate = .callback = AnimDiveBall, }; -static const union AffineAnimCmd sAnim_Unused_085964A8[] = +static const union AffineAnimCmd sAnim_Unused[] = { AFFINEANIMCMD_FRAME(0x100, 0x0, 0, 0), AFFINEANIMCMD_FRAME(0x0, 0x20, 0, 12), @@ -299,9 +299,9 @@ static const union AffineAnimCmd sAnim_Unused_085964A8[] = }; // Unused -static const union AffineAnimCmd *const sAnims_Unused_085964C8[] = +static const union AffineAnimCmd *const sAnims_Unused[] = { - sAnim_Unused_085964A8, + sAnim_Unused, }; const struct SpriteTemplate gDiveWaterSplashSpriteTemplate = diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 2e4a2318ddb8..4b253a7ec6da 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -39,8 +39,8 @@ static void AnimGhostStatusSprite(struct Sprite *); static void AnimGhostStatusSprite_Step(struct Sprite *); static void AnimTask_GrudgeFlames_Step(u8 taskId); static void AnimGrudgeFlame(struct Sprite *); -static void AnimUnused_8112F60(struct Sprite *); -static void AnimUnused_8112F60_Step(struct Sprite *); +static void AnimMonMoveCircular(struct Sprite *); +static void AnimMonMoveCircular_Step(struct Sprite *); static const union AffineAnimCmd sAffineAnim_ConfuseRayBallBounce[] = { @@ -124,16 +124,16 @@ const struct SpriteTemplate gLickSpriteTemplate = .callback = AnimLick, }; -static const union AffineAnimCmd sAnim_Unused_08596DA4[] = +static const union AffineAnimCmd sAffineAnim_Unused[] = { AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0), AFFINEANIMCMD_END, }; // Unused -static const union AffineAnimCmd *const gAnims_Unused_08596DB4[] = +static const union AffineAnimCmd *const sAffineAnims_Unused[] = { - sAnim_Unused_08596DA4, + sAffineAnim_Unused, }; const struct SpriteTemplate gDestinyBondWhiteShadowSpriteTemplate = @@ -206,7 +206,7 @@ const struct SpriteTemplate gGrudgeFlameSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_08596E48 = +static const struct SpriteTemplate sMonMoveCircularSpriteTemplate = { .tileTag = 0, .paletteTag = 0, @@ -214,7 +214,7 @@ const struct SpriteTemplate gUnusedSpriteTemplate_08596E48 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_8112F60, + .callback = AnimMonMoveCircular, }; static void AnimConfuseRayBallBounce(struct Sprite *sprite) @@ -1302,7 +1302,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite) } } -static void AnimUnused_8112F60(struct Sprite *sprite) +static void AnimMonMoveCircular(struct Sprite *sprite) { sprite->invisible = TRUE; sprite->data[5] = gBattlerSpriteIds[gBattleAnimAttacker]; @@ -1310,12 +1310,12 @@ static void AnimUnused_8112F60(struct Sprite *sprite) sprite->data[1] = 10; sprite->data[2] = gBattleAnimArgs[0]; sprite->data[3] = gBattleAnimArgs[1]; - sprite->callback = AnimUnused_8112F60_Step; + sprite->callback = AnimMonMoveCircular_Step; gSprites[sprite->data[5]].pos1.y += 8; } -static void AnimUnused_8112F60_Step(struct Sprite *sprite) +static void AnimMonMoveCircular_Step(struct Sprite *sprite) { if (sprite->data[3]) { diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 659cd0cb80c4..b97ccf9cd24b 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -49,16 +49,16 @@ static void AnimTask_LoadMistTiles_Step(u8); static void AnimTask_Hail2(u8); static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId, u8 c); -static const union AnimCmd sAnim_Unused_08595A48[] = +static const union AnimCmd sAnim_Unused[] = { ANIMCMD_FRAME(0, 5, .hFlip = TRUE), ANIMCMD_FRAME(1, 5, .hFlip = TRUE), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_Unused_08595A54[] = +static const union AnimCmd *const sAnims_Unused[] = { - sAnim_Unused_08595A48, + sAnim_Unused, }; // Unused diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 60ec5b083579..9be56880ab02 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -12,7 +12,7 @@ static void AnimSimplePaletteBlend_Step(struct Sprite *); static void AnimComplexPaletteBlend(struct Sprite *); static void AnimComplexPaletteBlend_Step1(struct Sprite *); static void AnimComplexPaletteBlend_Step2(struct Sprite *); -static void AnimUnused_81159B4(struct Sprite *); +static void AnimCirclingSparkle(struct Sprite *); static void AnimShakeMonOrBattleTerrain(struct Sprite *); static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *); static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void); @@ -92,7 +92,7 @@ const struct SpriteTemplate gComplexPaletteBlendSpriteTemplate = .callback = AnimComplexPaletteBlend, }; -static const union AnimCmd sAnim_Unused_085972A4[] = +static const union AnimCmd sAnim_CirclingSparkle[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(16, 3), @@ -102,21 +102,21 @@ static const union AnimCmd sAnim_Unused_085972A4[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_Unused_085972BC[] = +static const union AnimCmd *const sAnims_CirclingSparkle[] = { - sAnim_Unused_085972A4, + sAnim_CirclingSparkle, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_085972C0 = +static const struct SpriteTemplate sCirclingSparkleSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_4, .paletteTag = ANIM_TAG_SPARKLE_4, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnims_Unused_085972BC, + .anims = sAnims_CirclingSparkle, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_81159B4, + .callback = AnimCirclingSparkle, }; const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate = @@ -398,7 +398,7 @@ static void AnimComplexPaletteBlend_Step2(struct Sprite *sprite) } } -static void AnimUnused_81159B4(struct Sprite *sprite) +static void AnimCirclingSparkle(struct Sprite *sprite) { sprite->pos1.x += gBattleAnimArgs[0]; sprite->pos1.y += gBattleAnimArgs[1]; diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 9221116ba34d..e7ef056738d1 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -17,14 +17,14 @@ extern const u8 *const gBattleAnims_StatusConditions[]; extern const struct OamData gOamData_AffineOff_ObjNormal_8x8; extern const struct OamData gOamData_AffineOff_ObjBlend_64x64; -static void UnusedTask_80A9DB4(u8 taskId); +static void Task_UpdateFlashingCircleImpacts(u8 taskId); static void AnimTask_FrozenIceCube_Step1(u8 taskId); static void AnimTask_FrozenIceCube_Step2(u8 taskId); static void AnimTask_FrozenIceCube_Step3(u8 taskId); static void AnimTask_FrozenIceCube_Step4(u8 taskId); static void Task_DoStatusAnimation(u8 taskId); -static void AnimUnused_80A9E44(struct Sprite *sprite); -static void AnimUnused_80A9E44_Step(struct Sprite *sprite); +static void AnimFlashingCircleImpact(struct Sprite *sprite); +static void AnimFlashingCircleImpact_Step(struct Sprite *sprite); static const union AnimCmd sAnim_Unused_853EDE4[] = { @@ -259,7 +259,7 @@ static const struct SpriteTemplate gFrozenIceCubeSpriteTemplate = .callback = SpriteCallbackDummy, }; -static const struct SpriteTemplate gUnusedSpriteTemplate_0853EF60 = +static const struct SpriteTemplate sFlashingCircleImpactSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_IMPACT, .paletteTag = ANIM_TAG_CIRCLE_IMPACT, @@ -267,31 +267,31 @@ static const struct SpriteTemplate gUnusedSpriteTemplate_0853EF60 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_80A9E44, + .callback = AnimFlashingCircleImpact, }; // Unused -u8 Unused_80A9C70(u8 battlerId, bool8 b) +static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red) { u8 battlerSpriteId = gBattlerSpriteIds[battlerId]; - u8 taskId = CreateTask(UnusedTask_80A9DB4, 10); - u8 spriteId2; + 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; - if (b) + if (red) { gTasks[taskId].data[1] = RGB_RED; for (i = 0; i < 10; i++) { - spriteId2 = CreateSprite(&gUnusedSpriteTemplate_0853EF60, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0); - gSprites[spriteId2].data[0] = i * 51; - gSprites[spriteId2].data[1] = -256; - gSprites[spriteId2].invisible = TRUE; + spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0); + gSprites[spriteId].data[0] = i * 51; + gSprites[spriteId].data[1] = -256; + gSprites[spriteId].invisible = TRUE; if (i > 4) - gSprites[spriteId2].data[6] = 21; + gSprites[spriteId].data[6] = 21; } } else @@ -299,19 +299,19 @@ u8 Unused_80A9C70(u8 battlerId, bool8 b) gTasks[taskId].data[1] = RGB_BLUE; for (i = 0; i < 10; i++) { - spriteId2 = CreateSprite(&gUnusedSpriteTemplate_0853EF60, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0); - gSprites[spriteId2].data[0] = i * 51; - gSprites[spriteId2].data[1] = 256; - gSprites[spriteId2].invisible = TRUE; + spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0); + gSprites[spriteId].data[0] = i * 51; + gSprites[spriteId].data[1] = 256; + gSprites[spriteId].invisible = TRUE; if (i > 4) - gSprites[spriteId2].data[6] = 21; + gSprites[spriteId].data[6] = 21; } } - gSprites[spriteId2].data[7] = 1; + gSprites[spriteId].data[7] = 1; return taskId; } -static void UnusedTask_80A9DB4(u8 taskId) +static void Task_UpdateFlashingCircleImpacts(u8 taskId) { if (gTasks[taskId].data[2] == 2) { @@ -344,13 +344,13 @@ static void UnusedTask_80A9DB4(u8 taskId) } } -static void AnimUnused_80A9E44(struct Sprite *sprite) +static void AnimFlashingCircleImpact(struct Sprite *sprite) { if (sprite->data[6] == 0) { sprite->invisible = FALSE; - sprite->callback = AnimUnused_80A9E44_Step; - AnimUnused_80A9E44_Step(sprite); + sprite->callback = AnimFlashingCircleImpact_Step; + AnimFlashingCircleImpact_Step(sprite); } else { @@ -358,7 +358,7 @@ static void AnimUnused_80A9E44(struct Sprite *sprite) } } -static void AnimUnused_80A9E44_Step(struct Sprite *sprite) +static void AnimFlashingCircleImpact_Step(struct Sprite *sprite) { sprite->pos2.x = Cos(sprite->data[0], 32); sprite->pos2.y = Sin(sprite->data[0], 8); From be84499b56c26d11d75fc385b5b3596f4a2bd338 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 14 Apr 2021 12:24:09 -0400 Subject: [PATCH 116/762] Drop static function argument names --- src/pokeblock_feed.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 793ef64dc418..47e510562cc4 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -123,24 +123,24 @@ extern const u16 gUnknown_0860F074[]; static void HandleInitBackgrounds(void); static void HandleInitWindows(void); static void LaunchPokeblockFeedTask(void); -static void SetPokeblockSpritePal(u8 pokeblockCaseId); +static void SetPokeblockSpritePal(u8); static void CalculateMonAnimLength(void); -static void DoPokeblockCaseThrowEffect(u8 spriteId, bool8 arg1); -static void StartMonJumpForPokeblock(u8 spriteId); -static void Task_PrintAtePokeblockMessage(u8 taskId); -static void Task_FadeOutPokeblockFeed(u8 taskId); +static void DoPokeblockCaseThrowEffect(u8, bool8); +static void StartMonJumpForPokeblock(u8); +static void Task_PrintAtePokeblockMessage(u8); +static void Task_FadeOutPokeblockFeed(u8); static void UpdateMonAnim(void); -static void SpriteCB_MonJumpForPokeblock(struct Sprite *sprite); +static void SpriteCB_MonJumpForPokeblock(struct Sprite *); static void CalculateMonAnimMovement(void); static void CalculateMonAnimMovementEnd(void); static bool8 InitMonAnimStage(void); static bool8 FreeMonSpriteOamMatrix(void); static bool8 DoMonAnimStep(void); -static bool8 LoadMonAndSceneGfx(struct Pokemon *mon); +static bool8 LoadMonAndSceneGfx(struct Pokemon *); static u8 CreatePokeblockSprite(void); static u8 CreatePokeblockCaseSpriteForFeeding(void); -static u8 CreateMonSprite(struct Pokemon *mon); -static void SpriteCB_ThrownPokeblock(struct Sprite* sprite); +static u8 CreateMonSprite(struct Pokemon *); +static void SpriteCB_ThrownPokeblock(struct Sprite *); EWRAM_DATA static struct PokeblockFeed *sPokeblockFeed = NULL; EWRAM_DATA static struct CompressedSpritePalette sPokeblockSpritePal = {0}; From 62abcecc54ac810dc082e5e822be4796a5064ece Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 02:04:01 -0400 Subject: [PATCH 117/762] More usage of DISPLAY constants --- src/battle_anim_effects_2.c | 11 +-- src/battle_anim_effects_3.c | 26 +++--- src/battle_anim_flying.c | 6 +- src/battle_anim_ghost.c | 12 +-- src/battle_anim_ground.c | 4 +- src/battle_anim_ice.c | 14 ++-- src/battle_anim_psychic.c | 2 +- src/battle_anim_rock.c | 4 +- src/battle_anim_throw.c | 2 +- src/battle_anim_water.c | 4 +- src/battle_controller_link_opponent.c | 4 +- src/battle_controller_link_partner.c | 2 +- src/battle_controller_opponent.c | 4 +- src/battle_controller_player.c | 6 +- src/battle_controller_player_partner.c | 2 +- src/battle_controller_recorded_opponent.c | 4 +- src/battle_controller_recorded_player.c | 2 +- src/battle_controller_safari.c | 2 +- src/battle_controller_wally.c | 4 +- src/battle_dome.c | 98 +++++++++++------------ src/battle_interface.c | 38 ++++----- src/battle_intro.c | 4 +- src/battle_main.c | 12 +-- src/battle_transition.c | 34 ++++---- src/cable_car.c | 2 +- src/confetti_util.c | 4 +- src/contest.c | 8 +- src/contest_util.c | 44 +++++----- src/evolution_graphics.c | 2 +- src/field_weather_effect.c | 4 +- src/hall_of_fame.c | 4 +- src/list_menu.c | 2 +- src/main_menu.c | 10 +-- src/mevent_801BAAC.c | 4 +- src/naming_screen.c | 2 +- src/option_menu.c | 2 +- src/pokedex.c | 22 ++--- src/pokedex_cry_screen.c | 2 +- src/pokemon_storage_system.c | 2 +- src/pokenav_menu_handler_2.c | 2 +- src/rayquaza_scene.c | 4 +- src/save_failed_screen.c | 2 +- src/starter_choose.c | 6 +- src/title_screen.c | 12 +-- src/trade.c | 12 +-- src/union_room_chat.c | 4 +- src/wallclock.c | 4 +- 47 files changed, 232 insertions(+), 229 deletions(-) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 3a04c8c46208..58e2bae9f3bd 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3069,11 +3069,11 @@ static void AnimMagentaHeart(struct Sprite *sprite) void AnimTask_FakeOut(u8 taskId) { - u16 win0h = IsContest() ? 0x98 : 0xF0; + u16 win0h = IsContest() ? 152 : DISPLAY_WIDTH; u16 win0v = 0; gBattle_WIN0H = win0h; - gBattle_WIN0V = 0xA0; + gBattle_WIN0V = DISPLAY_HEIGHT; SetGpuReg(REG_OFFSET_WIN0H, gBattle_WIN0H); SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V); SetGpuReg(REG_OFFSET_WININ, 0x3F1F); @@ -3096,7 +3096,7 @@ static void AnimTask_FakeOut_Step1(u8 taskId) } else { - gBattle_WIN0H = gTasks[taskId].data[1] | (gTasks[taskId].data[0] << 8); + gBattle_WIN0H = WIN_RANGE(gTasks[taskId].data[0], gTasks[taskId].data[1]); } } @@ -3210,7 +3210,7 @@ void AnimParticleBurst(struct Sprite *sprite) static void AnimRedHeartRising(struct Sprite *sprite) { sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = 160; + sprite->pos1.y = DISPLAY_HEIGHT; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[1]; sprite->callback = WaitAnimForDuration; @@ -3464,7 +3464,8 @@ static void AnimOrbitScatter_Step(struct Sprite *sprite) { sprite->pos2.x += sprite->data[0]; sprite->pos2.y += sprite->data[1]; - if (sprite->pos1.x + sprite->pos2.x + 16 > 272u || sprite->pos1.y + sprite->pos2.y > 160 || sprite->pos1.y + sprite->pos2.y < -16) + if (sprite->pos1.x + sprite->pos2.x + 16 > ((u32)DISPLAY_WIDTH + 32) + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 67452fe908ae..800431c6a0cc 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1509,7 +1509,7 @@ static void AnimLetterZ(struct Sprite *sprite) sprite->pos2.x = sprite->data[3] / 2; sprite->pos2.y = Sin(var0 & 0xFF, 5) + (sprite->data[4] / 2); - if ((u16)(sprite->pos1.x + sprite->pos2.x) > 240) + if ((u16)(sprite->pos1.x + sprite->pos2.x) > DISPLAY_WIDTH) DestroyAnimSprite(sprite); } @@ -1676,18 +1676,18 @@ void AnimTask_CreateSpotlight(u8 taskId) { if (IsContest()) { - SetGpuReg(REG_OFFSET_WININ, 0x1F3F); - gBattle_WIN1H = 0x98F0; - gBattle_WIN1V = 0x00A0; + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ); + gBattle_WIN1H = WIN_RANGE(152, DISPLAY_WIDTH); + gBattle_WIN1V = WIN_RANGE(0, DISPLAY_HEIGHT); SetGpuReg(REG_OFFSET_WIN1H, gBattle_WIN0H); SetGpuReg(REG_OFFSET_WIN1V, gBattle_WIN0V); } else { SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ); - gBattle_WIN1H = 0x00F0; - gBattle_WIN1V = 0x78A0; - SetGpuReg(REG_OFFSET_WIN1H, 0x00F0); + gBattle_WIN1H = WIN_RANGE(0, DISPLAY_WIDTH); + gBattle_WIN1V = WIN_RANGE(120, DISPLAY_HEIGHT); + SetGpuReg(REG_OFFSET_WIN1H, gBattle_WIN1H); SetGpuReg(REG_OFFSET_WIN1V, gBattle_WIN1V); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN1_ON); } @@ -1785,13 +1785,13 @@ void AnimTask_RapinSpinMonElevation(u8 taskId) { var3 = gBattle_BG1_X; task->data[8] = var3; - var4 = var3 + 240; + var4 = var3 + DISPLAY_WIDTH; } else { var3 = gBattle_BG2_X; task->data[8] = var3; - var4 = var3 + 240; + var4 = var3 + DISPLAY_WIDTH; } task->data[9] = var4; @@ -2807,7 +2807,7 @@ static void AnimSweetScentPetal(struct Sprite *sprite) } else { - sprite->pos1.x = 240; + sprite->pos1.x = DISPLAY_WIDTH; sprite->pos1.y = gBattleAnimArgs[0] - 30; } @@ -2824,7 +2824,7 @@ static void AnimSweetScentPetal_Step(struct Sprite *sprite) sprite->pos1.x += 5; sprite->pos1.y -= 1; - if (sprite->pos1.x > 240) + if (sprite->pos1.x > DISPLAY_WIDTH) DestroyAnimSprite(sprite); sprite->pos2.y = Sin(sprite->data[0] & 0xFF, 16); @@ -5049,7 +5049,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) subpriority = gSprites[GetAnimBattlerSpriteId(ANIM_TARGET)].subpriority + 1; isBackPic = FALSE; - x = 272; + x = DISPLAY_WIDTH + 32; } else { @@ -5116,7 +5116,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) gSprites[spriteId].pos2.x = -gSprites[spriteId].pos1.x - 32; else - gSprites[spriteId].pos2.x = 272 - gSprites[spriteId].pos1.x; + gSprites[spriteId].pos2.x = DISPLAY_WIDTH + 32 - gSprites[spriteId].pos1.x; gTasks[taskId].data[0]++; break; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 5955d203e34d..9e3e6c33ee4d 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -496,7 +496,7 @@ static void AnimFlyBallAttack(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x = 272; + sprite->pos1.x = DISPLAY_WIDTH + 32; sprite->pos1.y = -32; StartSpriteAffineAnim(sprite, 1); } @@ -528,8 +528,8 @@ static void AnimFlyBallAttack_Step(struct Sprite *sprite) } if (sprite->pos1.x + sprite->pos2.x < -32 - || sprite->pos1.x + sprite->pos2.x > 272 - || sprite->pos1.y + sprite->pos2.y > 160) + || sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32 + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT) { gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; DestroyAnimSprite(sprite); diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 4b253a7ec6da..b52932b4697a 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -957,12 +957,12 @@ void AnimTask_CurseStretchingBlackBg(u8 taskId) else startX = 200; - gBattle_WIN0H = (startX << 8) | startX; + gBattle_WIN0H = WIN_RANGE(startX, startX); startY = 40; - gBattle_WIN0V = (startY << 8) | startY; + gBattle_WIN0V = WIN_RANGE(startY, startY); leftDistance = startX; - rightDistance = 240 - startX; + rightDistance = DISPLAY_WIDTH - startX; topDistance = startY; bottomDistance = 72; gTasks[taskId].data[1] = leftDistance; @@ -1001,7 +1001,7 @@ static void AnimTask_CurseStretchingBlackBg_Step1(u8 taskId) else { left = 0; - right = 240; + right = DISPLAY_WIDTH; top = 0; bottom = 112; selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); @@ -1009,8 +1009,8 @@ static void AnimTask_CurseStretchingBlackBg_Step1(u8 taskId) gTasks[taskId].func = AnimTask_CurseStretchingBlackBg_Step2; } - gBattle_WIN0H = (left << 8) | right; - gBattle_WIN0V = (top << 8) | bottom; + gBattle_WIN0H = WIN_RANGE(left, right); + gBattle_WIN0V = WIN_RANGE(top, bottom); } static void AnimTask_CurseStretchingBlackBg_Step2(u8 taskId) diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index 6dc9c58155fd..aa089394e793 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -353,7 +353,7 @@ static void AnimTask_DigBounceMovement(u8 taskId) else gBattle_BG2_Y = task->data[13] - task->data[5]; - gSprites[task->data[10]].pos2.x = 272 - gSprites[task->data[10]].pos1.x; + gSprites[task->data[10]].pos2.x = DISPLAY_WIDTH + 32 - gSprites[task->data[10]].pos1.x; task->data[0]++; } break; @@ -405,7 +405,7 @@ static void AnimTask_DigSetVisibleUnderground(u8 taskId) task->data[10] = GetAnimBattlerSpriteId(ANIM_ATTACKER); gSprites[task->data[10]].invisible = FALSE; gSprites[task->data[10]].pos2.x = 0; - gSprites[task->data[10]].pos2.y = 160 - gSprites[task->data[10]].pos1.y; + gSprites[task->data[10]].pos2.y = DISPLAY_HEIGHT - gSprites[task->data[10]].pos1.y; task->data[0]++; break; case 1: diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index b97ccf9cd24b..23b0f6c3be34 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -696,8 +696,8 @@ static void AnimSwirlingSnowball(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 - || sprite->pos1.y + sprite->pos2.y > 160 + if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) break; } @@ -762,7 +762,7 @@ static void AnimSwirlingSnowball_End(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 + if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 || sprite->pos1.y + sprite->pos2.y > 256 || sprite->pos1.y + sprite->pos2.y < -16) DestroyAnimSprite(sprite); @@ -816,8 +816,8 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite) { sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 - || sprite->pos1.y + sprite->pos2.y > 160 + if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) break; } @@ -846,8 +846,8 @@ static void AnimWiggleParticleTowardsTarget(struct Sprite *sprite) sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF; if (sprite->data[0] == 1) { - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 - || sprite->pos1.y + sprite->pos2.y > 160 + if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 + || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index 2e7844f76450..718fce396d1b 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -737,7 +737,7 @@ static void AnimTask_Teleport_Step(u8 taskId) else { gSprites[task->data[0]].invisible = TRUE; - gSprites[task->data[0]].pos1.x = 272; + gSprites[task->data[0]].pos1.x = DISPLAY_WIDTH + 32; ResetSpriteRotScale(task->data[0]); DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index c2db620634b1..3e9eafb90c0a 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -496,7 +496,7 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite) { if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x = 304; + sprite->pos1.x = DISPLAY_WIDTH + 64; gBattleAnimArgs[1] = -gBattleAnimArgs[1]; sprite->data[5] = 1; sprite->oam.matrixNum = ST_OAM_HFLIP; @@ -523,7 +523,7 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite) if (sprite->data[5] == 0) { - if (sprite->pos1.x + sprite->pos2.x > 272) + if (sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32) { sprite->callback = DestroyAnimSprite; } diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index d36f6c3f91b6..f6a48cf69baa 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -1537,7 +1537,7 @@ static void SpriteCB_Ball_Block_Step(struct Sprite *sprite) sprite->sDy = (sprite->sDy + 0x800) & 0xFF; sprite->sDx = (sprite->sDx + 0x680) & 0xFF; - if (sprite->pos1.y + sprite->pos2.y > 160 + if (sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.x + sprite->pos2.x < -8) { sprite->sFrame = 0; diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 43849645e496..d9cfeab9ae0f 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -487,8 +487,8 @@ void AnimTask_CreateRaindrops(u8 taskId) gTasks[taskId].data[0]++; if (gTasks[taskId].data[0] % gTasks[taskId].data[2] == 1) { - x = Random2() % 240; - y = Random2() % 80; + x = Random2() % DISPLAY_WIDTH; + y = Random2() % (DISPLAY_HEIGHT / 2); CreateSprite(&gRainDropSpriteTemplate, x, y, 4); } if (gTasks[taskId].data[0] == gTasks[taskId].data[3]) diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 179ae18e845e..0f612f9647b0 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -1134,7 +1134,7 @@ static void LinkOpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1302,7 +1302,7 @@ static void LinkOpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 2bb1cd914d9a..9184f5ac992e 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -1021,7 +1021,7 @@ static void LinkPartnerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 2c181c14f20d..9fce5050e8e2 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1143,7 +1143,7 @@ static void OpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; @@ -1310,7 +1310,7 @@ static void OpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index e7801d0e49c9..34fcb82f6af2 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -630,7 +630,7 @@ static u32 HandleMoveInputUnused(void) { PlaySE(SE_SELECT); gBattle_BG0_X = 0; - gBattle_BG0_Y = 0x140; + gBattle_BG0_Y = DISPLAY_HEIGHT * 2; var = 0xFF; } if (JOY_NEW(DPAD_LEFT) && gMoveSelectionCursor[gActiveBattler] & 1) @@ -2568,7 +2568,7 @@ static void HandleChooseActionAfterDma3(void) if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG0_X = 0; - gBattle_BG0_Y = 160; + gBattle_BG0_Y = DISPLAY_HEIGHT; gBattlerControllerFuncs[gActiveBattler] = HandleInputChooseAction; } } @@ -2610,7 +2610,7 @@ static void HandleChooseMoveAfterDma3(void) if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG0_X = 0; - gBattle_BG0_Y = 320; + gBattle_BG0_Y = DISPLAY_HEIGHT * 2; gBattlerControllerFuncs[gActiveBattler] = HandleInputChooseMove; } } diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index cc433a9b20e3..401ad311bb39 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -1205,7 +1205,7 @@ static void PlayerPartnerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 663d71ec7584..245e4bd307b3 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -1117,7 +1117,7 @@ static void RecordedOpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1249,7 +1249,7 @@ static void RecordedOpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index aa4154a3f980..73c23afc5fd4 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -1098,7 +1098,7 @@ static void RecordedPlayerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 0fdf32fb642a..5d8b46ebd8b3 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -442,7 +442,7 @@ static void HandleChooseActionAfterDma3(void) if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG0_X = 0; - gBattle_BG0_Y = 160; + gBattle_BG0_Y = DISPLAY_HEIGHT; gBattlerControllerFuncs[gActiveBattler] = HandleInputChooseAction; } } diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 0d15152139ce..b35ffa69248f 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -1195,7 +1195,7 @@ static void HandleChooseActionAfterDma3(void) if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG0_X = 0; - gBattle_BG0_Y = 160; + gBattle_BG0_Y = DISPLAY_HEIGHT; gBattlerControllerFuncs[gActiveBattler] = WallyHandleActions; } } @@ -1233,7 +1233,7 @@ static void WallyHandleChooseMove(void) if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG0_X = 0; - gBattle_BG0_Y = 0x140; + gBattle_BG0_Y = DISPLAY_HEIGHT * 2; gBattleStruct->wallyMovesState++; } break; diff --git a/src/battle_dome.c b/src/battle_dome.c index 4e6e6a65263f..a5cf168ef82a 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2998,7 +2998,7 @@ static void Task_ShowTourneyInfoCard(u8 taskId) if (mode == INFOCARD_MATCH) gBattle_BG2_X = 0, gBattle_BG2_Y = 0; else - gBattle_BG2_X = 0, gBattle_BG2_Y = 160; + gBattle_BG2_X = 0, gBattle_BG2_Y = DISPLAY_HEIGHT; gTasks[taskId].tState++; break; @@ -3143,7 +3143,7 @@ static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite) } else { - if (sprite->pos1.x >= 272) + if (sprite->pos1.x >= DISPLAY_WIDTH + 32) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyTrainerPicSprite(sprite->data[3]); @@ -3156,7 +3156,7 @@ static void SpriteCb_TrainerIconCardScrollRight(struct Sprite *sprite) sprite->pos1.x -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x <= 272) + if (sprite->pos1.x <= DISPLAY_WIDTH + 32) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCallbackDummy; @@ -3237,7 +3237,7 @@ static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite) } else { - if (sprite->pos1.x >= 256) + if (sprite->pos1.x >= DISPLAY_WIDTH + 16) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyMonIconSprite(sprite); @@ -3252,7 +3252,7 @@ static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite) sprite->pos1.x -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x <= 256) + if (sprite->pos1.x <= DISPLAY_WIDTH + 16) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCb_MonIcon; @@ -3439,12 +3439,12 @@ static void Task_HandleInfoCardInput(u8 taskId) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gBattle_BG1_X = 0; - gBattle_BG1_Y = 160; + gBattle_BG1_Y = DISPLAY_HEIGHT; } else { gBattle_BG0_X = 0; - gBattle_BG0_Y = 160; + gBattle_BG0_Y = DISPLAY_HEIGHT; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; } @@ -3454,13 +3454,13 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 0) { gBattle_BG2_X = 0; - gBattle_BG2_Y = 320; + gBattle_BG2_Y = DISPLAY_HEIGHT * 2; trainerTourneyId = sTourneyTreeTrainerIds[gTasks[taskId2].data[1]]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_UP, trainerTourneyId); } else { - gBattle_BG2_X = 256; + gBattle_BG2_X = DISPLAY_WIDTH + 16; gBattle_BG2_Y = 0; trainerTourneyId = sTourneyTreeTrainerIds[gTasks[taskId2].data[1]]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_UP, trainerTourneyId); @@ -3474,7 +3474,7 @@ static void Task_HandleInfoCardInput(u8 taskId) matchNo = gTasks[taskId2].data[1] - 16; BufferDomeWinString(matchNo, sInfoCard->tournamentIds); gBattle_BG2_X = 0; - gBattle_BG2_Y = 320; + gBattle_BG2_Y = DISPLAY_HEIGHT * 2; trainerTourneyId = sInfoCard->tournamentIds[0]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_UP, trainerTourneyId); } @@ -3483,14 +3483,14 @@ static void Task_HandleInfoCardInput(u8 taskId) matchNo = gTasks[taskId2].data[1] - 16; BufferDomeWinString(matchNo, sInfoCard->tournamentIds); gBattle_BG2_X = 0; - gBattle_BG2_Y = 320; + gBattle_BG2_Y = DISPLAY_HEIGHT * 2; trainerTourneyId = sInfoCard->tournamentIds[1]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_UP, trainerTourneyId); } else { - gBattle_BG2_X = 256; - gBattle_BG2_Y = 160; + gBattle_BG2_X = DISPLAY_WIDTH + 16; + gBattle_BG2_Y = DISPLAY_HEIGHT; matchNo = gTasks[taskId2].data[1] - 16; DisplayMatchInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_UP, matchNo); } @@ -3555,12 +3555,12 @@ static void Task_HandleInfoCardInput(u8 taskId) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gBattle_BG1_X = 0; - gBattle_BG1_Y = -160; + gBattle_BG1_Y = -DISPLAY_HEIGHT; } else { gBattle_BG0_X = 0; - gBattle_BG0_Y = -160; + gBattle_BG0_Y = -DISPLAY_HEIGHT; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; } @@ -3570,7 +3570,7 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 0) { gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sTourneyTreeTrainerIds[gTasks[taskId2].data[1]]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_DOWN, trainerTourneyId); } @@ -3590,7 +3590,7 @@ static void Task_HandleInfoCardInput(u8 taskId) matchNo = gTasks[taskId2].data[1] - 16; BufferDomeWinString(matchNo, sInfoCard->tournamentIds); gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sInfoCard->tournamentIds[0]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_DOWN, trainerTourneyId); } @@ -3599,13 +3599,13 @@ static void Task_HandleInfoCardInput(u8 taskId) matchNo = gTasks[taskId2].data[1] - 16; BufferDomeWinString(matchNo, sInfoCard->tournamentIds); gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sInfoCard->tournamentIds[1]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_DOWN, trainerTourneyId); } else { - gBattle_BG2_X = 256; + gBattle_BG2_X = DISPLAY_WIDTH + 16; gBattle_BG2_Y = 0; matchNo = gTasks[taskId2].data[1] - 16; DisplayMatchInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_DOWN, matchNo); @@ -3669,12 +3669,12 @@ static void Task_HandleInfoCardInput(u8 taskId) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattle_BG1_X = 256; + gBattle_BG1_X = DISPLAY_WIDTH + 16; gBattle_BG1_Y = 0; } else { - gBattle_BG0_X = 256; + gBattle_BG0_X = DISPLAY_WIDTH + 16; gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; @@ -3682,14 +3682,14 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 0) { - gBattle_BG2_X = 256; - gBattle_BG2_Y = 160; + gBattle_BG2_X = DISPLAY_WIDTH + 16; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sTourneyTreeTrainerIds[gTasks[taskId2].data[1]]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_LEFT, trainerTourneyId); } else { - gBattle_BG2_X = 256; + gBattle_BG2_X = DISPLAY_WIDTH + 16; gBattle_BG2_Y = 0; matchNo = sIdToMatchNumber[gTasks[taskId2].data[1]][sInfoCard->pos - 1]; DisplayMatchInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_LEFT, matchNo); @@ -3752,12 +3752,12 @@ static void Task_HandleInfoCardInput(u8 taskId) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattle_BG1_X = 256; + gBattle_BG1_X = DISPLAY_WIDTH + 16; gBattle_BG1_Y = 0; } else { - gBattle_BG0_X = 256; + gBattle_BG0_X = DISPLAY_WIDTH + 16; gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; @@ -3765,15 +3765,15 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 0) { - gBattle_BG2_X = 256; - gBattle_BG2_Y = 160; + gBattle_BG2_X = DISPLAY_WIDTH + 16; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sInfoCard->tournamentIds[0]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_LEFT, trainerTourneyId); } else { gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; matchNo = gTasks[taskId2].data[1] - 16; DisplayMatchInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_LEFT, matchNo); } @@ -3835,12 +3835,12 @@ static void Task_HandleInfoCardInput(u8 taskId) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattle_BG1_X = -256; + gBattle_BG1_X = -(DISPLAY_WIDTH + 16); gBattle_BG1_Y = 0; } else { - gBattle_BG0_X = -256; + gBattle_BG0_X = -(DISPLAY_WIDTH + 16); gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; @@ -3849,7 +3849,7 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 1) { gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; } else { @@ -3916,12 +3916,12 @@ static void Task_HandleInfoCardInput(u8 taskId) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattle_BG1_X = -256; + gBattle_BG1_X = -(DISPLAY_WIDTH + 16); gBattle_BG1_Y = 0; } else { - gBattle_BG0_X = -256; + gBattle_BG0_X = -(DISPLAY_WIDTH + 16); gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; @@ -3929,15 +3929,15 @@ static void Task_HandleInfoCardInput(u8 taskId) if (sInfoCard->pos == 2) { - gBattle_BG2_X = 256; - gBattle_BG2_Y = 160; + gBattle_BG2_X = DISPLAY_WIDTH + 16; + gBattle_BG2_Y = DISPLAY_HEIGHT; trainerTourneyId = sInfoCard->tournamentIds[1]; DisplayTrainerInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_RIGHT, trainerTourneyId); } else { gBattle_BG2_X = 0; - gBattle_BG2_Y = 160; + gBattle_BG2_Y = DISPLAY_HEIGHT; matchNo = gTasks[taskId2].data[1] - 16; DisplayMatchInfoOnCard(gTasks[taskId].tUsingAlternateSlot | MOVE_CARD_RIGHT, matchNo); } @@ -4248,13 +4248,13 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) if (flags & CARD_ALTERNATE_SLOT) arrId = 2 * (FRONTIER_PARTY_SIZE + 1), windowId = 9, palSlot = 2; if (flags & MOVE_CARD_RIGHT) - x = 256; + x = DISPLAY_WIDTH + 16; if (flags & MOVE_CARD_DOWN) - y = 160; + y = DISPLAY_HEIGHT; if (flags & MOVE_CARD_LEFT) - x = -256; + x = -(DISPLAY_WIDTH + 16); if (flags & MOVE_CARD_UP) - y = -160; + y = -DISPLAY_HEIGHT; // Create trainer pic sprite if (trainerId == TRAINER_PLAYER) @@ -4709,13 +4709,13 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) if (flags & CARD_ALTERNATE_SLOT) arrId = 2 * (FRONTIER_PARTY_SIZE + 1), windowId = 9, palSlot = 2; if (flags & MOVE_CARD_RIGHT) - x = 256; + x = DISPLAY_WIDTH + 16; if (flags & MOVE_CARD_DOWN) - y = 160; + y = DISPLAY_HEIGHT; if (flags & MOVE_CARD_LEFT) - x = -256; + x = -(DISPLAY_WIDTH + 16); if (flags & MOVE_CARD_UP) - y = -160; + y = -DISPLAY_HEIGHT; // Copy trainers information to handy arrays. winStringId = BufferDomeWinString(matchNo, sInfoCard->tournamentIds); @@ -5285,10 +5285,10 @@ static void Task_ShowTourneyTree(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_MOSAIC, 0); - SetGpuReg(REG_OFFSET_WIN0H, 0x5860); - SetGpuReg(REG_OFFSET_WIN0V, 0x9F); - SetGpuReg(REG_OFFSET_WIN1H, 0x9098); - SetGpuReg(REG_OFFSET_WIN1V, 0x9F); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(88, 96)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT - 1)); + SetGpuReg(REG_OFFSET_WIN1H, WIN_RANGE(144, 152)); + SetGpuReg(REG_OFFSET_WIN1V, WIN_RANGE(0, DISPLAY_HEIGHT - 1)); SetGpuReg(REG_OFFSET_WININ, 0); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR); ResetPaletteFade(); diff --git a/src/battle_interface.c b/src/battle_interface.c index cccc0b97117b..5518fd21bf30 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -330,7 +330,7 @@ static const struct SpriteTemplate sHealthbarSpriteTemplates[MAX_BATTLERS_COUNT] static const struct Subsprite sUnknown_0832C220[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -346,7 +346,7 @@ static const struct Subsprite sUnknown_0832C220[] = .priority = 1 }, { - .x = 240, + .x = DISPLAY_WIDTH, .y = 32, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -374,7 +374,7 @@ static const struct Subsprite sUnknown_0832C220[] = static const struct Subsprite sUnknown_0832C234[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -390,7 +390,7 @@ static const struct Subsprite sUnknown_0832C234[] = .priority = 1 }, { - .x = 240, + .x = DISPLAY_WIDTH, .y = 32, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -418,7 +418,7 @@ static const struct Subsprite sUnknown_0832C234[] = static const struct Subsprite sUnknown_0832C248[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -438,7 +438,7 @@ static const struct Subsprite sUnknown_0832C248[] = static const struct Subsprite sUnknown_0832C250[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -458,7 +458,7 @@ static const struct Subsprite sUnknown_0832C250[] = static const struct Subsprite sUnknown_0832C258[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -478,7 +478,7 @@ static const struct Subsprite sUnknown_0832C258[] = static const struct Subsprite sUnknown_0832C260[] = { { - .x = 240, + .x = DISPLAY_WIDTH, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -494,7 +494,7 @@ static const struct Subsprite sUnknown_0832C260[] = .priority = 1 }, { - .x = 224, + .x = DISPLAY_WIDTH - 16, .y = 0, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), @@ -869,8 +869,8 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) { - healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[0], 240, 160, 1); - healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[0], 240, 160, 1); + healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); + healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); gSprites[healthboxLeftSpriteId].oam.shape = ST_OAM_SQUARE; @@ -879,8 +879,8 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) } else { - healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[0], 240, 160, 1); - healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[0], 240, 160, 1); + healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); + healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); gSprites[healthboxRightSpriteId].oam.tileNum += 32; @@ -895,8 +895,8 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) { - healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], 240, 160, 1); - healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], 240, 160, 1); + healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); + healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); gSprites[healthboxLeftSpriteId].oam.affineParam = healthboxRightSpriteId; @@ -908,8 +908,8 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) } else { - healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], 240, 160, 1); - healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], 240, 160, 1); + healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); + healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); gSprites[healthboxLeftSpriteId].oam.affineParam = healthboxRightSpriteId; @@ -946,8 +946,8 @@ u8 CreateSafariPlayerHealthboxSprites(void) { u8 healthboxLeftSpriteId, healthboxRightSpriteId; - healthboxLeftSpriteId = CreateSprite(&sHealthboxSafariSpriteTemplate, 240, 160, 1); - healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxSafariSpriteTemplate, 240, 160, 1); + healthboxLeftSpriteId = CreateSprite(&sHealthboxSafariSpriteTemplate, DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); + healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxSafariSpriteTemplate, DISPLAY_WIDTH, DISPLAY_HEIGHT, 1); gSprites[healthboxLeftSpriteId].oam.shape = ST_OAM_SQUARE; gSprites[healthboxRightSpriteId].oam.shape = ST_OAM_SQUARE; diff --git a/src/battle_intro.c b/src/battle_intro.c index c76e5bc31d74..0ea65dab178c 100644 --- a/src/battle_intro.c +++ b/src/battle_intro.c @@ -532,8 +532,8 @@ static void BattleIntroSlidePartner(u8 taskId) SetGpuReg(REG_OFFSET_WININ, WININ_WIN1_BG1 | WININ_WIN1_BG2 | WININ_WIN1_BG3 | WININ_WIN1_OBJ | WININ_WIN1_CLR); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR | WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR); gBattle_BG0_Y = -48; - gBattle_BG1_X = 240; - gBattle_BG2_X = -240; + gBattle_BG1_X = DISPLAY_WIDTH; + gBattle_BG2_X = -DISPLAY_WIDTH; } break; case 2: diff --git a/src/battle_main.c b/src/battle_main.c index c30c929299cb..323053bdf4d2 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -611,22 +611,22 @@ static void CB2_InitBattleInternal(void) CpuFill32(0, (void*)(VRAM), VRAM_SIZE); SetGpuReg(REG_OFFSET_MOSAIC, 0); - SetGpuReg(REG_OFFSET_WIN0H, 240); - SetGpuReg(REG_OFFSET_WIN0V, 0x5051); + SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(DISPLAY_HEIGHT / 2, DISPLAY_HEIGHT / 2 + 1)); SetGpuReg(REG_OFFSET_WININ, 0); SetGpuReg(REG_OFFSET_WINOUT, 0); - gBattle_WIN0H = 240; + gBattle_WIN0H = DISPLAY_WIDTH; if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gPartnerTrainerId != TRAINER_STEVEN_PARTNER) { - gBattle_WIN0V = 159; - gBattle_WIN1H = 240; + gBattle_WIN0V = DISPLAY_HEIGHT - 1; + gBattle_WIN1H = DISPLAY_WIDTH; gBattle_WIN1V = 32; } else { - gBattle_WIN0V = 0x5051; + gBattle_WIN0V = WIN_RANGE(DISPLAY_HEIGHT / 2, DISPLAY_HEIGHT / 2 + 1); ScanlineEffect_Clear(); i = 0; diff --git a/src/battle_transition.c b/src/battle_transition.c index d47b99c862c8..ed518eaf8f64 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -1252,8 +1252,8 @@ static void sub_814669C(struct Task *task) task->tData5 = 0x4000; sTransitionStructPtr->WININ = 63; sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0H = 240; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; sTransitionStructPtr->BLDCNT = 0x3F41; sTransitionStructPtr->BLDALPHA = (task->tData1 << 8) | (task->tData2); @@ -1692,7 +1692,7 @@ static void sub_814713C(struct Sprite *sprite) } else { - if (sprite->pos1.x >= 0 && sprite->pos1.x <= 240) + if (sprite->pos1.x >= 0 && sprite->pos1.x <= DISPLAY_WIDTH) { s16 posX = sprite->pos1.x >> 3; s16 posY = sprite->pos1.y >> 3; @@ -1733,7 +1733,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func1(struct Task *task) sTransitionStructPtr->WININ = 0; sTransitionStructPtr->WINOUT = 63; sTransitionStructPtr->WIN0H = -3855; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { @@ -2001,8 +2001,8 @@ static bool8 Phase2_Wave_Func1(struct Task *task) sTransitionStructPtr->WININ = 63; sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0H = 240; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { @@ -2113,7 +2113,7 @@ static bool8 Phase2_Mugshot_Func1(struct Task *task) task->tData3 = 239; sTransitionStructPtr->WININ = 63; sTransitionStructPtr->WINOUT = 62; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { @@ -2253,7 +2253,7 @@ static bool8 Phase2_Mugshot_Func6(struct Task *task) DmaStop(0); memset(gScanlineEffectRegBuffers[0], 0, 0x140); memset(gScanlineEffectRegBuffers[1], 0, 0x140); - SetGpuReg(REG_OFFSET_WIN0H, 0xF0); + SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); SetGpuReg(REG_OFFSET_BLDY, 0); task->tState++; task->tData3 = 0; @@ -2384,7 +2384,7 @@ static void Mugshots_CreateOpponentPlayerSprites(struct Task *task) sMugshotsOpponentCoords[mugshotId][0] - 32, sMugshotsOpponentCoords[mugshotId][1] + 42, 0, gDecompressionBuffer); - task->tPlayerSpriteId = CreateTrainerSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), 272, 106, 0, gDecompressionBuffer); + task->tPlayerSpriteId = CreateTrainerSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), DISPLAY_WIDTH + 32, 106, 0, gDecompressionBuffer); opponentSprite = &gSprites[task->tOpponentSpriteId]; playerSprite = &gSprites[task->tPlayerSpriteId]; @@ -2507,7 +2507,7 @@ static bool8 Phase2_Slice_Func1(struct Task *task) task->tData3 = 1; sTransitionStructPtr->WININ = 63; sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; sTransitionStructPtr->VBlank_DMA = FALSE; for (i = 0; i < 160; i++) @@ -2608,7 +2608,7 @@ static bool8 Phase2_ShredSplit_Func1(struct Task *task) sTransitionStructPtr->WININ = 63; sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 0xA0; i++) { @@ -2780,8 +2780,8 @@ static bool8 Phase2_Blackhole_Func1(struct Task *task) sTransitionStructPtr->WININ = 0; sTransitionStructPtr->WINOUT = 63; - sTransitionStructPtr->WIN0H = 240; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 0xA0; i++) { @@ -3208,8 +3208,8 @@ static bool8 Phase2_Rayquaza_Func9(struct Task *task) sTransitionStructPtr->WININ = 0; sTransitionStructPtr->WINOUT = 63; - sTransitionStructPtr->WIN0H = 240; - sTransitionStructPtr->WIN0V = 160; + sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { @@ -3259,7 +3259,7 @@ static bool8 Phase2_WhiteFade_Func1(struct Task *task) sTransitionStructPtr->BLDY = 0; sTransitionStructPtr->WININ = 0x1E; sTransitionStructPtr->WINOUT = 0x3F; - sTransitionStructPtr->WIN0V = 0xA0; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { @@ -3470,7 +3470,7 @@ static bool8 Phase2_Shards_Func1(struct Task *task) sTransitionStructPtr->WININ = 0x3F; sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = 0xA0; + sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) { diff --git a/src/cable_car.c b/src/cable_car.c index 56118161bafe..733d10436aaa 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -684,7 +684,7 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite) break; } - if (sprite->pos1.y > 160) + if (sprite->pos1.y > DISPLAY_HEIGHT) DestroySprite(sprite); } } diff --git a/src/confetti_util.c b/src/confetti_util.c index 3bda3ab539ad..bcf19f705cec 100644 --- a/src/confetti_util.c +++ b/src/confetti_util.c @@ -210,8 +210,8 @@ u8 ConfettiUtil_Remove(u8 id) return 0xFF; memset(&sWork->array[id], 0, sizeof(struct ConfettiUtil)); - sWork->array[id].oam.y = 160; - sWork->array[id].oam.x = 240; + sWork->array[id].oam.y = DISPLAY_HEIGHT; + sWork->array[id].oam.x = DISPLAY_WIDTH; sWork->array[id].dummied = TRUE; memcpy(&gMain.oamBuffer[id + 64], &gDummyOamData, sizeof(struct OamData)); return id; diff --git a/src/contest.c b/src/contest.c index f5326663f209..246fc1e5013d 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1393,7 +1393,7 @@ static void Task_RaiseCurtainAtStart(u8 taskId) break; case 1: *(s16*)&gBattle_BG1_Y += 7; - if ((s16)gBattle_BG1_Y <= 160) + if ((s16)gBattle_BG1_Y <= DISPLAY_HEIGHT) break; gTasks[taskId].data[0]++; break; @@ -1513,8 +1513,8 @@ static void Task_ShowMoveSelectScreen(u8 taskId) u8 i; u8 moveName[32]; - gBattle_BG0_Y = 160; - gBattle_BG2_Y = 160; + gBattle_BG0_Y = DISPLAY_HEIGHT; + gBattle_BG2_Y = DISPLAY_HEIGHT; for (i = 0; i < MAX_MON_MOVES; i++) { @@ -2681,7 +2681,7 @@ static void Task_WaitForOutOfTimeMsg(u8 taskId) { SetBgForCurtainDrop(); gBattle_BG1_X = 0; - gBattle_BG1_Y = 160; + gBattle_BG1_Y = DISPLAY_HEIGHT; PlaySE12WithPanning(SE_CONTEST_CURTAIN_FALL, 0); gTasks[taskId].data[0] = 0; gTasks[taskId].func = Task_DropCurtainAtAppealsEnd; diff --git a/src/contest_util.c b/src/contest_util.c index e5fd51db1004..98854c4c6856 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -521,8 +521,8 @@ static void CB2_StartShowContestResults(void) gPaletteFade.bufferTransferDisabled = FALSE; sContestResults->data->showResultsTaskId = CreateTask(Task_ShowContestResults, 5); SetMainCallback2(CB2_ShowContestResults); - gBattle_WIN1H = 0x00F0; - gBattle_WIN1V = 0x80A0; + gBattle_WIN1H = WIN_RANGE(0, DISPLAY_WIDTH); + gBattle_WIN1V = WIN_RANGE(128, DISPLAY_HEIGHT); CreateTask(Task_SlideContestResultsBg, 20); CalculateContestantsResultData(); if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS) @@ -679,7 +679,7 @@ static void Task_AnnouncePreliminaryResults(u8 taskId) { CreateTask(Task_FlashStarsAndHearts, 20); x = DrawResultsTextWindow(gText_AnnouncingResults, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, 144, 120, 1088); + StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, 120, 1088); gTasks[taskId].tState++; } else if (gTasks[taskId].tState == 1) @@ -702,7 +702,7 @@ static void Task_AnnouncePreliminaryResults(u8 taskId) else if (gTasks[taskId].tState == 3) { x = DrawResultsTextWindow(gText_PreliminaryResults, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, 144, -1, 1088); + StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); gTasks[taskId].tState++; } else if (gTasks[taskId].tState == 4) @@ -752,7 +752,7 @@ static void Task_AnnounceRound2Results(u8 taskId) { gTasks[taskId].tTimer = 0; x = DrawResultsTextWindow(gText_Round2Results, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, 144, -1, 1088); + StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); } } else if (sContestResults->data->slidingTextBoxState == SLIDING_TEXT_ARRIVED) @@ -841,7 +841,7 @@ static void Task_AnnounceWinner(u8 taskId) StringCopy(gStringVar2, gContestMons[i].nickname); StringExpandPlaceholders(winnerTextBuffer, gText_ContestantsMonWon); x = DrawResultsTextWindow(winnerTextBuffer, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, 144, -1, 1088); + StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); gTasks[taskId].tState++; } break; @@ -864,8 +864,8 @@ static void Task_ShowWinnerMonBanner(u8 taskId) switch (gTasks[taskId].tState) { case 0: - gBattle_WIN0H = 0x00F0; - gBattle_WIN0V = 0x5050; + gBattle_WIN0H = WIN_RANGE(0, DISPLAY_WIDTH); + gBattle_WIN0V = WIN_RANGE(DISPLAY_HEIGHT / 2, DISPLAY_HEIGHT / 2); GET_CONTEST_WINNER_ID(i); species = gContestMons[i].species; @@ -892,7 +892,7 @@ static void Task_ShowWinnerMonBanner(u8 taskId) LoadCompressedSpritePalette(pokePal); SetMultiuseSpriteTemplateToPokemon(species, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.paletteTag = pokePal->tag; - spriteId = CreateSprite(&gMultiuseSpriteTemplate, 272, 80, 10); + spriteId = CreateSprite(&gMultiuseSpriteTemplate, DISPLAY_WIDTH + 32, 80, 10); gSprites[spriteId].data[1] = species; gSprites[spriteId].oam.priority = 0; gSprites[spriteId].callback = SpriteCB_WinnerMonSlideIn; @@ -912,7 +912,7 @@ static void Task_ShowWinnerMonBanner(u8 taskId) gTasks[taskId].tCounter = 32; counter = gTasks[taskId].tCounter; - gBattle_WIN0V = ((80 - counter) << 8) | (80 + counter); + gBattle_WIN0V = WIN_RANGE(DISPLAY_HEIGHT / 2 - counter, DISPLAY_HEIGHT / 2 + counter); if (counter == 32) gTasks[taskId].tState++; } @@ -934,11 +934,11 @@ static void Task_ShowWinnerMonBanner(u8 taskId) { u8 top = (gBattle_WIN0V >> 8); top += 2; - if (top > 80) - top = 80; + if (top > DISPLAY_HEIGHT / 2) + top = DISPLAY_HEIGHT / 2; - gBattle_WIN0V = (top << 8) | (160 - top); - if (top == 80) + gBattle_WIN0V = WIN_RANGE(top, DISPLAY_HEIGHT - top); + if (top == DISPLAY_HEIGHT / 2) gTasks[taskId].tState++; } break; @@ -1205,7 +1205,7 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) } RemoveWindow(windowId); - return (240 - (strWidth + 2) * 8) / 2; + return (DISPLAY_WIDTH - (strWidth + 2) * 8) / 2; } static void LoadContestResultSprites(void) @@ -1221,7 +1221,7 @@ static void LoadContestResultSprites(void) LoadSpritePalette(&sUnknown_0858D850); for (i = 0; i < (int)ARRAY_COUNT(sUnknown_0858D810); i++) { - spriteIds[i] = CreateSprite(&template, 272, 144, 10); + spriteIds[i] = CreateSprite(&template, DISPLAY_WIDTH + 32, DISPLAY_HEIGHT - 16, 10); template.tileTag++; } @@ -1248,7 +1248,7 @@ static void LoadContestResultSprites(void) static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrement) { struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId]; - sprite->pos1.x = 272; + sprite->pos1.x = DISPLAY_WIDTH + 32; sprite->pos1.y = y; sprite->pos2.x = 0; sprite->pos2.y = 0; @@ -1275,8 +1275,8 @@ static void StartTextBoxSlideOut(u16 slideIncrement) static void EndTextBoxSlideOut(struct Sprite *sprite) { - sprite->pos1.x = 272; - sprite->pos1.y = 144; + sprite->pos1.x = DISPLAY_WIDTH + 32; + sprite->pos1.y = DISPLAY_HEIGHT - 16; sprite->pos2.y = 0; sprite->pos2.x = 0; sprite->callback = SpriteCallbackDummy; @@ -1353,8 +1353,8 @@ static void ShowLinkResultsTextBox(const u8 *text) gSprites[sprite->data[i]].invisible = FALSE; } - gBattle_WIN0H = 0x00F0; - gBattle_WIN0V = ((sprite->pos1.y - 16) << 8) | (sprite->pos1.y + 16); + gBattle_WIN0H = WIN_RANGE(0, DISPLAY_WIDTH); + gBattle_WIN0V = WIN_RANGE(sprite->pos1.y - 16, sprite->pos1.y + 16); SetGpuReg(REG_OFFSET_WININ, WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR | WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR); } @@ -1600,7 +1600,7 @@ static void Task_CreateConfetti(u8 taskId) gTasks[taskId].data[0] = 0; if (sContestResults->data->confettiCount < 40) { - u8 spriteId = CreateSprite(&sSpriteTemplate_Confetti, (Random() % 240) - 20, 44, 5); + u8 spriteId = CreateSprite(&sSpriteTemplate_Confetti, (Random() % DISPLAY_WIDTH) - 20, 44, 5); gSprites[spriteId].data[0] = Random() % 512; gSprites[spriteId].data[1] = (Random() % 24) + 16; gSprites[spriteId].data[2] = (Random() % 256) + 48; diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index a66a7a28d10a..2a3aaa9e8c55 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -55,7 +55,7 @@ static const struct SpritePalette sEvoSparkleSpritePals[] = static const struct OamData sOamData_EvoSparkle = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 63043885d477..90f867410aa4 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -1537,8 +1537,8 @@ void Ash_InitAll(void) void Ash_Main(void) { gWeatherPtr->ashBaseSpritesX = gSpriteCoordOffsetX & 0x1FF; - while (gWeatherPtr->ashBaseSpritesX >= 240) - gWeatherPtr->ashBaseSpritesX -= 240; + while (gWeatherPtr->ashBaseSpritesX >= DISPLAY_WIDTH) + gWeatherPtr->ashBaseSpritesX -= DISPLAY_WIDTH; switch (gWeatherPtr->initStep) { diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 037acd09c629..3eb8d3f0ad61 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -1398,7 +1398,7 @@ static bool8 CreateHofConfettiSprite(void) u8 spriteID; struct Sprite* sprite; - s16 posX = Random() % 240; + s16 posX = Random() % DISPLAY_WIDTH; s16 posY = -(Random() % 8); spriteID = CreateSprite(&sSpriteTemplate_HofConfetti, posX, posY, 0); @@ -1505,7 +1505,7 @@ static void Task_DoDomeConfetti(u8 taskId) id = ConfettiUtil_AddNew(&sOamData_Confetti, TAG_CONFETTI, TAG_CONFETTI, - Random() % 240, + Random() % DISPLAY_WIDTH, -(Random() % 8), Random() % ARRAY_COUNT(sAnims_Confetti), id); diff --git a/src/list_menu.c b/src/list_menu.c index 79ea1fde0a12..9ac9b87abb12 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -679,7 +679,7 @@ static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind) struct CursorStruct cursor; cursor.left = 0; - cursor.top = 160; + cursor.top = DISPLAY_HEIGHT; cursor.rowWidth = GetWindowAttribute(list->template.windowId, WINDOW_WIDTH) * 8 + 2; cursor.rowHeight = GetFontAttribute(list->template.fontId, FONTATTR_MAX_LETTER_HEIGHT) + 2; cursor.tileTag = 0x4000; diff --git a/src/main_menu.c b/src/main_menu.c index d2ec55d3e056..38859b860291 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -896,8 +896,8 @@ static bool8 HandleMainMenuInput(u8 taskId) { PlaySE(SE_SELECT); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_WHITEALPHA); - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT)); gTasks[taskId].func = Task_HandleMainMenuBPressed; } else if ((JOY_NEW(DPAD_UP)) && tCurrItem > 0) @@ -1547,7 +1547,7 @@ static void Task_NewGameBirchSpeech_SlideOutOldGenderSprite(u8 taskId) spriteId = gTasks[taskId].tMaySpriteId; else spriteId = gTasks[taskId].tBrendanSpriteId; - gSprites[spriteId].pos1.x = 240; + gSprites[spriteId].pos1.x = DISPLAY_WIDTH; gSprites[spriteId].pos1.y = 60; gSprites[spriteId].invisible = FALSE; gTasks[taskId].tPlayerSpriteId = spriteId; @@ -2129,8 +2129,8 @@ static void CreateMainMenuErrorWindow(const u8* str) PutWindowTilemap(7); CopyWindowToVram(7, 2); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[7], MAIN_MENU_BORDER_TILE); - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(9, 231)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(113, 159)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(9, DISPLAY_WIDTH - 9)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(113, DISPLAY_HEIGHT - 1)); } static void MainMenu_FormatSavegameText(void) diff --git a/src/mevent_801BAAC.c b/src/mevent_801BAAC.c index 2afb9ea70c67..a64f65e03fc5 100644 --- a/src/mevent_801BAAC.c +++ b/src/mevent_801BAAC.c @@ -584,8 +584,8 @@ s32 FadeToWonderNewsMenu(void) ChangeBgY(1, 0, 0); ChangeBgY(2, 0, 0); ChangeBgY(3, 0, 0); - SetGpuReg(REG_OFFSET_WIN0H, 0xF0); - SetGpuReg(REG_OFFSET_WIN0V, 0x1A98); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(26, 152)); SetGpuReg(REG_OFFSET_WININ, 0x1F); SetGpuReg(REG_OFFSET_WINOUT, 0x1B); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); diff --git a/src/naming_screen.c b/src/naming_screen.c index b594fe106015..3c8478e04a4b 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -475,7 +475,7 @@ static void NamingScreen_Init(void) sNamingScreen->bgToHide = 1; sNamingScreen->template = sNamingScreenTemplates[sNamingScreen->templateNum]; sNamingScreen->currentPage = sNamingScreen->template->initialPage; - sNamingScreen->inputCharBaseXPos = (240 - sNamingScreen->template->maxChars * 8) / 2 + 6; + sNamingScreen->inputCharBaseXPos = (DISPLAY_WIDTH - sNamingScreen->template->maxChars * 8) / 2 + 6; if (sNamingScreen->templateNum == NAMING_SCREEN_WALDA) sNamingScreen->inputCharBaseXPos += 11; sNamingScreen->keyRepeatStartDelayCopy = gKeyRepeatStartDelay; diff --git a/src/option_menu.c b/src/option_menu.c index 936aff923370..ec66e827a811 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -381,7 +381,7 @@ static void Task_OptionMenuFadeOut(u8 taskId) static void HighlightOptionMenuItem(u8 index) { - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(16, 224)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(16, DISPLAY_WIDTH - 16)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(index * 16 + 40, index * 16 + 56)); } diff --git a/src/pokedex.c b/src/pokedex.c index 2d371f937253..9386a8b33835 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -305,7 +305,7 @@ static void ClearSearchParameterBoxText(void); static const struct OamData sOamData_ScrollBar = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -322,7 +322,7 @@ static const struct OamData sOamData_ScrollBar = static const struct OamData sOamData_ScrollArrow = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -339,7 +339,7 @@ static const struct OamData sOamData_ScrollArrow = static const struct OamData sOamData_InterfaceText = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -356,7 +356,7 @@ static const struct OamData sOamData_InterfaceText = static const struct OamData sOamData_RotatingPokeBall = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_WINDOW, .mosaic = 0, @@ -373,7 +373,7 @@ static const struct OamData sOamData_RotatingPokeBall = static const struct OamData sOamData_SeenOwnText = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -390,7 +390,7 @@ static const struct OamData sOamData_SeenOwnText = static const struct OamData sOamData_Dex8x16 = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -2768,7 +2768,7 @@ static void CreateInterfaceSprites(u8 page) // Scroll arrows spriteId = CreateSprite(&sScrollArrowSpriteTemplate, 184, 4, 0); gSprites[spriteId].sIsDownArrow = FALSE; - spriteId = CreateSprite(&sScrollArrowSpriteTemplate, 184, 156, 0); + spriteId = CreateSprite(&sScrollArrowSpriteTemplate, 184, DISPLAY_HEIGHT - 4, 0); gSprites[spriteId].sIsDownArrow = TRUE; gSprites[spriteId].vFlip = TRUE; @@ -2779,20 +2779,20 @@ static void CreateInterfaceSprites(u8 page) spriteId = CreateSprite(&sInterfaceTextSpriteTemplate, 48, 120, 0); StartSpriteAnim(&gSprites[spriteId], 3); // Select button - spriteId = CreateSprite(&sInterfaceTextSpriteTemplate, 16, 144, 0); + spriteId = CreateSprite(&sInterfaceTextSpriteTemplate, 16, DISPLAY_HEIGHT - 16, 0); StartSpriteAnim(&gSprites[spriteId], 2); gSprites[spriteId].data[2] = 0x80; // Search text - spriteId = CreateSprite(&sInterfaceTextSpriteTemplate, 48, 144, 0); + spriteId = CreateSprite(&sInterfaceTextSpriteTemplate, 48, DISPLAY_HEIGHT - 16, 0); StartSpriteAnim(&gSprites[spriteId], 1); - spriteId = CreateSprite(&sRotatingPokeBallSpriteTemplate, 0, 80, 2); + spriteId = CreateSprite(&sRotatingPokeBallSpriteTemplate, 0, DISPLAY_HEIGHT / 2, 2); gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 30; gSprites[spriteId].data[0] = 30; gSprites[spriteId].data[1] = 0; - spriteId = CreateSprite(&sRotatingPokeBallSpriteTemplate, 0, 80, 2); + spriteId = CreateSprite(&sRotatingPokeBallSpriteTemplate, 0, DISPLAY_HEIGHT / 2, 2); gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 31; gSprites[spriteId].data[0] = 31; diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index 0a6f639ae8a0..447ce7515b93 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -188,7 +188,7 @@ static const union AnimCmd *const sSpriteAnimTable_CryMeterNeedle[] = static const struct OamData sOamData_CryMeterNeedle = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, .bpp = ST_OAM_4BPP, diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 0a35aa323a9f..d3ec36c9ea5b 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -4836,7 +4836,7 @@ static void CreatePartyMonsSprites(bool8 arg0) { for (i = 0; i < count; i++) { - sPSSData->partySprites[i]->pos1.y -= 160; + sPSSData->partySprites[i]->pos1.y -= DISPLAY_HEIGHT; sPSSData->partySprites[i]->invisible = TRUE; } } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index eea8131a9602..2ba83b23ccd4 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -1223,7 +1223,7 @@ static void SetupPokenavMenuScanlineEffects(void) SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); SetGpuRegBits(REG_OFFSET_WININ, 0x3F); SetGpuRegBits(REG_OFFSET_WINOUT, 0x1F); - SetGpuRegBits(REG_OFFSET_WIN0V, 0xA0); + SetGpuRegBits(REG_OFFSET_WIN0V, DISPLAY_HEIGHT); ScanlineEffect_Stop(); SetMenuOptionGlow(); ScanlineEffect_SetParams(sPokenavMainMenuScanlineEffectParams); diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 101916f132b4..24e76e1c9e97 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -1860,7 +1860,7 @@ static void SpriteCB_DuoFight_Groudon(struct Sprite *sprite) static void DuoFight_SlideGroudonDown(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->pos1.y <= 160) + if (sprite->pos1.y <= DISPLAY_HEIGHT) { sprite->pos1.y += 8; gSprites[sprite->sGroudonBodySpriteId].pos1.y += 8; @@ -1965,7 +1965,7 @@ static void SpriteCB_DuoFight_Kyogre(struct Sprite *sprite) static void DuoFight_SlideKyogreDown(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->pos1.y <= 160) + if (sprite->pos1.y <= DISPLAY_HEIGHT) { sprite->pos1.y += 8; gSprites[sprite->data[0] >> 8].pos1.y += 8; diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 529bb75e7f38..8f727310cdf9 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -47,7 +47,7 @@ static EWRAM_DATA u8 sUnused2[4] = {0}; static const struct OamData sClockOamData = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, diff --git a/src/starter_choose.c b/src/starter_choose.c index 4b582f839f25..92cb2d48cfa5 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -157,7 +157,7 @@ static const u8 sTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_ static const struct OamData sOam_Hand = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -174,7 +174,7 @@ static const struct OamData sOam_Hand = static const struct OamData sOam_Pokeball = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -191,7 +191,7 @@ static const struct OamData sOam_Pokeball = static const struct OamData sOam_StarterCircle = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, diff --git a/src/title_screen.c b/src/title_screen.c index f2c609fecc4b..9752cc61129e 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -105,7 +105,7 @@ const u16 gTitleScreenAlphaBlend[64] = static const struct OamData sVersionBannerLeftOamData = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -122,7 +122,7 @@ static const struct OamData sVersionBannerLeftOamData = static const struct OamData sVersionBannerRightOamData = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -193,7 +193,7 @@ static const struct CompressedSpriteSheet sSpriteSheet_EmeraldVersion[] = static const struct OamData sOamData_CopyrightBanner = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -305,7 +305,7 @@ static const struct SpritePalette sSpritePalette_PressStart[] = static const struct OamData sPokemonLogoShineOamData = { - .y = 160, + .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -430,7 +430,7 @@ static void CreateCopyrightBanner(s16 x, s16 y) static void SpriteCB_PokemonLogoShine(struct Sprite *sprite) { - if (sprite->pos1.x < 272) + if (sprite->pos1.x < DISPLAY_WIDTH + 32) { if (sprite->data[0]) // Flash background { @@ -473,7 +473,7 @@ static void SpriteCB_PokemonLogoShine(struct Sprite *sprite) static void SpriteCB_PokemonLogoShine2(struct Sprite *sprite) { - if (sprite->pos1.x < 272) + if (sprite->pos1.x < DISPLAY_WIDTH + 32) sprite->pos1.x += 8; else DestroySprite(sprite); diff --git a/src/trade.c b/src/trade.c index f423b20af972..cb3db3c18f29 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1318,8 +1318,8 @@ static void TradeMenuMoveCursor(u8 *cursorPosition, u8 direction) if (newPosition == (PARTY_SIZE * 2)) // CANCEL { StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteIdx], 1); - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.x = 224; - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.y = 160; + gSprites[sTradeMenuData->cursorSpriteIdx].pos1.x = DISPLAY_WIDTH - 16; + gSprites[sTradeMenuData->cursorSpriteIdx].pos1.y = DISPLAY_HEIGHT; } else { @@ -3496,7 +3496,8 @@ static bool8 AnimateTradeSequenceCable(void) case 38: gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y -= 3; gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -160 && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -163) + if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT + && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } @@ -3994,7 +3995,8 @@ static bool8 AnimateTradeSequenceWireless(void) case 38: gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y -= 3; gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -160 && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -163) + if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT + && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } @@ -4833,7 +4835,7 @@ static void c3_0805465C(u8 taskId) { sTradeData->wirelessWinLeft = sTradeData->wirelessWinRight = 120; sTradeData->wirelessWinTop = 0; - sTradeData->wirelessWinBottom = 160; + sTradeData->wirelessWinBottom = DISPLAY_HEIGHT; SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_OBJ); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG0 | diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 3733abe1e9d6..fb875bbb4c5d 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -3011,8 +3011,8 @@ static void ResetGpuBgState(void) SetGpuReg(REG_OFFSET_BLDCNT, 0); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(64, 240)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 144)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(64, DISPLAY_WIDTH)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT - 16)); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG0 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR); diff --git a/src/wallclock.c b/src/wallclock.c index 4d1c1fd8fb09..70888ac5fb4d 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -147,7 +147,7 @@ static const struct SpritePalette sSpritePalettes_Clock[] = static const struct OamData sOam_ClockHand = { - .y = 160, + .y = DISPLAY_HEIGHT, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), .priority = 1, @@ -199,7 +199,7 @@ static const struct SpriteTemplate sSpriteTemplate_HourHand = static const struct OamData sOam_PeriodIndicator = { - .y = 160, + .y = DISPLAY_HEIGHT, .shape = SPRITE_SHAPE(16x16), .size = SPRITE_SIZE(16x16), .priority = 3, From 8368b753dfb2ca77d90ec0cc32e62410961d6ed6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 02:43:09 -0400 Subject: [PATCH 118/762] More usage of WININ/OUT constants --- src/battle_anim_effects_2.c | 4 ++-- src/battle_bg.c | 4 ++-- src/field_weather_effect.c | 2 +- src/mevent_801BAAC.c | 4 ++-- src/option_menu.c | 4 ++-- src/pokedex.c | 4 ++-- src/pokenav_menu_handler_2.c | 4 ++-- src/title_screen.c | 4 ++-- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 58e2bae9f3bd..92bca01f2777 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3076,8 +3076,8 @@ void AnimTask_FakeOut(u8 taskId) gBattle_WIN0V = DISPLAY_HEIGHT; SetGpuReg(REG_OFFSET_WIN0H, gBattle_WIN0H); SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V); - SetGpuReg(REG_OFFSET_WININ, 0x3F1F); - SetGpuReg(REG_OFFSET_WINOUT, 0x3F3F); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN1_ALL); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_ALL | WINOUT_WINOBJ_ALL); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG3 | BLDCNT_EFFECT_DARKEN); SetGpuReg(REG_OFFSET_BLDY, 0x10); gTasks[taskId].data[0] = win0v; diff --git a/src/battle_bg.c b/src/battle_bg.c index 571080aea109..ae5d2777924a 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -1134,8 +1134,8 @@ void DrawBattleEntryBackground(void) CopyToBgTilemapBuffer(2, gUnknown_08D779D8, 0, 0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); - SetGpuReg(REG_OFFSET_WININ, 0x36); - SetGpuReg(REG_OFFSET_WINOUT, 0x36); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_OBJ | WININ_WIN0_CLR); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR); gBattle_BG1_Y = 0xFF5C; gBattle_BG2_Y = 0xFF5C; LoadCompressedSpriteSheetUsingHeap(&sVsLettersSpriteSheet); diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 90f867410aa4..0d1e6958cb88 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -306,7 +306,7 @@ static void UpdateDroughtBlend(u8 taskId) task->tBlendY = 0; task->tBlendDelay = 0; task->tWinRange = REG_WININ; - SetGpuReg(REG_OFFSET_WININ, WIN_RANGE(63, 63)); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ | BLDCNT_EFFECT_LIGHTEN); SetGpuReg(REG_OFFSET_BLDY, 0); task->tState++; diff --git a/src/mevent_801BAAC.c b/src/mevent_801BAAC.c index a64f65e03fc5..a3e6ee0b6451 100644 --- a/src/mevent_801BAAC.c +++ b/src/mevent_801BAAC.c @@ -586,8 +586,8 @@ s32 FadeToWonderNewsMenu(void) ChangeBgY(3, 0, 0); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(26, 152)); - SetGpuReg(REG_OFFSET_WININ, 0x1F); - SetGpuReg(REG_OFFSET_WINOUT, 0x1B); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); break; case 2: diff --git a/src/option_menu.c b/src/option_menu.c index ec66e827a811..a210c9502da9 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -185,8 +185,8 @@ void CB2_InitOptionMenu(void) DeactivateAllTextPrinters(); SetGpuReg(REG_OFFSET_WIN0H, 0); SetGpuReg(REG_OFFSET_WIN0V, 0); - SetGpuReg(REG_OFFSET_WININ, 1); - SetGpuReg(REG_OFFSET_WINOUT, 35); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG0); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_CLR); SetGpuReg(REG_OFFSET_BLDCNT, 193); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 4); diff --git a/src/pokedex.c b/src/pokedex.c index 9386a8b33835..c7c892d5359d 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2109,8 +2109,8 @@ static bool8 LoadPokedexListPage(u8 page) gMain.state++; break; case 5: - SetGpuReg(REG_OFFSET_WININ, 0x3F3F); - SetGpuReg(REG_OFFSET_WINOUT, 0x1D3F); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_ALL | WINOUT_WINOBJ_BG0 | WINOUT_WINOBJ_BG2 | WINOUT_WINOBJ_BG3 | WINOUT_WINOBJ_OBJ); SetGpuReg(REG_OFFSET_WIN0H, 0); SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WIN1H, 0); diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index 2ba83b23ccd4..8cd2a6b2fbf6 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -1221,8 +1221,8 @@ static void SetupPokenavMenuScanlineEffects(void) SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_OBJ | BLDCNT_EFFECT_LIGHTEN); SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); - SetGpuRegBits(REG_OFFSET_WININ, 0x3F); - SetGpuRegBits(REG_OFFSET_WINOUT, 0x1F); + SetGpuRegBits(REG_OFFSET_WININ, WININ_WIN0_ALL); + SetGpuRegBits(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ); SetGpuRegBits(REG_OFFSET_WIN0V, DISPLAY_HEIGHT); ScanlineEffect_Stop(); SetMenuOptionGlow(); diff --git a/src/title_screen.c b/src/title_screen.c index 9752cc61129e..21d10495c8c5 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -596,8 +596,8 @@ void CB2_InitTitleScreen(void) SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WIN1H, 0); SetGpuReg(REG_OFFSET_WIN1V, 0); - SetGpuReg(REG_OFFSET_WININ, 0x1F1F); - SetGpuReg(REG_OFFSET_WINOUT, 0x3F1F); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WINOBJ_ALL); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_LIGHTEN); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0xC); From f94540c2b875cff0085149b95728d2f0a0c610eb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 03:00:01 -0400 Subject: [PATCH 119/762] Misc reg constant cleanup --- src/battle_anim_effects_2.c | 2 +- src/battle_anim_ghost.c | 2 +- src/battle_main.c | 2 +- src/battle_transition.c | 48 ++++++++++++++++++------------------- src/berry_blender.c | 4 ++-- src/diploma.c | 34 +++++++++++++------------- src/evolution_scene.c | 2 +- src/option_menu.c | 2 +- src/title_screen.c | 2 +- 9 files changed, 49 insertions(+), 49 deletions(-) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 92bca01f2777..5dd584386e66 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3079,7 +3079,7 @@ void AnimTask_FakeOut(u8 taskId) SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN1_ALL); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_ALL | WINOUT_WINOBJ_ALL); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG3 | BLDCNT_EFFECT_DARKEN); - SetGpuReg(REG_OFFSET_BLDY, 0x10); + SetGpuReg(REG_OFFSET_BLDY, 16); gTasks[taskId].data[0] = win0v; gTasks[taskId].data[1] = win0h; gTasks[taskId].func = AnimTask_FakeOut_Step1; diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index b52932b4697a..e7cd4b253909 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -950,7 +950,7 @@ void AnimTask_CurseStretchingBlackBg(u8 taskId) SetGpuReg(REG_OFFSET_WINOUT, ((WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ) | (WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR))); SetGpuReg(REG_OFFSET_BLDCNT, (BLDCNT_TGT1_BG3 | BLDCNT_EFFECT_DARKEN)); - SetGpuReg(REG_OFFSET_BLDY, 0x10); + SetGpuReg(REG_OFFSET_BLDY, 16); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER || IsContest()) startX = 40; diff --git a/src/battle_main.c b/src/battle_main.c index 323053bdf4d2..741461b0b26f 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -2047,7 +2047,7 @@ static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 fir void sub_8038A04(void) // unused { if (REG_VCOUNT < 0xA0 && REG_VCOUNT >= 0x6F) - SetGpuReg(REG_OFFSET_BG0CNT, 0x9800); + SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_SCREENBASE(24) | BGCNT_TXT256x512); } void VBlankCB_Battle(void) diff --git a/src/battle_transition.c b/src/battle_transition.c index ed518eaf8f64..1b484f7c50f9 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -1250,12 +1250,12 @@ static void sub_814669C(struct Task *task) task->tData2 = 0; task->tData4 = 0; task->tData5 = 0x4000; - sTransitionStructPtr->WININ = 63; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; sTransitionStructPtr->WINOUT = 0; sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; - sTransitionStructPtr->BLDCNT = 0x3F41; - sTransitionStructPtr->BLDALPHA = (task->tData1 << 8) | (task->tData2); + sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; + sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); for (i = 0; i < 160; i++) { @@ -1480,7 +1480,7 @@ static bool8 Phase2_BigPokeball_Func3(struct Task *task) task->tData2++; task->tData3 = 2; } - sTransitionStructPtr->BLDALPHA = (task->tData1 << 8) | task->tData2; + sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); if (task->tData2 > 15) task->tState++; task->tData4 += 8; @@ -1500,7 +1500,7 @@ static bool8 Phase2_BigPokeball_Func4(struct Task *task) task->tData1--; task->tData3 = 2; } - sTransitionStructPtr->BLDALPHA = (task->tData1 << 8) | task->tData2; + sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); if (task->tData1 == 0) task->tState++; task->tData4 += 8; @@ -1731,7 +1731,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func1(struct Task *task) ScanlineEffect_Clear(); sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = 63; + sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; sTransitionStructPtr->WIN0H = -3855; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -1999,7 +1999,7 @@ static bool8 Phase2_Wave_Func1(struct Task *task) InitTransitionStructVars(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = 63; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; sTransitionStructPtr->WINOUT = 0; sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -2111,8 +2111,8 @@ static bool8 Phase2_Mugshot_Func1(struct Task *task) task->tData1 = 0; task->tData2 = 1; task->tData3 = 239; - sTransitionStructPtr->WININ = 63; - sTransitionStructPtr->WINOUT = 62; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; + sTransitionStructPtr->WINOUT = WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) @@ -2258,7 +2258,7 @@ static bool8 Phase2_Mugshot_Func6(struct Task *task) task->tState++; task->tData3 = 0; task->tData4 = 0; - sTransitionStructPtr->BLDCNT = 0xBF; + sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; SetVBlankCallback(VBlankCB1_Phase2_Mugshots); } return FALSE; @@ -2505,7 +2505,7 @@ static bool8 Phase2_Slice_Func1(struct Task *task) task->tData2 = 256; task->tData3 = 1; - sTransitionStructPtr->WININ = 63; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; sTransitionStructPtr->WINOUT = 0; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; sTransitionStructPtr->VBlank_DMA = FALSE; @@ -2606,7 +2606,7 @@ static bool8 Phase2_ShredSplit_Func1(struct Task *task) InitTransitionStructVars(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = 63; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; sTransitionStructPtr->WINOUT = 0; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -2779,7 +2779,7 @@ static bool8 Phase2_Blackhole_Func1(struct Task *task) ScanlineEffect_Clear(); sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = 63; + sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -3116,7 +3116,7 @@ static bool8 Phase2_Rayquaza_Func3(struct Task *task) InitTransitionStructVars(); ScanlineEffect_Clear(); - SetGpuReg(REG_OFFSET_BG0CNT, 0x9A08); + SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_TXT256x512); GetBg0TilesDst(&tilemap, &tileset); CpuFill16(0, tilemap, 0x800); CpuCopy16(sRayquaza_Tileset, tileset, 0x2000); @@ -3207,7 +3207,7 @@ static bool8 Phase2_Rayquaza_Func9(struct Task *task) u16 i; sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = 63; + sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -3255,10 +3255,10 @@ static bool8 Phase2_WhiteFade_Func1(struct Task *task) InitTransitionStructVars(); ScanlineEffect_Clear(); - sTransitionStructPtr->BLDCNT = 0xBF; + sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; sTransitionStructPtr->BLDY = 0; - sTransitionStructPtr->WININ = 0x1E; - sTransitionStructPtr->WINOUT = 0x3F; + sTransitionStructPtr->WININ = WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ; + sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < 160; i++) @@ -3314,10 +3314,10 @@ static bool8 Phase2_WhiteFade_Func4(struct Task *task) SetVBlankCallback(0); SetHBlankCallback(0); - sTransitionStructPtr->WIN0H = 0xF0; + sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; sTransitionStructPtr->BLDY = 0; sTransitionStructPtr->BLDCNT = 0xFF; - sTransitionStructPtr->WININ = 0x3F; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; SetVBlankCallback(VBlankCB1_Phase2_WhiteFade); @@ -3468,7 +3468,7 @@ static bool8 Phase2_Shards_Func1(struct Task *task) InitTransitionStructVars(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = 0x3F; + sTransitionStructPtr->WININ = WININ_WIN0_ALL; sTransitionStructPtr->WINOUT = 0; sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; @@ -3895,8 +3895,8 @@ static bool8 Phase2_FrontierLogoWave_Func1(struct Task *task) task->tData5 = 0; task->tData6 = 16; task->tData7 = 2560; - sTransitionStructPtr->BLDCNT = 0x3F41; - sTransitionStructPtr->BLDALPHA = (task->tData6 << 8) | (task->tData5); + sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; + sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData5, task->tData6); REG_BLDCNT = sTransitionStructPtr->BLDCNT; REG_BLDALPHA = sTransitionStructPtr->BLDALPHA; GetBg0TilesDst(&tilemap, &tileset); @@ -3965,7 +3965,7 @@ static bool8 Phase2_FrontierLogoWave_Func4(struct Task *task) else if (task->tData6 > 0) task->tData6--; - sTransitionStructPtr->BLDALPHA = (task->tData6 << 8) | (task->tData5); + sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData5, task->tData6); } for (i = 0; i < 160; i++, var6 += var8) diff --git a/src/berry_blender.c b/src/berry_blender.c index 39e1dca083fe..d47aa707ddf7 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1426,7 +1426,7 @@ static void CB2_StartBlenderLink(void) sBerryBlender->centerScale += 4; if (sBerryBlender->centerScale > 255) { - SetGpuRegBits(REG_OFFSET_BG2CNT, 2); + SetGpuRegBits(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2)); sBerryBlender->mainState++; sBerryBlender->centerScale = 256; sBerryBlender->arrowPos = sArrowStartPos[sArrowStartPosIds[sBerryBlender->numPlayers - 2]]; @@ -1726,7 +1726,7 @@ static void CB2_StartBlenderLocal(void) sBerryBlender->mainState++; sBerryBlender->centerScale = 256; sBerryBlender->arrowPos = sArrowStartPos[sArrowStartPosIds[sBerryBlender->numPlayers - 2]]; - SetGpuRegBits(REG_OFFSET_BG2CNT, 2); + SetGpuRegBits(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2)); sBerryBlender->framesToWait = 0; PlaySE(SE_TRUCK_DOOR); PrintPlayerNames(); diff --git a/src/diploma.c b/src/diploma.c index 8652430e764a..dca0912e3654 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -51,18 +51,18 @@ void CB2_ShowDiploma(void) { SetVBlankCallback(NULL); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG3CNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG2CNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG1CNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG0CNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG3HOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG3VOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG2HOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG2VOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG1HOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG1VOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG0HOFS, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BG0VOFS, DISPCNT_MODE_0); + SetGpuReg(REG_OFFSET_BG3CNT, 0); + SetGpuReg(REG_OFFSET_BG2CNT, 0); + SetGpuReg(REG_OFFSET_BG1CNT, 0); + SetGpuReg(REG_OFFSET_BG0CNT, 0); + SetGpuReg(REG_OFFSET_BG3HOFS, 0); + SetGpuReg(REG_OFFSET_BG3VOFS, 0); + SetGpuReg(REG_OFFSET_BG2HOFS, 0); + SetGpuReg(REG_OFFSET_BG2VOFS, 0); + SetGpuReg(REG_OFFSET_BG1HOFS, 0); + SetGpuReg(REG_OFFSET_BG1VOFS, 0); + SetGpuReg(REG_OFFSET_BG0HOFS, 0); + SetGpuReg(REG_OFFSET_BG0VOFS, 0); // why doesn't this one use the dma manager either? DmaFill16(3, 0, VRAM, VRAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE); @@ -129,12 +129,12 @@ static void DisplayDiplomaText(void) { if (HasAllMons()) { - SetGpuReg(REG_OFFSET_BG1HOFS, DISPCNT_BG0_ON); + SetGpuReg(REG_OFFSET_BG1HOFS, DISPLAY_WIDTH + 16); StringCopy(gStringVar1, gText_DexNational); } else { - SetGpuReg(REG_OFFSET_BG1HOFS, DISPCNT_MODE_0); + SetGpuReg(REG_OFFSET_BG1HOFS, 0); StringCopy(gStringVar1, gText_DexHoenn); } StringExpandPlaceholders(gStringVar4, gText_PokedexDiploma); @@ -173,9 +173,9 @@ static void InitDiplomaBg(void) SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); ShowBg(0); ShowBg(1); - SetGpuReg(REG_OFFSET_BLDCNT, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BLDALPHA, DISPCNT_MODE_0); - SetGpuReg(REG_OFFSET_BLDY, DISPCNT_MODE_0); + SetGpuReg(REG_OFFSET_BLDCNT, 0); + SetGpuReg(REG_OFFSET_BLDALPHA, 0); + SetGpuReg(REG_OFFSET_BLDY, 0); } static const struct WindowTemplate sDiplomaWinTemplates[2] = diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 59316835f0f3..39e917161cca 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -1125,7 +1125,7 @@ static void Task_TradeEvolutionScene(u8 taskId) var = gSprites[sEvoStructPtr->preEvoSpriteId].oam.paletteNum + 16; sEvoGraphicsTaskId = EvolutionSparkles_SpiralUpward(var); gTasks[taskId].tState++; - SetGpuReg(REG_OFFSET_BG3CNT, 0x603); + SetGpuReg(REG_OFFSET_BG3CNT, BGCNT_PRIORITY(3) | BGCNT_SCREENBASE(6)); } break; case T_EVOSTATE_SPARKLE_ARC: diff --git a/src/option_menu.c b/src/option_menu.c index a210c9502da9..0174b69db70c 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -187,7 +187,7 @@ void CB2_InitOptionMenu(void) SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG0); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_CLR); - SetGpuReg(REG_OFFSET_BLDCNT, 193); + SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_DARKEN); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 4); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); diff --git a/src/title_screen.c b/src/title_screen.c index 21d10495c8c5..cf356cefa24f 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -600,7 +600,7 @@ void CB2_InitTitleScreen(void) SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ | WINOUT_WINOBJ_ALL); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_LIGHTEN); SetGpuReg(REG_OFFSET_BLDALPHA, 0); - SetGpuReg(REG_OFFSET_BLDY, 0xC); + SetGpuReg(REG_OFFSET_BLDY, 12); SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_16COLOR | BGCNT_TXT256x256); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(27) | BGCNT_16COLOR | BGCNT_TXT256x256); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(9) | BGCNT_256COLOR | BGCNT_AFF256x256); From 30fecca109e77cd3f7b85600ee6ba984878b2d03 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 13:31:18 -0400 Subject: [PATCH 120/762] Doc storage - menu texts --- src/pokemon_storage_system.c | 816 ++++++++++++++++++----------------- 1 file changed, 428 insertions(+), 388 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 0a35aa323a9f..99f16e43b730 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -42,6 +42,186 @@ #include "constants/rgb.h" #include "constants/songs.h" +enum { + BOX_OPTION_WITHDRAW, + BOX_OPTION_DEPOSIT, + BOX_OPTION_MOVE_MONS, + BOX_OPTION_MOVE_ITEMS, + BOX_OPTION_EXIT, +}; + +// IDs for messages to print with PrintMessage +enum { + MSG_EXIT_BOX, + MSG_WHAT_YOU_DO, + MSG_PICK_A_THEME, + MSG_PICK_A_WALLPAPER, + MSG_IS_SELECTED, + MSG_JUMP_TO_WHICH_BOX, + MSG_DEPOSIT_IN_WHICH_BOX, + MSG_WAS_DEPOSITED, + MSG_BOX_IS_FULL, + MSG_RELEASE_POKE, + MSG_WAS_RELEASED, + MSG_BYE_BYE, + MSG_MARK_POKE, + MSG_LAST_POKE, + MSG_PARTY_FULL, + MSG_HOLDING_POKE, + MSG_WHICH_ONE_WILL_TAKE, + MSG_CANT_RELEASE_EGG, + MSG_CONTINUE_BOX, + MSG_CAME_BACK, + MSG_WORRIED, + MSG_SURPRISE, + MSG_PLEASE_REMOVE_MAIL, + MSG_IS_SELECTED2, + MSG_GIVE_TO_MON, + MSG_PLACED_IN_BAG, + MSG_BAG_FULL, + MSG_PUT_IN_BAG, + MSG_ITEM_IS_HELD, + MSG_CHANGED_TO_ITEM, + MSG_CANT_STORE_MAIL, +}; + +enum { + MSG_FORMAT_NORMAL, + MSG_FORMAT_MON_NAME_1, + MSG_FORMAT_MON_NAME_2, // Unused + MSG_FORMAT_MON_NAME_3, // Unused + MSG_FORMAT_MON_NAME_4, + MSG_FORMAT_MON_NAME_5, // Unused + MSG_FORMAT_MON_NAME_6, + MSG_FORMAT_ITEM_NAME, +}; + +// IDs for menu selection items. See SetMenuText, HandleMenuInput, etc +enum { + MENU_CANCEL, + MENU_STORE, + MENU_WITHDRAW, + MENU_MOVE, + MENU_SHIFT, + MENU_PLACE, + MENU_SUMMARY, + MENU_RELEASE, + MENU_MARK, + MENU_JUMP, + MENU_WALLPAPER, + MENU_NAME, + MENU_TAKE, + MENU_GIVE, + MENU_GIVE_2, + MENU_SWITCH, + MENU_BAG, + MENU_INFO, + MENU_SCENERY_1, + MENU_SCENERY_2, + MENU_SCENERY_3, + MENU_ETCETERA, + MENU_FRIENDS, + MENU_FOREST, + MENU_CITY, + MENU_DESERT, + MENU_SAVANNA, + MENU_CRAG, + MENU_VOLCANO, + MENU_SNOW, + MENU_CAVE, + MENU_BEACH, + MENU_SEAFLOOR, + MENU_RIVER, + MENU_SKY, + MENU_POLKADOT, + MENU_POKECENTER, + MENU_MACHINE, + MENU_SIMPLE, +}; +#define MENU_WALLPAPERS_START MENU_FOREST + +enum { + SCREEN_CHANGE_EXIT_BOX, + SCREEN_CHANGE_SUMMARY_SCREEN, + SCREEN_CHANGE_NAME_BOX, + SCREEN_CHANGE_ITEM_FROM_BAG, +}; + +enum { + MODE_PARTY, + MODE_BOX, + MODE_MOVE, +}; + +enum { + WALLPAPER_FOREST, + WALLPAPER_CITY, + WALLPAPER_DESERT, + WALLPAPER_SAVANNA, + WALLPAPER_CRAG, + WALLPAPER_VOLCANO, + WALLPAPER_SNOW, + WALLPAPER_CAVE, + WALLPAPER_BEACH, + WALLPAPER_SEAFLOOR, + WALLPAPER_RIVER, + WALLPAPER_SKY, + WALLPAPER_POLKADOT, + WALLPAPER_POKECENTER, + WALLPAPER_MACHINE, + WALLPAPER_PLAIN, + WALLPAPER_FRIENDS, // The one received as a gift from Walda's parents. + WALLPAPER_COUNT +}; + +enum { + FRIENDS_ZIGZAGOON, + FRIENDS_SCREEN, + FRIENDS_HORIZONTAL, + FRIENDS_DIAGONAL, + FRIENDS_BLOCK, + FRIENDS_RIBBON, + FRIENDS_POKECENTER2, + FRIENDS_FRAME, + FRIENDS_BLANK, + FRIENDS_CIRCLES, + FRIENDS_AZUMARILL, + FRIENDS_PIKACHU, + FRIENDS_LEGENDARY, + FRIENDS_DUSCLOPS, + FRIENDS_LUDICOLO, + FRIENDS_WHISCASH, + FRIENDS_WALLPAPERS_COUNT +}; + +enum { + CURSOR_AREA_IN_BOX, + CURSOR_AREA_IN_PARTY, + CURSOR_AREA_BOX, + CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box +}; + +#define TAG_PAL_WAVEFORM 0xDACA +#define TAG_PAL_DAC8 0xDAC8 +#define TAG_PAL_DAC6 0xDAC6 +#define TAG_PAL_DACE 0xDACE +#define TAG_PAL_DAC7 0xDAC7 +#define TAG_PAL_DAC9 0xDAC9 +#define TAG_PAL_DAC0 0xDAC0 +#define TAG_PAL_DACB 0xDACB + +#define TAG_TILE_WAVEFORM 0x5 +#define TAG_TILE_10 0x10 +#define TAG_TILE_2 0x2 +#define TAG_TILE_D 0xD +#define TAG_TILE_A 0xA +#define TAG_TILE_3 0x3 +#define TAG_TILE_4 0x4 +#define TAG_TILE_12 0x12 +#define TAG_TILE_7 0x7 +#define TAG_TILE_0 0x0 +#define TAG_TILE_1 0x1 + struct WallpaperTable { const u32 *tiles; @@ -55,7 +235,7 @@ struct PokemonStorageSystemFunc s8 unk4; }; -struct StorageAction +struct StorageMessage { const u8 *text; u8 format; @@ -194,7 +374,7 @@ struct PokemonStorageSystemData u8 menuItemsCount; u8 menuWidth; u8 field_CAE; // Written to, but never read. - u16 field_CB0; + u16 menuWindowId; struct Sprite *field_CB4; struct Sprite *field_CB8; s32 field_CBC; @@ -299,149 +479,6 @@ struct UnkStruct_2039D84 u8 field_2D; }; -enum -{ - BOX_OPTION_WITHDRAW, - BOX_OPTION_DEPOSIT, - BOX_OPTION_MOVE_MONS, - BOX_OPTION_MOVE_ITEMS, - BOX_OPTION_EXIT, -}; - -enum -{ - PC_TEXT_EXIT_BOX, - PC_TEXT_WHAT_YOU_DO, - PC_TEXT_PICK_A_THEME, - PC_TEXT_PICK_A_WALLPAPER, - PC_TEXT_IS_SELECTED, - PC_TEXT_JUMP_TO_WHICH_BOX, - PC_TEXT_DEPOSIT_IN_WHICH_BOX, - PC_TEXT_WAS_DEPOSITED, - PC_TEXT_BOX_IS_FULL, - PC_TEXT_RELEASE_POKE, - PC_TEXT_WAS_RELEASED, - PC_TEXT_BYE_BYE, - PC_TEXT_MARK_POKE, - PC_TEXT_LAST_POKE, - PC_TEXT_PARTY_FULL, - PC_TEXT_HOLDING_POKE, - PC_TEXT_WHICH_ONE_WILL_TAKE, - PC_TEXT_CANT_RELEASE_EGG, - PC_TEXT_CONTINUE_BOX, - PC_TEXT_CAME_BACK, - PC_TEXT_WORRIED, - PC_TEXT_SURPRISE, - PC_TEXT_PLEASE_REMOVE_MAIL, - PC_TEXT_IS_SELECTED2, - PC_TEXT_GIVE_TO_MON, - PC_TEXT_PLACED_IN_BAG, - PC_TEXT_BAG_FULL, - PC_TEXT_PUT_IN_BAG, - PC_TEXT_ITEM_IS_HELD, - PC_TEXT_CHANGED_TO_ITEM, - PC_TEXT_CANT_STORE_MAIL, -}; - -enum -{ - PC_TEXT_FMT_NORMAL, - PC_TEXT_FMT_MON_NAME_1, - PC_TEXT_FMT_MON_NAME_2, - PC_TEXT_FMT_MON_NAME_3, - PC_TEXT_FMT_MON_NAME_4, - PC_TEXT_FMT_MON_NAME_5, - PC_TEXT_FMT_MON_NAME_6, - PC_TEXT_FMT_ITEM_NAME, -}; - -enum -{ - SCREEN_CHANGE_EXIT_BOX, - SCREEN_CHANGE_SUMMARY_SCREEN, - SCREEN_CHANGE_NAME_BOX, - SCREEN_CHANGE_ITEM_FROM_BAG, -}; - -enum -{ - MODE_PARTY, - MODE_BOX, - MODE_MOVE, -}; - -enum -{ - WALLPAPER_FOREST, - WALLPAPER_CITY, - WALLPAPER_DESERT, - WALLPAPER_SAVANNA, - WALLPAPER_CRAG, - WALLPAPER_VOLCANO, - WALLPAPER_SNOW, - WALLPAPER_CAVE, - WALLPAPER_BEACH, - WALLPAPER_SEAFLOOR, - WALLPAPER_RIVER, - WALLPAPER_SKY, - WALLPAPER_POLKADOT, - WALLPAPER_POKECENTER, - WALLPAPER_MACHINE, - WALLPAPER_PLAIN, - WALLPAPER_FRIENDS, // The one received as a gift from Walda's parents. - WALLPAPER_COUNT -}; - -enum -{ - FRIENDS_ZIGZAGOON, - FRIENDS_SCREEN, - FRIENDS_HORIZONTAL, - FRIENDS_DIAGONAL, - FRIENDS_BLOCK, - FRIENDS_RIBBON, - FRIENDS_POKECENTER2, - FRIENDS_FRAME, - FRIENDS_BLANK, - FRIENDS_CIRCLES, - FRIENDS_AZUMARILL, - FRIENDS_PIKACHU, - FRIENDS_LEGENDARY, - FRIENDS_DUSCLOPS, - FRIENDS_LUDICOLO, - FRIENDS_WHISCASH, - FRIENDS_WALLPAPERS_COUNT -}; - -enum -{ - CURSOR_AREA_IN_BOX, - CURSOR_AREA_IN_PARTY, - CURSOR_AREA_BOX, - CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box -}; - -#define TAG_PAL_WAVEFORM 0xDACA -#define TAG_PAL_DAC8 0xDAC8 -#define TAG_PAL_DAC6 0xDAC6 -#define TAG_PAL_DACE 0xDACE -#define TAG_PAL_DAC7 0xDAC7 -#define TAG_PAL_DAC9 0xDAC9 -#define TAG_PAL_DAC0 0xDAC0 -#define TAG_PAL_DACB 0xDACB - -#define TAG_TILE_WAVEFORM 0x5 -#define TAG_TILE_10 0x10 -#define TAG_TILE_2 0x2 -#define TAG_TILE_D 0xD -#define TAG_TILE_A 0xA -#define TAG_TILE_3 0x3 -#define TAG_TILE_4 0x4 -#define TAG_TILE_12 0x12 -#define TAG_TILE_7 0x7 -#define TAG_TILE_0 0x0 -#define TAG_TILE_1 0x1 - // IWRAM bss static u32 gUnknown_03000F78[98]; @@ -518,7 +555,7 @@ static void sub_80CC064(void); static void sub_80CE324(void); static void ClearBottomWindow(void); static void sub_80CA704(void); -static void sub_80D013C(void); +static void RemoveMenu(void); static void sub_80CE00C(void); static void sub_80D1194(void); static void PrintCursorMonInfo(void); @@ -627,8 +664,8 @@ static void sub_80D01D0(u8 arg0); static void sub_80CD1A8(bool8 arg0); static void sub_80CA984(bool8 arg0); static void CreatePartyMonsSprites(bool8 arg0); -static void PrintStorageActionText(u8 id); -static s16 sub_80D00AC(void); +static void PrintMessage(u8 id); +static s16 HandleMenuInput(void); static s8 RunCanReleaseMon(void); static u8 GetBoxCursorPosition(void); static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos); @@ -675,7 +712,7 @@ static bool32 AtLeastThreeUsableMons(void); static u8 InBoxInput_Normal(void); static u8 InBoxInput_MovingMultiple(void); static u8 InBoxInput_GrabbingMultiple(void); -static s8 sub_80CFF98(u8 arg0); +static s8 GetMenuItemTextId(u8); static u8 sub_80CFA5C(void); static u8 sub_80D0BA4(void); static bool8 sub_80CFA84(void); @@ -914,39 +951,39 @@ static const struct SpriteTemplate sSpriteTemplate_CursorMon = .callback = SpriteCallbackDummy, }; -static const struct StorageAction gPCStorageActionTexts[] = -{ - [PC_TEXT_EXIT_BOX] = {gText_ExitFromBox, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_WHAT_YOU_DO] = {gText_WhatDoYouWantToDo, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PICK_A_THEME] = {gText_PleasePickATheme, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PICK_A_WALLPAPER] = {gText_PickTheWallpaper, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_IS_SELECTED] = {gText_PkmnIsSelected, PC_TEXT_FMT_MON_NAME_1}, - [PC_TEXT_JUMP_TO_WHICH_BOX] = {gText_JumpToWhichBox, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_DEPOSIT_IN_WHICH_BOX] = {gText_DepositInWhichBox, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_WAS_DEPOSITED] = {gText_PkmnWasDeposited, PC_TEXT_FMT_MON_NAME_1}, - [PC_TEXT_BOX_IS_FULL] = {gText_BoxIsFull2, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_RELEASE_POKE] = {gText_ReleaseThisPokemon, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_WAS_RELEASED] = {gText_PkmnWasReleased, PC_TEXT_FMT_MON_NAME_4}, - [PC_TEXT_BYE_BYE] = {gText_ByeByePkmn, PC_TEXT_FMT_MON_NAME_6}, - [PC_TEXT_MARK_POKE] = {gText_MarkYourPkmn, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_LAST_POKE] = {gText_ThatsYourLastPkmn, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PARTY_FULL] = {gText_YourPartysFull, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_HOLDING_POKE] = {gText_YoureHoldingAPkmn, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_WHICH_ONE_WILL_TAKE] = {gText_WhichOneWillYouTake, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_CANT_RELEASE_EGG] = {gText_YouCantReleaseAnEgg, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_CONTINUE_BOX] = {gText_ContinueBoxOperations, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_CAME_BACK] = {gText_PkmnCameBack, PC_TEXT_FMT_MON_NAME_1}, - [PC_TEXT_WORRIED] = {gText_WasItWorriedAboutYou, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_SURPRISE] = {gText_FourEllipsesExclamation, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PLEASE_REMOVE_MAIL] = {gText_PleaseRemoveTheMail, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_IS_SELECTED2] = {gText_PkmnIsSelected, PC_TEXT_FMT_ITEM_NAME}, - [PC_TEXT_GIVE_TO_MON] = {gText_GiveToAPkmn, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PLACED_IN_BAG] = {gText_PlacedItemInBag, PC_TEXT_FMT_ITEM_NAME}, - [PC_TEXT_BAG_FULL] = {gText_BagIsFull2, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_PUT_IN_BAG] = {gText_PutItemInBag, PC_TEXT_FMT_NORMAL}, - [PC_TEXT_ITEM_IS_HELD] = {gText_ItemIsNowHeld, PC_TEXT_FMT_ITEM_NAME}, - [PC_TEXT_CHANGED_TO_ITEM] = {gText_ChangedToNewItem, PC_TEXT_FMT_ITEM_NAME}, - [PC_TEXT_CANT_STORE_MAIL] = {gText_MailCantBeStored, PC_TEXT_FMT_NORMAL}, +static const struct StorageMessage sMessages[] = +{ + [MSG_EXIT_BOX] = {gText_ExitFromBox, MSG_FORMAT_NORMAL}, + [MSG_WHAT_YOU_DO] = {gText_WhatDoYouWantToDo, MSG_FORMAT_NORMAL}, + [MSG_PICK_A_THEME] = {gText_PleasePickATheme, MSG_FORMAT_NORMAL}, + [MSG_PICK_A_WALLPAPER] = {gText_PickTheWallpaper, MSG_FORMAT_NORMAL}, + [MSG_IS_SELECTED] = {gText_PkmnIsSelected, MSG_FORMAT_MON_NAME_1}, + [MSG_JUMP_TO_WHICH_BOX] = {gText_JumpToWhichBox, MSG_FORMAT_NORMAL}, + [MSG_DEPOSIT_IN_WHICH_BOX] = {gText_DepositInWhichBox, MSG_FORMAT_NORMAL}, + [MSG_WAS_DEPOSITED] = {gText_PkmnWasDeposited, MSG_FORMAT_MON_NAME_1}, + [MSG_BOX_IS_FULL] = {gText_BoxIsFull2, MSG_FORMAT_NORMAL}, + [MSG_RELEASE_POKE] = {gText_ReleaseThisPokemon, MSG_FORMAT_NORMAL}, + [MSG_WAS_RELEASED] = {gText_PkmnWasReleased, MSG_FORMAT_MON_NAME_4}, + [MSG_BYE_BYE] = {gText_ByeByePkmn, MSG_FORMAT_MON_NAME_6}, + [MSG_MARK_POKE] = {gText_MarkYourPkmn, MSG_FORMAT_NORMAL}, + [MSG_LAST_POKE] = {gText_ThatsYourLastPkmn, MSG_FORMAT_NORMAL}, + [MSG_PARTY_FULL] = {gText_YourPartysFull, MSG_FORMAT_NORMAL}, + [MSG_HOLDING_POKE] = {gText_YoureHoldingAPkmn, MSG_FORMAT_NORMAL}, + [MSG_WHICH_ONE_WILL_TAKE] = {gText_WhichOneWillYouTake, MSG_FORMAT_NORMAL}, + [MSG_CANT_RELEASE_EGG] = {gText_YouCantReleaseAnEgg, MSG_FORMAT_NORMAL}, + [MSG_CONTINUE_BOX] = {gText_ContinueBoxOperations, MSG_FORMAT_NORMAL}, + [MSG_CAME_BACK] = {gText_PkmnCameBack, MSG_FORMAT_MON_NAME_1}, + [MSG_WORRIED] = {gText_WasItWorriedAboutYou, MSG_FORMAT_NORMAL}, + [MSG_SURPRISE] = {gText_FourEllipsesExclamation, MSG_FORMAT_NORMAL}, + [MSG_PLEASE_REMOVE_MAIL] = {gText_PleaseRemoveTheMail, MSG_FORMAT_NORMAL}, + [MSG_IS_SELECTED2] = {gText_PkmnIsSelected, MSG_FORMAT_ITEM_NAME}, + [MSG_GIVE_TO_MON] = {gText_GiveToAPkmn, MSG_FORMAT_NORMAL}, + [MSG_PLACED_IN_BAG] = {gText_PlacedItemInBag, MSG_FORMAT_ITEM_NAME}, + [MSG_BAG_FULL] = {gText_BagIsFull2, MSG_FORMAT_NORMAL}, + [MSG_PUT_IN_BAG] = {gText_PutItemInBag, MSG_FORMAT_NORMAL}, + [MSG_ITEM_IS_HELD] = {gText_ItemIsNowHeld, MSG_FORMAT_ITEM_NAME}, + [MSG_CHANGED_TO_ITEM] = {gText_ChangedToNewItem, MSG_FORMAT_ITEM_NAME}, + [MSG_CANT_STORE_MAIL] = {gText_MailCantBeStored, MSG_FORMAT_NORMAL}, }; static const struct WindowTemplate sYesNoWindowTemplate = @@ -2382,7 +2419,7 @@ static void Cb_ReshowPSS(u8 taskId) { if (sWhichToReshow == 2 && gSpecialVar_ItemId != 0) { - PrintStorageActionText(PC_TEXT_ITEM_IS_HELD); + PrintMessage(MSG_ITEM_IS_HELD); sPSSData->state++; } else @@ -2419,7 +2456,7 @@ static void Cb_MainPSS(u8 taskId) case 5: if (sPSSData->boxOption != BOX_OPTION_MOVE_MONS && sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) { - PrintStorageActionText(PC_TEXT_WHICH_ONE_WILL_TAKE); + PrintMessage(MSG_WHICH_ONE_WILL_TAKE); sPSSData->state = 3; } else @@ -2622,12 +2659,12 @@ static void Cb_MainPSS(u8 taskId) break; case 4: PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_LAST_POKE); + PrintMessage(MSG_LAST_POKE); sPSSData->state = 6; break; case 5: PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); + PrintMessage(MSG_PLEASE_REMOVE_MAIL); sPSSData->state = 6; break; case 6: @@ -2718,11 +2755,11 @@ static void Cb_OnSelectedMon(u8 taskId) { PlaySE(SE_SELECT); if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) - PrintStorageActionText(PC_TEXT_IS_SELECTED); + PrintMessage(MSG_IS_SELECTED); else if (IsActiveItemMoving() || sPSSData->cursorMonItem != 0) - PrintStorageActionText(PC_TEXT_IS_SELECTED2); + PrintMessage(MSG_IS_SELECTED2); else - PrintStorageActionText(PC_TEXT_GIVE_TO_MON); + PrintMessage(MSG_GIVE_TO_MON); AddMenu(); sPSSData->state = 1; @@ -2733,14 +2770,14 @@ static void Cb_OnSelectedMon(u8 taskId) sPSSData->state = 2; break; case 2: - switch (sub_80D00AC()) + switch (HandleMenuInput()) { - case -1: - case 0: + case MENU_B_PRESSED: + case MENU_CANCEL: ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; - case 3: + case MENU_MOVE: if (CanMovePartyMon()) { sPSSData->state = 3; @@ -2752,12 +2789,12 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_MoveMon); } break; - case 5: + case MENU_PLACE: PlaySE(SE_SELECT); ClearBottomWindow(); SetPSSCallback(Cb_PlaceMon); break; - case 4: + case MENU_SHIFT: if (!CanShiftMon()) { sPSSData->state = 3; @@ -2769,12 +2806,12 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_ShiftMon); } break; - case 2: + case MENU_WITHDRAW: PlaySE(SE_SELECT); ClearBottomWindow(); SetPSSCallback(Cb_WithdrawMon); break; - case 1: + case MENU_STORE: if (CanMovePartyMon()) { sPSSData->state = 3; @@ -2790,7 +2827,7 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_DepositMenu); } break; - case 7: + case MENU_RELEASE: if (CanMovePartyMon()) { sPSSData->state = 3; @@ -2809,51 +2846,51 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_ReleaseMon); } break; - case 6: + case MENU_SUMMARY: PlaySE(SE_SELECT); SetPSSCallback(Cb_ShowMonSummary); break; - case 8: + case MENU_MARK: PlaySE(SE_SELECT); SetPSSCallback(Cb_ShowMarkMenu); break; - case 12: + case MENU_TAKE: PlaySE(SE_SELECT); SetPSSCallback(Cb_TakeItemForMoving); break; - case 13: + case MENU_GIVE: PlaySE(SE_SELECT); SetPSSCallback(Cb_GiveMovingItemToMon); break; - case 16: + case MENU_BAG: SetPSSCallback(Cb_ItemToBag); break; - case 15: + case MENU_SWITCH: PlaySE(SE_SELECT); SetPSSCallback(Cb_SwitchSelectedItem); break; - case 14: + case MENU_GIVE_2: PlaySE(SE_SELECT); SetPSSCallback(Cb_GiveItemFromBag); break; - case 17: + case MENU_INFO: SetPSSCallback(Cb_ShowItemInfo); break; } break; case 3: PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_LAST_POKE); + PrintMessage(MSG_LAST_POKE); sPSSData->state = 6; break; case 5: PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_CANT_RELEASE_EGG); + PrintMessage(MSG_CANT_RELEASE_EGG); sPSSData->state = 6; break; case 4: PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); + PrintMessage(MSG_PLEASE_REMOVE_MAIL); sPSSData->state = 6; break; case 6: @@ -2931,7 +2968,7 @@ static void Cb_WithdrawMon(u8 taskId) case 0: if (CalculatePlayerPartyCount() == PARTY_SIZE) { - PrintStorageActionText(PC_TEXT_PARTY_FULL); + PrintMessage(MSG_PARTY_FULL); sPSSData->state = 1; } else @@ -2983,7 +3020,7 @@ static void Cb_DepositMenu(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); sub_80C77E8(&sPSSData->field_1E5C, TAG_TILE_A, TAG_PAL_DAC7, 3, FALSE); sub_80C78D4(gUnknown_02039D0E); sPSSData->state++; @@ -3013,7 +3050,7 @@ static void Cb_DepositMenu(u8 taskId) } else { - PrintStorageActionText(PC_TEXT_BOX_IS_FULL); + PrintMessage(MSG_BOX_IS_FULL); sPSSData->state = 4; } } @@ -3035,7 +3072,7 @@ static void Cb_DepositMenu(u8 taskId) case 4: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { - PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); sPSSData->state = 1; } break; @@ -3047,7 +3084,7 @@ static void Cb_ReleaseMon(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_RELEASE_POKE); + PrintMessage(MSG_RELEASE_POKE); ShowYesNoWindow(1); sPSSData->state++; // fallthrough @@ -3090,13 +3127,13 @@ static void Cb_ReleaseMon(u8 taskId) case 3: ReleaseMon(); RefreshCursorMonData(); - PrintStorageActionText(PC_TEXT_WAS_RELEASED); + PrintMessage(MSG_WAS_RELEASED); sPSSData->state++; break; case 4: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { - PrintStorageActionText(PC_TEXT_BYE_BYE); + PrintMessage(MSG_BYE_BYE); sPSSData->state++; } break; @@ -3129,13 +3166,13 @@ static void Cb_ReleaseMon(u8 taskId) SetPSSCallback(Cb_MainPSS); break; case 8: - PrintStorageActionText(PC_TEXT_WAS_RELEASED); + PrintMessage(MSG_WAS_RELEASED); sPSSData->state++; break; case 9: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { - PrintStorageActionText(PC_TEXT_SURPRISE); + PrintMessage(MSG_SURPRISE); sPSSData->state++; } break; @@ -3151,14 +3188,14 @@ static void Cb_ReleaseMon(u8 taskId) if (!sub_80CC0A0()) { sub_80CE324(); - PrintStorageActionText(PC_TEXT_CAME_BACK); + PrintMessage(MSG_CAME_BACK); sPSSData->state++; } break; case 12: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { - PrintStorageActionText(PC_TEXT_WORRIED); + PrintMessage(MSG_WORRIED); sPSSData->state++; } break; @@ -3177,7 +3214,7 @@ static void Cb_ShowMarkMenu(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_MARK_POKE); + PrintMessage(MSG_MARK_POKE); sPSSData->markMenu.markings = sPSSData->cursorMonMarkings; OpenMonMarkingsMenu(sPSSData->cursorMonMarkings, 0xb0, 0x10); sPSSData->state++; @@ -3251,7 +3288,7 @@ static void Cb_GiveMovingItemToMon(u8 taskId) sub_80CFE54(0); sub_80CE00C(); PrintCursorMonInfo(); - PrintStorageActionText(PC_TEXT_ITEM_IS_HELD); + PrintMessage(MSG_ITEM_IS_HELD); sPSSData->state++; } break; @@ -3277,7 +3314,7 @@ static void Cb_ItemToBag(u8 taskId) if (!AddBagItem(sPSSData->cursorMonItem, 1)) { PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_BAG_FULL); + PrintMessage(MSG_BAG_FULL); sPSSData->state = 3; } else @@ -3290,7 +3327,7 @@ static void Cb_ItemToBag(u8 taskId) case 1: if (!sub_80D1218()) { - PrintStorageActionText(PC_TEXT_PLACED_IN_BAG); + PrintMessage(MSG_PLACED_IN_BAG); sPSSData->state = 2; } break; @@ -3343,7 +3380,7 @@ static void Cb_SwitchSelectedItem(u8 taskId) sub_80CFE54(3); sub_80CE00C(); PrintCursorMonInfo(); - PrintStorageActionText(PC_TEXT_CHANGED_TO_ITEM); + PrintMessage(MSG_CHANGED_TO_ITEM); sPSSData->state++; } break; @@ -3410,7 +3447,7 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) { case 0: PlaySE(SE_SELECT); - PrintStorageActionText(PC_TEXT_PUT_IN_BAG); + PrintMessage(MSG_PUT_IN_BAG); ShowYesNoWindow(0); sPSSData->state = 1; break; @@ -3430,7 +3467,7 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) } else { - PrintStorageActionText(PC_TEXT_BAG_FULL); + PrintMessage(MSG_BAG_FULL); sPSSData->state = 2; } break; @@ -3485,7 +3522,7 @@ static void Cb_PrintCantStoreMail(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_CANT_STORE_MAIL); + PrintMessage(MSG_CANT_STORE_MAIL); sPSSData->state++; break; case 1: @@ -3511,7 +3548,7 @@ static void Cb_HandleBoxOptions(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_WHAT_YOU_DO); + PrintMessage(MSG_WHAT_YOU_DO); AddMenu(); sPSSData->state++; break; @@ -3520,24 +3557,24 @@ static void Cb_HandleBoxOptions(u8 taskId) return; sPSSData->state++; case 2: - switch (sub_80D00AC()) + switch (HandleMenuInput()) { - case -1: - case 0: + case MENU_B_PRESSED: + case MENU_CANCEL: sub_80CD1A8(TRUE); ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; - case 11: + case MENU_NAME: PlaySE(SE_SELECT); SetPSSCallback(Cb_NameBox); break; - case 10: + case MENU_WALLPAPER: PlaySE(SE_SELECT); ClearBottomWindow(); SetPSSCallback(Cb_HandleWallpapers); break; - case 9: + case MENU_JUMP: PlaySE(SE_SELECT); ClearBottomWindow(); SetPSSCallback(Cb_JumpBox); @@ -3553,7 +3590,7 @@ static void Cb_HandleWallpapers(u8 taskId) { case 0: AddWallpaperSetsMenu(); - PrintStorageActionText(PC_TEXT_PICK_A_THEME); + PrintMessage(MSG_PICK_A_THEME); sPSSData->state++; break; case 1: @@ -3561,25 +3598,28 @@ static void Cb_HandleWallpapers(u8 taskId) sPSSData->state++; break; case 2: - sPSSData->wallpaperSetId = sub_80D00AC(); + sPSSData->wallpaperSetId = HandleMenuInput(); switch (sPSSData->wallpaperSetId) { - case -1: + case MENU_B_PRESSED: sub_80CD1A8(TRUE); ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; - case 18 ... 21: + case MENU_SCENERY_1: + case MENU_SCENERY_2: + case MENU_SCENERY_3: + case MENU_ETCETERA: PlaySE(SE_SELECT); - sub_80D013C(); + RemoveMenu(); sPSSData->wallpaperSetId -= 18; sPSSData->state++; break; - // New wallpaper from Walda. - case 22: + case MENU_FRIENDS: + // New wallpaper from Walda. PlaySE(SE_SELECT); sPSSData->wallpaperId = 16; - sub_80D013C(); + RemoveMenu(); ClearBottomWindow(); sPSSData->state = 6; break; @@ -3589,24 +3629,24 @@ static void Cb_HandleWallpapers(u8 taskId) if (!IsDma3ManagerBusyWithBgCopy()) { AddWallpapersMenu(sPSSData->wallpaperSetId); - PrintStorageActionText(PC_TEXT_PICK_A_WALLPAPER); + PrintMessage(MSG_PICK_A_WALLPAPER); sPSSData->state++; } break; case 4: - sPSSData->wallpaperId = sub_80D00AC(); + sPSSData->wallpaperId = HandleMenuInput(); switch (sPSSData->wallpaperId) { - case -2: + case MENU_NOTHING_CHOSEN: break; - case -1: + case MENU_B_PRESSED: ClearBottomWindow(); sPSSData->state = 0; break; default: PlaySE(SE_SELECT); ClearBottomWindow(); - sPSSData->wallpaperId -= 23; + sPSSData->wallpaperId -= MENU_WALLPAPERS_START; SetWallpaperForCurrentBox(sPSSData->wallpaperId); sPSSData->state++; break; @@ -3634,7 +3674,7 @@ static void Cb_JumpBox(u8 taskId) switch (sPSSData->state) { case 0: - PrintStorageActionText(PC_TEXT_JUMP_TO_WHICH_BOX); + PrintMessage(MSG_JUMP_TO_WHICH_BOX); sub_80C77E8(&sPSSData->field_1E5C, TAG_TILE_A, TAG_PAL_DAC7, 3, FALSE); sub_80C78D4(StorageGetCurrentBox()); sPSSData->state++; @@ -3742,7 +3782,7 @@ static void Cb_OnCloseBoxPressed(u8 taskId) if (IsMonBeingMoved()) { PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_HOLDING_POKE); + PrintMessage(MSG_HOLDING_POKE); sPSSData->state = 1; } else if (IsActiveItemMoving()) @@ -3752,7 +3792,7 @@ static void Cb_OnCloseBoxPressed(u8 taskId) else { PlaySE(SE_SELECT); - PrintStorageActionText(PC_TEXT_EXIT_BOX); + PrintMessage(MSG_EXIT_BOX); ShowYesNoWindow(0); sPSSData->state = 2; } @@ -3803,7 +3843,7 @@ static void Cb_OnBPressed(u8 taskId) if (IsMonBeingMoved()) { PlaySE(SE_FAILURE); - PrintStorageActionText(PC_TEXT_HOLDING_POKE); + PrintMessage(MSG_HOLDING_POKE); sPSSData->state = 1; } else if (IsActiveItemMoving()) @@ -3813,7 +3853,7 @@ static void Cb_OnBPressed(u8 taskId) else { PlaySE(SE_SELECT); - PrintStorageActionText(PC_TEXT_CONTINUE_BOX); + PrintMessage(MSG_CONTINUE_BOX); ShowYesNoWindow(0); sPSSData->state = 2; } @@ -4382,26 +4422,26 @@ static void sub_80CAC1C(void) CopyBgTilemapBufferToVram(0); } -static void PrintStorageActionText(u8 id) +static void PrintMessage(u8 id) { u8 *txtPtr; DynamicPlaceholderTextUtil_Reset(); - switch (gPCStorageActionTexts[id].format) + switch (sMessages[id].format) { - case PC_TEXT_FMT_NORMAL: + case MSG_FORMAT_NORMAL: break; - case PC_TEXT_FMT_MON_NAME_1: - case PC_TEXT_FMT_MON_NAME_2: - case PC_TEXT_FMT_MON_NAME_3: + case MSG_FORMAT_MON_NAME_1: + case MSG_FORMAT_MON_NAME_2: + case MSG_FORMAT_MON_NAME_3: DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->cursorMonNick); break; - case PC_TEXT_FMT_MON_NAME_4: - case PC_TEXT_FMT_MON_NAME_5: - case PC_TEXT_FMT_MON_NAME_6: + case MSG_FORMAT_MON_NAME_4: + case MSG_FORMAT_MON_NAME_5: + case MSG_FORMAT_MON_NAME_6: DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->field_21E0); break; - case PC_TEXT_FMT_ITEM_NAME: + case MSG_FORMAT_ITEM_NAME: if (IsActiveItemMoving()) txtPtr = StringCopy(sPSSData->itemName, GetMovingItemName()); else @@ -4415,7 +4455,7 @@ static void PrintStorageActionText(u8 id) break; } - DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->field_2190, gPCStorageActionTexts[id].text); + DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->field_2190, sMessages[id].text); FillWindowPixelBuffer(1, PIXEL_FILL(1)); AddTextPrinterParameterized(1, 1, sPSSData->field_2190, 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(1, 2, 14); @@ -4439,12 +4479,12 @@ static void ClearBottomWindow(void) static void AddWallpaperSetsMenu(void) { InitMenu(); - SetMenuText(18); - SetMenuText(19); - SetMenuText(20); - SetMenuText(21); + SetMenuText(MENU_SCENERY_1); + SetMenuText(MENU_SCENERY_2); + SetMenuText(MENU_SCENERY_3); + SetMenuText(MENU_ETCETERA); if (IsWaldaWallpaperUnlocked()) - SetMenuText(22); + SetMenuText(MENU_FRIENDS); AddMenu(); } @@ -4454,28 +4494,28 @@ static void AddWallpapersMenu(u8 wallpaperSet) switch (wallpaperSet) { case 0: - SetMenuText(23); - SetMenuText(24); - SetMenuText(25); - SetMenuText(26); + SetMenuText(MENU_FOREST); + SetMenuText(MENU_CITY); + SetMenuText(MENU_DESERT); + SetMenuText(MENU_SAVANNA); break; case 1: - SetMenuText(27); - SetMenuText(28); - SetMenuText(29); - SetMenuText(30); + SetMenuText(MENU_CRAG); + SetMenuText(MENU_VOLCANO); + SetMenuText(MENU_SNOW); + SetMenuText(MENU_CAVE); break; case 2: - SetMenuText(31); - SetMenuText(32); - SetMenuText(33); - SetMenuText(34); + SetMenuText(MENU_BEACH); + SetMenuText(MENU_SEAFLOOR); + SetMenuText(MENU_RIVER); + SetMenuText(MENU_SKY); break; case 3: - SetMenuText(35); - SetMenuText(36); - SetMenuText(37); - SetMenuText(38); + SetMenuText(MENU_POLKADOT); + SetMenuText(MENU_POKECENTER); + SetMenuText(MENU_MACHINE); + SetMenuText(MENU_SIMPLE); break; } AddMenu(); @@ -7010,23 +7050,23 @@ static u8 InBoxInput_Normal(void) if (sPSSData->boxOption != BOX_OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) { - switch (sub_80CFF98(0)) + switch (GetMenuItemTextId(0)) { - case 1: + case MENU_STORE: return 11; - case 2: + case MENU_WITHDRAW: return 12; - case 3: + case MENU_MOVE: return 13; - case 4: + case MENU_SHIFT: return 14; - case 5: + case MENU_PLACE: return 15; - case 12: + case MENU_TAKE: return 16; - case 13: + case MENU_GIVE: return 17; - case 15: + case MENU_SWITCH: return 18; } } @@ -7290,23 +7330,23 @@ static u8 HandleInput_InParty(void) if (!sCanOnlyMove) return 8; - switch (sub_80CFF98(0)) + switch (GetMenuItemTextId(0)) { - case 1: + case MENU_STORE: return 11; - case 2: + case MENU_WITHDRAW: return 12; - case 3: + case MENU_MOVE: return 13; - case 4: + case MENU_SHIFT: return 14; - case 5: + case MENU_PLACE: return 15; - case 12: + case MENU_TAKE: return 16; - case 13: + case MENU_GIVE: return 17; - case 15: + case MENU_SWITCH: return 18; } } @@ -7515,10 +7555,10 @@ static u8 HandleInput(void) static void AddBoxMenu(void) { InitMenu(); - SetMenuText(9); - SetMenuText(10); - SetMenuText(11); - SetMenuText(0); + SetMenuText(MENU_JUMP); + SetMenuText(MENU_WALLPAPER); + SetMenuText(MENU_NAME); + SetMenuText(MENU_CANCEL); } static u8 sub_80CFA5C(void) @@ -7538,13 +7578,13 @@ static bool8 sub_80CFA84(void) { case BOX_OPTION_DEPOSIT: if (var0) - SetMenuText(1); + SetMenuText(MENU_STORE); else return FALSE; break; case BOX_OPTION_WITHDRAW: if (var0) - SetMenuText(2); + SetMenuText(MENU_WITHDRAW); else return FALSE; break; @@ -7552,14 +7592,14 @@ static bool8 sub_80CFA84(void) if (sIsMonBeingMoved) { if (var0) - SetMenuText(4); + SetMenuText(MENU_SHIFT); else - SetMenuText(5); + SetMenuText(MENU_PLACE); } else { if (var0) - SetMenuText(3); + SetMenuText(MENU_MOVE); else return FALSE; } @@ -7569,18 +7609,18 @@ static bool8 sub_80CFA84(void) return FALSE; } - SetMenuText(6); + SetMenuText(MENU_SUMMARY); if (sPSSData->boxOption == BOX_OPTION_MOVE_MONS) { if (!sBoxCursorArea) - SetMenuText(2); + SetMenuText(MENU_WITHDRAW); else - SetMenuText(1); + SetMenuText(MENU_STORE); } - SetMenuText(8); - SetMenuText(7); - SetMenuText(0); + SetMenuText(MENU_MARK); + SetMenuText(MENU_RELEASE); + SetMenuText(MENU_CANCEL); return TRUE; } @@ -7596,16 +7636,16 @@ static bool8 sub_80CFB44(void) if (sPSSData->cursorMonSpecies == SPECIES_NONE) return FALSE; - SetMenuText(14); + SetMenuText(MENU_GIVE_2); } else { if (!ItemIsMail(sPSSData->cursorMonItem)) { - SetMenuText(12); - SetMenuText(16); + SetMenuText(MENU_TAKE); + SetMenuText(MENU_BAG); } - SetMenuText(17); + SetMenuText(MENU_INFO); } } else @@ -7615,18 +7655,18 @@ static bool8 sub_80CFB44(void) if (sPSSData->cursorMonSpecies == SPECIES_NONE) return FALSE; - SetMenuText(13); + SetMenuText(MENU_GIVE); } else { if (ItemIsMail(sPSSData->cursorMonItem) == TRUE) return FALSE; - SetMenuText(15); + SetMenuText(MENU_SWITCH); } } - SetMenuText(0); + SetMenuText(MENU_CANCEL); return TRUE; } @@ -7825,57 +7865,57 @@ static void InitMenu(void) sPSSData->menuWindow.baseBlock = 92; } -static const u8 *const gUnknown_0857BA80[] = -{ - gPCText_Cancel, - gPCText_Store, - gPCText_Withdraw, - gPCText_Move, - gPCText_Shift, - gPCText_Place, - gPCText_Summary, - gPCText_Release, - gPCText_Mark, - gPCText_Jump, - gPCText_Wallpaper, - gPCText_Name, - gPCText_Take, - gPCText_Give, - gPCText_Give, - gPCText_Switch, - gPCText_Bag, - gPCText_Info, - gPCText_Scenery1, - gPCText_Scenery2, - gPCText_Scenery3, - gPCText_Etcetera, - gPCText_Friends, - gPCText_Forest, - gPCText_City, - gPCText_Desert, - gPCText_Savanna, - gPCText_Crag, - gPCText_Volcano, - gPCText_Snow, - gPCText_Cave, - gPCText_Beach, - gPCText_Seafloor, - gPCText_River, - gPCText_Sky, - gPCText_PolkaDot, - gPCText_Pokecenter, - gPCText_Machine, - gPCText_Simple, +static const u8 *const sMenuTexts[] = +{ + [MENU_CANCEL] = gPCText_Cancel, + [MENU_STORE] = gPCText_Store, + [MENU_WITHDRAW] = gPCText_Withdraw, + [MENU_MOVE] = gPCText_Move, + [MENU_SHIFT] = gPCText_Shift, + [MENU_PLACE] = gPCText_Place, + [MENU_SUMMARY] = gPCText_Summary, + [MENU_RELEASE] = gPCText_Release, + [MENU_MARK] = gPCText_Mark, + [MENU_JUMP] = gPCText_Jump, + [MENU_WALLPAPER] = gPCText_Wallpaper, + [MENU_NAME] = gPCText_Name, + [MENU_TAKE] = gPCText_Take, + [MENU_GIVE] = gPCText_Give, + [MENU_GIVE_2] = gPCText_Give, + [MENU_SWITCH] = gPCText_Switch, + [MENU_BAG] = gPCText_Bag, + [MENU_INFO] = gPCText_Info, + [MENU_SCENERY_1] = gPCText_Scenery1, + [MENU_SCENERY_2] = gPCText_Scenery2, + [MENU_SCENERY_3] = gPCText_Scenery3, + [MENU_ETCETERA] = gPCText_Etcetera, + [MENU_FRIENDS] = gPCText_Friends, + [MENU_FOREST] = gPCText_Forest, + [MENU_CITY] = gPCText_City, + [MENU_DESERT] = gPCText_Desert, + [MENU_SAVANNA] = gPCText_Savanna, + [MENU_CRAG] = gPCText_Crag, + [MENU_VOLCANO] = gPCText_Volcano, + [MENU_SNOW] = gPCText_Snow, + [MENU_CAVE] = gPCText_Cave, + [MENU_BEACH] = gPCText_Beach, + [MENU_SEAFLOOR] = gPCText_Seafloor, + [MENU_RIVER] = gPCText_River, + [MENU_SKY] = gPCText_Sky, + [MENU_POLKADOT] = gPCText_PolkaDot, + [MENU_POKECENTER] = gPCText_Pokecenter, + [MENU_MACHINE] = gPCText_Machine, + [MENU_SIMPLE] = gPCText_Simple, }; static void SetMenuText(u8 textId) { - if (sPSSData->menuItemsCount < 7) + if (sPSSData->menuItemsCount < ARRAY_COUNT(sPSSData->menuItems)) { u8 len; struct StorageMenu *menu = &sPSSData->menuItems[sPSSData->menuItemsCount]; - menu->text = gUnknown_0857BA80[textId]; + menu->text = sMenuTexts[textId]; menu->textId = textId; len = StringLength(menu->text); if (len > sPSSData->menuWidth) @@ -7885,12 +7925,12 @@ static void SetMenuText(u8 textId) } } -static s8 sub_80CFF98(u8 arg0) +static s8 GetMenuItemTextId(u8 menuIdx) { - if (arg0 >= sPSSData->menuItemsCount) + if (menuIdx >= sPSSData->menuItemsCount) return -1; else - return sPSSData->menuItems[arg0].textId; + return sPSSData->menuItems[menuIdx].textId; } static void AddMenu(void) @@ -7899,11 +7939,11 @@ static void AddMenu(void) sPSSData->menuWindow.height = 2 * sPSSData->menuItemsCount; sPSSData->menuWindow.tilemapLeft = 29 - sPSSData->menuWindow.width; sPSSData->menuWindow.tilemapTop = 15 - sPSSData->menuWindow.height; - sPSSData->field_CB0 = AddWindow(&sPSSData->menuWindow); - ClearWindowTilemap(sPSSData->field_CB0); - DrawStdFrameWithCustomTileAndPalette(sPSSData->field_CB0, FALSE, 11, 14); - PrintMenuTable(sPSSData->field_CB0, sPSSData->menuItemsCount, (void*)sPSSData->menuItems); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sPSSData->field_CB0, sPSSData->menuItemsCount, 0); + sPSSData->menuWindowId = AddWindow(&sPSSData->menuWindow); + ClearWindowTilemap(sPSSData->menuWindowId); + DrawStdFrameWithCustomTileAndPalette(sPSSData->menuWindowId, FALSE, 11, 14); + PrintMenuTable(sPSSData->menuWindowId, sPSSData->menuItemsCount, (void*)sPSSData->menuItems); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sPSSData->menuWindowId, sPSSData->menuItemsCount, 0); ScheduleBgCopyTilemapToVram(0); sPSSData->field_CAE = 0; } @@ -7913,21 +7953,21 @@ static bool8 sub_80D00A8(void) return FALSE; } -static s16 sub_80D00AC(void) +static s16 HandleMenuInput(void) { - s32 textId = -2; + s32 input = MENU_NOTHING_CHOSEN; do { if (JOY_NEW(A_BUTTON)) { - textId = Menu_GetCursorPos(); + input = Menu_GetCursorPos(); break; } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - textId = -1; + input = MENU_B_PRESSED; } if (JOY_NEW(DPAD_UP)) @@ -7942,19 +7982,19 @@ static s16 sub_80D00AC(void) } } while (0); - if (textId != -2) - sub_80D013C(); + if (input != MENU_NOTHING_CHOSEN) + RemoveMenu(); - if (textId >= 0) - textId = sPSSData->menuItems[textId].textId; + if (input >= 0) + input = sPSSData->menuItems[input].textId; - return textId; + return input; } -static void sub_80D013C(void) +static void RemoveMenu(void) { - ClearStdWindowAndFrameToTransparent(sPSSData->field_CB0, TRUE); - RemoveWindow(sPSSData->field_CB0); + ClearStdWindowAndFrameToTransparent(sPSSData->menuWindowId, TRUE); + RemoveWindow(sPSSData->menuWindowId); } // The functions below handle moving and grabbing multiple mons at once. From a1ed59450e133a9dd84c59869418d449e48fc1ce Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 14:06:25 -0400 Subject: [PATCH 121/762] Doc storage - wallpaper and titles --- include/pokemon_storage_system.h | 2 - src/data/wallpapers.h | 393 +++++++++++ src/pokemon_storage_system.c | 1133 +++++++++++------------------- 3 files changed, 791 insertions(+), 737 deletions(-) create mode 100644 src/data/wallpapers.h diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 7b6a386780eb..4e5ccfcdadb8 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -51,8 +51,6 @@ void ZeroBoxMonAt(u8 boxId, u8 boxPosition); void BoxMonAtToMon(u8 boxId, u8 boxPosition, struct Pokemon *dst); struct BoxPokemon *GetBoxedMonPtr(u8 boxId, u8 boxPosition); u8 *GetBoxNamePtr(u8 boxId); -u8 GetBoxWallpaper(u8 boxId); -void SetBoxWallpaper(u8 boxId, u8 wallpaperId); s16 sub_80D214C(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3); bool8 CheckFreePokemonStorageSpace(void); bool32 CheckBoxMonSanityAt(u32 boxId, u32 boxPosition); diff --git a/src/data/wallpapers.h b/src/data/wallpapers.h new file mode 100644 index 000000000000..d075753b7940 --- /dev/null +++ b/src/data/wallpapers.h @@ -0,0 +1,393 @@ +enum { + WALLPAPER_FOREST, + WALLPAPER_CITY, + WALLPAPER_DESERT, + WALLPAPER_SAVANNA, + WALLPAPER_CRAG, + WALLPAPER_VOLCANO, + WALLPAPER_SNOW, + WALLPAPER_CAVE, + WALLPAPER_BEACH, + WALLPAPER_SEAFLOOR, + WALLPAPER_RIVER, + WALLPAPER_SKY, + WALLPAPER_POLKADOT, + WALLPAPER_POKECENTER, + WALLPAPER_MACHINE, + WALLPAPER_PLAIN, + WALLPAPER_FRIENDS, // The one received as a gift from Walda's parents. + WALLPAPER_COUNT +}; +#define MAX_DEFAULT_WALLPAPER WALLPAPER_SAVANNA + +static const u16 sWallpaperPalettes_Forest[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/forest_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/forest_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.4bpp.lz"); +static const u32 sWallpaperTilemap_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.bin.lz"); + +static const u16 sWallpaperPalettes_City[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/city_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/city_bg.gbapal"), +}; +static const u32 sWallpaperTiles_City[] = INCBIN_U32("graphics/pokemon_storage/city.4bpp.lz"); +static const u32 sWallpaperTilemap_City[] = INCBIN_U32("graphics/pokemon_storage/city.bin.lz"); + +static const u16 sWallpaperPalettes_Desert[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/desert_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/desert_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.4bpp.lz"); +static const u32 sWallpaperTilemap_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.bin.lz"); + +static const u16 sWallpaperPalettes_Savanna[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/savanna_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/savanna_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.4bpp.lz"); +static const u32 sWallpaperTilemap_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.bin.lz"); + +static const u16 sWallpaperPalettes_Crag[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/crag_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/crag_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.4bpp.lz"); +static const u32 sWallpaperTilemap_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.bin.lz"); + +static const u16 sWallpaperPalettes_Volcano[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/volcano_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/volcano_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.4bpp.lz"); +static const u32 sWallpaperTilemap_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.bin.lz"); + +static const u16 sWallpaperPalettes_Snow[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/snow_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/snow_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.4bpp.lz"); +static const u32 sWallpaperTilemap_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.bin.lz"); + +static const u16 sWallpaperPalettes_Cave[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/cave_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/cave_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.4bpp.lz"); +static const u32 sWallpaperTilemap_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.bin.lz"); + +static const u16 sWallpaperPalettes_Beach[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/beach_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/beach_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.4bpp.lz"); +static const u32 sWallpaperTilemap_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.bin.lz"); + +static const u16 sWallpaperPalettes_Seafloor[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/seafloor_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/seafloor_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.4bpp.lz"); +static const u32 sWallpaperTilemap_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.bin.lz"); + +static const u16 sWallpaperPalettes_River[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/river_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/river_bg.gbapal"), +}; +static const u32 sWallpaperTiles_River[] = INCBIN_U32("graphics/pokemon_storage/river.4bpp.lz"); +static const u32 sWallpaperTilemap_River[] = INCBIN_U32("graphics/pokemon_storage/river.bin.lz"); +static const u16 sWallpaperPalettes_Sky[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/sky_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/sky_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.4bpp.lz"); +static const u32 sWallpaperTilemap_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.bin.lz"); + +static const u16 sWallpaperPalettes_PolkaDot[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/polkadot_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/polkadot_bg.gbapal"), +}; +static const u32 sWallpaperTiles_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.4bpp.lz"); +static const u32 sWallpaperTilemap_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.bin.lz"); + +static const u16 sWallpaperPalettes_Pokecenter[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/pokecenter_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/pokecenter_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.4bpp.lz"); +static const u32 sWallpaperTilemap_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.bin.lz"); + +static const u16 sWallpaperPalettes_Machine[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/machine_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/machine_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.4bpp.lz"); +static const u32 sWallpaperTilemap_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.bin.lz"); + +static const u16 sWallpaperPalettes_Plain[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/plain_frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/plain_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.4bpp.lz"); +static const u32 sWallpaperTilemap_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.bin.lz"); + +// 12x18 tilemap +static const u32 gUnknown_085773C4[] = INCBIN_U32("graphics/unused/tilemap_5773C4.bin"); + +// Shadow color, text color +static const u16 sBoxTitleColors[WALLPAPER_COUNT][2] = +{ + [WALLPAPER_FOREST] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_CITY] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_DESERT] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_SAVANNA] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_CRAG] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_VOLCANO] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_SNOW] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_CAVE] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_BEACH] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_SEAFLOOR] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_RIVER] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_SKY] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_POLKADOT] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_POKECENTER] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_MACHINE] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_PLAIN] = {RGB(7, 7, 7), RGB_WHITE}, + [WALLPAPER_FRIENDS] = {RGB(7, 7, 7), RGB_WHITE} +}; + +#define WALLPAPER_ENTRY(name) {sWallpaperTiles_##name, sWallpaperTilemap_##name, sWallpaperPalettes_##name[0]} +// A few wallpapers are not defined in this file +#define WALLPAPER_ENTRY_G(name) {gWallpaperTiles_##name, gWallpaperTilemap_##name, gWallpaperPalettes_##name[0]} + +static const struct Wallpaper sWallpapers[WALLPAPER_COUNT - 1] = +{ + [WALLPAPER_FOREST] = WALLPAPER_ENTRY(Forest), + [WALLPAPER_CITY] = WALLPAPER_ENTRY(City), + [WALLPAPER_DESERT] = WALLPAPER_ENTRY(Desert), + [WALLPAPER_SAVANNA] = WALLPAPER_ENTRY(Savanna), + [WALLPAPER_CRAG] = WALLPAPER_ENTRY(Crag), + [WALLPAPER_VOLCANO] = WALLPAPER_ENTRY(Volcano), + [WALLPAPER_SNOW] = WALLPAPER_ENTRY(Snow), + [WALLPAPER_CAVE] = WALLPAPER_ENTRY(Cave), + [WALLPAPER_BEACH] = WALLPAPER_ENTRY(Beach), + [WALLPAPER_SEAFLOOR] = WALLPAPER_ENTRY(Seafloor), + [WALLPAPER_RIVER] = WALLPAPER_ENTRY(River), + [WALLPAPER_SKY] = WALLPAPER_ENTRY(Sky), + [WALLPAPER_POLKADOT] = WALLPAPER_ENTRY(PolkaDot), + [WALLPAPER_POKECENTER] = WALLPAPER_ENTRY(Pokecenter), + [WALLPAPER_MACHINE] = WALLPAPER_ENTRY(Machine), + [WALLPAPER_PLAIN] = WALLPAPER_ENTRY(Plain), +}; + +static const u8 sArrow_Gfx[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); + +static const u16 sWallpaperPalettes_Zigzagoon[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.4bpp.lz"); +static const u32 sWallpaperTilemap_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.bin.lz"); + +static const u16 sWallpaperPalettes_Screen[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/screen_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.4bpp.lz"); +static const u32 sWallpaperTilemap_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.bin.lz"); + +static const u16 sWallpaperPalettes_Diagonal[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/diagonal_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.4bpp.lz"); +static const u32 sWallpaperTilemap_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.bin.lz"); + +static const u16 sWallpaperPalettes_Block[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Block[] = INCBIN_U32("graphics/pokemon_storage/block.4bpp.lz"); +static const u32 sWallpaperTilemap_Block[] = INCBIN_U32("graphics/pokemon_storage/block.bin.lz"); + +static const u16 sWallpaperPalettes_Pokecenter2[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.4bpp.lz"); +static const u32 sWallpaperTilemap_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.bin.lz"); + +static const u16 sWallpaperPalettes_Frame[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.4bpp.lz"); +static const u32 sWallpaperTilemap_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.bin.lz"); + +static const u16 sWallpaperPalettes_Blank[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.4bpp.lz"); +static const u32 sWallpaperTilemap_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.bin.lz"); + +static const u16 sWallpaperPalettes_Circles[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/circles_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.4bpp.lz"); +static const u32 sWallpaperTilemap_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.bin.lz"); + +static const u16 sWallpaperPalettes_Azumarill[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/azumarill_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.4bpp.lz"); +static const u32 sWallpaperTilemap_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.bin.lz"); + +static const u16 sWallpaperPalettes_Pikachu[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/pikachu_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.4bpp.lz"); +static const u32 sWallpaperTilemap_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.bin.lz"); + +static const u16 sWallpaperPalettes_Legendary[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/legendary_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.4bpp.lz"); +static const u32 sWallpaperTilemap_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.bin.lz"); + +static const u16 sWallpaperPalettes_Dusclops[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/dusclops_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.4bpp.lz"); +static const u32 sWallpaperTilemap_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.bin.lz"); + +static const u16 sWallpaperPalettes_Ludicolo[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/ludicolo_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.4bpp.lz"); +static const u32 sWallpaperTilemap_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.bin.lz"); + +static const u16 sWallpaperPalettes_Whiscash[][16] = +{ + INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/whiscash_bg.gbapal"), +}; +static const u32 sWallpaperTiles_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.4bpp.lz"); +static const u32 sWallpaperTilemap_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.bin.lz"); + +static const u32 sWallpaperIcon_Aqua[] = INCBIN_U32("graphics/pokemon_storage/aqua_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Heart[] = INCBIN_U32("graphics/pokemon_storage/heart_icon.4bpp.lz"); +static const u32 sWallpaperIcon_FiveStar[] = INCBIN_U32("graphics/pokemon_storage/five_star_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Brick[] = INCBIN_U32("graphics/pokemon_storage/brick_icon.4bpp.lz"); +static const u32 sWallpaperIcon_FourStar[] = INCBIN_U32("graphics/pokemon_storage/four_star_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Asterisk[] = INCBIN_U32("graphics/pokemon_storage/asterisk_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Dot[] = INCBIN_U32("graphics/pokemon_storage/dot_icon.4bpp.lz"); +static const u32 sWallpaperIcon_LineCircle[] = INCBIN_U32("graphics/pokemon_storage/line_circle_icon.4bpp.lz"); +static const u32 sWallpaperIcon_PokeBall[] = INCBIN_U32("graphics/pokemon_storage/pokeball_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Maze[] = INCBIN_U32("graphics/pokemon_storage/maze_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Footprint[] = INCBIN_U32("graphics/pokemon_storage/footprint_icon.4bpp.lz"); +static const u32 sWallpaperIcon_BigAsterisk[] = INCBIN_U32("graphics/pokemon_storage/big_asterisk_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Circle[] = INCBIN_U32("graphics/pokemon_storage/circle_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Koffing[] = INCBIN_U32("graphics/pokemon_storage/koffing_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/ribbon_icon.4bpp.lz"); +static const u32 sWallpaperIcon_FourCircles[] = INCBIN_U32("graphics/pokemon_storage/four_circles_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Lotad[] = INCBIN_U32("graphics/pokemon_storage/lotad_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Crystal[] = INCBIN_U32("graphics/pokemon_storage/crystal_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Pichu[] = INCBIN_U32("graphics/pokemon_storage/pichu_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Diglett[] = INCBIN_U32("graphics/pokemon_storage/diglett_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Luvdisc[] = INCBIN_U32("graphics/pokemon_storage/luvdisc_icon.4bpp.lz"); +static const u32 sWallpaperIcon_StarInCircle[] = INCBIN_U32("graphics/pokemon_storage/star_in_circle_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Spinda[] = INCBIN_U32("graphics/pokemon_storage/spinda_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Latis[] = INCBIN_U32("graphics/pokemon_storage/latis_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Minun[] = INCBIN_U32("graphics/pokemon_storage/minun_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Togepi[] = INCBIN_U32("graphics/pokemon_storage/togepi_icon.4bpp.lz"); +static const u32 sWallpaperIcon_Magma[] = INCBIN_U32("graphics/pokemon_storage/magma_icon.4bpp.lz"); + +static const struct Wallpaper sWaldaWallpapers[] = +{ + WALLPAPER_ENTRY(Zigzagoon), + WALLPAPER_ENTRY(Screen), + WALLPAPER_ENTRY_G(Horizontal), + WALLPAPER_ENTRY(Diagonal), + WALLPAPER_ENTRY(Block), + WALLPAPER_ENTRY_G(Ribbon), + WALLPAPER_ENTRY(Pokecenter2), + WALLPAPER_ENTRY(Frame), + WALLPAPER_ENTRY(Blank), + WALLPAPER_ENTRY(Circles), + WALLPAPER_ENTRY(Azumarill), + WALLPAPER_ENTRY(Pikachu), + WALLPAPER_ENTRY(Legendary), + WALLPAPER_ENTRY(Dusclops), + WALLPAPER_ENTRY(Ludicolo), + WALLPAPER_ENTRY(Whiscash), +}; + +static const u32 *const sWaldaWallpaperIcons[] = +{ + sWallpaperIcon_Aqua, + sWallpaperIcon_Heart, + sWallpaperIcon_FiveStar, + sWallpaperIcon_Brick, + sWallpaperIcon_FourStar, + sWallpaperIcon_Asterisk, + sWallpaperIcon_Dot, + gWallpaperIcon_Cross, + sWallpaperIcon_LineCircle, + sWallpaperIcon_PokeBall, + sWallpaperIcon_Maze, + sWallpaperIcon_Footprint, + sWallpaperIcon_BigAsterisk, + sWallpaperIcon_Circle, + sWallpaperIcon_Koffing, + sWallpaperIcon_Ribbon, + gWallpaperIcon_Bolt, + sWallpaperIcon_FourCircles, + sWallpaperIcon_Lotad, + sWallpaperIcon_Crystal, + sWallpaperIcon_Pichu, + sWallpaperIcon_Diglett, + sWallpaperIcon_Luvdisc, + sWallpaperIcon_StarInCircle, + sWallpaperIcon_Spinda, + sWallpaperIcon_Latis, + gWallpaperIcon_Plusle, + sWallpaperIcon_Minun, + sWallpaperIcon_Togepi, + sWallpaperIcon_Magma, +}; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 99f16e43b730..6bcc10afcdd0 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -138,6 +138,7 @@ enum { MENU_MACHINE, MENU_SIMPLE, }; +#define MENU_WALLPAPER_SETS_START MENU_SCENERY_1 #define MENU_WALLPAPERS_START MENU_FOREST enum { @@ -153,27 +154,6 @@ enum { MODE_MOVE, }; -enum { - WALLPAPER_FOREST, - WALLPAPER_CITY, - WALLPAPER_DESERT, - WALLPAPER_SAVANNA, - WALLPAPER_CRAG, - WALLPAPER_VOLCANO, - WALLPAPER_SNOW, - WALLPAPER_CAVE, - WALLPAPER_BEACH, - WALLPAPER_SEAFLOOR, - WALLPAPER_RIVER, - WALLPAPER_SKY, - WALLPAPER_POLKADOT, - WALLPAPER_POKECENTER, - WALLPAPER_MACHINE, - WALLPAPER_PLAIN, - WALLPAPER_FRIENDS, // The one received as a gift from Walda's parents. - WALLPAPER_COUNT -}; - enum { FRIENDS_ZIGZAGOON, FRIENDS_SCREEN, @@ -206,26 +186,28 @@ enum { #define TAG_PAL_DAC6 0xDAC6 #define TAG_PAL_DACE 0xDACE #define TAG_PAL_DAC7 0xDAC7 -#define TAG_PAL_DAC9 0xDAC9 +#define PALTAG_BOX_TITLE 0xDAC9 #define TAG_PAL_DAC0 0xDAC0 #define TAG_PAL_DACB 0xDACB -#define TAG_TILE_WAVEFORM 0x5 -#define TAG_TILE_10 0x10 -#define TAG_TILE_2 0x2 -#define TAG_TILE_D 0xD -#define TAG_TILE_A 0xA -#define TAG_TILE_3 0x3 -#define TAG_TILE_4 0x4 -#define TAG_TILE_12 0x12 -#define TAG_TILE_7 0x7 -#define TAG_TILE_0 0x0 -#define TAG_TILE_1 0x1 +#define TAG_TILE_0 0 +#define TAG_TILE_1 1 +#define TAG_TILE_2 2 +#define GFXTAG_BOX_TITLE 3 +#define GFXTAG_BOX_TITLE_ALT 4 +#define TAG_TILE_WAVEFORM 5 +#define GFXTAG_ARROW 6 +#define TAG_TILE_7 7 +#define TAG_TILE_A 10 +#define TAG_TILE_D 13 +#define TAG_TILE_10 16 +#define TAG_TILE_12 18 -struct WallpaperTable + +struct Wallpaper { const u32 *tiles; - const u32 *tileMap; + const u32 *tilemap; const u16 *palettes; }; @@ -275,7 +257,7 @@ struct UnkPSSStruct_2002370 struct Sprite *unk_0000; struct Sprite *unk_0004[4]; u32 unk_0014[3]; - struct Sprite *unk_0020[2]; + struct Sprite *arrowSprites[2]; u8 filler_0028[0x214]; u32 unk_023c; u16 unk_0240; @@ -317,37 +299,37 @@ struct PokemonStorageSystemData u16 bg2_X; s16 wallpaperScrollSpeed; u16 field_2D0; - u8 field_2D2; + u8 wallpaperOffset; u8 field_2D3; // Written to, but never read. - u8 field_2D4; // Written to, but never read. + u8 scrollToBoxIdUnused; // Written to, but never read. u16 field_2D6; // Written to, but never read. - s16 field_2D8; // Written to, but never read. + s16 scrollDirectionUnused; // Written to, but never read. u16 field_2DA; // Written to, but never read. u16 field_2DC; // Written to, but never read. u16 field_2DE; // Written to, but never read. u16 field_2E0; // Written to, but never read. u8 filler[22]; - u8 field_2F8[1024]; - u8 field_6F8; - u8 field_6F9; // Written to, but never read. - u8 field_6FA; - s8 field_6FB; - u16 field_6FC[16]; - u16 field_71C; - u16 field_71E; - struct Sprite *field_720[2]; - struct Sprite *field_728[2]; - struct Sprite *field_730[2]; - u32 field_738; + u8 boxTitleTiles[1024]; + u8 boxTitleCycleId; + u8 wallpaperLoadState; // Written to, but never read. + u8 wallpaperLoadBoxId; + s8 wallpaperLoadDir; + u16 boxTitlePal[16]; + u16 boxTitlePalOffset; + u16 boxTitleAltPalOffset; + struct Sprite *curBoxTitleSprites[2]; + struct Sprite *nextBoxTitleSprites[2]; + struct Sprite *arrowSprites[2]; + u32 boxTitlePalBits; u8 field_73C[80]; // Unused u16 field_78C; // Written to, but never read. s16 wallpaperSetId; s16 wallpaperId; - u16 field_792[360]; + u16 wallpaperTilemap[360]; u8 wallpaperChangeState; - u8 field_A63; - u8 boxScrollDestination; - s8 field_A65; + u8 scrollState; + u8 scrollToBoxId; + s8 scrollDirection; u8 *wallpaperTiles; struct Sprite *movingMonSprite; struct Sprite *partySprites[PARTY_SIZE]; @@ -433,7 +415,7 @@ struct PokemonStorageSystemData struct BoxPokemon *box; } field_218C; u8 field_2190[40]; - u8 field_21B8[40]; + u8 boxTitleText[40]; u8 field_21E0[POKEMON_NAME_LENGTH + 1]; u8 itemName[20]; u8 inBoxMovingMode; @@ -449,7 +431,7 @@ struct PokemonStorageSystemData u8 field_22C4[0x800]; u8 field_2AC4[0x1800]; // Unused u8 field_42C4[0x800]; - u8 field_4AC4[0x1000]; + u8 wallpaperBgTilemapBuffer[0x1000]; u8 field_5AC4[0x800]; }; @@ -501,19 +483,19 @@ EWRAM_DATA static u8 sMovingMonOrigBoxPos = 0; EWRAM_DATA static bool8 sCanOnlyMove = 0; // This file's functions. -static void CreatePCMenu(u8 whichMenu, s16 *windowIdPtr); -static void Cb2_EnterPSS(u8 boxOption); +static void CreatePCMenu(u8, s16 *); +static void Cb2_EnterPSS(u8); static u8 GetCurrentBoxOption(void); static u8 HandleInput(void); static u8 sub_80CDC2C(void); static u8 sub_80CB9BC(void); -static void LoadWallpaperGfx(u8 boxId, s8 direction); -static void sub_80CCCFC(u8 boxId, s8 direction); -static void sub_80CD0B8(s8 direction); -static void SetCurrentBox(u8 boxId); -static void sub_80CC32C(u8 boxId); -static void sub_80C7958(u8 curBox); -static void sub_80CCAE0(void *arg0); +static void LoadWallpaperGfx(u8, s8); +static void CreateIncomingBoxTitle(u8, s8); +static void StartBoxScrollArrowsSlide(s8); +static void SetCurrentBox(u8); +static void CreateInitBoxTask(u8); +static void sub_80C7958(u8); +static void TrimOldWallpaper(void *); static void sub_80C7B14(void); static void sub_80C7BB4(void); static void ScrollBackground(void); @@ -561,14 +543,14 @@ static void sub_80D1194(void); static void PrintCursorMonInfo(void); static void sub_80CA65C(void); static void AddWallpaperSetsMenu(void); -static void sub_80CD02C(void); +static void CreateBoxScrollArrows(void); static void InitMenu(void); -static void sub_80CD158(void); +static void StopBoxScrollArrowsSlide(void); static void sub_80CFC14(void); static void sub_80CEB40(void); -static void sub_80CCEE0(void); +static void CycleBoxTitleSprites(void); static void sub_80D1818(void); -static void sub_80D19B4(u32 arg0); +static void sub_80D19B4(u32); static void sub_80CAA74(void); static void PrintItemDescription(void); static void sub_80CE760(void); @@ -578,7 +560,7 @@ static void sub_80CFECC(void); static void sub_80CA9EC(void); static void FreePSSData(void); static void AddBoxMenu(void); -static void sub_80CCF9C(void); +static void CycleBoxTitleColor(void); static void MoveMon(void); static void PlaceMon(void); static void sub_80CAB20(void); @@ -588,16 +570,16 @@ static void sub_80CB950(void); static void sub_80CA9C0(void); static void SetUpDoShowPartyMenu(void); static void BoxSetMosaic(void); -static void sub_80C7CF4(struct Sprite *sprite); -static void sub_80CC100(struct Sprite *sprite); -static void sub_80CB278(struct Sprite *sprite); -static void sub_80CD210(struct Sprite *sprite); +static void SpriteCB_JumpBoxArrow(struct Sprite *); +static void sub_80CC100(struct Sprite *); +static void sub_80CB278(struct Sprite *); +static void SpriteCB_Arrow(struct Sprite *); static bool32 WaitForWallpaperGfxLoad(void); static bool8 InitPSSWindows(void); static bool8 sub_80CC0A0(void); static bool8 sub_80CE2A8(void); static bool8 sub_80D0164(void); -static bool8 sub_80CC35C(void); +static bool8 IsInitBoxActive(void); static bool8 sub_80D01E4(void); static bool8 sub_80CDED4(void); static bool8 sub_80CDF08(void); @@ -614,14 +596,14 @@ static bool8 sub_80D0BC0(void); static bool8 sub_80CA2B8(void); static bool8 DoWallpaperGfxChange(void); static bool8 DoMonPlaceChange(void); -static bool8 sub_80D00A8(void); +static bool8 IsMenuLoading(void); static bool8 CanMovePartyMon(void); static bool8 CanShiftMon(void); static bool8 IsCursorOnCloseBox(void); static bool8 IsCursorOnBox(void); static bool8 IsCursorInBox(void); static bool8 IsMonBeingMoved(void); -static bool8 TryStorePartyMonInBox(u8 boxId); +static bool8 TryStorePartyMonInBox(u8); static void Cb_InitPSS(u8 taskId); static void Cb_PlaceMon(u8 taskId); static void Cb_ChangeScreen(u8 taskId); @@ -653,34 +635,34 @@ static void Cb_HandleWallpapers(u8 taskId); static void Cb_NameBox(u8 taskId); static void Cb_PrintCantStoreMail(u8 taskId); static void Cb_HandleMovingMonFromParty(u8 taskId); -static void SetUpScrollToBox(u8 boxId); -static void sub_80CFE54(u8 animNum); -static void SetMovingMonPriority(u8 priority); -static void InitMonPlaceChange(u8 arg0); -static void SetMonMarkings(u8 markings); -static void ShowYesNoWindow(s8 cursorPos); -static void sub_80CDBF8(u8 cursorBoxPosition); -static void sub_80D01D0(u8 arg0); -static void sub_80CD1A8(bool8 arg0); -static void sub_80CA984(bool8 arg0); -static void CreatePartyMonsSprites(bool8 arg0); +static void SetUpScrollToBox(u8); +static void sub_80CFE54(u8); +static void SetMovingMonPriority(u8); +static void InitMonPlaceChange(u8); +static void SetMonMarkings(u8); +static void ShowYesNoWindow(s8); +static void sub_80CDBF8(u8); +static void sub_80D01D0(u8); +static void AnimateBoxScrollArrows(bool8); +static void sub_80CA984(bool8); +static void CreatePartyMonsSprites(bool8); static void PrintMessage(u8 id); static s16 HandleMenuInput(void); static s8 RunCanReleaseMon(void); static u8 GetBoxCursorPosition(void); -static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos); -static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos); -static void Item_TakeMons(u8 cursorArea, u8 cursorPos); -static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos); -static struct Sprite *sub_80CD2E8(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority); -static void SetWallpaperForCurrentBox(u8 wallpaperId); -static void AddWallpapersMenu(u8 wallpaperSet); +static void Item_FromMonToMoving(u8, u8); +static void Item_GiveMovingToMon(u8, u8); +static void Item_TakeMons(u8, u8); +static void Item_SwitchMonsWithMoving(u8, u8); +static struct Sprite *CreateJumpBoxArrows(u16, u16, u8, u8, u8); +static void SetWallpaperForCurrentBox(u8); +static void AddWallpapersMenu(u8); static u16 GetMovingItem(void); static void LoadCursorMonGfx(u16 species, u32 pid); static void sub_80CA2D0(struct Sprite *sprite); -static void sub_80CCF64(struct Sprite *sprite); +static void SpriteCB_OutgoingBoxTitle(struct Sprite *); static void sub_80CBA3C(struct Sprite *sprite); -static void sub_80CCF30(struct Sprite *sprite); +static void SpriteCB_IncomingBoxTitle(struct Sprite *); static void sub_80CBAF0(s16 yDelta); static void sub_80CAAA8(u8 arg0, bool8 isPartyMon); static const u8 *GetMovingItemName(void); @@ -690,13 +672,13 @@ static void sub_80D0E50(u8 cursorArea, u8 cursorPos); static void sub_80D0F38(u16 item); static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 oamPriority, u8 subpriority); static void DestroyBoxMonIcon(struct Sprite *sprite); -static void SetBoxSpeciesAndPersonalities(u8 boxId); -static void sub_80CB9D0(struct Sprite *sprite, u16 partyId); -static void sub_80CC370(u8 taskId); -static void sub_80CCB50(u8 boxId); +static void SetBoxSpeciesAndPersonalities(u8); +static void sub_80CB9D0(struct Sprite *, u16); +static void Task_InitBox(u8 taskId); +static void InitBoxTitle(u8 boxId); static s8 DetermineBoxScrollDirection(u8 boxId); -static void sub_80CCA3C(const void *tilemap, s8 direction, u8 arg2); -static s16 sub_80CD00C(const u8 *string); +static void DrawWallpaper(const void *, s8, u8); +static s16 GetBoxTitleBaseX(const u8 *); static bool8 MonPlaceChange_Shift(void); static bool8 MonPlaceChange_Move(void); static bool8 MonPlaceChange_Place(void); @@ -750,6 +732,8 @@ static void sub_80D2A90(struct UnkStruct_2000020 *arg0, struct UnkStruct_2000028 static void sub_80D2AA4(void); static void sub_80D2B88(struct UnkStruct_2000028 *unkStruct); static void sub_80D2C1C(struct UnkStruct_2000028 *unkStruct); +static u8 GetBoxWallpaper(u8); +static void SetBoxWallpaper(u8, u8); // static const rom data static const struct PSS_MenuStringPtrs gUnknown_085716C0[] = @@ -1126,450 +1110,83 @@ static const union AffineAnimCmd *const gSpriteAffineAnimTable_857291C[] = gSpriteAffineAnim_8572904 }; -static const u16 gWallpaperPalettes_Forest[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/forest_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/forest_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.4bpp.lz"); -static const u32 gWallpaperTilemap_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.bin.lz"); - -static const u16 gWallpaperPalettes_City[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/city_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/city_bg.gbapal"), -}; -static const u32 gWallpaperTiles_City[] = INCBIN_U32("graphics/pokemon_storage/city.4bpp.lz"); -static const u32 gWallpaperTilemap_City[] = INCBIN_U32("graphics/pokemon_storage/city.bin.lz"); - -static const u16 gWallpaperPalettes_Desert[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/desert_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/desert_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.4bpp.lz"); -static const u32 gWallpaperTilemap_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.bin.lz"); - -static const u16 gWallpaperPalettes_Savanna[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/savanna_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/savanna_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.4bpp.lz"); -static const u32 gWallpaperTilemap_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.bin.lz"); - -static const u16 gWallpaperPalettes_Crag[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/crag_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/crag_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.4bpp.lz"); -static const u32 gWallpaperTilemap_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.bin.lz"); - -static const u16 gWallpaperPalettes_Volcano[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/volcano_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/volcano_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.4bpp.lz"); -static const u32 gWallpaperTilemap_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.bin.lz"); - -static const u16 gWallpaperPalettes_Snow[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/snow_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/snow_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.4bpp.lz"); -static const u32 gWallpaperTilemap_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.bin.lz"); - -static const u16 gWallpaperPalettes_Cave[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/cave_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/cave_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.4bpp.lz"); -static const u32 gWallpaperTilemap_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.bin.lz"); - -static const u16 gWallpaperPalettes_Beach[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/beach_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/beach_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.4bpp.lz"); -static const u32 gWallpaperTilemap_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.bin.lz"); - -static const u16 gWallpaperPalettes_Seafloor[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/seafloor_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/seafloor_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.4bpp.lz"); -static const u32 gWallpaperTilemap_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.bin.lz"); - -static const u16 gWallpaperPalettes_River[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/river_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/river_bg.gbapal"), -}; -static const u32 gWallpaperTiles_River[] = INCBIN_U32("graphics/pokemon_storage/river.4bpp.lz"); -static const u32 gWallpaperTilemap_River[] = INCBIN_U32("graphics/pokemon_storage/river.bin.lz"); -static const u16 gWallpaperPalettes_Sky[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/sky_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/sky_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.4bpp.lz"); -static const u32 gWallpaperTilemap_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.bin.lz"); - -static const u16 gWallpaperPalettes_PolkaDot[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/polkadot_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/polkadot_bg.gbapal"), -}; -static const u32 gWallpaperTiles_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.4bpp.lz"); -static const u32 gWallpaperTilemap_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.bin.lz"); - -static const u16 gWallpaperPalettes_Pokecenter[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/pokecenter_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pokecenter_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.4bpp.lz"); -static const u32 gWallpaperTilemap_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.bin.lz"); - -static const u16 gWallpaperPalettes_Machine[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/machine_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/machine_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.4bpp.lz"); -static const u32 gWallpaperTilemap_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.bin.lz"); - -static const u16 gWallpaperPalettes_Plain[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/plain_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/plain_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.4bpp.lz"); -static const u32 gWallpaperTilemap_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.bin.lz"); - -// 12x18 tilemap -static const u32 gUnknown_085773C4[] = INCBIN_U32("graphics/unused/tilemap_5773C4.bin"); - -static const u16 gUnknown_08577574[][2] = -{ - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF}, - {0x1CE7, 0x7FFF} -}; - -#define WALLPAPER_ENTRY(name) {gWallpaperTiles_##name, gWallpaperTilemap_##name, gWallpaperPalettes_##name[0]} - -static const struct WallpaperTable gWallpaperTable[] = -{ - [WALLPAPER_FOREST] = WALLPAPER_ENTRY(Forest), - [WALLPAPER_CITY] = WALLPAPER_ENTRY(City), - [WALLPAPER_DESERT] = WALLPAPER_ENTRY(Desert), - [WALLPAPER_SAVANNA] = WALLPAPER_ENTRY(Savanna), - [WALLPAPER_CRAG] = WALLPAPER_ENTRY(Crag), - [WALLPAPER_VOLCANO] = WALLPAPER_ENTRY(Volcano), - [WALLPAPER_SNOW] = WALLPAPER_ENTRY(Snow), - [WALLPAPER_CAVE] = WALLPAPER_ENTRY(Cave), - [WALLPAPER_BEACH] = WALLPAPER_ENTRY(Beach), - [WALLPAPER_SEAFLOOR] = WALLPAPER_ENTRY(Seafloor), - [WALLPAPER_RIVER] = WALLPAPER_ENTRY(River), - [WALLPAPER_SKY] = WALLPAPER_ENTRY(Sky), - [WALLPAPER_POLKADOT] = WALLPAPER_ENTRY(PolkaDot), - [WALLPAPER_POKECENTER] = WALLPAPER_ENTRY(Pokecenter), - [WALLPAPER_MACHINE] = WALLPAPER_ENTRY(Machine), - [WALLPAPER_PLAIN] = WALLPAPER_ENTRY(Plain), -}; - -static const u8 gPCGfx_Arrow[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); - -static const u16 gWallpaperPalettes_Zigzagoon[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.4bpp.lz"); -static const u32 gWallpaperTilemap_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.bin.lz"); - -static const u16 gWallpaperPalettes_Screen[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/screen_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.4bpp.lz"); -static const u32 gWallpaperTilemap_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.bin.lz"); - -static const u16 gWallpaperPalettes_Diagonal[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/diagonal_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.4bpp.lz"); -static const u32 gWallpaperTilemap_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.bin.lz"); - -static const u16 gWallpaperPalettes_Block[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Block[] = INCBIN_U32("graphics/pokemon_storage/block.4bpp.lz"); -static const u32 gWallpaperTilemap_Block[] = INCBIN_U32("graphics/pokemon_storage/block.bin.lz"); - -static const u16 gWallpaperPalettes_Pokecenter2[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.4bpp.lz"); -static const u32 gWallpaperTilemap_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.bin.lz"); - -static const u16 gWallpaperPalettes_Frame[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.4bpp.lz"); -static const u32 gWallpaperTilemap_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.bin.lz"); - -static const u16 gWallpaperPalettes_Blank[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.4bpp.lz"); -static const u32 gWallpaperTilemap_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.bin.lz"); - -static const u16 gWallpaperPalettes_Circles[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/circles_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.4bpp.lz"); -static const u32 gWallpaperTilemap_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.bin.lz"); - -static const u16 gWallpaperPalettes_Azumarill[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/azumarill_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.4bpp.lz"); -static const u32 gWallpaperTilemap_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.bin.lz"); - -static const u16 gWallpaperPalettes_Pikachu[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pikachu_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.4bpp.lz"); -static const u32 gWallpaperTilemap_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.bin.lz"); - -static const u16 gWallpaperPalettes_Legendary[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/legendary_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.4bpp.lz"); -static const u32 gWallpaperTilemap_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.bin.lz"); - -static const u16 gWallpaperPalettes_Dusclops[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/dusclops_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.4bpp.lz"); -static const u32 gWallpaperTilemap_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.bin.lz"); - -static const u16 gWallpaperPalettes_Ludicolo[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/ludicolo_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.4bpp.lz"); -static const u32 gWallpaperTilemap_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.bin.lz"); - -static const u16 gWallpaperPalettes_Whiscash[][16] = -{ - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/whiscash_bg.gbapal"), -}; -static const u32 gWallpaperTiles_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.4bpp.lz"); -static const u32 gWallpaperTilemap_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.bin.lz"); - -static const u32 gWallpaperIcon_Aqua[] = INCBIN_U32("graphics/pokemon_storage/aqua_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Heart[] = INCBIN_U32("graphics/pokemon_storage/heart_icon.4bpp.lz"); -static const u32 gWallpaperIcon_FiveStar[] = INCBIN_U32("graphics/pokemon_storage/five_star_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Brick[] = INCBIN_U32("graphics/pokemon_storage/brick_icon.4bpp.lz"); -static const u32 gWallpaperIcon_FourStar[] = INCBIN_U32("graphics/pokemon_storage/four_star_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Asterisk[] = INCBIN_U32("graphics/pokemon_storage/asterisk_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Dot[] = INCBIN_U32("graphics/pokemon_storage/dot_icon.4bpp.lz"); -static const u32 gWallpaperIcon_LineCircle[] = INCBIN_U32("graphics/pokemon_storage/line_circle_icon.4bpp.lz"); -static const u32 gWallpaperIcon_PokeBall[] = INCBIN_U32("graphics/pokemon_storage/pokeball_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Maze[] = INCBIN_U32("graphics/pokemon_storage/maze_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Footprint[] = INCBIN_U32("graphics/pokemon_storage/footprint_icon.4bpp.lz"); -static const u32 gWallpaperIcon_BigAsterisk[] = INCBIN_U32("graphics/pokemon_storage/big_asterisk_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Circle[] = INCBIN_U32("graphics/pokemon_storage/circle_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Koffing[] = INCBIN_U32("graphics/pokemon_storage/koffing_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/ribbon_icon.4bpp.lz"); -static const u32 gWallpaperIcon_FourCircles[] = INCBIN_U32("graphics/pokemon_storage/four_circles_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Lotad[] = INCBIN_U32("graphics/pokemon_storage/lotad_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Crystal[] = INCBIN_U32("graphics/pokemon_storage/crystal_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Pichu[] = INCBIN_U32("graphics/pokemon_storage/pichu_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Diglett[] = INCBIN_U32("graphics/pokemon_storage/diglett_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Luvdisc[] = INCBIN_U32("graphics/pokemon_storage/luvdisc_icon.4bpp.lz"); -static const u32 gWallpaperIcon_StarInCircle[] = INCBIN_U32("graphics/pokemon_storage/star_in_circle_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Spinda[] = INCBIN_U32("graphics/pokemon_storage/spinda_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Latis[] = INCBIN_U32("graphics/pokemon_storage/latis_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Minun[] = INCBIN_U32("graphics/pokemon_storage/minun_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Togepi[] = INCBIN_U32("graphics/pokemon_storage/togepi_icon.4bpp.lz"); -static const u32 gWallpaperIcon_Magma[] = INCBIN_U32("graphics/pokemon_storage/magma_icon.4bpp.lz"); - -static const struct WallpaperTable gFriendsWallpaperTable[] = -{ - WALLPAPER_ENTRY(Zigzagoon), - WALLPAPER_ENTRY(Screen), - WALLPAPER_ENTRY(Horizontal), - WALLPAPER_ENTRY(Diagonal), - WALLPAPER_ENTRY(Block), - WALLPAPER_ENTRY(Ribbon), - WALLPAPER_ENTRY(Pokecenter2), - WALLPAPER_ENTRY(Frame), - WALLPAPER_ENTRY(Blank), - WALLPAPER_ENTRY(Circles), - WALLPAPER_ENTRY(Azumarill), - WALLPAPER_ENTRY(Pikachu), - WALLPAPER_ENTRY(Legendary), - WALLPAPER_ENTRY(Dusclops), - WALLPAPER_ENTRY(Ludicolo), - WALLPAPER_ENTRY(Whiscash), -}; - -static const u32 *const gFriendsIcons[] = -{ - gWallpaperIcon_Aqua, - gWallpaperIcon_Heart, - gWallpaperIcon_FiveStar, - gWallpaperIcon_Brick, - gWallpaperIcon_FourStar, - gWallpaperIcon_Asterisk, - gWallpaperIcon_Dot, - gWallpaperIcon_Cross, - gWallpaperIcon_LineCircle, - gWallpaperIcon_PokeBall, - gWallpaperIcon_Maze, - gWallpaperIcon_Footprint, - gWallpaperIcon_BigAsterisk, - gWallpaperIcon_Circle, - gWallpaperIcon_Koffing, - gWallpaperIcon_Ribbon, - gWallpaperIcon_Bolt, - gWallpaperIcon_FourCircles, - gWallpaperIcon_Lotad, - gWallpaperIcon_Crystal, - gWallpaperIcon_Pichu, - gWallpaperIcon_Diglett, - gWallpaperIcon_Luvdisc, - gWallpaperIcon_StarInCircle, - gWallpaperIcon_Spinda, - gWallpaperIcon_Latis, - gWallpaperIcon_Plusle, - gWallpaperIcon_Minun, - gWallpaperIcon_Togepi, - gWallpaperIcon_Magma, -}; +#include "data/wallpapers.h" // Unknown Unused data. static const u16 gUnknown_0857B07C = 0x23BA; -static const struct SpriteSheet gUnknown_0857B080 = {gPCGfx_Arrow, 0x80, 6}; +static const struct SpriteSheet sSpriteSheet_Arrow = {sArrow_Gfx, 0x80, GFXTAG_ARROW}; -static const struct OamData gOamData_83BB298 = +static const struct OamData sOamData_BoxTitle = { .shape = SPRITE_SHAPE(32x16), .size = SPRITE_SIZE(32x16), .priority = 2 }; -static const union AnimCmd gSpriteAnim_83BB2A0[] = +static const union AnimCmd sAnim_BoxTitle_Left[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_83BB2A8[] = +static const union AnimCmd sAnim_BoxTitle_Right[] = { ANIMCMD_FRAME(8, 5), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_83BB2B0[] = +static const union AnimCmd *const sAnims_BoxTitle[] = { - gSpriteAnim_83BB2A0, - gSpriteAnim_83BB2A8 + sAnim_BoxTitle_Left, + sAnim_BoxTitle_Right }; -static const struct SpriteTemplate gSpriteTemplate_857B0A8 = +static const struct SpriteTemplate sSpriteTemplate_BoxTitle = { - TAG_TILE_3, - TAG_PAL_DAC9, - &gOamData_83BB298, - gSpriteAnimTable_83BB2B0, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy + .tileTag = GFXTAG_BOX_TITLE, + .paletteTag = PALTAG_BOX_TITLE, + .oam = &sOamData_BoxTitle, + .anims = sAnims_BoxTitle, + .images NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; -static const struct OamData gOamData_83BB2D0 = +static const struct OamData sOamData_Arrow = { .shape = SPRITE_SHAPE(8x16), .size = SPRITE_SIZE(8x16), .priority = 2 }; -static const union AnimCmd gSpriteAnim_83BB2D8[] = +static const union AnimCmd sAnim_Arrow_Left[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_83BB2E0[] = +static const union AnimCmd sAnim_Arrow_Right[] = { ANIMCMD_FRAME(2, 5), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_83BB2E8[] = +static const union AnimCmd *const sAnims_Arrow[] = { - gSpriteAnim_83BB2D8, - gSpriteAnim_83BB2E0 + sAnim_Arrow_Left, + sAnim_Arrow_Right }; -static const struct SpriteTemplate gUnknown_0857B0E0 = +static const struct SpriteTemplate sSpriteTemplate_Arrow = { - 6, - TAG_PAL_WAVEFORM, - &gOamData_83BB2D0, - gSpriteAnimTable_83BB2E8, - NULL, - gDummySpriteAffineAnimTable, - sub_80CD210 + .tileTag = GFXTAG_ARROW, + .paletteTag = TAG_PAL_WAVEFORM, + .oam = &sOamData_Arrow, + .anims = sAnims_Arrow, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCB_Arrow }; static const u16 gHandCursorPalette[] = INCBIN_U16("graphics/pokemon_storage/hand_cursor.gbapal"); @@ -1961,10 +1578,10 @@ void ResetPokemonStorageSystem(void) u8 *dest = StringCopy(GetBoxNamePtr(boxId), gText_Box); ConvertIntToDecimalStringN(dest, boxId + 1, STR_CONV_MODE_LEFT_ALIGN, 2); } + for (boxId = 0; boxId < TOTAL_BOXES_COUNT; boxId++) - { - SetBoxWallpaper(boxId, boxId % 4); - } + SetBoxWallpaper(boxId, boxId % (MAX_DEFAULT_WALLPAPER + 1)); + ResetWaldaWallpaper(); } @@ -2079,11 +1696,11 @@ static void sub_80C7958(u8 curBox) } for (i = 0; i < 2; i++) { - gUnknown_02039D04->unk_0020[i] = sub_80CD2E8(72 * i + 0x7c, 0x58, i, 0, gUnknown_02039D04->unk_0246); - if (gUnknown_02039D04->unk_0020[i]) + gUnknown_02039D04->arrowSprites[i] = CreateJumpBoxArrows(72 * i + 124, 88, i, 0, gUnknown_02039D04->unk_0246); + if (gUnknown_02039D04->arrowSprites[i]) { - gUnknown_02039D04->unk_0020[i]->data[0] = (i == 0 ? -1 : 1); - gUnknown_02039D04->unk_0020[i]->callback = sub_80C7CF4; + gUnknown_02039D04->arrowSprites[i]->data[0] = (i == 0 ? -1 : 1); + gUnknown_02039D04->arrowSprites[i]->callback = SpriteCB_JumpBoxArrow; } } sub_80C7BE4(); @@ -2107,8 +1724,8 @@ static void sub_80C7B14(void) } for (i = 0; i < 2; i++) { - if (gUnknown_02039D04->unk_0020[i]) - DestroySprite(gUnknown_02039D04->unk_0020[i]); + if (gUnknown_02039D04->arrowSprites[i]) + DestroySprite(gUnknown_02039D04->arrowSprites[i]); } } @@ -2156,7 +1773,7 @@ static void sub_80C7BE4(void) RemoveWindow(windowId); } -static void sub_80C7CF4(struct Sprite *sprite) +static void SpriteCB_JumpBoxArrow(struct Sprite *sprite) { if (++sprite->data[1] > 3) { @@ -2350,10 +1967,10 @@ static void Cb_InitPSS(u8 taskId) sub_80CA704(); break; case 8: - sub_80CC32C(StorageGetCurrentBox()); + CreateInitBoxTask(StorageGetCurrentBox()); break; case 9: - if (sub_80CC35C()) + if (IsInitBoxActive()) return; if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) @@ -2765,8 +2382,8 @@ static void Cb_OnSelectedMon(u8 taskId) sPSSData->state = 1; } break; - case 1: // debug? - if (!sub_80D00A8()) + case 1: + if (!IsMenuLoading()) sPSSData->state = 2; break; case 2: @@ -3553,7 +3170,7 @@ static void Cb_HandleBoxOptions(u8 taskId) sPSSData->state++; break; case 1: - if (sub_80D00A8()) + if (IsMenuLoading()) return; sPSSData->state++; case 2: @@ -3561,7 +3178,7 @@ static void Cb_HandleBoxOptions(u8 taskId) { case MENU_B_PRESSED: case MENU_CANCEL: - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; @@ -3594,7 +3211,7 @@ static void Cb_HandleWallpapers(u8 taskId) sPSSData->state++; break; case 1: - if (!sub_80D00A8()) + if (!IsMenuLoading()) sPSSData->state++; break; case 2: @@ -3602,7 +3219,7 @@ static void Cb_HandleWallpapers(u8 taskId) switch (sPSSData->wallpaperSetId) { case MENU_B_PRESSED: - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; @@ -3612,13 +3229,13 @@ static void Cb_HandleWallpapers(u8 taskId) case MENU_ETCETERA: PlaySE(SE_SELECT); RemoveMenu(); - sPSSData->wallpaperSetId -= 18; + sPSSData->wallpaperSetId -= MENU_WALLPAPER_SETS_START; sPSSData->state++; break; case MENU_FRIENDS: // New wallpaper from Walda. PlaySE(SE_SELECT); - sPSSData->wallpaperId = 16; + sPSSData->wallpaperId = WALLPAPER_FRIENDS; RemoveMenu(); ClearBottomWindow(); sPSSData->state = 6; @@ -3655,7 +3272,7 @@ static void Cb_HandleWallpapers(u8 taskId) case 5: if (!DoWallpaperGfxChange()) { - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); SetPSSCallback(Cb_MainPSS); } break; @@ -3691,7 +3308,7 @@ static void Cb_JumpBox(u8 taskId) sub_80C7890(); if (sPSSData->newCurrBoxId == 201 || sPSSData->newCurrBoxId == StorageGetCurrentBox()) { - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); SetPSSCallback(Cb_MainPSS); } else @@ -4493,25 +4110,25 @@ static void AddWallpapersMenu(u8 wallpaperSet) InitMenu(); switch (wallpaperSet) { - case 0: + case MENU_SCENERY_1 - MENU_WALLPAPER_SETS_START: SetMenuText(MENU_FOREST); SetMenuText(MENU_CITY); SetMenuText(MENU_DESERT); SetMenuText(MENU_SAVANNA); break; - case 1: + case MENU_SCENERY_2 - MENU_WALLPAPER_SETS_START: SetMenuText(MENU_CRAG); SetMenuText(MENU_VOLCANO); SetMenuText(MENU_SNOW); SetMenuText(MENU_CAVE); break; - case 2: + case MENU_SCENERY_3 - MENU_WALLPAPER_SETS_START: SetMenuText(MENU_BEACH); SetMenuText(MENU_SEAFLOOR); SetMenuText(MENU_RIVER); SetMenuText(MENU_SKY); break; - case 3: + case MENU_ETCETERA - MENU_WALLPAPER_SETS_START: SetMenuText(MENU_POLKADOT); SetMenuText(MENU_POKECENTER); SetMenuText(MENU_MACHINE); @@ -4576,7 +4193,7 @@ static void CreateMovingMonIcon(void) sPSSData->movingMonSprite->callback = sub_80CC100; } -static void sub_80CB028(u8 boxId) +static void InitBoxMonSprites(u8 boxId) { u8 boxPosition; u16 i, j, count; @@ -4585,6 +4202,8 @@ static void sub_80CB028(u8 boxId) count = 0; boxPosition = 0; + + // For each box slot, create a Pokémon icon if a species is present for (i = 0; i < IN_BOX_COLUMNS; i++) { for (j = 0; j < IN_BOX_ROWS; j++) @@ -4604,11 +4223,12 @@ static void sub_80CB028(u8 boxId) } } + // If in item mode, set all Pokémon icons with no item to be transparent if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) { for (boxPosition = 0; boxPosition < IN_BOX_COUNT; boxPosition++) { - if (GetBoxMonDataAt(boxId, boxPosition, MON_DATA_HELD_ITEM) == 0) + if (GetBoxMonDataAt(boxId, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; } } @@ -5260,59 +4880,67 @@ static void DestroyBoxMonIcon(struct Sprite *sprite) DestroySprite(sprite); } -static void sub_80CC32C(u8 boxId) +#define tState data[0] +#define tDmaIdx data[1] +#define tBoxId data[2] + +static void CreateInitBoxTask(u8 boxId) { - u8 taskId = CreateTask(sub_80CC370, 2); + u8 taskId = CreateTask(Task_InitBox, 2); - gTasks[taskId].data[2] = boxId; + gTasks[taskId].tBoxId = boxId; } -static bool8 sub_80CC35C(void) +static bool8 IsInitBoxActive(void) { - return FuncIsActiveTask(sub_80CC370); + return FuncIsActiveTask(Task_InitBox); } -static void sub_80CC370(u8 taskId) +static void Task_InitBox(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: - sPSSData->field_2D2 = 0; + sPSSData->wallpaperOffset = 0; sPSSData->bg2_X = 0; - task->data[1] = RequestDma3Fill(0, sPSSData->field_4AC4, 0x1000, 1); + task->tDmaIdx = RequestDma3Fill(0, sPSSData->wallpaperBgTilemapBuffer, sizeof(sPSSData->wallpaperBgTilemapBuffer), 1); break; case 1: - if (CheckForSpaceForDma3Request(task->data[1]) == -1) + if (CheckForSpaceForDma3Request(task->tDmaIdx) == -1) return; - SetBgTilemapBuffer(2, sPSSData->field_4AC4); + SetBgTilemapBuffer(2, sPSSData->wallpaperBgTilemapBuffer); ShowBg(2); break; case 2: - LoadWallpaperGfx(task->data[2], 0); + LoadWallpaperGfx(task->tBoxId, 0); break; case 3: if (!WaitForWallpaperGfxLoad()) return; - sub_80CCB50(task->data[2]); - sub_80CD02C(); - sub_80CB028(task->data[2]); + InitBoxTitle(task->tBoxId); + CreateBoxScrollArrows(); + InitBoxMonSprites(task->tBoxId); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(27) | BGCNT_TXT512x256); break; case 4: DestroyTask(taskId); break; default: - task->data[0] = 0; + task->tState = 0; return; } - task->data[0]++; + task->tState++; } +#undef tState +#undef tDmaIdx +#undef tBoxId + static void SetUpScrollToBox(u8 boxId) { s8 direction = DetermineBoxScrollDirection(boxId); @@ -5320,34 +4948,35 @@ static void SetUpScrollToBox(u8 boxId) sPSSData->wallpaperScrollSpeed = (direction > 0) ? 6 : -6; sPSSData->field_2D3 = (direction > 0) ? 1 : 2; sPSSData->field_2D0 = 32; - sPSSData->field_2D4 = boxId; + sPSSData->scrollToBoxIdUnused = boxId; sPSSData->field_2D6 = (direction <= 0) ? 5 : 0; - sPSSData->field_2D8 = direction; + sPSSData->scrollDirectionUnused = direction; + sPSSData->field_2DA = (direction > 0) ? 264 : 56; sPSSData->field_2DC = (direction <= 0) ? 5 : 0; sPSSData->field_2DE = 0; sPSSData->field_2E0 = 2; - sPSSData->boxScrollDestination = boxId; - sPSSData->field_A65 = direction; - sPSSData->field_A63 = 0; + sPSSData->scrollToBoxId = boxId; + sPSSData->scrollDirection = direction; + sPSSData->scrollState = 0; } static bool8 ScrollToBox(void) { bool8 var; - switch (sPSSData->field_A63) + switch (sPSSData->scrollState) { case 0: - LoadWallpaperGfx(sPSSData->boxScrollDestination, sPSSData->field_A65); - sPSSData->field_A63++; + LoadWallpaperGfx(sPSSData->scrollToBoxId, sPSSData->scrollDirection); + sPSSData->scrollState++; case 1: if (!WaitForWallpaperGfxLoad()) return TRUE; - sub_80CB4CC(sPSSData->boxScrollDestination, sPSSData->field_A65); - sub_80CCCFC(sPSSData->boxScrollDestination, sPSSData->field_A65); - sub_80CD0B8(sPSSData->field_A65); + sub_80CB4CC(sPSSData->scrollToBoxId, sPSSData->scrollDirection); + CreateIncomingBoxTitle(sPSSData->scrollToBoxId, sPSSData->scrollDirection); + StartBoxScrollArrowsSlide(sPSSData->scrollDirection); break; case 2: var = sub_80CB584(); @@ -5356,13 +4985,13 @@ static bool8 ScrollToBox(void) sPSSData->bg2_X += sPSSData->wallpaperScrollSpeed; if (--sPSSData->field_2D0 != 0) return TRUE; - sub_80CCEE0(); - sub_80CD158(); + CycleBoxTitleSprites(); + StopBoxScrollArrowsSlide(); } return var; } - sPSSData->field_A63++; + sPSSData->scrollState++; return TRUE; } @@ -5393,7 +5022,7 @@ static bool8 DoWallpaperGfxChange(void) switch (sPSSData->wallpaperChangeState) { case 0: - BeginNormalPaletteFade(sPSSData->field_738, 1, 0, 16, RGB_WHITEALPHA); + BeginNormalPaletteFade(sPSSData->boxTitlePalBits, 1, 0, 16, RGB_WHITEALPHA); sPSSData->wallpaperChangeState++; break; case 1: @@ -5407,8 +5036,8 @@ static bool8 DoWallpaperGfxChange(void) case 2: if (WaitForWallpaperGfxLoad() == TRUE) { - sub_80CCF9C(); - BeginNormalPaletteFade(sPSSData->field_738, 1, 16, 0, RGB_WHITEALPHA); + CycleBoxTitleColor(); + BeginNormalPaletteFade(sPSSData->boxTitlePalBits, 1, 16, 0, RGB_WHITEALPHA); sPSSData->wallpaperChangeState++; } break; @@ -5426,54 +5055,54 @@ static bool8 DoWallpaperGfxChange(void) static void LoadWallpaperGfx(u8 boxId, s8 direction) { u8 wallpaperId; - const struct WallpaperTable *wallpaperGfx; + const struct Wallpaper *wallpaper; void *iconGfx; - u32 size1, size2; + u32 tilesSize, iconSize; - sPSSData->field_6F9 = 0; - sPSSData->field_6FA = boxId; - sPSSData->field_6FB = direction; - if (sPSSData->field_6FB != 0) + sPSSData->wallpaperLoadState = 0; + sPSSData->wallpaperLoadBoxId = boxId; + sPSSData->wallpaperLoadDir = direction; + if (sPSSData->wallpaperLoadDir != 0) { - sPSSData->field_2D2 = (sPSSData->field_2D2 == 0); - sub_80CCAE0(sPSSData->field_4AC4); + sPSSData->wallpaperOffset = (sPSSData->wallpaperOffset == 0); + TrimOldWallpaper(sPSSData->wallpaperBgTilemapBuffer); } - wallpaperId = GetBoxWallpaper(sPSSData->field_6FA); + wallpaperId = GetBoxWallpaper(sPSSData->wallpaperLoadBoxId); if (wallpaperId != WALLPAPER_FRIENDS) { - wallpaperGfx = &gWallpaperTable[wallpaperId]; - LZ77UnCompWram(wallpaperGfx->tileMap, sPSSData->field_792); - sub_80CCA3C(sPSSData->field_792, sPSSData->field_6FB, sPSSData->field_2D2); + wallpaper = &sWallpapers[wallpaperId]; + LZ77UnCompWram(wallpaper->tilemap, sPSSData->wallpaperTilemap); + DrawWallpaper(sPSSData->wallpaperTilemap, sPSSData->wallpaperLoadDir, sPSSData->wallpaperOffset); - if (sPSSData->field_6FB != 0) - LoadPalette(wallpaperGfx->palettes, (sPSSData->field_2D2 * 32) + 0x40, 0x40); + if (sPSSData->wallpaperLoadDir != 0) + LoadPalette(wallpaper->palettes, (sPSSData->wallpaperOffset * 32) + 0x40, 0x40); else - CpuCopy16(wallpaperGfx->palettes, &gPlttBufferUnfaded[(sPSSData->field_2D2 * 32) + 0x40], 0x40); + CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[(sPSSData->wallpaperOffset * 32) + 0x40], 0x40); - sPSSData->wallpaperTiles = malloc_and_decompress(wallpaperGfx->tiles, &size1); - LoadBgTiles(2, sPSSData->wallpaperTiles, size1, sPSSData->field_2D2 << 8); + sPSSData->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); + LoadBgTiles(2, sPSSData->wallpaperTiles, tilesSize, sPSSData->wallpaperOffset << 8); } else { - wallpaperGfx = &gFriendsWallpaperTable[GetWaldaWallpaperPatternId()]; - LZ77UnCompWram(wallpaperGfx->tileMap, sPSSData->field_792); - sub_80CCA3C(sPSSData->field_792, sPSSData->field_6FB, sPSSData->field_2D2); + wallpaper = &sWaldaWallpapers[GetWaldaWallpaperPatternId()]; + LZ77UnCompWram(wallpaper->tilemap, sPSSData->wallpaperTilemap); + DrawWallpaper(sPSSData->wallpaperTilemap, sPSSData->wallpaperLoadDir, sPSSData->wallpaperOffset); - CpuCopy16(wallpaperGfx->palettes, sPSSData->field_792, 0x40); - CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->field_792[1], 4); - CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->field_792[17], 4); + CpuCopy16(wallpaper->palettes, sPSSData->wallpaperTilemap, 0x40); + CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->wallpaperTilemap[1], 4); + CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->wallpaperTilemap[17], 4); - if (sPSSData->field_6FB != 0) - LoadPalette(sPSSData->field_792, (sPSSData->field_2D2 * 32) + 0x40, 0x40); + if (sPSSData->wallpaperLoadDir != 0) + LoadPalette(sPSSData->wallpaperTilemap, (sPSSData->wallpaperOffset * 32) + 0x40, 0x40); else - CpuCopy16(sPSSData->field_792, &gPlttBufferUnfaded[(sPSSData->field_2D2 * 32) + 0x40], 0x40); + CpuCopy16(sPSSData->wallpaperTilemap, &gPlttBufferUnfaded[(sPSSData->wallpaperOffset * 32) + 0x40], 0x40); - sPSSData->wallpaperTiles = malloc_and_decompress(wallpaperGfx->tiles, &size1); - iconGfx = malloc_and_decompress(gFriendsIcons[GetWaldaWallpaperIconId()], &size2); - CpuCopy32(iconGfx, sPSSData->wallpaperTiles + 0x800, size2); + sPSSData->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); + iconGfx = malloc_and_decompress(sWaldaWallpaperIcons[GetWaldaWallpaperIconId()], &iconSize); + CpuCopy32(iconGfx, sPSSData->wallpaperTiles + 0x800, iconSize); Free(iconGfx); - LoadBgTiles(2, sPSSData->wallpaperTiles, size1, sPSSData->field_2D2 << 8); + LoadBgTiles(2, sPSSData->wallpaperTiles, tilesSize, sPSSData->wallpaperOffset << 8); } CopyBgTilemapBufferToVram(2); @@ -5492,12 +5121,12 @@ static bool32 WaitForWallpaperGfxLoad(void) return TRUE; } -static void sub_80CCA3C(const void *tilemap, s8 direction, u8 arg2) +static void DrawWallpaper(const void *tilemap, s8 direction, u8 offset) { - s16 var = (arg2 * 2) + 3; + s16 var = (offset * 2) + 3; s16 x = ((sPSSData->bg2_X / 8 + 10) + (direction * 24)) & 0x3F; - CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, arg2 << 8, var); + CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, offset << 8, var); if (direction == 0) return; @@ -5509,10 +5138,10 @@ static void sub_80CCA3C(const void *tilemap, s8 direction, u8 arg2) FillBgTilemapBufferRect(2, 0, x, 2, 4, 0x12, 0x11); } -static void sub_80CCAE0(void *arg0) +static void TrimOldWallpaper(void *tilemap) { u16 i; - u16 *dest = arg0; + u16 *dest = tilemap; s16 r3 = ((sPSSData->bg2_X / 8) + 30) & 0x3F; if (r3 <= 31) @@ -5531,238 +5160,266 @@ static void sub_80CCAE0(void *arg0) } } -static void sub_80CCB50(u8 boxId) +static void InitBoxTitle(u8 boxId) { u8 tagIndex; - s16 r6; + s16 x; u16 i; - struct SpriteSheet spriteSheet = {sPSSData->field_2F8, 0x200, TAG_TILE_3}; + struct SpriteSheet spriteSheet = {sPSSData->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; struct SpritePalette palettes[] = { - {sPSSData->field_6FC, TAG_PAL_DAC9}, + {sPSSData->boxTitlePal, PALTAG_BOX_TITLE}, {} }; u16 wallpaperId = GetBoxWallpaper(boxId); - sPSSData->field_6FC[14] = gUnknown_08577574[wallpaperId][0]; - sPSSData->field_6FC[15] = gUnknown_08577574[wallpaperId][1]; + sPSSData->boxTitlePal[14] = sBoxTitleColors[wallpaperId][0]; // Shadow color + sPSSData->boxTitlePal[15] = sBoxTitleColors[wallpaperId][1]; // Text Color LoadSpritePalettes(palettes); - sPSSData->field_738 = 0x3f0; - - tagIndex = IndexOfSpritePaletteTag(TAG_PAL_DAC9); - sPSSData->field_71C = 0x10e + 16 * tagIndex; - sPSSData->field_738 |= 0x10000 << tagIndex; - - tagIndex = IndexOfSpritePaletteTag(TAG_PAL_DAC9); - sPSSData->field_71E = 0x10e + 16 * tagIndex; - sPSSData->field_738 |= 0x10000 << tagIndex; - - StringCopyPadded(sPSSData->field_21B8, GetBoxNamePtr(boxId), 0, 8); - DrawTextWindowAndBufferTiles(sPSSData->field_21B8, sPSSData->field_2F8, 0, 0, 2); + sPSSData->boxTitlePalBits = 0x3f0; + + tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); + sPSSData->boxTitlePalOffset = 0x10e + 16 * tagIndex; + sPSSData->boxTitlePalBits |= 0x10000 << tagIndex; + + // The below seems intended to have separately tracked + // the incoming wallpaper title's palette, but as they now + // share a palette tag, all colors (and fields in some cases) + // this is redundant along with the use of boxTitleAltPalOffset + tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); + sPSSData->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; + sPSSData->boxTitlePalBits |= 0x10000 << tagIndex; + + StringCopyPadded(sPSSData->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + DrawTextWindowAndBufferTiles(sPSSData->boxTitleText, sPSSData->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); - r6 = sub_80CD00C(GetBoxNamePtr(boxId)); + x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); + // Title is split across two sprites for (i = 0; i < 2; i++) { - u8 spriteId = CreateSprite(&gSpriteTemplate_857B0A8, r6 + i * 32, 28, 24); - sPSSData->field_720[i] = &gSprites[spriteId]; - StartSpriteAnim(sPSSData->field_720[i], i); + u8 spriteId = CreateSprite(&sSpriteTemplate_BoxTitle, x + i * 32, 28, 24); + sPSSData->curBoxTitleSprites[i] = &gSprites[spriteId]; + StartSpriteAnim(sPSSData->curBoxTitleSprites[i], i); } - sPSSData->field_6F8 = 0; + sPSSData->boxTitleCycleId = 0; } -static void sub_80CCCFC(u8 boxId, s8 direction) +// Sprite data for moving title text +#define sSpeed data[0] +// Flipped between incoming/outgoing for some reason +#define sIncomingX data[1] +#define sIncomingDelay data[2] +#define sOutgoingDelay data[1] +#define sOutgoingX data[2] + +static void CreateIncomingBoxTitle(u8 boxId, s8 direction) { - u16 r8; - s16 x, x2; + u16 palOffset; + s16 x, adjustedX; u16 i; - struct SpriteSheet spriteSheet = {sPSSData->field_2F8, 0x200, TAG_TILE_3}; - struct SpriteTemplate template = gSpriteTemplate_857B0A8; + struct SpriteSheet spriteSheet = {sPSSData->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; + struct SpriteTemplate template = sSpriteTemplate_BoxTitle; - sPSSData->field_6F8 = (sPSSData->field_6F8 == 0); - if (sPSSData->field_6F8 == 0) + sPSSData->boxTitleCycleId = (sPSSData->boxTitleCycleId == 0); + if (sPSSData->boxTitleCycleId == 0) { - spriteSheet.tag = TAG_TILE_3; - r8 = sPSSData->field_71C; + spriteSheet.tag = GFXTAG_BOX_TITLE; + palOffset = sPSSData->boxTitlePalOffset; } else { - spriteSheet.tag = TAG_TILE_4; - r8 = sPSSData->field_71C; - template.tileTag = TAG_TILE_4; - template.paletteTag = TAG_PAL_DAC9; + spriteSheet.tag = GFXTAG_BOX_TITLE_ALT; + palOffset = sPSSData->boxTitlePalOffset; + template.tileTag = GFXTAG_BOX_TITLE_ALT; + template.paletteTag = PALTAG_BOX_TITLE; } - StringCopyPadded(sPSSData->field_21B8, GetBoxNamePtr(boxId), 0, 8); - DrawTextWindowAndBufferTiles(sPSSData->field_21B8, sPSSData->field_2F8, 0, 0, 2); + StringCopyPadded(sPSSData->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + DrawTextWindowAndBufferTiles(sPSSData->boxTitleText, sPSSData->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); - LoadPalette(gUnknown_08577574[GetBoxWallpaper(boxId)], r8, 4); - x = sub_80CD00C(GetBoxNamePtr(boxId)); - x2 = x; - x2 += direction * 192; + LoadPalette(sBoxTitleColors[GetBoxWallpaper(boxId)], palOffset, 4); + x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); + adjustedX = x; + adjustedX += direction * 192; + // Title is split across two sprites for (i = 0; i < 2; i++) { - u8 spriteId = CreateSprite(&template, i * 32 + x2, 28, 24); + u8 spriteId = CreateSprite(&template, i * 32 + adjustedX, 28, 24); - sPSSData->field_728[i] = &gSprites[spriteId]; - sPSSData->field_728[i]->data[0] = (-direction) * 6; - sPSSData->field_728[i]->data[1] = i * 32 + x; - sPSSData->field_728[i]->data[2] = 0; - sPSSData->field_728[i]->callback = sub_80CCF30; - StartSpriteAnim(sPSSData->field_728[i], i); + sPSSData->nextBoxTitleSprites[i] = &gSprites[spriteId]; + sPSSData->nextBoxTitleSprites[i]->sSpeed = (-direction) * 6; + sPSSData->nextBoxTitleSprites[i]->sIncomingX = i * 32 + x; + sPSSData->nextBoxTitleSprites[i]->sIncomingDelay = 0; + sPSSData->nextBoxTitleSprites[i]->callback = SpriteCB_IncomingBoxTitle; + StartSpriteAnim(sPSSData->nextBoxTitleSprites[i], i); - sPSSData->field_720[i]->data[0] = (-direction) * 6; - sPSSData->field_720[i]->data[1] = 1; - sPSSData->field_720[i]->callback = sub_80CCF64; + sPSSData->curBoxTitleSprites[i]->sSpeed = (-direction) * 6; + sPSSData->curBoxTitleSprites[i]->sOutgoingDelay = 1; + sPSSData->curBoxTitleSprites[i]->callback = SpriteCB_OutgoingBoxTitle; } } -static void sub_80CCEE0(void) +static void CycleBoxTitleSprites(void) { - if (sPSSData->field_6F8 == 0) - FreeSpriteTilesByTag(TAG_TILE_4); + if (sPSSData->boxTitleCycleId == 0) + FreeSpriteTilesByTag(GFXTAG_BOX_TITLE_ALT); else - FreeSpriteTilesByTag(TAG_TILE_3); + FreeSpriteTilesByTag(GFXTAG_BOX_TITLE); - sPSSData->field_720[0] = sPSSData->field_728[0]; - sPSSData->field_720[1] = sPSSData->field_728[1]; + sPSSData->curBoxTitleSprites[0] = sPSSData->nextBoxTitleSprites[0]; + sPSSData->curBoxTitleSprites[1] = sPSSData->nextBoxTitleSprites[1]; } -static void sub_80CCF30(struct Sprite *sprite) +static void SpriteCB_IncomingBoxTitle(struct Sprite *sprite) { - if (sprite->data[2] != 0) - sprite->data[2]--; - else if ((sprite->pos1.x += sprite->data[0]) == sprite->data[1]) + if (sprite->sIncomingDelay != 0) + sprite->sIncomingDelay--; + else if ((sprite->pos1.x += sprite->sSpeed) == sprite->sIncomingX) sprite->callback = SpriteCallbackDummy; } -static void sub_80CCF64(struct Sprite *sprite) +static void SpriteCB_OutgoingBoxTitle(struct Sprite *sprite) { - if (sprite->data[1] != 0) + if (sprite->sOutgoingDelay != 0) { - sprite->data[1]--; + sprite->sOutgoingDelay--; } else { - sprite->pos1.x += sprite->data[0]; - sprite->data[2] = sprite->pos1.x + sprite->pos2.x; - if (sprite->data[2] < 0x40 || sprite->data[2] > 0x100) + sprite->pos1.x += sprite->sSpeed; + sprite->sOutgoingX = sprite->pos1.x + sprite->pos2.x; + if (sprite->sOutgoingX < 64 || sprite->sOutgoingX > DISPLAY_WIDTH + 16) DestroySprite(sprite); } } -static void sub_80CCF9C(void) +#undef sSpeed +#undef sIncomingX +#undef sIncomingDelay +#undef sOutgoingDelay +#undef sOutgoingX + +static void CycleBoxTitleColor(void) { u8 boxId = StorageGetCurrentBox(); u8 wallpaperId = GetBoxWallpaper(boxId); - if (sPSSData->field_6F8 == 0) - CpuCopy16(gUnknown_08577574[wallpaperId], gPlttBufferUnfaded + sPSSData->field_71C, 4); + if (sPSSData->boxTitleCycleId == 0) + CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sPSSData->boxTitlePalOffset, 4); else - CpuCopy16(gUnknown_08577574[wallpaperId], gPlttBufferUnfaded + sPSSData->field_71E, 4); + CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sPSSData->boxTitleAltPalOffset, 4); } -static s16 sub_80CD00C(const u8 *string) +static s16 GetBoxTitleBaseX(const u8 *string) { - return 0xB0 - GetStringWidth(1, string, 0) / 2; + return DISPLAY_WIDTH - 64 - GetStringWidth(1, string, 0) / 2; } -static void sub_80CD02C(void) +// Sprite data for box scroll arrows +#define sState data[0] +#define sTimer data[1] +#define sSpeed data[3] + +static void CreateBoxScrollArrows(void) { u16 i; - LoadSpriteSheet(&gUnknown_0857B080); + LoadSpriteSheet(&sSpriteSheet_Arrow); for (i = 0; i < 2; i++) { - u8 spriteId = CreateSprite(&gUnknown_0857B0E0, 0x5c + i * 0x88, 28, 22); + u8 spriteId = CreateSprite(&sSpriteTemplate_Arrow, 92 + i * 136, 28, 22); if (spriteId != MAX_SPRITES) { struct Sprite *sprite = &gSprites[spriteId]; StartSpriteAnim(sprite, i); - sprite->data[3] = (i == 0) ? -1 : 1; - sPSSData->field_730[i] = sprite; + sprite->sSpeed = (i == 0) ? -1 : 1; + sPSSData->arrowSprites[i] = sprite; } } if (IsCursorOnBox()) - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); } -static void sub_80CD0B8(s8 direction) +// Slide box scroll arrows horizontally for box change +static void StartBoxScrollArrowsSlide(s8 direction) { u16 i; for (i = 0; i < 2; i++) { - sPSSData->field_730[i]->pos2.x = 0; - sPSSData->field_730[i]->data[0] = 2; + sPSSData->arrowSprites[i]->pos2.x = 0; + sPSSData->arrowSprites[i]->sState = 2; } if (direction < 0) { - sPSSData->field_730[0]->data[1] = 29; - sPSSData->field_730[1]->data[1] = 5; - sPSSData->field_730[0]->data[2] = 0x48; - sPSSData->field_730[1]->data[2] = 0x48; + sPSSData->arrowSprites[0]->sTimer = 29; + sPSSData->arrowSprites[1]->sTimer = 5; + sPSSData->arrowSprites[0]->data[2] = 72; + sPSSData->arrowSprites[1]->data[2] = 72; } else { - sPSSData->field_730[0]->data[1] = 5; - sPSSData->field_730[1]->data[1] = 29; - sPSSData->field_730[0]->data[2] = 0xF8; - sPSSData->field_730[1]->data[2] = 0xF8; + sPSSData->arrowSprites[0]->sTimer = 5; + sPSSData->arrowSprites[1]->sTimer = 29; + sPSSData->arrowSprites[0]->data[2] = DISPLAY_WIDTH + 8; + sPSSData->arrowSprites[1]->data[2] = DISPLAY_WIDTH + 8; } - sPSSData->field_730[0]->data[7] = 0; - sPSSData->field_730[1]->data[7] = 1; + sPSSData->arrowSprites[0]->data[7] = 0; + sPSSData->arrowSprites[1]->data[7] = 1; } -static void sub_80CD158(void) +// New box's scroll arrows have entered, stop sliding and set their position +static void StopBoxScrollArrowsSlide(void) { u16 i; for (i = 0; i < 2; i++) { - sPSSData->field_730[i]->pos1.x = 0x88 * i + 0x5c; - sPSSData->field_730[i]->pos2.x = 0; - sPSSData->field_730[i]->invisible = FALSE; + sPSSData->arrowSprites[i]->pos1.x = 136 * i + 92; + sPSSData->arrowSprites[i]->pos2.x = 0; + sPSSData->arrowSprites[i]->invisible = FALSE; } - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); } -static void sub_80CD1A8(bool8 a0) +// Bounce scroll arrows while title is selected +static void AnimateBoxScrollArrows(bool8 animate) { u16 i; - if (a0) + if (animate) { + // Start arrows moving for (i = 0; i < 2; i++) { - sPSSData->field_730[i]->data[0] = 1; - sPSSData->field_730[i]->data[1] = 0; - sPSSData->field_730[i]->data[2] = 0; - sPSSData->field_730[i]->data[4] = 0; + sPSSData->arrowSprites[i]->sState = 1; + sPSSData->arrowSprites[i]->sTimer = 0; + sPSSData->arrowSprites[i]->data[2] = 0; + sPSSData->arrowSprites[i]->data[4] = 0; } } else { + // Stop arrows moving for (i = 0; i < 2; i++) - { - sPSSData->field_730[i]->data[0] = 0; - } + sPSSData->arrowSprites[i]->sState = 0; } } -static void sub_80CD210(struct Sprite *sprite) +static void SpriteCB_Arrow(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->pos2.x = 0; break; case 1: - if (++sprite->data[1] > 3) + if (++sprite->sTimer > 3) { - sprite->data[1] = 0; - sprite->pos2.x += sprite->data[3]; + sprite->sTimer = 0; + sprite->pos2.x += sprite->sSpeed; if (++sprite->data[2] > 5) { sprite->data[2] = 0; @@ -5771,17 +5428,17 @@ static void sub_80CD210(struct Sprite *sprite) } break; case 2: - sprite->data[0] = 3; + sprite->sState = 3; break; case 3: sprite->pos1.x -= sPSSData->wallpaperScrollSpeed; - if (sprite->pos1.x < 73 || sprite->pos1.x > 247) + if (sprite->pos1.x <= 72 || sprite->pos1.x >= DISPLAY_WIDTH + 8) sprite->invisible = TRUE; - if (--sprite->data[1] == 0) + if (--sprite->sTimer == 0) { sprite->pos1.x = sprite->data[2]; sprite->invisible = FALSE; - sprite->data[0] = 4; + sprite->sState = 4; } break; case 4: @@ -5790,9 +5447,12 @@ static void sub_80CD210(struct Sprite *sprite) } } -static struct Sprite *sub_80CD2E8(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority) +#undef sState +#undef sSpeed + +static struct Sprite *CreateJumpBoxArrows(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority) { - u8 spriteId = CreateSprite(&gUnknown_0857B0E0, x, y, subpriority); + u8 spriteId = CreateSprite(&sSpriteTemplate_Arrow, x, y, subpriority); if (spriteId == MAX_SPRITES) return NULL; @@ -5905,25 +5565,25 @@ static bool8 sub_80CD554(void) sPSSData->field_CC0 += sPSSData->field_CC8; sPSSData->field_CB4->pos1.x = sPSSData->field_CBC >> 8; sPSSData->field_CB4->pos1.y = sPSSData->field_CC0 >> 8; - if (sPSSData->field_CB4->pos1.x > 0x100) + if (sPSSData->field_CB4->pos1.x > DISPLAY_WIDTH + 16) { - tmp = sPSSData->field_CB4->pos1.x - 0x100; - sPSSData->field_CB4->pos1.x = tmp + 0x40; + tmp = sPSSData->field_CB4->pos1.x - (DISPLAY_WIDTH + 16); + sPSSData->field_CB4->pos1.x = tmp + 64; } - if (sPSSData->field_CB4->pos1.x < 0x40) + if (sPSSData->field_CB4->pos1.x < 64) { - tmp = 0x40 - sPSSData->field_CB4->pos1.x; - sPSSData->field_CB4->pos1.x = 0x100 - tmp; + tmp = 64 - sPSSData->field_CB4->pos1.x; + sPSSData->field_CB4->pos1.x = DISPLAY_WIDTH + 16 - tmp; } - if (sPSSData->field_CB4->pos1.y > 0xb0) + if (sPSSData->field_CB4->pos1.y > DISPLAY_HEIGHT + 16) { - tmp = sPSSData->field_CB4->pos1.y - 0xb0; - sPSSData->field_CB4->pos1.y = tmp - 0x10; + tmp = sPSSData->field_CB4->pos1.y - (DISPLAY_HEIGHT + 16); + sPSSData->field_CB4->pos1.y = tmp - 16; } - if (sPSSData->field_CB4->pos1.y < -0x10) + if (sPSSData->field_CB4->pos1.y < -16) { - tmp = -0x10 - sPSSData->field_CB4->pos1.y; - sPSSData->field_CB4->pos1.y = 0xb0 - tmp; + tmp = -16 - sPSSData->field_CB4->pos1.y; + sPSSData->field_CB4->pos1.y = DISPLAY_HEIGHT + 16 - tmp; } if (sPSSData->field_CD7 && --sPSSData->field_CD7 == 0) sPSSData->field_CB4->vFlip = (sPSSData->field_CB4->vFlip == FALSE); @@ -6076,7 +5736,7 @@ static void sub_80CDA68(void) SetMovingMonPriority(1); break; case CURSOR_AREA_BOX: - sub_80CD1A8(TRUE); + AnimateBoxScrollArrows(TRUE); break; case CURSOR_AREA_IN_PARTY: sPSSData->field_CB8->subpriority = 13; @@ -7426,7 +7086,7 @@ static u8 HandleInput_OnBox(void) if (JOY_NEW(A_BUTTON)) { - sub_80CD1A8(FALSE); + AnimateBoxScrollArrows(FALSE); AddBoxMenu(); return 7; } @@ -7447,7 +7107,7 @@ static u8 HandleInput_OnBox(void) if (retVal) { if (cursorArea != CURSOR_AREA_BOX) - sub_80CD1A8(FALSE); + AnimateBoxScrollArrows(FALSE); sub_80CD894(cursorArea, cursorPosition); } @@ -7948,7 +7608,10 @@ static void AddMenu(void) sPSSData->field_CAE = 0; } -static bool8 sub_80D00A8(void) +// Called after AddMenu to determine whether or not the handler callback should +// wait to move on to the next state. Evidently there was no need to wait, and +// now it always returns FALSE +static bool8 IsMenuLoading(void) { return FALSE; } @@ -9451,7 +9114,7 @@ u8 *GetBoxNamePtr(u8 boxId) return NULL; } -u8 GetBoxWallpaper(u8 boxId) +static u8 GetBoxWallpaper(u8 boxId) { if (boxId < TOTAL_BOXES_COUNT) return gPokemonStoragePtr->boxWallpapers[boxId]; @@ -9459,7 +9122,7 @@ u8 GetBoxWallpaper(u8 boxId) return 0; } -void SetBoxWallpaper(u8 boxId, u8 wallpaperId) +static void SetBoxWallpaper(u8 boxId, u8 wallpaperId) { if (boxId < TOTAL_BOXES_COUNT && wallpaperId < WALLPAPER_COUNT) gPokemonStoragePtr->boxWallpapers[boxId] = wallpaperId; @@ -9615,7 +9278,7 @@ u32 GetWaldaWallpaperIconId(void) void SetWaldaWallpaperIconId(u8 id) { - if (id < 30) + if (id < ARRAY_COUNT(sWaldaWallpaperIcons)) gSaveBlock1Ptr->waldaPhrase.iconId = id; } From 838a452363c1296e3c9a0d92ce41f59a75e9c844 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 17:31:50 -0400 Subject: [PATCH 122/762] Doc storage - choose box menu, move wallpaper gfx --- .../box_selection_popup.pal} | 0 .../azumarill/bg.png} | Bin .../azumarill/tilemap.bin} | Bin .../{beach_bg.png => wallpapers/beach/bg.png} | Bin .../beach/frame.png} | Bin .../beach/tilemap.bin} | Bin .../{blank_bg.png => wallpapers/blank/bg.png} | Bin .../blank/tilemap.bin} | Bin .../{block_bg.png => wallpapers/block/bg.png} | Bin .../block/tilemap.bin} | Bin .../{cave_bg.png => wallpapers/cave/bg.png} | Bin .../cave/frame.png} | Bin .../{cave.bin => wallpapers/cave/tilemap.bin} | Bin .../circles/bg.png} | Bin .../circles/tilemap.bin} | Bin .../{city_bg.png => wallpapers/city/bg.png} | Bin .../city/frame.png} | Bin .../{city.bin => wallpapers/city/tilemap.bin} | Bin .../{crag_bg.png => wallpapers/crag/bg.png} | Bin .../crag/frame.png} | Bin .../{crag.bin => wallpapers/crag/tilemap.bin} | Bin .../desert/bg.png} | Bin .../desert/frame.png} | Bin .../desert/tilemap.bin} | Bin .../diagonal/bg.png} | Bin .../diagonal/tilemap.bin} | Bin .../dusclops/bg.png} | Bin .../dusclops/tilemap.bin} | Bin .../forest/bg.png} | Bin .../forest/frame.png} | Bin .../forest/tilemap.bin} | Bin .../{frame_bg.png => wallpapers/frame/bg.png} | Bin .../frame/tilemap.bin} | Bin .../{ => wallpapers}/friends_frame1.png | Bin .../{ => wallpapers}/friends_frame2.png | Bin .../horizontal/bg.png} | Bin .../horizontal/tilemap.bin} | Bin .../icons/aqua.png} | Bin .../icons/asterisk.png} | Bin .../icons/big_asterisk.png} | Bin .../icons/bolt.png} | Bin .../icons/brick.png} | Bin .../icons/circle.png} | Bin .../icons/cross.png} | Bin .../icons/crystal.png} | Bin .../icons/diglett.png} | Bin .../icons/dot.png} | Bin .../icons/five_star.png} | Bin .../icons/footprint.png} | Bin .../icons/four_circles.png} | Bin .../icons/four_star.png} | Bin .../icons/heart.png} | Bin .../icons/koffing.png} | Bin .../icons/latis.png} | Bin .../icons/line_circle.png} | Bin .../icons/lotad.png} | Bin .../icons/luvdisc.png} | Bin .../icons/magma.png} | Bin .../icons/maze.png} | Bin .../icons/minun.png} | Bin .../icons/pichu.png} | Bin .../icons/plusle.png} | Bin .../icons/pokeball.png} | Bin .../icons/ribbon.png} | Bin .../icons/spinda.png} | Bin .../icons/star_in_circle.png} | Bin .../icons/togepi.png} | Bin .../legendary/bg.png} | Bin .../legendary/tilemap.bin} | Bin .../ludicolo/bg.png} | Bin .../ludicolo/tilemap.bin} | Bin .../machine/bg.png} | Bin .../machine/frame.png} | Bin .../machine/tilemap.bin} | Bin .../pikachu/bg.png} | Bin .../pikachu/tilemap.bin} | Bin .../{plain_bg.png => wallpapers/plain/bg.png} | Bin .../plain/frame.png} | Bin .../plain/tilemap.bin} | Bin .../pokecenter/bg.png} | Bin .../pokecenter/frame.png} | Bin .../pokecenter/tilemap.bin} | Bin .../pokecenter2/bg.png} | Bin .../pokecenter2/tilemap.bin} | Bin .../polkadot/bg.png} | Bin .../polkadot/frame.png} | Bin .../polkadot/tilemap.bin} | Bin .../ribbon/bg.png} | Bin .../ribbon/frame.pal} | 0 .../ribbon/tilemap.bin} | Bin .../{river_bg.png => wallpapers/river/bg.png} | Bin .../river/frame.png} | Bin .../river/tilemap.bin} | Bin .../savanna/bg.png} | Bin .../savanna/frame.png} | Bin .../savanna/tilemap.bin} | Bin .../screen/bg.png} | Bin .../screen/tilemap.bin} | Bin .../seafloor/bg.png} | Bin .../seafloor/frame.png} | Bin .../seafloor/tilemap.bin} | Bin .../{sky_bg.png => wallpapers/sky/bg.png} | Bin .../sky/frame.png} | Bin .../{sky.bin => wallpapers/sky/tilemap.bin} | Bin .../{snow_bg.png => wallpapers/snow/bg.png} | Bin .../snow/frame.png} | Bin .../{snow.bin => wallpapers/snow/tilemap.bin} | Bin .../volcano/bg.png} | Bin .../volcano/frame.png} | Bin .../volcano/tilemap.bin} | Bin .../whiscash/bg.png} | Bin .../whiscash/tilemap.bin} | Bin .../zigzagoon/bg.png} | Bin .../zigzagoon/tilemap.bin} | Bin graphics_file_rules.mk | 110 +- include/pokemon_storage_system.h | 1 + include/pokemon_summary_screen.h | 17 +- src/battle_factory_screen.c | 4 +- src/data/wallpapers.h | 298 ++--- src/graphics.c | 22 +- src/party_menu.c | 6 +- src/pokemon_storage_system.c | 1039 +++++++++-------- src/pokemon_summary_screen.c | 52 +- src/trade.c | 4 +- 124 files changed, 795 insertions(+), 758 deletions(-) rename graphics/{unknown/unknown_57173C.pal => pokemon_storage/box_selection_popup.pal} (100%) rename graphics/pokemon_storage/{azumarill_bg.png => wallpapers/azumarill/bg.png} (100%) rename graphics/pokemon_storage/{azumarill.bin => wallpapers/azumarill/tilemap.bin} (100%) rename graphics/pokemon_storage/{beach_bg.png => wallpapers/beach/bg.png} (100%) rename graphics/pokemon_storage/{beach_frame.png => wallpapers/beach/frame.png} (100%) rename graphics/pokemon_storage/{beach.bin => wallpapers/beach/tilemap.bin} (100%) rename graphics/pokemon_storage/{blank_bg.png => wallpapers/blank/bg.png} (100%) rename graphics/pokemon_storage/{blank.bin => wallpapers/blank/tilemap.bin} (100%) rename graphics/pokemon_storage/{block_bg.png => wallpapers/block/bg.png} (100%) rename graphics/pokemon_storage/{block.bin => wallpapers/block/tilemap.bin} (100%) rename graphics/pokemon_storage/{cave_bg.png => wallpapers/cave/bg.png} (100%) rename graphics/pokemon_storage/{cave_frame.png => wallpapers/cave/frame.png} (100%) rename graphics/pokemon_storage/{cave.bin => wallpapers/cave/tilemap.bin} (100%) rename graphics/pokemon_storage/{circles_bg.png => wallpapers/circles/bg.png} (100%) rename graphics/pokemon_storage/{circles.bin => wallpapers/circles/tilemap.bin} (100%) rename graphics/pokemon_storage/{city_bg.png => wallpapers/city/bg.png} (100%) rename graphics/pokemon_storage/{city_frame.png => wallpapers/city/frame.png} (100%) rename graphics/pokemon_storage/{city.bin => wallpapers/city/tilemap.bin} (100%) rename graphics/pokemon_storage/{crag_bg.png => wallpapers/crag/bg.png} (100%) rename graphics/pokemon_storage/{crag_frame.png => wallpapers/crag/frame.png} (100%) rename graphics/pokemon_storage/{crag.bin => wallpapers/crag/tilemap.bin} (100%) rename graphics/pokemon_storage/{desert_bg.png => wallpapers/desert/bg.png} (100%) rename graphics/pokemon_storage/{desert_frame.png => wallpapers/desert/frame.png} (100%) rename graphics/pokemon_storage/{desert.bin => wallpapers/desert/tilemap.bin} (100%) rename graphics/pokemon_storage/{diagonal_bg.png => wallpapers/diagonal/bg.png} (100%) rename graphics/pokemon_storage/{diagonal.bin => wallpapers/diagonal/tilemap.bin} (100%) rename graphics/pokemon_storage/{dusclops_bg.png => wallpapers/dusclops/bg.png} (100%) rename graphics/pokemon_storage/{dusclops.bin => wallpapers/dusclops/tilemap.bin} (100%) rename graphics/pokemon_storage/{forest_bg.png => wallpapers/forest/bg.png} (100%) rename graphics/pokemon_storage/{forest_frame.png => wallpapers/forest/frame.png} (100%) rename graphics/pokemon_storage/{forest.bin => wallpapers/forest/tilemap.bin} (100%) rename graphics/pokemon_storage/{frame_bg.png => wallpapers/frame/bg.png} (100%) rename graphics/pokemon_storage/{frame.bin => wallpapers/frame/tilemap.bin} (100%) rename graphics/pokemon_storage/{ => wallpapers}/friends_frame1.png (100%) rename graphics/pokemon_storage/{ => wallpapers}/friends_frame2.png (100%) rename graphics/pokemon_storage/{horizontal_bg.png => wallpapers/horizontal/bg.png} (100%) rename graphics/pokemon_storage/{horizontal.bin => wallpapers/horizontal/tilemap.bin} (100%) rename graphics/pokemon_storage/{aqua_icon.png => wallpapers/icons/aqua.png} (100%) rename graphics/pokemon_storage/{asterisk_icon.png => wallpapers/icons/asterisk.png} (100%) rename graphics/pokemon_storage/{big_asterisk_icon.png => wallpapers/icons/big_asterisk.png} (100%) rename graphics/pokemon_storage/{bolt_icon.png => wallpapers/icons/bolt.png} (100%) rename graphics/pokemon_storage/{brick_icon.png => wallpapers/icons/brick.png} (100%) rename graphics/pokemon_storage/{circle_icon.png => wallpapers/icons/circle.png} (100%) rename graphics/pokemon_storage/{cross_icon.png => wallpapers/icons/cross.png} (100%) rename graphics/pokemon_storage/{crystal_icon.png => wallpapers/icons/crystal.png} (100%) rename graphics/pokemon_storage/{diglett_icon.png => wallpapers/icons/diglett.png} (100%) rename graphics/pokemon_storage/{dot_icon.png => wallpapers/icons/dot.png} (100%) rename graphics/pokemon_storage/{five_star_icon.png => wallpapers/icons/five_star.png} (100%) rename graphics/pokemon_storage/{footprint_icon.png => wallpapers/icons/footprint.png} (100%) rename graphics/pokemon_storage/{four_circles_icon.png => wallpapers/icons/four_circles.png} (100%) rename graphics/pokemon_storage/{four_star_icon.png => wallpapers/icons/four_star.png} (100%) rename graphics/pokemon_storage/{heart_icon.png => wallpapers/icons/heart.png} (100%) rename graphics/pokemon_storage/{koffing_icon.png => wallpapers/icons/koffing.png} (100%) rename graphics/pokemon_storage/{latis_icon.png => wallpapers/icons/latis.png} (100%) rename graphics/pokemon_storage/{line_circle_icon.png => wallpapers/icons/line_circle.png} (100%) rename graphics/pokemon_storage/{lotad_icon.png => wallpapers/icons/lotad.png} (100%) rename graphics/pokemon_storage/{luvdisc_icon.png => wallpapers/icons/luvdisc.png} (100%) rename graphics/pokemon_storage/{magma_icon.png => wallpapers/icons/magma.png} (100%) rename graphics/pokemon_storage/{maze_icon.png => wallpapers/icons/maze.png} (100%) rename graphics/pokemon_storage/{minun_icon.png => wallpapers/icons/minun.png} (100%) rename graphics/pokemon_storage/{pichu_icon.png => wallpapers/icons/pichu.png} (100%) rename graphics/pokemon_storage/{plusle_icon.png => wallpapers/icons/plusle.png} (100%) rename graphics/pokemon_storage/{pokeball_icon.png => wallpapers/icons/pokeball.png} (100%) rename graphics/pokemon_storage/{ribbon_icon.png => wallpapers/icons/ribbon.png} (100%) rename graphics/pokemon_storage/{spinda_icon.png => wallpapers/icons/spinda.png} (100%) rename graphics/pokemon_storage/{star_in_circle_icon.png => wallpapers/icons/star_in_circle.png} (100%) rename graphics/pokemon_storage/{togepi_icon.png => wallpapers/icons/togepi.png} (100%) rename graphics/pokemon_storage/{legendary_bg.png => wallpapers/legendary/bg.png} (100%) rename graphics/pokemon_storage/{legendary.bin => wallpapers/legendary/tilemap.bin} (100%) rename graphics/pokemon_storage/{ludicolo_bg.png => wallpapers/ludicolo/bg.png} (100%) rename graphics/pokemon_storage/{ludicolo.bin => wallpapers/ludicolo/tilemap.bin} (100%) rename graphics/pokemon_storage/{machine_bg.png => wallpapers/machine/bg.png} (100%) rename graphics/pokemon_storage/{machine_frame.png => wallpapers/machine/frame.png} (100%) rename graphics/pokemon_storage/{machine.bin => wallpapers/machine/tilemap.bin} (100%) rename graphics/pokemon_storage/{pikachu_bg.png => wallpapers/pikachu/bg.png} (100%) rename graphics/pokemon_storage/{pikachu.bin => wallpapers/pikachu/tilemap.bin} (100%) rename graphics/pokemon_storage/{plain_bg.png => wallpapers/plain/bg.png} (100%) rename graphics/pokemon_storage/{plain_frame.png => wallpapers/plain/frame.png} (100%) rename graphics/pokemon_storage/{plain.bin => wallpapers/plain/tilemap.bin} (100%) rename graphics/pokemon_storage/{pokecenter_bg.png => wallpapers/pokecenter/bg.png} (100%) rename graphics/pokemon_storage/{pokecenter_frame.png => wallpapers/pokecenter/frame.png} (100%) rename graphics/pokemon_storage/{pokecenter.bin => wallpapers/pokecenter/tilemap.bin} (100%) rename graphics/pokemon_storage/{pokecenter2_bg.png => wallpapers/pokecenter2/bg.png} (100%) rename graphics/pokemon_storage/{pokecenter2.bin => wallpapers/pokecenter2/tilemap.bin} (100%) rename graphics/pokemon_storage/{polkadot_bg.png => wallpapers/polkadot/bg.png} (100%) rename graphics/pokemon_storage/{polkadot_frame.png => wallpapers/polkadot/frame.png} (100%) rename graphics/pokemon_storage/{polkadot.bin => wallpapers/polkadot/tilemap.bin} (100%) rename graphics/pokemon_storage/{ribbon_bg.png => wallpapers/ribbon/bg.png} (100%) rename graphics/pokemon_storage/{ribbon_frame.pal => wallpapers/ribbon/frame.pal} (100%) rename graphics/pokemon_storage/{ribbon.bin => wallpapers/ribbon/tilemap.bin} (100%) rename graphics/pokemon_storage/{river_bg.png => wallpapers/river/bg.png} (100%) rename graphics/pokemon_storage/{river_frame.png => wallpapers/river/frame.png} (100%) rename graphics/pokemon_storage/{river.bin => wallpapers/river/tilemap.bin} (100%) rename graphics/pokemon_storage/{savanna_bg.png => wallpapers/savanna/bg.png} (100%) rename graphics/pokemon_storage/{savanna_frame.png => wallpapers/savanna/frame.png} (100%) rename graphics/pokemon_storage/{savanna.bin => wallpapers/savanna/tilemap.bin} (100%) rename graphics/pokemon_storage/{screen_bg.png => wallpapers/screen/bg.png} (100%) rename graphics/pokemon_storage/{screen.bin => wallpapers/screen/tilemap.bin} (100%) rename graphics/pokemon_storage/{seafloor_bg.png => wallpapers/seafloor/bg.png} (100%) rename graphics/pokemon_storage/{seafloor_frame.png => wallpapers/seafloor/frame.png} (100%) rename graphics/pokemon_storage/{seafloor.bin => wallpapers/seafloor/tilemap.bin} (100%) rename graphics/pokemon_storage/{sky_bg.png => wallpapers/sky/bg.png} (100%) rename graphics/pokemon_storage/{sky_frame.png => wallpapers/sky/frame.png} (100%) rename graphics/pokemon_storage/{sky.bin => wallpapers/sky/tilemap.bin} (100%) rename graphics/pokemon_storage/{snow_bg.png => wallpapers/snow/bg.png} (100%) rename graphics/pokemon_storage/{snow_frame.png => wallpapers/snow/frame.png} (100%) rename graphics/pokemon_storage/{snow.bin => wallpapers/snow/tilemap.bin} (100%) rename graphics/pokemon_storage/{volcano_bg.png => wallpapers/volcano/bg.png} (100%) rename graphics/pokemon_storage/{volcano_frame.png => wallpapers/volcano/frame.png} (100%) rename graphics/pokemon_storage/{volcano.bin => wallpapers/volcano/tilemap.bin} (100%) rename graphics/pokemon_storage/{whiscash_bg.png => wallpapers/whiscash/bg.png} (100%) rename graphics/pokemon_storage/{whiscash.bin => wallpapers/whiscash/tilemap.bin} (100%) rename graphics/pokemon_storage/{zigzagoon_bg.png => wallpapers/zigzagoon/bg.png} (100%) rename graphics/pokemon_storage/{zigzagoon.bin => wallpapers/zigzagoon/tilemap.bin} (100%) diff --git a/graphics/unknown/unknown_57173C.pal b/graphics/pokemon_storage/box_selection_popup.pal similarity index 100% rename from graphics/unknown/unknown_57173C.pal rename to graphics/pokemon_storage/box_selection_popup.pal diff --git a/graphics/pokemon_storage/azumarill_bg.png b/graphics/pokemon_storage/wallpapers/azumarill/bg.png similarity index 100% rename from graphics/pokemon_storage/azumarill_bg.png rename to graphics/pokemon_storage/wallpapers/azumarill/bg.png diff --git a/graphics/pokemon_storage/azumarill.bin b/graphics/pokemon_storage/wallpapers/azumarill/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/azumarill.bin rename to graphics/pokemon_storage/wallpapers/azumarill/tilemap.bin diff --git a/graphics/pokemon_storage/beach_bg.png b/graphics/pokemon_storage/wallpapers/beach/bg.png similarity index 100% rename from graphics/pokemon_storage/beach_bg.png rename to graphics/pokemon_storage/wallpapers/beach/bg.png diff --git a/graphics/pokemon_storage/beach_frame.png b/graphics/pokemon_storage/wallpapers/beach/frame.png similarity index 100% rename from graphics/pokemon_storage/beach_frame.png rename to graphics/pokemon_storage/wallpapers/beach/frame.png diff --git a/graphics/pokemon_storage/beach.bin b/graphics/pokemon_storage/wallpapers/beach/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/beach.bin rename to graphics/pokemon_storage/wallpapers/beach/tilemap.bin diff --git a/graphics/pokemon_storage/blank_bg.png b/graphics/pokemon_storage/wallpapers/blank/bg.png similarity index 100% rename from graphics/pokemon_storage/blank_bg.png rename to graphics/pokemon_storage/wallpapers/blank/bg.png diff --git a/graphics/pokemon_storage/blank.bin b/graphics/pokemon_storage/wallpapers/blank/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/blank.bin rename to graphics/pokemon_storage/wallpapers/blank/tilemap.bin diff --git a/graphics/pokemon_storage/block_bg.png b/graphics/pokemon_storage/wallpapers/block/bg.png similarity index 100% rename from graphics/pokemon_storage/block_bg.png rename to graphics/pokemon_storage/wallpapers/block/bg.png diff --git a/graphics/pokemon_storage/block.bin b/graphics/pokemon_storage/wallpapers/block/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/block.bin rename to graphics/pokemon_storage/wallpapers/block/tilemap.bin diff --git a/graphics/pokemon_storage/cave_bg.png b/graphics/pokemon_storage/wallpapers/cave/bg.png similarity index 100% rename from graphics/pokemon_storage/cave_bg.png rename to graphics/pokemon_storage/wallpapers/cave/bg.png diff --git a/graphics/pokemon_storage/cave_frame.png b/graphics/pokemon_storage/wallpapers/cave/frame.png similarity index 100% rename from graphics/pokemon_storage/cave_frame.png rename to graphics/pokemon_storage/wallpapers/cave/frame.png diff --git a/graphics/pokemon_storage/cave.bin b/graphics/pokemon_storage/wallpapers/cave/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/cave.bin rename to graphics/pokemon_storage/wallpapers/cave/tilemap.bin diff --git a/graphics/pokemon_storage/circles_bg.png b/graphics/pokemon_storage/wallpapers/circles/bg.png similarity index 100% rename from graphics/pokemon_storage/circles_bg.png rename to graphics/pokemon_storage/wallpapers/circles/bg.png diff --git a/graphics/pokemon_storage/circles.bin b/graphics/pokemon_storage/wallpapers/circles/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/circles.bin rename to graphics/pokemon_storage/wallpapers/circles/tilemap.bin diff --git a/graphics/pokemon_storage/city_bg.png b/graphics/pokemon_storage/wallpapers/city/bg.png similarity index 100% rename from graphics/pokemon_storage/city_bg.png rename to graphics/pokemon_storage/wallpapers/city/bg.png diff --git a/graphics/pokemon_storage/city_frame.png b/graphics/pokemon_storage/wallpapers/city/frame.png similarity index 100% rename from graphics/pokemon_storage/city_frame.png rename to graphics/pokemon_storage/wallpapers/city/frame.png diff --git a/graphics/pokemon_storage/city.bin b/graphics/pokemon_storage/wallpapers/city/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/city.bin rename to graphics/pokemon_storage/wallpapers/city/tilemap.bin diff --git a/graphics/pokemon_storage/crag_bg.png b/graphics/pokemon_storage/wallpapers/crag/bg.png similarity index 100% rename from graphics/pokemon_storage/crag_bg.png rename to graphics/pokemon_storage/wallpapers/crag/bg.png diff --git a/graphics/pokemon_storage/crag_frame.png b/graphics/pokemon_storage/wallpapers/crag/frame.png similarity index 100% rename from graphics/pokemon_storage/crag_frame.png rename to graphics/pokemon_storage/wallpapers/crag/frame.png diff --git a/graphics/pokemon_storage/crag.bin b/graphics/pokemon_storage/wallpapers/crag/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/crag.bin rename to graphics/pokemon_storage/wallpapers/crag/tilemap.bin diff --git a/graphics/pokemon_storage/desert_bg.png b/graphics/pokemon_storage/wallpapers/desert/bg.png similarity index 100% rename from graphics/pokemon_storage/desert_bg.png rename to graphics/pokemon_storage/wallpapers/desert/bg.png diff --git a/graphics/pokemon_storage/desert_frame.png b/graphics/pokemon_storage/wallpapers/desert/frame.png similarity index 100% rename from graphics/pokemon_storage/desert_frame.png rename to graphics/pokemon_storage/wallpapers/desert/frame.png diff --git a/graphics/pokemon_storage/desert.bin b/graphics/pokemon_storage/wallpapers/desert/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/desert.bin rename to graphics/pokemon_storage/wallpapers/desert/tilemap.bin diff --git a/graphics/pokemon_storage/diagonal_bg.png b/graphics/pokemon_storage/wallpapers/diagonal/bg.png similarity index 100% rename from graphics/pokemon_storage/diagonal_bg.png rename to graphics/pokemon_storage/wallpapers/diagonal/bg.png diff --git a/graphics/pokemon_storage/diagonal.bin b/graphics/pokemon_storage/wallpapers/diagonal/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/diagonal.bin rename to graphics/pokemon_storage/wallpapers/diagonal/tilemap.bin diff --git a/graphics/pokemon_storage/dusclops_bg.png b/graphics/pokemon_storage/wallpapers/dusclops/bg.png similarity index 100% rename from graphics/pokemon_storage/dusclops_bg.png rename to graphics/pokemon_storage/wallpapers/dusclops/bg.png diff --git a/graphics/pokemon_storage/dusclops.bin b/graphics/pokemon_storage/wallpapers/dusclops/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/dusclops.bin rename to graphics/pokemon_storage/wallpapers/dusclops/tilemap.bin diff --git a/graphics/pokemon_storage/forest_bg.png b/graphics/pokemon_storage/wallpapers/forest/bg.png similarity index 100% rename from graphics/pokemon_storage/forest_bg.png rename to graphics/pokemon_storage/wallpapers/forest/bg.png diff --git a/graphics/pokemon_storage/forest_frame.png b/graphics/pokemon_storage/wallpapers/forest/frame.png similarity index 100% rename from graphics/pokemon_storage/forest_frame.png rename to graphics/pokemon_storage/wallpapers/forest/frame.png diff --git a/graphics/pokemon_storage/forest.bin b/graphics/pokemon_storage/wallpapers/forest/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/forest.bin rename to graphics/pokemon_storage/wallpapers/forest/tilemap.bin diff --git a/graphics/pokemon_storage/frame_bg.png b/graphics/pokemon_storage/wallpapers/frame/bg.png similarity index 100% rename from graphics/pokemon_storage/frame_bg.png rename to graphics/pokemon_storage/wallpapers/frame/bg.png diff --git a/graphics/pokemon_storage/frame.bin b/graphics/pokemon_storage/wallpapers/frame/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/frame.bin rename to graphics/pokemon_storage/wallpapers/frame/tilemap.bin diff --git a/graphics/pokemon_storage/friends_frame1.png b/graphics/pokemon_storage/wallpapers/friends_frame1.png similarity index 100% rename from graphics/pokemon_storage/friends_frame1.png rename to graphics/pokemon_storage/wallpapers/friends_frame1.png diff --git a/graphics/pokemon_storage/friends_frame2.png b/graphics/pokemon_storage/wallpapers/friends_frame2.png similarity index 100% rename from graphics/pokemon_storage/friends_frame2.png rename to graphics/pokemon_storage/wallpapers/friends_frame2.png diff --git a/graphics/pokemon_storage/horizontal_bg.png b/graphics/pokemon_storage/wallpapers/horizontal/bg.png similarity index 100% rename from graphics/pokemon_storage/horizontal_bg.png rename to graphics/pokemon_storage/wallpapers/horizontal/bg.png diff --git a/graphics/pokemon_storage/horizontal.bin b/graphics/pokemon_storage/wallpapers/horizontal/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/horizontal.bin rename to graphics/pokemon_storage/wallpapers/horizontal/tilemap.bin diff --git a/graphics/pokemon_storage/aqua_icon.png b/graphics/pokemon_storage/wallpapers/icons/aqua.png similarity index 100% rename from graphics/pokemon_storage/aqua_icon.png rename to graphics/pokemon_storage/wallpapers/icons/aqua.png diff --git a/graphics/pokemon_storage/asterisk_icon.png b/graphics/pokemon_storage/wallpapers/icons/asterisk.png similarity index 100% rename from graphics/pokemon_storage/asterisk_icon.png rename to graphics/pokemon_storage/wallpapers/icons/asterisk.png diff --git a/graphics/pokemon_storage/big_asterisk_icon.png b/graphics/pokemon_storage/wallpapers/icons/big_asterisk.png similarity index 100% rename from graphics/pokemon_storage/big_asterisk_icon.png rename to graphics/pokemon_storage/wallpapers/icons/big_asterisk.png diff --git a/graphics/pokemon_storage/bolt_icon.png b/graphics/pokemon_storage/wallpapers/icons/bolt.png similarity index 100% rename from graphics/pokemon_storage/bolt_icon.png rename to graphics/pokemon_storage/wallpapers/icons/bolt.png diff --git a/graphics/pokemon_storage/brick_icon.png b/graphics/pokemon_storage/wallpapers/icons/brick.png similarity index 100% rename from graphics/pokemon_storage/brick_icon.png rename to graphics/pokemon_storage/wallpapers/icons/brick.png diff --git a/graphics/pokemon_storage/circle_icon.png b/graphics/pokemon_storage/wallpapers/icons/circle.png similarity index 100% rename from graphics/pokemon_storage/circle_icon.png rename to graphics/pokemon_storage/wallpapers/icons/circle.png diff --git a/graphics/pokemon_storage/cross_icon.png b/graphics/pokemon_storage/wallpapers/icons/cross.png similarity index 100% rename from graphics/pokemon_storage/cross_icon.png rename to graphics/pokemon_storage/wallpapers/icons/cross.png diff --git a/graphics/pokemon_storage/crystal_icon.png b/graphics/pokemon_storage/wallpapers/icons/crystal.png similarity index 100% rename from graphics/pokemon_storage/crystal_icon.png rename to graphics/pokemon_storage/wallpapers/icons/crystal.png diff --git a/graphics/pokemon_storage/diglett_icon.png b/graphics/pokemon_storage/wallpapers/icons/diglett.png similarity index 100% rename from graphics/pokemon_storage/diglett_icon.png rename to graphics/pokemon_storage/wallpapers/icons/diglett.png diff --git a/graphics/pokemon_storage/dot_icon.png b/graphics/pokemon_storage/wallpapers/icons/dot.png similarity index 100% rename from graphics/pokemon_storage/dot_icon.png rename to graphics/pokemon_storage/wallpapers/icons/dot.png diff --git a/graphics/pokemon_storage/five_star_icon.png b/graphics/pokemon_storage/wallpapers/icons/five_star.png similarity index 100% rename from graphics/pokemon_storage/five_star_icon.png rename to graphics/pokemon_storage/wallpapers/icons/five_star.png diff --git a/graphics/pokemon_storage/footprint_icon.png b/graphics/pokemon_storage/wallpapers/icons/footprint.png similarity index 100% rename from graphics/pokemon_storage/footprint_icon.png rename to graphics/pokemon_storage/wallpapers/icons/footprint.png diff --git a/graphics/pokemon_storage/four_circles_icon.png b/graphics/pokemon_storage/wallpapers/icons/four_circles.png similarity index 100% rename from graphics/pokemon_storage/four_circles_icon.png rename to graphics/pokemon_storage/wallpapers/icons/four_circles.png diff --git a/graphics/pokemon_storage/four_star_icon.png b/graphics/pokemon_storage/wallpapers/icons/four_star.png similarity index 100% rename from graphics/pokemon_storage/four_star_icon.png rename to graphics/pokemon_storage/wallpapers/icons/four_star.png diff --git a/graphics/pokemon_storage/heart_icon.png b/graphics/pokemon_storage/wallpapers/icons/heart.png similarity index 100% rename from graphics/pokemon_storage/heart_icon.png rename to graphics/pokemon_storage/wallpapers/icons/heart.png diff --git a/graphics/pokemon_storage/koffing_icon.png b/graphics/pokemon_storage/wallpapers/icons/koffing.png similarity index 100% rename from graphics/pokemon_storage/koffing_icon.png rename to graphics/pokemon_storage/wallpapers/icons/koffing.png diff --git a/graphics/pokemon_storage/latis_icon.png b/graphics/pokemon_storage/wallpapers/icons/latis.png similarity index 100% rename from graphics/pokemon_storage/latis_icon.png rename to graphics/pokemon_storage/wallpapers/icons/latis.png diff --git a/graphics/pokemon_storage/line_circle_icon.png b/graphics/pokemon_storage/wallpapers/icons/line_circle.png similarity index 100% rename from graphics/pokemon_storage/line_circle_icon.png rename to graphics/pokemon_storage/wallpapers/icons/line_circle.png diff --git a/graphics/pokemon_storage/lotad_icon.png b/graphics/pokemon_storage/wallpapers/icons/lotad.png similarity index 100% rename from graphics/pokemon_storage/lotad_icon.png rename to graphics/pokemon_storage/wallpapers/icons/lotad.png diff --git a/graphics/pokemon_storage/luvdisc_icon.png b/graphics/pokemon_storage/wallpapers/icons/luvdisc.png similarity index 100% rename from graphics/pokemon_storage/luvdisc_icon.png rename to graphics/pokemon_storage/wallpapers/icons/luvdisc.png diff --git a/graphics/pokemon_storage/magma_icon.png b/graphics/pokemon_storage/wallpapers/icons/magma.png similarity index 100% rename from graphics/pokemon_storage/magma_icon.png rename to graphics/pokemon_storage/wallpapers/icons/magma.png diff --git a/graphics/pokemon_storage/maze_icon.png b/graphics/pokemon_storage/wallpapers/icons/maze.png similarity index 100% rename from graphics/pokemon_storage/maze_icon.png rename to graphics/pokemon_storage/wallpapers/icons/maze.png diff --git a/graphics/pokemon_storage/minun_icon.png b/graphics/pokemon_storage/wallpapers/icons/minun.png similarity index 100% rename from graphics/pokemon_storage/minun_icon.png rename to graphics/pokemon_storage/wallpapers/icons/minun.png diff --git a/graphics/pokemon_storage/pichu_icon.png b/graphics/pokemon_storage/wallpapers/icons/pichu.png similarity index 100% rename from graphics/pokemon_storage/pichu_icon.png rename to graphics/pokemon_storage/wallpapers/icons/pichu.png diff --git a/graphics/pokemon_storage/plusle_icon.png b/graphics/pokemon_storage/wallpapers/icons/plusle.png similarity index 100% rename from graphics/pokemon_storage/plusle_icon.png rename to graphics/pokemon_storage/wallpapers/icons/plusle.png diff --git a/graphics/pokemon_storage/pokeball_icon.png b/graphics/pokemon_storage/wallpapers/icons/pokeball.png similarity index 100% rename from graphics/pokemon_storage/pokeball_icon.png rename to graphics/pokemon_storage/wallpapers/icons/pokeball.png diff --git a/graphics/pokemon_storage/ribbon_icon.png b/graphics/pokemon_storage/wallpapers/icons/ribbon.png similarity index 100% rename from graphics/pokemon_storage/ribbon_icon.png rename to graphics/pokemon_storage/wallpapers/icons/ribbon.png diff --git a/graphics/pokemon_storage/spinda_icon.png b/graphics/pokemon_storage/wallpapers/icons/spinda.png similarity index 100% rename from graphics/pokemon_storage/spinda_icon.png rename to graphics/pokemon_storage/wallpapers/icons/spinda.png diff --git a/graphics/pokemon_storage/star_in_circle_icon.png b/graphics/pokemon_storage/wallpapers/icons/star_in_circle.png similarity index 100% rename from graphics/pokemon_storage/star_in_circle_icon.png rename to graphics/pokemon_storage/wallpapers/icons/star_in_circle.png diff --git a/graphics/pokemon_storage/togepi_icon.png b/graphics/pokemon_storage/wallpapers/icons/togepi.png similarity index 100% rename from graphics/pokemon_storage/togepi_icon.png rename to graphics/pokemon_storage/wallpapers/icons/togepi.png diff --git a/graphics/pokemon_storage/legendary_bg.png b/graphics/pokemon_storage/wallpapers/legendary/bg.png similarity index 100% rename from graphics/pokemon_storage/legendary_bg.png rename to graphics/pokemon_storage/wallpapers/legendary/bg.png diff --git a/graphics/pokemon_storage/legendary.bin b/graphics/pokemon_storage/wallpapers/legendary/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/legendary.bin rename to graphics/pokemon_storage/wallpapers/legendary/tilemap.bin diff --git a/graphics/pokemon_storage/ludicolo_bg.png b/graphics/pokemon_storage/wallpapers/ludicolo/bg.png similarity index 100% rename from graphics/pokemon_storage/ludicolo_bg.png rename to graphics/pokemon_storage/wallpapers/ludicolo/bg.png diff --git a/graphics/pokemon_storage/ludicolo.bin b/graphics/pokemon_storage/wallpapers/ludicolo/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/ludicolo.bin rename to graphics/pokemon_storage/wallpapers/ludicolo/tilemap.bin diff --git a/graphics/pokemon_storage/machine_bg.png b/graphics/pokemon_storage/wallpapers/machine/bg.png similarity index 100% rename from graphics/pokemon_storage/machine_bg.png rename to graphics/pokemon_storage/wallpapers/machine/bg.png diff --git a/graphics/pokemon_storage/machine_frame.png b/graphics/pokemon_storage/wallpapers/machine/frame.png similarity index 100% rename from graphics/pokemon_storage/machine_frame.png rename to graphics/pokemon_storage/wallpapers/machine/frame.png diff --git a/graphics/pokemon_storage/machine.bin b/graphics/pokemon_storage/wallpapers/machine/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/machine.bin rename to graphics/pokemon_storage/wallpapers/machine/tilemap.bin diff --git a/graphics/pokemon_storage/pikachu_bg.png b/graphics/pokemon_storage/wallpapers/pikachu/bg.png similarity index 100% rename from graphics/pokemon_storage/pikachu_bg.png rename to graphics/pokemon_storage/wallpapers/pikachu/bg.png diff --git a/graphics/pokemon_storage/pikachu.bin b/graphics/pokemon_storage/wallpapers/pikachu/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/pikachu.bin rename to graphics/pokemon_storage/wallpapers/pikachu/tilemap.bin diff --git a/graphics/pokemon_storage/plain_bg.png b/graphics/pokemon_storage/wallpapers/plain/bg.png similarity index 100% rename from graphics/pokemon_storage/plain_bg.png rename to graphics/pokemon_storage/wallpapers/plain/bg.png diff --git a/graphics/pokemon_storage/plain_frame.png b/graphics/pokemon_storage/wallpapers/plain/frame.png similarity index 100% rename from graphics/pokemon_storage/plain_frame.png rename to graphics/pokemon_storage/wallpapers/plain/frame.png diff --git a/graphics/pokemon_storage/plain.bin b/graphics/pokemon_storage/wallpapers/plain/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/plain.bin rename to graphics/pokemon_storage/wallpapers/plain/tilemap.bin diff --git a/graphics/pokemon_storage/pokecenter_bg.png b/graphics/pokemon_storage/wallpapers/pokecenter/bg.png similarity index 100% rename from graphics/pokemon_storage/pokecenter_bg.png rename to graphics/pokemon_storage/wallpapers/pokecenter/bg.png diff --git a/graphics/pokemon_storage/pokecenter_frame.png b/graphics/pokemon_storage/wallpapers/pokecenter/frame.png similarity index 100% rename from graphics/pokemon_storage/pokecenter_frame.png rename to graphics/pokemon_storage/wallpapers/pokecenter/frame.png diff --git a/graphics/pokemon_storage/pokecenter.bin b/graphics/pokemon_storage/wallpapers/pokecenter/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/pokecenter.bin rename to graphics/pokemon_storage/wallpapers/pokecenter/tilemap.bin diff --git a/graphics/pokemon_storage/pokecenter2_bg.png b/graphics/pokemon_storage/wallpapers/pokecenter2/bg.png similarity index 100% rename from graphics/pokemon_storage/pokecenter2_bg.png rename to graphics/pokemon_storage/wallpapers/pokecenter2/bg.png diff --git a/graphics/pokemon_storage/pokecenter2.bin b/graphics/pokemon_storage/wallpapers/pokecenter2/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/pokecenter2.bin rename to graphics/pokemon_storage/wallpapers/pokecenter2/tilemap.bin diff --git a/graphics/pokemon_storage/polkadot_bg.png b/graphics/pokemon_storage/wallpapers/polkadot/bg.png similarity index 100% rename from graphics/pokemon_storage/polkadot_bg.png rename to graphics/pokemon_storage/wallpapers/polkadot/bg.png diff --git a/graphics/pokemon_storage/polkadot_frame.png b/graphics/pokemon_storage/wallpapers/polkadot/frame.png similarity index 100% rename from graphics/pokemon_storage/polkadot_frame.png rename to graphics/pokemon_storage/wallpapers/polkadot/frame.png diff --git a/graphics/pokemon_storage/polkadot.bin b/graphics/pokemon_storage/wallpapers/polkadot/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/polkadot.bin rename to graphics/pokemon_storage/wallpapers/polkadot/tilemap.bin diff --git a/graphics/pokemon_storage/ribbon_bg.png b/graphics/pokemon_storage/wallpapers/ribbon/bg.png similarity index 100% rename from graphics/pokemon_storage/ribbon_bg.png rename to graphics/pokemon_storage/wallpapers/ribbon/bg.png diff --git a/graphics/pokemon_storage/ribbon_frame.pal b/graphics/pokemon_storage/wallpapers/ribbon/frame.pal similarity index 100% rename from graphics/pokemon_storage/ribbon_frame.pal rename to graphics/pokemon_storage/wallpapers/ribbon/frame.pal diff --git a/graphics/pokemon_storage/ribbon.bin b/graphics/pokemon_storage/wallpapers/ribbon/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/ribbon.bin rename to graphics/pokemon_storage/wallpapers/ribbon/tilemap.bin diff --git a/graphics/pokemon_storage/river_bg.png b/graphics/pokemon_storage/wallpapers/river/bg.png similarity index 100% rename from graphics/pokemon_storage/river_bg.png rename to graphics/pokemon_storage/wallpapers/river/bg.png diff --git a/graphics/pokemon_storage/river_frame.png b/graphics/pokemon_storage/wallpapers/river/frame.png similarity index 100% rename from graphics/pokemon_storage/river_frame.png rename to graphics/pokemon_storage/wallpapers/river/frame.png diff --git a/graphics/pokemon_storage/river.bin b/graphics/pokemon_storage/wallpapers/river/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/river.bin rename to graphics/pokemon_storage/wallpapers/river/tilemap.bin diff --git a/graphics/pokemon_storage/savanna_bg.png b/graphics/pokemon_storage/wallpapers/savanna/bg.png similarity index 100% rename from graphics/pokemon_storage/savanna_bg.png rename to graphics/pokemon_storage/wallpapers/savanna/bg.png diff --git a/graphics/pokemon_storage/savanna_frame.png b/graphics/pokemon_storage/wallpapers/savanna/frame.png similarity index 100% rename from graphics/pokemon_storage/savanna_frame.png rename to graphics/pokemon_storage/wallpapers/savanna/frame.png diff --git a/graphics/pokemon_storage/savanna.bin b/graphics/pokemon_storage/wallpapers/savanna/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/savanna.bin rename to graphics/pokemon_storage/wallpapers/savanna/tilemap.bin diff --git a/graphics/pokemon_storage/screen_bg.png b/graphics/pokemon_storage/wallpapers/screen/bg.png similarity index 100% rename from graphics/pokemon_storage/screen_bg.png rename to graphics/pokemon_storage/wallpapers/screen/bg.png diff --git a/graphics/pokemon_storage/screen.bin b/graphics/pokemon_storage/wallpapers/screen/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/screen.bin rename to graphics/pokemon_storage/wallpapers/screen/tilemap.bin diff --git a/graphics/pokemon_storage/seafloor_bg.png b/graphics/pokemon_storage/wallpapers/seafloor/bg.png similarity index 100% rename from graphics/pokemon_storage/seafloor_bg.png rename to graphics/pokemon_storage/wallpapers/seafloor/bg.png diff --git a/graphics/pokemon_storage/seafloor_frame.png b/graphics/pokemon_storage/wallpapers/seafloor/frame.png similarity index 100% rename from graphics/pokemon_storage/seafloor_frame.png rename to graphics/pokemon_storage/wallpapers/seafloor/frame.png diff --git a/graphics/pokemon_storage/seafloor.bin b/graphics/pokemon_storage/wallpapers/seafloor/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/seafloor.bin rename to graphics/pokemon_storage/wallpapers/seafloor/tilemap.bin diff --git a/graphics/pokemon_storage/sky_bg.png b/graphics/pokemon_storage/wallpapers/sky/bg.png similarity index 100% rename from graphics/pokemon_storage/sky_bg.png rename to graphics/pokemon_storage/wallpapers/sky/bg.png diff --git a/graphics/pokemon_storage/sky_frame.png b/graphics/pokemon_storage/wallpapers/sky/frame.png similarity index 100% rename from graphics/pokemon_storage/sky_frame.png rename to graphics/pokemon_storage/wallpapers/sky/frame.png diff --git a/graphics/pokemon_storage/sky.bin b/graphics/pokemon_storage/wallpapers/sky/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/sky.bin rename to graphics/pokemon_storage/wallpapers/sky/tilemap.bin diff --git a/graphics/pokemon_storage/snow_bg.png b/graphics/pokemon_storage/wallpapers/snow/bg.png similarity index 100% rename from graphics/pokemon_storage/snow_bg.png rename to graphics/pokemon_storage/wallpapers/snow/bg.png diff --git a/graphics/pokemon_storage/snow_frame.png b/graphics/pokemon_storage/wallpapers/snow/frame.png similarity index 100% rename from graphics/pokemon_storage/snow_frame.png rename to graphics/pokemon_storage/wallpapers/snow/frame.png diff --git a/graphics/pokemon_storage/snow.bin b/graphics/pokemon_storage/wallpapers/snow/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/snow.bin rename to graphics/pokemon_storage/wallpapers/snow/tilemap.bin diff --git a/graphics/pokemon_storage/volcano_bg.png b/graphics/pokemon_storage/wallpapers/volcano/bg.png similarity index 100% rename from graphics/pokemon_storage/volcano_bg.png rename to graphics/pokemon_storage/wallpapers/volcano/bg.png diff --git a/graphics/pokemon_storage/volcano_frame.png b/graphics/pokemon_storage/wallpapers/volcano/frame.png similarity index 100% rename from graphics/pokemon_storage/volcano_frame.png rename to graphics/pokemon_storage/wallpapers/volcano/frame.png diff --git a/graphics/pokemon_storage/volcano.bin b/graphics/pokemon_storage/wallpapers/volcano/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/volcano.bin rename to graphics/pokemon_storage/wallpapers/volcano/tilemap.bin diff --git a/graphics/pokemon_storage/whiscash_bg.png b/graphics/pokemon_storage/wallpapers/whiscash/bg.png similarity index 100% rename from graphics/pokemon_storage/whiscash_bg.png rename to graphics/pokemon_storage/wallpapers/whiscash/bg.png diff --git a/graphics/pokemon_storage/whiscash.bin b/graphics/pokemon_storage/wallpapers/whiscash/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/whiscash.bin rename to graphics/pokemon_storage/wallpapers/whiscash/tilemap.bin diff --git a/graphics/pokemon_storage/zigzagoon_bg.png b/graphics/pokemon_storage/wallpapers/zigzagoon/bg.png similarity index 100% rename from graphics/pokemon_storage/zigzagoon_bg.png rename to graphics/pokemon_storage/wallpapers/zigzagoon/bg.png diff --git a/graphics/pokemon_storage/zigzagoon.bin b/graphics/pokemon_storage/wallpapers/zigzagoon/tilemap.bin similarity index 100% rename from graphics/pokemon_storage/zigzagoon.bin rename to graphics/pokemon_storage/wallpapers/zigzagoon/tilemap.bin diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 6a3bf40069e7..be465a57f1bd 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -14,7 +14,7 @@ ROULETTEGFXDIR := graphics/roulette SLOTMACHINEGFXDIR := graphics/slot_machine PKNAVGFXDIR := graphics/pokenav PKNAVOPTIONSGFXDIR := graphics/pokenav/options -PSSGFXDIR := graphics/pokemon_storage +WALLPAPERGFXDIR := graphics/pokemon_storage/wallpapers OBJEVENTGFXDIR := graphics/object_events MISCGFXDIR := graphics/misc @@ -502,7 +502,7 @@ $(BATTRANSGFXDIR)/frontier_square_1.4bpp: $(BATTRANSGFXDIR)/frontier_squares_bla $(BATTRANSGFXDIR)/frontier_square_2.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ $(BATTRANSGFXDIR)/frontier_squares_2.4bpp @cat $^ >$@ - + $(BATTRANSGFXDIR)/frontier_square_3.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ $(BATTRANSGFXDIR)/frontier_squares_3.4bpp @cat $^ >$@ @@ -520,162 +520,162 @@ $(UNUSEDGFXDIR)/intro_birch_beauty.4bpp: %.4bpp: %.png -### PSS ### +### Pokémon Storage System ### -$(PSSGFXDIR)/forest_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/forest/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 55 -$(PSSGFXDIR)/forest.4bpp: $(PSSGFXDIR)/forest_frame.4bpp $(PSSGFXDIR)/forest_bg.4bpp +$(WALLPAPERGFXDIR)/forest/tiles.4bpp: $(WALLPAPERGFXDIR)/forest/frame.4bpp $(WALLPAPERGFXDIR)/forest/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/city_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/city/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 52 -$(PSSGFXDIR)/city.4bpp: $(PSSGFXDIR)/city_frame.4bpp $(PSSGFXDIR)/city_bg.4bpp +$(WALLPAPERGFXDIR)/city/tiles.4bpp: $(WALLPAPERGFXDIR)/city/frame.4bpp $(WALLPAPERGFXDIR)/city/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/desert.4bpp: $(PSSGFXDIR)/desert_frame.4bpp $(PSSGFXDIR)/desert_bg.4bpp +$(WALLPAPERGFXDIR)/desert/tiles.4bpp: $(WALLPAPERGFXDIR)/desert/frame.4bpp $(WALLPAPERGFXDIR)/desert/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/savanna_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/savanna/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 45 -$(PSSGFXDIR)/savanna_bg.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/savanna/bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 23 -$(PSSGFXDIR)/savanna.4bpp: $(PSSGFXDIR)/savanna_frame.4bpp $(PSSGFXDIR)/savanna_bg.4bpp +$(WALLPAPERGFXDIR)/savanna/tiles.4bpp: $(WALLPAPERGFXDIR)/savanna/frame.4bpp $(WALLPAPERGFXDIR)/savanna/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/crag_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/crag/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 49 -$(PSSGFXDIR)/crag.4bpp: $(PSSGFXDIR)/crag_frame.4bpp $(PSSGFXDIR)/crag_bg.4bpp +$(WALLPAPERGFXDIR)/crag/tiles.4bpp: $(WALLPAPERGFXDIR)/crag/frame.4bpp $(WALLPAPERGFXDIR)/crag/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/volcano_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/volcano/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 56 -$(PSSGFXDIR)/volcano.4bpp: $(PSSGFXDIR)/volcano_frame.4bpp $(PSSGFXDIR)/volcano_bg.4bpp +$(WALLPAPERGFXDIR)/volcano/tiles.4bpp: $(WALLPAPERGFXDIR)/volcano/frame.4bpp $(WALLPAPERGFXDIR)/volcano/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/snow_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/snow/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 57 -$(PSSGFXDIR)/snow.4bpp: $(PSSGFXDIR)/snow_frame.4bpp $(PSSGFXDIR)/snow_bg.4bpp +$(WALLPAPERGFXDIR)/snow/tiles.4bpp: $(WALLPAPERGFXDIR)/snow/frame.4bpp $(WALLPAPERGFXDIR)/snow/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/cave_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/cave/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 55 -$(PSSGFXDIR)/cave.4bpp: $(PSSGFXDIR)/cave_frame.4bpp $(PSSGFXDIR)/cave_bg.4bpp +$(WALLPAPERGFXDIR)/cave/tiles.4bpp: $(WALLPAPERGFXDIR)/cave/frame.4bpp $(WALLPAPERGFXDIR)/cave/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/beach_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/beach/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 46 -$(PSSGFXDIR)/beach_bg.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/beach/bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 23 -$(PSSGFXDIR)/beach.4bpp: $(PSSGFXDIR)/beach_frame.4bpp $(PSSGFXDIR)/beach_bg.4bpp +$(WALLPAPERGFXDIR)/beach/tiles.4bpp: $(WALLPAPERGFXDIR)/beach/frame.4bpp $(WALLPAPERGFXDIR)/beach/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/seafloor_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/seafloor/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 54 -$(PSSGFXDIR)/seafloor.4bpp: $(PSSGFXDIR)/seafloor_frame.4bpp $(PSSGFXDIR)/seafloor_bg.4bpp +$(WALLPAPERGFXDIR)/seafloor/tiles.4bpp: $(WALLPAPERGFXDIR)/seafloor/frame.4bpp $(WALLPAPERGFXDIR)/seafloor/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/river_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/river/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 51 -$(PSSGFXDIR)/river_bg.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/river/bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 11 -$(PSSGFXDIR)/river.4bpp: $(PSSGFXDIR)/river_frame.4bpp $(PSSGFXDIR)/river_bg.4bpp +$(WALLPAPERGFXDIR)/river/tiles.4bpp: $(WALLPAPERGFXDIR)/river/frame.4bpp $(WALLPAPERGFXDIR)/river/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/sky_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/sky/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 45 -$(PSSGFXDIR)/sky.4bpp: $(PSSGFXDIR)/sky_frame.4bpp $(PSSGFXDIR)/sky_bg.4bpp +$(WALLPAPERGFXDIR)/sky/tiles.4bpp: $(WALLPAPERGFXDIR)/sky/frame.4bpp $(WALLPAPERGFXDIR)/sky/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/polkadot_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/polkadot/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 54 -$(PSSGFXDIR)/polkadot.4bpp: $(PSSGFXDIR)/polkadot_frame.4bpp $(PSSGFXDIR)/polkadot_bg.4bpp +$(WALLPAPERGFXDIR)/polkadot/tiles.4bpp: $(WALLPAPERGFXDIR)/polkadot/frame.4bpp $(WALLPAPERGFXDIR)/polkadot/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/pokecenter_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/pokecenter/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 35 -$(PSSGFXDIR)/pokecenter.4bpp: $(PSSGFXDIR)/pokecenter_frame.4bpp $(PSSGFXDIR)/pokecenter_bg.4bpp +$(WALLPAPERGFXDIR)/pokecenter/tiles.4bpp: $(WALLPAPERGFXDIR)/pokecenter/frame.4bpp $(WALLPAPERGFXDIR)/pokecenter/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/machine_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/machine/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 33 -$(PSSGFXDIR)/machine.4bpp: $(PSSGFXDIR)/machine_frame.4bpp $(PSSGFXDIR)/machine_bg.4bpp +$(WALLPAPERGFXDIR)/machine/tiles.4bpp: $(WALLPAPERGFXDIR)/machine/frame.4bpp $(WALLPAPERGFXDIR)/machine/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/plain_frame.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/plain/frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 18 -$(PSSGFXDIR)/plain.4bpp: $(PSSGFXDIR)/plain_frame.4bpp $(PSSGFXDIR)/plain_bg.4bpp +$(WALLPAPERGFXDIR)/plain/tiles.4bpp: $(WALLPAPERGFXDIR)/plain/frame.4bpp $(WALLPAPERGFXDIR)/plain/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/friends_frame1.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/friends_frame1.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 57 -$(PSSGFXDIR)/friends_frame2.4bpp: %.4bpp: %.png +$(WALLPAPERGFXDIR)/friends_frame2.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 57 -$(PSSGFXDIR)/zigzagoon.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/zigzagoon_bg.4bpp +$(WALLPAPERGFXDIR)/zigzagoon/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/zigzagoon/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/screen.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/screen_bg.4bpp +$(WALLPAPERGFXDIR)/screen/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/screen/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/horizontal.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/horizontal_bg.4bpp +$(WALLPAPERGFXDIR)/horizontal/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/horizontal/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/diagonal.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/diagonal_bg.4bpp +$(WALLPAPERGFXDIR)/diagonal/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/diagonal/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/block.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/block_bg.4bpp +$(WALLPAPERGFXDIR)/block/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/block/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/ribbon.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/ribbon_bg.4bpp +$(WALLPAPERGFXDIR)/ribbon/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/ribbon/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/pokecenter2.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/pokecenter2_bg.4bpp +$(WALLPAPERGFXDIR)/pokecenter2/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/pokecenter2/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/frame.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/frame_bg.4bpp +$(WALLPAPERGFXDIR)/frame/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/frame/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/blank.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/blank_bg.4bpp +$(WALLPAPERGFXDIR)/blank/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/blank/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/circles.4bpp: $(PSSGFXDIR)/friends_frame1.4bpp $(PSSGFXDIR)/circles_bg.4bpp +$(WALLPAPERGFXDIR)/circles/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/circles/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/azumarill.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/azumarill_bg.4bpp +$(WALLPAPERGFXDIR)/azumarill/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/azumarill/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/pikachu.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/pikachu_bg.4bpp +$(WALLPAPERGFXDIR)/pikachu/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/pikachu/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/legendary.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/legendary_bg.4bpp +$(WALLPAPERGFXDIR)/legendary/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/legendary/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/dusclops.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/dusclops_bg.4bpp +$(WALLPAPERGFXDIR)/dusclops/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/dusclops/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/ludicolo.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/ludicolo_bg.4bpp +$(WALLPAPERGFXDIR)/ludicolo/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/ludicolo/bg.4bpp @cat $^ >$@ -$(PSSGFXDIR)/whiscash.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/whiscash_bg.4bpp +$(WALLPAPERGFXDIR)/whiscash/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $(WALLPAPERGFXDIR)/whiscash/bg.4bpp @cat $^ >$@ $(OBJEVENTGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 4e5ccfcdadb8..6e5eab3f931a 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -57,6 +57,7 @@ bool32 CheckBoxMonSanityAt(u32 boxId, u32 boxPosition); u32 CountStorageNonEggMons(void); u32 CountAllStorageMons(void); bool32 AnyStorageMonWithMove(u16 moveId); + void ResetWaldaWallpaper(void); void SetWaldaWallpaperLockedOrUnlocked(bool32 unlocked); bool32 IsWaldaWallpaperUnlocked(void); diff --git a/include/pokemon_summary_screen.h b/include/pokemon_summary_screen.h index 151ea3af8d71..3996c8e15f5d 100755 --- a/include/pokemon_summary_screen.h +++ b/include/pokemon_summary_screen.h @@ -18,19 +18,10 @@ void SummaryScreen_SetAnimDelayTaskId(u8 taskId); // such as move re-ordering, are available in the different modes. enum PokemonSummaryScreenMode { - PSS_MODE_NORMAL, - PSS_MODE_LOCK_MOVES, - PSS_MODE_BOX, - PSS_MODE_SELECT_MOVE, -}; - -enum PokemonSummaryScreenPage -{ - PSS_PAGE_INFO, - PSS_PAGE_SKILLS, - PSS_PAGE_BATTLE_MOVES, - PSS_PAGE_CONTEST_MOVES, - PSS_PAGE_COUNT, + SUMMARY_MODE_NORMAL, + SUMMARY_MODE_LOCK_MOVES, + SUMMARY_MODE_BOX, + SUMMARY_MODE_SELECT_MOVE, }; #endif // GUARD_POKEMON_SUMMARY_SCREEN_H diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 5be53a8b3c73..680c6e81c0ff 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1476,7 +1476,7 @@ static void Select_Task_OpenSummaryScreen(u8 taskId) sFactorySelectMons = AllocZeroed(sizeof(struct Pokemon) * SELECTABLE_MONS_COUNT); for (i = 0; i < SELECTABLE_MONS_COUNT; i++) sFactorySelectMons[i] = sFactorySelectScreen->mons[i].monData; - ShowPokemonSummaryScreen(PSS_MODE_LOCK_MOVES, sFactorySelectMons, currMonId, SELECTABLE_MONS_COUNT - 1, CB2_InitSelectScreen); + ShowPokemonSummaryScreen(SUMMARY_MODE_LOCK_MOVES, sFactorySelectMons, currMonId, SELECTABLE_MONS_COUNT - 1, CB2_InitSelectScreen); break; } } @@ -2390,7 +2390,7 @@ static void Swap_Task_OpenSummaryScreen(u8 taskId) DestroyTask(taskId); sFactorySwapScreen->fromSummaryScreen = TRUE; sFactorySwapScreen->speciesNameColorBackup = gPlttBufferUnfaded[244]; - ShowPokemonSummaryScreen(PSS_MODE_NORMAL, gPlayerParty, sFactorySwapScreen->cursorPos, FRONTIER_PARTY_SIZE - 1, CB2_InitSwapScreen); + ShowPokemonSummaryScreen(SUMMARY_MODE_NORMAL, gPlayerParty, sFactorySwapScreen->cursorPos, FRONTIER_PARTY_SIZE - 1, CB2_InitSwapScreen); break; } } diff --git a/src/data/wallpapers.h b/src/data/wallpapers.h index d075753b7940..e198423c7371 100644 --- a/src/data/wallpapers.h +++ b/src/data/wallpapers.h @@ -22,130 +22,130 @@ enum { static const u16 sWallpaperPalettes_Forest[][16] = { - INCBIN_U16("graphics/pokemon_storage/forest_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/forest_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/forest/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/forest/bg.gbapal"), }; -static const u32 sWallpaperTiles_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.4bpp.lz"); -static const u32 sWallpaperTilemap_Forest[] = INCBIN_U32("graphics/pokemon_storage/forest.bin.lz"); +static const u32 sWallpaperTiles_Forest[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/forest/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Forest[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/forest/tilemap.bin.lz"); static const u16 sWallpaperPalettes_City[][16] = { - INCBIN_U16("graphics/pokemon_storage/city_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/city_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/city/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/city/bg.gbapal"), }; -static const u32 sWallpaperTiles_City[] = INCBIN_U32("graphics/pokemon_storage/city.4bpp.lz"); -static const u32 sWallpaperTilemap_City[] = INCBIN_U32("graphics/pokemon_storage/city.bin.lz"); +static const u32 sWallpaperTiles_City[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/city/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_City[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/city/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Desert[][16] = { - INCBIN_U16("graphics/pokemon_storage/desert_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/desert_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/desert/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/desert/bg.gbapal"), }; -static const u32 sWallpaperTiles_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.4bpp.lz"); -static const u32 sWallpaperTilemap_Desert[] = INCBIN_U32("graphics/pokemon_storage/desert.bin.lz"); +static const u32 sWallpaperTiles_Desert[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/desert/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Desert[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/desert/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Savanna[][16] = { - INCBIN_U16("graphics/pokemon_storage/savanna_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/savanna_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/savanna/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/savanna/bg.gbapal"), }; -static const u32 sWallpaperTiles_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.4bpp.lz"); -static const u32 sWallpaperTilemap_Savanna[] = INCBIN_U32("graphics/pokemon_storage/savanna.bin.lz"); +static const u32 sWallpaperTiles_Savanna[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/savanna/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Savanna[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/savanna/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Crag[][16] = { - INCBIN_U16("graphics/pokemon_storage/crag_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/crag_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/crag/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/crag/bg.gbapal"), }; -static const u32 sWallpaperTiles_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.4bpp.lz"); -static const u32 sWallpaperTilemap_Crag[] = INCBIN_U32("graphics/pokemon_storage/crag.bin.lz"); +static const u32 sWallpaperTiles_Crag[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/crag/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Crag[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/crag/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Volcano[][16] = { - INCBIN_U16("graphics/pokemon_storage/volcano_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/volcano_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/volcano/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/volcano/bg.gbapal"), }; -static const u32 sWallpaperTiles_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.4bpp.lz"); -static const u32 sWallpaperTilemap_Volcano[] = INCBIN_U32("graphics/pokemon_storage/volcano.bin.lz"); +static const u32 sWallpaperTiles_Volcano[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/volcano/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Volcano[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/volcano/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Snow[][16] = { - INCBIN_U16("graphics/pokemon_storage/snow_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/snow_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/snow/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/snow/bg.gbapal"), }; -static const u32 sWallpaperTiles_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.4bpp.lz"); -static const u32 sWallpaperTilemap_Snow[] = INCBIN_U32("graphics/pokemon_storage/snow.bin.lz"); +static const u32 sWallpaperTiles_Snow[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/snow/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Snow[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/snow/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Cave[][16] = { - INCBIN_U16("graphics/pokemon_storage/cave_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/cave_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/cave/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/cave/bg.gbapal"), }; -static const u32 sWallpaperTiles_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.4bpp.lz"); -static const u32 sWallpaperTilemap_Cave[] = INCBIN_U32("graphics/pokemon_storage/cave.bin.lz"); +static const u32 sWallpaperTiles_Cave[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/cave/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Cave[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/cave/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Beach[][16] = { - INCBIN_U16("graphics/pokemon_storage/beach_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/beach_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/beach/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/beach/bg.gbapal"), }; -static const u32 sWallpaperTiles_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.4bpp.lz"); -static const u32 sWallpaperTilemap_Beach[] = INCBIN_U32("graphics/pokemon_storage/beach.bin.lz"); +static const u32 sWallpaperTiles_Beach[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/beach/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Beach[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/beach/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Seafloor[][16] = { - INCBIN_U16("graphics/pokemon_storage/seafloor_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/seafloor_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/seafloor/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/seafloor/bg.gbapal"), }; -static const u32 sWallpaperTiles_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.4bpp.lz"); -static const u32 sWallpaperTilemap_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/seafloor.bin.lz"); +static const u32 sWallpaperTiles_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/seafloor/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Seafloor[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/seafloor/tilemap.bin.lz"); static const u16 sWallpaperPalettes_River[][16] = { - INCBIN_U16("graphics/pokemon_storage/river_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/river_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/river/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/river/bg.gbapal"), }; -static const u32 sWallpaperTiles_River[] = INCBIN_U32("graphics/pokemon_storage/river.4bpp.lz"); -static const u32 sWallpaperTilemap_River[] = INCBIN_U32("graphics/pokemon_storage/river.bin.lz"); +static const u32 sWallpaperTiles_River[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/river/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_River[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/river/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Sky[][16] = { - INCBIN_U16("graphics/pokemon_storage/sky_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/sky_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/sky/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/sky/bg.gbapal"), }; -static const u32 sWallpaperTiles_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.4bpp.lz"); -static const u32 sWallpaperTilemap_Sky[] = INCBIN_U32("graphics/pokemon_storage/sky.bin.lz"); +static const u32 sWallpaperTiles_Sky[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/sky/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Sky[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/sky/tilemap.bin.lz"); static const u16 sWallpaperPalettes_PolkaDot[][16] = { - INCBIN_U16("graphics/pokemon_storage/polkadot_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/polkadot_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/polkadot/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/polkadot/bg.gbapal"), }; -static const u32 sWallpaperTiles_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.4bpp.lz"); -static const u32 sWallpaperTilemap_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/polkadot.bin.lz"); +static const u32 sWallpaperTiles_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/polkadot/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_PolkaDot[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/polkadot/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Pokecenter[][16] = { - INCBIN_U16("graphics/pokemon_storage/pokecenter_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pokecenter_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/pokecenter/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/pokecenter/bg.gbapal"), }; -static const u32 sWallpaperTiles_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.4bpp.lz"); -static const u32 sWallpaperTilemap_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/pokecenter.bin.lz"); +static const u32 sWallpaperTiles_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pokecenter/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Pokecenter[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pokecenter/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Machine[][16] = { - INCBIN_U16("graphics/pokemon_storage/machine_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/machine_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/machine/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/machine/bg.gbapal"), }; -static const u32 sWallpaperTiles_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.4bpp.lz"); -static const u32 sWallpaperTilemap_Machine[] = INCBIN_U32("graphics/pokemon_storage/machine.bin.lz"); +static const u32 sWallpaperTiles_Machine[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/machine/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Machine[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/machine/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Plain[][16] = { - INCBIN_U16("graphics/pokemon_storage/plain_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/plain_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/plain/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/plain/bg.gbapal"), }; -static const u32 sWallpaperTiles_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.4bpp.lz"); -static const u32 sWallpaperTilemap_Plain[] = INCBIN_U32("graphics/pokemon_storage/plain.bin.lz"); +static const u32 sWallpaperTiles_Plain[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/plain/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Plain[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/plain/tilemap.bin.lz"); // 12x18 tilemap static const u32 gUnknown_085773C4[] = INCBIN_U32("graphics/unused/tilemap_5773C4.bin"); @@ -200,143 +200,143 @@ static const u8 sArrow_Gfx[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); static const u16 sWallpaperPalettes_Zigzagoon[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/zigzagoon/bg.gbapal"), }; -static const u32 sWallpaperTiles_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.4bpp.lz"); -static const u32 sWallpaperTilemap_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/zigzagoon.bin.lz"); +static const u32 sWallpaperTiles_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/zigzagoon/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Zigzagoon[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/zigzagoon/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Screen[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/screen_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/screen/bg.gbapal"), }; -static const u32 sWallpaperTiles_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.4bpp.lz"); -static const u32 sWallpaperTilemap_Screen[] = INCBIN_U32("graphics/pokemon_storage/screen.bin.lz"); +static const u32 sWallpaperTiles_Screen[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/screen/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Screen[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/screen/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Diagonal[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/diagonal_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/diagonal/bg.gbapal"), }; -static const u32 sWallpaperTiles_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.4bpp.lz"); -static const u32 sWallpaperTilemap_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/diagonal.bin.lz"); +static const u32 sWallpaperTiles_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/diagonal/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Diagonal[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/diagonal/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Block[][16] = { - INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/block_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/block/bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/block/bg.gbapal"), }; -static const u32 sWallpaperTiles_Block[] = INCBIN_U32("graphics/pokemon_storage/block.4bpp.lz"); -static const u32 sWallpaperTilemap_Block[] = INCBIN_U32("graphics/pokemon_storage/block.bin.lz"); +static const u32 sWallpaperTiles_Block[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/block/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Block[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/block/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Pokecenter2[][16] = { - INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pokecenter2_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/pokecenter2/bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/pokecenter2/bg.gbapal"), }; -static const u32 sWallpaperTiles_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.4bpp.lz"); -static const u32 sWallpaperTilemap_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/pokecenter2.bin.lz"); +static const u32 sWallpaperTiles_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pokecenter2/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Pokecenter2[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pokecenter2/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Frame[][16] = { - INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), - INCBIN_U16("graphics/pokemon_storage/frame_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/frame/bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/frame/bg.gbapal"), }; -static const u32 sWallpaperTiles_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.4bpp.lz"); -static const u32 sWallpaperTilemap_Frame[] = INCBIN_U32("graphics/pokemon_storage/frame.bin.lz"); +static const u32 sWallpaperTiles_Frame[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/frame/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Frame[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/frame/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Blank[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame1.gbapal"), - INCBIN_U16("graphics/pokemon_storage/zigzagoon_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame1.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/zigzagoon/bg.gbapal"), }; -static const u32 sWallpaperTiles_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.4bpp.lz"); -static const u32 sWallpaperTilemap_Blank[] = INCBIN_U32("graphics/pokemon_storage/blank.bin.lz"); +static const u32 sWallpaperTiles_Blank[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/blank/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Blank[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/blank/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Circles[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/circles_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/circles/bg.gbapal"), }; -static const u32 sWallpaperTiles_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.4bpp.lz"); -static const u32 sWallpaperTilemap_Circles[] = INCBIN_U32("graphics/pokemon_storage/circles.bin.lz"); +static const u32 sWallpaperTiles_Circles[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/circles/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Circles[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/circles/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Azumarill[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/azumarill_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/azumarill/bg.gbapal"), }; -static const u32 sWallpaperTiles_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.4bpp.lz"); -static const u32 sWallpaperTilemap_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/azumarill.bin.lz"); +static const u32 sWallpaperTiles_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/azumarill/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Azumarill[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/azumarill/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Pikachu[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/pikachu_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/pikachu/bg.gbapal"), }; -static const u32 sWallpaperTiles_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.4bpp.lz"); -static const u32 sWallpaperTilemap_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/pikachu.bin.lz"); +static const u32 sWallpaperTiles_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pikachu/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Pikachu[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/pikachu/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Legendary[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/legendary_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/legendary/bg.gbapal"), }; -static const u32 sWallpaperTiles_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.4bpp.lz"); -static const u32 sWallpaperTilemap_Legendary[] = INCBIN_U32("graphics/pokemon_storage/legendary.bin.lz"); +static const u32 sWallpaperTiles_Legendary[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/legendary/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Legendary[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/legendary/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Dusclops[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/dusclops_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/dusclops/bg.gbapal"), }; -static const u32 sWallpaperTiles_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.4bpp.lz"); -static const u32 sWallpaperTilemap_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/dusclops.bin.lz"); +static const u32 sWallpaperTiles_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/dusclops/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Dusclops[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/dusclops/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Ludicolo[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/ludicolo_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/ludicolo/bg.gbapal"), }; -static const u32 sWallpaperTiles_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.4bpp.lz"); -static const u32 sWallpaperTilemap_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/ludicolo.bin.lz"); +static const u32 sWallpaperTiles_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/ludicolo/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Ludicolo[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/ludicolo/tilemap.bin.lz"); static const u16 sWallpaperPalettes_Whiscash[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/whiscash_bg.gbapal"), -}; -static const u32 sWallpaperTiles_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.4bpp.lz"); -static const u32 sWallpaperTilemap_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/whiscash.bin.lz"); - -static const u32 sWallpaperIcon_Aqua[] = INCBIN_U32("graphics/pokemon_storage/aqua_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Heart[] = INCBIN_U32("graphics/pokemon_storage/heart_icon.4bpp.lz"); -static const u32 sWallpaperIcon_FiveStar[] = INCBIN_U32("graphics/pokemon_storage/five_star_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Brick[] = INCBIN_U32("graphics/pokemon_storage/brick_icon.4bpp.lz"); -static const u32 sWallpaperIcon_FourStar[] = INCBIN_U32("graphics/pokemon_storage/four_star_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Asterisk[] = INCBIN_U32("graphics/pokemon_storage/asterisk_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Dot[] = INCBIN_U32("graphics/pokemon_storage/dot_icon.4bpp.lz"); -static const u32 sWallpaperIcon_LineCircle[] = INCBIN_U32("graphics/pokemon_storage/line_circle_icon.4bpp.lz"); -static const u32 sWallpaperIcon_PokeBall[] = INCBIN_U32("graphics/pokemon_storage/pokeball_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Maze[] = INCBIN_U32("graphics/pokemon_storage/maze_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Footprint[] = INCBIN_U32("graphics/pokemon_storage/footprint_icon.4bpp.lz"); -static const u32 sWallpaperIcon_BigAsterisk[] = INCBIN_U32("graphics/pokemon_storage/big_asterisk_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Circle[] = INCBIN_U32("graphics/pokemon_storage/circle_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Koffing[] = INCBIN_U32("graphics/pokemon_storage/koffing_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/ribbon_icon.4bpp.lz"); -static const u32 sWallpaperIcon_FourCircles[] = INCBIN_U32("graphics/pokemon_storage/four_circles_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Lotad[] = INCBIN_U32("graphics/pokemon_storage/lotad_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Crystal[] = INCBIN_U32("graphics/pokemon_storage/crystal_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Pichu[] = INCBIN_U32("graphics/pokemon_storage/pichu_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Diglett[] = INCBIN_U32("graphics/pokemon_storage/diglett_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Luvdisc[] = INCBIN_U32("graphics/pokemon_storage/luvdisc_icon.4bpp.lz"); -static const u32 sWallpaperIcon_StarInCircle[] = INCBIN_U32("graphics/pokemon_storage/star_in_circle_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Spinda[] = INCBIN_U32("graphics/pokemon_storage/spinda_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Latis[] = INCBIN_U32("graphics/pokemon_storage/latis_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Minun[] = INCBIN_U32("graphics/pokemon_storage/minun_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Togepi[] = INCBIN_U32("graphics/pokemon_storage/togepi_icon.4bpp.lz"); -static const u32 sWallpaperIcon_Magma[] = INCBIN_U32("graphics/pokemon_storage/magma_icon.4bpp.lz"); + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/whiscash/bg.gbapal"), +}; +static const u32 sWallpaperTiles_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/whiscash/tiles.4bpp.lz"); +static const u32 sWallpaperTilemap_Whiscash[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/whiscash/tilemap.bin.lz"); + +static const u32 sWallpaperIcon_Aqua[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/aqua.4bpp.lz"); +static const u32 sWallpaperIcon_Heart[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/heart.4bpp.lz"); +static const u32 sWallpaperIcon_FiveStar[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/five_star.4bpp.lz"); +static const u32 sWallpaperIcon_Brick[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/brick.4bpp.lz"); +static const u32 sWallpaperIcon_FourStar[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/four_star.4bpp.lz"); +static const u32 sWallpaperIcon_Asterisk[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/asterisk.4bpp.lz"); +static const u32 sWallpaperIcon_Dot[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/dot.4bpp.lz"); +static const u32 sWallpaperIcon_LineCircle[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/line_circle.4bpp.lz"); +static const u32 sWallpaperIcon_PokeBall[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/pokeball.4bpp.lz"); +static const u32 sWallpaperIcon_Maze[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/maze.4bpp.lz"); +static const u32 sWallpaperIcon_Footprint[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/footprint.4bpp.lz"); +static const u32 sWallpaperIcon_BigAsterisk[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/big_asterisk.4bpp.lz"); +static const u32 sWallpaperIcon_Circle[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/circle.4bpp.lz"); +static const u32 sWallpaperIcon_Koffing[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/koffing.4bpp.lz"); +static const u32 sWallpaperIcon_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/ribbon.4bpp.lz"); +static const u32 sWallpaperIcon_FourCircles[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/four_circles.4bpp.lz"); +static const u32 sWallpaperIcon_Lotad[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/lotad.4bpp.lz"); +static const u32 sWallpaperIcon_Crystal[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/crystal.4bpp.lz"); +static const u32 sWallpaperIcon_Pichu[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/pichu.4bpp.lz"); +static const u32 sWallpaperIcon_Diglett[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/diglett.4bpp.lz"); +static const u32 sWallpaperIcon_Luvdisc[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/luvdisc.4bpp.lz"); +static const u32 sWallpaperIcon_StarInCircle[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/star_in_circle.4bpp.lz"); +static const u32 sWallpaperIcon_Spinda[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/spinda.4bpp.lz"); +static const u32 sWallpaperIcon_Latis[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/latis.4bpp.lz"); +static const u32 sWallpaperIcon_Minun[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/minun.4bpp.lz"); +static const u32 sWallpaperIcon_Togepi[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/togepi.4bpp.lz"); +static const u32 sWallpaperIcon_Magma[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/magma.4bpp.lz"); static const struct Wallpaper sWaldaWallpapers[] = { diff --git a/src/graphics.c b/src/graphics.c index 09779eab7ab4..4eb58cc5a285 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1484,27 +1484,27 @@ const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.b const u16 gMessageBox_Pal[] = INCBIN_U16("graphics/text_window/message_box.gbapal"); const u8 gMessageBox_Gfx[] = INCBIN_U8("graphics/text_window/message_box.4bpp"); -const u32 gWallpaperIcon_Cross[] = INCBIN_U32("graphics/pokemon_storage/cross_icon.4bpp.lz"); -const u32 gWallpaperIcon_Bolt[] = INCBIN_U32("graphics/pokemon_storage/bolt_icon.4bpp.lz"); -const u32 gWallpaperIcon_Plusle[] = INCBIN_U32("graphics/pokemon_storage/plusle_icon.4bpp.lz"); +const u32 gWallpaperIcon_Cross[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/cross.4bpp.lz"); +const u32 gWallpaperIcon_Bolt[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/bolt.4bpp.lz"); +const u32 gWallpaperIcon_Plusle[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/icons/plusle.4bpp.lz"); const u16 gWallpaperPalettes_Horizontal[][16] = { - INCBIN_U16("graphics/pokemon_storage/friends_frame2.gbapal"), - INCBIN_U16("graphics/pokemon_storage/horizontal_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/friends_frame2.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/horizontal/bg.gbapal"), }; -const u32 gWallpaperTiles_Horizontal[] = INCBIN_U32("graphics/pokemon_storage/horizontal.4bpp.lz"); -const u32 gWallpaperTilemap_Horizontal[] = INCBIN_U32("graphics/pokemon_storage/horizontal.bin.lz"); +const u32 gWallpaperTiles_Horizontal[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/horizontal/tiles.4bpp.lz"); +const u32 gWallpaperTilemap_Horizontal[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/horizontal/tilemap.bin.lz"); const u16 gWallpaperPalettes_Ribbon[][16] = { - INCBIN_U16("graphics/pokemon_storage/ribbon_frame.gbapal"), - INCBIN_U16("graphics/pokemon_storage/ribbon_bg.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/ribbon/frame.gbapal"), + INCBIN_U16("graphics/pokemon_storage/wallpapers/ribbon/bg.gbapal"), }; -const u32 gWallpaperTiles_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/ribbon.4bpp.lz"); -const u32 gWallpaperTilemap_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/ribbon.bin.lz"); +const u32 gWallpaperTiles_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/ribbon/tiles.4bpp.lz"); +const u32 gWallpaperTilemap_Ribbon[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/ribbon/tilemap.bin.lz"); const u16 gPokenavRibbonsSummaryBg_Pal[] = INCBIN_U16("graphics/pokenav/ribbons/summary_bg.gbapal"); const u32 gPokenavRibbonsSummaryBg_Gfx[] = INCBIN_U32("graphics/pokenav/ribbons/summary_bg.4bpp.lz"); diff --git a/src/party_menu.c b/src/party_menu.c index 8a0c01e257d2..81c39949bf9e 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2703,11 +2703,11 @@ static void CB2_ShowPokemonSummaryScreen(void) if (gPartyMenu.menuType == PARTY_MENU_TYPE_IN_BATTLE) { UpdatePartyToBattleOrder(); - ShowPokemonSummaryScreen(PSS_MODE_LOCK_MOVES, gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuFromSummaryScreen); + ShowPokemonSummaryScreen(SUMMARY_MODE_LOCK_MOVES, gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuFromSummaryScreen); } else { - ShowPokemonSummaryScreen(PSS_MODE_NORMAL, gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuFromSummaryScreen); + ShowPokemonSummaryScreen(SUMMARY_MODE_NORMAL, gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuFromSummaryScreen); } } @@ -6265,7 +6265,7 @@ static void Task_BattlePyramidChooseMonHeldItems(u8 taskId) void MoveDeleterChooseMoveToForget(void) { - ShowPokemonSummaryScreen(PSS_MODE_SELECT_MOVE, gPlayerParty, gSpecialVar_0x8004, gPlayerPartyCount - 1, CB2_ReturnToField); + ShowPokemonSummaryScreen(SUMMARY_MODE_SELECT_MOVE, gPlayerParty, gSpecialVar_0x8004, gPlayerPartyCount - 1, CB2_ReturnToField); gFieldCallback = FieldCB_ContinueScriptHandleMusic; } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 6bcc10afcdd0..07e0931ed7bf 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -42,12 +42,14 @@ #include "constants/rgb.h" #include "constants/songs.h" +// PC main menu options enum { - BOX_OPTION_WITHDRAW, - BOX_OPTION_DEPOSIT, - BOX_OPTION_MOVE_MONS, - BOX_OPTION_MOVE_ITEMS, - BOX_OPTION_EXIT, + OPTION_WITHDRAW, + OPTION_DEPOSIT, + OPTION_MOVE_MONS, + OPTION_MOVE_ITEMS, + OPTION_EXIT, + OPTIONS_COUNT }; // IDs for messages to print with PrintMessage @@ -85,6 +87,7 @@ enum { MSG_CANT_STORE_MAIL, }; +// Formatting for the above messages enum { MSG_FORMAT_NORMAL, MSG_FORMAT_MON_NAME_1, @@ -141,6 +144,37 @@ enum { #define MENU_WALLPAPER_SETS_START MENU_SCENERY_1 #define MENU_WALLPAPERS_START MENU_FOREST +// Return IDs for input handlers +enum { + INPUT_NONE, + INPUT_1, + INPUT_2, // Unused + INPUT_3, // Unused + INPUT_4, + INPUT_5, + INPUT_6, + INPUT_7, + INPUT_8, + INPUT_9, + INPUT_10, + INPUT_11, + INPUT_12, + INPUT_13, + INPUT_14, + INPUT_15, + INPUT_16, + INPUT_17, + INPUT_18, + INPUT_19, + INPUT_20, + INPUT_21, + INPUT_22, + INPUT_23, + INPUT_24, + INPUT_25, + INPUT_26, +}; + enum { SCREEN_CHANGE_EXIT_BOX, SCREEN_CHANGE_SUMMARY_SCREEN, @@ -154,26 +188,6 @@ enum { MODE_MOVE, }; -enum { - FRIENDS_ZIGZAGOON, - FRIENDS_SCREEN, - FRIENDS_HORIZONTAL, - FRIENDS_DIAGONAL, - FRIENDS_BLOCK, - FRIENDS_RIBBON, - FRIENDS_POKECENTER2, - FRIENDS_FRAME, - FRIENDS_BLANK, - FRIENDS_CIRCLES, - FRIENDS_AZUMARILL, - FRIENDS_PIKACHU, - FRIENDS_LEGENDARY, - FRIENDS_DUSCLOPS, - FRIENDS_LUDICOLO, - FRIENDS_WHISCASH, - FRIENDS_WALLPAPERS_COUNT -}; - enum { CURSOR_AREA_IN_BOX, CURSOR_AREA_IN_PARTY, @@ -181,27 +195,32 @@ enum { CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box }; +// Special box ids for the choose box menu +#define BOXID_NONE_CHOSEN 200 +#define BOXID_CANCELED 201 + #define TAG_PAL_WAVEFORM 0xDACA #define TAG_PAL_DAC8 0xDAC8 #define TAG_PAL_DAC6 0xDAC6 #define TAG_PAL_DACE 0xDACE #define TAG_PAL_DAC7 0xDAC7 -#define PALTAG_BOX_TITLE 0xDAC9 +#define PALTAG_BOX_TITLE 0xDAC9 #define TAG_PAL_DAC0 0xDAC0 #define TAG_PAL_DACB 0xDACB -#define TAG_TILE_0 0 -#define TAG_TILE_1 1 -#define TAG_TILE_2 2 -#define GFXTAG_BOX_TITLE 3 -#define GFXTAG_BOX_TITLE_ALT 4 -#define TAG_TILE_WAVEFORM 5 -#define GFXTAG_ARROW 6 -#define TAG_TILE_7 7 -#define TAG_TILE_A 10 -#define TAG_TILE_D 13 -#define TAG_TILE_10 16 -#define TAG_TILE_12 18 +#define TAG_TILE_0 0 +#define TAG_TILE_1 1 +#define TAG_TILE_2 2 +#define GFXTAG_BOX_TITLE 3 +#define GFXTAG_BOX_TITLE_ALT 4 +#define TAG_TILE_WAVEFORM 5 +#define GFXTAG_ARROW 6 +#define TAG_TILE_7 7 +#define GFXTAG_CHOOSE_BOX_MENU 10 +#define GFXTAG_CHOOSE_BOX_MENU_SIDES 11 // Used implicitly in LoadChooseBoxMenuGfx +#define TAG_TILE_D 13 +#define TAG_TILE_10 16 +#define TAG_TILE_12 18 struct Wallpaper @@ -229,12 +248,6 @@ struct StorageMenu int textId; }; -struct PSS_MenuStringPtrs -{ - const u8 *text; - const u8 *desc; -}; - struct UnkStruct_2000028 { const u8 *unk_00; @@ -252,19 +265,19 @@ struct UnkStruct_2000020 u8 unk_05; }; -struct UnkPSSStruct_2002370 +struct ChooseBoxMenu { - struct Sprite *unk_0000; - struct Sprite *unk_0004[4]; + struct Sprite *menuSprite; + struct Sprite *menuSideSprites[4]; u32 unk_0014[3]; struct Sprite *arrowSprites[2]; u8 filler_0028[0x214]; - u32 unk_023c; - u16 unk_0240; - u16 unk_0242; + bool32 loadedPalette; + u16 tileTag; + u16 paletteTag; u8 curBox; u8 unk_0245; - u8 unk_0246; + u8 subpriority; }; struct UnkStorageStruct @@ -297,7 +310,7 @@ struct PokemonStorageSystemData bool8 unk_02C9; s16 newCurrBoxId; u16 bg2_X; - s16 wallpaperScrollSpeed; + s16 scrollSpeed; u16 field_2D0; u8 wallpaperOffset; u8 field_2D3; // Written to, but never read. @@ -394,7 +407,7 @@ struct PokemonStorageSystemData struct Sprite *field_D98[2]; u16 *field_DA0; struct MonMarkingsMenu markMenu; - struct UnkPSSStruct_2002370 field_1E5C; + struct ChooseBoxMenu chooseBoxMenu; struct Pokemon movingMon; struct Pokemon field_2108; s8 field_216C; @@ -408,7 +421,7 @@ struct PokemonStorageSystemData u16 field_2176[8]; u8 field_2186; u8 field_2187; - u8 pokemonSummaryScreenMode; + u8 summaryScreenMode; union { struct Pokemon *mon; @@ -461,16 +474,14 @@ struct UnkStruct_2039D84 u8 field_2D; }; -// IWRAM bss static u32 gUnknown_03000F78[98]; -// EWRAM DATA EWRAM_DATA static u8 sPreviousBoxOption = 0; -EWRAM_DATA static struct UnkPSSStruct_2002370 *gUnknown_02039D04 = NULL; +EWRAM_DATA static struct ChooseBoxMenu *sChooseBoxMenu = NULL; EWRAM_DATA static struct PokemonStorageSystemData *sPSSData = NULL; EWRAM_DATA static bool8 sInPartyMenu = 0; EWRAM_DATA static u8 sCurrentBoxOption = 0; -EWRAM_DATA static u8 gUnknown_02039D0E = 0; +EWRAM_DATA static u8 sDepositBoxId = 0; EWRAM_DATA static u8 sWhichToReshow = 0; EWRAM_DATA static u8 sLastUsedBox = 0; EWRAM_DATA static u16 sMovingItemId = 0; @@ -482,8 +493,7 @@ EWRAM_DATA static u8 sMovingMonOrigBoxId = 0; EWRAM_DATA static u8 sMovingMonOrigBoxPos = 0; EWRAM_DATA static bool8 sCanOnlyMove = 0; -// This file's functions. -static void CreatePCMenu(u8, s16 *); +static void CreateMainMenu(u8, s16 *); static void Cb2_EnterPSS(u8); static u8 GetCurrentBoxOption(void); static u8 HandleInput(void); @@ -494,13 +504,13 @@ static void CreateIncomingBoxTitle(u8, s8); static void StartBoxScrollArrowsSlide(s8); static void SetCurrentBox(u8); static void CreateInitBoxTask(u8); -static void sub_80C7958(u8); +static void ChooseBoxMenu_CreateSprites(u8); static void TrimOldWallpaper(void *); -static void sub_80C7B14(void); -static void sub_80C7BB4(void); +static void ChooseBoxMenu_DestroySprites(void); +static void ChooseBoxMenu_MoveLeft(void); static void ScrollBackground(void); -static void sub_80C7B80(void); -static void sub_80C7BE4(void); +static void ChooseBoxMenu_MoveRight(void); +static void ChooseBoxMenu_PrintInfo(void); static void sub_80CAA14(void); static void sub_80CFDC4(void); static void sub_80CE790(void); @@ -570,7 +580,7 @@ static void sub_80CB950(void); static void sub_80CA9C0(void); static void SetUpDoShowPartyMenu(void); static void BoxSetMosaic(void); -static void SpriteCB_JumpBoxArrow(struct Sprite *); +static void SpriteCB_ChooseBoxArrow(struct Sprite *); static void sub_80CC100(struct Sprite *); static void sub_80CB278(struct Sprite *); static void SpriteCB_Arrow(struct Sprite *); @@ -591,7 +601,7 @@ static bool8 ScrollToBox(void); static bool8 sub_80CD554(void); static bool8 HidePartyMenu(void); static bool8 IsActiveItemMoving(void); -static bool8 sub_80D0580(u8 arg0); +static bool8 sub_80D0580(u8); static bool8 sub_80D0BC0(void); static bool8 sub_80CA2B8(void); static bool8 DoWallpaperGfxChange(void); @@ -604,37 +614,37 @@ static bool8 IsCursorOnBox(void); static bool8 IsCursorInBox(void); static bool8 IsMonBeingMoved(void); static bool8 TryStorePartyMonInBox(u8); -static void Cb_InitPSS(u8 taskId); -static void Cb_PlaceMon(u8 taskId); -static void Cb_ChangeScreen(u8 taskId); -static void Cb_ShowPSS(u8 taskId); -static void Cb_OnBPressed(u8 taskId); -static void Cb_HandleBoxOptions(u8 taskId); -static void Cb_OnSelectedMon(u8 taskId); -static void Cb_OnCloseBoxPressed(u8 taskId); -static void Cb_HidePartyPokemon(u8 taskId); -static void Cb_DepositMenu(u8 taskId); -static void Cb_MoveMon(u8 taskId); -static void Cb_GiveMovingItemToMon(u8 taskId); -static void Cb_SwitchSelectedItem(u8 taskId); -static void Cb_TakeItemForMoving(u8 taskId); -static void Cb_WithdrawMon(u8 taskId); -static void Cb_ShiftMon(u8 taskId); -static void Cb_ShowPartyPokemon(u8 taskId); -static void Cb_ShowItemInfo(u8 taskId); -static void Cb_GiveItemFromBag(u8 taskId); -static void Cb_ItemToBag(u8 taskId); -static void Cb_TakeItemForMoving(u8 taskId); -static void Cb_ShowMarkMenu(u8 taskId); -static void Cb_ShowMonSummary(u8 taskId); -static void Cb_ReleaseMon(u8 taskId); -static void Cb_ReshowPSS(u8 taskId); -static void Cb_MainPSS(u8 taskId); -static void Cb_JumpBox(u8 taskId); -static void Cb_HandleWallpapers(u8 taskId); -static void Cb_NameBox(u8 taskId); -static void Cb_PrintCantStoreMail(u8 taskId); -static void Cb_HandleMovingMonFromParty(u8 taskId); +static void Cb_InitPSS(u8); +static void Cb_PlaceMon(u8); +static void Cb_ChangeScreen(u8); +static void Cb_ShowPSS(u8); +static void Cb_OnBPressed(u8); +static void Cb_HandleBoxOptions(u8); +static void Cb_OnSelectedMon(u8); +static void Cb_OnCloseBoxPressed(u8); +static void Cb_HidePartyPokemon(u8); +static void Cb_DepositMenu(u8); +static void Cb_MoveMon(u8); +static void Cb_GiveMovingItemToMon(u8); +static void Cb_SwitchSelectedItem(u8); +static void Cb_TakeItemForMoving(u8); +static void Cb_WithdrawMon(u8); +static void Cb_ShiftMon(u8); +static void Cb_ShowPartyPokemon(u8); +static void Cb_ShowItemInfo(u8); +static void Cb_GiveItemFromBag(u8); +static void Cb_ItemToBag(u8); +static void Cb_TakeItemForMoving(u8); +static void Cb_ShowMarkMenu(u8); +static void Cb_ShowMonSummary(u8); +static void Cb_ReleaseMon(u8); +static void Cb_ReshowPSS(u8); +static void Cb_MainPSS(u8); +static void Cb_JumpBox(u8); +static void Cb_HandleWallpapers(u8); +static void Cb_NameBox(u8); +static void Cb_PrintCantStoreMail(u8); +static void Cb_HandleMovingMonFromParty(u8); static void SetUpScrollToBox(u8); static void sub_80CFE54(u8); static void SetMovingMonPriority(u8); @@ -654,29 +664,29 @@ static void Item_FromMonToMoving(u8, u8); static void Item_GiveMovingToMon(u8, u8); static void Item_TakeMons(u8, u8); static void Item_SwitchMonsWithMoving(u8, u8); -static struct Sprite *CreateJumpBoxArrows(u16, u16, u8, u8, u8); +static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); static void SetWallpaperForCurrentBox(u8); static void AddWallpapersMenu(u8); static u16 GetMovingItem(void); -static void LoadCursorMonGfx(u16 species, u32 pid); -static void sub_80CA2D0(struct Sprite *sprite); +static void LoadCursorMonGfx(u16, u32); +static void sub_80CA2D0(struct Sprite *); static void SpriteCB_OutgoingBoxTitle(struct Sprite *); -static void sub_80CBA3C(struct Sprite *sprite); +static void sub_80CBA3C(struct Sprite *); static void SpriteCB_IncomingBoxTitle(struct Sprite *); -static void sub_80CBAF0(s16 yDelta); -static void sub_80CAAA8(u8 arg0, bool8 isPartyMon); +static void sub_80CBAF0(s16); +static void sub_80CAAA8(u8, bool8); static const u8 *GetMovingItemName(void); -static void SetMenuText(u8 textId); -static void sub_80D0D8C(u8 cursorArea, u8 cursorPos); -static void sub_80D0E50(u8 cursorArea, u8 cursorPos); -static void sub_80D0F38(u16 item); -static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 oamPriority, u8 subpriority); -static void DestroyBoxMonIcon(struct Sprite *sprite); +static void SetMenuText(u8); +static void sub_80D0D8C(u8, u8); +static void sub_80D0E50(u8, u8); +static void sub_80D0F38(u16); +static struct Sprite *CreateMonIconSprite(u16, u32, s16, s16, u8, u8); +static void DestroyBoxMonIcon(struct Sprite *); static void SetBoxSpeciesAndPersonalities(u8); static void sub_80CB9D0(struct Sprite *, u16); -static void Task_InitBox(u8 taskId); -static void InitBoxTitle(u8 boxId); -static s8 DetermineBoxScrollDirection(u8 boxId); +static void Task_InitBox(u8); +static void InitBoxTitle(u8); +static s8 DetermineBoxScrollDirection(u8); static void DrawWallpaper(const void *, s8, u8); static s16 GetBoxTitleBaseX(const u8 *); static bool8 MonPlaceChange_Shift(void); @@ -684,12 +694,12 @@ static bool8 MonPlaceChange_Move(void); static bool8 MonPlaceChange_Place(void); static bool8 sub_80CDEC4(void); static bool8 sub_80CDEB4(void); -static void sub_80CD444(u8 cursorArea, u8 cursorPosition, u16 *x, u16 *y); -static void SetShiftedMonData(u8 boxId, u8 position); -static void SetMovedMonData(u8 boxId, u8 position); -static void SetPlacedMonData(u8 boxId, u8 position); -static void PurgeMonOrBoxMon(u8 boxId, u8 position); -static void SetCursorMonData(void *pokemon, u8 mode); +static void sub_80CD444(u8, u8, u16 *, u16 *); +static void SetShiftedMonData(u8, u8); +static void SetMovedMonData(u8, u8); +static void SetPlacedMonData(u8, u8); +static void PurgeMonOrBoxMon(u8, u8); +static void SetCursorMonData(void *, u8); static bool32 AtLeastThreeUsableMons(void); static u8 InBoxInput_Normal(void); static u8 InBoxInput_MovingMultiple(void); @@ -705,47 +715,49 @@ static bool8 sub_80D03B0(void); static bool8 sub_80D0420(void); static bool8 sub_80D04A0(void); static bool8 sub_80D04C8(void); -static void sub_80D07B0(u8 arg0, u8 arg1); -static void sub_80D0834(u8 arg0, u8 arg1); +static void sub_80D07B0(u8, u8); +static void sub_80D0834(u8, u8); static void sub_80D0B5C(void); static void sub_80D062C(void); -static void sub_80D0884(u16 arg0, u16 arg1, u16 arg2); +static void sub_80D0884(u16, u16, u16); static void sub_80D08CC(void); static void sub_80D09A4(void); static void sub_80D0A1C(void); static void sub_80D0AAC(void); static u8 sub_80D0894(void); -static void sub_80D0778(u8 arg0, u8 arg1, u8 arg2); -static void sub_80D0708(u8 arg0, u8 arg1, u8 arg2); -static void sub_80D06D0(u8 arg0, u8 arg1, u8 arg2); -static void sub_80D0740(u8 arg0, u8 arg1, u8 arg2); -static void sub_80D27AC(u8 id, u16 arg1, u16 arg2, u16 arg3, u16 arg4); -static void sub_80D27F4(u8 id, u8 arg1, s8 arg2); -static void sub_80D2644(u8 id, u8 bg, const void *arg2, u16 arg3, u16 arg4); -static void sub_80D2770(u8 id, u16 arg1, u16 arg2); -static void sub_80D259C(u8 count); +static void sub_80D0778(u8, u8, u8); +static void sub_80D0708(u8, u8, u8); +static void sub_80D06D0(u8, u8, u8); +static void sub_80D0740(u8, u8, u8); +static void sub_80D27AC(u8, u16, u16, u16, u16); +static void sub_80D27F4(u8, u8, s8); +static void sub_80D2644(u8, u8, const void *, u16, u16); +static void sub_80D2770(u8, u16, u16); +static void sub_80D259C(u8); static void sub_80D25F0(void); -static void sub_80D2918(u8 id); -static void sub_80D2960(u8 id); -static void sub_80D29F8(u8 id); -static void sub_80D2A90(struct UnkStruct_2000020 *arg0, struct UnkStruct_2000028 *arg1, u32 arg2); +static void sub_80D2918(u8); +static void sub_80D2960(u8); +static void sub_80D29F8(u8); +static void sub_80D2A90(struct UnkStruct_2000020 *, struct UnkStruct_2000028 *, u32); static void sub_80D2AA4(void); -static void sub_80D2B88(struct UnkStruct_2000028 *unkStruct); -static void sub_80D2C1C(struct UnkStruct_2000028 *unkStruct); +static void sub_80D2B88(struct UnkStruct_2000028 *); +static void sub_80D2C1C(struct UnkStruct_2000028 *); static u8 GetBoxWallpaper(u8); static void SetBoxWallpaper(u8, u8); -// static const rom data -static const struct PSS_MenuStringPtrs gUnknown_085716C0[] = +struct { + const u8 *text; + const u8 *desc; +} static const sMainMenuTexts[OPTIONS_COUNT] = { - {gText_WithdrawPokemon, gText_WithdrawMonDescription}, - {gText_DepositPokemon, gText_DepositMonDescription}, - {gText_MovePokemon, gText_MoveMonDescription}, - {gText_MoveItems, gText_MoveItemsDescription}, - {gText_SeeYa, gText_SeeYaDescription} + [OPTION_WITHDRAW] = {gText_WithdrawPokemon, gText_WithdrawMonDescription}, + [OPTION_DEPOSIT] = {gText_DepositPokemon, gText_DepositMonDescription}, + [OPTION_MOVE_MONS] = {gText_MovePokemon, gText_MoveMonDescription}, + [OPTION_MOVE_ITEMS] = {gText_MoveItems, gText_MoveItemsDescription}, + [OPTION_EXIT] = {gText_SeeYa, gText_SeeYaDescription} }; -static const struct WindowTemplate gUnknown_085716E8 = +static const struct WindowTemplate sWindowTemplate_MainMenu = { .bg = 0, .tilemapLeft = 1, @@ -756,55 +768,56 @@ static const struct WindowTemplate gUnknown_085716E8 = .baseBlock = 0x1, }; -static const union AnimCmd sSpriteAnim_85716F0[] = +static const union AnimCmd sAnim_ChooseBoxMenu_TopLeft[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_85716F8[] = +static const union AnimCmd sAnim_ChooseBoxMenu_BottomLeft[] = { ANIMCMD_FRAME(4, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571700[] = +static const union AnimCmd sAnim_ChooseBoxMenu_TopRight[] = { ANIMCMD_FRAME(6, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571708[] = +static const union AnimCmd sAnim_ChooseBoxMenu_BottomRight[] = { ANIMCMD_FRAME(10, 5), ANIMCMD_END }; -static const union AnimCmd *const sSpriteAnimTable_8571710[] = +static const union AnimCmd *const sAnims_ChooseBoxMenu[] = { - sSpriteAnim_85716F0, - sSpriteAnim_85716F8, - sSpriteAnim_8571700, - sSpriteAnim_8571708 + sAnim_ChooseBoxMenu_TopLeft, + sAnim_ChooseBoxMenu_BottomLeft, + sAnim_ChooseBoxMenu_TopRight, + sAnim_ChooseBoxMenu_BottomRight }; -static const union AffineAnimCmd sSpriteAffineAnim_8571720[] = +static const union AffineAnimCmd sAffineAnim_ChooseBoxMenu[] = { AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_8571730[] = +// Unused +static const union AffineAnimCmd *const sAffineAnims_ChooseBoxMenu[] = { - sSpriteAffineAnim_8571720 + sAffineAnim_ChooseBoxMenu }; -static const u8 sBoxInfoTextColors[] = {TEXT_COLOR_RED, TEXT_DYNAMIC_COLOR_6, TEXT_DYNAMIC_COLOR_5}; +static const u8 sChooseBoxMenu_TextColors[] = {TEXT_COLOR_RED, TEXT_DYNAMIC_COLOR_6, TEXT_DYNAMIC_COLOR_5}; static const u8 sText_OutOf30[] = _("/30"); -static const u16 gBoxSelectionPopupPalette[] = INCBIN_U16("graphics/unknown/unknown_57173C.gbapal"); -static const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); -static const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); +static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); +static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); +static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); static const u32 gPokemonStorageScrollingBGTileset[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); static const u32 gPokemonStorageScrollingBGTilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); static const u32 gUnknown_08572280[] = INCBIN_U32("graphics/unknown/unknown_572280.gbapal"); @@ -1381,109 +1394,126 @@ static void sub_80C71A4(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 h Dma3FillLarge16_(0, dest, width); } -static void Task_PokemonStorageSystemPC(u8 taskId) +enum { + STATE_LOAD, + STATE_FADE_IN, + STATE_HANDLE_INPUT, + STATE_ERROR_MSG, + STATE_ENTER_PC, +}; + +#define tState data[0] +#define tSelectedOption data[1] +#define tInput data[2] +#define tNextOption data[3] +#define tWindowId data[15] + +static void Task_PCMainMenu(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { - case 0: - CreatePCMenu(task->data[1], &task->data[15]); + case STATE_LOAD: + CreateMainMenu(task->tSelectedOption, &task->tWindowId); LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gUnknown_085716C0[task->data[1]].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); CopyWindowToVram(0, 3); - CopyWindowToVram(task->data[15], 3); - task->data[0]++; + CopyWindowToVram(task->tWindowId, 3); + task->tState++; break; - case 1: + case STATE_FADE_IN: if (IsWeatherNotFadingIn()) - { - task->data[0]++; - } + task->tState++; break; - case 2: - task->data[2] = Menu_ProcessInput(); - switch(task->data[2]) + case STATE_HANDLE_INPUT: + task->tInput = Menu_ProcessInput(); + switch(task->tInput) { case MENU_NOTHING_CHOSEN: - task->data[3] = task->data[1]; - if (JOY_NEW(DPAD_UP) && --task->data[3] < 0) - task->data[3] = 4; + task->tNextOption = task->tSelectedOption; + if (JOY_NEW(DPAD_UP) && --task->tNextOption < 0) + task->tNextOption = OPTIONS_COUNT - 1; + if (JOY_NEW(DPAD_DOWN) && ++task->tNextOption > OPTIONS_COUNT - 1) + task->tNextOption = 0; - if (JOY_NEW(DPAD_DOWN) && ++task->data[3] > 4) - task->data[3] = 0; - if (task->data[1] != task->data[3]) + if (task->tSelectedOption != task->tNextOption) { - task->data[1] = task->data[3]; + task->tSelectedOption = task->tNextOption; FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gUnknown_085716C0[task->data[1]].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); } break; case MENU_B_PRESSED: - case 4: - ClearStdWindowAndFrame(task->data[15], TRUE); + case OPTION_EXIT: + ClearStdWindowAndFrame(task->tWindowId, TRUE); ScriptContext2_Disable(); EnableBothScriptContexts(); - RemoveWindow(task->data[15]); + RemoveWindow(task->tWindowId); DestroyTask(taskId); break; default: - if (task->data[2] == 0 && CountPartyMons() == PARTY_SIZE) + if (task->tInput == OPTION_WITHDRAW && CountPartyMons() == PARTY_SIZE) { + // Can't withdraw FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, 1, gText_PartyFull, 0, NULL, 2, 1, 3); - task->data[0] = 3; + task->tState = STATE_ERROR_MSG; } - else if (task->data[2] == 1 && CountPartyMons() == 1) + else if (task->tInput == OPTION_DEPOSIT && CountPartyMons() == 1) { + // Can't deposit FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, 1, gText_JustOnePkmn, 0, NULL, 2, 1, 3); - task->data[0] = 3; + task->tState = STATE_ERROR_MSG; } else { + // Enter PC FadeScreen(FADE_TO_BLACK, 0); - task->data[0] = 4; + task->tState = STATE_ENTER_PC; } break; } break; - case 3: + case STATE_ERROR_MSG: + // Printed "can't do PC option message" + // Wait for new input after message if (JOY_NEW(A_BUTTON | B_BUTTON)) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gUnknown_085716C0[task->data[1]].desc, 0, NULL, 2, 1, 3); - task->data[0] = 2; + AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_UP)) { - if (--task->data[1] < 0) - task->data[1] = 4; + if (--task->tSelectedOption < 0) + task->tSelectedOption = OPTIONS_COUNT - 1; Menu_MoveCursor(-1); - task->data[1] = Menu_GetCursorPos(); + task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gUnknown_085716C0[task->data[1]].desc, 0, NULL, 2, 1, 3); - task->data[0] = 2; + AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_DOWN)) { - if (++task->data[1] > 3) - task->data[1] = 0; + if (++task->tSelectedOption >= OPTIONS_COUNT - 1) + task->tSelectedOption = 0; Menu_MoveCursor(1); - task->data[1] = Menu_GetCursorPos(); + task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gUnknown_085716C0[task->data[1]].desc, 0, NULL, 2, 1, 3); - task->data[0] = 2; + AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + task->tState = STATE_HANDLE_INPUT; } break; - case 4: + case STATE_ENTER_PC: if (!gPaletteFade.active) { CleanupOverworldWindowsAndTilemaps(); - Cb2_EnterPSS(task->data[2]); - RemoveWindow(task->data[15]); + Cb2_EnterPSS(task->tInput); + RemoveWindow(task->tWindowId); DestroyTask(taskId); } break; @@ -1492,9 +1522,9 @@ static void Task_PokemonStorageSystemPC(u8 taskId) void ShowPokemonStorageSystemPC(void) { - u8 taskId = CreateTask(Task_PokemonStorageSystemPC, 80); - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 0; + u8 taskId = CreateTask(Task_PCMainMenu, 80); + gTasks[taskId].tState = 0; + gTasks[taskId].tSelectedOption = 0; ScriptContext2_Enable(); } @@ -1504,24 +1534,30 @@ static void FieldCb_ReturnToPcMenu(void) MainCallback vblankCb = gMain.vblankCallback; SetVBlankCallback(NULL); - taskId = CreateTask(Task_PokemonStorageSystemPC, 80); - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = sPreviousBoxOption; - Task_PokemonStorageSystemPC(taskId); + taskId = CreateTask(Task_PCMainMenu, 80); + gTasks[taskId].tState = 0; + gTasks[taskId].tSelectedOption = sPreviousBoxOption; + Task_PCMainMenu(taskId); SetVBlankCallback(vblankCb); FadeInFromBlack(); } -static void CreatePCMenu(u8 whichMenu, s16 *windowIdPtr) +#undef tState +#undef tSelectedOption +#undef tInput +#undef tNextOption +#undef tWindowId + +static void CreateMainMenu(u8 whichMenu, s16 *windowIdPtr) { s16 windowId; - struct WindowTemplate winTemplate = gUnknown_085716E8; - winTemplate.width = GetMaxWidthInMenuTable((void *)gUnknown_085716C0, ARRAY_COUNT(gUnknown_085716C0)); - windowId = AddWindow(&winTemplate); + struct WindowTemplate template = sWindowTemplate_MainMenu; + template.width = GetMaxWidthInMenuTable((void *)sMainMenuTexts, OPTIONS_COUNT); + windowId = AddWindow(&template); DrawStdWindowFrame(windowId, FALSE); - PrintMenuTable(windowId, ARRAY_COUNT(gUnknown_085716C0), (void *)gUnknown_085716C0); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, ARRAY_COUNT(gUnknown_085716C0), whichMenu); + PrintMenuTable(windowId, OPTIONS_COUNT, (void *)sMainMenuTexts); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, OPTIONS_COUNT, whichMenu); *windowIdPtr = windowId; } @@ -1532,6 +1568,7 @@ static void Cb2_ExitPSS(void) SetMainCallback2(CB2_ReturnToField); } +// Unused static s16 StorageSystemGetNextMonIndex(struct BoxPokemon *box, s8 startIdx, u8 stopIdx, u8 mode) { s16 i; @@ -1585,74 +1622,75 @@ void ResetPokemonStorageSystem(void) ResetWaldaWallpaper(); } -static void sub_80C77E8(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3, bool32 loadPal) +static void LoadChooseBoxMenuGfx(struct ChooseBoxMenu *menu, u16 tileTag, u16 palTag, u8 subpriority, bool32 loadPal) { struct SpritePalette palette = { - gBoxSelectionPopupPalette, palTag + sChooseBoxMenu_Pal, palTag }; struct SpriteSheet sheets[] = { - {gBoxSelectionPopupCenterTiles, 0x800, tileTag}, - {gBoxSelectionPopupSidesTiles, 0x180, tileTag + 1}, + {sChooseBoxMenuCenter_Gfx, 0x800, tileTag}, + {sChooseBoxMenuSides_Gfx, 0x180, tileTag + 1}, {} }; - if (loadPal) + if (loadPal) // Always false LoadSpritePalette(&palette); LoadSpriteSheets(sheets); - gUnknown_02039D04 = a0; - a0->unk_0240 = tileTag; - a0->unk_0242 = palTag; - a0->unk_0246 = a3; - a0->unk_023c = loadPal; + sChooseBoxMenu = menu; + menu->tileTag = tileTag; + menu->paletteTag = palTag; + menu->subpriority = subpriority; + menu->loadedPalette = loadPal; } -static void sub_80C7890(void) +static void FreeChooseBoxMenu(void) { - if (gUnknown_02039D04->unk_023c) - FreeSpritePaletteByTag(gUnknown_02039D04->unk_0242); - FreeSpriteTilesByTag(gUnknown_02039D04->unk_0240); - FreeSpriteTilesByTag(gUnknown_02039D04->unk_0240 + 1); + if (sChooseBoxMenu->loadedPalette) + FreeSpritePaletteByTag(sChooseBoxMenu->paletteTag); + FreeSpriteTilesByTag(sChooseBoxMenu->tileTag); + FreeSpriteTilesByTag(sChooseBoxMenu->tileTag + 1); } -static void sub_80C78D4(u8 curBox) +static void CreateChooseBoxMenuSprites(u8 curBox) { - sub_80C7958(curBox); + ChooseBoxMenu_CreateSprites(curBox); } -static void sub_80C78E4(void) +static void DestroyChooseBoxMenuSprites(void) { - sub_80C7B14(); + ChooseBoxMenu_DestroySprites(); } -static u8 HandleBoxChooseSelectionInput(void) +// For the popout window when choosing a box to deposit in or jump to +static u8 HandleChooseBoxMenuInput(void) { if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - return 201; + return BOXID_CANCELED; } if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - return gUnknown_02039D04->curBox; + return sChooseBoxMenu->curBox; } if (JOY_NEW(DPAD_LEFT)) { PlaySE(SE_SELECT); - sub_80C7BB4(); + ChooseBoxMenu_MoveLeft(); } else if (JOY_NEW(DPAD_RIGHT)) { PlaySE(SE_SELECT); - sub_80C7B80(); + ChooseBoxMenu_MoveRight(); } - return 200; + return BOXID_NONE_CHOSEN; } -static void sub_80C7958(u8 curBox) +static void ChooseBoxMenu_CreateSprites(u8 curBox) { u16 i; u8 spriteId; @@ -1664,116 +1702,118 @@ static void sub_80C7958(u8 curBox) 0, 0, &oamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy }; - gUnknown_02039D04->curBox = curBox; - template.tileTag = gUnknown_02039D04->unk_0240; - template.paletteTag = gUnknown_02039D04->unk_0242; + sChooseBoxMenu->curBox = curBox; + template.tileTag = sChooseBoxMenu->tileTag; + template.paletteTag = sChooseBoxMenu->paletteTag; spriteId = CreateSprite(&template, 160, 96, 0); - gUnknown_02039D04->unk_0000 = gSprites + spriteId; + sChooseBoxMenu->menuSprite = &gSprites[spriteId]; oamData.shape = SPRITE_SHAPE(8x32); oamData.size = SPRITE_SIZE(8x32); - template.tileTag = gUnknown_02039D04->unk_0240 + 1; - template.anims = sSpriteAnimTable_8571710; - for (i = 0; i < 4; i++) - { - u16 r5; - spriteId = CreateSprite(&template, 124, 80, gUnknown_02039D04->unk_0246); - gUnknown_02039D04->unk_0004[i] = gSprites + spriteId; - r5 = 0; + template.tileTag = sChooseBoxMenu->tileTag + 1; + template.anims = sAnims_ChooseBoxMenu; + for (i = 0; i < ARRAY_COUNT(sChooseBoxMenu->menuSideSprites); i++) + { + u16 anim; + spriteId = CreateSprite(&template, 124, 80, sChooseBoxMenu->subpriority); + sChooseBoxMenu->menuSideSprites[i] = &gSprites[spriteId]; + anim = 0; if (i & 2) { - gUnknown_02039D04->unk_0004[i]->pos1.x = 196; - r5 = 2; + sChooseBoxMenu->menuSideSprites[i]->pos1.x = 196; + anim = 2; } if (i & 1) { - gUnknown_02039D04->unk_0004[i]->pos1.y = 112; - gUnknown_02039D04->unk_0004[i]->oam.size = 0; - r5++; + sChooseBoxMenu->menuSideSprites[i]->pos1.y = 112; + sChooseBoxMenu->menuSideSprites[i]->oam.size = 0; + anim++; } - StartSpriteAnim(gUnknown_02039D04->unk_0004[i], r5); + StartSpriteAnim(sChooseBoxMenu->menuSideSprites[i], anim); } - for (i = 0; i < 2; i++) + for (i = 0; i < ARRAY_COUNT(sChooseBoxMenu->arrowSprites); i++) { - gUnknown_02039D04->arrowSprites[i] = CreateJumpBoxArrows(72 * i + 124, 88, i, 0, gUnknown_02039D04->unk_0246); - if (gUnknown_02039D04->arrowSprites[i]) + sChooseBoxMenu->arrowSprites[i] = CreateChooseBoxArrows(72 * i + 124, 88, i, 0, sChooseBoxMenu->subpriority); + if (sChooseBoxMenu->arrowSprites[i]) { - gUnknown_02039D04->arrowSprites[i]->data[0] = (i == 0 ? -1 : 1); - gUnknown_02039D04->arrowSprites[i]->callback = SpriteCB_JumpBoxArrow; + sChooseBoxMenu->arrowSprites[i]->data[0] = (i == 0 ? -1 : 1); + sChooseBoxMenu->arrowSprites[i]->callback = SpriteCB_ChooseBoxArrow; } } - sub_80C7BE4(); + ChooseBoxMenu_PrintInfo(); } -static void sub_80C7B14(void) +static void ChooseBoxMenu_DestroySprites(void) { u16 i; - if (gUnknown_02039D04->unk_0000) + if (sChooseBoxMenu->menuSprite) { - DestroySprite(gUnknown_02039D04->unk_0000); - gUnknown_02039D04->unk_0000 = NULL; + DestroySprite(sChooseBoxMenu->menuSprite); + sChooseBoxMenu->menuSprite = NULL; } - for (i = 0; i < 4; i++) + for (i = 0; i < ARRAY_COUNT(sChooseBoxMenu->menuSideSprites); i++) { - if (gUnknown_02039D04->unk_0004[i]) + if (sChooseBoxMenu->menuSideSprites[i]) { - DestroySprite(gUnknown_02039D04->unk_0004[i]); - gUnknown_02039D04->unk_0004[i] = NULL; + DestroySprite(sChooseBoxMenu->menuSideSprites[i]); + sChooseBoxMenu->menuSideSprites[i] = NULL; } } - for (i = 0; i < 2; i++) + for (i = 0; i < ARRAY_COUNT(sChooseBoxMenu->arrowSprites); i++) { - if (gUnknown_02039D04->arrowSprites[i]) - DestroySprite(gUnknown_02039D04->arrowSprites[i]); + if (sChooseBoxMenu->arrowSprites[i]) + DestroySprite(sChooseBoxMenu->arrowSprites[i]); } } -static void sub_80C7B80(void) +static void ChooseBoxMenu_MoveRight(void) { - if (++gUnknown_02039D04->curBox >= TOTAL_BOXES_COUNT) - gUnknown_02039D04->curBox = 0; - sub_80C7BE4(); + if (++sChooseBoxMenu->curBox >= TOTAL_BOXES_COUNT) + sChooseBoxMenu->curBox = 0; + ChooseBoxMenu_PrintInfo(); } -static void sub_80C7BB4(void) +static void ChooseBoxMenu_MoveLeft(void) { - gUnknown_02039D04->curBox = (gUnknown_02039D04->curBox == 0 ? TOTAL_BOXES_COUNT - 1 : gUnknown_02039D04->curBox - 1); - sub_80C7BE4(); + sChooseBoxMenu->curBox = (sChooseBoxMenu->curBox == 0 ? TOTAL_BOXES_COUNT - 1 : sChooseBoxMenu->curBox - 1); + ChooseBoxMenu_PrintInfo(); } -static void sub_80C7BE4(void) +static void ChooseBoxMenu_PrintInfo(void) { u8 numBoxMonsText[16]; - struct WindowTemplate winTemplate; + struct WindowTemplate template; u8 windowId; - u8 *boxName = GetBoxNamePtr(gUnknown_02039D04->curBox); - u8 nPokemonInBox = CountMonsInBox(gUnknown_02039D04->curBox); + u8 *boxName = GetBoxNamePtr(sChooseBoxMenu->curBox); + u8 numInBox = CountMonsInBox(sChooseBoxMenu->curBox); u32 winTileData; s32 center; - memset(&winTemplate, 0, sizeof(winTemplate)); - winTemplate.width = 8; - winTemplate.height = 4; + memset(&template, 0, sizeof(template)); + template.width = 8; + template.height = 4; - windowId = AddWindow(&winTemplate); + windowId = AddWindow(&template); FillWindowPixelBuffer(windowId, PIXEL_FILL(4)); + // Print box name center = GetStringCenterAlignXOffset(1, boxName, 64); - AddTextPrinterParameterized3(windowId, 1, center, 1, sBoxInfoTextColors, TEXT_SPEED_FF, boxName); + AddTextPrinterParameterized3(windowId, 1, center, 1, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, boxName); - ConvertIntToDecimalStringN(numBoxMonsText, nPokemonInBox, STR_CONV_MODE_RIGHT_ALIGN, 2); + // Print #/30 for number of Pokémon in the box + ConvertIntToDecimalStringN(numBoxMonsText, numInBox, STR_CONV_MODE_RIGHT_ALIGN, 2); StringAppend(numBoxMonsText, sText_OutOf30); center = GetStringCenterAlignXOffset(1, numBoxMonsText, 64); - AddTextPrinterParameterized3(windowId, 1, center, 17, sBoxInfoTextColors, TEXT_SPEED_FF, numBoxMonsText); + AddTextPrinterParameterized3(windowId, 1, center, 17, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, numBoxMonsText); winTileData = GetWindowAttribute(windowId, WINDOW_TILE_DATA); - CpuCopy32((void *)winTileData, (void *)OBJ_VRAM0 + 0x100 + (GetSpriteTileStartByTag(gUnknown_02039D04->unk_0240) * 32), 0x400); + CpuCopy32((void *)winTileData, (void *)OBJ_VRAM0 + 0x100 + (GetSpriteTileStartByTag(sChooseBoxMenu->tileTag) * 32), 0x400); RemoveWindow(windowId); } -static void SpriteCB_JumpBoxArrow(struct Sprite *sprite) +static void SpriteCB_ChooseBoxArrow(struct Sprite *sprite) { if (++sprite->data[1] > 3) { @@ -1877,13 +1917,13 @@ static void sub_80C7E98(void) static void sub_80C7F1C(void) { sub_80CDC0C(); - sInPartyMenu = (sPSSData->boxOption == BOX_OPTION_DEPOSIT); - gUnknown_02039D0E = 0; + sInPartyMenu = (sPSSData->boxOption == OPTION_DEPOSIT); + sDepositBoxId = 0; } static void SetMonIconTransparency(void) { - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(7, 11)); @@ -1973,7 +2013,7 @@ static void Cb_InitPSS(u8 taskId) if (IsInitBoxActive()) return; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { sPSSData->markMenu.baseTileTag = TAG_TILE_D; sPSSData->markMenu.basePaletteTag = TAG_PAL_DACE; @@ -1990,12 +2030,12 @@ static void Cb_InitPSS(u8 taskId) SetMonIconTransparency(); if (!sPSSData->isReshowingPSS) { - BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); SetPSSCallback(Cb_ShowPSS); } else { - BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); SetPSSCallback(Cb_ReshowPSS); } SetVBlankCallback(VblankCb_PSS); @@ -2066,12 +2106,12 @@ static void Cb_MainPSS(u8 taskId) case 0: switch (HandleInput()) { - case 1: + case INPUT_1: PlaySE(SE_SELECT); sPSSData->state = 1; break; - case 5: - if (sPSSData->boxOption != BOX_OPTION_MOVE_MONS && sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + case INPUT_5: + if (sPSSData->boxOption != OPTION_MOVE_MONS && sPSSData->boxOption != OPTION_MOVE_ITEMS) { PrintMessage(MSG_WHICH_ONE_WILL_TAKE); sPSSData->state = 3; @@ -2082,38 +2122,38 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_ShowPartyPokemon); } break; - case 6: - if (sPSSData->boxOption == BOX_OPTION_MOVE_MONS) + case INPUT_6: + if (sPSSData->boxOption == OPTION_MOVE_MONS) { if (IsMonBeingMoved() && ItemIsMail(sPSSData->cursorMonItem)) sPSSData->state = 5; else SetPSSCallback(Cb_HidePartyPokemon); } - else if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + else if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { SetPSSCallback(Cb_HidePartyPokemon); } break; - case 4: + case INPUT_4: SetPSSCallback(Cb_OnCloseBoxPressed); break; - case 19: + case INPUT_19: SetPSSCallback(Cb_OnBPressed); break; - case 7: + case INPUT_7: PlaySE(SE_SELECT); SetPSSCallback(Cb_HandleBoxOptions); break; - case 8: + case INPUT_8: SetPSSCallback(Cb_OnSelectedMon); break; - case 9: + case INPUT_9: PlaySE(SE_SELECT); sPSSData->newCurrBoxId = StorageGetCurrentBox() + 1; if (sPSSData->newCurrBoxId >= TOTAL_BOXES_COUNT) sPSSData->newCurrBoxId = 0; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { SetUpScrollToBox(sPSSData->newCurrBoxId); sPSSData->state = 2; @@ -2124,12 +2164,12 @@ static void Cb_MainPSS(u8 taskId) sPSSData->state = 10; } break; - case 10: + case INPUT_10: PlaySE(SE_SELECT); sPSSData->newCurrBoxId = StorageGetCurrentBox() - 1; if (sPSSData->newCurrBoxId < 0) sPSSData->newCurrBoxId = TOTAL_BOXES_COUNT - 1; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { SetUpScrollToBox(sPSSData->newCurrBoxId); sPSSData->state = 2; @@ -2140,7 +2180,7 @@ static void Cb_MainPSS(u8 taskId) sPSSData->state = 10; } break; - case 11: + case INPUT_11: if (!CanMovePartyMon()) { if (ItemIsMail(sPSSData->cursorMonItem)) @@ -2158,7 +2198,7 @@ static void Cb_MainPSS(u8 taskId) sPSSData->state = 4; } break; - case 13: + case INPUT_13: if (CanMovePartyMon()) { sPSSData->state = 4; @@ -2169,7 +2209,7 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_MoveMon); } break; - case 14: + case INPUT_14: if (!CanShiftMon()) { sPSSData->state = 4; @@ -2180,55 +2220,55 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_ShiftMon); } break; - case 12: + case INPUT_12: PlaySE(SE_SELECT); SetPSSCallback(Cb_WithdrawMon); break; - case 15: + case INPUT_15: PlaySE(SE_SELECT); SetPSSCallback(Cb_PlaceMon); break; - case 16: + case INPUT_16: PlaySE(SE_SELECT); SetPSSCallback(Cb_TakeItemForMoving); break; - case 17: + case INPUT_17: PlaySE(SE_SELECT); SetPSSCallback(Cb_GiveMovingItemToMon); break; - case 18: + case INPUT_18: PlaySE(SE_SELECT); SetPSSCallback(Cb_SwitchSelectedItem); break; - case 20: + case INPUT_20: PlaySE(SE_SELECT); sub_80D01D0(0); sPSSData->state = 7; break; - case 22: + case INPUT_22: sub_80D01D0(1); sPSSData->state = 8; break; - case 21: + case INPUT_21: PlaySE(SE_SELECT); sub_80D01D0(2); sPSSData->state = 9; break; - case 23: + case INPUT_23: sub_80D01D0(3); sPSSData->state = 7; break; - case 25: + case INPUT_25: PlaySE(SE_SELECT); sub_80D01D0(4); sPSSData->state = 9; break; - case 26: + case INPUT_26: PlaySE(SE_SELECT); sub_80D01D0(5); sPSSData->state = 7; break; - case 24: + case INPUT_24: PlaySE(SE_FAILURE); break; } @@ -2256,7 +2296,7 @@ static void Cb_MainPSS(u8 taskId) BoxSetMosaic(); } - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { sub_80CFECC(); sPSSData->state = 11; @@ -2371,7 +2411,7 @@ static void Cb_OnSelectedMon(u8 taskId) if (!sub_80CA2B8()) { PlaySE(SE_SELECT); - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) PrintMessage(MSG_IS_SELECTED); else if (IsActiveItemMoving() || sPSSData->cursorMonItem != 0) PrintMessage(MSG_IS_SELECTED2); @@ -2638,31 +2678,29 @@ static void Cb_DepositMenu(u8 taskId) { case 0: PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); - sub_80C77E8(&sPSSData->field_1E5C, TAG_TILE_A, TAG_PAL_DAC7, 3, FALSE); - sub_80C78D4(gUnknown_02039D0E); + LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, TAG_PAL_DAC7, 3, FALSE); + CreateChooseBoxMenuSprites(sDepositBoxId); sPSSData->state++; break; case 1: - boxId = HandleBoxChooseSelectionInput(); - if (boxId == 200) - { - // no box chosen yet - } - else if (boxId == 201) + boxId = HandleChooseBoxMenuInput(); + switch (boxId) { + case BOXID_NONE_CHOSEN: + break; + case BOXID_CANCELED: ClearBottomWindow(); - sub_80C78E4(); - sub_80C7890(); + DestroyChooseBoxMenuSprites(); + FreeChooseBoxMenu(); SetPSSCallback(Cb_MainPSS); - } - else - { + break; + default: if (TryStorePartyMonInBox(boxId)) { - gUnknown_02039D0E = boxId; + sDepositBoxId = boxId; ClearBottomWindow(); - sub_80C78E4(); - sub_80C7890(); + DestroyChooseBoxMenuSprites(); + FreeChooseBoxMenu(); sPSSData->state = 2; } else @@ -2670,6 +2708,7 @@ static void Cb_DepositMenu(u8 taskId) PrintMessage(MSG_BOX_IS_FULL); sPSSData->state = 4; } + break; } break; case 2: @@ -3292,21 +3331,21 @@ static void Cb_JumpBox(u8 taskId) { case 0: PrintMessage(MSG_JUMP_TO_WHICH_BOX); - sub_80C77E8(&sPSSData->field_1E5C, TAG_TILE_A, TAG_PAL_DAC7, 3, FALSE); - sub_80C78D4(StorageGetCurrentBox()); + LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, TAG_PAL_DAC7, 3, FALSE); + CreateChooseBoxMenuSprites(StorageGetCurrentBox()); sPSSData->state++; break; case 1: - sPSSData->newCurrBoxId = HandleBoxChooseSelectionInput(); + sPSSData->newCurrBoxId = HandleChooseBoxMenuInput(); switch (sPSSData->newCurrBoxId) { - case 200: + case BOXID_NONE_CHOSEN: break; default: ClearBottomWindow(); - sub_80C78E4(); - sub_80C7890(); - if (sPSSData->newCurrBoxId == 201 || sPSSData->newCurrBoxId == StorageGetCurrentBox()) + DestroyChooseBoxMenuSprites(); + FreeChooseBoxMenu(); + if (sPSSData->newCurrBoxId == BOXID_CANCELED || sPSSData->newCurrBoxId == StorageGetCurrentBox()) { AnimateBoxScrollArrows(TRUE); SetPSSCallback(Cb_MainPSS); @@ -3519,7 +3558,7 @@ static void Cb_ChangeScreen(u8 taskId) u8 mode, monIndex, maxMonIndex; u8 screenChangeType = sPSSData->screenChangeType; - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS && IsActiveItemMoving() == TRUE) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS && IsActiveItemMoving() == TRUE) sMovingItemId = GetMovingItem(); else sMovingItemId = ITEM_NONE; @@ -3535,9 +3574,9 @@ static void Cb_ChangeScreen(u8 taskId) boxMons = sPSSData->field_218C.box; monIndex = sPSSData->field_2187; maxMonIndex = sPSSData->field_2186; - mode = sPSSData->pokemonSummaryScreenMode; + mode = sPSSData->summaryScreenMode; FreePSSData(); - if (mode == PSS_MODE_NORMAL && boxMons == &gUnknown_02039D14.box) + if (mode == SUMMARY_MODE_NORMAL && boxMons == &gUnknown_02039D14.box) ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); else ShowPokemonSummaryScreen(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); @@ -3626,7 +3665,7 @@ static void sub_80CA0D8(void) LoadPalette(gUnknown_085723DC, 0, 0x20); LoadPalette(gUnknown_085723FC, 0x20, 0x20); LoadPalette(gUnknown_085726F4, 0xF0, 0x20); - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) LoadPalette(gUnknown_0857241C, 0x30, 0x20); else LoadPalette(gUnknown_0857243C, 0x30, 0x20); @@ -3765,7 +3804,7 @@ static void LoadCursorMonGfx(u16 species, u32 pid) static void PrintCursorMonInfo(void) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { AddTextPrinterParameterized(0, 1, sPSSData->cursorMonNickText, 6, 0, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(0, 2, sPSSData->cursorMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); @@ -3876,7 +3915,7 @@ static void SetUpHidePartyMenu(void) sPSSData->field_2C0 = 0; sPSSData->field_2C2 = 22; sPSSData->field_2C5 = 0; - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) sub_80D11CC(); } @@ -4224,7 +4263,7 @@ static void InitBoxMonSprites(u8 boxId) } // If in item mode, set all Pokémon icons with no item to be transparent - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { for (boxPosition = 0; boxPosition < IN_BOX_COUNT; boxPosition++) { @@ -4245,7 +4284,7 @@ static void sub_80CB140(u8 boxPosition) u32 personality = GetCurrentBoxMonData(boxPosition, MON_DATA_PERSONALITY); sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(species, personality, x, y, 2, 19 - (boxPosition % IN_BOX_ROWS)); - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; } } @@ -4321,7 +4360,7 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) u8 count = 0; u8 boxPosition = row; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { for (i = 0; i < IN_BOX_COLUMNS; i++) { @@ -4501,7 +4540,7 @@ static void CreatePartyMonsSprites(bool8 arg0) } } - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { for (i = 0; i < PARTY_SIZE; i++) { @@ -4945,7 +4984,7 @@ static void SetUpScrollToBox(u8 boxId) { s8 direction = DetermineBoxScrollDirection(boxId); - sPSSData->wallpaperScrollSpeed = (direction > 0) ? 6 : -6; + sPSSData->scrollSpeed = (direction > 0) ? 6 : -6; sPSSData->field_2D3 = (direction > 0) ? 1 : 2; sPSSData->field_2D0 = 32; sPSSData->scrollToBoxIdUnused = boxId; @@ -4982,7 +5021,7 @@ static bool8 ScrollToBox(void) var = sub_80CB584(); if (sPSSData->field_2D0 != 0) { - sPSSData->bg2_X += sPSSData->wallpaperScrollSpeed; + sPSSData->bg2_X += sPSSData->scrollSpeed; if (--sPSSData->field_2D0 != 0) return TRUE; CycleBoxTitleSprites(); @@ -5114,10 +5153,8 @@ static bool32 WaitForWallpaperGfxLoad(void) return FALSE; if (sPSSData->wallpaperTiles != NULL) - { - Free(sPSSData->wallpaperTiles); - sPSSData->wallpaperTiles = NULL; - } + FREE_AND_SET_NULL(sPSSData->wallpaperTiles); + return TRUE; } @@ -5431,7 +5468,7 @@ static void SpriteCB_Arrow(struct Sprite *sprite) sprite->sState = 3; break; case 3: - sprite->pos1.x -= sPSSData->wallpaperScrollSpeed; + sprite->pos1.x -= sPSSData->scrollSpeed; if (sprite->pos1.x <= 72 || sprite->pos1.x >= DISPLAY_WIDTH + 8) sprite->invisible = TRUE; if (--sprite->sTimer == 0) @@ -5442,7 +5479,7 @@ static void SpriteCB_Arrow(struct Sprite *sprite) } break; case 4: - sprite->pos1.x -= sPSSData->wallpaperScrollSpeed; + sprite->pos1.x -= sPSSData->scrollSpeed; break; } } @@ -5450,7 +5487,8 @@ static void SpriteCB_Arrow(struct Sprite *sprite) #undef sState #undef sSpeed -static struct Sprite *CreateJumpBoxArrows(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority) +// Arrows for Deposit/Jump Box selection +static struct Sprite *CreateChooseBoxArrows(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority) { u8 spriteId = CreateSprite(&sSpriteTemplate_Arrow, x, y, subpriority); if (spriteId == MAX_SPRITES) @@ -5465,7 +5503,7 @@ static struct Sprite *CreateJumpBoxArrows(u16 x, u16 y, u8 animId, u8 priority, static void sub_80CD36C(void) { - if (sPSSData->boxOption != BOX_OPTION_DEPOSIT) + if (sPSSData->boxOption != OPTION_DEPOSIT) sBoxCursorArea = CURSOR_AREA_IN_BOX; else sBoxCursorArea = CURSOR_AREA_IN_PARTY; @@ -5554,7 +5592,7 @@ static bool8 sub_80CD554(void) if (sPSSData->field_CD0 == 0) { - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return FALSE; else return sub_80D1218(); @@ -5659,7 +5697,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) { sub_80CD6AC(newCursorArea, newCursorPosition); sub_80CD70C(); - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) StartSpriteAnim(sPSSData->field_CB4, 1); @@ -5670,7 +5708,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) StartSpriteAnim(sPSSData->field_CB4, 1); } - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { if (sBoxCursorArea == CURSOR_AREA_IN_BOX) sub_80D0E50(CURSOR_AREA_IN_BOX, sBoxCursorPosition); @@ -5718,7 +5756,7 @@ static void sub_80CDA68(void) { sBoxCursorArea = sPSSData->field_CD4; sBoxCursorPosition = sPSSData->field_CD5; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) StartSpriteAnim(sPSSData->field_CB4, 0); @@ -6331,21 +6369,21 @@ static void sub_80CE7E8(void) sPSSData->field_218C.mon = &gUnknown_02039D14; sPSSData->field_2187 = 0; sPSSData->field_2186 = 0; - sPSSData->pokemonSummaryScreenMode = PSS_MODE_NORMAL; + sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) { sPSSData->field_218C.mon = gPlayerParty; sPSSData->field_2187 = sBoxCursorPosition; sPSSData->field_2186 = CountPartyMons() - 1; - sPSSData->pokemonSummaryScreenMode = PSS_MODE_NORMAL; + sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } else { sPSSData->field_218C.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); sPSSData->field_2187 = sBoxCursorPosition; sPSSData->field_2186 = IN_BOX_COUNT - 1; - sPSSData->pokemonSummaryScreenMode = PSS_MODE_BOX; + sPSSData->summaryScreenMode = SUMMARY_MODE_BOX; } } @@ -6641,7 +6679,7 @@ static u8 InBoxInput_Normal(void) if (JOY_REPEAT(DPAD_UP)) { - retVal = TRUE; + retVal = INPUT_1; if (sBoxCursorPosition >= IN_BOX_ROWS) { cursorPosition -= IN_BOX_ROWS; @@ -6655,7 +6693,7 @@ static u8 InBoxInput_Normal(void) } else if (JOY_REPEAT(DPAD_DOWN)) { - retVal = TRUE; + retVal = INPUT_1; cursorPosition += IN_BOX_ROWS; if (cursorPosition >= IN_BOX_COUNT) { @@ -6669,7 +6707,7 @@ static u8 InBoxInput_Normal(void) } else if (JOY_REPEAT(DPAD_LEFT)) { - retVal = TRUE; + retVal = INPUT_1; if (sBoxCursorPosition % IN_BOX_ROWS != 0) { cursorPosition--; @@ -6683,7 +6721,7 @@ static u8 InBoxInput_Normal(void) } else if (JOY_REPEAT(DPAD_RIGHT)) { - retVal = TRUE; + retVal = INPUT_1; if ((sBoxCursorPosition + 1) % IN_BOX_ROWS != 0) { cursorPosition++; @@ -6697,7 +6735,7 @@ static u8 InBoxInput_Normal(void) } else if (JOY_NEW(START_BUTTON)) { - retVal = TRUE; + retVal = INPUT_1; cursorArea = CURSOR_AREA_BOX; cursorPosition = 0; break; @@ -6706,55 +6744,55 @@ static u8 InBoxInput_Normal(void) if ((JOY_NEW(A_BUTTON)) && sub_80CFA5C()) { if (!sCanOnlyMove) - return 8; + return INPUT_8; - if (sPSSData->boxOption != BOX_OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) + if (sPSSData->boxOption != OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) { switch (GetMenuItemTextId(0)) { case MENU_STORE: - return 11; + return INPUT_11; case MENU_WITHDRAW: - return 12; + return INPUT_12; case MENU_MOVE: - return 13; + return INPUT_13; case MENU_SHIFT: - return 14; + return INPUT_14; case MENU_PLACE: - return 15; + return INPUT_15; case MENU_TAKE: - return 16; + return INPUT_16; case MENU_GIVE: - return 17; + return INPUT_17; case MENU_SWITCH: - return 18; + return INPUT_18; } } else { sPSSData->inBoxMovingMode = 1; - return 20; + return INPUT_20; } } if (JOY_NEW(B_BUTTON)) - return 19; + return INPUT_19; if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return 10; + return INPUT_10; if (JOY_HELD(R_BUTTON)) - return 9; + return INPUT_9; } if (JOY_NEW(SELECT_BUTTON)) { sub_80CFDC4(); - return 0; + return INPUT_NONE; } - retVal = 0; + retVal = INPUT_NONE; } while (0); @@ -6773,11 +6811,11 @@ static u8 InBoxInput_GrabbingMultiple(void) if (sBoxCursorPosition / IN_BOX_ROWS != 0) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_ROWS); - return 21; + return INPUT_21; } else { - return 24; + return INPUT_24; } } else if (JOY_REPEAT(DPAD_DOWN)) @@ -6785,11 +6823,11 @@ static u8 InBoxInput_GrabbingMultiple(void) if (sBoxCursorPosition + IN_BOX_ROWS < IN_BOX_COUNT) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_ROWS); - return 21; + return INPUT_21; } else { - return 24; + return INPUT_24; } } else if (JOY_REPEAT(DPAD_LEFT)) @@ -6797,11 +6835,11 @@ static u8 InBoxInput_GrabbingMultiple(void) if (sBoxCursorPosition % IN_BOX_ROWS != 0) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - 1); - return 21; + return INPUT_21; } else { - return 24; + return INPUT_24; } } else if (JOY_REPEAT(DPAD_RIGHT)) @@ -6809,16 +6847,16 @@ static u8 InBoxInput_GrabbingMultiple(void) if ((sBoxCursorPosition + 1) % IN_BOX_ROWS != 0) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + 1); - return 21; + return INPUT_21; } else { - return 24; + return INPUT_24; } } else { - return 0; + return INPUT_NONE; } } else @@ -6827,14 +6865,14 @@ static u8 InBoxInput_GrabbingMultiple(void) { sPSSData->inBoxMovingMode = 0; sPSSData->field_CB8->invisible = FALSE; - return 22; + return INPUT_22; } else { sIsMonBeingMoved = (sPSSData->cursorMonSpecies != SPECIES_NONE); sPSSData->inBoxMovingMode = 2; sMovingMonOrigBoxId = StorageGetCurrentBox(); - return 23; + return INPUT_23; } } } @@ -6846,11 +6884,11 @@ static u8 InBoxInput_MovingMultiple(void) if (sub_80D0580(0)) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_ROWS); - return 25; + return INPUT_25; } else { - return 24; + return INPUT_24; } } else if (JOY_REPEAT(DPAD_DOWN)) @@ -6858,11 +6896,11 @@ static u8 InBoxInput_MovingMultiple(void) if (sub_80D0580(1)) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_ROWS); - return 25; + return INPUT_25; } else { - return 24; + return INPUT_24; } } else if (JOY_REPEAT(DPAD_LEFT)) @@ -6870,11 +6908,11 @@ static u8 InBoxInput_MovingMultiple(void) if (sub_80D0580(2)) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - 1); - return 25; + return INPUT_25; } else { - return 10; + return INPUT_10; } } else if (JOY_REPEAT(DPAD_RIGHT)) @@ -6882,11 +6920,11 @@ static u8 InBoxInput_MovingMultiple(void) if (sub_80D0580(3)) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + 1); - return 25; + return INPUT_25; } else { - return 9; + return INPUT_9; } } else if (JOY_NEW(A_BUTTON)) @@ -6895,28 +6933,28 @@ static u8 InBoxInput_MovingMultiple(void) { sIsMonBeingMoved = FALSE; sPSSData->inBoxMovingMode = 0; - return 26; + return INPUT_26; } else { - return 24; + return INPUT_24; } } else if (JOY_NEW(B_BUTTON)) { - return 24; + return INPUT_24; } else { if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return 10; + return INPUT_10; if (JOY_HELD(R_BUTTON)) - return 9; + return INPUT_9; } - return 0; + return INPUT_NONE; } } @@ -6935,14 +6973,14 @@ static u8 HandleInput_InParty(void) sPSSData->field_CD2 = 0; sPSSData->field_CD7 = 0; gotoBox = FALSE; - retVal = 0; + retVal = INPUT_NONE; if (JOY_REPEAT(DPAD_UP)) { if (--cursorPosition < 0) cursorPosition = PARTY_SIZE; if (cursorPosition != sBoxCursorPosition) - retVal = 1; + retVal = INPUT_1; break; } else if (JOY_REPEAT(DPAD_DOWN)) @@ -6950,12 +6988,12 @@ static u8 HandleInput_InParty(void) if (++cursorPosition > PARTY_SIZE) cursorPosition = 0; if (cursorPosition != sBoxCursorPosition) - retVal = 1; + retVal = INPUT_1; break; } else if (JOY_REPEAT(DPAD_LEFT) && sBoxCursorPosition != 0) { - retVal = 1; + retVal = INPUT_1; sPSSData->field_CD6 = sBoxCursorPosition; cursorPosition = 0; break; @@ -6964,12 +7002,12 @@ static u8 HandleInput_InParty(void) { if (sBoxCursorPosition == 0) { - retVal = 1; + retVal = INPUT_1; cursorPosition = sPSSData->field_CD6; } else { - retVal = 6; + retVal = INPUT_6; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 0; } @@ -6980,63 +7018,63 @@ static u8 HandleInput_InParty(void) { if (sBoxCursorPosition == PARTY_SIZE) { - if (sPSSData->boxOption == BOX_OPTION_DEPOSIT) - return 4; + if (sPSSData->boxOption == OPTION_DEPOSIT) + return INPUT_4; gotoBox = TRUE; } else if (sub_80CFA5C()) { if (!sCanOnlyMove) - return 8; + return INPUT_8; switch (GetMenuItemTextId(0)) { case MENU_STORE: - return 11; + return INPUT_11; case MENU_WITHDRAW: - return 12; + return INPUT_12; case MENU_MOVE: - return 13; + return INPUT_13; case MENU_SHIFT: - return 14; + return INPUT_14; case MENU_PLACE: - return 15; + return INPUT_15; case MENU_TAKE: - return 16; + return INPUT_16; case MENU_GIVE: - return 17; + return INPUT_17; case MENU_SWITCH: - return 18; + return INPUT_18; } } } if (JOY_NEW(B_BUTTON)) { - if (sPSSData->boxOption == BOX_OPTION_DEPOSIT) - return 19; + if (sPSSData->boxOption == OPTION_DEPOSIT) + return INPUT_19; gotoBox = TRUE; } if (gotoBox) { - retVal = 6; + retVal = INPUT_6; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 0; } else if (JOY_NEW(SELECT_BUTTON)) { sub_80CFDC4(); - return 0; + return INPUT_NONE; } } while (0); - if (retVal != 0) + if (retVal != INPUT_NONE) { - if (retVal != 6) + if (retVal != INPUT_6) sub_80CD894(cursorArea, cursorPosition); } @@ -7057,7 +7095,7 @@ static u8 HandleInput_OnBox(void) if (JOY_REPEAT(DPAD_UP)) { - retVal = 1; + retVal = INPUT_1; cursorArea = CURSOR_AREA_BUTTONS; cursorPosition = 0; sPSSData->field_CD7 = 1; @@ -7065,46 +7103,46 @@ static u8 HandleInput_OnBox(void) } else if (JOY_REPEAT(DPAD_DOWN)) { - retVal = 1; + retVal = INPUT_1; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 2; break; } if (JOY_HELD(DPAD_LEFT)) - return 10; + return INPUT_10; if (JOY_HELD(DPAD_RIGHT)) - return 9; + return INPUT_9; if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return 10; + return INPUT_10; if (JOY_HELD(R_BUTTON)) - return 9; + return INPUT_9; } if (JOY_NEW(A_BUTTON)) { AnimateBoxScrollArrows(FALSE); AddBoxMenu(); - return 7; + return INPUT_7; } if (JOY_NEW(B_BUTTON)) - return 19; + return INPUT_19; if (JOY_NEW(SELECT_BUTTON)) { sub_80CFDC4(); - return 0; + return INPUT_NONE; } - retVal = 0; + retVal = INPUT_NONE; } while (0); - if (retVal) + if (retVal != INPUT_NONE) { if (cursorArea != CURSOR_AREA_BOX) AnimateBoxScrollArrows(FALSE); @@ -7130,7 +7168,7 @@ static u8 HandleInput_OnButtons(void) if (JOY_REPEAT(DPAD_UP)) { - retVal = 1; + retVal = INPUT_1; cursorArea = CURSOR_AREA_IN_BOX; sPSSData->field_CD2 = -1; if (sBoxCursorPosition == 0) @@ -7143,7 +7181,7 @@ static u8 HandleInput_OnButtons(void) if (JOY_REPEAT(DPAD_DOWN | START_BUTTON)) { - retVal = 1; + retVal = INPUT_1; cursorArea = CURSOR_AREA_BOX; cursorPosition = 0; sPSSData->field_CD7 = 1; @@ -7152,34 +7190,34 @@ static u8 HandleInput_OnButtons(void) if (JOY_REPEAT(DPAD_LEFT)) { - retVal = 1; + retVal = INPUT_1; if (--cursorPosition < 0) cursorPosition = 1; break; } else if (JOY_REPEAT(DPAD_RIGHT)) { - retVal = 1; + retVal = INPUT_1; if (++cursorPosition > 1) cursorPosition = 0; break; } if (JOY_NEW(A_BUTTON)) - return (cursorPosition == 0) ? 5 : 4; + return (cursorPosition == 0) ? INPUT_5 : INPUT_4; if (JOY_NEW(B_BUTTON)) - return 19; + return INPUT_19; if (JOY_NEW(SELECT_BUTTON)) { sub_80CFDC4(); - return 0; + return INPUT_NONE; } - retVal = 0; + retVal = INPUT_NONE; } while (0); - if (retVal != 0) + if (retVal != INPUT_NONE) sub_80CD894(cursorArea, cursorPosition); return retVal; @@ -7191,14 +7229,13 @@ static u8 HandleInput(void) { u8 (*func)(void); s8 area; - } - static const inputFuncs[] = + } static const inputFuncs[] = { - {HandleInput_InBox, CURSOR_AREA_IN_BOX}, - {HandleInput_InParty, CURSOR_AREA_IN_PARTY}, - {HandleInput_OnBox, CURSOR_AREA_BOX}, + {HandleInput_InBox, CURSOR_AREA_IN_BOX}, + {HandleInput_InParty, CURSOR_AREA_IN_PARTY}, + {HandleInput_OnBox, CURSOR_AREA_BOX}, {HandleInput_OnButtons, CURSOR_AREA_BUTTONS}, - {NULL, 0}, + {}, }; u16 i = 0; @@ -7209,7 +7246,7 @@ static u8 HandleInput(void) i++; } - return 0; + return INPUT_NONE; } static void AddBoxMenu(void) @@ -7224,7 +7261,7 @@ static void AddBoxMenu(void) static u8 sub_80CFA5C(void) { InitMenu(); - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return sub_80CFA84(); else return sub_80CFB44(); @@ -7236,19 +7273,19 @@ static bool8 sub_80CFA84(void) switch (sPSSData->boxOption) { - case BOX_OPTION_DEPOSIT: + case OPTION_DEPOSIT: if (var0) SetMenuText(MENU_STORE); else return FALSE; break; - case BOX_OPTION_WITHDRAW: + case OPTION_WITHDRAW: if (var0) SetMenuText(MENU_WITHDRAW); else return FALSE; break; - case BOX_OPTION_MOVE_MONS: + case OPTION_MOVE_MONS: if (sIsMonBeingMoved) { if (var0) @@ -7264,13 +7301,13 @@ static bool8 sub_80CFA84(void) return FALSE; } break; - case BOX_OPTION_MOVE_ITEMS: + case OPTION_MOVE_ITEMS: default: return FALSE; } SetMenuText(MENU_SUMMARY); - if (sPSSData->boxOption == BOX_OPTION_MOVE_MONS) + if (sPSSData->boxOption == OPTION_MOVE_MONS) { if (!sBoxCursorArea) SetMenuText(MENU_WITHDRAW); @@ -8320,7 +8357,7 @@ static void sub_80D0C60(void) struct CompressedSpriteSheet spriteSheet; struct SpriteTemplate spriteTemplate; - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { spriteSheet.data = gUnknown_03000F78; spriteSheet.size = 0x200; @@ -8368,7 +8405,7 @@ static void sub_80D0D8C(u8 cursorArea, u8 cursorPos) { u16 heldItem; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; if (sub_80D1324(cursorArea, cursorPos)) return; @@ -8406,7 +8443,7 @@ static void sub_80D0E50(u8 cursorArea, u8 cursorPos) { u8 id; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; id = sub_80D1370(cursorArea, cursorPos); @@ -8419,7 +8456,7 @@ static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos) u8 id; u16 item; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; id = sub_80D1370(cursorArea, cursorPos); @@ -8460,7 +8497,7 @@ static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos) u8 id; u16 item; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; id = sub_80D1370(cursorArea, cursorPos); @@ -8488,7 +8525,7 @@ static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos) { u8 id; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; id = sub_80D1370(2, 0); @@ -8511,7 +8548,7 @@ static void Item_TakeMons(u8 cursorArea, u8 cursorPos) u8 id; u16 item; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; item = 0; @@ -8532,7 +8569,7 @@ static void Item_TakeMons(u8 cursorArea, u8 cursorPos) static void sub_80D1194(void) { - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { u8 id = sub_80D1370(2, 0); sub_80D15D4(id, 5); @@ -8544,7 +8581,7 @@ static void sub_80D11CC(void) { s32 i; - if (sPSSData->boxOption != BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; for (i = 0; i < 3; i++) @@ -8576,7 +8613,7 @@ static bool8 IsActiveItemMoving(void) { s32 i; - if (sPSSData->boxOption == BOX_OPTION_MOVE_ITEMS) + if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { for (i = 0; i < 3; i++) { @@ -9267,7 +9304,7 @@ u32 GetWaldaWallpaperPatternId(void) void SetWaldaWallpaperPatternId(u8 id) { - if (id < FRIENDS_WALLPAPERS_COUNT) + if (id < ARRAY_COUNT(sWaldaWallpapers)) gSaveBlock1Ptr->waldaPhrase.patternId = id; } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 6adf95ca1ba6..92d2f5073a78 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -47,6 +47,14 @@ #include "constants/rgb.h" #include "constants/songs.h" +enum { + PSS_PAGE_INFO, + PSS_PAGE_SKILLS, + PSS_PAGE_BATTLE_MOVES, + PSS_PAGE_CONTEST_MOVES, + PSS_PAGE_COUNT, +}; + // Screen titles (upper left) #define PSS_LABEL_WINDOW_POKEMON_INFO_TITLE 0 #define PSS_LABEL_WINDOW_POKEMON_SKILLS_TITLE 1 @@ -1070,24 +1078,24 @@ void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, sMonSummaryScreen->maxMonIndex = maxMonIndex; sMonSummaryScreen->callback = callback; - if (mode == PSS_MODE_BOX) + if (mode == SUMMARY_MODE_BOX) sMonSummaryScreen->isBoxMon = TRUE; else sMonSummaryScreen->isBoxMon = FALSE; switch (mode) { - case PSS_MODE_NORMAL: - case PSS_MODE_BOX: + case SUMMARY_MODE_NORMAL: + case SUMMARY_MODE_BOX: sMonSummaryScreen->minPageIndex = 0; sMonSummaryScreen->maxPageIndex = PSS_PAGE_COUNT - 1; break; - case PSS_MODE_LOCK_MOVES: + case SUMMARY_MODE_LOCK_MOVES: sMonSummaryScreen->minPageIndex = 0; sMonSummaryScreen->maxPageIndex = PSS_PAGE_COUNT - 1; sMonSummaryScreen->lockMovesFlag = TRUE; break; - case PSS_MODE_SELECT_MOVE: + case SUMMARY_MODE_SELECT_MOVE: sMonSummaryScreen->minPageIndex = PSS_PAGE_BATTLE_MOVES; sMonSummaryScreen->maxPageIndex = PSS_PAGE_COUNT - 1; sMonSummaryScreen->lockMonFlag = TRUE; @@ -1105,7 +1113,7 @@ void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, void ShowSelectMovePokemonSummaryScreen(struct Pokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void), u16 newMove) { - ShowPokemonSummaryScreen(PSS_MODE_SELECT_MOVE, mons, monIndex, maxMonIndex, callback); + ShowPokemonSummaryScreen(SUMMARY_MODE_SELECT_MOVE, mons, monIndex, maxMonIndex, callback); sMonSummaryScreen->newMove = newMove; } @@ -1240,7 +1248,7 @@ static bool8 LoadGraphics(void) gMain.state++; break; case 22: - if (sMonSummaryScreen->mode != PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode != SUMMARY_MODE_SELECT_MOVE) CreateTask(Task_HandleInput, 0); else CreateTask(Task_SetHandleReplaceMoveInput, 0); @@ -1393,7 +1401,7 @@ static bool8 ExtractMonDataToSummaryStruct(struct Pokemon *mon) sum->ppBonuses = GetMonData(mon, MON_DATA_PP_BONUSES); break; case 2: - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == PSS_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) { sum->nature = GetNature(mon); sum->currentHP = GetMonData(mon, MON_DATA_HP); @@ -2859,7 +2867,7 @@ static void PutPageWindowTilemaps(u8 page) break; case PSS_PAGE_BATTLE_MOVES: PutWindowTilemap(PSS_LABEL_WINDOW_BATTLE_MOVES_TITLE); - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_POWER_ACC); @@ -2871,7 +2879,7 @@ static void PutPageWindowTilemaps(u8 page) break; case PSS_PAGE_CONTEST_MOVES: PutWindowTilemap(PSS_LABEL_WINDOW_CONTEST_MOVES_TITLE); - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM); @@ -2907,7 +2915,7 @@ static void ClearPageWindowTilemaps(u8 page) ClearWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_EXP); break; case PSS_PAGE_BATTLE_MOVES: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_POWER_ACC); @@ -2918,7 +2926,7 @@ static void ClearPageWindowTilemaps(u8 page) } break; case PSS_PAGE_CONTEST_MOVES: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM); @@ -3413,7 +3421,7 @@ static void PrintBattleMoves(void) PrintMoveNameAndPP(2); PrintMoveNameAndPP(3); - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { PrintNewMoveDetailsOrCancelText(); if (sMonSummaryScreen->firstMoveIndex == MAX_MON_MOVES) @@ -3447,11 +3455,11 @@ static void Task_PrintBattleMoves(u8 taskId) PrintMoveNameAndPP(3); break; case 5: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) PrintNewMoveDetailsOrCancelText(); break; case 6: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->firstMoveIndex == MAX_MON_MOVES) data[1] = sMonSummaryScreen->newMove; @@ -3460,7 +3468,7 @@ static void Task_PrintBattleMoves(u8 taskId) } break; case 7: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) PrintMoveDetails(data[1]); @@ -3548,7 +3556,7 @@ static void PrintContestMoves(void) PrintMoveNameAndPP(2); PrintMoveNameAndPP(3); - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { PrintNewMoveDetailsOrCancelText(); PrintContestMoveDescription(sMonSummaryScreen->firstMoveIndex); @@ -3574,11 +3582,11 @@ static void Task_PrintContestMoves(u8 taskId) PrintMoveNameAndPP(3); break; case 5: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) PrintNewMoveDetailsOrCancelText(); break; case 6: - if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) + if (sMonSummaryScreen->mode == SUMMARY_MODE_SELECT_MOVE) { if (sMonSummaryScreen->newMove != MOVE_NONE || sMonSummaryScreen->firstMoveIndex != MAX_MON_MOVES) PrintContestMoveDescription(sMonSummaryScreen->firstMoveIndex); @@ -3613,7 +3621,7 @@ static void PrintMoveDetails(u16 move) FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); if (move != MOVE_NONE) { - if (sMonSummaryScreen->currPageIndex == PSS_MODE_BOX) + if (sMonSummaryScreen->currPageIndex == SUMMARY_MODE_BOX) { PrintMovePowerAndAccuracy(move); PrintTextOnWindow(windowId, gMoveDescriptionPointers[move - 1], 6, 1, 0, 0); @@ -3867,14 +3875,14 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) { if (gMonSpritesGfxPtr != NULL) { - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == PSS_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); else HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); } else { - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == PSS_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], sub_806F4F8(0, 1), summary->species2, summary->pid); else HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], sub_806F4F8(0, 1), summary->species2, summary->pid); diff --git a/src/trade.c b/src/trade.c index f423b20af972..12a2f4b33284 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1460,10 +1460,10 @@ static void TradeMenuShowMonSummaryScreen(void) { // Player's party if (sTradeMenuData->cursorPosition < PARTY_SIZE) - ShowPokemonSummaryScreen(PSS_MODE_LOCK_MOVES, gPlayerParty, sTradeMenuData->cursorPosition, sTradeMenuData->partyCounts[TRADE_PLAYER] - 1, CB2_ReturnToTradeMenu); + ShowPokemonSummaryScreen(SUMMARY_MODE_LOCK_MOVES, gPlayerParty, sTradeMenuData->cursorPosition, sTradeMenuData->partyCounts[TRADE_PLAYER] - 1, CB2_ReturnToTradeMenu); // Partner's party else - ShowPokemonSummaryScreen(PSS_MODE_LOCK_MOVES, gEnemyParty, sTradeMenuData->cursorPosition - PARTY_SIZE, sTradeMenuData->partyCounts[TRADE_PARTNER] - 1, CB2_ReturnToTradeMenu); + ShowPokemonSummaryScreen(SUMMARY_MODE_LOCK_MOVES, gEnemyParty, sTradeMenuData->cursorPosition - PARTY_SIZE, sTradeMenuData->partyCounts[TRADE_PARTNER] - 1, CB2_ReturnToTradeMenu); FreeAllWindowBuffers(); } } From 84e1cbaaa651a937712ac95ae97cc1fb7675b735 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 19:17:53 -0400 Subject: [PATCH 123/762] Doc storage - misc gfx, item icons --- ...{unknown_frame.png => item_info_frame.png} | Bin src/pokemon_storage_system.c | 929 ++++++++++-------- 2 files changed, 493 insertions(+), 436 deletions(-) rename graphics/pokemon_storage/{unknown_frame.png => item_info_frame.png} (100%) diff --git a/graphics/pokemon_storage/unknown_frame.png b/graphics/pokemon_storage/item_info_frame.png similarity index 100% rename from graphics/pokemon_storage/unknown_frame.png rename to graphics/pokemon_storage/item_info_frame.png diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 07e0931ed7bf..bcf2d40754f8 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -195,33 +195,79 @@ enum { CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box }; +#define CURSOR_AREA_IN_HAND CURSOR_AREA_BOX // Alt name for cursor area used by Move Items + // Special box ids for the choose box menu #define BOXID_NONE_CHOSEN 200 #define BOXID_CANCELED 201 -#define TAG_PAL_WAVEFORM 0xDACA -#define TAG_PAL_DAC8 0xDAC8 -#define TAG_PAL_DAC6 0xDAC6 -#define TAG_PAL_DACE 0xDACE -#define TAG_PAL_DAC7 0xDAC7 -#define PALTAG_BOX_TITLE 0xDAC9 -#define TAG_PAL_DAC0 0xDAC0 -#define TAG_PAL_DACB 0xDACB - -#define TAG_TILE_0 0 -#define TAG_TILE_1 1 -#define TAG_TILE_2 2 -#define GFXTAG_BOX_TITLE 3 -#define GFXTAG_BOX_TITLE_ALT 4 -#define TAG_TILE_WAVEFORM 5 -#define GFXTAG_ARROW 6 -#define TAG_TILE_7 7 -#define GFXTAG_CHOOSE_BOX_MENU 10 -#define GFXTAG_CHOOSE_BOX_MENU_SIDES 11 // Used implicitly in LoadChooseBoxMenuGfx -#define TAG_TILE_D 13 -#define TAG_TILE_10 16 -#define TAG_TILE_12 18 +enum { + PALTAG_MON_ICON_0 = 56000, + PALTAG_MON_ICON_1, // Used implicitly in CreateMonIconSprite + PALTAG_MON_ICON_2, // Used implicitly in CreateMonIconSprite + PALTAG_3, + PALTAG_4, + PALTAG_5, + PALTAG_CURSOR_MON, + PALTAG_7, + PALTAG_MON_MARKING, + PALTAG_BOX_TITLE, + PALTAG_10, + PALTAG_ITEM_ICON_0, + PALTAG_ITEM_ICON_1, // Used implicitly in CreateItemIconSprites + PALTAG_ITEM_ICON_2, // Used implicitly in CreateItemIconSprites + PALTAG_14, +}; + +enum { + TAG_TILE_0, + TAG_TILE_1, + GFXTAG_CURSOR_MON, + GFXTAG_BOX_TITLE, + GFXTAG_BOX_TITLE_ALT, + GFXTAG_WAVEFORM, + GFXTAG_ARROW, + GFXTAG_ITEM_ICON_0, + GFXTAG_ITEM_ICON_1, // Used implicitly in CreateItemIconSprites + GFXTAG_ITEM_ICON_2, // Used implicitly in CreateItemIconSprites + GFXTAG_CHOOSE_BOX_MENU, + GFXTAG_CHOOSE_BOX_MENU_SIDES, // Used implicitly in LoadChooseBoxMenuGfx + GFXTAG_12, + GFXTAG_13, + GFXTAG_14, + GFXTAG_15, + GFXTAG_MON_MARKING, + GFXTAG_17, + GFXTAG_18, +}; +// The maximum number of item icons that can appear on-screen while +// moving held items. 1 in the cursor, and 2 more while switching +// between 2 Pokémon with held items +#define MAX_ITEM_ICONS 3 + +// IDs for the item icons affine anims +enum { + ITEM_ANIM_NONE, + ITEM_ANIM_APPEAR, + ITEM_ANIM_DISAPPEAR, + ITEM_ANIM_PICK_UP, + ITEM_ANIM_PUT_DOWN, + ITEM_ANIM_PUT_AWAY, + ITEM_ANIM_LARGE, +}; + +// IDs for the item icon sprite callbacks +enum { + ITEM_CB_WAIT_ANIM, + ITEM_CB_TO_HAND, + ITEM_CB_TO_MON, + ITEM_CB_SWAP_TO_HAND, + ITEM_CB_SWAP_TO_MON, + ITEM_CB_UNUSED_1, + ITEM_CB_UNUSED_2, + ITEM_CB_HIDE_PARTY, +}; struct Wallpaper { @@ -280,14 +326,14 @@ struct ChooseBoxMenu u8 subpriority; }; -struct UnkStorageStruct +struct ItemIcon { struct Sprite *sprite; u8 *tiles; u16 palIndex; - u8 unk8; - u8 unk9; - u8 unk10; + u8 cursorArea; + u8 cursorPos; + bool8 active; }; struct PokemonStorageSystemData @@ -389,7 +435,7 @@ struct PokemonStorageSystemData const u32 *cursorMonPalette; u32 cursorMonPersonality; u16 cursorMonSpecies; - u16 cursorMonItem; + u16 cursorMonItemId; u16 field_CE8; bool8 setMosaic; u8 cursorMonMarkings; @@ -403,9 +449,9 @@ struct PokemonStorageSystemData bool8 (*monPlaceChangeFunc)(void); u8 monPlaceChangeState; u8 field_D91; - struct Sprite *field_D94; - struct Sprite *field_D98[2]; - u16 *field_DA0; + struct Sprite *markingComboSprite; + struct Sprite *waveformSprites[2]; + u16 *markingComboTilesPtr; struct MonMarkingsMenu markMenu; struct ChooseBoxMenu chooseBoxMenu; struct Pokemon movingMon; @@ -433,15 +479,15 @@ struct PokemonStorageSystemData u8 itemName[20]; u8 inBoxMovingMode; u16 field_2200; - struct UnkStorageStruct field_2204[3]; - u16 movingItem; - u16 field_2236; + struct ItemIcon itemIcons[MAX_ITEM_ICONS]; + u16 movingItemId; + u16 itemInfoWindowOffset; u8 field_2238; // Unused - u16 field_223A; - u16 *field_223C; + u16 cursorMonPalOffset; + u16 *cursorMonTilePtr; struct Sprite *cursorMonSprite; - u16 field_2244[0x40]; - u8 field_22C4[0x800]; + u16 cursorMonPalBuffer[0x40]; + u8 tileBuffer[0x800]; u8 field_2AC4[0x1800]; // Unused u8 field_42C4[0x800]; u8 wallpaperBgTilemapBuffer[0x1000]; @@ -474,7 +520,7 @@ struct UnkStruct_2039D84 u8 field_2D; }; -static u32 gUnknown_03000F78[98]; +static u32 sItemIconGfxBuffer[98]; EWRAM_DATA static u8 sPreviousBoxOption = 0; EWRAM_DATA static struct ChooseBoxMenu *sChooseBoxMenu = NULL; @@ -529,7 +575,7 @@ static void sub_80CEBDC(void); static void SetScrollingBackground(void); static void sub_80CABE0(void); static void sub_80CAEAC(void); -static void sub_80D0C60(void); +static void CreateItemIconSprites(void); static void sub_80CFEA8(void); static void sub_80CDC0C(void); static void sub_80CAF04(void); @@ -540,9 +586,9 @@ static void InitCanRelaseMonVars(void); static void sub_80D01B8(void); static void ReleaseMon(void); static void RefreshCursorMonData(void); -static void LoadCursorMonSprite(void); -static void sub_80CA154(void); -static void sub_80CA1C4(void); +static void CreateCursorMonSprite(void); +static void CreateMarkingComboSprite(void); +static void CreateWaveformSprites(void); static void sub_80CC064(void); static void sub_80CE324(void); static void ClearBottomWindow(void); @@ -551,7 +597,7 @@ static void RemoveMenu(void); static void sub_80CE00C(void); static void sub_80D1194(void); static void PrintCursorMonInfo(void); -static void sub_80CA65C(void); +static void UpdateWaveformAnimation(void); static void AddWallpaperSetsMenu(void); static void CreateBoxScrollArrows(void); static void InitMenu(void); @@ -559,8 +605,8 @@ static void StopBoxScrollArrowsSlide(void); static void sub_80CFC14(void); static void sub_80CEB40(void); static void CycleBoxTitleSprites(void); -static void sub_80D1818(void); -static void sub_80D19B4(u32); +static void InitItemInfoWindow(void); +static void DrawItemInfoWindow(u32); static void sub_80CAA74(void); static void PrintItemDescription(void); static void sub_80CE760(void); @@ -593,17 +639,17 @@ static bool8 IsInitBoxActive(void); static bool8 sub_80D01E4(void); static bool8 sub_80CDED4(void); static bool8 sub_80CDF08(void); -static bool8 sub_80D184C(void); -static bool8 sub_80D18E4(void); +static bool8 UpdateItemInfoWindowSlideIn(void); +static bool8 UpdateItemInfoWindowSlideOut(void); static bool8 DoShowPartyMenu(void); -static bool8 sub_80D1218(void); +static bool8 IsItemIconAnimActive(void); static bool8 ScrollToBox(void); static bool8 sub_80CD554(void); static bool8 HidePartyMenu(void); -static bool8 IsActiveItemMoving(void); +static bool8 IsMovingItem(void); static bool8 sub_80D0580(u8); static bool8 sub_80D0BC0(void); -static bool8 sub_80CA2B8(void); +static bool8 GetCursorMonMosaic(void); static bool8 DoWallpaperGfxChange(void); static bool8 DoMonPlaceChange(void); static bool8 IsMenuLoading(void); @@ -667,7 +713,7 @@ static void Item_SwitchMonsWithMoving(u8, u8); static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); static void SetWallpaperForCurrentBox(u8); static void AddWallpapersMenu(u8); -static u16 GetMovingItem(void); +static u16 GetMovingItemId(void); static void LoadCursorMonGfx(u16, u32); static void sub_80CA2D0(struct Sprite *); static void SpriteCB_OutgoingBoxTitle(struct Sprite *); @@ -928,20 +974,20 @@ static const struct BgTemplate gUnknown_08572734[] = static const struct SpritePalette gWaveformSpritePalette = { - gWaveformPalette, TAG_PAL_WAVEFORM + gWaveformPalette, PALTAG_10 }; -static const struct SpriteSheet gWaveformSpriteSheet = +static const struct SpriteSheet sSpriteSheet_Waveform = { - gWaveformTiles, sizeof(gWaveformTiles), TAG_TILE_WAVEFORM + gWaveformTiles, sizeof(gWaveformTiles), GFXTAG_WAVEFORM }; -static const struct OamData sOamData_857286C; +static const struct OamData sOamData_CursorMon; static const struct SpriteTemplate sSpriteTemplate_CursorMon = { - .tileTag = TAG_TILE_2, - .paletteTag = TAG_PAL_DAC6, - .oam = &sOamData_857286C, + .tileTag = GFXTAG_CURSOR_MON, + .paletteTag = PALTAG_CURSOR_MON, + .oam = &sOamData_CursorMon, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -994,7 +1040,7 @@ static const struct WindowTemplate sYesNoWindowTemplate = .baseBlock = 0x5C, }; -static const struct OamData sOamData_857286C = +static const struct OamData sOamData_CursorMon = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1011,7 +1057,7 @@ static const struct OamData sOamData_857286C = .affineParam = 0 }; -static const struct OamData sOamData_8572874 = +static const struct OamData sOamData_Waveform = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1028,13 +1074,13 @@ static const struct OamData sOamData_8572874 = .affineParam = 0 }; -static const union AnimCmd sSpriteAnim_857287C[] = +static const union AnimCmd sAnim_Waveform_LeftOff[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8572884[] = +static const union AnimCmd sAnim_Waveform_LeftOn[] = { ANIMCMD_FRAME(2, 8), ANIMCMD_FRAME(4, 8), @@ -1042,13 +1088,13 @@ static const union AnimCmd sSpriteAnim_8572884[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd sSpriteAnim_8572894[] = +static const union AnimCmd sAnim_Waveform_RightOff[] = { ANIMCMD_FRAME(8, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_857289C[] = +static const union AnimCmd sAnim_Waveform_RightOn[] = { ANIMCMD_FRAME(10, 8), ANIMCMD_FRAME(4, 8), @@ -1056,20 +1102,20 @@ static const union AnimCmd sSpriteAnim_857289C[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd *const sSpriteAnimTable_85728AC[] = +static const union AnimCmd *const sAnims_Waveform[] = { - sSpriteAnim_857287C, - sSpriteAnim_8572884, - sSpriteAnim_8572894, - sSpriteAnim_857289C + sAnim_Waveform_LeftOff, + sAnim_Waveform_LeftOn, + sAnim_Waveform_RightOff, + sAnim_Waveform_RightOn }; static const struct SpriteTemplate sSpriteTemplate_Waveform = { - .tileTag = TAG_TILE_WAVEFORM, - .paletteTag = TAG_PAL_WAVEFORM, - .oam = &sOamData_8572874, - .anims = sSpriteAnimTable_85728AC, + .tileTag = GFXTAG_WAVEFORM, + .paletteTag = PALTAG_10, + .oam = &sOamData_Waveform, + .anims = sAnims_Waveform, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -1078,8 +1124,8 @@ static const struct SpriteTemplate sSpriteTemplate_Waveform = static const struct OamData sOamData_85728EC; static const struct SpriteTemplate gUnknown_085728D4 = { - .tileTag = TAG_TILE_12, - .paletteTag = TAG_PAL_DAC0, + .tileTag = GFXTAG_18, + .paletteTag = PALTAG_MON_ICON_0, .oam = &sOamData_85728EC, .anims = gDummySpriteAnimTable, .images = NULL, @@ -1125,8 +1171,7 @@ static const union AffineAnimCmd *const gSpriteAffineAnimTable_857291C[] = #include "data/wallpapers.h" -// Unknown Unused data. -static const u16 gUnknown_0857B07C = 0x23BA; +static const u16 sUnusedColor = RGB(26, 29, 8); static const struct SpriteSheet sSpriteSheet_Arrow = {sArrow_Gfx, 0x80, GFXTAG_ARROW}; @@ -1194,7 +1239,7 @@ static const union AnimCmd *const sAnims_Arrow[] = static const struct SpriteTemplate sSpriteTemplate_Arrow = { .tileTag = GFXTAG_ARROW, - .paletteTag = TAG_PAL_WAVEFORM, + .paletteTag = PALTAG_10, .oam = &sOamData_Arrow, .anims = sAnims_Arrow, .images = NULL, @@ -1206,7 +1251,6 @@ static const u16 gHandCursorPalette[] = INCBIN_U16("graphics/pokemon_storage/han static const u8 gHandCursorTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor.4bpp"); static const u8 gHandCursorShadowTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor_shadow.4bpp"); -// code void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero2, s32 bytesToBuffer) { s32 i, tileBytesToBuffer, remainingBytes; @@ -2015,14 +2059,14 @@ static void Cb_InitPSS(u8 taskId) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - sPSSData->markMenu.baseTileTag = TAG_TILE_D; - sPSSData->markMenu.basePaletteTag = TAG_PAL_DACE; + sPSSData->markMenu.baseTileTag = GFXTAG_13; + sPSSData->markMenu.basePaletteTag = PALTAG_14; InitMonMarkingsMenu(&sPSSData->markMenu); BufferMonMarkingsMenuTiles(); } else { - sub_80D0C60(); + CreateItemIconSprites(); sub_80CAEAC(); } break; @@ -2125,7 +2169,7 @@ static void Cb_MainPSS(u8 taskId) case INPUT_6: if (sPSSData->boxOption == OPTION_MOVE_MONS) { - if (IsMonBeingMoved() && ItemIsMail(sPSSData->cursorMonItem)) + if (IsMonBeingMoved() && ItemIsMail(sPSSData->cursorMonItemId)) sPSSData->state = 5; else SetPSSCallback(Cb_HidePartyPokemon); @@ -2183,7 +2227,7 @@ static void Cb_MainPSS(u8 taskId) case INPUT_11: if (!CanMovePartyMon()) { - if (ItemIsMail(sPSSData->cursorMonItem)) + if (ItemIsMail(sPSSData->cursorMonItemId)) { sPSSData->state = 5; } @@ -2348,14 +2392,14 @@ static void Cb_MainPSS(u8 taskId) } break; case 10: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { SetUpScrollToBox(sPSSData->newCurrBoxId); sPSSData->state = 2; } break; case 11: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) sPSSData->state = 0; break; } @@ -2408,12 +2452,12 @@ static void Cb_OnSelectedMon(u8 taskId) switch (sPSSData->state) { case 0: - if (!sub_80CA2B8()) + if (!GetCursorMonMosaic()) { PlaySE(SE_SELECT); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) PrintMessage(MSG_IS_SELECTED); - else if (IsActiveItemMoving() || sPSSData->cursorMonItem != 0) + else if (IsMovingItem() || sPSSData->cursorMonItemId != ITEM_NONE) PrintMessage(MSG_IS_SELECTED2); else PrintMessage(MSG_GIVE_TO_MON); @@ -2473,7 +2517,7 @@ static void Cb_OnSelectedMon(u8 taskId) { sPSSData->state = 3; } - else if (ItemIsMail(sPSSData->cursorMonItem)) + else if (ItemIsMail(sPSSData->cursorMonItemId)) { sPSSData->state = 4; } @@ -2493,7 +2537,7 @@ static void Cb_OnSelectedMon(u8 taskId) { sPSSData->state = 5; // Cannot release an Egg. } - else if (ItemIsMail(sPSSData->cursorMonItem)) + else if (ItemIsMail(sPSSData->cursorMonItemId)) { sPSSData->state = 4; } @@ -2678,7 +2722,7 @@ static void Cb_DepositMenu(u8 taskId) { case 0: PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); - LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, TAG_PAL_DAC7, 3, FALSE); + LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); CreateChooseBoxMenuSprites(sDepositBoxId); sPSSData->state++; break; @@ -2893,7 +2937,7 @@ static void Cb_TakeItemForMoving(u8 taskId) switch (sPSSData->state) { case 0: - if (!ItemIsMail(sPSSData->cursorMonItem)) + if (!ItemIsMail(sPSSData->cursorMonItemId)) { ClearBottomWindow(); sPSSData->state++; @@ -2909,7 +2953,7 @@ static void Cb_TakeItemForMoving(u8 taskId) sPSSData->state++; break; case 2: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { sub_80CFE54(3); ClearBottomWindow(); @@ -2939,7 +2983,7 @@ static void Cb_GiveMovingItemToMon(u8 taskId) sPSSData->state++; break; case 2: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { sub_80CFE54(0); sub_80CE00C(); @@ -2967,7 +3011,7 @@ static void Cb_ItemToBag(u8 taskId) switch (sPSSData->state) { case 0: - if (!AddBagItem(sPSSData->cursorMonItem, 1)) + if (!AddBagItem(sPSSData->cursorMonItemId, 1)) { PlaySE(SE_FAILURE); PrintMessage(MSG_BAG_FULL); @@ -2981,7 +3025,7 @@ static void Cb_ItemToBag(u8 taskId) } break; case 1: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { PrintMessage(MSG_PLACED_IN_BAG); sPSSData->state = 2; @@ -3015,7 +3059,7 @@ static void Cb_SwitchSelectedItem(u8 taskId) switch (sPSSData->state) { case 0: - if (!ItemIsMail(sPSSData->cursorMonItem)) + if (!ItemIsMail(sPSSData->cursorMonItemId)) { ClearBottomWindow(); sPSSData->state++; @@ -3031,7 +3075,7 @@ static void Cb_SwitchSelectedItem(u8 taskId) sPSSData->state++; break; case 2: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { sub_80CFE54(3); sub_80CE00C(); @@ -3067,12 +3111,12 @@ static void Cb_ShowItemInfo(u8 taskId) { PlaySE(SE_WIN_OPEN); PrintItemDescription(); - sub_80D1818(); + InitItemInfoWindow(); sPSSData->state++; } break; case 2: - if (!sub_80D184C()) + if (!UpdateItemInfoWindowSlideIn()) sPSSData->state++; break; case 3: @@ -3087,7 +3131,7 @@ static void Cb_ShowItemInfo(u8 taskId) } break; case 5: - if (!sub_80D18E4()) + if (!UpdateItemInfoWindowSlideOut()) sPSSData->state++; break; case 6: @@ -3111,12 +3155,12 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) switch (Menu_ProcessInputNoWrapClearOnChoose()) { case MENU_B_PRESSED: - case 1: + case 1: // No ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; - case 0: - if (AddBagItem(sPSSData->movingItem, 1) == TRUE) + case 0:// Yes + if (AddBagItem(sPSSData->movingItemId, 1) == TRUE) { ClearBottomWindow(); sPSSData->state = 3; @@ -3141,7 +3185,7 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) sPSSData->state = 4; break; case 4: - if (!sub_80D1218()) + if (!IsItemIconAnimActive()) { sub_80CFE54(0); SetPSSCallback(Cb_MainPSS); @@ -3331,7 +3375,7 @@ static void Cb_JumpBox(u8 taskId) { case 0: PrintMessage(MSG_JUMP_TO_WHICH_BOX); - LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, TAG_PAL_DAC7, 3, FALSE); + LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); CreateChooseBoxMenuSprites(StorageGetCurrentBox()); sPSSData->state++; break; @@ -3441,7 +3485,7 @@ static void Cb_OnCloseBoxPressed(u8 taskId) PrintMessage(MSG_HOLDING_POKE); sPSSData->state = 1; } - else if (IsActiveItemMoving()) + else if (IsMovingItem()) { SetPSSCallback(Cb_CloseBoxWhileHoldingItem); } @@ -3502,7 +3546,7 @@ static void Cb_OnBPressed(u8 taskId) PrintMessage(MSG_HOLDING_POKE); sPSSData->state = 1; } - else if (IsActiveItemMoving()) + else if (IsMovingItem()) { SetPSSCallback(Cb_CloseBoxWhileHoldingItem); } @@ -3558,8 +3602,8 @@ static void Cb_ChangeScreen(u8 taskId) u8 mode, monIndex, maxMonIndex; u8 screenChangeType = sPSSData->screenChangeType; - if (sPSSData->boxOption == OPTION_MOVE_ITEMS && IsActiveItemMoving() == TRUE) - sMovingItemId = GetMovingItem(); + if (sPSSData->boxOption == OPTION_MOVE_ITEMS && IsMovingItem() == TRUE) + sMovingItemId = GetMovingItemId(); else sMovingItemId = ITEM_NONE; @@ -3671,32 +3715,32 @@ static void sub_80CA0D8(void) LoadPalette(gUnknown_0857243C, 0x30, 0x20); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30)); - LoadCursorMonSprite(); - sub_80CA154(); - sub_80CA1C4(); + CreateCursorMonSprite(); + CreateMarkingComboSprite(); + CreateWaveformSprites(); RefreshCursorMonData(); } -static void sub_80CA154(void) +static void CreateMarkingComboSprite(void) { - sPSSData->field_D94 = CreateMonMarkingComboSprite(TAG_TILE_10, TAG_PAL_DAC8, NULL); - sPSSData->field_D94->oam.priority = 1; - sPSSData->field_D94->subpriority = 1; - sPSSData->field_D94->pos1.x = 40; - sPSSData->field_D94->pos1.y = 150; - sPSSData->field_DA0 = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(TAG_TILE_10); + sPSSData->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MON_MARKING, PALTAG_MON_MARKING, NULL); + sPSSData->markingComboSprite->oam.priority = 1; + sPSSData->markingComboSprite->subpriority = 1; + sPSSData->markingComboSprite->pos1.x = 40; + sPSSData->markingComboSprite->pos1.y = 150; + sPSSData->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MON_MARKING); } -static void sub_80CA1C4(void) +static void CreateWaveformSprites(void) { u16 i; - struct SpriteSheet sheet = gWaveformSpriteSheet; + struct SpriteSheet sheet = sSpriteSheet_Waveform; LoadSpriteSheet(&sheet); - for (i = 0; i < 2; i++) + for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) { u8 spriteId = CreateSprite(&sSpriteTemplate_Waveform, i * 63 + 8, 9, 2); - sPSSData->field_D98[i] = &gSprites[spriteId]; + sPSSData->waveformSprites[i] = &gSprites[spriteId]; } } @@ -3704,7 +3748,7 @@ static void RefreshCursorMonData(void) { LoadCursorMonGfx(sPSSData->cursorMonSpecies, sPSSData->cursorMonPersonality); PrintCursorMonInfo(); - sub_80CA65C(); + UpdateWaveformAnimation(); ScheduleBgCopyTilemapToVram(0); } @@ -3721,7 +3765,7 @@ static void BoxSetMosaic(void) } } -static u8 sub_80CA2B8(void) +static u8 GetCursorMonMosaic(void) { return sPSSData->cursorMonSprite->oam.mosaic; } @@ -3739,20 +3783,20 @@ static void sub_80CA2D0(struct Sprite *sprite) } } -static void LoadCursorMonSprite(void) +static void CreateCursorMonSprite(void) { u16 i; u16 tileStart; u8 palSlot; u8 spriteId; - struct SpriteSheet sheet = {sPSSData->field_22C4, MON_PIC_SIZE, TAG_TILE_2}; - struct SpritePalette palette = {sPSSData->field_2244, TAG_PAL_DAC6}; + struct SpriteSheet sheet = {sPSSData->tileBuffer, MON_PIC_SIZE, GFXTAG_CURSOR_MON}; + struct SpritePalette palette = {sPSSData->cursorMonPalBuffer, PALTAG_CURSOR_MON}; struct SpriteTemplate template = sSpriteTemplate_CursorMon; for (i = 0; i < MON_PIC_SIZE; i++) - sPSSData->field_22C4[i] = 0; - for (i = 0; i < 0x10; i++) - sPSSData->field_2244[i] = 0; + sPSSData->tileBuffer[i] = 0; + for (i = 0; i < 16; i++) + sPSSData->cursorMonPalBuffer[i] = 0; sPSSData->cursorMonSprite = NULL; @@ -3771,14 +3815,14 @@ static void LoadCursorMonSprite(void) break; sPSSData->cursorMonSprite = &gSprites[spriteId]; - sPSSData->field_223A = palSlot * 16 + 0x100; - sPSSData->field_223C = (void*) OBJ_VRAM0 + tileStart * 32; + sPSSData->cursorMonPalOffset = palSlot * 16 + 0x100; + sPSSData->cursorMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; } while (0); if (sPSSData->cursorMonSprite == NULL) { - FreeSpriteTilesByTag(TAG_TILE_2); - FreeSpritePaletteByTag(TAG_PAL_DAC6); + FreeSpriteTilesByTag(GFXTAG_CURSOR_MON); + FreeSpritePaletteByTag(PALTAG_CURSOR_MON); } } @@ -3789,10 +3833,10 @@ static void LoadCursorMonGfx(u16 species, u32 pid) if (species != SPECIES_NONE) { - LoadSpecialPokePic(&gMonFrontPicTable[species], sPSSData->field_22C4, species, pid, TRUE); - LZ77UnCompWram(sPSSData->cursorMonPalette, sPSSData->field_2244); - CpuCopy32(sPSSData->field_22C4, sPSSData->field_223C, MON_PIC_SIZE); - LoadPalette(sPSSData->field_2244, sPSSData->field_223A, 0x20); + LoadSpecialPokePic(&gMonFrontPicTable[species], sPSSData->tileBuffer, species, pid, TRUE); + LZ77UnCompWram(sPSSData->cursorMonPalette, sPSSData->cursorMonPalBuffer); + CpuCopy32(sPSSData->tileBuffer, sPSSData->cursorMonTilePtr, MON_PIC_SIZE); + LoadPalette(sPSSData->cursorMonPalBuffer, sPSSData->cursorMonPalOffset, 0x20); sPSSData->cursorMonSprite->invisible = FALSE; } else @@ -3822,30 +3866,33 @@ static void PrintCursorMonInfo(void) CopyWindowToVram(0, 2); if (sPSSData->cursorMonSpecies != SPECIES_NONE) { - UpdateMonMarkingTiles(sPSSData->cursorMonMarkings, sPSSData->field_DA0); - sPSSData->field_D94->invisible = FALSE; + UpdateMonMarkingTiles(sPSSData->cursorMonMarkings, sPSSData->markingComboTilesPtr); + sPSSData->markingComboSprite->invisible = FALSE; } else { - sPSSData->field_D94->invisible = TRUE; + sPSSData->markingComboSprite->invisible = TRUE; } } -static void sub_80CA65C(void) +// Turn the wave animation on the sides of "Pkmn Data" on/off +static void UpdateWaveformAnimation(void) { u16 i; if (sPSSData->cursorMonSpecies != SPECIES_NONE) { + // Start animation sub_80D27AC(0, 0, 0, 8, 2); - for (i = 0; i < 2; i++) - StartSpriteAnimIfDifferent(sPSSData->field_D98[i], i * 2 + 1); + for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) + StartSpriteAnimIfDifferent(sPSSData->waveformSprites[i], i * 2 + 1); } else { + // Stop animation sub_80D27AC(0, 0, 2, 8, 2); - for (i = 0; i < 2; i++) - StartSpriteAnim(sPSSData->field_D98[i], i * 2); + for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) + StartSpriteAnim(sPSSData->waveformSprites[i], i * 2); } sub_80D2918(0); @@ -4098,7 +4145,7 @@ static void PrintMessage(u8 id) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->field_21E0); break; case MSG_FORMAT_ITEM_NAME: - if (IsActiveItemMoving()) + if (IsMovingItem()) txtPtr = StringCopy(sPSSData->itemName, GetMovingItemName()); else txtPtr = StringCopy(sPSSData->itemName, sPSSData->cursorMonItemName); @@ -4892,15 +4939,15 @@ static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s { u16 tileNum; u8 spriteId; - struct SpriteTemplate tempalte = gUnknown_085728D4; + struct SpriteTemplate template = gUnknown_085728D4; species = GetIconSpecies(species, personality); - tempalte.paletteTag = 0xDAC0 + gMonIconPaletteIndices[species]; + template.paletteTag = PALTAG_MON_ICON_0 + gMonIconPaletteIndices[species]; tileNum = sub_80CC124(species); if (tileNum == 0xFFFF) return NULL; - spriteId = CreateSprite(&tempalte, x, y, subpriority); + spriteId = CreateSprite(&template, x, y, subpriority); if (spriteId == MAX_SPRITES) { sub_80CC1E0(species); @@ -5595,7 +5642,7 @@ static bool8 sub_80CD554(void) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return FALSE; else - return sub_80D1218(); + return IsItemIconAnimActive(); } else if (--sPSSData->field_CD0 != 0) { @@ -5704,7 +5751,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) } else { - if (!IsActiveItemMoving()) + if (!IsMovingItem()) StartSpriteAnim(sPSSData->field_CB4, 1); } @@ -5763,7 +5810,7 @@ static void sub_80CDA68(void) } else { - if (!IsActiveItemMoving()) + if (!IsMovingItem()) StartSpriteAnim(sPSSData->field_CB4, 0); } @@ -6517,7 +6564,7 @@ static void SetCursorMonData(void *pokemon, u8 mode) u16 gender; bool8 sanityIsBadEgg; - sPSSData->cursorMonItem = 0; + sPSSData->cursorMonItemId = ITEM_NONE; gender = MON_MALE; sanityIsBadEgg = FALSE; if (mode == MODE_PARTY) @@ -6540,7 +6587,7 @@ static void SetCursorMonData(void *pokemon, u8 mode) sPSSData->cursorMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); sPSSData->cursorMonPalette = GetMonFrontSpritePal(mon); gender = GetMonGender(mon); - sPSSData->cursorMonItem = GetMonData(mon, MON_DATA_HELD_ITEM); + sPSSData->cursorMonItemId = GetMonData(mon, MON_DATA_HELD_ITEM); } } else if (mode == MODE_BOX) @@ -6565,13 +6612,13 @@ static void SetCursorMonData(void *pokemon, u8 mode) sPSSData->cursorMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); sPSSData->cursorMonPalette = GetMonSpritePalFromSpeciesAndPersonality(sPSSData->cursorMonSpecies, otId, sPSSData->cursorMonPersonality); gender = GetGenderFromSpeciesAndPersonality(sPSSData->cursorMonSpecies, sPSSData->cursorMonPersonality); - sPSSData->cursorMonItem = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); + sPSSData->cursorMonItemId = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); } } else { sPSSData->cursorMonSpecies = SPECIES_NONE; - sPSSData->cursorMonItem = 0; + sPSSData->cursorMonItemId = ITEM_NONE; } if (sPSSData->cursorMonSpecies == SPECIES_NONE) @@ -6642,8 +6689,8 @@ static void SetCursorMonData(void *pokemon, u8 mode) txtPtr[0] = CHAR_SPACE; txtPtr[1] = EOS; - if (sPSSData->cursorMonItem != 0) - StringCopyPadded(sPSSData->cursorMonItemName, ItemId_GetName(sPSSData->cursorMonItem), CHAR_SPACE, 8); + if (sPSSData->cursorMonItemId != ITEM_NONE) + StringCopyPadded(sPSSData->cursorMonItemName, ItemId_GetName(sPSSData->cursorMonItemId), CHAR_SPACE, 8); else StringFill(sPSSData->cursorMonItemName, CHAR_SPACE, 8); } @@ -7326,9 +7373,9 @@ static bool8 sub_80CFB44(void) if (sPSSData->cursorMonSpecies == SPECIES_EGG) return FALSE; - if (!IsActiveItemMoving()) + if (!IsMovingItem()) { - if (sPSSData->cursorMonItem == 0) + if (sPSSData->cursorMonItemId == ITEM_NONE) { if (sPSSData->cursorMonSpecies == SPECIES_NONE) return FALSE; @@ -7337,7 +7384,7 @@ static bool8 sub_80CFB44(void) } else { - if (!ItemIsMail(sPSSData->cursorMonItem)) + if (!ItemIsMail(sPSSData->cursorMonItemId)) { SetMenuText(MENU_TAKE); SetMenuText(MENU_BAG); @@ -7347,7 +7394,7 @@ static bool8 sub_80CFB44(void) } else { - if (sPSSData->cursorMonItem == 0) + if (sPSSData->cursorMonItemId == ITEM_NONE) { if (sPSSData->cursorMonSpecies == SPECIES_NONE) return FALSE; @@ -7356,7 +7403,7 @@ static bool8 sub_80CFB44(void) } else { - if (ItemIsMail(sPSSData->cursorMonItem) == TRUE) + if (ItemIsMail(sPSSData->cursorMonItemId) == TRUE) return FALSE; SetMenuText(MENU_SWITCH); @@ -7387,7 +7434,7 @@ static void sub_80CFC14(void) struct SpritePalette spritePalettes[] = { - {gHandCursorPalette, TAG_PAL_DAC7}, + {gHandCursorPalette, PALTAG_7}, {} }; @@ -7437,7 +7484,7 @@ static void sub_80CFC14(void) static const struct SpriteTemplate gSpriteTemplate_857BA50 = { .tileTag = TAG_TILE_0, - .paletteTag = TAG_PAL_WAVEFORM, + .paletteTag = PALTAG_10, .oam = &sOamData_857BA0C, .anims = sSpriteAnimTable_857BA40, .images = NULL, @@ -7448,7 +7495,7 @@ static void sub_80CFC14(void) static const struct SpriteTemplate gSpriteTemplate_857BA68 = { .tileTag = TAG_TILE_1, - .paletteTag = TAG_PAL_WAVEFORM, + .paletteTag = PALTAG_10, .oam = &sOamData_857BA14, .anims = gDummySpriteAnimTable, .images = NULL, @@ -7458,8 +7505,8 @@ static void sub_80CFC14(void) LoadSpriteSheets(spriteSheets); LoadSpritePalettes(spritePalettes); - sPSSData->field_CD8[0] = IndexOfSpritePaletteTag(TAG_PAL_WAVEFORM); - sPSSData->field_CD8[1] = IndexOfSpritePaletteTag(TAG_PAL_DAC7); + sPSSData->field_CD8[0] = IndexOfSpritePaletteTag(PALTAG_10); + sPSSData->field_CD8[1] = IndexOfSpritePaletteTag(PALTAG_7); sub_80CD444(sBoxCursorArea, sBoxCursorPosition, &x, &y); spriteId = CreateSprite(&gSpriteTemplate_857BA50, x, y, 6); @@ -8260,9 +8307,28 @@ static bool8 sub_80D0BC0(void) return TRUE; } -static const u32 gUnknown_0857BB24[] = INCBIN_U32("graphics/pokemon_storage/unknown_frame.4bpp"); - -static const struct OamData sOamData_857BBA4 = +// The functions below handle new features of MOVE_ITEMS box option. +static bool32 IsItemIconAtPosition(u8, u8); +static const u32 *GetItemIconPic(u16); +static const u32 *GetItemIconPalette(u16); +static u8 GetNewItemIconIdx(void); +static void SetItemIconPosition(u8, u8, u8); +static void LoadItemIconGfx(u8, const u32 *, const u32 *); +static void SetItemIconAffineAnim(u8, u8); +static void SetItemIconActive(u8, bool8); +static u8 GetItemIconIdxByPosition(u8, u8); +static void SetItemIconCallback(u8, u8, u8, u8); +static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *); +static void SpriteCB_ItemIcon_WaitAnim(struct Sprite *); +static void SpriteCB_ItemIcon_ToHand(struct Sprite *); +static void SpriteCB_ItemIcon_ToMon(struct Sprite *); +static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *); +static void SpriteCB_ItemIcon_HideParty(struct Sprite *); +static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *); + +static const u32 sItemInfoFrame_Gfx[] = INCBIN_U32("graphics/pokemon_storage/item_info_frame.4bpp"); + +static const struct OamData sOamData_ItemIcon = { .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, @@ -8279,27 +8345,27 @@ static const struct OamData sOamData_857BBA4 = .affineParam = 0 }; -static const union AffineAnimCmd sSpriteAffineAnim_857BBAC[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_Small[] = { AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BBBC[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_Appear[] = { AFFINEANIMCMD_FRAME(88, 88, 0, 0), AFFINEANIMCMD_FRAME(5, 5, 0, 8), AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BBD4[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_Disappear[] = { AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_FRAME(-5, -5, 0, 8), AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BBEC[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_PickUp[] = { AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_FRAME(10, 10, 0, 12), @@ -8307,7 +8373,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_857BBEC[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BC0C[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_PutDown[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(-10, -10, 0, 12), @@ -8315,42 +8381,42 @@ static const union AffineAnimCmd sSpriteAffineAnim_857BC0C[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BC2C[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_PutAway[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(-5, -5, 0, 16), AFFINEANIMCMD_END }; -static const union AffineAnimCmd sSpriteAffineAnim_857BC44[] = +static const union AffineAnimCmd sAffineAnim_ItemIcon_Large[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_857BC44[] = +static const union AffineAnimCmd *const sAffineAnims_ItemIcon[] = { - sSpriteAffineAnim_857BBAC, - sSpriteAffineAnim_857BBBC, - sSpriteAffineAnim_857BBD4, - sSpriteAffineAnim_857BBEC, - sSpriteAffineAnim_857BC0C, - sSpriteAffineAnim_857BC2C, - sSpriteAffineAnim_857BC44 + [ITEM_ANIM_NONE] = sAffineAnim_ItemIcon_Small, + [ITEM_ANIM_APPEAR] = sAffineAnim_ItemIcon_Appear, + [ITEM_ANIM_DISAPPEAR] = sAffineAnim_ItemIcon_Disappear, + [ITEM_ANIM_PICK_UP] = sAffineAnim_ItemIcon_PickUp, + [ITEM_ANIM_PUT_DOWN] = sAffineAnim_ItemIcon_PutDown, + [ITEM_ANIM_PUT_AWAY] = sAffineAnim_ItemIcon_PutAway, + [ITEM_ANIM_LARGE] = sAffineAnim_ItemIcon_Large }; -static const struct SpriteTemplate gSpriteTemplate_857BC70 = +static const struct SpriteTemplate sSpriteTemplate_ItemIcon = { - .tileTag = TAG_TILE_7, - .paletteTag = TAG_PAL_DACB, - .oam = &sOamData_857BBA4, + .tileTag = GFXTAG_ITEM_ICON_0, + .paletteTag = PALTAG_ITEM_ICON_0, + .oam = &sOamData_ItemIcon, .anims = gDummySpriteAnimTable, .images = NULL, - .affineAnims = sSpriteAffineAnimTable_857BC44, + .affineAnims = sAffineAnims_ItemIcon, .callback = SpriteCallbackDummy, }; -static void sub_80D0C60(void) +static void CreateItemIconSprites(void) { s32 i; u8 spriteId; @@ -8359,55 +8425,38 @@ static void sub_80D0C60(void) if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { - spriteSheet.data = gUnknown_03000F78; + spriteSheet.data = sItemIconGfxBuffer; spriteSheet.size = 0x200; - spriteTemplate = gSpriteTemplate_857BC70; + spriteTemplate = sSpriteTemplate_ItemIcon; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - spriteSheet.tag = TAG_TILE_7 + i; + spriteSheet.tag = GFXTAG_ITEM_ICON_0 + i; LoadCompressedSpriteSheet(&spriteSheet); - sPSSData->field_2204[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0); - sPSSData->field_2204[i].palIndex = AllocSpritePalette(TAG_PAL_DACB + i); - sPSSData->field_2204[i].palIndex *= 16; - sPSSData->field_2204[i].palIndex += 0x100; - spriteTemplate.tileTag = TAG_TILE_7 + i; - spriteTemplate.paletteTag = TAG_PAL_DACB + i; + sPSSData->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0); + sPSSData->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); + sPSSData->itemIcons[i].palIndex *= 16; + sPSSData->itemIcons[i].palIndex += 0x100; + spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i; + spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i; spriteId = CreateSprite(&spriteTemplate, 0, 0, 11); - sPSSData->field_2204[i].sprite = &gSprites[spriteId]; - sPSSData->field_2204[i].sprite->invisible = TRUE; - sPSSData->field_2204[i].unk10 = 0; + sPSSData->itemIcons[i].sprite = &gSprites[spriteId]; + sPSSData->itemIcons[i].sprite->invisible = TRUE; + sPSSData->itemIcons[i].active = FALSE; } } - sPSSData->movingItem = 0; + sPSSData->movingItemId = ITEM_NONE; } -// The functions below handle new features of MOVE_ITEMS box option. -static bool32 sub_80D1324(u8 cursorArea, u8 cursorPos); -static const u32 *GetItemIconPic(u16 itemId); -static const u32 *GetItemIconPalette(u16 itemId); -static u8 sub_80D12E8(void); -static void sub_80D140C(u8 id, u8 cursorArea, u8 cursorPos); -static void sub_80D1524(u8 id, const u32 *itemTiles, const u32 *itemPal); -static void sub_80D15D4(u8 id, u8 animNum); -static void sub_80D1740(u8 id, bool8 arg1); -static u8 sub_80D1370(u8 cursorArea, u8 cursorPos); -static void sub_80D1604(u8 id, u8 arg1, u8 arg2, u8 arg3); -static void sub_80D1AD8(struct Sprite *sprite); -static void sub_80D1A48(struct Sprite *sprite); -static void sub_80D1A74(struct Sprite *sprite); -static void sub_80D1B14(struct Sprite *sprite); -static void sub_80D1B94(struct Sprite *sprite); -static void sub_80D1CCC(struct Sprite *sprite); -static void sub_80D1C30(struct Sprite *sprite); - static void sub_80D0D8C(u8 cursorArea, u8 cursorPos) { u16 heldItem; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - if (sub_80D1324(cursorArea, cursorPos)) + + // If we've already loaded the item here, stop + if (IsItemIconAtPosition(cursorArea, cursorPos)) return; switch (cursorArea) @@ -8426,16 +8475,16 @@ static void sub_80D0D8C(u8 cursorArea, u8 cursorPos) return; } - if (heldItem != 0) + if (heldItem != ITEM_NONE) { const u32 *tiles = GetItemIconPic(heldItem); const u32 *pal = GetItemIconPalette(heldItem); - u8 id = sub_80D12E8(); + u8 id = GetNewItemIconIdx(); - sub_80D140C(id, cursorArea, cursorPos); - sub_80D1524(id, tiles, pal); - sub_80D15D4(id, 1); - sub_80D1740(id, TRUE); + SetItemIconPosition(id, cursorArea, cursorPos); + LoadItemIconGfx(id, tiles, pal); + SetItemIconAffineAnim(id, ITEM_ANIM_APPEAR); + SetItemIconActive(id, TRUE); } } @@ -8446,79 +8495,78 @@ static void sub_80D0E50(u8 cursorArea, u8 cursorPos) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - id = sub_80D1370(cursorArea, cursorPos); - sub_80D15D4(id, 2); - sub_80D1604(id, 0, cursorArea, cursorPos); + id = GetItemIconIdxByPosition(cursorArea, cursorPos); + SetItemIconAffineAnim(id, ITEM_ANIM_DISAPPEAR); + SetItemIconCallback(id, ITEM_CB_WAIT_ANIM, cursorArea, cursorPos); } static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos) { u8 id; - u16 item; + u16 itemId; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - id = sub_80D1370(cursorArea, cursorPos); - item = 0; - sub_80D15D4(id, 3); - sub_80D1604(id, 1, cursorArea, cursorPos); - sub_80D140C(id, 2, 0); - if (cursorArea == CURSOR_AREA_IN_BOX) + id = GetItemIconIdxByPosition(cursorArea, cursorPos); + itemId = ITEM_NONE; + SetItemIconAffineAnim(id, ITEM_ANIM_PICK_UP); + SetItemIconCallback(id, ITEM_CB_TO_HAND, cursorArea, cursorPos); + SetItemIconPosition(id, CURSOR_AREA_IN_HAND, 0); + if (cursorArea == CURSOR_AREA_IN_BOX) { - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &item); + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &itemId); SetBoxMonIconObjMode(cursorPos, 1); } else { - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &item); + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &itemId); SetPartyMonIconObjMode(cursorPos, 1); } - sPSSData->movingItem = sPSSData->cursorMonItem; + sPSSData->movingItemId = sPSSData->cursorMonItemId; } -static void sub_80D0F38(u16 item) +static void sub_80D0F38(u16 itemId) { - const u32 *tiles = GetItemIconPic(item); - const u32 *pal = GetItemIconPalette(item); - u8 id = sub_80D12E8(); - - sub_80D1524(id, tiles, pal); - sub_80D15D4(id, 6); - sub_80D1604(id, 1, 0, 0); - sub_80D140C(id, 2, 0); - sub_80D1740(id, TRUE); - sPSSData->movingItem = item; + const u32 *tiles = GetItemIconPic(itemId); + const u32 *pal = GetItemIconPalette(itemId); + u8 id = GetNewItemIconIdx(); + LoadItemIconGfx(id, tiles, pal); + SetItemIconAffineAnim(id, ITEM_ANIM_LARGE); + SetItemIconCallback(id, ITEM_CB_TO_HAND, CURSOR_AREA_IN_BOX, 0); + SetItemIconPosition(id, CURSOR_AREA_IN_HAND, 0); + SetItemIconActive(id, TRUE); + sPSSData->movingItemId = itemId; } static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos) { u8 id; - u16 item; + u16 itemId; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - id = sub_80D1370(cursorArea, cursorPos); - sub_80D15D4(id, 3); - sub_80D1604(id, 3, 2, 0); + id = GetItemIconIdxByPosition(cursorArea, cursorPos); + SetItemIconAffineAnim(id, ITEM_ANIM_PICK_UP); + SetItemIconCallback(id, ITEM_CB_SWAP_TO_HAND, CURSOR_AREA_IN_HAND, 0); if (cursorArea == CURSOR_AREA_IN_BOX) { - item = GetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM); - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItem); - sPSSData->movingItem = item; + itemId = GetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM); + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItemId); + sPSSData->movingItemId = itemId; } else { - item = GetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM); - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItem); - sPSSData->movingItem = item; + itemId = GetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM); + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItemId); + sPSSData->movingItemId = itemId; } - id = sub_80D1370(2, 0); - sub_80D15D4(id, 4); - sub_80D1604(id, 4, cursorArea, cursorPos); + id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); + SetItemIconAffineAnim(id, ITEM_ANIM_PUT_DOWN); + SetItemIconCallback(id, ITEM_CB_SWAP_TO_MON, cursorArea, cursorPos); } static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos) @@ -8528,17 +8576,17 @@ static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - id = sub_80D1370(2, 0); - sub_80D15D4(id, 4); - sub_80D1604(id, 2, cursorArea, cursorPos); + id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); + SetItemIconAffineAnim(id, ITEM_ANIM_PUT_DOWN); + SetItemIconCallback(id, ITEM_CB_TO_MON, cursorArea, cursorPos); if (cursorArea == CURSOR_AREA_IN_BOX) { - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItem); + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItemId); SetBoxMonIconObjMode(cursorPos, 0); } else { - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItem); + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItemId); SetPartyMonIconObjMode(cursorPos, 0); } } @@ -8552,10 +8600,10 @@ static void Item_TakeMons(u8 cursorArea, u8 cursorPos) return; item = 0; - id = sub_80D1370(cursorArea, cursorPos); - sub_80D15D4(id, 2); - sub_80D1604(id, 0, cursorArea, cursorPos); - if (cursorArea == CURSOR_AREA_IN_BOX) + id = GetItemIconIdxByPosition(cursorArea, cursorPos); + SetItemIconAffineAnim(id, ITEM_ANIM_DISAPPEAR); + SetItemIconCallback(id, ITEM_CB_WAIT_ANIM, cursorArea, cursorPos); + if (cursorArea == CURSOR_AREA_IN_BOX) { SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &item); SetBoxMonIconObjMode(cursorPos, 1); @@ -8571,9 +8619,9 @@ static void sub_80D1194(void) { if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { - u8 id = sub_80D1370(2, 0); - sub_80D15D4(id, 5); - sub_80D1604(id, 0, 2, 0); + u8 id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); + SetItemIconAffineAnim(id, ITEM_ANIM_PUT_AWAY); + SetItemIconCallback(id, ITEM_CB_WAIT_ANIM, CURSOR_AREA_IN_HAND, 0); } } @@ -8584,122 +8632,120 @@ static void sub_80D11CC(void) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 && sPSSData->field_2204[i].unk8 == 1) - sub_80D1604(i, 7, 2, 0); + if (sPSSData->itemIcons[i].active + && sPSSData->itemIcons[i].cursorArea == CURSOR_AREA_IN_PARTY) + SetItemIconCallback(i, ITEM_CB_HIDE_PARTY, CURSOR_AREA_IN_HAND, 0); } } -static bool8 sub_80D1218(void) +static bool8 IsItemIconAnimActive(void) { s32 i; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10) + if (sPSSData->itemIcons[i].active) { - if (!sPSSData->field_2204[i].sprite->affineAnimEnded && sPSSData->field_2204[i].sprite->affineAnimBeginning) + if (!sPSSData->itemIcons[i].sprite->affineAnimEnded + && sPSSData->itemIcons[i].sprite->affineAnimBeginning) return TRUE; - if (sPSSData->field_2204[i].sprite->callback != SpriteCallbackDummy && sPSSData->field_2204[i].sprite->callback != sub_80D1AD8) + if (sPSSData->itemIcons[i].sprite->callback != SpriteCallbackDummy + && sPSSData->itemIcons[i].sprite->callback != SpriteCB_ItemIcon_SetPosToCursor) return TRUE; } } - return FALSE; } -static bool8 IsActiveItemMoving(void) +static bool8 IsMovingItem(void) { s32 i; if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 && sPSSData->field_2204[i].unk8 == 2) + if (sPSSData->itemIcons[i].active + && sPSSData->itemIcons[i].cursorArea == CURSOR_AREA_IN_HAND) return TRUE; } } - return FALSE; } static const u8 *GetMovingItemName(void) { - return ItemId_GetName(sPSSData->movingItem); + return ItemId_GetName(sPSSData->movingItemId); } -static u16 GetMovingItem(void) +static u16 GetMovingItemId(void) { - return sPSSData->movingItem; + return sPSSData->movingItemId; } -static u8 sub_80D12E8(void) +static u8 GetNewItemIconIdx(void) { u8 i; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 == 0) + if (!sPSSData->itemIcons[i].active) { - sPSSData->field_2204[i].unk10 = 1; + sPSSData->itemIcons[i].active = TRUE; return i; } } - - return 3; + return MAX_ITEM_ICONS; } -static bool32 sub_80D1324(u8 cursorArea, u8 cursorPos) +static bool32 IsItemIconAtPosition(u8 cursorArea, u8 cursorPos) { s32 i; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 - && sPSSData->field_2204[i].unk8 == cursorArea - && sPSSData->field_2204[i].unk9 == cursorPos) + if (sPSSData->itemIcons[i].active + && sPSSData->itemIcons[i].cursorArea == cursorArea + && sPSSData->itemIcons[i].cursorPos == cursorPos) return TRUE; } - return FALSE; } -static u8 sub_80D1370(u8 cursorArea, u8 cursorPos) +static u8 GetItemIconIdxByPosition(u8 cursorArea, u8 cursorPos) { u8 i; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 - && sPSSData->field_2204[i].unk8 == cursorArea - && sPSSData->field_2204[i].unk9 == cursorPos) + if (sPSSData->itemIcons[i].active + && sPSSData->itemIcons[i].cursorArea == cursorArea + && sPSSData->itemIcons[i].cursorPos == cursorPos) return i; } - - return 3; + return MAX_ITEM_ICONS; } -static u8 sub_80D13C4(struct Sprite *sprite) +static u8 GetItemIconIdxBySprite(struct Sprite *sprite) { u8 i; - for (i = 0; i < 3; i++) + for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->field_2204[i].unk10 - && sPSSData->field_2204[i].sprite == sprite) + if (sPSSData->itemIcons[i].active + && sPSSData->itemIcons[i].sprite == sprite) return i; } - - return 3; + return MAX_ITEM_ICONS; } -static void sub_80D140C(u8 id, u8 cursorArea, u8 cursorPos) +static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) { u8 row, column; - if (id >= 3) + if (id >= MAX_ITEM_ICONS) return; switch (cursorArea) @@ -8707,100 +8753,108 @@ static void sub_80D140C(u8 id, u8 cursorArea, u8 cursorPos) case CURSOR_AREA_IN_BOX: row = cursorPos % IN_BOX_ROWS; column = cursorPos / IN_BOX_ROWS; - sPSSData->field_2204[id].sprite->pos1.x = (24 * row) + 112; - sPSSData->field_2204[id].sprite->pos1.y = (24 * column) + 56; - sPSSData->field_2204[id].sprite->oam.priority = 2; + sPSSData->itemIcons[id].sprite->pos1.x = (24 * row) + 112; + sPSSData->itemIcons[id].sprite->pos1.y = (24 * column) + 56; + sPSSData->itemIcons[id].sprite->oam.priority = 2; break; case CURSOR_AREA_IN_PARTY: if (cursorPos == 0) { - sPSSData->field_2204[id].sprite->pos1.x = 116; - sPSSData->field_2204[id].sprite->pos1.y = 76; + sPSSData->itemIcons[id].sprite->pos1.x = 116; + sPSSData->itemIcons[id].sprite->pos1.y = 76; } else { - sPSSData->field_2204[id].sprite->pos1.x = 164; - sPSSData->field_2204[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; + sPSSData->itemIcons[id].sprite->pos1.x = 164; + sPSSData->itemIcons[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; } - sPSSData->field_2204[id].sprite->oam.priority = 1; + sPSSData->itemIcons[id].sprite->oam.priority = 1; break; } - sPSSData->field_2204[id].unk8 = cursorArea; - sPSSData->field_2204[id].unk9 = cursorPos; + sPSSData->itemIcons[id].cursorArea = cursorArea; + sPSSData->itemIcons[id].cursorPos = cursorPos; } -static void sub_80D1524(u8 id, const u32 *itemTiles, const u32 *itemPal) +static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) { s32 i; - if (id >= 3) + if (id >= MAX_ITEM_ICONS) return; CpuFastFill(0, sPSSData->field_42C4, 0x200); - LZ77UnCompWram(itemTiles, sPSSData->field_22C4); + LZ77UnCompWram(itemTiles, sPSSData->tileBuffer); for (i = 0; i < 3; i++) - CpuFastCopy(sPSSData->field_22C4 + (i * 0x60), sPSSData->field_42C4 + (i * 0x80), 0x60); + CpuFastCopy(&sPSSData->tileBuffer[i * 0x60], &sPSSData->field_42C4[i * 0x80], 0x60); - CpuFastCopy(sPSSData->field_42C4, sPSSData->field_2204[id].tiles, 0x200); + CpuFastCopy(sPSSData->field_42C4, sPSSData->itemIcons[id].tiles, 0x200); LZ77UnCompWram(itemPal, sPSSData->field_42C4); - LoadPalette(sPSSData->field_42C4, sPSSData->field_2204[id].palIndex, 0x20); + LoadPalette(sPSSData->field_42C4, sPSSData->itemIcons[id].palIndex, 0x20); } -static void sub_80D15D4(u8 id, u8 animNum) +static void SetItemIconAffineAnim(u8 id, u8 animNum) { - if (id >= 3) + if (id >= MAX_ITEM_ICONS) return; - StartSpriteAffineAnim(sPSSData->field_2204[id].sprite, animNum); + StartSpriteAffineAnim(sPSSData->itemIcons[id].sprite, animNum); } -static void sub_80D1604(u8 id, u8 arg1, u8 arg2, u8 arg3) +#define sItemIconId data[0] +#define sState data[0] +#define sCursorArea data[6] +#define sCursorPos data[7] + +static void SetItemIconCallback(u8 id, u8 callbackId, u8 cursorArea, u8 cursorPos) { - if (id >= 3) + if (id >= MAX_ITEM_ICONS) return; - switch (arg1) + switch (callbackId) { - case 0: - sPSSData->field_2204[id].sprite->data[0] = id; - sPSSData->field_2204[id].sprite->callback = sub_80D1A48; + case ITEM_CB_WAIT_ANIM: + sPSSData->itemIcons[id].sprite->sItemIconId = id; + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_WaitAnim; break; - case 1: - sPSSData->field_2204[id].sprite->data[0] = 0; - sPSSData->field_2204[id].sprite->callback = sub_80D1A74; + case ITEM_CB_TO_HAND: + sPSSData->itemIcons[id].sprite->sState = 0; + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToHand; break; - case 2: - sPSSData->field_2204[id].sprite->data[0] = 0; - sPSSData->field_2204[id].sprite->data[6] = arg2; - sPSSData->field_2204[id].sprite->data[7] = arg3; - sPSSData->field_2204[id].sprite->callback = sub_80D1B14; + case ITEM_CB_TO_MON: + sPSSData->itemIcons[id].sprite->sState = 0; + sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; + sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToMon; break; - case 3: - sPSSData->field_2204[id].sprite->data[0] = 0; - sPSSData->field_2204[id].sprite->callback = sub_80D1B94; - sPSSData->field_2204[id].sprite->data[6] = arg2; - sPSSData->field_2204[id].sprite->data[7] = arg3; + case ITEM_CB_SWAP_TO_HAND: + sPSSData->itemIcons[id].sprite->sState = 0; + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToHand; + sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; + sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; break; - case 4: - sPSSData->field_2204[id].sprite->data[0] = 0; - sPSSData->field_2204[id].sprite->data[6] = arg2; - sPSSData->field_2204[id].sprite->data[7] = arg3; - sPSSData->field_2204[id].sprite->callback = sub_80D1C30; + case ITEM_CB_SWAP_TO_MON: + sPSSData->itemIcons[id].sprite->sState = 0; + sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; + sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToMon; break; - case 7: - sPSSData->field_2204[id].sprite->callback = sub_80D1CCC; + case ITEM_CB_HIDE_PARTY: + // If cursor is on a Pokémon with a held item and + // the player closes the party menu, have the held + // item follow the Pokémon as the menu slides out + sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_HideParty; break; } } -static void sub_80D1740(u8 id, bool8 arg1) +static void SetItemIconActive(u8 id, bool8 active) { - if (id >= 3) + if (id >= MAX_ITEM_ICONS) return; - sPSSData->field_2204[id].unk10 = arg1; - sPSSData->field_2204[id].sprite->invisible = (arg1 == FALSE); + sPSSData->itemIcons[id].active = active; + sPSSData->itemIcons[id].sprite->invisible = (active == FALSE); } static const u32 *GetItemIconPic(u16 itemId) @@ -8817,90 +8871,88 @@ static void PrintItemDescription(void) { const u8 *description; - if (IsActiveItemMoving()) - description = ItemId_GetDescription(sPSSData->movingItem); + if (IsMovingItem()) + description = ItemId_GetDescription(sPSSData->movingItemId); else - description = ItemId_GetDescription(sPSSData->cursorMonItem); + description = ItemId_GetDescription(sPSSData->cursorMonItemId); FillWindowPixelBuffer(2, PIXEL_FILL(1)); AddTextPrinterParameterized5(2, 1, description, 4, 0, 0, NULL, 0, 1); } -static void sub_80D1818(void) +static void InitItemInfoWindow(void) { - sPSSData->field_2236 = 0x15; - LoadBgTiles(0, gUnknown_0857BB24, 0x80, 0x13A); - sub_80D19B4(0); + sPSSData->itemInfoWindowOffset = 21; + LoadBgTiles(0, sItemInfoFrame_Gfx, 0x80, 0x13A); + DrawItemInfoWindow(0); } -static bool8 sub_80D184C(void) +static bool8 UpdateItemInfoWindowSlideIn(void) { - s32 i, var; + s32 i, pos; - if (sPSSData->field_2236 == 0) + if (sPSSData->itemInfoWindowOffset == 0) return FALSE; - sPSSData->field_2236--; - var = 0x15 - sPSSData->field_2236; - for (i = 0; i < var; i++) - { - WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->field_2236 + i, i, 13, 1, 7, 15, 21); - } + sPSSData->itemInfoWindowOffset--; + pos = 21 - sPSSData->itemInfoWindowOffset; + for (i = 0; i < pos; i++) + WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); - sub_80D19B4(var); - return (sPSSData->field_2236 != 0); + DrawItemInfoWindow(pos); + return (sPSSData->itemInfoWindowOffset != 0); } -static bool8 sub_80D18E4(void) +static bool8 UpdateItemInfoWindowSlideOut(void) { - s32 i, var; + s32 i, pos; - if (sPSSData->field_2236 == 0x16) + if (sPSSData->itemInfoWindowOffset == 22) return FALSE; - if (sPSSData->field_2236 == 0) + if (sPSSData->itemInfoWindowOffset == 0) FillBgTilemapBufferRect(0, 0, 21, 12, 1, 9, 17); - sPSSData->field_2236++; - var = 0x15 - sPSSData->field_2236; - for (i = 0; i < var; i++) + sPSSData->itemInfoWindowOffset++; + pos = 21 - sPSSData->itemInfoWindowOffset; + for (i = 0; i < pos; i++) { - WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->field_2236 + i, i, 13, 1, 7, 15, 21); + WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); } - if (var >= 0) - sub_80D19B4(var); + if (pos >= 0) + DrawItemInfoWindow(pos); - FillBgTilemapBufferRect(0, 0, var + 1, 12, 1, 9, 0x11); + FillBgTilemapBufferRect(0, 0, pos + 1, 12, 1, 9, 0x11); ScheduleBgCopyTilemapToVram(0); return TRUE; } -static void sub_80D19B4(u32 arg0) +static void DrawItemInfoWindow(u32 pos) { - if (arg0 != 0) + if (pos != 0) { - FillBgTilemapBufferRect(0, 0x13A, 0, 0xC, arg0, 1, 0xFu); - FillBgTilemapBufferRect(0, 0x93A, 0, 0x14, arg0, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13A, 0, 0xC, pos, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x93A, 0, 0x14, pos, 1, 0xFu); } - FillBgTilemapBufferRect(0, 0x13B, arg0, 0xD, 1, 7, 0xFu); - FillBgTilemapBufferRect(0, 0x13C, arg0, 0xC, 1, 1, 0xFu); - FillBgTilemapBufferRect(0, 0x13D, arg0, 0x14, 1, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13B, pos, 0xD, 1, 7, 0xFu); + FillBgTilemapBufferRect(0, 0x13C, pos, 0xC, 1, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13D, pos, 0x14, 1, 1, 0xFu); ScheduleBgCopyTilemapToVram(0); } -static void sub_80D1A48(struct Sprite *sprite) +static void SpriteCB_ItemIcon_WaitAnim(struct Sprite *sprite) { if (sprite->affineAnimEnded) { - sub_80D1740(sprite->data[0], FALSE); + SetItemIconActive(sprite->sItemIconId, FALSE); sprite->callback = SpriteCallbackDummy; } } -static void sub_80D1A74(struct Sprite *sprite) +static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->data[1] = sprite->pos1.x << 4; @@ -8908,28 +8960,28 @@ static void sub_80D1A74(struct Sprite *sprite) sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; - sprite->data[0]++; + sprite->sState++; case 1: sprite->data[1] -= sprite->data[3]; sprite->data[2] -= sprite->data[4]; sprite->pos1.x = sprite->data[1] >> 4; sprite->pos1.y = sprite->data[2] >> 4; if (++sprite->data[5] > 11) - sprite->callback = sub_80D1AD8; + sprite->callback = SpriteCB_ItemIcon_SetPosToCursor; break; } } -static void sub_80D1AD8(struct Sprite *sprite) +static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *sprite) { sprite->pos1.x = sPSSData->field_CB4->pos1.x + 4; sprite->pos1.y = sPSSData->field_CB4->pos1.y + sPSSData->field_CB4->pos2.y + 8; sprite->oam.priority = sPSSData->field_CB4->oam.priority; } -static void sub_80D1B14(struct Sprite *sprite) +static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->data[1] = sprite->pos1.x << 4; @@ -8937,7 +8989,7 @@ static void sub_80D1B14(struct Sprite *sprite) sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; - sprite->data[0]++; + sprite->sState++; case 1: sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; @@ -8945,16 +8997,16 @@ static void sub_80D1B14(struct Sprite *sprite) sprite->pos1.y = sprite->data[2] >> 4; if (++sprite->data[5] > 11) { - sub_80D140C(sub_80D13C4(sprite), sprite->data[6], sprite->data[7]); + SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); sprite->callback = SpriteCallbackDummy; } break; } } -static void sub_80D1B94(struct Sprite *sprite) +static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->data[1] = sprite->pos1.x << 4; @@ -8962,7 +9014,7 @@ static void sub_80D1B94(struct Sprite *sprite) sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; - sprite->data[0]++; + sprite->sState++; case 1: sprite->data[1] -= sprite->data[3]; sprite->data[2] -= sprite->data[4]; @@ -8971,17 +9023,17 @@ static void sub_80D1B94(struct Sprite *sprite) sprite->pos2.x = gSineTable[sprite->data[5] * 8] >> 4; if (++sprite->data[5] > 11) { - sub_80D140C(sub_80D13C4(sprite), sprite->data[6], sprite->data[7]); + SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); sprite->pos2.x = 0; - sprite->callback = sub_80D1AD8; + sprite->callback = SpriteCB_ItemIcon_SetPosToCursor; } break; } } -static void sub_80D1C30(struct Sprite *sprite) +static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: sprite->data[1] = sprite->pos1.x << 4; @@ -8989,7 +9041,7 @@ static void sub_80D1C30(struct Sprite *sprite) sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; - sprite->data[0]++; + sprite->sState++; case 1: sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; @@ -8998,7 +9050,7 @@ static void sub_80D1C30(struct Sprite *sprite) sprite->pos2.x = -(gSineTable[sprite->data[5] * 8] >> 4); if (++sprite->data[5] > 11) { - sub_80D140C(sub_80D13C4(sprite), sprite->data[6], sprite->data[7]); + SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); sprite->callback = SpriteCallbackDummy; sprite->pos2.x = 0; } @@ -9006,22 +9058,27 @@ static void sub_80D1C30(struct Sprite *sprite) } } -static void sub_80D1CCC(struct Sprite *sprite) +static void SpriteCB_ItemIcon_HideParty(struct Sprite *sprite) { sprite->pos1.y -= 8; if (sprite->pos1.y + sprite->pos2.y < -16) { sprite->callback = SpriteCallbackDummy; - sub_80D1740(sub_80D13C4(sprite), FALSE); + SetItemIconActive(GetItemIconIdxBySprite(sprite), FALSE); } } -void nullsub_pss(void) +#undef sState +#undef sItemIconId +#undef sCursorArea +#undef sCursorPos + +static void ItemIconDummy_1(void) { } -void nullsub_98(void) +static void ItemIconDummy_2(void) { } From 3e804cb7d118bb2716c5ab7ffaa3f2b1ef699272 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 16 Apr 2021 00:58:54 -0400 Subject: [PATCH 124/762] document decoding buffer --- src/m4a_1.s | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/m4a_1.s b/src/m4a_1.s index d72336c1827f..62b913c8633c 100644 --- a/src/m4a_1.s +++ b/src/m4a_1.s @@ -678,7 +678,7 @@ sub_82DF758: ldr r1, [r4, o_SoundChannel_wav] add r2, r2, r1 add r2, r2, 0x10 - ldr r5, =gUnknown_03001300 + ldr r5, =gDecodingBuffer ldr r6, =gDeltaEncodingTable mov r7, 0x40 ldrb lr, [r2], 1 @@ -699,7 +699,7 @@ _081DD57C: subs r7, r7, 2 bgt _081DD568 _081DD594: - ldr r5, =gUnknown_03001300 + ldr r5, =gDecodingBuffer and r0, r3, 0x3F ldrsb r1, [r5, r0] pop {r0,r2,r5-r7,pc} @@ -1909,9 +1909,9 @@ _081DDD90: .align 2, 0 @ Don't pad with nop. .bss -gUnknown_03001300: +gDecodingBuffer: @ Used as a buffer for audio decoded from compressed DPCM .space 0x40 - .size gUnknown_03001300, .-gUnknown_03001300 + .size gDecodingBuffer, .-gDecodingBuffer .global gMPlayTrack_BGM gMPlayTrack_BGM: From e5f0d2f736ef4f1331430734e3c894cdbe4750b2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 15 Apr 2021 23:27:05 -0400 Subject: [PATCH 125/762] Doc storage - releasing, some cursor --- src/pokemon.c | 6 +- src/pokemon_storage_system.c | 1198 ++++++++++++++++++---------------- 2 files changed, 626 insertions(+), 578 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index 0b50a72f3ae4..1d736be74807 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -3926,9 +3926,9 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data) { u16 move = moves[i]; if (substruct1->moves[0] == move - || substruct1->moves[1] == move - || substruct1->moves[2] == move - || substruct1->moves[3] == move) + || substruct1->moves[1] == move + || substruct1->moves[2] == move + || substruct1->moves[3] == move) retVal |= gBitTable[i]; i++; } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index bcf2d40754f8..f86a4bbbf089 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -87,16 +87,16 @@ enum { MSG_CANT_STORE_MAIL, }; -// Formatting for the above messages +// IDs for how to resolve variables in the above messages enum { - MSG_FORMAT_NORMAL, - MSG_FORMAT_MON_NAME_1, - MSG_FORMAT_MON_NAME_2, // Unused - MSG_FORMAT_MON_NAME_3, // Unused - MSG_FORMAT_MON_NAME_4, - MSG_FORMAT_MON_NAME_5, // Unused - MSG_FORMAT_MON_NAME_6, - MSG_FORMAT_ITEM_NAME, + MSG_VAR_NONE, + MSG_VAR_MON_NAME_1, + MSG_VAR_MON_NAME_2, // Unused + MSG_VAR_MON_NAME_3, // Unused + MSG_VAR_RELEASE_MON_1, + MSG_VAR_RELEASE_MON_2, // Unused + MSG_VAR_RELEASE_MON_3, + MSG_VAR_ITEM_NAME, }; // IDs for menu selection items. See SetMenuText, HandleMenuInput, etc @@ -194,9 +194,15 @@ enum { CURSOR_AREA_BOX, CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box }; - #define CURSOR_AREA_IN_HAND CURSOR_AREA_BOX // Alt name for cursor area used by Move Items +enum { + CURSOR_ANIM_BOUNCE, + CURSOR_ANIM_STILL, + CURSOR_ANIM_OPEN, + CURSOR_ANIM_FIST, +}; + // Special box ids for the choose box menu #define BOXID_NONE_CHOSEN 200 #define BOXID_CANCELED 201 @@ -205,24 +211,24 @@ enum { PALTAG_MON_ICON_0 = 56000, PALTAG_MON_ICON_1, // Used implicitly in CreateMonIconSprite PALTAG_MON_ICON_2, // Used implicitly in CreateMonIconSprite - PALTAG_3, - PALTAG_4, - PALTAG_5, - PALTAG_CURSOR_MON, + PALTAG_3, // Unused + PALTAG_4, // Unused + PALTAG_5, // Unused + PALTAG_DISPLAY_MON, PALTAG_7, - PALTAG_MON_MARKING, + PALTAG_MARKING_COMBO, PALTAG_BOX_TITLE, PALTAG_10, PALTAG_ITEM_ICON_0, PALTAG_ITEM_ICON_1, // Used implicitly in CreateItemIconSprites PALTAG_ITEM_ICON_2, // Used implicitly in CreateItemIconSprites - PALTAG_14, + PALTAG_MARKING_MENU, }; enum { - TAG_TILE_0, - TAG_TILE_1, - GFXTAG_CURSOR_MON, + GFXTAG_CURSOR, + GFXTAG_CURSOR_SHADOW, + GFXTAG_DISPLAY_MON, GFXTAG_BOX_TITLE, GFXTAG_BOX_TITLE_ALT, GFXTAG_WAVEFORM, @@ -232,15 +238,19 @@ enum { GFXTAG_ITEM_ICON_2, // Used implicitly in CreateItemIconSprites GFXTAG_CHOOSE_BOX_MENU, GFXTAG_CHOOSE_BOX_MENU_SIDES, // Used implicitly in LoadChooseBoxMenuGfx - GFXTAG_12, - GFXTAG_13, - GFXTAG_14, - GFXTAG_15, - GFXTAG_MON_MARKING, - GFXTAG_17, + GFXTAG_12, // Unused + GFXTAG_MARKING_MENU, + GFXTAG_14, // Unused + GFXTAG_15, // Unused + GFXTAG_MARKING_COMBO, + GFXTAG_17, // Unused GFXTAG_18, }; +// The maximum number of Pokémon icons that can appear on-screen. +// By default the limit is 40 (though in practice only 37 can be). +#define MAX_MON_ICONS (IN_BOX_COUNT + PARTY_SIZE + 1 >= 40 ? IN_BOX_COUNT + PARTY_SIZE + 1 : 40) + // The maximum number of item icons that can appear on-screen while // moving held items. 1 in the cursor, and 2 more while switching // between 2 Pokémon with held items @@ -269,6 +279,11 @@ enum { ITEM_CB_HIDE_PARTY, }; +enum { + RELEASE_ANIM_RELEASE, + RELEASE_ANIM_CAME_BACK, +}; + struct Wallpaper { const u32 *tiles; @@ -315,14 +330,14 @@ struct ChooseBoxMenu { struct Sprite *menuSprite; struct Sprite *menuSideSprites[4]; - u32 unk_0014[3]; + u32 unused1[3]; struct Sprite *arrowSprites[2]; - u8 filler_0028[0x214]; + u8 unused2[0x214]; bool32 loadedPalette; u16 tileTag; u16 paletteTag; u8 curBox; - u8 unk_0245; + u8 unused3; u8 subpriority; }; @@ -331,8 +346,8 @@ struct ItemIcon struct Sprite *sprite; u8 *tiles; u16 palIndex; - u8 cursorArea; - u8 cursorPos; + u8 area; + u8 pos; bool8 active; }; @@ -394,9 +409,9 @@ struct PokemonStorageSystemData struct Sprite *partySprites[PARTY_SIZE]; struct Sprite *boxMonsSprites[IN_BOX_COUNT]; struct Sprite **field_B00; - struct Sprite **field_B04; - u16 field_B08[40]; - u16 field_B58[40]; + struct Sprite **releaseMonSpritePtr; + u16 numIconsPerSpecies[MAX_MON_ICONS]; + u16 iconSpeciesList[MAX_MON_ICONS]; u16 boxSpecies[IN_BOX_COUNT]; u32 boxPersonalities[IN_BOX_COUNT]; u8 field_C5C; @@ -416,7 +431,7 @@ struct PokemonStorageSystemData u8 menuWidth; u8 field_CAE; // Written to, but never read. u16 menuWindowId; - struct Sprite *field_CB4; + struct Sprite *cursorSprite; struct Sprite *field_CB8; s32 field_CBC; s32 field_CC0; @@ -431,21 +446,21 @@ struct PokemonStorageSystemData u8 field_CD5; u8 field_CD6; u8 field_CD7; - u8 field_CD8[2]; - const u32 *cursorMonPalette; - u32 cursorMonPersonality; - u16 cursorMonSpecies; - u16 cursorMonItemId; + u8 cursorPalNums[2]; + const u32 *displayMonPalette; + u32 displayMonPersonality; + u16 displayMonSpecies; + u16 displayMonItemId; u16 field_CE8; bool8 setMosaic; - u8 cursorMonMarkings; - u8 cursorMonLevel; - bool8 cursorMonIsEgg; - u8 cursorMonNick[POKEMON_NAME_LENGTH + 1]; - u8 cursorMonNickText[36]; - u8 cursorMonSpeciesName[36]; - u8 cursorMonGenderLvlText[36]; - u8 cursorMonItemName[36]; + u8 displayMonMarkings; + u8 displayMonLevel; + bool8 displayMonIsEgg; + u8 displayMonName[POKEMON_NAME_LENGTH + 1]; + u8 displayMonNameText[36]; + u8 displayMonSpeciesName[36]; + u8 displayMonGenderLvlText[36]; + u8 displayMonItemName[36]; bool8 (*monPlaceChangeFunc)(void); u8 monPlaceChangeState; u8 field_D91; @@ -455,16 +470,16 @@ struct PokemonStorageSystemData struct MonMarkingsMenu markMenu; struct ChooseBoxMenu chooseBoxMenu; struct Pokemon movingMon; - struct Pokemon field_2108; - s8 field_216C; - u8 field_216D; - s8 field_216E; - s8 field_216F; - s8 field_2170; - s8 field_2171; - u16 field_2172; - u16 field_2174; - u16 field_2176[8]; + struct Pokemon tempMon; + s8 canReleaseMon; + bool8 releaseStatusResolved; + s8 releaseCheckBoxId; + s8 releaseCheckBoxPos; + s8 releaseBoxId; + s8 releaseBoxPos; + u16 releaseCheckState; + u16 restrictedReleaseMonMoves; + u16 restrictedMoveList[8]; u8 field_2186; u8 field_2187; u8 summaryScreenMode; @@ -475,7 +490,7 @@ struct PokemonStorageSystemData } field_218C; u8 field_2190[40]; u8 boxTitleText[40]; - u8 field_21E0[POKEMON_NAME_LENGTH + 1]; + u8 releaseMonName[POKEMON_NAME_LENGTH + 1]; u8 itemName[20]; u8 inBoxMovingMode; u16 field_2200; @@ -483,10 +498,10 @@ struct PokemonStorageSystemData u16 movingItemId; u16 itemInfoWindowOffset; u8 field_2238; // Unused - u16 cursorMonPalOffset; - u16 *cursorMonTilePtr; - struct Sprite *cursorMonSprite; - u16 cursorMonPalBuffer[0x40]; + u16 displayMonPalOffset; + u16 *displayMonTilePtr; + struct Sprite *displayMonSprite; + u16 displayMonPalBuffer[0x40]; u8 tileBuffer[0x800]; u8 field_2AC4[0x1800]; // Unused u8 field_42C4[0x800]; @@ -578,25 +593,25 @@ static void sub_80CAEAC(void); static void CreateItemIconSprites(void); static void sub_80CFEA8(void); static void sub_80CDC0C(void); -static void sub_80CAF04(void); +static void InitMonIconFields(void); static void sub_80CA0D8(void); static void AddMenu(void); -static void sub_80CE250(void); -static void InitCanRelaseMonVars(void); +static void InitReleaseMon(void); +static void InitCanReleaseMonVars(void); static void sub_80D01B8(void); static void ReleaseMon(void); -static void RefreshCursorMonData(void); -static void CreateCursorMonSprite(void); +static void RefreshDisplayMonData(void); +static void CreateDisplayMonSprite(void); static void CreateMarkingComboSprite(void); static void CreateWaveformSprites(void); -static void sub_80CC064(void); -static void sub_80CE324(void); +static void ReshowReleaseMon(void); +static void TrySetCursorFistAnim(void); static void ClearBottomWindow(void); static void sub_80CA704(void); static void RemoveMenu(void); static void sub_80CE00C(void); static void sub_80D1194(void); -static void PrintCursorMonInfo(void); +static void PrintDisplayMonInfo(void); static void UpdateWaveformAnimation(void); static void AddWallpaperSetsMenu(void); static void CreateBoxScrollArrows(void); @@ -625,15 +640,15 @@ static void sub_80CDA68(void); static void sub_80CB950(void); static void sub_80CA9C0(void); static void SetUpDoShowPartyMenu(void); -static void BoxSetMosaic(void); +static void StartDisplayMonMosaicEffect(void); static void SpriteCB_ChooseBoxArrow(struct Sprite *); -static void sub_80CC100(struct Sprite *); +static void SpriteCB_HeldMon(struct Sprite *); static void sub_80CB278(struct Sprite *); static void SpriteCB_Arrow(struct Sprite *); static bool32 WaitForWallpaperGfxLoad(void); static bool8 InitPSSWindows(void); -static bool8 sub_80CC0A0(void); -static bool8 sub_80CE2A8(void); +static bool8 ResetReleaseMonSpritePtr(void); +static bool8 TryHideReleaseMon(void); static bool8 sub_80D0164(void); static bool8 IsInitBoxActive(void); static bool8 sub_80D01E4(void); @@ -649,7 +664,7 @@ static bool8 HidePartyMenu(void); static bool8 IsMovingItem(void); static bool8 sub_80D0580(u8); static bool8 sub_80D0BC0(void); -static bool8 GetCursorMonMosaic(void); +static bool8 IsDisplayMosaicActive(void); static bool8 DoWallpaperGfxChange(void); static bool8 DoMonPlaceChange(void); static bool8 IsMenuLoading(void); @@ -692,7 +707,7 @@ static void Cb_NameBox(u8); static void Cb_PrintCantStoreMail(u8); static void Cb_HandleMovingMonFromParty(u8); static void SetUpScrollToBox(u8); -static void sub_80CFE54(u8); +static void StartCursorAnim(u8); static void SetMovingMonPriority(u8); static void InitMonPlaceChange(u8); static void SetMonMarkings(u8); @@ -714,8 +729,8 @@ static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); static void SetWallpaperForCurrentBox(u8); static void AddWallpapersMenu(u8); static u16 GetMovingItemId(void); -static void LoadCursorMonGfx(u16, u32); -static void sub_80CA2D0(struct Sprite *); +static void LoadDisplayMonGfx(u16, u32); +static void SpriteCB_DisplayMonMosaic(struct Sprite *); static void SpriteCB_OutgoingBoxTitle(struct Sprite *); static void sub_80CBA3C(struct Sprite *); static void SpriteCB_IncomingBoxTitle(struct Sprite *); @@ -740,12 +755,12 @@ static bool8 MonPlaceChange_Move(void); static bool8 MonPlaceChange_Place(void); static bool8 sub_80CDEC4(void); static bool8 sub_80CDEB4(void); -static void sub_80CD444(u8, u8, u16 *, u16 *); +static void GetCursorCoordsByPos(u8, u8, u16 *, u16 *); static void SetShiftedMonData(u8, u8); static void SetMovedMonData(u8, u8); static void SetPlacedMonData(u8, u8); static void PurgeMonOrBoxMon(u8, u8); -static void SetCursorMonData(void *, u8); +static void SetDisplayMonData(void *, u8); static bool32 AtLeastThreeUsableMons(void); static u8 InBoxInput_Normal(void); static u8 InBoxInput_MovingMultiple(void); @@ -864,8 +879,8 @@ static const u8 sText_OutOf30[] = _("/30"); static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -static const u32 gPokemonStorageScrollingBGTileset[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); -static const u32 gPokemonStorageScrollingBGTilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); +static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); +static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); static const u32 gUnknown_08572280[] = INCBIN_U32("graphics/unknown/unknown_572280.gbapal"); static const u32 gUnknown_085722A0[] = INCBIN_U32("graphics/unknown/unknown_5722A0.bin.lz"); @@ -895,14 +910,14 @@ static const u16 gUnknown_085724BC[] = 0x1143, 0x1144, 0x1144, 0x1145, 0x1153, 0x1154, 0x1154, 0x1155, 0x1163, 0x1164, 0x1164, 0x1165, }; -static const u16 gWaveformPalette[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); -static const u32 gWaveformTiles[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); +static const u16 sWaveform_Pal[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); +static const u32 sWaveform_Gfx[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); static const u32 gUnknown_085726B4[] = INCBIN_U32("graphics/unused/unknown_5726B4.gbapal"); static const u32 gUnknown_085726F4[] = INCBIN_U32("graphics/unknown/unknown_5726F4.gbapal"); -static const struct WindowTemplate gUnknown_08572714[] = +static const struct WindowTemplate sWindowTemplates[] = { - { // 0 + { .bg = 1, .tilemapLeft = 0, .tilemapTop = 11, @@ -911,7 +926,7 @@ static const struct WindowTemplate gUnknown_08572714[] = .paletteNum = 3, .baseBlock = 0xC0, }, - { // 1 + { .bg = 0, .tilemapLeft = 11, .tilemapTop = 17, @@ -920,7 +935,7 @@ static const struct WindowTemplate gUnknown_08572714[] = .paletteNum = 15, .baseBlock = 0x14, }, - { // 2 + { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, @@ -974,20 +989,20 @@ static const struct BgTemplate gUnknown_08572734[] = static const struct SpritePalette gWaveformSpritePalette = { - gWaveformPalette, PALTAG_10 + sWaveform_Pal, PALTAG_10 }; static const struct SpriteSheet sSpriteSheet_Waveform = { - gWaveformTiles, sizeof(gWaveformTiles), GFXTAG_WAVEFORM + sWaveform_Gfx, sizeof(sWaveform_Gfx), GFXTAG_WAVEFORM }; -static const struct OamData sOamData_CursorMon; -static const struct SpriteTemplate sSpriteTemplate_CursorMon = +static const struct OamData sOamData_DisplayMon; +static const struct SpriteTemplate sSpriteTemplate_DisplayMon = { - .tileTag = GFXTAG_CURSOR_MON, - .paletteTag = PALTAG_CURSOR_MON, - .oam = &sOamData_CursorMon, + .tileTag = GFXTAG_DISPLAY_MON, + .paletteTag = PALTAG_DISPLAY_MON, + .oam = &sOamData_DisplayMon, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -996,37 +1011,37 @@ static const struct SpriteTemplate sSpriteTemplate_CursorMon = static const struct StorageMessage sMessages[] = { - [MSG_EXIT_BOX] = {gText_ExitFromBox, MSG_FORMAT_NORMAL}, - [MSG_WHAT_YOU_DO] = {gText_WhatDoYouWantToDo, MSG_FORMAT_NORMAL}, - [MSG_PICK_A_THEME] = {gText_PleasePickATheme, MSG_FORMAT_NORMAL}, - [MSG_PICK_A_WALLPAPER] = {gText_PickTheWallpaper, MSG_FORMAT_NORMAL}, - [MSG_IS_SELECTED] = {gText_PkmnIsSelected, MSG_FORMAT_MON_NAME_1}, - [MSG_JUMP_TO_WHICH_BOX] = {gText_JumpToWhichBox, MSG_FORMAT_NORMAL}, - [MSG_DEPOSIT_IN_WHICH_BOX] = {gText_DepositInWhichBox, MSG_FORMAT_NORMAL}, - [MSG_WAS_DEPOSITED] = {gText_PkmnWasDeposited, MSG_FORMAT_MON_NAME_1}, - [MSG_BOX_IS_FULL] = {gText_BoxIsFull2, MSG_FORMAT_NORMAL}, - [MSG_RELEASE_POKE] = {gText_ReleaseThisPokemon, MSG_FORMAT_NORMAL}, - [MSG_WAS_RELEASED] = {gText_PkmnWasReleased, MSG_FORMAT_MON_NAME_4}, - [MSG_BYE_BYE] = {gText_ByeByePkmn, MSG_FORMAT_MON_NAME_6}, - [MSG_MARK_POKE] = {gText_MarkYourPkmn, MSG_FORMAT_NORMAL}, - [MSG_LAST_POKE] = {gText_ThatsYourLastPkmn, MSG_FORMAT_NORMAL}, - [MSG_PARTY_FULL] = {gText_YourPartysFull, MSG_FORMAT_NORMAL}, - [MSG_HOLDING_POKE] = {gText_YoureHoldingAPkmn, MSG_FORMAT_NORMAL}, - [MSG_WHICH_ONE_WILL_TAKE] = {gText_WhichOneWillYouTake, MSG_FORMAT_NORMAL}, - [MSG_CANT_RELEASE_EGG] = {gText_YouCantReleaseAnEgg, MSG_FORMAT_NORMAL}, - [MSG_CONTINUE_BOX] = {gText_ContinueBoxOperations, MSG_FORMAT_NORMAL}, - [MSG_CAME_BACK] = {gText_PkmnCameBack, MSG_FORMAT_MON_NAME_1}, - [MSG_WORRIED] = {gText_WasItWorriedAboutYou, MSG_FORMAT_NORMAL}, - [MSG_SURPRISE] = {gText_FourEllipsesExclamation, MSG_FORMAT_NORMAL}, - [MSG_PLEASE_REMOVE_MAIL] = {gText_PleaseRemoveTheMail, MSG_FORMAT_NORMAL}, - [MSG_IS_SELECTED2] = {gText_PkmnIsSelected, MSG_FORMAT_ITEM_NAME}, - [MSG_GIVE_TO_MON] = {gText_GiveToAPkmn, MSG_FORMAT_NORMAL}, - [MSG_PLACED_IN_BAG] = {gText_PlacedItemInBag, MSG_FORMAT_ITEM_NAME}, - [MSG_BAG_FULL] = {gText_BagIsFull2, MSG_FORMAT_NORMAL}, - [MSG_PUT_IN_BAG] = {gText_PutItemInBag, MSG_FORMAT_NORMAL}, - [MSG_ITEM_IS_HELD] = {gText_ItemIsNowHeld, MSG_FORMAT_ITEM_NAME}, - [MSG_CHANGED_TO_ITEM] = {gText_ChangedToNewItem, MSG_FORMAT_ITEM_NAME}, - [MSG_CANT_STORE_MAIL] = {gText_MailCantBeStored, MSG_FORMAT_NORMAL}, + [MSG_EXIT_BOX] = {gText_ExitFromBox, MSG_VAR_NONE}, + [MSG_WHAT_YOU_DO] = {gText_WhatDoYouWantToDo, MSG_VAR_NONE}, + [MSG_PICK_A_THEME] = {gText_PleasePickATheme, MSG_VAR_NONE}, + [MSG_PICK_A_WALLPAPER] = {gText_PickTheWallpaper, MSG_VAR_NONE}, + [MSG_IS_SELECTED] = {gText_PkmnIsSelected, MSG_VAR_MON_NAME_1}, + [MSG_JUMP_TO_WHICH_BOX] = {gText_JumpToWhichBox, MSG_VAR_NONE}, + [MSG_DEPOSIT_IN_WHICH_BOX] = {gText_DepositInWhichBox, MSG_VAR_NONE}, + [MSG_WAS_DEPOSITED] = {gText_PkmnWasDeposited, MSG_VAR_MON_NAME_1}, + [MSG_BOX_IS_FULL] = {gText_BoxIsFull2, MSG_VAR_NONE}, + [MSG_RELEASE_POKE] = {gText_ReleaseThisPokemon, MSG_VAR_NONE}, + [MSG_WAS_RELEASED] = {gText_PkmnWasReleased, MSG_VAR_RELEASE_MON_1}, + [MSG_BYE_BYE] = {gText_ByeByePkmn, MSG_VAR_RELEASE_MON_3}, + [MSG_MARK_POKE] = {gText_MarkYourPkmn, MSG_VAR_NONE}, + [MSG_LAST_POKE] = {gText_ThatsYourLastPkmn, MSG_VAR_NONE}, + [MSG_PARTY_FULL] = {gText_YourPartysFull, MSG_VAR_NONE}, + [MSG_HOLDING_POKE] = {gText_YoureHoldingAPkmn, MSG_VAR_NONE}, + [MSG_WHICH_ONE_WILL_TAKE] = {gText_WhichOneWillYouTake, MSG_VAR_NONE}, + [MSG_CANT_RELEASE_EGG] = {gText_YouCantReleaseAnEgg, MSG_VAR_NONE}, + [MSG_CONTINUE_BOX] = {gText_ContinueBoxOperations, MSG_VAR_NONE}, + [MSG_CAME_BACK] = {gText_PkmnCameBack, MSG_VAR_MON_NAME_1}, + [MSG_WORRIED] = {gText_WasItWorriedAboutYou, MSG_VAR_NONE}, + [MSG_SURPRISE] = {gText_FourEllipsesExclamation, MSG_VAR_NONE}, + [MSG_PLEASE_REMOVE_MAIL] = {gText_PleaseRemoveTheMail, MSG_VAR_NONE}, + [MSG_IS_SELECTED2] = {gText_PkmnIsSelected, MSG_VAR_ITEM_NAME}, + [MSG_GIVE_TO_MON] = {gText_GiveToAPkmn, MSG_VAR_NONE}, + [MSG_PLACED_IN_BAG] = {gText_PlacedItemInBag, MSG_VAR_ITEM_NAME}, + [MSG_BAG_FULL] = {gText_BagIsFull2, MSG_VAR_NONE}, + [MSG_PUT_IN_BAG] = {gText_PutItemInBag, MSG_VAR_NONE}, + [MSG_ITEM_IS_HELD] = {gText_ItemIsNowHeld, MSG_VAR_ITEM_NAME}, + [MSG_CHANGED_TO_ITEM] = {gText_ChangedToNewItem, MSG_VAR_ITEM_NAME}, + [MSG_CANT_STORE_MAIL] = {gText_MailCantBeStored, MSG_VAR_NONE}, }; static const struct WindowTemplate sYesNoWindowTemplate = @@ -1040,7 +1055,7 @@ static const struct WindowTemplate sYesNoWindowTemplate = .baseBlock = 0x5C, }; -static const struct OamData sOamData_CursorMon = +static const struct OamData sOamData_DisplayMon = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1121,19 +1136,19 @@ static const struct SpriteTemplate sSpriteTemplate_Waveform = .callback = SpriteCallbackDummy, }; -static const struct OamData sOamData_85728EC; -static const struct SpriteTemplate gUnknown_085728D4 = +static const struct OamData sOamData_MonIcon; +static const struct SpriteTemplate sSpriteTemplate_MonIcon = { .tileTag = GFXTAG_18, .paletteTag = PALTAG_MON_ICON_0, - .oam = &sOamData_85728EC, + .oam = &sOamData_MonIcon, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; -static const struct OamData sOamData_85728EC = +static const struct OamData sOamData_MonIcon = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1150,23 +1165,23 @@ static const struct OamData sOamData_85728EC = .affineParam = 0 }; -static const union AffineAnimCmd gSpriteAffineAnim_85728F4[] = +static const union AffineAnimCmd sAffineAnim_ReleaseMon_Release[] = { AFFINEANIMCMD_FRAME(-2, -2, 0, 120), AFFINEANIMCMD_END }; -static const union AffineAnimCmd gSpriteAffineAnim_8572904[] = +static const union AffineAnimCmd sAffineAnim_ReleaseMon_CameBack[] = { AFFINEANIMCMD_FRAME(16, 16, 0, 0), AFFINEANIMCMD_FRAME(16, 16, 0, 15), AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const gSpriteAffineAnimTable_857291C[] = +static const union AffineAnimCmd *const sAffineAnims_ReleaseMon[] = { - gSpriteAffineAnim_85728F4, - gSpriteAffineAnim_8572904 + [RELEASE_ANIM_RELEASE] = sAffineAnim_ReleaseMon_Release, + [RELEASE_ANIM_CAME_BACK] = sAffineAnim_ReleaseMon_CameBack }; #include "data/wallpapers.h" @@ -1247,9 +1262,9 @@ static const struct SpriteTemplate sSpriteTemplate_Arrow = .callback = SpriteCB_Arrow }; -static const u16 gHandCursorPalette[] = INCBIN_U16("graphics/pokemon_storage/hand_cursor.gbapal"); -static const u8 gHandCursorTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor.4bpp"); -static const u8 gHandCursorShadowTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor_shadow.4bpp"); +static const u16 sHandCursor_Pal[] = INCBIN_U16("graphics/pokemon_storage/hand_cursor.gbapal"); +static const u8 sHandCursor_Gfx[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor.4bpp"); +static const u8 sHandCursorShadow_Gfx[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor_shadow.4bpp"); void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero2, s32 bytesToBuffer) { @@ -2026,7 +2041,7 @@ static void Cb_InitPSS(u8 taskId) sub_80C7F1C(); break; case 4: - sub_80CAF04(); + InitMonIconFields(); if (!sPSSData->isReshowingPSS) sub_80CD36C(); else @@ -2059,8 +2074,8 @@ static void Cb_InitPSS(u8 taskId) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - sPSSData->markMenu.baseTileTag = GFXTAG_13; - sPSSData->markMenu.basePaletteTag = PALTAG_14; + sPSSData->markMenu.baseTileTag = GFXTAG_MARKING_MENU; + sPSSData->markMenu.basePaletteTag = PALTAG_MARKING_MENU; InitMonMarkingsMenu(&sPSSData->markMenu); BufferMonMarkingsMenuTiles(); } @@ -2169,7 +2184,7 @@ static void Cb_MainPSS(u8 taskId) case INPUT_6: if (sPSSData->boxOption == OPTION_MOVE_MONS) { - if (IsMonBeingMoved() && ItemIsMail(sPSSData->cursorMonItemId)) + if (IsMonBeingMoved() && ItemIsMail(sPSSData->displayMonItemId)) sPSSData->state = 5; else SetPSSCallback(Cb_HidePartyPokemon); @@ -2227,7 +2242,7 @@ static void Cb_MainPSS(u8 taskId) case INPUT_11: if (!CanMovePartyMon()) { - if (ItemIsMail(sPSSData->cursorMonItemId)) + if (ItemIsMail(sPSSData->displayMonItemId)) { sPSSData->state = 5; } @@ -2326,7 +2341,7 @@ static void Cb_MainPSS(u8 taskId) sub_80CA9EC(); if (sPSSData->setMosaic) - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); sPSSData->state = 0; } break; @@ -2337,7 +2352,7 @@ static void Cb_MainPSS(u8 taskId) if (!sInPartyMenu && !IsMonBeingMoved()) { sub_80CE00C(); - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); } if (sPSSData->boxOption == OPTION_MOVE_ITEMS) @@ -2387,7 +2402,7 @@ static void Cb_MainPSS(u8 taskId) if (!sub_80D01E4()) { if (sPSSData->setMosaic) - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); sPSSData->state = 0; } break; @@ -2440,7 +2455,7 @@ static void Cb_HidePartyPokemon(u8 taskId) if (!sub_80CD554()) { if (sPSSData->setMosaic) - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); SetPSSCallback(Cb_MainPSS); } break; @@ -2452,12 +2467,12 @@ static void Cb_OnSelectedMon(u8 taskId) switch (sPSSData->state) { case 0: - if (!GetCursorMonMosaic()) + if (!IsDisplayMosaicActive()) { PlaySE(SE_SELECT); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) PrintMessage(MSG_IS_SELECTED); - else if (IsMovingItem() || sPSSData->cursorMonItemId != ITEM_NONE) + else if (IsMovingItem() || sPSSData->displayMonItemId != ITEM_NONE) PrintMessage(MSG_IS_SELECTED2); else PrintMessage(MSG_GIVE_TO_MON); @@ -2517,7 +2532,7 @@ static void Cb_OnSelectedMon(u8 taskId) { sPSSData->state = 3; } - else if (ItemIsMail(sPSSData->cursorMonItemId)) + else if (ItemIsMail(sPSSData->displayMonItemId)) { sPSSData->state = 4; } @@ -2533,11 +2548,11 @@ static void Cb_OnSelectedMon(u8 taskId) { sPSSData->state = 3; } - else if (sPSSData->cursorMonIsEgg) + else if (sPSSData->displayMonIsEgg) { sPSSData->state = 5; // Cannot release an Egg. } - else if (ItemIsMail(sPSSData->cursorMonItemId)) + else if (ItemIsMail(sPSSData->displayMonItemId)) { sPSSData->state = 4; } @@ -2655,7 +2670,7 @@ static void Cb_ShiftMon(u8 taskId) case 1: if (!DoMonPlaceChange()) { - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); SetPSSCallback(Cb_MainPSS); } break; @@ -2764,7 +2779,7 @@ static void Cb_DepositMenu(u8 taskId) if (!sub_80CB9BC()) { sub_80CE22C(); - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); sub_80CAB20(); SetPSSCallback(Cb_MainPSS); } @@ -2792,33 +2807,33 @@ static void Cb_ReleaseMon(u8 taskId) switch (Menu_ProcessInputNoWrapClearOnChoose()) { case MENU_B_PRESSED: - case 1: + case 1: // No ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); break; - case 0: + case 0: // Yes ClearBottomWindow(); - InitCanRelaseMonVars(); - sub_80CE250(); + InitCanReleaseMonVars(); + InitReleaseMon(); sPSSData->state++; break; } break; case 2: RunCanReleaseMon(); - if (!sub_80CE2A8()) + if (!TryHideReleaseMon()) { while (1) { - s8 r0 = RunCanReleaseMon(); - if (r0 == 1) + s8 canRelease = RunCanReleaseMon(); + if (canRelease == TRUE) { sPSSData->state++; break; } - else if (r0 == 0) + else if (!canRelease) { - sPSSData->state = 8; // Can't release the mon. + sPSSData->state = 8; break; } } @@ -2826,7 +2841,7 @@ static void Cb_ReleaseMon(u8 taskId) break; case 3: ReleaseMon(); - RefreshCursorMonData(); + RefreshDisplayMonData(); PrintMessage(MSG_WAS_RELEASED); sPSSData->state++; break; @@ -2857,7 +2872,7 @@ static void Cb_ReleaseMon(u8 taskId) if (!sub_80CB9BC()) { sub_80CE00C(); - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); sub_80CAB20(); sPSSData->state++; } @@ -2866,6 +2881,7 @@ static void Cb_ReleaseMon(u8 taskId) SetPSSCallback(Cb_MainPSS); break; case 8: + // Start "can't release" sequence PrintMessage(MSG_WAS_RELEASED); sPSSData->state++; break; @@ -2880,14 +2896,14 @@ static void Cb_ReleaseMon(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sub_80CC064(); + ReshowReleaseMon(); sPSSData->state++; } break; case 11: - if (!sub_80CC0A0()) + if (!ResetReleaseMonSpritePtr()) { - sub_80CE324(); + TrySetCursorFistAnim(); PrintMessage(MSG_CAME_BACK); sPSSData->state++; } @@ -2915,8 +2931,8 @@ static void Cb_ShowMarkMenu(u8 taskId) { case 0: PrintMessage(MSG_MARK_POKE); - sPSSData->markMenu.markings = sPSSData->cursorMonMarkings; - OpenMonMarkingsMenu(sPSSData->cursorMonMarkings, 0xb0, 0x10); + sPSSData->markMenu.markings = sPSSData->displayMonMarkings; + OpenMonMarkingsMenu(sPSSData->displayMonMarkings, 0xb0, 0x10); sPSSData->state++; break; case 1: @@ -2925,7 +2941,7 @@ static void Cb_ShowMarkMenu(u8 taskId) FreeMonMarkingsMenu(); ClearBottomWindow(); SetMonMarkings(sPSSData->markMenu.markings); - RefreshCursorMonData(); + RefreshDisplayMonData(); SetPSSCallback(Cb_MainPSS); } break; @@ -2937,7 +2953,7 @@ static void Cb_TakeItemForMoving(u8 taskId) switch (sPSSData->state) { case 0: - if (!ItemIsMail(sPSSData->cursorMonItemId)) + if (!ItemIsMail(sPSSData->displayMonItemId)) { ClearBottomWindow(); sPSSData->state++; @@ -2948,17 +2964,17 @@ static void Cb_TakeItemForMoving(u8 taskId) } break; case 1: - sub_80CFE54(2); + StartCursorAnim(CURSOR_ANIM_OPEN); Item_FromMonToMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); sPSSData->state++; break; case 2: if (!IsItemIconAnimActive()) { - sub_80CFE54(3); + StartCursorAnim(CURSOR_ANIM_FIST); ClearBottomWindow(); sub_80CE00C(); - PrintCursorMonInfo(); + PrintDisplayMonInfo(); sPSSData->state++; } break; @@ -2978,16 +2994,16 @@ static void Cb_GiveMovingItemToMon(u8 taskId) sPSSData->state++; break; case 1: - sub_80CFE54(2); + StartCursorAnim(CURSOR_ANIM_OPEN); Item_GiveMovingToMon((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); sPSSData->state++; break; case 2: if (!IsItemIconAnimActive()) { - sub_80CFE54(0); + StartCursorAnim(CURSOR_ANIM_BOUNCE); sub_80CE00C(); - PrintCursorMonInfo(); + PrintDisplayMonInfo(); PrintMessage(MSG_ITEM_IS_HELD); sPSSData->state++; } @@ -3011,7 +3027,7 @@ static void Cb_ItemToBag(u8 taskId) switch (sPSSData->state) { case 0: - if (!AddBagItem(sPSSData->cursorMonItemId, 1)) + if (!AddBagItem(sPSSData->displayMonItemId, 1)) { PlaySE(SE_FAILURE); PrintMessage(MSG_BAG_FULL); @@ -3036,7 +3052,7 @@ static void Cb_ItemToBag(u8 taskId) { ClearBottomWindow(); sub_80CE00C(); - PrintCursorMonInfo(); + PrintDisplayMonInfo(); sPSSData->state = 4; } break; @@ -3059,7 +3075,7 @@ static void Cb_SwitchSelectedItem(u8 taskId) switch (sPSSData->state) { case 0: - if (!ItemIsMail(sPSSData->cursorMonItemId)) + if (!ItemIsMail(sPSSData->displayMonItemId)) { ClearBottomWindow(); sPSSData->state++; @@ -3070,16 +3086,16 @@ static void Cb_SwitchSelectedItem(u8 taskId) } break; case 1: - sub_80CFE54(2); + StartCursorAnim(CURSOR_ANIM_OPEN); Item_SwitchMonsWithMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); sPSSData->state++; break; case 2: if (!IsItemIconAnimActive()) { - sub_80CFE54(3); + StartCursorAnim(CURSOR_ANIM_FIST); sub_80CE00C(); - PrintCursorMonInfo(); + PrintDisplayMonInfo(); PrintMessage(MSG_CHANGED_TO_ITEM); sPSSData->state++; } @@ -3187,7 +3203,7 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) case 4: if (!IsItemIconAnimActive()) { - sub_80CFE54(0); + StartCursorAnim(CURSOR_ANIM_BOUNCE); SetPSSCallback(Cb_MainPSS); } break; @@ -3666,8 +3682,8 @@ static void FreePSSData(void) static void SetScrollingBackground(void) { SetGpuReg(REG_OFFSET_BG3CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(3) | BGCNT_16COLOR | BGCNT_SCREENBASE(31)); - DecompressAndLoadBgGfxUsingHeap(3, gPokemonStorageScrollingBGTileset, 0, 0, 0); - LZ77UnCompVram(gPokemonStorageScrollingBGTilemap, (void *)BG_SCREEN_ADDR(31)); + DecompressAndLoadBgGfxUsingHeap(3, sScrollingBg_Gfx, 0, 0, 0); + LZ77UnCompVram(sScrollingBg_Tilemap, (void *)BG_SCREEN_ADDR(31)); } static void ScrollBackground(void) @@ -3688,7 +3704,7 @@ static void LoadPSSMenuGfx(void) static bool8 InitPSSWindows(void) { - if (!InitWindows(gUnknown_08572714)) + if (!InitWindows(sWindowTemplates)) { return FALSE; } @@ -3715,20 +3731,20 @@ static void sub_80CA0D8(void) LoadPalette(gUnknown_0857243C, 0x30, 0x20); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30)); - CreateCursorMonSprite(); + CreateDisplayMonSprite(); CreateMarkingComboSprite(); CreateWaveformSprites(); - RefreshCursorMonData(); + RefreshDisplayMonData(); } static void CreateMarkingComboSprite(void) { - sPSSData->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MON_MARKING, PALTAG_MON_MARKING, NULL); + sPSSData->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MARKING_COMBO, PALTAG_MARKING_COMBO, NULL); sPSSData->markingComboSprite->oam.priority = 1; sPSSData->markingComboSprite->subpriority = 1; sPSSData->markingComboSprite->pos1.x = 40; sPSSData->markingComboSprite->pos1.y = 150; - sPSSData->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MON_MARKING); + sPSSData->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); } static void CreateWaveformSprites(void) @@ -3744,33 +3760,33 @@ static void CreateWaveformSprites(void) } } -static void RefreshCursorMonData(void) +static void RefreshDisplayMonData(void) { - LoadCursorMonGfx(sPSSData->cursorMonSpecies, sPSSData->cursorMonPersonality); - PrintCursorMonInfo(); + LoadDisplayMonGfx(sPSSData->displayMonSpecies, sPSSData->displayMonPersonality); + PrintDisplayMonInfo(); UpdateWaveformAnimation(); ScheduleBgCopyTilemapToVram(0); } -static void BoxSetMosaic(void) +static void StartDisplayMonMosaicEffect(void) { - RefreshCursorMonData(); - if (sPSSData->cursorMonSprite) + RefreshDisplayMonData(); + if (sPSSData->displayMonSprite) { - sPSSData->cursorMonSprite->oam.mosaic = TRUE; - sPSSData->cursorMonSprite->data[0] = 10; - sPSSData->cursorMonSprite->data[1] = 1; - sPSSData->cursorMonSprite->callback = sub_80CA2D0; - SetGpuReg(REG_OFFSET_MOSAIC, (sPSSData->cursorMonSprite->data[0] << 12) | (sPSSData->cursorMonSprite->data[0] << 8)); + sPSSData->displayMonSprite->oam.mosaic = TRUE; + sPSSData->displayMonSprite->data[0] = 10; + sPSSData->displayMonSprite->data[1] = 1; + sPSSData->displayMonSprite->callback = SpriteCB_DisplayMonMosaic; + SetGpuReg(REG_OFFSET_MOSAIC, (sPSSData->displayMonSprite->data[0] << 12) | (sPSSData->displayMonSprite->data[0] << 8)); } } -static u8 GetCursorMonMosaic(void) +static u8 IsDisplayMosaicActive(void) { - return sPSSData->cursorMonSprite->oam.mosaic; + return sPSSData->displayMonSprite->oam.mosaic; } -static void sub_80CA2D0(struct Sprite *sprite) +static void SpriteCB_DisplayMonMosaic(struct Sprite *sprite) { sprite->data[0] -= sprite->data[1]; if (sprite->data[0] < 0) @@ -3783,22 +3799,22 @@ static void sub_80CA2D0(struct Sprite *sprite) } } -static void CreateCursorMonSprite(void) +static void CreateDisplayMonSprite(void) { u16 i; u16 tileStart; u8 palSlot; u8 spriteId; - struct SpriteSheet sheet = {sPSSData->tileBuffer, MON_PIC_SIZE, GFXTAG_CURSOR_MON}; - struct SpritePalette palette = {sPSSData->cursorMonPalBuffer, PALTAG_CURSOR_MON}; - struct SpriteTemplate template = sSpriteTemplate_CursorMon; + struct SpriteSheet sheet = {sPSSData->tileBuffer, MON_PIC_SIZE, GFXTAG_DISPLAY_MON}; + struct SpritePalette palette = {sPSSData->displayMonPalBuffer, PALTAG_DISPLAY_MON}; + struct SpriteTemplate template = sSpriteTemplate_DisplayMon; for (i = 0; i < MON_PIC_SIZE; i++) sPSSData->tileBuffer[i] = 0; for (i = 0; i < 16; i++) - sPSSData->cursorMonPalBuffer[i] = 0; + sPSSData->displayMonPalBuffer[i] = 0; - sPSSData->cursorMonSprite = NULL; + sPSSData->displayMonSprite = NULL; do { @@ -3814,59 +3830,59 @@ static void CreateCursorMonSprite(void) if (spriteId == MAX_SPRITES) break; - sPSSData->cursorMonSprite = &gSprites[spriteId]; - sPSSData->cursorMonPalOffset = palSlot * 16 + 0x100; - sPSSData->cursorMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; + sPSSData->displayMonSprite = &gSprites[spriteId]; + sPSSData->displayMonPalOffset = palSlot * 16 + 0x100; + sPSSData->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; } while (0); - if (sPSSData->cursorMonSprite == NULL) + if (sPSSData->displayMonSprite == NULL) { - FreeSpriteTilesByTag(GFXTAG_CURSOR_MON); - FreeSpritePaletteByTag(PALTAG_CURSOR_MON); + FreeSpriteTilesByTag(GFXTAG_DISPLAY_MON); + FreeSpritePaletteByTag(PALTAG_DISPLAY_MON); } } -static void LoadCursorMonGfx(u16 species, u32 pid) +static void LoadDisplayMonGfx(u16 species, u32 pid) { - if (sPSSData->cursorMonSprite == NULL) + if (sPSSData->displayMonSprite == NULL) return; if (species != SPECIES_NONE) { LoadSpecialPokePic(&gMonFrontPicTable[species], sPSSData->tileBuffer, species, pid, TRUE); - LZ77UnCompWram(sPSSData->cursorMonPalette, sPSSData->cursorMonPalBuffer); - CpuCopy32(sPSSData->tileBuffer, sPSSData->cursorMonTilePtr, MON_PIC_SIZE); - LoadPalette(sPSSData->cursorMonPalBuffer, sPSSData->cursorMonPalOffset, 0x20); - sPSSData->cursorMonSprite->invisible = FALSE; + LZ77UnCompWram(sPSSData->displayMonPalette, sPSSData->displayMonPalBuffer); + CpuCopy32(sPSSData->tileBuffer, sPSSData->displayMonTilePtr, MON_PIC_SIZE); + LoadPalette(sPSSData->displayMonPalBuffer, sPSSData->displayMonPalOffset, 0x20); + sPSSData->displayMonSprite->invisible = FALSE; } else { - sPSSData->cursorMonSprite->invisible = TRUE; + sPSSData->displayMonSprite->invisible = TRUE; } } -static void PrintCursorMonInfo(void) +static void PrintDisplayMonInfo(void) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - AddTextPrinterParameterized(0, 1, sPSSData->cursorMonNickText, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->cursorMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->cursorMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 0, sPSSData->cursorMonItemName, 6, 43, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 1, sPSSData->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sPSSData->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sPSSData->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 0, sPSSData->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); } else { - AddTextPrinterParameterized(0, 0, sPSSData->cursorMonItemName, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 1, sPSSData->cursorMonNickText, 6, 13, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->cursorMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->cursorMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 0, sPSSData->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 1, sPSSData->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sPSSData->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sPSSData->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); } CopyWindowToVram(0, 2); - if (sPSSData->cursorMonSpecies != SPECIES_NONE) + if (sPSSData->displayMonSpecies != SPECIES_NONE) { - UpdateMonMarkingTiles(sPSSData->cursorMonMarkings, sPSSData->markingComboTilesPtr); + UpdateMonMarkingTiles(sPSSData->displayMonMarkings, sPSSData->markingComboTilesPtr); sPSSData->markingComboSprite->invisible = FALSE; } else @@ -3880,7 +3896,7 @@ static void UpdateWaveformAnimation(void) { u16 i; - if (sPSSData->cursorMonSpecies != SPECIES_NONE) + if (sPSSData->displayMonSpecies != SPECIES_NONE) { // Start animation sub_80D27AC(0, 0, 0, 8, 2); @@ -4039,7 +4055,7 @@ static void sub_80CAA74(void) for (i = 1; i < PARTY_SIZE; i++) { - s32 species = GetMonData(gPlayerParty + i, MON_DATA_SPECIES); + s32 species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); sub_80CAAA8(i, (species != SPECIES_NONE)); } } @@ -4098,7 +4114,7 @@ static bool8 DoShowPartyMenu(void) if (!sub_80CD554()) { if (sPSSData->setMosaic) - BoxSetMosaic(); + StartDisplayMonMosaicEffect(); sPSSData->showPartyMenuState++; } break; @@ -4132,23 +4148,23 @@ static void PrintMessage(u8 id) DynamicPlaceholderTextUtil_Reset(); switch (sMessages[id].format) { - case MSG_FORMAT_NORMAL: + case MSG_VAR_NONE: break; - case MSG_FORMAT_MON_NAME_1: - case MSG_FORMAT_MON_NAME_2: - case MSG_FORMAT_MON_NAME_3: - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->cursorMonNick); + case MSG_VAR_MON_NAME_1: + case MSG_VAR_MON_NAME_2: + case MSG_VAR_MON_NAME_3: + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->displayMonName); break; - case MSG_FORMAT_MON_NAME_4: - case MSG_FORMAT_MON_NAME_5: - case MSG_FORMAT_MON_NAME_6: - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->field_21E0); + case MSG_VAR_RELEASE_MON_1: + case MSG_VAR_RELEASE_MON_2: + case MSG_VAR_RELEASE_MON_3: + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->releaseMonName); break; - case MSG_FORMAT_ITEM_NAME: + case MSG_VAR_ITEM_NAME: if (IsMovingItem()) txtPtr = StringCopy(sPSSData->itemName, GetMovingItemName()); else - txtPtr = StringCopy(sPSSData->itemName, sPSSData->cursorMonItemName); + txtPtr = StringCopy(sPSSData->itemName, sPSSData->displayMonItemName); while (*(txtPtr - 1) == CHAR_SPACE) txtPtr--; @@ -4242,19 +4258,19 @@ static void sub_80CAEAC(void) if (sMovingItemId != ITEM_NONE) { sub_80D0F38(sMovingItemId); - sub_80CFE54(3); + StartCursorAnim(CURSOR_ANIM_FIST); } } -static void sub_80CAF04(void) +static void InitMonIconFields(void) { u16 i; LoadMonIconPalettes(); - for (i = 0; i < 40; i++) - sPSSData->field_B08[i] = 0; - for (i = 0; i < 40; i++) - sPSSData->field_B58[i] = 0; + for (i = 0; i < MAX_MON_ICONS; i++) + sPSSData->numIconsPerSpecies[i] = 0; + for (i = 0; i < MAX_MON_ICONS; i++) + sPSSData->iconSpeciesList[i] = SPECIES_NONE; for (i = 0; i < PARTY_SIZE; i++) sPSSData->partySprites[i] = NULL; for (i = 0; i < IN_BOX_COUNT; i++) @@ -4264,7 +4280,7 @@ static void sub_80CAF04(void) sPSSData->field_78C = 0; } -static u8 sub_80CAFAC(void) +static u8 GetMonIconPriorityByCursorPos(void) { return (IsCursorInBox() ? 2 : 1); } @@ -4273,10 +4289,10 @@ static void CreateMovingMonIcon(void) { u32 personality = GetMonData(&sPSSData->movingMon, MON_DATA_PERSONALITY); u16 species = GetMonData(&sPSSData->movingMon, MON_DATA_SPECIES2); - u8 priority = sub_80CAFAC(); + u8 priority = GetMonIconPriorityByCursorPos(); sPSSData->movingMonSprite = CreateMonIconSprite(species, personality, 0, 0, priority, 7); - sPSSData->movingMonSprite->callback = sub_80CC100; + sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; } static void InitBoxMonSprites(u8 boxId) @@ -4744,8 +4760,8 @@ static void sub_80CBC14(u8 mode, u8 id) return; } - sPSSData->movingMonSprite->callback = sub_80CC100; - sPSSData->movingMonSprite->oam.priority = sub_80CAFAC(); + sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; + sPSSData->movingMonSprite->oam.priority = GetMonIconPriorityByCursorPos(); sPSSData->movingMonSprite->subpriority = 7; } @@ -4796,7 +4812,7 @@ static bool8 sub_80CBDC4(void) { sPSSData->movingMonSprite->oam.priority = (*sPSSData->field_B00)->oam.priority; sPSSData->movingMonSprite->subpriority = (*sPSSData->field_B00)->subpriority; - (*sPSSData->field_B00)->oam.priority = sub_80CAFAC(); + (*sPSSData->field_B00)->oam.priority = GetMonIconPriorityByCursorPos(); (*sPSSData->field_B00)->subpriority = 7; } @@ -4806,76 +4822,77 @@ static bool8 sub_80CBDC4(void) sPSSData->movingMonSprite = (*sPSSData->field_B00); *sPSSData->field_B00 = sprite; - sPSSData->movingMonSprite->callback = sub_80CC100; + sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; (*sPSSData->field_B00)->callback = SpriteCallbackDummy; } return TRUE; } -static void sub_80CBF14(u8 mode, u8 position) +static void SetReleaseMon(u8 mode, u8 position) { switch (mode) { case MODE_PARTY: - sPSSData->field_B04 = &sPSSData->partySprites[position]; + sPSSData->releaseMonSpritePtr = &sPSSData->partySprites[position]; break; case MODE_BOX: - sPSSData->field_B04 = &sPSSData->boxMonsSprites[position]; + sPSSData->releaseMonSpritePtr = &sPSSData->boxMonsSprites[position]; break; case MODE_MOVE: - sPSSData->field_B04 = &sPSSData->movingMonSprite; + sPSSData->releaseMonSpritePtr = &sPSSData->movingMonSprite; break; default: return; } - if (*sPSSData->field_B04 != NULL) + if (*sPSSData->releaseMonSpritePtr != NULL) { - InitSpriteAffineAnim(*sPSSData->field_B04); - (*sPSSData->field_B04)->oam.affineMode = ST_OAM_AFFINE_NORMAL; - (*sPSSData->field_B04)->affineAnims = gSpriteAffineAnimTable_857291C; - StartSpriteAffineAnim(*sPSSData->field_B04, 0); + InitSpriteAffineAnim(*sPSSData->releaseMonSpritePtr); + (*sPSSData->releaseMonSpritePtr)->oam.affineMode = ST_OAM_AFFINE_NORMAL; + (*sPSSData->releaseMonSpritePtr)->affineAnims = sAffineAnims_ReleaseMon; + StartSpriteAffineAnim(*sPSSData->releaseMonSpritePtr, RELEASE_ANIM_RELEASE); } } -static bool8 sub_80CBFD8(void) +static bool8 TryHideReleaseMonSprite(void) { - if (*sPSSData->field_B04 == NULL || (*sPSSData->field_B04)->invisible) + if (*sPSSData->releaseMonSpritePtr == NULL + || (*sPSSData->releaseMonSpritePtr)->invisible) return FALSE; - if ((*sPSSData->field_B04)->affineAnimEnded) - (*sPSSData->field_B04)->invisible = TRUE; + if ((*sPSSData->releaseMonSpritePtr)->affineAnimEnded) + (*sPSSData->releaseMonSpritePtr)->invisible = TRUE; return TRUE; } -static void sub_80CC020(void) +static void DestroyReleaseMonIcon(void) { - if (*sPSSData->field_B04 != NULL) + if (*sPSSData->releaseMonSpritePtr != NULL) { - FreeOamMatrix((*sPSSData->field_B04)->oam.matrixNum); - DestroyBoxMonIcon(*sPSSData->field_B04); - *sPSSData->field_B04 = NULL; + FreeOamMatrix((*sPSSData->releaseMonSpritePtr)->oam.matrixNum); + DestroyBoxMonIcon(*sPSSData->releaseMonSpritePtr); + *sPSSData->releaseMonSpritePtr = NULL; } } -static void sub_80CC064(void) +static void ReshowReleaseMon(void) { - if (*sPSSData->field_B04 != NULL) + if (*sPSSData->releaseMonSpritePtr != NULL) { - (*sPSSData->field_B04)->invisible = FALSE; - StartSpriteAffineAnim(*sPSSData->field_B04, 1); + (*sPSSData->releaseMonSpritePtr)->invisible = FALSE; + StartSpriteAffineAnim(*sPSSData->releaseMonSpritePtr, RELEASE_ANIM_CAME_BACK); } } -static bool8 sub_80CC0A0(void) +static bool8 ResetReleaseMonSpritePtr(void) { - if (sPSSData->field_B04 == NULL) + if (sPSSData->releaseMonSpritePtr == NULL) return FALSE; - if ((*sPSSData->field_B04)->affineAnimEnded) - sPSSData->field_B04 = NULL; + if ((*sPSSData->releaseMonSpritePtr)->affineAnimEnded) + sPSSData->releaseMonSpritePtr = NULL; return TRUE; } @@ -4885,51 +4902,57 @@ static void SetMovingMonPriority(u8 priority) sPSSData->movingMonSprite->oam.priority = priority; } -static void sub_80CC100(struct Sprite *sprite) +static void SpriteCB_HeldMon(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->field_CB4->pos1.x; - sprite->pos1.y = sPSSData->field_CB4->pos1.y + sPSSData->field_CB4->pos2.y + 4; + sprite->pos1.x = sPSSData->cursorSprite->pos1.x; + sprite->pos1.y = sPSSData->cursorSprite->pos1.y + sPSSData->cursorSprite->pos2.y + 4; } -static u16 sub_80CC124(u16 species) +static u16 TryLoadMonIconTiles(u16 species) { - u16 i, var; + u16 i, offset; - for (i = 0; i < 40; i++) + // Search icon list for this species + for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->field_B58[i] == species) + if (sPSSData->iconSpeciesList[i] == species) break; } - if (i == 40) + if (i == MAX_MON_ICONS) { - for (i = 0; i < 40; i++) + // Species not present in the list + // Find first empty spot in the list to put it + for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->field_B58[i] == 0) + if (sPSSData->iconSpeciesList[i] == 0) break; } - if (i == 40) + + // Failed to find an empty spot + if (i == MAX_MON_ICONS) return 0xFFFF; } - sPSSData->field_B58[i] = species; - sPSSData->field_B08[i]++; - var = 16 * i; - CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + var * 32, 0x200); + // Add species to icon list and load tiles + sPSSData->iconSpeciesList[i] = species; + sPSSData->numIconsPerSpecies[i]++; + offset = 16 * i; + CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + offset * 32, 0x200); - return var; + return offset; } -static void sub_80CC1E0(u16 species) +static void RemoveSpeciesFromIconList(u16 species) { u16 i; - for (i = 0; i < 40; i++) + for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->field_B58[i] == species) + if (sPSSData->iconSpeciesList[i] == species) { - if (--sPSSData->field_B08[i] == 0) - sPSSData->field_B58[i] = 0; + if (--sPSSData->numIconsPerSpecies[i] == 0) + sPSSData->iconSpeciesList[i] = SPECIES_NONE; break; } } @@ -4939,18 +4962,18 @@ static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s { u16 tileNum; u8 spriteId; - struct SpriteTemplate template = gUnknown_085728D4; + struct SpriteTemplate template = sSpriteTemplate_MonIcon; species = GetIconSpecies(species, personality); template.paletteTag = PALTAG_MON_ICON_0 + gMonIconPaletteIndices[species]; - tileNum = sub_80CC124(species); + tileNum = TryLoadMonIconTiles(species); if (tileNum == 0xFFFF) return NULL; spriteId = CreateSprite(&template, x, y, subpriority); if (spriteId == MAX_SPRITES) { - sub_80CC1E0(species); + RemoveSpeciesFromIconList(species); return NULL; } @@ -4962,7 +4985,7 @@ static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s static void DestroyBoxMonIcon(struct Sprite *sprite) { - sub_80CC1E0(sprite->data[0]); + RemoveSpeciesFromIconList(sprite->data[0]); DestroySprite(sprite); } @@ -5580,7 +5603,7 @@ static void sub_80CD3EC(void) } } -static void sub_80CD444(u8 cursorArea, u8 cursorPosition, u16 *x, u16 *y) +static void GetCursorCoordsByPos(u8 cursorArea, u8 cursorPosition, u16 *x, u16 *y) { switch (cursorArea) { @@ -5591,36 +5614,36 @@ static void sub_80CD444(u8 cursorArea, u8 cursorPosition, u16 *x, u16 *y) case CURSOR_AREA_IN_PARTY: if (cursorPosition == 0) { - *x = 0x68; - *y = 0x34; + *x = 104; + *y = 52; } else if (cursorPosition == PARTY_SIZE) { - *x = 0x98; - *y = 0x84; + *x = 152; + *y = 132; } else { - *x = 0x98; + *x = 152; *y = (cursorPosition - 1) * 24 + 4; } break; case CURSOR_AREA_BOX: - *x = 0xa2; - *y = 0x0c; + *x = 162; + *y = 12; break; case CURSOR_AREA_BUTTONS: *y = sIsMonBeingMoved ? 8 : 14; - *x = cursorPosition * 0x58 + 0x78; + *x = cursorPosition * 88 + 120; break; case 4: - *x = 0xa0; - *y = 0x60; + *x = 160; + *y = 96; break; } } -static u16 sub_80CD504(void) +static u16 GetSpeciesAtCursorPosition(void) { switch (sBoxCursorArea) { @@ -5648,35 +5671,35 @@ static bool8 sub_80CD554(void) { sPSSData->field_CBC += sPSSData->field_CC4; sPSSData->field_CC0 += sPSSData->field_CC8; - sPSSData->field_CB4->pos1.x = sPSSData->field_CBC >> 8; - sPSSData->field_CB4->pos1.y = sPSSData->field_CC0 >> 8; - if (sPSSData->field_CB4->pos1.x > DISPLAY_WIDTH + 16) + sPSSData->cursorSprite->pos1.x = sPSSData->field_CBC >> 8; + sPSSData->cursorSprite->pos1.y = sPSSData->field_CC0 >> 8; + if (sPSSData->cursorSprite->pos1.x > DISPLAY_WIDTH + 16) { - tmp = sPSSData->field_CB4->pos1.x - (DISPLAY_WIDTH + 16); - sPSSData->field_CB4->pos1.x = tmp + 64; + tmp = sPSSData->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16); + sPSSData->cursorSprite->pos1.x = tmp + 64; } - if (sPSSData->field_CB4->pos1.x < 64) + if (sPSSData->cursorSprite->pos1.x < 64) { - tmp = 64 - sPSSData->field_CB4->pos1.x; - sPSSData->field_CB4->pos1.x = DISPLAY_WIDTH + 16 - tmp; + tmp = 64 - sPSSData->cursorSprite->pos1.x; + sPSSData->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp; } - if (sPSSData->field_CB4->pos1.y > DISPLAY_HEIGHT + 16) + if (sPSSData->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16) { - tmp = sPSSData->field_CB4->pos1.y - (DISPLAY_HEIGHT + 16); - sPSSData->field_CB4->pos1.y = tmp - 16; + tmp = sPSSData->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16); + sPSSData->cursorSprite->pos1.y = tmp - 16; } - if (sPSSData->field_CB4->pos1.y < -16) + if (sPSSData->cursorSprite->pos1.y < -16) { - tmp = -16 - sPSSData->field_CB4->pos1.y; - sPSSData->field_CB4->pos1.y = DISPLAY_HEIGHT + 16 - tmp; + tmp = -16 - sPSSData->cursorSprite->pos1.y; + sPSSData->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp; } if (sPSSData->field_CD7 && --sPSSData->field_CD7 == 0) - sPSSData->field_CB4->vFlip = (sPSSData->field_CB4->vFlip == FALSE); + sPSSData->cursorSprite->vFlip = (sPSSData->cursorSprite->vFlip == FALSE); } else { - sPSSData->field_CB4->pos1.x = sPSSData->field_CCC; - sPSSData->field_CB4->pos1.y = sPSSData->field_CCE; + sPSSData->cursorSprite->pos1.x = sPSSData->field_CCC; + sPSSData->cursorSprite->pos1.y = sPSSData->field_CCE; sub_80CDA68(); } @@ -5687,7 +5710,7 @@ static void sub_80CD6AC(u8 newCursorArea, u8 newCursorPosition) { u16 x, y; - sub_80CD444(newCursorArea, newCursorPosition, &x, &y); + GetCursorCoordsByPos(newCursorArea, newCursorPosition, &x, &y); sPSSData->field_CD4 = newCursorArea; sPSSData->field_CD5 = newCursorPosition; sPSSData->field_CCC = x; @@ -5709,26 +5732,26 @@ static void sub_80CD70C(void) switch (sPSSData->field_CD2) { default: - r7 = sPSSData->field_CCE - sPSSData->field_CB4->pos1.y; + r7 = sPSSData->field_CCE - sPSSData->cursorSprite->pos1.y; break; case -1: - r7 = sPSSData->field_CCE - 0xc0 - sPSSData->field_CB4->pos1.y; + r7 = sPSSData->field_CCE - 0xc0 - sPSSData->cursorSprite->pos1.y; break; case 1: - r7 = sPSSData->field_CCE + 0xc0 - sPSSData->field_CB4->pos1.y; + r7 = sPSSData->field_CCE + 0xc0 - sPSSData->cursorSprite->pos1.y; break; } switch (sPSSData->field_CD3) { default: - r0 = sPSSData->field_CCC - sPSSData->field_CB4->pos1.x; + r0 = sPSSData->field_CCC - sPSSData->cursorSprite->pos1.x; break; case -1: - r0 = sPSSData->field_CCC - 0xc0 - sPSSData->field_CB4->pos1.x; + r0 = sPSSData->field_CCC - 0xc0 - sPSSData->cursorSprite->pos1.x; break; case 1: - r0 = sPSSData->field_CCC + 0xc0 - sPSSData->field_CB4->pos1.x; + r0 = sPSSData->field_CCC + 0xc0 - sPSSData->cursorSprite->pos1.x; break; } @@ -5736,8 +5759,8 @@ static void sub_80CD70C(void) r0 <<= 8; sPSSData->field_CC4 = r0 / sPSSData->field_CD0; sPSSData->field_CC8 = r7 / sPSSData->field_CD0; - sPSSData->field_CBC = sPSSData->field_CB4->pos1.x << 8; - sPSSData->field_CC0 = sPSSData->field_CB4->pos1.y << 8; + sPSSData->field_CBC = sPSSData->cursorSprite->pos1.x << 8; + sPSSData->field_CC0 = sPSSData->cursorSprite->pos1.y << 8; } static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) @@ -5747,12 +5770,12 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) - StartSpriteAnim(sPSSData->field_CB4, 1); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); } else { if (!IsMovingItem()) - StartSpriteAnim(sPSSData->field_CB4, 1); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); } if (sPSSData->boxOption == OPTION_MOVE_ITEMS) @@ -5779,19 +5802,19 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) case CURSOR_AREA_IN_PARTY: case CURSOR_AREA_BOX: case CURSOR_AREA_BUTTONS: - sPSSData->field_CB4->oam.priority = 1; + sPSSData->cursorSprite->oam.priority = 1; sPSSData->field_CB8->invisible = TRUE; sPSSData->field_CB8->oam.priority = 1; break; case CURSOR_AREA_IN_BOX: if (sPSSData->inBoxMovingMode != 0) { - sPSSData->field_CB4->oam.priority = 0; + sPSSData->cursorSprite->oam.priority = 0; sPSSData->field_CB8->invisible = TRUE; } else { - sPSSData->field_CB4->oam.priority = 2; + sPSSData->cursorSprite->oam.priority = 2; if (sBoxCursorArea == CURSOR_AREA_IN_BOX && sIsMonBeingMoved) SetMovingMonPriority(2); } @@ -5806,12 +5829,12 @@ static void sub_80CDA68(void) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) - StartSpriteAnim(sPSSData->field_CB4, 0); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); } else { if (!IsMovingItem()) - StartSpriteAnim(sPSSData->field_CB4, 0); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); } sub_80CEB40(); @@ -5830,7 +5853,7 @@ static void sub_80CDA68(void) case CURSOR_AREA_IN_BOX: if (sPSSData->inBoxMovingMode == 0) { - sPSSData->field_CB4->oam.priority = 1; + sPSSData->cursorSprite->oam.priority = 1; sPSSData->field_CB8->oam.priority = 2; sPSSData->field_CB8->subpriority = 21; sPSSData->field_CB8->invisible = FALSE; @@ -5854,7 +5877,7 @@ static void sub_80CDBA0(void) if (partyCount >= PARTY_SIZE) partyCount = PARTY_SIZE - 1; } - if (sPSSData->field_CB4->vFlip) + if (sPSSData->cursorSprite->vFlip) sPSSData->field_CD7 = 1; sub_80CD894(CURSOR_AREA_IN_PARTY, partyCount); } @@ -5916,13 +5939,13 @@ static bool8 MonPlaceChange_Move(void) case 0: if (sIsMonBeingMoved) return FALSE; - StartSpriteAnim(sPSSData->field_CB4, 2); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); sPSSData->monPlaceChangeState++; break; case 1: if (!sub_80CDED4()) { - StartSpriteAnim(sPSSData->field_CB4, 3); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); MoveMon(); sPSSData->monPlaceChangeState++; } @@ -5945,7 +5968,7 @@ static bool8 MonPlaceChange_Place(void) case 0: if (!sub_80CDED4()) { - StartSpriteAnim(sPSSData->field_CB4, 2); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); PlaceMon(); sPSSData->monPlaceChangeState++; } @@ -5953,7 +5976,7 @@ static bool8 MonPlaceChange_Place(void) case 1: if (!sub_80CDF08()) { - StartSpriteAnim(sPSSData->field_CB4, 0); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); sPSSData->monPlaceChangeState++; } break; @@ -5980,14 +6003,14 @@ static bool8 MonPlaceChange_Shift(void) default: return FALSE; } - StartSpriteAnim(sPSSData->field_CB4, 2); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); sub_80CBD5C(sPSSData->field_D91, sBoxCursorPosition); sPSSData->monPlaceChangeState++; break; case 1: if (!sub_80CBDC4()) { - StartSpriteAnim(sPSSData->field_CB4, 3); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); SetShiftedMonData(sPSSData->field_D91, sBoxCursorPosition); sPSSData->monPlaceChangeState++; } @@ -6011,13 +6034,13 @@ static bool8 sub_80CDEC4(void) static bool8 sub_80CDED4(void) { - switch (sPSSData->field_CB4->pos2.y) + switch (sPSSData->cursorSprite->pos2.y) { default: - sPSSData->field_CB4->pos2.y++; + sPSSData->cursorSprite->pos2.y++; break; case 0: - sPSSData->field_CB4->pos2.y++; + sPSSData->cursorSprite->pos2.y++; break; case 8: return FALSE; @@ -6028,12 +6051,12 @@ static bool8 sub_80CDED4(void) static bool8 sub_80CDF08(void) { - switch (sPSSData->field_CB4->pos2.y) + switch (sPSSData->cursorSprite->pos2.y) { case 0: return FALSE; default: - sPSSData->field_CB4->pos2.y--; + sPSSData->cursorSprite->pos2.y--; break; } @@ -6125,13 +6148,13 @@ static void PurgeMonOrBoxMon(u8 boxId, u8 position) static void SetShiftedMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) - sPSSData->field_2108 = gPlayerParty[position]; + sPSSData->tempMon = gPlayerParty[position]; else - BoxMonAtToMon(boxId, position, &sPSSData->field_2108); + BoxMonAtToMon(boxId, position, &sPSSData->tempMon); SetPlacedMonData(boxId, position); - sPSSData->movingMon = sPSSData->field_2108; - SetCursorMonData(&sPSSData->movingMon, MODE_PARTY); + sPSSData->movingMon = sPSSData->tempMon; + SetDisplayMonData(&sPSSData->movingMon, MODE_PARTY); sMovingMonOrigBoxId = boxId; sMovingMonOrigBoxPos = position; } @@ -6158,17 +6181,17 @@ static bool8 TryStorePartyMonInBox(u8 boxId) if (boxId == StorageGetCurrentBox()) sub_80CB140(boxPosition); - StartSpriteAnim(sPSSData->field_CB4, 1); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); return TRUE; } static void sub_80CE22C(void) { - StartSpriteAnim(sPSSData->field_CB4, 0); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); sub_80CEB40(); } -static void sub_80CE250(void) +static void InitReleaseMon(void) { u8 mode; @@ -6179,15 +6202,15 @@ static void sub_80CE250(void) else mode = MODE_BOX; - sub_80CBF14(mode, sBoxCursorPosition); - StringCopy(sPSSData->field_21E0, sPSSData->cursorMonNick); + SetReleaseMon(mode, sBoxCursorPosition); + StringCopy(sPSSData->releaseMonName, sPSSData->displayMonName); } -static bool8 sub_80CE2A8(void) +static bool8 TryHideReleaseMon(void) { - if (!sub_80CBFD8()) + if (!TryHideReleaseMonSprite()) { - StartSpriteAnim(sPSSData->field_CB4, 0); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); return FALSE; } else @@ -6200,7 +6223,7 @@ static void ReleaseMon(void) { u8 boxId; - sub_80CC020(); + DestroyReleaseMonIcon(); if (sIsMonBeingMoved) { sIsMonBeingMoved = FALSE; @@ -6217,18 +6240,22 @@ static void ReleaseMon(void) sub_80CEB40(); } -static void sub_80CE324(void) +static void TrySetCursorFistAnim(void) { if (sIsMonBeingMoved) - StartSpriteAnim(sPSSData->field_CB4, 3); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); } +// If the player is on the listed map (or any map, if none is specified), +// they may not release their last Pokémon that knows the specified move. +// This is to stop the player from softlocking themselves by not having +// a Pokémon that knows a required field move. struct { s8 mapGroup; s8 mapNum; u16 move; -} static const gUnknown_0857B9A4[] = +} static const sRestrictedReleaseMoves[] = { {MAP_GROUPS_COUNT, 0, MOVE_SURF}, {MAP_GROUPS_COUNT, 0, MOVE_DIVE}, @@ -6238,73 +6265,79 @@ struct {MAP_GROUP(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MAP_NUM(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MOVE_ROCK_SMASH}, }; -static void sub_80CE350(u16 *moves) +static void GetRestrictedReleaseMoves(u16 *moves) { s32 i; - for (i = 0; i < ARRAY_COUNT(gUnknown_0857B9A4); i++) + for (i = 0; i < ARRAY_COUNT(sRestrictedReleaseMoves); i++) { - if (gUnknown_0857B9A4[i].mapGroup == MAP_GROUPS_COUNT - || (gUnknown_0857B9A4[i].mapGroup == gSaveBlock1Ptr->location.mapGroup && gUnknown_0857B9A4[i].mapNum == gSaveBlock1Ptr->location.mapNum)) + if (sRestrictedReleaseMoves[i].mapGroup == MAP_GROUPS_COUNT + || (sRestrictedReleaseMoves[i].mapGroup == gSaveBlock1Ptr->location.mapGroup + && sRestrictedReleaseMoves[i].mapNum == gSaveBlock1Ptr->location.mapNum)) { - *moves = gUnknown_0857B9A4[i].move; + *moves = sRestrictedReleaseMoves[i].move; moves++; } } - *moves = MOVES_COUNT; } -static void InitCanRelaseMonVars(void) +static void InitCanReleaseMonVars(void) { if (!AtLeastThreeUsableMons()) { - sPSSData->field_216D = 1; - sPSSData->field_216C = 0; + // The player only has 1 or 2 usable + // Pokémon, this one can't be released + sPSSData->releaseStatusResolved = TRUE; + sPSSData->canReleaseMon = FALSE; return; } if (sIsMonBeingMoved) { - sPSSData->field_2108 = sPSSData->movingMon; - sPSSData->field_2170 = -1; - sPSSData->field_2171 = -1; + sPSSData->tempMon = sPSSData->movingMon; + sPSSData->releaseBoxId = -1; + sPSSData->releaseBoxPos = -1; } else { if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) { - sPSSData->field_2108 = gPlayerParty[sBoxCursorPosition]; - sPSSData->field_2170 = TOTAL_BOXES_COUNT; + sPSSData->tempMon = gPlayerParty[sBoxCursorPosition]; + sPSSData->releaseBoxId = TOTAL_BOXES_COUNT; } else { - BoxMonAtToMon(StorageGetCurrentBox(), sBoxCursorPosition, &sPSSData->field_2108); - sPSSData->field_2170 = StorageGetCurrentBox(); + BoxMonAtToMon(StorageGetCurrentBox(), sBoxCursorPosition, &sPSSData->tempMon); + sPSSData->releaseBoxId = StorageGetCurrentBox(); } - sPSSData->field_2171 = sBoxCursorPosition; + sPSSData->releaseBoxPos = sBoxCursorPosition; } - sub_80CE350(sPSSData->field_2176); - sPSSData->field_2174 = GetMonData(&sPSSData->field_2108, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->field_2176); - if (sPSSData->field_2174 != 0) + GetRestrictedReleaseMoves(sPSSData->restrictedMoveList); + sPSSData->restrictedReleaseMonMoves = GetMonData(&sPSSData->tempMon, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); + if (sPSSData->restrictedReleaseMonMoves != 0) { - sPSSData->field_216D = 0; + // Pokémon knows at least one restricted release move + // Need to check if another Pokémon has this move first + sPSSData->releaseStatusResolved = FALSE; } else { - sPSSData->field_216D = 1; - sPSSData->field_216C = 1; + // Pokémon knows no restricted moves, can be released + sPSSData->releaseStatusResolved = TRUE; + sPSSData->canReleaseMon = TRUE; } - sPSSData->field_2172 = 0; + sPSSData->releaseCheckState = 0; } static bool32 AtLeastThreeUsableMons(void) { - s32 i, j, count; - - count = (sIsMonBeingMoved != FALSE); + s32 i, j; + s32 count = (sIsMonBeingMoved != FALSE); + + // Check party for usable Pokémon for (j = 0; j < PARTY_SIZE; j++) { if (GetMonData(&gPlayerParty[j], MON_DATA_SANITY_HAS_SPECIES)) @@ -6314,6 +6347,7 @@ static bool32 AtLeastThreeUsableMons(void) if (count >= 3) return TRUE; + // Check PC for usable Pokémon for (i = 0; i < TOTAL_BOXES_COUNT; i++) { for (j = 0; j < IN_BOX_COUNT; j++) @@ -6334,54 +6368,69 @@ static s8 RunCanReleaseMon(void) u16 i; u16 knownMoves; - if (sPSSData->field_216D) - return sPSSData->field_216C; + if (sPSSData->releaseStatusResolved) + return sPSSData->canReleaseMon; - switch (sPSSData->field_2172) + switch (sPSSData->releaseCheckState) { case 0: + // Check party for other Pokémon that know any restricted + // moves the release Pokémon knows for (i = 0; i < PARTY_SIZE; i++) { - if (sPSSData->field_2170 != TOTAL_BOXES_COUNT || sPSSData->field_2171 != i) + // Make sure party Pokémon isn't the one we're releasing first + if (sPSSData->releaseBoxId != TOTAL_BOXES_COUNT || sPSSData->releaseBoxPos != i) { - knownMoves = GetMonData(gPlayerParty + i, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->field_2176); - sPSSData->field_2174 &= ~(knownMoves); + knownMoves = GetMonData(&gPlayerParty[i], MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); + sPSSData->restrictedReleaseMonMoves &= ~(knownMoves); } } - if (sPSSData->field_2174 == 0) + if (sPSSData->restrictedReleaseMonMoves == 0) { - sPSSData->field_216D = 1; - sPSSData->field_216C = 1; + // No restricted moves on release Pokémon that + // aren't resolved by the party, it can be released. + sPSSData->releaseStatusResolved = TRUE; + sPSSData->canReleaseMon = TRUE; } else { - sPSSData->field_216E = 0; - sPSSData->field_216F = 0; - sPSSData->field_2172++; + // Release Pokémon has restricted moves not resolved by the party. + // Continue and check the PC next + sPSSData->releaseCheckBoxId = 0; + sPSSData->releaseCheckBoxPos = 0; + sPSSData->releaseCheckState++; } break; case 1: + // Check PC for other Pokémon that know any restricted + // moves the release Pokémon knows for (i = 0; i < IN_BOX_COUNT; i++) { - knownMoves = GetAndCopyBoxMonDataAt(sPSSData->field_216E, sPSSData->field_216F, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->field_2176); - if (knownMoves != 0 - && !(sPSSData->field_2170 == sPSSData->field_216E && sPSSData->field_2171 == sPSSData->field_216F)) + knownMoves = GetAndCopyBoxMonDataAt(sPSSData->releaseCheckBoxId, sPSSData->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); + if (knownMoves != 0 && !(sPSSData->releaseBoxId == sPSSData->releaseCheckBoxId + && sPSSData->releaseBoxPos == sPSSData->releaseCheckBoxPos)) { - sPSSData->field_2174 &= ~(knownMoves); - if (sPSSData->field_2174 == 0) + // Found PC Pokémon with restricted move, clear move from list + sPSSData->restrictedReleaseMonMoves &= ~(knownMoves); + if (sPSSData->restrictedReleaseMonMoves == 0) { - sPSSData->field_216D = 1; - sPSSData->field_216C = 1; + // No restricted moves on release Pokémon that + // aren't resolved, it can be released. + sPSSData->releaseStatusResolved = TRUE; + sPSSData->canReleaseMon = TRUE; break; } } - if (++sPSSData->field_216F >= IN_BOX_COUNT) + if (++sPSSData->releaseCheckBoxPos >= IN_BOX_COUNT) { - sPSSData->field_216F = 0; - if (++sPSSData->field_216E >= TOTAL_BOXES_COUNT) + sPSSData->releaseCheckBoxPos = 0; + if (++sPSSData->releaseCheckBoxId >= TOTAL_BOXES_COUNT) { - sPSSData->field_216D = 1; - sPSSData->field_216C = 0; + // Checked every Pokémon in the PC, release Pokémon is + // the sole owner of at least one restricted move. + // It cannot be released. + sPSSData->releaseStatusResolved = TRUE; + sPSSData->canReleaseMon = FALSE; } } } @@ -6449,7 +6498,7 @@ s16 CompactPartySlots(void) for (i = 0, last = 0; i < PARTY_SIZE; i++) { - u16 species = GetMonData(gPlayerParty + i, MON_DATA_SPECIES); + u16 species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); if (species != SPECIES_NONE) { if (i != last) @@ -6462,14 +6511,14 @@ s16 CompactPartySlots(void) } } for (; last < PARTY_SIZE; last++) - ZeroMonData(gPlayerParty + last); + ZeroMonData(&gPlayerParty[last]); return retVal; } static void SetMonMarkings(u8 markings) { - sPSSData->cursorMonMarkings = markings; + sPSSData->displayMonMarkings = markings; if (sIsMonBeingMoved) { SetMonData(&sPSSData->movingMon, MON_DATA_MARKINGS, &markings); @@ -6477,7 +6526,7 @@ static void SetMonMarkings(u8 markings) else { if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) - SetMonData(gPlayerParty + sBoxCursorPosition, MON_DATA_MARKINGS, &markings); + SetMonData(&gPlayerParty[sBoxCursorPosition], MON_DATA_MARKINGS, &markings); if (sBoxCursorArea == CURSOR_AREA_IN_BOX) SetCurrentBoxMonData(sBoxCursorPosition, MON_DATA_MARKINGS, &markings); } @@ -6497,7 +6546,7 @@ static bool8 CanShiftMon(void) { if (sBoxCursorArea == CURSOR_AREA_IN_PARTY && CountPartyAliveNonEggMonsExcept(sBoxCursorPosition) == 0) { - if (sPSSData->cursorMonIsEgg || GetMonData(&sPSSData->movingMon, MON_DATA_HP) == 0) + if (sPSSData->displayMonIsEgg || GetMonData(&sPSSData->movingMon, MON_DATA_HP) == 0) return FALSE; } return TRUE; @@ -6535,16 +6584,16 @@ static void sub_80CEB40(void) case CURSOR_AREA_IN_PARTY: if (sBoxCursorPosition < PARTY_SIZE) { - SetCursorMonData(&gPlayerParty[sBoxCursorPosition], MODE_PARTY); + SetDisplayMonData(&gPlayerParty[sBoxCursorPosition], MODE_PARTY); break; } // fallthrough case CURSOR_AREA_BUTTONS: case CURSOR_AREA_BOX: - SetCursorMonData(NULL, MODE_MOVE); + SetDisplayMonData(NULL, MODE_MOVE); break; case CURSOR_AREA_IN_BOX: - SetCursorMonData(GetBoxedMonPtr(StorageGetCurrentBox(), sBoxCursorPosition), MODE_BOX); + SetDisplayMonData(GetBoxedMonPtr(StorageGetCurrentBox(), sBoxCursorPosition), MODE_BOX); break; } } @@ -6553,105 +6602,105 @@ static void sub_80CEB40(void) static void sub_80CEBDC(void) { if (sIsMonBeingMoved) - SetCursorMonData(&gUnknown_02039D14, MODE_PARTY); + SetDisplayMonData(&gUnknown_02039D14, MODE_PARTY); else sub_80CEB40(); } -static void SetCursorMonData(void *pokemon, u8 mode) +static void SetDisplayMonData(void *pokemon, u8 mode) { u8 *txtPtr; u16 gender; bool8 sanityIsBadEgg; - sPSSData->cursorMonItemId = ITEM_NONE; + sPSSData->displayMonItemId = ITEM_NONE; gender = MON_MALE; sanityIsBadEgg = FALSE; if (mode == MODE_PARTY) { struct Pokemon *mon = (struct Pokemon *)pokemon; - sPSSData->cursorMonSpecies = GetMonData(mon, MON_DATA_SPECIES2); - if (sPSSData->cursorMonSpecies != SPECIES_NONE) + sPSSData->displayMonSpecies = GetMonData(mon, MON_DATA_SPECIES2); + if (sPSSData->displayMonSpecies != SPECIES_NONE) { sanityIsBadEgg = GetMonData(mon, MON_DATA_SANITY_IS_BAD_EGG); if (sanityIsBadEgg) - sPSSData->cursorMonIsEgg = TRUE; + sPSSData->displayMonIsEgg = TRUE; else - sPSSData->cursorMonIsEgg = GetMonData(mon, MON_DATA_IS_EGG); - - GetMonData(mon, MON_DATA_NICKNAME, sPSSData->cursorMonNick); - StringGetEnd10(sPSSData->cursorMonNick); - sPSSData->cursorMonLevel = GetMonData(mon, MON_DATA_LEVEL); - sPSSData->cursorMonMarkings = GetMonData(mon, MON_DATA_MARKINGS); - sPSSData->cursorMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); - sPSSData->cursorMonPalette = GetMonFrontSpritePal(mon); + sPSSData->displayMonIsEgg = GetMonData(mon, MON_DATA_IS_EGG); + + GetMonData(mon, MON_DATA_NICKNAME, sPSSData->displayMonName); + StringGetEnd10(sPSSData->displayMonName); + sPSSData->displayMonLevel = GetMonData(mon, MON_DATA_LEVEL); + sPSSData->displayMonMarkings = GetMonData(mon, MON_DATA_MARKINGS); + sPSSData->displayMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); + sPSSData->displayMonPalette = GetMonFrontSpritePal(mon); gender = GetMonGender(mon); - sPSSData->cursorMonItemId = GetMonData(mon, MON_DATA_HELD_ITEM); + sPSSData->displayMonItemId = GetMonData(mon, MON_DATA_HELD_ITEM); } } else if (mode == MODE_BOX) { struct BoxPokemon *boxMon = (struct BoxPokemon *)pokemon; - sPSSData->cursorMonSpecies = GetBoxMonData(pokemon, MON_DATA_SPECIES2); - if (sPSSData->cursorMonSpecies != SPECIES_NONE) + sPSSData->displayMonSpecies = GetBoxMonData(pokemon, MON_DATA_SPECIES2); + if (sPSSData->displayMonSpecies != SPECIES_NONE) { u32 otId = GetBoxMonData(boxMon, MON_DATA_OT_ID); sanityIsBadEgg = GetBoxMonData(boxMon, MON_DATA_SANITY_IS_BAD_EGG); if (sanityIsBadEgg) - sPSSData->cursorMonIsEgg = TRUE; + sPSSData->displayMonIsEgg = TRUE; else - sPSSData->cursorMonIsEgg = GetBoxMonData(boxMon, MON_DATA_IS_EGG); + sPSSData->displayMonIsEgg = GetBoxMonData(boxMon, MON_DATA_IS_EGG); - GetBoxMonData(boxMon, MON_DATA_NICKNAME, sPSSData->cursorMonNick); - StringGetEnd10(sPSSData->cursorMonNick); - sPSSData->cursorMonLevel = GetLevelFromBoxMonExp(boxMon); - sPSSData->cursorMonMarkings = GetBoxMonData(boxMon, MON_DATA_MARKINGS); - sPSSData->cursorMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); - sPSSData->cursorMonPalette = GetMonSpritePalFromSpeciesAndPersonality(sPSSData->cursorMonSpecies, otId, sPSSData->cursorMonPersonality); - gender = GetGenderFromSpeciesAndPersonality(sPSSData->cursorMonSpecies, sPSSData->cursorMonPersonality); - sPSSData->cursorMonItemId = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); + GetBoxMonData(boxMon, MON_DATA_NICKNAME, sPSSData->displayMonName); + StringGetEnd10(sPSSData->displayMonName); + sPSSData->displayMonLevel = GetLevelFromBoxMonExp(boxMon); + sPSSData->displayMonMarkings = GetBoxMonData(boxMon, MON_DATA_MARKINGS); + sPSSData->displayMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); + sPSSData->displayMonPalette = GetMonSpritePalFromSpeciesAndPersonality(sPSSData->displayMonSpecies, otId, sPSSData->displayMonPersonality); + gender = GetGenderFromSpeciesAndPersonality(sPSSData->displayMonSpecies, sPSSData->displayMonPersonality); + sPSSData->displayMonItemId = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); } } else { - sPSSData->cursorMonSpecies = SPECIES_NONE; - sPSSData->cursorMonItemId = ITEM_NONE; + sPSSData->displayMonSpecies = SPECIES_NONE; + sPSSData->displayMonItemId = ITEM_NONE; } - if (sPSSData->cursorMonSpecies == SPECIES_NONE) + if (sPSSData->displayMonSpecies == SPECIES_NONE) { - StringFill(sPSSData->cursorMonNick, CHAR_SPACE, 5); - StringFill(sPSSData->cursorMonNickText, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonSpeciesName, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonGenderLvlText, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonItemName, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonName, CHAR_SPACE, 5); + StringFill(sPSSData->displayMonNameText, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonSpeciesName, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonGenderLvlText, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); } - else if (sPSSData->cursorMonIsEgg) + else if (sPSSData->displayMonIsEgg) { if (sanityIsBadEgg) - StringCopyPadded(sPSSData->cursorMonNickText, sPSSData->cursorMonNick, CHAR_SPACE, 5); + StringCopyPadded(sPSSData->displayMonNameText, sPSSData->displayMonName, CHAR_SPACE, 5); else - StringCopyPadded(sPSSData->cursorMonNickText, gText_EggNickname, CHAR_SPACE, 8); + StringCopyPadded(sPSSData->displayMonNameText, gText_EggNickname, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonSpeciesName, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonGenderLvlText, CHAR_SPACE, 8); - StringFill(sPSSData->cursorMonItemName, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonSpeciesName, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonGenderLvlText, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); } else { - if (sPSSData->cursorMonSpecies == SPECIES_NIDORAN_F || sPSSData->cursorMonSpecies == SPECIES_NIDORAN_M) + if (sPSSData->displayMonSpecies == SPECIES_NIDORAN_F || sPSSData->displayMonSpecies == SPECIES_NIDORAN_M) gender = MON_GENDERLESS; - StringCopyPadded(sPSSData->cursorMonNickText, sPSSData->cursorMonNick, CHAR_SPACE, 5); + StringCopyPadded(sPSSData->displayMonNameText, sPSSData->displayMonName, CHAR_SPACE, 5); - txtPtr = sPSSData->cursorMonSpeciesName; + txtPtr = sPSSData->displayMonSpeciesName; *(txtPtr)++ = CHAR_SLASH; - StringCopyPadded(txtPtr, gSpeciesNames[sPSSData->cursorMonSpecies], CHAR_SPACE, 5); + StringCopyPadded(txtPtr, gSpeciesNames[sPSSData->displayMonSpecies], CHAR_SPACE, 5); - txtPtr = sPSSData->cursorMonGenderLvlText; + txtPtr = sPSSData->displayMonGenderLvlText; *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; *(txtPtr)++ = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; switch (gender) @@ -6685,14 +6734,14 @@ static void SetCursorMonData(void *pokemon, u8 mode) *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; - txtPtr = ConvertIntToDecimalStringN(txtPtr, sPSSData->cursorMonLevel, STR_CONV_MODE_LEFT_ALIGN, 3); + txtPtr = ConvertIntToDecimalStringN(txtPtr, sPSSData->displayMonLevel, STR_CONV_MODE_LEFT_ALIGN, 3); txtPtr[0] = CHAR_SPACE; txtPtr[1] = EOS; - if (sPSSData->cursorMonItemId != ITEM_NONE) - StringCopyPadded(sPSSData->cursorMonItemName, ItemId_GetName(sPSSData->cursorMonItemId), CHAR_SPACE, 8); + if (sPSSData->displayMonItemId != ITEM_NONE) + StringCopyPadded(sPSSData->displayMonItemName, ItemId_GetName(sPSSData->displayMonItemId), CHAR_SPACE, 8); else - StringFill(sPSSData->cursorMonItemName, CHAR_SPACE, 8); + StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); } } @@ -6916,7 +6965,7 @@ static u8 InBoxInput_GrabbingMultiple(void) } else { - sIsMonBeingMoved = (sPSSData->cursorMonSpecies != SPECIES_NONE); + sIsMonBeingMoved = (sPSSData->displayMonSpecies != SPECIES_NONE); sPSSData->inBoxMovingMode = 2; sMovingMonOrigBoxId = StorageGetCurrentBox(); return INPUT_23; @@ -7316,18 +7365,18 @@ static u8 sub_80CFA5C(void) static bool8 sub_80CFA84(void) { - u16 var0 = sub_80CD504(); + u16 species = GetSpeciesAtCursorPosition(); switch (sPSSData->boxOption) { case OPTION_DEPOSIT: - if (var0) + if (species != SPECIES_NONE) SetMenuText(MENU_STORE); else return FALSE; break; case OPTION_WITHDRAW: - if (var0) + if (species != SPECIES_NONE) SetMenuText(MENU_WITHDRAW); else return FALSE; @@ -7335,14 +7384,14 @@ static bool8 sub_80CFA84(void) case OPTION_MOVE_MONS: if (sIsMonBeingMoved) { - if (var0) + if (species != SPECIES_NONE) SetMenuText(MENU_SHIFT); else SetMenuText(MENU_PLACE); } else { - if (var0) + if (species != SPECIES_NONE) SetMenuText(MENU_MOVE); else return FALSE; @@ -7370,21 +7419,21 @@ static bool8 sub_80CFA84(void) static bool8 sub_80CFB44(void) { - if (sPSSData->cursorMonSpecies == SPECIES_EGG) + if (sPSSData->displayMonSpecies == SPECIES_EGG) return FALSE; if (!IsMovingItem()) { - if (sPSSData->cursorMonItemId == ITEM_NONE) + if (sPSSData->displayMonItemId == ITEM_NONE) { - if (sPSSData->cursorMonSpecies == SPECIES_NONE) + if (sPSSData->displayMonSpecies == SPECIES_NONE) return FALSE; SetMenuText(MENU_GIVE_2); } else { - if (!ItemIsMail(sPSSData->cursorMonItemId)) + if (!ItemIsMail(sPSSData->displayMonItemId)) { SetMenuText(MENU_TAKE); SetMenuText(MENU_BAG); @@ -7394,16 +7443,16 @@ static bool8 sub_80CFB44(void) } else { - if (sPSSData->cursorMonItemId == ITEM_NONE) + if (sPSSData->displayMonItemId == ITEM_NONE) { - if (sPSSData->cursorMonSpecies == SPECIES_NONE) + if (sPSSData->displayMonSpecies == SPECIES_NONE) return FALSE; SetMenuText(MENU_GIVE); } else { - if (ItemIsMail(sPSSData->cursorMonItemId) == TRUE) + if (ItemIsMail(sPSSData->displayMonItemId) == TRUE) return FALSE; SetMenuText(MENU_SWITCH); @@ -7414,10 +7463,10 @@ static bool8 sub_80CFB44(void) return TRUE; } -static void sub_80CFBF4(struct Sprite *sprite) +static void SpriteCB_CursorShadow(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->field_CB4->pos1.x; - sprite->pos1.y = sPSSData->field_CB4->pos1.y + 20; + sprite->pos1.x = sPSSData->cursorSprite->pos1.x; + sprite->pos1.y = sPSSData->cursorSprite->pos1.y + 20; } static void sub_80CFC14(void) @@ -7427,100 +7476,100 @@ static void sub_80CFC14(void) u8 priority, subpriority; struct SpriteSheet spriteSheets[] = { - {gHandCursorTiles, 0x800, 0}, - {gHandCursorShadowTiles, 0x80, 1}, + {sHandCursor_Gfx, 0x800, GFXTAG_CURSOR}, + {sHandCursorShadow_Gfx, 0x80, GFXTAG_CURSOR_SHADOW}, {} }; struct SpritePalette spritePalettes[] = { - {gHandCursorPalette, PALTAG_7}, + {sHandCursor_Pal, PALTAG_7}, {} }; - static const struct OamData sOamData_857BA0C = + static const struct OamData sOamData_Cursor = { .shape = SPRITE_SHAPE(32x32), .size = SPRITE_SIZE(32x32), .priority = 1, }; - static const struct OamData sOamData_857BA14 = + static const struct OamData sOamData_CursorShadow = { .shape = SPRITE_SHAPE(16x16), .size = SPRITE_SIZE(16x16), .priority = 1, }; - static const union AnimCmd sSpriteAnim_857BA1C[] = + static const union AnimCmd sAnim_Cursor_Bouncing[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(16, 30), ANIMCMD_JUMP(0) }; - static const union AnimCmd sSpriteAnim_857BA28[] = + static const union AnimCmd sAnim_Cursor_Still[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; - static const union AnimCmd sSpriteAnim_857BA30[] = + static const union AnimCmd sAnim_Cursor_Open[] = { ANIMCMD_FRAME(32, 5), ANIMCMD_END }; - static const union AnimCmd sSpriteAnim_857BA38[] = + static const union AnimCmd sAnim_Cursor_Fist[] = { ANIMCMD_FRAME(48, 5), ANIMCMD_END }; - static const union AnimCmd *const sSpriteAnimTable_857BA40[] = + static const union AnimCmd *const sAnims_Cursor[] = { - sSpriteAnim_857BA1C, - sSpriteAnim_857BA28, - sSpriteAnim_857BA30, - sSpriteAnim_857BA38 + [CURSOR_ANIM_BOUNCE] = sAnim_Cursor_Bouncing, + [CURSOR_ANIM_STILL] = sAnim_Cursor_Still, + [CURSOR_ANIM_OPEN] = sAnim_Cursor_Open, + [CURSOR_ANIM_FIST] = sAnim_Cursor_Fist }; - static const struct SpriteTemplate gSpriteTemplate_857BA50 = + static const struct SpriteTemplate sSpriteTemplate_Cursor = { - .tileTag = TAG_TILE_0, + .tileTag = GFXTAG_CURSOR, .paletteTag = PALTAG_10, - .oam = &sOamData_857BA0C, - .anims = sSpriteAnimTable_857BA40, + .oam = &sOamData_Cursor, + .anims = sAnims_Cursor, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; - static const struct SpriteTemplate gSpriteTemplate_857BA68 = + static const struct SpriteTemplate sSpriteTemplate_CursorShadow = { - .tileTag = TAG_TILE_1, + .tileTag = GFXTAG_CURSOR_SHADOW, .paletteTag = PALTAG_10, - .oam = &sOamData_857BA14, + .oam = &sOamData_CursorShadow, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_80CFBF4, + .callback = SpriteCB_CursorShadow, }; LoadSpriteSheets(spriteSheets); LoadSpritePalettes(spritePalettes); - sPSSData->field_CD8[0] = IndexOfSpritePaletteTag(PALTAG_10); - sPSSData->field_CD8[1] = IndexOfSpritePaletteTag(PALTAG_7); + sPSSData->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); + sPSSData->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); - sub_80CD444(sBoxCursorArea, sBoxCursorPosition, &x, &y); - spriteId = CreateSprite(&gSpriteTemplate_857BA50, x, y, 6); + GetCursorCoordsByPos(sBoxCursorArea, sBoxCursorPosition, &x, &y); + spriteId = CreateSprite(&sSpriteTemplate_Cursor, x, y, 6); if (spriteId != MAX_SPRITES) { - sPSSData->field_CB4 = &gSprites[spriteId]; - sPSSData->field_CB4->oam.paletteNum = sPSSData->field_CD8[sCanOnlyMove]; - sPSSData->field_CB4->oam.priority = 1; + sPSSData->cursorSprite = &gSprites[spriteId]; + sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sCanOnlyMove]; + sPSSData->cursorSprite->oam.priority = 1; if (sIsMonBeingMoved) - StartSpriteAnim(sPSSData->field_CB4, 3); + StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); } else { - sPSSData->field_CB4 = NULL; + sPSSData->cursorSprite = NULL; } if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) @@ -7534,7 +7583,7 @@ static void sub_80CFC14(void) priority = 2; } - spriteId = CreateSprite(&gSpriteTemplate_857BA68, 0, 0, subpriority); + spriteId = CreateSprite(&sSpriteTemplate_CursorShadow, 0, 0, subpriority); if (spriteId != MAX_SPRITES) { sPSSData->field_CB8 = &gSprites[spriteId]; @@ -7551,7 +7600,7 @@ static void sub_80CFC14(void) static void sub_80CFDC4(void) { sCanOnlyMove = !sCanOnlyMove; - sPSSData->field_CB4->oam.paletteNum = sPSSData->field_CD8[sCanOnlyMove]; + sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sCanOnlyMove]; } static u8 GetBoxCursorPosition(void) @@ -7573,9 +7622,9 @@ static void sub_80CFE14(u8 *arg0, u8 *arg1) } } -static void sub_80CFE54(u8 animNum) +static void StartCursorAnim(u8 animNum) { - StartSpriteAnim(sPSSData->field_CB4, animNum); + StartSpriteAnim(sPSSData->cursorSprite, animNum); } static u8 sub_80CFE78(void) @@ -7583,9 +7632,9 @@ static u8 sub_80CFE78(void) return sMovingMonOrigBoxId; } -static void sub_80CFE84(void) +static void SetCursorPriorityTo1(void) { - sPSSData->field_CB4->oam.priority = 1; + sPSSData->cursorSprite->oam.priority = 1; } static void sub_80CFEA8(void) @@ -7777,8 +7826,7 @@ EWRAM_DATA static struct u16 bgY; u16 field_10; struct BoxPokemon boxMons[IN_BOX_COUNT]; -} -*sMoveMonsPtr = NULL; +} *sMoveMonsPtr = NULL; static bool8 sub_80D0164(void) { @@ -7851,7 +7899,7 @@ static bool8 sub_80D024C(void) PutWindowTilemap(sPSSData->field_2200); CopyWindowToVram8Bit(sPSSData->field_2200, 3); BlendPalettes(0x3F00, 8, RGB_WHITE); - sub_80CFE54(2); + StartCursorAnim(CURSOR_ANIM_OPEN); SetGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR); sMoveMonsPtr->state++; break; @@ -7877,13 +7925,13 @@ static bool8 sub_80D0344(void) break; case 1: sub_80D0B5C(); - sub_80CFE54(0); + StartCursorAnim(CURSOR_ANIM_BOUNCE); sMoveMonsPtr->state++; break; case 2: if (!IsDma3ManagerBusyWithBgCopy()) { - sub_80CFE84(); + SetCursorPriorityTo1(); LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); ShowBg(0); return FALSE; @@ -7931,7 +7979,7 @@ static bool8 sub_80D0420(void) case 1: if (!DoMonPlaceChange()) { - sub_80CFE54(3); + StartCursorAnim(CURSOR_ANIM_FIST); sub_80D0884(0, 256, 8); sub_80CDC64(TRUE); sMoveMonsPtr->state++; @@ -7973,7 +8021,7 @@ static bool8 sub_80D04C8(void) if (!DoMonPlaceChange() && !sub_80D0894()) { sub_80D0A1C(); - sub_80CFE54(2); + StartCursorAnim(CURSOR_ANIM_OPEN); sub_80CDC64(TRUE); HideBg(0); sMoveMonsPtr->state++; @@ -7982,7 +8030,7 @@ static bool8 sub_80D04C8(void) case 2: if (!DoMonPlaceChange()) { - sub_80CFE54(0); + StartCursorAnim(CURSOR_ANIM_BOUNCE); sub_80D0B5C(); sMoveMonsPtr->state++; } @@ -7991,7 +8039,7 @@ static bool8 sub_80D04C8(void) if (!IsDma3ManagerBusyWithBgCopy()) { LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); - sub_80CFE84(); + SetCursorPriorityTo1(); ShowBg(0); return FALSE; } @@ -8524,7 +8572,7 @@ static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos) SetPartyMonIconObjMode(cursorPos, 1); } - sPSSData->movingItemId = sPSSData->cursorMonItemId; + sPSSData->movingItemId = sPSSData->displayMonItemId; } static void sub_80D0F38(u16 itemId) @@ -8635,7 +8683,7 @@ static void sub_80D11CC(void) for (i = 0; i < MAX_ITEM_ICONS; i++) { if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].cursorArea == CURSOR_AREA_IN_PARTY) + && sPSSData->itemIcons[i].area == CURSOR_AREA_IN_PARTY) SetItemIconCallback(i, ITEM_CB_HIDE_PARTY, CURSOR_AREA_IN_HAND, 0); } } @@ -8668,7 +8716,7 @@ static bool8 IsMovingItem(void) for (i = 0; i < MAX_ITEM_ICONS; i++) { if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].cursorArea == CURSOR_AREA_IN_HAND) + && sPSSData->itemIcons[i].area == CURSOR_AREA_IN_HAND) return TRUE; } } @@ -8707,8 +8755,8 @@ static bool32 IsItemIconAtPosition(u8 cursorArea, u8 cursorPos) for (i = 0; i < MAX_ITEM_ICONS; i++) { if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].cursorArea == cursorArea - && sPSSData->itemIcons[i].cursorPos == cursorPos) + && sPSSData->itemIcons[i].area == cursorArea + && sPSSData->itemIcons[i].pos == cursorPos) return TRUE; } return FALSE; @@ -8721,8 +8769,8 @@ static u8 GetItemIconIdxByPosition(u8 cursorArea, u8 cursorPos) for (i = 0; i < MAX_ITEM_ICONS; i++) { if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].cursorArea == cursorArea - && sPSSData->itemIcons[i].cursorPos == cursorPos) + && sPSSData->itemIcons[i].area == cursorArea + && sPSSData->itemIcons[i].pos == cursorPos) return i; } return MAX_ITEM_ICONS; @@ -8772,8 +8820,8 @@ static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) break; } - sPSSData->itemIcons[id].cursorArea = cursorArea; - sPSSData->itemIcons[id].cursorPos = cursorPos; + sPSSData->itemIcons[id].area = cursorArea; + sPSSData->itemIcons[id].pos = cursorPos; } static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) @@ -8874,7 +8922,7 @@ static void PrintItemDescription(void) if (IsMovingItem()) description = ItemId_GetDescription(sPSSData->movingItemId); else - description = ItemId_GetDescription(sPSSData->cursorMonItemId); + description = ItemId_GetDescription(sPSSData->displayMonItemId); FillWindowPixelBuffer(2, PIXEL_FILL(1)); AddTextPrinterParameterized5(2, 1, description, 4, 0, 0, NULL, 0, 1); @@ -8974,9 +9022,9 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->field_CB4->pos1.x + 4; - sprite->pos1.y = sPSSData->field_CB4->pos1.y + sPSSData->field_CB4->pos2.y + 8; - sprite->oam.priority = sPSSData->field_CB4->oam.priority; + sprite->pos1.x = sPSSData->cursorSprite->pos1.x + 4; + sprite->pos1.y = sPSSData->cursorSprite->pos1.y + sPSSData->cursorSprite->pos2.y + 8; + sprite->oam.priority = sPSSData->cursorSprite->oam.priority; } static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite) @@ -9133,9 +9181,9 @@ u32 GetBoxMonLevelAt(u8 boxId, u8 boxPosition) if (boxId < TOTAL_BOXES_COUNT && boxPosition < IN_BOX_COUNT && GetBoxMonData(&gPokemonStoragePtr->boxes[boxId][boxPosition], MON_DATA_SANITY_HAS_SPECIES)) lvl = GetLevelFromBoxMonExp(&gPokemonStoragePtr->boxes[boxId][boxPosition]); - #ifdef BUGFIX +#ifdef BUGFIX else - #endif +#endif lvl = 0; return lvl; From 80cc7d46aeab92cf00e508d6c595cb7b590b3615 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 16 Apr 2021 05:14:35 -0400 Subject: [PATCH 126/762] Doc storage - fix row/column flip --- include/pokemon_storage_system.h | 10 +- src/pokemon_storage_system.c | 214 +++++++++++++++---------------- 2 files changed, 112 insertions(+), 112 deletions(-) diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 6e5eab3f931a..24e92a44927a 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -2,13 +2,13 @@ #define GUARD_POKEMON_STORAGE_SYSTEM_H #define TOTAL_BOXES_COUNT 14 -#define IN_BOX_ROWS 6 -#define IN_BOX_COLUMNS 5 +#define IN_BOX_ROWS 5 // Number of rows, 6 Pokémon per row +#define IN_BOX_COLUMNS 6 // Number of columns, 5 Pokémon per column #define IN_BOX_COUNT (IN_BOX_ROWS * IN_BOX_COLUMNS) -/* - ROWS -COLUMNS 0 1 2 3 4 5 +/* + COLUMNS +ROWS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index f86a4bbbf089..3b97b9153fec 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -4306,9 +4306,9 @@ static void InitBoxMonSprites(u8 boxId) boxPosition = 0; // For each box slot, create a Pokémon icon if a species is present - for (i = 0; i < IN_BOX_COLUMNS; i++) + for (i = 0; i < IN_BOX_ROWS; i++) { - for (j = 0; j < IN_BOX_ROWS; j++) + for (j = 0; j < IN_BOX_COLUMNS; j++) { species = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_SPECIES2); if (species != SPECIES_NONE) @@ -4342,11 +4342,11 @@ static void sub_80CB140(u8 boxPosition) if (species != SPECIES_NONE) { - s16 x = 8 * (3 * (boxPosition % IN_BOX_ROWS)) + 100; - s16 y = 8 * (3 * (boxPosition / IN_BOX_ROWS)) + 44; + s16 x = 8 * (3 * (boxPosition % IN_BOX_COLUMNS)) + 100; + s16 y = 8 * (3 * (boxPosition / IN_BOX_COLUMNS)) + 44; u32 personality = GetCurrentBoxMonData(boxPosition, MON_DATA_PERSONALITY); - sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(species, personality, x, y, 2, 19 - (boxPosition % IN_BOX_ROWS)); + sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(species, personality, x, y, 2, 19 - (boxPosition % IN_BOX_COLUMNS)); if (sPSSData->boxOption == OPTION_MOVE_ITEMS) sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; } @@ -4397,19 +4397,19 @@ static void sub_80CB278(struct Sprite *sprite) } } -static void DestroyAllIconsInRow(u8 row) +static void DestroyAllIconsInColumn(u8 column) { - u16 column; - u8 boxPosition = row; + u16 row; + u8 boxPosition = column; - for (column = 0; column < IN_BOX_COLUMNS; column++) + for (row = 0; row < IN_BOX_ROWS; row++) { if (sPSSData->boxMonsSprites[boxPosition] != NULL) { DestroyBoxMonIcon(sPSSData->boxMonsSprites[boxPosition]); sPSSData->boxMonsSprites[boxPosition] = NULL; } - boxPosition += IN_BOX_ROWS; + boxPosition += IN_BOX_COLUMNS; } } @@ -4425,7 +4425,7 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - for (i = 0; i < IN_BOX_COLUMNS; i++) + for (i = 0; i < IN_BOX_ROWS; i++) { if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) { @@ -4441,13 +4441,13 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) count++; } } - boxPosition += IN_BOX_ROWS; + boxPosition += IN_BOX_COLUMNS; y += 24; } } else { - for (i = 0; i < IN_BOX_COLUMNS; i++) + for (i = 0; i < IN_BOX_ROWS; i++) { if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) { @@ -4465,7 +4465,7 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) count++; } } - boxPosition += IN_BOX_ROWS; + boxPosition += IN_BOX_COLUMNS; y += 24; } } @@ -4485,7 +4485,7 @@ static void sub_80CB4CC(u8 boxId, s8 direction) if (direction > 0) sPSSData->field_C68 = 0; else - sPSSData->field_C68 = IN_BOX_ROWS - 1; + sPSSData->field_C68 = IN_BOX_COLUMNS - 1; sPSSData->field_C62 = (24 * sPSSData->field_C68) + 100; sub_80CB1F0(sPSSData->field_C64); @@ -4502,7 +4502,7 @@ static bool8 sub_80CB584(void) sPSSData->field_C62 += sPSSData->field_C64; if (sPSSData->field_C62 <= 64 || sPSSData->field_C62 >= 252) { - DestroyAllIconsInRow(sPSSData->field_C68); + DestroyAllIconsInColumn(sPSSData->field_C68); sPSSData->field_C62 += sPSSData->field_C69 * 24; sPSSData->field_C6A++; } @@ -4510,7 +4510,7 @@ static bool8 sub_80CB584(void) case 1: sPSSData->field_C62 += sPSSData->field_C64; sPSSData->field_C66 += sub_80CB2F8(sPSSData->field_C68, sPSSData->field_C60, sPSSData->field_C64); - if ((sPSSData->field_C69 > 0 && sPSSData->field_C68 == IN_BOX_ROWS - 1) + if ((sPSSData->field_C69 > 0 && sPSSData->field_C68 == IN_BOX_COLUMNS - 1) || (sPSSData->field_C69 < 0 && sPSSData->field_C68 == 0)) { sPSSData->field_C6A++; @@ -4540,9 +4540,9 @@ static void SetBoxSpeciesAndPersonalities(u8 boxId) s32 i, j, boxPosition; boxPosition = 0; - for (i = 0; i < IN_BOX_COLUMNS; i++) + for (i = 0; i < IN_BOX_ROWS; i++) { - for (j = 0; j < IN_BOX_ROWS; j++) + for (j = 0; j < IN_BOX_COLUMNS; j++) { sPSSData->boxSpecies[boxPosition] = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_SPECIES2); if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) @@ -4777,7 +4777,7 @@ static void sub_80CBCAC(u8 boxId, u8 position) { sPSSData->boxMonsSprites[position] = sPSSData->movingMonSprite; sPSSData->boxMonsSprites[position]->oam.priority = 2; - sPSSData->boxMonsSprites[position]->subpriority = 19 - (position % IN_BOX_ROWS); + sPSSData->boxMonsSprites[position]->subpriority = 19 - (position % IN_BOX_COLUMNS); } sPSSData->movingMonSprite->callback = SpriteCallbackDummy; sPSSData->movingMonSprite = NULL; @@ -5608,8 +5608,8 @@ static void GetCursorCoordsByPos(u8 cursorArea, u8 cursorPosition, u16 *x, u16 * switch (cursorArea) { case CURSOR_AREA_IN_BOX: - *x = (cursorPosition % IN_BOX_ROWS) * 24 + 100; - *y = (cursorPosition / IN_BOX_ROWS) * 24 + 32; + *x = (cursorPosition % IN_BOX_COLUMNS) * 24 + 100; + *y = (cursorPosition / IN_BOX_COLUMNS) * 24 + 32; break; case CURSOR_AREA_IN_PARTY: if (cursorPosition == 0) @@ -6776,9 +6776,9 @@ static u8 InBoxInput_Normal(void) if (JOY_REPEAT(DPAD_UP)) { retVal = INPUT_1; - if (sBoxCursorPosition >= IN_BOX_ROWS) + if (sBoxCursorPosition >= IN_BOX_COLUMNS) { - cursorPosition -= IN_BOX_ROWS; + cursorPosition -= IN_BOX_COLUMNS; } else { @@ -6790,7 +6790,7 @@ static u8 InBoxInput_Normal(void) else if (JOY_REPEAT(DPAD_DOWN)) { retVal = INPUT_1; - cursorPosition += IN_BOX_ROWS; + cursorPosition += IN_BOX_COLUMNS; if (cursorPosition >= IN_BOX_COUNT) { cursorArea = CURSOR_AREA_BUTTONS; @@ -6804,28 +6804,28 @@ static u8 InBoxInput_Normal(void) else if (JOY_REPEAT(DPAD_LEFT)) { retVal = INPUT_1; - if (sBoxCursorPosition % IN_BOX_ROWS != 0) + if (sBoxCursorPosition % IN_BOX_COLUMNS != 0) { cursorPosition--; } else { sPSSData->field_CD3 = -1; - cursorPosition += (IN_BOX_ROWS - 1); + cursorPosition += (IN_BOX_COLUMNS - 1); } break; } else if (JOY_REPEAT(DPAD_RIGHT)) { retVal = INPUT_1; - if ((sBoxCursorPosition + 1) % IN_BOX_ROWS != 0) + if ((sBoxCursorPosition + 1) % IN_BOX_COLUMNS != 0) { cursorPosition++; } else { sPSSData->field_CD3 = 1; - cursorPosition -= (IN_BOX_ROWS - 1); + cursorPosition -= (IN_BOX_COLUMNS - 1); } break; } @@ -6904,9 +6904,9 @@ static u8 InBoxInput_GrabbingMultiple(void) { if (JOY_REPEAT(DPAD_UP)) { - if (sBoxCursorPosition / IN_BOX_ROWS != 0) + if (sBoxCursorPosition / IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_ROWS); + sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_COLUMNS); return INPUT_21; } else @@ -6916,9 +6916,9 @@ static u8 InBoxInput_GrabbingMultiple(void) } else if (JOY_REPEAT(DPAD_DOWN)) { - if (sBoxCursorPosition + IN_BOX_ROWS < IN_BOX_COUNT) + if (sBoxCursorPosition + IN_BOX_COLUMNS < IN_BOX_COUNT) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_ROWS); + sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_COLUMNS); return INPUT_21; } else @@ -6928,7 +6928,7 @@ static u8 InBoxInput_GrabbingMultiple(void) } else if (JOY_REPEAT(DPAD_LEFT)) { - if (sBoxCursorPosition % IN_BOX_ROWS != 0) + if (sBoxCursorPosition % IN_BOX_COLUMNS != 0) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - 1); return INPUT_21; @@ -6940,7 +6940,7 @@ static u8 InBoxInput_GrabbingMultiple(void) } else if (JOY_REPEAT(DPAD_RIGHT)) { - if ((sBoxCursorPosition + 1) % IN_BOX_ROWS != 0) + if ((sBoxCursorPosition + 1) % IN_BOX_COLUMNS != 0) { sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + 1); return INPUT_21; @@ -6979,7 +6979,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (sub_80D0580(0)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_ROWS); + sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_COLUMNS); return INPUT_25; } else @@ -6991,7 +6991,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (sub_80D0580(1)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_ROWS); + sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_COLUMNS); return INPUT_25; } else @@ -7608,17 +7608,17 @@ static u8 GetBoxCursorPosition(void) return sBoxCursorPosition; } -static void sub_80CFE14(u8 *arg0, u8 *arg1) +static void sub_80CFE14(u8 *x, u8 *y) { if (sBoxCursorArea == CURSOR_AREA_IN_BOX) { - *arg0 = sBoxCursorPosition % IN_BOX_ROWS; - *arg1 = sBoxCursorPosition / IN_BOX_ROWS; + *x = sBoxCursorPosition % IN_BOX_COLUMNS; + *y = sBoxCursorPosition / IN_BOX_COLUMNS; } else { - *arg0 = 0; - *arg1 = 0; + *x = 0; + *y = 0; } } @@ -7812,16 +7812,16 @@ EWRAM_DATA static struct { u8 field_0; u8 state; - u8 fromRow; u8 fromColumn; - u8 toRow; + u8 fromRow; u8 toColumn; + u8 toRow; u8 field_6; u8 field_7; - u8 minRow; u8 minColumn; + u8 minRow; + u8 columnsTotal; u8 rowsTotal; - u8 columsTotal; u16 bgX; u16 bgY; u16 field_10; @@ -7887,14 +7887,14 @@ static bool8 sub_80D024C(void) sMoveMonsPtr->state++; break; case 1: - sub_80CFE14(&sMoveMonsPtr->fromRow, &sMoveMonsPtr->fromColumn); - sMoveMonsPtr->toRow = sMoveMonsPtr->fromRow; + sub_80CFE14(&sMoveMonsPtr->fromColumn, &sMoveMonsPtr->fromRow); sMoveMonsPtr->toColumn = sMoveMonsPtr->fromColumn; + sMoveMonsPtr->toRow = sMoveMonsPtr->fromRow; ChangeBgX(0, -1024, 0); ChangeBgY(0, -1024, 0); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); FillWindowPixelBuffer8Bit(sPSSData->field_2200, PIXEL_FILL(0)); - sub_80D07B0(sMoveMonsPtr->fromRow, sMoveMonsPtr->fromColumn); + sub_80D07B0(sMoveMonsPtr->fromColumn, sMoveMonsPtr->fromRow); SetBgAttribute(0, BG_ATTR_PALETTEMODE, 1); PutWindowTilemap(sPSSData->field_2200); CopyWindowToVram8Bit(sPSSData->field_2200, 3); @@ -7951,8 +7951,8 @@ static bool8 sub_80D03B0(void) { sub_80CFE14(&sMoveMonsPtr->field_6, &sMoveMonsPtr->field_7); sub_80D062C(); - sMoveMonsPtr->toRow = sMoveMonsPtr->field_6; - sMoveMonsPtr->toColumn = sMoveMonsPtr->field_7; + sMoveMonsPtr->toColumn = sMoveMonsPtr->field_6; + sMoveMonsPtr->toRow = sMoveMonsPtr->field_7; CopyWindowToVram8Bit(sPSSData->field_2200, 2); sMoveMonsPtr->state++; } @@ -8054,27 +8054,27 @@ static bool8 sub_80D0580(u8 arg0) switch (arg0) { case 0: - if (sMoveMonsPtr->minColumn == 0) + if (sMoveMonsPtr->minRow == 0) return FALSE; - sMoveMonsPtr->minColumn--; + sMoveMonsPtr->minRow--; sub_80D0884(0, 1024, 6); break; case 1: - if (sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal >= 5) + if (sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal >= IN_BOX_ROWS) return FALSE; - sMoveMonsPtr->minColumn++; + sMoveMonsPtr->minRow++; sub_80D0884(0, -1024, 6); break; case 2: - if (sMoveMonsPtr->minRow == 0) + if (sMoveMonsPtr->minColumn == 0) return FALSE; - sMoveMonsPtr->minRow--; + sMoveMonsPtr->minColumn--; sub_80D0884(1024, 0, 6); break; case 3: - if (sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal > 5) + if (sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal >= IN_BOX_COLUMNS) return FALSE; - sMoveMonsPtr->minRow++; + sMoveMonsPtr->minColumn++; sub_80D0884(-1024, 0, 6); break; } @@ -8084,25 +8084,25 @@ static bool8 sub_80D0580(u8 arg0) static void sub_80D062C(void) { - s16 var = (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->field_6)) - (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->toRow)); - s16 var2 = (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->field_7)) - (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn)); + s16 var = (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->field_6)) - (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn)); + s16 var2 = (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->field_7)) - (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->toRow)); if (var > 0) - sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); if (var < 0) { - sub_80D0740(sMoveMonsPtr->toRow, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); - sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + sub_80D0740(sMoveMonsPtr->toColumn, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); } if (var2 > 0) - sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); if (var2 < 0) { - sub_80D0778(sMoveMonsPtr->toColumn, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); - sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + sub_80D0778(sMoveMonsPtr->toRow, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); } } @@ -8162,9 +8162,9 @@ static void sub_80D0778(u8 arg0, u8 arg1, u8 arg2) sub_80D0834(arg1++, arg0); } -static void sub_80D07B0(u8 arg0, u8 arg1) +static void sub_80D07B0(u8 x, u8 y) { - u8 position = arg0 + (6 * arg1); + u8 position = x + (IN_BOX_COLUMNS * y); u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2); u32 personality = GetCurrentBoxMonData(position, MON_DATA_PERSONALITY); @@ -8179,34 +8179,34 @@ static void sub_80D07B0(u8 arg0, u8 arg1) 0, 32, 32, - 24 * arg0, - 24 * arg1, + 24 * x, + 24 * y, 32, 32, index); } } -static void sub_80D0834(u8 arg0, u8 arg1) +static void sub_80D0834(u8 x, u8 y) { - u8 position = arg0 + (6 * arg1); + u8 position = x + (IN_BOX_COLUMNS * y); u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2); if (species != SPECIES_NONE) { FillWindowPixelRect8Bit(sPSSData->field_2200, PIXEL_FILL(0), - 24 * arg0, - 24 * arg1, + 24 * x, + 24 * y, 32, 32); } } -static void sub_80D0884(u16 arg0, u16 arg1, u16 arg2) +static void sub_80D0884(u16 x, u16 y, u16 arg2) { - sMoveMonsPtr->bgX = arg0; - sMoveMonsPtr->bgY = arg1; + sMoveMonsPtr->bgX = x; + sMoveMonsPtr->bgY = y; sMoveMonsPtr->field_10 = arg2; } @@ -8225,22 +8225,22 @@ static u8 sub_80D0894(void) static void sub_80D08CC(void) { s32 i, j; - s32 rowCount, columnCount; + s32 columnCount, rowCount; u8 boxId; u8 monArrayId; - sMoveMonsPtr->minRow = min(sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); sMoveMonsPtr->minColumn = min(sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + sMoveMonsPtr->minRow = min(sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + sMoveMonsPtr->columnsTotal = abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn) + 1; sMoveMonsPtr->rowsTotal = abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->toRow) + 1; - sMoveMonsPtr->columsTotal = abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn) + 1; boxId = StorageGetCurrentBox(); monArrayId = 0; + columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal; - for (i = sMoveMonsPtr->minColumn; i < columnCount; i++) + for (i = sMoveMonsPtr->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_ROWS * i) + sMoveMonsPtr->minRow; - for (j = sMoveMonsPtr->minRow; j < rowCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; + for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) { struct BoxPokemon *boxMon = GetBoxedMonPtr(boxId, boxPosition); // UB: possible null dereference @@ -8259,14 +8259,14 @@ static void sub_80D08CC(void) static void sub_80D09A4(void) { s32 i, j; + s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal; u8 boxId = StorageGetCurrentBox(); - for (i = sMoveMonsPtr->minColumn; i < columnCount; i++) + for (i = sMoveMonsPtr->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_ROWS * i) + sMoveMonsPtr->minRow; - for (j = sMoveMonsPtr->minRow; j < rowCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; + for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) { DestroyBoxMonIconAtPosition(boxPosition); ZeroBoxMonAt(boxId, boxPosition); @@ -8278,14 +8278,14 @@ static void sub_80D09A4(void) static void sub_80D0A1C(void) { s32 i, j; + s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal; u8 monArrayId = 0; - for (i = sMoveMonsPtr->minColumn; i < columnCount; i++) + for (i = sMoveMonsPtr->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_ROWS * i) + sMoveMonsPtr->minRow; - for (j = sMoveMonsPtr->minRow; j < rowCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; + for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) { if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) sub_80CB140(boxPosition); @@ -8298,15 +8298,15 @@ static void sub_80D0A1C(void) static void sub_80D0AAC(void) { s32 i, j; + s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal; u8 boxId = StorageGetCurrentBox(); u8 monArrayId = 0; - for (i = sMoveMonsPtr->minColumn; i < columnCount; i++) + for (i = sMoveMonsPtr->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_ROWS * i) + sMoveMonsPtr->minRow; - for (j = sMoveMonsPtr->minRow; j < rowCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; + for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) { if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) SetBoxMonAt(boxId, boxPosition, &sMoveMonsPtr->boxMons[monArrayId]); @@ -8328,20 +8328,20 @@ static void sub_80D0B5C(void) static u8 sub_80D0BA4(void) { - return (IN_BOX_ROWS * sMoveMonsPtr->fromColumn) + sMoveMonsPtr->fromRow; + return (IN_BOX_COLUMNS * sMoveMonsPtr->fromRow) + sMoveMonsPtr->fromColumn; } static bool8 sub_80D0BC0(void) { s32 i, j; + s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columsTotal; u8 monArrayId = 0; - for (i = sMoveMonsPtr->minColumn; i < columnCount; i++) + for (i = sMoveMonsPtr->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_ROWS * i) + sMoveMonsPtr->minRow; - for (j = sMoveMonsPtr->minRow; j < rowCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; + for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) { if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES) && GetCurrentBoxMonData(boxPosition, MON_DATA_SANITY_HAS_SPECIES)) @@ -8791,7 +8791,7 @@ static u8 GetItemIconIdxBySprite(struct Sprite *sprite) static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) { - u8 row, column; + u8 x, y; if (id >= MAX_ITEM_ICONS) return; @@ -8799,10 +8799,10 @@ static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) switch (cursorArea) { case CURSOR_AREA_IN_BOX: - row = cursorPos % IN_BOX_ROWS; - column = cursorPos / IN_BOX_ROWS; - sPSSData->itemIcons[id].sprite->pos1.x = (24 * row) + 112; - sPSSData->itemIcons[id].sprite->pos1.y = (24 * column) + 56; + x = cursorPos % IN_BOX_COLUMNS; + y = cursorPos / IN_BOX_COLUMNS; + sPSSData->itemIcons[id].sprite->pos1.x = (24 * x) + 112; + sPSSData->itemIcons[id].sprite->pos1.y = (24 * y) + 56; sPSSData->itemIcons[id].sprite->oam.priority = 2; break; case CURSOR_AREA_IN_PARTY: From 96dabc1a7f991a57d955723f67989e2d4101f2bd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 16 Apr 2021 17:05:44 -0400 Subject: [PATCH 127/762] Doc storage - multi move --- src/pokemon_storage_system.c | 1208 ++++++++++++++++++---------------- 1 file changed, 629 insertions(+), 579 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 3b97b9153fec..5b16011fb0db 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -150,29 +150,29 @@ enum { INPUT_1, INPUT_2, // Unused INPUT_3, // Unused - INPUT_4, - INPUT_5, - INPUT_6, - INPUT_7, - INPUT_8, - INPUT_9, - INPUT_10, - INPUT_11, - INPUT_12, - INPUT_13, - INPUT_14, - INPUT_15, - INPUT_16, - INPUT_17, - INPUT_18, - INPUT_19, - INPUT_20, - INPUT_21, - INPUT_22, - INPUT_23, - INPUT_24, - INPUT_25, - INPUT_26, + INPUT_CLOSE_BOX, + INPUT_SHOW_PARTY, + INPUT_HIDE_PARTY, + INPUT_BOX_OPTIONS, + INPUT_IN_MENU, + INPUT_SCROLL_RIGHT, + INPUT_SCROLL_LEFT, + INPUT_DEPOSIT, + INPUT_WITHDRAW, + INPUT_MOVE_MON, + INPUT_SHIFT_MON, + INPUT_PLACE_MON, + INPUT_TAKE_ITEM, + INPUT_GIVE_ITEM, + INPUT_SWITCH_ITEMS, + INPUT_PRESSED_B, + INPUT_MULTIMOVE_START, + INPUT_MULTIMOVE_CHANGE_SELECTION, + INPUT_MULTIMOVE_SINGLE, + INPUT_MULTIMOVE_GRAB_SELECTION, + INPUT_MULTIMOVE_UNABLE, + INPUT_MULTIMOVE_MOVE_MONS, + INPUT_MULTIMOVE_PLACE_MONS, }; enum { @@ -284,6 +284,31 @@ enum { RELEASE_ANIM_CAME_BACK, }; +// Modes for selecting and moving Pokémon in the box. +// "MULTIPLE" mode allows up to an entire box to be +// picked up at once by pressing Select then holding +// down the A button. While holding A down, the player +// may move the cursor around to select multiple Pokémon. +// This is MOVE_MODE_MULTIPLE_SELECTING. After releasing A +// those Pokémon will be picked up and can be moved around +// as a single unit. This is MOVE_MODE_MULTIPLE_MOVING +enum { + MOVE_MODE_NORMAL, + MOVE_MODE_MULTIPLE_SELECTING, + MOVE_MODE_MULTIPLE_MOVING, +}; + +// IDs for the main functions for moving multiple Pokémon. +// Given as arguments to MultiMove_SetFunction +enum { + MULTIMOVE_START, + MULTIMOVE_CANCEL, + MULTIMOVE_CHANGE_SELECTION, + MULTIMOVE_GRAB_SELECTION, + MULTIMOVE_MOVE_MONS, + MULTIMOVE_PLACE_MONS, +}; + struct Wallpaper { const u32 *tiles; @@ -439,7 +464,7 @@ struct PokemonStorageSystemData u32 field_CC8; s16 field_CCC; s16 field_CCE; - u16 field_CD0; + u16 cursorMoveSteps; s8 field_CD2; s8 field_CD3; u8 field_CD4; @@ -493,7 +518,7 @@ struct PokemonStorageSystemData u8 releaseMonName[POKEMON_NAME_LENGTH + 1]; u8 itemName[20]; u8 inBoxMovingMode; - u16 field_2200; + u16 multiMoveWindowId; struct ItemIcon itemIcons[MAX_ITEM_ICONS]; u16 movingItemId; u16 itemInfoWindowOffset; @@ -547,12 +572,12 @@ EWRAM_DATA static u8 sWhichToReshow = 0; EWRAM_DATA static u8 sLastUsedBox = 0; EWRAM_DATA static u16 sMovingItemId = 0; EWRAM_DATA static struct Pokemon gUnknown_02039D14 = {0}; -EWRAM_DATA static s8 sBoxCursorArea = 0; -EWRAM_DATA static s8 sBoxCursorPosition = 0; +EWRAM_DATA static s8 sCursorArea = 0; +EWRAM_DATA static s8 sCursorPosition = 0; EWRAM_DATA static bool8 sIsMonBeingMoved = 0; EWRAM_DATA static u8 sMovingMonOrigBoxId = 0; EWRAM_DATA static u8 sMovingMonOrigBoxPos = 0; -EWRAM_DATA static bool8 sCanOnlyMove = 0; +EWRAM_DATA static bool8 sAutoActionOn = 0; static void CreateMainMenu(u8, s16 *); static void Cb2_EnterPSS(u8); @@ -573,7 +598,7 @@ static void ScrollBackground(void); static void ChooseBoxMenu_MoveRight(void); static void ChooseBoxMenu_PrintInfo(void); static void sub_80CAA14(void); -static void sub_80CFDC4(void); +static void ToggleCursorAutoAction(void); static void sub_80CE790(void); static void sub_80CE8E4(void); static void GiveChosenBagItem(void); @@ -598,7 +623,6 @@ static void sub_80CA0D8(void); static void AddMenu(void); static void InitReleaseMon(void); static void InitCanReleaseMonVars(void); -static void sub_80D01B8(void); static void ReleaseMon(void); static void RefreshDisplayMonData(void); static void CreateDisplayMonSprite(void); @@ -649,9 +673,7 @@ static bool32 WaitForWallpaperGfxLoad(void); static bool8 InitPSSWindows(void); static bool8 ResetReleaseMonSpritePtr(void); static bool8 TryHideReleaseMon(void); -static bool8 sub_80D0164(void); static bool8 IsInitBoxActive(void); -static bool8 sub_80D01E4(void); static bool8 sub_80CDED4(void); static bool8 sub_80CDF08(void); static bool8 UpdateItemInfoWindowSlideIn(void); @@ -659,16 +681,14 @@ static bool8 UpdateItemInfoWindowSlideOut(void); static bool8 DoShowPartyMenu(void); static bool8 IsItemIconAnimActive(void); static bool8 ScrollToBox(void); -static bool8 sub_80CD554(void); +static bool8 UpdateCursorPos(void); static bool8 HidePartyMenu(void); static bool8 IsMovingItem(void); -static bool8 sub_80D0580(u8); -static bool8 sub_80D0BC0(void); static bool8 IsDisplayMosaicActive(void); static bool8 DoWallpaperGfxChange(void); static bool8 DoMonPlaceChange(void); static bool8 IsMenuLoading(void); -static bool8 CanMovePartyMon(void); +static bool8 IsRemovingLastPartyMon(void); static bool8 CanShiftMon(void); static bool8 IsCursorOnCloseBox(void); static bool8 IsCursorOnBox(void); @@ -713,14 +733,13 @@ static void InitMonPlaceChange(u8); static void SetMonMarkings(u8); static void ShowYesNoWindow(s8); static void sub_80CDBF8(u8); -static void sub_80D01D0(u8); static void AnimateBoxScrollArrows(bool8); static void sub_80CA984(bool8); static void CreatePartyMonsSprites(bool8); static void PrintMessage(u8 id); static s16 HandleMenuInput(void); static s8 RunCanReleaseMon(void); -static u8 GetBoxCursorPosition(void); +static u8 GetCursorPosition(void); static void Item_FromMonToMoving(u8, u8); static void Item_GiveMovingToMon(u8, u8); static void Item_TakeMons(u8, u8); @@ -764,32 +783,11 @@ static void SetDisplayMonData(void *, u8); static bool32 AtLeastThreeUsableMons(void); static u8 InBoxInput_Normal(void); static u8 InBoxInput_MovingMultiple(void); -static u8 InBoxInput_GrabbingMultiple(void); +static u8 InBoxInput_SelectingMultiple(void); static s8 GetMenuItemTextId(u8); -static u8 sub_80CFA5C(void); -static u8 sub_80D0BA4(void); -static bool8 sub_80CFA84(void); -static bool8 sub_80CFB44(void); -static bool8 sub_80D024C(void); -static bool8 sub_80D0344(void); -static bool8 sub_80D03B0(void); -static bool8 sub_80D0420(void); -static bool8 sub_80D04A0(void); -static bool8 sub_80D04C8(void); -static void sub_80D07B0(u8, u8); -static void sub_80D0834(u8, u8); -static void sub_80D0B5C(void); -static void sub_80D062C(void); -static void sub_80D0884(u16, u16, u16); -static void sub_80D08CC(void); -static void sub_80D09A4(void); -static void sub_80D0A1C(void); -static void sub_80D0AAC(void); -static u8 sub_80D0894(void); -static void sub_80D0778(u8, u8, u8); -static void sub_80D0708(u8, u8, u8); -static void sub_80D06D0(u8, u8, u8); -static void sub_80D0740(u8, u8, u8); +static u8 SetSelectionMenuTexts(void); +static bool8 SetMenuTexts_Mon(void); +static bool8 SetMenuTexts_Item(void); static void sub_80D27AC(u8, u16, u16, u16, u16); static void sub_80D27F4(u8, u8, s8); static void sub_80D2644(u8, u8, const void *, u16, u16); @@ -806,6 +804,35 @@ static void sub_80D2C1C(struct UnkStruct_2000028 *); static u8 GetBoxWallpaper(u8); static void SetBoxWallpaper(u8, u8); +// Functions for moving multiple Pokémon at once +static void MultiMove_Free(void); +static bool8 MultiMove_Init(void); +static bool8 MultiMove_RunFunction(void); +static bool8 MultiMove_TryMoveGroup(u8); +static bool8 MultiMove_CanPlaceSelection(void); +static void MultiMove_SetFunction(u8); +static u8 MultiMove_GetOrigin(void); +static bool8 MultiMove_Start(void); +static bool8 MultiMove_Cancel(void); +static bool8 MultiMove_ChangeSelection(void); +static bool8 MultiMove_GrabSelection(void); +static bool8 MultiMove_MoveMons(void); +static bool8 MultiMove_PlaceMons(void); +static void MultiMove_SetIconToBg(u8, u8); +static void MultiMove_ClearIconFromBg(u8, u8); +static void MultiMove_ResetBg(void); +static void MultiMove_UpdateSelectedIcons(void); +static void MultiMove_InitMove(u16, u16, u16); +static void MultiMove_GetMonsFromSelection(void); +static void MultiMove_RemoveMonsFromBox(void); +static void MultiMove_CreatePlacedMonIcons(void); +static void MultiMove_SetPlacedMonData(void); +static u8 MultiMove_UpdateMove(void); +static void MultiMove_DeselectRow(u8, u8, u8); +static void MultiMove_SelectRow(u8, u8, u8); +static void MultiMove_SelectColumn(u8, u8, u8); +static void MultiMove_DeselectColumn(u8, u8, u8); + struct { const u8 *text; const u8 *desc; @@ -2048,7 +2075,7 @@ static void Cb_InitPSS(u8 taskId) sub_80CD3EC(); break; case 5: - if (!sub_80D0164()) + if (!MultiMove_Init()) { SetPSSCallback(Cb_ChangeScreen); return; @@ -2158,22 +2185,38 @@ static void Cb_ReshowPSS(u8 taskId) } } +// States for the outer switch in Cb_MainPSS +enum { + MSTATE_HANDLE_INPUT, + MSTATE_1, + MSTATE_SCROLL_BOX, + MSTATE_WAIT_MSG, + MSTATE_ERROR_LAST_PARTY_MON, + MSTATE_ERROR_HAS_MAIL, + MSTATE_WAIT_ERROR_MSG, + MSTATE_MULTIMOVE_RUN, + MSTATE_MULTIMOVE_RUN_CANCEL, + MSTATE_MULTIMOVE_RUN_MOVED, + MSTATE_SCROLL_BOX_ITEM, + MSTATE_WAIT_ITEM_ANIM, +}; + static void Cb_MainPSS(u8 taskId) { switch (sPSSData->state) { - case 0: + case MSTATE_HANDLE_INPUT: switch (HandleInput()) { case INPUT_1: PlaySE(SE_SELECT); - sPSSData->state = 1; + sPSSData->state = MSTATE_1; break; - case INPUT_5: + case INPUT_SHOW_PARTY: if (sPSSData->boxOption != OPTION_MOVE_MONS && sPSSData->boxOption != OPTION_MOVE_ITEMS) { PrintMessage(MSG_WHICH_ONE_WILL_TAKE); - sPSSData->state = 3; + sPSSData->state = MSTATE_WAIT_MSG; } else { @@ -2181,11 +2224,11 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_ShowPartyPokemon); } break; - case INPUT_6: + case INPUT_HIDE_PARTY: if (sPSSData->boxOption == OPTION_MOVE_MONS) { if (IsMonBeingMoved() && ItemIsMail(sPSSData->displayMonItemId)) - sPSSData->state = 5; + sPSSData->state = MSTATE_ERROR_HAS_MAIL; else SetPSSCallback(Cb_HidePartyPokemon); } @@ -2194,20 +2237,20 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_HidePartyPokemon); } break; - case INPUT_4: + case INPUT_CLOSE_BOX: SetPSSCallback(Cb_OnCloseBoxPressed); break; - case INPUT_19: + case INPUT_PRESSED_B: SetPSSCallback(Cb_OnBPressed); break; - case INPUT_7: + case INPUT_BOX_OPTIONS: PlaySE(SE_SELECT); SetPSSCallback(Cb_HandleBoxOptions); break; - case INPUT_8: + case INPUT_IN_MENU: SetPSSCallback(Cb_OnSelectedMon); break; - case INPUT_9: + case INPUT_SCROLL_RIGHT: PlaySE(SE_SELECT); sPSSData->newCurrBoxId = StorageGetCurrentBox() + 1; if (sPSSData->newCurrBoxId >= TOTAL_BOXES_COUNT) @@ -2215,15 +2258,15 @@ static void Cb_MainPSS(u8 taskId) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = 2; + sPSSData->state = MSTATE_SCROLL_BOX; } else { sub_80CFEA8(); - sPSSData->state = 10; + sPSSData->state = MSTATE_SCROLL_BOX_ITEM; } break; - case INPUT_10: + case INPUT_SCROLL_LEFT: PlaySE(SE_SELECT); sPSSData->newCurrBoxId = StorageGetCurrentBox() - 1; if (sPSSData->newCurrBoxId < 0) @@ -2231,20 +2274,20 @@ static void Cb_MainPSS(u8 taskId) if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = 2; + sPSSData->state = MSTATE_SCROLL_BOX; } else { sub_80CFEA8(); - sPSSData->state = 10; + sPSSData->state = MSTATE_SCROLL_BOX_ITEM; } break; - case INPUT_11: - if (!CanMovePartyMon()) + case INPUT_DEPOSIT: + if (!IsRemovingLastPartyMon()) { if (ItemIsMail(sPSSData->displayMonItemId)) { - sPSSData->state = 5; + sPSSData->state = MSTATE_ERROR_HAS_MAIL; } else { @@ -2254,13 +2297,13 @@ static void Cb_MainPSS(u8 taskId) } else { - sPSSData->state = 4; + sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; } break; - case INPUT_13: - if (CanMovePartyMon()) + case INPUT_MOVE_MON: + if (IsRemovingLastPartyMon()) { - sPSSData->state = 4; + sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; } else { @@ -2268,10 +2311,10 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_MoveMon); } break; - case INPUT_14: + case INPUT_SHIFT_MON: if (!CanShiftMon()) { - sPSSData->state = 4; + sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; } else { @@ -2279,61 +2322,63 @@ static void Cb_MainPSS(u8 taskId) SetPSSCallback(Cb_ShiftMon); } break; - case INPUT_12: + case INPUT_WITHDRAW: PlaySE(SE_SELECT); SetPSSCallback(Cb_WithdrawMon); break; - case INPUT_15: + case INPUT_PLACE_MON: PlaySE(SE_SELECT); SetPSSCallback(Cb_PlaceMon); break; - case INPUT_16: + case INPUT_TAKE_ITEM: PlaySE(SE_SELECT); SetPSSCallback(Cb_TakeItemForMoving); break; - case INPUT_17: + case INPUT_GIVE_ITEM: PlaySE(SE_SELECT); SetPSSCallback(Cb_GiveMovingItemToMon); break; - case INPUT_18: + case INPUT_SWITCH_ITEMS: PlaySE(SE_SELECT); SetPSSCallback(Cb_SwitchSelectedItem); break; - case INPUT_20: + case INPUT_MULTIMOVE_START: PlaySE(SE_SELECT); - sub_80D01D0(0); - sPSSData->state = 7; + MultiMove_SetFunction(MULTIMOVE_START); + sPSSData->state = MSTATE_MULTIMOVE_RUN; break; - case INPUT_22: - sub_80D01D0(1); - sPSSData->state = 8; + case INPUT_MULTIMOVE_SINGLE: + MultiMove_SetFunction(MULTIMOVE_CANCEL); + sPSSData->state = MSTATE_MULTIMOVE_RUN_CANCEL; break; - case INPUT_21: + case INPUT_MULTIMOVE_CHANGE_SELECTION: PlaySE(SE_SELECT); - sub_80D01D0(2); - sPSSData->state = 9; + MultiMove_SetFunction(MULTIMOVE_CHANGE_SELECTION); + sPSSData->state = MSTATE_MULTIMOVE_RUN_MOVED; break; - case INPUT_23: - sub_80D01D0(3); - sPSSData->state = 7; + case INPUT_MULTIMOVE_GRAB_SELECTION: + MultiMove_SetFunction(MULTIMOVE_GRAB_SELECTION); + sPSSData->state = MSTATE_MULTIMOVE_RUN; break; - case INPUT_25: + case INPUT_MULTIMOVE_MOVE_MONS: PlaySE(SE_SELECT); - sub_80D01D0(4); - sPSSData->state = 9; + MultiMove_SetFunction(MULTIMOVE_MOVE_MONS); + sPSSData->state = MSTATE_MULTIMOVE_RUN_MOVED; break; - case INPUT_26: + case INPUT_MULTIMOVE_PLACE_MONS: PlaySE(SE_SELECT); - sub_80D01D0(5); - sPSSData->state = 7; + MultiMove_SetFunction(MULTIMOVE_PLACE_MONS); + sPSSData->state = MSTATE_MULTIMOVE_RUN; break; - case INPUT_24: + case INPUT_MULTIMOVE_UNABLE: + // When selecting/moving multiple Pokémon the + // cursor may not wrap around the edges. PlaySE(SE_FAILURE); break; } break; - case 1: - if (!sub_80CD554()) + case MSTATE_1: + if (!UpdateCursorPos()) { if (IsCursorOnCloseBox()) sub_80CA9C0(); @@ -2342,10 +2387,10 @@ static void Cb_MainPSS(u8 taskId) if (sPSSData->setMosaic) StartDisplayMonMosaicEffect(); - sPSSData->state = 0; + sPSSData->state = MSTATE_HANDLE_INPUT; } break; - case 2: + case MSTATE_SCROLL_BOX: if (!ScrollToBox()) { SetCurrentBox(sPSSData->newCurrBoxId); @@ -2358,64 +2403,68 @@ static void Cb_MainPSS(u8 taskId) if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { sub_80CFECC(); - sPSSData->state = 11; + sPSSData->state = MSTATE_WAIT_ITEM_ANIM; } else { - sPSSData->state = 0; + sPSSData->state = MSTATE_HANDLE_INPUT; } } break; - case 3: + case MSTATE_WAIT_MSG: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state = 0; + sPSSData->state = MSTATE_HANDLE_INPUT; } break; - case 4: + case MSTATE_ERROR_LAST_PARTY_MON: PlaySE(SE_FAILURE); PrintMessage(MSG_LAST_POKE); - sPSSData->state = 6; + sPSSData->state = MSTATE_WAIT_ERROR_MSG; break; - case 5: + case MSTATE_ERROR_HAS_MAIL: PlaySE(SE_FAILURE); PrintMessage(MSG_PLEASE_REMOVE_MAIL); - sPSSData->state = 6; + sPSSData->state = MSTATE_WAIT_ERROR_MSG; break; - case 6: + case MSTATE_WAIT_ERROR_MSG: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); SetPSSCallback(Cb_MainPSS); } break; - case 7: - if (!sub_80D01E4()) - sPSSData->state = 0; + case MSTATE_MULTIMOVE_RUN: + if (!MultiMove_RunFunction()) + sPSSData->state = MSTATE_HANDLE_INPUT; break; - case 8: - if (!sub_80D01E4()) + case MSTATE_MULTIMOVE_RUN_CANCEL: + // Began a multiple Pokémon selection but + // ended up selecting a single Pokémon. + // Wait for multi move to cancel, then + // do a normal move. + if (!MultiMove_RunFunction()) SetPSSCallback(Cb_MoveMon); break; - case 9: - if (!sub_80D01E4()) + case MSTATE_MULTIMOVE_RUN_MOVED: + if (!MultiMove_RunFunction()) { if (sPSSData->setMosaic) StartDisplayMonMosaicEffect(); - sPSSData->state = 0; + sPSSData->state = MSTATE_HANDLE_INPUT; } break; - case 10: + case MSTATE_SCROLL_BOX_ITEM: if (!IsItemIconAnimActive()) { SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = 2; + sPSSData->state = MSTATE_SCROLL_BOX; } break; - case 11: + case MSTATE_WAIT_ITEM_ANIM: if (!IsItemIconAnimActive()) - sPSSData->state = 0; + sPSSData->state = MSTATE_HANDLE_INPUT; break; } } @@ -2452,7 +2501,7 @@ static void Cb_HidePartyPokemon(u8 taskId) } break; case 2: - if (!sub_80CD554()) + if (!UpdateCursorPos()) { if (sPSSData->setMosaic) StartDisplayMonMosaicEffect(); @@ -2494,7 +2543,7 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_MainPSS); break; case MENU_MOVE: - if (CanMovePartyMon()) + if (IsRemovingLastPartyMon()) { sPSSData->state = 3; } @@ -2528,7 +2577,7 @@ static void Cb_OnSelectedMon(u8 taskId) SetPSSCallback(Cb_WithdrawMon); break; case MENU_STORE: - if (CanMovePartyMon()) + if (IsRemovingLastPartyMon()) { sPSSData->state = 3; } @@ -2544,7 +2593,7 @@ static void Cb_OnSelectedMon(u8 taskId) } break; case MENU_RELEASE: - if (CanMovePartyMon()) + if (IsRemovingLastPartyMon()) { sPSSData->state = 3; } @@ -2965,7 +3014,7 @@ static void Cb_TakeItemForMoving(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_FromMonToMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); + Item_FromMonToMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: @@ -2995,7 +3044,7 @@ static void Cb_GiveMovingItemToMon(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_GiveMovingToMon((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); + Item_GiveMovingToMon((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: @@ -3036,7 +3085,7 @@ static void Cb_ItemToBag(u8 taskId) else { PlaySE(SE_SELECT); - Item_TakeMons((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); + Item_TakeMons((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state = 1; } break; @@ -3087,7 +3136,7 @@ static void Cb_SwitchSelectedItem(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_SwitchMonsWithMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); + Item_SwitchMonsWithMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: @@ -3259,6 +3308,7 @@ static void Cb_PrintCantStoreMail(u8 taskId) } } +// Handle options menu that shows when the box title bar is selected static void Cb_HandleBoxOptions(u8 taskId) { switch (sPSSData->state) @@ -3656,25 +3706,24 @@ static void Cb_ChangeScreen(u8 taskId) static void GiveChosenBagItem(void) { - u16 item = gSpecialVar_ItemId; + u16 itemId = gSpecialVar_ItemId; - if (item != 0) + if (itemId != ITEM_NONE) { - u8 id = GetBoxCursorPosition(); - + u8 pos = GetCursorPosition(); if (sInPartyMenu) - SetMonData(&gPlayerParty[id], MON_DATA_HELD_ITEM, &item); + SetMonData(&gPlayerParty[pos], MON_DATA_HELD_ITEM, &itemId); else - SetCurrentBoxMonData(id, MON_DATA_HELD_ITEM, &item); + SetCurrentBoxMonData(pos, MON_DATA_HELD_ITEM, &itemId); - RemoveBagItem(item, 1); + RemoveBagItem(itemId, 1); } } static void FreePSSData(void) { sub_80D25F0(); - sub_80D01B8(); + MultiMove_Free(); FREE_AND_SET_NULL(sPSSData); FreeAllWindowBuffers(); } @@ -4111,7 +4160,7 @@ static bool8 DoShowPartyMenu(void) } break; case 1: - if (!sub_80CD554()) + if (!UpdateCursorPos()) { if (sPSSData->setMosaic) StartDisplayMonMosaicEffect(); @@ -4250,9 +4299,9 @@ static void sub_80CAEAC(void) if (!IsCursorOnBox()) { if (sInPartyMenu) - sub_80D0D8C(CURSOR_AREA_IN_PARTY, GetBoxCursorPosition()); + sub_80D0D8C(CURSOR_AREA_IN_PARTY, GetCursorPosition()); else - sub_80D0D8C(CURSOR_AREA_IN_BOX, GetBoxCursorPosition()); + sub_80D0D8C(CURSOR_AREA_IN_BOX, GetCursorPosition()); } if (sMovingItemId != ITEM_NONE) @@ -5574,19 +5623,19 @@ static struct Sprite *CreateChooseBoxArrows(u16 x, u16 y, u8 animId, u8 priority static void sub_80CD36C(void) { if (sPSSData->boxOption != OPTION_DEPOSIT) - sBoxCursorArea = CURSOR_AREA_IN_BOX; + sCursorArea = CURSOR_AREA_IN_BOX; else - sBoxCursorArea = CURSOR_AREA_IN_PARTY; + sCursorArea = CURSOR_AREA_IN_PARTY; - sBoxCursorPosition = 0; + sCursorPosition = 0; sIsMonBeingMoved = FALSE; sMovingMonOrigBoxId = 0; sMovingMonOrigBoxPos = 0; - sCanOnlyMove = FALSE; + sAutoActionOn = FALSE; sub_80CDC0C(); sub_80CFC14(); sPSSData->field_CD6 = 1; - sPSSData->inBoxMovingMode = 0; + sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; sub_80CEB40(); } @@ -5595,7 +5644,7 @@ static void sub_80CD3EC(void) sub_80CFC14(); sub_80CEBDC(); sPSSData->field_CD6 = 1; - sPSSData->inBoxMovingMode = 0; + sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; if (sIsMonBeingMoved) { sPSSData->movingMon = gUnknown_02039D14; @@ -5645,29 +5694,29 @@ static void GetCursorCoordsByPos(u8 cursorArea, u8 cursorPosition, u16 *x, u16 * static u16 GetSpeciesAtCursorPosition(void) { - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - return GetMonData(&gPlayerParty[sBoxCursorPosition], MON_DATA_SPECIES); + return GetMonData(&gPlayerParty[sCursorPosition], MON_DATA_SPECIES); case CURSOR_AREA_IN_BOX: - return GetCurrentBoxMonData(sBoxCursorPosition, MON_DATA_SPECIES); + return GetCurrentBoxMonData(sCursorPosition, MON_DATA_SPECIES); default: return SPECIES_NONE; } } -static bool8 sub_80CD554(void) +static bool8 UpdateCursorPos(void) { s16 tmp; - if (sPSSData->field_CD0 == 0) + if (sPSSData->cursorMoveSteps == 0) { if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return FALSE; else return IsItemIconAnimActive(); } - else if (--sPSSData->field_CD0 != 0) + else if (--sPSSData->cursorMoveSteps != 0) { sPSSData->field_CBC += sPSSData->field_CC4; sPSSData->field_CC0 += sPSSData->field_CC8; @@ -5722,12 +5771,12 @@ static void sub_80CD70C(void) int r7, r0; if (sPSSData->field_CD2 != 0 || sPSSData->field_CD3 != 0) - sPSSData->field_CD0 = 12; + sPSSData->cursorMoveSteps = 12; else - sPSSData->field_CD0 = 6; + sPSSData->cursorMoveSteps = 6; if (sPSSData->field_CD7) - sPSSData->field_CD7 = sPSSData->field_CD0 >> 1; + sPSSData->field_CD7 = sPSSData->cursorMoveSteps >> 1; switch (sPSSData->field_CD2) { @@ -5757,8 +5806,8 @@ static void sub_80CD70C(void) r7 <<= 8; r0 <<= 8; - sPSSData->field_CC4 = r0 / sPSSData->field_CD0; - sPSSData->field_CC8 = r7 / sPSSData->field_CD0; + sPSSData->field_CC4 = r0 / sPSSData->cursorMoveSteps; + sPSSData->field_CC8 = r7 / sPSSData->cursorMoveSteps; sPSSData->field_CBC = sPSSData->cursorSprite->pos1.x << 8; sPSSData->field_CC0 = sPSSData->cursorSprite->pos1.y << 8; } @@ -5769,7 +5818,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) sub_80CD70C(); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) + if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); } else @@ -5780,10 +5829,10 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { - if (sBoxCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0E50(CURSOR_AREA_IN_BOX, sBoxCursorPosition); - else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) - sub_80D0E50(CURSOR_AREA_IN_PARTY, sBoxCursorPosition); + if (sCursorArea == CURSOR_AREA_IN_BOX) + sub_80D0E50(CURSOR_AREA_IN_BOX, sCursorPosition); + else if (sCursorArea == CURSOR_AREA_IN_PARTY) + sub_80D0E50(CURSOR_AREA_IN_PARTY, sCursorPosition); if (newCursorArea == CURSOR_AREA_IN_BOX) sub_80D0D8C(newCursorArea, newCursorPosition); @@ -5791,7 +5840,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) sub_80D0D8C(newCursorArea, newCursorPosition); } - if (newCursorArea == CURSOR_AREA_IN_PARTY && sBoxCursorArea != CURSOR_AREA_IN_PARTY) + if (newCursorArea == CURSOR_AREA_IN_PARTY && sCursorArea != CURSOR_AREA_IN_PARTY) { sPSSData->field_CD6 = newCursorArea; sPSSData->field_CB8->invisible = TRUE; @@ -5807,7 +5856,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) sPSSData->field_CB8->oam.priority = 1; break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode != 0) + if (sPSSData->inBoxMovingMode != MOVE_MODE_NORMAL) { sPSSData->cursorSprite->oam.priority = 0; sPSSData->field_CB8->invisible = TRUE; @@ -5815,7 +5864,7 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) else { sPSSData->cursorSprite->oam.priority = 2; - if (sBoxCursorArea == CURSOR_AREA_IN_BOX && sIsMonBeingMoved) + if (sCursorArea == CURSOR_AREA_IN_BOX && sIsMonBeingMoved) SetMovingMonPriority(2); } break; @@ -5824,11 +5873,11 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) static void sub_80CDA68(void) { - sBoxCursorArea = sPSSData->field_CD4; - sBoxCursorPosition = sPSSData->field_CD5; + sCursorArea = sPSSData->field_CD4; + sCursorPosition = sPSSData->field_CD5; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { - if (sPSSData->inBoxMovingMode == 0 && !sIsMonBeingMoved) + if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); } else @@ -5838,7 +5887,7 @@ static void sub_80CDA68(void) } sub_80CEB40(); - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_BUTTONS: SetMovingMonPriority(1); @@ -5851,7 +5900,7 @@ static void sub_80CDA68(void) SetMovingMonPriority(1); break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode == 0) + if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) { sPSSData->cursorSprite->oam.priority = 1; sPSSData->field_CB8->oam.priority = 2; @@ -5896,7 +5945,7 @@ static void sub_80CDC0C(void) static void sub_80CDC18(void) { - gUnknown_02039D7E = sBoxCursorPosition; + gUnknown_02039D7E = sCursorPosition; } static u8 sub_80CDC2C(void) @@ -5992,7 +6041,7 @@ static bool8 MonPlaceChange_Shift(void) switch (sPSSData->monPlaceChangeState) { case 0: - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: sPSSData->field_D91 = TOTAL_BOXES_COUNT; @@ -6004,14 +6053,14 @@ static bool8 MonPlaceChange_Shift(void) return FALSE; } StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); - sub_80CBD5C(sPSSData->field_D91, sBoxCursorPosition); + sub_80CBD5C(sPSSData->field_D91, sCursorPosition); sPSSData->monPlaceChangeState++; break; case 1: if (!sub_80CBDC4()) { StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); - SetShiftedMonData(sPSSData->field_D91, sBoxCursorPosition); + SetShiftedMonData(sPSSData->field_D91, sCursorPosition); sPSSData->monPlaceChangeState++; } break; @@ -6065,17 +6114,17 @@ static bool8 sub_80CDF08(void) static void MoveMon(void) { - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - SetMovedMonData(TOTAL_BOXES_COUNT, sBoxCursorPosition); - sub_80CBC14(MODE_PARTY, sBoxCursorPosition); + SetMovedMonData(TOTAL_BOXES_COUNT, sCursorPosition); + sub_80CBC14(MODE_PARTY, sCursorPosition); break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode == 0) + if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) { - SetMovedMonData(StorageGetCurrentBox(), sBoxCursorPosition); - sub_80CBC14(MODE_BOX, sBoxCursorPosition); + SetMovedMonData(StorageGetCurrentBox(), sCursorPosition); + sub_80CBC14(MODE_BOX, sCursorPosition); } break; default: @@ -6089,16 +6138,16 @@ static void PlaceMon(void) { u8 boxId; - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - SetPlacedMonData(TOTAL_BOXES_COUNT, sBoxCursorPosition); - sub_80CBCAC(TOTAL_BOXES_COUNT, sBoxCursorPosition); + SetPlacedMonData(TOTAL_BOXES_COUNT, sCursorPosition); + sub_80CBCAC(TOTAL_BOXES_COUNT, sCursorPosition); break; case CURSOR_AREA_IN_BOX: boxId = StorageGetCurrentBox(); - SetPlacedMonData(boxId, sBoxCursorPosition); - sub_80CBCAC(boxId, sBoxCursorPosition); + SetPlacedMonData(boxId, sCursorPosition); + sub_80CBCAC(boxId, sCursorPosition); break; default: return; @@ -6115,7 +6164,7 @@ static void sub_80CE00C(void) static void SetMovedMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) - sPSSData->movingMon = gPlayerParty[sBoxCursorPosition]; + sPSSData->movingMon = gPlayerParty[sCursorPosition]; else BoxMonAtToMon(boxId, position, &sPSSData->movingMon); @@ -6173,9 +6222,9 @@ static bool8 TryStorePartyMonInBox(u8 boxId) } else { - SetMovedMonData(TOTAL_BOXES_COUNT, sBoxCursorPosition); + SetMovedMonData(TOTAL_BOXES_COUNT, sCursorPosition); SetPlacedMonData(boxId, boxPosition); - DestroyPartyMonIcon(sBoxCursorPosition); + DestroyPartyMonIcon(sCursorPosition); } if (boxId == StorageGetCurrentBox()) @@ -6197,12 +6246,12 @@ static void InitReleaseMon(void) if (sIsMonBeingMoved) mode = MODE_MOVE; - else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) + else if (sCursorArea == CURSOR_AREA_IN_PARTY) mode = MODE_PARTY; else mode = MODE_BOX; - SetReleaseMon(mode, sBoxCursorPosition); + SetReleaseMon(mode, sCursorPosition); StringCopy(sPSSData->releaseMonName, sPSSData->displayMonName); } @@ -6230,12 +6279,12 @@ static void ReleaseMon(void) } else { - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) + if (sCursorArea == CURSOR_AREA_IN_PARTY) boxId = TOTAL_BOXES_COUNT; else boxId = StorageGetCurrentBox(); - PurgeMonOrBoxMon(boxId, sBoxCursorPosition); + PurgeMonOrBoxMon(boxId, sCursorPosition); } sub_80CEB40(); } @@ -6301,17 +6350,17 @@ static void InitCanReleaseMonVars(void) } else { - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) + if (sCursorArea == CURSOR_AREA_IN_PARTY) { - sPSSData->tempMon = gPlayerParty[sBoxCursorPosition]; + sPSSData->tempMon = gPlayerParty[sCursorPosition]; sPSSData->releaseBoxId = TOTAL_BOXES_COUNT; } else { - BoxMonAtToMon(StorageGetCurrentBox(), sBoxCursorPosition, &sPSSData->tempMon); + BoxMonAtToMon(StorageGetCurrentBox(), sCursorPosition, &sPSSData->tempMon); sPSSData->releaseBoxId = StorageGetCurrentBox(); } - sPSSData->releaseBoxPos = sBoxCursorPosition; + sPSSData->releaseBoxPos = sCursorPosition; } GetRestrictedReleaseMoves(sPSSData->restrictedMoveList); @@ -6467,17 +6516,17 @@ static void sub_80CE7E8(void) sPSSData->field_2186 = 0; sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } - else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) + else if (sCursorArea == CURSOR_AREA_IN_PARTY) { sPSSData->field_218C.mon = gPlayerParty; - sPSSData->field_2187 = sBoxCursorPosition; + sPSSData->field_2187 = sCursorPosition; sPSSData->field_2186 = CountPartyMons() - 1; sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } else { sPSSData->field_218C.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); - sPSSData->field_2187 = sBoxCursorPosition; + sPSSData->field_2187 = sCursorPosition; sPSSData->field_2186 = IN_BOX_COUNT - 1; sPSSData->summaryScreenMode = SUMMARY_MODE_BOX; } @@ -6488,7 +6537,7 @@ static void sub_80CE8E4(void) if (sIsMonBeingMoved) sub_80CE790(); else - sBoxCursorPosition = gLastViewedMonIndex; + sCursorPosition = gLastViewedMonIndex; } s16 CompactPartySlots(void) @@ -6525,16 +6574,16 @@ static void SetMonMarkings(u8 markings) } else { - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) - SetMonData(&gPlayerParty[sBoxCursorPosition], MON_DATA_MARKINGS, &markings); - if (sBoxCursorArea == CURSOR_AREA_IN_BOX) - SetCurrentBoxMonData(sBoxCursorPosition, MON_DATA_MARKINGS, &markings); + if (sCursorArea == CURSOR_AREA_IN_PARTY) + SetMonData(&gPlayerParty[sCursorPosition], MON_DATA_MARKINGS, &markings); + if (sCursorArea == CURSOR_AREA_IN_BOX) + SetCurrentBoxMonData(sCursorPosition, MON_DATA_MARKINGS, &markings); } } -static bool8 CanMovePartyMon(void) +static bool8 IsRemovingLastPartyMon(void) { - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY && !sIsMonBeingMoved && CountPartyAliveNonEggMonsExcept(sBoxCursorPosition) == 0) + if (sCursorArea == CURSOR_AREA_IN_PARTY && !sIsMonBeingMoved && CountPartyAliveNonEggMonsExcept(sCursorPosition) == 0) return TRUE; else return FALSE; @@ -6544,7 +6593,7 @@ static bool8 CanShiftMon(void) { if (sIsMonBeingMoved) { - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY && CountPartyAliveNonEggMonsExcept(sBoxCursorPosition) == 0) + if (sCursorArea == CURSOR_AREA_IN_PARTY && CountPartyAliveNonEggMonsExcept(sCursorPosition) == 0) { if (sPSSData->displayMonIsEgg || GetMonData(&sPSSData->movingMon, MON_DATA_HP) == 0) return FALSE; @@ -6561,17 +6610,17 @@ static bool8 IsMonBeingMoved(void) static bool8 IsCursorOnBox(void) { - return (sBoxCursorArea == CURSOR_AREA_BOX); + return (sCursorArea == CURSOR_AREA_BOX); } static bool8 IsCursorOnCloseBox(void) { - return (sBoxCursorArea == CURSOR_AREA_BUTTONS && sBoxCursorPosition == 1); + return (sCursorArea == CURSOR_AREA_BUTTONS && sCursorPosition == 1); } static bool8 IsCursorInBox(void) { - return (sBoxCursorArea == CURSOR_AREA_IN_BOX); + return (sCursorArea == CURSOR_AREA_IN_BOX); } static void sub_80CEB40(void) @@ -6579,12 +6628,12 @@ static void sub_80CEB40(void) sPSSData->setMosaic = (sIsMonBeingMoved == FALSE); if (!sIsMonBeingMoved) { - switch (sBoxCursorArea) + switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - if (sBoxCursorPosition < PARTY_SIZE) + if (sCursorPosition < PARTY_SIZE) { - SetDisplayMonData(&gPlayerParty[sBoxCursorPosition], MODE_PARTY); + SetDisplayMonData(&gPlayerParty[sCursorPosition], MODE_PARTY); break; } // fallthrough @@ -6593,7 +6642,7 @@ static void sub_80CEB40(void) SetDisplayMonData(NULL, MODE_MOVE); break; case CURSOR_AREA_IN_BOX: - SetDisplayMonData(GetBoxedMonPtr(StorageGetCurrentBox(), sBoxCursorPosition), MODE_BOX); + SetDisplayMonData(GetBoxedMonPtr(StorageGetCurrentBox(), sCursorPosition), MODE_BOX); break; } } @@ -6749,12 +6798,12 @@ static u8 HandleInput_InBox(void) { switch (sPSSData->inBoxMovingMode) { - case 0: + case MOVE_MODE_NORMAL: default: return InBoxInput_Normal(); - case 1: - return InBoxInput_GrabbingMultiple(); - case 2: + case MOVE_MODE_MULTIPLE_SELECTING: + return InBoxInput_SelectingMultiple(); + case MOVE_MODE_MULTIPLE_MOVING: return InBoxInput_MovingMultiple(); } } @@ -6767,8 +6816,8 @@ static u8 InBoxInput_Normal(void) do { - cursorArea = sBoxCursorArea; - cursorPosition = sBoxCursorPosition; + cursorArea = sCursorArea; + cursorPosition = sCursorPosition; sPSSData->field_CD2 = 0; sPSSData->field_CD3 = 0; sPSSData->field_CD7 = 0; @@ -6776,7 +6825,7 @@ static u8 InBoxInput_Normal(void) if (JOY_REPEAT(DPAD_UP)) { retVal = INPUT_1; - if (sBoxCursorPosition >= IN_BOX_COLUMNS) + if (sCursorPosition >= IN_BOX_COLUMNS) { cursorPosition -= IN_BOX_COLUMNS; } @@ -6804,7 +6853,7 @@ static u8 InBoxInput_Normal(void) else if (JOY_REPEAT(DPAD_LEFT)) { retVal = INPUT_1; - if (sBoxCursorPosition % IN_BOX_COLUMNS != 0) + if (sCursorPosition % IN_BOX_COLUMNS != 0) { cursorPosition--; } @@ -6818,7 +6867,7 @@ static u8 InBoxInput_Normal(void) else if (JOY_REPEAT(DPAD_RIGHT)) { retVal = INPUT_1; - if ((sBoxCursorPosition + 1) % IN_BOX_COLUMNS != 0) + if ((sCursorPosition + 1) % IN_BOX_COLUMNS != 0) { cursorPosition++; } @@ -6837,54 +6886,54 @@ static u8 InBoxInput_Normal(void) break; } - if ((JOY_NEW(A_BUTTON)) && sub_80CFA5C()) + if ((JOY_NEW(A_BUTTON)) && SetSelectionMenuTexts()) { - if (!sCanOnlyMove) - return INPUT_8; + if (!sAutoActionOn) + return INPUT_IN_MENU; if (sPSSData->boxOption != OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) { switch (GetMenuItemTextId(0)) { case MENU_STORE: - return INPUT_11; + return INPUT_DEPOSIT; case MENU_WITHDRAW: - return INPUT_12; + return INPUT_WITHDRAW; case MENU_MOVE: - return INPUT_13; + return INPUT_MOVE_MON; case MENU_SHIFT: - return INPUT_14; + return INPUT_SHIFT_MON; case MENU_PLACE: - return INPUT_15; + return INPUT_PLACE_MON; case MENU_TAKE: - return INPUT_16; + return INPUT_TAKE_ITEM; case MENU_GIVE: - return INPUT_17; + return INPUT_GIVE_ITEM; case MENU_SWITCH: - return INPUT_18; + return INPUT_SWITCH_ITEMS; } } else { - sPSSData->inBoxMovingMode = 1; - return INPUT_20; + sPSSData->inBoxMovingMode = MOVE_MODE_MULTIPLE_SELECTING; + return INPUT_MULTIMOVE_START; } } if (JOY_NEW(B_BUTTON)) - return INPUT_19; + return INPUT_PRESSED_B; if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return INPUT_10; + return INPUT_SCROLL_LEFT; if (JOY_HELD(R_BUTTON)) - return INPUT_9; + return INPUT_SCROLL_RIGHT; } if (JOY_NEW(SELECT_BUTTON)) { - sub_80CFDC4(); + ToggleCursorAutoAction(); return INPUT_NONE; } @@ -6898,56 +6947,56 @@ static u8 InBoxInput_Normal(void) return retVal; } -static u8 InBoxInput_GrabbingMultiple(void) +static u8 InBoxInput_SelectingMultiple(void) { if (JOY_HELD(A_BUTTON)) { if (JOY_REPEAT(DPAD_UP)) { - if (sBoxCursorPosition / IN_BOX_COLUMNS != 0) + if (sCursorPosition / IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_COLUMNS); - return INPUT_21; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); + return INPUT_MULTIMOVE_CHANGE_SELECTION; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_REPEAT(DPAD_DOWN)) { - if (sBoxCursorPosition + IN_BOX_COLUMNS < IN_BOX_COUNT) + if (sCursorPosition + IN_BOX_COLUMNS < IN_BOX_COUNT) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_COLUMNS); - return INPUT_21; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); + return INPUT_MULTIMOVE_CHANGE_SELECTION; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_REPEAT(DPAD_LEFT)) { - if (sBoxCursorPosition % IN_BOX_COLUMNS != 0) + if (sCursorPosition % IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - 1); - return INPUT_21; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - 1); + return INPUT_MULTIMOVE_CHANGE_SELECTION; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_REPEAT(DPAD_RIGHT)) { - if ((sBoxCursorPosition + 1) % IN_BOX_COLUMNS != 0) + if ((sCursorPosition + 1) % IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + 1); - return INPUT_21; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + 1); + return INPUT_MULTIMOVE_CHANGE_SELECTION; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else @@ -6957,18 +7006,19 @@ static u8 InBoxInput_GrabbingMultiple(void) } else { - if (sub_80D0BA4() == sBoxCursorPosition) + if (MultiMove_GetOrigin() == sCursorPosition) { - sPSSData->inBoxMovingMode = 0; + // Doing a multiple mon selection but only chose 1 mon + sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; sPSSData->field_CB8->invisible = FALSE; - return INPUT_22; + return INPUT_MULTIMOVE_SINGLE; } else { sIsMonBeingMoved = (sPSSData->displayMonSpecies != SPECIES_NONE); - sPSSData->inBoxMovingMode = 2; + sPSSData->inBoxMovingMode = MOVE_MODE_MULTIPLE_MOVING; sMovingMonOrigBoxId = StorageGetCurrentBox(); - return INPUT_23; + return INPUT_MULTIMOVE_GRAB_SELECTION; } } } @@ -6977,77 +7027,77 @@ static u8 InBoxInput_MovingMultiple(void) { if (JOY_REPEAT(DPAD_UP)) { - if (sub_80D0580(0)) + if (MultiMove_TryMoveGroup(0)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - IN_BOX_COLUMNS); - return INPUT_25; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); + return INPUT_MULTIMOVE_MOVE_MONS; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_REPEAT(DPAD_DOWN)) { - if (sub_80D0580(1)) + if (MultiMove_TryMoveGroup(1)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + IN_BOX_COLUMNS); - return INPUT_25; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); + return INPUT_MULTIMOVE_MOVE_MONS; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_REPEAT(DPAD_LEFT)) { - if (sub_80D0580(2)) + if (MultiMove_TryMoveGroup(2)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition - 1); - return INPUT_25; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - 1); + return INPUT_MULTIMOVE_MOVE_MONS; } else { - return INPUT_10; + return INPUT_SCROLL_LEFT; } } else if (JOY_REPEAT(DPAD_RIGHT)) { - if (sub_80D0580(3)) + if (MultiMove_TryMoveGroup(3)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sBoxCursorPosition + 1); - return INPUT_25; + sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + 1); + return INPUT_MULTIMOVE_MOVE_MONS; } else { - return INPUT_9; + return INPUT_SCROLL_RIGHT; } } else if (JOY_NEW(A_BUTTON)) { - if (sub_80D0BC0()) + if (MultiMove_CanPlaceSelection()) { sIsMonBeingMoved = FALSE; - sPSSData->inBoxMovingMode = 0; - return INPUT_26; + sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; + return INPUT_MULTIMOVE_PLACE_MONS; } else { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } } else if (JOY_NEW(B_BUTTON)) { - return INPUT_24; + return INPUT_MULTIMOVE_UNABLE; } else { if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return INPUT_10; + return INPUT_SCROLL_LEFT; if (JOY_HELD(R_BUTTON)) - return INPUT_9; + return INPUT_SCROLL_RIGHT; } return INPUT_NONE; @@ -7063,8 +7113,8 @@ static u8 HandleInput_InParty(void) do { - cursorArea = sBoxCursorArea; - cursorPosition = sBoxCursorPosition; + cursorArea = sCursorArea; + cursorPosition = sCursorPosition; sPSSData->field_CD3 = 0; sPSSData->field_CD2 = 0; sPSSData->field_CD7 = 0; @@ -7075,7 +7125,7 @@ static u8 HandleInput_InParty(void) { if (--cursorPosition < 0) cursorPosition = PARTY_SIZE; - if (cursorPosition != sBoxCursorPosition) + if (cursorPosition != sCursorPosition) retVal = INPUT_1; break; } @@ -7083,27 +7133,27 @@ static u8 HandleInput_InParty(void) { if (++cursorPosition > PARTY_SIZE) cursorPosition = 0; - if (cursorPosition != sBoxCursorPosition) + if (cursorPosition != sCursorPosition) retVal = INPUT_1; break; } - else if (JOY_REPEAT(DPAD_LEFT) && sBoxCursorPosition != 0) + else if (JOY_REPEAT(DPAD_LEFT) && sCursorPosition != 0) { retVal = INPUT_1; - sPSSData->field_CD6 = sBoxCursorPosition; + sPSSData->field_CD6 = sCursorPosition; cursorPosition = 0; break; } else if (JOY_REPEAT(DPAD_RIGHT)) { - if (sBoxCursorPosition == 0) + if (sCursorPosition == 0) { retVal = INPUT_1; cursorPosition = sPSSData->field_CD6; } else { - retVal = INPUT_6; + retVal = INPUT_HIDE_PARTY; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 0; } @@ -7112,36 +7162,36 @@ static u8 HandleInput_InParty(void) if (JOY_NEW(A_BUTTON)) { - if (sBoxCursorPosition == PARTY_SIZE) + if (sCursorPosition == PARTY_SIZE) { if (sPSSData->boxOption == OPTION_DEPOSIT) - return INPUT_4; + return INPUT_CLOSE_BOX; gotoBox = TRUE; } - else if (sub_80CFA5C()) + else if (SetSelectionMenuTexts()) { - if (!sCanOnlyMove) - return INPUT_8; + if (!sAutoActionOn) + return INPUT_IN_MENU; switch (GetMenuItemTextId(0)) { case MENU_STORE: - return INPUT_11; + return INPUT_DEPOSIT; case MENU_WITHDRAW: - return INPUT_12; + return INPUT_WITHDRAW; case MENU_MOVE: - return INPUT_13; + return INPUT_MOVE_MON; case MENU_SHIFT: - return INPUT_14; + return INPUT_SHIFT_MON; case MENU_PLACE: - return INPUT_15; + return INPUT_PLACE_MON; case MENU_TAKE: - return INPUT_16; + return INPUT_TAKE_ITEM; case MENU_GIVE: - return INPUT_17; + return INPUT_GIVE_ITEM; case MENU_SWITCH: - return INPUT_18; + return INPUT_SWITCH_ITEMS; } } } @@ -7149,20 +7199,20 @@ static u8 HandleInput_InParty(void) if (JOY_NEW(B_BUTTON)) { if (sPSSData->boxOption == OPTION_DEPOSIT) - return INPUT_19; + return INPUT_PRESSED_B; gotoBox = TRUE; } if (gotoBox) { - retVal = INPUT_6; + retVal = INPUT_HIDE_PARTY; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 0; } else if (JOY_NEW(SELECT_BUTTON)) { - sub_80CFDC4(); + ToggleCursorAutoAction(); return INPUT_NONE; } @@ -7170,7 +7220,7 @@ static u8 HandleInput_InParty(void) if (retVal != INPUT_NONE) { - if (retVal != INPUT_6) + if (retVal != INPUT_HIDE_PARTY) sub_80CD894(cursorArea, cursorPosition); } @@ -7206,31 +7256,31 @@ static u8 HandleInput_OnBox(void) } if (JOY_HELD(DPAD_LEFT)) - return INPUT_10; + return INPUT_SCROLL_LEFT; if (JOY_HELD(DPAD_RIGHT)) - return INPUT_9; + return INPUT_SCROLL_RIGHT; if (gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR) { if (JOY_HELD(L_BUTTON)) - return INPUT_10; + return INPUT_SCROLL_LEFT; if (JOY_HELD(R_BUTTON)) - return INPUT_9; + return INPUT_SCROLL_RIGHT; } if (JOY_NEW(A_BUTTON)) { AnimateBoxScrollArrows(FALSE); AddBoxMenu(); - return INPUT_7; + return INPUT_BOX_OPTIONS; } if (JOY_NEW(B_BUTTON)) - return INPUT_19; + return INPUT_PRESSED_B; if (JOY_NEW(SELECT_BUTTON)) { - sub_80CFDC4(); + ToggleCursorAutoAction(); return INPUT_NONE; } @@ -7256,8 +7306,8 @@ static u8 HandleInput_OnButtons(void) do { - cursorArea = sBoxCursorArea; - cursorPosition = sBoxCursorPosition; + cursorArea = sCursorArea; + cursorPosition = sCursorPosition; sPSSData->field_CD3 = 0; sPSSData->field_CD2 = 0; sPSSData->field_CD7 = 0; @@ -7267,7 +7317,7 @@ static u8 HandleInput_OnButtons(void) retVal = INPUT_1; cursorArea = CURSOR_AREA_IN_BOX; sPSSData->field_CD2 = -1; - if (sBoxCursorPosition == 0) + if (sCursorPosition == 0) cursorPosition = IN_BOX_COUNT - 1 - 5; else cursorPosition = IN_BOX_COUNT - 1; @@ -7299,14 +7349,16 @@ static u8 HandleInput_OnButtons(void) break; } + // Button was pressed, determine which if (JOY_NEW(A_BUTTON)) - return (cursorPosition == 0) ? INPUT_5 : INPUT_4; + return (cursorPosition == 0) ? INPUT_SHOW_PARTY : INPUT_CLOSE_BOX; + if (JOY_NEW(B_BUTTON)) - return INPUT_19; + return INPUT_PRESSED_B; if (JOY_NEW(SELECT_BUTTON)) { - sub_80CFDC4(); + ToggleCursorAutoAction(); return INPUT_NONE; } @@ -7337,7 +7389,7 @@ static u8 HandleInput(void) u16 i = 0; while (inputFuncs[i].func != NULL) { - if (inputFuncs[i].area == sBoxCursorArea) + if (inputFuncs[i].area == sCursorArea) return inputFuncs[i].func(); i++; } @@ -7354,16 +7406,16 @@ static void AddBoxMenu(void) SetMenuText(MENU_CANCEL); } -static u8 sub_80CFA5C(void) +static u8 SetSelectionMenuTexts(void) { InitMenu(); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) - return sub_80CFA84(); + return SetMenuTexts_Mon(); else - return sub_80CFB44(); + return SetMenuTexts_Item(); } -static bool8 sub_80CFA84(void) +static bool8 SetMenuTexts_Mon(void) { u16 species = GetSpeciesAtCursorPosition(); @@ -7405,7 +7457,7 @@ static bool8 sub_80CFA84(void) SetMenuText(MENU_SUMMARY); if (sPSSData->boxOption == OPTION_MOVE_MONS) { - if (!sBoxCursorArea) + if (sCursorArea == CURSOR_AREA_IN_BOX) SetMenuText(MENU_WITHDRAW); else SetMenuText(MENU_STORE); @@ -7417,7 +7469,7 @@ static bool8 sub_80CFA84(void) return TRUE; } -static bool8 sub_80CFB44(void) +static bool8 SetMenuTexts_Item(void) { if (sPSSData->displayMonSpecies == SPECIES_EGG) return FALSE; @@ -7554,15 +7606,15 @@ static void sub_80CFC14(void) LoadSpriteSheets(spriteSheets); LoadSpritePalettes(spritePalettes); - sPSSData->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); - sPSSData->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); + sPSSData->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); // White hand, normal + sPSSData->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); // Yellow hand, when auto-action is on - GetCursorCoordsByPos(sBoxCursorArea, sBoxCursorPosition, &x, &y); + GetCursorCoordsByPos(sCursorArea, sCursorPosition, &x, &y); spriteId = CreateSprite(&sSpriteTemplate_Cursor, x, y, 6); if (spriteId != MAX_SPRITES) { sPSSData->cursorSprite = &gSprites[spriteId]; - sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sCanOnlyMove]; + sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sAutoActionOn]; sPSSData->cursorSprite->oam.priority = 1; if (sIsMonBeingMoved) StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); @@ -7572,7 +7624,7 @@ static void sub_80CFC14(void) sPSSData->cursorSprite = NULL; } - if (sBoxCursorArea == CURSOR_AREA_IN_PARTY) + if (sCursorArea == CURSOR_AREA_IN_PARTY) { subpriority = 13; priority = 1; @@ -7588,7 +7640,7 @@ static void sub_80CFC14(void) { sPSSData->field_CB8 = &gSprites[spriteId]; sPSSData->field_CB8->oam.priority = priority; - if (sBoxCursorArea) + if (sCursorArea) sPSSData->field_CB8->invisible = 1; } else @@ -7597,28 +7649,28 @@ static void sub_80CFC14(void) } } -static void sub_80CFDC4(void) +static void ToggleCursorAutoAction(void) { - sCanOnlyMove = !sCanOnlyMove; - sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sCanOnlyMove]; + sAutoActionOn = !sAutoActionOn; + sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sAutoActionOn]; } -static u8 GetBoxCursorPosition(void) +static u8 GetCursorPosition(void) { - return sBoxCursorPosition; + return sCursorPosition; } -static void sub_80CFE14(u8 *x, u8 *y) +static void GetCursorBoxColumnAndRow(u8 *column, u8 *row) { - if (sBoxCursorArea == CURSOR_AREA_IN_BOX) + if (sCursorArea == CURSOR_AREA_IN_BOX) { - *x = sBoxCursorPosition % IN_BOX_COLUMNS; - *y = sBoxCursorPosition / IN_BOX_COLUMNS; + *column = sCursorPosition % IN_BOX_COLUMNS; + *row = sCursorPosition / IN_BOX_COLUMNS; } else { - *x = 0; - *y = 0; + *column = 0; + *row = 0; } } @@ -7639,14 +7691,14 @@ static void SetCursorPriorityTo1(void) static void sub_80CFEA8(void) { - if (sBoxCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0E50(CURSOR_AREA_IN_BOX, sBoxCursorPosition); + if (sCursorArea == CURSOR_AREA_IN_BOX) + sub_80D0E50(CURSOR_AREA_IN_BOX, sCursorPosition); } static void sub_80CFECC(void) { - if (sBoxCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0D8C(CURSOR_AREA_IN_BOX, sBoxCursorPosition); + if (sCursorArea == CURSOR_AREA_IN_BOX) + sub_80D0D8C(CURSOR_AREA_IN_BOX, sCursorPosition); } static void InitMenu(void) @@ -7793,11 +7845,17 @@ static void RemoveMenu(void) RemoveWindow(sPSSData->menuWindowId); } -// The functions below handle moving and grabbing multiple mons at once. -// The icons are converted to background 0 which coordinates are changed while moving mons. -// There is also a bit of math involved in determining how many column/rows of mons to grab/move. -static const struct WindowTemplate gUnknown_0857BB1C = +//------------------------------------------------------------------------------ +// MultiMove +// +// The functions below handle moving and selecting multiple Pokémon at once. +// The icon sprites are moved to bg 0, and this bg is manipulated to move +// them as a group. +//------------------------------------------------------------------------------ + + +static const struct WindowTemplate sWindowTemplate_MultiMove = { .bg = 0, .tilemapLeft = 10, @@ -7810,33 +7868,33 @@ static const struct WindowTemplate gUnknown_0857BB1C = EWRAM_DATA static struct { - u8 field_0; + u8 funcId; u8 state; u8 fromColumn; u8 fromRow; u8 toColumn; u8 toRow; - u8 field_6; - u8 field_7; + u8 cursorColumn; + u8 cursorRow; u8 minColumn; u8 minRow; u8 columnsTotal; u8 rowsTotal; u16 bgX; u16 bgY; - u16 field_10; + u16 bgMoveSteps; struct BoxPokemon boxMons[IN_BOX_COUNT]; -} *sMoveMonsPtr = NULL; +} *sMultiMove = NULL; -static bool8 sub_80D0164(void) +static bool8 MultiMove_Init(void) { - sMoveMonsPtr = Alloc(sizeof(*sMoveMonsPtr)); - if (sMoveMonsPtr != NULL) + sMultiMove = Alloc(sizeof(*sMultiMove)); + if (sMultiMove != NULL) { - sPSSData->field_2200 = AddWindow8Bit(&gUnknown_0857BB1C); - if (sPSSData->field_2200 != 0xFF) + sPSSData->multiMoveWindowId = AddWindow8Bit(&sWindowTemplate_MultiMove); + if (sPSSData->multiMoveWindowId != WINDOW_NONE) { - FillWindowPixelBuffer(sPSSData->field_2200, PIXEL_FILL(0)); + FillWindowPixelBuffer(sPSSData->multiMoveWindowId, PIXEL_FILL(0)); return TRUE; } } @@ -7844,64 +7902,64 @@ static bool8 sub_80D0164(void) return FALSE; } -static void sub_80D01B8(void) +static void MultiMove_Free(void) { - if (sMoveMonsPtr != NULL) - Free(sMoveMonsPtr); + if (sMultiMove != NULL) + Free(sMultiMove); } -static void sub_80D01D0(u8 arg0) +static void MultiMove_SetFunction(u8 id) { - sMoveMonsPtr->field_0 = arg0; - sMoveMonsPtr->state = 0; + sMultiMove->funcId = id; + sMultiMove->state = 0; } -static bool8 sub_80D01E4(void) +// Returns TRUE if the called function has more to do, FALSE otherwise +static bool8 MultiMove_RunFunction(void) { - switch (sMoveMonsPtr->field_0) + switch (sMultiMove->funcId) { - case 0: - return sub_80D024C(); - case 1: - return sub_80D0344(); - case 2: - return sub_80D03B0(); - case 3: - return sub_80D0420(); - case 4: - return sub_80D04A0(); - case 5: - return sub_80D04C8(); + case MULTIMOVE_START: + return MultiMove_Start(); + case MULTIMOVE_CANCEL: + return MultiMove_Cancel(); + case MULTIMOVE_CHANGE_SELECTION: + return MultiMove_ChangeSelection(); + case MULTIMOVE_GRAB_SELECTION: + return MultiMove_GrabSelection(); + case MULTIMOVE_MOVE_MONS: + return MultiMove_MoveMons(); + case MULTIMOVE_PLACE_MONS: + return MultiMove_PlaceMons(); } - return FALSE; } -static bool8 sub_80D024C(void) +static bool8 MultiMove_Start(void) { - switch (sMoveMonsPtr->state) + switch (sMultiMove->state) { case 0: HideBg(0); sub_80D304C(0x80); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 1: - sub_80CFE14(&sMoveMonsPtr->fromColumn, &sMoveMonsPtr->fromRow); - sMoveMonsPtr->toColumn = sMoveMonsPtr->fromColumn; - sMoveMonsPtr->toRow = sMoveMonsPtr->fromRow; + GetCursorBoxColumnAndRow(&sMultiMove->fromColumn, &sMultiMove->fromRow); + sMultiMove->toColumn = sMultiMove->fromColumn; + sMultiMove->toRow = sMultiMove->fromRow; ChangeBgX(0, -1024, 0); ChangeBgY(0, -1024, 0); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); - FillWindowPixelBuffer8Bit(sPSSData->field_2200, PIXEL_FILL(0)); - sub_80D07B0(sMoveMonsPtr->fromColumn, sMoveMonsPtr->fromRow); + FillWindowPixelBuffer8Bit(sPSSData->multiMoveWindowId, PIXEL_FILL(0)); + MultiMove_SetIconToBg(sMultiMove->fromColumn, sMultiMove->fromRow); SetBgAttribute(0, BG_ATTR_PALETTEMODE, 1); - PutWindowTilemap(sPSSData->field_2200); - CopyWindowToVram8Bit(sPSSData->field_2200, 3); + PutWindowTilemap(sPSSData->multiMoveWindowId); + CopyWindowToVram8Bit(sPSSData->multiMoveWindowId, 3); BlendPalettes(0x3F00, 8, RGB_WHITE); StartCursorAnim(CURSOR_ANIM_OPEN); SetGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 2: if (!IsDma3ManagerBusyWithBgCopy()) @@ -7915,18 +7973,18 @@ static bool8 sub_80D024C(void) return TRUE; } -static bool8 sub_80D0344(void) +static bool8 MultiMove_Cancel(void) { - switch (sMoveMonsPtr->state) + switch (sMultiMove->state) { case 0: HideBg(0); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 1: - sub_80D0B5C(); + MultiMove_ResetBg(); StartCursorAnim(CURSOR_ANIM_BOUNCE); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 2: if (!IsDma3ManagerBusyWithBgCopy()) @@ -7942,19 +8000,19 @@ static bool8 sub_80D0344(void) return TRUE; } -static bool8 sub_80D03B0(void) +static bool8 MultiMove_ChangeSelection(void) { - switch (sMoveMonsPtr->state) + switch (sMultiMove->state) { case 0: - if (!sub_80CD554()) + if (!UpdateCursorPos()) { - sub_80CFE14(&sMoveMonsPtr->field_6, &sMoveMonsPtr->field_7); - sub_80D062C(); - sMoveMonsPtr->toColumn = sMoveMonsPtr->field_6; - sMoveMonsPtr->toRow = sMoveMonsPtr->field_7; - CopyWindowToVram8Bit(sPSSData->field_2200, 2); - sMoveMonsPtr->state++; + GetCursorBoxColumnAndRow(&sMultiMove->cursorColumn, &sMultiMove->cursorRow); + MultiMove_UpdateSelectedIcons(); + sMultiMove->toColumn = sMultiMove->cursorColumn; + sMultiMove->toRow = sMultiMove->cursorRow; + CopyWindowToVram8Bit(sPSSData->multiMoveWindowId, 2); + sMultiMove->state++; } break; case 1: @@ -7964,75 +8022,75 @@ static bool8 sub_80D03B0(void) return TRUE; } -static bool8 sub_80D0420(void) +static bool8 MultiMove_GrabSelection(void) { - u8 var1, var2; + bool8 movingBg, movingMon; - switch (sMoveMonsPtr->state) + switch (sMultiMove->state) { case 0: - sub_80D08CC(); - sub_80D09A4(); + MultiMove_GetMonsFromSelection(); + MultiMove_RemoveMonsFromBox(); sub_80CDC64(FALSE); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 1: if (!DoMonPlaceChange()) { StartCursorAnim(CURSOR_ANIM_FIST); - sub_80D0884(0, 256, 8); + MultiMove_InitMove(0, 256, 8); sub_80CDC64(TRUE); - sMoveMonsPtr->state++; + sMultiMove->state++; } break; case 2: - var1 = sub_80D0894(); - var2 = DoMonPlaceChange(); - if (!var1 && !var2) - return FALSE; + movingBg = MultiMove_UpdateMove(); + movingMon = DoMonPlaceChange(); + if (!movingBg && !movingMon) + return FALSE; // Finished break; } return TRUE; } -static bool8 sub_80D04A0(void) +static bool8 MultiMove_MoveMons(void) { - u8 var1 = sub_80CD554(); - u8 var2 = sub_80D0894(); + bool8 movingCursor = UpdateCursorPos(); + bool8 movingBg = MultiMove_UpdateMove(); - if (!var1 && !var2) + if (!movingCursor && !movingBg) return FALSE; else return TRUE; } -static bool8 sub_80D04C8(void) +static bool8 MultiMove_PlaceMons(void) { - switch (sMoveMonsPtr->state) + switch (sMultiMove->state) { case 0: - sub_80D0AAC(); - sub_80D0884(0, -256, 8); + MultiMove_SetPlacedMonData(); + MultiMove_InitMove(0, -256, 8); sub_80CDC64(FALSE); - sMoveMonsPtr->state++; + sMultiMove->state++; break; case 1: - if (!DoMonPlaceChange() && !sub_80D0894()) + if (!DoMonPlaceChange() && !MultiMove_UpdateMove()) { - sub_80D0A1C(); + MultiMove_CreatePlacedMonIcons(); StartCursorAnim(CURSOR_ANIM_OPEN); sub_80CDC64(TRUE); HideBg(0); - sMoveMonsPtr->state++; + sMultiMove->state++; } break; case 2: if (!DoMonPlaceChange()) { StartCursorAnim(CURSOR_ANIM_BOUNCE); - sub_80D0B5C(); - sMoveMonsPtr->state++; + MultiMove_ResetBg(); + sMultiMove->state++; } break; case 3: @@ -8045,124 +8103,115 @@ static bool8 sub_80D04C8(void) } break; } - return TRUE; } -static bool8 sub_80D0580(u8 arg0) +// Returns TRUE if the movement was successful, FALSE otherwise +static bool8 MultiMove_TryMoveGroup(u8 dir) { - switch (arg0) + switch (dir) { - case 0: - if (sMoveMonsPtr->minRow == 0) + case 0: // Up + if (sMultiMove->minRow == 0) return FALSE; - sMoveMonsPtr->minRow--; - sub_80D0884(0, 1024, 6); + sMultiMove->minRow--; + MultiMove_InitMove(0, 1024, 6); break; - case 1: - if (sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal >= IN_BOX_ROWS) + case 1: // Down + if (sMultiMove->minRow + sMultiMove->rowsTotal >= IN_BOX_ROWS) return FALSE; - sMoveMonsPtr->minRow++; - sub_80D0884(0, -1024, 6); + sMultiMove->minRow++; + MultiMove_InitMove(0, -1024, 6); break; - case 2: - if (sMoveMonsPtr->minColumn == 0) + case 2: // Left + if (sMultiMove->minColumn == 0) return FALSE; - sMoveMonsPtr->minColumn--; - sub_80D0884(1024, 0, 6); + sMultiMove->minColumn--; + MultiMove_InitMove(1024, 0, 6); break; - case 3: - if (sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal >= IN_BOX_COLUMNS) + case 3: // Right + if (sMultiMove->minColumn + sMultiMove->columnsTotal >= IN_BOX_COLUMNS) return FALSE; - sMoveMonsPtr->minColumn++; - sub_80D0884(-1024, 0, 6); + sMultiMove->minColumn++; + MultiMove_InitMove(-1024, 0, 6); break; } - return TRUE; } -static void sub_80D062C(void) +static void MultiMove_UpdateSelectedIcons(void) { - s16 var = (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->field_6)) - (abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn)); - s16 var2 = (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->field_7)) - (abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->toRow)); + s16 columnChange = (abs(sMultiMove->fromColumn - sMultiMove->cursorColumn)) - (abs(sMultiMove->fromColumn - sMultiMove->toColumn)); + s16 rowChange = (abs(sMultiMove->fromRow - sMultiMove->cursorRow)) - (abs(sMultiMove->fromRow - sMultiMove->toRow)); - if (var > 0) - sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + if (columnChange > 0) + MultiMove_SelectColumn(sMultiMove->cursorColumn, sMultiMove->fromRow, sMultiMove->toRow); - if (var < 0) + if (columnChange < 0) { - sub_80D0740(sMoveMonsPtr->toColumn, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); - sub_80D06D0(sMoveMonsPtr->field_6, sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); + MultiMove_DeselectColumn(sMultiMove->toColumn, sMultiMove->fromRow, sMultiMove->toRow); + MultiMove_SelectColumn(sMultiMove->cursorColumn, sMultiMove->fromRow, sMultiMove->toRow); } - if (var2 > 0) - sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + if (rowChange > 0) + MultiMove_SelectRow(sMultiMove->cursorRow, sMultiMove->fromColumn, sMultiMove->toColumn); - if (var2 < 0) + if (rowChange < 0) { - sub_80D0778(sMoveMonsPtr->toRow, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); - sub_80D0708(sMoveMonsPtr->field_7, sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); + MultiMove_DeselectRow(sMultiMove->toRow, sMultiMove->fromColumn, sMultiMove->toColumn); + MultiMove_SelectRow(sMultiMove->cursorRow, sMultiMove->fromColumn, sMultiMove->toColumn); } } -static void sub_80D06D0(u8 arg0, u8 arg1, u8 arg2) +static void MultiMove_SelectColumn(u8 column, u8 minRow, u8 maxRow) { - u8 var1 = arg1; - - if (arg1 > arg2) + if (minRow > maxRow) { - arg1 = arg2; - arg2 = var1; + u8 temp; + SWAP(minRow, maxRow, temp); } - while (arg1 <= arg2) - sub_80D07B0(arg0, arg1++); + while (minRow <= maxRow) + MultiMove_SetIconToBg(column, minRow++); } -static void sub_80D0708(u8 arg0, u8 arg1, u8 arg2) +static void MultiMove_SelectRow(u8 row, u8 minColumn, u8 maxColumn) { - u8 var1 = arg1; - - if (arg1 > arg2) + if (minColumn > maxColumn) { - arg1 = arg2; - arg2 = var1; + u8 temp; + SWAP(minColumn, maxColumn, temp); } - while (arg1 <= arg2) - sub_80D07B0(arg1++, arg0); + while (minColumn <= maxColumn) + MultiMove_SetIconToBg(minColumn++, row); } -static void sub_80D0740(u8 arg0, u8 arg1, u8 arg2) +static void MultiMove_DeselectColumn(u8 column, u8 minRow, u8 maxRow) { - u8 var1 = arg1; - - if (arg1 > arg2) + if (minRow > maxRow) { - arg1 = arg2; - arg2 = var1; + u8 temp; + SWAP(minRow, maxRow, temp); } - while (arg1 <= arg2) - sub_80D0834(arg0, arg1++); + while (minRow <= maxRow) + MultiMove_ClearIconFromBg(column, minRow++); } -static void sub_80D0778(u8 arg0, u8 arg1, u8 arg2) +static void MultiMove_DeselectRow(u8 row, u8 minColumn, u8 maxColumn) { - u8 var1 = arg1; - - if (arg1 > arg2) + if (minColumn > maxColumn) { - arg1 = arg2; - arg2 = var1; + u8 temp; + SWAP(minColumn, maxColumn, temp); } - while (arg1 <= arg2) - sub_80D0834(arg1++, arg0); + while (minColumn <= maxColumn) + MultiMove_ClearIconFromBg(minColumn++, row); } -static void sub_80D07B0(u8 x, u8 y) +static void MultiMove_SetIconToBg(u8 x, u8 y) { u8 position = x + (IN_BOX_COLUMNS * y); u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2); @@ -8173,7 +8222,7 @@ static void sub_80D07B0(u8 x, u8 y) const u8 *iconGfx = GetMonIconPtr(species, personality, 1); u8 index = GetValidMonIconPalIndex(species) + 8; - BlitBitmapRectToWindow4BitTo8Bit(sPSSData->field_2200, + BlitBitmapRectToWindow4BitTo8Bit(sPSSData->multiMoveWindowId, iconGfx, 0, 0, @@ -8187,14 +8236,14 @@ static void sub_80D07B0(u8 x, u8 y) } } -static void sub_80D0834(u8 x, u8 y) +static void MultiMove_ClearIconFromBg(u8 x, u8 y) { u8 position = x + (IN_BOX_COLUMNS * y); u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2); if (species != SPECIES_NONE) { - FillWindowPixelRect8Bit(sPSSData->field_2200, + FillWindowPixelRect8Bit(sPSSData->multiMoveWindowId, PIXEL_FILL(0), 24 * x, 24 * y, @@ -8203,70 +8252,72 @@ static void sub_80D0834(u8 x, u8 y) } } -static void sub_80D0884(u16 x, u16 y, u16 arg2) +static void MultiMove_InitMove(u16 x, u16 y, u16 arg2) { - sMoveMonsPtr->bgX = x; - sMoveMonsPtr->bgY = y; - sMoveMonsPtr->field_10 = arg2; + sMultiMove->bgX = x; + sMultiMove->bgY = y; + sMultiMove->bgMoveSteps = arg2; } -static u8 sub_80D0894(void) +static u8 MultiMove_UpdateMove(void) { - if (sMoveMonsPtr->field_10 != 0) + if (sMultiMove->bgMoveSteps != 0) { - ChangeBgX(0, sMoveMonsPtr->bgX, 1); - ChangeBgY(0, sMoveMonsPtr->bgY, 1); - sMoveMonsPtr->field_10--; + ChangeBgX(0, sMultiMove->bgX, 1); + ChangeBgY(0, sMultiMove->bgY, 1); + sMultiMove->bgMoveSteps--; } - return sMoveMonsPtr->field_10; + return sMultiMove->bgMoveSteps; } -static void sub_80D08CC(void) +// Store the Pokémon that the player is picking up +static void MultiMove_GetMonsFromSelection(void) { s32 i, j; s32 columnCount, rowCount; u8 boxId; u8 monArrayId; - sMoveMonsPtr->minColumn = min(sMoveMonsPtr->fromColumn, sMoveMonsPtr->toColumn); - sMoveMonsPtr->minRow = min(sMoveMonsPtr->fromRow, sMoveMonsPtr->toRow); - sMoveMonsPtr->columnsTotal = abs(sMoveMonsPtr->fromColumn - sMoveMonsPtr->toColumn) + 1; - sMoveMonsPtr->rowsTotal = abs(sMoveMonsPtr->fromRow - sMoveMonsPtr->toRow) + 1; + sMultiMove->minColumn = min(sMultiMove->fromColumn, sMultiMove->toColumn); + sMultiMove->minRow = min(sMultiMove->fromRow, sMultiMove->toRow); + sMultiMove->columnsTotal = abs(sMultiMove->fromColumn - sMultiMove->toColumn) + 1; + sMultiMove->rowsTotal = abs(sMultiMove->fromRow - sMultiMove->toRow) + 1; boxId = StorageGetCurrentBox(); monArrayId = 0; - columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; - rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; - for (i = sMoveMonsPtr->minRow; i < rowCount; i++) + columnCount = sMultiMove->minColumn + sMultiMove->columnsTotal; + rowCount = sMultiMove->minRow + sMultiMove->rowsTotal; + for (i = sMultiMove->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; - for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMultiMove->minColumn; + for (j = sMultiMove->minColumn; j < columnCount; j++) { struct BoxPokemon *boxMon = GetBoxedMonPtr(boxId, boxPosition); // UB: possible null dereference #ifdef UBFIX if (boxMon != NULL) - sMoveMonsPtr->boxMons[monArrayId] = *boxMon; -#else - sMoveMonsPtr->boxMons[monArrayId] = *boxMon; #endif + sMultiMove->boxMons[monArrayId] = *boxMon; + monArrayId++; boxPosition++; } } } -static void sub_80D09A4(void) +// The Pokémon the player has picked up have been stored, now delete +// them from their original positions +static void MultiMove_RemoveMonsFromBox(void) { s32 i, j; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; - s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; + s32 columnCount = sMultiMove->minColumn + sMultiMove->columnsTotal; + s32 rowCount = sMultiMove->minRow + sMultiMove->rowsTotal; u8 boxId = StorageGetCurrentBox(); - for (i = sMoveMonsPtr->minRow; i < rowCount; i++) + for (i = sMultiMove->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; - for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMultiMove->minColumn; + for (j = sMultiMove->minColumn; j < columnCount; j++) { DestroyBoxMonIconAtPosition(boxPosition); ZeroBoxMonAt(boxId, boxPosition); @@ -8275,19 +8326,19 @@ static void sub_80D09A4(void) } } -static void sub_80D0A1C(void) +static void MultiMove_CreatePlacedMonIcons(void) { s32 i, j; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; - s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; + s32 columnCount = sMultiMove->minColumn + sMultiMove->columnsTotal; + s32 rowCount = sMultiMove->minRow + sMultiMove->rowsTotal; u8 monArrayId = 0; - for (i = sMoveMonsPtr->minRow; i < rowCount; i++) + for (i = sMultiMove->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; - for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMultiMove->minColumn; + for (j = sMultiMove->minColumn; j < columnCount; j++) { - if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) + if (GetBoxMonData(&sMultiMove->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) sub_80CB140(boxPosition); monArrayId++; boxPosition++; @@ -8295,28 +8346,28 @@ static void sub_80D0A1C(void) } } -static void sub_80D0AAC(void) +static void MultiMove_SetPlacedMonData(void) { s32 i, j; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; - s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; + s32 columnCount = sMultiMove->minColumn + sMultiMove->columnsTotal; + s32 rowCount = sMultiMove->minRow + sMultiMove->rowsTotal; u8 boxId = StorageGetCurrentBox(); u8 monArrayId = 0; - for (i = sMoveMonsPtr->minRow; i < rowCount; i++) + for (i = sMultiMove->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; - for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMultiMove->minColumn; + for (j = sMultiMove->minColumn; j < columnCount; j++) { - if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) - SetBoxMonAt(boxId, boxPosition, &sMoveMonsPtr->boxMons[monArrayId]); + if (GetBoxMonData(&sMultiMove->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) + SetBoxMonAt(boxId, boxPosition, &sMultiMove->boxMons[monArrayId]); boxPosition++; monArrayId++; } } } -static void sub_80D0B5C(void) +static void MultiMove_ResetBg(void) { ChangeBgX(0, 0, 0); ChangeBgY(0, 0, 0); @@ -8326,24 +8377,24 @@ static void sub_80D0B5C(void) CopyBgTilemapBufferToVram(0); } -static u8 sub_80D0BA4(void) +static u8 MultiMove_GetOrigin(void) { - return (IN_BOX_COLUMNS * sMoveMonsPtr->fromRow) + sMoveMonsPtr->fromColumn; + return (IN_BOX_COLUMNS * sMultiMove->fromRow) + sMultiMove->fromColumn; } -static bool8 sub_80D0BC0(void) +static bool8 MultiMove_CanPlaceSelection(void) { s32 i, j; - s32 columnCount = sMoveMonsPtr->minColumn + sMoveMonsPtr->columnsTotal; - s32 rowCount = sMoveMonsPtr->minRow + sMoveMonsPtr->rowsTotal; + s32 columnCount = sMultiMove->minColumn + sMultiMove->columnsTotal; + s32 rowCount = sMultiMove->minRow + sMultiMove->rowsTotal; u8 monArrayId = 0; - for (i = sMoveMonsPtr->minRow; i < rowCount; i++) + for (i = sMultiMove->minRow; i < rowCount; i++) { - u8 boxPosition = (IN_BOX_COLUMNS * i) + sMoveMonsPtr->minColumn; - for (j = sMoveMonsPtr->minColumn; j < columnCount; j++) + u8 boxPosition = (IN_BOX_COLUMNS * i) + sMultiMove->minColumn; + for (j = sMultiMove->minColumn; j < columnCount; j++) { - if (GetBoxMonData(&sMoveMonsPtr->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES) + if (GetBoxMonData(&sMultiMove->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES) && GetCurrentBoxMonData(boxPosition, MON_DATA_SANITY_HAS_SPECIES)) return FALSE; @@ -8351,7 +8402,6 @@ static bool8 sub_80D0BC0(void) boxPosition++; } } - return TRUE; } From 0767f4b9ce0ad9dd86e83f5a09674cbc6559df29 Mon Sep 17 00:00:00 2001 From: Michael Panzlaff Date: Sat, 17 Apr 2021 19:00:02 +0200 Subject: [PATCH 128/762] Makefile: resolve libgcc and libc in correct order When actually utilizing functions from libc, linking will fail because the functions used from libc have to be defined after libc. This is the case with libgcc, so we swap their order. --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index d97634399427..c76c24a5d1d3 100644 --- a/Makefile +++ b/Makefile @@ -82,7 +82,7 @@ endif LDFLAGS = -Map ../../$(MAP) -LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall +LIB := $(LIBPATH) -lc -lgcc -L../../libagbsyscall -lagbsyscall SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c GFX := tools/gbagfx/gbagfx$(EXE) From cd2a99b7c44bb875135c2c97589ecc160dad71f0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 00:49:51 -0400 Subject: [PATCH 129/762] Doc storage - misc cleanup, some item/cursor --- gflib/text.h | 2 +- .../display_menu.bin} | Bin .../display_menu.pal} | 0 .../party_menu.bin} | Bin include/graphics.h | 6 +- include/pokemon_storage_system.h | 2 +- src/battle_script_commands.c | 2 +- src/graphics.c | 6 +- src/pokemon_storage_system.c | 842 +++++++++--------- src/pokemon_summary_screen.c | 2 +- src/pokenav_conditions_1.c | 2 +- 11 files changed, 445 insertions(+), 419 deletions(-) rename graphics/{unknown/unknown_5722A0.bin => pokemon_storage/display_menu.bin} (100%) rename graphics/{unknown/unknown_572280.pal => pokemon_storage/display_menu.pal} (100%) rename graphics/{unknown/unknown_DD36C8.bin => pokemon_storage/party_menu.bin} (100%) diff --git a/gflib/text.h b/gflib/text.h index 5274ad8b51a5..3edd0fc62452 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -71,7 +71,7 @@ // #define CHAR_i_ACUTE 0x6F // -#define CHAR_UNK_SPACER 0x77 +#define CHAR_GENDERLESS 0x77 // Empty space for lack of gender icon // #define CHAR_UP_ARROW 0x79 #define CHAR_DOWN_ARROW 0x7A diff --git a/graphics/unknown/unknown_5722A0.bin b/graphics/pokemon_storage/display_menu.bin similarity index 100% rename from graphics/unknown/unknown_5722A0.bin rename to graphics/pokemon_storage/display_menu.bin diff --git a/graphics/unknown/unknown_572280.pal b/graphics/pokemon_storage/display_menu.pal similarity index 100% rename from graphics/unknown/unknown_572280.pal rename to graphics/pokemon_storage/display_menu.pal diff --git a/graphics/unknown/unknown_DD36C8.bin b/graphics/pokemon_storage/party_menu.bin similarity index 100% rename from graphics/unknown/unknown_DD36C8.bin rename to graphics/pokemon_storage/party_menu.bin diff --git a/include/graphics.h b/include/graphics.h index cea8bbab180f..ee5677f3c55f 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4875,12 +4875,12 @@ extern const u32 gPokedexAreaScreenAreaUnknown_Gfx[]; extern const u16 gPokedexAreaScreenAreaUnknown_Pal[]; // Pokemon Storage System -extern const u32 gPSSMenu_Gfx[]; -extern const u16 gPSSMenu_Pal[]; +extern const u32 gStorageSystemMenu_Gfx[]; +extern const u16 gStorageSystemPartyMenu_Pal[]; +extern const u32 gStorageSystemPartyMenu_Tilemap[]; extern const u32 gWallpaperIcon_Plusle[]; extern const u32 gWallpaperIcon_Cross[]; extern const u32 gWallpaperIcon_Bolt[]; -extern const u32 gUnknown_08DD36C8[]; extern const u32 gWallpaperTiles_Ribbon[]; extern const u32 gWallpaperTilemap_Ribbon[]; extern const u16 gWallpaperPalettes_Ribbon[][16]; diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 24e92a44927a..73a7833ee4b8 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -51,7 +51,7 @@ void ZeroBoxMonAt(u8 boxId, u8 boxPosition); void BoxMonAtToMon(u8 boxId, u8 boxPosition, struct Pokemon *dst); struct BoxPokemon *GetBoxedMonPtr(u8 boxId, u8 boxPosition); u8 *GetBoxNamePtr(u8 boxId); -s16 sub_80D214C(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3); +s16 AdvanceStorageMonIndex(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3); bool8 CheckFreePokemonStorageSpace(void); bool32 CheckBoxMonSanityAt(u32 boxId, u32 boxPosition); u32 CountStorageNonEggMons(void); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 33c6ce0e5e24..0492caeb5cbb 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6045,7 +6045,7 @@ static void PutLevelAndGenderOnLvlUpBox(void) var = (u32)(txtPtr); txtPtr = ConvertIntToDecimalStringN(txtPtr, monLevel, STR_CONV_MODE_LEFT_ALIGN, 3); var = (u32)(txtPtr) - var; - txtPtr = StringFill(txtPtr, CHAR_UNK_SPACER, 4 - var); + txtPtr = StringFill(txtPtr, CHAR_GENDERLESS, 4 - var); if (monGender != MON_GENDERLESS) { diff --git a/src/graphics.c b/src/graphics.c index 4eb58cc5a285..4a96a0da10e9 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1411,9 +1411,9 @@ const u32 gKantoTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_ca // pokemon storage system -const u32 gPSSMenu_Gfx[] = INCBIN_U32("graphics/pokemon_storage/menu.4bpp.lz"); -const u16 gPSSMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/menu.gbapal"); -const u32 gUnknown_08DD36C8[] = INCBIN_U32("graphics/unknown/unknown_DD36C8.bin.lz"); +const u32 gStorageSystemMenu_Gfx[] = INCBIN_U32("graphics/pokemon_storage/menu.4bpp.lz"); +const u16 gStorageSystemPartyMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/menu.gbapal"); // Only used by party menu, but generated from all menu gfx +const u32 gStorageSystemPartyMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/party_menu.bin.lz"); // naming screen diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 5b16011fb0db..2db3e67cde6e 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -147,7 +147,7 @@ enum { // Return IDs for input handlers enum { INPUT_NONE, - INPUT_1, + INPUT_MOVE_CURSOR, INPUT_2, // Unused INPUT_3, // Unused INPUT_CLOSE_BOX, @@ -191,10 +191,10 @@ enum { enum { CURSOR_AREA_IN_BOX, CURSOR_AREA_IN_PARTY, - CURSOR_AREA_BOX, + CURSOR_AREA_BOX_TITLE, CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box }; -#define CURSOR_AREA_IN_HAND CURSOR_AREA_BOX // Alt name for cursor area used by Move Items +#define CURSOR_AREA_IN_HAND CURSOR_AREA_BOX_TITLE // Alt name for cursor area used by Move Items enum { CURSOR_ANIM_BOUNCE, @@ -244,7 +244,7 @@ enum { GFXTAG_15, // Unused GFXTAG_MARKING_COMBO, GFXTAG_17, // Unused - GFXTAG_18, + GFXTAG_MON_ICON, }; // The maximum number of Pokémon icons that can appear on-screen. @@ -302,7 +302,7 @@ enum { // Given as arguments to MultiMove_SetFunction enum { MULTIMOVE_START, - MULTIMOVE_CANCEL, + MULTIMOVE_CANCEL, // If only 1 Pokémon is grabbed MULTIMOVE_CHANGE_SELECTION, MULTIMOVE_GRAB_SELECTION, MULTIMOVE_MOVE_MONS, @@ -316,12 +316,6 @@ struct Wallpaper const u16 *palettes; }; -struct PokemonStorageSystemFunc -{ - u8 (*func)(void); - s8 unk4; -}; - struct StorageMessage { const u8 *text; @@ -385,28 +379,28 @@ struct PokemonStorageSystemData u8 taskId; struct UnkStruct_2000020 unk_0020; struct UnkStruct_2000028 unk_0028[8]; - u16 field_B0[528 / 2]; - u16 field_2C0; - u16 field_2C2; + u16 partyMenuTilemapBuffer[0x108]; + u16 partyMenuUnused; // Never read + u16 partyMenuY; u8 field_2C4; // Unused - u8 field_2C5; + u8 partyMenuMoveTimer; u8 showPartyMenuState; - u8 unk_02C7; - u8 unk_02C8; - bool8 unk_02C9; + bool8 closeBoxFlashing; + u8 closeBoxFlashTimer; + bool8 closeBoxFlashState; s16 newCurrBoxId; u16 bg2_X; s16 scrollSpeed; - u16 field_2D0; + u16 scrollTimer; u8 wallpaperOffset; - u8 field_2D3; // Written to, but never read. - u8 scrollToBoxIdUnused; // Written to, but never read. - u16 field_2D6; // Written to, but never read. - s16 scrollDirectionUnused; // Written to, but never read. - u16 field_2DA; // Written to, but never read. - u16 field_2DC; // Written to, but never read. - u16 field_2DE; // Written to, but never read. - u16 field_2E0; // Written to, but never read. + u8 scrollUnused1; // Never read + u8 scrollToBoxIdUnused; // Never read + u16 scrollUnused2; // Never read + s16 scrollDirectionUnused; // Never read. + u16 scrollUnused3; // Never read + u16 scrollUnused4; // Never read + u16 scrollUnused5; // Never read + u16 scrollUnused6; // Never read u8 filler[22]; u8 boxTitleTiles[1024]; u8 boxTitleCycleId; @@ -421,7 +415,7 @@ struct PokemonStorageSystemData struct Sprite *arrowSprites[2]; u32 boxTitlePalBits; u8 field_73C[80]; // Unused - u16 field_78C; // Written to, but never read. + u16 field_78C; // Never read. s16 wallpaperSetId; s16 wallpaperId; u16 wallpaperTilemap[360]; @@ -449,34 +443,34 @@ struct PokemonStorageSystemData u8 field_C68; s8 field_C69; u8 field_C6A; - u8 field_C6B; // Written to, but never read. + u8 field_C6B; // Never read. struct WindowTemplate menuWindow; struct StorageMenu menuItems[7]; u8 menuItemsCount; u8 menuWidth; - u8 field_CAE; // Written to, but never read. + u8 menuUnusedField; // Never read. u16 menuWindowId; struct Sprite *cursorSprite; - struct Sprite *field_CB8; - s32 field_CBC; - s32 field_CC0; - u32 field_CC4; - u32 field_CC8; - s16 field_CCC; - s16 field_CCE; + struct Sprite *cursorShadowSprite; + s32 cursorNewX; + s32 cursorNewY; + u32 cursorSpeedX; + u32 cursorSpeedY; + s16 cursorTargetX; + s16 cursorTargetY; u16 cursorMoveSteps; - s8 field_CD2; - s8 field_CD3; - u8 field_CD4; - u8 field_CD5; - u8 field_CD6; - u8 field_CD7; + s8 cursorVerticalWrap; + s8 cursorHorizontalWrap; + u8 newCursorArea; + u8 newCursorPosition; + u8 cursorPrevHorizPos; + u8 cursorFlipTimer; u8 cursorPalNums[2]; const u32 *displayMonPalette; u32 displayMonPersonality; u16 displayMonSpecies; u16 displayMonItemId; - u16 field_CE8; + u16 displayUnusedVar; bool8 setMosaic; u8 displayMonMarkings; u8 displayMonLevel; @@ -505,15 +499,15 @@ struct PokemonStorageSystemData u16 releaseCheckState; u16 restrictedReleaseMonMoves; u16 restrictedMoveList[8]; - u8 field_2186; - u8 field_2187; + u8 summaryMaxPos; + u8 summaryStartPos; u8 summaryScreenMode; union { struct Pokemon *mon; struct BoxPokemon *box; - } field_218C; - u8 field_2190[40]; + } summaryMon; + u8 messageText[40]; u8 boxTitleText[40]; u8 releaseMonName[POKEMON_NAME_LENGTH + 1]; u8 itemName[20]; @@ -531,7 +525,7 @@ struct PokemonStorageSystemData u8 field_2AC4[0x1800]; // Unused u8 field_42C4[0x800]; u8 wallpaperBgTilemapBuffer[0x1000]; - u8 field_5AC4[0x800]; + u8 displayMenuTilemapBuffer[0x800]; }; struct UnkSubStruct_2039D84 @@ -571,7 +565,7 @@ EWRAM_DATA static u8 sDepositBoxId = 0; EWRAM_DATA static u8 sWhichToReshow = 0; EWRAM_DATA static u8 sLastUsedBox = 0; EWRAM_DATA static u16 sMovingItemId = 0; -EWRAM_DATA static struct Pokemon gUnknown_02039D14 = {0}; +EWRAM_DATA static struct Pokemon sSavedMovingMon = {0}; EWRAM_DATA static s8 sCursorArea = 0; EWRAM_DATA static s8 sCursorPosition = 0; EWRAM_DATA static bool8 sIsMonBeingMoved = 0; @@ -583,7 +577,7 @@ static void CreateMainMenu(u8, s16 *); static void Cb2_EnterPSS(u8); static u8 GetCurrentBoxOption(void); static u8 HandleInput(void); -static u8 sub_80CDC2C(void); +static u8 GetSavedCursorPos(void); static u8 sub_80CB9BC(void); static void LoadWallpaperGfx(u8, s8); static void CreateIncomingBoxTitle(u8, s8); @@ -597,17 +591,17 @@ static void ChooseBoxMenu_MoveLeft(void); static void ScrollBackground(void); static void ChooseBoxMenu_MoveRight(void); static void ChooseBoxMenu_PrintInfo(void); -static void sub_80CAA14(void); +static void UpdateCloseBoxButtonFlash(void); static void ToggleCursorAutoAction(void); -static void sub_80CE790(void); +static void LoadSavedMovingMon(void); static void sub_80CE8E4(void); static void GiveChosenBagItem(void); static void SetUpHidePartyMenu(void); static void DestroyAllPartyMonIcons(void); -static void sub_80D11CC(void); +static void MoveHeldItemWithPartyMenu(void); static void LoadPSSMenuGfx(void); static void LoadWaveformSpritePalette(void); -static void sub_80CDC18(void); +static void SaveCursorPos(void); static void sub_80CD36C(void); static void sub_80CD3EC(void); static void sub_80CAC1C(void); @@ -616,8 +610,8 @@ static void SetScrollingBackground(void); static void sub_80CABE0(void); static void sub_80CAEAC(void); static void CreateItemIconSprites(void); -static void sub_80CFEA8(void); -static void sub_80CDC0C(void); +static void TryHideItemAtCursor(void); +static void ClearSavedCursorPos(void); static void InitMonIconFields(void); static void sub_80CA0D8(void); static void AddMenu(void); @@ -633,26 +627,26 @@ static void TrySetCursorFistAnim(void); static void ClearBottomWindow(void); static void sub_80CA704(void); static void RemoveMenu(void); -static void sub_80CE00C(void); -static void sub_80D1194(void); +static void RefreshDisplayMon(void); +static void MoveItemFromCursorToBag(void); static void PrintDisplayMonInfo(void); static void UpdateWaveformAnimation(void); static void AddWallpaperSetsMenu(void); static void CreateBoxScrollArrows(void); static void InitMenu(void); static void StopBoxScrollArrowsSlide(void); -static void sub_80CFC14(void); -static void sub_80CEB40(void); +static void CreateCursorSprites(void); +static void TryRefreshDisplayMon(void); static void CycleBoxTitleSprites(void); static void InitItemInfoWindow(void); static void DrawItemInfoWindow(u32); static void sub_80CAA74(void); static void PrintItemDescription(void); -static void sub_80CE760(void); -static void sub_80CDBA0(void); -static void sub_80CE7E8(void); -static void sub_80CFECC(void); -static void sub_80CA9EC(void); +static void SaveMovingMon(void); +static void SetCursorInParty(void); +static void InitSummaryScreenData(void); +static void TryShowItemAtCursor(void); +static void StopFlashingCloseBoxButton(void); static void FreePSSData(void); static void AddBoxMenu(void); static void CycleBoxTitleColor(void); @@ -660,9 +654,9 @@ static void MoveMon(void); static void PlaceMon(void); static void sub_80CAB20(void); static void sub_80CE22C(void); -static void sub_80CDA68(void); +static void DoCursorNewPosUpdate(void); static void sub_80CB950(void); -static void sub_80CA9C0(void); +static void StartFlashingCloseBoxButton(void); static void SetUpDoShowPartyMenu(void); static void StartDisplayMonMosaicEffect(void); static void SpriteCB_ChooseBoxArrow(struct Sprite *); @@ -691,7 +685,7 @@ static bool8 IsMenuLoading(void); static bool8 IsRemovingLastPartyMon(void); static bool8 CanShiftMon(void); static bool8 IsCursorOnCloseBox(void); -static bool8 IsCursorOnBox(void); +static bool8 IsCursorOnBoxTitle(void); static bool8 IsCursorInBox(void); static bool8 IsMonBeingMoved(void); static bool8 TryStorePartyMonInBox(u8); @@ -732,7 +726,7 @@ static void SetMovingMonPriority(u8); static void InitMonPlaceChange(u8); static void SetMonMarkings(u8); static void ShowYesNoWindow(s8); -static void sub_80CDBF8(u8); +static void SetCursorBoxPosition(u8); static void AnimateBoxScrollArrows(bool8); static void sub_80CA984(bool8); static void CreatePartyMonsSprites(bool8); @@ -740,10 +734,10 @@ static void PrintMessage(u8 id); static s16 HandleMenuInput(void); static s8 RunCanReleaseMon(void); static u8 GetCursorPosition(void); -static void Item_FromMonToMoving(u8, u8); -static void Item_GiveMovingToMon(u8, u8); -static void Item_TakeMons(u8, u8); -static void Item_SwitchMonsWithMoving(u8, u8); +static void TakeItemFromMon(u8, u8); +static void GiveItemToMon(u8, u8); +static void MoveItemFromMonToBag(u8, u8); +static void SwapItemsWithMon(u8, u8); static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); static void SetWallpaperForCurrentBox(u8); static void AddWallpapersMenu(u8); @@ -753,13 +747,13 @@ static void SpriteCB_DisplayMonMosaic(struct Sprite *); static void SpriteCB_OutgoingBoxTitle(struct Sprite *); static void sub_80CBA3C(struct Sprite *); static void SpriteCB_IncomingBoxTitle(struct Sprite *); -static void sub_80CBAF0(s16); +static void MovePartySprites(s16); static void sub_80CAAA8(u8, bool8); static const u8 *GetMovingItemName(void); static void SetMenuText(u8); -static void sub_80D0D8C(u8, u8); -static void sub_80D0E50(u8, u8); -static void sub_80D0F38(u16); +static void TryLoadItemIconAtPos(u8, u8); +static void TryHideItemIconAtPos(u8, u8); +static void InitItemIconInCursor(u16); static struct Sprite *CreateMonIconSprite(u16, u32, s16, s16, u8, u8); static void DestroyBoxMonIcon(struct Sprite *); static void SetBoxSpeciesAndPersonalities(u8); @@ -776,7 +770,7 @@ static bool8 sub_80CDEC4(void); static bool8 sub_80CDEB4(void); static void GetCursorCoordsByPos(u8, u8, u16 *, u16 *); static void SetShiftedMonData(u8, u8); -static void SetMovedMonData(u8, u8); +static void SetMovingMonData(u8, u8); static void SetPlacedMonData(u8, u8); static void PurgeMonOrBoxMon(u8, u8); static void SetDisplayMonData(void *, u8); @@ -833,6 +827,25 @@ static void MultiMove_SelectRow(u8, u8, u8); static void MultiMove_SelectColumn(u8, u8, u8); static void MultiMove_DeselectColumn(u8, u8, u8); +// Functions for Move Items mode +static bool32 IsItemIconAtPosition(u8, u8); +static const u32 *GetItemIconPic(u16); +static const u32 *GetItemIconPalette(u16); +static u8 GetNewItemIconIdx(void); +static void SetItemIconPosition(u8, u8, u8); +static void LoadItemIconGfx(u8, const u32 *, const u32 *); +static void SetItemIconAffineAnim(u8, u8); +static void SetItemIconActive(u8, bool8); +static u8 GetItemIconIdxByPosition(u8, u8); +static void SetItemIconCallback(u8, u8, u8, u8); +static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *); +static void SpriteCB_ItemIcon_WaitAnim(struct Sprite *); +static void SpriteCB_ItemIcon_ToHand(struct Sprite *); +static void SpriteCB_ItemIcon_ToMon(struct Sprite *); +static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *); +static void SpriteCB_ItemIcon_HideParty(struct Sprite *); +static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *); + struct { const u8 *text; const u8 *desc; @@ -908,8 +921,8 @@ static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); -static const u32 gUnknown_08572280[] = INCBIN_U32("graphics/unknown/unknown_572280.gbapal"); -static const u32 gUnknown_085722A0[] = INCBIN_U32("graphics/unknown/unknown_5722A0.bin.lz"); +static const u16 sDisplayMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/display_menu.gbapal"); // Unused +static const u32 sDisplayMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/display_menu.bin.lz"); static const u16 gUnknown_0857239C[] = { @@ -974,7 +987,7 @@ static const struct WindowTemplate sWindowTemplates[] = DUMMY_WIN_TEMPLATE }; -static const struct BgTemplate gUnknown_08572734[] = +static const struct BgTemplate sBgTemplates[] = { { .bg = 0, @@ -1166,7 +1179,7 @@ static const struct SpriteTemplate sSpriteTemplate_Waveform = static const struct OamData sOamData_MonIcon; static const struct SpriteTemplate sSpriteTemplate_MonIcon = { - .tileTag = GFXTAG_18, + .tileTag = GFXTAG_MON_ICON, .paletteTag = PALTAG_MON_ICON_0, .oam = &sOamData_MonIcon, .anims = gDummySpriteAnimTable, @@ -1927,7 +1940,7 @@ static void Cb2_PSS(void) RunTasks(); DoScheduledBgTilemapCopiesToVram(); ScrollBackground(); - sub_80CAA14(); + UpdateCloseBoxButtonFlash(); AnimateSprites(); BuildOamBuffer(); } @@ -1997,12 +2010,12 @@ static void sub_80C7E98(void) sub_80D259C(3); sub_80D2644(0, 1, gUnknown_0857239C, 8, 4); sub_80D2770(0, 1, 0); - sPSSData->unk_02C7 = 0; + sPSSData->closeBoxFlashing = FALSE; } static void sub_80C7F1C(void) { - sub_80CDC0C(); + ClearSavedCursorPos(); sInPartyMenu = (sPSSData->boxOption == OPTION_DEPOSIT); sDepositBoxId = 0; } @@ -2035,13 +2048,16 @@ static void Cb_InitPSS(u8 taskId) { switch (sWhichToReshow) { - case 1: - sub_80CE790(); + case SCREEN_CHANGE_NAME_BOX - 1: + // Return from naming box + LoadSavedMovingMon(); break; - case 0: + case SCREEN_CHANGE_SUMMARY_SCREEN - 1: + // Return from summary screen sub_80CE8E4(); break; - case 2: + case SCREEN_CHANGE_ITEM_FROM_BAG - 1: + // Return from bag menu GiveChosenBagItem(); break; } @@ -2160,7 +2176,7 @@ static void Cb_ReshowPSS(u8 taskId) case 1: if (!UpdatePaletteFade()) { - if (sWhichToReshow == 2 && gSpecialVar_ItemId != 0) + if (sWhichToReshow == SCREEN_CHANGE_ITEM_FROM_BAG - 1 && gSpecialVar_ItemId != ITEM_NONE) { PrintMessage(MSG_ITEM_IS_HELD); sPSSData->state++; @@ -2188,7 +2204,7 @@ static void Cb_ReshowPSS(u8 taskId) // States for the outer switch in Cb_MainPSS enum { MSTATE_HANDLE_INPUT, - MSTATE_1, + MSTATE_MOVE_CURSOR, MSTATE_SCROLL_BOX, MSTATE_WAIT_MSG, MSTATE_ERROR_LAST_PARTY_MON, @@ -2208,9 +2224,9 @@ static void Cb_MainPSS(u8 taskId) case MSTATE_HANDLE_INPUT: switch (HandleInput()) { - case INPUT_1: + case INPUT_MOVE_CURSOR: PlaySE(SE_SELECT); - sPSSData->state = MSTATE_1; + sPSSData->state = MSTATE_MOVE_CURSOR; break; case INPUT_SHOW_PARTY: if (sPSSData->boxOption != OPTION_MOVE_MONS && sPSSData->boxOption != OPTION_MOVE_ITEMS) @@ -2220,7 +2236,7 @@ static void Cb_MainPSS(u8 taskId) } else { - sub_80CDC0C(); + ClearSavedCursorPos(); SetPSSCallback(Cb_ShowPartyPokemon); } break; @@ -2262,7 +2278,7 @@ static void Cb_MainPSS(u8 taskId) } else { - sub_80CFEA8(); + TryHideItemAtCursor(); sPSSData->state = MSTATE_SCROLL_BOX_ITEM; } break; @@ -2278,7 +2294,7 @@ static void Cb_MainPSS(u8 taskId) } else { - sub_80CFEA8(); + TryHideItemAtCursor(); sPSSData->state = MSTATE_SCROLL_BOX_ITEM; } break; @@ -2377,13 +2393,13 @@ static void Cb_MainPSS(u8 taskId) break; } break; - case MSTATE_1: + case MSTATE_MOVE_CURSOR: if (!UpdateCursorPos()) { if (IsCursorOnCloseBox()) - sub_80CA9C0(); + StartFlashingCloseBoxButton(); else - sub_80CA9EC(); + StopFlashingCloseBoxButton(); if (sPSSData->setMosaic) StartDisplayMonMosaicEffect(); @@ -2396,13 +2412,13 @@ static void Cb_MainPSS(u8 taskId) SetCurrentBox(sPSSData->newCurrBoxId); if (!sInPartyMenu && !IsMonBeingMoved()) { - sub_80CE00C(); + RefreshDisplayMon(); StartDisplayMonMosaicEffect(); } if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { - sub_80CFECC(); + TryShowItemAtCursor(); sPSSData->state = MSTATE_WAIT_ITEM_ANIM; } else @@ -2496,7 +2512,7 @@ static void Cb_HidePartyPokemon(u8 taskId) case 1: if (!HidePartyMenu()) { - sub_80CDBF8(sub_80CDC2C()); + SetCursorBoxPosition(GetSavedCursorPos()); sPSSData->state++; } break; @@ -2738,7 +2754,7 @@ static void Cb_WithdrawMon(u8 taskId) } else { - sub_80CDC18(); + SaveCursorPos(); InitMonPlaceChange(0); sPSSData->state = 2; } @@ -2920,7 +2936,7 @@ static void Cb_ReleaseMon(u8 taskId) case 6: if (!sub_80CB9BC()) { - sub_80CE00C(); + RefreshDisplayMon(); StartDisplayMonMosaicEffect(); sub_80CAB20(); sPSSData->state++; @@ -3014,7 +3030,7 @@ static void Cb_TakeItemForMoving(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_FromMonToMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); + TakeItemFromMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: @@ -3022,7 +3038,7 @@ static void Cb_TakeItemForMoving(u8 taskId) { StartCursorAnim(CURSOR_ANIM_FIST); ClearBottomWindow(); - sub_80CE00C(); + RefreshDisplayMon(); PrintDisplayMonInfo(); sPSSData->state++; } @@ -3044,14 +3060,14 @@ static void Cb_GiveMovingItemToMon(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_GiveMovingToMon((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); + GiveItemToMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: if (!IsItemIconAnimActive()) { StartCursorAnim(CURSOR_ANIM_BOUNCE); - sub_80CE00C(); + RefreshDisplayMon(); PrintDisplayMonInfo(); PrintMessage(MSG_ITEM_IS_HELD); sPSSData->state++; @@ -3085,7 +3101,7 @@ static void Cb_ItemToBag(u8 taskId) else { PlaySE(SE_SELECT); - Item_TakeMons((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); + MoveItemFromMonToBag(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state = 1; } break; @@ -3100,7 +3116,7 @@ static void Cb_ItemToBag(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sub_80CE00C(); + RefreshDisplayMon(); PrintDisplayMonInfo(); sPSSData->state = 4; } @@ -3136,14 +3152,14 @@ static void Cb_SwitchSelectedItem(u8 taskId) break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); - Item_SwitchMonsWithMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); + SwapItemsWithMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); sPSSData->state++; break; case 2: if (!IsItemIconAnimActive()) { StartCursorAnim(CURSOR_ANIM_FIST); - sub_80CE00C(); + RefreshDisplayMon(); PrintDisplayMonInfo(); PrintMessage(MSG_CHANGED_TO_ITEM); sPSSData->state++; @@ -3246,7 +3262,7 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) } break; case 3: - sub_80D1194(); + MoveItemFromCursorToBag(); sPSSData->state = 4; break; case 4: @@ -3486,14 +3502,14 @@ static void Cb_NameBox(u8 taskId) switch (sPSSData->state) { case 0: - sub_80CE760(); + SaveMovingMon(); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); sPSSData->state++; break; case 1: if (!UpdatePaletteFade()) { - sWhichToReshow = 1; + sWhichToReshow = SCREEN_CHANGE_NAME_BOX - 1; sPSSData->screenChangeType = SCREEN_CHANGE_NAME_BOX; SetPSSCallback(Cb_ChangeScreen); } @@ -3506,14 +3522,14 @@ static void Cb_ShowMonSummary(u8 taskId) switch (sPSSData->state) { case 0: - sub_80CE7E8(); + InitSummaryScreenData(); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); sPSSData->state++; break; case 1: if (!UpdatePaletteFade()) { - sWhichToReshow = 0; + sWhichToReshow = SCREEN_CHANGE_SUMMARY_SCREEN - 1; sPSSData->screenChangeType = SCREEN_CHANGE_SUMMARY_SCREEN; SetPSSCallback(Cb_ChangeScreen); } @@ -3532,7 +3548,7 @@ static void Cb_GiveItemFromBag(u8 taskId) case 1: if (!UpdatePaletteFade()) { - sWhichToReshow = 2; + sWhichToReshow = SCREEN_CHANGE_ITEM_FROM_BAG - 1; sPSSData->screenChangeType = SCREEN_CHANGE_ITEM_FROM_BAG; SetPSSCallback(Cb_ChangeScreen); } @@ -3681,12 +3697,12 @@ static void Cb_ChangeScreen(u8 taskId) SetMainCallback2(Cb2_ExitPSS); break; case SCREEN_CHANGE_SUMMARY_SCREEN: - boxMons = sPSSData->field_218C.box; - monIndex = sPSSData->field_2187; - maxMonIndex = sPSSData->field_2186; + boxMons = sPSSData->summaryMon.box; + monIndex = sPSSData->summaryStartPos; + maxMonIndex = sPSSData->summaryMaxPos; mode = sPSSData->summaryScreenMode; FreePSSData(); - if (mode == SUMMARY_MODE_NORMAL && boxMons == &gUnknown_02039D14.box) + if (mode == SUMMARY_MODE_NORMAL && boxMons == &sSavedMovingMon.box) ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); else ShowPokemonSummaryScreen(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); @@ -3743,10 +3759,10 @@ static void ScrollBackground(void) static void LoadPSSMenuGfx(void) { - InitBgsFromTemplates(0, gUnknown_08572734, ARRAY_COUNT(gUnknown_08572734)); - DecompressAndLoadBgGfxUsingHeap(1, gPSSMenu_Gfx, 0, 0, 0); - LZ77UnCompWram(gUnknown_085722A0, sPSSData->field_5AC4); - SetBgTilemapBuffer(1, sPSSData->field_5AC4); + InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); + DecompressAndLoadBgGfxUsingHeap(1, gStorageSystemMenu_Gfx, 0, 0, 0); + LZ77UnCompWram(sDisplayMenu_Tilemap, sPSSData->displayMenuTilemapBuffer); + SetBgTilemapBuffer(1, sPSSData->displayMenuTilemapBuffer); ShowBg(1); ScheduleBgCopyTilemapToVram(1); } @@ -3966,9 +3982,9 @@ static void UpdateWaveformAnimation(void) static void sub_80CA704(void) { - LZ77UnCompWram(gUnknown_08DD36C8, sPSSData->field_B0); - LoadPalette(gPSSMenu_Pal, 0x10, 0x20); - sub_80D2644(1, 1, sPSSData->field_B0, 12, 22); + LZ77UnCompWram(gStorageSystemPartyMenu_Tilemap, sPSSData->partyMenuTilemapBuffer); + LoadPalette(gStorageSystemPartyMenu_Pal, 0x10, 0x20); + sub_80D2644(1, 1, sPSSData->partyMenuTilemapBuffer, 12, 22); sub_80D2644(2, 1, gUnknown_0857245C, 9, 4); sub_80D2770(1, 10, 0); sub_80D2770(2, 21, 0); @@ -3989,29 +4005,29 @@ static void sub_80CA704(void) } ScheduleBgCopyTilemapToVram(1); - sPSSData->unk_02C7 = 0; + sPSSData->closeBoxFlashing = FALSE; } static void SetUpShowPartyMenu(void) { - sPSSData->field_2C0 = 20; - sPSSData->field_2C2 = 2; - sPSSData->field_2C5 = 0; + sPSSData->partyMenuUnused = 20; + sPSSData->partyMenuY = 2; + sPSSData->partyMenuMoveTimer = 0; CreatePartyMonsSprites(FALSE); } static bool8 ShowPartyMenu(void) { - if (sPSSData->field_2C5 == 20) + if (sPSSData->partyMenuMoveTimer == 20) return FALSE; - sPSSData->field_2C0--; - sPSSData->field_2C2++; + sPSSData->partyMenuUnused--; + sPSSData->partyMenuY++; sub_80D27F4(1, 3, 1); sub_80D2918(1); ScheduleBgCopyTilemapToVram(1); - sub_80CBAF0(8); - if (++sPSSData->field_2C5 == 20) + MovePartySprites(8); + if (++sPSSData->partyMenuMoveTimer == 20) { sInPartyMenu = TRUE; return FALSE; @@ -4024,24 +4040,24 @@ static bool8 ShowPartyMenu(void) static void SetUpHidePartyMenu(void) { - sPSSData->field_2C0 = 0; - sPSSData->field_2C2 = 22; - sPSSData->field_2C5 = 0; + sPSSData->partyMenuUnused = 0; + sPSSData->partyMenuY = 22; + sPSSData->partyMenuMoveTimer = 0; if (sPSSData->boxOption == OPTION_MOVE_ITEMS) - sub_80D11CC(); + MoveHeldItemWithPartyMenu(); } static bool8 HidePartyMenu(void) { - if (sPSSData->field_2C5 != 20) + if (sPSSData->partyMenuMoveTimer != 20) { - sPSSData->field_2C0++; - sPSSData->field_2C2--; + sPSSData->partyMenuUnused++; + sPSSData->partyMenuY--; sub_80D27F4(1, 3, -1); sub_80D2918(1); - FillBgTilemapBufferRect_Palette0(1, 0x100, 10, sPSSData->field_2C2, 12, 1); - sub_80CBAF0(-8); - if (++sPSSData->field_2C5 != 20) + FillBgTilemapBufferRect_Palette0(1, 0x100, 10, sPSSData->partyMenuY, 12, 1); + MovePartySprites(-8); + if (++sPSSData->partyMenuMoveTimer != 20) { ScheduleBgCopyTilemapToVram(1); return TRUE; @@ -4061,40 +4077,40 @@ static bool8 HidePartyMenu(void) return FALSE; } -static void sub_80CA984(bool8 arg0) +static void sub_80CA984(bool8 normal) { - if (arg0) + if (normal) sub_80D27AC(2, 0, 0, 9, 2); - else + else // flashing sub_80D27AC(2, 0, 2, 9, 2); sub_80D2918(2); ScheduleBgCopyTilemapToVram(1); } -static void sub_80CA9C0(void) +static void StartFlashingCloseBoxButton(void) { - sPSSData->unk_02C7 = 1; - sPSSData->unk_02C8 = 30; - sPSSData->unk_02C9 = TRUE; + sPSSData->closeBoxFlashing = TRUE; + sPSSData->closeBoxFlashTimer = 30; + sPSSData->closeBoxFlashState = TRUE; } -static void sub_80CA9EC(void) +static void StopFlashingCloseBoxButton(void) { - if (sPSSData->unk_02C7) + if (sPSSData->closeBoxFlashing) { - sPSSData->unk_02C7 = 0; + sPSSData->closeBoxFlashing = FALSE; sub_80CA984(TRUE); } } -static void sub_80CAA14(void) +static void UpdateCloseBoxButtonFlash(void) { - if (sPSSData->unk_02C7 && ++sPSSData->unk_02C8 > 30) + if (sPSSData->closeBoxFlashing && ++sPSSData->closeBoxFlashTimer > 30) { - sPSSData->unk_02C8 = 0; - sPSSData->unk_02C9 = (sPSSData->unk_02C9 == FALSE); - sub_80CA984(sPSSData->unk_02C9); + sPSSData->closeBoxFlashTimer = 0; + sPSSData->closeBoxFlashState = (sPSSData->closeBoxFlashState == FALSE); + sub_80CA984(sPSSData->closeBoxFlashState); } } @@ -4125,9 +4141,8 @@ static void sub_80CAAA8(u8 arg0, bool8 isPartyMon) for (i = 0; i < 3; i++) { for (j = 0; j < 4; j++) - { - sPSSData->field_B0[index + j] = data[j]; - } + sPSSData->partyMenuTilemapBuffer[index + j] = data[j]; + data += 4; index += 12; } @@ -4155,7 +4170,7 @@ static bool8 DoShowPartyMenu(void) case 0: if (!ShowPartyMenu()) { - sub_80CDBA0(); + SetCursorInParty(); sPSSData->showPartyMenuState++; } break; @@ -4223,9 +4238,9 @@ static void PrintMessage(u8 id) break; } - DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->field_2190, sMessages[id].text); + DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->messageText, sMessages[id].text); FillWindowPixelBuffer(1, PIXEL_FILL(1)); - AddTextPrinterParameterized(1, 1, sPSSData->field_2190, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, 1, sPSSData->messageText, 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); CopyWindowToVram(1, 2); @@ -4296,17 +4311,17 @@ static u8 GetCurrentBoxOption(void) static void sub_80CAEAC(void) { - if (!IsCursorOnBox()) + if (!IsCursorOnBoxTitle()) { if (sInPartyMenu) - sub_80D0D8C(CURSOR_AREA_IN_PARTY, GetCursorPosition()); + TryLoadItemIconAtPos(CURSOR_AREA_IN_PARTY, GetCursorPosition()); else - sub_80D0D8C(CURSOR_AREA_IN_BOX, GetCursorPosition()); + TryLoadItemIconAtPos(CURSOR_AREA_IN_BOX, GetCursorPosition()); } if (sMovingItemId != ITEM_NONE) { - sub_80D0F38(sMovingItemId); + InitItemIconInCursor(sMovingItemId); StartCursorAnim(CURSOR_ANIM_FIST); } } @@ -4742,7 +4757,7 @@ static void DestroyMovingMonIcon(void) } } -static void sub_80CBAF0(s16 yDelta) +static void MovePartySprites(s16 yDelta) { u16 i, posY; @@ -4792,7 +4807,7 @@ static void SetPartyMonIconObjMode(u8 partyId, u8 objMode) } } -static void sub_80CBC14(u8 mode, u8 id) +static void SetMovingMonSprite(u8 mode, u8 id) { if (mode == MODE_PARTY) { @@ -5104,16 +5119,16 @@ static void SetUpScrollToBox(u8 boxId) s8 direction = DetermineBoxScrollDirection(boxId); sPSSData->scrollSpeed = (direction > 0) ? 6 : -6; - sPSSData->field_2D3 = (direction > 0) ? 1 : 2; - sPSSData->field_2D0 = 32; + sPSSData->scrollUnused1 = (direction > 0) ? 1 : 2; + sPSSData->scrollTimer = 32; sPSSData->scrollToBoxIdUnused = boxId; - sPSSData->field_2D6 = (direction <= 0) ? 5 : 0; + sPSSData->scrollUnused2 = (direction <= 0) ? 5 : 0; sPSSData->scrollDirectionUnused = direction; - sPSSData->field_2DA = (direction > 0) ? 264 : 56; - sPSSData->field_2DC = (direction <= 0) ? 5 : 0; - sPSSData->field_2DE = 0; - sPSSData->field_2E0 = 2; + sPSSData->scrollUnused3 = (direction > 0) ? 264 : 56; + sPSSData->scrollUnused4 = (direction <= 0) ? 5 : 0; + sPSSData->scrollUnused5 = 0; + sPSSData->scrollUnused6 = 2; sPSSData->scrollToBoxId = boxId; sPSSData->scrollDirection = direction; sPSSData->scrollState = 0; @@ -5138,10 +5153,10 @@ static bool8 ScrollToBox(void) break; case 2: var = sub_80CB584(); - if (sPSSData->field_2D0 != 0) + if (sPSSData->scrollTimer != 0) { sPSSData->bg2_X += sPSSData->scrollSpeed; - if (--sPSSData->field_2D0 != 0) + if (--sPSSData->scrollTimer != 0) return TRUE; CycleBoxTitleSprites(); StopBoxScrollArrowsSlide(); @@ -5494,7 +5509,7 @@ static void CreateBoxScrollArrows(void) sPSSData->arrowSprites[i] = sprite; } } - if (IsCursorOnBox()) + if (IsCursorOnBoxTitle()) AnimateBoxScrollArrows(TRUE); } @@ -5632,22 +5647,22 @@ static void sub_80CD36C(void) sMovingMonOrigBoxId = 0; sMovingMonOrigBoxPos = 0; sAutoActionOn = FALSE; - sub_80CDC0C(); - sub_80CFC14(); - sPSSData->field_CD6 = 1; + ClearSavedCursorPos(); + CreateCursorSprites(); + sPSSData->cursorPrevHorizPos = 1; sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; - sub_80CEB40(); + TryRefreshDisplayMon(); } static void sub_80CD3EC(void) { - sub_80CFC14(); + CreateCursorSprites(); sub_80CEBDC(); - sPSSData->field_CD6 = 1; + sPSSData->cursorPrevHorizPos = 1; sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; if (sIsMonBeingMoved) { - sPSSData->movingMon = gUnknown_02039D14; + sPSSData->movingMon = sSavedMovingMon; CreateMovingMonIcon(); } } @@ -5677,7 +5692,7 @@ static void GetCursorCoordsByPos(u8 cursorArea, u8 cursorPosition, u16 *x, u16 * *y = (cursorPosition - 1) * 24 + 4; } break; - case CURSOR_AREA_BOX: + case CURSOR_AREA_BOX_TITLE: *x = 162; *y = 12; break; @@ -5718,104 +5733,116 @@ static bool8 UpdateCursorPos(void) } else if (--sPSSData->cursorMoveSteps != 0) { - sPSSData->field_CBC += sPSSData->field_CC4; - sPSSData->field_CC0 += sPSSData->field_CC8; - sPSSData->cursorSprite->pos1.x = sPSSData->field_CBC >> 8; - sPSSData->cursorSprite->pos1.y = sPSSData->field_CC0 >> 8; + // Update position toward target + sPSSData->cursorNewX += sPSSData->cursorSpeedX; + sPSSData->cursorNewY += sPSSData->cursorSpeedY; + sPSSData->cursorSprite->pos1.x = sPSSData->cursorNewX >> 8; + sPSSData->cursorSprite->pos1.y = sPSSData->cursorNewY >> 8; + + // Limit cursor on right if (sPSSData->cursorSprite->pos1.x > DISPLAY_WIDTH + 16) { tmp = sPSSData->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16); sPSSData->cursorSprite->pos1.x = tmp + 64; } + + // Limit cursor on left if (sPSSData->cursorSprite->pos1.x < 64) { tmp = 64 - sPSSData->cursorSprite->pos1.x; sPSSData->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp; } + + // Limit cursor on bottom if (sPSSData->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16) { tmp = sPSSData->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16); sPSSData->cursorSprite->pos1.y = tmp - 16; } + + // Limit cursor on top if (sPSSData->cursorSprite->pos1.y < -16) { tmp = -16 - sPSSData->cursorSprite->pos1.y; sPSSData->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp; } - if (sPSSData->field_CD7 && --sPSSData->field_CD7 == 0) + + // Cursor flips vertically when moving on/off the top buttons + if (sPSSData->cursorFlipTimer && --sPSSData->cursorFlipTimer == 0) sPSSData->cursorSprite->vFlip = (sPSSData->cursorSprite->vFlip == FALSE); } else { - sPSSData->cursorSprite->pos1.x = sPSSData->field_CCC; - sPSSData->cursorSprite->pos1.y = sPSSData->field_CCE; - sub_80CDA68(); + // Time is up for cursor movement, make sure it's exactly at target + sPSSData->cursorSprite->pos1.x = sPSSData->cursorTargetX; + sPSSData->cursorSprite->pos1.y = sPSSData->cursorTargetY; + DoCursorNewPosUpdate(); } return TRUE; } -static void sub_80CD6AC(u8 newCursorArea, u8 newCursorPosition) +static void InitNewCursorPos(u8 newCursorArea, u8 newCursorPosition) { u16 x, y; GetCursorCoordsByPos(newCursorArea, newCursorPosition, &x, &y); - sPSSData->field_CD4 = newCursorArea; - sPSSData->field_CD5 = newCursorPosition; - sPSSData->field_CCC = x; - sPSSData->field_CCE = y; + sPSSData->newCursorArea = newCursorArea; + sPSSData->newCursorPosition = newCursorPosition; + sPSSData->cursorTargetX = x; + sPSSData->cursorTargetY = y; } -static void sub_80CD70C(void) +static void InitCursorMove(void) { - int r7, r0; + int yDistance, xDistance; - if (sPSSData->field_CD2 != 0 || sPSSData->field_CD3 != 0) + if (sPSSData->cursorVerticalWrap != 0 || sPSSData->cursorHorizontalWrap != 0) sPSSData->cursorMoveSteps = 12; else sPSSData->cursorMoveSteps = 6; - if (sPSSData->field_CD7) - sPSSData->field_CD7 = sPSSData->cursorMoveSteps >> 1; + if (sPSSData->cursorFlipTimer) + sPSSData->cursorFlipTimer = sPSSData->cursorMoveSteps >> 1; - switch (sPSSData->field_CD2) + switch (sPSSData->cursorVerticalWrap) { - default: - r7 = sPSSData->field_CCE - sPSSData->cursorSprite->pos1.y; + default: // No wrap + yDistance = sPSSData->cursorTargetY - sPSSData->cursorSprite->pos1.y; break; - case -1: - r7 = sPSSData->field_CCE - 0xc0 - sPSSData->cursorSprite->pos1.y; + case -1: // Wrap from top to bottom + yDistance = sPSSData->cursorTargetY - 192 - sPSSData->cursorSprite->pos1.y; break; - case 1: - r7 = sPSSData->field_CCE + 0xc0 - sPSSData->cursorSprite->pos1.y; + case 1: // Wrap from bottom to top + yDistance = sPSSData->cursorTargetY + 192 - sPSSData->cursorSprite->pos1.y; break; } - switch (sPSSData->field_CD3) + switch (sPSSData->cursorHorizontalWrap) { - default: - r0 = sPSSData->field_CCC - sPSSData->cursorSprite->pos1.x; + default: // No Wrap + xDistance = sPSSData->cursorTargetX - sPSSData->cursorSprite->pos1.x; break; - case -1: - r0 = sPSSData->field_CCC - 0xc0 - sPSSData->cursorSprite->pos1.x; + case -1: // Wrap from left to right + xDistance = sPSSData->cursorTargetX - 192 - sPSSData->cursorSprite->pos1.x; break; - case 1: - r0 = sPSSData->field_CCC + 0xc0 - sPSSData->cursorSprite->pos1.x; + case 1: // Wrap from right to left + xDistance = sPSSData->cursorTargetX + 192 - sPSSData->cursorSprite->pos1.x; break; } - r7 <<= 8; - r0 <<= 8; - sPSSData->field_CC4 = r0 / sPSSData->cursorMoveSteps; - sPSSData->field_CC8 = r7 / sPSSData->cursorMoveSteps; - sPSSData->field_CBC = sPSSData->cursorSprite->pos1.x << 8; - sPSSData->field_CC0 = sPSSData->cursorSprite->pos1.y << 8; + yDistance <<= 8; + xDistance <<= 8; + sPSSData->cursorSpeedX = xDistance / sPSSData->cursorMoveSteps; + sPSSData->cursorSpeedY = yDistance / sPSSData->cursorMoveSteps; + sPSSData->cursorNewX = sPSSData->cursorSprite->pos1.x << 8; + sPSSData->cursorNewY = sPSSData->cursorSprite->pos1.y << 8; } -static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) +static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) { - sub_80CD6AC(newCursorArea, newCursorPosition); - sub_80CD70C(); + InitNewCursorPos(newCursorArea, newCursorPosition); + InitCursorMove(); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) @@ -5830,36 +5857,36 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { if (sCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0E50(CURSOR_AREA_IN_BOX, sCursorPosition); + TryHideItemIconAtPos(CURSOR_AREA_IN_BOX, sCursorPosition); else if (sCursorArea == CURSOR_AREA_IN_PARTY) - sub_80D0E50(CURSOR_AREA_IN_PARTY, sCursorPosition); + TryHideItemIconAtPos(CURSOR_AREA_IN_PARTY, sCursorPosition); if (newCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0D8C(newCursorArea, newCursorPosition); + TryLoadItemIconAtPos(newCursorArea, newCursorPosition); else if (newCursorArea == CURSOR_AREA_IN_PARTY) - sub_80D0D8C(newCursorArea, newCursorPosition); + TryLoadItemIconAtPos(newCursorArea, newCursorPosition); } if (newCursorArea == CURSOR_AREA_IN_PARTY && sCursorArea != CURSOR_AREA_IN_PARTY) { - sPSSData->field_CD6 = newCursorArea; - sPSSData->field_CB8->invisible = TRUE; + sPSSData->cursorPrevHorizPos = 1; + sPSSData->cursorShadowSprite->invisible = TRUE; } switch (newCursorArea) { case CURSOR_AREA_IN_PARTY: - case CURSOR_AREA_BOX: + case CURSOR_AREA_BOX_TITLE: case CURSOR_AREA_BUTTONS: sPSSData->cursorSprite->oam.priority = 1; - sPSSData->field_CB8->invisible = TRUE; - sPSSData->field_CB8->oam.priority = 1; + sPSSData->cursorShadowSprite->invisible = TRUE; + sPSSData->cursorShadowSprite->oam.priority = 1; break; case CURSOR_AREA_IN_BOX: if (sPSSData->inBoxMovingMode != MOVE_MODE_NORMAL) { sPSSData->cursorSprite->oam.priority = 0; - sPSSData->field_CB8->invisible = TRUE; + sPSSData->cursorShadowSprite->invisible = TRUE; } else { @@ -5871,10 +5898,10 @@ static void sub_80CD894(u8 newCursorArea, u8 newCursorPosition) } } -static void sub_80CDA68(void) +static void DoCursorNewPosUpdate(void) { - sCursorArea = sPSSData->field_CD4; - sCursorPosition = sPSSData->field_CD5; + sCursorArea = sPSSData->newCursorArea; + sCursorPosition = sPSSData->newCursorPosition; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) @@ -5886,33 +5913,33 @@ static void sub_80CDA68(void) StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); } - sub_80CEB40(); + TryRefreshDisplayMon(); switch (sCursorArea) { case CURSOR_AREA_BUTTONS: SetMovingMonPriority(1); break; - case CURSOR_AREA_BOX: + case CURSOR_AREA_BOX_TITLE: AnimateBoxScrollArrows(TRUE); break; case CURSOR_AREA_IN_PARTY: - sPSSData->field_CB8->subpriority = 13; + sPSSData->cursorShadowSprite->subpriority = 13; SetMovingMonPriority(1); break; case CURSOR_AREA_IN_BOX: if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) { sPSSData->cursorSprite->oam.priority = 1; - sPSSData->field_CB8->oam.priority = 2; - sPSSData->field_CB8->subpriority = 21; - sPSSData->field_CB8->invisible = FALSE; + sPSSData->cursorShadowSprite->oam.priority = 2; + sPSSData->cursorShadowSprite->subpriority = 21; + sPSSData->cursorShadowSprite->invisible = FALSE; SetMovingMonPriority(2); } break; } } -static void sub_80CDBA0(void) +static void SetCursorInParty(void) { u8 partyCount; @@ -5927,30 +5954,30 @@ static void sub_80CDBA0(void) partyCount = PARTY_SIZE - 1; } if (sPSSData->cursorSprite->vFlip) - sPSSData->field_CD7 = 1; - sub_80CD894(CURSOR_AREA_IN_PARTY, partyCount); + sPSSData->cursorFlipTimer = 1; + SetCursorPosition(CURSOR_AREA_IN_PARTY, partyCount); } -static void sub_80CDBF8(u8 cursorBoxPosition) +static void SetCursorBoxPosition(u8 cursorBoxPosition) { - sub_80CD894(CURSOR_AREA_IN_BOX, cursorBoxPosition); + SetCursorPosition(CURSOR_AREA_IN_BOX, cursorBoxPosition); } -EWRAM_DATA static u8 gUnknown_02039D7E = 0; +EWRAM_DATA static u8 sSavedCursorPosition = 0; -static void sub_80CDC0C(void) +static void ClearSavedCursorPos(void) { - gUnknown_02039D7E = 0; + sSavedCursorPosition = 0; } -static void sub_80CDC18(void) +static void SaveCursorPos(void) { - gUnknown_02039D7E = sCursorPosition; + sSavedCursorPosition = sCursorPosition; } -static u8 sub_80CDC2C(void) +static u8 GetSavedCursorPos(void) { - return gUnknown_02039D7E; + return sSavedCursorPosition; } static void InitMonPlaceChange(u8 a0) @@ -6117,14 +6144,14 @@ static void MoveMon(void) switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - SetMovedMonData(TOTAL_BOXES_COUNT, sCursorPosition); - sub_80CBC14(MODE_PARTY, sCursorPosition); + SetMovingMonData(TOTAL_BOXES_COUNT, sCursorPosition); + SetMovingMonSprite(MODE_PARTY, sCursorPosition); break; case CURSOR_AREA_IN_BOX: if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) { - SetMovedMonData(StorageGetCurrentBox(), sCursorPosition); - sub_80CBC14(MODE_BOX, sCursorPosition); + SetMovingMonData(StorageGetCurrentBox(), sCursorPosition); + SetMovingMonSprite(MODE_BOX, sCursorPosition); } break; default: @@ -6156,12 +6183,12 @@ static void PlaceMon(void) sIsMonBeingMoved = FALSE; } -static void sub_80CE00C(void) +static void RefreshDisplayMon(void) { - sub_80CEB40(); + TryRefreshDisplayMon(); } -static void SetMovedMonData(u8 boxId, u8 position) +static void SetMovingMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) sPSSData->movingMon = gPlayerParty[sCursorPosition]; @@ -6222,7 +6249,7 @@ static bool8 TryStorePartyMonInBox(u8 boxId) } else { - SetMovedMonData(TOTAL_BOXES_COUNT, sCursorPosition); + SetMovingMonData(TOTAL_BOXES_COUNT, sCursorPosition); SetPlacedMonData(boxId, boxPosition); DestroyPartyMonIcon(sCursorPosition); } @@ -6237,7 +6264,7 @@ static bool8 TryStorePartyMonInBox(u8 boxId) static void sub_80CE22C(void) { StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); - sub_80CEB40(); + TryRefreshDisplayMon(); } static void InitReleaseMon(void) @@ -6286,7 +6313,7 @@ static void ReleaseMon(void) PurgeMonOrBoxMon(boxId, sCursorPosition); } - sub_80CEB40(); + TryRefreshDisplayMon(); } static void TrySetCursorFistAnim(void) @@ -6489,45 +6516,45 @@ static s8 RunCanReleaseMon(void) return -1; } -static void sub_80CE760(void) +static void SaveMovingMon(void) { if (sIsMonBeingMoved) - gUnknown_02039D14 = sPSSData->movingMon; + sSavedMovingMon = sPSSData->movingMon; } -static void sub_80CE790(void) +static void LoadSavedMovingMon(void) { if (sIsMonBeingMoved) { if (sMovingMonOrigBoxId == TOTAL_BOXES_COUNT) - sPSSData->movingMon = gUnknown_02039D14; + sPSSData->movingMon = sSavedMovingMon; else - sPSSData->movingMon.box = gUnknown_02039D14.box; + sPSSData->movingMon.box = sSavedMovingMon.box; } } -static void sub_80CE7E8(void) +static void InitSummaryScreenData(void) { if (sIsMonBeingMoved) { - sub_80CE760(); - sPSSData->field_218C.mon = &gUnknown_02039D14; - sPSSData->field_2187 = 0; - sPSSData->field_2186 = 0; + SaveMovingMon(); + sPSSData->summaryMon.mon = &sSavedMovingMon; + sPSSData->summaryStartPos = 0; + sPSSData->summaryMaxPos = 0; sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } else if (sCursorArea == CURSOR_AREA_IN_PARTY) { - sPSSData->field_218C.mon = gPlayerParty; - sPSSData->field_2187 = sCursorPosition; - sPSSData->field_2186 = CountPartyMons() - 1; + sPSSData->summaryMon.mon = gPlayerParty; + sPSSData->summaryStartPos = sCursorPosition; + sPSSData->summaryMaxPos = CountPartyMons() - 1; sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; } else { - sPSSData->field_218C.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); - sPSSData->field_2187 = sCursorPosition; - sPSSData->field_2186 = IN_BOX_COUNT - 1; + sPSSData->summaryMon.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); + sPSSData->summaryStartPos = sCursorPosition; + sPSSData->summaryMaxPos = IN_BOX_COUNT - 1; sPSSData->summaryScreenMode = SUMMARY_MODE_BOX; } } @@ -6535,7 +6562,7 @@ static void sub_80CE7E8(void) static void sub_80CE8E4(void) { if (sIsMonBeingMoved) - sub_80CE790(); + LoadSavedMovingMon(); else sCursorPosition = gLastViewedMonIndex; } @@ -6608,9 +6635,9 @@ static bool8 IsMonBeingMoved(void) return sIsMonBeingMoved; } -static bool8 IsCursorOnBox(void) +static bool8 IsCursorOnBoxTitle(void) { - return (sCursorArea == CURSOR_AREA_BOX); + return (sCursorArea == CURSOR_AREA_BOX_TITLE); } static bool8 IsCursorOnCloseBox(void) @@ -6623,11 +6650,15 @@ static bool8 IsCursorInBox(void) return (sCursorArea == CURSOR_AREA_IN_BOX); } -static void sub_80CEB40(void) +static void TryRefreshDisplayMon(void) { + // If a Pokémon is currently being moved, don't start + // mosaic or update display. Keep displaying the + // currently held Pokémon. sPSSData->setMosaic = (sIsMonBeingMoved == FALSE); if (!sIsMonBeingMoved) { + // Update display Pokémon switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: @@ -6638,7 +6669,7 @@ static void sub_80CEB40(void) } // fallthrough case CURSOR_AREA_BUTTONS: - case CURSOR_AREA_BOX: + case CURSOR_AREA_BOX_TITLE: SetDisplayMonData(NULL, MODE_MOVE); break; case CURSOR_AREA_IN_BOX: @@ -6651,9 +6682,9 @@ static void sub_80CEB40(void) static void sub_80CEBDC(void) { if (sIsMonBeingMoved) - SetDisplayMonData(&gUnknown_02039D14, MODE_PARTY); + SetDisplayMonData(&sSavedMovingMon, MODE_PARTY); else - sub_80CEB40(); + TryRefreshDisplayMon(); } static void SetDisplayMonData(void *pokemon, u8 mode) @@ -6770,7 +6801,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode) *(txtPtr)++ = TEXT_COLOR_DARK_GRAY; *(txtPtr)++ = TEXT_COLOR_WHITE; *(txtPtr)++ = TEXT_COLOR_LIGHT_GRAY; - *(txtPtr)++ = CHAR_UNK_SPACER; + *(txtPtr)++ = CHAR_GENDERLESS; break; } @@ -6818,70 +6849,70 @@ static u8 InBoxInput_Normal(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->field_CD2 = 0; - sPSSData->field_CD3 = 0; - sPSSData->field_CD7 = 0; + sPSSData->cursorVerticalWrap = 0; + sPSSData->cursorHorizontalWrap = 0; + sPSSData->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; if (sCursorPosition >= IN_BOX_COLUMNS) { cursorPosition -= IN_BOX_COLUMNS; } else { - cursorArea = CURSOR_AREA_BOX; + cursorArea = CURSOR_AREA_BOX_TITLE; cursorPosition = 0; } break; } else if (JOY_REPEAT(DPAD_DOWN)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; cursorPosition += IN_BOX_COLUMNS; if (cursorPosition >= IN_BOX_COUNT) { cursorArea = CURSOR_AREA_BUTTONS; cursorPosition -= IN_BOX_COUNT; cursorPosition /= 3; - sPSSData->field_CD2 = 1; - sPSSData->field_CD7 = 1; + sPSSData->cursorVerticalWrap = 1; + sPSSData->cursorFlipTimer = 1; } break; } else if (JOY_REPEAT(DPAD_LEFT)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; if (sCursorPosition % IN_BOX_COLUMNS != 0) { cursorPosition--; } else { - sPSSData->field_CD3 = -1; + sPSSData->cursorHorizontalWrap = -1; cursorPosition += (IN_BOX_COLUMNS - 1); } break; } else if (JOY_REPEAT(DPAD_RIGHT)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; if ((sCursorPosition + 1) % IN_BOX_COLUMNS != 0) { cursorPosition++; } else { - sPSSData->field_CD3 = 1; + sPSSData->cursorHorizontalWrap = 1; cursorPosition -= (IN_BOX_COLUMNS - 1); } break; } else if (JOY_NEW(START_BUTTON)) { - retVal = INPUT_1; - cursorArea = CURSOR_AREA_BOX; + retVal = INPUT_MOVE_CURSOR; + cursorArea = CURSOR_AREA_BOX_TITLE; cursorPosition = 0; break; } @@ -6942,7 +6973,7 @@ static u8 InBoxInput_Normal(void) } while (0); if (retVal) - sub_80CD894(cursorArea, cursorPosition); + SetCursorPosition(cursorArea, cursorPosition); return retVal; } @@ -6955,7 +6986,7 @@ static u8 InBoxInput_SelectingMultiple(void) { if (sCursorPosition / IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); return INPUT_MULTIMOVE_CHANGE_SELECTION; } else @@ -6967,7 +6998,7 @@ static u8 InBoxInput_SelectingMultiple(void) { if (sCursorPosition + IN_BOX_COLUMNS < IN_BOX_COUNT) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); return INPUT_MULTIMOVE_CHANGE_SELECTION; } else @@ -6979,7 +7010,7 @@ static u8 InBoxInput_SelectingMultiple(void) { if (sCursorPosition % IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - 1); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition - 1); return INPUT_MULTIMOVE_CHANGE_SELECTION; } else @@ -6991,7 +7022,7 @@ static u8 InBoxInput_SelectingMultiple(void) { if ((sCursorPosition + 1) % IN_BOX_COLUMNS != 0) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + 1); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition + 1); return INPUT_MULTIMOVE_CHANGE_SELECTION; } else @@ -7010,7 +7041,7 @@ static u8 InBoxInput_SelectingMultiple(void) { // Doing a multiple mon selection but only chose 1 mon sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; - sPSSData->field_CB8->invisible = FALSE; + sPSSData->cursorShadowSprite->invisible = FALSE; return INPUT_MULTIMOVE_SINGLE; } else @@ -7029,7 +7060,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (MultiMove_TryMoveGroup(0)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition - IN_BOX_COLUMNS); return INPUT_MULTIMOVE_MOVE_MONS; } else @@ -7041,7 +7072,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (MultiMove_TryMoveGroup(1)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition + IN_BOX_COLUMNS); return INPUT_MULTIMOVE_MOVE_MONS; } else @@ -7053,7 +7084,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (MultiMove_TryMoveGroup(2)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition - 1); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition - 1); return INPUT_MULTIMOVE_MOVE_MONS; } else @@ -7065,7 +7096,7 @@ static u8 InBoxInput_MovingMultiple(void) { if (MultiMove_TryMoveGroup(3)) { - sub_80CD894(CURSOR_AREA_IN_BOX, sCursorPosition + 1); + SetCursorPosition(CURSOR_AREA_IN_BOX, sCursorPosition + 1); return INPUT_MULTIMOVE_MOVE_MONS; } else @@ -7115,9 +7146,9 @@ static u8 HandleInput_InParty(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; + sPSSData->cursorHorizontalWrap = 0; + sPSSData->cursorVerticalWrap = 0; + sPSSData->cursorFlipTimer = 0; gotoBox = FALSE; retVal = INPUT_NONE; @@ -7126,7 +7157,7 @@ static u8 HandleInput_InParty(void) if (--cursorPosition < 0) cursorPosition = PARTY_SIZE; if (cursorPosition != sCursorPosition) - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; break; } else if (JOY_REPEAT(DPAD_DOWN)) @@ -7134,13 +7165,13 @@ static u8 HandleInput_InParty(void) if (++cursorPosition > PARTY_SIZE) cursorPosition = 0; if (cursorPosition != sCursorPosition) - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; break; } else if (JOY_REPEAT(DPAD_LEFT) && sCursorPosition != 0) { - retVal = INPUT_1; - sPSSData->field_CD6 = sCursorPosition; + retVal = INPUT_MOVE_CURSOR; + sPSSData->cursorPrevHorizPos = sCursorPosition; cursorPosition = 0; break; } @@ -7148,8 +7179,8 @@ static u8 HandleInput_InParty(void) { if (sCursorPosition == 0) { - retVal = INPUT_1; - cursorPosition = sPSSData->field_CD6; + retVal = INPUT_MOVE_CURSOR; + cursorPosition = sPSSData->cursorPrevHorizPos; } else { @@ -7221,7 +7252,7 @@ static u8 HandleInput_InParty(void) if (retVal != INPUT_NONE) { if (retVal != INPUT_HIDE_PARTY) - sub_80CD894(cursorArea, cursorPosition); + SetCursorPosition(cursorArea, cursorPosition); } return retVal; @@ -7235,21 +7266,21 @@ static u8 HandleInput_OnBox(void) do { - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; + sPSSData->cursorHorizontalWrap = 0; + sPSSData->cursorVerticalWrap = 0; + sPSSData->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_BUTTONS; cursorPosition = 0; - sPSSData->field_CD7 = 1; + sPSSData->cursorFlipTimer = 1; break; } else if (JOY_REPEAT(DPAD_DOWN)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_IN_BOX; cursorPosition = 2; break; @@ -7290,9 +7321,9 @@ static u8 HandleInput_OnBox(void) if (retVal != INPUT_NONE) { - if (cursorArea != CURSOR_AREA_BOX) + if (cursorArea != CURSOR_AREA_BOX_TITLE) AnimateBoxScrollArrows(FALSE); - sub_80CD894(cursorArea, cursorPosition); + SetCursorPosition(cursorArea, cursorPosition); } return retVal; @@ -7308,42 +7339,42 @@ static u8 HandleInput_OnButtons(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->field_CD3 = 0; - sPSSData->field_CD2 = 0; - sPSSData->field_CD7 = 0; + sPSSData->cursorHorizontalWrap = 0; + sPSSData->cursorVerticalWrap = 0; + sPSSData->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_IN_BOX; - sPSSData->field_CD2 = -1; + sPSSData->cursorVerticalWrap = -1; if (sCursorPosition == 0) cursorPosition = IN_BOX_COUNT - 1 - 5; else cursorPosition = IN_BOX_COUNT - 1; - sPSSData->field_CD7 = 1; + sPSSData->cursorFlipTimer = 1; break; } if (JOY_REPEAT(DPAD_DOWN | START_BUTTON)) { - retVal = INPUT_1; - cursorArea = CURSOR_AREA_BOX; + retVal = INPUT_MOVE_CURSOR; + cursorArea = CURSOR_AREA_BOX_TITLE; cursorPosition = 0; - sPSSData->field_CD7 = 1; + sPSSData->cursorFlipTimer = 1; break; } if (JOY_REPEAT(DPAD_LEFT)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; if (--cursorPosition < 0) cursorPosition = 1; break; } else if (JOY_REPEAT(DPAD_RIGHT)) { - retVal = INPUT_1; + retVal = INPUT_MOVE_CURSOR; if (++cursorPosition > 1) cursorPosition = 0; break; @@ -7366,7 +7397,7 @@ static u8 HandleInput_OnButtons(void) } while (0); if (retVal != INPUT_NONE) - sub_80CD894(cursorArea, cursorPosition); + SetCursorPosition(cursorArea, cursorPosition); return retVal; } @@ -7381,7 +7412,7 @@ static u8 HandleInput(void) { {HandleInput_InBox, CURSOR_AREA_IN_BOX}, {HandleInput_InParty, CURSOR_AREA_IN_PARTY}, - {HandleInput_OnBox, CURSOR_AREA_BOX}, + {HandleInput_OnBox, CURSOR_AREA_BOX_TITLE}, {HandleInput_OnButtons, CURSOR_AREA_BUTTONS}, {}, }; @@ -7521,7 +7552,7 @@ static void SpriteCB_CursorShadow(struct Sprite *sprite) sprite->pos1.y = sPSSData->cursorSprite->pos1.y + 20; } -static void sub_80CFC14(void) +static void CreateCursorSprites(void) { u16 x, y; u8 spriteId; @@ -7638,14 +7669,14 @@ static void sub_80CFC14(void) spriteId = CreateSprite(&sSpriteTemplate_CursorShadow, 0, 0, subpriority); if (spriteId != MAX_SPRITES) { - sPSSData->field_CB8 = &gSprites[spriteId]; - sPSSData->field_CB8->oam.priority = priority; + sPSSData->cursorShadowSprite = &gSprites[spriteId]; + sPSSData->cursorShadowSprite->oam.priority = priority; if (sCursorArea) - sPSSData->field_CB8->invisible = 1; + sPSSData->cursorShadowSprite->invisible = TRUE; } else { - sPSSData->field_CB8 = NULL; + sPSSData->cursorShadowSprite = NULL; } } @@ -7689,16 +7720,16 @@ static void SetCursorPriorityTo1(void) sPSSData->cursorSprite->oam.priority = 1; } -static void sub_80CFEA8(void) +static void TryHideItemAtCursor(void) { if (sCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0E50(CURSOR_AREA_IN_BOX, sCursorPosition); + TryHideItemIconAtPos(CURSOR_AREA_IN_BOX, sCursorPosition); } -static void sub_80CFECC(void) +static void TryShowItemAtCursor(void) { if (sCursorArea == CURSOR_AREA_IN_BOX) - sub_80D0D8C(CURSOR_AREA_IN_BOX, sCursorPosition); + TryLoadItemIconAtPos(CURSOR_AREA_IN_BOX, sCursorPosition); } static void InitMenu(void) @@ -7790,7 +7821,7 @@ static void AddMenu(void) PrintMenuTable(sPSSData->menuWindowId, sPSSData->menuItemsCount, (void*)sPSSData->menuItems); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sPSSData->menuWindowId, sPSSData->menuItemsCount, 0); ScheduleBgCopyTilemapToVram(0); - sPSSData->field_CAE = 0; + sPSSData->menuUnusedField = 0; } // Called after AddMenu to determine whether or not the handler callback should @@ -7847,7 +7878,7 @@ static void RemoveMenu(void) //------------------------------------------------------------------------------ -// MultiMove +// SECTION: MultiMove // // The functions below handle moving and selecting multiple Pokémon at once. // The icon sprites are moved to bg 0, and this bg is manipulated to move @@ -8405,24 +8436,13 @@ static bool8 MultiMove_CanPlaceSelection(void) return TRUE; } -// The functions below handle new features of MOVE_ITEMS box option. -static bool32 IsItemIconAtPosition(u8, u8); -static const u32 *GetItemIconPic(u16); -static const u32 *GetItemIconPalette(u16); -static u8 GetNewItemIconIdx(void); -static void SetItemIconPosition(u8, u8, u8); -static void LoadItemIconGfx(u8, const u32 *, const u32 *); -static void SetItemIconAffineAnim(u8, u8); -static void SetItemIconActive(u8, bool8); -static u8 GetItemIconIdxByPosition(u8, u8); -static void SetItemIconCallback(u8, u8, u8, u8); -static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *); -static void SpriteCB_ItemIcon_WaitAnim(struct Sprite *); -static void SpriteCB_ItemIcon_ToHand(struct Sprite *); -static void SpriteCB_ItemIcon_ToMon(struct Sprite *); -static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *); -static void SpriteCB_ItemIcon_HideParty(struct Sprite *); -static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *); + +//------------------------------------------------------------------------------ +// SECTION: Item mode +// +// The functions below handle the Move Items mode +//------------------------------------------------------------------------------ + static const u32 sItemInfoFrame_Gfx[] = INCBIN_U32("graphics/pokemon_storage/item_info_frame.4bpp"); @@ -8546,7 +8566,7 @@ static void CreateItemIconSprites(void) sPSSData->movingItemId = ITEM_NONE; } -static void sub_80D0D8C(u8 cursorArea, u8 cursorPos) +static void TryLoadItemIconAtPos(u8 cursorArea, u8 cursorPos) { u16 heldItem; @@ -8586,7 +8606,7 @@ static void sub_80D0D8C(u8 cursorArea, u8 cursorPos) } } -static void sub_80D0E50(u8 cursorArea, u8 cursorPos) +static void TryHideItemIconAtPos(u8 cursorArea, u8 cursorPos) { u8 id; @@ -8598,7 +8618,7 @@ static void sub_80D0E50(u8 cursorArea, u8 cursorPos) SetItemIconCallback(id, ITEM_CB_WAIT_ANIM, cursorArea, cursorPos); } -static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos) +static void TakeItemFromMon(u8 cursorArea, u8 cursorPos) { u8 id; u16 itemId; @@ -8625,7 +8645,7 @@ static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos) sPSSData->movingItemId = sPSSData->displayMonItemId; } -static void sub_80D0F38(u16 itemId) +static void InitItemIconInCursor(u16 itemId) { const u32 *tiles = GetItemIconPic(itemId); const u32 *pal = GetItemIconPalette(itemId); @@ -8638,7 +8658,7 @@ static void sub_80D0F38(u16 itemId) sPSSData->movingItemId = itemId; } -static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos) +static void SwapItemsWithMon(u8 cursorArea, u8 cursorPos) { u8 id; u16 itemId; @@ -8667,7 +8687,7 @@ static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos) SetItemIconCallback(id, ITEM_CB_SWAP_TO_MON, cursorArea, cursorPos); } -static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos) +static void GiveItemToMon(u8 cursorArea, u8 cursorPos) { u8 id; @@ -8689,31 +8709,31 @@ static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos) } } -static void Item_TakeMons(u8 cursorArea, u8 cursorPos) +static void MoveItemFromMonToBag(u8 cursorArea, u8 cursorPos) { u8 id; - u16 item; + u16 itemId; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) return; - item = 0; + itemId = ITEM_NONE; id = GetItemIconIdxByPosition(cursorArea, cursorPos); SetItemIconAffineAnim(id, ITEM_ANIM_DISAPPEAR); SetItemIconCallback(id, ITEM_CB_WAIT_ANIM, cursorArea, cursorPos); if (cursorArea == CURSOR_AREA_IN_BOX) { - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &item); + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &itemId); SetBoxMonIconObjMode(cursorPos, 1); } else { - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &item); + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &itemId); SetPartyMonIconObjMode(cursorPos, 1); } } -static void sub_80D1194(void) +static void MoveItemFromCursorToBag(void) { if (sPSSData->boxOption == OPTION_MOVE_ITEMS) { @@ -8723,7 +8743,10 @@ static void sub_80D1194(void) } } -static void sub_80D11CC(void) +// The party menu is being closed, if the cursor is on +// a Pokémon that has a held item make sure it slides +// up along with the closing menu. +static void MoveHeldItemWithPartyMenu(void) { s32 i; @@ -9171,14 +9194,16 @@ static void SpriteCB_ItemIcon_HideParty(struct Sprite *sprite) #undef sCursorArea #undef sCursorPos -static void ItemIconDummy_1(void) +// Unused, leftover from FRLG +static void BackupPokemonStorage(void/*struct PokemonStorage * dest*/) { - + //*dest = *gPokemonStoragePtr; } -static void ItemIconDummy_2(void) +// Unused, leftover from FRLG +static void RestorePokemonStorage(void/*struct PokemonStorage * src*/) { - + //*gPokemonStoragePtr = *src; } // Functions here are general utility functions. @@ -9320,17 +9345,18 @@ static void SetBoxWallpaper(u8 boxId, u8 wallpaperId) gPokemonStoragePtr->boxWallpapers[boxId] = wallpaperId; } -s16 sub_80D214C(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3) +// For moving to the next Pokémon while viewing the summary screen +s16 AdvanceStorageMonIndex(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 mode) { s16 i; - s16 adder = -1; + s16 direction = -1; - if (arg3 < 2) - adder = 1; + if (mode == 0 || mode == 1) + direction = 1; - if (arg3 == 1 || arg3 == 3) + if (mode == 1 || mode == 3) { - for (i = (s8)currIndex + adder; i >= 0 && i <= maxIndex; i += adder) + for (i = (s8)currIndex + direction; i >= 0 && i <= maxIndex; i += direction) { if (GetBoxMonData(&boxMons[i], MON_DATA_SPECIES) != SPECIES_NONE) return i; @@ -9338,7 +9364,7 @@ s16 sub_80D214C(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3) } else { - for (i = (s8)currIndex + adder; i >= 0 && i <= maxIndex; i += adder) + for (i = (s8)currIndex + direction; i >= 0 && i <= maxIndex; i += direction) { if (GetBoxMonData(&boxMons[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetBoxMonData(&boxMons[i], MON_DATA_IS_EGG)) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 92d2f5073a78..8f16321b2f90 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1569,7 +1569,7 @@ static void ChangeSummaryPokemon(u8 taskId, s8 delta) else delta = 3; } - monId = sub_80D214C(sMonSummaryScreen->monList.boxMons, sMonSummaryScreen->curMonIndex, sMonSummaryScreen->maxMonIndex, delta); + monId = AdvanceStorageMonIndex(sMonSummaryScreen->monList.boxMons, sMonSummaryScreen->curMonIndex, sMonSummaryScreen->maxMonIndex, delta); } else if (IsMultiBattle() == TRUE) { diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index ebe870f80f73..61b289ae1f9c 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -372,7 +372,7 @@ u8 *CopyMonConditionNameGender(u8 *str, u16 id, bool8 arg3) switch (gender) { default: - *(str_++) = CHAR_UNK_SPACER; + *(str_++) = CHAR_GENDERLESS; break; case MON_MALE: *(str_++) = EXT_CTRL_CODE_BEGIN; From 1c3e387d43e0e9afad23b2bc5d187524b5a45461 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 14:33:00 -0400 Subject: [PATCH 130/762] Doc storage - party menu --- src/pokemon_storage_system.c | 120 ++++++++++++++++++++--------------- 1 file changed, 68 insertions(+), 52 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 2db3e67cde6e..8b07c17b53de 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -435,7 +435,7 @@ struct PokemonStorageSystemData u32 boxPersonalities[IN_BOX_COUNT]; u8 field_C5C; u8 field_C5D; - u8 field_C5E; + u8 numPartyToCompact; u16 field_C60; s16 field_C62; s16 field_C64; @@ -578,7 +578,7 @@ static void Cb2_EnterPSS(u8); static u8 GetCurrentBoxOption(void); static u8 HandleInput(void); static u8 GetSavedCursorPos(void); -static u8 sub_80CB9BC(void); +static u8 GetNumPartySpritesCompacting(void); static void LoadWallpaperGfx(u8, s8); static void CreateIncomingBoxTitle(u8, s8); static void StartBoxScrollArrowsSlide(s8); @@ -640,7 +640,7 @@ static void TryRefreshDisplayMon(void); static void CycleBoxTitleSprites(void); static void InitItemInfoWindow(void); static void DrawItemInfoWindow(u32); -static void sub_80CAA74(void); +static void SetPartySlotTilemaps(void); static void PrintItemDescription(void); static void SaveMovingMon(void); static void SetCursorInParty(void); @@ -655,7 +655,7 @@ static void PlaceMon(void); static void sub_80CAB20(void); static void sub_80CE22C(void); static void DoCursorNewPosUpdate(void); -static void sub_80CB950(void); +static void CompactPartySprites(void); static void StartFlashingCloseBoxButton(void); static void SetUpDoShowPartyMenu(void); static void StartDisplayMonMosaicEffect(void); @@ -745,10 +745,10 @@ static u16 GetMovingItemId(void); static void LoadDisplayMonGfx(u16, u32); static void SpriteCB_DisplayMonMosaic(struct Sprite *); static void SpriteCB_OutgoingBoxTitle(struct Sprite *); -static void sub_80CBA3C(struct Sprite *); +static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *); static void SpriteCB_IncomingBoxTitle(struct Sprite *); static void MovePartySprites(s16); -static void sub_80CAAA8(u8, bool8); +static void SetPartySlotTilemap(u8, bool8); static const u8 *GetMovingItemName(void); static void SetMenuText(u8); static void TryLoadItemIconAtPos(u8, u8); @@ -757,7 +757,7 @@ static void InitItemIconInCursor(u16); static struct Sprite *CreateMonIconSprite(u16, u32, s16, s16, u8, u8); static void DestroyBoxMonIcon(struct Sprite *); static void SetBoxSpeciesAndPersonalities(u8); -static void sub_80CB9D0(struct Sprite *, u16); +static void MovePartySpriteToNextSlot(struct Sprite *, u16); static void Task_InitBox(u8); static void InitBoxTitle(u8); static s8 DetermineBoxScrollDirection(u8); @@ -935,17 +935,17 @@ static const u16 gUnknown_085723FC[] = INCBIN_U16("graphics/unknown/unknown_5723 static const u16 gUnknown_0857241C[] = INCBIN_U16("graphics/unknown/unknown_57241C.gbapal"); static const u16 gUnknown_0857243C[] = INCBIN_U16("graphics/unknown/unknown_57243C.gbapal"); -static const u16 gUnknown_0857245C[] = +static const u16 sCloseBoxButton_Tilemap[] = { 0x014c, 0x014d, 0x014e, 0x014f, 0x0170, 0x0171, 0x0172, 0x0173, 0x0174, 0x015c, 0x015d, 0x015e, 0x015f, 0x0180, 0x0181, 0x0182, 0x0183, 0x0184, 0x0175, 0x0176, 0x0177, 0x0178, 0x0179, 0x017a, 0x017b, 0x017c, 0x017d, 0x0185, 0x0186, 0x0187, 0x0188, 0x0189, 0x018a, 0x018b, 0x018c, 0x018d }; -static const u16 gUnknown_085724A4[] = +static const u16 sPartySlotFilled_Tilemap[] = { 0x1140, 0x1141, 0x1141, 0x1142, 0x1150, 0x1151, 0x1151, 0x1152, 0x1160, 0x1161, 0x1161, 0x1162, }; -static const u16 gUnknown_085724BC[] = +static const u16 sPartySlotEmpty_Tilemap[] = { 0x1143, 0x1144, 0x1144, 0x1145, 0x1153, 0x1154, 0x1154, 0x1155, 0x1163, 0x1164, 0x1164, 0x1165, }; @@ -2837,11 +2837,11 @@ static void Cb_DepositMenu(u8 taskId) break; case 2: CompactPartySlots(); - sub_80CB950(); + CompactPartySprites(); sPSSData->state++; break; case 3: - if (!sub_80CB9BC()) + if (GetNumPartySpritesCompacting() == 0) { sub_80CE22C(); StartDisplayMonMosaicEffect(); @@ -2924,7 +2924,7 @@ static void Cb_ReleaseMon(u8 taskId) if (sInPartyMenu) { CompactPartySlots(); - sub_80CB950(); + CompactPartySprites(); sPSSData->state++; } else @@ -2934,7 +2934,7 @@ static void Cb_ReleaseMon(u8 taskId) } break; case 6: - if (!sub_80CB9BC()) + if (GetNumPartySpritesCompacting() == 0) { RefreshDisplayMon(); StartDisplayMonMosaicEffect(); @@ -3285,11 +3285,11 @@ static void Cb_HandleMovingMonFromParty(u8 taskId) { case 0: CompactPartySlots(); - sub_80CB950(); + CompactPartySprites(); sPSSData->state++; break; case 1: - if (!sub_80CB9BC()) + if (GetNumPartySpritesCompacting() == 0) { sub_80CAB20(); SetPSSCallback(Cb_MainPSS); @@ -3985,10 +3985,10 @@ static void sub_80CA704(void) LZ77UnCompWram(gStorageSystemPartyMenu_Tilemap, sPSSData->partyMenuTilemapBuffer); LoadPalette(gStorageSystemPartyMenu_Pal, 0x10, 0x20); sub_80D2644(1, 1, sPSSData->partyMenuTilemapBuffer, 12, 22); - sub_80D2644(2, 1, gUnknown_0857245C, 9, 4); + sub_80D2644(2, 1, sCloseBoxButton_Tilemap, 9, 4); sub_80D2770(1, 10, 0); sub_80D2770(2, 21, 0); - sub_80CAA74(); + SetPartySlotTilemaps(); if (sInPartyMenu) { sub_80CA984(TRUE); @@ -4114,28 +4114,30 @@ static void UpdateCloseBoxButtonFlash(void) } } -static void sub_80CAA74(void) +static void SetPartySlotTilemaps(void) { u8 i; + // Skips first party slot, it should always be drawn + // as if it has a Pokémon in it for (i = 1; i < PARTY_SIZE; i++) { s32 species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); - sub_80CAAA8(i, (species != SPECIES_NONE)); + SetPartySlotTilemap(i, species != SPECIES_NONE); } } -static void sub_80CAAA8(u8 arg0, bool8 isPartyMon) +static void SetPartySlotTilemap(u8 partyId, bool8 hasMon) { u16 i, j, index; const u16 *data; - if (isPartyMon) - data = gUnknown_085724A4; + if (hasMon) + data = sPartySlotFilled_Tilemap; else - data = gUnknown_085724BC; + data = sPartySlotEmpty_Tilemap; - index = 3 * (3 * (arg0 - 1) + 1); + index = 3 * (3 * (partyId - 1) + 1); index *= 4; index += 7; for (i = 0; i < 3; i++) @@ -4150,7 +4152,7 @@ static void sub_80CAAA8(u8 arg0, bool8 isPartyMon) static void sub_80CAB20(void) { - sub_80CAA74(); + SetPartySlotTilemaps(); sub_80D27AC(1, 0, 0, 12, 22); sub_80D2918(1); ScheduleBgCopyTilemapToVram(1); @@ -4677,62 +4679,69 @@ static void CreatePartyMonsSprites(bool8 arg0) } } -static void sub_80CB950(void) +static void CompactPartySprites(void) { - u16 i, count; + u16 i, targetSlot; - sPSSData->field_C5E = 0; - for (i = 0, count = 0; i < PARTY_SIZE; i++) + sPSSData->numPartyToCompact = 0; + for (i = 0, targetSlot = 0; i < PARTY_SIZE; i++) { if (sPSSData->partySprites[i] != NULL) { - if (i != count) + if (i != targetSlot) { - sub_80CB9D0(sPSSData->partySprites[i], count); + MovePartySpriteToNextSlot(sPSSData->partySprites[i], targetSlot); sPSSData->partySprites[i] = NULL; - sPSSData->field_C5E++; + sPSSData->numPartyToCompact++; } - count++; + targetSlot++; } } } -static u8 sub_80CB9BC(void) +static u8 GetNumPartySpritesCompacting(void) { - return sPSSData->field_C5E; + return sPSSData->numPartyToCompact; } -static void sub_80CB9D0(struct Sprite *sprite, u16 partyId) +#define sPartyId data[1] +#define sMonX data[2] +#define sMonY data[3] +#define sSpeedX data[4] +#define sSpeedY data[5] +#define sMoveSteps data[6] + +static void MovePartySpriteToNextSlot(struct Sprite *sprite, u16 partyId) { s16 x, y; - sprite->data[1] = partyId; + sprite->sPartyId = partyId; if (partyId == 0) x = 104, y = 64; else x = 152, y = 8 * (3 * (partyId - 1)) + 16; - sprite->data[2] = (u16)(sprite->pos1.x) * 8; - sprite->data[3] = (u16)(sprite->pos1.y) * 8; - sprite->data[4] = ((x * 8) - sprite->data[2]) / 8; - sprite->data[5] = ((y * 8) - sprite->data[3]) / 8; + sprite->sMonX = (u16)(sprite->pos1.x) * 8; + sprite->sMonY = (u16)(sprite->pos1.y) * 8; + sprite->sSpeedX = ((x * 8) - sprite->sMonX) / 8; + sprite->sSpeedY = ((y * 8) - sprite->sMonY) / 8; sprite->data[6] = 8; - sprite->callback = sub_80CBA3C; + sprite->callback = SpriteCB_MovePartyMonToNextSlot; } -static void sub_80CBA3C(struct Sprite *sprite) +static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *sprite) { - if (sprite->data[6] != 0) + if (sprite->sMoveSteps != 0) { - s16 x = sprite->data[2] += sprite->data[4]; - s16 y = sprite->data[3] += sprite->data[5]; + s16 x = sprite->sMonX += sprite->sSpeedX; + s16 y = sprite->sMonY += sprite->sSpeedY; sprite->pos1.x = x / 8u; sprite->pos1.y = y / 8u; - sprite->data[6]--; + sprite->sMoveSteps--; } else { - if (sprite->data[1] == 0) + if (sprite->sPartyId == 0) { sprite->pos1.x = 104; sprite->pos1.y = 64; @@ -4740,14 +4749,21 @@ static void sub_80CBA3C(struct Sprite *sprite) else { sprite->pos1.x = 152; - sprite->pos1.y = 8 * (3 * (sprite->data[1] - 1)) + 16; + sprite->pos1.y = 8 * (3 * (sprite->sPartyId - 1)) + 16; } sprite->callback = SpriteCallbackDummy; - sPSSData->partySprites[sprite->data[1]] = sprite; - sPSSData->field_C5E--; + sPSSData->partySprites[sprite->sPartyId] = sprite; + sPSSData->numPartyToCompact--; } } +#undef sPartyId +#undef sMonX +#undef sMonY +#undef sSpeedX +#undef sSpeedY +#undef sMoveSteps + static void DestroyMovingMonIcon(void) { if (sPSSData->movingMonSprite != NULL) From 7a480adafe1f1f8f5b764ad21a7f8e113c63cb1f Mon Sep 17 00:00:00 2001 From: Michael Panzlaff Date: Sat, 17 Apr 2021 22:46:15 +0200 Subject: [PATCH 131/762] modern: add missing sections to linkerscript In order to correctly link a program which uses libc functions a few sections are required to satisfy the linker. This currently adds 0x3C bytes to IWRAM. --- ld_script_modern.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ld_script_modern.txt b/ld_script_modern.txt index b69ada8649c1..6f8d384534c5 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -27,6 +27,8 @@ SECTIONS { /* .bss starts at 0x3000000 */ src/*.o(.bss); gflib/*.o(.bss); + *libc.a:*.o(.bss); + *libnosys.a:*.o(.bss); /* .bss.code starts at 0x3001AA8 */ src/m4a.o(.bss.code); @@ -34,7 +36,8 @@ SECTIONS { /* COMMON starts at 0x30022A8 */ src/*.o(COMMON); gflib/*.o(COMMON); - *libc.a:sbrkr.o(COMMON); + *libc.a:*.o(COMMON); + *libnosys.a:*.o(COMMON); end = .; . = 0x8000; } @@ -82,6 +85,7 @@ SECTIONS { *libagbsyscall.a:*.o(.text*); *libgcc.a:*.o(.text*); *libc.a:*.o(.text*); + *libnosys.a:*.o(.text*); src/libisagbprn.o(.text); } =0 From 38d0cca903b4cc886bf0ed2a4d5714f20b14caef Mon Sep 17 00:00:00 2001 From: Michael Panzlaff Date: Sat, 17 Apr 2021 22:48:57 +0200 Subject: [PATCH 132/762] modern: link against libnosys Without libnosys undefined references will occur if libc functions are used. --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index c76c24a5d1d3..33cde3a01724 100644 --- a/Makefile +++ b/Makefile @@ -72,7 +72,7 @@ CC1 = $(shell $(CC) --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 -g ROM := pokeemerald_modern.gba OBJ_DIR := build/modern -LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) @@ -82,7 +82,7 @@ endif LDFLAGS = -Map ../../$(MAP) -LIB := $(LIBPATH) -lc -lgcc -L../../libagbsyscall -lagbsyscall +LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c GFX := tools/gbagfx/gbagfx$(EXE) From 2859fa60cb6fd863f9c2bf5b9219ff2045a7d229 Mon Sep 17 00:00:00 2001 From: Michael Panzlaff Date: Sat, 17 Apr 2021 23:19:01 +0200 Subject: [PATCH 133/762] Makefile: use different linker library sets for modern --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 33cde3a01724..3cbd7f3f808f 100644 --- a/Makefile +++ b/Makefile @@ -67,12 +67,14 @@ override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex- ROM := pokeemerald.gba OBJ_DIR := build/emerald LIBPATH := -L ../../tools/agbcc/lib +LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall else CC1 = $(shell $(CC) --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 -g ROM := pokeemerald_modern.gba OBJ_DIR := build/modern LIBPATH := -L "$(dir $(shell $(CC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(CC) -mthumb -print-file-name=libc.a))" +LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall endif CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) @@ -82,8 +84,6 @@ endif LDFLAGS = -Map ../../$(MAP) -LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall - SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c GFX := tools/gbagfx/gbagfx$(EXE) AIF := tools/aif2pcm/aif2pcm$(EXE) From c921994ce11952581dd423a1fa0cfa70f0fb240c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 17:28:18 -0400 Subject: [PATCH 134/762] Doc storage - tilemap util, place change --- .../bg.pal} | 0 .../bg_move_items.pal} | 0 .../interface.pal} | 0 .../pkmn_data_gray.pal} | 0 src/pokemon_storage_system.c | 551 ++++++++++-------- 5 files changed, 300 insertions(+), 251 deletions(-) rename graphics/{unknown/unknown_57241C.pal => pokemon_storage/bg.pal} (100%) rename graphics/{unknown/unknown_57243C.pal => pokemon_storage/bg_move_items.pal} (100%) rename graphics/{unknown/unknown_5723DC.pal => pokemon_storage/interface.pal} (100%) rename graphics/{unknown/unknown_5723FC.pal => pokemon_storage/pkmn_data_gray.pal} (100%) diff --git a/graphics/unknown/unknown_57241C.pal b/graphics/pokemon_storage/bg.pal similarity index 100% rename from graphics/unknown/unknown_57241C.pal rename to graphics/pokemon_storage/bg.pal diff --git a/graphics/unknown/unknown_57243C.pal b/graphics/pokemon_storage/bg_move_items.pal similarity index 100% rename from graphics/unknown/unknown_57243C.pal rename to graphics/pokemon_storage/bg_move_items.pal diff --git a/graphics/unknown/unknown_5723DC.pal b/graphics/pokemon_storage/interface.pal similarity index 100% rename from graphics/unknown/unknown_5723DC.pal rename to graphics/pokemon_storage/interface.pal diff --git a/graphics/unknown/unknown_5723FC.pal b/graphics/pokemon_storage/pkmn_data_gray.pal similarity index 100% rename from graphics/unknown/unknown_5723FC.pal rename to graphics/pokemon_storage/pkmn_data_gray.pal diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 8b07c17b53de..9a6ac1469b13 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -284,6 +284,13 @@ enum { RELEASE_ANIM_CAME_BACK, }; +// IDs for InitMonPlaceChange +enum { + CHANGE_GRAB, + CHANGE_PLACE, + CHANGE_SHIFT, +}; + // Modes for selecting and moving Pokémon in the box. // "MULTIPLE" mode allows up to an entire box to be // picked up at once by pressing Select then holding @@ -309,6 +316,13 @@ enum { MULTIMOVE_PLACE_MONS, }; +enum { + TILEMAPID_PKMN_DATA, // The "Pkmn Data" text at the top of the display + TILEMAPID_PARTY_MENU, + TILEMAPID_CLOSE_BUTTON, + TILEMAPID_COUNT +}; + struct Wallpaper { const u32 *tiles; @@ -528,32 +542,6 @@ struct PokemonStorageSystemData u8 displayMenuTilemapBuffer[0x800]; }; -struct UnkSubStruct_2039D84 -{ - s16 field_0; - s16 field_2; - u16 field_4; - u16 field_6; - s16 field_8; - s16 field_A; -}; - -struct UnkStruct_2039D84 -{ - struct UnkSubStruct_2039D84 field_0[2]; - const void *field_18; - const void *field_1C; - u16 field_20; - u16 field_22; - u16 field_24; - u16 field_26; - u16 field_28; - u8 field_2A; - u8 field_2B; - u8 field_2C; - u8 field_2D; -}; - static u32 sItemIconGfxBuffer[98]; EWRAM_DATA static u8 sPreviousBoxOption = 0; @@ -605,7 +593,7 @@ static void SaveCursorPos(void); static void sub_80CD36C(void); static void sub_80CD3EC(void); static void sub_80CAC1C(void); -static void sub_80CEBDC(void); +static void ReshowDisplayMon(void); static void SetScrollingBackground(void); static void sub_80CABE0(void); static void sub_80CAEAC(void); @@ -625,7 +613,7 @@ static void CreateWaveformSprites(void); static void ReshowReleaseMon(void); static void TrySetCursorFistAnim(void); static void ClearBottomWindow(void); -static void sub_80CA704(void); +static void InitSupplementalTilemaps(void); static void RemoveMenu(void); static void RefreshDisplayMon(void); static void MoveItemFromCursorToBag(void); @@ -652,7 +640,7 @@ static void AddBoxMenu(void); static void CycleBoxTitleColor(void); static void MoveMon(void); static void PlaceMon(void); -static void sub_80CAB20(void); +static void UpdatePartySlotColors(void); static void sub_80CE22C(void); static void DoCursorNewPosUpdate(void); static void CompactPartySprites(void); @@ -668,8 +656,8 @@ static bool8 InitPSSWindows(void); static bool8 ResetReleaseMonSpritePtr(void); static bool8 TryHideReleaseMon(void); static bool8 IsInitBoxActive(void); -static bool8 sub_80CDED4(void); -static bool8 sub_80CDF08(void); +static bool8 MonPlaceChange_CursorDown(void); +static bool8 MonPlaceChange_CursorUp(void); static bool8 UpdateItemInfoWindowSlideIn(void); static bool8 UpdateItemInfoWindowSlideOut(void); static bool8 DoShowPartyMenu(void); @@ -728,7 +716,7 @@ static void SetMonMarkings(u8); static void ShowYesNoWindow(s8); static void SetCursorBoxPosition(u8); static void AnimateBoxScrollArrows(bool8); -static void sub_80CA984(bool8); +static void UpdateCloseBoxButtonTilemap(bool8); static void CreatePartyMonsSprites(bool8); static void PrintMessage(u8 id); static s16 HandleMenuInput(void); @@ -764,10 +752,10 @@ static s8 DetermineBoxScrollDirection(u8); static void DrawWallpaper(const void *, s8, u8); static s16 GetBoxTitleBaseX(const u8 *); static bool8 MonPlaceChange_Shift(void); -static bool8 MonPlaceChange_Move(void); +static bool8 MonPlaceChange_Grab(void); static bool8 MonPlaceChange_Place(void); -static bool8 sub_80CDEC4(void); -static bool8 sub_80CDEB4(void); +static bool8 MultiMonPlaceChange_Up(void); +static bool8 MultiMonPlaceChange_Down(void); static void GetCursorCoordsByPos(u8, u8, u16 *, u16 *); static void SetShiftedMonData(u8, u8); static void SetMovingMonData(u8, u8); @@ -782,15 +770,6 @@ static s8 GetMenuItemTextId(u8); static u8 SetSelectionMenuTexts(void); static bool8 SetMenuTexts_Mon(void); static bool8 SetMenuTexts_Item(void); -static void sub_80D27AC(u8, u16, u16, u16, u16); -static void sub_80D27F4(u8, u8, s8); -static void sub_80D2644(u8, u8, const void *, u16, u16); -static void sub_80D2770(u8, u16, u16); -static void sub_80D259C(u8); -static void sub_80D25F0(void); -static void sub_80D2918(u8); -static void sub_80D2960(u8); -static void sub_80D29F8(u8); static void sub_80D2A90(struct UnkStruct_2000020 *, struct UnkStruct_2000028 *, u32); static void sub_80D2AA4(void); static void sub_80D2B88(struct UnkStruct_2000028 *); @@ -846,6 +825,17 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *); static void SpriteCB_ItemIcon_HideParty(struct Sprite *); static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *); +// Functions for the tilemap updating utility +static void TilemapUtil_SetRect(u8, u16, u16, u16, u16); +static void TilemapUtil_Move(u8, u8, s8); +static void TilemapUtil_SetMap(u8, u8, const void *, u16, u16); +static void TilemapUtil_SetPos(u8, u16, u16); +static void TilemapUtil_Init(u8); +static void TilemapUtil_Free(void); +static void TilemapUtil_Update(u8); +static void TilemapUtil_DrawPrev(u8); +static void TilemapUtil_Draw(u8); + struct { const u8 *text; const u8 *desc; @@ -916,24 +906,25 @@ static const union AffineAnimCmd *const sAffineAnims_ChooseBoxMenu[] = static const u8 sChooseBoxMenu_TextColors[] = {TEXT_COLOR_RED, TEXT_DYNAMIC_COLOR_6, TEXT_DYNAMIC_COLOR_5}; static const u8 sText_OutOf30[] = _("/30"); -static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); +static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); -static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); -static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); -static const u16 sDisplayMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/display_menu.gbapal"); // Unused -static const u32 sDisplayMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/display_menu.bin.lz"); +static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); +static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); +static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); +static const u16 sDisplayMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/display_menu.gbapal"); // Unused +static const u32 sDisplayMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/display_menu.bin.lz"); -static const u16 gUnknown_0857239C[] = +static const u16 sPkmnData_Tilemap[] = { 0x0101, 0x0102, 0x0103, 0x0104, 0x0105, 0x0106, 0x0107, 0x0108, 0x0111, 0x0112, 0x0113, 0x0114, 0x0115, 0x0116, 0x0117, 0x0118, 0x2101, 0x2102, 0x2103, 0x2104, 0x2105, 0x2106, 0x2107, 0x2108, 0x2111, 0x2112, 0x2113, 0x2114, 0x2115, 0x2116, 0x2117, 0x2118, }; -static const u16 gUnknown_085723DC[] = INCBIN_U16("graphics/unknown/unknown_5723DC.gbapal"); // Left-most part and Close Box. -static const u16 gUnknown_085723FC[] = INCBIN_U16("graphics/unknown/unknown_5723FC.gbapal"); -static const u16 gUnknown_0857241C[] = INCBIN_U16("graphics/unknown/unknown_57241C.gbapal"); -static const u16 gUnknown_0857243C[] = INCBIN_U16("graphics/unknown/unknown_57243C.gbapal"); +// sInterface_Pal - parts of the display frame, "PkmnData"'s normal color, Close Box +static const u16 sInterface_Pal[] = INCBIN_U16("graphics/pokemon_storage/interface.gbapal"); +static const u16 sPkmnDataGray_Pal[] = INCBIN_U16("graphics/pokemon_storage/pkmn_data_gray.gbapal"); +static const u16 sBg_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg.gbapal"); +static const u16 sBgMoveItems_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg_move_items.gbapal"); static const u16 sCloseBoxButton_Tilemap[] = { @@ -952,8 +943,8 @@ static const u16 sPartySlotEmpty_Tilemap[] = static const u16 sWaveform_Pal[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); static const u32 sWaveform_Gfx[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); -static const u32 gUnknown_085726B4[] = INCBIN_U32("graphics/unused/unknown_5726B4.gbapal"); -static const u32 gUnknown_085726F4[] = INCBIN_U32("graphics/unknown/unknown_5726F4.gbapal"); +static const u16 gUnknown_085726B4[] = INCBIN_U16("graphics/unused/unknown_5726B4.gbapal"); +static const u16 gUnknown_085726F4[] = INCBIN_U16("graphics/unknown/unknown_5726F4.gbapal"); static const struct WindowTemplate sWindowTemplates[] = { @@ -1353,9 +1344,9 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero } // Unused -void sub_80C6EAC(const u8 *string, void *dst, u16 arg2, u8 arg3, u8 clr2, u8 clr3) +static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgColor, u8 fgColor, u8 shadowColor) { - u32 var; + u32 tileSize; u8 windowId; u8 txtColor[3]; u8 *tileData1, *tileData2; @@ -1363,17 +1354,17 @@ void sub_80C6EAC(const u8 *string, void *dst, u16 arg2, u8 arg3, u8 clr2, u8 clr winTemplate.width = StringLength_Multibyte(string); winTemplate.height = 2; - var = winTemplate.width * 32; + tileSize = winTemplate.width * 32; windowId = AddWindow(&winTemplate); - FillWindowPixelBuffer(windowId, PIXEL_FILL(arg3)); + FillWindowPixelBuffer(windowId, PIXEL_FILL(bgColor)); tileData1 = (u8*) GetWindowAttribute(windowId, WINDOW_TILE_DATA); tileData2 = (winTemplate.width * 32) + tileData1; - txtColor[0] = arg3; - txtColor[1] = clr2; - txtColor[2] = clr3; + txtColor[0] = bgColor; + txtColor[1] = fgColor; + txtColor[2] = shadowColor; AddTextPrinterParameterized4(windowId, 1, 0, 2, 0, 0, txtColor, -1, string); - CpuCopy16(tileData1, dst, var); - CpuCopy16(tileData2, dst + arg2, var); + CpuCopy16(tileData1, dst, tileSize); + CpuCopy16(tileData2, dst + offset, tileSize); RemoveWindow(windowId); } @@ -2007,9 +1998,9 @@ static void sub_80C7E98(void) sub_80D2A90(&sPSSData->unk_0020, sPSSData->unk_0028, 8); gKeyRepeatStartDelay = 20; ClearScheduledBgCopiesToVram(); - sub_80D259C(3); - sub_80D2644(0, 1, gUnknown_0857239C, 8, 4); - sub_80D2770(0, 1, 0); + TilemapUtil_Init(TILEMAPID_COUNT); + TilemapUtil_SetMap(TILEMAPID_PKMN_DATA, 1, sPkmnData_Tilemap, 8, 4); + TilemapUtil_SetPos(TILEMAPID_PKMN_DATA, 1, 0); sPSSData->closeBoxFlashing = FALSE; } @@ -2106,7 +2097,7 @@ static void Cb_InitPSS(u8 taskId) sub_80CA0D8(); break; case 7: - sub_80CA704(); + InitSupplementalTilemaps(); break; case 8: CreateInitBoxTask(StorageGetCurrentBox()); @@ -2689,7 +2680,7 @@ static void Cb_MoveMon(u8 taskId) switch (sPSSData->state) { case 0: - InitMonPlaceChange(0); + InitMonPlaceChange(CHANGE_GRAB); sPSSData->state++; break; case 1: @@ -2709,7 +2700,7 @@ static void Cb_PlaceMon(u8 taskId) switch (sPSSData->state) { case 0: - InitMonPlaceChange(1); + InitMonPlaceChange(CHANGE_PLACE); sPSSData->state++; break; case 1: @@ -2729,7 +2720,7 @@ static void Cb_ShiftMon(u8 taskId) switch (sPSSData->state) { case 0: - InitMonPlaceChange(2); + InitMonPlaceChange(CHANGE_SHIFT); sPSSData->state++; break; case 1: @@ -2755,7 +2746,7 @@ static void Cb_WithdrawMon(u8 taskId) else { SaveCursorPos(); - InitMonPlaceChange(0); + InitMonPlaceChange(CHANGE_GRAB); sPSSData->state = 2; } break; @@ -2777,14 +2768,14 @@ static void Cb_WithdrawMon(u8 taskId) case 3: if (!DoShowPartyMenu()) { - InitMonPlaceChange(1); + InitMonPlaceChange(CHANGE_PLACE); sPSSData->state++; } break; case 4: if (!DoMonPlaceChange()) { - sub_80CAB20(); + UpdatePartySlotColors(); sPSSData->state++; } break; @@ -2845,7 +2836,7 @@ static void Cb_DepositMenu(u8 taskId) { sub_80CE22C(); StartDisplayMonMosaicEffect(); - sub_80CAB20(); + UpdatePartySlotColors(); SetPSSCallback(Cb_MainPSS); } break; @@ -2938,7 +2929,7 @@ static void Cb_ReleaseMon(u8 taskId) { RefreshDisplayMon(); StartDisplayMonMosaicEffect(); - sub_80CAB20(); + UpdatePartySlotColors(); sPSSData->state++; } break; @@ -3291,7 +3282,7 @@ static void Cb_HandleMovingMonFromParty(u8 taskId) case 1: if (GetNumPartySpritesCompacting() == 0) { - sub_80CAB20(); + UpdatePartySlotColors(); SetPSSCallback(Cb_MainPSS); } break; @@ -3738,7 +3729,7 @@ static void GiveChosenBagItem(void) static void FreePSSData(void) { - sub_80D25F0(); + TilemapUtil_Free(); MultiMove_Free(); FREE_AND_SET_NULL(sPSSData); FreeAllWindowBuffers(); @@ -3787,13 +3778,13 @@ static void LoadWaveformSpritePalette(void) static void sub_80CA0D8(void) { - LoadPalette(gUnknown_085723DC, 0, 0x20); - LoadPalette(gUnknown_085723FC, 0x20, 0x20); - LoadPalette(gUnknown_085726F4, 0xF0, 0x20); + LoadPalette(sInterface_Pal, 0, sizeof(sInterface_Pal)); + LoadPalette(sPkmnDataGray_Pal, 0x20, sizeof(sPkmnDataGray_Pal)); + LoadPalette(gUnknown_085726F4, 0xF0, sizeof(gUnknown_085726F4)); if (sPSSData->boxOption != OPTION_MOVE_ITEMS) - LoadPalette(gUnknown_0857241C, 0x30, 0x20); + LoadPalette(sBg_Pal, 0x30, sizeof(sBg_Pal)); else - LoadPalette(gUnknown_0857243C, 0x30, 0x20); + LoadPalette(sBgMoveItems_Pal, 0x30, sizeof(sBgMoveItems_Pal)); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30)); CreateDisplayMonSprite(); @@ -3963,45 +3954,45 @@ static void UpdateWaveformAnimation(void) if (sPSSData->displayMonSpecies != SPECIES_NONE) { - // Start animation - sub_80D27AC(0, 0, 0, 8, 2); + // Start waveform animation and color "Pkmn Data" + TilemapUtil_SetRect(TILEMAPID_PKMN_DATA, 0, 0, 8, 2); for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) StartSpriteAnimIfDifferent(sPSSData->waveformSprites[i], i * 2 + 1); } else { - // Stop animation - sub_80D27AC(0, 0, 2, 8, 2); + // Stop waveform animation and gray out "Pkmn Data" + TilemapUtil_SetRect(TILEMAPID_PKMN_DATA, 0, 2, 8, 2); for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) StartSpriteAnim(sPSSData->waveformSprites[i], i * 2); } - sub_80D2918(0); + TilemapUtil_Update(TILEMAPID_PKMN_DATA); ScheduleBgCopyTilemapToVram(1); } -static void sub_80CA704(void) +static void InitSupplementalTilemaps(void) { LZ77UnCompWram(gStorageSystemPartyMenu_Tilemap, sPSSData->partyMenuTilemapBuffer); LoadPalette(gStorageSystemPartyMenu_Pal, 0x10, 0x20); - sub_80D2644(1, 1, sPSSData->partyMenuTilemapBuffer, 12, 22); - sub_80D2644(2, 1, sCloseBoxButton_Tilemap, 9, 4); - sub_80D2770(1, 10, 0); - sub_80D2770(2, 21, 0); + TilemapUtil_SetMap(TILEMAPID_PARTY_MENU, 1, sPSSData->partyMenuTilemapBuffer, 12, 22); + TilemapUtil_SetMap(TILEMAPID_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4); + TilemapUtil_SetPos(TILEMAPID_PARTY_MENU, 10, 0); + TilemapUtil_SetPos(TILEMAPID_CLOSE_BUTTON, 21, 0); SetPartySlotTilemaps(); if (sInPartyMenu) { - sub_80CA984(TRUE); + UpdateCloseBoxButtonTilemap(TRUE); CreatePartyMonsSprites(TRUE); - sub_80D2918(2); - sub_80D2918(1); + TilemapUtil_Update(TILEMAPID_CLOSE_BUTTON); + TilemapUtil_Update(TILEMAPID_PARTY_MENU); } else { - sub_80D27AC(1, 0, 20, 12, 2); - sub_80CA984(TRUE); - sub_80D2918(1); - sub_80D2918(2); + TilemapUtil_SetRect(TILEMAPID_PARTY_MENU, 0, 20, 12, 2); + UpdateCloseBoxButtonTilemap(TRUE); + TilemapUtil_Update(TILEMAPID_PARTY_MENU); + TilemapUtil_Update(TILEMAPID_CLOSE_BUTTON); } ScheduleBgCopyTilemapToVram(1); @@ -4023,8 +4014,8 @@ static bool8 ShowPartyMenu(void) sPSSData->partyMenuUnused--; sPSSData->partyMenuY++; - sub_80D27F4(1, 3, 1); - sub_80D2918(1); + TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, 1); + TilemapUtil_Update(TILEMAPID_PARTY_MENU); ScheduleBgCopyTilemapToVram(1); MovePartySprites(8); if (++sPSSData->partyMenuMoveTimer == 20) @@ -4053,8 +4044,8 @@ static bool8 HidePartyMenu(void) { sPSSData->partyMenuUnused++; sPSSData->partyMenuY--; - sub_80D27F4(1, 3, -1); - sub_80D2918(1); + TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, -1); + TilemapUtil_Update(TILEMAPID_PARTY_MENU); FillBgTilemapBufferRect_Palette0(1, 0x100, 10, sPSSData->partyMenuY, 12, 1); MovePartySprites(-8); if (++sPSSData->partyMenuMoveTimer != 20) @@ -4067,8 +4058,11 @@ static bool8 HidePartyMenu(void) sInPartyMenu = FALSE; DestroyAllPartyMonIcons(); CompactPartySlots(); - sub_80D27AC(2, 0, 0, 9, 2); - sub_80D2918(2); + + // The close box button gets partially covered by + // the party menu, restore it + TilemapUtil_SetRect(TILEMAPID_CLOSE_BUTTON, 0, 0, 9, 2); + TilemapUtil_Update(TILEMAPID_CLOSE_BUTTON); ScheduleBgCopyTilemapToVram(1); return FALSE; } @@ -4077,14 +4071,14 @@ static bool8 HidePartyMenu(void) return FALSE; } -static void sub_80CA984(bool8 normal) +static void UpdateCloseBoxButtonTilemap(bool8 normal) { if (normal) - sub_80D27AC(2, 0, 0, 9, 2); + TilemapUtil_SetRect(TILEMAPID_CLOSE_BUTTON, 0, 0, 9, 2); else // flashing - sub_80D27AC(2, 0, 2, 9, 2); + TilemapUtil_SetRect(TILEMAPID_CLOSE_BUTTON, 0, 2, 9, 2); - sub_80D2918(2); + TilemapUtil_Update(TILEMAPID_CLOSE_BUTTON); ScheduleBgCopyTilemapToVram(1); } @@ -4100,7 +4094,7 @@ static void StopFlashingCloseBoxButton(void) if (sPSSData->closeBoxFlashing) { sPSSData->closeBoxFlashing = FALSE; - sub_80CA984(TRUE); + UpdateCloseBoxButtonTilemap(TRUE); } } @@ -4110,7 +4104,7 @@ static void UpdateCloseBoxButtonFlash(void) { sPSSData->closeBoxFlashTimer = 0; sPSSData->closeBoxFlashState = (sPSSData->closeBoxFlashState == FALSE); - sub_80CA984(sPSSData->closeBoxFlashState); + UpdateCloseBoxButtonTilemap(sPSSData->closeBoxFlashState); } } @@ -4150,11 +4144,11 @@ static void SetPartySlotTilemap(u8 partyId, bool8 hasMon) } } -static void sub_80CAB20(void) +static void UpdatePartySlotColors(void) { SetPartySlotTilemaps(); - sub_80D27AC(1, 0, 0, 12, 22); - sub_80D2918(1); + TilemapUtil_SetRect(TILEMAPID_PARTY_MENU, 0, 0, 12, 22); + TilemapUtil_Update(TILEMAPID_PARTY_MENU); ScheduleBgCopyTilemapToVram(1); } @@ -4637,7 +4631,7 @@ static void SetBoxMonIconObjMode(u8 boxPosition, u8 objMode) } } -static void CreatePartyMonsSprites(bool8 arg0) +static void CreatePartyMonsSprites(bool8 visible) { u16 i, count; u16 species = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES2); @@ -4660,7 +4654,7 @@ static void CreatePartyMonsSprites(bool8 arg0) } } - if (!arg0) + if (!visible) { for (i = 0; i < count; i++) { @@ -5426,7 +5420,7 @@ static void CreateIncomingBoxTitle(u8 boxId, s8 direction) StringCopyPadded(sPSSData->boxTitleText, GetBoxNamePtr(boxId), 0, 8); DrawTextWindowAndBufferTiles(sPSSData->boxTitleText, sPSSData->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); - LoadPalette(sBoxTitleColors[GetBoxWallpaper(boxId)], palOffset, 4); + LoadPalette(sBoxTitleColors[GetBoxWallpaper(boxId)], palOffset, sizeof(sBoxTitleColors[0])); x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); adjustedX = x; adjustedX += direction * 192; @@ -5673,7 +5667,7 @@ static void sub_80CD36C(void) static void sub_80CD3EC(void) { CreateCursorSprites(); - sub_80CEBDC(); + ReshowDisplayMon(); sPSSData->cursorPrevHorizPos = 1; sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; if (sIsMonBeingMoved) @@ -5996,25 +5990,27 @@ static u8 GetSavedCursorPos(void) return sSavedCursorPosition; } -static void InitMonPlaceChange(u8 a0) +static void InitMonPlaceChange(u8 type) { static bool8 (*const placeChangeFuncs[])(void) = { - MonPlaceChange_Move, - MonPlaceChange_Place, - MonPlaceChange_Shift, + [CHANGE_GRAB] = MonPlaceChange_Grab, + [CHANGE_PLACE] = MonPlaceChange_Place, + [CHANGE_SHIFT] = MonPlaceChange_Shift, }; - sPSSData->monPlaceChangeFunc = placeChangeFuncs[a0]; + sPSSData->monPlaceChangeFunc = placeChangeFuncs[type]; sPSSData->monPlaceChangeState = 0; } -static void sub_80CDC64(bool8 arg0) +// No Shift while moving multiple Pokémon, only grab and place +// For both grab/place, the cursor moves down, then up +static void InitMultiMonPlaceChange(bool8 up) { - if (!arg0) - sPSSData->monPlaceChangeFunc = sub_80CDEB4; + if (!up) + sPSSData->monPlaceChangeFunc = MultiMonPlaceChange_Down; else - sPSSData->monPlaceChangeFunc = sub_80CDEC4; + sPSSData->monPlaceChangeFunc = MultiMonPlaceChange_Up; sPSSData->monPlaceChangeState = 0; } @@ -6024,7 +6020,7 @@ static bool8 DoMonPlaceChange(void) return sPSSData->monPlaceChangeFunc(); } -static bool8 MonPlaceChange_Move(void) +static bool8 MonPlaceChange_Grab(void) { switch (sPSSData->monPlaceChangeState) { @@ -6035,7 +6031,7 @@ static bool8 MonPlaceChange_Move(void) sPSSData->monPlaceChangeState++; break; case 1: - if (!sub_80CDED4()) + if (!MonPlaceChange_CursorDown()) { StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); MoveMon(); @@ -6043,7 +6039,7 @@ static bool8 MonPlaceChange_Move(void) } break; case 2: - if (!sub_80CDF08()) + if (!MonPlaceChange_CursorUp()) sPSSData->monPlaceChangeState++; break; case 3: @@ -6058,7 +6054,7 @@ static bool8 MonPlaceChange_Place(void) switch (sPSSData->monPlaceChangeState) { case 0: - if (!sub_80CDED4()) + if (!MonPlaceChange_CursorDown()) { StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); PlaceMon(); @@ -6066,7 +6062,7 @@ static bool8 MonPlaceChange_Place(void) } break; case 1: - if (!sub_80CDF08()) + if (!MonPlaceChange_CursorUp()) { StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); sPSSData->monPlaceChangeState++; @@ -6114,17 +6110,17 @@ static bool8 MonPlaceChange_Shift(void) return TRUE; } -static bool8 sub_80CDEB4(void) +static bool8 MultiMonPlaceChange_Down(void) { - return sub_80CDED4(); + return MonPlaceChange_CursorDown(); } -static bool8 sub_80CDEC4(void) +static bool8 MultiMonPlaceChange_Up(void) { - return sub_80CDF08(); + return MonPlaceChange_CursorUp(); } -static bool8 sub_80CDED4(void) +static bool8 MonPlaceChange_CursorDown(void) { switch (sPSSData->cursorSprite->pos2.y) { @@ -6134,18 +6130,18 @@ static bool8 sub_80CDED4(void) case 0: sPSSData->cursorSprite->pos2.y++; break; - case 8: + case 8: // Cursor has reached bottom return FALSE; } return TRUE; } -static bool8 sub_80CDF08(void) +static bool8 MonPlaceChange_CursorUp(void) { switch (sPSSData->cursorSprite->pos2.y) { - case 0: + case 0: // Cursor has reached top return FALSE; default: sPSSData->cursorSprite->pos2.y--; @@ -6542,6 +6538,8 @@ static void LoadSavedMovingMon(void) { if (sIsMonBeingMoved) { + // If it came from the party load a struct Pokemon, + // otherwise load a BoxPokemon if (sMovingMonOrigBoxId == TOTAL_BOXES_COUNT) sPSSData->movingMon = sSavedMovingMon; else @@ -6695,7 +6693,7 @@ static void TryRefreshDisplayMon(void) } } -static void sub_80CEBDC(void) +static void ReshowDisplayMon(void) { if (sIsMonBeingMoved) SetDisplayMonData(&sSavedMovingMon, MODE_PARTY); @@ -7726,7 +7724,8 @@ static void StartCursorAnim(u8 animNum) StartSpriteAnim(sPSSData->cursorSprite, animNum); } -static u8 sub_80CFE78(void) +// Unused +static u8 GetMovingMonOriginalBoxId(void) { return sMovingMonOrigBoxId; } @@ -8078,7 +8077,7 @@ static bool8 MultiMove_GrabSelection(void) case 0: MultiMove_GetMonsFromSelection(); MultiMove_RemoveMonsFromBox(); - sub_80CDC64(FALSE); + InitMultiMonPlaceChange(FALSE); sMultiMove->state++; break; case 1: @@ -8086,7 +8085,7 @@ static bool8 MultiMove_GrabSelection(void) { StartCursorAnim(CURSOR_ANIM_FIST); MultiMove_InitMove(0, 256, 8); - sub_80CDC64(TRUE); + InitMultiMonPlaceChange(TRUE); sMultiMove->state++; } break; @@ -8119,7 +8118,7 @@ static bool8 MultiMove_PlaceMons(void) case 0: MultiMove_SetPlacedMonData(); MultiMove_InitMove(0, -256, 8); - sub_80CDC64(FALSE); + InitMultiMonPlaceChange(FALSE); sMultiMove->state++; break; case 1: @@ -8127,7 +8126,7 @@ static bool8 MultiMove_PlaceMons(void) { MultiMove_CreatePlacedMonIcons(); StartCursorAnim(CURSOR_ANIM_OPEN); - sub_80CDC64(TRUE); + InitMultiMonPlaceChange(TRUE); HideBg(0); sMultiMove->state++; } @@ -9210,6 +9209,12 @@ static void SpriteCB_ItemIcon_HideParty(struct Sprite *sprite) #undef sCursorArea #undef sCursorPos + +//------------------------------------------------------------------------------ +// SECTION: General utility +//------------------------------------------------------------------------------ + + // Unused, leftover from FRLG static void BackupPokemonStorage(void/*struct PokemonStorage * dest*/) { @@ -9474,6 +9479,12 @@ bool32 AnyStorageMonWithMove(u16 moveId) return FALSE; } + +//------------------------------------------------------------------------------ +// SECTION: Walda +//------------------------------------------------------------------------------ + + void ResetWaldaWallpaper(void) { gSaveBlock1Ptr->waldaPhrase.iconId = 0; @@ -9542,205 +9553,243 @@ bool32 IsWaldaPhraseEmpty(void) return (gSaveBlock1Ptr->waldaPhrase.text[0] == EOS); } -// Not sure what the purpose of these functions is. -// They seem to only be called while PSS is initialized. -EWRAM_DATA static struct UnkStruct_2039D84 *gUnknown_02039D84 = NULL; -EWRAM_DATA static u16 gUnknown_02039D88 = 0; +//------------------------------------------------------------------------------ +// SECTION: TilemapUtil +// +// Handles 3 particular tilemaps in a somewhat unusual way. +// For example, while the cursor is on the Close Box button it flashes between +// two states alternately. Both these states are their own part of the same +// tilemap that's always present. The utility shifts the tilemap up and down +// to show/hide the states, and limits the view with a rectangle that only +// reveals one at a time. +// Each tilemap is tracked with a TILEMAPID that can be used to reference it. +//------------------------------------------------------------------------------ + + +struct TilemapUtil_RectData +{ + s16 x; + s16 y; + u16 width; + u16 height; + s16 destX; + s16 destY; +}; + +struct TilemapUtil +{ + struct TilemapUtil_RectData prev; // Only read in unused function + struct TilemapUtil_RectData cur; + const void *savedTilemap; // Only written in unused function + const void *tilemap; + u16 altWidth; + u16 altHeight; // Never read + u16 width; + u16 height; // Never read + u16 rowSize; // Never read + u8 tileSize; + u8 bg; + bool8 active; +}; + +EWRAM_DATA static struct TilemapUtil *sTilemapUtil = NULL; +EWRAM_DATA static u16 sNumTilemapUtilIds = 0; -static void sub_80D259C(u8 count) +static void TilemapUtil_Init(u8 count) { u16 i; - gUnknown_02039D84 = Alloc(sizeof(*gUnknown_02039D84) * count); - gUnknown_02039D88 = (gUnknown_02039D84 == NULL) ? 0 : count; - for (i = 0; i < gUnknown_02039D88; i++) + sTilemapUtil = Alloc(sizeof(*sTilemapUtil) * count); + sNumTilemapUtilIds = (sTilemapUtil == NULL) ? 0 : count; + for (i = 0; i < sNumTilemapUtilIds; i++) { - gUnknown_02039D84[i].field_18 = NULL; - gUnknown_02039D84[i].field_2C = 0; + sTilemapUtil[i].savedTilemap = NULL; + sTilemapUtil[i].active = FALSE; } } -static void sub_80D25F0(void) +static void TilemapUtil_Free(void) { - Free(gUnknown_02039D84); + Free(sTilemapUtil); } -static void sub_80D2604(void) +// Unused +static void TilemapUtil_UpdateAll(void) { s32 i; - for (i = 0; i < gUnknown_02039D88; i++) + for (i = 0; i < sNumTilemapUtilIds; i++) { - if (gUnknown_02039D84[i].field_2C == 1) - sub_80D2918(i); + if (sTilemapUtil[i].active == TRUE) + TilemapUtil_Update(i); } } struct { - u16 a; - u16 b; -} -static const sUnkVars[][4] = + u16 width; + u16 height; +} static const sTilemapDimensions[][4] = { { - {0x0100, 0x0100}, - {0x0200, 0x0100}, - {0x0100, 0x0200}, - {0x0200, 0x0200}, + { 256, 256}, + { 512, 256}, + { 256, 512}, + { 512, 512}, }, { - {0x0080, 0x0080}, - {0x0100, 0x0100}, - {0x0200, 0x0200}, - {0x0400, 0x0400}, + { 128, 128}, + { 256, 256}, + { 512, 512}, + {1024, 1024}, }, }; -static void sub_80D2644(u8 id, u8 bg, const void *arg2, u16 arg3, u16 arg4) +static void TilemapUtil_SetMap(u8 id, u8 bg, const void *tilemap, u16 width, u16 height) { u16 bgScreenSize, bgType; - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - gUnknown_02039D84[id].field_18 = NULL; - gUnknown_02039D84[id].field_1C = arg2; - gUnknown_02039D84[id].field_2B = bg; - gUnknown_02039D84[id].field_24 = arg3; - gUnknown_02039D84[id].field_26 = arg4; + sTilemapUtil[id].savedTilemap = NULL; + sTilemapUtil[id].tilemap = tilemap; + sTilemapUtil[id].bg = bg; + sTilemapUtil[id].width = width; + sTilemapUtil[id].height = height; bgScreenSize = GetBgAttribute(bg, BG_ATTR_SCREENSIZE); bgType = GetBgAttribute(bg, BG_ATTR_TYPE); - gUnknown_02039D84[id].field_20 = sUnkVars[bgType][bgScreenSize].a; - gUnknown_02039D84[id].field_22 = sUnkVars[bgType][bgScreenSize].b; + sTilemapUtil[id].altWidth = sTilemapDimensions[bgType][bgScreenSize].width; + sTilemapUtil[id].altHeight = sTilemapDimensions[bgType][bgScreenSize].height; if (bgType != 0) - gUnknown_02039D84[id].field_2A = 1; + sTilemapUtil[id].tileSize = 1; else - gUnknown_02039D84[id].field_2A = 2; + sTilemapUtil[id].tileSize = 2; - gUnknown_02039D84[id].field_28 = gUnknown_02039D84[id].field_2A * arg3; - gUnknown_02039D84[id].field_0[1].field_4 = arg3; - gUnknown_02039D84[id].field_0[1].field_6 = arg4; - gUnknown_02039D84[id].field_0[1].field_0 = 0; - gUnknown_02039D84[id].field_0[1].field_2 = 0; - gUnknown_02039D84[id].field_0[1].field_8 = 0; - gUnknown_02039D84[id].field_0[1].field_A = 0; - gUnknown_02039D84[id].field_0[0] = gUnknown_02039D84[id].field_0[1]; - gUnknown_02039D84[id].field_2C = 1; + sTilemapUtil[id].rowSize = sTilemapUtil[id].tileSize * width; + sTilemapUtil[id].cur.width = width; + sTilemapUtil[id].cur.height = height; + sTilemapUtil[id].cur.x = 0; + sTilemapUtil[id].cur.y = 0; + sTilemapUtil[id].cur.destX = 0; + sTilemapUtil[id].cur.destY = 0; + sTilemapUtil[id].prev = sTilemapUtil[id].cur; + sTilemapUtil[id].active = TRUE; } -static void sub_80D2740(u8 id, const void *arg1) +// Unused +static void TilemapUtil_SetSavedMap(u8 id, const void *tilemap) { - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - gUnknown_02039D84[id].field_18 = arg1; - gUnknown_02039D84[id].field_2C = 1; + sTilemapUtil[id].savedTilemap = tilemap; + sTilemapUtil[id].active = TRUE; } -static void sub_80D2770(u8 id, u16 arg1, u16 arg2) +static void TilemapUtil_SetPos(u8 id, u16 x, u16 y) { - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - gUnknown_02039D84[id].field_0[1].field_8 = arg1; - gUnknown_02039D84[id].field_0[1].field_A = arg2; - gUnknown_02039D84[id].field_2C = 1; + sTilemapUtil[id].cur.destX = x; + sTilemapUtil[id].cur.destY = y; + sTilemapUtil[id].active = TRUE; } -static void sub_80D27AC(u8 id, u16 arg1, u16 arg2, u16 arg3, u16 arg4) +static void TilemapUtil_SetRect(u8 id, u16 x, u16 y, u16 width, u16 height) { - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - gUnknown_02039D84[id].field_0[1].field_0 = arg1; - gUnknown_02039D84[id].field_0[1].field_2 = arg2; - gUnknown_02039D84[id].field_0[1].field_4 = arg3; - gUnknown_02039D84[id].field_0[1].field_6 = arg4; - gUnknown_02039D84[id].field_2C = 1; + sTilemapUtil[id].cur.x = x; + sTilemapUtil[id].cur.y = y; + sTilemapUtil[id].cur.width = width; + sTilemapUtil[id].cur.height = height; + sTilemapUtil[id].active = TRUE; } -static void sub_80D27F4(u8 id, u8 arg1, s8 arg2) +static void TilemapUtil_Move(u8 id, u8 mode, s8 val) { - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - switch (arg1) + switch (mode) { case 0: - gUnknown_02039D84[id].field_0[1].field_8 += arg2; - gUnknown_02039D84[id].field_0[1].field_4 -= arg2; + sTilemapUtil[id].cur.destX += val; + sTilemapUtil[id].cur.width -= val; break; case 1: - gUnknown_02039D84[id].field_0[1].field_0 += arg2; - gUnknown_02039D84[id].field_0[1].field_4 += arg2; + sTilemapUtil[id].cur.x += val; + sTilemapUtil[id].cur.width += val; break; case 2: - gUnknown_02039D84[id].field_0[1].field_A += arg2; - gUnknown_02039D84[id].field_0[1].field_6 -= arg2; + sTilemapUtil[id].cur.destY += val; + sTilemapUtil[id].cur.height -= val; break; case 3: - gUnknown_02039D84[id].field_0[1].field_2 -= arg2; - gUnknown_02039D84[id].field_0[1].field_6 += arg2; + sTilemapUtil[id].cur.y -= val; + sTilemapUtil[id].cur.height += val; break; case 4: - gUnknown_02039D84[id].field_0[1].field_8 += arg2; + sTilemapUtil[id].cur.destX += val; break; case 5: - gUnknown_02039D84[id].field_0[1].field_A += arg2; + sTilemapUtil[id].cur.destY += val; break; } - gUnknown_02039D84[id].field_2C = 1; + sTilemapUtil[id].active = TRUE; } -static void sub_80D2918(u8 id) +static void TilemapUtil_Update(u8 id) { - if (id >= gUnknown_02039D88) + if (id >= sNumTilemapUtilIds) return; - if (gUnknown_02039D84[id].field_18 != NULL) - sub_80D2960(id); + if (sTilemapUtil[id].savedTilemap != NULL) + TilemapUtil_DrawPrev(id); // Never called, above always FALSE - sub_80D29F8(id); - gUnknown_02039D84[id].field_0[0] = gUnknown_02039D84[id].field_0[1]; + TilemapUtil_Draw(id); + sTilemapUtil[id].prev = sTilemapUtil[id].cur; } -static void sub_80D2960(u8 id) +static void TilemapUtil_DrawPrev(u8 id) { s32 i; - u32 adder = gUnknown_02039D84[id].field_2A * gUnknown_02039D84[id].field_20; - const void *tiles = (gUnknown_02039D84[id].field_18 + (adder * gUnknown_02039D84[id].field_0[0].field_A)) - + (gUnknown_02039D84[id].field_2A * gUnknown_02039D84[id].field_0[0].field_8); + u32 adder = sTilemapUtil[id].tileSize * sTilemapUtil[id].altWidth; + const void *tiles = (sTilemapUtil[id].savedTilemap + (adder * sTilemapUtil[id].prev.destY)) + + (sTilemapUtil[id].tileSize * sTilemapUtil[id].prev.destX); - for (i = 0; i < gUnknown_02039D84[id].field_0[0].field_6; i++) + for (i = 0; i < sTilemapUtil[id].prev.height; i++) { - CopyToBgTilemapBufferRect(gUnknown_02039D84[id].field_2B, + CopyToBgTilemapBufferRect(sTilemapUtil[id].bg, tiles, - gUnknown_02039D84[id].field_0[0].field_8, - gUnknown_02039D84[id].field_0[0].field_A + i, - gUnknown_02039D84[id].field_0[0].field_4, + sTilemapUtil[id].prev.destX, + sTilemapUtil[id].prev.destY + i, + sTilemapUtil[id].prev.width, 1); tiles += adder; } } -static void sub_80D29F8(u8 id) +static void TilemapUtil_Draw(u8 id) { s32 i; - u32 adder = gUnknown_02039D84[id].field_2A * gUnknown_02039D84[id].field_24; - const void *tiles = (gUnknown_02039D84[id].field_1C + (adder * gUnknown_02039D84[id].field_0[1].field_2)) - + (gUnknown_02039D84[id].field_2A * gUnknown_02039D84[id].field_0[1].field_0); + u32 adder = sTilemapUtil[id].tileSize * sTilemapUtil[id].width; + const void *tiles = (sTilemapUtil[id].tilemap + (adder * sTilemapUtil[id].cur.y)) + + (sTilemapUtil[id].tileSize * sTilemapUtil[id].cur.x); - for (i = 0; i < gUnknown_02039D84[id].field_0[1].field_6; i++) + for (i = 0; i < sTilemapUtil[id].cur.height; i++) { - CopyToBgTilemapBufferRect(gUnknown_02039D84[id].field_2B, + CopyToBgTilemapBufferRect(sTilemapUtil[id].bg, tiles, - gUnknown_02039D84[id].field_0[1].field_8, - gUnknown_02039D84[id].field_0[1].field_A + i, - gUnknown_02039D84[id].field_0[1].field_4, + sTilemapUtil[id].cur.destX, + sTilemapUtil[id].cur.destY + i, + sTilemapUtil[id].cur.width, 1); tiles += adder; } From 7bf89d64466040f958903d0d4fc8a77c7c6c2737 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 19:28:31 -0400 Subject: [PATCH 135/762] Doc storage - icon scroll --- src/pokemon_storage_system.c | 200 ++++++++++++++++++++--------------- 1 file changed, 113 insertions(+), 87 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 9a6ac1469b13..82d33227d3f1 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -450,14 +450,14 @@ struct PokemonStorageSystemData u8 field_C5C; u8 field_C5D; u8 numPartyToCompact; - u16 field_C60; - s16 field_C62; - s16 field_C64; - u16 field_C66; - u8 field_C68; - s8 field_C69; - u8 field_C6A; - u8 field_C6B; // Never read. + u16 iconScrollDistance; + s16 iconScrollPos; + s16 iconScrollSpeed; + u16 iconScrollNumIncoming; + u8 iconScrollCurColumn; + s8 iconScrollDirection; // Unnecessary duplicate of scrollDirection + u8 iconScrollState; + u8 iconScrollToBoxId; // Unnecessary duplicate of scrollToBoxId struct WindowTemplate menuWindow; struct StorageMenu menuItems[7]; u8 menuItemsCount; @@ -582,7 +582,7 @@ static void ChooseBoxMenu_PrintInfo(void); static void UpdateCloseBoxButtonFlash(void); static void ToggleCursorAutoAction(void); static void LoadSavedMovingMon(void); -static void sub_80CE8E4(void); +static void SetSelectionAfterSummaryScreen(void); static void GiveChosenBagItem(void); static void SetUpHidePartyMenu(void); static void DestroyAllPartyMonIcons(void); @@ -649,7 +649,7 @@ static void SetUpDoShowPartyMenu(void); static void StartDisplayMonMosaicEffect(void); static void SpriteCB_ChooseBoxArrow(struct Sprite *); static void SpriteCB_HeldMon(struct Sprite *); -static void sub_80CB278(struct Sprite *); +static void SpriteCB_BoxMonIconScrollOut(struct Sprite *); static void SpriteCB_Arrow(struct Sprite *); static bool32 WaitForWallpaperGfxLoad(void); static bool8 InitPSSWindows(void); @@ -2045,7 +2045,7 @@ static void Cb_InitPSS(u8 taskId) break; case SCREEN_CHANGE_SUMMARY_SCREEN - 1: // Return from summary screen - sub_80CE8E4(); + SetSelectionAfterSummaryScreen(); break; case SCREEN_CHANGE_ITEM_FROM_BAG - 1: // Return from bag menu @@ -4396,7 +4396,7 @@ static void InitBoxMonSprites(u8 boxId) } } -static void sub_80CB140(u8 boxPosition) +static void CreateBoxMonIconAtPos(u8 boxPosition) { u16 species = GetCurrentBoxMonData(boxPosition, MON_DATA_SPECIES2); @@ -4412,7 +4412,13 @@ static void sub_80CB140(u8 boxPosition) } } -static void sub_80CB1F0(s16 arg0) +#define sDistance data[1] +#define sSpeed data[2] +#define sScrollInDestX data[3] +#define sDelay data[4] +#define sScrollOutX data[5] + +static void StartBoxMonIconsScrollOut(s16 speed) { u16 i; @@ -4420,44 +4426,51 @@ static void sub_80CB1F0(s16 arg0) { if (sPSSData->boxMonsSprites[i] != NULL) { - sPSSData->boxMonsSprites[i]->data[2] = arg0; - sPSSData->boxMonsSprites[i]->data[4] = 1; - sPSSData->boxMonsSprites[i]->callback = sub_80CB278; + sPSSData->boxMonsSprites[i]->sSpeed = speed; + sPSSData->boxMonsSprites[i]->sDelay = 1; + sPSSData->boxMonsSprites[i]->callback = SpriteCB_BoxMonIconScrollOut; } } } -static void sub_80CB234(struct Sprite *sprite) +static void SpriteCB_BoxMonIconScrollIn(struct Sprite *sprite) { - if (sprite->data[1] != 0) + if (sprite->sDistance != 0) { - sprite->data[1]--; - sprite->pos1.x += sprite->data[2]; + // Icon moving + sprite->sDistance--; + sprite->pos1.x += sprite->sSpeed; } else { - sPSSData->field_C66--; - sprite->pos1.x = sprite->data[3]; + // Icon arrived + sPSSData->iconScrollNumIncoming--; + sprite->pos1.x = sprite->sScrollInDestX; sprite->callback = SpriteCallbackDummy; } } -static void sub_80CB278(struct Sprite *sprite) +static void SpriteCB_BoxMonIconScrollOut(struct Sprite *sprite) { - if (sprite->data[4] != 0) + if (sprite->sDelay != 0) { - sprite->data[4]--; + sprite->sDelay--; } else { - sprite->pos1.x += sprite->data[2]; - sprite->data[5] = sprite->pos1.x + sprite->pos2.x; - if (sprite->data[5] <= 68 || sprite->data[5] >= 252) + // Icon moving + sprite->pos1.x += sprite->sSpeed; + sprite->sScrollOutX = sprite->pos1.x + sprite->pos2.x; + + // Check if icon offscreen + if (sprite->sScrollOutX <= 68 || sprite->sScrollOutX >= 252) sprite->callback = SpriteCallbackDummy; } } -static void DestroyAllIconsInColumn(u8 column) +// Sprites for Pokémon icons are destroyed during +// the box scroll once they've gone offscreen +static void DestroyBoxMonIconsInColumn(u8 column) { u16 row; u8 boxPosition = column; @@ -4473,15 +4486,16 @@ static void DestroyAllIconsInColumn(u8 column) } } -static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) +// Create the appearing icons for the incoming scrolling box +static u8 CreateBoxMonIconsInColumn(u8 column, u16 distance, s16 speed) { s32 i; u16 y = 44; - s16 xDest = 8 * (3 * row) + 100; - u16 x = xDest - ((times + 1) * xDelta); - u8 subpriority = 19 - row; - u8 count = 0; - u8 boxPosition = row; + s16 xDest = 8 * (3 * column) + 100; + u16 x = xDest - ((distance + 1) * speed); + u8 subpriority = 19 - column; + u8 iconsCreated = 0; + u8 boxPosition = column; if (sPSSData->boxOption != OPTION_MOVE_ITEMS) { @@ -4494,11 +4508,11 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) x, y, 2, subpriority); if (sPSSData->boxMonsSprites[boxPosition] != NULL) { - sPSSData->boxMonsSprites[boxPosition]->data[1] = times; - sPSSData->boxMonsSprites[boxPosition]->data[2] = xDelta; - sPSSData->boxMonsSprites[boxPosition]->data[3] = xDest; - sPSSData->boxMonsSprites[boxPosition]->callback = sub_80CB234; - count++; + sPSSData->boxMonsSprites[boxPosition]->sDistance = distance; + sPSSData->boxMonsSprites[boxPosition]->sSpeed = speed; + sPSSData->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; + sPSSData->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; + iconsCreated++; } } boxPosition += IN_BOX_COLUMNS; @@ -4507,6 +4521,8 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) } else { + // Separate case for Move Items mode is used + // to create the icons with the proper blend for (i = 0; i < IN_BOX_ROWS; i++) { if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) @@ -4516,13 +4532,13 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) x, y, 2, subpriority); if (sPSSData->boxMonsSprites[boxPosition] != NULL) { - sPSSData->boxMonsSprites[boxPosition]->data[1] = times; - sPSSData->boxMonsSprites[boxPosition]->data[2] = xDelta; - sPSSData->boxMonsSprites[boxPosition]->data[3] = xDest; - sPSSData->boxMonsSprites[boxPosition]->callback = sub_80CB234; - if (GetBoxMonDataAt(sPSSData->field_C5C, boxPosition, MON_DATA_HELD_ITEM) == 0) + sPSSData->boxMonsSprites[boxPosition]->sDistance = distance; + sPSSData->boxMonsSprites[boxPosition]->sSpeed = speed; + sPSSData->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; + sPSSData->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; + if (GetBoxMonDataAt(sPSSData->field_C5C, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; - count++; + iconsCreated++; } } boxPosition += IN_BOX_COLUMNS; @@ -4530,61 +4546,73 @@ static u8 sub_80CB2F8(u8 row, u16 times, s16 xDelta) } } - return count; + return iconsCreated; } -static void sub_80CB4CC(u8 boxId, s8 direction) -{ - sPSSData->field_C6A = 0; - sPSSData->field_C6B = boxId; - sPSSData->field_C69 = direction; - sPSSData->field_C60 = 32; - sPSSData->field_C64 = -(6 * direction); - sPSSData->field_C66 = 0; +#undef sDistance +#undef sSpeed +#undef sScrollInDestX +#undef sDelay +#undef sScrollOutX + +static void InitBoxMonIconScroll(u8 boxId, s8 direction) +{ + sPSSData->iconScrollState = 0; + sPSSData->iconScrollToBoxId = boxId; + sPSSData->iconScrollDirection = direction; + sPSSData->iconScrollDistance = 32; + sPSSData->iconScrollSpeed = -(6 * direction); + sPSSData->iconScrollNumIncoming = 0; SetBoxSpeciesAndPersonalities(boxId); if (direction > 0) - sPSSData->field_C68 = 0; + sPSSData->iconScrollCurColumn = 0; else - sPSSData->field_C68 = IN_BOX_COLUMNS - 1; + sPSSData->iconScrollCurColumn = IN_BOX_COLUMNS - 1; - sPSSData->field_C62 = (24 * sPSSData->field_C68) + 100; - sub_80CB1F0(sPSSData->field_C64); + sPSSData->iconScrollPos = (24 * sPSSData->iconScrollCurColumn) + 100; + StartBoxMonIconsScrollOut(sPSSData->iconScrollSpeed); } -static bool8 sub_80CB584(void) +static bool8 UpdateBoxMonIconScroll(void) { - if (sPSSData->field_C60 != 0) - sPSSData->field_C60--; + if (sPSSData->iconScrollDistance != 0) + sPSSData->iconScrollDistance--; - switch (sPSSData->field_C6A) + switch (sPSSData->iconScrollState) { case 0: - sPSSData->field_C62 += sPSSData->field_C64; - if (sPSSData->field_C62 <= 64 || sPSSData->field_C62 >= 252) + sPSSData->iconScrollPos += sPSSData->iconScrollSpeed; + if (sPSSData->iconScrollPos <= 64 || sPSSData->iconScrollPos >= 252) { - DestroyAllIconsInColumn(sPSSData->field_C68); - sPSSData->field_C62 += sPSSData->field_C69 * 24; - sPSSData->field_C6A++; + // A column of icons has gone offscreen, destroy them + DestroyBoxMonIconsInColumn(sPSSData->iconScrollCurColumn); + sPSSData->iconScrollPos += sPSSData->iconScrollDirection * 24; + sPSSData->iconScrollState++; } break; case 1: - sPSSData->field_C62 += sPSSData->field_C64; - sPSSData->field_C66 += sub_80CB2F8(sPSSData->field_C68, sPSSData->field_C60, sPSSData->field_C64); - if ((sPSSData->field_C69 > 0 && sPSSData->field_C68 == IN_BOX_COLUMNS - 1) - || (sPSSData->field_C69 < 0 && sPSSData->field_C68 == 0)) + // Create the new incoming column of icons + sPSSData->iconScrollPos += sPSSData->iconScrollSpeed; + sPSSData->iconScrollNumIncoming += CreateBoxMonIconsInColumn(sPSSData->iconScrollCurColumn, sPSSData->iconScrollDistance, sPSSData->iconScrollSpeed); + + if ((sPSSData->iconScrollDirection > 0 && sPSSData->iconScrollCurColumn == IN_BOX_COLUMNS - 1) + || (sPSSData->iconScrollDirection < 0 && sPSSData->iconScrollCurColumn == 0)) { - sPSSData->field_C6A++; + // Scroll has reached final column + sPSSData->iconScrollState++; } else { - sPSSData->field_C68 += sPSSData->field_C69; - sPSSData->field_C6A = 0; + // Continue scrolling + sPSSData->iconScrollCurColumn += sPSSData->iconScrollDirection; + sPSSData->iconScrollState = 0; } break; case 2: - if (sPSSData->field_C66 == 0) + // Wait to make sure all icons have arrived + if (sPSSData->iconScrollNumIncoming == 0) { - sPSSData->field_C60++; + sPSSData->iconScrollDistance++; return FALSE; } break; @@ -4626,9 +4654,7 @@ static void DestroyBoxMonIconAtPosition(u8 boxPosition) static void SetBoxMonIconObjMode(u8 boxPosition, u8 objMode) { if (sPSSData->boxMonsSprites[boxPosition] != NULL) - { sPSSData->boxMonsSprites[boxPosition]->oam.objMode = objMode; - } } static void CreatePartyMonsSprites(bool8 visible) @@ -4667,7 +4693,7 @@ static void CreatePartyMonsSprites(bool8 visible) { for (i = 0; i < PARTY_SIZE; i++) { - if (sPSSData->partySprites[i] != NULL && GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM) == 0) + if (sPSSData->partySprites[i] != NULL && GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM) == ITEM_NONE) sPSSData->partySprites[i]->oam.objMode = ST_OAM_OBJ_BLEND; } } @@ -5146,7 +5172,7 @@ static void SetUpScrollToBox(u8 boxId) static bool8 ScrollToBox(void) { - bool8 var; + bool8 iconsScrolling; switch (sPSSData->scrollState) { @@ -5157,12 +5183,12 @@ static bool8 ScrollToBox(void) if (!WaitForWallpaperGfxLoad()) return TRUE; - sub_80CB4CC(sPSSData->scrollToBoxId, sPSSData->scrollDirection); + InitBoxMonIconScroll(sPSSData->scrollToBoxId, sPSSData->scrollDirection); CreateIncomingBoxTitle(sPSSData->scrollToBoxId, sPSSData->scrollDirection); StartBoxScrollArrowsSlide(sPSSData->scrollDirection); break; case 2: - var = sub_80CB584(); + iconsScrolling = UpdateBoxMonIconScroll(); if (sPSSData->scrollTimer != 0) { sPSSData->bg2_X += sPSSData->scrollSpeed; @@ -5171,7 +5197,7 @@ static bool8 ScrollToBox(void) CycleBoxTitleSprites(); StopBoxScrollArrowsSlide(); } - return var; + return iconsScrolling; } sPSSData->scrollState++; @@ -6267,7 +6293,7 @@ static bool8 TryStorePartyMonInBox(u8 boxId) } if (boxId == StorageGetCurrentBox()) - sub_80CB140(boxPosition); + CreateBoxMonIconAtPos(boxPosition); StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); return TRUE; @@ -6573,7 +6599,7 @@ static void InitSummaryScreenData(void) } } -static void sub_80CE8E4(void) +static void SetSelectionAfterSummaryScreen(void) { if (sIsMonBeingMoved) LoadSavedMovingMon(); @@ -8385,7 +8411,7 @@ static void MultiMove_CreatePlacedMonIcons(void) for (j = sMultiMove->minColumn; j < columnCount; j++) { if (GetBoxMonData(&sMultiMove->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)) - sub_80CB140(boxPosition); + CreateBoxMonIconAtPos(boxPosition); monArrayId++; boxPosition++; } From 33c68255de5db6a936929faade6a635ba97d33d0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 23:31:29 -0400 Subject: [PATCH 136/762] Doc storage - unk utility --- src/pokemon_storage_system.c | 137 +++++++++++++++++++---------------- 1 file changed, 76 insertions(+), 61 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 82d33227d3f1..6c25dcfceeac 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -342,21 +342,21 @@ struct StorageMenu int textId; }; -struct UnkStruct_2000028 -{ - const u8 *unk_00; - u8 *unk_04; - u16 unk_08; - u16 unk_0a; - u16 newField; - void (*unk_0c)(struct UnkStruct_2000028 *data); +struct UnkUtilData +{ + const u8 *src; + u8 *dest; + u16 size; + u16 unk; + u16 height; + void (*func)(struct UnkUtilData *data); }; -struct UnkStruct_2000020 +struct UnkUtil { - struct UnkStruct_2000028 *unk_00; - u8 unk_04; - u8 unk_05; + struct UnkUtilData *data; + u8 numActive; + u8 max; }; struct ChooseBoxMenu @@ -391,8 +391,8 @@ struct PokemonStorageSystemData u8 screenChangeType; bool8 isReshowingPSS; u8 taskId; - struct UnkStruct_2000020 unk_0020; - struct UnkStruct_2000028 unk_0028[8]; + struct UnkUtil unkUtil; + struct UnkUtilData unkUtilData[8]; u16 partyMenuTilemapBuffer[0x108]; u16 partyMenuUnused; // Never read u16 partyMenuY; @@ -770,10 +770,6 @@ static s8 GetMenuItemTextId(u8); static u8 SetSelectionMenuTexts(void); static bool8 SetMenuTexts_Mon(void); static bool8 SetMenuTexts_Item(void); -static void sub_80D2A90(struct UnkStruct_2000020 *, struct UnkStruct_2000028 *, u32); -static void sub_80D2AA4(void); -static void sub_80D2B88(struct UnkStruct_2000028 *); -static void sub_80D2C1C(struct UnkStruct_2000028 *); static u8 GetBoxWallpaper(u8); static void SetBoxWallpaper(u8, u8); @@ -836,6 +832,12 @@ static void TilemapUtil_Update(u8); static void TilemapUtil_DrawPrev(u8); static void TilemapUtil_Draw(u8); +// Functions for unknown utility +static void UnkUtil_Init(struct UnkUtil *, struct UnkUtilData *, u32); +static void UnkUtil_Run(void); +static void UnkUtil_CpuRun(struct UnkUtilData *); +static void UnkUtil_DmaRun(struct UnkUtilData *); + struct { const u8 *text; const u8 *desc; @@ -1921,7 +1923,7 @@ static void VblankCb_PSS(void) { LoadOam(); ProcessSpriteCopyRequests(); - sub_80D2AA4(); + UnkUtil_Run(); TransferPlttBuffer(); SetGpuReg(REG_OFFSET_BG2HOFS, sPSSData->bg2_X); } @@ -1995,7 +1997,7 @@ static void sub_80C7E98(void) FreeAllSpritePalettes(); ClearDma3Requests(); gReservedSpriteTileCount = 0x280; - sub_80D2A90(&sPSSData->unk_0020, sPSSData->unk_0028, 8); + UnkUtil_Init(&sPSSData->unkUtil, sPSSData->unkUtilData, ARRAY_COUNT(sPSSData->unkUtilData)); gKeyRepeatStartDelay = 20; ClearScheduledBgCopiesToVram(); TilemapUtil_Init(TILEMAPID_COUNT); @@ -9821,83 +9823,96 @@ static void TilemapUtil_Draw(u8 id) } } -EWRAM_DATA static struct UnkStruct_2000020 *gUnknown_02039D8C = NULL; -static void sub_80D2A90(struct UnkStruct_2000020 *arg0, struct UnkStruct_2000028 *arg1, u32 arg2) +//------------------------------------------------------------------------------ +// SECTION: UnkUtil +// +// Some data transfer utility that goes functionally unused. +// It gets initialized with UnkUtil_Init, and run every vblank in Pokémon +// Storage with UnkUtil_Run, but neither of the Add functions are ever used, +// so UnkUtil_Run performs no actions. +//------------------------------------------------------------------------------ + + +EWRAM_DATA static struct UnkUtil *sUnkUtil = NULL; + +static void UnkUtil_Init(struct UnkUtil *util, struct UnkUtilData *data, u32 max) { - gUnknown_02039D8C = arg0; - arg0->unk_00 = arg1; - arg0->unk_05 = arg2; - arg0->unk_04 = 0; + sUnkUtil = util; + util->data = data; + util->max = max; + util->numActive = 0; } -static void sub_80D2AA4(void) +static void UnkUtil_Run(void) { u16 i; - - if (gUnknown_02039D8C->unk_04) + if (sUnkUtil->numActive) { - for (i = 0; i < gUnknown_02039D8C->unk_04; i++) + for (i = 0; i < sUnkUtil->numActive; i++) { - struct UnkStruct_2000028 *unkStruct = &gUnknown_02039D8C->unk_00[i]; - unkStruct->unk_0c(unkStruct); + struct UnkUtilData *data = &sUnkUtil->data[i]; + data->func(data); } - - gUnknown_02039D8C->unk_04 = 0; + sUnkUtil->numActive = 0; } } -static bool8 sub_80D2AEC(u8 *dest, u16 dLeft, u16 dTop, const u8 *src, u16 sLeft, u16 sTop, u16 width, u16 height, u16 unkArg) +// Unused +static bool8 UnkUtil_CpuAdd(u8 *dest, u16 dLeft, u16 dTop, const u8 *src, u16 sLeft, u16 sTop, u16 width, u16 height, u16 unkArg) { - struct UnkStruct_2000028 *unkStruct; + struct UnkUtilData *data; - if (gUnknown_02039D8C->unk_04 >= gUnknown_02039D8C->unk_05) + if (sUnkUtil->numActive >= sUnkUtil->max) return FALSE; - unkStruct = &gUnknown_02039D8C->unk_00[gUnknown_02039D8C->unk_04++]; - unkStruct->unk_08 = width * 2; - unkStruct->unk_04 = dest + 2 * (dTop * 32 + dLeft); - unkStruct->unk_00 = src + 2 * (sTop * unkArg + sLeft); - unkStruct->newField = height; - unkStruct->unk_0a = unkArg; - unkStruct->unk_0c = sub_80D2B88; + data = &sUnkUtil->data[sUnkUtil->numActive++]; + data->size = width * 2; + data->dest = dest + 2 * (dTop * 32 + dLeft); + data->src = src + 2 * (sTop * unkArg + sLeft); + data->height = height; + data->unk = unkArg; + data->func = UnkUtil_CpuRun; return TRUE; } -static void sub_80D2B88(struct UnkStruct_2000028 *unkStruct) +// Functionally unused +static void UnkUtil_CpuRun(struct UnkUtilData *data) { u16 i; - for (i = 0; i < unkStruct->newField; i++) + for (i = 0; i < data->height; i++) { - CpuSet(unkStruct->unk_00, unkStruct->unk_04, (unkStruct->unk_08 / 2)); - unkStruct->unk_04 += 64; - unkStruct->unk_00 += (unkStruct->unk_0a * 2); + CpuSet(data->src, data->dest, data->size / 2); + data->dest += 64; + data->src += data->unk * 2; } } -static bool8 sub_80D2BC0(void *dest, u16 dLeft, u16 dTop, u16 width, u16 height) +// Unused +static bool8 UnkUtil_DmaAdd(void *dest, u16 dLeft, u16 dTop, u16 width, u16 height) { - struct UnkStruct_2000028 *unkStruct; + struct UnkUtilData *data; - if (gUnknown_02039D8C->unk_04 >= gUnknown_02039D8C->unk_05) + if (sUnkUtil->numActive >= sUnkUtil->max) return FALSE; - unkStruct = &gUnknown_02039D8C->unk_00[gUnknown_02039D8C->unk_04++]; - unkStruct->unk_08 = width * 2; - unkStruct->unk_04 = dest + ((dTop * 32) + dLeft) * 2; - unkStruct->newField = height; - unkStruct->unk_0c = sub_80D2C1C; + data = &sUnkUtil->data[sUnkUtil->numActive++]; + data->size = width * 2; + data->dest = dest + (dTop * 32 + dLeft) * 2; + data->height = height; + data->func = UnkUtil_DmaRun; return TRUE; } -static void sub_80D2C1C(struct UnkStruct_2000028 *unkStruct) +// Functionally unused +static void UnkUtil_DmaRun(struct UnkUtilData *data) { u16 i; - for (i = 0; i < unkStruct->newField; i++) + for (i = 0; i < data->height; i++) { - Dma3FillLarge_(0, unkStruct->unk_04, unkStruct->unk_08, 16); - unkStruct->unk_04 += 64; + Dma3FillLarge16_(0, data->dest, data->size); + data->dest += 64; } } From 6f967ff6ad90e4a8438fe802c18dbc29cedda1ee Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 23:40:27 -0400 Subject: [PATCH 137/762] Doc storage - standardize names, drop PSS --- src/pokemon_storage_system.c | 2506 +++++++++++++++++----------------- 1 file changed, 1253 insertions(+), 1253 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 6c25dcfceeac..c4b3c6f607bc 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -389,7 +389,7 @@ struct PokemonStorageSystemData u8 state; u8 boxOption; u8 screenChangeType; - bool8 isReshowingPSS; + bool8 isReopening; u8 taskId; struct UnkUtil unkUtil; struct UnkUtilData unkUtilData[8]; @@ -546,7 +546,7 @@ static u32 sItemIconGfxBuffer[98]; EWRAM_DATA static u8 sPreviousBoxOption = 0; EWRAM_DATA static struct ChooseBoxMenu *sChooseBoxMenu = NULL; -EWRAM_DATA static struct PokemonStorageSystemData *sPSSData = NULL; +EWRAM_DATA static struct PokemonStorageSystemData *sStorage = NULL; EWRAM_DATA static bool8 sInPartyMenu = 0; EWRAM_DATA static u8 sCurrentBoxOption = 0; EWRAM_DATA static u8 sDepositBoxId = 0; @@ -562,7 +562,7 @@ EWRAM_DATA static u8 sMovingMonOrigBoxPos = 0; EWRAM_DATA static bool8 sAutoActionOn = 0; static void CreateMainMenu(u8, s16 *); -static void Cb2_EnterPSS(u8); +static void EnterPokeStorage(u8); static u8 GetCurrentBoxOption(void); static u8 HandleInput(void); static u8 GetSavedCursorPos(void); @@ -587,7 +587,7 @@ static void GiveChosenBagItem(void); static void SetUpHidePartyMenu(void); static void DestroyAllPartyMonIcons(void); static void MoveHeldItemWithPartyMenu(void); -static void LoadPSSMenuGfx(void); +static void LoadPokeStorageMenuGfx(void); static void LoadWaveformSpritePalette(void); static void SaveCursorPos(void); static void sub_80CD36C(void); @@ -635,7 +635,7 @@ static void SetCursorInParty(void); static void InitSummaryScreenData(void); static void TryShowItemAtCursor(void); static void StopFlashingCloseBoxButton(void); -static void FreePSSData(void); +static void FreePokeStorageData(void); static void AddBoxMenu(void); static void CycleBoxTitleColor(void); static void MoveMon(void); @@ -652,7 +652,7 @@ static void SpriteCB_HeldMon(struct Sprite *); static void SpriteCB_BoxMonIconScrollOut(struct Sprite *); static void SpriteCB_Arrow(struct Sprite *); static bool32 WaitForWallpaperGfxLoad(void); -static bool8 InitPSSWindows(void); +static bool8 InitPokeStorageWindows(void); static bool8 ResetReleaseMonSpritePtr(void); static bool8 TryHideReleaseMon(void); static bool8 IsInitBoxActive(void); @@ -677,37 +677,37 @@ static bool8 IsCursorOnBoxTitle(void); static bool8 IsCursorInBox(void); static bool8 IsMonBeingMoved(void); static bool8 TryStorePartyMonInBox(u8); -static void Cb_InitPSS(u8); -static void Cb_PlaceMon(u8); -static void Cb_ChangeScreen(u8); -static void Cb_ShowPSS(u8); -static void Cb_OnBPressed(u8); -static void Cb_HandleBoxOptions(u8); -static void Cb_OnSelectedMon(u8); -static void Cb_OnCloseBoxPressed(u8); -static void Cb_HidePartyPokemon(u8); -static void Cb_DepositMenu(u8); -static void Cb_MoveMon(u8); -static void Cb_GiveMovingItemToMon(u8); -static void Cb_SwitchSelectedItem(u8); -static void Cb_TakeItemForMoving(u8); -static void Cb_WithdrawMon(u8); -static void Cb_ShiftMon(u8); -static void Cb_ShowPartyPokemon(u8); -static void Cb_ShowItemInfo(u8); -static void Cb_GiveItemFromBag(u8); -static void Cb_ItemToBag(u8); -static void Cb_TakeItemForMoving(u8); -static void Cb_ShowMarkMenu(u8); -static void Cb_ShowMonSummary(u8); -static void Cb_ReleaseMon(u8); -static void Cb_ReshowPSS(u8); -static void Cb_MainPSS(u8); -static void Cb_JumpBox(u8); -static void Cb_HandleWallpapers(u8); -static void Cb_NameBox(u8); -static void Cb_PrintCantStoreMail(u8); -static void Cb_HandleMovingMonFromParty(u8); +static void Task_InitPokeStorage(u8); +static void Task_PlaceMon(u8); +static void Task_ChangeScreen(u8); +static void Task_ShowPokeStorage(u8); +static void Task_OnBPressed(u8); +static void Task_HandleBoxOptions(u8); +static void Task_OnSelectedMon(u8); +static void Task_OnCloseBoxPressed(u8); +static void Task_HidePartyPokemon(u8); +static void Task_DepositMenu(u8); +static void Task_MoveMon(u8); +static void Task_GiveMovingItemToMon(u8); +static void Task_SwitchSelectedItem(u8); +static void Task_TakeItemForMoving(u8); +static void Task_WithdrawMon(u8); +static void Task_ShiftMon(u8); +static void Task_ShowPartyPokemon(u8); +static void Task_ShowItemInfo(u8); +static void Task_GiveItemFromBag(u8); +static void Task_ItemToBag(u8); +static void Task_TakeItemForMoving(u8); +static void Task_ShowMarkMenu(u8); +static void Task_ShowMonSummary(u8); +static void Task_ReleaseMon(u8); +static void Task_ReshowPokeStorage(u8); +static void Task_PokeStorageMain(u8); +static void Task_JumpBox(u8); +static void Task_HandleWallpapers(u8); +static void Task_NameBox(u8); +static void Task_PrintCantStoreMail(u8); +static void Task_HandleMovingMonFromParty(u8); static void SetUpScrollToBox(u8); static void StartCursorAnim(u8); static void SetMovingMonPriority(u8); @@ -1604,7 +1604,7 @@ static void Task_PCMainMenu(u8 taskId) if (!gPaletteFade.active) { CleanupOverworldWindowsAndTilemaps(); - Cb2_EnterPSS(task->tInput); + EnterPokeStorage(task->tInput); RemoveWindow(task->tWindowId); DestroyTask(taskId); } @@ -1620,7 +1620,7 @@ void ShowPokemonStorageSystemPC(void) ScriptContext2_Enable(); } -static void FieldCb_ReturnToPcMenu(void) +static void FieldTask_ReturnToPcMenu(void) { u8 taskId; MainCallback vblankCb = gMain.vblankCallback; @@ -1653,10 +1653,10 @@ static void CreateMainMenu(u8 whichMenu, s16 *windowIdPtr) *windowIdPtr = windowId; } -static void Cb2_ExitPSS(void) +static void CB2_ExitPokeStorage(void) { sPreviousBoxOption = GetCurrentBoxOption(); - gFieldCallback = FieldCb_ReturnToPcMenu; + gFieldCallback = FieldTask_ReturnToPcMenu; SetMainCallback2(CB2_ReturnToField); } @@ -1919,16 +1919,16 @@ static void SpriteCB_ChooseBoxArrow(struct Sprite *sprite) } } -static void VblankCb_PSS(void) +static void VBlankCB_PokeStorage(void) { LoadOam(); ProcessSpriteCopyRequests(); UnkUtil_Run(); TransferPlttBuffer(); - SetGpuReg(REG_OFFSET_BG2HOFS, sPSSData->bg2_X); + SetGpuReg(REG_OFFSET_BG2HOFS, sStorage->bg2_X); } -static void Cb2_PSS(void) +static void CB2_PokeStorage(void) { RunTasks(); DoScheduledBgTilemapCopiesToVram(); @@ -1938,42 +1938,42 @@ static void Cb2_PSS(void) BuildOamBuffer(); } -static void Cb2_EnterPSS(u8 boxOption) +static void EnterPokeStorage(u8 boxOption) { ResetTasks(); sCurrentBoxOption = boxOption; - sPSSData = Alloc(sizeof(*sPSSData)); - if (sPSSData == NULL) + sStorage = Alloc(sizeof(*sStorage)); + if (sStorage == NULL) { - SetMainCallback2(Cb2_ExitPSS); + SetMainCallback2(CB2_ExitPokeStorage); } else { - sPSSData->boxOption = boxOption; - sPSSData->isReshowingPSS = FALSE; + sStorage->boxOption = boxOption; + sStorage->isReopening = FALSE; sMovingItemId = ITEM_NONE; - sPSSData->state = 0; - sPSSData->taskId = CreateTask(Cb_InitPSS, 3); + sStorage->state = 0; + sStorage->taskId = CreateTask(Task_InitPokeStorage, 3); sLastUsedBox = StorageGetCurrentBox(); - SetMainCallback2(Cb2_PSS); + SetMainCallback2(CB2_PokeStorage); } } -static void Cb2_ReturnToPSS(void) +static void CB2_ReturnToPokeStorage(void) { ResetTasks(); - sPSSData = Alloc(sizeof(*sPSSData)); - if (sPSSData == NULL) + sStorage = Alloc(sizeof(*sStorage)); + if (sStorage == NULL) { - SetMainCallback2(Cb2_ExitPSS); + SetMainCallback2(CB2_ExitPokeStorage); } else { - sPSSData->boxOption = sCurrentBoxOption; - sPSSData->isReshowingPSS = TRUE; - sPSSData->state = 0; - sPSSData->taskId = CreateTask(Cb_InitPSS, 3); - SetMainCallback2(Cb2_PSS); + sStorage->boxOption = sCurrentBoxOption; + sStorage->isReopening = TRUE; + sStorage->state = 0; + sStorage->taskId = CreateTask(Task_InitPokeStorage, 3); + SetMainCallback2(CB2_PokeStorage); } } @@ -1997,25 +1997,25 @@ static void sub_80C7E98(void) FreeAllSpritePalettes(); ClearDma3Requests(); gReservedSpriteTileCount = 0x280; - UnkUtil_Init(&sPSSData->unkUtil, sPSSData->unkUtilData, ARRAY_COUNT(sPSSData->unkUtilData)); + UnkUtil_Init(&sStorage->unkUtil, sStorage->unkUtilData, ARRAY_COUNT(sStorage->unkUtilData)); gKeyRepeatStartDelay = 20; ClearScheduledBgCopiesToVram(); TilemapUtil_Init(TILEMAPID_COUNT); TilemapUtil_SetMap(TILEMAPID_PKMN_DATA, 1, sPkmnData_Tilemap, 8, 4); TilemapUtil_SetPos(TILEMAPID_PKMN_DATA, 1, 0); - sPSSData->closeBoxFlashing = FALSE; + sStorage->closeBoxFlashing = FALSE; } static void sub_80C7F1C(void) { ClearSavedCursorPos(); - sInPartyMenu = (sPSSData->boxOption == OPTION_DEPOSIT); + sInPartyMenu = (sStorage->boxOption == OPTION_DEPOSIT); sDepositBoxId = 0; } static void SetMonIconTransparency(void) { - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(7, 11)); @@ -2023,21 +2023,21 @@ static void SetMonIconTransparency(void) SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_1D_MAP); } -static void SetPSSCallback(TaskFunc newFunc) +static void SetPokeStorageTask(TaskFunc newFunc) { - gTasks[sPSSData->taskId].func = newFunc; - sPSSData->state = 0; + gTasks[sStorage->taskId].func = newFunc; + sStorage->state = 0; } -static void Cb_InitPSS(u8 taskId) +static void Task_InitPokeStorage(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: SetVBlankCallback(NULL); SetGpuReg(REG_OFFSET_DISPCNT, 0); sub_80C7E98(); - if (sPSSData->isReshowingPSS) + if (sStorage->isReopening) { switch (sWhichToReshow) { @@ -2055,13 +2055,13 @@ static void Cb_InitPSS(u8 taskId) break; } } - LoadPSSMenuGfx(); + LoadPokeStorageMenuGfx(); LoadWaveformSpritePalette(); break; case 1: - if (!InitPSSWindows()) + if (!InitPokeStorageWindows()) { - SetPSSCallback(Cb_ChangeScreen); + SetPokeStorageTask(Task_ChangeScreen); return; } break; @@ -2073,12 +2073,12 @@ static void Cb_InitPSS(u8 taskId) break; case 3: ResetAllBgCoords(); - if (!sPSSData->isReshowingPSS) + if (!sStorage->isReopening) sub_80C7F1C(); break; case 4: InitMonIconFields(); - if (!sPSSData->isReshowingPSS) + if (!sStorage->isReopening) sub_80CD36C(); else sub_80CD3EC(); @@ -2086,7 +2086,7 @@ static void Cb_InitPSS(u8 taskId) case 5: if (!MultiMove_Init()) { - SetPSSCallback(Cb_ChangeScreen); + SetPokeStorageTask(Task_ChangeScreen); return; } else @@ -2108,11 +2108,11 @@ static void Cb_InitPSS(u8 taskId) if (IsInitBoxActive()) return; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - sPSSData->markMenu.baseTileTag = GFXTAG_MARKING_MENU; - sPSSData->markMenu.basePaletteTag = PALTAG_MARKING_MENU; - InitMonMarkingsMenu(&sPSSData->markMenu); + sStorage->markMenu.baseTileTag = GFXTAG_MARKING_MENU; + sStorage->markMenu.basePaletteTag = PALTAG_MARKING_MENU; + InitMonMarkingsMenu(&sStorage->markMenu); BufferMonMarkingsMenuTiles(); } else @@ -2123,48 +2123,48 @@ static void Cb_InitPSS(u8 taskId) break; case 10: SetMonIconTransparency(); - if (!sPSSData->isReshowingPSS) + if (!sStorage->isReopening) { BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); - SetPSSCallback(Cb_ShowPSS); + SetPokeStorageTask(Task_ShowPokeStorage); } else { BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); - SetPSSCallback(Cb_ReshowPSS); + SetPokeStorageTask(Task_ReshowPokeStorage); } - SetVBlankCallback(VblankCb_PSS); + SetVBlankCallback(VBlankCB_PokeStorage); return; default: return; } - sPSSData->state++; + sStorage->state++; } -static void Cb_ShowPSS(u8 taskId) +static void Task_ShowPokeStorage(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PlaySE(SE_PC_LOGIN); ComputerScreenOpenEffect(20, 0, 1); - sPSSData->state++; + sStorage->state++; break; case 1: if (!IsComputerScreenOpenEffectActive()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_ReshowPSS(u8 taskId) +static void Task_ReshowPokeStorage(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, RGB_BLACK); - sPSSData->state++; + sStorage->state++; break; case 1: if (!UpdatePaletteFade()) @@ -2172,11 +2172,11 @@ static void Cb_ReshowPSS(u8 taskId) if (sWhichToReshow == SCREEN_CHANGE_ITEM_FROM_BAG - 1 && gSpecialVar_ItemId != ITEM_NONE) { PrintMessage(MSG_ITEM_IS_HELD); - sPSSData->state++; + sStorage->state++; } else { - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } } break; @@ -2184,17 +2184,17 @@ static void Cb_ReshowPSS(u8 taskId) if (!IsDma3ManagerBusyWithBgCopy() && JOY_NEW(A_BUTTON | B_BUTTON)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } break; case 3: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -// States for the outer switch in Cb_MainPSS +// States for the outer switch in Task_PokeStorageMain enum { MSTATE_HANDLE_INPUT, MSTATE_MOVE_CURSOR, @@ -2210,174 +2210,174 @@ enum { MSTATE_WAIT_ITEM_ANIM, }; -static void Cb_MainPSS(u8 taskId) +static void Task_PokeStorageMain(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case MSTATE_HANDLE_INPUT: switch (HandleInput()) { case INPUT_MOVE_CURSOR: PlaySE(SE_SELECT); - sPSSData->state = MSTATE_MOVE_CURSOR; + sStorage->state = MSTATE_MOVE_CURSOR; break; case INPUT_SHOW_PARTY: - if (sPSSData->boxOption != OPTION_MOVE_MONS && sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_MONS && sStorage->boxOption != OPTION_MOVE_ITEMS) { PrintMessage(MSG_WHICH_ONE_WILL_TAKE); - sPSSData->state = MSTATE_WAIT_MSG; + sStorage->state = MSTATE_WAIT_MSG; } else { ClearSavedCursorPos(); - SetPSSCallback(Cb_ShowPartyPokemon); + SetPokeStorageTask(Task_ShowPartyPokemon); } break; case INPUT_HIDE_PARTY: - if (sPSSData->boxOption == OPTION_MOVE_MONS) + if (sStorage->boxOption == OPTION_MOVE_MONS) { - if (IsMonBeingMoved() && ItemIsMail(sPSSData->displayMonItemId)) - sPSSData->state = MSTATE_ERROR_HAS_MAIL; + if (IsMonBeingMoved() && ItemIsMail(sStorage->displayMonItemId)) + sStorage->state = MSTATE_ERROR_HAS_MAIL; else - SetPSSCallback(Cb_HidePartyPokemon); + SetPokeStorageTask(Task_HidePartyPokemon); } - else if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + else if (sStorage->boxOption == OPTION_MOVE_ITEMS) { - SetPSSCallback(Cb_HidePartyPokemon); + SetPokeStorageTask(Task_HidePartyPokemon); } break; case INPUT_CLOSE_BOX: - SetPSSCallback(Cb_OnCloseBoxPressed); + SetPokeStorageTask(Task_OnCloseBoxPressed); break; case INPUT_PRESSED_B: - SetPSSCallback(Cb_OnBPressed); + SetPokeStorageTask(Task_OnBPressed); break; case INPUT_BOX_OPTIONS: PlaySE(SE_SELECT); - SetPSSCallback(Cb_HandleBoxOptions); + SetPokeStorageTask(Task_HandleBoxOptions); break; case INPUT_IN_MENU: - SetPSSCallback(Cb_OnSelectedMon); + SetPokeStorageTask(Task_OnSelectedMon); break; case INPUT_SCROLL_RIGHT: PlaySE(SE_SELECT); - sPSSData->newCurrBoxId = StorageGetCurrentBox() + 1; - if (sPSSData->newCurrBoxId >= TOTAL_BOXES_COUNT) - sPSSData->newCurrBoxId = 0; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + sStorage->newCurrBoxId = StorageGetCurrentBox() + 1; + if (sStorage->newCurrBoxId >= TOTAL_BOXES_COUNT) + sStorage->newCurrBoxId = 0; + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = MSTATE_SCROLL_BOX; + SetUpScrollToBox(sStorage->newCurrBoxId); + sStorage->state = MSTATE_SCROLL_BOX; } else { TryHideItemAtCursor(); - sPSSData->state = MSTATE_SCROLL_BOX_ITEM; + sStorage->state = MSTATE_SCROLL_BOX_ITEM; } break; case INPUT_SCROLL_LEFT: PlaySE(SE_SELECT); - sPSSData->newCurrBoxId = StorageGetCurrentBox() - 1; - if (sPSSData->newCurrBoxId < 0) - sPSSData->newCurrBoxId = TOTAL_BOXES_COUNT - 1; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + sStorage->newCurrBoxId = StorageGetCurrentBox() - 1; + if (sStorage->newCurrBoxId < 0) + sStorage->newCurrBoxId = TOTAL_BOXES_COUNT - 1; + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = MSTATE_SCROLL_BOX; + SetUpScrollToBox(sStorage->newCurrBoxId); + sStorage->state = MSTATE_SCROLL_BOX; } else { TryHideItemAtCursor(); - sPSSData->state = MSTATE_SCROLL_BOX_ITEM; + sStorage->state = MSTATE_SCROLL_BOX_ITEM; } break; case INPUT_DEPOSIT: if (!IsRemovingLastPartyMon()) { - if (ItemIsMail(sPSSData->displayMonItemId)) + if (ItemIsMail(sStorage->displayMonItemId)) { - sPSSData->state = MSTATE_ERROR_HAS_MAIL; + sStorage->state = MSTATE_ERROR_HAS_MAIL; } else { PlaySE(SE_SELECT); - SetPSSCallback(Cb_DepositMenu); + SetPokeStorageTask(Task_DepositMenu); } } else { - sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; + sStorage->state = MSTATE_ERROR_LAST_PARTY_MON; } break; case INPUT_MOVE_MON: if (IsRemovingLastPartyMon()) { - sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; + sStorage->state = MSTATE_ERROR_LAST_PARTY_MON; } else { PlaySE(SE_SELECT); - SetPSSCallback(Cb_MoveMon); + SetPokeStorageTask(Task_MoveMon); } break; case INPUT_SHIFT_MON: if (!CanShiftMon()) { - sPSSData->state = MSTATE_ERROR_LAST_PARTY_MON; + sStorage->state = MSTATE_ERROR_LAST_PARTY_MON; } else { PlaySE(SE_SELECT); - SetPSSCallback(Cb_ShiftMon); + SetPokeStorageTask(Task_ShiftMon); } break; case INPUT_WITHDRAW: PlaySE(SE_SELECT); - SetPSSCallback(Cb_WithdrawMon); + SetPokeStorageTask(Task_WithdrawMon); break; case INPUT_PLACE_MON: PlaySE(SE_SELECT); - SetPSSCallback(Cb_PlaceMon); + SetPokeStorageTask(Task_PlaceMon); break; case INPUT_TAKE_ITEM: PlaySE(SE_SELECT); - SetPSSCallback(Cb_TakeItemForMoving); + SetPokeStorageTask(Task_TakeItemForMoving); break; case INPUT_GIVE_ITEM: PlaySE(SE_SELECT); - SetPSSCallback(Cb_GiveMovingItemToMon); + SetPokeStorageTask(Task_GiveMovingItemToMon); break; case INPUT_SWITCH_ITEMS: PlaySE(SE_SELECT); - SetPSSCallback(Cb_SwitchSelectedItem); + SetPokeStorageTask(Task_SwitchSelectedItem); break; case INPUT_MULTIMOVE_START: PlaySE(SE_SELECT); MultiMove_SetFunction(MULTIMOVE_START); - sPSSData->state = MSTATE_MULTIMOVE_RUN; + sStorage->state = MSTATE_MULTIMOVE_RUN; break; case INPUT_MULTIMOVE_SINGLE: MultiMove_SetFunction(MULTIMOVE_CANCEL); - sPSSData->state = MSTATE_MULTIMOVE_RUN_CANCEL; + sStorage->state = MSTATE_MULTIMOVE_RUN_CANCEL; break; case INPUT_MULTIMOVE_CHANGE_SELECTION: PlaySE(SE_SELECT); MultiMove_SetFunction(MULTIMOVE_CHANGE_SELECTION); - sPSSData->state = MSTATE_MULTIMOVE_RUN_MOVED; + sStorage->state = MSTATE_MULTIMOVE_RUN_MOVED; break; case INPUT_MULTIMOVE_GRAB_SELECTION: MultiMove_SetFunction(MULTIMOVE_GRAB_SELECTION); - sPSSData->state = MSTATE_MULTIMOVE_RUN; + sStorage->state = MSTATE_MULTIMOVE_RUN; break; case INPUT_MULTIMOVE_MOVE_MONS: PlaySE(SE_SELECT); MultiMove_SetFunction(MULTIMOVE_MOVE_MONS); - sPSSData->state = MSTATE_MULTIMOVE_RUN_MOVED; + sStorage->state = MSTATE_MULTIMOVE_RUN_MOVED; break; case INPUT_MULTIMOVE_PLACE_MONS: PlaySE(SE_SELECT); MultiMove_SetFunction(MULTIMOVE_PLACE_MONS); - sPSSData->state = MSTATE_MULTIMOVE_RUN; + sStorage->state = MSTATE_MULTIMOVE_RUN; break; case INPUT_MULTIMOVE_UNABLE: // When selecting/moving multiple Pokémon the @@ -2394,29 +2394,29 @@ static void Cb_MainPSS(u8 taskId) else StopFlashingCloseBoxButton(); - if (sPSSData->setMosaic) + if (sStorage->setMosaic) StartDisplayMonMosaicEffect(); - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; } break; case MSTATE_SCROLL_BOX: if (!ScrollToBox()) { - SetCurrentBox(sPSSData->newCurrBoxId); + SetCurrentBox(sStorage->newCurrBoxId); if (!sInPartyMenu && !IsMonBeingMoved()) { RefreshDisplayMon(); StartDisplayMonMosaicEffect(); } - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { TryShowItemAtCursor(); - sPSSData->state = MSTATE_WAIT_ITEM_ANIM; + sStorage->state = MSTATE_WAIT_ITEM_ANIM; } else { - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; } } break; @@ -2424,29 +2424,29 @@ static void Cb_MainPSS(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; } break; case MSTATE_ERROR_LAST_PARTY_MON: PlaySE(SE_FAILURE); PrintMessage(MSG_LAST_POKE); - sPSSData->state = MSTATE_WAIT_ERROR_MSG; + sStorage->state = MSTATE_WAIT_ERROR_MSG; break; case MSTATE_ERROR_HAS_MAIL: PlaySE(SE_FAILURE); PrintMessage(MSG_PLEASE_REMOVE_MAIL); - sPSSData->state = MSTATE_WAIT_ERROR_MSG; + sStorage->state = MSTATE_WAIT_ERROR_MSG; break; case MSTATE_WAIT_ERROR_MSG: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case MSTATE_MULTIMOVE_RUN: if (!MultiMove_RunFunction()) - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; break; case MSTATE_MULTIMOVE_RUN_CANCEL: // Began a multiple Pokémon selection but @@ -2454,94 +2454,94 @@ static void Cb_MainPSS(u8 taskId) // Wait for multi move to cancel, then // do a normal move. if (!MultiMove_RunFunction()) - SetPSSCallback(Cb_MoveMon); + SetPokeStorageTask(Task_MoveMon); break; case MSTATE_MULTIMOVE_RUN_MOVED: if (!MultiMove_RunFunction()) { - if (sPSSData->setMosaic) + if (sStorage->setMosaic) StartDisplayMonMosaicEffect(); - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; } break; case MSTATE_SCROLL_BOX_ITEM: if (!IsItemIconAnimActive()) { - SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state = MSTATE_SCROLL_BOX; + SetUpScrollToBox(sStorage->newCurrBoxId); + sStorage->state = MSTATE_SCROLL_BOX; } break; case MSTATE_WAIT_ITEM_ANIM: if (!IsItemIconAnimActive()) - sPSSData->state = MSTATE_HANDLE_INPUT; + sStorage->state = MSTATE_HANDLE_INPUT; break; } } -static void Cb_ShowPartyPokemon(u8 taskId) +static void Task_ShowPartyPokemon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: SetUpDoShowPartyMenu(); - sPSSData->state++; + sStorage->state++; break; case 1: if (!DoShowPartyMenu()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_HidePartyPokemon(u8 taskId) +static void Task_HidePartyPokemon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PlaySE(SE_SELECT); SetUpHidePartyMenu(); - sPSSData->state++; + sStorage->state++; break; case 1: if (!HidePartyMenu()) { SetCursorBoxPosition(GetSavedCursorPos()); - sPSSData->state++; + sStorage->state++; } break; case 2: if (!UpdateCursorPos()) { - if (sPSSData->setMosaic) + if (sStorage->setMosaic) StartDisplayMonMosaicEffect(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_OnSelectedMon(u8 taskId) +static void Task_OnSelectedMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: if (!IsDisplayMosaicActive()) { PlaySE(SE_SELECT); - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) PrintMessage(MSG_IS_SELECTED); - else if (IsMovingItem() || sPSSData->displayMonItemId != ITEM_NONE) + else if (IsMovingItem() || sStorage->displayMonItemId != ITEM_NONE) PrintMessage(MSG_IS_SELECTED2); else PrintMessage(MSG_GIVE_TO_MON); AddMenu(); - sPSSData->state = 1; + sStorage->state = 1; } break; case 1: if (!IsMenuLoading()) - sPSSData->state = 2; + sStorage->state = 2; break; case 2: switch (HandleMenuInput()) @@ -2549,214 +2549,214 @@ static void Cb_OnSelectedMon(u8 taskId) case MENU_B_PRESSED: case MENU_CANCEL: ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case MENU_MOVE: if (IsRemovingLastPartyMon()) { - sPSSData->state = 3; + sStorage->state = 3; } else { PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_MoveMon); + SetPokeStorageTask(Task_MoveMon); } break; case MENU_PLACE: PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_PlaceMon); + SetPokeStorageTask(Task_PlaceMon); break; case MENU_SHIFT: if (!CanShiftMon()) { - sPSSData->state = 3; + sStorage->state = 3; } else { PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_ShiftMon); + SetPokeStorageTask(Task_ShiftMon); } break; case MENU_WITHDRAW: PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_WithdrawMon); + SetPokeStorageTask(Task_WithdrawMon); break; case MENU_STORE: if (IsRemovingLastPartyMon()) { - sPSSData->state = 3; + sStorage->state = 3; } - else if (ItemIsMail(sPSSData->displayMonItemId)) + else if (ItemIsMail(sStorage->displayMonItemId)) { - sPSSData->state = 4; + sStorage->state = 4; } else { PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_DepositMenu); + SetPokeStorageTask(Task_DepositMenu); } break; case MENU_RELEASE: if (IsRemovingLastPartyMon()) { - sPSSData->state = 3; + sStorage->state = 3; } - else if (sPSSData->displayMonIsEgg) + else if (sStorage->displayMonIsEgg) { - sPSSData->state = 5; // Cannot release an Egg. + sStorage->state = 5; // Cannot release an Egg. } - else if (ItemIsMail(sPSSData->displayMonItemId)) + else if (ItemIsMail(sStorage->displayMonItemId)) { - sPSSData->state = 4; + sStorage->state = 4; } else { PlaySE(SE_SELECT); - SetPSSCallback(Cb_ReleaseMon); + SetPokeStorageTask(Task_ReleaseMon); } break; case MENU_SUMMARY: PlaySE(SE_SELECT); - SetPSSCallback(Cb_ShowMonSummary); + SetPokeStorageTask(Task_ShowMonSummary); break; case MENU_MARK: PlaySE(SE_SELECT); - SetPSSCallback(Cb_ShowMarkMenu); + SetPokeStorageTask(Task_ShowMarkMenu); break; case MENU_TAKE: PlaySE(SE_SELECT); - SetPSSCallback(Cb_TakeItemForMoving); + SetPokeStorageTask(Task_TakeItemForMoving); break; case MENU_GIVE: PlaySE(SE_SELECT); - SetPSSCallback(Cb_GiveMovingItemToMon); + SetPokeStorageTask(Task_GiveMovingItemToMon); break; case MENU_BAG: - SetPSSCallback(Cb_ItemToBag); + SetPokeStorageTask(Task_ItemToBag); break; case MENU_SWITCH: PlaySE(SE_SELECT); - SetPSSCallback(Cb_SwitchSelectedItem); + SetPokeStorageTask(Task_SwitchSelectedItem); break; case MENU_GIVE_2: PlaySE(SE_SELECT); - SetPSSCallback(Cb_GiveItemFromBag); + SetPokeStorageTask(Task_GiveItemFromBag); break; case MENU_INFO: - SetPSSCallback(Cb_ShowItemInfo); + SetPokeStorageTask(Task_ShowItemInfo); break; } break; case 3: PlaySE(SE_FAILURE); PrintMessage(MSG_LAST_POKE); - sPSSData->state = 6; + sStorage->state = 6; break; case 5: PlaySE(SE_FAILURE); PrintMessage(MSG_CANT_RELEASE_EGG); - sPSSData->state = 6; + sStorage->state = 6; break; case 4: PlaySE(SE_FAILURE); PrintMessage(MSG_PLEASE_REMOVE_MAIL); - sPSSData->state = 6; + sStorage->state = 6; break; case 6: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_MoveMon(u8 taskId) +static void Task_MoveMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: InitMonPlaceChange(CHANGE_GRAB); - sPSSData->state++; + sStorage->state++; break; case 1: if (!DoMonPlaceChange()) { if (sInPartyMenu) - SetPSSCallback(Cb_HandleMovingMonFromParty); + SetPokeStorageTask(Task_HandleMovingMonFromParty); else - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_PlaceMon(u8 taskId) +static void Task_PlaceMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: InitMonPlaceChange(CHANGE_PLACE); - sPSSData->state++; + sStorage->state++; break; case 1: if (!DoMonPlaceChange()) { if (sInPartyMenu) - SetPSSCallback(Cb_HandleMovingMonFromParty); + SetPokeStorageTask(Task_HandleMovingMonFromParty); else - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_ShiftMon(u8 taskId) +static void Task_ShiftMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: InitMonPlaceChange(CHANGE_SHIFT); - sPSSData->state++; + sStorage->state++; break; case 1: if (!DoMonPlaceChange()) { StartDisplayMonMosaicEffect(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_WithdrawMon(u8 taskId) +static void Task_WithdrawMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: if (CalculatePlayerPartyCount() == PARTY_SIZE) { PrintMessage(MSG_PARTY_FULL); - sPSSData->state = 1; + sStorage->state = 1; } else { SaveCursorPos(); InitMonPlaceChange(CHANGE_GRAB); - sPSSData->state = 2; + sStorage->state = 2; } break; case 1: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 2: @@ -2764,40 +2764,40 @@ static void Cb_WithdrawMon(u8 taskId) { SetMovingMonPriority(1); SetUpDoShowPartyMenu(); - sPSSData->state++; + sStorage->state++; } break; case 3: if (!DoShowPartyMenu()) { InitMonPlaceChange(CHANGE_PLACE); - sPSSData->state++; + sStorage->state++; } break; case 4: if (!DoMonPlaceChange()) { UpdatePartySlotColors(); - sPSSData->state++; + sStorage->state++; } break; case 5: - SetPSSCallback(Cb_HidePartyPokemon); + SetPokeStorageTask(Task_HidePartyPokemon); break; } } -static void Cb_DepositMenu(u8 taskId) +static void Task_DepositMenu(u8 taskId) { u8 boxId; - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); - LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); + LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); CreateChooseBoxMenuSprites(sDepositBoxId); - sPSSData->state++; + sStorage->state++; break; case 1: boxId = HandleChooseBoxMenuInput(); @@ -2809,7 +2809,7 @@ static void Cb_DepositMenu(u8 taskId) ClearBottomWindow(); DestroyChooseBoxMenuSprites(); FreeChooseBoxMenu(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; default: if (TryStorePartyMonInBox(boxId)) @@ -2818,12 +2818,12 @@ static void Cb_DepositMenu(u8 taskId) ClearBottomWindow(); DestroyChooseBoxMenuSprites(); FreeChooseBoxMenu(); - sPSSData->state = 2; + sStorage->state = 2; } else { PrintMessage(MSG_BOX_IS_FULL); - sPSSData->state = 4; + sStorage->state = 4; } break; } @@ -2831,7 +2831,7 @@ static void Cb_DepositMenu(u8 taskId) case 2: CompactPartySlots(); CompactPartySprites(); - sPSSData->state++; + sStorage->state++; break; case 3: if (GetNumPartySpritesCompacting() == 0) @@ -2839,27 +2839,27 @@ static void Cb_DepositMenu(u8 taskId) sub_80CE22C(); StartDisplayMonMosaicEffect(); UpdatePartySlotColors(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 4: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); - sPSSData->state = 1; + sStorage->state = 1; } break; } } -static void Cb_ReleaseMon(u8 taskId) +static void Task_ReleaseMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_RELEASE_POKE); ShowYesNoWindow(1); - sPSSData->state++; + sStorage->state++; // fallthrough case 1: switch (Menu_ProcessInputNoWrapClearOnChoose()) @@ -2867,13 +2867,13 @@ static void Cb_ReleaseMon(u8 taskId) case MENU_B_PRESSED: case 1: // No ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 0: // Yes ClearBottomWindow(); InitCanReleaseMonVars(); InitReleaseMon(); - sPSSData->state++; + sStorage->state++; break; } break; @@ -2886,12 +2886,12 @@ static void Cb_ReleaseMon(u8 taskId) s8 canRelease = RunCanReleaseMon(); if (canRelease == TRUE) { - sPSSData->state++; + sStorage->state++; break; } else if (!canRelease) { - sPSSData->state = 8; + sStorage->state = 8; break; } } @@ -2901,13 +2901,13 @@ static void Cb_ReleaseMon(u8 taskId) ReleaseMon(); RefreshDisplayMonData(); PrintMessage(MSG_WAS_RELEASED); - sPSSData->state++; + sStorage->state++; break; case 4: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { PrintMessage(MSG_BYE_BYE); - sPSSData->state++; + sStorage->state++; } break; case 5: @@ -2918,11 +2918,11 @@ static void Cb_ReleaseMon(u8 taskId) { CompactPartySlots(); CompactPartySprites(); - sPSSData->state++; + sStorage->state++; } else { - sPSSData->state = 7; + sStorage->state = 7; } } break; @@ -2932,22 +2932,22 @@ static void Cb_ReleaseMon(u8 taskId) RefreshDisplayMon(); StartDisplayMonMosaicEffect(); UpdatePartySlotColors(); - sPSSData->state++; + sStorage->state++; } break; case 7: - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 8: // Start "can't release" sequence PrintMessage(MSG_WAS_RELEASED); - sPSSData->state++; + sStorage->state++; break; case 9: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { PrintMessage(MSG_SURPRISE); - sPSSData->state++; + sStorage->state++; } break; case 10: @@ -2955,7 +2955,7 @@ static void Cb_ReleaseMon(u8 taskId) { ClearBottomWindow(); ReshowReleaseMon(); - sPSSData->state++; + sStorage->state++; } break; case 11: @@ -2963,68 +2963,68 @@ static void Cb_ReleaseMon(u8 taskId) { TrySetCursorFistAnim(); PrintMessage(MSG_CAME_BACK); - sPSSData->state++; + sStorage->state++; } break; case 12: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { PrintMessage(MSG_WORRIED); - sPSSData->state++; + sStorage->state++; } break; case 13: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_ShowMarkMenu(u8 taskId) +static void Task_ShowMarkMenu(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_MARK_POKE); - sPSSData->markMenu.markings = sPSSData->displayMonMarkings; - OpenMonMarkingsMenu(sPSSData->displayMonMarkings, 0xb0, 0x10); - sPSSData->state++; + sStorage->markMenu.markings = sStorage->displayMonMarkings; + OpenMonMarkingsMenu(sStorage->displayMonMarkings, 0xb0, 0x10); + sStorage->state++; break; case 1: if (!HandleMonMarkingsMenuInput()) { FreeMonMarkingsMenu(); ClearBottomWindow(); - SetMonMarkings(sPSSData->markMenu.markings); + SetMonMarkings(sStorage->markMenu.markings); RefreshDisplayMonData(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_TakeItemForMoving(u8 taskId) +static void Task_TakeItemForMoving(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: - if (!ItemIsMail(sPSSData->displayMonItemId)) + if (!ItemIsMail(sStorage->displayMonItemId)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } else { - SetPSSCallback(Cb_PrintCantStoreMail); + SetPokeStorageTask(Task_PrintCantStoreMail); } break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); TakeItemFromMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); - sPSSData->state++; + sStorage->state++; break; case 2: if (!IsItemIconAnimActive()) @@ -3033,28 +3033,28 @@ static void Cb_TakeItemForMoving(u8 taskId) ClearBottomWindow(); RefreshDisplayMon(); PrintDisplayMonInfo(); - sPSSData->state++; + sStorage->state++; } break; case 3: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_GiveMovingItemToMon(u8 taskId) +static void Task_GiveMovingItemToMon(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); GiveItemToMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); - sPSSData->state++; + sStorage->state++; break; case 2: if (!IsItemIconAnimActive()) @@ -3063,46 +3063,46 @@ static void Cb_GiveMovingItemToMon(u8 taskId) RefreshDisplayMon(); PrintDisplayMonInfo(); PrintMessage(MSG_ITEM_IS_HELD); - sPSSData->state++; + sStorage->state++; } break; case 3: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } break; case 4: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_ItemToBag(u8 taskId) +static void Task_ItemToBag(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: - if (!AddBagItem(sPSSData->displayMonItemId, 1)) + if (!AddBagItem(sStorage->displayMonItemId, 1)) { PlaySE(SE_FAILURE); PrintMessage(MSG_BAG_FULL); - sPSSData->state = 3; + sStorage->state = 3; } else { PlaySE(SE_SELECT); MoveItemFromMonToBag(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); - sPSSData->state = 1; + sStorage->state = 1; } break; case 1: if (!IsItemIconAnimActive()) { PrintMessage(MSG_PLACED_IN_BAG); - sPSSData->state = 2; + sStorage->state = 2; } break; case 2: @@ -3111,42 +3111,42 @@ static void Cb_ItemToBag(u8 taskId) ClearBottomWindow(); RefreshDisplayMon(); PrintDisplayMonInfo(); - sPSSData->state = 4; + sStorage->state = 4; } break; case 4: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 3: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_SwitchSelectedItem(u8 taskId) +static void Task_SwitchSelectedItem(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: - if (!ItemIsMail(sPSSData->displayMonItemId)) + if (!ItemIsMail(sStorage->displayMonItemId)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } else { - SetPSSCallback(Cb_PrintCantStoreMail); + SetPokeStorageTask(Task_PrintCantStoreMail); } break; case 1: StartCursorAnim(CURSOR_ANIM_OPEN); SwapItemsWithMon(sInPartyMenu ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetCursorPosition()); - sPSSData->state++; + sStorage->state++; break; case 2: if (!IsItemIconAnimActive()) @@ -3155,30 +3155,30 @@ static void Cb_SwitchSelectedItem(u8 taskId) RefreshDisplayMon(); PrintDisplayMonInfo(); PrintMessage(MSG_CHANGED_TO_ITEM); - sPSSData->state++; + sStorage->state++; } break; case 3: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } break; case 4: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_ShowItemInfo(u8 taskId) +static void Task_ShowItemInfo(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; break; case 1: if (!IsDma3ManagerBusyWithBgCopy()) @@ -3186,44 +3186,44 @@ static void Cb_ShowItemInfo(u8 taskId) PlaySE(SE_WIN_OPEN); PrintItemDescription(); InitItemInfoWindow(); - sPSSData->state++; + sStorage->state++; } break; case 2: if (!UpdateItemInfoWindowSlideIn()) - sPSSData->state++; + sStorage->state++; break; case 3: if (!IsDma3ManagerBusyWithBgCopy()) - sPSSData->state++; + sStorage->state++; break; case 4: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { PlaySE(SE_WIN_OPEN); - sPSSData->state++; + sStorage->state++; } break; case 5: if (!UpdateItemInfoWindowSlideOut()) - sPSSData->state++; + sStorage->state++; break; case 6: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_CloseBoxWhileHoldingItem(u8 taskId) +static void Task_CloseBoxWhileHoldingItem(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PlaySE(SE_SELECT); PrintMessage(MSG_PUT_IN_BAG); ShowYesNoWindow(0); - sPSSData->state = 1; + sStorage->state = 1; break; case 1: switch (Menu_ProcessInputNoWrapClearOnChoose()) @@ -3231,18 +3231,18 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) case MENU_B_PRESSED: case 1: // No ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 0:// Yes - if (AddBagItem(sPSSData->movingItemId, 1) == TRUE) + if (AddBagItem(sStorage->movingItemId, 1) == TRUE) { ClearBottomWindow(); - sPSSData->state = 3; + sStorage->state = 3; } else { PrintMessage(MSG_BAG_FULL); - sPSSData->state = 2; + sStorage->state = 2; } break; } @@ -3251,86 +3251,86 @@ static void Cb_CloseBoxWhileHoldingItem(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state = 5; + sStorage->state = 5; } break; case 3: MoveItemFromCursorToBag(); - sPSSData->state = 4; + sStorage->state = 4; break; case 4: if (!IsItemIconAnimActive()) { StartCursorAnim(CURSOR_ANIM_BOUNCE); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 5: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } -static void Cb_HandleMovingMonFromParty(u8 taskId) +static void Task_HandleMovingMonFromParty(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: CompactPartySlots(); CompactPartySprites(); - sPSSData->state++; + sStorage->state++; break; case 1: if (GetNumPartySpritesCompacting() == 0) { UpdatePartySlotColors(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_PrintCantStoreMail(u8 taskId) +static void Task_PrintCantStoreMail(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_CANT_STORE_MAIL); - sPSSData->state++; + sStorage->state++; break; case 1: if (!IsDma3ManagerBusyWithBgCopy()) - sPSSData->state++; + sStorage->state++; break; case 2: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; } break; case 3: if (!IsDma3ManagerBusyWithBgCopy()) - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; } } // Handle options menu that shows when the box title bar is selected -static void Cb_HandleBoxOptions(u8 taskId) +static void Task_HandleBoxOptions(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_WHAT_YOU_DO); AddMenu(); - sPSSData->state++; + sStorage->state++; break; case 1: if (IsMenuLoading()) return; - sPSSData->state++; + sStorage->state++; case 2: switch (HandleMenuInput()) { @@ -3338,48 +3338,48 @@ static void Cb_HandleBoxOptions(u8 taskId) case MENU_CANCEL: AnimateBoxScrollArrows(TRUE); ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case MENU_NAME: PlaySE(SE_SELECT); - SetPSSCallback(Cb_NameBox); + SetPokeStorageTask(Task_NameBox); break; case MENU_WALLPAPER: PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_HandleWallpapers); + SetPokeStorageTask(Task_HandleWallpapers); break; case MENU_JUMP: PlaySE(SE_SELECT); ClearBottomWindow(); - SetPSSCallback(Cb_JumpBox); + SetPokeStorageTask(Task_JumpBox); break; } break; } } -static void Cb_HandleWallpapers(u8 taskId) +static void Task_HandleWallpapers(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: AddWallpaperSetsMenu(); PrintMessage(MSG_PICK_A_THEME); - sPSSData->state++; + sStorage->state++; break; case 1: if (!IsMenuLoading()) - sPSSData->state++; + sStorage->state++; break; case 2: - sPSSData->wallpaperSetId = HandleMenuInput(); - switch (sPSSData->wallpaperSetId) + sStorage->wallpaperSetId = HandleMenuInput(); + switch (sStorage->wallpaperSetId) { case MENU_B_PRESSED: AnimateBoxScrollArrows(TRUE); ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case MENU_SCENERY_1: case MENU_SCENERY_2: @@ -3387,43 +3387,43 @@ static void Cb_HandleWallpapers(u8 taskId) case MENU_ETCETERA: PlaySE(SE_SELECT); RemoveMenu(); - sPSSData->wallpaperSetId -= MENU_WALLPAPER_SETS_START; - sPSSData->state++; + sStorage->wallpaperSetId -= MENU_WALLPAPER_SETS_START; + sStorage->state++; break; case MENU_FRIENDS: // New wallpaper from Walda. PlaySE(SE_SELECT); - sPSSData->wallpaperId = WALLPAPER_FRIENDS; + sStorage->wallpaperId = WALLPAPER_FRIENDS; RemoveMenu(); ClearBottomWindow(); - sPSSData->state = 6; + sStorage->state = 6; break; } break; case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - AddWallpapersMenu(sPSSData->wallpaperSetId); + AddWallpapersMenu(sStorage->wallpaperSetId); PrintMessage(MSG_PICK_A_WALLPAPER); - sPSSData->state++; + sStorage->state++; } break; case 4: - sPSSData->wallpaperId = HandleMenuInput(); - switch (sPSSData->wallpaperId) + sStorage->wallpaperId = HandleMenuInput(); + switch (sStorage->wallpaperId) { case MENU_NOTHING_CHOSEN: break; case MENU_B_PRESSED: ClearBottomWindow(); - sPSSData->state = 0; + sStorage->state = 0; break; default: PlaySE(SE_SELECT); ClearBottomWindow(); - sPSSData->wallpaperId -= MENU_WALLPAPERS_START; - SetWallpaperForCurrentBox(sPSSData->wallpaperId); - sPSSData->state++; + sStorage->wallpaperId -= MENU_WALLPAPERS_START; + SetWallpaperForCurrentBox(sStorage->wallpaperId); + sStorage->state++; break; } break; @@ -3431,32 +3431,32 @@ static void Cb_HandleWallpapers(u8 taskId) if (!DoWallpaperGfxChange()) { AnimateBoxScrollArrows(TRUE); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 6: if (!IsDma3ManagerBusyWithBgCopy()) { - SetWallpaperForCurrentBox(sPSSData->wallpaperId); - sPSSData->state = 5; + SetWallpaperForCurrentBox(sStorage->wallpaperId); + sStorage->state = 5; } break; } } -static void Cb_JumpBox(u8 taskId) +static void Task_JumpBox(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: PrintMessage(MSG_JUMP_TO_WHICH_BOX); - LoadChooseBoxMenuGfx(&sPSSData->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); + LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); CreateChooseBoxMenuSprites(StorageGetCurrentBox()); - sPSSData->state++; + sStorage->state++; break; case 1: - sPSSData->newCurrBoxId = HandleChooseBoxMenuInput(); - switch (sPSSData->newCurrBoxId) + sStorage->newCurrBoxId = HandleChooseBoxMenuInput(); + switch (sStorage->newCurrBoxId) { case BOXID_NONE_CHOSEN: break; @@ -3464,119 +3464,119 @@ static void Cb_JumpBox(u8 taskId) ClearBottomWindow(); DestroyChooseBoxMenuSprites(); FreeChooseBoxMenu(); - if (sPSSData->newCurrBoxId == BOXID_CANCELED || sPSSData->newCurrBoxId == StorageGetCurrentBox()) + if (sStorage->newCurrBoxId == BOXID_CANCELED || sStorage->newCurrBoxId == StorageGetCurrentBox()) { AnimateBoxScrollArrows(TRUE); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } else { - sPSSData->state++; + sStorage->state++; } break; } break; case 2: - SetUpScrollToBox(sPSSData->newCurrBoxId); - sPSSData->state++; + SetUpScrollToBox(sStorage->newCurrBoxId); + sStorage->state++; break; case 3: if (!ScrollToBox()) { - SetCurrentBox(sPSSData->newCurrBoxId); - SetPSSCallback(Cb_MainPSS); + SetCurrentBox(sStorage->newCurrBoxId); + SetPokeStorageTask(Task_PokeStorageMain); } break; } } -static void Cb_NameBox(u8 taskId) +static void Task_NameBox(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: SaveMovingMon(); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sPSSData->state++; + sStorage->state++; break; case 1: if (!UpdatePaletteFade()) { sWhichToReshow = SCREEN_CHANGE_NAME_BOX - 1; - sPSSData->screenChangeType = SCREEN_CHANGE_NAME_BOX; - SetPSSCallback(Cb_ChangeScreen); + sStorage->screenChangeType = SCREEN_CHANGE_NAME_BOX; + SetPokeStorageTask(Task_ChangeScreen); } break; } } -static void Cb_ShowMonSummary(u8 taskId) +static void Task_ShowMonSummary(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: InitSummaryScreenData(); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sPSSData->state++; + sStorage->state++; break; case 1: if (!UpdatePaletteFade()) { sWhichToReshow = SCREEN_CHANGE_SUMMARY_SCREEN - 1; - sPSSData->screenChangeType = SCREEN_CHANGE_SUMMARY_SCREEN; - SetPSSCallback(Cb_ChangeScreen); + sStorage->screenChangeType = SCREEN_CHANGE_SUMMARY_SCREEN; + SetPokeStorageTask(Task_ChangeScreen); } break; } } -static void Cb_GiveItemFromBag(u8 taskId) +static void Task_GiveItemFromBag(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sPSSData->state++; + sStorage->state++; break; case 1: if (!UpdatePaletteFade()) { sWhichToReshow = SCREEN_CHANGE_ITEM_FROM_BAG - 1; - sPSSData->screenChangeType = SCREEN_CHANGE_ITEM_FROM_BAG; - SetPSSCallback(Cb_ChangeScreen); + sStorage->screenChangeType = SCREEN_CHANGE_ITEM_FROM_BAG; + SetPokeStorageTask(Task_ChangeScreen); } break; } } -static void Cb_OnCloseBoxPressed(u8 taskId) +static void Task_OnCloseBoxPressed(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: if (IsMonBeingMoved()) { PlaySE(SE_FAILURE); PrintMessage(MSG_HOLDING_POKE); - sPSSData->state = 1; + sStorage->state = 1; } else if (IsMovingItem()) { - SetPSSCallback(Cb_CloseBoxWhileHoldingItem); + SetPokeStorageTask(Task_CloseBoxWhileHoldingItem); } else { PlaySE(SE_SELECT); PrintMessage(MSG_EXIT_BOX); ShowYesNoWindow(0); - sPSSData->state = 2; + sStorage->state = 2; } break; case 1: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 2: @@ -3585,59 +3585,59 @@ static void Cb_OnCloseBoxPressed(u8 taskId) case MENU_B_PRESSED: case 1: ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 0: PlaySE(SE_PC_OFF); ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; break; } break; case 3: ComputerScreenCloseEffect(20, 0, 1); - sPSSData->state++; + sStorage->state++; break; case 4: if (!IsComputerScreenCloseEffectActive()) { sub_80CABE0(); gPlayerPartyCount = CalculatePlayerPartyCount(); - sPSSData->screenChangeType = SCREEN_CHANGE_EXIT_BOX; - SetPSSCallback(Cb_ChangeScreen); + sStorage->screenChangeType = SCREEN_CHANGE_EXIT_BOX; + SetPokeStorageTask(Task_ChangeScreen); } break; } } -static void Cb_OnBPressed(u8 taskId) +static void Task_OnBPressed(u8 taskId) { - switch (sPSSData->state) + switch (sStorage->state) { case 0: if (IsMonBeingMoved()) { PlaySE(SE_FAILURE); PrintMessage(MSG_HOLDING_POKE); - sPSSData->state = 1; + sStorage->state = 1; } else if (IsMovingItem()) { - SetPSSCallback(Cb_CloseBoxWhileHoldingItem); + SetPokeStorageTask(Task_CloseBoxWhileHoldingItem); } else { PlaySE(SE_SELECT); PrintMessage(MSG_CONTINUE_BOX); ShowYesNoWindow(0); - sPSSData->state = 2; + sStorage->state = 2; } break; case 1: if (JOY_NEW(A_BUTTON | B_BUTTON | DPAD_ANY)) { ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); } break; case 2: @@ -3645,39 +3645,39 @@ static void Cb_OnBPressed(u8 taskId) { case 0: ClearBottomWindow(); - SetPSSCallback(Cb_MainPSS); + SetPokeStorageTask(Task_PokeStorageMain); break; case 1: case MENU_B_PRESSED: PlaySE(SE_PC_OFF); ClearBottomWindow(); - sPSSData->state++; + sStorage->state++; break; } break; case 3: ComputerScreenCloseEffect(20, 0, 0); - sPSSData->state++; + sStorage->state++; break; case 4: if (!IsComputerScreenCloseEffectActive()) { sub_80CABE0(); gPlayerPartyCount = CalculatePlayerPartyCount(); - sPSSData->screenChangeType = SCREEN_CHANGE_EXIT_BOX; - SetPSSCallback(Cb_ChangeScreen); + sStorage->screenChangeType = SCREEN_CHANGE_EXIT_BOX; + SetPokeStorageTask(Task_ChangeScreen); } break; } } -static void Cb_ChangeScreen(u8 taskId) +static void Task_ChangeScreen(u8 taskId) { struct BoxPokemon *boxMons; u8 mode, monIndex, maxMonIndex; - u8 screenChangeType = sPSSData->screenChangeType; + u8 screenChangeType = sStorage->screenChangeType; - if (sPSSData->boxOption == OPTION_MOVE_ITEMS && IsMovingItem() == TRUE) + if (sStorage->boxOption == OPTION_MOVE_ITEMS && IsMovingItem() == TRUE) sMovingItemId = GetMovingItemId(); else sMovingItemId = ITEM_NONE; @@ -3686,27 +3686,27 @@ static void Cb_ChangeScreen(u8 taskId) { case SCREEN_CHANGE_EXIT_BOX: default: - FreePSSData(); - SetMainCallback2(Cb2_ExitPSS); + FreePokeStorageData(); + SetMainCallback2(CB2_ExitPokeStorage); break; case SCREEN_CHANGE_SUMMARY_SCREEN: - boxMons = sPSSData->summaryMon.box; - monIndex = sPSSData->summaryStartPos; - maxMonIndex = sPSSData->summaryMaxPos; - mode = sPSSData->summaryScreenMode; - FreePSSData(); + boxMons = sStorage->summaryMon.box; + monIndex = sStorage->summaryStartPos; + maxMonIndex = sStorage->summaryMaxPos; + mode = sStorage->summaryScreenMode; + FreePokeStorageData(); if (mode == SUMMARY_MODE_NORMAL && boxMons == &sSavedMovingMon.box) - ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); + ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, CB2_ReturnToPokeStorage); else - ShowPokemonSummaryScreen(mode, boxMons, monIndex, maxMonIndex, Cb2_ReturnToPSS); + ShowPokemonSummaryScreen(mode, boxMons, monIndex, maxMonIndex, CB2_ReturnToPokeStorage); break; case SCREEN_CHANGE_NAME_BOX: - FreePSSData(); - DoNamingScreen(NAMING_SCREEN_BOX, GetBoxNamePtr(StorageGetCurrentBox()), 0, 0, 0, Cb2_ReturnToPSS); + FreePokeStorageData(); + DoNamingScreen(NAMING_SCREEN_BOX, GetBoxNamePtr(StorageGetCurrentBox()), 0, 0, 0, CB2_ReturnToPokeStorage); break; case SCREEN_CHANGE_ITEM_FROM_BAG: - FreePSSData(); - GoToBagMenu(ITEMMENULOCATION_PCBOX, 0, Cb2_ReturnToPSS); + FreePokeStorageData(); + GoToBagMenu(ITEMMENULOCATION_PCBOX, 0, CB2_ReturnToPokeStorage); break; } @@ -3729,11 +3729,11 @@ static void GiveChosenBagItem(void) } } -static void FreePSSData(void) +static void FreePokeStorageData(void) { TilemapUtil_Free(); MultiMove_Free(); - FREE_AND_SET_NULL(sPSSData); + FREE_AND_SET_NULL(sStorage); FreeAllWindowBuffers(); } @@ -3750,17 +3750,17 @@ static void ScrollBackground(void) ChangeBgY(3, 128, 2); } -static void LoadPSSMenuGfx(void) +static void LoadPokeStorageMenuGfx(void) { InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); DecompressAndLoadBgGfxUsingHeap(1, gStorageSystemMenu_Gfx, 0, 0, 0); - LZ77UnCompWram(sDisplayMenu_Tilemap, sPSSData->displayMenuTilemapBuffer); - SetBgTilemapBuffer(1, sPSSData->displayMenuTilemapBuffer); + LZ77UnCompWram(sDisplayMenu_Tilemap, sStorage->displayMenuTilemapBuffer); + SetBgTilemapBuffer(1, sStorage->displayMenuTilemapBuffer); ShowBg(1); ScheduleBgCopyTilemapToVram(1); } -static bool8 InitPSSWindows(void) +static bool8 InitPokeStorageWindows(void) { if (!InitWindows(sWindowTemplates)) { @@ -3783,7 +3783,7 @@ static void sub_80CA0D8(void) LoadPalette(sInterface_Pal, 0, sizeof(sInterface_Pal)); LoadPalette(sPkmnDataGray_Pal, 0x20, sizeof(sPkmnDataGray_Pal)); LoadPalette(gUnknown_085726F4, 0xF0, sizeof(gUnknown_085726F4)); - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) LoadPalette(sBg_Pal, 0x30, sizeof(sBg_Pal)); else LoadPalette(sBgMoveItems_Pal, 0x30, sizeof(sBgMoveItems_Pal)); @@ -3797,12 +3797,12 @@ static void sub_80CA0D8(void) static void CreateMarkingComboSprite(void) { - sPSSData->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MARKING_COMBO, PALTAG_MARKING_COMBO, NULL); - sPSSData->markingComboSprite->oam.priority = 1; - sPSSData->markingComboSprite->subpriority = 1; - sPSSData->markingComboSprite->pos1.x = 40; - sPSSData->markingComboSprite->pos1.y = 150; - sPSSData->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); + sStorage->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MARKING_COMBO, PALTAG_MARKING_COMBO, NULL); + sStorage->markingComboSprite->oam.priority = 1; + sStorage->markingComboSprite->subpriority = 1; + sStorage->markingComboSprite->pos1.x = 40; + sStorage->markingComboSprite->pos1.y = 150; + sStorage->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); } static void CreateWaveformSprites(void) @@ -3811,16 +3811,16 @@ static void CreateWaveformSprites(void) struct SpriteSheet sheet = sSpriteSheet_Waveform; LoadSpriteSheet(&sheet); - for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) + for (i = 0; i < ARRAY_COUNT(sStorage->waveformSprites); i++) { u8 spriteId = CreateSprite(&sSpriteTemplate_Waveform, i * 63 + 8, 9, 2); - sPSSData->waveformSprites[i] = &gSprites[spriteId]; + sStorage->waveformSprites[i] = &gSprites[spriteId]; } } static void RefreshDisplayMonData(void) { - LoadDisplayMonGfx(sPSSData->displayMonSpecies, sPSSData->displayMonPersonality); + LoadDisplayMonGfx(sStorage->displayMonSpecies, sStorage->displayMonPersonality); PrintDisplayMonInfo(); UpdateWaveformAnimation(); ScheduleBgCopyTilemapToVram(0); @@ -3829,19 +3829,19 @@ static void RefreshDisplayMonData(void) static void StartDisplayMonMosaicEffect(void) { RefreshDisplayMonData(); - if (sPSSData->displayMonSprite) + if (sStorage->displayMonSprite) { - sPSSData->displayMonSprite->oam.mosaic = TRUE; - sPSSData->displayMonSprite->data[0] = 10; - sPSSData->displayMonSprite->data[1] = 1; - sPSSData->displayMonSprite->callback = SpriteCB_DisplayMonMosaic; - SetGpuReg(REG_OFFSET_MOSAIC, (sPSSData->displayMonSprite->data[0] << 12) | (sPSSData->displayMonSprite->data[0] << 8)); + sStorage->displayMonSprite->oam.mosaic = TRUE; + sStorage->displayMonSprite->data[0] = 10; + sStorage->displayMonSprite->data[1] = 1; + sStorage->displayMonSprite->callback = SpriteCB_DisplayMonMosaic; + SetGpuReg(REG_OFFSET_MOSAIC, (sStorage->displayMonSprite->data[0] << 12) | (sStorage->displayMonSprite->data[0] << 8)); } } static u8 IsDisplayMosaicActive(void) { - return sPSSData->displayMonSprite->oam.mosaic; + return sStorage->displayMonSprite->oam.mosaic; } static void SpriteCB_DisplayMonMosaic(struct Sprite *sprite) @@ -3863,16 +3863,16 @@ static void CreateDisplayMonSprite(void) u16 tileStart; u8 palSlot; u8 spriteId; - struct SpriteSheet sheet = {sPSSData->tileBuffer, MON_PIC_SIZE, GFXTAG_DISPLAY_MON}; - struct SpritePalette palette = {sPSSData->displayMonPalBuffer, PALTAG_DISPLAY_MON}; + struct SpriteSheet sheet = {sStorage->tileBuffer, MON_PIC_SIZE, GFXTAG_DISPLAY_MON}; + struct SpritePalette palette = {sStorage->displayMonPalBuffer, PALTAG_DISPLAY_MON}; struct SpriteTemplate template = sSpriteTemplate_DisplayMon; for (i = 0; i < MON_PIC_SIZE; i++) - sPSSData->tileBuffer[i] = 0; + sStorage->tileBuffer[i] = 0; for (i = 0; i < 16; i++) - sPSSData->displayMonPalBuffer[i] = 0; + sStorage->displayMonPalBuffer[i] = 0; - sPSSData->displayMonSprite = NULL; + sStorage->displayMonSprite = NULL; do { @@ -3888,12 +3888,12 @@ static void CreateDisplayMonSprite(void) if (spriteId == MAX_SPRITES) break; - sPSSData->displayMonSprite = &gSprites[spriteId]; - sPSSData->displayMonPalOffset = palSlot * 16 + 0x100; - sPSSData->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; + sStorage->displayMonSprite = &gSprites[spriteId]; + sStorage->displayMonPalOffset = palSlot * 16 + 0x100; + sStorage->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; } while (0); - if (sPSSData->displayMonSprite == NULL) + if (sStorage->displayMonSprite == NULL) { FreeSpriteTilesByTag(GFXTAG_DISPLAY_MON); FreeSpritePaletteByTag(PALTAG_DISPLAY_MON); @@ -3902,50 +3902,50 @@ static void CreateDisplayMonSprite(void) static void LoadDisplayMonGfx(u16 species, u32 pid) { - if (sPSSData->displayMonSprite == NULL) + if (sStorage->displayMonSprite == NULL) return; if (species != SPECIES_NONE) { - LoadSpecialPokePic(&gMonFrontPicTable[species], sPSSData->tileBuffer, species, pid, TRUE); - LZ77UnCompWram(sPSSData->displayMonPalette, sPSSData->displayMonPalBuffer); - CpuCopy32(sPSSData->tileBuffer, sPSSData->displayMonTilePtr, MON_PIC_SIZE); - LoadPalette(sPSSData->displayMonPalBuffer, sPSSData->displayMonPalOffset, 0x20); - sPSSData->displayMonSprite->invisible = FALSE; + LoadSpecialPokePic(&gMonFrontPicTable[species], sStorage->tileBuffer, species, pid, TRUE); + LZ77UnCompWram(sStorage->displayMonPalette, sStorage->displayMonPalBuffer); + CpuCopy32(sStorage->tileBuffer, sStorage->displayMonTilePtr, MON_PIC_SIZE); + LoadPalette(sStorage->displayMonPalBuffer, sStorage->displayMonPalOffset, 0x20); + sStorage->displayMonSprite->invisible = FALSE; } else { - sPSSData->displayMonSprite->invisible = TRUE; + sStorage->displayMonSprite->invisible = TRUE; } } static void PrintDisplayMonInfo(void) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - AddTextPrinterParameterized(0, 1, sPSSData->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 0, sPSSData->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 1, sStorage->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sStorage->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 0, sStorage->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); } else { - AddTextPrinterParameterized(0, 0, sPSSData->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 1, sPSSData->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sPSSData->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 0, sStorage->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 1, sStorage->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sStorage->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, 2, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); } CopyWindowToVram(0, 2); - if (sPSSData->displayMonSpecies != SPECIES_NONE) + if (sStorage->displayMonSpecies != SPECIES_NONE) { - UpdateMonMarkingTiles(sPSSData->displayMonMarkings, sPSSData->markingComboTilesPtr); - sPSSData->markingComboSprite->invisible = FALSE; + UpdateMonMarkingTiles(sStorage->displayMonMarkings, sStorage->markingComboTilesPtr); + sStorage->markingComboSprite->invisible = FALSE; } else { - sPSSData->markingComboSprite->invisible = TRUE; + sStorage->markingComboSprite->invisible = TRUE; } } @@ -3954,19 +3954,19 @@ static void UpdateWaveformAnimation(void) { u16 i; - if (sPSSData->displayMonSpecies != SPECIES_NONE) + if (sStorage->displayMonSpecies != SPECIES_NONE) { // Start waveform animation and color "Pkmn Data" TilemapUtil_SetRect(TILEMAPID_PKMN_DATA, 0, 0, 8, 2); - for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) - StartSpriteAnimIfDifferent(sPSSData->waveformSprites[i], i * 2 + 1); + for (i = 0; i < ARRAY_COUNT(sStorage->waveformSprites); i++) + StartSpriteAnimIfDifferent(sStorage->waveformSprites[i], i * 2 + 1); } else { // Stop waveform animation and gray out "Pkmn Data" TilemapUtil_SetRect(TILEMAPID_PKMN_DATA, 0, 2, 8, 2); - for (i = 0; i < ARRAY_COUNT(sPSSData->waveformSprites); i++) - StartSpriteAnim(sPSSData->waveformSprites[i], i * 2); + for (i = 0; i < ARRAY_COUNT(sStorage->waveformSprites); i++) + StartSpriteAnim(sStorage->waveformSprites[i], i * 2); } TilemapUtil_Update(TILEMAPID_PKMN_DATA); @@ -3975,9 +3975,9 @@ static void UpdateWaveformAnimation(void) static void InitSupplementalTilemaps(void) { - LZ77UnCompWram(gStorageSystemPartyMenu_Tilemap, sPSSData->partyMenuTilemapBuffer); + LZ77UnCompWram(gStorageSystemPartyMenu_Tilemap, sStorage->partyMenuTilemapBuffer); LoadPalette(gStorageSystemPartyMenu_Pal, 0x10, 0x20); - TilemapUtil_SetMap(TILEMAPID_PARTY_MENU, 1, sPSSData->partyMenuTilemapBuffer, 12, 22); + TilemapUtil_SetMap(TILEMAPID_PARTY_MENU, 1, sStorage->partyMenuTilemapBuffer, 12, 22); TilemapUtil_SetMap(TILEMAPID_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4); TilemapUtil_SetPos(TILEMAPID_PARTY_MENU, 10, 0); TilemapUtil_SetPos(TILEMAPID_CLOSE_BUTTON, 21, 0); @@ -3998,29 +3998,29 @@ static void InitSupplementalTilemaps(void) } ScheduleBgCopyTilemapToVram(1); - sPSSData->closeBoxFlashing = FALSE; + sStorage->closeBoxFlashing = FALSE; } static void SetUpShowPartyMenu(void) { - sPSSData->partyMenuUnused = 20; - sPSSData->partyMenuY = 2; - sPSSData->partyMenuMoveTimer = 0; + sStorage->partyMenuUnused = 20; + sStorage->partyMenuY = 2; + sStorage->partyMenuMoveTimer = 0; CreatePartyMonsSprites(FALSE); } static bool8 ShowPartyMenu(void) { - if (sPSSData->partyMenuMoveTimer == 20) + if (sStorage->partyMenuMoveTimer == 20) return FALSE; - sPSSData->partyMenuUnused--; - sPSSData->partyMenuY++; + sStorage->partyMenuUnused--; + sStorage->partyMenuY++; TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, 1); TilemapUtil_Update(TILEMAPID_PARTY_MENU); ScheduleBgCopyTilemapToVram(1); MovePartySprites(8); - if (++sPSSData->partyMenuMoveTimer == 20) + if (++sStorage->partyMenuMoveTimer == 20) { sInPartyMenu = TRUE; return FALSE; @@ -4033,24 +4033,24 @@ static bool8 ShowPartyMenu(void) static void SetUpHidePartyMenu(void) { - sPSSData->partyMenuUnused = 0; - sPSSData->partyMenuY = 22; - sPSSData->partyMenuMoveTimer = 0; - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + sStorage->partyMenuUnused = 0; + sStorage->partyMenuY = 22; + sStorage->partyMenuMoveTimer = 0; + if (sStorage->boxOption == OPTION_MOVE_ITEMS) MoveHeldItemWithPartyMenu(); } static bool8 HidePartyMenu(void) { - if (sPSSData->partyMenuMoveTimer != 20) + if (sStorage->partyMenuMoveTimer != 20) { - sPSSData->partyMenuUnused++; - sPSSData->partyMenuY--; + sStorage->partyMenuUnused++; + sStorage->partyMenuY--; TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, -1); TilemapUtil_Update(TILEMAPID_PARTY_MENU); - FillBgTilemapBufferRect_Palette0(1, 0x100, 10, sPSSData->partyMenuY, 12, 1); + FillBgTilemapBufferRect_Palette0(1, 0x100, 10, sStorage->partyMenuY, 12, 1); MovePartySprites(-8); - if (++sPSSData->partyMenuMoveTimer != 20) + if (++sStorage->partyMenuMoveTimer != 20) { ScheduleBgCopyTilemapToVram(1); return TRUE; @@ -4086,27 +4086,27 @@ static void UpdateCloseBoxButtonTilemap(bool8 normal) static void StartFlashingCloseBoxButton(void) { - sPSSData->closeBoxFlashing = TRUE; - sPSSData->closeBoxFlashTimer = 30; - sPSSData->closeBoxFlashState = TRUE; + sStorage->closeBoxFlashing = TRUE; + sStorage->closeBoxFlashTimer = 30; + sStorage->closeBoxFlashState = TRUE; } static void StopFlashingCloseBoxButton(void) { - if (sPSSData->closeBoxFlashing) + if (sStorage->closeBoxFlashing) { - sPSSData->closeBoxFlashing = FALSE; + sStorage->closeBoxFlashing = FALSE; UpdateCloseBoxButtonTilemap(TRUE); } } static void UpdateCloseBoxButtonFlash(void) { - if (sPSSData->closeBoxFlashing && ++sPSSData->closeBoxFlashTimer > 30) + if (sStorage->closeBoxFlashing && ++sStorage->closeBoxFlashTimer > 30) { - sPSSData->closeBoxFlashTimer = 0; - sPSSData->closeBoxFlashState = (sPSSData->closeBoxFlashState == FALSE); - UpdateCloseBoxButtonTilemap(sPSSData->closeBoxFlashState); + sStorage->closeBoxFlashTimer = 0; + sStorage->closeBoxFlashState = (sStorage->closeBoxFlashState == FALSE); + UpdateCloseBoxButtonTilemap(sStorage->closeBoxFlashState); } } @@ -4139,7 +4139,7 @@ static void SetPartySlotTilemap(u8 partyId, bool8 hasMon) for (i = 0; i < 3; i++) { for (j = 0; j < 4; j++) - sPSSData->partyMenuTilemapBuffer[index + j] = data[j]; + sStorage->partyMenuTilemapBuffer[index + j] = data[j]; data += 4; index += 12; @@ -4156,28 +4156,28 @@ static void UpdatePartySlotColors(void) static void SetUpDoShowPartyMenu(void) { - sPSSData->showPartyMenuState = 0; + sStorage->showPartyMenuState = 0; PlaySE(SE_WIN_OPEN); SetUpShowPartyMenu(); } static bool8 DoShowPartyMenu(void) { - switch (sPSSData->showPartyMenuState) + switch (sStorage->showPartyMenuState) { case 0: if (!ShowPartyMenu()) { SetCursorInParty(); - sPSSData->showPartyMenuState++; + sStorage->showPartyMenuState++; } break; case 1: if (!UpdateCursorPos()) { - if (sPSSData->setMosaic) + if (sStorage->setMosaic) StartDisplayMonMosaicEffect(); - sPSSData->showPartyMenuState++; + sStorage->showPartyMenuState++; } break; case 2: @@ -4215,30 +4215,30 @@ static void PrintMessage(u8 id) case MSG_VAR_MON_NAME_1: case MSG_VAR_MON_NAME_2: case MSG_VAR_MON_NAME_3: - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->displayMonName); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sStorage->displayMonName); break; case MSG_VAR_RELEASE_MON_1: case MSG_VAR_RELEASE_MON_2: case MSG_VAR_RELEASE_MON_3: - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->releaseMonName); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sStorage->releaseMonName); break; case MSG_VAR_ITEM_NAME: if (IsMovingItem()) - txtPtr = StringCopy(sPSSData->itemName, GetMovingItemName()); + txtPtr = StringCopy(sStorage->itemName, GetMovingItemName()); else - txtPtr = StringCopy(sPSSData->itemName, sPSSData->displayMonItemName); + txtPtr = StringCopy(sStorage->itemName, sStorage->displayMonItemName); while (*(txtPtr - 1) == CHAR_SPACE) txtPtr--; *txtPtr = EOS; - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPSSData->itemName); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sStorage->itemName); break; } - DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->messageText, sMessages[id].text); + DynamicPlaceholderTextUtil_ExpandPlaceholders(sStorage->messageText, sMessages[id].text); FillWindowPixelBuffer(1, PIXEL_FILL(1)); - AddTextPrinterParameterized(1, 1, sPSSData->messageText, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, 1, sStorage->messageText, 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); CopyWindowToVram(1, 2); @@ -4330,16 +4330,16 @@ static void InitMonIconFields(void) LoadMonIconPalettes(); for (i = 0; i < MAX_MON_ICONS; i++) - sPSSData->numIconsPerSpecies[i] = 0; + sStorage->numIconsPerSpecies[i] = 0; for (i = 0; i < MAX_MON_ICONS; i++) - sPSSData->iconSpeciesList[i] = SPECIES_NONE; + sStorage->iconSpeciesList[i] = SPECIES_NONE; for (i = 0; i < PARTY_SIZE; i++) - sPSSData->partySprites[i] = NULL; + sStorage->partySprites[i] = NULL; for (i = 0; i < IN_BOX_COUNT; i++) - sPSSData->boxMonsSprites[i] = NULL; + sStorage->boxMonsSprites[i] = NULL; - sPSSData->movingMonSprite = NULL; - sPSSData->field_78C = 0; + sStorage->movingMonSprite = NULL; + sStorage->field_78C = 0; } static u8 GetMonIconPriorityByCursorPos(void) @@ -4349,12 +4349,12 @@ static u8 GetMonIconPriorityByCursorPos(void) static void CreateMovingMonIcon(void) { - u32 personality = GetMonData(&sPSSData->movingMon, MON_DATA_PERSONALITY); - u16 species = GetMonData(&sPSSData->movingMon, MON_DATA_SPECIES2); + u32 personality = GetMonData(&sStorage->movingMon, MON_DATA_PERSONALITY); + u16 species = GetMonData(&sStorage->movingMon, MON_DATA_SPECIES2); u8 priority = GetMonIconPriorityByCursorPos(); - sPSSData->movingMonSprite = CreateMonIconSprite(species, personality, 0, 0, priority, 7); - sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; + sStorage->movingMonSprite = CreateMonIconSprite(species, personality, 0, 0, priority, 7); + sStorage->movingMonSprite->callback = SpriteCB_HeldMon; } static void InitBoxMonSprites(u8 boxId) @@ -4376,11 +4376,11 @@ static void InitBoxMonSprites(u8 boxId) if (species != SPECIES_NONE) { personality = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_PERSONALITY); - sPSSData->boxMonsSprites[count] = CreateMonIconSprite(species, personality, 8 * (3 * j) + 100, 8 * (3 * i) + 44, 2, 19 - j); + sStorage->boxMonsSprites[count] = CreateMonIconSprite(species, personality, 8 * (3 * j) + 100, 8 * (3 * i) + 44, 2, 19 - j); } else { - sPSSData->boxMonsSprites[count] = NULL; + sStorage->boxMonsSprites[count] = NULL; } boxPosition++; count++; @@ -4388,12 +4388,12 @@ static void InitBoxMonSprites(u8 boxId) } // If in item mode, set all Pokémon icons with no item to be transparent - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { for (boxPosition = 0; boxPosition < IN_BOX_COUNT; boxPosition++) { if (GetBoxMonDataAt(boxId, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) - sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; + sStorage->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; } } } @@ -4408,9 +4408,9 @@ static void CreateBoxMonIconAtPos(u8 boxPosition) s16 y = 8 * (3 * (boxPosition / IN_BOX_COLUMNS)) + 44; u32 personality = GetCurrentBoxMonData(boxPosition, MON_DATA_PERSONALITY); - sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(species, personality, x, y, 2, 19 - (boxPosition % IN_BOX_COLUMNS)); - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) - sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; + sStorage->boxMonsSprites[boxPosition] = CreateMonIconSprite(species, personality, x, y, 2, 19 - (boxPosition % IN_BOX_COLUMNS)); + if (sStorage->boxOption == OPTION_MOVE_ITEMS) + sStorage->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; } } @@ -4426,11 +4426,11 @@ static void StartBoxMonIconsScrollOut(s16 speed) for (i = 0; i < IN_BOX_COUNT; i++) { - if (sPSSData->boxMonsSprites[i] != NULL) + if (sStorage->boxMonsSprites[i] != NULL) { - sPSSData->boxMonsSprites[i]->sSpeed = speed; - sPSSData->boxMonsSprites[i]->sDelay = 1; - sPSSData->boxMonsSprites[i]->callback = SpriteCB_BoxMonIconScrollOut; + sStorage->boxMonsSprites[i]->sSpeed = speed; + sStorage->boxMonsSprites[i]->sDelay = 1; + sStorage->boxMonsSprites[i]->callback = SpriteCB_BoxMonIconScrollOut; } } } @@ -4446,7 +4446,7 @@ static void SpriteCB_BoxMonIconScrollIn(struct Sprite *sprite) else { // Icon arrived - sPSSData->iconScrollNumIncoming--; + sStorage->iconScrollNumIncoming--; sprite->pos1.x = sprite->sScrollInDestX; sprite->callback = SpriteCallbackDummy; } @@ -4479,10 +4479,10 @@ static void DestroyBoxMonIconsInColumn(u8 column) for (row = 0; row < IN_BOX_ROWS; row++) { - if (sPSSData->boxMonsSprites[boxPosition] != NULL) + if (sStorage->boxMonsSprites[boxPosition] != NULL) { - DestroyBoxMonIcon(sPSSData->boxMonsSprites[boxPosition]); - sPSSData->boxMonsSprites[boxPosition] = NULL; + DestroyBoxMonIcon(sStorage->boxMonsSprites[boxPosition]); + sStorage->boxMonsSprites[boxPosition] = NULL; } boxPosition += IN_BOX_COLUMNS; } @@ -4499,21 +4499,21 @@ static u8 CreateBoxMonIconsInColumn(u8 column, u16 distance, s16 speed) u8 iconsCreated = 0; u8 boxPosition = column; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { for (i = 0; i < IN_BOX_ROWS; i++) { - if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) + if (sStorage->boxSpecies[boxPosition] != SPECIES_NONE) { - sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(sPSSData->boxSpecies[boxPosition], - sPSSData->boxPersonalities[boxPosition], + sStorage->boxMonsSprites[boxPosition] = CreateMonIconSprite(sStorage->boxSpecies[boxPosition], + sStorage->boxPersonalities[boxPosition], x, y, 2, subpriority); - if (sPSSData->boxMonsSprites[boxPosition] != NULL) + if (sStorage->boxMonsSprites[boxPosition] != NULL) { - sPSSData->boxMonsSprites[boxPosition]->sDistance = distance; - sPSSData->boxMonsSprites[boxPosition]->sSpeed = speed; - sPSSData->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; - sPSSData->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; + sStorage->boxMonsSprites[boxPosition]->sDistance = distance; + sStorage->boxMonsSprites[boxPosition]->sSpeed = speed; + sStorage->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; + sStorage->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; iconsCreated++; } } @@ -4527,19 +4527,19 @@ static u8 CreateBoxMonIconsInColumn(u8 column, u16 distance, s16 speed) // to create the icons with the proper blend for (i = 0; i < IN_BOX_ROWS; i++) { - if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) + if (sStorage->boxSpecies[boxPosition] != SPECIES_NONE) { - sPSSData->boxMonsSprites[boxPosition] = CreateMonIconSprite(sPSSData->boxSpecies[boxPosition], - sPSSData->boxPersonalities[boxPosition], + sStorage->boxMonsSprites[boxPosition] = CreateMonIconSprite(sStorage->boxSpecies[boxPosition], + sStorage->boxPersonalities[boxPosition], x, y, 2, subpriority); - if (sPSSData->boxMonsSprites[boxPosition] != NULL) + if (sStorage->boxMonsSprites[boxPosition] != NULL) { - sPSSData->boxMonsSprites[boxPosition]->sDistance = distance; - sPSSData->boxMonsSprites[boxPosition]->sSpeed = speed; - sPSSData->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; - sPSSData->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; - if (GetBoxMonDataAt(sPSSData->field_C5C, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) - sPSSData->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; + sStorage->boxMonsSprites[boxPosition]->sDistance = distance; + sStorage->boxMonsSprites[boxPosition]->sSpeed = speed; + sStorage->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; + sStorage->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; + if (GetBoxMonDataAt(sStorage->field_C5C, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) + sStorage->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; iconsCreated++; } } @@ -4559,62 +4559,62 @@ static u8 CreateBoxMonIconsInColumn(u8 column, u16 distance, s16 speed) static void InitBoxMonIconScroll(u8 boxId, s8 direction) { - sPSSData->iconScrollState = 0; - sPSSData->iconScrollToBoxId = boxId; - sPSSData->iconScrollDirection = direction; - sPSSData->iconScrollDistance = 32; - sPSSData->iconScrollSpeed = -(6 * direction); - sPSSData->iconScrollNumIncoming = 0; + sStorage->iconScrollState = 0; + sStorage->iconScrollToBoxId = boxId; + sStorage->iconScrollDirection = direction; + sStorage->iconScrollDistance = 32; + sStorage->iconScrollSpeed = -(6 * direction); + sStorage->iconScrollNumIncoming = 0; SetBoxSpeciesAndPersonalities(boxId); if (direction > 0) - sPSSData->iconScrollCurColumn = 0; + sStorage->iconScrollCurColumn = 0; else - sPSSData->iconScrollCurColumn = IN_BOX_COLUMNS - 1; + sStorage->iconScrollCurColumn = IN_BOX_COLUMNS - 1; - sPSSData->iconScrollPos = (24 * sPSSData->iconScrollCurColumn) + 100; - StartBoxMonIconsScrollOut(sPSSData->iconScrollSpeed); + sStorage->iconScrollPos = (24 * sStorage->iconScrollCurColumn) + 100; + StartBoxMonIconsScrollOut(sStorage->iconScrollSpeed); } static bool8 UpdateBoxMonIconScroll(void) { - if (sPSSData->iconScrollDistance != 0) - sPSSData->iconScrollDistance--; + if (sStorage->iconScrollDistance != 0) + sStorage->iconScrollDistance--; - switch (sPSSData->iconScrollState) + switch (sStorage->iconScrollState) { case 0: - sPSSData->iconScrollPos += sPSSData->iconScrollSpeed; - if (sPSSData->iconScrollPos <= 64 || sPSSData->iconScrollPos >= 252) + sStorage->iconScrollPos += sStorage->iconScrollSpeed; + if (sStorage->iconScrollPos <= 64 || sStorage->iconScrollPos >= 252) { // A column of icons has gone offscreen, destroy them - DestroyBoxMonIconsInColumn(sPSSData->iconScrollCurColumn); - sPSSData->iconScrollPos += sPSSData->iconScrollDirection * 24; - sPSSData->iconScrollState++; + DestroyBoxMonIconsInColumn(sStorage->iconScrollCurColumn); + sStorage->iconScrollPos += sStorage->iconScrollDirection * 24; + sStorage->iconScrollState++; } break; case 1: // Create the new incoming column of icons - sPSSData->iconScrollPos += sPSSData->iconScrollSpeed; - sPSSData->iconScrollNumIncoming += CreateBoxMonIconsInColumn(sPSSData->iconScrollCurColumn, sPSSData->iconScrollDistance, sPSSData->iconScrollSpeed); + sStorage->iconScrollPos += sStorage->iconScrollSpeed; + sStorage->iconScrollNumIncoming += CreateBoxMonIconsInColumn(sStorage->iconScrollCurColumn, sStorage->iconScrollDistance, sStorage->iconScrollSpeed); - if ((sPSSData->iconScrollDirection > 0 && sPSSData->iconScrollCurColumn == IN_BOX_COLUMNS - 1) - || (sPSSData->iconScrollDirection < 0 && sPSSData->iconScrollCurColumn == 0)) + if ((sStorage->iconScrollDirection > 0 && sStorage->iconScrollCurColumn == IN_BOX_COLUMNS - 1) + || (sStorage->iconScrollDirection < 0 && sStorage->iconScrollCurColumn == 0)) { // Scroll has reached final column - sPSSData->iconScrollState++; + sStorage->iconScrollState++; } else { // Continue scrolling - sPSSData->iconScrollCurColumn += sPSSData->iconScrollDirection; - sPSSData->iconScrollState = 0; + sStorage->iconScrollCurColumn += sStorage->iconScrollDirection; + sStorage->iconScrollState = 0; } break; case 2: // Wait to make sure all icons have arrived - if (sPSSData->iconScrollNumIncoming == 0) + if (sStorage->iconScrollNumIncoming == 0) { - sPSSData->iconScrollDistance++; + sStorage->iconScrollDistance++; return FALSE; } break; @@ -4634,29 +4634,29 @@ static void SetBoxSpeciesAndPersonalities(u8 boxId) { for (j = 0; j < IN_BOX_COLUMNS; j++) { - sPSSData->boxSpecies[boxPosition] = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_SPECIES2); - if (sPSSData->boxSpecies[boxPosition] != SPECIES_NONE) - sPSSData->boxPersonalities[boxPosition] = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_PERSONALITY); + sStorage->boxSpecies[boxPosition] = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_SPECIES2); + if (sStorage->boxSpecies[boxPosition] != SPECIES_NONE) + sStorage->boxPersonalities[boxPosition] = GetBoxMonDataAt(boxId, boxPosition, MON_DATA_PERSONALITY); boxPosition++; } } - sPSSData->field_C5C = boxId; + sStorage->field_C5C = boxId; } static void DestroyBoxMonIconAtPosition(u8 boxPosition) { - if (sPSSData->boxMonsSprites[boxPosition] != NULL) + if (sStorage->boxMonsSprites[boxPosition] != NULL) { - DestroyBoxMonIcon(sPSSData->boxMonsSprites[boxPosition]); - sPSSData->boxMonsSprites[boxPosition] = NULL; + DestroyBoxMonIcon(sStorage->boxMonsSprites[boxPosition]); + sStorage->boxMonsSprites[boxPosition] = NULL; } } static void SetBoxMonIconObjMode(u8 boxPosition, u8 objMode) { - if (sPSSData->boxMonsSprites[boxPosition] != NULL) - sPSSData->boxMonsSprites[boxPosition]->oam.objMode = objMode; + if (sStorage->boxMonsSprites[boxPosition] != NULL) + sStorage->boxMonsSprites[boxPosition]->oam.objMode = objMode; } static void CreatePartyMonsSprites(bool8 visible) @@ -4665,7 +4665,7 @@ static void CreatePartyMonsSprites(bool8 visible) u16 species = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES2); u32 personality = GetMonData(&gPlayerParty[0], MON_DATA_PERSONALITY); - sPSSData->partySprites[0] = CreateMonIconSprite(species, personality, 104, 64, 1, 12); + sStorage->partySprites[0] = CreateMonIconSprite(species, personality, 104, 64, 1, 12); count = 1; for (i = 1; i < PARTY_SIZE; i++) { @@ -4673,12 +4673,12 @@ static void CreatePartyMonsSprites(bool8 visible) if (species != SPECIES_NONE) { personality = GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY); - sPSSData->partySprites[i] = CreateMonIconSprite(species, personality, 152, 8 * (3 * (i - 1)) + 16, 1, 12); + sStorage->partySprites[i] = CreateMonIconSprite(species, personality, 152, 8 * (3 * (i - 1)) + 16, 1, 12); count++; } else { - sPSSData->partySprites[i] = NULL; + sStorage->partySprites[i] = NULL; } } @@ -4686,17 +4686,17 @@ static void CreatePartyMonsSprites(bool8 visible) { for (i = 0; i < count; i++) { - sPSSData->partySprites[i]->pos1.y -= 160; - sPSSData->partySprites[i]->invisible = TRUE; + sStorage->partySprites[i]->pos1.y -= 160; + sStorage->partySprites[i]->invisible = TRUE; } } - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { for (i = 0; i < PARTY_SIZE; i++) { - if (sPSSData->partySprites[i] != NULL && GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM) == ITEM_NONE) - sPSSData->partySprites[i]->oam.objMode = ST_OAM_OBJ_BLEND; + if (sStorage->partySprites[i] != NULL && GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM) == ITEM_NONE) + sStorage->partySprites[i]->oam.objMode = ST_OAM_OBJ_BLEND; } } } @@ -4705,16 +4705,16 @@ static void CompactPartySprites(void) { u16 i, targetSlot; - sPSSData->numPartyToCompact = 0; + sStorage->numPartyToCompact = 0; for (i = 0, targetSlot = 0; i < PARTY_SIZE; i++) { - if (sPSSData->partySprites[i] != NULL) + if (sStorage->partySprites[i] != NULL) { if (i != targetSlot) { - MovePartySpriteToNextSlot(sPSSData->partySprites[i], targetSlot); - sPSSData->partySprites[i] = NULL; - sPSSData->numPartyToCompact++; + MovePartySpriteToNextSlot(sStorage->partySprites[i], targetSlot); + sStorage->partySprites[i] = NULL; + sStorage->numPartyToCompact++; } targetSlot++; } @@ -4723,7 +4723,7 @@ static void CompactPartySprites(void) static u8 GetNumPartySpritesCompacting(void) { - return sPSSData->numPartyToCompact; + return sStorage->numPartyToCompact; } #define sPartyId data[1] @@ -4774,8 +4774,8 @@ static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *sprite) sprite->pos1.y = 8 * (3 * (sprite->sPartyId - 1)) + 16; } sprite->callback = SpriteCallbackDummy; - sPSSData->partySprites[sprite->sPartyId] = sprite; - sPSSData->numPartyToCompact--; + sStorage->partySprites[sprite->sPartyId] = sprite; + sStorage->numPartyToCompact--; } } @@ -4788,10 +4788,10 @@ static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *sprite) static void DestroyMovingMonIcon(void) { - if (sPSSData->movingMonSprite != NULL) + if (sStorage->movingMonSprite != NULL) { - DestroyBoxMonIcon(sPSSData->movingMonSprite); - sPSSData->movingMonSprite = NULL; + DestroyBoxMonIcon(sStorage->movingMonSprite); + sStorage->movingMonSprite = NULL; } } @@ -4801,25 +4801,25 @@ static void MovePartySprites(s16 yDelta) for (i = 0; i < PARTY_SIZE; i++) { - if (sPSSData->partySprites[i] != NULL) + if (sStorage->partySprites[i] != NULL) { - sPSSData->partySprites[i]->pos1.y += yDelta; - posY = sPSSData->partySprites[i]->pos1.y + sPSSData->partySprites[i]->pos2.y + sPSSData->partySprites[i]->centerToCornerVecY; + sStorage->partySprites[i]->pos1.y += yDelta; + posY = sStorage->partySprites[i]->pos1.y + sStorage->partySprites[i]->pos2.y + sStorage->partySprites[i]->centerToCornerVecY; posY += 16; if (posY > 192) - sPSSData->partySprites[i]->invisible = TRUE; + sStorage->partySprites[i]->invisible = TRUE; else - sPSSData->partySprites[i]->invisible = FALSE; + sStorage->partySprites[i]->invisible = FALSE; } } } static void DestroyPartyMonIcon(u8 partyId) { - if (sPSSData->partySprites[partyId] != NULL) + if (sStorage->partySprites[partyId] != NULL) { - DestroyBoxMonIcon(sPSSData->partySprites[partyId]); - sPSSData->partySprites[partyId] = NULL; + DestroyBoxMonIcon(sStorage->partySprites[partyId]); + sStorage->partySprites[partyId] = NULL; } } @@ -4829,19 +4829,19 @@ static void DestroyAllPartyMonIcons(void) for (i = 0; i < PARTY_SIZE; i++) { - if (sPSSData->partySprites[i] != NULL) + if (sStorage->partySprites[i] != NULL) { - DestroyBoxMonIcon(sPSSData->partySprites[i]); - sPSSData->partySprites[i] = NULL; + DestroyBoxMonIcon(sStorage->partySprites[i]); + sStorage->partySprites[i] = NULL; } } } static void SetPartyMonIconObjMode(u8 partyId, u8 objMode) { - if (sPSSData->partySprites[partyId] != NULL) + if (sStorage->partySprites[partyId] != NULL) { - sPSSData->partySprites[partyId]->oam.objMode = objMode; + sStorage->partySprites[partyId]->oam.objMode = objMode; } } @@ -4849,83 +4849,83 @@ static void SetMovingMonSprite(u8 mode, u8 id) { if (mode == MODE_PARTY) { - sPSSData->movingMonSprite = sPSSData->partySprites[id]; - sPSSData->partySprites[id] = NULL; + sStorage->movingMonSprite = sStorage->partySprites[id]; + sStorage->partySprites[id] = NULL; } else if (mode == MODE_BOX) { - sPSSData->movingMonSprite = sPSSData->boxMonsSprites[id]; - sPSSData->boxMonsSprites[id] = NULL; + sStorage->movingMonSprite = sStorage->boxMonsSprites[id]; + sStorage->boxMonsSprites[id] = NULL; } else { return; } - sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; - sPSSData->movingMonSprite->oam.priority = GetMonIconPriorityByCursorPos(); - sPSSData->movingMonSprite->subpriority = 7; + sStorage->movingMonSprite->callback = SpriteCB_HeldMon; + sStorage->movingMonSprite->oam.priority = GetMonIconPriorityByCursorPos(); + sStorage->movingMonSprite->subpriority = 7; } static void sub_80CBCAC(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) // party mon { - sPSSData->partySprites[position] = sPSSData->movingMonSprite; - sPSSData->partySprites[position]->oam.priority = 1; - sPSSData->partySprites[position]->subpriority = 12; + sStorage->partySprites[position] = sStorage->movingMonSprite; + sStorage->partySprites[position]->oam.priority = 1; + sStorage->partySprites[position]->subpriority = 12; } else { - sPSSData->boxMonsSprites[position] = sPSSData->movingMonSprite; - sPSSData->boxMonsSprites[position]->oam.priority = 2; - sPSSData->boxMonsSprites[position]->subpriority = 19 - (position % IN_BOX_COLUMNS); + sStorage->boxMonsSprites[position] = sStorage->movingMonSprite; + sStorage->boxMonsSprites[position]->oam.priority = 2; + sStorage->boxMonsSprites[position]->subpriority = 19 - (position % IN_BOX_COLUMNS); } - sPSSData->movingMonSprite->callback = SpriteCallbackDummy; - sPSSData->movingMonSprite = NULL; + sStorage->movingMonSprite->callback = SpriteCallbackDummy; + sStorage->movingMonSprite = NULL; } static void sub_80CBD5C(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) // party mon - sPSSData->field_B00 = &sPSSData->partySprites[position]; + sStorage->field_B00 = &sStorage->partySprites[position]; else - sPSSData->field_B00 = &sPSSData->boxMonsSprites[position]; + sStorage->field_B00 = &sStorage->boxMonsSprites[position]; - sPSSData->movingMonSprite->callback = SpriteCallbackDummy; - sPSSData->field_C5D = 0; + sStorage->movingMonSprite->callback = SpriteCallbackDummy; + sStorage->field_C5D = 0; } static bool8 sub_80CBDC4(void) { - if (sPSSData->field_C5D == 16) + if (sStorage->field_C5D == 16) return FALSE; - sPSSData->field_C5D++; - if (sPSSData->field_C5D & 1) + sStorage->field_C5D++; + if (sStorage->field_C5D & 1) { - (*sPSSData->field_B00)->pos1.y--; - sPSSData->movingMonSprite->pos1.y++; + (*sStorage->field_B00)->pos1.y--; + sStorage->movingMonSprite->pos1.y++; } - (*sPSSData->field_B00)->pos2.x = gSineTable[sPSSData->field_C5D * 8] / 16; - sPSSData->movingMonSprite->pos2.x = -(gSineTable[sPSSData->field_C5D * 8] / 16); - if (sPSSData->field_C5D == 8) + (*sStorage->field_B00)->pos2.x = gSineTable[sStorage->field_C5D * 8] / 16; + sStorage->movingMonSprite->pos2.x = -(gSineTable[sStorage->field_C5D * 8] / 16); + if (sStorage->field_C5D == 8) { - sPSSData->movingMonSprite->oam.priority = (*sPSSData->field_B00)->oam.priority; - sPSSData->movingMonSprite->subpriority = (*sPSSData->field_B00)->subpriority; - (*sPSSData->field_B00)->oam.priority = GetMonIconPriorityByCursorPos(); - (*sPSSData->field_B00)->subpriority = 7; + sStorage->movingMonSprite->oam.priority = (*sStorage->field_B00)->oam.priority; + sStorage->movingMonSprite->subpriority = (*sStorage->field_B00)->subpriority; + (*sStorage->field_B00)->oam.priority = GetMonIconPriorityByCursorPos(); + (*sStorage->field_B00)->subpriority = 7; } - if (sPSSData->field_C5D == 16) + if (sStorage->field_C5D == 16) { - struct Sprite *sprite = sPSSData->movingMonSprite; - sPSSData->movingMonSprite = (*sPSSData->field_B00); - *sPSSData->field_B00 = sprite; + struct Sprite *sprite = sStorage->movingMonSprite; + sStorage->movingMonSprite = (*sStorage->field_B00); + *sStorage->field_B00 = sprite; - sPSSData->movingMonSprite->callback = SpriteCB_HeldMon; - (*sPSSData->field_B00)->callback = SpriteCallbackDummy; + sStorage->movingMonSprite->callback = SpriteCB_HeldMon; + (*sStorage->field_B00)->callback = SpriteCallbackDummy; } return TRUE; @@ -4936,78 +4936,78 @@ static void SetReleaseMon(u8 mode, u8 position) switch (mode) { case MODE_PARTY: - sPSSData->releaseMonSpritePtr = &sPSSData->partySprites[position]; + sStorage->releaseMonSpritePtr = &sStorage->partySprites[position]; break; case MODE_BOX: - sPSSData->releaseMonSpritePtr = &sPSSData->boxMonsSprites[position]; + sStorage->releaseMonSpritePtr = &sStorage->boxMonsSprites[position]; break; case MODE_MOVE: - sPSSData->releaseMonSpritePtr = &sPSSData->movingMonSprite; + sStorage->releaseMonSpritePtr = &sStorage->movingMonSprite; break; default: return; } - if (*sPSSData->releaseMonSpritePtr != NULL) + if (*sStorage->releaseMonSpritePtr != NULL) { - InitSpriteAffineAnim(*sPSSData->releaseMonSpritePtr); - (*sPSSData->releaseMonSpritePtr)->oam.affineMode = ST_OAM_AFFINE_NORMAL; - (*sPSSData->releaseMonSpritePtr)->affineAnims = sAffineAnims_ReleaseMon; - StartSpriteAffineAnim(*sPSSData->releaseMonSpritePtr, RELEASE_ANIM_RELEASE); + InitSpriteAffineAnim(*sStorage->releaseMonSpritePtr); + (*sStorage->releaseMonSpritePtr)->oam.affineMode = ST_OAM_AFFINE_NORMAL; + (*sStorage->releaseMonSpritePtr)->affineAnims = sAffineAnims_ReleaseMon; + StartSpriteAffineAnim(*sStorage->releaseMonSpritePtr, RELEASE_ANIM_RELEASE); } } static bool8 TryHideReleaseMonSprite(void) { - if (*sPSSData->releaseMonSpritePtr == NULL - || (*sPSSData->releaseMonSpritePtr)->invisible) + if (*sStorage->releaseMonSpritePtr == NULL + || (*sStorage->releaseMonSpritePtr)->invisible) return FALSE; - if ((*sPSSData->releaseMonSpritePtr)->affineAnimEnded) - (*sPSSData->releaseMonSpritePtr)->invisible = TRUE; + if ((*sStorage->releaseMonSpritePtr)->affineAnimEnded) + (*sStorage->releaseMonSpritePtr)->invisible = TRUE; return TRUE; } static void DestroyReleaseMonIcon(void) { - if (*sPSSData->releaseMonSpritePtr != NULL) + if (*sStorage->releaseMonSpritePtr != NULL) { - FreeOamMatrix((*sPSSData->releaseMonSpritePtr)->oam.matrixNum); - DestroyBoxMonIcon(*sPSSData->releaseMonSpritePtr); - *sPSSData->releaseMonSpritePtr = NULL; + FreeOamMatrix((*sStorage->releaseMonSpritePtr)->oam.matrixNum); + DestroyBoxMonIcon(*sStorage->releaseMonSpritePtr); + *sStorage->releaseMonSpritePtr = NULL; } } static void ReshowReleaseMon(void) { - if (*sPSSData->releaseMonSpritePtr != NULL) + if (*sStorage->releaseMonSpritePtr != NULL) { - (*sPSSData->releaseMonSpritePtr)->invisible = FALSE; - StartSpriteAffineAnim(*sPSSData->releaseMonSpritePtr, RELEASE_ANIM_CAME_BACK); + (*sStorage->releaseMonSpritePtr)->invisible = FALSE; + StartSpriteAffineAnim(*sStorage->releaseMonSpritePtr, RELEASE_ANIM_CAME_BACK); } } static bool8 ResetReleaseMonSpritePtr(void) { - if (sPSSData->releaseMonSpritePtr == NULL) + if (sStorage->releaseMonSpritePtr == NULL) return FALSE; - if ((*sPSSData->releaseMonSpritePtr)->affineAnimEnded) - sPSSData->releaseMonSpritePtr = NULL; + if ((*sStorage->releaseMonSpritePtr)->affineAnimEnded) + sStorage->releaseMonSpritePtr = NULL; return TRUE; } static void SetMovingMonPriority(u8 priority) { - sPSSData->movingMonSprite->oam.priority = priority; + sStorage->movingMonSprite->oam.priority = priority; } static void SpriteCB_HeldMon(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->cursorSprite->pos1.x; - sprite->pos1.y = sPSSData->cursorSprite->pos1.y + sPSSData->cursorSprite->pos2.y + 4; + sprite->pos1.x = sStorage->cursorSprite->pos1.x; + sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 4; } static u16 TryLoadMonIconTiles(u16 species) @@ -5017,7 +5017,7 @@ static u16 TryLoadMonIconTiles(u16 species) // Search icon list for this species for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->iconSpeciesList[i] == species) + if (sStorage->iconSpeciesList[i] == species) break; } @@ -5027,7 +5027,7 @@ static u16 TryLoadMonIconTiles(u16 species) // Find first empty spot in the list to put it for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->iconSpeciesList[i] == 0) + if (sStorage->iconSpeciesList[i] == 0) break; } @@ -5037,8 +5037,8 @@ static u16 TryLoadMonIconTiles(u16 species) } // Add species to icon list and load tiles - sPSSData->iconSpeciesList[i] = species; - sPSSData->numIconsPerSpecies[i]++; + sStorage->iconSpeciesList[i] = species; + sStorage->numIconsPerSpecies[i]++; offset = 16 * i; CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + offset * 32, 0x200); @@ -5051,10 +5051,10 @@ static void RemoveSpeciesFromIconList(u16 species) for (i = 0; i < MAX_MON_ICONS; i++) { - if (sPSSData->iconSpeciesList[i] == species) + if (sStorage->iconSpeciesList[i] == species) { - if (--sPSSData->numIconsPerSpecies[i] == 0) - sPSSData->iconSpeciesList[i] = SPECIES_NONE; + if (--sStorage->numIconsPerSpecies[i] == 0) + sStorage->iconSpeciesList[i] = SPECIES_NONE; break; } } @@ -5114,15 +5114,15 @@ static void Task_InitBox(u8 taskId) switch (task->tState) { case 0: - sPSSData->wallpaperOffset = 0; - sPSSData->bg2_X = 0; - task->tDmaIdx = RequestDma3Fill(0, sPSSData->wallpaperBgTilemapBuffer, sizeof(sPSSData->wallpaperBgTilemapBuffer), 1); + sStorage->wallpaperOffset = 0; + sStorage->bg2_X = 0; + task->tDmaIdx = RequestDma3Fill(0, sStorage->wallpaperBgTilemapBuffer, sizeof(sStorage->wallpaperBgTilemapBuffer), 1); break; case 1: if (CheckForSpaceForDma3Request(task->tDmaIdx) == -1) return; - SetBgTilemapBuffer(2, sPSSData->wallpaperBgTilemapBuffer); + SetBgTilemapBuffer(2, sStorage->wallpaperBgTilemapBuffer); ShowBg(2); break; case 2: @@ -5156,45 +5156,45 @@ static void SetUpScrollToBox(u8 boxId) { s8 direction = DetermineBoxScrollDirection(boxId); - sPSSData->scrollSpeed = (direction > 0) ? 6 : -6; - sPSSData->scrollUnused1 = (direction > 0) ? 1 : 2; - sPSSData->scrollTimer = 32; - sPSSData->scrollToBoxIdUnused = boxId; - sPSSData->scrollUnused2 = (direction <= 0) ? 5 : 0; - sPSSData->scrollDirectionUnused = direction; + sStorage->scrollSpeed = (direction > 0) ? 6 : -6; + sStorage->scrollUnused1 = (direction > 0) ? 1 : 2; + sStorage->scrollTimer = 32; + sStorage->scrollToBoxIdUnused = boxId; + sStorage->scrollUnused2 = (direction <= 0) ? 5 : 0; + sStorage->scrollDirectionUnused = direction; - sPSSData->scrollUnused3 = (direction > 0) ? 264 : 56; - sPSSData->scrollUnused4 = (direction <= 0) ? 5 : 0; - sPSSData->scrollUnused5 = 0; - sPSSData->scrollUnused6 = 2; - sPSSData->scrollToBoxId = boxId; - sPSSData->scrollDirection = direction; - sPSSData->scrollState = 0; + sStorage->scrollUnused3 = (direction > 0) ? 264 : 56; + sStorage->scrollUnused4 = (direction <= 0) ? 5 : 0; + sStorage->scrollUnused5 = 0; + sStorage->scrollUnused6 = 2; + sStorage->scrollToBoxId = boxId; + sStorage->scrollDirection = direction; + sStorage->scrollState = 0; } static bool8 ScrollToBox(void) { bool8 iconsScrolling; - switch (sPSSData->scrollState) + switch (sStorage->scrollState) { case 0: - LoadWallpaperGfx(sPSSData->scrollToBoxId, sPSSData->scrollDirection); - sPSSData->scrollState++; + LoadWallpaperGfx(sStorage->scrollToBoxId, sStorage->scrollDirection); + sStorage->scrollState++; case 1: if (!WaitForWallpaperGfxLoad()) return TRUE; - InitBoxMonIconScroll(sPSSData->scrollToBoxId, sPSSData->scrollDirection); - CreateIncomingBoxTitle(sPSSData->scrollToBoxId, sPSSData->scrollDirection); - StartBoxScrollArrowsSlide(sPSSData->scrollDirection); + InitBoxMonIconScroll(sStorage->scrollToBoxId, sStorage->scrollDirection); + CreateIncomingBoxTitle(sStorage->scrollToBoxId, sStorage->scrollDirection); + StartBoxScrollArrowsSlide(sStorage->scrollDirection); break; case 2: iconsScrolling = UpdateBoxMonIconScroll(); - if (sPSSData->scrollTimer != 0) + if (sStorage->scrollTimer != 0) { - sPSSData->bg2_X += sPSSData->scrollSpeed; - if (--sPSSData->scrollTimer != 0) + sStorage->bg2_X += sStorage->scrollSpeed; + if (--sStorage->scrollTimer != 0) return TRUE; CycleBoxTitleSprites(); StopBoxScrollArrowsSlide(); @@ -5202,7 +5202,7 @@ static bool8 ScrollToBox(void) return iconsScrolling; } - sPSSData->scrollState++; + sStorage->scrollState++; return TRUE; } @@ -5225,36 +5225,36 @@ static void SetWallpaperForCurrentBox(u8 wallpaperId) { u8 boxId = StorageGetCurrentBox(); SetBoxWallpaper(boxId, wallpaperId); - sPSSData->wallpaperChangeState = 0; + sStorage->wallpaperChangeState = 0; } static bool8 DoWallpaperGfxChange(void) { - switch (sPSSData->wallpaperChangeState) + switch (sStorage->wallpaperChangeState) { case 0: - BeginNormalPaletteFade(sPSSData->boxTitlePalBits, 1, 0, 16, RGB_WHITEALPHA); - sPSSData->wallpaperChangeState++; + BeginNormalPaletteFade(sStorage->boxTitlePalBits, 1, 0, 16, RGB_WHITEALPHA); + sStorage->wallpaperChangeState++; break; case 1: if (!UpdatePaletteFade()) { u8 curBox = StorageGetCurrentBox(); LoadWallpaperGfx(curBox, 0); - sPSSData->wallpaperChangeState++; + sStorage->wallpaperChangeState++; } break; case 2: if (WaitForWallpaperGfxLoad() == TRUE) { CycleBoxTitleColor(); - BeginNormalPaletteFade(sPSSData->boxTitlePalBits, 1, 16, 0, RGB_WHITEALPHA); - sPSSData->wallpaperChangeState++; + BeginNormalPaletteFade(sStorage->boxTitlePalBits, 1, 16, 0, RGB_WHITEALPHA); + sStorage->wallpaperChangeState++; } break; case 3: if (!UpdatePaletteFade()) - sPSSData->wallpaperChangeState++; + sStorage->wallpaperChangeState++; break; case 4: return FALSE; @@ -5270,50 +5270,50 @@ static void LoadWallpaperGfx(u8 boxId, s8 direction) void *iconGfx; u32 tilesSize, iconSize; - sPSSData->wallpaperLoadState = 0; - sPSSData->wallpaperLoadBoxId = boxId; - sPSSData->wallpaperLoadDir = direction; - if (sPSSData->wallpaperLoadDir != 0) + sStorage->wallpaperLoadState = 0; + sStorage->wallpaperLoadBoxId = boxId; + sStorage->wallpaperLoadDir = direction; + if (sStorage->wallpaperLoadDir != 0) { - sPSSData->wallpaperOffset = (sPSSData->wallpaperOffset == 0); - TrimOldWallpaper(sPSSData->wallpaperBgTilemapBuffer); + sStorage->wallpaperOffset = (sStorage->wallpaperOffset == 0); + TrimOldWallpaper(sStorage->wallpaperBgTilemapBuffer); } - wallpaperId = GetBoxWallpaper(sPSSData->wallpaperLoadBoxId); + wallpaperId = GetBoxWallpaper(sStorage->wallpaperLoadBoxId); if (wallpaperId != WALLPAPER_FRIENDS) { wallpaper = &sWallpapers[wallpaperId]; - LZ77UnCompWram(wallpaper->tilemap, sPSSData->wallpaperTilemap); - DrawWallpaper(sPSSData->wallpaperTilemap, sPSSData->wallpaperLoadDir, sPSSData->wallpaperOffset); + LZ77UnCompWram(wallpaper->tilemap, sStorage->wallpaperTilemap); + DrawWallpaper(sStorage->wallpaperTilemap, sStorage->wallpaperLoadDir, sStorage->wallpaperOffset); - if (sPSSData->wallpaperLoadDir != 0) - LoadPalette(wallpaper->palettes, (sPSSData->wallpaperOffset * 32) + 0x40, 0x40); + if (sStorage->wallpaperLoadDir != 0) + LoadPalette(wallpaper->palettes, (sStorage->wallpaperOffset * 32) + 0x40, 0x40); else - CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[(sPSSData->wallpaperOffset * 32) + 0x40], 0x40); + CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[(sStorage->wallpaperOffset * 32) + 0x40], 0x40); - sPSSData->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); - LoadBgTiles(2, sPSSData->wallpaperTiles, tilesSize, sPSSData->wallpaperOffset << 8); + sStorage->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); + LoadBgTiles(2, sStorage->wallpaperTiles, tilesSize, sStorage->wallpaperOffset << 8); } else { wallpaper = &sWaldaWallpapers[GetWaldaWallpaperPatternId()]; - LZ77UnCompWram(wallpaper->tilemap, sPSSData->wallpaperTilemap); - DrawWallpaper(sPSSData->wallpaperTilemap, sPSSData->wallpaperLoadDir, sPSSData->wallpaperOffset); + LZ77UnCompWram(wallpaper->tilemap, sStorage->wallpaperTilemap); + DrawWallpaper(sStorage->wallpaperTilemap, sStorage->wallpaperLoadDir, sStorage->wallpaperOffset); - CpuCopy16(wallpaper->palettes, sPSSData->wallpaperTilemap, 0x40); - CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->wallpaperTilemap[1], 4); - CpuCopy16(GetWaldaWallpaperColorsPtr(), &sPSSData->wallpaperTilemap[17], 4); + CpuCopy16(wallpaper->palettes, sStorage->wallpaperTilemap, 0x40); + CpuCopy16(GetWaldaWallpaperColorsPtr(), &sStorage->wallpaperTilemap[1], 4); + CpuCopy16(GetWaldaWallpaperColorsPtr(), &sStorage->wallpaperTilemap[17], 4); - if (sPSSData->wallpaperLoadDir != 0) - LoadPalette(sPSSData->wallpaperTilemap, (sPSSData->wallpaperOffset * 32) + 0x40, 0x40); + if (sStorage->wallpaperLoadDir != 0) + LoadPalette(sStorage->wallpaperTilemap, (sStorage->wallpaperOffset * 32) + 0x40, 0x40); else - CpuCopy16(sPSSData->wallpaperTilemap, &gPlttBufferUnfaded[(sPSSData->wallpaperOffset * 32) + 0x40], 0x40); + CpuCopy16(sStorage->wallpaperTilemap, &gPlttBufferUnfaded[(sStorage->wallpaperOffset * 32) + 0x40], 0x40); - sPSSData->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); + sStorage->wallpaperTiles = malloc_and_decompress(wallpaper->tiles, &tilesSize); iconGfx = malloc_and_decompress(sWaldaWallpaperIcons[GetWaldaWallpaperIconId()], &iconSize); - CpuCopy32(iconGfx, sPSSData->wallpaperTiles + 0x800, iconSize); + CpuCopy32(iconGfx, sStorage->wallpaperTiles + 0x800, iconSize); Free(iconGfx); - LoadBgTiles(2, sPSSData->wallpaperTiles, tilesSize, sPSSData->wallpaperOffset << 8); + LoadBgTiles(2, sStorage->wallpaperTiles, tilesSize, sStorage->wallpaperOffset << 8); } CopyBgTilemapBufferToVram(2); @@ -5324,8 +5324,8 @@ static bool32 WaitForWallpaperGfxLoad(void) if (IsDma3ManagerBusyWithBgCopy()) return FALSE; - if (sPSSData->wallpaperTiles != NULL) - FREE_AND_SET_NULL(sPSSData->wallpaperTiles); + if (sStorage->wallpaperTiles != NULL) + FREE_AND_SET_NULL(sStorage->wallpaperTiles); return TRUE; } @@ -5333,7 +5333,7 @@ static bool32 WaitForWallpaperGfxLoad(void) static void DrawWallpaper(const void *tilemap, s8 direction, u8 offset) { s16 var = (offset * 2) + 3; - s16 x = ((sPSSData->bg2_X / 8 + 10) + (direction * 24)) & 0x3F; + s16 x = ((sStorage->bg2_X / 8 + 10) + (direction * 24)) & 0x3F; CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, offset << 8, var); @@ -5351,7 +5351,7 @@ static void TrimOldWallpaper(void *tilemap) { u16 i; u16 *dest = tilemap; - s16 r3 = ((sPSSData->bg2_X / 8) + 30) & 0x3F; + s16 r3 = ((sStorage->bg2_X / 8) + 30) & 0x3F; if (r3 <= 31) dest += r3 + 0x260; @@ -5375,33 +5375,33 @@ static void InitBoxTitle(u8 boxId) s16 x; u16 i; - struct SpriteSheet spriteSheet = {sPSSData->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; + struct SpriteSheet spriteSheet = {sStorage->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; struct SpritePalette palettes[] = { - {sPSSData->boxTitlePal, PALTAG_BOX_TITLE}, + {sStorage->boxTitlePal, PALTAG_BOX_TITLE}, {} }; u16 wallpaperId = GetBoxWallpaper(boxId); - sPSSData->boxTitlePal[14] = sBoxTitleColors[wallpaperId][0]; // Shadow color - sPSSData->boxTitlePal[15] = sBoxTitleColors[wallpaperId][1]; // Text Color + sStorage->boxTitlePal[14] = sBoxTitleColors[wallpaperId][0]; // Shadow color + sStorage->boxTitlePal[15] = sBoxTitleColors[wallpaperId][1]; // Text Color LoadSpritePalettes(palettes); - sPSSData->boxTitlePalBits = 0x3f0; + sStorage->boxTitlePalBits = 0x3f0; tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); - sPSSData->boxTitlePalOffset = 0x10e + 16 * tagIndex; - sPSSData->boxTitlePalBits |= 0x10000 << tagIndex; + sStorage->boxTitlePalOffset = 0x10e + 16 * tagIndex; + sStorage->boxTitlePalBits |= 0x10000 << tagIndex; // The below seems intended to have separately tracked // the incoming wallpaper title's palette, but as they now // share a palette tag, all colors (and fields in some cases) // this is redundant along with the use of boxTitleAltPalOffset tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); - sPSSData->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; - sPSSData->boxTitlePalBits |= 0x10000 << tagIndex; + sStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; + sStorage->boxTitlePalBits |= 0x10000 << tagIndex; - StringCopyPadded(sPSSData->boxTitleText, GetBoxNamePtr(boxId), 0, 8); - DrawTextWindowAndBufferTiles(sPSSData->boxTitleText, sPSSData->boxTitleTiles, 0, 0, 2); + StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + DrawTextWindowAndBufferTiles(sStorage->boxTitleText, sStorage->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); @@ -5409,10 +5409,10 @@ static void InitBoxTitle(u8 boxId) for (i = 0; i < 2; i++) { u8 spriteId = CreateSprite(&sSpriteTemplate_BoxTitle, x + i * 32, 28, 24); - sPSSData->curBoxTitleSprites[i] = &gSprites[spriteId]; - StartSpriteAnim(sPSSData->curBoxTitleSprites[i], i); + sStorage->curBoxTitleSprites[i] = &gSprites[spriteId]; + StartSpriteAnim(sStorage->curBoxTitleSprites[i], i); } - sPSSData->boxTitleCycleId = 0; + sStorage->boxTitleCycleId = 0; } // Sprite data for moving title text @@ -5428,25 +5428,25 @@ static void CreateIncomingBoxTitle(u8 boxId, s8 direction) u16 palOffset; s16 x, adjustedX; u16 i; - struct SpriteSheet spriteSheet = {sPSSData->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; + struct SpriteSheet spriteSheet = {sStorage->boxTitleTiles, 0x200, GFXTAG_BOX_TITLE}; struct SpriteTemplate template = sSpriteTemplate_BoxTitle; - sPSSData->boxTitleCycleId = (sPSSData->boxTitleCycleId == 0); - if (sPSSData->boxTitleCycleId == 0) + sStorage->boxTitleCycleId = (sStorage->boxTitleCycleId == 0); + if (sStorage->boxTitleCycleId == 0) { spriteSheet.tag = GFXTAG_BOX_TITLE; - palOffset = sPSSData->boxTitlePalOffset; + palOffset = sStorage->boxTitlePalOffset; } else { spriteSheet.tag = GFXTAG_BOX_TITLE_ALT; - palOffset = sPSSData->boxTitlePalOffset; + palOffset = sStorage->boxTitlePalOffset; template.tileTag = GFXTAG_BOX_TITLE_ALT; template.paletteTag = PALTAG_BOX_TITLE; } - StringCopyPadded(sPSSData->boxTitleText, GetBoxNamePtr(boxId), 0, 8); - DrawTextWindowAndBufferTiles(sPSSData->boxTitleText, sPSSData->boxTitleTiles, 0, 0, 2); + StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + DrawTextWindowAndBufferTiles(sStorage->boxTitleText, sStorage->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); LoadPalette(sBoxTitleColors[GetBoxWallpaper(boxId)], palOffset, sizeof(sBoxTitleColors[0])); x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); @@ -5458,28 +5458,28 @@ static void CreateIncomingBoxTitle(u8 boxId, s8 direction) { u8 spriteId = CreateSprite(&template, i * 32 + adjustedX, 28, 24); - sPSSData->nextBoxTitleSprites[i] = &gSprites[spriteId]; - sPSSData->nextBoxTitleSprites[i]->sSpeed = (-direction) * 6; - sPSSData->nextBoxTitleSprites[i]->sIncomingX = i * 32 + x; - sPSSData->nextBoxTitleSprites[i]->sIncomingDelay = 0; - sPSSData->nextBoxTitleSprites[i]->callback = SpriteCB_IncomingBoxTitle; - StartSpriteAnim(sPSSData->nextBoxTitleSprites[i], i); + sStorage->nextBoxTitleSprites[i] = &gSprites[spriteId]; + sStorage->nextBoxTitleSprites[i]->sSpeed = (-direction) * 6; + sStorage->nextBoxTitleSprites[i]->sIncomingX = i * 32 + x; + sStorage->nextBoxTitleSprites[i]->sIncomingDelay = 0; + sStorage->nextBoxTitleSprites[i]->callback = SpriteCB_IncomingBoxTitle; + StartSpriteAnim(sStorage->nextBoxTitleSprites[i], i); - sPSSData->curBoxTitleSprites[i]->sSpeed = (-direction) * 6; - sPSSData->curBoxTitleSprites[i]->sOutgoingDelay = 1; - sPSSData->curBoxTitleSprites[i]->callback = SpriteCB_OutgoingBoxTitle; + sStorage->curBoxTitleSprites[i]->sSpeed = (-direction) * 6; + sStorage->curBoxTitleSprites[i]->sOutgoingDelay = 1; + sStorage->curBoxTitleSprites[i]->callback = SpriteCB_OutgoingBoxTitle; } } static void CycleBoxTitleSprites(void) { - if (sPSSData->boxTitleCycleId == 0) + if (sStorage->boxTitleCycleId == 0) FreeSpriteTilesByTag(GFXTAG_BOX_TITLE_ALT); else FreeSpriteTilesByTag(GFXTAG_BOX_TITLE); - sPSSData->curBoxTitleSprites[0] = sPSSData->nextBoxTitleSprites[0]; - sPSSData->curBoxTitleSprites[1] = sPSSData->nextBoxTitleSprites[1]; + sStorage->curBoxTitleSprites[0] = sStorage->nextBoxTitleSprites[0]; + sStorage->curBoxTitleSprites[1] = sStorage->nextBoxTitleSprites[1]; } static void SpriteCB_IncomingBoxTitle(struct Sprite *sprite) @@ -5515,10 +5515,10 @@ static void CycleBoxTitleColor(void) { u8 boxId = StorageGetCurrentBox(); u8 wallpaperId = GetBoxWallpaper(boxId); - if (sPSSData->boxTitleCycleId == 0) - CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sPSSData->boxTitlePalOffset, 4); + if (sStorage->boxTitleCycleId == 0) + CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sStorage->boxTitlePalOffset, 4); else - CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sPSSData->boxTitleAltPalOffset, 4); + CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + sStorage->boxTitleAltPalOffset, 4); } static s16 GetBoxTitleBaseX(const u8 *string) @@ -5544,7 +5544,7 @@ static void CreateBoxScrollArrows(void) struct Sprite *sprite = &gSprites[spriteId]; StartSpriteAnim(sprite, i); sprite->sSpeed = (i == 0) ? -1 : 1; - sPSSData->arrowSprites[i] = sprite; + sStorage->arrowSprites[i] = sprite; } } if (IsCursorOnBoxTitle()) @@ -5558,25 +5558,25 @@ static void StartBoxScrollArrowsSlide(s8 direction) for (i = 0; i < 2; i++) { - sPSSData->arrowSprites[i]->pos2.x = 0; - sPSSData->arrowSprites[i]->sState = 2; + sStorage->arrowSprites[i]->pos2.x = 0; + sStorage->arrowSprites[i]->sState = 2; } if (direction < 0) { - sPSSData->arrowSprites[0]->sTimer = 29; - sPSSData->arrowSprites[1]->sTimer = 5; - sPSSData->arrowSprites[0]->data[2] = 72; - sPSSData->arrowSprites[1]->data[2] = 72; + sStorage->arrowSprites[0]->sTimer = 29; + sStorage->arrowSprites[1]->sTimer = 5; + sStorage->arrowSprites[0]->data[2] = 72; + sStorage->arrowSprites[1]->data[2] = 72; } else { - sPSSData->arrowSprites[0]->sTimer = 5; - sPSSData->arrowSprites[1]->sTimer = 29; - sPSSData->arrowSprites[0]->data[2] = DISPLAY_WIDTH + 8; - sPSSData->arrowSprites[1]->data[2] = DISPLAY_WIDTH + 8; + sStorage->arrowSprites[0]->sTimer = 5; + sStorage->arrowSprites[1]->sTimer = 29; + sStorage->arrowSprites[0]->data[2] = DISPLAY_WIDTH + 8; + sStorage->arrowSprites[1]->data[2] = DISPLAY_WIDTH + 8; } - sPSSData->arrowSprites[0]->data[7] = 0; - sPSSData->arrowSprites[1]->data[7] = 1; + sStorage->arrowSprites[0]->data[7] = 0; + sStorage->arrowSprites[1]->data[7] = 1; } // New box's scroll arrows have entered, stop sliding and set their position @@ -5586,9 +5586,9 @@ static void StopBoxScrollArrowsSlide(void) for (i = 0; i < 2; i++) { - sPSSData->arrowSprites[i]->pos1.x = 136 * i + 92; - sPSSData->arrowSprites[i]->pos2.x = 0; - sPSSData->arrowSprites[i]->invisible = FALSE; + sStorage->arrowSprites[i]->pos1.x = 136 * i + 92; + sStorage->arrowSprites[i]->pos2.x = 0; + sStorage->arrowSprites[i]->invisible = FALSE; } AnimateBoxScrollArrows(TRUE); } @@ -5603,17 +5603,17 @@ static void AnimateBoxScrollArrows(bool8 animate) // Start arrows moving for (i = 0; i < 2; i++) { - sPSSData->arrowSprites[i]->sState = 1; - sPSSData->arrowSprites[i]->sTimer = 0; - sPSSData->arrowSprites[i]->data[2] = 0; - sPSSData->arrowSprites[i]->data[4] = 0; + sStorage->arrowSprites[i]->sState = 1; + sStorage->arrowSprites[i]->sTimer = 0; + sStorage->arrowSprites[i]->data[2] = 0; + sStorage->arrowSprites[i]->data[4] = 0; } } else { // Stop arrows moving for (i = 0; i < 2; i++) - sPSSData->arrowSprites[i]->sState = 0; + sStorage->arrowSprites[i]->sState = 0; } } @@ -5640,7 +5640,7 @@ static void SpriteCB_Arrow(struct Sprite *sprite) sprite->sState = 3; break; case 3: - sprite->pos1.x -= sPSSData->scrollSpeed; + sprite->pos1.x -= sStorage->scrollSpeed; if (sprite->pos1.x <= 72 || sprite->pos1.x >= DISPLAY_WIDTH + 8) sprite->invisible = TRUE; if (--sprite->sTimer == 0) @@ -5651,7 +5651,7 @@ static void SpriteCB_Arrow(struct Sprite *sprite) } break; case 4: - sprite->pos1.x -= sPSSData->scrollSpeed; + sprite->pos1.x -= sStorage->scrollSpeed; break; } } @@ -5675,7 +5675,7 @@ static struct Sprite *CreateChooseBoxArrows(u16 x, u16 y, u8 animId, u8 priority static void sub_80CD36C(void) { - if (sPSSData->boxOption != OPTION_DEPOSIT) + if (sStorage->boxOption != OPTION_DEPOSIT) sCursorArea = CURSOR_AREA_IN_BOX; else sCursorArea = CURSOR_AREA_IN_PARTY; @@ -5687,8 +5687,8 @@ static void sub_80CD36C(void) sAutoActionOn = FALSE; ClearSavedCursorPos(); CreateCursorSprites(); - sPSSData->cursorPrevHorizPos = 1; - sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; + sStorage->cursorPrevHorizPos = 1; + sStorage->inBoxMovingMode = MOVE_MODE_NORMAL; TryRefreshDisplayMon(); } @@ -5696,11 +5696,11 @@ static void sub_80CD3EC(void) { CreateCursorSprites(); ReshowDisplayMon(); - sPSSData->cursorPrevHorizPos = 1; - sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; + sStorage->cursorPrevHorizPos = 1; + sStorage->inBoxMovingMode = MOVE_MODE_NORMAL; if (sIsMonBeingMoved) { - sPSSData->movingMon = sSavedMovingMon; + sStorage->movingMon = sSavedMovingMon; CreateMovingMonIcon(); } } @@ -5762,58 +5762,58 @@ static bool8 UpdateCursorPos(void) { s16 tmp; - if (sPSSData->cursorMoveSteps == 0) + if (sStorage->cursorMoveSteps == 0) { - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return FALSE; else return IsItemIconAnimActive(); } - else if (--sPSSData->cursorMoveSteps != 0) + else if (--sStorage->cursorMoveSteps != 0) { // Update position toward target - sPSSData->cursorNewX += sPSSData->cursorSpeedX; - sPSSData->cursorNewY += sPSSData->cursorSpeedY; - sPSSData->cursorSprite->pos1.x = sPSSData->cursorNewX >> 8; - sPSSData->cursorSprite->pos1.y = sPSSData->cursorNewY >> 8; + sStorage->cursorNewX += sStorage->cursorSpeedX; + sStorage->cursorNewY += sStorage->cursorSpeedY; + sStorage->cursorSprite->pos1.x = sStorage->cursorNewX >> 8; + sStorage->cursorSprite->pos1.y = sStorage->cursorNewY >> 8; // Limit cursor on right - if (sPSSData->cursorSprite->pos1.x > DISPLAY_WIDTH + 16) + if (sStorage->cursorSprite->pos1.x > DISPLAY_WIDTH + 16) { - tmp = sPSSData->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16); - sPSSData->cursorSprite->pos1.x = tmp + 64; + tmp = sStorage->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16); + sStorage->cursorSprite->pos1.x = tmp + 64; } // Limit cursor on left - if (sPSSData->cursorSprite->pos1.x < 64) + if (sStorage->cursorSprite->pos1.x < 64) { - tmp = 64 - sPSSData->cursorSprite->pos1.x; - sPSSData->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp; + tmp = 64 - sStorage->cursorSprite->pos1.x; + sStorage->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp; } // Limit cursor on bottom - if (sPSSData->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16) + if (sStorage->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16) { - tmp = sPSSData->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16); - sPSSData->cursorSprite->pos1.y = tmp - 16; + tmp = sStorage->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16); + sStorage->cursorSprite->pos1.y = tmp - 16; } // Limit cursor on top - if (sPSSData->cursorSprite->pos1.y < -16) + if (sStorage->cursorSprite->pos1.y < -16) { - tmp = -16 - sPSSData->cursorSprite->pos1.y; - sPSSData->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp; + tmp = -16 - sStorage->cursorSprite->pos1.y; + sStorage->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp; } // Cursor flips vertically when moving on/off the top buttons - if (sPSSData->cursorFlipTimer && --sPSSData->cursorFlipTimer == 0) - sPSSData->cursorSprite->vFlip = (sPSSData->cursorSprite->vFlip == FALSE); + if (sStorage->cursorFlipTimer && --sStorage->cursorFlipTimer == 0) + sStorage->cursorSprite->vFlip = (sStorage->cursorSprite->vFlip == FALSE); } else { // Time is up for cursor movement, make sure it's exactly at target - sPSSData->cursorSprite->pos1.x = sPSSData->cursorTargetX; - sPSSData->cursorSprite->pos1.y = sPSSData->cursorTargetY; + sStorage->cursorSprite->pos1.x = sStorage->cursorTargetX; + sStorage->cursorSprite->pos1.y = sStorage->cursorTargetY; DoCursorNewPosUpdate(); } @@ -5825,74 +5825,74 @@ static void InitNewCursorPos(u8 newCursorArea, u8 newCursorPosition) u16 x, y; GetCursorCoordsByPos(newCursorArea, newCursorPosition, &x, &y); - sPSSData->newCursorArea = newCursorArea; - sPSSData->newCursorPosition = newCursorPosition; - sPSSData->cursorTargetX = x; - sPSSData->cursorTargetY = y; + sStorage->newCursorArea = newCursorArea; + sStorage->newCursorPosition = newCursorPosition; + sStorage->cursorTargetX = x; + sStorage->cursorTargetY = y; } static void InitCursorMove(void) { int yDistance, xDistance; - if (sPSSData->cursorVerticalWrap != 0 || sPSSData->cursorHorizontalWrap != 0) - sPSSData->cursorMoveSteps = 12; + if (sStorage->cursorVerticalWrap != 0 || sStorage->cursorHorizontalWrap != 0) + sStorage->cursorMoveSteps = 12; else - sPSSData->cursorMoveSteps = 6; + sStorage->cursorMoveSteps = 6; - if (sPSSData->cursorFlipTimer) - sPSSData->cursorFlipTimer = sPSSData->cursorMoveSteps >> 1; + if (sStorage->cursorFlipTimer) + sStorage->cursorFlipTimer = sStorage->cursorMoveSteps >> 1; - switch (sPSSData->cursorVerticalWrap) + switch (sStorage->cursorVerticalWrap) { default: // No wrap - yDistance = sPSSData->cursorTargetY - sPSSData->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY - sStorage->cursorSprite->pos1.y; break; case -1: // Wrap from top to bottom - yDistance = sPSSData->cursorTargetY - 192 - sPSSData->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY - 192 - sStorage->cursorSprite->pos1.y; break; case 1: // Wrap from bottom to top - yDistance = sPSSData->cursorTargetY + 192 - sPSSData->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY + 192 - sStorage->cursorSprite->pos1.y; break; } - switch (sPSSData->cursorHorizontalWrap) + switch (sStorage->cursorHorizontalWrap) { default: // No Wrap - xDistance = sPSSData->cursorTargetX - sPSSData->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX - sStorage->cursorSprite->pos1.x; break; case -1: // Wrap from left to right - xDistance = sPSSData->cursorTargetX - 192 - sPSSData->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX - 192 - sStorage->cursorSprite->pos1.x; break; case 1: // Wrap from right to left - xDistance = sPSSData->cursorTargetX + 192 - sPSSData->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX + 192 - sStorage->cursorSprite->pos1.x; break; } yDistance <<= 8; xDistance <<= 8; - sPSSData->cursorSpeedX = xDistance / sPSSData->cursorMoveSteps; - sPSSData->cursorSpeedY = yDistance / sPSSData->cursorMoveSteps; - sPSSData->cursorNewX = sPSSData->cursorSprite->pos1.x << 8; - sPSSData->cursorNewY = sPSSData->cursorSprite->pos1.y << 8; + sStorage->cursorSpeedX = xDistance / sStorage->cursorMoveSteps; + sStorage->cursorSpeedY = yDistance / sStorage->cursorMoveSteps; + sStorage->cursorNewX = sStorage->cursorSprite->pos1.x << 8; + sStorage->cursorNewY = sStorage->cursorSprite->pos1.y << 8; } static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) { InitNewCursorPos(newCursorArea, newCursorPosition); InitCursorMove(); - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); + if (sStorage->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_STILL); } else { if (!IsMovingItem()) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_STILL); } - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { if (sCursorArea == CURSOR_AREA_IN_BOX) TryHideItemIconAtPos(CURSOR_AREA_IN_BOX, sCursorPosition); @@ -5907,8 +5907,8 @@ static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) if (newCursorArea == CURSOR_AREA_IN_PARTY && sCursorArea != CURSOR_AREA_IN_PARTY) { - sPSSData->cursorPrevHorizPos = 1; - sPSSData->cursorShadowSprite->invisible = TRUE; + sStorage->cursorPrevHorizPos = 1; + sStorage->cursorShadowSprite->invisible = TRUE; } switch (newCursorArea) @@ -5916,19 +5916,19 @@ static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) case CURSOR_AREA_IN_PARTY: case CURSOR_AREA_BOX_TITLE: case CURSOR_AREA_BUTTONS: - sPSSData->cursorSprite->oam.priority = 1; - sPSSData->cursorShadowSprite->invisible = TRUE; - sPSSData->cursorShadowSprite->oam.priority = 1; + sStorage->cursorSprite->oam.priority = 1; + sStorage->cursorShadowSprite->invisible = TRUE; + sStorage->cursorShadowSprite->oam.priority = 1; break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode != MOVE_MODE_NORMAL) + if (sStorage->inBoxMovingMode != MOVE_MODE_NORMAL) { - sPSSData->cursorSprite->oam.priority = 0; - sPSSData->cursorShadowSprite->invisible = TRUE; + sStorage->cursorSprite->oam.priority = 0; + sStorage->cursorShadowSprite->invisible = TRUE; } else { - sPSSData->cursorSprite->oam.priority = 2; + sStorage->cursorSprite->oam.priority = 2; if (sCursorArea == CURSOR_AREA_IN_BOX && sIsMonBeingMoved) SetMovingMonPriority(2); } @@ -5938,17 +5938,17 @@ static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) static void DoCursorNewPosUpdate(void) { - sCursorArea = sPSSData->newCursorArea; - sCursorPosition = sPSSData->newCursorPosition; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + sCursorArea = sStorage->newCursorArea; + sCursorPosition = sStorage->newCursorPosition; + if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); + if (sStorage->inBoxMovingMode == MOVE_MODE_NORMAL && !sIsMonBeingMoved) + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); } else { if (!IsMovingItem()) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); } TryRefreshDisplayMon(); @@ -5961,16 +5961,16 @@ static void DoCursorNewPosUpdate(void) AnimateBoxScrollArrows(TRUE); break; case CURSOR_AREA_IN_PARTY: - sPSSData->cursorShadowSprite->subpriority = 13; + sStorage->cursorShadowSprite->subpriority = 13; SetMovingMonPriority(1); break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) + if (sStorage->inBoxMovingMode == MOVE_MODE_NORMAL) { - sPSSData->cursorSprite->oam.priority = 1; - sPSSData->cursorShadowSprite->oam.priority = 2; - sPSSData->cursorShadowSprite->subpriority = 21; - sPSSData->cursorShadowSprite->invisible = FALSE; + sStorage->cursorSprite->oam.priority = 1; + sStorage->cursorShadowSprite->oam.priority = 2; + sStorage->cursorShadowSprite->subpriority = 21; + sStorage->cursorShadowSprite->invisible = FALSE; SetMovingMonPriority(2); } break; @@ -5991,8 +5991,8 @@ static void SetCursorInParty(void) if (partyCount >= PARTY_SIZE) partyCount = PARTY_SIZE - 1; } - if (sPSSData->cursorSprite->vFlip) - sPSSData->cursorFlipTimer = 1; + if (sStorage->cursorSprite->vFlip) + sStorage->cursorFlipTimer = 1; SetCursorPosition(CURSOR_AREA_IN_PARTY, partyCount); } @@ -6027,8 +6027,8 @@ static void InitMonPlaceChange(u8 type) [CHANGE_SHIFT] = MonPlaceChange_Shift, }; - sPSSData->monPlaceChangeFunc = placeChangeFuncs[type]; - sPSSData->monPlaceChangeState = 0; + sStorage->monPlaceChangeFunc = placeChangeFuncs[type]; + sStorage->monPlaceChangeState = 0; } // No Shift while moving multiple Pokémon, only grab and place @@ -6036,39 +6036,39 @@ static void InitMonPlaceChange(u8 type) static void InitMultiMonPlaceChange(bool8 up) { if (!up) - sPSSData->monPlaceChangeFunc = MultiMonPlaceChange_Down; + sStorage->monPlaceChangeFunc = MultiMonPlaceChange_Down; else - sPSSData->monPlaceChangeFunc = MultiMonPlaceChange_Up; + sStorage->monPlaceChangeFunc = MultiMonPlaceChange_Up; - sPSSData->monPlaceChangeState = 0; + sStorage->monPlaceChangeState = 0; } static bool8 DoMonPlaceChange(void) { - return sPSSData->monPlaceChangeFunc(); + return sStorage->monPlaceChangeFunc(); } static bool8 MonPlaceChange_Grab(void) { - switch (sPSSData->monPlaceChangeState) + switch (sStorage->monPlaceChangeState) { case 0: if (sIsMonBeingMoved) return FALSE; - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); - sPSSData->monPlaceChangeState++; + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_OPEN); + sStorage->monPlaceChangeState++; break; case 1: if (!MonPlaceChange_CursorDown()) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_FIST); MoveMon(); - sPSSData->monPlaceChangeState++; + sStorage->monPlaceChangeState++; } break; case 2: if (!MonPlaceChange_CursorUp()) - sPSSData->monPlaceChangeState++; + sStorage->monPlaceChangeState++; break; case 3: return FALSE; @@ -6079,21 +6079,21 @@ static bool8 MonPlaceChange_Grab(void) static bool8 MonPlaceChange_Place(void) { - switch (sPSSData->monPlaceChangeState) + switch (sStorage->monPlaceChangeState) { case 0: if (!MonPlaceChange_CursorDown()) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_OPEN); PlaceMon(); - sPSSData->monPlaceChangeState++; + sStorage->monPlaceChangeState++; } break; case 1: if (!MonPlaceChange_CursorUp()) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); - sPSSData->monPlaceChangeState++; + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); + sStorage->monPlaceChangeState++; } break; case 2: @@ -6105,30 +6105,30 @@ static bool8 MonPlaceChange_Place(void) static bool8 MonPlaceChange_Shift(void) { - switch (sPSSData->monPlaceChangeState) + switch (sStorage->monPlaceChangeState) { case 0: switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - sPSSData->field_D91 = TOTAL_BOXES_COUNT; + sStorage->field_D91 = TOTAL_BOXES_COUNT; break; case CURSOR_AREA_IN_BOX: - sPSSData->field_D91 = StorageGetCurrentBox(); + sStorage->field_D91 = StorageGetCurrentBox(); break; default: return FALSE; } - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_OPEN); - sub_80CBD5C(sPSSData->field_D91, sCursorPosition); - sPSSData->monPlaceChangeState++; + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_OPEN); + sub_80CBD5C(sStorage->field_D91, sCursorPosition); + sStorage->monPlaceChangeState++; break; case 1: if (!sub_80CBDC4()) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); - SetShiftedMonData(sPSSData->field_D91, sCursorPosition); - sPSSData->monPlaceChangeState++; + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_FIST); + SetShiftedMonData(sStorage->field_D91, sCursorPosition); + sStorage->monPlaceChangeState++; } break; case 2: @@ -6150,13 +6150,13 @@ static bool8 MultiMonPlaceChange_Up(void) static bool8 MonPlaceChange_CursorDown(void) { - switch (sPSSData->cursorSprite->pos2.y) + switch (sStorage->cursorSprite->pos2.y) { default: - sPSSData->cursorSprite->pos2.y++; + sStorage->cursorSprite->pos2.y++; break; case 0: - sPSSData->cursorSprite->pos2.y++; + sStorage->cursorSprite->pos2.y++; break; case 8: // Cursor has reached bottom return FALSE; @@ -6167,12 +6167,12 @@ static bool8 MonPlaceChange_CursorDown(void) static bool8 MonPlaceChange_CursorUp(void) { - switch (sPSSData->cursorSprite->pos2.y) + switch (sStorage->cursorSprite->pos2.y) { case 0: // Cursor has reached top return FALSE; default: - sPSSData->cursorSprite->pos2.y--; + sStorage->cursorSprite->pos2.y--; break; } @@ -6188,7 +6188,7 @@ static void MoveMon(void) SetMovingMonSprite(MODE_PARTY, sCursorPosition); break; case CURSOR_AREA_IN_BOX: - if (sPSSData->inBoxMovingMode == MOVE_MODE_NORMAL) + if (sStorage->inBoxMovingMode == MOVE_MODE_NORMAL) { SetMovingMonData(StorageGetCurrentBox(), sCursorPosition); SetMovingMonSprite(MODE_BOX, sCursorPosition); @@ -6231,9 +6231,9 @@ static void RefreshDisplayMon(void) static void SetMovingMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) - sPSSData->movingMon = gPlayerParty[sCursorPosition]; + sStorage->movingMon = gPlayerParty[sCursorPosition]; else - BoxMonAtToMon(boxId, position, &sPSSData->movingMon); + BoxMonAtToMon(boxId, position, &sStorage->movingMon); PurgeMonOrBoxMon(boxId, position); sMovingMonOrigBoxId = boxId; @@ -6244,12 +6244,12 @@ static void SetPlacedMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) { - gPlayerParty[position] = sPSSData->movingMon; + gPlayerParty[position] = sStorage->movingMon; } else { - BoxMonRestorePP(&sPSSData->movingMon.box); - SetBoxMonAt(boxId, position, &sPSSData->movingMon.box); + BoxMonRestorePP(&sStorage->movingMon.box); + SetBoxMonAt(boxId, position, &sStorage->movingMon.box); } } @@ -6264,13 +6264,13 @@ static void PurgeMonOrBoxMon(u8 boxId, u8 position) static void SetShiftedMonData(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) - sPSSData->tempMon = gPlayerParty[position]; + sStorage->tempMon = gPlayerParty[position]; else - BoxMonAtToMon(boxId, position, &sPSSData->tempMon); + BoxMonAtToMon(boxId, position, &sStorage->tempMon); SetPlacedMonData(boxId, position); - sPSSData->movingMon = sPSSData->tempMon; - SetDisplayMonData(&sPSSData->movingMon, MODE_PARTY); + sStorage->movingMon = sStorage->tempMon; + SetDisplayMonData(&sStorage->movingMon, MODE_PARTY); sMovingMonOrigBoxId = boxId; sMovingMonOrigBoxPos = position; } @@ -6297,13 +6297,13 @@ static bool8 TryStorePartyMonInBox(u8 boxId) if (boxId == StorageGetCurrentBox()) CreateBoxMonIconAtPos(boxPosition); - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_STILL); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_STILL); return TRUE; } static void sub_80CE22C(void) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); TryRefreshDisplayMon(); } @@ -6319,14 +6319,14 @@ static void InitReleaseMon(void) mode = MODE_BOX; SetReleaseMon(mode, sCursorPosition); - StringCopy(sPSSData->releaseMonName, sPSSData->displayMonName); + StringCopy(sStorage->releaseMonName, sStorage->displayMonName); } static bool8 TryHideReleaseMon(void) { if (!TryHideReleaseMonSprite()) { - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_BOUNCE); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); return FALSE; } else @@ -6359,7 +6359,7 @@ static void ReleaseMon(void) static void TrySetCursorFistAnim(void) { if (sIsMonBeingMoved) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_FIST); } // If the player is on the listed map (or any map, if none is specified), @@ -6404,48 +6404,48 @@ static void InitCanReleaseMonVars(void) { // The player only has 1 or 2 usable // Pokémon, this one can't be released - sPSSData->releaseStatusResolved = TRUE; - sPSSData->canReleaseMon = FALSE; + sStorage->releaseStatusResolved = TRUE; + sStorage->canReleaseMon = FALSE; return; } if (sIsMonBeingMoved) { - sPSSData->tempMon = sPSSData->movingMon; - sPSSData->releaseBoxId = -1; - sPSSData->releaseBoxPos = -1; + sStorage->tempMon = sStorage->movingMon; + sStorage->releaseBoxId = -1; + sStorage->releaseBoxPos = -1; } else { if (sCursorArea == CURSOR_AREA_IN_PARTY) { - sPSSData->tempMon = gPlayerParty[sCursorPosition]; - sPSSData->releaseBoxId = TOTAL_BOXES_COUNT; + sStorage->tempMon = gPlayerParty[sCursorPosition]; + sStorage->releaseBoxId = TOTAL_BOXES_COUNT; } else { - BoxMonAtToMon(StorageGetCurrentBox(), sCursorPosition, &sPSSData->tempMon); - sPSSData->releaseBoxId = StorageGetCurrentBox(); + BoxMonAtToMon(StorageGetCurrentBox(), sCursorPosition, &sStorage->tempMon); + sStorage->releaseBoxId = StorageGetCurrentBox(); } - sPSSData->releaseBoxPos = sCursorPosition; + sStorage->releaseBoxPos = sCursorPosition; } - GetRestrictedReleaseMoves(sPSSData->restrictedMoveList); - sPSSData->restrictedReleaseMonMoves = GetMonData(&sPSSData->tempMon, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); - if (sPSSData->restrictedReleaseMonMoves != 0) + GetRestrictedReleaseMoves(sStorage->restrictedMoveList); + sStorage->restrictedReleaseMonMoves = GetMonData(&sStorage->tempMon, MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + if (sStorage->restrictedReleaseMonMoves != 0) { // Pokémon knows at least one restricted release move // Need to check if another Pokémon has this move first - sPSSData->releaseStatusResolved = FALSE; + sStorage->releaseStatusResolved = FALSE; } else { // Pokémon knows no restricted moves, can be released - sPSSData->releaseStatusResolved = TRUE; - sPSSData->canReleaseMon = TRUE; + sStorage->releaseStatusResolved = TRUE; + sStorage->canReleaseMon = TRUE; } - sPSSData->releaseCheckState = 0; + sStorage->releaseCheckState = 0; } static bool32 AtLeastThreeUsableMons(void) @@ -6484,10 +6484,10 @@ static s8 RunCanReleaseMon(void) u16 i; u16 knownMoves; - if (sPSSData->releaseStatusResolved) - return sPSSData->canReleaseMon; + if (sStorage->releaseStatusResolved) + return sStorage->canReleaseMon; - switch (sPSSData->releaseCheckState) + switch (sStorage->releaseCheckState) { case 0: // Check party for other Pokémon that know any restricted @@ -6495,26 +6495,26 @@ static s8 RunCanReleaseMon(void) for (i = 0; i < PARTY_SIZE; i++) { // Make sure party Pokémon isn't the one we're releasing first - if (sPSSData->releaseBoxId != TOTAL_BOXES_COUNT || sPSSData->releaseBoxPos != i) + if (sStorage->releaseBoxId != TOTAL_BOXES_COUNT || sStorage->releaseBoxPos != i) { - knownMoves = GetMonData(&gPlayerParty[i], MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); - sPSSData->restrictedReleaseMonMoves &= ~(knownMoves); + knownMoves = GetMonData(&gPlayerParty[i], MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + sStorage->restrictedReleaseMonMoves &= ~(knownMoves); } } - if (sPSSData->restrictedReleaseMonMoves == 0) + if (sStorage->restrictedReleaseMonMoves == 0) { // No restricted moves on release Pokémon that // aren't resolved by the party, it can be released. - sPSSData->releaseStatusResolved = TRUE; - sPSSData->canReleaseMon = TRUE; + sStorage->releaseStatusResolved = TRUE; + sStorage->canReleaseMon = TRUE; } else { // Release Pokémon has restricted moves not resolved by the party. // Continue and check the PC next - sPSSData->releaseCheckBoxId = 0; - sPSSData->releaseCheckBoxPos = 0; - sPSSData->releaseCheckState++; + sStorage->releaseCheckBoxId = 0; + sStorage->releaseCheckBoxPos = 0; + sStorage->releaseCheckState++; } break; case 1: @@ -6522,31 +6522,31 @@ static s8 RunCanReleaseMon(void) // moves the release Pokémon knows for (i = 0; i < IN_BOX_COUNT; i++) { - knownMoves = GetAndCopyBoxMonDataAt(sPSSData->releaseCheckBoxId, sPSSData->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8*)sPSSData->restrictedMoveList); - if (knownMoves != 0 && !(sPSSData->releaseBoxId == sPSSData->releaseCheckBoxId - && sPSSData->releaseBoxPos == sPSSData->releaseCheckBoxPos)) + knownMoves = GetAndCopyBoxMonDataAt(sStorage->releaseCheckBoxId, sStorage->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + if (knownMoves != 0 && !(sStorage->releaseBoxId == sStorage->releaseCheckBoxId + && sStorage->releaseBoxPos == sStorage->releaseCheckBoxPos)) { // Found PC Pokémon with restricted move, clear move from list - sPSSData->restrictedReleaseMonMoves &= ~(knownMoves); - if (sPSSData->restrictedReleaseMonMoves == 0) + sStorage->restrictedReleaseMonMoves &= ~(knownMoves); + if (sStorage->restrictedReleaseMonMoves == 0) { // No restricted moves on release Pokémon that // aren't resolved, it can be released. - sPSSData->releaseStatusResolved = TRUE; - sPSSData->canReleaseMon = TRUE; + sStorage->releaseStatusResolved = TRUE; + sStorage->canReleaseMon = TRUE; break; } } - if (++sPSSData->releaseCheckBoxPos >= IN_BOX_COUNT) + if (++sStorage->releaseCheckBoxPos >= IN_BOX_COUNT) { - sPSSData->releaseCheckBoxPos = 0; - if (++sPSSData->releaseCheckBoxId >= TOTAL_BOXES_COUNT) + sStorage->releaseCheckBoxPos = 0; + if (++sStorage->releaseCheckBoxId >= TOTAL_BOXES_COUNT) { // Checked every Pokémon in the PC, release Pokémon is // the sole owner of at least one restricted move. // It cannot be released. - sPSSData->releaseStatusResolved = TRUE; - sPSSData->canReleaseMon = FALSE; + sStorage->releaseStatusResolved = TRUE; + sStorage->canReleaseMon = FALSE; } } } @@ -6559,7 +6559,7 @@ static s8 RunCanReleaseMon(void) static void SaveMovingMon(void) { if (sIsMonBeingMoved) - sSavedMovingMon = sPSSData->movingMon; + sSavedMovingMon = sStorage->movingMon; } static void LoadSavedMovingMon(void) @@ -6569,9 +6569,9 @@ static void LoadSavedMovingMon(void) // If it came from the party load a struct Pokemon, // otherwise load a BoxPokemon if (sMovingMonOrigBoxId == TOTAL_BOXES_COUNT) - sPSSData->movingMon = sSavedMovingMon; + sStorage->movingMon = sSavedMovingMon; else - sPSSData->movingMon.box = sSavedMovingMon.box; + sStorage->movingMon.box = sSavedMovingMon.box; } } @@ -6580,24 +6580,24 @@ static void InitSummaryScreenData(void) if (sIsMonBeingMoved) { SaveMovingMon(); - sPSSData->summaryMon.mon = &sSavedMovingMon; - sPSSData->summaryStartPos = 0; - sPSSData->summaryMaxPos = 0; - sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; + sStorage->summaryMon.mon = &sSavedMovingMon; + sStorage->summaryStartPos = 0; + sStorage->summaryMaxPos = 0; + sStorage->summaryScreenMode = SUMMARY_MODE_NORMAL; } else if (sCursorArea == CURSOR_AREA_IN_PARTY) { - sPSSData->summaryMon.mon = gPlayerParty; - sPSSData->summaryStartPos = sCursorPosition; - sPSSData->summaryMaxPos = CountPartyMons() - 1; - sPSSData->summaryScreenMode = SUMMARY_MODE_NORMAL; + sStorage->summaryMon.mon = gPlayerParty; + sStorage->summaryStartPos = sCursorPosition; + sStorage->summaryMaxPos = CountPartyMons() - 1; + sStorage->summaryScreenMode = SUMMARY_MODE_NORMAL; } else { - sPSSData->summaryMon.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); - sPSSData->summaryStartPos = sCursorPosition; - sPSSData->summaryMaxPos = IN_BOX_COUNT - 1; - sPSSData->summaryScreenMode = SUMMARY_MODE_BOX; + sStorage->summaryMon.box = GetBoxedMonPtr(StorageGetCurrentBox(), 0); + sStorage->summaryStartPos = sCursorPosition; + sStorage->summaryMaxPos = IN_BOX_COUNT - 1; + sStorage->summaryScreenMode = SUMMARY_MODE_BOX; } } @@ -6636,10 +6636,10 @@ s16 CompactPartySlots(void) static void SetMonMarkings(u8 markings) { - sPSSData->displayMonMarkings = markings; + sStorage->displayMonMarkings = markings; if (sIsMonBeingMoved) { - SetMonData(&sPSSData->movingMon, MON_DATA_MARKINGS, &markings); + SetMonData(&sStorage->movingMon, MON_DATA_MARKINGS, &markings); } else { @@ -6664,7 +6664,7 @@ static bool8 CanShiftMon(void) { if (sCursorArea == CURSOR_AREA_IN_PARTY && CountPartyAliveNonEggMonsExcept(sCursorPosition) == 0) { - if (sPSSData->displayMonIsEgg || GetMonData(&sPSSData->movingMon, MON_DATA_HP) == 0) + if (sStorage->displayMonIsEgg || GetMonData(&sStorage->movingMon, MON_DATA_HP) == 0) return FALSE; } return TRUE; @@ -6697,7 +6697,7 @@ static void TryRefreshDisplayMon(void) // If a Pokémon is currently being moved, don't start // mosaic or update display. Keep displaying the // currently held Pokémon. - sPSSData->setMosaic = (sIsMonBeingMoved == FALSE); + sStorage->setMosaic = (sIsMonBeingMoved == FALSE); if (!sIsMonBeingMoved) { // Update display Pokémon @@ -6735,94 +6735,94 @@ static void SetDisplayMonData(void *pokemon, u8 mode) u16 gender; bool8 sanityIsBadEgg; - sPSSData->displayMonItemId = ITEM_NONE; + sStorage->displayMonItemId = ITEM_NONE; gender = MON_MALE; sanityIsBadEgg = FALSE; if (mode == MODE_PARTY) { struct Pokemon *mon = (struct Pokemon *)pokemon; - sPSSData->displayMonSpecies = GetMonData(mon, MON_DATA_SPECIES2); - if (sPSSData->displayMonSpecies != SPECIES_NONE) + sStorage->displayMonSpecies = GetMonData(mon, MON_DATA_SPECIES2); + if (sStorage->displayMonSpecies != SPECIES_NONE) { sanityIsBadEgg = GetMonData(mon, MON_DATA_SANITY_IS_BAD_EGG); if (sanityIsBadEgg) - sPSSData->displayMonIsEgg = TRUE; + sStorage->displayMonIsEgg = TRUE; else - sPSSData->displayMonIsEgg = GetMonData(mon, MON_DATA_IS_EGG); - - GetMonData(mon, MON_DATA_NICKNAME, sPSSData->displayMonName); - StringGetEnd10(sPSSData->displayMonName); - sPSSData->displayMonLevel = GetMonData(mon, MON_DATA_LEVEL); - sPSSData->displayMonMarkings = GetMonData(mon, MON_DATA_MARKINGS); - sPSSData->displayMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); - sPSSData->displayMonPalette = GetMonFrontSpritePal(mon); + sStorage->displayMonIsEgg = GetMonData(mon, MON_DATA_IS_EGG); + + GetMonData(mon, MON_DATA_NICKNAME, sStorage->displayMonName); + StringGetEnd10(sStorage->displayMonName); + sStorage->displayMonLevel = GetMonData(mon, MON_DATA_LEVEL); + sStorage->displayMonMarkings = GetMonData(mon, MON_DATA_MARKINGS); + sStorage->displayMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); + sStorage->displayMonPalette = GetMonFrontSpritePal(mon); gender = GetMonGender(mon); - sPSSData->displayMonItemId = GetMonData(mon, MON_DATA_HELD_ITEM); + sStorage->displayMonItemId = GetMonData(mon, MON_DATA_HELD_ITEM); } } else if (mode == MODE_BOX) { struct BoxPokemon *boxMon = (struct BoxPokemon *)pokemon; - sPSSData->displayMonSpecies = GetBoxMonData(pokemon, MON_DATA_SPECIES2); - if (sPSSData->displayMonSpecies != SPECIES_NONE) + sStorage->displayMonSpecies = GetBoxMonData(pokemon, MON_DATA_SPECIES2); + if (sStorage->displayMonSpecies != SPECIES_NONE) { u32 otId = GetBoxMonData(boxMon, MON_DATA_OT_ID); sanityIsBadEgg = GetBoxMonData(boxMon, MON_DATA_SANITY_IS_BAD_EGG); if (sanityIsBadEgg) - sPSSData->displayMonIsEgg = TRUE; + sStorage->displayMonIsEgg = TRUE; else - sPSSData->displayMonIsEgg = GetBoxMonData(boxMon, MON_DATA_IS_EGG); + sStorage->displayMonIsEgg = GetBoxMonData(boxMon, MON_DATA_IS_EGG); - GetBoxMonData(boxMon, MON_DATA_NICKNAME, sPSSData->displayMonName); - StringGetEnd10(sPSSData->displayMonName); - sPSSData->displayMonLevel = GetLevelFromBoxMonExp(boxMon); - sPSSData->displayMonMarkings = GetBoxMonData(boxMon, MON_DATA_MARKINGS); - sPSSData->displayMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); - sPSSData->displayMonPalette = GetMonSpritePalFromSpeciesAndPersonality(sPSSData->displayMonSpecies, otId, sPSSData->displayMonPersonality); - gender = GetGenderFromSpeciesAndPersonality(sPSSData->displayMonSpecies, sPSSData->displayMonPersonality); - sPSSData->displayMonItemId = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); + GetBoxMonData(boxMon, MON_DATA_NICKNAME, sStorage->displayMonName); + StringGetEnd10(sStorage->displayMonName); + sStorage->displayMonLevel = GetLevelFromBoxMonExp(boxMon); + sStorage->displayMonMarkings = GetBoxMonData(boxMon, MON_DATA_MARKINGS); + sStorage->displayMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); + sStorage->displayMonPalette = GetMonSpritePalFromSpeciesAndPersonality(sStorage->displayMonSpecies, otId, sStorage->displayMonPersonality); + gender = GetGenderFromSpeciesAndPersonality(sStorage->displayMonSpecies, sStorage->displayMonPersonality); + sStorage->displayMonItemId = GetBoxMonData(boxMon, MON_DATA_HELD_ITEM); } } else { - sPSSData->displayMonSpecies = SPECIES_NONE; - sPSSData->displayMonItemId = ITEM_NONE; + sStorage->displayMonSpecies = SPECIES_NONE; + sStorage->displayMonItemId = ITEM_NONE; } - if (sPSSData->displayMonSpecies == SPECIES_NONE) + if (sStorage->displayMonSpecies == SPECIES_NONE) { - StringFill(sPSSData->displayMonName, CHAR_SPACE, 5); - StringFill(sPSSData->displayMonNameText, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonSpeciesName, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonGenderLvlText, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); + StringFill(sStorage->displayMonName, CHAR_SPACE, 5); + StringFill(sStorage->displayMonNameText, CHAR_SPACE, 8); + StringFill(sStorage->displayMonSpeciesName, CHAR_SPACE, 8); + StringFill(sStorage->displayMonGenderLvlText, CHAR_SPACE, 8); + StringFill(sStorage->displayMonItemName, CHAR_SPACE, 8); } - else if (sPSSData->displayMonIsEgg) + else if (sStorage->displayMonIsEgg) { if (sanityIsBadEgg) - StringCopyPadded(sPSSData->displayMonNameText, sPSSData->displayMonName, CHAR_SPACE, 5); + StringCopyPadded(sStorage->displayMonNameText, sStorage->displayMonName, CHAR_SPACE, 5); else - StringCopyPadded(sPSSData->displayMonNameText, gText_EggNickname, CHAR_SPACE, 8); + StringCopyPadded(sStorage->displayMonNameText, gText_EggNickname, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonSpeciesName, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonGenderLvlText, CHAR_SPACE, 8); - StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); + StringFill(sStorage->displayMonSpeciesName, CHAR_SPACE, 8); + StringFill(sStorage->displayMonGenderLvlText, CHAR_SPACE, 8); + StringFill(sStorage->displayMonItemName, CHAR_SPACE, 8); } else { - if (sPSSData->displayMonSpecies == SPECIES_NIDORAN_F || sPSSData->displayMonSpecies == SPECIES_NIDORAN_M) + if (sStorage->displayMonSpecies == SPECIES_NIDORAN_F || sStorage->displayMonSpecies == SPECIES_NIDORAN_M) gender = MON_GENDERLESS; - StringCopyPadded(sPSSData->displayMonNameText, sPSSData->displayMonName, CHAR_SPACE, 5); + StringCopyPadded(sStorage->displayMonNameText, sStorage->displayMonName, CHAR_SPACE, 5); - txtPtr = sPSSData->displayMonSpeciesName; + txtPtr = sStorage->displayMonSpeciesName; *(txtPtr)++ = CHAR_SLASH; - StringCopyPadded(txtPtr, gSpeciesNames[sPSSData->displayMonSpecies], CHAR_SPACE, 5); + StringCopyPadded(txtPtr, gSpeciesNames[sStorage->displayMonSpecies], CHAR_SPACE, 5); - txtPtr = sPSSData->displayMonGenderLvlText; + txtPtr = sStorage->displayMonGenderLvlText; *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; *(txtPtr)++ = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; switch (gender) @@ -6856,20 +6856,20 @@ static void SetDisplayMonData(void *pokemon, u8 mode) *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; - txtPtr = ConvertIntToDecimalStringN(txtPtr, sPSSData->displayMonLevel, STR_CONV_MODE_LEFT_ALIGN, 3); + txtPtr = ConvertIntToDecimalStringN(txtPtr, sStorage->displayMonLevel, STR_CONV_MODE_LEFT_ALIGN, 3); txtPtr[0] = CHAR_SPACE; txtPtr[1] = EOS; - if (sPSSData->displayMonItemId != ITEM_NONE) - StringCopyPadded(sPSSData->displayMonItemName, ItemId_GetName(sPSSData->displayMonItemId), CHAR_SPACE, 8); + if (sStorage->displayMonItemId != ITEM_NONE) + StringCopyPadded(sStorage->displayMonItemName, ItemId_GetName(sStorage->displayMonItemId), CHAR_SPACE, 8); else - StringFill(sPSSData->displayMonItemName, CHAR_SPACE, 8); + StringFill(sStorage->displayMonItemName, CHAR_SPACE, 8); } } static u8 HandleInput_InBox(void) { - switch (sPSSData->inBoxMovingMode) + switch (sStorage->inBoxMovingMode) { case MOVE_MODE_NORMAL: default: @@ -6891,9 +6891,9 @@ static u8 InBoxInput_Normal(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->cursorVerticalWrap = 0; - sPSSData->cursorHorizontalWrap = 0; - sPSSData->cursorFlipTimer = 0; + sStorage->cursorVerticalWrap = 0; + sStorage->cursorHorizontalWrap = 0; + sStorage->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { @@ -6918,8 +6918,8 @@ static u8 InBoxInput_Normal(void) cursorArea = CURSOR_AREA_BUTTONS; cursorPosition -= IN_BOX_COUNT; cursorPosition /= 3; - sPSSData->cursorVerticalWrap = 1; - sPSSData->cursorFlipTimer = 1; + sStorage->cursorVerticalWrap = 1; + sStorage->cursorFlipTimer = 1; } break; } @@ -6932,7 +6932,7 @@ static u8 InBoxInput_Normal(void) } else { - sPSSData->cursorHorizontalWrap = -1; + sStorage->cursorHorizontalWrap = -1; cursorPosition += (IN_BOX_COLUMNS - 1); } break; @@ -6946,7 +6946,7 @@ static u8 InBoxInput_Normal(void) } else { - sPSSData->cursorHorizontalWrap = 1; + sStorage->cursorHorizontalWrap = 1; cursorPosition -= (IN_BOX_COLUMNS - 1); } break; @@ -6964,7 +6964,7 @@ static u8 InBoxInput_Normal(void) if (!sAutoActionOn) return INPUT_IN_MENU; - if (sPSSData->boxOption != OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) + if (sStorage->boxOption != OPTION_MOVE_MONS || sIsMonBeingMoved == TRUE) { switch (GetMenuItemTextId(0)) { @@ -6988,7 +6988,7 @@ static u8 InBoxInput_Normal(void) } else { - sPSSData->inBoxMovingMode = MOVE_MODE_MULTIPLE_SELECTING; + sStorage->inBoxMovingMode = MOVE_MODE_MULTIPLE_SELECTING; return INPUT_MULTIMOVE_START; } } @@ -7082,14 +7082,14 @@ static u8 InBoxInput_SelectingMultiple(void) if (MultiMove_GetOrigin() == sCursorPosition) { // Doing a multiple mon selection but only chose 1 mon - sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; - sPSSData->cursorShadowSprite->invisible = FALSE; + sStorage->inBoxMovingMode = MOVE_MODE_NORMAL; + sStorage->cursorShadowSprite->invisible = FALSE; return INPUT_MULTIMOVE_SINGLE; } else { - sIsMonBeingMoved = (sPSSData->displayMonSpecies != SPECIES_NONE); - sPSSData->inBoxMovingMode = MOVE_MODE_MULTIPLE_MOVING; + sIsMonBeingMoved = (sStorage->displayMonSpecies != SPECIES_NONE); + sStorage->inBoxMovingMode = MOVE_MODE_MULTIPLE_MOVING; sMovingMonOrigBoxId = StorageGetCurrentBox(); return INPUT_MULTIMOVE_GRAB_SELECTION; } @@ -7151,7 +7151,7 @@ static u8 InBoxInput_MovingMultiple(void) if (MultiMove_CanPlaceSelection()) { sIsMonBeingMoved = FALSE; - sPSSData->inBoxMovingMode = MOVE_MODE_NORMAL; + sStorage->inBoxMovingMode = MOVE_MODE_NORMAL; return INPUT_MULTIMOVE_PLACE_MONS; } else @@ -7188,9 +7188,9 @@ static u8 HandleInput_InParty(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->cursorHorizontalWrap = 0; - sPSSData->cursorVerticalWrap = 0; - sPSSData->cursorFlipTimer = 0; + sStorage->cursorHorizontalWrap = 0; + sStorage->cursorVerticalWrap = 0; + sStorage->cursorFlipTimer = 0; gotoBox = FALSE; retVal = INPUT_NONE; @@ -7213,7 +7213,7 @@ static u8 HandleInput_InParty(void) else if (JOY_REPEAT(DPAD_LEFT) && sCursorPosition != 0) { retVal = INPUT_MOVE_CURSOR; - sPSSData->cursorPrevHorizPos = sCursorPosition; + sStorage->cursorPrevHorizPos = sCursorPosition; cursorPosition = 0; break; } @@ -7222,7 +7222,7 @@ static u8 HandleInput_InParty(void) if (sCursorPosition == 0) { retVal = INPUT_MOVE_CURSOR; - cursorPosition = sPSSData->cursorPrevHorizPos; + cursorPosition = sStorage->cursorPrevHorizPos; } else { @@ -7237,7 +7237,7 @@ static u8 HandleInput_InParty(void) { if (sCursorPosition == PARTY_SIZE) { - if (sPSSData->boxOption == OPTION_DEPOSIT) + if (sStorage->boxOption == OPTION_DEPOSIT) return INPUT_CLOSE_BOX; gotoBox = TRUE; @@ -7271,7 +7271,7 @@ static u8 HandleInput_InParty(void) if (JOY_NEW(B_BUTTON)) { - if (sPSSData->boxOption == OPTION_DEPOSIT) + if (sStorage->boxOption == OPTION_DEPOSIT) return INPUT_PRESSED_B; gotoBox = TRUE; @@ -7308,16 +7308,16 @@ static u8 HandleInput_OnBox(void) do { - sPSSData->cursorHorizontalWrap = 0; - sPSSData->cursorVerticalWrap = 0; - sPSSData->cursorFlipTimer = 0; + sStorage->cursorHorizontalWrap = 0; + sStorage->cursorVerticalWrap = 0; + sStorage->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_BUTTONS; cursorPosition = 0; - sPSSData->cursorFlipTimer = 1; + sStorage->cursorFlipTimer = 1; break; } else if (JOY_REPEAT(DPAD_DOWN)) @@ -7381,20 +7381,20 @@ static u8 HandleInput_OnButtons(void) { cursorArea = sCursorArea; cursorPosition = sCursorPosition; - sPSSData->cursorHorizontalWrap = 0; - sPSSData->cursorVerticalWrap = 0; - sPSSData->cursorFlipTimer = 0; + sStorage->cursorHorizontalWrap = 0; + sStorage->cursorVerticalWrap = 0; + sStorage->cursorFlipTimer = 0; if (JOY_REPEAT(DPAD_UP)) { retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_IN_BOX; - sPSSData->cursorVerticalWrap = -1; + sStorage->cursorVerticalWrap = -1; if (sCursorPosition == 0) cursorPosition = IN_BOX_COUNT - 1 - 5; else cursorPosition = IN_BOX_COUNT - 1; - sPSSData->cursorFlipTimer = 1; + sStorage->cursorFlipTimer = 1; break; } @@ -7403,7 +7403,7 @@ static u8 HandleInput_OnButtons(void) retVal = INPUT_MOVE_CURSOR; cursorArea = CURSOR_AREA_BOX_TITLE; cursorPosition = 0; - sPSSData->cursorFlipTimer = 1; + sStorage->cursorFlipTimer = 1; break; } @@ -7482,7 +7482,7 @@ static void AddBoxMenu(void) static u8 SetSelectionMenuTexts(void) { InitMenu(); - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return SetMenuTexts_Mon(); else return SetMenuTexts_Item(); @@ -7492,7 +7492,7 @@ static bool8 SetMenuTexts_Mon(void) { u16 species = GetSpeciesAtCursorPosition(); - switch (sPSSData->boxOption) + switch (sStorage->boxOption) { case OPTION_DEPOSIT: if (species != SPECIES_NONE) @@ -7528,7 +7528,7 @@ static bool8 SetMenuTexts_Mon(void) } SetMenuText(MENU_SUMMARY); - if (sPSSData->boxOption == OPTION_MOVE_MONS) + if (sStorage->boxOption == OPTION_MOVE_MONS) { if (sCursorArea == CURSOR_AREA_IN_BOX) SetMenuText(MENU_WITHDRAW); @@ -7544,21 +7544,21 @@ static bool8 SetMenuTexts_Mon(void) static bool8 SetMenuTexts_Item(void) { - if (sPSSData->displayMonSpecies == SPECIES_EGG) + if (sStorage->displayMonSpecies == SPECIES_EGG) return FALSE; if (!IsMovingItem()) { - if (sPSSData->displayMonItemId == ITEM_NONE) + if (sStorage->displayMonItemId == ITEM_NONE) { - if (sPSSData->displayMonSpecies == SPECIES_NONE) + if (sStorage->displayMonSpecies == SPECIES_NONE) return FALSE; SetMenuText(MENU_GIVE_2); } else { - if (!ItemIsMail(sPSSData->displayMonItemId)) + if (!ItemIsMail(sStorage->displayMonItemId)) { SetMenuText(MENU_TAKE); SetMenuText(MENU_BAG); @@ -7568,16 +7568,16 @@ static bool8 SetMenuTexts_Item(void) } else { - if (sPSSData->displayMonItemId == ITEM_NONE) + if (sStorage->displayMonItemId == ITEM_NONE) { - if (sPSSData->displayMonSpecies == SPECIES_NONE) + if (sStorage->displayMonSpecies == SPECIES_NONE) return FALSE; SetMenuText(MENU_GIVE); } else { - if (ItemIsMail(sPSSData->displayMonItemId) == TRUE) + if (ItemIsMail(sStorage->displayMonItemId) == TRUE) return FALSE; SetMenuText(MENU_SWITCH); @@ -7590,8 +7590,8 @@ static bool8 SetMenuTexts_Item(void) static void SpriteCB_CursorShadow(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->cursorSprite->pos1.x; - sprite->pos1.y = sPSSData->cursorSprite->pos1.y + 20; + sprite->pos1.x = sStorage->cursorSprite->pos1.x; + sprite->pos1.y = sStorage->cursorSprite->pos1.y + 20; } static void CreateCursorSprites(void) @@ -7679,22 +7679,22 @@ static void CreateCursorSprites(void) LoadSpriteSheets(spriteSheets); LoadSpritePalettes(spritePalettes); - sPSSData->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); // White hand, normal - sPSSData->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); // Yellow hand, when auto-action is on + sStorage->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); // White hand, normal + sStorage->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); // Yellow hand, when auto-action is on GetCursorCoordsByPos(sCursorArea, sCursorPosition, &x, &y); spriteId = CreateSprite(&sSpriteTemplate_Cursor, x, y, 6); if (spriteId != MAX_SPRITES) { - sPSSData->cursorSprite = &gSprites[spriteId]; - sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sAutoActionOn]; - sPSSData->cursorSprite->oam.priority = 1; + sStorage->cursorSprite = &gSprites[spriteId]; + sStorage->cursorSprite->oam.paletteNum = sStorage->cursorPalNums[sAutoActionOn]; + sStorage->cursorSprite->oam.priority = 1; if (sIsMonBeingMoved) - StartSpriteAnim(sPSSData->cursorSprite, CURSOR_ANIM_FIST); + StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_FIST); } else { - sPSSData->cursorSprite = NULL; + sStorage->cursorSprite = NULL; } if (sCursorArea == CURSOR_AREA_IN_PARTY) @@ -7711,21 +7711,21 @@ static void CreateCursorSprites(void) spriteId = CreateSprite(&sSpriteTemplate_CursorShadow, 0, 0, subpriority); if (spriteId != MAX_SPRITES) { - sPSSData->cursorShadowSprite = &gSprites[spriteId]; - sPSSData->cursorShadowSprite->oam.priority = priority; + sStorage->cursorShadowSprite = &gSprites[spriteId]; + sStorage->cursorShadowSprite->oam.priority = priority; if (sCursorArea) - sPSSData->cursorShadowSprite->invisible = TRUE; + sStorage->cursorShadowSprite->invisible = TRUE; } else { - sPSSData->cursorShadowSprite = NULL; + sStorage->cursorShadowSprite = NULL; } } static void ToggleCursorAutoAction(void) { sAutoActionOn = !sAutoActionOn; - sPSSData->cursorSprite->oam.paletteNum = sPSSData->cursorPalNums[sAutoActionOn]; + sStorage->cursorSprite->oam.paletteNum = sStorage->cursorPalNums[sAutoActionOn]; } static u8 GetCursorPosition(void) @@ -7749,7 +7749,7 @@ static void GetCursorBoxColumnAndRow(u8 *column, u8 *row) static void StartCursorAnim(u8 animNum) { - StartSpriteAnim(sPSSData->cursorSprite, animNum); + StartSpriteAnim(sStorage->cursorSprite, animNum); } // Unused @@ -7760,7 +7760,7 @@ static u8 GetMovingMonOriginalBoxId(void) static void SetCursorPriorityTo1(void) { - sPSSData->cursorSprite->oam.priority = 1; + sStorage->cursorSprite->oam.priority = 1; } static void TryHideItemAtCursor(void) @@ -7777,11 +7777,11 @@ static void TryShowItemAtCursor(void) static void InitMenu(void) { - sPSSData->menuItemsCount = 0; - sPSSData->menuWidth = 0; - sPSSData->menuWindow.bg = 0; - sPSSData->menuWindow.paletteNum = 15; - sPSSData->menuWindow.baseBlock = 92; + sStorage->menuItemsCount = 0; + sStorage->menuWidth = 0; + sStorage->menuWindow.bg = 0; + sStorage->menuWindow.paletteNum = 15; + sStorage->menuWindow.baseBlock = 92; } static const u8 *const sMenuTexts[] = @@ -7829,42 +7829,42 @@ static const u8 *const sMenuTexts[] = static void SetMenuText(u8 textId) { - if (sPSSData->menuItemsCount < ARRAY_COUNT(sPSSData->menuItems)) + if (sStorage->menuItemsCount < ARRAY_COUNT(sStorage->menuItems)) { u8 len; - struct StorageMenu *menu = &sPSSData->menuItems[sPSSData->menuItemsCount]; + struct StorageMenu *menu = &sStorage->menuItems[sStorage->menuItemsCount]; menu->text = sMenuTexts[textId]; menu->textId = textId; len = StringLength(menu->text); - if (len > sPSSData->menuWidth) - sPSSData->menuWidth = len; + if (len > sStorage->menuWidth) + sStorage->menuWidth = len; - sPSSData->menuItemsCount++; + sStorage->menuItemsCount++; } } static s8 GetMenuItemTextId(u8 menuIdx) { - if (menuIdx >= sPSSData->menuItemsCount) + if (menuIdx >= sStorage->menuItemsCount) return -1; else - return sPSSData->menuItems[menuIdx].textId; + return sStorage->menuItems[menuIdx].textId; } static void AddMenu(void) { - sPSSData->menuWindow.width = sPSSData->menuWidth + 2; - sPSSData->menuWindow.height = 2 * sPSSData->menuItemsCount; - sPSSData->menuWindow.tilemapLeft = 29 - sPSSData->menuWindow.width; - sPSSData->menuWindow.tilemapTop = 15 - sPSSData->menuWindow.height; - sPSSData->menuWindowId = AddWindow(&sPSSData->menuWindow); - ClearWindowTilemap(sPSSData->menuWindowId); - DrawStdFrameWithCustomTileAndPalette(sPSSData->menuWindowId, FALSE, 11, 14); - PrintMenuTable(sPSSData->menuWindowId, sPSSData->menuItemsCount, (void*)sPSSData->menuItems); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sPSSData->menuWindowId, sPSSData->menuItemsCount, 0); + sStorage->menuWindow.width = sStorage->menuWidth + 2; + sStorage->menuWindow.height = 2 * sStorage->menuItemsCount; + sStorage->menuWindow.tilemapLeft = 29 - sStorage->menuWindow.width; + sStorage->menuWindow.tilemapTop = 15 - sStorage->menuWindow.height; + sStorage->menuWindowId = AddWindow(&sStorage->menuWindow); + ClearWindowTilemap(sStorage->menuWindowId); + DrawStdFrameWithCustomTileAndPalette(sStorage->menuWindowId, FALSE, 11, 14); + PrintMenuTable(sStorage->menuWindowId, sStorage->menuItemsCount, (void*)sStorage->menuItems); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sStorage->menuWindowId, sStorage->menuItemsCount, 0); ScheduleBgCopyTilemapToVram(0); - sPSSData->menuUnusedField = 0; + sStorage->menuUnusedField = 0; } // Called after AddMenu to determine whether or not the handler callback should @@ -7908,15 +7908,15 @@ static s16 HandleMenuInput(void) RemoveMenu(); if (input >= 0) - input = sPSSData->menuItems[input].textId; + input = sStorage->menuItems[input].textId; return input; } static void RemoveMenu(void) { - ClearStdWindowAndFrameToTransparent(sPSSData->menuWindowId, TRUE); - RemoveWindow(sPSSData->menuWindowId); + ClearStdWindowAndFrameToTransparent(sStorage->menuWindowId, TRUE); + RemoveWindow(sStorage->menuWindowId); } @@ -7965,10 +7965,10 @@ static bool8 MultiMove_Init(void) sMultiMove = Alloc(sizeof(*sMultiMove)); if (sMultiMove != NULL) { - sPSSData->multiMoveWindowId = AddWindow8Bit(&sWindowTemplate_MultiMove); - if (sPSSData->multiMoveWindowId != WINDOW_NONE) + sStorage->multiMoveWindowId = AddWindow8Bit(&sWindowTemplate_MultiMove); + if (sStorage->multiMoveWindowId != WINDOW_NONE) { - FillWindowPixelBuffer(sPSSData->multiMoveWindowId, PIXEL_FILL(0)); + FillWindowPixelBuffer(sStorage->multiMoveWindowId, PIXEL_FILL(0)); return TRUE; } } @@ -8025,11 +8025,11 @@ static bool8 MultiMove_Start(void) ChangeBgX(0, -1024, 0); ChangeBgY(0, -1024, 0); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); - FillWindowPixelBuffer8Bit(sPSSData->multiMoveWindowId, PIXEL_FILL(0)); + FillWindowPixelBuffer8Bit(sStorage->multiMoveWindowId, PIXEL_FILL(0)); MultiMove_SetIconToBg(sMultiMove->fromColumn, sMultiMove->fromRow); SetBgAttribute(0, BG_ATTR_PALETTEMODE, 1); - PutWindowTilemap(sPSSData->multiMoveWindowId); - CopyWindowToVram8Bit(sPSSData->multiMoveWindowId, 3); + PutWindowTilemap(sStorage->multiMoveWindowId); + CopyWindowToVram8Bit(sStorage->multiMoveWindowId, 3); BlendPalettes(0x3F00, 8, RGB_WHITE); StartCursorAnim(CURSOR_ANIM_OPEN); SetGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR); @@ -8085,7 +8085,7 @@ static bool8 MultiMove_ChangeSelection(void) MultiMove_UpdateSelectedIcons(); sMultiMove->toColumn = sMultiMove->cursorColumn; sMultiMove->toRow = sMultiMove->cursorRow; - CopyWindowToVram8Bit(sPSSData->multiMoveWindowId, 2); + CopyWindowToVram8Bit(sStorage->multiMoveWindowId, 2); sMultiMove->state++; } break; @@ -8296,7 +8296,7 @@ static void MultiMove_SetIconToBg(u8 x, u8 y) const u8 *iconGfx = GetMonIconPtr(species, personality, 1); u8 index = GetValidMonIconPalIndex(species) + 8; - BlitBitmapRectToWindow4BitTo8Bit(sPSSData->multiMoveWindowId, + BlitBitmapRectToWindow4BitTo8Bit(sStorage->multiMoveWindowId, iconGfx, 0, 0, @@ -8317,7 +8317,7 @@ static void MultiMove_ClearIconFromBg(u8 x, u8 y) if (species != SPECIES_NONE) { - FillWindowPixelRect8Bit(sPSSData->multiMoveWindowId, + FillWindowPixelRect8Bit(sStorage->multiMoveWindowId, PIXEL_FILL(0), 24 * x, 24 * y, @@ -8584,7 +8584,7 @@ static void CreateItemIconSprites(void) struct CompressedSpriteSheet spriteSheet; struct SpriteTemplate spriteTemplate; - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { spriteSheet.data = sItemIconGfxBuffer; spriteSheet.size = 0x200; @@ -8594,26 +8594,26 @@ static void CreateItemIconSprites(void) { spriteSheet.tag = GFXTAG_ITEM_ICON_0 + i; LoadCompressedSpriteSheet(&spriteSheet); - sPSSData->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0); - sPSSData->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); - sPSSData->itemIcons[i].palIndex *= 16; - sPSSData->itemIcons[i].palIndex += 0x100; + sStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0); + sStorage->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); + sStorage->itemIcons[i].palIndex *= 16; + sStorage->itemIcons[i].palIndex += 0x100; spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i; spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i; spriteId = CreateSprite(&spriteTemplate, 0, 0, 11); - sPSSData->itemIcons[i].sprite = &gSprites[spriteId]; - sPSSData->itemIcons[i].sprite->invisible = TRUE; - sPSSData->itemIcons[i].active = FALSE; + sStorage->itemIcons[i].sprite = &gSprites[spriteId]; + sStorage->itemIcons[i].sprite->invisible = TRUE; + sStorage->itemIcons[i].active = FALSE; } } - sPSSData->movingItemId = ITEM_NONE; + sStorage->movingItemId = ITEM_NONE; } static void TryLoadItemIconAtPos(u8 cursorArea, u8 cursorPos) { u16 heldItem; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; // If we've already loaded the item here, stop @@ -8653,7 +8653,7 @@ static void TryHideItemIconAtPos(u8 cursorArea, u8 cursorPos) { u8 id; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; id = GetItemIconIdxByPosition(cursorArea, cursorPos); @@ -8666,7 +8666,7 @@ static void TakeItemFromMon(u8 cursorArea, u8 cursorPos) u8 id; u16 itemId; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; id = GetItemIconIdxByPosition(cursorArea, cursorPos); @@ -8685,7 +8685,7 @@ static void TakeItemFromMon(u8 cursorArea, u8 cursorPos) SetPartyMonIconObjMode(cursorPos, 1); } - sPSSData->movingItemId = sPSSData->displayMonItemId; + sStorage->movingItemId = sStorage->displayMonItemId; } static void InitItemIconInCursor(u16 itemId) @@ -8698,7 +8698,7 @@ static void InitItemIconInCursor(u16 itemId) SetItemIconCallback(id, ITEM_CB_TO_HAND, CURSOR_AREA_IN_BOX, 0); SetItemIconPosition(id, CURSOR_AREA_IN_HAND, 0); SetItemIconActive(id, TRUE); - sPSSData->movingItemId = itemId; + sStorage->movingItemId = itemId; } static void SwapItemsWithMon(u8 cursorArea, u8 cursorPos) @@ -8706,7 +8706,7 @@ static void SwapItemsWithMon(u8 cursorArea, u8 cursorPos) u8 id; u16 itemId; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; id = GetItemIconIdxByPosition(cursorArea, cursorPos); @@ -8715,14 +8715,14 @@ static void SwapItemsWithMon(u8 cursorArea, u8 cursorPos) if (cursorArea == CURSOR_AREA_IN_BOX) { itemId = GetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM); - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItemId); - sPSSData->movingItemId = itemId; + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sStorage->movingItemId); + sStorage->movingItemId = itemId; } else { itemId = GetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM); - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItemId); - sPSSData->movingItemId = itemId; + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sStorage->movingItemId); + sStorage->movingItemId = itemId; } id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); @@ -8734,7 +8734,7 @@ static void GiveItemToMon(u8 cursorArea, u8 cursorPos) { u8 id; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); @@ -8742,12 +8742,12 @@ static void GiveItemToMon(u8 cursorArea, u8 cursorPos) SetItemIconCallback(id, ITEM_CB_TO_MON, cursorArea, cursorPos); if (cursorArea == CURSOR_AREA_IN_BOX) { - SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sPSSData->movingItemId); + SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sStorage->movingItemId); SetBoxMonIconObjMode(cursorPos, 0); } else { - SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sPSSData->movingItemId); + SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sStorage->movingItemId); SetPartyMonIconObjMode(cursorPos, 0); } } @@ -8757,7 +8757,7 @@ static void MoveItemFromMonToBag(u8 cursorArea, u8 cursorPos) u8 id; u16 itemId; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; itemId = ITEM_NONE; @@ -8778,7 +8778,7 @@ static void MoveItemFromMonToBag(u8 cursorArea, u8 cursorPos) static void MoveItemFromCursorToBag(void) { - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { u8 id = GetItemIconIdxByPosition(CURSOR_AREA_IN_HAND, 0); SetItemIconAffineAnim(id, ITEM_ANIM_PUT_AWAY); @@ -8793,13 +8793,13 @@ static void MoveHeldItemWithPartyMenu(void) { s32 i; - if (sPSSData->boxOption != OPTION_MOVE_ITEMS) + if (sStorage->boxOption != OPTION_MOVE_ITEMS) return; for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].area == CURSOR_AREA_IN_PARTY) + if (sStorage->itemIcons[i].active + && sStorage->itemIcons[i].area == CURSOR_AREA_IN_PARTY) SetItemIconCallback(i, ITEM_CB_HIDE_PARTY, CURSOR_AREA_IN_HAND, 0); } } @@ -8810,13 +8810,13 @@ static bool8 IsItemIconAnimActive(void) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active) + if (sStorage->itemIcons[i].active) { - if (!sPSSData->itemIcons[i].sprite->affineAnimEnded - && sPSSData->itemIcons[i].sprite->affineAnimBeginning) + if (!sStorage->itemIcons[i].sprite->affineAnimEnded + && sStorage->itemIcons[i].sprite->affineAnimBeginning) return TRUE; - if (sPSSData->itemIcons[i].sprite->callback != SpriteCallbackDummy - && sPSSData->itemIcons[i].sprite->callback != SpriteCB_ItemIcon_SetPosToCursor) + if (sStorage->itemIcons[i].sprite->callback != SpriteCallbackDummy + && sStorage->itemIcons[i].sprite->callback != SpriteCB_ItemIcon_SetPosToCursor) return TRUE; } } @@ -8827,12 +8827,12 @@ static bool8 IsMovingItem(void) { s32 i; - if (sPSSData->boxOption == OPTION_MOVE_ITEMS) + if (sStorage->boxOption == OPTION_MOVE_ITEMS) { for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].area == CURSOR_AREA_IN_HAND) + if (sStorage->itemIcons[i].active + && sStorage->itemIcons[i].area == CURSOR_AREA_IN_HAND) return TRUE; } } @@ -8841,12 +8841,12 @@ static bool8 IsMovingItem(void) static const u8 *GetMovingItemName(void) { - return ItemId_GetName(sPSSData->movingItemId); + return ItemId_GetName(sStorage->movingItemId); } static u16 GetMovingItemId(void) { - return sPSSData->movingItemId; + return sStorage->movingItemId; } static u8 GetNewItemIconIdx(void) @@ -8855,9 +8855,9 @@ static u8 GetNewItemIconIdx(void) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (!sPSSData->itemIcons[i].active) + if (!sStorage->itemIcons[i].active) { - sPSSData->itemIcons[i].active = TRUE; + sStorage->itemIcons[i].active = TRUE; return i; } } @@ -8870,9 +8870,9 @@ static bool32 IsItemIconAtPosition(u8 cursorArea, u8 cursorPos) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].area == cursorArea - && sPSSData->itemIcons[i].pos == cursorPos) + if (sStorage->itemIcons[i].active + && sStorage->itemIcons[i].area == cursorArea + && sStorage->itemIcons[i].pos == cursorPos) return TRUE; } return FALSE; @@ -8884,9 +8884,9 @@ static u8 GetItemIconIdxByPosition(u8 cursorArea, u8 cursorPos) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].area == cursorArea - && sPSSData->itemIcons[i].pos == cursorPos) + if (sStorage->itemIcons[i].active + && sStorage->itemIcons[i].area == cursorArea + && sStorage->itemIcons[i].pos == cursorPos) return i; } return MAX_ITEM_ICONS; @@ -8898,8 +8898,8 @@ static u8 GetItemIconIdxBySprite(struct Sprite *sprite) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sPSSData->itemIcons[i].active - && sPSSData->itemIcons[i].sprite == sprite) + if (sStorage->itemIcons[i].active + && sStorage->itemIcons[i].sprite == sprite) return i; } return MAX_ITEM_ICONS; @@ -8917,27 +8917,27 @@ static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) case CURSOR_AREA_IN_BOX: x = cursorPos % IN_BOX_COLUMNS; y = cursorPos / IN_BOX_COLUMNS; - sPSSData->itemIcons[id].sprite->pos1.x = (24 * x) + 112; - sPSSData->itemIcons[id].sprite->pos1.y = (24 * y) + 56; - sPSSData->itemIcons[id].sprite->oam.priority = 2; + sStorage->itemIcons[id].sprite->pos1.x = (24 * x) + 112; + sStorage->itemIcons[id].sprite->pos1.y = (24 * y) + 56; + sStorage->itemIcons[id].sprite->oam.priority = 2; break; case CURSOR_AREA_IN_PARTY: if (cursorPos == 0) { - sPSSData->itemIcons[id].sprite->pos1.x = 116; - sPSSData->itemIcons[id].sprite->pos1.y = 76; + sStorage->itemIcons[id].sprite->pos1.x = 116; + sStorage->itemIcons[id].sprite->pos1.y = 76; } else { - sPSSData->itemIcons[id].sprite->pos1.x = 164; - sPSSData->itemIcons[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; + sStorage->itemIcons[id].sprite->pos1.x = 164; + sStorage->itemIcons[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; } - sPSSData->itemIcons[id].sprite->oam.priority = 1; + sStorage->itemIcons[id].sprite->oam.priority = 1; break; } - sPSSData->itemIcons[id].area = cursorArea; - sPSSData->itemIcons[id].pos = cursorPos; + sStorage->itemIcons[id].area = cursorArea; + sStorage->itemIcons[id].pos = cursorPos; } static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) @@ -8947,14 +8947,14 @@ static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) if (id >= MAX_ITEM_ICONS) return; - CpuFastFill(0, sPSSData->field_42C4, 0x200); - LZ77UnCompWram(itemTiles, sPSSData->tileBuffer); + CpuFastFill(0, sStorage->field_42C4, 0x200); + LZ77UnCompWram(itemTiles, sStorage->tileBuffer); for (i = 0; i < 3; i++) - CpuFastCopy(&sPSSData->tileBuffer[i * 0x60], &sPSSData->field_42C4[i * 0x80], 0x60); + CpuFastCopy(&sStorage->tileBuffer[i * 0x60], &sStorage->field_42C4[i * 0x80], 0x60); - CpuFastCopy(sPSSData->field_42C4, sPSSData->itemIcons[id].tiles, 0x200); - LZ77UnCompWram(itemPal, sPSSData->field_42C4); - LoadPalette(sPSSData->field_42C4, sPSSData->itemIcons[id].palIndex, 0x20); + CpuFastCopy(sStorage->field_42C4, sStorage->itemIcons[id].tiles, 0x200); + LZ77UnCompWram(itemPal, sStorage->field_42C4); + LoadPalette(sStorage->field_42C4, sStorage->itemIcons[id].palIndex, 0x20); } static void SetItemIconAffineAnim(u8 id, u8 animNum) @@ -8962,7 +8962,7 @@ static void SetItemIconAffineAnim(u8 id, u8 animNum) if (id >= MAX_ITEM_ICONS) return; - StartSpriteAffineAnim(sPSSData->itemIcons[id].sprite, animNum); + StartSpriteAffineAnim(sStorage->itemIcons[id].sprite, animNum); } #define sItemIconId data[0] @@ -8978,36 +8978,36 @@ static void SetItemIconCallback(u8 id, u8 callbackId, u8 cursorArea, u8 cursorPo switch (callbackId) { case ITEM_CB_WAIT_ANIM: - sPSSData->itemIcons[id].sprite->sItemIconId = id; - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_WaitAnim; + sStorage->itemIcons[id].sprite->sItemIconId = id; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_WaitAnim; break; case ITEM_CB_TO_HAND: - sPSSData->itemIcons[id].sprite->sState = 0; - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToHand; + sStorage->itemIcons[id].sprite->sState = 0; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToHand; break; case ITEM_CB_TO_MON: - sPSSData->itemIcons[id].sprite->sState = 0; - sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; - sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToMon; + sStorage->itemIcons[id].sprite->sState = 0; + sStorage->itemIcons[id].sprite->sCursorArea = cursorArea; + sStorage->itemIcons[id].sprite->sCursorPos = cursorPos; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_ToMon; break; case ITEM_CB_SWAP_TO_HAND: - sPSSData->itemIcons[id].sprite->sState = 0; - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToHand; - sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; - sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; + sStorage->itemIcons[id].sprite->sState = 0; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToHand; + sStorage->itemIcons[id].sprite->sCursorArea = cursorArea; + sStorage->itemIcons[id].sprite->sCursorPos = cursorPos; break; case ITEM_CB_SWAP_TO_MON: - sPSSData->itemIcons[id].sprite->sState = 0; - sPSSData->itemIcons[id].sprite->sCursorArea = cursorArea; - sPSSData->itemIcons[id].sprite->sCursorPos = cursorPos; - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToMon; + sStorage->itemIcons[id].sprite->sState = 0; + sStorage->itemIcons[id].sprite->sCursorArea = cursorArea; + sStorage->itemIcons[id].sprite->sCursorPos = cursorPos; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_SwapToMon; break; case ITEM_CB_HIDE_PARTY: // If cursor is on a Pokémon with a held item and // the player closes the party menu, have the held // item follow the Pokémon as the menu slides out - sPSSData->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_HideParty; + sStorage->itemIcons[id].sprite->callback = SpriteCB_ItemIcon_HideParty; break; } } @@ -9017,8 +9017,8 @@ static void SetItemIconActive(u8 id, bool8 active) if (id >= MAX_ITEM_ICONS) return; - sPSSData->itemIcons[id].active = active; - sPSSData->itemIcons[id].sprite->invisible = (active == FALSE); + sStorage->itemIcons[id].active = active; + sStorage->itemIcons[id].sprite->invisible = (active == FALSE); } static const u32 *GetItemIconPic(u16 itemId) @@ -9036,9 +9036,9 @@ static void PrintItemDescription(void) const u8 *description; if (IsMovingItem()) - description = ItemId_GetDescription(sPSSData->movingItemId); + description = ItemId_GetDescription(sStorage->movingItemId); else - description = ItemId_GetDescription(sPSSData->displayMonItemId); + description = ItemId_GetDescription(sStorage->displayMonItemId); FillWindowPixelBuffer(2, PIXEL_FILL(1)); AddTextPrinterParameterized5(2, 1, description, 4, 0, 0, NULL, 0, 1); @@ -9046,7 +9046,7 @@ static void PrintItemDescription(void) static void InitItemInfoWindow(void) { - sPSSData->itemInfoWindowOffset = 21; + sStorage->itemInfoWindowOffset = 21; LoadBgTiles(0, sItemInfoFrame_Gfx, 0x80, 0x13A); DrawItemInfoWindow(0); } @@ -9055,33 +9055,33 @@ static bool8 UpdateItemInfoWindowSlideIn(void) { s32 i, pos; - if (sPSSData->itemInfoWindowOffset == 0) + if (sStorage->itemInfoWindowOffset == 0) return FALSE; - sPSSData->itemInfoWindowOffset--; - pos = 21 - sPSSData->itemInfoWindowOffset; + sStorage->itemInfoWindowOffset--; + pos = 21 - sStorage->itemInfoWindowOffset; for (i = 0; i < pos; i++) - WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); + WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sStorage->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); DrawItemInfoWindow(pos); - return (sPSSData->itemInfoWindowOffset != 0); + return (sStorage->itemInfoWindowOffset != 0); } static bool8 UpdateItemInfoWindowSlideOut(void) { s32 i, pos; - if (sPSSData->itemInfoWindowOffset == 22) + if (sStorage->itemInfoWindowOffset == 22) return FALSE; - if (sPSSData->itemInfoWindowOffset == 0) + if (sStorage->itemInfoWindowOffset == 0) FillBgTilemapBufferRect(0, 0, 21, 12, 1, 9, 17); - sPSSData->itemInfoWindowOffset++; - pos = 21 - sPSSData->itemInfoWindowOffset; + sStorage->itemInfoWindowOffset++; + pos = 21 - sStorage->itemInfoWindowOffset; for (i = 0; i < pos; i++) { - WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sPSSData->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); + WriteSequenceToBgTilemapBuffer(0, GetBgAttribute(0, BG_ATTR_BASETILE) + 0x14 + sStorage->itemInfoWindowOffset + i, i, 13, 1, 7, 15, 21); } if (pos >= 0) @@ -9138,9 +9138,9 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *sprite) { - sprite->pos1.x = sPSSData->cursorSprite->pos1.x + 4; - sprite->pos1.y = sPSSData->cursorSprite->pos1.y + sPSSData->cursorSprite->pos2.y + 8; - sprite->oam.priority = sPSSData->cursorSprite->oam.priority; + sprite->pos1.x = sStorage->cursorSprite->pos1.x + 4; + sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 8; + sprite->oam.priority = sStorage->cursorSprite->oam.priority; } static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite) From 52495e889fcc5a0045a77234ab28e06fd957f542 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 17 Apr 2021 23:55:24 -0400 Subject: [PATCH 138/762] Doc storage - cleanup --- .../unknown.pal} | 0 .../unused.pal} | 0 .../wallpapers/unused.bin} | 0 src/data/wallpapers.h | 2 +- src/pokemon_storage_system.c | 707 +++++++++++------- 5 files changed, 435 insertions(+), 274 deletions(-) rename graphics/{unknown/unknown_5726F4.pal => pokemon_storage/unknown.pal} (100%) rename graphics/{unused/unknown_5726B4.pal => pokemon_storage/unused.pal} (100%) rename graphics/{unused/tilemap_5773C4.bin => pokemon_storage/wallpapers/unused.bin} (100%) diff --git a/graphics/unknown/unknown_5726F4.pal b/graphics/pokemon_storage/unknown.pal similarity index 100% rename from graphics/unknown/unknown_5726F4.pal rename to graphics/pokemon_storage/unknown.pal diff --git a/graphics/unused/unknown_5726B4.pal b/graphics/pokemon_storage/unused.pal similarity index 100% rename from graphics/unused/unknown_5726B4.pal rename to graphics/pokemon_storage/unused.pal diff --git a/graphics/unused/tilemap_5773C4.bin b/graphics/pokemon_storage/wallpapers/unused.bin similarity index 100% rename from graphics/unused/tilemap_5773C4.bin rename to graphics/pokemon_storage/wallpapers/unused.bin diff --git a/src/data/wallpapers.h b/src/data/wallpapers.h index e198423c7371..64c61fe2d5ce 100644 --- a/src/data/wallpapers.h +++ b/src/data/wallpapers.h @@ -148,7 +148,7 @@ static const u32 sWallpaperTiles_Plain[] = INCBIN_U32("graphics/pokemon_storage/ static const u32 sWallpaperTilemap_Plain[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/plain/tilemap.bin.lz"); // 12x18 tilemap -static const u32 gUnknown_085773C4[] = INCBIN_U32("graphics/unused/tilemap_5773C4.bin"); +static const u32 sWallpaperTilemap_Unused[] = INCBIN_U32("graphics/pokemon_storage/wallpapers/unused.bin"); // Shadow color, text color static const u16 sBoxTitleColors[WALLPAPER_COUNT][2] = diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index c4b3c6f607bc..c17b20437a68 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -42,6 +42,14 @@ #include "constants/rgb.h" #include "constants/songs.h" +/* + NOTE: This file is large. Some general groups of functions have + been labeled with commented headers to make navigation easier. + Search for "SECTION:" to locate them. These sections are not + hard and fast rules, but give a basic idea of where certain + types of functions are likely located. +*/ + // PC main menu options enum { OPTION_WITHDRAW, @@ -215,10 +223,10 @@ enum { PALTAG_4, // Unused PALTAG_5, // Unused PALTAG_DISPLAY_MON, - PALTAG_7, + PALTAG_MISC_1, PALTAG_MARKING_COMBO, PALTAG_BOX_TITLE, - PALTAG_10, + PALTAG_MISC_2, PALTAG_ITEM_ICON_0, PALTAG_ITEM_ICON_1, // Used implicitly in CreateItemIconSprites PALTAG_ITEM_ICON_2, // Used implicitly in CreateItemIconSprites @@ -316,6 +324,7 @@ enum { MULTIMOVE_PLACE_MONS, }; +// IDs for TilemapUtil enum { TILEMAPID_PKMN_DATA, // The "Pkmn Data" text at the top of the display TILEMAPID_PARTY_MENU, @@ -394,9 +403,9 @@ struct PokemonStorageSystemData struct UnkUtil unkUtil; struct UnkUtilData unkUtilData[8]; u16 partyMenuTilemapBuffer[0x108]; - u16 partyMenuUnused; // Never read + u16 partyMenuUnused1; // Never read u16 partyMenuY; - u8 field_2C4; // Unused + u8 partyMenuUnused2; // Unused u8 partyMenuMoveTimer; u8 showPartyMenuState; bool8 closeBoxFlashing; @@ -415,7 +424,7 @@ struct PokemonStorageSystemData u16 scrollUnused4; // Never read u16 scrollUnused5; // Never read u16 scrollUnused6; // Never read - u8 filler[22]; + u8 filler1[22]; u8 boxTitleTiles[1024]; u8 boxTitleCycleId; u8 wallpaperLoadState; // Written to, but never read. @@ -427,9 +436,9 @@ struct PokemonStorageSystemData struct Sprite *curBoxTitleSprites[2]; struct Sprite *nextBoxTitleSprites[2]; struct Sprite *arrowSprites[2]; - u32 boxTitlePalBits; - u8 field_73C[80]; // Unused - u16 field_78C; // Never read. + u32 wallpaperPalBits; + u8 filler2[80]; // Unused + u16 unkUnused1; // Never read. s16 wallpaperSetId; s16 wallpaperId; u16 wallpaperTilemap[360]; @@ -441,14 +450,14 @@ struct PokemonStorageSystemData struct Sprite *movingMonSprite; struct Sprite *partySprites[PARTY_SIZE]; struct Sprite *boxMonsSprites[IN_BOX_COUNT]; - struct Sprite **field_B00; + struct Sprite **shiftMonSpritePtr; struct Sprite **releaseMonSpritePtr; u16 numIconsPerSpecies[MAX_MON_ICONS]; u16 iconSpeciesList[MAX_MON_ICONS]; u16 boxSpecies[IN_BOX_COUNT]; u32 boxPersonalities[IN_BOX_COUNT]; - u8 field_C5C; - u8 field_C5D; + u8 incomingBoxId; + u8 shiftTimer; u8 numPartyToCompact; u16 iconScrollDistance; s16 iconScrollPos; @@ -496,7 +505,7 @@ struct PokemonStorageSystemData u8 displayMonItemName[36]; bool8 (*monPlaceChangeFunc)(void); u8 monPlaceChangeState; - u8 field_D91; + u8 shiftBoxId; struct Sprite *markingComboSprite; struct Sprite *waveformSprites[2]; u16 *markingComboTilesPtr; @@ -530,14 +539,14 @@ struct PokemonStorageSystemData struct ItemIcon itemIcons[MAX_ITEM_ICONS]; u16 movingItemId; u16 itemInfoWindowOffset; - u8 field_2238; // Unused + u8 unkUnused2; // Unused u16 displayMonPalOffset; u16 *displayMonTilePtr; struct Sprite *displayMonSprite; u16 displayMonPalBuffer[0x40]; u8 tileBuffer[0x800]; - u8 field_2AC4[0x1800]; // Unused - u8 field_42C4[0x800]; + u8 unusedBuffer[0x1800]; // Unused + u8 itemIconBuffer[0x800]; u8 wallpaperBgTilemapBuffer[0x1000]; u8 displayMenuTilemapBuffer[0x800]; }; @@ -561,122 +570,8 @@ EWRAM_DATA static u8 sMovingMonOrigBoxId = 0; EWRAM_DATA static u8 sMovingMonOrigBoxPos = 0; EWRAM_DATA static bool8 sAutoActionOn = 0; -static void CreateMainMenu(u8, s16 *); +// Main tasks static void EnterPokeStorage(u8); -static u8 GetCurrentBoxOption(void); -static u8 HandleInput(void); -static u8 GetSavedCursorPos(void); -static u8 GetNumPartySpritesCompacting(void); -static void LoadWallpaperGfx(u8, s8); -static void CreateIncomingBoxTitle(u8, s8); -static void StartBoxScrollArrowsSlide(s8); -static void SetCurrentBox(u8); -static void CreateInitBoxTask(u8); -static void ChooseBoxMenu_CreateSprites(u8); -static void TrimOldWallpaper(void *); -static void ChooseBoxMenu_DestroySprites(void); -static void ChooseBoxMenu_MoveLeft(void); -static void ScrollBackground(void); -static void ChooseBoxMenu_MoveRight(void); -static void ChooseBoxMenu_PrintInfo(void); -static void UpdateCloseBoxButtonFlash(void); -static void ToggleCursorAutoAction(void); -static void LoadSavedMovingMon(void); -static void SetSelectionAfterSummaryScreen(void); -static void GiveChosenBagItem(void); -static void SetUpHidePartyMenu(void); -static void DestroyAllPartyMonIcons(void); -static void MoveHeldItemWithPartyMenu(void); -static void LoadPokeStorageMenuGfx(void); -static void LoadWaveformSpritePalette(void); -static void SaveCursorPos(void); -static void sub_80CD36C(void); -static void sub_80CD3EC(void); -static void sub_80CAC1C(void); -static void ReshowDisplayMon(void); -static void SetScrollingBackground(void); -static void sub_80CABE0(void); -static void sub_80CAEAC(void); -static void CreateItemIconSprites(void); -static void TryHideItemAtCursor(void); -static void ClearSavedCursorPos(void); -static void InitMonIconFields(void); -static void sub_80CA0D8(void); -static void AddMenu(void); -static void InitReleaseMon(void); -static void InitCanReleaseMonVars(void); -static void ReleaseMon(void); -static void RefreshDisplayMonData(void); -static void CreateDisplayMonSprite(void); -static void CreateMarkingComboSprite(void); -static void CreateWaveformSprites(void); -static void ReshowReleaseMon(void); -static void TrySetCursorFistAnim(void); -static void ClearBottomWindow(void); -static void InitSupplementalTilemaps(void); -static void RemoveMenu(void); -static void RefreshDisplayMon(void); -static void MoveItemFromCursorToBag(void); -static void PrintDisplayMonInfo(void); -static void UpdateWaveformAnimation(void); -static void AddWallpaperSetsMenu(void); -static void CreateBoxScrollArrows(void); -static void InitMenu(void); -static void StopBoxScrollArrowsSlide(void); -static void CreateCursorSprites(void); -static void TryRefreshDisplayMon(void); -static void CycleBoxTitleSprites(void); -static void InitItemInfoWindow(void); -static void DrawItemInfoWindow(u32); -static void SetPartySlotTilemaps(void); -static void PrintItemDescription(void); -static void SaveMovingMon(void); -static void SetCursorInParty(void); -static void InitSummaryScreenData(void); -static void TryShowItemAtCursor(void); -static void StopFlashingCloseBoxButton(void); -static void FreePokeStorageData(void); -static void AddBoxMenu(void); -static void CycleBoxTitleColor(void); -static void MoveMon(void); -static void PlaceMon(void); -static void UpdatePartySlotColors(void); -static void sub_80CE22C(void); -static void DoCursorNewPosUpdate(void); -static void CompactPartySprites(void); -static void StartFlashingCloseBoxButton(void); -static void SetUpDoShowPartyMenu(void); -static void StartDisplayMonMosaicEffect(void); -static void SpriteCB_ChooseBoxArrow(struct Sprite *); -static void SpriteCB_HeldMon(struct Sprite *); -static void SpriteCB_BoxMonIconScrollOut(struct Sprite *); -static void SpriteCB_Arrow(struct Sprite *); -static bool32 WaitForWallpaperGfxLoad(void); -static bool8 InitPokeStorageWindows(void); -static bool8 ResetReleaseMonSpritePtr(void); -static bool8 TryHideReleaseMon(void); -static bool8 IsInitBoxActive(void); -static bool8 MonPlaceChange_CursorDown(void); -static bool8 MonPlaceChange_CursorUp(void); -static bool8 UpdateItemInfoWindowSlideIn(void); -static bool8 UpdateItemInfoWindowSlideOut(void); -static bool8 DoShowPartyMenu(void); -static bool8 IsItemIconAnimActive(void); -static bool8 ScrollToBox(void); -static bool8 UpdateCursorPos(void); -static bool8 HidePartyMenu(void); -static bool8 IsMovingItem(void); -static bool8 IsDisplayMosaicActive(void); -static bool8 DoWallpaperGfxChange(void); -static bool8 DoMonPlaceChange(void); -static bool8 IsMenuLoading(void); -static bool8 IsRemovingLastPartyMon(void); -static bool8 CanShiftMon(void); -static bool8 IsCursorOnCloseBox(void); -static bool8 IsCursorOnBoxTitle(void); -static bool8 IsCursorInBox(void); -static bool8 IsMonBeingMoved(void); -static bool8 TryStorePartyMonInBox(u8); static void Task_InitPokeStorage(u8); static void Task_PlaceMon(u8); static void Task_ChangeScreen(u8); @@ -708,72 +603,81 @@ static void Task_HandleWallpapers(u8); static void Task_NameBox(u8); static void Task_PrintCantStoreMail(u8); static void Task_HandleMovingMonFromParty(u8); -static void SetUpScrollToBox(u8); -static void StartCursorAnim(u8); -static void SetMovingMonPriority(u8); -static void InitMonPlaceChange(u8); -static void SetMonMarkings(u8); -static void ShowYesNoWindow(s8); -static void SetCursorBoxPosition(u8); -static void AnimateBoxScrollArrows(bool8); -static void UpdateCloseBoxButtonTilemap(bool8); -static void CreatePartyMonsSprites(bool8); -static void PrintMessage(u8 id); + +// Input handlers +static u8 InBoxInput_Normal(void); +static u8 InBoxInput_MovingMultiple(void); +static u8 InBoxInput_SelectingMultiple(void); +static u8 HandleInput(void); +static void AddBoxOptionsMenu(void); +static u8 SetSelectionMenuTexts(void); +static bool8 SetMenuTexts_Mon(void); +static bool8 SetMenuTexts_Item(void); + +// Choose box menu +static void ChooseBoxMenu_CreateSprites(u8); +static void ChooseBoxMenu_DestroySprites(void); +static void ChooseBoxMenu_MoveLeft(void); +static void ChooseBoxMenu_MoveRight(void); +static void ChooseBoxMenu_PrintInfo(void); +static void SpriteCB_ChooseBoxArrow(struct Sprite *); + +// Options menus +static void InitMenu(void); +static void SetMenuText(u8); +static s8 GetMenuItemTextId(u8); +static void AddMenu(void); +static bool8 IsMenuLoading(void); static s16 HandleMenuInput(void); -static s8 RunCanReleaseMon(void); -static u8 GetCursorPosition(void); -static void TakeItemFromMon(u8, u8); -static void GiveItemToMon(u8, u8); -static void MoveItemFromMonToBag(u8, u8); -static void SwapItemsWithMon(u8, u8); -static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); -static void SetWallpaperForCurrentBox(u8); -static void AddWallpapersMenu(u8); -static u16 GetMovingItemId(void); -static void LoadDisplayMonGfx(u16, u32); -static void SpriteCB_DisplayMonMosaic(struct Sprite *); -static void SpriteCB_OutgoingBoxTitle(struct Sprite *); +static void RemoveMenu(void); + +// Pokémon sprites +static void InitMonIconFields(void); +static void SpriteCB_BoxMonIconScrollOut(struct Sprite *); +static void GetIncomingBoxMonData(u8); +static void CreatePartyMonsSprites(bool8); +static void CompactPartySprites(void); +static u8 GetNumPartySpritesCompacting(void); +static void MovePartySpriteToNextSlot(struct Sprite *, u16); static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *); -static void SpriteCB_IncomingBoxTitle(struct Sprite *); static void MovePartySprites(s16); -static void SetPartySlotTilemap(u8, bool8); -static const u8 *GetMovingItemName(void); -static void SetMenuText(u8); -static void TryLoadItemIconAtPos(u8, u8); -static void TryHideItemIconAtPos(u8, u8); -static void InitItemIconInCursor(u16); +static void DestroyAllPartyMonIcons(void); +static void ReshowReleaseMon(void); +static bool8 ResetReleaseMonSpritePtr(void); +static void SetMovingMonPriority(u8); +static void SpriteCB_HeldMon(struct Sprite *); static struct Sprite *CreateMonIconSprite(u16, u32, s16, s16, u8, u8); static void DestroyBoxMonIcon(struct Sprite *); -static void SetBoxSpeciesAndPersonalities(u8); -static void MovePartySpriteToNextSlot(struct Sprite *, u16); -static void Task_InitBox(u8); -static void InitBoxTitle(u8); -static s8 DetermineBoxScrollDirection(u8); -static void DrawWallpaper(const void *, s8, u8); -static s16 GetBoxTitleBaseX(const u8 *); -static bool8 MonPlaceChange_Shift(void); -static bool8 MonPlaceChange_Grab(void); -static bool8 MonPlaceChange_Place(void); -static bool8 MultiMonPlaceChange_Up(void); -static bool8 MultiMonPlaceChange_Down(void); -static void GetCursorCoordsByPos(u8, u8, u16 *, u16 *); -static void SetShiftedMonData(u8, u8); + +// Pokémon data +static void MoveMon(void); +static void PlaceMon(void); +static void RefreshDisplayMon(void); static void SetMovingMonData(u8, u8); static void SetPlacedMonData(u8, u8); static void PurgeMonOrBoxMon(u8, u8); -static void SetDisplayMonData(void *, u8); +static void SetShiftedMonData(u8, u8); +static bool8 TryStorePartyMonInBox(u8); +static void ResetSelectionAfterDeposit(void); +static void InitReleaseMon(void); +static bool8 TryHideReleaseMon(void); +static void InitCanReleaseMonVars(void); +static void ReleaseMon(void); static bool32 AtLeastThreeUsableMons(void); -static u8 InBoxInput_Normal(void); -static u8 InBoxInput_MovingMultiple(void); -static u8 InBoxInput_SelectingMultiple(void); -static s8 GetMenuItemTextId(u8); -static u8 SetSelectionMenuTexts(void); -static bool8 SetMenuTexts_Mon(void); -static bool8 SetMenuTexts_Item(void); -static u8 GetBoxWallpaper(u8); -static void SetBoxWallpaper(u8, u8); +static s8 RunCanReleaseMon(void); +static void SaveMovingMon(void); +static void LoadSavedMovingMon(void); +static void InitSummaryScreenData(void); +static void SetSelectionAfterSummaryScreen(void); +static void SetMonMarkings(u8); +static bool8 IsRemovingLastPartyMon(void); +static bool8 CanShiftMon(void); +static bool8 IsMonBeingMoved(void); +static void TryRefreshDisplayMon(void); +static void ReshowDisplayMon(void); +static void SetDisplayMonData(void *, u8); -// Functions for moving multiple Pokémon at once +// Moving multiple Pokémon at once static void MultiMove_Free(void); static bool8 MultiMove_Init(void); static bool8 MultiMove_RunFunction(void); @@ -802,7 +706,7 @@ static void MultiMove_SelectRow(u8, u8, u8); static void MultiMove_SelectColumn(u8, u8, u8); static void MultiMove_DeselectColumn(u8, u8, u8); -// Functions for Move Items mode +// Move Items mode static bool32 IsItemIconAtPosition(u8, u8); static const u32 *GetItemIconPic(u16); static const u32 *GetItemIconPalette(u16); @@ -812,6 +716,25 @@ static void LoadItemIconGfx(u8, const u32 *, const u32 *); static void SetItemIconAffineAnim(u8, u8); static void SetItemIconActive(u8, bool8); static u8 GetItemIconIdxByPosition(u8, u8); +static void CreateItemIconSprites(void); +static void TryLoadItemIconAtPos(u8, u8); +static void TryHideItemIconAtPos(u8, u8); +static void TakeItemFromMon(u8, u8); +static void InitItemIconInCursor(u16); +static void SwapItemsWithMon(u8, u8); +static void GiveItemToMon(u8, u8); +static void MoveItemFromMonToBag(u8, u8); +static void MoveItemFromCursorToBag(void); +static void MoveHeldItemWithPartyMenu(void); +static bool8 IsItemIconAnimActive(void); +static bool8 IsMovingItem(void); +static const u8 *GetMovingItemName(void); +static u16 GetMovingItemId(void); +static void PrintItemDescription(void); +static void InitItemInfoWindow(void); +static bool8 UpdateItemInfoWindowSlideIn(void); +static bool8 UpdateItemInfoWindowSlideOut(void); +static void DrawItemInfoWindow(u32); static void SetItemIconCallback(u8, u8, u8, u8); static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *); static void SpriteCB_ItemIcon_WaitAnim(struct Sprite *); @@ -821,7 +744,116 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *); static void SpriteCB_ItemIcon_HideParty(struct Sprite *); static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *); -// Functions for the tilemap updating utility +// Cursor +static void CreateCursorSprites(void); +static void ToggleCursorAutoAction(void); +static u8 GetCursorPosition(void); +static void StartCursorAnim(u8); +static void TryHideItemAtCursor(void); +static void TryShowItemAtCursor(void); +static void InitCursor(void); +static void InitCursorOnReopen(void); +static void GetCursorCoordsByPos(u8, u8, u16 *, u16 *); +static bool8 UpdateCursorPos(void); +static void DoCursorNewPosUpdate(void); +static void SetCursorInParty(void); +static void SetCursorBoxPosition(u8); +static void ClearSavedCursorPos(void); +static void SaveCursorPos(void); +static u8 GetSavedCursorPos(void); +static void InitMonPlaceChange(u8); +static bool8 DoMonPlaceChange(void); +static bool8 MonPlaceChange_Shift(void); +static bool8 MonPlaceChange_Grab(void); +static bool8 MonPlaceChange_Place(void); +static bool8 MultiMonPlaceChange_Up(void); +static bool8 MultiMonPlaceChange_Down(void); +static bool8 MonPlaceChange_CursorDown(void); +static bool8 MonPlaceChange_CursorUp(void); +static void TrySetCursorFistAnim(void); +static bool8 IsCursorOnCloseBox(void); +static bool8 IsCursorOnBoxTitle(void); +static bool8 IsCursorInBox(void); + +// Scroll arrows +static void CreateBoxScrollArrows(void); +static void StartBoxScrollArrowsSlide(s8); +static void StopBoxScrollArrowsSlide(void); +static void AnimateBoxScrollArrows(bool8); +static void SpriteCB_Arrow(struct Sprite *); +static struct Sprite *CreateChooseBoxArrows(u16, u16, u8, u8, u8); + +// Box title +static void InitBoxTitle(u8); +static void CreateIncomingBoxTitle(u8, s8); +static void CycleBoxTitleSprites(void); +static void SpriteCB_IncomingBoxTitle(struct Sprite *); +static void SpriteCB_OutgoingBoxTitle(struct Sprite *); +static void CycleBoxTitleColor(void); +static s16 GetBoxTitleBaseX(const u8 *); + +// Wallpaper +static void SetWallpaperForCurrentBox(u8); +static bool8 DoWallpaperGfxChange(void); +static void LoadWallpaperGfx(u8, s8); +static bool32 WaitForWallpaperGfxLoad(void); +static void DrawWallpaper(const void *, s8, u8); +static void TrimOldWallpaper(void *); +static void AddWallpaperSetsMenu(void); +static void AddWallpapersMenu(u8); +static u8 GetBoxWallpaper(u8); +static void SetBoxWallpaper(u8, u8); + +// General box +static void CreateInitBoxTask(u8); +static bool8 IsInitBoxActive(void); +static void Task_InitBox(u8); +static void SetUpScrollToBox(u8); +static bool8 ScrollToBox(void); +static s8 DetermineBoxScrollDirection(u8); +static void SetCurrentBox(u8); + +// Misc +static void CreateMainMenu(u8, s16 *); +static u8 GetCurrentBoxOption(void); +static void ScrollBackground(void); +static void UpdateCloseBoxButtonFlash(void); +static void GiveChosenBagItem(void); +static void SetUpHidePartyMenu(void); +static void LoadPokeStorageMenuGfx(void); +static void LoadWaveformSpritePalette(void); +static void InitPokeStorageBg0(void); +static void SetScrollingBackground(void); +static void UpdateBoxToSendMons(void); +static void InitCursorItemIcon(void); +static void InitPalettesAndSprites(void); +static void RefreshDisplayMonData(void); +static void CreateDisplayMonSprite(void); +static void CreateMarkingComboSprite(void); +static void CreateWaveformSprites(void); +static void ClearBottomWindow(void); +static void InitSupplementalTilemaps(void); +static void PrintDisplayMonInfo(void); +static void UpdateWaveformAnimation(void); +static void SetPartySlotTilemaps(void); +static void StopFlashingCloseBoxButton(void); +static void FreePokeStorageData(void); +static void UpdatePartySlotColors(void); +static void StartFlashingCloseBoxButton(void); +static void SetUpDoShowPartyMenu(void); +static void StartDisplayMonMosaicEffect(void); +static bool8 InitPokeStorageWindows(void); +static bool8 DoShowPartyMenu(void); +static bool8 HidePartyMenu(void); +static bool8 IsDisplayMosaicActive(void); +static void ShowYesNoWindow(s8); +static void UpdateCloseBoxButtonTilemap(bool8); +static void PrintMessage(u8 id); +static void LoadDisplayMonGfx(u16, u32); +static void SpriteCB_DisplayMonMosaic(struct Sprite *); +static void SetPartySlotTilemap(u8, bool8); + +// Tilemap utility static void TilemapUtil_SetRect(u8, u16, u16, u16, u16); static void TilemapUtil_Move(u8, u8, s8); static void TilemapUtil_SetMap(u8, u8, const void *, u16, u16); @@ -832,7 +864,7 @@ static void TilemapUtil_Update(u8); static void TilemapUtil_DrawPrev(u8); static void TilemapUtil_Draw(u8); -// Functions for unknown utility +// Unknown utility static void UnkUtil_Init(struct UnkUtil *, struct UnkUtilData *, u32); static void UnkUtil_Run(void); static void UnkUtil_CpuRun(struct UnkUtilData *); @@ -945,8 +977,8 @@ static const u16 sPartySlotEmpty_Tilemap[] = static const u16 sWaveform_Pal[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); static const u32 sWaveform_Gfx[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); -static const u16 gUnknown_085726B4[] = INCBIN_U16("graphics/unused/unknown_5726B4.gbapal"); -static const u16 gUnknown_085726F4[] = INCBIN_U16("graphics/unknown/unknown_5726F4.gbapal"); +static const u16 sUnused_Pal[] = INCBIN_U16("graphics/pokemon_storage/unused.gbapal"); +static const u16 sUnknown_Pal[] = INCBIN_U16("graphics/pokemon_storage/unknown.gbapal"); static const struct WindowTemplate sWindowTemplates[] = { @@ -1022,7 +1054,7 @@ static const struct BgTemplate sBgTemplates[] = static const struct SpritePalette gWaveformSpritePalette = { - sWaveform_Pal, PALTAG_10 + sWaveform_Pal, PALTAG_MISC_2 }; static const struct SpriteSheet sSpriteSheet_Waveform = @@ -1161,7 +1193,7 @@ static const union AnimCmd *const sAnims_Waveform[] = static const struct SpriteTemplate sSpriteTemplate_Waveform = { .tileTag = GFXTAG_WAVEFORM, - .paletteTag = PALTAG_10, + .paletteTag = PALTAG_MISC_2, .oam = &sOamData_Waveform, .anims = sAnims_Waveform, .images = NULL, @@ -1254,7 +1286,7 @@ static const struct SpriteTemplate sSpriteTemplate_BoxTitle = .paletteTag = PALTAG_BOX_TITLE, .oam = &sOamData_BoxTitle, .anims = sAnims_BoxTitle, - .images NULL, + .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; @@ -1287,7 +1319,7 @@ static const union AnimCmd *const sAnims_Arrow[] = static const struct SpriteTemplate sSpriteTemplate_Arrow = { .tileTag = GFXTAG_ARROW, - .paletteTag = PALTAG_10, + .paletteTag = PALTAG_MISC_2, .oam = &sOamData_Arrow, .anims = sAnims_Arrow, .images = NULL, @@ -1299,6 +1331,12 @@ static const u16 sHandCursor_Pal[] = INCBIN_U16("graphics/pokemon_storage/hand_c static const u8 sHandCursor_Gfx[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor.4bpp"); static const u8 sHandCursorShadow_Gfx[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor_shadow.4bpp"); + +//------------------------------------------------------------------------------ +// SECTION: Misc utility +//------------------------------------------------------------------------------ + + void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero2, s32 bytesToBuffer) { s32 i, tileBytesToBuffer, remainingBytes; @@ -1461,7 +1499,8 @@ u8 *StringCopyAndFillWithSpaces(u8 *dst, const u8 *src, u16 n) return str; } -static void sub_80C7128(u16 *dest, u16 dest_left, u16 dest_top, const u16 *src, u16 src_left, u16 src_top, u16 dest_width, u16 dest_height, u16 src_width) +// Unused +static void UnusedWriteRectCpu(u16 *dest, u16 dest_left, u16 dest_top, const u16 *src, u16 src_left, u16 src_top, u16 dest_width, u16 dest_height, u16 src_width) { u16 i; @@ -1476,7 +1515,8 @@ static void sub_80C7128(u16 *dest, u16 dest_left, u16 dest_top, const u16 *src, } } -static void sub_80C71A4(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) +// Unused +static void UnusedWriteRectDma(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) { u16 i; @@ -1486,6 +1526,16 @@ static void sub_80C71A4(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 h Dma3FillLarge16_(0, dest, width); } + +//------------------------------------------------------------------------------ +// SECTION: Main menu +// +// The below functions generally handle the PC main menu where the main +// options can be selected (Withdraw, Deposit, etc.), as well as exiting +// Pokémon Storage back to this menu. +//------------------------------------------------------------------------------ + + enum { STATE_LOAD, STATE_FADE_IN, @@ -1714,6 +1764,16 @@ void ResetPokemonStorageSystem(void) ResetWaldaWallpaper(); } + +//------------------------------------------------------------------------------ +// SECTION: Choose Box menu +// +// The below functions handle the popup menu that allows the player to cycle +// through the boxes and select one. Used when storing Pokémon in Deposit mode +// and for the Jump feature. +//------------------------------------------------------------------------------ + + static void LoadChooseBoxMenuGfx(struct ChooseBoxMenu *menu, u16 tileTag, u16 palTag, u8 subpriority, bool32 loadPal) { struct SpritePalette palette = @@ -1919,6 +1979,17 @@ static void SpriteCB_ChooseBoxArrow(struct Sprite *sprite) } } + +//------------------------------------------------------------------------------ +// SECTION: Main tasks +// +// Below are the main task callbacks that handle the primary actions the +// player can take in the PC. The most 'important' of these tasks is the +// primary one, Task_PokeStorageMain. Also included are some basic +// initialization functions. +//------------------------------------------------------------------------------ + + static void VBlankCB_PokeStorage(void) { LoadOam(); @@ -1989,7 +2060,7 @@ static void ResetAllBgCoords(void) SetGpuReg(REG_OFFSET_BG3VOFS, 0); } -static void sub_80C7E98(void) +static void ResetForPokeStorage(void) { ResetPaletteFade(); ResetSpriteData(); @@ -2006,7 +2077,7 @@ static void sub_80C7E98(void) sStorage->closeBoxFlashing = FALSE; } -static void sub_80C7F1C(void) +static void InitStartingPosData(void) { ClearSavedCursorPos(); sInPartyMenu = (sStorage->boxOption == OPTION_DEPOSIT); @@ -2036,7 +2107,7 @@ static void Task_InitPokeStorage(u8 taskId) case 0: SetVBlankCallback(NULL); SetGpuReg(REG_OFFSET_DISPCNT, 0); - sub_80C7E98(); + ResetForPokeStorage(); if (sStorage->isReopening) { switch (sWhichToReshow) @@ -2074,14 +2145,14 @@ static void Task_InitPokeStorage(u8 taskId) case 3: ResetAllBgCoords(); if (!sStorage->isReopening) - sub_80C7F1C(); + InitStartingPosData(); break; case 4: InitMonIconFields(); if (!sStorage->isReopening) - sub_80CD36C(); + InitCursor(); else - sub_80CD3EC(); + InitCursorOnReopen(); break; case 5: if (!MultiMove_Init()) @@ -2092,11 +2163,11 @@ static void Task_InitPokeStorage(u8 taskId) else { SetScrollingBackground(); - sub_80CAC1C(); + InitPokeStorageBg0(); } break; case 6: - sub_80CA0D8(); + InitPalettesAndSprites(); break; case 7: InitSupplementalTilemaps(); @@ -2118,7 +2189,7 @@ static void Task_InitPokeStorage(u8 taskId) else { CreateItemIconSprites(); - sub_80CAEAC(); + InitCursorItemIcon(); } break; case 10: @@ -2795,7 +2866,7 @@ static void Task_DepositMenu(u8 taskId) { case 0: PrintMessage(MSG_DEPOSIT_IN_WHICH_BOX); - LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); + LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_MISC_1, 3, FALSE); CreateChooseBoxMenuSprites(sDepositBoxId); sStorage->state++; break; @@ -2836,7 +2907,7 @@ static void Task_DepositMenu(u8 taskId) case 3: if (GetNumPartySpritesCompacting() == 0) { - sub_80CE22C(); + ResetSelectionAfterDeposit(); StartDisplayMonMosaicEffect(); UpdatePartySlotColors(); SetPokeStorageTask(Task_PokeStorageMain); @@ -3450,7 +3521,7 @@ static void Task_JumpBox(u8 taskId) { case 0: PrintMessage(MSG_JUMP_TO_WHICH_BOX); - LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_7, 3, FALSE); + LoadChooseBoxMenuGfx(&sStorage->chooseBoxMenu, GFXTAG_CHOOSE_BOX_MENU, PALTAG_MISC_1, 3, FALSE); CreateChooseBoxMenuSprites(StorageGetCurrentBox()); sStorage->state++; break; @@ -3601,7 +3672,7 @@ static void Task_OnCloseBoxPressed(u8 taskId) case 4: if (!IsComputerScreenCloseEffectActive()) { - sub_80CABE0(); + UpdateBoxToSendMons(); gPlayerPartyCount = CalculatePlayerPartyCount(); sStorage->screenChangeType = SCREEN_CHANGE_EXIT_BOX; SetPokeStorageTask(Task_ChangeScreen); @@ -3662,7 +3733,7 @@ static void Task_OnBPressed(u8 taskId) case 4: if (!IsComputerScreenCloseEffectActive()) { - sub_80CABE0(); + UpdateBoxToSendMons(); gPlayerPartyCount = CalculatePlayerPartyCount(); sStorage->screenChangeType = SCREEN_CHANGE_EXIT_BOX; SetPokeStorageTask(Task_ChangeScreen); @@ -3737,6 +3808,16 @@ static void FreePokeStorageData(void) FreeAllWindowBuffers(); } + +//------------------------------------------------------------------------------ +// SECTION: Misc +// +// No real uniform section below. Misc functions including more initialization, +// showing/hiding the party menu, updating the Close Box button, printing +// messages, doing the mosaic effect when transitioning between Pokémon, etc. +//------------------------------------------------------------------------------ + + static void SetScrollingBackground(void) { SetGpuReg(REG_OFFSET_BG3CNT, BGCNT_PRIORITY(3) | BGCNT_CHARBASE(3) | BGCNT_16COLOR | BGCNT_SCREENBASE(31)); @@ -3778,11 +3859,11 @@ static void LoadWaveformSpritePalette(void) LoadSpritePalette(&gWaveformSpritePalette); } -static void sub_80CA0D8(void) +static void InitPalettesAndSprites(void) { LoadPalette(sInterface_Pal, 0, sizeof(sInterface_Pal)); LoadPalette(sPkmnDataGray_Pal, 0x20, sizeof(sPkmnDataGray_Pal)); - LoadPalette(gUnknown_085726F4, 0xF0, sizeof(gUnknown_085726F4)); + LoadPalette(sUnknown_Pal, 0xF0, sizeof(sUnknown_Pal)); if (sStorage->boxOption != OPTION_MOVE_ITEMS) LoadPalette(sBg_Pal, 0x30, sizeof(sBg_Pal)); else @@ -4003,7 +4084,7 @@ static void InitSupplementalTilemaps(void) static void SetUpShowPartyMenu(void) { - sStorage->partyMenuUnused = 20; + sStorage->partyMenuUnused1 = 20; sStorage->partyMenuY = 2; sStorage->partyMenuMoveTimer = 0; CreatePartyMonsSprites(FALSE); @@ -4014,7 +4095,7 @@ static bool8 ShowPartyMenu(void) if (sStorage->partyMenuMoveTimer == 20) return FALSE; - sStorage->partyMenuUnused--; + sStorage->partyMenuUnused1--; sStorage->partyMenuY++; TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, 1); TilemapUtil_Update(TILEMAPID_PARTY_MENU); @@ -4033,7 +4114,7 @@ static bool8 ShowPartyMenu(void) static void SetUpHidePartyMenu(void) { - sStorage->partyMenuUnused = 0; + sStorage->partyMenuUnused1 = 0; sStorage->partyMenuY = 22; sStorage->partyMenuMoveTimer = 0; if (sStorage->boxOption == OPTION_MOVE_ITEMS) @@ -4044,7 +4125,7 @@ static bool8 HidePartyMenu(void) { if (sStorage->partyMenuMoveTimer != 20) { - sStorage->partyMenuUnused++; + sStorage->partyMenuUnused1++; sStorage->partyMenuY--; TilemapUtil_Move(TILEMAPID_PARTY_MENU, 3, -1); TilemapUtil_Update(TILEMAPID_PARTY_MENU); @@ -4186,7 +4267,7 @@ static bool8 DoShowPartyMenu(void) return TRUE; } -static void sub_80CABE0(void) +static void UpdateBoxToSendMons(void) { if (sLastUsedBox != StorageGetCurrentBox()) { @@ -4195,7 +4276,7 @@ static void sub_80CABE0(void) } } -static void sub_80CAC1C(void) +static void InitPokeStorageBg0(void) { SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(29)); LoadUserWindowBorderGfx(1, 2, 208); @@ -4307,7 +4388,7 @@ static u8 GetCurrentBoxOption(void) return sCurrentBoxOption; } -static void sub_80CAEAC(void) +static void InitCursorItemIcon(void) { if (!IsCursorOnBoxTitle()) { @@ -4324,6 +4405,16 @@ static void sub_80CAEAC(void) } } + +//------------------------------------------------------------------------------ +// SECTION: Pokémon sprites +// +// The below functions generally handle the Pokémon icon sprites, including +// moving them with a scrolling box, shifting the party sprites, and +// animating released Pokémon. +//------------------------------------------------------------------------------ + + static void InitMonIconFields(void) { u16 i; @@ -4339,7 +4430,7 @@ static void InitMonIconFields(void) sStorage->boxMonsSprites[i] = NULL; sStorage->movingMonSprite = NULL; - sStorage->field_78C = 0; + sStorage->unkUnused1 = 0; } static u8 GetMonIconPriorityByCursorPos(void) @@ -4538,7 +4629,7 @@ static u8 CreateBoxMonIconsInColumn(u8 column, u16 distance, s16 speed) sStorage->boxMonsSprites[boxPosition]->sSpeed = speed; sStorage->boxMonsSprites[boxPosition]->sScrollInDestX = xDest; sStorage->boxMonsSprites[boxPosition]->callback = SpriteCB_BoxMonIconScrollIn; - if (GetBoxMonDataAt(sStorage->field_C5C, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) + if (GetBoxMonDataAt(sStorage->incomingBoxId, boxPosition, MON_DATA_HELD_ITEM) == ITEM_NONE) sStorage->boxMonsSprites[boxPosition]->oam.objMode = ST_OAM_OBJ_BLEND; iconsCreated++; } @@ -4565,7 +4656,7 @@ static void InitBoxMonIconScroll(u8 boxId, s8 direction) sStorage->iconScrollDistance = 32; sStorage->iconScrollSpeed = -(6 * direction); sStorage->iconScrollNumIncoming = 0; - SetBoxSpeciesAndPersonalities(boxId); + GetIncomingBoxMonData(boxId); if (direction > 0) sStorage->iconScrollCurColumn = 0; else @@ -4625,7 +4716,7 @@ static bool8 UpdateBoxMonIconScroll(void) return TRUE; } -static void SetBoxSpeciesAndPersonalities(u8 boxId) +static void GetIncomingBoxMonData(u8 boxId) { s32 i, j, boxPosition; @@ -4641,7 +4732,7 @@ static void SetBoxSpeciesAndPersonalities(u8 boxId) } } - sStorage->field_C5C = boxId; + sStorage->incomingBoxId = boxId; } static void DestroyBoxMonIconAtPosition(u8 boxPosition) @@ -4867,7 +4958,7 @@ static void SetMovingMonSprite(u8 mode, u8 id) sStorage->movingMonSprite->subpriority = 7; } -static void sub_80CBCAC(u8 boxId, u8 position) +static void SetPlacedMonSprite(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) // party mon { @@ -4885,47 +4976,47 @@ static void sub_80CBCAC(u8 boxId, u8 position) sStorage->movingMonSprite = NULL; } -static void sub_80CBD5C(u8 boxId, u8 position) +static void SaveMonSpriteAtPos(u8 boxId, u8 position) { if (boxId == TOTAL_BOXES_COUNT) // party mon - sStorage->field_B00 = &sStorage->partySprites[position]; + sStorage->shiftMonSpritePtr = &sStorage->partySprites[position]; else - sStorage->field_B00 = &sStorage->boxMonsSprites[position]; + sStorage->shiftMonSpritePtr = &sStorage->boxMonsSprites[position]; sStorage->movingMonSprite->callback = SpriteCallbackDummy; - sStorage->field_C5D = 0; + sStorage->shiftTimer = 0; } -static bool8 sub_80CBDC4(void) +static bool8 MoveShiftingMons(void) { - if (sStorage->field_C5D == 16) + if (sStorage->shiftTimer == 16) return FALSE; - sStorage->field_C5D++; - if (sStorage->field_C5D & 1) + sStorage->shiftTimer++; + if (sStorage->shiftTimer & 1) { - (*sStorage->field_B00)->pos1.y--; + (*sStorage->shiftMonSpritePtr)->pos1.y--; sStorage->movingMonSprite->pos1.y++; } - (*sStorage->field_B00)->pos2.x = gSineTable[sStorage->field_C5D * 8] / 16; - sStorage->movingMonSprite->pos2.x = -(gSineTable[sStorage->field_C5D * 8] / 16); - if (sStorage->field_C5D == 8) + (*sStorage->shiftMonSpritePtr)->pos2.x = gSineTable[sStorage->shiftTimer * 8] / 16; + sStorage->movingMonSprite->pos2.x = -(gSineTable[sStorage->shiftTimer * 8] / 16); + if (sStorage->shiftTimer == 8) { - sStorage->movingMonSprite->oam.priority = (*sStorage->field_B00)->oam.priority; - sStorage->movingMonSprite->subpriority = (*sStorage->field_B00)->subpriority; - (*sStorage->field_B00)->oam.priority = GetMonIconPriorityByCursorPos(); - (*sStorage->field_B00)->subpriority = 7; + sStorage->movingMonSprite->oam.priority = (*sStorage->shiftMonSpritePtr)->oam.priority; + sStorage->movingMonSprite->subpriority = (*sStorage->shiftMonSpritePtr)->subpriority; + (*sStorage->shiftMonSpritePtr)->oam.priority = GetMonIconPriorityByCursorPos(); + (*sStorage->shiftMonSpritePtr)->subpriority = 7; } - if (sStorage->field_C5D == 16) + if (sStorage->shiftTimer == 16) { struct Sprite *sprite = sStorage->movingMonSprite; - sStorage->movingMonSprite = (*sStorage->field_B00); - *sStorage->field_B00 = sprite; + sStorage->movingMonSprite = (*sStorage->shiftMonSpritePtr); + *sStorage->shiftMonSpritePtr = sprite; sStorage->movingMonSprite->callback = SpriteCB_HeldMon; - (*sStorage->field_B00)->callback = SpriteCallbackDummy; + (*sStorage->shiftMonSpritePtr)->callback = SpriteCallbackDummy; } return TRUE; @@ -5091,6 +5182,14 @@ static void DestroyBoxMonIcon(struct Sprite *sprite) DestroySprite(sprite); } + +//------------------------------------------------------------------------------ +// SECTION: General box +// +// Some basic box functions, including initializing the box and scrolling. +//------------------------------------------------------------------------------ + + #define tState data[0] #define tDmaIdx data[1] #define tBoxId data[2] @@ -5221,6 +5320,12 @@ static s8 DetermineBoxScrollDirection(u8 boxId) return (i < TOTAL_BOXES_COUNT / 2) ? 1 : -1; } + +//------------------------------------------------------------------------------ +// SECTION: Wallpaper gfx +//------------------------------------------------------------------------------ + + static void SetWallpaperForCurrentBox(u8 wallpaperId) { u8 boxId = StorageGetCurrentBox(); @@ -5233,7 +5338,7 @@ static bool8 DoWallpaperGfxChange(void) switch (sStorage->wallpaperChangeState) { case 0: - BeginNormalPaletteFade(sStorage->boxTitlePalBits, 1, 0, 16, RGB_WHITEALPHA); + BeginNormalPaletteFade(sStorage->wallpaperPalBits, 1, 0, 16, RGB_WHITEALPHA); sStorage->wallpaperChangeState++; break; case 1: @@ -5248,7 +5353,7 @@ static bool8 DoWallpaperGfxChange(void) if (WaitForWallpaperGfxLoad() == TRUE) { CycleBoxTitleColor(); - BeginNormalPaletteFade(sStorage->boxTitlePalBits, 1, 16, 0, RGB_WHITEALPHA); + BeginNormalPaletteFade(sStorage->wallpaperPalBits, 1, 16, 0, RGB_WHITEALPHA); sStorage->wallpaperChangeState++; } break; @@ -5369,6 +5474,12 @@ static void TrimOldWallpaper(void *tilemap) } } + +//------------------------------------------------------------------------------ +// SECTION: Box Title +//------------------------------------------------------------------------------ + + static void InitBoxTitle(u8 boxId) { u8 tagIndex; @@ -5386,11 +5497,11 @@ static void InitBoxTitle(u8 boxId) sStorage->boxTitlePal[14] = sBoxTitleColors[wallpaperId][0]; // Shadow color sStorage->boxTitlePal[15] = sBoxTitleColors[wallpaperId][1]; // Text Color LoadSpritePalettes(palettes); - sStorage->boxTitlePalBits = 0x3f0; + sStorage->wallpaperPalBits = 0x3f0; tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); sStorage->boxTitlePalOffset = 0x10e + 16 * tagIndex; - sStorage->boxTitlePalBits |= 0x10000 << tagIndex; + sStorage->wallpaperPalBits |= 0x10000 << tagIndex; // The below seems intended to have separately tracked // the incoming wallpaper title's palette, but as they now @@ -5398,7 +5509,7 @@ static void InitBoxTitle(u8 boxId) // this is redundant along with the use of boxTitleAltPalOffset tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); sStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; - sStorage->boxTitlePalBits |= 0x10000 << tagIndex; + sStorage->wallpaperPalBits |= 0x10000 << tagIndex; StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); DrawTextWindowAndBufferTiles(sStorage->boxTitleText, sStorage->boxTitleTiles, 0, 0, 2); @@ -5526,6 +5637,12 @@ static s16 GetBoxTitleBaseX(const u8 *string) return DISPLAY_WIDTH - 64 - GetStringWidth(1, string, 0) / 2; } + +//------------------------------------------------------------------------------ +// SECTION: Scroll arrows +//------------------------------------------------------------------------------ + + // Sprite data for box scroll arrows #define sState data[0] #define sTimer data[1] @@ -5673,7 +5790,16 @@ static struct Sprite *CreateChooseBoxArrows(u16 x, u16 y, u8 animId, u8 priority return &gSprites[spriteId]; } -static void sub_80CD36C(void) + +//------------------------------------------------------------------------------ +// SECTION: Cursor movement +// +// The functions below generally handle the cursor's movement, including +// moving around the box and picking up/putting down Pokémon. +//------------------------------------------------------------------------------ + + +static void InitCursor(void) { if (sStorage->boxOption != OPTION_DEPOSIT) sCursorArea = CURSOR_AREA_IN_BOX; @@ -5692,7 +5818,7 @@ static void sub_80CD36C(void) TryRefreshDisplayMon(); } -static void sub_80CD3EC(void) +static void InitCursorOnReopen(void) { CreateCursorSprites(); ReshowDisplayMon(); @@ -6111,23 +6237,23 @@ static bool8 MonPlaceChange_Shift(void) switch (sCursorArea) { case CURSOR_AREA_IN_PARTY: - sStorage->field_D91 = TOTAL_BOXES_COUNT; + sStorage->shiftBoxId = TOTAL_BOXES_COUNT; break; case CURSOR_AREA_IN_BOX: - sStorage->field_D91 = StorageGetCurrentBox(); + sStorage->shiftBoxId = StorageGetCurrentBox(); break; default: return FALSE; } StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_OPEN); - sub_80CBD5C(sStorage->field_D91, sCursorPosition); + SaveMonSpriteAtPos(sStorage->shiftBoxId, sCursorPosition); sStorage->monPlaceChangeState++; break; case 1: - if (!sub_80CBDC4()) + if (!MoveShiftingMons()) { StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_FIST); - SetShiftedMonData(sStorage->field_D91, sCursorPosition); + SetShiftedMonData(sStorage->shiftBoxId, sCursorPosition); sStorage->monPlaceChangeState++; } break; @@ -6179,6 +6305,16 @@ static bool8 MonPlaceChange_CursorUp(void) return TRUE; } + +//------------------------------------------------------------------------------ +// SECTION: Pokémon data +// +// The functions below handle moving Pokémon data around while using the PC, +// including changing the positions of Pokémon, releasing Pokémon, viewing the +// summary screen, and updating the display of the currently selected Pokémon. +//------------------------------------------------------------------------------ + + static void MoveMon(void) { switch (sCursorArea) @@ -6209,12 +6345,12 @@ static void PlaceMon(void) { case CURSOR_AREA_IN_PARTY: SetPlacedMonData(TOTAL_BOXES_COUNT, sCursorPosition); - sub_80CBCAC(TOTAL_BOXES_COUNT, sCursorPosition); + SetPlacedMonSprite(TOTAL_BOXES_COUNT, sCursorPosition); break; case CURSOR_AREA_IN_BOX: boxId = StorageGetCurrentBox(); SetPlacedMonData(boxId, sCursorPosition); - sub_80CBCAC(boxId, sCursorPosition); + SetPlacedMonSprite(boxId, sCursorPosition); break; default: return; @@ -6301,7 +6437,7 @@ static bool8 TryStorePartyMonInBox(u8 boxId) return TRUE; } -static void sub_80CE22C(void) +static void ResetSelectionAfterDeposit(void) { StartSpriteAnim(sStorage->cursorSprite, CURSOR_ANIM_BOUNCE); TryRefreshDisplayMon(); @@ -6867,6 +7003,14 @@ static void SetDisplayMonData(void *pokemon, u8 mode) } } + +//------------------------------------------------------------------------------ +// SECTION: Input handlers +// +// The functions below process context-dependent input +//------------------------------------------------------------------------------ + + static u8 HandleInput_InBox(void) { switch (sStorage->inBoxMovingMode) @@ -7344,7 +7488,7 @@ static u8 HandleInput_OnBox(void) if (JOY_NEW(A_BUTTON)) { AnimateBoxScrollArrows(FALSE); - AddBoxMenu(); + AddBoxOptionsMenu(); return INPUT_BOX_OPTIONS; } @@ -7470,7 +7614,7 @@ static u8 HandleInput(void) return INPUT_NONE; } -static void AddBoxMenu(void) +static void AddBoxOptionsMenu(void) { InitMenu(); SetMenuText(MENU_JUMP); @@ -7588,6 +7732,14 @@ static bool8 SetMenuTexts_Item(void) return TRUE; } + +//------------------------------------------------------------------------------ +// SECTION: Cursor +// +// The functions below handle a few of the generic cursor features. +//------------------------------------------------------------------------------ + + static void SpriteCB_CursorShadow(struct Sprite *sprite) { sprite->pos1.x = sStorage->cursorSprite->pos1.x; @@ -7608,7 +7760,7 @@ static void CreateCursorSprites(void) struct SpritePalette spritePalettes[] = { - {sHandCursor_Pal, PALTAG_7}, + {sHandCursor_Pal, PALTAG_MISC_1}, {} }; @@ -7658,7 +7810,7 @@ static void CreateCursorSprites(void) static const struct SpriteTemplate sSpriteTemplate_Cursor = { .tileTag = GFXTAG_CURSOR, - .paletteTag = PALTAG_10, + .paletteTag = PALTAG_MISC_2, .oam = &sOamData_Cursor, .anims = sAnims_Cursor, .images = NULL, @@ -7669,7 +7821,7 @@ static void CreateCursorSprites(void) static const struct SpriteTemplate sSpriteTemplate_CursorShadow = { .tileTag = GFXTAG_CURSOR_SHADOW, - .paletteTag = PALTAG_10, + .paletteTag = PALTAG_MISC_2, .oam = &sOamData_CursorShadow, .anims = gDummySpriteAnimTable, .images = NULL, @@ -7679,8 +7831,8 @@ static void CreateCursorSprites(void) LoadSpriteSheets(spriteSheets); LoadSpritePalettes(spritePalettes); - sStorage->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_10); // White hand, normal - sStorage->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_7); // Yellow hand, when auto-action is on + sStorage->cursorPalNums[0] = IndexOfSpritePaletteTag(PALTAG_MISC_2); // White hand, normal + sStorage->cursorPalNums[1] = IndexOfSpritePaletteTag(PALTAG_MISC_1); // Yellow hand, when auto-action is on GetCursorCoordsByPos(sCursorArea, sCursorPosition, &x, &y); spriteId = CreateSprite(&sSpriteTemplate_Cursor, x, y, 6); @@ -7775,6 +7927,15 @@ static void TryShowItemAtCursor(void) TryLoadItemIconAtPos(CURSOR_AREA_IN_BOX, sCursorPosition); } + +//------------------------------------------------------------------------------ +// SECTION: Menu +// +// The functions below handle the generic options menu that comes up whenever +// something in the PC is selected. +//------------------------------------------------------------------------------ + + static void InitMenu(void) { sStorage->menuItemsCount = 0; @@ -8947,14 +9108,14 @@ static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) if (id >= MAX_ITEM_ICONS) return; - CpuFastFill(0, sStorage->field_42C4, 0x200); + CpuFastFill(0, sStorage->itemIconBuffer, 0x200); LZ77UnCompWram(itemTiles, sStorage->tileBuffer); for (i = 0; i < 3; i++) - CpuFastCopy(&sStorage->tileBuffer[i * 0x60], &sStorage->field_42C4[i * 0x80], 0x60); + CpuFastCopy(&sStorage->tileBuffer[i * 0x60], &sStorage->itemIconBuffer[i * 0x80], 0x60); - CpuFastCopy(sStorage->field_42C4, sStorage->itemIcons[id].tiles, 0x200); - LZ77UnCompWram(itemPal, sStorage->field_42C4); - LoadPalette(sStorage->field_42C4, sStorage->itemIcons[id].palIndex, 0x20); + CpuFastCopy(sStorage->itemIconBuffer, sStorage->itemIcons[id].tiles, 0x200); + LZ77UnCompWram(itemPal, sStorage->itemIconBuffer); + LoadPalette(sStorage->itemIconBuffer, sStorage->itemIcons[id].palIndex, 0x20); } static void SetItemIconAffineAnim(u8 id, u8 animNum) From d542baf14bd38110389046e90dde40043d4e2b6a Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 19 Apr 2021 23:44:24 -0400 Subject: [PATCH 139/762] THE BEAST IS SLAIN --- src/m4a.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/m4a.c b/src/m4a.c index 7d7193334f40..3bb440f65633 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -887,18 +887,13 @@ void CgbModVol(struct CgbChannel *chan) if ((soundInfo->mode & 1) || !CgbPan(chan)) { chan->pan = 0xFF; - chan->envelopeGoal = (u32)(chan->rightVolume + chan->leftVolume) >> 4; + chan->envelopeGoal = (u32)(chan->leftVolume + chan->rightVolume); + chan->envelopeGoal /= 16; } else { - // Force chan->rightVolume and chan->leftVolume to be read from memory again, - // even though there is no reason to do so. - // The command line option "-fno-gcse" achieves the same result as this. - #ifndef NONMATCHING - asm("" : : : "memory"); - #endif - - chan->envelopeGoal = (u32)(chan->rightVolume + chan->leftVolume) >> 4; + chan->envelopeGoal = (u32)(chan->leftVolume + chan->rightVolume); + chan->envelopeGoal /= 16; if (chan->envelopeGoal > 15) chan->envelopeGoal = 15; } From 04af378904dc5e7ded00bb8e50c8e6b554c3571b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 18 Apr 2021 20:12:12 -0400 Subject: [PATCH 140/762] Document trade sequence animation, some trade cleanup --- ...p_map.bin => crossing_highlight_cable.bin} | Bin ...A0.bin => crossing_highlight_wireless.bin} | Bin .../trade/{unknown_DDB444.pal => cursor.pal} | 0 graphics/trade/{buttons.png => cursor.png} | Bin graphics/trade/{misc.pal => link_mon.pal} | 0 .../trade/{glow1.png => link_mon_glow.png} | Bin ...unknown_338EA4.pal => link_mon_shadow.pal} | 0 .../trade/{glow2.png => link_mon_shadow.png} | Bin .../trade/{shadow_map.bin => platform.bin} | Bin .../trade/{unknown_3308C0.pal => unused1.pal} | 0 graphics/trade/{shadow.pal => unused2.pal} | 0 .../{black.pal => wireless_signal_none.pal} | 0 include/graphics.h | 4 +- src/data/trade.h | 502 +++---- src/egg_hatch.c | 4 +- src/graphics.c | 4 +- src/trade.c | 1244 +++++++++-------- 17 files changed, 928 insertions(+), 830 deletions(-) rename graphics/trade/{cable_closeup_map.bin => crossing_highlight_cable.bin} (100%) rename graphics/trade/{unknown_3379A0.bin => crossing_highlight_wireless.bin} (100%) rename graphics/trade/{unknown_DDB444.pal => cursor.pal} (100%) rename graphics/trade/{buttons.png => cursor.png} (100%) rename graphics/trade/{misc.pal => link_mon.pal} (100%) rename graphics/trade/{glow1.png => link_mon_glow.png} (100%) rename graphics/trade/{unknown_338EA4.pal => link_mon_shadow.pal} (100%) rename graphics/trade/{glow2.png => link_mon_shadow.png} (100%) rename graphics/trade/{shadow_map.bin => platform.bin} (100%) rename graphics/trade/{unknown_3308C0.pal => unused1.pal} (100%) rename graphics/trade/{shadow.pal => unused2.pal} (100%) rename graphics/trade/{black.pal => wireless_signal_none.pal} (100%) diff --git a/graphics/trade/cable_closeup_map.bin b/graphics/trade/crossing_highlight_cable.bin similarity index 100% rename from graphics/trade/cable_closeup_map.bin rename to graphics/trade/crossing_highlight_cable.bin diff --git a/graphics/trade/unknown_3379A0.bin b/graphics/trade/crossing_highlight_wireless.bin similarity index 100% rename from graphics/trade/unknown_3379A0.bin rename to graphics/trade/crossing_highlight_wireless.bin diff --git a/graphics/trade/unknown_DDB444.pal b/graphics/trade/cursor.pal similarity index 100% rename from graphics/trade/unknown_DDB444.pal rename to graphics/trade/cursor.pal diff --git a/graphics/trade/buttons.png b/graphics/trade/cursor.png similarity index 100% rename from graphics/trade/buttons.png rename to graphics/trade/cursor.png diff --git a/graphics/trade/misc.pal b/graphics/trade/link_mon.pal similarity index 100% rename from graphics/trade/misc.pal rename to graphics/trade/link_mon.pal diff --git a/graphics/trade/glow1.png b/graphics/trade/link_mon_glow.png similarity index 100% rename from graphics/trade/glow1.png rename to graphics/trade/link_mon_glow.png diff --git a/graphics/trade/unknown_338EA4.pal b/graphics/trade/link_mon_shadow.pal similarity index 100% rename from graphics/trade/unknown_338EA4.pal rename to graphics/trade/link_mon_shadow.pal diff --git a/graphics/trade/glow2.png b/graphics/trade/link_mon_shadow.png similarity index 100% rename from graphics/trade/glow2.png rename to graphics/trade/link_mon_shadow.png diff --git a/graphics/trade/shadow_map.bin b/graphics/trade/platform.bin similarity index 100% rename from graphics/trade/shadow_map.bin rename to graphics/trade/platform.bin diff --git a/graphics/trade/unknown_3308C0.pal b/graphics/trade/unused1.pal similarity index 100% rename from graphics/trade/unknown_3308C0.pal rename to graphics/trade/unused1.pal diff --git a/graphics/trade/shadow.pal b/graphics/trade/unused2.pal similarity index 100% rename from graphics/trade/shadow.pal rename to graphics/trade/unused2.pal diff --git a/graphics/trade/black.pal b/graphics/trade/wireless_signal_none.pal similarity index 100% rename from graphics/trade/black.pal rename to graphics/trade/wireless_signal_none.pal diff --git a/include/graphics.h b/include/graphics.h index cea8bbab180f..786420472ba9 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4903,8 +4903,8 @@ extern const u16 gUnknown_08DDCF04[]; extern const u16 gTradeGba2_Pal[]; extern const u8 gTradeGba_Gfx[]; extern const u16 gTradeMenuMonBox_Tilemap[]; -extern const u8 gTradeButtons_Gfx[]; -extern const u16 gUnknown_08DDB444[]; +extern const u8 gTradeCursor_Gfx[]; +extern const u16 gTradeCursor_Pal[]; // Party menu extern const u32 gPartyMenuPokeball_Gfx[]; diff --git a/src/data/trade.h b/src/data/trade.h index b29e7c3d1d63..752971c11284 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -1,3 +1,17 @@ +#define GFXTAG_MENU_TEXT 200 // Used as a base tag in CB2_CreateTradeMenu and CB2_ReturnToTradeMenu +#define GFXTAG_CURSOR 300 +#define GFXTAG_LINK_MON_GLOW 5550 +#define GFXTAG_LINK_MON_SHADOW 5552 +#define GFXTAG_CABLE_END 5554 +#define GFXTAG_GBA_SCREEN 5556 +#define GFXTAG_POKEBALL 5557 + +#define PALTAG_CURSOR 2345 +#define PALTAG_MENU_TEXT 4925 +#define PALTAG_LINK_MON 5551 +#define PALTAG_GBA 5555 +#define PALTAG_POKEBALL 5558 + // Exists unused in RS as well static const u32 sUnusedStructSizes[] = { @@ -25,7 +39,7 @@ static const u8 sText_Slash[] = _("/"); static const u8 sText_Lv[] = _("Lv. "); static const u8 sText_ThreeDashes[] = _("---"); static const u8 sText_FourQuestionMarks[] = _("????"); -static const u8 sText_832DAE4[] = _(""); +static const u8 sText_UnusedEmpty[] = _(""); static const u8 sText_IsThisTradeOkay[] = _("Is this trade okay?"); static const u8 sText_Cancel[] = _("CANCEL"); static const u8 sText_ChooseAPkmn[] = _("Choose a POKéMON."); @@ -48,107 +62,113 @@ static const struct OamData sTradeOamData_32x16 = .priority = 1 }; -static const struct OamData sTradeOamData_64x32 = +static const struct OamData sOamData_Cursor = { .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .priority = 1 }; -static const union AnimCmd gSpriteAnim_832DC24[] = +static const union AnimCmd sAnim_Cursor_Normal[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC2C[] = +static const union AnimCmd sAnim_Cursor_OnCancel[] = { ANIMCMD_FRAME(32, 5), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_832DC34[] = +enum { + CURSOR_ANIM_NORMAL, + CURSOR_ANIM_ON_CANCEL, +}; + +static const union AnimCmd *const sAnims_Cursor[] = { - gSpriteAnim_832DC24, - gSpriteAnim_832DC2C + [CURSOR_ANIM_NORMAL] = sAnim_Cursor_Normal, + [CURSOR_ANIM_ON_CANCEL] = sAnim_Cursor_OnCancel }; -static const struct SpriteSheet sTradeButtonsSpriteSheet = +static const struct SpriteSheet sCursor_SpriteSheet = { - .data = gTradeButtons_Gfx, + .data = gTradeCursor_Gfx, .size = 0x800, - .tag = 300 + .tag = GFXTAG_CURSOR }; -static const struct SpritePalette gUnknown_0832DC44 = +static const struct SpritePalette sCursor_SpritePalette = { - .data = gUnknown_08DDB444, - .tag = 2345 + .data = gTradeCursor_Pal, + .tag = PALTAG_CURSOR }; -static const union AnimCmd gSpriteAnim_832DC4C[] = +static const union AnimCmd sAnim_MenuText_0[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC54[] = +static const union AnimCmd sAnim_MenuText_1[] = { ANIMCMD_FRAME(8, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC5C[] = +static const union AnimCmd sAnim_MenuText_2[] = { ANIMCMD_FRAME(16, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC64[] = +static const union AnimCmd sAnim_MenuText_3[] = { ANIMCMD_FRAME(24, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC6C[] = +static const union AnimCmd sAnim_MenuText_4[] = { ANIMCMD_FRAME(32, 5), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_832DC74[] = +static const union AnimCmd sAnim_MenuText_5[] = { ANIMCMD_FRAME(40, 5), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_832DC7C[] = +// These anims are not used +static const union AnimCmd *const sAnims_MenuText[] = { - gSpriteAnim_832DC4C, - gSpriteAnim_832DC54, - gSpriteAnim_832DC5C, - gSpriteAnim_832DC64, - gSpriteAnim_832DC6C, - gSpriteAnim_832DC74 + sAnim_MenuText_0, + sAnim_MenuText_1, + sAnim_MenuText_2, + sAnim_MenuText_3, + sAnim_MenuText_4, + sAnim_MenuText_5 }; -static const struct SpriteTemplate gSpriteTemplate_832DC94 = +static const struct SpriteTemplate sSpriteTemplate_Cursor = { - .tileTag = 300, - .paletteTag = 2345, - .oam = &sTradeOamData_64x32, - .anims = gSpriteAnimTable_832DC34, + .tileTag = GFXTAG_CURSOR, + .paletteTag = PALTAG_CURSOR, + .oam = &sOamData_Cursor, + .anims = sAnims_Cursor, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; -static const struct SpriteTemplate gSpriteTemplate_832DCAC = +static const struct SpriteTemplate sSpriteTemplate_MenuText = { - .tileTag = 200, - .paletteTag = 4925, + .tileTag = GFXTAG_MENU_TEXT, + .paletteTag = PALTAG_MENU_TEXT, .oam = &sTradeOamData_32x16, - .anims = gSpriteAnimTable_832DC7C, + .anims = sAnims_MenuText, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -158,7 +178,7 @@ static const u16 TradeScreenTextPalette[] = INCBIN_U16("graphics/trade/text.gbap static const struct SpritePalette gSpritePalette_TradeScreenText = { .data = TradeScreenTextPalette, - .tag = 4925 + .tag = PALTAG_MENU_TEXT }; // This is used to determine the next mon to select when the D-Pad is @@ -337,26 +357,26 @@ static const u8 sTradeMonBoxCoords[][2][2] = }, }; -static const u8 sUnref_0832DE6E[] = -{ - 0x00, 0x0e, - 0x0f, 0x1d, - 0x03, 0x05, - 0x03, 0x07, - 0x12, 0x05, - 0x12, 0x07, - 0x08, 0x07, - 0x16, 0x0c, - 0x08, 0x07, - 0x16, 0x0c, - 0x06, 0x07, - 0x18, 0x0c, - 0x06, 0x07, - 0x18, 0x0c, - 0x08, 0x07, - 0x16, 0x0c, - 0x07, 0x07, - 0x17, 0x0c +static const u8 sUnusedCoords[][2] = +{ + { 0, 14}, + {15, 29}, + { 3, 5}, + { 3, 7}, + {18, 5}, + {18, 7}, + { 8, 7}, + {22, 12}, + { 8, 7}, + {22, 12}, + { 6, 7}, + {24, 12}, + { 6, 7}, + {24, 12}, + { 8, 7}, + {22, 12}, + { 7, 7}, + {23, 12} }; static const u8 *const sTradeActionTexts[] = @@ -620,42 +640,42 @@ static const u8 sTradeMenuPartyMonBoxDimensions[3][2] = [TRADE_PARTNER] = {19, 3} }; -static const u16 sTradePal_PokeBall[] = INCBIN_U16("graphics/trade/pokeball.gbapal"); -static const u8 sTradeGfx_PokeBall[] = INCBIN_U8("graphics/trade/pokeball.4bpp"); -static const u8 sTradeGfx_PokeBallSymbol[] = INCBIN_U8("graphics/trade/pokeball_symbol.8bpp"); // unused? -static const u16 sTradeTilemap_Cable[] = INCBIN_U16("graphics/trade/cable_closeup_map.bin"); +static const u16 sPokeball_Pal[] = INCBIN_U16("graphics/trade/pokeball.gbapal"); +static const u8 sPokeball_Gfx[] = INCBIN_U8("graphics/trade/pokeball.4bpp"); +static const u8 sPokeballSymbol_Gfx[] = INCBIN_U8("graphics/trade/pokeball_symbol.8bpp"); // unused +static const u16 sCrossingHighlightCable_Tilemap[] = INCBIN_U16("graphics/trade/crossing_highlight_cable.bin"); static const u16 sTradeTilemap_PokeBallSymbol[] = INCBIN_U16("graphics/trade/pokeball_symbol_map.bin"); // unused? -static const u16 sUnref_083308C0[] = INCBIN_U16("graphics/trade/unknown_3308C0.gbapal"); -static const u16 sTradePal_Gba[] = INCBIN_U16("graphics/trade/gba.gbapal"); -static const u16 sTradePal_ShadowUnused[] = INCBIN_U16("graphics/trade/shadow.gbapal"); -static const u16 sTradePal_BlackUnused[] = INCBIN_U16("graphics/trade/black.gbapal"); -static const u16 sTradePal_Misc[] = INCBIN_U16("graphics/trade/misc.gbapal"); -static const u8 sTradeGfx_Glow1[] = INCBIN_U8("graphics/trade/glow1.4bpp"); -static const u8 sTradeGfx_Glow2[] = INCBIN_U8("graphics/trade/glow2.4bpp"); -static const u8 sTradeGfx_CableEnd[] = INCBIN_U8("graphics/trade/cable_end.4bpp"); -static const u8 sTradeGfx_GbaScreen[] = INCBIN_U8("graphics/trade/gba_screen.4bpp"); -const u16 gUnknown_08331F60[] = INCBIN_U16("graphics/trade/shadow_map.bin"); -static const u8 sTradeAffine_Gba[] = INCBIN_U8("graphics/trade/gba_affine.8bpp"); -static const u8 sFiller_08335760[64] = {}; -static const u8 sTradeAffineMap_GbaCable[] = INCBIN_U8("graphics/trade/gba_affine_map_cable.bin"); -static const u8 sTradeAffineMap_GbaWireless[] = INCBIN_U8("graphics/trade/gba_affine_map_wireless.bin"); -static const u16 sTradeTilemap_GbaWireless[] = INCBIN_U16("graphics/trade/gba_map_wireless.bin"); -static const u16 sTradeTilemap_GbaCable[] = INCBIN_U16("graphics/trade/gba_map_cable.bin"); -static const u32 gUnknown_083379A0[] = INCBIN_U32("graphics/trade/unknown_3379A0.bin.lz"); //some wireless tilemap -static const u16 sTradePal_WirelessSignalSend[] = INCBIN_U16("graphics/trade/wireless_signal_send.gbapal"); -static const u16 sTradePal_WirelessSignalReceive[] = INCBIN_U16("graphics/trade/wireless_signal_receive.gbapal"); -static const u16 sTradePal_Black[] = INCBIN_U16("graphics/trade/black.gbapal"); -static const u32 sTradeGfx_WirelessSignal[] = INCBIN_U32("graphics/trade/wireless_signal.4bpp.lz"); -static const u32 sTradeTilemap_WirelessSignal[] = INCBIN_U32("graphics/trade/wireless_signal.bin.lz"); - -static const struct OamData sTradeOamData_16x16 = +static const u16 sUnusedPal1[] = INCBIN_U16("graphics/trade/unused1.gbapal"); +static const u16 sGba_Pal[] = INCBIN_U16("graphics/trade/gba.gbapal"); +static const u16 sUnusedPal2[] = INCBIN_U16("graphics/trade/unused2.gbapal"); +static const u16 sWirelessSignalNone_Pal_Unused[] = INCBIN_U16("graphics/trade/wireless_signal_none.gbapal"); +static const u16 sLinkMon_Pal[] = INCBIN_U16("graphics/trade/link_mon.gbapal"); +static const u8 sLinkMonGlow_Gfx[] = INCBIN_U8("graphics/trade/link_mon_glow.4bpp"); +static const u8 sLinkMonShadow_Gfx[] = INCBIN_U8("graphics/trade/link_mon_shadow.4bpp"); +static const u8 sCableEnd_Gfx[] = INCBIN_U8("graphics/trade/cable_end.4bpp"); +static const u8 sGbaScreen_Gfx[] = INCBIN_U8("graphics/trade/gba_screen.4bpp"); +const u16 gTradePlatform_Tilemap[] = INCBIN_U16("graphics/trade/platform.bin"); +static const u8 sGbaAffine_Gfx[] = INCBIN_U8("graphics/trade/gba_affine.8bpp"); // Only the gfx for when the GBA is zooming in/out +static const u8 sEmptyGfx[64] = {}; +static const u8 sGbaCable_AffineTilemap[] = INCBIN_U8("graphics/trade/gba_affine_map_cable.bin"); +static const u8 sGbaWireless_AffineTilemap[] = INCBIN_U8("graphics/trade/gba_affine_map_wireless.bin"); +static const u16 sGbaWireless_Tilemap[] = INCBIN_U16("graphics/trade/gba_map_wireless.bin"); +static const u16 sGbaCable_Tilemap[] = INCBIN_U16("graphics/trade/gba_map_cable.bin"); +static const u32 sCrossingHighlightWireless_Tilemap[] = INCBIN_U32("graphics/trade/crossing_highlight_wireless.bin.lz"); +static const u16 sWirelessSignalSend_Pal[] = INCBIN_U16("graphics/trade/wireless_signal_send.gbapal"); +static const u16 sWirelessSignalRecv_Pal[] = INCBIN_U16("graphics/trade/wireless_signal_receive.gbapal"); +static const u16 sWirelessSignalNone_Pal[] = INCBIN_U16("graphics/trade/wireless_signal_none.gbapal"); +static const u32 sWirelessSignal_Gfx[] = INCBIN_U32("graphics/trade/wireless_signal.4bpp.lz"); +static const u32 sWirelessSignal_Tilemap[] = INCBIN_U32("graphics/trade/wireless_signal.bin.lz"); + +static const struct OamData sOamData_Pokeball = { .affineMode = ST_OAM_AFFINE_NORMAL, .shape = SPRITE_SHAPE(16x16), .size = SPRITE_SIZE(16x16) }; -static const union AnimCmd gSpriteAnim_8338C4C[] = +static const union AnimCmd sAnim_Pokeball_SpinOnce[] = { ANIMCMD_FRAME( 0, 3), ANIMCMD_FRAME( 4, 3), @@ -674,7 +694,7 @@ static const union AnimCmd gSpriteAnim_8338C4C[] = ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_8338C88[] = +static const union AnimCmd sAnim_Pokeball_SpinTwice[] = { ANIMCMD_FRAME( 0, 3), ANIMCMD_FRAME( 4, 3), @@ -693,25 +713,25 @@ static const union AnimCmd gSpriteAnim_8338C88[] = ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_8338C88[] = +static const union AnimCmd *const sAnims_Pokeball[] = { - gSpriteAnim_8338C4C, - gSpriteAnim_8338C88 + sAnim_Pokeball_SpinOnce, + sAnim_Pokeball_SpinTwice }; -static const union AffineAnimCmd gSpriteAffineAnim_8338CCC[] = +static const union AffineAnimCmd sAffineAnim_Pokeball_Normal[] = { AFFINEANIMCMD_FRAME(0, 0, 0, 1), AFFINEANIMCMD_END }; -static const union AffineAnimCmd gSpriteAffineAnim_8338CDC[] = +static const union AffineAnimCmd sAffineAnim_Pokeball_Squish[] = { AFFINEANIMCMD_FRAME(-8, 0, 0, 20), AFFINEANIMCMD_END }; -static const union AffineAnimCmd gSpriteAffineAnim_8338CEC[] = +static const union AffineAnimCmd sAffineAnim_Pokeball_Unsquish[] = { AFFINEANIMCMD_FRAME(0x60, 0x100, 0, 0), AFFINEANIMCMD_FRAME( 0, 0, 0, 5), @@ -719,38 +739,38 @@ static const union AffineAnimCmd gSpriteAffineAnim_8338CEC[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const gSpriteAffineAnimTable_8338D0C[] = +static const union AffineAnimCmd *const sAffineAnims_Pokeball[] = { - gSpriteAffineAnim_8338CCC, - gSpriteAffineAnim_8338CDC, - gSpriteAffineAnim_8338CEC + sAffineAnim_Pokeball_Normal, + sAffineAnim_Pokeball_Squish, + sAffineAnim_Pokeball_Unsquish }; static const struct SpriteSheet sPokeBallSpriteSheet = { - .data = sTradeGfx_PokeBall, + .data = sPokeball_Gfx, .size = 0x600, - .tag = 5557 + .tag = GFXTAG_POKEBALL }; static const struct SpritePalette sPokeBallSpritePalette = { - .data = sTradePal_PokeBall, - .tag = 5558 + .data = sPokeball_Pal, + .tag = PALTAG_POKEBALL }; -static const struct SpriteTemplate gSpriteTemplate_8338D28 = +static const struct SpriteTemplate sSpriteTemplate_Pokeball = { - .tileTag = 5557, - .paletteTag = 5558, - .oam = &sTradeOamData_16x16, - .anims = gSpriteAnimTable_8338C88, + .tileTag = GFXTAG_POKEBALL, + .paletteTag = PALTAG_POKEBALL, + .oam = &sOamData_Pokeball, + .anims = sAnims_Pokeball, .images = NULL, - .affineAnims = gSpriteAffineAnimTable_8338D0C, - .callback = sub_807E55C + .affineAnims = sAffineAnims_Pokeball, + .callback = SpriteCB_BouncingPokeball }; -static const struct OamData sTradeOamData_32x32 = +static const struct OamData sOamData_LinkMonGlow = { .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_BLEND, @@ -759,146 +779,151 @@ static const struct OamData sTradeOamData_32x32 = .priority = 1 }; -static const union AnimCmd gSpriteAnim_8338D48[] = +static const union AnimCmd sAnim_LinkMonGlow[] = { - ANIMCMD_FRAME(0, 5, .hFlip = TRUE, .vFlip = TRUE), + ANIMCMD_FRAME(0, 5, .hFlip = TRUE, .vFlip = TRUE), // ? The graphic is a perfect circle, no need to flip ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_8338D50[] = +static const union AnimCmd *const sAnims_LinkMonGlow[] = { - gSpriteAnim_8338D48 + sAnim_LinkMonGlow }; -static const union AffineAnimCmd gSpriteAffineAnim_8338D54[] = +static const union AffineAnimCmd sAffineAnim_LinkMonGlow[] = { AFFINEANIMCMD_FRAME(-10, -10, 0, 5), AFFINEANIMCMD_FRAME(10, 10, 0, 5), AFFINEANIMCMD_JUMP(0) }; -static const union AffineAnimCmd *const gSpriteAffineAnimTable_8338D6C[] = +static const union AffineAnimCmd *const sAffineAnims_LinkMonGlow[] = { - gSpriteAffineAnim_8338D54 + sAffineAnim_LinkMonGlow }; -static const struct SpriteSheet sGlow1SpriteSheet = +static const struct SpriteSheet sSpriteSheet_LinkMonGlow = { - .data = sTradeGfx_Glow1, + .data = sLinkMonGlow_Gfx, .size = 0x200, - .tag = 5550 + .tag = GFXTAG_LINK_MON_GLOW }; -static const struct SpritePalette sMiscTradeSpritePalette = +static const struct SpritePalette sSpritePalette_LinkMon = { - .data = sTradePal_Misc, - .tag = 5551 + .data = sLinkMon_Pal, + .tag = PALTAG_LINK_MON }; -static const struct SpritePalette sGbaSpritePalette = +static const struct SpritePalette sSpritePalette_Gba = { - .data = sTradePal_Gba, - .tag = 5555 + .data = sGba_Pal, + .tag = PALTAG_GBA }; -static const struct SpriteTemplate gUnknown_08338D88 = +static const struct SpriteTemplate sSpriteTemplate_LinkMonGlow = { - .tileTag = 5550, - .paletteTag = 5551, - .oam = &sTradeOamData_32x32, - .anims = gSpriteAnimTable_8338D50, + .tileTag = GFXTAG_LINK_MON_GLOW, + .paletteTag = PALTAG_LINK_MON, + .oam = &sOamData_LinkMonGlow, + .anims = sAnims_LinkMonGlow, .images = NULL, - .affineAnims = gSpriteAffineAnimTable_8338D6C, - .callback = sub_807AA28 + .affineAnims = sAffineAnims_LinkMonGlow, + .callback = SpriteCB_LinkMonGlow }; -static const struct OamData sTradeOamData_16x32 = +static const struct OamData sOamData_LinkMonShadow = { .shape = SPRITE_SHAPE(16x32), .size = SPRITE_SIZE(16x32), .priority = 1 }; -static const union AnimCmd gSpriteAnim_8338DA8[] = +static const union AnimCmd sAnim_LinkMonShadow_Big[] = { ANIMCMD_FRAME(0, 5, .vFlip = TRUE, .hFlip = TRUE), ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_8338DB0[] = +static const union AnimCmd sAnim_LinkMonShadow_Small[] = { ANIMCMD_FRAME(8, 5, .vFlip = TRUE, .hFlip = TRUE), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_8338DB8[] = +enum { + ANIM_LINKMON_BIG, + ANIM_LINKMON_SMALL, +}; + +static const union AnimCmd *const sAnims_LinkMonShadow[] = { - gSpriteAnim_8338DA8, - gSpriteAnim_8338DB0 + [ANIM_LINKMON_BIG] = sAnim_LinkMonShadow_Big, + [ANIM_LINKMON_SMALL] = sAnim_LinkMonShadow_Small }; -static const struct SpriteSheet sGlow2SpriteSheet = +static const struct SpriteSheet sSpriteSheet_LinkMonShadow = { - .data = sTradeGfx_Glow2, + .data = sLinkMonShadow_Gfx, .size = 0x300, - .tag = 5552 + .tag = GFXTAG_LINK_MON_SHADOW }; -static const struct SpriteTemplate sGlowBallSpriteTemplate = +static const struct SpriteTemplate sSpriteTemplate_LinkMonShadow = { - .tileTag = 5552, - .paletteTag = 5551, - .oam = &sTradeOamData_16x32, - .anims = gSpriteAnimTable_8338DB8, + .tileTag = GFXTAG_LINK_MON_SHADOW, + .paletteTag = PALTAG_LINK_MON, + .oam = &sOamData_LinkMonShadow, + .anims = sAnims_LinkMonShadow, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_807AA7C + .callback = SpriteCB_LinkMonShadow }; -static const struct OamData sTradeOamData_16x32_2 = +static const struct OamData sOamData_CableEnd = { .shape = SPRITE_SHAPE(16x32), .size = SPRITE_SIZE(16x32), .priority = 1 }; -static const union AnimCmd gSpriteAnim_8338DE8[] = +static const union AnimCmd sAnim_CableEnd[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_8338DF0[] = +static const union AnimCmd *const sAnims_CableEnd[] = { - gSpriteAnim_8338DE8 + sAnim_CableEnd }; -static const struct SpriteSheet sCableEndSpriteSheet = +static const struct SpriteSheet sSpriteSheet_CableEnd = { - .data = sTradeGfx_CableEnd, + .data = sCableEnd_Gfx, .size = 0x100, - .tag = 5554 + .tag = GFXTAG_CABLE_END }; -static const struct SpriteTemplate gSpriteTemplate_8338DFC = +static const struct SpriteTemplate sSpriteTemplate_CableEnd = { - .tileTag = 5554, - .paletteTag = 5555, - .oam = &sTradeOamData_16x32_2, - .anims = gSpriteAnimTable_8338DF0, + .tileTag = GFXTAG_CABLE_END, + .paletteTag = PALTAG_GBA, + .oam = &sOamData_CableEnd, + .anims = sAnims_CableEnd, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_807AABC + .callback = SpriteCB_CableEndSending }; -static const struct OamData sTradeOamData_64x32_2 = +static const struct OamData sOamData_GbaScreen = { .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .priority = 1 }; -static const union AnimCmd gSpriteAnim_8338E1C[] = +static const union AnimCmd sAnim_GbaScreen_Long[] = { ANIMCMD_FRAME( 0, 2, .vFlip = TRUE, .hFlip = TRUE), ANIMCMD_FRAME(32, 2, .vFlip = TRUE, .hFlip = TRUE), @@ -911,7 +936,7 @@ static const union AnimCmd gSpriteAnim_8338E1C[] = ANIMCMD_END }; -static const union AnimCmd gSpriteAnim_8338E40[] = +static const union AnimCmd sAnim_GbaScreen_Short[] = { ANIMCMD_FRAME( 0, 2, .vFlip = TRUE, .hFlip = TRUE), ANIMCMD_FRAME(32, 2, .vFlip = TRUE, .hFlip = TRUE), @@ -924,56 +949,56 @@ static const union AnimCmd gSpriteAnim_8338E40[] = ANIMCMD_END }; -static const union AnimCmd *const gSpriteAnimTable_8338E64[] = +static const union AnimCmd *const sAnims_GbaScreen_Long[] = { - gSpriteAnim_8338E1C + sAnim_GbaScreen_Long }; -static const union AnimCmd *const gSpriteAnimTable_8338E68[] = +static const union AnimCmd *const sAnims_GbaScreen_Short[] = { - gSpriteAnim_8338E40 + sAnim_GbaScreen_Short }; -static const struct SpriteSheet sGbaScreenSpriteSheet = +static const struct SpriteSheet sSpriteSheet_GbaScreen = { - .data = sTradeGfx_GbaScreen, + .data = sGbaScreen_Gfx, .size = 0x1000, - .tag = 5556 + .tag = GFXTAG_GBA_SCREEN }; -static const struct SpriteTemplate gSpriteTemplate_8338E74 = +static const struct SpriteTemplate sSpriteTemplate_GbaScreenFlash_Long = { - .tileTag = 5556, - .paletteTag = 5555, - .oam = &sTradeOamData_64x32_2, - .anims = gSpriteAnimTable_8338E64, + .tileTag = GFXTAG_GBA_SCREEN, + .paletteTag = PALTAG_GBA, + .oam = &sOamData_GbaScreen, + .anims = sAnims_GbaScreen_Long, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_807AB04 + .callback = SpriteCB_GbaScreen }; -static const struct SpriteTemplate gSpriteTemplate_8338E8C = +static const struct SpriteTemplate sSpriteTemplate_GbaScreenFlash_Short = { - .tileTag = 5556, - .paletteTag = 5555, - .oam = &sTradeOamData_64x32_2, - .anims = gSpriteAnimTable_8338E68, + .tileTag = GFXTAG_GBA_SCREEN, + .paletteTag = PALTAG_GBA, + .oam = &sOamData_GbaScreen, + .anims = sAnims_GbaScreen_Short, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_807AB04 + .callback = SpriteCB_GbaScreen }; -static const u16 gUnknown_08338EA4[] = INCBIN_U16("graphics/trade/unknown_338EA4.gbapal"); +static const u16 sLinkMonShadow_Pal[] = INCBIN_U16("graphics/trade/link_mon_shadow.gbapal"); -static const union AffineAnimCmd gSpriteAffineAnim_8338EBC[] = +static const union AffineAnimCmd sAffineAnim_CrossingMonPic[] = { AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_JUMP(0) }; -static const union AffineAnimCmd *const gSpriteAffineAnimTable_8338ECC[] = +static const union AffineAnimCmd *const sAffineAnims_CrossingMonPics[] = { - gSpriteAffineAnim_8338EBC + sAffineAnim_CrossingMonPic }; static const struct InGameTrade sIngameTrades[] = @@ -1146,69 +1171,54 @@ static const struct BgTemplate sTradeSequenceBgTemplates[] = static const s8 sTradeBallVerticalVelocityTable[] = { - 0, 0, 1, 0, - 1, 0, 1, 1, - 1, 1, 2, 2, - 2, 2, 3, 3, - 3, 3, 4, 4, - 4, 4, -4, -4, - -4, -3, -3, -3, - -3, -2, -2, -2, - -2, -1, -1, -1, - -1, 0, -1, 0, - -1, 0, 0, 0, - 0, 0, 1, 0, - 1, 0, 1, 1, - 1, 1, 2, 2, - 2, 2, 3, 3, - 3, 3, 4, 4, - 4, 4, -4, -3, - -3, -2, -2, -1, - -1, -1, 0, -1, - 0, 0, 0, 0, - 0, 0, 1, 0, - 1, 1, 1, 2, - 2, 3, 3, 4, - -4, -3, -2, -1, - -1, -1, 0, 0, - 0, 0, 1, 0, - 1, 1, 2, 3 + 0, 0, 1, 0, 1, 0, 1, 1, 1, + 1, 2, 2, 2, 2, 3, 3, 3, 3, + 4, 4, 4, 4, -4, -4, -4, -3, -3, + -3, -3, -2, -2, -2, -2, -1, -1, -1, + -1, 0, -1, 0, -1, 0, 0, 0, 0, + 0, 1, 0, 1, 0, 1, 1, 1, 1, + 2, 2, 2, 2, 3, 3, 3, 3, 4, + 4, 4, 4, -4, -3, -3, -2, -2, -1, + -1, -1, 0, -1, 0, 0, 0, 0, 0, + 0, 1, 0, 1, 1, 1, 2, 2, 3, + 3, 4, -4, -3, -2, -1, -1, -1, 0, + 0, 0, 0, 1, 0, 1, 1, 2, 3 }; static const u8 sWirelessSignalTiming[][2] = { - {0, 1}, - {1, 1}, - {2, 1}, - {3, 1}, - {4, 1}, - {5, 2}, - {6, 2}, - {7, 2}, - {8, 2}, - {9, 2}, - {10, 3}, - {11, 3}, - {12, 3}, - {13, 4}, - {14, 5}, - {15, 2}, - {0, 1}, - {1, 1}, - {2, 1}, - {3, 1}, - {4, 1}, - {5, 2}, - {6, 2}, - {7, 2}, - {8, 2}, - {9, 2}, - {10, 3}, - {11, 3}, - {12, 3}, - {13, 4}, - {14, 5}, - {16, 1}, - {16, 255}, - {0, 0} + { 0, 1}, + { 1, 1}, + { 2, 1}, + { 3, 1}, + { 4, 1}, + { 5, 2}, + { 6, 2}, + { 7, 2}, + { 8, 2}, + { 9, 2}, + {10, 3}, + {11, 3}, + {12, 3}, + {13, 4}, + {14, 5}, + {15, 2}, + { 0, 1}, + { 1, 1}, + { 2, 1}, + { 3, 1}, + { 4, 1}, + { 5, 2}, + { 6, 2}, + { 7, 2}, + { 8, 2}, + { 9, 2}, + {10, 3}, + {11, 3}, + {12, 3}, + {13, 4}, + {14, 5}, + {16, 1}, + {16, -1}, + {} }; diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 0ae0e1323bb6..042173a4eb0d 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -54,7 +54,7 @@ struct EggHatchData u8 textColor[3]; }; -extern const u32 gUnknown_08331F60[]; // tilemap gameboy circle +extern const u32 gTradePlatform_Tilemap[]; extern const u8 gText_HatchedFromEgg[]; extern const u8 gText_NicknameHatchPrompt[]; @@ -546,7 +546,7 @@ static void CB2_EggHatch_0(void) SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); LoadPalette(gTradeGba2_Pal, 0x10, 0xA0); LoadBgTiles(1, gTradeGba_Gfx, 0x1420, 0); - CopyToBgTilemapBuffer(1, gUnknown_08331F60, 0x1000, 0); + CopyToBgTilemapBuffer(1, gTradePlatform_Tilemap, 0x1000, 0); CopyBgTilemapBufferToVram(1); gMain.state++; break; diff --git a/src/graphics.c b/src/graphics.c index 09779eab7ab4..6e54a8192fbd 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1474,9 +1474,9 @@ static const u16 sEmptyPal[16] = {0}; // Trade const u16 gTradeMenu_Pal[] = INCBIN_U16("graphics/trade/menu.gbapal"); -const u16 gUnknown_08DDB444[] = INCBIN_U16("graphics/trade/unknown_DDB444.gbapal"); +const u16 gTradeCursor_Pal[] = INCBIN_U16("graphics/trade/cursor.gbapal"); const u8 gTradeMenu_Gfx[] = INCBIN_U8("graphics/trade/menu.4bpp"); -const u8 gTradeButtons_Gfx[] = INCBIN_U8("graphics/trade/buttons.4bpp"); +const u8 gTradeCursor_Gfx[] = INCBIN_U8("graphics/trade/cursor.4bpp"); const u16 gUnused_DDCEE4[] = INCBIN_U16("graphics/unused/unused_DDCEE4.bin"); const u16 gUnknown_08DDCF04[] = INCBIN_U16("graphics/trade/unknown_DDCF04.bin"); const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.bin"); diff --git a/src/trade.c b/src/trade.c index cb3db3c18f29..3c39152944a7 100644 --- a/src/trade.c +++ b/src/trade.c @@ -52,7 +52,29 @@ #include "constants/songs.h" #include "constants/union_room.h" -#define Trade_SendData(ptr) (SendBlock(bitmask_all_link_players_but_self(), ptr->linkData, 20)) +// The following tags are offsets from GFXTAG_MENU_TEXT +// They're looped over in CB2_CreateTradeMenu and CB2_ReturnToTradeMenu +// and used as indexes into sMenuTextTileBuffers +enum { + GFXTAG_PLAYER_NAME_L, + GFXTAG_PLAYER_NAME_M, + GFXTAG_PLAYER_NAME_R, + GFXTAG_PARTNER_NAME_L, + GFXTAG_PARTNER_NAME_M, + GFXTAG_PARTNER_NAME_R, + GFXTAG_CANCEL_L, + GFXTAG_CANCEL_R, + GFXTAG_CHOOSE_PKMN_L, + GFXTAG_CHOOSE_PKMN_M, + GFXTAG_CHOOSE_PKMN_R, + GFXTAG_CHOOSE_PKMN_EMPTY_1, // 6 sprites to cover the full bottom bar, but only first 3 are needed + GFXTAG_CHOOSE_PKMN_EMPTY_2, + GFXTAG_CHOOSE_PKMN_EMPTY_3, + GFXTAG_MENU_TEXT_COUNT +}; +#define GFXTAG_PLAYER_NAME (1 + GFXTAG_PLAYER_NAME_R - GFXTAG_PLAYER_NAME_L) +#define GFXTAG_PARTNER_NAME (1 + GFXTAG_PARTNER_NAME_R - GFXTAG_PARTNER_NAME_L) +#define GFXTAG_CHOOSE_PKMN (1 + GFXTAG_CHOOSE_PKMN_EMPTY_3 - GFXTAG_CHOOSE_PKMN_L) struct InGameTrade { /*0x00*/ u8 nickname[POKEMON_NAME_LENGTH + 1]; @@ -70,22 +92,23 @@ struct InGameTrade { /*0x38*/ u16 requestedSpecies; }; -static EWRAM_DATA u8 *sMessageBoxAllocBuffer = NULL; +static EWRAM_DATA u8 *sMenuTextAllocBuffer = NULL; -// Bytes 0-2 are used for the player's name box -// Bytes 3-5 are used for the partner's name box -// Bytes 6-7 are used for the Cancel box -// Bytes 8-13 are used for the Choose a Pokemon box -static EWRAM_DATA u8 *sMessageBoxTileBuffers[14] = {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 +// See the corresponding GFXTAGs in src/data/trade.h +static EWRAM_DATA u8 *sMenuTextTileBuffers[GFXTAG_MENU_TEXT_COUNT] = {NULL}; EWRAM_DATA struct MailStruct gTradeMail[PARTY_SIZE] = {0}; EWRAM_DATA u8 gSelectedTradeMonPositions[2] = {0}; static EWRAM_DATA struct { /*0x0000*/ u8 bg2hofs; /*0x0001*/ u8 bg3hofs; - /*0x0002*/ u8 filler_2[0x28 - 2]; + /*0x0002*/ u8 filler_2[38]; /*0x0028*/ u8 partySpriteIds[2][PARTY_SIZE]; - /*0x0034*/ u8 cursorSpriteIdx; + /*0x0034*/ u8 cursorSpriteId; /*0x0035*/ u8 cursorPosition; /*0x0036*/ u8 partyCounts[2]; /*0x0038*/ bool8 monPresent[PARTY_SIZE * 2]; @@ -94,7 +117,7 @@ static EWRAM_DATA struct { /*0x0051*/ bool8 isEgg[2][PARTY_SIZE]; /*0x005D*/ u8 hpBarLevels[2][PARTY_SIZE]; /*0x0069*/ u8 bufferPartyState; - /*0x006A*/ u8 filler_6A[0x6F - 0x6A]; + /*0x006A*/ u8 filler_6A[5]; /*0x006F*/ u8 tradeMenuFunc; /*0x0070*/ u8 neverRead_70; /*0x0071*/ u8 filler_71; @@ -105,13 +128,13 @@ static EWRAM_DATA struct { /*0x0079*/ u8 partnerLinkFlagChoseAction; /*0x007A*/ u8 playerLinkFlagStatus; /*0x007B*/ u8 partnerLinkFlagStatus; - /*0x007C*/ u8 filler_7C[0x7E - 0x7C]; + /*0x007C*/ u8 filler_7C[2]; /*0x007E*/ u8 partnerCursorPosition; /*0x007F*/ u8 unused_7F; /*0x0080*/ u16 linkData[20]; /*0x00A8*/ u8 timer; /*0x00A9*/ u8 giftRibbons[GIFT_RIBBONS_COUNT]; - /*0x00B4*/ u8 filler_B4[0x8D0-0xB4]; + /*0x00B4*/ u8 filler_B4[0x81C]; /*0x08D0*/ struct { bool8 queued; u16 queueDelay; @@ -119,6 +142,7 @@ static EWRAM_DATA struct { } queuedActions[4]; /*0x08F0*/ u16 tilemapBuffer[0x400]; } *sTradeMenuData = {NULL}; + static EWRAM_DATA struct { /*0x00*/ struct Pokemon mon; /*0x64*/ u32 timer; @@ -127,19 +151,19 @@ static EWRAM_DATA struct { /*0x72*/ u8 playerLinkFlagFinishTrade; /*0x73*/ u8 partnerLinkFlagFinishTrade; /*0x74*/ u16 linkData[10]; - /*0x88*/ u8 alwaysZero_88; - /*0x89*/ u8 alwaysZero_89; + /*0x88*/ u8 linkTimeoutZero1; + /*0x89*/ u8 linkTimeoutZero2; /*0x8A*/ u16 linkTimeoutCounter; /*0x8C*/ u16 neverRead_8C; - /*0x8E*/ u8 pokePicSpriteIdxs[2]; - /*0x90*/ u8 unk_90; //sprite id - /*0x91*/ u8 unk_91; //sprite id - /*0x92*/ u8 unk_92; //sprite id + /*0x8E*/ u8 monSpriteIds[2]; + /*0x90*/ u8 connectionSpriteId1; // Multi-purpose sprite ids used during the transfer sequence + /*0x91*/ u8 connectionSpriteId2; + /*0x92*/ u8 cableEndSpriteId; /*0x93*/ u8 sendTradeFinishState; /*0x94*/ u16 state; /*0x96*/ u8 filler_96[0xD2 - 0x96]; - /*0xD2*/ u8 pokeballSpriteId; - /*0xD3*/ u8 unk_D3; //sprite id + /*0xD2*/ u8 releasePokeballSpriteId; + /*0xD3*/ u8 bouncingPokeballSpriteId; /*0xD4*/ u16 texX; /*0xD6*/ u16 texY; /*0xD8*/ u16 neverRead_D8; @@ -151,7 +175,7 @@ static EWRAM_DATA struct { /*0xE4*/ s16 bg2vofs; /*0xE6*/ s16 bg2hofs; /*0xE8*/ u16 sXY; - /*0xEA*/ u16 unk_EA; //sXY divisor + /*0xEA*/ u16 gbaScale; /*0xEC*/ u16 alpha; /*0xEE*/ bool8 isLinkTrade; /*0xF0*/ u16 monSpecies[2]; @@ -183,24 +207,24 @@ static void DrawTradeMenuPartyMonInfo(u8, u8, u8, u8, u8, u8); static void DrawTradeMenuPartyInfo(u8); static void PrintNicknamesForTradeMenu(void); static void RedrawTradeMenuParty(u8); -static void Task_DrawSelectionSummary(u8 taskId); -static void Task_DrawSelectionTrade(u8 taskId); +static void Task_DrawSelectionSummary(u8); +static void Task_DrawSelectionTrade(u8); static void QueueAction(u16, u8); static u32 GetNumQueuedActions(void); static void DoQueuedActions(void); static void PrintTradeMessage(u8); static bool8 LoadTradeMenuSpriteSheetsAndPalettes(void); -static void DrawTextWindowAndBuffer6Bytes(const u8 *, u8 *, u8); +static void DrawBottomRowText(const u8 *, u8 *, u8); static void SetTradePartyLiveStatuses(u8); static void GetTradePartyHPBarLevels(u8); static void SetTradePartyHPBarSprites(void); static void SaveTradeGiftRibbons(void); static u32 CanTradeSelectedMon(struct Pokemon *, int, int); -static void sub_807AA28(struct Sprite *sprite); -static void sub_807AA7C(struct Sprite *sprite); -static void sub_807AABC(struct Sprite *sprite); -static void sub_807AAE0(struct Sprite *sprite); -static void sub_807AB04(struct Sprite *sprite); +static void SpriteCB_LinkMonGlow(struct Sprite *); +static void SpriteCB_LinkMonShadow(struct Sprite *); +static void SpriteCB_CableEndSending(struct Sprite *); +static void SpriteCB_CableEndReceiving(struct Sprite *); +static void SpriteCB_GbaScreen(struct Sprite *); static void InitTradeBgInternal(void); static void CB2_UpdateInGameTrade(void); static void SetTradeSequenceBgGpuRegs(u8); @@ -209,12 +233,12 @@ static void BufferTradeSceneStrings(void); static bool8 AnimateTradeSequence(void); static bool8 AnimateTradeSequenceCable(void); static bool8 AnimateTradeSequenceWireless(void); -static void sub_807E55C(struct Sprite *sprite); -static void sub_807E5D8(struct Sprite *sprite); -static void sub_807E64C(struct Sprite *sprite); -static void sub_807E6AC(struct Sprite *sprite); +static void SpriteCB_BouncingPokeball(struct Sprite *); +static void SpriteCB_BouncingPokeballDepart(struct Sprite *); +static void SpriteCB_BouncingPokeballDepartEnd(struct Sprite *); +static void SpriteCB_BouncingPokeballArrive(struct Sprite *); static void BufferInGameTradeMonName(void); -static void SetInGameTradeMail(struct MailStruct *mail, const struct InGameTrade *trade); +static void SetInGameTradeMail(struct MailStruct *, const struct InGameTrade *); static void CB2_UpdateLinkTrade(void); static void CB2_TryFinishTrade(void); static void CB2_SaveAndEndTrade(void); @@ -222,8 +246,8 @@ static void CB2_FreeTradeData(void); static void Task_InGameTrade(u8); static void CheckPartnersMonForRibbons(void); static void Task_AnimateWirelessSignal(u8); -static void c3_0805465C(u8); -static void sub_807F39C(u8); +static void Task_NarrowWindowForCrossing_Wireless(u8); +static void Task_NarrowWindowForCrossing_Cable(u8); static void CB2_SaveAndEndWirelessTrade(void); #include "data/trade.h" @@ -246,7 +270,7 @@ static void RequestLinkData(u8 type) SendBlockRequest(type); } -static bool32 sub_80771BC(void) +static bool32 IsLinkTradeTaskFinished(void) { if (gPlayerCurrActivity == ACTIVITY_29) { @@ -362,12 +386,10 @@ static void CB2_CreateTradeMenu(void) case 0: sTradeMenuData = AllocZeroed(sizeof(*sTradeMenuData)); InitTradeMenu(); - sMessageBoxAllocBuffer = AllocZeroed(ARRAY_COUNT(sMessageBoxTileBuffers) * 256); + sMenuTextAllocBuffer = AllocZeroed(GFXTAG_MENU_TEXT_COUNT * 256); - for (i = 0; i < (int)ARRAY_COUNT(sMessageBoxTileBuffers); i++) - { - sMessageBoxTileBuffers[i] = &sMessageBoxAllocBuffer[i * 256]; - } + for (i = 0; i < GFXTAG_MENU_TEXT_COUNT; i++) + sMenuTextTileBuffers[i] = &sMenuTextAllocBuffer[i * 256]; gMain.state++; break; @@ -375,9 +397,7 @@ static void CB2_CreateTradeMenu(void) gPaletteFade.bufferTransferDisabled = FALSE; for (i = 0; i < PARTY_SIZE; i++) - { CreateMon(&gEnemyParty[i], SPECIES_NONE, 0, USE_RANDOM_IVS, FALSE, 0, OT_ID_PLAYER_ID, 0); - } PrintTradeMessage(TRADE_MSG_STANDBY); ShowBg(0); @@ -508,11 +528,11 @@ static void CB2_CreateTradeMenu(void) gMain.state++; break; case 10: - DrawTextWindowAndBufferTiles(gSaveBlock2Ptr->playerName, sMessageBoxTileBuffers[0], 0, 0, 3); + DrawTextWindowAndBufferTiles(gSaveBlock2Ptr->playerName, sMenuTextTileBuffers[GFXTAG_PLAYER_NAME_L], 0, 0, 3); id = GetMultiplayerId(); - DrawTextWindowAndBufferTiles(gLinkPlayers[id ^ 1].name, sMessageBoxTileBuffers[3], 0, 0, 3); - DrawTextWindowAndBufferTiles(sTradeActionTexts[TRADE_TEXT_CANCEL], sMessageBoxTileBuffers[6], 0, 0, 2); - DrawTextWindowAndBuffer6Bytes(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], sMessageBoxTileBuffers[8], 24); + DrawTextWindowAndBufferTiles(gLinkPlayers[id ^ 1].name, sMenuTextTileBuffers[GFXTAG_PARTNER_NAME_L], 0, 0, 3); + DrawTextWindowAndBufferTiles(sTradeActionTexts[TRADE_TEXT_CANCEL], sMenuTextTileBuffers[GFXTAG_CANCEL_L], 0, 0, 2); + DrawBottomRowText(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], sMenuTextTileBuffers[GFXTAG_CHOOSE_PKMN_L], 24); gMain.state++; sTradeMenuData->timer = 0; break; @@ -521,39 +541,43 @@ static void CB2_CreateTradeMenu(void) gMain.state++; break; case 12: + // Create player's name text sprites xPos = GetStringCenterAlignXOffset(1, gSaveBlock2Ptr->playerName, 120); - for (i = 0; i < 3; i++) + for (i = 0; i < GFXTAG_PLAYER_NAME; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_PLAYER_NAME_L; CreateSprite(&temp, xPos + (i * 32) + 16, 10, 1); } + // Create partner's name text sprites xPos = GetStringCenterAlignXOffset(1, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); - for (i = 0; i < 3; i++) + for (i = 0; i < GFXTAG_PARTNER_NAME; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i + 3; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_PARTNER_NAME_L; CreateSprite(&temp, xPos + (i * 32) + 136, 10, 1); } gMain.state++; break; case 13: - temp = gSpriteTemplate_832DCAC; - temp.tileTag += 6; + // Create Cancel text sprites + temp = sSpriteTemplate_MenuText; + temp.tileTag += GFXTAG_CANCEL_L; CreateSprite(&temp, 215, 152, 1); - temp = gSpriteTemplate_832DCAC; - temp.tileTag += 7; + temp = sSpriteTemplate_MenuText; + temp.tileTag += GFXTAG_CANCEL_R; CreateSprite(&temp, 247, 152, 1); - for (i = 0; i < PARTY_SIZE; i++) + // Create Choose a Pokémon text sprites (only 3 are needed, other 3 are empty) + for (i = 0; i < GFXTAG_CHOOSE_PKMN; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i + 8; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_CHOOSE_PKMN_L; CreateSprite(&temp, (i * 32) + 24, 150, 1); } - sTradeMenuData->cursorSpriteIdx = CreateSprite(&gSpriteTemplate_832DC94, sTradeMonSpriteCoords[0][0] * 8 + 32, sTradeMonSpriteCoords[0][1] * 8, 2); + sTradeMenuData->cursorSpriteId = CreateSprite(&sSpriteTemplate_Cursor, sTradeMonSpriteCoords[0][0] * 8 + 32, sTradeMonSpriteCoords[0][1] * 8, 2); sTradeMenuData->cursorPosition = 0; gMain.state++; rbox_fill_rectangle(0); @@ -695,11 +719,11 @@ static void CB2_ReturnToTradeMenu(void) gMain.state++; break; case 10: - DrawTextWindowAndBufferTiles(gSaveBlock2Ptr->playerName, sMessageBoxTileBuffers[0], 0, 0, 3); + DrawTextWindowAndBufferTiles(gSaveBlock2Ptr->playerName, sMenuTextTileBuffers[GFXTAG_PLAYER_NAME_L], 0, 0, 3); id = GetMultiplayerId(); - DrawTextWindowAndBufferTiles(gLinkPlayers[id ^ 1].name, sMessageBoxTileBuffers[3], 0, 0, 3); - DrawTextWindowAndBufferTiles(sTradeActionTexts[TRADE_TEXT_CANCEL], sMessageBoxTileBuffers[6], 0, 0, 2); - DrawTextWindowAndBuffer6Bytes(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], sMessageBoxTileBuffers[8], 24); + DrawTextWindowAndBufferTiles(gLinkPlayers[id ^ 1].name, sMenuTextTileBuffers[GFXTAG_PARTNER_NAME_L], 0, 0, 3); + DrawTextWindowAndBufferTiles(sTradeActionTexts[TRADE_TEXT_CANCEL], sMenuTextTileBuffers[GFXTAG_CANCEL_L], 0, 0, 2); + DrawBottomRowText(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], sMenuTextTileBuffers[GFXTAG_CHOOSE_PKMN_L], 24); gMain.state++; sTradeMenuData->timer = 0; break; @@ -708,35 +732,39 @@ static void CB2_ReturnToTradeMenu(void) gMain.state++; break; case 12: + // Create player's name text sprites xPos = GetStringCenterAlignXOffset(1, gSaveBlock2Ptr->playerName, 120); - for (i = 0; i < 3; i++) + for (i = 0; i < GFXTAG_PLAYER_NAME; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_PLAYER_NAME_L; CreateSprite(&temp, xPos + (i * 32) + 16, 10, 1); } + // Create partner's name text sprites xPos = GetStringCenterAlignXOffset(1, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); - for (i = 0; i < 3; i++) + for (i = 0; i < GFXTAG_PARTNER_NAME; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i + 3; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_PARTNER_NAME_L; CreateSprite(&temp, xPos + (i * 32) + 136, 10, 1); } gMain.state++; break; case 13: - temp = gSpriteTemplate_832DCAC; - temp.tileTag += 6; + // Create Cancel text sprites + temp = sSpriteTemplate_MenuText; + temp.tileTag += GFXTAG_CANCEL_L; CreateSprite(&temp, 215, 152, 1); - temp = gSpriteTemplate_832DCAC; - temp.tileTag += 7; + temp = sSpriteTemplate_MenuText; + temp.tileTag += GFXTAG_CANCEL_R; CreateSprite(&temp, 247, 152, 1); - for (i = 0; i < PARTY_SIZE; i++) + // Create Choose a Pokémon text sprites + for (i = 0; i < GFXTAG_CHOOSE_PKMN; i++) { - temp = gSpriteTemplate_832DCAC; - temp.tileTag += i + 8; + temp = sSpriteTemplate_MenuText; + temp.tileTag += i + GFXTAG_CHOOSE_PKMN_L; CreateSprite(&temp, (i * 32) + 24, 150, 1); } @@ -745,7 +773,9 @@ static void CB2_ReturnToTradeMenu(void) else sTradeMenuData->cursorPosition = gLastViewedMonIndex + PARTY_SIZE; - sTradeMenuData->cursorSpriteIdx = CreateSprite(&gSpriteTemplate_832DC94, sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][0] * 8 + 32, sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][1] * 8, 2); + sTradeMenuData->cursorSpriteId = CreateSprite(&sSpriteTemplate_Cursor, + sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][0] * 8 + 32, + sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][1] * 8, 2); gMain.state = 16; break; case 16: @@ -835,7 +865,7 @@ static void SetLinkTradeCallbacks(void) { if (IsLinkRfuTaskFinished()) { - Free(sMessageBoxAllocBuffer); + Free(sMenuTextAllocBuffer); FreeAllWindowBuffers(); Free(sTradeMenuData); gMain.callback1 = NULL; @@ -848,7 +878,7 @@ static void SetLinkTradeCallbacks(void) { if (!gReceivedRemoteLinkPlayers) { - Free(sMessageBoxAllocBuffer); + Free(sMenuTextAllocBuffer); FreeAllWindowBuffers(); Free(sTradeMenuData); gMain.callback1 = NULL; @@ -957,12 +987,13 @@ static bool8 BufferTradeParties(void) switch (sTradeMenuData->bufferPartyState) { case 0: + // The parties are sent in pairs rather than all at once Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[0], 2 * sizeof(struct Pokemon)); sTradeMenuData->bufferPartyState++; sTradeMenuData->timer = 0; break; case 1: - if (sub_80771BC()) + if (IsLinkTradeTaskFinished()) { if (_GetBlockReceivedStatus() == 0) { @@ -1004,13 +1035,13 @@ static bool8 BufferTradeParties(void) case 8: if (_GetBlockReceivedStatus() == 3) { - Trade_Memcpy(&gEnemyParty[2], gBlockRecvBuffer[id ^ 1], 200); + Trade_Memcpy(&gEnemyParty[2], gBlockRecvBuffer[id ^ 1], 2 * sizeof(struct Pokemon)); TradeResetReceivedFlags(); sTradeMenuData->bufferPartyState++; } break; case 9: - Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[4], 200); + Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[4], 2 * sizeof(struct Pokemon)); sTradeMenuData->bufferPartyState++; break; case 11: @@ -1023,13 +1054,13 @@ static bool8 BufferTradeParties(void) case 12: if (_GetBlockReceivedStatus() == 3) { - Trade_Memcpy(&gEnemyParty[4], gBlockRecvBuffer[id ^ 1], 200); + Trade_Memcpy(&gEnemyParty[4], gBlockRecvBuffer[id ^ 1], 2 * sizeof(struct Pokemon)); TradeResetReceivedFlags(); sTradeMenuData->bufferPartyState++; } break; case 13: - Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, 220); + Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, PARTY_SIZE * sizeof(struct MailStruct) + 4); sTradeMenuData->bufferPartyState++; break; case 15: @@ -1042,13 +1073,13 @@ static bool8 BufferTradeParties(void) case 16: if (_GetBlockReceivedStatus() == 3) { - Trade_Memcpy(gTradeMail, gBlockRecvBuffer[id ^ 1], 216); + Trade_Memcpy(gTradeMail, gBlockRecvBuffer[id ^ 1], PARTY_SIZE * sizeof(struct MailStruct)); TradeResetReceivedFlags(); sTradeMenuData->bufferPartyState++; } break; case 17: - Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->giftRibbons, ARRAY_COUNT(sTradeMenuData->giftRibbons)); + Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->giftRibbons, sizeof(sTradeMenuData->giftRibbons)); sTradeMenuData->bufferPartyState++; break; case 19: @@ -1061,7 +1092,7 @@ static bool8 BufferTradeParties(void) case 20: if (_GetBlockReceivedStatus() == 3) { - Trade_Memcpy(sTradeMenuData->giftRibbons, gBlockRecvBuffer[id ^ 1], ARRAY_COUNT(sTradeMenuData->giftRibbons)); + Trade_Memcpy(sTradeMenuData->giftRibbons, gBlockRecvBuffer[id ^ 1], sizeof(sTradeMenuData->giftRibbons)); TradeResetReceivedFlags(); sTradeMenuData->bufferPartyState++; } @@ -1103,9 +1134,9 @@ static bool8 BufferTradeParties(void) return FALSE; } -static void PrintAndBufferIsThisTradeOkay(void) +static void DrawIsThisTradeOkay(void) { - DrawTextWindowAndBuffer6Bytes(sText_IsThisTradeOkay, (void *)(OBJ_VRAM0 + (sTradeMenuData->bottomTextTileStart * 32)), 24); + DrawBottomRowText(sText_IsThisTradeOkay, (void *)(OBJ_VRAM0 + (sTradeMenuData->bottomTextTileStart * 32)), 24); } // mpId is unused @@ -1317,15 +1348,15 @@ static void TradeMenuMoveCursor(u8 *cursorPosition, u8 direction) if (newPosition == (PARTY_SIZE * 2)) // CANCEL { - StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteIdx], 1); - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.x = DISPLAY_WIDTH - 16; - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.y = DISPLAY_HEIGHT; + StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteId], CURSOR_ANIM_ON_CANCEL); + gSprites[sTradeMenuData->cursorSpriteId].pos1.x = DISPLAY_WIDTH - 16; + gSprites[sTradeMenuData->cursorSpriteId].pos1.y = DISPLAY_HEIGHT; } else { - StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteIdx], 0); - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32; - gSprites[sTradeMenuData->cursorSpriteIdx].pos1.y = sTradeMonSpriteCoords[newPosition][1] * 8; + StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteId], CURSOR_ANIM_NORMAL); + gSprites[sTradeMenuData->cursorSpriteId].pos1.x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32; + gSprites[sTradeMenuData->cursorSpriteId].pos1.y = sTradeMonSpriteCoords[newPosition][1] * 8; } if (*cursorPosition != newPosition) @@ -1392,7 +1423,7 @@ static void TradeMenuProcessInput(void) { CreateYesNoMenu(&sTradeYesNoWindowTemplate, 1, 14, 0); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_CANCEL_TRADE_PROMPT; - DrawTextWindowAndBuffer6Bytes(sTradeActionTexts[TRADE_TEXT_CANCEL_TRADE], (void *)(OBJ_VRAM0 + sTradeMenuData->bottomTextTileStart * 32), 24); + DrawBottomRowText(sTradeActionTexts[TRADE_TEXT_CANCEL_TRADE], (void *)(OBJ_VRAM0 + sTradeMenuData->bottomTextTileStart * 32), 24); } } } @@ -1401,8 +1432,8 @@ static void TradeMenuChooseMon(void) { PrintNicknamesForTradeMenu(); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_MAIN_MENU; - gSprites[sTradeMenuData->cursorSpriteIdx].invisible = FALSE; - DrawTextWindowAndBuffer6Bytes(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], (void *)(OBJ_VRAM0 + sTradeMenuData->bottomTextTileStart * 32), 24); + gSprites[sTradeMenuData->cursorSpriteId].invisible = FALSE; + DrawBottomRowText(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], (void *)(OBJ_VRAM0 + sTradeMenuData->bottomTextTileStart * 32), 24); } static void TradeMenuProcessInput_SelectedMon(void) @@ -1424,7 +1455,7 @@ static void TradeMenuProcessInput_SelectedMon(void) { case CAN_TRADE_MON: SetReadyToTrade(); - gSprites[sTradeMenuData->cursorSpriteIdx].invisible = TRUE; + gSprites[sTradeMenuData->cursorSpriteId].invisible = TRUE; break; case CANT_TRADE_LAST_MON: QueueAction(QUEUE_DELAY_MSG, QUEUE_ONLY_MON2); @@ -1514,7 +1545,9 @@ static bool32 CheckMonsBeforeTrade(void) aliveMons[i] = sTradeMenuData->isLiveMon[TRADE_PLAYER][i]; } - switch (CheckValidityOfTradeMons(aliveMons, sTradeMenuData->partyCounts[TRADE_PLAYER], sTradeMenuData->cursorPosition, sTradeMenuData->partnerCursorPosition)) + switch (CheckValidityOfTradeMons(aliveMons, sTradeMenuData->partyCounts[TRADE_PLAYER], + sTradeMenuData->cursorPosition, + sTradeMenuData->partnerCursorPosition)) { case PLAYER_MON_INVALID: QueueAction(QUEUE_DELAY_MSG, QUEUE_ONLY_MON2); @@ -1547,7 +1580,7 @@ static void ConfirmOrCancelTrade(void) case 1: // Cancel Trade case MENU_B_PRESSED: QueueAction(QUEUE_DELAY_MSG, QUEUE_STANDBY); - if (sub_80771BC()) + if (IsLinkTradeTaskFinished()) SetLinkData(LINKCMD_READY_CANCEL_TRADE, 0); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_STANDBY; PutWindowTilemap(17); @@ -1555,7 +1588,8 @@ static void ConfirmOrCancelTrade(void) } } -static void sub_807929C(void) +// Only when choosing Yes to cancel, when No is chosen all are redrawn anyway +static void RestoreNicknamesCoveredByYesNo(void) { int i; @@ -1573,9 +1607,9 @@ static void CancelTradeYesNo(void) case 0: // YES, Cancel PrintTradeMessage(TRADE_MSG_WAITING_FOR_FRIEND); SetLinkData(LINKCMD_REQUEST_CANCEL, 0); - gSprites[sTradeMenuData->cursorSpriteIdx].invisible = TRUE; + gSprites[sTradeMenuData->cursorSpriteId].invisible = TRUE; sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_STANDBY; - sub_807929C(); + RestoreNicknamesCoveredByYesNo(); break; case 1: // NO, Continue case MENU_B_PRESSED: @@ -1601,7 +1635,7 @@ static void ConfirmTradePrompt(void) if (sTradeMenuData->drawPartyState[TRADE_PLAYER] == DRAW_PARTY_FINISH && sTradeMenuData->drawPartyState[TRADE_PARTNER] == DRAW_PARTY_FINISH) { - PrintAndBufferIsThisTradeOkay(); + DrawIsThisTradeOkay(); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_DELAY_TRADE_CONFIRM; } } @@ -1637,7 +1671,7 @@ static void RedrawTradeMenuAfterPressA(void) RedrawTradeMenuParty(TRADE_PLAYER); RedrawTradeMenuParty(TRADE_PARTNER); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_MAIN_MENU; - gSprites[sTradeMenuData->cursorSpriteIdx].invisible = FALSE; + gSprites[sTradeMenuData->cursorSpriteId].invisible = FALSE; } } @@ -1662,9 +1696,9 @@ static void CancelTrade_2(void) { if (gWirelessCommType) { - if (sub_80771BC() && GetNumQueuedActions() == 0) + if (IsLinkTradeTaskFinished() && GetNumQueuedActions() == 0) { - Free(sMessageBoxAllocBuffer); + Free(sMenuTextAllocBuffer); Free(sTradeMenuData); FreeAllWindowBuffers(); DestroyWirelessStatusIndicatorSprite(); @@ -1675,7 +1709,7 @@ static void CancelTrade_2(void) { if (!gReceivedRemoteLinkPlayers) { - Free(sMessageBoxAllocBuffer); + Free(sMenuTextAllocBuffer); Free(sTradeMenuData); FreeAllWindowBuffers(); SetMainCallback2(CB2_ReturnToFieldFromMultiplayer); @@ -1803,7 +1837,8 @@ static void DrawTradeMenuParty(u8 whichParty) gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].invisible = FALSE; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[0] = 20; - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[2] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[2] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[4] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][1] * 8) - 12; StoreSpriteCallbackInData6(&gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]], SpriteCB_MonIcon); sTradeMenuData->drawPartyState[whichParty]++; @@ -1822,7 +1857,8 @@ static void DrawTradeMenuParty(u8 whichParty) case 3: CopyToBgTilemapBufferRect_ChangePalette(1, sTradeMovesBoxTilemap, selectedMonParty * 15, 0, 15, 17, 0); CopyBgTilemapBufferToVram(1); - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos1.x = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos1.x = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos1.y = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][1] * 8) - 12; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos2.x = 0; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos2.y = 0; @@ -2035,7 +2071,7 @@ static void RedrawTradeMenuParty(u8 whichParty) DrawTradeMenuPartyInfo(whichParty); PrintPartyNicknamesForTradeMenu(whichParty); ResetTradeMenuPartyPositions(whichParty); - DrawTextWindowAndBuffer6Bytes(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], (void *)(OBJ_VRAM0 + (sTradeMenuData->bottomTextTileStart * 32)), 24); + DrawBottomRowText(sTradeActionTexts[TRADE_TEXT_CHOOSE_MON], (void *)(OBJ_VRAM0 + (sTradeMenuData->bottomTextTileStart * 32)), 24); sTradeMenuData->drawPartyState[whichParty] = 0; } @@ -2139,40 +2175,51 @@ static bool8 LoadTradeMenuSpriteSheetsAndPalettes(void) { struct SpriteSheet sheet; - if (sTradeMenuData->timer < (int)ARRAY_COUNT(sMessageBoxTileBuffers)) + if (sTradeMenuData->timer < GFXTAG_MENU_TEXT_COUNT) { - sheet.data = sMessageBoxTileBuffers[sTradeMenuData->timer]; + sheet.data = sMenuTextTileBuffers[sTradeMenuData->timer]; sheet.size = 0x100; - sheet.tag = 200 + sTradeMenuData->timer; + sheet.tag = GFXTAG_MENU_TEXT + sTradeMenuData->timer; } switch (sTradeMenuData->timer) { - case 0 ... 7: + case GFXTAG_PLAYER_NAME_L: + case GFXTAG_PLAYER_NAME_M: + case GFXTAG_PLAYER_NAME_R: + case GFXTAG_PARTNER_NAME_L: + case GFXTAG_PARTNER_NAME_M: + case GFXTAG_PARTNER_NAME_R: + case GFXTAG_CANCEL_L: + case GFXTAG_CANCEL_R: LoadSpriteSheet(&sheet); sTradeMenuData->timer++; break; - case 8: + case GFXTAG_CHOOSE_PKMN_L: sTradeMenuData->bottomTextTileStart = LoadSpriteSheet(&sheet); sTradeMenuData->timer++; break; - case 9 ... 13: + case GFXTAG_CHOOSE_PKMN_M: + case GFXTAG_CHOOSE_PKMN_R: + case GFXTAG_CHOOSE_PKMN_EMPTY_1: + case GFXTAG_CHOOSE_PKMN_EMPTY_2: + case GFXTAG_CHOOSE_PKMN_EMPTY_3: LoadSpriteSheet(&sheet); sTradeMenuData->timer++; break; - case 14: + case GFXTAG_MENU_TEXT_COUNT: LoadSpritePalette(&gSpritePalette_TradeScreenText); sTradeMenuData->timer++; break; - case 15: - LoadSpritePalette(&gUnknown_0832DC44); + case GFXTAG_MENU_TEXT_COUNT + 1: + LoadSpritePalette(&sCursor_SpritePalette); sTradeMenuData->timer++; break; - case 16: - LoadSpriteSheet(&sTradeButtonsSpriteSheet); + case GFXTAG_MENU_TEXT_COUNT + 2: + LoadSpriteSheet(&sCursor_SpriteSheet); sTradeMenuData->timer++; break; - case 17: + case GFXTAG_MENU_TEXT_COUNT + 3: sTradeMenuData->timer = 0; return TRUE; } @@ -2180,7 +2227,7 @@ static bool8 LoadTradeMenuSpriteSheetsAndPalettes(void) return FALSE; } -static void DrawTextWindowAndBuffer6Bytes(const u8 *str, u8 *dest, u8 unused) +static void DrawBottomRowText(const u8 *str, u8 *dest, u8 unused) { DrawTextWindowAndBufferTiles(str, dest, 0, 0, 6); } @@ -2564,7 +2611,7 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) return CAN_TRADE_MON; } -static void sub_807AA28(struct Sprite *sprite) +static void SpriteCB_LinkMonGlow(struct Sprite *sprite) { if (++sprite->data[0] == 10) { @@ -2573,7 +2620,7 @@ static void sub_807AA28(struct Sprite *sprite) } } -static void sub_807AA4C(struct Sprite *sprite) +static void SpriteCB_LinkMonGlowWireless(struct Sprite *sprite) { if (!sprite->invisible && ++sprite->data[0] == 10) { @@ -2582,18 +2629,19 @@ static void sub_807AA4C(struct Sprite *sprite) } } -static void sub_807AA7C(struct Sprite *sprite) +static void SpriteCB_LinkMonShadow(struct Sprite *sprite) { if (!sprite->data[1]) { if (++sprite->data[0] == 12) sprite->data[0] = 0; - LoadPalette(&gUnknown_08338EA4[sprite->data[0]], (sprite->oam.paletteNum + 16) * 16 + 4, 2); + LoadPalette(&sLinkMonShadow_Pal[sprite->data[0]], (sprite->oam.paletteNum + 16) * 16 + 4, 2); } } -static void sub_807AABC(struct Sprite *sprite) +// Move cable down offscreen +static void SpriteCB_CableEndSending(struct Sprite *sprite) { sprite->data[0]++; sprite->pos2.y++; @@ -2602,7 +2650,8 @@ static void sub_807AABC(struct Sprite *sprite) DestroySprite(sprite); } -static void sub_807AAE0(struct Sprite *sprite) +// Move cable up onscreen +static void SpriteCB_CableEndReceiving(struct Sprite *sprite) { sprite->data[0]++; sprite->pos2.y--; @@ -2611,7 +2660,7 @@ static void sub_807AAE0(struct Sprite *sprite) DestroySprite(sprite); } -static void sub_807AB04(struct Sprite *sprite) +static void SpriteCB_GbaScreen(struct Sprite *sprite) { if (++sprite->data[0] == 15) { @@ -2665,13 +2714,13 @@ static void VBlankCB_Trade(void) static void ClearLinkTimeoutCounter(void) { sTradeData->linkTimeoutCounter = 0; - sTradeData->alwaysZero_88 = 0; - sTradeData->alwaysZero_89 = 0; + sTradeData->linkTimeoutZero1 = 0; + sTradeData->linkTimeoutZero2 = 0; } static void CheckForLinkTimeout(void) { - if (sTradeData->alwaysZero_88 == sTradeData->alwaysZero_89) + if (sTradeData->linkTimeoutZero1 == sTradeData->linkTimeoutZero2) sTradeData->linkTimeoutCounter++; else sTradeData->linkTimeoutCounter = 0; @@ -2681,11 +2730,11 @@ static void CheckForLinkTimeout(void) CloseLink(); SetMainCallback2(CB2_LinkError); sTradeData->linkTimeoutCounter = 0; - sTradeData->alwaysZero_89 = 0; - sTradeData->alwaysZero_88 = 0; + sTradeData->linkTimeoutZero2 = 0; + sTradeData->linkTimeoutZero1 = 0; } - sTradeData->alwaysZero_89 = sTradeData->alwaysZero_88; + sTradeData->linkTimeoutZero2 = sTradeData->linkTimeoutZero1; } static u32 TradeGetMultiplayerId(void) @@ -2731,9 +2780,9 @@ static void LoadTradeMonPic(u8 whichParty, u8 state) break; case 1: SetMultiuseSpriteTemplateToPokemon(GetMonSpritePalStruct(mon)->tag, pos); - sTradeData->pokePicSpriteIdxs[whichParty] = CreateSprite(&gMultiuseSpriteTemplate, 120, 60, 6); - gSprites[sTradeData->pokePicSpriteIdxs[whichParty]].invisible = TRUE; - gSprites[sTradeData->pokePicSpriteIdxs[whichParty]].callback = SpriteCallbackDummy; + sTradeData->monSpriteIds[whichParty] = CreateSprite(&gMultiuseSpriteTemplate, 120, 60, 6); + gSprites[sTradeData->monSpriteIds[whichParty]].invisible = TRUE; + gSprites[sTradeData->monSpriteIds[whichParty]].callback = SpriteCallbackDummy; break; } } @@ -3047,7 +3096,7 @@ static void TrySendTradeFinishData(void) case 1: if (IsLinkTaskFinished()) { - Trade_SendData(sTradeData); + SendBlock(bitmask_all_link_players_but_self(), sTradeData->linkData, sizeof(sTradeData->linkData)); sTradeData->sendTradeFinishState++; } // fallthrough @@ -3086,7 +3135,7 @@ static void SetTradeSequenceBgGpuRegs(u8 state) BGCNT_TXT512x256); LoadPalette(gTradeGba2_Pal, 16, 0x60); DmaCopyLarge16(3, gTradeGba_Gfx, (void *) BG_CHAR_ADDR(1), 0x1420, 0x1000); - DmaCopy16Defvars(3, gUnknown_08331F60, (void *) BG_SCREEN_ADDR(18), 0x1000); + DmaCopy16Defvars(3, gTradePlatform_Tilemap, (void *) BG_SCREEN_ADDR(18), 0x1000); break; case 1: sTradeData->bg1hofs = 0; @@ -3105,11 +3154,11 @@ static void SetTradeSequenceBgGpuRegs(u8 state) if (sTradeData->isCableTrade) { - DmaCopy16Defvars(3, sTradeTilemap_GbaCable, (void *) BG_SCREEN_ADDR(5), 0x1000); + DmaCopy16Defvars(3, sGbaCable_Tilemap, (void *) BG_SCREEN_ADDR(5), 0x1000); } else { - DmaCopy16Defvars(3, sTradeTilemap_GbaWireless, (void *) BG_SCREEN_ADDR(5), 0x1000); + DmaCopy16Defvars(3, sGbaWireless_Tilemap, (void *) BG_SCREEN_ADDR(5), 0x1000); } DmaCopyLarge16(3, gTradeGba_Gfx, (void *) BG_CHAR_ADDR(0), 0x1420, 0x1000); @@ -3127,7 +3176,7 @@ static void SetTradeSequenceBgGpuRegs(u8 state) DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); - LZ77UnCompVram(gUnknown_083379A0, (void *) BG_SCREEN_ADDR(5)); + LZ77UnCompVram(sCrossingHighlightWireless_Tilemap, (void *) BG_SCREEN_ADDR(5)); BlendPalettes(0x8, 16, RGB_BLACK); } else @@ -3136,14 +3185,14 @@ static void SetTradeSequenceBgGpuRegs(u8 state) DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); - DmaCopy16Defvars(3, sTradeTilemap_Cable, (void *) BG_SCREEN_ADDR(5), 0x800); + DmaCopy16Defvars(3, sCrossingHighlightCable_Tilemap, (void *) BG_SCREEN_ADDR(5), 0x800); BlendPalettes(0x1, 16, RGB_BLACK); } break; case 3: - LoadPalette(sTradePal_Black, 48, 0x20); - LZ77UnCompVram(sTradeGfx_WirelessSignal, (void *) BG_CHAR_ADDR(1)); - LZ77UnCompVram(sTradeTilemap_WirelessSignal, (void *) BG_SCREEN_ADDR(18)); + LoadPalette(sWirelessSignalNone_Pal, 48, 0x20); + LZ77UnCompVram(sWirelessSignal_Gfx, (void *) BG_CHAR_ADDR(1)); + LZ77UnCompVram(sWirelessSignal_Tilemap, (void *) BG_SCREEN_ADDR(18)); sTradeData->bg2vofs = 80; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | @@ -3164,18 +3213,18 @@ static void SetTradeSequenceBgGpuRegs(u8 state) sTradeData->texX = 64; sTradeData->texY = 92; sTradeData->sXY = 32; - sTradeData->unk_EA = 1024; + sTradeData->gbaScale = 1024; sTradeData->alpha = 0; - DmaCopyLarge16(3, sTradeAffine_Gba, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000); + DmaCopyLarge16(3, sGbaAffine_Gfx, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000); if (sTradeData->isCableTrade) { - DmaCopy16Defvars(3, sTradeAffineMap_GbaCable, (void *) BG_SCREEN_ADDR(18), 0x100); + DmaCopy16Defvars(3, sGbaCable_AffineTilemap, (void *) BG_SCREEN_ADDR(18), 0x100); } else { - DmaCopy16Defvars(3, sTradeAffineMap_GbaWireless, (void *) BG_SCREEN_ADDR(18), 0x100); + DmaCopy16Defvars(3, sGbaWireless_AffineTilemap, (void *) BG_SCREEN_ADDR(18), 0x100); } break; case 5: @@ -3195,20 +3244,20 @@ static void SetTradeSequenceBgGpuRegs(u8 state) sTradeData->texX = 64; sTradeData->texY = 92; sTradeData->sXY = 256; - sTradeData->unk_EA = 128; + sTradeData->gbaScale = 128; sTradeData->scrX = 120; sTradeData->scrY = 80; sTradeData->alpha = 0; - DmaCopyLarge16(3, sTradeAffine_Gba, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000); + DmaCopyLarge16(3, sGbaAffine_Gfx, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000); if (sTradeData->isCableTrade) { - DmaCopy16Defvars(3, sTradeAffineMap_GbaCable, (void *) BG_SCREEN_ADDR(18), 0x100); + DmaCopy16Defvars(3, sGbaCable_AffineTilemap, (void *) BG_SCREEN_ADDR(18), 0x100); } else { - DmaCopy16Defvars(3, sTradeAffineMap_GbaWireless, (void *) BG_SCREEN_ADDR(18), 0x100); + DmaCopy16Defvars(3, sGbaWireless_AffineTilemap, (void *) BG_SCREEN_ADDR(18), 0x100); } break; case 7: @@ -3222,19 +3271,19 @@ static void SetTradeSequenceBgGpuRegs(u8 state) BGCNT_TXT512x256); LoadPalette(gTradeGba2_Pal, 16, 0x60); DmaCopyLarge16(3, gTradeGba_Gfx, (void *) BG_CHAR_ADDR(1), 0x1420, 0x1000); - DmaCopy16Defvars(3, gUnknown_08331F60, (void *) BG_SCREEN_ADDR(18), 0x1000); + DmaCopy16Defvars(3, gTradePlatform_Tilemap, (void *) BG_SCREEN_ADDR(18), 0x1000); break; } } static void LoadTradeSequenceSpriteSheetsAndPalettes(void) { - LoadSpriteSheet(&sGlow1SpriteSheet); - LoadSpriteSheet(&sGlow2SpriteSheet); - LoadSpriteSheet(&sCableEndSpriteSheet); - LoadSpriteSheet(&sGbaScreenSpriteSheet); - LoadSpritePalette(&sMiscTradeSpritePalette); - LoadSpritePalette(&sGbaSpritePalette); + LoadSpriteSheet(&sSpriteSheet_LinkMonGlow); + LoadSpriteSheet(&sSpriteSheet_LinkMonShadow); + LoadSpriteSheet(&sSpriteSheet_CableEnd); + LoadSpriteSheet(&sSpriteSheet_GbaScreen); + LoadSpritePalette(&sSpritePalette_LinkMon); + LoadSpritePalette(&sSpritePalette_Gba); } // Buffers "[Pokemon] will be sent to [Trainer]" strings @@ -3263,7 +3312,7 @@ static void BufferTradeSceneStrings(void) } } -// returns TRUE if it was a link trade, FALSE if it was an in-game trade +// returns TRUE if it finished a link trade, FALSE if it finished an in-game trade or if sequence is still going static bool8 AnimateTradeSequence(void) { if (sTradeData->isCableTrade) @@ -3272,71 +3321,146 @@ static bool8 AnimateTradeSequence(void) return AnimateTradeSequenceWireless(); } +// Below are the states for the main switch in AnimateTradeSequenceCable and AnimateTradeSequenceWireless +// When AnimateTradeSequenceWireless has a unique version of a +// state used by AnimateTradeSequenceCable, it adds the below modifier +#define TS_WIRELESS_STATE 100 +enum { + TS_STATE_START, + TS_STATE_MON_SLIDE_IN, + // 2-9 unused + TS_STATE_SEND_MSG = 10, + TS_STATE_BYE_BYE, + TS_STATE_POKEBALL_DEPART, + TS_STATE_POKEBALL_DEPART_WAIT, + TS_STATE_FADE_OUT_TO_GBA_SEND, + // 15-19 unused + TS_STATE_WAIT_FADE_OUT_TO_GBA_SEND = 20, + TS_STATE_FADE_IN_TO_GBA_SEND, + TS_STATE_WAIT_FADE_IN_TO_GBA_SEND, + TS_STATE_GBA_ZOOM_OUT, + TS_STATE_GBA_FLASH_SEND, + TS_STATE_GBA_STOP_FLASH_SEND, + TS_STATE_PAN_AWAY_GBA, + TS_STATE_CREATE_LINK_MON_LEAVING, + TS_STATE_LINK_MON_TRAVEL_OUT, + TS_STATE_FADE_OUT_TO_CROSSING, + TS_STATE_WAIT_FADE_OUT_TO_CROSSING, + TS_STATE_FADE_IN_TO_CROSSING, + TS_STATE_WAIT_FADE_IN_TO_CROSSING, + TS_STATE_CROSSING_LINK_MONS_ENTER, + TS_STATE_CROSSING_BLEND_WHITE_1, + TS_STATE_CROSSING_BLEND_WHITE_2, + TS_STATE_CROSSING_BLEND_WHITE_3, + TS_STATE_CROSSING_CREATE_MON_PICS, + TS_STATE_CROSSING_MON_PICS_MOVE, + TS_STATE_CROSSING_LINK_MONS_EXIT, + TS_STATE_CREATE_LINK_MON_ARRIVING, + TS_STATE_FADE_OUT_TO_GBA_RECV, + TS_STATE_WAIT_FADE_OUT_TO_GBA_RECV, + TS_STATE_LINK_MON_TRAVEL_IN, + TS_STATE_PAN_TO_GBA, + TS_STATE_DESTROY_LINK_MON, + TS_STATE_LINK_MON_ARRIVED_DELAY, + TS_STATE_MOVE_GBA_TO_CENTER, + TS_STATE_GBA_FLASH_RECV, + TS_STATE_UNUSED, + TS_STATE_GBA_STOP_FLASH_RECV, + TS_STATE_GBA_ZOOM_IN, + TS_STATE_FADE_OUT_TO_NEW_MON, + // 53-59 unused + TS_STATE_WAIT_FADE_OUT_TO_NEW_MON = 60, + TS_STATE_FADE_IN_TO_NEW_MON, + TS_STATE_WAIT_FADE_IN_TO_NEW_MON, + TS_STATE_POKEBALL_ARRIVE, + TS_STATE_FADE_POKEBALL_TO_NORMAL, + TS_STATE_POKEBALL_ARRIVE_WAIT, + TS_STATE_SHOW_NEW_MON, + TS_STATE_NEW_MON_MSG, + TS_STATE_TAKE_CARE_OF_MON, + TS_STATE_AFTER_NEW_MON_DELAY, + TS_STATE_CHECK_RIBBONS, + TS_STATE_END_LINK_TRADE, + TS_STATE_TRY_EVOLUTION, + TS_STATE_FADE_OUT_END, + TS_STATE_WAIT_FADE_OUT_END, + // Special states + TS_STATE_GBA_FLASH_SEND_WIRELESS = TS_STATE_GBA_FLASH_SEND + TS_WIRELESS_STATE, + TS_STATE_GBA_STOP_FLASH_SEND_WIRELESS, + TS_STATE_WAIT_WIRELESS_SIGNAL_SEND, + TS_STATE_PAN_TO_GBA_WIRELESS = TS_STATE_PAN_TO_GBA + TS_WIRELESS_STATE, + TS_STATE_DESTROY_LINK_MON_WIRELESS, + TS_STATE_WAIT_WIRELESS_SIGNAL_RECV, + TS_STATE_DELAY_FOR_MON_ANIM = 167, + TS_STATE_LINK_MON_TRAVEL_OFFSCREEN = 200, + TS_STATE_WAIT_FOR_MON_CRY = 267, +}; + static bool8 AnimateTradeSequenceCable(void) { u16 evoTarget; switch (sTradeData->state) { - case 0: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x = -180; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; + case TS_STATE_START: + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = -180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; sTradeData->state++; sTradeData->cachedMapMusic = GetCurrentMapMusic(); PlayNewMapMusic(MUS_EVOLUTION); break; - case 1: + case TS_STATE_MON_SLIDE_IN: if (sTradeData->bg2hofs > 0) { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x += 3; + // Sliding + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x += 3; sTradeData->bg2hofs -= 3; } else { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x = 0; + // Pokémon has arrived onscreen + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = 0; sTradeData->bg2hofs = 0; - sTradeData->state = 10; + sTradeData->state = TS_STATE_SEND_MSG; } break; - case 10: + case TS_STATE_SEND_MSG: StringExpandPlaceholders(gStringVar4, gText_XWillBeSentToY); DrawTextOnTradeWindow(0, gStringVar4, 0); if (sTradeData->monSpecies[TRADE_PLAYER] != SPECIES_EGG) - { PlayCry1(sTradeData->monSpecies[TRADE_PLAYER], 0); - } - sTradeData->state = 11; + sTradeData->state = TS_STATE_BYE_BYE; sTradeData->timer = 0; break; - case 11: + case TS_STATE_BYE_BYE: if (++sTradeData->timer == 80) { - sTradeData->pokeballSpriteId = CreateTradePokeballSprite(sTradeData->pokePicSpriteIdxs[0], gSprites[sTradeData->pokePicSpriteIdxs[0]].oam.paletteNum, 120, 32, 2, 1, 0x14, 0xfffff); + sTradeData->releasePokeballSpriteId = CreateTradePokeballSprite(sTradeData->monSpriteIds[0], gSprites[sTradeData->monSpriteIds[0]].oam.paletteNum, 120, 32, 2, 1, 0x14, 0xfffff); sTradeData->state++; StringExpandPlaceholders(gStringVar4, gText_ByeByeVar1); DrawTextOnTradeWindow(0, gStringVar4, 0); } break; - case 12: - if (gSprites[sTradeData->pokeballSpriteId].callback == SpriteCallbackDummy) + case TS_STATE_POKEBALL_DEPART: + if (gSprites[sTradeData->releasePokeballSpriteId].callback == SpriteCallbackDummy) { - sTradeData->unk_D3 = CreateSprite(&gSpriteTemplate_8338D28, 120, 32, 0); - gSprites[sTradeData->unk_D3].callback = sub_807E5D8; - DestroySprite(&gSprites[sTradeData->pokeballSpriteId]); + sTradeData->bouncingPokeballSpriteId = CreateSprite(&sSpriteTemplate_Pokeball, 120, 32, 0); + gSprites[sTradeData->bouncingPokeballSpriteId].callback = SpriteCB_BouncingPokeballDepart; + DestroySprite(&gSprites[sTradeData->releasePokeballSpriteId]); sTradeData->state++; } break; - case 13: + case TS_STATE_POKEBALL_DEPART_WAIT: // The game waits here for the sprite to finish its animation sequence. break; - case 14: + case TS_STATE_FADE_OUT_TO_GBA_SEND: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sTradeData->state = 20; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_GBA_SEND; break; - case 20: + case TS_STATE_WAIT_FADE_OUT_TO_GBA_SEND: if (!gPaletteFade.active) { SetTradeSequenceBgGpuRegs(4); @@ -3345,42 +3469,40 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->state++; } break; - case 21: + case TS_STATE_FADE_IN_TO_GBA_SEND: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 22: + case TS_STATE_WAIT_FADE_IN_TO_GBA_SEND: if (!gPaletteFade.active) - { - sTradeData->state = 23; - } + sTradeData->state = TS_STATE_GBA_ZOOM_OUT; break; - case 23: - if (sTradeData->unk_EA > 0x100) + case TS_STATE_GBA_ZOOM_OUT: + if (sTradeData->gbaScale > 0x100) { - sTradeData->unk_EA -= 0x34; + sTradeData->gbaScale -= 0x34; } else { SetTradeSequenceBgGpuRegs(1); - sTradeData->unk_EA = 0x80; + sTradeData->gbaScale = 0x80; sTradeData->state++; sTradeData->timer = 0; } - sTradeData->sXY = 0x8000 / sTradeData->unk_EA; + sTradeData->sXY = 0x8000 / sTradeData->gbaScale; break; - case 24: + case TS_STATE_GBA_FLASH_SEND: if (++sTradeData->timer > 20) { SetTradeBGAffine(); - sTradeData->unk_91 = CreateSprite(&gSpriteTemplate_8338E74, 120, 80, 0); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_GbaScreenFlash_Long, 120, 80, 0); sTradeData->state++; } break; - case 25: - if (gSprites[sTradeData->unk_91].animEnded) + case TS_STATE_GBA_STOP_FLASH_SEND: + if (gSprites[sTradeData->connectionSpriteId2].animEnded) { - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2); @@ -3388,193 +3510,183 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->state++; } break; - case 26: + case TS_STATE_PAN_AWAY_GBA: if (--sTradeData->bg1vofs == 316) - { sTradeData->state++; - } + if (sTradeData->bg1vofs == 328) - { - sTradeData->unk_92 = CreateSprite(&gSpriteTemplate_8338DFC, 128, 65, 0); - } + sTradeData->cableEndSpriteId = CreateSprite(&sSpriteTemplate_CableEnd, 128, 65, 0); break; - case 27: - sTradeData->unk_90 = CreateSprite(&gUnknown_08338D88, 128, 80, 3); - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 128, 80, 0); - StartSpriteAnim(&gSprites[sTradeData->unk_91], 1); + case TS_STATE_CREATE_LINK_MON_LEAVING: + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonGlow, 128, 80, 3); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 128, 80, 0); + StartSpriteAnim(&gSprites[sTradeData->connectionSpriteId2], ANIM_LINKMON_SMALL); sTradeData->state++; break; - case 28: + case TS_STATE_LINK_MON_TRAVEL_OUT: if ((sTradeData->bg1vofs -= 2) == 166) - { - sTradeData->state = 200; - } + sTradeData->state = TS_STATE_LINK_MON_TRAVEL_OFFSCREEN; + SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); break; - case 200: - gSprites[sTradeData->unk_90].pos1.y -= 2; - gSprites[sTradeData->unk_91].pos1.y -= 2; - if (gSprites[sTradeData->unk_90].pos1.y < -8) - { - sTradeData->state = 29; - } + case TS_STATE_LINK_MON_TRAVEL_OFFSCREEN: + gSprites[sTradeData->connectionSpriteId1].pos1.y -= 2; + gSprites[sTradeData->connectionSpriteId2].pos1.y -= 2; + if (gSprites[sTradeData->connectionSpriteId1].pos1.y < -8) + sTradeData->state = TS_STATE_FADE_OUT_TO_CROSSING; break; - case 29: + case TS_STATE_FADE_OUT_TO_CROSSING: BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); - sTradeData->state = 30; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_CROSSING; break; - case 30: + case TS_STATE_WAIT_FADE_OUT_TO_CROSSING: if (!gPaletteFade.active) { - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetTradeSequenceBgGpuRegs(2); sTradeData->state++; } break; - case 31: + case TS_STATE_FADE_IN_TO_CROSSING: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); - sTradeData->unk_90 = CreateSprite(&sGlowBallSpriteTemplate, 111, 170, 0); - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 129, -10, 0); + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 111, 170, 0); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 129, -10, 0); sTradeData->state++; break; - case 32: + case TS_STATE_WAIT_FADE_IN_TO_CROSSING: if (!gPaletteFade.active) { PlaySE(SE_WARP_OUT); sTradeData->state++; } - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; break; - case 33: - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; - if (gSprites[sTradeData->unk_90].pos2.y <= -90) + case TS_STATE_CROSSING_LINK_MONS_ENTER: + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -90) { - gSprites[sTradeData->unk_90].data[1] = 1; - gSprites[sTradeData->unk_91].data[1] = 1; + gSprites[sTradeData->connectionSpriteId1].data[1] = 1; + gSprites[sTradeData->connectionSpriteId2].data[1] = 1; sTradeData->state++; } break; - case 34: + case TS_STATE_CROSSING_BLEND_WHITE_1: BlendPalettes(0x1, 16, RGB_WHITEALPHA); sTradeData->state++; break; - case 35: + case TS_STATE_CROSSING_BLEND_WHITE_2: BlendPalettes(0x1, 0, RGB_WHITEALPHA); sTradeData->state++; break; - case 36: + case TS_STATE_CROSSING_BLEND_WHITE_3: BlendPalettes(0x1, 16, RGB_WHITEALPHA); sTradeData->state++; break; - case 37: + case TS_STATE_CROSSING_CREATE_MON_PICS: if (!IsMonSpriteNotFlipped(sTradeData->monSpecies[TRADE_PLAYER])) { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].affineAnims = gSpriteAffineAnimTable_8338ECC; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].oam.affineMode = ST_OAM_AFFINE_DOUBLE; - CalcCenterToCornerVec(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], SPRITE_SHAPE(64x64), SPRITE_SIZE(64x64), ST_OAM_AFFINE_DOUBLE); - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], 0); + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].affineAnims = sAffineAnims_CrossingMonPics; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].oam.affineMode = ST_OAM_AFFINE_DOUBLE; + CalcCenterToCornerVec(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], SPRITE_SHAPE(64x64), SPRITE_SIZE(64x64), ST_OAM_AFFINE_DOUBLE); + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } else { - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], 0); + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]], 0); - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos1.x = 60; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.x = 180; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos1.y = 192; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.y = -32; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].invisible = FALSE; + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.x = 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.y = 192; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = -32; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = FALSE; sTradeData->state++; break; - case 38: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y -= 3; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT - && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) + case TS_STATE_CROSSING_MON_PICS_MOVE: + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y -= 3; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y += 3; + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT + && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -222) + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -222) { - gSprites[sTradeData->unk_90].data[1] = 0; - gSprites[sTradeData->unk_91].data[1] = 0; + gSprites[sTradeData->connectionSpriteId1].data[1] = 0; + gSprites[sTradeData->connectionSpriteId2].data[1] = 0; sTradeData->state++; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = TRUE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].invisible = TRUE; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = TRUE; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = TRUE; BlendPalettes(0x1, 0, RGB_WHITEALPHA); } break; - case 39: - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; - if (gSprites[sTradeData->unk_90].pos2.y <= -222) + case TS_STATE_CROSSING_LINK_MONS_EXIT: + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -222) { BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); sTradeData->state++; - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); } break; - case 40: + case TS_STATE_CREATE_LINK_MON_ARRIVING: if (!gPaletteFade.active) { sTradeData->state++; SetTradeSequenceBgGpuRegs(1); sTradeData->bg1vofs = 166; - sTradeData->unk_90 = CreateSprite(&gUnknown_08338D88, 128, -20, 3); - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 128, -20, 0); - StartSpriteAnim(&gSprites[sTradeData->unk_91], 1); + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonGlow, 128, -20, 3); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 128, -20, 0); + StartSpriteAnim(&gSprites[sTradeData->connectionSpriteId2], ANIM_LINKMON_SMALL); } break; - case 41: + case TS_STATE_FADE_OUT_TO_GBA_RECV: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 42: + case TS_STATE_WAIT_FADE_OUT_TO_GBA_RECV: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); if (!gPaletteFade.active) - { sTradeData->state++; - } break; - case 43: - gSprites[sTradeData->unk_90].pos2.y += 3; - gSprites[sTradeData->unk_91].pos2.y += 3; - if (gSprites[sTradeData->unk_90].pos2.y + gSprites[sTradeData->unk_90].pos1.y == 64) + case TS_STATE_LINK_MON_TRAVEL_IN: + gSprites[sTradeData->connectionSpriteId1].pos2.y += 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y + gSprites[sTradeData->connectionSpriteId1].pos1.y == 64) { sTradeData->state++; } break; - case 44: + case TS_STATE_PAN_TO_GBA: if ((sTradeData->bg1vofs += 2) > 316) { sTradeData->bg1vofs = 316; sTradeData->state++; } break; - case 45: - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + case TS_STATE_DESTROY_LINK_MON: + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); sTradeData->state++; sTradeData->timer = 0; break; - case 46: + case TS_STATE_LINK_MON_ARRIVED_DELAY: if (++sTradeData->timer == 10) - { sTradeData->state++; - } break; - case 47: + case TS_STATE_MOVE_GBA_TO_CENTER: if (++sTradeData->bg1vofs > 348) { sTradeData->bg1vofs = 348; @@ -3582,41 +3694,41 @@ static bool8 AnimateTradeSequenceCable(void) } if (sTradeData->bg1vofs == 328 && sTradeData->isCableTrade) { - sTradeData->unk_92 = CreateSprite(&gSpriteTemplate_8338DFC, 128, 65, 0); - gSprites[sTradeData->unk_92].callback = sub_807AAE0; + sTradeData->cableEndSpriteId = CreateSprite(&sSpriteTemplate_CableEnd, 128, 65, 0); + gSprites[sTradeData->cableEndSpriteId].callback = SpriteCB_CableEndReceiving; } break; - case 48: - sTradeData->unk_91 = CreateSprite(&gSpriteTemplate_8338E74, 120, 80, 0); - sTradeData->state = 50; + case TS_STATE_GBA_FLASH_RECV: + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_GbaScreenFlash_Long, 120, 80, 0); + sTradeData->state = TS_STATE_GBA_STOP_FLASH_RECV; break; - case 50: - if (gSprites[sTradeData->unk_91].animEnded) + case TS_STATE_GBA_STOP_FLASH_RECV: + if (gSprites[sTradeData->connectionSpriteId2].animEnded) { - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetTradeSequenceBgGpuRegs(6); sTradeData->state++; PlaySE(SE_M_SAND_ATTACK); } break; - case 51: - if (sTradeData->unk_EA < 0x400) + case TS_STATE_GBA_ZOOM_IN: + if (sTradeData->gbaScale < 0x400) { - sTradeData->unk_EA += 0x34; + sTradeData->gbaScale += 0x34; } else { - sTradeData->unk_EA = 0x400; + sTradeData->gbaScale = 0x400; sTradeData->state++; } - sTradeData->sXY = 0x8000 / sTradeData->unk_EA; + sTradeData->sXY = 0x8000 / sTradeData->gbaScale; break; - case 52: + case TS_STATE_FADE_OUT_TO_NEW_MON: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sTradeData->state = 60; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_NEW_MON; break; - case 60: + case TS_STATE_WAIT_FADE_OUT_TO_NEW_MON: if (!gPaletteFade.active) { SetTradeSequenceBgGpuRegs(5); @@ -3625,54 +3737,52 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->state++; } break; - case 61: + case TS_STATE_FADE_IN_TO_NEW_MON: gPaletteFade.bufferTransferDisabled = FALSE; BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 62: + case TS_STATE_WAIT_FADE_IN_TO_NEW_MON: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG2_ON | DISPCNT_OBJ_ON); if (!gPaletteFade.active) - { sTradeData->state++; - } break; - case 63: - sTradeData->unk_D3 = CreateSprite(&gSpriteTemplate_8338D28, 120, -8, 0); - gSprites[sTradeData->unk_D3].data[3] = 74; - gSprites[sTradeData->unk_D3].callback = sub_807E6AC; - StartSpriteAnim(&gSprites[sTradeData->unk_D3], 1); - StartSpriteAffineAnim(&gSprites[sTradeData->unk_D3], 2); - BlendPalettes(1 << (16 + gSprites[sTradeData->unk_D3].oam.paletteNum), 16, RGB_WHITEALPHA); + case TS_STATE_POKEBALL_ARRIVE: + sTradeData->bouncingPokeballSpriteId = CreateSprite(&sSpriteTemplate_Pokeball, 120, -8, 0); + gSprites[sTradeData->bouncingPokeballSpriteId].data[3] = 74; + gSprites[sTradeData->bouncingPokeballSpriteId].callback = SpriteCB_BouncingPokeballArrive; + StartSpriteAnim(&gSprites[sTradeData->bouncingPokeballSpriteId], 1); + StartSpriteAffineAnim(&gSprites[sTradeData->bouncingPokeballSpriteId], 2); + BlendPalettes(1 << (16 + gSprites[sTradeData->bouncingPokeballSpriteId].oam.paletteNum), 16, RGB_WHITEALPHA); sTradeData->state++; sTradeData->timer = 0; break; - case 64: - BeginNormalPaletteFade(1 << (16 + gSprites[sTradeData->unk_D3].oam.paletteNum), 1, 16, 0, RGB_WHITEALPHA); + case TS_STATE_FADE_POKEBALL_TO_NORMAL: + BeginNormalPaletteFade(1 << (16 + gSprites[sTradeData->bouncingPokeballSpriteId].oam.paletteNum), 1, 16, 0, RGB_WHITEALPHA); sTradeData->state++; break; - case 65: - if (gSprites[sTradeData->unk_D3].callback == SpriteCallbackDummy) + case TS_STATE_POKEBALL_ARRIVE_WAIT: + if (gSprites[sTradeData->bouncingPokeballSpriteId].callback == SpriteCallbackDummy) { HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], gMonSpritesGfxPtr->sprites.ptr[3], sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); sTradeData->state++; } break; - case 66: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.x = 120; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.x = 0; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y = 0; - StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]], 0); - CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[TRADE_PARTNER], gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); - FreeSpriteOamMatrix(&gSprites[sTradeData->unk_D3]); - DestroySprite(&gSprites[sTradeData->unk_D3]); + case TS_STATE_SHOW_NEW_MON: + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 120; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.x = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y = 0; + StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); + CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); + FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); + DestroySprite(&gSprites[sTradeData->bouncingPokeballSpriteId]); sTradeData->state++; break; - case 67: + case TS_STATE_NEW_MON_MSG: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | @@ -3680,28 +3790,24 @@ static bool8 AnimateTradeSequenceCable(void) DISPCNT_OBJ_ON); StringExpandPlaceholders(gStringVar4, gText_XSentOverY); DrawTextOnTradeWindow(0, gStringVar4, 0); - sTradeData->state = 167; + sTradeData->state = TS_STATE_DELAY_FOR_MON_ANIM; sTradeData->timer = 0; break; - // 167 and 267 are extra cases added in for animations - case 167: + case TS_STATE_DELAY_FOR_MON_ANIM: if (++sTradeData->timer > 60) { - sTradeData->state = 267; + sTradeData->state = TS_STATE_WAIT_FOR_MON_CRY; sTradeData->timer = 0; } break; - case 267: + case TS_STATE_WAIT_FOR_MON_CRY: if (IsCryFinished()) - { - sTradeData->state = 68; - } + sTradeData->state = TS_STATE_TAKE_CARE_OF_MON; break; - case 68: + case TS_STATE_TAKE_CARE_OF_MON: if (++sTradeData->timer == 10) - { PlayFanfare(MUS_EVOLVED); - } + if (sTradeData->timer == 250) { sTradeData->state++; @@ -3710,17 +3816,15 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->timer = 0; } break; - case 69: + case TS_STATE_AFTER_NEW_MON_DELAY: if (++sTradeData->timer == 60) - { sTradeData->state++; - } break; - case 70: + case TS_STATE_CHECK_RIBBONS: CheckPartnersMonForRibbons(); sTradeData->state++; break; - case 71: + case TS_STATE_END_LINK_TRADE: if (sTradeData->isLinkTrade) { return TRUE; @@ -3730,21 +3834,21 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->state++; } break; - case 72: // Only if in-game trade + case TS_STATE_TRY_EVOLUTION: // Only if in-game trade, link trades use CB2_TryLinkTradeEvolution TradeMons(gSpecialVar_0x8005, 0); gCB2_AfterEvolution = CB2_UpdateInGameTrade; evoTarget = GetEvolutionTargetSpecies(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], EVO_MODE_TRADE, ITEM_NONE); if (evoTarget != SPECIES_NONE) { - TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->pokePicSpriteIdxs[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); + TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->monSpriteIds[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); } sTradeData->state++; break; - case 73: + case TS_STATE_FADE_OUT_END: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); sTradeData->state++; break; - case 74: + case TS_STATE_WAIT_FADE_OUT_END: if (!gPaletteFade.active) { PlayNewMapMusic(sTradeData->cachedMapMusic); @@ -3771,65 +3875,63 @@ static bool8 AnimateTradeSequenceWireless(void) switch (sTradeData->state) { - case 0: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x = -180; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; + case TS_STATE_START: + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = -180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; sTradeData->state++; sTradeData->cachedMapMusic = GetCurrentMapMusic(); PlayNewMapMusic(MUS_EVOLUTION); break; - case 1: + case TS_STATE_MON_SLIDE_IN: if (sTradeData->bg2hofs > 0) { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x += 3; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x += 3; sTradeData->bg2hofs -= 3; } else { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.x = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = 0; sTradeData->bg2hofs = 0; - sTradeData->state = 10; + sTradeData->state = TS_STATE_SEND_MSG; } break; - case 10: + case TS_STATE_SEND_MSG: StringExpandPlaceholders(gStringVar4, gText_XWillBeSentToY); DrawTextOnTradeWindow(0, gStringVar4, 0); if (sTradeData->monSpecies[TRADE_PLAYER] != SPECIES_EGG) - { PlayCry1(sTradeData->monSpecies[TRADE_PLAYER], 0); - } - sTradeData->state = 11; + sTradeData->state = TS_STATE_BYE_BYE; sTradeData->timer = 0; break; - case 11: + case TS_STATE_BYE_BYE: if (++sTradeData->timer == 80) { - sTradeData->pokeballSpriteId = CreateTradePokeballSprite(sTradeData->pokePicSpriteIdxs[0], gSprites[sTradeData->pokePicSpriteIdxs[0]].oam.paletteNum, 120, 32, 2, 1, 0x14, 0xfffff); + sTradeData->releasePokeballSpriteId = CreateTradePokeballSprite(sTradeData->monSpriteIds[0], gSprites[sTradeData->monSpriteIds[0]].oam.paletteNum, 120, 32, 2, 1, 0x14, 0xfffff); sTradeData->state++; StringExpandPlaceholders(gStringVar4, gText_ByeByeVar1); DrawTextOnTradeWindow(0, gStringVar4, 0); } break; - case 12: - if (gSprites[sTradeData->pokeballSpriteId].callback == SpriteCallbackDummy) + case TS_STATE_POKEBALL_DEPART: + if (gSprites[sTradeData->releasePokeballSpriteId].callback == SpriteCallbackDummy) { - sTradeData->unk_D3 = CreateSprite(&gSpriteTemplate_8338D28, 120, 32, 0); - gSprites[sTradeData->unk_D3].callback = sub_807E5D8; - DestroySprite(&gSprites[sTradeData->pokeballSpriteId]); + sTradeData->bouncingPokeballSpriteId = CreateSprite(&sSpriteTemplate_Pokeball, 120, 32, 0); + gSprites[sTradeData->bouncingPokeballSpriteId].callback = SpriteCB_BouncingPokeballDepart; + DestroySprite(&gSprites[sTradeData->releasePokeballSpriteId]); sTradeData->state++; } break; - case 13: + case TS_STATE_POKEBALL_DEPART_WAIT: // The game waits here for the sprite to finish its animation sequence. break; - case 14: + case TS_STATE_FADE_OUT_TO_GBA_SEND: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sTradeData->state = 20; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_GBA_SEND; break; - case 20: + case TS_STATE_WAIT_FADE_OUT_TO_GBA_SEND: if (!gPaletteFade.active) { SetTradeSequenceBgGpuRegs(4); @@ -3838,190 +3940,185 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->state++; } break; - case 21: + case TS_STATE_FADE_IN_TO_GBA_SEND: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 22: + case TS_STATE_WAIT_FADE_IN_TO_GBA_SEND: if (!gPaletteFade.active) - { - sTradeData->state = 23; - } + sTradeData->state = TS_STATE_GBA_ZOOM_OUT; break; - case 23: - if (sTradeData->unk_EA > 0x100) + case TS_STATE_GBA_ZOOM_OUT: + if (sTradeData->gbaScale > 0x100) { - sTradeData->unk_EA -= 0x34; + sTradeData->gbaScale -= 0x34; } else { SetTradeSequenceBgGpuRegs(1); - sTradeData->unk_EA = 0x80; - sTradeData->state = 124; + sTradeData->gbaScale = 0x80; + sTradeData->state = TS_STATE_GBA_FLASH_SEND_WIRELESS; sTradeData->timer = 0; } - sTradeData->sXY = 0x8000 / sTradeData->unk_EA; + sTradeData->sXY = 0x8000 / sTradeData->gbaScale; break; - case 124: + case TS_STATE_GBA_FLASH_SEND_WIRELESS: if (++sTradeData->timer > 20) { SetTradeSequenceBgGpuRegs(3); - sTradeData->unk_91 = CreateSprite(&gSpriteTemplate_8338E8C, 120, 80, 0); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_GbaScreenFlash_Short, 120, 80, 0); sTradeData->state++; } break; - case 125: - if (gSprites[sTradeData->unk_91].animEnded) + case TS_STATE_GBA_STOP_FLASH_SEND_WIRELESS: + if (gSprites[sTradeData->connectionSpriteId2].animEnded) { - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_TGT1_OBJ | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG2); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 4)); + + // Start wireless signal effect CreateTask(Task_AnimateWirelessSignal, 5); sTradeData->state++; } break; - case 126: + case TS_STATE_WAIT_WIRELESS_SIGNAL_SEND: if (!FuncIsActiveTask(Task_AnimateWirelessSignal)) - { - sTradeData->state = 26; - } + sTradeData->state = TS_STATE_PAN_AWAY_GBA; break; - case 26: + case TS_STATE_PAN_AWAY_GBA: if (--sTradeData->bg1vofs == 316) - { sTradeData->state++; - } break; - case 27: - sTradeData->unk_90 = CreateSprite(&gUnknown_08338D88, 120, 80, 3); - gSprites[sTradeData->unk_90].callback = sub_807AA4C; - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 120, 80, 0); - StartSpriteAnim(&gSprites[sTradeData->unk_91], 1); + case TS_STATE_CREATE_LINK_MON_LEAVING: + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonGlow, 120, 80, 3); + gSprites[sTradeData->connectionSpriteId1].callback = SpriteCB_LinkMonGlowWireless; + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 120, 80, 0); + StartSpriteAnim(&gSprites[sTradeData->connectionSpriteId2], ANIM_LINKMON_SMALL); sTradeData->state++; break; - case 28: + case TS_STATE_LINK_MON_TRAVEL_OUT: if ((sTradeData->bg1vofs -= 3) == 166) - { - sTradeData->state = 200; - } + sTradeData->state = TS_STATE_LINK_MON_TRAVEL_OFFSCREEN; + SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); break; - case 200: - gSprites[sTradeData->unk_90].pos1.y -= 2; - gSprites[sTradeData->unk_91].pos1.y -= 2; - if (gSprites[sTradeData->unk_90].pos1.y < -8) + case TS_STATE_LINK_MON_TRAVEL_OFFSCREEN: + gSprites[sTradeData->connectionSpriteId1].pos1.y -= 2; + gSprites[sTradeData->connectionSpriteId2].pos1.y -= 2; + if (gSprites[sTradeData->connectionSpriteId1].pos1.y < -8) { - sTradeData->state = 29; + sTradeData->state = TS_STATE_FADE_OUT_TO_CROSSING; } break; - case 29: + case TS_STATE_FADE_OUT_TO_CROSSING: BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); - sTradeData->state = 30; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_CROSSING; break; - case 30: + case TS_STATE_WAIT_FADE_OUT_TO_CROSSING: if (!gPaletteFade.active) { - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetTradeSequenceBgGpuRegs(2); sTradeData->state++; } break; - case 31: + case TS_STATE_FADE_IN_TO_CROSSING: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); - sTradeData->unk_90 = CreateSprite(&sGlowBallSpriteTemplate, 111, 170, 0); - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 129, -10, 0); + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 111, 170, 0); + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 129, -10, 0); sTradeData->state++; break; - case 32: + case TS_STATE_WAIT_FADE_IN_TO_CROSSING: if (!gPaletteFade.active) { PlaySE(SE_WARP_OUT); sTradeData->state++; } - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; break; - case 33: - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; - if (gSprites[sTradeData->unk_90].pos2.y <= -90) + case TS_STATE_CROSSING_LINK_MONS_ENTER: + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -90) { - gSprites[sTradeData->unk_90].data[1] = 1; - gSprites[sTradeData->unk_91].data[1] = 1; + gSprites[sTradeData->connectionSpriteId1].data[1] = 1; + gSprites[sTradeData->connectionSpriteId2].data[1] = 1; sTradeData->state++; - CreateTask(c3_0805465C, 5); + CreateTask(Task_NarrowWindowForCrossing_Wireless, 5); } break; - case 34: + case TS_STATE_CROSSING_BLEND_WHITE_1: BlendPalettes(0x8, 16, RGB_WHITEALPHA); sTradeData->state++; break; - case 35: + case TS_STATE_CROSSING_BLEND_WHITE_2: BlendPalettes(0x8, 16, RGB_WHITEALPHA); sTradeData->state++; break; - case 36: + case TS_STATE_CROSSING_BLEND_WHITE_3: BlendPalettes(0x8, 16, RGB_WHITEALPHA); sTradeData->state++; break; - case 37: + case TS_STATE_CROSSING_CREATE_MON_PICS: if (!IsMonSpriteNotFlipped(sTradeData->monSpecies[TRADE_PLAYER])) { - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].affineAnims = gSpriteAffineAnimTable_8338ECC; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].oam.affineMode = ST_OAM_AFFINE_DOUBLE; - CalcCenterToCornerVec(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], SPRITE_SHAPE(64x64), SPRITE_SIZE(64x64), ST_OAM_AFFINE_DOUBLE); - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], 0); + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].affineAnims = sAffineAnims_CrossingMonPics; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].oam.affineMode = ST_OAM_AFFINE_DOUBLE; + CalcCenterToCornerVec(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], SPRITE_SHAPE(64x64), SPRITE_SIZE(64x64), ST_OAM_AFFINE_DOUBLE); + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } else { - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]], 0); + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } - StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]], 0); - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos1.x = 40; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.x = 200; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos1.y = 192; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.y = -32; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].invisible = FALSE; + StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.x = 40; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 200; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.y = 192; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = -32; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = FALSE; sTradeData->state++; break; - case 38: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y -= 3; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT - && gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) + case TS_STATE_CROSSING_MON_PICS_MOVE: + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y -= 3; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y += 3; + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT + && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } - if (gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].pos2.y < -222) + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -222) { - gSprites[sTradeData->unk_90].data[1] = 0; - gSprites[sTradeData->unk_91].data[1] = 0; + gSprites[sTradeData->connectionSpriteId1].data[1] = 0; + gSprites[sTradeData->connectionSpriteId2].data[1] = 0; sTradeData->state++; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]].invisible = TRUE; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].invisible = TRUE; - CreateTask(sub_807F39C, 5); + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = TRUE; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = TRUE; + CreateTask(Task_NarrowWindowForCrossing_Cable, 5); } break; - case 39: - gSprites[sTradeData->unk_90].pos2.y -= 3; - gSprites[sTradeData->unk_91].pos2.y += 3; - if (gSprites[sTradeData->unk_90].pos2.y <= -222) + case TS_STATE_CROSSING_LINK_MONS_EXIT: + gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -222) { BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); sTradeData->state++; - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); } break; - case 40: + case TS_STATE_CREATE_LINK_MON_ARRIVING: if (!gPaletteFade.active) { sTradeData->state++; @@ -4029,36 +4126,34 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->bg1vofs = 166; SetTradeSequenceBgGpuRegs(3); sTradeData->bg2vofs = 412; - sTradeData->unk_90 = CreateSprite(&gUnknown_08338D88, 120, -20, 3); - gSprites[sTradeData->unk_90].callback = sub_807AA4C; - sTradeData->unk_91 = CreateSprite(&sGlowBallSpriteTemplate, 120, -20, 0); - StartSpriteAnim(&gSprites[sTradeData->unk_91], 1); + sTradeData->connectionSpriteId1 = CreateSprite(&sSpriteTemplate_LinkMonGlow, 120, -20, 3); + gSprites[sTradeData->connectionSpriteId1].callback = SpriteCB_LinkMonGlowWireless; + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_LinkMonShadow, 120, -20, 0); + StartSpriteAnim(&gSprites[sTradeData->connectionSpriteId2], ANIM_LINKMON_SMALL); } break; - case 41: + case TS_STATE_FADE_OUT_TO_GBA_RECV: BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 42: + case TS_STATE_WAIT_FADE_OUT_TO_GBA_RECV: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); if (!gPaletteFade.active) - { sTradeData->state++; - } break; - case 43: - gSprites[sTradeData->unk_90].pos2.y += 4; - gSprites[sTradeData->unk_91].pos2.y += 4; - if (gSprites[sTradeData->unk_90].pos2.y + gSprites[sTradeData->unk_90].pos1.y == 64) + case TS_STATE_LINK_MON_TRAVEL_IN: + gSprites[sTradeData->connectionSpriteId1].pos2.y += 4; + gSprites[sTradeData->connectionSpriteId2].pos2.y += 4; + if (gSprites[sTradeData->connectionSpriteId1].pos2.y + gSprites[sTradeData->connectionSpriteId1].pos1.y == 64) { - sTradeData->state = 144; + sTradeData->state = TS_STATE_PAN_TO_GBA_WIRELESS; sTradeData->timer = 0; } break; - case 144: + case TS_STATE_PAN_TO_GBA_WIRELESS: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | @@ -4077,62 +4172,60 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->state++; } break; - case 145: - DestroySprite(&gSprites[sTradeData->unk_90]); - DestroySprite(&gSprites[sTradeData->unk_91]); + case TS_STATE_DESTROY_LINK_MON_WIRELESS: + DestroySprite(&gSprites[sTradeData->connectionSpriteId1]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); sTradeData->state++; sTradeData->timer = 0; break; - case 146: + case TS_STATE_WAIT_WIRELESS_SIGNAL_RECV: if (!FuncIsActiveTask(Task_AnimateWirelessSignal)) { - sTradeData->state = 46; + sTradeData->state = TS_STATE_LINK_MON_ARRIVED_DELAY; sTradeData->timer = 0; } break; - case 46: + case TS_STATE_LINK_MON_ARRIVED_DELAY: if (++sTradeData->timer == 10) - { sTradeData->state++; - } break; - case 47: + case TS_STATE_MOVE_GBA_TO_CENTER: if (++sTradeData->bg1vofs > 348) { sTradeData->bg1vofs = 348; sTradeData->state++; } break; - case 48: - sTradeData->unk_91 = CreateSprite(&gSpriteTemplate_8338E74, 120, 80, 0); - sTradeData->state = 50; + case TS_STATE_GBA_FLASH_RECV: + sTradeData->connectionSpriteId2 = CreateSprite(&sSpriteTemplate_GbaScreenFlash_Long, 120, 80, 0); + sTradeData->state = TS_STATE_GBA_STOP_FLASH_RECV; break; - case 50: - if (gSprites[sTradeData->unk_91].animEnded) + case TS_STATE_GBA_STOP_FLASH_RECV: + if (gSprites[sTradeData->connectionSpriteId2].animEnded) { - DestroySprite(&gSprites[sTradeData->unk_91]); + DestroySprite(&gSprites[sTradeData->connectionSpriteId2]); SetTradeSequenceBgGpuRegs(6); sTradeData->state++; PlaySE(SE_M_SAND_ATTACK); } break; - case 51: - if (sTradeData->unk_EA < 0x400) + case TS_STATE_GBA_ZOOM_IN: + if (sTradeData->gbaScale < 0x400) { - sTradeData->unk_EA += 0x34; + sTradeData->gbaScale += 0x34; } else { - sTradeData->unk_EA = 0x400; + sTradeData->gbaScale = 0x400; sTradeData->state++; } - sTradeData->sXY = 0x8000 / sTradeData->unk_EA; + sTradeData->sXY = 0x8000 / sTradeData->gbaScale; break; - case 52: + case TS_STATE_FADE_OUT_TO_NEW_MON: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - sTradeData->state = 60; + sTradeData->state = TS_STATE_WAIT_FADE_OUT_TO_NEW_MON; break; - case 60: + case TS_STATE_WAIT_FADE_OUT_TO_NEW_MON: if (!gPaletteFade.active) { SetTradeSequenceBgGpuRegs(5); @@ -4141,54 +4234,55 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->state++; } break; - case 61: + case TS_STATE_FADE_IN_TO_NEW_MON: gPaletteFade.bufferTransferDisabled = FALSE; BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); sTradeData->state++; break; - case 62: + case TS_STATE_WAIT_FADE_IN_TO_NEW_MON: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG2_ON | DISPCNT_OBJ_ON); if (!gPaletteFade.active) - { sTradeData->state++; - } break; - case 63: - sTradeData->unk_D3 = CreateSprite(&gSpriteTemplate_8338D28, 120, -8, 0); - gSprites[sTradeData->unk_D3].data[3] = 74; - gSprites[sTradeData->unk_D3].callback = sub_807E6AC; - StartSpriteAnim(&gSprites[sTradeData->unk_D3], 1); - StartSpriteAffineAnim(&gSprites[sTradeData->unk_D3], 2); - BlendPalettes(1 << (16 + gSprites[sTradeData->unk_D3].oam.paletteNum), 16, RGB_WHITEALPHA); + case TS_STATE_POKEBALL_ARRIVE: + sTradeData->bouncingPokeballSpriteId = CreateSprite(&sSpriteTemplate_Pokeball, 120, -8, 0); + gSprites[sTradeData->bouncingPokeballSpriteId].data[3] = 74; + gSprites[sTradeData->bouncingPokeballSpriteId].callback = SpriteCB_BouncingPokeballArrive; + StartSpriteAnim(&gSprites[sTradeData->bouncingPokeballSpriteId], 1); + StartSpriteAffineAnim(&gSprites[sTradeData->bouncingPokeballSpriteId], 2); + BlendPalettes(1 << (16 + gSprites[sTradeData->bouncingPokeballSpriteId].oam.paletteNum), 16, RGB_WHITEALPHA); sTradeData->state++; sTradeData->timer = 0; break; - case 64: - BeginNormalPaletteFade(1 << (16 + gSprites[sTradeData->unk_D3].oam.paletteNum), 1, 16, 0, RGB_WHITEALPHA); + case TS_STATE_FADE_POKEBALL_TO_NORMAL: + BeginNormalPaletteFade(1 << (16 + gSprites[sTradeData->bouncingPokeballSpriteId].oam.paletteNum), 1, 16, 0, RGB_WHITEALPHA); sTradeData->state++; break; - case 65: - if (gSprites[sTradeData->unk_D3].callback == SpriteCallbackDummy) + case TS_STATE_POKEBALL_ARRIVE_WAIT: + if (gSprites[sTradeData->bouncingPokeballSpriteId].callback == SpriteCallbackDummy) { - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], gMonSpritesGfxPtr->sprites.ptr[3], sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], + gMonSpritesGfxPtr->sprites.ptr[3], + sTradeData->monSpecies[TRADE_PARTNER], + sTradeData->monPersonalities[TRADE_PARTNER]); sTradeData->state++; } break; - case 66: - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.x = 120; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.x = 0; - gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].pos2.y = 0; - StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]], 0); - CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[TRADE_PARTNER], gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); - FreeSpriteOamMatrix(&gSprites[sTradeData->unk_D3]); - DestroySprite(&gSprites[sTradeData->unk_D3]); + case TS_STATE_SHOW_NEW_MON: + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 120; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.x = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y = 0; + StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); + CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); + FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); + DestroySprite(&gSprites[sTradeData->bouncingPokeballSpriteId]); sTradeData->state++; break; - case 67: + case TS_STATE_NEW_MON_MSG: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | @@ -4196,28 +4290,24 @@ static bool8 AnimateTradeSequenceWireless(void) DISPCNT_OBJ_ON); StringExpandPlaceholders(gStringVar4, gText_XSentOverY); DrawTextOnTradeWindow(0, gStringVar4, 0); - sTradeData->state = 167; + sTradeData->state = TS_STATE_DELAY_FOR_MON_ANIM; sTradeData->timer = 0; break; - // 167 and 267 are extra cases added in for animations - case 167: + case TS_STATE_DELAY_FOR_MON_ANIM: if (++sTradeData->timer > 60) { - sTradeData->state = 267; + sTradeData->state = TS_STATE_WAIT_FOR_MON_CRY; sTradeData->timer = 0; } break; - case 267: + case TS_STATE_WAIT_FOR_MON_CRY: if (IsCryFinished()) - { - sTradeData->state = 68; - } + sTradeData->state = TS_STATE_TAKE_CARE_OF_MON; break; - case 68: + case TS_STATE_TAKE_CARE_OF_MON: if (++sTradeData->timer == 10) - { PlayFanfare(MUS_EVOLVED); - } + if (sTradeData->timer == 250) { sTradeData->state++; @@ -4226,17 +4316,15 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->timer = 0; } break; - case 69: + case TS_STATE_AFTER_NEW_MON_DELAY: if (++sTradeData->timer == 60) - { sTradeData->state++; - } break; - case 70: + case TS_STATE_CHECK_RIBBONS: CheckPartnersMonForRibbons(); sTradeData->state++; break; - case 71: + case TS_STATE_END_LINK_TRADE: if (sTradeData->isLinkTrade) { return TRUE; @@ -4246,21 +4334,21 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->state++; } break; - case 72: // Only if in-game trade + case TS_STATE_TRY_EVOLUTION: // Only if in-game trade, link trades use CB2_TryLinkTradeEvolution TradeMons(gSpecialVar_0x8005, 0); gCB2_AfterEvolution = CB2_UpdateInGameTrade; evoTarget = GetEvolutionTargetSpecies(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], EVO_MODE_TRADE, ITEM_NONE); if (evoTarget != SPECIES_NONE) { - TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->pokePicSpriteIdxs[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); + TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->monSpriteIds[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); } sTradeData->state++; break; - case 73: + case TS_STATE_FADE_OUT_END: BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); sTradeData->state++; break; - case 74: + case TS_STATE_WAIT_FADE_OUT_END: if (!gPaletteFade.active) { PlayNewMapMusic(sTradeData->cachedMapMusic); @@ -4281,7 +4369,9 @@ static bool8 AnimateTradeSequenceWireless(void) return FALSE; } -static void CB2_TryTradeEvolution(void) +// Try to evolve a Pokémon received in a link trade +// In-game trades resolve evolution during the trade sequence, in TS_STATE_TRY_EVOLUTION +static void CB2_TryLinkTradeEvolution(void) { u16 evoTarget; switch (gMain.state) @@ -4294,7 +4384,7 @@ static void CB2_TryTradeEvolution(void) gCB2_AfterEvolution = CB2_SaveAndEndTrade; evoTarget = GetEvolutionTargetSpecies(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], EVO_MODE_TRADE, ITEM_NONE); if (evoTarget != SPECIES_NONE) - TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->pokePicSpriteIdxs[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); + TradeEvolutionScene(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], evoTarget, sTradeData->monSpriteIds[TRADE_PARTNER], gSelectedTradeMonPositions[TRADE_PLAYER]); else if (IsWirelessTrade()) SetMainCallback2(CB2_SaveAndEndWirelessTrade); else @@ -4317,7 +4407,7 @@ static void UpdateTradeFinishFlags(void) if (blockReceivedStatus & 0x01) { if (gBlockRecvBuffer[0][0] == LINKCMD_CONFIRM_FINISH_TRADE) - SetMainCallback2(CB2_TryTradeEvolution); + SetMainCallback2(CB2_TryLinkTradeEvolution); if (gBlockRecvBuffer[0][0] == LINKCMD_READY_FINISH_TRADE) sTradeData->playerLinkFlagFinishTrade = READY_FINISH_TRADE; @@ -4333,7 +4423,7 @@ static void UpdateTradeFinishFlags(void) } } -static void sub_807E55C(struct Sprite *sprite) +static void SpriteCB_BouncingPokeball(struct Sprite *sprite) { sprite->pos1.y += sprite->data[0] / 10; sprite->data[5] += sprite->data[1]; @@ -4354,7 +4444,7 @@ static void sub_807E55C(struct Sprite *sprite) } } -static void sub_807E5D8(struct Sprite *sprite) +static void SpriteCB_BouncingPokeballDepart(struct Sprite *sprite) { sprite->pos2.y += sTradeBallVerticalVelocityTable[sprite->data[0]]; if (sprite->data[0] == 22) @@ -4362,13 +4452,13 @@ static void sub_807E5D8(struct Sprite *sprite) if (++ sprite->data[0] == 44) { PlaySE(SE_M_MEGA_KICK); - sprite->callback = sub_807E64C; + sprite->callback = SpriteCB_BouncingPokeballDepartEnd; sprite->data[0] = 0; BeginNormalPaletteFade(1 << (16 + sprite->oam.paletteNum), -1, 0, 16, RGB_WHITEALPHA); } } -static void sub_807E64C(struct Sprite *sprite) +static void SpriteCB_BouncingPokeballDepartEnd(struct Sprite *sprite) { if (sprite->data[1] == 20) StartSpriteAffineAnim(sprite, 1); @@ -4378,12 +4468,12 @@ static void sub_807E64C(struct Sprite *sprite) if (++ sprite->data[0] == 23) { DestroySprite(sprite); - sTradeData->state = 14; // Resume the master trade animation + sTradeData->state = TS_STATE_FADE_OUT_TO_GBA_SEND; // Resume the master trade animation } } } -static void sub_807E6AC(struct Sprite *sprite) +static void SpriteCB_BouncingPokeballArrive(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4508,8 +4598,8 @@ static void CB2_UpdateLinkTrade(void) { if (AnimateTradeSequence() == TRUE) { - DestroySprite(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PLAYER]]); - FreeSpriteOamMatrix(&gSprites[sTradeData->pokePicSpriteIdxs[TRADE_PARTNER]]); + DestroySprite(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]]); + FreeSpriteOamMatrix(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]]); TradeMons(gSelectedTradeMonPositions[TRADE_PLAYER], gSelectedTradeMonPositions[TRADE_PARTNER] % PARTY_SIZE); if (!IsWirelessTrade()) { @@ -4532,7 +4622,7 @@ static void CB2_TryFinishTrade(void) u8 mpId = TradeGetMultiplayerId(); if (IsWirelessTrade()) { - SetMainCallback2(CB2_TryTradeEvolution); + SetMainCallback2(CB2_TryLinkTradeEvolution); } else { @@ -4542,7 +4632,7 @@ static void CB2_TryFinishTrade(void) && sTradeData->partnerLinkFlagFinishTrade == READY_FINISH_TRADE) { sTradeData->linkData[0] = LINKCMD_CONFIRM_FINISH_TRADE; - Trade_SendData(sTradeData); + SendBlock(bitmask_all_link_players_but_self(), sTradeData->linkData, sizeof(sTradeData->linkData)); sTradeData->playerLinkFlagFinishTrade = FINISH_TRADE; sTradeData->partnerLinkFlagFinishTrade = FINISH_TRADE; } @@ -4793,16 +4883,16 @@ static void Task_AnimateWirelessSignal(u8 taskId) if (!signalComingBack) { if (paletteIdx == 256) - LoadPalette(sTradePal_Black, 0x30, 32); + LoadPalette(sWirelessSignalNone_Pal, 0x30, 32); else - LoadPalette(&sTradePal_WirelessSignalSend[paletteIdx], 0x30, 32); + LoadPalette(&sWirelessSignalSend_Pal[paletteIdx], 0x30, 32); } else { if (paletteIdx == 256) - LoadPalette(sTradePal_Black, 0x30, 32); + LoadPalette(sWirelessSignalNone_Pal, 0x30, 32); else - LoadPalette(&sTradePal_WirelessSignalReceive[paletteIdx], 0x30, 32); + LoadPalette(&sWirelessSignalRecv_Pal[paletteIdx], 0x30, 32); } if (sWirelessSignalTiming[idx][0] == 0 && counter == 0) @@ -4827,13 +4917,13 @@ static void Task_AnimateWirelessSignal(u8 taskId) #undef counter #undef signalComingBack -static void c3_0805465C(u8 taskId) +static void Task_NarrowWindowForCrossing_Wireless(u8 taskId) { s16 *data = gTasks[taskId].data; if (data[0] == 0) { - sTradeData->wirelessWinLeft = sTradeData->wirelessWinRight = 120; + sTradeData->wirelessWinLeft = sTradeData->wirelessWinRight = DISPLAY_WIDTH / 2; sTradeData->wirelessWinTop = 0; sTradeData->wirelessWinBottom = DISPLAY_HEIGHT; SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); @@ -4851,19 +4941,17 @@ static void c3_0805465C(u8 taskId) sTradeData->wirelessWinRight += 5; if (sTradeData->wirelessWinLeft < 80) - { DestroyTask(taskId); - } } -static void sub_807F39C(u8 taskId) +static void Task_NarrowWindowForCrossing_Cable(u8 taskId) { s16 *data = gTasks[taskId].data; if (data[0] == 0) { sTradeData->wirelessWinLeft = 80; - sTradeData->wirelessWinRight = 160; + sTradeData->wirelessWinRight = DISPLAY_WIDTH - 80; SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_OBJ); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG0 | WININ_WIN0_BG1 | @@ -4873,13 +4961,13 @@ static void sub_807F39C(u8 taskId) SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE2(sTradeData->wirelessWinLeft, sTradeData->wirelessWinRight)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE2(sTradeData->wirelessWinTop, sTradeData->wirelessWinBottom)); - if (sTradeData->wirelessWinLeft != 120) + if (sTradeData->wirelessWinLeft != DISPLAY_WIDTH / 2) { data[0]++; sTradeData->wirelessWinLeft += 5; sTradeData->wirelessWinRight -= 5; - if (sTradeData->wirelessWinLeft >= 116) + if (sTradeData->wirelessWinLeft > DISPLAY_WIDTH / 2 - 5) BlendPalettes(0x8, 0, RGB_WHITEALPHA); } else From 21f05a3c0115e3effd9b6c40c14f6b19482f03fe Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Tue, 20 Apr 2021 12:58:50 -0400 Subject: [PATCH 141/762] Resolve sio32intr_clock_slave fakematching. One left! --- src/librfu_intr.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/librfu_intr.c b/src/librfu_intr.c index 1361be40ec42..19ea60b0674a 100644 --- a/src/librfu_intr.c +++ b/src/librfu_intr.c @@ -148,11 +148,7 @@ static void sio32intr_clock_slave(void) { u32 regSIODATA32; u32 r0; - #ifndef NONMATCHING - register u32 reqLen asm("r2"); - #else - u32 reqLen; - #endif + u32 reqLen; gSTWIStatus->timerActive = 0; STWI_set_timer_in_RAM(100); @@ -165,10 +161,14 @@ static void sio32intr_clock_slave(void) ((u32*)gSTWIStatus->rxPacket)[0] = regSIODATA32; gSTWIStatus->reqNext = 1; r0 = 0x99660000; - if ((regSIODATA32 >> 16) == (r0 >> 16)) + // variable reuse required + reqLen = (regSIODATA32 >> 16); + if (reqLen == (r0 >> 16)) { - gSTWIStatus->reqLength = reqLen = regSIODATA32 >> 8; - gSTWIStatus->reqActiveCommand = regSIODATA32; + // only reqLen = regSIODATA32 >> 8 is needed to match, but it looks a bit + // more consistent when both lines update the variables. Might have been a macro? + gSTWIStatus->reqLength = reqLen = (regSIODATA32 >> 8); + gSTWIStatus->reqActiveCommand = reqLen = (regSIODATA32 >> 0); if (gSTWIStatus->reqLength == 0) { if ( From a2a9f226129317c2557b908883903df47701324c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 20 Apr 2021 21:16:47 -0400 Subject: [PATCH 142/762] Clean up contest_util --- .../bg.bin} | 0 .../interface.bin} | Bin .../results_screen/text_window.pal} | 0 .../results_screen/text_window.png} | Bin .../tiles.pal} | 0 .../tiles.png} | Bin .../title.bin} | Bin .../title_beauty.bin} | 0 .../title_cool.bin} | Bin .../title_cute.bin} | 0 .../title_hyper.bin} | Bin .../title_link.bin} | Bin .../title_master.bin} | Bin .../title_normal.bin} | Bin .../title_smart.bin} | 0 .../title_super.bin} | Bin .../title_tough.bin} | 0 .../winner_banner.bin} | Bin include/graphics.h | 28 +-- src/contest_util.c | 180 ++++++++++-------- src/graphics.c | 32 ++-- 21 files changed, 131 insertions(+), 109 deletions(-) rename graphics/contest/{misc_2_tilemap_3.bin => results_screen/bg.bin} (100%) rename graphics/contest/{misc_2_tilemap_2.bin => results_screen/interface.bin} (100%) rename graphics/{unknown/unknown_58D6B0.pal => contest/results_screen/text_window.pal} (100%) rename graphics/{unknown/unknown_58D6D0.png => contest/results_screen/text_window.png} (100%) rename graphics/contest/{results_screen.pal => results_screen/tiles.pal} (100%) rename graphics/contest/{results_screen.png => results_screen/tiles.png} (100%) rename graphics/contest/{results_screen.bin => results_screen/title.bin} (100%) rename graphics/contest/{results_screen_beauty.bin => results_screen/title_beauty.bin} (100%) rename graphics/contest/{results_screen_cool.bin => results_screen/title_cool.bin} (100%) rename graphics/contest/{results_screen_cute.bin => results_screen/title_cute.bin} (100%) rename graphics/contest/{results_screen_hyper.bin => results_screen/title_hyper.bin} (100%) rename graphics/contest/{results_screen_link.bin => results_screen/title_link.bin} (100%) rename graphics/contest/{results_screen_master.bin => results_screen/title_master.bin} (100%) rename graphics/contest/{results_screen_normal.bin => results_screen/title_normal.bin} (100%) rename graphics/contest/{results_screen_smart.bin => results_screen/title_smart.bin} (100%) rename graphics/contest/{results_screen_super.bin => results_screen/title_super.bin} (100%) rename graphics/contest/{results_screen_tough.bin => results_screen/title_tough.bin} (100%) rename graphics/contest/{misc_2_tilemap_1.bin => results_screen/winner_banner.bin} (100%) diff --git a/graphics/contest/misc_2_tilemap_3.bin b/graphics/contest/results_screen/bg.bin similarity index 100% rename from graphics/contest/misc_2_tilemap_3.bin rename to graphics/contest/results_screen/bg.bin diff --git a/graphics/contest/misc_2_tilemap_2.bin b/graphics/contest/results_screen/interface.bin similarity index 100% rename from graphics/contest/misc_2_tilemap_2.bin rename to graphics/contest/results_screen/interface.bin diff --git a/graphics/unknown/unknown_58D6B0.pal b/graphics/contest/results_screen/text_window.pal similarity index 100% rename from graphics/unknown/unknown_58D6B0.pal rename to graphics/contest/results_screen/text_window.pal diff --git a/graphics/unknown/unknown_58D6D0.png b/graphics/contest/results_screen/text_window.png similarity index 100% rename from graphics/unknown/unknown_58D6D0.png rename to graphics/contest/results_screen/text_window.png diff --git a/graphics/contest/results_screen.pal b/graphics/contest/results_screen/tiles.pal similarity index 100% rename from graphics/contest/results_screen.pal rename to graphics/contest/results_screen/tiles.pal diff --git a/graphics/contest/results_screen.png b/graphics/contest/results_screen/tiles.png similarity index 100% rename from graphics/contest/results_screen.png rename to graphics/contest/results_screen/tiles.png diff --git a/graphics/contest/results_screen.bin b/graphics/contest/results_screen/title.bin similarity index 100% rename from graphics/contest/results_screen.bin rename to graphics/contest/results_screen/title.bin diff --git a/graphics/contest/results_screen_beauty.bin b/graphics/contest/results_screen/title_beauty.bin similarity index 100% rename from graphics/contest/results_screen_beauty.bin rename to graphics/contest/results_screen/title_beauty.bin diff --git a/graphics/contest/results_screen_cool.bin b/graphics/contest/results_screen/title_cool.bin similarity index 100% rename from graphics/contest/results_screen_cool.bin rename to graphics/contest/results_screen/title_cool.bin diff --git a/graphics/contest/results_screen_cute.bin b/graphics/contest/results_screen/title_cute.bin similarity index 100% rename from graphics/contest/results_screen_cute.bin rename to graphics/contest/results_screen/title_cute.bin diff --git a/graphics/contest/results_screen_hyper.bin b/graphics/contest/results_screen/title_hyper.bin similarity index 100% rename from graphics/contest/results_screen_hyper.bin rename to graphics/contest/results_screen/title_hyper.bin diff --git a/graphics/contest/results_screen_link.bin b/graphics/contest/results_screen/title_link.bin similarity index 100% rename from graphics/contest/results_screen_link.bin rename to graphics/contest/results_screen/title_link.bin diff --git a/graphics/contest/results_screen_master.bin b/graphics/contest/results_screen/title_master.bin similarity index 100% rename from graphics/contest/results_screen_master.bin rename to graphics/contest/results_screen/title_master.bin diff --git a/graphics/contest/results_screen_normal.bin b/graphics/contest/results_screen/title_normal.bin similarity index 100% rename from graphics/contest/results_screen_normal.bin rename to graphics/contest/results_screen/title_normal.bin diff --git a/graphics/contest/results_screen_smart.bin b/graphics/contest/results_screen/title_smart.bin similarity index 100% rename from graphics/contest/results_screen_smart.bin rename to graphics/contest/results_screen/title_smart.bin diff --git a/graphics/contest/results_screen_super.bin b/graphics/contest/results_screen/title_super.bin similarity index 100% rename from graphics/contest/results_screen_super.bin rename to graphics/contest/results_screen/title_super.bin diff --git a/graphics/contest/results_screen_tough.bin b/graphics/contest/results_screen/title_tough.bin similarity index 100% rename from graphics/contest/results_screen_tough.bin rename to graphics/contest/results_screen/title_tough.bin diff --git a/graphics/contest/misc_2_tilemap_1.bin b/graphics/contest/results_screen/winner_banner.bin similarity index 100% rename from graphics/contest/misc_2_tilemap_1.bin rename to graphics/contest/results_screen/winner_banner.bin diff --git a/include/graphics.h b/include/graphics.h index cea8bbab180f..6262d8862777 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4924,21 +4924,21 @@ extern const u32 gRouletteMultiplier_Gfx[]; // Contest util extern const u32 gContestResults_Gfx[]; -extern const u32 gUnknown_08C19EEC[]; -extern const u32 gUnknown_08C1A000[]; -extern const u32 gUnknown_08C1A12C[]; +extern const u32 gContestResults_WinnerBanner_Tilemap[]; +extern const u32 gContestResults_Interface_Tilemap[]; +extern const u32 gContestResults_Bg_Tilemap[]; extern const u32 gContestResults_Pal[]; -extern const u16 gLinkContestResults_Tilemap[]; -extern const u16 gNormalContestResults_Tilemap[]; -extern const u16 gSuperContestResults_Tilemap[]; -extern const u16 gHyperContestResults_Tilemap[]; -extern const u16 gMasterContestResults_Tilemap[]; -extern const u16 gCoolContestResults_Tilemap[]; -extern const u16 gBeautyContestResults_Tilemap[]; -extern const u16 gCuteContestResults_Tilemap[]; -extern const u16 gSmartContestResults_Tilemap[]; -extern const u16 gToughContestResults_Tilemap[]; -extern const u16 gContestResults_Tilemap[]; +extern const u16 gContestResultsTitle_Link_Tilemap[]; +extern const u16 gContestResultsTitle_Normal_Tilemap[]; +extern const u16 gContestResultsTitle_Super_Tilemap[]; +extern const u16 gContestResultsTitle_Hyper_Tilemap[]; +extern const u16 gContestResultsTitle_Master_Tilemap[]; +extern const u16 gContestResultsTitle_Cool_Tilemap[]; +extern const u16 gContestResultsTitle_Beauty_Tilemap[]; +extern const u16 gContestResultsTitle_Cute_Tilemap[]; +extern const u16 gContestResultsTitle_Smart_Tilemap[]; +extern const u16 gContestResultsTitle_Tough_Tilemap[]; +extern const u16 gContestResultsTitle_Tilemap[]; // Trainer Card. extern const u16 gHoennTrainerCard0Star_Pal[]; diff --git a/src/contest_util.c b/src/contest_util.c index 98854c4c6856..700e446067be 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -61,10 +61,29 @@ enum { #define GET_CONTEST_WINNER_ID(i) { for ((i) = 0; (i) < CONTESTANT_COUNT && gContestFinalStandings[(i)] != 0; (i)++); } +// Gfx/pal tags for the text window sprites on the contest results screen. +// Both types of text windows are made up of 4 individual sprites +// These tags are used by the spritesheets, and implicitly in the loop in CreateResultsTextWindowSprites +#define TAG_TEXT_WINDOW_BASE 3009 +enum { + TAG_RESULTS_TEXT_WINDOW_LEFT = TAG_TEXT_WINDOW_BASE, + TAG_RESULTS_TEXT_WINDOW_MIDLEFT, + TAG_RESULTS_TEXT_WINDOW_MIDRIGHT, + TAG_RESULTS_TEXT_WINDOW_RIGHT, + TAG_LINK_TEXT_WINDOW_LEFT, + TAG_LINK_TEXT_WINDOW_MIDLEFT, + TAG_LINK_TEXT_WINDOW_MIDRIGHT, + TAG_LINK_TEXT_WINDOW_RIGHT, // 3016 +}; #define TAG_CONFETTI 3017 +#define TAG_WIRELESS_INDICATOR_WINDOW 22222 #define MAX_BAR_LENGTH 87 +// Starting x/y for the sliding results screen text box +#define TEXT_BOX_X (DISPLAY_WIDTH + 32) +#define TEXT_BOX_Y (DISPLAY_HEIGHT - 16) + struct ContestResultsInternal { u8 slidingTextBoxSpriteId; @@ -105,14 +124,14 @@ struct ContestResults static EWRAM_DATA struct ContestResults *sContestResults = NULL; static void LoadAllContestMonIconPalettes(void); -static void LoadContestResultsTilemaps(void); +static void LoadContestResultsTitleBarTilemaps(void); static u8 GetNumPreliminaryPoints(u8, bool8); static s8 GetNumRound2Points(u8, bool8); static void AddContestTextPrinter(int, u8 *, int); static void AllocContestResults(void); static void FreeContestResults(void); static void LoadAllContestMonIcons(u8, u8); -static void LoadContestResultSprites(void); +static void CreateResultsTextWindowSprites(void); static void TryCreateWirelessSprites(void); static void Task_StartShowContestResults(u8 taskId); static void CB2_StartShowContestResults(void); @@ -166,11 +185,11 @@ static void SpriteCB_Confetti(struct Sprite *sprite); static void Task_ShowContestEntryMonPic(u8 taskId); static void Task_LinkContestWaitForConnection(u8 taskId); -static const u16 sUnknown_0858D6B0[] = INCBIN_U16("graphics/unknown/unknown_58D6B0.gbapal"); -static const u8 sUnknown_0858D6D0[] = INCBIN_U8("graphics/unknown/unknown_58D6D0.4bpp"); +static const u16 sResultsTextWindow_Pal[] = INCBIN_U16("graphics/contest/results_screen/text_window.gbapal"); +static const u8 sResultsTextWindow_Gfx[] = INCBIN_U8("graphics/contest/results_screen/text_window.4bpp"); static const u16 sMiscBlank_Pal[] = INCBIN_U16("graphics/interface/blank.gbapal"); -static const struct OamData sOamData_858D7F0 = +static const struct OamData sOamData_ResultsTextWindow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -187,33 +206,33 @@ static const struct OamData sOamData_858D7F0 = .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_858D7F8 = +static const struct SpriteTemplate sSpriteTemplate_ResultsTextWindow = { - .tileTag = 3009, - .paletteTag = 3009, - .oam = &sOamData_858D7F0, + .tileTag = TAG_TEXT_WINDOW_BASE, + .paletteTag = TAG_TEXT_WINDOW_BASE, + .oam = &sOamData_ResultsTextWindow, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const struct SpriteSheet sUnknown_0858D810[] = +static const struct SpriteSheet sSpriteSheets_ResultsTextWindow[] = { - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3009 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3010 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3011 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3012 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3013 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3014 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3015 }, - { .data = gMiscBlank_Gfx, .size = 0x400, .tag = 3016 }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_RESULTS_TEXT_WINDOW_LEFT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_RESULTS_TEXT_WINDOW_MIDLEFT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_RESULTS_TEXT_WINDOW_MIDRIGHT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_RESULTS_TEXT_WINDOW_RIGHT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_LINK_TEXT_WINDOW_LEFT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_LINK_TEXT_WINDOW_MIDLEFT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_LINK_TEXT_WINDOW_MIDRIGHT }, + { .data = gMiscBlank_Gfx, .size = 0x400, .tag = TAG_LINK_TEXT_WINDOW_RIGHT }, }; -static const struct SpritePalette sUnknown_0858D850 = +static const struct SpritePalette sSpritePalette_ResultsTextWindow = { .data = sMiscBlank_Pal, - .tag = 3009, + .tag = TAG_TEXT_WINDOW_BASE, }; static const struct OamData sOamData_Confetti = @@ -339,7 +358,7 @@ static const struct WindowTemplate sWindowTemplates[] = DUMMY_WIN_TEMPLATE, }; -static const struct OamData sUnknown_0858D8C0 = +static const struct OamData sOamData_WirelessIndicatorWindow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -357,22 +376,22 @@ static const struct OamData sUnknown_0858D8C0 = }; -static const struct SpriteTemplate sSpriteTemplate_858D8C8 = +static const struct SpriteTemplate sSpriteTemplate_WirelessIndicatorWindow = { - .tileTag = 22222, + .tileTag = TAG_WIRELESS_INDICATOR_WINDOW, .paletteTag = 0, - .oam = &sUnknown_0858D8C0, + .oam = &sOamData_WirelessIndicatorWindow, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const struct SpriteSheet sUnknown_0858D8E0 = +static const struct SpriteSheet sSpriteSheet_WirelessIndicatorWindow = { .data = gMiscBlank_Gfx, .size = 0x200, - .tag = 22222 + .tag = TAG_WIRELESS_INDICATOR_WINDOW }; static const u8 sContestLinkTextColors[4] = {TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_6, TEXT_DYNAMIC_COLOR_5}; @@ -430,12 +449,12 @@ static void LoadContestResultsBgGfx(void) u16 tile1, tile2; LZDecompressVram(gContestResults_Gfx, (void *)BG_CHAR_ADDR(0)); - CopyToBgTilemapBuffer(3, gUnknown_08C1A12C, 0, 0); - CopyToBgTilemapBuffer(2, gUnknown_08C1A000, 0, 0); - CopyToBgTilemapBuffer(0, gUnknown_08C19EEC, 0, 0); - LoadContestResultsTilemaps(); + CopyToBgTilemapBuffer(3, gContestResults_Bg_Tilemap, 0, 0); + CopyToBgTilemapBuffer(2, gContestResults_Interface_Tilemap, 0, 0); + CopyToBgTilemapBuffer(0, gContestResults_WinnerBanner_Tilemap, 0, 0); + LoadContestResultsTitleBarTilemaps(); LoadCompressedPalette(gContestResults_Pal, 0, 0x200); - LoadPalette(sUnknown_0858D6B0, 0xF0, 0x20); + LoadPalette(sResultsTextWindow_Pal, 0xF0, sizeof(sResultsTextWindow_Pal)); for (i = 0; i < CONTESTANT_COUNT; i++) { @@ -515,14 +534,14 @@ static void CB2_StartShowContestResults(void) LoadAllContestMonNames(); memset(sContestResults->data, 0, sizeof(*sContestResults->data)); memset(sContestResults->monResults, 0, sizeof(*sContestResults->monResults)); - LoadContestResultSprites(); + CreateResultsTextWindowSprites(); TryCreateWirelessSprites(); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); gPaletteFade.bufferTransferDisabled = FALSE; sContestResults->data->showResultsTaskId = CreateTask(Task_ShowContestResults, 5); SetMainCallback2(CB2_ShowContestResults); gBattle_WIN1H = WIN_RANGE(0, DISPLAY_WIDTH); - gBattle_WIN1V = WIN_RANGE(128, DISPLAY_HEIGHT); + gBattle_WIN1V = WIN_RANGE(DISPLAY_HEIGHT - 32, DISPLAY_HEIGHT); CreateTask(Task_SlideContestResultsBg, 20); CalculateContestantsResultData(); if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS) @@ -679,7 +698,7 @@ static void Task_AnnouncePreliminaryResults(u8 taskId) { CreateTask(Task_FlashStarsAndHearts, 20); x = DrawResultsTextWindow(gText_AnnouncingResults, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, 120, 1088); + StartTextBoxSlideIn(x, TEXT_BOX_Y, 120, 1088); gTasks[taskId].tState++; } else if (gTasks[taskId].tState == 1) @@ -702,7 +721,7 @@ static void Task_AnnouncePreliminaryResults(u8 taskId) else if (gTasks[taskId].tState == 3) { x = DrawResultsTextWindow(gText_PreliminaryResults, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); + StartTextBoxSlideIn(x, TEXT_BOX_Y, -1, 1088); gTasks[taskId].tState++; } else if (gTasks[taskId].tState == 4) @@ -752,7 +771,7 @@ static void Task_AnnounceRound2Results(u8 taskId) { gTasks[taskId].tTimer = 0; x = DrawResultsTextWindow(gText_Round2Results, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); + StartTextBoxSlideIn(x, TEXT_BOX_Y, -1, 1088); } } else if (sContestResults->data->slidingTextBoxState == SLIDING_TEXT_ARRIVED) @@ -841,7 +860,7 @@ static void Task_AnnounceWinner(u8 taskId) StringCopy(gStringVar2, gContestMons[i].nickname); StringExpandPlaceholders(winnerTextBuffer, gText_ContestantsMonWon); x = DrawResultsTextWindow(winnerTextBuffer, sContestResults->data->slidingTextBoxSpriteId); - StartTextBoxSlideIn(x, DISPLAY_HEIGHT - 16, -1, 1088); + StartTextBoxSlideIn(x, TEXT_BOX_Y, -1, 1088); gTasks[taskId].tState++; } break; @@ -892,7 +911,7 @@ static void Task_ShowWinnerMonBanner(u8 taskId) LoadCompressedSpritePalette(pokePal); SetMultiuseSpriteTemplateToPokemon(species, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.paletteTag = pokePal->tag; - spriteId = CreateSprite(&gMultiuseSpriteTemplate, DISPLAY_WIDTH + 32, 80, 10); + spriteId = CreateSprite(&gMultiuseSpriteTemplate, DISPLAY_WIDTH + 32, DISPLAY_HEIGHT / 2, 10); gSprites[spriteId].data[1] = species; gSprites[spriteId].oam.priority = 0; gSprites[spriteId].callback = SpriteCB_WinnerMonSlideIn; @@ -1136,9 +1155,9 @@ static void TryCreateWirelessSprites(void) LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(8, 8); gSprites[gWirelessStatusIndicatorSpriteId].subpriority = 1; - sheet = LoadSpriteSheet(&sUnknown_0858D8E0); + sheet = LoadSpriteSheet(&sSpriteSheet_WirelessIndicatorWindow); RequestDma3Fill(0xFFFFFFFF, (void *)BG_CHAR_ADDR(4) + sheet * 0x20, 0x80, 1); - spriteId = CreateSprite(&sSpriteTemplate_858D8C8, 8, 8, 0); + spriteId = CreateSprite(&sSpriteTemplate_WirelessIndicatorWindow, 8, 8, 0); gSprites[spriteId].oam.objMode = ST_OAM_OBJ_WINDOW; } } @@ -1150,14 +1169,13 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) int strWidth; u8 *spriteTilePtrs[4]; u8 *dst; - { - struct WindowTemplate windowTemplate; - memset(&windowTemplate, 0, sizeof(windowTemplate)); - windowTemplate.width = 30; - windowTemplate.height = 2; - windowId = AddWindow(&windowTemplate); - FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - } + + struct WindowTemplate windowTemplate; + memset(&windowTemplate, 0, sizeof(windowTemplate)); + windowTemplate.width = 30; + windowTemplate.height = 2; + windowId = AddWindow(&windowTemplate); + FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); origWidth = GetStringWidth(1, text, 0); strWidth = (origWidth + 9) / 8; @@ -1169,16 +1187,16 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) s32 i; struct Sprite *sprite; const u8 *src, *windowTilesPtr; - windowTilesPtr = (u8 *)(GetWindowAttribute(windowId, WINDOW_TILE_DATA)); - src = (u8 *)(sUnknown_0858D6D0); + windowTilesPtr = (u8 *)GetWindowAttribute(windowId, WINDOW_TILE_DATA); + src = (u8 *)sResultsTextWindow_Gfx; sprite = &gSprites[spriteId]; spriteTilePtrs[0] = (u8 *)(sprite->oam.tileNum * 32 + OBJ_VRAM0); - for (i = 1; i < 4; i++) + for (i = 1; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) spriteTilePtrs[i] = (void*)(gSprites[sprite->data[i - 1]].oam.tileNum * 32 + OBJ_VRAM0); - for (i = 0; i < 4; i++) + for (i = 0; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) CpuFill32(0, spriteTilePtrs[i], 0x400); dst = spriteTilePtrs[0]; @@ -1208,27 +1226,31 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) return (DISPLAY_WIDTH - (strWidth + 2) * 8) / 2; } -static void LoadContestResultSprites(void) +static void CreateResultsTextWindowSprites(void) { int i; struct SpriteTemplate template; - u8 spriteIds[ARRAY_COUNT(sUnknown_0858D810)]; + u8 spriteIds[ARRAY_COUNT(sSpriteSheets_ResultsTextWindow)]; - template = sSpriteTemplate_858D7F8; - for (i = 0; i < (int)ARRAY_COUNT(sUnknown_0858D810); i++) - LoadSpriteSheet(&sUnknown_0858D810[i]); + template = sSpriteTemplate_ResultsTextWindow; + for (i = 0; i < (int)ARRAY_COUNT(sSpriteSheets_ResultsTextWindow); i++) + LoadSpriteSheet(&sSpriteSheets_ResultsTextWindow[i]); - LoadSpritePalette(&sUnknown_0858D850); - for (i = 0; i < (int)ARRAY_COUNT(sUnknown_0858D810); i++) + LoadSpritePalette(&sSpritePalette_ResultsTextWindow); + + // Create sprites for the two window types, each made up of 4 sprites + for (i = 0; i < (int)ARRAY_COUNT(sSpriteSheets_ResultsTextWindow); i++) { - spriteIds[i] = CreateSprite(&template, DISPLAY_WIDTH + 32, DISPLAY_HEIGHT - 16, 10); + spriteIds[i] = CreateSprite(&template, TEXT_BOX_X, TEXT_BOX_Y, 10); template.tileTag++; } + // Save sprite ids of the sliding text box onto its leftmost sprite gSprites[spriteIds[0]].data[0] = spriteIds[1]; gSprites[spriteIds[0]].data[1] = spriteIds[2]; gSprites[spriteIds[0]].data[2] = spriteIds[3]; + // Save sprite ids of the link text box onto its leftmost sprite gSprites[spriteIds[4]].data[0] = spriteIds[5]; gSprites[spriteIds[4]].data[1] = spriteIds[6]; gSprites[spriteIds[4]].data[2] = spriteIds[7]; @@ -1248,7 +1270,7 @@ static void LoadContestResultSprites(void) static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrement) { struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId]; - sprite->pos1.x = DISPLAY_WIDTH + 32; + sprite->pos1.x = TEXT_BOX_X; sprite->pos1.y = y; sprite->pos2.x = 0; sprite->pos2.y = 0; @@ -1275,8 +1297,8 @@ static void StartTextBoxSlideOut(u16 slideIncrement) static void EndTextBoxSlideOut(struct Sprite *sprite) { - sprite->pos1.x = DISPLAY_WIDTH + 32; - sprite->pos1.y = DISPLAY_HEIGHT - 16; + sprite->pos1.x = TEXT_BOX_X; + sprite->pos1.y = TEXT_BOX_Y; sprite->pos2.y = 0; sprite->pos2.x = 0; sprite->callback = SpriteCallbackDummy; @@ -1377,7 +1399,7 @@ static void HideLinkResultsTextBox(void) | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); } -static void LoadContestResultsTilemaps(void) +static void LoadContestResultsTitleBarTilemaps(void) { u8 palette; int x, y; @@ -1386,58 +1408,58 @@ static void LoadContestResultsTilemaps(void) y = 1; if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK) { - CopyToBgTilemapBufferRect(2, gLinkContestResults_Tilemap, 5, 1, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Link_Tilemap, 5, 1, 5, 2); x = 10; } else if (gSpecialVar_ContestRank == CONTEST_RANK_NORMAL) { - CopyToBgTilemapBufferRect(2, gNormalContestResults_Tilemap, 5, 1, 10, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Normal_Tilemap, 5, 1, 10, 2); x = 15; } else if (gSpecialVar_ContestRank == CONTEST_RANK_SUPER) { - CopyToBgTilemapBufferRect(2, gSuperContestResults_Tilemap, 5, 1, 10, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Super_Tilemap, 5, 1, 10, 2); x = 15; } else if (gSpecialVar_ContestRank == CONTEST_RANK_HYPER) { - CopyToBgTilemapBufferRect(2, gHyperContestResults_Tilemap, 5, 1, 10, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Hyper_Tilemap, 5, 1, 10, 2); x = 15; } else // CONTEST_RANK_MASTER { - CopyToBgTilemapBufferRect(2, gMasterContestResults_Tilemap, 5, 1, 10, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Master_Tilemap, 5, 1, 10, 2); x = 15; } if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_COOL) { palette = 0; - CopyToBgTilemapBufferRect(2, gCoolContestResults_Tilemap, x, y, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Cool_Tilemap, x, y, 5, 2); } else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_BEAUTY) { palette = 1; - CopyToBgTilemapBufferRect(2, gBeautyContestResults_Tilemap, x, y, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Beauty_Tilemap, x, y, 5, 2); } else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_CUTE) { palette = 2; - CopyToBgTilemapBufferRect(2, gCuteContestResults_Tilemap, x, y, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Cute_Tilemap, x, y, 5, 2); } else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_SMART) { palette = 3; - CopyToBgTilemapBufferRect(2, gSmartContestResults_Tilemap, x, y, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Smart_Tilemap, x, y, 5, 2); } else // CONTEST_CATEGORY_TOUGH { palette = 4; - CopyToBgTilemapBufferRect(2, gToughContestResults_Tilemap, x, y, 5, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Tough_Tilemap, x, y, 5, 2); } x += 5; - CopyToBgTilemapBufferRect(2, gContestResults_Tilemap, x, y, 6, 2); + CopyToBgTilemapBufferRect(2, gContestResultsTitle_Tilemap, x, y, 6, 2); CopyToBgTilemapBufferRect_ChangePalette(2, sContestResults->tilemapBuffers[2], 0, 0, 32, 4, palette); } @@ -1567,10 +1589,10 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite) sprite->pos1.x -= delta >> 8; sprite->data[1] += 0x600; sprite->data[1] &= 0xFF; - if (sprite->pos1.x < 120) - sprite->pos1.x = 120; + if (sprite->pos1.x < DISPLAY_WIDTH / 2) + sprite->pos1.x = DISPLAY_WIDTH / 2; - if (sprite->pos1.x == 120) + if (sprite->pos1.x == DISPLAY_WIDTH / 2) { sprite->callback = SpriteCallbackDummy; sprite->data[1] = 0; @@ -1628,7 +1650,7 @@ static void SpriteCB_Confetti(struct Sprite *sprite) if (sContestResults->data->destroyConfetti) sprite->invisible = TRUE; - if (sprite->pos1.x > 248 || sprite->pos1.y > 116) + if (sprite->pos1.x > DISPLAY_WIDTH + 8 || sprite->pos1.y > 116) { DestroySprite(sprite); sContestResults->data->confettiCount--; diff --git a/src/graphics.c b/src/graphics.c index 09779eab7ab4..d8991c53582a 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -471,11 +471,11 @@ const u8 gContestSliderHeart_Gfx[] = INCBIN_U8("graphics/contest/slider_heart.4b const u32 gUnknownGfx_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.4bpp.lz"); const u32 gUnknownPal_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.gbapal.lz"); -const u32 gContestResults_Gfx[] = INCBIN_U32("graphics/contest/results_screen.4bpp.lz"); -const u32 gUnknown_08C19EEC[] = INCBIN_U32("graphics/contest/misc_2_tilemap_1.bin.lz"); -const u32 gUnknown_08C1A000[] = INCBIN_U32("graphics/contest/misc_2_tilemap_2.bin.lz"); -const u32 gUnknown_08C1A12C[] = INCBIN_U32("graphics/contest/misc_2_tilemap_3.bin.lz"); -const u32 gContestResults_Pal[] = INCBIN_U32("graphics/contest/results_screen.gbapal.lz"); +const u32 gContestResults_Gfx[] = INCBIN_U32("graphics/contest/results_screen/tiles.4bpp.lz"); +const u32 gContestResults_WinnerBanner_Tilemap[] = INCBIN_U32("graphics/contest/results_screen/winner_banner.bin.lz"); +const u32 gContestResults_Interface_Tilemap[] = INCBIN_U32("graphics/contest/results_screen/interface.bin.lz"); +const u32 gContestResults_Bg_Tilemap[] = INCBIN_U32("graphics/contest/results_screen/bg.bin.lz"); +const u32 gContestResults_Pal[] = INCBIN_U32("graphics/contest/results_screen/tiles.gbapal.lz"); const u32 gBattleAnimSpriteGfx_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.4bpp.lz"); const u32 gBattleAnimSpritePal_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.gbapal.lz"); @@ -1296,17 +1296,17 @@ const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/interface/hm.4bpp"); // contest results screen -const u16 gNormalContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_normal.bin"); -const u16 gSuperContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_super.bin"); -const u16 gHyperContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_hyper.bin"); -const u16 gMasterContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_master.bin"); -const u16 gLinkContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_link.bin"); -const u16 gCoolContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_cool.bin"); -const u16 gBeautyContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_beauty.bin"); -const u16 gCuteContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_cute.bin"); -const u16 gSmartContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_smart.bin"); -const u16 gToughContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_tough.bin"); -const u16 gContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen.bin"); +const u16 gContestResultsTitle_Normal_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_normal.bin"); +const u16 gContestResultsTitle_Super_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_super.bin"); +const u16 gContestResultsTitle_Hyper_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_hyper.bin"); +const u16 gContestResultsTitle_Master_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_master.bin"); +const u16 gContestResultsTitle_Link_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_link.bin"); +const u16 gContestResultsTitle_Cool_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_cool.bin"); +const u16 gContestResultsTitle_Beauty_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_beauty.bin"); +const u16 gContestResultsTitle_Cute_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_cute.bin"); +const u16 gContestResultsTitle_Smart_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_smart.bin"); +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 From 57948b86a8cb464849d915a838ccb83b0b941531 Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Tue, 20 Apr 2021 21:31:39 -0400 Subject: [PATCH 143/762] Eliminate the last fakematching. We are free of nonmatchings/fakematchings! --- src/librfu_rfu.c | 3 --- src/librfu_sio32id.c | 29 ++++++++++++----------------- 2 files changed, 12 insertions(+), 20 deletions(-) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index f39ccb74c5bd..be2fa61e4cd0 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -1758,9 +1758,6 @@ static void rfu_constructSendLLFrame(void) { u8 *maxSize = llf_p - offsetof(struct RfuFixed, LLFBuffer[1]); - // Does the volatile qualifier make sense? - // It's the same as: - // asm("":::"memory"); pakcketSize = maxSize - *(u8 *volatile *)&gRfuFixed; } } diff --git a/src/librfu_sio32id.c b/src/librfu_sio32id.c index b6623540f20b..1c02840e85d1 100644 --- a/src/librfu_sio32id.c +++ b/src/librfu_sio32id.c @@ -123,34 +123,29 @@ static void Sio32IDIntr(void) { u32 regSIODATA32; u16 delay; -#ifndef NONMATCHING - register u32 rfuSIO32IdUnk0_times_16 asm("r1"); - register u16 negRfuSIO32IdUnk6 asm("r0"); -#else u32 rfuSIO32IdUnk0_times_16; - u16 negRfuSIO32IdUnk6; -#endif regSIODATA32 = REG_SIODATA32; if (gRfuSIO32Id.MS_mode != AGB_CLK_MASTER) REG_SIOCNT |= SIO_ENABLE; - rfuSIO32IdUnk0_times_16 = 16 * gRfuSIO32Id.MS_mode; // to handle side effect of inline asm - rfuSIO32IdUnk0_times_16 = (regSIODATA32 << rfuSIO32IdUnk0_times_16) >> 16; + rfuSIO32IdUnk0_times_16 = (regSIODATA32 << (16 * gRfuSIO32Id.MS_mode)) >> 16; regSIODATA32 = (regSIODATA32 << 16 * (1 - gRfuSIO32Id.MS_mode)) >> 16; if (gRfuSIO32Id.lastId == 0) { - if (rfuSIO32IdUnk0_times_16 == gRfuSIO32Id.recv_id) + u16 backup = rfuSIO32IdUnk0_times_16; + if (backup == gRfuSIO32Id.recv_id) { - if (gRfuSIO32Id.count > 3) + if (gRfuSIO32Id.count < 4) { - gRfuSIO32Id.lastId = regSIODATA32; - } - else if (rfuSIO32IdUnk0_times_16 == (u16)~gRfuSIO32Id.send_id) - { - negRfuSIO32IdUnk6 = ~gRfuSIO32Id.recv_id; - if (regSIODATA32 == negRfuSIO32IdUnk6) - ++gRfuSIO32Id.count; + backup = (u16)~gRfuSIO32Id.send_id; + if (gRfuSIO32Id.recv_id == backup) + { + if (regSIODATA32 == (u16)~gRfuSIO32Id.recv_id) + ++gRfuSIO32Id.count; + } } + else + gRfuSIO32Id.lastId = regSIODATA32; } else { From dbe24f0baa560aaa30f3084f1dfb21fb3cfb04db Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 21 Apr 2021 20:04:12 -0400 Subject: [PATCH 144/762] Clean up contest_painting --- asm/macros/event.inc | 6 +- .../LilycoveCity_ContestLobby/scripts.inc | 16 +- .../scripts.inc | 10 +- data/script_cmd_table.inc | 2 +- data/specials.inc | 2 +- data/text/contest_painting.inc | 2 +- .../picture_frame/{frame1.png => beauty.png} | Bin .../{frame1_map.bin => beauty_map.bin} | Bin .../picture_frame/{frame0.png => cool.png} | Bin .../{frame0_map.bin => cool_map.bin} | Bin .../picture_frame/{frame2.png => cute.png} | Bin .../{frame2_map.bin => cute_map.bin} | Bin .../picture_frame/{frame5.png => lobby.png} | Bin .../{frame5_map.bin => lobby_map.bin} | Bin .../picture_frame/{frame3.png => smart.png} | Bin .../{frame3_map.bin => smart_map.bin} | Bin .../picture_frame/{frame4.png => tough.png} | Bin .../{frame4_map.bin => tough_map.bin} | Bin graphics_file_rules.mk | 2 +- include/constants/contest.h | 16 +- include/contest.h | 8 +- include/contest_util.h | 2 +- src/contest.c | 60 +++-- src/contest_painting.c | 252 +++++++++--------- src/contest_util.c | 24 +- src/data/contest_opponents.h | 16 +- src/scrcmd.c | 6 +- 27 files changed, 226 insertions(+), 198 deletions(-) rename graphics/picture_frame/{frame1.png => beauty.png} (100%) rename graphics/picture_frame/{frame1_map.bin => beauty_map.bin} (100%) rename graphics/picture_frame/{frame0.png => cool.png} (100%) rename graphics/picture_frame/{frame0_map.bin => cool_map.bin} (100%) rename graphics/picture_frame/{frame2.png => cute.png} (100%) rename graphics/picture_frame/{frame2_map.bin => cute_map.bin} (100%) rename graphics/picture_frame/{frame5.png => lobby.png} (100%) rename graphics/picture_frame/{frame5_map.bin => lobby_map.bin} (100%) rename graphics/picture_frame/{frame3.png => smart.png} (100%) rename graphics/picture_frame/{frame3_map.bin => smart_map.bin} (100%) rename graphics/picture_frame/{frame4.png => tough.png} (100%) rename graphics/picture_frame/{frame4_map.bin => tough_map.bin} (100%) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 84fdd592a71d..f3f17c5d8bcd 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -918,10 +918,10 @@ .byte 0x76 .endm - @ Draws an image of the winner of the contest. In FireRed, this command is a nop. (The argument is discarded.) - .macro showcontestwinner a:req + @ Draws an image of the winner of the contest. winnerId is any CONTEST_WINNER_* constant. + .macro showcontestpainting winnerId:req .byte 0x77 - .byte \a + .byte \winnerId .endm @ Displays the string at pointer as braille text in a standard message box. The string must be formatted to use braille diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 300d4dfab2ad..3642bc1d1db3 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -49,7 +49,7 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264 msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_ARTIST + showcontestpainting CONTEST_WINNER_ARTIST lockall msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO compare VAR_RESULT, YES @@ -223,7 +223,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436 msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_ARTIST + showcontestpainting CONTEST_WINNER_ARTIST msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink @@ -511,42 +511,42 @@ LilycoveCity_ContestLobby_EventScript_NinjaBoy:: @ 821A735 LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_1 + showcontestpainting CONTEST_WINNER_HALL_1 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745 lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_2 + showcontestpainting CONTEST_WINNER_HALL_2 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_3 + showcontestpainting CONTEST_WINNER_HALL_3 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753 lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_4 + showcontestpainting CONTEST_WINNER_HALL_4 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_5 + showcontestpainting CONTEST_WINNER_HALL_5 releaseall end LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761 lockall fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_HALL_6 + showcontestpainting CONTEST_WINNER_HALL_6 releaseall end diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index 4cebebd8235d..c769f4b557cb 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -185,35 +185,35 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: @ 821999C LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_MUSEUM_COOL + showcontestpainting CONTEST_WINNER_MUSEUM_COOL releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_MUSEUM_BEAUTY + showcontestpainting CONTEST_WINNER_MUSEUM_BEAUTY releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_MUSEUM_CUTE + showcontestpainting CONTEST_WINNER_MUSEUM_CUTE releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_MUSEUM_SMART + showcontestpainting CONTEST_WINNER_MUSEUM_SMART releaseall end LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK - showcontestwinner CONTEST_WINNER_MUSEUM_TOUGH + showcontestpainting CONTEST_WINNER_MUSEUM_TOUGH releaseall end diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index a26ce6bf25aa..9e54ad52b00b 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -119,7 +119,7 @@ gScriptCmdTable:: @ 81DB67C .4byte ScrCmd_drawboxtext @ 0x74 .4byte ScrCmd_showmonpic @ 0x75 .4byte ScrCmd_hidemonpic @ 0x76 - .4byte ScrCmd_showcontestwinner @ 0x77 + .4byte ScrCmd_showcontestpainting @ 0x77 .4byte ScrCmd_braillemessage @ 0x78 .4byte ScrCmd_givemon @ 0x79 .4byte ScrCmd_giveegg @ 0x7a diff --git a/data/specials.inc b/data/specials.inc index f672a7b870c8..4c2a6dc7384a 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -149,7 +149,7 @@ gSpecials:: @ 81DBA64 def_special SaveMuseumContestPainting def_special DoesContestCategoryHaveWinner def_special CountPlayerContestPaintings - def_special ShowContestWinnerPainting + def_special ShowContestPainting @ Unused, redundant with showcontestpainting command def_special MauvilleGymSetDefaultBarriers def_special MauvilleGymPressSwitch def_special ShowFieldMessageStringVar4 diff --git a/data/text/contest_painting.inc b/data/text/contest_painting.inc index 78ae80153d6d..b423fbb277e8 100644 --- a/data/text/contest_painting.inc +++ b/data/text/contest_painting.inc @@ -1,4 +1,4 @@ -gContestPaintingCaption:: @ 827EA0C +gContestHallPaintingCaption:: @ 827EA0C .string "{STR_VAR_1}\n" .string "{STR_VAR_2}'s {STR_VAR_3}$" diff --git a/graphics/picture_frame/frame1.png b/graphics/picture_frame/beauty.png similarity index 100% rename from graphics/picture_frame/frame1.png rename to graphics/picture_frame/beauty.png diff --git a/graphics/picture_frame/frame1_map.bin b/graphics/picture_frame/beauty_map.bin similarity index 100% rename from graphics/picture_frame/frame1_map.bin rename to graphics/picture_frame/beauty_map.bin diff --git a/graphics/picture_frame/frame0.png b/graphics/picture_frame/cool.png similarity index 100% rename from graphics/picture_frame/frame0.png rename to graphics/picture_frame/cool.png diff --git a/graphics/picture_frame/frame0_map.bin b/graphics/picture_frame/cool_map.bin similarity index 100% rename from graphics/picture_frame/frame0_map.bin rename to graphics/picture_frame/cool_map.bin diff --git a/graphics/picture_frame/frame2.png b/graphics/picture_frame/cute.png similarity index 100% rename from graphics/picture_frame/frame2.png rename to graphics/picture_frame/cute.png diff --git a/graphics/picture_frame/frame2_map.bin b/graphics/picture_frame/cute_map.bin similarity index 100% rename from graphics/picture_frame/frame2_map.bin rename to graphics/picture_frame/cute_map.bin diff --git a/graphics/picture_frame/frame5.png b/graphics/picture_frame/lobby.png similarity index 100% rename from graphics/picture_frame/frame5.png rename to graphics/picture_frame/lobby.png diff --git a/graphics/picture_frame/frame5_map.bin b/graphics/picture_frame/lobby_map.bin similarity index 100% rename from graphics/picture_frame/frame5_map.bin rename to graphics/picture_frame/lobby_map.bin diff --git a/graphics/picture_frame/frame3.png b/graphics/picture_frame/smart.png similarity index 100% rename from graphics/picture_frame/frame3.png rename to graphics/picture_frame/smart.png diff --git a/graphics/picture_frame/frame3_map.bin b/graphics/picture_frame/smart_map.bin similarity index 100% rename from graphics/picture_frame/frame3_map.bin rename to graphics/picture_frame/smart_map.bin diff --git a/graphics/picture_frame/frame4.png b/graphics/picture_frame/tough.png similarity index 100% rename from graphics/picture_frame/frame4.png rename to graphics/picture_frame/tough.png diff --git a/graphics/picture_frame/frame4_map.bin b/graphics/picture_frame/tough_map.bin similarity index 100% rename from graphics/picture_frame/frame4_map.bin rename to graphics/picture_frame/tough_map.bin diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 6a3bf40069e7..a369d973ef3b 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -476,7 +476,7 @@ $(RAYQUAZAGFXDIR)/scene_4/streaks.4bpp: %.4bpp: %.png $(RAYQUAZAGFXDIR)/scene_4/rayquaza.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 155 -graphics/picture_frame/frame5.4bpp: %.4bpp: %.png +graphics/picture_frame/lobby.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 86 $(ROULETTEGFXDIR)/roulette_tilt.4bpp: $(ROULETTEGFXDIR)/shroomish.4bpp \ diff --git a/include/constants/contest.h b/include/constants/contest.h index 9eb6b26e418f..c18af081703c 100644 --- a/include/constants/contest.h +++ b/include/constants/contest.h @@ -22,7 +22,9 @@ #define CONTEST_TYPE_NPC_MASTER (CONTEST_RANK_MASTER + 1) #define CONTEST_TYPE_LINK (CONTEST_RANK_LINK + 1) -#define CONTEST_WINNER_ARTIST 0 // Winner shown by the artist, painting not necessarily saved +// IDs below - 1 are indexes into gSaveBlock1Ptr->contestWinners[] +// CONTEST_WINNER_ARTIST is for the winner of the most recent contest, and is not saved. +#define CONTEST_WINNER_ARTIST 0 #define CONTEST_WINNER_HALL_1 1 #define CONTEST_WINNER_HALL_2 2 #define CONTEST_WINNER_HALL_3 3 @@ -30,8 +32,8 @@ #define CONTEST_WINNER_HALL_5 5 #define CONTEST_WINNER_HALL_6 6 #define NUM_CONTEST_HALL_WINNERS 6 -#define CONTEST_WINNER_7 7 -#define CONTEST_WINNER_8 8 +#define CONTEST_WINNER_HALL_UNUSED 7 +#define CONTEST_WINNER_MUSEUM_UNUSED 8 #define CONTEST_WINNER_MUSEUM_COOL 9 #define CONTEST_WINNER_MUSEUM_BEAUTY 10 #define CONTEST_WINNER_MUSEUM_CUTE 11 @@ -39,6 +41,14 @@ #define CONTEST_WINNER_MUSEUM_TOUGH 13 // NUM_CONTEST_WINNERS in constants/global.h +#define MUSEUM_CONTEST_WINNERS_START CONTEST_WINNER_MUSEUM_UNUSED + +// The number of possible captions for a Contest painting, per category +#define NUM_PAINTING_CAPTIONS 3 + +#define CONTEST_SAVE_FOR_MUSEUM ((u8)-1) +#define CONTEST_SAVE_FOR_ARTIST ((u8)-2) + #define CANT_ENTER_CONTEST 0 #define CAN_ENTER_CONTEST_EQUAL_RANK 1 #define CAN_ENTER_CONTEST_HIGH_RANK 2 diff --git a/include/contest.h b/include/contest.h index 1dd4340bd84b..6469bf628bb3 100644 --- a/include/contest.h +++ b/include/contest.h @@ -326,8 +326,8 @@ extern u8 gHighestRibbonRank; extern struct ContestResources *gContestResources; extern u8 sContestBgCopyFlags; extern struct ContestWinner gCurContestWinner; -extern u8 gUnknown_02039F5C; -extern u8 gUnknown_02039F5D; +extern u8 gCurContestWinnerIsForArtist; +extern u8 gCurContestWinnerSaveIdx; extern u32 gContestRngValue; // contest.c @@ -351,8 +351,8 @@ s8 Contest_GetMoveExcitement(u16 move); bool8 IsContestantAllowedToCombo(u8 contestant); void Contest_PrintTextToBg0WindowAt(u32 windowId, u8 *currChar, s32 x, s32 y, s32 fontId); void ResetContestLinkResults(void); -bool8 sub_80DEDA8(u8 a); -u8 sub_80DEFA8(u8 a, u8 b); +bool8 SaveContestWinner(u8 rank); +u8 GetContestWinnerSaveIdx(u8 rank, bool8 shift); void ClearContestWinnerPicsInContestHall(void); void StripPlayerAndMonNamesForLinkContest(struct ContestPokemon *mon, s32 language); diff --git a/include/contest_util.h b/include/contest_util.h index 76f9ae522aa0..5b0c5559af4b 100644 --- a/include/contest_util.h +++ b/include/contest_util.h @@ -7,7 +7,7 @@ void StartContest(void); void BufferContestantMonSpecies(void); void ShowContestResults(void); void ContestLinkTransfer(u8); -void ShowContestWinnerPainting(void); +void ShowContestPainting(void); u16 GetContestRand(void); u8 CountPlayerContestPaintings(void); diff --git a/src/contest.c b/src/contest.c index 246fc1e5013d..59f50fcfc755 100644 --- a/src/contest.c +++ b/src/contest.c @@ -350,8 +350,8 @@ EWRAM_DATA u8 gHighestRibbonRank = 0; EWRAM_DATA struct ContestResources *gContestResources = NULL; EWRAM_DATA u8 sContestBgCopyFlags = 0; EWRAM_DATA struct ContestWinner gCurContestWinner = {0}; -EWRAM_DATA bool8 gUnknown_02039F5C = 0; -EWRAM_DATA u8 gUnknown_02039F5D = 0; +EWRAM_DATA bool8 gCurContestWinnerIsForArtist = 0; +EWRAM_DATA u8 gCurContestWinnerSaveIdx = 0; // IWRAM common vars. u32 gContestRngValue; @@ -5516,40 +5516,47 @@ void ResetContestLinkResults(void) gSaveBlock2Ptr->contestLinkResults[i][j] = 0; } -bool8 sub_80DEDA8(u8 rank) +bool8 SaveContestWinner(u8 rank) { s32 i; - u8 r7 = Random() % 3; + u8 captionId = Random() % NUM_PAINTING_CAPTIONS; + // Get the index of the winner among the contestants for (i = 0; i < CONTESTANT_COUNT - 1; i++) - { if (gContestFinalStandings[i] == 0) break; - } - if (rank == 0xFF && i != gContestPlayerMonIndex) + + // Exit if attempting to save a Pokémon other than the player's to the museum + if (rank == CONTEST_SAVE_FOR_MUSEUM && i != gContestPlayerMonIndex) return FALSE; + + + // Adjust the random painting caption depending on the category switch (gSpecialVar_ContestCategory) { case CONTEST_CATEGORY_COOL: - r7 += 0; + captionId += NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_COOL; break; case CONTEST_CATEGORY_BEAUTY: - r7 += 3; + captionId += NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_BEAUTY; break; case CONTEST_CATEGORY_CUTE: - r7 += 6; + captionId += NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_CUTE; break; case CONTEST_CATEGORY_SMART: - r7 += 9; + captionId += NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_SMART; break; case CONTEST_CATEGORY_TOUGH: - r7 += 12; + captionId += NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_TOUGH; break; } - if (rank != 0xFE) - { - u8 id = sub_80DEFA8(rank, 1); + if (rank != CONTEST_SAVE_FOR_ARTIST) + { + // Save winner in the saveblock + // Used to save any winner for the Contest Hall or the Museum + // but excludes the temporary save used by the artist + u8 id = GetContestWinnerSaveIdx(rank, TRUE); gSaveBlock1Ptr->contestWinners[id].personality = gContestMons[i].personality; gSaveBlock1Ptr->contestWinners[id].species = gContestMons[i].species; gSaveBlock1Ptr->contestWinners[id].trainerId = gContestMons[i].otId; @@ -5560,24 +5567,29 @@ bool8 sub_80DEDA8(u8 rank) else gSaveBlock1Ptr->contestWinners[id].contestRank = gSpecialVar_ContestRank; - if (rank != 0xFF) + if (rank != CONTEST_SAVE_FOR_MUSEUM) gSaveBlock1Ptr->contestWinners[id].contestCategory = gSpecialVar_ContestCategory; else - gSaveBlock1Ptr->contestWinners[id].contestCategory = r7; + gSaveBlock1Ptr->contestWinners[id].contestCategory = captionId; } else { + // Set the most recent winner so the artist can show the player their painting gCurContestWinner.personality = gContestMons[i].personality; gCurContestWinner.trainerId = gContestMons[i].otId; gCurContestWinner.species = gContestMons[i].species; StringCopy(gCurContestWinner.monName, gContestMons[i].nickname); StringCopy(gCurContestWinner.trainerName, gContestMons[i].trainerName); - gCurContestWinner.contestCategory = r7; + gCurContestWinner.contestCategory = captionId; } return TRUE; } -u8 sub_80DEFA8(u8 rank, u8 b) +// Rank is either a regular contest rank (for saving winners to show in the Contest Hall) +// Or one of two special IDs listed below (for saving winners to show in Museum, or from the artist) +// If just retrieving the index where the winner *would* go, shift is FALSE +// If actually preparing to insert the winner into the saveblock, shift is TRUE +u8 GetContestWinnerSaveIdx(u8 rank, bool8 shift) { s32 i; @@ -5587,13 +5599,15 @@ u8 sub_80DEFA8(u8 rank, u8 b) case CONTEST_RANK_SUPER: case CONTEST_RANK_HYPER: case CONTEST_RANK_MASTER: - if (b != 0) + if (shift) { - for (i = NUM_CONTEST_HALL_WINNERS - 1; i >= 1; i--) + for (i = NUM_CONTEST_HALL_WINNERS - 1; i > 0; i--) memcpy(&gSaveBlock1Ptr->contestWinners[i], &gSaveBlock1Ptr->contestWinners[i - 1], sizeof(struct ContestWinner)); } - return 0; + return CONTEST_WINNER_HALL_1 - 1; default: +// case CONTEST_SAVE_FOR_MUSEUM: +// case CONTEST_SAVE_FOR_ARTIST: switch (gSpecialVar_ContestCategory) { case CONTEST_CATEGORY_COOL: @@ -5615,7 +5629,7 @@ void ClearContestWinnerPicsInContestHall(void) { s32 i; - for (i = 0; i < 8; i++) + for (i = 0; i < MUSEUM_CONTEST_WINNERS_START; i++) gSaveBlock1Ptr->contestWinners[i] = gDefaultContestWinners[i]; } diff --git a/src/contest_painting.c b/src/contest_painting.c index 4f0bf9245f29..ca5d8c0a938e 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -21,18 +21,16 @@ #include "window.h" #include "constants/rgb.h" -// IWRAM common u16 (*gContestMonPixels)[][32]; struct ImageProcessingContext gImageProcessingContext; struct ContestWinner *gContestPaintingWinner; u16 *gContestPaintingMonPalette; -// IWRAM bss -static u8 gContestPaintingState; -static u16 gContestPaintingMosaicVal; -static u16 gContestPaintingFadeCounter; -static bool8 gUnknown_030011F6; -static u8 gContestPaintingWindowId; +static u8 sHoldState; +static u16 sMosaicVal; +static u16 sFadeCounter; +static bool8 sVarsInitialized; +static u8 sWindowId; static void ShowContestPainting(void); static void HoldContestPainting(void); @@ -44,7 +42,7 @@ static void PrintContestPaintingCaption(u8, u8); static void VBlankCB_ContestPainting(void); static void _InitContestMonPixels(u8 *spriteGfx, u16 *palette, u16 (*destPixels)[64][64]); -extern const u8 gContestPaintingCaption[]; +extern const u8 gContestHallPaintingCaption[]; extern const u8 gContestCoolness[]; extern const u8 gContestBeauty[]; extern const u8 gContestCuteness[]; @@ -71,39 +69,39 @@ extern const u8 gContestPaintingTough1[]; extern const u8 gContestPaintingTough2[]; extern const u8 gContestPaintingTough3[]; -const u16 gPictureFramePalettes[] = INCBIN_U16("graphics/picture_frame/bg.gbapal"); -const u8 gPictureFrameTiles_0[] = INCBIN_U8("graphics/picture_frame/frame0.4bpp.rl"); -const u8 gPictureFrameTiles_1[] = INCBIN_U8("graphics/picture_frame/frame1.4bpp.rl"); -const u8 gPictureFrameTiles_2[] = INCBIN_U8("graphics/picture_frame/frame2.4bpp.rl"); -const u8 gPictureFrameTiles_3[] = INCBIN_U8("graphics/picture_frame/frame3.4bpp.rl"); -const u8 gPictureFrameTiles_4[] = INCBIN_U8("graphics/picture_frame/frame4.4bpp.rl"); -const u8 gPictureFrameTiles_5[] = INCBIN_U8("graphics/picture_frame/frame5.4bpp.rl"); -const u8 gPictureFrameTilemap_0[] = INCBIN_U8("graphics/picture_frame/frame0_map.bin.rl"); -const u8 gPictureFrameTilemap_1[] = INCBIN_U8("graphics/picture_frame/frame1_map.bin.rl"); -const u8 gPictureFrameTilemap_2[] = INCBIN_U8("graphics/picture_frame/frame2_map.bin.rl"); -const u8 gPictureFrameTilemap_3[] = INCBIN_U8("graphics/picture_frame/frame3_map.bin.rl"); -const u8 gPictureFrameTilemap_4[] = INCBIN_U8("graphics/picture_frame/frame4_map.bin.rl"); -const u8 gPictureFrameTilemap_5[] = INCBIN_U8("graphics/picture_frame/frame5_map.bin.rl"); +static const u16 sPictureFramePalettes[] = INCBIN_U16("graphics/picture_frame/bg.gbapal"); +static const u8 sPictureFrameTiles_Cool[] = INCBIN_U8("graphics/picture_frame/cool.4bpp.rl"); +static const u8 sPictureFrameTiles_Beauty[] = INCBIN_U8("graphics/picture_frame/beauty.4bpp.rl"); +static const u8 sPictureFrameTiles_Cute[] = INCBIN_U8("graphics/picture_frame/cute.4bpp.rl"); +static const u8 sPictureFrameTiles_Smart[] = INCBIN_U8("graphics/picture_frame/smart.4bpp.rl"); +static const u8 sPictureFrameTiles_Tough[] = INCBIN_U8("graphics/picture_frame/tough.4bpp.rl"); +static const u8 sPictureFrameTiles_HallLobby[] = INCBIN_U8("graphics/picture_frame/lobby.4bpp.rl"); +static const u8 sPictureFrameTilemap_Cool[] = INCBIN_U8("graphics/picture_frame/cool_map.bin.rl"); +static const u8 sPictureFrameTilemap_Beauty[] = INCBIN_U8("graphics/picture_frame/beauty_map.bin.rl"); +static const u8 sPictureFrameTilemap_Cute[] = INCBIN_U8("graphics/picture_frame/cute_map.bin.rl"); +static const u8 sPictureFrameTilemap_Smart[] = INCBIN_U8("graphics/picture_frame/smart_map.bin.rl"); +static const u8 sPictureFrameTilemap_Tough[] = INCBIN_U8("graphics/picture_frame/tough_map.bin.rl"); +static const u8 sPictureFrameTilemap_HallLobby[] = INCBIN_U8("graphics/picture_frame/lobby_map.bin.rl"); static const u8 *const sContestCategoryNames_Unused[] = { - gContestCoolness, - gContestBeauty, - gContestCuteness, - gContestSmartness, - gContestToughness, + [CONTEST_CATEGORY_COOL] = gContestCoolness, + [CONTEST_CATEGORY_BEAUTY] = gContestBeauty, + [CONTEST_CATEGORY_CUTE] = gContestCuteness, + [CONTEST_CATEGORY_SMART] = gContestSmartness, + [CONTEST_CATEGORY_TOUGH] = gContestToughness, }; static const u8 *const sContestRankNames[] = { - gContestRankNormal, - gContestRankSuper, - gContestRankHyper, - gContestRankMaster, - gContestLink, + [CONTEST_RANK_NORMAL] = gContestRankNormal, + [CONTEST_RANK_SUPER] = gContestRankSuper, + [CONTEST_RANK_HYPER] = gContestRankHyper, + [CONTEST_RANK_MASTER] = gContestRankMaster, + [CONTEST_RANK_LINK] = gContestLink, }; -static const struct BgTemplate sContestPaintingBgTemplates[] = +static const struct BgTemplate sBgTemplates[] = { { .bg = 1, @@ -116,7 +114,7 @@ static const struct BgTemplate sContestPaintingBgTemplates[] = }, }; -static const struct WindowTemplate sContestPaintingWindowTemplate = +static const struct WindowTemplate sWindowTemplate = { .bg = 1, .tilemapLeft = 2, @@ -127,23 +125,23 @@ static const struct WindowTemplate sContestPaintingWindowTemplate = .baseBlock = 1, }; -static const u8 *const sContestPaintingDescriptionPointers[] = +static const u8 *const sMuseumCaptions[NUM_PAINTING_CAPTIONS * CONTEST_CATEGORIES_COUNT] = { - gContestPaintingCool1, - gContestPaintingCool2, - gContestPaintingCool3, - gContestPaintingBeauty1, - gContestPaintingBeauty2, - gContestPaintingBeauty3, - gContestPaintingCute1, - gContestPaintingCute2, - gContestPaintingCute3, - gContestPaintingSmart1, - gContestPaintingSmart2, - gContestPaintingSmart3, - gContestPaintingTough1, - gContestPaintingTough2, - gContestPaintingTough3, + [0 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_COOL] = gContestPaintingCool1, + [1 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_COOL] = gContestPaintingCool2, + [2 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_COOL] = gContestPaintingCool3, + [0 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_BEAUTY] = gContestPaintingBeauty1, + [1 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_BEAUTY] = gContestPaintingBeauty2, + [2 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_BEAUTY] = gContestPaintingBeauty3, + [0 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_CUTE] = gContestPaintingCute1, + [1 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_CUTE] = gContestPaintingCute2, + [2 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_CUTE] = gContestPaintingCute3, + [0 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_SMART] = gContestPaintingSmart1, + [1 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_SMART] = gContestPaintingSmart2, + [2 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_SMART] = gContestPaintingSmart3, + [0 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_TOUGH] = gContestPaintingTough1, + [1 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_TOUGH] = gContestPaintingTough2, + [2 + NUM_PAINTING_CAPTIONS * CONTEST_CATEGORY_TOUGH] = gContestPaintingTough3, }; static const struct OamData sContestPaintingMonOamData = @@ -161,15 +159,15 @@ static const struct OamData sContestPaintingMonOamData = .paletteNum = 0, }; -const u16 gUnknown_085B0838[] = {RGB(0, 0, 0), RGB(0, 0, 0)}; +static const u16 sBg_Palette[] = {RGB_BLACK, RGB_BLACK}; void SetContestWinnerForPainting(int contestWinnerId) { - u8 *ptr1 = &gUnknown_02039F5D; - u8 *ptr2 = &gUnknown_02039F5C; + u8 *saveIdx = &gCurContestWinnerSaveIdx; + u8 *isForArtist = &gCurContestWinnerIsForArtist; gCurContestWinner = gSaveBlock1Ptr->contestWinners[contestWinnerId - 1]; - *ptr1 = contestWinnerId - 1; - *ptr2 = FALSE; + *saveIdx = contestWinnerId - 1; + *isForArtist = FALSE; } void CB2_ContestPainting(void) @@ -189,7 +187,7 @@ static void CB2_QuitContestPainting(void) SetMainCallback2(gMain.savedCallback); FREE_AND_SET_NULL(gContestPaintingMonPalette); FREE_AND_SET_NULL(gContestMonPixels); - RemoveWindow(gContestPaintingWindowId); + RemoveWindow(sWindowId); Free(GetBgTilemapBuffer(1)); FreeMonSpritesGfx(); } @@ -203,13 +201,13 @@ static void ShowContestPainting(void) SetVBlankCallback(NULL); AllocateMonSpritesGfx(); gContestPaintingWinner = &gCurContestWinner; - InitContestPaintingVars(1); + InitContestPaintingVars(TRUE); InitContestPaintingBg(); gMain.state++; break; case 1: ResetPaletteFade(); - DmaFillLarge32(3, 0, (void *)BG_VRAM, 0x18000, 0x1000); + DmaFillLarge32(3, 0, (void *)VRAM, VRAM_SIZE, 0x1000); ResetSpriteData(); gMain.state++; break; @@ -220,16 +218,16 @@ static void ShowContestPainting(void) gMain.state++; break; case 3: - CreateContestPaintingPicture(gUnknown_02039F5D, gUnknown_02039F5C); + CreateContestPaintingPicture(gCurContestWinnerSaveIdx, gCurContestWinnerIsForArtist); gMain.state++; break; case 4: - PrintContestPaintingCaption(gUnknown_02039F5D, gUnknown_02039F5C); - LoadPalette(gUnknown_085B0838, 0, 1 * 2); + PrintContestPaintingCaption(gCurContestWinnerSaveIdx, gCurContestWinnerIsForArtist); + LoadPalette(sBg_Palette, 0, 1 * 2); DmaClear32(3, PLTT, PLTT_SIZE); BeginFastPaletteFade(2); SetVBlankCallback(VBlankCB_ContestPainting); - gContestPaintingState = 0; + sHoldState = 0; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG1_ON | DISPCNT_OBJ_ON); SetMainCallback2(CB2_HoldContestPainting); break; @@ -238,29 +236,29 @@ static void ShowContestPainting(void) static void HoldContestPainting(void) { - switch (gContestPaintingState) + switch (sHoldState) { case 0: if (!gPaletteFade.active) - gContestPaintingState = 1; - if (gUnknown_030011F6 && gContestPaintingFadeCounter) - gContestPaintingFadeCounter--; + sHoldState = 1; + if (sVarsInitialized && sFadeCounter) + sFadeCounter--; break; case 1: if ((JOY_NEW(A_BUTTON)) || (JOY_NEW(B_BUTTON))) { - gContestPaintingState++; + sHoldState++; BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB(0, 0, 0)); } - if (gUnknown_030011F6) - gContestPaintingFadeCounter = 0; + if (sVarsInitialized) + sFadeCounter = 0; break; case 2: if (!gPaletteFade.active) SetMainCallback2(CB2_QuitContestPainting); - if (gUnknown_030011F6 && gContestPaintingFadeCounter < 30) - gContestPaintingFadeCounter++; + if (sVarsInitialized && sFadeCounter < 30) + sFadeCounter++; break; } } @@ -268,45 +266,47 @@ static void HoldContestPainting(void) static void InitContestPaintingWindow(void) { ResetBgsAndClearDma3BusyFlags(0); - InitBgsFromTemplates(0, sContestPaintingBgTemplates, ARRAY_COUNT(sContestPaintingBgTemplates)); + InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); ChangeBgX(1, 0, 0); ChangeBgY(1, 0, 0); SetBgTilemapBuffer(1, AllocZeroed(BG_SCREEN_SIZE)); - gContestPaintingWindowId = AddWindow(&sContestPaintingWindowTemplate); + sWindowId = AddWindow(&sWindowTemplate); DeactivateAllTextPrinters(); - FillWindowPixelBuffer(gContestPaintingWindowId, PIXEL_FILL(0)); - PutWindowTilemap(gContestPaintingWindowId); - CopyWindowToVram(gContestPaintingWindowId, 3); + FillWindowPixelBuffer(sWindowId, PIXEL_FILL(0)); + PutWindowTilemap(sWindowId); + CopyWindowToVram(sWindowId, 3); ShowBg(1); } -static void PrintContestPaintingCaption(u8 contestType, bool8 arg1) +static void PrintContestPaintingCaption(u8 contestType, bool8 noCaption) { int x; u8 category; - if (arg1 == TRUE) + if (noCaption == TRUE) return; category = gContestPaintingWinner->contestCategory; - if (contestType < 8) + if (contestType < MUSEUM_CONTEST_WINNERS_START) { + // Contest Hall caption BufferContestName(gStringVar1, category); StringAppend(gStringVar1, gText_Space); StringAppend(gStringVar1, sContestRankNames[gContestPaintingWinner->contestRank]); StringCopy(gStringVar2, gContestPaintingWinner->trainerName); sub_81DB5AC(gStringVar2); StringCopy(gStringVar3, gContestPaintingWinner->monName); - StringExpandPlaceholders(gStringVar4, gContestPaintingCaption); + StringExpandPlaceholders(gStringVar4, gContestHallPaintingCaption); } else { + // Museum caption StringCopy(gStringVar1, gContestPaintingWinner->monName); - StringExpandPlaceholders(gStringVar4, sContestPaintingDescriptionPointers[category]); + StringExpandPlaceholders(gStringVar4, sMuseumCaptions[category]); } x = GetStringCenterAlignXOffset(1, gStringVar4, 208); - AddTextPrinterParameterized(gContestPaintingWindowId, 1, gStringVar4, x, 1, 0, 0); + AddTextPrinterParameterized(sWindowId, 1, gStringVar4, x, 1, 0, 0); CopyBgTilemapBufferToVram(1); } @@ -321,33 +321,34 @@ static void InitContestPaintingBg(void) SetGpuReg(REG_OFFSET_BLDY, 0); } -static void InitContestPaintingVars(bool8 arg0) +static void InitContestPaintingVars(bool8 reset) { - if (arg0 == FALSE) + if (reset == FALSE) { - gUnknown_030011F6 = FALSE; - gContestPaintingMosaicVal = 0; - gContestPaintingFadeCounter = 0; + // Never reached + sVarsInitialized = FALSE; + sMosaicVal = 0; + sFadeCounter = 0; } else { - gUnknown_030011F6 = TRUE; - gContestPaintingMosaicVal = 15; - gContestPaintingFadeCounter = 30; + sVarsInitialized = TRUE; + sMosaicVal = 15; + sFadeCounter = 30; } } static void UpdateContestPaintingMosaicEffect(void) { - if (!gUnknown_030011F6) + if (!sVarsInitialized) { SetGpuReg(REG_OFFSET_MOSAIC, 0); } else { SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_SCREENBASE(10) | BGCNT_MOSAIC | BGCNT_16COLOR | BGCNT_TXT256x256); - gContestPaintingMosaicVal = gContestPaintingFadeCounter / 2; - SetGpuReg(REG_OFFSET_MOSAIC, (gContestPaintingMosaicVal << 12) | (gContestPaintingMosaicVal << 8) | (gContestPaintingMosaicVal << 4) | (gContestPaintingMosaicVal << 0)); + sMosaicVal = sFadeCounter / 2; + SetGpuReg(REG_OFFSET_MOSAIC, (sMosaicVal << 12) | (sMosaicVal << 8) | (sMosaicVal << 4) | (sMosaicVal << 0)); } } @@ -414,34 +415,35 @@ static void _InitContestMonPixels(u8 *spriteGfx, u16 *palette, u16 (*destPixels) #define VRAM_PICTURE_DATA(x, y) (((u16 *)(BG_SCREEN_ADDR(12)))[(y) * 32 + (x)]) -static void LoadContestPaintingFrame(u8 contestWinnerId, bool8 arg1) +static void LoadContestPaintingFrame(u8 contestWinnerId, bool8 isForArtist) { u8 x, y; - LoadPalette(gPictureFramePalettes, 0, 0x100); - if (arg1 == TRUE) + LoadPalette(sPictureFramePalettes, 0, 0x100); + if (isForArtist == TRUE) { - switch (gContestPaintingWinner->contestCategory / 3) + // Load Artist's frame + switch (gContestPaintingWinner->contestCategory / NUM_PAINTING_CAPTIONS) { case CONTEST_CATEGORY_COOL: - RLUnCompVram(gPictureFrameTiles_0, (void *)VRAM); - RLUnCompWram(gPictureFrameTilemap_0, gContestMonPixels); + RLUnCompVram(sPictureFrameTiles_Cool, (void *)VRAM); + RLUnCompWram(sPictureFrameTilemap_Cool, gContestMonPixels); break; case CONTEST_CATEGORY_BEAUTY: - RLUnCompVram(gPictureFrameTiles_1, (void *)VRAM); - RLUnCompWram(gPictureFrameTilemap_1, gContestMonPixels); + RLUnCompVram(sPictureFrameTiles_Beauty, (void *)VRAM); + RLUnCompWram(sPictureFrameTilemap_Beauty, gContestMonPixels); break; case CONTEST_CATEGORY_CUTE: - RLUnCompVram(gPictureFrameTiles_2, (void *)VRAM); - RLUnCompWram(gPictureFrameTilemap_2, gContestMonPixels); + RLUnCompVram(sPictureFrameTiles_Cute, (void *)VRAM); + RLUnCompWram(sPictureFrameTilemap_Cute, gContestMonPixels); break; case CONTEST_CATEGORY_SMART: - RLUnCompVram(gPictureFrameTiles_3, (void *)VRAM); - RLUnCompWram(gPictureFrameTilemap_3, gContestMonPixels); + RLUnCompVram(sPictureFrameTiles_Smart, (void *)VRAM); + RLUnCompWram(sPictureFrameTilemap_Smart, gContestMonPixels); break; case CONTEST_CATEGORY_TOUGH: - RLUnCompVram(gPictureFrameTiles_4, (void *)VRAM); - RLUnCompWram(gPictureFrameTilemap_4, gContestMonPixels); + RLUnCompVram(sPictureFrameTiles_Tough, (void *)VRAM); + RLUnCompWram(sPictureFrameTilemap_Tough, gContestMonPixels); break; } @@ -463,34 +465,36 @@ static void LoadContestPaintingFrame(u8 contestWinnerId, bool8 arg1) for (x = 0; x < 16; x++) VRAM_PICTURE_DATA(x + 7, 2) = (*gContestMonPixels)[2][7]; } - else if (contestWinnerId < 8) + else if (contestWinnerId < MUSEUM_CONTEST_WINNERS_START) { - RLUnCompVram(gPictureFrameTiles_5, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_5, (void *)(BG_SCREEN_ADDR(12))); + // Load Contest Hall lobby frame + RLUnCompVram(sPictureFrameTiles_HallLobby, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_HallLobby, (void *)(BG_SCREEN_ADDR(12))); } else { - switch (gContestPaintingWinner->contestCategory / 3) + // Load Museum frame + switch (gContestPaintingWinner->contestCategory / NUM_PAINTING_CAPTIONS) { case CONTEST_CATEGORY_COOL: - RLUnCompVram(gPictureFrameTiles_0, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_0, (void *)(BG_SCREEN_ADDR(12))); + RLUnCompVram(sPictureFrameTiles_Cool, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_Cool, (void *)(BG_SCREEN_ADDR(12))); break; case CONTEST_CATEGORY_BEAUTY: - RLUnCompVram(gPictureFrameTiles_1, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_1, (void *)(BG_SCREEN_ADDR(12))); + RLUnCompVram(sPictureFrameTiles_Beauty, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_Beauty, (void *)(BG_SCREEN_ADDR(12))); break; case CONTEST_CATEGORY_CUTE: - RLUnCompVram(gPictureFrameTiles_2, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_2, (void *)(BG_SCREEN_ADDR(12))); + RLUnCompVram(sPictureFrameTiles_Cute, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_Cute, (void *)(BG_SCREEN_ADDR(12))); break; case CONTEST_CATEGORY_SMART: - RLUnCompVram(gPictureFrameTiles_3, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_3, (void *)(BG_SCREEN_ADDR(12))); + RLUnCompVram(sPictureFrameTiles_Smart, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_Smart, (void *)(BG_SCREEN_ADDR(12))); break; case CONTEST_CATEGORY_TOUGH: - RLUnCompVram(gPictureFrameTiles_4, (void *)VRAM); - RLUnCompVram(gPictureFrameTilemap_4, (void *)(BG_SCREEN_ADDR(12))); + RLUnCompVram(sPictureFrameTiles_Tough, (void *)VRAM); + RLUnCompVram(sPictureFrameTilemap_Tough, (void *)(BG_SCREEN_ADDR(12))); break; } } @@ -519,10 +523,10 @@ static u8 GetImageEffectForContestWinner(u8 contestWinnerId) { u8 contestCategory; - if (contestWinnerId < 8) + if (contestWinnerId < MUSEUM_CONTEST_WINNERS_START) contestCategory = gContestPaintingWinner->contestCategory; else - contestCategory = gContestPaintingWinner->contestCategory / 3; + contestCategory = gContestPaintingWinner->contestCategory / NUM_PAINTING_CAPTIONS; switch (contestCategory) { @@ -584,12 +588,12 @@ static void DoContestPaintingImageProcessing(u8 imageEffect) LoadPalette(gContestPaintingMonPalette, 0x100, 0x200); } -static void CreateContestPaintingPicture(u8 contestWinnerId, bool8 arg1) +static void CreateContestPaintingPicture(u8 contestWinnerId, bool8 isForArtist) { AllocPaintingResources(); InitContestMonPixels(gContestPaintingWinner->species, 0); DoContestPaintingImageProcessing(GetImageEffectForContestWinner(contestWinnerId)); InitPaintingMonOamData(contestWinnerId); - LoadContestPaintingFrame(contestWinnerId, arg1); + LoadContestPaintingFrame(contestWinnerId, isForArtist); } diff --git a/src/contest_util.c b/src/contest_util.c index 700e446067be..c490a2f0e752 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -606,10 +606,10 @@ static void Task_ShowContestResults(u8 taskId) } TryGainNewFanFromCounter(FANCOUNTER_FINISHED_CONTEST); - sub_80DEDA8(gSpecialVar_ContestRank); - sub_80DEDA8(0xFE); - gUnknown_02039F5C = TRUE; - gUnknown_02039F5D = sub_80DEFA8(0xFE, 0); + SaveContestWinner(gSpecialVar_ContestRank); // Save for lobby painting + SaveContestWinner(CONTEST_SAVE_FOR_ARTIST); + gCurContestWinnerIsForArtist = TRUE; + gCurContestWinnerSaveIdx = GetContestWinnerSaveIdx(CONTEST_SAVE_FOR_ARTIST, FALSE); var = VarGet(VAR_CONTEST_HALL_STATE); VarSet(VAR_CONTEST_HALL_STATE, 0); SetContinueGameWarpStatusToDynamicWarp(); @@ -656,10 +656,10 @@ static void Task_ShowContestResults(u8 taskId) if (gContestFinalStandings[gContestPlayerMonIndex] == 0) IncrementGameStat(GAME_STAT_WON_CONTEST); - sub_80DEDA8(gSpecialVar_ContestRank); - sub_80DEDA8(0xFE); - gUnknown_02039F5C = TRUE; - gUnknown_02039F5D = sub_80DEFA8(0xFE, 0); + SaveContestWinner(gSpecialVar_ContestRank); // Save for lobby painting + SaveContestWinner(CONTEST_SAVE_FOR_ARTIST); + gCurContestWinnerIsForArtist = TRUE; + gCurContestWinnerSaveIdx = GetContestWinnerSaveIdx(CONTEST_SAVE_FOR_ARTIST, FALSE); TryGainNewFanFromCounter(FANCOUNTER_FINISHED_CONTEST); gTasks[taskId].func = Task_AnnouncePreliminaryResults; } @@ -2349,7 +2349,7 @@ void DoesContestCategoryHaveWinner(void) void SaveMuseumContestPainting(void) { - sub_80DEDA8(0xFF); + SaveContestWinner(CONTEST_SAVE_FOR_MUSEUM); } void ShouldReadyContestArtist(void) @@ -2449,15 +2449,15 @@ void sub_80F8970(void) gSpecialVar_0x8006 = r7 + 4; } -static void ExitContestWinnerPainting(void) +static void ExitContestPainting(void) { SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic); } -void ShowContestWinnerPainting(void) +void ShowContestPainting(void) { SetMainCallback2(CB2_ContestPainting); - gMain.savedCallback = ExitContestWinnerPainting; + gMain.savedCallback = ExitContestPainting; } void SetLinkContestPlayerGfx(void) diff --git a/src/data/contest_opponents.h b/src/data/contest_opponents.h index 127457bbecdb..a3d19c36c9de 100644 --- a/src/data/contest_opponents.h +++ b/src/data/contest_opponents.h @@ -138,7 +138,7 @@ const struct ContestWinner gDefaultContestWinners[] = { - { + [CONTEST_WINNER_HALL_1 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_ELECTRIKE, @@ -147,7 +147,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("EZRA"), .contestRank = CONTEST_RANK_NORMAL }, - { + [CONTEST_WINNER_HALL_2 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_TROPIUS, @@ -156,7 +156,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("ALLAN"), .contestRank = CONTEST_RANK_HYPER }, - { + [CONTEST_WINNER_HALL_3 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_XATU, @@ -165,7 +165,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("JULIET"), .contestRank = CONTEST_RANK_NORMAL }, - { + [CONTEST_WINNER_HALL_4 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_PLUSLE, @@ -174,7 +174,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("BAILY"), .contestRank = CONTEST_RANK_MASTER }, - { + [CONTEST_WINNER_HALL_5 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_SHUPPET, @@ -183,7 +183,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("MELANY"), .contestRank = CONTEST_RANK_SUPER }, - { + [CONTEST_WINNER_HALL_6 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_ZANGOOSE, @@ -192,7 +192,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("HANA"), .contestRank = CONTEST_RANK_HYPER }, - { + [CONTEST_WINNER_HALL_UNUSED - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_LOUDRED, @@ -201,7 +201,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("BRYANT"), .contestRank = CONTEST_RANK_HYPER }, - { + [CONTEST_WINNER_MUSEUM_UNUSED - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_DELCATTY, diff --git a/src/scrcmd.c b/src/scrcmd.c index 7dc02b6a8f0f..0ee20d1c6125 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1466,15 +1466,15 @@ bool8 ScrCmd_hidemonpic(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_showcontestwinner(struct ScriptContext *ctx) +bool8 ScrCmd_showcontestpainting(struct ScriptContext *ctx) { u8 contestWinnerId = ScriptReadByte(ctx); - // Don't save artist's painting yet + // Artist's painting is temporary and already has its data loaded if (contestWinnerId != CONTEST_WINNER_ARTIST) SetContestWinnerForPainting(contestWinnerId); - ShowContestWinnerPainting(); + ShowContestPainting(); ScriptContext1_Stop(); return TRUE; } From 00eeb727db5b339fd8a62660d66d9368651cb6f8 Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Wed, 21 Apr 2021 21:37:12 -0400 Subject: [PATCH 145/762] fix rfu_NI_stopReceivingData fakematching; i guess it aint over yet cowboy --- src/librfu_rfu.c | 120 ++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 114 insertions(+), 6 deletions(-) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index be2fa61e4cd0..df6362890764 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -1550,21 +1550,20 @@ u16 rfu_changeSendTarget(u8 connType, u8 slotStatusIndex, u8 bmNewTgtSlot) u16 rfu_NI_stopReceivingData(u8 slotStatusIndex) { - struct NIComm *NI_comm; u16 imeBak; + struct NIComm *NI_comm; if (slotStatusIndex >= RFU_CHILD_MAX) return ERR_SLOT_NO; NI_comm = &gRfuSlotStatusNI[slotStatusIndex]->recv; imeBak = REG_IME; - ++imeBak; --imeBak; // fix imeBak, NI_comm register swap REG_IME = 0; - if (gRfuSlotStatusNI[slotStatusIndex]->recv.state & SLOT_BUSY_FLAG) + if (NI_comm->state & SLOT_BUSY_FLAG) { - if (gRfuSlotStatusNI[slotStatusIndex]->recv.state == SLOT_STATE_RECV_LAST) - gRfuSlotStatusNI[slotStatusIndex]->recv.state = SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN; + if (NI_comm->state == SLOT_STATE_RECV_LAST) + NI_comm->state = SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN; else - gRfuSlotStatusNI[slotStatusIndex]->recv.state = SLOT_STATE_RECV_FAILED; + NI_comm->state = SLOT_STATE_RECV_FAILED; gRfuLinkStatus->recvSlotNIFlag &= ~(1 << slotStatusIndex); rfu_STC_releaseFrame(slotStatusIndex, 1, NI_comm); } @@ -1572,6 +1571,115 @@ u16 rfu_NI_stopReceivingData(u8 slotStatusIndex) return 0; } +/* + .globl rfu_NI_stopReceivingData + .type rfu_NI_stopReceivingData,function + .thumb_func +rfu_NI_stopReceivingData: +.LFB64: +.LM902: + + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 +.LM903: + +.LBB50: +.LM904: + + cmp r3, #0x3 + bls .L683 @cond_branch +.LM905: + + mov r0, #0x80 + lsl r0, r0, #0x3 + b .L687 +.L683: +.LM906: + + ldr r1, .L689 + lsl r0, r3, #0x2 + add r0, r0, r1 + ldr r2, [r0] + add r5, r2, #0 + add r5, r5, #0x34 +.LM907: + + ldr r1, .L689+0x4 + ldrh r0, [r1] +.LM908: + + add r4, r0, #0 +.LM909: + + mov r0, #0x0 + strh r0, [r1] +.LM910: + + ldrh r1, [r2, #0x34] + mov r0, #0x80 + lsl r0, r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + beq .L684 @cond_branch +.LM911: + + ldr r0, .L689+0x8 + cmp r1, r0 + bne .L685 @cond_branch +.LM912: + + mov r0, #0x48 + b .L688 +.L690: + .align 2, 0 +.L689: + .word gRfuSlotStatusNI + .word 0x4000208 + .word 0x8043 +.L685: +.LM913: + + mov r0, #0x47 +.L688: + strh r0, [r2, #0x34] +.LM914: + + ldr r0, .L691 + ldr r2, [r0] + mov r1, #0x1 + lsl r1, r1, r3 + ldrb r0, [r2, #0x5] + bic r0, r0, r1 + strb r0, [r2, #0x5] +.LM915: + + add r0, r3, #0 + mov r1, #0x1 + add r2, r5, #0 + bl rfu_STC_releaseFrame +.L684: +.LM916: + + ldr r0, .L691+0x4 + strh r4, [r0] +.LM917: + + mov r0, #0x0 +.L687: +.LM918: + +.LBE50: + pop {r4, r5} + pop {r1} + bx r1 +.L692: + .align 2, 0 +.L691: + .word gRfuLinkStatus + .word 0x4000208 +*/ + u16 rfu_UNI_changeAndReadySendData(u8 slotStatusIndex, const void *src, u8 size) { struct UNISend *UNI_send; From ddc15340980898a949e2ece62ce9c846a992a4b6 Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Wed, 21 Apr 2021 21:38:42 -0400 Subject: [PATCH 146/762] idiot, get rid of code in block --- src/librfu_rfu.c | 109 ----------------------------------------------- 1 file changed, 109 deletions(-) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index df6362890764..309fc4eadb05 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -1571,115 +1571,6 @@ u16 rfu_NI_stopReceivingData(u8 slotStatusIndex) return 0; } -/* - .globl rfu_NI_stopReceivingData - .type rfu_NI_stopReceivingData,function - .thumb_func -rfu_NI_stopReceivingData: -.LFB64: -.LM902: - - push {r4, r5, lr} - lsl r0, r0, #0x18 - lsr r3, r0, #0x18 -.LM903: - -.LBB50: -.LM904: - - cmp r3, #0x3 - bls .L683 @cond_branch -.LM905: - - mov r0, #0x80 - lsl r0, r0, #0x3 - b .L687 -.L683: -.LM906: - - ldr r1, .L689 - lsl r0, r3, #0x2 - add r0, r0, r1 - ldr r2, [r0] - add r5, r2, #0 - add r5, r5, #0x34 -.LM907: - - ldr r1, .L689+0x4 - ldrh r0, [r1] -.LM908: - - add r4, r0, #0 -.LM909: - - mov r0, #0x0 - strh r0, [r1] -.LM910: - - ldrh r1, [r2, #0x34] - mov r0, #0x80 - lsl r0, r0, #0x8 - and r0, r0, r1 - cmp r0, #0 - beq .L684 @cond_branch -.LM911: - - ldr r0, .L689+0x8 - cmp r1, r0 - bne .L685 @cond_branch -.LM912: - - mov r0, #0x48 - b .L688 -.L690: - .align 2, 0 -.L689: - .word gRfuSlotStatusNI - .word 0x4000208 - .word 0x8043 -.L685: -.LM913: - - mov r0, #0x47 -.L688: - strh r0, [r2, #0x34] -.LM914: - - ldr r0, .L691 - ldr r2, [r0] - mov r1, #0x1 - lsl r1, r1, r3 - ldrb r0, [r2, #0x5] - bic r0, r0, r1 - strb r0, [r2, #0x5] -.LM915: - - add r0, r3, #0 - mov r1, #0x1 - add r2, r5, #0 - bl rfu_STC_releaseFrame -.L684: -.LM916: - - ldr r0, .L691+0x4 - strh r4, [r0] -.LM917: - - mov r0, #0x0 -.L687: -.LM918: - -.LBE50: - pop {r4, r5} - pop {r1} - bx r1 -.L692: - .align 2, 0 -.L691: - .word gRfuLinkStatus - .word 0x4000208 -*/ - u16 rfu_UNI_changeAndReadySendData(u8 slotStatusIndex, const void *src, u8 size) { struct UNISend *UNI_send; From bc9fc382547aadfb321c7c55571786d20c5e9663 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 22 Apr 2021 14:30:45 -0400 Subject: [PATCH 147/762] Misc contest cleanup --- data/maps/LilycoveCity/scripts.inc | 2 +- .../LilycoveCity_ContestLobby/scripts.inc | 2 +- .../scripts.inc | 2 +- data/specials.inc | 8 +- include/constants/contest.h | 12 +-- include/contest.h | 8 +- include/contest_util.h | 2 +- include/international_string_util.h | 2 +- src/contest.c | 17 ++-- src/contest_painting.c | 11 ++- src/contest_util.c | 95 +++++++++++-------- src/data/contest_opponents.h | 4 +- src/international_string_util.c | 2 +- src/new_game.c | 8 +- src/trainer_card.c | 4 +- 15 files changed, 95 insertions(+), 84 deletions(-) diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index 0c94bce626d6..d54942386359 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -160,7 +160,7 @@ LilycoveCity_EventScript_MotelSign:: @ 81E2D11 LilycoveCity_EventScript_MuseumSign:: @ 81E2D1A lockall - specialvar VAR_0x8004, CountPlayerContestPaintings + specialvar VAR_0x8004, CountPlayerMuseumPaintings switch VAR_0x8004 case 0, LilycoveCity_EventScript_MuseumSignNoPaintings msgbox LilycoveCity_Text_MuseumSignPlayersExhibit, MSGBOX_DEFAULT diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 3642bc1d1db3..458585ea450f 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -108,7 +108,7 @@ LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon:: @ 821A314 return LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons:: @ 821A360 - specialvar VAR_0x8004, CountPlayerContestPaintings + specialvar VAR_0x8004, CountPlayerMuseumPaintings switch VAR_0x8004 case 1, LilycoveCity_ContestLobby_EventScript_ShowPatron1 case 2, LilycoveCity_ContestLobby_EventScript_ShowPatron2 diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index c769f4b557cb..6f51d1cac728 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -94,7 +94,7 @@ LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall: @ 8219863 LilycoveCity_LilycoveMuseum_2F_EventScript_Curator:: @ 8219866 lockall goto_if_set FLAG_RECEIVED_GLASS_ORNAMENT, LilycoveCity_LilycoveMuseum_2F_EventScript_ReceivedGlassOrnament - specialvar VAR_0x8004, CountPlayerContestPaintings + specialvar VAR_0x8004, CountPlayerMuseumPaintings switch VAR_0x8004 case 1, LilycoveCity_LilycoveMuseum_2F_EventScript_AddedPainting case 2, LilycoveCity_LilycoveMuseum_2F_EventScript_AddedPainting diff --git a/data/specials.inc b/data/specials.inc index 4c2a6dc7384a..34db6f8b992b 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -89,14 +89,14 @@ gSpecials:: @ 81DBA64 def_special ResetTVShowState def_special GetContestWinnerId def_special GetContestPlayerId - def_special sub_80F8814 + def_special GetNpcContestantLocalId def_special BufferContestWinnerTrainerName def_special BufferContestWinnerMonName def_special BufferContestTrainerAndMonNames def_special GetContestMonConditionRanking def_special SetContestTrainerGfxIds def_special TryEnterContestMon - def_special sub_80F8970 + def_special GetContestantNamesAtRank def_special SetLinkContestPlayerGfx def_special GetContestMonCondition def_special HasMonWonThisContestBefore @@ -147,8 +147,8 @@ gSpecials:: @ 81DBA64 def_special CountPartyAliveNonEggMons_IgnoreVar0x8004Slot def_special ShouldReadyContestArtist def_special SaveMuseumContestPainting - def_special DoesContestCategoryHaveWinner - def_special CountPlayerContestPaintings + def_special DoesContestCategoryHaveMuseumPainting + def_special CountPlayerMuseumPaintings def_special ShowContestPainting @ Unused, redundant with showcontestpainting command def_special MauvilleGymSetDefaultBarriers def_special MauvilleGymPressSwitch diff --git a/include/constants/contest.h b/include/constants/contest.h index c18af081703c..28b02e9c0c60 100644 --- a/include/constants/contest.h +++ b/include/constants/contest.h @@ -32,8 +32,8 @@ #define CONTEST_WINNER_HALL_5 5 #define CONTEST_WINNER_HALL_6 6 #define NUM_CONTEST_HALL_WINNERS 6 -#define CONTEST_WINNER_HALL_UNUSED 7 -#define CONTEST_WINNER_MUSEUM_UNUSED 8 +#define CONTEST_WINNER_HALL_UNUSED_1 7 // These two have data for gDefaultContestWinners +#define CONTEST_WINNER_HALL_UNUSED_2 8 // but there are only 6 paintings in the Contest Hall #define CONTEST_WINNER_MUSEUM_COOL 9 #define CONTEST_WINNER_MUSEUM_BEAUTY 10 #define CONTEST_WINNER_MUSEUM_CUTE 11 @@ -41,14 +41,14 @@ #define CONTEST_WINNER_MUSEUM_TOUGH 13 // NUM_CONTEST_WINNERS in constants/global.h -#define MUSEUM_CONTEST_WINNERS_START CONTEST_WINNER_MUSEUM_UNUSED - -// The number of possible captions for a Contest painting, per category -#define NUM_PAINTING_CAPTIONS 3 +#define MUSEUM_CONTEST_WINNERS_START (CONTEST_WINNER_MUSEUM_COOL - 1) #define CONTEST_SAVE_FOR_MUSEUM ((u8)-1) #define CONTEST_SAVE_FOR_ARTIST ((u8)-2) +// The number of possible captions for a Contest painting, per category +#define NUM_PAINTING_CAPTIONS 3 + #define CANT_ENTER_CONTEST 0 #define CAN_ENTER_CONTEST_EQUAL_RANK 1 #define CAN_ENTER_CONTEST_HIGH_RANK 2 diff --git a/include/contest.h b/include/contest.h index 6469bf628bb3..9bac63eda57f 100644 --- a/include/contest.h +++ b/include/contest.h @@ -111,11 +111,11 @@ struct ContestPokemon u32 otId; }; -struct Shared1A004 +struct ContestTempSave { u16 cachedWindowPalettes[16][16]; // Saved palette data before a move happens? - u16 unk18204[PLTT_BUFFER_SIZE]; // Saved copy of gPlttBufferUnfaded - u16 unk18604[PLTT_BUFFER_SIZE]; // Saved copy of gPlttBufferFaded + u16 cachedPlttBufferUnfaded[PLTT_BUFFER_SIZE]; + u16 cachedPlttBufferFaded[PLTT_BUFFER_SIZE]; u8 savedJunk[0x800]; }; @@ -306,7 +306,7 @@ struct ContestResources #define eUnzippedContestAudience_Gfx (gHeap + 0x18000) #define eContestAudienceFrame2_Gfx (gHeap + 0x19000) #define eContestDebugMode (gHeap[0x1a000]) -#define eUnknownHeap1A004 (*(struct Shared1A004 *)(gHeap + 0x1a004)) +#define eContestTempSave (*(struct ContestTempSave *)(gHeap + 0x1a004)) extern struct ContestPokemon gContestMons[CONTESTANT_COUNT]; extern s16 gContestMonRound1Points[CONTESTANT_COUNT]; diff --git a/include/contest_util.h b/include/contest_util.h index 5b0c5559af4b..1e97d91d3523 100644 --- a/include/contest_util.h +++ b/include/contest_util.h @@ -9,6 +9,6 @@ void ShowContestResults(void); void ContestLinkTransfer(u8); void ShowContestPainting(void); u16 GetContestRand(void); -u8 CountPlayerContestPaintings(void); +u8 CountPlayerMuseumPaintings(void); #endif // GUARD_CONTEST_UTIL_H diff --git a/include/international_string_util.h b/include/international_string_util.h index f76fc5be1ebf..fe7e85b41ff3 100644 --- a/include/international_string_util.h +++ b/include/international_string_util.h @@ -17,7 +17,7 @@ void CopyMonCategoryText(int dexNum, u8 *dest); u8 *sub_81DB494(u8 *str, int fontId, const u8 *str2, int totalStringWidth); void PadNameString(u8 *dest, u8 padChar); void ConvertInternationalPlayerNameStripChar(u8 *, u8); -void sub_81DB5AC(u8 *); +void ConvertInternationalContestantName(u8 *); int sub_81DB604(u8 *); void sub_81DB620(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows); diff --git a/src/contest.c b/src/contest.c index 59f50fcfc755..7dd420c2004f 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1034,7 +1034,7 @@ void LoadContestBgAfterMoveAnim(void) { u32 contestantWindowId = 5 + i; - LoadPalette(eUnknownHeap1A004.cachedWindowPalettes[contestantWindowId], 16 * (5 + gContestantTurnOrder[i]), sizeof((eUnknownHeap1A004.cachedWindowPalettes[contestantWindowId]))); + LoadPalette(eContestTempSave.cachedWindowPalettes[contestantWindowId], 16 * (5 + gContestantTurnOrder[i]), sizeof((eContestTempSave.cachedWindowPalettes[contestantWindowId]))); } } @@ -1320,7 +1320,7 @@ static bool8 SetupContestGraphics(u8 *stateVar) CopyToBgTilemapBuffer(2, gUnknown_08C17170, 0, 0); CopyBgTilemapBufferToVram(2); // This is a bug, and copies random junk. savedJunk is never read. - DmaCopy32Defvars(3, gContestResources->contestBgTilemaps[2], eUnknownHeap1A004.savedJunk, sizeof(eUnknownHeap1A004.savedJunk)); + DmaCopy32Defvars(3, gContestResources->contestBgTilemaps[2], eContestTempSave.savedJunk, sizeof(eContestTempSave.savedJunk)); break; case 5: LoadCompressedPalette(gOldContestPalette, 0, 0x200); @@ -1328,7 +1328,7 @@ static bool8 SetupContestGraphics(u8 *stateVar) CpuCopy32(gPlttBufferUnfaded + (5 + gContestPlayerMonIndex) * 16, tempPalette2, 16 * sizeof(u16)); CpuCopy32(tempPalette2, gPlttBufferUnfaded + 128, 16 * sizeof(u16)); CpuCopy32(tempPalette1, gPlttBufferUnfaded + (5 + gContestPlayerMonIndex) * 16, 16 * sizeof(u16)); - DmaCopy32Defvars(3, gPlttBufferUnfaded, eUnknownHeap1A004.cachedWindowPalettes, sizeof(eUnknownHeap1A004.cachedWindowPalettes)); + DmaCopy32Defvars(3, gPlttBufferUnfaded, eContestTempSave.cachedWindowPalettes, sizeof(eContestTempSave.cachedWindowPalettes)); LoadContestPalettes(); break; case 6: @@ -1468,7 +1468,7 @@ static void Task_DisplayAppealNumberText(u8 taskId) gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; ContestDebugDoPrint(); - DmaCopy32Defvars(3, gPlttBufferUnfaded, eUnknownHeap1A004.unk18204, PLTT_BUFFER_SIZE * 2); + DmaCopy32Defvars(3, gPlttBufferUnfaded, eContestTempSave.cachedPlttBufferUnfaded, PLTT_BUFFER_SIZE * 2); ConvertIntToDecimalStringN(gStringVar1, eContest.appealNumber + 1, STR_CONV_MODE_LEFT_ALIGN, 1); if (!Contest_IsMonsTurnDisabled(gContestPlayerMonIndex)) StringCopy(gDisplayedStringBattle, gText_AppealNumWhichMoveWillBePlayed); @@ -1667,8 +1667,8 @@ static void Task_HideMoveSelectScreen(u8 taskId) } Contest_SetBgCopyFlags(0); // This seems to be a bug; it should have just copied PLTT_BUFFER_SIZE. - DmaCopy32Defvars(3, gPlttBufferFaded, eUnknownHeap1A004.unk18604, PLTT_BUFFER_SIZE * 2); - LoadPalette(eUnknownHeap1A004.unk18204, 0, PLTT_BUFFER_SIZE * 2); + DmaCopy32Defvars(3, gPlttBufferFaded, eContestTempSave.cachedPlttBufferFaded, PLTT_BUFFER_SIZE * 2); + LoadPalette(eContestTempSave.cachedPlttBufferUnfaded, 0, PLTT_BUFFER_SIZE * 2); gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = 0; gTasks[taskId].func = Task_HideApplauseMeterForAppealStart; @@ -2554,7 +2554,7 @@ static void Task_WaitForHeartSliders(u8 taskId) static void sub_80DA348(u8 taskId) { - DmaCopy32Defvars(3, eUnknownHeap1A004.unk18204, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * 2); + DmaCopy32Defvars(3, eContestTempSave.cachedPlttBufferUnfaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * 2); gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = 2; gTasks[taskId].func = Task_WaitPrintRoundResult; @@ -4412,7 +4412,7 @@ static void DrawContestantWindows(void) for (i = 0; i < CONTESTANT_COUNT; i++) { s32 windowId = i + 5; - LoadPalette(eUnknownHeap1A004.cachedWindowPalettes[windowId], (gContestantTurnOrder[i] + 5) * 16, sizeof(eUnknownHeap1A004.cachedWindowPalettes[0])); + LoadPalette(eContestTempSave.cachedWindowPalettes[windowId], (gContestantTurnOrder[i] + 5) * 16, sizeof(eContestTempSave.cachedWindowPalettes[0])); } DrawContestantWindowText(); } @@ -5530,7 +5530,6 @@ bool8 SaveContestWinner(u8 rank) if (rank == CONTEST_SAVE_FOR_MUSEUM && i != gContestPlayerMonIndex) return FALSE; - // Adjust the random painting caption depending on the category switch (gSpecialVar_ContestCategory) { diff --git a/src/contest_painting.c b/src/contest_painting.c index ca5d8c0a938e..d4bc8ca04e0c 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -159,7 +159,7 @@ static const struct OamData sContestPaintingMonOamData = .paletteNum = 0, }; -static const u16 sBg_Palette[] = {RGB_BLACK, RGB_BLACK}; +static const u16 sBgPalette[] = {RGB_BLACK, RGB_BLACK}; void SetContestWinnerForPainting(int contestWinnerId) { @@ -223,7 +223,7 @@ static void ShowContestPainting(void) break; case 4: PrintContestPaintingCaption(gCurContestWinnerSaveIdx, gCurContestWinnerIsForArtist); - LoadPalette(sBg_Palette, 0, 1 * 2); + LoadPalette(sBgPalette, 0, 1 * 2); DmaClear32(3, PLTT, PLTT_SIZE); BeginFastPaletteFade(2); SetVBlankCallback(VBlankCB_ContestPainting); @@ -278,12 +278,13 @@ static void InitContestPaintingWindow(void) ShowBg(1); } -static void PrintContestPaintingCaption(u8 contestType, bool8 noCaption) +static void PrintContestPaintingCaption(u8 contestType, bool8 isForArtist) { int x; u8 category; - if (noCaption == TRUE) + // Artist's painting has no caption + if (isForArtist == TRUE) return; category = gContestPaintingWinner->contestCategory; @@ -294,7 +295,7 @@ static void PrintContestPaintingCaption(u8 contestType, bool8 noCaption) StringAppend(gStringVar1, gText_Space); StringAppend(gStringVar1, sContestRankNames[gContestPaintingWinner->contestRank]); StringCopy(gStringVar2, gContestPaintingWinner->trainerName); - sub_81DB5AC(gStringVar2); + ConvertInternationalContestantName(gStringVar2); StringCopy(gStringVar3, gContestPaintingWinner->monName); StringExpandPlaceholders(gStringVar4, gContestHallPaintingCaption); } diff --git a/src/contest_util.c b/src/contest_util.c index c490a2f0e752..167f49876b92 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -856,7 +856,7 @@ static void Task_AnnounceWinner(u8 taskId) gTasks[taskId].tTimer = 0; GET_CONTEST_WINNER_ID(i); StringCopy(gStringVar1, gContestMons[i].trainerName); - sub_81DB5AC(gStringVar1); + ConvertInternationalContestantName(gStringVar1); StringCopy(gStringVar2, gContestMons[i].nickname); StringExpandPlaceholders(winnerTextBuffer, gText_ContestantsMonWon); x = DrawResultsTextWindow(winnerTextBuffer, sContestResults->data->slidingTextBoxSpriteId); @@ -2057,7 +2057,7 @@ void GiveMonContestRibbon(void) void BufferContestantTrainerName(void) { StringCopy(gStringVar1, gContestMons[gSpecialVar_0x8006].trainerName); - sub_81DB5AC(gStringVar1); + ConvertInternationalContestantName(gStringVar1); } void BufferContestantMonNickname(void) @@ -2096,7 +2096,7 @@ void BufferContestWinnerTrainerName(void) u8 i; GET_CONTEST_WINNER_ID(i); StringCopy(gStringVar3, gContestMons[i].trainerName); - sub_81DB5AC(gStringVar3); + ConvertInternationalContestantName(gStringVar3); } void BufferContestWinnerMonName(void) @@ -2279,6 +2279,10 @@ static void Task_LinkContest_WaitDisconnect(u8 taskId) } } +/* + A section of contest script functions starts here +*/ + void SetContestTrainerGfxIds(void) { gSaveBlock1Ptr->vars[VAR_OBJ_GFX_ID_0 - VARS_START] = gContestMons[0].trainerGfxId; @@ -2287,27 +2291,27 @@ void SetContestTrainerGfxIds(void) } // Unused -void sub_80F8814(void) +void GetNpcContestantLocalId(void) { - u16 var1; - u8 var0 = gSpecialVar_0x8005; - switch (var0) + u16 localId; + u8 contestant = gSpecialVar_0x8005; + switch (contestant) { case 0: - var1 = 3; + localId = 3; break; case 1: - var1 = 4; + localId = 4; break; case 2: - var1 = 5; + localId = 5; break; - default: - var1 = 100; + default: // Invalid + localId = 100; break; } - gSpecialVar_0x8004 = var1; + gSpecialVar_0x8004 = localId; } void BufferContestTrainerAndMonNames(void) @@ -2318,26 +2322,26 @@ void BufferContestTrainerAndMonNames(void) } // Unused -void DoesContestCategoryHaveWinner(void) +void DoesContestCategoryHaveMuseumPainting(void) { int contestWinner; switch (gSpecialVar_ContestCategory) { case CONTEST_CATEGORY_COOL: - contestWinner = 8; + contestWinner = CONTEST_WINNER_MUSEUM_COOL - 1; break; case CONTEST_CATEGORY_BEAUTY: - contestWinner = 9; + contestWinner = CONTEST_WINNER_MUSEUM_BEAUTY - 1; break; case CONTEST_CATEGORY_CUTE: - contestWinner = 10; + contestWinner = CONTEST_WINNER_MUSEUM_CUTE - 1; break; case CONTEST_CATEGORY_SMART: - contestWinner = 11; + contestWinner = CONTEST_WINNER_MUSEUM_SMART - 1; break; case CONTEST_CATEGORY_TOUGH: default: - contestWinner = 12; + contestWinner = CONTEST_WINNER_MUSEUM_TOUGH - 1; break; } @@ -2366,14 +2370,14 @@ void ShouldReadyContestArtist(void) } } -u8 CountPlayerContestPaintings(void) +u8 CountPlayerMuseumPaintings(void) { int i; u8 count = 0; - for (i = 0; i < 5; i++) + for (i = 0; i < NUM_CONTEST_WINNERS - MUSEUM_CONTEST_WINNERS_START; i++) { - if (gSaveBlock1Ptr->contestWinners[8 + i].species) + if (gSaveBlock1Ptr->contestWinners[MUSEUM_CONTEST_WINNERS_START + i].species) count++; } @@ -2381,19 +2385,21 @@ u8 CountPlayerContestPaintings(void) } // Unused -void sub_80F8970(void) +void GetContestantNamesAtRank(void) { s16 conditions[CONTESTANT_COUNT]; int i, j; s16 condition; - s8 var0; - u8 var2; - u8 r8; - u8 r7; + s8 numAtCondition; + u8 contestantOffset; + u8 tieRank; + u8 rank; + // Get round 1 points for (i = 0; i < CONTESTANT_COUNT; i++) conditions[i] = gContestMonRound1Points[i]; + // Sort round 1 points for (i = 0; i < CONTESTANT_COUNT - 1; i++) { for (j = CONTESTANT_COUNT - 1; j > i; j--) @@ -2406,47 +2412,54 @@ void sub_80F8970(void) } } + // Get round 1 points at specified rank condition = conditions[gSpecialVar_0x8006]; - var0 = 0; - r8 = 0; + + // Count number of contestants with the same number of points + numAtCondition = 0; + tieRank = 0; for (i = 0; i < CONTESTANT_COUNT; i++) { if (conditions[i] == condition) { - var0++; + numAtCondition++; if (i == gSpecialVar_0x8006) - r8 = var0; + tieRank = numAtCondition; } } + // Get rank of first contestant with the same number of points for (i = 0; i < CONTESTANT_COUNT; i++) { if (conditions[i] == condition) break; } + rank = i; - r7 = i; - var2 = r8; + // Get contestant id of player at rank (taking ties into account) + contestantOffset = tieRank; for (i = 0; i < CONTESTANT_COUNT; i++) { if (condition == gContestMonRound1Points[i]) { - if (var2 == 1) + if (contestantOffset == 1) break; - var2--; + contestantOffset--; } } + // Use contestant id to get names StringCopy(gStringVar1, gContestMons[i].nickname); StringCopy(gStringVar2, gContestMons[i].trainerName); - sub_81DB5AC(gStringVar2); + ConvertInternationalContestantName(gStringVar2); - if (var0 == 1) - gSpecialVar_0x8006 = r7; - else if (r8 == var0) - gSpecialVar_0x8006 = r7; + // Return adjusted rank + if (numAtCondition == 1) + gSpecialVar_0x8006 = rank; + else if (tieRank == numAtCondition) + gSpecialVar_0x8006 = rank; else - gSpecialVar_0x8006 = r7 + 4; + gSpecialVar_0x8006 = rank + CONTESTANT_COUNT; } static void ExitContestPainting(void) diff --git a/src/data/contest_opponents.h b/src/data/contest_opponents.h index a3d19c36c9de..b5466904b13d 100644 --- a/src/data/contest_opponents.h +++ b/src/data/contest_opponents.h @@ -192,7 +192,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("HANA"), .contestRank = CONTEST_RANK_HYPER }, - [CONTEST_WINNER_HALL_UNUSED - 1] = { + [CONTEST_WINNER_HALL_UNUSED_1 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_LOUDRED, @@ -201,7 +201,7 @@ const struct ContestWinner gDefaultContestWinners[] = .trainerName = _("BRYANT"), .contestRank = CONTEST_RANK_HYPER }, - [CONTEST_WINNER_MUSEUM_UNUSED - 1] = { + [CONTEST_WINNER_HALL_UNUSED_2 - 1] = { .personality = 0, .trainerId = 0xFFFF, .species = SPECIES_DELCATTY, diff --git a/src/international_string_util.c b/src/international_string_util.c index ed1e178161a0..ab812de891f2 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -185,7 +185,7 @@ void ConvertInternationalPlayerNameStripChar(u8 *str, u8 removeChar) } } -void sub_81DB5AC(u8 *str) +void ConvertInternationalContestantName(u8 *str) { if (*str++ == EXT_CTRL_CODE_BEGIN && *str++ == EXT_CTRL_CODE_JPN) { diff --git a/src/new_game.c b/src/new_game.c index 05d86aa8cf48..2a950efbc9c4 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -48,23 +48,19 @@ extern const u8 EventScript_ResetAllMapFlags[]; -// this file's functions static void ClearFrontierRecord(void); static void WarpToTruck(void); static void ResetMiniGamesRecords(void); -// EWRAM vars EWRAM_DATA bool8 gDifferentSaveFile = FALSE; EWRAM_DATA bool8 gEnableContestDebugging = FALSE; -// const rom data static const struct ContestWinner sContestWinnerPicDummy = { .monName = _(""), .trainerName = _("") }; -// code void SetTrainerId(u32 trainerId, u8 *dst) { dst[0] = trainerId; @@ -114,7 +110,9 @@ void ClearAllContestWinnerPics(void) s32 i; ClearContestWinnerPicsInContestHall(); - for (i = 8; i < 13; i++) + + // Clear Museum paintings + for (i = MUSEUM_CONTEST_WINNERS_START; i < NUM_CONTEST_WINNERS; i++) gSaveBlock1Ptr->contestWinners[i] = sContestWinnerPicDummy; } diff --git a/src/trainer_card.c b/src/trainer_card.c index 03a7b9219811..1ec519c90edb 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -661,7 +661,7 @@ u32 CountPlayerTrainerStars(void) stars++; if (HasAllHoennMons()) stars++; - if (CountPlayerContestPaintings() > 4) + if (CountPlayerMuseumPaintings() >= CONTEST_CATEGORIES_COUNT) stars++; if (HasAllFrontierSymbols()) stars++; @@ -735,7 +735,7 @@ static void SetPlayerCardData(struct TrainerCard *trainerCard, u8 cardType) case CARD_TYPE_FRLG: trainerCard->contestsWithFriends = GetCappedGameStat(GAME_STAT_WON_LINK_CONTEST, 999); trainerCard->pokeblocksWithFriends = GetCappedGameStat(GAME_STAT_POKEBLOCKS_WITH_FRIENDS, 0xFFFF); - if (CountPlayerContestPaintings() > 4) + if (CountPlayerMuseumPaintings() >= CONTEST_CATEGORIES_COUNT) trainerCard->hasAllPaintings = TRUE; trainerCard->stars = GetRubyTrainerStars(trainerCard); break; From 5c51a3ecc6558caca77e59761150def944cbb76c Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Thu, 22 Apr 2021 16:40:46 -0400 Subject: [PATCH 148/762] get rid of apprentice fakematching(s) --- src/apprentice.c | 46 ++++++++++++++-------------------------------- 1 file changed, 14 insertions(+), 32 deletions(-) diff --git a/src/apprentice.c b/src/apprentice.c index 7053a8b63702..0afee8d9b0cc 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -322,17 +322,8 @@ static void SetRandomQuestionData(void) FREE_AND_SET_NULL(gApprenticePartyMovesData); } -// No idea why a do-while loop is needed, but it will not match without it. - -#define APPRENTICE_SPECIES_ID(speciesArrId, monId) speciesArrId = (PLAYER_APPRENTICE.speciesIds[monId] >> \ - (((PLAYER_APPRENTICE.party >> monId) & 1) << 2)) & 0xF; \ - do {} while (0) - -// Why the need to have two macros do the exact thing differently? -#define APPRENTICE_SPECIES_ID_2(speciesArrId, monId) { u8 a0 = ((PLAYER_APPRENTICE.party >> monId) & 1);\ - speciesArrId = PLAYER_APPRENTICE.speciesIds[monId]; \ - speciesArrId = ((speciesArrId) >> (a0 << 2)) & 0xF; \ - } +#define APPRENTICE_SPECIES_ID(monId) \ + ((monId < MULTI_PARTY_SIZE) ? (PLAYER_APPRENTICE.speciesIds[monId] >> (((PLAYER_APPRENTICE.party >> monId) & 1) << 2) & 0xF) : 0) // Get the second move choice for the "Which move" question // Unlike the first move choice, this can be either a level up move or a TM/HM move @@ -348,15 +339,7 @@ static u16 GetRandomAlternateMove(u8 monId) bool32 shouldUseMove; u8 level; - if (monId < MULTI_PARTY_SIZE) - { - APPRENTICE_SPECIES_ID(id, monId); - } - else - { - id = 0; - } - + id = APPRENTICE_SPECIES_ID(monId); species = gApprentices[PLAYER_APPRENTICE.id].species[id]; learnset = gLevelUpLearnsets[species]; j = 0; @@ -551,7 +534,7 @@ static void SaveApprenticeParty(u8 numQuestions) // Save party species for (i = 0; i < MULTI_PARTY_SIZE; i++) { - APPRENTICE_SPECIES_ID(speciesTableId, i); + speciesTableId = APPRENTICE_SPECIES_ID(i); apprenticeMons[i]->species = gApprentices[PLAYER_APPRENTICE.id].species[speciesTableId]; GetLatestLearnedMoves(apprenticeMons[i]->species, apprenticeMons[i]->moves); } @@ -605,7 +588,7 @@ static void CreateApprenticeMenu(u8 menu) u16 species; u32 speciesTableId; - APPRENTICE_SPECIES_ID(speciesTableId, i); + speciesTableId = APPRENTICE_SPECIES_ID(i); species = gApprentices[PLAYER_APPRENTICE.id].species[speciesTableId]; strings[i] = gSpeciesNames[species]; } @@ -1014,9 +997,12 @@ static void InitQuestionData(void) && PLAYER_APPRENTICE.questionsAnswered < count + NUM_WHICH_MON_QUESTIONS && PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].questionId == QUESTION_ID_WHICH_MOVE) { + u8 a0; // count re-used as monId count = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].monId; - APPRENTICE_SPECIES_ID_2(id1, count); + a0 = ((PLAYER_APPRENTICE.party >> count) & 1); + id1 = PLAYER_APPRENTICE.speciesIds[count]; + id1 = ((id1) >> (a0 << 2)) & 0xF; 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; @@ -1028,9 +1014,12 @@ static void InitQuestionData(void) && PLAYER_APPRENTICE.questionsAnswered < count + NUM_WHICH_MON_QUESTIONS && PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].questionId == QUESTION_ID_WHAT_ITEM) { + u8 a0; // count re-used as monId count = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].monId; - APPRENTICE_SPECIES_ID_2(id2, count); + a0 = ((PLAYER_APPRENTICE.party >> count) & 1); + id2 = PLAYER_APPRENTICE.speciesIds[count]; + id2 = ((id2) >> (a0 << 2)) & 0xF; gApprenticeQuestionData->speciesId = gApprentices[PLAYER_APPRENTICE.id].species[id2]; } } @@ -1097,14 +1086,7 @@ static void ApprenticeBufferString(void) StringCopy(stringDst, gStringVar4); break; case APPRENTICE_BUFF_LEAD_MON_SPECIES: - if (PLAYER_APPRENTICE.leadMonId < MULTI_PARTY_SIZE) - { - APPRENTICE_SPECIES_ID(speciesArrayId, PLAYER_APPRENTICE.leadMonId); - } - else - { - speciesArrayId = 0; - } + speciesArrayId = APPRENTICE_SPECIES_ID(PLAYER_APPRENTICE.leadMonId); StringCopy(stringDst, gSpeciesNames[gApprentices[PLAYER_APPRENTICE.id].species[speciesArrayId]]); break; } From 6ebd0ccb577fb5ec9136173fb31202f25b548c47 Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Thu, 22 Apr 2021 17:20:28 -0400 Subject: [PATCH 149/762] add NO_COND macro --- src/apprentice.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/apprentice.c b/src/apprentice.c index 0afee8d9b0cc..f93a3e30bc86 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -325,6 +325,10 @@ static void SetRandomQuestionData(void) #define APPRENTICE_SPECIES_ID(monId) \ ((monId < MULTI_PARTY_SIZE) ? (PLAYER_APPRENTICE.speciesIds[monId] >> (((PLAYER_APPRENTICE.party >> monId) & 1) << 2) & 0xF) : 0) +#define APPRENTICE_SPECIES_ID_NO_COND(monId, count) \ + monId = ((PLAYER_APPRENTICE.party >> count) & 1); \ + monId = ((PLAYER_APPRENTICE.speciesIds[count]) >> (monId << 2)) & 0xF; \ + // Get the second move choice for the "Which move" question // Unlike the first move choice, this can be either a level up move or a TM/HM move static u16 GetRandomAlternateMove(u8 monId) @@ -997,12 +1001,9 @@ static void InitQuestionData(void) && PLAYER_APPRENTICE.questionsAnswered < count + NUM_WHICH_MON_QUESTIONS && PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].questionId == QUESTION_ID_WHICH_MOVE) { - u8 a0; // count re-used as monId count = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].monId; - a0 = ((PLAYER_APPRENTICE.party >> count) & 1); - id1 = PLAYER_APPRENTICE.speciesIds[count]; - id1 = ((id1) >> (a0 << 2)) & 0xF; + 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; @@ -1014,12 +1015,9 @@ static void InitQuestionData(void) && PLAYER_APPRENTICE.questionsAnswered < count + NUM_WHICH_MON_QUESTIONS && PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].questionId == QUESTION_ID_WHAT_ITEM) { - u8 a0; // count re-used as monId count = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].monId; - a0 = ((PLAYER_APPRENTICE.party >> count) & 1); - id2 = PLAYER_APPRENTICE.speciesIds[count]; - id2 = ((id2) >> (a0 << 2)) & 0xF; + APPRENTICE_SPECIES_ID_NO_COND(id2, count); gApprenticeQuestionData->speciesId = gApprentices[PLAYER_APPRENTICE.id].species[id2]; } } From 8c820878bfa91e7a00953e02a5e93847c5428468 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 22 Apr 2021 18:49:54 -0400 Subject: [PATCH 150/762] Document Battle Pyramid Bag --- include/battle_pyramid_bag.h | 54 +- include/menu.h | 4 +- include/menu_helpers.h | 2 +- include/strings.h | 3 +- src/battle_pyramid_bag.c | 976 ++++++++++++++++++----------------- src/item.c | 2 +- src/item_menu.c | 15 +- src/item_use.c | 18 +- src/menu.c | 19 +- src/menu_helpers.c | 2 +- src/party_menu.c | 4 +- src/script_menu.c | 2 +- src/strings.c | 13 +- 13 files changed, 594 insertions(+), 520 deletions(-) diff --git a/include/battle_pyramid_bag.h b/include/battle_pyramid_bag.h index df111b939fea..de571714c5d9 100644 --- a/include/battle_pyramid_bag.h +++ b/include/battle_pyramid_bag.h @@ -3,48 +3,72 @@ #include "list_menu.h" -struct PyramidBagResources +enum { + PYRAMIDBAG_LOC_FIELD, + PYRAMIDBAG_LOC_BATTLE, + PYRAMIDBAG_LOC_PARTY, + PYRAMIDBAG_LOC_CHOOSE_TOSS, + PYRAMIDBAG_LOC_PREV, +}; + +enum { + PBAG_SPRITE_BAG, + PBAG_SPRITE_ITEM_ICON, + PBAG_SPRITE_ITEM_ICON_ALT, + PBAG_SPRITE_SWAP_LINE_START, // Swap line consists of 8 sprites + PBAG_SPRITE_SWAP_LINE_2, + PBAG_SPRITE_SWAP_LINE_3, + PBAG_SPRITE_SWAP_LINE_4, + PBAG_SPRITE_SWAP_LINE_5, + PBAG_SPRITE_SWAP_LINE_6, + PBAG_SPRITE_SWAP_LINE_7, + PBAG_SPRITE_SWAP_LINE_END, + PBAG_SPRITE_COUNT +}; +#define NUM_SWAP_LINE_SPRITES (1 + PBAG_SPRITE_SWAP_LINE_END - PBAG_SPRITE_SWAP_LINE_START) + +struct PyramidBagMenu { - void (*callback2)(void); - u8 tilemapBuffer[0x800]; - u8 itemsSpriteIds[PYRAMID_BAG_ITEMS_COUNT + 1]; + void (*exitCallback)(void); + u8 tilemapBuffer[BG_SCREEN_SIZE]; + u8 spriteIds[PBAG_SPRITE_COUNT]; u8 windowIds[5]; - u8 unk814; - u8 unk815; + u8 toSwapPos; + bool8 isAltIcon; // Two item icons loaded at a time. Tracks which to show next u8 scrollIndicatorsTaskId; const u8 *menuActionIds; - u8 filler81C[0x820 - 0x81C]; + u8 unused1[4]; u8 menuActionsCount; u8 listMenuCount; u8 listMenuMaxShown; struct ListMenuItem bagListItems[PYRAMID_BAG_ITEMS_COUNT + 1]; u8 itemStrings[PYRAMID_BAG_ITEMS_COUNT + 1][ITEM_NAME_LENGTH + 10]; s16 state; - u8 filler986[0x98C - 0x986]; + u8 unused2[4]; }; -struct PyramidBagCursorData +struct PyramidBagMenuState { void (*callback)(void); - u8 unk4; + u8 location; u16 cursorPosition; u16 scrollPosition; }; -extern struct PyramidBagResources *gPyramidBagResources; -extern struct PyramidBagCursorData gPyramidBagCursorData; +extern struct PyramidBagMenu *gPyramidBagMenu; +extern struct PyramidBagMenuState gPyramidBagMenuState; void InitBattlePyramidBagCursorPosition(void); void CB2_PyramidBagMenuFromStartMenu(void); void CB2_ReturnToPyramidBagMenu(void); -void sub_81C5924(void); -void sub_81C59BC(void); +void UpdatePyramidBagList(void); +void UpdatePyramidBagCursorPos(void); void sub_81C4EFC(void); void GoToBattlePyramidBagMenu(u8 a0, void (*callback)(void)); void Task_CloseBattlePyramidBagMessage(u8 taskId); void TryStoreHeldItemsInPyramidBag(void); void ChooseItemsToTossFromPyramidBag(void); -void CloseBattlePyramidBagAndSetCallback(u8 taskId); +void CloseBattlePyramidBag(u8 taskId); void DisplayItemMessageInBattlePyramid(u8 taskId, const u8 *str, void (*callback)(u8 taskId)); #endif // GUARD_BATTLE_PYRAMID_BAG_H diff --git a/include/menu.h b/include/menu.h index c9d8e374df0d..07e00eb73056 100644 --- a/include/menu.h +++ b/include/menu.h @@ -90,8 +90,8 @@ void *malloc_and_decompress(const void *src, u32 *sizeOut); u16 copy_decompressed_tile_data_to_vram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode); void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8); -void sub_8198DBC(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8); -u8 sub_8199944(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); +void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8); +u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); u8 ChangeListMenuCursorPosition(s8 deltaX, s8 deltaY); u8 GetStartMenuWindowId(void); void ListMenuLoadStdPalAt(u8, u8); diff --git a/include/menu_helpers.h b/include/menu_helpers.h index c4401354b728..9909437a24cf 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -29,7 +29,7 @@ bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1); u8 GetLRKeysPressed(void); u8 GetLRKeysPressedAndHeld(void); bool8 sub_8122148(u16 itemId); -bool8 itemid_80BF6D8_mail_related(u16 itemId); +bool8 IsWritingMailAllowed(u16 itemId); bool8 MenuHelpers_LinkSomething(void); bool8 MenuHelpers_CallLinkSomething(void); void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount); diff --git a/include/strings.h b/include/strings.h index 8880f3a5c818..04283db0ee80 100644 --- a/include/strings.h +++ b/include/strings.h @@ -982,7 +982,8 @@ extern const u8 gText_RibbonsVar1[]; extern const u8 gText_OneDash[]; extern const u8 gText_TwoDashes[]; -extern const u8 *const gReturnToXStringsTable2[]; +extern const u8 *const gBagMenu_ReturnToStrings[]; +extern const u8 *const gPyramidBagMenu_ReturnToStrings[]; extern const u8 gText_NumPlayerLink[]; extern const u8 gText_ConfirmLinkWhenPlayersReady[]; diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 23f2f965306a..0b13512ec734 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -34,71 +34,83 @@ #include "constants/rgb.h" #include "constants/songs.h" -EWRAM_DATA struct PyramidBagResources *gPyramidBagResources = NULL; -EWRAM_DATA struct PyramidBagCursorData gPyramidBagCursorData = {0}; - -// This file's functions. -static void Task_HandlePyramidBagInput(u8 taskId); -static void Task_ChooseItemsToTossFromPyramidBag(u8 taskId); -static void sub_81C5B4C(u8 taskId); -static void Task_BeginItemSwap(u8 taskId); -static void sub_81C5D20(u8 taskId); -static void sub_81C674C(u8 taskId); -static void HandleMenuActionInput(u8 taskId); -static void HandleFewMenuActionsInput(u8 taskId); -static void sub_81C66EC(u8 taskId); -static void SetTaskToMainPyramidBagInputHandler(u8 taskId); -static void sub_81C6350(u8 taskId); -static void sub_81C64B4(u8 taskId); -static void sub_81C65CC(u8 taskId); -static void sub_81C66AC(u8 taskId); -static void PerformItemSwap(u8 taskId); -static void Task_ItemSwapHandleInput(u8 taskId); -static void sub_81C6A14(u8 taskId); +#define TAG_SCROLL_ARROW 2910 +#define TAG_PYRAMID_BAG 4132 +#define TAG_ITEM_ICON 4133 +#define TAG_ITEM_ICON_ALT 4134 + +#define POS_NONE ((u8)-1) + +enum { + WIN_LIST, + WIN_INFO, + WIN_MSG, + WIN_TOSS_NUM, +}; + +EWRAM_DATA struct PyramidBagMenu *gPyramidBagMenu = NULL; +EWRAM_DATA struct PyramidBagMenuState gPyramidBagMenuState = {0}; + +static void Task_HandlePyramidBagInput(u8); +static void Task_ChooseItemsToTossFromPyramidBag(u8); +static void Task_ClosePyramidBag(u8); +static void Task_BeginItemSwap(u8); +static void OpenContextMenu(u8); +static void TryCloseBagToGiveItem(u8); +static void HandleMenuActionInput_2x2(u8); +static void HandleMenuActionInput_SingleRow(u8); +static void Task_WaitCloseErrorMessage(u8); +static void SetTaskToMainPyramidBagInputHandler(u8); +static void AskConfirmToss(u8); +static void Task_ChooseHowManyToToss(u8); +static void Task_TossItem(u8); +static void ShowCantHoldMessage(u8); +static void PerformItemSwap(u8); +static void Task_ItemSwapHandleInput(u8); +static void CancelItemSwap(u8); static void SetBagItemsListTemplate(void); -static void sub_81C504C(void); -static void sub_81C51DC(void); -static void AddScrollArrow(void); -static void sub_81C56F8(void); -static void sub_81C5A20(void); -static void sub_81C6BD8(void); -static void sub_81C6EF4(void); +static void CB2_LoadPyramidBagMenu(void); +static void InitPyramidBagBgs(void); +static void AddScrollArrows(void); +static void CreatePyramidBagInputTask(void); +static void InitPyramidBagScroll(void); +static void InitPyramidBagWindows(void); +static void CreatePyramidBagSprite(void); static void CreateSwapLine(void); -static void sub_81C6E98(void); -static void sub_81C6F20(void); -static void sub_81C6404(void); +static void LoadPyramidBagPalette(void); +static void ShakePyramidBag(void); +static void ShowNumToToss(void); static void CloseBattlePyramidBagTextWindow(void); -static bool8 sub_81C5238(void); -static bool8 sub_81C5078(void); -static void ShowItemImage(u16 itemId, u8 itemSpriteArrayId); -static void PyramidBag_CopyItemName(u8 *dst, u16 itemId); -static void sub_81C6FF8(u8 arg0); -static void PrintItemDescription(s32 listMenuId); -static void sub_81C5AB8(u8 y, u8 arg1); -static void PrintOnWindow_Font1(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId); -static void PrintOnWindow_Font7(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId); -static u8 sub_81C6D24(u8 windowArrayId); -static void sub_81C6D6C(u8 windowArrayId); -static void sub_81C5EAC(u8 windowId); -static void sub_81C5F08(u8 windowId, u8 horizontalCount, u8 verticalCount); -static bool8 IsValidMenuAction(s8 arg0); -static void sub_81C6DAC(u8 taskId, const struct YesNoFuncTable *yesNoTable); -static void sub_81C6CEC(u8 windowId); -static void UpdateSwapLinePos(u8 y); -static void SetSwapLineInvisibility(bool8 invisible); -static void sub_81C6F68(struct Sprite *sprite); -static void BagAction_UseOnField(u8 taskId); -static void BagAction_Toss(u8 taskId); -static void BagAction_Give(u8 taskId); -static void BagAction_Cancel(u8 taskId); -static void BagAction_UseInBattle(u8 taskId); -static void PyramidBagMoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list); -static void PrintItemQuantity(u8 windowId, s32 itemIndex, u8 y); -static void TossItem(u8 taskId); -static void DontTossItem(u8 taskId); - -// Const rom data. -static const struct BgTemplate gUnknown_0861F2B4[] = +static bool8 LoadPyramidBagGfx(void); +static bool8 LoadPyramidBagMenu(void); +static void ShowItemIcon(u16, u8); +static void CopyBagItemName(u8 *, u16); +static void FreeItemIconSpriteByAltId(u8); +static void PrintItemDescription(s32); +static void PrintSelectorArrowAtPos(u8, u8); +static void PrintOnWindow_Font1(u8, const u8 *, u8, u8, u8, u8, u8, u8); +static void PrintOnWindow_Font7(u8, const u8 *, u8, u8, u8, u8, u8, u8); +static u8 OpenMenuActionWindowById(u8); +static void CloseMenuActionWindowById(u8); +static void PrintMenuActionText_SingleRow(u8); +static void PrintMenuActionText_MultiRow(u8, u8, u8); +static bool8 IsValidMenuAction(s8); +static void CreatePyramidBagYesNo(u8, const struct YesNoFuncTable *); +static void DrawTossNumberWindow(u8); +static void UpdateSwapLinePos(u8); +static void SetSwapLineInvisibility(bool8); +static void SpriteCB_BagWaitForShake(struct Sprite *); +static void BagAction_UseOnField(u8); +static void BagAction_Toss(u8); +static void BagAction_Give(u8); +static void BagAction_Cancel(u8); +static void BagAction_UseInBattle(u8); +static void BagCursorMoved(s32, bool8, struct ListMenu *); +static void PrintItemQuantity(u8, s32, u8); +static void TossItem(u8); +static void DontTossItem(u8); + +static const struct BgTemplate sBgTemplates[] = { { .bg = 0, @@ -129,14 +141,14 @@ static const struct BgTemplate gUnknown_0861F2B4[] = }, }; -static const struct ListMenuTemplate gUnknown_0861F2C0 = +static const struct ListMenuTemplate sListMenuTemplate = { .items = NULL, - .moveCursorFunc = PyramidBagMoveCursorFunc, + .moveCursorFunc = BagCursorMoved, .itemPrintFunc = PrintItemQuantity, .totalItems = 0, .maxShowed = 0, - .windowId = 0, + .windowId = WIN_LIST, .header_X = 0, .item_X = 8, .cursor_X = 0, @@ -151,12 +163,14 @@ static const struct ListMenuTemplate gUnknown_0861F2C0 = .cursorKind = 0 }; -#define ACTION_USE_FIELD 0 -#define ACTION_TOSS 1 -#define ACTION_GIVE 2 -#define ACTION_CANCEL 3 -#define ACTION_USE_BATTLE 4 -#define ACTION_DUMMY 5 +enum { + ACTION_USE_FIELD, + ACTION_TOSS, + ACTION_GIVE, + ACTION_CANCEL, + ACTION_USE_BATTLE, + ACTION_DUMMY, +}; static const struct MenuAction sMenuActions[] = { @@ -168,26 +182,33 @@ static const struct MenuAction sMenuActions[] = [ACTION_DUMMY] = { gText_EmptyString2, NULL }, }; -static const u8 sFieldMenuActionIds[] = {ACTION_USE_FIELD, ACTION_GIVE, ACTION_TOSS, ACTION_CANCEL}; -static const u8 gUnknown_0861F30C[] = {ACTION_TOSS, ACTION_CANCEL}; -static const u8 sBattleMenuActionIds[] = {ACTION_USE_BATTLE, ACTION_CANCEL}; -static const u8 gUnknown_0861F310[] = {ACTION_CANCEL}; +static const u8 sMenuActionIds_Field[] = {ACTION_USE_FIELD, ACTION_GIVE, ACTION_TOSS, ACTION_CANCEL}; +static const u8 sMenuActionIds_ChooseToss[] = {ACTION_TOSS, ACTION_CANCEL}; +static const u8 sMenuActionIds_Battle[] = {ACTION_USE_BATTLE, ACTION_CANCEL}; +static const u8 sMenuActionIds_BattleCannotUse[] = {ACTION_CANCEL}; static const struct YesNoFuncTable sYesNoTossFuncions = { TossItem, DontTossItem }; -static const u8 sColorTable[][3] = +enum { + COLORID_DARK_GRAY, + COLORID_LIGHT_GRAY, + COLORID_WHITE_BG, + COLORID_NONE = 0xFF +}; + +static const u8 sTextColors[][3] = { - {0, 2, 3}, - {0, 3, 1}, - {1, 2, 3}, + [COLORID_DARK_GRAY] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, + [COLORID_LIGHT_GRAY] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_WHITE}, + [COLORID_WHITE_BG] = {TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, // Unused }; -static const struct WindowTemplate gUnknown_0861F328[] = +static const struct WindowTemplate sWindowTemplates[] = { - { + [WIN_LIST] = { .bg = 0, .tilemapLeft = 14, .tilemapTop = 2, @@ -196,7 +217,7 @@ static const struct WindowTemplate gUnknown_0861F328[] = .paletteNum = 15, .baseBlock = 30 }, - { + [WIN_INFO] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, @@ -205,7 +226,7 @@ static const struct WindowTemplate gUnknown_0861F328[] = .paletteNum = 15, .baseBlock = 270 }, - { + [WIN_MSG] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 15, @@ -214,7 +235,7 @@ static const struct WindowTemplate gUnknown_0861F328[] = .paletteNum = 15, .baseBlock = 354 }, - { + [WIN_TOSS_NUM] = { .bg = 1, .tilemapLeft = 24, .tilemapTop = 17, @@ -226,9 +247,17 @@ static const struct WindowTemplate gUnknown_0861F328[] = DUMMY_WIN_TEMPLATE, }; -static const struct WindowTemplate gUnknown_0861F350[] = +enum { + MENU_WIN_1x1, + MENU_WIN_1x2, + MENU_WIN_2x2, + MENU_WIN_2x3, + MENU_WIN_YESNO, +}; + +static const struct WindowTemplate sWindowTemplates_MenuActions[] = { - { + [MENU_WIN_1x1] = { .bg = 1, .tilemapLeft = 22, .tilemapTop = 17, @@ -237,7 +266,7 @@ static const struct WindowTemplate gUnknown_0861F350[] = .paletteNum = 15, .baseBlock = 472 }, - { + [MENU_WIN_1x2] = { .bg = 1, .tilemapLeft = 22, .tilemapTop = 15, @@ -246,7 +275,7 @@ static const struct WindowTemplate gUnknown_0861F350[] = .paletteNum = 15, .baseBlock = 472 }, - { + [MENU_WIN_2x2] = { .bg = 1, .tilemapLeft = 15, .tilemapTop = 15, @@ -255,7 +284,7 @@ static const struct WindowTemplate gUnknown_0861F350[] = .paletteNum = 15, .baseBlock = 472 }, - { + [MENU_WIN_2x3] = { // Unused .bg = 1, .tilemapLeft = 15, .tilemapTop = 13, @@ -264,7 +293,7 @@ static const struct WindowTemplate gUnknown_0861F350[] = .paletteNum = 15, .baseBlock = 472 }, - { + [MENU_WIN_YESNO] = { .bg = 1, .tilemapLeft = 24, .tilemapTop = 15, @@ -275,7 +304,7 @@ static const struct WindowTemplate gUnknown_0861F350[] = }, }; -static const struct OamData gOamData_861F378 = +static const struct OamData sOamData_PyramidBag = { .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, @@ -292,24 +321,24 @@ static const struct OamData gOamData_861F378 = .affineParam = 0, }; -static const union AnimCmd gSpriteAnim_861F380[] = +static const union AnimCmd sAnim_PyramidBag[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_END, }; -static const union AnimCmd * const gSpriteAnimTable_861F388[] = +static const union AnimCmd * const sAnims_PyramidBag[] = { - gSpriteAnim_861F380, + sAnim_PyramidBag, }; -static const union AffineAnimCmd gSpriteAffineAnim_861F38C[] = +static const union AffineAnimCmd sAffineAnim_PyramidBag_Still[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_861F39C[] = +static const union AffineAnimCmd sAffineAnim_PyramidBag_Shake[] = { AFFINEANIMCMD_FRAME(0, 0, 254, 2), AFFINEANIMCMD_FRAME(0, 0, 2, 4), @@ -318,42 +347,50 @@ static const union AffineAnimCmd gSpriteAffineAnim_861F39C[] = AFFINEANIMCMD_END, }; -static const union AffineAnimCmd * const gSpriteAffineAnimTable_861F3C4[] = +enum { + ANIM_BAG_STILL, + ANIM_BAG_SHAKE, +}; + +static const union AffineAnimCmd * const sAffineAnims_PyramidBag[] = { - gSpriteAffineAnim_861F38C, - gSpriteAffineAnim_861F39C, + [ANIM_BAG_STILL] = sAffineAnim_PyramidBag_Still, + [ANIM_BAG_SHAKE] = sAffineAnim_PyramidBag_Shake, }; -static const struct CompressedSpriteSheet gPyramidBagSpriteSheet = {gBattleFrontierGfx_PyramidBag, 0x0800, 0x1024}; +static const struct CompressedSpriteSheet sSpriteSheet_PyramidBag = {gBattleFrontierGfx_PyramidBag, 0x0800, TAG_PYRAMID_BAG}; -static const struct SpriteTemplate gUnknown_0861F3D4 = +static const struct SpriteTemplate sSpriteTemplate_PyramidBag = { - .tileTag = 0x1024, - .paletteTag = 0x1024, - .oam = &gOamData_861F378, - .anims = gSpriteAnimTable_861F388, + .tileTag = TAG_PYRAMID_BAG, + .paletteTag = TAG_PYRAMID_BAG, + .oam = &sOamData_PyramidBag, + .anims = sAnims_PyramidBag, .images = NULL, - .affineAnims = gSpriteAffineAnimTable_861F3C4, + .affineAnims = sAffineAnims_PyramidBag, .callback = SpriteCallbackDummy }; -// code void InitBattlePyramidBagCursorPosition(void) { - gPyramidBagCursorData.cursorPosition = 0; - gPyramidBagCursorData.scrollPosition = 0; + gPyramidBagMenuState.cursorPosition = 0; + gPyramidBagMenuState.scrollPosition = 0; } void CB2_PyramidBagMenuFromStartMenu(void) { - GoToBattlePyramidBagMenu(0, CB2_ReturnToFieldWithOpenMenu); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_FIELD, CB2_ReturnToFieldWithOpenMenu); } -static void sub_81C4F10(void) +// Unused, CB2_BagMenuFromBattle is used instead +static void OpenBattlePyramidBagInBattle(void) { - GoToBattlePyramidBagMenu(1, CB2_SetUpReshowBattleScreenAfterMenu2); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2); } +// If the player finishes a round at the Battle Pyramid with insufficient space in their +// Pyramid Bag to store the party's held items, they may choose items to toss in order to +// make room. void ChooseItemsToTossFromPyramidBag(void) { ScriptContext2_Enable(); @@ -367,37 +404,37 @@ static void Task_ChooseItemsToTossFromPyramidBag(u8 taskId) { CleanupOverworldWindowsAndTilemaps(); gFieldCallback2 = CB2_FadeFromPartyMenu; - GoToBattlePyramidBagMenu(3, CB2_ReturnToField); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_CHOOSE_TOSS, CB2_ReturnToField); DestroyTask(taskId); } } void CB2_ReturnToPyramidBagMenu(void) { - GoToBattlePyramidBagMenu(4, gPyramidBagCursorData.callback); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.callback); } -void GoToBattlePyramidBagMenu(u8 a0, void (*callback)(void)) +void GoToBattlePyramidBagMenu(u8 location, void (*callback)(void)) { - gPyramidBagResources = AllocZeroed(sizeof(*gPyramidBagResources)); + gPyramidBagMenu = AllocZeroed(sizeof(*gPyramidBagMenu)); - if (a0 != 4) - gPyramidBagCursorData.unk4 = a0; + if (location != PYRAMIDBAG_LOC_PREV) + gPyramidBagMenuState.location = location; if (callback != NULL) - gPyramidBagCursorData.callback = callback; + gPyramidBagMenuState.callback = callback; - gPyramidBagResources->callback2 = NULL; - gPyramidBagResources->unk814 = 0xFF; - gPyramidBagResources->scrollIndicatorsTaskId = TASK_NONE; + gPyramidBagMenu->exitCallback = NULL; + gPyramidBagMenu->toSwapPos = POS_NONE; + gPyramidBagMenu->scrollIndicatorsTaskId = TASK_NONE; - memset(gPyramidBagResources->itemsSpriteIds, 0xFF, sizeof(gPyramidBagResources->itemsSpriteIds)); - memset(gPyramidBagResources->windowIds, WINDOW_NONE, sizeof(gPyramidBagResources->windowIds)); + memset(gPyramidBagMenu->spriteIds, SPRITE_NONE, sizeof(gPyramidBagMenu->spriteIds)); + memset(gPyramidBagMenu->windowIds, WINDOW_NONE, sizeof(gPyramidBagMenu->windowIds)); - SetMainCallback2(sub_81C504C); + SetMainCallback2(CB2_LoadPyramidBagMenu); } -static void sub_81C501C(void) +static void CB2_PyramidBag(void) { RunTasks(); AnimateSprites(); @@ -406,19 +443,21 @@ static void sub_81C501C(void) UpdatePaletteFade(); } -static void sub_81C5038(void) +static void VBlankCB_PyramidBag(void) { LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); } -static void sub_81C504C(void) +static void CB2_LoadPyramidBagMenu(void) { - while (MenuHelpers_CallLinkSomething() != TRUE && sub_81C5078() != TRUE && MenuHelpers_LinkSomething() != TRUE); + while (MenuHelpers_CallLinkSomething() != TRUE + && LoadPyramidBagMenu() != TRUE + && MenuHelpers_LinkSomething() != TRUE); } -static bool8 sub_81C5078(void) +static bool8 LoadPyramidBagMenu(void) { switch (gMain.state) { @@ -446,30 +485,26 @@ static bool8 sub_81C5078(void) break; case 5: if (!MenuHelpers_LinkSomething()) - { ResetTasks(); - } gMain.state++; break; case 6: - sub_81C51DC(); - gPyramidBagResources->state = 0; + InitPyramidBagBgs(); + gPyramidBagMenu->state = 0; gMain.state++; break; case 7: - if (sub_81C5238()) - { + if (LoadPyramidBagGfx()) gMain.state++; - } break; case 8: - sub_81C6BD8(); + InitPyramidBagWindows(); gMain.state++; break; case 9: - sub_81C5924(); - sub_81C59BC(); - sub_81C5A20(); + UpdatePyramidBagList(); + UpdatePyramidBagCursorPos(); + InitPyramidBagScroll(); gMain.state++; break; case 10: @@ -477,15 +512,15 @@ static bool8 sub_81C5078(void) gMain.state++; break; case 11: - sub_81C56F8(); + CreatePyramidBagInputTask(); gMain.state++; break; case 12: - sub_81C6EF4(); + CreatePyramidBagSprite(); gMain.state++; break; case 13: - AddScrollArrow(); + AddScrollArrows(); gMain.state++; break; case 14: @@ -493,28 +528,28 @@ static bool8 sub_81C5078(void) gMain.state++; break; case 15: - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 16, 0); gMain.state++; break; case 16: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); gPaletteFade.bufferTransferDisabled = FALSE; gMain.state++; break; default: - SetVBlankCallback(sub_81C5038); - SetMainCallback2(sub_81C501C); + SetVBlankCallback(VBlankCB_PyramidBag); + SetMainCallback2(CB2_PyramidBag); return TRUE; } return FALSE; } -static void sub_81C51DC(void) +static void InitPyramidBagBgs(void) { ResetVramOamAndBgCntRegs(); ResetBgsAndClearDma3BusyFlags(0); - InitBgsFromTemplates(0, gUnknown_0861F2B4, ARRAY_COUNT(gUnknown_0861F2B4)); - SetBgTilemapBuffer(2, gPyramidBagResources->tilemapBuffer); + InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); + SetBgTilemapBuffer(2, gPyramidBagMenu->tilemapBuffer); ResetAllBgsCoordinates(); ScheduleBgCopyTilemapToVram(2); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | @@ -526,37 +561,37 @@ static void sub_81C51DC(void) SetGpuReg(REG_OFFSET_BLDCNT, 0); } -static bool8 sub_81C5238(void) +static bool8 LoadPyramidBagGfx(void) { - switch (gPyramidBagResources->state) + switch (gPyramidBagMenu->state) { case 0: ResetTempTileDataBuffers(); DecompressAndCopyTileDataToVram(2, gBagScreen_Gfx, 0, 0, 0); - gPyramidBagResources->state++; + gPyramidBagMenu->state++; break; case 1: if (FreeTempTileDataBuffersIfPossible() != TRUE) { - LZDecompressWram(gBattleFrontierGfx_PyramidBagTileMap, gPyramidBagResources->tilemapBuffer); - gPyramidBagResources->state++; + LZDecompressWram(gBattleFrontierGfx_PyramidBagTileMap, gPyramidBagMenu->tilemapBuffer); + gPyramidBagMenu->state++; } break; case 2: - LoadCompressedPalette(gUnknown_08D9AF44, 0, 0x20); - gPyramidBagResources->state++; + LoadCompressedPalette(gUnknown_08D9AF44, 0, 32); + gPyramidBagMenu->state++; break; case 3: - LoadCompressedSpriteSheet(&gPyramidBagSpriteSheet); - gPyramidBagResources->state++; + LoadCompressedSpriteSheet(&sSpriteSheet_PyramidBag); + gPyramidBagMenu->state++; break; case 4: - sub_81C6E98(); - gPyramidBagResources->state++; + LoadPyramidBagPalette(); + gPyramidBagMenu->state++; break; default: LoadListMenuSwapLineGfx(); - gPyramidBagResources->state = 0; + gPyramidBagMenu->state = 0; return TRUE; } @@ -566,24 +601,24 @@ static bool8 sub_81C5238(void) static void SetBagItemsListTemplate(void) { u16 i; - u16 *pyramidItems = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode]; + u16 *itemIds = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode]; - for (i = 0; i < gPyramidBagResources->listMenuCount - 1; i++) + for (i = 0; i < gPyramidBagMenu->listMenuCount - 1; i++) { - PyramidBag_CopyItemName(gPyramidBagResources->itemStrings[i], pyramidItems[i]); - gPyramidBagResources->bagListItems[i].name = gPyramidBagResources->itemStrings[i]; - gPyramidBagResources->bagListItems[i].id = i; + CopyBagItemName(gPyramidBagMenu->itemStrings[i], itemIds[i]); + gPyramidBagMenu->bagListItems[i].name = gPyramidBagMenu->itemStrings[i]; + gPyramidBagMenu->bagListItems[i].id = i; } - StringCopy(gPyramidBagResources->itemStrings[i], gText_CloseBag); - gPyramidBagResources->bagListItems[i].name = gPyramidBagResources->itemStrings[i]; - gPyramidBagResources->bagListItems[i].id = LIST_CANCEL; - gMultiuseListMenuTemplate = gUnknown_0861F2C0; - gMultiuseListMenuTemplate.totalItems = gPyramidBagResources->listMenuCount; - gMultiuseListMenuTemplate.items = gPyramidBagResources->bagListItems; - gMultiuseListMenuTemplate.maxShowed = gPyramidBagResources->listMenuMaxShown; + StringCopy(gPyramidBagMenu->itemStrings[i], gText_CloseBag); + gPyramidBagMenu->bagListItems[i].name = gPyramidBagMenu->itemStrings[i]; + gPyramidBagMenu->bagListItems[i].id = LIST_CANCEL; + gMultiuseListMenuTemplate = sListMenuTemplate; + gMultiuseListMenuTemplate.totalItems = gPyramidBagMenu->listMenuCount; + gMultiuseListMenuTemplate.items = gPyramidBagMenu->bagListItems; + gMultiuseListMenuTemplate.maxShowed = gPyramidBagMenu->listMenuMaxShown; } -static void PyramidBag_CopyItemName(u8 *dst, u16 itemId) +static void CopyBagItemName(u8 *dst, u16 itemId) { if (ItemId_GetPocket(itemId) == POCKET_BERRIES) { @@ -597,21 +632,21 @@ static void PyramidBag_CopyItemName(u8 *dst, u16 itemId) } } -static void PyramidBagMoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list) +static void BagCursorMoved(s32 itemIndex, bool8 onInit, struct ListMenu *list) { if (onInit != TRUE) { PlaySE(SE_SELECT); - sub_81C6F20(); + ShakePyramidBag(); } - if (gPyramidBagResources->unk814 == 0xFF) + if (gPyramidBagMenu->toSwapPos == POS_NONE) { - sub_81C6FF8(gPyramidBagResources->unk815 ^ 1); + FreeItemIconSpriteByAltId(gPyramidBagMenu->isAltIcon ^ 1); if (itemIndex != LIST_CANCEL) - ShowItemImage(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][itemIndex], gPyramidBagResources->unk815); + ShowItemIcon(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][itemIndex], gPyramidBagMenu->isAltIcon); else - ShowItemImage(0xFFFF, gPyramidBagResources->unk815); - gPyramidBagResources->unk815 ^= 1; + ShowItemIcon(0xFFFF, gPyramidBagMenu->isAltIcon); // Show exit arrow if on Cancel + gPyramidBagMenu->isAltIcon ^= 1; PrintItemDescription(itemIndex); } } @@ -622,20 +657,23 @@ static void PrintItemQuantity(u8 windowId, s32 itemIndex, u8 y) if (itemIndex == LIST_CANCEL) return; - if (gPyramidBagResources->unk814 != 0xFF) + if (gPyramidBagMenu->toSwapPos != POS_NONE) { - if (gPyramidBagResources->unk814 == (u8)(itemIndex)) - sub_81C5AB8(y, 1); + // Performing a swap. Keep a gray selector arrow on the position to swap to + // and erase the selector arrow anywhere else + if (gPyramidBagMenu->toSwapPos == (u8)(itemIndex)) + PrintSelectorArrowAtPos(y, COLORID_LIGHT_GRAY); else - sub_81C5AB8(y, 0xFF); + PrintSelectorArrowAtPos(y, COLORID_NONE); } + ConvertIntToDecimalStringN(gStringVar1, gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode][itemIndex], STR_CONV_MODE_RIGHT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); - xAlign = GetStringRightAlignXOffset(7, gStringVar4, 0x77); - PrintOnWindow_Font7(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SPEED_FF, 0); + xAlign = GetStringRightAlignXOffset(7, gStringVar4, 119); + PrintOnWindow_Font7(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SPEED_FF, COLORID_DARK_GRAY); } static void PrintItemDescription(s32 listMenuId) @@ -647,34 +685,42 @@ static void PrintItemDescription(s32 listMenuId) } else { - StringCopy(gStringVar1, gReturnToXStringsTable2[gPyramidBagCursorData.unk4]); + StringCopy(gStringVar1, gPyramidBagMenu_ReturnToStrings[gPyramidBagMenuState.location]); StringExpandPlaceholders(gStringVar4, gText_ReturnToVar1); desc = gStringVar4; } - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, desc, 3, 0, 0, 1, 0, 0); + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, desc, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); } -static void AddScrollArrow(void) +static void AddScrollArrows(void) { - if (gPyramidBagResources->scrollIndicatorsTaskId == TASK_NONE) - gPyramidBagResources->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(2, 172, 12, 148, gPyramidBagResources->listMenuCount - gPyramidBagResources->listMenuMaxShown, 0xB5E, 0xB5E, &gPyramidBagCursorData.scrollPosition); + if (gPyramidBagMenu->scrollIndicatorsTaskId == TASK_NONE) + gPyramidBagMenu->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 172, 12, 148, + gPyramidBagMenu->listMenuCount - gPyramidBagMenu->listMenuMaxShown, + TAG_SCROLL_ARROW, TAG_SCROLL_ARROW, + &gPyramidBagMenuState.scrollPosition); } static void RemoveScrollArrow(void) { - if (gPyramidBagResources->scrollIndicatorsTaskId != TASK_NONE) + if (gPyramidBagMenu->scrollIndicatorsTaskId != TASK_NONE) { - RemoveScrollIndicatorArrowPair(gPyramidBagResources->scrollIndicatorsTaskId); - gPyramidBagResources->scrollIndicatorsTaskId = TASK_NONE; + RemoveScrollIndicatorArrowPair(gPyramidBagMenu->scrollIndicatorsTaskId); + gPyramidBagMenu->scrollIndicatorsTaskId = TASK_NONE; } } -static void sub_81C56F8(void) +#define tListTaskId data[0] +#define tListPos data[1] +#define tQuantity data[2] +#define tNumToToss data[8] + +static void CreatePyramidBagInputTask(void) { u8 taskId = CreateTask(Task_HandlePyramidBagInput, 0); s16 *data = gTasks[taskId].data; - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gPyramidBagCursorData.scrollPosition, gPyramidBagCursorData.cursorPosition); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gPyramidBagMenuState.scrollPosition, gPyramidBagMenuState.cursorPosition); } static void SwapItems(u8 id1, u8 id2) @@ -728,9 +774,9 @@ static void CompactItems(void) for (i = 0; i < PYRAMID_BAG_ITEMS_COUNT; i++) { - if (itemIds[i] == 0 || quantities[i] == 0) + if (itemIds[i] == ITEM_NONE || quantities[i] == 0) { - itemIds[i] = 0; + itemIds[i] = ITEM_NONE; quantities[i] = 0; } } @@ -738,98 +784,97 @@ static void CompactItems(void) { for (j = i + 1; j < PYRAMID_BAG_ITEMS_COUNT; j++) { - if (itemIds[i] == 0 || quantities[i] == 0) + if (itemIds[i] == ITEM_NONE || quantities[i] == 0) SwapItems(i, j); } } } -void sub_81C5924(void) +void UpdatePyramidBagList(void) { u16 i; u16 *itemIds = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode]; CompactItems(); - gPyramidBagResources->listMenuCount = 0; + gPyramidBagMenu->listMenuCount = 0; for (i = 0; i < PYRAMID_BAG_ITEMS_COUNT; i++) { - if (itemIds[i] != 0) - gPyramidBagResources->listMenuCount++; + if (itemIds[i] != ITEM_NONE) + gPyramidBagMenu->listMenuCount++; } - gPyramidBagResources->listMenuCount++; - if (gPyramidBagResources->listMenuCount > 8) - gPyramidBagResources->listMenuMaxShown = 8; + gPyramidBagMenu->listMenuCount++; + if (gPyramidBagMenu->listMenuCount > 8) + gPyramidBagMenu->listMenuMaxShown = 8; else - gPyramidBagResources->listMenuMaxShown = gPyramidBagResources->listMenuCount; + gPyramidBagMenu->listMenuMaxShown = gPyramidBagMenu->listMenuCount; } -void sub_81C59BC(void) +void UpdatePyramidBagCursorPos(void) { - if (gPyramidBagCursorData.scrollPosition != 0 && gPyramidBagCursorData.scrollPosition + gPyramidBagResources->listMenuMaxShown > gPyramidBagResources->listMenuCount) - gPyramidBagCursorData.scrollPosition = gPyramidBagResources->listMenuCount - gPyramidBagResources->listMenuMaxShown; - if (gPyramidBagCursorData.scrollPosition + gPyramidBagCursorData.cursorPosition >= gPyramidBagResources->listMenuCount) + if (gPyramidBagMenuState.scrollPosition != 0 && gPyramidBagMenuState.scrollPosition + gPyramidBagMenu->listMenuMaxShown > gPyramidBagMenu->listMenuCount) + gPyramidBagMenuState.scrollPosition = gPyramidBagMenu->listMenuCount - gPyramidBagMenu->listMenuMaxShown; + + if (gPyramidBagMenuState.scrollPosition + gPyramidBagMenuState.cursorPosition >= gPyramidBagMenu->listMenuCount) { - if (gPyramidBagResources->listMenuCount == 0) - gPyramidBagCursorData.cursorPosition = 0; + if (gPyramidBagMenu->listMenuCount == 0) + gPyramidBagMenuState.cursorPosition = 0; else - gPyramidBagCursorData.cursorPosition = gPyramidBagResources->listMenuCount - 1; + gPyramidBagMenuState.cursorPosition = gPyramidBagMenu->listMenuCount - 1; } } -static void sub_81C5A20(void) +static void InitPyramidBagScroll(void) { u8 i; - if (gPyramidBagCursorData.cursorPosition > 4) + if (gPyramidBagMenuState.cursorPosition > 4) { - for (i = 0; i <= gPyramidBagCursorData.cursorPosition - 4; i++) + for (i = 0; i <= gPyramidBagMenuState.cursorPosition - 4; i++) { - if (gPyramidBagCursorData.scrollPosition + gPyramidBagResources->listMenuMaxShown == gPyramidBagResources->listMenuCount) - { - // daycare.c sends its regards. + if (gPyramidBagMenuState.scrollPosition + gPyramidBagMenu->listMenuMaxShown == gPyramidBagMenu->listMenuCount) break; - } - gPyramidBagCursorData.cursorPosition--; - gPyramidBagCursorData.scrollPosition++; + + gPyramidBagMenuState.cursorPosition--; + gPyramidBagMenuState.scrollPosition++; } } } -static void sub_81C5A98(u8 listMenuTaskId, u8 arg1) +static void PrintSelectorArrow(u8 listMenuTaskId, u8 colorId) { u8 y = ListMenuGetYCoordForPrintingArrowCursor(listMenuTaskId); - sub_81C5AB8(y, arg1); + PrintSelectorArrowAtPos(y, colorId); } -static void sub_81C5AB8(u8 y, u8 arg1) +static void PrintSelectorArrowAtPos(u8 y, u8 colorId) { - if (arg1 == 0xFF) - FillWindowPixelRect(0, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); + if (colorId == COLORID_NONE) // If 'no color', erase arrow + FillWindowPixelRect(WIN_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); else - PrintOnWindow_Font1(0, gText_SelectorArrow2, 0, y, 0, 0, 0, arg1); + PrintOnWindow_Font1(WIN_LIST, gText_SelectorArrow2, 0, y, 0, 0, 0, colorId); } -void CloseBattlePyramidBagAndSetCallback(u8 taskId) +void CloseBattlePyramidBag(u8 taskId) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gTasks[taskId].func = sub_81C5B4C; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + gTasks[taskId].func = Task_ClosePyramidBag; } -static void sub_81C5B4C(u8 taskId) +static void Task_ClosePyramidBag(u8 taskId) { s16 *data = gTasks[taskId].data; if (!gPaletteFade.active) { - DestroyListMenuTask(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); - if (gPyramidBagResources->callback2 != NULL) - SetMainCallback2(gPyramidBagResources->callback2); + DestroyListMenuTask(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); + if (gPyramidBagMenu->exitCallback != NULL) + SetMainCallback2(gPyramidBagMenu->exitCallback); else - SetMainCallback2(gPyramidBagCursorData.callback); + SetMainCallback2(gPyramidBagMenuState.callback); RemoveScrollArrow(); ResetSpriteData(); FreeAllSpritePalettes(); FreeAllWindowBuffers(); - Free(gPyramidBagResources); + Free(gPyramidBagMenu); DestroyTask(taskId); } } @@ -837,108 +882,110 @@ static void sub_81C5B4C(u8 taskId) static void Task_HandlePyramidBagInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != TRUE && !gPaletteFade.active) + if (MenuHelpers_CallLinkSomething() == TRUE || gPaletteFade.active) + return; + + if (JOY_NEW(SELECT_BUTTON)) { - if (JOY_NEW(SELECT_BUTTON)) + if (gPyramidBagMenuState.location != PYRAMIDBAG_LOC_PARTY) { - if (gPyramidBagCursorData.unk4 != 2) + ListMenuGetScrollAndRow(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); + if (gPyramidBagMenuState.scrollPosition + gPyramidBagMenuState.cursorPosition != gPyramidBagMenu->listMenuCount - 1) { - ListMenuGetScrollAndRow(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); - if (gPyramidBagCursorData.scrollPosition + gPyramidBagCursorData.cursorPosition != gPyramidBagResources->listMenuCount - 1) - { - PlaySE(SE_SELECT); - Task_BeginItemSwap(taskId); - } + PlaySE(SE_SELECT); + Task_BeginItemSwap(taskId); } } - else + } + else + { + s32 listId = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); + switch (listId) { - s32 listId = ListMenu_ProcessInput(data[0]); - ListMenuGetScrollAndRow(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); - switch (listId) - { - case LIST_NOTHING_CHOSEN: - break; - case LIST_CANCEL: - PlaySE(SE_SELECT); - gSpecialVar_ItemId = 0; - CloseBattlePyramidBagAndSetCallback(taskId); - break; - default: - PlaySE(SE_SELECT); - gSpecialVar_ItemId = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][listId]; - data[1] = listId; - data[2] = gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode][listId]; - if (gPyramidBagCursorData.unk4 == 2) - sub_81C674C(taskId); - else - sub_81C5D20(taskId); - break; - } + case LIST_NOTHING_CHOSEN: + break; + case LIST_CANCEL: + PlaySE(SE_SELECT); + gSpecialVar_ItemId = ITEM_NONE; + CloseBattlePyramidBag(taskId); + break; + default: + PlaySE(SE_SELECT); + gSpecialVar_ItemId = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][listId]; + tListPos = listId; + tQuantity = gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode][listId]; + if (gPyramidBagMenuState.location == PYRAMIDBAG_LOC_PARTY) + TryCloseBagToGiveItem(taskId); + else + OpenContextMenu(taskId); + break; } } } -static void sub_81C5D20(u8 taskId) +static void OpenContextMenu(u8 taskId) { s16 *data = gTasks[taskId].data; RemoveScrollArrow(); - sub_81C5A98(data[0], 1); - switch (gPyramidBagCursorData.unk4) + PrintSelectorArrow(tListTaskId, COLORID_LIGHT_GRAY); + switch (gPyramidBagMenuState.location) { default: - gPyramidBagResources->menuActionIds = sFieldMenuActionIds; - gPyramidBagResources->menuActionsCount = ARRAY_COUNT(sFieldMenuActionIds); +// case PYRAMIDBAG_LOC_FIELD: +// case PYRAMIDBAG_LOC_PARTY: + gPyramidBagMenu->menuActionIds = sMenuActionIds_Field; + gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_Field); break; - case 1: + case PYRAMIDBAG_LOC_BATTLE: if (ItemId_GetBattleUsage(gSpecialVar_ItemId)) { - gPyramidBagResources->menuActionIds = sBattleMenuActionIds; - gPyramidBagResources->menuActionsCount = ARRAY_COUNT(sBattleMenuActionIds); + gPyramidBagMenu->menuActionIds = sMenuActionIds_Battle; + gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_Battle); } else { - gPyramidBagResources->menuActionIds = gUnknown_0861F310; - gPyramidBagResources->menuActionsCount = ARRAY_COUNT(gUnknown_0861F310); + gPyramidBagMenu->menuActionIds = sMenuActionIds_BattleCannotUse; + gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_BattleCannotUse); } break; - case 3: - gPyramidBagResources->menuActionIds = gUnknown_0861F30C; - gPyramidBagResources->menuActionsCount = ARRAY_COUNT(gUnknown_0861F30C); + case PYRAMIDBAG_LOC_CHOOSE_TOSS: + gPyramidBagMenu->menuActionIds = sMenuActionIds_ChooseToss; + gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_ChooseToss); break; } CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); - if (gPyramidBagResources->menuActionsCount == 1) - sub_81C5EAC(sub_81C6D24(0)); - else if (gPyramidBagResources->menuActionsCount == 2) - sub_81C5EAC(sub_81C6D24(1)); + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + if (gPyramidBagMenu->menuActionsCount == 1) + PrintMenuActionText_SingleRow(OpenMenuActionWindowById(MENU_WIN_1x1)); + else if (gPyramidBagMenu->menuActionsCount == 2) + PrintMenuActionText_SingleRow(OpenMenuActionWindowById(MENU_WIN_1x2)); else - sub_81C5F08(sub_81C6D24(2), 2, 2); + PrintMenuActionText_MultiRow(OpenMenuActionWindowById(MENU_WIN_2x2), 2, 2); - if (gPyramidBagResources->menuActionsCount == 4) - gTasks[taskId].func = HandleMenuActionInput; + if (gPyramidBagMenu->menuActionsCount == 2 * 2) // Assumes any non 2x2 menu is single-row + gTasks[taskId].func = HandleMenuActionInput_2x2; else - gTasks[taskId].func = HandleFewMenuActionsInput; + gTasks[taskId].func = HandleMenuActionInput_SingleRow; } -static void sub_81C5EAC(u8 windowId) +static void PrintMenuActionText_SingleRow(u8 windowId) { - AddItemMenuActionTextPrinters(windowId, 7, 8, 1, 0, 0x10, gPyramidBagResources->menuActionsCount, sMenuActions, gPyramidBagResources->menuActionIds); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gPyramidBagResources->menuActionsCount, 0); + AddItemMenuActionTextPrinters(windowId, 7, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gPyramidBagMenu->menuActionsCount, 0); } -static void sub_81C5F08(u8 windowId, u8 horizontalCount, u8 verticalCount) +static void PrintMenuActionText_MultiRow(u8 windowId, u8 horizontalCount, u8 verticalCount) { - sub_8198DBC(windowId, 7, 8, 1, 0x38, horizontalCount, verticalCount, sMenuActions, gPyramidBagResources->menuActionIds); - sub_8199944(windowId, 0x38, horizontalCount, verticalCount, 0); + PrintMenuActionGrid(windowId, 7, 8, 1, 56, horizontalCount, verticalCount, sMenuActions, gPyramidBagMenu->menuActionIds); + InitMenuActionGrid(windowId, 56, horizontalCount, verticalCount, 0); } -static void HandleFewMenuActionsInput(u8 taskId) +static void HandleMenuActionInput_SingleRow(u8 taskId) { if (MenuHelpers_CallLinkSomething() != TRUE) { @@ -953,14 +1000,14 @@ static void HandleFewMenuActionsInput(u8 taskId) break; default: PlaySE(SE_SELECT); - if (sMenuActions[gPyramidBagResources->menuActionIds[id]].func.void_u8 != NULL) - sMenuActions[gPyramidBagResources->menuActionIds[id]].func.void_u8(taskId); + if (sMenuActions[gPyramidBagMenu->menuActionIds[id]].func.void_u8 != NULL) + sMenuActions[gPyramidBagMenu->menuActionIds[id]].func.void_u8(taskId); break; } } } -static void HandleMenuActionInput(u8 taskId) +static void HandleMenuActionInput_2x2(u8 taskId) { if (MenuHelpers_CallLinkSomething() != TRUE) { @@ -975,7 +1022,7 @@ static void HandleMenuActionInput(u8 taskId) } else if (JOY_NEW(DPAD_DOWN)) { - if (id < gPyramidBagResources->menuActionsCount - 2 && IsValidMenuAction(id + 2)) + if (id < gPyramidBagMenu->menuActionsCount - 2 && IsValidMenuAction(id + 2)) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); @@ -1000,8 +1047,8 @@ static void HandleMenuActionInput(u8 taskId) else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - if (sMenuActions[gPyramidBagResources->menuActionIds[id]].func.void_u8 != NULL) - sMenuActions[gPyramidBagResources->menuActionIds[id]].func.void_u8(taskId); + if (sMenuActions[gPyramidBagMenu->menuActionIds[id]].func.void_u8 != NULL) + sMenuActions[gPyramidBagMenu->menuActionIds[id]].func.void_u8(taskId); } else if (JOY_NEW(B_BUTTON)) { @@ -1015,22 +1062,22 @@ static bool8 IsValidMenuAction(s8 actionTableId) { if (actionTableId < 0) return FALSE; - else if (actionTableId > gPyramidBagResources->menuActionsCount) + else if (actionTableId > gPyramidBagMenu->menuActionsCount) return FALSE; - else if (gPyramidBagResources->menuActionIds[actionTableId] == ACTION_DUMMY) + else if (gPyramidBagMenu->menuActionIds[actionTableId] == ACTION_DUMMY) return FALSE; else return TRUE; } -static void sub_81C61A8(void) +static void CloseMenuActionWindow(void) { - if (gPyramidBagResources->menuActionsCount == 1) - sub_81C6D6C(0); - else if (gPyramidBagResources->menuActionsCount == 2) - sub_81C6D6C(1); + if (gPyramidBagMenu->menuActionsCount == 1) + CloseMenuActionWindowById(MENU_WIN_1x1); + else if (gPyramidBagMenu->menuActionsCount == 2) + CloseMenuActionWindowById(MENU_WIN_1x2); else - sub_81C6D6C(2); + CloseMenuActionWindowById(MENU_WIN_2x2); } static void BagAction_UseOnField(u8 taskId) @@ -1042,13 +1089,13 @@ static void BagAction_UseOnField(u8 taskId) || pocketId == POCKET_TM_HM || ItemIsMail(gSpecialVar_ItemId) == TRUE) { - sub_81C61A8(); + CloseMenuActionWindow(); DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage); } else if (ItemId_GetFieldFunc(gSpecialVar_ItemId) != NULL) { - sub_81C61A8(); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); + CloseMenuActionWindow(); + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); ScheduleBgCopyTilemapToVram(0); ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId); } @@ -1058,17 +1105,17 @@ static void BagAction_Cancel(u8 taskId) { s16 *data = gTasks[taskId].data; - sub_81C61A8(); - PrintItemDescription(data[1]); + CloseMenuActionWindow(); + PrintItemDescription(tListPos); ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); - sub_81C5A98(data[0], 0); + PrintSelectorArrow(tListTaskId, COLORID_DARK_GRAY); SetTaskToMainPyramidBagInputHandler(taskId); } static void SetTaskToMainPyramidBagInputHandler(u8 taskId) { - AddScrollArrow(); + AddScrollArrows(); gTasks[taskId].func = Task_HandlePyramidBagInput; } @@ -1076,86 +1123,86 @@ static void BagAction_Toss(u8 taskId) { s16 *data = gTasks[taskId].data; - sub_81C61A8(); - data[8] = 1; - if (data[2] == 1) + CloseMenuActionWindow(); + tNumToToss = 1; + if (tQuantity == 1) { - sub_81C6350(taskId); + AskConfirmToss(taskId); } else { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_TossHowManyVar1s); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); - sub_81C6404(); - gTasks[taskId].func = sub_81C64B4; + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + ShowNumToToss(); + gTasks[taskId].func = Task_ChooseHowManyToToss; } } -static void sub_81C6350(u8 taskId) +static void AskConfirmToss(u8 taskId) { s16 *data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); - ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 2); + ConvertIntToDecimalStringN(gStringVar2, tNumToToss, STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_ConfirmTossItems); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); - sub_81C6DAC(taskId, &sYesNoTossFuncions); + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + CreatePyramidBagYesNo(taskId, &sYesNoTossFuncions); } static void DontTossItem(u8 taskId) { s16 *data = gTasks[taskId].data; - PrintItemDescription(data[1]); - sub_81C5A98(data[0], 0); + PrintItemDescription(tListPos); + PrintSelectorArrow(tListTaskId, COLORID_DARK_GRAY); SetTaskToMainPyramidBagInputHandler(taskId); } -static void sub_81C6404(void) +static void ShowNumToToss(void) { s32 x; - ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); - sub_81C6CEC(3); + DrawTossNumberWindow(WIN_TOSS_NUM); x = GetStringCenterAlignXOffset(1, gStringVar4, 0x28); - AddTextPrinterParameterized(3, 1, gStringVar4, x, 2, 0, NULL); + AddTextPrinterParameterized(WIN_TOSS_NUM, 1, gStringVar4, x, 2, 0, NULL); } -static void sub_81C645C(s16 value) +static void UpdateNumToToss(s16 num) { s32 x; - - ConvertIntToDecimalStringN(gStringVar1, value, STR_CONV_MODE_LEADING_ZEROS, 2); + ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); x = GetStringCenterAlignXOffset(1, gStringVar4, 0x28); - AddTextPrinterParameterized(3, 1, gStringVar4, x, 2, 0, NULL); + AddTextPrinterParameterized(WIN_TOSS_NUM, 1, gStringVar4, x, 2, 0, NULL); } -static void sub_81C64B4(u8 taskId) +static void Task_ChooseHowManyToToss(u8 taskId) { s16 *data = gTasks[taskId].data; - if (AdjustQuantityAccordingToDPadInput(&data[8], data[2]) == TRUE) + if (AdjustQuantityAccordingToDPadInput(&tNumToToss, tQuantity) == TRUE) { - sub_81C645C(data[8]); + UpdateNumToToss(tNumToToss); } else if (JOY_NEW(A_BUTTON)) { + // Toss PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(3, 0); - ClearWindowTilemap(3); + ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, 0); + ClearWindowTilemap(WIN_TOSS_NUM); ScheduleBgCopyTilemapToVram(1); - sub_81C6350(taskId); + AskConfirmToss(taskId); } else if (JOY_NEW(B_BUTTON)) { + // Cancel tossing PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(3, 0); - ClearWindowTilemap(3); + ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, 0); + ClearWindowTilemap(WIN_TOSS_NUM); ScheduleBgCopyTilemapToVram(1); DontTossItem(taskId); } @@ -1166,28 +1213,28 @@ static void TossItem(u8 taskId) s16 *data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); - ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 2); + ConvertIntToDecimalStringN(gStringVar2, tNumToToss, STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_ThrewAwayVar2Var1s); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); - gTasks[taskId].func = sub_81C65CC; + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + gTasks[taskId].func = Task_TossItem; } -static void sub_81C65CC(u8 taskId) +static void Task_TossItem(u8 taskId) { s16 *data = gTasks[taskId].data; - u16 *scrollOffset = &gPyramidBagCursorData.scrollPosition; - u16 *selectedRow = &gPyramidBagCursorData.cursorPosition; + u16 *scrollOffset = &gPyramidBagMenuState.scrollPosition; + u16 *selectedRow = &gPyramidBagMenuState.cursorPosition; if (JOY_NEW(A_BUTTON | B_BUTTON)) { PlaySE(SE_SELECT); - RemovePyramidBagItem(gSpecialVar_ItemId, data[8]); - DestroyListMenuTask(data[0], scrollOffset, selectedRow); - sub_81C5924(); - sub_81C59BC(); + RemovePyramidBagItem(gSpecialVar_ItemId, tNumToToss); + DestroyListMenuTask(tListTaskId, scrollOffset, selectedRow); + UpdatePyramidBagList(); + UpdatePyramidBagCursorPos(); SetBagItemsListTemplate(); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); ScheduleBgCopyTilemapToVram(0); SetTaskToMainPyramidBagInputHandler(taskId); } @@ -1195,30 +1242,30 @@ static void sub_81C65CC(u8 taskId) static void BagAction_Give(u8 taskId) { - sub_81C61A8(); + CloseMenuActionWindow(); if (ItemIsMail(gSpecialVar_ItemId) == TRUE) { - DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, sub_81C66EC); + DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, Task_WaitCloseErrorMessage); } else if (!ItemId_GetImportance(gSpecialVar_ItemId)) { - gPyramidBagResources->callback2 = CB2_ChooseMonToGiveItem; - CloseBattlePyramidBagAndSetCallback(taskId); + gPyramidBagMenu->exitCallback = CB2_ChooseMonToGiveItem; + CloseBattlePyramidBag(taskId); } else { - sub_81C66AC(taskId); + ShowCantHoldMessage(taskId); } } -static void sub_81C66AC(u8 taskId) +static void ShowCantHoldMessage(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeld); - DisplayItemMessageInBattlePyramid(taskId, gStringVar4, sub_81C66EC); + DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_WaitCloseErrorMessage); } -static void sub_81C66EC(u8 taskId) +static void Task_WaitCloseErrorMessage(u8 taskId) { if (JOY_NEW(A_BUTTON)) { @@ -1232,26 +1279,26 @@ void Task_CloseBattlePyramidBagMessage(u8 taskId) s16 *data = gTasks[taskId].data; CloseBattlePyramidBagTextWindow(); - PrintItemDescription(data[1]); - sub_81C5A98(data[0], 0); + PrintItemDescription(tListPos); + PrintSelectorArrow(tListTaskId, COLORID_DARK_GRAY); SetTaskToMainPyramidBagInputHandler(taskId); } -static void sub_81C674C(u8 taskId) +static void TryCloseBagToGiveItem(u8 taskId) { - if (!itemid_80BF6D8_mail_related(gSpecialVar_ItemId)) - DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, sub_81C66EC); + if (!IsWritingMailAllowed(gSpecialVar_ItemId)) + DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, Task_WaitCloseErrorMessage); else if (!ItemId_GetImportance(gSpecialVar_ItemId)) - CloseBattlePyramidBagAndSetCallback(taskId); + CloseBattlePyramidBag(taskId); else - sub_81C66AC(taskId); + ShowCantHoldMessage(taskId); } static void BagAction_UseInBattle(u8 taskId) { if (ItemId_GetBattleFunc(gSpecialVar_ItemId) != NULL) { - sub_81C61A8(); + CloseMenuActionWindow(); ItemId_GetBattleFunc(gSpecialVar_ItemId)(taskId); } } @@ -1260,15 +1307,15 @@ static void Task_BeginItemSwap(u8 taskId) { s16 *data = gTasks[taskId].data; - data[1] = gPyramidBagCursorData.scrollPosition + gPyramidBagCursorData.cursorPosition; - gPyramidBagResources->unk814 = data[1]; - ListMenuSetUnkIndicatorsStructField(data[0], 0x10, 1); - CopyItemName(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][data[1]], gStringVar1); + tListPos = gPyramidBagMenuState.scrollPosition + gPyramidBagMenuState.cursorPosition; + gPyramidBagMenu->toSwapPos = tListPos; + ListMenuSetUnkIndicatorsStructField(tListTaskId, 0x10, 1); + CopyItemName(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][tListPos], gStringVar1); StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - PrintOnWindow_Font1(1, gStringVar4, 3, 0, 0, 1, 0, 0); - sub_81C5A98(data[0], 1); - UpdateSwapLinePos(data[1]); + FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); + PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PrintSelectorArrow(tListTaskId, COLORID_LIGHT_GRAY); + UpdateSwapLinePos(tListPos); gTasks[taskId].func = Task_ItemSwapHandleInput; } @@ -1280,15 +1327,15 @@ static void Task_ItemSwapHandleInput(u8 taskId) if (JOY_NEW(SELECT_BUTTON)) { PlaySE(SE_SELECT); - ListMenuGetScrollAndRow(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); + ListMenuGetScrollAndRow(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); PerformItemSwap(taskId); } else { - s32 id = ListMenu_ProcessInput(data[0]); - ListMenuGetScrollAndRow(data[0], &gPyramidBagCursorData.scrollPosition, &gPyramidBagCursorData.cursorPosition); + s32 id = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); SetSwapLineInvisibility(FALSE); - UpdateSwapLinePos(gPyramidBagCursorData.cursorPosition); + UpdateSwapLinePos(gPyramidBagMenuState.cursorPosition); switch (id) { case LIST_NOTHING_CHOSEN: @@ -1298,7 +1345,7 @@ static void Task_ItemSwapHandleInput(u8 taskId) if (JOY_NEW(A_BUTTON)) PerformItemSwap(taskId); else - sub_81C6A14(taskId); + CancelItemSwap(taskId); break; default: PlaySE(SE_SELECT); @@ -1312,41 +1359,41 @@ static void Task_ItemSwapHandleInput(u8 taskId) static void PerformItemSwap(u8 taskId) { s16 *data = gTasks[taskId].data; - u16 *scrollOffset = &gPyramidBagCursorData.scrollPosition; - u16 *selectedRow = &gPyramidBagCursorData.cursorPosition; - u16 var = *scrollOffset + *selectedRow; + u16 *scrollOffset = &gPyramidBagMenuState.scrollPosition; + u16 *selectedRow = &gPyramidBagMenuState.cursorPosition; + u16 swapPos = *scrollOffset + *selectedRow; - if (data[1] == var || data[1] == var - 1) + if (tListPos == swapPos || tListPos == swapPos - 1) { - sub_81C6A14(taskId); + CancelItemSwap(taskId); } else { - MovePyramidBagItemSlotInList(data[1], var); - gPyramidBagResources->unk814 = 0xFF; + MovePyramidBagItemSlotInList(tListPos, swapPos); + gPyramidBagMenu->toSwapPos = POS_NONE; SetSwapLineInvisibility(TRUE); - DestroyListMenuTask(data[0], scrollOffset, selectedRow); - if (data[1] < var) - gPyramidBagCursorData.cursorPosition--; + DestroyListMenuTask(tListTaskId, scrollOffset, selectedRow); + if (tListPos < swapPos) + gPyramidBagMenuState.cursorPosition--; SetBagItemsListTemplate(); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); SetTaskToMainPyramidBagInputHandler(taskId); } } -static void sub_81C6A14(u8 taskId) +static void CancelItemSwap(u8 taskId) { s16 *data = gTasks[taskId].data; - u16 *scrollOffset = &gPyramidBagCursorData.scrollPosition; - u16 *selectedRow = &gPyramidBagCursorData.cursorPosition; + u16 *scrollOffset = &gPyramidBagMenuState.scrollPosition; + u16 *selectedRow = &gPyramidBagMenuState.cursorPosition; - gPyramidBagResources->unk814 = 0xFF; + gPyramidBagMenu->toSwapPos = POS_NONE; SetSwapLineInvisibility(TRUE); - DestroyListMenuTask(data[0], scrollOffset, selectedRow); - if (data[1] < *scrollOffset + *selectedRow) - gPyramidBagCursorData.cursorPosition--; + DestroyListMenuTask(tListTaskId, scrollOffset, selectedRow); + if (tListPos < *scrollOffset + *selectedRow) + gPyramidBagMenuState.cursorPosition--; SetBagItemsListTemplate(); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollOffset, *selectedRow); SetTaskToMainPyramidBagInputHandler(taskId); } @@ -1385,61 +1432,62 @@ void TryStoreHeldItemsInPyramidBag(void) Free(newQuantities); } -static void sub_81C6BD8(void) +static void InitPyramidBagWindows(void) { u8 i; - InitWindows(gUnknown_0861F328); + InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 0x1, 0xE0); LoadMessageBoxGfx(0, 0xA, 0xD0); LoadPalette(gUnknown_0860F074, 0xF0, 0x20); - for (i = 0; i < 5; i++) + for (i = 0; i < ARRAY_COUNT(sWindowTemplates); i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); - PutWindowTilemap(0); - PutWindowTilemap(1); + PutWindowTilemap(WIN_LIST); + PutWindowTilemap(WIN_INFO); ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); } static void PrintOnWindow_Font1(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) { - AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, lineSpacing, sColorTable[colorTableId], speed, src); + AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); } static void PrintOnWindow_Font7(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) { - AddTextPrinterParameterized4(windowId, 7, x, y, letterSpacing, lineSpacing, sColorTable[colorTableId], speed, src); + AddTextPrinterParameterized4(windowId, 7, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); } -static void sub_81C6CEC(u8 windowId) +static void DrawTossNumberWindow(u8 windowId) { DrawStdFrameWithCustomTileAndPalette(windowId, 0, 1, 0xE); ScheduleBgCopyTilemapToVram(1); } -static u8 sub_81C6D08(u8 windowArrayId) +// Unused +static u8 GetMenuActionWindowId(u8 windowArrayId) { - return gPyramidBagResources->windowIds[windowArrayId]; + return gPyramidBagMenu->windowIds[windowArrayId]; } -static u8 sub_81C6D24(u8 windowArrayId) +static u8 OpenMenuActionWindowById(u8 windowArrayId) { - u8 *windowId = &gPyramidBagResources->windowIds[windowArrayId]; + u8 *windowId = &gPyramidBagMenu->windowIds[windowArrayId]; if (*windowId == WINDOW_NONE) { - *windowId = AddWindow(&gUnknown_0861F350[windowArrayId]); + *windowId = AddWindow(&sWindowTemplates_MenuActions[windowArrayId]); DrawStdFrameWithCustomTileAndPalette(*windowId, FALSE, 1, 0xE); ScheduleBgCopyTilemapToVram(1); } return *windowId; } -static void sub_81C6D6C(u8 windowArrayId) +static void CloseMenuActionWindowById(u8 windowArrayId) { - u8 *windowId = &gPyramidBagResources->windowIds[windowArrayId]; + u8 *windowId = &gPyramidBagMenu->windowIds[windowArrayId]; if (*windowId != WINDOW_NONE) { ClearStdWindowAndFrameToTransparent(*windowId, FALSE); @@ -1450,87 +1498,87 @@ static void sub_81C6D6C(u8 windowArrayId) } } -static void sub_81C6DAC(u8 taskId, const struct YesNoFuncTable *yesNoTable) +static void CreatePyramidBagYesNo(u8 taskId, const struct YesNoFuncTable *yesNoTable) { - CreateYesNoMenuWithCallbacks(taskId, &gUnknown_0861F350[4], 1, 0, 2, 1, 0xE, yesNoTable); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_MenuActions[MENU_WIN_YESNO], 1, 0, 2, 1, 0xE, yesNoTable); } void DisplayItemMessageInBattlePyramid(u8 taskId, const u8 *str, void (*callback)(u8 taskId)) { - FillWindowPixelBuffer(2, PIXEL_FILL(1)); - DisplayMessageAndContinueTask(taskId, 2, 0xA, 0xD, 1, GetPlayerTextSpeedDelay(), str, callback); + FillWindowPixelBuffer(WIN_MSG, PIXEL_FILL(1)); + DisplayMessageAndContinueTask(taskId, WIN_MSG, 0xA, 0xD, 1, GetPlayerTextSpeedDelay(), str, callback); ScheduleBgCopyTilemapToVram(1); } static void CloseBattlePyramidBagTextWindow(void) { - ClearDialogWindowAndFrameToTransparent(2, FALSE); + ClearDialogWindowAndFrameToTransparent(WIN_MSG, FALSE); // This ClearWindowTilemap call is redundant, since ClearDialogWindowAndFrameToTransparent already calls it. - ClearWindowTilemap(2); + ClearWindowTilemap(WIN_MSG); ScheduleBgCopyTilemapToVram(1); } -#define ITEM_IMAGE_TAG 0x1024 - -static void sub_81C6E38(u8 itemSpriteArrayId) +static void FreeItemIconSprite(u8 spriteArrId) { - u8 *spriteId = &gPyramidBagResources->itemsSpriteIds[itemSpriteArrayId]; + u8 *spriteId = &gPyramidBagMenu->spriteIds[spriteArrId]; if (*spriteId != SPRITE_NONE) { - FreeSpriteTilesByTag(ITEM_IMAGE_TAG + itemSpriteArrayId); - FreeSpritePaletteByTag(ITEM_IMAGE_TAG + itemSpriteArrayId); + // spriteArrId is PBAG_SPRITE_ITEM_ICON / PBAG_SPRITE_ITEM_ICON_ALT here (1-2) + // so tag will be TAG_ITEM_ICON / TAG_ITEM_ICON_ALT + FreeSpriteTilesByTag(TAG_ITEM_ICON - 1 + spriteArrId); + FreeSpritePaletteByTag(TAG_ITEM_ICON - 1 + spriteArrId); FreeSpriteOamMatrix(&gSprites[*spriteId]); DestroySprite(&gSprites[*spriteId]); *spriteId = SPRITE_NONE; } } -static void sub_81C6E98(void) +static void LoadPyramidBagPalette(void) { struct SpritePalette spritePalette; u16 *palPtr = Alloc(0x40); LZDecompressWram(gBattleFrontierGfx_PyramidBag_Pal, palPtr); spritePalette.data = palPtr + (gSaveBlock2Ptr->frontier.lvlMode * 16); - spritePalette.tag = ITEM_IMAGE_TAG; + spritePalette.tag = TAG_PYRAMID_BAG; LoadSpritePalette(&spritePalette); Free(palPtr); } -static void sub_81C6EF4(void) +static void CreatePyramidBagSprite(void) { - u8 *spriteId = &gPyramidBagResources->itemsSpriteIds[0]; - *spriteId = CreateSprite(&gUnknown_0861F3D4, 0x44, 0x38, 0); + u8 *spriteId = &gPyramidBagMenu->spriteIds[PBAG_SPRITE_BAG]; + *spriteId = CreateSprite(&sSpriteTemplate_PyramidBag, 68, 56, 0); } -static void sub_81C6F20(void) +static void ShakePyramidBag(void) { - struct Sprite *sprite = &gSprites[gPyramidBagResources->itemsSpriteIds[0]]; + struct Sprite *sprite = &gSprites[gPyramidBagMenu->spriteIds[PBAG_SPRITE_BAG]]; if (sprite->affineAnimEnded) { - StartSpriteAffineAnim(sprite, 1); - sprite->callback = sub_81C6F68; + StartSpriteAffineAnim(sprite, ANIM_BAG_SHAKE); + sprite->callback = SpriteCB_BagWaitForShake; } } -static void sub_81C6F68(struct Sprite *sprite) +static void SpriteCB_BagWaitForShake(struct Sprite *sprite) { if (sprite->affineAnimEnded) { - StartSpriteAffineAnim(sprite, 0); + StartSpriteAffineAnim(sprite, ANIM_BAG_STILL); sprite->callback = SpriteCallbackDummy; } } -static void ShowItemImage(u16 itemId, u8 itemSpriteArrayId) +static void ShowItemIcon(u16 itemId, bool8 isAlt) { u8 itemSpriteId; - u8 *spriteId = &gPyramidBagResources->itemsSpriteIds[itemSpriteArrayId + 1]; + u8 *spriteId = &gPyramidBagMenu->spriteIds[isAlt + PBAG_SPRITE_ITEM_ICON]; if (*spriteId == SPRITE_NONE) { - FreeSpriteTilesByTag(ITEM_IMAGE_TAG + 1 + itemSpriteArrayId); - FreeSpritePaletteByTag(ITEM_IMAGE_TAG + 1 + itemSpriteArrayId); - itemSpriteId = AddItemIconSprite(ITEM_IMAGE_TAG + 1 + itemSpriteArrayId, ITEM_IMAGE_TAG + 1 + itemSpriteArrayId, itemId); + FreeSpriteTilesByTag(TAG_ITEM_ICON + isAlt); + FreeSpritePaletteByTag(TAG_ITEM_ICON + isAlt); + itemSpriteId = AddItemIconSprite(TAG_ITEM_ICON + isAlt, TAG_ITEM_ICON + isAlt, itemId); if (itemSpriteId != MAX_SPRITES) { *spriteId = itemSpriteId; @@ -1540,22 +1588,22 @@ static void ShowItemImage(u16 itemId, u8 itemSpriteArrayId) } } -static void sub_81C6FF8(u8 itemSpriteArrayId) +static void FreeItemIconSpriteByAltId(bool8 isAlt) { - sub_81C6E38(itemSpriteArrayId + 1); + FreeItemIconSprite(isAlt + PBAG_SPRITE_ITEM_ICON); } static void CreateSwapLine(void) { - CreateSwapLineSprites(&gPyramidBagResources->itemsSpriteIds[3], 8); + CreateSwapLineSprites(&gPyramidBagMenu->spriteIds[PBAG_SPRITE_SWAP_LINE_START], NUM_SWAP_LINE_SPRITES); } static void SetSwapLineInvisibility(bool8 invisible) { - SetSwapLineSpritesInvisibility(&gPyramidBagResources->itemsSpriteIds[3], 8, invisible); + SetSwapLineSpritesInvisibility(&gPyramidBagMenu->spriteIds[PBAG_SPRITE_SWAP_LINE_START], NUM_SWAP_LINE_SPRITES, invisible); } static void UpdateSwapLinePos(u8 y) { - UpdateSwapLineSpritesPos(&gPyramidBagResources->itemsSpriteIds[3], 8 | 0x80, 120, (y + 1) * 16); + UpdateSwapLineSpritesPos(&gPyramidBagMenu->spriteIds[PBAG_SPRITE_SWAP_LINE_START], NUM_SWAP_LINE_SPRITES | 0x80, 120, (y + 1) * 16); } diff --git a/src/item.c b/src/item.c index 89209218497d..b5f9e0dd658a 100644 --- a/src/item.c +++ b/src/item.c @@ -820,7 +820,7 @@ bool8 RemovePyramidBagItem(u16 itemId, u16 count) u16 *items = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode]; u8 *quantities = gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode]; - i = gPyramidBagCursorData.cursorPosition + gPyramidBagCursorData.scrollPosition; + i = gPyramidBagMenuState.cursorPosition + gPyramidBagMenuState.scrollPosition; if (items[i] == itemId && quantities[i] >= count) { quantities[i] -= count; diff --git a/src/item_menu.c b/src/item_menu.c index 865f8d8d1635..de4d82e9b058 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -509,7 +509,6 @@ EWRAM_DATA u16 gSpecialVar_ItemId = 0; static EWRAM_DATA struct TempWallyStruct *sTempWallyBag = 0; extern u8 *const gPocketNamesStringsTable[]; -extern u8* gReturnToXStringsTable[]; extern const u8 EventScript_SelectWithoutRegisteredItem[]; extern const u16 gUnknown_0860F074[]; @@ -530,7 +529,7 @@ void CB2_BagMenuFromBattle(void) if (!InBattlePyramid()) GoToBagMenu(ITEMMENULOCATION_BATTLE, POCKETS_COUNT, CB2_SetUpReshowBattleScreenAfterMenu2); else - GoToBattlePyramidBagMenu(1, CB2_SetUpReshowBattleScreenAfterMenu2); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2); } // Choosing berry to plant @@ -947,7 +946,7 @@ void BagMenu_PrintDescription(int itemIndex) } else { - StringCopy(gStringVar1, gReturnToXStringsTable[gBagPositionStruct.location]); + StringCopy(gStringVar1, gBagMenu_ReturnToStrings[gBagPositionStruct.location]); StringExpandPlaceholders(gStringVar4, gText_ReturnToVar1); str = gStringVar4; } @@ -1458,7 +1457,7 @@ void sub_81AC590(u8 taskId) gTasks[taskId].func = Task_BagMenu_HandleInput; } -void OpenContextMenu(u8 unused) +static void OpenContextMenu(u8 unused) { switch (gBagPositionStruct.location) { @@ -1604,8 +1603,8 @@ void sub_81ACAF8(u8 a) void sub_81ACB54(u8 a, u8 b, u8 c) { - sub_8198DBC(a, 7, 8, 1, 0x38, b, c, sItemMenuActions, gBagMenu->contextMenuItemsPtr); - sub_8199944(a, 0x38, b, c, 0); + PrintMenuActionGrid(a, 7, 8, 1, 0x38, b, c, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + InitMenuActionGrid(a, 0x38, b, c, 0); } void Task_ItemContext_FieldOrBattle(u8 taskId) @@ -1850,7 +1849,7 @@ void ItemMenu_Register(u8 taskId) void ItemMenu_Give(u8 taskId) { BagMenu_RemoveSomeWindow(); - if (!itemid_80BF6D8_mail_related(gSpecialVar_ItemId)) + if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350); } @@ -1925,7 +1924,7 @@ void CB2_ReturnToBagMenuPocket(void) void Task_ItemContext_FieldGive(u8 taskId) { - if (!itemid_80BF6D8_mail_related(gSpecialVar_ItemId)) + if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350); } diff --git a/src/item_use.c b/src/item_use.c index af0ca9ee5b97..19f50549e7d4 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -109,8 +109,8 @@ static void SetUpItemUseCallback(u8 taskId) } else { - gPyramidBagResources->callback2 = sItemUseCallbacks[type]; - CloseBattlePyramidBagAndSetCallback(taskId); + gPyramidBagMenu->exitCallback = sItemUseCallbacks[type]; + CloseBattlePyramidBag(taskId); } } @@ -822,8 +822,8 @@ static void RemoveUsedItem(void) } else { - sub_81C5924(); - sub_81C59BC(); + UpdatePyramidBagList(); + UpdatePyramidBagCursorPos(); } } @@ -943,7 +943,7 @@ void ItemUseInBattle_PokeBall(u8 taskId) if (!InBattlePyramid()) Task_FadeAndCloseBagMenu(taskId); else - CloseBattlePyramidBagAndSetCallback(taskId); + CloseBattlePyramidBag(taskId); } else if (!InBattlePyramid()) { @@ -960,7 +960,7 @@ static void Task_CloseStatIncreaseMessage(u8 taskId) if (!InBattlePyramid()) Task_FadeAndCloseBagMenu(taskId); else - CloseBattlePyramidBagAndSetCallback(taskId); + CloseBattlePyramidBag(taskId); } } @@ -1005,8 +1005,8 @@ static void ItemUseInBattle_ShowPartyMenu(u8 taskId) } else { - gPyramidBagResources->callback2 = ChooseMonForInBattleItem; - CloseBattlePyramidBagAndSetCallback(taskId); + gPyramidBagMenu->exitCallback = ChooseMonForInBattleItem; + CloseBattlePyramidBag(taskId); } } @@ -1039,7 +1039,7 @@ void ItemUseInBattle_Escape(u8 taskId) if (!InBattlePyramid()) DisplayItemMessage(taskId, 1, gStringVar4, Task_FadeAndCloseBagMenu); else - DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBagAndSetCallback); + DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBag); } else { diff --git a/src/menu.c b/src/menu.c index 44b39d762d46..154f88187843 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1241,7 +1241,7 @@ void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struc sub_8198C94(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a3, a4, a5, strs); } -void sub_8198DBC(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8) +void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *strs, const u8 *strIds) { u8 i; u8 j; @@ -1256,13 +1256,13 @@ void sub_8198DBC(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u printer.letterSpacing = GetFontAttribute(fontId, FONTATTR_LETTER_SPACING); printer.lineSpacing = GetFontAttribute(fontId, FONTATTR_LINE_SPACING); - for (i = 0; i < itemCount2; i++) + for (i = 0; i < verticalCount; i++) { - for (j = 0; j < itemCount; j++) + for (j = 0; j < horizontalCount; j++) { - printer.currentChar = strs[a8[(itemCount * i) + j]].text; - printer.x = (a4 * j) + left; - printer.y = (GetFontAttribute(fontId, 1) * i) + top; + printer.currentChar = strs[strIds[(horizontalCount * i) + j]].text; + printer.x = (optionWidth * j) + left; + printer.y = (GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT) * i) + top; printer.currentX = printer.x; printer.currentY = printer.y; AddTextPrinter(&printer, 0xFF, NULL); @@ -1272,9 +1272,10 @@ void sub_8198DBC(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u CopyWindowToVram(windowId, 2); } -void sub_8198EF8(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *strs, const u8 *a8) +// Unused +static void PrintMenuActionGrid_TopLeft(u8 windowId, u8 fontId, u8 optionWidth, u8 unused, u8 horizontalCount, u8 verticalCount, const struct MenuAction *strs, const u8 *strIds) { - sub_8198DBC(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a4, a5, strs, a8); + PrintMenuActionGrid(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, optionWidth, horizontalCount, verticalCount, strs, strIds); } u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight, u8 a6, u8 a7, u8 numChoices, u8 a9) @@ -1701,7 +1702,7 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M CopyWindowToVram(windowId, 2); } -u8 sub_8199944(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos) +u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos) { s32 pos; diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 5a6ac8394731..151de0bd4fa7 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -287,7 +287,7 @@ bool8 sub_8122148(u16 itemId) return FALSE; } -bool8 itemid_80BF6D8_mail_related(u16 itemId) +bool8 IsWritingMailAllowed(u16 itemId) { if (IsUpdateLinkStateCBActive() != TRUE && InUnionRoom() != TRUE) return TRUE; diff --git a/src/party_menu.c b/src/party_menu.c index 81c39949bf9e..681dc5f9358a 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -3020,7 +3020,7 @@ static void CB2_SelectBagItemToGive(void) if (InBattlePyramid() == FALSE) GoToBagMenu(ITEMMENULOCATION_PARTY, POCKETS_COUNT, CB2_GiveHoldItem); else - GoToBattlePyramidBagMenu(2, CB2_GiveHoldItem); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PARTY, CB2_GiveHoldItem); } static void CB2_GiveHoldItem(void) @@ -4203,7 +4203,7 @@ static void CB2_ReturnToBagMenu(void) if (InBattlePyramid() == FALSE) GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL); else - GoToBattlePyramidBagMenu(4, gPyramidBagCursorData.callback); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.callback); } static void Task_SetSacredAshCB(u8 taskId) diff --git a/src/script_menu.c b/src/script_menu.c index 51c37b5b6ebe..f3317773afe2 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -279,7 +279,7 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignore gTasks[taskId].tWindowId = CreateWindowFromRect(left, top, columnCount * newWidth, rowCount * 2); SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, 0); PrintMenuGridTable(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, sMultichoiceLists[multichoiceId].list); - sub_8199944(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, 0); + InitMenuActionGrid(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, 0); CopyWindowToVram(gTasks[taskId].tWindowId, 3); return TRUE; } diff --git a/src/strings.c b/src/strings.c index 5c9b09c8399e..18cf31fb73fe 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1,5 +1,6 @@ #include "global.h" #include "strings.h" +#include "battle_pyramid_bag.h" ALIGNED(4) const u8 gText_ExpandedPlaceholder_Empty[] = _(""); @@ -252,7 +253,7 @@ const u8 gText_ThePokemonList[] = _("the POKéMON LIST"); const u8 gText_TheShop[] = _("the shop"); const u8 gText_ThePC[] = _("the PC"); -const u8 *const gReturnToXStringsTable[] = +const u8 *const gBagMenu_ReturnToStrings[] = { gText_TheField, gText_TheBattle, @@ -268,12 +269,12 @@ const u8 *const gReturnToXStringsTable[] = gText_ThePC }; -const u8 *const gReturnToXStringsTable2[] = +const u8 *const gPyramidBagMenu_ReturnToStrings[] = { - gText_TheField, - gText_TheBattle, - gText_ThePokemonList, - gText_TheField + [PYRAMIDBAG_LOC_FIELD] = gText_TheField, + [PYRAMIDBAG_LOC_BATTLE] = gText_TheBattle, + [PYRAMIDBAG_LOC_PARTY] = gText_ThePokemonList, + [PYRAMIDBAG_LOC_CHOOSE_TOSS] = gText_TheField }; const u8 gText_ReturnToVar1[] = _("Return to\n{STR_VAR_1}."); From 004c37bf022f9ab8a4307306f84cb20ac1dc9518 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 23 Apr 2021 17:04:44 -0400 Subject: [PATCH 151/762] Sync ereader_helpers with pokefirered --- include/ereader_helpers.h | 8 +- include/link.h | 2 +- src/ereader_helpers.c | 413 ++++++++++++++++++++------------------ src/ereader_screen.c | 8 +- 4 files changed, 227 insertions(+), 204 deletions(-) diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h index 8dc3b907a7c2..7cced65cb8d8 100755 --- a/include/ereader_helpers.h +++ b/include/ereader_helpers.h @@ -24,11 +24,11 @@ struct EReaderTrainerHillSet bool8 EReader_IsReceivedDataValid(struct EReaderTrainerHillSet *buffer); bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *arg0); bool32 ReadTrainerHillAndValidate(void); -int EReaderHandleTransfer(u8, u32, u32*, u32*); -void sub_81D3F9C(void); -void sub_81D3FAC(void); +int EReaderHandleTransfer(u8, size_t, const void *, void *); +void EReaderHelper_Timer3Callback(void); +void EReaderHelper_SerialCallback(void); void EReaderHelper_SaveRegsState(void); void EReaderHelper_RestoreRegsState(void); -void sub_81D4238(void); +void EReaderHelper_ClearSendRecvMgr(void); #endif // GUARD_EREADER_HELPERS_H diff --git a/include/link.h b/include/link.h index 3b621e6c13b1..407dbabb9cf0 100644 --- a/include/link.h +++ b/include/link.h @@ -323,7 +323,7 @@ extern bool8 gSavedLinkPlayerCount; extern u8 gSavedMultiplayerId; extern struct LinkTestBGInfo gLinkTestBGInfo; extern void (*gLinkCallback)(void); -extern bool8 gShouldAdvanceLinkState; +extern u8 gShouldAdvanceLinkState; extern u16 gLinkTestBlockChecksums[MAX_LINK_PLAYERS]; extern u8 gBlockRequestType; extern u8 gLastSendQueueCount; diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index 5edfc120c4ce..4db62c84792b 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -15,33 +15,62 @@ #include "constants/moves.h" #include "constants/items.h" -struct Unknown030012C8 +enum { + EREADER_XFR_STATE_INIT = 0, + EREADER_XFR_STATE_HANDSHAKE, + EREADER_XFR_STATE_START, + EREADER_XFR_STATE_TRANSFER, + EREADER_XFR_STATE_TRANSFER_DONE, + EREADER_XFR_STATE_CHECKSUM, + EREADER_XFR_STATE_DONE +}; + +#define EREADER_XFER_EXE 1 +#define EREADER_XFER_CHK 2 +#define EREADER_XFER_SHIFT 0 +#define EREADER_XFER_MASK 3 + +#define EREADER_CANCEL_TIMEOUT 1 +#define EREADER_CANCEL_KEY 2 +#define EREADER_CANCEL_MASK 0xC +#define EREADER_CANCEL_SHIFT 2 + +#define EREADER_CHECKSUM_OK 1 +#define EREADER_CHECKSUM_ERR 2 +#define EREADER_CHECKSUM_MASK 0x30 +#define EREADER_CHECKSUM_SHIFT 4 + +struct SendRecvMgr { - u8 unk0[8]; - u32 *unk8; - int unkC; - int unk10; - int unk14; + bool8 isParent; + u8 state; // EREADER_XFR_STATE_* + u8 xferState; // EREADER_XFER_* + u8 checksumResult; // EREADER_CHECKSUM_* + u8 cancellationReason; // EREADER_CANCEL_* + u32 *data; // Payload source or destination + int cursor; // Index of the next word + int size; // Last word index + int checksum; }; -static void sub_81D4170(void); -static u16 sub_81D3EE8(u8); -static void sub_81D413C(void); -static void sub_81D414C(void); -static void sub_81D3F1C(u32, u32*, u32*); -static void sub_81D3F68(void); - -static struct Unknown030012C8 gUnknown_030012C8; -static u16 gUnknown_030012E0; -static u16 gUnknown_030012E2; -static u16 gUnknown_030012E4; -static u16 gUnknown_030012E6; -static u32 gUnknown_030012E8; -static u16 gUnknown_030012EC; -static u16 gUnknown_030012EE; -static u16 gUnknown_030012F0; -static u16 gUnknown_030012F2; -static u16 gUnknown_030012F4; +static void GetKeyInput(void); +static u16 DetermineSendRecvState(u8); +static void EnableSio(void); +static void DisableTm3(void); +static void SetUpTransferManager(size_t, const void *, void *); +static void StartTm3(void); + +static struct SendRecvMgr sSendRecvMgr; +static u16 sJoyNewOrRepeated; +static u16 sJoyNew; +static u16 sSendRecvStatus; +static u16 sCounter1; +static u32 sCounter2; +static u16 sSavedIme; +static u16 sSavedIe; +static u16 sSavedTm3Cnt; +static u16 sSavedSioCnt; +static u16 sSavedRCnt; static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { [0] = { @@ -514,93 +543,89 @@ bool32 ReadTrainerHillAndValidate(void) return result; } -int EReader_Send(int arg0, u32 *arg1) +int EReader_Send(int size, const void * src) { int result; - u16 var0; - int var1; + int sendStatus; EReaderHelper_SaveRegsState(); while (1) { - sub_81D4170(); - if (gUnknown_030012E2 & 2) + GetKeyInput(); + if (sJoyNew & B_BUTTON) gShouldAdvanceLinkState = 2; - var1 = EReaderHandleTransfer(1, arg0, arg1, NULL); - gUnknown_030012E4 = var1; - if ((gUnknown_030012E4 & 0x13) == 0x10) + sendStatus = EReaderHandleTransfer(1, size, src, NULL); + sSendRecvStatus = sendStatus; + if ((sSendRecvStatus & 0x13) == 0x10) { result = 0; break; } - - if (gUnknown_030012E4 & 0x8) + else if (sSendRecvStatus & 0x8) { result = 1; break; } - - var0 = gUnknown_030012E4 & 0x4; - if (var0) + else if (sSendRecvStatus & 0x4) { result = 2; break; } - - gShouldAdvanceLinkState = var0; - VBlankIntrWait(); + else + { + gShouldAdvanceLinkState = 0; + VBlankIntrWait(); + } } - CpuFill32(0, &gUnknown_030012C8, sizeof(struct Unknown030012C8)); + CpuFill32(0, &sSendRecvMgr, sizeof(sSendRecvMgr)); EReaderHelper_RestoreRegsState(); return result; } -int EReader_Recv(u32 *arg0) +int EReader_Recv(void * dest) { int result; - u16 var0; - int var1; + int recvStatus; EReaderHelper_SaveRegsState(); while (1) { - sub_81D4170(); - if (gUnknown_030012E2 & 2) + GetKeyInput(); + if (sJoyNew & B_BUTTON) gShouldAdvanceLinkState = 2; - var1 = EReaderHandleTransfer(0, 0, NULL, arg0); - gUnknown_030012E4 = var1; - if ((gUnknown_030012E4 & 0x13) == 0x10) + recvStatus = EReaderHandleTransfer(0, 0, NULL, dest); + sSendRecvStatus = recvStatus; + if ((sSendRecvStatus & 0x13) == 0x10) { result = 0; break; } - - if (gUnknown_030012E4 & 0x8) + else if (sSendRecvStatus & 0x8) { result = 1; break; } - - var0 = gUnknown_030012E4 & 0x4; - if (var0) + else if (sSendRecvStatus & 0x4) { result = 2; break; } - - gShouldAdvanceLinkState = var0; - VBlankIntrWait(); + else + { + gShouldAdvanceLinkState = 0; + VBlankIntrWait(); + } } - CpuFill32(0, &gUnknown_030012C8, sizeof(struct Unknown030012C8)); + CpuFill32(0, &sSendRecvMgr, sizeof(sSendRecvMgr)); EReaderHelper_RestoreRegsState(); return result; } -static void sub_81D3C7C(void) +static void CloseSerial(void) { REG_IME = 0; REG_IE &= ~(INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); @@ -610,7 +635,7 @@ static void sub_81D3C7C(void) REG_IF = INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL; } -static void sub_81D3CBC(void) +static void OpenSerialMulti(void) { REG_IME = 0; REG_IE &= ~(INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); @@ -622,273 +647,271 @@ static void sub_81D3CBC(void) REG_IE |= INTR_FLAG_SERIAL; REG_IME = 1; - if (!gUnknown_030012C8.unk0[1]) - CpuFill32(0, &gUnknown_030012C8, sizeof(struct Unknown030012C8)); + if (sSendRecvMgr.state == 0) + CpuFill32(0, &sSendRecvMgr, sizeof(sSendRecvMgr)); } -static void sub_81D3D34(void) +static void OpenSerial32(void) { REG_RCNT = 0; REG_SIOCNT = SIO_32BIT_MODE | SIO_INTR_ENABLE; REG_SIOCNT |= SIO_MULTI_SD; gShouldAdvanceLinkState = 0; - gUnknown_030012E6 = 0; - gUnknown_030012E8 = 0; + sCounter1 = 0; + sCounter2 = 0; } -int EReaderHandleTransfer(u8 arg0, u32 arg1, u32 *arg2, u32 *arg3) +int EReaderHandleTransfer(u8 mode, size_t size, const void * data, void * recvBuffer) { - switch (gUnknown_030012C8.unk0[1]) + switch (sSendRecvMgr.state) { - case 0: - sub_81D3CBC(); - gUnknown_030012C8.unk0[2] = 1; - gUnknown_030012C8.unk0[1] = 1; + case EREADER_XFR_STATE_INIT: + OpenSerialMulti(); + sSendRecvMgr.xferState = EREADER_XFER_EXE; + sSendRecvMgr.state = EREADER_XFR_STATE_HANDSHAKE; break; - case 1: - if (sub_81D3EE8(arg0)) - sub_81D413C(); + case EREADER_XFR_STATE_HANDSHAKE: + if (DetermineSendRecvState(mode)) + EnableSio(); if (gShouldAdvanceLinkState == 2) { - gUnknown_030012C8.unk0[4] = 2; - gUnknown_030012C8.unk0[1] = 6; + sSendRecvMgr.cancellationReason = EREADER_CANCEL_KEY; + sSendRecvMgr.state = EREADER_XFR_STATE_DONE; } break; - case 2: - sub_81D3D34(); - sub_81D3F1C(arg1, arg2, arg3); - gUnknown_030012C8.unk0[1] = 3; + case EREADER_XFR_STATE_START: + OpenSerial32(); + SetUpTransferManager(size, data, recvBuffer); + sSendRecvMgr.state = EREADER_XFR_STATE_TRANSFER; // fall through - case 3: + case EREADER_XFR_STATE_TRANSFER: if (gShouldAdvanceLinkState == 2) { - gUnknown_030012C8.unk0[4] = 2; - gUnknown_030012C8.unk0[1] = 6; + sSendRecvMgr.cancellationReason = EREADER_CANCEL_KEY; + sSendRecvMgr.state = EREADER_XFR_STATE_DONE; } else { - gUnknown_030012E6++; - gUnknown_030012E8++; - if (!gUnknown_030012C8.unk0[0] && gUnknown_030012E8 > 60) + sCounter1++; + sCounter2++; + if (!sSendRecvMgr.isParent && sCounter2 > 60) { - gUnknown_030012C8.unk0[4] = 1; - gUnknown_030012C8.unk0[1] = 6; + sSendRecvMgr.cancellationReason = EREADER_CANCEL_TIMEOUT; + sSendRecvMgr.state = EREADER_XFR_STATE_DONE; } - if (gUnknown_030012C8.unk0[2] != 2) + if (sSendRecvMgr.xferState != EREADER_XFER_CHK) { - if (gUnknown_030012C8.unk0[0] && gUnknown_030012E6 > 2) + if (sSendRecvMgr.isParent && sCounter1 > 2) { - sub_81D413C(); - gUnknown_030012C8.unk0[2] = 2; + EnableSio(); + sSendRecvMgr.xferState = EREADER_XFER_CHK; } else { - sub_81D413C(); - gUnknown_030012C8.unk0[2] = 2; + EnableSio(); + sSendRecvMgr.xferState = EREADER_XFER_CHK; } } } break; - case 4: - sub_81D3CBC(); - gUnknown_030012C8.unk0[1] = 5; + case EREADER_XFR_STATE_TRANSFER_DONE: + OpenSerialMulti(); + sSendRecvMgr.state = EREADER_XFR_STATE_CHECKSUM; break; - case 5: - if (gUnknown_030012C8.unk0[0] == 1 && gUnknown_030012E6 > 2) - sub_81D413C(); + case EREADER_XFR_STATE_CHECKSUM: + if (sSendRecvMgr.isParent == TRUE && sCounter1 > 2) + EnableSio(); - if (++gUnknown_030012E6 > 60) + if (++sCounter1 > 60) { - gUnknown_030012C8.unk0[4] = 1; - gUnknown_030012C8.unk0[1] = 6; + sSendRecvMgr.cancellationReason = EREADER_CANCEL_TIMEOUT; + sSendRecvMgr.state = EREADER_XFR_STATE_DONE; } break; - case 6: - if (gUnknown_030012C8.unk0[2]) + case EREADER_XFR_STATE_DONE: + if (sSendRecvMgr.xferState) { - sub_81D3C7C(); - gUnknown_030012C8.unk0[2] = 0; + CloseSerial(); + sSendRecvMgr.xferState = 0; } break; } - return gUnknown_030012C8.unk0[2] | (gUnknown_030012C8.unk0[4] << 2) | (gUnknown_030012C8.unk0[3] << 4); + return (sSendRecvMgr.xferState << EREADER_XFER_SHIFT) + | (sSendRecvMgr.cancellationReason << EREADER_CANCEL_SHIFT) + | (sSendRecvMgr.checksumResult << EREADER_CHECKSUM_SHIFT); } -static u16 sub_81D3EE8(u8 arg0) +static u16 DetermineSendRecvState(u8 mode) { - u16 terminal = (*(vu32 *)REG_ADDR_SIOCNT) & (SIO_MULTI_SI | SIO_MULTI_SD); - if (terminal == SIO_MULTI_SD && arg0) - { - gUnknown_030012C8.unk0[0] = 1; - return 1; - } + bool16 resp; + if ((*(vu32 *)REG_ADDR_SIOCNT & (SIO_MULTI_SI | SIO_MULTI_SD)) == SIO_MULTI_SD && mode) + resp = sSendRecvMgr.isParent = TRUE; else - { - gUnknown_030012C8.unk0[0] = 0; - return 0; - } + resp = sSendRecvMgr.isParent = FALSE; + return resp; } -static void sub_81D3F1C(u32 arg0, u32 *arg1, u32 *arg2) +static void SetUpTransferManager(size_t size, const void * data, void * recvBuffer) { - if (gUnknown_030012C8.unk0[0]) + if (sSendRecvMgr.isParent) { REG_SIOCNT |= SIO_38400_BPS; - gUnknown_030012C8.unk8 = arg1; - REG_SIODATA32 = arg0; - gUnknown_030012C8.unk10 = arg0 / 4 + 1; - sub_81D3F68(); + sSendRecvMgr.data = (void *)data; + REG_SIODATA32 = size; + sSendRecvMgr.size = size / 4 + 1; + StartTm3(); } else { REG_SIOCNT = REG_SIOCNT; - gUnknown_030012C8.unk8 = arg2; + sSendRecvMgr.data = recvBuffer; } } -static void sub_81D3F68(void) +static void StartTm3(void) { - REG_TM3CNT_L = 0xFDA7; + REG_TM3CNT_L = -601; REG_TM3CNT_H = TIMER_INTR_ENABLE; REG_IME = 0; REG_IE |= INTR_FLAG_TIMER3; REG_IME = 1; } -void sub_81D3F9C(void) +void EReaderHelper_Timer3Callback(void) { - sub_81D414C(); - sub_81D413C(); + DisableTm3(); + EnableSio(); } -void sub_81D3FAC(void) +void EReaderHelper_SerialCallback(void) { - u16 i, playerCount, k; - u32 value; - u16 var0; - u16 recvBuffer[4]; + u16 i, cnt1, cnt2; + u32 recv32; + u16 recv[4]; - switch (gUnknown_030012C8.unk0[1]) + switch (sSendRecvMgr.state) { - case 1: + case EREADER_XFR_STATE_HANDSHAKE: REG_SIOMLT_SEND = 0xCCD0; // Handshake id - *(u64 *)recvBuffer = REG_SIOMLT_RECV; - for (i = 0, playerCount = 0, k = 0; i < 4; i++) + *(u64 *)recv = REG_SIOMLT_RECV; + for (i = 0, cnt1 = 0, cnt2 = 0; i < 4; i++) { - if (recvBuffer[i] == 0xCCD0) - playerCount++; - else if (recvBuffer[i] != 0xFFFF) - k++; + if (recv[i] == 0xCCD0) + cnt1++; + else if (recv[i] != 0xFFFF) + cnt2++; } - if (playerCount == 2 && k == 0) - gUnknown_030012C8.unk0[1] = 2; + if (cnt1 == 2 && cnt2 == 0) + sSendRecvMgr.state = 2; break; - case 3: - value = REG_SIODATA32; - if (!gUnknown_030012C8.unkC && !gUnknown_030012C8.unk0[0]) - gUnknown_030012C8.unk10 = value / 4 + 1; + case EREADER_XFR_STATE_TRANSFER: + recv32 = REG_SIODATA32; + // The first value sent by the EReader is the payload size + if (!sSendRecvMgr.cursor && !sSendRecvMgr.isParent) + sSendRecvMgr.size = recv32 / 4 + 1; - if (gUnknown_030012C8.unk0[0] == 1) + if (sSendRecvMgr.isParent == TRUE) { - if (gUnknown_030012C8.unkC < gUnknown_030012C8.unk10) + // Send mode + if (sSendRecvMgr.cursor < sSendRecvMgr.size) { - REG_SIODATA32 = gUnknown_030012C8.unk8[gUnknown_030012C8.unkC]; - gUnknown_030012C8.unk14 += gUnknown_030012C8.unk8[gUnknown_030012C8.unkC]; + REG_SIODATA32 = sSendRecvMgr.data[sSendRecvMgr.cursor]; + sSendRecvMgr.checksum += sSendRecvMgr.data[sSendRecvMgr.cursor]; } else { - REG_SIODATA32 = gUnknown_030012C8.unk14; + REG_SIODATA32 = sSendRecvMgr.checksum; } } else { - if (gUnknown_030012C8.unkC > 0 && gUnknown_030012C8.unkC < gUnknown_030012C8.unk10 + 1) + // Receive mode + if (sSendRecvMgr.cursor > 0 && sSendRecvMgr.cursor < sSendRecvMgr.size + 1) { - gUnknown_030012C8.unk8[gUnknown_030012C8.unkC - 1] = value; - gUnknown_030012C8.unk14 += value; + sSendRecvMgr.data[sSendRecvMgr.cursor - 1] = recv32; + sSendRecvMgr.checksum += recv32; } - else if (gUnknown_030012C8.unkC) + else if (sSendRecvMgr.cursor) { - if (gUnknown_030012C8.unk14 == value) - gUnknown_030012C8.unk0[3] = 1; + if (sSendRecvMgr.checksum == recv32) + sSendRecvMgr.checksumResult = EREADER_CHECKSUM_OK; else - gUnknown_030012C8.unk0[3] = 2; + sSendRecvMgr.checksumResult = EREADER_CHECKSUM_ERR; } - gUnknown_030012E8 = 0; + sCounter2 = 0; } - if (++gUnknown_030012C8.unkC < gUnknown_030012C8.unk10 + 2) + if (++sSendRecvMgr.cursor < sSendRecvMgr.size + 2) { - if (gUnknown_030012C8.unk0[0]) + if (sSendRecvMgr.isParent) REG_TM3CNT_H |= TIMER_ENABLE; else - sub_81D413C(); + EnableSio(); } else { - gUnknown_030012C8.unk0[1] = 4; - gUnknown_030012E6 = 0; + sSendRecvMgr.state = EREADER_XFR_STATE_TRANSFER_DONE; + sCounter1 = 0; } break; - case 5: - if (!gUnknown_030012C8.unk0[0]) - REG_SIOMLT_SEND = gUnknown_030012C8.unk0[3]; + case EREADER_XFR_STATE_CHECKSUM: + if (!sSendRecvMgr.isParent) + REG_SIOMLT_SEND = sSendRecvMgr.checksumResult; - *(u64 *)recvBuffer = REG_SIOMLT_RECV; - var0 = recvBuffer[1] - 1; - if (var0 < 2) + *(vu64 *)recv = REG_SIOMLT_RECV; + if (recv[1] == EREADER_CHECKSUM_OK || recv[1] == EREADER_CHECKSUM_ERR) { - if (gUnknown_030012C8.unk0[0] == 1) - gUnknown_030012C8.unk0[3] = recvBuffer[1]; + if (sSendRecvMgr.isParent == TRUE) + sSendRecvMgr.checksumResult = recv[1]; // EReader has (in)validated the payload - gUnknown_030012C8.unk0[1] = 6; + sSendRecvMgr.state = EREADER_XFR_STATE_DONE; } break; } } -static void sub_81D413C(void) +static void EnableSio(void) { REG_SIOCNT |= SIO_ENABLE; } -static void sub_81D414C(void) +static void DisableTm3(void) { REG_TM3CNT_H &= ~TIMER_ENABLE; REG_TM3CNT_L = 0xFDA7; } -static void sub_81D4170(void) +static void GetKeyInput(void) { - int keysMask = REG_KEYINPUT ^ KEYS_MASK; - gUnknown_030012E2 = keysMask & ~gUnknown_030012E0; - gUnknown_030012E0 = keysMask; + int rawKeys = REG_KEYINPUT ^ KEYS_MASK; + sJoyNew = rawKeys & ~sJoyNewOrRepeated; + sJoyNewOrRepeated = rawKeys; } void EReaderHelper_SaveRegsState(void) { - gUnknown_030012EC = REG_IME; - gUnknown_030012EE = REG_IE; - gUnknown_030012F0 = REG_TM3CNT_H; - gUnknown_030012F2 = REG_SIOCNT; - gUnknown_030012F4 = REG_RCNT; + sSavedIme = REG_IME; + sSavedIe = REG_IE; + sSavedTm3Cnt = REG_TM3CNT_H; + sSavedSioCnt = REG_SIOCNT; + sSavedRCnt = REG_RCNT; } void EReaderHelper_RestoreRegsState(void) { - REG_IME = gUnknown_030012EC; - REG_IE = gUnknown_030012EE; - REG_TM3CNT_H = gUnknown_030012F0; - REG_SIOCNT = gUnknown_030012F2; - REG_RCNT = gUnknown_030012F4; + REG_IME = sSavedIme; + REG_IE = sSavedIe; + REG_TM3CNT_H = sSavedTm3Cnt; + REG_SIOCNT = sSavedSioCnt; + REG_RCNT = sSavedRCnt; } -void sub_81D4238(void) +void EReaderHelper_ClearSendRecvMgr(void) { - CpuFill32(0, &gUnknown_030012C8, sizeof(struct Unknown030012C8)); + CpuFill32(0, &sSendRecvMgr, sizeof(sSendRecvMgr)); } diff --git a/src/ereader_screen.c b/src/ereader_screen.c index d27605c1d493..d79b23b9368b 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -47,10 +47,10 @@ static void sub_81D4D50(struct Unk03006370 *arg0, int arg1, u32 *arg2) { volatile u16 backupIME = REG_IME; REG_IME = 0; - gIntrTable[1] = sub_81D3FAC; - gIntrTable[2] = sub_81D3F9C; + gIntrTable[1] = EReaderHelper_SerialCallback; + gIntrTable[2] = EReaderHelper_Timer3Callback; EReaderHelper_SaveRegsState(); - sub_81D4238(); + EReaderHelper_ClearSendRecvMgr(); REG_IE |= INTR_FLAG_VCOUNT; REG_IME = backupIME; arg0->unk0 = 0; @@ -62,7 +62,7 @@ static void sub_81D4DB8(struct Unk03006370 *arg0) { volatile u16 backupIME = REG_IME; REG_IME = 0; - sub_81D4238(); + EReaderHelper_ClearSendRecvMgr(); EReaderHelper_RestoreRegsState(); RestoreSerialTimer3IntrHandlers(); REG_IME = backupIME; From 86475c5ded028032a5b02c2700af77de2ab140c6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 24 Apr 2021 18:04:27 -0400 Subject: [PATCH 152/762] Document trainer hill ereader --- include/constants/trainer_hill.h | 5 +- include/ereader_helpers.h | 15 +++-- src/ereader_helpers.c | 97 +++++++++++++++++--------------- src/ereader_screen.c | 2 +- 4 files changed, 62 insertions(+), 57 deletions(-) diff --git a/include/constants/trainer_hill.h b/include/constants/trainer_hill.h index 27357e99c514..0e802bba8033 100644 --- a/include/constants/trainer_hill.h +++ b/include/constants/trainer_hill.h @@ -37,8 +37,9 @@ #define TRAINER_HILL_TEXT_PLAYER_WON 4 #define TRAINER_HILL_TEXT_AFTER 5 -#define NUM_TRAINER_HILL_TRAINERS (NUM_TRAINER_HILL_FLOORS * 2) -#define NUM_TRAINER_HILL_TRAINERS_JP (NUM_TRAINER_HILL_FLOORS_JP * 2) +#define TRAINER_HILL_TRAINERS_PER_FLOOR 2 +#define NUM_TRAINER_HILL_TRAINERS (NUM_TRAINER_HILL_FLOORS * TRAINER_HILL_TRAINERS_PER_FLOOR) +#define NUM_TRAINER_HILL_TRAINERS_JP (NUM_TRAINER_HILL_FLOORS_JP * TRAINER_HILL_TRAINERS_PER_FLOOR) // Values returned by TrainerHillGetChallengeStatus #define TRAINER_HILL_PLAYER_STATUS_LOST 0 diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h index 7cced65cb8d8..937cfaca13a1 100755 --- a/include/ereader_helpers.h +++ b/include/ereader_helpers.h @@ -5,24 +5,23 @@ struct EReaderTrainerHillTrainer { - u8 unk0; - struct TrainerHillTrainer unk4; - struct TrHillDisplay unk14C; + u8 trainerNum; + struct TrainerHillTrainer trainer; + struct TrHillDisplay display; u32 checksum; }; // size=0x274 struct EReaderTrainerHillSet { - u8 count; + u8 numTrainers; u8 id; - u16 dummy; u32 checksum; - struct EReaderTrainerHillTrainer unk_8[6]; + struct EReaderTrainerHillTrainer trainers[6]; u8 unk_ec0[40]; }; // size = 0xf00 -bool8 EReader_IsReceivedDataValid(struct EReaderTrainerHillSet *buffer); -bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *arg0); +bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet *); +bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *); bool32 ReadTrainerHillAndValidate(void); int EReaderHandleTransfer(u8, size_t, const void *, void *); void EReaderHelper_Timer3Callback(void); diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index 4db62c84792b..eef2a15d8e07 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -14,6 +14,7 @@ #include "constants/trainers.h" #include "constants/moves.h" #include "constants/items.h" +#include "constants/trainer_hill.h" enum { EREADER_XFR_STATE_INIT = 0, @@ -419,127 +420,131 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { }, }; -static u8 sub_81D38D4(void) +static u8 GetTrainerHillUnkVal(void) { return (gSaveBlock1Ptr->trainerHill.unused + 1) % 256; } -static bool32 Struct_EReaderTrainerHillTrainer_ValidateChecksum(struct EReaderTrainerHillTrainer *arg0) +static bool32 ValidateTrainerChecksum(struct EReaderTrainerHillTrainer * hillTrainer) { - int checksum = CalcByteArraySum((u8 *)arg0, 0x270); - if (checksum != arg0->checksum) + int checksum = CalcByteArraySum((u8 *)hillTrainer, offsetof(typeof(*hillTrainer), checksum)); + if (checksum != hillTrainer->checksum) return FALSE; return TRUE; } -bool8 EReader_IsReceivedDataValid(struct EReaderTrainerHillSet *buffer) +bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet * hillSet) { u32 i; u32 checksum; - int var0 = buffer->count; - if (var0 < 1 || var0 > 8) + int numTrainers = hillSet->numTrainers; + + // Validate number of trainers + if (numTrainers < 1 || numTrainers > NUM_TRAINER_HILL_TRAINERS) return FALSE; - for (i = 0; i < var0; i++) + // Validate trainers + for (i = 0; i < numTrainers; i++) { - if (!Struct_EReaderTrainerHillTrainer_ValidateChecksum(&buffer->unk_8[i])) + if (!ValidateTrainerChecksum(&hillSet->trainers[i])) return FALSE; } - checksum = CalcByteArraySum((u8 *)buffer->unk_8, var0 * sizeof(struct EReaderTrainerHillTrainer)); - if (checksum != buffer->checksum) + // Validate checksum + checksum = CalcByteArraySum((u8 *)hillSet->trainers, numTrainers * sizeof(struct EReaderTrainerHillTrainer)); + if (checksum != hillSet->checksum) return FALSE; return TRUE; } -static bool32 TrainerHill_VerifyChecksum(struct EReaderTrainerHillSet *buffer) +static bool32 ValidateTrainerHillChecksum(struct EReaderTrainerHillSet *hillSet) { u32 checksum; - int var0 = buffer->count; - if (var0 < 1 || var0 > 8) + int numTrainers = hillSet->numTrainers; + if (numTrainers < 1 || numTrainers > NUM_TRAINER_HILL_TRAINERS) return FALSE; - checksum = CalcByteArraySum((u8 *)buffer->unk_8, sizeof(struct EReaderTrainerHillSet) - offsetof(struct EReaderTrainerHillSet, unk_8)); - if (checksum != buffer->checksum) + checksum = CalcByteArraySum((u8 *)hillSet->trainers, sizeof(struct EReaderTrainerHillSet) - offsetof(struct EReaderTrainerHillSet, trainers)); + if (checksum != hillSet->checksum) return FALSE; return TRUE; } -static bool32 TryWriteTrainerHill_r(struct EReaderTrainerHillSet *ttdata, struct TrHillTag *buffer2) +static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSet, struct TrHillTag * hillTag) { int i; - AGB_ASSERT_EX(ttdata->dummy == 0, "cereader_tool.c", 450); - AGB_ASSERT_EX(ttdata->id == 0, "cereader_tool.c", 452); + AGB_ASSERT_EX(hillSet->dummy == 0, "cereader_tool.c", 450); + AGB_ASSERT_EX(hillSet->id == 0, "cereader_tool.c", 452); - memset(buffer2, 0, 0x1000); - buffer2->numTrainers = ttdata->count; - buffer2->unused1 = sub_81D38D4(); - buffer2->numFloors = (ttdata->count + 1) / 2; + memset(hillTag, 0, SECTOR_SIZE); + hillTag->numTrainers = hillSet->numTrainers; + hillTag->unused1 = GetTrainerHillUnkVal(); + hillTag->numFloors = (hillSet->numTrainers + 1) / TRAINER_HILL_TRAINERS_PER_FLOOR; - for (i = 0; i < ttdata->count; i++) + for (i = 0; i < hillSet->numTrainers; i++) { if (!(i & 1)) { - buffer2->floors[i / 2].trainerNum1 = ttdata->unk_8[i].unk0; - buffer2->floors[i / 2].display = ttdata->unk_8[i].unk14C; - buffer2->floors[i / 2].trainers[0] = ttdata->unk_8[i].unk4; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainerNum1 = hillSet->trainers[i].trainerNum; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].display = hillSet->trainers[i].display; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[0] = hillSet->trainers[i].trainer; } else { - buffer2->floors[i / 2].trainerNum2 = ttdata->unk_8[i].unk0; - buffer2->floors[i / 2].trainers[1] = ttdata->unk_8[i].unk4; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainerNum2 = hillSet->trainers[i].trainerNum; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[1] = hillSet->trainers[i].trainer; } } if (i & 1) { - buffer2->floors[i / 2].trainers[1] = sTrainerHillTrainerTemplates_JP[i / 2]; + hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[1] = sTrainerHillTrainerTemplates_JP[i / TRAINER_HILL_TRAINERS_PER_FLOOR]; } - buffer2->checksum = CalcByteArraySum((u8 *)buffer2->floors, 4 * sizeof(struct TrHillFloor)); - if (TryWriteSpecialSaveSection(SECTOR_ID_TRAINER_HILL, (u8 *)buffer2) != SAVE_STATUS_OK) + hillTag->checksum = CalcByteArraySum((u8 *)hillTag->floors, NUM_TRAINER_HILL_FLOORS * sizeof(struct TrHillFloor)); + if (TryWriteSpecialSaveSection(SECTOR_ID_TRAINER_HILL, (u8 *)hillTag) != SAVE_STATUS_OK) return FALSE; return TRUE; } -bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *arg0) +bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet * hillSet) { - void *var0 = AllocZeroed(0x1000); - bool32 result = TryWriteTrainerHill_r(arg0, var0); - Free(var0); + void *buffer = AllocZeroed(SECTOR_SIZE); + bool32 result = TryWriteTrainerHill_Internal(hillSet, buffer); + Free(buffer); return result; } -static bool32 TryReadTrainerHill_r(struct EReaderTrainerHillSet *dst, u8 *buffer) +static bool32 TryReadTrainerHill_Internal(struct EReaderTrainerHillSet * dest, u8 * buffer) { if (TryReadSpecialSaveSection(SECTOR_ID_TRAINER_HILL, buffer) != SAVE_STATUS_OK) return FALSE; - memcpy(dst, buffer, sizeof(struct EReaderTrainerHillSet)); - if (!TrainerHill_VerifyChecksum(dst)) + memcpy(dest, buffer, sizeof(struct EReaderTrainerHillSet)); + if (!ValidateTrainerHillChecksum(dest)) return FALSE; return TRUE; } -static bool32 TryReadTrainerHill(struct EReaderTrainerHillSet *arg0) +static bool32 TryReadTrainerHill(struct EReaderTrainerHillSet * hillSet) { - u8 *var0 = AllocZeroed(0x1000); - bool32 result = TryReadTrainerHill_r(arg0, var0); - Free(var0); + u8 *buffer = AllocZeroed(SECTOR_SIZE); + bool32 result = TryReadTrainerHill_Internal(hillSet, buffer); + Free(buffer); return result; } bool32 ReadTrainerHillAndValidate(void) { - struct EReaderTrainerHillSet *var0 = AllocZeroed(0x1000); - bool32 result = TryReadTrainerHill(var0); - Free(var0); + struct EReaderTrainerHillSet *hillSet = AllocZeroed(SECTOR_SIZE); + bool32 result = TryReadTrainerHill(hillSet); + Free(hillSet); return result; } diff --git a/src/ereader_screen.c b/src/ereader_screen.c index d79b23b9368b..438c4bec9d9b 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -401,7 +401,7 @@ static void sub_81D5084(u8 taskId) } break; case 15: - data->unkE = EReader_IsReceivedDataValid((struct EReaderTrainerHillSet *)gDecompressionBuffer); + data->unkE = ValidateTrainerHillData((struct EReaderTrainerHillSet *)gDecompressionBuffer); SetCloseLinkCallbackAndType(data->unkE); data->unk8 = 16; break; From e065c0c28576509f1873d76168618e4e57692f86 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 24 Apr 2021 18:26:25 -0400 Subject: [PATCH 153/762] Label more unused battle anims --- include/battle_anim.h | 4 +-- src/battle_anim_mons.c | 4 +-- src/battle_anim_status_effects.c | 62 ++++++++++++++++---------------- 3 files changed, 35 insertions(+), 35 deletions(-) diff --git a/include/battle_anim.h b/include/battle_anim.h index 34bd774fe8a5..47648048970f 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -75,8 +75,8 @@ int GetAnimBgAttribute(u8 bgId, u8 attributeId); // battle_anim_mons.c void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite); -void AnimUnused_80A8AEC(struct Sprite *sprite); -void AnimUnused_80A8A6C(struct Sprite *sprite); +void AnimTranslateLinearAndFlicker(struct Sprite *sprite); +void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite); void AnimWeatherBallUp(struct Sprite *sprite); void AnimWeatherBallDown(struct Sprite *sprite); void AnimSpinningSparkle(struct Sprite *sprite); diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 6fd8cd6213da..3be8ed23d992 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -2273,7 +2273,7 @@ u8 CreateInvisibleSpriteCopy(int battlerId, u8 spriteId, int species) return newSpriteId; } -void AnimUnused_80A8A6C(struct Sprite *sprite) +void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker)) @@ -2296,7 +2296,7 @@ void AnimUnused_80A8A6C(struct Sprite *sprite) } // Used by three different unused battle anim sprite templates. -void AnimUnused_80A8AEC(struct Sprite *sprite) +void AnimTranslateLinearAndFlicker(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index e7ef056738d1..e859bed6209c 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -26,7 +26,7 @@ static void Task_DoStatusAnimation(u8 taskId); static void AnimFlashingCircleImpact(struct Sprite *sprite); static void AnimFlashingCircleImpact_Step(struct Sprite *sprite); -static const union AnimCmd sAnim_Unused_853EDE4[] = +static const union AnimCmd sAnim_FlickeringOrb[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(4, 3), @@ -35,33 +35,33 @@ static const union AnimCmd sAnim_Unused_853EDE4[] = ANIMCMD_JUMP(0) }; -static const union AnimCmd *const sAnims_Unused_853EDF8[] = +static const union AnimCmd *const sAnims_FlickeringOrb[] = { - sAnim_Unused_853EDE4 + sAnim_FlickeringOrb }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0853EDFC = +static const struct SpriteTemplate sFlickeringOrbSpriteTemplate = { .tileTag = ANIM_TAG_ORB, .paletteTag = ANIM_TAG_ORB, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sAnims_Unused_853EDF8, + .anims = sAnims_FlickeringOrb, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_80A8AEC, + .callback = AnimTranslateLinearAndFlicker, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0853EE14 = +static const struct SpriteTemplate sFlickeringOrbFlippedSpriteTemplate = { .tileTag = ANIM_TAG_ORB, .paletteTag = ANIM_TAG_ORB, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sAnims_Unused_853EDF8, + .anims = sAnims_FlickeringOrb, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_80A8A6C, + .callback = AnimTranslateLinearAndFlicker_Flipped, }; static const union AnimCmd sAnim_WeatherBallNormal[] = @@ -124,7 +124,7 @@ const struct SpriteTemplate gSpinningSparkleSpriteTemplate = }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0853EE9C = +static const struct SpriteTemplate sFlickeringFootSpriteTemplate = { .tileTag = ANIM_TAG_MONSTER_FOOT, .paletteTag = ANIM_TAG_MONSTER_FOOT, @@ -132,79 +132,79 @@ const struct SpriteTemplate gUnusedSpriteTemplate_0853EE9C = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_80A8AEC, + .callback = AnimTranslateLinearAndFlicker, }; -static const union AnimCmd sAnim_Unused_853EEB4[] = +static const union AnimCmd sAnim_FlickeringImpact_0[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_JUMP(0) }; -static const union AnimCmd sAnim_Unused_853EEBC[] = +static const union AnimCmd sAnim_FlickeringImpact_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_JUMP(0) }; -static const union AnimCmd sAnim_Unused_853EEC4[] = +static const union AnimCmd sAnim_FlickeringImpact_2[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_JUMP(0) }; -static const union AnimCmd *const sAnims_Unused_853EECC[] = +static const union AnimCmd *const sAnims_FlickeringImpact[] = { - sAnim_Unused_853EEB4, - sAnim_Unused_853EEBC, - sAnim_Unused_853EEC4, + sAnim_FlickeringImpact_0, + sAnim_FlickeringImpact_1, + sAnim_FlickeringImpact_2, }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0853EED8 = +static const struct SpriteTemplate sFlickeringImpactSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_IMPACT, .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnims_Unused_853EECC, + .anims = sAnims_FlickeringImpact, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimUnused_80A8AEC, + .callback = AnimTranslateLinearAndFlicker, }; -static const union AnimCmd sAnim_Unused_853EEF0[] = +static const union AnimCmd sAnim_FlickeringShrinkOrb[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_JUMP(0) }; -static const union AnimCmd *const sAnims_Unused_853EEF8[] = +static const union AnimCmd *const sAnims_FlickeringShrinkOrb[] = { - sAnim_Unused_853EEF0 + sAnim_FlickeringShrinkOrb }; -static const union AffineAnimCmd sAffineAnim_Unused_853EEFC[] = +static const union AffineAnimCmd sAffineAnim_FlickeringShrinkOrb[] = { AFFINEANIMCMD_FRAME(96, 96, 0, 0), AFFINEANIMCMD_FRAME(2, 2, 0, 1), AFFINEANIMCMD_JUMP(1) }; -static const union AffineAnimCmd *const sAffineAnims_Unused_853EEF8[] = +static const union AffineAnimCmd *const sAffineAnims_FlickeringShrinkOrb[] = { - sAffineAnim_Unused_853EEFC + sAffineAnim_FlickeringShrinkOrb }; // Unused -const struct SpriteTemplate gUnusedSpriteTemplate_0853EF18 = +static const struct SpriteTemplate sFlickeringShrinkOrbSpriteTemplate = { .tileTag = ANIM_TAG_ORB, .paletteTag = ANIM_TAG_ORB, .oam = &gOamData_AffineDouble_ObjNormal_16x16, - .anims = sAnims_Unused_853EEF8, + .anims = sAnims_FlickeringShrinkOrb, .images = NULL, - .affineAnims = sAffineAnims_Unused_853EEF8, - .callback = AnimUnused_80A8A6C, + .affineAnims = sAffineAnims_FlickeringShrinkOrb, + .callback = AnimTranslateLinearAndFlicker_Flipped, }; static const struct Subsprite sFrozenIceCubeSubsprites[] = From bee60f4c64e6cdf2bfa3777b59067ff63450e4e3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 24 Apr 2021 23:29:49 -0400 Subject: [PATCH 154/762] Document battler sprite affine anims, default pokeball throw --- include/data.h | 10 ++- src/battle_anim_effects_3.c | 8 +- src/battle_anim_mons.c | 4 +- src/battle_anim_throw.c | 5 +- src/contest.c | 4 +- src/data.c | 162 ++++++++++++++++++---------------- src/egg_hatch.c | 2 +- src/pokeball.c | 100 +++++++++++---------- src/pokemon.c | 4 +- src/trainer_pokemon_sprites.c | 2 +- 10 files changed, 158 insertions(+), 143 deletions(-) diff --git a/include/data.h b/include/data.h index 2f8c447463a3..f94f55a8f369 100644 --- a/include/data.h +++ b/include/data.h @@ -5,6 +5,12 @@ #define SPECIES_SHINY_TAG 500 +enum { + BATTLER_AFFINE_NORMAL, + BATTLER_AFFINE_EMERGE, + BATTLER_AFFINE_RETURN, +}; + struct MonCoords { // This would use a bitfield, but some function @@ -87,9 +93,9 @@ extern const struct SpriteFrameImage gTrainerBackPicTable_Steven[]; extern const union AffineAnimCmd *const gAffineAnims_BattleSpritePlayerSide[]; extern const union AffineAnimCmd *const gAffineAnims_BattleSpriteOpponentSide[]; -extern const union AffineAnimCmd *const gUnknown_082FF6C0[]; +extern const union AffineAnimCmd *const gAffineAnims_BattleSpriteContest[]; -extern const union AnimCmd *const gUnknown_082FF70C[]; +extern const union AnimCmd *const gAnims_MonPic[]; extern const struct MonCoords gMonFrontPicCoords[]; extern const struct CompressedSpriteSheet gMonStillFrontPicTable[]; extern const struct MonCoords gMonBackPicCoords[]; diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 800431c6a0cc..5aaf45f1910c 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2319,11 +2319,11 @@ void AnimTask_TransformMon(u8 taskId) } if (IsSpeciesNotUnown(gContestResources->moveAnim->targetSpecies)) - gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gUnknown_082FF6C0; + gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gAffineAnims_BattleSpriteContest; else gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gAffineAnims_BattleSpriteOpponentSide; - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimAttacker]], 0); + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimAttacker]], BATTLER_AFFINE_NORMAL); } gTasks[taskId].data[0]++; @@ -4733,8 +4733,8 @@ void AnimTask_MonToSubstitute(u8 taskId) LoadBattleMonGfxAndAnimate(gBattleAnimAttacker, 0, spriteId); if (IsContest()) { - gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gUnknown_082FF6C0; - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimAttacker]], 0); + gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gAffineAnims_BattleSpriteContest; + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimAttacker]], BATTLER_AFFINE_NORMAL); } for (i = 0; i < NUM_TASK_DATA; i++) diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 6fd8cd6213da..6dc0a0271311 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -2078,8 +2078,8 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 if (IsContest()) { - gSprites[spriteId].affineAnims = gUnknown_082FF6C0; - StartSpriteAffineAnim(&gSprites[spriteId], 0); + gSprites[spriteId].affineAnims = gAffineAnims_BattleSpriteContest; + StartSpriteAffineAnim(&gSprites[spriteId], BATTLER_AFFINE_NORMAL); } return spriteId; } diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index f6a48cf69baa..83768b47619c 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -16,6 +16,7 @@ #include "task.h" #include "trig.h" #include "util.h" +#include "data.h" #include "constants/items.h" #include "constants/moves.h" #include "constants/songs.h" @@ -1471,7 +1472,7 @@ static void SpriteCB_Ball_Release_Step(struct Sprite *sprite) // Animate Pokémon emerging from Poké Ball gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = FALSE; - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimTarget]], 1); + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimTarget]], BATTLER_AFFINE_EMERGE); AnimateSprite(&gSprites[gBattlerSpriteIds[gBattleAnimTarget]]); gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY = 4096; } @@ -1485,7 +1486,7 @@ static void SpriteCB_Ball_Release_Wait(struct Sprite *sprite) if (gSprites[gBattlerSpriteIds[gBattleAnimTarget]].affineAnimEnded) { - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimTarget]], 0); + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[gBattleAnimTarget]], BATTLER_AFFINE_NORMAL); released = TRUE; } else diff --git a/src/contest.c b/src/contest.c index 246fc1e5013d..0d2d66a662e0 100644 --- a/src/contest.c +++ b/src/contest.c @@ -3133,10 +3133,10 @@ static u8 CreateContestantSprite(u16 species, u32 otId, u32 personality, u32 ind gSprites[spriteId].data[0] = gSprites[spriteId].oam.paletteNum; gSprites[spriteId].data[2] = species; if (IsSpeciesNotUnown(species)) - gSprites[spriteId].affineAnims = gUnknown_082FF6C0; + gSprites[spriteId].affineAnims = gAffineAnims_BattleSpriteContest; else gSprites[spriteId].affineAnims = gAffineAnims_BattleSpriteOpponentSide; - StartSpriteAffineAnim(gSprites + spriteId, 0); + StartSpriteAffineAnim(&gSprites[spriteId], BATTLER_AFFINE_NORMAL); return spriteId; } diff --git a/src/data.c b/src/data.c index 30672f7c4fca..d300d4f63339 100644 --- a/src/data.c +++ b/src/data.c @@ -124,172 +124,178 @@ static const union AnimCmd sAnim_GeneralFrame3[] = ANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF548[] = +// Many of these affine anims seem to go unused, and +// instead SetSpriteRotScale is used to manipulate +// the battler sprites directly (for instance, in AnimTask_SwitchOutShrinkMon). +// Those with explicit indexes are referenced elsewhere. + +static const union AffineAnimCmd sAffineAnim_Battler_Normal[] = { - AFFINEANIMCMD_FRAME(0x0100, 0x0100, 0x00, 0x00), + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF558[] = +static const union AffineAnimCmd sAffineAnim_Battler_Flipped[] = { - AFFINEANIMCMD_FRAME(0xff00, 0x0100, 0x00, 0x00), + AFFINEANIMCMD_FRAME(-0x100, 0x100, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF568[] = +static const union AffineAnimCmd sAffineAnim_Battler_Emerge[] = { - AFFINEANIMCMD_FRAME(0x0028, 0x0028, 0x00, 0x00), - AFFINEANIMCMD_FRAME(0x0012, 0x0012, 0x00, 0x0c), + AFFINEANIMCMD_FRAME(0x28, 0x28, 0, 0), + AFFINEANIMCMD_FRAME(0x12, 0x12, 0, 12), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF580[] = +static const union AffineAnimCmd sAffineAnim_Battler_Return[] = { - AFFINEANIMCMD_FRAME(0xfffe, 0xfffe, 0x00, 0x12), - AFFINEANIMCMD_FRAME(0xfff0, 0xfff0, 0x00, 0x0f), + AFFINEANIMCMD_FRAME( -0x2, -0x2, 0, 18), + AFFINEANIMCMD_FRAME(-0x10, -0x10, 0, 15), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF598[] = +static const union AffineAnimCmd sAffineAnim_Battler_HorizontalSquishLoop[] = { - AFFINEANIMCMD_FRAME(0x00a0, 0x0100, 0x00, 0x00), - AFFINEANIMCMD_FRAME(0x0004, 0x0000, 0x00, 0x08), - AFFINEANIMCMD_FRAME(0xfffc, 0x0000, 0x00, 0x08), + AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0), + AFFINEANIMCMD_FRAME( 0x4, 0x0, 0, 8), + AFFINEANIMCMD_FRAME(-0x4, 0x0, 0, 8), AFFINEANIMCMD_JUMP(1), }; -static const union AffineAnimCmd gUnknown_082FF5B8[] = +static const union AffineAnimCmd sAffineAnim_Battler_Grow[] = { - AFFINEANIMCMD_FRAME(0x0002, 0x0002, 0x00, 0x14), + AFFINEANIMCMD_FRAME(0x2, 0x2, 0, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF5C8[] = +static const union AffineAnimCmd sAffineAnim_Battler_Shrink[] = { - AFFINEANIMCMD_FRAME(0xfffe, 0xfffe, 0x00, 0x14), + AFFINEANIMCMD_FRAME(-0x2, -0x2, 0, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF5D8[] = +static const union AffineAnimCmd sAffineAnim_Battler_BigToSmall[] = { - AFFINEANIMCMD_FRAME(0x0100, 0x0100, 0x00, 0000), - AFFINEANIMCMD_FRAME(0xfff0, 0xfff0, 0x00, 0x09), + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), + AFFINEANIMCMD_FRAME(-0x10, -0x10, 0, 9), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF5F0[] = +static const union AffineAnimCmd sAffineAnim_Battler_GrowLarge[] = { - AFFINEANIMCMD_FRAME(0x0004, 0x0004, 0x00, 0x3f), + AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 63), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF600[] = +static const union AffineAnimCmd sAffineAnim_Battler_TipRight[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfd, 0x05), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x03, 0x05), + AFFINEANIMCMD_FRAME(0x0, 0x0, -3, 5), + AFFINEANIMCMD_FRAME(0x0, 0x0, 3, 5), AFFINEANIMCMD_END, }; const union AffineAnimCmd *const gAffineAnims_BattleSpritePlayerSide[] = { - gUnknown_082FF548, - gUnknown_082FF568, - gUnknown_082FF580, - gUnknown_082FF598, - gUnknown_082FF5B8, - gUnknown_082FF5C8, - gUnknown_082FF5F0, - gUnknown_082FF600, - gUnknown_082FF5D8, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Normal, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_GrowLarge, + sAffineAnim_Battler_TipRight, + sAffineAnim_Battler_BigToSmall, }; -static const union AffineAnimCmd gUnknown_082FF63C[] = +static const union AffineAnimCmd sAffineAnim_Battler_SpinShrink[] = { - AFFINEANIMCMD_FRAME(0xfffc, 0xfffc, 0x04, 0x3f), + AFFINEANIMCMD_FRAME(-0x4, -0x4, 4, 63), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF64C[] = +static const union AffineAnimCmd sAffineAnim_Battler_TipLeft[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x03, 0x05), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfd, 0x05), + AFFINEANIMCMD_FRAME(0x0, 0x0, 3, 5), + AFFINEANIMCMD_FRAME(0x0, 0x0, -3, 5), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF664[] = +static const union AffineAnimCmd sAffineAnim_Battler_RotateUpAndBack[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfb, 0x14), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x00, 0x14), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x05, 0x14), + AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 20), + AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20), + AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_082FF684[] = +static const union AffineAnimCmd sAffineAnim_Battler_Spin[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x09, 0x6e), + AFFINEANIMCMD_FRAME(0x0, 0x0, 9, 110), AFFINEANIMCMD_END, }; const union AffineAnimCmd *const gAffineAnims_BattleSpriteOpponentSide[] = { - gUnknown_082FF548, - gUnknown_082FF568, - gUnknown_082FF580, - gUnknown_082FF598, - gUnknown_082FF5B8, - gUnknown_082FF5C8, - gUnknown_082FF63C, - gUnknown_082FF64C, - gUnknown_082FF664, - gUnknown_082FF5D8, - gUnknown_082FF684, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Normal, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_SpinShrink, + sAffineAnim_Battler_TipLeft, + sAffineAnim_Battler_RotateUpAndBack, + sAffineAnim_Battler_BigToSmall, + sAffineAnim_Battler_Spin, }; -const union AffineAnimCmd *const gUnknown_082FF6C0[] = +const union AffineAnimCmd *const gAffineAnims_BattleSpriteContest[] = { - gUnknown_082FF558, - gUnknown_082FF568, - gUnknown_082FF580, - gUnknown_082FF598, - gUnknown_082FF5B8, - gUnknown_082FF5C8, - gUnknown_082FF63C, - gUnknown_082FF64C, - gUnknown_082FF664, - gUnknown_082FF5D8, - gUnknown_082FF684, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Flipped, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_SpinShrink, + sAffineAnim_Battler_TipLeft, + sAffineAnim_Battler_RotateUpAndBack, + sAffineAnim_Battler_BigToSmall, + sAffineAnim_Battler_Spin, }; -static const union AnimCmd gUnknown_082FF6EC[] = + +static const union AnimCmd sAnim_MonPic_0[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END, }; -static const union AnimCmd gUnknown_082FF6F4[] = +static const union AnimCmd sAnim_MonPic_1[] = { ANIMCMD_FRAME(1, 0), ANIMCMD_END, }; -static const union AnimCmd gUnknown_082FF6FC[] = +static const union AnimCmd sAnim_MonPic_2[] = { ANIMCMD_FRAME(2, 0), ANIMCMD_END, }; -static const union AnimCmd gUnknown_082FF704[] = +static const union AnimCmd sAnim_MonPic_3[] = { ANIMCMD_FRAME(3, 0), ANIMCMD_END, }; -const union AnimCmd *const gUnknown_082FF70C[] = +const union AnimCmd *const gAnims_MonPic[] = { - gUnknown_082FF6EC, - gUnknown_082FF6F4, - gUnknown_082FF6FC, - gUnknown_082FF704, + sAnim_MonPic_0, + sAnim_MonPic_1, + sAnim_MonPic_2, + sAnim_MonPic_3, }; #define SPECIES_SPRITE(species, sprite) [SPECIES_##species] = {sprite, MON_PIC_SIZE, SPECIES_##species} diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 0ae0e1323bb6..f2d28e9161f1 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -811,7 +811,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite) if (sprite->data[0] == 0) { gSprites[sEggHatchData->pokeSpriteID].invisible = FALSE; - StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], 1); + StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], BATTLER_AFFINE_EMERGE); } if (sprite->data[0] == 8) BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, RGB_WHITEALPHA); diff --git a/src/pokeball.c b/src/pokeball.c index 77d2b119c9fd..3671e6a35791 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -12,28 +12,29 @@ #include "task.h" #include "trig.h" #include "util.h" +#include "data.h" #include "constants/songs.h" extern struct MusicPlayerInfo gMPlayInfo_BGM; // this file's functions static void Task_DoPokeballSendOutAnim(u8 taskId); -static void SpriteCB_TestBallThrow(struct Sprite *sprite); static void SpriteCB_PlayerMonSendOut_1(struct Sprite *sprite); static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite); static void SpriteCB_OpponentMonSendOut(struct Sprite *sprite); -static void sub_80756D4(struct Sprite *sprite); -static void sub_80756E0(struct Sprite *sprite); -static void sub_807574C(struct Sprite *sprite); -static void sub_80757E4(struct Sprite *sprite); -static void sub_8075838(struct Sprite *sprite); -static void sub_8075930(struct Sprite *sprite); +static void SpriteCB_BallThrow(struct Sprite *sprite); +static void SpriteCB_BallThrow_ReachMon(struct Sprite *sprite); +static void SpriteCB_BallThrow_StartShrinkMon(struct Sprite *sprite); +static void SpriteCB_BallThrow_ShrinkMon(struct Sprite *sprite); +static void SpriteCB_BallThrow_Close(struct Sprite *sprite); +static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite); +static void SpriteCB_BallThrow_StartShakes(struct Sprite *sprite); +static void SpriteCB_BallThrow_Shake(struct Sprite *sprite); +static void SpriteCB_BallThrow_StartCaptureMon(struct Sprite *sprite); +static void SpriteCB_BallThrow_CaptureMon(struct Sprite *sprite); static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite); static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite); -static void sub_8075970(struct Sprite *sprite); static void HandleBallAnimEnd(struct Sprite *sprite); -static void sub_8075FB4(struct Sprite *sprite); -static void sub_80760F8(struct Sprite *sprite); static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite); static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite); static void SpriteCB_TradePokeball(struct Sprite *sprite); @@ -213,7 +214,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_GREATBALL, @@ -222,7 +223,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_SAFARIBALL, @@ -231,7 +232,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_ULTRABALL, @@ -240,7 +241,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_MASTERBALL, @@ -249,7 +250,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_NETBALL, @@ -258,7 +259,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_DIVEBALL, @@ -267,7 +268,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_NESTBALL, @@ -276,7 +277,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_REPEATBALL, @@ -285,7 +286,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_TIMERBALL, @@ -294,7 +295,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_LUXURYBALL, @@ -303,7 +304,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, { .tileTag = GFX_TAG_PREMIERBALL, @@ -312,7 +313,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .anims = sBallAnimSequences, .images = NULL, .affineAnims = sAffineAnim_BallRotate, - .callback = SpriteCB_TestBallThrow, + .callback = SpriteCB_BallThrow, }, }; @@ -408,7 +409,10 @@ static void Task_DoPokeballSendOutAnim(u8 taskId) PlaySE(SE_BALL_THROW); } -static void SpriteCB_TestBallThrow(struct Sprite *sprite) +// This sequence of functions is very similar to those that get run when +// a Pokéball gets thrown at a wild Pokémon, starting at SpriteCB_Ball_Arc. +// These do not seem to get run. +static void SpriteCB_BallThrow(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) { @@ -430,7 +434,7 @@ static void SpriteCB_TestBallThrow(struct Sprite *sprite) sprite->sBattler = opponentBattler; sprite->data[7] = noOfShakes; DestroyTask(taskId); - sprite->callback = sub_80756D4; + sprite->callback = SpriteCB_BallThrow_ReachMon; } } @@ -440,26 +444,24 @@ static void SpriteCB_TestBallThrow(struct Sprite *sprite) #undef tBattler #undef tOpponentBattler -static void sub_80756D4(struct Sprite *sprite) +static void SpriteCB_BallThrow_ReachMon(struct Sprite *sprite) { - sprite->callback = sub_80756E0; + sprite->callback = SpriteCB_BallThrow_StartShrinkMon; } -// Start something for battler -static void sub_80756E0(struct Sprite *sprite) +static void SpriteCB_BallThrow_StartShrinkMon(struct Sprite *sprite) { if (++sprite->data[5] == 10) { sprite->data[5] = 0; - sprite->callback = sub_807574C; - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[sprite->sBattler]], 2); + sprite->callback = SpriteCB_BallThrow_ShrinkMon; + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[sprite->sBattler]], BATTLER_AFFINE_RETURN); AnimateSprite(&gSprites[gBattlerSpriteIds[sprite->sBattler]]); gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] = 0; } } -// Shrink player -static void sub_807574C(struct Sprite *sprite) +static void SpriteCB_BallThrow_ShrinkMon(struct Sprite *sprite) { sprite->data[5]++; if (sprite->data[5] == 11) @@ -469,7 +471,7 @@ static void sub_807574C(struct Sprite *sprite) StartSpriteAnim(sprite, 2); gSprites[gBattlerSpriteIds[sprite->sBattler]].invisible = TRUE; sprite->data[5] = 0; - sprite->callback = sub_80757E4; + sprite->callback = SpriteCB_BallThrow_Close; } else { @@ -478,7 +480,7 @@ static void sub_807574C(struct Sprite *sprite) } } -static void sub_80757E4(struct Sprite *sprite) +static void SpriteCB_BallThrow_Close(struct Sprite *sprite) { if (sprite->animEnded) { @@ -490,12 +492,12 @@ static void sub_80757E4(struct Sprite *sprite) sprite->data[5] = 0; sprite->pos1.y += Cos(0, 32); sprite->pos2.y = -Cos(0, sprite->data[4]); - sprite->callback = sub_8075838; + sprite->callback = SpriteCB_BallThrow_FallToGround; } } } -static void sub_8075838(struct Sprite *sprite) +static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite) { bool8 r5 = FALSE; @@ -548,14 +550,14 @@ static void sub_8075838(struct Sprite *sprite) } else { - sprite->callback = sub_8075930; + sprite->callback = SpriteCB_BallThrow_StartShakes; sprite->data[4] = 1; sprite->data[5] = 0; } } } -static void sub_8075930(struct Sprite *sprite) +static void SpriteCB_BallThrow_StartShakes(struct Sprite *sprite) { sprite->data[3]++; if (sprite->data[3] == 31) @@ -563,12 +565,12 @@ static void sub_8075930(struct Sprite *sprite) sprite->data[3] = 0; sprite->affineAnimPaused = TRUE; StartSpriteAffineAnim(sprite, 1); - sprite->callback = sub_8075970; + sprite->callback = SpriteCB_BallThrow_Shake; PlaySE(SE_BALL); } } -static void sub_8075970(struct Sprite *sprite) +static void SpriteCB_BallThrow_Shake(struct Sprite *sprite) { switch (sprite->data[3] & 0xFF) { @@ -611,7 +613,7 @@ static void sub_8075970(struct Sprite *sprite) { if (sprite->data[7] == 4 && sprite->data[3] >> 8 == 3) { - sprite->callback = sub_8075FB4; + sprite->callback = SpriteCB_BallThrow_StartCaptureMon; sprite->affineAnimPaused = TRUE; } else @@ -796,7 +798,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) gTasks[taskId].tCryTaskState = 0; } - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[sprite->sBattler]], 1); + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[sprite->sBattler]], BATTLER_AFFINE_EMERGE); if (GetBattlerSide(sprite->sBattler) == B_SIDE_OPPONENT) gSprites[gBattlerSpriteIds[sprite->sBattler]].callback = SpriteCb_OpponentMonFromBall; @@ -817,10 +819,10 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) #undef tCryTaskFrames #undef tCryTaskState -static void sub_8075FB4(struct Sprite *sprite) +static void SpriteCB_BallThrow_StartCaptureMon(struct Sprite *sprite) { sprite->animPaused = TRUE; - sprite->callback = sub_80760F8; + sprite->callback = SpriteCB_BallThrow_CaptureMon; sprite->data[3] = 0; sprite->data[4] = 0; sprite->data[5] = 0; @@ -836,7 +838,7 @@ static void HandleBallAnimEnd(struct Sprite *sprite) sprite->invisible = TRUE; if (gSprites[gBattlerSpriteIds[battlerId]].affineAnimEnded) { - StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[battlerId]], 0); + StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[battlerId]], BATTLER_AFFINE_NORMAL); affineAnimEnded = TRUE; } else @@ -867,7 +869,7 @@ static void HandleBallAnimEnd(struct Sprite *sprite) } } -static void sub_80760F8(struct Sprite *sprite) +static void SpriteCB_BallThrow_CaptureMon(struct Sprite *sprite) { u8 battlerId = sprite->sBattler; @@ -1042,7 +1044,7 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4); sprite->callback = SpriteCB_ReleasedMonFlyOut; gSprites[r7].invisible = FALSE; - StartSpriteAffineAnim(&gSprites[r7], 1); + StartSpriteAffineAnim(&gSprites[r7], BATTLER_AFFINE_EMERGE); AnimateSprite(&gSprites[r7]); gSprites[r7].data[1] = 0x1000; sprite->data[7] = 0; @@ -1065,7 +1067,7 @@ static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite) sprite->invisible = TRUE; if (gSprites[monSpriteId].affineAnimEnded) { - StartSpriteAffineAnim(&gSprites[monSpriteId], 0); + StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_NORMAL); r12 = TRUE; } var1 = (sprite->data[5] - sprite->pos1.x) * sprite->data[7] / 128 + sprite->pos1.x; @@ -1139,7 +1141,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) // play the shrink anim properly due to being paused. Works together with the fix to `sub_817F77C`. gSprites[monSpriteId].affineAnimPaused = FALSE; #endif // BUGFIX - StartSpriteAffineAnim(&gSprites[monSpriteId], 2); + StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_RETURN); AnimateSprite(&gSprites[monSpriteId]); gSprites[monSpriteId].data[1] = 0; } diff --git a/src/pokemon.c b/src/pokemon.c index 1d736be74807..b4eb6f01afed 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -3433,7 +3433,7 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition) gMultiuseSpriteTemplate.paletteTag = speciesTag; if (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_PLAYER_RIGHT) - gMultiuseSpriteTemplate.anims = gUnknown_082FF70C; + gMultiuseSpriteTemplate.anims = gAnims_MonPic; else if (speciesTag > SPECIES_SHINY_TAG) gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag - SPECIES_SHINY_TAG]; else @@ -6826,7 +6826,7 @@ static void sub_806F1FC(struct Unknown_806F160_Struct* structPtr) structPtr->frameImages[i * structPtr->field_0_0 + j].data = &structPtr->byteArrays[i][j * 0x800]; } structPtr->templates[i].images = &structPtr->frameImages[i * structPtr->field_0_0]; - structPtr->templates[i].anims = gUnknown_082FF70C; + structPtr->templates[i].anims = gAnims_MonPic; structPtr->templates[i].paletteTag = i; } } diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c index aab4142dbb74..477c11faf8f3 100644 --- a/src/trainer_pokemon_sprites.c +++ b/src/trainer_pokemon_sprites.c @@ -137,7 +137,7 @@ static void LoadPicPaletteBySlot(u16 species, u32 otId, u32 personality, u8 pale static void AssignSpriteAnimsTable(bool8 isTrainer) { if (!isTrainer) - sCreatingSpriteTemplate.anims = gUnknown_082FF70C; + sCreatingSpriteTemplate.anims = gAnims_MonPic; else sCreatingSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[0]; } From e40f89b175189bcfca33285ee5a98de1b7ff74a6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 25 Apr 2021 02:19:01 -0400 Subject: [PATCH 155/762] Move unknown data table, reference with species --- src/data.c | 115 +----- src/data/pokemon_graphics/unknown_table.h | 444 ++++++++++++++++++++++ 2 files changed, 445 insertions(+), 114 deletions(-) create mode 100644 src/data/pokemon_graphics/unknown_table.h diff --git a/src/data.c b/src/data.c index d300d4f63339..5856d17b855a 100644 --- a/src/data.c +++ b/src/data.c @@ -319,120 +319,7 @@ const union AnimCmd *const gAnims_MonPic[] = #include "data/pokemon_graphics/enemy_mon_elevation.h" #include "data/pokemon_graphics/front_pic_anims.h" #include "data/pokemon_graphics/front_pic_table.h" - -static const u32 sUnused[] = -{ - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000088, 0x00000888, 0x00000888, 0x00000886, - 0x00000888, 0x00000886, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000886, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000886, 0x00000886, - 0x00000888, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000888, 0x00000886, 0x00000888, - 0x00000888, 0x00000888, 0x00000886, 0x00000886, - 0x00000888, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000886, 0x00000886, 0x00000088, - 0x00000886, 0x00000886, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000886, 0x00000888, 0x00000088, 0x00000088, - 0x00000888, 0x00000888, 0x00000888, 0x00000886, - 0x00000888, 0x00000888, 0x00000888, 0x00000886, - 0x00000886, 0x00000886, 0x00000886, 0x00000886, - 0x00000886, 0x00000886, 0x00000888, 0x00000888, - 0x00000886, 0x00000886, 0x00000886, 0x00000886, - 0x00000886, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000886, 0x00000886, 0x00000888, - 0x00000886, 0x00000886, 0x00000888, 0x00000888, - 0x00000088, 0x00000088, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000886, 0x00000886, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000088, 0x00000886, - 0x00000888, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000888, 0x00000886, 0x00000888, - 0x00000088, 0x00000088, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000888, 0x00000886, - 0x00000886, 0x00000888, 0x00000888, 0x00000088, - 0x00000888, 0x00000886, 0x00000886, 0x00000888, - 0x00000886, 0x00000888, 0x00000888, 0x00000886, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000088, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000088, 0x00000888, 0x00000888, 0x00000886, - 0x00000886, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000886, - 0x00000888, 0x00000886, 0x00000088, 0x00000088, - 0x00000088, 0x00000888, 0x00000088, 0x00000888, - 0x00000888, 0x00000088, 0x00000088, 0x00000888, - 0x00000886, 0x00000888, 0x00000886, 0x00000886, - 0x00000886, 0x00000888, 0x00000888, 0x00000888, - 0x00000088, 0x00000888, 0x00000888, 0x00000888, - 0x00000088, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000088, 0x00000088, - 0x00000886, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000088, 0x00000888, - 0x00000886, 0x00000888, 0x00000088, 0x00000088, - 0x00000888, 0x00000888, 0x00000088, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000088, - 0x00000888, 0x00000888, 0x00000088, 0x00000088, - 0x00000088, 0x00000888, 0x00000088, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000886, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000886, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000088, 0x00000886, - 0x00000088, 0x00000886, 0x00000886, 0x00000886, - 0x00000088, 0x00000886, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000886, - 0x00000886, 0x00000886, 0x00000888, 0x00000888, - 0x00000886, 0x00000886, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000886, 0x00000886, - 0x00001882, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000886, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000886, 0x00000088, 0x00000886, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000088, 0x00000886, - 0x00000886, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000886, 0x00000088, - 0x00000088, 0x00000886, 0x00000886, 0x00000886, - 0x00000886, 0x00000886, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000886, - 0x00000886, 0x00000886, 0x00000886, 0x00000088, - 0x00000886, 0x00000088, 0x00000886, 0x00000886, - 0x00000886, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000886, 0x00000886, - 0x00000886, 0x00000888, 0x00000886, 0x00000886, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000886, 0x00000886, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000088, 0x00000088, 0x00000088, - 0x00000088, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, - 0x00000888, 0x00000888, 0x00000888, 0x00000888, -}; +#include "data/pokemon_graphics/unknown_table.h" #include "data/trainer_parties.h" #include "data/text/trainer_class_names.h" diff --git a/src/data/pokemon_graphics/unknown_table.h b/src/data/pokemon_graphics/unknown_table.h new file mode 100644 index 000000000000..737b79c1ba9e --- /dev/null +++ b/src/data/pokemon_graphics/unknown_table.h @@ -0,0 +1,444 @@ +// Unknown and unused +static const u32 sUnused[] = +{ + [SPECIES_NONE] = 0x888, + [SPECIES_BULBASAUR] = 0x888, + [SPECIES_IVYSAUR] = 0x888, + [SPECIES_VENUSAUR] = 0x888, + [SPECIES_CHARMANDER] = 0x88, + [SPECIES_CHARMELEON] = 0x888, + [SPECIES_CHARIZARD] = 0x888, + [SPECIES_SQUIRTLE] = 0x886, + [SPECIES_WARTORTLE] = 0x888, + [SPECIES_BLASTOISE] = 0x886, + [SPECIES_CATERPIE] = 0x888, + [SPECIES_METAPOD] = 0x888, + [SPECIES_BUTTERFREE] = 0x888, + [SPECIES_WEEDLE] = 0x888, + [SPECIES_KAKUNA] = 0x888, + [SPECIES_BEEDRILL] = 0x888, + [SPECIES_PIDGEY] = 0x886, + [SPECIES_PIDGEOTTO] = 0x888, + [SPECIES_PIDGEOT] = 0x888, + [SPECIES_RATTATA] = 0x888, + [SPECIES_RATICATE] = 0x888, + [SPECIES_SPEAROW] = 0x888, + [SPECIES_FEAROW] = 0x886, + [SPECIES_EKANS] = 0x886, + [SPECIES_ARBOK] = 0x888, + [SPECIES_PIKACHU] = 0x88, + [SPECIES_RAICHU] = 0x88, + [SPECIES_SANDSHREW] = 0x88, + [SPECIES_SANDSLASH] = 0x88, + [SPECIES_NIDORAN_F] = 0x888, + [SPECIES_NIDORINA] = 0x886, + [SPECIES_NIDOQUEEN] = 0x888, + [SPECIES_NIDORAN_M] = 0x888, + [SPECIES_NIDORINO] = 0x888, + [SPECIES_NIDOKING] = 0x886, + [SPECIES_CLEFAIRY] = 0x886, + [SPECIES_CLEFABLE] = 0x888, + [SPECIES_VULPIX] = 0x88, + [SPECIES_NINETALES] = 0x88, + [SPECIES_JIGGLYPUFF] = 0x88, + [SPECIES_WIGGLYTUFF] = 0x88, + [SPECIES_ZUBAT] = 0x886, + [SPECIES_GOLBAT] = 0x886, + [SPECIES_ODDISH] = 0x88, + [SPECIES_GLOOM] = 0x886, + [SPECIES_VILEPLUME] = 0x886, + [SPECIES_PARAS] = 0x888, + [SPECIES_PARASECT] = 0x888, + [SPECIES_VENONAT] = 0x888, + [SPECIES_VENOMOTH] = 0x888, + [SPECIES_DIGLETT] = 0x888, + [SPECIES_DUGTRIO] = 0x888, + [SPECIES_MEOWTH] = 0x886, + [SPECIES_PERSIAN] = 0x888, + [SPECIES_PSYDUCK] = 0x88, + [SPECIES_GOLDUCK] = 0x88, + [SPECIES_MANKEY] = 0x888, + [SPECIES_PRIMEAPE] = 0x888, + [SPECIES_GROWLITHE] = 0x888, + [SPECIES_ARCANINE] = 0x886, + [SPECIES_POLIWAG] = 0x888, + [SPECIES_POLIWHIRL] = 0x888, + [SPECIES_POLIWRATH] = 0x888, + [SPECIES_ABRA] = 0x886, + [SPECIES_KADABRA] = 0x886, + [SPECIES_ALAKAZAM] = 0x886, + [SPECIES_MACHOP] = 0x886, + [SPECIES_MACHOKE] = 0x886, + [SPECIES_MACHAMP] = 0x886, + [SPECIES_BELLSPROUT] = 0x886, + [SPECIES_WEEPINBELL] = 0x888, + [SPECIES_VICTREEBEL] = 0x888, + [SPECIES_TENTACOOL] = 0x886, + [SPECIES_TENTACRUEL] = 0x886, + [SPECIES_GEODUDE] = 0x886, + [SPECIES_GRAVELER] = 0x886, + [SPECIES_GOLEM] = 0x886, + [SPECIES_PONYTA] = 0x888, + [SPECIES_RAPIDASH] = 0x888, + [SPECIES_SLOWPOKE] = 0x888, + [SPECIES_SLOWBRO] = 0x888, + [SPECIES_MAGNEMITE] = 0x886, + [SPECIES_MAGNETON] = 0x886, + [SPECIES_FARFETCHD] = 0x888, + [SPECIES_DODUO] = 0x886, + [SPECIES_DODRIO] = 0x886, + [SPECIES_SEEL] = 0x888, + [SPECIES_DEWGONG] = 0x888, + [SPECIES_GRIMER] = 0x88, + [SPECIES_MUK] = 0x88, + [SPECIES_SHELLDER] = 0x888, + [SPECIES_CLOYSTER] = 0x888, + [SPECIES_GASTLY] = 0x888, + [SPECIES_HAUNTER] = 0x888, + [SPECIES_GENGAR] = 0x888, + [SPECIES_ONIX] = 0x888, + [SPECIES_DROWZEE] = 0x888, + [SPECIES_HYPNO] = 0x888, + [SPECIES_KRABBY] = 0x888, + [SPECIES_KINGLER] = 0x888, + [SPECIES_VOLTORB] = 0x886, + [SPECIES_ELECTRODE] = 0x886, + [SPECIES_EXEGGCUTE] = 0x888, + [SPECIES_EXEGGUTOR] = 0x888, + [SPECIES_CUBONE] = 0x888, + [SPECIES_MAROWAK] = 0x888, + [SPECIES_HITMONLEE] = 0x88, + [SPECIES_HITMONCHAN] = 0x886, + [SPECIES_LICKITUNG] = 0x888, + [SPECIES_KOFFING] = 0x88, + [SPECIES_WEEZING] = 0x88, + [SPECIES_RHYHORN] = 0x88, + [SPECIES_RHYDON] = 0x88, + [SPECIES_CHANSEY] = 0x888, + [SPECIES_TANGELA] = 0x886, + [SPECIES_KANGASKHAN] = 0x888, + [SPECIES_HORSEA] = 0x88, + [SPECIES_SEADRA] = 0x88, + [SPECIES_GOLDEEN] = 0x886, + [SPECIES_SEAKING] = 0x886, + [SPECIES_STARYU] = 0x88, + [SPECIES_STARMIE] = 0x88, + [SPECIES_MR_MIME] = 0x888, + [SPECIES_SCYTHER] = 0x886, + [SPECIES_JYNX] = 0x886, + [SPECIES_ELECTABUZZ] = 0x888, + [SPECIES_MAGMAR] = 0x888, + [SPECIES_PINSIR] = 0x88, + [SPECIES_TAUROS] = 0x888, + [SPECIES_MAGIKARP] = 0x886, + [SPECIES_GYARADOS] = 0x886, + [SPECIES_LAPRAS] = 0x888, + [SPECIES_DITTO] = 0x886, + [SPECIES_EEVEE] = 0x888, + [SPECIES_VAPOREON] = 0x888, + [SPECIES_JOLTEON] = 0x886, + [SPECIES_FLAREON] = 0x888, + [SPECIES_PORYGON] = 0x888, + [SPECIES_OMANYTE] = 0x888, + [SPECIES_OMASTAR] = 0x888, + [SPECIES_KABUTO] = 0x888, + [SPECIES_KABUTOPS] = 0x888, + [SPECIES_AERODACTYL] = 0x888, + [SPECIES_SNORLAX] = 0x888, + [SPECIES_ARTICUNO] = 0x888, + [SPECIES_ZAPDOS] = 0x888, + [SPECIES_MOLTRES] = 0x888, + [SPECIES_DRATINI] = 0x888, + [SPECIES_DRAGONAIR] = 0x888, + [SPECIES_DRAGONITE] = 0x888, + [SPECIES_MEWTWO] = 0x88, + [SPECIES_MEW] = 0x888, + [SPECIES_CHIKORITA] = 0x888, + [SPECIES_BAYLEEF] = 0x888, + [SPECIES_MEGANIUM] = 0x888, + [SPECIES_CYNDAQUIL] = 0x888, + [SPECIES_QUILAVA] = 0x88, + [SPECIES_TYPHLOSION] = 0x888, + [SPECIES_TOTODILE] = 0x888, + [SPECIES_CROCONAW] = 0x886, + [SPECIES_FERALIGATR] = 0x886, + [SPECIES_SENTRET] = 0x888, + [SPECIES_FURRET] = 0x888, + [SPECIES_HOOTHOOT] = 0x888, + [SPECIES_NOCTOWL] = 0x888, + [SPECIES_LEDYBA] = 0x888, + [SPECIES_LEDIAN] = 0x888, + [SPECIES_SPINARAK] = 0x886, + [SPECIES_ARIADOS] = 0x888, + [SPECIES_CROBAT] = 0x886, + [SPECIES_CHINCHOU] = 0x88, + [SPECIES_LANTURN] = 0x88, + [SPECIES_PICHU] = 0x88, + [SPECIES_CLEFFA] = 0x888, + [SPECIES_IGGLYBUFF] = 0x88, + [SPECIES_TOGEPI] = 0x888, + [SPECIES_TOGETIC] = 0x888, + [SPECIES_NATU] = 0x88, + [SPECIES_XATU] = 0x88, + [SPECIES_MAREEP] = 0x888, + [SPECIES_FLAAFFY] = 0x886, + [SPECIES_AMPHAROS] = 0x888, + [SPECIES_BELLOSSOM] = 0x886, + [SPECIES_MARILL] = 0x886, + [SPECIES_AZUMARILL] = 0x886, + [SPECIES_SUDOWOODO] = 0x888, + [SPECIES_POLITOED] = 0x888, + [SPECIES_HOPPIP] = 0x888, + [SPECIES_SKIPLOOM] = 0x88, + [SPECIES_JUMPLUFF] = 0x888, + [SPECIES_AIPOM] = 0x888, + [SPECIES_SUNKERN] = 0x888, + [SPECIES_SUNFLORA] = 0x88, + [SPECIES_YANMA] = 0x888, + [SPECIES_WOOPER] = 0x888, + [SPECIES_QUAGSIRE] = 0x888, + [SPECIES_ESPEON] = 0x888, + [SPECIES_UMBREON] = 0x888, + [SPECIES_MURKROW] = 0x888, + [SPECIES_SLOWKING] = 0x888, + [SPECIES_MISDREAVUS] = 0x888, + [SPECIES_UNOWN] = 0x888, + [SPECIES_WOBBUFFET] = 0x88, + [SPECIES_GIRAFARIG] = 0x88, + [SPECIES_PINECO] = 0x886, + [SPECIES_FORRETRESS] = 0x888, + [SPECIES_DUNSPARCE] = 0x888, + [SPECIES_GLIGAR] = 0x888, + [SPECIES_STEELIX] = 0x888, + [SPECIES_SNUBBULL] = 0x888, + [SPECIES_GRANBULL] = 0x888, + [SPECIES_QWILFISH] = 0x888, + [SPECIES_SCIZOR] = 0x888, + [SPECIES_SHUCKLE] = 0x888, + [SPECIES_HERACROSS] = 0x88, + [SPECIES_SNEASEL] = 0x888, + [SPECIES_TEDDIURSA] = 0x886, + [SPECIES_URSARING] = 0x888, + [SPECIES_SLUGMA] = 0x88, + [SPECIES_MAGCARGO] = 0x88, + [SPECIES_SWINUB] = 0x888, + [SPECIES_PILOSWINE] = 0x888, + [SPECIES_CORSOLA] = 0x88, + [SPECIES_REMORAID] = 0x888, + [SPECIES_OCTILLERY] = 0x888, + [SPECIES_DELIBIRD] = 0x888, + [SPECIES_MANTINE] = 0x888, + [SPECIES_SKARMORY] = 0x88, + [SPECIES_HOUNDOUR] = 0x888, + [SPECIES_HOUNDOOM] = 0x888, + [SPECIES_KINGDRA] = 0x88, + [SPECIES_PHANPY] = 0x88, + [SPECIES_DONPHAN] = 0x88, + [SPECIES_PORYGON2] = 0x888, + [SPECIES_STANTLER] = 0x88, + [SPECIES_SMEARGLE] = 0x888, + [SPECIES_TYROGUE] = 0x888, + [SPECIES_HITMONTOP] = 0x888, + [SPECIES_SMOOCHUM] = 0x888, + [SPECIES_ELEKID] = 0x888, + [SPECIES_MAGBY] = 0x888, + [SPECIES_MILTANK] = 0x888, + [SPECIES_BLISSEY] = 0x888, + [SPECIES_RAIKOU] = 0x888, + [SPECIES_ENTEI] = 0x888, + [SPECIES_SUICUNE] = 0x888, + [SPECIES_LARVITAR] = 0x888, + [SPECIES_PUPITAR] = 0x888, + [SPECIES_TYRANITAR] = 0x888, + [SPECIES_LUGIA] = 0x886, + [SPECIES_HO_OH] = 0x888, + [SPECIES_CELEBI] = 0x888, + [SPECIES_OLD_UNOWN_B] = 0x888, + [SPECIES_OLD_UNOWN_C] = 0x888, + [SPECIES_OLD_UNOWN_D] = 0x888, + [SPECIES_OLD_UNOWN_E] = 0x888, + [SPECIES_OLD_UNOWN_F] = 0x888, + [SPECIES_OLD_UNOWN_G] = 0x888, + [SPECIES_OLD_UNOWN_H] = 0x888, + [SPECIES_OLD_UNOWN_I] = 0x888, + [SPECIES_OLD_UNOWN_J] = 0x888, + [SPECIES_OLD_UNOWN_K] = 0x888, + [SPECIES_OLD_UNOWN_L] = 0x888, + [SPECIES_OLD_UNOWN_M] = 0x888, + [SPECIES_OLD_UNOWN_N] = 0x888, + [SPECIES_OLD_UNOWN_O] = 0x888, + [SPECIES_OLD_UNOWN_P] = 0x888, + [SPECIES_OLD_UNOWN_Q] = 0x888, + [SPECIES_OLD_UNOWN_R] = 0x888, + [SPECIES_OLD_UNOWN_S] = 0x888, + [SPECIES_OLD_UNOWN_T] = 0x888, + [SPECIES_OLD_UNOWN_U] = 0x888, + [SPECIES_OLD_UNOWN_V] = 0x888, + [SPECIES_OLD_UNOWN_W] = 0x888, + [SPECIES_OLD_UNOWN_X] = 0x888, + [SPECIES_OLD_UNOWN_Y] = 0x888, + [SPECIES_OLD_UNOWN_Z] = 0x888, + [SPECIES_TREECKO] = 0x886, + [SPECIES_GROVYLE] = 0x886, + [SPECIES_SCEPTILE] = 0x886, + [SPECIES_TORCHIC] = 0x88, + [SPECIES_COMBUSKEN] = 0x88, + [SPECIES_BLAZIKEN] = 0x88, + [SPECIES_MUDKIP] = 0x886, + [SPECIES_MARSHTOMP] = 0x88, + [SPECIES_SWAMPERT] = 0x886, + [SPECIES_POOCHYENA] = 0x886, + [SPECIES_MIGHTYENA] = 0x886, + [SPECIES_ZIGZAGOON] = 0x88, + [SPECIES_LINOONE] = 0x886, + [SPECIES_WURMPLE] = 0x88, + [SPECIES_SILCOON] = 0x88, + [SPECIES_BEAUTIFLY] = 0x88, + [SPECIES_CASCOON] = 0x88, + [SPECIES_DUSTOX] = 0x88, + [SPECIES_LOTAD] = 0x886, + [SPECIES_LOMBRE] = 0x886, + [SPECIES_LUDICOLO] = 0x886, + [SPECIES_SEEDOT] = 0x888, + [SPECIES_NUZLEAF] = 0x888, + [SPECIES_SHIFTRY] = 0x886, + [SPECIES_NINCADA] = 0x886, + [SPECIES_NINJASK] = 0x886, + [SPECIES_SHEDINJA] = 0x886, + [SPECIES_TAILLOW] = 0x88, + [SPECIES_SWELLOW] = 0x88, + [SPECIES_SHROOMISH] = 0x886, + [SPECIES_BRELOOM] = 0x886, + [SPECIES_SPINDA] = 0x1882, + [SPECIES_WINGULL] = 0x88, + [SPECIES_PELIPPER] = 0x88, + [SPECIES_SURSKIT] = 0x88, + [SPECIES_MASQUERAIN] = 0x88, + [SPECIES_WAILMER] = 0x886, + [SPECIES_WAILORD] = 0x886, + [SPECIES_SKITTY] = 0x886, + [SPECIES_DELCATTY] = 0x88, + [SPECIES_KECLEON] = 0x88, + [SPECIES_BALTOY] = 0x88, + [SPECIES_CLAYDOL] = 0x88, + [SPECIES_NOSEPASS] = 0x886, + [SPECIES_TORKOAL] = 0x88, + [SPECIES_SABLEYE] = 0x886, + [SPECIES_BARBOACH] = 0x88, + [SPECIES_WHISCASH] = 0x88, + [SPECIES_LUVDISC] = 0x88, + [SPECIES_CORPHISH] = 0x88, + [SPECIES_CRAWDAUNT] = 0x88, + [SPECIES_FEEBAS] = 0x88, + [SPECIES_MILOTIC] = 0x88, + [SPECIES_CARVANHA] = 0x886, + [SPECIES_SHARPEDO] = 0x886, + [SPECIES_TRAPINCH] = 0x88, + [SPECIES_VIBRAVA] = 0x88, + [SPECIES_FLYGON] = 0x88, + [SPECIES_MAKUHITA] = 0x886, + [SPECIES_HARIYAMA] = 0x886, + [SPECIES_ELECTRIKE] = 0x88, + [SPECIES_MANECTRIC] = 0x88, + [SPECIES_NUMEL] = 0x88, + [SPECIES_CAMERUPT] = 0x88, + [SPECIES_SPHEAL] = 0x88, + [SPECIES_SEALEO] = 0x88, + [SPECIES_WALREIN] = 0x88, + [SPECIES_CACNEA] = 0x88, + [SPECIES_CACTURNE] = 0x88, + [SPECIES_SNORUNT] = 0x88, + [SPECIES_GLALIE] = 0x88, + [SPECIES_LUNATONE] = 0x88, + [SPECIES_SOLROCK] = 0x88, + [SPECIES_AZURILL] = 0x886, + [SPECIES_SPOINK] = 0x88, + [SPECIES_GRUMPIG] = 0x88, + [SPECIES_PLUSLE] = 0x886, + [SPECIES_MINUN] = 0x886, + [SPECIES_MAWILE] = 0x886, + [SPECIES_MEDITITE] = 0x886, + [SPECIES_MEDICHAM] = 0x886, + [SPECIES_SWABLU] = 0x88, + [SPECIES_ALTARIA] = 0x88, + [SPECIES_WYNAUT] = 0x88, + [SPECIES_DUSKULL] = 0x88, + [SPECIES_DUSCLOPS] = 0x88, + [SPECIES_ROSELIA] = 0x886, + [SPECIES_SLAKOTH] = 0x886, + [SPECIES_VIGOROTH] = 0x886, + [SPECIES_SLAKING] = 0x886, + [SPECIES_GULPIN] = 0x88, + [SPECIES_SWALOT] = 0x886, + [SPECIES_TROPIUS] = 0x88, + [SPECIES_WHISMUR] = 0x886, + [SPECIES_LOUDRED] = 0x886, + [SPECIES_EXPLOUD] = 0x886, + [SPECIES_CLAMPERL] = 0x88, + [SPECIES_HUNTAIL] = 0x88, + [SPECIES_GOREBYSS] = 0x88, + [SPECIES_ABSOL] = 0x88, + [SPECIES_SHUPPET] = 0x88, + [SPECIES_BANETTE] = 0x88, + [SPECIES_SEVIPER] = 0x88, + [SPECIES_ZANGOOSE] = 0x88, + [SPECIES_RELICANTH] = 0x88, + [SPECIES_ARON] = 0x886, + [SPECIES_LAIRON] = 0x886, + [SPECIES_AGGRON] = 0x886, + [SPECIES_CASTFORM] = 0x888, + [SPECIES_VOLBEAT] = 0x886, + [SPECIES_ILLUMISE] = 0x886, + [SPECIES_LILEEP] = 0x88, + [SPECIES_CRADILY] = 0x88, + [SPECIES_ANORITH] = 0x88, + [SPECIES_ARMALDO] = 0x88, + [SPECIES_RALTS] = 0x886, + [SPECIES_KIRLIA] = 0x886, + [SPECIES_GARDEVOIR] = 0x88, + [SPECIES_BAGON] = 0x88, + [SPECIES_SHELGON] = 0x88, + [SPECIES_SALAMENCE] = 0x88, + [SPECIES_BELDUM] = 0x88, + [SPECIES_METANG] = 0x88, + [SPECIES_METAGROSS] = 0x88, + [SPECIES_REGIROCK] = 0x88, + [SPECIES_REGICE] = 0x88, + [SPECIES_REGISTEEL] = 0x88, + [SPECIES_KYOGRE] = 0x88, + [SPECIES_GROUDON] = 0x88, + [SPECIES_RAYQUAZA] = 0x88, + [SPECIES_LATIAS] = 0x88, + [SPECIES_LATIOS] = 0x88, + [SPECIES_JIRACHI] = 0x88, + [SPECIES_DEOXYS] = 0x88, + [SPECIES_CHIMECHO] = 0x88, + [SPECIES_EGG] = 0x88, + [SPECIES_UNOWN_B] = 0x888, + [SPECIES_UNOWN_C] = 0x888, + [SPECIES_UNOWN_D] = 0x888, + [SPECIES_UNOWN_E] = 0x888, + [SPECIES_UNOWN_F] = 0x888, + [SPECIES_UNOWN_G] = 0x888, + [SPECIES_UNOWN_H] = 0x888, + [SPECIES_UNOWN_I] = 0x888, + [SPECIES_UNOWN_J] = 0x888, + [SPECIES_UNOWN_K] = 0x888, + [SPECIES_UNOWN_L] = 0x888, + [SPECIES_UNOWN_M] = 0x888, + [SPECIES_UNOWN_N] = 0x888, + [SPECIES_UNOWN_O] = 0x888, + [SPECIES_UNOWN_P] = 0x888, + [SPECIES_UNOWN_Q] = 0x888, + [SPECIES_UNOWN_R] = 0x888, + [SPECIES_UNOWN_S] = 0x888, + [SPECIES_UNOWN_T] = 0x888, + [SPECIES_UNOWN_U] = 0x888, + [SPECIES_UNOWN_V] = 0x888, + [SPECIES_UNOWN_W] = 0x888, + [SPECIES_UNOWN_X] = 0x888, + [SPECIES_UNOWN_Y] = 0x888, + [SPECIES_UNOWN_Z] = 0x888, + [SPECIES_UNOWN_EMARK] = 0x888, + [SPECIES_UNOWN_QMARK] = 0x888, +}; From aad090e154d4cb1397468f3b19071ddad688a7bc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 25 Apr 2021 17:22:45 -0400 Subject: [PATCH 156/762] Document TV --- .../scripts.inc | 2 +- data/scripts/gabby_and_ty.inc | 6 +- data/scripts/tv.inc | 8 +- data/specials.inc | 10 +- include/constants/battle_frontier.h | 15 + include/constants/easy_chat.h | 2 +- include/constants/metatile_labels.h | 2 + include/constants/tv.h | 38 +- include/daycare.h | 2 +- include/global.h | 8 +- include/global.tv.h | 22 +- include/mauville_old_man.h | 2 +- include/tv.h | 30 +- src/battle_main.c | 4 +- src/battle_tower.c | 1 - src/contest.c | 1 - src/contest_util.c | 1 - src/daycare.c | 12 +- src/decoration.c | 4 +- src/easy_chat.c | 4 +- src/field_specials.c | 3 +- src/fldeff_misc.c | 1 - src/frontier_util.c | 26 +- src/item.c | 1 - src/mauville_old_man.c | 48 +- src/menu.c | 6 +- src/post_battle_event_funcs.c | 1 - src/record_mixing.c | 106 +- src/roulette.c | 2 +- src/safari_zone.c | 2 +- src/script_pokemon_util.c | 1 - src/secret_base.c | 1 - src/shop.c | 5 +- src/slot_machine.c | 2 +- src/tv.c | 6116 ++++++++--------- 35 files changed, 3053 insertions(+), 3442 deletions(-) diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc index 6ff869db3a46..86544d3e9259 100644 --- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc +++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc @@ -173,7 +173,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan:: @ 821C9AE return LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow:: @ 821C9B4 - special TrySetUpTrainerFanClubSpecial + special TryPutTrainerFanClubOnAir return LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable:: @ 821C9B8 diff --git a/data/scripts/gabby_and_ty.inc b/data/scripts/gabby_and_ty.inc index c7f576aba787..60854a8010b2 100644 --- a/data/scripts/gabby_and_ty.inc +++ b/data/scripts/gabby_and_ty.inc @@ -1,6 +1,6 @@ @ 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 GabbyAndTySetScriptVarsToObjectEventLocalIds +@ Note: The local IDs of Gabby and Ty are hard-coded in GetGabbyAndTyLocalIds GabbyAndTy_EventScript_UpdateLocation:: @ 828CCC7 cleartrainerflag TRAINER_GABBY_AND_TY_6 specialvar VAR_RESULT, GabbyAndTyGetBattleNum @@ -198,7 +198,7 @@ GabbyAndTy_EventScript_TyBattle6:: @ 828CF36 GabbyAndTy_EventScript_FirstInterview:: @ 828CF56 special GabbyAndTyBeforeInterview - special GabbyAndTySetScriptVarsToObjectEventLocalIds + special GetGabbyAndTyLocalIds compare VAR_FACING, DIR_NORTH call_if_eq GabbyAndTy_EventScript_FacePlayerNorth compare VAR_FACING, DIR_SOUTH @@ -229,7 +229,7 @@ GabbyAndTy_EventScript_FacePlayerEast:: @ 828CFB1 GabbyAndTy_EventScript_RequestInterview:: @ 828CFC3 special GabbyAndTyBeforeInterview - special GabbyAndTySetScriptVarsToObjectEventLocalIds + special GetGabbyAndTyLocalIds compare VAR_FACING, DIR_NORTH call_if_eq GabbyAndTy_EventScript_FacePlayerNorth compare VAR_FACING, DIR_SOUTH diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc index a2d5473b1969..1dfc1884bf6b 100644 --- a/data/scripts/tv.inc +++ b/data/scripts/tv.inc @@ -2,14 +2,14 @@ EventScript_TV:: @ 827EE0B lockall incrementgamestat GAME_STAT_WATCHED_TV special ResetTVShowState - specialvar VAR_RESULT, CheckForBigMovieOrEmergencyNewsOnTV - compare VAR_RESULT, 2 + specialvar VAR_RESULT, CheckForPlayersHouseNews + compare VAR_RESULT, PLAYERS_HOUSE_TV_MOVIE goto_if_eq EventScript_PlayersHouseMovie - compare VAR_RESULT, 1 + compare VAR_RESULT, PLAYERS_HOUSE_TV_LATI goto_if_eq EventScript_PlayersHouseLatiNewsFlash goto_if_unset FLAG_SYS_TV_START, EventScript_MomDadMightLikeThis1 goto_if_set FLAG_SYS_TV_WATCH, EventScript_MomDadMightLikeThis1 - specialvar VAR_RESULT, IsTVShowInSearchOfTrainersAiring + specialvar VAR_RESULT, IsGabbyAndTyShowOnTheAir compare VAR_RESULT, TRUE goto_if_eq EventScript_DoInSearchOfTrainers goto EventScript_TryDoPokeNews diff --git a/data/specials.inc b/data/specials.inc index f672a7b870c8..e8315c013d5e 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -83,8 +83,8 @@ gSpecials:: @ 81DBA64 def_special IsLeadMonNicknamedOrNotEnglish def_special SetContestCategoryStringVarForInterview def_special GetNextActiveShowIfMassOutbreak - def_special TV_IsScriptShowKindAlreadyInQueue - def_special CheckForBigMovieOrEmergencyNewsOnTV + def_special IsTVShowAlreadyInQueue + def_special CheckForPlayersHouseNews def_special GetMomOrDadStringForTVMessage def_special ResetTVShowState def_special GetContestWinnerId @@ -187,10 +187,10 @@ gSpecials:: @ 81DBA64 def_special GabbyAndTyAfterInterview def_special GabbyAndTyBeforeInterview def_special DoTVShowInSearchOfTrainers - def_special IsTVShowInSearchOfTrainersAiring + def_special IsGabbyAndTyShowOnTheAir def_special GabbyAndTyGetLastQuote def_special GabbyAndTyGetLastBattleTrivia - def_special GabbyAndTySetScriptVarsToObjectEventLocalIds + def_special GetGabbyAndTyLocalIds def_special GetBattleOutcome def_special GetDaycareMonNicknames def_special GetDaycareState @@ -354,7 +354,7 @@ gSpecials:: @ 81DBA64 def_special SetChampionSaveWarp def_special TryPutTreasureInvestigatorsOnAir def_special TryPutLotteryWinnerReportOnAir - def_special TrySetUpTrainerFanClubSpecial + def_special TryPutTrainerFanClubOnAir def_special ShouldHideFanClubInterviewer def_special ShowGlassWorkshopMenu def_special PutFanClubSpecialOnTheAir diff --git a/include/constants/battle_frontier.h b/include/constants/battle_frontier.h index bbe6db81c9d8..68c5a42ef3b1 100644 --- a/include/constants/battle_frontier.h +++ b/include/constants/battle_frontier.h @@ -78,6 +78,21 @@ #define FRONTIER_MANIAC_MESSAGE_COUNT 3 +// Frontier TV Show +#define FRONTIER_SHOW_TOWER_SINGLES 1 +#define FRONTIER_SHOW_TOWER_DOUBLES 2 +#define FRONTIER_SHOW_TOWER_MULTIS 3 +#define FRONTIER_SHOW_TOWER_LINK_MULTIS 4 +#define FRONTIER_SHOW_DOME_SINGLES 5 +#define FRONTIER_SHOW_DOME_DOUBLES 6 +#define FRONTIER_SHOW_FACTORY_SINGLES 7 +#define FRONTIER_SHOW_FACTORY_DOUBLES 8 +#define FRONTIER_SHOW_PIKE 9 +#define FRONTIER_SHOW_ARENA 10 +#define FRONTIER_SHOW_PALACE_SINGLES 11 +#define FRONTIER_SHOW_PALACE_DOUBLES 12 +#define FRONTIER_SHOW_PYRAMID 13 + // Frontier Gambler #define FRONTIER_GAMBLER_WAITING 0 #define FRONTIER_GAMBLER_PLACED_BET 1 diff --git a/include/constants/easy_chat.h b/include/constants/easy_chat.h index 069f17fcb272..f98cedbb710d 100644 --- a/include/constants/easy_chat.h +++ b/include/constants/easy_chat.h @@ -9,7 +9,7 @@ #define EASY_CHAT_TYPE_INTERVIEW 5 #define EASY_CHAT_TYPE_BARD_SONG 6 #define EASY_CHAT_TYPE_FAN_CLUB 7 -#define EASY_CHAT_TYPE_UNK_8 8 +#define EASY_CHAT_TYPE_DUMMY_SHOW 8 #define EASY_CHAT_TYPE_TRENDY_PHRASE 9 #define EASY_CHAT_TYPE_GABBY_AND_TY 10 #define EASY_CHAT_TYPE_CONTEST_INTERVIEW 11 diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index 836ab6ef2d4d..b5ef690469fd 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -42,6 +42,8 @@ #define METATILE_General_BlueCaveOpen 0x1B1 // gTileset_Building +#define METATILE_Building_TV_Off 0x002 +#define METATILE_Building_TV_On 0x003 #define METATILE_Building_PC_Off 0x004 #define METATILE_Building_PC_On 0x005 diff --git a/include/constants/tv.h b/include/constants/tv.h index f7b091f49422..1b28f6e6ed1a 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -6,12 +6,22 @@ #define POKENEWS_GAME_CORNER 2 #define POKENEWS_LILYCOVE 3 #define POKENEWS_BLENDMASTER 4 +#define NUM_POKENEWS_TYPES 4 // Excludes NONE + +// TV shows are categorized as being in one of 3 groups +// - TVGROUP_NORMAL, TV shows that can appear without Record Mixing +// - TVGROUP_RECORD_MIX, TV shows that can only appear via Record Mixing +// - TVGROUP_OUTBREAK, just contains TVSHOW_MASS_OUTBREAK +// Each group was allotted 20 spaces arbitrarily, though none use all 20 #define TVSHOW_OFF_AIR 0 + +// TVGROUP_NORMAL +#define TVGROUP_NORMAL_START 1 #define TVSHOW_FAN_CLUB_LETTER 1 #define TVSHOW_RECENT_HAPPENINGS 2 #define TVSHOW_PKMN_FAN_CLUB_OPINIONS 3 -#define TVSHOW_UNKN_SHOWTYPE_04 4 +#define TVSHOW_DUMMY 4 #define TVSHOW_NAME_RATER_SHOW 5 #define TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE 6 #define TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE 7 @@ -20,7 +30,11 @@ #define TVSHOW_BATTLE_UPDATE 10 #define TVSHOW_FAN_CLUB_SPECIAL 11 #define TVSHOW_LILYCOVE_CONTEST_LADY 12 -// // +// +#define TVGROUP_NORMAL_END 20 + +// TVGROUP_RECORD_MIX +#define TVGROUP_RECORD_MIX_START 21 #define TVSHOW_POKEMON_TODAY_CAUGHT 21 #define TVSHOW_SMART_SHOPPER 22 #define TVSHOW_POKEMON_TODAY_FAILED 23 @@ -40,8 +54,22 @@ #define TVSHOW_NUMBER_ONE 37 #define TVSHOW_SECRET_BASE_SECRETS 38 #define TVSHOW_SAFARI_FAN_CLUB 39 -// // -#define TVSHOW_MASS_OUTBREAK 41 +#define TVGROUP_RECORD_MIX_END 40 + +// TVGROUP_OUTBREAK +#define TVGROUP_OUTBREAK_START 41 +#define TVSHOW_MASS_OUTBREAK 41 +// +#define TVGROUP_OUTBREAK_END 60 + +// The first 5 elements of gSaveBlock1Ptr->tvShows are reserved +// for TV shows from TVGROUP_NORMAL. The remainder are for TV +// shows from TVGROUP_RECORD_MIX. +#define NUM_NORMAL_TVSHOW_SLOTS 5 + +#define PLAYERS_HOUSE_TV_NONE 0 +#define PLAYERS_HOUSE_TV_LATI 1 +#define PLAYERS_HOUSE_TV_MOVIE 2 // Number of ribbons to put Spot the Cuties on air #define NUM_CUTIES_RIBBONS 4 @@ -221,4 +249,6 @@ #define CONTESTLADYLIVE_STATE_LOST 2 #define CONTESTLADYLIVE_STATE_LOST_BADLY 3 +#define SMARTSHOPPER_NUM_ITEMS 3 + #endif //GUARD_CONSTANTS_TV_H diff --git a/include/daycare.h b/include/daycare.h index 7d6f2fb19303..d6c0d420173f 100644 --- a/include/daycare.h +++ b/include/daycare.h @@ -6,7 +6,7 @@ u8 *GetMonNickname2(struct Pokemon *mon, u8 *dest); u8 *GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest); u8 CountPokemonInDaycare(struct DayCare *daycare); -void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDayCareMail *daycareMail); +void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *daycareMail); void StoreSelectedPokemonInDaycare(void); u16 TakePokemonFromDaycare(void); void GetDaycareCost(void); diff --git a/include/global.h b/include/global.h index 19605ca57c89..e4c11f9ef263 100644 --- a/include/global.h +++ b/include/global.h @@ -727,7 +727,7 @@ struct ContestWinner u8 contestRank; }; -struct DayCareMail +struct DaycareMail { struct MailStruct message; u8 OT_name[PLAYER_NAME_LENGTH + 1]; @@ -739,7 +739,7 @@ struct DayCareMail struct DaycareMon { struct BoxPokemon mon; - struct DayCareMail mail; + struct DaycareMail mail; u32 steps; }; @@ -750,9 +750,9 @@ struct DayCare u8 stepCounter; }; -struct RecordMixingDayCareMail +struct RecordMixingDaycareMail { - struct DayCareMail mail[DAYCARE_MON_COUNT]; + struct DaycareMail mail[DAYCARE_MON_COUNT]; u32 numDaycareMons; bool16 holdsItem[DAYCARE_MON_COUNT]; }; diff --git a/include/global.tv.h b/include/global.tv.h index 64e6a984eda2..2bc7dda99816 100644 --- a/include/global.tv.h +++ b/include/global.tv.h @@ -1,13 +1,15 @@ #ifndef GUARD_GLOBAL_TV_H #define GUARD_GLOBAL_TV_H +#include "constants/tv.h" + typedef union // size = 0x24 { // Common struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; - /*0x02*/ u8 pad02[26]; + /*0x02*/ u8 data[26]; /*0x1C*/ u8 srcTrainerId3Lo; /*0x1D*/ u8 srcTrainerId3Hi; /*0x1E*/ u8 srcTrainerId2Lo; @@ -22,7 +24,7 @@ typedef union // size = 0x24 struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; - /*0x02*/ u8 pad02[34]; + /*0x02*/ u8 data[34]; } commonInit; // Local shows @@ -40,7 +42,7 @@ typedef union // size = 0x24 struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; - /*0x02*/ u16 var02; + /*0x02*/ u16 species; /*0x04*/ u16 words[6]; /*0x10*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; /*0x18*/ u8 language; @@ -62,16 +64,16 @@ typedef union // size = 0x24 /*0x1C*/ u16 words[4]; } fanclubOpinions; - // TVSHOW_UNKN_SHOWTYPE_04 (dummied out) + // TVSHOW_DUMMY struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; /*0x02*/ u16 words[2]; - /*0x06*/ u16 var06; + /*0x06*/ u16 species; /*0x08*/ u8 pad_08[3]; - /*0x0b*/ u8 string_0b[12]; + /*0x0b*/ u8 name[12]; /*0x17*/ u8 language; - } unkShow04; + } dummy; // TVSHOW_NAME_RATER_SHOW struct { @@ -212,8 +214,8 @@ typedef union // size = 0x24 /*0x02*/ u8 priceReduced; /*0x03*/ u8 language; /*0x04*/ u8 pad04[2]; - /*0x06*/ u16 itemIds[3]; - /*0x0C*/ u16 itemAmounts[3]; + /*0x06*/ u16 itemIds[SMARTSHOPPER_NUM_ITEMS]; + /*0x0C*/ u16 itemAmounts[SMARTSHOPPER_NUM_ITEMS]; /*0x12*/ u8 shopLocation; /*0x13*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; } smartshopperShow; @@ -401,7 +403,7 @@ typedef union // size = 0x24 /*0x08*/ u16 species3; /*0x0a*/ u16 species4; /*0x0c*/ u8 language; - /*0x0d*/ u8 facility; + /*0x0d*/ u8 facilityAndMode; /*0x0e*/ u8 filler_0e[5]; /*0x13*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; } frontier; diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h index 29c66a992aed..603d585dadc6 100644 --- a/include/mauville_old_man.h +++ b/include/mauville_old_man.h @@ -7,7 +7,7 @@ void SetMauvilleOldMan(void); u8 GetCurrentMauvilleOldMan(void); void ScrSpecial_SetMauvilleOldManObjEventGfx(void); u8 sub_81201C8(void); -void sub_8120B70(OldMan *dest); +void SanitizeMauvilleOldManForRuby(OldMan *dest); void sub_8120670(void); void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 r1, u32 r6); void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 unused, u32 a2); diff --git a/include/tv.h b/include/tv.h index f94c5b7e507a..30cd13326512 100644 --- a/include/tv.h +++ b/include/tv.h @@ -1,13 +1,10 @@ #ifndef GUARD_TV_H #define GUARD_TV_H -#define SLOT_MACHINE 0 -#define ROULETTE 1 - extern u8 *const gTVStringVarPtrs[3]; void ClearTVShowData(void); -void sub_80EE184(void); +void TryPutBreakingNewsOnAir(void); void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16 *movePtr, u16 betterMove); void TryPutFrontierTVShowOnAir(u16 winStreak, u8 facility); void DoTVShow(void); @@ -23,41 +20,37 @@ void ReceiveTvShowsData(void *src, u32 size, u8 masterIdx); void TryPutSpotTheCutiesOnAir(struct Pokemon *pokemon, u8 ribbonMonDataIdx); u32 GetPlayerIDAsU32(void); bool8 GetPriceReduction(u8 newsKind); -void sub_80F14F8(TVShow *shows); +void SanitizeTVShowLocationsForRuby(TVShow *shows); size_t CountDigits(int value); u8 GetRibbonCount(struct Pokemon *pokemon); void AlertTVThatPlayerPlayedSlotMachine(u16 nCoinsSpent); void AlertTVThatPlayerPlayedRoulette(u16 nCoinsSpent); -void AlertTVOfNewCoinTotal(u16 nCoinsPaidOut); +void TryPutFindThatGamerOnAir(u16 nCoinsPaidOut); void TryPutSecretBaseSecretsOnAir(void); void TryPutTodaysRivalTrainerOnAir(void); void TryPutTrendWatcherOnAir(const u16 *words); -void sub_80EDA80(void); void ReceivePokeNewsData(void *src, u32 size, u8 masterIdx); -void sub_80F0BB8(void); +void DeactivateAllNormalTVShows(void); void RecordFishingAttemptForTV(bool8 caughtFish); void IncrementDailySlotsUses(void); void IncrementDailyRouletteUses(void); void IncrementDailyWildBattles(void); void IncrementDailyBerryBlender(void); -void sub_80F1208(TVShow *shows); -void sub_80EE44C(u8 nMonsCaught, u8 nPkblkUsed); -void sub_80F14F8(TVShow *shows); -size_t sub_80EF370(int value); +void SanitizeTVShowsForRuby(TVShow *shows); +void TryPutSafariFanClubOnAir(u8 nMonsCaught, u8 nPkblkUsed); bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 unused, u8 sheen, u8 language); void SetPokemonAnglerSpecies(u16 species); void UpdateTVShowsPerDay(u16 days); -void PutPokemonTodayCaughtOnAir(void); -void TV_PutSecretBaseVisitOnTheAir(void); +void TryPutPokemonTodayOnAir(void); +void TryPutSecretBaseVisitOnAir(void); void PutBattleUpdateOnTheAir(u8 opponentLinkPlayerId, u16 move, u16 speciesPlayer, u16 speciesOpponent); void BravoTrainerPokemonProfile_BeforeInterview1(u16 move); void InterviewBefore(void); void InterviewAfter(void); void UpdateTVScreensOnMap(int, int); -void TV_PrintIntToStringVar(u8 varIdx, int value); -void SaveRecordedItemPurchasesForTVShow(void); +void ConvertIntToDecimalString(u8 varIdx, int value); +void TryPutSmartShopperOnAir(void); bool8 ShouldAirFrontierTVShow(void); -void sub_80EE8C8(u16 winStreak, u8 facilityAndMode); void BravoTrainerPokemonProfile_BeforeInterview2(u8 contestStandingPlace); void ContestLiveUpdates_Init(u8 round1Placing); void ContestLiveUpdates_SetRound2Placing(u8 round2Placing); @@ -65,5 +58,8 @@ void ContestLiveUpdates_SetWinnerAppealFlag(u8 flag); void ContestLiveUpdates_SetWinnerMoveUsed(u16 move); void ContestLiveUpdates_SetLoserData(u8 flag, u8 loser); void ResetGabbyAndTy(void); +u8 CheckForPlayersHouseNews(void); +bool8 IsGabbyAndTyShowOnTheAir(void); +void TryPutTrainerFanClubOnAir(void); #endif //GUARD_TV_H diff --git a/src/battle_main.c b/src/battle_main.c index 741461b0b26f..c74de896e6ba 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -5039,7 +5039,7 @@ static void HandleEndTurn_FinishBattle(void) } } } - PutPokemonTodayCaughtOnAir(); + TryPutPokemonTodayOnAir(); } if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK @@ -5052,7 +5052,7 @@ static void HandleEndTurn_FinishBattle(void) | BATTLE_TYPE_WALLY_TUTORIAL)) && gBattleResults.shinyWildMon) { - sub_80EE184(); + TryPutBreakingNewsOnAir(); } sub_8186444(); diff --git a/src/battle_tower.c b/src/battle_tower.c index b1e5d78172ef..082ea6822f5a 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -36,7 +36,6 @@ #include "constants/event_objects.h" #include "constants/moves.h" #include "constants/easy_chat.h" -#include "constants/tv.h" extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer[]; extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer[]; diff --git a/src/contest.c b/src/contest.c index 246fc1e5013d..1549544dfa8b 100644 --- a/src/contest.c +++ b/src/contest.c @@ -42,7 +42,6 @@ #include "constants/moves.h" #include "constants/rgb.h" #include "constants/songs.h" -#include "constants/tv.h" // This file's functions. static void LoadContestPalettes(void); diff --git a/src/contest_util.c b/src/contest_util.c index 98854c4c6856..40c964bac8df 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -44,7 +44,6 @@ #include "constants/game_stat.h" #include "constants/rgb.h" #include "constants/songs.h" -#include "constants/tv.h" #include "contest.h" enum { diff --git a/src/daycare.c b/src/daycare.c index 14cf57806427..34b86498164d 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -24,7 +24,7 @@ #include "constants/region_map_sections.h" // this file's functions -static void ClearDaycareMonMail(struct DayCareMail *mail); +static void ClearDaycareMonMail(struct DaycareMail *mail); static void SetInitialEggData(struct Pokemon *mon, u16 species, struct DayCare *daycare); static u8 GetDaycareCompatibilityScore(struct DayCare *daycare); static void DaycarePrintMonInfo(u8 windowId, s32 daycareSlotId, u8 y); @@ -120,7 +120,7 @@ u8 CountPokemonInDaycare(struct DayCare *daycare) return count; } -void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDayCareMail *daycareMail) +void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *daycareMail) { u8 i; u8 numDaycareMons = 0; @@ -131,13 +131,9 @@ void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDay { numDaycareMons++; if (GetBoxMonData(&daycare->mons[i].mon, MON_DATA_HELD_ITEM) == ITEM_NONE) - { daycareMail->holdsItem[i] = FALSE; - } else - { daycareMail->holdsItem[i] = TRUE; - } } else { @@ -154,7 +150,7 @@ static s8 Daycare_FindEmptySpot(struct DayCare *daycare) for (i = 0; i < DAYCARE_MON_COUNT; i++) { - if (GetBoxMonData(&daycare->mons[i].mon, MON_DATA_SPECIES) == 0) + if (GetBoxMonData(&daycare->mons[i].mon, MON_DATA_SPECIES) == SPECIES_NONE) return i; } @@ -349,7 +345,7 @@ u8 GetNumLevelsGainedFromDaycare(void) return 0; } -static void ClearDaycareMonMail(struct DayCareMail *mail) +static void ClearDaycareMonMail(struct DaycareMail *mail) { s32 i; diff --git a/src/decoration.c b/src/decoration.c index b9a24370888c..6b6cf21e88db 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1652,7 +1652,7 @@ static void PlaceDecoration(u8 taskId) gSprites[sDecor_CameraSpriteObjectIdx1].pos1.y += 2; if (gMapHeader.regionMapSectionId == MAPSEC_SECRET_BASE) - TV_PutSecretBaseVisitOnTheAir(); + TryPutSecretBaseVisitOnAir(); CancelDecorating_(taskId); } @@ -2260,7 +2260,7 @@ static void Task_PutAwayDecoration(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_DecorationReturnedToPC); DisplayItemMessageOnField(taskId, gStringVar4, ContinuePuttingAwayDecorationsPrompt); if (gMapHeader.regionMapSectionId == MAPSEC_SECRET_BASE) - TV_PutSecretBaseVisitOnTheAir(); + TryPutSecretBaseVisitOnAir(); } break; } diff --git a/src/easy_chat.c b/src/easy_chat.c index 96d6808400b5..753c2df76780 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1474,8 +1474,8 @@ void ShowEasyChatScreen(void) words = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].fanclubOpinions.words[gSpecialVar_0x8006]; displayedPersonType = EASY_CHAT_PERSON_REPORTER_FEMALE; break; - case EASY_CHAT_TYPE_UNK_8: - words = gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].unkShow04.words; + case EASY_CHAT_TYPE_DUMMY_SHOW: + words = gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].dummy.words; displayedPersonType = EASY_CHAT_PERSON_REPORTER_MALE; break; case EASY_CHAT_TYPE_TRENDY_PHRASE: diff --git a/src/field_specials.c b/src/field_specials.c index df16583ed100..13fad83b1f01 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -57,7 +57,6 @@ #include "constants/map_types.h" #include "constants/maps.h" #include "constants/mevent.h" -#include "constants/tv.h" #include "constants/script_menu.h" #include "constants/slot_machine.h" #include "constants/songs.h" @@ -1622,7 +1621,7 @@ void BufferLottoTicketNumber(void) { if (gSpecialVar_Result >= 10000) { - TV_PrintIntToStringVar(0, gSpecialVar_Result); + ConvertIntToDecimalString(0, gSpecialVar_Result); } else if (gSpecialVar_Result >= 1000) { diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index 914ba2880723..3d3b83fefc8f 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -22,7 +22,6 @@ #include "constants/metatile_behaviors.h" #include "constants/metatile_labels.h" #include "constants/songs.h" -#include "constants/tv.h" EWRAM_DATA struct MapPosition gPlayerFacingPosition = {0}; diff --git a/src/frontier_util.c b/src/frontier_util.c index 491aef93677a..4aec27944d09 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -1552,16 +1552,16 @@ static void CheckPutFrontierTVShowOnAir(void) switch (battleMode) { case FRONTIER_MODE_SINGLES: - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], 1); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_TOWER_SINGLES); break; case FRONTIER_MODE_DOUBLES: - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], 2); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_TOWER_DOUBLES); break; case FRONTIER_MODE_MULTIS: - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], 3); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_TOWER_MULTIS); break; case FRONTIER_MODE_LINK_MULTIS: - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], 4); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_TOWER_LINK_MULTIS); break; } } @@ -1575,9 +1575,9 @@ static void CheckPutFrontierTVShowOnAir(void) && ShouldAirFrontierTVShow()) { if (battleMode == FRONTIER_MODE_SINGLES) - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode], 5); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_DOME_SINGLES); else - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode], 6); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_DOME_DOUBLES); } } break; @@ -1589,9 +1589,9 @@ static void CheckPutFrontierTVShowOnAir(void) && ShouldAirFrontierTVShow()) { if (battleMode == FRONTIER_MODE_SINGLES) - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode], 11); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_PALACE_SINGLES); else - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode], 12); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_PALACE_DOUBLES); } } break; @@ -1602,7 +1602,7 @@ static void CheckPutFrontierTVShowOnAir(void) if (gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode] > 1 && ShouldAirFrontierTVShow()) { - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode], 10); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode], FRONTIER_SHOW_ARENA); } } break; @@ -1615,9 +1615,9 @@ static void CheckPutFrontierTVShowOnAir(void) && ShouldAirFrontierTVShow()) { if (battleMode == FRONTIER_MODE_SINGLES) - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode], 7); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_FACTORY_SINGLES); else - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode], 8); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode], FRONTIER_SHOW_FACTORY_DOUBLES); } } break; @@ -1628,7 +1628,7 @@ static void CheckPutFrontierTVShowOnAir(void) if (gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] > 1 && ShouldAirFrontierTVShow()) { - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode], 9); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode], FRONTIER_SHOW_PIKE); } } break; @@ -1639,7 +1639,7 @@ static void CheckPutFrontierTVShowOnAir(void) if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] > 1 && ShouldAirFrontierTVShow()) { - TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode], 13); + TryPutFrontierTVShowOnAir(gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode], FRONTIER_SHOW_PYRAMID); } } break; diff --git a/src/item.c b/src/item.c index 89209218497d..8259d1cd58f7 100644 --- a/src/item.c +++ b/src/item.c @@ -14,7 +14,6 @@ #include "battle_pyramid_bag.h" #include "constants/items.h" #include "constants/hold_effects.h" -#include "constants/tv.h" extern u16 gUnknown_0203CF30[]; diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 22841562836e..239639e0b601 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -680,45 +680,43 @@ void ScrSpecial_SetMauvilleOldManObjEventGfx(void) // Language fixers? -void sub_8120B70(union OldMan * oldMan) +void SanitizeMauvilleOldManForRuby(union OldMan * oldMan) { s32 i; u8 playerName[PLAYER_NAME_LENGTH + 1]; switch (oldMan->common.id) { - case MAUVILLE_MAN_TRADER: + case MAUVILLE_MAN_TRADER: + { + struct MauvilleOldManTrader * trader = &oldMan->trader; + for (i = 0; i < NUM_TRADER_ITEMS; i++) { - struct MauvilleOldManTrader * trader = &oldMan->trader; - for (i = 0; i < NUM_TRADER_ITEMS; i++) - { - if (trader->language[i] == LANGUAGE_JAPANESE) - { - ConvertInternationalString(trader->playerNames[i], LANGUAGE_JAPANESE); - } - } + if (trader->language[i] == LANGUAGE_JAPANESE) + ConvertInternationalString(trader->playerNames[i], LANGUAGE_JAPANESE); } - break; - case MAUVILLE_MAN_STORYTELLER: + break; + } + case MAUVILLE_MAN_STORYTELLER: + { + struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; + for (i = 0; i < NUM_STORYTELLER_TALES; i++) { - struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; - for (i = 0; i < NUM_STORYTELLER_TALES; i++) + if (storyteller->gameStatIDs[i] != 0) { - if (storyteller->gameStatIDs[i] != 0) + memcpy(playerName, storyteller->trainerNames[i], PLAYER_NAME_LENGTH); + playerName[PLAYER_NAME_LENGTH] = EOS; + if (IsStringJapanese(playerName)) { - memcpy(playerName, storyteller->trainerNames[i], PLAYER_NAME_LENGTH); - playerName[PLAYER_NAME_LENGTH] = EOS; - if (IsStringJapanese(playerName)) - { - memset(playerName, CHAR_SPACE, PLAYER_NAME_LENGTH + 1); - StringCopy(playerName, gText_Friend); - memcpy(storyteller->trainerNames[i], playerName, PLAYER_NAME_LENGTH); - storyteller->language[i] = GAME_LANGUAGE; - } + memset(playerName, CHAR_SPACE, PLAYER_NAME_LENGTH + 1); + StringCopy(playerName, gText_Friend); + memcpy(storyteller->trainerNames[i], playerName, PLAYER_NAME_LENGTH); + storyteller->language[i] = GAME_LANGUAGE; } } } - break; + break; + } } } diff --git a/src/menu.c b/src/menu.c index 44b39d762d46..c01a69b12fbb 100644 --- a/src/menu.c +++ b/src/menu.c @@ -509,12 +509,14 @@ void RemoveStartMenuWindow(void) } } -u16 sub_8197A30(void) +// Unused +static u16 GetDialogFrameBaseTileNum(void) { return DLG_WINDOW_BASE_TILE_NUM; } -u16 sub_8197A38(void) +// Unused +static u16 GetStandardFrameBaseTileNum(void) { return STD_WINDOW_BASE_TILE_NUM; } diff --git a/src/post_battle_event_funcs.c b/src/post_battle_event_funcs.c index 78ebe02e4d3a..081a40218833 100644 --- a/src/post_battle_event_funcs.c +++ b/src/post_battle_event_funcs.c @@ -8,7 +8,6 @@ #include "script_pokemon_util.h" #include "tv.h" #include "constants/heal_locations.h" -#include "constants/tv.h" int GameClear(void) { diff --git a/src/record_mixing.c b/src/record_mixing.c index 7cc88a54c12d..aa6e4eef2aac 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -51,7 +51,7 @@ struct PlayerRecordsRS PokeNews pokeNews[POKE_NEWS_COUNT]; OldMan oldMan; struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; - struct RecordMixingDayCareMail dayCareMail; + struct RecordMixingDaycareMail daycareMail; struct RSBattleTowerRecord battleTowerRecord; u16 giftItem; u16 filler11C8[0x32]; @@ -64,7 +64,7 @@ struct PlayerRecordsEmerald /* 0x1004 */ PokeNews pokeNews[POKE_NEWS_COUNT]; /* 0x1044 */ OldMan oldMan; /* 0x1084 */ struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; - /* 0x10ac */ struct RecordMixingDayCareMail dayCareMail; + /* 0x10ac */ struct RecordMixingDaycareMail daycareMail; /* 0x1124 */ struct EmeraldBattleTowerRecord battleTowerRecord; /* 0x1210 */ u16 giftItem; /* 0x1214 */ LilycoveLady lilycoveLady; @@ -87,7 +87,7 @@ static TVShow *sTvShowsSave; static PokeNews *sPokeNewsSave; static OldMan *sOldManSave; static struct DewfordTrend *sDewfordTrendsSave; -static struct RecordMixingDayCareMail *gUnknown_03001148; +static struct RecordMixingDaycareMail *sDaycareMailSave; static void *sBattleTowerSave; static LilycoveLady *sLilycoveLadySave; static void *sApprenticesSave; @@ -96,7 +96,7 @@ static u32 sRecordStructSize; static u8 gUnknown_03001160; static struct PlayerHallRecords *gUnknown_03001168[3]; -static EWRAM_DATA struct RecordMixingDayCareMail gUnknown_02039F9C = {0}; +static EWRAM_DATA struct RecordMixingDaycareMail sDaycareMail = {0}; static EWRAM_DATA union PlayerRecords *sReceivedRecords = NULL; static EWRAM_DATA union PlayerRecords *sSentRecord = NULL; @@ -115,14 +115,14 @@ static void ReceiveOldManData(OldMan *, size_t, u8); static void ReceiveBattleTowerData(void *battleTowerRecord, size_t, u8); static void ReceiveLilycoveLadyData(LilycoveLady *, size_t, u8); static void sub_80E7B2C(const u8 *); -static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *, size_t, u8, TVShow *); +static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *, size_t, u8, TVShow *); static void ReceiveGiftItem(u16 *item, u8 which); static void Task_DoRecordMixing(u8 taskId); static void GetSavedApprentices(struct Apprentice *dst, struct Apprentice *src); static void ReceiveApprenticeData(struct Apprentice *mixApprentice, size_t recordSize, u32 multiplayerId); static void ReceiveRankingHallRecords(struct PlayerHallRecords *hallRecords, size_t arg1, u32 arg2); -static void sub_80E89F8(struct RecordMixingDayCareMail *dst); -static void SanitizeDayCareMailForRuby(struct RecordMixingDayCareMail *src); +static void GetRecordMixingDaycareMail(struct RecordMixingDaycareMail *dst); +static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *src); static void SanitizeEmeraldBattleTowerRecord(struct EmeraldBattleTowerRecord *arg0); static void SanitizeRubyBattleTowerRecord(struct RSBattleTowerRecord *src); @@ -180,7 +180,7 @@ static void SetSrcLookupPointers(void) sPokeNewsSave = gSaveBlock1Ptr->pokeNews; sOldManSave = &gSaveBlock1Ptr->oldMan; sDewfordTrendsSave = gSaveBlock1Ptr->dewfordTrends; - gUnknown_03001148 = &gUnknown_02039F9C; + sDaycareMailSave = &sDaycareMail; sBattleTowerSave = &gSaveBlock2Ptr->frontier.towerPlayer; sLilycoveLadySave = &gSaveBlock1Ptr->lilycoveLady; sApprenticesSave = gSaveBlock2Ptr->apprentices; @@ -191,11 +191,11 @@ static void PrepareUnknownExchangePacket(struct PlayerRecordsRS *dest) { memcpy(dest->secretBases, sSecretBasesSave, sizeof(dest->secretBases)); memcpy(dest->tvShows, sTvShowsSave, sizeof(dest->tvShows)); - sub_80F14F8(dest->tvShows); + SanitizeTVShowLocationsForRuby(dest->tvShows); memcpy(dest->pokeNews, sPokeNewsSave, sizeof(dest->pokeNews)); memcpy(&dest->oldMan, sOldManSave, sizeof(dest->oldMan)); memcpy(dest->dewfordTrends, sDewfordTrendsSave, sizeof(dest->dewfordTrends)); - sub_80E89F8(&dest->dayCareMail); + GetRecordMixingDaycareMail(&dest->daycareMail); EmeraldBattleTowerRecordToRuby(sBattleTowerSave, &dest->battleTowerRecord); if (GetMultiplayerId() == 0) @@ -207,13 +207,13 @@ static void PrepareExchangePacketForRubySapphire(struct PlayerRecordsRS *dest) memcpy(dest->secretBases, sSecretBasesSave, sizeof(dest->secretBases)); ClearJapaneseSecretBases(dest->secretBases); memcpy(dest->tvShows, sTvShowsSave, sizeof(dest->tvShows)); - sub_80F1208(dest->tvShows); + SanitizeTVShowsForRuby(dest->tvShows); memcpy(dest->pokeNews, sPokeNewsSave, sizeof(dest->pokeNews)); memcpy(&dest->oldMan, sOldManSave, sizeof(dest->oldMan)); - sub_8120B70(&dest->oldMan); + SanitizeMauvilleOldManForRuby(&dest->oldMan); memcpy(dest->dewfordTrends, sDewfordTrendsSave, sizeof(dest->dewfordTrends)); - sub_80E89F8(&dest->dayCareMail); - SanitizeDayCareMailForRuby(&dest->dayCareMail); + GetRecordMixingDaycareMail(&dest->daycareMail); + SanitizeDaycareMailForRuby(&dest->daycareMail); EmeraldBattleTowerRecordToRuby(sBattleTowerSave, &dest->battleTowerRecord); SanitizeRubyBattleTowerRecord(&dest->battleTowerRecord); @@ -224,7 +224,7 @@ static void PrepareExchangePacketForRubySapphire(struct PlayerRecordsRS *dest) static void PrepareExchangePacket(void) { SetPlayerSecretBaseParty(); - sub_80F0BB8(); + DeactivateAllNormalTVShows(); SetSrcLookupPointers(); if (Link_AnyPartnersPlayingRubyOrSapphire()) @@ -242,7 +242,7 @@ static void PrepareExchangePacket(void) memcpy(&sSentRecord->emerald.oldMan, sOldManSave, sizeof(sSentRecord->emerald.oldMan)); memcpy(&sSentRecord->emerald.lilycoveLady, sLilycoveLadySave, sizeof(sSentRecord->emerald.lilycoveLady)); memcpy(sSentRecord->emerald.dewfordTrends, sDewfordTrendsSave, sizeof(sSentRecord->emerald.dewfordTrends)); - sub_80E89F8(&sSentRecord->emerald.dayCareMail); + GetRecordMixingDaycareMail(&sSentRecord->emerald.daycareMail); memcpy(&sSentRecord->emerald.battleTowerRecord, sBattleTowerSave, sizeof(sSentRecord->emerald.battleTowerRecord)); SanitizeEmeraldBattleTowerRecord(&sSentRecord->emerald.battleTowerRecord); @@ -261,7 +261,7 @@ static void ReceiveExchangePacket(u32 which) // Ruby/Sapphire sub_80E7B2C((void *)sReceivedRecords->ruby.tvShows); ReceiveSecretBasesData(sReceivedRecords->ruby.secretBases, sizeof(struct PlayerRecordsRS), which); - ReceiveDaycareMailData(&sReceivedRecords->ruby.dayCareMail, sizeof(struct PlayerRecordsRS), which, sReceivedRecords->ruby.tvShows); + ReceiveDaycareMailData(&sReceivedRecords->ruby.daycareMail, sizeof(struct PlayerRecordsRS), which, sReceivedRecords->ruby.tvShows); ReceiveBattleTowerData(&sReceivedRecords->ruby.battleTowerRecord, sizeof(struct PlayerRecordsRS), which); ReceiveTvShowsData(sReceivedRecords->ruby.tvShows, sizeof(struct PlayerRecordsRS), which); ReceivePokeNewsData(sReceivedRecords->ruby.pokeNews, sizeof(struct PlayerRecordsRS), which); @@ -278,7 +278,7 @@ static void ReceiveExchangePacket(u32 which) ReceivePokeNewsData(sReceivedRecords->emerald.pokeNews, sizeof(struct PlayerRecordsEmerald), which); ReceiveOldManData(&sReceivedRecords->emerald.oldMan, sizeof(struct PlayerRecordsEmerald), which); ReceiveDewfordTrendData(sReceivedRecords->emerald.dewfordTrends, sizeof(struct PlayerRecordsEmerald), which); - ReceiveDaycareMailData(&sReceivedRecords->emerald.dayCareMail, sizeof(struct PlayerRecordsEmerald), which, sReceivedRecords->emerald.tvShows); + ReceiveDaycareMailData(&sReceivedRecords->emerald.daycareMail, sizeof(struct PlayerRecordsEmerald), which, sReceivedRecords->emerald.tvShows); ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(struct PlayerRecordsEmerald), which); ReceiveGiftItem(&sReceivedRecords->emerald.giftItem, which); ReceiveLilycoveLadyData(&sReceivedRecords->emerald.lilycoveLady, sizeof(struct PlayerRecordsEmerald), which); @@ -319,7 +319,7 @@ static void Task_RecordMixing_Main(u8 taskId) { case 0: // init sSentRecord = malloc(sizeof(union PlayerRecords)); - sReceivedRecords = malloc(sizeof(union PlayerRecords) * 4); + sReceivedRecords = malloc(sizeof(union PlayerRecords) * MAX_LINK_PLAYERS); SetLocalLinkPlayerId(gSpecialVar_0x8005); VarSet(VAR_TEMP_0, 1); gUnknown_03001130 = FALSE; @@ -665,7 +665,7 @@ static void ReceiveBattleTowerData(void *battleTowerRecord, size_t recordSize, u { memcpy((void *)battleTowerRecord + recordSize * which, (void *)battleTowerRecord + recordSize * mixIndices[which], sizeof(struct EmeraldBattleTowerRecord)); dest = (void *)battleTowerRecord + recordSize * which; - for (i = 0; i < 4; i ++) + for (i = 0; i < MAX_FRONTIER_PARTY_SIZE; i++) { btPokemon = &dest->party[i]; if (btPokemon->species != SPECIES_NONE && IsStringJapanese(btPokemon->nickname)) @@ -706,22 +706,22 @@ static void ReceiveLilycoveLadyData(LilycoveLady *lilycoveLady, size_t recordSiz } } -static u8 sub_80E7A9C(struct DayCareMail *rmMail) +static u8 sub_80E7A9C(struct DaycareMail *rmMail) { return rmMail->message.itemId; } -static void sub_80E7AA4(struct RecordMixingDayCareMail *src, size_t recordSize, u8 (*idxs)[2], u8 which0, u8 which1) +static void sub_80E7AA4(struct RecordMixingDaycareMail *src, size_t recordSize, u8 (*idxs)[2], u8 which0, u8 which1) { - struct DayCareMail buffer; - struct RecordMixingDayCareMail *mail1; - struct RecordMixingDayCareMail *mail2; + struct DaycareMail buffer; + struct RecordMixingDaycareMail *mail1; + struct RecordMixingDaycareMail *mail2; mail1 = (void *)src + recordSize * idxs[which0][0]; - memcpy(&buffer, &mail1->mail[idxs[which0][1]], sizeof(struct DayCareMail)); + memcpy(&buffer, &mail1->mail[idxs[which0][1]], sizeof(struct DaycareMail)); mail2 = (void *)src + recordSize * idxs[which1][0]; - memcpy(&mail1->mail[idxs[which0][1]], &mail2->mail[idxs[which1][1]], sizeof(struct DayCareMail)); - memcpy(&mail2->mail[idxs[which1][1]], &buffer, sizeof(struct DayCareMail)); + memcpy(&mail1->mail[idxs[which0][1]], &mail2->mail[idxs[which1][1]], sizeof(struct DaycareMail)); + memcpy(&mail2->mail[idxs[which1][1]], &buffer, sizeof(struct DaycareMail)); } static void sub_80E7B2C(const u8 *src) @@ -730,7 +730,7 @@ static void sub_80E7B2C(const u8 *src) s32 i; sum = 0; - for (i = 0; i < 256; i ++) + for (i = 0; i < 256; i++) sum += src[i]; gUnknown_03001160 = sum; @@ -741,17 +741,17 @@ static u8 sub_80E7B54(void) return gUnknown_03001160; } -static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *src, size_t recordSize, u8 which, TVShow *shows) +static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *src, size_t recordSize, u8 which, TVShow *shows) { u16 i, j; u8 linkPlayerCount; u8 tableId; - struct RecordMixingDayCareMail *_src; + struct RecordMixingDaycareMail *_src; u8 which0, which1; void *ptr; u8 sp04[4]; u8 sp08[4]; - struct RecordMixingDayCareMail *sp0c[4]; + struct RecordMixingDaycareMail *sp0c[4]; u8 sp1c[4][2]; u8 sp24[4][2]; u8 sp34; @@ -777,10 +777,10 @@ static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *src, size_t r _src = (void *)src + i * recordSize; language = gLinkPlayers[i].language; version = gLinkPlayers[i].version & 0xFF; - for (j = 0; j < _src->numDaycareMons; j ++) + for (j = 0; j < _src->numDaycareMons; j++) { u16 otNameLanguage, nicknameLanguage; - struct DayCareMail *recordMixingMail = &_src->mail[j]; + struct DaycareMail *recordMixingMail = &_src->mail[j]; if (!recordMixingMail->message.itemId) continue; @@ -835,7 +835,7 @@ static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *src, size_t r if (_src->numDaycareMons == 0) continue; - for (j = 0; j < _src->numDaycareMons; j ++) + for (j = 0; j < _src->numDaycareMons; j++) { if (!_src->holdsItem[j]) sp1c[i][j] = 1; @@ -913,8 +913,8 @@ static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *src, size_t r } _src = (void *)src + which * recordSize; - memcpy(&gSaveBlock1Ptr->daycare.mons[0].mail, &_src->mail[0], sizeof(struct DayCareMail)); - memcpy(&gSaveBlock1Ptr->daycare.mons[1].mail, &_src->mail[1], sizeof(struct DayCareMail)); + memcpy(&gSaveBlock1Ptr->daycare.mons[0].mail, &_src->mail[0], sizeof(struct DaycareMail)); + memcpy(&gSaveBlock1Ptr->daycare.mons[1].mail, &_src->mail[1], sizeof(struct DaycareMail)); SeedRng(oldSeed); } @@ -957,7 +957,7 @@ static void Task_DoRecordMixing(u8 taskId) case 2: SetContinueGameWarpStatusToDynamicWarp(); FullSaveGame(); - task->data[0] ++; + task->data[0]++; break; case 3: if (CheckSaveFile()) @@ -971,7 +971,7 @@ static void Task_DoRecordMixing(u8 taskId) if (++task->data[1] > 10) { SetCloseLinkCallback(); - task->data[0] ++; + task->data[0]++; } break; case 5: @@ -984,7 +984,7 @@ static void Task_DoRecordMixing(u8 taskId) if (!sub_801048C(FALSE)) { CreateTask(Task_LinkSave, 5); - task->data[0] ++; + task->data[0]++; } break; case 7: // wait for Task_LinkSave to finish. @@ -1003,7 +1003,7 @@ static void Task_DoRecordMixing(u8 taskId) break; case 8: SetLinkStandbyCallback(); - task->data[0] ++; + task->data[0]++; break; case 9: if (IsLinkTaskFinished()) @@ -1061,13 +1061,9 @@ static void GetSavedApprentices(struct Apprentice *dst, struct Apprentice *src) break; case 2: if (Random2() > 0x3333) - { dst[1] = src[gSaveBlock2Ptr->playerApprentice.saveId + 1]; - } else - { dst[1] = src[((gSaveBlock2Ptr->playerApprentice.saveId + 1) % (APPRENTICE_COUNT - 1) + 1)]; - } break; } } @@ -1221,7 +1217,7 @@ static void sub_80E8578(struct RecordMixingHallRecords *dst, void *hallRecords, for (l = 0; l < 3; l++) { if (GetTrainerId(dst->hallRecords2P[j][l].id1) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id1) - && GetTrainerId(dst->hallRecords2P[j][l].id2) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id2)) + && GetTrainerId(dst->hallRecords2P[j][l].id2) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id2)) { var_68++; if (dst->hallRecords2P[j][l].winStreak < gUnknown_03001168[k]->twoPlayers[j].winStreak) @@ -1308,21 +1304,21 @@ static void ReceiveRankingHallRecords(struct PlayerHallRecords *hallRecords, siz Free(largeStructPtr); } -static void sub_80E89F8(struct RecordMixingDayCareMail *dst) +static void GetRecordMixingDaycareMail(struct RecordMixingDaycareMail *dst) { - gUnknown_02039F9C.mail[0] = gSaveBlock1Ptr->daycare.mons[0].mail; - gUnknown_02039F9C.mail[1] = gSaveBlock1Ptr->daycare.mons[1].mail; - InitDaycareMailRecordMixing(&gSaveBlock1Ptr->daycare, &gUnknown_02039F9C); - *dst = *gUnknown_03001148; + sDaycareMail.mail[0] = gSaveBlock1Ptr->daycare.mons[0].mail; + sDaycareMail.mail[1] = gSaveBlock1Ptr->daycare.mons[1].mail; + InitDaycareMailRecordMixing(&gSaveBlock1Ptr->daycare, &sDaycareMail); + *dst = *sDaycareMailSave; } -static void SanitizeDayCareMailForRuby(struct RecordMixingDayCareMail *src) +static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *src) { s32 i; for (i = 0; i < src->numDaycareMons; i++) { - struct DayCareMail *mail = &src->mail[i]; + struct DaycareMail *mail = &src->mail[i]; if (mail->message.itemId != 0) { if (mail->gameLanguage != LANGUAGE_JAPANESE) @@ -1342,10 +1338,10 @@ static void SanitizeEmeraldBattleTowerRecord(struct EmeraldBattleTowerRecord *ds { s32 i; - for (i = 0; i < 4; i++) + for (i = 0; i < MAX_FRONTIER_PARTY_SIZE; i++) { struct BattleTowerPokemon *towerMon = &dst->party[i]; - if (towerMon->species != 0) + if (towerMon->species != SPECIES_NONE) StripExtCtrlCodes(towerMon->nickname); } diff --git a/src/roulette.c b/src/roulette.c index f0b484fe8dde..cf27fdf9b8d7 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1968,7 +1968,7 @@ static void ExitRoulette(u8 taskId) gSpecialVar_0x8004 = TRUE; else gSpecialVar_0x8004 = FALSE; - AlertTVOfNewCoinTotal(GetCoins()); + TryPutFindThatGamerOnAir(GetCoins()); BeginHardwarePaletteFade(0xFF, 0, 0, 16, 0); gTasks[taskId].func = Task_ExitRoulette; } diff --git a/src/safari_zone.c b/src/safari_zone.c index 3b86bc464048..1f13976569e6 100644 --- a/src/safari_zone.c +++ b/src/safari_zone.c @@ -65,7 +65,7 @@ void EnterSafariMode(void) void ExitSafariMode(void) { - sub_80EE44C(sSafariZoneCaughtMons, sSafariZonePkblkUses); + TryPutSafariFanClubOnAir(sSafariZoneCaughtMons, sSafariZonePkblkUses); ResetSafariZoneFlag(); ClearAllPokeblockFeeders(); gNumSafariBalls = 0; diff --git a/src/script_pokemon_util.c b/src/script_pokemon_util.c index ad1a55230eed..93a747772034 100755 --- a/src/script_pokemon_util.c +++ b/src/script_pokemon_util.c @@ -22,7 +22,6 @@ #include "string_util.h" #include "tv.h" #include "constants/items.h" -#include "constants/tv.h" #include "constants/battle_frontier.h" static void CB2_ReturnFromChooseHalfParty(void); diff --git a/src/secret_base.c b/src/secret_base.c index ddc051dca710..e1c62e2f2bc4 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -47,7 +47,6 @@ #include "constants/secret_bases.h" #include "constants/songs.h" #include "constants/trainers.h" -#include "constants/tv.h" // Values for registryStatus enum { diff --git a/src/shop.c b/src/shop.c index dac43c96d16e..55b421928cbf 100755 --- a/src/shop.c +++ b/src/shop.c @@ -38,7 +38,6 @@ #include "constants/metatile_behaviors.h" #include "constants/rgb.h" #include "constants/songs.h" -#include "constants/tv.h" #define TAG_SCROLL_ARROW 2100 #define TAG_ITEM_ICON_BASE 2110 @@ -48,7 +47,7 @@ static EWRAM_DATA struct ShopData *sShopData = NULL; static EWRAM_DATA struct ListMenuItem *sListMenuItems = NULL; static EWRAM_DATA u8 (*sItemNames)[16] = {0}; static EWRAM_DATA u8 sPurchaseHistoryId = 0; -EWRAM_DATA struct ItemSlot gMartPurchaseHistory[3] = {0}; +EWRAM_DATA struct ItemSlot gMartPurchaseHistory[SMARTSHOPPER_NUM_ITEMS] = {0}; static void Task_ShopMenu(u8 taskId); static void Task_HandleShopMenuQuit(u8 taskId); @@ -373,7 +372,7 @@ static void Task_HandleShopMenuQuit(u8 taskId) { ClearStdWindowAndFrameToTransparent(sMartInfo.windowId, 2); RemoveWindow(sMartInfo.windowId); - SaveRecordedItemPurchasesForTVShow(); + TryPutSmartShopperOnAir(); ScriptContext2_Disable(); DestroyTask(taskId); diff --git a/src/slot_machine.c b/src/slot_machine.c index aa32d5d95452..9a3a9ee06b7d 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1592,7 +1592,7 @@ static bool8 SlotAction_WaitMsg_NoMoreCoins(struct Task *task) static bool8 SlotAction_EndGame(struct Task *task) { SetCoins(sSlotMachine->coins); - AlertTVOfNewCoinTotal(GetCoins()); + TryPutFindThatGamerOnAir(GetCoins()); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB(0, 0, 0)); sSlotMachine->state++; // SLOT_ACTION_FREE return FALSE; diff --git a/src/tv.c b/src/tv.c index 0466ee713aaf..50adde3f439a 100644 --- a/src/tv.c +++ b/src/tv.c @@ -41,18 +41,27 @@ #include "constants/lilycove_lady.h" #include "constants/maps.h" #include "constants/metatile_behaviors.h" +#include "constants/metatile_labels.h" #include "constants/moves.h" #include "constants/region_map_sections.h" #include "constants/script_menu.h" -#include "constants/tv.h" - -// Static type declarations #define LAST_TVSHOW_IDX (TV_SHOWS_COUNT - 1) -#define rbernoulli(num, den) TV_BernoulliTrial(0xFFFF * (num) / (den)) +#define rbernoulli(num, den) BernoulliTrial(0xFFFF * (num) / (den)) + +enum { + TVGROUP_NONE, + TVGROUP_UNUSED, + TVGROUP_NORMAL, + TVGROUP_RECORD_MIX, + TVGROUP_OUTBREAK, +}; -// Static RAM declarations +enum { + SLOT_MACHINE, + ROULETTE, +}; s8 sCurTVShowSlot; u16 sTV_SecretBaseVisitMovesTemp[8]; @@ -67,79 +76,77 @@ static u8 sTVShowMixingNumPlayers; static u8 sTVShowNewsMixingNumPlayers; static s8 sTVShowMixingCurSlot; -EWRAM_DATA u16 sPokemonAnglerSpecies = 0; -EWRAM_DATA u16 sPokemonAnglerAttemptCounters = 0; -EWRAM_DATA u16 sFindThatGamerCoinsSpent = 0; -EWRAM_DATA u8 sFindThatGamerWhichGame = SLOT_MACHINE; -EWRAM_DATA ALIGNED(4) u8 sRecordMixingPartnersWithoutShowsToShare = 0; -EWRAM_DATA ALIGNED(4) u8 sTVShowState = 0; -EWRAM_DATA u8 sTVSecretBaseSecretsRandomValues[3] = {}; - -// Static ROM declarations -void ClearPokemonNews(void); -u8 GetTVChannelByShowType(u8 kind); -u8 FindFirstActiveTVShowThatIsNotAMassOutbreak(void); -u8 CheckForBigMovieOrEmergencyNewsOnTV(void); -void SetTVMetatilesOnMap(int width, int height, u16 tileId); -u8 FindAnyTVNewsOnTheAir(void); -bool8 IsTVShowInSearchOfTrainersAiring(void); -void TakeTVShowInSearchOfTrainersOffTheAir(void); -bool8 TV_BernoulliTrial(u16 ratio); -s8 FindEmptyTVSlotBeyondFirstFiveShowsOfArray(TVShow *shows); -bool8 HasMixableShowAlreadyBeenSpawnedWithPlayerID(u8 kind, bool8 flag); -void tv_store_id_3x(TVShow *show); -void DeleteTVShowInArrayByIdx(TVShow *shows, u8 idx); -s8 FindEmptyTVSlotWithinFirstFiveShowsOfArray(TVShow *shows); -void FindActiveBroadcastByShowType_SetScriptResult(u8 kind); +static EWRAM_DATA u16 sPokemonAnglerSpecies = 0; +static EWRAM_DATA u16 sPokemonAnglerAttemptCounters = 0; +static EWRAM_DATA u16 sFindThatGamerCoinsSpent = 0; +static EWRAM_DATA u8 sFindThatGamerWhichGame = SLOT_MACHINE; +static EWRAM_DATA ALIGNED(4) u8 sRecordMixingPartnersWithoutShowsToShare = 0; +static EWRAM_DATA ALIGNED(4) u8 sTVShowState = 0; +static EWRAM_DATA u8 sTVSecretBaseSecretsRandomValues[3] = {}; + +static void ClearPokeNews(void); +static u8 GetTVGroupByShowId(u8); +static u8 FindFirstActiveTVShowThatIsNotAMassOutbreak(void); +static void SetTVMetatilesOnMap(int, int, u16); +static u8 FindAnyPokeNewsOnTheAir(void); +static void TakeGabbyAndTyOffTheAir(void); +static bool8 BernoulliTrial(u16 ratio); +static s8 FindFirstEmptyRecordMixTVShowSlot(TVShow *); +static bool8 IsRecordMixShowAlreadySpawned(u8, bool8); +static void StorePlayerIdInRecordMixShow(TVShow *); +static void DeleteTVShowInArrayByIdx(TVShow *, u8); +static s8 FindFirstEmptyNormalTVShowSlot(TVShow *); +static void TryReplaceOldTVShowOfKind(u8); static void InterviewBefore_BravoTrainerPkmnProfile(void); static void InterviewBefore_NameRater(void); -u16 TV_GetSomeOtherSpeciesAlreadySeenByPlayer(u16 passedSpecies); -static void sub_80EFA88(void); -static void sub_80EF93C(TVShow *shows); -s8 sub_80EEE30(PokeNews *pokeNews); -bool8 sub_80EF0E4(u8 newsKind); -void ClearPokemonNewsI(u8 i); -static void sub_80F1254(TVShow *shows); -static void sub_80F12A4(TVShow *shows); -static void sub_80F0358(TVShow *player1, TVShow *player2, TVShow *player3, TVShow *player4); -static void sub_80F0C04(void); -static void sub_80F0708(void); -static void sub_80F0B64(void); -static s8 sub_80F06D0(TVShow *tvShows); -static bool8 sub_80F049C(TVShow *dest[], TVShow *src[], u8 idx); -static bool8 sub_80F0580(TVShow *tv1, TVShow *tv2, u8 idx); -static bool8 sub_80F05E8(TVShow *tv1, TVShow *tv2, u8 idx); -static bool8 sub_80F0668(TVShow *tv1, TVShow *tv2, u8 idx); -void SetTvShowInactive(u8 showIdx); -static void sub_80F0B24(u16 species, u8 showIdx); -static void sub_80F0D60(PokeNews *player1, PokeNews *player2, PokeNews *player3, PokeNews *player4); -static void sub_80F0EEC(void); -static void sub_80F0F24(void); -static s8 sub_80F0ECC(PokeNews *pokeNews, u8 idx); -static void sub_80F0E58(PokeNews *dest[], PokeNews *src[]); -static bool8 sub_80F0E84(PokeNews *dest, PokeNews *src, s8 slot); -void TVShowDone(void); +static u16 GetRandomDifferentSpeciesSeenByPlayer(u16); +static void Script_FindFirstEmptyNormalTVShowSlot(void); +static void CompactTVShowArray(TVShow *); +static s8 GetFirstEmptyPokeNewsSlot(PokeNews *); +static bool8 IsAddingPokeNewsDisallowed(u8); +static void ClearPokeNewsBySlot(u8); +static void TranslateRubyShows(TVShow *); +static void TranslateJapaneseEmeraldShows(TVShow *); +static void SetMixedTVShows(TVShow *, TVShow *, TVShow *, TVShow *); +static void DeleteExcessMixedShows(void); +static void DeactivateShowsWithUnseenSpecies(void); +static void DeactivateGameCompleteShowsIfNotUnlocked(void); +static s8 FindInactiveShowInArray(TVShow *); +static bool8 TryMixTVShow(TVShow *[], TVShow *[], u8); +static bool8 TryMixNormalTVShow(TVShow *, TVShow *, u8); +static bool8 TryMixRecordMixTVShow(TVShow *, TVShow *, u8); +static bool8 TryMixOutbreakTVShow(TVShow *, TVShow *, u8); +static void DeactivateShow(u8 showIdx); +static void DeactivateShowIfNotSeenSpecies(u16, u8); +static void SetMixedPokeNews(PokeNews *, PokeNews *, PokeNews *, PokeNews *); +static void ClearInvalidPokeNews(void); +static void ClearPokeNewsIfGameNotComplete(void); +static s8 GetPokeNewsSlotIfActive(PokeNews *, u8); +static void InitTryMixPokeNewsShow(PokeNews *[], PokeNews *[]); +static bool8 TryMixPokeNewsShow(PokeNews *, PokeNews *, s8); +static void TVShowDone(void); static void InterviewAfter_FanClubLetter(void); static void InterviewAfter_RecentHappenings(void); static void InterviewAfter_PkmnFanClubOpinions(void); -static void InterviewAfter_DummyShow4(void); +static void InterviewAfter_Dummy(void); static void InterviewAfter_BravoTrainerPokemonProfile(void); static void InterviewAfter_BravoTrainerBattleTowerProfile(void); static void InterviewAfter_ContestLiveUpdates(void); -void UpdateWorldOfMastersAndPutItOnTheAir(void); -void PutPokemonTodayFailedOnTheAir(void); -static void sub_80ED718(void); -static void sub_80EED88(void); -void TV_SortPurchasesByQuantity(void); -static void UpdateMassOutbreakTimeLeft(u16 days); -static void TryEndMassOutbreak(u16 days); -static void sub_80EF120(u16 days); -static void sub_80EDA48(u16 days); -static void sub_80EEB98(u16 days); -void PutFishingAdviceShowOnTheAir(void); -static u8 MonDataIdxToRibbon(u8 monDataIdx); -static void sub_80EEBF4(u8 actionIdx); -bool8 IsPriceDiscounted(u8 newsKind); +static void InitWorldOfMastersShowAttempt(void); +static void TryPutPokemonTodayFailedOnTheAir(void); +static void TryStartRandomMassOutbreak(void); +static void TryPutRandomPokeNewsOnAir(void); +static void SortPurchasesByQuantity(void); +static void UpdateMassOutbreakTimeLeft(u16); +static void TryEndMassOutbreak(u16); +static void UpdatePokeNewsTimeLeft(u16); +static void ResolveWorldOfMastersShow(u16); +static void ResolveNumberOneShow(u16); +static void TryPutFishingAdviceOnAir(void); +static u8 MonDataIdxToRibbon(u8); +static void TryPutNumberOneOnAir(u8); +static bool8 IsPriceDiscounted(u8); +static void TryPutWorldOfMastersOnAir(void); static void InterviewBefore_FanClubLetter(void); static void InterviewBefore_RecentHappenings(void); static void InterviewBefore_PkmnFanClubOpinions(void); @@ -148,7 +155,7 @@ static void InterviewBefore_BravoTrainerBTProfile(void); static void InterviewBefore_ContestLiveUpdates(void); static void InterviewBefore_3CheersForPokeblocks(void); static void InterviewBefore_FanClubSpecial(void); -void ChangeBoxPokemonNickname_CB(void); +static void ChangeBoxPokemonNickname_CB(void); static void DoTVShowPokemonFanClubLetter(void); static void DoTVShowRecentHappenings(void); static void DoTVShowPokemonFanClubOpinions(void); @@ -182,8 +189,6 @@ static void DoTVShowSecretBaseSecrets(void); static void DoTVShowSafariFanClub(void); static void DoTVShowLilycoveContestLady(void); -// .rodata - static const struct { u16 species; u16 moves[MAX_MON_MOVES]; @@ -753,23 +758,18 @@ const u8 sTVSecretBaseSecretsActions[NUM_SECRET_BASE_FLAGS] = SBSECRETS_NUM_STATES // SECRET_BASE_UNUSED_FLAG. Odd that this is included, if it were used it would overflow sTVSecretBaseSecretsTextGroup }; -// .text - void ClearTVShowData(void) { - u8 i; - u8 j; + u8 i, j; - for (i = 0; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows); i ++) + for (i = 0; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows); i++) { gSaveBlock1Ptr->tvShows[i].commonInit.kind = 0; gSaveBlock1Ptr->tvShows[i].commonInit.active = 0; - for (j = 0; j < ARRAY_COUNT(gSaveBlock1Ptr->tvShows[i].commonInit.pad02); j ++) - { - gSaveBlock1Ptr->tvShows[i].commonInit.pad02[j] = 0; - } + for (j = 0; j < ARRAY_COUNT(gSaveBlock1Ptr->tvShows[i].commonInit.data); j++) + gSaveBlock1Ptr->tvShows[i].commonInit.data[j] = 0; } - ClearPokemonNews(); + ClearPokeNews(); } u8 GetRandomActiveShowIdx(void) @@ -779,7 +779,8 @@ u8 GetRandomActiveShowIdx(void) u8 selIdx; TVShow *show; - for (i = 5; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows) - 1; i ++) + // Include all normal TV shows, and up through any present Record Mix shows + for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == TVSHOW_OFF_AIR) break; @@ -788,7 +789,7 @@ u8 GetRandomActiveShowIdx(void) selIdx = j; do { - if (GetTVChannelByShowType(gSaveBlock1Ptr->tvShows[j].common.kind) != 4) + if (GetTVGroupByShowId(gSaveBlock1Ptr->tvShows[j].common.kind) != TVGROUP_OUTBREAK) { if (gSaveBlock1Ptr->tvShows[j].common.active == TRUE) return j; @@ -803,7 +804,7 @@ u8 GetRandomActiveShowIdx(void) if (j == 0) j = ARRAY_COUNT(gSaveBlock1Ptr->tvShows) - 2; else - j --; + j--; } while (j != selIdx); return 0xFF; @@ -811,88 +812,88 @@ u8 GetRandomActiveShowIdx(void) u8 FindAnyTVShowOnTheAir(void) { - u8 show; - - show = GetRandomActiveShowIdx(); - if (show == 0xFF) - { + u8 slot = GetRandomActiveShowIdx(); + if (slot == 0xFF) return 0xFF; - } - if (gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE && gSaveBlock1Ptr->tvShows[show].common.kind == TVSHOW_MASS_OUTBREAK) - { + + if (gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE + && gSaveBlock1Ptr->tvShows[slot].common.kind == TVSHOW_MASS_OUTBREAK) return FindFirstActiveTVShowThatIsNotAMassOutbreak(); - } - return show; + + return slot; } void UpdateTVScreensOnMap(int width, int height) { FlagSet(FLAG_SYS_TV_WATCH); - switch (CheckForBigMovieOrEmergencyNewsOnTV()) + switch (CheckForPlayersHouseNews()) { - case 1: - SetTVMetatilesOnMap(width, height, 0x3); - break; - case 2: - break; - default: - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_COVE_LILY_MOTEL_1F) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_COVE_LILY_MOTEL_1F)) - { - SetTVMetatilesOnMap(width, height, 0x3); - } - else if (FlagGet(FLAG_SYS_TV_START) && (FindAnyTVShowOnTheAir() != 0xFF || FindAnyTVNewsOnTheAir() != 0xFF || IsTVShowInSearchOfTrainersAiring())) - { - FlagClear(FLAG_SYS_TV_WATCH); - SetTVMetatilesOnMap(width, height, 0x3); - } - break; + case PLAYERS_HOUSE_TV_LATI: + SetTVMetatilesOnMap(width, height, METATILE_Building_TV_On); + break; + case PLAYERS_HOUSE_TV_MOVIE: + // Don't flash TV for movie text in player's house + 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)) + { + // NPC in Lilycove Hotel is always watching TV + SetTVMetatilesOnMap(width, height, METATILE_Building_TV_On); + } + else if (FlagGet(FLAG_SYS_TV_START) && (FindAnyTVShowOnTheAir() != 0xFF || FindAnyPokeNewsOnTheAir() != 0xFF || IsGabbyAndTyShowOnTheAir())) + { + FlagClear(FLAG_SYS_TV_WATCH); + SetTVMetatilesOnMap(width, height, METATILE_Building_TV_On); + } + break; } } -void SetTVMetatilesOnMap(int width, int height, u16 tileId) +static void SetTVMetatilesOnMap(int width, int height, u16 tileId) { int x; int y; - for (y = 0; y < height; y ++) + for (y = 0; y < height; y++) { - for (x = 0; x < width; x ++) + for (x = 0; x < width; x++) { if (MapGridGetMetatileBehaviorAt(x, y) == MB_TELEVISION) - { MapGridSetMetatileIdAt(x, y, tileId | METATILE_COLLISION_MASK); - } } } } void TurnOffTVScreen(void) { - SetTVMetatilesOnMap(gBackupMapLayout.width, gBackupMapLayout.height, 0x0002); + SetTVMetatilesOnMap(gBackupMapLayout.width, gBackupMapLayout.height, METATILE_Building_TV_Off); DrawWholeMapView(); } void TurnOnTVScreen(void) { - SetTVMetatilesOnMap(gBackupMapLayout.width, gBackupMapLayout.height, 0x0003); + SetTVMetatilesOnMap(gBackupMapLayout.width, gBackupMapLayout.height, METATILE_Building_TV_On); DrawWholeMapView(); } +// gSpecialVar_0x8004 here is set from GetRandomActiveShowIdx in EventScript_TryDoTVShow u8 GetSelectedTVShow(void) { return gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004].common.kind; } -u8 FindFirstActiveTVShowThatIsNotAMassOutbreak(void) +static u8 FindFirstActiveTVShowThatIsNotAMassOutbreak(void) { u8 i; - for (i = 0; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows) - 1; i ++) + for (i = 0; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows) - 1; i++) { - if (gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_OFF_AIR && gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_MASS_OUTBREAK && gSaveBlock1Ptr->tvShows[i].common.active == TRUE) - { + if (gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_OFF_AIR + && gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_MASS_OUTBREAK + && gSaveBlock1Ptr->tvShows[i].common.active == TRUE) return i; - } } return 0xFF; } @@ -903,9 +904,8 @@ u8 GetNextActiveShowIfMassOutbreak(void) tvShow = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; if (tvShow->common.kind == TVSHOW_MASS_OUTBREAK && gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE) - { return FindFirstActiveTVShowThatIsNotAMassOutbreak(); - } + return gSpecialVar_0x8004; } @@ -941,28 +941,23 @@ void GabbyAndTyBeforeInterview(void) gSaveBlock1Ptr->gabbyAndTyData.lastMove = gBattleResults.lastUsedMovePlayer; if (gSaveBlock1Ptr->gabbyAndTyData.battleNum != 0xFF) { - gSaveBlock1Ptr->gabbyAndTyData.battleNum ++; + gSaveBlock1Ptr->gabbyAndTyData.battleNum++; } gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn = gBattleResults.playerMonWasDamaged; + if (gBattleResults.playerFaintCounter != 0) - { gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon = TRUE; - } else - { gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon = FALSE; - } + if (gBattleResults.numHealingItemsUsed != 0) - { gSaveBlock1Ptr->gabbyAndTyData.playerUsedHealingItem = TRUE; - } else - { gSaveBlock1Ptr->gabbyAndTyData.playerUsedHealingItem = FALSE; - } + if (!gBattleResults.usedMasterBall) { - for (i = 0; i < POKEBALL_COUNT - 1; i ++) + for (i = 0; i < POKEBALL_COUNT - 1; i++) { if (gBattleResults.catchAttempts[i]) { @@ -973,9 +968,11 @@ void GabbyAndTyBeforeInterview(void) } else { + // Player threw a Master Ball at Gabby and Ty gSaveBlock1Ptr->gabbyAndTyData.playerThrewABall = TRUE; } - TakeTVShowInSearchOfTrainersOffTheAir(); + + TakeGabbyAndTyOffTheAir(); if (gSaveBlock1Ptr->gabbyAndTyData.lastMove == MOVE_NONE) { FlagSet(FLAG_TEMP_1); @@ -993,7 +990,7 @@ void GabbyAndTyAfterInterview(void) IncrementGameStat(GAME_STAT_GOT_INTERVIEWED); } -void TakeTVShowInSearchOfTrainersOffTheAir(void) +static void TakeGabbyAndTyOffTheAir(void) { gSaveBlock1Ptr->gabbyAndTyData.onAir = FALSE; } @@ -1001,13 +998,12 @@ void TakeTVShowInSearchOfTrainersOffTheAir(void) u8 GabbyAndTyGetBattleNum(void) { if (gSaveBlock1Ptr->gabbyAndTyData.battleNum > 5) - { return (gSaveBlock1Ptr->gabbyAndTyData.battleNum % 3) + 6; - } + return gSaveBlock1Ptr->gabbyAndTyData.battleNum; } -bool8 IsTVShowInSearchOfTrainersAiring(void) +bool8 IsGabbyAndTyShowOnTheAir(void) { return gSaveBlock1Ptr->gabbyAndTyData.onAir; } @@ -1026,60 +1022,56 @@ bool8 GabbyAndTyGetLastQuote(void) u8 GabbyAndTyGetLastBattleTrivia(void) { if (!gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn2) - { return 1; - } + if (gSaveBlock1Ptr->gabbyAndTyData.playerThrewABall2) - { return 2; - } + if (gSaveBlock1Ptr->gabbyAndTyData.playerUsedHealingItem2) - { return 3; - } + if (gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon2) - { return 4; - } + return 0; } -void GabbyAndTySetScriptVarsToObjectEventLocalIds(void) +void GetGabbyAndTyLocalIds(void) { switch (GabbyAndTyGetBattleNum()) { - case 1: - gSpecialVar_0x8004 = 14; - gSpecialVar_0x8005 = 13; - break; - case 2: - gSpecialVar_0x8004 = 5; - gSpecialVar_0x8005 = 6; - break; - case 3: - gSpecialVar_0x8004 = 18; - gSpecialVar_0x8005 = 17; - break; - case 4: - gSpecialVar_0x8004 = 21; - gSpecialVar_0x8005 = 22; - break; - case 5: - gSpecialVar_0x8004 = 8; - gSpecialVar_0x8005 = 9; - break; - case 6: - gSpecialVar_0x8004 = 19; - gSpecialVar_0x8005 = 20; - break; - case 7: - gSpecialVar_0x8004 = 23; - gSpecialVar_0x8005 = 24; - break; - case 8: - gSpecialVar_0x8004 = 10; - gSpecialVar_0x8005 = 11; - break; + case 1: + gSpecialVar_0x8004 = 14; + gSpecialVar_0x8005 = 13; + break; + case 2: + gSpecialVar_0x8004 = 5; + gSpecialVar_0x8005 = 6; + break; + case 3: + gSpecialVar_0x8004 = 18; + gSpecialVar_0x8005 = 17; + break; + case 4: + gSpecialVar_0x8004 = 21; + gSpecialVar_0x8005 = 22; + break; + case 5: + gSpecialVar_0x8004 = 8; + gSpecialVar_0x8005 = 9; + break; + case 6: + gSpecialVar_0x8004 = 19; + gSpecialVar_0x8005 = 20; + break; + case 7: + gSpecialVar_0x8004 = 23; + gSpecialVar_0x8005 = 24; + break; + case 8: + gSpecialVar_0x8004 = 10; + gSpecialVar_0x8005 = 11; + break; } } @@ -1087,88 +1079,85 @@ void InterviewAfter(void) { switch (gSpecialVar_0x8005) { - case TVSHOW_FAN_CLUB_LETTER: - InterviewAfter_FanClubLetter(); - break; - case TVSHOW_RECENT_HAPPENINGS: - InterviewAfter_RecentHappenings(); - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - InterviewAfter_PkmnFanClubOpinions(); - break; - case TVSHOW_UNKN_SHOWTYPE_04: - InterviewAfter_DummyShow4(); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - InterviewAfter_BravoTrainerPokemonProfile(); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - InterviewAfter_BravoTrainerBattleTowerProfile(); - break; - case TVSHOW_CONTEST_LIVE_UPDATES: - InterviewAfter_ContestLiveUpdates(); - break; + case TVSHOW_FAN_CLUB_LETTER: + InterviewAfter_FanClubLetter(); + break; + case TVSHOW_RECENT_HAPPENINGS: + InterviewAfter_RecentHappenings(); + break; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + InterviewAfter_PkmnFanClubOpinions(); + break; + case TVSHOW_DUMMY: + InterviewAfter_Dummy(); + break; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + InterviewAfter_BravoTrainerPokemonProfile(); + break; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + InterviewAfter_BravoTrainerBattleTowerProfile(); + break; + case TVSHOW_CONTEST_LIVE_UPDATES: + InterviewAfter_ContestLiveUpdates(); + break; } } -void PutPokemonTodayCaughtOnAir(void) +void TryPutPokemonTodayOnAir(void) { u8 i; - u16 ct; + u16 ballsUsed; TVShow *show; u32 language2; u16 itemLastUsed; - ct = 0; - sub_80EED88(); - sub_80ED718(); + ballsUsed = 0; + TryPutRandomPokeNewsOnAir(); + TryStartRandomMassOutbreak(); + + // Try either the Failed or Caught version of the show if (gBattleResults.caughtMonSpecies == SPECIES_NONE) { - PutPokemonTodayFailedOnTheAir(); + TryPutPokemonTodayFailedOnTheAir(); } else { - UpdateWorldOfMastersAndPutItOnTheAir(); + InitWorldOfMastersShowAttempt(); if (!rbernoulli(1, 1) && StringCompare(gSpeciesNames[gBattleResults.caughtMonSpecies], gBattleResults.caughtMonNick)) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_POKEMON_TODAY_CAUGHT, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_POKEMON_TODAY_CAUGHT, FALSE) != TRUE) { - for (i = 0; i < POKEBALL_COUNT - 1; i ++) - { - ct += gBattleResults.catchAttempts[i]; - } - if (ct != 0 || gBattleResults.usedMasterBall) + for (i = 0; i < POKEBALL_COUNT - 1; i++) + ballsUsed += gBattleResults.catchAttempts[i]; + + if (ballsUsed != 0 || gBattleResults.usedMasterBall) { - ct = 0; + ballsUsed = 0; show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->pokemonToday.kind = TVSHOW_POKEMON_TODAY_CAUGHT; - show->pokemonToday.active = FALSE; + show->pokemonToday.active = FALSE; // NOTE: Show is not active until passed via Record Mix. if (gBattleResults.usedMasterBall) { - ct = 1; + ballsUsed = 1; itemLastUsed = ITEM_MASTER_BALL; } else { - for (i = 0; i < POKEBALL_COUNT - 1; i ++) - { - ct += gBattleResults.catchAttempts[i]; - } - if (ct > 0xFF) - { - ct = 0xFF; - } + for (i = 0; i < POKEBALL_COUNT - 1; i++) + ballsUsed += gBattleResults.catchAttempts[i]; + if (ballsUsed > 255) + ballsUsed = 255; itemLastUsed = gLastUsedItem; } - show->pokemonToday.nBallsUsed = ct; + show->pokemonToday.nBallsUsed = ballsUsed; show->pokemonToday.ball = itemLastUsed; StringCopy(show->pokemonToday.playerName, gSaveBlock2Ptr->playerName); StringCopy(show->pokemonToday.nickname, gBattleResults.caughtMonNick); language2 = sub_81DB604(show->pokemonToday.nickname); StripExtCtrlCodes(show->pokemonToday.nickname); show->pokemonToday.species = gBattleResults.caughtMonSpecies; - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->pokemonToday.language = gGameLanguage; show->pokemonToday.language2 = language2; } @@ -1177,65 +1166,60 @@ void PutPokemonTodayCaughtOnAir(void) } } -void UpdateWorldOfMastersAndPutItOnTheAir(void) +// Show is initialized in last slot and updated there until it's +// either triggered or deleted at the end of the day by ResolveWorldOfMastersShow +static void InitWorldOfMastersShowAttempt(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - if (show->worldOfMasters.kind != TVSHOW_WORLD_OF_MASTERS) + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + if (show->common.kind != TVSHOW_WORLD_OF_MASTERS) { DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); show->worldOfMasters.steps = GetGameStat(GAME_STAT_STEPS); show->worldOfMasters.kind = TVSHOW_WORLD_OF_MASTERS; } - show->worldOfMasters.numPokeCaught ++; + show->worldOfMasters.numPokeCaught++; show->worldOfMasters.caughtPoke = gBattleResults.caughtMonSpecies; show->worldOfMasters.species = gBattleResults.playerMon1Species; show->worldOfMasters.location = gMapHeader.regionMapSectionId; } -void PutPokemonTodayFailedOnTheAir(void) +static void TryPutPokemonTodayFailedOnTheAir(void) { - u16 ct; + u16 ballsUsed; u8 i; TVShow *show; if (!rbernoulli(1, 1)) { - for (i = 0, ct = 0; i < POKEBALL_COUNT - 1; i ++) - { - ct += gBattleResults.catchAttempts[i]; - } - if (ct > 0xFF) - { - ct = 0xFF; - } - if (ct > 2 && (gBattleOutcome == B_OUTCOME_MON_FLED || gBattleOutcome == B_OUTCOME_WON)) + for (i = 0, ballsUsed = 0; i < POKEBALL_COUNT - 1; i++) + ballsUsed += gBattleResults.catchAttempts[i]; + if (ballsUsed > 255) + ballsUsed = 255; + + if (ballsUsed > 2 && (gBattleOutcome == B_OUTCOME_MON_FLED || gBattleOutcome == B_OUTCOME_WON)) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_POKEMON_TODAY_FAILED, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_POKEMON_TODAY_FAILED, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->pokemonTodayFailed.kind = TVSHOW_POKEMON_TODAY_FAILED; - show->pokemonTodayFailed.active = FALSE; + show->pokemonTodayFailed.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->pokemonTodayFailed.species = gBattleResults.playerMon1Species; show->pokemonTodayFailed.species2 = gBattleResults.lastOpponentSpecies; - show->pokemonTodayFailed.nBallsUsed = ct; + show->pokemonTodayFailed.nBallsUsed = ballsUsed; show->pokemonTodayFailed.outcome = gBattleOutcome; show->pokemonTodayFailed.location = gMapHeader.regionMapSectionId; StringCopy(show->pokemonTodayFailed.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->pokemonTodayFailed.language = gGameLanguage; } } } } -void tv_store_id_3x(TVShow *show) +static void StorePlayerIdInRecordMixShow(TVShow *show) { - u32 id; - - id = GetPlayerIDAsU32(); + u32 id = GetPlayerIDAsU32(); show->common.srcTrainerId2Lo = id; show->common.srcTrainerId2Hi = id >> 8; show->common.srcTrainerIdLo = id; @@ -1244,11 +1228,9 @@ void tv_store_id_3x(TVShow *show) show->common.trainerIdHi = id >> 8; } -void tv_store_id_2x(TVShow *show) +static void StorePlayerIdInNormalShow(TVShow *show) { - u32 id; - - id = GetPlayerIDAsU32(); + u32 id = GetPlayerIDAsU32(); show->common.srcTrainerIdLo = id; show->common.srcTrainerIdHi = id >> 8; show->common.trainerIdLo = id; @@ -1276,7 +1258,7 @@ static void InterviewAfter_ContestLiveUpdates(void) show2->contestLiveUpdates.move = show->contestLiveUpdates.move; show2->contestLiveUpdates.winnerAppealFlag = show->contestLiveUpdates.winnerAppealFlag; StringCopy(show2->contestLiveUpdates.losingTrainerName, show->contestLiveUpdates.losingTrainerName); - tv_store_id_2x(show2); + StorePlayerIdInNormalShow(show2); show2->contestLiveUpdates.winningTrainerLanguage = gGameLanguage; show2->contestLiveUpdates.losingTrainerLanguage = show->contestLiveUpdates.losingTrainerLanguage; DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); @@ -1288,44 +1270,36 @@ void PutBattleUpdateOnTheAir(u8 opponentLinkPlayerId, u16 move, u16 speciesPlaye TVShow *show; u8 name[32]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_BATTLE_UPDATE); - if (gSpecialVar_Result != 1) + TryReplaceOldTVShowOfKind(TVSHOW_BATTLE_UPDATE); + if (gSpecialVar_Result != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->battleUpdate.kind = TVSHOW_BATTLE_UPDATE; show->battleUpdate.active = TRUE; StringCopy(show->battleUpdate.playerName, gSaveBlock2Ptr->playerName); + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) - { show->battleUpdate.battleType = 2; - } else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - { show->battleUpdate.battleType = 1; - } else - { show->battleUpdate.battleType = 0; - } + show->battleUpdate.move = move; show->battleUpdate.speciesPlayer = speciesPlayer; show->battleUpdate.speciesOpponent = speciesOpponent; StringCopy(name, gLinkPlayers[opponentLinkPlayerId].name); StripExtCtrlCodes(name); StringCopy(show->battleUpdate.linkOpponentName, name); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->battleUpdate.language = gGameLanguage; if (show->battleUpdate.language == LANGUAGE_JAPANESE || gLinkPlayers[opponentLinkPlayerId].language == LANGUAGE_JAPANESE) - { show->battleUpdate.linkOpponentLanguage = LANGUAGE_JAPANESE; - } else - { show->battleUpdate.linkOpponentLanguage = gLinkPlayers[opponentLinkPlayerId].language; - } } } } @@ -1335,16 +1309,14 @@ bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 colo TVShow *show; u8 name[32]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot == -1) - { - return FALSE; - } - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_3_CHEERS_FOR_POKEBLOCKS); - if (gSpecialVar_Result == 1) - { return FALSE; - } + + TryReplaceOldTVShowOfKind(TVSHOW_3_CHEERS_FOR_POKEBLOCKS); + if (gSpecialVar_Result == TRUE) + return FALSE; // Old show is still active + show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->threeCheers.kind = TVSHOW_3_CHEERS_FOR_POKEBLOCKS; show->threeCheers.active = TRUE; @@ -1355,16 +1327,12 @@ bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 colo show->threeCheers.flavor = flavor; show->threeCheers.color = color; show->threeCheers.sheen = sheen; - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->threeCheers.language = gGameLanguage; if (show->threeCheers.language == LANGUAGE_JAPANESE || language == LANGUAGE_JAPANESE) - { show->threeCheers.worstBlenderLanguage = LANGUAGE_JAPANESE; - } else - { show->threeCheers.worstBlenderLanguage = language; - } return TRUE; } @@ -1385,16 +1353,12 @@ void PutFanClubSpecialOnTheAir(void) StringCopy(name, gStringVar1); StripExtCtrlCodes(name); StringCopy(show->fanClubSpecial.idolName, name); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->fanClubSpecial.language = gGameLanguage; if (show->fanClubSpecial.language == LANGUAGE_JAPANESE || gSaveBlock1Ptr->linkBattleRecords.languages[0] == LANGUAGE_JAPANESE) - { show->fanClubSpecial.idolNameLanguage = LANGUAGE_JAPANESE; - } else - { show->fanClubSpecial.idolNameLanguage = gSaveBlock1Ptr->linkBattleRecords.languages[0]; - } } void ContestLiveUpdates_Init(u8 round1Placing) @@ -1402,7 +1366,7 @@ void ContestLiveUpdates_Init(u8 round1Placing) TVShow *show; DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; @@ -1413,64 +1377,45 @@ void ContestLiveUpdates_Init(u8 round1Placing) void ContestLiveUpdates_SetRound2Placing(u8 round2Placing) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) - { show->contestLiveUpdates.round2Placing = round2Placing; - } } void ContestLiveUpdates_SetWinnerAppealFlag(u8 flag) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) - { show->contestLiveUpdates.winnerAppealFlag = flag; - } } void ContestLiveUpdates_SetWinnerMoveUsed(u16 move) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) - { show->contestLiveUpdates.move = move; - } } void ContestLiveUpdates_SetLoserData(u8 flag, u8 loser) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show->contestLiveUpdates.losingSpecies = gContestMons[loser].species; StringCopy(show->contestLiveUpdates.losingTrainerName, gContestMons[loser].trainerName); StripExtCtrlCodes(show->contestLiveUpdates.losingTrainerName); show->contestLiveUpdates.loserAppealFlag = flag; + if (loser + 1 > gNumLinkContestPlayers) - { show->contestLiveUpdates.losingTrainerLanguage = gLinkPlayers[0].language; - } else if (gGameLanguage == LANGUAGE_JAPANESE || gLinkPlayers[loser].language == LANGUAGE_JAPANESE) - { show->contestLiveUpdates.losingTrainerLanguage = LANGUAGE_JAPANESE; - } else - { show->contestLiveUpdates.losingTrainerLanguage = gLinkPlayers[loser].language; - } } } @@ -1493,27 +1438,21 @@ static void InterviewAfter_BravoTrainerPokemonProfile(void) show2->bravoTrainer.move = show->bravoTrainer.move; show2->bravoTrainer.contestResult = show->bravoTrainer.contestResult; show2->bravoTrainer.contestCategory = show->bravoTrainer.contestCategory; - tv_store_id_2x(show2); + StorePlayerIdInNormalShow(show2); show2->bravoTrainer.language = gGameLanguage; if (show2->bravoTrainer.language == LANGUAGE_JAPANESE || show->bravoTrainer.pokemonNameLanguage == LANGUAGE_JAPANESE) - { show2->bravoTrainer.pokemonNameLanguage = LANGUAGE_JAPANESE; - } else - { show2->bravoTrainer.pokemonNameLanguage = show->bravoTrainer.pokemonNameLanguage; - } DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); } } void BravoTrainerPokemonProfile_BeforeInterview1(u16 a0) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; InterviewBefore_BravoTrainerPkmnProfile(); - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); @@ -1524,10 +1463,8 @@ void BravoTrainerPokemonProfile_BeforeInterview1(u16 a0) void BravoTrainerPokemonProfile_BeforeInterview2(u8 contestStandingPlace) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show->bravoTrainer.contestResult = contestStandingPlace; @@ -1542,9 +1479,7 @@ void BravoTrainerPokemonProfile_BeforeInterview2(u8 contestStandingPlace) static void InterviewAfter_BravoTrainerBattleTowerProfile(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; + TVShow *show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->bravoTrainerTower.kind = TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE; show->bravoTrainerTower.active = TRUE; StringCopy(show->bravoTrainerTower.trainerName, gSaveBlock2Ptr->playerName); @@ -1554,27 +1489,19 @@ static void InterviewAfter_BravoTrainerBattleTowerProfile(void) show->bravoTrainerTower.numFights = GetCurrentBattleTowerWinStreak(gSaveBlock2Ptr->frontier.towerLvlMode, 0); show->bravoTrainerTower.wonTheChallenge = gSaveBlock2Ptr->frontier.towerBattleOutcome; if (gSaveBlock2Ptr->frontier.towerLvlMode == FRONTIER_LVL_50) - { show->bravoTrainerTower.btLevel = 50; - } else - { show->bravoTrainerTower.btLevel = 100; - } show->bravoTrainerTower.interviewResponse = gSpecialVar_0x8004; - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->bravoTrainerTower.language = gGameLanguage; if (show->bravoTrainerTower.language == LANGUAGE_JAPANESE || gSaveBlock2Ptr->frontier.towerInterview.opponentLanguage == LANGUAGE_JAPANESE) - { show->bravoTrainerTower.pokemonNameLanguage = LANGUAGE_JAPANESE; - } else - { show->bravoTrainerTower.pokemonNameLanguage = gSaveBlock2Ptr->frontier.towerInterview.opponentLanguage; - } } -void SaveRecordedItemPurchasesForTVShow(void) +void TryPutSmartShopperOnAir(void) { TVShow *show; u8 i; @@ -1583,24 +1510,24 @@ void SaveRecordedItemPurchasesForTVShow(void) && !(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_MART) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_MART)) && !rbernoulli(1, 3)) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_SMART_SHOPPER, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_SMART_SHOPPER, FALSE) != TRUE) { - TV_SortPurchasesByQuantity(); + SortPurchasesByQuantity(); if (gMartPurchaseHistory[0].quantity >= 20) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->smartshopperShow.kind = TVSHOW_SMART_SHOPPER; - show->smartshopperShow.active = FALSE; + show->smartshopperShow.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->smartshopperShow.shopLocation = gMapHeader.regionMapSectionId; - for (i = 0; i < 3; i ++) + for (i = 0; i < SMARTSHOPPER_NUM_ITEMS; i++) { show->smartshopperShow.itemIds[i] = gMartPurchaseHistory[i].itemId; show->smartshopperShow.itemAmounts[i] = gMartPurchaseHistory[i].quantity; } show->smartshopperShow.priceReduced = GetPriceReduction(POKENEWS_SLATEPORT); StringCopy(show->smartshopperShow.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->smartshopperShow.language = gGameLanguage; } } @@ -1623,11 +1550,11 @@ void PutNameRaterShowOnTheAir(void) show->nameRaterShow.species = GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_SPECIES, NULL); show->nameRaterShow.random = Random() % 3; show->nameRaterShow.random2 = Random() % 2; - show->nameRaterShow.randomSpecies = TV_GetSomeOtherSpeciesAlreadySeenByPlayer(show->nameRaterShow.species); + show->nameRaterShow.randomSpecies = GetRandomDifferentSpeciesSeenByPlayer(show->nameRaterShow.species); StringCopy(show->nameRaterShow.trainerName, gSaveBlock2Ptr->playerName); GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, show->nameRaterShow.pokemonName); StripExtCtrlCodes(show->nameRaterShow.pokemonName); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->nameRaterShow.language = gGameLanguage; show->nameRaterShow.pokemonNameLanguage = GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_LANGUAGE); } @@ -1636,9 +1563,7 @@ void PutNameRaterShowOnTheAir(void) void StartMassOutbreak(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; + TVShow *show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; gSaveBlock1Ptr->outbreakPokemonSpecies = show->massOutbreak.species; gSaveBlock1Ptr->outbreakLocationMapNum = show->massOutbreak.locationMapNum; gSaveBlock1Ptr->outbreakLocationMapGroup = show->massOutbreak.locationMapGroup; @@ -1658,7 +1583,7 @@ void PutLilycoveContestLadyShowOnTheAir(void) { TVShow *show; - sub_80EFA88(); + Script_FindFirstEmptyNormalTVShowSlot(); if (gSpecialVar_Result != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; @@ -1669,41 +1594,35 @@ void PutLilycoveContestLadyShowOnTheAir(void) BufferContestLadyPlayerName(show->contestLady.playerName); BufferContestLadyMonName(&show->contestLady.contestCategory, show->contestLady.nickname); show->contestLady.pokeblockState = GetContestLadyPokeblockState(); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); } } static void InterviewAfter_FanClubLetter(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; + TVShow *show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->fanclubLetter.kind = TVSHOW_FAN_CLUB_LETTER; show->fanclubLetter.active = TRUE; StringCopy(show->fanclubLetter.playerName, gSaveBlock2Ptr->playerName); show->fanclubLetter.species = GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->fanclubLetter.language = gGameLanguage; } static void InterviewAfter_RecentHappenings(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; + TVShow *show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->recentHappenings.kind = TVSHOW_RECENT_HAPPENINGS; show->recentHappenings.active = TRUE; StringCopy(show->recentHappenings.playerName, gSaveBlock2Ptr->playerName); - show->recentHappenings.var02 = 0; - tv_store_id_2x(show); + show->recentHappenings.species = SPECIES_NONE; + StorePlayerIdInNormalShow(show); show->recentHappenings.language = gGameLanguage; } static void InterviewAfter_PkmnFanClubOpinions(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; + TVShow *show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->fanclubOpinions.kind = TVSHOW_PKMN_FAN_CLUB_OPINIONS; show->fanclubOpinions.active = TRUE; show->fanclubOpinions.friendshipHighNybble = GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_FRIENDSHIP, NULL) >> 4; @@ -1712,26 +1631,20 @@ static void InterviewAfter_PkmnFanClubOpinions(void) GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_NICKNAME, show->fanclubOpinions.nickname); StripExtCtrlCodes(show->fanclubOpinions.nickname); show->fanclubOpinions.species = GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL); - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->fanclubOpinions.language = gGameLanguage; if (gGameLanguage == LANGUAGE_JAPANESE || GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_LANGUAGE) == LANGUAGE_JAPANESE) - { show->fanclubOpinions.pokemonNameLanguage = LANGUAGE_JAPANESE; - } else - { show->fanclubOpinions.pokemonNameLanguage = GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_LANGUAGE); - } } -static void InterviewAfter_DummyShow4(void) +static void InterviewAfter_Dummy(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; + TVShow *show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; } -static void sub_80ED718(void) +static void TryStartRandomMassOutbreak(void) { u8 i; u16 outbreakIdx; @@ -1739,16 +1652,14 @@ static void sub_80ED718(void) if (FlagGet(FLAG_SYS_GAME_CLEAR)) { - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + for (i = 0; i < LAST_TVSHOW_IDX; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == TVSHOW_MASS_OUTBREAK) - { return; - } } if (!rbernoulli(1, 200)) { - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { outbreakIdx = Random() % ARRAY_COUNT(sPokeOutbreakSpeciesList); @@ -1770,7 +1681,7 @@ static void sub_80ED718(void) show->massOutbreak.probability = 50; show->massOutbreak.var15 = 0; show->massOutbreak.daysLeft = 1; - tv_store_id_2x(show); + StorePlayerIdInNormalShow(show); show->massOutbreak.language = gGameLanguage; } } @@ -1798,9 +1709,9 @@ void UpdateTVShowsPerDay(u16 days) { UpdateMassOutbreakTimeLeft(days); TryEndMassOutbreak(days); - sub_80EF120(days); - sub_80EDA48(days); - sub_80EEB98(days); + UpdatePokeNewsTimeLeft(days); + ResolveWorldOfMastersShow(days); + ResolveNumberOneShow(days); } static void UpdateMassOutbreakTimeLeft(u16 days) @@ -1810,7 +1721,7 @@ static void UpdateMassOutbreakTimeLeft(u16 days) if (gSaveBlock1Ptr->outbreakPokemonSpecies == SPECIES_NONE) { - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + for (i = 0; i < LAST_TVSHOW_IDX; i++) { if (gSaveBlock1Ptr->tvShows[i].massOutbreak.kind == TVSHOW_MASS_OUTBREAK && gSaveBlock1Ptr->tvShows[i].massOutbreak.active == TRUE) { @@ -1839,7 +1750,7 @@ void RecordFishingAttemptForTV(bool8 caughtFish) if (caughtFish) { if (sPokemonAnglerAttemptCounters >> 8 > 4) - PutFishingAdviceShowOnTheAir(); + TryPutFishingAdviceOnAir(); sPokemonAnglerAttemptCounters &= 0xFF; if (sPokemonAnglerAttemptCounters != 0xFF) @@ -1848,7 +1759,7 @@ void RecordFishingAttemptForTV(bool8 caughtFish) else { if ((u8)sPokemonAnglerAttemptCounters > 4) - PutFishingAdviceShowOnTheAir(); + TryPutFishingAdviceOnAir(); sPokemonAnglerAttemptCounters &= 0xFF00; if (sPokemonAnglerAttemptCounters >> 8 != 0xFF) @@ -1856,21 +1767,21 @@ void RecordFishingAttemptForTV(bool8 caughtFish) } } -void PutFishingAdviceShowOnTheAir(void) +static void TryPutFishingAdviceOnAir(void) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_FISHING_ADVICE, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_FISHING_ADVICE, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->pokemonAngler.kind = TVSHOW_FISHING_ADVICE; - show->pokemonAngler.active = FALSE; + show->pokemonAngler.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->pokemonAngler.nBites = sPokemonAnglerAttemptCounters; show->pokemonAngler.nFails = sPokemonAnglerAttemptCounters >> 8; show->pokemonAngler.species = sPokemonAnglerSpecies; StringCopy(show->pokemonAngler.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->pokemonAngler.language = gGameLanguage; } } @@ -1880,7 +1791,11 @@ void SetPokemonAnglerSpecies(u16 species) sPokemonAnglerSpecies = species; } -static void sub_80EDA48(u16 days) +// World of Masters is initialized in the last slot by InitWorldOfMastersShowAttempt +// If enough Pokémon were caught during the day the show can be put on air (and will +// be moved out of the last slot). +// Either way the temporary version of the show in the last slot is deleted. +static void ResolveWorldOfMastersShow(u16 days) { TVShow *show; @@ -1888,14 +1803,13 @@ static void sub_80EDA48(u16 days) if (show->worldOfMasters.kind == TVSHOW_WORLD_OF_MASTERS) { if (show->worldOfMasters.numPokeCaught >= 20) - { - sub_80EDA80(); - } + TryPutWorldOfMastersOnAir(); + DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); } } -void sub_80EDA80(void) +static void TryPutWorldOfMastersOnAir(void) { TVShow *show; TVShow *show2; @@ -1903,19 +1817,19 @@ void sub_80EDA80(void) show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; if (!rbernoulli(1, 1)) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_WORLD_OF_MASTERS, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_WORLD_OF_MASTERS, FALSE) != TRUE) { show2 = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show2->worldOfMasters.kind = TVSHOW_WORLD_OF_MASTERS; - show2->worldOfMasters.active = FALSE; + show2->worldOfMasters.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show2->worldOfMasters.numPokeCaught = show->worldOfMasters.numPokeCaught; show2->worldOfMasters.steps = GetGameStat(GAME_STAT_STEPS) - show->worldOfMasters.steps; show2->worldOfMasters.caughtPoke = show->worldOfMasters.caughtPoke; show2->worldOfMasters.species = show->worldOfMasters.species; show2->worldOfMasters.location = show->worldOfMasters.location; StringCopy(show2->worldOfMasters.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show2); + StorePlayerIdInRecordMixShow(show2); show2->worldOfMasters.language = gGameLanguage; DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); } @@ -1928,47 +1842,38 @@ void TryPutTodaysRivalTrainerOnAir(void) u32 i; u8 nBadges; - HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_TODAYS_RIVAL_TRAINER, TRUE); - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + IsRecordMixShowAlreadySpawned(TVSHOW_TODAYS_RIVAL_TRAINER, TRUE); // Delete old version of show + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->rivalTrainer.kind = TVSHOW_TODAYS_RIVAL_TRAINER; - show->rivalTrainer.active = FALSE; - for (i = FLAG_BADGE01_GET, nBadges = 0; i < FLAG_BADGE01_GET + NUM_BADGES; i ++) + show->rivalTrainer.active = FALSE; // NOTE: Show is not active until passed via Record Mix. + for (i = FLAG_BADGE01_GET, nBadges = 0; i < FLAG_BADGE01_GET + NUM_BADGES; i++) { if (FlagGet(i)) - { - nBadges ++; - } + nBadges++; } show->rivalTrainer.badgeCount = nBadges; if (IsNationalPokedexEnabled()) - { show->rivalTrainer.dexCount = GetNationalPokedexCount(FLAG_GET_CAUGHT); - } else - { show->rivalTrainer.dexCount = GetHoennPokedexCount(FLAG_GET_CAUGHT); - } show->rivalTrainer.location = gMapHeader.regionMapSectionId; show->rivalTrainer.mapLayoutId = gMapHeader.mapLayoutId; show->rivalTrainer.nSilverSymbols = 0; show->rivalTrainer.nGoldSymbols = 0; - for (i = 0; i < 7; i ++) + for (i = 0; i < 7; i++) { if (FlagGet(sSilverSymbolFlags[i]) == TRUE) - { - show->rivalTrainer.nSilverSymbols ++; - } + show->rivalTrainer.nSilverSymbols++; + if (FlagGet(sGoldSymbolFlags[i]) == TRUE) - { - show->rivalTrainer.nGoldSymbols ++; - } + show->rivalTrainer.nGoldSymbols++; } show->rivalTrainer.battlePoints = gSaveBlock2Ptr->frontier.battlePoints; StringCopy(show->rivalTrainer.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->rivalTrainer.language = gGameLanguage; } } @@ -1977,17 +1882,17 @@ void TryPutTrendWatcherOnAir(const u16 *words) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_TREND_WATCHER, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_TREND_WATCHER, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->trendWatcher.kind = TVSHOW_TREND_WATCHER; - show->trendWatcher.active = FALSE; + show->trendWatcher.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->trendWatcher.gender = gSaveBlock2Ptr->playerGender; show->trendWatcher.words[0] = words[0]; show->trendWatcher.words[1] = words[1]; StringCopy(show->trendWatcher.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->trendWatcher.language = gGameLanguage; } } @@ -1996,70 +1901,70 @@ void TryPutTreasureInvestigatorsOnAir(void) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_TREASURE_INVESTIGATORS, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_TREASURE_INVESTIGATORS, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->treasureInvestigators.kind = TVSHOW_TREASURE_INVESTIGATORS; - show->treasureInvestigators.active = FALSE; + show->treasureInvestigators.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->treasureInvestigators.item = gSpecialVar_0x8005; show->treasureInvestigators.location = gMapHeader.regionMapSectionId; show->treasureInvestigators.mapLayoutId = gMapHeader.mapLayoutId; StringCopy(show->treasureInvestigators.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->treasureInvestigators.language = gGameLanguage; } } -void AlertTVOfNewCoinTotal(u16 nCoinsPaidOut) +void TryPutFindThatGamerOnAir(u16 nCoinsPaidOut) { TVShow *show; bool8 flag; u16 nCoinsWon; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_FIND_THAT_GAMER, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_FIND_THAT_GAMER, FALSE) != TRUE) { flag = FALSE; switch (sFindThatGamerWhichGame) { - case SLOT_MACHINE: - if (nCoinsPaidOut >= sFindThatGamerCoinsSpent + 200) - { - flag = TRUE; - nCoinsWon = nCoinsPaidOut - sFindThatGamerCoinsSpent; - break; - } - if (sFindThatGamerCoinsSpent >= 100 && nCoinsPaidOut <= sFindThatGamerCoinsSpent - 100) - { - nCoinsWon = sFindThatGamerCoinsSpent - nCoinsPaidOut; - break; - } - return; - case ROULETTE: - if (nCoinsPaidOut >= sFindThatGamerCoinsSpent + 50) - { - flag = TRUE; - nCoinsWon = nCoinsPaidOut - sFindThatGamerCoinsSpent; - break; - } - if (sFindThatGamerCoinsSpent >= 50 && nCoinsPaidOut <= sFindThatGamerCoinsSpent - 50) - { - nCoinsWon = sFindThatGamerCoinsSpent - nCoinsPaidOut; - break; - } - return; - default: - return; - } + case SLOT_MACHINE: + if (nCoinsPaidOut >= sFindThatGamerCoinsSpent + 200) + { + flag = TRUE; + nCoinsWon = nCoinsPaidOut - sFindThatGamerCoinsSpent; + break; + } + if (sFindThatGamerCoinsSpent >= 100 && nCoinsPaidOut <= sFindThatGamerCoinsSpent - 100) + { + nCoinsWon = sFindThatGamerCoinsSpent - nCoinsPaidOut; + break; + } + return; + case ROULETTE: + if (nCoinsPaidOut >= sFindThatGamerCoinsSpent + 50) + { + flag = TRUE; + nCoinsWon = nCoinsPaidOut - sFindThatGamerCoinsSpent; + break; + } + if (sFindThatGamerCoinsSpent >= 50 && nCoinsPaidOut <= sFindThatGamerCoinsSpent - 50) + { + nCoinsWon = sFindThatGamerCoinsSpent - nCoinsPaidOut; + break; + } + return; + default: + return; + } show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->findThatGamer.kind = TVSHOW_FIND_THAT_GAMER; - show->findThatGamer.active = FALSE; + show->findThatGamer.active = FALSE; // NOTE: Show is not active until passed via Record Mix. show->findThatGamer.nCoins = nCoinsWon; show->findThatGamer.whichGame = sFindThatGamerWhichGame; show->findThatGamer.won = flag; StringCopy(show->findThatGamer.playerName, gSaveBlock2Ptr->playerName); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->findThatGamer.language = gGameLanguage; } } @@ -2076,71 +1981,64 @@ void AlertTVThatPlayerPlayedRoulette(u16 nCoinsSpent) sFindThatGamerCoinsSpent = nCoinsSpent; } -static void sub_80EDE98(TVShow *show) +static void SecretBaseVisit_CalculateDecorationData(TVShow *show) { - u8 i; - u8 j; + u8 i, j; u16 k; u8 n; - u8 deco; + u8 decoration; - for (i = 0; i < DECOR_MAX_SECRET_BASE; i ++) - { + for (i = 0; i < DECOR_MAX_SECRET_BASE; i++) sTV_DecorationsBuffer[i] = 0; - } - for (i = 0, n = 0; i < DECOR_MAX_SECRET_BASE; i ++) + + for (i = 0, n = 0; i < DECOR_MAX_SECRET_BASE; i++) { - deco = gSaveBlock1Ptr->secretBases[0].decorations[i]; - if (deco) + decoration = gSaveBlock1Ptr->secretBases[0].decorations[i]; + if (decoration) { - for (j = 0; j < DECOR_MAX_SECRET_BASE; j ++) + for (j = 0; j < DECOR_MAX_SECRET_BASE; j++) { if (sTV_DecorationsBuffer[j] == 0) { - sTV_DecorationsBuffer[j] = deco; - n ++; + sTV_DecorationsBuffer[j] = decoration; + n++; break; } - if (sTV_DecorationsBuffer[j] == deco) - { + if (sTV_DecorationsBuffer[j] == decoration) break; - } } } } + if (n > 4) - { show->secretBaseVisit.nDecorations = 4; - } else - { show->secretBaseVisit.nDecorations = n; - } + switch (show->secretBaseVisit.nDecorations) { - case 0: - break; - case 1: - show->secretBaseVisit.decorations[0] = sTV_DecorationsBuffer[0]; - break; - default: - for (k = 0; k < n * n; k ++) - { - deco = Random() % n; - j = Random() % n; - i = sTV_DecorationsBuffer[deco]; - sTV_DecorationsBuffer[deco] = sTV_DecorationsBuffer[j]; - sTV_DecorationsBuffer[j] = i; - } - for (i = 0; i < show->secretBaseVisit.nDecorations; i ++) - { - show->secretBaseVisit.decorations[i] = sTV_DecorationsBuffer[i]; - } - break; + case 0: + break; + case 1: + show->secretBaseVisit.decorations[0] = sTV_DecorationsBuffer[0]; + break; + default: + for (k = 0; k < n * n; k++) + { + decoration = Random() % n; + j = Random() % n; + i = sTV_DecorationsBuffer[decoration]; + sTV_DecorationsBuffer[decoration] = sTV_DecorationsBuffer[j]; + sTV_DecorationsBuffer[j] = i; + } + + for (i = 0; i < show->secretBaseVisit.nDecorations; i++) + show->secretBaseVisit.decorations[i] = sTV_DecorationsBuffer[i]; + break; } } -static void sub_80EDFB4(TVShow *show) +static void SecretBaseVisit_CalculatePartyData(TVShow *show) { u8 i; u16 move; @@ -2149,7 +2047,7 @@ static void sub_80EDFB4(TVShow *show) u8 nPokemon; u16 sum; - for (i = 0, nPokemon = 0; i < PARTY_SIZE; i ++) + for (i = 0, nPokemon = 0; i < PARTY_SIZE; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) { @@ -2160,128 +2058,119 @@ static void sub_80EDFB4(TVShow *show) if (move != MOVE_NONE) { sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves ++; + nMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE2); if (move != MOVE_NONE) { sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves ++; + nMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE3); if (move != MOVE_NONE) { sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves ++; + nMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE4); if (move != MOVE_NONE) { sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves ++; + nMoves++; } sTV_SecretBaseVisitMonsTemp[nPokemon].move = sTV_SecretBaseVisitMovesTemp[Random() % nMoves]; - nPokemon ++; + nPokemon++; } } - for (i = 0, sum = 0; i < nPokemon; i ++) - { + for (i = 0, sum = 0; i < nPokemon; i++) sum += sTV_SecretBaseVisitMonsTemp[i].level; - } + show->secretBaseVisit.avgLevel = sum / nPokemon; j = Random() % nPokemon; show->secretBaseVisit.species = sTV_SecretBaseVisitMonsTemp[j].species; show->secretBaseVisit.move = sTV_SecretBaseVisitMonsTemp[j].move; } -void TV_PutSecretBaseVisitOnTheAir(void) +void TryPutSecretBaseVisitOnAir(void) { TVShow *show; - HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_SECRET_BASE_VISIT, TRUE); - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + IsRecordMixShowAlreadySpawned(TVSHOW_SECRET_BASE_VISIT, TRUE); // Delete old version of show + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->secretBaseVisit.kind = TVSHOW_SECRET_BASE_VISIT; - show->secretBaseVisit.active = FALSE; + show->secretBaseVisit.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->secretBaseVisit.playerName, gSaveBlock2Ptr->playerName); - sub_80EDE98(show); - sub_80EDFB4(show); - tv_store_id_3x(show); + SecretBaseVisit_CalculateDecorationData(show); + SecretBaseVisit_CalculatePartyData(show); + StorePlayerIdInRecordMixShow(show); show->secretBaseVisit.language = gGameLanguage; } } -void sub_80EE184(void) +void TryPutBreakingNewsOnAir(void) { TVShow *show; u8 i; u16 balls; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_BREAKING_NEWS, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_BREAKING_NEWS, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->breakingNews.kind = TVSHOW_BREAKING_NEWS; - show->breakingNews.active = FALSE; + show->breakingNews.active = FALSE; // NOTE: Show is not active until passed via Record Mix. balls = 0; - for (i = 0; i < POKEBALL_COUNT - 1; i ++) - { + for (i = 0; i < POKEBALL_COUNT - 1; i++) balls += gBattleResults.catchAttempts[i]; - } + if (gBattleResults.usedMasterBall) - { - balls ++; - } + balls++; show->breakingNews.location = gMapHeader.regionMapSectionId; StringCopy(show->breakingNews.playerName, gSaveBlock2Ptr->playerName); show->breakingNews.poke1Species = gBattleResults.playerMon1Species; switch (gBattleOutcome) { - case B_OUTCOME_LOST: - case B_OUTCOME_DREW: - show->breakingNews.kind = TVSHOW_OFF_AIR; - return; - case B_OUTCOME_CAUGHT: - show->breakingNews.outcome = 0; - break; - case B_OUTCOME_WON: - show->breakingNews.outcome = 1; - break; - case B_OUTCOME_RAN: - case B_OUTCOME_PLAYER_TELEPORTED: - case B_OUTCOME_NO_SAFARI_BALLS: - show->breakingNews.outcome = 2; - break; - case B_OUTCOME_MON_FLED: - case B_OUTCOME_MON_TELEPORTED: - show->breakingNews.outcome = 3; - break; + case B_OUTCOME_LOST: + case B_OUTCOME_DREW: + show->breakingNews.kind = TVSHOW_OFF_AIR; + return; + case B_OUTCOME_CAUGHT: + show->breakingNews.outcome = 0; + break; + case B_OUTCOME_WON: + show->breakingNews.outcome = 1; + break; + case B_OUTCOME_RAN: + case B_OUTCOME_PLAYER_TELEPORTED: + case B_OUTCOME_NO_SAFARI_BALLS: + show->breakingNews.outcome = 2; + break; + case B_OUTCOME_MON_FLED: + case B_OUTCOME_MON_TELEPORTED: + show->breakingNews.outcome = 3; + break; } show->breakingNews.lastOpponentSpecies = gBattleResults.lastOpponentSpecies; switch (show->breakingNews.outcome) { - case 0: - if (gBattleResults.usedMasterBall) - { - show->breakingNews.caughtMonBall = ITEM_MASTER_BALL; - } - else - { - show->breakingNews.caughtMonBall = gBattleResults.caughtMonBall; - } - show->breakingNews.balls = balls; - break; - case 1: - show->breakingNews.lastUsedMove = gBattleResults.lastUsedMovePlayer; - break; - case 2: - break; - case 3: - break; + case 0: + if (gBattleResults.usedMasterBall) + show->breakingNews.caughtMonBall = ITEM_MASTER_BALL; + else + show->breakingNews.caughtMonBall = gBattleResults.caughtMonBall; + show->breakingNews.balls = balls; + break; + case 1: + show->breakingNews.lastUsedMove = gBattleResults.lastUsedMovePlayer; + break; + case 2: + case 3: + break; } - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->breakingNews.language = gGameLanguage; } } @@ -2290,16 +2179,16 @@ void TryPutLotteryWinnerReportOnAir(void) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_LOTTO_WINNER, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_LOTTO_WINNER, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->lottoWinner.kind = TVSHOW_LOTTO_WINNER; - show->lottoWinner.active = FALSE; + show->lottoWinner.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->lottoWinner.playerName, gSaveBlock2Ptr->playerName); show->lottoWinner.whichPrize = 4 - gSpecialVar_0x8004; show->lottoWinner.item = gSpecialVar_0x8005; - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->lottoWinner.language = gGameLanguage; } } @@ -2310,45 +2199,45 @@ void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16 u8 i; u8 j; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_BATTLE_SEMINAR, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_BATTLE_SEMINAR, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->battleSeminar.kind = TVSHOW_BATTLE_SEMINAR; - show->battleSeminar.active = FALSE; + show->battleSeminar.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->battleSeminar.playerName, gSaveBlock2Ptr->playerName); show->battleSeminar.foeSpecies = foeSpecies; show->battleSeminar.species = species; show->battleSeminar.move = movePtr[moveIdx]; - for (i = 0, j = 0; i < MAX_MON_MOVES; i ++) + for (i = 0, j = 0; i < MAX_MON_MOVES; i++) { if (i != moveIdx && movePtr[i]) { show->battleSeminar.otherMoves[j] = movePtr[i]; - j ++; + j++; } } show->battleSeminar.nOtherMoves = j; show->battleSeminar.betterMove = betterMove; - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->battleSeminar.language = gGameLanguage; } } -void sub_80EE44C(u8 nMonsCaught, u8 nPkblkUsed) +void TryPutSafariFanClubOnAir(u8 nMonsCaught, u8 nPkblkUsed) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_SAFARI_FAN_CLUB, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_SAFARI_FAN_CLUB, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->safariFanClub.kind = TVSHOW_SAFARI_FAN_CLUB; - show->safariFanClub.active = FALSE; + show->safariFanClub.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->safariFanClub.playerName, gSaveBlock2Ptr->playerName); show->safariFanClub.nMonsCaught = nMonsCaught; show->safariFanClub.nPkblkUsed = nPkblkUsed; - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->safariFanClub.language = gGameLanguage; } } @@ -2357,27 +2246,23 @@ void TryPutSpotTheCutiesOnAir(struct Pokemon *pokemon, u8 ribbonMonDataIdx) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_CUTIES, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_CUTIES, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->cuties.kind = TVSHOW_CUTIES; - show->cuties.active = FALSE; + show->cuties.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->cuties.playerName, gSaveBlock2Ptr->playerName); GetMonData(pokemon, MON_DATA_NICKNAME, show->cuties.nickname); StripExtCtrlCodes(show->cuties.nickname); show->cuties.nRibbons = GetRibbonCount(pokemon); show->cuties.selectedRibbon = MonDataIdxToRibbon(ribbonMonDataIdx); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->cuties.language = gGameLanguage; if (show->cuties.language == LANGUAGE_JAPANESE || GetMonData(pokemon, MON_DATA_LANGUAGE) == LANGUAGE_JAPANESE) - { show->cuties.pokemonNameLanguage = LANGUAGE_JAPANESE; - } else - { show->cuties.pokemonNameLanguage = GetMonData(pokemon, MON_DATA_LANGUAGE); - } } } @@ -2428,31 +2313,31 @@ static u8 MonDataIdxToRibbon(u8 monDataIdx) return CHAMPION_RIBBON; } -void TrySetUpTrainerFanClubSpecial(void) +void TryPutTrainerFanClubOnAir(void) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); - if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_TRAINER_FAN_CLUB, FALSE) != TRUE) + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); + if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_TRAINER_FAN_CLUB, FALSE) != TRUE) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->trainerFanClub.kind = TVSHOW_TRAINER_FAN_CLUB; - show->trainerFanClub.active = FALSE; + show->trainerFanClub.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->trainerFanClub.playerName, gSaveBlock2Ptr->playerName); show->trainerFanClub.words[0] = gSaveBlock1Ptr->easyChatProfile[0]; show->trainerFanClub.words[1] = gSaveBlock1Ptr->easyChatProfile[1]; - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->trainerFanClub.language = gGameLanguage; } } bool8 ShouldHideFanClubInterviewer(void) { - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot == -1) return TRUE; - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_FAN_CLUB_SPECIAL); + TryReplaceOldTVShowOfKind(TVSHOW_FAN_CLUB_SPECIAL); if (gSpecialVar_Result == TRUE) return TRUE; @@ -2468,25 +2353,24 @@ bool8 ShouldAirFrontierTVShow(void) u8 showIdx; TVShow *shows; - if (HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_FRONTIER, FALSE) == TRUE) + if (IsRecordMixShowAlreadySpawned(TVSHOW_FRONTIER, FALSE) == TRUE) { shows = gSaveBlock1Ptr->tvShows; playerId = GetPlayerIDAsU32(); - for (showIdx = 5; showIdx < LAST_TVSHOW_IDX; showIdx ++) + for (showIdx = NUM_NORMAL_TVSHOW_SLOTS; showIdx < LAST_TVSHOW_IDX; showIdx++) { if (shows[showIdx].common.kind == TVSHOW_FRONTIER && (playerId & 0xFF) == shows[showIdx].common.trainerIdLo && ((playerId >> 8) & 0xFF) == shows[showIdx].common.trainerIdHi) { DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, showIdx); - sub_80EF93C(gSaveBlock1Ptr->tvShows); + CompactTVShowArray(gSaveBlock1Ptr->tvShows); return TRUE; } } } - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot == -1) - { return FALSE; - } + return TRUE; } @@ -2494,47 +2378,47 @@ void TryPutFrontierTVShowOnAir(u16 winStreak, u8 facilityAndMode) { TVShow *show; - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->frontier.kind = TVSHOW_FRONTIER; - show->frontier.active = FALSE; + show->frontier.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->frontier.playerName, gSaveBlock2Ptr->playerName); show->frontier.winStreak = winStreak; - show->frontier.facility = facilityAndMode; + show->frontier.facilityAndMode = facilityAndMode; switch (facilityAndMode) { - case 1: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); - show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); - show->frontier.species3 = GetMonData(&gPlayerParty[2], MON_DATA_SPECIES, NULL); - break; - case 2: - show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); - show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); - show->frontier.species3 = GetMonData(&gPlayerParty[2], MON_DATA_SPECIES, NULL); - show->frontier.species4 = GetMonData(&gPlayerParty[3], MON_DATA_SPECIES, NULL); - break; - case 3: - show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); - show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); - break; - case 4: - show->frontier.species1 = GetMonData(&gSaveBlock1Ptr->playerParty[gSaveBlock2Ptr->frontier.selectedPartyMons[0] - 1], MON_DATA_SPECIES, NULL); - show->frontier.species2 = GetMonData(&gSaveBlock1Ptr->playerParty[gSaveBlock2Ptr->frontier.selectedPartyMons[1] - 1], MON_DATA_SPECIES, NULL); - break; + case FRONTIER_SHOW_TOWER_SINGLES: + case FRONTIER_SHOW_DOME_SINGLES: + case FRONTIER_SHOW_DOME_DOUBLES: + case FRONTIER_SHOW_FACTORY_SINGLES: + case FRONTIER_SHOW_FACTORY_DOUBLES: + case FRONTIER_SHOW_PIKE: + case FRONTIER_SHOW_ARENA: + case FRONTIER_SHOW_PALACE_SINGLES: + case FRONTIER_SHOW_PALACE_DOUBLES: + case FRONTIER_SHOW_PYRAMID: + show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); + show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); + show->frontier.species3 = GetMonData(&gPlayerParty[2], MON_DATA_SPECIES, NULL); + break; + case FRONTIER_SHOW_TOWER_DOUBLES: + show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); + show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); + show->frontier.species3 = GetMonData(&gPlayerParty[2], MON_DATA_SPECIES, NULL); + show->frontier.species4 = GetMonData(&gPlayerParty[3], MON_DATA_SPECIES, NULL); + break; + case FRONTIER_SHOW_TOWER_MULTIS: + show->frontier.species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); + show->frontier.species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); + break; + case FRONTIER_SHOW_TOWER_LINK_MULTIS: + show->frontier.species1 = GetMonData(&gSaveBlock1Ptr->playerParty[gSaveBlock2Ptr->frontier.selectedPartyMons[0] - 1], MON_DATA_SPECIES, NULL); + show->frontier.species2 = GetMonData(&gSaveBlock1Ptr->playerParty[gSaveBlock2Ptr->frontier.selectedPartyMons[1] - 1], MON_DATA_SPECIES, NULL); + break; } - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->frontier.language = gGameLanguage; } } @@ -2544,14 +2428,14 @@ void TryPutSecretBaseSecretsOnAir(void) TVShow *show; u8 strbuf[32]; - if (HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_SECRET_BASE_SECRETS, FALSE) != TRUE) + if (IsRecordMixShowAlreadySpawned(TVSHOW_SECRET_BASE_SECRETS, FALSE) != TRUE) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->secretBaseSecrets.kind = TVSHOW_SECRET_BASE_SECRETS; - show->secretBaseSecrets.active = FALSE; + show->secretBaseSecrets.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->secretBaseSecrets.playerName, gSaveBlock2Ptr->playerName); show->secretBaseSecrets.stepsInBase = VarGet(VAR_SECRET_BASE_STEP_COUNTER); CopyCurSecretBaseOwnerName_StrVar1(); @@ -2560,53 +2444,50 @@ void TryPutSecretBaseSecretsOnAir(void) StringCopy(show->secretBaseSecrets.baseOwnersName, strbuf); show->secretBaseSecrets.item = VarGet(VAR_SECRET_BASE_LAST_ITEM_USED); show->secretBaseSecrets.flags = VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) + (VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) << 16); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->secretBaseSecrets.language = gGameLanguage; if (show->secretBaseSecrets.language == LANGUAGE_JAPANESE || gSaveBlock1Ptr->secretBases[VarGet(VAR_CURRENT_SECRET_BASE)].language == LANGUAGE_JAPANESE) - { show->secretBaseSecrets.baseOwnersNameLanguage = LANGUAGE_JAPANESE; - } else - { show->secretBaseSecrets.baseOwnersNameLanguage = gSaveBlock1Ptr->secretBases[VarGet(VAR_CURRENT_SECRET_BASE)].language; - } } } } -static void sub_80EEB98(u16 days) +// Check var thresholds required to trigger the Number One show +// The vars are reset afterwards regardless +static void ResolveNumberOneShow(u16 days) { u8 i; - for (i = 0; i < ARRAY_COUNT(sNumberOneVarsAndThresholds); i ++) + for (i = 0; i < ARRAY_COUNT(sNumberOneVarsAndThresholds); i++) { if (VarGet(sNumberOneVarsAndThresholds[i][0]) >= sNumberOneVarsAndThresholds[i][1]) { - sub_80EEBF4(i); + TryPutNumberOneOnAir(i); break; } } - for (i = 0; i < ARRAY_COUNT(sNumberOneVarsAndThresholds); i ++) - { + + for (i = 0; i < ARRAY_COUNT(sNumberOneVarsAndThresholds); i++) VarSet(sNumberOneVarsAndThresholds[i][0], 0); - } } -static void sub_80EEBF4(u8 actionIdx) +static void TryPutNumberOneOnAir(u8 actionIdx) { TVShow *show; - HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_NUMBER_ONE, TRUE); - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + IsRecordMixShowAlreadySpawned(TVSHOW_NUMBER_ONE, TRUE); // Delete old version of show + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1) { show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot]; show->numberOne.kind = TVSHOW_NUMBER_ONE; - show->numberOne.active = FALSE; + show->numberOne.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->numberOne.playerName, gSaveBlock2Ptr->playerName); show->numberOne.actionIdx = actionIdx; show->numberOne.count = VarGet(sNumberOneVarsAndThresholds[actionIdx][0]); - tv_store_id_3x(show); + StorePlayerIdInRecordMixShow(show); show->numberOne.language = gGameLanguage; } } @@ -2648,72 +2529,66 @@ void IncrementDailyBattlePoints(u16 delta) // PokeNews -static void sub_80EED88(void) +static void TryPutRandomPokeNewsOnAir(void) { - u8 newsKind; - if (FlagGet(FLAG_SYS_GAME_CLEAR)) { - sCurTVShowSlot = sub_80EEE30(gSaveBlock1Ptr->pokeNews); + sCurTVShowSlot = GetFirstEmptyPokeNewsSlot(gSaveBlock1Ptr->pokeNews); if (sCurTVShowSlot != -1 && rbernoulli(1, 100) != TRUE) { - newsKind = (Random() % 4) + POKENEWS_SLATEPORT; - if (sub_80EF0E4(newsKind) != TRUE) + u8 newsKind = (Random() % NUM_POKENEWS_TYPES) + POKENEWS_SLATEPORT; + if (IsAddingPokeNewsDisallowed(newsKind) != TRUE) { gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].kind = newsKind; gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].days = 4; - gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].state = TRUE; + gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].state = 1; } } } } -s8 sub_80EEE30(PokeNews *pokeNews) +static s8 GetFirstEmptyPokeNewsSlot(PokeNews *pokeNews) { s8 i; - for (i = 0; i < POKE_NEWS_COUNT; i ++) + for (i = 0; i < POKE_NEWS_COUNT; i++) { - if (pokeNews[i].kind == 0) - { + if (pokeNews[i].kind == POKENEWS_NONE) return i; - } } return -1; } -void ClearPokemonNews(void) +static void ClearPokeNews(void) { u8 i; - for (i = 0; i < POKE_NEWS_COUNT; i ++) - { - ClearPokemonNewsI(i); - } + for (i = 0; i < POKE_NEWS_COUNT; i++) + ClearPokeNewsBySlot(i); } -void ClearPokemonNewsI(u8 i) +static void ClearPokeNewsBySlot(u8 i) { gSaveBlock1Ptr->pokeNews[i].kind = POKENEWS_NONE; gSaveBlock1Ptr->pokeNews[i].state = FALSE; gSaveBlock1Ptr->pokeNews[i].days = 0; } -static void sub_80EEEB8(void) +static void CompactPokeNews(void) { u8 i; u8 j; - for (i = 0; i < POKE_NEWS_COUNT - 1; i ++) + for (i = 0; i < POKE_NEWS_COUNT - 1; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind == POKENEWS_NONE) { - for (j = i + 1; j < POKE_NEWS_COUNT; j ++) + for (j = i + 1; j < POKE_NEWS_COUNT; j++) { if (gSaveBlock1Ptr->pokeNews[j].kind != POKENEWS_NONE) { gSaveBlock1Ptr->pokeNews[i] = gSaveBlock1Ptr->pokeNews[j]; - ClearPokemonNewsI(j); + ClearPokeNewsBySlot(j); break; } } @@ -2721,16 +2596,16 @@ static void sub_80EEEB8(void) } } -u8 FindAnyTVNewsOnTheAir(void) +static u8 FindAnyPokeNewsOnTheAir(void) { u8 i; - for (i = 0; i < POKE_NEWS_COUNT; i ++) + for (i = 0; i < POKE_NEWS_COUNT; i++) { - if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE && gSaveBlock1Ptr->pokeNews[i].state == TRUE && gSaveBlock1Ptr->pokeNews[i].days < 3) - { + if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE + && gSaveBlock1Ptr->pokeNews[i].state == 1 + && gSaveBlock1Ptr->pokeNews[i].days < 3) return i; - } } return 0xFF; } @@ -2740,7 +2615,7 @@ void DoPokeNews(void) u8 i; u16 n; - i = FindAnyTVNewsOnTheAir(); + i = FindAnyPokeNewsOnTheAir(); if (i == 0xFF) { gSpecialVar_Result = FALSE; @@ -2751,13 +2626,9 @@ void DoPokeNews(void) { gSaveBlock1Ptr->pokeNews[i].state = 2; if (gLocalTime.hours < 20) - { ShowFieldMessage(sPokeNewsTextGroup_Ongoing[gSaveBlock1Ptr->pokeNews[i].kind]); - } else - { ShowFieldMessage(sPokeNewsTextGroup_Ending[gSaveBlock1Ptr->pokeNews[i].kind]); - } } else { @@ -2775,101 +2646,92 @@ bool8 GetPriceReduction(u8 newsKind) u8 i; if (newsKind == POKENEWS_NONE) - { return FALSE; - } - for (i = 0; i < POKE_NEWS_COUNT; i ++) + + for (i = 0; i < POKE_NEWS_COUNT; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind == newsKind) { if (gSaveBlock1Ptr->pokeNews[i].state == 2 && IsPriceDiscounted(newsKind)) - { return TRUE; - } + return FALSE; } } return FALSE; } -bool8 IsPriceDiscounted(u8 newsKind) +static bool8 IsPriceDiscounted(u8 newsKind) { switch (newsKind) { - case POKENEWS_SLATEPORT: - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SLATEPORT_CITY) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SLATEPORT_CITY) && gSpecialVar_LastTalked == 25) - { - 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)) - { - return TRUE; - } - return FALSE; + case POKENEWS_SLATEPORT: + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SLATEPORT_CITY) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SLATEPORT_CITY) && gSpecialVar_LastTalked == 25) + 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)) + return TRUE; + return FALSE; } return TRUE; } -bool8 sub_80EF0E4(u8 newsKind) +static bool8 IsAddingPokeNewsDisallowed(u8 newsKind) { u8 i; if (newsKind == POKENEWS_NONE) - { return TRUE; - } - for (i = 0; i < POKE_NEWS_COUNT; i ++) + + // Check if this type of news is already active + for (i = 0; i < POKE_NEWS_COUNT; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind == newsKind) - { return TRUE; - } } return FALSE; } -static void sub_80EF120(u16 days) +static void UpdatePokeNewsTimeLeft(u16 days) { u8 i; - for (i = 0; i < POKE_NEWS_COUNT; i ++) + for (i = 0; i < POKE_NEWS_COUNT; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE) { if (gSaveBlock1Ptr->pokeNews[i].days < days) { - ClearPokemonNewsI(i); + ClearPokeNewsBySlot(i); } else { if (gSaveBlock1Ptr->pokeNews[i].state == 0 && FlagGet(FLAG_SYS_GAME_CLEAR) == TRUE) - { gSaveBlock1Ptr->pokeNews[i].state = 1; - } + gSaveBlock1Ptr->pokeNews[i].days -= days; } } } - sub_80EEEB8(); + CompactPokeNews(); } void CopyContestRankToStringVar(u8 varIdx, u8 rank) { switch (rank) { - case CONTEST_RANK_NORMAL: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_NORMAL]); - break; - case CONTEST_RANK_SUPER: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_SUPER]); - break; - case CONTEST_RANK_HYPER: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_HYPER]); - break; - case CONTEST_RANK_MASTER: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_MASTER]); - break; + case CONTEST_RANK_NORMAL: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_NORMAL]); + break; + case CONTEST_RANK_SUPER: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_SUPER]); + break; + case CONTEST_RANK_HYPER: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_HYPER]); + break; + case CONTEST_RANK_MASTER: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_MASTER]); + break; } } @@ -2877,21 +2739,21 @@ void CopyContestCategoryToStringVar(u8 varIdx, u8 category) { switch (category) { - case CONTEST_CATEGORY_COOL: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_COOL]); - break; - case CONTEST_CATEGORY_BEAUTY: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_BEAUTY]); - break; - case CONTEST_CATEGORY_CUTE: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_CUTE]); - break; - case CONTEST_CATEGORY_SMART: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_SMART]); - break; - case CONTEST_CATEGORY_TOUGH: - StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_TOUGH]); - break; + case CONTEST_CATEGORY_COOL: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_COOL]); + break; + case CONTEST_CATEGORY_BEAUTY: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_BEAUTY]); + break; + case CONTEST_CATEGORY_CUTE: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_CUTE]); + break; + case CONTEST_CATEGORY_SMART: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_SMART]); + break; + case CONTEST_CATEGORY_TOUGH: + StringCopy(gTVStringVarPtrs[varIdx], gStdStrings[STDSTRING_TOUGH]); + break; } } @@ -2903,11 +2765,9 @@ void SetContestCategoryStringVarForInterview(void) CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); } -void TV_PrintIntToStringVar(u8 varIdx, int value) +void ConvertIntToDecimalString(u8 varIdx, int value) { - int nDigits; - - nDigits = CountDigits(value); + int nDigits = CountDigits(value); ConvertIntToDecimalStringN(gTVStringVarPtrs[varIdx], value, STR_CONV_MODE_LEFT_ALIGN, nDigits); } @@ -2931,24 +2791,19 @@ static void sub_80EF40C(u8 varIdx, TVShow *show) int price; price = 0; - for (i = 0; i < 3; i ++) + 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]; - } } + if (show->smartshopperShow.priceReduced == TRUE) - { - TV_PrintIntToStringVar(varIdx, price >> 1); - } + ConvertIntToDecimalString(varIdx, price >> 1); else - { - TV_PrintIntToStringVar(varIdx, price); - } + ConvertIntToDecimalString(varIdx, price); } -bool8 HasMixableShowAlreadyBeenSpawnedWithPlayerID(u8 kind, bool8 flag) +static bool8 IsRecordMixShowAlreadySpawned(u8 kind, bool8 delete) { u32 playerId; TVShow *shows; @@ -2956,14 +2811,16 @@ bool8 HasMixableShowAlreadyBeenSpawnedWithPlayerID(u8 kind, bool8 flag) shows = gSaveBlock1Ptr->tvShows; playerId = GetPlayerIDAsU32(); - for (i = 5; i < LAST_TVSHOW_IDX; i ++) + for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { - if (shows[i].common.kind == kind && (playerId & 0xFF) == shows[i].common.trainerIdLo && ((playerId >> 8) & 0xFF) == shows[i].common.trainerIdHi) + if (shows[i].common.kind == kind + && (playerId & 0xFF) == shows[i].common.trainerIdLo + && ((playerId >> 8) & 0xFF) == shows[i].common.trainerIdHi) { - if (flag == TRUE) + if (delete == TRUE) { DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, i); - sub_80EF93C(gSaveBlock1Ptr->tvShows); + CompactTVShowArray(gSaveBlock1Ptr->tvShows); } return TRUE; } @@ -2971,16 +2828,15 @@ bool8 HasMixableShowAlreadyBeenSpawnedWithPlayerID(u8 kind, bool8 flag) return FALSE; } -void TV_SortPurchasesByQuantity(void) +static void SortPurchasesByQuantity(void) { - u8 i; - u8 j; + u8 i, j; u16 tmpId; u16 tmpQn; - for (i = 0; i < 2; i ++) + for (i = 0; i < SMARTSHOPPER_NUM_ITEMS - 1; i++) { - for (j = i + 1; j < 3; j ++) + for (j = i + 1; j < SMARTSHOPPER_NUM_ITEMS; j++) { if (gMartPurchaseHistory[i].quantity < gMartPurchaseHistory[j].quantity) { @@ -2995,27 +2851,31 @@ void TV_SortPurchasesByQuantity(void) } } -void FindActiveBroadcastByShowType_SetScriptResult(u8 kind) +static void TryReplaceOldTVShowOfKind(u8 kind) { u8 i; - for (i = 0; i < 5; i ++) + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == kind) { if (gSaveBlock1Ptr->tvShows[i].common.active == TRUE) { + // Old TV show is still active, don't replace gSpecialVar_Result = TRUE; } else { + // Old TV show is inactive, replace it and get new slot DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, i); - sub_80EF93C(gSaveBlock1Ptr->tvShows); - sub_80EFA88(); + CompactTVShowArray(gSaveBlock1Ptr->tvShows); + Script_FindFirstEmptyNormalTVShowSlot(); } return; } } - sub_80EFA88(); + + // Old TV show doesn't exist, just get new slot + Script_FindFirstEmptyNormalTVShowSlot(); } void InterviewBefore(void) @@ -3023,42 +2883,42 @@ void InterviewBefore(void) gSpecialVar_Result = FALSE; switch (gSpecialVar_0x8005) { - case TVSHOW_FAN_CLUB_LETTER: - InterviewBefore_FanClubLetter(); - break; - case TVSHOW_RECENT_HAPPENINGS: - InterviewBefore_RecentHappenings(); - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - InterviewBefore_PkmnFanClubOpinions(); - break; - case TVSHOW_UNKN_SHOWTYPE_04: - InterviewBefore_Dummy(); - break; - case TVSHOW_NAME_RATER_SHOW: - InterviewBefore_NameRater(); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - InterviewBefore_BravoTrainerPkmnProfile(); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - InterviewBefore_BravoTrainerBTProfile(); - break; - case TVSHOW_CONTEST_LIVE_UPDATES: - InterviewBefore_ContestLiveUpdates(); - break; - case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: - InterviewBefore_3CheersForPokeblocks(); - break; - case TVSHOW_FAN_CLUB_SPECIAL: - InterviewBefore_FanClubSpecial(); - break; + case TVSHOW_FAN_CLUB_LETTER: + InterviewBefore_FanClubLetter(); + break; + case TVSHOW_RECENT_HAPPENINGS: + InterviewBefore_RecentHappenings(); + break; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + InterviewBefore_PkmnFanClubOpinions(); + break; + case TVSHOW_DUMMY: + InterviewBefore_Dummy(); + break; + case TVSHOW_NAME_RATER_SHOW: + InterviewBefore_NameRater(); + break; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + InterviewBefore_BravoTrainerPkmnProfile(); + break; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + InterviewBefore_BravoTrainerBTProfile(); + break; + case TVSHOW_CONTEST_LIVE_UPDATES: + InterviewBefore_ContestLiveUpdates(); + break; + case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: + InterviewBefore_3CheersForPokeblocks(); + break; + case TVSHOW_FAN_CLUB_SPECIAL: + InterviewBefore_FanClubSpecial(); + break; } } static void InterviewBefore_FanClubLetter(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_FAN_CLUB_LETTER); + TryReplaceOldTVShowOfKind(TVSHOW_FAN_CLUB_LETTER); if (!gSpecialVar_Result) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]); @@ -3068,7 +2928,7 @@ static void InterviewBefore_FanClubLetter(void) static void InterviewBefore_RecentHappenings(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_RECENT_HAPPENINGS); + TryReplaceOldTVShowOfKind(TVSHOW_RECENT_HAPPENINGS); if (!gSpecialVar_Result) { InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].recentHappenings.words, 6); @@ -3077,7 +2937,7 @@ static void InterviewBefore_RecentHappenings(void) static void InterviewBefore_PkmnFanClubOpinions(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_PKMN_FAN_CLUB_OPINIONS); + TryReplaceOldTVShowOfKind(TVSHOW_PKMN_FAN_CLUB_OPINIONS); if (!gSpecialVar_Result) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]); @@ -3094,44 +2954,38 @@ static void InterviewBefore_Dummy(void) static void InterviewBefore_NameRater(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_NAME_RATER_SHOW); + TryReplaceOldTVShowOfKind(TVSHOW_NAME_RATER_SHOW); } static void InterviewBefore_BravoTrainerPkmnProfile(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE); + TryReplaceOldTVShowOfKind(TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE); if (!gSpecialVar_Result) - { InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainer.words, 2); - } } static void InterviewBefore_ContestLiveUpdates(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_CONTEST_LIVE_UPDATES); + TryReplaceOldTVShowOfKind(TVSHOW_CONTEST_LIVE_UPDATES); } static void InterviewBefore_3CheersForPokeblocks(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_3_CHEERS_FOR_POKEBLOCKS); + TryReplaceOldTVShowOfKind(TVSHOW_3_CHEERS_FOR_POKEBLOCKS); } static void InterviewBefore_BravoTrainerBTProfile(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE); + TryReplaceOldTVShowOfKind(TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE); if (!gSpecialVar_Result) - { InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainerTower.words, 1); - } } static void InterviewBefore_FanClubSpecial(void) { - FindActiveBroadcastByShowType_SetScriptResult(TVSHOW_FAN_CLUB_SPECIAL); + TryReplaceOldTVShowOfKind(TVSHOW_FAN_CLUB_SPECIAL); if (!gSpecialVar_Result) - { InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanClubSpecial.words, 1); - } } static bool8 IsPartyMonNicknamedOrNotEnglish(u8 monIdx) @@ -3143,9 +2997,8 @@ static bool8 IsPartyMonNicknamedOrNotEnglish(u8 monIdx) GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1); language = GetMonData(pokemon, MON_DATA_LANGUAGE, &language); if (language == GAME_LANGUAGE && !StringCompare(gSpeciesNames[GetMonData(pokemon, MON_DATA_SPECIES, NULL)], gStringVar1)) - { return FALSE; - } + return TRUE; } @@ -3154,28 +3007,27 @@ bool8 IsLeadMonNicknamedOrNotEnglish(void) return IsPartyMonNicknamedOrNotEnglish(GetLeadMonIndex()); } -void DeleteTVShowInArrayByIdx(TVShow *shows, u8 idx) +static void DeleteTVShowInArrayByIdx(TVShow *shows, u8 idx) { u8 i; shows[idx].commonInit.kind = TVSHOW_OFF_AIR; shows[idx].commonInit.active = FALSE; - for (i = 0; i < ARRAY_COUNT(shows[idx].commonInit.pad02); i++) - { - shows[idx].commonInit.pad02[i] = 0; - } + for (i = 0; i < ARRAY_COUNT(shows[idx].commonInit.data); i++) + shows[idx].commonInit.data[i] = 0; } -static void sub_80EF93C(TVShow *shows) +static void CompactTVShowArray(TVShow *shows) { u8 i; u8 j; - for (i = 0; i < 4; i ++) + // Compact normal TV shows + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS - 1; i++) { if (shows[i].common.kind == TVSHOW_OFF_AIR) { - for (j = i + 1; j < 5; j ++) + for (j = i + 1; j < NUM_NORMAL_TVSHOW_SLOTS; j++) { if (shows[j].common.kind != TVSHOW_OFF_AIR) { @@ -3186,11 +3038,13 @@ static void sub_80EF93C(TVShow *shows) } } } - for (i = 5; i < LAST_TVSHOW_IDX; i ++) + + // Compact Record Mix TV shows + for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { if (shows[i].common.kind == TVSHOW_OFF_AIR) { - for (j = i + 1; j < LAST_TVSHOW_IDX; j ++) + for (j = i + 1; j < LAST_TVSHOW_IDX; j++) { if (shows[j].common.kind != TVSHOW_OFF_AIR) { @@ -3203,16 +3057,16 @@ static void sub_80EF93C(TVShow *shows) } } -u16 TV_GetSomeOtherSpeciesAlreadySeenByPlayer_AndPrintName(u8 varIdx, u16 passedSpecies) +static u16 GetRandomDifferentSpeciesAndNameSeenByPlayer(u8 varIdx, u16 passedSpecies) { u16 species; - species = TV_GetSomeOtherSpeciesAlreadySeenByPlayer(passedSpecies); + species = GetRandomDifferentSpeciesSeenByPlayer(passedSpecies); StringCopy(gTVStringVarPtrs[varIdx], gSpeciesNames[species]); return species; } -u16 TV_GetSomeOtherSpeciesAlreadySeenByPlayer(u16 passedSpecies) +static u16 GetRandomDifferentSpeciesSeenByPlayer(u16 passedSpecies) { u16 species; u16 initSpecies; @@ -3222,13 +3076,10 @@ u16 TV_GetSomeOtherSpeciesAlreadySeenByPlayer(u16 passedSpecies) while (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_SEEN) != TRUE || species == passedSpecies) { if (species == SPECIES_NONE + 1) - { species = NUM_SPECIES - 1; - } else - { - species --; - } + species--; + if (species == initSpecies) { species = passedSpecies; @@ -3238,65 +3089,60 @@ u16 TV_GetSomeOtherSpeciesAlreadySeenByPlayer(u16 passedSpecies) return species; } -static void sub_80EFA88(void) +static void Script_FindFirstEmptyNormalTVShowSlot(void) { - sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); + sCurTVShowSlot = FindFirstEmptyNormalTVShowSlot(gSaveBlock1Ptr->tvShows); gSpecialVar_0x8006 = sCurTVShowSlot; if (sCurTVShowSlot == -1) - { - gSpecialVar_Result = TRUE; - } + gSpecialVar_Result = TRUE; // Failed to find empty slot else - { - gSpecialVar_Result = FALSE; - } + gSpecialVar_Result = FALSE; // Found empty slot } -s8 FindEmptyTVSlotWithinFirstFiveShowsOfArray(TVShow *shows) +static s8 FindFirstEmptyNormalTVShowSlot(TVShow *shows) { u8 i; - for (i = 0; i < 5; i ++) + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS; i++) { if (shows[i].common.kind == TVSHOW_OFF_AIR) - { return i; - } } return -1; } -s8 FindEmptyTVSlotBeyondFirstFiveShowsOfArray(TVShow *shows) +static s8 FindFirstEmptyRecordMixTVShowSlot(TVShow *shows) { s8 i; - for (i = 5; i < LAST_TVSHOW_IDX; i ++) + for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { if (shows[i].common.kind == TVSHOW_OFF_AIR) - { return i; - } } return -1; } -bool8 TV_BernoulliTrial(u16 ratio) +static bool8 BernoulliTrial(u16 ratio) { if (Random() <= ratio) - { return FALSE; - } + return TRUE; } -void TV_FanClubLetter_RandomWordToStringVar3(TVShow *show) +// For TVSHOW_FAN_CLUB_LETTER / TVSHOW_RECENT_HAPPENINGS +// Both are assumed to have the same struct layout +static void GetRandomWordFromShow(TVShow *show) { u8 i; - i = Random() % 6; + i = Random() % ARRAY_COUNT(show->fanclubLetter.words); + + // From random point, get first non-empty word while (TRUE) { - if (i == 6) + if (i == ARRAY_COUNT(show->fanclubLetter.words)) i = 0; if (show->fanclubLetter.words[i] != EC_EMPTY_WORD) @@ -3306,33 +3152,31 @@ void TV_FanClubLetter_RandomWordToStringVar3(TVShow *show) CopyEasyChatWord(gStringVar3, show->fanclubLetter.words[i]); } -u8 TV_GetNicknameSumMod8(TVShow *show) +static u8 GetRandomNameRaterStateFromName(TVShow *show) { u8 i; - u16 ct; + u16 nameSum; - ct = 0; - for (i = 0; i < 11; i ++) + nameSum = 0; + for (i = 0; i < POKEMON_NAME_LENGTH + 1; i++) { if (show->nameRaterShow.pokemonName[i] == EOS) - { break; - } - ct += show->nameRaterShow.pokemonName[i]; + + nameSum += show->nameRaterShow.pokemonName[i]; } - return ct & 7; + return nameSum & 7; } -void TV_GetNicknameSubstring(u8 varIdx, u8 whichPosition, u8 charParam, u16 whichString, u16 species, TVShow *show) +static void GetNicknameSubstring(u8 varIdx, u8 whichPosition, u8 charParam, u16 whichString, u16 species, TVShow *show) { u8 buff[16]; u8 i; u16 strlen; - for (i = 0; i < 3; i ++) - { + for (i = 0; i < 3; i++) buff[i] = EOS; - } + if (whichString == 0) { strlen = StringLength(show->nameRaterShow.trainerName); @@ -3404,16 +3248,15 @@ void TV_GetNicknameSubstring(u8 varIdx, u8 whichPosition, u8 charParam, u16 whic StringCopy(gTVStringVarPtrs[varIdx], buff); } -bool8 TV_IsScriptShowKindAlreadyInQueue(void) +// Unused script special +bool8 IsTVShowAlreadyInQueue(void) { u8 i; - for (i = 0; i < 5; i ++) + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == gSpecialVar_0x8004) - { return TRUE; - } } return FALSE; } @@ -3455,7 +3298,7 @@ void ChangeBoxPokemonNickname(void) DoNamingScreen(NAMING_SCREEN_NICKNAME, gStringVar2, GetBoxMonData(boxMon, MON_DATA_SPECIES, NULL), GetBoxMonGender(boxMon), GetBoxMonData(boxMon, MON_DATA_PERSONALITY, NULL), ChangeBoxPokemonNickname_CB); } -void ChangeBoxPokemonNickname_CB(void) +static void ChangeBoxPokemonNickname_CB(void) { SetBoxMonNickAt(gSpecialVar_MonBoxId, gSpecialVar_MonBoxPos, gStringVar2); CB2_ReturnToFieldContinueScriptPlayMapMusic(); @@ -3475,25 +3318,21 @@ void IsMonOTIDNotPlayers(void) gSpecialVar_Result = TRUE; } -u8 GetTVChannelByShowType(u8 kind) +static u8 GetTVGroupByShowId(u8 kind) { if (kind == TVSHOW_OFF_AIR) - { - return 0; - } - if (kind >= TVSHOW_FAN_CLUB_LETTER && kind < TVSHOW_POKEMON_TODAY_CAUGHT) - { - return 2; - } - if (kind >= TVSHOW_POKEMON_TODAY_CAUGHT && kind < TVSHOW_MASS_OUTBREAK) - { - return 3; - } - if (kind >= TVSHOW_MASS_OUTBREAK && kind < 61) - { - return 4; - } - return 0; + return TVGROUP_NONE; + + if (kind >= TVGROUP_NORMAL_START && kind <= TVGROUP_NORMAL_END) + return TVGROUP_NORMAL; + + if (kind >= TVGROUP_RECORD_MIX_START && kind <= TVGROUP_RECORD_MIX_END) + return TVGROUP_RECORD_MIX; + + if (kind >= TVGROUP_OUTBREAK_START && kind <= TVGROUP_OUTBREAK_END) + return TVGROUP_OUTBREAK; + + return TVGROUP_NONE; } u32 GetPlayerIDAsU32(void) @@ -3501,35 +3340,31 @@ u32 GetPlayerIDAsU32(void) return (gSaveBlock2Ptr->playerTrainerId[3] << 24) | (gSaveBlock2Ptr->playerTrainerId[2] << 16) | (gSaveBlock2Ptr->playerTrainerId[1] << 8) | gSaveBlock2Ptr->playerTrainerId[0]; } -u8 CheckForBigMovieOrEmergencyNewsOnTV(void) +u8 CheckForPlayersHouseNews(void) { + // Check if not in Littleroot house map group if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F)) - { - return 0; - } + 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)) - { - return 0; - } + return PLAYERS_HOUSE_TV_NONE; } else { if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_1F)) - { - return 0; - } + return PLAYERS_HOUSE_TV_NONE; } + if (FlagGet(FLAG_SYS_TV_LATIAS_LATIOS) == TRUE) - { - return 1; - } + return PLAYERS_HOUSE_TV_LATI; + if (FlagGet(FLAG_SYS_TV_HOME) == TRUE) - { - return 2; - } - return 1; + return PLAYERS_HOUSE_TV_MOVIE; + + return PLAYERS_HOUSE_TV_LATI; } void GetMomOrDadStringForTVMessage(void) @@ -3590,129 +3425,120 @@ void HideBattleTowerReporter(void) FlagSet(FLAG_HIDE_BATTLE_TOWER_REPORTER); } -void ReceiveTvShowsData(void *src, u32 size, u8 masterIdx) +void ReceiveTvShowsData(void *src, u32 size, u8 playersLinkId) { u8 i; u16 version; - TVShow (*rmBuffer2)[4][25]; - TVShow (*rmBuffer)[4][25]; + TVShow (*rmBuffer2)[MAX_LINK_PLAYERS][TV_SHOWS_COUNT]; + TVShow (*rmBuffer)[MAX_LINK_PLAYERS][TV_SHOWS_COUNT]; - rmBuffer2 = malloc(4 * 25 * sizeof(TVShow)); + rmBuffer2 = malloc(MAX_LINK_PLAYERS * TV_SHOWS_COUNT * sizeof(TVShow)); if (rmBuffer2 != NULL) { - for (i = 0; i < 4; i ++) - { + for (i = 0; i < MAX_LINK_PLAYERS; i++) memcpy((*rmBuffer2)[i], src + i * size, sizeof((*rmBuffer2)[i])); - } + rmBuffer = rmBuffer2; - for (i = 0; i < GetLinkPlayerCount(); i ++) + for (i = 0; i < GetLinkPlayerCount(); i++) { version = (u8)gLinkPlayers[i].version; if (version == VERSION_RUBY || version == VERSION_SAPPHIRE) - { - sub_80F1254((*rmBuffer)[i]); - } + TranslateRubyShows((*rmBuffer)[i]); else if (version == VERSION_EMERALD && gLinkPlayers[i].language == LANGUAGE_JAPANESE) - { - sub_80F12A4((*rmBuffer)[i]); - } + TranslateJapaneseEmeraldShows((*rmBuffer)[i]); } - switch (masterIdx) + + // Position player's TV shows in argument list depending on link id + switch (playersLinkId) { - case 0: - sub_80F0358(gSaveBlock1Ptr->tvShows, (*rmBuffer)[1], (*rmBuffer)[2], (*rmBuffer)[3]); - break; - case 1: - sub_80F0358((*rmBuffer)[0], gSaveBlock1Ptr->tvShows, (*rmBuffer)[2], (*rmBuffer)[3]); - break; - case 2: - sub_80F0358((*rmBuffer)[0], (*rmBuffer)[1], gSaveBlock1Ptr->tvShows, (*rmBuffer)[3]); - break; - case 3: - sub_80F0358((*rmBuffer)[0], (*rmBuffer)[1], (*rmBuffer)[2], gSaveBlock1Ptr->tvShows); - break; + case 0: + SetMixedTVShows(gSaveBlock1Ptr->tvShows, (*rmBuffer)[1], (*rmBuffer)[2], (*rmBuffer)[3]); + break; + case 1: + SetMixedTVShows((*rmBuffer)[0], gSaveBlock1Ptr->tvShows, (*rmBuffer)[2], (*rmBuffer)[3]); + break; + case 2: + SetMixedTVShows((*rmBuffer)[0], (*rmBuffer)[1], gSaveBlock1Ptr->tvShows, (*rmBuffer)[3]); + break; + case 3: + SetMixedTVShows((*rmBuffer)[0], (*rmBuffer)[1], (*rmBuffer)[2], gSaveBlock1Ptr->tvShows); + break; } - sub_80EF93C(gSaveBlock1Ptr->tvShows); - sub_80F0C04(); - sub_80EF93C(gSaveBlock1Ptr->tvShows); - sub_80F0708(); - sub_80F0B64(); + + CompactTVShowArray(gSaveBlock1Ptr->tvShows); + DeleteExcessMixedShows(); + CompactTVShowArray(gSaveBlock1Ptr->tvShows); + DeactivateShowsWithUnseenSpecies(); + DeactivateGameCompleteShowsIfNotUnlocked(); free(rmBuffer2); } } -static void sub_80F0358(TVShow player1[25], TVShow player2[25], TVShow player3[25], TVShow player4[25]) +static void SetMixedTVShows(TVShow player1[TV_SHOWS_COUNT], TVShow player2[TV_SHOWS_COUNT], TVShow player3[TV_SHOWS_COUNT], TVShow player4[TV_SHOWS_COUNT]) { u8 i; u8 j; - TVShow **argslist[4]; + TVShow **tvShows[MAX_LINK_PLAYERS]; - argslist[0] = &player1; - argslist[1] = &player2; - argslist[2] = &player3; - argslist[3] = &player4; + tvShows[0] = &player1; + tvShows[1] = &player2; + tvShows[2] = &player3; + tvShows[3] = &player4; sTVShowMixingNumPlayers = GetLinkPlayerCount(); while (1) { - for (i = 0; i < sTVShowMixingNumPlayers; i ++) + for (i = 0; i < sTVShowMixingNumPlayers; i++) { if (i == 0) - { - sRecordMixingPartnersWithoutShowsToShare = i; - } - sTVShowMixingCurSlot = sub_80F06D0(argslist[i][0]); + sRecordMixingPartnersWithoutShowsToShare = 0; + + sTVShowMixingCurSlot = FindInactiveShowInArray(tvShows[i][0]); if (sTVShowMixingCurSlot == -1) { - sRecordMixingPartnersWithoutShowsToShare ++; + sRecordMixingPartnersWithoutShowsToShare++; if (sRecordMixingPartnersWithoutShowsToShare == sTVShowMixingNumPlayers) - { return; - } } else { - for (j = 0; j < sTVShowMixingNumPlayers - 1; j ++) + for (j = 0; j < sTVShowMixingNumPlayers - 1; j++) { - sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(argslist[(i + j + 1) % sTVShowMixingNumPlayers][0]); + sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(tvShows[(i + j + 1) % sTVShowMixingNumPlayers][0]); if (sCurTVShowSlot != -1 - && sub_80F049C(&argslist[(i + j + 1) % sTVShowMixingNumPlayers][0], &argslist[i][0], (i + j + 1) % sTVShowMixingNumPlayers) == 1) - { + && TryMixTVShow(&tvShows[(i + j + 1) % sTVShowMixingNumPlayers][0], &tvShows[i][0], (i + j + 1) % sTVShowMixingNumPlayers) == 1) break; - } } if (j == sTVShowMixingNumPlayers - 1) - { - DeleteTVShowInArrayByIdx(argslist[i][0], sTVShowMixingCurSlot); - } + DeleteTVShowInArrayByIdx(tvShows[i][0], sTVShowMixingCurSlot); } } } } -static bool8 sub_80F049C(TVShow *dest[25], TVShow *src[25], u8 idx) +static bool8 TryMixTVShow(TVShow *dest[TV_SHOWS_COUNT], TVShow *src[TV_SHOWS_COUNT], u8 idx) { - u8 value; - u8 switchval; - TVShow *tv1; - TVShow *tv2; + bool8 success; + u8 type; + TVShow *tv1 = *dest; + TVShow *tv2 = *src; - tv1 = *dest; - tv2 = *src; - value = FALSE; - switchval = GetTVChannelByShowType(tv2[sTVShowMixingCurSlot].common.kind); - switch (switchval) + success = FALSE; + type = GetTVGroupByShowId(tv2[sTVShowMixingCurSlot].common.kind); + switch (type) { - case 2: - value = sub_80F0580(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); - break; - case 3: - value = sub_80F05E8(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); - break; - case 4: - value = sub_80F0668(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); - break; + case TVGROUP_NORMAL: + success = TryMixNormalTVShow(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); + break; + case TVGROUP_RECORD_MIX: + success = TryMixRecordMixTVShow(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); + break; + case TVGROUP_OUTBREAK: + success = TryMixOutbreakTVShow(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); + break; } - if (value == TRUE) + + // Show was mixed, delete from array + if (success == TRUE) { DeleteTVShowInArrayByIdx(tv2, sTVShowMixingCurSlot); return TRUE; @@ -3720,385 +3546,354 @@ static bool8 sub_80F049C(TVShow *dest[25], TVShow *src[25], u8 idx) return FALSE; } -static bool8 sub_80F0580(TVShow *tv1, TVShow *tv2, u8 idx) +static bool8 TryMixNormalTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == tv2->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == tv2->common.trainerIdHi) - { + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; - } - tv2->common.trainerIdLo = tv2->common.srcTrainerIdLo; - tv2->common.trainerIdHi = tv2->common.srcTrainerIdHi; - tv2->common.srcTrainerIdLo = linkTrainerId & 0xFF; - tv2->common.srcTrainerIdHi = linkTrainerId >> 8; - *tv1 = *tv2; - tv1->common.active = TRUE; + + src->common.trainerIdLo = src->common.srcTrainerIdLo; + src->common.trainerIdHi = src->common.srcTrainerIdHi; + src->common.srcTrainerIdLo = linkTrainerId & 0xFF; + src->common.srcTrainerIdHi = linkTrainerId >> 8; + *dest = *src; + dest->common.active = TRUE; return TRUE; } -static bool8 sub_80F05E8(TVShow *tv1, TVShow *tv2, u8 idx) +static bool8 TryMixRecordMixTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == tv2->common.srcTrainerIdLo && ((linkTrainerId >> 8) & 0xFF) == tv2->common.srcTrainerIdHi) - { + + if ((linkTrainerId & 0xFF) == src->common.srcTrainerIdLo + && ((linkTrainerId >> 8) & 0xFF) == src->common.srcTrainerIdHi) return FALSE; - } - if ((linkTrainerId & 0xFF) == tv2->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == tv2->common.trainerIdHi) - { + + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; - } - tv2->common.srcTrainerIdLo = tv2->common.srcTrainerId2Lo; - tv2->common.srcTrainerIdHi = tv2->common.srcTrainerId2Hi; - tv2->common.srcTrainerId2Lo = linkTrainerId & 0xFF; - tv2->common.srcTrainerId2Hi = linkTrainerId >> 8; - *tv1 = *tv2; - tv1->common.active = TRUE; + + src->common.srcTrainerIdLo = src->common.srcTrainerId2Lo; + src->common.srcTrainerIdHi = src->common.srcTrainerId2Hi; + src->common.srcTrainerId2Lo = linkTrainerId & 0xFF; + src->common.srcTrainerId2Hi = linkTrainerId >> 8; + *dest = *src; + dest->common.active = TRUE; return TRUE; } -static bool8 sub_80F0668(TVShow *tv1, TVShow *tv2, u8 idx) +static bool8 TryMixOutbreakTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == tv2->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == tv2->common.trainerIdHi) - { + + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; - } - tv2->common.trainerIdLo = tv2->common.srcTrainerIdLo; - tv2->common.trainerIdHi = tv2->common.srcTrainerIdHi; - tv2->common.srcTrainerIdLo = linkTrainerId & 0xFF; - tv2->common.srcTrainerIdHi = linkTrainerId >> 8; - *tv1 = *tv2; - tv1->common.active = TRUE; - tv1->massOutbreak.daysLeft = 1; + + src->common.trainerIdLo = src->common.srcTrainerIdLo; + src->common.trainerIdHi = src->common.srcTrainerIdHi; + src->common.srcTrainerIdLo = linkTrainerId & 0xFF; + src->common.srcTrainerIdHi = linkTrainerId >> 8; + *dest = *src; + dest->common.active = TRUE; + dest->massOutbreak.daysLeft = 1; return TRUE; } -static s8 sub_80F06D0(TVShow *tvShows) +static s8 FindInactiveShowInArray(TVShow *tvShows) { u8 i; - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + for (i = 0; i < LAST_TVSHOW_IDX; i++) { - if (tvShows[i].common.active == FALSE && (u8)(tvShows[i].common.kind - 1) < 60) - { + // Second check is to make sure its a valid show (not too high, not TVSHOW_OFF_AIR) + if (tvShows[i].common.active == FALSE && (u8)(tvShows[i].common.kind - 1) < TVGROUP_OUTBREAK_END) return i; - } } return -1; } -static void sub_80F0708(void) // FIXME: register allocation shenanigans +static void DeactivateShowsWithUnseenSpecies(void) { u16 i; - u16 j; + u16 species; - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + for (i = 0; i < LAST_TVSHOW_IDX; i++) { switch (gSaveBlock1Ptr->tvShows[i].common.kind) { - case TVSHOW_CONTEST_LIVE_UPDATES: - j = (&gSaveBlock1Ptr->tvShows[i])->contestLiveUpdates.winningSpecies; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->contestLiveUpdates.losingSpecies; - sub_80F0B24(j, i); - break; - case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: - break; - case TVSHOW_BATTLE_UPDATE: - j = (&gSaveBlock1Ptr->tvShows[i])->battleUpdate.speciesPlayer; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->battleUpdate.speciesOpponent; - sub_80F0B24(j, i); - break; - case TVSHOW_FAN_CLUB_SPECIAL: - break; - case TVSHOW_LILYCOVE_CONTEST_LADY: - break; - case TVSHOW_OFF_AIR: - break; - case TVSHOW_FAN_CLUB_LETTER: - j = (&gSaveBlock1Ptr->tvShows[i])->fanclubLetter.species; - sub_80F0B24(j, i); - break; - case TVSHOW_RECENT_HAPPENINGS: - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - j = (&gSaveBlock1Ptr->tvShows[i])->fanclubOpinions.species; - sub_80F0B24(j, i); - break; - case TVSHOW_UNKN_SHOWTYPE_04: - j = (&gSaveBlock1Ptr->tvShows[i])->unkShow04.var06; - sub_80F0B24(j, i); - break; - case TVSHOW_NAME_RATER_SHOW: - j = (&gSaveBlock1Ptr->tvShows[i])->nameRaterShow.species; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->nameRaterShow.randomSpecies; - sub_80F0B24(j, i); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - j = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainer.species; - sub_80F0B24(j, i); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - j = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainerTower.species; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainerTower.defeatedSpecies; - sub_80F0B24(j, i); - break; - - case TVSHOW_POKEMON_TODAY_CAUGHT: - j = (&gSaveBlock1Ptr->tvShows[i])->pokemonToday.species; - sub_80F0B24(j, i); - break; - case TVSHOW_SMART_SHOPPER: - break; - case TVSHOW_POKEMON_TODAY_FAILED: - j = (&gSaveBlock1Ptr->tvShows[i])->pokemonTodayFailed.species; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->pokemonTodayFailed.species2; - sub_80F0B24(j, i); - break; - case TVSHOW_FISHING_ADVICE: - j = (&gSaveBlock1Ptr->tvShows[i])->pokemonAngler.species; - sub_80F0B24(j, i); - break; - case TVSHOW_WORLD_OF_MASTERS: - j = (&gSaveBlock1Ptr->tvShows[i])->worldOfMasters.species; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->worldOfMasters.caughtPoke; - sub_80F0B24(j, i); - break; - - case TVSHOW_TODAYS_RIVAL_TRAINER: - break; - case TVSHOW_TREND_WATCHER: - break; - case TVSHOW_TREASURE_INVESTIGATORS: - break; - case TVSHOW_FIND_THAT_GAMER: - break; - case TVSHOW_BREAKING_NEWS: - j = (&gSaveBlock1Ptr->tvShows[i])->breakingNews.lastOpponentSpecies; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->breakingNews.poke1Species; - sub_80F0B24(j, i); - break; - case TVSHOW_SECRET_BASE_VISIT: - j = (&gSaveBlock1Ptr->tvShows[i])->secretBaseVisit.species; - sub_80F0B24(j, i); - break; - case TVSHOW_LOTTO_WINNER: - break; - case TVSHOW_BATTLE_SEMINAR: - j = (&gSaveBlock1Ptr->tvShows[i])->battleSeminar.species; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->battleSeminar.foeSpecies; - sub_80F0B24(j, i); - break; - case TVSHOW_TRAINER_FAN_CLUB: - break; - case TVSHOW_CUTIES: - break; - case TVSHOW_FRONTIER: - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.species1; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.species2; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.facility; - switch (j) - { - case 3: - case 4: - break; - case 1: - case 5 ... 13: - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.species3; - sub_80F0B24(j, i); - break; - case 2: - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.species3; - sub_80F0B24(j, i); - j = (&gSaveBlock1Ptr->tvShows[i])->frontier.species4; - sub_80F0B24(j, i); - break; - } - break; - case TVSHOW_NUMBER_ONE: - break; - case TVSHOW_SECRET_BASE_SECRETS: - break; - case TVSHOW_SAFARI_FAN_CLUB: - break; - - case TVSHOW_MASS_OUTBREAK: - break; - - default: - SetTvShowInactive(i); - break; + case TVSHOW_CONTEST_LIVE_UPDATES: + species = (&gSaveBlock1Ptr->tvShows[i])->contestLiveUpdates.winningSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->contestLiveUpdates.losingSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_BATTLE_UPDATE: + species = (&gSaveBlock1Ptr->tvShows[i])->battleUpdate.speciesPlayer; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->battleUpdate.speciesOpponent; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_FAN_CLUB_LETTER: + species = (&gSaveBlock1Ptr->tvShows[i])->fanclubLetter.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + species = (&gSaveBlock1Ptr->tvShows[i])->fanclubOpinions.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_DUMMY: + species = (&gSaveBlock1Ptr->tvShows[i])->dummy.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_NAME_RATER_SHOW: + species = (&gSaveBlock1Ptr->tvShows[i])->nameRaterShow.species; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->nameRaterShow.randomSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + species = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainer.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + species = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainerTower.species; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->bravoTrainerTower.defeatedSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_POKEMON_TODAY_CAUGHT: + species = (&gSaveBlock1Ptr->tvShows[i])->pokemonToday.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_POKEMON_TODAY_FAILED: + species = (&gSaveBlock1Ptr->tvShows[i])->pokemonTodayFailed.species; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->pokemonTodayFailed.species2; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_FISHING_ADVICE: + species = (&gSaveBlock1Ptr->tvShows[i])->pokemonAngler.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_WORLD_OF_MASTERS: + species = (&gSaveBlock1Ptr->tvShows[i])->worldOfMasters.species; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->worldOfMasters.caughtPoke; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_BREAKING_NEWS: + species = (&gSaveBlock1Ptr->tvShows[i])->breakingNews.lastOpponentSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->breakingNews.poke1Species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_SECRET_BASE_VISIT: + species = (&gSaveBlock1Ptr->tvShows[i])->secretBaseVisit.species; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_BATTLE_SEMINAR: + species = (&gSaveBlock1Ptr->tvShows[i])->battleSeminar.species; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->battleSeminar.foeSpecies; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case TVSHOW_FRONTIER: + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.species1; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.species2; + DeactivateShowIfNotSeenSpecies(species, i); + // Species var re-used here + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.facilityAndMode; + switch (species) + { + case FRONTIER_SHOW_TOWER_MULTIS: + case FRONTIER_SHOW_TOWER_LINK_MULTIS: + break; + case FRONTIER_SHOW_TOWER_SINGLES: + case FRONTIER_SHOW_DOME_SINGLES: + case FRONTIER_SHOW_DOME_DOUBLES: + case FRONTIER_SHOW_FACTORY_SINGLES: + case FRONTIER_SHOW_FACTORY_DOUBLES: + case FRONTIER_SHOW_PIKE: + case FRONTIER_SHOW_ARENA: + case FRONTIER_SHOW_PALACE_SINGLES: + case FRONTIER_SHOW_PALACE_DOUBLES: + case FRONTIER_SHOW_PYRAMID: + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.species3; + DeactivateShowIfNotSeenSpecies(species, i); + break; + case FRONTIER_SHOW_TOWER_DOUBLES: + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.species3; + DeactivateShowIfNotSeenSpecies(species, i); + species = (&gSaveBlock1Ptr->tvShows[i])->frontier.species4; + DeactivateShowIfNotSeenSpecies(species, i); + break; + } + break; + // Shows with no species + case TVSHOW_OFF_AIR: + case TVSHOW_RECENT_HAPPENINGS: + case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: + case TVSHOW_TODAYS_RIVAL_TRAINER: + case TVSHOW_TREND_WATCHER: + case TVSHOW_TREASURE_INVESTIGATORS: + case TVSHOW_FIND_THAT_GAMER: + case TVSHOW_TRAINER_FAN_CLUB: + case TVSHOW_CUTIES: + case TVSHOW_SMART_SHOPPER: + case TVSHOW_FAN_CLUB_SPECIAL: + case TVSHOW_LILYCOVE_CONTEST_LADY: + case TVSHOW_LOTTO_WINNER: + case TVSHOW_NUMBER_ONE: + case TVSHOW_SECRET_BASE_SECRETS: + case TVSHOW_SAFARI_FAN_CLUB: + case TVSHOW_MASS_OUTBREAK: + break; + default: + DeactivateShow(i); + break; } } } -void SetTvShowInactive(u8 showIdx) +static void DeactivateShow(u8 showIdx) { gSaveBlock1Ptr->tvShows[showIdx].common.active = FALSE; } -static void sub_80F0B24(u16 species, u8 showIdx) +static void DeactivateShowIfNotSeenSpecies(u16 species, u8 showIdx) { if (!GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_SEEN)) - { gSaveBlock1Ptr->tvShows[showIdx].common.active = FALSE; - } } -static void sub_80F0B64(void) +static void DeactivateGameCompleteShowsIfNotUnlocked(void) { u16 i; if (FlagGet(FLAG_SYS_GAME_CLEAR) != TRUE) { - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + for (i = 0; i < LAST_TVSHOW_IDX; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE) - { gSaveBlock1Ptr->tvShows[i].common.active = FALSE; - } else if (gSaveBlock1Ptr->tvShows[i].common.kind == TVSHOW_MASS_OUTBREAK) - { gSaveBlock1Ptr->tvShows[i].common.active = FALSE; - } } } } -void sub_80F0BB8(void) +void DeactivateAllNormalTVShows(void) { u8 i; - for (i = 0; i < 5; i ++) + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS; i++) { - if (GetTVChannelByShowType(gSaveBlock1Ptr->tvShows[i].common.kind) == 2) - { + if (GetTVGroupByShowId(gSaveBlock1Ptr->tvShows[i].common.kind) == TVGROUP_NORMAL) gSaveBlock1Ptr->tvShows[i].common.active = FALSE; - } } } -static void sub_80F0C04(void) +// Ensures a minimum of 5 empty mixed show slots +static void DeleteExcessMixedShows(void) { s8 i; - s8 ct; - - ct = 0; - for (i = 5; i < LAST_TVSHOW_IDX; i ++) + s8 numEmptyMixSlots = 0; + for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { if (gSaveBlock1Ptr->tvShows[i].common.kind == TVSHOW_OFF_AIR) - { - ct ++; - } - } - for (i = 0; i < 5 - ct; i ++) - { - DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, i + 5); + numEmptyMixSlots++; } + for (i = 0; i < NUM_NORMAL_TVSHOW_SLOTS - numEmptyMixSlots; i++) + DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, i + NUM_NORMAL_TVSHOW_SLOTS); } -void ReceivePokeNewsData(void *src, u32 size, u8 masterIdx) +void ReceivePokeNewsData(void *src, u32 size, u8 playersLinkId) { u8 i; - PokeNews (*rmBuffer2)[4][16]; - PokeNews (*rmBuffer)[4][16]; + PokeNews (*rmBuffer2)[MAX_LINK_PLAYERS][POKE_NEWS_COUNT]; + PokeNews (*rmBuffer)[MAX_LINK_PLAYERS][POKE_NEWS_COUNT]; - rmBuffer2 = malloc(4 * 16 * sizeof(PokeNews)); + rmBuffer2 = malloc(MAX_LINK_PLAYERS * POKE_NEWS_COUNT * sizeof(PokeNews)); if (rmBuffer2 != NULL) { - for (i = 0; i < 4; i ++) - { + for (i = 0; i < MAX_LINK_PLAYERS; i++) memcpy((*rmBuffer2)[i], src + i * size, sizeof((*rmBuffer2)[i])); - } + rmBuffer = rmBuffer2; - switch (masterIdx) + + // Position player's PokeNews in argument list depending on link id + switch (playersLinkId) { - case 0: - sub_80F0D60(gSaveBlock1Ptr->pokeNews, (*rmBuffer)[1], (*rmBuffer)[2], (*rmBuffer)[3]); - break; - case 1: - sub_80F0D60((*rmBuffer)[0], gSaveBlock1Ptr->pokeNews, (*rmBuffer)[2], (*rmBuffer)[3]); - break; - case 2: - sub_80F0D60((*rmBuffer)[0], (*rmBuffer)[1], gSaveBlock1Ptr->pokeNews, (*rmBuffer)[3]); - break; - case 3: - sub_80F0D60((*rmBuffer)[0], (*rmBuffer)[1], (*rmBuffer)[2], gSaveBlock1Ptr->pokeNews); - break; + case 0: + SetMixedPokeNews(gSaveBlock1Ptr->pokeNews, (*rmBuffer)[1], (*rmBuffer)[2], (*rmBuffer)[3]); + break; + case 1: + SetMixedPokeNews((*rmBuffer)[0], gSaveBlock1Ptr->pokeNews, (*rmBuffer)[2], (*rmBuffer)[3]); + break; + case 2: + SetMixedPokeNews((*rmBuffer)[0], (*rmBuffer)[1], gSaveBlock1Ptr->pokeNews, (*rmBuffer)[3]); + break; + case 3: + SetMixedPokeNews((*rmBuffer)[0], (*rmBuffer)[1], (*rmBuffer)[2], gSaveBlock1Ptr->pokeNews); + break; } - sub_80F0EEC(); - sub_80F0F24(); + ClearInvalidPokeNews(); + ClearPokeNewsIfGameNotComplete(); free(rmBuffer2); } } -static void sub_80F0D60(PokeNews player1[16], PokeNews player2[16], PokeNews player3[16], PokeNews player4[16]) +static void SetMixedPokeNews(PokeNews player1[POKE_NEWS_COUNT], PokeNews player2[POKE_NEWS_COUNT], PokeNews player3[POKE_NEWS_COUNT], PokeNews player4[POKE_NEWS_COUNT]) { - u8 i; - u8 j; - u8 k; - PokeNews **argslist[4]; + u8 i, j, k; + PokeNews **pokeNews[MAX_LINK_PLAYERS]; - argslist[0] = &player1; - argslist[1] = &player2; - argslist[2] = &player3; - argslist[3] = &player4; + pokeNews[0] = &player1; + pokeNews[1] = &player2; + pokeNews[2] = &player3; + pokeNews[3] = &player4; sTVShowNewsMixingNumPlayers = GetLinkPlayerCount(); - for (i = 0; i < POKE_NEWS_COUNT; i ++) + for (i = 0; i < POKE_NEWS_COUNT; i++) { - for (j = 0; j < sTVShowNewsMixingNumPlayers; j ++) + for (j = 0; j < sTVShowNewsMixingNumPlayers; j++) { - sTVShowMixingCurSlot = sub_80F0ECC(*argslist[j], i); + sTVShowMixingCurSlot = GetPokeNewsSlotIfActive(*pokeNews[j], i); if (sTVShowMixingCurSlot != -1) { for (k = 0; k < sTVShowNewsMixingNumPlayers - 1; k++) { - sCurTVShowSlot = sub_80EEE30(*argslist[(j + k + 1) % sTVShowNewsMixingNumPlayers]); + sCurTVShowSlot = GetFirstEmptyPokeNewsSlot(*pokeNews[(j + k + 1) % sTVShowNewsMixingNumPlayers]); if (sCurTVShowSlot != -1) - { - sub_80F0E58(argslist[(j + k + 1) % sTVShowNewsMixingNumPlayers], argslist[j]); - } + InitTryMixPokeNewsShow(pokeNews[(j + k + 1) % sTVShowNewsMixingNumPlayers], pokeNews[j]); } } } } } -static void sub_80F0E58(PokeNews *dest[16], PokeNews *src[16]) +static void InitTryMixPokeNewsShow(PokeNews *dest[POKE_NEWS_COUNT], PokeNews *src[POKE_NEWS_COUNT]) { - PokeNews *ptr1; - PokeNews *ptr2; - - ptr1 = *dest; - ptr2 = *src; + PokeNews *ptr1 = *dest; + PokeNews *ptr2 = *src; ptr2 += sTVShowMixingCurSlot; - sub_80F0E84(ptr1, ptr2, sCurTVShowSlot); + TryMixPokeNewsShow(ptr1, ptr2, sCurTVShowSlot); } -static bool8 sub_80F0E84(PokeNews *dest, PokeNews *src, s8 slot) +static bool8 TryMixPokeNewsShow(PokeNews *dest, PokeNews *src, s8 slot) { u8 i; if (src->kind == POKENEWS_NONE) - { return FALSE; - } - for (i = 0; i < POKE_NEWS_COUNT; i ++) + + for (i = 0; i < POKE_NEWS_COUNT; i++) { if (dest[i].kind == src->kind) - { return FALSE; - } } dest[slot].kind = src->kind; dest[slot].state = 1; @@ -4106,43 +3901,38 @@ static bool8 sub_80F0E84(PokeNews *dest, PokeNews *src, s8 slot) return TRUE; } -static s8 sub_80F0ECC(PokeNews *pokeNews, u8 idx) +static s8 GetPokeNewsSlotIfActive(PokeNews *pokeNews, u8 idx) { if (pokeNews[idx].kind == POKENEWS_NONE) - { return -1; - } + return idx; } -static void sub_80F0EEC(void) +static void ClearInvalidPokeNews(void) { u8 i; - for (i = 0; i < POKE_NEWS_COUNT; i ++) + for (i = 0; i < POKE_NEWS_COUNT; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind > POKENEWS_BLENDMASTER) - { - ClearPokemonNewsI(i); - } + ClearPokeNewsBySlot(i); } - sub_80EEEB8(); + CompactPokeNews(); } -static void sub_80F0F24(void) +static void ClearPokeNewsIfGameNotComplete(void) { u8 i; if (FlagGet(FLAG_SYS_GAME_CLEAR) != TRUE) { - for (i = 0; i < POKE_NEWS_COUNT; i ++) - { + for (i = 0; i < POKE_NEWS_COUNT; i++) gSaveBlock1Ptr->pokeNews[i].state = 0; - } } } -#define tvlangfix(strptr, langptr, langfix) \ +#define SetStrLanguage(strptr, langptr, langfix) \ if (IsStringJapanese(strptr)) \ { \ (langptr) = LANGUAGE_JAPANESE; \ @@ -4152,645 +3942,346 @@ else \ (langptr) = langfix; \ } -static void sub_80F0F64(TVShow *show, u32 language) +// Unused +static void TranslateShowNames(TVShow *show, u32 language) { int i; - TVShow **r4; + TVShow **shows; - r4 = calloc(11, sizeof(TVShow *)); - for (i = 0; i < LAST_TVSHOW_IDX; i ++) + shows = calloc(11, sizeof(TVShow *)); + for (i = 0; i < LAST_TVSHOW_IDX; i++) { switch (show[i].common.kind) { - case TVSHOW_FAN_CLUB_LETTER: - case TVSHOW_RECENT_HAPPENINGS: - r4[0] = &show[i]; - tvlangfix(r4[0]->fanclubLetter.playerName, r4[0]->fanclubLetter.language, language); - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - r4[1] = &show[i]; - tvlangfix(r4[1]->fanclubOpinions.playerName, r4[1]->fanclubOpinions.language, language); - tvlangfix(r4[1]->fanclubOpinions.nickname, r4[1]->fanclubOpinions.pokemonNameLanguage, language); - break; - case TVSHOW_POKEMON_TODAY_CAUGHT: - r4[6] = &show[i]; - tvlangfix(r4[6]->pokemonToday.playerName, r4[6]->pokemonToday.language, language); - tvlangfix(r4[6]->pokemonToday.nickname, r4[6]->pokemonToday.language2, language); - break; - case TVSHOW_SMART_SHOPPER: - r4[7] = &show[i]; - tvlangfix(r4[7]->smartshopperShow.playerName, r4[7]->smartshopperShow.language, language); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - r4[5] = &show[i]; - tvlangfix(r4[5]->bravoTrainerTower.trainerName, r4[5]->bravoTrainerTower.language, language); - tvlangfix(r4[5]->bravoTrainerTower.pokemonName, r4[5]->bravoTrainerTower.pokemonNameLanguage, language); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - r4[4] = &show[i]; - tvlangfix(r4[4]->bravoTrainer.playerName, r4[4]->bravoTrainer.language, language); - tvlangfix(r4[4]->bravoTrainer.pokemonNickname, r4[4]->bravoTrainer.pokemonNameLanguage, language); - break; - case TVSHOW_NAME_RATER_SHOW: - r4[3] = &show[i]; - tvlangfix(r4[3]->nameRaterShow.trainerName, r4[3]->nameRaterShow.language, language); - tvlangfix(r4[3]->nameRaterShow.pokemonName, r4[3]->nameRaterShow.pokemonNameLanguage, language); - break; - case TVSHOW_POKEMON_TODAY_FAILED: - r4[2] = &show[i]; - tvlangfix(r4[2]->pokemonTodayFailed.playerName, r4[2]->pokemonTodayFailed.language, language); - break; - case TVSHOW_FISHING_ADVICE: - r4[8] = &show[i]; - tvlangfix(r4[8]->pokemonAngler.playerName, r4[8]->pokemonAngler.language, language); - break; - case TVSHOW_WORLD_OF_MASTERS: - r4[9] = &show[i]; - tvlangfix(r4[9]->worldOfMasters.playerName, r4[9]->worldOfMasters.language, language); - break; - case TVSHOW_MASS_OUTBREAK: - r4[10] = &show[i]; - r4[10]->massOutbreak.language = language; - break; + case TVSHOW_FAN_CLUB_LETTER: + case TVSHOW_RECENT_HAPPENINGS: // NOTE: These two shows are assumed to have the same struct layout + shows[0] = &show[i]; + SetStrLanguage(shows[0]->fanclubLetter.playerName, shows[0]->fanclubLetter.language, language); + break; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + shows[1] = &show[i]; + SetStrLanguage(shows[1]->fanclubOpinions.playerName, shows[1]->fanclubOpinions.language, language); + SetStrLanguage(shows[1]->fanclubOpinions.nickname, shows[1]->fanclubOpinions.pokemonNameLanguage, language); + break; + case TVSHOW_POKEMON_TODAY_CAUGHT: + shows[6] = &show[i]; + SetStrLanguage(shows[6]->pokemonToday.playerName, shows[6]->pokemonToday.language, language); + SetStrLanguage(shows[6]->pokemonToday.nickname, shows[6]->pokemonToday.language2, language); + break; + case TVSHOW_SMART_SHOPPER: + shows[7] = &show[i]; + SetStrLanguage(shows[7]->smartshopperShow.playerName, shows[7]->smartshopperShow.language, language); + break; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + shows[5] = &show[i]; + SetStrLanguage(shows[5]->bravoTrainerTower.trainerName, shows[5]->bravoTrainerTower.language, language); + SetStrLanguage(shows[5]->bravoTrainerTower.pokemonName, shows[5]->bravoTrainerTower.pokemonNameLanguage, language); + break; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + shows[4] = &show[i]; + SetStrLanguage(shows[4]->bravoTrainer.playerName, shows[4]->bravoTrainer.language, language); + SetStrLanguage(shows[4]->bravoTrainer.pokemonNickname, shows[4]->bravoTrainer.pokemonNameLanguage, language); + break; + case TVSHOW_NAME_RATER_SHOW: + shows[3] = &show[i]; + SetStrLanguage(shows[3]->nameRaterShow.trainerName, shows[3]->nameRaterShow.language, language); + SetStrLanguage(shows[3]->nameRaterShow.pokemonName, shows[3]->nameRaterShow.pokemonNameLanguage, language); + break; + case TVSHOW_POKEMON_TODAY_FAILED: + shows[2] = &show[i]; + SetStrLanguage(shows[2]->pokemonTodayFailed.playerName, shows[2]->pokemonTodayFailed.language, language); + break; + case TVSHOW_FISHING_ADVICE: + shows[8] = &show[i]; + SetStrLanguage(shows[8]->pokemonAngler.playerName, shows[8]->pokemonAngler.language, language); + break; + case TVSHOW_WORLD_OF_MASTERS: + shows[9] = &show[i]; + SetStrLanguage(shows[9]->worldOfMasters.playerName, shows[9]->worldOfMasters.language, language); + break; + case TVSHOW_MASS_OUTBREAK: + shows[10] = &show[i]; + shows[10]->massOutbreak.language = language; + break; } } - free(r4); + free(shows); } -void sub_80F1208(TVShow *shows) +void SanitizeTVShowsForRuby(TVShow *shows) { TVShow *curShow; - sub_80F14F8(shows); - for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow ++) + SanitizeTVShowLocationsForRuby(shows); + for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow++) { if (curShow->bravoTrainerTower.kind == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE) { - if ((curShow->bravoTrainerTower.language == LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage != LANGUAGE_JAPANESE) || (curShow->bravoTrainerTower.language != LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage == LANGUAGE_JAPANESE)) - { + if ((curShow->bravoTrainerTower.language == LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage != LANGUAGE_JAPANESE) + || (curShow->bravoTrainerTower.language != LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage == LANGUAGE_JAPANESE)) memset(curShow, 0, sizeof(TVShow)); - } } } } -static void sub_80F1254(TVShow *shows) +static void TranslateRubyShows(TVShow *shows) { TVShow *curShow; - for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow ++) + for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow++) { if (curShow->bravoTrainerTower.kind == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE) { if (IsStringJapanese(curShow->bravoTrainerTower.pokemonName)) - { curShow->bravoTrainerTower.pokemonNameLanguage = LANGUAGE_JAPANESE; - } else - { curShow->bravoTrainerTower.pokemonNameLanguage = GAME_LANGUAGE; - } } } } -u8 TV_GetStringLanguage(u8 *str) +static u8 GetStringLanguage(u8 *str) { return IsStringJapanese(str) ? LANGUAGE_JAPANESE : GAME_LANGUAGE; } -static void sub_80F12A4(TVShow *shows) +static void TranslateJapaneseEmeraldShows(TVShow *shows) { TVShow *curShow; - for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow ++) + for (curShow = shows; curShow < shows + LAST_TVSHOW_IDX; curShow++) { switch(curShow->common.kind) { - case TVSHOW_FAN_CLUB_LETTER: - curShow->fanclubLetter.language = TV_GetStringLanguage(curShow->fanclubLetter.playerName); - break; - case TVSHOW_RECENT_HAPPENINGS: - curShow->recentHappenings.language = TV_GetStringLanguage(curShow->recentHappenings.playerName); - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - curShow->fanclubOpinions.language = TV_GetStringLanguage(curShow->fanclubOpinions.playerName); - curShow->fanclubOpinions.pokemonNameLanguage = TV_GetStringLanguage(curShow->fanclubOpinions.nickname); - break; - case TVSHOW_UNKN_SHOWTYPE_04: - curShow->unkShow04.language = TV_GetStringLanguage(curShow->unkShow04.string_0b); - break; - case TVSHOW_NAME_RATER_SHOW: - curShow->nameRaterShow.language = TV_GetStringLanguage(curShow->nameRaterShow.trainerName); - curShow->nameRaterShow.pokemonNameLanguage = TV_GetStringLanguage(curShow->nameRaterShow.pokemonName); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - curShow->bravoTrainer.language = TV_GetStringLanguage(curShow->bravoTrainer.playerName); - curShow->bravoTrainer.pokemonNameLanguage = TV_GetStringLanguage(curShow->bravoTrainer.pokemonNickname); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - curShow->bravoTrainerTower.language = TV_GetStringLanguage(curShow->bravoTrainerTower.trainerName); - curShow->bravoTrainerTower.pokemonNameLanguage = TV_GetStringLanguage(curShow->bravoTrainerTower.pokemonName); - break; - case TVSHOW_CONTEST_LIVE_UPDATES: - curShow->contestLiveUpdates.winningTrainerLanguage = TV_GetStringLanguage(curShow->contestLiveUpdates.winningTrainerName); - curShow->contestLiveUpdates.losingTrainerLanguage = TV_GetStringLanguage(curShow->contestLiveUpdates.losingTrainerName); - break; - case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: - curShow->threeCheers.language = TV_GetStringLanguage(curShow->threeCheers.playerName); - curShow->threeCheers.worstBlenderLanguage = TV_GetStringLanguage(curShow->threeCheers.worstBlenderName); - break; - case TVSHOW_BATTLE_UPDATE: - curShow->battleUpdate.language = TV_GetStringLanguage(curShow->battleUpdate.playerName); - curShow->battleUpdate.linkOpponentLanguage = TV_GetStringLanguage(curShow->battleUpdate.linkOpponentName); - break; - case TVSHOW_FAN_CLUB_SPECIAL: - curShow->fanClubSpecial.language = TV_GetStringLanguage(curShow->fanClubSpecial.playerName); - curShow->fanClubSpecial.idolNameLanguage = TV_GetStringLanguage(curShow->fanClubSpecial.idolName); - break; - case TVSHOW_LILYCOVE_CONTEST_LADY: - curShow->contestLady.language = TV_GetStringLanguage(curShow->contestLady.playerName); - curShow->contestLady.pokemonNameLanguage = TV_GetStringLanguage(curShow->contestLady.nickname); - break; - case TVSHOW_POKEMON_TODAY_CAUGHT: - curShow->pokemonToday.language = TV_GetStringLanguage(curShow->pokemonToday.playerName); - curShow->pokemonToday.language2 = TV_GetStringLanguage(curShow->pokemonToday.nickname); - break; - case TVSHOW_SMART_SHOPPER: - curShow->smartshopperShow.language = TV_GetStringLanguage(curShow->smartshopperShow.playerName); - break; - case TVSHOW_POKEMON_TODAY_FAILED: - curShow->pokemonTodayFailed.language = TV_GetStringLanguage(curShow->pokemonTodayFailed.playerName); - break; - case TVSHOW_FISHING_ADVICE: - curShow->pokemonAngler.language = TV_GetStringLanguage(curShow->pokemonAngler.playerName); - break; - case TVSHOW_WORLD_OF_MASTERS: - curShow->worldOfMasters.language = TV_GetStringLanguage(curShow->worldOfMasters.playerName); - break; - case TVSHOW_TREND_WATCHER: - curShow->trendWatcher.language = TV_GetStringLanguage(curShow->trendWatcher.playerName); - break; - case TVSHOW_BREAKING_NEWS: - curShow->breakingNews.language = TV_GetStringLanguage(curShow->breakingNews.playerName); - break; - case TVSHOW_BATTLE_SEMINAR: - curShow->battleSeminar.language = TV_GetStringLanguage(curShow->battleSeminar.playerName); - break; - case TVSHOW_FIND_THAT_GAMER: - case TVSHOW_TRAINER_FAN_CLUB: - curShow->trainerFanClub.language = TV_GetStringLanguage(curShow->trainerFanClub.playerName); - break; - case TVSHOW_CUTIES: - curShow->cuties.language = TV_GetStringLanguage(curShow->cuties.playerName); - curShow->cuties.pokemonNameLanguage = TV_GetStringLanguage(curShow->cuties.nickname); - break; - case TVSHOW_TODAYS_RIVAL_TRAINER: - case TVSHOW_SECRET_BASE_VISIT: - case TVSHOW_FRONTIER: - curShow->rivalTrainer.language = TV_GetStringLanguage(curShow->rivalTrainer.playerName); - break; - case TVSHOW_TREASURE_INVESTIGATORS: - case TVSHOW_LOTTO_WINNER: - case TVSHOW_NUMBER_ONE: - curShow->treasureInvestigators.language = TV_GetStringLanguage(curShow->treasureInvestigators.playerName); - break; - case TVSHOW_SECRET_BASE_SECRETS: - curShow->secretBaseSecrets.language = TV_GetStringLanguage(curShow->secretBaseSecrets.playerName); - curShow->secretBaseSecrets.baseOwnersNameLanguage = TV_GetStringLanguage(curShow->secretBaseSecrets.baseOwnersName); - break; - case TVSHOW_SAFARI_FAN_CLUB: - curShow->safariFanClub.language = TV_GetStringLanguage(curShow->safariFanClub.playerName); - break; - case TVSHOW_MASS_OUTBREAK: - break; - } - } -} - -void sub_80F14F8(TVShow *shows) -{ - int i; - - for (i = 0; i < LAST_TVSHOW_IDX; i ++) - { - switch (shows[i].common.kind) - { - case TVSHOW_WORLD_OF_MASTERS: - if (shows[i].worldOfMasters.location > KANTO_MAPSEC_START) - { - memset(&shows[i], 0, sizeof(TVShow)); - } - break; - case TVSHOW_POKEMON_TODAY_FAILED: - if (shows[i].pokemonTodayFailed.location > KANTO_MAPSEC_START) - { - memset(&shows[i], 0, sizeof(TVShow)); - } - break; + case TVSHOW_FAN_CLUB_LETTER: + curShow->fanclubLetter.language = GetStringLanguage(curShow->fanclubLetter.playerName); + break; + case TVSHOW_RECENT_HAPPENINGS: + curShow->recentHappenings.language = GetStringLanguage(curShow->recentHappenings.playerName); + break; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + curShow->fanclubOpinions.language = GetStringLanguage(curShow->fanclubOpinions.playerName); + curShow->fanclubOpinions.pokemonNameLanguage = GetStringLanguage(curShow->fanclubOpinions.nickname); + break; + case TVSHOW_DUMMY: + curShow->dummy.language = GetStringLanguage(curShow->dummy.name); + break; + case TVSHOW_NAME_RATER_SHOW: + curShow->nameRaterShow.language = GetStringLanguage(curShow->nameRaterShow.trainerName); + curShow->nameRaterShow.pokemonNameLanguage = GetStringLanguage(curShow->nameRaterShow.pokemonName); + break; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + curShow->bravoTrainer.language = GetStringLanguage(curShow->bravoTrainer.playerName); + curShow->bravoTrainer.pokemonNameLanguage = GetStringLanguage(curShow->bravoTrainer.pokemonNickname); + break; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + curShow->bravoTrainerTower.language = GetStringLanguage(curShow->bravoTrainerTower.trainerName); + curShow->bravoTrainerTower.pokemonNameLanguage = GetStringLanguage(curShow->bravoTrainerTower.pokemonName); + break; + case TVSHOW_CONTEST_LIVE_UPDATES: + curShow->contestLiveUpdates.winningTrainerLanguage = GetStringLanguage(curShow->contestLiveUpdates.winningTrainerName); + curShow->contestLiveUpdates.losingTrainerLanguage = GetStringLanguage(curShow->contestLiveUpdates.losingTrainerName); + break; + case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: + curShow->threeCheers.language = GetStringLanguage(curShow->threeCheers.playerName); + curShow->threeCheers.worstBlenderLanguage = GetStringLanguage(curShow->threeCheers.worstBlenderName); + break; + case TVSHOW_BATTLE_UPDATE: + curShow->battleUpdate.language = GetStringLanguage(curShow->battleUpdate.playerName); + curShow->battleUpdate.linkOpponentLanguage = GetStringLanguage(curShow->battleUpdate.linkOpponentName); + break; + case TVSHOW_FAN_CLUB_SPECIAL: + curShow->fanClubSpecial.language = GetStringLanguage(curShow->fanClubSpecial.playerName); + curShow->fanClubSpecial.idolNameLanguage = GetStringLanguage(curShow->fanClubSpecial.idolName); + break; + case TVSHOW_LILYCOVE_CONTEST_LADY: + curShow->contestLady.language = GetStringLanguage(curShow->contestLady.playerName); + curShow->contestLady.pokemonNameLanguage = GetStringLanguage(curShow->contestLady.nickname); + break; + case TVSHOW_POKEMON_TODAY_CAUGHT: + curShow->pokemonToday.language = GetStringLanguage(curShow->pokemonToday.playerName); + curShow->pokemonToday.language2 = GetStringLanguage(curShow->pokemonToday.nickname); + break; + case TVSHOW_SMART_SHOPPER: + curShow->smartshopperShow.language = GetStringLanguage(curShow->smartshopperShow.playerName); + break; + case TVSHOW_POKEMON_TODAY_FAILED: + curShow->pokemonTodayFailed.language = GetStringLanguage(curShow->pokemonTodayFailed.playerName); + break; + case TVSHOW_FISHING_ADVICE: + curShow->pokemonAngler.language = GetStringLanguage(curShow->pokemonAngler.playerName); + break; + case TVSHOW_WORLD_OF_MASTERS: + curShow->worldOfMasters.language = GetStringLanguage(curShow->worldOfMasters.playerName); + break; + case TVSHOW_TREND_WATCHER: + curShow->trendWatcher.language = GetStringLanguage(curShow->trendWatcher.playerName); + break; + case TVSHOW_BREAKING_NEWS: + curShow->breakingNews.language = GetStringLanguage(curShow->breakingNews.playerName); + break; + case TVSHOW_BATTLE_SEMINAR: + curShow->battleSeminar.language = GetStringLanguage(curShow->battleSeminar.playerName); + break; + case TVSHOW_FIND_THAT_GAMER: + case TVSHOW_TRAINER_FAN_CLUB: + curShow->trainerFanClub.language = GetStringLanguage(curShow->trainerFanClub.playerName); + break; + case TVSHOW_CUTIES: + curShow->cuties.language = GetStringLanguage(curShow->cuties.playerName); + curShow->cuties.pokemonNameLanguage = GetStringLanguage(curShow->cuties.nickname); + break; + case TVSHOW_TODAYS_RIVAL_TRAINER: + case TVSHOW_SECRET_BASE_VISIT: + case TVSHOW_FRONTIER: + curShow->rivalTrainer.language = GetStringLanguage(curShow->rivalTrainer.playerName); + break; + case TVSHOW_TREASURE_INVESTIGATORS: + case TVSHOW_LOTTO_WINNER: + case TVSHOW_NUMBER_ONE: + curShow->treasureInvestigators.language = GetStringLanguage(curShow->treasureInvestigators.playerName); + break; + case TVSHOW_SECRET_BASE_SECRETS: + curShow->secretBaseSecrets.language = GetStringLanguage(curShow->secretBaseSecrets.playerName); + curShow->secretBaseSecrets.baseOwnersNameLanguage = GetStringLanguage(curShow->secretBaseSecrets.baseOwnersName); + break; + case TVSHOW_SAFARI_FAN_CLUB: + curShow->safariFanClub.language = GetStringLanguage(curShow->safariFanClub.playerName); + break; + case TVSHOW_MASS_OUTBREAK: + break; } } } -void DoTVShow(void) +void SanitizeTVShowLocationsForRuby(TVShow *shows) { - if (gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004].common.active) + int i; + + for (i = 0; i < LAST_TVSHOW_IDX; i++) { - switch (gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004].common.kind) + switch (shows[i].common.kind) { - case TVSHOW_FAN_CLUB_LETTER: - DoTVShowPokemonFanClubLetter(); - break; - case TVSHOW_RECENT_HAPPENINGS: - DoTVShowRecentHappenings(); - break; - case TVSHOW_PKMN_FAN_CLUB_OPINIONS: - DoTVShowPokemonFanClubOpinions(); - break; - case TVSHOW_UNKN_SHOWTYPE_04: - DoTVShowDummiedOut(); - break; - case TVSHOW_MASS_OUTBREAK: - DoTVShowPokemonNewsMassOutbreak(); - break; - case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: - DoTVShowBravoTrainerPokemonProfile(); - break; - case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: - DoTVShowBravoTrainerBattleTower(); - break; - case TVSHOW_POKEMON_TODAY_CAUGHT: - DoTVShowPokemonTodaySuccessfulCapture(); - break; - case TVSHOW_SMART_SHOPPER: - DoTVShowTodaysSmartShopper(); - break; - case TVSHOW_NAME_RATER_SHOW: - DoTVShowTheNameRaterShow(); - break; - case TVSHOW_CONTEST_LIVE_UPDATES: - DoTVShowPokemonContestLiveUpdates(); - break; - case TVSHOW_BATTLE_UPDATE: - DoTVShowPokemonBattleUpdate(); - break; - case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: - DoTVShow3CheersForPokeblocks(); - break; - case TVSHOW_POKEMON_TODAY_FAILED: - DoTVShowPokemonTodayFailedCapture(); - break; - case TVSHOW_FISHING_ADVICE: - DoTVShowPokemonAngler(); - break; - case TVSHOW_WORLD_OF_MASTERS: - DoTVShowTheWorldOfMasters(); - break; - case TVSHOW_TODAYS_RIVAL_TRAINER: - DoTVShowTodaysRivalTrainer(); - break; - case TVSHOW_TREND_WATCHER: - DoTVShowDewfordTrendWatcherNetwork(); - break; - case TVSHOW_TREASURE_INVESTIGATORS: - DoTVShowHoennTreasureInvestigators(); - break; - case TVSHOW_FIND_THAT_GAMER: - DoTVShowFindThatGamer(); - break; - case TVSHOW_BREAKING_NEWS: - DoTVShowBreakingNewsTV(); - break; - case TVSHOW_SECRET_BASE_VISIT: - DoTVShowSecretBaseVisit(); - break; - case TVSHOW_LOTTO_WINNER: - DoTVShowPokemonLotteryWinnerFlashReport(); - break; - case TVSHOW_BATTLE_SEMINAR: - DoTVShowThePokemonBattleSeminar(); - break; - case TVSHOW_FAN_CLUB_SPECIAL: - DoTVShowTrainerFanClubSpecial(); - break; - case TVSHOW_TRAINER_FAN_CLUB: - DoTVShowTrainerFanClub(); - break; - case TVSHOW_CUTIES: - DoTVShowSpotTheCuties(); - break; - case TVSHOW_FRONTIER: - DoTVShowPokemonNewsBattleFrontier(); - break; - case TVSHOW_NUMBER_ONE: - DoTVShowWhatsNo1InHoennToday(); - break; - case TVSHOW_SECRET_BASE_SECRETS: - DoTVShowSecretBaseSecrets(); - break; - case TVSHOW_SAFARI_FAN_CLUB: - DoTVShowSafariFanClub(); - break; - case TVSHOW_LILYCOVE_CONTEST_LADY: - DoTVShowLilycoveContestLady(); - break; + case TVSHOW_WORLD_OF_MASTERS: + if (shows[i].worldOfMasters.location > KANTO_MAPSEC_START) + memset(&shows[i], 0, sizeof(TVShow)); + break; + case TVSHOW_POKEMON_TODAY_FAILED: + if (shows[i].pokemonTodayFailed.location > KANTO_MAPSEC_START) + memset(&shows[i], 0, sizeof(TVShow)); + break; } } } -static void DoTVShowBravoTrainerPokemonProfile(void) +// gSpecialVar_0x8004 here is set from GetRandomActiveShowIdx in EventScript_TryDoTVShow +void DoTVShow(void) { - TVShow *show; - u8 state; - - show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; - gSpecialVar_Result = FALSE; - state = sTVShowState; - switch (state) + if (gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004].common.active) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); - CopyContestRankToStringVar(2, show->bravoTrainer.contestRank); - if (!StringCompare(gSpeciesNames[show->bravoTrainer.species], show->bravoTrainer.pokemonNickname)) - sTVShowState = 8; - else - sTVShowState = 1; + switch (gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004].common.kind) + { + case TVSHOW_FAN_CLUB_LETTER: + DoTVShowPokemonFanClubLetter(); break; - case 1: - StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); - TVShowConvertInternationalString(gStringVar2, show->bravoTrainer.pokemonNickname, show->bravoTrainer.pokemonNameLanguage); - CopyContestCategoryToStringVar(2, show->bravoTrainer.contestCategory); - sTVShowState = 2; + case TVSHOW_RECENT_HAPPENINGS: + DoTVShowRecentHappenings(); break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - if (show->bravoTrainer.contestResult == 0) // placed first - sTVShowState = 3; - else - sTVShowState = 4; + case TVSHOW_PKMN_FAN_CLUB_OPINIONS: + DoTVShowPokemonFanClubOpinions(); break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - CopyEasyChatWord(gStringVar2, show->bravoTrainer.words[0]); - TV_PrintIntToStringVar(2, show->bravoTrainer.contestResult + 1); - sTVShowState = 5; + case TVSHOW_DUMMY: + DoTVShowDummiedOut(); break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - CopyEasyChatWord(gStringVar2, show->bravoTrainer.words[0]); - TV_PrintIntToStringVar(2, show->bravoTrainer.contestResult + 1); - sTVShowState = 5; + case TVSHOW_MASS_OUTBREAK: + DoTVShowPokemonNewsMassOutbreak(); break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); - CopyEasyChatWord(gStringVar3, show->bravoTrainer.words[1]); - if (show->bravoTrainer.move) - sTVShowState = 6; - else - sTVShowState = 7; + case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE: + DoTVShowBravoTrainerPokemonProfile(); break; - case 6: - StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); - StringCopy(gStringVar2, gMoveNames[show->bravoTrainer.move]); - CopyEasyChatWord(gStringVar3, show->bravoTrainer.words[1]); - sTVShowState = 7; + case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE: + DoTVShowBravoTrainerBattleTower(); break; - case 7: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); - StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainer.species]); - TVShowDone(); + case TVSHOW_POKEMON_TODAY_CAUGHT: + DoTVShowPokemonTodaySuccessfulCapture(); break; - case 8: - StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); - sTVShowState = 2; + case TVSHOW_SMART_SHOPPER: + DoTVShowTodaysSmartShopper(); break; - } - ShowFieldMessage(sTVBravoTrainerTextGroup[state]); -} - -static void DoTVShowBravoTrainerBattleTower(void) -{ - TVShow *show; - u8 state; - - show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; - gSpecialVar_Result = FALSE; - state = sTVShowState; - switch(state) - { - case 0: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); - StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); - if (show->bravoTrainerTower.numFights >= 7) - sTVShowState = 1; - else - sTVShowState = 2; + case TVSHOW_NAME_RATER_SHOW: + DoTVShowTheNameRaterShow(); break; - case 1: - if (show->bravoTrainerTower.btLevel == 50) - { - StringCopy(gStringVar1, gText_Lv50); - } - else - { - StringCopy(gStringVar1, gText_OpenLevel); - } - TV_PrintIntToStringVar(1, show->bravoTrainerTower.numFights); - if (show->bravoTrainerTower.wonTheChallenge == TRUE) - sTVShowState = 3; - else - sTVShowState = 4; + case TVSHOW_CONTEST_LIVE_UPDATES: + DoTVShowPokemonContestLiveUpdates(); break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - TV_PrintIntToStringVar(1, show->bravoTrainerTower.numFights + 1); - if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; - else - sTVShowState = 6; + case TVSHOW_BATTLE_UPDATE: + DoTVShowPokemonBattleUpdate(); break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); - if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; - else - sTVShowState = 6; + case TVSHOW_3_CHEERS_FOR_POKEBLOCKS: + DoTVShow3CheersForPokeblocks(); break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); - if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; - else - sTVShowState = 6; + case TVSHOW_POKEMON_TODAY_FAILED: + DoTVShowPokemonTodayFailedCapture(); break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 11; + case TVSHOW_FISHING_ADVICE: + DoTVShowPokemonAngler(); break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 11; + case TVSHOW_WORLD_OF_MASTERS: + DoTVShowTheWorldOfMasters(); break; - case 7: - sTVShowState = 11; + case TVSHOW_TODAYS_RIVAL_TRAINER: + DoTVShowTodaysRivalTrainer(); break; - case 8: - case 9: - case 10: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); - sTVShowState = 11; + case TVSHOW_TREND_WATCHER: + DoTVShowDewfordTrendWatcherNetwork(); break; - case 11: - CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); - if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 12; - else - sTVShowState = 13; + case TVSHOW_TREASURE_INVESTIGATORS: + DoTVShowHoennTreasureInvestigators(); break; - case 12: - case 13: - CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); - TVShowConvertInternationalString(gStringVar2, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); - TVShowConvertInternationalString(gStringVar3, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 14; + case TVSHOW_FIND_THAT_GAMER: + DoTVShowFindThatGamer(); break; - case 14: - TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); - StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); - TVShowDone(); + case TVSHOW_BREAKING_NEWS: + DoTVShowBreakingNewsTV(); break; - } - ShowFieldMessage(sTVBravoTrainerBattleTowerTextGroup[state]); -} - -static void DoTVShowTodaysSmartShopper(void) -{ - TVShow *show; - u8 state; - - show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; - gSpecialVar_Result = FALSE; - state = sTVShowState; - switch(state) - { - case 0: - TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); - GetMapName(gStringVar2, show->smartshopperShow.shopLocation, 0); - if (show->smartshopperShow.itemAmounts[0] >= 255) - { - sTVShowState = 11; - } - else - { - sTVShowState = 1; - } + case TVSHOW_SECRET_BASE_VISIT: + DoTVShowSecretBaseVisit(); break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); - StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0])); - TV_PrintIntToStringVar(2, show->smartshopperShow.itemAmounts[0]); - sTVShowState += 1 + (Random() % 4); + case TVSHOW_LOTTO_WINNER: + DoTVShowPokemonLotteryWinnerFlashReport(); break; - case 2: - case 4: - case 5: - if (show->smartshopperShow.itemIds[1] != ITEM_NONE) - { - sTVShowState = 6; - } - else - { - sTVShowState = 10; - } + case TVSHOW_BATTLE_SEMINAR: + DoTVShowThePokemonBattleSeminar(); break; - case 3: - TV_PrintIntToStringVar(2, show->smartshopperShow.itemAmounts[0] + 1); - if (show->smartshopperShow.itemIds[1] != ITEM_NONE) - { - sTVShowState = 6; - } - else - { - sTVShowState = 10; - } + case TVSHOW_FAN_CLUB_SPECIAL: + DoTVShowTrainerFanClubSpecial(); break; - case 6: - StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[1])); - TV_PrintIntToStringVar(2, show->smartshopperShow.itemAmounts[1]); - if (show->smartshopperShow.itemIds[2] != ITEM_NONE) - { - sTVShowState = 7; - } - else if (show->smartshopperShow.priceReduced == TRUE) - { - sTVShowState = 8; - } - else - { - sTVShowState = 9; - } + case TVSHOW_TRAINER_FAN_CLUB: + DoTVShowTrainerFanClub(); break; - case 7: - StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[2])); - TV_PrintIntToStringVar(2, show->smartshopperShow.itemAmounts[2]); - if (show->smartshopperShow.priceReduced == TRUE) - { - sTVShowState = 8; - } - else - { - sTVShowState = 9; - } + case TVSHOW_CUTIES: + DoTVShowSpotTheCuties(); break; - case 8: - if (show->smartshopperShow.itemAmounts[0] >= 255) - { - sTVShowState = 12; - } - else - { - sTVShowState = 9; - } + case TVSHOW_FRONTIER: + DoTVShowPokemonNewsBattleFrontier(); break; - case 9: - sub_80EF40C(1, show); - TVShowDone(); + case TVSHOW_NUMBER_ONE: + DoTVShowWhatsNo1InHoennToday(); break; - case 10: - if (show->smartshopperShow.priceReduced == TRUE) - { - sTVShowState = 8; - } - else - { - sTVShowState = 9; - } + case TVSHOW_SECRET_BASE_SECRETS: + DoTVShowSecretBaseSecrets(); break; - case 11: - TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); - StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0])); - if (show->smartshopperShow.priceReduced == TRUE) - { - sTVShowState = 8; - } - else - { - sTVShowState = 12; - } + case TVSHOW_SAFARI_FAN_CLUB: + DoTVShowSafariFanClub(); break; - case 12: - TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); - TVShowDone(); + case TVSHOW_LILYCOVE_CONTEST_LADY: + DoTVShowLilycoveContestLady(); break; + } } - ShowFieldMessage(sTVTodaysSmartShopperTextGroup[state]); } -static void DoTVShowTheNameRaterShow(void) +static void DoTVShowBravoTrainerPokemonProfile(void) { TVShow *show; u8 state; @@ -4800,95 +4291,69 @@ static void DoTVShowTheNameRaterShow(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); - StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]); - TVShowConvertInternationalString(gStringVar3, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); - sTVShowState = TV_GetNicknameSumMod8(show) + 1; - break; - case 1: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - if (show->nameRaterShow.random == 0) - { - sTVShowState = 9; - } - else if (show->nameRaterShow.random == 1) - { - sTVShowState = 10; - } - else if (show->nameRaterShow.random == 2) - { - sTVShowState = 11; - } - break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); - if (show->nameRaterShow.random == 0) - { - sTVShowState = 9; - } - else if (show->nameRaterShow.random == 1) - { - sTVShowState = 10; - } - else if (show->nameRaterShow.random == 2) - { - sTVShowState = 11; - } - break; - case 9: - case 10: - case 11: - TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); - TV_GetNicknameSubstring(1, 0, 0, 1, 0, show); - TV_GetNicknameSubstring(2, 1, 0, 1, 0, show); - sTVShowState = 12; - break; - case 13: - TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); - TV_GetNicknameSubstring(1, 0, 2, 0, 0, show); - TV_GetNicknameSubstring(2, 0, 3, 1, 0, show); - sTVShowState = 14; - break; - case 14: - TV_GetNicknameSubstring(1, 0, 2, 1, 0, show); - TV_GetNicknameSubstring(2, 0, 3, 0, 0, show); - sTVShowState = 18; - break; - case 15: - TV_GetNicknameSubstring(0, 0, 2, 1, 0, show); - StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]); - TV_GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.species, show); - sTVShowState = 16; - break; - case 16: - TV_GetNicknameSubstring(0, 0, 2, 2, show->nameRaterShow.species, show); - TV_GetNicknameSubstring(2, 0, 3, 1, 0, show); - sTVShowState = 17; - break; - case 17: - TV_GetNicknameSubstring(0, 0, 2, 1, 0, show); - StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.randomSpecies]); - TV_GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.randomSpecies, show); - sTVShowState = 18; - break; - case 12: - state = 18; - sTVShowState = 18; - case 18: - TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); - TVShowDone(); - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); + CopyContestRankToStringVar(2, show->bravoTrainer.contestRank); + if (!StringCompare(gSpeciesNames[show->bravoTrainer.species], show->bravoTrainer.pokemonNickname)) + sTVShowState = 8; + else + sTVShowState = 1; + break; + case 1: + StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); + TVShowConvertInternationalString(gStringVar2, show->bravoTrainer.pokemonNickname, show->bravoTrainer.pokemonNameLanguage); + CopyContestCategoryToStringVar(2, show->bravoTrainer.contestCategory); + sTVShowState = 2; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + if (show->bravoTrainer.contestResult == 0) // placed first + sTVShowState = 3; + else + sTVShowState = 4; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + CopyEasyChatWord(gStringVar2, show->bravoTrainer.words[0]); + ConvertIntToDecimalString(2, show->bravoTrainer.contestResult + 1); + sTVShowState = 5; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + CopyEasyChatWord(gStringVar2, show->bravoTrainer.words[0]); + ConvertIntToDecimalString(2, show->bravoTrainer.contestResult + 1); + sTVShowState = 5; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); + CopyEasyChatWord(gStringVar3, show->bravoTrainer.words[1]); + if (show->bravoTrainer.move) + sTVShowState = 6; + else + sTVShowState = 7; + break; + case 6: + StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); + StringCopy(gStringVar2, gMoveNames[show->bravoTrainer.move]); + CopyEasyChatWord(gStringVar3, show->bravoTrainer.words[1]); + sTVShowState = 7; + break; + case 7: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language); + StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainer.species]); + TVShowDone(); + break; + case 8: + StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]); + sTVShowState = 2; + break; } - ShowFieldMessage(sTVNameRaterTextGroup[state]); + ShowFieldMessage(sTVBravoTrainerTextGroup[state]); } -static void DoTVShowPokemonTodaySuccessfulCapture(void) +static void DoTVShowBravoTrainerBattleTower(void) { TVShow *show; u8 state; @@ -4896,77 +4361,271 @@ static void DoTVShowPokemonTodaySuccessfulCapture(void) show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; gSpecialVar_Result = FALSE; state = sTVShowState; - switch (state) + switch(state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); - TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); - if (show->pokemonToday.ball == ITEM_MASTER_BALL) - { - sTVShowState = 5; - } - else - { - sTVShowState = 1; - } - break; - case 1: + case 0: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); + StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); + if (show->bravoTrainerTower.numFights >= 7) + sTVShowState = 1; + else sTVShowState = 2; - break; - case 2: - StringCopy(gStringVar2, ItemId_GetName(show->pokemonToday.ball)); - TV_PrintIntToStringVar(2, show->pokemonToday.nBallsUsed); - if (show->pokemonToday.nBallsUsed < 4) - { - sTVShowState = 3; - } - else - { - sTVShowState = 4; - } - break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); - TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); + break; + case 1: + if (show->bravoTrainerTower.btLevel == 50) + { + StringCopy(gStringVar1, gText_Lv50); + } + else + { + StringCopy(gStringVar1, gText_OpenLevel); + } + ConvertIntToDecimalString(1, show->bravoTrainerTower.numFights); + if (show->bravoTrainerTower.wonTheChallenge == TRUE) + sTVShowState = 3; + else + sTVShowState = 4; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + ConvertIntToDecimalString(1, show->bravoTrainerTower.numFights + 1); + if (show->bravoTrainerTower.interviewResponse == 0) + sTVShowState = 5; + else sTVShowState = 6; - break; - case 4: + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); + if (show->bravoTrainerTower.interviewResponse == 0) + sTVShowState = 5; + else sTVShowState = 6; - break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); + if (show->bravoTrainerTower.interviewResponse == 0) + sTVShowState = 5; + else sTVShowState = 6; - break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); - TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); - sTVShowState += 1 + (Random() % 4); - break; - case 7: - case 8: - StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]); - TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2); - TV_GetSomeOtherSpeciesAlreadySeenByPlayer_AndPrintName(2, show->pokemonToday.species); + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + sTVShowState = 11; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + sTVShowState = 11; + break; + case 7: + sTVShowState = 11; + break; + case 8: + case 9: + case 10: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); + sTVShowState = 11; + break; + case 11: + CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); + if (show->bravoTrainerTower.interviewResponse == 0) + sTVShowState = 12; + else + sTVShowState = 13; + break; + case 12: + case 13: + CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); + TVShowConvertInternationalString(gStringVar2, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); + TVShowConvertInternationalString(gStringVar3, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); + sTVShowState = 14; + break; + case 14: + TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); + StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); + TVShowDone(); + break; + } + ShowFieldMessage(sTVBravoTrainerBattleTowerTextGroup[state]); +} + +static void DoTVShowTodaysSmartShopper(void) +{ + TVShow *show; + u8 state; + + show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; + gSpecialVar_Result = FALSE; + state = sTVShowState; + switch(state) + { + case 0: + TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); + GetMapName(gStringVar2, show->smartshopperShow.shopLocation, 0); + if (show->smartshopperShow.itemAmounts[0] >= 255) sTVShowState = 11; - break; - case 9: - case 10: - StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]); - TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2); + else + sTVShowState = 1; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); + StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0])); + ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[0]); + sTVShowState += 1 + (Random() % 4); + break; + case 2: + case 4: + case 5: + if (show->smartshopperShow.itemIds[1] != ITEM_NONE) + sTVShowState = 6; + else + sTVShowState = 10; + break; + case 3: + ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[0] + 1); + if (show->smartshopperShow.itemIds[1] != ITEM_NONE) + sTVShowState = 6; + else + sTVShowState = 10; + break; + case 6: + StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[1])); + ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[1]); + if (show->smartshopperShow.itemIds[2] != ITEM_NONE) + sTVShowState = 7; + else if (show->smartshopperShow.priceReduced == TRUE) + sTVShowState = 8; + else + sTVShowState = 9; + break; + case 7: + StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[2])); + ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[2]); + if (show->smartshopperShow.priceReduced == TRUE) + sTVShowState = 8; + else + sTVShowState = 9; + break; + case 8: + if (show->smartshopperShow.itemAmounts[0] >= 255) + sTVShowState = 12; + else + sTVShowState = 9; + break; + case 9: + sub_80EF40C(1, show); + TVShowDone(); + break; + case 10: + if (show->smartshopperShow.priceReduced == TRUE) + sTVShowState = 8; + else + sTVShowState = 9; + break; + case 11: + TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); + StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0])); + if (show->smartshopperShow.priceReduced == TRUE) + sTVShowState = 8; + else + sTVShowState = 12; + break; + case 12: + TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); + TVShowDone(); + break; + } + ShowFieldMessage(sTVTodaysSmartShopperTextGroup[state]); +} + +static void DoTVShowTheNameRaterShow(void) +{ + TVShow *show; + u8 state; + + show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; + gSpecialVar_Result = FALSE; + state = sTVShowState; + switch (state) + { + case 0: + TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); + StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]); + TVShowConvertInternationalString(gStringVar3, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); + sTVShowState = GetRandomNameRaterStateFromName(show) + 1; + break; + case 1: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + if (show->nameRaterShow.random == 0) + sTVShowState = 9; + else if (show->nameRaterShow.random == 1) + sTVShowState = 10; + else if (show->nameRaterShow.random == 2) sTVShowState = 11; - break; - case 11: - TVShowDone(); - break; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); + if (show->nameRaterShow.random == 0) + sTVShowState = 9; + else if (show->nameRaterShow.random == 1) + sTVShowState = 10; + else if (show->nameRaterShow.random == 2) + sTVShowState = 11; + break; + case 9: + case 10: + case 11: + TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); + GetNicknameSubstring(1, 0, 0, 1, 0, show); + GetNicknameSubstring(2, 1, 0, 1, 0, show); + sTVShowState = 12; + break; + case 13: + TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language); + GetNicknameSubstring(1, 0, 2, 0, 0, show); + GetNicknameSubstring(2, 0, 3, 1, 0, show); + sTVShowState = 14; + break; + case 14: + GetNicknameSubstring(1, 0, 2, 1, 0, show); + GetNicknameSubstring(2, 0, 3, 0, 0, show); + sTVShowState = 18; + break; + case 15: + GetNicknameSubstring(0, 0, 2, 1, 0, show); + StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]); + GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.species, show); + sTVShowState = 16; + break; + case 16: + GetNicknameSubstring(0, 0, 2, 2, show->nameRaterShow.species, show); + GetNicknameSubstring(2, 0, 3, 1, 0, show); + sTVShowState = 17; + break; + case 17: + GetNicknameSubstring(0, 0, 2, 1, 0, show); + StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.randomSpecies]); + GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.randomSpecies, show); + sTVShowState = 18; + break; + case 12: + state = 18; + sTVShowState = 18; + case 18: + TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage); + TVShowDone(); + break; } - ShowFieldMessage(sTVPokemonTodaySuccessfulTextGroup[state]); + ShowFieldMessage(sTVNameRaterTextGroup[state]); } -static void DoTVShowPokemonTodayFailedCapture(void) +static void DoTVShowPokemonTodaySuccessfulCapture(void) { TVShow *show; u8 state; @@ -4976,99 +4635,161 @@ static void DoTVShowPokemonTodayFailedCapture(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonTodayFailed.species]); + case 0: + TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); + TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); + if (show->pokemonToday.ball == ITEM_MASTER_BALL) + sTVShowState = 5; + else sTVShowState = 1; - break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); - GetMapName(gStringVar2, show->pokemonTodayFailed.location, 0); - StringCopy(gStringVar3, gSpeciesNames[show->pokemonTodayFailed.species2]); - if (show->pokemonTodayFailed.outcome == 1) - { - sTVShowState = 3; - } - else - { - sTVShowState = 2; - } - break; - case 2: - case 3: - TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); - TV_PrintIntToStringVar(1, show->pokemonTodayFailed.nBallsUsed); - if (Random() % 3 == 0) - { - sTVShowState = 5; - } - else - { - sTVShowState = 4; - } - break; - case 4: - case 5: - TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); - sTVShowState = 6; - break; - case 6: - TVShowDone(); - break; + break; + case 1: + sTVShowState = 2; + break; + case 2: + StringCopy(gStringVar2, ItemId_GetName(show->pokemonToday.ball)); + ConvertIntToDecimalString(2, show->pokemonToday.nBallsUsed); + if (show->pokemonToday.nBallsUsed < 4) + sTVShowState = 3; + else + sTVShowState = 4; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); + TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); + sTVShowState = 6; + break; + case 4: + sTVShowState = 6; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); + sTVShowState = 6; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]); + TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2); + sTVShowState += 1 + (Random() % 4); + break; + case 7: + case 8: + StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]); + TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2); + GetRandomDifferentSpeciesAndNameSeenByPlayer(2, show->pokemonToday.species); + sTVShowState = 11; + break; + case 9: + case 10: + StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]); + TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2); + sTVShowState = 11; + break; + case 11: + TVShowDone(); + break; } - ShowFieldMessage(sTVPokemonTodayFailedTextGroup[state]); + ShowFieldMessage(sTVPokemonTodaySuccessfulTextGroup[state]); } -static void DoTVShowPokemonFanClubLetter(void) +static void DoTVShowPokemonTodayFailedCapture(void) { TVShow *show; u8 state; - u16 rval; show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; gSpecialVar_Result = FALSE; state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->fanclubLetter.playerName, show->fanclubLetter.language); - StringCopy(gStringVar2, gSpeciesNames[show->fanclubLetter.species]); - sTVShowState = 50; - break; - case 1: - rval = (Random() % 4) + 1; - if (rval == 1) - sTVShowState = 2; - else - sTVShowState = rval + 2; - break; - case 2: - sTVShowState = 51; - break; - case 3: - sTVShowState += (Random() % 3) + 1; - break; - case 4: - case 5: - case 6: - TV_FanClubLetter_RandomWordToStringVar3(show); - sTVShowState = 7; - break; - case 7: - rval = (Random() % 0x1f) + 0x46; - TV_PrintIntToStringVar(2, rval); - TVShowDone(); - break; - case 50: - ConvertEasyChatWordsToString(gStringVar4, show->fanclubLetter.words, 2, 2); - ShowFieldMessage(gStringVar4); - sTVShowState = 1; - return; - case 51: - ConvertEasyChatWordsToString(gStringVar4, show->fanclubLetter.words, 2, 2); - ShowFieldMessage(gStringVar4); + case 0: + TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonTodayFailed.species]); + sTVShowState = 1; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); + GetMapName(gStringVar2, show->pokemonTodayFailed.location, 0); + StringCopy(gStringVar3, gSpeciesNames[show->pokemonTodayFailed.species2]); + if (show->pokemonTodayFailed.outcome == 1) sTVShowState = 3; - return; + else + sTVShowState = 2; + break; + case 2: + case 3: + TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); + ConvertIntToDecimalString(1, show->pokemonTodayFailed.nBallsUsed); + if (Random() % 3 == 0) + sTVShowState = 5; + else + sTVShowState = 4; + break; + case 4: + case 5: + TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language); + sTVShowState = 6; + break; + case 6: + TVShowDone(); + break; + } + ShowFieldMessage(sTVPokemonTodayFailedTextGroup[state]); +} + +static void DoTVShowPokemonFanClubLetter(void) +{ + TVShow *show; + u8 state; + u16 rval; + + show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; + gSpecialVar_Result = FALSE; + state = sTVShowState; + switch (state) + { + case 0: + TVShowConvertInternationalString(gStringVar1, show->fanclubLetter.playerName, show->fanclubLetter.language); + StringCopy(gStringVar2, gSpeciesNames[show->fanclubLetter.species]); + sTVShowState = 50; + break; + case 1: + rval = (Random() % 4) + 1; + if (rval == 1) + sTVShowState = 2; + else + sTVShowState = rval + 2; + break; + case 2: + sTVShowState = 51; + break; + case 3: + sTVShowState += (Random() % 3) + 1; + break; + case 4: + case 5: + case 6: + GetRandomWordFromShow(show); + sTVShowState = 7; + break; + case 7: + rval = (Random() % 0x1f) + 0x46; + ConvertIntToDecimalString(2, rval); + TVShowDone(); + break; + case 50: + ConvertEasyChatWordsToString(gStringVar4, show->fanclubLetter.words, 2, 2); + ShowFieldMessage(gStringVar4); + sTVShowState = 1; + return; + case 51: + ConvertEasyChatWordsToString(gStringVar4, show->fanclubLetter.words, 2, 2); + ShowFieldMessage(gStringVar4); + sTVShowState = 3; + return; } ShowFieldMessage(sTVFanClubTextGroup[state]); } @@ -5083,27 +4804,27 @@ static void DoTVShowRecentHappenings(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->recentHappenings.playerName, show->recentHappenings.language); - TV_FanClubLetter_RandomWordToStringVar3(show); - sTVShowState = 50; - break; - case 1: - sTVShowState += 1 + (Random() % 3); - break; - case 2: - case 3: - case 4: - sTVShowState = 5; - break; - case 5: - TVShowDone(); - break; - case 50: - ConvertEasyChatWordsToString(gStringVar4, show->recentHappenings.words, 2, 2); - ShowFieldMessage(gStringVar4); - sTVShowState = 1; - return; + case 0: + TVShowConvertInternationalString(gStringVar1, show->recentHappenings.playerName, show->recentHappenings.language); + GetRandomWordFromShow(show); + sTVShowState = 50; + break; + case 1: + sTVShowState += 1 + (Random() % 3); + break; + case 2: + case 3: + case 4: + sTVShowState = 5; + break; + case 5: + TVShowDone(); + break; + case 50: + ConvertEasyChatWordsToString(gStringVar4, show->recentHappenings.words, 2, 2); + ShowFieldMessage(gStringVar4); + sTVShowState = 1; + return; } ShowFieldMessage(sTVRecentHappeninssTextGroup[state]); } @@ -5118,25 +4839,25 @@ static void DoTVShowPokemonFanClubOpinions(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); - StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]); - TVShowConvertInternationalString(gStringVar3, show->fanclubOpinions.nickname, show->fanclubOpinions.pokemonNameLanguage); - sTVShowState = show->fanclubOpinions.questionAsked + 1; - break; - case 1: - case 2: - case 3: - TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); - StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]); - CopyEasyChatWord(gStringVar3, show->fanclubOpinions.words[0]); - sTVShowState = 4; - break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); - CopyEasyChatWord(gStringVar3, show->fanclubOpinions.words[1]); - TVShowDone(); - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); + StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]); + TVShowConvertInternationalString(gStringVar3, show->fanclubOpinions.nickname, show->fanclubOpinions.pokemonNameLanguage); + sTVShowState = show->fanclubOpinions.questionAsked + 1; + break; + case 1: + case 2: + case 3: + TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); + StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]); + CopyEasyChatWord(gStringVar3, show->fanclubOpinions.words[0]); + sTVShowState = 4; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language); + CopyEasyChatWord(gStringVar3, show->fanclubOpinions.words[1]); + TVShowDone(); + break; } ShowFieldMessage(sTVFanClubOpinionsTextGroup[state]); } @@ -5181,13 +4902,9 @@ static void DoTVShowPokemonContestLiveUpdates(void) if (show->contestLiveUpdates.round1Placing == show->contestLiveUpdates.round2Placing) { if (show->contestLiveUpdates.round1Placing == 0) - { sTVShowState = CONTESTLIVE_STATE_WON_BOTH_ROUNDS; - } else - { sTVShowState = CONTESTLIVE_STATE_EQUAL_ROUNDS; - } } else if (show->contestLiveUpdates.round1Placing > show->contestLiveUpdates.round2Placing) { @@ -5520,64 +5237,64 @@ static void DoTVShowPokemonBattleUpdate(void) state = sTVShowState; switch (state) { + case 0: + switch (show->battleUpdate.battleType) + { case 0: - switch (show->battleUpdate.battleType) - { - case 0: - case 1: - sTVShowState = 1; - break; - case 2: - sTVShowState = 5; - break; - } - break; case 1: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); - if (show->battleUpdate.battleType == 0) - { - StringCopy(gStringVar3, gText_Single); - } - else - { - StringCopy(gStringVar3, gText_Double); - } - sTVShowState = 2; + sTVShowState = 1; break; case 2: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]); - StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]); - sTVShowState = 3; - break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); - StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesOpponent]); - sTVShowState = 4; - break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); - TVShowDone(); - break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); - sTVShowState = 6; - break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]); - StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]); - sTVShowState = 7; - break; - case 7: - TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); - TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); - StringCopy(gStringVar3, gSpeciesNames[show->battleUpdate.speciesOpponent]); - TVShowDone(); + sTVShowState = 5; break; + } + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); + if (show->battleUpdate.battleType == 0) + { + StringCopy(gStringVar3, gText_Single); + } + else + { + StringCopy(gStringVar3, gText_Double); + } + sTVShowState = 2; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]); + StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]); + sTVShowState = 3; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); + StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesOpponent]); + sTVShowState = 4; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); + TVShowDone(); + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); + sTVShowState = 6; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]); + StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]); + sTVShowState = 7; + break; + case 7: + TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language); + TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage); + StringCopy(gStringVar3, gSpeciesNames[show->battleUpdate.speciesOpponent]); + TVShowDone(); + break; } ShowFieldMessage(sTVPokemonBattleUpdateTextGroup[state]); } @@ -5592,95 +5309,88 @@ static void DoTVShow3CheersForPokeblocks(void) state = sTVShowState; switch (state) { + case 0: + TVShowConvertInternationalString(gStringVar1, show->threeCheers.playerName, show->threeCheers.language); + if (show->threeCheers.sheen > 20) + sTVShowState = 1; + else + sTVShowState = 3; + break; + case 1: + switch (show->threeCheers.flavor) + { case 0: - TVShowConvertInternationalString(gStringVar1, show->threeCheers.playerName, show->threeCheers.language); - if (show->threeCheers.sheen > 20) - { - sTVShowState = 1; - } - else - { - sTVShowState = 3; - } + StringCopy(gStringVar1, gText_Spicy2); break; case 1: - switch (show->threeCheers.flavor) - { - case 0: - StringCopy(gStringVar1, gText_Spicy2); - break; - case 1: - StringCopy(gStringVar1, gText_Dry2); - break; - case 2: - StringCopy(gStringVar1, gText_Sweet2); - break; - case 3: - StringCopy(gStringVar1, gText_Bitter2); - break; - case 4: - StringCopy(gStringVar1, gText_Sour2); - break; - } - if (show->threeCheers.sheen > 24) - { - StringCopy(gStringVar2, gText_Excellent); - } else if (show->threeCheers.sheen > 22) - { - StringCopy(gStringVar2, gText_VeryGood); - } - else - { - StringCopy(gStringVar2, gText_Good); - } - TVShowConvertInternationalString(gStringVar3, show->threeCheers.playerName, show->threeCheers.language); - sTVShowState = 2; + StringCopy(gStringVar1, gText_Dry2); break; case 2: - TVShowConvertInternationalString(gStringVar1, show->threeCheers.worstBlenderName, show->threeCheers.worstBlenderLanguage); - sTVShowState = 5; + StringCopy(gStringVar1, gText_Sweet2); break; case 3: - switch (show->threeCheers.flavor) - { - case 0: - StringCopy(gStringVar1, gText_Spicy2); - break; - case 1: - StringCopy(gStringVar1, gText_Dry2); - break; - case 2: - StringCopy(gStringVar1, gText_Sweet2); - break; - case 3: - StringCopy(gStringVar1, gText_Bitter2); - break; - case 4: - StringCopy(gStringVar1, gText_Sour2); - break; - } - if (show->threeCheers.sheen > 16) - { - StringCopy(gStringVar2, gText_SoSo); - } else if (show->threeCheers.sheen > 13) - { - StringCopy(gStringVar2, gText_Bad); - } - else - { - StringCopy(gStringVar2, gText_TheWorst); - } - TVShowConvertInternationalString(gStringVar3, show->threeCheers.playerName, show->threeCheers.language); - sTVShowState = 4; + StringCopy(gStringVar1, gText_Bitter2); break; case 4: - TVShowConvertInternationalString(gStringVar1, show->threeCheers.worstBlenderName, show->threeCheers.worstBlenderLanguage); - TVShowConvertInternationalString(gStringVar2, show->threeCheers.playerName, show->threeCheers.language); - sTVShowState = 5; + StringCopy(gStringVar1, gText_Sour2); break; - case 5: - TVShowDone(); + } + if (show->threeCheers.sheen > 24) + { + StringCopy(gStringVar2, gText_Excellent); + } else if (show->threeCheers.sheen > 22) + { + StringCopy(gStringVar2, gText_VeryGood); + } + else + { + StringCopy(gStringVar2, gText_Good); + } + TVShowConvertInternationalString(gStringVar3, show->threeCheers.playerName, show->threeCheers.language); + sTVShowState = 2; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->threeCheers.worstBlenderName, show->threeCheers.worstBlenderLanguage); + sTVShowState = 5; + break; + case 3: + switch (show->threeCheers.flavor) + { + case 0: + StringCopy(gStringVar1, gText_Spicy2); + break; + case 1: + StringCopy(gStringVar1, gText_Dry2); + break; + case 2: + StringCopy(gStringVar1, gText_Sweet2); + break; + case 3: + StringCopy(gStringVar1, gText_Bitter2); + break; + case 4: + StringCopy(gStringVar1, gText_Sour2); break; + } + + if (show->threeCheers.sheen > 16) + StringCopy(gStringVar2, gText_SoSo); + else if (show->threeCheers.sheen > 13) + StringCopy(gStringVar2, gText_Bad); + else + StringCopy(gStringVar2, gText_TheWorst); + + TVShowConvertInternationalString(gStringVar3, show->threeCheers.playerName, show->threeCheers.language); + sTVShowState = 4; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->threeCheers.worstBlenderName, show->threeCheers.worstBlenderLanguage); + TVShowConvertInternationalString(gStringVar2, show->threeCheers.playerName, show->threeCheers.language); + sTVShowState = 5; + break; + case 5: + TVShowDone(); + break; } ShowFieldMessage(sTV3CheersForPokeblocksTextGroup[state]); } @@ -5693,62 +5403,48 @@ void DoTVShowInSearchOfTrainers(void) state = sTVShowState; switch (state) { - case 0: - GetMapName(gStringVar1, gSaveBlock1Ptr->gabbyAndTyData.mapnum, 0); - if (gSaveBlock1Ptr->gabbyAndTyData.battleNum > 1) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } - break; - case 1: + case 0: + GetMapName(gStringVar1, gSaveBlock1Ptr->gabbyAndTyData.mapnum, 0); + if (gSaveBlock1Ptr->gabbyAndTyData.battleNum > 1) + sTVShowState = 1; + else sTVShowState = 2; - break; - case 2: - if (!gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn) - { - sTVShowState = 4; - } - else if (gSaveBlock1Ptr->gabbyAndTyData.playerThrewABall) - { - sTVShowState = 5; - } - else if (gSaveBlock1Ptr->gabbyAndTyData.playerUsedHealingItem) - { - sTVShowState = 6; - } - else if (gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon) - { - sTVShowState = 7; - } - else - { - sTVShowState = 3; - } - break; - case 3: - StringCopy(gStringVar1, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]); - StringCopy(gStringVar2, gMoveNames[gSaveBlock1Ptr->gabbyAndTyData.lastMove]); - StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]); - sTVShowState = 8; - break; - case 4: - case 5: - case 6: - case 7: - sTVShowState = 8; - break; - case 8: - CopyEasyChatWord(gStringVar1, gSaveBlock1Ptr->gabbyAndTyData.quote[0]); - StringCopy(gStringVar2, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]); - StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]); - gSpecialVar_Result = TRUE; - sTVShowState = 0; - TakeTVShowInSearchOfTrainersOffTheAir(); - break; + break; + case 1: + sTVShowState = 2; + break; + case 2: + if (!gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn) + sTVShowState = 4; + else if (gSaveBlock1Ptr->gabbyAndTyData.playerThrewABall) + sTVShowState = 5; + else if (gSaveBlock1Ptr->gabbyAndTyData.playerUsedHealingItem) + sTVShowState = 6; + else if (gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon) + sTVShowState = 7; + else + sTVShowState = 3; + break; + case 3: + StringCopy(gStringVar1, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]); + StringCopy(gStringVar2, gMoveNames[gSaveBlock1Ptr->gabbyAndTyData.lastMove]); + StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]); + sTVShowState = 8; + break; + case 4: + case 5: + case 6: + case 7: + sTVShowState = 8; + break; + case 8: + CopyEasyChatWord(gStringVar1, gSaveBlock1Ptr->gabbyAndTyData.quote[0]); + StringCopy(gStringVar2, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]); + StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]); + gSpecialVar_Result = TRUE; + sTVShowState = 0; + TakeGabbyAndTyOffTheAir(); + break; } ShowFieldMessage(sTVInSearchOfTrainersTextGroup[state]); } @@ -5761,28 +5457,24 @@ static void DoTVShowPokemonAngler(void) show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; gSpecialVar_Result = FALSE; if (show->pokemonAngler.nBites < show->pokemonAngler.nFails) - { sTVShowState = 0; - } else - { sTVShowState = 1; - } state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]); - TV_PrintIntToStringVar(2, show->pokemonAngler.nFails); - TVShowDone(); - break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language); - StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]); - TV_PrintIntToStringVar(2, show->pokemonAngler.nBites); - TVShowDone(); - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]); + ConvertIntToDecimalString(2, show->pokemonAngler.nFails); + TVShowDone(); + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language); + StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]); + ConvertIntToDecimalString(2, show->pokemonAngler.nBites); + TVShowDone(); + break; } ShowFieldMessage(sTVPokemonAnslerTextGroup[state]); } @@ -5797,22 +5489,22 @@ static void DoTVShowTheWorldOfMasters(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->worldOfMasters.playerName, show->worldOfMasters.language); - TV_PrintIntToStringVar(1, show->worldOfMasters.steps); - TV_PrintIntToStringVar(2, show->worldOfMasters.numPokeCaught); - sTVShowState = 1; - break; - case 1: - StringCopy(gStringVar1, gSpeciesNames[show->worldOfMasters.species]); - sTVShowState = 2; - break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->worldOfMasters.playerName, show->worldOfMasters.language); - GetMapName(gStringVar2, show->worldOfMasters.location, 0); - StringCopy(gStringVar3, gSpeciesNames[show->worldOfMasters.caughtPoke]); - TVShowDone(); - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->worldOfMasters.playerName, show->worldOfMasters.language); + ConvertIntToDecimalString(1, show->worldOfMasters.steps); + ConvertIntToDecimalString(2, show->worldOfMasters.numPokeCaught); + sTVShowState = 1; + break; + case 1: + StringCopy(gStringVar1, gSpeciesNames[show->worldOfMasters.species]); + sTVShowState = 2; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->worldOfMasters.playerName, show->worldOfMasters.language); + GetMapName(gStringVar2, show->worldOfMasters.location, 0); + StringCopy(gStringVar3, gSpeciesNames[show->worldOfMasters.caughtPoke]); + TVShowDone(); + break; } ShowFieldMessage(sTVWorldOfMastersTextGroup[state]); } @@ -5827,143 +5519,111 @@ static void DoTVShowTodaysRivalTrainer(void) state = sTVShowState; switch (state) { - case 0: - switch (show->rivalTrainer.location) - { - default: - sTVShowState = 7; - break; - case MAPSEC_SECRET_BASE: - sTVShowState = 8; - break; - case MAPSEC_DYNAMIC: - switch (show->rivalTrainer.mapLayoutId) - { - case LAYOUT_SS_TIDAL_CORRIDOR: - case LAYOUT_SS_TIDAL_LOWER_DECK: - case LAYOUT_SS_TIDAL_ROOMS: - sTVShowState = 10; - break; - default: - sTVShowState = 9; - break; - } - break; - } - break; - case 7: - TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); - TV_PrintIntToStringVar(1, show->rivalTrainer.dexCount); - GetMapName(gStringVar3, show->rivalTrainer.location, 0); - if (show->rivalTrainer.badgeCount != 0) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } - break; - case 8: - TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); - TV_PrintIntToStringVar(1, show->rivalTrainer.dexCount); - if (show->rivalTrainer.badgeCount != 0) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } - break; - case 9: - TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); - TV_PrintIntToStringVar(1, show->rivalTrainer.dexCount); - if (show->rivalTrainer.badgeCount != 0) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } - break; - case 10: - TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); - TV_PrintIntToStringVar(1, show->rivalTrainer.dexCount); - if (show->rivalTrainer.badgeCount != 0) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } + case 0: + switch (show->rivalTrainer.location) + { + default: + sTVShowState = 7; break; - case 1: - TV_PrintIntToStringVar(0, show->rivalTrainer.badgeCount); - if (FlagGet(FLAG_LANDMARK_BATTLE_FRONTIER)) - { - if (show->rivalTrainer.nSilverSymbols || show->rivalTrainer.nGoldSymbols) - { - sTVShowState = 4; - } - else - { - sTVShowState = 3; - } - } - else - { - sTVShowState = 6; - } + case MAPSEC_SECRET_BASE: + sTVShowState = 8; break; - case 2: - if (FlagGet(FLAG_LANDMARK_BATTLE_FRONTIER)) - { - if (show->rivalTrainer.nSilverSymbols || show->rivalTrainer.nGoldSymbols) - { - sTVShowState = 4; - } - else - { - sTVShowState = 3; - } - } - else + case MAPSEC_DYNAMIC: + switch (show->rivalTrainer.mapLayoutId) { - sTVShowState = 6; + case LAYOUT_SS_TIDAL_CORRIDOR: + case LAYOUT_SS_TIDAL_LOWER_DECK: + case LAYOUT_SS_TIDAL_ROOMS: + sTVShowState = 10; + break; + default: + sTVShowState = 9; + break; } break; - case 3: - if (show->rivalTrainer.battlePoints == 0) - { - sTVShowState = 6; - } + } + break; + case 7: + TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); + ConvertIntToDecimalString(1, show->rivalTrainer.dexCount); + GetMapName(gStringVar3, show->rivalTrainer.location, 0); + if (show->rivalTrainer.badgeCount != 0) + sTVShowState = 1; + else + sTVShowState = 2; + break; + case 8: + TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); + ConvertIntToDecimalString(1, show->rivalTrainer.dexCount); + if (show->rivalTrainer.badgeCount != 0) + sTVShowState = 1; + else + sTVShowState = 2; + break; + case 9: + TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); + ConvertIntToDecimalString(1, show->rivalTrainer.dexCount); + if (show->rivalTrainer.badgeCount != 0) + sTVShowState = 1; + else + sTVShowState = 2; + break; + case 10: + TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); + ConvertIntToDecimalString(1, show->rivalTrainer.dexCount); + if (show->rivalTrainer.badgeCount != 0) + sTVShowState = 1; + else + sTVShowState = 2; + break; + case 1: + ConvertIntToDecimalString(0, show->rivalTrainer.badgeCount); + if (FlagGet(FLAG_LANDMARK_BATTLE_FRONTIER)) + { + if (show->rivalTrainer.nSilverSymbols || show->rivalTrainer.nGoldSymbols) + sTVShowState = 4; else - { - sTVShowState = 5; - } - break; - case 4: - TV_PrintIntToStringVar(0, show->rivalTrainer.nGoldSymbols); - TV_PrintIntToStringVar(1, show->rivalTrainer.nSilverSymbols); - if (show->rivalTrainer.battlePoints == 0) - { - sTVShowState = 6; - } + sTVShowState = 3; + } + else + { + sTVShowState = 6; + } + break; + case 2: + if (FlagGet(FLAG_LANDMARK_BATTLE_FRONTIER)) + { + if (show->rivalTrainer.nSilverSymbols || show->rivalTrainer.nGoldSymbols) + sTVShowState = 4; else - { - sTVShowState = 5; - } - break; - case 5: - TV_PrintIntToStringVar(0, show->rivalTrainer.battlePoints); + sTVShowState = 3; + } + else + { sTVShowState = 6; - break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); - TVShowDone(); + } + break; + case 3: + if (show->rivalTrainer.battlePoints == 0) + sTVShowState = 6; + else + sTVShowState = 5; + break; + case 4: + ConvertIntToDecimalString(0, show->rivalTrainer.nGoldSymbols); + ConvertIntToDecimalString(1, show->rivalTrainer.nSilverSymbols); + if (show->rivalTrainer.battlePoints == 0) + sTVShowState = 6; + else + sTVShowState = 5; + break; + case 5: + ConvertIntToDecimalString(0, show->rivalTrainer.battlePoints); + sTVShowState = 6; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->rivalTrainer.playerName, show->rivalTrainer.language); + TVShowDone(); } ShowFieldMessage(sTVTodaysRivalTrainerTextGroup[state]); } @@ -6026,38 +5686,38 @@ static void DoTVShowHoennTreasureInvestigators(void) state = sTVShowState; switch (state) { - case 0: - StringCopy(gStringVar1, ItemId_GetName(show->treasureInvestigators.item)); - if (show->treasureInvestigators.location == MAPSEC_DYNAMIC) - { - switch (show->treasureInvestigators.mapLayoutId) - { - case LAYOUT_SS_TIDAL_CORRIDOR: - case LAYOUT_SS_TIDAL_LOWER_DECK: - case LAYOUT_SS_TIDAL_ROOMS: - sTVShowState = 2; - break; - default: - sTVShowState = 1; - break; - } - } - else + case 0: + StringCopy(gStringVar1, ItemId_GetName(show->treasureInvestigators.item)); + if (show->treasureInvestigators.location == MAPSEC_DYNAMIC) + { + switch (show->treasureInvestigators.mapLayoutId) { + case LAYOUT_SS_TIDAL_CORRIDOR: + case LAYOUT_SS_TIDAL_LOWER_DECK: + case LAYOUT_SS_TIDAL_ROOMS: + sTVShowState = 2; + break; + default: sTVShowState = 1; + break; } - break; - case 1: - StringCopy(gStringVar1, ItemId_GetName(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)); - TVShowConvertInternationalString(gStringVar2, show->treasureInvestigators.playerName, show->treasureInvestigators.language); - TVShowDone(); - break; + } + else + { + sTVShowState = 1; + } + break; + case 1: + StringCopy(gStringVar1, ItemId_GetName(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)); + TVShowConvertInternationalString(gStringVar2, show->treasureInvestigators.playerName, show->treasureInvestigators.language); + TVShowDone(); + break; } ShowFieldMessage(sTVHoennTreasureInvestisatorsTextGroup[state]); } @@ -6072,66 +5732,62 @@ static void DoTVShowFindThatGamer(void) state = sTVShowState; switch (state) { + case 0: + TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); + switch (show->findThatGamer.whichGame) + { case 0: - TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); - switch (show->findThatGamer.whichGame) - { - case 0: - StringCopy(gStringVar2, gText_Slots); - break; - case 1: - StringCopy(gStringVar2, gText_Roulette); - break; - } - if (show->findThatGamer.won == TRUE) - { - sTVShowState = 1; - } - else - { - sTVShowState = 2; - } + StringCopy(gStringVar2, gText_Slots); break; case 1: - TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); - switch (show->findThatGamer.whichGame) - { - case 0: - StringCopy(gStringVar2, gText_Slots); - break; - case 1: - StringCopy(gStringVar2, gText_Roulette); - break; - } - TV_PrintIntToStringVar(2, show->findThatGamer.nCoins); - TVShowDone(); break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); - switch (show->findThatGamer.whichGame) - { - case 0: - StringCopy(gStringVar2, gText_Slots); - break; - case 1: - StringCopy(gStringVar2, gText_Roulette); - break; - } - TV_PrintIntToStringVar(2, show->findThatGamer.nCoins); - sTVShowState = 3; + StringCopy(gStringVar2, gText_Roulette); break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); - switch (show->findThatGamer.whichGame) - { - case 0: - StringCopy(gStringVar2, gText_Roulette); - break; - case 1: - StringCopy(gStringVar2, gText_Slots); - break; - } - TVShowDone(); + } + if (show->findThatGamer.won == TRUE) + sTVShowState = 1; + else + sTVShowState = 2; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); + switch (show->findThatGamer.whichGame) + { + case 0: + StringCopy(gStringVar2, gText_Slots); + break; + case 1: + StringCopy(gStringVar2, gText_Roulette); + break; + } + ConvertIntToDecimalString(2, show->findThatGamer.nCoins); + TVShowDone(); break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); + switch (show->findThatGamer.whichGame) + { + case 0: + StringCopy(gStringVar2, gText_Slots); + break; + case 1: + StringCopy(gStringVar2, gText_Roulette); + break; + } + ConvertIntToDecimalString(2, show->findThatGamer.nCoins); + sTVShowState = 3; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->findThatGamer.playerName, show->findThatGamer.language); + switch (show->findThatGamer.whichGame) + { + case 0: + StringCopy(gStringVar2, gText_Roulette); break; + case 1: + StringCopy(gStringVar2, gText_Slots); + break; + } + TVShowDone(); + break; } ShowFieldMessage(sTVFindThatGamerTextGroup[state]); } @@ -6146,95 +5802,87 @@ static void DoTVShowBreakingNewsTV(void) state = sTVShowState; switch (state) { - case 0: - if (show->breakingNews.outcome == 0) - { - sTVShowState = 1; - } - else - { - sTVShowState = 5; - } - break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - GetMapName(gStringVar3, show->breakingNews.location, 0); - sTVShowState = 2; - break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); - sTVShowState = 3; - break; - case 3: - TV_PrintIntToStringVar(0, show->breakingNews.balls); - StringCopy(gStringVar2, ItemId_GetName(show->breakingNews.caughtMonBall)); - sTVShowState = 4; - break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - GetMapName(gStringVar2, show->breakingNews.location, 0); - TVShowDone(); - break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - GetMapName(gStringVar3, show->breakingNews.location, 0); - sTVShowState = 6; - break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); - switch (show->breakingNews.outcome) - { - case 1: - if (show->breakingNews.lastUsedMove == MOVE_NONE) - { - sTVShowState = 12; - } - else - { - sTVShowState = 7; - } - break; - case 2: - sTVShowState = 9; - break; - case 3: - sTVShowState = 10; - break; - } - break; - case 7: - StringCopy(gStringVar1, gMoveNames[show->breakingNews.lastUsedMove]); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.poke1Species]); - sTVShowState = 8; - break; - case 12: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); - sTVShowState = 8; - break; - case 8: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - GetMapName(gStringVar2, show->breakingNews.location, 0); - sTVShowState = 11; + case 0: + if (show->breakingNews.outcome == 0) + sTVShowState = 1; + else + sTVShowState = 5; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + GetMapName(gStringVar3, show->breakingNews.location, 0); + sTVShowState = 2; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); + sTVShowState = 3; + break; + case 3: + ConvertIntToDecimalString(0, show->breakingNews.balls); + StringCopy(gStringVar2, ItemId_GetName(show->breakingNews.caughtMonBall)); + sTVShowState = 4; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + GetMapName(gStringVar2, show->breakingNews.location, 0); + TVShowDone(); + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + GetMapName(gStringVar3, show->breakingNews.location, 0); + sTVShowState = 6; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); + switch (show->breakingNews.outcome) + { + case 1: + if (show->breakingNews.lastUsedMove == MOVE_NONE) + sTVShowState = 12; + else + sTVShowState = 7; break; - case 9: - case 10: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); - GetMapName(gStringVar3, show->breakingNews.location, 0); - sTVShowState = 11; + case 2: + sTVShowState = 9; break; - case 11: - TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); - TVShowDone(); + case 3: + sTVShowState = 10; break; + } + break; + case 7: + StringCopy(gStringVar1, gMoveNames[show->breakingNews.lastUsedMove]); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.poke1Species]); + sTVShowState = 8; + break; + case 12: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]); + sTVShowState = 8; + break; + case 8: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + GetMapName(gStringVar2, show->breakingNews.location, 0); + sTVShowState = 11; + break; + case 9: + case 10: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]); + GetMapName(gStringVar3, show->breakingNews.location, 0); + sTVShowState = 11; + break; + case 11: + TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language); + TVShowDone(); + break; } ShowFieldMessage(sTVBreakingNewsTextGroup[state]); } @@ -6249,88 +5897,72 @@ static void DoTVShowSecretBaseVisit(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); - if (show->secretBaseVisit.nDecorations == 0) - { - sTVShowState = 2; - } - else - { - sTVShowState = 1; - } - break; - case 1: - StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[0]].name); - if (show->secretBaseVisit.nDecorations == 1) - { - sTVShowState = 4; - } - else - { - sTVShowState = 3; - } + case 0: + TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); + if (show->secretBaseVisit.nDecorations == 0) + sTVShowState = 2; + else + sTVShowState = 1; + break; + case 1: + StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[0]].name); + if (show->secretBaseVisit.nDecorations == 1) + sTVShowState = 4; + else + sTVShowState = 3; + break; + case 3: + StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[1]].name); + switch (show->secretBaseVisit.nDecorations) + { + case 2: + sTVShowState = 7; break; case 3: - StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[1]].name); - switch (show->secretBaseVisit.nDecorations) - { - case 2: - sTVShowState = 7; - break; - case 3: - sTVShowState = 6; - break; - case 4: - sTVShowState = 5; - break; - } - break; - case 5: - StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[2]].name); - StringCopy(gStringVar3, gDecorations[show->secretBaseVisit.decorations[3]].name); - sTVShowState = 8; - break; - case 6: - StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[2]].name); - sTVShowState = 8; + sTVShowState = 6; break; - case 2: case 4: - case 7: - sTVShowState = 8; - break; - case 8: - TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); - if (show->secretBaseVisit.avgLevel < 25) - { - sTVShowState = 12; - } - else if (show->secretBaseVisit.avgLevel < 50) - { - sTVShowState = 11; - } - else if (show->secretBaseVisit.avgLevel < 70) - { - sTVShowState = 10; - } - else - { - sTVShowState = 9; - } - break; - case 9: - case 10: - case 11: - case 12: - TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); - StringCopy(gStringVar2, gSpeciesNames[show->secretBaseVisit.species]); - StringCopy(gStringVar3, gMoveNames[show->secretBaseVisit.move]); - sTVShowState = 13; - break; - case 13: - TVShowDone(); + sTVShowState = 5; break; + } + break; + case 5: + StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[2]].name); + StringCopy(gStringVar3, gDecorations[show->secretBaseVisit.decorations[3]].name); + sTVShowState = 8; + break; + case 6: + StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[2]].name); + sTVShowState = 8; + break; + case 2: + case 4: + case 7: + sTVShowState = 8; + break; + case 8: + TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); + if (show->secretBaseVisit.avgLevel < 25) + sTVShowState = 12; + else if (show->secretBaseVisit.avgLevel < 50) + sTVShowState = 11; + else if (show->secretBaseVisit.avgLevel < 70) + sTVShowState = 10; + else + sTVShowState = 9; + break; + case 9: + case 10: + case 11: + case 12: + TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); + StringCopy(gStringVar2, gSpeciesNames[show->secretBaseVisit.species]); + StringCopy(gStringVar3, gMoveNames[show->secretBaseVisit.move]); + sTVShowState = 13; + break; + case 13: + TVShowDone(); + break; } ShowFieldMessage(sTVSecretBaseVisitTextGroup[state]); } @@ -6375,56 +6007,56 @@ static void DoTVShowThePokemonBattleSeminar(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language); - StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.species]); - StringCopy(gStringVar3, gSpeciesNames[show->battleSeminar.foeSpecies]); - sTVShowState = 1; - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language); + StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.species]); + StringCopy(gStringVar3, gSpeciesNames[show->battleSeminar.foeSpecies]); + sTVShowState = 1; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language); + StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.foeSpecies]); + StringCopy(gStringVar3, gMoveNames[show->battleSeminar.move]); + sTVShowState = 2; + break; + case 2: + StringCopy(gStringVar1, gSpeciesNames[show->battleSeminar.species]); + switch (show->battleSeminar.nOtherMoves) + { case 1: - TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language); - StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.foeSpecies]); - StringCopy(gStringVar3, gMoveNames[show->battleSeminar.move]); - sTVShowState = 2; + sTVShowState = 5; break; case 2: - StringCopy(gStringVar1, gSpeciesNames[show->battleSeminar.species]); - switch (show->battleSeminar.nOtherMoves) - { - case 1: - sTVShowState = 5; - break; - case 2: - sTVShowState = 4; - break; - case 3: - sTVShowState = 3; - break; - default: - sTVShowState = 6; - break; - } + sTVShowState = 4; break; case 3: - StringCopy(gStringVar1, gMoveNames[show->battleSeminar.otherMoves[0]]); - StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[1]]); - StringCopy(gStringVar3, gMoveNames[show->battleSeminar.otherMoves[2]]); - sTVShowState = 6; - break; - case 4: - StringCopy(gStringVar1, gMoveNames[show->battleSeminar.otherMoves[0]]); - StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[1]]); - sTVShowState = 6; + sTVShowState = 3; break; - case 5: - StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[0]]); + default: sTVShowState = 6; break; - case 6: - StringCopy(gStringVar1, gMoveNames[show->battleSeminar.betterMove]); - StringCopy(gStringVar2, gMoveNames[show->battleSeminar.move]); - TVShowDone(); - break; + } + break; + case 3: + StringCopy(gStringVar1, gMoveNames[show->battleSeminar.otherMoves[0]]); + StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[1]]); + StringCopy(gStringVar3, gMoveNames[show->battleSeminar.otherMoves[2]]); + sTVShowState = 6; + break; + case 4: + StringCopy(gStringVar1, gMoveNames[show->battleSeminar.otherMoves[0]]); + StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[1]]); + sTVShowState = 6; + break; + case 5: + StringCopy(gStringVar2, gMoveNames[show->battleSeminar.otherMoves[0]]); + sTVShowState = 6; + break; + case 6: + StringCopy(gStringVar1, gMoveNames[show->battleSeminar.betterMove]); + StringCopy(gStringVar2, gMoveNames[show->battleSeminar.move]); + TVShowDone(); + break; } ShowFieldMessage(sTVThePokemonBattleSeminarTextGroup[state]); } @@ -6439,57 +6071,49 @@ static void DoTVShowTrainerFanClubSpecial(void) state = sTVShowState; switch (state) { - case 0: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - CopyEasyChatWord(gStringVar3, show->fanClubSpecial.words[0]); - if (show->fanClubSpecial.score >= 90) - { - sTVShowState = 1; - } - else if (show->fanClubSpecial.score >= 70) - { - sTVShowState = 2; - } - else if (show->fanClubSpecial.score >= 30) - { - sTVShowState = 3; - } - else - { - sTVShowState = 4; - } - break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - TV_PrintIntToStringVar(2, show->fanClubSpecial.score); - sTVShowState = 5; - break; - case 2: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - TV_PrintIntToStringVar(2, show->fanClubSpecial.score); - sTVShowState = 5; - break; - case 3: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - TV_PrintIntToStringVar(2, show->fanClubSpecial.score); - sTVShowState = 5; - break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - TV_PrintIntToStringVar(2, show->fanClubSpecial.score); - sTVShowState = 5; - break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); - CopyEasyChatWord(gStringVar3, show->fanClubSpecial.words[0]); - TVShowDone(); - break; + case 0: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + CopyEasyChatWord(gStringVar3, show->fanClubSpecial.words[0]); + if (show->fanClubSpecial.score >= 90) + sTVShowState = 1; + else if (show->fanClubSpecial.score >= 70) + sTVShowState = 2; + else if (show->fanClubSpecial.score >= 30) + sTVShowState = 3; + else + sTVShowState = 4; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + ConvertIntToDecimalString(2, show->fanClubSpecial.score); + sTVShowState = 5; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + ConvertIntToDecimalString(2, show->fanClubSpecial.score); + sTVShowState = 5; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + ConvertIntToDecimalString(2, show->fanClubSpecial.score); + sTVShowState = 5; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + ConvertIntToDecimalString(2, show->fanClubSpecial.score); + sTVShowState = 5; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->fanClubSpecial.idolName, show->fanClubSpecial.idolNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->fanClubSpecial.playerName, show->fanClubSpecial.language); + CopyEasyChatWord(gStringVar3, show->fanClubSpecial.words[0]); + TVShowDone(); + break; } ShowFieldMessage(sTVTrainerFanClubSpecialTextGroup[state]); } @@ -6505,78 +6129,79 @@ static void DoTVShowTrainerFanClub(void) state = sTVShowState; switch (state) { + case 0: + TVShowConvertInternationalString(gStringVar1, show->trainerFanClub.playerName, show->trainerFanClub.language); + playerId = ((show->common.trainerIdHi << 8) + show->common.trainerIdLo); + switch (playerId % 10) + { case 0: - TVShowConvertInternationalString(gStringVar1, show->trainerFanClub.playerName, show->trainerFanClub.language); - playerId = ((show->common.trainerIdHi << 8) + show->common.trainerIdLo); - switch (playerId % 10) - { - case 0: - sTVShowState = 1; - break; - case 1: - sTVShowState = 2; - break; - case 2: - sTVShowState = 3; - break; - case 3: - sTVShowState = 4; - break; - case 4: - sTVShowState = 5; - break; - case 5: - sTVShowState = 6; - break; - case 6: - sTVShowState = 7; - break; - case 7: - sTVShowState = 8; - break; - case 8: - sTVShowState = 9; - break; - case 9: - sTVShowState = 10; - break; - } + sTVShowState = 1; break; case 1: - sTVShowState = 11; + sTVShowState = 2; break; case 2: - sTVShowState = 11; + sTVShowState = 3; break; case 3: - sTVShowState = 11; + sTVShowState = 4; break; case 4: - sTVShowState = 11; + sTVShowState = 5; break; case 5: - sTVShowState = 11; + sTVShowState = 6; break; case 6: - sTVShowState = 11; + sTVShowState = 7; break; case 7: - sTVShowState = 11; + sTVShowState = 8; break; case 8: - sTVShowState = 11; + sTVShowState = 9; break; case 9: - sTVShowState = 11; - break; - case 10: - sTVShowState = 11; + sTVShowState = 10; break; - case 11: - TVShowConvertInternationalString(gStringVar1, show->trainerFanClub.playerName, show->trainerFanClub.language); - CopyEasyChatWord(gStringVar2, show->trainerFanClub.words[0]); - CopyEasyChatWord(gStringVar3, show->trainerFanClub.words[1]); - TVShowDone(); + } + break; + case 1: + sTVShowState = 11; + break; + case 2: + sTVShowState = 11; + break; + case 3: + sTVShowState = 11; + break; + case 4: + sTVShowState = 11; + break; + case 5: + sTVShowState = 11; + break; + case 6: + sTVShowState = 11; + break; + case 7: + sTVShowState = 11; + break; + case 8: + sTVShowState = 11; + break; + case 9: + sTVShowState = 11; + break; + case 10: + sTVShowState = 11; + break; + case 11: + TVShowConvertInternationalString(gStringVar1, show->trainerFanClub.playerName, show->trainerFanClub.language); + CopyEasyChatWord(gStringVar2, show->trainerFanClub.words[0]); + CopyEasyChatWord(gStringVar3, show->trainerFanClub.words[1]); + TVShowDone(); + break; } ShowFieldMessage(sTVTrainerFanClubTextGroup[state]); } @@ -6594,95 +6219,95 @@ static void DoTVShowSpotTheCuties(void) state = sTVShowState; switch (state) { - case SPOTCUTIES_STATE_INTRO: - TVShowConvertInternationalString(gStringVar1, show->cuties.playerName, show->cuties.language); - TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); + case SPOTCUTIES_STATE_INTRO: + 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 - if (show->cuties.nRibbons < 10) - sTVShowState = SPOTCUTIES_STATE_RIBBONS_LOW; - else if (show->cuties.nRibbons < 20) - sTVShowState = SPOTCUTIES_STATE_RIBBONS_MID; - else - sTVShowState = SPOTCUTIES_STATE_RIBBONS_HIGH; - break; - case SPOTCUTIES_STATE_RIBBONS_LOW: - case SPOTCUTIES_STATE_RIBBONS_MID: - case SPOTCUTIES_STATE_RIBBONS_HIGH: - TVShowConvertInternationalString(gStringVar1, show->cuties.playerName, show->cuties.language); - TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); - TV_PrintIntToStringVar(2, show->cuties.nRibbons); - sTVShowState = SPOTCUTIES_STATE_RIBBON_INTRO; - break; - case SPOTCUTIES_STATE_RIBBON_INTRO: - TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); - switch (show->cuties.selectedRibbon) - { - case CHAMPION_RIBBON: - sTVShowState = SPOTCUTIES_STATE_RIBBON_CHAMPION; - break; - case COOL_RIBBON_NORMAL: - case COOL_RIBBON_SUPER: - case COOL_RIBBON_HYPER: - case COOL_RIBBON_MASTER: - sTVShowState = SPOTCUTIES_STATE_RIBBON_COOL; - break; - case BEAUTY_RIBBON_NORMAL: - case BEAUTY_RIBBON_SUPER: - case BEAUTY_RIBBON_HYPER: - case BEAUTY_RIBBON_MASTER: - sTVShowState = SPOTCUTIES_STATE_RIBBON_BEAUTY; - break; - case CUTE_RIBBON_NORMAL: - case CUTE_RIBBON_SUPER: - case CUTE_RIBBON_HYPER: - case CUTE_RIBBON_MASTER: - sTVShowState = SPOTCUTIES_STATE_RIBBON_CUTE; - break; - case SMART_RIBBON_NORMAL: - case SMART_RIBBON_SUPER: - case SMART_RIBBON_HYPER: - case SMART_RIBBON_MASTER: - sTVShowState = SPOTCUTIES_STATE_RIBBON_SMART; - break; - case TOUGH_RIBBON_NORMAL: - case TOUGH_RIBBON_SUPER: - case TOUGH_RIBBON_HYPER: - case TOUGH_RIBBON_MASTER: - sTVShowState = SPOTCUTIES_STATE_RIBBON_TOUGH; - break; - case WINNING_RIBBON: - sTVShowState = SPOTCUTIES_STATE_RIBBON_WINNING; - break; - case VICTORY_RIBBON: - sTVShowState = SPOTCUTIES_STATE_RIBBON_VICTORY; - break; - case ARTIST_RIBBON: - sTVShowState = SPOTCUTIES_STATE_RIBBON_ARTIST; - break; - case EFFORT_RIBBON: - sTVShowState = SPOTCUTIES_STATE_RIBBON_EFFORT; - break; - // No comment is made for any of the gift ribbons. - // If the show is created for a gift ribbon - // then this state will repeat indefinitely - } - break; - case SPOTCUTIES_STATE_RIBBON_CHAMPION: - case SPOTCUTIES_STATE_RIBBON_COOL: - case SPOTCUTIES_STATE_RIBBON_BEAUTY: - case SPOTCUTIES_STATE_RIBBON_CUTE: - case SPOTCUTIES_STATE_RIBBON_SMART: - case SPOTCUTIES_STATE_RIBBON_TOUGH: - case SPOTCUTIES_STATE_RIBBON_WINNING: - case SPOTCUTIES_STATE_RIBBON_VICTORY: - case SPOTCUTIES_STATE_RIBBON_ARTIST: - case SPOTCUTIES_STATE_RIBBON_EFFORT: - TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); - sTVShowState = SPOTCUTIES_STATE_OUTRO; - break; - case SPOTCUTIES_STATE_OUTRO: - TVShowDone(); + // Comments following the intro depend on how many ribbons the pokemon has + if (show->cuties.nRibbons < 10) + sTVShowState = SPOTCUTIES_STATE_RIBBONS_LOW; + else if (show->cuties.nRibbons < 20) + sTVShowState = SPOTCUTIES_STATE_RIBBONS_MID; + else + sTVShowState = SPOTCUTIES_STATE_RIBBONS_HIGH; + break; + case SPOTCUTIES_STATE_RIBBONS_LOW: + case SPOTCUTIES_STATE_RIBBONS_MID: + case SPOTCUTIES_STATE_RIBBONS_HIGH: + TVShowConvertInternationalString(gStringVar1, show->cuties.playerName, show->cuties.language); + TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); + ConvertIntToDecimalString(2, show->cuties.nRibbons); + sTVShowState = SPOTCUTIES_STATE_RIBBON_INTRO; + break; + case SPOTCUTIES_STATE_RIBBON_INTRO: + TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); + switch (show->cuties.selectedRibbon) + { + case CHAMPION_RIBBON: + sTVShowState = SPOTCUTIES_STATE_RIBBON_CHAMPION; + break; + case COOL_RIBBON_NORMAL: + case COOL_RIBBON_SUPER: + case COOL_RIBBON_HYPER: + case COOL_RIBBON_MASTER: + sTVShowState = SPOTCUTIES_STATE_RIBBON_COOL; + break; + case BEAUTY_RIBBON_NORMAL: + case BEAUTY_RIBBON_SUPER: + case BEAUTY_RIBBON_HYPER: + case BEAUTY_RIBBON_MASTER: + sTVShowState = SPOTCUTIES_STATE_RIBBON_BEAUTY; + break; + case CUTE_RIBBON_NORMAL: + case CUTE_RIBBON_SUPER: + case CUTE_RIBBON_HYPER: + case CUTE_RIBBON_MASTER: + sTVShowState = SPOTCUTIES_STATE_RIBBON_CUTE; + break; + case SMART_RIBBON_NORMAL: + case SMART_RIBBON_SUPER: + case SMART_RIBBON_HYPER: + case SMART_RIBBON_MASTER: + sTVShowState = SPOTCUTIES_STATE_RIBBON_SMART; + break; + case TOUGH_RIBBON_NORMAL: + case TOUGH_RIBBON_SUPER: + case TOUGH_RIBBON_HYPER: + case TOUGH_RIBBON_MASTER: + sTVShowState = SPOTCUTIES_STATE_RIBBON_TOUGH; + break; + case WINNING_RIBBON: + sTVShowState = SPOTCUTIES_STATE_RIBBON_WINNING; + break; + case VICTORY_RIBBON: + sTVShowState = SPOTCUTIES_STATE_RIBBON_VICTORY; + break; + case ARTIST_RIBBON: + sTVShowState = SPOTCUTIES_STATE_RIBBON_ARTIST; + break; + case EFFORT_RIBBON: + sTVShowState = SPOTCUTIES_STATE_RIBBON_EFFORT; + break; + // No comment is made for any of the gift ribbons. + // If the show is created for a gift ribbon + // then this state will repeat indefinitely + } + break; + case SPOTCUTIES_STATE_RIBBON_CHAMPION: + case SPOTCUTIES_STATE_RIBBON_COOL: + case SPOTCUTIES_STATE_RIBBON_BEAUTY: + case SPOTCUTIES_STATE_RIBBON_CUTE: + case SPOTCUTIES_STATE_RIBBON_SMART: + case SPOTCUTIES_STATE_RIBBON_TOUGH: + case SPOTCUTIES_STATE_RIBBON_WINNING: + case SPOTCUTIES_STATE_RIBBON_VICTORY: + case SPOTCUTIES_STATE_RIBBON_ARTIST: + case SPOTCUTIES_STATE_RIBBON_EFFORT: + TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage); + sTVShowState = SPOTCUTIES_STATE_OUTRO; + break; + case SPOTCUTIES_STATE_OUTRO: + TVShowDone(); } ShowFieldMessage(sTVCutiesTextGroup[state]); } @@ -6697,140 +6322,140 @@ static void DoTVShowPokemonNewsBattleFrontier(void) state = sTVShowState; switch (state) { - case 0: - switch (show->frontier.facility) - { - case 1: - sTVShowState = 1; - break; - case 2: - sTVShowState = 2; - break; - case 3: - sTVShowState = 3; - break; - case 4: - sTVShowState = 4; - break; - case 5: - sTVShowState = 5; - break; - case 6: - sTVShowState = 6; - break; - case 7: - sTVShowState = 7; - break; - case 8: - sTVShowState = 8; - break; - case 9: - sTVShowState = 9; - break; - case 10: - sTVShowState = 10; - break; - case 11: - sTVShowState = 11; - break; - case 12: - sTVShowState = 12; - break; - case 13: - sTVShowState = 13; - break; - } - break; + case 0: + switch (show->frontier.facilityAndMode) + { case 1: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 1; break; case 2: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 16; + sTVShowState = 2; break; case 3: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 15; + sTVShowState = 3; break; case 4: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 15; + sTVShowState = 4; break; case 5: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 5; break; case 6: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 6; break; case 7: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 7; break; case 8: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 8; break; case 9: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 9; break; case 10: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 10; break; case 11: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 11; break; case 12: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; + sTVShowState = 12; break; case 13: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TV_PrintIntToStringVar(1, show->frontier.winStreak); - sTVShowState = 14; - break; - case 14: - StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); - StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); - StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]); - sTVShowState = 18; - break; - case 15: - StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); - StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); - sTVShowState = 18; - break; - case 16: - StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); - StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); - StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]); - sTVShowState = 17; - break; - case 17: - StringCopy(gStringVar1, gSpeciesNames[show->frontier.species4]); - sTVShowState = 18; - break; - case 18: - TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); - TVShowDone(); + sTVShowState = 13; break; + } + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 16; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 15; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 15; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 7: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 8: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 9: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 10: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 11: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 12: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 13: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + ConvertIntToDecimalString(1, show->frontier.winStreak); + sTVShowState = 14; + break; + case 14: + StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); + StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); + StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]); + sTVShowState = 18; + break; + case 15: + StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); + StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); + sTVShowState = 18; + break; + case 16: + StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]); + StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]); + StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]); + sTVShowState = 17; + break; + case 17: + StringCopy(gStringVar1, gSpeciesNames[show->frontier.species4]); + sTVShowState = 18; + break; + case 18: + TVShowConvertInternationalString(gStringVar1, show->frontier.playerName, show->frontier.language); + TVShowDone(); + break; } ShowFieldMessage(sTVPokemonNewsBattleFrontierTextGroup[state]); } @@ -6845,72 +6470,72 @@ static void DoTVShowWhatsNo1InHoennToday(void) state = sTVShowState; switch (state) { + case 0: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + switch (show->numberOne.actionIdx) + { case 0: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - switch (show->numberOne.actionIdx) - { - case 0: - sTVShowState = 1; - break; - case 1: - sTVShowState = 2; - break; - case 2: - sTVShowState = 3; - break; - case 3: - sTVShowState = 4; - break; - case 4: - sTVShowState = 5; - break; - case 5: - sTVShowState = 6; - break; - case 6: - sTVShowState = 7; - break; - } + sTVShowState = 1; break; case 1: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; + sTVShowState = 2; break; case 2: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; + sTVShowState = 3; break; case 3: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; + sTVShowState = 4; break; case 4: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; + sTVShowState = 5; break; case 5: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; + sTVShowState = 6; break; case 6: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; - break; - case 7: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TV_PrintIntToStringVar(1, show->numberOne.count); - sTVShowState = 8; - break; - case 8: - TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); - TVShowDone(); + sTVShowState = 7; break; + } + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 2: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 3: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 7: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + ConvertIntToDecimalString(1, show->numberOne.count); + sTVShowState = 8; + break; + case 8: + TVShowConvertInternationalString(gStringVar1, show->numberOne.playerName, show->numberOne.language); + TVShowDone(); + break; } ShowFieldMessage(sTVWhatsNo1InHoennTodayTextGroup[state]); } @@ -6920,7 +6545,7 @@ u8 SecretBaseSecrets_GetNumActionsTaken(TVShow *show) u8 i; u8 flagsSet; - for (i = 0, flagsSet = 0; i < NUM_SECRET_BASE_FLAGS; i ++) + for (i = 0, flagsSet = 0; i < NUM_SECRET_BASE_FLAGS; i++) { if ((show->secretBaseSecrets.flags >> i) & 1) flagsSet++; @@ -6933,7 +6558,7 @@ static u8 SecretBaseSecrets_GetStateByFlagNumber(TVShow *show, u8 flagId) u8 i; u8 flagsSet; - for (i = 0, flagsSet = 0; i < NUM_SECRET_BASE_FLAGS; i ++) + for (i = 0, flagsSet = 0; i < NUM_SECRET_BASE_FLAGS; i++) { if ((show->secretBaseSecrets.flags >> i) & 1) { @@ -6958,130 +6583,112 @@ static void DoTVShowSecretBaseSecrets(void) state = sTVShowState; switch (state) { - case SBSECRETS_STATE_INTRO: - TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - numActions = SecretBaseSecrets_GetNumActionsTaken(show); - if (numActions == 0) - { - sTVShowState = SBSECRETS_STATE_NOTHING_USED1; - } - else - { - show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT1; - sTVSecretBaseSecretsRandomValues[0] = Random() % numActions; - sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[0]); - } - break; - case SBSECRETS_STATE_DO_NEXT1: - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - numActions = SecretBaseSecrets_GetNumActionsTaken(show); - switch (numActions) - { - case 1: - sTVShowState = SBSECRETS_STATE_NOTHING_USED2; - break; - case 2: - show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT2; - if (sTVSecretBaseSecretsRandomValues[0] == 0) - { - sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, 1); - } - else - { - sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, 0); - } - break; - default: - for (i = 0; i < 0xFFFF; i ++) - { - sTVSecretBaseSecretsRandomValues[1] = Random() % numActions; - if (sTVSecretBaseSecretsRandomValues[1] != sTVSecretBaseSecretsRandomValues[0]) - { - break; - } - } - show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT2; - sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[1]); - break; - } + case SBSECRETS_STATE_INTRO: + TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + numActions = SecretBaseSecrets_GetNumActionsTaken(show); + if (numActions == 0) + { + sTVShowState = SBSECRETS_STATE_NOTHING_USED1; + } + else + { + show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT1; + sTVSecretBaseSecretsRandomValues[0] = Random() % numActions; + sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[0]); + } + break; + case SBSECRETS_STATE_DO_NEXT1: + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + numActions = SecretBaseSecrets_GetNumActionsTaken(show); + switch (numActions) + { + case 1: + sTVShowState = SBSECRETS_STATE_NOTHING_USED2; break; - case SBSECRETS_STATE_DO_NEXT2: - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - numActions = SecretBaseSecrets_GetNumActionsTaken(show); - if (numActions == 2) - { - sTVShowState = SBSECRETS_STATE_NOTHING_USED2; - } + case 2: + show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT2; + if (sTVSecretBaseSecretsRandomValues[0] == 0) + sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, 1); else - { - for (i = 0; i < 0xFFFF; i ++) - { - sTVSecretBaseSecretsRandomValues[2] = Random() % numActions; - if (sTVSecretBaseSecretsRandomValues[2] != sTVSecretBaseSecretsRandomValues[0] && sTVSecretBaseSecretsRandomValues[2] != sTVSecretBaseSecretsRandomValues[1]) - { - break; - } - } - show->secretBaseSecrets.savedState = SBSECRETS_STATE_TOOK_X_STEPS; - sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[2]); - } + sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, 0); break; - case SBSECRETS_STATE_TOOK_X_STEPS: - TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - TV_PrintIntToStringVar(2, show->secretBaseSecrets.stepsInBase); - if (show->secretBaseSecrets.stepsInBase <= 30) - { - sTVShowState = SBSECRETS_STATE_BASE_INTEREST_LOW; - } - else if (show->secretBaseSecrets.stepsInBase <= 100) - { - sTVShowState = SBSECRETS_STATE_BASE_INTEREST_MED; - } - else + default: + for (i = 0; i < 0xFFFF; i++) { - sTVShowState = SBSECRETS_STATE_BASE_INTEREST_HIGH; + sTVSecretBaseSecretsRandomValues[1] = Random() % numActions; + if (sTVSecretBaseSecretsRandomValues[1] != sTVSecretBaseSecretsRandomValues[0]) + break; } + show->secretBaseSecrets.savedState = SBSECRETS_STATE_DO_NEXT2; + sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[1]); break; - case SBSECRETS_STATE_BASE_INTEREST_LOW ... SBSECRETS_STATE_BASE_INTEREST_HIGH: - TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - sTVShowState = SBSECRETS_STATE_OUTRO; - break; - case SBSECRETS_STATE_OUTRO: - TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); - TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); - TVShowDone(); - break; - // All below states are descriptions of what the player interacted with while in the secret base - case SBSECRETS_STATE_NOTHING_USED1: - sTVShowState = SBSECRETS_STATE_TOOK_X_STEPS; - break; - case SBSECRETS_STATE_NOTHING_USED2: - sTVShowState = SBSECRETS_STATE_TOOK_X_STEPS; - break; - case SBSECRETS_STATE_USED_CHAIR ... SBSECRETS_STATE_USED_MUD_BALL: - sTVShowState = show->secretBaseSecrets.savedState; - break; - case SBSECRETS_STATE_USED_BAG: - StringCopy(gStringVar2, ItemId_GetName(show->secretBaseSecrets.item)); - sTVShowState = show->secretBaseSecrets.savedState; - break; - case SBSECRETS_STATE_USED_CUSHION: - // Randomly decide based on trainer ID if the player hugged or hit the cushion - if (show->common.trainerIdLo & 1) - { - sTVShowState = SBSECRETS_STATE_HUGGED_CUSHION; - } - else + } + break; + case SBSECRETS_STATE_DO_NEXT2: + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + numActions = SecretBaseSecrets_GetNumActionsTaken(show); + if (numActions == 2) + { + sTVShowState = SBSECRETS_STATE_NOTHING_USED2; + } + else + { + for (i = 0; i < 0xFFFF; i++) { - sTVShowState = SBSECRETS_STATE_HIT_CUSHION; + sTVSecretBaseSecretsRandomValues[2] = Random() % numActions; + if (sTVSecretBaseSecretsRandomValues[2] != sTVSecretBaseSecretsRandomValues[0] && sTVSecretBaseSecretsRandomValues[2] != sTVSecretBaseSecretsRandomValues[1]) + break; } - break; - case SBSECRETS_STATE_HIT_CUSHION ... SBSECRETS_NUM_STATES: - sTVShowState = show->secretBaseSecrets.savedState; - break; + show->secretBaseSecrets.savedState = SBSECRETS_STATE_TOOK_X_STEPS; + sTVShowState = SecretBaseSecrets_GetStateByFlagNumber(show, sTVSecretBaseSecretsRandomValues[2]); + } + break; + case SBSECRETS_STATE_TOOK_X_STEPS: + TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + ConvertIntToDecimalString(2, show->secretBaseSecrets.stepsInBase); + if (show->secretBaseSecrets.stepsInBase <= 30) + sTVShowState = SBSECRETS_STATE_BASE_INTEREST_LOW; + else if (show->secretBaseSecrets.stepsInBase <= 100) + sTVShowState = SBSECRETS_STATE_BASE_INTEREST_MED; + else + sTVShowState = SBSECRETS_STATE_BASE_INTEREST_HIGH; + break; + case SBSECRETS_STATE_BASE_INTEREST_LOW ... SBSECRETS_STATE_BASE_INTEREST_HIGH: + TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + sTVShowState = SBSECRETS_STATE_OUTRO; + break; + case SBSECRETS_STATE_OUTRO: + TVShowConvertInternationalString(gStringVar1, show->secretBaseSecrets.baseOwnersName, show->secretBaseSecrets.baseOwnersNameLanguage); + TVShowConvertInternationalString(gStringVar2, show->secretBaseSecrets.playerName, show->secretBaseSecrets.language); + TVShowDone(); + break; + // All below states are descriptions of what the player interacted with while in the secret base + case SBSECRETS_STATE_NOTHING_USED1: + sTVShowState = SBSECRETS_STATE_TOOK_X_STEPS; + break; + case SBSECRETS_STATE_NOTHING_USED2: + sTVShowState = SBSECRETS_STATE_TOOK_X_STEPS; + break; + case SBSECRETS_STATE_USED_CHAIR ... SBSECRETS_STATE_USED_MUD_BALL: + sTVShowState = show->secretBaseSecrets.savedState; + break; + case SBSECRETS_STATE_USED_BAG: + StringCopy(gStringVar2, ItemId_GetName(show->secretBaseSecrets.item)); + sTVShowState = show->secretBaseSecrets.savedState; + break; + case SBSECRETS_STATE_USED_CUSHION: + // Randomly decide based on trainer ID if the player hugged or hit the cushion + if (show->common.trainerIdLo & 1) + sTVShowState = SBSECRETS_STATE_HUGGED_CUSHION; + else + sTVShowState = SBSECRETS_STATE_HIT_CUSHION; + break; + case SBSECRETS_STATE_HIT_CUSHION ... SBSECRETS_NUM_STATES: + sTVShowState = show->secretBaseSecrets.savedState; + break; } ShowFieldMessage(sTVSecretBaseSecretsTextGroup[state]); } @@ -7096,79 +6703,62 @@ static void DoTVShowSafariFanClub(void) state = sTVShowState; switch (state) { - case 0: - if (show->safariFanClub.nMonsCaught == 0) - { - sTVShowState = 6; - } - else if (show->safariFanClub.nMonsCaught < 4) - { - sTVShowState = 5; - } - else - { - sTVShowState = 1; - } - break; - case 1: - TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - TV_PrintIntToStringVar(1, show->safariFanClub.nMonsCaught); - if (show->safariFanClub.nPkblkUsed == 0) - { - sTVShowState = 3; - } - else - { - sTVShowState = 2; - } - break; - case 2: - TV_PrintIntToStringVar(1, show->safariFanClub.nPkblkUsed); - sTVShowState = 4; - break; - case 3: - sTVShowState = 4; - break; - case 4: - TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - sTVShowState = 10; - break; - case 5: - TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - TV_PrintIntToStringVar(1, show->safariFanClub.nMonsCaught); - if (show->safariFanClub.nPkblkUsed == 0) - { - sTVShowState = 8; - } - else - { - sTVShowState = 7; - } - break; - case 6: - TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - if (show->safariFanClub.nPkblkUsed == 0) - { - sTVShowState = 8; - } - else - { - sTVShowState = 7; - } - break; - case 7: - TV_PrintIntToStringVar(1, show->safariFanClub.nPkblkUsed); - sTVShowState = 9; - break; - case 8: - sTVShowState = 9; - break; - case 9: - TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - sTVShowState = 10; - break; - case 10: - TVShowDone(); + case 0: + if (show->safariFanClub.nMonsCaught == 0) + sTVShowState = 6; + else if (show->safariFanClub.nMonsCaught < 4) + sTVShowState = 5; + else + sTVShowState = 1; + break; + case 1: + TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); + ConvertIntToDecimalString(1, show->safariFanClub.nMonsCaught); + if (show->safariFanClub.nPkblkUsed == 0) + sTVShowState = 3; + else + sTVShowState = 2; + break; + case 2: + ConvertIntToDecimalString(1, show->safariFanClub.nPkblkUsed); + sTVShowState = 4; + break; + case 3: + sTVShowState = 4; + break; + case 4: + TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); + sTVShowState = 10; + break; + case 5: + TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); + ConvertIntToDecimalString(1, show->safariFanClub.nMonsCaught); + if (show->safariFanClub.nPkblkUsed == 0) + sTVShowState = 8; + else + sTVShowState = 7; + break; + case 6: + TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); + if (show->safariFanClub.nPkblkUsed == 0) + sTVShowState = 8; + else + sTVShowState = 7; + break; + case 7: + ConvertIntToDecimalString(1, show->safariFanClub.nPkblkUsed); + sTVShowState = 9; + break; + case 8: + sTVShowState = 9; + break; + case 9: + TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); + sTVShowState = 10; + break; + case 10: + TVShowDone(); + break; } ShowFieldMessage(sTVSafariFanClubTextGroup[state]); } @@ -7187,17 +6777,11 @@ static void DoTVShowLilycoveContestLady(void) case CONTESTLADYLIVE_STATE_INTRO: BufferContestName(gStringVar1, show->contestLady.contestCategory); if (show->contestLady.pokeblockState == CONTEST_LADY_GOOD) - { sTVShowState = CONTESTLADYLIVE_STATE_WON; - } else if (show->contestLady.pokeblockState == CONTEST_LADY_NORMAL) - { sTVShowState = CONTESTLADYLIVE_STATE_LOST; - } else // CONTEST_LADY_BAD - { sTVShowState = CONTESTLADYLIVE_STATE_LOST_BADLY; - } break; case CONTESTLADYLIVE_STATE_WON: case CONTESTLADYLIVE_STATE_LOST: @@ -7210,7 +6794,7 @@ static void DoTVShowLilycoveContestLady(void) ShowFieldMessage(sTVLilycoveContestLadyTextGroup[state]); } -void TVShowDone(void) +static void TVShowDone(void) { gSpecialVar_Result = TRUE; sTVShowState = 0; From 265b49c47b5651d210f8b1f0ae0384786d40ae13 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 26 Apr 2021 14:41:15 -0400 Subject: [PATCH 157/762] Label missing sprite anims --- src/item_menu_icons.c | 4 ++-- src/pokeblock.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index d15409226954..c728a720f7bf 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -244,7 +244,7 @@ static const struct OamData sBerryPicRotatingOamData = .affineParam = 0 }; -static const union AnimCmd sSpriteAnim_857FBD8[] = +static const union AnimCmd sAnim_BerryPic[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END @@ -252,7 +252,7 @@ static const union AnimCmd sSpriteAnim_857FBD8[] = static const union AnimCmd *const sBerryPicSpriteAnimTable[] = { - sSpriteAnim_857FBD8 + sAnim_BerryPic }; static const struct SpriteFrameImage sBerryPicSpriteImageTable[] = diff --git a/src/pokeblock.c b/src/pokeblock.c index daf50a612ebd..fad6858ecc95 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -264,7 +264,7 @@ static const union AnimCmd *const sSpriteAnimTable_PokeblockCase[] = sSpriteAnim_PokeblockCase }; -static const union AffineAnimCmd sSpriteAffineAnim_85B26C8[] = +static const union AffineAnimCmd sAffineAnim_PokeblockCaseShake[] = { AFFINEANIMCMD_FRAME(0, 0, -2, 2), AFFINEANIMCMD_FRAME(0, 0, 2, 4), @@ -273,9 +273,9 @@ static const union AffineAnimCmd sSpriteAffineAnim_85B26C8[] = AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85B26F0[] = +static const union AffineAnimCmd *const sAffineAnims_PokeblockCaseShake[] = { - sSpriteAffineAnim_85B26C8 + sAffineAnim_PokeblockCaseShake }; const struct CompressedSpriteSheet gPokeblockCase_SpriteSheet = @@ -955,7 +955,7 @@ static void SpriteCB_ShakePokeblockCase(struct Sprite *sprite) { case 0: sprite->oam.affineMode = ST_OAM_AFFINE_NORMAL; - sprite->affineAnims = sSpriteAffineAnimTable_85B26F0; + sprite->affineAnims = sAffineAnims_PokeblockCaseShake; InitSpriteAffineAnim(sprite); sprite->sState = 1; sprite->sTimer = 0; From 2608018862beaf2f9b228581d8dadea041b009de Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 29 Apr 2021 16:08:43 -0400 Subject: [PATCH 158/762] Use some missing fieldmap constants in trainer hill --- src/trainer_hill.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 059773a0be1a..3ce90c430992 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -678,10 +678,10 @@ static u16 GetMetatileForFloor(u8 floorId, u32 x, u32 y, u32 stride) // stride i u16 elevation; impassable = (sHillData->floors[floorId].display.collisionData[y] >> (15 - x) & 1); - metatile = sHillData->floors[floorId].display.metatileData[stride * y + x] + 0x200; - elevation = 0x3000; + metatile = sHillData->floors[floorId].display.metatileData[stride * y + x] + NUM_METATILES_IN_PRIMARY; + elevation = 3 << METATILE_ELEVATION_SHIFT; - return (((impassable << 10) & METATILE_COLLISION_MASK) | elevation) | (metatile & METATILE_ID_MASK); + return ((impassable << METATILE_COLLISION_SHIFT) & METATILE_COLLISION_MASK) | elevation | (metatile & METATILE_ID_MASK); } void GenerateTrainerHillFloorLayout(u16 *mapArg) @@ -710,6 +710,8 @@ void GenerateTrainerHillFloorLayout(u16 *mapArg) gBackupMapLayout.width = 31; gBackupMapLayout.height = 35; dst = mapArg + 224; + + // First 5 rows of the map (Entrance / Exit) are always the same for (i = 0; i < 5; i++) { for (j = 0; j < 16; j++) @@ -718,10 +720,11 @@ void GenerateTrainerHillFloorLayout(u16 *mapArg) src += 16; } + // Load the 16x16 floor-specific layout for (i = 0; i < 16; i++) { for (j = 0; j < 16; j++) - dst[j] = GetMetatileForFloor(mapId, j, i, 0x10); + dst[j] = GetMetatileForFloor(mapId, j, i, 16); dst += 31; } From 608c829acde07dd780371a3adf9e7d3f546402fb Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 1 May 2021 01:41:27 -0400 Subject: [PATCH 159/762] change usages of float/double to f32/f64 --- src/pokemon_size_record.c | 2 +- src/roulette.c | 34 +++++++++++++++++----------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/pokemon_size_record.c b/src/pokemon_size_record.c index 4beb9c83fb3a..7c88e5bf1043 100644 --- a/src/pokemon_size_record.c +++ b/src/pokemon_size_record.c @@ -97,7 +97,7 @@ static void FormatMonSizeRecord(u8 *string, u32 size) { #ifdef UNITS_IMPERIAL //Convert size from centimeters to inches - size = (double)(size * 10) / (CM_PER_INCH * 10); + size = (f64)(size * 10) / (CM_PER_INCH * 10); #endif string = ConvertIntToDecimalStringN(string, size / 10, STR_CONV_MODE_LEFT_ALIGN, 8); diff --git a/src/roulette.c b/src/roulette.c index cf27fdf9b8d7..1ea69dc2e995 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -275,7 +275,7 @@ struct RouletteTable struct Taillow taillow; u16 ballSpeed; u16 baseTravelDist; - float var1C; + f32 var1C; }; struct GridSelection @@ -340,13 +340,13 @@ static EWRAM_DATA struct Roulette s16 ballTravelDistFast; u16 ballTravelDistMed; u16 ballTravelDistSlow; - float ballAngle; - float ballAngleSpeed; - float ballAngleAccel; - float ballDistToCenter; - float ballFallSpeed; - float ballFallAccel; - float varA0; + f32 ballAngle; + f32 ballAngleSpeed; + f32 ballAngleAccel; + f32 ballDistToCenter; + f32 ballFallSpeed; + f32 ballFallAccel; + f32 varA0; u8 playTaskId; u8 spinTaskId; u8 filler_1[2]; @@ -3948,7 +3948,7 @@ static s16 UpdateBallRelativeWheelAngle(struct Sprite *sprite) static u8 UpdateSlotBelowBall(struct Sprite *sprite) { - sRoulette->hitSlot = UpdateBallRelativeWheelAngle(sprite) / (float) DEGREES_PER_SLOT; + sRoulette->hitSlot = UpdateBallRelativeWheelAngle(sprite) / (f32)DEGREES_PER_SLOT; return sRoulette->hitSlot; } @@ -4050,7 +4050,7 @@ static void SpriteCB_UnstickBall_ShroomishBallFall(struct Sprite *sprite) static void SpriteCB_UnstickBall_Shroomish(struct Sprite *sprite) { - float slotOffset, ballFallDist, ballFallSpeed; + f32 slotOffset, ballFallDist, ballFallSpeed; UpdateBallPos(sprite); switch (sprite->sBallAngle) @@ -4233,7 +4233,7 @@ static void SpriteCB_RollBall_TryLand(struct Sprite *sprite) } else // fall left { - float temp; + f32 temp; sRoulette->ballAngleSpeed = (temp = sRouletteTables[sRoulette->tableId].var1C) * 2.0f; slotId = (sRoulette->hitSlot + NUM_ROULETTE_SLOTS - 1) % NUM_ROULETTE_SLOTS; sRoulette->stuckHitSlot = sRoulette->hitSlot; @@ -4279,7 +4279,7 @@ static void SpriteCB_RollBall_Slow(struct Sprite *sprite) { // Reached slot to land in sRoulette->ballAngleAccel = 0.0f; - sRoulette->ballAngleSpeed -= (float)(sRouletteTables[sRoulette->tableId].wheelSpeed) + sRoulette->ballAngleSpeed -= (f32)(sRouletteTables[sRoulette->tableId].wheelSpeed) / (sRouletteTables[sRoulette->tableId].wheelDelay + 1); sprite->sState = 4; sprite->callback = SpriteCB_RollBall_TryLand; @@ -4304,8 +4304,8 @@ static void SpriteCB_RollBall_Medium(struct Sprite *sprite) if (sRoulette->ballDistToCenter > 40.0f) return; - sRoulette->ballFallSpeed = -(4.0f / (float)(sRoulette->ballTravelDistSlow)); - sRoulette->ballAngleAccel = -(sRoulette->ballAngleSpeed / (float)(sRoulette->ballTravelDistSlow)); + sRoulette->ballFallSpeed = -(4.0f / (f32)(sRoulette->ballTravelDistSlow)); + sRoulette->ballAngleAccel = -(sRoulette->ballAngleSpeed / (f32)(sRoulette->ballTravelDistSlow)); sprite->animNum = 2; sprite->animBeginning = TRUE; sprite->animEnded = FALSE; @@ -4320,8 +4320,8 @@ static void SpriteCB_RollBall_Fast(struct Sprite *sprite) return; m4aSongNumStartOrChange(SE_ROULETTE_BALL2); - sRoulette->ballFallSpeed = -(20.0f / (float)(sRoulette->ballTravelDistMed)); - sRoulette->ballAngleAccel = ((1.0f - sRoulette->ballAngleSpeed) / (float)(sRoulette->ballTravelDistMed)); + sRoulette->ballFallSpeed = -(20.0f / (f32)(sRoulette->ballTravelDistMed)); + sRoulette->ballAngleAccel = ((1.0f - sRoulette->ballAngleSpeed) / (f32)(sRoulette->ballTravelDistMed)); sprite->animNum = 1; sprite->animBeginning = TRUE; sprite->animEnded = FALSE; @@ -4558,7 +4558,7 @@ static void SpriteCB_ShroomishShakeScreen(struct Sprite *sprite) static void SpriteCB_ShroomishFall(struct Sprite *sprite) { - float timer; + f32 timer; sprite->data[1]++; timer = sprite->data[1]; sprite->pos2.y = timer * 0.039f * timer; From 9ec5a5b468b1a11d53a7cf33823a3bfa213dfdbd Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Sat, 1 May 2021 21:03:40 -0400 Subject: [PATCH 160/762] Wrap notes in details blocks. --- INSTALL.md | 187 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 124 insertions(+), 63 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 36d2b9d25271..e0a8c325e743 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -2,17 +2,25 @@ These instructions explain how to set up the tools required to build **pokeemerald**, which assembles the source files into a ROM. +These instructions come with notes which can be expanded by clicking the "Note..." text. +In general, you should not need to open these unless if you get an error or if you need additional clarification. + If you run into trouble, ask for help on Discord or IRC (see [README.md](README.md)). ## Windows -Windows has instructions for building with three possible terminals, providing 3 different options in case the user stumbled upon unexpected errors. +Windows has instructions for building with three possible terminals, providing 3 different options in case the user stumbles upon unexpected errors. - [Windows 10 (WSL1)](#windows-10-wsl1) (**Fastest, highly recommended**, Windows 10 only) - [Windows (msys2)](#windows-msys2) (Second fastest) - [Windows (Cygwin)](#windows-cygwin) (Slowest) Unscientific benchmarks suggest **msys2 is 2x slower** than WSL1, and **Cygwin is 5-6x slower** than WSL1. +
+ Note for advanced users: WSL2... -> Note for advanced users: **WSL2** is an option and is even faster than **WSL1** if files are stored on the WSL2 file system, but some tools may have trouble interacting with the WSL2 file system over the network drive. For example, tools which use Qt versions before 5.15.2 such as [porymap](https://github.com/huderlem/porymap) may [have problems with parsing the `\\wsl$` network drive path](https://bugreports.qt.io/browse/QTBUG-86277). +> WSL2 is an option and is even faster than WSL1 if files are stored on the WSL2 file system, but some tools may have trouble interacting +> with the WSL2 file system over the network drive. For example, tools which use Qt versions before 5.15.2 such as porymap +> may have problems with parsing the \\wsl$ network drive path. +
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. @@ -34,13 +42,19 @@ WSL1 is the preferred terminal to build **pokeemerald**. The following instructi 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. - - > Note for advanced users: You can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested. +
+ Note for advanced users... + + > 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). + > 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). +
### Setting up WSL1 Some tips before proceeding: @@ -51,15 +65,17 @@ Some tips before proceeding: 1. Open **Ubuntu** (e.g. using Search). 2. WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). +
+ Note... - > Note: When typing in the password, there will be no visible response, but the terminal will still read in input. + > When typing in the password, there will be no visible response, but the terminal will still read in input. +
-3. Update WSL/Ubuntu before continuing. Do this by running the following command: +3. Update WSL/Ubuntu before continuing. Do this by running the following command. These commands will likely take a long time to finish: ```bash sudo apt update && sudo apt upgrade ``` - > Note: These commands will likely take a long time to finish. > Note: If the repository you plan to build has an **[older revision of the INSTALL.md](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md)**, then follow the [legacy WSL1 instructions](docs/legacy_WSL1_INSTALL.md) from here. @@ -68,25 +84,29 @@ Some tips before proceeding: ```bash sudo apt install build-essential binutils-arm-none-eabi git libpng-dev ``` - > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. +
+ Note... + + > If the above command does not work, try the above command but replacing `apt` with `apt-get`. +
### Choosing where to store pokeemerald (WSL1) -WSL has its own file system that's not natively accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokeemerald within Windows. +WSL has its own file system that's not natively accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to store pokeemerald within Windows. + +For example, say you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**. First, ensure that the folder already exists. Then, enter this command to **change directory** to said folder, where *\* is your **Windows** username: -For example, say you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command, where *\* is your **Windows** username: ```bash cd /mnt/c/Users//Desktop/decomps ``` -Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. -> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. -> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed -> Note 4: If pokeemerald is already installed, then run the following command instead (for the provided example path): -> ```bash -> cd /mnt/c/Users//Desktop/decomps/pokeemerald -> ``` +
+ Notes... +> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. +> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. +> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed +
+ If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using msys2](#windows-msys2). @@ -112,20 +132,28 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. ```bash pacman -S make gcc zlib-devel git ``` - > Note: This command will ask for confirmation, just enter the yes action when prompted. +
+ Note... + + > This command will ask for confirmation, just enter the yes action when prompted. +
3. Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). -4. Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\_\_**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: +4. Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\⁠_\_**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: ```bash cd Downloads ``` - > Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. - > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. - > Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed. - > Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there. +
+ Notes... + + > Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. + > Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed. + > Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there. +
5. Run the following commands to uncompress and install libpng. @@ -146,19 +174,12 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. ### Choosing where to store pokeemerald (msys2) At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokeemerald is stored when changing directory to the pokeemerald folder. -For example, say you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command to **change directory** to the desired folder: +For example, if you want to store pokeemerald (and agbcc) in **C:\Users\\_\_\Desktop\decomps** (where *\* is your **Windows** username), enter this command: ```bash cd Desktop/decomps ``` -Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. - -> Note: If pokeemerald is already installed, then run the following command instead (for the provided example path): -> ```bash -> cd Desktop/decomps/pokeemerald -> ``` - If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using Cygwin](#windows-cygwin). @@ -206,7 +227,11 @@ Note that in Cygwin, Copy is Ctrl+Insert and Paste is Shift+Insert. echo export DEVKITARM=$DEVKITARM >> ~/.bashrc ``` - > Note: Replace the drive letter c with the actual drive letter if it is not c. +
+ Note... + + > Replace the drive letter c with the actual drive letter if it is not c. +
### Choosing where to store pokeemerald (Cygwin) @@ -218,17 +243,17 @@ cd c:/Users//Desktop/decomps ``` Note that the directory **must exist** in Windows. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Windows Explorer) before executing the `cd` command. -> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. -> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed -> Note 3: If pokeemerald is already installed, then run the following command instead (for the provided example path): -> ```bash -> cd c:/Users//Desktop/decomps/pokeemerald -> ``` +
+ Notes... +> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. +> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed +
+ If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## macOS -1. If the Xcode Command Line Tools are not installed, download the tools [here](https://developer.apple.com/library/archive/technotes/tn2339/_index.html), open your Terminal, and run the following command: +1. If the Xcode Command Line Tools are not installed, download the tools [here](https://developer.apple.com/xcode/resources/), open your Terminal, and run the following command: ```bash xcode-select --install @@ -239,7 +264,11 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for - Otherwise, **open the Terminal** and go to [Choosing where to store pokeemerald (macOS)](#choosing-where-to-store-pokeemerald-macos) ### Installing libpng (macOS) -> Note for advanced users: This guide installs libpng via Homebrew as it is the easiest method, however advanced users can install libpng through other means if they so desire. +
+ Note for advanced users... + +> This guide installs libpng via Homebrew as it is the easiest method, however advanced users can install libpng through other means if they so desire. +
1. Open the Terminal. 2. If Homebrew is not installed, then install [Homebrew](https://brew.sh/) by following the instructions on the website. @@ -279,17 +308,17 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ### Choosing where to store pokeemerald (macOS) At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokeemerald is stored when changing directory to the pokeemerald folder. -For example, say you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**. If pokeemerald and/or agbcc hasn't been installed yet, then enter the following command to **change directory** to the desired folder: +For example, if you want to store pokeemerald (and agbcc) in **~/Desktop/decomps**, enter this command to **change directory** to the desired folder: ```bash cd Desktop/decomps ``` Note that the directory **must exist** in the folder system. If you want to store pokeemerald in a dedicated folder that doesn't exist (e.g. the example provided above), then create the folder (e.g. using Finder) before executing the `cd` command. -> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` -> Note 2: If pokeemerald is already installed, then run the following command instead (for the provided example path: -> ```bash -> cd Desktop/decomps/pokeemerald -> ``` +
+ Note... + +> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` +
If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). @@ -302,6 +331,13 @@ Run the following command to install the necessary packages: sudo apt install build-essential binutils-arm-none-eabi git libpng-dev ``` Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to-store-pokeemerald-linux). +
+ Note for legacy repos... + +> If the repository you plan to build has an **[older revision of the INSTALL.md](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md)**, +> then you will have to install devkitARM. Install all the above packages except binutils-arm-none-eabi, and follow the instructions to +> [install devkitARM on Debian/Ubuntu-based distributions](#installing-devkitarm-on-debianubuntu-based-distributions). +
### Other distributions _(Specific instructions for other distributions would be greatly appreciated!)_ @@ -330,7 +366,13 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ## Installation -> Windows users: Consider adding an exception for the `pokeemerald` and/or `decomps` folder in Windows Security using [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from scanning them which might improve performance while building. +
+ Note for Windows users... + +> Consider adding an exception for the `pokeemerald` and/or `decomps` folder in Windows Security using +> [these instructions](https://support.microsoft.com/help/4028485). This prevents Microsoft Defender from +> scanning them which might improve performance while building. +
1. If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: @@ -338,16 +380,20 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for git clone https://github.com/luckytyphlosion/pokeemerald ``` - > Note for WSL1: If you get an error stating `fatal: could not set 'core.filemode' to 'false'`, then run the following commands: - >```bash - >cd - >sudo umount /mnt/c - >sudo mount -t drvfs C: /mnt/c -o metadata,noatime - >cd - >``` - > Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). Then run the `git clone` command again. +
+ Note for WSL1... -2. Install agbcc into pokeemerald. The commands to run depend on certain conditions: + > If you get an error stating `fatal: could not set 'core.filemode' to 'false'`, then run the following commands: + > ```bash + > cd + > sudo umount /mnt/c + > sudo mount -t drvfs C: /mnt/c -o metadata,noatime + > cd + > ``` + > Where *\* is the path of the folder [where you chose to store pokeemerald](#Choosing-where-to-store-pokeemerald-WSL1). Then run the `git clone` command again. +
+ +2. Install agbcc into pokeemerald. The commands to run depend on certain conditions. **You should only follow one of the listed instructions**: - If agbcc has **not been built before** in the folder where you chose to store pokeemerald, run the following commands to build and install it into pokeemerald: ```bash @@ -366,14 +412,18 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for ./install.sh ../pokeemerald ``` -- **Otherwise**, run the following commands to install agbcc into pokeemerald: +- **Otherwise**, if agbcc has been built before on the same terminal, run the following commands to install agbcc into pokeemerald: ```bash cd agbcc ./install.sh ../pokeemerald ``` - > Note: If building agbcc or pokeemerald results in an error, try deleting the agbcc folder and re-installing agbcc as if it has not been built before. +
+ Note... + + > If building agbcc or pokeemerald results in an error, try deleting the agbcc folder and re-installing agbcc as if it has not been built before. +
3. Once agbcc is installed, change directory back to the base directory where pokeemerald and agbcc are stored: @@ -392,7 +442,10 @@ To build **pokeemerald.gba** for the first time and confirm it matches the offic make compare ``` If an OK is returned, then the installation went smoothly. -> Note for Windows: if you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands. +
+Note for Windows... +> If you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands. +
To build **pokeemerald.gba** with your changes: ```bash @@ -438,7 +491,11 @@ Otherwise, follow the instructions below to install devkitARM. ```bash sudo apt install gdebi-core ``` - > Note: If the above command does not work, try the above command but replacing `apt` with `apt-get`. +
+ Note... + + > If the above command does not work, try the above command but replacing `apt` with `apt-get`. +
2. Once `gdebi-core` is done installing, download the devkitPro pacman package [here](https://github.com/devkitPro/pacman/releases). The file to download is `devkitpro-pacman.amd64.deb`. 3. Change directory to where the package was downloaded. For example, if the package file was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command, where *\ is your **Windows** username: @@ -456,7 +513,11 @@ Otherwise, follow the instructions below to install devkitARM. ``` The last command will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. +
+ Note... + > Note: `devkitpro-pacman.amd64.deb` is the expected filename of the devkitPro package downloaded (for the first command). If the downloaded package filename differs, then use that filename instead. +
5. Run the following command to set devkitPro related environment variables (alternatively, close and re-open WSL): From 4206359862da51e3cc3d6b36ab0a3280c1123b9e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 4 May 2021 01:21:50 -0400 Subject: [PATCH 161/762] Fix some object lock names --- asm/macros/event.inc | 4 ++-- include/event_object_lock.h | 4 ++-- src/event_object_lock.c | 8 ++++++-- src/scrcmd.c | 10 +++++++--- src/union_room.c | 2 +- 5 files changed, 18 insertions(+), 10 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index f3f17c5d8bcd..e25c76de443e 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -812,12 +812,12 @@ .byte 0x68 .endm - @ Ceases movement for all Objects on-screen. + @ Freezes all objects immediately except the player. The player is frozen once their movement is finished. .macro lockall .byte 0x69 .endm - @ If the script was called by an Object, then that Object's movement will cease. + @ 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 .endm diff --git a/include/event_object_lock.h b/include/event_object_lock.h index 9d31a25fd8af..0b1f5f098110 100644 --- a/include/event_object_lock.h +++ b/include/event_object_lock.h @@ -2,9 +2,9 @@ #define GUARD_EVENT_OBJECT_LOCK_H bool8 IsFreezePlayerFinished(void); -void ScriptFreezeObjectEvents(void); bool8 IsFreezeSelectedObjectAndPlayerFinished(void); -void LockSelectedObjectEvent(void); +void FreezeObjects_WaitForPlayer(void); +void FreezeObjects_WaitForPlayerAndSelected(void); void FreezeForApproachingTrainers(void); bool8 IsFreezeObjectAndPlayerFinished(void); void ScriptUnfreezeObjectEvents(void); diff --git a/src/event_object_lock.c b/src/event_object_lock.c index dec2d7906222..179c7281370b 100644 --- a/src/event_object_lock.c +++ b/src/event_object_lock.c @@ -40,7 +40,7 @@ bool8 IsFreezePlayerFinished(void) } -void ScriptFreezeObjectEvents(void) +void FreezeObjects_WaitForPlayer(void) { FreezeObjectEvents(); CreateTask(Task_FreezePlayer, 80); @@ -82,7 +82,9 @@ bool8 IsFreezeSelectedObjectAndPlayerFinished(void) } } -void LockSelectedObjectEvent(void) +// Freeze all objects immediately except the selected object and the player. +// The selected object and player are frozen once their movement is finished. +void FreezeObjects_WaitForPlayerAndSelected(void) { u8 taskId; FreezeObjectEventsExceptOne(gSelectedObjectEvent); @@ -144,6 +146,8 @@ static void Task_FreezeObjectAndPlayer(u8 taskId) DestroyTask(taskId); } +// Freeze all objects immediately except the player and the approaching trainers. +// The approaching trainers and player are frozen once their movement is finished void FreezeForApproachingTrainers(void) { u8 trainerObjectId1, trainerObjectId2, taskId; diff --git a/src/scrcmd.c b/src/scrcmd.c index 0ee20d1c6125..f53483978bfe 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1203,6 +1203,8 @@ bool8 ScrCmd_turnvobject(struct ScriptContext *ctx) return FALSE; } +// lockall freezes all object events except the player immediately. +// The player is frozen after waiting for their current movement to finish. bool8 ScrCmd_lockall(struct ScriptContext *ctx) { if (IsUpdateLinkStateCBActive()) @@ -1211,12 +1213,14 @@ bool8 ScrCmd_lockall(struct ScriptContext *ctx) } else { - ScriptFreezeObjectEvents(); + FreezeObjects_WaitForPlayer(); SetupNativeScript(ctx, IsFreezePlayerFinished); return TRUE; } } +// lock freezes all object events except the player and the selected object immediately. +// The player and selected object are frozen after waiting for their current movement to finish. bool8 ScrCmd_lock(struct ScriptContext *ctx) { if (IsUpdateLinkStateCBActive()) @@ -1227,12 +1231,12 @@ bool8 ScrCmd_lock(struct ScriptContext *ctx) { if (gObjectEvents[gSelectedObjectEvent].active) { - LockSelectedObjectEvent(); + FreezeObjects_WaitForPlayerAndSelected(); SetupNativeScript(ctx, IsFreezeSelectedObjectAndPlayerFinished); } else { - ScriptFreezeObjectEvents(); + FreezeObjects_WaitForPlayer(); SetupNativeScript(ctx, IsFreezePlayerFinished); } return TRUE; diff --git a/src/union_room.c b/src/union_room.c index f41cfd45f30d..06d3321c3955 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -4415,7 +4415,7 @@ static void HandleCancelActivity(bool32 setData) static void UR_EnableScriptContext2AndFreezeObjectEvents(void) { ScriptContext2_Enable(); - ScriptFreezeObjectEvents(); + FreezeObjects_WaitForPlayer(); } static u8 GetActivePartnerSpriteGenderParam(struct WirelessLink_URoom *data) From 9da2142a391d991490a7a9de9ada6f12868049a4 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Tue, 4 May 2021 10:08:54 -0400 Subject: [PATCH 162/762] Scan all deps of time, also prevent deps from being scanned twice for compare and modern. --- Makefile | 88 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 66 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index bb65aed74af4..6842d3fd75fa 100644 --- a/Makefile +++ b/Makefile @@ -143,12 +143,27 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst # Build tools when building the rom # Disable dependency scanning for clean/tidy/tools -ifeq (,$(filter-out all rom compare modern berry_fix libagbsyscall,$(MAKECMDGOALS))) +# Don't build tools yet for modern because we perform a recursive make +ifeq (,$(filter-out all rom berry_fix libagbsyscall,$(MAKECMDGOALS))) $(call infoshell, $(MAKE) tools) else NODEP := 1 endif +# check if we need to scan dependencies based on the rule +ifeq (,$(MAKECMDGOALS)) + SCAN_DEPS := 1 +else + # compare and modern perform recursive calls, so don't scan dependencies yet + # clean, tidy, tools, mostlyclean, clean-tools, $(TOOLDIRS), tidymodern, tidynonmodern don't even build the ROM + # berry_fix and libagbsyscall do their own thing + ifeq (,$(filter-out clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern,$(MAKECMDGOALS))) + SCAN_DEPS := 0 + else + SCAN_DEPS := 1 + endif +endif + 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)) @@ -272,17 +287,21 @@ 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 endif -ifeq ($(NODEP),1) -$(C_BUILDDIR)/%.o: c_dep := -else -$(C_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(C_SUBDIR)/$*.c ]] && $(SCANINC) -I include -I tools/agbcc/include -I gflib $(C_SUBDIR)/$*.c) -endif - ifeq ($(DINFO),1) override CFLAGS += -g endif -$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep) +# 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. + +# ifeq (,$(filter-out all rom compare modern berry_fix libagbsyscall,$(MAKECMDGOALS))) + +#$(info MAKECMDGOALS - $(MAKECMDGOALS)) + +ifeq ($(SCAN_DEPS),1) +ifeq ($(NODEP),1) +$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c 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 $@ - @@ -292,13 +311,25 @@ else @echo -e ".text\n\t.align\t2, 0\n" >> $(C_BUILDDIR)/$*.s $(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s endif - -ifeq ($(NODEP),1) -$(GFLIB_BUILDDIR)/%.o: c_dep := else -$(GFLIB_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(GFLIB_SUBDIR)/$*.c ]] && $(SCANINC) -I include -I tools/agbcc/include -I gflib $(GFLIB_SUBDIR)/$*.c) +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)/$$*.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 +endef +#$(info C_DEP) +$(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o, $(src)),$(src)))) +#$(error done C_DEP) endif +ifeq ($(NODEP),1) $(GFLIB_BUILDDIR)/%.o : $(GFLIB_SUBDIR)/%.c $$(c_dep) ifeq (,$(KEEP_TEMPS)) @echo "$(CC1) -o $@ $<" @@ -309,20 +340,32 @@ else @echo -e ".text\n\t.align\t2, 0\n" >> $(GFLIB_BUILDDIR)/$*.s $(AS) $(ASFLAGS) -o $@ $(GFLIB_BUILDDIR)/$*.s endif - -ifeq ($(NODEP),1) -$(C_BUILDDIR)/%.o: c_asm_dep := else -$(C_BUILDDIR)/%.o: c_asm_dep = $(shell [[ -f $(C_SUBDIR)/$*.s ]] && $(SCANINC) -I "" $(C_SUBDIR)/$*.s) +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)/$$*.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 +endef +$(foreach src, $(GFLIB_SRCS), $(eval $(call GFLIB_DEP,$(patsubst $(GFLIB_SUBDIR)/%.c,$(GFLIB_BUILDDIR)/%.o, $(src)),$(src)))) endif -$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.s $$(c_asm_dep) +ifeq ($(NODEP),1) +$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.s $(AS) $(ASFLAGS) -o $@ $< - -# 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. - +else +define C_ASM_DEP +$1: $2 $$(shell $(SCANINC) -I "" $2) + $$(AS) $$(ASFLAGS) -o $$@ $$< +endef +$(foreach src, $(C_ASM_SRCS), $(eval $(call C_ASM_DEP,$(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o, $(src)),$(src)))) +endif ifeq ($(NODEP),1) $(ASM_BUILDDIR)/%.o: $(ASM_SUBDIR)/%.s @@ -345,6 +388,7 @@ $1: $2 $$(shell $(SCANINC) -I include -I "" $2) endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif +endif $(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s $(AS) $(ASFLAGS) -I sound -o $@ $< From 6ce27c0ff0f8d6b3addea73ef2c49584c510e60b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 4 May 2021 15:43:24 -0400 Subject: [PATCH 163/762] Restore EReaderTrainerHillSet dummy --- include/ereader_helpers.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h index 937cfaca13a1..064b61ed7f97 100755 --- a/include/ereader_helpers.h +++ b/include/ereader_helpers.h @@ -15,6 +15,7 @@ struct EReaderTrainerHillSet { u8 numTrainers; u8 id; + u16 dummy; // Only read in an assert. u32 checksum; struct EReaderTrainerHillTrainer trainers[6]; u8 unk_ec0[40]; From 783a167b76bef461f47d425ecc11c0b9fda30c77 Mon Sep 17 00:00:00 2001 From: Michael Panzlaff Date: Wed, 5 May 2021 00:49:42 +0200 Subject: [PATCH 164/762] ld_script_modern: minor fixes for gcc 11 --- ld_script_modern.txt | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 6f8d384534c5..59d032bb2504 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -27,8 +27,8 @@ SECTIONS { /* .bss starts at 0x3000000 */ src/*.o(.bss); gflib/*.o(.bss); - *libc.a:*.o(.bss); - *libnosys.a:*.o(.bss); + *libc.a:*.o(.bss*); + *libnosys.a:*.o(.bss*); /* .bss.code starts at 0x3001AA8 */ src/m4a.o(.bss.code); @@ -47,19 +47,10 @@ SECTIONS { .text : ALIGN(4) { - src/crt0.o(.text); - src/*.o(.text); - gflib/*.o(.text); - asm/*.o(.text); - } =0 - - .text.unlikely : - ALIGN(4) - { - src/crt0.o(.text.unlikely); - src/*.o(.text.unlikely); - gflib/*.o(.text.unlikely); - asm/*.o(.text.unlikely); + src/crt0.o(.text*); + src/*.o(.text*); + gflib/*.o(.text*); + asm/*.o(.text*); } =0 script_data : From c50a21fba07db80ac44c6f09fd202ba4b2e2c7d3 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Wed, 5 May 2021 16:07:21 -0400 Subject: [PATCH 165/762] Tidy just cleans both normal and modern. --- Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 3bb5161e31ec..20dca6f643e1 100644 --- a/Makefile +++ b/Makefile @@ -215,9 +215,7 @@ mostlyclean: tidynonmodern tidymodern @$(MAKE) clean -C berry_fix @$(MAKE) clean -C libagbsyscall -tidy: - rm -f $(ROM) $(ELF) $(MAP) - rm -r $(OBJ_DIR) +tidy: tidynonmodern tidymodern tidynonmodern: rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) From a8fab62c89dcdfc662bcb49c8a1b538ebc70d4b9 Mon Sep 17 00:00:00 2001 From: Flametix <44883711+Flametix@users.noreply.github.com> Date: Thu, 6 May 2021 20:49:04 -0400 Subject: [PATCH 166/762] Fix Substitute typo --- data/battle_scripts_1.s | 2 +- include/constants/battle_string_ids.h | 2 +- src/battle_gfx_sfx_util.c | 6 +++--- src/battle_message.c | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 045db19c59b5..b15c29cfe0a7 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1120,7 +1120,7 @@ BattleScript_SubstituteAnim:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER BattleScript_SubstituteString:: - printfromtable gSubsituteUsedStringIds + printfromtable gSubstituteUsedStringIds waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd BattleScript_AlreadyHasSubstitute:: diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index f22541272248..c8d37aac6173 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -502,7 +502,7 @@ #define B_MSG_TRANSFORMED 0 #define B_MSG_TRANSFORM_FAILED 1 -// gSubsituteUsedStringIds +// gSubstituteUsedStringIds #define B_MSG_SET_SUBSTITUTE 0 #define B_MSG_SUBSTITUTE_FAILED 1 diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index ba0cab8146be..88e69665e082 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -40,7 +40,7 @@ extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow; static u8 GetBattlePalaceMoveGroup(u16 move); static u16 GetBattlePalaceTarget(void); static void SpriteCB_TrainerSlideVertical(struct Sprite *sprite); -static bool8 ShouldAnimBeDoneRegardlessOfSubsitute(u8 animId); +static bool8 ShouldAnimBeDoneRegardlessOfSubstitute(u8 animId); static void Task_ClearBitWhenBattleTableAnimDone(u8 taskId); static void Task_ClearBitWhenSpecialAnimDone(u8 taskId); static void ClearSpritesBattlerHealthboxAnimData(void); @@ -444,7 +444,7 @@ bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattler, u8 atkBattler, u8 de return TRUE; } if (gBattleSpritesDataPtr->battlerData[activeBattler].behindSubstitute - && !ShouldAnimBeDoneRegardlessOfSubsitute(tableId)) + && !ShouldAnimBeDoneRegardlessOfSubstitute(tableId)) { return TRUE; } @@ -480,7 +480,7 @@ static void Task_ClearBitWhenBattleTableAnimDone(u8 taskId) #undef tBattlerId -static bool8 ShouldAnimBeDoneRegardlessOfSubsitute(u8 animId) +static bool8 ShouldAnimBeDoneRegardlessOfSubstitute(u8 animId) { switch (animId) { diff --git a/src/battle_message.c b/src/battle_message.c index 2e752dccafbc..a3086641040e 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1067,7 +1067,7 @@ const u16 gTransformUsedStringIds[] = [B_MSG_TRANSFORM_FAILED] = STRINGID_BUTITFAILED }; -const u16 gSubsituteUsedStringIds[] = +const u16 gSubstituteUsedStringIds[] = { [B_MSG_SET_SUBSTITUTE] = STRINGID_PKMNMADESUBSTITUTE, [B_MSG_SUBSTITUTE_FAILED] = STRINGID_TOOWEAKFORSUBSTITUTE From 43854664b51c94e8cb73a535dd176311208486e8 Mon Sep 17 00:00:00 2001 From: ExpoSeed Date: Fri, 7 May 2021 13:50:50 -0500 Subject: [PATCH 167/762] Fix UB in RotatingGate_RotateInDirection --- src/rotating_gate.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 22a0b0bdfac4..36c23c2a5684 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -670,7 +670,8 @@ static void RotatingGate_RotateInDirection(u8 gateId, u32 rotationDirection) } else { - orientation = ++orientation % GATE_ORIENTATION_MAX; + orientation++; + orientation = orientation % GATE_ORIENTATION_MAX; } RotatingGate_SetGateOrientation(gateId, orientation); } From 65fd3342562106c5a9ffa93f6b46a02c7ebe9ef5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 28 Apr 2021 16:06:27 -0400 Subject: [PATCH 168/762] Name map groups --- data/maps/map_groups.json | 138 ++++++++++++++++----------------- include/constants/map_groups.h | 68 ++++++++-------- tools/mapjson/mapjson.cpp | 2 +- 3 files changed, 104 insertions(+), 104 deletions(-) diff --git a/data/maps/map_groups.json b/data/maps/map_groups.json index 4268abbef5ea..ebef431b300d 100644 --- a/data/maps/map_groups.json +++ b/data/maps/map_groups.json @@ -1,41 +1,41 @@ { "group_order": [ - "gMapGroup0", - "gMapGroup1", - "gMapGroup2", - "gMapGroup3", - "gMapGroup4", - "gMapGroup5", - "gMapGroup6", - "gMapGroup7", - "gMapGroup8", - "gMapGroup9", - "gMapGroup10", - "gMapGroup11", - "gMapGroup12", - "gMapGroup13", - "gMapGroup14", - "gMapGroup15", - "gMapGroup16", - "gMapGroup17", - "gMapGroup18", - "gMapGroup19", - "gMapGroup20", - "gMapGroup21", - "gMapGroup22", - "gMapGroup23", - "gMapGroup24", - "gMapGroup25", - "gMapGroup26", - "gMapGroup27", - "gMapGroup28", - "gMapGroup29", - "gMapGroup30", - "gMapGroup31", - "gMapGroup32", - "gMapGroup33" - ], - "gMapGroup0": [ + "gMapGroup_TownsAndRoutes", + "gMapGroup_IndoorLittleroot", + "gMapGroup_IndoorOldale", + "gMapGroup_IndoorDewford", + "gMapGroup_IndoorLavaridge", + "gMapGroup_IndoorFallarbor", + "gMapGroup_IndoorVerdanturf", + "gMapGroup_IndoorPacifidlog", + "gMapGroup_IndoorPetalburg", + "gMapGroup_IndoorSlateport", + "gMapGroup_IndoorMauville", + "gMapGroup_IndoorRustboro", + "gMapGroup_IndoorFortree", + "gMapGroup_IndoorLilycove", + "gMapGroup_IndoorMossdeep", + "gMapGroup_IndoorSootopolis", + "gMapGroup_IndoorEverGrande", + "gMapGroup_IndoorRoute104", + "gMapGroup_IndoorRoute111", + "gMapGroup_IndoorRoute112", + "gMapGroup_IndoorRoute114", + "gMapGroup_IndoorRoute116", + "gMapGroup_IndoorRoute117", + "gMapGroup_IndoorRoute121", + "gMapGroup_Dungeons", + "gMapGroup_IndoorDynamic", + "gMapGroup_SpecialArea", + "gMapGroup_IndoorRoute104Prototype", + "gMapGroup_IndoorRoute109", + "gMapGroup_IndoorRoute110", + "gMapGroup_IndoorRoute113", + "gMapGroup_IndoorRoute123", + "gMapGroup_IndoorRoute119", + "gMapGroup_IndoorRoute124" + ], + "gMapGroup_TownsAndRoutes": [ "PetalburgCity", "SlateportCity", "MauvilleCity", @@ -94,21 +94,21 @@ "Underwater_Route105", "Underwater_Route125" ], - "gMapGroup1": [ + "gMapGroup_IndoorLittleroot": [ "LittlerootTown_BrendansHouse_1F", "LittlerootTown_BrendansHouse_2F", "LittlerootTown_MaysHouse_1F", "LittlerootTown_MaysHouse_2F", "LittlerootTown_ProfessorBirchsLab" ], - "gMapGroup2": [ + "gMapGroup_IndoorOldale": [ "OldaleTown_House1", "OldaleTown_House2", "OldaleTown_PokemonCenter_1F", "OldaleTown_PokemonCenter_2F", "OldaleTown_Mart" ], - "gMapGroup3": [ + "gMapGroup_IndoorDewford": [ "DewfordTown_House1", "DewfordTown_PokemonCenter_1F", "DewfordTown_PokemonCenter_2F", @@ -116,7 +116,7 @@ "DewfordTown_Hall", "DewfordTown_House2" ], - "gMapGroup4": [ + "gMapGroup_IndoorLavaridge": [ "LavaridgeTown_HerbShop", "LavaridgeTown_Gym_1F", "LavaridgeTown_Gym_B1F", @@ -125,7 +125,7 @@ "LavaridgeTown_PokemonCenter_1F", "LavaridgeTown_PokemonCenter_2F" ], - "gMapGroup5": [ + "gMapGroup_IndoorFallarbor": [ "FallarborTown_Mart", "FallarborTown_BattleTentLobby", "FallarborTown_BattleTentCorridor", @@ -135,7 +135,7 @@ "FallarborTown_CozmosHouse", "FallarborTown_MoveRelearnersHouse" ], - "gMapGroup6": [ + "gMapGroup_IndoorVerdanturf": [ "VerdanturfTown_BattleTentLobby", "VerdanturfTown_BattleTentCorridor", "VerdanturfTown_BattleTentBattleRoom", @@ -146,7 +146,7 @@ "VerdanturfTown_FriendshipRatersHouse", "VerdanturfTown_House" ], - "gMapGroup7": [ + "gMapGroup_IndoorPacifidlog": [ "PacifidlogTown_PokemonCenter_1F", "PacifidlogTown_PokemonCenter_2F", "PacifidlogTown_House1", @@ -155,7 +155,7 @@ "PacifidlogTown_House4", "PacifidlogTown_House5" ], - "gMapGroup8": [ + "gMapGroup_IndoorPetalburg": [ "PetalburgCity_WallysHouse", "PetalburgCity_Gym", "PetalburgCity_House1", @@ -164,7 +164,7 @@ "PetalburgCity_PokemonCenter_2F", "PetalburgCity_Mart" ], - "gMapGroup9": [ + "gMapGroup_IndoorSlateport": [ "SlateportCity_SternsShipyard_1F", "SlateportCity_SternsShipyard_2F", "SlateportCity_BattleTentLobby", @@ -180,7 +180,7 @@ "SlateportCity_PokemonCenter_2F", "SlateportCity_Mart" ], - "gMapGroup10": [ + "gMapGroup_IndoorMauville": [ "MauvilleCity_Gym", "MauvilleCity_BikeShop", "MauvilleCity_House1", @@ -190,7 +190,7 @@ "MauvilleCity_PokemonCenter_2F", "MauvilleCity_Mart" ], - "gMapGroup11": [ + "gMapGroup_IndoorRustboro": [ "RustboroCity_DevonCorp_1F", "RustboroCity_DevonCorp_2F", "RustboroCity_DevonCorp_3F", @@ -209,7 +209,7 @@ "RustboroCity_Flat2_3F", "RustboroCity_House3" ], - "gMapGroup12": [ + "gMapGroup_IndoorFortree": [ "FortreeCity_House1", "FortreeCity_Gym", "FortreeCity_PokemonCenter_1F", @@ -221,7 +221,7 @@ "FortreeCity_House5", "FortreeCity_DecorationShop" ], - "gMapGroup13": [ + "gMapGroup_IndoorLilycove": [ "LilycoveCity_CoveLilyMotel_1F", "LilycoveCity_CoveLilyMotel_2F", "LilycoveCity_LilycoveMuseum_1F", @@ -246,7 +246,7 @@ "LilycoveCity_DepartmentStoreRooftop", "LilycoveCity_DepartmentStoreElevator" ], - "gMapGroup14": [ + "gMapGroup_IndoorMossdeep": [ "MossdeepCity_Gym", "MossdeepCity_House1", "MossdeepCity_House2", @@ -261,7 +261,7 @@ "MossdeepCity_GameCorner_1F", "MossdeepCity_GameCorner_B1F" ], - "gMapGroup15": [ + "gMapGroup_IndoorSootopolis": [ "SootopolisCity_Gym_1F", "SootopolisCity_Gym_B1F", "SootopolisCity_PokemonCenter_1F", @@ -278,7 +278,7 @@ "SootopolisCity_MysteryEventsHouse_1F", "SootopolisCity_MysteryEventsHouse_B1F" ], - "gMapGroup16": [ + "gMapGroup_IndoorEverGrande": [ "EverGrandeCity_SidneysRoom", "EverGrandeCity_PhoebesRoom", "EverGrandeCity_GlaciasRoom", @@ -295,33 +295,33 @@ "EverGrandeCity_PokemonCenter_2F", "EverGrandeCity_PokemonLeague_2F" ], - "gMapGroup17": [ + "gMapGroup_IndoorRoute104": [ "Route104_MrBrineysHouse", "Route104_PrettyPetalFlowerShop" ], - "gMapGroup18": [ + "gMapGroup_IndoorRoute111": [ "Route111_WinstrateFamilysHouse", "Route111_OldLadysRestStop" ], - "gMapGroup19": [ + "gMapGroup_IndoorRoute112": [ "Route112_CableCarStation", "MtChimney_CableCarStation" ], - "gMapGroup20": [ + "gMapGroup_IndoorRoute114": [ "Route114_FossilManiacsHouse", "Route114_FossilManiacsTunnel", "Route114_LanettesHouse" ], - "gMapGroup21": [ + "gMapGroup_IndoorRoute116": [ "Route116_TunnelersRestHouse" ], - "gMapGroup22": [ + "gMapGroup_IndoorRoute117": [ "Route117_PokemonDayCare" ], - "gMapGroup23": [ + "gMapGroup_IndoorRoute121": [ "Route121_SafariZoneEntrance" ], - "gMapGroup24": [ + "gMapGroup_Dungeons": [ "MeteorFalls_1F_1R", "MeteorFalls_1F_2R", "MeteorFalls_B1F_1R", @@ -431,7 +431,7 @@ "AlteringCave", "MeteorFalls_StevensCave" ], - "gMapGroup25": [ + "gMapGroup_IndoorDynamic": [ "SecretBase_RedCave1", "SecretBase_BrownCave1", "SecretBase_BlueCave1", @@ -494,7 +494,7 @@ "BattlePyramidSquare16", "UnionRoom" ], - "gMapGroup26": [ + "gMapGroup_SpecialArea": [ "SafariZone_Northwest", "SafariZone_North", "SafariZone_Southwest", @@ -585,14 +585,14 @@ "NavelRock_Bottom", "TrainerHill_Elevator" ], - "gMapGroup27": [ + "gMapGroup_IndoorRoute104Prototype": [ "Route104_Prototype", "Route104_PrototypePrettyPetalFlowerShop" ], - "gMapGroup28": [ + "gMapGroup_IndoorRoute109": [ "Route109_SeashoreHouse" ], - "gMapGroup29": [ + "gMapGroup_IndoorRoute110": [ "Route110_TrickHouseEntrance", "Route110_TrickHouseEnd", "Route110_TrickHouseCorridor", @@ -607,18 +607,18 @@ "Route110_SeasideCyclingRoadNorthEntrance", "Route110_SeasideCyclingRoadSouthEntrance" ], - "gMapGroup30": [ + "gMapGroup_IndoorRoute113": [ "Route113_GlassWorkshop" ], - "gMapGroup31": [ + "gMapGroup_IndoorRoute123": [ "Route123_BerryMastersHouse" ], - "gMapGroup32": [ + "gMapGroup_IndoorRoute119": [ "Route119_WeatherInstitute_1F", "Route119_WeatherInstitute_2F", "Route119_House" ], - "gMapGroup33": [ + "gMapGroup_IndoorRoute124": [ "Route124_DivingTreasureHuntersHouse" ], "connections_include_order": [ diff --git a/include/constants/map_groups.h b/include/constants/map_groups.h index c650600e841f..eaf40a525d00 100755 --- a/include/constants/map_groups.h +++ b/include/constants/map_groups.h @@ -5,7 +5,7 @@ // DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json // -// Map Group 0 +// gMapGroup_TownsAndRoutes #define MAP_PETALBURG_CITY (0 | (0 << 8)) #define MAP_SLATEPORT_CITY (1 | (0 << 8)) #define MAP_MAUVILLE_CITY (2 | (0 << 8)) @@ -64,21 +64,21 @@ #define MAP_UNDERWATER_ROUTE105 (55 | (0 << 8)) #define MAP_UNDERWATER_ROUTE125 (56 | (0 << 8)) -// Map Group 1 +// 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)) -// Map Group 2 +// 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)) -// Map Group 3 +// 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)) @@ -86,7 +86,7 @@ #define MAP_DEWFORD_TOWN_HALL (4 | (3 << 8)) #define MAP_DEWFORD_TOWN_HOUSE2 (5 | (3 << 8)) -// Map Group 4 +// 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)) @@ -95,7 +95,7 @@ #define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8)) #define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8)) -// Map Group 5 +// 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)) @@ -105,7 +105,7 @@ #define MAP_FALLARBOR_TOWN_COZMOS_HOUSE (6 | (5 << 8)) #define MAP_FALLARBOR_TOWN_MOVE_RELEARNERS_HOUSE (7 | (5 << 8)) -// Map Group 6 +// 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)) @@ -116,7 +116,7 @@ #define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (7 | (6 << 8)) #define MAP_VERDANTURF_TOWN_HOUSE (8 | (6 << 8)) -// Map Group 7 +// 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)) @@ -125,7 +125,7 @@ #define MAP_PACIFIDLOG_TOWN_HOUSE4 (5 | (7 << 8)) #define MAP_PACIFIDLOG_TOWN_HOUSE5 (6 | (7 << 8)) -// Map Group 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)) @@ -134,7 +134,7 @@ #define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8)) #define MAP_PETALBURG_CITY_MART (6 | (8 << 8)) -// Map Group 9 +// 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)) @@ -150,7 +150,7 @@ #define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F (12 | (9 << 8)) #define MAP_SLATEPORT_CITY_MART (13 | (9 << 8)) -// Map Group 10 +// 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)) @@ -160,7 +160,7 @@ #define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8)) #define MAP_MAUVILLE_CITY_MART (7 | (10 << 8)) -// Map Group 11 +// 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)) @@ -179,7 +179,7 @@ #define MAP_RUSTBORO_CITY_FLAT2_3F (15 | (11 << 8)) #define MAP_RUSTBORO_CITY_HOUSE3 (16 | (11 << 8)) -// Map Group 12 +// 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)) @@ -191,7 +191,7 @@ #define MAP_FORTREE_CITY_HOUSE5 (8 | (12 << 8)) #define MAP_FORTREE_CITY_DECORATION_SHOP (9 | (12 << 8)) -// Map Group 13 +// 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)) @@ -216,7 +216,7 @@ #define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP (21 | (13 << 8)) #define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (22 | (13 << 8)) -// Map Group 14 +// 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)) @@ -231,7 +231,7 @@ #define MAP_MOSSDEEP_CITY_GAME_CORNER_1F (11 | (14 << 8)) #define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F (12 | (14 << 8)) -// Map Group 15 +// 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)) @@ -248,7 +248,7 @@ #define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F (13 | (15 << 8)) #define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F (14 | (15 << 8)) -// Map Group 16 +// 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)) @@ -265,33 +265,33 @@ #define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8)) #define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F (14 | (16 << 8)) -// Map Group 17 +// gMapGroup_IndoorRoute104 #define MAP_ROUTE104_MR_BRINEYS_HOUSE (0 | (17 << 8)) #define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8)) -// Map Group 18 +// gMapGroup_IndoorRoute111 #define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8)) #define MAP_ROUTE111_OLD_LADYS_REST_STOP (1 | (18 << 8)) -// Map Group 19 +// gMapGroup_IndoorRoute112 #define MAP_ROUTE112_CABLE_CAR_STATION (0 | (19 << 8)) #define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8)) -// Map Group 20 +// 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)) -// Map Group 21 +// gMapGroup_IndoorRoute116 #define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8)) -// Map Group 22 +// gMapGroup_IndoorRoute117 #define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8)) -// Map Group 23 +// gMapGroup_IndoorRoute121 #define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8)) -// Map Group 24 +// 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)) @@ -401,7 +401,7 @@ #define MAP_ALTERING_CAVE (106 | (24 << 8)) #define MAP_METEOR_FALLS_STEVENS_CAVE (107 | (24 << 8)) -// Map Group 25 +// 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)) @@ -464,7 +464,7 @@ #define MAP_BATTLE_PYRAMID_SQUARE16 (59 | (25 << 8)) #define MAP_UNION_ROOM (60 | (25 << 8)) -// Map Group 26 +// 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)) @@ -555,14 +555,14 @@ #define MAP_NAVEL_ROCK_BOTTOM (87 | (26 << 8)) #define MAP_TRAINER_HILL_ELEVATOR (88 | (26 << 8)) -// Map Group 27 +// gMapGroup_IndoorRoute104Prototype #define MAP_ROUTE104_PROTOTYPE (0 | (27 << 8)) #define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8)) -// Map Group 28 +// gMapGroup_IndoorRoute109 #define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8)) -// Map Group 29 +// 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)) @@ -577,18 +577,18 @@ #define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (11 | (29 << 8)) #define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (12 | (29 << 8)) -// Map Group 30 +// gMapGroup_IndoorRoute113 #define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8)) -// Map Group 31 +// gMapGroup_IndoorRoute123 #define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8)) -// Map Group 32 +// 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)) -// Map Group 33 +// gMapGroup_IndoorRoute124 #define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8)) #define MAP_GROUPS_COUNT 34 diff --git a/tools/mapjson/mapjson.cpp b/tools/mapjson/mapjson.cpp index 5e246ff2490b..d767b469e9cc 100644 --- a/tools/mapjson/mapjson.cpp +++ b/tools/mapjson/mapjson.cpp @@ -395,7 +395,7 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) { int group_num = 0; for (auto &group : groups_data["group_order"].array_items()) { - text << "// Map Group " << group_num << "\n"; + text << "// " << group.string_value() << "\n"; vector map_ids; size_t max_length = 0; From 7d3f25dfb0acf3902a41a4312c6ea45f325bf6b1 Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Wed, 12 May 2021 16:54:41 -0400 Subject: [PATCH 169/762] Change IsPokemonCryPlaying to bool32 Better reflects its usage --- berry_fix/payload/include/gba/m4a_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/berry_fix/payload/include/gba/m4a_internal.h b/berry_fix/payload/include/gba/m4a_internal.h index 339a0774ed5c..1aca67585480 100644 --- a/berry_fix/payload/include/gba/m4a_internal.h +++ b/berry_fix/payload/include/gba/m4a_internal.h @@ -419,7 +419,7 @@ void SetPokemonCryPitch(s16 val); void SetPokemonCryLength(u16 val); void SetPokemonCryRelease(u8 val); void SetPokemonCryProgress(u32 val); -int IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo); +bool32 IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo); void SetPokemonCryChorus(s8 val); void SetPokemonCryStereo(u32 val); void SetPokemonCryPriority(u8 val); From 3e15a3ef8fe45373acb11d81046f081b6492a0d0 Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Wed, 12 May 2021 16:58:34 -0400 Subject: [PATCH 170/762] Update IsPokemonCryPlaying --- src/m4a.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/m4a.c b/src/m4a.c index 3bb440f65633..717cafc78e44 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1703,14 +1703,14 @@ void SetPokemonCryProgress(u32 val) gPokemonCrySong.unkCmd0DParam = val; } -int IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo) +bool32 IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo) { struct MusicPlayerTrack *track = mplayInfo->tracks; if (track->chan && track->chan->track == track) - return 1; + return TRUE; else - return 0; + return FALSE; } void SetPokemonCryChorus(s8 val) From 2be29cdb77afd5ffcb8ce70fbc9bef0c77db556a Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Wed, 12 May 2021 17:00:42 -0400 Subject: [PATCH 171/762] Update IsPokemonCryPlaying --- include/gba/m4a_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index 2d0e1bb1cd1d..2ccbb18f5b61 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -447,7 +447,7 @@ void SetPokemonCryPitch(s16 val); void SetPokemonCryLength(u16 val); void SetPokemonCryRelease(u8 val); void SetPokemonCryProgress(u32 val); -int IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo); +bool32 IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo); void SetPokemonCryChorus(s8 val); void SetPokemonCryStereo(u32 val); void SetPokemonCryPriority(u8 val); From 9a195c0fef7a47e5ab55c7047d80969c9cd6e44e Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Wed, 12 May 2021 15:23:14 -0400 Subject: [PATCH 172/762] Cherry-pick roamer bug fix from pokefirered Adapted https://github.com/pret/pokefirered/blob/master/src/battle_main.c#L3831 to pokeemerald --- src/battle_main.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/battle_main.c b/src/battle_main.c index c74de896e6ba..001e2ec17c05 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -5148,7 +5148,12 @@ static void ReturnFromBattleToOverworld(void) if (gBattleTypeFlags & BATTLE_TYPE_ROAMER) { UpdateRoamerHPStatus(&gEnemyParty[0]); + +#ifndef BUGFIX if ((gBattleOutcome & B_OUTCOME_WON) || gBattleOutcome == B_OUTCOME_CAUGHT) +#else + if ((gBattleOutcome == B_OUTCOME_WON) || gBattleOutcome == B_OUTCOME_CAUGHT) // Bug: When Roar is used by roamer, gBattleOutcome is B_OUTCOME_PLAYER_TELEPORTED (5). +#endif // & with B_OUTCOME_WON (1) will return TRUE and deactivates the roamer. SetRoamerInactive(); } From dfd87e09f95910c6ce3b0b9d955e179d6d65951f Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 2 May 2021 20:56:30 -0400 Subject: [PATCH 173/762] [LEAK-INFORMED] fix text.c "eff" fakematch --- gflib/text.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index 445a7b1be003..eb993c42145f 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -1632,8 +1632,7 @@ void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese) if (isJapanese == TRUE) { - int eff; - glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & (eff = 0xF))); // shh, no questions, only matching now + glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; @@ -1761,8 +1760,7 @@ void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese) if (isJapanese == TRUE) { - int eff; - glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & (eff = 0xF))); // shh, no questions, only matching now + glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; From fa23b196a96e58eaa14d996ac88a3e9b1f274a84 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 3 May 2021 18:22:44 -0400 Subject: [PATCH 174/762] [LEAK-INFORMED] fix battle_interface fakematch --- src/battle_interface.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index 5518fd21bf30..b309d62b0606 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1099,21 +1099,14 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) u32 windowId, spriteTileNum; u8 *windowTileData; u8 text[16]; - u32 xPos, var1; - void *objVram; + u32 xPos; + u8 *objVram; text[0] = 0xF9; text[1] = 5; - xPos = (u32) ConvertIntToDecimalStringN(text + 2, lvl, STR_CONV_MODE_LEFT_ALIGN, 3); - // Alright, that part was unmatchable. It's basically doing: - // xPos = 5 * (3 - (u32)(&text[2])); - xPos--; - xPos--; - xPos -= ((u32)(text)); - var1 = (3 - xPos); - xPos = 4 * var1; - xPos += var1; + objVram = ConvertIntToDecimalStringN(text + 2, lvl, STR_CONV_MODE_LEFT_ALIGN, 3); + xPos = 5 * (3 - (objVram - (text + 2))); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, xPos, 3, 2, &windowId); spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP; From 7740ca13038810421d787a248cf62d307c1ab1ef Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 4 May 2021 01:55:16 -0400 Subject: [PATCH 175/762] replace raw values with char constants --- src/battle_interface.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index b309d62b0606..ff376f6f14e6 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1101,9 +1101,9 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) u8 text[16]; u32 xPos; u8 *objVram; - - text[0] = 0xF9; - text[1] = 5; + + text[0] = CHAR_EXTRA_SYMBOL; + text[1] = CHAR_LV_2; objVram = ConvertIntToDecimalStringN(text + 2, lvl, STR_CONV_MODE_LEFT_ALIGN, 3); xPos = 5 * (3 - (objVram - (text + 2))); From dbc1b9aacf9790c2ee6d5e732cae697b998f98fb Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 00:09:28 -0400 Subject: [PATCH 176/762] fix goto in bike.c --- src/bike.c | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/src/bike.c b/src/bike.c index bbcda989c93b..62ce3cd4461b 100644 --- a/src/bike.c +++ b/src/bike.c @@ -614,27 +614,24 @@ static void AcroBikeTransition_WheelieHoppingMoving(u8 direction) return; } collision = GetBikeCollision(direction); - // TODO: Try to get rid of this goto - if (collision == 0 || collision == COLLISION_WHEELIE_HOP) + if (collision && collision != COLLISION_WHEELIE_HOP) { - goto derp; - } - else if (collision == COLLISION_LEDGE_JUMP) - { - PlayerLedgeHoppingWheelie(direction); - } - else if (collision < COLLISION_STOP_SURFING || collision > COLLISION_ROTATING_GATE) - { - if (collision < COLLISION_VERTICAL_RAIL) + if (collision == COLLISION_LEDGE_JUMP) { - AcroBikeTransition_WheelieHoppingStanding(direction); + PlayerLedgeHoppingWheelie(direction); + return; } - else + if (collision >= COLLISION_STOP_SURFING && collision <= COLLISION_ROTATING_GATE) + { + return; + } + if (collision < COLLISION_VERTICAL_RAIL) { - derp: - PlayerMovingHoppingWheelie(direction); + AcroBikeTransition_WheelieHoppingStanding(direction); + return; } } + PlayerMovingHoppingWheelie(direction); } static void AcroBikeTransition_SideJump(u8 direction) From f0453871a2bb5a35d446b177eb6f5feaa882df42 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 00:31:39 -0400 Subject: [PATCH 177/762] fix battle_dome goto --- src/battle_dome.c | 46 ++++++++++++++++++++++------------------------ 1 file changed, 22 insertions(+), 24 deletions(-) diff --git a/src/battle_dome.c b/src/battle_dome.c index a5cf168ef82a..a3bf3dadfa6a 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5211,40 +5211,38 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun } j = bestId; - goto LABEL; - while (j != 0) + do { - for (j = 0, k = 0; k < MAX_MON_MOVES * FRONTIER_PARTY_SIZE; k++) + for (i = 0; i < roundId - 1; i++) { - if (bestScore < moveScores[k]) - { - j = k; - bestScore = moveScores[k]; - } - else if (bestScore == moveScores[k] && moveIds[j] < moveIds[k]) - { - j = k; - } + if (gSaveBlock2Ptr->frontier.domeWinningMoves[sub_81953E8(winnerTournamentId, i)] == moveIds[j]) + break; } - if (i == roundId - 1) - break; - LABEL: + if (i != roundId - 1) { - for (i = 0; i < roundId - 1; i++) - { - if (gSaveBlock2Ptr->frontier.domeWinningMoves[sub_81953E8(winnerTournamentId, i)] == moveIds[j]) - break; - } - if (i == roundId - 1) - break; - moveScores[j] = 0; bestScore = 0; j = 0; for (k = 0; k < MAX_MON_MOVES * FRONTIER_PARTY_SIZE; k++) j += moveScores[k]; + if (j == 0) + break; + j = 0; + for (k = 0; k < MAX_MON_MOVES * FRONTIER_PARTY_SIZE; k++) + { + if (bestScore < moveScores[k]) + { + j = k; + bestScore = moveScores[k]; + } + else if (bestScore == moveScores[k] && moveIds[j] < moveIds[k]) // Yes, these conditions are redundant + { + j = k; + bestScore = moveScores[k]; + } + } } - } + } while (i != roundId - 1); if (moveScores[j] == 0) j = bestId; From 0c7773ad75b765ffed25050acdc528a601eff48f Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 01:03:39 -0400 Subject: [PATCH 178/762] fix mystery_gift gotos --- src/mystery_gift.c | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 1e00a5788bdc..afbe50e4d27b 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -558,14 +558,12 @@ bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str) { case 0: AddTextPrinterToWindow1(str); - goto inc; + (*textState)++; + break; case 1: DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); if (({JOY_NEW(A_BUTTON | B_BUTTON);})) - { - inc: (*textState)++; - } break; case 2: DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); @@ -574,7 +572,7 @@ bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str) return TRUE; case 0xFF: *textState = 2; - break; + return FALSE; } return FALSE; } @@ -809,8 +807,6 @@ static bool32 ValidateCardOrNews(bool32 cardOrNews) static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) { - s32 v0; - switch (*state) { case 0: @@ -827,20 +823,18 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) case 1: if (cardOrNews == 0) { - v0 = FadeToWonderCardMenu(); - check: - if (v0 != 0) + if (!FadeToWonderCardMenu()) { - goto done; + return FALSE; } - break; } else { - v0 = FadeToWonderNewsMenu(); - goto check; + if (!FadeToWonderNewsMenu()) + { + return FALSE; + } } - done: *state = 0; return TRUE; } From 3b7f708eb01b90e6adbf34245297a6188014acb9 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 01:17:52 -0400 Subject: [PATCH 179/762] fix player_pc goto --- src/player_pc.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/player_pc.c b/src/player_pc.c index e5c3c5a184e1..a040ba5b6e5b 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -1245,7 +1245,6 @@ static void ItemStorage_DoItemSwap(u8 taskId, bool8 a) { s16 *data; u16 b; - u8 c; data = gTasks[taskId].data; b = (playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos); @@ -1253,21 +1252,17 @@ static void ItemStorage_DoItemSwap(u8 taskId, bool8 a) DestroyListMenuTask(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); if (!a) { - c = gUnknown_0203BCC4->unk666; - if (c != b) + if (gUnknown_0203BCC4->unk666 != b) { - if (c != b - 1) + if (gUnknown_0203BCC4->unk666 != b - 1) { - MoveItemSlotInList(gSaveBlock1Ptr->pcItems, c, b); + MoveItemSlotInList(gSaveBlock1Ptr->pcItems, gUnknown_0203BCC4->unk666, b); ItemStorage_RefreshListMenu(); } } - else - goto LABEL_SKIP_CURSOR_DECREMENT; } if (gUnknown_0203BCC4->unk666 < b) playerPCItemPageInfo.cursorPos--; - LABEL_SKIP_CURSOR_DECREMENT: SetSwapLineSpritesInvisibility(gUnknown_0203BCC4->spriteIds, 7, TRUE); gUnknown_0203BCC4->unk666 = 0xFF; data[5] = ListMenuInit(&gMultiuseListMenuTemplate, playerPCItemPageInfo.itemsAbove, playerPCItemPageInfo.cursorPos); From 2cc38acb8443c2c3b7da8d1e86482d25315a9880 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 01:27:28 -0400 Subject: [PATCH 180/762] fix item.c gotos --- src/item.c | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/src/item.c b/src/item.c index cc9a09ee05dc..68907b02c039 100644 --- a/src/item.c +++ b/src/item.c @@ -280,10 +280,6 @@ bool8 AddBagItem(u16 itemId, u16 count) { // successfully added to already existing item's count SetBagItemQuantity(&newItems[i].quantity, ownedCount + count); - - // goto SUCCESS_ADD_ITEM; - // is equivalent but won't match - memcpy(itemPocket->itemSlots, newItems, itemPocket->capacity * sizeof(struct ItemSlot)); Free(newItems); return TRUE; @@ -303,7 +299,7 @@ bool8 AddBagItem(u16 itemId, u16 count) // don't create another instance of the item if it's at max slot capacity and count is equal to 0 if (count == 0) { - goto SUCCESS_ADD_ITEM; + break; } } } @@ -334,7 +330,8 @@ bool8 AddBagItem(u16 itemId, u16 count) { // created a new slot and added quantity SetBagItemQuantity(&newItems[i].quantity, count); - goto SUCCESS_ADD_ITEM; + count = 0; + break; } } } @@ -345,11 +342,9 @@ bool8 AddBagItem(u16 itemId, u16 count) return FALSE; } } - - SUCCESS_ADD_ITEM: - memcpy(itemPocket->itemSlots, newItems, itemPocket->capacity * sizeof(struct ItemSlot)); - Free(newItems); - return TRUE; + memcpy(itemPocket->itemSlots, newItems, itemPocket->capacity * sizeof(struct ItemSlot)); + Free(newItems); + return TRUE; } } From e737f1f924930e8511ac81b2e82f52c54073c1c3 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 9 May 2021 01:38:57 -0400 Subject: [PATCH 181/762] fix main_menu goto --- src/main_menu.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/main_menu.c b/src/main_menu.c index 38859b860291..38e7648d0114 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1387,11 +1387,9 @@ static void Task_NewGameBirchSpeechSub_WaitForLotad(u8 taskId) switch (tState) { case 0: - if (sprite->callback == SpriteCallbackDummy) - { - sprite->oam.affineMode = ST_OAM_AFFINE_OFF; - goto incrementStateAndTimer; - } + if (sprite->callback != SpriteCallbackDummy) + return; + sprite->oam.affineMode = ST_OAM_AFFINE_OFF; break; case 1: if (gTasks[sBirchSpeechMainTaskId].tTimer >= 96) @@ -1400,14 +1398,11 @@ static void Task_NewGameBirchSpeechSub_WaitForLotad(u8 taskId) if (gTasks[sBirchSpeechMainTaskId].tTimer < 0x4000) gTasks[sBirchSpeechMainTaskId].tTimer++; } - break; - incrementStateAndTimer: - default: - tState++; - if (gTasks[sBirchSpeechMainTaskId].tTimer < 0x4000) - gTasks[sBirchSpeechMainTaskId].tTimer++; - break; + return; } + tState++; + if (gTasks[sBirchSpeechMainTaskId].tTimer < 0x4000) + gTasks[sBirchSpeechMainTaskId].tTimer++; } #undef tState From 3a403dc520cafd2e9222ab4cd2ae850d91a5e4db Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 11 May 2021 04:53:31 -0400 Subject: [PATCH 182/762] [LEAK-INFORMED] fix do {} while (0) in apprentice --- src/apprentice.c | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/src/apprentice.c b/src/apprentice.c index f93a3e30bc86..00157dc1ac3c 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -30,7 +30,7 @@ #include "constants/trainers.h" #include "constants/moves.h" -/* Summary of Apprentice, because (as of writing at least) its not very well documented online +/* Summary of Apprentice, because (as of writing at least) it's not very well documented online * * ## Basic info * In the Battle Tower lobby there is an NPC which asks to be taught by the player @@ -1107,17 +1107,24 @@ static void TrySetApprenticeHeldItem(void) if (PLAYER_APPRENTICE.questionsAnswered < NUM_WHICH_MON_QUESTIONS) return; + + count = 0; + for (j = 0; j < APPRENTICE_MAX_QUESTIONS; j++) + { + if (PLAYER_APPRENTICE.questions[j].questionId == QUESTION_ID_WIN_SPEECH) + break; + count++; + } - for (count = 0, j = 0; j < APPRENTICE_MAX_QUESTIONS && PLAYER_APPRENTICE.questions[j].questionId != QUESTION_ID_WIN_SPEECH; count++, j++) - ; - - // Make sure the item hasnt already been suggested in previous questions - for (i = 0; i < count && i < CURRENT_QUESTION_NUM; i++) + // Make sure the item hasn't already been suggested in previous questions + for (i = 0; i < count; i++) { - do {} while(0); - if (PLAYER_APPRENTICE.questions[i].questionId == QUESTION_ID_WHAT_ITEM - && PLAYER_APPRENTICE.questions[i].suggestedChange - && PLAYER_APPRENTICE.questions[i].data == gSpecialVar_0x8005) + if (i >= CURRENT_QUESTION_NUM) + break; + if (PLAYER_APPRENTICE.questions[i].questionId != QUESTION_ID_WHAT_ITEM || + PLAYER_APPRENTICE.questions[i].suggestedChange == 0) + continue; + if (PLAYER_APPRENTICE.questions[i].data == gSpecialVar_0x8005) { PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].suggestedChange = FALSE; PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].data = gSpecialVar_0x8005; From 7061e662129f453de031c5c1904663509b327720 Mon Sep 17 00:00:00 2001 From: SatoMew Date: Thu, 13 May 2021 19:49:15 +0100 Subject: [PATCH 183/762] Undo secondary changes --- README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1dbde694b1a1..7adbb3e2dada 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,10 @@ This is a decompilation of Pokémon Emerald. It builds the following ROM: -* [**pokeemerald.gba**](https://datomatic.no-intro.org/index.php?page=show_record&s=23&n=1961) (SHA-1 hash: `f3ae088181bf583e55daf962a92bb46f4f1d07b7`) +* [**pokeemerald.gba**](https://datomatic.no-intro.org/index.php?page=show_record&s=23&n=1961) `sha1: f3ae088181bf583e55daf962a92bb46f4f1d07b7` To set up the repository, see [INSTALL.md](INSTALL.md). -If you need any help, feel free to ask on the #gen-3-help channel of our [Discord](https://discord.gg/d5dubZ3), or on our [IRC server](https://kiwiirc.com/client/irc.freenode.net/?#pret). - ## See also @@ -26,3 +24,8 @@ Other disassembly and/or decompilation projects: * [**Pokémon Pinball: Ruby & Sapphire**](https://github.com/pret/pokepinballrs) * [**Pokémon FireRed and LeafGreen**](https://github.com/pret/pokefirered) * [**Pokémon Mystery Dungeon: Red Rescue Team**](https://github.com/pret/pmd-red) + + +## Contacts + +You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://kiwiirc.com/client/irc.freenode.net/?#pret). From ab8318cc79de60413085b104125490cbae344169 Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Fri, 14 May 2021 13:41:22 -0400 Subject: [PATCH 184/762] Fix UB: Destoyed task is modified. After destruction, task is no longer used, so updating its values is worthless. --- src/battle_transition.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/battle_transition.c b/src/battle_transition.c index 1b484f7c50f9..479700e53fb8 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -4328,7 +4328,10 @@ static bool8 Phase2_FrontierSquaresScroll_Func5(struct Task *task) BlendPalettes(PALETTES_ALL, 0x10, 0); DestroyTask(FindTaskIdByFunc(task->func)); + +#ifndef UBFIX task->tState++; // UB: changing value of a destroyed task +#endif return FALSE; } From 361fa594b30005edaa8aef5f6b02ac8b15149cba Mon Sep 17 00:00:00 2001 From: ExpoSeed <> Date: Sat, 15 May 2021 15:56:17 -0500 Subject: [PATCH 185/762] Various BUGFIXes and UBFIXes --- src/battle_ai_script_commands.c | 7 ++++++- src/battle_anim_sound_tasks.c | 8 ++++++-- src/battle_dome.c | 11 ++++++++++- src/battle_factory_screen.c | 5 +++++ src/battle_pyramid.c | 6 +++++- src/egg_hatch.c | 3 +++ src/item.c | 1 - src/roulette.c | 4 +++- src/siirtc.c | 5 ++++- src/union_room.c | 7 ++++++- 10 files changed, 48 insertions(+), 9 deletions(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 9fdd4d0c380e..81e7c15cc7bd 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -1877,9 +1877,14 @@ static void Cmd_if_has_move_with_effect(void) case AI_TARGET_PARTNER: for (i = 0; i < MAX_MON_MOVES; i++) { - // UB: checks sBattler_AI instead of gBattlerTarget. + // BUG: checks sBattler_AI instead of gBattlerTarget. + #ifndef BUGFIX if (gBattleMons[sBattler_AI].moves[i] != 0 && gBattleMoves[BATTLE_HISTORY->usedMoves[gBattlerTarget].moves[i]].effect == gAIScriptPtr[2]) break; + #else + if (gBattleMons[gBattlerTarget].moves[i] != 0 && gBattleMoves[BATTLE_HISTORY->usedMoves[gBattlerTarget].moves[i]].effect == gAIScriptPtr[2]) + break; + #endif } if (i == MAX_MON_MOVES) gAIScriptPtr += 7; diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 8fc93c3aa952..39d6729e8dd6 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -135,8 +135,10 @@ void SoundTask_PlayCryHighPitch(u8 taskId) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) species = gContestResources->moveAnim->species; + #ifndef UBFIX else - DestroyAnimVisualTask(taskId); // UB: function should return upon destroying task. + DestroyAnimVisualTask(taskId); // UB: task gets destroyed twice. + #endif } else { @@ -179,8 +181,10 @@ void SoundTask_PlayDoubleCry(u8 taskId) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) species = gContestResources->moveAnim->species; + #ifndef UBFIX else - DestroyAnimVisualTask(taskId); // UB: function should return upon destroying task. + DestroyAnimVisualTask(taskId); // UB: task gets destroyed twice. + #endif } else { diff --git a/src/battle_dome.c b/src/battle_dome.c index a3bf3dadfa6a..59e418a06594 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2766,13 +2766,22 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) } if (TYPE_EFFECT_ATK_TYPE(i) == moveType) { - // BUG: TYPE_x2 is not necessary and makes the condition always false if the ability is wonder guard. + // BUG: the value of TYPE_x2 does not exist in gTypeEffectiveness, so if defAbility is ABILITY_WONDER_GUARD, the conditional always fails + #ifndef BUGFIX if (TYPE_EFFECT_DEF_TYPE(i) == defType1) if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_x2) || defAbility != ABILITY_WONDER_GUARD) typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; if (TYPE_EFFECT_DEF_TYPE(i) == defType2 && defType1 != defType2) if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_x2) || defAbility != ABILITY_WONDER_GUARD) typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; + #else + if (TYPE_EFFECT_DEF_TYPE(i) == defType1) + if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE) || defAbility != ABILITY_WONDER_GUARD) + typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; + if (TYPE_EFFECT_DEF_TYPE(i) == defType2 && defType1 != defType2) + if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE) || defAbility != ABILITY_WONDER_GUARD) + typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; + #endif } i += 3; } diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 680c6e81c0ff..db810e965bf3 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -4221,12 +4221,17 @@ static void Task_OpenMonPic(u8 taskId) return; break; default: + #ifndef UBFIX DestroyTask(taskId); + #endif // UB: Should not use the task after it has been deleted. if (gTasks[taskId].tIsSwapScreen == TRUE) Swap_CreateMonSprite(); else Select_CreateMonSprite(); + #ifdef UBFIX + DestroyTask(taskId); + #endif return; } task->tState++; diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index a41a80bbb3f0..8eb09bb8da00 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1399,8 +1399,12 @@ void GenerateBattlePyramidWildMon(void) for (i = 0; i < MAX_MON_MOVES; i++) SetMonMoveSlot(&gEnemyParty[0], wildMons[id].moves[i], i); - // BUG: Reading outside the array as lvl was used for mon level instead of frontier lvl mode. + // UB: Reading outside the array as lvl was used for mon level instead of frontier lvl mode. + #ifndef UBFIX if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvl] >= 140) + #else + if (gSaveBlock2Ptr->frontier.pyramidWinStreas[gSaveBlock2Ptr->frontier.lvlMode] >= 140) + #endif { id = (Random() % 17) + 15; for (i = 0; i < NUM_STATS; i++) diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 7a3019f56c0d..576e5c0d9ffc 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -584,6 +584,9 @@ static void Task_EggHatchPlayBGM(u8 taskID) PlayBGM(MUS_EVOLUTION); DestroyTask(taskID); // UB: task is destroyed, yet the value is incremented + #ifdef UBFIX + return; + #endif } gTasks[taskID].data[0]++; } diff --git a/src/item.c b/src/item.c index 68907b02c039..1560342629c0 100644 --- a/src/item.c +++ b/src/item.c @@ -548,7 +548,6 @@ bool8 AddPCItem(u16 itemId, u16 count) void RemovePCItem(u8 index, u16 count) { - // UB: should use GetPCItemQuantity and SetPCItemQuantity functions gSaveBlock1Ptr->pcItems[index].quantity -= count; if (gSaveBlock1Ptr->pcItems[index].quantity == 0) { diff --git a/src/roulette.c b/src/roulette.c index 1ea69dc2e995..adde16199181 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -2896,7 +2896,9 @@ static const union AnimCmd sAnim_CreditDigit[] = ANIMCMD_FRAME(18, 0), // 9 // BUG: Animation not terminated properly // Doesn't matter in practice, the frames are set directly and not looped - //ANIMCMD_END +#ifdef BUGFIX + ANIMCMD_END +#endif }; static const union AnimCmd *const sAnims_CreditDigit[] = diff --git a/src/siirtc.c b/src/siirtc.c index 5c153a841391..01d2e0e72316 100644 --- a/src/siirtc.c +++ b/src/siirtc.c @@ -417,6 +417,9 @@ static u8 ReadData() u8 i; u8 temp; u8 value; + #ifdef UBFIX + value = 0; + #endif for (i = 0; i < 8; i++) { @@ -428,7 +431,7 @@ static u8 ReadData() GPIO_PORT_DATA = SCK_HI | CS_HI; temp = ((GPIO_PORT_DATA & SIO_HI) >> 1); - value = (value >> 1) | (temp << 7); // UB: accessing uninitialized var + value = (value >> 1) | (temp << 7); // UB: value is uninitialized on first iteration } return value; diff --git a/src/union_room.c b/src/union_room.c index f41cfd45f30d..bd6b303b9261 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -319,8 +319,13 @@ static void StringExpandPlaceholders_AwaitingCommFromAnother(u8 *dst, u8 caseId) case ACTIVITY_CONTEST_CUTE: case ACTIVITY_CONTEST_SMART: case ACTIVITY_CONTEST_TOUGH: - // UB: argument *dst isn't used, instead it always prints to gStringVar4 + // BUG: argument *dst isn't used, instead it always prints to gStringVar4 + // not an issue in practice since Gamefreak never used any other arguments here besides gStringVar4 + #ifndef BUGFIX StringExpandPlaceholders(gStringVar4, sText_AwaitingCommunication); + #else + StringExpandPlaceholders(dst, sText_AwaitingCommunication); + #endif break; } } From a7e3da2301aa7913f2437fe2152efcec6e96faef Mon Sep 17 00:00:00 2001 From: ExpoSeed <> Date: Sat, 15 May 2021 15:59:54 -0500 Subject: [PATCH 186/762] pyramidWinStreas --- src/battle_pyramid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 8eb09bb8da00..50efeecb4d40 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1403,7 +1403,7 @@ void GenerateBattlePyramidWildMon(void) #ifndef UBFIX if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvl] >= 140) #else - if (gSaveBlock2Ptr->frontier.pyramidWinStreas[gSaveBlock2Ptr->frontier.lvlMode] >= 140) + if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[gSaveBlock2Ptr->frontier.lvlMode] >= 140) #endif { id = (Random() % 17) + 15; From 76b99e66dcc4fc977e477f68313bb5636ba8ad62 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Sun, 16 May 2021 20:46:58 -0400 Subject: [PATCH 187/762] Added missing Treecko from animation list. --- src/pokemon.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pokemon.c b/src/pokemon.c index b4eb6f01afed..28b402216552 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1642,6 +1642,7 @@ static const u8 sMonFrontAnimIdsTable[] = [SPECIES_LUGIA - 1] = ANIM_GROW_IN_STAGES, [SPECIES_HO_OH - 1] = ANIM_GROW_VIBRATE, [SPECIES_CELEBI - 1] = ANIM_RISING_WOBBLE, + [SPECIES_TREECKO - 1] = ANIM_V_SQUISH_AND_BOUNCE, [SPECIES_GROVYLE - 1] = ANIM_V_STRETCH, [SPECIES_SCEPTILE - 1] = ANIM_V_SHAKE, [SPECIES_TORCHIC - 1] = ANIM_H_STRETCH, From c8be6a1fbba64edb8bb807f772135e927aa288a9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 17 May 2021 03:06:02 -0400 Subject: [PATCH 188/762] Remove leftover berry descriptions --- data/text/berry_descriptions.inc | 258 ------------------------------- 1 file changed, 258 deletions(-) delete mode 100644 data/text/berry_descriptions.inc diff --git a/data/text/berry_descriptions.inc b/data/text/berry_descriptions.inc deleted file mode 100644 index e5917ca32b26..000000000000 --- a/data/text/berry_descriptions.inc +++ /dev/null @@ -1,258 +0,0 @@ -gBerryDescriptionPart1_Cheri:: @ 8589AE4 - .string "Blooms with delicate pretty flowers.$" - -gBerryDescriptionPart2_Cheri:: @ 8589B09 - .string "The bright red BERRY is very spicy.$" - -gBerryDescriptionPart1_Chesto:: @ 8589B2D - .string "The BERRY's thick skin and fruit are$" - -gBerryDescriptionPart2_Chesto:: @ 8589B52 - .string "very tough. It is dry-tasting all over.$" - -gBerryDescriptionPart1_Pecha:: @ 8589B7A - .string "Very sweet and delicious.$" - -gBerryDescriptionPart2_Pecha:: @ 8589B94 - .string "Also very tender - handle with care.$" - -gBerryDescriptionPart1_Rawst:: @ 8589BB9 - .string "If the leaves grow long and curly,$" - -gBerryDescriptionPart2_Rawst:: @ 8589BDC - .string "the BERRY seems to grow very bitter.$" - -gBerryDescriptionPart1_Aspear:: @ 8589C01 - .string "The hard BERRY is dense with a rich$" - -gBerryDescriptionPart2_Aspear:: @ 8589C25 - .string "juice. It is quite sour.$" - -gBerryDescriptionPart1_Leppa:: @ 8589C3E - .string "Grows slower than CHERI and others.$" - -gBerryDescriptionPart2_Leppa:: @ 8589C62 - .string "The smaller the BERRY, the tastier.$" - -gBerryDescriptionPart1_Oran:: @ 8589C86 - .string "A peculiar BERRY with a mix of flavors.$" - -gBerryDescriptionPart2_Oran:: @ 8589CAE - .string "BERRIES grow in half a day.$" - -gBerryDescriptionPart1_Persim:: @ 8589CCA - .string "Loves sunlight. The BERRY's color$" - -gBerryDescriptionPart2_Persim:: @ 8589CEC - .string "grows vivid when exposed to the sun.$" - -gBerryDescriptionPart1_Lum:: @ 8589D11 - .string "Slow to grow. If raised with loving$" - -gBerryDescriptionPart2_Lum:: @ 8589D35 - .string "care, it may grow two BERRIES.$" - -gBerryDescriptionPart1_Sitrus:: @ 8589D54 - .string "Closely related to ORAN. The large$" - -gBerryDescriptionPart2_Sitrus:: @ 8589D77 - .string "BERRY has a well-rounded flavor.$" - -gBerryDescriptionPart1_Figy:: @ 8589D98 - .string "The BERRY, which looks chewed up,$" - -gBerryDescriptionPart2_Figy:: @ 8589DBA - .string "brims with spicy substances.$" - -gBerryDescriptionPart1_Wiki:: @ 8589DD7 - .string "The BERRY is said to have grown lumpy$" - -gBerryDescriptionPart2_Wiki:: @ 8589DFD - .string "to help POKéMON grip it.$" - -gBerryDescriptionPart1_Mago:: @ 8589E16 - .string "The BERRY turns curvy as it grows.$" - -gBerryDescriptionPart2_Mago:: @ 8589E39 - .string "The curvier, the sweeter and tastier.$" - -gBerryDescriptionPart1_Aguav:: @ 8589E5F - .string "The flower is dainty. It is rare in its$" - -gBerryDescriptionPart2_Aguav:: @ 8589E87 - .string "ability to grow without light.$" - -gBerryDescriptionPart1_Iapapa:: @ 8589EA6 - .string "The BERRY is very big and sour.$" - -gBerryDescriptionPart2_Iapapa:: @ 8589EC6 - .string "It takes at least a day to grow.$" - -gBerryDescriptionPart1_Razz:: @ 8589EE7 - .string "The red BERRY tastes slightly spicy.$" - -gBerryDescriptionPart2_Razz:: @ 8589F0C - .string "It grows quickly in just four hours.$" - -gBerryDescriptionPart1_Bluk:: @ 8589F31 - .string "The BERRY is blue on the outside, but$" - -gBerryDescriptionPart2_Bluk:: @ 8589F57 - .string "it blackens the mouth when eaten.$" - -gBerryDescriptionPart1_Nanab:: @ 8589F79 - .string "This BERRY was the seventh$" - -gBerryDescriptionPart2_Nanab:: @ 8589F94 - .string "discovered in the world. It is sweet.$" - -gBerryDescriptionPart1_Wepear:: @ 8589FBA - .string "The flower is small and white. It has a$" - -gBerryDescriptionPart2_Wepear:: @ 8589FE2 - .string "delicate balance of bitter and sour.$" - -gBerryDescriptionPart1_Pinap:: @ 858A007 - .string "Weak against wind and cold.$" - -gBerryDescriptionPart2_Pinap:: @ 858A023 - .string "The fruit is spicy and the skin, sour.$" - -gBerryDescriptionPart1_Pomeg:: @ 858A04A - .string "However much it is watered,$" - -gBerryDescriptionPart2_Pomeg:: @ 858A066 - .string "it only grows up to six BERRIES.$" - -gBerryDescriptionPart1_Kelpsy:: @ 858A087 - .string "A rare variety shaped like a root.$" - -gBerryDescriptionPart2_Kelpsy:: @ 858A0AA - .string "Grows a very large flower.$" - -gBerryDescriptionPart1_Qualot:: @ 858A0C5 - .string "Loves water. Grows strong even in$" - -gBerryDescriptionPart2_Qualot:: @ 858A0E7 - .string "locations with constant rainfall.$" - -gBerryDescriptionPart1_Hondew:: @ 858A109 - .string "A BERRY that is very valuable and$" - -gBerryDescriptionPart2_Hondew:: @ 858A12B - .string "rarely seen. It is very delicious.$" - -gBerryDescriptionPart1_Grepa:: @ 858A14E - .string "Despite its tenderness and round$" - -gBerryDescriptionPart2_Grepa:: @ 858A16F - .string "shape, the BERRY is unimaginably sour.$" - -gBerryDescriptionPart1_Tamato:: @ 858A196 - .string "The BERRY is lip-bendingly spicy.$" - -gBerryDescriptionPart2_Tamato:: @ 858A1B8 - .string "It takes time to grow.$" - -gBerryDescriptionPart1_Cornn:: @ 858A1CF - .string "A BERRY from an ancient era. May not$" - -gBerryDescriptionPart2_Cornn:: @ 858A1F4 - .string "grow unless planted in quantity.$" - -gBerryDescriptionPart1_Magost:: @ 858A215 - .string "A BERRY that is widely said to have$" - -gBerryDescriptionPart2_Magost:: @ 858A239 - .string "a finely balanced flavor.$" - -gBerryDescriptionPart1_Rabuta:: @ 858A253 - .string "A rare variety that is overgrown with$" - -gBerryDescriptionPart2_Rabuta:: @ 858A279 - .string "hair. It is quite bitter.$" - -gBerryDescriptionPart1_Nomel:: @ 858A293 - .string "Quite sour. Just one bite makes it$" - -gBerryDescriptionPart2_Nomel:: @ 858A2B6 - .string "impossible to taste for three days.$" - -gBerryDescriptionPart1_Spelon:: @ 858A2DA - .string "The vividly red BERRY is very spicy.$" - -gBerryDescriptionPart2_Spelon:: @ 858A2FF - .string "Its warts secrete a spicy substance.$" - -gBerryDescriptionPart1_Pamtre:: @ 858A324 - .string "Drifts on the sea from somewhere.$" - -gBerryDescriptionPart2_Pamtre:: @ 858A346 - .string "It is thought to grow elsewhere.$" - -gBerryDescriptionPart1_Watmel:: @ 858A367 - .string "A huge BERRY, with some over 20$" - -gBerryDescriptionPart2_Watmel:: @ 858A387 - .string "inches discovered. Exceedingly sweet.$" - -gBerryDescriptionPart1_Durin:: @ 858A3AD - .string "Bitter to even look at. It is so$" - -gBerryDescriptionPart2_Durin:: @ 858A3CE - .string "bitter, no one has ever eaten it as is.$" - -gBerryDescriptionPart1_Belue:: @ 858A3F6 - .string "It is glossy and looks delicious, but$" - -gBerryDescriptionPart2_Belue:: @ 858A41C - .string "it is awfully sour. Takes time to grow.$" - -gBerryDescriptionPart1_Liechi:: @ 858A444 - .string "A mysterious BERRY. It is rumored to$" - -gBerryDescriptionPart2_Liechi:: @ 858A469 - .string "contain the power of the sea.$" - -gBerryDescriptionPart1_Ganlon:: @ 858A487 - .string "A mysterious BERRY. It is rumored to$" - -gBerryDescriptionPart2_Ganlon:: @ 858A4AC - .string "contain the power of the land.$" - -gBerryDescriptionPart1_Salac:: @ 858A4CB - .string "A mysterious BERRY. It is rumored to$" - -gBerryDescriptionPart2_Salac:: @ 858A4F0 - .string "contain the power of the sky.$" - -gBerryDescriptionPart1_Petaya:: @ 858A50E - .string "A mysterious BERRY. It is rumored to$" - -gBerryDescriptionPart2_Petaya:: @ 858A533 - .string "contain the power of all living things.$" - -gBerryDescriptionPart1_Apicot:: @ 858A55B - .string "A very mystifying BERRY. No telling$" - -gBerryDescriptionPart2_Apicot:: @ 858A57F - .string "what may happen or how it can be used.$" - -gBerryDescriptionPart1_Lansat:: @ 858A5A6 - .string "Said to be a legendary BERRY.$" - -gBerryDescriptionPart2_Lansat:: @ 858A5C4 - .string "Holding it supposedly brings joy.$" - -gBerryDescriptionPart1_Starf:: @ 858A5E6 - .string "So strong, it was abandoned at the$" - -gBerryDescriptionPart2_Starf:: @ 858A609 - .string "world's edge. Considered a mirage.$" - -gBerryDescriptionPart1_Enigma:: @ 858A62C - .string "A completely enigmatic BERRY.$" - -gBerryDescriptionPart2_Enigma:: @ 858A64A - .string "Appears to have the power of stars.$" - From 6a977bdbfccfa27433abdafede36f434184809bb Mon Sep 17 00:00:00 2001 From: ExpoSeed <> Date: Fri, 21 May 2021 15:08:00 -0500 Subject: [PATCH 189/762] Document second parameter of playbgm --- asm/macros/event.inc | 7 ++++--- data/event_scripts.s | 2 +- data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc | 2 +- data/maps/BattleFrontier_BattlePyramidTop/scripts.inc | 6 +++--- data/maps/BirthIsland_Exterior/scripts.inc | 2 +- data/maps/EverGrandeCity_ChampionsRoom/scripts.inc | 6 +++--- data/maps/EverGrandeCity_DrakesRoom/scripts.inc | 2 +- data/maps/EverGrandeCity_GlaciasRoom/scripts.inc | 2 +- data/maps/EverGrandeCity_PhoebesRoom/scripts.inc | 2 +- data/maps/EverGrandeCity_SidneysRoom/scripts.inc | 2 +- data/maps/LavaridgeTown/scripts.inc | 4 ++-- data/maps/LilycoveCity/scripts.inc | 4 ++-- data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc | 2 +- data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc | 2 +- data/maps/LittlerootTown_MaysHouse_1F/scripts.inc | 2 +- data/maps/LittlerootTown_MaysHouse_2F/scripts.inc | 2 +- data/maps/MagmaHideout_4F/scripts.inc | 2 +- data/maps/MeteorFalls_1F_1R/scripts.inc | 4 ++-- data/maps/MtChimney/scripts.inc | 2 +- data/maps/MtPyre_Summit/scripts.inc | 2 +- data/maps/OldaleTown/scripts.inc | 2 +- data/maps/PetalburgCity/scripts.inc | 2 +- data/maps/PetalburgCity_Gym/scripts.inc | 4 ++-- data/maps/PetalburgWoods/scripts.inc | 4 ++-- data/maps/Route101/scripts.inc | 2 +- data/maps/Route103/scripts.inc | 4 ++-- data/maps/Route104/scripts.inc | 4 ++-- data/maps/Route110/scripts.inc | 4 ++-- data/maps/Route119/scripts.inc | 4 ++-- data/maps/Route121/scripts.inc | 2 +- data/maps/RustboroCity/scripts.inc | 6 +++--- data/maps/RustboroCity_DevonCorp_3F/scripts.inc | 2 +- data/maps/RusturfTunnel/scripts.inc | 2 +- data/maps/SeafloorCavern_Room9/scripts.inc | 2 +- data/maps/SlateportCity/scripts.inc | 2 +- data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc | 2 +- data/scripts/contest_hall.inc | 2 +- data/scripts/players_house.inc | 4 ++-- 38 files changed, 57 insertions(+), 56 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index f3f17c5d8bcd..915fc7142770 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -345,11 +345,12 @@ .byte 0x32 .endm - @ Plays the specified (song_number) song. The byte is apparently supposed to be 0x00. - .macro playbgm song_number:req, unknown:req + @ Plays the specified (song_number) song. If save_song is TRUE, the + @ specified (song_number) will be saved as if savebgm was called with it. + .macro playbgm song_number:req, save_song:req .byte 0x33 .2byte \song_number - .byte \unknown + .byte \save_song .endm @ Saves the specified (song_number) song to be played later. diff --git a/data/event_scripts.s b/data/event_scripts.s index 8039be6876c7..432f1294d90f 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -736,7 +736,7 @@ EventScript_RegionMap:: @ 827208F Common_EventScript_PlayBrineysBoatMusic:: @ 82720A0 setflag FLAG_DONT_TRANSITION_MUSIC - playbgm MUS_SAILING, 0 + playbgm MUS_SAILING, FALSE return Common_EventScript_StopBrineysBoatMusic:: @ 82720A8 diff --git a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc index 4f378c4e5766..e63e27e4e223 100644 --- a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc @@ -33,7 +33,7 @@ BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName:: @ 8252A8F end BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic:: @ 8252A98 - playbgm MUS_B_PYRAMID, 0 + playbgm MUS_B_PYRAMID, FALSE setvar VAR_TEMP_E, 1 end diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc index 076fae158e5c..568424083d2f 100644 --- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc @@ -53,7 +53,7 @@ BattleFrontier_BattlePyramidTop_OnFrame: @ 825516E .2byte 0 BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic:: @ 8255180 - playbgm MUS_B_PYRAMID_TOP, 0 + playbgm MUS_B_PYRAMID_TOP, FALSE setvar VAR_TEMP_E, 1 end @@ -136,7 +136,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech:: @ 82552D0 BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver:: @ 82552DA msgbox BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle - playbgm MUS_B_PYRAMID_TOP, 0 + playbgm MUS_B_PYRAMID_TOP, FALSE compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @@ -176,7 +176,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech:: @ 8255388 BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold:: @ 8255392 msgbox BattleFrontier_BattlePyramidTop_Text_EverythingYouHave, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle - playbgm MUS_B_PYRAMID_TOP, 0 + playbgm MUS_B_PYRAMID_TOP, FALSE compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index c20de3798275..5871709ac549 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -72,7 +72,7 @@ BirthIsland_Exterior_EventScript_Deoxys:: @ 8267FC1 setfieldeffectargument 1, 58 setfieldeffectargument 2, 26 dofieldeffect FLDEFF_DESTROY_DEOXYS_ROCK - playbgm MUS_RG_ENCOUNTER_DEOXYS, 0 + playbgm MUS_RG_ENCOUNTER_DEOXYS, FALSE waitfieldeffect FLDEFF_DESTROY_DEOXYS_ROCK addobject LOCALID_DEOXYS applymovement LOCALID_DEOXYS, BirthIsland_Exterior_Movement_DeoxysApproach diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index d41c10d0a056..7b75c87525b6 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -42,7 +42,7 @@ EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace: @ 8228A42 step_end EverGrandeCity_ChampionsRoom_EventScript_Wallace:: @ 8228A45 - playbgm MUS_ENCOUNTER_CHAMPION, 0 + playbgm MUS_ENCOUNTER_CHAMPION, FALSE msgbox EverGrandeCity_ChampionsRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_WALLACE, EverGrandeCity_ChampionsRoom_Text_Defeat goto EverGrandeCity_ChampionsRoom_EventScript_Defeated @@ -71,11 +71,11 @@ EverGrandeCity_ChampionsRoom_EventScript_Defeated:: @ 8228A61 end EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic:: @ 8228ABC - playbgm MUS_ENCOUNTER_MAY, 0 + playbgm MUS_ENCOUNTER_MAY, FALSE return EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic:: @ 8228AC1 - playbgm MUS_ENCOUNTER_BRENDAN, 0 + playbgm MUS_ENCOUNTER_BRENDAN, FALSE return EverGrandeCity_ChampionsRoom_EventScript_MayAdvice:: @ 8228AC6 diff --git a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc index feb65d149aaa..38762277fa73 100644 --- a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc @@ -42,7 +42,7 @@ EverGrandeCity_DrakesRoom_EventScript_Drake:: @ 82286F3 lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_PostBattleSpeech - playbgm MUS_ENCOUNTER_ELITE_FOUR, 0 + playbgm MUS_ENCOUNTER_ELITE_FOUR, FALSE msgbox EverGrandeCity_DrakesRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_DRAKE, EverGrandeCity_DrakesRoom_Text_Defeat goto EverGrandeCity_DrakesRoom_EventScript_Defeated diff --git a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc index ff04a752ab10..3529b746cb6f 100644 --- a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc +++ b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc @@ -41,7 +41,7 @@ EverGrandeCity_GlaciasRoom_EventScript_Glacia:: @ 8228469 lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_PostBattleSpeech - playbgm MUS_ENCOUNTER_ELITE_FOUR, 0 + playbgm MUS_ENCOUNTER_ELITE_FOUR, FALSE msgbox EverGrandeCity_GlaciasRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_GLACIA, EverGrandeCity_GlaciasRoom_Text_Defeat goto EverGrandeCity_GlaciasRoom_EventScript_Defeated diff --git a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc index e98bf4eb3646..c922ffe7a574 100644 --- a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc @@ -41,7 +41,7 @@ EverGrandeCity_PhoebesRoom_EventScript_Phoebe:: @ 82281CB lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_PostBattleSpeech - playbgm MUS_ENCOUNTER_ELITE_FOUR, 0 + playbgm MUS_ENCOUNTER_ELITE_FOUR, FALSE msgbox EverGrandeCity_PhoebesRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_PHOEBE, EverGrandeCity_PhoebesRoom_Text_Defeat goto EverGrandeCity_PhoebesRoom_EventScript_Defeated diff --git a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc index 717651b26259..4cd8f262e77f 100644 --- a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc +++ b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc @@ -47,7 +47,7 @@ EverGrandeCity_SidneysRoom_EventScript_Sidney:: @ 8227F64 lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_SIDNEY, EverGrandeCity_SidneysRoom_EventScript_PostBattleSpeech - playbgm MUS_ENCOUNTER_ELITE_FOUR, 0 + playbgm MUS_ENCOUNTER_ELITE_FOUR, FALSE msgbox EverGrandeCity_SidneysRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_SIDNEY, EverGrandeCity_SidneysRoom_Text_Defeat goto EverGrandeCity_SidneysRoom_EventScript_Defeated diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc index 1f9fe421d6b6..59275c526de5 100644 --- a/data/maps/LavaridgeTown/scripts.inc +++ b/data/maps/LavaridgeTown/scripts.inc @@ -105,11 +105,11 @@ LavaridgeTown_EventScript_RivalExit:: @ 81EA5FF end LavaridgeTown_EventScript_PlayMayMusic:: @ 81EA630 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE return LavaridgeTown_EventScript_PlayBrendanMusic:: @ 81EA635 - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE return LavaridgeTown_EventScript_RivalNoticePlayer:: @ 81EA63A diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index d54942386359..b5748ef606a8 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -241,7 +241,7 @@ LilycoveCity_EventScript_Rival:: @ 81E2DDE end LilycoveCity_EventScript_May:: @ 81E2DF8 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattle compare VAR_RESULT, NO @@ -270,7 +270,7 @@ LilycoveCity_EventScript_DeclineMayBattle:: @ 81E2E5A end LilycoveCity_EventScript_Brendan:: @ 81E2E6B - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattle compare VAR_RESULT, NO diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index ee677fbff8fb..4b5679ad9e03 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -158,7 +158,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: @ 81F78E2 waitmovement 0 compare VAR_0x8008, 1 call_if_ne LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE compare VAR_0x8008, 0 call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0 compare VAR_0x8008, 1 diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index ab6f55af5d2d..6cfeea7e4f93 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -74,7 +74,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: @ 81F8497 applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 delay 10 - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE compare VAR_FACING, DIR_NORTH call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth compare VAR_FACING, DIR_SOUTH diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index 1e1bb0e11992..f1df425b7411 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -192,7 +192,7 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: @ 81F8A8B waitmovement 0 compare VAR_0x8008, 1 call_if_ne LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE compare VAR_0x8008, 0 call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0 compare VAR_0x8008, 1 diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc index dd22ed670b70..a0583841cf4f 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc @@ -74,7 +74,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: @ 81F934A applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 delay 10 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE compare VAR_FACING, DIR_NORTH call_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth compare VAR_FACING, DIR_SOUTH diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc index 50382f44e333..199e3c1bcae4 100644 --- a/data/maps/MagmaHideout_4F/scripts.inc +++ b/data/maps/MagmaHideout_4F/scripts.inc @@ -11,7 +11,7 @@ MagmaHideout_4F_MapScripts:: @ 823A55F MagmaHideout_4F_EventScript_Maxie:: @ 823A560 lockall - playbgm MUS_ENCOUNTER_MAGMA, 0 + playbgm MUS_ENCOUNTER_MAGMA, FALSE msgbox MagmaHideout_4F_Text_MaxieAwakenGroudon, MSGBOX_DEFAULT closemessage delay 20 diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc index c942e230ec17..8202267b9216 100644 --- a/data/maps/MeteorFalls_1F_1R/scripts.inc +++ b/data/maps/MeteorFalls_1F_1R/scripts.inc @@ -21,7 +21,7 @@ MeteorFalls_1F_1R_EventScript_OpenStevensCave:: @ 822BD3A MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: @ 822BD5F lockall - playbgm MUS_ENCOUNTER_MAGMA, 0 + playbgm MUS_ENCOUNTER_MAGMA, FALSE applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceDown waitmovement 0 delay 30 @@ -50,7 +50,7 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: @ 822BD5F addobject LOCALID_ARCHIE addobject LOCALID_AQUA_GRUNT_1 addobject LOCALID_AQUA_GRUNT_2 - playbgm MUS_ENCOUNTER_AQUA, 0 + 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 diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index c633d93135e1..061590e1ae1c 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -40,7 +40,7 @@ MtChimney_EventScript_ArchieBusyFighting:: @ 822EE02 MtChimney_EventScript_Maxie:: @ 822EE0B lockall - playbgm MUS_ENCOUNTER_MAGMA, 0 + playbgm MUS_ENCOUNTER_MAGMA, FALSE msgbox MtChimney_Text_MeteoriteWillActivateVolcano, MSGBOX_DEFAULT applymovement LOCALID_MAXIE, Common_Movement_FacePlayer waitmovement 0 diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc index c2692ff20d4c..e899c3471cda 100644 --- a/data/maps/MtPyre_Summit/scripts.inc +++ b/data/maps/MtPyre_Summit/scripts.inc @@ -39,7 +39,7 @@ MtPyre_Summit_EventScript_TeamAquaTrigger2:: @ 8232030 end MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestDown diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc index f99c65d2c00b..593215357260 100644 --- a/data/maps/OldaleTown/scripts.inc +++ b/data/maps/OldaleTown/scripts.inc @@ -43,7 +43,7 @@ OldaleTown_EventScript_MartEmployee:: @ 81E8EFC goto_if_set FLAG_RECEIVED_POTION_OLDALE, OldaleTown_EventScript_ExplainPotion goto_if_set FLAG_TEMP_1, OldaleTown_EventScript_ExplainPotion setflag FLAG_TEMP_1 - playbgm MUS_FOLLOW_ME, 0 + playbgm MUS_FOLLOW_ME, FALSE msgbox OldaleTown_Text_IWorkAtPokemonMart, MSGBOX_DEFAULT closemessage switch VAR_FACING diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc index ab77e18e0b49..5114ea639e4d 100644 --- a/data/maps/PetalburgCity/scripts.inc +++ b/data/maps/PetalburgCity/scripts.inc @@ -271,7 +271,7 @@ PetalburgCity_EventScript_ShowGymToPlayer3:: @ 81DC4BE PetalburgCity_EventScript_ShowGymToPlayer:: @ 81DC4CA applymovement LOCALID_GYM_BOY, Common_Movement_FacePlayer waitmovement 0 - playbgm MUS_FOLLOW_ME, 0 + playbgm MUS_FOLLOW_ME, FALSE playse SE_PIN applymovement LOCALID_GYM_BOY, Common_Movement_ExclamationMark waitmovement 0 diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index 2bdd5320fb7a..b2f6b1061fd0 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -203,7 +203,7 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial:: @ 8204AAC msgbox PetalburgCity_Gym_Text_WouldYouReallyComeWithMe, MSGBOX_DEFAULT closemessage setflag FLAG_DONT_TRANSITION_MUSIC - playbgm MUS_FOLLOW_ME, 0 + playbgm MUS_FOLLOW_ME, FALSE compare VAR_0x8008, 0 call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallySouth compare VAR_0x8008, 1 @@ -487,7 +487,7 @@ PetalburgCity_Gym_EventScript_WallysDadArrives:: @ 8204F13 msgbox PetalburgCity_Gym_Text_LetMeBorrowPlayer, MSGBOX_DEFAULT closemessage setflag FLAG_DONT_TRANSITION_MUSIC - playbgm MUS_FOLLOW_ME, 0 + playbgm MUS_FOLLOW_ME, FALSE compare VAR_0x8008, 1 call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth compare VAR_0x8008, 2 diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc index dbdb66b0b815..1f1b2edcb388 100644 --- a/data/maps/PetalburgWoods/scripts.inc +++ b/data/maps/PetalburgWoods/scripts.inc @@ -11,7 +11,7 @@ PetalburgWoods_EventScript_DevonResearcherLeft:: @ 822DFD7 waitmovement 0 msgbox PetalburgWoods_Text_HaveYouSeenShroomish, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaEntrance waitmovement 0 msgbox PetalburgWoods_Text_IWasGoingToAmbushYou, MSGBOX_DEFAULT @@ -48,7 +48,7 @@ PetalburgWoods_EventScript_DevonResearcherRight:: @ 822E079 waitmovement 0 msgbox PetalburgWoods_Text_HaveYouSeenShroomish, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaEntrance waitmovement 0 msgbox PetalburgWoods_Text_IWasGoingToAmbushYou, MSGBOX_DEFAULT diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index 66ce4abc8fc7..b9322614751c 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -21,7 +21,7 @@ Route101_EventScript_HideMapNamePopup:: @ 81EBCD5 Route101_EventScript_StartBirchRescue:: @ 81EBCDE lockall - playbgm MUS_HELP, 1 + playbgm MUS_HELP, TRUE msgbox Route101_Text_HelpMe, MSGBOX_DEFAULT closemessage setobjectxy LOCALID_BIRCH, 0, 15 diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index 965b5ff5cd0c..b096069e7e38 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -31,7 +31,7 @@ Route103_EventScript_Rival:: @ 81EC3C1 Route103_EventScript_RivalMay:: @ 81EC3DA msgbox Route103_Text_MayRoute103Pokemon, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE applymovement LOCALID_RIVAL, Common_Movement_FacePlayer waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -48,7 +48,7 @@ Route103_EventScript_RivalMay:: @ 81EC3DA Route103_EventScript_RivalBrendan:: @ 81EC434 msgbox Route103_Text_BrendanRoute103Pokemon, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE applymovement LOCALID_RIVAL, Common_Movement_FacePlayer waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index d1faca53a78b..cb840d9b3543 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -84,11 +84,11 @@ Route104_EventScript_PlayRivalMusic:: @ 81ECD11 return Route104_EventScript_PlayMayMusic:: @ 81ECD29 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE return Route104_EventScript_PlayBrendanMusic:: @ 81ECD2E - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE return Route104_EventScript_RivalEncounter:: @ 81ECD33 diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc index 50f3d1f48ccd..f7be3fb9e7ef 100644 --- a/data/maps/Route110/scripts.inc +++ b/data/maps/Route110/scripts.inc @@ -410,11 +410,11 @@ Route110_EventScript_RivalScene:: @ 81EF76E end Route110_EventScript_PlayMayMusic:: @ 81EF7E1 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE return Route110_EventScript_PlayBrendanMusic:: @ 81EF7E6 - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE return Route110_EventScript_MayBattle:: @ 81EF7EB diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc index 734934d17016..37da701a08ba 100644 --- a/data/maps/Route119/scripts.inc +++ b/data/maps/Route119/scripts.inc @@ -74,11 +74,11 @@ Route119_EventScript_RivalEncounter:: @ 81F4488 end Route119_EventScript_PlayMayMusic:: @ 81F4501 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE return Route119_EventScript_PlayBrendanMusic:: @ 81F4506 - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE return Route119_EventScript_BattleMay:: @ 81F450B diff --git a/data/maps/Route121/scripts.inc b/data/maps/Route121/scripts.inc index fdc191ea8207..6dc93cf6b732 100644 --- a/data/maps/Route121/scripts.inc +++ b/data/maps/Route121/scripts.inc @@ -19,7 +19,7 @@ Route121_EventScript_SafariZoneSign:: @ 81F5E0F Route121_EventScript_AquaGruntsMoveOut:: @ 81F5E18 lockall - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceRight waitmovement 0 msgbox Route121_Text_OkayMoveOutToMtPyre, MSGBOX_DEFAULT diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc index 7b1f4a3d81fe..05bd25247933 100644 --- a/data/maps/RustboroCity/scripts.inc +++ b/data/maps/RustboroCity/scripts.inc @@ -294,7 +294,7 @@ RustboroCity_EventScript_StolenGoodsTrigger4:: @ 81E09B6 RustboroCity_EventScript_StolenGoodsScene:: @ 81E09CD msgbox RustboroCity_Text_OutOfTheWay, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE addobject LOCALID_GRUNT addobject LOCALID_DEVON_EMPLOYEE applymovement LOCALID_GRUNT, RustboroCity_Movement_GruntEscape @@ -706,11 +706,11 @@ RustboroCity_EventScript_PlayRivalMusic:: @ 81E0DD1 return RustboroCity_EventScript_PlayMayMusic:: @ 81E0DE9 - playbgm MUS_ENCOUNTER_MAY, 1 + playbgm MUS_ENCOUNTER_MAY, TRUE return RustboroCity_EventScript_PlayBrendanMusic:: @ 81E0DEE - playbgm MUS_ENCOUNTER_BRENDAN, 1 + playbgm MUS_ENCOUNTER_BRENDAN, TRUE return RustboroCity_EventScript_RivalTrigger0:: @ 81E0DF3 diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc index 34a31c692dac..9d4c69cd9c14 100644 --- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc @@ -39,7 +39,7 @@ RustboroCity_DevonCorp_3F_EventScript_MeetPresident:: @ 821246E waitmovement 0 msgbox RustboroCity_DevonCorp_3F_Text_WordWithPresidentComeWithMe, MSGBOX_DEFAULT closemessage - playbgm MUS_FOLLOW_ME, 0 + playbgm MUS_FOLLOW_ME, FALSE applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident applymovement OBJ_EVENT_ID_PLAYER, RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident waitmovement 0 diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc index 17a229ab54a4..75f5820e0a31 100644 --- a/data/maps/RusturfTunnel/scripts.inc +++ b/data/maps/RusturfTunnel/scripts.inc @@ -316,7 +316,7 @@ RusturfTunnel_EventScript_Peeko:: @ 822D0AF RusturfTunnel_EventScript_Grunt:: @ 822D0C2 lock faceplayer - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE msgbox RusturfTunnel_Text_GruntIntro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_GRUNT_RUSTURF_TUNNEL, RusturfTunnel_Text_GruntDefeat msgbox RusturfTunnel_Text_GruntTakePackage, MSGBOX_DEFAULT diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc index 53386f33c0e2..06ae0d6fe2ad 100644 --- a/data/maps/SeafloorCavern_Room9/scripts.inc +++ b/data/maps/SeafloorCavern_Room9/scripts.inc @@ -18,7 +18,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: @ 8234DC9 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, SeafloorCavern_Room9_Movement_Delay32 waitmovement 0 - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE msgbox SeafloorCavern_Room9_Text_ArchieHoldItRightThere, MSGBOX_DEFAULT closemessage addobject VAR_0x8004 diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 983ce97969b0..ceb2e862ae59 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -603,7 +603,7 @@ SlateportCity_EventScript_CaptStern:: @ 81DD1F8 applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestUp waitmovement 0 msgbox SlateportCity_Text_OhPlayerWeMadeDiscovery, MSGBOX_DEFAULT - playbgm MUS_ENCOUNTER_AQUA, 0 + playbgm MUS_ENCOUNTER_AQUA, FALSE msgbox SlateportCity_Text_AquaWillAssumeControlOfSubmarine, MSGBOX_DEFAULT applymovement LOCALID_COOK, Common_Movement_WalkInPlaceFastestLeft applymovement LOCALID_FAT_MAN, Common_Movement_WalkInPlaceFastestLeft diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc index bba75dbd1ea7..782e702f6b1a 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc @@ -11,7 +11,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 faceplayer msgbox SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts, MSGBOX_DEFAULT closemessage - playbgm MUS_ENCOUNTER_AQUA, 1 + playbgm MUS_ENCOUNTER_AQUA, TRUE addobject LOCALID_GRUNT_1 applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter waitmovement 0 diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 51be0027cb7d..db43dfdd0f5a 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -916,7 +916,7 @@ ContestHall_EventScript_ContestResults:: @ 827A8A5 setvar VAR_TEMP_9, 1 showcontestresults setvar VAR_TEMP_9, 0 - playbgm MUS_CONTEST_WINNER, 0 + playbgm MUS_CONTEST_WINNER, FALSE return ContestHall_EventScript_ThatsItForJudging:: @ 827A8FB diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index 03b8eaf998b1..427355332718 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -159,7 +159,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportMale:: @ 829286D call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymMale waitmovement 0 - playbgm MUS_ENCOUNTER_INTERVIEWER, 0 + playbgm MUS_ENCOUNTER_INTERVIEWER, FALSE msgbox PlayersHouse_1F_Text_MaybeDadWillBeOn, MSGBOX_DEFAULT closemessage applymovement VAR_0x8005, PlayersHouse_1F_Movement_MomMakeRoomToSeeTVMale @@ -184,7 +184,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: @ 82928DC call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale waitmovement 0 - playbgm MUS_ENCOUNTER_INTERVIEWER, 0 + playbgm MUS_ENCOUNTER_INTERVIEWER, FALSE msgbox PlayersHouse_1F_Text_MaybeDadWillBeOn, MSGBOX_DEFAULT closemessage applymovement VAR_0x8005, PlayersHouse_1F_Movement_MomMakeRoomToSeeTVFemale From a454f9c187008e791d05da8c378ac8f553f4ce3e Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Sun, 23 May 2021 10:10:55 -0400 Subject: [PATCH 190/762] UBFIX: sprite.c (#1442) Fix out-of-bounds array access in `SortSprites()`. Co-authored-by: Marcus Huderle --- gflib/sprite.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index c66b1e47dc25..f97ecc712ddd 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -452,6 +452,10 @@ void SortSprites(void) // Although this doesn't result in a bug in the ROM, // the behavior is undefined. j--; +#ifdef UBFIX + if (j == 0) + break; +#endif sprite1 = &gSprites[sSpriteOrder[j - 1]]; sprite2 = &gSprites[sSpriteOrder[j]]; @@ -661,8 +665,7 @@ void ResetOamRange(u8 a, u8 b) for (i = a; i < b; i++) { - struct OamData *oamBuffer = gMain.oamBuffer; - oamBuffer[i] = *(struct OamData *)&gDummyOamData; + gMain.oamBuffer[i] = *(struct OamData *)&gDummyOamData; } } From ffbbc88801de3fc56d0bf5f0af1418ca7cfcfa4f Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Sun, 23 May 2021 10:35:03 -0400 Subject: [PATCH 191/762] BUGFIX: battle scripts (#1436) --- src/battle_ai_script_commands.c | 22 ++++++++++++++++------ src/battle_script_commands.c | 22 +++++++++++++++------- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 81e7c15cc7bd..b7287503641a 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -1761,7 +1761,11 @@ static void Cmd_if_cant_faint(void) gBattleMoveDamage = gBattleMoveDamage * AI_THINKING_STRUCT->simulatedRNG[AI_THINKING_STRUCT->movesetIndex] / 100; - // This macro is missing the damage 0 = 1 assumption. +#ifdef BUGFIX + // Moves always do at least 1 damage. + if (gBattleMoveDamage == 0) + gBattleMoveDamage = 1; +#endif if (gBattleMons[gBattlerTarget].hp > gBattleMoveDamage) gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1); @@ -2019,18 +2023,24 @@ static void Cmd_if_holds_item(void) { u8 battlerId = BattleAI_GetWantedBattler(gAIScriptPtr[1]); u16 item; - u8 var1, var2; + u8 itemLo, itemHi; if ((battlerId & BIT_SIDE) == (sBattler_AI & BIT_SIDE)) item = gBattleMons[battlerId].item; else item = BATTLE_HISTORY->itemEffects[battlerId]; - // UB: doesn't properly read an unaligned u16 - var2 = gAIScriptPtr[2]; - var1 = gAIScriptPtr[3]; + itemHi = gAIScriptPtr[2]; + itemLo = gAIScriptPtr[3]; - if ((var1 | var2) == item) +#ifdef BUGFIX + // This bug doesn't affect the vanilla game because this script command + // is only used to check ITEM_PERSIM_BERRY, whose high byte happens to + // be 0. + if (((itemHi << 8) | itemLo) == item) +#else + if ((itemLo | itemHi) == item) +#endif gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4); else gAIScriptPtr += 8; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 0492caeb5cbb..15e44dd75e30 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3357,7 +3357,7 @@ static void Cmd_getexp(void) // get exp getter battlerId if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - if (!(gBattlerPartyIndexes[2] != gBattleStruct->expGetterMonId) && !(gAbsentBattlerFlags & gBitTable[2])) + if (gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId && !(gAbsentBattlerFlags & gBitTable[2])) gBattleStruct->expGetterBattlerId = 2; else { @@ -3431,14 +3431,13 @@ static void Cmd_getexp(void) gBattleMons[0].maxHP = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_MAX_HP); gBattleMons[0].attack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_ATK); gBattleMons[0].defense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_DEF); - // Why is this duplicated? + // Speed is duplicated, likely due to a copy-paste error. gBattleMons[0].speed = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPEED); gBattleMons[0].speed = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPEED); - gBattleMons[0].spAttack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPATK); gBattleMons[0].spDefense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF); } - // What is else if? + if (gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId && gBattleMons[2].hp && (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gBattleMons[2].level = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL); @@ -3446,10 +3445,13 @@ static void Cmd_getexp(void) gBattleMons[2].maxHP = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_MAX_HP); gBattleMons[2].attack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_ATK); gBattleMons[2].defense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_DEF); - // Duplicated again, but this time there's no Sp Defense gBattleMons[2].speed = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPEED); + // Speed is duplicated again, but Special Defense is missing. +#ifdef BUGFIX + gBattleMons[2].spDefense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF); +#else gBattleMons[2].speed = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPEED); - +#endif gBattleMons[2].spAttack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPATK); } gBattleScripting.getexpState = 5; @@ -6168,7 +6170,13 @@ static void Cmd_recordlastability(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); RecordAbilityBattle(gActiveBattler, gLastUsedAbility); - gBattlescriptCurrInstr += 1; // UB: Should be + 2, one byte for command and one byte for battlerId argument. + +#ifdef BUGFIX + // This command occupies two bytes (one for the command id, and one for the battler id parameter). + gBattlescriptCurrInstr += 2; +#else + gBattlescriptCurrInstr += 1; +#endif } void BufferMoveToLearnIntoBattleTextBuff2(void) From ff16812f99f62a495975e7cc3c68ede339171765 Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Sun, 23 May 2021 10:56:37 -0400 Subject: [PATCH 192/762] UBFix: uninitialized variables in m4a engine and siirtc.c (#1432) --- src/m4a.c | 9 +++++++++ src/siirtc.c | 30 ++++++++++++++++++++++-------- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/m4a.c b/src/m4a.c index 717cafc78e44..105312a40caa 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1525,6 +1525,10 @@ void ply_xwave(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track { u32 wav; +#ifdef UBFIX + wav = 0; +#endif + READ_XCMD_BYTE(wav, 0) // UB: uninitialized variable READ_XCMD_BYTE(wav, 1) READ_XCMD_BYTE(wav, 2) @@ -1592,6 +1596,10 @@ void ply_xcmd_0C(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *tra { u32 unk; +#ifdef UBFIX + unk = 0; +#endif + READ_XCMD_BYTE(unk, 0) // UB: uninitialized variable READ_XCMD_BYTE(unk, 1) @@ -1611,6 +1619,7 @@ void ply_xcmd_0C(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *tra void ply_xcmd_0D(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track) { u32 unk; + #ifdef UBFIX unk = 0; #endif diff --git a/src/siirtc.c b/src/siirtc.c index 01d2e0e72316..5f4fc0a23c7c 100644 --- a/src/siirtc.c +++ b/src/siirtc.c @@ -71,6 +71,7 @@ static bool8 sLocked; static int WriteCommand(u8 value); static int WriteData(u8 value); static u8 ReadData(); + static void EnableGpioPortRead(); static void DisableGpioPortRead(); @@ -98,8 +99,12 @@ u8 SiiRtcProbe(void) errorCode = 0; +#ifdef BUGFIX + if (!(rtc.status & SIIRTCINFO_24HOUR) || (rtc.status & SIIRTCINFO_POWER)) +#else if ((rtc.status & (SIIRTCINFO_POWER | SIIRTCINFO_24HOUR)) == SIIRTCINFO_POWER || (rtc.status & (SIIRTCINFO_POWER | SIIRTCINFO_24HOUR)) == 0) +#endif { // The RTC is in 12-hour mode. Reset it and switch to 24-hour mode. @@ -131,7 +136,7 @@ u8 SiiRtcProbe(void) bool8 SiiRtcReset(void) { - u8 result; + bool8 result; struct SiiRtcInfo rtc; if (sLocked == TRUE) @@ -392,7 +397,11 @@ static int WriteCommand(u8 value) GPIO_PORT_DATA = (temp << 1) | SCK_HI | CS_HI; } - // control reaches end of non-void function + // Nothing uses the returned value from this function, + // so the undefined behavior is harmless in the vanilla game. +#ifdef UBFIX + return 0; +#endif } static int WriteData(u8 value) @@ -409,7 +418,11 @@ static int WriteData(u8 value) GPIO_PORT_DATA = (temp << 1) | SCK_HI | CS_HI; } - // control reaches end of non-void function + // Nothing uses the returned value from this function, + // so the undefined behavior is harmless in the vanilla game. +#ifdef UBFIX + return 0; +#endif } static u8 ReadData() @@ -417,9 +430,10 @@ static u8 ReadData() u8 i; u8 temp; u8 value; - #ifdef UBFIX + +#ifdef UBFIX value = 0; - #endif +#endif for (i = 0; i < 8; i++) { @@ -431,7 +445,7 @@ static u8 ReadData() GPIO_PORT_DATA = SCK_HI | CS_HI; temp = ((GPIO_PORT_DATA & SIO_HI) >> 1); - value = (value >> 1) | (temp << 7); // UB: value is uninitialized on first iteration + value = (value >> 1) | (temp << 7); } return value; @@ -439,10 +453,10 @@ static u8 ReadData() static void EnableGpioPortRead() { - GPIO_PORT_READ_ENABLE = 1; + GPIO_PORT_READ_ENABLE = TRUE; } static void DisableGpioPortRead() { - GPIO_PORT_READ_ENABLE = 0; + GPIO_PORT_READ_ENABLE = FALSE; } From aca96a1510879906237a4b6b2176fe5e342e1386 Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Sun, 23 May 2021 19:48:34 -0400 Subject: [PATCH 193/762] Mark 0xFFF8 as ~7 Since 7 is used as a mask, I wondered if 0xFFF8 was used to undo the mask and it turns out it was. --- gflib/bg.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index 3c215c103475..b6d1b0b924cf 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -55,7 +55,7 @@ void ResetBgs(void) static void SetBgModeInternal(u8 bgMode) { - sGpuBgConfigs.bgVisibilityAndMode &= 0xFFF8; + sGpuBgConfigs.bgVisibilityAndMode &= ~0x7; sGpuBgConfigs.bgVisibilityAndMode |= bgMode; } @@ -66,13 +66,11 @@ u8 GetBgMode(void) void ResetBgControlStructs(void) { - struct BgConfig* bgConfigs = &sGpuBgConfigs.configs[0]; - struct BgConfig zeroedConfig = sZeroedBgControlStruct; int i; for (i = 0; i < NUM_BACKGROUNDS; i++) { - bgConfigs[i] = zeroedConfig; + sGpuBgConfigs.configs[i] = sZeroedBgControlStruct; } } From 94939e395b58cf3e774a76d49b8518b8c2937432 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 23 May 2021 22:26:34 -0400 Subject: [PATCH 194/762] one last goto --- gflib/bg.c | 40 +++++++++++++++++----------------------- 1 file changed, 17 insertions(+), 23 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index b6d1b0b924cf..0c702ae0fb4e 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -173,36 +173,30 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode) u16 offset; s8 cursor; - if (!IsInvalidBg(bg) && sGpuBgConfigs.configs[bg].visible) - { - switch (mode) - { - case 0x1: - offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE; - break; - case 0x2: - offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE; - break; - default: - cursor = -1; - goto end; - } + if (IsInvalidBg(bg) || !sGpuBgConfigs.configs[bg].visible) + return -1; + switch (mode) + { + case 0x1: + offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE; offset = destOffset + offset; - cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0); - if (cursor == -1) - { return -1; - } - } - else - { - return -1; + break; + case 0x2: + offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE; + offset = destOffset + offset; + cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0); + if (cursor == -1) + return -1; + break; + default: + cursor = -1; + break; } -end: return cursor; } From 5ae5cf110d722c751a3fbfec38ec8f4498a85616 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 25 May 2021 04:03:11 -0400 Subject: [PATCH 195/762] [LEAK-INFORMED] fix fakematch in DrawWallpaper --- src/pokemon_storage_system.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index e5720d914812..a7a418a30a25 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -5437,19 +5437,20 @@ static bool32 WaitForWallpaperGfxLoad(void) static void DrawWallpaper(const void *tilemap, s8 direction, u8 offset) { - s16 var = (offset * 2) + 3; + s16 var = offset * 256; + s16 var2 = (offset * 2) + 3; s16 x = ((sStorage->bg2_X / 8 + 10) + (direction * 24)) & 0x3F; - CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, offset << 8, var); - - if (direction == 0) - return; - if (direction > 0) - x *= 1, x += 0x14; // x * 1 is needed to match, but can be safely removed as it makes no functional difference - else - x -= 4; + CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, var, var2); + if (direction) + { + if (direction > 0) + x += 0x14; + else + x -= 4; FillBgTilemapBufferRect(2, 0, x, 2, 4, 0x12, 0x11); + } } static void TrimOldWallpaper(void *tilemap) From 5d5327c0b73784c47d18734a291b5463289ca9c5 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 25 May 2021 04:32:47 -0400 Subject: [PATCH 196/762] better match --- src/pokemon_storage_system.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index a7a418a30a25..c82caf0b0d2f 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -5443,14 +5443,14 @@ static void DrawWallpaper(const void *tilemap, s8 direction, u8 offset) CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, var, var2); - if (direction) - { - if (direction > 0) - x += 0x14; - else - x -= 4; + if (direction == 0) + return; + if (direction > 0) + x += 0x14; + else + x -= 4; + FillBgTilemapBufferRect(2, 0, x, 2, 4, 0x12, 0x11); - } } static void TrimOldWallpaper(void *tilemap) From c9c558606899f898c7b14ad4a35f19ce2831d66a Mon Sep 17 00:00:00 2001 From: gAlfonso-bit <83477269+gAlfonso-bit@users.noreply.github.com> Date: Thu, 27 May 2021 08:32:09 -0400 Subject: [PATCH 197/762] =?UTF-8?q?Fixed=20ChangeBgY=5FScreenOff=E2=80=98s?= =?UTF-8?q?=20signature.=20(#1447)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix Functions * Fix ChangeBgY_ScreenOff signature * Remove unneeded changes * Fix argument mismatch Just to get this out of the way * Not needed * Update palette.c --- gflib/bg.c | 10 +++++----- gflib/bg.h | 2 +- src/battle_factory.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index 0c702ae0fb4e..ec7c2113b1f2 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -246,17 +246,17 @@ static void SetBgAffineInternal(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispC switch (sGpuBgConfigs.bgVisibilityAndMode & 0x7) { + default: + case 0: + return; case 1: if (bg != 2) return; break; case 2: - if (bg < 2 || bg >= NUM_BACKGROUNDS) + if (bg != 2 && bg != 3) return; break; - case 0: - default: - return; } src.texX = srcCenterX; @@ -689,7 +689,7 @@ s32 ChangeBgY(u8 bg, s32 value, u8 op) return sGpuBgConfigs2[bg].bg_y; } -s32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op) +s32 ChangeBgY_ScreenOff(u8 bg, s32 value, u8 op) { u8 mode; u16 temp1; diff --git a/gflib/bg.h b/gflib/bg.h index 3c7eee292739..58fd1282c0ae 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -59,7 +59,7 @@ u16 GetBgAttribute(u8 bg, u8 attributeId); s32 ChangeBgX(u8 bg, s32 value, u8 op); s32 GetBgX(u8 bg); s32 ChangeBgY(u8 bg, s32 value, u8 op); -s32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op); +s32 ChangeBgY_ScreenOff(u8 bg, s32 value, u8 op); s32 GetBgY(u8 bg); void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dispCenterY, s16 scaleX, s16 scaleY, u16 rotationAngle); u8 Unused_AdjustBgMosaic(u8 a1, u8 a2); diff --git a/src/battle_factory.c b/src/battle_factory.c index 72772929a999..e0bfdfdd0b72 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -38,7 +38,7 @@ static void GenerateInitialRentalMons(void); static void GetOpponentMostCommonMonType(void); static void GetOpponentBattleStyle(void); static void RestorePlayerPartyHeldItems(void); -static u16 GetFactoryMonId(u8 lvlMode, u8 challengeNum, bool8 arg2); +static u16 GetFactoryMonId(u8 lvlMode, u8 challengeNum, bool8 useBetterRange); static u8 GetMoveBattleStyle(u16 move); // Number of moves needed on the team to be considered using a certain battle style From 8b45c8e48ac1ddce3e986fb512937cf2e57f86ec Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 27 May 2021 16:20:13 -0400 Subject: [PATCH 198/762] Fix github links to pret's. --- INSTALL.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index e0a8c325e743..1ad3b4b0c9d1 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -377,7 +377,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for 1. If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: ```bash - git clone https://github.com/luckytyphlosion/pokeemerald + git clone https://github.com/pret/pokeemerald ```
@@ -397,7 +397,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for - If agbcc has **not been built before** in the folder where you chose to store pokeemerald, run the following commands to build and install it into pokeemerald: ```bash - git clone https://github.com/luckytyphlosion/agbcc + git clone https://github.com/pret/agbcc cd agbcc ./build.sh ./install.sh ../pokeemerald From 42021db743e898b2fe73ffe193446775e88ef121 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 25 May 2021 21:55:24 -0400 Subject: [PATCH 199/762] [LEAK-INFORMED] literal dumbest fakematch ever --- src/pokemon_animation.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index 14a17437cc51..e63862cd9ec1 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -2604,9 +2604,9 @@ static void RotateUpSlamDown_0(struct Sprite *sprite) { TryFlipX(sprite); sprite->data[7]--; - sprite->pos2.x = Cos(sprite->data[7], sprite->data[6]) + sprite->data[6]; + sprite->pos2.x = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); - sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6] += 0)); // dummy += 0 is needed to match + sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6])); HandleSetAffineData(sprite, 256, 256, (sprite->data[7] - 128) << 8); if (sprite->data[7] <= 120) @@ -2634,9 +2634,9 @@ static void RotateUpSlamDown_2(struct Sprite *sprite) { TryFlipX(sprite); sprite->data[7] += 2; - sprite->pos2.x = Cos(sprite->data[7], sprite->data[6]) + sprite->data[6]; + sprite->pos2.x = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); - sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6] += 0)); // dummy += 0 is needed to match + sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6])); HandleSetAffineData(sprite, 256, 256, (sprite->data[7] - 128) << 8); if (sprite->data[7] >= 128) From 2705f2e5f44980f368d30845215e28ae5ea5c595 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 25 May 2021 22:13:31 -0400 Subject: [PATCH 200/762] [LEAK-INFORMED] also pretty dumb --- src/pokemon_animation.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index e63862cd9ec1..500916b0e49c 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -4066,16 +4066,15 @@ static void VerticalShakeLowTwice(struct Sprite *sprite) u8 var8 = sprite->data[2]; u8 var9 = sprite->data[6]; u8 var5 = sVerticalShakeData[sprite->data[5]][0]; - u8 var2 = var5; if (var5 != (u8)-1) var5 = sprite->data[7]; - else - var5 = (u8)-1; // needed to match var6 = sVerticalShakeData[sprite->data[5]][1]; var7 = 0; - if (var2 != (u8)-2) + if (sVerticalShakeData[sprite->data[5]][0] != (u8)-2) var7 = (var6 - var9) * var5 / var6; + else + var7 = 0; if (var5 == (u8)-1) { From 2bbaf71998337cba3c912143302f816b4116e851 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 31 May 2021 00:19:26 -0400 Subject: [PATCH 201/762] [LEAK-INFORMED] fix CreateShedinja fakematch info: the header change is required. accesses to the struct need to be treated as non-const, even though the array must be const. thanks to jiang for figuring this out. --- include/pokemon.h | 1 - src/daycare.c | 2 ++ src/evolution_scene.c | 12 ++++-------- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/include/pokemon.h b/include/pokemon.h index 82cdefeac83b..3565bd9669f5 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -258,7 +258,6 @@ extern const u8 gFacilityClassToPicIndex[]; extern const u8 gFacilityClassToTrainerClass[]; extern const struct BaseStats gBaseStats[]; extern const u8 *const gItemEffectTable[]; -extern const struct Evolution gEvolutionTable[][EVOS_PER_MON]; extern const u32 gExperienceTables[][MAX_LEVEL + 1]; extern const u16 *const gLevelUpLearnsets[]; extern const u8 gPPUpGetMask[]; diff --git a/src/daycare.c b/src/daycare.c index 34b86498164d..14053217d295 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -23,6 +23,8 @@ #include "constants/moves.h" #include "constants/region_map_sections.h" +extern struct Evolution gEvolutionTable[][EVOS_PER_MON]; + // this file's functions static void ClearDaycareMonMail(struct DaycareMail *mail); static void SetInitialEggData(struct Pokemon *mon, u16 species, struct DayCare *daycare); diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 39e917161cca..08f816f4feeb 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -34,6 +34,8 @@ #include "constants/rgb.h" #include "constants/items.h" +extern struct Evolution gEvolutionTable[][EVOS_PER_MON]; + struct EvoInfo { u8 preEvoSpriteId; @@ -550,8 +552,6 @@ static void CreateShedinja(u16 preEvoSpecies, struct Pokemon* mon) { s32 i; struct Pokemon* shedinja = &gPlayerParty[gPlayerPartyCount]; - const struct Evolution *evos; - const struct Evolution *evos2; CopyMon(&gPlayerParty[gPlayerPartyCount], mon, sizeof(struct Pokemon)); SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_SPECIES, &gEvolutionTable[preEvoSpecies][1].targetSpecies); @@ -572,12 +572,8 @@ static void CreateShedinja(u16 preEvoSpecies, struct Pokemon* mon) CalculateMonStats(&gPlayerParty[gPlayerPartyCount]); CalculatePlayerPartyCount(); - // can't match it otherwise, ehh - evos2 = gEvolutionTable[0]; - evos = evos2 + EVOS_PER_MON * preEvoSpecies; - - GetSetPokedexFlag(SpeciesToNationalPokedexNum(evos[1].targetSpecies), FLAG_SET_SEEN); - GetSetPokedexFlag(SpeciesToNationalPokedexNum(evos[1].targetSpecies), FLAG_SET_CAUGHT); + GetSetPokedexFlag(SpeciesToNationalPokedexNum(gEvolutionTable[preEvoSpecies][1].targetSpecies), FLAG_SET_SEEN); + GetSetPokedexFlag(SpeciesToNationalPokedexNum(gEvolutionTable[preEvoSpecies][1].targetSpecies), FLAG_SET_CAUGHT); if (GetMonData(shedinja, MON_DATA_SPECIES) == SPECIES_SHEDINJA && GetMonData(shedinja, MON_DATA_LANGUAGE) == LANGUAGE_JAPANESE From 9f5bf65fb336cf7a3ba68d32267bf993f0f6a494 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 31 May 2021 19:01:20 -0400 Subject: [PATCH 202/762] [PROBABLY LEAK-INFORMED] fix battle_transition fakematch, make consistent use of SOME_VRAM_STORE --- src/battle_transition.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/src/battle_transition.c b/src/battle_transition.c index 479700e53fb8..461c45e7ddbb 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -1323,6 +1323,12 @@ static bool8 Phase2_BigPokeball_Func1(struct Task *task) return FALSE; } +#define SOME_VRAM_STORE(ptr, posY, posX, toStore) \ +{ \ + u32 index = (posY) * 32 + posX; \ + ptr[index] = toStore; \ +} + static bool8 Phase2_BigPokeball_Func2(struct Task *task) { s16 i, j; @@ -1335,7 +1341,7 @@ static bool8 Phase2_BigPokeball_Func2(struct Task *task) { for (j = 0; j < 30; j++, BigPokeballMap++) { - tilemap[i * 32 + j] = *BigPokeballMap | 0xF000; + SOME_VRAM_STORE(tilemap, i, j, *BigPokeballMap | 0xF000); } } sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); @@ -1675,12 +1681,6 @@ bool8 FldEff_Pokeball(void) return FALSE; } -#define SOME_VRAM_STORE(ptr, posY, posX, toStore) \ -{ \ - u32 index = (posY) * 32 + posX; \ - ptr[index] = toStore; \ -} - static void sub_814713C(struct Sprite *sprite) { s16 arr0[ARRAY_COUNT(sUnknown_085C8B96)]; @@ -2142,7 +2142,7 @@ static bool8 Phase2_Mugshot_Func2(struct Task *task) { for (j = 0; j < 32; j++, mugshotsMap++) { - tilemap[i * 32 + j] = *mugshotsMap | 0xF000; + SOME_VRAM_STORE(tilemap, i, j, *mugshotsMap | 0xF000); } } @@ -2960,17 +2960,15 @@ static bool8 Phase2_RectangularSpiral_Func2(struct Task *task) if (sub_8149048(gUnknown_085C8D38[j / 2], &sRectangularSpiralTransition[j])) { - u32 one; done = FALSE; var = sRectangularSpiralTransition[j].field_2; - one = 1; - if ((j & 1) == one) + if ((j % 2) == 1) var = 0x27D - var; var2 = var % 32; - var3 = var / 32 * 32; + var3 = var / 32; - tilemap[var3 + var2] = 0xF002; + SOME_VRAM_STORE(tilemap, var3, var2, 0xF002); } } } From 5c6b8ea8d67fb34b7f80b8856ee2d12caabff68f Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 1 Jun 2021 17:14:45 -0400 Subject: [PATCH 203/762] re-add const to gEvolutionTable in daycare.c --- src/daycare.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/daycare.c b/src/daycare.c index 14053217d295..4199bfda67e4 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -23,7 +23,7 @@ #include "constants/moves.h" #include "constants/region_map_sections.h" -extern struct Evolution gEvolutionTable[][EVOS_PER_MON]; +extern const struct Evolution gEvolutionTable[][EVOS_PER_MON]; // this file's functions static void ClearDaycareMonMail(struct DaycareMail *mail); From a839463c849679974c986bf9c9c260eff0e94cb7 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Tue, 1 Jun 2021 20:40:11 -0400 Subject: [PATCH 204/762] Optimize Makefile. Don't do recursive makes for COMPARE and MODERN, use minimal makefile for making tools. --- Makefile | 38 +++++++++++++++++++++++--------------- make_tools.mk | 12 ++++++++++++ 2 files changed, 35 insertions(+), 15 deletions(-) create mode 100644 make_tools.mk diff --git a/Makefile b/Makefile index 6842d3fd75fa..4b36feec8e4a 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,11 @@ +$(info start $(shell date +%s%3N)) TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 +ifeq (compare,$(MAKECMDGOALS)) + COMPARE := 1 +endif + # don't use dkP's base_tools anymore # because the redefinition of $(CC) conflicts # with when we want to use $(CC) to preprocess files @@ -36,6 +41,10 @@ MAKER_CODE := 01 REVISION := 0 MODERN ?= 0 +ifeq (modern,$(MAKECMDGOALS)) + MODERN := 1 +endif + # use arm-none-eabi-cpp for macOS # as macOS's default compiler is clang # and clang's preprocessor will warn on \u @@ -143,9 +152,10 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst # Build tools when building the rom # Disable dependency scanning for clean/tidy/tools -# Don't build tools yet for modern because we perform a recursive make -ifeq (,$(filter-out all rom berry_fix libagbsyscall,$(MAKECMDGOALS))) -$(call infoshell, $(MAKE) 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 berry_fix libagbsyscall,$(MAKECMDGOALS))) +$(call infoshell, $(MAKE) -f make_tools.mk) else NODEP := 1 endif @@ -154,16 +164,17 @@ endif ifeq (,$(MAKECMDGOALS)) SCAN_DEPS := 1 else - # compare and modern perform recursive calls, so don't scan dependencies yet # clean, tidy, tools, mostlyclean, clean-tools, $(TOOLDIRS), tidymodern, tidynonmodern don't even build the ROM # berry_fix and libagbsyscall do their own thing - ifeq (,$(filter-out clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern,$(MAKECMDGOALS))) + ifeq (,$(filter-out clean tidy tools mostlyclean clean-tools $(TOOLDIRS) tidymodern tidynonmodern berry_fix libagbsyscall,$(MAKECMDGOALS))) SCAN_DEPS := 0 else SCAN_DEPS := 1 endif endif +$(info scanfiles $(shell date +%s%3N)) +ifeq ($(SCAN_DEPS),1) 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)) @@ -193,11 +204,12 @@ OBJS := $(C_OBJS) $(GFLIB_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $ OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS)) SUBDIRS := $(sort $(dir $(OBJS))) +$(shell mkdir -p $(SUBDIRS)) +endif +$(info scanfiles done $(shell date +%s%3N)) AUTO_GEN_TARGETS := -$(shell mkdir -p $(SUBDIRS)) - all: rom tools: $(TOOLDIRS) @@ -211,7 +223,7 @@ ifeq ($(COMPARE),1) endif # For contributors to make sure a change didn't affect the contents of the ROM. -compare: ; @$(MAKE) COMPARE=1 +compare: all clean: mostlyclean clean-tools @@ -295,11 +307,8 @@ endif # 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. -# ifeq (,$(filter-out all rom compare modern berry_fix libagbsyscall,$(MAKECMDGOALS))) - -#$(info MAKECMDGOALS - $(MAKECMDGOALS)) - ifeq ($(SCAN_DEPS),1) +$(info Scanning deps start $(shell date +%s%3N)) ifeq ($(NODEP),1) $(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c ifeq (,$(KEEP_TEMPS)) @@ -324,9 +333,7 @@ else $$(AS) $$(ASFLAGS) -o $$@ $$(C_BUILDDIR)/$$*.s endif endef -#$(info C_DEP) $(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o, $(src)),$(src)))) -#$(error done C_DEP) endif ifeq ($(NODEP),1) @@ -388,6 +395,7 @@ $1: $2 $$(shell $(SCANINC) -I include -I "" $2) endef $(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif +$(info Scanning deps end $(shell date +%s%3N)) endif $(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s @@ -422,7 +430,7 @@ $(ROM): $(ELF) $(OBJCOPY) -O binary $< $@ $(FIX) $@ -p --silent -modern: ; @$(MAKE) MODERN=1 +modern: all berry_fix/berry_fix.gba: berry_fix diff --git a/make_tools.mk b/make_tools.mk new file mode 100644 index 000000000000..82a482bca724 --- /dev/null +++ b/make_tools.mk @@ -0,0 +1,12 @@ + +TOOLDIRS := $(filter-out tools/agbcc tools/binutils,$(wildcard tools/*)) +TOOLBASE = $(TOOLDIRS:tools/%=%) +TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE)) + +.PHONY: all $(TOOLDIRS) + +all: $(TOOLDIRS) + @: + +$(TOOLDIRS): + @$(MAKE) -C $@ From 92152e45e226b797a5ca10cff0e9e55d2a66a3d8 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Tue, 1 Jun 2021 23:22:15 -0400 Subject: [PATCH 205/762] Fixes to makefile. Merge C_ASM_DEP and DATA_ASM_DEP, NODEP and SCAN_DEPS can be overridden, add --no-print-directory to MAKEFLAGS in make_tools.mk (also removed some unused variables), add newline to help message in preproc. --- Makefile | 23 +++++++++-------------- make_tools.mk | 5 ++--- tools/preproc/preproc.cpp | 2 +- 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/Makefile b/Makefile index a2b013926954..5741977ec56e 100644 --- a/Makefile +++ b/Makefile @@ -157,19 +157,19 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst ifeq (,$(filter-out all rom compare modern berry_fix libagbsyscall,$(MAKECMDGOALS))) $(call infoshell, $(MAKE) -f make_tools.mk) else -NODEP := 1 +NODEP ?= 1 endif # check if we need to scan dependencies based on the rule ifeq (,$(MAKECMDGOALS)) - SCAN_DEPS := 1 + SCAN_DEPS ?= 1 else # clean, tidy, tools, mostlyclean, clean-tools, $(TOOLDIRS), tidymodern, tidynonmodern don't even build the ROM # berry_fix and libagbsyscall do their own thing ifeq (,$(filter-out clean tidy tools mostlyclean clean-tools $(TOOLDIRS) tidymodern tidynonmodern berry_fix libagbsyscall,$(MAKECMDGOALS))) - SCAN_DEPS := 0 + SCAN_DEPS ?= 0 else - SCAN_DEPS := 1 + SCAN_DEPS ?= 1 endif endif @@ -365,11 +365,11 @@ ifeq ($(NODEP),1) $(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.s $(AS) $(ASFLAGS) -o $@ $< else -define C_ASM_DEP -$1: $2 $$(shell $(SCANINC) -I "" $2) - $$(AS) $$(ASFLAGS) -o $$@ $$< +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 C_ASM_DEP,$(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o, $(src)),$(src)))) +$(foreach src, $(C_ASM_SRCS), $(eval $(call SRC_ASM_DATA_DEP,$(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o, $(src)),$(src)))) endif ifeq ($(NODEP),1) @@ -387,12 +387,7 @@ ifeq ($(NODEP),1) $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else -define DATA_ASM_DEP -$1: $2 $$(shell $(SCANINC) -I include -I "" $2) - $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@ -endef -$(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) -$(foreach src, $(C_ASM_SRCS), $(eval $(call DATA_ASM_DEP,$(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o, $(src)),$(src)))) +$(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call SRC_ASM_DATA_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src)))) endif $(info Scanning deps end $(shell date +%s%3N)) endif diff --git a/make_tools.mk b/make_tools.mk index 82a482bca724..697897a693a6 100644 --- a/make_tools.mk +++ b/make_tools.mk @@ -1,12 +1,11 @@ +MAKEFLAGS += --no-print-directory + TOOLDIRS := $(filter-out tools/agbcc tools/binutils,$(wildcard tools/*)) -TOOLBASE = $(TOOLDIRS:tools/%=%) -TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE)) .PHONY: all $(TOOLDIRS) all: $(TOOLDIRS) - @: $(TOOLDIRS): @$(MAKE) -C $@ diff --git a/tools/preproc/preproc.cpp b/tools/preproc/preproc.cpp index 02950a2963b9..eb2d4c8a23f7 100644 --- a/tools/preproc/preproc.cpp +++ b/tools/preproc/preproc.cpp @@ -134,7 +134,7 @@ int main(int argc, char **argv) { if (argc < 3 || argc > 4) { - std::fprintf(stderr, "Usage: %s SRC_FILE CHARMAP_FILE [-i]\nwhere -i denotes if input is from stdin", argv[0]); + std::fprintf(stderr, "Usage: %s SRC_FILE CHARMAP_FILE [-i]\nwhere -i denotes if input is from stdin\n", argv[0]); return 1; } From 4687847acea342d34985c195a8e7463fdefc4cc4 Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 3 Jun 2021 17:46:09 -0400 Subject: [PATCH 206/762] Fix building with KEEP_TEMPS=1, and NODEP=1. KEEP_TEMPS=1 not working was due to the pattern substitution in the old makefile rules for compiling C files ($*) not working with the explicit generation of dependencies. NODEP=1 not working was due to the NODEP rule for src/%.s not being updated to use preproc and cpp. --- Makefile | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 5741977ec56e..69173a556dea 100644 --- a/Makefile +++ b/Makefile @@ -308,7 +308,7 @@ endif ifeq ($(SCAN_DEPS),1) $(info Scanning deps start $(shell date +%s%3N)) ifeq ($(NODEP),1) -$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c +$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.c 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 $@ - @@ -325,17 +325,17 @@ 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)/$$*.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 + @$$(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)))) +$(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(src)),$(src),$(patsubst $(C_SUBDIR)/%.c,%,$(src))))) endif ifeq ($(NODEP),1) -$(GFLIB_BUILDDIR)/%.o : $(GFLIB_SUBDIR)/%.c $$(c_dep) +$(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 $@ - @@ -352,18 +352,18 @@ 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 + @$$(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)))) +$(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 - $(AS) $(ASFLAGS) -o $@ $< + $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ else define SRC_ASM_DATA_DEP $1: $2 $$(shell $(SCANINC) -I include -I "" $2) From 7e1ae9f95d41f46abd5888a63fec09664ac89d5a Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 3 Jun 2021 18:22:49 -0400 Subject: [PATCH 207/762] Remove debug print statements in Makefile. --- Makefile | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Makefile b/Makefile index 69173a556dea..d7d4b9566cdf 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,3 @@ -$(info start $(shell date +%s%3N)) TOOLCHAIN := $(DEVKITARM) COMPARE ?= 0 @@ -173,7 +172,6 @@ else endif endif -$(info scanfiles $(shell date +%s%3N)) ifeq ($(SCAN_DEPS),1) 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))) @@ -206,7 +204,6 @@ OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS)) SUBDIRS := $(sort $(dir $(OBJS))) $(shell mkdir -p $(SUBDIRS)) endif -$(info scanfiles done $(shell date +%s%3N)) AUTO_GEN_TARGETS := @@ -306,7 +303,6 @@ endif # It doesn't look like $(shell) can be deferred so there might not be a better way. ifeq ($(SCAN_DEPS),1) -$(info Scanning deps start $(shell date +%s%3N)) ifeq ($(NODEP),1) $(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.c ifeq (,$(KEEP_TEMPS)) @@ -389,7 +385,6 @@ $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s 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 -$(info Scanning deps end $(shell date +%s%3N)) endif $(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s From 7189e4e26f3da36ed9d373f77a9f51a36fc8ddaf Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Thu, 3 Jun 2021 21:05:56 -0400 Subject: [PATCH 208/762] Fix build on macos. Needs include in tools/preproc/c_file.cpp --- tools/preproc/c_file.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/preproc/c_file.cpp b/tools/preproc/c_file.cpp index f7ca4365ccd3..17a08cc9f71d 100644 --- a/tools/preproc/c_file.cpp +++ b/tools/preproc/c_file.cpp @@ -24,6 +24,7 @@ #include #include #include +#include #include "preproc.h" #include "c_file.h" #include "char_util.h" From 2fe7184d10ba183880fe6a6d09926f6286a96ace Mon Sep 17 00:00:00 2001 From: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Date: Fri, 4 Jun 2021 22:32:33 -0400 Subject: [PATCH 209/762] Rename sText_WildPkmnAppeared2 to reflect its use sText_WildPkmnAppeared2 is used for Legendary battles, so sText_LegendaryPkmnAppeared would be more informative. --- src/battle_message.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_message.c b/src/battle_message.c index a3086641040e..7ef5fe321088 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -383,7 +383,7 @@ static const u8 sText_ThrewPokeblockAtPkmn[] = _("{B_PLAYER_NAME} threw a {POKEB static const u8 sText_OutOfSafariBalls[] = _("{PLAY_SE SE_DING_DONG}ANNOUNCER: You're out of\nSAFARI BALLS! Game over!\p"); static const u8 sText_OpponentMon1Appeared[] = _("{B_OPPONENT_MON1_NAME} appeared!\p"); static const u8 sText_WildPkmnAppeared[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!\p"); -static const u8 sText_WildPkmnAppeared2[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!\p"); +static const u8 sText_LegendaryPkmnAppeared[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!\p"); static const u8 sText_WildPkmnAppearedPause[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!{PAUSE 127}"); static const u8 sText_TwoWildPkmnAppeared[] = _("Wild {B_OPPONENT_MON1_NAME} and\n{B_OPPONENT_MON2_NAME} appeared!\p"); static const u8 sText_Trainer1WantsToBattle[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME}\nwould like to battle!\p"); @@ -2125,7 +2125,7 @@ void BufferStringBattle(u16 stringID) else { if (gBattleTypeFlags & BATTLE_TYPE_LEGENDARY) - stringPtr = sText_WildPkmnAppeared2; + stringPtr = sText_LegendaryPkmnAppeared; else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) // interesting, looks like they had something planned for wild double battles stringPtr = sText_TwoWildPkmnAppeared; else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL) From 3ed06c2cc269c70c2d9a76bd4a063740de6688cd Mon Sep 17 00:00:00 2001 From: ExpoSeed <> Date: Thu, 10 Jun 2021 11:36:10 -0500 Subject: [PATCH 210/762] Remove remaining grey and replace with gray --- data/battle_anim_scripts.s | 30 +++++++++++++++--------------- include/battle_anim.h | 2 +- include/strings.h | 4 ++-- src/battle_anim_dark.c | 10 +++++----- src/battle_anim_effects_2.c | 16 ++++++++-------- src/battle_anim_mons.c | 2 +- src/battle_interface.c | 4 ++-- src/contest.c | 2 +- src/contest_util.c | 2 +- src/strings.c | 6 +++--- src/union_room_chat.c | 2 +- 11 files changed, 40 insertions(+), 40 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index d1c9bc78b038..e7aad6a93175 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -1656,12 +1656,12 @@ Explosion1: Move_DEFENSE_CURL: loadspritegfx ANIM_TAG_ECLIPSING_ORB loopsewithpan SE_M_TRI_ATTACK, SOUND_PAN_ATTACKER, 18, 3 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_ATTACKER, 0 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_ATTACKER, 0 createvisualtask AnimTask_DefenseCurlDeformMon, 5 waitforvisualfinish createsprite gEclipsingOrbSpriteTemplate, ANIM_ATTACKER, 2, 0, 6, 0, 1 waitforvisualfinish - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 waitforvisualfinish end @@ -7254,7 +7254,7 @@ Move_IRON_TAIL: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 clearmonbg ANIM_TARGET blendoff waitforvisualfinish @@ -7274,7 +7274,7 @@ Move_POISON_TAIL: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_ATTACKER, 1 clearmonbg ANIM_TARGET blendoff call PoisonBubblesEffect @@ -7551,7 +7551,7 @@ Move_DISABLE: playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 24, -16 waitforvisualfinish - createvisualtask AnimTask_GrowAndGreyscale, 5 + createvisualtask AnimTask_GrowAndGrayscale, 5 loopsewithpan SE_M_BIND, SOUND_PAN_TARGET, 15, 4 waitforvisualfinish delay 1 @@ -7946,16 +7946,16 @@ Move_PERISH_SONG: panse_1B SE_M_PERISH_SONG, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 delay 80 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 16, RGB_BLACK - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 4, 0 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 5, 0 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 6, 0 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 7, 0 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 4, 0 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 5, 0 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 6, 0 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 7, 0 delay 100 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 16, 0, RGB_BLACK - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 4, 1 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 5, 1 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 6, 1 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, 7, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 4, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 5, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 6, 1 + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 7, 1 waitforvisualfinish end @@ -9573,7 +9573,7 @@ Move_DOOM_DESIRE: createvisualtask GetIsDoomDesireHitTurn, 2 delay 1 monbg ANIM_ATK_PARTNER - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_TARGET, FALSE + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_TARGET, FALSE createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB_BLACK waitforvisualfinish setalpha 8, 8 @@ -9581,7 +9581,7 @@ Move_DOOM_DESIRE: createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_ATTACKER, 1 waitforvisualfinish delay 20 - createvisualtask AnimTask_SetGreyscaleOrOriginalPal, 5, ANIM_TARGET, TRUE + createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_TARGET, TRUE createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 4, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_ATK_PARTNER diff --git a/include/battle_anim.h b/include/battle_anim.h index 47648048970f..ad160e74d80f 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -143,7 +143,7 @@ void TranslateSpriteLinear(struct Sprite *sprite); void AnimSpriteOnMonPos(struct Sprite *sprite); void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite); void TranslateSpriteInCircleOverDuration(struct Sprite *sprite); -void SetGreyscaleOrOriginalPalette(u16 palNum, bool8 restoreOriginal); +void SetGrayscaleOrOriginalPalette(u16 palNum, bool8 restoreOriginal); void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union AffineAnimCmd *affineAnimCmds); bool8 RunAffineAnimFromTaskData(struct Task *task); void AnimThrowProjectile(struct Sprite *sprite); diff --git a/include/strings.h b/include/strings.h index 04283db0ee80..9b3be0538b94 100644 --- a/include/strings.h +++ b/include/strings.h @@ -596,7 +596,7 @@ extern const u8 gText_TooImportantToToss[]; extern const u8 gText_ConfirmTossItems[]; extern const u8 gText_MoveVar1Where[]; -extern const u8 gText_ColorLightShadowDarkGrey[]; +extern const u8 gText_ColorLightShadowDarkGray[]; extern const u8 gText_ColorBlue[]; extern const u8 gText_Friend[]; extern const u8 gText_Tristan[]; @@ -2512,7 +2512,7 @@ extern const u8 gText_MatchCallMay_Intro1[]; extern const u8 gText_MatchCallMay_Intro2[]; // Contest Link -extern const u8 gText_ColorDarkGrey[]; +extern const u8 gText_ColorDarkGray[]; extern const u8 gText_CommunicationStandby[]; extern const u8 gText_AnnouncingResults[]; extern const u8 gText_PreliminaryResults[]; diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index c2bfe269bd5e..8000a648c2b3 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -870,7 +870,7 @@ void AnimTask_MetallicShine(u8 taskId) paletteNum = 16 + gSprites[spriteId].oam.paletteNum; if (gBattleAnimArgs[1] == 0) - SetGreyscaleOrOriginalPalette(paletteNum, FALSE); + SetGrayscaleOrOriginalPalette(paletteNum, FALSE); else BlendPalette(paletteNum * 16, 16, 11, gBattleAnimArgs[2]); @@ -900,7 +900,7 @@ static void AnimTask_MetallicShine_Step(u8 taskId) spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); paletteNum = 16 + gSprites[spriteId].oam.paletteNum; if (gTasks[taskId].data[1] == 0) - SetGreyscaleOrOriginalPalette(paletteNum, TRUE); + SetGrayscaleOrOriginalPalette(paletteNum, TRUE); DestroySprite(&gSprites[gTasks[taskId].data[0]]); GetBattleAnimBg1Data(&animBg); @@ -925,10 +925,10 @@ static void AnimTask_MetallicShine_Step(u8 taskId) } } -// Changes battler's palette to either greyscale or original. +// Changes battler's palette to either grayscale or original. // arg0: which battler // arg1: FALSE grayscale, TRUE original -void AnimTask_SetGreyscaleOrOriginalPal(u8 taskId) +void AnimTask_SetGrayscaleOrOriginalPal(u8 taskId) { u8 spriteId; u8 battler; @@ -974,7 +974,7 @@ void AnimTask_SetGreyscaleOrOriginalPal(u8 taskId) } if (spriteId != SPRITE_NONE) - SetGreyscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, gBattleAnimArgs[1]); + SetGrayscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, gBattleAnimArgs[1]); DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 5dd584386e66..0ac5d384b67f 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -89,7 +89,7 @@ static void AnimPerishSongMusicNote_Step1(struct Sprite *); static void AnimPerishSongMusicNote_Step2(struct Sprite *); static void AnimGuardRing(struct Sprite *); static void AnimTask_Withdraw_Step(u8); -static void AnimTask_GrowAndGreyscale_Step(u8); +static void AnimTask_GrowAndGrayscale_Step(u8); static void AnimTask_Minimize_Step(u8); static void CreateMinimizeSprite(struct Task *, u8); static void ClonedMinizeSprite_Step(struct Sprite *); @@ -1996,26 +1996,26 @@ static void AnimGuillotinePincer_Step3(struct Sprite *sprite) DestroyAnimSprite(sprite); } -// Scales up the target mon sprite, and sets the palette to greyscale. +// Scales up the target mon sprite, and sets the palette to grayscale. // Used in MOVE_DISABLE. // No args. -void AnimTask_GrowAndGreyscale(u8 taskId) +void AnimTask_GrowAndGrayscale(u8 taskId) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_BLEND); SetSpriteRotScale(spriteId, 0xD0, 0xD0, 0); - SetGreyscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, FALSE); + SetGrayscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, FALSE); gTasks[taskId].data[0] = 80; - gTasks[taskId].func = AnimTask_GrowAndGreyscale_Step; + gTasks[taskId].func = AnimTask_GrowAndGrayscale_Step; } -static void AnimTask_GrowAndGreyscale_Step(u8 taskId) +static void AnimTask_GrowAndGrayscale_Step(u8 taskId) { if (--gTasks[taskId].data[0] == -1) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); ResetSpriteRotScale(spriteId); - SetGreyscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, TRUE); + SetGrayscaleOrOriginalPalette(gSprites[spriteId].oam.paletteNum + 16, TRUE); DestroyAnimVisualTask(taskId); } } @@ -3710,7 +3710,7 @@ static void AnimPerishSongMusicNote2(struct Sprite *sprite) } if (++sprite->data[0] == sprite->data[1]) - SetGreyscaleOrOriginalPalette(sprite->oam.paletteNum + 16, 0); + SetGrayscaleOrOriginalPalette(sprite->oam.paletteNum + 16, 0); if (sprite->data[0] == sprite->data[1] + 80) DestroyAnimSprite(sprite); diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 2082512ff3a9..cf5ae6eb2375 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1310,7 +1310,7 @@ u16 ArcTan2Neg(s16 a, s16 b) return -var; } -void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor) +void SetGrayscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor) { int i; struct PlttData *originalColor; diff --git a/src/battle_interface.c b/src/battle_interface.c index ff376f6f14e6..50eb5373ac5b 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -159,7 +159,7 @@ enum // strings extern const u8 gText_Slash[]; -extern const u8 gText_HighlightDarkGrey[]; +extern const u8 gText_HighlightDarkGray[]; extern const u8 gText_DynColor2[]; extern const u8 gText_DynColor2Male[]; extern const u8 gText_DynColor1Female[]; @@ -1895,7 +1895,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) u16 species; u8 gender; - StringCopy(gDisplayedStringBattle, gText_HighlightDarkGrey); + StringCopy(gDisplayedStringBattle, gText_HighlightDarkGray); GetMonData(mon, MON_DATA_NICKNAME, nickname); StringGetEnd10(nickname); ptr = StringAppend(gDisplayedStringBattle, nickname); diff --git a/src/contest.c b/src/contest.c index dbbd6ef63837..720bea180101 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1526,7 +1526,7 @@ static void Task_ShowMoveSelectScreen(u8 taskId) && eContestantStatus[gContestPlayerMonIndex].hasJudgesAttention) { // Highlight the text because it's a combo move - moveNameBuffer = StringCopy(moveName, gText_ColorLightShadowDarkGrey); + moveNameBuffer = StringCopy(moveName, gText_ColorLightShadowDarkGray); } else if (move != MOVE_NONE && eContestantStatus[gContestPlayerMonIndex].prevMove == move diff --git a/src/contest_util.c b/src/contest_util.c index decbded2c1fe..88ab4a7d2208 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -497,7 +497,7 @@ static void LoadContestMonName(u8 monIndex) struct ContestPokemon *mon = &gContestMons[monIndex]; u8 *str = gDisplayedStringBattle; if (monIndex == gContestPlayerMonIndex) - str = StringCopy(gDisplayedStringBattle, gText_ColorDarkGrey); + str = StringCopy(gDisplayedStringBattle, gText_ColorDarkGray); StringCopy(str, mon->nickname); AddContestTextPrinter(monIndex, gDisplayedStringBattle, 0); diff --git a/src/strings.c b/src/strings.c index 18cf31fb73fe..4987e32d2f1a 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1229,7 +1229,7 @@ ALIGNED(4) const u8 gText_Facility[] = _("{STR_VAR_1}"); const u8 gText_Give[] = _("Give"); const u8 gText_NoNeed[] = _("No need"); -const u8 gText_ColorLightShadowDarkGrey[] = _("{COLOR LIGHT_GRAY}{SHADOW DARK_GRAY}"); +const u8 gText_ColorLightShadowDarkGray[] = _("{COLOR LIGHT_GRAY}{SHADOW DARK_GRAY}"); const u8 gText_ColorBlue[] = _("{COLOR BLUE}"); const u8 gText_ColorTransparent[] = _("{HIGHLIGHT TRANSPARENT}{COLOR TRANSPARENT}"); const u8 gText_CDot[] = _("C."); @@ -1239,9 +1239,9 @@ const u8 gText_PreliminaryResults[] = _("The preliminary results!"); const u8 gText_Round2Results[] = _("Round 2 results!"); const u8 gText_ContestantsMonWon[] = _("{STR_VAR_1}'s {STR_VAR_2} won!"); const u8 gText_CommunicationStandby[] = _("Communication standby…"); -const u8 gText_ColorDarkGrey[] = _("{COLOR DARK_GRAY}"); +const u8 gText_ColorDarkGray[] = _("{COLOR DARK_GRAY}"); const u8 gText_ColorDynamic6WhiteDynamic5[] = _("{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR6 WHITE DYNAMIC_COLOR5}"); // Unused -const u8 gText_HighlightDarkGrey[] = _("{HIGHLIGHT DARK_GRAY}"); +const u8 gText_HighlightDarkGray[] = _("{HIGHLIGHT DARK_GRAY}"); const u8 gText_EmptySpace2[] = _(" "); // Unused const u8 gText_DynColor2Male[] = _("{COLOR DYNAMIC_COLOR2}♂"); const u8 gText_DynColor1Female[] = _("{COLOR DYNAMIC_COLOR1}♀"); diff --git a/src/union_room_chat.c b/src/union_room_chat.c index fb875bbb4c5d..8e9f78280c3b 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2984,7 +2984,7 @@ static void HideKeyboardSwapMenu(void) static void PrintChatMessage(u16 row, u8 *str, u8 colorIdx) { - // colorIdx: 0 = grey, 1 = red, 2 = green, 3 = blue + // colorIdx: 0 = gray, 1 = red, 2 = green, 3 = blue u8 color[3]; color[0] = TEXT_COLOR_WHITE; color[1] = colorIdx * 2 + 2; From 0a94dba4a7dab779937ba3afd29932aa8d5b535f Mon Sep 17 00:00:00 2001 From: SphericalIce Date: Sun, 13 Jun 2021 13:21:23 +0100 Subject: [PATCH 211/762] Rename item script labels to fit the established name scheme --- data/maps/MagmaHideout_2F_2R/map.json | 2 +- data/maps/MagmaHideout_4F/map.json | 2 +- data/scripts/item_ball_scripts.inc | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/maps/MagmaHideout_2F_2R/map.json b/data/maps/MagmaHideout_2F_2R/map.json index 4aa6896f6eaa..968c07fb7fe5 100644 --- a/data/maps/MagmaHideout_2F_2R/map.json +++ b/data/maps/MagmaHideout_2F_2R/map.json @@ -50,7 +50,7 @@ "movement_range_y": 1, "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", - "script": "MagmaHideout_2F_2R_EventScript_MaxElixir", + "script": "MagmaHideout_2F_2R_EventScript_ItemMaxElixir", "flag": "FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_MAX_ELIXIR" }, { diff --git a/data/maps/MagmaHideout_4F/map.json b/data/maps/MagmaHideout_4F/map.json index 94cf295e0223..67c11481fb7f 100644 --- a/data/maps/MagmaHideout_4F/map.json +++ b/data/maps/MagmaHideout_4F/map.json @@ -115,7 +115,7 @@ "movement_range_y": 1, "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", - "script": "MagmaHideout_4F_EventScript_MaxRevive", + "script": "MagmaHideout_4F_EventScript_ItemMaxRevive", "flag": "FLAG_ITEM_MAGMA_HIDEOUT_4F_MAX_REVIVE" } ], diff --git a/data/scripts/item_ball_scripts.inc b/data/scripts/item_ball_scripts.inc index 82633f77c04d..f9228134c801 100644 --- a/data/scripts/item_ball_scripts.inc +++ b/data/scripts/item_ball_scripts.inc @@ -634,7 +634,7 @@ MagmaHideout_1F_EventScript_ItemRareCandy:: @ 82914DE finditem ITEM_RARE_CANDY end -MagmaHideout_2F_2R_EventScript_MaxElixir:: @ 82914EB +MagmaHideout_2F_2R_EventScript_ItemMaxElixir:: @ 82914EB finditem ITEM_MAX_ELIXIR end @@ -650,7 +650,7 @@ MagmaHideout_3F_2R_EventScript_ItemPPMax:: @ 8291512 finditem ITEM_PP_MAX end -MagmaHideout_4F_EventScript_MaxRevive:: @ 829151F +MagmaHideout_4F_EventScript_ItemMaxRevive:: @ 829151F finditem ITEM_MAX_REVIVE end From b6b0062bd60eb57d66b6c79fc48bdbb55d8a5bf5 Mon Sep 17 00:00:00 2001 From: ExpoSeed <43502820+ExpoSeed@users.noreply.github.com> Date: Sun, 13 Jun 2021 16:32:00 -0500 Subject: [PATCH 212/762] Change map header flags to use a bitfield --- include/global.fieldmap.h | 16 ++++++---------- src/bike.c | 2 +- src/item_use.c | 2 +- src/overworld.c | 6 +++--- src/region_map.c | 2 +- 5 files changed, 12 insertions(+), 16 deletions(-) diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index a3d99ee21280..6bafa97479cb 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -142,19 +142,15 @@ struct MapHeader /* 0x16 */ u8 weather; /* 0x17 */ u8 mapType; /* 0x18 */ u8 filler_18[2]; - /* 0x1A */ u8 flags; + // fields correspond to the arguments in the map_header_flags macro + /* 0x1A */ bool8 allowCycling:1; + bool8 allowEscaping:1; // Escape Rope and Dig + bool8 allowRunning:1; + bool8 showMapName:5; // the last 4 bits are unused + // but the 5 bit sized bitfield is required to match /* 0x1B */ u8 battleType; }; -// Flags for gMapHeader.flags, as defined in the map_header_flags macro -#define MAP_ALLOW_CYCLING (1 << 0) -#define MAP_ALLOW_ESCAPING (1 << 1) // Escape Rope and Dig -#define MAP_ALLOW_RUNNING (1 << 2) -#define MAP_SHOW_MAP_NAME (1 << 3) -#define UNUSED_MAP_FLAGS (1 << 4 | 1 << 5 | 1 << 6 | 1 << 7) - -#define SHOW_MAP_NAME_ENABLED ((gMapHeader.flags & (MAP_SHOW_MAP_NAME | UNUSED_MAP_FLAGS)) == MAP_SHOW_MAP_NAME) - struct ObjectEvent { diff --git a/src/bike.c b/src/bike.c index 62ce3cd4461b..e97a5e04e4ad 100644 --- a/src/bike.c +++ b/src/bike.c @@ -1053,7 +1053,7 @@ void Bike_HandleBumpySlopeJump(void) bool32 IsRunningDisallowed(u8 metatile) { - if (!(gMapHeader.flags & MAP_ALLOW_RUNNING) || IsRunningDisallowedByMetatile(metatile) == TRUE) + if (!gMapHeader.allowRunning || IsRunningDisallowedByMetatile(metatile) == TRUE) return TRUE; else return FALSE; diff --git a/src/item_use.c b/src/item_use.c index 19f50549e7d4..c9087e929051 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -910,7 +910,7 @@ static void ItemUseOnFieldCB_EscapeRope(u8 taskId) bool8 CanUseDigOrEscapeRopeOnCurMap(void) { - if (gMapHeader.flags & MAP_ALLOW_ESCAPING) + if (gMapHeader.allowEscaping) return TRUE; else return FALSE; diff --git a/src/overworld.c b/src/overworld.c index 600333a47a06..979ebb74c467 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -962,7 +962,7 @@ static u16 GetCenterScreenMetatileBehavior(void) bool32 Overworld_IsBikingAllowed(void) { - if (!(gMapHeader.flags & MAP_ALLOW_CYCLING)) + if (!gMapHeader.allowCycling) return FALSE; else return TRUE; @@ -1687,7 +1687,7 @@ void CB2_ReturnToFieldFadeFromBlack(void) static void FieldCB_FadeTryShowMapPopup(void) { - if (SHOW_MAP_NAME_ENABLED && SecretBaseMapPopupEnabled() == TRUE) + if (gMapHeader.showMapName == TRUE && SecretBaseMapPopupEnabled() == TRUE) ShowMapNamePopup(); FieldCB_WarpExitFadeFromBlack(); } @@ -1933,7 +1933,7 @@ static bool32 LoadMapInStepsLocal(u8 *state, bool32 a2) (*state)++; break; case 11: - if (SHOW_MAP_NAME_ENABLED && SecretBaseMapPopupEnabled() == TRUE) + if (gMapHeader.showMapName == TRUE && SecretBaseMapPopupEnabled() == TRUE) ShowMapNamePopup(); (*state)++; break; diff --git a/src/region_map.c b/src/region_map.c index bec51ebf0c99..27e035199872 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1007,7 +1007,7 @@ static void InitMapBasedOnPlayerLocation(void) break; case MAP_TYPE_UNDERGROUND: case MAP_TYPE_UNKNOWN: - if (gMapHeader.flags & MAP_ALLOW_ESCAPING) + if (gMapHeader.allowEscaping) { mapHeader = Overworld_GetMapHeaderByGroupAndId(gSaveBlock1Ptr->escapeWarp.mapGroup, gSaveBlock1Ptr->escapeWarp.mapNum); gRegionMap->mapSecId = mapHeader->regionMapSectionId; From 5ccac26f2685aed0f0374d5999ce5506d5a69693 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 16 Jun 2021 11:03:23 -0400 Subject: [PATCH 213/762] Port symfile implementation from Ruby, FireRed --- .github/workflows/build.yml | 44 ++++++++++++++++++++++++++++++++----- Makefile | 13 ++++++++++- 2 files changed, 51 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 822b386eaec2..de3a35c40526 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,11 +7,29 @@ on: jobs: build: - runs-on: ubuntu-18.04 + runs-on: ubuntu-latest + env: + GAME_VERSION: EMERALD + GAME_REVISION: 0 + GAME_LANGUAGE: ENGLISH + MODERN: 0 + COMPARE: 1 steps: - name: Checkout uses: actions/checkout@master + - name: Checkout syms + uses: actions/checkout@master + with: + path: symbols + ref: symbols + + - name: Checkout agbcc + uses: actions/checkout@master + with: + path: agbcc + 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 @@ -20,16 +38,18 @@ jobs: - name: Install agbcc run: | - git clone https://github.com/pret/agbcc.git - cd agbcc ./build.sh ./install.sh ../ + working-directory: agbcc - name: Compare - run: make -j${nproc} compare + run: make -j${nproc} all syms - name: Modern - run: make -j${nproc} modern + env: + MODERN: 1 + COMPARE: 0 + run: make -j${nproc} all - name: Webhook if: ${{ github.event_name == 'push' }} @@ -38,3 +58,17 @@ jobs: CALCROM_DISCORD_WEBHOOK_AVATAR_URL: https://i.imgur.com/38BQHdd.png CALCROM_DISCORD_WEBHOOK_URL: ${{ secrets.CALCROM_DISCORD_WEBHOOK_URL }} run: sh .github/calcrom/webhook.sh pokeemerald + + - name: Move symfiles + if: ${{ github.event_name == 'push' }} + run: | + cp -v *.sym symbols/ + + - name: Update symfiles + if: ${{ github.event_name == 'push' }} + uses: EndBug/add-and-commit@v7 + with: + branch: symbols + cwd: "./symbols" + add: "*.sym" + message: ${{ github.event.commits[0].message }} diff --git a/Makefile b/Makefile index d7d4b9566cdf..89d4b7c941db 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,7 @@ endif PREFIX := arm-none-eabi- OBJCOPY := $(PREFIX)objcopy +OBJDUMP := $(PREFIX)objdump AS := $(PREFIX)as LD := $(PREFIX)ld @@ -75,6 +76,7 @@ SHELL := /bin/bash -o pipefail ELF = $(ROM:.gba=.elf) MAP = $(ROM:.gba=.map) +SYM = $(ROM:.gba=.sym) C_SUBDIR = src GFLIB_SUBDIR = gflib @@ -153,7 +155,7 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst # 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 berry_fix libagbsyscall,$(MAKECMDGOALS))) +ifeq (,$(filter-out all rom compare modern berry_fix libagbsyscall syms,$(MAKECMDGOALS))) $(call infoshell, $(MAKE) -f make_tools.mk) else NODEP ?= 1 @@ -211,6 +213,8 @@ all: rom tools: $(TOOLDIRS) +syms: $(SYM) + $(TOOLDIRS): @$(MAKE) -C $@ @@ -428,3 +432,10 @@ berry_fix: libagbsyscall: @$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) + +################### +### Symbol file ### +################### + +$(SYM): $(ELF) + $(OBJDUMP) -t $< | sort -u | grep -E "^0[2389]" > $@ From ae8f6e29f8906d53172a05f7b7b497510fe7617c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 16 Jun 2021 14:43:35 -0400 Subject: [PATCH 214/762] Symplifi symfiles --- Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 89d4b7c941db..384f012d15a0 100644 --- a/Makefile +++ b/Makefile @@ -131,6 +131,8 @@ FIX := tools/gbafix/gbafix$(EXE) MAPJSON := tools/mapjson/mapjson$(EXE) JSONPROC := tools/jsonproc/jsonproc$(EXE) +PERL := perl + TOOLDIRS := $(filter-out tools/agbcc tools/binutils,$(wildcard tools/*)) TOOLBASE = $(TOOLDIRS:tools/%=%) TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE)) @@ -438,4 +440,4 @@ libagbsyscall: ################### $(SYM): $(ELF) - $(OBJDUMP) -t $< | sort -u | grep -E "^0[2389]" > $@ + $(OBJDUMP) -t $< | sort -u | grep -E "^0[2389]" | $(PERL) -p -e 's/^(\w{8}) (\w).{6} \S+\t(\w{8}) (\w+)$$/\1 \2 \3 \4/g' > $@ From d02be421bcc22bb3aea82c23a687120359a0b357 Mon Sep 17 00:00:00 2001 From: Sewef Date: Thu, 17 Jun 2021 14:06:40 +0200 Subject: [PATCH 215/762] Fix sATypeMove_Table definition --- src/battle_message.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_message.c b/src/battle_message.c index 7ef5fe321088..ca87ced0918a 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1328,7 +1328,7 @@ static const u8 sText_SpaceIs[] = _(" is"); static const u8 sText_ApostropheS[] = _("'s"); // For displaying names of invalid moves -static const u8 sATypeMove_Table[][NUMBER_OF_MON_TYPES - 1] = +static const u8 sATypeMove_Table[NUMBER_OF_MON_TYPES][17 = { [TYPE_NORMAL] = _("a NORMAL move"), [TYPE_FIGHTING] = _("a FIGHTING move"), From fd55a0d0154242f155afd2981d64f3156d92d53d Mon Sep 17 00:00:00 2001 From: Sewef Date: Thu, 17 Jun 2021 14:12:06 +0200 Subject: [PATCH 216/762] Update src/battle_message.c Nothing happened. Co-authored-by: LOuroboros --- src/battle_message.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_message.c b/src/battle_message.c index ca87ced0918a..ae30a2a62928 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1328,7 +1328,7 @@ static const u8 sText_SpaceIs[] = _(" is"); static const u8 sText_ApostropheS[] = _("'s"); // For displaying names of invalid moves -static const u8 sATypeMove_Table[NUMBER_OF_MON_TYPES][17 = +static const u8 sATypeMove_Table[NUMBER_OF_MON_TYPES][17] = { [TYPE_NORMAL] = _("a NORMAL move"), [TYPE_FIGHTING] = _("a FIGHTING move"), From 8b59909ac5eb6e3540aeb78396943d57a9702e4d Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Thu, 17 Jun 2021 22:09:48 -0400 Subject: [PATCH 217/762] remove gflib --- Makefile | 38 +++----------------------------- {gflib => include}/bg.h | 0 {gflib => include}/blit.h | 0 {gflib => include}/dma3.h | 0 {gflib => include}/gpu_regs.h | 0 {gflib => include}/io_reg.h | 0 {gflib => include}/malloc.h | 0 {gflib => include}/sprite.h | 0 {gflib => include}/string_util.h | 0 {gflib => include}/text.h | 0 {gflib => include}/window.h | 0 ld_script.txt | 30 ++++++++++++------------- ld_script_modern.txt | 5 ----- {gflib => src}/bg.c | 0 {gflib => src}/blit.c | 0 {gflib => src}/dma3_manager.c | 0 {gflib => src}/gpu_regs.c | 0 {gflib => src}/io_reg.c | 0 {gflib => src}/malloc.c | 0 {gflib => src}/sprite.c | 0 {gflib => src}/string_util.c | 0 {gflib => src}/text.c | 0 {gflib => src}/window.c | 0 sym_bss.txt | 12 +++++----- sym_common.txt | 8 +++---- sym_ewram.txt | 8 +++---- 26 files changed, 32 insertions(+), 69 deletions(-) rename {gflib => include}/bg.h (100%) rename {gflib => include}/blit.h (100%) rename {gflib => include}/dma3.h (100%) rename {gflib => include}/gpu_regs.h (100%) rename {gflib => include}/io_reg.h (100%) rename {gflib => include}/malloc.h (100%) rename {gflib => include}/sprite.h (100%) rename {gflib => include}/string_util.h (100%) rename {gflib => include}/text.h (100%) rename {gflib => include}/window.h (100%) rename {gflib => src}/bg.c (100%) rename {gflib => src}/blit.c (100%) rename {gflib => src}/dma3_manager.c (100%) rename {gflib => src}/gpu_regs.c (100%) rename {gflib => src}/io_reg.c (100%) rename {gflib => src}/malloc.c (100%) rename {gflib => src}/sprite.c (100%) rename {gflib => src}/string_util.c (100%) rename {gflib => src}/text.c (100%) rename {gflib => src}/window.c (100%) diff --git a/Makefile b/Makefile index d7d4b9566cdf..95d6328ef599 100644 --- a/Makefile +++ b/Makefile @@ -77,7 +77,6 @@ ELF = $(ROM:.gba=.elf) MAP = $(ROM:.gba=.map) C_SUBDIR = src -GFLIB_SUBDIR = gflib ASM_SUBDIR = asm DATA_SRC_SUBDIR = src/data DATA_ASM_SUBDIR = data @@ -87,7 +86,6 @@ 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) @@ -111,7 +109,7 @@ LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall endif -CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) +CPPFLAGS := -iquote include -Wno-trigraphs -DMODERN=$(MODERN) ifneq ($(MODERN),1) CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef endif @@ -177,9 +175,6 @@ 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_OBJS := $(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o,$(C_ASM_SRCS)) @@ -198,7 +193,7 @@ 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))) @@ -316,7 +311,7 @@ else endif else define C_DEP -$1: $2 $$(shell $(SCANINC) -I include -I tools/agbcc/include -I gflib $2) +$1: $2 $$(shell $(SCANINC) -I include -I tools/agbcc/include $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 $$@ - @@ -330,33 +325,6 @@ endef $(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(src)),$(src),$(patsubst $(C_SUBDIR)/%.c,%,$(src))))) 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 $@ 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/gflib/dma3.h b/include/dma3.h similarity index 100% rename from gflib/dma3.h rename to include/dma3.h 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/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/gflib/malloc.h b/include/malloc.h similarity index 100% rename from gflib/malloc.h rename to include/malloc.h diff --git a/gflib/sprite.h b/include/sprite.h similarity index 100% rename from gflib/sprite.h rename to include/sprite.h 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/gflib/text.h b/include/text.h similarity index 100% rename from gflib/text.h rename to include/text.h 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/ld_script.txt b/ld_script.txt index 8c8f19015eb3..5770b2cea6fa 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -49,15 +49,15 @@ SECTIONS { { 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); @@ -436,12 +436,12 @@ SECTIONS { ALIGN(4) { 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); diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 59d032bb2504..72fb4dbc5c25 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -14,7 +14,6 @@ SECTIONS { . = 0x1C000; src/*.o(ewram_data); - gflib/*.o(ewram_data); . = 0x40000; } @@ -26,7 +25,6 @@ SECTIONS { { /* .bss starts at 0x3000000 */ src/*.o(.bss); - gflib/*.o(.bss); *libc.a:*.o(.bss*); *libnosys.a:*.o(.bss*); @@ -35,7 +33,6 @@ SECTIONS { /* COMMON starts at 0x30022A8 */ src/*.o(COMMON); - gflib/*.o(COMMON); *libc.a:*.o(COMMON); *libnosys.a:*.o(COMMON); end = .; @@ -49,7 +46,6 @@ SECTIONS { { src/crt0.o(.text*); src/*.o(.text*); - gflib/*.o(.text*); asm/*.o(.text*); } =0 @@ -84,7 +80,6 @@ SECTIONS { ALIGN(4) { src/*.o(.rodata*); - gflib/*.o(.rodata*); data/*.o(.rodata*); } =0 diff --git a/gflib/bg.c b/src/bg.c similarity index 100% rename from gflib/bg.c rename to src/bg.c 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/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/gflib/gpu_regs.c b/src/gpu_regs.c similarity index 100% rename from gflib/gpu_regs.c rename to src/gpu_regs.c 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/gflib/malloc.c b/src/malloc.c similarity index 100% rename from gflib/malloc.c rename to src/malloc.c diff --git a/gflib/sprite.c b/src/sprite.c similarity index 100% rename from gflib/sprite.c rename to src/sprite.c 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/gflib/text.c b/src/text.c similarity index 100% rename from gflib/text.c rename to src/text.c diff --git a/gflib/window.c b/src/window.c similarity index 100% rename from gflib/window.c rename to src/window.c diff --git a/sym_bss.txt b/sym_bss.txt index 3166aee4552d..7bdf99dd510d 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 1525d8aec8cd..23a185e6f14a 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -1,17 +1,17 @@ .space 0x8 .include "main.o" - @ ../gflib/bg.o + @ bg.o .align 2 gUnneededFireRedVariable: .space 4 - @ ../gflib/window.o + @ window.o .align 4 gTransparentTileNumber: .space 1 .align 4 gWindowBgTilemapBuffers: .space 16 - @ ../gflib/text.o + @ text.o .align 4 gFonts: .space 4 @@ -24,7 +24,7 @@ gCurGlyph: .align 2 gTextFlags: .space 4 - @ ../gflib/sprite.o + @ sprite.o .align 2 gOamMatrixAllocBitmap: .space 4 diff --git a/sym_ewram.txt b/sym_ewram.txt index 88c4461cb0d2..f461cfa10cdf 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -1,9 +1,9 @@ .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" From 10c80230c4b24074a8a9e46661db91fa8d465780 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 18 Jun 2021 00:15:45 -0400 Subject: [PATCH 218/762] change printItemFunc to use u32 instead of s32 also change a use of -2 to LIST_CANCEL --- include/list_menu.h | 2 +- src/battle_pyramid_bag.c | 4 ++-- src/daycare.c | 4 ++-- src/decoration.c | 6 +++--- src/item_menu.c | 4 ++-- src/menu_specialized.c | 2 +- src/player_pc.c | 8 ++++---- src/shop.c | 10 +++++----- src/union_room.c | 17 ++++++++--------- 9 files changed, 28 insertions(+), 29 deletions(-) diff --git a/include/list_menu.h b/include/list_menu.h index 0a54a069ad7e..1c18f3dff061 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -31,7 +31,7 @@ struct ListMenuTemplate { const struct ListMenuItem *items; void (* moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list); - void (* itemPrintFunc)(u8 windowId, s32 itemId, u8 y); + void (* itemPrintFunc)(u8 windowId, u32 itemId, u8 y); u16 totalItems; u16 maxShowed; u8 windowId; diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 0b13512ec734..095cd2bdfdd6 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -106,7 +106,7 @@ static void BagAction_Give(u8); static void BagAction_Cancel(u8); static void BagAction_UseInBattle(u8); static void BagCursorMoved(s32, bool8, struct ListMenu *); -static void PrintItemQuantity(u8, s32, u8); +static void PrintItemQuantity(u8 windowId, u32 itemId, u8 y); static void TossItem(u8); static void DontTossItem(u8); @@ -651,7 +651,7 @@ static void BagCursorMoved(s32 itemIndex, bool8 onInit, struct ListMenu *list) } } -static void PrintItemQuantity(u8 windowId, s32 itemIndex, u8 y) +static void PrintItemQuantity(u8 windowId, u32 itemIndex, u8 y) { s32 xAlign; if (itemIndex == LIST_CANCEL) diff --git a/src/daycare.c b/src/daycare.c index 4199bfda67e4..6a17150490e2 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -29,7 +29,7 @@ extern const struct Evolution gEvolutionTable[][EVOS_PER_MON]; static void ClearDaycareMonMail(struct DaycareMail *mail); static void SetInitialEggData(struct Pokemon *mon, u16 species, struct DayCare *daycare); static u8 GetDaycareCompatibilityScore(struct DayCare *daycare); -static void DaycarePrintMonInfo(u8 windowId, s32 daycareSlotId, u8 y); +static void DaycarePrintMonInfo(u8 windowId, u32 daycareSlotId, u8 y); // RAM buffers used to assist with BuildEggMoveset() EWRAM_DATA static u16 sHatchedEggLevelUpMoves[EGG_LVL_UP_MOVES_ARRAY_COUNT] = {0}; @@ -1226,7 +1226,7 @@ static void DaycarePrintMonLvl(struct DayCare *daycare, u8 windowId, u32 daycare DaycareAddTextPrinter(windowId, lvlText, x, y); } -static void DaycarePrintMonInfo(u8 windowId, s32 daycareSlotId, u8 y) +static void DaycarePrintMonInfo(u8 windowId, u32 daycareSlotId, u8 y) { if (daycareSlotId < (unsigned) DAYCARE_MON_COUNT) { diff --git a/src/decoration.c b/src/decoration.c index 6b6cf21e88db..ebd7eb26c65d 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -147,7 +147,7 @@ static void ReturnToActionsMenuFromCategories(u8 taskId); static void ExitTraderDecorationMenu(u8 taskId); static void CopyDecorationMenuItemName(u8 *dest, u16 decoration); static void DecorationItemsMenu_OnCursorMove(s32 itemIndex, bool8 flag, struct ListMenu *menu); -static void DecorationItemsMenu_PrintDecorationInUse(u8 windowId, s32 itemIndex, u8 y); +static void DecorationItemsMenu_PrintDecorationInUse(u8 windowId, u32 itemIndex, u8 y); static void ShowDecorationItemsWindow(u8 taskId); static void HandleDecorationItemsMenuInput(u8 taskId); static void PrintDecorationItemDescription(s32 itemIndex); @@ -912,9 +912,9 @@ static void DecorationItemsMenu_OnCursorMove(s32 itemIndex, bool8 flag, struct L PrintDecorationItemDescription(itemIndex); } -static void DecorationItemsMenu_PrintDecorationInUse(u8 windowId, s32 itemIndex, u8 y) +static void DecorationItemsMenu_PrintDecorationInUse(u8 windowId, u32 itemIndex, u8 y) { - if (itemIndex != -2) + if (itemIndex != LIST_CANCEL) { if (IsDecorationIndexInSecretBase(itemIndex + 1) == TRUE) BlitMenuInfoIcon(windowId, MENU_INFO_ICON_BALL_RED, 92, y + 2); diff --git a/src/item_menu.c b/src/item_menu.c index de4d82e9b058..39abf883a76d 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -133,7 +133,7 @@ void UpdatePocketScrollPositions(void); u8 CreateBagInputHandlerTask(u8); void sub_81AC23C(u8); void BagMenu_MoveCursorCallback(s32 a, bool8 b, struct ListMenu*); -void BagMenu_ItemPrintCallback(u8 windowId, s32 itemIndex, u8 a); +void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 a); void ItemMenu_UseOutOfBattle(u8 taskId); void ItemMenu_Toss(u8 taskId); void ItemMenu_Register(u8 taskId); @@ -893,7 +893,7 @@ void BagMenu_MoveCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *li } } -void BagMenu_ItemPrintCallback(u8 windowId, s32 itemIndex, u8 y) +void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) { u16 itemId; u16 itemQuantity; diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 4c4be57f04fd..2afcf51ca94c 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -253,7 +253,7 @@ static u8 sub_81D1D34(u8 a0) return sUnknown_0203CF48[a0]; } -static void sub_81D1D44(u8 windowId, s32 itemId, u8 y) +static void sub_81D1D44(u8 windowId, u32 itemId, u8 y) { u8 buffer[30]; u16 length; diff --git a/src/player_pc.c b/src/player_pc.c index a040ba5b6e5b..946f0645c012 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -119,7 +119,7 @@ static void sub_816C060(u16 itemId); static void sub_816BEF0(s32 id); static void sub_816B4DC(u8 taskId); static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu * thisMenu); -static void fish4_goto_x5_or_x6(u8 windowId, s32 id, u8 yOffset); +static void fish4_goto_x5_or_x6(u8 windowId, u32 id, u8 yOffset); // EWRAM static EWRAM_DATA const u8 *gPcItemMenuOptionOrder = NULL; @@ -943,7 +943,7 @@ static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu *thisMenu) if (gUnknown_0203BCC4->unk666 == 0xFF) { sub_816C0C8(); - if (id != -2) + if (id != LIST_CANCEL) sub_816C060(gSaveBlock1Ptr->pcItems[id].itemId); else sub_816C060(ITEMPC_GO_BACK_TO_PREV); @@ -951,9 +951,9 @@ static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu *thisMenu) } } -static void fish4_goto_x5_or_x6(u8 windowId, s32 id, u8 yOffset) +static void fish4_goto_x5_or_x6(u8 windowId, u32 id, u8 yOffset) { - if (id != -2) + if (id != LIST_CANCEL) { if (gUnknown_0203BCC4->unk666 != 0xFF) { diff --git a/src/shop.c b/src/shop.c index 55b421928cbf..2a30bea22ce8 100755 --- a/src/shop.c +++ b/src/shop.c @@ -91,7 +91,7 @@ static void Task_ReturnToItemListAfterDecorationPurchase(u8 taskId); static void Task_HandleShopMenuBuy(u8 taskId); static void Task_HandleShopMenuSell(u8 taskId); static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, struct ListMenu *list); -static void BuyMenuPrintPriceInList(u8 windowId, s32 item, u8 y); +static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y); static const struct YesNoFuncTable sShopPurchaseYesNoFuncs = { @@ -552,17 +552,17 @@ static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, s BuyMenuPrint(2, description, 3, 1, 0, 0); } -static void BuyMenuPrintPriceInList(u8 windowId, s32 item, u8 y) +static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) { u8 x; - if (item != LIST_CANCEL) + if (itemId != LIST_CANCEL) { if (sMartInfo.martType == MART_TYPE_NORMAL) { ConvertIntToDecimalStringN( gStringVar1, - ItemId_GetPrice(item) >> GetPriceReduction(POKENEWS_SLATEPORT), + ItemId_GetPrice(itemId) >> GetPriceReduction(POKENEWS_SLATEPORT), STR_CONV_MODE_LEFT_ALIGN, 5); } @@ -570,7 +570,7 @@ static void BuyMenuPrintPriceInList(u8 windowId, s32 item, u8 y) { ConvertIntToDecimalStringN( gStringVar1, - gDecorations[item].price, + gDecorations[itemId].price, STR_CONV_MODE_LEFT_ALIGN, 5); } diff --git a/src/union_room.c b/src/union_room.c index bd6b303b9261..372792a13f51 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -253,10 +253,10 @@ static bool32 UR_PrintFieldMessage(const u8 *); static s32 GetChatLeaderActionRequestMessage(u8 *, u32, u16 *, struct WirelessLink_URoom *); static void Task_InitUnionRoom(u8 taskId); static bool8 AreGnameUnameDifferent(struct WirelessGnameUnamePair*, const struct WirelessGnameUnamePair*); -static void ItemPrintFunc_PossibleGroupMembers(u8, s32, u8); -static void ListMenuItemPrintFunc_UnionRoomGroups(u8, s32, u8); -static void TradeBoardListMenuItemPrintFunc(u8, s32, u8); -static void nullsub_14(u8, s32, u8); +static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y); +static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, u32 id, u8 y); +static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 id, u8 y); +static void nullsub_14(u8 windowId, u32 id, u8 y); #include "data/union_room.h" @@ -835,7 +835,7 @@ static bool8 Leader_SetStateIfMemberListChanged(struct WirelessLink_Leader *data return FALSE; } -static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, s32 id, u8 y) +static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; u8 colorIdx = UR_COLOR_DKE_WHT_LTE; @@ -1363,7 +1363,7 @@ static u8 URoomGroupListGetTextColor(struct WirelessLink_Group *data, u32 id) return UR_COLOR_DKE_WHT_LTE; } -static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, s32 id, u8 y) +static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, u32 id, u8 y) { struct WirelessLink_Group *data = sWirelessLinkMain.group; u8 colorId = URoomGroupListGetTextColor(data, id); @@ -4074,9 +4074,8 @@ static s32 UnionRoomGetPlayerInteractionResponse(struct UnkStruct_Main0 *main0, } } -void nullsub_14(u8 windowId, s32 itemId, u8 y) +void nullsub_14(u8 windowId, u32 itemId, u8 y) { - } static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct GFtgtGname * gname, const u8 * uname, u8 colorIdx) @@ -4100,7 +4099,7 @@ static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct GFtgtGname * gname } } -static void TradeBoardListMenuItemPrintFunc(u8 windowId, s32 itemId, u8 y) +static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 itemId, u8 y) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; struct GFtgtGname *rfu; From 6ca73737cf5142962e8c27d1b6750158c60676c6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 18 Jun 2021 12:53:15 -0400 Subject: [PATCH 219/762] Fix regex error --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 384f012d15a0..2e5afdf0c23a 100644 --- a/Makefile +++ b/Makefile @@ -440,4 +440,4 @@ libagbsyscall: ################### $(SYM): $(ELF) - $(OBJDUMP) -t $< | sort -u | grep -E "^0[2389]" | $(PERL) -p -e 's/^(\w{8}) (\w).{6} \S+\t(\w{8}) (\w+)$$/\1 \2 \3 \4/g' > $@ + $(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' > $@ From 9407a1ac76c03a09a91e204b3d8d40843f43be3b Mon Sep 17 00:00:00 2001 From: ultima-soul <33333039+ultima-soul@users.noreply.github.com> Date: Fri, 18 Jun 2021 19:20:05 -0700 Subject: [PATCH 220/762] Replace hardcoded number in MakeCaptureStars. --- src/battle_anim_throw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 83768b47619c..4064e250cb16 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -1420,7 +1420,7 @@ static void MakeCaptureStars(struct Sprite *sprite) LoadBallParticleGfx(BALL_MASTER); for (i = 0; i < ARRAY_COUNT(sCaptureStars); i++) { - u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[4], sprite->pos1.x, sprite->pos1.y, subpriority); + u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[BALL_MASTER], sprite->pos1.x, sprite->pos1.y, subpriority); if (spriteId != MAX_SPRITES) { gSprites[spriteId].sDuration = 24; From 810b51f96c9f2043a726b782a4884a06430192f2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 21 Jun 2021 13:48:03 -0400 Subject: [PATCH 221/762] Clarify contest heart tiles --- include/constants/contest.h | 1 + src/contest.c | 27 +++++++++++++++------------ src/pokemon_summary_screen.c | 20 +++++++++++++------- 3 files changed, 29 insertions(+), 19 deletions(-) diff --git a/include/constants/contest.h b/include/constants/contest.h index 28b02e9c0c60..775dcbe62b91 100644 --- a/include/constants/contest.h +++ b/include/constants/contest.h @@ -4,6 +4,7 @@ #define APPLAUSE_METER_SIZE 5 #define CONTEST_NUM_APPEALS 5 #define CONTEST_LAST_APPEAL (CONTEST_NUM_APPEALS - 1) +#define MAX_CONTEST_MOVE_HEARTS 8 #define LINK_CONTEST_FLAG_IS_LINK (1 << 0) #define LINK_CONTEST_FLAG_IS_WIRELESS (1 << 1) diff --git a/src/contest.c b/src/contest.c index dbbd6ef63837..920c3bdd7c6c 100644 --- a/src/contest.c +++ b/src/contest.c @@ -258,6 +258,11 @@ enum { #define TAG_BLINK_EFFECT_CONTESTANT2 0x80EA #define TAG_BLINK_EFFECT_CONTESTANT3 0x80EB +#define TILE_FILLED_APPEAL_HEART 0x5012 +#define TILE_FILLED_JAM_HEART 0x5014 +#define TILE_EMPTY_APPEAL_HEART 0x5035 +#define TILE_EMPTY_JAM_HEART 0x5036 + enum { SLIDER_HEART_ANIM_NORMAL, SLIDER_HEART_ANIM_DISAPPEAR, @@ -3203,27 +3208,25 @@ static void PrintContestMoveDescription(u16 a) ContestBG_FillBoxWithIncrementingTile(0, categoryTile, 0x0b, 0x1f, 0x05, 0x01, 0x11, 0x01); ContestBG_FillBoxWithIncrementingTile(0, categoryTile + 0x10, 0x0b, 0x20, 0x05, 0x01, 0x11, 0x01); + // Appeal hearts if (gContestEffects[gContestMoves[a].effect].appeal == 0xFF) numHearts = 0; else numHearts = gContestEffects[gContestMoves[a].effect].appeal / 10; - if (numHearts > 8) - numHearts = 8; - // Filled-in hearts - ContestBG_FillBoxWithTile(0, 0x5035, 0x15, 0x1f, 0x08, 0x01, 0x11); - // Empty hearts - ContestBG_FillBoxWithTile(0, 0x5012, 0x15, 0x1f, numHearts, 0x01, 0x11); + if (numHearts > MAX_CONTEST_MOVE_HEARTS) + numHearts = MAX_CONTEST_MOVE_HEARTS; + ContestBG_FillBoxWithTile(0, TILE_EMPTY_APPEAL_HEART, 0x15, 0x1f, MAX_CONTEST_MOVE_HEARTS, 0x01, 0x11); + ContestBG_FillBoxWithTile(0, TILE_FILLED_APPEAL_HEART, 0x15, 0x1f, numHearts, 0x01, 0x11); + // Jam hearts if (gContestEffects[gContestMoves[a].effect].jam == 0xFF) numHearts = 0; else numHearts = gContestEffects[gContestMoves[a].effect].jam / 10; - if (numHearts > 8) - numHearts = 8; - // Filled-in hearts - ContestBG_FillBoxWithTile(0, 0x5036, 0x15, 0x20, 0x08, 0x01, 0x11); - // Empty hearts - ContestBG_FillBoxWithTile(0, 0x5014, 0x15, 0x20, numHearts, 0x01, 0x11); + if (numHearts > MAX_CONTEST_MOVE_HEARTS) + numHearts = MAX_CONTEST_MOVE_HEARTS; + ContestBG_FillBoxWithTile(0, TILE_EMPTY_JAM_HEART, 0x15, 0x20, MAX_CONTEST_MOVE_HEARTS, 0x01, 0x11); + ContestBG_FillBoxWithTile(0, TILE_FILLED_JAM_HEART, 0x15, 0x20, numHearts, 0x01, 0x11); FillWindowPixelBuffer(WIN_MOVE_DESCRIPTION, PIXEL_FILL(0)); Contest_PrintTextToBg0WindowStd(WIN_MOVE_DESCRIPTION, gContestEffectDescriptionPointers[gContestMoves[a].effect]); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 8f16321b2f90..31505b7c9b3c 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -119,6 +119,11 @@ enum SPRITE_ARR_ID_COUNT = SPRITE_ARR_ID_MOVE_SELECTOR2 + MOVE_SELECTOR_SPRITES_COUNT }; +#define TILE_EMPTY_APPEAL_HEART 0x1039 +#define TILE_FILLED_APPEAL_HEART 0x103A +#define TILE_FILLED_JAM_HEART 0x103C +#define TILE_EMPTY_JAM_HEART 0x103D + static EWRAM_DATA struct PokemonSummaryScreenData { /*0x00*/ union { @@ -2645,29 +2650,30 @@ static void DrawContestMoveHearts(u16 move) if (move != MOVE_NONE) { + // Draw appeal hearts u8 effectValue = gContestEffects[gContestMoves[move].effect].appeal; if (effectValue != 0xFF) effectValue /= 10; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_CONTEST_MOVE_HEARTS; i++) { if (effectValue != 0xFF && i < effectValue) - tilemap[(i / 4 * 32) + (i & 3) + 0x1E6] = 0x103A; + tilemap[(i / 4 * 32) + (i & 3) + 0x1E6] = TILE_FILLED_APPEAL_HEART; else - tilemap[(i / 4 * 32) + (i & 3) + 0x1E6] = 0x1039; + tilemap[(i / 4 * 32) + (i & 3) + 0x1E6] = TILE_EMPTY_APPEAL_HEART; } + // Draw jam hearts effectValue = gContestEffects[gContestMoves[move].effect].jam; - if (effectValue != 0xFF) effectValue /= 10; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_CONTEST_MOVE_HEARTS; i++) { if (effectValue != 0xFF && i < effectValue) - tilemap[(i / 4 * 32) + (i & 3) + 0x226] = 0x103C; + tilemap[(i / 4 * 32) + (i & 3) + 0x226] = TILE_FILLED_JAM_HEART; else - tilemap[(i / 4 * 32) + (i & 3) + 0x226] = 0x103D; + tilemap[(i / 4 * 32) + (i & 3) + 0x226] = TILE_EMPTY_JAM_HEART; } } } From 6d92b466e75164fb025909bdd74d5071d5bf646b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 25 Jun 2021 11:50:09 -0400 Subject: [PATCH 222/762] Add missing use of F_TRAINER_FEMALE --- src/battle_main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index 001e2ec17c05..977bcbd9c1b9 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -1961,10 +1961,10 @@ static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 fir if (gTrainers[trainerNum].doubleBattle == TRUE) personalityValue = 0x80; - else if (gTrainers[trainerNum].encounterMusic_gender & 0x80) - personalityValue = 0x78; + else if (gTrainers[trainerNum].encounterMusic_gender & F_TRAINER_FEMALE) + personalityValue = 0x78; // Use personality more likely to result in a female Pokémon else - personalityValue = 0x88; + personalityValue = 0x88; // Use personality more likely to result in a male Pokémon for (j = 0; gTrainers[trainerNum].trainerName[j] != EOS; j++) nameHash += gTrainers[trainerNum].trainerName[j]; From d391c136d81630c1e8a914c3251b528568633eb0 Mon Sep 17 00:00:00 2001 From: garakmon Date: Sun, 27 Jun 2021 21:14:21 -0400 Subject: [PATCH 223/762] fix encounter slot logic to accomodate changes --- src/wild_encounter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 767fbe4e7ef3..8bcb1760557d 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -162,7 +162,7 @@ static u8 ChooseWildMonIndex_Land(void) return 8; else if (rand >= ENCOUNTER_CHANCE_LAND_MONS_SLOT_8 && rand < ENCOUNTER_CHANCE_LAND_MONS_SLOT_9) return 9; - else if (rand == ENCOUNTER_CHANCE_LAND_MONS_SLOT_9) + else if (rand >= ENCOUNTER_CHANCE_LAND_MONS_SLOT_9 && rand < ENCOUNTER_CHANCE_LAND_MONS_SLOT_10) return 10; else return 11; @@ -215,7 +215,7 @@ static u8 ChooseWildMonIndex_Fishing(u8 rod) wildMonIndex = 7; if (rand >= ENCOUNTER_CHANCE_FISHING_MONS_SUPER_ROD_SLOT_7 && rand < ENCOUNTER_CHANCE_FISHING_MONS_SUPER_ROD_SLOT_8) wildMonIndex = 8; - if (rand == ENCOUNTER_CHANCE_FISHING_MONS_SUPER_ROD_SLOT_8) + if (rand >= ENCOUNTER_CHANCE_FISHING_MONS_SUPER_ROD_SLOT_8 && rand < ENCOUNTER_CHANCE_FISHING_MONS_SUPER_ROD_SLOT_9) wildMonIndex = 9; break; } From 93188ef0a8aac4855903543c3b059285baccebc2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 1 Jul 2021 00:18:52 -0400 Subject: [PATCH 224/762] Fix divide by 0 in Cmd_getexp --- src/battle_script_commands.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 15e44dd75e30..d927ffb76ecf 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3269,7 +3269,7 @@ static void Cmd_getexp(void) if (viaExpShare) // at least one mon is getting exp via exp share { - *exp = calculatedExp / 2 / viaSentIn; + *exp = SAFE_DIV(calculatedExp / 2, viaSentIn); if (*exp == 0) *exp = 1; @@ -3279,7 +3279,7 @@ static void Cmd_getexp(void) } else { - *exp = calculatedExp / viaSentIn; + *exp = SAFE_DIV(calculatedExp, viaSentIn); if (*exp == 0) *exp = 1; gExpShareExp = 0; From 10886a586b75eb80a68f341bcc61b7c0343ddfe2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 27 Apr 2021 02:30:26 -0400 Subject: [PATCH 225/762] Clean up mirage tower --- data/maps/Route111/scripts.inc | 7 +- graphics/misc/fossil.png | Bin 298 -> 0 bytes include/constants/event_objects.h | 4 + src/mirage_tower.c | 384 ++++++++++++++++-------------- 4 files changed, 211 insertions(+), 184 deletions(-) delete mode 100644 graphics/misc/fossil.png diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 322c9a2b7219..9e6e4c8eb77d 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -2,9 +2,10 @@ .set LOCALID_VICTORIA, 2 .set LOCALID_VIVI, 3 .set LOCALID_VICKY, 4 -.set LOCALID_PLAYER_FALLING, 45 .set LOCALID_ROCK_SMASH_MAN, 46 +@ Note: LOCALID_ROUTE111_PLAYER_FALLING is used in mirage_tower.c, and is defined in event_objects.h + Route111_MapScripts:: @ 81F0CA7 map_script MAP_SCRIPT_ON_LOAD, Route111_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, Route111_OnTransition @@ -127,11 +128,11 @@ Route111_EventScript_MirageTowerDisappear:: @ 81F0E60 waitstate delay 24 playse SE_FALL - addobject LOCALID_PLAYER_FALLING + addobject LOCALID_ROUTE111_PLAYER_FALLING special StartPlayerDescendMirageTower waitstate showobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN - removeobject LOCALID_PLAYER_FALLING + removeobject LOCALID_ROUTE111_PLAYER_FALLING delay 16 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH delay 16 diff --git a/graphics/misc/fossil.png b/graphics/misc/fossil.png deleted file mode 100644 index f92649e9876ad6c5464836302778b5293b6c40c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPF(2kqHWpB>svm0U%cCQ_9T#r9F%zRAPa4ExPVb)~~e&R`*O;_$aKeubj)X2Af6;N}{;_Rf0$6i}TU+jN$ oWL@ONO*;FTR)iY;JH@cC_Oc`MBb%7 diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 7a224940f6f1..357251548014 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -279,7 +279,11 @@ #define FIRST_DECORATION_SPRITE_GFX OBJ_EVENT_GFX_PICHU_DOLL +// Special object event local ids #define OBJ_EVENT_ID_PLAYER 0xFF #define OBJ_EVENT_ID_CAMERA 0x7F +// Object event local ids referenced in C files +#define LOCALID_ROUTE111_PLAYER_FALLING 45 + #endif // GUARD_CONSTANTS_EVENT_OBJECTS_H diff --git a/src/mirage_tower.c b/src/mirage_tower.c index d18ddcc0fb64..9f91dff50b06 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -14,12 +14,14 @@ #include "sprite.h" #include "task.h" #include "window.h" +#include "constants/event_objects.h" #include "constants/maps.h" #include "constants/rgb.h" #include "constants/songs.h" #include "constants/metatile_labels.h" -struct MirageTowerPulseBlend { +struct MirageTowerPulseBlend +{ u8 taskId; struct PulseBlend pulseBlend; }; @@ -37,59 +39,51 @@ struct BgRegOffsets u16 bgVOFS; }; -struct Struct203CF10 +struct FallAnim_Tower { - u8 *buffer; - u8 currIndex; + u8 *disintegrateRand; + u8 disintegrateIdx; }; -struct DynamicSpriteFrameImage -{ - u8 *data; - u16 size; -}; - -struct Struct203CF0C +struct FallAnim_Fossil { u8 *frameImageTiles; - struct DynamicSpriteFrameImage *frameImage; + struct SpriteFrameImage *frameImage; u8 spriteId; - u16 *unkC; - u16 unk10; + u16 *disintegrateRand; + u16 disintegrateIdx; }; +#define TAG_CEILING_CRUMBLE 4000 + #define MIRAGE_TOWER_GFX_LENGTH (sizeof(sBlankTile_Gfx) + sizeof(sMirageTower_Gfx)) -#define ROOT_FOSSIL_GFX_LENGTH sizeof(sRootFossil_Gfx) -#define ROOT_FOSSIL_GFX_RANDOMIZER_LENGTH 0x100 +#define FOSSIL_DISINTEGRATE_LENGTH 0x100 -// extern data -extern const struct SpriteSheet gMirageTowerCeilingCrumbleSpriteSheets[]; -extern const s16 sCeilingCrumblePositions[][3]; +static const struct SpriteSheet sCeilingCrumbleSpriteSheets[]; +static const s16 sCeilingCrumblePositions[][3]; -// static functions -static void PlayerDescendMirageTower(u8 taskId); -static void DoScreenShake(u8 taskId); +static void PlayerDescendMirageTower(u8); +static void DoScreenShake(u8); static void IncrementCeilingCrumbleFinishedCount(void); -static void WaitCeilingCrumble(u8 taskId); -static void FinishCeilingCrumbleTask(u8 taskId); +static void WaitCeilingCrumble(u8); +static void FinishCeilingCrumbleTask(u8); static void CreateCeilingCrumbleSprites(void); -static void MoveCeilingCrumbleSprite(struct Sprite* sprite); -static void DoMirageTowerDisintegration(u8 taskId); -static void InitMirageTowerShake(u8 taskId); -static void DoFossilFallAndSink(u8 taskId); -static void sub_81BF248(struct Sprite *); -static void sub_81BF2B8(u8* a, u16 b, u8 c, u8 d, u8 e); - -// rodata +static void SpriteCB_CeilingCrumble(struct Sprite*); +static void DoMirageTowerDisintegration(u8); +static void InitMirageTowerShake(u8); +static void Task_FossilFallAndSink(u8); +static void SpriteCB_FallingFossil(struct Sprite *); +static void UpdateDisintegrationEffect(u8*, u16, u8, u8, u8); + static const u8 sBlankTile_Gfx[32] = {0}; static const u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp"); static const u16 sMirageTowerTilemap[] = INCBIN_U16("graphics/misc/mirage_tower.bin"); -static const u16 sRootFossil_Pal[] = INCBIN_U16("graphics/misc/fossil.gbapal"); -static const u8 sRootFossil_Gfx[] = INCBIN_U8("graphics/misc/fossil.4bpp"); +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 static const u8 sMirageTowerCrumbles_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower_crumbles.4bpp"); static const u16 sMirageTowerCrumbles_Palette[] = INCBIN_U16("graphics/misc/mirage_tower_crumbles.gbapal"); -const s16 sCeilingCrumblePositions[][3] = +static const s16 sCeilingCrumblePositions[][3] = { { 0, 10, 65}, { 17, 3, 50}, @@ -101,10 +95,10 @@ const s16 sCeilingCrumblePositions[][3] = {-24, -4, 65}, }; -const struct SpriteSheet gMirageTowerCeilingCrumbleSpriteSheets[] = +static const struct SpriteSheet sCeilingCrumbleSpriteSheets[] = { - {sMirageTowerCrumbles_Gfx, 0x0080, 4000}, - {NULL} + {sMirageTowerCrumbles_Gfx, 0x80, TAG_CEILING_CRUMBLE}, + {} }; static const struct MetatileCoords sInvisibleMirageTowerMetatiles[] = @@ -129,13 +123,13 @@ static const struct MetatileCoords sInvisibleMirageTowerMetatiles[] = {20, 58, METATILE_General_SandPit_Center}, }; -static const union AnimCmd gSpriteAnim_8617DEC[] = +static const union AnimCmd sAnim_FallingFossil[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const struct OamData gOamData_8617DF4 = +static const struct OamData sOamData_FallingFossil = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -152,14 +146,20 @@ static const struct OamData gOamData_8617DF4 = .affineParam = 0, }; -static const union AnimCmd *const gSpriteAnimTable_8617DFC[] = +static const union AnimCmd *const sAnims_FallingFossil[] = { - gSpriteAnim_8617DEC, + sAnim_FallingFossil, }; -static const struct SpriteTemplate gUnknown_08617E00 = +static const struct SpriteTemplate sSpriteTemplate_FallingFossil = { - 0xFFFF, 0xFFFF, &gOamData_8617DF4, gSpriteAnimTable_8617DFC, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &sOamData_FallingFossil, + .anims = sAnims_FallingFossil, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; const struct PulseBlendSettings gMirageTowerPulseBlendSettings = { @@ -174,18 +174,18 @@ const struct PulseBlendSettings gMirageTowerPulseBlendSettings = { .unk7_7 = 1, }; -static const union AnimCmd sCeilingCrumble2AnimCmd[] = +static const union AnimCmd sAnim_CeilingCrumbleSmall[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sCeilingCrumble2AnimCmds[] = +static const union AnimCmd *const sAnims_CeilingCrumbleSmall[] = { - sCeilingCrumble2AnimCmd, + sAnim_CeilingCrumbleSmall, }; -static const struct OamData sCeilingCrumble2OamData = +static const struct OamData sOamData_CeilingCrumbleSmall = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -202,28 +202,28 @@ static const struct OamData sCeilingCrumble2OamData = .affineParam = 0, }; -static const struct SpriteTemplate sCeilingCrumbleSpriteTemplate2 = { - .tileTag = 4000, +static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleSmall = { + .tileTag = TAG_CEILING_CRUMBLE, .paletteTag = 0xFFFF, - .oam = &sCeilingCrumble2OamData, - .anims = sCeilingCrumble2AnimCmds, + .oam = &sOamData_CeilingCrumbleSmall, + .anims = sAnims_CeilingCrumbleSmall, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = MoveCeilingCrumbleSprite + .callback = SpriteCB_CeilingCrumble }; -static const union AnimCmd sCeilingCrumble1AnimCmd[] = +static const union AnimCmd sAnim_CeilingCrumbleLarge[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sCeilingCrumble1AnimCmds[] = +static const union AnimCmd *const sAnims_CeilingCrumbleLarge[] = { - sCeilingCrumble1AnimCmd, + sAnim_CeilingCrumbleLarge, }; -static const struct OamData sCeilingCrumble1OamData = +static const struct OamData sOamData_CeilingCrumbleLarge = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -240,24 +240,26 @@ static const struct OamData sCeilingCrumble1OamData = .affineParam = 0, }; -static const struct SpriteTemplate sCeilingCrumbleSpriteTemplate1 = { - .tileTag = 4000, +static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleLarge = { + .tileTag = TAG_CEILING_CRUMBLE, .paletteTag = 0xFFFF, - .oam = &sCeilingCrumble1OamData, - .anims = sCeilingCrumble1AnimCmds, + .oam = &sOamData_CeilingCrumbleLarge, + .anims = sAnims_CeilingCrumbleLarge, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = MoveCeilingCrumbleSprite + .callback = SpriteCB_CeilingCrumble }; EWRAM_DATA static u8* sMirageTowerGfxBuffer = NULL; EWRAM_DATA static u8* sMirageTowerTilemapBuffer = NULL; -EWRAM_DATA static struct Struct203CF0C *sUnknown_0203CF0C = NULL; -EWRAM_DATA static struct Struct203CF10 *sUnknown_0203CF10 = NULL; +EWRAM_DATA static struct FallAnim_Fossil *sFallingFossil = NULL; +EWRAM_DATA static struct FallAnim_Tower *sFallingTower = NULL; EWRAM_DATA static struct BgRegOffsets *sBgShakeOffsets = NULL; -EWRAM_DATA struct MirageTowerPulseBlend *sMirageTowerPulseBlend = NULL; +EWRAM_DATA static struct MirageTowerPulseBlend *sMirageTowerPulseBlend = NULL; -static u16 gUnknown_030012A8[8]; +// Holds data about the disintegration effect for Mirage Tower / the unchosen fossil. +// Never read, presumably for debugging +static u16 sDebug_DisintegrationData[8]; bool8 IsMirageTowerVisible(void) { @@ -319,6 +321,7 @@ void SetMirageTowerVisibility(void) if (VarGet(VAR_MIRAGE_TOWER_STATE)) { + // Mirage Tower event has already been completed, hide it FlagClear(FLAG_MIRAGE_TOWER_VISIBLE); return; } @@ -343,32 +346,40 @@ void StartPlayerDescendMirageTower(void) CreateTask(PlayerDescendMirageTower, 8); } +// As the tower disintegrates, a duplicate object event of the player +// is created at the top of the tower and moved down to show the player falling static void PlayerDescendMirageTower(u8 taskId) { u8 objectEventId; - struct ObjectEvent *fakePlayerObjectEvent; - struct ObjectEvent *playerObjectEvent; - - TryGetObjectEventIdByLocalIdAndMap(45, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); - fakePlayerObjectEvent = &gObjectEvents[objectEventId]; - gSprites[fakePlayerObjectEvent->spriteId].pos2.y += 4; - playerObjectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; - if ((gSprites[fakePlayerObjectEvent->spriteId].pos1.y + gSprites[fakePlayerObjectEvent->spriteId].pos2.y) >= - (gSprites[playerObjectEvent->spriteId].pos1.y + gSprites[playerObjectEvent->spriteId].pos2.y)) + struct ObjectEvent *fallingPlayer; + struct ObjectEvent *player; + + TryGetObjectEventIdByLocalIdAndMap(LOCALID_ROUTE111_PLAYER_FALLING, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); + fallingPlayer = &gObjectEvents[objectEventId]; + gSprites[fallingPlayer->spriteId].pos2.y += 4; + player = &gObjectEvents[gPlayerAvatar.objectEventId]; + if ((gSprites[fallingPlayer->spriteId].pos1.y + gSprites[fallingPlayer->spriteId].pos2.y) >= + (gSprites[player->spriteId].pos1.y + gSprites[player->spriteId].pos2.y)) { DestroyTask(taskId); EnableBothScriptContexts(); } } +#define tXShakeOffset data[0] +#define tTimer data[1] +#define tNumShakes data[2] +#define tShakeDelay data[3] +#define tYShakeOffset data[4] + static void StartScreenShake(u8 yShakeOffset, u8 xShakeOffset, u8 numShakes, u8 shakeDelay) { u8 taskId = CreateTask(DoScreenShake, 9); - gTasks[taskId].data[0] = xShakeOffset; - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = numShakes; - gTasks[taskId].data[3] = shakeDelay; - gTasks[taskId].data[4] = yShakeOffset; + gTasks[taskId].tXShakeOffset = xShakeOffset; + gTasks[taskId].tTimer = 0; + gTasks[taskId].tNumShakes = numShakes; + gTasks[taskId].tShakeDelay = shakeDelay; + gTasks[taskId].tYShakeOffset = yShakeOffset; SetCameraPanningCallback(NULL); PlaySE(SE_M_STRENGTH); } @@ -378,15 +389,15 @@ static void DoScreenShake(u8 taskId) s16 *data; data = gTasks[taskId].data; - data[1]++; - if (data[1] % data[3] == 0) + tTimer++; + if (tTimer % tShakeDelay == 0) { - data[1] = 0; - data[2]--; - data[0] = -data[0]; - data[4] = -data[4]; - SetCameraPanning(data[0], data[4]); - if (data[2] == 0) + tTimer = 0; + tNumShakes--; + tXShakeOffset = -tXShakeOffset; + tYShakeOffset = -tYShakeOffset; + SetCameraPanning(tXShakeOffset, tYShakeOffset); + if (tNumShakes == 0) { IncrementCeilingCrumbleFinishedCount(); DestroyTask(taskId); @@ -395,6 +406,12 @@ static void DoScreenShake(u8 taskId) } } +#undef tXShakeOffset +#undef tTimer +#undef tNumShakes +#undef tShakeDelay +#undef tYShakeOffset + static void IncrementCeilingCrumbleFinishedCount(void) { u8 taskId = FindTaskIdByFunc(WaitCeilingCrumble); @@ -404,7 +421,7 @@ static void IncrementCeilingCrumbleFinishedCount(void) void DoMirageTowerCeilingCrumble(void) { - LoadSpriteSheets(gMirageTowerCeilingCrumbleSpriteSheets); + LoadSpriteSheets(sCeilingCrumbleSpriteSheets); CreateCeilingCrumbleSprites(); CreateTask(WaitCeilingCrumble, 8); StartScreenShake(2, 1, 16, 3); @@ -421,7 +438,7 @@ static void WaitCeilingCrumble(u8 taskId) static void FinishCeilingCrumbleTask(u8 taskId) { - FreeSpriteTilesByTag(4000); + FreeSpriteTilesByTag(TAG_CEILING_CRUMBLE); DestroyTask(taskId); EnableBothScriptContexts(); } @@ -433,21 +450,21 @@ static void CreateCeilingCrumbleSprites(void) for (i = 0; i < 8; i++) { - spriteId = CreateSprite(&sCeilingCrumbleSpriteTemplate1, sCeilingCrumblePositions[i][0] + 120, sCeilingCrumblePositions[i][1], 8); + 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; } for (i = 0; i < 8; i++) { - spriteId = CreateSprite(&sCeilingCrumbleSpriteTemplate2, sCeilingCrumblePositions[i][0] + 115, sCeilingCrumblePositions[i][1] - 3, 8); + 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; } } -static void MoveCeilingCrumbleSprite(struct Sprite* sprite) +static void SpriteCB_CeilingCrumble(struct Sprite* sprite) { sprite->data[1] += 2; sprite->pos2.y = sprite->data[1] / 2; @@ -478,7 +495,7 @@ void StartMirageTowerShake(void) void StartMirageTowerFossilFallAndSink(void) { - CreateTask(DoFossilFallAndSink, 9); + CreateTask(Task_FossilFallAndSink, 9); } static void SetBgShakeOffsets(void) @@ -501,42 +518,44 @@ static void UpdateBgShake(u8 taskId) } } +#define tState data[0] + static void InitMirageTowerShake(u8 taskId) { u8 zero; - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: FreeAllWindowBuffers(); SetBgAttribute(0, BG_ATTR_PRIORITY, 2); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 1: sMirageTowerGfxBuffer = (u8 *)AllocZeroed(MIRAGE_TOWER_GFX_LENGTH); sMirageTowerTilemapBuffer = (u8 *)AllocZeroed(BG_SCREEN_SIZE); ChangeBgX(0, 0, 0); ChangeBgY(0, 0, 0); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 2: CpuSet(sBlankTile_Gfx, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH / 2); LoadBgTiles(0, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH, 0); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 3: SetBgTilemapBuffer(0, sMirageTowerTilemapBuffer); CopyToBgTilemapBufferRect_ChangePalette(0, &sMirageTowerTilemap, 12, 29, 6, 12, 17); CopyBgTilemapBufferToVram(0); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 4: ShowBg(0); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 5: SetInvisibleMirageTowerMetatiles(); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 6: sBgShakeOffsets = Alloc(sizeof(*sBgShakeOffsets)); @@ -558,27 +577,29 @@ static void DoMirageTowerDisintegration(u8 taskId) u16 i; u8 index; - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 1: - sUnknown_0203CF10 = AllocZeroed(OUTER_BUFFER_LENGTH * sizeof(struct Struct203CF10)); + sFallingTower = AllocZeroed(OUTER_BUFFER_LENGTH * sizeof(struct FallAnim_Tower)); break; case 3: if (gTasks[taskId].data[3] <= (OUTER_BUFFER_LENGTH - 1)) { if (gTasks[taskId].data[1] > 1) { + // Initialize disintegration pattern index = gTasks[taskId].data[3]; - sUnknown_0203CF10[index].buffer = Alloc(INNER_BUFFER_LENGTH); + sFallingTower[index].disintegrateRand = Alloc(INNER_BUFFER_LENGTH); for (i = 0; i <= (INNER_BUFFER_LENGTH - 1); i++) - sUnknown_0203CF10[index].buffer[i] = i; + sFallingTower[index].disintegrateRand[i] = i; + + // Randomize disintegration pattern for (i = 0; i <= (INNER_BUFFER_LENGTH - 1); i++) { u16 rand1, rand2, temp; - - rand1 = Random() % 0x30; - rand2 = Random() % 0x30; - SWAP(sUnknown_0203CF10[index].buffer[rand2], sUnknown_0203CF10[index].buffer[rand1], temp); + rand1 = Random() % INNER_BUFFER_LENGTH; + rand2 = Random() % INNER_BUFFER_LENGTH; + SWAP(sFallingTower[index].disintegrateRand[rand2], sFallingTower[index].disintegrateRand[rand1], temp); } if (gTasks[taskId].data[3] <= (OUTER_BUFFER_LENGTH - 1)) gTasks[taskId].data[3]++; @@ -591,20 +612,20 @@ static void DoMirageTowerDisintegration(u8 taskId) { for (j = 0; j < 1; j++) { - sub_81BF2B8(sMirageTowerGfxBuffer, - ((((OUTER_BUFFER_LENGTH - 1) - i) * INNER_BUFFER_LENGTH) + sUnknown_0203CF10[i].buffer[(sUnknown_0203CF10[i].currIndex)++]), + UpdateDisintegrationEffect(sMirageTowerGfxBuffer, + (OUTER_BUFFER_LENGTH - 1 - i) * INNER_BUFFER_LENGTH + sFallingTower[i].disintegrateRand[sFallingTower[i].disintegrateIdx++], 0, INNER_BUFFER_LENGTH, 1); } - if (sUnknown_0203CF10[i].currIndex > (INNER_BUFFER_LENGTH - 1)) + if (sFallingTower[i].disintegrateIdx > (INNER_BUFFER_LENGTH - 1)) { - FREE_AND_SET_NULL(sUnknown_0203CF10[i].buffer); + FREE_AND_SET_NULL(sFallingTower[i].disintegrateRand); gTasks[taskId].data[2]++; if ((i % 2) == 1) sBgShakeOffsets->bgVOFS--; } } LoadBgTiles(0, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH, 0); - if (sUnknown_0203CF10[OUTER_BUFFER_LENGTH - 1].currIndex > (INNER_BUFFER_LENGTH - 1)) + if (sFallingTower[OUTER_BUFFER_LENGTH - 1].disintegrateIdx > INNER_BUFFER_LENGTH - 1) break; return; case 4: @@ -617,7 +638,7 @@ static void DoMirageTowerDisintegration(u8 taskId) break; case 5: FREE_AND_SET_NULL(sBgShakeOffsets); - FREE_AND_SET_NULL(sUnknown_0203CF10); + FREE_AND_SET_NULL(sFallingTower); FREE_AND_SET_NULL(sMirageTowerGfxBuffer); FREE_AND_SET_NULL(sMirageTowerTilemapBuffer); break; @@ -635,127 +656,128 @@ static void DoMirageTowerDisintegration(u8 taskId) EnableBothScriptContexts(); break; } - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; } -static void DoFossilFallAndSink(u8 taskId) +static void Task_FossilFallAndSink(u8 taskId) { u16 i; u8 *buffer; - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 1: - sUnknown_0203CF0C = AllocZeroed(sizeof(*sUnknown_0203CF0C)); - sUnknown_0203CF0C->frameImageTiles = AllocZeroed(ROOT_FOSSIL_GFX_LENGTH); - sUnknown_0203CF0C->frameImage = AllocZeroed(sizeof(*sUnknown_0203CF0C->frameImage)); - sUnknown_0203CF0C->unkC = AllocZeroed(ROOT_FOSSIL_GFX_RANDOMIZER_LENGTH * sizeof(u16)); - sUnknown_0203CF0C->unk10 = 0; + sFallingFossil = AllocZeroed(sizeof(*sFallingFossil)); + sFallingFossil->frameImageTiles = AllocZeroed(sizeof(sFossil_Gfx)); + sFallingFossil->frameImage = AllocZeroed(sizeof(*sFallingFossil->frameImage)); + sFallingFossil->disintegrateRand = AllocZeroed(FOSSIL_DISINTEGRATE_LENGTH * sizeof(u16)); + sFallingFossil->disintegrateIdx = 0; break; case 2: - buffer = sUnknown_0203CF0C->frameImageTiles; - for (i = 0; i < ROOT_FOSSIL_GFX_LENGTH; i++, buffer++) - *buffer = sRootFossil_Gfx[i]; + buffer = sFallingFossil->frameImageTiles; + for (i = 0; i < sizeof(sFossil_Gfx); i++, buffer++) + *buffer = sFossil_Gfx[i]; break; case 3: - sUnknown_0203CF0C->frameImage->data = sUnknown_0203CF0C->frameImageTiles; - sUnknown_0203CF0C->frameImage->size = ROOT_FOSSIL_GFX_LENGTH; + sFallingFossil->frameImage->data = sFallingFossil->frameImageTiles; + sFallingFossil->frameImage->size = sizeof(sFossil_Gfx); break; case 4: { - struct SpriteTemplate fossilTemplate; - - fossilTemplate = gUnknown_08617E00; - fossilTemplate.images = (struct SpriteFrameImage *)(sUnknown_0203CF0C->frameImage); - sUnknown_0203CF0C->spriteId = CreateSprite(&fossilTemplate, 128, -16, 1); - gSprites[sUnknown_0203CF0C->spriteId].centerToCornerVecX = 0; - gSprites[sUnknown_0203CF0C->spriteId].data[0] = gSprites[sUnknown_0203CF0C->spriteId].pos1.x; - gSprites[sUnknown_0203CF0C->spriteId].data[1] = 1; + struct SpriteTemplate fossilTemplate = sSpriteTemplate_FallingFossil; + fossilTemplate.images = sFallingFossil->frameImage; + sFallingFossil->spriteId = CreateSprite(&fossilTemplate, 128, -16, 1); + gSprites[sFallingFossil->spriteId].centerToCornerVecX = 0; + gSprites[sFallingFossil->spriteId].data[0] = gSprites[sFallingFossil->spriteId].pos1.x; + gSprites[sFallingFossil->spriteId].data[1] = 1; } case 5: - for (i = 0; i < ROOT_FOSSIL_GFX_RANDOMIZER_LENGTH; i++) - sUnknown_0203CF0C->unkC[i] = i; + // Initialize disintegration pattern + for (i = 0; i < FOSSIL_DISINTEGRATE_LENGTH; i++) + sFallingFossil->disintegrateRand[i] = i; break; case 6: - for (i = 0; i < (ROOT_FOSSIL_GFX_RANDOMIZER_LENGTH * sizeof(u16)); i++) + // Randomize disintegration pattern + for (i = 0; i < FOSSIL_DISINTEGRATE_LENGTH * sizeof(u16); i++) { u16 rand1, rand2, temp; - - rand1 = Random() % 0x100; - rand2 = Random() % 0x100; - SWAP(sUnknown_0203CF0C->unkC[rand2], sUnknown_0203CF0C->unkC[rand1], temp); + rand1 = Random() % FOSSIL_DISINTEGRATE_LENGTH; + rand2 = Random() % FOSSIL_DISINTEGRATE_LENGTH; + SWAP(sFallingFossil->disintegrateRand[rand2], sFallingFossil->disintegrateRand[rand1], temp); } - gSprites[sUnknown_0203CF0C->spriteId].callback = sub_81BF248; + gSprites[sFallingFossil->spriteId].callback = SpriteCB_FallingFossil; break; case 7: - if (gSprites[sUnknown_0203CF0C->spriteId].callback != SpriteCallbackDummy) + // Wait for fossil to finish falling / disintegrating + if (gSprites[sFallingFossil->spriteId].callback != SpriteCallbackDummy) return; - DestroySprite(&gSprites[sUnknown_0203CF0C->spriteId]); - FREE_AND_SET_NULL(sUnknown_0203CF0C->unkC);; - FREE_AND_SET_NULL(sUnknown_0203CF0C->frameImage); - FREE_AND_SET_NULL(sUnknown_0203CF0C->frameImageTiles); - FREE_AND_SET_NULL(sUnknown_0203CF0C); + DestroySprite(&gSprites[sFallingFossil->spriteId]); + FREE_AND_SET_NULL(sFallingFossil->disintegrateRand);; + FREE_AND_SET_NULL(sFallingFossil->frameImage); + FREE_AND_SET_NULL(sFallingFossil->frameImageTiles); + FREE_AND_SET_NULL(sFallingFossil); break; case 8: EnableBothScriptContexts(); break; } - - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; } -static void sub_81BF248(struct Sprite *sprite) +static void SpriteCB_FallingFossil(struct Sprite *sprite) { - if (sUnknown_0203CF0C->unk10 >= (ROOT_FOSSIL_GFX_RANDOMIZER_LENGTH)) + if (sFallingFossil->disintegrateIdx >= FOSSIL_DISINTEGRATE_LENGTH) { + // End animation sprite->callback = SpriteCallbackDummy; } else if (sprite->pos1.y >= 96) { + // Fossil has reached the ground, update disintegration animation u8 i; for (i = 0; i < 2; i++) - sub_81BF2B8(sUnknown_0203CF0C->frameImageTiles, sUnknown_0203CF0C->unkC[sUnknown_0203CF0C->unk10++], 0, 16, 0); + UpdateDisintegrationEffect(sFallingFossil->frameImageTiles, sFallingFossil->disintegrateRand[sFallingFossil->disintegrateIdx++], 0, 16, 0); StartSpriteAnim(sprite, 0); } else { + // Fossil is still falling sprite->pos1.y++; } } -static void sub_81BF2B8(u8* a, u16 b, u8 c, u8 d, u8 e) +static void UpdateDisintegrationEffect(u8* tiles, u16 randId, u8 c, u8 size, u8 offset) { - u8 r5, r4, r0, r2; - u16 var, var2; - u8 r2_1, r4_1; - u8 b2, c2; + u8 heightTiles, height, widthTiles, width; + u16 var, baseOffset; + u8 col, row; + u8 flag, tileMask; - r4 = b / d; - gUnknown_030012A8[0] = r4; + height = randId / size; + sDebug_DisintegrationData[0] = height; - r2 = b % d; - gUnknown_030012A8[1] = r2; + width = randId % size; + sDebug_DisintegrationData[1] = width; - r4_1 = r4 & 7; - r2_1 = r2 & 7; - gUnknown_030012A8[2] = r4 & 7; //should be using r4_1, but that doesn't match - gUnknown_030012A8[3] = r2 & 7; //" - - r0 = r2 / 8; - r5 = r4 / 8; + row = height & 7; + col = width & 7; + sDebug_DisintegrationData[2] = height & 7; + sDebug_DisintegrationData[3] = width & 7; - gUnknown_030012A8[4] = r2 / 8; //should be using r0, but that doesn't match - gUnknown_030012A8[5] = r4 / 8; //should be using r5, but that doesn't match + widthTiles = width / 8; + heightTiles = height / 8; + sDebug_DisintegrationData[4] = width / 8; + sDebug_DisintegrationData[5] = height / 8; - var = (d / 8) * (r5 * 64) + (r0 * 64); - gUnknown_030012A8[6] = var; + var = (size / 8) * (heightTiles * 64) + (widthTiles * 64); + sDebug_DisintegrationData[6] = var; - var2 = var + ((r4_1 * 8) + r2_1); - var2 /= 2; - gUnknown_030012A8[7] = var + ((r4_1 * 8) + r2_1); //should be using var2 with var2 being divided afterwards, but that doesn't match + baseOffset = var + ((row * 8) + col); + baseOffset /= 2; + sDebug_DisintegrationData[7] = var + ((row * 8) + col); - b2 = ((b % 2) ^ 1); - c2 = (c << (b2 << 2)) | 15 << (((b2 ^ 1) << 2)); - a[var2 + (e * 32)] &= c2; + flag = ((randId % 2) ^ 1); + tileMask = (c << (flag << 2)) | 15 << (((flag ^ 1) << 2)); + tiles[baseOffset + (offset * 32)] &= tileMask; } From fe89a4d1471413a03c1b24b8d5721b04b20b04ae Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 00:52:36 -0400 Subject: [PATCH 226/762] Label remaining region_map symbols --- include/region_map.h | 2 +- src/pokenav_region_map.c | 4 +++- src/region_map.c | 18 ++++++++++-------- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/include/region_map.h b/include/region_map.h index 97364abd84c9..02d711afa5a9 100644 --- a/include/region_map.h +++ b/include/region_map.h @@ -111,7 +111,7 @@ void PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(s16 x, s16 y); void CB2_OpenFlyMap(void); bool8 IsRegionMapZoomed(void); void TrySetPlayerIconBlink(void); -void sub_8123030(u16 color, u32 coeff); +void BlendRegionMap(u16 color, u32 coeff); void SetRegionMapDataForZoom(void); extern const struct RegionMapLocation gRegionMapEntries[]; diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 2dd2e4408878..3d53bc98abe5 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -327,7 +327,9 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) } else { - sub_8123030(RGB_BLACK, 6); + // Dim the region map when zoom is disabled + // (when the player is off the map) + BlendRegionMap(RGB_BLACK, 6); } return LT_INC_AND_PAUSE; case 2: diff --git a/src/region_map.c b/src/region_map.c index 27e035199872..335323421412 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -71,7 +71,7 @@ static EWRAM_DATA struct { bool8 choseFlyLocation; } *sFlyMap = NULL; -static bool32 gUnknown_03001180; +static bool32 sDrawFlyDestTextWindow; // Static ROM declarations @@ -621,7 +621,7 @@ bool8 LoadRegionMapGfx(void) return TRUE; } -void sub_8123030(u16 color, u32 coeff) +void BlendRegionMap(u16 color, u32 coeff) { BlendPalettes(0x380, coeff, color); CpuCopy16(gPlttBufferFaded + 0x70, gPlttBufferUnfaded + 0x70, 0x60); @@ -1696,7 +1696,7 @@ void CB2_OpenFlyMap(void) CreateRegionMapPlayerIcon(1, 1); sFlyMap->mapSecId = sFlyMap->regionMap.mapSecId; StringFill(sFlyMap->nameBuffer, CHAR_SPACE, MAP_NAME_LENGTH); - gUnknown_03001180 = TRUE; + sDrawFlyDestTextWindow = TRUE; DrawFlyDestTextWindow(); gMain.state++; break; @@ -1782,30 +1782,32 @@ static void DrawFlyDestTextWindow(void) name = sMultiNameFlyDestinations[i].name[sFlyMap->regionMap.posWithinMapSec]; AddTextPrinterParameterized(1, 1, name, GetStringRightAlignXOffset(1, name, 96), 17, 0, NULL); ScheduleBgCopyTilemapToVram(0); - gUnknown_03001180 = TRUE; + sDrawFlyDestTextWindow = TRUE; } break; } } if (!namePrinted) { - if (gUnknown_03001180 == TRUE) + if (sDrawFlyDestTextWindow == TRUE) { ClearStdWindowAndFrameToTransparent(1, FALSE); DrawStdFrameWithCustomTileAndPalette(0, FALSE, 101, 13); } else { + // Window is already drawn, just empty it FillWindowPixelBuffer(0, PIXEL_FILL(1)); } AddTextPrinterParameterized(0, 1, sFlyMap->regionMap.mapSecName, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); - gUnknown_03001180 = FALSE; + sDrawFlyDestTextWindow = FALSE; } } else { - if (gUnknown_03001180 == TRUE) + // Selection is on MAPSECTYPE_NONE, draw empty fly destination text window + if (sDrawFlyDestTextWindow == TRUE) { ClearStdWindowAndFrameToTransparent(1, FALSE); DrawStdFrameWithCustomTileAndPalette(0, FALSE, 101, 13); @@ -1813,7 +1815,7 @@ static void DrawFlyDestTextWindow(void) FillWindowPixelBuffer(0, PIXEL_FILL(1)); CopyWindowToVram(0, 2); ScheduleBgCopyTilemapToVram(0); - gUnknown_03001180 = FALSE; + sDrawFlyDestTextWindow = FALSE; } } From d73b3c05c63eb4a5ed73f69edfaadf5666612825 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 01:02:28 -0400 Subject: [PATCH 227/762] Label remaining hall_of_fame symbols --- src/hall_of_fame.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 3eb8d3f0ad61..5746260f3c7e 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -66,13 +66,12 @@ static EWRAM_DATA struct HofGfx *sHofGfxPtr = NULL; extern struct MusicPlayerInfo gMPlayInfo_BGM; -// this file's functions static void ClearVramOamPltt_LoadHofPal(void); static void LoadHofGfx(void); static void InitHofBgs(void); static bool8 CreateHofConfettiSprite(void); static void StartCredits(void); -static bool8 sub_8175024(void); +static bool8 LoadHofBgs(void); static void Task_Hof_InitMonData(u8 taskId); static void Task_Hof_InitTeamSaveData(u8 taskId); static void Task_Hof_SetMonDisplayTask(u8 taskId); @@ -104,7 +103,6 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2); static void Task_DoDomeConfetti(u8 taskId); static void SpriteCB_HofConfetti(struct Sprite* sprite); -// const rom data static const struct BgTemplate sHof_BgTemplates[] = { { @@ -136,12 +134,19 @@ static const struct BgTemplate sHof_BgTemplates[] = }, }; -static const struct WindowTemplate sHof_WindowTemplate = {0, 2, 2, 0xE, 6, 0xE, 1}; +static const struct WindowTemplate sHof_WindowTemplate = { + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 2, + .width = 14, + .height = 6, + .paletteNum = 14, + .baseBlock = 1 +}; static const u8 sMonInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}; static const u8 sPlayerInfoTextColors[4] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; - -static const u8 sUnused_085E538C[] = {4, 5, 0, 0}; +static const u8 sUnusedTextColors[4] = {TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_TRANSPARENT}; static const struct CompressedSpriteSheet sSpriteSheet_Confetti[] = { @@ -383,7 +388,7 @@ static bool8 InitHallOfFameScreen(void) gMain.state++; break; case 3: - if (!sub_8175024()) + if (!LoadHofBgs()) { SetVBlankCallback(VBlankCB_HallOfFame); BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); @@ -819,7 +824,7 @@ void CB2_DoHallOfFamePC(void) gMain.state++; break; case 3: - if (!sub_8175024()) + if (!LoadHofBgs()) { struct HallofFameTeam *fameTeam = (struct HallofFameTeam*)(gDecompressionBuffer); fameTeam->mon[0] = sDummyFameMon; @@ -1301,7 +1306,7 @@ static void InitHofBgs(void) ChangeBgY(3, 0, 0); } -static bool8 sub_8175024(void) +static bool8 LoadHofBgs(void) { switch (sHofGfxPtr->state) { From 8f43d1ebebfec0dd021fb2476d39979c2a77ce3c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 01:45:23 -0400 Subject: [PATCH 228/762] Document smart shopper TV show --- data/text/tv.inc | 26 +++++------ include/constants/tv.h | 15 +++++++ include/event_scripts.h | 26 +++++------ src/tv.c | 99 ++++++++++++++++++++++------------------- 4 files changed, 94 insertions(+), 72 deletions(-) diff --git a/data/text/tv.inc b/data/text/tv.inc index 287ce7f00f40..311f2ddd2b49 100644 --- a/data/text/tv.inc +++ b/data/text/tv.inc @@ -1027,7 +1027,7 @@ gTVPokemonTodaySuccessfulText11:: @ 08283A5F .string "BIG BRO: Remember, it could be your\n" .string "POKéMON in the spotlight next time!$" -gTVTodaysSmartShopperText00:: @ 08283B05 +SmartShopper_Text_Intro:: @ 08283B05 .string "Hello!\p" .string "It's time for TODAY'S SMART SHOPPER.\p" .string "INTERVIEWER: How are you, viewers?\p" @@ -1036,7 +1036,7 @@ gTVTodaysSmartShopperText00:: @ 08283B05 .string "Let's check on what the hot sellers\n" .string "have been recently.$" -gTVTodaysSmartShopperText01:: @ 08283BAF +SmartShopper_Text_ClerkNormal:: @ 08283BAF .string "Let's interview the clerk to get the\n" .string "lowdown.\p" .string "Hi, how's your business?\p" @@ -1046,7 +1046,7 @@ gTVTodaysSmartShopperText01:: @ 08283BAF .string "Why, just the other day a TRAINER\n" .string "named {STR_VAR_1} bought {STR_VAR_3}.$" -gTVTodaysSmartShopperText02:: @ 08283C81 +SmartShopper_Text_RandomComment1:: @ 08283C81 .string "INTERVIEWER: The TRAINER bought\n" .string "{STR_VAR_3} {STR_VAR_2}S? That's a haul!\p" .string "If I may say so, {STR_VAR_1} must have\n" @@ -1055,13 +1055,13 @@ gTVTodaysSmartShopperText02:: @ 08283C81 .string "For traveling, {STR_VAR_2}S are so\n" .string "important!$" -gTVTodaysSmartShopperText03:: @ 08283D32 +SmartShopper_Text_RandomComment2:: @ 08283D32 .string "INTERVIEWER: Speaking of the item\n" .string "{STR_VAR_2}, I just bought {STR_VAR_3} of\l" .string "them recently.\p" .string "After all, {STR_VAR_2}'s a great item!$" -gTVTodaysSmartShopperText04:: @ 08283D99 +SmartShopper_Text_RandomComment3:: @ 08283D99 .string "INTERVIEWER: {STR_VAR_2}?!\n" .string "But {STR_VAR_3} of them?!\p" .string "I didn't think there would be anyone\n" @@ -1069,7 +1069,7 @@ gTVTodaysSmartShopperText04:: @ 08283D99 .string "My goodness, I can only afford one or\n" .string "two at a time…$" -gTVTodaysSmartShopperText05:: @ 08283E28 +SmartShopper_Text_RandomComment4:: @ 08283E28 .string "INTERVIEWER: One time, I bought\n" .string "a whole lot of the item {STR_VAR_2}.\p" .string "But it turned out to be too many.\n" @@ -1079,21 +1079,21 @@ gTVTodaysSmartShopperText05:: @ 08283E28 .string "Oops!\p" .string "There's no point talking about me!$" -gTVTodaysSmartShopperText06:: @ 08283F01 +SmartShopper_Text_SecondItem:: @ 08283F01 .string "CLERK: {STR_VAR_1} also bought the item\n" .string "{STR_VAR_2} in bulk, taking {STR_VAR_3}.\p" .string "INTERVIEWER: Oh, that's smart.\n" .string "{STR_VAR_2}'s a very good item, too.$" -gTVTodaysSmartShopperText07:: @ 08283F72 +SmartShopper_Text_ThirdItem:: @ 08283F72 .string "CLERK: And, the TRAINER also bought\n" .string "{STR_VAR_3} of the item {STR_VAR_2}.$" -gTVTodaysSmartShopperText08:: @ 08283FA9 +SmartShopper_Text_DuringSale:: @ 08283FA9 .string "CLERK: Plus, it was during a big sale.\n" .string "That's smart shopping.$" -gTVTodaysSmartShopperText09:: @ 08283FE7 +SmartShopper_Text_OutroNormal:: @ 08283FE7 .string "INTERVIEWER: Hmm… {STR_VAR_1} sounds like\n" .string "quite the shrewd bargain hunter!\p" .string "In total, {STR_VAR_1}'s purchases came to…\p" @@ -1102,11 +1102,11 @@ gTVTodaysSmartShopperText09:: @ 08283FE7 .string "Oops! We're out of time!\n" .string "See you on our next broadcast!$" -gTVTodaysSmartShopperText10:: @ 0828409E +SmartShopper_Text_IsVIP:: @ 0828409E .string "CLERK: {STR_VAR_1} is a VIP customer,\n" .string "no doubt about it.$" -gTVTodaysSmartShopperText11:: @ 082840CE +SmartShopper_Text_ClerkMax:: @ 082840CE .string "Let's interview the clerk to get the\n" .string "lowdown.\p" .string "Hi, how's your business?\p" @@ -1127,7 +1127,7 @@ gTVTodaysSmartShopperText11:: @ 082840CE .string "CLERK: {STR_VAR_1} is a VIP customer,\n" .string "no doubt about it.$" -gTVTodaysSmartShopperText12:: @ 082842E6 +SmartShopper_Text_OutroMax:: @ 082842E6 .string "INTERVIEWER: Hmm…\n" .string "That is amazing.\p" .string "But why would the TRAINER need to buy\n" diff --git a/include/constants/tv.h b/include/constants/tv.h index 1b28f6e6ed1a..095a6ddca733 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -249,6 +249,21 @@ #define CONTESTLADYLIVE_STATE_LOST 2 #define CONTESTLADYLIVE_STATE_LOST_BADLY 3 +// TV Show states for Smart Shopper +#define SMARTSHOPPER_STATE_INTRO 0 +#define SMARTSHOPPER_STATE_CLERK_NORMAL 1 +#define SMARTSHOPPER_STATE_RAND_COMMENT_1 2 +#define SMARTSHOPPER_STATE_RAND_COMMENT_2 3 +#define SMARTSHOPPER_STATE_RAND_COMMENT_3 4 +#define SMARTSHOPPER_STATE_RAND_COMMENT_4 5 +#define SMARTSHOPPER_STATE_SECOND_ITEM 6 +#define SMARTSHOPPER_STATE_THIRD_ITEM 7 +#define SMARTSHOPPER_STATE_DURING_SALE 8 +#define SMARTSHOPPER_STATE_OUTRO_NORMAL 9 +#define SMARTSHOPPER_STATE_IS_VIP 10 +#define SMARTSHOPPER_STATE_CLERK_MAX 11 +#define SMARTSHOPPER_STATE_OUTRO_MAX 12 + #define SMARTSHOPPER_NUM_ITEMS 3 #endif //GUARD_CONSTANTS_TV_H diff --git a/include/event_scripts.h b/include/event_scripts.h index 925b4389d3e0..3340da6f57f0 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -108,19 +108,19 @@ extern const u8 gTVPokemonTodaySuccessfulText08[]; extern const u8 gTVPokemonTodaySuccessfulText09[]; extern const u8 gTVPokemonTodaySuccessfulText10[]; extern const u8 gTVPokemonTodaySuccessfulText11[]; -extern const u8 gTVTodaysSmartShopperText00[]; -extern const u8 gTVTodaysSmartShopperText01[]; -extern const u8 gTVTodaysSmartShopperText02[]; -extern const u8 gTVTodaysSmartShopperText03[]; -extern const u8 gTVTodaysSmartShopperText04[]; -extern const u8 gTVTodaysSmartShopperText05[]; -extern const u8 gTVTodaysSmartShopperText06[]; -extern const u8 gTVTodaysSmartShopperText07[]; -extern const u8 gTVTodaysSmartShopperText08[]; -extern const u8 gTVTodaysSmartShopperText09[]; -extern const u8 gTVTodaysSmartShopperText10[]; -extern const u8 gTVTodaysSmartShopperText11[]; -extern const u8 gTVTodaysSmartShopperText12[]; +extern const u8 SmartShopper_Text_Intro[]; +extern const u8 SmartShopper_Text_ClerkNormal[]; +extern const u8 SmartShopper_Text_RandomComment1[]; +extern const u8 SmartShopper_Text_RandomComment2[]; +extern const u8 SmartShopper_Text_RandomComment3[]; +extern const u8 SmartShopper_Text_RandomComment4[]; +extern const u8 SmartShopper_Text_SecondItem[]; +extern const u8 SmartShopper_Text_ThirdItem[]; +extern const u8 SmartShopper_Text_DuringSale[]; +extern const u8 SmartShopper_Text_OutroNormal[]; +extern const u8 SmartShopper_Text_IsVIP[]; +extern const u8 SmartShopper_Text_ClerkMax[]; +extern const u8 SmartShopper_Text_OutroMax[]; extern const u8 gTVWorldOfMastersText00[]; extern const u8 gTVWorldOfMastersText01[]; extern const u8 gTVWorldOfMastersText02[]; diff --git a/src/tv.c b/src/tv.c index 50adde3f439a..b7b490aa32ac 100644 --- a/src/tv.c +++ b/src/tv.c @@ -335,19 +335,19 @@ static const u8 *const sTVPokemonTodaySuccessfulTextGroup[] = { }; static const u8 *const sTVTodaysSmartShopperTextGroup[] = { - gTVTodaysSmartShopperText00, - gTVTodaysSmartShopperText01, - gTVTodaysSmartShopperText02, - gTVTodaysSmartShopperText03, - gTVTodaysSmartShopperText04, - gTVTodaysSmartShopperText05, - gTVTodaysSmartShopperText06, - gTVTodaysSmartShopperText07, - gTVTodaysSmartShopperText08, - gTVTodaysSmartShopperText09, - gTVTodaysSmartShopperText10, - gTVTodaysSmartShopperText11, - gTVTodaysSmartShopperText12 + [SMARTSHOPPER_STATE_INTRO] = SmartShopper_Text_Intro, + [SMARTSHOPPER_STATE_CLERK_NORMAL] = SmartShopper_Text_ClerkNormal, + [SMARTSHOPPER_STATE_RAND_COMMENT_1] = SmartShopper_Text_RandomComment1, + [SMARTSHOPPER_STATE_RAND_COMMENT_2] = SmartShopper_Text_RandomComment2, + [SMARTSHOPPER_STATE_RAND_COMMENT_3] = SmartShopper_Text_RandomComment3, + [SMARTSHOPPER_STATE_RAND_COMMENT_4] = SmartShopper_Text_RandomComment4, + [SMARTSHOPPER_STATE_SECOND_ITEM] = SmartShopper_Text_SecondItem, + [SMARTSHOPPER_STATE_THIRD_ITEM] = SmartShopper_Text_ThirdItem, + [SMARTSHOPPER_STATE_DURING_SALE] = SmartShopper_Text_DuringSale, + [SMARTSHOPPER_STATE_OUTRO_NORMAL] = SmartShopper_Text_OutroNormal, + [SMARTSHOPPER_STATE_IS_VIP] = SmartShopper_Text_IsVIP, + [SMARTSHOPPER_STATE_CLERK_MAX] = SmartShopper_Text_ClerkMax, + [SMARTSHOPPER_STATE_OUTRO_MAX] = SmartShopper_Text_OutroMax }; static const u8 *const sTVBravoTrainerTextGroup[] = { @@ -2785,7 +2785,7 @@ size_t CountDigits(int value) return 1; } -static void sub_80EF40C(u8 varIdx, TVShow *show) +static void SmartShopper_BufferPurchaseTotal(u8 varIdx, TVShow *show) { u8 i; int price; @@ -4460,78 +4460,85 @@ static void DoTVShowTodaysSmartShopper(void) state = sTVShowState; switch(state) { - case 0: + case SMARTSHOPPER_STATE_INTRO: TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); GetMapName(gStringVar2, show->smartshopperShow.shopLocation, 0); if (show->smartshopperShow.itemAmounts[0] >= 255) - sTVShowState = 11; + sTVShowState = SMARTSHOPPER_STATE_CLERK_MAX; else - sTVShowState = 1; + sTVShowState = SMARTSHOPPER_STATE_CLERK_NORMAL; break; - case 1: + case SMARTSHOPPER_STATE_CLERK_NORMAL: TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0])); ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[0]); - sTVShowState += 1 + (Random() % 4); + // 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)); break; - case 2: - case 4: - case 5: + case SMARTSHOPPER_STATE_RAND_COMMENT_1: + case SMARTSHOPPER_STATE_RAND_COMMENT_3: + case SMARTSHOPPER_STATE_RAND_COMMENT_4: if (show->smartshopperShow.itemIds[1] != ITEM_NONE) - sTVShowState = 6; + sTVShowState = SMARTSHOPPER_STATE_SECOND_ITEM; else - sTVShowState = 10; + sTVShowState = SMARTSHOPPER_STATE_IS_VIP; break; - case 3: + case SMARTSHOPPER_STATE_RAND_COMMENT_2: ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[0] + 1); if (show->smartshopperShow.itemIds[1] != ITEM_NONE) - sTVShowState = 6; + sTVShowState = SMARTSHOPPER_STATE_SECOND_ITEM; else - sTVShowState = 10; + sTVShowState = SMARTSHOPPER_STATE_IS_VIP; break; - case 6: + case SMARTSHOPPER_STATE_SECOND_ITEM: + // Clerk describes 2nd type of item player purchased StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[1])); ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[1]); if (show->smartshopperShow.itemIds[2] != ITEM_NONE) - sTVShowState = 7; + sTVShowState = SMARTSHOPPER_STATE_THIRD_ITEM; else if (show->smartshopperShow.priceReduced == TRUE) - sTVShowState = 8; + sTVShowState = SMARTSHOPPER_STATE_DURING_SALE; else - sTVShowState = 9; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_NORMAL; break; - case 7: + case SMARTSHOPPER_STATE_THIRD_ITEM: + // Clerk describes 3rd type of item player purchased StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[2])); ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[2]); if (show->smartshopperShow.priceReduced == TRUE) - sTVShowState = 8; + sTVShowState = SMARTSHOPPER_STATE_DURING_SALE; else - sTVShowState = 9; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_NORMAL; break; - case 8: + case SMARTSHOPPER_STATE_DURING_SALE: if (show->smartshopperShow.itemAmounts[0] >= 255) - sTVShowState = 12; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_MAX; else - sTVShowState = 9; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_NORMAL; break; - case 9: - sub_80EF40C(1, show); + case SMARTSHOPPER_STATE_OUTRO_NORMAL: + SmartShopper_BufferPurchaseTotal(1, show); TVShowDone(); break; - case 10: + case SMARTSHOPPER_STATE_IS_VIP: + // Clerk says customer is a VIP + // Said if player only purchased one type of item if (show->smartshopperShow.priceReduced == TRUE) - sTVShowState = 8; + sTVShowState = SMARTSHOPPER_STATE_DURING_SALE; else - sTVShowState = 9; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_NORMAL; break; - case 11: + 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])); if (show->smartshopperShow.priceReduced == TRUE) - sTVShowState = 8; + sTVShowState = SMARTSHOPPER_STATE_DURING_SALE; else - sTVShowState = 12; + sTVShowState = SMARTSHOPPER_STATE_OUTRO_MAX; break; - case 12: + case SMARTSHOPPER_STATE_OUTRO_MAX: + // Outro comments if player purchased maximum number of 1st item TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language); TVShowDone(); break; From 64d06f4c8fe9710863a370911cc4dd3405992d31 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 02:40:10 -0400 Subject: [PATCH 229/762] Condense battle AI scripts, minor clean up --- data/battle_ai_scripts.s | 255 ++++---------------------------- include/constants/battle_ai.h | 28 ++-- src/battle_ai_script_commands.c | 29 ++-- 3 files changed, 60 insertions(+), 252 deletions(-) diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s index 56be92c5ef28..4867f4261459 100644 --- a/data/battle_ai_scripts.s +++ b/data/battle_ai_scripts.s @@ -7,6 +7,7 @@ #include "constants/hold_effects.h" #include "constants/pokemon.h" .include "asm/macros/battle_ai_script.inc" + .include "constants/constants.inc" .section script_data, "aw", %progbits @@ -17,11 +18,11 @@ gBattleAI_ScriptsTable:: @ 82DBEF8 .4byte AI_CheckViability @ AI_SCRIPT_CHECK_VIABILITY .4byte AI_SetupFirstTurn @ AI_SCRIPT_SETUP_FIRST_TURN .4byte AI_Risky @ AI_SCRIPT_RISKY - .4byte AI_PreferStrongestMove @ AI_SCRIPT_PREFER_STRONGEST_MOVE + .4byte AI_PreferPowerExtremes @ AI_SCRIPT_PREFER_POWER_EXTREMES .4byte AI_PreferBatonPass @ AI_SCRIPT_PREFER_BATON_PASS .4byte AI_DoubleBattle @ AI_SCRIPT_DOUBLE_BATTLE .4byte AI_HPAware @ AI_SCRIPT_HP_AWARE - .4byte AI_Unknown @ AI_SCRIPT_UNKNOWN + .4byte AI_TrySunnyDayStart @ AI_SCRIPT_TRY_SUNNY_DAY_START .4byte AI_Ret .4byte AI_Ret .4byte AI_Ret @@ -50,8 +51,7 @@ AI_CheckBadMove: if_move MOVE_FISSURE, AI_CBM_CheckIfNegatesType if_move MOVE_HORN_DRILL, AI_CBM_CheckIfNegatesType get_how_powerful_move_is - if_equal 0, AI_CheckBadMove_CheckSoundproof - + if_equal MOVE_POWER_OTHER, AI_CheckBadMove_CheckSoundproof AI_CBM_CheckIfNegatesType: @ 82DBF92 if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET @@ -84,11 +84,9 @@ CheckIfWonderGuardCancelsMove: @ 82DBFE4 CheckIfLevitateCancelsGroundMove: @ 82DBFEF get_curr_move_type if_equal_ TYPE_GROUND, Score_Minus10 - AI_CheckBadMove_CheckSoundproof_: @ 82DBFF7 get_how_powerful_move_is - if_equal 0, AI_CheckBadMove_CheckSoundproof - + if_equal MOVE_POWER_OTHER, AI_CheckBadMove_CheckSoundproof @ Pointless check AI_CheckBadMove_CheckSoundproof: @ 82DBFFE get_ability AI_TARGET if_not_equal ABILITY_SOUNDPROOF, AI_CheckBadMove_CheckEffect @@ -101,7 +99,6 @@ AI_CheckBadMove_CheckSoundproof: @ 82DBFFE if_move MOVE_UPROAR, Score_Minus10 if_move MOVE_METAL_SOUND, Score_Minus10 if_move MOVE_GRASS_WHISTLE, Score_Minus10 - AI_CheckBadMove_CheckEffect: @ 82DC045 if_effect EFFECT_SLEEP, AI_CBM_Sleep if_effect EFFECT_EXPLOSION, AI_CBM_Explosion @@ -247,7 +244,6 @@ AI_CBM_DreamEater: @ 82DC330 AI_CBM_BellyDrum: @ 82DC341 if_hp_less_than AI_USER, 51, Score_Minus10 - AI_CBM_AttackUp: @ 82DC348 if_stat_level_equal AI_USER, STAT_ATK, MAX_STAT_STAGE, Score_Minus10 end @@ -307,7 +303,6 @@ AI_CBM_AccDown: @ 82DC3D9 AI_CBM_EvasionDown: @ 82DC3EE if_stat_level_equal AI_TARGET, STAT_EVASION, MIN_STAT_STAGE, Score_Minus10 - CheckIfAbilityBlocksStatChange: @ 82DC3F6 get_ability AI_TARGET if_equal ABILITY_CLEAR_BODY, Score_Minus10 @@ -368,7 +363,6 @@ AI_CBM_OneHitKO: @ 82DC4D0 AI_CBM_Magnitude: @ 82DC4E5 get_ability AI_TARGET if_equal ABILITY_LEVITATE, Score_Minus10 - AI_CBM_HighRiskForDamage: @ 82DC4ED if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET @@ -486,7 +480,6 @@ AI_CBM_Safeguard: @ 82DC635 AI_CBM_Memento: @ 82DC640 if_stat_level_equal AI_TARGET, STAT_ATK, MIN_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_TARGET, STAT_SPATK, MIN_STAT_STAGE, Score_Minus8 - AI_CBM_BatonPass: @ 82DC650 count_usable_party_mons AI_USER if_equal 0, Score_Minus10 @@ -510,7 +503,7 @@ AI_CBM_FutureSight: @ 82DC669 AI_CBM_FakeOut: @ 82DC680 is_first_turn_for AI_USER - if_equal 0, Score_Minus10 + if_equal FALSE, Score_Minus10 end AI_CBM_Stockpile: @ 82DC689 @@ -558,7 +551,7 @@ AI_CBM_Ingrain: @ 82DC6F4 AI_CBM_Recycle: @ 82DC6FF get_used_held_item AI_USER - if_equal 0, Score_Minus10 + if_equal ITEM_NONE, Score_Minus10 end AI_CBM_Imprison: @ 82DC708 @@ -788,7 +781,6 @@ AI_CV_Sleep: @ 82DCA92 AI_CV_SleepEncourageSlpDamage: @ 82DCAA5 if_random_less_than 128, AI_CV_Sleep_End score +1 - AI_CV_Sleep_End: @ 82DCAAD end @@ -800,7 +792,6 @@ AI_CV_Absorb: @ 82DCAAE AI_CV_AbsorbEncourageMaybe: @ 82DCABF if_random_less_than 50, AI_CV_Absorb_End score -3 - AI_CV_Absorb_End: @ 82DCAC7 end @@ -810,7 +801,6 @@ AI_CV_SelfKO: @ 82DCAC8 if_stat_level_less_than AI_TARGET, STAT_EVASION, 10, AI_CV_SelfKO_Encourage1 if_random_less_than 128, AI_CV_SelfKO_Encourage1 score -1 - AI_CV_SelfKO_Encourage1: @ 82DCAE2 if_hp_less_than AI_USER, 80, AI_CV_SelfKO_Encourage2 if_target_faster AI_CV_SelfKO_Encourage2 @@ -821,7 +811,6 @@ AI_CV_SelfKO_Encourage2: @ 82DCAFA if_hp_more_than AI_USER, 50, AI_CV_SelfKO_Encourage4 if_random_less_than 128, AI_CV_SelfKO_Encourage3 score +1 - AI_CV_SelfKO_Encourage3: @ 82DCB09 if_hp_more_than AI_USER, 30, AI_CV_SelfKO_End if_random_less_than 50, AI_CV_SelfKO_End @@ -831,7 +820,6 @@ AI_CV_SelfKO_Encourage3: @ 82DCB09 AI_CV_SelfKO_Encourage4: @ 82DCB1D if_random_less_than 50, AI_CV_SelfKO_End score -1 - AI_CV_SelfKO_End: @ 82DCB25 end @@ -842,7 +830,6 @@ AI_CV_DreamEater: @ 82DCB26 AI_CV_DreamEater_ScoreDown1: @ 82DCB37 score -1 - AI_CV_DreamEater_End: @ 82DCB39 end @@ -859,7 +846,6 @@ AI_CV_MirrorMove2: @ 82DCB58 if_in_hwords AI_CV_MirrorMove_EncouragedMovesToMirror, AI_CV_MirrorMove_End if_random_less_than 80, AI_CV_MirrorMove_End score -1 - AI_CV_MirrorMove_End: @ 82DCB6B end @@ -915,15 +901,12 @@ AI_CV_AttackUp2: @ 82DCBD1 if_hp_not_equal AI_USER, 100, AI_CV_AttackUp3 if_random_less_than 128, AI_CV_AttackUp3 score +2 - AI_CV_AttackUp3: @ 82DCBE0 if_hp_more_than AI_USER, 70, AI_CV_AttackUp_End if_hp_less_than AI_USER, 40, AI_CV_AttackUp_ScoreDown2 if_random_less_than 40, AI_CV_AttackUp_End - AI_CV_AttackUp_ScoreDown2: @ 82DCBF4 score -2 - AI_CV_AttackUp_End: @ 82DCBF6 end @@ -937,11 +920,9 @@ AI_CV_DefenseUp2: @ 82DCC0C if_hp_not_equal AI_USER, 100, AI_CV_DefenseUp3 if_random_less_than 128, AI_CV_DefenseUp3 score +2 - AI_CV_DefenseUp3: @ 82DCC1B if_hp_less_than AI_USER, 70, AI_CV_DefenseUp4 if_random_less_than 200, AI_CV_DefenseUp_End - AI_CV_DefenseUp4: @ 82DCC28 if_hp_less_than AI_USER, 40, AI_CV_DefenseUp_ScoreDown2 get_last_used_bank_move AI_TARGET @@ -951,13 +932,10 @@ AI_CV_DefenseUp4: @ 82DCC28 get_move_type_from_result if_not_in_bytes AI_CV_DefenseUp_PhysicalTypes, AI_CV_DefenseUp_ScoreDown2 if_random_less_than 60, AI_CV_DefenseUp_End - AI_CV_DefenseUp5: @ 82DCC4A if_random_less_than 60, AI_CV_DefenseUp_End - AI_CV_DefenseUp_ScoreDown2: @ 82DCC50 score -2 - AI_CV_DefenseUp_End: @ 82DCC52 end @@ -981,7 +959,6 @@ AI_CV_SpeedUp: @ 82DCC5D AI_CV_SpeedUp2: @ 82DCC6A if_random_less_than 70, AI_CV_SpeedUp_End score +3 - AI_CV_SpeedUp_End: @ 82DCC72 end @@ -995,15 +972,12 @@ AI_CV_SpAtkUp2: @ 82DCC88 if_hp_not_equal AI_USER, 100, AI_CV_SpAtkUp3 if_random_less_than 128, AI_CV_SpAtkUp3 score +2 - AI_CV_SpAtkUp3: @ 82DCC97 if_hp_more_than AI_USER, 70, AI_CV_SpAtkUp_End if_hp_less_than AI_USER, 40, AI_CV_SpAtkUp_ScoreDown2 if_random_less_than 70, AI_CV_SpAtkUp_End - AI_CV_SpAtkUp_ScoreDown2: @ 82DCCAB score -2 - AI_CV_SpAtkUp_End: @ 82DCCAD end @@ -1017,11 +991,9 @@ AI_CV_SpDefUp2: @ 82DCCC3 if_hp_not_equal AI_USER, 100, AI_CV_SpDefUp3 if_random_less_than 128, AI_CV_SpDefUp3 score +2 - AI_CV_SpDefUp3: @ 82DCCD2 if_hp_less_than AI_USER, 70, AI_CV_SpDefUp4 if_random_less_than 200, AI_CV_SpDefUp_End - AI_CV_SpDefUp4: @ 82DCCDF if_hp_less_than AI_USER, 40, AI_CV_SpDefUp_ScoreDown2 get_last_used_bank_move AI_TARGET @@ -1031,13 +1003,10 @@ AI_CV_SpDefUp4: @ 82DCCDF get_move_type_from_result if_in_bytes AI_CV_SpDefUp_PhysicalTypes, AI_CV_SpDefUp_ScoreDown2 if_random_less_than 60, AI_CV_SpDefUp_End - AI_CV_SpDefUp5: @ 82DCD01 if_random_less_than 60, AI_CV_SpDefUp_End - AI_CV_SpDefUp_ScoreDown2: @ 82DCD07 score -2 - AI_CV_SpDefUp_End: @ 82DCD09 end @@ -1057,11 +1026,9 @@ AI_CV_AccuracyUp: if_stat_level_less_than AI_USER, STAT_ACC, 9, AI_CV_AccuracyUp2 if_random_less_than 50, AI_CV_AccuracyUp2 score -2 - AI_CV_AccuracyUp2: if_hp_more_than AI_USER, 70, AI_CV_AccuracyUp_End score -2 - AI_CV_AccuracyUp_End: end @@ -1069,46 +1036,37 @@ AI_CV_EvasionUp: if_hp_less_than AI_USER, 90, AI_CV_EvasionUp2 if_random_less_than 100, AI_CV_EvasionUp2 score +3 - AI_CV_EvasionUp2: if_stat_level_less_than AI_USER, STAT_EVASION, 9, AI_CV_EvasionUp3 if_random_less_than 128, AI_CV_EvasionUp3 score -1 - AI_CV_EvasionUp3: if_not_status AI_TARGET, STATUS1_TOXIC_POISON, AI_CV_EvasionUp5 if_hp_more_than AI_USER, 50, AI_CV_EvasionUp4 if_random_less_than 80, AI_CV_EvasionUp5 - AI_CV_EvasionUp4: if_random_less_than 50, AI_CV_EvasionUp5 score +3 - AI_CV_EvasionUp5: if_not_status3 AI_TARGET, STATUS3_LEECHSEED, AI_CV_EvasionUp6 if_random_less_than 70, AI_CV_EvasionUp6 score +3 - AI_CV_EvasionUp6: if_not_status3 AI_USER, STATUS3_ROOTED, AI_CV_EvasionUp7 if_random_less_than 128, AI_CV_EvasionUp7 score +2 - AI_CV_EvasionUp7: if_not_status2 AI_TARGET, STATUS2_CURSED, AI_CV_EvasionUp8 if_random_less_than 70, AI_CV_EvasionUp8 score +3 - AI_CV_EvasionUp8: if_hp_more_than AI_USER, 70, AI_CV_EvasionUp_End if_stat_level_equal AI_USER, STAT_EVASION, DEFAULT_STAT_STAGE, AI_CV_EvasionUp_End if_hp_less_than AI_USER, 40, AI_CV_EvasionUp_ScoreDown2 if_hp_less_than AI_TARGET, 40, AI_CV_EvasionUp_ScoreDown2 if_random_less_than 70, AI_CV_EvasionUp_End - AI_CV_EvasionUp_ScoreDown2: score -2 - AI_CV_EvasionUp_End: end @@ -1121,11 +1079,9 @@ AI_CV_AlwaysHit: AI_CV_AlwaysHit_ScoreUp1: score +1 - AI_CV_AlwaysHit2: if_random_less_than 100, AI_CV_AlwaysHit_End score +1 - AI_CV_AlwaysHit_End: end @@ -1134,16 +1090,13 @@ AI_CV_AttackDown: @ 82DCDF8 score -1 if_hp_more_than AI_USER, 90, AI_CV_AttackDown2 score -1 - AI_CV_AttackDown2: @ 82DCE0B if_stat_level_more_than AI_TARGET, STAT_ATK, 3, AI_CV_AttackDown3 if_random_less_than 50, AI_CV_AttackDown3 score -2 - AI_CV_AttackDown3: @ 82DCE1B if_hp_more_than AI_TARGET, 70, AI_CV_AttackDown4 score -2 - AI_CV_AttackDown4: @ 82DCE24 get_target_type1 if_in_bytes AI_CV_AttackDown_UnknownTypeList, AI_CV_AttackDown_End @@ -1151,7 +1104,6 @@ AI_CV_AttackDown4: @ 82DCE24 if_in_bytes AI_CV_AttackDown_UnknownTypeList, AI_CV_AttackDown_End if_random_less_than 50, AI_CV_AttackDown_End score -2 - AI_CV_AttackDown_End: @ 82DCE42 end @@ -1167,15 +1119,12 @@ AI_CV_AttackDown_UnknownTypeList: AI_CV_DefenseDown: if_hp_less_than AI_USER, 70, AI_CV_DefenseDown2 if_stat_level_more_than AI_TARGET, STAT_DEF, 3, AI_CV_DefenseDown3 - AI_CV_DefenseDown2: if_random_less_than 50, AI_CV_DefenseDown3 score -2 - AI_CV_DefenseDown3: if_hp_more_than AI_TARGET, 70, AI_CV_DefenseDown_End score -2 - AI_CV_DefenseDown_End: end @@ -1193,7 +1142,6 @@ AI_CV_SpeedDown: @ 82DCE81 AI_CV_SpeedDown2: @ 82DCE8E if_random_less_than 70, AI_CV_SpeedDown_End score +2 - AI_CV_SpeedDown_End: @ 82DCE96 end @@ -1202,16 +1150,13 @@ AI_CV_SpAtkDown: score -1 if_hp_more_than AI_USER, 90, AI_CV_SpAtkDown2 score -1 - AI_CV_SpAtkDown2: if_stat_level_more_than AI_TARGET, STAT_SPATK, 3, AI_CV_SpAtkDown3 if_random_less_than 50, AI_CV_SpAtkDown3 score -2 - AI_CV_SpAtkDown3: if_hp_more_than AI_TARGET, 70, AI_CV_SpAtkDown4 score -2 - AI_CV_SpAtkDown4: get_target_type1 if_in_bytes AI_CV_SpAtkDown_SpecialTypeList, AI_CV_SpAtkDown_End @@ -1219,7 +1164,6 @@ AI_CV_SpAtkDown4: if_in_bytes AI_CV_SpAtkDown_SpecialTypeList, AI_CV_SpAtkDown_End if_random_less_than 50, AI_CV_SpAtkDown_End score -2 - AI_CV_SpAtkDown_End: @ 82DCEE1 end @@ -1237,76 +1181,61 @@ AI_CV_SpAtkDown_SpecialTypeList: @ 82DCEE2 AI_CV_SpDefDown: @ 82DCEEB if_hp_less_than AI_USER, 70, AI_CV_SpDefDown2 if_stat_level_more_than AI_TARGET, STAT_SPDEF, 3, AI_CV_SpDefDown3 - AI_CV_SpDefDown2: @ 82DCEFA if_random_less_than 50, AI_CV_SpDefDown3 score -2 - AI_CV_SpDefDown3: @ 82DCF02 if_hp_more_than AI_TARGET, 70, AI_CV_SpDefDown_End score -2 - AI_CV_SpDefDown_End: @ 82DCF0B end AI_CV_AccuracyDown: @ 82DCF0C if_hp_less_than AI_USER, 70, AI_CV_AccuracyDown2 if_hp_more_than AI_TARGET, 70, AI_CV_AccuracyDown3 - AI_CV_AccuracyDown2: if_random_less_than 100, AI_CV_AccuracyDown3 score -1 - AI_CV_AccuracyDown3: if_stat_level_more_than AI_USER, STAT_ACC, 4, AI_CV_AccuracyDown4 if_random_less_than 80, AI_CV_AccuracyDown4 score -2 - AI_CV_AccuracyDown4: if_not_status AI_TARGET, STATUS1_TOXIC_POISON, AI_CV_AccuracyDown5 if_random_less_than 70, AI_CV_AccuracyDown5 score +2 - AI_CV_AccuracyDown5: if_not_status3 AI_TARGET, STATUS3_LEECHSEED, AI_CV_AccuracyDown6 if_random_less_than 70, AI_CV_AccuracyDown6 score +2 - AI_CV_AccuracyDown6: if_not_status3 AI_USER, STATUS3_ROOTED, AI_CV_AccuracyDown7 if_random_less_than 128, AI_CV_AccuracyDown7 score +1 - AI_CV_AccuracyDown7: if_not_status2 AI_TARGET, STATUS2_CURSED, AI_CV_AccuracyDown8 if_random_less_than 70, AI_CV_AccuracyDown8 score +2 - AI_CV_AccuracyDown8: if_hp_more_than AI_USER, 70, AI_CV_AccuracyDown_End if_stat_level_equal AI_TARGET, STAT_ACC, DEFAULT_STAT_STAGE, AI_CV_AccuracyDown_End if_hp_less_than AI_USER, 40, AI_CV_AccuracyDown_ScoreDown2 if_hp_less_than AI_TARGET, 40, AI_CV_AccuracyDown_ScoreDown2 if_random_less_than 70, AI_CV_AccuracyDown_End - AI_CV_AccuracyDown_ScoreDown2: score -2 - AI_CV_AccuracyDown_End: end AI_CV_EvasionDown: if_hp_less_than AI_USER, 70, AI_CV_EvasionDown2 if_stat_level_more_than AI_TARGET, STAT_EVASION, 3, AI_CV_EvasionDown3 - AI_CV_EvasionDown2: if_random_less_than 50, AI_CV_EvasionDown3 score -2 - AI_CV_EvasionDown3: if_hp_more_than AI_TARGET, 70, AI_CV_EvasionDown_End score -2 - AI_CV_EvasionDown_End: end @@ -1326,7 +1255,6 @@ AI_CV_Haze: AI_CV_Haze2: if_random_less_than 50, AI_CV_Haze3 score -3 - AI_CV_Haze3: if_stat_level_more_than AI_TARGET, STAT_ATK, 8, AI_CV_Haze4 if_stat_level_more_than AI_TARGET, STAT_DEF, 8, AI_CV_Haze4 @@ -1345,14 +1273,12 @@ AI_CV_Haze3: AI_CV_Haze4: if_random_less_than 50, AI_CV_Haze_End score +3 - AI_CV_Haze_End: end AI_CV_Bide: if_hp_more_than AI_USER, 90, AI_CV_Bide_End score -2 - AI_CV_Bide_End: end @@ -1368,19 +1294,16 @@ AI_CV_Roar: AI_CV_Roar2: if_random_less_than 128, AI_CV_Roar_End score +2 - AI_CV_Roar_End: end AI_CV_Conversion: if_hp_more_than AI_USER, 90, AI_CV_Conversion2 score -2 - AI_CV_Conversion2: get_turn_count if_equal 0, AI_CV_Conversion_End if_random_less_than 200, Score_Minus2 - AI_CV_Conversion_End: end @@ -1393,7 +1316,6 @@ AI_CV_HealWeather: AI_CV_HealWeather_ScoreDown2: score -2 - AI_CV_Heal: if_hp_equal AI_USER, 100, AI_CV_Heal3 if_target_faster AI_CV_Heal4 @@ -1404,7 +1326,6 @@ AI_CV_Heal2: if_hp_less_than AI_USER, 50, AI_CV_Heal5 if_hp_more_than AI_USER, 80, AI_CV_Heal3 if_random_less_than 70, AI_CV_Heal5 - AI_CV_Heal3: score -3 goto AI_CV_Heal_End @@ -1418,11 +1339,9 @@ AI_CV_Heal4: AI_CV_Heal5: if_doesnt_have_move_with_effect AI_TARGET, EFFECT_SNATCH, AI_CV_Heal6 if_random_less_than 100, AI_CV_Heal_End - AI_CV_Heal6: if_random_less_than 20, AI_CV_Heal_End score +2 - AI_CV_Heal_End: end @@ -1431,12 +1350,10 @@ AI_CV_Toxic: if_hp_more_than AI_USER, 50, AI_CV_Toxic2 if_random_less_than 50, AI_CV_Toxic2 score -3 - AI_CV_Toxic2: if_hp_more_than AI_TARGET, 50, AI_CV_Toxic3 if_random_less_than 50, AI_CV_Toxic3 score -3 - AI_CV_Toxic3: if_has_move_with_effect AI_USER, EFFECT_SPECIAL_DEFENSE_UP, AI_CV_Toxic4 if_has_move_with_effect AI_USER, EFFECT_PROTECT, AI_CV_Toxic4 @@ -1445,7 +1362,6 @@ AI_CV_Toxic3: AI_CV_Toxic4: if_random_less_than 60, AI_CV_Toxic_End score +2 - AI_CV_Toxic_End: end @@ -1456,10 +1372,8 @@ AI_CV_LightScreen: get_target_type2 if_in_bytes AI_CV_LightScreen_SpecialTypeList, AI_CV_LightScreen_End if_random_less_than 50, AI_CV_LightScreen_End - AI_CV_LightScreen_ScoreDown2: score -2 - AI_CV_LightScreen_End: end @@ -1484,7 +1398,6 @@ AI_CV_Rest2: if_hp_less_than AI_USER, 40, AI_CV_Rest6 if_hp_more_than AI_USER, 50, AI_CV_Rest3 if_random_less_than 70, AI_CV_Rest6 - AI_CV_Rest3: score -3 goto AI_CV_Rest_End @@ -1493,7 +1406,6 @@ AI_CV_Rest4: if_hp_less_than AI_USER, 60, AI_CV_Rest6 if_hp_more_than AI_USER, 70, AI_CV_Rest5 if_random_less_than 50, AI_CV_Rest6 - AI_CV_Rest5: score -3 goto AI_CV_Rest_End @@ -1501,11 +1413,9 @@ AI_CV_Rest5: AI_CV_Rest6: if_doesnt_have_move_with_effect AI_TARGET, EFFECT_SNATCH, AI_CV_Rest7 if_random_less_than 50, AI_CV_Rest_End - AI_CV_Rest7: if_random_less_than 10, AI_CV_Rest_End score +3 - AI_CV_Rest_End: end @@ -1515,7 +1425,6 @@ AI_CV_OneHitKO: AI_CV_SuperFang: if_hp_more_than AI_TARGET, 50, AI_CV_SuperFang_End score -1 - AI_CV_SuperFang_End: end @@ -1529,7 +1438,6 @@ AI_CV_Trap: AI_CV_Trap2: if_random_less_than 128, AI_CV_Trap_End score +1 - AI_CV_Trap_End: end @@ -1543,28 +1451,23 @@ AI_CV_HighCrit: AI_CV_HighCrit2: if_random_less_than 128, AI_CV_HighCrit_End score +1 - AI_CV_HighCrit_End: end AI_CV_Swagger: if_has_move AI_USER, MOVE_PSYCH_UP, AI_CV_SwaggerHasPsychUp - AI_CV_Flatter: if_random_less_than 128, AI_CV_Confuse score +1 - AI_CV_Confuse: if_hp_more_than AI_TARGET, 70, AI_CV_Confuse_End if_random_less_than 128, AI_CV_Confuse2 score -1 - AI_CV_Confuse2: if_hp_more_than AI_TARGET, 50, AI_CV_Confuse_End score -1 if_hp_more_than AI_TARGET, 30, AI_CV_Confuse_End score -1 - AI_CV_Confuse_End: end @@ -1578,7 +1481,6 @@ AI_CV_SwaggerHasPsychUp: AI_CV_SwaggerHasPsychUp_Minus5: score -5 - AI_CV_SwaggerHasPsychUp_End: end @@ -1589,10 +1491,8 @@ AI_CV_Reflect: get_target_type2 if_in_bytes AI_CV_Reflect_PhysicalTypeList, AI_CV_Reflect_End if_random_less_than 50, AI_CV_Reflect_End - AI_CV_Reflect_ScoreDown2: score -2 - AI_CV_Reflect_End: end @@ -1611,10 +1511,8 @@ AI_CV_Reflect_PhysicalTypeList: AI_CV_Poison: if_hp_less_than AI_USER, 50, AI_CV_Poison_ScoreDown1 if_hp_more_than AI_TARGET, 50, AI_CV_Poison_End - AI_CV_Poison_ScoreDown1: score -1 - AI_CV_Poison_End: end @@ -1627,7 +1525,6 @@ AI_CV_Paralyze: AI_CV_Paralyze2: if_random_less_than 20, AI_CV_Paralyze_End score +3 - AI_CV_Paralyze_End: end @@ -1636,11 +1533,9 @@ AI_CV_VitalThrow: if_hp_more_than AI_USER, 60, AI_CV_VitalThrow_End if_hp_less_than AI_USER, 40, AI_CV_VitalThrow2 if_random_less_than 180, AI_CV_VitalThrow_End - AI_CV_VitalThrow2: if_random_less_than 50, AI_CV_VitalThrow_End score -1 - AI_CV_VitalThrow_End: end @@ -1650,15 +1545,12 @@ AI_CV_Substitute: if_hp_more_than AI_USER, 50, AI_CV_Substitute2 if_random_less_than 100, AI_CV_Substitute2 score -1 - AI_CV_Substitute2: if_random_less_than 100, AI_CV_Substitute3 score -1 - AI_CV_Substitute3: if_random_less_than 100, AI_CV_Substitute4 score -1 - AI_CV_Substitute4: if_target_faster AI_CV_Substitute_End get_last_used_bank_move AI_TARGET @@ -1682,11 +1574,9 @@ AI_CV_Substitute6: AI_CV_Substitute7: if_status3 AI_TARGET, STATUS3_LEECHSEED, AI_CV_Substitute_End - AI_CV_Substitute8: if_random_less_than 100, AI_CV_Substitute_End score +1 - AI_CV_Substitute_End: end @@ -1699,10 +1589,8 @@ AI_CV_Recharge: AI_CV_Recharge2: if_hp_less_than AI_USER, 60, AI_CV_Recharge_End - AI_CV_Recharge_ScoreDown1: score -1 - AI_CV_Recharge_End: end @@ -1717,7 +1605,6 @@ AI_CV_Disable: AI_CV_Disable2: if_random_less_than 100, AI_CV_Disable_End score -1 - AI_CV_Disable_End: end @@ -1728,12 +1615,10 @@ AI_CV_Counter: if_hp_more_than AI_USER, 30, AI_CV_Counter2 if_random_less_than 10, AI_CV_Counter2 score -1 - AI_CV_Counter2: if_hp_more_than AI_USER, 50, AI_CV_Counter3 if_random_less_than 100, AI_CV_Counter3 score -1 - AI_CV_Counter3: if_has_move AI_USER, MOVE_MIRROR_COAT, AI_CV_Counter7 get_last_used_bank_move AI_TARGET @@ -1742,7 +1627,6 @@ AI_CV_Counter3: if_target_not_taunted AI_CV_Counter4 if_random_less_than 100, AI_CV_Counter4 score +1 - AI_CV_Counter4: get_last_used_bank_move AI_TARGET get_move_type_from_result @@ -1755,24 +1639,20 @@ AI_CV_Counter5: if_target_not_taunted AI_CV_Counter6 if_random_less_than 100, AI_CV_Counter6 score +1 - AI_CV_Counter6: 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 - AI_CV_Counter7: if_random_less_than 100, AI_CV_Counter8 score +4 - AI_CV_Counter8: end AI_CV_Counter_ScoreDown1: score -1 - AI_CV_Counter_End: end @@ -1794,7 +1674,6 @@ AI_CV_Encore: get_last_used_bank_move AI_TARGET get_move_effect_from_result if_not_in_bytes AI_CV_Encore_EncouragedMovesToEncore, AI_CV_Encore_ScoreDown2 - AI_CV_Encore2: if_random_less_than 30, AI_CV_Encore_End score +3 @@ -1802,7 +1681,6 @@ AI_CV_Encore2: AI_CV_Encore_ScoreDown2: score -2 - AI_CV_Encore_End: end @@ -1885,7 +1763,6 @@ AI_CV_PainSplit2: AI_CV_PainSplit_ScoreDown1: score -1 - AI_CV_PainSplit_End: end @@ -1896,7 +1773,6 @@ AI_CV_Snore: AI_CV_LockOn: if_random_less_than 128, AI_CV_LockOn_End score +2 - AI_CV_LockOn_End: end @@ -1911,17 +1787,14 @@ AI_CV_DestinyBond: if_hp_more_than AI_USER, 70, AI_CV_DestinyBond_End if_random_less_than 128, AI_CV_DestinyBond2 score +1 - AI_CV_DestinyBond2: if_hp_more_than AI_USER, 50, AI_CV_DestinyBond_End if_random_less_than 128, AI_CV_DestinyBond3 score +1 - AI_CV_DestinyBond3: if_hp_more_than AI_USER, 30, AI_CV_DestinyBond_End if_random_less_than 100, AI_CV_DestinyBond_End score +2 - AI_CV_DestinyBond_End: end @@ -1939,7 +1812,6 @@ AI_CV_Flail2: AI_CV_Flail_ScoreUp1: score +1 - AI_CV_Flail3: if_random_less_than 100, AI_CV_Flail_End score +1 @@ -1947,7 +1819,6 @@ AI_CV_Flail3: AI_CV_Flail_ScoreDown1: score -1 - AI_CV_Flail_End: end @@ -1955,7 +1826,6 @@ AI_CV_HealBell: if_status AI_TARGET, STATUS1_ANY, AI_CV_HealBell_End if_status_in_party AI_TARGET, STATUS1_ANY, AI_CV_HealBell_End score -5 - AI_CV_HealBell_End: end @@ -1968,7 +1838,6 @@ AI_CV_Thief: AI_CV_Thief_ScoreDown2: score -2 - AI_CV_Thief_End: end @@ -1990,12 +1859,10 @@ AI_CV_Curse: if_stat_level_more_than AI_USER, STAT_DEF, 9, AI_CV_Curse_End if_random_less_than 128, AI_CV_Curse2 score +1 - AI_CV_Curse2: if_stat_level_more_than AI_USER, STAT_DEF, 7, AI_CV_Curse_End if_random_less_than 128, AI_CV_Curse3 score +1 - AI_CV_Curse3: if_stat_level_more_than AI_USER, STAT_DEF, DEFAULT_STAT_STAGE, AI_CV_Curse_End if_random_less_than 128, AI_CV_Curse_End @@ -2005,7 +1872,6 @@ AI_CV_Curse3: AI_CV_Curse4: if_hp_more_than AI_USER, 80, AI_CV_Curse_End score -1 - AI_CV_Curse_End: end @@ -2033,11 +1899,9 @@ AI_CV_Protect: AI_CV_Protect_ScoreUp2: score +2 - AI_CV_Protect2: if_random_less_than 128, AI_CV_Protect4 score -1 - AI_CV_Protect4: get_protect_count AI_USER if_equal 0, AI_CV_Protect_End @@ -2050,10 +1914,8 @@ AI_CV_Protect3: get_last_used_bank_move AI_TARGET get_move_effect_from_result if_not_equal EFFECT_LOCK_ON, AI_CV_Protect_End - AI_CV_Protect_ScoreDown2: score -2 - AI_CV_Protect_End: end @@ -2078,18 +1940,15 @@ AI_CV_Foresight: AI_CV_Foresight2: if_random_less_than 80, AI_CV_Foresight_End - AI_CV_Foresight3: if_random_less_than 80, AI_CV_Foresight_End score +2 - AI_CV_Foresight_End: end AI_CV_Endure: if_hp_less_than AI_USER, 4, AI_CV_Endure2 if_hp_less_than AI_USER, 35, AI_CV_Endure3 - AI_CV_Endure2: score -1 goto AI_CV_Endure_End @@ -2097,7 +1956,6 @@ AI_CV_Endure2: AI_CV_Endure3: if_random_less_than 70, AI_CV_Endure_End score +1 - AI_CV_Endure_End: end @@ -2116,7 +1974,6 @@ AI_CV_BatonPass2: AI_CV_BatonPass3: if_hp_more_than AI_USER, 70, AI_CV_BatonPass_End - AI_CV_BatonPass4: if_random_less_than 80, AI_CV_BatonPass_End score +2 @@ -2137,10 +1994,8 @@ AI_CV_BatonPass7: AI_CV_BatonPass8: if_hp_less_than AI_USER, 70, AI_CV_BatonPass_End - AI_CV_BatonPass_ScoreDown2: score -2 - AI_CV_BatonPass_End: end @@ -2160,7 +2015,6 @@ AI_CV_Pursuit: AI_CV_Pursuit2: if_random_less_than 128, AI_CV_Pursuit_End score +1 - AI_CV_Pursuit_End: end @@ -2168,7 +2022,6 @@ AI_CV_RainDance: if_user_faster AI_CV_RainDance2 get_ability AI_USER if_equal ABILITY_SWIFT_SWIM, AI_CV_RainDance3 - AI_CV_RainDance2: if_hp_less_than AI_USER, 40, AI_CV_RainDance_ScoreDown1 get_weather @@ -2185,7 +2038,6 @@ AI_CV_RainDance3: AI_CV_RainDance_ScoreDown1: score -1 - AI_CV_RainDance_End: end @@ -2203,7 +2055,6 @@ AI_CV_SunnyDay2: AI_CV_SunnyDay_ScoreDown1: score -1 - AI_CV_SunnyDay_End: end @@ -2213,7 +2064,6 @@ AI_CV_BellyDrum: AI_CV_BellyDrum_ScoreDown2: score -2 - AI_CV_BellyDrum_End: end @@ -2236,14 +2086,12 @@ AI_CV_PsychUp2: AI_CV_PsychUp_ScoreUp1: score +1 - AI_CV_PsychUp3: score +1 end AI_CV_PsychUp_ScoreDown2: score -2 - AI_CV_PsychUp_End: end @@ -2254,12 +2102,10 @@ AI_CV_MirrorCoat: if_hp_more_than AI_USER, 30, AI_CV_MirrorCoat2 if_random_less_than 10, AI_CV_MirrorCoat2 score -1 - AI_CV_MirrorCoat2: if_hp_more_than AI_USER, 50, AI_CV_MirrorCoat3 if_random_less_than 100, AI_CV_MirrorCoat3 score -1 - AI_CV_MirrorCoat3: if_has_move AI_USER, MOVE_COUNTER, AI_CV_MirrorCoat_ScoreUp4 get_last_used_bank_move AI_TARGET @@ -2268,7 +2114,6 @@ AI_CV_MirrorCoat3: if_target_not_taunted AI_CV_MirrorCoat4 if_random_less_than 100, AI_CV_MirrorCoat4 score +1 - AI_CV_MirrorCoat4: get_last_used_bank_move AI_TARGET get_move_type_from_result @@ -2281,24 +2126,20 @@ AI_CV_MirrorCoat5: if_target_not_taunted AI_CV_MirrorCoat6 if_random_less_than 100, AI_CV_MirrorCoat6 score +1 - AI_CV_MirrorCoat6: 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 if_random_less_than 50, AI_CV_MirrorCoat_End - AI_CV_MirrorCoat_ScoreUp4: if_random_less_than 100, AI_CV_MirrorCoat_ScoreUp4_End score +4 - AI_CV_MirrorCoat_ScoreUp4_End: end AI_CV_MirrorCoat_ScoreDown1: score -1 - AI_CV_MirrorCoat_End: end @@ -2323,7 +2164,6 @@ AI_CV_ChargeUpMove: AI_CV_ChargeUpMove_ScoreDown2: score -2 - AI_CV_ChargeUpMove_End: end @@ -2360,7 +2200,6 @@ AI_CV_SemiInvulnerable_CheckIceType: if_equal TYPE_ICE, AI_CV_SemiInvulnerable_TryEncourage get_user_type2 if_equal TYPE_ICE, AI_CV_SemiInvulnerable_TryEncourage - AI_CV_SemiInvulnerable5: if_target_faster AI_CV_SemiInvulnerable_End get_last_used_bank_move AI_TARGET @@ -2371,7 +2210,6 @@ AI_CV_SemiInvulnerable5: AI_CV_SemiInvulnerable_TryEncourage: if_random_less_than 80, AI_CV_SemiInvulnerable_End score +1 - AI_CV_SemiInvulnerable_End: end @@ -2390,7 +2228,6 @@ AI_CV_SpitUp: if_less_than 2, AI_CV_SpitUp_End if_random_less_than 80, AI_CV_SpitUp_End score +2 - AI_CV_SpitUp_End: end @@ -2408,7 +2245,6 @@ AI_CV_Hail2: AI_CV_Hail_ScoreDown1: score -1 - AI_CV_Hail_End: end @@ -2442,10 +2278,8 @@ AI_CV_FocusPunch2: AI_CV_FocusPunch3: if_random_less_than 100, AI_CV_FocusPunch_End if_status2 AI_USER, STATUS2_SUBSTITUTE, Score_Plus5 - AI_CV_FocusPunch_ScoreUp1: score +1 - AI_CV_FocusPunch_End: end @@ -2455,7 +2289,6 @@ AI_CV_SmellingSalt: AI_CV_SmellingSalt_ScoreUp1: score +1 - AI_CV_SmellingSalt_End: end @@ -2463,7 +2296,6 @@ AI_CV_Trick: get_hold_effect AI_USER if_in_bytes AI_CV_Trick_EffectsToEncourage2, AI_CV_Trick3 if_in_bytes AI_CV_Trick_EffectsToEncourage, AI_CV_Trick4 - AI_CV_Trick2: score -3 goto AI_CV_Trick_End @@ -2479,7 +2311,6 @@ AI_CV_Trick4: if_in_bytes AI_CV_Trick_EffectsToEncourage, AI_CV_Trick2 if_random_less_than 50, AI_CV_Trick_End score +2 - AI_CV_Trick_End: end @@ -2502,7 +2333,6 @@ AI_CV_ChangeSelfAbility: if_in_bytes AI_CV_ChangeSelfAbility_AbilitiesToEncourage, AI_CV_ChangeSelfAbility2 get_ability AI_TARGET if_in_bytes AI_CV_ChangeSelfAbility_AbilitiesToEncourage, AI_CV_ChangeSelfAbility3 - AI_CV_ChangeSelfAbility2: score -1 goto AI_CV_ChangeSelfAbility_End @@ -2510,7 +2340,6 @@ AI_CV_ChangeSelfAbility2: AI_CV_ChangeSelfAbility3: if_random_less_than 50, AI_CV_ChangeSelfAbility_End score +2 - AI_CV_ChangeSelfAbility_End: end @@ -2543,10 +2372,8 @@ AI_CV_Superpower: AI_CV_Superpower2: if_hp_less_than AI_USER, 60, AI_CV_Superpower_End - AI_CV_Superpower_ScoreDown1: score -1 - AI_CV_Superpower_End: end @@ -2554,21 +2381,18 @@ AI_CV_MagicCoat: if_hp_more_than AI_TARGET, 30, AI_CV_MagicCoat2 if_random_less_than 100, AI_CV_MagicCoat2 score -1 - AI_CV_MagicCoat2: is_first_turn_for AI_USER - if_equal 0, AI_CV_MagicCoat4 + if_equal FALSE, AI_CV_MagicCoat4 if_random_less_than 150, AI_CV_MagicCoat_End score +1 goto AI_CV_MagicCoat_End AI_CV_MagicCoat3: if_random_less_than 50, AI_CV_MagicCoat_End - AI_CV_MagicCoat4: if_random_less_than 30, AI_CV_MagicCoat_End score -1 - AI_CV_MagicCoat_End: end @@ -2581,7 +2405,6 @@ AI_CV_Recycle: AI_CV_Recycle_ScoreDown2: score -2 - AI_CV_Recycle_End: end @@ -2601,7 +2424,6 @@ AI_CV_Revenge: AI_CV_Revenge_ScoreDown2: score -2 - AI_CV_Revenge_End: end @@ -2611,7 +2433,6 @@ AI_CV_BrickBreak: AI_CV_BrickBreak_ScoreUp1: score +1 - AI_CV_BrickBreak_End: end @@ -2621,7 +2442,6 @@ AI_CV_KnockOff: if_more_than 0, AI_CV_KnockOff_End if_random_less_than 180, AI_CV_KnockOff_End score +1 - AI_CV_KnockOff_End: end @@ -2639,7 +2459,6 @@ AI_CV_Endeavor2: AI_CV_Endeavor_ScoreDown1: score -1 - AI_CV_Endeavor_End: end @@ -2652,10 +2471,8 @@ AI_CV_Eruption: AI_CV_Eruption2: if_hp_more_than AI_TARGET, 70, AI_CV_Eruption_End - AI_CV_Eruption_ScoreDown1: score -1 - AI_CV_Eruption_End: end @@ -2664,7 +2481,6 @@ AI_CV_Imprison: if_more_than 0, AI_CV_Imprison_End if_random_less_than 100, AI_CV_Imprison_End score +2 - AI_CV_Imprison_End: end @@ -2674,13 +2490,12 @@ AI_CV_Refresh: AI_CV_Refresh_ScoreDown1: score -1 - AI_CV_Refresh_End: end AI_CV_Snatch: is_first_turn_for AI_USER - if_equal 1, AI_CV_Snatch3 + if_equal TRUE, AI_CV_Snatch3 if_random_less_than 30, AI_CV_Snatch_End if_target_faster AI_CV_Snatch2 if_hp_not_equal AI_USER, 100, AI_CV_Snatch5 @@ -2707,7 +2522,6 @@ AI_CV_Snatch4: AI_CV_Snatch5: if_random_less_than 30, AI_CV_Snatch_End score -2 - AI_CV_Snatch_End: end @@ -2725,7 +2539,6 @@ AI_CV_MudSport2: AI_CV_MudSport_ScoreDown1: score -1 - AI_CV_MudSport_End: end @@ -2738,10 +2551,8 @@ AI_CV_Overheat: AI_CV_Overheat2: if_hp_more_than AI_USER, 80, AI_CV_Overheat_End - AI_CV_Overheat_ScoreDown1: score -1 - AI_CV_Overheat_End: end @@ -2759,7 +2570,6 @@ AI_CV_WaterSport2: AI_CV_WaterSport_ScoreDown1: score -1 - AI_CV_WaterSport_End: end @@ -2773,7 +2583,6 @@ AI_CV_DragonDance: AI_CV_DragonDance2: if_random_less_than 128, AI_CV_DragonDance_End score +1 - AI_CV_DragonDance_End: end @@ -2794,10 +2603,8 @@ AI_TryToFaint_TryToEncourageQuickAttack: if_effect EFFECT_EXPLOSION, AI_TryToFaint_End if_not_effect EFFECT_QUICK_ATTACK, AI_TryToFaint_ScoreUp4 score +2 - AI_TryToFaint_ScoreUp4: score +4 - AI_TryToFaint_End: end @@ -2809,7 +2616,6 @@ AI_SetupFirstTurn: if_not_in_bytes AI_SetupFirstTurn_SetupEffectsToEncourage, AI_SetupFirstTurn_End if_random_less_than 80, AI_SetupFirstTurn_End score +2 - AI_SetupFirstTurn_End: end @@ -2871,14 +2677,15 @@ AI_SetupFirstTurn_SetupEffectsToEncourage: .byte EFFECT_CAMOUFLAGE .byte -1 -AI_PreferStrongestMove: +@ ~60% chance to prefer moves that do 0 or 1 damage, or are in sIgnoredPowerfulMoveEffects +@ Oddly this group includes moves like Explosion and Eruption, so the AI strategy isn't very coherent +AI_PreferPowerExtremes: if_target_is_ally AI_Ret get_how_powerful_move_is - if_not_equal 0, AI_PreferStrongestMove_End - if_random_less_than 100, AI_PreferStrongestMove_End + if_not_equal MOVE_POWER_OTHER, AI_PreferPowerExtremes_End + if_random_less_than 100, AI_PreferPowerExtremes_End score +2 - -AI_PreferStrongestMove_End: +AI_PreferPowerExtremes_End: end AI_Risky: @@ -2887,7 +2694,6 @@ AI_Risky: if_not_in_bytes AI_Risky_EffectsToEncourage, AI_Risky_End if_random_less_than 128, AI_Risky_End score +2 - AI_Risky_End: end @@ -2918,10 +2724,9 @@ AI_PreferBatonPass: count_usable_party_mons AI_USER if_equal 0, AI_PreferBatonPassEnd get_how_powerful_move_is - if_not_equal 0, AI_PreferBatonPassEnd + if_not_equal MOVE_POWER_OTHER, AI_PreferBatonPassEnd if_has_move_with_effect AI_USER, EFFECT_BATON_PASS, AI_PreferBatonPass_GoForBatonPass if_random_less_than 80, AI_Risky_End - AI_PreferBatonPass_GoForBatonPass: if_move MOVE_SWORDS_DANCE, AI_PreferBatonPass2 if_move MOVE_DRAGON_DANCE, AI_PreferBatonPass2 @@ -2930,7 +2735,6 @@ AI_PreferBatonPass_GoForBatonPass: if_move MOVE_BATON_PASS, AI_PreferBatonPass_EncourageIfHighStats if_random_less_than 20, AI_Risky_End score +3 - AI_PreferBatonPass2: get_turn_count if_equal 0, Score_Plus5 @@ -2977,7 +2781,7 @@ AI_DoubleBattle: AI_DoubleBattlePartnerHasHelpingHand: get_how_powerful_move_is - if_not_equal 0, Score_Plus1 + if_not_equal MOVE_POWER_OTHER, Score_Plus1 end AI_DoubleBattleCheckUserStatus: @@ -2986,7 +2790,7 @@ AI_DoubleBattleCheckUserStatus: AI_DoubleBattleCheckUserStatus2: get_how_powerful_move_is - if_equal MOVE_POWER_DISCOURAGED, Score_Minus5 + if_equal MOVE_POWER_OTHER, Score_Minus5 score +1 if_equal MOVE_MOST_POWERFUL, Score_Plus2 end @@ -3013,7 +2817,6 @@ AI_DoubleBattleElectricMove: score -2 if_no_type AI_TARGET_PARTNER, TYPE_GROUND, AI_DoubleBattleElectricMoveEnd score -8 - AI_DoubleBattleElectricMoveEnd: end @@ -3026,10 +2829,9 @@ AI_DoubleBattleFireMove2: AI_TryOnAlly: get_how_powerful_move_is - if_equal 0, AI_TryStatusMoveOnAlly + if_equal MOVE_POWER_OTHER, AI_TryStatusMoveOnAlly get_curr_move_type if_equal TYPE_FIRE, AI_TryFireMoveOnAlly - AI_DiscourageOnAlly: goto Score_Minus30 @@ -3096,7 +2898,6 @@ AI_TrySwaggerOnAlly: AI_TrySwaggerOnAlly2: if_stat_level_more_than AI_TARGET, STAT_ATK, 7, AI_TrySwaggerOnAlly_End score +3 - AI_TrySwaggerOnAlly_End: end @@ -3125,7 +2926,6 @@ AI_HPAware_UserHasMediumHP: AI_HPAware_TryToDiscourage: if_random_less_than 50, AI_HPAware_ConsiderTarget score -2 - AI_HPAware_ConsiderTarget: if_hp_more_than AI_TARGET, 70, AI_HPAware_TargetHasHighHP if_hp_more_than AI_TARGET, 30, AI_HPAware_TargetHasMediumHP @@ -3146,7 +2946,6 @@ AI_HPAware_TargetHasMediumHP: AI_HPAware_TargetTryToDiscourage: if_random_less_than 50, AI_HPAware_End score -2 - AI_HPAware_End: end @@ -3368,15 +3167,18 @@ AI_HPAware_DiscouragedEffectsWhenTargetLowHP: @ 82DE2B1 .byte EFFECT_DRAGON_DANCE .byte -1 -AI_Unknown: +@ Given the AI_TryOnAlly at the beginning it's possible that this was the start of a more +@ comprehensive double battle AI script +AI_TrySunnyDayStart: if_target_is_ally AI_TryOnAlly - if_not_effect EFFECT_SUNNY_DAY, AI_Unknown_End - if_equal 0, AI_Unknown_End + if_not_effect EFFECT_SUNNY_DAY, AI_TrySunnyDayStart_End +.ifndef BUGFIX @ funcResult has not been set in this script yet, below call is nonsense + if_equal FALSE, AI_TrySunnyDayStart_End +.endif is_first_turn_for AI_USER - if_equal 0, AI_Unknown_End + if_equal FALSE, AI_TrySunnyDayStart_End score +5 - -AI_Unknown_End: @ 82DE308 +AI_TrySunnyDayStart_End: @ 82DE308 end AI_Roaming: @@ -3388,7 +3190,6 @@ AI_Roaming: if_equal ABILITY_LEVITATE, AI_Roaming_Flee get_ability AI_TARGET if_equal ABILITY_ARENA_TRAP, AI_Roaming_End - AI_Roaming_Flee: @ 82DE335 flee diff --git a/include/constants/battle_ai.h b/include/constants/battle_ai.h index 4c3a45dc6c37..5ade58d509b1 100644 --- a/include/constants/battle_ai.h +++ b/include/constants/battle_ai.h @@ -29,24 +29,24 @@ #define AI_WEATHER_HAIL 3 // get_how_powerful_move_is -#define MOVE_POWER_DISCOURAGED 0 +#define MOVE_POWER_OTHER 0 #define MOVE_NOT_MOST_POWERFUL 1 #define MOVE_MOST_POWERFUL 2 // script's table id to bit -#define AI_SCRIPT_CHECK_BAD_MOVE (1 << 0) -#define AI_SCRIPT_TRY_TO_FAINT (1 << 1) -#define AI_SCRIPT_CHECK_VIABILITY (1 << 2) -#define AI_SCRIPT_SETUP_FIRST_TURN (1 << 3) -#define AI_SCRIPT_RISKY (1 << 4) -#define AI_SCRIPT_PREFER_STRONGEST_MOVE (1 << 5) -#define AI_SCRIPT_PREFER_BATON_PASS (1 << 6) -#define AI_SCRIPT_DOUBLE_BATTLE (1 << 7) -#define AI_SCRIPT_HP_AWARE (1 << 8) -#define AI_SCRIPT_UNKNOWN (1 << 9) +#define AI_SCRIPT_CHECK_BAD_MOVE (1 << 0) +#define AI_SCRIPT_TRY_TO_FAINT (1 << 1) +#define AI_SCRIPT_CHECK_VIABILITY (1 << 2) +#define AI_SCRIPT_SETUP_FIRST_TURN (1 << 3) +#define AI_SCRIPT_RISKY (1 << 4) +#define AI_SCRIPT_PREFER_POWER_EXTREMES (1 << 5) +#define AI_SCRIPT_PREFER_BATON_PASS (1 << 6) +#define AI_SCRIPT_DOUBLE_BATTLE (1 << 7) +#define AI_SCRIPT_HP_AWARE (1 << 8) +#define AI_SCRIPT_TRY_SUNNY_DAY_START (1 << 9) // 10 - 28 are not used -#define AI_SCRIPT_ROAMING (1 << 29) -#define AI_SCRIPT_SAFARI (1 << 30) -#define AI_SCRIPT_FIRST_BATTLE (1 << 31) +#define AI_SCRIPT_ROAMING (1 << 29) +#define AI_SCRIPT_SAFARI (1 << 30) +#define AI_SCRIPT_FIRST_BATTLE (1 << 31) #endif // GUARD_CONSTANTS_BATTLE_AI_H diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index b7287503641a..20705aa70ad5 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -263,7 +263,10 @@ static const BattleAICmdFunc sBattleAICmdTable[] = Cmd_if_holds_item, // 0x62 }; -static const u16 sDiscouragedPowerfulMoveEffects[] = +// For the purposes of determing the most powerful move in a moveset, these +// moves are treated the same as having a power of 0 or 1 +#define IGNORED_MOVES_END 0xFFFF +static const u16 sIgnoredPowerfulMoveEffects[] = { EFFECT_EXPLOSION, EFFECT_DREAM_EATER, @@ -277,7 +280,7 @@ static const u16 sDiscouragedPowerfulMoveEffects[] = EFFECT_SUPERPOWER, EFFECT_ERUPTION, EFFECT_OVERHEAT, - 0xFFFF + IGNORED_MOVES_END }; // code @@ -1177,14 +1180,14 @@ static void Cmd_get_how_powerful_move_is(void) s32 i, checkedMove; s32 moveDmgs[MAX_MON_MOVES]; - for (i = 0; sDiscouragedPowerfulMoveEffects[i] != 0xFFFF; i++) + for (i = 0; sIgnoredPowerfulMoveEffects[i] != IGNORED_MOVES_END; i++) { - if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].effect == sDiscouragedPowerfulMoveEffects[i]) + if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].effect == sIgnoredPowerfulMoveEffects[i]) break; } if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].power > 1 - && sDiscouragedPowerfulMoveEffects[i] == 0xFFFF) + && sIgnoredPowerfulMoveEffects[i] == IGNORED_MOVES_END) { gDynamicBasePower = 0; *(&gBattleStruct->dynamicMoveType) = 0; @@ -1192,16 +1195,18 @@ static void Cmd_get_how_powerful_move_is(void) gMoveResultFlags = 0; gCritMultiplier = 1; + // Considered move has power and is not in sIgnoredPowerfulMoveEffects + // Check all other moves and calculate their power for (checkedMove = 0; checkedMove < MAX_MON_MOVES; checkedMove++) { - for (i = 0; sDiscouragedPowerfulMoveEffects[i] != 0xFFFF; i++) + for (i = 0; sIgnoredPowerfulMoveEffects[i] != IGNORED_MOVES_END; i++) { - if (gBattleMoves[gBattleMons[sBattler_AI].moves[checkedMove]].effect == sDiscouragedPowerfulMoveEffects[i]) + if (gBattleMoves[gBattleMons[sBattler_AI].moves[checkedMove]].effect == sIgnoredPowerfulMoveEffects[i]) break; } if (gBattleMons[sBattler_AI].moves[checkedMove] != MOVE_NONE - && sDiscouragedPowerfulMoveEffects[i] == 0xFFFF + && sIgnoredPowerfulMoveEffects[i] == IGNORED_MOVES_END && gBattleMoves[gBattleMons[sBattler_AI].moves[checkedMove]].power > 1) { gCurrentMove = gBattleMons[sBattler_AI].moves[checkedMove]; @@ -1217,6 +1222,7 @@ static void Cmd_get_how_powerful_move_is(void) } } + // Is the considered move the most powerful move available? for (checkedMove = 0; checkedMove < MAX_MON_MOVES; checkedMove++) { if (moveDmgs[checkedMove] > moveDmgs[AI_THINKING_STRUCT->movesetIndex]) @@ -1224,13 +1230,14 @@ static void Cmd_get_how_powerful_move_is(void) } if (checkedMove == MAX_MON_MOVES) - AI_THINKING_STRUCT->funcResult = MOVE_MOST_POWERFUL; // Is the most powerful. + AI_THINKING_STRUCT->funcResult = MOVE_MOST_POWERFUL; else - AI_THINKING_STRUCT->funcResult = MOVE_NOT_MOST_POWERFUL; // Not the most powerful. + AI_THINKING_STRUCT->funcResult = MOVE_NOT_MOST_POWERFUL; } else { - AI_THINKING_STRUCT->funcResult = MOVE_POWER_DISCOURAGED; // Highly discouraged in terms of power. + // Move has a power of 0/1, or is in the group sIgnoredPowerfulMoveEffects + AI_THINKING_STRUCT->funcResult = MOVE_POWER_OTHER; } gAIScriptPtr++; From c42b5d783aeb90ea194d5cd72f8b180cc8878cb8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 03:26:50 -0400 Subject: [PATCH 230/762] Fix 'determining' typo --- src/battle_ai_script_commands.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 20705aa70ad5..bb615e4972c1 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -263,7 +263,7 @@ static const BattleAICmdFunc sBattleAICmdTable[] = Cmd_if_holds_item, // 0x62 }; -// For the purposes of determing the most powerful move in a moveset, these +// For the purposes of determining the most powerful move in a moveset, these // moves are treated the same as having a power of 0 or 1 #define IGNORED_MOVES_END 0xFFFF static const u16 sIgnoredPowerfulMoveEffects[] = From 9fd27fe8552eb0716222e72bc92ffa7f7334c68d Mon Sep 17 00:00:00 2001 From: luckytyphlosion <10688458+luckytyphlosion@users.noreply.github.com> Date: Fri, 2 Jul 2021 12:52:31 -0400 Subject: [PATCH 231/762] Fix modern builds when devkitARM is not in PATH. --- Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index a78949b3f414..49955323219e 100644 --- a/Makefile +++ b/Makefile @@ -23,6 +23,7 @@ LD := $(PREFIX)ld # note: the makefile must be set up so MODERNCC is never called # if MODERN=0 MODERNCC := $(PREFIX)gcc +PATH_MODERNCC := PATH=$(TOOLCHAIN)/bin:PATH $(MODERNCC) ifeq ($(OS),Windows_NT) EXE := .exe @@ -95,11 +96,11 @@ OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L ../../tools/agbcc/lib LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall else -CC1 = $(shell $(MODERNCC) --print-prog-name=cc1) -quiet +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 -g ROM := $(MODERN_ROM_NAME) OBJ_DIR := $(MODERN_OBJ_DIR_NAME) -LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libc.a))" +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 From d2701b51ab08a3d099c378f6b1a8113a7bc45690 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Jul 2021 15:32:05 -0400 Subject: [PATCH 232/762] Combine battle script labels, add EFFECT comments --- data/battle_scripts_1.s | 454 +++++++++++++++++++--------------------- 1 file changed, 215 insertions(+), 239 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index b15c29cfe0a7..1577765cd097 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -17,243 +17,221 @@ .align 2 gBattleScriptsForMoveEffects:: @ 82D86A8 - .4byte BattleScript_EffectHit - .4byte BattleScript_EffectSleep - .4byte BattleScript_EffectPoisonHit - .4byte BattleScript_EffectAbsorb - .4byte BattleScript_EffectBurnHit - .4byte BattleScript_EffectFreezeHit - .4byte BattleScript_EffectParalyzeHit - .4byte BattleScript_EffectExplosion - .4byte BattleScript_EffectDreamEater - .4byte BattleScript_EffectMirrorMove - .4byte BattleScript_EffectAttackUp - .4byte BattleScript_EffectDefenseUp - .4byte BattleScript_EffectSpeedUp - .4byte BattleScript_EffectSpecialAttackUp - .4byte BattleScript_EffectSpecialDefenseUp - .4byte BattleScript_EffectAccuracyUp - .4byte BattleScript_EffectEvasionUp - .4byte BattleScript_EffectAlwaysHit - .4byte BattleScript_EffectAttackDown - .4byte BattleScript_EffectDefenseDown - .4byte BattleScript_EffectSpeedDown - .4byte BattleScript_EffectSpecialAttackDown - .4byte BattleScript_EffectSpecialDefenseDown - .4byte BattleScript_EffectAccuracyDown - .4byte BattleScript_EffectEvasionDown - .4byte BattleScript_EffectHaze - .4byte BattleScript_EffectBide - .4byte BattleScript_EffectRampage - .4byte BattleScript_EffectRoar - .4byte BattleScript_EffectMultiHit - .4byte BattleScript_EffectConversion - .4byte BattleScript_EffectFlinchHit - .4byte BattleScript_EffectRestoreHp - .4byte BattleScript_EffectToxic - .4byte BattleScript_EffectPayDay - .4byte BattleScript_EffectLightScreen - .4byte BattleScript_EffectTriAttack - .4byte BattleScript_EffectRest - .4byte BattleScript_EffectOHKO - .4byte BattleScript_EffectRazorWind - .4byte BattleScript_EffectSuperFang - .4byte BattleScript_EffectDragonRage - .4byte BattleScript_EffectTrap - .4byte BattleScript_EffectHighCritical - .4byte BattleScript_EffectDoubleHit - .4byte BattleScript_EffectRecoilIfMiss - .4byte BattleScript_EffectMist - .4byte BattleScript_EffectFocusEnergy - .4byte BattleScript_EffectRecoil - .4byte BattleScript_EffectConfuse - .4byte BattleScript_EffectAttackUp2 - .4byte BattleScript_EffectDefenseUp2 - .4byte BattleScript_EffectSpeedUp2 - .4byte BattleScript_EffectSpecialAttackUp2 - .4byte BattleScript_EffectSpecialDefenseUp2 - .4byte BattleScript_EffectAccuracyUp2 - .4byte BattleScript_EffectEvasionUp2 - .4byte BattleScript_EffectTransform - .4byte BattleScript_EffectAttackDown2 - .4byte BattleScript_EffectDefenseDown2 - .4byte BattleScript_EffectSpeedDown2 - .4byte BattleScript_EffectSpecialAttackDown2 - .4byte BattleScript_EffectSpecialDefenseDown2 - .4byte BattleScript_EffectAccuracyDown2 - .4byte BattleScript_EffectEvasionDown2 - .4byte BattleScript_EffectReflect - .4byte BattleScript_EffectPoison - .4byte BattleScript_EffectParalyze - .4byte BattleScript_EffectAttackDownHit - .4byte BattleScript_EffectDefenseDownHit - .4byte BattleScript_EffectSpeedDownHit - .4byte BattleScript_EffectSpecialAttackDownHit - .4byte BattleScript_EffectSpecialDefenseDownHit - .4byte BattleScript_EffectAccuracyDownHit - .4byte BattleScript_EffectEvasionDownHit - .4byte BattleScript_EffectSkyAttack - .4byte BattleScript_EffectConfuseHit - .4byte BattleScript_EffectTwineedle - .4byte BattleScript_EffectVitalThrow - .4byte BattleScript_EffectSubstitute - .4byte BattleScript_EffectRecharge - .4byte BattleScript_EffectRage - .4byte BattleScript_EffectMimic - .4byte BattleScript_EffectMetronome - .4byte BattleScript_EffectLeechSeed - .4byte BattleScript_EffectSplash - .4byte BattleScript_EffectDisable - .4byte BattleScript_EffectLevelDamage - .4byte BattleScript_EffectPsywave - .4byte BattleScript_EffectCounter - .4byte BattleScript_EffectEncore - .4byte BattleScript_EffectPainSplit - .4byte BattleScript_EffectSnore - .4byte BattleScript_EffectConversion2 - .4byte BattleScript_EffectLockOn - .4byte BattleScript_EffectSketch - .4byte BattleScript_EffectUnused60//Thaw - .4byte BattleScript_EffectSleepTalk - .4byte BattleScript_EffectDestinyBond - .4byte BattleScript_EffectFlail - .4byte BattleScript_EffectSpite - .4byte BattleScript_EffectFalseSwipe - .4byte BattleScript_EffectHealBell - .4byte BattleScript_EffectQuickAttack - .4byte BattleScript_EffectTripleKick - .4byte BattleScript_EffectThief - .4byte BattleScript_EffectMeanLook - .4byte BattleScript_EffectNightmare - .4byte BattleScript_EffectMinimize - .4byte BattleScript_EffectCurse - .4byte BattleScript_EffectUnused6e - .4byte BattleScript_EffectProtect - .4byte BattleScript_EffectSpikes - .4byte BattleScript_EffectForesight - .4byte BattleScript_EffectPerishSong - .4byte BattleScript_EffectSandstorm - .4byte BattleScript_EffectEndure - .4byte BattleScript_EffectRollout - .4byte BattleScript_EffectSwagger - .4byte BattleScript_EffectFuryCutter - .4byte BattleScript_EffectAttract - .4byte BattleScript_EffectReturn - .4byte BattleScript_EffectPresent - .4byte BattleScript_EffectFrustration - .4byte BattleScript_EffectSafeguard - .4byte BattleScript_EffectThawHit - .4byte BattleScript_EffectMagnitude - .4byte BattleScript_EffectBatonPass - .4byte BattleScript_EffectPursuit - .4byte BattleScript_EffectRapidSpin - .4byte BattleScript_EffectSonicboom - .4byte BattleScript_EffectUnused83 - .4byte BattleScript_EffectMorningSun - .4byte BattleScript_EffectSynthesis - .4byte BattleScript_EffectMoonlight - .4byte BattleScript_EffectHiddenPower - .4byte BattleScript_EffectRainDance - .4byte BattleScript_EffectSunnyDay - .4byte BattleScript_EffectDefenseUpHit - .4byte BattleScript_EffectAttackUpHit - .4byte BattleScript_EffectAllStatsUpHit - .4byte BattleScript_EffectUnused8d - .4byte BattleScript_EffectBellyDrum - .4byte BattleScript_EffectPsychUp - .4byte BattleScript_EffectMirrorCoat - .4byte BattleScript_EffectSkullBash - .4byte BattleScript_EffectTwister - .4byte BattleScript_EffectEarthquake - .4byte BattleScript_EffectFutureSight - .4byte BattleScript_EffectGust - .4byte BattleScript_EffectStomp - .4byte BattleScript_EffectSolarbeam - .4byte BattleScript_EffectThunder - .4byte BattleScript_EffectTeleport - .4byte BattleScript_EffectBeatUp - .4byte BattleScript_EffectSemiInvulnerable - .4byte BattleScript_EffectDefenseCurl - .4byte BattleScript_EffectSoftboiled - .4byte BattleScript_EffectFakeOut - .4byte BattleScript_EffectUproar - .4byte BattleScript_EffectStockpile - .4byte BattleScript_EffectSpitUp - .4byte BattleScript_EffectSwallow - .4byte BattleScript_EffectUnusedA3 - .4byte BattleScript_EffectHail - .4byte BattleScript_EffectTorment - .4byte BattleScript_EffectFlatter - .4byte BattleScript_EffectWillOWisp - .4byte BattleScript_EffectMemento - .4byte BattleScript_EffectFacade - .4byte BattleScript_EffectFocusPunch - .4byte BattleScript_EffectSmellingsalt - .4byte BattleScript_EffectFollowMe - .4byte BattleScript_EffectNaturePower - .4byte BattleScript_EffectCharge - .4byte BattleScript_EffectTaunt - .4byte BattleScript_EffectHelpingHand - .4byte BattleScript_EffectTrick - .4byte BattleScript_EffectRolePlay - .4byte BattleScript_EffectWish - .4byte BattleScript_EffectAssist - .4byte BattleScript_EffectIngrain - .4byte BattleScript_EffectSuperpower - .4byte BattleScript_EffectMagicCoat - .4byte BattleScript_EffectRecycle - .4byte BattleScript_EffectRevenge - .4byte BattleScript_EffectBrickBreak - .4byte BattleScript_EffectYawn - .4byte BattleScript_EffectKnockOff - .4byte BattleScript_EffectEndeavor - .4byte BattleScript_EffectEruption - .4byte BattleScript_EffectSkillSwap - .4byte BattleScript_EffectImprison - .4byte BattleScript_EffectRefresh - .4byte BattleScript_EffectGrudge - .4byte BattleScript_EffectSnatch - .4byte BattleScript_EffectLowKick - .4byte BattleScript_EffectSecretPower - .4byte BattleScript_EffectDoubleEdge - .4byte BattleScript_EffectTeeterDance - .4byte BattleScript_EffectBlazeKick - .4byte BattleScript_EffectMudSport - .4byte BattleScript_EffectPoisonFang - .4byte BattleScript_EffectWeatherBall - .4byte BattleScript_EffectOverheat - .4byte BattleScript_EffectTickle - .4byte BattleScript_EffectCosmicPower - .4byte BattleScript_EffectSkyUppercut - .4byte BattleScript_EffectBulkUp - .4byte BattleScript_EffectPoisonTail - .4byte BattleScript_EffectWaterSport - .4byte BattleScript_EffectCalmMind - .4byte BattleScript_EffectDragonDance - .4byte BattleScript_EffectCamouflage - -BattleScript_EffectSpeedUp:: -BattleScript_EffectSpecialDefenseUp:: -BattleScript_EffectAccuracyUp:: -BattleScript_EffectAlwaysHit:: -BattleScript_EffectSpecialAttackDown:: -BattleScript_EffectSpecialDefenseDown:: -BattleScript_EffectHighCritical:: -BattleScript_EffectAccuracyUp2:: -BattleScript_EffectEvasionUp2:: -BattleScript_EffectSpecialAttackDown2:: -BattleScript_EffectAccuracyDown2:: -BattleScript_EffectEvasionDown2:: -BattleScript_EffectEvasionDownHit:: -BattleScript_EffectVitalThrow:: -BattleScript_EffectUnused60:: -BattleScript_EffectFalseSwipe:: -BattleScript_EffectQuickAttack:: -BattleScript_EffectUnused6e:: -BattleScript_EffectPursuit:: -BattleScript_EffectUnused83:: -BattleScript_EffectUnused8d:: -BattleScript_EffectUnusedA3:: + .4byte BattleScript_EffectHit @ EFFECT_HIT + .4byte BattleScript_EffectSleep @ EFFECT_SLEEP + .4byte BattleScript_EffectPoisonHit @ EFFECT_POISON_HIT + .4byte BattleScript_EffectAbsorb @ EFFECT_ABSORB + .4byte BattleScript_EffectBurnHit @ EFFECT_BURN_HIT + .4byte BattleScript_EffectFreezeHit @ EFFECT_FREEZE_HIT + .4byte BattleScript_EffectParalyzeHit @ EFFECT_PARALYZE_HIT + .4byte BattleScript_EffectExplosion @ EFFECT_EXPLOSION + .4byte BattleScript_EffectDreamEater @ EFFECT_DREAM_EATER + .4byte BattleScript_EffectMirrorMove @ EFFECT_MIRROR_MOVE + .4byte BattleScript_EffectAttackUp @ EFFECT_ATTACK_UP + .4byte BattleScript_EffectDefenseUp @ EFFECT_DEFENSE_UP + .4byte BattleScript_EffectHit @ EFFECT_SPEED_UP + .4byte BattleScript_EffectSpecialAttackUp @ EFFECT_SPECIAL_ATTACK_UP + .4byte BattleScript_EffectHit @ EFFECT_SPECIAL_DEFENSE_UP + .4byte BattleScript_EffectHit @ EFFECT_ACCURACY_UP + .4byte BattleScript_EffectEvasionUp @ EFFECT_EVASION_UP + .4byte BattleScript_EffectHit @ EFFECT_ALWAYS_HIT + .4byte BattleScript_EffectAttackDown @ EFFECT_ATTACK_DOWN + .4byte BattleScript_EffectDefenseDown @ EFFECT_DEFENSE_DOWN + .4byte BattleScript_EffectSpeedDown @ EFFECT_SPEED_DOWN + .4byte BattleScript_EffectHit @ EFFECT_SPECIAL_ATTACK_DOWN + .4byte BattleScript_EffectHit @ EFFECT_SPECIAL_DEFENSE_DOWN + .4byte BattleScript_EffectAccuracyDown @ EFFECT_ACCURACY_DOWN + .4byte BattleScript_EffectEvasionDown @ EFFECT_EVASION_DOWN + .4byte BattleScript_EffectHaze @ EFFECT_HAZE + .4byte BattleScript_EffectBide @ EFFECT_BIDE + .4byte BattleScript_EffectRampage @ EFFECT_RAMPAGE + .4byte BattleScript_EffectRoar @ EFFECT_ROAR + .4byte BattleScript_EffectMultiHit @ EFFECT_MULTI_HIT + .4byte BattleScript_EffectConversion @ EFFECT_CONVERSION + .4byte BattleScript_EffectFlinchHit @ EFFECT_FLINCH_HIT + .4byte BattleScript_EffectRestoreHp @ EFFECT_RESTORE_HP + .4byte BattleScript_EffectToxic @ EFFECT_TOXIC + .4byte BattleScript_EffectPayDay @ EFFECT_PAY_DAY + .4byte BattleScript_EffectLightScreen @ EFFECT_LIGHT_SCREEN + .4byte BattleScript_EffectTriAttack @ EFFECT_TRI_ATTACK + .4byte BattleScript_EffectRest @ EFFECT_REST + .4byte BattleScript_EffectOHKO @ EFFECT_OHKO + .4byte BattleScript_EffectRazorWind @ EFFECT_RAZOR_WIND + .4byte BattleScript_EffectSuperFang @ EFFECT_SUPER_FANG + .4byte BattleScript_EffectDragonRage @ EFFECT_DRAGON_RAGE + .4byte BattleScript_EffectTrap @ EFFECT_TRAP + .4byte BattleScript_EffectHit @ EFFECT_HIGH_CRITICAL + .4byte BattleScript_EffectDoubleHit @ EFFECT_DOUBLE_HIT + .4byte BattleScript_EffectRecoilIfMiss @ EFFECT_RECOIL_IF_MISS + .4byte BattleScript_EffectMist @ EFFECT_MIST + .4byte BattleScript_EffectFocusEnergy @ EFFECT_FOCUS_ENERGY + .4byte BattleScript_EffectRecoil @ EFFECT_RECOIL + .4byte BattleScript_EffectConfuse @ EFFECT_CONFUSE + .4byte BattleScript_EffectAttackUp2 @ EFFECT_ATTACK_UP_2 + .4byte BattleScript_EffectDefenseUp2 @ EFFECT_DEFENSE_UP_2 + .4byte BattleScript_EffectSpeedUp2 @ EFFECT_SPEED_UP_2 + .4byte BattleScript_EffectSpecialAttackUp2 @ EFFECT_SPECIAL_ATTACK_UP_2 + .4byte BattleScript_EffectSpecialDefenseUp2 @ EFFECT_SPECIAL_DEFENSE_UP_2 + .4byte BattleScript_EffectHit @ EFFECT_ACCURACY_UP_2 + .4byte BattleScript_EffectHit @ EFFECT_EVASION_UP_2 + .4byte BattleScript_EffectTransform @ EFFECT_TRANSFORM + .4byte BattleScript_EffectAttackDown2 @ EFFECT_ATTACK_DOWN_2 + .4byte BattleScript_EffectDefenseDown2 @ EFFECT_DEFENSE_DOWN_2 + .4byte BattleScript_EffectSpeedDown2 @ EFFECT_SPEED_DOWN_2 + .4byte BattleScript_EffectHit @ EFFECT_SPECIAL_ATTACK_DOWN_2 + .4byte BattleScript_EffectSpecialDefenseDown2 @ EFFECT_SPECIAL_DEFENSE_DOWN_2 + .4byte BattleScript_EffectHit @ EFFECT_ACCURACY_DOWN_2 + .4byte BattleScript_EffectHit @ EFFECT_EVASION_DOWN_2 + .4byte BattleScript_EffectReflect @ EFFECT_REFLECT + .4byte BattleScript_EffectPoison @ EFFECT_POISON + .4byte BattleScript_EffectParalyze @ EFFECT_PARALYZE + .4byte BattleScript_EffectAttackDownHit @ EFFECT_ATTACK_DOWN_HIT + .4byte BattleScript_EffectDefenseDownHit @ EFFECT_DEFENSE_DOWN_HIT + .4byte BattleScript_EffectSpeedDownHit @ EFFECT_SPEED_DOWN_HIT + .4byte BattleScript_EffectSpecialAttackDownHit @ EFFECT_SPECIAL_ATTACK_DOWN_HIT + .4byte BattleScript_EffectSpecialDefenseDownHit @ EFFECT_SPECIAL_DEFENSE_DOWN_HIT + .4byte BattleScript_EffectAccuracyDownHit @ EFFECT_ACCURACY_DOWN_HIT + .4byte BattleScript_EffectHit @ EFFECT_EVASION_DOWN_HIT + .4byte BattleScript_EffectSkyAttack @ EFFECT_SKY_ATTACK + .4byte BattleScript_EffectConfuseHit @ EFFECT_CONFUSE_HIT + .4byte BattleScript_EffectTwineedle @ EFFECT_TWINEEDLE + .4byte BattleScript_EffectHit @ EFFECT_VITAL_THROW + .4byte BattleScript_EffectSubstitute @ EFFECT_SUBSTITUTE + .4byte BattleScript_EffectRecharge @ EFFECT_RECHARGE + .4byte BattleScript_EffectRage @ EFFECT_RAGE + .4byte BattleScript_EffectMimic @ EFFECT_MIMIC + .4byte BattleScript_EffectMetronome @ EFFECT_METRONOME + .4byte BattleScript_EffectLeechSeed @ EFFECT_LEECH_SEED + .4byte BattleScript_EffectSplash @ EFFECT_SPLASH + .4byte BattleScript_EffectDisable @ EFFECT_DISABLE + .4byte BattleScript_EffectLevelDamage @ EFFECT_LEVEL_DAMAGE + .4byte BattleScript_EffectPsywave @ EFFECT_PSYWAVE + .4byte BattleScript_EffectCounter @ EFFECT_COUNTER + .4byte BattleScript_EffectEncore @ EFFECT_ENCORE + .4byte BattleScript_EffectPainSplit @ EFFECT_PAIN_SPLIT + .4byte BattleScript_EffectSnore @ EFFECT_SNORE + .4byte BattleScript_EffectConversion2 @ EFFECT_CONVERSION_2 + .4byte BattleScript_EffectLockOn @ EFFECT_LOCK_ON + .4byte BattleScript_EffectSketch @ EFFECT_SKETCH + .4byte BattleScript_EffectHit @ EFFECT_UNUSED_60 + .4byte BattleScript_EffectSleepTalk @ EFFECT_SLEEP_TALK + .4byte BattleScript_EffectDestinyBond @ EFFECT_DESTINY_BOND + .4byte BattleScript_EffectFlail @ EFFECT_FLAIL + .4byte BattleScript_EffectSpite @ EFFECT_SPITE + .4byte BattleScript_EffectHit @ EFFECT_FALSE_SWIPE + .4byte BattleScript_EffectHealBell @ EFFECT_HEAL_BELL + .4byte BattleScript_EffectHit @ EFFECT_QUICK_ATTACK + .4byte BattleScript_EffectTripleKick @ EFFECT_TRIPLE_KICK + .4byte BattleScript_EffectThief @ EFFECT_THIEF + .4byte BattleScript_EffectMeanLook @ EFFECT_MEAN_LOOK + .4byte BattleScript_EffectNightmare @ EFFECT_NIGHTMARE + .4byte BattleScript_EffectMinimize @ EFFECT_MINIMIZE + .4byte BattleScript_EffectCurse @ EFFECT_CURSE + .4byte BattleScript_EffectHit @ EFFECT_UNUSED_6E + .4byte BattleScript_EffectProtect @ EFFECT_PROTECT + .4byte BattleScript_EffectSpikes @ EFFECT_SPIKES + .4byte BattleScript_EffectForesight @ EFFECT_FORESIGHT + .4byte BattleScript_EffectPerishSong @ EFFECT_PERISH_SONG + .4byte BattleScript_EffectSandstorm @ EFFECT_SANDSTORM + .4byte BattleScript_EffectEndure @ EFFECT_ENDURE + .4byte BattleScript_EffectRollout @ EFFECT_ROLLOUT + .4byte BattleScript_EffectSwagger @ EFFECT_SWAGGER + .4byte BattleScript_EffectFuryCutter @ EFFECT_FURY_CUTTER + .4byte BattleScript_EffectAttract @ EFFECT_ATTRACT + .4byte BattleScript_EffectReturn @ EFFECT_RETURN + .4byte BattleScript_EffectPresent @ EFFECT_PRESENT + .4byte BattleScript_EffectFrustration @ EFFECT_FRUSTRATION + .4byte BattleScript_EffectSafeguard @ EFFECT_SAFEGUARD + .4byte BattleScript_EffectThawHit @ EFFECT_THAW_HIT + .4byte BattleScript_EffectMagnitude @ EFFECT_MAGNITUDE + .4byte BattleScript_EffectBatonPass @ EFFECT_BATON_PASS + .4byte BattleScript_EffectHit @ EFFECT_PURSUIT + .4byte BattleScript_EffectRapidSpin @ EFFECT_RAPID_SPIN + .4byte BattleScript_EffectSonicboom @ EFFECT_SONICBOOM + .4byte BattleScript_EffectHit @ EFFECT_UNUSED_83 + .4byte BattleScript_EffectMorningSun @ EFFECT_MORNING_SUN + .4byte BattleScript_EffectSynthesis @ EFFECT_SYNTHESIS + .4byte BattleScript_EffectMoonlight @ EFFECT_MOONLIGHT + .4byte BattleScript_EffectHiddenPower @ EFFECT_HIDDEN_POWER + .4byte BattleScript_EffectRainDance @ EFFECT_RAIN_DANCE + .4byte BattleScript_EffectSunnyDay @ EFFECT_SUNNY_DAY + .4byte BattleScript_EffectDefenseUpHit @ EFFECT_DEFENSE_UP_HIT + .4byte BattleScript_EffectAttackUpHit @ EFFECT_ATTACK_UP_HIT + .4byte BattleScript_EffectAllStatsUpHit @ EFFECT_ALL_STATS_UP_HIT + .4byte BattleScript_EffectHit @ EFFECT_UNUSED_8D + .4byte BattleScript_EffectBellyDrum @ EFFECT_BELLY_DRUM + .4byte BattleScript_EffectPsychUp @ EFFECT_PSYCH_UP + .4byte BattleScript_EffectMirrorCoat @ EFFECT_MIRROR_COAT + .4byte BattleScript_EffectSkullBash @ EFFECT_SKULL_BASH + .4byte BattleScript_EffectTwister @ EFFECT_TWISTER + .4byte BattleScript_EffectEarthquake @ EFFECT_EARTHQUAKE + .4byte BattleScript_EffectFutureSight @ EFFECT_FUTURE_SIGHT + .4byte BattleScript_EffectGust @ EFFECT_GUST + .4byte BattleScript_EffectStomp @ EFFECT_FLINCH_MINIMIZE_HIT + .4byte BattleScript_EffectSolarbeam @ EFFECT_SOLARBEAM + .4byte BattleScript_EffectThunder @ EFFECT_THUNDER + .4byte BattleScript_EffectTeleport @ EFFECT_TELEPORT + .4byte BattleScript_EffectBeatUp @ EFFECT_BEAT_UP + .4byte BattleScript_EffectSemiInvulnerable @ EFFECT_SEMI_INVULNERABLE + .4byte BattleScript_EffectDefenseCurl @ EFFECT_DEFENSE_CURL + .4byte BattleScript_EffectSoftboiled @ EFFECT_SOFTBOILED + .4byte BattleScript_EffectFakeOut @ EFFECT_FAKE_OUT + .4byte BattleScript_EffectUproar @ EFFECT_UPROAR + .4byte BattleScript_EffectStockpile @ EFFECT_STOCKPILE + .4byte BattleScript_EffectSpitUp @ EFFECT_SPIT_UP + .4byte BattleScript_EffectSwallow @ EFFECT_SWALLOW + .4byte BattleScript_EffectHit @ EFFECT_UNUSED_A3 + .4byte BattleScript_EffectHail @ EFFECT_HAIL + .4byte BattleScript_EffectTorment @ EFFECT_TORMENT + .4byte BattleScript_EffectFlatter @ EFFECT_FLATTER + .4byte BattleScript_EffectWillOWisp @ EFFECT_WILL_O_WISP + .4byte BattleScript_EffectMemento @ EFFECT_MEMENTO + .4byte BattleScript_EffectFacade @ EFFECT_FACADE + .4byte BattleScript_EffectFocusPunch @ EFFECT_FOCUS_PUNCH + .4byte BattleScript_EffectSmellingsalt @ EFFECT_SMELLINGSALT + .4byte BattleScript_EffectFollowMe @ EFFECT_FOLLOW_ME + .4byte BattleScript_EffectNaturePower @ EFFECT_NATURE_POWER + .4byte BattleScript_EffectCharge @ EFFECT_CHARGE + .4byte BattleScript_EffectTaunt @ EFFECT_TAUNT + .4byte BattleScript_EffectHelpingHand @ EFFECT_HELPING_HAND + .4byte BattleScript_EffectTrick @ EFFECT_TRICK + .4byte BattleScript_EffectRolePlay @ EFFECT_ROLE_PLAY + .4byte BattleScript_EffectWish @ EFFECT_WISH + .4byte BattleScript_EffectAssist @ EFFECT_ASSIST + .4byte BattleScript_EffectIngrain @ EFFECT_INGRAIN + .4byte BattleScript_EffectSuperpower @ EFFECT_SUPERPOWER + .4byte BattleScript_EffectMagicCoat @ EFFECT_MAGIC_COAT + .4byte BattleScript_EffectRecycle @ EFFECT_RECYCLE + .4byte BattleScript_EffectRevenge @ EFFECT_REVENGE + .4byte BattleScript_EffectBrickBreak @ EFFECT_BRICK_BREAK + .4byte BattleScript_EffectYawn @ EFFECT_YAWN + .4byte BattleScript_EffectKnockOff @ EFFECT_KNOCK_OFF + .4byte BattleScript_EffectEndeavor @ EFFECT_ENDEAVOR + .4byte BattleScript_EffectEruption @ EFFECT_ERUPTION + .4byte BattleScript_EffectSkillSwap @ EFFECT_SKILL_SWAP + .4byte BattleScript_EffectImprison @ EFFECT_IMPRISON + .4byte BattleScript_EffectRefresh @ EFFECT_REFRESH + .4byte BattleScript_EffectGrudge @ EFFECT_GRUDGE + .4byte BattleScript_EffectSnatch @ EFFECT_SNATCH + .4byte BattleScript_EffectLowKick @ EFFECT_LOW_KICK + .4byte BattleScript_EffectSecretPower @ EFFECT_SECRET_POWER + .4byte BattleScript_EffectDoubleEdge @ EFFECT_DOUBLE_EDGE + .4byte BattleScript_EffectTeeterDance @ EFFECT_TEETER_DANCE + .4byte BattleScript_EffectBurnHit @ EFFECT_BLAZE_KICK + .4byte BattleScript_EffectMudSport @ EFFECT_MUD_SPORT + .4byte BattleScript_EffectPoisonFang @ EFFECT_POISON_FANG + .4byte BattleScript_EffectWeatherBall @ EFFECT_WEATHER_BALL + .4byte BattleScript_EffectOverheat @ EFFECT_OVERHEAT + .4byte BattleScript_EffectTickle @ EFFECT_TICKLE + .4byte BattleScript_EffectCosmicPower @ EFFECT_COSMIC_POWER + .4byte BattleScript_EffectSkyUppercut @ EFFECT_SKY_UPPERCUT + .4byte BattleScript_EffectBulkUp @ EFFECT_BULK_UP + .4byte BattleScript_EffectPoisonHit @ EFFECT_POISON_TAIL + .4byte BattleScript_EffectWaterSport @ EFFECT_WATER_SPORT + .4byte BattleScript_EffectCalmMind @ EFFECT_CALM_MIND + .4byte BattleScript_EffectDragonDance @ EFFECT_DRAGON_DANCE + .4byte BattleScript_EffectCamouflage @ EFFECT_CAMOUFLAGE + BattleScript_EffectHit:: jumpifnotmove MOVE_SURF, BattleScript_HitFromAtkCanceler jumpifnostatus3 BS_TARGET, STATUS3_UNDERWATER, BattleScript_HitFromAtkCanceler @@ -338,7 +316,6 @@ BattleScript_CantMakeAsleep:: goto BattleScript_MoveEnd BattleScript_EffectPoisonHit:: -BattleScript_EffectPoisonTail:: setmoveeffect MOVE_EFFECT_POISON goto BattleScript_EffectHit @@ -382,7 +359,6 @@ BattleScript_AbsorbTryFainting:: goto BattleScript_MoveEnd BattleScript_EffectBurnHit:: -BattleScript_EffectBlazeKick:: setmoveeffect MOVE_EFFECT_BURN goto BattleScript_EffectHit From 43c5107e4d7cd9eda386253906a5939fe4226bf6 Mon Sep 17 00:00:00 2001 From: SnorlaxMonster Date: Sat, 3 Jul 2021 22:38:22 +1000 Subject: [PATCH 233/762] Correct card lines in Battle Dome comments The comments regarding the lines that Trainer information is displayed on the Battle Dome Trainer Card were off-by-one. --- src/battle_dome.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/battle_dome.c b/src/battle_dome.c index 59e418a06594..ea1e5abba5a9 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -1211,8 +1211,8 @@ static const u8 gUnknown_0860D1A0[DOME_TOURNAMENT_TRAINERS_COUNT / 2][DOME_ROUND static const u8 gUnknown_0860D1C0[DOME_TOURNAMENT_TRAINERS_COUNT] = {0, 15, 8, 7, 3, 12, 11, 4, 1, 14, 9, 6, 2, 13, 10, 5}; -// Each tourney trainer has a text describing their potential to win, depending on their seed ranking for the current tourney -// Dome Ace Tucker has their own separate potential text +// The first line of text on a trainers info card. It describes their potential to win, based on their seed in the tournament tree. +// Dome Ace Tucker has their own separate potential text. static const u8 *const sBattleDomePotentialTexts[DOME_TOURNAMENT_TRAINERS_COUNT + 1] = { BattleDome_Text_Potential1, // Highest potential @@ -1234,7 +1234,7 @@ static const u8 *const sBattleDomePotentialTexts[DOME_TOURNAMENT_TRAINERS_COUNT BattleDome_Text_PotentialDomeAceTucker, }; -// The first line of text on a trainers info card that gives information about their battle style (dependent on their party's moves) +// The second line of text on a trainers info card. It gives information about their battle style (dependent on their party's moves). static const u8 *const sBattleDomeOpponentStyleTexts[NUM_BATTLE_STYLES] = { [DOME_BATTLE_STYLE_RISKY] = BattleDome_Text_StyleRiskDisaster, @@ -1271,7 +1271,7 @@ static const u8 *const sBattleDomeOpponentStyleTexts[NUM_BATTLE_STYLES] = [DOME_BATTLE_STYLE_UNUSED4] = BattleDome_Text_StyleSampleMessage4, }; -// The second line of text on a trainers info card that gives information about their party's stat spread +// The third line of text on a trainers info card. It that gives information about their party's stat spread (based on their Pokémon's effort values and Nature). static const u8 *const sBattleDomeOpponentStatsTexts[] = { BattleDome_Text_EmphasizesHPAndAtk, // DOME_TEXT_TWO_GOOD_STATS and DOME_TEXT_HP start here From 42730a8315be6abceeb95bc1cd29f4c54077bd2e Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 3 Jul 2021 17:39:33 -0400 Subject: [PATCH 234/762] Revert "remove gflib" This reverts commit 8b59909ac5eb6e3540aeb78396943d57a9702e4d. --- Makefile | 38 +++++++++++++++++++++++++++++--- {src => gflib}/bg.c | 0 {include => gflib}/bg.h | 0 {src => gflib}/blit.c | 0 {include => gflib}/blit.h | 0 {include => gflib}/dma3.h | 0 {src => gflib}/dma3_manager.c | 0 {src => gflib}/gpu_regs.c | 0 {include => gflib}/gpu_regs.h | 0 {src => gflib}/io_reg.c | 0 {include => gflib}/io_reg.h | 0 {src => gflib}/malloc.c | 0 {include => gflib}/malloc.h | 0 {src => gflib}/sprite.c | 0 {include => gflib}/sprite.h | 0 {src => gflib}/string_util.c | 0 {include => gflib}/string_util.h | 0 {src => gflib}/text.c | 0 {include => gflib}/text.h | 0 {src => gflib}/window.c | 0 {include => gflib}/window.h | 0 ld_script.txt | 30 ++++++++++++------------- ld_script_modern.txt | 5 +++++ sym_bss.txt | 12 +++++----- sym_common.txt | 8 +++---- sym_ewram.txt | 8 +++---- 26 files changed, 69 insertions(+), 32 deletions(-) rename {src => gflib}/bg.c (100%) rename {include => gflib}/bg.h (100%) rename {src => gflib}/blit.c (100%) rename {include => gflib}/blit.h (100%) rename {include => gflib}/dma3.h (100%) rename {src => gflib}/dma3_manager.c (100%) rename {src => gflib}/gpu_regs.c (100%) rename {include => gflib}/gpu_regs.h (100%) rename {src => gflib}/io_reg.c (100%) rename {include => gflib}/io_reg.h (100%) rename {src => gflib}/malloc.c (100%) rename {include => gflib}/malloc.h (100%) rename {src => gflib}/sprite.c (100%) rename {include => gflib}/sprite.h (100%) rename {src => gflib}/string_util.c (100%) rename {include => gflib}/string_util.h (100%) rename {src => gflib}/text.c (100%) rename {include => gflib}/text.h (100%) rename {src => gflib}/window.c (100%) rename {include => gflib}/window.h (100%) diff --git a/Makefile b/Makefile index 95d6328ef599..d7d4b9566cdf 100644 --- a/Makefile +++ b/Makefile @@ -77,6 +77,7 @@ ELF = $(ROM:.gba=.elf) MAP = $(ROM:.gba=.map) C_SUBDIR = src +GFLIB_SUBDIR = gflib ASM_SUBDIR = asm DATA_SRC_SUBDIR = src/data DATA_ASM_SUBDIR = data @@ -86,6 +87,7 @@ 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) @@ -109,7 +111,7 @@ LIBPATH := -L "$(dir $(shell $(MODERNCC) -mthumb -print-file-name=libgcc.a))" -L LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall endif -CPPFLAGS := -iquote include -Wno-trigraphs -DMODERN=$(MODERN) +CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN) ifneq ($(MODERN),1) CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef endif @@ -175,6 +177,9 @@ 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_OBJS := $(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o,$(C_ASM_SRCS)) @@ -193,7 +198,7 @@ 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) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS) +OBJS := $(C_OBJS) $(GFLIB_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS) OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS)) SUBDIRS := $(sort $(dir $(OBJS))) @@ -311,7 +316,7 @@ else endif else define C_DEP -$1: $2 $$(shell $(SCANINC) -I include -I tools/agbcc/include $2) +$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 $$@ - @@ -325,6 +330,33 @@ endef $(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(src)),$(src),$(patsubst $(C_SUBDIR)/%.c,%,$(src))))) 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 $@ diff --git a/src/bg.c b/gflib/bg.c similarity index 100% rename from src/bg.c rename to gflib/bg.c diff --git a/include/bg.h b/gflib/bg.h similarity index 100% rename from include/bg.h rename to gflib/bg.h diff --git a/src/blit.c b/gflib/blit.c similarity index 100% rename from src/blit.c rename to gflib/blit.c diff --git a/include/blit.h b/gflib/blit.h similarity index 100% rename from include/blit.h rename to gflib/blit.h diff --git a/include/dma3.h b/gflib/dma3.h similarity index 100% rename from include/dma3.h rename to gflib/dma3.h diff --git a/src/dma3_manager.c b/gflib/dma3_manager.c similarity index 100% rename from src/dma3_manager.c rename to gflib/dma3_manager.c diff --git a/src/gpu_regs.c b/gflib/gpu_regs.c similarity index 100% rename from src/gpu_regs.c rename to gflib/gpu_regs.c diff --git a/include/gpu_regs.h b/gflib/gpu_regs.h similarity index 100% rename from include/gpu_regs.h rename to gflib/gpu_regs.h diff --git a/src/io_reg.c b/gflib/io_reg.c similarity index 100% rename from src/io_reg.c rename to gflib/io_reg.c diff --git a/include/io_reg.h b/gflib/io_reg.h similarity index 100% rename from include/io_reg.h rename to gflib/io_reg.h diff --git a/src/malloc.c b/gflib/malloc.c similarity index 100% rename from src/malloc.c rename to gflib/malloc.c diff --git a/include/malloc.h b/gflib/malloc.h similarity index 100% rename from include/malloc.h rename to gflib/malloc.h diff --git a/src/sprite.c b/gflib/sprite.c similarity index 100% rename from src/sprite.c rename to gflib/sprite.c diff --git a/include/sprite.h b/gflib/sprite.h similarity index 100% rename from include/sprite.h rename to gflib/sprite.h diff --git a/src/string_util.c b/gflib/string_util.c similarity index 100% rename from src/string_util.c rename to gflib/string_util.c diff --git a/include/string_util.h b/gflib/string_util.h similarity index 100% rename from include/string_util.h rename to gflib/string_util.h diff --git a/src/text.c b/gflib/text.c similarity index 100% rename from src/text.c rename to gflib/text.c diff --git a/include/text.h b/gflib/text.h similarity index 100% rename from include/text.h rename to gflib/text.h diff --git a/src/window.c b/gflib/window.c similarity index 100% rename from src/window.c rename to gflib/window.c diff --git a/include/window.h b/gflib/window.h similarity index 100% rename from include/window.h rename to gflib/window.h diff --git a/ld_script.txt b/ld_script.txt index 5770b2cea6fa..8c8f19015eb3 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -49,15 +49,15 @@ SECTIONS { { src/crt0.o(.text); src/main.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); + 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/link.o(.text); src/AgbRfu_LinkManager.o(.text); src/link_rfu_3.o(.text); @@ -436,12 +436,12 @@ SECTIONS { ALIGN(4) { src/main.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); + 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/link.o(.rodata); src/link.o(.rodata.str1.4); src/AgbRfu_LinkManager.o(.rodata); diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 72fb4dbc5c25..59d032bb2504 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -14,6 +14,7 @@ SECTIONS { . = 0x1C000; src/*.o(ewram_data); + gflib/*.o(ewram_data); . = 0x40000; } @@ -25,6 +26,7 @@ SECTIONS { { /* .bss starts at 0x3000000 */ src/*.o(.bss); + gflib/*.o(.bss); *libc.a:*.o(.bss*); *libnosys.a:*.o(.bss*); @@ -33,6 +35,7 @@ SECTIONS { /* COMMON starts at 0x30022A8 */ src/*.o(COMMON); + gflib/*.o(COMMON); *libc.a:*.o(COMMON); *libnosys.a:*.o(COMMON); end = .; @@ -46,6 +49,7 @@ SECTIONS { { src/crt0.o(.text*); src/*.o(.text*); + gflib/*.o(.text*); asm/*.o(.text*); } =0 @@ -80,6 +84,7 @@ SECTIONS { ALIGN(4) { src/*.o(.rodata*); + gflib/*.o(.rodata*); data/*.o(.rodata*); } =0 diff --git a/sym_bss.txt b/sym_bss.txt index 7bdf99dd510d..3166aee4552d 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -1,10 +1,10 @@ .include "src/main.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 "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/link.o" .include "src/AgbRfu_LinkManager.o" .include "src/link_rfu_3.o" diff --git a/sym_common.txt b/sym_common.txt index 23a185e6f14a..1525d8aec8cd 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -1,17 +1,17 @@ .space 0x8 .include "main.o" - @ bg.o + @ ../gflib/bg.o .align 2 gUnneededFireRedVariable: .space 4 - @ window.o + @ ../gflib/window.o .align 4 gTransparentTileNumber: .space 1 .align 4 gWindowBgTilemapBuffers: .space 16 - @ text.o + @ ../gflib/text.o .align 4 gFonts: .space 4 @@ -24,7 +24,7 @@ gCurGlyph: .align 2 gTextFlags: .space 4 - @ sprite.o + @ ../gflib/sprite.o .align 2 gOamMatrixAllocBitmap: .space 4 diff --git a/sym_ewram.txt b/sym_ewram.txt index f461cfa10cdf..88c4461cb0d2 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -1,9 +1,9 @@ .include "src/decompress.o" .include "src/main.o" - .include "src/window.o" - .include "src/text.o" - .include "src/sprite.o" - .include "src/string_util.o" + .include "gflib/window.o" + .include "gflib/text.o" + .include "gflib/sprite.o" + .include "gflib/string_util.o" .include "src/link.o" .include "src/AgbRfu_LinkManager.o" .include "src/link_rfu_3.o" From 0f538102d9f1327cb699261bde969c89e02b3503 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 5 Jul 2021 13:54:43 -0400 Subject: [PATCH 235/762] Add local id constants for C --- .../scripts.inc | 2 +- .../scripts.inc | 2 ++ data/maps/BirthIsland_Exterior/scripts.inc | 9 ++--- data/maps/FarawayIsland_Interior/scripts.inc | 22 ++++++------- data/maps/Route111/scripts.inc | 2 +- data/maps/UnionRoom/scripts.inc | 25 +++++--------- include/constants/event_objects.h | 26 +++++++++++++++ src/faraway_island.c | 2 +- src/field_special_scene.c | 30 ++++++++--------- src/field_specials.c | 32 +++++++++--------- src/tv.c | 3 +- src/union_room_player_avatar.c | 33 ++++++++++++------- 12 files changed, 110 insertions(+), 78 deletions(-) diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index b01d5314bb63..f9cc466a265e 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -563,7 +563,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience:: @ 824C594 createvobject OBJ_EVENT_GFX_HEX_MANIAC, 28, 5, 2, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 6, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, 1 + createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, DIR_SOUTH return BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience:: @ 824C652 diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index 465b04f78d76..5bc18e000882 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -3,6 +3,8 @@ .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:: @ 823E67B map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleTowerLobby_OnResume map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerLobby_OnTransition diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index c20de3798275..3509e0326ed5 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -1,6 +1,7 @@ -.set LOCALID_DEOXYS_ROCK, 1 .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:: @ 8267F15 map_script MAP_SCRIPT_ON_TRANSITION, BirthIsland_Exterior_OnTransition map_script MAP_SCRIPT_ON_RESUME, BirthIsland_Exterior_OnResume @@ -68,9 +69,9 @@ BirthIsland_Exterior_EventScript_NotSolved3:: @ 8267FBF BirthIsland_Exterior_EventScript_Deoxys:: @ 8267FC1 waitse - setfieldeffectargument 0, LOCALID_DEOXYS_ROCK - setfieldeffectargument 1, 58 - setfieldeffectargument 2, 26 + setfieldeffectargument 0, LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK + setfieldeffectargument 1, MAP_NUM(BIRTH_ISLAND_EXTERIOR) + setfieldeffectargument 2, MAP_GROUP(BIRTH_ISLAND_EXTERIOR) dofieldeffect FLDEFF_DESTROY_DEOXYS_ROCK playbgm MUS_RG_ENCOUNTER_DEOXYS, 0 waitfieldeffect FLDEFF_DESTROY_DEOXYS_ROCK diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index 108bc12e66cc..59a90e357855 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -1,4 +1,4 @@ -.set LOCALID_MEW, 1 +@ Note: LOCALID_FARAWAY_ISLAND_MEW is a local id for this map used elsewhere. It's defined in event_objects.h FarawayIsland_Interior_MapScripts:: @ 8267CFA map_script MAP_SCRIPT_ON_RESUME, FarawayIsland_Interior_OnResume @@ -58,13 +58,13 @@ FarawayIsland_Interior_OnFrame: @ 8267D98 FarawayIsland_Interior_EventScript_FindMew:: @ 8267DA2 lockall playse SE_PIN - applymovement LOCALID_MEW, Common_Movement_ExclamationMark + applymovement LOCALID_FARAWAY_ISLAND_MEW, Common_Movement_ExclamationMark waitmovement 0 - applymovement LOCALID_MEW, Common_Movement_Delay48 + applymovement LOCALID_FARAWAY_ISLAND_MEW, Common_Movement_Delay48 waitmovement 0 - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewMoveAndHide + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewMoveAndHide waitmovement 0 - copyobjectxytoperm LOCALID_MEW + copyobjectxytoperm LOCALID_FARAWAY_ISLAND_MEW setvar VAR_TEMP_1, 1 releaseall end @@ -120,7 +120,7 @@ FarawayIsland_Interior_Movement_MewFloatUpEast: @ 8267DEB FarawayIsland_Interior_EventScript_Mew:: @ 8267DF2 lock faceplayer - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewAppear + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewAppear waitmovement 0 setvar VAR_0x8004, 0 special SetMewAboveGrass @@ -171,22 +171,22 @@ FarawayIsland_Interior_EventScript_PlayerOrMewRan:: @ 8267EA4 end FarawayIsland_Interior_EventScript_FoundMewNorth:: @ 8267EAF - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewFloatUpNorth + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpNorth waitmovement 0 return FarawayIsland_Interior_EventScript_FoundMewSouth:: @ 8267EBA - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewFloatUpSouth + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpSouth waitmovement 0 return FarawayIsland_Interior_EventScript_FoundMewWest:: @ 8267EC5 - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewFloatUpWest + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpWest waitmovement 0 return FarawayIsland_Interior_EventScript_FoundMewEast:: @ 8267ED0 - applymovement LOCALID_MEW, FarawayIsland_Interior_Movement_MewFloatUpEast + applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpEast waitmovement 0 return @@ -194,7 +194,7 @@ FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: @ 8267EDB lockall fadescreenswapbuffers FADE_TO_BLACK setflag FLAG_HIDE_MEW - removeobject LOCALID_MEW + removeobject LOCALID_FARAWAY_ISLAND_MEW fadescreenswapbuffers FADE_FROM_BLACK msgbox FarawayIsland_Interior_Text_TheFeelingOfBeingWatchedFaded, MSGBOX_DEFAULT closemessage diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 9e6e4c8eb77d..428011645e35 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -4,7 +4,7 @@ .set LOCALID_VICKY, 4 .set LOCALID_ROCK_SMASH_MAN, 46 -@ Note: LOCALID_ROUTE111_PLAYER_FALLING is used in mirage_tower.c, and is defined in event_objects.h +@ Note: LOCALID_ROUTE111_PLAYER_FALLING is a local id for this map used elsewhere. It's defined in event_objects.h Route111_MapScripts:: @ 81F0CA7 map_script MAP_SCRIPT_ON_LOAD, Route111_OnLoad diff --git a/data/maps/UnionRoom/scripts.inc b/data/maps/UnionRoom/scripts.inc index f25e7acb6849..13d7e1007900 100644 --- a/data/maps/UnionRoom/scripts.inc +++ b/data/maps/UnionRoom/scripts.inc @@ -1,11 +1,4 @@ -.set LOCALID_UR_PLAYER_4, 2 -.set LOCALID_UR_PLAYER_8, 3 -.set LOCALID_UR_PLAYER_7, 4 -.set LOCALID_UR_PLAYER_6, 5 -.set LOCALID_UR_PLAYER_5, 6 -.set LOCALID_UR_PLAYER_3, 7 -.set LOCALID_UR_PLAYER_2, 8 -.set LOCALID_UR_PLAYER_1, 9 +@ Note: LOCALID_UNION_ROOM_PLAYER_# are local ids for this map used elsewhere. They're defined in event_objects.h UnionRoom_MapScripts:: @ 823D1A6 map_script MAP_SCRIPT_ON_RESUME, UnionRoom_OnResume @@ -21,14 +14,14 @@ UnionRoom_OnResume: @ 823D1B1 setflag FLAG_HIDE_UNION_ROOM_PLAYER_6 setflag FLAG_HIDE_UNION_ROOM_PLAYER_7 setflag FLAG_HIDE_UNION_ROOM_PLAYER_8 - removeobject LOCALID_UR_PLAYER_1 - removeobject LOCALID_UR_PLAYER_2 - removeobject LOCALID_UR_PLAYER_3 - removeobject LOCALID_UR_PLAYER_4 - removeobject LOCALID_UR_PLAYER_5 - removeobject LOCALID_UR_PLAYER_6 - removeobject LOCALID_UR_PLAYER_7 - removeobject LOCALID_UR_PLAYER_8 + removeobject LOCALID_UNION_ROOM_PLAYER_1 + removeobject LOCALID_UNION_ROOM_PLAYER_2 + removeobject LOCALID_UNION_ROOM_PLAYER_3 + removeobject LOCALID_UNION_ROOM_PLAYER_4 + removeobject LOCALID_UNION_ROOM_PLAYER_5 + removeobject LOCALID_UNION_ROOM_PLAYER_6 + removeobject LOCALID_UNION_ROOM_PLAYER_7 + removeobject LOCALID_UNION_ROOM_PLAYER_8 special RunUnionRoom end diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 357251548014..1958c792e16a 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -285,5 +285,31 @@ // 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 #endif // GUARD_CONSTANTS_EVENT_OBJECTS_H diff --git a/src/faraway_island.c b/src/faraway_island.c index bc08146523ea..51ab8def4434 100755 --- a/src/faraway_island.c +++ b/src/faraway_island.c @@ -38,7 +38,7 @@ static const s16 sFarawayIslandRockCoords[4][2] = static u8 GetMewObjectEventId(void) { u8 objectEventId; - TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); + TryGetObjectEventIdByLocalIdAndMap(LOCALID_FARAWAY_ISLAND_MEW, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); return objectEventId; } diff --git a/src/field_special_scene.c b/src/field_special_scene.c index 6b41c542378e..3c7016bd1b6e 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -72,12 +72,12 @@ void Task_Truck1(u8 taskId) s16 cameraXpan = 0, cameraYpan = 0; s16 box1, box2, box3; - box1 = GetTruckBoxMovement(data[0] + 30) * 4; // top box. - SetObjectEventSpritePosByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); - box2 = GetTruckBoxMovement(data[0]) * 2; // bottom left box. - SetObjectEventSpritePosByLocalIdAndMap(2, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); - box3 = GetTruckBoxMovement(data[0]) * 4; // bottom right box. - SetObjectEventSpritePosByLocalIdAndMap(3, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); + box1 = GetTruckBoxMovement(data[0] + 30) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); + box2 = GetTruckBoxMovement(data[0]) * 2; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); + box3 = GetTruckBoxMovement(data[0]) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); if (++data[0] == SECONDS(500)) // this will never run data[0] = 0; // reset the timer if it gets stuck. @@ -116,11 +116,11 @@ void Task_Truck2(u8 taskId) cameraYpan = GetTruckCameraBobbingY(data[2]); SetCameraPanning(cameraXpan, cameraYpan); box1 = GetTruckBoxMovement(data[2] + 30) * 4; - SetObjectEventSpritePosByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); box2 = GetTruckBoxMovement(data[2]) * 2; - SetObjectEventSpritePosByLocalIdAndMap(2, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); box3 = GetTruckBoxMovement(data[2]) * 4; - SetObjectEventSpritePosByLocalIdAndMap(3, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); } } @@ -147,9 +147,9 @@ static void Task_Truck3(u8 taskId) cameraXpan = gTruckCamera_HorizontalTable[data[1]]; cameraYpan = 0; SetCameraPanning(cameraXpan, 0); - SetObjectEventSpritePosByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, cameraYpan + 3); - SetObjectEventSpritePosByLocalIdAndMap(2, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, cameraYpan - 3); - SetObjectEventSpritePosByLocalIdAndMap(3, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, cameraYpan); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, cameraYpan + 3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, cameraYpan - 3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, cameraYpan); } } @@ -242,9 +242,9 @@ void EndTruckSequence(u8 taskId) { if (!FuncIsActiveTask(Task_HandleTruckSequence)) { - SetObjectEventSpritePosByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3, 3); - SetObjectEventSpritePosByLocalIdAndMap(2, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 0, -3); - SetObjectEventSpritePosByLocalIdAndMap(3, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3, 0); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3, 3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 0, -3); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3, 0); } } diff --git a/src/field_specials.c b/src/field_specials.c index df16583ed100..f85de29f5c99 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3430,7 +3430,7 @@ static void ChangeDeoxysRockLevel(u8 rockLevel) { u8 objectEventId; LoadPalette(&sDeoxysRockPalettes[rockLevel], 0x1A0, 8); - TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); + TryGetObjectEventIdByLocalIdAndMap(LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); if (rockLevel == 0) PlaySE(SE_M_CONFUSE_RAY); @@ -3438,9 +3438,9 @@ static void ChangeDeoxysRockLevel(u8 rockLevel) PlaySE(SE_RG_DEOXYS_MOVE); CreateTask(WaitForDeoxysRockMovement, 8); - gFieldEffectArguments[0] = 1; - gFieldEffectArguments[1] = 58; - gFieldEffectArguments[2] = 26; + gFieldEffectArguments[0] = LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK; + gFieldEffectArguments[1] = MAP_NUM(BIRTH_ISLAND_EXTERIOR); + gFieldEffectArguments[2] = MAP_GROUP(BIRTH_ISLAND_EXTERIOR); gFieldEffectArguments[3] = sDeoxysRockCoords[rockLevel][0]; gFieldEffectArguments[4] = sDeoxysRockCoords[rockLevel][1]; @@ -3687,18 +3687,18 @@ u32 GetMartEmployeeObjectEventId(void) { static const u8 sPokeMarts[][3] = { - { MAP_GROUP(OLDALE_TOWN_MART), MAP_NUM(OLDALE_TOWN_MART), 1 }, - { MAP_GROUP(LAVARIDGE_TOWN_MART), MAP_NUM(LAVARIDGE_TOWN_MART), 1 }, - { MAP_GROUP(FALLARBOR_TOWN_MART), MAP_NUM(FALLARBOR_TOWN_MART), 1 }, - { MAP_GROUP(VERDANTURF_TOWN_MART), MAP_NUM(VERDANTURF_TOWN_MART), 1 }, - { MAP_GROUP(PETALBURG_CITY_MART), MAP_NUM(PETALBURG_CITY_MART), 1 }, - { MAP_GROUP(SLATEPORT_CITY_MART), MAP_NUM(SLATEPORT_CITY_MART), 1 }, - { MAP_GROUP(MAUVILLE_CITY_MART), MAP_NUM(MAUVILLE_CITY_MART), 1 }, - { MAP_GROUP(RUSTBORO_CITY_MART), MAP_NUM(RUSTBORO_CITY_MART), 1 }, - { MAP_GROUP(FORTREE_CITY_MART), MAP_NUM(FORTREE_CITY_MART), 1 }, - { MAP_GROUP(MOSSDEEP_CITY_MART), MAP_NUM(MOSSDEEP_CITY_MART), 1 }, - { MAP_GROUP(SOOTOPOLIS_CITY_MART), MAP_NUM(SOOTOPOLIS_CITY_MART), 1 }, - { MAP_GROUP(BATTLE_FRONTIER_MART), MAP_NUM(BATTLE_FRONTIER_MART), 1 } + { 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 } }; u8 i; diff --git a/src/tv.c b/src/tv.c index 0466ee713aaf..95baa0d0e8ef 100644 --- a/src/tv.c +++ b/src/tv.c @@ -36,6 +36,7 @@ #include "data.h" #include "constants/battle_frontier.h" #include "constants/contest.h" +#include "constants/event_objects.h" #include "constants/items.h" #include "constants/layouts.h" #include "constants/lilycove_lady.h" @@ -3586,7 +3587,7 @@ void GetMomOrDadStringForTVMessage(void) void HideBattleTowerReporter(void) { VarSet(VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0); - RemoveObjectEventByLocalIdAndMap(5, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); + RemoveObjectEventByLocalIdAndMap(LOCALID_BATTLE_TOWER_LOBBY_REPORTER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); FlagSet(FLAG_HIDE_BATTLE_TOWER_REPORTER); } diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index c012fd84d349..671290e21e1c 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -77,18 +77,27 @@ static const u8 sNextFacingDirection[] = { [DIR_EAST] = DIR_NORTH }; -// Local id 1 is the Nurse/Attendant, 2-9 are link players -static const u8 sUnionRoomLocalIds[] = { 9, 8, 7, 2, 6, 5, 4, 3 }; - -static const u16 sUnknown[] = { - 0x2BF, - 0x2C0, - 0x2C1, - 0x2C2, - 0x2C3, - 0x2C4, - 0x2C5, - 0x2C6 +static const u8 sUnionRoomLocalIds[] = { + LOCALID_UNION_ROOM_PLAYER_1, + LOCALID_UNION_ROOM_PLAYER_2, + LOCALID_UNION_ROOM_PLAYER_3, + LOCALID_UNION_ROOM_PLAYER_4, + LOCALID_UNION_ROOM_PLAYER_5, + LOCALID_UNION_ROOM_PLAYER_6, + LOCALID_UNION_ROOM_PLAYER_7, + LOCALID_UNION_ROOM_PLAYER_8 +}; + +// Unused +static const u16 sHidePlayerFlags[] = { + FLAG_HIDE_UNION_ROOM_PLAYER_1, + FLAG_HIDE_UNION_ROOM_PLAYER_2, + FLAG_HIDE_UNION_ROOM_PLAYER_3, + FLAG_HIDE_UNION_ROOM_PLAYER_4, + FLAG_HIDE_UNION_ROOM_PLAYER_5, + FLAG_HIDE_UNION_ROOM_PLAYER_6, + FLAG_HIDE_UNION_ROOM_PLAYER_7, + FLAG_HIDE_UNION_ROOM_PLAYER_8 }; static const u8 sMovement_UnionPlayerExit[2] = { From 810ca5f8ff79aeec6ffe8e982f4786aade616b4d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 7 Jul 2021 09:11:52 -0400 Subject: [PATCH 236/762] Flatten pos fields in struct Sprite --- gflib/sprite.c | 20 +- gflib/sprite.h | 4 +- src/battle_anim.c | 16 +- src/battle_anim_bug.c | 46 +- src/battle_anim_dark.c | 50 +- src/battle_anim_dragon.c | 56 +- src/battle_anim_effects_1.c | 612 +++++++++++----------- src/battle_anim_effects_2.c | 370 ++++++------- src/battle_anim_effects_3.c | 546 +++++++++---------- src/battle_anim_electric.c | 106 ++-- src/battle_anim_fight.c | 120 ++--- src/battle_anim_fire.c | 154 +++--- src/battle_anim_flying.c | 150 +++--- src/battle_anim_ghost.c | 96 ++-- src/battle_anim_ground.c | 66 +-- src/battle_anim_ice.c | 182 +++---- src/battle_anim_mon_movement.c | 154 +++--- src/battle_anim_mons.c | 192 +++---- src/battle_anim_normal.c | 24 +- src/battle_anim_poison.c | 28 +- src/battle_anim_psychic.c | 74 +-- src/battle_anim_rock.c | 68 +-- src/battle_anim_status_effects.c | 10 +- src/battle_anim_throw.c | 116 ++-- src/battle_anim_utility_funcs.c | 4 +- src/battle_anim_water.c | 122 ++--- src/battle_bg.c | 4 +- src/battle_controller_link_opponent.c | 14 +- src/battle_controller_link_partner.c | 12 +- src/battle_controller_opponent.c | 14 +- src/battle_controller_player.c | 16 +- src/battle_controller_player_partner.c | 16 +- src/battle_controller_recorded_opponent.c | 10 +- src/battle_controller_recorded_player.c | 16 +- src/battle_controller_safari.c | 2 +- src/battle_controller_wally.c | 6 +- src/battle_dome.c | 48 +- src/battle_factory_screen.c | 100 ++-- src/battle_gfx_sfx_util.c | 22 +- src/battle_interface.c | 80 +-- src/battle_main.c | 28 +- src/battle_pyramid_bag.c | 4 +- src/battle_script_commands.c | 4 +- src/battle_transition.c | 40 +- src/battle_transition_frontier.c | 10 +- src/berry_blender.c | 24 +- src/berry_crush.c | 54 +- src/berry_tag_screen.c | 4 +- src/cable_car.c | 82 +-- src/contest.c | 54 +- src/contest_util.c | 70 +-- src/credits.c | 82 +-- src/decoration.c | 28 +- src/dodrio_berry_picking.c | 26 +- src/easy_chat.c | 78 +-- src/egg_hatch.c | 18 +- src/event_object_movement.c | 160 +++--- src/evolution_graphics.c | 28 +- src/field_effect.c | 178 +++---- src/field_effect_helpers.c | 132 ++--- src/field_player_avatar.c | 42 +- src/field_specials.c | 4 +- src/field_weather_effect.c | 108 ++-- src/fldeff_cut.c | 4 +- src/fldeff_misc.c | 6 +- src/frontier_pass.c | 48 +- src/hall_of_fame.c | 34 +- src/intro.c | 208 ++++---- src/intro_credits_graphics.c | 26 +- src/item_menu_icons.c | 10 +- src/link_rfu_3.c | 4 +- src/list_menu.c | 18 +- src/main_menu.c | 44 +- src/menu_helpers.c | 6 +- src/menu_specialized.c | 8 +- src/minigame_countdown.c | 24 +- src/mirage_tower.c | 16 +- src/mon_markings.c | 8 +- src/naming_screen.c | 24 +- src/overworld.c | 4 +- src/party_menu.c | 68 +-- src/player_pc.c | 4 +- src/pokeball.c | 104 ++-- src/pokeblock_feed.c | 20 +- src/pokedex.c | 64 +-- src/pokedex_cry_screen.c | 4 +- src/pokemon_animation.c | 544 +++++++++---------- src/pokemon_jump.c | 24 +- src/pokemon_storage_system.c | 202 +++---- src/pokemon_summary_screen.c | 12 +- src/pokenav_conditions_2.c | 6 +- src/pokenav_main_menu.c | 28 +- src/pokenav_match_call_2.c | 22 +- src/pokenav_match_call_ui.c | 6 +- src/pokenav_menu_handler_2.c | 26 +- src/pokenav_region_map.c | 2 +- src/pokenav_ribbons_2.c | 12 +- src/rayquaza_scene.c | 342 ++++++------ src/region_map.c | 44 +- src/reset_rtc_screen.c | 36 +- src/rotating_gate.c | 6 +- src/roulette.c | 68 +-- src/shop.c | 4 +- src/slot_machine.c | 104 ++-- src/starter_choose.c | 26 +- src/title_screen.c | 30 +- src/trade.c | 170 +++--- src/trainer_see.c | 8 +- src/union_room_chat.c | 14 +- src/use_pokeblock.c | 18 +- src/wallclock.c | 16 +- 111 files changed, 3765 insertions(+), 3765 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index f97ecc712ddd..408daf6f9159 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -164,8 +164,8 @@ static const struct Sprite sDummySprite = .template = &gDummySpriteTemplate, .subspriteTables = NULL, .callback = SpriteCallbackDummy, - .pos1 = { 304, 160 }, - .pos2 = { 0, 0 }, + .x = 304, .y = 160, + .x2 = 0, .y2 = 0, .centerToCornerVecX = 0, .centerToCornerVecY = 0, .animNum = 0, @@ -375,13 +375,13 @@ void UpdateOamCoords(void) { if (sprite->coordOffsetEnabled) { - sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; - sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; + sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX; + sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY; } else { - sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; - sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; + sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX; + sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY; } } } @@ -583,8 +583,8 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y, sprite->affineAnims = template->affineAnims; sprite->template = template; sprite->callback = template->callback; - sprite->pos1.x = x; - sprite->pos1.y = y; + sprite->x = x; + sprite->y = y; CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); @@ -1248,14 +1248,14 @@ void obj_update_pos2(struct Sprite *sprite, s32 a1, s32 a2) var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].width; var1 = var0 << 8; var2 = (var0 << 16) / gOamMatrices[matrixNum].a; - sprite->pos2.x = sub_8007E28(var1, var2, a1); + sprite->x2 = sub_8007E28(var1, var2, a1); } if (a2 != 0x800) { var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].height; var1 = var0 << 8; var2 = (var0 << 16) / gOamMatrices[matrixNum].d; - sprite->pos2.y = sub_8007E28(var1, var2, a2); + sprite->y2 = sub_8007E28(var1, var2, a2); } } diff --git a/gflib/sprite.h b/gflib/sprite.h index 4a3b48225edb..02bc0748b4cb 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -197,8 +197,8 @@ struct Sprite /*0x18*/ const struct SubspriteTable *subspriteTables; /*0x1C*/ SpriteCallback callback; - /*0x20*/ struct Coords16 pos1; - /*0x24*/ struct Coords16 pos2; + /*0x20*/ s16 x, y; + /*0x24*/ s16 x2, y2; /*0x28*/ s8 centerToCornerVecX; /*0x29*/ s8 centerToCornerVecY; diff --git a/src/battle_anim.c b/src/battle_anim.c index a10b20b55e62..80d511f4c7df 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -2185,8 +2185,8 @@ static void sub_80A40F4(u8 taskId) newTaskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10); gTasks[newTaskId].data[t2_BATTLER_SPRITE_ID] = battlerSpriteId; - gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x; - gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y; + gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2; + gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2; if (!selfData[t1_MON_IN_BG2]) { @@ -2310,11 +2310,11 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) battlerSpriteId = gBattlerSpriteIds[battlerId]; - gBattle_BG1_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20; + gBattle_BG1_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20; if (IsContest() && IsSpeciesNotUnown(gContestResources->moveAnim->species)) gBattle_BG1_X--; - gBattle_BG1_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20; + gBattle_BG1_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20; if (setSpriteInvisible) gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE; @@ -2347,8 +2347,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) battlerSpriteId = gBattlerSpriteIds[battlerId]; - gBattle_BG2_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20; - gBattle_BG2_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20; + 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; @@ -2436,8 +2436,8 @@ static void task_pA_ma0A_obj_to_bg_pal(u8 taskId) spriteId = gTasks[taskId].data[0]; palIndex = gTasks[taskId].data[6]; GetBattleAnimBg1Data(&animBg); - x = gTasks[taskId].data[1] - (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x); - y = gTasks[taskId].data[2] - (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y); + x = gTasks[taskId].data[1] - (gSprites[spriteId].x + gSprites[spriteId].x2); + y = gTasks[taskId].data[2] - (gSprites[spriteId].y + gSprites[spriteId].y2); if (gTasks[taskId].data[5] == 0) { diff --git a/src/battle_anim_bug.c b/src/battle_anim_bug.c index 9d99529795b9..105cc611eabf 100644 --- a/src/battle_anim_bug.c +++ b/src/battle_anim_bug.c @@ -212,8 +212,8 @@ static void AnimMegahornHorn(struct Sprite *sprite) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; } - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; @@ -236,8 +236,8 @@ static void AnimLeechLifeNeedle(struct Sprite *sprite) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; } - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); @@ -261,8 +261,8 @@ static void AnimTranslateWebThread(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; if (!gBattleAnimArgs[4]) { @@ -287,22 +287,22 @@ static void AnimTranslateWebThread_Step(struct Sprite *sprite) return; } - sprite->pos2.x += Sin(sprite->data[6], sprite->data[5]); + sprite->x2 += Sin(sprite->data[6], sprite->data[5]); sprite->data[6] = (sprite->data[6] + 13) & 0xFF; } // Second stage of String Shot static void AnimStringWrap(struct Sprite *sprite) { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker)) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; if (!GetBattlerSide(gBattleAnimTarget)) - sprite->pos1.y += 8; + sprite->y += 8; sprite->callback = AnimStringWrap_Step; } @@ -396,7 +396,7 @@ static void AnimTranslateStinger(struct Sprite *sprite) lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; - rot = ArcTan2Neg(lVarX - sprite->pos1.x, lVarY - sprite->pos1.y); + rot = ArcTan2Neg(lVarX - sprite->x, lVarY - sprite->y); rot += 0xC000; TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rot); @@ -444,10 +444,10 @@ static void AnimMissileArc_Step(struct Sprite *sprite) { s16 tempData[8]; u16 *data = sprite->data; - u16 x1 = sprite->pos1.x; - s16 x2 = sprite->pos2.x; - u16 y1 = sprite->pos1.y; - s16 y2 = sprite->pos2.y; + u16 x1 = sprite->x; + s16 x2 = sprite->x2; + u16 y1 = sprite->y; + s16 y2 = sprite->y2; int i; for (i = 0; i < 8; i++) @@ -458,8 +458,8 @@ static void AnimMissileArc_Step(struct Sprite *sprite) if (!TranslateAnimHorizontalArc(sprite)) { - u16 rotation = ArcTan2Neg(sprite->pos1.x + sprite->pos2.x - x2, - sprite->pos1.y + sprite->pos2.y - y2); + u16 rotation = ArcTan2Neg(sprite->x + sprite->x2 - x2, + sprite->y + sprite->y2 - y2); rotation += 0xC000; TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rotation); @@ -473,13 +473,13 @@ static void AnimTailGlowOrb(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18; } StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index 8000a648c2b3..fdde347699a8 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -287,18 +287,18 @@ static void AnimUnusedBagSteal_Step(struct Sprite *sprite) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; if (sprite->data[7] == 0) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; sprite->data[0]--; } - sprite->pos2.y += Sin(sprite->data[5], sprite->data[6]); + sprite->y2 += Sin(sprite->data[5], sprite->data[6]); sprite->data[5] = (sprite->data[5] + 3) & 0xFF; if (sprite->data[5] > 0x7F) { @@ -314,8 +314,8 @@ static void AnimUnusedBagSteal_Step(struct Sprite *sprite) // Move sprite inward for Bite/Crunch and Clamp static void AnimBite(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; StartSpriteAffineAnim(sprite, gBattleAnimArgs[2]); sprite->data[0] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[4]; @@ -327,8 +327,8 @@ static void AnimBite_Step1(struct Sprite *sprite) { sprite->data[4] += sprite->data[0]; sprite->data[5] += sprite->data[1]; - sprite->pos2.x = sprite->data[4] >> 8; - sprite->pos2.y = sprite->data[5] >> 8; + sprite->x2 = sprite->data[4] >> 8; + sprite->y2 = sprite->data[5] >> 8; if (++sprite->data[3] == sprite->data[2]) sprite->callback = AnimBite_Step2; } @@ -337,8 +337,8 @@ static void AnimBite_Step2(struct Sprite *sprite) { sprite->data[4] -= sprite->data[0]; sprite->data[5] -= sprite->data[1]; - sprite->pos2.x = sprite->data[4] >> 8; - sprite->pos2.y = sprite->data[5] >> 8; + sprite->x2 = sprite->data[4] >> 8; + sprite->y2 = sprite->data[5] >> 8; if (--sprite->data[3] == 0) DestroySpriteAndMatrix(sprite); } @@ -360,30 +360,30 @@ static void AnimTearDrop(struct Sprite *sprite) switch (gBattleAnimArgs[1]) { case 0: - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8; - sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8; + sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; break; case 1: - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14; - sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14; + sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; break; case 2: - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8; - sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8; + sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; StartSpriteAffineAnim(sprite, 1); xOffset = -20; break; case 3: - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14; - sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14; + sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; StartSpriteAffineAnim(sprite, 1); xOffset = -20; break; } sprite->data[0] = 32; - sprite->data[2] = sprite->pos1.x + xOffset; - sprite->data[4] = sprite->pos1.y + 12; + sprite->data[2] = sprite->x + xOffset; + sprite->data[4] = sprite->y + 12; sprite->data[5] = -12; InitAnimArcTranslation(sprite); @@ -798,8 +798,8 @@ void sub_8114470(u8 taskId) // Animates a deep slash from a claw. Used by Metal Claw, Dragon Claw, and Crush Claw static void AnimClawSlash(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; StartSpriteAnim(sprite, gBattleAnimArgs[2]); sprite->callback = RunStoredCallbackWhenAnimEnds; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -865,8 +865,8 @@ void AnimTask_MetallicShine(u8 taskId) AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset); LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32); - gBattle_BG1_X = -gSprites[spriteId].pos1.x + 96; - gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32; + gBattle_BG1_X = -gSprites[spriteId].x + 96; + gBattle_BG1_Y = -gSprites[spriteId].y + 32; paletteNum = 16 + gSprites[spriteId].oam.paletteNum; if (gBattleAnimArgs[1] == 0) diff --git a/src/battle_anim_dragon.c b/src/battle_anim_dragon.c index caafdf3b8387..1bc0f569b991 100644 --- a/src/battle_anim_dragon.c +++ b/src/battle_anim_dragon.c @@ -189,20 +189,20 @@ const struct SpriteTemplate gOverheatFlameSpriteTemplate = static void AnimOutrageFlame(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; gBattleAnimArgs[3] = -gBattleAnimArgs[3]; gBattleAnimArgs[4] = -gBattleAnimArgs[4]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -219,15 +219,15 @@ static void StartDragonFireTranslation(struct Sprite *sprite) sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[1]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] -= gBattleAnimArgs[2]; sprite->data[4] += gBattleAnimArgs[3]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] += gBattleAnimArgs[2]; sprite->data[4] += gBattleAnimArgs[3]; StartSpriteAnim(sprite, 1); @@ -242,17 +242,17 @@ static void AnimDragonRageFirePlume(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]); - sprite->pos1.y += gBattleAnimArgs[2]; + sprite->y += gBattleAnimArgs[2]; sprite->callback = RunStoredCallbackWhenAnimEnds; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); } @@ -270,8 +270,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite) { u16 r5; u16 r0; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[4] = 0; sprite->data[5] = 1; sprite->data[6] = gBattleAnimArgs[0]; @@ -281,8 +281,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite) sprite->data[7] = r5 / 2; else sprite->data[7] = r0 / 2; - sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); - sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); + sprite->x2 = Cos(sprite->data[6], sprite->data[7]); + sprite->y2 = Sin(sprite->data[6], sprite->data[7]); sprite->callback = AnimDragonDanceOrb_Step; } @@ -292,8 +292,8 @@ static void AnimDragonDanceOrb_Step(struct Sprite *sprite) { case 0: sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF; - sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); - sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); + sprite->x2 = Cos(sprite->data[6], sprite->data[7]); + sprite->y2 = Sin(sprite->data[6], sprite->data[7]); if (++sprite->data[4] > 5) { sprite->data[4] = 0; @@ -310,8 +310,8 @@ static void AnimDragonDanceOrb_Step(struct Sprite *sprite) sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF; if (sprite->data[7] <= 0x95 && (sprite->data[7] += 8) > 0x95) sprite->data[7] = 0x96; - sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); - sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); + sprite->x2 = Cos(sprite->data[6], sprite->data[7]); + sprite->y2 = Sin(sprite->data[6], sprite->data[7]); if (++sprite->data[4] > 5) { sprite->data[4] = 0; @@ -417,12 +417,12 @@ static void AnimOverheatFlame(struct Sprite *sprite) { int i; int yAmplitude = (gBattleAnimArgs[2] * 3) / 5; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4]; sprite->data[1] = Cos(gBattleAnimArgs[1], gBattleAnimArgs[2]); sprite->data[2] = Sin(gBattleAnimArgs[1], yAmplitude); - sprite->pos1.x += sprite->data[1] * gBattleAnimArgs[0]; - sprite->pos1.y += sprite->data[2] * gBattleAnimArgs[0]; + sprite->x += sprite->data[1] * gBattleAnimArgs[0]; + sprite->y += sprite->data[2] * gBattleAnimArgs[0]; sprite->data[3] = gBattleAnimArgs[3]; sprite->callback = AnimOverheatFlame_Step; for (i = 0; i < 7; i++) @@ -433,8 +433,8 @@ static void AnimOverheatFlame_Step(struct Sprite *sprite) { sprite->data[4] += sprite->data[1]; sprite->data[5] += sprite->data[2]; - sprite->pos2.x = sprite->data[4] / 10; - sprite->pos2.y = sprite->data[5] / 10; + sprite->x2 = sprite->data[4] / 10; + sprite->y2 = sprite->data[5] / 10; if (++sprite->data[0] > sprite->data[3]) DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 9901aa5ddd5f..ebdb471bfd96 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2199,8 +2199,8 @@ const struct SpriteTemplate gTauntFingerSpriteTemplate = // arg 5: wave speed static void AnimMovePowderParticle(struct Sprite* sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; @@ -2222,9 +2222,9 @@ static void AnimMovePowderParticle_Step(struct Sprite* sprite) if (sprite->data[0] > 0) { sprite->data[0]--; - sprite->pos2.y = sprite->data[2] >> 8; + sprite->y2 = sprite->data[2] >> 8; sprite->data[2] += sprite->data[1]; - sprite->pos2.x = Sin(sprite->data[5], sprite->data[3]); + sprite->x2 = Sin(sprite->data[5], sprite->data[3]); sprite->data[5] = (sprite->data[5] + sprite->data[4]) & 0xFF; } else @@ -2273,9 +2273,9 @@ static void AnimSolarbeamSmallOrb(struct Sprite* sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); sprite->data[5] = gBattleAnimArgs[3]; @@ -2296,8 +2296,8 @@ static void AnimSolarbeamSmallOrb_Step(struct Sprite* sprite) else sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimTarget) + 6; - sprite->pos2.x += Sin(sprite->data[5], 5); - sprite->pos2.y += Cos(sprite->data[5], 14); + sprite->x2 += Sin(sprite->data[5], 5); + sprite->y2 += Cos(sprite->data[5], 14); sprite->data[5] = (sprite->data[5] + 15) & 0xFF; } } @@ -2352,18 +2352,18 @@ static void AnimHyperBeamOrb(struct Sprite* sprite) u16 animNum = Random2(); StartSpriteAnim(sprite, animNum % 8); - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= 20; + sprite->x -= 20; else - sprite->pos1.x += 20; + sprite->x += 20; speed = Random2(); sprite->data[0] = (speed & 31) + 64; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimFastLinearTranslationWithSpeed(sprite); sprite->data[5] = Random2() & 0xFF; @@ -2380,7 +2380,7 @@ static void AnimHyperBeamOrb_Step(struct Sprite* sprite) } else { - sprite->pos2.y += Cos(sprite->data[5], 12); + sprite->y2 += Cos(sprite->data[5], 12); if (sprite->data[5] < 0x7F) sprite->subpriority = sprite->data[6]; else @@ -2456,8 +2456,8 @@ static void AnimSporeParticle(struct Sprite* sprite) static void AnimSporeParticle_Step(struct Sprite* sprite) { - sprite->pos2.x = Sin(sprite->data[1], 32); - sprite->pos2.y = Cos(sprite->data[1], -3) + ((sprite->data[2] += 24) >> 8); + sprite->x2 = Sin(sprite->data[1], 32); + sprite->y2 = Cos(sprite->data[1], -3) + ((sprite->data[2] += 24) >> 8); if ((u16)(sprite->data[1] - 0x40) < 0x80) { sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget); @@ -2507,9 +2507,9 @@ static void AnimPetalDanceBigFlower(struct Sprite* sprite) { InitSpritePosToAnimAttacker(sprite, FALSE); sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; InitAnimLinearTranslation(sprite); sprite->data[5] = 0x40; @@ -2521,8 +2521,8 @@ static void AnimPetalDanceBigFlower_Step(struct Sprite* sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.x += Sin(sprite->data[5], 32); - sprite->pos2.y += Cos(sprite->data[5], -5); + sprite->x2 += Sin(sprite->data[5], 32); + sprite->y2 += Cos(sprite->data[5], -5); if ((u16)(sprite->data[5] - 0x40) < 0x80) sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker) - 1; else @@ -2545,9 +2545,9 @@ static void AnimPetalDanceSmallFlower(struct Sprite* sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; InitAnimLinearTranslation(sprite); sprite->data[5] = 0x40; @@ -2559,7 +2559,7 @@ static void AnimPetalDanceSmallFlower_Step(struct Sprite* sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.x += Sin(sprite->data[5], 8); + sprite->x2 += Sin(sprite->data[5], 8); if ((u16)(sprite->data[5] - 59) < 5 || (u16)(sprite->data[5] - 187) < 5) sprite->oam.matrixNum ^= ST_OAM_HFLIP; @@ -2578,8 +2578,8 @@ static void AnimPetalDanceSmallFlower_Step(struct Sprite* sprite) // arg 2: upward duration static void AnimRazorLeafParticle(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[2]; @@ -2607,23 +2607,23 @@ static void AnimRazorLeafParticle_Step1(struct Sprite* sprite) else { sprite->data[2]--; - sprite->pos1.x += sprite->data[0]; - sprite->pos1.y += sprite->data[1]; + sprite->x += sprite->data[0]; + sprite->y += sprite->data[1]; } } static void AnimRazorLeafParticle_Step2(struct Sprite* sprite) { if (GetBattlerSide(gBattleAnimAttacker)) - sprite->pos2.x = -Sin(sprite->data[0], 25); + sprite->x2 = -Sin(sprite->data[0], 25); else - sprite->pos2.x = Sin(sprite->data[0], 25); + sprite->x2 = Sin(sprite->data[0], 25); sprite->data[0] += 2; sprite->data[0] &= 0xFF; sprite->data[1]++; if (!(sprite->data[1] & 1)) - sprite->pos2.y++; + sprite->y2++; if (sprite->data[1] > 80) DestroyAnimSprite(sprite); @@ -2690,10 +2690,10 @@ static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) destroy = TRUE; } - if (sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 16 - || sprite->pos1.x + sprite->pos2.x < -16 - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT - || sprite->pos1.y + sprite->pos2.y < -16) + if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 16 + || sprite->x + sprite->x2 < -16 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT + || sprite->y + sprite->y2 < -16) destroy = TRUE; if (destroy) @@ -2709,9 +2709,9 @@ static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) void AnimMoveTwisterParticle(struct Sprite* sprite) { if (IsDoubleBattle() == TRUE) - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y); - sprite->pos1.y += 32; + sprite->y += 32; sprite->data[0] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[2]; @@ -2724,11 +2724,11 @@ static void AnimMoveTwisterParticle_Step(struct Sprite* sprite) { if (sprite->data[1] == 0xFF) { - sprite->pos1.y -= 2; + sprite->y -= 2; } else if (sprite->data[1] > 0) { - sprite->pos1.y -= 2; + sprite->y -= 2; sprite->data[1] -= 2; } @@ -2737,8 +2737,8 @@ static void AnimMoveTwisterParticle_Step(struct Sprite* sprite) sprite->data[5] += sprite->data[2]; sprite->data[5] &= 0xFF; - sprite->pos2.x = Cos(sprite->data[5], sprite->data[3]); - sprite->pos2.y = Sin(sprite->data[5], 5); + sprite->x2 = Cos(sprite->data[5], sprite->data[3]); + sprite->y2 = Sin(sprite->data[5], 5); if (sprite->data[5] < 0x80) sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget) - 1; else @@ -2825,9 +2825,9 @@ static void AnimTask_DuplicateAndShrinkToPos_Step1(u8 taskId) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); gTasks[taskId].data[10] += gTasks[taskId].data[0]; - gSprites[spriteId].pos2.x = gTasks[taskId].data[10] >> 8; + gSprites[spriteId].x2 = gTasks[taskId].data[10] >> 8; if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER) - gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; + gSprites[spriteId].x2 = -gSprites[spriteId].x2; gTasks[taskId].data[11] += 16; SetSpriteRotScale(spriteId, gTasks[taskId].data[11], gTasks[taskId].data[11], 0); @@ -2847,8 +2847,8 @@ static void AnimTask_DuplicateAndShrinkToPos_Step2(u8 taskId) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); ResetSpriteRotScale(spriteId); - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; gSprites[spriteId].oam.priority = gTasks[taskId].data[14]; spriteId = GetAnimBattlerSpriteId(ANIM_DEF_PARTNER); gSprites[spriteId].oam.priority = gTasks[taskId].data[15]; @@ -2878,8 +2878,8 @@ static void AnimMimicOrb(struct Sprite* sprite) if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) gBattleAnimArgs[0] *= -1; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[1]; sprite->invisible = TRUE; sprite->data[0]++; break; @@ -2908,16 +2908,16 @@ static void AnimIngrainRoot(struct Sprite* sprite) { if (!sprite->data[0]) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); - sprite->pos2.x = gBattleAnimArgs[0]; - sprite->pos2.y = gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); + sprite->x2 = gBattleAnimArgs[0]; + sprite->y2 = gBattleAnimArgs[1]; sprite->subpriority = gBattleAnimArgs[2] + 30; StartSpriteAnim(sprite, gBattleAnimArgs[3]); sprite->data[2] = gBattleAnimArgs[4]; sprite->data[0]++; - if (sprite->pos1.y + sprite->pos2.y > 120) - sprite->pos1.y += sprite->pos2.y + sprite->pos1.y - 120; + if (sprite->y + sprite->y2 > 120) + sprite->y += sprite->y2 + sprite->y - 120; } sprite->callback = AnimRootFlickerOut; } @@ -2938,16 +2938,16 @@ static void AnimFrenzyPlantRoot(struct Sprite *sprite) targetX -= attackerX; targetY -= attackerY; - sprite->pos1.x = attackerX + targetX * gBattleAnimArgs[0] / 100; - sprite->pos1.y = attackerY + targetY * gBattleAnimArgs[0] / 100; - sprite->pos2.x = gBattleAnimArgs[1]; - sprite->pos2.y = gBattleAnimArgs[2]; + sprite->x = attackerX + targetX * gBattleAnimArgs[0] / 100; + sprite->y = attackerY + targetY * gBattleAnimArgs[0] / 100; + sprite->x2 = gBattleAnimArgs[1]; + sprite->y2 = gBattleAnimArgs[2]; sprite->subpriority = gBattleAnimArgs[3] + 30; StartSpriteAnim(sprite, gBattleAnimArgs[4]); sprite->data[2] = gBattleAnimArgs[5]; sprite->callback = AnimRootFlickerOut; - sFrenzyPlantRootData.startX = sprite->pos1.x; - sFrenzyPlantRootData.startY = sprite->pos1.y; + sFrenzyPlantRootData.startX = sprite->x; + sFrenzyPlantRootData.startY = sprite->y; sFrenzyPlantRootData.targetX = targetX; sFrenzyPlantRootData.targetY = targetY; } @@ -2971,23 +2971,23 @@ static void AnimIngrainOrb(struct Sprite* sprite) { if (!sprite->data[0]) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; } sprite->data[0]++; - sprite->pos2.x = sprite->data[1] * sprite->data[0]; - sprite->pos2.y = Sin((sprite->data[0] * 20) & 0xFF, sprite->data[2]); + sprite->x2 = sprite->data[1] * sprite->data[0]; + sprite->y2 = Sin((sprite->data[0] * 20) & 0xFF, sprite->data[2]); if (sprite->data[0] > sprite->data[3]) DestroyAnimSprite(sprite); } static void InitItemBagData(struct Sprite* sprite, s16 c) { - int a = (sprite->pos1.x << 8) | sprite->pos1.y; + int a = (sprite->x << 8) | sprite->y; int b = (sprite->data[6] << 8) | sprite->data[7]; c <<= 8; sprite->data[5] = a; @@ -3017,8 +3017,8 @@ bool8 moveAlongLinearPath(struct Sprite* sprite) r0 = xEndPos - xStartPos; var1 = r0 * currentTime / totalTime; vaxEndPos = yEndPos_2 * currentTime / totalTime; - sprite->pos1.x = var1 + xStartPos; - sprite->pos1.y = vaxEndPos + yStartPos; + sprite->x = var1 + xStartPos; + sprite->y = vaxEndPos + yStartPos; if (++currentTime == totalTime) return TRUE; @@ -3045,10 +3045,10 @@ static void AnimItemSteal_Step1(struct Sprite* sprite) sprite->data[0] = 0; } - sprite->pos2.y = Sin(sprite->data[0] + 128, 30 - sprite->data[1] * 8); + sprite->y2 = Sin(sprite->data[0] + 128, 30 - sprite->data[1] * 8); if (moveAlongLinearPath(sprite)) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0] = 0; sprite->callback = AnimItemSteal_Step2; } @@ -3091,10 +3091,10 @@ static void AnimKnockOffOpponentsItem(struct Sprite* sprite) sprite->data[0] = zero; } - sprite->pos2.y = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8); + sprite->y2 = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8); if (moveAlongLinearPath(sprite)) { - sprite->pos2.y = zero; + sprite->y2 = zero; sprite->data[0] = zero; DestroyAnimSprite(sprite); } @@ -3140,7 +3140,7 @@ static void AnimPresentHealParticle(struct Sprite* sprite) } sprite->data[0]++; - sprite->pos2.y = sprite->data[1] * sprite->data[0]; + sprite->y2 = sprite->data[1] * sprite->data[0]; if (sprite->animEnded) DestroyAnimSprite(sprite); } @@ -3182,13 +3182,13 @@ static void AnimItemSteal_Step3(struct Sprite* sprite) sprite->data[0] = zero; } - sprite->pos2.y = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8); - if (sprite->pos2.y == 0) + sprite->y2 = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8); + if (sprite->y2 == 0) PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(63)); if (moveAlongLinearPath(sprite)) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0] = 0; sprite->callback = AnimItemSteal_Step2; PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); @@ -3208,7 +3208,7 @@ static void AnimTrickBag(struct Sprite* sprite) if (!IsContest()) { sprite->data[1] = gBattleAnimArgs[1]; - sprite->pos1.x = 120; + sprite->x = 120; } else { @@ -3219,14 +3219,14 @@ static void AnimTrickBag(struct Sprite* sprite) b = a; sprite->data[1] = a - ((b >> 8) << 8); - sprite->pos1.x = 70; + sprite->x = 70; } - sprite->pos1.y = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[0]; sprite->data[4] = 20; - sprite->pos2.x = Cos(sprite->data[1], 60); - sprite->pos2.y = Sin(sprite->data[1], 20); + sprite->x2 = Cos(sprite->data[1], 60); + sprite->y2 = Sin(sprite->data[1], 20); sprite->callback = AnimTrickBag_Step1; if (sprite->data[1] > 0 && sprite->data[1] < 192) sprite->subpriority = 31; @@ -3250,7 +3250,7 @@ static void AnimTrickBag_Step1(struct Sprite* sprite) { sprite->data[2] += sprite->data[4] / 10; sprite->data[4] += 3; - sprite->pos1.y = sprite->data[2]; + sprite->y = sprite->data[2]; break; } break; @@ -3290,8 +3290,8 @@ static void AnimTrickBag_Step2(struct Sprite* sprite) sprite->subpriority = 29; } - sprite->pos2.x = Cos(sprite->data[1], 60); - sprite->pos2.y = Sin(sprite->data[1], 20); + sprite->x2 = Cos(sprite->data[1], 60); + sprite->y2 = Sin(sprite->data[1], 20); } } @@ -3362,14 +3362,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) } break; case 1: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[6]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[7]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[4] += 2; @@ -3388,14 +3388,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) } break; case 3: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[6] - ((task->data[10] / 2) + 10) * task->data[5]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[7] - ((task->data[11] / 2) + 10) * task->data[5]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[3] = 2; @@ -3405,14 +3405,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) task->data[0]++; break; case 5: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[6] + ((task->data[10] / 2) + 10) * task->data[5]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[7] + ((task->data[11] / 2) + 10) * task->data[5]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[4] -= 2; @@ -3431,14 +3431,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) } break; case 7: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[6]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[7]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[4] += 2; @@ -3449,14 +3449,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) task->data[0]++; break; case 9: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[6] - ((task->data[10] / 2) + 10) * task->data[5]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[7] + ((task->data[11] / 2) + 10) * task->data[5]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[3] = 5; @@ -3475,14 +3475,14 @@ static void AnimTask_LeafBlade_Step(u8 taskId) break; case 11: { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 10; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[8]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[9]; sprite->data[5] = LeafBladeGetPosFactor(sprite); task->data[4] -= 2; @@ -3518,7 +3518,7 @@ static void AnimTask_LeafBlade_Step(u8 taskId) static s16 LeafBladeGetPosFactor(struct Sprite* sprite) { s16 var = 8; - if (sprite->data[4] < sprite->pos1.y) + if (sprite->data[4] < sprite->y) var = -var; return var; @@ -3533,8 +3533,8 @@ static void AnimTask_LeafBlade_Step2(struct Task* task, u8 taskId) s16 spriteX; s16 spriteY; task->data[14] = 0; - spriteX = gSprites[task->data[2]].pos1.x + gSprites[task->data[2]].pos2.x; - spriteY = gSprites[task->data[2]].pos1.y + gSprites[task->data[2]].pos2.y; + spriteX = gSprites[task->data[2]].x + gSprites[task->data[2]].x2; + spriteY = gSprites[task->data[2]].y + gSprites[task->data[2]].y2; spriteId = CreateSprite(&gLeafBladeSpriteTemplate, spriteX, spriteY, task->data[4]); if (spriteId != MAX_SPRITES) { @@ -3578,13 +3578,13 @@ static void AnimFlyingParticle(struct Sprite* sprite) { sprite->data[4] = 0; sprite->data[2] = gBattleAnimArgs[3]; - sprite->pos1.x = 0xFFF0; + sprite->x = 0xFFF0; } else { sprite->data[4] = 1; sprite->data[2] = -gBattleAnimArgs[3]; - sprite->pos1.x = 0x100; + sprite->x = 0x100; } sprite->data[1] = gBattleAnimArgs[1]; @@ -3593,19 +3593,19 @@ static void AnimFlyingParticle(struct Sprite* sprite) switch (gBattleAnimArgs[5]) { case 0: - sprite->pos1.y = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[0]; sprite->oam.priority = GetBattlerSpriteBGPriority(battler); break; case 1: - sprite->pos1.y = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[0]; sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; case 2: - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[0]; sprite->oam.priority = GetBattlerSpriteBGPriority(battler); break; case 3: - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[0]; GetAnimBattlerSpriteId(ANIM_TARGET); sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; @@ -3618,17 +3618,17 @@ static void AnimFlyingParticle_Step(struct Sprite* sprite) { int a = sprite->data[7]; sprite->data[7]++; - sprite->pos2.y = (sprite->data[1] * gSineTable[sprite->data[0]]) >> 8; - sprite->pos2.x = sprite->data[2] * a; + sprite->y2 = (sprite->data[1] * gSineTable[sprite->data[0]]) >> 8; + sprite->x2 = sprite->data[2] * a; sprite->data[0] = (sprite->data[3] * a) & 0xFF; if (!sprite->data[4]) { - if (sprite->pos2.x + sprite->pos1.x <= 0xF7) + if (sprite->x2 + sprite->x <= 0xF7) return; } else { - if (sprite->pos2.x + sprite->pos1.x > -16) + if (sprite->x2 + sprite->x > -16) return; } @@ -3693,25 +3693,25 @@ static void AnimNeedleArmSpike(struct Sprite* sprite) sprite->data[0] = gBattleAnimArgs[4]; if (gBattleAnimArgs[1] == 0) { - sprite->pos1.x = gBattleAnimArgs[2] + a; - sprite->pos1.y = gBattleAnimArgs[3] + b; + sprite->x = gBattleAnimArgs[2] + a; + sprite->y = gBattleAnimArgs[3] + b; sprite->data[5] = a; sprite->data[6] = b; } else { - sprite->pos1.x = a; - sprite->pos1.y = b; + sprite->x = a; + sprite->y = b; sprite->data[5] = gBattleAnimArgs[2] + a; sprite->data[6] = gBattleAnimArgs[3] + b; } - x = sprite->pos1.x; + x = sprite->x; sprite->data[1] = x * 16; - y = sprite->pos1.y; + y = sprite->y; sprite->data[2] = y * 16; - sprite->data[3] = (sprite->data[5] - sprite->pos1.x) * 16 / gBattleAnimArgs[4]; - sprite->data[4] = (sprite->data[6] - sprite->pos1.y) * 16 / gBattleAnimArgs[4]; + sprite->data[3] = (sprite->data[5] - sprite->x) * 16 / gBattleAnimArgs[4]; + sprite->data[4] = (sprite->data[6] - sprite->y) * 16 / gBattleAnimArgs[4]; c = ArcTan2Neg(sprite->data[5] - x, sprite->data[6] - y); if (IsContest()) c -= 0x8000; @@ -3727,8 +3727,8 @@ static void AnimNeedleArmSpike_Step(struct Sprite* sprite) { sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 4 ; - sprite->pos1.y = sprite->data[2] >> 4 ; + sprite->x = sprite->data[1] >> 4 ; + sprite->y = sprite->data[2] >> 4 ; sprite->data[0]--; } else @@ -3747,13 +3747,13 @@ static void AnimSlidingHit(struct Sprite* sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->callback = RunStoredCallbackWhenAnimEnds; @@ -3767,13 +3767,13 @@ static void AnimWhipHit(struct Sprite* sprite) sprite->callback = AnimWhipHit_WaitEnd; SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } static void AnimFlickeringPunch(struct Sprite* sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -3790,23 +3790,23 @@ static void AnimFlickeringPunch(struct Sprite* sprite) // arg 2: slice direction; 0 = right-to-left, 1 = left-to-right static void AnimCuttingSlice(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) - sprite->pos1.y += 8; + sprite->y += 8; sprite->callback = AnimSlice_Step; if (gBattleAnimArgs[2] == 0) { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; } else { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; sprite->hFlip = 1; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[1] -= 0x400; sprite->data[2] += 0x400; sprite->data[5] = gBattleAnimArgs[2]; @@ -3840,23 +3840,23 @@ static void AnimAirCutterSlice(struct Sprite* sprite) break; } - sprite->pos1.x = a; - sprite->pos1.y = b; + sprite->x = a; + sprite->y = b; if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) - sprite->pos1.y += 8; + sprite->y += 8; sprite->callback = AnimSlice_Step; if (gBattleAnimArgs[2] == 0) { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; } else { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; sprite->hFlip = 1; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[1] -= 0x400; sprite->data[2] += 0x400; sprite->data[5] = gBattleAnimArgs[2]; @@ -3874,8 +3874,8 @@ static void AnimSlice_Step(struct Sprite* sprite) sprite->data[1] -= 0x18; sprite->data[2] -= 0x18; - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; sprite->data[0]++; if (sprite->data[0] == 20) { @@ -3922,13 +3922,13 @@ static void AnimCirclingMusicNote(struct Sprite* sprite) { sprite->data[0] = gBattleAnimArgs[2]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; StartSpriteAnim(sprite, gBattleAnimArgs[5]); sprite->data[1] = -gBattleAnimArgs[3]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[3] = gBattleAnimArgs[4]; sprite->callback = AnimCirclingMusicNote_Step; sprite->callback(sprite); @@ -3936,8 +3936,8 @@ static void AnimCirclingMusicNote(struct Sprite* sprite) static void AnimCirclingMusicNote_Step(struct Sprite* sprite) { - sprite->pos2.x = Cos(sprite->data[0], 100); - sprite->pos2.y = Sin(sprite->data[0], 20); + sprite->x2 = Cos(sprite->data[0], 100); + sprite->y2 = Sin(sprite->data[0], 20); if (sprite->data[0] < 128) sprite->subpriority = 0; else @@ -3945,7 +3945,7 @@ static void AnimCirclingMusicNote_Step(struct Sprite* sprite) sprite->data[0] = (sprite->data[0] + sprite->data[1]) & 0xFF; sprite->data[5] += 130; - sprite->pos2.y += sprite->data[5] >> 8; + sprite->y2 += sprite->data[5] >> 8; sprite->data[2]++; if (sprite->data[2] == sprite->data[3]) DestroyAnimSprite(sprite); @@ -3956,8 +3956,8 @@ static void AnimProtect(struct Sprite* sprite) if (IsContest()) gBattleAnimArgs[1] += 8; - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER || IsContest()) sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker) + 1; else @@ -3975,7 +3975,7 @@ static void AnimProtect_Step(struct Sprite *sprite) { int i, id, savedPal; sprite->data[5] += 96; - sprite->pos2.x = -(sprite->data[5] >> 8); + sprite->x2 = -(sprite->data[5] >> 8); if (++sprite->data[1] > 1) { sprite->data[1] = 0; @@ -4016,8 +4016,8 @@ static void AnimProtect_Step(struct Sprite *sprite) static void AnimMilkBottle(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 0xFFE8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 0xFFE8; sprite->data[0] = 0; sprite->data[1] = 0; sprite->data[2] = 0; @@ -4067,7 +4067,7 @@ static void AnimMilkBottle_Step1(struct Sprite* sprite) if (++sprite->data[1] > 2) { sprite->data[1] = 0; - sprite->pos1.y++; + sprite->y++; } if (++sprite->data[2] <= 29) @@ -4114,10 +4114,10 @@ static void AnimMilkBottle_Step2(struct Sprite* sprite, int unk1, int unk2) if ((sprite->data[3]) > 0x2F) sprite->data[4] += 2; - sprite->pos2.x = sprite->data[4] / 9; - sprite->pos2.y = sprite->data[4] / 14; - if (sprite->pos2.y < 0) - sprite->pos2.y *= -1; + sprite->x2 = sprite->data[4] / 9; + sprite->y2 = sprite->data[4] / 14; + if (sprite->y2 < 0) + sprite->y2 *= -1; sprite->data[3]++; if (sprite->data[3] > 0x3B) @@ -4130,7 +4130,7 @@ static void AnimGrantingStars(struct Sprite* sprite) SetSpriteCoordsToAnimAttackerCoords(sprite); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[5]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[4]; @@ -4148,21 +4148,21 @@ static void AnimSparkingStars(struct Sprite* sprite) if (IsDoubleBattle() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler))) { - SetAverageBattlerPositions(battler, gBattleAnimArgs[6], &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(battler, gBattleAnimArgs[6], &sprite->x, &sprite->y); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } else { if (!gBattleAnimArgs[6]) { - sprite->pos1.x = GetBattlerSpriteCoord(battler, 0); - sprite->pos1.y = GetBattlerSpriteCoord(battler, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, 0); + sprite->y = GetBattlerSpriteCoord(battler, 1) + gBattleAnimArgs[1]; } else { - sprite->pos1.x = GetBattlerSpriteCoord(battler, 2); - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, 2); + sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[1]; } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); @@ -4180,13 +4180,13 @@ static void AnimBubbleBurst(struct Sprite* sprite) SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } else { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; StartSpriteAnim(sprite, 1); } @@ -4197,8 +4197,8 @@ static void AnimBubbleBurst_Step(struct Sprite* sprite) { if (++sprite->data[0] > 30) { - sprite->pos2.y = (30 - sprite->data[0]) / 3; - sprite->pos2.x = Sin(sprite->data[1] * 4, 3); + sprite->y2 = (30 - sprite->data[0]) / 3; + sprite->x2 = Sin(sprite->data[1] * 4, 3); sprite->data[1]++; } @@ -4211,14 +4211,14 @@ static void AnimSleepLetterZ(struct Sprite* sprite) SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[3] = 1; } else { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[3] = 0xFFFF; StartSpriteAffineAnim(sprite, 1); } @@ -4228,8 +4228,8 @@ static void AnimSleepLetterZ(struct Sprite* sprite) static void AnimSleepLetterZ_Step(struct Sprite* sprite) { - sprite->pos2.y = -(sprite->data[0] / 0x28); - sprite->pos2.x = sprite->data[4] / 10; + sprite->y2 = -(sprite->data[0] / 0x28); + sprite->x2 = sprite->data[4] / 10; sprite->data[4] += sprite->data[3] * 2; sprite->data[0] += sprite->data[1]; if (++sprite->data[1] > 60) @@ -4238,8 +4238,8 @@ static void AnimSleepLetterZ_Step(struct Sprite* sprite) static void AnimLockOnTarget(struct Sprite* sprite) { - sprite->pos1.x -= 32; - sprite->pos1.y -= 32; + sprite->x -= 32; + sprite->y -= 32; sprite->data[0] = 20; sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step1); @@ -4255,13 +4255,13 @@ static void AnimLockOnTarget_Step1(struct Sprite* sprite) StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step1); break; case 1: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 8; - sprite->data[2] = sprite->pos1.x + gInclineMonCoordTable[sprite->data[5] >> 8][0]; - sprite->data[4] = sprite->pos1.y + gInclineMonCoordTable[sprite->data[5] >> 8][1]; + sprite->data[2] = sprite->x + gInclineMonCoordTable[sprite->data[5] >> 8][0]; + sprite->data[4] = sprite->y + gInclineMonCoordTable[sprite->data[5] >> 8][1]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step2); sprite->data[5] += 0x100; @@ -4320,10 +4320,10 @@ static void AnimLockOnTarget_Step3(struct Sprite* sprite) break; } - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 6; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + a; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + b; @@ -4387,25 +4387,25 @@ static void AnimLockOnMoveTarget(struct Sprite* sprite) sprite->oam.affineParam = gBattleAnimArgs[0]; if ((s16)sprite->oam.affineParam == 1) { - sprite->pos1.x -= 0x18; - sprite->pos1.y -= 0x18; + sprite->x -= 0x18; + sprite->y -= 0x18; } else if ((s16)sprite->oam.affineParam == 2) { - sprite->pos1.x -= 0x18; - sprite->pos1.y += 0x18; + sprite->x -= 0x18; + sprite->y += 0x18; sprite->oam.matrixNum = ST_OAM_VFLIP; } else if ((s16)sprite->oam.affineParam == 3) { - sprite->pos1.x += 0x18; - sprite->pos1.y -= 0x18; + sprite->x += 0x18; + sprite->y -= 0x18; sprite->oam.matrixNum = ST_OAM_HFLIP; } else { - sprite->pos1.x += 0x18; - sprite->pos1.y += 0x18; + sprite->x += 0x18; + sprite->y += 0x18; sprite->oam.matrixNum = ST_OAM_HFLIP | ST_OAM_VFLIP; } @@ -4607,7 +4607,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) if (task->data[3]) { task->data[4] += task->data[5]; - gSprites[task->data[0]].pos2.x = task->data[4]; + gSprites[task->data[0]].x2 = task->data[4]; task->data[3]--; } else @@ -4630,7 +4630,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) else { task->data[3] = 8; - task->data[4] = gSprites[task->data[0]].pos2.x; + task->data[4] = gSprites[task->data[0]].x2; task->data[5] = (task->data[1] == 0) ? 0x2 : -0x2; task->data[6] = 1; task->data[2]++; @@ -4646,9 +4646,9 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) else { if (task->data[3] & 1) - gSprites[task->data[0]].pos2.x = task->data[4] + task->data[5]; + gSprites[task->data[0]].x2 = task->data[4] + task->data[5]; else - gSprites[task->data[0]].pos2.x = task->data[4] - task->data[5]; + gSprites[task->data[0]].x2 = task->data[4] - task->data[5]; task->data[6] = 1; task->data[3]--; @@ -4656,7 +4656,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) } else { - gSprites[task->data[0]].pos2.x = task->data[4]; + gSprites[task->data[0]].x2 = task->data[4]; task->data[3] = 12; task->data[2]++; } @@ -4669,7 +4669,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) else { task->data[3] = 3; - task->data[4] = gSprites[task->data[0]].pos2.x; + task->data[4] = gSprites[task->data[0]].x2; task->data[5] = (task->data[1] == 0) ? 8 : -8; task->data[2]++; } @@ -4678,7 +4678,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) if (task->data[3]) { task->data[4] += task->data[5]; - gSprites[task->data[0]].pos2.x = task->data[4]; + gSprites[task->data[0]].x2 = task->data[4]; task->data[3]--; } else @@ -4710,13 +4710,13 @@ static void AnimSlashSlice(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4727,16 +4727,16 @@ static void AnimSlashSlice(struct Sprite* sprite) static void AnimFalseSwipeSlice(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); StoreSpriteCallbackInData6(sprite, AnimFalseSwipeSlice_Step1); sprite->callback = RunStoredCallbackWhenAnimEnds; } static void AnimFalseSwipePositionedSlice(struct Sprite* sprite) { - sprite->pos1.x = sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0 + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0 + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); StartSpriteAnim(sprite, 1); sprite->data[0] = 0; sprite->data[1] = 0; @@ -4777,13 +4777,13 @@ static void AnimEndureEnergy(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4796,18 +4796,18 @@ static void AnimEndureEnergy_Step(struct Sprite* sprite) if (++sprite->data[0] > sprite->data[1]) { sprite->data[0] = 0; - sprite->pos1.y--; + sprite->y--; } - sprite->pos1.y -= sprite->data[0]; + sprite->y -= sprite->data[0]; if (sprite->animEnded) DestroyAnimSprite(sprite); } static void AnimSharpenSphere(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) - 12; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) - 12; sprite->data[0] = 0; sprite->data[1] = 2; sprite->data[2] = 0; @@ -4845,10 +4845,10 @@ static void AnimConversion(struct Sprite* sprite) { if (sprite->data[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; if (IsContest()) - sprite->pos1.y += 10; + sprite->y += 10; sprite->data[0]++; } @@ -4948,13 +4948,13 @@ static void AnimMoon(struct Sprite* sprite) { if (IsContest()) { - sprite->pos1.x = 48; - sprite->pos1.y = 40; + sprite->x = 48; + sprite->y = 40; } else { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1]; + sprite->x = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1]; } sprite->oam.shape = SPRITE_SHAPE(64x64); @@ -4971,8 +4971,8 @@ static void AnimMoon_Step(struct Sprite* sprite) static void AnimMoonlightSparkle(struct Sprite* sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1]; sprite->data[0] = 0; sprite->data[1] = 0; sprite->data[2] = 0; @@ -4988,7 +4988,7 @@ static void AnimMoonlightSparkle_Step(struct Sprite* sprite) sprite->data[1] = 0; if (sprite->data[2] < 120) { - sprite->pos1.y++; + sprite->y++; sprite->data[2]++; } } @@ -5112,36 +5112,36 @@ static void AnimHornHit(struct Sprite* sprite) sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[2]; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; - sprite->data[6] = sprite->pos1.x; - sprite->data[7] = sprite->pos1.y; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->data[6] = sprite->x; + sprite->data[7] = sprite->y; if (IsContest()) { sprite->oam.matrixNum = ST_OAM_HFLIP; - sprite->pos1.x += 40; - sprite->pos1.y += 20; - sprite->data[2] = sprite->pos1.x << 7; + sprite->x += 40; + sprite->y += 20; + sprite->data[2] = sprite->x << 7; sprite->data[3] = -0x1400 / sprite->data[1]; - sprite->data[4] = sprite->pos1.y << 7; + sprite->data[4] = sprite->y << 7; sprite->data[5] = -0xA00 / sprite->data[1]; } else if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x -= 40; - sprite->pos1.y += 20; - sprite->data[2] = sprite->pos1.x << 7; + sprite->x -= 40; + sprite->y += 20; + sprite->data[2] = sprite->x << 7; sprite->data[3] = 0x1400 / sprite->data[1]; - sprite->data[4] = sprite->pos1.y << 7; + sprite->data[4] = sprite->y << 7; sprite->data[5] = -0xA00 / sprite->data[1]; } else { - sprite->pos1.x += 40; - sprite->pos1.y -= 20; - sprite->data[2] = sprite->pos1.x << 7; + sprite->x += 40; + sprite->y -= 20; + sprite->data[2] = sprite->x << 7; sprite->data[3] = -0x1400 / sprite->data[1]; - sprite->data[4] = sprite->pos1.y << 7; + sprite->data[4] = sprite->y << 7; sprite->data[5] = 0xA00 / sprite->data[1]; sprite->oam.matrixNum = (ST_OAM_HFLIP | ST_OAM_VFLIP); } @@ -5153,12 +5153,12 @@ static void AnimHornHit_Step(struct Sprite* sprite) { sprite->data[2] += sprite->data[3]; sprite->data[4] += sprite->data[5]; - sprite->pos1.x = sprite->data[2] >> 7; - sprite->pos1.y = sprite->data[4] >> 7; + sprite->x = sprite->data[2] >> 7; + sprite->y = sprite->data[4] >> 7; if (--sprite->data[1] == 1) { - sprite->pos1.x = sprite->data[6]; - sprite->pos1.y = sprite->data[7]; + sprite->x = sprite->data[6]; + sprite->y = sprite->data[7]; } if (sprite->data[1] == 0) @@ -5233,7 +5233,7 @@ static void AnimDoubleTeam(struct Sprite* sprite) sprite->data[4] = gSineTable[sprite->data[0]] / 6; sprite->data[5] = gSineTable[sprite->data[0]] / 13; sprite->data[1] = (sprite->data[1] + sprite->data[5]) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], sprite->data[4]); + sprite->x2 = Sin(sprite->data[1], sprite->data[4]); } } @@ -5304,9 +5304,9 @@ static void AnimWavyMusicNotes(struct Sprite* sprite) b = GetBattlerSpriteCoord(gBattleAnimTarget, 3); } - sprite->data[4] = sprite->pos1.x << 4; - sprite->data[5] = sprite->pos1.y << 4; - AnimWavyMusicNotesGetNextPos(a - sprite->pos1.x, b - sprite->pos1.y, &sprite->data[6], &sprite->data[7], 40); + sprite->data[4] = sprite->x << 4; + sprite->data[5] = sprite->y << 4; + AnimWavyMusicNotesGetNextPos(a - sprite->x, b - sprite->y, &sprite->data[6], &sprite->data[7], 40); sprite->callback = AnimWavyMusicNotes_Step; } @@ -5335,12 +5335,12 @@ static void AnimWavyMusicNotes_Step(struct Sprite* sprite) yDelta = sprite->data[0] * 5 - ((sprite->data[0] * 5 / 256) << 8); sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; - sprite->pos2.y = Sin(yDelta, 15); + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; + sprite->y2 = Sin(yDelta, 15); - y = sprite->pos1.y; - if (sprite->pos1.x < -16 || sprite->pos1.x > 256 || y < -16 || y > 128) + y = sprite->y; + if (sprite->x < -16 || sprite->x > 256 || y < -16 || y > 128) { DestroySpriteAndMatrix(sprite); } @@ -5364,13 +5364,13 @@ static void AnimFlyingMusicNotes(struct Sprite* sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; StartSpriteAnim(sprite, gBattleAnimArgs[0]); sprite->data[2] = 0; sprite->data[3] = 0; - sprite->data[4] = sprite->pos1.x << 4; - sprite->data[5] = sprite->pos1.y << 4; + sprite->data[4] = sprite->x << 4; + sprite->data[5] = sprite->y << 4; sprite->data[6] = (gBattleAnimArgs[1] << 4) / 5; sprite->data[7] = (gBattleAnimArgs[2] << 7) / 5; sprite->callback = AnimFlyingMusicNotes_Step; @@ -5380,13 +5380,13 @@ static void AnimFlyingMusicNotes_Step(struct Sprite* sprite) { sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; if (sprite->data[0] > 5 && sprite->data[3] == 0) { sprite->data[2] = (sprite->data[2] + 16) & 0xFF; - sprite->pos2.x = Cos(sprite->data[2], 18); - sprite->pos2.y = Sin(sprite->data[2], 18); + sprite->x2 = Cos(sprite->data[2], 18); + sprite->y2 = Sin(sprite->data[2], 18); if (sprite->data[2] == 0) sprite->data[3] = 1; } @@ -5408,8 +5408,8 @@ static void AnimBellyDrumHand(struct Sprite* sprite) a = -16; } - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + a; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + a; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 8; sprite->data[0] = 8; sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -5420,7 +5420,7 @@ void AnimSlowFlyingMusicNotes(struct Sprite* sprite) s16 xDiff; u8 index; SetSpriteCoordsToAnimAttackerCoords(sprite); - sprite->pos1.y += 8; + sprite->y += 8; StartSpriteAnim(sprite, gBattleAnimArgs[1]); index = IndexOfSpritePaletteTag(gParticlesColorBlendTable[gBattleAnimArgs[2]][0]); if (index != 0xFF) @@ -5428,9 +5428,9 @@ void AnimSlowFlyingMusicNotes(struct Sprite* sprite) xDiff = (gBattleAnimArgs[0] == 0) ? -32 : 32; sprite->data[0] = 40; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = xDiff + sprite->data[1]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = sprite->data[3] - 40; InitAnimLinearTranslation(sprite); sprite->data[5] = gBattleAnimArgs[3]; @@ -5443,11 +5443,11 @@ static void AnimSlowFlyingMusicNotes_Step(struct Sprite* sprite) { s16 xDiff; xDiff = Sin(sprite->data[5], 8); - if (sprite->pos2.x < 0) + if (sprite->x2 < 0) xDiff = -xDiff; - sprite->pos2.x += xDiff; - sprite->pos2.y += Sin(sprite->data[5], 4); + sprite->x2 += xDiff; + sprite->y2 += Sin(sprite->data[5], 4); sprite->data[5] = (sprite->data[5] + 8) & 0xFF; } else @@ -5459,11 +5459,11 @@ static void AnimSlowFlyingMusicNotes_Step(struct Sprite* sprite) void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) { if (GetBattlerSide(battler) == B_SIDE_PLAYER) - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) + 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) + 8; else - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; + sprite->y = GetBattlerSpriteCoord(battler, 3) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; } static void AnimThoughtBubble(struct Sprite* sprite) @@ -5526,10 +5526,10 @@ static void AnimFollowMeFinger(struct Sprite* sprite) else battler = gBattleAnimTarget; - sprite->pos1.x = GetBattlerSpriteCoord(battler, 0); - sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP); - if (sprite->pos1.y <= 9) - sprite->pos1.y = 10; + sprite->x = GetBattlerSpriteCoord(battler, 0); + sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP); + if (sprite->y <= 9) + sprite->y = 10; sprite->data[0] = 1; sprite->data[1] = 0; @@ -5555,7 +5555,7 @@ static void AnimFollowMeFinger_Step2(struct Sprite* sprite) { if (--sprite->data[0] == 0) { - sprite->pos2.x = 0; + sprite->x2 = 0; sprite->callback = AnimMetronomeFinger_Step; return; } @@ -5573,7 +5573,7 @@ static void AnimFollowMeFinger_Step2(struct Sprite* sprite) x1 = gSineTable[sprite->data[1]]; x2 = x1 >> 3; - sprite->pos2.x = (x1 >> 3) + (x2 >> 1); + sprite->x2 = (x1 >> 3) + (x2 >> 1); } static void AnimTauntFinger(struct Sprite* sprite) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 0ac5d384b67f..315d6108979e 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1266,7 +1266,7 @@ static void AnimCirclingFinger(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[4]; sprite->data[3] = gBattleAnimArgs[5]; @@ -1295,12 +1295,12 @@ static void AnimBouncingMusicNote_Step(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos2.y -= 3; + sprite->y2 -= 3; if (++sprite->data[1] == 6) sprite->data[0]++; break; case 1: - sprite->pos2.y += 3; + sprite->y2 += 3; if (--sprite->data[1] == 0) sprite->data[0]++; break; @@ -1314,12 +1314,12 @@ static void AnimBouncingMusicNote_Step(struct Sprite *sprite) static void AnimVibrateBattlerBack_Step(struct Sprite *sprite) { s16 temp; - gSprites[sprite->data[2]].pos2.x += sprite->data[1]; + gSprites[sprite->data[2]].x2 += sprite->data[1]; temp = sprite->data[1]; sprite->data[1] = -temp; if (sprite->data[0] == 0) { - gSprites[sprite->data[2]].pos2.x = 0; + gSprites[sprite->data[2]].x2 = 0; DestroySpriteAndMatrix(sprite); } @@ -1329,15 +1329,15 @@ static void AnimVibrateBattlerBack_Step(struct Sprite *sprite) static void AnimVibrateBattlerBack(struct Sprite *sprite) { u8 spriteId; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); spriteId = gBattlerSpriteIds[gBattleAnimTarget]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = spriteId; @@ -1358,8 +1358,8 @@ static void AnimMovingClamp(struct Sprite *sprite) static void AnimMovingClamp_Step(struct Sprite *sprite) { sprite->data[0] = sprite->data[1]; - sprite->data[2] = sprite->pos1.x; - sprite->data[4] = sprite->pos1.y + 15; + sprite->data[2] = sprite->x; + sprite->data[4] = sprite->y + 15; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimMovingClamp_End); } @@ -1394,7 +1394,7 @@ static void AnimTask_Withdraw_Step(u8 taskId) { gTasks[taskId].data[0] += 0xB0; // this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation() - gSprites[spriteId].pos2.y++; + gSprites[spriteId].y2++; } else if (gTasks[taskId].data[1] == 1) { @@ -1407,7 +1407,7 @@ static void AnimTask_Withdraw_Step(u8 taskId) { gTasks[taskId].data[0] -= 0xB0; // this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation() - gSprites[spriteId].pos2.y--; + gSprites[spriteId].y2--; } SetBattlerSpriteYOffsetFromRotation(spriteId); @@ -1433,11 +1433,11 @@ static void AnimKinesisZapEnergy(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { sprite->hFlip = 1; @@ -1467,8 +1467,8 @@ static void AnimSwordsDanceBlade(struct Sprite *sprite) static void AnimSwordsDanceBlade_Step(struct Sprite *sprite) { sprite->data[0] = 6; - sprite->data[2] = sprite->pos1.x; - sprite->data[4] = sprite->pos1.y - 32; + sprite->data[2] = sprite->x; + sprite->data[4] = sprite->y - 32; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -1500,7 +1500,7 @@ static void AnimSonicBoomProjectile(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; - rotation = ArcTan2Neg(targetXPos - sprite->pos1.x, targetYPos - sprite->pos1.y); + rotation = ArcTan2Neg(targetXPos - sprite->x, targetYPos - sprite->y); rotation += 0xF000; if (IsContest()) rotation -= 0x6000; @@ -1539,14 +1539,14 @@ static void AnimAirWaveProjectile_Step1(struct Sprite *sprite) sprite->data[1] += sprite->data[5]; sprite->data[2] += sprite->data[6]; if (1 & task->data[7]) - sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1; + sprite->x2 = ((u16)sprite->data[1] >> 8) * -1; else - sprite->pos2.x = (u16)sprite->data[1] >> 8; + sprite->x2 = (u16)sprite->data[1] >> 8; if (1 & task->data[8]) - sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1; + sprite->y2 = ((u16)sprite->data[2] / 256u) * -1; else - sprite->pos2.y = (u16)sprite->data[2] / 256u; + sprite->y2 = (u16)sprite->data[2] / 256u; if (sprite->data[0]-- <= 0) { @@ -1565,33 +1565,33 @@ static void AnimAirWaveProjectile(struct Sprite *sprite) sprite->data[1] += (-2 & task->data[7]); sprite->data[2] += (-2 & task->data[8]); if (1 & task->data[7]) - sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1; + sprite->x2 = ((u16)sprite->data[1] >> 8) * -1; else - sprite->pos2.x = (u16)sprite->data[1] >> 8; + sprite->x2 = (u16)sprite->data[1] >> 8; if (1 & task->data[8]) - sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1; + sprite->y2 = ((u16)sprite->data[2] / 256u) * -1; else - sprite->pos2.y = (u16)sprite->data[2] / 256u; + sprite->y2 = (u16)sprite->data[2] / 256u; if (sprite->data[0]-- <= 0) { sprite->data[0] = 8; task->data[5] = 4; a = MathUtil_Inv16(Q_8_8(16)); - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; - if (task->data[11] >= sprite->pos1.x) - b = (task->data[11] - sprite->pos1.x) << 8; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; + if (task->data[11] >= sprite->x) + b = (task->data[11] - sprite->x) << 8; else - b = (sprite->pos1.x - task->data[11]) << 8; + b = (sprite->x - task->data[11]) << 8; - if (task->data[12] >= sprite->pos1.y) - c = (task->data[12] - sprite->pos1.y) << 8; + if (task->data[12] >= sprite->y) + c = (task->data[12] - sprite->y) << 8; else - c = (sprite->pos1.y - task->data[12]) << 8; + c = (sprite->y - task->data[12]) << 8; sprite->data[2] = 0; sprite->data[1] = 0; @@ -1778,7 +1778,7 @@ static void AnimCoinThrow(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; r6 += gBattleAnimArgs[2]; - var = ArcTan2Neg(r6 - sprite->pos1.x, r7 - sprite->pos1.y); + var = ArcTan2Neg(r6 - sprite->x, r7 - sprite->y); var += 0xC000; TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, var); sprite->data[0] = gBattleAnimArgs[4]; @@ -1791,18 +1791,18 @@ static void AnimCoinThrow(struct Sprite *sprite) static void AnimFallingCoin(struct Sprite *sprite) { sprite->data[2] = -16; - sprite->pos1.y += 8; + sprite->y += 8; sprite->callback = AnimFallingCoin_Step; } static void AnimFallingCoin_Step(struct Sprite *sprite) { sprite->data[0] += 0x80; - sprite->pos2.x = sprite->data[0] >> 8; + sprite->x2 = sprite->data[0] >> 8; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - sprite->pos2.x = -sprite->pos2.x; + sprite->x2 = -sprite->x2; - sprite->pos2.y = Sin(sprite->data[1], sprite->data[2]); + sprite->y2 = Sin(sprite->data[1], sprite->data[2]); sprite->data[1] += 5; if (sprite->data[1] > 126) { @@ -1830,10 +1830,10 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite) u16 rand; s16* ptr; PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(63)); - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; ptr = &sprite->data[7]; for (i = 0; i < 8; i++) ptr[i - 7] = 0; @@ -1849,11 +1849,11 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite) static void AnimBulletSeed_Step2(struct Sprite *sprite) { sprite->data[0] += sprite->data[7]; - sprite->pos2.x = sprite->data[0] >> 8; + sprite->x2 = sprite->data[0] >> 8; if (sprite->data[7] & 1) - sprite->pos2.x = -sprite->pos2.x; + sprite->x2 = -sprite->x2; - sprite->pos2.y = Sin(sprite->data[1], sprite->data[6]); + sprite->y2 = Sin(sprite->data[1], sprite->data[6]); sprite->data[1] += 8; if (sprite->data[1] > 126) { @@ -1876,7 +1876,7 @@ static void AnimRazorWindTornado(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, FALSE); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - sprite->pos1.y += 16; + sprite->y += 16; sprite->data[0] = gBattleAnimArgs[4]; sprite->data[1] = gBattleAnimArgs[2]; @@ -1905,8 +1905,8 @@ static void AnimViceGripPincer(struct Sprite *sprite) StartSpriteAnim(sprite, 1); } - sprite->pos1.x += startXOffset; - sprite->pos1.y += startYOffset; + sprite->x += startXOffset; + sprite->y += startYOffset; sprite->data[0] = 6; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset; @@ -1937,12 +1937,12 @@ static void AnimGuillotinePincer(struct Sprite *sprite) StartSpriteAnim(sprite, gBattleAnimArgs[0]); } - sprite->pos1.x += startXOffset; - sprite->pos1.y += startYOffset; + sprite->x += startXOffset; + sprite->y += startYOffset; sprite->data[0] = 6; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset; InitAnimLinearTranslation(sprite); sprite->data[5] = gBattleAnimArgs[0]; @@ -1956,10 +1956,10 @@ static void AnimGuillotinePincer_Step1(struct Sprite *sprite) { SeekSpriteAnim(sprite, 0); sprite->animPaused = 1; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 2; - sprite->pos2.y = -2; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 2; + sprite->y2 = -2; sprite->data[0] = sprite->data[6]; sprite->data[1] ^= 1; sprite->data[2] ^= 1; @@ -1973,15 +1973,15 @@ static void AnimGuillotinePincer_Step2(struct Sprite *sprite) { if (sprite->data[3]) { - sprite->pos2.x = -sprite->pos2.x; - sprite->pos2.y = -sprite->pos2.y; + sprite->x2 = -sprite->x2; + sprite->y2 = -sprite->y2; } sprite->data[3] ^= 1; if (++sprite->data[4] == 51) { - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[4] = 0; sprite->data[3] = 0; sprite->animPaused = 0; @@ -2099,7 +2099,7 @@ static void AnimTask_Minimize_Step(u8 taskId) break; case 5: ResetSpriteRotScale(task->data[0]); - gSprites[task->data[15]].pos2.y = 0; + gSprites[task->data[15]].y2 = 0; DestroyAnimVisualTask(taskId); break; } @@ -2176,7 +2176,7 @@ static void AnimTask_Splash_Step(u8 taskId) case 0: RunAffineAnimFromTaskData(task); task->data[4] += 3; - gSprites[task->data[0]].pos2.y += task->data[4]; + gSprites[task->data[0]].y2 += task->data[4]; if (++task->data[3] > 7) { task->data[3] = 0; @@ -2185,7 +2185,7 @@ static void AnimTask_Splash_Step(u8 taskId) break; case 1: RunAffineAnimFromTaskData(task); - gSprites[task->data[0]].pos2.y += task->data[4]; + gSprites[task->data[0]].y2 += task->data[4]; if (++task->data[3] > 7) { task->data[3] = 0; @@ -2195,7 +2195,7 @@ static void AnimTask_Splash_Step(u8 taskId) case 2: if (task->data[4] != 0) { - gSprites[task->data[0]].pos2.y -= 2; + gSprites[task->data[0]].y2 -= 2; task->data[4] -= 2; } else @@ -2206,7 +2206,7 @@ static void AnimTask_Splash_Step(u8 taskId) { if (--task->data[2] == 0) { - gSprites[task->data[0]].pos2.y = 0; + gSprites[task->data[0]].y2 = 0; DestroyAnimVisualTask(taskId); } else @@ -2245,17 +2245,17 @@ static void AnimBreathPuff(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { StartSpriteAnim(sprite, 0); - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + 32; sprite->data[1] = 64; } else { StartSpriteAnim(sprite, 1); - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - 32; sprite->data[1] = -64; } - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = 52; sprite->data[2] = 0; sprite->data[3] = 0; @@ -2279,10 +2279,10 @@ static void AnimAngerMark(struct Sprite *sprite) if (GetBattlerSide(battler) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; - if (sprite->pos1.y < 8) - sprite->pos1.y = 8; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; + if (sprite->y < 8) + sprite->y = 8; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); sprite->callback = RunStoredCallbackWhenAffineAnimEnds; @@ -2315,8 +2315,8 @@ void AnimTask_ThrashMoveMonVertical(u8 taskId) task->data[2] = 4; task->data[3] = 7; task->data[4] = 3; - task->data[5] = gSprites[task->data[0]].pos1.x; - task->data[6] = gSprites[task->data[0]].pos1.y; + task->data[5] = gSprites[task->data[0]].x; + task->data[6] = gSprites[task->data[0]].y; task->data[7] = 0; task->data[8] = 0; task->data[9] = 2; @@ -2334,14 +2334,14 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) task->data[7] = 0; task->data[8]++; if (task->data[8] & 1) - gSprites[task->data[0]].pos1.y += task->data[9]; + gSprites[task->data[0]].y += task->data[9]; else - gSprites[task->data[0]].pos1.y -= task->data[9]; + gSprites[task->data[0]].y -= task->data[9]; } switch (task->data[1]) { case 0: - gSprites[task->data[0]].pos1.x += task->data[2]; + gSprites[task->data[0]].x += task->data[2]; if (--task->data[3] == 0) { task->data[3] = 14; @@ -2349,7 +2349,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) } break; case 1: - gSprites[task->data[0]].pos1.x -= task->data[2]; + gSprites[task->data[0]].x -= task->data[2]; if (--task->data[3] == 0) { task->data[3] = 7; @@ -2357,7 +2357,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) } break; case 2: - gSprites[task->data[0]].pos1.x += task->data[2]; + gSprites[task->data[0]].x += task->data[2]; if (--task->data[3] == 0) { if (--task->data[4] != 0) @@ -2368,7 +2368,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) else { if ((task->data[8] & 1) != 0) - gSprites[task->data[0]].pos1.y -= task->data[9]; + gSprites[task->data[0]].y -= task->data[9]; DestroyAnimVisualTask(taskId); } @@ -2467,8 +2467,8 @@ static void AnimTask_SketchDrawMon_Step(u8 taskId) static void AnimPencil(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) - 16; - sprite->pos1.y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) - 16; + sprite->y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16; sprite->data[0] = 0; sprite->data[1] = 0; sprite->data[2] = 0; @@ -2499,7 +2499,7 @@ static void AnimPencil_Step(struct Sprite *sprite) if (++sprite->data[1] > 3 && sprite->data[2] < sprite->data[5]) { sprite->data[1] = 0; - sprite->pos1.y -= 1; + sprite->y -= 1; sprite->data[2]++; if (sprite->data[2] % 10 == 0) PlaySE12WithPanning(SE_M_SKETCH, sprite->data[6]); @@ -2515,7 +2515,7 @@ static void AnimPencil_Step(struct Sprite *sprite) sprite->data[4] = -0x40 - sprite->data[4]; sprite->data[3] *= -1; } - sprite->pos2.x = sprite->data[4]; + sprite->x2 = sprite->data[4]; if (sprite->data[5] == sprite->data[2]) { sprite->data[1] = 0; @@ -2624,7 +2624,7 @@ static void AnimHyperVoiceRing(struct Sprite *sprite) r9 = GetBattlerSpriteCoord(battler1, r10) - gBattleAnimArgs[0]; if (!IsContest() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler1))) { - if (gSprites[gBattlerSpriteIds[battler1]].pos1.x < gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].pos1.x) + if (gSprites[gBattlerSpriteIds[battler1]].x < gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].x) sprite->subpriority = gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].subpriority + 1; else sprite->subpriority = gSprites[gBattlerSpriteIds[battler1]].subpriority - 1; @@ -2653,8 +2653,8 @@ static void AnimHyperVoiceRing(struct Sprite *sprite) sp0 -= gBattleAnimArgs[3]; sp1 += gBattleAnimArgs[4]; - sprite->pos1.x = sprite->data[1] = r9; - sprite->pos1.y = sprite->data[3] = r6; + sprite->x = sprite->data[1] = r9; + sprite->y = sprite->data[3] = r6; sprite->data[2] = sp0; sprite->data[4] = sp1; sprite->data[0] = gBattleAnimArgs[0]; @@ -2690,17 +2690,17 @@ static void AnimSoftBoiledEgg(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step1(struct Sprite *sprite) { s16 add; - sprite->pos2.y -= (sprite->data[0] >> 8); - sprite->pos2.x = sprite->data[1] >> 8; + sprite->y2 -= (sprite->data[0] >> 8); + sprite->x2 = sprite->data[1] >> 8; sprite->data[0] -= 32; add = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? -160 : 160; sprite->data[1] += add; - if (sprite->pos2.y > 0) + if (sprite->y2 > 0) { - sprite->pos1.y += sprite->pos2.y; - sprite->pos1.x += sprite->pos2.x; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->y += sprite->y2; + sprite->x += sprite->x2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 0; StartSpriteAffineAnim(sprite, 1); sprite->callback = AnimSoftBoiledEgg_Step2; @@ -2737,7 +2737,7 @@ static void AnimSoftBoiledEgg_Step3(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *sprite) { - sprite->pos2.y -= 2; + sprite->y2 -= 2; if (++sprite->data[0] == 9) { sprite->data[0] = 16; @@ -2793,7 +2793,7 @@ static void AnimTask_AttackerStretchAndDisappear_Step(u8 taskId) struct Task* task = &gTasks[taskId]; if (!RunAffineAnimFromTaskData(task)) { - gSprites[task->data[0]].pos2.y = 0; + gSprites[task->data[0]].y2 = 0; gSprites[task->data[0]].invisible = TRUE; DestroyAnimVisualTask(taskId); } @@ -2829,7 +2829,7 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId) switch (task->data[0]) { case 0: - gSprites[task->data[15]].pos2.x += task->data[14]; + gSprites[task->data[15]].x2 += task->data[14]; task->data[1] = 0; task->data[2] = 0; task->data[3] = 0; @@ -2841,14 +2841,14 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId) task->data[1] = 0; task->data[2]++; if (task->data[2] & 1) - gSprites[task->data[15]].pos2.x += 6; + gSprites[task->data[15]].x2 += 6; else - gSprites[task->data[15]].pos2.x -= 6; + gSprites[task->data[15]].x2 -= 6; if (++task->data[3] > 4) { if (task->data[2] & 1) - gSprites[task->data[15]].pos2.x -= 6; + gSprites[task->data[15]].x2 -= 6; task->data[0]++; } @@ -2861,8 +2861,8 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId) task->data[0]++; break; case 3: - gSprites[task->data[15]].pos2.x += task->data[13]; - if (gSprites[task->data[15]].pos2.x == 0) + gSprites[task->data[15]].x2 += task->data[13]; + if (gSprites[task->data[15]].x2 == 0) DestroyAnimVisualTask(taskId); break; } @@ -2975,8 +2975,8 @@ static void AnimTask_SpeedDust_Step(u8 taskId) { gSprites[spriteId].data[0] = taskId; gSprites[spriteId].data[1] = 13; - gSprites[spriteId].pos2.x = gSpeedDustPosTable[task->data[2]][0]; - gSprites[spriteId].pos2.y = gSpeedDustPosTable[task->data[2]][1]; + gSprites[spriteId].x2 = gSpeedDustPosTable[task->data[2]][0]; + gSprites[spriteId].y2 = gSpeedDustPosTable[task->data[2]][1]; task->data[13]++; if (++task->data[2] > 3) { @@ -3059,8 +3059,8 @@ static void AnimMagentaHeart(struct Sprite *sprite) if (++sprite->data[0] == 1) InitSpritePosToAnimAttacker(sprite, FALSE); - sprite->pos2.x = Sin(sprite->data[1], 8); - sprite->pos2.y = sprite->data[2] >> 8; + sprite->x2 = Sin(sprite->data[1], 8); + sprite->y2 = sprite->data[2] >> 8; sprite->data[1] = (sprite->data[1] + 7) & 0xFF; sprite->data[2] -= 0x80; if (sprite->data[0] == 60) @@ -3126,15 +3126,15 @@ void AnimTask_StretchTargetUp(u8 taskId) if (++gTasks[taskId].data[0] == 1) { PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_TARGET), sAffineAnims_StretchBattlerUp); - gSprites[spriteId].pos2.x = 4; + gSprites[spriteId].x2 = 4; } else { - gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; + gSprites[spriteId].x2 = -gSprites[spriteId].x2; if (!RunAffineAnimFromTaskData(&gTasks[taskId])) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); } } @@ -3146,15 +3146,15 @@ void AnimTask_StretchAttackerUp(u8 taskId) if (++gTasks[taskId].data[0] == 1) { PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_ATTACKER), sAffineAnims_StretchBattlerUp); - gSprites[spriteId].pos2.x = 4; + gSprites[spriteId].x2 = 4; } else { - gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; + gSprites[spriteId].x2 = -gSprites[spriteId].x2; if (!RunAffineAnimFromTaskData(&gTasks[taskId])) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); } } @@ -3164,9 +3164,9 @@ static void AnimRedHeartProjectile(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = 95; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslation(sprite); sprite->callback = AnimRedHeartProjectile_Step; @@ -3176,7 +3176,7 @@ static void AnimRedHeartProjectile_Step(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.y += Sin(sprite->data[5], 14); + sprite->y2 += Sin(sprite->data[5], 14); sprite->data[5] = (sprite->data[5] + 4) & 0xFF; } else @@ -3196,8 +3196,8 @@ void AnimParticleBurst(struct Sprite *sprite) else { sprite->data[4] += sprite->data[1]; - sprite->pos2.x = sprite->data[4] >> 8; - sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); + sprite->x2 = sprite->data[4] >> 8; + sprite->y2 = Sin(sprite->data[3], sprite->data[2]); sprite->data[3] = (sprite->data[3] + 3) & 0xFF; if (sprite->data[3] > 100) sprite->invisible = sprite->data[3] % 2; @@ -3209,8 +3209,8 @@ void AnimParticleBurst(struct Sprite *sprite) static void AnimRedHeartRising(struct Sprite *sprite) { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = DISPLAY_HEIGHT; + sprite->x = gBattleAnimArgs[0]; + sprite->y = DISPLAY_HEIGHT; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[1]; sprite->callback = WaitAnimForDuration; @@ -3221,10 +3221,10 @@ static void AnimRedHeartRising_Step(struct Sprite *sprite) { s16 y; sprite->data[2] += sprite->data[1]; - sprite->pos2.y = -((u16)sprite->data[2] >> 8); - sprite->pos2.x = Sin(sprite->data[3], 4); + sprite->y2 = -((u16)sprite->data[2] >> 8); + sprite->x2 = Sin(sprite->data[3], 4); sprite->data[3] = (sprite->data[3] + 3) & 0xFF; - y = sprite->pos1.y + sprite->pos2.y; + y = sprite->y + sprite->y2; if (y <= 72) { sprite->invisible = sprite->data[3] % 2; @@ -3402,8 +3402,8 @@ static void AnimTask_ScaryFace_Step(u8 taskId) // arg 1: initial wave offset static void AnimOrbitFast(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->affineAnimPaused = 1; sprite->data[0] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[1]; @@ -3419,8 +3419,8 @@ static void AnimOrbitFast_Step(struct Sprite *sprite) else sprite->subpriority = sprite->data[7] - 1; - sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8); - sprite->pos2.y = Cos(sprite->data[1], sprite->data[3] >> 8); + sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8); + sprite->y2 = Cos(sprite->data[1], sprite->data[3] >> 8); sprite->data[1] = (sprite->data[1] + 9) & 0xFF; switch (sprite->data[5]) { @@ -3453,8 +3453,8 @@ static void AnimOrbitFast_Step(struct Sprite *sprite) // arg 0: initial wave offset static void AnimOrbitScatter(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->callback = AnimOrbitScatter_Step; @@ -3462,25 +3462,25 @@ static void AnimOrbitScatter(struct Sprite *sprite) static void AnimOrbitScatter_Step(struct Sprite *sprite) { - sprite->pos2.x += sprite->data[0]; - sprite->pos2.y += sprite->data[1]; - if (sprite->pos1.x + sprite->pos2.x + 16 > ((u32)DISPLAY_WIDTH + 32) - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16) + sprite->x2 += sprite->data[0]; + sprite->y2 += sprite->data[1]; + if (sprite->x + sprite->x2 + 16 > ((u32)DISPLAY_WIDTH + 32) + || sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); } static void AnimSpitUpOrb_Step(struct Sprite *sprite) { - sprite->pos2.x += sprite->data[0]; - sprite->pos2.y += sprite->data[1]; + sprite->x2 += sprite->data[0]; + sprite->y2 += sprite->data[1]; if (sprite->data[3]++ >= sprite->data[2]) DestroyAnimSprite(sprite); } static void AnimSpitUpOrb(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->data[2] = gBattleAnimArgs[1]; @@ -3504,20 +3504,20 @@ static void AnimAngel(struct Sprite *sprite) s16 var0; if (!sprite->data[0]) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->data[0]++; var0 = (sprite->data[0] * 10) & 0xFF; - sprite->pos2.x = Sin(var0, 80) >> 8; + sprite->x2 = Sin(var0, 80) >> 8; if (sprite->data[0] < 80) - sprite->pos2.y = (sprite->data[0] / 2) + (Cos(var0, 80) >> 8); + sprite->y2 = (sprite->data[0] / 2) + (Cos(var0, 80) >> 8); if (sprite->data[0] > 90) { sprite->data[2]++; - sprite->pos2.x -= sprite->data[2] / 2; + sprite->x2 -= sprite->data[2] / 2; } if (sprite->data[0] > 100) @@ -3527,8 +3527,8 @@ static void AnimAngel(struct Sprite *sprite) static void AnimPinkHeart_Step(struct Sprite *sprite) { sprite->data[5]++; - sprite->pos2.x = Sin(sprite->data[3], 5); - sprite->pos2.y = sprite->data[5] / 2; + sprite->x2 = Sin(sprite->data[3], 5); + sprite->y2 = sprite->data[5] / 2; sprite->data[3] = (sprite->data[3] + 3) & 0xFF; if (sprite->data[5] > 20) sprite->invisible = sprite->data[5] % 2; @@ -3548,16 +3548,16 @@ static void AnimPinkHeart(struct Sprite *sprite) else { sprite->data[4] += sprite->data[1]; - sprite->pos2.x = sprite->data[4] >> 8; - sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); + sprite->x2 = sprite->data[4] >> 8; + sprite->y2 = Sin(sprite->data[3], sprite->data[2]); sprite->data[3] = (sprite->data[3] + 3) & 0xFF; if (sprite->data[3] > 70) { sprite->callback = AnimPinkHeart_Step; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[3] = Random2() % 180; } } @@ -3567,8 +3567,8 @@ static void AnimDevil(struct Sprite *sprite) { if (sprite->data[3] == 0) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; StartSpriteAnim(sprite, 0); sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1; sprite->data[2] = 1; @@ -3577,8 +3577,8 @@ static void AnimDevil(struct Sprite *sprite) sprite->data[1] = (sprite->data[0] * 4) % 256; if (sprite->data[1] < 0) sprite->data[1] = 0; - sprite->pos2.x = Cos(sprite->data[1], 30 - sprite->data[0] / 4); - sprite->pos2.y = Sin(sprite->data[1], 10 - sprite->data[0] / 8); + sprite->x2 = Cos(sprite->data[1], 30 - sprite->data[0] / 4); + sprite->y2 = Sin(sprite->data[1], 10 - sprite->data[0] / 8); if (sprite->data[1] > 128 && sprite->data[2] > 0) sprite->data[2] = -1; if (sprite->data[1] == 0 && sprite->data[2] < 0) @@ -3596,8 +3596,8 @@ static void AnimFurySwipes(struct Sprite *sprite) { if (sprite->data[0] == 0) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; StartSpriteAnim(sprite, gBattleAnimArgs[2]); sprite->data[0]++; } @@ -3617,19 +3617,19 @@ static void AnimMovementWaves(struct Sprite *sprite) { if (!gBattleAnimArgs[0]) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); } if (!gBattleAnimArgs[1]) - sprite->pos1.x += 32; + sprite->x += 32; else - sprite->pos1.x -= 32; + sprite->x -= 32; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[1]; @@ -3671,11 +3671,11 @@ static void AnimJaggedMusicNote(struct Sprite *sprite) if (GetBattlerSide(battler) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->pos1.x = GetBattlerSpriteCoord(battler, 2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(battler, 2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[2]; sprite->data[0] = 0; - sprite->data[1] = (u16)sprite->pos1.x << 3; - sprite->data[2] = (u16)sprite->pos1.y << 3; + sprite->data[1] = (u16)sprite->x << 3; + sprite->data[2] = (u16)sprite->y << 3; var1 = gBattleAnimArgs[1] << 3; if (var1 < 0) @@ -3695,8 +3695,8 @@ static void AnimJaggedMusicNote_Step(struct Sprite *sprite) { sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 3; - sprite->pos1.y = sprite->data[2] >> 3; + sprite->x = sprite->data[1] >> 3; + sprite->y = sprite->data[2] >> 3; if (++sprite->data[0] > 16) DestroyAnimSprite(sprite); } @@ -3723,8 +3723,8 @@ static void AnimPerishSongMusicNote(struct Sprite *sprite) if (!sprite->data[0]) { - sprite->pos1.x = 120; - sprite->pos1.y = (gBattleAnimArgs[0] + (((u16)gBattleAnimArgs[0]) >> 31)) / 2 - 15; + sprite->x = 120; + sprite->y = (gBattleAnimArgs[0] + (((u16)gBattleAnimArgs[0]) >> 31)) / 2 - 15; StartSpriteAnim(sprite, gBattleAnimArgs[1]); @@ -3740,9 +3740,9 @@ static void AnimPerishSongMusicNote(struct Sprite *sprite) sprite->data[6] = (sprite->data[6] + 10) & 0xFF; index &= var2; - sprite->pos2.x = Cos(index, 100); + sprite->x2 = Cos(index, 100); - sprite->pos2.y = sprite->data[1] + Sin(index, 10) + Cos(sprite->data[6], 4); + sprite->y2 = sprite->data[1] + Sin(index, 10) + Cos(sprite->data[6], 4); if (sprite->data[0] > sprite->data[5]) { @@ -3770,7 +3770,7 @@ static void AnimPerishSongMusicNote_Step1(struct Sprite *sprite) static void AnimPerishSongMusicNote_Step2(struct Sprite *sprite) { sprite->data[3] += sprite->data[2]; - sprite->pos2.y = sprite->data[3]; + sprite->y2 = sprite->data[3]; sprite->data[2]++; @@ -3797,20 +3797,20 @@ static void AnimGuardRing(struct Sprite *sprite) { if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) { - SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y); - sprite->pos1.y += 40; + SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y); + sprite->y += 40; StartSpriteAffineAnim(sprite, 1); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 40; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 40; } sprite->data[0] = 13; - sprite->data[2] = sprite->pos1.x; - sprite->data[4] = sprite->pos1.y - 72; + sprite->data[2] = sprite->x; + sprite->data[4] = sprite->y - 72; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 5aaf45f1910c..f5c2c7ee6583 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1181,8 +1181,8 @@ const union AffineAnimCmd gSlackOffSquishAffineAnimCmds[] = static void AnimBlackSmoke(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; if (!gBattleAnimArgs[3]) sprite->data[0] = gBattleAnimArgs[2]; @@ -1197,7 +1197,7 @@ static void AnimBlackSmoke_Step(struct Sprite *sprite) { if (sprite->data[1] > 0) { - sprite->pos2.x = sprite->data[2] >> 8; + sprite->x2 = sprite->data[2] >> 8; sprite->data[2] += sprite->data[0]; sprite->invisible ^= 1; sprite->data[1]--; @@ -1252,7 +1252,7 @@ static void AnimTealAlert(struct Sprite *sprite) InitSpritePosToAnimTarget(sprite, TRUE); - rotation = ArcTan2Neg(sprite->pos1.x - x, sprite->pos1.y - y); + rotation = ArcTan2Neg(sprite->x - x, sprite->y - y); rotation += 0x6000; if (IsContest()) rotation += 0x4000; @@ -1315,23 +1315,23 @@ static void AnimMeanLookEye_Step3(struct Sprite *sprite) { case 0: case 1: - sprite->pos2.x = 1; - sprite->pos2.y = 0; + sprite->x2 = 1; + sprite->y2 = 0; break; case 2: case 3: - sprite->pos2.x = -1; - sprite->pos2.y = 0; + sprite->x2 = -1; + sprite->y2 = 0; break; case 4: case 5: - sprite->pos2.x = 0; - sprite->pos2.y = 1; + sprite->x2 = 0; + sprite->y2 = 1; break; case 6: default: - sprite->pos2.x = 0; - sprite->pos2.y = -1; + sprite->x2 = 0; + sprite->y2 = -1; break; } @@ -1470,7 +1470,7 @@ static void AnimLeer(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->callback = RunStoredCallbackWhenAnimEnds; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -1506,10 +1506,10 @@ static void AnimLetterZ(struct Sprite *sprite) var0 = (sprite->data[0] * 20) & 0xFF; sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] / 2; - sprite->pos2.y = Sin(var0 & 0xFF, 5) + (sprite->data[4] / 2); + sprite->x2 = sprite->data[3] / 2; + sprite->y2 = Sin(var0 & 0xFF, 5) + (sprite->data[4] / 2); - if ((u16)(sprite->pos1.x + sprite->pos2.x) > DISPLAY_WIDTH) + if ((u16)(sprite->x + sprite->x2) > DISPLAY_WIDTH) DestroyAnimSprite(sprite); } @@ -1567,7 +1567,7 @@ static void AnimSpotlight_Step1(struct Sprite *sprite) case 1: case 3: sprite->data[1] += 117; - sprite->pos2.x = sprite->data[1] >> 8; + sprite->x2 = sprite->data[1] >> 8; if (++sprite->data[2] == 21) { sprite->data[2] = 0; @@ -1576,7 +1576,7 @@ static void AnimSpotlight_Step1(struct Sprite *sprite) break; case 2: sprite->data[1] -= 117; - sprite->pos2.x = sprite->data[1] >> 8; + sprite->x2 = sprite->data[1] >> 8; if (++sprite->data[2] == 41) { sprite->data[2] = 0; @@ -1608,23 +1608,23 @@ static void AnimClappingHand(struct Sprite *sprite) { if (gBattleAnimArgs[3] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); } - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->oam.tileNum += 16; if (gBattleAnimArgs[2] == 0) { sprite->oam.matrixNum = ST_OAM_HFLIP; - sprite->pos2.x = -12; + sprite->x2 = -12; sprite->data[1] = 2; } else { - sprite->pos2.x = 12; + sprite->x2 = 12; sprite->data[1] = -2; } @@ -1640,8 +1640,8 @@ static void AnimClappingHand_Step(struct Sprite *sprite) { if (sprite->data[2] == 0) { - sprite->pos2.x += sprite->data[1]; - if (sprite->pos2.x == 0) + sprite->x2 += sprite->data[1]; + if (sprite->x2 == 0) { sprite->data[2]++; if (sprite->data[3] == 0) @@ -1652,8 +1652,8 @@ static void AnimClappingHand_Step(struct Sprite *sprite) } else { - sprite->pos2.x -= sprite->data[1]; - if (abs(sprite->pos2.x) == 12) + sprite->x2 -= sprite->data[1]; + if (abs(sprite->x2) == 12) { sprite->data[0]--; sprite->data[2]--; @@ -1710,18 +1710,18 @@ static void AnimRapidSpin(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); } - sprite->pos2.y = gBattleAnimArgs[2]; + sprite->y2 = gBattleAnimArgs[2]; - sprite->data[0] = (sprite->pos2.y > gBattleAnimArgs[3]); + sprite->data[0] = (sprite->y2 > gBattleAnimArgs[3]); sprite->data[1] = 0; sprite->data[2] = gBattleAnimArgs[4]; sprite->data[3] = gBattleAnimArgs[5]; @@ -1732,17 +1732,17 @@ static void AnimRapidSpin(struct Sprite *sprite) static void AnimRapidSpin_Step(struct Sprite *sprite) { sprite->data[1] = (sprite->data[1] + sprite->data[2]) & 0xFF; - sprite->pos2.x = gSineTable[sprite->data[1]] >> 4; - sprite->pos2.y += sprite->data[3]; + sprite->x2 = gSineTable[sprite->data[1]] >> 4; + sprite->y2 += sprite->data[3]; if (sprite->data[0]) { - if (sprite->pos2.y < sprite->data[4]) + if (sprite->y2 < sprite->data[4]) DestroyAnimSprite(sprite); } else { - if (sprite->pos2.y > sprite->data[4]) + if (sprite->y2 > sprite->data[4]) DestroyAnimSprite(sprite); } } @@ -2033,10 +2033,10 @@ static void AnimTriAttackTriangle(struct Sprite *sprite) if (sprite->data[0] == 61) { StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0] = 20; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); @@ -2066,8 +2066,8 @@ static void AnimBatonPassPokeball(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); sprite->data[1] = 256; sprite->data[2] = 256; @@ -2095,8 +2095,8 @@ static void AnimBatonPassPokeball(struct Sprite *sprite) } break; case 3: - sprite->pos2.y -= 6; - if (sprite->pos1.y + sprite->pos2.y < -32) + sprite->y2 -= 6; + if (sprite->y + sprite->y2 < -32) DestroyAnimSprite(sprite); break; } @@ -2105,11 +2105,11 @@ static void AnimBatonPassPokeball(struct Sprite *sprite) static void AnimWishStar(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x = -16; + sprite->x = -16; else - sprite->pos1.x = 256; + sprite->x = 256; - sprite->pos1.y = 0; + sprite->y = 0; sprite->callback = AnimWishStar_Step; } @@ -2119,23 +2119,23 @@ static void AnimWishStar_Step(struct Sprite *sprite) sprite->data[0] += 72; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos2.x = sprite->data[0] >> 4; + sprite->x2 = sprite->data[0] >> 4; else - sprite->pos2.x = -(sprite->data[0] >> 4); + sprite->x2 = -(sprite->data[0] >> 4); sprite->data[1] += 16; - sprite->pos2.y += sprite->data[1] >> 8; + sprite->y2 += sprite->data[1] >> 8; if (++sprite->data[2] % 3 == 0) { CreateSpriteAndAnimate( &gMiniTwinklingStarSpriteTemplate, - sprite->pos1.x + sprite->pos2.x, - sprite->pos1.y + sprite->pos2.y, + sprite->x + sprite->x2, + sprite->y + sprite->y2, sprite->subpriority + 1); } - newX = sprite->pos1.x + sprite->pos2.x + 32; + newX = sprite->x + sprite->x2 + 32; if (newX > 304) DestroyAnimSprite(sprite); } @@ -2155,7 +2155,7 @@ static void AnimMiniTwinklingStar(struct Sprite *sprite) if (y > 3) y = -y; - sprite->pos2.y = y; + sprite->y2 = y; sprite->callback = AnimMiniTwinklingStar_Step; } @@ -2226,9 +2226,9 @@ static void AnimSwallowBlueOrb(struct Sprite *sprite) sprite->data[0]++; break; case 1: - sprite->pos2.y -= sprite->data[1] >> 8; + sprite->y2 -= sprite->data[1] >> 8; sprite->data[1] -= 96; - if (sprite->pos1.y + sprite->pos2.y > sprite->data[2]) + if (sprite->y + sprite->y2 > sprite->data[2]) DestroyAnimSprite(sprite); break; } @@ -2476,13 +2476,13 @@ static void AnimGreenStar(struct Sprite *sprite) if (xOffset > 31) xOffset = 32 - xOffset; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + xOffset; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + xOffset; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; sprite->data[1] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; - spriteId1 = CreateSprite(&gGreenStarSpriteTemplate, sprite->pos1.x, sprite->pos1.y, sprite->subpriority + 1); - spriteId2 = CreateSprite(&gGreenStarSpriteTemplate, sprite->pos1.x, sprite->pos1.y, sprite->subpriority + 1); + spriteId1 = CreateSprite(&gGreenStarSpriteTemplate, sprite->x, sprite->y, sprite->subpriority + 1); + spriteId2 = CreateSprite(&gGreenStarSpriteTemplate, sprite->x, sprite->y, sprite->subpriority + 1); StartSpriteAnim(&gSprites[spriteId1], 1); StartSpriteAnim(&gSprites[spriteId2], 2); @@ -2505,16 +2505,16 @@ static void AnimGreenStar(struct Sprite *sprite) static void AnimGreenStar_Step1(struct Sprite *sprite) { s16 delta = sprite->data[3] + sprite->data[2]; - sprite->pos2.y -= delta >> 8; + sprite->y2 -= delta >> 8; sprite->data[3] += sprite->data[2]; sprite->data[3] &= 0xFF; - if (sprite->data[4] == 0 && sprite->pos2.y < -8) + if (sprite->data[4] == 0 && sprite->y2 < -8) { gSprites[sprite->data[6]].invisible = FALSE; sprite->data[4]++; } - if (sprite->data[4] == 1 && sprite->pos2.y < -16) + if (sprite->data[4] == 1 && sprite->y2 < -16) { gSprites[sprite->data[7]].invisible = FALSE; sprite->data[4]++; @@ -2543,7 +2543,7 @@ static void AnimGreenStar_Callback(struct Sprite *sprite) if (!sprite->invisible) { s16 delta = sprite->data[3] + sprite->data[2]; - sprite->pos2.y -= delta >> 8; + sprite->y2 -= delta >> 8; sprite->data[3] += sprite->data[2]; sprite->data[3] &= 0xFF; if (--sprite->data[1] == -1) @@ -2686,12 +2686,12 @@ static void AnimWeakFrustrationAngerMark(struct Sprite *sprite) sprite->data[2] += 128; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos2.x = -(sprite->data[1] >> 8); + sprite->x2 = -(sprite->data[1] >> 8); else - sprite->pos2.x = sprite->data[1] >> 8; + sprite->x2 = sprite->data[1] >> 8; - sprite->pos2.y += sprite->data[2] >> 8; - if (sprite->pos2.y > 64) + sprite->y2 += sprite->data[2] >> 8; + if (sprite->y2 > 64) DestroyAnimSprite(sprite); } } @@ -2747,7 +2747,7 @@ static void AnimTask_RockMonBackAndForth_Step(u8 taskId) switch (task->data[0]) { case 0: - gSprites[task->data[15]].pos2.x += task->data[5]; + gSprites[task->data[15]].x2 += task->data[5]; task->data[2] -= task->data[4]; SetSpriteRotScale(task->data[15], 0x100, 0x100, task->data[2]); SetBattlerSpriteYOffsetFromRotation(task->data[15]); @@ -2758,7 +2758,7 @@ static void AnimTask_RockMonBackAndForth_Step(u8 taskId) } break; case 1: - gSprites[task->data[15]].pos2.x -= task->data[5]; + gSprites[task->data[15]].x2 -= task->data[5]; task->data[2] += task->data[4]; SetSpriteRotScale(task->data[15], 0x100, 0x100, task->data[2]); SetBattlerSpriteYOffsetFromRotation(task->data[15]); @@ -2769,7 +2769,7 @@ static void AnimTask_RockMonBackAndForth_Step(u8 taskId) } break; case 2: - gSprites[task->data[15]].pos2.x += task->data[5]; + gSprites[task->data[15]].x2 += task->data[5]; task->data[2] -= task->data[4]; SetSpriteRotScale(task->data[15], 0x100, 0x100, task->data[2]); SetBattlerSpriteYOffsetFromRotation(task->data[15]); @@ -2802,13 +2802,13 @@ static void AnimSweetScentPetal(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x = 0; - sprite->pos1.y = gBattleAnimArgs[0]; + sprite->x = 0; + sprite->y = gBattleAnimArgs[0]; } else { - sprite->pos1.x = DISPLAY_WIDTH; - sprite->pos1.y = gBattleAnimArgs[0] - 30; + sprite->x = DISPLAY_WIDTH; + sprite->y = gBattleAnimArgs[0] - 30; } sprite->data[2] = gBattleAnimArgs[2]; @@ -2821,23 +2821,23 @@ static void AnimSweetScentPetal_Step(struct Sprite *sprite) sprite->data[0] += 3; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x += 5; - sprite->pos1.y -= 1; + sprite->x += 5; + sprite->y -= 1; - if (sprite->pos1.x > DISPLAY_WIDTH) + if (sprite->x > DISPLAY_WIDTH) DestroyAnimSprite(sprite); - sprite->pos2.y = Sin(sprite->data[0] & 0xFF, 16); + sprite->y2 = Sin(sprite->data[0] & 0xFF, 16); } else { - sprite->pos1.x -= 5; - sprite->pos1.y += 1; + sprite->x -= 5; + sprite->y += 1; - if (sprite->pos1.x < 0) + if (sprite->x < 0) DestroyAnimSprite(sprite); - sprite->pos2.y = Cos(sprite->data[0] & 0xFF, 16); + sprite->y2 = Cos(sprite->data[0] & 0xFF, 16); } } @@ -2913,7 +2913,7 @@ static void AnimTask_FlailMovement_Step(u8 taskId) SetSpriteRotScale(task->data[15], 0x100, 0x100, task->data[2]); SetBattlerSpriteYOffsetFromRotation(task->data[15]); - gSprites[task->data[15]].pos2.x = -(((temp = task->data[2]) >= 0 ? task->data[2] : temp + 63) >> 6); + gSprites[task->data[15]].x2 = -(((temp = task->data[2]) >= 0 ? task->data[2] : temp + 63) >> 6); if (++task->data[1] > 8) { @@ -2941,12 +2941,12 @@ static void AnimPainSplitProjectile(struct Sprite *sprite) { if (gBattleAnimArgs[2] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[1] = 0x80; sprite->data[2] = 0x300; sprite->data[3] = gBattleAnimArgs[1]; @@ -2954,9 +2954,9 @@ static void AnimPainSplitProjectile(struct Sprite *sprite) } else { - sprite->pos2.x = sprite->data[1] >> 8; - sprite->pos2.y += sprite->data[2] >> 8; - if (sprite->data[4] == 0 && sprite->pos2.y > -sprite->data[3]) + sprite->x2 = sprite->data[1] >> 8; + sprite->y2 += sprite->data[2] >> 8; + if (sprite->data[4] == 0 && sprite->y2 > -sprite->data[3]) { sprite->data[4] = 1; sprite->data[2] = (-sprite->data[2] / 3) * 2; @@ -2997,17 +2997,17 @@ void AnimTask_PainSplitMovement(u8 taskId) SetSpriteRotScale(spriteId, 0xD0, 0x130, 0xF00); SetBattlerSpriteYOffsetFromYScale(spriteId); if (IsContest() || GetBattlerSide(gTasks[taskId].data[11]) == B_SIDE_PLAYER) - gSprites[spriteId].pos2.y += 16; + gSprites[spriteId].y2 += 16; break; case 2: SetSpriteRotScale(spriteId, 0xD0, 0x130, 0xF100); SetBattlerSpriteYOffsetFromYScale(spriteId); if (IsContest() || GetBattlerSide(gTasks[taskId].data[11]) == B_SIDE_PLAYER) - gSprites[spriteId].pos2.y += 16; + gSprites[spriteId].y2 += 16; break; } - gSprites[spriteId].pos2.x = 2; + gSprites[spriteId].x2 = 2; gTasks[taskId].data[0]++; } else @@ -3016,14 +3016,14 @@ void AnimTask_PainSplitMovement(u8 taskId) if (++gTasks[taskId].data[2] == 3) { gTasks[taskId].data[2] = 0; - gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; + gSprites[spriteId].x2 = -gSprites[spriteId].x2; } if (++gTasks[taskId].data[1] == 13) { ResetSpriteRotScale(spriteId); - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); } } @@ -3054,11 +3054,11 @@ static void AnimFlatterConfetti(struct Sprite *sprite) sprite->data[2] = gBattleAnimArgs[0]; if (sprite->data[2] == ANIM_ATTACKER) - sprite->pos1.x = -8; + sprite->x = -8; else - sprite->pos1.x = 248; + sprite->x = 248; - sprite->pos1.y = 104; + sprite->y = 104; sprite->callback = AnimFlatterConfetti_Step; } @@ -3066,13 +3066,13 @@ static void AnimFlatterConfetti_Step(struct Sprite *sprite) { if (sprite->data[2] == 0) { - sprite->pos2.x += sprite->data[0] >> 8; - sprite->pos2.y -= sprite->data[1] >> 8; + sprite->x2 += sprite->data[0] >> 8; + sprite->y2 -= sprite->data[1] >> 8; } else { - sprite->pos2.x -= sprite->data[0] >> 8; - sprite->pos2.y -= sprite->data[1] >> 8; + sprite->x2 -= sprite->data[0] >> 8; + sprite->y2 -= sprite->data[1] >> 8; } sprite->data[0] -= 22; @@ -3140,8 +3140,8 @@ static void AnimFlatterSpotlight_Step(struct Sprite *sprite) // arg 1: initial wave offset static void AnimReversalOrb(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[1]; sprite->callback = AnimReversalOrb_Step; @@ -3150,8 +3150,8 @@ static void AnimReversalOrb(struct Sprite *sprite) static void AnimReversalOrb_Step(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8); - sprite->pos2.y = Cos(sprite->data[1], sprite->data[3] >> 8); + sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8); + sprite->y2 = Cos(sprite->data[1], sprite->data[3] >> 8); sprite->data[1] = (sprite->data[1] + 9) & 0xFF; if ((u16)sprite->data[1] < 64 || sprite->data[1] > 195) @@ -3496,14 +3496,14 @@ static void AnimTask_DeepInhale_Step(u8 taskId) task->data[1] = 0; task->data[2]++; if (task->data[2] & 1) - gSprites[task->data[15]].pos2.x = 1; + gSprites[task->data[15]].x2 = 1; else - gSprites[task->data[15]].pos2.x = -1; + gSprites[task->data[15]].x2 = -1; } } else { - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; } if (!RunAffineAnimFromTaskData(&gTasks[taskId])) @@ -3512,8 +3512,8 @@ static void AnimTask_DeepInhale_Step(u8 taskId) static void InitYawnCloudPosition(struct Sprite *sprite, s16 startX, s16 startY, s16 destX, s16 destY, u16 duration) { - sprite->pos1.x = startX; - sprite->pos1.y = startY; + sprite->x = startX; + sprite->y = startY; sprite->data[4] = startX << 4; sprite->data[5] = startY << 4; sprite->data[6] = ((destX - startX) << 4) / duration; @@ -3524,20 +3524,20 @@ static void UpdateYawnCloudPosition(struct Sprite *sprite) { sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; } // Drifts a cloud in a wavy path towards the target mon. // arg 0: which affine anim static void AnimYawnCloud(struct Sprite *sprite) { - s16 destX = sprite->pos1.x; - s16 destY = sprite->pos1.y; + s16 destX = sprite->x; + s16 destY = sprite->y; SetSpriteCoordsToAnimAttackerCoords(sprite); StartSpriteAffineAnim(sprite, gBattleAnimArgs[0]); - InitYawnCloudPosition(sprite, sprite->pos1.x, sprite->pos1.y, destX, destY, 64); + InitYawnCloudPosition(sprite, sprite->x, sprite->y, destX, destY, 64); sprite->data[0] = 0; sprite->callback = AnimYawnCloud_Step; } @@ -3549,7 +3549,7 @@ static void AnimYawnCloud_Step(struct Sprite *sprite) sprite->data[0]++; index = (sprite->data[0] * 8) & 0xFF; UpdateYawnCloudPosition(sprite); - sprite->pos2.y = Sin(index, 8); + sprite->y2 = Sin(index, 8); if (sprite->data[0] > 58) { if (++sprite->data[1] > 1) @@ -3575,8 +3575,8 @@ static void AnimSmokeBallEscapeCloud(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER) gBattleAnimArgs[1] = -gBattleAnimArgs[1]; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->callback = DestroyAnimSpriteAfterTimer; } @@ -3614,14 +3614,14 @@ static void AnimTask_SlideMonForFocusBand_Step2(u8 taskId) var0 = gTasks[taskId].data[7]; var1 = gTasks[taskId].data[8]; if (gTasks[taskId].data[2] & 0x8000) - gSprites[gTasks[taskId].data[15]].pos2.x = gTasks[taskId].data[9] - (var0 >> 8); + gSprites[gTasks[taskId].data[15]].x2 = gTasks[taskId].data[9] - (var0 >> 8); else - gSprites[gTasks[taskId].data[15]].pos2.x = gTasks[taskId].data[9] + (var0 >> 8); + gSprites[gTasks[taskId].data[15]].x2 = gTasks[taskId].data[9] + (var0 >> 8); if (gTasks[taskId].data[3] & 0x8000) - gSprites[gTasks[taskId].data[15]].pos2.y = gTasks[taskId].data[10] - (var1 >> 8); + gSprites[gTasks[taskId].data[15]].y2 = gTasks[taskId].data[10] - (var1 >> 8); else - gSprites[gTasks[taskId].data[15]].pos2.y = gTasks[taskId].data[10] + (var1 >> 8); + gSprites[gTasks[taskId].data[15]].y2 = gTasks[taskId].data[10] + (var1 >> 8); if (gTasks[taskId].data[0] < 1) { @@ -3664,14 +3664,14 @@ static void AnimTask_SlideMonForFocusBand_Step1(u8 taskId) var0 = (gTasks[taskId].data[2] & 0x7FFF) + gTasks[taskId].data[7]; var1 = (gTasks[taskId].data[3] & 0x7FFF) + gTasks[taskId].data[8]; if (gTasks[taskId].data[2] & 0x8000) - gSprites[gTasks[taskId].data[15]].pos2.x = gTasks[taskId].data[9] - (var0 >> 8); + gSprites[gTasks[taskId].data[15]].x2 = gTasks[taskId].data[9] - (var0 >> 8); else - gSprites[gTasks[taskId].data[15]].pos2.x = gTasks[taskId].data[9] + (var0 >> 8); + gSprites[gTasks[taskId].data[15]].x2 = gTasks[taskId].data[9] + (var0 >> 8); if (gTasks[taskId].data[3] & 0x8000) - gSprites[gTasks[taskId].data[15]].pos2.y = gTasks[taskId].data[10] - (var1 >> 8); + gSprites[gTasks[taskId].data[15]].y2 = gTasks[taskId].data[10] - (var1 >> 8); else - gSprites[gTasks[taskId].data[15]].pos2.y = gTasks[taskId].data[10] + (var1 >> 8); + gSprites[gTasks[taskId].data[15]].y2 = gTasks[taskId].data[10] + (var1 >> 8); gTasks[taskId].data[7] = var0; gTasks[taskId].data[8] = var1; @@ -3823,8 +3823,8 @@ static void CreateSweatDroplets(u8 taskId, bool8 arg1) static void AnimFacadeSweatDrop(struct Sprite *sprite) { - sprite->pos1.x += sprite->data[1]; - sprite->pos1.y += sprite->data[2]; + sprite->x += sprite->data[1]; + sprite->y += sprite->data[2]; if (++sprite->data[0] > 6) { gTasks[sprite->data[3]].data[sprite->data[4]]--; @@ -3889,8 +3889,8 @@ static void AnimRoarNoiseLine(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; if (gBattleAnimArgs[2] == 0) { sprite->data[0] = 0x280; @@ -3921,8 +3921,8 @@ static void AnimRoarNoiseLine_Step(struct Sprite *sprite) { sprite->data[6] += sprite->data[0]; sprite->data[7] += sprite->data[1]; - sprite->pos2.x = sprite->data[6] >> 8; - sprite->pos2.y = sprite->data[7] >> 8; + sprite->x2 = sprite->data[6] >> 8; + sprite->y2 = sprite->data[7] >> 8; if (++sprite->data[5] == 14) DestroyAnimSprite(sprite); } @@ -3987,21 +3987,21 @@ static void AnimTask_GlareEyeDots_Step(u8 taskId) if (task->data[7] == 0) { if (i == 0) - gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = -task->data[6]; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = -task->data[6]; else - gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = task->data[6]; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = task->data[6]; } else { if (i == 0) { - gSprites[spriteId].pos2.x = -task->data[6]; - gSprites[spriteId].pos2.y = task->data[6]; + gSprites[spriteId].x2 = -task->data[6]; + gSprites[spriteId].y2 = task->data[6]; } else { - gSprites[spriteId].pos2.x = task->data[6]; - gSprites[spriteId].pos2.y = -task->data[6]; + gSprites[spriteId].x2 = task->data[6]; + gSprites[spriteId].y2 = -task->data[6]; } } @@ -4068,8 +4068,8 @@ static void AnimGlareEyeDot(struct Sprite *sprite) // arg 4: duration static void AnimAssistPawprint(struct Sprite *sprite) { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1]; + sprite->x = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[2]; sprite->data[4] = gBattleAnimArgs[3]; sprite->data[0] = gBattleAnimArgs[4]; @@ -4165,15 +4165,15 @@ static void AnimSmellingSaltsHand(struct Sprite *sprite) sprite->oam.tileNum += 16; sprite->data[6] = gBattleAnimArgs[2]; sprite->data[7] = gBattleAnimArgs[1] == 0 ? -1 : 1; - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3); + sprite->y = GetBattlerSpriteCoord(battler, 3); if (gBattleAnimArgs[1] == 0) { sprite->oam.matrixNum |= ST_OAM_HFLIP; - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; } else { - sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) + 8; + sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) + 8; } sprite->callback = AnimSmellingSaltsHand_Step; @@ -4187,7 +4187,7 @@ static void AnimSmellingSaltsHand_Step(struct Sprite *sprite) if (++sprite->data[1] > 1) { sprite->data[1] = 0; - sprite->pos2.x += sprite->data[7]; + sprite->x2 += sprite->data[7]; if (++sprite->data[2] == 12) sprite->data[0]++; } @@ -4200,7 +4200,7 @@ static void AnimSmellingSaltsHand_Step(struct Sprite *sprite) } break; case 2: - sprite->pos2.x -= sprite->data[7] * 4; + sprite->x2 -= sprite->data[7] * 4; if (++sprite->data[1] == 6) { sprite->data[1] = 0; @@ -4208,7 +4208,7 @@ static void AnimSmellingSaltsHand_Step(struct Sprite *sprite) } break; case 3: - sprite->pos2.x += sprite->data[7] * 3; + sprite->x2 += sprite->data[7] * 3; if (++sprite->data[1] == 8) { if (--sprite->data[6]) @@ -4251,14 +4251,14 @@ static void AnimTask_SmellingSaltsSquish_Step(u8 taskId) { task->data[1] = 0; if (!(task->data[2] & 1)) - gSprites[task->data[15]].pos2.x = 2; + gSprites[task->data[15]].x2 = 2; else - gSprites[task->data[15]].pos2.x = -2; + gSprites[task->data[15]].x2 = -2; } if (!RunAffineAnimFromTaskData(task)) { - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; if (--task->data[0]) { PrepareAffineAnimInTaskData(&gTasks[taskId], gTasks[taskId].data[15], gSmellingSaltsSquishAffineAnimCmds); @@ -4280,17 +4280,17 @@ static void AnimSmellingSaltExclamation(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_TOP); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_TOP); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_TOP); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_TOP); } - if (sprite->pos1.y < 8) - sprite->pos1.y = 8; + if (sprite->y < 8) + sprite->y = 8; sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[1]; @@ -4319,16 +4319,16 @@ static void AnimHelpingHandClap(struct Sprite *sprite) if (gBattleAnimArgs[0] == 0) { sprite->oam.matrixNum |= ST_OAM_HFLIP; - sprite->pos1.x = 100; + sprite->x = 100; sprite->data[7] = 1; } else { - sprite->pos1.x = 140; + sprite->x = 140; sprite->data[7] = -1; } - sprite->pos1.y = 56; + sprite->y = 56; sprite->callback = AnimHelpingHandClap_Step; } @@ -4337,9 +4337,9 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.y -= sprite->data[7] * 2; + sprite->y -= sprite->data[7] * 2; if (sprite->data[1] & 1) - sprite->pos1.x -= sprite->data[7] * 2; + sprite->x -= sprite->data[7] * 2; if (++sprite->data[1] == 9) { @@ -4356,8 +4356,8 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) break; case 2: sprite->data[1]++; - sprite->pos1.y += sprite->data[7] * 3; - sprite->pos2.x = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); + sprite->y += sprite->data[7] * 3; + sprite->x2 = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); if (sprite->data[1] == 12) { sprite->data[1] = 0; @@ -4373,15 +4373,15 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) break; case 4: sprite->data[1]++; - sprite->pos1.y -= sprite->data[7] * 3; - sprite->pos2.x = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); + sprite->y -= sprite->data[7] * 3; + sprite->x2 = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); if (sprite->data[1] == 12) sprite->data[0]++; break; case 5: sprite->data[1]++; - sprite->pos1.y += sprite->data[7] * 3; - sprite->pos2.x = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); + sprite->y += sprite->data[7] * 3; + sprite->x2 = sprite->data[7] * (gSineTable[sprite->data[1] * 10] >> 3); if (sprite->data[1] == 15) sprite->oam.tileNum += 16; @@ -4392,7 +4392,7 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) } break; case 6: - sprite->pos1.x += sprite->data[7] * 6; + sprite->x += sprite->data[7] * 6; if (++sprite->data[1] == 9) { sprite->data[1] = 0; @@ -4400,7 +4400,7 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) } break; case 7: - sprite->pos1.x += sprite->data[7] * 2; + sprite->x += sprite->data[7] * 2; if (++sprite->data[1] == 1) { sprite->data[1] = 0; @@ -4408,7 +4408,7 @@ static void AnimHelpingHandClap_Step(struct Sprite *sprite) } break; case 8: - sprite->pos1.x -= sprite->data[7] * 3; + sprite->x -= sprite->data[7] * 3; if (++sprite->data[1] == 5) DestroyAnimSprite(sprite); break; @@ -4463,7 +4463,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 1: - gSprites[task->data[15]].pos2.x -= task->data[14] * 3; + gSprites[task->data[15]].x2 -= task->data[14] * 3; if (++task->data[1] == 6) { task->data[1] = 0; @@ -4471,7 +4471,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 2: - gSprites[task->data[15]].pos2.x += task->data[14] * 3; + gSprites[task->data[15]].x2 += task->data[14] * 3; if (++task->data[1] == 6) { task->data[1] = 0; @@ -4494,7 +4494,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 4: - gSprites[task->data[15]].pos2.x += task->data[14]; + gSprites[task->data[15]].x2 += task->data[14]; if (++task->data[1] == 3) { task->data[1] = 0; @@ -4509,7 +4509,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 6: - gSprites[task->data[15]].pos2.x -= task->data[14] * 4; + gSprites[task->data[15]].x2 -= task->data[14] * 4; if (++task->data[1] == 5) { task->data[1] = 0; @@ -4517,7 +4517,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 7: - gSprites[task->data[15]].pos2.x += task->data[14] * 4; + gSprites[task->data[15]].x2 += task->data[14] * 4; if (++task->data[1] == 5) { task->data[1] = 0; @@ -4525,7 +4525,7 @@ static void AnimTask_HelpingHandAttackerMovement_Step(u8 taskId) } break; case 8: - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; DestroyAnimVisualTask(taskId); break; } @@ -4594,9 +4594,9 @@ static void AnimForesightMagnifyingGlass_Step(struct Sprite *sprite) else sprite->data[0] = 12; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = x; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = y; InitAnimLinearTranslation(sprite); sprite->data[5]++; @@ -4607,19 +4607,19 @@ static void AnimForesightMagnifyingGlass_Step(struct Sprite *sprite) switch (sprite->data[6]) { default: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 0; sprite->data[5]++; sprite->data[6]++; break; case 4: - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[5] = 0; sprite->data[6]++; break; @@ -4657,14 +4657,14 @@ static void AnimForesightMagnifyingGlass_Step(struct Sprite *sprite) static void AnimMeteorMashStar_Step(struct Sprite *sprite) { - sprite->pos2.x = ((sprite->data[2] - sprite->data[0]) * sprite->data[5]) / sprite->data[4]; - sprite->pos2.y = ((sprite->data[3] - sprite->data[1]) * sprite->data[5]) / sprite->data[4]; + sprite->x2 = ((sprite->data[2] - sprite->data[0]) * sprite->data[5]) / sprite->data[4]; + sprite->y2 = ((sprite->data[3] - sprite->data[1]) * sprite->data[5]) / sprite->data[4]; if (!(sprite->data[5] & 1)) { CreateSprite( &gMiniTwinklingStarSpriteTemplate, - sprite->pos1.x + sprite->pos2.x, - sprite->pos1.y + sprite->pos2.y, 5); + sprite->x + sprite->x2, + sprite->y + sprite->y2, 5); } if (sprite->data[5] == sprite->data[4]) @@ -4686,20 +4686,20 @@ static void AnimMeteorMashStar(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER || IsContest()) { - sprite->data[0] = sprite->pos1.x - gBattleAnimArgs[0]; - sprite->data[2] = sprite->pos1.x - gBattleAnimArgs[2]; + sprite->data[0] = sprite->x - gBattleAnimArgs[0]; + sprite->data[2] = sprite->x - gBattleAnimArgs[2]; } else { - sprite->data[0] = sprite->pos1.x + gBattleAnimArgs[0]; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; + sprite->data[0] = sprite->x + gBattleAnimArgs[0]; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; } - sprite->data[1] = sprite->pos1.y + gBattleAnimArgs[1]; - sprite->data[3] = sprite->pos1.y + gBattleAnimArgs[3]; + sprite->data[1] = sprite->y + gBattleAnimArgs[1]; + sprite->data[3] = sprite->y + gBattleAnimArgs[3]; sprite->data[4] = gBattleAnimArgs[4]; - sprite->pos1.x = sprite->data[0]; - sprite->pos1.y = sprite->data[1]; + sprite->x = sprite->data[0]; + sprite->y = sprite->data[1]; sprite->callback = AnimMeteorMashStar_Step; } @@ -4751,22 +4751,22 @@ static void AnimTask_MonToSubstituteDoll(u8 taskId) switch (gTasks[taskId].data[0]) { case 0: - gSprites[spriteId].pos2.y = -200; - gSprites[spriteId].pos2.x = 200; + gSprites[spriteId].y2 = -200; + gSprites[spriteId].x2 = 200; gSprites[spriteId].invisible = FALSE; gTasks[taskId].data[10] = 0; gTasks[taskId].data[0]++; break; case 1: gTasks[taskId].data[10] += 112; - gSprites[spriteId].pos2.y += gTasks[taskId].data[10] >> 8; - if (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y >= -32) - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].y2 += gTasks[taskId].data[10] >> 8; + if (gSprites[spriteId].y + gSprites[spriteId].y2 >= -32) + gSprites[spriteId].x2 = 0; - if (gSprites[spriteId].pos2.y > 0) - gSprites[spriteId].pos2.y = 0; + if (gSprites[spriteId].y2 > 0) + gSprites[spriteId].y2 = 0; - if (gSprites[spriteId].pos2.y == 0) + if (gSprites[spriteId].y2 == 0) { PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); gTasks[taskId].data[10] -= 0x800; @@ -4778,17 +4778,17 @@ static void AnimTask_MonToSubstituteDoll(u8 taskId) if (gTasks[taskId].data[10] < 0) gTasks[taskId].data[10] = 0; - gSprites[spriteId].pos2.y -= gTasks[taskId].data[10] >> 8; + gSprites[spriteId].y2 -= gTasks[taskId].data[10] >> 8; if (gTasks[taskId].data[10] == 0) gTasks[taskId].data[0]++; break; case 3: gTasks[taskId].data[10] += 112; - gSprites[spriteId].pos2.y += gTasks[taskId].data[10] >> 8; - if (gSprites[spriteId].pos2.y > 0) - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].y2 += gTasks[taskId].data[10] >> 8; + if (gSprites[spriteId].y2 > 0) + gSprites[spriteId].y2 = 0; - if (gSprites[spriteId].pos2.y == 0) + if (gSprites[spriteId].y2 == 0) { PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); DestroyAnimVisualTask(taskId); @@ -4814,8 +4814,8 @@ static void AnimBlockX(struct Sprite *sprite) y = -96; } - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); - sprite->pos2.y = y; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->y2 = y; sprite->callback = AnimBlockX_Step; } @@ -4824,32 +4824,32 @@ static void AnimBlockX_Step(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos2.y += 10; - if (sprite->pos2.y >= 0) + sprite->y2 += 10; + if (sprite->y2 >= 0) { PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(63)); - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0]++; } break; case 1: sprite->data[1] += 4; - sprite->pos2.y = -(gSineTable[sprite->data[1]] >> 3); + sprite->y2 = -(gSineTable[sprite->data[1]] >> 3); if (sprite->data[1] > 0x7F) { PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(63)); sprite->data[1] = 0; - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0]++; } break; case 2: sprite->data[1] += 6; - sprite->pos2.y = -(gSineTable[sprite->data[1]] >> 4); + sprite->y2 = -(gSineTable[sprite->data[1]] >> 4); if (sprite->data[1] > 0x7F) { sprite->data[1] = 0; - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0]++; } break; @@ -4901,8 +4901,8 @@ void AnimTask_OdorSleuthMovement(u8 taskId) return; } - gSprites[spriteId2].pos2.x += 24; - gSprites[spriteId1].pos2.x -= 24; + gSprites[spriteId2].x2 += 24; + gSprites[spriteId1].x2 -= 24; gSprites[spriteId2].data[0] = 0; gSprites[spriteId1].data[0] = 0; gSprites[spriteId2].data[1] = 0; @@ -4956,7 +4956,7 @@ static void MoveOdorSleuthClone(struct Sprite *sprite) sprite->data[4] = sprite->data[4] + sprite->data[3]; sprite->data[4] &= 0xFF; - sprite->pos2.x = Cos(sprite->data[4], sprite->data[5]); + sprite->x2 = Cos(sprite->data[4], sprite->data[5]); switch (sprite->data[0]) { case 0: @@ -5014,12 +5014,12 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); gTasks[taskId].data[1] += 0x800; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - gSprites[spriteId].pos2.x += (gTasks[taskId].data[1] >> 8); + gSprites[spriteId].x2 += (gTasks[taskId].data[1] >> 8); else - gSprites[spriteId].pos2.x -= (gTasks[taskId].data[1] >> 8); + gSprites[spriteId].x2 -= (gTasks[taskId].data[1] >> 8); gTasks[taskId].data[1] &= 0xFF; - x = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x; + x = gSprites[spriteId].x + gSprites[spriteId].x2; if ((u16)(x + 32) > 304) { gTasks[taskId].data[1] = 0; @@ -5077,12 +5077,12 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) spriteId2 = gTasks[taskId].data[15]; gTasks[taskId].data[1] += 0x800; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - gSprites[spriteId2].pos2.x -= (gTasks[taskId].data[1] >> 8); + gSprites[spriteId2].x2 -= (gTasks[taskId].data[1] >> 8); else - gSprites[spriteId2].pos2.x += (gTasks[taskId].data[1] >> 8); + gSprites[spriteId2].x2 += (gTasks[taskId].data[1] >> 8); gTasks[taskId].data[1] &= 0xFF; - x = gSprites[spriteId2].pos1.x + gSprites[spriteId2].pos2.x; + x = gSprites[spriteId2].x + gSprites[spriteId2].x2; if (gTasks[taskId].data[14] == 0) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) @@ -5114,9 +5114,9 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) spriteId2 = gTasks[taskId].data[15]; DestroySpriteAndFreeResources_(&gSprites[spriteId2]); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - gSprites[spriteId].pos2.x = -gSprites[spriteId].pos1.x - 32; + gSprites[spriteId].x2 = -gSprites[spriteId].x - 32; else - gSprites[spriteId].pos2.x = DISPLAY_WIDTH + 32 - gSprites[spriteId].pos1.x; + gSprites[spriteId].x2 = DISPLAY_WIDTH + 32 - gSprites[spriteId].x; gTasks[taskId].data[0]++; break; @@ -5125,19 +5125,19 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) gTasks[taskId].data[1] += 0x800; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - gSprites[spriteId].pos2.x += (gTasks[taskId].data[1] >> 8); - if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x >= GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X)) - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].x2 += (gTasks[taskId].data[1] >> 8); + if (gSprites[spriteId].x2 + gSprites[spriteId].x >= GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X)) + gSprites[spriteId].x2 = 0; } else { - gSprites[spriteId].pos2.x -= (gTasks[taskId].data[1] >> 8); - if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x <= GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X)) - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].x2 -= (gTasks[taskId].data[1] >> 8); + if (gSprites[spriteId].x2 + gSprites[spriteId].x <= GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X)) + gSprites[spriteId].x2 = 0; } gTasks[taskId].data[1] &= 0xFF; - if (gSprites[spriteId].pos2.x == 0) + if (gSprites[spriteId].x2 == 0) DestroyAnimVisualTask(taskId); break; } @@ -5151,7 +5151,7 @@ static void AnimUnusedItemBagSteal(struct Sprite *sprite) if (gBattleAnimArgs[7] == -1) { PlaySE12WithPanning(SE_M_VITAL_THROW, BattleAnimAdjustPanning(63)); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 16; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 16; sprite->data[0] = -32; sprite->data[7]++; sprite->invisible = FALSE; @@ -5164,7 +5164,7 @@ static void AnimUnusedItemBagSteal(struct Sprite *sprite) } break; case 1: - sprite->pos2.y = Sin(sprite->data[1], sprite->data[0]); + sprite->y2 = Sin(sprite->data[1], sprite->data[0]); sprite->data[1] += 5; if (sprite->data[1] > 0x7F) { @@ -5175,9 +5175,9 @@ static void AnimUnusedItemBagSteal(struct Sprite *sprite) sprite->data[2] += 0x100; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - sprite->pos2.x -= (sprite->data[2] >> 8); + sprite->x2 -= (sprite->data[2] >> 8); else - sprite->pos2.x += (sprite->data[2] >> 8); + sprite->x2 += (sprite->data[2] >> 8); sprite->data[2] &= 0xFF; if (sprite->data[3] == 2) @@ -5208,15 +5208,15 @@ void AnimTask_SnatchPartnerMove(u8 taskId) break; case 1: spriteId = gBattlerSpriteIds[gBattleAnimAttacker]; - gSprites[spriteId].pos2.x += gTasks[taskId].data[0]; + gSprites[spriteId].x2 += gTasks[taskId].data[0]; if (gTasks[taskId].data[0] > 0) { - if (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x >= gTasks[taskId].data[2]) + if (gSprites[spriteId].x + gSprites[spriteId].x2 >= gTasks[taskId].data[2]) gTasks[taskId].data[15]++; } else { - if (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x <= gTasks[taskId].data[2]) + if (gSprites[spriteId].x + gSprites[spriteId].x2 <= gTasks[taskId].data[2]) gTasks[taskId].data[15]++; } break; @@ -5226,22 +5226,22 @@ void AnimTask_SnatchPartnerMove(u8 taskId) break; case 3: spriteId = gBattlerSpriteIds[gBattleAnimAttacker]; - gSprites[spriteId].pos2.x += gTasks[taskId].data[0]; + gSprites[spriteId].x2 += gTasks[taskId].data[0]; if (gTasks[taskId].data[0] < 0) { - if (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x <= gTasks[taskId].data[1]) + if (gSprites[spriteId].x + gSprites[spriteId].x2 <= gTasks[taskId].data[1]) gTasks[taskId].data[15]++; } else { - if (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x >= gTasks[taskId].data[1]) + if (gSprites[spriteId].x + gSprites[spriteId].x2 >= gTasks[taskId].data[1]) gTasks[taskId].data[15]++; } break; case 4: default: spriteId = gBattlerSpriteIds[gBattleAnimAttacker]; - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].x2 = 0; DestroyAnimVisualTask(taskId); break; } @@ -5254,8 +5254,8 @@ void AnimTask_TeeterDanceMovement(u8 taskId) struct Task *task = &gTasks[taskId]; task->data[3] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[4] = GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER ? 1 : -1; - task->data[6] = gSprites[task->data[3]].pos1.y; - task->data[5] = gSprites[task->data[3]].pos1.x; + task->data[6] = gSprites[task->data[3]].y; + task->data[5] = gSprites[task->data[3]].x; task->data[9] = 0; task->data[11] = 0; task->data[10] = 1; @@ -5271,23 +5271,23 @@ static void AnimTask_TeeterDanceMovement_Step(u8 taskId) case 0: task->data[11] += 8; task->data[11] &= 0xFF; - gSprites[task->data[3]].pos2.x = gSineTable[task->data[11]] >> 5; + gSprites[task->data[3]].x2 = gSineTable[task->data[11]] >> 5; task->data[9] += 2; task->data[9] &= 0xFF; - gSprites[task->data[3]].pos1.x = (gSineTable[task->data[9]] >> 3) * task->data[4] + task->data[5]; + gSprites[task->data[3]].x = (gSineTable[task->data[9]] >> 3) * task->data[4] + task->data[5]; if (task->data[9] == 0) { - gSprites[task->data[3]].pos1.x = task->data[5]; + gSprites[task->data[3]].x = task->data[5]; task->data[0]++; } break; case 1: task->data[11] += 8; task->data[11] &= 0xFF; - gSprites[task->data[3]].pos2.x = gSineTable[task->data[11]] >> 5; + gSprites[task->data[3]].x2 = gSineTable[task->data[11]] >> 5; if (task->data[11] == 0) { - gSprites[task->data[3]].pos2.x = 0; + gSprites[task->data[3]].x2 = 0; task->data[0]++; } break; @@ -5311,8 +5311,8 @@ static void AnimKnockOffStrike_Step(struct Sprite *sprite) sprite->data[1] &= 0xFF; } - sprite->pos2.x = Cos(sprite->data[1], 20); - sprite->pos2.y = Sin(sprite->data[1], 20); + sprite->x2 = Cos(sprite->data[1], 20); + sprite->y2 = Sin(sprite->data[1], 20); if (sprite->animEnded) DestroyAnimSprite(sprite); @@ -5326,8 +5326,8 @@ static void AnimKnockOffStrike(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = -11; sprite->data[1] = 192; StartSpriteAffineAnim(sprite, 1); @@ -5336,8 +5336,8 @@ static void AnimKnockOffStrike(struct Sprite *sprite) { sprite->data[0] = 11; sprite->data[1] = 192; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->callback = AnimKnockOffStrike_Step; @@ -5347,10 +5347,10 @@ static void AnimKnockOffStrike(struct Sprite *sprite) // No args. static void AnimRecycle(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_TOP); - if (sprite->pos1.y < 16) - sprite->pos1.y = 16; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_TOP); + if (sprite->y < 16) + sprite->y = 16; sprite->data[6] = 0; sprite->data[7] = 16; @@ -5456,14 +5456,14 @@ static void AnimTask_SlackOffSquish_Step(u8 taskId) task->data[1] = 0; task->data[2]++; if (!(task->data[2] & 1)) - gSprites[task->data[15]].pos2.x = -1; + gSprites[task->data[15]].x2 = -1; else - gSprites[task->data[15]].pos2.x = 1; + gSprites[task->data[15]].x2 = 1; } } else { - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; } if (!RunAffineAnimFromTaskData(&gTasks[taskId])) diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 2c5c7e0f1de0..8a2469d09b01 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -459,11 +459,11 @@ const struct SpriteTemplate gShockWaveProgressingBoltSpriteTemplate = static void AnimLightning(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->callback = AnimLightning_Step; } @@ -476,9 +476,9 @@ static void AnimLightning_Step(struct Sprite *sprite) static void AnimUnusedSpinningFist(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; sprite->callback = AnimUnusedSpinningFist_Step; } @@ -491,18 +491,18 @@ static void AnimUnusedSpinningFist_Step(struct Sprite *sprite) static void AnimUnusedCirclingShock(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y -= gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y -= gBattleAnimArgs[1]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[2]; @@ -543,17 +543,17 @@ static void AnimSparkElectricity(struct Sprite *sprite) if (gBattleAnimArgs[5] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); - sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y); } else { - sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); } - sprite->pos2.x = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8; - sprite->pos2.y = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8; + sprite->x2 = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8; + sprite->y2 = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8; if (gBattleAnimArgs[6] & 1) sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; @@ -573,9 +573,9 @@ static void AnimZapCannonSpark(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, 1); sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); sprite->data[5] = gBattleAnimArgs[2]; @@ -590,8 +590,8 @@ static void AnimZapCannonSpark_Step(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.x += Sin(sprite->data[7], sprite->data[5]); - sprite->pos2.y += Cos(sprite->data[7], sprite->data[5]); + sprite->x2 += Sin(sprite->data[7], sprite->data[5]); + sprite->y2 += Cos(sprite->data[7], sprite->data[5]); sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF; if(!(sprite->data[7] % 3)) sprite->invisible ^= 1; @@ -616,8 +616,8 @@ static void AnimThunderboltOrb(struct Sprite *sprite) if (IsContest() || GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) gBattleAnimArgs[1] = -gBattleAnimArgs[1]; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->data[3] = gBattleAnimArgs[0]; sprite->data[4] = gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[3]; @@ -637,8 +637,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite) if (IsContest() || GetBattlerSide(battler) == B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->data[4] = gBattleAnimArgs[7] & 0x7FFF; sprite->data[5] = gBattleAnimArgs[2]; @@ -652,8 +652,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite) static void AnimSparkElectricityFlashing_Step(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[7], sprite->data[5]); - sprite->pos2.y = Cos(sprite->data[7], sprite->data[5]); + sprite->x2 = Sin(sprite->data[7], sprite->data[5]); + sprite->y2 = Cos(sprite->data[7], sprite->data[5]); sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF; if (sprite->data[7] % sprite->data[4] == 0) @@ -778,9 +778,9 @@ static void AnimThunderWave(struct Sprite *sprite) { u8 spriteId; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; - spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->pos1.x + 32, sprite->pos1.y, sprite->subpriority); + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; + spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->x + 32, sprite->y, sprite->subpriority); gSprites[spriteId].oam.tileNum += 8; gAnimVisualTaskCount++; gSprites[spriteId].callback = AnimThunderWave_Step; @@ -840,13 +840,13 @@ static void AnimTask_ElectricChargingParticles_Step(u8 taskId) if (spriteId != MAX_SPRITES) { struct Sprite *sprite = &gSprites[spriteId]; - sprite->pos1.x += sElectricChargingParticleCoordOffsets[task->data[9]][0]; - sprite->pos1.y += sElectricChargingParticleCoordOffsets[task->data[9]][1]; + sprite->x += sElectricChargingParticleCoordOffsets[task->data[9]][0]; + sprite->y += sElectricChargingParticleCoordOffsets[task->data[9]][1]; sprite->data[0] = 40 - task->data[8] * 5; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = task->data[14]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = task->data[15]; sprite->data[5] = taskId; @@ -892,13 +892,13 @@ static void AnimGrowingChargeOrb(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); @@ -910,17 +910,17 @@ static void AnimElectricPuff(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } - sprite->pos2.x = gBattleAnimArgs[1]; - sprite->pos2.y = gBattleAnimArgs[2]; + sprite->x2 = gBattleAnimArgs[1]; + sprite->y2 = gBattleAnimArgs[2]; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); sprite->callback = RunStoredCallbackWhenAnimEnds; } @@ -929,8 +929,8 @@ static void AnimElectricPuff(struct Sprite *sprite) static void AnimVoltTackleOrbSlide(struct Sprite *sprite) { StartSpriteAffineAnim(sprite, 1); - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[6] = GetAnimBattlerSpriteId(ANIM_ATTACKER); sprite->data[7] = 16; @@ -949,9 +949,9 @@ static void AnimVoltTackleOrbSlide_Step(struct Sprite *sprite) sprite->data[0]++; break; case 1: - sprite->pos1.x += sprite->data[7]; - gSprites[sprite->data[6]].pos2.x += sprite->data[7]; - if ((u16)(sprite->pos1.x + 80) > 400) + sprite->x += sprite->data[7]; + gSprites[sprite->data[6]].x2 += sprite->data[7]; + if ((u16)(sprite->x + 80) > 400) DestroySpriteAndMatrix(sprite); } } @@ -976,7 +976,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId) task->data[13] = -2; } - gSprites[task->data[15]].pos2.x = task->data[14]; + gSprites[task->data[15]].x2 = task->data[14]; task->data[0]++; break; case 1: @@ -988,7 +988,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId) if (task->data[14]) { task->data[14] += task->data[13]; - gSprites[task->data[15]].pos2.x = task->data[14]; + gSprites[task->data[15]].x2 = task->data[14]; } else task->data[0]++; @@ -1131,8 +1131,8 @@ static void AnimGrowingShockWaveOrb(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); StartSpriteAffineAnim(sprite, 2); sprite->data[0]++; break; diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index b3399901e4ff..47bb9312fc8b 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -412,7 +412,7 @@ const struct SpriteTemplate gFocusPunchFistSpriteTemplate = static void AnimUnusedHumanoidFoot(struct Sprite *sprite) { SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = 15; sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -478,8 +478,8 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite) gBattleAnimArgs[2] = Random2() % 5; StartSpriteAnim(sprite, gBattleAnimArgs[2]); - sprite->pos1.x = GetBattlerSpriteCoord(battler, 2); - sprite->pos1.y = GetBattlerSpriteCoord(battler, 3); + sprite->x = GetBattlerSpriteCoord(battler, 2); + sprite->y = GetBattlerSpriteCoord(battler, 3); xMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_WIDTH) / 2; yMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; @@ -495,11 +495,11 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite) if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER) y += 0xFFF0; - sprite->pos1.x += x; - sprite->pos1.y += y; + sprite->x += x; + sprite->y += y; sprite->data[0] = gBattleAnimArgs[1]; - sprite->data[7] = CreateSprite(&gBasicHitSplatSpriteTemplate, sprite->pos1.x, sprite->pos1.y, sprite->subpriority + 1); + sprite->data[7] = CreateSprite(&gBasicHitSplatSpriteTemplate, sprite->x, sprite->y, sprite->subpriority + 1); if (sprite->data[7] != 64) { StartSpriteAffineAnim(&gSprites[sprite->data[7]], 0); @@ -534,15 +534,15 @@ static void AnimCrossChopHand(struct Sprite *sprite) if (gBattleAnimArgs[2] == 0) { - sprite->data[2] = sprite->pos1.x - 20; + sprite->data[2] = sprite->x - 20; } else { - sprite->data[2] = sprite->pos1.x + 20; + sprite->data[2] = sprite->x + 20; sprite->hFlip = 1; } - sprite->data[4] = sprite->pos1.y - 20; + sprite->data[4] = sprite->y - 20; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimCrossChopHand_Step); } @@ -551,13 +551,13 @@ static void AnimCrossChopHand_Step(struct Sprite *sprite) { if (++sprite->data[5] == 11) { - sprite->data[2] = sprite->pos1.x - sprite->pos2.x; - sprite->data[4] = sprite->pos1.y - sprite->pos2.y; + sprite->data[2] = sprite->x - sprite->x2; + sprite->data[4] = sprite->y - sprite->y2; sprite->data[0] = 8; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -576,10 +576,10 @@ static void AnimSlidingKick(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; - sprite->data[3] = sprite->pos1.y; - sprite->data[4] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + sprite->data[3] = sprite->y; + sprite->data[4] = sprite->y; InitAnimLinearTranslation(sprite); @@ -594,7 +594,7 @@ static void AnimSlidingKick_Step(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.y += Sin(sprite->data[7] >> 8, sprite->data[5]); + sprite->y2 += Sin(sprite->data[7] >> 8, sprite->data[5]); sprite->data[7] += sprite->data[6]; } else @@ -674,8 +674,8 @@ static void AnimDizzyPunchDuck(struct Sprite *sprite) else { sprite->data[4] += sprite->data[1]; - sprite->pos2.x = sprite->data[4] >> 8; - sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); + sprite->x2 = sprite->data[4] >> 8; + sprite->y2 = Sin(sprite->data[3], sprite->data[2]); sprite->data[3] = (sprite->data[3] + 3) & 0xFF; if (sprite->data[3] > 100) @@ -691,17 +691,17 @@ static void AnimBrickBreakWall(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); } - sprite->pos1.x += gBattleAnimArgs[1]; - sprite->pos1.y += gBattleAnimArgs[2]; + sprite->x += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[2]; sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[3]; @@ -729,9 +729,9 @@ static void AnimBrickBreakWall_Step(struct Sprite *sprite) sprite->data[1] = 0; sprite->data[3]++; if (sprite->data[3] & 1) - sprite->pos2.x = 2; + sprite->x2 = 2; else - sprite->pos2.x = -2; + sprite->x2 = -2; } if (--sprite->data[2] == 0) @@ -745,13 +745,13 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3]; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3]; } sprite->oam.tileNum += gBattleAnimArgs[1] * 16; @@ -785,8 +785,8 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite) static void AnimBrickBreakWallShard_Step(struct Sprite *sprite) { - sprite->pos1.x += sprite->data[6]; - sprite->pos1.y += sprite->data[7]; + sprite->x += sprite->data[6]; + sprite->y += sprite->data[7]; if (++sprite->data[0] > 40) DestroyAnimSprite(sprite); @@ -796,8 +796,8 @@ static void AnimSuperpowerOrb(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->data[7] = gBattleAnimTarget; } @@ -820,9 +820,9 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite) SetGpuReg(REG_OFFSET_BLDCNT, 0); sprite->data[0] = 16; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(sprite->data[7], 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(sprite->data[7], 3); InitAnimLinearTranslation(sprite); @@ -834,11 +834,11 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite) // Floating rock that flies off to hit the target. Used by Superpower static void AnimSuperpowerRock(struct Sprite *sprite) { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = 120; + sprite->x = gBattleAnimArgs[0]; + sprite->y = 120; sprite->data[0] = gBattleAnimArgs[3]; - StorePointerInVars(&sprite->data[4], &sprite->data[5], (void *)(sprite->pos1.y << 8)); + StorePointerInVars(&sprite->data[4], &sprite->data[5], (void *)(sprite->y << 8)); sprite->data[6] = gBattleAnimArgs[1]; sprite->oam.tileNum += gBattleAnimArgs[2] * 4; @@ -857,8 +857,8 @@ static void AnimSuperpowerRock_Step1(struct Sprite *sprite) StorePointerInVars(&sprite->data[4], &sprite->data[5], var0); var0 = (void *)(((intptr_t)var0) >> 8); - sprite->pos1.y = (intptr_t)var0; - if (sprite->pos1.y < -8) + sprite->y = (intptr_t)var0; + if (sprite->y < -8) DestroyAnimSprite(sprite); else sprite->data[0]--; @@ -872,8 +872,8 @@ static void AnimSuperpowerRock_Step1(struct Sprite *sprite) sprite->data[0] = pos2 - pos0; sprite->data[1] = pos3 - pos1; - sprite->data[2] = sprite->pos1.x << 4; - sprite->data[3] = sprite->pos1.y << 4; + sprite->data[2] = sprite->x << 4; + sprite->data[3] = sprite->y << 4; sprite->callback = AnimSuperpowerRock_Step2; } @@ -885,11 +885,11 @@ static void AnimSuperpowerRock_Step2(struct Sprite *sprite) sprite->data[2] += sprite->data[0]; sprite->data[3] += sprite->data[1]; - sprite->pos1.x = sprite->data[2] >> 4; - sprite->pos1.y = sprite->data[3] >> 4; + sprite->x = sprite->data[2] >> 4; + sprite->y = sprite->data[3] >> 4; - edgeX = sprite->pos1.x + 8; - if (edgeX > 256 || sprite->pos1.y < -8 || sprite->pos1.y > 120) + edgeX = sprite->x + 8; + if (edgeX > 256 || sprite->y < -8 || sprite->y > 120) DestroyAnimSprite(sprite); } @@ -899,8 +899,8 @@ static void AnimSuperpowerFireball(struct Sprite *sprite) if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3); battler = gBattleAnimTarget; sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); } @@ -916,9 +916,9 @@ static void AnimSuperpowerFireball(struct Sprite *sprite) sprite->oam.matrixNum |= (ST_OAM_HFLIP | ST_OAM_VFLIP); sprite->data[0] = 16; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(battler, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(battler, 3); InitAnimLinearTranslation(sprite); @@ -938,8 +938,8 @@ static void AnimArmThrustHit(struct Sprite *sprite) { u8 turn; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[0]; sprite->data[3] = gBattleAnimArgs[1]; @@ -956,8 +956,8 @@ static void AnimArmThrustHit(struct Sprite *sprite) } StartSpriteAnim(sprite, sprite->data[1]); - sprite->pos2.x = sprite->data[2]; - sprite->pos2.y = sprite->data[3]; + sprite->x2 = sprite->data[2]; + sprite->y2 = sprite->data[3]; sprite->callback = AnimArmThrustHit_Step; } @@ -987,7 +987,7 @@ static void AnimFocusPunchFist(struct Sprite *sprite) if (sprite->affineAnimEnded) { sprite->data[1] = (sprite->data[1] + 40) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], 2); + sprite->x2 = Sin(sprite->data[1], 2); if (++sprite->data[0] > 40) DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index e18d72c31c6d..e70f31449712 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -481,7 +481,7 @@ static void AnimFireSpread(struct Sprite *sprite) { SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; sprite->data[1] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[3]; @@ -496,14 +496,14 @@ static void AnimFirePlume(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker)) { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] = -gBattleAnimArgs[4]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[4]; } @@ -518,14 +518,14 @@ static void AnimLargeFlame(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker)) { - sprite->pos1.x -= gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x -= gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[4]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[2] = -gBattleAnimArgs[4]; } @@ -540,8 +540,8 @@ static void AnimLargeFlame_Step(struct Sprite *sprite) { if (++sprite->data[0] < sprite->data[4]) { - sprite->pos2.x += sprite->data[2]; - sprite->pos2.y += sprite->data[3]; + sprite->x2 += sprite->data[2]; + sprite->y2 += sprite->data[3]; } if (sprite->data[0] == sprite->data[1]) @@ -554,15 +554,15 @@ static void AnimUnusedSmallEmber(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker)) { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; } else { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; sprite->subpriority = 8; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[4]; @@ -580,8 +580,8 @@ static void AnimUnusedSmallEmber_Step(struct Sprite *sprite) if(sprite->data[5] > 10000) sprite->subpriority = 1; - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8)); - sprite->pos2.y = Cos(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8)); + sprite->x2 = Sin(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8)); + sprite->y2 = Cos(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8)); sprite->data[0] += sprite->data[2]; sprite->data[5] += sprite->data[4]; @@ -602,8 +602,8 @@ static void AnimUnusedSmallEmber_Step(struct Sprite *sprite) // Sunlight from Sunny Day / sunny weather static void AnimSunlight(struct Sprite *sprite) { - sprite->pos1.x = 0; - sprite->pos1.y = 0; + sprite->x = 0; + sprite->y = 0; sprite->data[0] = 60; sprite->data[2] = 140; sprite->data[4] = 80; @@ -664,9 +664,9 @@ static void AnimFireRing_Step1(struct Sprite *sprite) if (++sprite->data[0] == 0x12) { sprite->data[0] = 0x19; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslation(sprite); @@ -681,18 +681,18 @@ static void AnimFireRing_Step2(struct Sprite *sprite) { sprite->data[0] = 0; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->y2 = 0; + sprite->x2 = 0; sprite->callback = AnimFireRing_Step3; sprite->callback(sprite); } else { - sprite->pos2.x += Sin(sprite->data[7], 28); - sprite->pos2.y += Cos(sprite->data[7], 28); + sprite->x2 += Sin(sprite->data[7], 28); + sprite->y2 += Cos(sprite->data[7], 28); sprite->data[7] = (sprite->data[7] + 20) & 0xFF; } @@ -708,8 +708,8 @@ static void AnimFireRing_Step3(struct Sprite *sprite) static void UpdateFireRingCircleOffset(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[7], 28); - sprite->pos2.y = Cos(sprite->data[7], 28); + sprite->x2 = Sin(sprite->data[7], 28); + sprite->y2 = Cos(sprite->data[7], 28); sprite->data[7] = (sprite->data[7] + 20) & 0xFF; } @@ -722,8 +722,8 @@ static void UpdateFireRingCircleOffset(struct Sprite *sprite) // AnimFireCross(struct Sprite *sprite) static void AnimFireCross(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; @@ -760,8 +760,8 @@ static void AnimFireSpiralOutward_Step1(struct Sprite *sprite) static void AnimFireSpiralOutward_Step2(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8); - sprite->pos2.y = Cos(sprite->data[1], sprite->data[2] >> 8); + sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8); + sprite->y2 = Cos(sprite->data[1], sprite->data[2] >> 8); sprite->data[1] = (sprite->data[1] + 10) & 0xFF; sprite->data[2] += 0xD0; @@ -781,7 +781,7 @@ void AnimTask_EruptionLaunchRocks(u8 taskId) task->data[1] = 0; task->data[2] = 0; task->data[3] = 0; - task->data[4] = gSprites[task->data[15]].pos1.y; + task->data[4] = gSprites[task->data[15]].y; task->data[5] = GetBattlerSide(gBattleAnimAttacker); task->data[6] = 0; @@ -805,9 +805,9 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) task->data[1] = 0; if (++task->data[2] & 0x1) - gSprites[task->data[15]].pos2.x = 3; + gSprites[task->data[15]].x2 = 3; else - gSprites[task->data[15]].pos2.x = -3; + gSprites[task->data[15]].x2 = -3; } if (task->data[5] != B_SIDE_PLAYER) @@ -815,14 +815,14 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) if (++task->data[3] > 4) { task->data[3] = 0; - gSprites[task->data[15]].pos1.y++; + gSprites[task->data[15]].y++; } } if(!UpdateEruptAnimTask(task)) { SetBattlerSpriteYOffsetFromYScale(task->data[15]); - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; task->data[1] = 0; task->data[2] = 0; @@ -855,9 +855,9 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) task->data[1] = 0; if (++task->data[2] & 1) - gSprites[task->data[15]].pos2.y += 3; + gSprites[task->data[15]].y2 += 3; else - gSprites[task->data[15]].pos2.y -= 3; + gSprites[task->data[15]].y2 -= 3; } if (++task->data[3] > 0x18) @@ -868,7 +868,7 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 8); if (task->data[2] & 1) - gSprites[task->data[15]].pos2.y -= 3; + gSprites[task->data[15]].y2 -= 3; task->data[1] = 0; task->data[2] = 0; @@ -878,11 +878,11 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) break; case 5: if (task->data[5] != B_SIDE_PLAYER) - gSprites[task->data[15]].pos1.y--; + gSprites[task->data[15]].y--; if (!UpdateEruptAnimTask(task)) { - gSprites[task->data[15]].pos1.y = task->data[4]; + gSprites[task->data[15]].y = task->data[4]; ResetSpriteRotScale(task->data[15]); task->data[2] = 0; task->data[0]++; @@ -903,7 +903,7 @@ static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3) s8 sign; u16 y = GetEruptionLaunchRockInitialYPos(spriteId); - u16 x = gSprites[spriteId].pos1.x; + u16 x = gSprites[spriteId].x; if(!GetBattlerSide(gBattleAnimAttacker)) { @@ -949,7 +949,7 @@ static void AnimEruptionLaunchRock(struct Sprite *sprite) static u16 GetEruptionLaunchRockInitialYPos(u8 spriteId) { - s16 y = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y + gSprites[spriteId].centerToCornerVecY; + s16 y = gSprites[spriteId].y + gSprites[spriteId].y2 + gSprites[spriteId].centerToCornerVecY; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) y += 74; @@ -963,8 +963,8 @@ static void InitEruptionLaunchRockCoordData(struct Sprite *sprite, s16 x, s16 y) { sprite->data[0] = 0; sprite->data[1] = 0; - sprite->data[2] = (u16)sprite->pos1.x * 8; - sprite->data[3] = (u16)sprite->pos1.y * 8; + sprite->data[2] = (u16)sprite->x * 8; + sprite->data[3] = (u16)sprite->y * 8; sprite->data[4] = x * 8; sprite->data[5] = y * 8; } @@ -981,18 +981,18 @@ static void UpdateEruptionLaunchRockPos(struct Sprite *sprite) } sprite->data[2] += sprite->data[4]; - sprite->pos1.x = sprite->data[2] >> 3; + sprite->x = sprite->data[2] >> 3; sprite->data[3] += sprite->data[5]; - sprite->pos1.y = sprite->data[3] >> 3; + sprite->y = sprite->data[3] >> 3; - if (sprite->pos1.x < -8 || sprite->pos1.x > 0xf8 || sprite->pos1.y < -8 || sprite->pos1.y > 120) + if (sprite->x < -8 || sprite->x > 0xf8 || sprite->y < -8 || sprite->y > 120) sprite->invisible = TRUE; } static void AnimEruptionFallingRock(struct Sprite *sprite) { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1]; + sprite->x = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1]; sprite->data[0] = 0; sprite->data[1] = 0; @@ -1018,10 +1018,10 @@ static void AnimEruptionFallingRock_Step(struct Sprite *sprite) sprite->data[0]++; // fall through case 1: - sprite->pos1.y += 8; - if (sprite->pos1.y >= sprite->data[7]) + sprite->y += 8; + if (sprite->y >= sprite->data[7]) { - sprite->pos1.y = sprite->data[7]; + sprite->y = sprite->data[7]; sprite->data[0]++; } break; @@ -1031,11 +1031,11 @@ static void AnimEruptionFallingRock_Step(struct Sprite *sprite) sprite->data[1] = 0; if ((++sprite->data[2] & 1) != 0) { - sprite->pos2.y = -3; + sprite->y2 = -3; } else { - sprite->pos2.y = 3; + sprite->y2 = 3; } } @@ -1072,14 +1072,14 @@ static void AnimWillOWispOrb(struct Sprite *sprite) sprite->data[1] += 192; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos2.y = -(sprite->data[1] >> 8); + sprite->y2 = -(sprite->data[1] >> 8); } else { - sprite->pos2.y = sprite->data[1] >> 8; + sprite->y2 = sprite->data[1] >> 8; } - sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]); + sprite->x2 = Sin(sprite->data[2], sprite->data[4]); sprite->data[2] = (sprite->data[2] + 4) & 0xFF; if (++sprite->data[3] == 1) @@ -1089,20 +1089,20 @@ static void AnimWillOWispOrb(struct Sprite *sprite) } break; case 2: - sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]); + sprite->x2 = Sin(sprite->data[2], sprite->data[4]); sprite->data[2] = (sprite->data[2] + 4) & 0xFF; if (++sprite->data[3] == 31) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 256; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslationWithSpeed(sprite); @@ -1119,7 +1119,7 @@ static void AnimWillOWispOrb_Step(struct Sprite *sprite) if (!AnimTranslateLinear(sprite)) { - sprite->pos2.x += Sin(sprite->data[5], 16); + sprite->x2 += Sin(sprite->data[5], 16); initialData5 = sprite->data[5]; sprite->data[5] = (sprite->data[5] + 4) & 0xFF; newData5 = sprite->data[5]; @@ -1146,8 +1146,8 @@ static void AnimWillOWispFire(struct Sprite *sprite) sprite->data[3] += 0xC0 * 2; sprite->data[4] += 0xA0; - sprite->pos2.x = Sin(sprite->data[1], sprite->data[3] >> 8); - sprite->pos2.y = Cos(sprite->data[1], sprite->data[4] >> 8); + sprite->x2 = Sin(sprite->data[1], sprite->data[3] >> 8); + sprite->y2 = Cos(sprite->data[1], sprite->data[4] >> 8); sprite->data[1] = (sprite->data[1] + 7) & 0xFF; @@ -1205,7 +1205,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId) for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) { - gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11]; + gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11]; } if (++task->data[9] == 16) @@ -1228,7 +1228,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId) for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) { - gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11]; + gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11]; } if (++task->data[9] == 96) @@ -1253,7 +1253,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId) for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) { - gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11]; + gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11]; } if (++task->data[9] == 16) @@ -1264,7 +1264,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId) case 3: for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) { - gSprites[task->data[task->data[3] + 14]].pos2.x = 0; + gSprites[task->data[task->data[3] + 14]].x2 = 0; } DestroyAnimVisualTask(taskId); @@ -1312,14 +1312,14 @@ void AnimTask_ShakeTargetInPattern(u8 taskId) dir = sShakeDirsPattern1[gTasks[taskId].tShakeNum % 10]; if (gTasks[taskId].tVertical == TRUE) - gSprites[spriteId].pos2.y = gBattleAnimArgs[1] * dir < 0 ? -(gBattleAnimArgs[1] * dir) : gBattleAnimArgs[1] * dir; + gSprites[spriteId].y2 = gBattleAnimArgs[1] * dir < 0 ? -(gBattleAnimArgs[1] * dir) : gBattleAnimArgs[1] * dir; else - gSprites[spriteId].pos2.x = gBattleAnimArgs[1] * dir; + gSprites[spriteId].x2 = gBattleAnimArgs[1] * dir; if (gTasks[taskId].tShakeNum == gTasks[taskId].tMaxShakes) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); } } diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 9e3e6c33ee4d..1e9b3b56f2c4 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -353,7 +353,7 @@ const struct SpriteTemplate gSkyAttackBirdSpriteTemplate = static void AnimEllipticalGust(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, FALSE); - sprite->pos1.y += 20; + sprite->y += 20; sprite->data[1] = 191; sprite->callback = AnimEllipticalGust_Step; sprite->callback(sprite); @@ -361,8 +361,8 @@ static void AnimEllipticalGust(struct Sprite *sprite) static void AnimEllipticalGust_Step(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[1], 32); - sprite->pos2.y = Cos(sprite->data[1], 8); + sprite->x2 = Sin(sprite->data[1], 32); + sprite->y2 = Cos(sprite->data[1], 8); sprite->data[1] += 5; sprite->data[1] &= 0xFF; if (++sprite->data[0] == 71) @@ -412,9 +412,9 @@ static void AnimGustToTarget(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; InitAnimLinearTranslation(sprite); sprite->callback = RunStoredCallbackWhenAffineAnimEnds; @@ -443,10 +443,10 @@ static void AnimAirWaveCrescent(struct Sprite *sprite) gBattleAnimArgs[3] = -gBattleAnimArgs[3]; } - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; if (gBattleAnimArgs[6] == 0) @@ -485,10 +485,10 @@ static void AnimFlyBallUp_Step(struct Sprite *sprite) else { sprite->data[2] += sprite->data[1]; - sprite->pos2.y -= (sprite->data[2] >> 8); + sprite->y2 -= (sprite->data[2] >> 8); } - if (sprite->pos1.y + sprite->pos2.y < -32) + if (sprite->y + sprite->y2 < -32) DestroyAnimSprite(sprite); } @@ -496,20 +496,20 @@ static void AnimFlyBallAttack(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x = DISPLAY_WIDTH + 32; - sprite->pos1.y = -32; + sprite->x = DISPLAY_WIDTH + 32; + sprite->y = -32; StartSpriteAffineAnim(sprite, 1); } else { - sprite->pos1.x = -32; - sprite->pos1.y = -32; + sprite->x = -32; + sprite->y = -32; } sprite->data[0] = gBattleAnimArgs[0]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); @@ -522,14 +522,14 @@ static void AnimFlyBallAttack_Step(struct Sprite *sprite) AnimTranslateLinear(sprite); if (((u16)sprite->data[3] >> 8) > 200) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->x2 = 0; sprite->data[3] &= 0xFF; } - if (sprite->pos1.x + sprite->pos2.x < -32 - || sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32 - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT) + if (sprite->x + sprite->x2 < -32 + || sprite->x + sprite->x2 > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT) { gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; DestroyAnimSprite(sprite); @@ -584,11 +584,11 @@ static void AnimFallingFeather(struct Sprite *sprite) if (GetBattlerSide(battler) == B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_HEIGHT) + gBattleAnimArgs[0]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_HEIGHT) + gBattleAnimArgs[0]; spriteCoord = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_WIDTH); - sprite->pos1.y = spriteCoord + gBattleAnimArgs[1]; + sprite->y = spriteCoord + gBattleAnimArgs[1]; - data->unk8 = sprite->pos1.y << 8; + data->unk8 = sprite->y << 8; data->unkE_1 = spriteCoord + gBattleAnimArgs[6]; data->unk0_0c = 1; data->unk2 = gBattleAnimArgs[2] & 0xFF; @@ -631,10 +631,10 @@ static void AnimFallingFeather(struct Sprite *sprite) } data->unk0_1 = data->unk2 >> 6; - sprite->pos2.x = (gSineTable[data->unk2] * data->unkC[0]) >> 8; + sprite->x2 = (gSineTable[data->unk2] * data->unkC[0]) >> 8; matrixNum = sprite->oam.matrixNum; - sinIndex = (-sprite->pos2.x >> 1) + data->unkA; + sinIndex = (-sprite->x2 >> 1) + data->unkA; spriteCoord = gSineTable[sinIndex]; gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64]; @@ -867,10 +867,10 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) break; } - sprite->pos2.x = ((s32)data->unkC[data->unk0_0b] * gSineTable[data->unk2]) >> 8; + sprite->x2 = ((s32)data->unkC[data->unk0_0b] * gSineTable[data->unk2]) >> 8; matrixNum = sprite->oam.matrixNum; - sinIndex = (-sprite->pos2.x >> 1) + data->unkA; + sinIndex = (-sprite->x2 >> 1) + data->unkA; sinVal = gSineTable[sinIndex]; gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64]; @@ -878,13 +878,13 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) gOamMatrices[matrixNum].c = -sinVal; data->unk8 += data->unk6; - sprite->pos1.y = data->unk8 >> 8; + sprite->y = data->unk8 >> 8; if (data->unk4 & 0x8000) data->unk2 = (data->unk2 - (data->unk4 & 0x7FFF)) & 0xFF; else data->unk2 = (data->unk2 + (data->unk4 & 0x7FFF)) & 0xFF; - if (sprite->pos1.y + sprite->pos2.y >= data->unkE_1) + if (sprite->y + sprite->y2 >= data->unkE_1) { sprite->data[0] = 0; sprite->callback = DestroyAnimSpriteAfterTimer; @@ -895,8 +895,8 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) static void AnimUnusedBubbleThrow(struct Sprite *sprite) { sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget); - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->callback = TranslateAnimSpriteToTargetMonLocation; } @@ -913,16 +913,16 @@ static void AnimWhirlwindLine(struct Sprite * sprite) if ((gBattleAnimArgs[2] == ANIM_ATTACKER && !GetBattlerSide(gBattleAnimAttacker)) || (gBattleAnimArgs[2] == ANIM_TARGET && !GetBattlerSide(gBattleAnimTarget))) { - sprite->pos1.x += 8; + sprite->x += 8; } SeekSpriteAnim(sprite, gBattleAnimArgs[4]); - sprite->pos1.x -= 32; + sprite->x -= 32; sprite->data[1] = 0x0ccc; offset = gBattleAnimArgs[4]; mult = 12; - sprite->pos2.x += mult * offset; + sprite->x2 += mult * offset; sprite->data[0] = offset; sprite->data[7] = gBattleAnimArgs[3]; sprite->callback = AnimWhirlwindLine_Step; @@ -930,12 +930,12 @@ static void AnimWhirlwindLine(struct Sprite * sprite) static void AnimWhirlwindLine_Step(struct Sprite *sprite) { - sprite->pos2.x += sprite->data[1] >> 8; + sprite->x2 += sprite->data[1] >> 8; if (++sprite->data[0] == 6) { sprite->data[0] = 0; - sprite->pos2.x = 0; + sprite->x2 = 0; StartSpriteAnim(sprite, 0); } @@ -987,18 +987,18 @@ static void AnimBounceBallLand(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); - sprite->pos2.y = -sprite->pos1.y - 32; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->y2 = -sprite->y - 32; sprite->data[0]++; break; case 1: - sprite->pos2.y += 10; - if (sprite->pos2.y >= 0) + sprite->y2 += 10; + if (sprite->y2 >= 0) ++sprite->data[0]; break; case 2: - sprite->pos2.y -= 10; - if (sprite->pos1.y + sprite->pos2.y < -32) + sprite->y2 -= 10; + if (sprite->y + sprite->y2 < -32) { gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; DestroyAnimSprite(sprite); @@ -1022,10 +1022,10 @@ void AnimDiveBall_Step1(struct Sprite *sprite) { sprite->data[0]--; } - else if (sprite->pos1.y + sprite->pos2.y > -32) + else if (sprite->y + sprite->y2 > -32) { sprite->data[2] += sprite->data[1]; - sprite->pos2.y -= (sprite->data[2] >> 8); + sprite->y2 -= (sprite->data[2] >> 8); } else { @@ -1037,12 +1037,12 @@ void AnimDiveBall_Step1(struct Sprite *sprite) static void AnimDiveBall_Step2(struct Sprite *sprite) { - sprite->pos2.y += sprite->data[2] >> 8; + sprite->y2 += sprite->data[2] >> 8; - if (sprite->pos1.y + sprite->pos2.y > -32) + if (sprite->y + sprite->y2 > -32) sprite->invisible = FALSE; - if (sprite->pos2.y > 0) + if (sprite->y2 > 0) DestroyAnimSprite(sprite); } @@ -1056,13 +1056,13 @@ static void AnimDiveWaterSplash(struct Sprite *sprite) case 0: if (!gBattleAnimArgs[0]) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); } sprite->data[1] = 0x200; @@ -1089,7 +1089,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite) t2 = 128; t2 = (64 - t2) / 2; - sprite->pos2.y = t2; + sprite->y2 = t2; if (sprite->data[2] == 24) { @@ -1123,13 +1123,13 @@ static void AnimSprayWaterDroplet(struct Sprite *sprite) if (gBattleAnimArgs[1] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32; } sprite->callback = AnimSprayWaterDroplet_Step; @@ -1139,13 +1139,13 @@ static void AnimSprayWaterDroplet_Step(struct Sprite *sprite) { if (sprite->data[2] == 0) { - sprite->pos2.x += sprite->data[0] >> 8; - sprite->pos2.y -= sprite->data[1] >> 8; + sprite->x2 += sprite->data[0] >> 8; + sprite->y2 -= sprite->data[1] >> 8; } else { - sprite->pos2.x -= sprite->data[0] >> 8; - sprite->pos2.y -= sprite->data[1] >> 8; + sprite->x2 -= sprite->data[0] >> 8; + sprite->y2 -= sprite->data[1] >> 8; } sprite->data[0] = sprite->data[0]; @@ -1187,19 +1187,19 @@ static void AnimUnusedFlashingLight_Step(struct Sprite *sprite) static void AnimSkyAttackBird(struct Sprite *sprite) { u16 rotation; - s16 posx = sprite->pos1.x; - s16 posy = sprite->pos1.y; + s16 posx = sprite->x; + s16 posy = sprite->y; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); - sprite->data[4] = sprite->pos1.x << 4; - sprite->data[5] = sprite->pos1.y << 4; + sprite->data[4] = sprite->x << 4; + sprite->data[5] = sprite->y << 4; - sprite->data[6] = ((posx - sprite->pos1.x) << 4) / 12; - sprite->data[7] = ((posy - sprite->pos1.y) << 4) / 12; + sprite->data[6] = ((posx - sprite->x) << 4) / 12; + sprite->data[7] = ((posy - sprite->y) << 4) / 12; - rotation = ArcTan2Neg(posx - sprite->pos1.x, posy - sprite->pos1.y); + rotation = ArcTan2Neg(posx - sprite->x, posy - sprite->y); rotation -= 16384; TrySetSpriteRotScale(sprite, 1, 0x100, 0x100, rotation); @@ -1212,11 +1212,11 @@ void AnimSkyAttackBird_Step(struct Sprite *sprite) sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; - if (sprite->pos1.x > 285 || sprite->pos1.x < -45 - || sprite->pos1.y > 157 || sprite->pos1.y < -45) + if (sprite->x > 285 || sprite->x < -45 + || sprite->y > 157 || sprite->y < -45) DestroySpriteAndMatrix(sprite); } diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index e7cd4b253909..03a003c604fb 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -221,9 +221,9 @@ static void AnimConfuseRayBallBounce(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslationWithSpeed(sprite); sprite->callback = AnimConfuseRayBallBounce_Step1; @@ -243,8 +243,8 @@ static void AnimConfuseRayBallBounce_Step1(struct Sprite *sprite) return; } - sprite->pos2.x += Sin(sprite->data[5], 10); - sprite->pos2.y += Cos(sprite->data[5], 15); + sprite->x2 += Sin(sprite->data[5], 10); + sprite->y2 += Cos(sprite->data[5], 15); r2 = sprite->data[5]; sprite->data[5] = (sprite->data[5] + 5) & 0xFF; r0 = sprite->data[5]; @@ -261,8 +261,8 @@ static void AnimConfuseRayBallBounce_Step2(struct Sprite *sprite) s16 r0; sprite->data[0] = 1; AnimTranslateLinear(sprite); - sprite->pos2.x += Sin(sprite->data[5], 10); - sprite->pos2.y += Cos(sprite->data[5], 15); + sprite->x2 += Sin(sprite->data[5], 10); + sprite->y2 += Cos(sprite->data[5], 15); r2 = sprite->data[5]; sprite->data[5] = (sprite->data[5] + 5) & 0xFF; @@ -318,8 +318,8 @@ static void AnimConfuseRayBallSpiral(struct Sprite *sprite) static void AnimConfuseRayBallSpiral_Step(struct Sprite *sprite) { u16 temp1; - sprite->pos2.x = Sin(sprite->data[0], 32); - sprite->pos2.y = Cos(sprite->data[0], 8); + sprite->x2 = Sin(sprite->data[0], 32); + sprite->y2 = Cos(sprite->data[0], 8); temp1 = sprite->data[0] - 65; if (temp1 <= 130) sprite->oam.priority = 2; @@ -327,7 +327,7 @@ static void AnimConfuseRayBallSpiral_Step(struct Sprite *sprite) sprite->oam.priority = 1; sprite->data[0] = (sprite->data[0] + 19) & 0xFF; sprite->data[2] += 80; - sprite->pos2.y += sprite->data[2] >> 8; + sprite->y2 += sprite->data[2] >> 8; sprite->data[7] += 1; if (sprite->data[7] == 61) DestroyAnimSprite(sprite); @@ -397,19 +397,19 @@ static void AnimTask_NightShadeClone_Step2(u8 taskId) // arg 2: duration step 3 (center -> target) static void AnimShadowBall(struct Sprite *sprite) { - s16 oldPosX = sprite->pos1.x; - s16 oldPosY = sprite->pos1.y; + s16 oldPosX = sprite->x; + s16 oldPosY = sprite->y; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; sprite->data[3] = gBattleAnimArgs[2]; - sprite->data[4] = sprite->pos1.x << 4; - sprite->data[5] = sprite->pos1.y << 4; - sprite->data[6] = ((oldPosX - sprite->pos1.x) << 4) / (gBattleAnimArgs[0] << 1); - sprite->data[7] = ((oldPosY - sprite->pos1.y) << 4) / (gBattleAnimArgs[0] << 1); + sprite->data[4] = sprite->x << 4; + sprite->data[5] = sprite->y << 4; + sprite->data[6] = ((oldPosX - sprite->x) << 4) / (gBattleAnimArgs[0] << 1); + sprite->data[7] = ((oldPosY - sprite->y) << 4) / (gBattleAnimArgs[0] << 1); sprite->callback = AnimShadowBall_Step; } @@ -420,8 +420,8 @@ static void AnimShadowBall_Step(struct Sprite *sprite) case 0: sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; sprite->data[1] -= 1; if (sprite->data[1] > 0) break; @@ -433,22 +433,22 @@ static void AnimShadowBall_Step(struct Sprite *sprite) break; sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); - sprite->data[4] = sprite->pos1.x << 4; - sprite->data[5] = sprite->pos1.y << 4; - sprite->data[6] = ((sprite->data[1] - sprite->pos1.x) << 4) / sprite->data[3]; - sprite->data[7] = ((sprite->data[2] - sprite->pos1.y) << 4) / sprite->data[3]; + sprite->data[4] = sprite->x << 4; + sprite->data[5] = sprite->y << 4; + sprite->data[6] = ((sprite->data[1] - sprite->x) << 4) / sprite->data[3]; + sprite->data[7] = ((sprite->data[2] - sprite->y) << 4) / sprite->data[3]; sprite->data[0] += 1; break; case 2: sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; - sprite->pos1.x = sprite->data[4] >> 4; - sprite->pos1.y = sprite->data[5] >> 4; + sprite->x = sprite->data[4] >> 4; + sprite->y = sprite->data[5] >> 4; sprite->data[3] -= 1; if (sprite->data[3] > 0) break; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[0] += 1; break; case 3: @@ -648,7 +648,7 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId) task->data[15]++; break; case 2: - startLine = gSprites[task->data[13]].pos1.y + gSprites[task->data[13]].pos2.y - 32; + startLine = gSprites[task->data[13]].y + gSprites[task->data[13]].y2 - 32; if (startLine < 0) startLine = 0; @@ -770,8 +770,8 @@ static void AnimDestinyBondWhiteShadow(struct Sprite *sprite) sprite->data[6] = battler2Y; sprite->data[7] = sprite->data[4] / 2; sprite->oam.priority = 2; - sprite->pos1.x = battler1X; - sprite->pos1.y = battler1Y; + sprite->x = battler1X; + sprite->y = battler1Y; sprite->callback = AnimDestinyBondWhiteShadow_Step; sprite->invisible = TRUE; } @@ -782,8 +782,8 @@ static void AnimDestinyBondWhiteShadow_Step(struct Sprite *sprite) { sprite->data[0] += sprite->data[2]; sprite->data[1] += sprite->data[3]; - sprite->pos1.x = sprite->data[0] >> 4; - sprite->pos1.y = sprite->data[1] >> 4; + sprite->x = sprite->data[0] >> 4; + sprite->y = sprite->data[1] >> 4; if (--sprite->data[4] == 0) sprite->data[0] = 0; } @@ -1047,7 +1047,7 @@ static void AnimCurseNail(struct Sprite *sprite) xDelta2 = 2; } - sprite->pos1.x += xDelta; + sprite->x += xDelta; sprite->data[1] = xDelta2; sprite->data[0] = 60; sprite->callback = AnimCurseNail_Step1; @@ -1063,12 +1063,12 @@ static void AnimCurseNail_Step1(struct Sprite *sprite) } else { - sprite->pos2.x += sprite->data[1]; - var0 = sprite->pos2.x + 7; + sprite->x2 += sprite->data[1]; + var0 = sprite->x2 + 7; if (var0 > 14) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->x2 = 0; sprite->oam.tileNum += 8; if (++sprite->data[2] == 3) { @@ -1125,13 +1125,13 @@ static void AnimGhostStatusSprite(struct Sprite *sprite) u16 coeffB; u16 coeffA; - sprite->pos2.x = Sin(sprite->data[0], 12); + sprite->x2 = Sin(sprite->data[0], 12); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos2.x = -sprite->pos2.x; + sprite->x2 = -sprite->x2; sprite->data[0] = (sprite->data[0] + 6) & 0xFF; sprite->data[1] += 0x100; - sprite->pos2.y = -(sprite->data[1] >> 8); + sprite->y2 = -(sprite->data[1] >> 8); sprite->data[7]++; if (sprite->data[7] == 1) @@ -1284,7 +1284,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite) sprite->data[2] -= 2; sprite->data[2] &= 0xFF; - sprite->pos2.x = Sin(sprite->data[2], sprite->data[3]); + sprite->x2 = Sin(sprite->data[2], sprite->data[3]); index = sprite->data[2] - 65; if (index < 127) @@ -1294,7 +1294,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite) sprite->data[5]++; sprite->data[6] = (sprite->data[5] * 8) & 0xFF; - sprite->pos2.y = Sin(sprite->data[6], 7); + sprite->y2 = Sin(sprite->data[6], 7); if (gTasks[sprite->data[0]].data[8]) { gTasks[sprite->data[0]].data[7]--; @@ -1312,7 +1312,7 @@ static void AnimMonMoveCircular(struct Sprite *sprite) sprite->data[3] = gBattleAnimArgs[1]; sprite->callback = AnimMonMoveCircular_Step; - gSprites[sprite->data[5]].pos1.y += 8; + gSprites[sprite->data[5]].y += 8; } static void AnimMonMoveCircular_Step(struct Sprite *sprite) @@ -1320,17 +1320,17 @@ static void AnimMonMoveCircular_Step(struct Sprite *sprite) if (sprite->data[3]) { sprite->data[3]--; - gSprites[sprite->data[5]].pos2.x = Sin(sprite->data[0], sprite->data[1]); - gSprites[sprite->data[5]].pos2.y = Cos(sprite->data[0], sprite->data[1]); + gSprites[sprite->data[5]].x2 = Sin(sprite->data[0], sprite->data[1]); + gSprites[sprite->data[5]].y2 = Cos(sprite->data[0], sprite->data[1]); sprite->data[0] += sprite->data[2]; if (sprite->data[0] > 255) sprite->data[0] -= 256; } else { - gSprites[sprite->data[5]].pos2.x = 0; - gSprites[sprite->data[5]].pos2.y = 0; - gSprites[sprite->data[5]].pos1.y -= 8; + gSprites[sprite->data[5]].x2 = 0; + gSprites[sprite->data[5]].y2 = 0; + gSprites[sprite->data[5]].y -= 8; sprite->callback = DestroySpriteAndMatrix; } } diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index aa089394e793..2cd1351471c7 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -141,8 +141,8 @@ const struct SpriteTemplate gDirtMoundSpriteTemplate = // a boomerang. After hitting the target mon, it comes back to the user. static void AnimBonemerangProjectile(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[0] = 20; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); @@ -155,10 +155,10 @@ static void AnimBonemerangProjectile_Step(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 20; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); @@ -234,16 +234,16 @@ static void AnimMudSportDirt(struct Sprite *sprite) sprite->oam.tileNum++; if (gBattleAnimArgs[0] == 0) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[1] > 0 ? 1 : -1; sprite->callback = AnimMudSportDirtRising; } else { - sprite->pos1.x = gBattleAnimArgs[1]; - sprite->pos1.y = gBattleAnimArgs[2]; - sprite->pos2.y = -gBattleAnimArgs[2]; + sprite->x = gBattleAnimArgs[1]; + sprite->y = gBattleAnimArgs[2]; + sprite->y2 = -gBattleAnimArgs[2]; sprite->callback = AnimMudSportDirtFalling; } } @@ -253,11 +253,11 @@ static void AnimMudSportDirtRising(struct Sprite *sprite) if (++sprite->data[1] > 1) { sprite->data[1] = 0; - sprite->pos1.x += sprite->data[0]; + sprite->x += sprite->data[0]; } - sprite->pos1.y -= 4; - if (sprite->pos1.y < -4) + sprite->y -= 4; + if (sprite->y < -4) DestroyAnimSprite(sprite); } @@ -266,10 +266,10 @@ static void AnimMudSportDirtFalling(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos2.y += 4; - if (sprite->pos2.y >= 0) + sprite->y2 += 4; + if (sprite->y2 >= 0) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[0]++; } break; @@ -353,7 +353,7 @@ static void AnimTask_DigBounceMovement(u8 taskId) else gBattle_BG2_Y = task->data[13] - task->data[5]; - gSprites[task->data[10]].pos2.x = DISPLAY_WIDTH + 32 - gSprites[task->data[10]].pos1.x; + gSprites[task->data[10]].x2 = DISPLAY_WIDTH + 32 - gSprites[task->data[10]].x; task->data[0]++; } break; @@ -372,8 +372,8 @@ static void AnimTask_DigEndBounceMovementSetInvisible(u8 taskId) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1) gBattle_BG1_Y = 0; @@ -404,8 +404,8 @@ static void AnimTask_DigSetVisibleUnderground(u8 taskId) case 0: task->data[10] = GetAnimBattlerSpriteId(ANIM_ATTACKER); gSprites[task->data[10]].invisible = FALSE; - gSprites[task->data[10]].pos2.x = 0; - gSprites[task->data[10]].pos2.y = DISPLAY_HEIGHT - gSprites[task->data[10]].pos1.y; + gSprites[task->data[10]].x2 = 0; + gSprites[task->data[10]].y2 = DISPLAY_HEIGHT - gSprites[task->data[10]].y; task->data[0]++; break; case 1: @@ -438,12 +438,12 @@ static void AnimTask_DigRiseUpFromHole(u8 taskId) task->data[0]++; break; case 2: - gSprites[task->data[10]].pos2.y = 96; + gSprites[task->data[10]].y2 = 96; task->data[0]++; break; case 3: - gSprites[task->data[10]].pos2.y -= 8; - if (gSprites[task->data[10]].pos2.y == 0) + gSprites[task->data[10]].y2 -= 8; + if (gSprites[task->data[10]].y2 == 0) { gScanlineEffect.state = 3; task->data[0]++; @@ -518,11 +518,11 @@ void AnimDirtPlumeParticle(struct Sprite *sprite) gBattleAnimArgs[2] *= -1; } - sprite->pos1.x = GetBattlerSpriteCoord(battler, 2) + xOffset; - sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 30; + sprite->x = GetBattlerSpriteCoord(battler, 2) + xOffset; + sprite->y = GetBattlerYCoordWithElevation(battler) + 30; sprite->data[0] = gBattleAnimArgs[5]; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3]; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + sprite->data[4] = sprite->y + gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[4]; InitAnimArcTranslation(sprite); sprite->callback = AnimDirtPlumeParticle_Step; @@ -549,8 +549,8 @@ static void AnimDigDirtMound(struct Sprite *sprite) else battler = gBattleAnimTarget; - sprite->pos1.x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32); - sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 32; + sprite->x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32); + sprite->y = GetBattlerYCoordWithElevation(battler) + 32; sprite->oam.tileNum += gBattleAnimArgs[1] * 8; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); sprite->data[0] = gBattleAnimArgs[2]; @@ -698,7 +698,7 @@ static void AnimTask_ShakeBattlers(u8 taskId) break; case 2: for (i = 0; i < task->tNumBattlers; i++) - gSprites[task->tbattlerSpriteIds(i)].pos2.x = 0; + gSprites[task->tbattlerSpriteIds(i)].x2 = 0; DestroyAnimVisualTask(taskId); break; @@ -717,7 +717,7 @@ static void SetBattlersXOffsetForShake(struct Task *task) for (i = 0; i < task->tNumBattlers; i++) { - gSprites[task->tbattlerSpriteIds(i)].pos2.x = xOffset; + gSprites[task->tbattlerSpriteIds(i)].x2 = xOffset; } } diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 23b0f6c3be34..a0608cfd1c35 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -550,8 +550,8 @@ static void AnimUnusedIceCrystalThrow(struct Sprite *sprite) attackerX += sprite->data[1], attackerY += sprite->data[2]) ; - sprite->pos1.x = attackerX; - sprite->pos1.y = attackerY; + sprite->x = attackerX; + sprite->y = attackerY; sprite->data[0] = gBattleAnimArgs[4]; sprite->data[1] = attackerX; sprite->data[2] = targetX; @@ -569,10 +569,10 @@ static void AnimUnusedIceCrystalThrow_Step(struct Sprite *sprite) { sprite->data[5] += sprite->data[1]; sprite->data[6] += sprite->data[2]; - sprite->pos2.x = sprite->data[5]; - sprite->pos2.y = sprite->data[6]; - sprite->pos2.x += Sin(sprite->data[7], sprite->data[3]); - sprite->pos2.y += Sin(sprite->data[7], sprite->data[3]); + sprite->x2 = sprite->data[5]; + sprite->y2 = sprite->data[6]; + sprite->x2 += Sin(sprite->data[7], sprite->data[3]); + sprite->y2 += Sin(sprite->data[7], sprite->data[3]); sprite->data[7] = (sprite->data[7] + sprite->data[4]) & 0xFF; sprite->data[0]--; } @@ -631,12 +631,12 @@ static void AnimIceEffectParticle(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } StoreSpriteCallbackInData6(sprite, AnimFlickerIceEffectParticle); @@ -666,8 +666,8 @@ static void AnimSwirlingSnowball(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; if (!gBattleAnimArgs[5]) { @@ -696,16 +696,16 @@ static void AnimSwirlingSnowball(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT - || sprite->pos1.y + sprite->pos2.y < -16) + if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT + || sprite->y + sprite->y2 < -16) break; } - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; for (i = 0; i < 8; i++) sprite->data[i] = tempDataHolder[i]; @@ -718,10 +718,10 @@ static void AnimSwirlingSnowball_Step1(struct Sprite *sprite) { s16 tempVar; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[0] = 128; tempVar = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? 20 : -20; @@ -740,17 +740,17 @@ static void AnimSwirlingSnowball_Step2(struct Sprite *sprite) if (sprite->data[5] <= 31) { - sprite->pos2.x = Sin(sprite->data[0], tempVar) - sprite->data[3]; - sprite->pos2.y = Cos(sprite->data[0], 15) - sprite->data[4]; + sprite->x2 = Sin(sprite->data[0], tempVar) - sprite->data[3]; + sprite->y2 = Cos(sprite->data[0], 15) - sprite->data[4]; sprite->data[0] = (sprite->data[0] + 16) & 0xFF; sprite->data[5] += 1; } else { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->data[4] = 0; sprite->data[3] = 0; sprite->callback = AnimSwirlingSnowball_End; @@ -762,9 +762,9 @@ static void AnimSwirlingSnowball_End(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 - || sprite->pos1.y + sprite->pos2.y > 256 - || sprite->pos1.y + sprite->pos2.y < -16) + if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > 256 + || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); } @@ -786,8 +786,8 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; if (!gBattleAnimArgs[7]) { @@ -816,16 +816,16 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite) { sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT - || sprite->pos1.y + sprite->pos2.y < -16) + if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT + || sprite->y + sprite->y2 < -16) break; } - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; for (i = 0; i < 8; i++) sprite->data[i] = tempDataHolder[i]; @@ -842,13 +842,13 @@ static void AnimWiggleParticleTowardsTarget(struct Sprite *sprite) if (sprite->data[0] == 0) sprite->data[0] = 1; - sprite->pos2.y += Sin(sprite->data[7], sprite->data[5]); + sprite->y2 += Sin(sprite->data[7], sprite->data[5]); sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF; if (sprite->data[0] == 1) { - if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32 - || sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT - || sprite->pos1.y + sprite->pos2.y < -16) + if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT + || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); } } @@ -867,13 +867,13 @@ static void AnimWaveFromCenterOfTarget(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->data[0]++; @@ -905,13 +905,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } battler = gBattleAnimAttacker; @@ -924,13 +924,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } battler = gBattleAnimTarget; @@ -944,13 +944,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite) sprite->data[6] = tempVar; if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) - sprite->pos1.y += 8; + sprite->y += 8; sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2]; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x; + sprite->data[3] = sprite->y; + sprite->data[4] = sprite->y + gBattleAnimArgs[2]; InitAnimLinearTranslation(sprite); @@ -964,8 +964,8 @@ static void AnimSwirlingFogAnim(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { - sprite->pos2.x += Sin(sprite->data[5], sprite->data[6]); - sprite->pos2.y += Cos(sprite->data[5], -6); + sprite->x2 += Sin(sprite->data[5], sprite->data[6]); + sprite->y2 += Cos(sprite->data[5], -6); if ((u16)(sprite->data[5] - 64) <= 0x7F) sprite->oam.priority = GetBattlerSpriteBGPriority(sprite->data[7]); @@ -1080,8 +1080,8 @@ static void AnimTask_HazeScrollingFog_Step(u8 taskId) // arg 5: ??? unknown (seems to vibrate target mon somehow) static void AnimThrowMistBall(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = TranslateAnimSpriteToTargetMonLocation; } @@ -1200,21 +1200,21 @@ static void InitPoisonGasCloudAnim(struct Sprite *sprite) sprite->data[6] = 1; } - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); if (gBattleAnimArgs[7]) { - sprite->data[1] = sprite->pos1.x + gBattleAnimArgs[1]; + sprite->data[1] = sprite->x + gBattleAnimArgs[1]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[3]; - sprite->data[3] = sprite->pos1.y + gBattleAnimArgs[2]; + sprite->data[3] = sprite->y + gBattleAnimArgs[2]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[4]; sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8; } else { - sprite->data[1] = sprite->pos1.x + gBattleAnimArgs[1]; + sprite->data[1] = sprite->x + gBattleAnimArgs[1]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[3]; - sprite->data[3] = sprite->pos1.y + gBattleAnimArgs[2]; + sprite->data[3] = sprite->y + gBattleAnimArgs[2]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[4]; sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8; } @@ -1238,7 +1238,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite) case 0: AnimTranslateLinear(sprite); value = gSineTable[sprite->data[5]]; - sprite->pos2.x += value >> 4; + sprite->x2 += value >> 4; if (sprite->data[6]) sprite->data[5] = (sprite->data[5] - 8) & 0xFF; else @@ -1247,12 +1247,12 @@ static void MovePoisonGasCloud(struct Sprite *sprite) if (sprite->data[0] <= 0) { sprite->data[0] = 80; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x; - sprite->pos1.y += sprite->pos2.y; - sprite->data[3] = sprite->pos1.y; - sprite->data[4] = sprite->pos1.y + 29; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x; + sprite->y += sprite->y2; + sprite->data[3] = sprite->y; + sprite->data[4] = sprite->y + 29; sprite->data[7]++; if (IsContest()) sprite->data[5] = 80; @@ -1261,9 +1261,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite) else sprite->data[5] = 80; - sprite->pos2.y = 0; + sprite->y2 = 0; value = gSineTable[sprite->data[5]]; - sprite->pos2.x = value >> 3; + sprite->x2 = value >> 3; sprite->data[5] = (sprite->data[5] + 2) & 0xFF; InitAnimLinearTranslation(sprite); } @@ -1271,8 +1271,8 @@ static void MovePoisonGasCloud(struct Sprite *sprite) case 1: AnimTranslateLinear(sprite); value = gSineTable[sprite->data[5]]; - sprite->pos2.x += value >> 3; - sprite->pos2.y += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8; + sprite->x2 += value >> 3; + sprite->y2 += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8; if (!IsContest()) { u16 var0 = sprite->data[5] - 0x40; @@ -1297,9 +1297,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite) if (sprite->data[0] <= 0) { sprite->data[0] = 0x300; - sprite->data[1] = sprite->pos1.x += sprite->pos2.x; - sprite->data[3] = sprite->pos1.y += sprite->pos2.y; - sprite->data[4] = sprite->pos1.y + 4; + sprite->data[1] = sprite->x += sprite->x2; + sprite->data[3] = sprite->y += sprite->y2; + sprite->data[4] = sprite->y + 4; if (IsContest()) sprite->data[2] = -0x10; else if (GET_BATTLER_SIDE2(gBattleAnimTarget) != B_SIDE_PLAYER) @@ -1308,7 +1308,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite) sprite->data[2] = -0x10; sprite->data[7]++; - sprite->pos2.x = sprite->pos2.y = 0; + sprite->x2 = sprite->y2 = 0; InitAnimLinearTranslationWithSpeed(sprite); } break; @@ -1442,10 +1442,10 @@ static void AnimHailBegin(struct Sprite *sprite) { u8 spriteId; - sprite->pos1.x += 4; - sprite->pos1.y += 8; + sprite->x += 4; + sprite->y += 8; - if (sprite->pos1.x < sprite->data[3] && sprite->pos1.y < sprite->data[4]) + if (sprite->x < sprite->data[3] && sprite->y < sprite->data[4]) return; if (sprite->data[0] == 1 && sprite->data[5] == 0) @@ -1550,11 +1550,11 @@ static void AnimIceBallParticle(struct Sprite *sprite) sprite->data[4] += sprite->data[2]; if (sprite->data[1] & 1) - sprite->pos2.x = -(sprite->data[3] >> 8); + sprite->x2 = -(sprite->data[3] >> 8); else - sprite->pos2.x = sprite->data[3] >> 8; + sprite->x2 = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->y2 = sprite->data[4] >> 8; if (++sprite->data[0] == 21) DestroyAnimSprite(sprite); diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index b9c4c7b30241..31857c4dcc7f 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -99,8 +99,8 @@ void AnimTask_ShakeMon(u8 taskId) DestroyAnimVisualTask(taskId); return; } - gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; - gSprites[spriteId].pos2.y = gBattleAnimArgs[2]; + gSprites[spriteId].x2 = gBattleAnimArgs[1]; + gSprites[spriteId].y2 = gBattleAnimArgs[2]; gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[1] = gBattleAnimArgs[3]; gTasks[taskId].data[2] = gBattleAnimArgs[4]; @@ -115,27 +115,27 @@ static void AnimTask_ShakeMon_Step(u8 taskId) { if (gTasks[taskId].data[3] == 0) { - if (gSprites[gTasks[taskId].data[0]].pos2.x == 0) + if (gSprites[gTasks[taskId].data[0]].x2 == 0) { - gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4]; + gSprites[gTasks[taskId].data[0]].x2 = gTasks[taskId].data[4]; } else { - gSprites[gTasks[taskId].data[0]].pos2.x = 0; + gSprites[gTasks[taskId].data[0]].x2 = 0; } - if (gSprites[gTasks[taskId].data[0]].pos2.y == 0) + if (gSprites[gTasks[taskId].data[0]].y2 == 0) { - gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5]; + gSprites[gTasks[taskId].data[0]].y2 = gTasks[taskId].data[5]; } else { - gSprites[gTasks[taskId].data[0]].pos2.y = 0; + gSprites[gTasks[taskId].data[0]].y2 = 0; } gTasks[taskId].data[3] = gTasks[taskId].data[2]; if (--gTasks[taskId].data[1] == 0) { - gSprites[gTasks[taskId].data[0]].pos2.x = 0; - gSprites[gTasks[taskId].data[0]].pos2.y = 0; + gSprites[gTasks[taskId].data[0]].x2 = 0; + gSprites[gTasks[taskId].data[0]].y2 = 0; DestroyAnimVisualTask(taskId); return; } @@ -203,8 +203,8 @@ void AnimTask_ShakeMon2(u8 taskId) return; } - gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; - gSprites[spriteId].pos2.y = gBattleAnimArgs[2]; + gSprites[spriteId].x2 = gBattleAnimArgs[1]; + gSprites[spriteId].y2 = gBattleAnimArgs[2]; gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[1] = gBattleAnimArgs[3]; gTasks[taskId].data[2] = gBattleAnimArgs[4]; @@ -219,21 +219,21 @@ static void AnimTask_ShakeMon2_Step(u8 taskId) { if (gTasks[taskId].data[3] == 0) { - if (gSprites[gTasks[taskId].data[0]].pos2.x == gTasks[taskId].data[4]) - gSprites[gTasks[taskId].data[0]].pos2.x = -gTasks[taskId].data[4]; + if (gSprites[gTasks[taskId].data[0]].x2 == gTasks[taskId].data[4]) + gSprites[gTasks[taskId].data[0]].x2 = -gTasks[taskId].data[4]; else - gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4]; + gSprites[gTasks[taskId].data[0]].x2 = gTasks[taskId].data[4]; - if (gSprites[gTasks[taskId].data[0]].pos2.y == gTasks[taskId].data[5]) - gSprites[gTasks[taskId].data[0]].pos2.y = -gTasks[taskId].data[5]; + if (gSprites[gTasks[taskId].data[0]].y2 == gTasks[taskId].data[5]) + gSprites[gTasks[taskId].data[0]].y2 = -gTasks[taskId].data[5]; else - gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5]; + gSprites[gTasks[taskId].data[0]].y2 = gTasks[taskId].data[5]; gTasks[taskId].data[3] = gTasks[taskId].data[2]; if (--gTasks[taskId].data[1] == 0) { - gSprites[gTasks[taskId].data[0]].pos2.x = 0; - gSprites[gTasks[taskId].data[0]].pos2.y = 0; + gSprites[gTasks[taskId].data[0]].x2 = 0; + gSprites[gTasks[taskId].data[0]].y2 = 0; DestroyAnimVisualTask(taskId); return; } @@ -261,8 +261,8 @@ void AnimTask_ShakeMonInPlace(u8 taskId) return; } - gSprites[spriteId].pos2.x += gBattleAnimArgs[1]; - gSprites[spriteId].pos2.y += gBattleAnimArgs[2]; + gSprites[spriteId].x2 += gBattleAnimArgs[1]; + gSprites[spriteId].y2 += gBattleAnimArgs[2]; gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[1] = 0; gTasks[taskId].data[2] = gBattleAnimArgs[3]; @@ -280,26 +280,26 @@ static void AnimTask_ShakeMonInPlace_Step(u8 taskId) { if (gTasks[taskId].data[1] & 1) { - gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5]; - gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6]; + gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5]; + gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6]; } else { - gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5]; - gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6]; + gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5]; + gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6]; } gTasks[taskId].data[3] = gTasks[taskId].data[4]; if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2]) { if (gTasks[taskId].data[1] & 1) { - gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5] / 2; - gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6] / 2; + gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5] / 2; + gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6] / 2; } else { - gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5] / 2; - gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6] / 2; + gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5] / 2; + gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6] / 2; } DestroyAnimVisualTask(taskId); return; @@ -320,7 +320,7 @@ static void AnimTask_ShakeMonInPlace_Step(u8 taskId) void AnimTask_ShakeAndSinkMon(u8 taskId) { u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); - gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; + gSprites[spriteId].x2 = gBattleAnimArgs[1]; gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[1] = gBattleAnimArgs[1]; gTasks[taskId].data[2] = gBattleAnimArgs[2]; @@ -339,15 +339,15 @@ static void AnimTask_ShakeAndSinkMon_Step(u8 taskId) if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++) { gTasks[taskId].data[8] = 0; - if (gSprites[spriteId].pos2.x == x) + if (gSprites[spriteId].x2 == x) x = -x; - gSprites[spriteId].pos2.x += x; + gSprites[spriteId].x2 += x; } gTasks[taskId].data[1] = x; gTasks[taskId].data[9] += gTasks[taskId].data[3]; - gSprites[spriteId].pos2.y = gTasks[taskId].data[9] >> 8; + gSprites[spriteId].y2 = gTasks[taskId].data[9] >> 8; if (--gTasks[taskId].data[4] == 0) { DestroyAnimVisualTask(taskId); @@ -390,9 +390,9 @@ void AnimTask_TranslateMonElliptical(u8 taskId) static void AnimTask_TranslateMonElliptical_Step(u8 taskId) { u8 spriteId = gTasks[taskId].data[0]; - gSprites[spriteId].pos2.x = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]); - gSprites[spriteId].pos2.y = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]); - gSprites[spriteId].pos2.y += gTasks[taskId].data[2]; + gSprites[spriteId].x2 = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]); + gSprites[spriteId].y2 = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]); + gSprites[spriteId].y2 += gTasks[taskId].data[2]; gTasks[taskId].data[5] += gTasks[taskId].data[4]; gTasks[taskId].data[5] &= 0xff; @@ -401,8 +401,8 @@ static void AnimTask_TranslateMonElliptical_Step(u8 taskId) if (gTasks[taskId].data[3] == 0) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); return; } @@ -493,15 +493,15 @@ static void SlideMonToOriginalPos(struct Sprite *sprite) monSpriteId = gBattlerSpriteIds[gBattleAnimTarget]; sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[1] = gSprites[monSpriteId].pos1.x + gSprites[monSpriteId].pos2.x; - sprite->data[2] = gSprites[monSpriteId].pos1.x; - sprite->data[3] = gSprites[monSpriteId].pos1.y + gSprites[monSpriteId].pos2.y; - sprite->data[4] = gSprites[monSpriteId].pos1.y; + sprite->data[1] = gSprites[monSpriteId].x + gSprites[monSpriteId].x2; + sprite->data[2] = gSprites[monSpriteId].x; + sprite->data[3] = gSprites[monSpriteId].y + gSprites[monSpriteId].y2; + sprite->data[4] = gSprites[monSpriteId].y; InitSpriteDataForLinearTranslation(sprite); sprite->data[3] = 0; sprite->data[4] = 0; - sprite->data[5] = gSprites[monSpriteId].pos2.x; - sprite->data[6] = gSprites[monSpriteId].pos2.y; + sprite->data[5] = gSprites[monSpriteId].x2; + sprite->data[6] = gSprites[monSpriteId].y2; sprite->invisible = TRUE; if (gBattleAnimArgs[1] == 1) @@ -526,10 +526,10 @@ static void SlideMonToOriginalPos_Step(struct Sprite *sprite) if (sprite->data[0] == 0) { if (lo < 2) - monSprite->pos2.x = 0; + monSprite->x2 = 0; if (lo == 2 || lo == 0) - monSprite->pos2.y = 0; + monSprite->y2 = 0; DestroyAnimSprite(sprite); } @@ -538,8 +538,8 @@ static void SlideMonToOriginalPos_Step(struct Sprite *sprite) sprite->data[0]--; sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - monSprite->pos2.x = (s8)(sprite->data[3] >> 8) + sprite->data[5]; - monSprite->pos2.y = (s8)(sprite->data[4] >> 8) + sprite->data[6]; + monSprite->x2 = (s8)(sprite->data[3] >> 8) + sprite->data[5]; + monSprite->y2 = (s8)(sprite->data[4] >> 8) + sprite->data[6]; } } @@ -571,10 +571,10 @@ static void SlideMonToOffset(struct Sprite *sprite) } sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = gSprites[monSpriteId].pos1.x; - sprite->data[2] = gSprites[monSpriteId].pos1.x + gBattleAnimArgs[1]; - sprite->data[3] = gSprites[monSpriteId].pos1.y; - sprite->data[4] = gSprites[monSpriteId].pos1.y + gBattleAnimArgs[2]; + sprite->data[1] = gSprites[monSpriteId].x; + sprite->data[2] = gSprites[monSpriteId].x + gBattleAnimArgs[1]; + sprite->data[3] = gSprites[monSpriteId].y; + sprite->data[4] = gSprites[monSpriteId].y + gBattleAnimArgs[2]; InitSpriteDataForLinearTranslation(sprite); sprite->data[3] = 0; sprite->data[4] = 0; @@ -605,13 +605,13 @@ static void SlideMonToOffsetAndBack(struct Sprite *sprite) } } sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x; + sprite->data[1] = gSprites[spriteId].x + gSprites[spriteId].x2; sprite->data[2] = sprite->data[1] + gBattleAnimArgs[1]; - sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y; + sprite->data[3] = gSprites[spriteId].y + gSprites[spriteId].y2; sprite->data[4] = sprite->data[3] + gBattleAnimArgs[2]; InitSpriteDataForLinearTranslation(sprite); - sprite->data[3] = gSprites[spriteId].pos2.x << 8; - sprite->data[4] = gSprites[spriteId].pos2.y << 8; + sprite->data[3] = gSprites[spriteId].x2 << 8; + sprite->data[4] = gSprites[spriteId].y2 << 8; sprite->data[5] = spriteId; sprite->data[6] = gBattleAnimArgs[5]; if (!gBattleAnimArgs[5]) @@ -628,8 +628,8 @@ static void SlideMonToOffsetAndBack(struct Sprite *sprite) static void SlideMonToOffsetAndBack_End(struct Sprite *sprite) { - gSprites[sprite->data[5]].pos2.x = 0; - gSprites[sprite->data[5]].pos2.y = 0; + gSprites[sprite->data[5]].x2 = 0; + gSprites[sprite->data[5]].y2 = 0; DestroyAnimSprite(sprite); } @@ -667,8 +667,8 @@ static void AnimTask_WindUpLunge_Step1(u8 taskId) u8 spriteId; spriteId = gTasks[taskId].data[0]; gTasks[taskId].data[11] += gTasks[taskId].data[1]; - gSprites[spriteId].pos2.x = gTasks[taskId].data[11] >> 8; - gSprites[spriteId].pos2.y = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]); + gSprites[spriteId].x2 = gTasks[taskId].data[11] >> 8; + gSprites[spriteId].y2 = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]); gTasks[taskId].data[10] += gTasks[taskId].data[7]; if (--gTasks[taskId].data[3] == 0) { @@ -687,7 +687,7 @@ static void AnimTask_WindUpLunge_Step2(u8 taskId) { spriteId = gTasks[taskId].data[0]; gTasks[taskId].data[12] += gTasks[taskId].data[5]; - gSprites[spriteId].pos2.x = (gTasks[taskId].data[12] >> 8) + (gTasks[taskId].data[11] >> 8); + gSprites[spriteId].x2 = (gTasks[taskId].data[12] >> 8) + (gTasks[taskId].data[11] >> 8); if (--gTasks[taskId].data[6] == 0) { DestroyAnimVisualTask(taskId); @@ -741,8 +741,8 @@ void AnimTask_SlideOffScreen(u8 taskId) static void AnimTask_SlideOffScreen_Step(u8 taskId) { u8 spriteId = gTasks[taskId].data[0]; - gSprites[spriteId].pos2.x += gTasks[taskId].data[1]; - if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x + 0x20 > 0x130u) + gSprites[spriteId].x2 += gTasks[taskId].data[1]; + if (gSprites[spriteId].x2 + gSprites[spriteId].x + 0x20 > 0x130u) { DestroyAnimVisualTask(taskId); return; @@ -794,17 +794,17 @@ static void AnimTask_SwayMonStep(u8 taskId) if (gTasks[taskId].data[0] == 0) { - gSprites[spriteId].pos2.x = sineValue; + gSprites[spriteId].x2 = sineValue; } else { if (GetBattlerSide(gTasks[taskId].data[5]) == B_SIDE_PLAYER) { - gSprites[spriteId].pos2.y = (sineValue >= 0) ? sineValue : -sineValue; + gSprites[spriteId].y2 = (sineValue >= 0) ? sineValue : -sineValue; } else { - gSprites[spriteId].pos2.y = (sineValue >= 0) ? -sineValue : sineValue; + gSprites[spriteId].y2 = (sineValue >= 0) ? -sineValue : sineValue; } } @@ -815,8 +815,8 @@ static void AnimTask_SwayMonStep(u8 taskId) gTasks[taskId].data[12] ^= 1; if (--gTasks[taskId].data[3] == 0) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; DestroyAnimVisualTask(taskId); return; } @@ -1011,8 +1011,8 @@ void AnimTask_ShakeTargetBasedOnMovePowerOrDmg(u8 taskId) gTasks[taskId].data[10] = gBattleAnimArgs[3]; gTasks[taskId].data[11] = gBattleAnimArgs[4]; gTasks[taskId].data[7] = GetAnimBattlerSpriteId(ANIM_TARGET); - gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].pos2.x; - gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].pos2.y; + gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].x2; + gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].y2; gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = gBattleAnimArgs[1]; gTasks[taskId].data[2] = gBattleAnimArgs[2]; @@ -1030,28 +1030,28 @@ static void AnimTask_ShakeTargetBasedOnMovePowerOrDmg_Step(u8 taskId) { if (task->data[12]) { - gSprites[task->data[7]].pos2.x = task->data[8] + task->data[13]; + gSprites[task->data[7]].x2 = task->data[8] + task->data[13]; } else { - gSprites[task->data[7]].pos2.x = task->data[8] - task->data[14]; + gSprites[task->data[7]].x2 = task->data[8] - task->data[14]; } } if (task->data[11]) { if (task->data[12]) { - gSprites[task->data[7]].pos2.y = task->data[15]; + gSprites[task->data[7]].y2 = task->data[15]; } else { - gSprites[task->data[7]].pos2.y = 0; + gSprites[task->data[7]].y2 = 0; } } if (!--task->data[2]) { - gSprites[task->data[7]].pos2.x = 0; - gSprites[task->data[7]].pos2.y = 0; + gSprites[task->data[7]].x2 = 0; + gSprites[task->data[7]].y2 = 0; DestroyAnimVisualTask(taskId); return; } diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index cf5ae6eb2375..be409f3666c9 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -432,8 +432,8 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite) { if (sprite->data[3]) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], sprite->data[1]); sprite->data[0] += sprite->data[2]; if (sprite->data[0] >= 0x100) sprite->data[0] -= 0x100; @@ -451,8 +451,8 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite) { if (sprite->data[3]) { - sprite->pos2.x = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); + sprite->x2 = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); sprite->data[0] += sprite->data[2]; sprite->data[5] += sprite->data[4]; if (sprite->data[0] >= 0x100) @@ -471,8 +471,8 @@ void sub_80A63C8(struct Sprite *sprite) { if (sprite->data[3]) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[4], sprite->data[1]); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[4], sprite->data[1]); sprite->data[0] += sprite->data[2]; sprite->data[4] += sprite->data[5]; if (sprite->data[0] >= 0x100) @@ -495,8 +495,8 @@ void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite) { if (sprite->data[3]) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], sprite->data[4]); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], sprite->data[4]); sprite->data[0] += sprite->data[2]; if (sprite->data[0] >= 0x100) sprite->data[0] -= 0x100; @@ -547,8 +547,8 @@ void TranslateSpriteLinear(struct Sprite *sprite) if (sprite->data[0] > 0) { sprite->data[0]--; - sprite->pos2.x += sprite->data[1]; - sprite->pos2.y += sprite->data[2]; + sprite->x2 += sprite->data[1]; + sprite->y2 += sprite->data[2]; } else { @@ -563,8 +563,8 @@ void TranslateSpriteLinearFixedPoint(struct Sprite *sprite) sprite->data[0]--; sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; } else { @@ -579,8 +579,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite) sprite->data[0]--; sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; } else { @@ -592,8 +592,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite) void sub_80A65EC(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x + sprite->pos2.x; - sprite->data[3] = sprite->pos1.y + sprite->pos2.y; + sprite->data[1] = sprite->x + sprite->x2; + sprite->data[3] = sprite->y + sprite->y2; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = sub_80A64D0; @@ -604,8 +604,8 @@ void TranslateMonSpriteLinear(struct Sprite *sprite) if (sprite->data[0] > 0) { sprite->data[0]--; - gSprites[sprite->data[3]].pos2.x += sprite->data[1]; - gSprites[sprite->data[3]].pos2.y += sprite->data[2]; + gSprites[sprite->data[3]].x2 += sprite->data[1]; + gSprites[sprite->data[3]].y2 += sprite->data[2]; } else { @@ -620,8 +620,8 @@ void TranslateMonSpriteLinearFixedPoint(struct Sprite *sprite) sprite->data[0]--; sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - gSprites[sprite->data[5]].pos2.x = sprite->data[3] >> 8; - gSprites[sprite->data[5]].pos2.y = sprite->data[4] >> 8; + gSprites[sprite->data[5]].x2 = sprite->data[3] >> 8; + gSprites[sprite->data[5]].y2 = sprite->data[4] >> 8; } else { @@ -634,9 +634,9 @@ void TranslateSpriteLinearAndFlicker(struct Sprite *sprite) if (sprite->data[0] > 0) { sprite->data[0]--; - sprite->pos2.x = sprite->data[2] >> 8; + sprite->x2 = sprite->data[2] >> 8; sprite->data[2] += sprite->data[1]; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->y2 = sprite->data[4] >> 8; sprite->data[4] += sprite->data[3]; if (sprite->data[0] % sprite->data[5] == 0) { @@ -658,8 +658,8 @@ void DestroySpriteAndMatrix(struct Sprite *sprite) void sub_80A6760(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x + sprite->pos2.x; - sprite->data[3] = sprite->pos1.y + sprite->pos2.y; + sprite->data[1] = sprite->x + sprite->x2; + sprite->data[3] = sprite->y + sprite->y2; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = sub_80A64D0; @@ -699,8 +699,8 @@ void DestroyAnimVisualTaskAndDisableBlend(u8 taskId) void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } // Sets the initial x offset of the anim sprite depending on the horizontal orientation @@ -712,25 +712,25 @@ void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset) if (attackerX > targetX) { - sprite->pos1.x -= xOffset; + sprite->x -= xOffset; } else if (attackerX < targetX) { - sprite->pos1.x += xOffset; + sprite->x += xOffset; } else { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= xOffset; + sprite->x -= xOffset; else - sprite->pos1.x += xOffset; + sprite->x += xOffset; } } void InitAnimArcTranslation(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimLinearTranslation(sprite); sprite->data[6] = 0x8000 / sprite->data[0]; sprite->data[7] = 0; @@ -741,7 +741,7 @@ bool8 TranslateAnimHorizontalArc(struct Sprite *sprite) if (AnimTranslateLinear(sprite)) return TRUE; sprite->data[7] += sprite->data[6]; - sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]); + sprite->y2 += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]); return FALSE; } @@ -750,16 +750,16 @@ bool8 TranslateAnimVerticalArc(struct Sprite *sprite) if (AnimTranslateLinear(sprite)) return TRUE; sprite->data[7] += sprite->data[6]; - sprite->pos2.x += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]); + sprite->x2 += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]); return FALSE; } void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; } void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets) @@ -768,27 +768,27 @@ void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets // is why there is no else clause for the "respectMonPicOffsets" check. if (!respectMonPicOffsets) { - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X); - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y); + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y); } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffsets) { if (!respectMonPicOffsets) { - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X); - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y); + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y); } else { - sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; } u8 GetBattlerSide(u8 battlerId) @@ -986,8 +986,8 @@ void UpdateAnimBg3ScreenSize(bool8 largeScreenSize) void TradeMenuBouncePartySprites(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitSpriteDataForLinearTranslation(sprite); sprite->callback = TranslateSpriteLinearFixedPointIconFrame; sprite->callback(sprite); @@ -1033,8 +1033,8 @@ void InitAnimLinearTranslation(struct Sprite *sprite) void StartAnimLinearTranslation(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimLinearTranslation(sprite); sprite->callback = AnimTranslateLinear_WaitEnd; sprite->callback(sprite); @@ -1042,8 +1042,8 @@ void StartAnimLinearTranslation(struct Sprite *sprite) void sub_80A6F14(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimLinearTranslation(sprite); sprite->callback = sub_80A6FB4; sprite->callback(sprite); @@ -1064,14 +1064,14 @@ bool8 AnimTranslateLinear(struct Sprite *sprite) y += v2; if (v1 & 1) - sprite->pos2.x = -(x >> 8); + sprite->x2 = -(x >> 8); else - sprite->pos2.x = x >> 8; + sprite->x2 = x >> 8; if (v2 & 1) - sprite->pos2.y = -(y >> 8); + sprite->y2 = -(y >> 8); else - sprite->pos2.y = y >> 8; + sprite->y2 = y >> 8; sprite->data[3] = x; sprite->data[4] = y; @@ -1101,8 +1101,8 @@ void InitAnimLinearTranslationWithSpeed(struct Sprite *sprite) void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimLinearTranslationWithSpeed(sprite); sprite->callback = AnimTranslateLinear_WaitEnd; sprite->callback(sprite); @@ -1138,8 +1138,8 @@ static void InitAnimFastLinearTranslation(struct Sprite *sprite) void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimFastLinearTranslation(sprite); sprite->callback = AnimFastTranslateLinearWaitEnd; sprite->callback(sprite); @@ -1160,14 +1160,14 @@ bool8 AnimFastTranslateLinear(struct Sprite *sprite) y += v2; if (v1 & 1) - sprite->pos2.x = -(x >> 4); + sprite->x2 = -(x >> 4); else - sprite->pos2.x = x >> 4; + sprite->x2 = x >> 4; if (v2 & 1) - sprite->pos2.y = -(y >> 4); + sprite->y2 = -(y >> 4); else - sprite->pos2.y = y >> 4; + sprite->y2 = y >> 4; sprite->data[3] = x; sprite->data[4] = y; @@ -1190,8 +1190,8 @@ void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite) void InitAnimFastLinearTranslationWithSpeedAndPos(struct Sprite *sprite) { - sprite->data[1] = sprite->pos1.x; - sprite->data[3] = sprite->pos1.y; + sprite->data[1] = sprite->x; + sprite->data[3] = sprite->y; InitAnimFastLinearTranslationWithSpeed(sprite); sprite->callback = AnimFastTranslateLinearWaitEnd; sprite->callback(sprite); @@ -1264,7 +1264,7 @@ void SetBattlerSpriteYOffsetFromRotation(u8 spriteId) if (c < 0) c = -c; - gSprites[spriteId].pos2.y = c >> 3; + gSprites[spriteId].y2 = c >> 3; } void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation) @@ -1801,7 +1801,7 @@ bool8 RunAffineAnimFromTaskData(struct Task *task) task->data[7]++; break; case AFFINEANIMCMDTYPE_END: - gSprites[task->data[15]].pos2.y = 0; + gSprites[task->data[15]].y2 = 0; ResetSpriteRotScale(task->data[15]); return FALSE; } @@ -1819,7 +1819,7 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId) if (var2 > 128) var2 = 128; - gSprites[spriteId].pos2.y = (var - var2) / 2; + gSprites[spriteId].y2 = (var - var2) / 2; } // Sets the sprite's y offset equal to the y displacement caused by another sprite @@ -1832,7 +1832,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId) if (var2 > 128) var2 = 128; - gSprites[spriteId].pos2.y = (var - var2) / 2; + gSprites[spriteId].y2 = (var - var2) / 2; } static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId) @@ -1927,7 +1927,7 @@ u8 UpdateEruptAnimTask(struct Task *task) if (task->data[8]) SetBattlerSpriteYOffsetFromYScale(task->data[15]); else - gSprites[task->data[15]].pos2.y = 0; + gSprites[task->data[15]].y2 = 0; return task->data[8]; } @@ -2278,15 +2278,15 @@ void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite) SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker)) { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; gBattleAnimArgs[3] = -gBattleAnimArgs[3]; sprite->hFlip = TRUE; } else { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -2300,14 +2300,14 @@ void AnimTranslateLinearAndFlicker(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; gBattleAnimArgs[3] *= -1; } else { - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; } - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -2322,10 +2322,10 @@ void AnimSpinningSparkle(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker)) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->callback = RunStoredCallbackWhenAnimEnds; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -2343,7 +2343,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8; task->data[2] = 0; task->data[3] = 0; - gSprites[task->data[0]].pos2.x -= task->data[0]; + gSprites[task->data[0]].x2 -= task->data[0]; task->data[4] = AllocSpritePalette(ANIM_TAG_BENT_SPOON); task->data[5] = 0; @@ -2366,7 +2366,7 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId) { case 0: sub_80A8D78(task, taskId); - gSprites[task->data[0]].pos2.x += task->data[1]; + gSprites[task->data[0]].x2 += task->data[1]; if (++task->data[3] == 5) { task->data[3]--; @@ -2375,10 +2375,10 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId) break; case 1: sub_80A8D78(task, taskId); - gSprites[task->data[0]].pos2.x -= task->data[1]; + gSprites[task->data[0]].x2 -= task->data[1]; if (--task->data[3] == 0) { - gSprites[task->data[0]].pos2.x = 0; + gSprites[task->data[0]].x2 = 0; task->data[2]++; } break; @@ -2402,7 +2402,7 @@ static void sub_80A8D78(struct Task *task, u8 taskId) gSprites[spriteId].data[0] = 8; gSprites[spriteId].data[1] = taskId; gSprites[spriteId].data[2] = spriteId; - gSprites[spriteId].pos2.x = gSprites[task->data[0]].pos2.x; + gSprites[spriteId].x2 = gSprites[task->data[0]].x2; gSprites[spriteId].callback = sub_80A8DFC; task->data[5]++; } @@ -2419,8 +2419,8 @@ static void sub_80A8DFC(struct Sprite *sprite) void AnimWeatherBallUp(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); if (!GetBattlerSide(gBattleAnimAttacker)) sprite->data[0] = 5; else @@ -2433,11 +2433,11 @@ static void AnimWeatherBallUp_Step(struct Sprite *sprite) { sprite->data[2] += sprite->data[0]; sprite->data[3] += sprite->data[1]; - sprite->pos2.x = sprite->data[2] / 10; - sprite->pos2.y = sprite->data[3] / 10; + sprite->x2 = sprite->data[2] / 10; + sprite->y2 = sprite->data[3] / 10; if (sprite->data[1] < -20) sprite->data[1]++; - if (sprite->pos1.y + sprite->pos2.y < -32) + if (sprite->y + sprite->y2 < -32) DestroyAnimSprite(sprite); } @@ -2445,19 +2445,19 @@ void AnimWeatherBallDown(struct Sprite *sprite) { int x; sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[4]; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[5]; + sprite->data[2] = sprite->x + gBattleAnimArgs[4]; + sprite->data[4] = sprite->y + gBattleAnimArgs[5]; if (!GetBattlerSide(gBattleAnimTarget)) { x = (u16)gBattleAnimArgs[4] + 30; - sprite->pos1.x += x; - sprite->pos1.y = gBattleAnimArgs[5] - 20; + sprite->x += x; + sprite->y = gBattleAnimArgs[5] - 20; } else { x = (u16)gBattleAnimArgs[4] - 30; - sprite->pos1.x += x; - sprite->pos1.y = gBattleAnimArgs[5] - 80; + sprite->x += x; + sprite->y = gBattleAnimArgs[5] - 80; } sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 9be56880ab02..abd5d5478281 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -261,8 +261,8 @@ const struct SpriteTemplate gPersistHitSplatSpriteTemplate = // arg 4: duration static void AnimConfusionDuck(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { @@ -283,8 +283,8 @@ static void AnimConfusionDuck(struct Sprite *sprite) static void AnimConfusionDuck_Step(struct Sprite *sprite) { - sprite->pos2.x = Cos(sprite->data[0], 30); - sprite->pos2.y = Sin(sprite->data[0], 10); + sprite->x2 = Cos(sprite->data[0], 30); + sprite->y2 = Sin(sprite->data[0], 10); if ((u16)sprite->data[0] < 128) sprite->oam.priority = 1; @@ -400,8 +400,8 @@ static void AnimComplexPaletteBlend_Step2(struct Sprite *sprite) static void AnimCirclingSparkle(struct Sprite *sprite) { - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = 0; sprite->data[1] = 10; sprite->data[2] = 8; @@ -971,8 +971,8 @@ static void AnimHitSplatRandom(struct Sprite *sprite) else InitSpritePosToAnimTarget(sprite, FALSE); - sprite->pos2.x += (Random2() % 48) - 24; - sprite->pos2.y += (Random2() % 24) - 12; + sprite->x2 += (Random2() % 48) - 24; + sprite->y2 += (Random2() % 24) - 12; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); sprite->callback = RunStoredCallbackWhenAffineAnimEnds; @@ -981,10 +981,10 @@ static void AnimHitSplatRandom(struct Sprite *sprite) static void AnimHitSplatOnMonEdge(struct Sprite *sprite) { sprite->data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); - sprite->pos1.x = gSprites[sprite->data[0]].pos1.x + gSprites[sprite->data[0]].pos2.x; - sprite->pos1.y = gSprites[sprite->data[0]].pos1.y + gSprites[sprite->data[0]].pos2.y; - sprite->pos2.x = gBattleAnimArgs[1]; - sprite->pos2.y = gBattleAnimArgs[2]; + sprite->x = gSprites[sprite->data[0]].x + gSprites[sprite->data[0]].x2; + sprite->y = gSprites[sprite->data[0]].y + gSprites[sprite->data[0]].y2; + sprite->x2 = gBattleAnimArgs[1]; + sprite->y2 = gBattleAnimArgs[2]; StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); sprite->callback = RunStoredCallbackWhenAffineAnimEnds; diff --git a/src/battle_anim_poison.c b/src/battle_anim_poison.c index bc5624249260..6dedbd9555a0 100644 --- a/src/battle_anim_poison.c +++ b/src/battle_anim_poison.c @@ -239,10 +239,10 @@ static void AnimAcidPoisonBubble_Step(struct Sprite *sprite) static void AnimSludgeBombHitParticle(struct Sprite *sprite) { sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[0]; - sprite->data[3] = sprite->pos1.y; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[1]; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x + gBattleAnimArgs[0]; + sprite->data[3] = sprite->y; + sprite->data[4] = sprite->y + gBattleAnimArgs[1]; InitSpriteDataForLinearTranslation(sprite); @@ -265,17 +265,17 @@ static void AnimSludgeBombHitParticle_Step(struct Sprite *sprite) static void AnimAcidPoisonDroplet(struct Sprite *sprite) { - SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; - sprite->data[4] = sprite->pos1.y + sprite->data[0]; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + sprite->data[4] = sprite->y + sprite->data[0]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -295,13 +295,13 @@ static void AnimBubbleEffect(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; } sprite->callback = AnimBubbleEffect_Step; @@ -310,9 +310,9 @@ static void AnimBubbleEffect(struct Sprite *sprite) static void AnimBubbleEffect_Step(struct Sprite *sprite) { sprite->data[0] = (sprite->data[0] + 0xB) & 0xFF; - sprite->pos2.x = Sin(sprite->data[0], 4); + sprite->x2 = Sin(sprite->data[0], 4); sprite->data[1] += 0x30; - sprite->pos2.y = -(sprite->data[1] >> 8); + sprite->y2 = -(sprite->data[1] >> 8); if (sprite->affineAnimEnded) DestroyAnimSprite(sprite); diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index 718fce396d1b..6c81467dcb19 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -450,13 +450,13 @@ static void AnimDefensiveWall(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x = 72; - sprite->pos1.y = 80; + sprite->x = 72; + sprite->y = 80; } else { - sprite->pos1.x = 176; - sprite->pos1.y = 40; + sprite->x = 176; + sprite->y = 40; } } else @@ -464,15 +464,15 @@ static void AnimDefensiveWall(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; } sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16; if (isContest) { - sprite->pos1.y += 9; + sprite->y += 9; sprite->callback = AnimDefensiveWall_Step2; sprite->callback(sprite); } @@ -592,13 +592,13 @@ static void AnimWallSparkle(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos1.x = 72 - gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1] + 80; + sprite->x = 72 - gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1] + 80; } else { - sprite->pos1.x = gBattleAnimArgs[0] + 176; - sprite->pos1.y = gBattleAnimArgs[1] + 40; + sprite->x = gBattleAnimArgs[0] + 176; + sprite->y = gBattleAnimArgs[1] + 40; } } else @@ -620,20 +620,20 @@ static void AnimWallSparkle(struct Sprite *sprite) static void AnimBentSpoon(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { StartSpriteAnim(sprite, 1); - sprite->pos1.x -= 40; - sprite->pos1.y += 10; + sprite->x -= 40; + sprite->y += 10; sprite->data[1] = -1; } else { - sprite->pos1.x += 40; - sprite->pos1.y -= 10; + sprite->x += 40; + sprite->y -= 10; sprite->data[1] = 1; } @@ -650,11 +650,11 @@ static void AnimQuestionMark(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) x = -x; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y; - if (sprite->pos1.y < 16) - sprite->pos1.y = 16; + if (sprite->y < 16) + sprite->y = 16; StoreSpriteCallbackInData6(sprite, AnimQuestionMark_Step1); sprite->callback = RunStoredCallbackWhenAnimEnds; @@ -731,13 +731,13 @@ static void AnimTask_Teleport_Step(u8 taskId) case 1: if (task->data[3] != 0) { - gSprites[task->data[0]].pos2.y -= 8; + gSprites[task->data[0]].y2 -= 8; task->data[3]--; } else { gSprites[task->data[0]].invisible = TRUE; - gSprites[task->data[0]].pos1.x = DISPLAY_WIDTH + 32; + gSprites[task->data[0]].x = DISPLAY_WIDTH + 32; ResetSpriteRotScale(task->data[0]); DestroyAnimVisualTask(taskId); } @@ -785,20 +785,20 @@ static void AnimTask_ImprisonOrbs_Step(u8 taskId) switch (task->data[2]) { case 0: - gSprites[spriteId].pos2.x = task->data[12]; - gSprites[spriteId].pos2.y = -task->data[12]; + gSprites[spriteId].x2 = task->data[12]; + gSprites[spriteId].y2 = -task->data[12]; break; case 1: - gSprites[spriteId].pos2.x = -task->data[12]; - gSprites[spriteId].pos2.y = task->data[12]; + gSprites[spriteId].x2 = -task->data[12]; + gSprites[spriteId].y2 = task->data[12]; break; case 2: - gSprites[spriteId].pos2.x = task->data[12]; - gSprites[spriteId].pos2.y = task->data[12]; + gSprites[spriteId].x2 = task->data[12]; + gSprites[spriteId].y2 = task->data[12]; break; case 3: - gSprites[spriteId].pos2.x = -task->data[12]; - gSprites[spriteId].pos2.y = -task->data[12]; + gSprites[spriteId].x2 = -task->data[12]; + gSprites[spriteId].y2 = -task->data[12]; break; } } @@ -851,8 +851,8 @@ static void AnimRedX(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } sprite->data[0] = gBattleAnimArgs[1]; @@ -1123,11 +1123,11 @@ static void AnimPsychoBoost(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); if (IsContest()) - sprite->pos1.y += 12; + sprite->y += 12; sprite->data[1] = 8; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); @@ -1156,7 +1156,7 @@ static void AnimPsychoBoost(struct Sprite *sprite) } sprite->data[3] += 0x380; - sprite->pos2.y -= sprite->data[3] >> 8; + sprite->y2 -= sprite->data[3] >> 8; sprite->data[3] &= 0xFF; break; case 3: diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index 3e9eafb90c0a..7f292d596193 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -297,10 +297,10 @@ const struct SpriteTemplate gWeatherBallRockDownSpriteTemplate = static void AnimFallingRock(struct Sprite *sprite) { if (gBattleAnimArgs[3] != 0) - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); + SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += 14; + sprite->x += gBattleAnimArgs[0]; + sprite->y += 14; StartSpriteAnim(sprite, gBattleAnimArgs[1]); AnimateSprite(sprite); @@ -319,7 +319,7 @@ static void AnimFallingRock(struct Sprite *sprite) static void AnimFallingRock_Step(struct Sprite *sprite) { - sprite->pos1.x += sprite->data[5]; + sprite->x += sprite->data[5]; sprite->data[0] = 192; sprite->data[1] = sprite->data[5]; @@ -339,17 +339,17 @@ static void AnimRockFragment(struct Sprite *sprite) AnimateSprite(sprite); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->x -= gBattleAnimArgs[0]; else - sprite->pos1.x += gBattleAnimArgs[0]; + sprite->x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->y += gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = sprite->pos1.x; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; - sprite->data[3] = sprite->pos1.y; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3]; + sprite->data[1] = sprite->x; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + sprite->data[3] = sprite->y; + sprite->data[4] = sprite->y + gBattleAnimArgs[3]; InitSpriteDataForLinearTranslation(sprite); sprite->data[3] = 0; @@ -378,8 +378,8 @@ static void AnimParticleInVortex(struct Sprite *sprite) static void AnimParticleInVortex_Step(struct Sprite *sprite) { sprite->data[4] += sprite->data[1]; - sprite->pos2.y = -(sprite->data[4] >> 8); - sprite->pos2.x = Sin(sprite->data[5], sprite->data[3]); + sprite->y2 = -(sprite->data[4] >> 8); + sprite->x2 = Sin(sprite->data[5], sprite->data[3]); sprite->data[5] = (sprite->data[5] + sprite->data[2]) & 0xFF; if (--sprite->data[0] == -1) @@ -496,17 +496,17 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite) { if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x = DISPLAY_WIDTH + 64; + sprite->x = DISPLAY_WIDTH + 64; gBattleAnimArgs[1] = -gBattleAnimArgs[1]; sprite->data[5] = 1; sprite->oam.matrixNum = ST_OAM_HFLIP; } else { - sprite->pos1.x = -64; + sprite->x = -64; } - sprite->pos1.y = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[0]; SetSubspriteTables(sprite, sFlyingSandSubspriteTable); sprite->data[1] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[2]; @@ -516,19 +516,19 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x += (sprite->data[3] >> 8); - sprite->pos2.y += (sprite->data[4] >> 8); + sprite->x2 += (sprite->data[3] >> 8); + sprite->y2 += (sprite->data[4] >> 8); sprite->data[3] &= 0xFF; sprite->data[4] &= 0xFF; if (sprite->data[5] == 0) { - if (sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32) + if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 32) { sprite->callback = DestroyAnimSprite; } } - else if (sprite->pos1.x + sprite->pos2.x < -32) + else if (sprite->x + sprite->x2 < -32) { sprite->callback = DestroyAnimSprite; } @@ -547,8 +547,8 @@ static void AnimRaiseSprite(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, 0); sprite->data[0] = gBattleAnimArgs[3]; - sprite->data[2] = sprite->pos1.x; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2]; + sprite->data[2] = sprite->x; + sprite->data[4] = sprite->y + gBattleAnimArgs[2]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -618,8 +618,8 @@ static void AnimTask_Rollout_Step(u8 taskId) case 0: task->data[6] -= task->data[4]; task->data[7] -= task->data[5]; - gSprites[task->data[15]].pos2.x = task->data[6] >> 3; - gSprites[task->data[15]].pos2.y = task->data[7] >> 3; + gSprites[task->data[15]].x2 = task->data[6] >> 3; + gSprites[task->data[15]].y2 = task->data[7] >> 3; if (++task->data[9] == 10) { @@ -646,8 +646,8 @@ static void AnimTask_Rollout_Step(u8 taskId) task->data[0]++; } - gSprites[task->data[15]].pos2.x = task->data[6] >> 3; - gSprites[task->data[15]].pos2.y = task->data[7] >> 3; + gSprites[task->data[15]].x2 = task->data[6] >> 3; + gSprites[task->data[15]].y2 = task->data[7] >> 3; break; case 3: task->data[2] += task->data[4]; @@ -748,7 +748,7 @@ static void AnimRockTomb(struct Sprite *sprite) { StartSpriteAnim(sprite, gBattleAnimArgs[4]); - sprite->pos2.x = gBattleAnimArgs[0]; + sprite->x2 = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; sprite->data[3] -= gBattleAnimArgs[2]; sprite->data[0] = 3; @@ -762,7 +762,7 @@ static void AnimRockTomb_Step(struct Sprite *sprite) sprite->invisible = FALSE; if (sprite->data[3] != 0) { - sprite->pos2.y = sprite->data[2] + sprite->data[3]; + sprite->y2 = sprite->data[2] + sprite->data[3]; sprite->data[3] += sprite->data[0]; sprite->data[0]++; if (sprite->data[3] > 0) @@ -787,10 +787,10 @@ static void AnimRockBlastRock(struct Sprite *sprite) static void AnimRockScatter(struct Sprite *sprite) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); - sprite->pos1.x += gBattleAnimArgs[0]; - sprite->pos1.y += gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x += gBattleAnimArgs[0]; + sprite->y += gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; @@ -806,8 +806,8 @@ static void AnimRockScatter_Step(struct Sprite *sprite) sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x += sprite->data[3] / 40; - sprite->pos2.y -= Sin(sprite->data[0], sprite->data[5]); + sprite->x2 += sprite->data[3] / 40; + sprite->y2 -= Sin(sprite->data[0], sprite->data[5]); if (sprite->data[0] > 140) DestroyAnimSprite(sprite); diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index e859bed6209c..4893abd585f7 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -286,7 +286,7 @@ static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red) gTasks[taskId].data[1] = RGB_RED; for (i = 0; i < 10; i++) { - spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0); + spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y + 32, 0); gSprites[spriteId].data[0] = i * 51; gSprites[spriteId].data[1] = -256; gSprites[spriteId].invisible = TRUE; @@ -299,7 +299,7 @@ static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red) gTasks[taskId].data[1] = RGB_BLUE; for (i = 0; i < 10; i++) { - spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0); + spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y - 32, 0); gSprites[spriteId].data[0] = i * 51; gSprites[spriteId].data[1] = 256; gSprites[spriteId].invisible = TRUE; @@ -360,15 +360,15 @@ static void AnimFlashingCircleImpact(struct Sprite *sprite) static void AnimFlashingCircleImpact_Step(struct Sprite *sprite) { - sprite->pos2.x = Cos(sprite->data[0], 32); - sprite->pos2.y = Sin(sprite->data[0], 8); + sprite->x2 = Cos(sprite->data[0], 32); + sprite->y2 = Sin(sprite->data[0], 8); if (sprite->data[0] < 128) sprite->subpriority = 29; else sprite->subpriority = 31; sprite->data[0] = (sprite->data[0] + 8) & 0xFF; sprite->data[5] += sprite->data[1]; - sprite->pos2.y += sprite->data[5] >> 8; + sprite->y2 += sprite->data[5] >> 8; sprite->data[2]++; if (sprite->data[2] == 52) { diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 4064e250cb16..23e031b64659 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -473,8 +473,8 @@ void AnimTask_UnusedLevelUpHealthBox(u8 taskId) AnimLoadCompressedBgGfx(animBgData.bgId, UnusedLevelupAnimationGfx, animBgData.tilesOffset); LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32); - gBattle_BG1_X = -gSprites[spriteId3].pos1.x + 32; - gBattle_BG1_Y = -gSprites[spriteId3].pos1.y - 32; + gBattle_BG1_X = -gSprites[spriteId3].x + 32; + gBattle_BG1_Y = -gSprites[spriteId3].y - 32; gTasks[taskId].data[1] = 640; gTasks[taskId].data[0] = spriteId3; gTasks[taskId].data[2] = spriteId4; @@ -857,9 +857,9 @@ static void SpriteCB_Ball_Throw(struct Sprite *sprite) u16 targetX = sprite->sTargetXArg; u16 targetY = sprite->sTargetYArg; - sprite->sOffsetX = sprite->pos1.x; + sprite->sOffsetX = sprite->x; sprite->sTargetX = targetX; - sprite->sOffsetY = sprite->pos1.y; + sprite->sOffsetY = sprite->y; sprite->sTargetY = targetY; sprite->sAmplitude = -40; InitAnimArcTranslation(sprite); @@ -891,10 +891,10 @@ static void SpriteCB_Ball_Arc(struct Sprite *sprite) else { StartSpriteAnim(sprite, 1); - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; for (i = 0; i < 8; i++) sprite->data[i] = 0; @@ -906,7 +906,7 @@ static void SpriteCB_Ball_Arc(struct Sprite *sprite) switch (ballId) { case 0 ... POKEBALL_COUNT - 1: - AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId); LaunchBallFadeMonTask(FALSE, gBattleAnimTarget, 14, ballId); break; } @@ -948,7 +948,7 @@ static void SpriteCB_Ball_MonShrink_Step(struct Sprite *sprite) PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); gTasks[taskId].data[10] = 256; gMonShrinkDuration = 28; - gMonShrinkDistance = (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y) - (sprite->pos1.y + sprite->pos2.y); + gMonShrinkDistance = (gSprites[spriteId].y + gSprites[spriteId].y2) - (sprite->y + sprite->y2); gMonShrinkDelta = (u32)(gMonShrinkDistance * 256) / gMonShrinkDuration; gTasks[taskId].data[2] = gMonShrinkDelta; gTasks[taskId].tState++; // MON_SHRINK_STEP @@ -957,7 +957,7 @@ static void SpriteCB_Ball_MonShrink_Step(struct Sprite *sprite) gTasks[taskId].data[10] += 32; SetSpriteRotScale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[10], 0); gTasks[taskId].data[3] += gTasks[taskId].data[2]; - gSprites[spriteId].pos2.y = -gTasks[taskId].data[3] >> 8; + gSprites[spriteId].y2 = -gTasks[taskId].data[3] >> 8; if (gTasks[taskId].data[10] >= 1152) gTasks[taskId].tState++; // MON_SHRINK_INVISIBLE break; @@ -997,8 +997,8 @@ static void SpriteCB_Ball_Bounce(struct Sprite *sprite) sprite->sAmplitude = 40; sprite->sPhase = 0; phase = 0; - sprite->pos1.y += Cos(phase, 40); - sprite->pos2.y = -Cos(phase, sprite->sAmplitude); + sprite->y += Cos(phase, 40); + sprite->y2 = -Cos(phase, sprite->sAmplitude); sprite->callback = SpriteCB_Ball_Bounce_Step; } } @@ -1032,7 +1032,7 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite) switch (DIRECTION(sprite->sState)) { case BALL_FALLING: - sprite->pos2.y = -Cos(sprite->sPhase, sprite->sAmplitude); + sprite->y2 = -Cos(sprite->sPhase, sprite->sAmplitude); sprite->sPhase += PHASE_DELTA(sprite->sState) + 4; // Once the ball touches the ground if (sprite->sPhase >= 64) @@ -1062,7 +1062,7 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite) } break; case BALL_RISING: - sprite->pos2.y = -Cos(sprite->sPhase, sprite->sAmplitude); + sprite->y2 = -Cos(sprite->sPhase, sprite->sAmplitude); sprite->sPhase -= PHASE_DELTA(sprite->sState) + 4; // Once ball reaches max height if (sprite->sPhase <= 0) @@ -1077,8 +1077,8 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite) if (lastBounce) { sprite->sState = 0; - sprite->pos1.y += Cos(64, 40); - sprite->pos2.y = 0; + sprite->y += Cos(64, 40); + sprite->y2 = 0; if (gBattleSpritesDataPtr->animationData->ballThrowCaseId == BALL_NO_SHAKES) { sprite->sTimer = 0; @@ -1143,7 +1143,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite) // Rolling effect: every frame in the rotation, the sprite shifts 176/256 of a pixel. if (gBattleSpritesDataPtr->animationData->ballSubpx > 255) { - sprite->pos2.x += sprite->sDirection; + sprite->x2 += sprite->sDirection; gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF; } else @@ -1177,7 +1177,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite) case BALL_ROLL_2: if (gBattleSpritesDataPtr->animationData->ballSubpx > 255) { - sprite->pos2.x += sprite->sDirection; + sprite->x2 += sprite->sDirection; gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF; } else @@ -1212,7 +1212,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite) case BALL_ROLL_3: if (gBattleSpritesDataPtr->animationData->ballSubpx > 0xFF) { - sprite->pos2.x += sprite->sDirection; + sprite->x2 += sprite->sDirection; gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF; } else @@ -1420,12 +1420,12 @@ static void MakeCaptureStars(struct Sprite *sprite) LoadBallParticleGfx(BALL_MASTER); for (i = 0; i < ARRAY_COUNT(sCaptureStars); i++) { - u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[BALL_MASTER], sprite->pos1.x, sprite->pos1.y, subpriority); + u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[BALL_MASTER], sprite->x, sprite->y, subpriority); if (spriteId != MAX_SPRITES) { gSprites[spriteId].sDuration = 24; - gSprites[spriteId].sTargetX = sprite->pos1.x + sCaptureStars[i].xOffset; - gSprites[spriteId].sTargetY = sprite->pos1.y + sCaptureStars[i].yOffset; + gSprites[spriteId].sTargetX = sprite->x + sCaptureStars[i].xOffset; + gSprites[spriteId].sTargetY = sprite->y + sCaptureStars[i].yOffset; gSprites[spriteId].sAmplitude = sCaptureStars[i].amplitude; InitAnimArcTranslation(&gSprites[spriteId]); gSprites[spriteId].callback = SpriteCB_CaptureStar_Flicker; @@ -1465,7 +1465,7 @@ static void SpriteCB_Ball_Release_Step(struct Sprite *sprite) switch (ballId) { case 0 ... POKEBALL_COUNT - 1: - AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId); LaunchBallFadeMonTask(TRUE, gBattleAnimTarget, 14, ballId); break; } @@ -1492,12 +1492,12 @@ static void SpriteCB_Ball_Release_Wait(struct Sprite *sprite) else { gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY -= 288; - gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY >> 8; + gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY >> 8; } if (sprite->animEnded && released) { - gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = 0; + gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = 0; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->wildMonInvisible; sprite->sFrame = 0; sprite->callback = DestroySpriteAfterOneFrame; @@ -1513,10 +1513,10 @@ static void SpriteCB_Ball_Block(struct Sprite *sprite) { s32 i; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; for (i = 0; i < 6; i++) sprite->data[i] = 0; @@ -1533,13 +1533,13 @@ static void SpriteCB_Ball_Block_Step(struct Sprite *sprite) { s16 dy = sprite->sDy + 0x800; s16 dx = sprite->sDx + 0x680; - sprite->pos2.x -= dx >> 8; - sprite->pos2.y += dy >> 8; + sprite->x2 -= dx >> 8; + sprite->y2 += dy >> 8; sprite->sDy = (sprite->sDy + 0x800) & 0xFF; sprite->sDx = (sprite->sDx + 0x680) & 0xFF; - if (sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT - || sprite->pos1.x + sprite->pos2.x < -8) + if (sprite->y + sprite->y2 > DISPLAY_HEIGHT + || sprite->x + sprite->x2 < -8) { sprite->sFrame = 0; sprite->callback = DestroySpriteAfterOneFrame; @@ -1638,8 +1638,8 @@ static void PokeBallOpenParticleAnimation_Step1(struct Sprite *sprite) static void PokeBallOpenParticleAnimation_Step2(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], sprite->data[1]); sprite->data[1] += 2; if (sprite->data[1] == 50) DestroyBallOpenAnimationParticle(sprite); @@ -1831,8 +1831,8 @@ static void GreatBallOpenParticleAnimation(u8 taskId) static void FanOutBallOpenParticles_Step1(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], sprite->data[2]); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], sprite->data[2]); sprite->data[0] = (sprite->data[0] + sprite->data[4]) & 0xFF; sprite->data[1] += sprite->data[5]; sprite->data[2] += sprite->data[6]; @@ -1873,8 +1873,8 @@ static void RepeatBallOpenParticleAnimation(u8 taskId) static void RepeatBallOpenParticleAnimation_Step1(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2])); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2])); sprite->data[0] = (sprite->data[0] + 6) & 0xFF; sprite->data[1]++; sprite->data[2]++; @@ -1961,8 +1961,8 @@ static void PremierBallOpenParticleAnimation(u8 taskId) static void PremierBallOpenParticleAnimation_Step1(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); - sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2])); + sprite->x2 = Sin(sprite->data[0], sprite->data[1]); + sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2])); sprite->data[0] = (sprite->data[0] + 10) & 0xFF; sprite->data[1]++; sprite->data[2]++; @@ -2111,12 +2111,12 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId) gTasks[taskId].data[11] = gBattleAnimArgs[0]; gTasks[taskId].data[0] += 0x500; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8; + gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8; else - gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8; + gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8; gTasks[taskId].data[0] &= 0xFF; - x = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x + 32; + x = gSprites[spriteId].x + gSprites[spriteId].x2 + 32; if (x > 304) gTasks[taskId].data[10]++; break; @@ -2127,24 +2127,24 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId) case 2: gTasks[taskId].data[0] += 0x500; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) - gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8; + gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8; else - gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8; + gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8; gTasks[taskId].data[0] &= 0xFF; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - if (gSprites[spriteId].pos2.x <= 0) + if (gSprites[spriteId].x2 <= 0) { - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].x2 = 0; done = TRUE; } } else { - if (gSprites[spriteId].pos2.x >= 0) + if (gSprites[spriteId].x2 >= 0) { - gSprites[spriteId].pos2.x = 0; + gSprites[spriteId].x2 = 0; done = TRUE; } } @@ -2302,8 +2302,8 @@ static void Task_ShinyStars(u8 taskId) else { gSprites[spriteId].callback = SpriteCB_ShinyStars_Diagonal; - gSprites[spriteId].pos2.x = -32; - gSprites[spriteId].pos2.y = 32; + gSprites[spriteId].x2 = -32; + gSprites[spriteId].y2 = 32; gSprites[spriteId].invisible = TRUE; if (gTasks[taskId].tStarIdx == 0) { @@ -2343,8 +2343,8 @@ static void Task_ShinyStars_Wait(u8 taskId) static void SpriteCB_ShinyStars_Encircle(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->sPhase, 24); - sprite->pos2.y = Cos(sprite->sPhase, 24); + sprite->x2 = Sin(sprite->sPhase, 24); + sprite->y2 = Cos(sprite->sPhase, 24); sprite->sPhase += 12; if (sprite->sPhase > 255) { @@ -2362,9 +2362,9 @@ static void SpriteCB_ShinyStars_Diagonal(struct Sprite *sprite) else { sprite->invisible = FALSE; - sprite->pos2.x += 5; - sprite->pos2.y -= 5; - if (sprite->pos2.x > 32) + sprite->x2 += 5; + sprite->y2 -= 5; + if (sprite->x2 > 32) { gTasks[sprite->sTaskId].tNumStars--; FreeSpriteOamMatrix(sprite); diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 9b2b2e03c596..c20fbc9e271a 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -335,8 +335,8 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId) AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnimMaskImage_Curse, animBgData.tilesOffset); LoadPalette(sCurseLinesPalette, animBgData.paletteId * 16 + 1, 2); - gBattle_BG1_X = -gSprites[spriteId].pos1.x + 32; - gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32; + gBattle_BG1_X = -gSprites[spriteId].x + 32; + gBattle_BG1_Y = -gSprites[spriteId].y + 32; gTasks[taskId].data[0] = newSpriteId; gTasks[taskId].data[6] = var0; gTasks[taskId].func = AnimTask_DrawFallingWhiteLinesOnAttacker_Step; diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index d9cfeab9ae0f..e0a78acf5d2e 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -504,8 +504,8 @@ static void AnimRainDrop_Step(struct Sprite *sprite) { if (++sprite->data[0] <= 13) { - sprite->pos2.x++; - sprite->pos2.y += 4; + sprite->x2++; + sprite->y2 += 4; } if (sprite->animEnded) DestroySprite(sprite); @@ -518,28 +518,28 @@ static void AnimWaterBubbleProjectile(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; sprite->animPaused = TRUE; } else { - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; sprite->animPaused = TRUE; } if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[6]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslation(sprite); spriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy); sprite->data[5] = spriteId; - sprite->pos1.x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]); - sprite->pos1.y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]); + sprite->x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]); + sprite->y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]); gSprites[spriteId].data[0] = gBattleAnimArgs[2]; gSprites[spriteId].data[1] = gBattleAnimArgs[3]; gSprites[spriteId].data[2] = gBattleAnimArgs[5]; @@ -557,8 +557,8 @@ static void AnimWaterBubbleProjectile_Step1(struct Sprite *sprite) sprite->data[0] = 1; AnimTranslateLinear(sprite); - sprite->pos2.x += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]); - sprite->pos2.y += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]); + sprite->x2 += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]); + sprite->y2 += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]); gSprites[otherSpriteId].data[3] = trigIndex + gSprites[otherSpriteId].data[2]; if (--timer != 0) { @@ -595,9 +595,9 @@ static void AnimAuroraBeamRings(struct Sprite *sprite) else unkArg = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + unkArg; - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; InitAnimLinearTranslation(sprite); sprite->callback = AnimAuroraBeamRings_Step; @@ -650,9 +650,9 @@ static void AnimToTargetInSinWave(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = 30; - sprite->data[1] = sprite->pos1.x; + sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[3] = sprite->pos1.y; + sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); InitAnimLinearTranslation(sprite); sprite->data[5] = 0xD200 / sprite->data[0]; @@ -675,7 +675,7 @@ static void AnimToTargetInSinWave_Step(struct Sprite *sprite) { if (AnimTranslateLinear(sprite)) DestroyAnimSprite(sprite); - sprite->pos2.y += Sin(sprite->data[6] >> 8, sprite->data[7]); + sprite->y2 += Sin(sprite->data[6] >> 8, sprite->data[7]); if ((sprite->data[6] + sprite->data[5]) >> 8 > 127) { sprite->data[6] = 0; @@ -706,26 +706,26 @@ static void AnimHydroCannonCharge(struct Sprite *sprite) { u8 priority; - sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); - sprite->pos2.y = -10; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->y2 = -10; priority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); if (!IsContest()) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { - sprite->pos2.x = 10; + sprite->x2 = 10; sprite->subpriority = priority + 2; } else { - sprite->pos2.x = -10; + sprite->x2 = -10; sprite->subpriority = priority - 2; } } else { - sprite->pos2.x = -10; + sprite->x2 = -10; sprite->subpriority = priority + 2; } sprite->callback = AnimHydroCannonCharge_Step; @@ -771,8 +771,8 @@ static void AnimWaterGunDroplet(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; - sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[4]; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + sprite->data[4] = sprite->y + gBattleAnimArgs[4]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -790,9 +790,9 @@ static void AnimSmallBubblePair(struct Sprite *sprite) static void AnimSmallBubblePair_Step(struct Sprite *sprite) { sprite->data[0] = (sprite->data[0] + 11) & 0xFF; - sprite->pos2.x = Sin(sprite->data[0], 4); + sprite->x2 = Sin(sprite->data[0], 4); sprite->data[1] += 48; - sprite->pos2.y = -(sprite->data[1] >> 8); + sprite->y2 = -(sprite->data[1] >> 8); if (--sprite->data[7] == -1) DestroyAnimSprite(sprite); } @@ -1027,10 +1027,10 @@ static void AnimSmallDriftingBubbles_Step(struct Sprite *sprite) sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; if (sprite->data[1] & 1) - sprite->pos2.x = -(sprite->data[3] >> 8); + sprite->x2 = -(sprite->data[3] >> 8); else - sprite->pos2.x = sprite->data[3] >> 8; - sprite->pos2.y = sprite->data[4] >> 8; + sprite->x2 = sprite->data[3] >> 8; + sprite->y2 = sprite->data[4] >> 8; if (++sprite->data[0] == 21) DestroyAnimSprite(sprite); } @@ -1040,7 +1040,7 @@ void AnimTask_WaterSpoutLaunch(u8 taskId) struct Task *task = &gTasks[taskId]; task->data[15] = GetAnimBattlerSpriteId(ANIM_ATTACKER); - task->data[5] = gSprites[task->data[15]].pos1.y; + task->data[5] = gSprites[task->data[15]].y; task->data[1] = GetWaterSpoutPowerForAnim(); PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL); task->func = AnimTask_WaterSpoutLaunch_Step; @@ -1061,18 +1061,18 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId) task->data[3] = 0; if (++task->data[4] & 1) { - gSprites[task->data[15]].pos2.x = 3; - gSprites[task->data[15]].pos1.y++; + gSprites[task->data[15]].x2 = 3; + gSprites[task->data[15]].y++; } else { - gSprites[task->data[15]].pos2.x = -3; + gSprites[task->data[15]].x2 = -3; } } if (UpdateEruptAnimTask(task) == 0) { SetBattlerSpriteYOffsetFromYScale(task->data[15]); - gSprites[task->data[15]].pos2.x = 0; + gSprites[task->data[15]].x2 = 0; task->data[3] = 0; task->data[4] = 0; task->data[0]++; @@ -1102,9 +1102,9 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId) { task->data[3] = 0; if (++task->data[4] & 1) - gSprites[task->data[15]].pos2.y += 2; + gSprites[task->data[15]].y2 += 2; else - gSprites[task->data[15]].pos2.y -= 2; + gSprites[task->data[15]].y2 -= 2; if (task->data[4] == 10) { PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xE0, 0x100, 0x100, 8); @@ -1115,11 +1115,11 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId) } break; case 6: - gSprites[task->data[15]].pos1.y--; + gSprites[task->data[15]].y--; if (UpdateEruptAnimTask(task) == 0) { ResetSpriteRotScale(task->data[15]); - gSprites[task->data[15]].pos1.y = task->data[5]; + gSprites[task->data[15]].y = task->data[5]; task->data[4] = 0; task->data[0]++; } @@ -1209,9 +1209,9 @@ static void AnimSmallWaterOrb(struct Sprite *sprite) case 1: sprite->data[2] += sprite->data[4]; sprite->data[3] += sprite->data[5]; - sprite->pos1.x = sprite->data[2] >> 4; - sprite->pos1.y = sprite->data[3] >> 4; - if (sprite->pos1.x < -8 || sprite->pos1.x > 248 || sprite->pos1.y < -8 || sprite->pos1.y > 120) + sprite->x = sprite->data[2] >> 4; + sprite->y = sprite->data[3] >> 4; + if (sprite->x < -8 || sprite->x > 248 || sprite->y < -8 || sprite->y > 120) { gTasks[sprite->data[6]].data[sprite->data[7]]--; DestroySprite(sprite); @@ -1306,11 +1306,11 @@ static void AnimWaterSpoutRain(struct Sprite *sprite) { if (sprite->data[0] == 0) { - sprite->pos1.y += 8; - if (sprite->pos1.y >= sprite->data[5]) + sprite->y += 8; + if (sprite->y >= sprite->data[5]) { gTasks[sprite->data[6]].data[10] = 1; - sprite->data[1] = CreateSprite(&gWaterHitSplatSpriteTemplate, sprite->pos1.x, sprite->pos1.y, 1); + sprite->data[1] = CreateSprite(&gWaterHitSplatSpriteTemplate, sprite->x, sprite->y, 1); if (sprite->data[1] != MAX_SPRITES) { StartSpriteAffineAnim(&gSprites[sprite->data[1]], 3); @@ -1449,11 +1449,11 @@ static void AnimWaterSportDroplet(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; + sprite->x += sprite->x2; + sprite->y += sprite->y2; sprite->data[0] = 6; - sprite->data[2] = (Random2() & 0x1F) - 16 + sprite->pos1.x; - sprite->data[4] = (Random2() & 0x1F) - 16 + sprite->pos1.y; + sprite->data[2] = (Random2() & 0x1F) - 16 + sprite->x; + sprite->data[4] = (Random2() & 0x1F) - 16 + sprite->y; sprite->data[5] = ~(Random2() & 7); InitAnimArcTranslation(sprite); sprite->callback = AnimWaterSportDroplet_Step; @@ -1480,8 +1480,8 @@ static void AnimWaterSportDroplet_Step(struct Sprite *sprite) static void AnimWaterPulseBubble(struct Sprite *sprite) { - sprite->pos1.x = gBattleAnimArgs[0]; - sprite->pos1.y = gBattleAnimArgs[1]; + sprite->x = gBattleAnimArgs[0]; + sprite->y = gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[4]; @@ -1492,9 +1492,9 @@ static void AnimWaterPulseBubble(struct Sprite *sprite) static void AnimWaterPulseBubble_Step(struct Sprite *sprite) { sprite->data[4] -= sprite->data[0]; - sprite->pos2.y = sprite->data[4] / 10; + sprite->y2 = sprite->data[4] / 10; sprite->data[5] = (sprite->data[5] + sprite->data[1]) & 0xFF; - sprite->pos2.x = Sin(sprite->data[5], sprite->data[2]); + sprite->x2 = Sin(sprite->data[5], sprite->data[2]); if (--sprite->data[3] == 0) DestroyAnimSprite(sprite); } @@ -1503,8 +1503,8 @@ static void AnimWaterPulseRingBubble(struct Sprite *sprite) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; - sprite->pos2.x = sprite->data[3] >> 7; - sprite->pos2.y = sprite->data[4] >> 7; + sprite->x2 = sprite->data[3] >> 7; + sprite->y2 = sprite->data[4] >> 7; if (--sprite->data[0] == 0) { FreeSpriteOamMatrix(sprite); @@ -1524,11 +1524,11 @@ void AnimWaterPulseRing(struct Sprite *sprite) static void AnimWaterPulseRing_Step(struct Sprite *sprite) { - int xDiff = sprite->data[1] - sprite->pos1.x; - int yDiff = sprite->data[2] - sprite->pos1.y; + int xDiff = sprite->data[1] - sprite->x; + int yDiff = sprite->data[2] - sprite->y; - sprite->pos2.x = (sprite->data[0] * xDiff) / sprite->data[3]; - sprite->pos2.y = (sprite->data[0] * yDiff) / sprite->data[3]; + sprite->x2 = (sprite->data[0] * xDiff) / sprite->data[3]; + sprite->y2 = (sprite->data[0] * yDiff) / sprite->data[3]; if (++sprite->data[5] == sprite->data[4]) { sprite->data[5] = 0; @@ -1551,8 +1551,8 @@ static void CreateWaterPulseRingBubbles(struct Sprite *sprite, int xDiff, int yD u8 spriteId; something = sprite->data[0] / 2; - combinedX = sprite->pos1.x + sprite->pos2.x; - combinedY = sprite->pos1.y + sprite->pos2.y; + combinedX = sprite->x + sprite->x2; + combinedY = sprite->y + sprite->y2; if (yDiff < 0) unusedVar *= -1; //Needed to match randomSomethingY = yDiff + (Random2() % 10) - 5; diff --git a/src/battle_bg.c b/src/battle_bg.c index ae5d2777924a..0ad1265090ba 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -1112,8 +1112,8 @@ void InitLinkBattleVsScreen(u8 taskId) gSprites[gBattleStruct->linkBattleVsSpriteId_S].oam.tileNum += 0x40; gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[0] = 0; gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[0] = 1; - gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].pos1.x; - gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].pos1.x; + gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].x; + gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].x; gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[2] = 0; gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[2] = 0; } diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 0f612f9647b0..dc8b2bfd170a 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -365,7 +365,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) static void TryShinyAnimAfterMonAnim(void) { if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim) { @@ -1134,7 +1134,7 @@ static void LinkOpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1302,7 +1302,7 @@ static void LinkOpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; @@ -1324,8 +1324,8 @@ static void LinkOpponentHandleTrainerSlide(void) SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 96; + gSprites[gBattlerSpriteIds[gActiveBattler]].x += 32; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; @@ -1342,7 +1342,7 @@ static void LinkOpponentHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1703,7 +1703,7 @@ static void LinkOpponentHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite); diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 9184f5ac992e..07101c682365 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -265,7 +265,7 @@ static void Intro_ShowHealthbox(void) static void WaitForMonAnimAfterLoad(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) LinkPartnerBufferExecCompleted(); } @@ -288,7 +288,7 @@ static void CompleteOnHealthbarDone(void) static void FreeMonSpriteAfterFaintAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); @@ -1021,7 +1021,7 @@ static void LinkPartnerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1144,7 +1144,7 @@ static void LinkPartnerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; @@ -1163,7 +1163,7 @@ static void LinkPartnerHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1535,7 +1535,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 9fce5050e8e2..68f4907f0bba 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -379,7 +379,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) static void TryShinyAnimAfterMonAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0 + if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); @@ -1143,7 +1143,7 @@ static void OpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; @@ -1310,7 +1310,7 @@ static void OpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; @@ -1379,8 +1379,8 @@ static void OpponentHandleTrainerSlide(void) SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 96; + gSprites[gBattlerSpriteIds[gActiveBattler]].x += 32; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; @@ -1396,7 +1396,7 @@ static void OpponentHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1869,7 +1869,7 @@ static void OpponentHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 34fcb82f6af2..a8528374541c 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -229,7 +229,7 @@ static void PlayerBufferRunCommand(void) static void CompleteOnBankSpritePosX_0(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) PlayerBufferExecCompleted(); } @@ -1316,7 +1316,7 @@ static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId) static void FreeMonSpriteAfterFaintAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); @@ -2328,8 +2328,8 @@ static void PlayerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF; @@ -2343,7 +2343,7 @@ static void PlayerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; } @@ -2382,7 +2382,7 @@ static void PlayerHandleTrainerSlide(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 80, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, 30); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; @@ -2396,7 +2396,7 @@ static void PlayerHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); @@ -2953,7 +2953,7 @@ static void PlayerHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].sBattlerId = gActiveBattler; diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 401ad311bb39..d1d23099a0b7 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -277,7 +277,7 @@ static void Intro_ShowHealthbox(void) static void WaitForMonAnimAfterLoad(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) PlayerPartnerBufferExecCompleted(); } @@ -472,7 +472,7 @@ static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId) static void FreeMonSpriteAfterFaintAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); @@ -1205,7 +1205,7 @@ static void PlayerPartnerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1320,7 +1320,7 @@ static void PlayerPartnerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; } @@ -1331,8 +1331,8 @@ static void PlayerPartnerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF; @@ -1354,7 +1354,7 @@ static void PlayerPartnerHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1784,7 +1784,7 @@ static void PlayerPartnerHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 245e4bd307b3..c84f9a0de0ae 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -349,7 +349,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) static void TryShinyAnimAfterMonAnim(void) { if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim) { @@ -1117,7 +1117,7 @@ static void RecordedOpponentHandleLoadMonSprite(void) GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1249,7 +1249,7 @@ static void RecordedOpponentHandleDrawTrainerPic(void) (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId; @@ -1270,7 +1270,7 @@ static void RecordedOpponentHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1643,7 +1643,7 @@ static void RecordedOpponentHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite); diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 73c23afc5fd4..bff81948ba64 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -342,7 +342,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) static void WaitForMonAnimAfterLoad(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0) RecordedPlayerBufferExecCompleted(); } @@ -365,7 +365,7 @@ static void CompleteOnHealthbarDone(void) static void FreeMonSpriteAfterFaintAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT) + if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); @@ -1098,7 +1098,7 @@ static void RecordedPlayerHandleLoadMonSprite(void) GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); @@ -1233,8 +1233,8 @@ static void RecordedPlayerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF; @@ -1247,7 +1247,7 @@ static void RecordedPlayerHandleDrawTrainerPic(void) gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; } @@ -1267,7 +1267,7 @@ static void RecordedPlayerHandleTrainerSlideBack(void) SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; @@ -1668,7 +1668,7 @@ static void RecordedPlayerHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 5d8b46ebd8b3..a825387419eb 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -361,7 +361,7 @@ static void SafariHandleDrawTrainerPic(void) (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80, 30); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index b35ffa69248f..cbf739ae390e 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -1041,7 +1041,7 @@ static void WallyHandleDrawTrainerPic(void) 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size), 30); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; @@ -1056,7 +1056,7 @@ static void WallyHandleTrainerSlide(void) 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size), 30); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; - gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96; + gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96; gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBankSpriteCallbackDummy2; @@ -1435,7 +1435,7 @@ static void WallyHandleIntroTrainerBallThrow(void) gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; - gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y; + gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; diff --git a/src/battle_dome.c b/src/battle_dome.c index 59e418a06594..f6b4efa95bdc 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -3102,17 +3102,17 @@ static void Task_ShowTourneyInfoCard(u8 taskId) // That means that the sprite needs to move with the moving card in the opposite scrolling direction. static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite) { - sprite->pos1.y += 4; + sprite->y += 4; if (sprite->data[0] != 0) { - if (sprite->pos1.y >= -32) + if (sprite->y >= -32) sprite->invisible = FALSE; if (++sprite->data[1] == 40) sprite->callback = SpriteCallbackDummy; } else { - if (sprite->pos1.y >= 192) + if (sprite->y >= 192) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyTrainerPicSprite(sprite->data[3]); @@ -3122,17 +3122,17 @@ static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite) static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite) { - sprite->pos1.y -= 4; + sprite->y -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.y <= 192) + if (sprite->y <= 192) sprite->invisible = FALSE; if (++sprite->data[1] == 40) sprite->callback = SpriteCallbackDummy; } else { - if (sprite->pos1.y <= -32) + if (sprite->y <= -32) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyTrainerPicSprite(sprite->data[3]); @@ -3142,17 +3142,17 @@ static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite) static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite) { - sprite->pos1.x += 4; + sprite->x += 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x >= -32) + if (sprite->x >= -32) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCallbackDummy; } else { - if (sprite->pos1.x >= DISPLAY_WIDTH + 32) + if (sprite->x >= DISPLAY_WIDTH + 32) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyTrainerPicSprite(sprite->data[3]); @@ -3162,17 +3162,17 @@ static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite) static void SpriteCb_TrainerIconCardScrollRight(struct Sprite *sprite) { - sprite->pos1.x -= 4; + sprite->x -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x <= DISPLAY_WIDTH + 32) + if (sprite->x <= DISPLAY_WIDTH + 32) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCallbackDummy; } else { - if (sprite->pos1.x <= -32) + if (sprite->x <= -32) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyTrainerPicSprite(sprite->data[3]); @@ -3192,17 +3192,17 @@ static void SpriteCb_MonIconCardScrollUp(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); - sprite->pos1.y += 4; + sprite->y += 4; if (sprite->data[0] != 0) { - if (sprite->pos1.y >= -16) + if (sprite->y >= -16) sprite->invisible = FALSE; if (++sprite->data[1] == 40) sprite->callback = SpriteCb_MonIcon; } else { - if (sprite->pos1.y >= 176) + if (sprite->y >= 176) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyMonIconSprite(sprite); @@ -3214,17 +3214,17 @@ static void SpriteCb_MonIconCardScrollDown(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); - sprite->pos1.y -= 4; + sprite->y -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.y <= 176) + if (sprite->y <= 176) sprite->invisible = FALSE; if (++sprite->data[1] == 40) sprite->callback = SpriteCb_MonIcon; } else { - if (sprite->pos1.y <= -16) + if (sprite->y <= -16) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyMonIconSprite(sprite); @@ -3236,17 +3236,17 @@ static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); - sprite->pos1.x += 4; + sprite->x += 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x >= -16) + if (sprite->x >= -16) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCb_MonIcon; } else { - if (sprite->pos1.x >= DISPLAY_WIDTH + 16) + if (sprite->x >= DISPLAY_WIDTH + 16) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyMonIconSprite(sprite); @@ -3258,17 +3258,17 @@ static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); - sprite->pos1.x -= 4; + sprite->x -= 4; if (sprite->data[0] != 0) { - if (sprite->pos1.x <= DISPLAY_WIDTH + 16) + if (sprite->x <= DISPLAY_WIDTH + 16) sprite->invisible = FALSE; if (++sprite->data[1] == 64) sprite->callback = SpriteCb_MonIcon; } else { - if (sprite->pos1.x <= -16) + if (sprite->x <= -16) { sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE; FreeAndDestroyMonIconSprite(sprite); diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index db810e965bf3..3fb65d498da8 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1307,7 +1307,7 @@ static void Select_InitAllSprites(void) Select_SetBallSpritePaletteNum(i); } cursorPos = sFactorySelectScreen->cursorPos; - x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].pos1.x; + x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].x; sFactorySelectScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Select_Arrow, x, 88, 0); sFactorySelectScreen->menuCursor1SpriteId = CreateSprite(&sSpriteTemplate_Select_MenuHighlightLeft, 176, 112, 0); sFactorySelectScreen->menuCursor2SpriteId = CreateSprite(&sSpriteTemplate_Select_MenuHighlightRight, 176, 144, 0); @@ -1352,7 +1352,7 @@ static void Select_UpdateBallCursorPosition(s8 direction) } cursorPos = sFactorySelectScreen->cursorPos; - gSprites[sFactorySelectScreen->cursorSpriteId].pos1.x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].pos1.x; + gSprites[sFactorySelectScreen->cursorSpriteId].x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].x; } static void Select_UpdateMenuCursorPosition(s8 direction) @@ -1372,8 +1372,8 @@ static void Select_UpdateMenuCursorPosition(s8 direction) sFactorySelectScreen->menuCursorPos = ARRAY_COUNT(sSelect_MenuOptionFuncs) - 1; } - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112; } static void Select_UpdateYesNoCursorPosition(s8 direction) @@ -1393,8 +1393,8 @@ static void Select_UpdateYesNoCursorPosition(s8 direction) sFactorySelectScreen->yesNoCursorPos = 1; } - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112; } static void Select_HandleMonSelectionChange(void) @@ -1823,10 +1823,10 @@ static void Select_ShowMenuOptions(void) if (!sFactorySelectScreen->fromSummaryScreen) sFactorySelectScreen->menuCursorPos = 0; - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.x = 176; - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.x = 208; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].x = 176; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].x = 208; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112; gSprites[sFactorySelectScreen->menuCursor1SpriteId].invisible = FALSE; gSprites[sFactorySelectScreen->menuCursor2SpriteId].invisible = FALSE; @@ -1838,10 +1838,10 @@ static void Select_ShowYesNoOptions(void) { sFactorySelectScreen->yesNoCursorPos = 0; - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.x = 176; - gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = 112; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.x = 208; - gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = 112; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].x = 176; + gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = 112; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].x = 208; + gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = 112; gSprites[sFactorySelectScreen->menuCursor1SpriteId].invisible = FALSE; gSprites[sFactorySelectScreen->menuCursor2SpriteId].invisible = FALSE; @@ -2793,33 +2793,33 @@ static void Swap_Task_SlideCycleBalls(u8 taskId) { if (i != FRONTIER_PARTY_SIZE - 1) { - u8 posX = lastX - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x; + u8 posX = lastX - gSprites[sFactorySwapScreen->ballSpriteIds[i]].x; if (posX == 16 || gTasks[taskId].tBallCycled(i + 1) == TRUE) { - lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x; - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x += 10; + lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x; + gSprites[sFactorySwapScreen->ballSpriteIds[i]].x += 10; } else if (posX > 16) { - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[i + 1]].pos1.x - 48; + gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = gSprites[sFactorySwapScreen->ballSpriteIds[i + 1]].x - 48; } } else { - lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x; - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x += 10; + lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x; + gSprites[sFactorySwapScreen->ballSpriteIds[i]].x += 10; } if (gTasks[taskId].tBallCycled(i) == TRUE) { // New ball coming in from left, check if it has reached dest - if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x > (i * 48) + 72) + if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x > (i * 48) + 72) { // Overshot dest, set x and finish - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = (i * 48) + 72; + gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = (i * 48) + 72; finished = TRUE; } - else if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x == (i * 48) + 72) + else if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x == (i * 48) + 72) { finished = TRUE; } @@ -2833,11 +2833,11 @@ static void Swap_Task_SlideCycleBalls(u8 taskId) finished = FALSE; } - if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x - 16 > DISPLAY_WIDTH) + if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x - 16 > DISPLAY_WIDTH) { // Ball is offscreen right, cycle its palette and move to left side of screen - lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x; - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = -16; + lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x; + gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = -16; if (sFactorySwapScreen->inEnemyScreen == TRUE) gSprites[sFactorySwapScreen->ballSpriteIds[i]].oam.paletteNum = IndexOfSpritePaletteTag(PALTAG_BALL_SELECTED); else @@ -2881,7 +2881,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) switch (gTasks[taskId].tState) { case SLIDE_BUTTON_PKMN: - currPosX = gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0][0]].pos1.x; + currPosX = gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0][0]].x; if (!gTasks[taskId].tSlidingOn) { // Sliding "Pkmn for Swap" offscreen @@ -2915,7 +2915,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0]); i++) { for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds); j++) - gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][i]].pos1.x += deltaX; + gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][i]].x += deltaX; } } else @@ -2923,9 +2923,9 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) // Set final position for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds); j++) { - gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][0]].pos1.x = posX; - gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][1]].pos1.x = posX + 16; - gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][2]].pos1.x = posX + 48; + gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][0]].x = posX; + gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][1]].x = posX + 16; + gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][2]].x = posX + 48; } prevTaskId = gTasks[taskId].tTaskId; gTasks[prevTaskId].tSlideFinishedPkmn = TRUE; @@ -2933,7 +2933,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) } break; case SLIDE_BUTTON_CANCEL: - currPosX = gSprites[sFactorySwapScreen->cancelButtonSpriteIds[0][0]].pos1.x; + currPosX = gSprites[sFactorySwapScreen->cancelButtonSpriteIds[0][0]].x; if (!gTasks[taskId].tSlidingOn) { // Sliding "Cancel" offscreen @@ -2967,7 +2967,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds); i++) { for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds[0]); j++) - gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][i]].pos1.x += deltaX; + gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][i]].x += deltaX; } } else @@ -2975,8 +2975,8 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId) // Set final position for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds); j++) { - gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][0]].pos1.x = posX; - gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][1]].pos1.x = posX + 16; + gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][0]].x = posX; + gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][1]].x = posX + 16; } prevTaskId = gTasks[taskId].tTaskId; gTasks[prevTaskId].tSlideFinishedCancel = TRUE; @@ -3221,7 +3221,7 @@ static void Swap_Task_SwitchPartyScreen(u8 taskId) for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0]); i++) gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[1][i]].invisible = TRUE; } - gSprites[sFactorySwapScreen->cursorSpriteId].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].pos1.x; + gSprites[sFactorySwapScreen->cursorSpriteId].x = gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].x; gTasks[sFactorySwapScreen->fadeSpeciesNameTaskId].func = Swap_Task_FadeSpeciesName; sFactorySwapScreen->fadeSpeciesNameCoeffDelay = 0; sFactorySwapScreen->fadeSpeciesNameCoeff = 6; @@ -3433,7 +3433,7 @@ static void Swap_InitAllSprites(void) sFactorySwapScreen->ballSpriteIds[i] = CreateSprite(&spriteTemplate, (48 * i) + 72, 64, 1); gSprites[sFactorySwapScreen->ballSpriteIds[i]].data[0] = 0; } - sFactorySwapScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Swap_Arrow, gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].pos1.x, 88, 0); + sFactorySwapScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Swap_Arrow, gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].x, 88, 0); sFactorySwapScreen->menuCursor1SpriteId = CreateSprite(&sSpriteTemplate_Swap_MenuHighlightLeft, 176, 112, 0); sFactorySwapScreen->menuCursor2SpriteId = CreateSprite(&sSpriteTemplate_Swap_MenuHighlightRight, 176, 144, 0); gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = TRUE; @@ -3541,7 +3541,7 @@ static void Swap_HandleActionCursorChange(u8 cursorId) // Cursor is on one of the pokemon gSprites[sFactorySwapScreen->cursorSpriteId].invisible = FALSE; Swap_HideActionButtonHighlights(); - gSprites[sFactorySwapScreen->cursorSpriteId].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[cursorId]].pos1.x; + gSprites[sFactorySwapScreen->cursorSpriteId].x = gSprites[sFactorySwapScreen->ballSpriteIds[cursorId]].x; } else { @@ -3618,8 +3618,8 @@ static void Swap_UpdateYesNoCursorPosition(s8 direction) sFactorySwapScreen->yesNoCursorPos = 1; } - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112; } static void Swap_UpdateMenuCursorPosition(s8 direction) @@ -3640,8 +3640,8 @@ static void Swap_UpdateMenuCursorPosition(s8 direction) sFactorySwapScreen->menuCursorPos = ARRAY_COUNT(sSwap_MenuOptionFuncs) - 1; } - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112; } static void Swap_HighlightActionButton(u8 actionId) @@ -3693,10 +3693,10 @@ static void Swap_ShowMenuOptions(void) else sFactorySwapScreen->menuCursorPos = 0; - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.x = 176; - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.x = 208; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].x = 176; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].x = 208; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112; gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = FALSE; gSprites[sFactorySwapScreen->menuCursor2SpriteId].invisible = FALSE; @@ -3708,10 +3708,10 @@ static void Swap_ShowYesNoOptions(void) { sFactorySwapScreen->yesNoCursorPos = 0; - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.x = 176; - gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = 112; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.x = 208; - gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = 112; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].x = 176; + gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = 112; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].x = 208; + gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = 112; gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = FALSE; gSprites[sFactorySwapScreen->menuCursor2SpriteId].invisible = FALSE; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 88e69665e082..41e34bf33554 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -376,10 +376,10 @@ void SpriteCB_TrainerSlideIn(struct Sprite *sprite) { if (!(gIntroSlideFlags & 1)) { - sprite->pos2.x += sprite->sSpeedX; - if (sprite->pos2.x == 0) + sprite->x2 += sprite->sSpeedX; + if (sprite->x2 == 0) { - if (sprite->pos2.y != 0) + if (sprite->y2 != 0) sprite->callback = SpriteCB_TrainerSlideVertical; else sprite->callback = SpriteCallbackDummy; @@ -390,8 +390,8 @@ void SpriteCB_TrainerSlideIn(struct Sprite *sprite) // Slide up to 0 if necessary (used by multi battle intro) static void SpriteCB_TrainerSlideVertical(struct Sprite *sprite) { - sprite->pos2.y -= 2; - if (sprite->pos2.y == 0) + sprite->y2 -= 2; + if (sprite->y2 == 0) sprite->callback = SpriteCallbackDummy; } @@ -914,7 +914,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform BlendPalette(paletteOffset, 16, 6, RGB_WHITE); CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); } - gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk); + gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); } else { @@ -989,7 +989,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef]; } - gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk); + gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]); } } @@ -1038,9 +1038,9 @@ void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId) StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battlerId]); if (!loadMonSprite) - gSprites[spriteId].pos1.y = GetSubstituteSpriteDefault_Y(battlerId); + gSprites[spriteId].y = GetSubstituteSpriteDefault_Y(battlerId); else - gSprites[spriteId].pos1.y = GetBattlerSpriteDefault_Y(battlerId); + gSprites[spriteId].y = GetBattlerSpriteDefault_Y(battlerId); } void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move) @@ -1181,8 +1181,8 @@ void SpriteCB_EnemyShadow(struct Sprite *shadowSprite) if (gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute) invisible = TRUE; - shadowSprite->pos1.x = battlerSprite->pos1.x; - shadowSprite->pos2.x = battlerSprite->pos2.x; + shadowSprite->x = battlerSprite->x; + shadowSprite->x2 = battlerSprite->x2; shadowSprite->invisible = invisible; } diff --git a/src/battle_interface.c b/src/battle_interface.c index 50eb5373ac5b..83bdf0cb710b 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -975,33 +975,33 @@ static void SpriteCB_HealthBar(struct Sprite *sprite) switch (sprite->hBar_Data6) { case 0: - sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 16; - sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y; + sprite->x = gSprites[healthboxSpriteId].x + 16; + sprite->y = gSprites[healthboxSpriteId].y; break; case 1: - sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 16; - sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y; + sprite->x = gSprites[healthboxSpriteId].x + 16; + sprite->y = gSprites[healthboxSpriteId].y; break; case 2: default: - sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 8; - sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y; + sprite->x = gSprites[healthboxSpriteId].x + 8; + sprite->y = gSprites[healthboxSpriteId].y; break; } - sprite->pos2.x = gSprites[healthboxSpriteId].pos2.x; - sprite->pos2.y = gSprites[healthboxSpriteId].pos2.y; + sprite->x2 = gSprites[healthboxSpriteId].x2; + sprite->y2 = gSprites[healthboxSpriteId].y2; } static void SpriteCB_HealthBoxOther(struct Sprite *sprite) { u8 healthboxMainSpriteId = sprite->hOther_HealthBoxSpriteId; - sprite->pos1.x = gSprites[healthboxMainSpriteId].pos1.x + 64; - sprite->pos1.y = gSprites[healthboxMainSpriteId].pos1.y; + sprite->x = gSprites[healthboxMainSpriteId].x + 64; + sprite->y = gSprites[healthboxMainSpriteId].y; - sprite->pos2.x = gSprites[healthboxMainSpriteId].pos2.x; - sprite->pos2.y = gSprites[healthboxMainSpriteId].pos2.y; + sprite->x2 = gSprites[healthboxMainSpriteId].x2; + sprite->y2 = gSprites[healthboxMainSpriteId].y2; } void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue) @@ -1029,8 +1029,8 @@ void SetHealthboxSpriteVisible(u8 healthboxSpriteId) static void UpdateSpritePos(u8 spriteId, s16 x, s16 y) { - gSprites[spriteId].pos1.x = x; - gSprites[spriteId].pos1.y = y; + gSprites[spriteId].x = x; + gSprites[spriteId].y = y; } void DestoryHealthboxSprite(u8 healthboxSpriteId) @@ -1485,17 +1485,17 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, summaryBarSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10); SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable); - gSprites[summaryBarSpriteId].pos2.x = bar_pos2_X; + gSprites[summaryBarSpriteId].x2 = bar_pos2_X; gSprites[summaryBarSpriteId].data[0] = bar_data0; if (isOpponent) { - gSprites[summaryBarSpriteId].pos1.x -= 96; + gSprites[summaryBarSpriteId].x -= 96; gSprites[summaryBarSpriteId].oam.matrixNum = ST_OAM_HFLIP; } else { - gSprites[summaryBarSpriteId].pos1.x += 96; + gSprites[summaryBarSpriteId].x += 96; } for (i = 0; i < PARTY_SIZE; i++) @@ -1507,23 +1507,23 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, if (!isOpponent) { - gSprites[ballIconSpritesIds[i]].pos2.x = 0; - gSprites[ballIconSpritesIds[i]].pos2.y = 0; + gSprites[ballIconSpritesIds[i]].x2 = 0; + gSprites[ballIconSpritesIds[i]].y2 = 0; } gSprites[ballIconSpritesIds[i]].data[0] = summaryBarSpriteId; if (!isOpponent) { - gSprites[ballIconSpritesIds[i]].pos1.x += 10 * i + 24; + gSprites[ballIconSpritesIds[i]].x += 10 * i + 24; gSprites[ballIconSpritesIds[i]].data[1] = i * 7 + 10; - gSprites[ballIconSpritesIds[i]].pos2.x = 120; + gSprites[ballIconSpritesIds[i]].x2 = 120; } else { - gSprites[ballIconSpritesIds[i]].pos1.x -= 10 * (5 - i) + 24; + gSprites[ballIconSpritesIds[i]].x -= 10 * (5 - i) + 24; gSprites[ballIconSpritesIds[i]].data[1] = (6 - i) * 7 + 10; - gSprites[ballIconSpritesIds[i]].pos2.x = -120; + gSprites[ballIconSpritesIds[i]].x2 = -120; } gSprites[ballIconSpritesIds[i]].data[2] = isOpponent; @@ -1793,17 +1793,17 @@ static void sub_8073F98(u8 taskId) static void SpriteCB_StatusSummaryBar(struct Sprite *sprite) { - if (sprite->pos2.x != 0) - sprite->pos2.x += sprite->data[0]; + if (sprite->x2 != 0) + sprite->x2 += sprite->data[0]; } static void sub_8074090(struct Sprite *sprite) { sprite->data[1] += 32; if (sprite->data[0] > 0) - sprite->pos2.x += sprite->data[1] >> 4; + sprite->x2 += sprite->data[1] >> 4; else - sprite->pos2.x -= sprite->data[1] >> 4; + sprite->x2 -= sprite->data[1] >> 4; sprite->data[1] &= 0xF; } @@ -1826,18 +1826,18 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) if (var1 != 0) { - sprite->pos2.x += var2 >> 4; - if (sprite->pos2.x > 0) - sprite->pos2.x = 0; + sprite->x2 += var2 >> 4; + if (sprite->x2 > 0) + sprite->x2 = 0; } else { - sprite->pos2.x -= var2 >> 4; - if (sprite->pos2.x < 0) - sprite->pos2.x = 0; + sprite->x2 -= var2 >> 4; + if (sprite->x2 < 0) + sprite->x2 = 0; } - if (sprite->pos2.x == 0) + if (sprite->x2 == 0) { pan = SOUND_PAN_TARGET; if (var1 != 0) @@ -1867,11 +1867,11 @@ static void sub_8074158(struct Sprite *sprite) var2 += 56; sprite->data[3] = var2 & 0xFFF0; if (var1 != 0) - sprite->pos2.x += var2 >> 4; + sprite->x2 += var2 >> 4; else - sprite->pos2.x -= var2 >> 4; - if (sprite->pos2.x + sprite->pos1.x > 248 - || sprite->pos2.x + sprite->pos1.x < -8) + sprite->x2 -= var2 >> 4; + if (sprite->x2 + sprite->x > 248 + || sprite->x2 + sprite->x < -8) { sprite->invisible = TRUE; sprite->callback = SpriteCallbackDummy; @@ -1882,8 +1882,8 @@ static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite) { u8 barSpriteId = sprite->data[0]; - sprite->pos2.x = gSprites[barSpriteId].pos2.x; - sprite->pos2.y = gSprites[barSpriteId].pos2.y; + sprite->x2 = gSprites[barSpriteId].x2; + sprite->y2 = gSprites[barSpriteId].y2; } static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) diff --git a/src/battle_main.c b/src/battle_main.c index 977bcbd9c1b9..37ab6109c65e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -2082,9 +2082,9 @@ void SpriteCB_VsLetterDummy(struct Sprite *sprite) static void SpriteCB_VsLetter(struct Sprite *sprite) { if (sprite->data[0] != 0) - sprite->pos1.x = sprite->data[1] + ((sprite->data[2] & 0xFF00) >> 8); + sprite->x = sprite->data[1] + ((sprite->data[2] & 0xFF00) >> 8); else - sprite->pos1.x = sprite->data[1] - ((sprite->data[2] & 0xFF00) >> 8); + sprite->x = sprite->data[1] - ((sprite->data[2] & 0xFF00) >> 8); sprite->data[2] += 0x180; @@ -2618,8 +2618,8 @@ static void SpriteCb_MoveWildMonToRight(struct Sprite *sprite) { if ((gIntroSlideFlags & 1) == 0) { - sprite->pos2.x += 2; - if (sprite->pos2.x == 0) + sprite->x2 += 2; + if (sprite->x2 == 0) { sprite->callback = SpriteCb_WildMonShowHealthbox; } @@ -2730,7 +2730,7 @@ static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite) if (--sprite->data[4] == 0) { sprite->data[4] = 2; - sprite->pos2.y += 8; // Move the sprite down. + sprite->y2 += 8; // Move the sprite down. if (--sprite->data[3] < 0) { FreeSpriteOamMatrix(sprite); @@ -2795,8 +2795,8 @@ static void SpriteCB_BattleSpriteSlideLeft(struct Sprite *sprite) { if (!(gIntroSlideFlags & 1)) { - sprite->pos2.x -= 2; - if (sprite->pos2.x == 0) + sprite->x2 -= 2; + if (sprite->x2 == 0) { sprite->callback = SpriteCallbackDummy_3; sprite->data[1] = 0; @@ -2821,8 +2821,8 @@ void SpriteCB_FaintSlideAnim(struct Sprite *sprite) { if (!(gIntroSlideFlags & 1)) { - sprite->pos2.x += sprite->sSpeedX; - sprite->pos2.y += sprite->sSpeedY; + sprite->x2 += sprite->sSpeedX; + sprite->y2 += sprite->sSpeedY; } } @@ -2872,8 +2872,8 @@ void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude) gSprites[invisibleSpriteId].sAmplitude = amplitude; gSprites[invisibleSpriteId].sBouncerSpriteId = bouncerSpriteId; gSprites[invisibleSpriteId].sWhich = which; - gSprites[bouncerSpriteId].pos2.x = 0; - gSprites[bouncerSpriteId].pos2.y = 0; + gSprites[bouncerSpriteId].x2 = 0; + gSprites[bouncerSpriteId].y2 = 0; } void EndBounceEffect(u8 battler, u8 which) @@ -2899,8 +2899,8 @@ void EndBounceEffect(u8 battler, u8 which) gBattleSpritesDataPtr->healthBoxesData[battler].battlerIsBouncing = 0; } - gSprites[bouncerSpriteId].pos2.x = 0; - gSprites[bouncerSpriteId].pos2.y = 0; + gSprites[bouncerSpriteId].x2 = 0; + gSprites[bouncerSpriteId].y2 = 0; } static void SpriteCB_BounceEffect(struct Sprite *sprite) @@ -2913,7 +2913,7 @@ static void SpriteCB_BounceEffect(struct Sprite *sprite) else index = sprite->sSinIndex; - gSprites[bouncerSpriteId].pos2.y = Sin(index, sprite->sAmplitude) + sprite->sAmplitude; + gSprites[bouncerSpriteId].y2 = Sin(index, sprite->sAmplitude) + sprite->sAmplitude; sprite->sSinIndex = (sprite->sSinIndex + sprite->sDelta) & 0xFF; } diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 0b13512ec734..face0c188681 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -1582,8 +1582,8 @@ static void ShowItemIcon(u16 itemId, bool8 isAlt) if (itemSpriteId != MAX_SPRITES) { *spriteId = itemSpriteId; - gSprites[itemSpriteId].pos2.x = 24; - gSprites[itemSpriteId].pos2.y = 88; + gSprites[itemSpriteId].x2 = 24; + gSprites[itemSpriteId].y2 = 88; } } } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index d927ffb76ecf..cea30bb21750 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6118,9 +6118,9 @@ static void PutMonIconOnLvlUpBox(void) static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite) { - sprite->pos2.x = sprite->sSavedLvlUpBoxXPosition - gBattle_BG2_X; + sprite->x2 = sprite->sSavedLvlUpBoxXPosition - gBattle_BG2_X; - if (sprite->pos2.x != 0) + if (sprite->x2 != 0) { sprite->sDestroy = TRUE; } diff --git a/src/battle_transition.c b/src/battle_transition.c index 461c45e7ddbb..4d446b3df138 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -1692,10 +1692,10 @@ static void sub_814713C(struct Sprite *sprite) } else { - if (sprite->pos1.x >= 0 && sprite->pos1.x <= DISPLAY_WIDTH) + if (sprite->x >= 0 && sprite->x <= DISPLAY_WIDTH) { - s16 posX = sprite->pos1.x >> 3; - s16 posY = sprite->pos1.y >> 3; + s16 posX = sprite->x >> 3; + s16 posY = sprite->y >> 3; if (posX != sprite->data[2]) { @@ -1712,8 +1712,8 @@ static void sub_814713C(struct Sprite *sprite) SOME_VRAM_STORE(ptr, posY + 1, posX, 0xF001); } } - sprite->pos1.x += arr0[sprite->data[0]]; - if (sprite->pos1.x < -15 || sprite->pos1.x > 255) + sprite->x += arr0[sprite->data[0]]; + if (sprite->x < -15 || sprite->x > 255) FieldEffectStop(sprite, FLDEFF_POKEBALL); } } @@ -2438,10 +2438,10 @@ static bool8 TrainerPicCb_SetSlideOffsets(struct Sprite *sprite) // fast slide to around middle screen static bool8 TrainerPicCb_Slide1(struct Sprite *sprite) { - sprite->pos1.x += sprite->sOffsetX; - if (sprite->sSlideTableId && sprite->pos1.x < 133) + sprite->x += sprite->sOffsetX; + if (sprite->sSlideTableId && sprite->x < 133) sprite->sState++; - else if (!sprite->sSlideTableId && sprite->pos1.x > 103) + else if (!sprite->sSlideTableId && sprite->x > 103) sprite->sState++; return FALSE; } @@ -2450,7 +2450,7 @@ static bool8 TrainerPicCb_Slide1(struct Sprite *sprite) static bool8 TrainerPicCb_Slide2(struct Sprite *sprite) { sprite->sOffsetX += sprite->sOffsetX2; - sprite->pos1.x += sprite->sOffsetX; + sprite->x += sprite->sOffsetX; if (sprite->sOffsetX == 0) { sprite->sState++; @@ -2464,8 +2464,8 @@ static bool8 TrainerPicCb_Slide2(struct Sprite *sprite) static bool8 TrainerPicCb_Slide3(struct Sprite *sprite) { sprite->sOffsetX += sprite->sOffsetX2; - sprite->pos1.x += sprite->sOffsetX; - if (sprite->pos1.x < -31 || sprite->pos1.x > 271) + sprite->x += sprite->sOffsetX; + if (sprite->x < -31 || sprite->x > 271) sprite->sState++; return FALSE; } @@ -3283,8 +3283,8 @@ static bool8 Phase2_WhiteFade_Func2(struct Task *task) for (i = 0, posY = 0; i < 8; i++, posY += 0x14) { sprite = &gSprites[CreateInvisibleSprite(sub_8149864)]; - sprite->pos1.x = 0xF0; - sprite->pos1.y = posY; + sprite->x = 0xF0; + sprite->y = posY; sprite->data[5] = arr1[i]; } sprite->data[6]++; @@ -3373,21 +3373,21 @@ static void sub_8149864(struct Sprite *sprite) else { u16 i; - u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->pos1.y]; - u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->pos1.y + 160]; + u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->y]; + u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + 160]; for (i = 0; i < 20; i++) { ptr1[i] = sprite->data[0] >> 8; - ptr2[i] = (u8)(sprite->pos1.x); + ptr2[i] = (u8)(sprite->x); } - if (sprite->pos1.x == 0 && sprite->data[0] == 0x1000) + if (sprite->x == 0 && sprite->data[0] == 0x1000) sprite->data[1] = 1; - sprite->pos1.x -= 16; + sprite->x -= 16; sprite->data[0] += 0x80; - if (sprite->pos1.x < 0) - sprite->pos1.x = 0; + if (sprite->x < 0) + sprite->x = 0; if (sprite->data[0] > 0x1000) sprite->data[0] = 0x1000; diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c index cb3519c4e3c3..2d34c9f86af1 100644 --- a/src/battle_transition_frontier.c +++ b/src/battle_transition_frontier.c @@ -243,7 +243,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->pos1.x == data[0] && sprite->pos1.y == data[1]) + if (sprite->x == data[0] && sprite->y == data[1]) { sprite->callback = SpriteCallbackDummy; } @@ -251,7 +251,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite) { if (data[4] == data[6]) { - sprite->pos1.x += data[2]; + sprite->x += data[2]; data[4] = 0; } else @@ -261,7 +261,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite) if (data[5] == data[7]) { - sprite->pos1.y += data[3]; + sprite->y += data[3]; data[5] = 0; } else @@ -305,8 +305,8 @@ static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16 static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite) { - sprite->pos2.x = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 - sprite->pos2.y = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 + sprite->x2 = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 + sprite->y2 = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 sprite->data[2] = (sprite->data[2] + sprite->data[3]) % 360; diff --git a/src/berry_blender.c b/src/berry_blender.c index d47aa707ddf7..8e8d392db5ec 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1162,8 +1162,8 @@ static void SpriteCB_Berry(struct Sprite* sprite) else PlaySE(SE_BALL_TRAY_EXIT); } - sprite->pos1.x = sprite->sX; - sprite->pos1.y = sprite->sY; + sprite->x = sprite->sX; + sprite->y = sprite->sY; } static void SetBerrySpriteData(struct Sprite* sprite, s16 x, s16 y, s16 bounceSpeed, s16 xSpeed, s16 ySpeed) @@ -3163,8 +3163,8 @@ static void SpriteCB_Particle(struct Sprite* sprite) { sprite->data[2] += sprite->data[0]; sprite->data[3] += sprite->data[1]; - sprite->pos2.x = sprite->data[2] / 8; - sprite->pos2.y = sprite->data[3] / 8; + sprite->x2 = sprite->data[2] / 8; + sprite->y2 = sprite->data[3] / 8; if (sprite->animEnded) DestroySprite(sprite); @@ -3197,7 +3197,7 @@ static void CreateParticleSprites(void) static void SpriteCB_ScoreSymbol(struct Sprite* sprite) { sprite->data[0]++; - sprite->pos2.y = -(sprite->data[0] / 3); + sprite->y2 = -(sprite->data[0] / 3); if (sprite->animEnded) DestroySprite(sprite); @@ -3206,10 +3206,10 @@ static void SpriteCB_ScoreSymbol(struct Sprite* sprite) static void SpriteCB_ScoreSymbolBest(struct Sprite* sprite) { sprite->data[0]++; - sprite->pos2.y = -(sprite->data[0] * 2); + sprite->y2 = -(sprite->data[0] * 2); - if (sprite->pos2.y < -12) - sprite->pos2.y = -12; + if (sprite->y2 < -12) + sprite->y2 = -12; if (sprite->animEnded) DestroySprite(sprite); } @@ -3264,7 +3264,7 @@ static void SpriteCB_CountdownNumber(struct Sprite* sprite) break; } - sprite->pos2.y = sprite->sYPos; + sprite->y2 = sprite->sYPos; } #undef sState @@ -3300,7 +3300,7 @@ static void SpriteCB_Start(struct Sprite* sprite) break; } - sprite->pos2.y = sprite->data[1]; + sprite->y2 = sprite->data[1]; } static void TryUpdateProgressBar(u16 current, u16 limit) @@ -3445,8 +3445,8 @@ static bool8 UpdateBlenderLandScreenShake(void) static void SpriteCB_PlayerArrow(struct Sprite* sprite) { - sprite->pos2.x = -(sBerryBlender->bg_X); - sprite->pos2.y = -(sBerryBlender->bg_Y); + sprite->x2 = -(sBerryBlender->bg_X); + sprite->y2 = -(sBerryBlender->bg_Y); } static void TryUpdateBerryBlenderRecord(void) diff --git a/src/berry_crush.c b/src/berry_crush.c index abaad232e80e..5504d05d6e14 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1387,8 +1387,8 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam gfx->berrySprites[i] = &gSprites[spriteId]; gfx->berrySprites[i]->oam.priority = 3; gfx->berrySprites[i]->affineAnimPaused = TRUE; - gfx->berrySprites[i]->pos1.x = gfx->playerCoords[i]->berryXOffset + 120; - gfx->berrySprites[i]->pos1.y = -16; + gfx->berrySprites[i]->x = gfx->playerCoords[i]->berryXOffset + 120; + gfx->berrySprites[i]->y = -16; data = gfx->berrySprites[i]->data; speed = 512; sYSpeed = speed; @@ -1404,7 +1404,7 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam var2 = speed + 32; var2 = var2 / 2; var1 = MathUtil_Div16Shift(7, Q_8_8(63.5), var2); - sX = (u16)gfx->berrySprites[i]->pos1.x * 128; + sX = (u16)gfx->berrySprites[i]->x * 128; sXSpeed = MathUtil_Div16Shift(7, distance, var1); var1 = MathUtil_Mul16Shift(7, var1, 85); sSinIdx = 0; @@ -1420,21 +1420,21 @@ static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite) s16 *data = sprite->data; sYSpeed += sYAccel; - sprite->pos2.y += sYSpeed >> 8; + sprite->y2 += sYSpeed >> 8; if (sBitfield & F_MOVE_HORIZ) { sprite->sX += sXSpeed; sSinIdx += sSinSpeed; - sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude); + sprite->x2 = Sin(sSinIdx >> 7, sAmplitude); if ((sBitfield & F_MOVE_HORIZ) && (sSinIdx >> 7) > 126) { - sprite->pos2.x = 0; + sprite->x2 = 0; sBitfield &= MASK_TARGET_Y; } } - sprite->pos1.x = sX >> 7; - if (sprite->pos1.y + sprite->pos2.y >= (sBitfield & MASK_TARGET_Y)) + sprite->x = sX >> 7; + if (sprite->y + sprite->y2 >= (sBitfield & MASK_TARGET_Y)) { sprite->callback = SpriteCallbackDummy; FreeSpriteOamMatrix(sprite); @@ -1490,8 +1490,8 @@ static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGam gfx->impactSprites[i]->invisible = FALSE; gfx->impactSprites[i]->animPaused = FALSE; - gfx->impactSprites[i]->pos2.x = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][0]; - gfx->impactSprites[i]->pos2.y = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][1]; + gfx->impactSprites[i]->x2 = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][0]; + gfx->impactSprites[i]->y2 = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][1]; } #undef flags @@ -1513,10 +1513,10 @@ static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGam if (gfx->sparkleSprites[i]->invisible) { gfx->sparkleSprites[i]->callback = SpriteCB_Sparkle_Init; - gfx->sparkleSprites[i]->pos1.x = sSparkleCoords[i][0] + 120; - gfx->sparkleSprites[i]->pos1.y = sSparkleCoords[i][1] + 136 - (yModifier * 4); - gfx->sparkleSprites[i]->pos2.x = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4)); - gfx->sparkleSprites[i]->pos2.y = sSparkleCoords[i][1]; + gfx->sparkleSprites[i]->x = sSparkleCoords[i][0] + 120; + gfx->sparkleSprites[i]->y = sSparkleCoords[i][1] + 136 - (yModifier * 4); + gfx->sparkleSprites[i]->x2 = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4)); + gfx->sparkleSprites[i]->y2 = sSparkleCoords[i][1]; if (linkState->bigSparkle) StartSpriteAnim(gfx->sparkleSprites[i], 1); else @@ -2071,8 +2071,8 @@ static void SpriteCB_Sparkle_End(struct Sprite *sprite) u8 i; for (i = 0; i < ARRAY_COUNT(sprite->data); i++) sprite->data[i] = 0; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->invisible = TRUE; sprite->animPaused = TRUE; sprite->callback = SpriteCallbackDummy; @@ -2097,20 +2097,20 @@ static void SpriteCB_Sparkle(struct Sprite *sprite) s16 *data = sprite->data; sYSpeed += sYAccel; - sprite->pos2.y += sYSpeed >> 8; + sprite->y2 += sYSpeed >> 8; if (sBitfield & F_MOVE_HORIZ) { sprite->sX += sXSpeed; sSinIdx += sSinSpeed; - sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude); + sprite->x2 = Sin(sSinIdx >> 7, sAmplitude); if (sBitfield & F_MOVE_HORIZ && sSinIdx >> 7 > 126) { - sprite->pos2.x = 0; + sprite->x2 = 0; sBitfield &= MASK_TARGET_Y; } } - sprite->pos1.x = sX >> 7; - if (sprite->pos1.y + sprite->pos2.y > (sBitfield & MASK_TARGET_Y)) + sprite->x = sX >> 7; + if (sprite->y + sprite->y2 > (sBitfield & MASK_TARGET_Y)) sprite->callback = SpriteCB_Sparkle_End; } @@ -2125,17 +2125,17 @@ static void SpriteCB_Sparkle_Init(struct Sprite *sprite) sYSpeed = var; sYAccel = 32; sBitfield = 168; // Setting bits in MASK_TARGET_Y - xMult = sprite->pos2.x * 128; - xDiv = MathUtil_Div16Shift(7, (168 - sprite->pos1.y) << 7, (var + 32) >> 1); - sprite->sX = sprite->pos1.x << 7; + xMult = sprite->x2 * 128; + xDiv = MathUtil_Div16Shift(7, (168 - sprite->y) << 7, (var + 32) >> 1); + sprite->sX = sprite->x << 7; sXSpeed = MathUtil_Div16Shift(7, xMult, xDiv); var = MathUtil_Mul16Shift(7, xDiv, 85); sSinIdx = zero; sSinSpeed = MathUtil_Div16Shift(7, Q_8_8(63.5), var); - sAmplitude = sprite->pos2.x / 4; + sAmplitude = sprite->x2 / 4; sBitfield |= F_MOVE_HORIZ; - sprite->pos2.y = zero; - sprite->pos2.x = zero; + sprite->y2 = zero; + sprite->x2 = zero; sprite->callback = SpriteCB_Sparkle; sprite->animPaused = FALSE; sprite->invisible = FALSE; diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index 27efb7e7a528..4632f6dc0472 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -674,9 +674,9 @@ static void Task_DisplayAnotherBerry(u8 taskId) else posY = data[0]; - gSprites[sBerryTag->berrySpriteId].pos2.y = posY; + gSprites[sBerryTag->berrySpriteId].y2 = posY; for (i = 0; i < FLAVOR_COUNT; i++) - gSprites[sBerryTag->flavorCircleIds[i]].pos2.y = posY; + gSprites[sBerryTag->flavorCircleIds[i]].y2 = posY; ChangeBgY(1, 0x1000, data[1]); ChangeBgY(2, 0x1000, data[1]); diff --git a/src/cable_car.c b/src/cable_car.c index 733d10436aaa..32d4325352f9 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -596,13 +596,13 @@ static void SpriteCB_CableCar(struct Sprite *sprite) { if (!GOING_DOWN) { - sprite->pos1.x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); - sprite->pos1.y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); } else { - sprite->pos1.x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); - sprite->pos1.y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); } } } @@ -617,20 +617,20 @@ static void SpriteCB_Player(struct Sprite *sprite) // Move along with cable car if (!GOING_DOWN) { - sprite->pos1.x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); - sprite->pos1.y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); } else { - sprite->pos1.x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); - sprite->pos1.y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer)); + sprite->y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer)); } // Bounce up and down switch (sprite->sState) { case 0: - sprite->pos2.y = 17; + sprite->y2 = 17; if (sprite->sTimer++ > 9) { sprite->sTimer = 0; @@ -638,7 +638,7 @@ static void SpriteCB_Player(struct Sprite *sprite) } break; default: - sprite->pos2.y = 16; + sprite->y2 = 16; if (sprite->sTimer++ > 9) { sprite->sTimer = 0; @@ -660,8 +660,8 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite) { if (sprite->sTimer == 0) { - sprite->pos1.x += 2 * sprite->centerToCornerVecX; - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->x += 2 * sprite->centerToCornerVecX; + sprite->y += 16 + sprite->centerToCornerVecY; } if (++sprite->sTimer >= sprite->sDelay) @@ -669,22 +669,22 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite) switch (sprite->sSameDir) { case FALSE: - sprite->pos1.x++; + sprite->x++; if ((sprite->sTimer % 4) == 0) - sprite->pos1.y++; + sprite->y++; break; case TRUE: // Hiker moves slower if travelling with the Cable Car if ((sprite->sTimer % 2) != 0) { - sprite->pos1.x++; - if ((sprite->pos1.x % 4) == 0) - sprite->pos1.y++; + sprite->x++; + if ((sprite->x % 4) == 0) + sprite->y++; } break; } - if (sprite->pos1.y > DISPLAY_HEIGHT) + if (sprite->y > DISPLAY_HEIGHT) DestroySprite(sprite); } } @@ -692,29 +692,29 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite) static void SpriteCB_HikerGoingDown(struct Sprite *sprite) { if (sprite->sTimer == 0) - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->y += 16 + sprite->centerToCornerVecY; if (++sprite->sTimer >= sprite->sDelay) { switch (sprite->sSameDir) { case FALSE: - sprite->pos1.x--; + sprite->x--; if ((sprite->sTimer % 4) == 0) - sprite->pos1.y--; + sprite->y--; break; case TRUE: // Hiker moves slower if travelling with the Cable Car if ((sprite->sTimer % 2) != 0) { - sprite->pos1.x--; - if ((sprite->pos1.x % 4) == 0) - sprite->pos1.y--; + sprite->x--; + if ((sprite->x % 4) == 0) + sprite->y--; } break; } - if (sprite->pos1.y < 80) + if (sprite->y < 80) DestroySprite(sprite); } } @@ -829,20 +829,20 @@ static void CreateCableCarSprites(void) if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; - gSprites[spriteId].pos2.x = 8; - gSprites[spriteId].pos2.y = 16; + gSprites[spriteId].x2 = 8; + gSprites[spriteId].y2 = 16; gSprites[spriteId].sXPos = 200; gSprites[spriteId].sYPos = 73; } // Create car sprite spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 176, 43, 0x67); - gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = 32; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32; gSprites[spriteId].sXPos = 176; gSprites[spriteId].sYPos = 43; // Create door sprite spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 200, 99, 0x65); - gSprites[spriteId].pos2.x = 8; - gSprites[spriteId].pos2.y = 4; + gSprites[spriteId].x2 = 8; + gSprites[spriteId].y2 = 4; gSprites[spriteId].sXPos = 200; gSprites[spriteId].sYPos = 99; // Init weather @@ -857,20 +857,20 @@ static void CreateCableCarSprites(void) if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; - gSprites[spriteId].pos2.x = 8; - gSprites[spriteId].pos2.y = 16; + gSprites[spriteId].x2 = 8; + gSprites[spriteId].y2 = 16; gSprites[spriteId].sXPos = 128; gSprites[spriteId].sYPos = 39; } // Create car sprite spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 104, 9, 0x67); - gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = 32; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32; gSprites[spriteId].sXPos = 104; gSprites[spriteId].sYPos = 9; // Create door sprite spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 128, 65, 0x65); - gSprites[spriteId].pos2.x = 8; - gSprites[spriteId].pos2.y = 4; + gSprites[spriteId].x2 = 8; + gSprites[spriteId].y2 = 4; gSprites[spriteId].sXPos = 128; gSprites[spriteId].sYPos = 65; // Init weather @@ -882,8 +882,8 @@ static void CreateCableCarSprites(void) for (i = 0; i < 9; i++) { spriteId = CreateSprite(&sSpriteTemplate_Cable, 16 * i + 96, 8 * i - 8, 0x68); - gSprites[spriteId].pos2.x = 8; - gSprites[spriteId].pos2.y = 8; + gSprites[spriteId].x2 = 8; + gSprites[spriteId].y2 = 8; } // 1/64 chance for an NPC to appear hiking on the ground below the Cable Car @@ -894,8 +894,8 @@ static void CreateCableCarSprites(void) if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; - gSprites[spriteId].pos2.x = -gSprites[spriteId].centerToCornerVecX; - gSprites[spriteId].pos2.y = -gSprites[spriteId].centerToCornerVecY; + gSprites[spriteId].x2 = -gSprites[spriteId].centerToCornerVecX; + gSprites[spriteId].y2 = -gSprites[spriteId].centerToCornerVecY; // Randomly choose which direction the NPC is going if (!GOING_DOWN) @@ -905,7 +905,7 @@ static void CreateCableCarSprites(void) // Do walking west anim StartSpriteAnim(&gSprites[spriteId], 6); gSprites[spriteId].sSameDir = TRUE; - gSprites[spriteId].pos1.y += 2; + gSprites[spriteId].y += 2; } else { @@ -921,7 +921,7 @@ static void CreateCableCarSprites(void) // Do walking east anim StartSpriteAnim(&gSprites[spriteId], 7); gSprites[spriteId].sSameDir = TRUE; - gSprites[spriteId].pos1.y += 2; + gSprites[spriteId].y += 2; } else { diff --git a/src/contest.c b/src/contest.c index 84d00d8ee7b6..46fa0efedb0d 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1784,7 +1784,7 @@ static void Task_DoAppeals(u8 taskId) gContestMons[eContest.currentContestant].otId, gContestMons[eContest.currentContestant].personality, eContest.currentContestant); - gSprites[spriteId].pos2.x = 120; + gSprites[spriteId].x2 = 120; gSprites[spriteId].callback = SpriteCB_MonSlideIn; gTasks[taskId].tMonSpriteId = spriteId; gBattlerSpriteIds[gBattlerAttacker] = spriteId; @@ -2449,9 +2449,9 @@ static void Task_EndWaitForLink(u8 taskId) static void SpriteCB_MonSlideIn(struct Sprite *sprite) { - if (sprite->pos2.x != 0) + if (sprite->x2 != 0) { - sprite->pos2.x -= 2; + sprite->x2 -= 2; } else { @@ -2465,8 +2465,8 @@ static void SpriteCB_MonSlideIn(struct Sprite *sprite) static void SpriteCB_MonSlideOut(struct Sprite *sprite) { - sprite->pos2.x -= 6; - if (sprite->pos1.x + sprite->pos2.x < -32) + sprite->x2 -= 6; + if (sprite->x + sprite->x2 < -32) { sprite->callback = SpriteCallbackDummy; sprite->invisible = TRUE; @@ -3864,7 +3864,7 @@ static void UpdateHeartSlider(u8 contestant) gSprites[spriteId].invisible = FALSE; gSprites[spriteId].sContestant = contestant; gSprites[spriteId].sTargetX = slideTarget; - if (gSprites[spriteId].sTargetX > gSprites[spriteId].pos2.x) + if (gSprites[spriteId].sTargetX > gSprites[spriteId].x2) gSprites[spriteId].sMoveX = 1; else gSprites[spriteId].sMoveX = -1; @@ -3896,14 +3896,14 @@ static bool8 SlidersDoneUpdating(void) static void SpriteCB_UpdateHeartSlider(struct Sprite *sprite) { - if (sprite->pos2.x == sprite->sTargetX) + if (sprite->x2 == sprite->sTargetX) { eContestGfxState[sprite->sContestant].sliderUpdating = FALSE; sprite->callback = SpriteCallbackDummy; } else { - sprite->pos2.x += sprite->sMoveX; + sprite->x2 += sprite->sMoveX; } } @@ -3917,7 +3917,7 @@ static void UpdateSliderHeartSpriteYPositions(void) s32 i; for (i = 0; i < CONTESTANT_COUNT; i++) - gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.y = sSliderHeartYPositions[gContestantTurnOrder[i]]; + gSprites[eContestGfxState[i].sliderHeartSpriteId].y = sSliderHeartYPositions[gContestantTurnOrder[i]]; } // Used to hide (or subsequently reshow) the bottom two slider hearts that get hidden by text windows by moving them offscreen @@ -3931,9 +3931,9 @@ static void SetBottomSliderHeartsInvisibility(bool8 invisible) if (gContestantTurnOrder[i] > 1) { if (!invisible) - gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.x = 180; + gSprites[eContestGfxState[i].sliderHeartSpriteId].x = 180; else - gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.x = 256; + gSprites[eContestGfxState[i].sliderHeartSpriteId].x = 256; } } } @@ -4789,7 +4789,7 @@ static void Task_ApplauseOverflowAnimation(u8 taskId) static void SlideApplauseMeterIn(void) { CreateTask(Task_SlideApplauseMeterIn, 10); - gSprites[eContest.applauseMeterSpriteId].pos2.x = -70; + gSprites[eContest.applauseMeterSpriteId].x2 = -70; gSprites[eContest.applauseMeterSpriteId].invisible = FALSE; eContest.applauseMeterIsMoving = TRUE; } @@ -4799,11 +4799,11 @@ static void Task_SlideApplauseMeterIn(u8 taskId) struct Sprite *sprite = &gSprites[eContest.applauseMeterSpriteId]; gTasks[taskId].data[10] += 1664; - sprite->pos2.x += gTasks[taskId].data[10] >> 8; + sprite->x2 += gTasks[taskId].data[10] >> 8; gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF; - if (sprite->pos2.x > 0) - sprite->pos2.x = 0; - if (sprite->pos2.x == 0) + if (sprite->x2 > 0) + sprite->x2 = 0; + if (sprite->x2 == 0) { eContest.applauseMeterIsMoving = FALSE; DestroyTask(taskId); @@ -4819,7 +4819,7 @@ static void SlideApplauseMeterOut(void) else { CreateTask(Task_SlideApplauseMeterOut, 10); - gSprites[eContest.applauseMeterSpriteId].pos2.x = 0; + gSprites[eContest.applauseMeterSpriteId].x2 = 0; eContest.applauseMeterIsMoving = TRUE; } } @@ -4829,11 +4829,11 @@ static void Task_SlideApplauseMeterOut(u8 taskId) struct Sprite *sprite = &gSprites[eContest.applauseMeterSpriteId]; gTasks[taskId].data[10] += 1664; - sprite->pos2.x -= gTasks[taskId].data[10] >> 8; + sprite->x2 -= gTasks[taskId].data[10] >> 8; gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF; - if (sprite->pos2.x < -70) - sprite->pos2.x = -70; - if (sprite->pos2.x == -70) + if (sprite->x2 < -70) + sprite->x2 = -70; + if (sprite->x2 == -70) { sprite->invisible = TRUE; eContest.applauseMeterIsMoving = FALSE; @@ -4878,7 +4878,7 @@ static void Task_ShowAndUpdateApplauseMeter(u8 taskId) // Unused. static void HideApplauseMeterNoAnim(void) { - gSprites[eContest.applauseMeterSpriteId].pos2.x = 0; + gSprites[eContest.applauseMeterSpriteId].x2 = 0; gSprites[eContest.applauseMeterSpriteId].invisible = FALSE; } @@ -5017,7 +5017,7 @@ static void ShowHideNextTurnGfx(bool8 show) if (eContestantStatus[i].turnOrderMod != 0 && show) { CpuCopy32(GetTurnOrderNumberGfx(i), (void *)(OBJ_VRAM0 + (gSprites[eContestGfxState[i].nextTurnSpriteId].oam.tileNum + 6) * 32), 32); - gSprites[eContestGfxState[i].nextTurnSpriteId].pos1.y = sNextTurnSpriteYPositions[gContestantTurnOrder[i]]; + gSprites[eContestGfxState[i].nextTurnSpriteId].y = sNextTurnSpriteYPositions[gContestantTurnOrder[i]]; gSprites[eContestGfxState[i].nextTurnSpriteId].invisible = FALSE; } else @@ -5379,10 +5379,10 @@ static void SetBattleTargetSpritePosition(void) { struct Sprite *sprite = &gSprites[gBattlerSpriteIds[B_POSITION_OPPONENT_RIGHT]]; - sprite->pos2.x = 0; - sprite->pos2.y = 0; - sprite->pos1.x = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_X); - sprite->pos1.y = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_Y); + sprite->x2 = 0; + sprite->y2 = 0; + sprite->x = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_Y); sprite->invisible = TRUE; } diff --git a/src/contest_util.c b/src/contest_util.c index 88ab4a7d2208..aae05d531d17 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1269,10 +1269,10 @@ static void CreateResultsTextWindowSprites(void) static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrement) { struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId]; - sprite->pos1.x = TEXT_BOX_X; - sprite->pos1.y = y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x = TEXT_BOX_X; + sprite->y = y; + sprite->x2 = 0; + sprite->y2 = 0; sprite->sTargetX = x + 32; sprite->sSlideOutTimer = slideOutTimer; sprite->sSlideIncrement = slideIncrement; @@ -1284,10 +1284,10 @@ static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrem static void StartTextBoxSlideOut(u16 slideIncrement) { struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId]; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->sSlideIncrement = slideIncrement; sprite->sDistance = 0; sprite->callback = SpriteCB_TextBoxSlideOut; @@ -1296,10 +1296,10 @@ static void StartTextBoxSlideOut(u16 slideIncrement) static void EndTextBoxSlideOut(struct Sprite *sprite) { - sprite->pos1.x = TEXT_BOX_X; - sprite->pos1.y = TEXT_BOX_Y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x = TEXT_BOX_X; + sprite->y = TEXT_BOX_Y; + sprite->y2 = 0; + sprite->x2 = 0; sprite->callback = SpriteCallbackDummy; sContestResults->data->slidingTextBoxState = SLIDING_TEXT_OFFSCREEN; } @@ -1309,21 +1309,21 @@ static void SpriteCB_TextBoxSlideIn(struct Sprite *sprite) int i; s16 delta = sprite->sDistance + sprite->sSlideIncrement; - sprite->pos1.x -= delta >> 8; + sprite->x -= delta >> 8; sprite->sDistance += sprite->sSlideIncrement; sprite->sDistance &= 0xFF; // Prevent overshooting target - if (sprite->pos1.x < sprite->sTargetX) - sprite->pos1.x = sprite->sTargetX; + if (sprite->x < sprite->sTargetX) + sprite->x = sprite->sTargetX; for (i = 0; i < 3; i++) { struct Sprite *sprite2 = &gSprites[sprite->data[i]]; - sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64; + sprite2->x = sprite->x + sprite->x2 + (i + 1) * 64; } - if (sprite->pos1.x == sprite->sTargetX) + if (sprite->x == sprite->sTargetX) sprite->callback = SpriteCB_EndTextBoxSlideIn; } @@ -1343,16 +1343,16 @@ static void SpriteCB_TextBoxSlideOut(struct Sprite *sprite) s16 delta; delta = sprite->sDistance + sprite->sSlideIncrement; - sprite->pos1.x -= delta >> 8; + sprite->x -= delta >> 8; sprite->sDistance += sprite->sSlideIncrement; sprite->sDistance &= 0xFF; for (i = 0; i < 3; i++) { struct Sprite *sprite2 = &gSprites[sprite->data[i]]; - sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64; + sprite2->x = sprite->x + sprite->x2 + (i + 1) * 64; } - if (sprite->pos1.x + sprite->pos2.x < -224) + if (sprite->x + sprite->x2 < -224) EndTextBoxSlideOut(sprite); } @@ -1364,18 +1364,18 @@ static void ShowLinkResultsTextBox(const u8 *text) x = DrawResultsTextWindow(text, sContestResults->data->linkTextBoxSpriteId); sprite = &gSprites[sContestResults->data->linkTextBoxSpriteId]; - sprite->pos1.x = x + 32; - sprite->pos1.y = 80; + sprite->x = x + 32; + sprite->y = 80; sprite->invisible = FALSE; for (i = 0; i < 3; i++) { - gSprites[sprite->data[i]].pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64; - gSprites[sprite->data[i]].pos1.y = sprite->pos1.y; + gSprites[sprite->data[i]].x = sprite->x + sprite->x2 + (i + 1) * 64; + gSprites[sprite->data[i]].y = sprite->y; gSprites[sprite->data[i]].invisible = FALSE; } gBattle_WIN0H = WIN_RANGE(0, DISPLAY_WIDTH); - gBattle_WIN0V = WIN_RANGE(sprite->pos1.y - 16, sprite->pos1.y + 16); + gBattle_WIN0V = WIN_RANGE(sprite->y - 16, sprite->y + 16); SetGpuReg(REG_OFFSET_WININ, WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR | WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR); } @@ -1585,13 +1585,13 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite) else { s16 delta = sprite->data[1] + 0x600; - sprite->pos1.x -= delta >> 8; + sprite->x -= delta >> 8; sprite->data[1] += 0x600; sprite->data[1] &= 0xFF; - if (sprite->pos1.x < DISPLAY_WIDTH / 2) - sprite->pos1.x = DISPLAY_WIDTH / 2; + if (sprite->x < DISPLAY_WIDTH / 2) + sprite->x = DISPLAY_WIDTH / 2; - if (sprite->pos1.x == DISPLAY_WIDTH / 2) + if (sprite->x == DISPLAY_WIDTH / 2) { sprite->callback = SpriteCallbackDummy; sprite->data[1] = 0; @@ -1603,10 +1603,10 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite) static void SpriteCB_WinnerMonSlideOut(struct Sprite *sprite) { s16 delta = sprite->data[1] + 0x600; - sprite->pos1.x -= delta >> 8; + sprite->x -= delta >> 8; sprite->data[1] += + 0x600; sprite->data[1] &= 0xFF; - if (sprite->pos1.x < -32) + if (sprite->x < -32) { sprite->callback = SpriteCallbackDummy; sprite->invisible = TRUE; @@ -1639,17 +1639,17 @@ static void SpriteCB_Confetti(struct Sprite *sprite) s16 delta; sprite->data[3] += sprite->data[0]; - sprite->pos2.x = Sin(sprite->data[3] >> 8, sprite->data[1]); + sprite->x2 = Sin(sprite->data[3] >> 8, sprite->data[1]); delta = sprite->data[4] + sprite->data[2]; - sprite->pos1.x += delta >> 8; + sprite->x += delta >> 8; sprite->data[4] += sprite->data[2]; sprite->data[4] &= 0xff; - sprite->pos1.y++; + sprite->y++; if (sContestResults->data->destroyConfetti) sprite->invisible = TRUE; - if (sprite->pos1.x > DISPLAY_WIDTH + 8 || sprite->pos1.y > 116) + if (sprite->x > DISPLAY_WIDTH + 8 || sprite->y > 116) { DestroySprite(sprite); sContestResults->data->confettiCount--; diff --git a/src/credits.c b/src/credits.c index b32949754bba..3ea51f743e8b 100644 --- a/src/credits.c +++ b/src/credits.c @@ -1103,10 +1103,10 @@ static void SetBikeScene(u8 scene, u8 taskId) case SCENE_OCEAN_MORNING: gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = DISPLAY_WIDTH + 32; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].y = 46; gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); @@ -1114,10 +1114,10 @@ static void SetBikeScene(u8 scene, u8 taskId) case SCENE_OCEAN_SUNSET: gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].y = 46; gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8); @@ -1125,10 +1125,10 @@ static void SetBikeScene(u8 scene, u8 taskId) case SCENE_FOREST_RIVAL_ARRIVE: gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32; + gSprites[gTasks[taskId].tPlayerSpriteId].y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].y = 46; gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); @@ -1136,10 +1136,10 @@ static void SetBikeScene(u8 scene, u8 taskId) case SCENE_FOREST_CATCH_RIVAL: gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = -32; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].x = 120; + gSprites[gTasks[taskId].tRivalSpriteId].x = -32; + gSprites[gTasks[taskId].tPlayerSpriteId].y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].y = 46; gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8); @@ -1147,10 +1147,10 @@ static void SetBikeScene(u8 scene, u8 taskId) case SCENE_CITY_NIGHT: gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE; gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 88; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = 152; - gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46; - gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46; + gSprites[gTasks[taskId].tPlayerSpriteId].x = 88; + gSprites[gTasks[taskId].tRivalSpriteId].x = 152; + gSprites[gTasks[taskId].tPlayerSpriteId].y = 46; + gSprites[gTasks[taskId].tRivalSpriteId].y = 46; gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0; gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0; gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8); @@ -1359,8 +1359,8 @@ static void SpriteCB_Player(struct Sprite *sprite) break; case 1: StartSpriteAnimIfDifferent(sprite, 1); - if (sprite->pos1.x > -32) - sprite->pos1.x--; + if (sprite->x > -32) + sprite->x--; break; case 2: StartSpriteAnimIfDifferent(sprite, 2); @@ -1370,13 +1370,13 @@ static void SpriteCB_Player(struct Sprite *sprite) break; case 4: StartSpriteAnimIfDifferent(sprite, 0); - if (sprite->pos1.x > 120) - sprite->pos1.x--; + if (sprite->x > 120) + sprite->x--; break; case 5: StartSpriteAnimIfDifferent(sprite, 0); - if (sprite->pos1.x > -32) - sprite->pos1.x--; + if (sprite->x > -32) + sprite->x--; break; } } @@ -1392,28 +1392,28 @@ static void SpriteCB_Rival(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->pos2.y = 0; + sprite->y2 = 0; StartSpriteAnimIfDifferent(sprite, 0); break; case 1: - if (sprite->pos1.x > 200) + if (sprite->x > 200) StartSpriteAnimIfDifferent(sprite, 1); else StartSpriteAnimIfDifferent(sprite, 2); - if (sprite->pos1.x > -32) - sprite->pos1.x -= 2; - sprite->pos2.y = -gIntroCredits_MovingSceneryVOffset; + if (sprite->x > -32) + sprite->x -= 2; + sprite->y2 = -gIntroCredits_MovingSceneryVOffset; break; case 2: sprite->data[7]++; StartSpriteAnimIfDifferent(sprite, 0); if ((sprite->data[7] & 3) == 0) - sprite->pos1.x++; + sprite->x++; break; case 3: StartSpriteAnimIfDifferent(sprite, 0); - if (sprite->pos1.x > -32) - sprite->pos1.x--; + if (sprite->x > -32) + sprite->x--; break; } } @@ -1455,15 +1455,15 @@ static void SpriteCB_CreditsMon(struct Sprite *sprite) { case POS_LEFT + 1: if ((sprite->data[7] & 3) == 0) - sprite->pos1.y++; - sprite->pos1.x -= 2; + sprite->y++; + sprite->x -= 2; break; case POS_CENTER + 1: break; case POS_RIGHT + 1: if ((sprite->data[7] & 3) == 0) - sprite->pos1.y++; - sprite->pos1.x += 2; + sprite->y++; + sprite->x += 2; break; } break; @@ -1522,7 +1522,7 @@ static u8 CreateCreditsMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position) gSprites[monSpriteId].callback = SpriteCB_CreditsMon; gSprites[monSpriteId].sSpriteId = monSpriteId; - bgSpriteId = CreateSprite(&sSpriteTemplate_CreditsMonBg, gSprites[monSpriteId].pos1.x, gSprites[monSpriteId].pos1.y, 1); + bgSpriteId = CreateSprite(&sSpriteTemplate_CreditsMonBg, gSprites[monSpriteId].x, gSprites[monSpriteId].y, 1); gSprites[bgSpriteId].sMonSpriteId = monSpriteId; StartSpriteAnimIfDifferent(&gSprites[bgSpriteId], position); @@ -1544,8 +1544,8 @@ static void SpriteCB_CreditsMonBg(struct Sprite *sprite) sprite->oam.objMode = gSprites[sprite->sMonSpriteId].oam.objMode; sprite->oam.affineMode = gSprites[sprite->sMonSpriteId].oam.affineMode; sprite->oam.matrixNum = gSprites[sprite->sMonSpriteId].oam.matrixNum; - sprite->pos1.x = gSprites[sprite->sMonSpriteId].pos1.x; - sprite->pos1.y = gSprites[sprite->sMonSpriteId].pos1.y; + sprite->x = gSprites[sprite->sMonSpriteId].x; + sprite->y = gSprites[sprite->sMonSpriteId].y; } static void DeterminePokemonToShow(void) diff --git a/src/decoration.c b/src/decoration.c index 6b6cf21e88db..cbdd99234067 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1382,8 +1382,8 @@ static void ConfigureCameraObjectForPlacingDecoration(struct PlaceDecorationGrap gFieldCamera.spriteId = gpu_pal_decompress_alloc_tag_and_upload(data, decor); gSprites[gFieldCamera.spriteId].oam.priority = 1; gSprites[gFieldCamera.spriteId].callback = InitializePuttingAwayCursorSprite; - gSprites[gFieldCamera.spriteId].pos1.x = sDecorationMovementInfo[data->decoration->shape].cameraX; - gSprites[gFieldCamera.spriteId].pos1.y = sDecorationMovementInfo[data->decoration->shape].cameraY; + gSprites[gFieldCamera.spriteId].x = sDecorationMovementInfo[data->decoration->shape].cameraX; + gSprites[gFieldCamera.spriteId].y = sDecorationMovementInfo[data->decoration->shape].cameraY; } static void SetUpPlacingDecorationPlayerAvatar(u8 taskId, struct PlaceDecorationGraphicsDataBuffer *data) @@ -1650,7 +1650,7 @@ static void PlaceDecoration(u8 taskId) ScriptContext1_SetupScript(SecretBase_EventScript_SetDecoration); } - gSprites[sDecor_CameraSpriteObjectIdx1].pos1.y += 2; + gSprites[sDecor_CameraSpriteObjectIdx1].y += 2; if (gMapHeader.regionMapSectionId == MAPSEC_SECRET_BASE) TryPutSecretBaseVisitOnAir(); @@ -2121,8 +2121,8 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1 if (spriteId == MAX_SPRITES) return MAX_SPRITES; - gSprites[spriteId].pos2.x = x + 4; - gSprites[spriteId].pos2.y = y + 4; + gSprites[spriteId].x2 = x + 4; + gSprites[spriteId].y2 = y + 4; } else if (gDecorIconTable[decor][0] == NULL) { @@ -2130,11 +2130,11 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1 if (spriteId == MAX_SPRITES) return MAX_SPRITES; - gSprites[spriteId].pos2.x = x; + gSprites[spriteId].x2 = x; if (decor == DECOR_SILVER_SHIELD || decor == DECOR_GOLD_SHIELD) - gSprites[spriteId].pos2.y = y - 4; + gSprites[spriteId].y2 = y - 4; else - gSprites[spriteId].pos2.y = y; + gSprites[spriteId].y2 = y; } else { @@ -2142,8 +2142,8 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1 if (spriteId == MAX_SPRITES) return MAX_SPRITES; - gSprites[spriteId].pos2.x = x + 4; - gSprites[spriteId].pos2.y = y + 4; + gSprites[spriteId].x2 = x + 4; + gSprites[spriteId].y2 = y + 4; } gSprites[spriteId].oam.priority = priority; @@ -2332,8 +2332,8 @@ static void ContinuePuttingAwayDecorations(u8 taskId) gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0; gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE; gSprites[sDecor_CameraSpriteObjectIdx1].callback = InitializeCameraSprite1; - gSprites[sDecor_CameraSpriteObjectIdx2].pos1.x = 136; - gSprites[sDecor_CameraSpriteObjectIdx2].pos1.y = 72; + gSprites[sDecor_CameraSpriteObjectIdx2].x = 136; + gSprites[sDecor_CameraSpriteObjectIdx2].y = 72; gTasks[taskId].tButton = 0; gTasks[taskId].func = Task_SelectLocation; } @@ -2449,8 +2449,8 @@ static void SetCameraSpritePosition(u8 x, u8 y) { gSprites[sDecor_CameraSpriteObjectIdx1].invisible = TRUE; gSprites[sDecor_CameraSpriteObjectIdx1].callback = SpriteCallbackDummy; - gSprites[sDecor_CameraSpriteObjectIdx2].pos1.x = x * 16 + 136; - gSprites[sDecor_CameraSpriteObjectIdx2].pos1.y = y * 16 + 72; + gSprites[sDecor_CameraSpriteObjectIdx2].x = x * 16 + 136; + gSprites[sDecor_CameraSpriteObjectIdx2].y = y * 16 + 72; } static bool8 DecorationIsUnderCursor(u8 taskId, u8 idx, struct DecorRearrangementDataBuffer *data) diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index d766da607d35..7a642968bb7c 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3913,11 +3913,11 @@ static u32 DoDodrioMissedAnim(struct Sprite *sprite) break; } - sprite->pos1.x += x; + sprite->x += x; if (++sprite->sTimer >= 40) { sprite->sState = 0; - sprite->pos1.x = GetDodrioXPos(0, GetNumPlayers()); + sprite->x = GetDodrioXPos(0, GetNumPlayers()); } } @@ -3995,8 +3995,8 @@ static void InitStatusBarPos(void) for (i = 0; i < NUM_STATUS_SQUARES; i++) { struct Sprite *sprite = &gSprites[sStatusBar->spriteIds[i]]; - sprite->pos1.x = (i * 16) + 48; - sprite->pos1.y = -8 - (i * 8); + sprite->x = (i * 16) + 48; + sprite->y = -8 - (i * 8); sStatusBar->entered[i] = FALSE; } } @@ -4057,11 +4057,11 @@ static bool32 DoStatusBarIntro(void) { struct Sprite *sprite = &gSprites[sStatusBar->spriteIds[i]]; sStatusBar->yChange[i] = 2; - if (sStatusBar->entered[i] && sprite->pos1.y == 8) + if (sStatusBar->entered[i] && sprite->y == 8) continue; animActive = TRUE; - if (sprite->pos1.y == 8) + if (sprite->y == 8) { if (sStatusBar->entered[i]) continue; @@ -4072,7 +4072,7 @@ static bool32 DoStatusBarIntro(void) sStatusBar->yChange[i] = -16; PlaySE(SE_CLICK); } - sprite->pos1.y += sStatusBar->yChange[i]; + sprite->y += sStatusBar->yChange[i]; } if (animActive) @@ -4245,7 +4245,7 @@ static void SetBerryIconsInvisibility(bool8 invisible) static void SetBerryYPos(u8 id, u8 y) { - gSprites[*sBerrySpriteIds[id]].pos1.y = y * 8; + gSprites[*sBerrySpriteIds[id]].y = y * 8; } static void SetBerryAnim(u16 id, u8 animNum) @@ -4256,8 +4256,8 @@ static void SetBerryAnim(u16 id, u8 animNum) // Unused static void UnusedSetSpritePos(u8 spriteId) { - gSprites[spriteId].pos1.x = 20 * spriteId + 50; - gSprites[spriteId].pos1.y = 50; + gSprites[spriteId].x = 20 * spriteId + 50; + gSprites[spriteId].y = 50; } // Gamefreak made a mistake there and goes out of bounds for the data array as it holds 8 elements @@ -4279,7 +4279,7 @@ static void SpriteCB_Cloud(struct Sprite *sprite) { if (++sCloudSpriteIds[i][1] > moveDelays[i]) { - sprite->pos1.x--; + sprite->x--; sCloudSpriteIds[i][1] = 0; } } @@ -4332,8 +4332,8 @@ static void ResetCloudPos(void) { struct Sprite *sprite = &gSprites[*sCloudSpriteIds[i]]; sprite->sFrozen = TRUE; - sprite->pos1.x = sCloudStartCoords[i][0]; - sprite->pos1.y = sCloudStartCoords[i][1]; + sprite->x = sCloudStartCoords[i][0]; + sprite->y = sCloudStartCoords[i][1]; } } diff --git a/src/easy_chat.c b/src/easy_chat.c index 753c2df76780..ad583839d7c4 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -4635,17 +4635,17 @@ static void SpriteCB_Cursor(struct Sprite *sprite) if (++sprite->sDelayTimer > 2) { sprite->sDelayTimer = 0; - if (++sprite->pos2.x > 0) - sprite->pos2.x = -6; + if (++sprite->x2 > 0) + sprite->x2 = -6; } } } static void SetMainCursorPos(u8 x, u8 y) { - sScreenControl->mainCursorSprite->pos1.x = x; - sScreenControl->mainCursorSprite->pos1.y = y; - sScreenControl->mainCursorSprite->pos2.x = 0; + sScreenControl->mainCursorSprite->x = x; + sScreenControl->mainCursorSprite->y = y; + sScreenControl->mainCursorSprite->x2 = 0; sScreenControl->mainCursorSprite->sDelayTimer = 0; } @@ -4653,7 +4653,7 @@ static void StopMainCursorAnim(void) { sScreenControl->mainCursorSprite->sDelayTimer = 0; sScreenControl->mainCursorSprite->sAnimateCursor = FALSE; - sScreenControl->mainCursorSprite->pos2.x = 0; + sScreenControl->mainCursorSprite->x2 = 0; } static void StartMainCursorAnim(void) @@ -4665,11 +4665,11 @@ static void CreateRectangleCursorSprites(void) { u8 spriteId = CreateSprite(&sSpriteTemplate_RectangleCursor, 0, 0, 3); sScreenControl->rectangleCursorSpriteRight = &gSprites[spriteId]; - sScreenControl->rectangleCursorSpriteRight->pos2.x = 32; + sScreenControl->rectangleCursorSpriteRight->x2 = 32; spriteId = CreateSprite(&sSpriteTemplate_RectangleCursor, 0, 0, 3); sScreenControl->rectangleCursorSpriteLeft = &gSprites[spriteId]; - sScreenControl->rectangleCursorSpriteLeft->pos2.x = -32; + sScreenControl->rectangleCursorSpriteLeft->x2 = -32; sScreenControl->rectangleCursorSpriteRight->hFlip = TRUE; UpdateRectangleCursorPos(); @@ -4705,23 +4705,23 @@ static void SetRectangleCursorPos_GroupMode(s8 column, s8 row) { // In group name window StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_GROUP); - sScreenControl->rectangleCursorSpriteRight->pos1.x = column * 84 + 58; - sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 96; + sScreenControl->rectangleCursorSpriteRight->x = column * 84 + 58; + sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 96; StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_GROUP); - sScreenControl->rectangleCursorSpriteLeft->pos1.x = column * 84 + 58; - sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 96; + sScreenControl->rectangleCursorSpriteLeft->x = column * 84 + 58; + sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 96; } else { // In button window StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_BUTTON); - sScreenControl->rectangleCursorSpriteRight->pos1.x = 216; - sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 112; + sScreenControl->rectangleCursorSpriteRight->x = 216; + sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 112; StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_BUTTON); - sScreenControl->rectangleCursorSpriteLeft->pos1.x = 216; - sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 112; + sScreenControl->rectangleCursorSpriteLeft->x = 216; + sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 112; } } @@ -4748,23 +4748,23 @@ static void SetRectangleCursorPos_AlphabetMode(s8 column, s8 row) } StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, anim); - sScreenControl->rectangleCursorSpriteRight->pos1.x = x; - sScreenControl->rectangleCursorSpriteRight->pos1.y = y; + sScreenControl->rectangleCursorSpriteRight->x = x; + sScreenControl->rectangleCursorSpriteRight->y = y; StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, anim); - sScreenControl->rectangleCursorSpriteLeft->pos1.x = x; - sScreenControl->rectangleCursorSpriteLeft->pos1.y = y; + sScreenControl->rectangleCursorSpriteLeft->x = x; + sScreenControl->rectangleCursorSpriteLeft->y = y; } else { // In button window StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_BUTTON); - sScreenControl->rectangleCursorSpriteRight->pos1.x = 216; - sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 112; + sScreenControl->rectangleCursorSpriteRight->x = 216; + sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 112; StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_BUTTON); - sScreenControl->rectangleCursorSpriteLeft->pos1.x = 216; - sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 112; + sScreenControl->rectangleCursorSpriteLeft->x = 216; + sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 112; } } @@ -4784,8 +4784,8 @@ static void SpriteCB_WordSelectCursor(struct Sprite *sprite) if (++sprite->sDelayTimer > 2) { sprite->sDelayTimer = 0; - if (++sprite->pos2.x > 0) - sprite->pos2.x = -6; + if (++sprite->x2 > 0) + sprite->x2 = -6; } } @@ -4804,9 +4804,9 @@ static void SetWordSelectCursorPos(u8 x, u8 y) { if (sScreenControl->wordSelectCursorSprite) { - sScreenControl->wordSelectCursorSprite->pos1.x = x; - sScreenControl->wordSelectCursorSprite->pos1.y = y; - sScreenControl->wordSelectCursorSprite->pos2.x = 0; + sScreenControl->wordSelectCursorSprite->x = x; + sScreenControl->wordSelectCursorSprite->y = y; + sScreenControl->wordSelectCursorSprite->x2 = 0; sScreenControl->wordSelectCursorSprite->sDelayTimer = 0; } } @@ -4824,7 +4824,7 @@ static void CreateSideWindowSprites(void) { u8 spriteId = CreateSprite(&sSpriteTemplate_ButtonWindow, 208, 128, 6); sScreenControl->buttonWindowSprite = &gSprites[spriteId]; - sScreenControl->buttonWindowSprite->pos2.x = -64; + sScreenControl->buttonWindowSprite->x2 = -64; spriteId = CreateSprite(&sSpriteTemplate_ModeWindow, 208, 80, 5); sScreenControl->modeWindowSprite = &gSprites[spriteId]; @@ -4839,10 +4839,10 @@ static bool8 ShowSideWindow(void) return FALSE; case 0: // Slide button window on - sScreenControl->buttonWindowSprite->pos2.x += 8; - if (sScreenControl->buttonWindowSprite->pos2.x >= 0) + sScreenControl->buttonWindowSprite->x2 += 8; + if (sScreenControl->buttonWindowSprite->x2 >= 0) { - sScreenControl->buttonWindowSprite->pos2.x = 0; + sScreenControl->buttonWindowSprite->x2 = 0; // Set mode window anim if (!GetInAlphabetMode()) @@ -4881,8 +4881,8 @@ static bool8 DestroySideWindowSprites(void) sScreenControl->modeWindowState = 1; break; case 1: - sScreenControl->buttonWindowSprite->pos2.x -= 8; - if (sScreenControl->buttonWindowSprite->pos2.x <= -64) + sScreenControl->buttonWindowSprite->x2 -= 8; + if (sScreenControl->buttonWindowSprite->x2 <= -64) { DestroySprite(sScreenControl->modeWindowSprite); DestroySprite(sScreenControl->buttonWindowSprite); @@ -4947,14 +4947,14 @@ static void SetScrollIndicatorXPos(bool32 inWordSelect) if (!inWordSelect) { // Keyboard (only relevant for group mode, can't scroll in alphabet mode) - sScreenControl->scrollIndicatorUpSprite->pos1.x = 96; - sScreenControl->scrollIndicatorDownSprite->pos1.x = 96; + sScreenControl->scrollIndicatorUpSprite->x = 96; + sScreenControl->scrollIndicatorDownSprite->x = 96; } else { // Word select - sScreenControl->scrollIndicatorUpSprite->pos1.x = 120; - sScreenControl->scrollIndicatorDownSprite->pos1.x = 120; + sScreenControl->scrollIndicatorUpSprite->x = 120; + sScreenControl->scrollIndicatorDownSprite->x = 120; } } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 576e5c0d9ffc..4b668881a949 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -716,7 +716,7 @@ static void SpriteCB_Egg_0(struct Sprite* sprite) else { sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], 1); + sprite->x2 = Sin(sprite->data[1], 1); if (sprite->data[0] == 15) { PlaySE(SE_BALL); @@ -739,7 +739,7 @@ static void SpriteCB_Egg_1(struct Sprite* sprite) else { sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], 2); + sprite->x2 = Sin(sprite->data[1], 2); if (sprite->data[0] == 15) { PlaySE(SE_BALL); @@ -760,13 +760,13 @@ static void SpriteCB_Egg_2(struct Sprite* sprite) sprite->callback = SpriteCB_Egg_3; sprite->data[0] = 0; species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); - gSprites[sEggHatchData->pokeSpriteID].pos2.x = 0; - gSprites[sEggHatchData->pokeSpriteID].pos2.y = 0; + gSprites[sEggHatchData->pokeSpriteID].x2 = 0; + gSprites[sEggHatchData->pokeSpriteID].y2 = 0; } else { sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data[1], 2); + sprite->x2 = Sin(sprite->data[1], 2); if (sprite->data[0] == 15) { PlaySE(SE_BALL); @@ -819,7 +819,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite) if (sprite->data[0] == 8) BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, RGB_WHITEALPHA); if (sprite->data[0] <= 9) - gSprites[sEggHatchData->pokeSpriteID].pos1.y -= 1; + gSprites[sEggHatchData->pokeSpriteID].y -= 1; if (sprite->data[0] > 40) sprite->callback = SpriteCallbackDummy; sprite->data[0]++; @@ -830,12 +830,12 @@ static void SpriteCB_EggShard(struct Sprite* sprite) sprite->data[4] += sprite->data[1]; sprite->data[5] += sprite->data[2]; - sprite->pos2.x = sprite->data[4] / 256; - sprite->pos2.y = sprite->data[5] / 256; + sprite->x2 = sprite->data[4] / 256; + sprite->y2 = sprite->data[5] / 256; sprite->data[2] += sprite->data[3]; - if (sprite->pos1.y + sprite->pos2.y > sprite->pos1.y + 20 && sprite->data[2] > 0) + if (sprite->y + sprite->y2 > sprite->y + 20 && sprite->data[2] > 0) DestroySprite(sprite); } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 67f203dcdc4f..36f7f0a3efdf 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1415,11 +1415,11 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl } sprite = &gSprites[spriteId]; - GetMapCoordsFromSpritePos(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->x, &sprite->y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); - sprite->pos1.x += 8; - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->x += 8; + sprite->y += 16 + sprite->centerToCornerVecY; sprite->oam.paletteNum = paletteSlot; sprite->coordOffsetEnabled = TRUE; sprite->sObjEventId = objectEventId; @@ -1569,7 +1569,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di sprite = &gSprites[spriteId]; sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); - sprite->pos1.y += sprite->centerToCornerVecY; + sprite->y += sprite->centerToCornerVecY; sprite->oam.paletteNum = graphicsInfo->paletteSlot; if (sprite->oam.paletteNum >= 16) { @@ -1726,11 +1726,11 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) if (i != MAX_SPRITES) { sprite = &gSprites[i]; - GetMapCoordsFromSpritePos(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->x, &sprite->y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); - sprite->pos1.x += 8; - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->x += 8; + sprite->y += 16 + sprite->centerToCornerVecY; sprite->images = graphicsInfo->images; if (objectEvent->movementType == MOVEMENT_TYPE_PLAYER) { @@ -1803,11 +1803,11 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId) sprite->oam.paletteNum = paletteSlot; objectEvent->inanimate = graphicsInfo->inanimate; objectEvent->graphicsId = graphicsId; - SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); + SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->x, &sprite->y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); - sprite->pos1.x += 8; - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->x += 8; + sprite->y += 16 + sprite->centerToCornerVecY; if (objectEvent->trackedByCamera) { CameraObjectReset1(); @@ -1969,8 +1969,8 @@ void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) { sprite = &gSprites[gObjectEvents[objectEventId].spriteId]; - sprite->pos2.x = x; - sprite->pos2.y = y; + sprite->x2 = x; + sprite->y2 = y; } } @@ -2105,11 +2105,11 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y) sprite = &gSprites[objectEvent->spriteId]; graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); SetObjectEventCoords(objectEvent, x, y); - SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); + SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->x, &sprite->y); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); - sprite->pos1.x += 8; - sprite->pos1.y += 16 + sprite->centerToCornerVecY; + sprite->x += 8; + sprite->y += 16 + sprite->centerToCornerVecY; ResetObjectEventFldEffData(objectEvent); if (objectEvent->trackedByCamera) CameraObjectReset1(); @@ -2211,8 +2211,8 @@ static void SpriteCB_CameraObject(struct Sprite *sprite) static void CameraObject_0(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x; - sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y; + sprite->x = gSprites[sprite->sLinkedSpriteId].x; + sprite->y = gSprites[sprite->sLinkedSpriteId].y; sprite->invisible = TRUE; sprite->sState = 1; CameraObject_1(sprite); @@ -2220,19 +2220,19 @@ static void CameraObject_0(struct Sprite *sprite) static void CameraObject_1(struct Sprite *sprite) { - s16 x = gSprites[sprite->sLinkedSpriteId].pos1.x; - s16 y = gSprites[sprite->sLinkedSpriteId].pos1.y; + s16 x = gSprites[sprite->sLinkedSpriteId].x; + s16 y = gSprites[sprite->sLinkedSpriteId].y; - sprite->data[2] = x - sprite->pos1.x; - sprite->data[3] = y - sprite->pos1.y; - sprite->pos1.x = x; - sprite->pos1.y = y; + sprite->data[2] = x - sprite->x; + sprite->data[3] = y - sprite->y; + sprite->x = x; + sprite->y = y; } static void CameraObject_2(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x; - sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y; + sprite->x = gSprites[sprite->sLinkedSpriteId].x; + sprite->y = gSprites[sprite->sLinkedSpriteId].y; sprite->data[2] = 0; sprite->data[3] = 0; } @@ -2311,8 +2311,8 @@ u8 CopySprite(struct Sprite *sprite, s16 x, s16 y, u8 subpriority) if (!gSprites[i].inUse) { gSprites[i] = *sprite; - gSprites[i].pos1.x = x; - gSprites[i].pos1.y = y; + gSprites[i].x = x; + gSprites[i].y = y; gSprites[i].subpriority = subpriority; break; } @@ -2329,8 +2329,8 @@ u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority) if (!gSprites[i].inUse) { gSprites[i] = *sprite; - gSprites[i].pos1.x = x; - gSprites[i].pos1.y = y; + gSprites[i].x = x; + gSprites[i].y = y; gSprites[i].subpriority = subpriority; return i; } @@ -7361,14 +7361,14 @@ bool8 MovementAction_Levitate_Step0(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_StopLevitate_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId); - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->sActionFuncId = 1; return TRUE; } bool8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (sprite->pos2.y == 0) + if (sprite->y2 == 0) { DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId); sprite->sActionFuncId = 1; @@ -7423,13 +7423,13 @@ static void UpdateObjectEventOffscreen(struct ObjectEvent *objectEvent, struct S graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); if (sprite->coordOffsetEnabled) { - x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; - y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; + x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX; + y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY; } else { - x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; - y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; + x = sprite->x + sprite->x2 + sprite->centerToCornerVecX; + y = sprite->y + sprite->y2 + sprite->centerToCornerVecY; } x2 = graphicsInfo->width; x2 += x; @@ -7843,7 +7843,7 @@ void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent) void SetObjectSubpriorityByZCoord(u8 elevation, struct Sprite *sprite, u8 subpriority) { s32 tmp = sprite->centerToCornerVecY; - u32 tmpa = *(u16 *)&sprite->pos1.y; + u32 tmpa = *(u16 *)&sprite->y; u32 tmpb = *(u16 *)&gSpriteCoordOffsetY; s32 tmp2 = (tmpa - tmp) + tmpb; u16 tmp3 = (16 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2; @@ -8250,32 +8250,32 @@ void UnfreezeObjectEvents(void) static void Step1(struct Sprite *sprite, u8 dir) { - sprite->pos1.x += sDirectionToVectors[dir].x; - sprite->pos1.y += sDirectionToVectors[dir].y; + sprite->x += sDirectionToVectors[dir].x; + sprite->y += sDirectionToVectors[dir].y; } static void Step2(struct Sprite *sprite, u8 dir) { - sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x; - sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y; + sprite->x += 2 * (u16) sDirectionToVectors[dir].x; + sprite->y += 2 * (u16) sDirectionToVectors[dir].y; } static void Step3(struct Sprite *sprite, u8 dir) { - sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x + (u16) sDirectionToVectors[dir].x; - sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y + (u16) sDirectionToVectors[dir].y; + sprite->x += 2 * (u16) sDirectionToVectors[dir].x + (u16) sDirectionToVectors[dir].x; + sprite->y += 2 * (u16) sDirectionToVectors[dir].y + (u16) sDirectionToVectors[dir].y; } static void Step4(struct Sprite *sprite, u8 dir) { - sprite->pos1.x += 4 * (u16) sDirectionToVectors[dir].x; - sprite->pos1.y += 4 * (u16) sDirectionToVectors[dir].y; + sprite->x += 4 * (u16) sDirectionToVectors[dir].x; + sprite->y += 4 * (u16) sDirectionToVectors[dir].y; } static void Step8(struct Sprite *sprite, u8 dir) { - sprite->pos1.x += 8 * (u16) sDirectionToVectors[dir].x; - sprite->pos1.y += 8 * (u16) sDirectionToVectors[dir].y; + sprite->x += 8 * (u16) sDirectionToVectors[dir].x; + sprite->y += 8 * (u16) sDirectionToVectors[dir].y; } #define sTimer data[5] @@ -8445,20 +8445,20 @@ static bool8 AnimateSpriteInFigure8(struct Sprite *sprite) switch(sprite->data[7]) { case 0: - sprite->pos2.x += GetFigure8XOffset(sprite->data[6]); - sprite->pos2.y += GetFigure8YOffset(sprite->data[6]); + sprite->x2 += GetFigure8XOffset(sprite->data[6]); + sprite->y2 += GetFigure8YOffset(sprite->data[6]); break; case 1: - sprite->pos2.x -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); - sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); + sprite->x2 -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); + sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); break; case 2: - sprite->pos2.x -= GetFigure8XOffset(sprite->data[6]); - sprite->pos2.y += GetFigure8YOffset(sprite->data[6]); + sprite->x2 -= GetFigure8XOffset(sprite->data[6]); + sprite->y2 += GetFigure8YOffset(sprite->data[6]); break; case 3: - sprite->pos2.x += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); - sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); + sprite->x2 += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); + sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]); break; } if (++sprite->data[6] == FIGURE_8_LENGTH) @@ -8468,8 +8468,8 @@ static bool8 AnimateSpriteInFigure8(struct Sprite *sprite) } if (sprite->data[7] == 4) { - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->y2 = 0; + sprite->x2 = 0; finished = TRUE; } return finished; @@ -8521,7 +8521,7 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite) if (sprite->sSpeed) Step1(sprite, sprite->sDirection); - sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); + sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); sprite->sTimer++; @@ -8530,7 +8530,7 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite) if (sprite->sTimer >= speedToTime[sprite->sSpeed]) { - sprite->pos2.y = 0; + sprite->y2 = 0; result = JUMP_FINISHED; } @@ -8546,7 +8546,7 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) if (sprite->sSpeed && !(sprite->sTimer & 1)) Step1(sprite, sprite->sDirection); - sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); + sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); sprite->sTimer++; @@ -8555,7 +8555,7 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) if (sprite->sTimer >= speedToTime[sprite->sSpeed]) { - sprite->pos2.y = 0; + sprite->y2 = 0; result = JUMP_FINISHED; } @@ -8603,13 +8603,13 @@ void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible) if (sprite->coordOffsetEnabled) { - x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; - y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; + x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX; + y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY; } else { - x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; - y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; + x = sprite->x + sprite->x2 + sprite->centerToCornerVecX; + y = sprite->y + sprite->y2 + sprite->centerToCornerVecY; } x2 = x - (sprite->centerToCornerVecX >> 1); @@ -8735,13 +8735,13 @@ static void MoveUnionRoomObjectUp(struct Sprite *sprite) switch(sprite->sAnimState) { case 0: - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->sAnimState++; case 1: - sprite->pos2.y -= 8; - if (sprite->pos2.y == -DISPLAY_HEIGHT) + sprite->y2 -= 8; + if (sprite->y2 == -DISPLAY_HEIGHT) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->sInvisible = TRUE; sprite->sAnimNum = 0; sprite->sAnimState = 0; @@ -8754,11 +8754,11 @@ static void MoveUnionRoomObjectDown(struct Sprite *sprite) switch(sprite->sAnimState) { case 0: - sprite->pos2.y = -DISPLAY_HEIGHT; + sprite->y2 = -DISPLAY_HEIGHT; sprite->sAnimState++; case 1: - sprite->pos2.y += 8; - if(sprite->pos2.y == 0) + sprite->y2 += 8; + if(sprite->y2 == 0) { sprite->sAnimNum = 0; sprite->sAnimState = 0; @@ -8815,8 +8815,8 @@ static void DoShadowFieldEffect(struct ObjectEvent *objectEvent) static void DoRippleFieldEffect(struct ObjectEvent *objectEvent, struct Sprite *sprite) { const struct ObjectEventGraphicsInfo *graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); - gFieldEffectArguments[0] = sprite->pos1.x; - gFieldEffectArguments[1] = sprite->pos1.y + (graphicsInfo->height >> 1) - 2; + gFieldEffectArguments[0] = sprite->x; + gFieldEffectArguments[1] = sprite->y + (graphicsInfo->height >> 1) - 2; gFieldEffectArguments[2] = 151; gFieldEffectArguments[3] = 3; FieldEffectStart(FLDEFF_RIPPLE); @@ -8950,7 +8950,7 @@ static void ApplyLevitateMovement(u8 taskId) sprite = &gSprites[objectEvent->spriteId]; if(!(task->data[2] & 3)) - sprite->pos2.y += task->data[3]; + sprite->y2 += task->data[3]; if(!(task->data[2] & 15)) task->data[3] = -task->data[3]; @@ -8982,32 +8982,32 @@ void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2) u8 MovementAction_FlyUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->sActionFuncId++; return FALSE; } u8 MovementAction_FlyUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y -= 8; + sprite->y2 -= 8; - if(sprite->pos2.y == -DISPLAY_HEIGHT) + if(sprite->y2 == -DISPLAY_HEIGHT) sprite->sActionFuncId++; return FALSE; } u8 MovementAction_FlyDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y = -DISPLAY_HEIGHT; + sprite->y2 = -DISPLAY_HEIGHT; sprite->sActionFuncId++; return FALSE; } u8 MovementAction_FlyDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y += 8; + sprite->y2 += 8; - if(!sprite->pos2.y) + if(!sprite->y2) sprite->sActionFuncId++; return FALSE; } diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index 2a3aaa9e8c55..50098743db7a 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -115,18 +115,18 @@ static void SetEvoSparklesMatrices(void) static void SpriteCB_Sparkle_SpiralUpward(struct Sprite* sprite) { - if (sprite->pos1.y > 8) + if (sprite->y > 8) { u8 matrixNum; - sprite->pos1.y = 88 - (sprite->data[7] * sprite->data[7]) / 80; - sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; - sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->y = 88 - (sprite->data[7] * sprite->data[7]) / 80; + sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; + sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); sprite->data[6] += 4; if (sprite->data[7] & 1) sprite->data[5]--; sprite->data[7]++; - if (sprite->pos2.y > 0) + if (sprite->y2 > 0) sprite->subpriority = 1; else sprite->subpriority = 20; @@ -155,11 +155,11 @@ static void CreateSparkle_SpiralUpward(u8 arg0) static void SpriteCB_Sparkle_ArcDown(struct Sprite* sprite) { - if (sprite->pos1.y < 88) + if (sprite->y < 88) { - sprite->pos1.y = 8 + (sprite->data[7] * sprite->data[7]) / 5; - sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; - sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->y = 8 + (sprite->data[7] * sprite->data[7]) / 5; + sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; + sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); sprite->data[5] = 8 + Sin((u8)(sprite->data[7] * 4), 40); sprite->data[7]++; } @@ -186,8 +186,8 @@ static void SpriteCB_Sparkle_CircleInward(struct Sprite* sprite) { if (sprite->data[5] > 8) { - sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]); - sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]); + sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); sprite->data[5] -= sprite->data[3]; sprite->data[6] += 4; } @@ -214,13 +214,13 @@ static void CreateSparkle_CircleInward(u8 arg0, u8 arg1) static void SpriteCB_Sparkle_Spray(struct Sprite* sprite) { if (!(sprite->data[7] & 3)) - sprite->pos1.y++; + sprite->y++; if (sprite->data[6] < 128) { u8 matrixNum; - sprite->pos2.y = -Sin((u8)(sprite->data[6]), sprite->data[5]); - sprite->pos1.x = 120 + (sprite->data[3] * sprite->data[7]) / 3; + sprite->y2 = -Sin((u8)(sprite->data[6]), sprite->data[5]); + sprite->x = 120 + (sprite->data[3] * sprite->data[7]) / 3; sprite->data[6]++; matrixNum = 31 - (sprite->data[6] * 12 / 128); if (sprite->data[6] > 64) diff --git a/src/field_effect.c b/src/field_effect.c index 8152f19bb84c..0d61b35f1da0 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -1118,8 +1118,8 @@ static u8 CreateGlowingPokeballsEffect(s16 numMons, s16 x, s16 y, bool16 playHea struct Sprite *sprite; spriteId = CreateInvisibleSprite(SpriteCB_PokeballGlowEffect); sprite = &gSprites[spriteId]; - sprite->pos2.x = x; - sprite->pos2.y = y; + sprite->x2 = x; + sprite->y2 = y; sprite->sPlayHealSe = playHealSe; sprite->sNumMons = numMons; sprite->sSpriteId = spriteId; @@ -1137,7 +1137,7 @@ static void PokeballGlowEffect_PlaceBalls(struct Sprite *sprite) if (sprite->sTimer == 0 || (--sprite->sTimer) == 0) { sprite->sTimer = 25; - spriteId = CreateSpriteAtEnd(&sSpriteTemplate_PokeballGlow, sPokeballCoordOffsets[sprite->sCounter].x + sprite->pos2.x, sPokeballCoordOffsets[sprite->sCounter].y + sprite->pos2.y, 0); + spriteId = CreateSpriteAtEnd(&sSpriteTemplate_PokeballGlow, sPokeballCoordOffsets[sprite->sCounter].x + sprite->x2, sPokeballCoordOffsets[sprite->sCounter].y + sprite->y2, 0); gSprites[spriteId].oam.priority = 2; gSprites[spriteId].sEffectSpriteId = sprite->sSpriteId; sprite->sCounter++; @@ -1461,7 +1461,7 @@ static bool8 FallWarpEffect_StartFall(struct Task *task) s16 centerToCornerVecY; sprite = &gSprites[gPlayerAvatar.spriteId]; centerToCornerVecY = -(sprite->centerToCornerVecY << 1); - sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY); + sprite->y2 = -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY); task->tFallOffset = 1; task->tTotalFall = 0; gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE; @@ -1477,7 +1477,7 @@ static bool8 FallWarpEffect_Fall(struct Task *task) objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.y += task->tFallOffset; + sprite->y2 += task->tFallOffset; if (task->tFallOffset < 8) { task->tTotalFall += task->tFallOffset; @@ -1485,19 +1485,19 @@ static bool8 FallWarpEffect_Fall(struct Task *task) if (task->tTotalFall & 0xf) task->tFallOffset <<= 1; } - if (task->tSetTrigger == FALSE && sprite->pos2.y >= -16) + if (task->tSetTrigger == FALSE && sprite->y2 >= -16) { task->tSetTrigger++; objectEvent->fixedPriority = 0; sprite->subspriteMode = task->tSubsprMode; objectEvent->triggerGroundEffectsOnMove = 1; } - if (sprite->pos2.y >= 0) + if (sprite->y2 >= 0) { PlaySE(SE_M_STRENGTH); objectEvent->triggerGroundEffectsOnStop = 1; objectEvent->landingJump = 1; - sprite->pos2.y = 0; + sprite->y2 = 0; task->tState++; } return FALSE; @@ -1635,8 +1635,8 @@ static void RideUpEscalatorOut(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x84, task->data[2]); - sprite->pos2.y = Sin(0x94, task->data[2]); + sprite->x2 = Cos(0x84, task->data[2]); + sprite->y2 = Sin(0x94, task->data[2]); task->data[3]++; if (task->data[3] & 1) { @@ -1648,8 +1648,8 @@ static void RideDownEscalatorOut(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x7c, task->data[2]); - sprite->pos2.y = Sin(0x76, task->data[2]); + sprite->x2 = Cos(0x7c, task->data[2]); + sprite->y2 = Sin(0x76, task->data[2]); task->data[3]++; if (task->data[3] & 1) { @@ -1729,8 +1729,8 @@ static bool8 EscalatorWarpIn_Down_Init(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x84, task->data[1]); - sprite->pos2.y = Sin(0x94, task->data[1]); + sprite->x2 = Cos(0x84, task->data[1]); + sprite->y2 = Sin(0x94, task->data[1]); task->tState++; return FALSE; } @@ -1739,8 +1739,8 @@ static bool8 EscalatorWarpIn_Down_Ride(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x84, task->data[1]); - sprite->pos2.y = Sin(0x94, task->data[1]); + sprite->x2 = Cos(0x84, task->data[1]); + sprite->y2 = Sin(0x94, task->data[1]); task->data[2]++; if (task->data[2] & 1) { @@ -1748,8 +1748,8 @@ static bool8 EscalatorWarpIn_Down_Ride(struct Task *task) } if (task->data[1] == 0) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; task->tState = 5; } return FALSE; @@ -1759,8 +1759,8 @@ static bool8 EscalatorWarpIn_Up_Init(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x7c, task->data[1]); - sprite->pos2.y = Sin(0x76, task->data[1]); + sprite->x2 = Cos(0x7c, task->data[1]); + sprite->y2 = Sin(0x76, task->data[1]); task->tState++; return FALSE; } @@ -1769,8 +1769,8 @@ static bool8 EscalatorWarpIn_Up_Ride(struct Task *task) { struct Sprite *sprite; sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.x = Cos(0x7c, task->data[1]); - sprite->pos2.y = Sin(0x76, task->data[1]); + sprite->x2 = Cos(0x7c, task->data[1]); + sprite->y2 = Sin(0x76, task->data[1]); task->data[2]++; if (task->data[2] & 1) { @@ -1778,8 +1778,8 @@ static bool8 EscalatorWarpIn_Up_Ride(struct Task *task) } if (task->data[1] == 0) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; task->tState++; } return FALSE; @@ -1972,7 +1972,7 @@ static bool8 LavaridgeGymB1FWarpEffect_CameraShake(struct Task *task, struct Obj static bool8 LavaridgeGymB1FWarpEffect_Launch(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { - sprite->pos2.y = 0; + sprite->y2 = 0; task->data[3] = 1; gFieldEffectArguments[0] = objectEvent->currentCoords.x; gFieldEffectArguments[1] = objectEvent->currentCoords.y; @@ -2001,9 +2001,9 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven if (task->data[2] > 6) { centerToCornerVecY = -(sprite->centerToCornerVecY << 1); - if (sprite->pos2.y > -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY)) + if (sprite->y2 > -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY)) { - sprite->pos2.y -= task->data[3]; + sprite->y2 -= task->data[3]; if (task->data[3] <= 7) { task->data[3]++; @@ -2013,7 +2013,7 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven task->data[4] = 1; } } - if (task->data[5] == 0 && sprite->pos2.y < -0x10) + if (task->data[5] == 0 && sprite->y2 < -0x10) { task->data[5]++; objectEvent->fixedPriority = 1; @@ -2396,7 +2396,7 @@ static void TeleportWarpOutFieldEffect_SpinExit(struct Task *task) task->data[1] = 4; ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]); } - sprite->pos1.y -= task->data[3]; + sprite->y -= task->data[3]; task->data[4] += task->data[3]; if ((--task->data[2]) <= 0 && (task->data[2] = 4, task->data[3] < 8)) { @@ -2466,7 +2466,7 @@ static void TeleportWarpInFieldEffect_Init(struct Task *task) { sprite = &gSprites[gPlayerAvatar.spriteId]; centerToCornerVecY = -(sprite->centerToCornerVecY << 1); - sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY); + sprite->y2 = -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY); gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE; task->data[0]++; task->data[1] = 8; @@ -2482,7 +2482,7 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task) u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH}; struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; struct Sprite *sprite = &gSprites[gPlayerAvatar.spriteId]; - if ((sprite->pos2.y += task->data[1]) >= -8) + if ((sprite->y2 += task->data[1]) >= -8) { if (task->data[13] == 0) { @@ -2498,7 +2498,7 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task) sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; } } - if (sprite->pos2.y >= -0x30 && task->data[1] > 1 && !(sprite->pos2.y & 1)) + if (sprite->y2 >= -0x30 && task->data[1] > 1 && !(sprite->y2 & 1)) { task->data[1]--; } @@ -2507,9 +2507,9 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task) task->data[2] = 4; ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]); } - if (sprite->pos2.y >= 0) + if (sprite->y2 >= 0) { - sprite->pos2.y = 0; + sprite->y2 = 0; task->data[0]++; task->data[1] = 1; task->data[2] = 0; @@ -2929,9 +2929,9 @@ static u8 InitFieldMoveMonSprite(u32 species, u32 otId, u32 personality) static void SpriteCB_FieldMoveMonSlideOnscreen(struct Sprite *sprite) { - if ((sprite->pos1.x -= 20) <= DISPLAY_WIDTH / 2) + if ((sprite->x -= 20) <= DISPLAY_WIDTH / 2) { - sprite->pos1.x = DISPLAY_WIDTH / 2; + sprite->x = DISPLAY_WIDTH / 2; sprite->sOnscreenTimer = 30; sprite->callback = SpriteCB_FieldMoveMonWaitAfterCry; if (sprite->data[6]) @@ -2953,10 +2953,10 @@ static void SpriteCB_FieldMoveMonWaitAfterCry(struct Sprite *sprite) static void SpriteCB_FieldMoveMonSlideOffscreen(struct Sprite *sprite) { - if (sprite->pos1.x < -64) + if (sprite->x < -64) sprite->sSlidOffscreen = TRUE; else - sprite->pos1.x -= 20; + sprite->x -= 20; } #undef tState @@ -3078,7 +3078,7 @@ u8 FldEff_RayquazaSpotlight(void) sprite->data[1] = 0; sprite->data[2] = 0; sprite->data[3] = -1; - sprite->data[4] = sprite->pos1.y; + sprite->data[4] = sprite->y; sprite->data[5] = 0; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(14, 14)); @@ -3120,17 +3120,17 @@ static void SpriteCB_NPCFlyOut(struct Sprite *sprite) { struct Sprite *npcSprite; - sprite->pos2.x = Cos(sprite->data[2], 0x8c); - sprite->pos2.y = Sin(sprite->data[2], 0x48); + sprite->x2 = Cos(sprite->data[2], 0x8c); + sprite->y2 = Sin(sprite->data[2], 0x48); sprite->data[2] = (sprite->data[2] + 4) & 0xff; if (sprite->data[0]) { npcSprite = &gSprites[sprite->data[1]]; npcSprite->coordOffsetEnabled = FALSE; - npcSprite->pos1.x = sprite->pos1.x + sprite->pos2.x; - npcSprite->pos1.y = sprite->pos1.y + sprite->pos2.y - 8; - npcSprite->pos2.x = 0; - npcSprite->pos2.y = 0; + npcSprite->x = sprite->x + sprite->x2; + npcSprite->y = sprite->y + sprite->y2 - 8; + npcSprite->x2 = 0; + npcSprite->y2 = 0; } if (sprite->data[2] >= 0x80) @@ -3306,10 +3306,10 @@ static void StartFlyBirdSwoopDown(u8 spriteId) struct Sprite *sprite; sprite = &gSprites[spriteId]; sprite->callback = SpriteCB_FlyBirdSwoopDown; - sprite->pos1.x = DISPLAY_WIDTH / 2; - sprite->pos1.y = 0; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x = DISPLAY_WIDTH / 2; + sprite->y = 0; + sprite->x2 = 0; + sprite->y2 = 0; memset(&sprite->data[0], 0, 8 * sizeof(u16) /* zero all data cells */); sprite->sPlayerSpriteId = MAX_SPRITES; } @@ -3346,15 +3346,15 @@ static void SpriteCB_FlyBirdLeaveBall(struct Sprite *sprite) sprite->affineAnims = sAffineAnims_FlyBird; InitSpriteAffineAnim(sprite); StartSpriteAffineAnim(sprite, 0); - sprite->pos1.x = 0x76; - sprite->pos1.y = -0x30; + sprite->x = 0x76; + sprite->y = -0x30; sprite->data[0]++; sprite->data[1] = 0x40; sprite->data[2] = 0x100; } sprite->data[1] += (sprite->data[2] >> 8); - sprite->pos2.x = Cos(sprite->data[1], 0x78); - sprite->pos2.y = Sin(sprite->data[1], 0x78); + sprite->x2 = Cos(sprite->data[1], 0x78); + sprite->y2 = Sin(sprite->data[1], 0x78); if (sprite->data[2] < 0x800) { sprite->data[2] += 0x60; @@ -3371,17 +3371,17 @@ static void SpriteCB_FlyBirdLeaveBall(struct Sprite *sprite) static void SpriteCB_FlyBirdSwoopDown(struct Sprite *sprite) { - sprite->pos2.x = Cos(sprite->data[2], 0x8c); - sprite->pos2.y = Sin(sprite->data[2], 0x48); + sprite->x2 = Cos(sprite->data[2], 0x8c); + sprite->y2 = Sin(sprite->data[2], 0x48); sprite->data[2] = (sprite->data[2] + 4) & 0xff; if (sprite->sPlayerSpriteId != MAX_SPRITES) { struct Sprite *sprite1 = &gSprites[sprite->sPlayerSpriteId]; sprite1->coordOffsetEnabled = FALSE; - sprite1->pos1.x = sprite->pos1.x + sprite->pos2.x; - sprite1->pos1.y = sprite->pos1.y + sprite->pos2.y - 8; - sprite1->pos2.x = 0; - sprite1->pos2.y = 0; + sprite1->x = sprite->x + sprite->x2; + sprite1->y = sprite->y + sprite->y2 - 8; + sprite1->x2 = 0; + sprite1->y2 = 0; } if (sprite->data[2] >= 0x80) { @@ -3399,8 +3399,8 @@ static void SpriteCB_FlyBirdReturnToBall(struct Sprite *sprite) sprite->affineAnims = sAffineAnims_FlyBird; InitSpriteAffineAnim(sprite); StartSpriteAffineAnim(sprite, 1); - sprite->pos1.x = 0x5e; - sprite->pos1.y = -0x20; + sprite->x = 0x5e; + sprite->y = -0x20; sprite->data[0]++; sprite->data[1] = 0xf0; sprite->data[2] = 0x800; @@ -3409,8 +3409,8 @@ static void SpriteCB_FlyBirdReturnToBall(struct Sprite *sprite) sprite->data[1] += sprite->data[2] >> 8; sprite->data[3] += sprite->data[2] >> 8; sprite->data[1] &= 0xff; - sprite->pos2.x = Cos(sprite->data[1], 0x20); - sprite->pos2.y = Sin(sprite->data[1], 0x78); + sprite->x2 = Cos(sprite->data[1], 0x20); + sprite->y2 = Sin(sprite->data[1], 0x78); if (sprite->data[2] > 0x100) { sprite->data[2] -= sprite->data[4]; @@ -3495,10 +3495,10 @@ static void FlyInFieldEffect_FlyInWithBird(struct Task *task) objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; sprite = &gSprites[objectEvent->spriteId]; SetFlyBirdPlayerSpriteId(task->tBirdSpriteId, MAX_SPRITES); - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; task->tState++; task->tTimer = 0; } @@ -3527,7 +3527,7 @@ static void FlyInFieldEffect_JumpOffBird(struct Task *task) 8 }; struct Sprite *sprite = &gSprites[gPlayerAvatar.spriteId]; - sprite->pos2.y = sYPositions[task->tTimer]; + sprite->y2 = sYPositions[task->tTimer]; if ((++task->tTimer) >= (int)ARRAY_COUNT(sYPositions)) task->tState++; @@ -3543,8 +3543,8 @@ static void FlyInFieldEffect_FieldMovePose(struct Task *task) sprite = &gSprites[objectEvent->spriteId]; objectEvent->inanimate = FALSE; MoveObjectEventToMapCoords(objectEvent, objectEvent->currentCoords.x, objectEvent->currentCoords.y); - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->coordOffsetEnabled = TRUE; SetPlayerAvatarFieldMove(); ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION); @@ -3780,8 +3780,8 @@ static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = { static void CreateDeoxysRockFragments(struct Sprite* sprite) { int i; - int xPos = (s16)gTotalCameraPixelOffsetX + sprite->pos1.x + sprite->pos2.x; - int yPos = (s16)gTotalCameraPixelOffsetY + sprite->pos1.y + sprite->pos2.y - 4; + int xPos = (s16)gTotalCameraPixelOffsetX + sprite->x + sprite->x2; + int yPos = (s16)gTotalCameraPixelOffsetY + sprite->y + sprite->y2 - 4; for (i = 0; i < 4; i++) { @@ -3801,23 +3801,23 @@ static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite) switch (sprite->data[0]) { case 0: - sprite->pos1.x -= 16; - sprite->pos1.y -= 12; + sprite->x -= 16; + sprite->y -= 12; break; case 1: - sprite->pos1.x += 16; - sprite->pos1.y -= 12; + sprite->x += 16; + sprite->y -= 12; break; case 2: - sprite->pos1.x -= 16; - sprite->pos1.y += 12; + sprite->x -= 16; + sprite->y += 12; break; case 3: - sprite->pos1.x += 16; - sprite->pos1.y += 12; + sprite->x += 16; + sprite->y += 12; break; } - if ((u16)(sprite->pos1.x + 4) > DISPLAY_WIDTH + 8 || sprite->pos1.y < -4 || sprite->pos1.y > DISPLAY_HEIGHT + 4) + if ((u16)(sprite->x + 4) > DISPLAY_WIDTH + 8 || sprite->y < -4 || sprite->y > DISPLAY_HEIGHT + 4) DestroySprite(sprite); } @@ -3837,8 +3837,8 @@ bool8 FldEff_MoveDeoxysRock(struct Sprite* sprite) ShiftObjectEventCoords(object, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7); taskId = CreateTask(Task_MoveDeoxysRock, 80); gTasks[taskId].data[1] = object->spriteId; - gTasks[taskId].data[2] = gSprites[object->spriteId].pos1.x + xPos; - gTasks[taskId].data[3] = gSprites[object->spriteId].pos1.y + yPos; + gTasks[taskId].data[2] = gSprites[object->spriteId].x + xPos; + gTasks[taskId].data[3] = gSprites[object->spriteId].y + yPos; gTasks[taskId].data[8] = gFieldEffectArguments[5]; gTasks[taskId].data[9] = objectEventIdBuffer; } @@ -3852,8 +3852,8 @@ static void Task_MoveDeoxysRock(u8 taskId) switch (data[0]) { case 0: - data[4] = sprite->pos1.x << 4; - data[5] = sprite->pos1.y << 4; + data[4] = sprite->x << 4; + data[5] = sprite->y << 4; data[6] = SAFE_DIV(data[2] * 16 - data[4], data[8]); data[7] = SAFE_DIV(data[3] * 16 - data[5], data[8]); data[0]++; @@ -3863,14 +3863,14 @@ static void Task_MoveDeoxysRock(u8 taskId) data[8]--; data[4] += data[6]; data[5] += data[7]; - sprite->pos1.x = data[4] >> 4; - sprite->pos1.y = data[5] >> 4; + sprite->x = data[4] >> 4; + sprite->y = data[5] >> 4; } else { struct ObjectEvent *object = &gObjectEvents[data[9]]; - sprite->pos1.x = data[2]; - sprite->pos1.y = data[3]; + sprite->x = data[2]; + sprite->y = data[3]; ShiftStillObjectEventCoords(object); object->triggerGroundEffectsOnStop = TRUE; FieldEffectActiveListRemove(FLDEFF_MOVE_DEOXYS_ROCK); diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 67a151aaa729..eab7d85ef07f 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -44,7 +44,7 @@ void SetUpReflection(struct ObjectEvent *objectEvent, struct Sprite *sprite, boo { struct Sprite *reflectionSprite; - reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->pos1.x, sprite->pos1.y, 0x98)]; + reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->x, sprite->y, 0x98)]; reflectionSprite->callback = UpdateObjectReflectionSprite; reflectionSprite->oam.priority = 3; reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[reflectionSprite->oam.paletteNum]; @@ -142,12 +142,12 @@ static void UpdateObjectReflectionSprite(struct Sprite *reflectionSprite) reflectionSprite->subspriteTables = mainSprite->subspriteTables; reflectionSprite->subspriteTableNum = mainSprite->subspriteTableNum; reflectionSprite->invisible = mainSprite->invisible; - reflectionSprite->pos1.x = mainSprite->pos1.x; - reflectionSprite->pos1.y = mainSprite->pos1.y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->sReflectionVerticalOffset; + reflectionSprite->x = mainSprite->x; + reflectionSprite->y = mainSprite->y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->sReflectionVerticalOffset; reflectionSprite->centerToCornerVecX = mainSprite->centerToCornerVecX; reflectionSprite->centerToCornerVecY = mainSprite->centerToCornerVecY; - reflectionSprite->pos2.x = mainSprite->pos2.x; - reflectionSprite->pos2.y = -mainSprite->pos2.y; + reflectionSprite->x2 = mainSprite->x2; + reflectionSprite->y2 = -mainSprite->y2; reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled; if (objectEvent->hideReflection == TRUE) @@ -204,8 +204,8 @@ void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y) { SetSpritePosToMapCoords(x, y, &x2, &y2); sprite = &gSprites[spriteId]; - sprite->pos1.x = x2 + 8; - sprite->pos1.y = y2 + 8; + sprite->x = x2 + 8; + sprite->y = y2 + 8; sprite->invisible = FALSE; sprite->data[0] = x; sprite->data[1] = y; @@ -262,8 +262,8 @@ void UpdateShadowFieldEffect(struct Sprite *sprite) objectEvent = &gObjectEvents[objectEventId]; linkedSprite = &gSprites[objectEvent->spriteId]; sprite->oam.priority = linkedSprite->oam.priority; - sprite->pos1.x = linkedSprite->pos1.x; - sprite->pos1.y = linkedSprite->pos1.y + sprite->data[3]; + sprite->x = linkedSprite->x; + sprite->y = linkedSprite->y + sprite->data[3]; if (!objectEvent->active || !objectEvent->hasShadow || MetatileBehavior_IsPokeGrass(objectEvent->currentMetatileBehavior) || MetatileBehavior_IsSurfableWaterOrUnderwater(objectEvent->currentMetatileBehavior) @@ -517,8 +517,8 @@ u32 FldEff_ShortGrass(void) sprite->data[0] = gFieldEffectArguments[0]; sprite->data[1] = gFieldEffectArguments[1]; sprite->data[2] = gFieldEffectArguments[2]; - sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; - sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; + sprite->data[3] = gSprites[objectEvent->spriteId].x; + sprite->data[4] = gSprites[objectEvent->spriteId].y; } return 0; } @@ -539,8 +539,8 @@ void UpdateShortGrassFieldEffect(struct Sprite *sprite) { graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; - y = linkedSprite->pos1.y; - x = linkedSprite->pos1.x; + y = linkedSprite->y; + x = linkedSprite->x; if (x != sprite->data[3] || y != sprite->data[4]) { sprite->data[3] = x; @@ -550,9 +550,9 @@ void UpdateShortGrassFieldEffect(struct Sprite *sprite) StartSpriteAnim(sprite, 0); } } - sprite->pos1.x = x; - sprite->pos1.y = y; - sprite->pos2.y = (graphicsInfo->height >> 1) - 8; + sprite->x = x; + sprite->y = y; + sprite->y2 = (graphicsInfo->height >> 1) - 8; sprite->subpriority = linkedSprite->subpriority - 1; sprite->oam.priority = linkedSprite->oam.priority; UpdateObjectEventSpriteInvisibility(sprite, linkedSprite->invisible); @@ -665,7 +665,7 @@ u32 FldEff_Splash(void) sprite->data[0] = gFieldEffectArguments[0]; sprite->data[1] = gFieldEffectArguments[1]; sprite->data[2] = gFieldEffectArguments[2]; - sprite->pos2.y = (graphicsInfo->height >> 1) - 4; + sprite->y2 = (graphicsInfo->height >> 1) - 4; PlaySE(SE_PUDDLE); } return 0; @@ -681,8 +681,8 @@ void UpdateSplashFieldEffect(struct Sprite *sprite) } else { - sprite->pos1.x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x; - sprite->pos1.y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y; + sprite->x = gSprites[gObjectEvents[objectEventId].spriteId].x; + sprite->y = gSprites[gObjectEvents[objectEventId].spriteId].y; UpdateObjectEventSpriteInvisibility(sprite, FALSE); } } @@ -746,7 +746,7 @@ u32 FldEff_FeetInFlowingWater(void) sprite->data[2] = gFieldEffectArguments[2]; sprite->data[3] = -1; sprite->data[4] = -1; - sprite->pos2.y = (graphicsInfo->height >> 1) - 4; + sprite->y2 = (graphicsInfo->height >> 1) - 4; StartSpriteAnim(sprite, 1); } return 0; @@ -766,8 +766,8 @@ static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite) { objectEvent = &gObjectEvents[objectEventId]; linkedSprite = &gSprites[objectEvent->spriteId]; - sprite->pos1.x = linkedSprite->pos1.x; - sprite->pos1.y = linkedSprite->pos1.y; + sprite->x = linkedSprite->x; + sprite->y = linkedSprite->y; sprite->subpriority = linkedSprite->subpriority; UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (objectEvent->currentCoords.x != sprite->data[3] || objectEvent->currentCoords.y != sprite->data[4]) @@ -816,8 +816,8 @@ u32 FldEff_HotSpringsWater(void) sprite->data[0] = gFieldEffectArguments[0]; sprite->data[1] = gFieldEffectArguments[1]; sprite->data[2] = gFieldEffectArguments[2]; - sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; - sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; + sprite->data[3] = gSprites[objectEvent->spriteId].x; + sprite->data[4] = gSprites[objectEvent->spriteId].y; } return 0; } @@ -836,8 +836,8 @@ void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite) { graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; - sprite->pos1.x = linkedSprite->pos1.x; - sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 8; + sprite->x = linkedSprite->x; + sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 8; sprite->subpriority = linkedSprite->subpriority - 1; UpdateObjectEventSpriteInvisibility(sprite, FALSE); } @@ -1092,7 +1092,7 @@ void SynchroniseSurfPosition(struct ObjectEvent *playerObj, struct Sprite *sprit u8 i; s16 x = playerObj->currentCoords.x; s16 y = playerObj->currentCoords.y; - s32 spriteY = sprite->pos2.y; + s32 spriteY = sprite->y2; if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7])) { @@ -1120,7 +1120,7 @@ static void UpdateBobbingEffect(struct ObjectEvent *playerObj, struct Sprite *pl // Update bobbing position of surf blob if (((u16)(++sprite->data[4]) & intervals[sprite->data[5]]) == 0) { - sprite->pos2.y += sprite->data[3]; + sprite->y2 += sprite->data[3]; } if ((sprite->data[4] & 15) == 0) { @@ -1130,11 +1130,11 @@ static void UpdateBobbingEffect(struct ObjectEvent *playerObj, struct Sprite *pl { // Update bobbing position of player if (!GetSurfBlob_HasPlayerOffset(sprite)) - playerSprite->pos2.y = sprite->pos2.y; + playerSprite->y2 = sprite->y2; else - playerSprite->pos2.y = sprite->tPlayerOffset + sprite->pos2.y; - sprite->pos1.x = playerSprite->pos1.x; - sprite->pos1.y = playerSprite->pos1.y + 8; + playerSprite->y2 = sprite->tPlayerOffset + sprite->y2; + sprite->x = playerSprite->x; + sprite->y = playerSprite->y + 8; } } } @@ -1167,7 +1167,7 @@ static void SpriteCB_UnderwaterSurfBlob(struct Sprite *sprite) blobSprite = &gSprites[sprite->sSpriteId]; if (((sprite->sTimer++) & 3) == 0) { - blobSprite->pos2.y += sprite->sBobY; + blobSprite->y2 += sprite->sBobY; } if ((sprite->sTimer & 15) == 0) { @@ -1217,9 +1217,9 @@ u32 FldEff_SandPile(void) sprite->data[0] = gFieldEffectArguments[0]; sprite->data[1] = gFieldEffectArguments[1]; sprite->data[2] = gFieldEffectArguments[2]; - sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; - sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; - sprite->pos2.y = (graphicsInfo->height >> 1) - 2; + sprite->data[3] = gSprites[objectEvent->spriteId].x; + sprite->data[4] = gSprites[objectEvent->spriteId].y; + sprite->y2 = (graphicsInfo->height >> 1) - 2; SeekSpriteAnim(sprite, 2); } return 0; @@ -1237,8 +1237,8 @@ void UpdateSandPileFieldEffect(struct Sprite *sprite) } else { - y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y; - x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x; + y = gSprites[gObjectEvents[objectEventId].spriteId].y; + x = gSprites[gObjectEvents[objectEventId].spriteId].x; if (x != sprite->data[3] || y != sprite->data[4]) { sprite->data[3] = x; @@ -1248,8 +1248,8 @@ void UpdateSandPileFieldEffect(struct Sprite *sprite) StartSpriteAnim(sprite, 0); } } - sprite->pos1.x = x; - sprite->pos1.y = y; + sprite->x = x; + sprite->y = y; sprite->subpriority = gSprites[gObjectEvents[objectEventId].spriteId].subpriority; UpdateObjectEventSpriteInvisibility(sprite, FALSE); } @@ -1275,7 +1275,7 @@ void UpdateBubblesFieldEffect(struct Sprite *sprite) { sprite->data[0] += 0x80; sprite->data[0] &= 0x100; - sprite->pos1.y -= sprite->data[0] >> 8; + sprite->y -= sprite->data[0] >> 8; UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (sprite->invisible || sprite->animEnded) { @@ -1359,8 +1359,8 @@ void UpdateDisguiseFieldEffect(struct Sprite *sprite) graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; sprite->invisible = linkedSprite->invisible; - sprite->pos1.x = linkedSprite->pos1.x; - sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 16; + sprite->x = linkedSprite->x; + sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 16; sprite->subpriority = linkedSprite->subpriority - 1; if (sprite->sState == 1) @@ -1468,25 +1468,25 @@ static bool8 AnimateRayquazaInFigure8(struct Sprite *sprite) switch (sprite->sAnimState) { case 0: - sprite->pos2.x += GetFigure8XOffset(sprite->sAnimCounter); - sprite->pos2.y += GetFigure8YOffset(sprite->sAnimCounter); + sprite->x2 += GetFigure8XOffset(sprite->sAnimCounter); + sprite->y2 += GetFigure8YOffset(sprite->sAnimCounter); break; case 1: - sprite->pos2.x -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); - sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); + sprite->x2 -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); + sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); break; case 2: - sprite->pos2.x -= GetFigure8XOffset(sprite->sAnimCounter); - sprite->pos2.y += GetFigure8YOffset(sprite->sAnimCounter); + sprite->x2 -= GetFigure8XOffset(sprite->sAnimCounter); + sprite->y2 += GetFigure8YOffset(sprite->sAnimCounter); break; case 3: - sprite->pos2.x += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); - sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); + sprite->x2 += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); + sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter); break; } // Update spotlight to sweep left and right with Rayquaza - SetGpuReg(REG_OFFSET_BG0HOFS, -sprite->pos2.x); + SetGpuReg(REG_OFFSET_BG0HOFS, -sprite->x2); if (++sprite->sAnimCounter == FIGURE_8_LENGTH) { @@ -1495,8 +1495,8 @@ static bool8 AnimateRayquazaInFigure8(struct Sprite *sprite) } if (sprite->sAnimState == 4) { - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->y2 = 0; + sprite->x2 = 0; finished = TRUE; } @@ -1528,7 +1528,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) } break; case 1: - sprite->pos1.y = (gSineTable[sprite->sTimer / 3] >> 2) + sprite->sStartY; + sprite->y = (gSineTable[sprite->sTimer / 3] >> 2) + sprite->sStartY; if (sprite->sTimer == 189) { sprite->sState = 2; @@ -1549,7 +1549,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) } break; case 3: - if (sprite->pos2.y == 0) + if (sprite->y2 == 0) { sprite->sTimer = 0; sprite->sState++; @@ -1557,10 +1557,10 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) if (sprite->sTimer == 5) { sprite->sTimer = 0; - if (sprite->pos2.y > 0) - sprite->pos2.y--; + if (sprite->y2 > 0) + sprite->y2--; else - sprite->pos2.y++; + sprite->y2++; } break; case 4: @@ -1614,7 +1614,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) if (sprite->sState == 1) { if ((sprite->data[1] & 7) == 0) - sprite->pos2.y += sprite->data[3]; + sprite->y2 += sprite->data[3]; if ((sprite->data[1] & 15) == 0) sprite->data[3] = -sprite->data[3]; sprite->data[1]++; @@ -1667,13 +1667,13 @@ static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 of { graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); linkedSprite = &gSprites[objectEvent->spriteId]; - xhi = sprite->pos1.x + sprite->centerToCornerVecX; - var = sprite->pos1.x - sprite->centerToCornerVecX; - if (xhi < linkedSprite->pos1.x && var > linkedSprite->pos1.x) + xhi = sprite->x + sprite->centerToCornerVecX; + var = sprite->x - sprite->centerToCornerVecX; + if (xhi < linkedSprite->x && var > linkedSprite->x) { - lyhi = linkedSprite->pos1.y + linkedSprite->centerToCornerVecY; - var = linkedSprite->pos1.y; - ylo = sprite->pos1.y - sprite->centerToCornerVecY; + lyhi = linkedSprite->y + linkedSprite->centerToCornerVecY; + var = linkedSprite->y; + ylo = sprite->y - sprite->centerToCornerVecY; yhi = ylo + linkedSprite->centerToCornerVecY; if ((lyhi < yhi || lyhi < ylo) && var > yhi && sprite->subpriority <= linkedSprite->subpriority) { diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 9b1f4ceb6cf9..e5f6007b5cb6 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1933,8 +1933,8 @@ static bool8 Fishing_StartEncounter(struct Task *task) ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0); - gSprites[gPlayerAvatar.spriteId].pos2.x = 0; - gSprites[gPlayerAvatar.spriteId].pos2.y = 0; + gSprites[gPlayerAvatar.spriteId].x2 = 0; + gSprites[gPlayerAvatar.spriteId].y2 = 0; ClearDialogWindowAndFrame(0, TRUE); task->tFrameCounter++; return FALSE; @@ -1990,8 +1990,8 @@ static bool8 Fishing_PutRodAway(struct Task *task) ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0); - gSprites[gPlayerAvatar.spriteId].pos2.x = 0; - gSprites[gPlayerAvatar.spriteId].pos2.y = 0; + gSprites[gPlayerAvatar.spriteId].x2 = 0; + gSprites[gPlayerAvatar.spriteId].y2 = 0; task->tStep++; } return FALSE; @@ -2023,8 +2023,8 @@ static void AlignFishingAnimationFrames(void) u8 animType; AnimateSprite(playerSprite); - playerSprite->pos2.x = 0; - playerSprite->pos2.y = 0; + playerSprite->x2 = 0; + playerSprite->y2 = 0; animCmdIndex = playerSprite->animCmdIndex; if (playerSprite->anims[playerSprite->animNum][animCmdIndex].type == -1) { @@ -2039,16 +2039,16 @@ static void AlignFishingAnimationFrames(void) animType = playerSprite->anims[playerSprite->animNum][animCmdIndex].type; if (animType == 1 || animType == 2 || animType == 3) { - playerSprite->pos2.x = 8; + playerSprite->x2 = 8; if (GetPlayerFacingDirection() == 3) - playerSprite->pos2.x = -8; + playerSprite->x2 = -8; } if (animType == 5) - playerSprite->pos2.y = -8; + playerSprite->y2 = -8; if (animType == 10 || animType == 11) - playerSprite->pos2.y = 8; + playerSprite->y2 = 8; if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) - SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, TRUE, playerSprite->pos2.y); + SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, TRUE, playerSprite->y2); } void SetSpinStartFacingDir(u8 direction) @@ -2090,8 +2090,8 @@ static void Task_DoPlayerSpinExit(u8 taskId) SetSpinStartFacingDir(object->facingDirection); tSpinDelayTimer = 0; tSpeed = 1; - tCurY = (u16)(sprite->pos1.y + sprite->pos2.y) << 4; - sprite->pos2.y = 0; + tCurY = (u16)(sprite->y + sprite->y2) << 4; + sprite->y2 = 0; CameraObjectReset2(); object->fixedPriority = TRUE; sprite->oam.priority = 0; @@ -2104,10 +2104,10 @@ static void Task_DoPlayerSpinExit(u8 taskId) // Rise and accelerate tCurY -= tSpeed; tSpeed += 3; - sprite->pos1.y = tCurY >> 4; + sprite->y = tCurY >> 4; // Check if offscreen - if (sprite->pos1.y + (s16)gTotalCameraPixelOffsetY < -32) + if (sprite->y + (s16)gTotalCameraPixelOffsetY < -32) tState++; break; case 2: @@ -2156,11 +2156,11 @@ static void Task_DoPlayerSpinEntrance(u8 taskId) ObjectEventForceSetHeldMovement(object, GetFaceDirectionMovementAction(sSpinDirections[tStartDir])); tSpinDelayTimer = 0; tSpeed = 116; - tDestY = sprite->pos1.y; + tDestY = sprite->y; tPriority = sprite->oam.priority; tSubpriority = sprite->subpriority; - tCurY = -((u16)sprite->pos2.y + 32) * 16; - sprite->pos2.y = 0; + tCurY = -((u16)sprite->y2 + 32) * 16; + sprite->y2 = 0; CameraObjectReset2(); object->fixedPriority = TRUE; sprite->oam.priority = 1; @@ -2175,12 +2175,12 @@ static void Task_DoPlayerSpinEntrance(u8 taskId) tSpeed -= 3; if (tSpeed < 4) tSpeed = 4; - sprite->pos1.y = tCurY >> 4; + sprite->y = tCurY >> 4; // Check if reached dest - if (sprite->pos1.y >= tDestY) + if (sprite->y >= tDestY) { - sprite->pos1.y = tDestY; + sprite->y = tDestY; tGroundTimer = 0; tState++; } diff --git a/src/field_specials.c b/src/field_specials.c index 13fad83b1f01..627e953307e2 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3117,8 +3117,8 @@ static void ShowFrontierExchangeCornerItemIcon(u16 item) if (sScrollableMultichoice_ItemSpriteId != MAX_SPRITES) { gSprites[sScrollableMultichoice_ItemSpriteId].oam.priority = 0; - gSprites[sScrollableMultichoice_ItemSpriteId].pos1.x = 36; - gSprites[sScrollableMultichoice_ItemSpriteId].pos1.y = 92; + gSprites[sScrollableMultichoice_ItemSpriteId].x = 36; + gSprites[sScrollableMultichoice_ItemSpriteId].y = 92; } } diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 0d1e6958cb88..0c3256ab754e 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -189,7 +189,7 @@ static void CreateCloudSprites(void) { gWeatherPtr->sprites.s1.cloudSprites[i] = &gSprites[spriteId]; sprite = gWeatherPtr->sprites.s1.cloudSprites[i]; - SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + 7, sCloudSpriteMapCoords[i].y + 7, &sprite->pos1.x, &sprite->pos1.y); + SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + 7, sCloudSpriteMapCoords[i].y + 7, &sprite->x, &sprite->y); sprite->coordOffsetEnabled = TRUE; } else @@ -223,7 +223,7 @@ static void UpdateCloudSprite(struct Sprite *sprite) // Move 1 pixel left every 2 frames. sprite->data[0] = (sprite->data[0] + 1) & 1; if (sprite->data[0]) - sprite->pos1.x--; + sprite->x--; } //------------------------------------------------------------------------------ @@ -593,12 +593,12 @@ static void UpdateRainSprite(struct Sprite *sprite) // Raindrop is in its "falling" motion. sprite->tPosX += sRainSpriteMovement[gWeatherPtr->isDownpour][0]; sprite->tPosY += sRainSpriteMovement[gWeatherPtr->isDownpour][1]; - sprite->pos1.x = sprite->tPosX >> 4; - sprite->pos1.y = sprite->tPosY >> 4; + sprite->x = sprite->tPosX >> 4; + sprite->y = sprite->tPosY >> 4; if (sprite->tActive - && (sprite->pos1.x >= -8 && sprite->pos1.x <= 248) - && sprite->pos1.y >= -16 && sprite->pos1.y <= 176) + && (sprite->x >= -8 && sprite->x <= 248) + && sprite->y >= -16 && sprite->y <= 176) sprite->invisible = FALSE; else sprite->invisible = TRUE; @@ -608,8 +608,8 @@ static void UpdateRainSprite(struct Sprite *sprite) // Make raindrop splash on the ground StartSpriteAnim(sprite, gWeatherPtr->isDownpour + 1); sprite->tState = 1; - sprite->pos1.x -= gSpriteCoordOffsetX; - sprite->pos1.y -= gSpriteCoordOffsetY; + sprite->x -= gSpriteCoordOffsetX; + sprite->y -= gSpriteCoordOffsetY; sprite->coordOffsetEnabled = TRUE; } } @@ -925,10 +925,10 @@ static void InitSnowflakeSpriteMovement(struct Sprite *sprite) u16 rand; u16 x = ((sprite->tSnowflakeId * 5) & 7) * 30 + (Random() % 30); - sprite->pos1.y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); - sprite->pos1.x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); - sprite->tPosY = sprite->pos1.y * 128; - sprite->pos2.x = 0; + sprite->y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); + sprite->x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); + sprite->tPosY = sprite->y * 128; + sprite->x2 = 0; rand = Random(); sprite->tDeltaY = (rand & 3) * 5 + 64; sprite->tDeltaY2 = sprite->tDeltaY; @@ -946,8 +946,8 @@ static void WaitSnowflakeSprite(struct Sprite *sprite) { sprite->invisible = FALSE; sprite->callback = UpdateSnowflakeSprite; - sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); - sprite->tPosY = sprite->pos1.y * 128; + sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); + sprite->tPosY = sprite->y * 128; gWeatherPtr->snowflakeTimer = 0; } } @@ -958,32 +958,32 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite) s16 y; sprite->tPosY += sprite->tDeltaY; - sprite->pos1.y = sprite->tPosY >> 7; + sprite->y = sprite->tPosY >> 7; sprite->tWaveIndex += sprite->tWaveDelta; sprite->tWaveIndex &= 0xFF; - sprite->pos2.x = gSineTable[sprite->tWaveIndex] / 64; + sprite->x2 = gSineTable[sprite->tWaveIndex] / 64; - x = (sprite->pos1.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX) & 0x1FF; + x = (sprite->x + sprite->centerToCornerVecX + gSpriteCoordOffsetX) & 0x1FF; if (x & 0x100) x |= -0x100; if (x < -3) - sprite->pos1.x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); + sprite->x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); else if (x > 242) - sprite->pos1.x = -3 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); + sprite->x = -3 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); - y = (sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY) & 0xFF; + y = (sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY) & 0xFF; if (y > 163 && y < 171) { - sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); - sprite->tPosY = sprite->pos1.y * 128; + sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); + sprite->tPosY = sprite->y * 128; sprite->tFallCounter = 0; sprite->tFallDuration = 220; } else if (y > 242 && y < 250) { - sprite->pos1.y = 163; - sprite->tPosY = sprite->pos1.y * 128; + sprite->y = 163; + sprite->tPosY = sprite->y * 128; sprite->tFallCounter = 0; sprite->tFallDuration = 220; sprite->invisible = TRUE; @@ -993,7 +993,7 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite) if (++sprite->tFallCounter == sprite->tFallDuration) { InitSnowflakeSpriteMovement(sprite); - sprite->pos1.y = 250; + sprite->y = 250; sprite->invisible = TRUE; sprite->callback = WaitSnowflakeSprite; } @@ -1441,12 +1441,12 @@ bool8 FogHorizontal_Finish(void) static void FogHorizontalSpriteCallback(struct Sprite *sprite) { - sprite->pos2.y = (u8)gSpriteCoordOffsetY; - sprite->pos1.x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64; - if (sprite->pos1.x > 271) + sprite->y2 = (u8)gSpriteCoordOffsetY; + sprite->x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64; + if (sprite->x > 271) { - sprite->pos1.x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64; - sprite->pos1.x &= 0x1FF; + sprite->x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64; + sprite->x &= 0x1FF; } } @@ -1471,8 +1471,8 @@ static void CreateFogHorizontalSprites(void) { sprite = &gSprites[spriteId]; sprite->tSpriteColumn = i % 5; - sprite->pos1.x = (i % 5) * 64 + 32; - sprite->pos1.y = (i / 5) * 64 + 32; + sprite->x = (i % 5) * 64 + 32; + sprite->y = (i / 5) * 64 + 32; gWeatherPtr->sprites.s2.fogHSprites[i] = sprite; } else @@ -1700,12 +1700,12 @@ static void UpdateAshSprite(struct Sprite *sprite) sprite->tOffsetY++; } - sprite->pos1.y = gSpriteCoordOffsetY + sprite->tOffsetY; - sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->pos1.x > 271) + sprite->y = gSpriteCoordOffsetY + sprite->tOffsetY; + sprite->x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64; + if (sprite->x > 271) { - sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; - sprite->pos1.x &= 0x1FF; + sprite->x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x &= 0x1FF; } } @@ -1910,12 +1910,12 @@ static void DestroyFogDiagonalSprites(void) static void UpdateFogDiagonalSprite(struct Sprite *sprite) { - sprite->pos2.y = gWeatherPtr->fogDPosY; - sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->pos1.x > 271) + sprite->y2 = gWeatherPtr->fogDPosY; + sprite->x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64; + if (sprite->x > 271) { - sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; - sprite->pos1.x &= 0x1FF; + sprite->x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x &= 0x1FF; } } @@ -2186,12 +2186,12 @@ static void CreateSwirlSandstormSprites(void) static void UpdateSandstormSprite(struct Sprite *sprite) { - sprite->pos2.y = gWeatherPtr->sandstormPosY; - sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->pos1.x > 271) + sprite->y2 = gWeatherPtr->sandstormPosY; + sprite->x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64; + if (sprite->x > 271) { - sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; - sprite->pos1.x &= 0x1FF; + sprite->x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x &= 0x1FF; } } @@ -2205,16 +2205,16 @@ static void UpdateSandstormSwirlSprite(struct Sprite *sprite) { u32 x, y; - if (--sprite->pos1.y < -48) + if (--sprite->y < -48) { - sprite->pos1.y = 208; + sprite->y = 208; sprite->tRadius = 4; } x = sprite->tRadius * gSineTable[sprite->tWaveIndex]; y = sprite->tRadius * gSineTable[sprite->tWaveIndex + 0x40]; - sprite->pos2.x = x >> 8; - sprite->pos2.y = y >> 8; + sprite->x2 = x >> 8; + sprite->y2 = y >> 8; sprite->tWaveIndex = (sprite->tWaveIndex + 10) & 0xFF; if (++sprite->tRadiusCounter > 8) { @@ -2404,17 +2404,17 @@ static void UpdateBubbleSprite(struct Sprite *sprite) sprite->tScrollXCounter = 0; if (sprite->tScrollXDir == 0) { - if (++sprite->pos2.x > 4) + if (++sprite->x2 > 4) sprite->tScrollXDir = 1; } else { - if (--sprite->pos2.x <= 0) + if (--sprite->x2 <= 0) sprite->tScrollXDir = 0; } } - sprite->pos1.y -= 3; + sprite->y -= 3; if (++sprite->tCounter >= 120) DestroySprite(sprite); } diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 044e25a8fbf8..164f9507b5c3 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -555,8 +555,8 @@ static void CutGrassSpriteCallback1(struct Sprite *sprite) static void CutGrassSpriteCallback2(struct Sprite *sprite) { - sprite->pos2.x = Sin(sprite->data[2], sprite->data[0]); - sprite->pos2.y = Cos(sprite->data[2], sprite->data[0]); + sprite->x2 = Sin(sprite->data[2], sprite->data[0]); + sprite->y2 = Cos(sprite->data[2], sprite->data[0]); sprite->data[2] = (sprite->data[2] + 8) & 0xFF; sprite->data[0] += 1 + (sprite->data[3] >> 2); // right shift by 2 is dividing by 4 diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index 3d3b83fefc8f..9a76ed744053 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -1297,10 +1297,10 @@ u8 CreateRecordMixingLights(void) else { struct Sprite *sprite = &gSprites[spriteId]; - GetMapCoordsFromSpritePos(16, 13, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(16, 13, &sprite->x, &sprite->y); sprite->coordOffsetEnabled = TRUE; - sprite->pos1.x += 16; - sprite->pos1.y += 2; + sprite->x += 16; + sprite->y += 2; } return spriteId; } diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 4081aaabf11b..22a7695f254b 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -928,8 +928,8 @@ static bool32 TryCallPassAreaFunction(u8 taskId, u8 cursorArea) return FALSE; } - sPassData->cursorX = sPassGfx->cursorSprite->pos1.x; - sPassData->cursorY = sPassGfx->cursorSprite->pos1.y; + sPassData->cursorX = sPassGfx->cursorSprite->x; + sPassData->cursorY = sPassGfx->cursorSprite->y; return TRUE; } @@ -937,33 +937,33 @@ static void Task_HandleFrontierPassInput(u8 taskId) { u8 var = FALSE; // Reused, first informs whether the cursor moves, then used as the new cursor area. - if (JOY_HELD(DPAD_UP) && sPassGfx->cursorSprite->pos1.y >= 9) + if (JOY_HELD(DPAD_UP) && sPassGfx->cursorSprite->y >= 9) { - sPassGfx->cursorSprite->pos1.y -= 2; - if (sPassGfx->cursorSprite->pos1.y <= 7) - sPassGfx->cursorSprite->pos1.y = 2; + sPassGfx->cursorSprite->y -= 2; + if (sPassGfx->cursorSprite->y <= 7) + sPassGfx->cursorSprite->y = 2; var = TRUE; } - if (JOY_HELD(DPAD_DOWN) && sPassGfx->cursorSprite->pos1.y <= 135) + if (JOY_HELD(DPAD_DOWN) && sPassGfx->cursorSprite->y <= 135) { - sPassGfx->cursorSprite->pos1.y += 2; - if (sPassGfx->cursorSprite->pos1.y >= 137) - sPassGfx->cursorSprite->pos1.y = 136; + sPassGfx->cursorSprite->y += 2; + if (sPassGfx->cursorSprite->y >= 137) + sPassGfx->cursorSprite->y = 136; var = TRUE; } - if (JOY_HELD(DPAD_LEFT) && sPassGfx->cursorSprite->pos1.x >= 6) + if (JOY_HELD(DPAD_LEFT) && sPassGfx->cursorSprite->x >= 6) { - sPassGfx->cursorSprite->pos1.x -= 2; - if (sPassGfx->cursorSprite->pos1.x <= 4) - sPassGfx->cursorSprite->pos1.x = 5; + sPassGfx->cursorSprite->x -= 2; + if (sPassGfx->cursorSprite->x <= 4) + sPassGfx->cursorSprite->x = 5; var = TRUE; } - if (JOY_HELD(DPAD_RIGHT) && sPassGfx->cursorSprite->pos1.x <= 231) + if (JOY_HELD(DPAD_RIGHT) && sPassGfx->cursorSprite->x <= 231) { - sPassGfx->cursorSprite->pos1.x += 2; - if (sPassGfx->cursorSprite->pos1.x >= 233) - sPassGfx->cursorSprite->pos1.x = 232; + sPassGfx->cursorSprite->x += 2; + if (sPassGfx->cursorSprite->x >= 233) + sPassGfx->cursorSprite->x = 232; var = TRUE; } @@ -998,7 +998,7 @@ static void Task_HandleFrontierPassInput(u8 taskId) } else { - var = GetCursorAreaFromCoords(sPassGfx->cursorSprite->pos1.x - 5, sPassGfx->cursorSprite->pos1.y + 5); + var = GetCursorAreaFromCoords(sPassGfx->cursorSprite->x - 5, sPassGfx->cursorSprite->y + 5); if (sPassData->cursorArea != var) { PrintAreaDescription(var); @@ -1475,7 +1475,7 @@ static void Task_HandleFrontierMap(u8 taskId) } else { - sMapData->cursorSprite->pos1.y += 4; + sMapData->cursorSprite->y += 4; data[1]++; } return; @@ -1488,7 +1488,7 @@ static void Task_HandleFrontierMap(u8 taskId) } else { - sMapData->cursorSprite->pos1.y -= 4; + sMapData->cursorSprite->y -= 4; data[1]++; } return; @@ -1670,11 +1670,11 @@ static void HandleFrontierMapCursorMove(u8 direction) AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (oldCursorPos * 16) + 1, sTextColors[1], 0, sMapLandmarks[oldCursorPos].name); AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (sMapData->cursorPos * 16) + 1, sTextColors[2], 0, sMapLandmarks[sMapData->cursorPos].name); - sMapData->cursorSprite->pos1.y = (sMapData->cursorPos * 16) + 8; + sMapData->cursorSprite->y = (sMapData->cursorPos * 16) + 8; StartSpriteAnim(sMapData->mapIndicatorSprite, sMapLandmarks[sMapData->cursorPos].animNum); - sMapData->mapIndicatorSprite->pos1.x = sMapLandmarks[sMapData->cursorPos].x; - sMapData->mapIndicatorSprite->pos1.y = sMapLandmarks[sMapData->cursorPos].y; + sMapData->mapIndicatorSprite->x = sMapLandmarks[sMapData->cursorPos].x; + sMapData->mapIndicatorSprite->y = sMapLandmarks[sMapData->cursorPos].y; FillWindowPixelBuffer(MAP_WINDOW_DESCRIPTION, PIXEL_FILL(0)); AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, 1, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 3eb8d3f0ad61..bfe4beb947a3 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -712,9 +712,9 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId) { gTasks[taskId].tFrameCount--; } - else if (gSprites[gTasks[taskId].tPlayerSpriteID].pos1.x != 192) + else if (gSprites[gTasks[taskId].tPlayerSpriteID].x != 192) { - gSprites[gTasks[taskId].tPlayerSpriteID].pos1.x++; + gSprites[gTasks[taskId].tPlayerSpriteID].x++; } else { @@ -1340,18 +1340,18 @@ static bool8 sub_8175024(void) static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite) { - if (sprite->pos1.x != sprite->tDestinationX - || sprite->pos1.y != sprite->tDestinationY) + if (sprite->x != sprite->tDestinationX + || sprite->y != sprite->tDestinationY) { - if (sprite->pos1.x < sprite->tDestinationX) - sprite->pos1.x += 15; - if (sprite->pos1.x > sprite->tDestinationX) - sprite->pos1.x -= 15; - - if (sprite->pos1.y < sprite->tDestinationY) - sprite->pos1.y += 10; - if (sprite->pos1.y > sprite->tDestinationY) - sprite->pos1.y -= 10; + if (sprite->x < sprite->tDestinationX) + sprite->x += 15; + if (sprite->x > sprite->tDestinationX) + sprite->x -= 15; + + if (sprite->y < sprite->tDestinationY) + sprite->y += 10; + if (sprite->y > sprite->tDestinationY) + sprite->y -= 10; } else { @@ -1373,7 +1373,7 @@ static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite) static void SpriteCB_HofConfetti(struct Sprite* sprite) { - if (sprite->pos2.y > 120) + if (sprite->y2 > 120) { DestroySprite(sprite); } @@ -1382,12 +1382,12 @@ static void SpriteCB_HofConfetti(struct Sprite* sprite) u16 rand; u8 sineIdx; - sprite->pos2.y++; - sprite->pos2.y += sprite->sExtraY; + sprite->y2++; + sprite->y2 += sprite->sExtraY; sineIdx = sprite->sSineIdx; rand = (Random() % 4) + 8; - sprite->pos2.x = rand * gSineTable[sineIdx] / 256; + sprite->x2 = rand * gSineTable[sineIdx] / 256; sprite->sSineIdx += 4; } diff --git a/src/intro.c b/src/intro.c index 1477b67a13c7..9fe9169da858 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1490,8 +1490,8 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) sprite->sState++; // fallthrough case VOLBEAT_ENTER: - sprite->pos1.x -= 4; - if (sprite->pos1.x == 60) + sprite->x -= 4; + if (sprite->x == 60) { sprite->sState = VOLBEAT_WAIT_STATE; sprite->sStateDelay = 20; @@ -1499,9 +1499,9 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) } break; case VOLBEAT_ZIP_BACKWARD: - sprite->pos1.x += 8; - sprite->pos1.y -= 2; - if (sprite->pos1.x == 124) + sprite->x += 8; + sprite->y -= 2; + if (sprite->x == 124) { sprite->sState = VOLBEAT_WAIT_STATE; sprite->sStateDelay = 20; @@ -1509,8 +1509,8 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) } break; case VOLBEAT_ZIP_DOWN: - sprite->pos1.y += 4; - if (sprite->pos1.y == 80) + sprite->y += 4; + if (sprite->y == 80) { sprite->sState = VOLBEAT_WAIT_STATE; sprite->sStateDelay = 10; @@ -1518,9 +1518,9 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) } break; case VOLBEAT_ZIP_FORWARD: - sprite->pos1.x -= 8; - sprite->pos1.y -= 2; - if (sprite->pos1.x == 60) + sprite->x -= 8; + sprite->y -= 2; + if (sprite->x == 60) { sprite->sState = VOLBEAT_WAIT_STATE; sprite->sStateDelay = 10; @@ -1528,15 +1528,15 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) } break; case VOLBEAT_INIT_FIGURE_8: - sprite->pos1.x += 60; + sprite->x += 60; sprite->sSinXIdx = 0xC0; sprite->sSinYIdx = 0x80; sprite->sFig8Loops = 3; sprite->sState++; // fallthrough case VOLBEAT_FIGURE_8: - sprite->pos2.x = Sin((u8)sprite->sSinXIdx, 0x3C); - sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14); + sprite->x2 = Sin((u8)sprite->sSinXIdx, 0x3C); + sprite->y2 = Sin((u8)sprite->sSinYIdx, 0x14); sprite->sSinXIdx += 2; sprite->sSinYIdx += 4; if ((sprite->sSinXIdx & 0xFF) == 64) @@ -1544,22 +1544,22 @@ static void SpriteCB_Volbeat(struct Sprite *sprite) sprite->hFlip = FALSE; if (--sprite->sFig8Loops == 0) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->x2 = 0; sprite->sState++; } } break; case VOLBEAT_EXIT: - sprite->pos1.x -= 2; - sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14); + sprite->x -= 2; + sprite->y2 = Sin((u8)sprite->sSinYIdx, 0x14); sprite->sSinYIdx += 4; - if (sprite->pos1.x < -16) + if (sprite->x < -16) DestroySprite(sprite); break; case VOLBEAT_WAIT_STATE: // Wait for state progression, fly idly until then - sprite->pos2.y = Cos((u8)sprite->sCosYIdx, 2); + sprite->y2 = Cos((u8)sprite->sCosYIdx, 2); if (!--sprite->sStateDelay) sprite->sState = sprite->sNextState; break; @@ -1598,7 +1598,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite) sprite->sMoveTimer += 64; if (sprite->sMoveTimer & 0xFF00) { - sprite->pos1.x--; + sprite->x--; sprite->sMoveTimer &= 0xFF; } } @@ -1609,7 +1609,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite) sprite->sMoveTimer += 32; if (sprite->sMoveTimer & 0xFF00) { - sprite->pos1.x++; + sprite->x++; sprite->sMoveTimer &= 0xFF; } } @@ -1626,7 +1626,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite) sprite->sMoveTimer += 64; if (sprite->sMoveTimer & 0xFF00) { - sprite->pos1.x--; + sprite->x--; sprite->sMoveTimer &= 0xFF; } } @@ -1638,9 +1638,9 @@ static void SpriteCB_Torchic(struct Sprite *sprite) break; case 4: if (sprite->animEnded) - sprite->pos1.x += 4; + sprite->x += 4; - if (sprite->pos1.x > 336) + if (sprite->x > 336) { StartSpriteAnim(sprite, TORCHIC_ANIM_RUN); sprite->sState++; @@ -1648,7 +1648,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite) break; case 5: if (gIntroFrameCounter >= TIMER_TORCHIC_EXIT) - sprite->pos1.x -= 2; + sprite->x -= 2; break; } } @@ -1668,18 +1668,18 @@ static void SpriteCB_Manectric(struct Sprite *sprite) sprite->sState++; break; case 1: - sprite->pos1.x -= 2; + sprite->x -= 2; if (gIntroFrameCounter != TIMER_MANECTRIC_RUN_CIRCULAR) break; // Initialize circular pattern running - sprite->pos1.y -= 12; + sprite->y -= 12; sprite->sSinIdx = 0x80; sprite->sCosIdx = 0; sprite->sState++; // fallthrough case 2: - if (sprite->pos1.x + sprite->pos2.x <= -32) + if (sprite->x + sprite->x2 <= -32) { // Manectric is offscreen now, destroy it DestroySprite(sprite); @@ -1689,16 +1689,16 @@ static void SpriteCB_Manectric(struct Sprite *sprite) // Run in circular pattern if ((sprite->sSinIdx & 0xFF) < 64) { - sprite->pos2.x = Sin((u8)sprite->sSinIdx, 16); + sprite->x2 = Sin((u8)sprite->sSinIdx, 16); } else { if ((sprite->sSinIdx & 0xFF) == 64) - sprite->pos1.x -= 48; - sprite->pos2.x = Sin((u8)sprite->sSinIdx, 64); + sprite->x -= 48; + sprite->x2 = Sin((u8)sprite->sSinIdx, 64); } sprite->sSinIdx++; - sprite->pos2.y = Cos((u8)sprite->sCosIdx, 12); + sprite->y2 = Cos((u8)sprite->sCosIdx, 12); sprite->sCosIdx++; } break; @@ -2001,14 +2001,14 @@ static void SpriteCB_GroudonRocks(struct Sprite *sprite) // Introduce some wobble to the floating sprite->sTimer++; if (sprite->sTimer % 2 == 0) - sprite->pos2.y ^= 3; + sprite->y2 ^= 3; switch(sprite->sState) { case 0: // Rock floats up sprite->sSpeed += sGroudonRockData[sprite->sRockId][2]; - sprite->pos1.y -= (sprite->sSpeed & 0xFF00) >> 8; + sprite->y -= (sprite->sSpeed & 0xFF00) >> 8; sprite->sSpeed &= 0xFF; // Check if Groudon scene is ending @@ -2017,15 +2017,15 @@ static void SpriteCB_GroudonRocks(struct Sprite *sprite) break; case 1: // Scene zooms in, move rock offscreen - if (sprite->pos1.x < DISPLAY_WIDTH / 2) - sprite->pos1.x -= 2; + if (sprite->x < DISPLAY_WIDTH / 2) + sprite->x -= 2; else - sprite->pos1.x += 2; + sprite->x += 2; - if (sprite->pos1.y < DISPLAY_HEIGHT / 2) - sprite->pos1.y -= 2; + if (sprite->y < DISPLAY_HEIGHT / 2) + sprite->y -= 2; else - sprite->pos1.y += 2; + sprite->y += 2; break; } } @@ -2275,9 +2275,9 @@ static void SpriteCB_KyogreBubbles(struct Sprite *sprite) { // Animation has started, float bubbles up sprite->sSinIdx = (sprite->sSinIdx + 11) & 0xFF; - sprite->pos2.x = Sin(sprite->sSinIdx, 4); + sprite->x2 = Sin(sprite->sSinIdx, 4); sprite->sBaseY += 48; - sprite->pos2.y = -(sprite->sBaseY >> 8); + sprite->y2 = -(sprite->sBaseY >> 8); if (sprite->animEnded) DestroySprite(sprite); } @@ -2295,17 +2295,17 @@ static void SpriteCB_KyogreBubbles(struct Sprite *sprite) break; case 1: // Scene zooms in, move bubbles offscreen - if (sprite->pos1.x < DISPLAY_WIDTH / 2) - sprite->pos1.x -= 3; + if (sprite->x < DISPLAY_WIDTH / 2) + sprite->x -= 3; else - sprite->pos1.x += 3; + sprite->x += 3; - if (sprite->pos1.y < DISPLAY_HEIGHT / 2) - sprite->pos1.y -= 3; + if (sprite->y < DISPLAY_HEIGHT / 2) + sprite->y -= 3; else - sprite->pos1.y += 3; + sprite->y += 3; - if ((u16)(sprite->pos1.y - 20) > DISPLAY_HEIGHT - 20) + if ((u16)(sprite->y - 20) > DISPLAY_HEIGHT - 20) DestroySprite(sprite); break; } @@ -2853,8 +2853,8 @@ static void SpriteCB_WaterDropHalf(struct Sprite *sprite) if (gSprites[sprite->data[7]].data[7] != 0) { sprite->invisible = TRUE; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; + sprite->x += sprite->x2; + sprite->y += sprite->y2; StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); @@ -2865,10 +2865,10 @@ static void SpriteCB_WaterDropHalf(struct Sprite *sprite) } else { - sprite->pos2.x = gSprites[sprite->data[7]].pos2.x; - sprite->pos2.y = gSprites[sprite->data[7]].pos2.y; - sprite->pos1.x = gSprites[sprite->data[7]].pos1.x; - sprite->pos1.y = gSprites[sprite->data[7]].pos1.y; + sprite->x2 = gSprites[sprite->data[7]].x2; + sprite->y2 = gSprites[sprite->data[7]].y2; + sprite->x = gSprites[sprite->data[7]].x; + sprite->y = gSprites[sprite->data[7]].y; } } @@ -2881,12 +2881,12 @@ static void SpriteCB_WaterDrop(struct Sprite *sprite) static void SpriteCB_WaterDrop_Slide(struct Sprite *sprite) { - if (sprite->pos1.x <= 116) + if (sprite->x <= 116) { - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos1.x += 4; - sprite->pos2.x = -4; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x += 4; + sprite->x2 = -4; sprite->data[4] = 128; sprite->callback = SpriteCB_WaterDrop_ReachLeafEnd; } @@ -2909,10 +2909,10 @@ static void SpriteCB_WaterDrop_Slide(struct Sprite *sprite) sin1 = gSineTable[(u8)data4]; sin2 = gSineTable[(u8)(data4 + 64)]; sprite->data[4] += 2; - sprite->pos2.y = sin1 / 32; - sprite->pos1.x--; - if (sprite->pos1.x & 1) - sprite->pos1.y++; + sprite->y2 = sin1 / 32; + sprite->x--; + if (sprite->x & 1) + sprite->y++; temp = -sin2 / 16; data2 = sprite->data[2]; data3 = sprite->data[3]; @@ -2938,8 +2938,8 @@ static void SpriteCB_WaterDrop_ReachLeafEnd(struct Sprite *sprite) u16 sinIdx; sprite->data[4] -= 8; sinIdx = sprite->data[4]; - sprite->pos2.x = gSineTable[(u8)(sinIdx + 64)] / 64; - sprite->pos2.y = gSineTable[(u8)sinIdx] / 64; + sprite->x2 = gSineTable[(u8)(sinIdx + 64)] / 64; + sprite->y2 = gSineTable[(u8)sinIdx] / 64; } else { @@ -2956,8 +2956,8 @@ static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *sprite) sprite->data[4] += 8; r2 = gSineTable[(u8)sprite->data[4]] / 16 + 64; - sprite->pos2.x = gSineTable[(u8)(r2 + 64)] / 64; - sprite->pos2.y = gSineTable[(u8)r2] / 64; + sprite->x2 = gSineTable[(u8)(r2 + 64)] / 64; + sprite->y2 = gSineTable[(u8)r2] / 64; } else { @@ -2967,16 +2967,16 @@ static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *sprite) static void SpriteCB_WaterDrop_Fall(struct Sprite *sprite) { - if (sprite->pos1.y < sprite->data[5]) + if (sprite->y < sprite->data[5]) { - sprite->pos1.y += 4; + sprite->y += 4; } else { sprite->data[7] = 1; sprite->invisible = TRUE; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; + sprite->x += sprite->x2; + sprite->y += sprite->y2; StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); @@ -2991,16 +2991,16 @@ static void SpriteCB_WaterDrop_Fall(struct Sprite *sprite) // Used by the 2nd and 3rd water drops to skip the leaf slide static void SpriteCB_WaterDropShort(struct Sprite *sprite) { - if (sprite->pos1.y < sprite->data[5]) + if (sprite->y < sprite->data[5]) { - sprite->pos1.y += 4; + sprite->y += 4; } else { sprite->data[7] = 1; sprite->invisible = TRUE; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; + sprite->x += sprite->x2; + sprite->y += sprite->y2; StartSpriteAnim(sprite, DROP_ANIM_RIPPLE); sprite->data[2] = 1024; sprite->data[3] = 8 * (sprite->data[1] & 3); @@ -3071,27 +3071,27 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite) case 0: // Move forwards StartSpriteAnimIfDifferent(sprite, 0); - sprite->pos1.x--; + sprite->x--; break; case 1: // Drift backwards slowly StartSpriteAnimIfDifferent(sprite, 0); if (gIntroFrameCounter & 7) return; - sprite->pos1.x++; + sprite->x++; break; case 2: // Move backwards - if (sprite->pos1.x <= 120 || gIntroFrameCounter & 7) - sprite->pos1.x++; + if (sprite->x <= 120 || gIntroFrameCounter & 7) + sprite->x++; break; case 3: // Bike in place break; case 4: // Exit to the left - if (sprite->pos1.x > -32) - sprite->pos1.x -= 2; + if (sprite->x > -32) + sprite->x -= 2; break; } @@ -3099,10 +3099,10 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite) return; // Adjust y position - if (sprite->pos2.y != 0) + if (sprite->y2 != 0) { // Return to neutral after wobble - sprite->pos2.y = 0; + sprite->y2 = 0; } else { @@ -3110,14 +3110,14 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite) switch (Random() & 3) { case 0: - sprite->pos2.y = -1; + sprite->y2 = -1; break; case 1: - sprite->pos2.y = 1; + sprite->y2 = 1; break; case 2: case 3: - sprite->pos2.y = 0; + sprite->y2 = 0; break; } } @@ -3133,23 +3133,23 @@ static void SpriteCB_Flygon(struct Sprite *sprite) case 0: break; case 1: - if (sprite->pos2.x + sprite->pos1.x < DISPLAY_WIDTH + 64) - sprite->pos2.x += 8; + if (sprite->x2 + sprite->x < DISPLAY_WIDTH + 64) + sprite->x2 += 8; else sprite->sState = 2; break; case 2: - if (sprite->pos2.x + sprite->pos1.x > 120) - sprite->pos2.x -= 1; + if (sprite->x2 + sprite->x > 120) + sprite->x2 -= 1; else sprite->sState = 3; break; case 3: - if (sprite->pos2.x > 0) - sprite->pos2.x -= 2; + if (sprite->x2 > 0) + sprite->x2 -= 2; break; } - sprite->pos2.y = Sin((u8)sprite->sSinIdx, 8) - sFlygonYOffset; + sprite->y2 = Sin((u8)sprite->sSinIdx, 8) - sFlygonYOffset; sprite->sSinIdx += 4; } @@ -3249,12 +3249,12 @@ static void SpriteCB_LogoLetter(struct Sprite *sprite) case 5: // Spread the letters out as they grow sprite->sLetterX += sGameFreakLettersMoveSpeed[sprite->sLetterId]; - sprite->pos2.x = (sprite->sLetterX & 0xFF00) >> 8; + sprite->x2 = (sprite->sLetterX & 0xFF00) >> 8; if (sprite->sLetterId < 4) { // Is in first 4 letters, i.e. "Game" - s16 temp = sprite->pos2.x; - sprite->pos2.x = -temp; + s16 temp = sprite->x2; + sprite->x2 = -temp; } if (sprite->affineAnimEnded) DestroySprite(sprite); @@ -3358,24 +3358,24 @@ static void SpriteCB_FlygonSilhouette(struct Sprite *sprite) sprite->data[3] = 0; break; case 1: - sprite->pos2.x = -Sin((u8)sprite->data[3], 140); - sprite->pos2.y = -Sin((u8)sprite->data[3], 120); + sprite->x2 = -Sin((u8)sprite->data[3], 140); + sprite->y2 = -Sin((u8)sprite->data[3], 120); sprite->data[1] += 7; sprite->data[3] += 3; - if (sprite->pos1.x + sprite->pos2.x <= -16) + if (sprite->x + sprite->x2 <= -16) { sprite->oam.priority = 3; sprite->sState++; - sprite->pos1.x = 20; - sprite->pos1.y = 40; + sprite->x = 20; + sprite->y = 40; sprite->data[1] = 0x200; sprite->data[2] = 0; sprite->data[3] = 0x10; } break; case 2: - sprite->pos2.x = Sin((u8)sprite->data[3], 34); - sprite->pos2.y = -Cos((u8)sprite->data[3], 60); + sprite->x2 = Sin((u8)sprite->data[3], 34); + sprite->y2 = -Cos((u8)sprite->data[3], 60); sprite->data[1] += 2; if (sprite->data[7] % 5 == 0) sprite->data[3]++; diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index 1f196b268d40..bceddd9b7043 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -1048,15 +1048,15 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite) DestroySprite(sprite); break; case INTROCRED_SCENERY_NORMAL: - x = ((sprite->pos1.x << 16) | (u16)sprite->tXPos) + (u16)sprite->tXOffset; - sprite->pos1.x = x >> 16; + x = ((sprite->x << 16) | (u16)sprite->tXPos) + (u16)sprite->tXOffset; + sprite->x = x >> 16; sprite->tXPos = x; - if (sprite->pos1.x > 255) - sprite->pos1.x = -32; + if (sprite->x > 255) + sprite->x = -32; if (sprite->tHasVerticalMove) - sprite->pos2.y = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); + sprite->y2 = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset); else - sprite->pos2.y = -gIntroCredits_MovingSceneryVBase; + sprite->y2 = -gIntroCredits_MovingSceneryVBase; break; } } @@ -1110,10 +1110,10 @@ static void SpriteCB_Player(struct Sprite *sprite) static void SpriteCB_Bicycle(struct Sprite* sprite) { sprite->invisible = gSprites[sprite->sPlayerSpriteId].invisible; - sprite->pos1.x = gSprites[sprite->sPlayerSpriteId].pos1.x; - sprite->pos1.y = gSprites[sprite->sPlayerSpriteId].pos1.y + 8; - sprite->pos2.x = gSprites[sprite->sPlayerSpriteId].pos2.x; - sprite->pos2.y = gSprites[sprite->sPlayerSpriteId].pos2.y; + sprite->x = gSprites[sprite->sPlayerSpriteId].x; + sprite->y = gSprites[sprite->sPlayerSpriteId].y + 8; + sprite->x2 = gSprites[sprite->sPlayerSpriteId].x2; + sprite->y2 = gSprites[sprite->sPlayerSpriteId].y2; } u8 CreateIntroBrendanSprite(s16 x, s16 y) @@ -1143,9 +1143,9 @@ static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite) static void SpriteCB_FlygonRightHalf(struct Sprite* sprite) { sprite->invisible = gSprites[sprite->sLeftSpriteId].invisible; - sprite->pos1.y = gSprites[sprite->sLeftSpriteId].pos1.y; - sprite->pos2.x = gSprites[sprite->sLeftSpriteId].pos2.x; - sprite->pos2.y = gSprites[sprite->sLeftSpriteId].pos2.y; + sprite->y = gSprites[sprite->sLeftSpriteId].y; + sprite->x2 = gSprites[sprite->sLeftSpriteId].x2; + sprite->y2 = gSprites[sprite->sLeftSpriteId].y2; } // In RS these were for Latios/Latias. In Emerald both are replaced with Flygon and now only 1 is used diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index d15409226954..7f6acd60f633 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -432,7 +432,7 @@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets) struct Sprite *sprite = &gSprites[gBagMenu->spriteId[0]]; if (isSwitchingPockets) { - sprite->pos2.y = -5; + sprite->y2 = -5; sprite->callback = SpriteCB_BagVisualSwitchingPockets; sprite->data[0] = bagPocketId + 1; StartSpriteAnim(sprite, 0); @@ -445,9 +445,9 @@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets) static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite) { - if (sprite->pos2.y != 0) + if (sprite->y2 != 0) { - sprite->pos2.y++; + sprite->y2++; } else { @@ -526,8 +526,8 @@ void AddBagItemIconSprite(u16 itemId, u8 id) if (iconSpriteId != MAX_SPRITES) { *spriteId = iconSpriteId; - gSprites[iconSpriteId].pos2.x = 24; - gSprites[iconSpriteId].pos2.y = 88; + gSprites[iconSpriteId].x2 = 24; + gSprites[iconSpriteId].y2 = 88; } } } diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index f47167873740..251b4792ddf2 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -880,8 +880,8 @@ void UpdateWirelessStatusIndicatorSprite(void) sprite->sFrameDelay++; } gMain.oamBuffer[125] = sWirelessStatusIndicatorOamData; - gMain.oamBuffer[125].x = sprite->pos1.x + sprite->centerToCornerVecX; - gMain.oamBuffer[125].y = sprite->pos1.y + sprite->centerToCornerVecY; + gMain.oamBuffer[125].x = sprite->x + sprite->centerToCornerVecX; + gMain.oamBuffer[125].y = sprite->y + sprite->centerToCornerVecY; gMain.oamBuffer[125].paletteNum = sprite->oam.paletteNum; gMain.oamBuffer[125].tileNum = sprite->sTileStart + sprite->anims[sprite->sCurrAnimNum][sprite->sFrameIdx].frame.imageValue; CpuCopy16(gMain.oamBuffer + 125, (struct OamData *)OAM + 125, sizeof(struct OamData)); diff --git a/src/list_menu.c b/src/list_menu.c index 9ac9b87abb12..83c9acd669b0 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -1024,11 +1024,11 @@ static void SpriteCallback_ScrollIndicatorArrow(struct Sprite *sprite) { case 0: multiplier = sprite->tMultiplier; - sprite->pos2.x = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; + sprite->x2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; break; case 1: multiplier = sprite->tMultiplier; - sprite->pos2.y = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; + sprite->y2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; break; } sprite->tSinePos += sprite->tFrequency; @@ -1364,8 +1364,8 @@ static void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y) { struct RedOutlineCursor *data = (void*) gTasks[taskId].data; - gSprites[data->spriteId].pos1.x = x + 120; - gSprites[data->spriteId].pos1.y = y + 120; + gSprites[data->spriteId].x = x + 120; + gSprites[data->spriteId].y = y + 120; } static void ListMenuRemoveRedOutlineCursorObject(u8 taskId) @@ -1385,7 +1385,7 @@ static void ListMenuRemoveRedOutlineCursorObject(u8 taskId) static void SpriteCallback_RedArrowCursor(struct Sprite *sprite) { - sprite->pos2.x = gSineTable[(u8)(sprite->data[0])] / 64; + sprite->x2 = gSineTable[(u8)(sprite->data[0])] / 64; sprite->data[0] += 8; } @@ -1429,8 +1429,8 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) spriteTemplate.paletteTag = cursor->palTag; data->spriteId = CreateSprite(&spriteTemplate, cursor->left, cursor->top, 0); - gSprites[data->spriteId].pos2.x = 8; - gSprites[data->spriteId].pos2.y = 8; + gSprites[data->spriteId].x2 = 8; + gSprites[data->spriteId].y2 = 8; if (cursor->palTag == SPRITE_INVALID_TAG) { @@ -1444,8 +1444,8 @@ static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y) { struct RedArrowCursor *data = (void*) gTasks[taskId].data; - gSprites[data->spriteId].pos1.x = x; - gSprites[data->spriteId].pos1.y = y; + gSprites[data->spriteId].x = x; + gSprites[data->spriteId].y = y; } static void ListMenuRemoveRedArrowCursorObject(u8 taskId) diff --git a/src/main_menu.c b/src/main_menu.c index 38e7648d0114..ec5a3785fda0 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1306,8 +1306,8 @@ static void Task_NewGameBirchSpeech_WaitToShowBirch(u8 taskId) else { spriteId = gTasks[taskId].tBirchSpriteId; - gSprites[spriteId].pos1.x = 136; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = 136; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; NewGameBirchSpeech_StartFadeInTarget1OutTarget2(taskId, 10); @@ -1369,8 +1369,8 @@ static void Task_NewGameBirchSpeechSub_InitPokeBall(u8 taskId) { u8 spriteId = gTasks[sBirchSpeechMainTaskId].tLotadSpriteId; - gSprites[spriteId].pos1.x = 100; - gSprites[spriteId].pos1.y = 75; + gSprites[spriteId].x = 100; + gSprites[spriteId].y = 75; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].data[0] = 0; @@ -1459,8 +1459,8 @@ static void Task_NewGameBirchSpeech_StartPlayerFadeIn(u8 taskId) { u8 spriteId = gTasks[taskId].tBrendanSpriteId; - gSprites[spriteId].pos1.x = 180; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = 180; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; gTasks[taskId].tPlayerSpriteId = spriteId; @@ -1533,7 +1533,7 @@ static void Task_NewGameBirchSpeech_SlideOutOldGenderSprite(u8 taskId) u8 spriteId = gTasks[taskId].tPlayerSpriteId; if (gTasks[taskId].tIsDoneFadingSprites == 0) { - gSprites[spriteId].pos1.x += 4; + gSprites[spriteId].x += 4; } else { @@ -1542,8 +1542,8 @@ static void Task_NewGameBirchSpeech_SlideOutOldGenderSprite(u8 taskId) spriteId = gTasks[taskId].tMaySpriteId; else spriteId = gTasks[taskId].tBrendanSpriteId; - gSprites[spriteId].pos1.x = DISPLAY_WIDTH; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = DISPLAY_WIDTH; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gTasks[taskId].tPlayerSpriteId = spriteId; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; @@ -1556,13 +1556,13 @@ static void Task_NewGameBirchSpeech_SlideInNewGenderSprite(u8 taskId) { u8 spriteId = gTasks[taskId].tPlayerSpriteId; - if (gSprites[spriteId].pos1.x > 180) + if (gSprites[spriteId].x > 180) { - gSprites[spriteId].pos1.x -= 4; + gSprites[spriteId].x -= 4; } else { - gSprites[spriteId].pos1.x = 180; + gSprites[spriteId].x = 180; if (gTasks[taskId].tIsDoneFadingSprites) { gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL; @@ -1663,13 +1663,13 @@ static void Task_NewGameBirchSpeech_ReshowBirchLotad(u8 taskId) gSprites[gTasks[taskId].tBrendanSpriteId].invisible = TRUE; gSprites[gTasks[taskId].tMaySpriteId].invisible = TRUE; spriteId = gTasks[taskId].tBirchSpriteId; - gSprites[spriteId].pos1.x = 136; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = 136; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; spriteId = gTasks[taskId].tLotadSpriteId; - gSprites[spriteId].pos1.x = 100; - gSprites[spriteId].pos1.y = 75; + gSprites[spriteId].x = 100; + gSprites[spriteId].y = 75; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; NewGameBirchSpeech_StartFadeInTarget1OutTarget2(taskId, 2); @@ -1716,8 +1716,8 @@ static void Task_NewGameBirchSpeech_AreYouReady(u8 taskId) spriteId = gTasks[taskId].tMaySpriteId; else spriteId = gTasks[taskId].tBrendanSpriteId; - gSprites[spriteId].pos1.x = 120; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = 120; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; gTasks[taskId].tPlayerSpriteId = spriteId; @@ -1833,8 +1833,8 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void) gTasks[taskId].tPlayerGender = MALE; spriteId = gTasks[taskId].tBrendanSpriteId; } - gSprites[spriteId].pos1.x = 180; - gSprites[spriteId].pos1.y = 60; + gSprites[spriteId].x = 180; + gSprites[spriteId].y = 60; gSprites[spriteId].invisible = FALSE; gTasks[taskId].tPlayerSpriteId = spriteId; SetGpuReg(REG_OFFSET_BG1HOFS, -60); @@ -1869,8 +1869,8 @@ static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite *sprite) { u32 y; - y = (sprite->pos1.y << 16) + sprite->data[0] + 0xC000; - sprite->pos1.y = y >> 16; + y = (sprite->y << 16) + sprite->data[0] + 0xC000; + sprite->y = y >> 16; sprite->data[0] = y; } diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 151de0bd4fa7..dce00e51e3f4 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -438,10 +438,10 @@ void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y) for (i = 0; i < count; i++) { if (i == count - 1 && unknownBit) - gSprites[spriteIds[i]].pos2.x = x - 8; + gSprites[spriteIds[i]].x2 = x - 8; else - gSprites[spriteIds[i]].pos2.x = x; + gSprites[spriteIds[i]].x2 = x; - gSprites[spriteIds[i]].pos1.y = 1 + y; + gSprites[spriteIds[i]].y = 1 + y; } } diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 4c4be57f04fd..1ca5c4d33bce 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -1310,13 +1310,13 @@ static void SetConditionSparklePosition(struct Sprite *sprite) if (mon != NULL) { - sprite->pos1.x = mon->pos1.x + mon->pos2.x + sConditionSparkleCoords[sprite->sSparkleId][0]; - sprite->pos1.y = mon->pos1.y + mon->pos2.y + sConditionSparkleCoords[sprite->sSparkleId][1]; + sprite->x = mon->x + mon->x2 + sConditionSparkleCoords[sprite->sSparkleId][0]; + sprite->y = mon->y + mon->y2 + sConditionSparkleCoords[sprite->sSparkleId][1]; } else { - sprite->pos1.x = sConditionSparkleCoords[sprite->sSparkleId][0] + 40; - sprite->pos1.y = sConditionSparkleCoords[sprite->sSparkleId][1] + 104; + sprite->x = sConditionSparkleCoords[sprite->sSparkleId][0] + 40; + sprite->y = sConditionSparkleCoords[sprite->sSparkleId][1] + 104; } } diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 2d4d981386c2..8e546afc9a0c 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -242,10 +242,10 @@ static void Task_StaticCountdown_Init(u8 taskId) StaticCountdown_CreateSprites(taskId, data); StartSpriteAnim(&gSprites[tSpriteIds(1)], ANIM_START_MID); - gSprites[tSpriteIds(1)].pos2.x = -32; + gSprites[tSpriteIds(1)].x2 = -32; StartSpriteAnim(&gSprites[tSpriteIds(2)], ANIM_START_RIGHT); - gSprites[tSpriteIds(2)].pos2.x = 32; + gSprites[tSpriteIds(2)].x2 = 32; } static void Task_StaticCountdown_Free(u8 taskId) @@ -477,7 +477,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId) break; case 4: // Moving up from jump - sprite->pos1.y -= 4; + sprite->y -= 4; if (++sprite->sTimer >= 8) { if (sprite->sAnimNum < 2) @@ -497,7 +497,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId) break; case 5: // Falling after jump - sprite->pos1.y += 4; + sprite->y += 4; if (++sprite->sTimer >= 8) { // Land from jump @@ -528,8 +528,8 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId) // First argument is unused. static void InitStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3) { - gSprites[spriteId2].pos2.y = -40; - gSprites[spriteId3].pos2.y = -40; + gSprites[spriteId2].y2 = -40; + gSprites[spriteId3].y2 = -40; gSprites[spriteId2].invisible = FALSE; gSprites[spriteId3].invisible = FALSE; gSprites[spriteId2].callback = SpriteCB_Start; @@ -555,16 +555,16 @@ static void SpriteCB_Start(struct Sprite *sprite) { case 0: sYSpeed = 64; - sY = sprite->pos2.y << 4; + sY = sprite->y2 << 4; sState++; case 1: sY += sYSpeed; sYSpeed++; - sprite->pos2.y = sY >> 4; - if (sprite->pos2.y >= 0) + sprite->y2 = sY >> 4; + if (sprite->y2 >= 0) { PlaySE(SE_BALL_BOUNCE_2); - sprite->pos2.y = 0; + sprite->y2 = 0; sState++; } break; @@ -577,7 +577,7 @@ static void SpriteCB_Start(struct Sprite *sprite) sState++; } y = gSineTable[sTimer]; - sprite->pos2.y = -(y >> 4); + sprite->y2 = -(y >> 4); break; case 3: sTimer += 16; @@ -587,7 +587,7 @@ static void SpriteCB_Start(struct Sprite *sprite) sTimer = 0; sState++; } - sprite->pos2.y = -(gSineTable[sTimer] >> 5); + sprite->y2 = -(gSineTable[sTimer] >> 5); break; case 4: if (++sTimer > 40) diff --git a/src/mirage_tower.c b/src/mirage_tower.c index d18ddcc0fb64..1d57c21779a0 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -351,10 +351,10 @@ static void PlayerDescendMirageTower(u8 taskId) TryGetObjectEventIdByLocalIdAndMap(45, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); fakePlayerObjectEvent = &gObjectEvents[objectEventId]; - gSprites[fakePlayerObjectEvent->spriteId].pos2.y += 4; + gSprites[fakePlayerObjectEvent->spriteId].y2 += 4; playerObjectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; - if ((gSprites[fakePlayerObjectEvent->spriteId].pos1.y + gSprites[fakePlayerObjectEvent->spriteId].pos2.y) >= - (gSprites[playerObjectEvent->spriteId].pos1.y + gSprites[playerObjectEvent->spriteId].pos2.y)) + if ((gSprites[fakePlayerObjectEvent->spriteId].y + gSprites[fakePlayerObjectEvent->spriteId].y2) >= + (gSprites[playerObjectEvent->spriteId].y + gSprites[playerObjectEvent->spriteId].y2)) { DestroyTask(taskId); EnableBothScriptContexts(); @@ -450,8 +450,8 @@ static void CreateCeilingCrumbleSprites(void) static void MoveCeilingCrumbleSprite(struct Sprite* sprite) { sprite->data[1] += 2; - sprite->pos2.y = sprite->data[1] / 2; - if(((sprite->pos1.y) + (sprite->pos2.y)) > sCeilingCrumblePositions[sprite->data[0]][2]) + sprite->y2 = sprite->data[1] / 2; + if(((sprite->y) + (sprite->y2)) > sCeilingCrumblePositions[sprite->data[0]][2]) { DestroySprite(sprite); IncrementCeilingCrumbleFinishedCount(); @@ -669,7 +669,7 @@ static void DoFossilFallAndSink(u8 taskId) fossilTemplate.images = (struct SpriteFrameImage *)(sUnknown_0203CF0C->frameImage); sUnknown_0203CF0C->spriteId = CreateSprite(&fossilTemplate, 128, -16, 1); gSprites[sUnknown_0203CF0C->spriteId].centerToCornerVecX = 0; - gSprites[sUnknown_0203CF0C->spriteId].data[0] = gSprites[sUnknown_0203CF0C->spriteId].pos1.x; + gSprites[sUnknown_0203CF0C->spriteId].data[0] = gSprites[sUnknown_0203CF0C->spriteId].x; gSprites[sUnknown_0203CF0C->spriteId].data[1] = 1; } case 5: @@ -710,7 +710,7 @@ static void sub_81BF248(struct Sprite *sprite) { sprite->callback = SpriteCallbackDummy; } - else if (sprite->pos1.y >= 96) + else if (sprite->y >= 96) { u8 i; for (i = 0; i < 2; i++) @@ -720,7 +720,7 @@ static void sub_81BF248(struct Sprite *sprite) } else { - sprite->pos1.y++; + sprite->y++; } } diff --git a/src/mon_markings.c b/src/mon_markings.c index e71d6d795200..dbd5a2fa817b 100644 --- a/src/mon_markings.c +++ b/src/mon_markings.c @@ -493,7 +493,7 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base return; } } - sMenu->windowSprites[1]->pos1.y = y + 96; + sMenu->windowSprites[1]->y = y + 96; // Create marking sprites @@ -526,8 +526,8 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base sMenu->textSprite->oam.shape = SPRITE_SHAPE(32x32); sMenu->textSprite->oam.size = SPRITE_SIZE(32x32); StartSpriteAnim(sMenu->textSprite, ANIM_TEXT); - sMenu->textSprite->pos1.x = x + 32; - sMenu->textSprite->pos1.y = y + 80; + sMenu->textSprite->x = x + 32; + sMenu->textSprite->y = y + 80; CalcCenterToCornerVec(sMenu->textSprite, SPRITE_SHAPE(32x16), SPRITE_SIZE(32x16), ST_OAM_AFFINE_OFF); } else @@ -567,7 +567,7 @@ static void SpriteCB_Marking(struct Sprite *sprite) static void SpriteCB_Cursor(struct Sprite *sprite) { - sprite->pos1.y = (16 * sMenu->cursorPos) + sprite->sCursorYOffset; + sprite->y = (16 * sMenu->cursorPos) + sprite->sCursorYOffset; } #undef sCursorYOffset diff --git a/src/naming_screen.c b/src/naming_screen.c index 3c8478e04a4b..fc7fb82fe793 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1071,7 +1071,7 @@ static void SpriteCB_InputArrow(struct Sprite *sprite) sprite->sDelay = 8; sprite->sXPosId = (sprite->sXPosId + 1) & (ARRAY_COUNT(x) - 1); } - sprite->pos2.x = x[sprite->sXPosId]; + sprite->x2 = x[sprite->sXPosId]; } #undef sDelay @@ -1089,13 +1089,13 @@ static void SpriteCB_Underscore(struct Sprite *sprite) pos = GetTextEntryPosition(); if (pos != (u8)sprite->sId) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->sYPosId = 0; sprite->sDelay = 0; } else { - sprite->pos2.y = y[sprite->sYPosId]; + sprite->y2 = y[sprite->sYPosId]; sprite->sDelay++; if (sprite->sDelay > 8) { @@ -1134,11 +1134,11 @@ static void SetCursorPos(s16 x, s16 y) struct Sprite *cursorSprite = &gSprites[sNamingScreen->cursorSpriteId]; if (x < sPageColumnCounts[CurrentPageToKeyboardId()]) - cursorSprite->pos1.x = sPageColumnXPos[x + CurrentPageToKeyboardId() * KBCOL_COUNT] + 38; + cursorSprite->x = sPageColumnXPos[x + CurrentPageToKeyboardId() * KBCOL_COUNT] + 38; else - cursorSprite->pos1.x = 0; + cursorSprite->x = 0; - cursorSprite->pos1.y = y * 16 + 88; + cursorSprite->y = y * 16 + 88; cursorSprite->sPrevX = cursorSprite->sX; cursorSprite->sPrevY = cursorSprite->sY; cursorSprite->sX = x; @@ -1284,11 +1284,11 @@ static bool8 PageSwapSprite_SlideOff(struct Sprite *sprite) struct Sprite *text = &gSprites[sprite->sTextSpriteId]; struct Sprite *button = &gSprites[sprite->sButtonSpriteId]; - text->pos2.y++; - if (text->pos2.y > 7) + text->y2++; + if (text->y2 > 7) { sprite->sState++; - text->pos2.y = -4; + text->y2 = -4; text->invisible = TRUE; SetPageSwapButtonGfx(PageToNextGfxId(((u8)sprite->sPage + 1) % KBPAGE_COUNT), text, button); } @@ -1300,10 +1300,10 @@ static bool8 PageSwapSprite_SlideOn(struct Sprite *sprite) struct Sprite *text = &gSprites[sprite->sTextSpriteId]; text->invisible = FALSE; - text->pos2.y++; - if (text->pos2.y >= 0) + text->y2++; + if (text->y2 >= 0) { - text->pos2.y = 0; + text->y2 = 0; sprite->sState = 1; // go to PageSwapSprite_Idle } return FALSE; diff --git a/src/overworld.c b/src/overworld.c index 979ebb74c467..a2f38c864dc2 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -3199,8 +3199,8 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite) { struct LinkPlayerObjectEvent *linkPlayerObjEvent = &gLinkPlayerObjectEvents[sprite->data[0]]; struct ObjectEvent *objEvent = &gObjectEvents[linkPlayerObjEvent->objEventId]; - sprite->pos1.x = objEvent->initialCoords.x; - sprite->pos1.y = objEvent->initialCoords.y; + sprite->x = objEvent->initialCoords.x; + sprite->y = objEvent->initialCoords.y; SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1); sprite->oam.priority = ZCoordToPriority(objEvent->previousElevation); diff --git a/src/party_menu.c b/src/party_menu.c index 681dc5f9358a..f77703328c39 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2831,10 +2831,10 @@ static void MoveAndBufferPartySlot(const void *rectSrc, s16 x, s16 y, s16 width, static void MovePartyMenuBoxSprites(struct PartyMenuBox *menuBox, s16 offset) { - gSprites[menuBox->pokeballSpriteId].pos2.x += offset * 8; - gSprites[menuBox->itemSpriteId].pos2.x += offset * 8; - gSprites[menuBox->monSpriteId].pos2.x += offset * 8; - gSprites[menuBox->statusSpriteId].pos2.x += offset * 8; + gSprites[menuBox->pokeballSpriteId].x2 += offset * 8; + gSprites[menuBox->itemSpriteId].x2 += offset * 8; + gSprites[menuBox->monSpriteId].x2 += offset * 8; + gSprites[menuBox->statusSpriteId].x2 += offset * 8; } static void SlidePartyMenuBoxSpritesOneStep(u8 taskId) @@ -2924,18 +2924,18 @@ static void SwitchMenuBoxSprites(u8 *spriteIdPtr1, u8 *spriteIdPtr2) *spriteIdPtr1 = *spriteIdPtr2; *spriteIdPtr2 = spriteIdBuffer; - xBuffer1 = gSprites[*spriteIdPtr1].pos1.x; - yBuffer1 = gSprites[*spriteIdPtr1].pos1.y; - xBuffer2 = gSprites[*spriteIdPtr1].pos2.x; - yBuffer2 = gSprites[*spriteIdPtr1].pos2.y; - gSprites[*spriteIdPtr1].pos1.x = gSprites[*spriteIdPtr2].pos1.x; - gSprites[*spriteIdPtr1].pos1.y = gSprites[*spriteIdPtr2].pos1.y; - gSprites[*spriteIdPtr1].pos2.x = gSprites[*spriteIdPtr2].pos2.x; - gSprites[*spriteIdPtr1].pos2.y = gSprites[*spriteIdPtr2].pos2.y; - gSprites[*spriteIdPtr2].pos1.x = xBuffer1; - gSprites[*spriteIdPtr2].pos1.y = yBuffer1; - gSprites[*spriteIdPtr2].pos2.x = xBuffer2; - gSprites[*spriteIdPtr2].pos2.y = yBuffer2; + xBuffer1 = gSprites[*spriteIdPtr1].x; + yBuffer1 = gSprites[*spriteIdPtr1].y; + xBuffer2 = gSprites[*spriteIdPtr1].x2; + yBuffer2 = gSprites[*spriteIdPtr1].y2; + gSprites[*spriteIdPtr1].x = gSprites[*spriteIdPtr2].x; + gSprites[*spriteIdPtr1].y = gSprites[*spriteIdPtr2].y; + gSprites[*spriteIdPtr1].x2 = gSprites[*spriteIdPtr2].x2; + gSprites[*spriteIdPtr1].y2 = gSprites[*spriteIdPtr2].y2; + gSprites[*spriteIdPtr2].x = xBuffer1; + gSprites[*spriteIdPtr2].y = yBuffer1; + gSprites[*spriteIdPtr2].x2 = xBuffer2; + gSprites[*spriteIdPtr2].y2 = yBuffer2; } static void SwitchPartyMon(void) @@ -3905,22 +3905,22 @@ static void AnimateSelectedPartyIcon(u8 spriteId, u8 animNum) gSprites[spriteId].data[0] = 0; if (animNum == 0) { - if (gSprites[spriteId].pos1.x == 16) + if (gSprites[spriteId].x == 16) { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = -4; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = -4; } else { - gSprites[spriteId].pos2.x = -4; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = -4; + gSprites[spriteId].y2 = 0; } gSprites[spriteId].callback = SpriteCB_UpdatePartyMonIcon; } else { - gSprites[spriteId].pos2.x = 0; - gSprites[spriteId].pos2.y = 0; + gSprites[spriteId].x2 = 0; + gSprites[spriteId].y2 = 0; gSprites[spriteId].callback = SpriteCB_BouncePartyMonIcon; } } @@ -3932,9 +3932,9 @@ static void SpriteCB_BouncePartyMonIcon(struct Sprite *sprite) if (animCmd != 0) { if (animCmd & 1) // % 2 also matches - sprite->pos2.y = -3; + sprite->y2 = -3; else - sprite->pos2.y = 1; + sprite->y2 = 1; } } @@ -4020,8 +4020,8 @@ static void CreateHeldItemSpriteForTrade(u8 spriteId, bool8 isMail) u8 subpriority = gSprites[spriteId].subpriority; u8 newSpriteId = CreateSprite(&sSpriteTemplate_HeldItem, 250, 170, subpriority - 1); - gSprites[newSpriteId].pos2.x = 4; - gSprites[newSpriteId].pos2.y = 10; + gSprites[newSpriteId].x2 = 4; + gSprites[newSpriteId].y2 = 10; gSprites[newSpriteId].callback = SpriteCB_HeldItem; gSprites[newSpriteId].data[7] = spriteId; StartSpriteAnim(&gSprites[newSpriteId], isMail); @@ -4039,8 +4039,8 @@ static void SpriteCB_HeldItem(struct Sprite *sprite) else { sprite->invisible = FALSE; - sprite->pos1.x = gSprites[otherSpriteId].pos1.x + gSprites[otherSpriteId].pos2.x; - sprite->pos1.y = gSprites[otherSpriteId].pos1.y + gSprites[otherSpriteId].pos2.y; + sprite->x = gSprites[otherSpriteId].x + gSprites[otherSpriteId].x2; + sprite->y = gSprites[otherSpriteId].y + gSprites[otherSpriteId].y2; } } @@ -4087,15 +4087,15 @@ static void SpriteCB_BounceConfirmCancelButton(u8 spriteId, u8 spriteId2, u8 ani { StartSpriteAnim(&gSprites[spriteId], 2); StartSpriteAnim(&gSprites[spriteId2], 4); - gSprites[spriteId].pos2.y = 0; - gSprites[spriteId2].pos2.y = 0; + gSprites[spriteId].y2 = 0; + gSprites[spriteId2].y2 = 0; } else { StartSpriteAnim(&gSprites[spriteId], 3); StartSpriteAnim(&gSprites[spriteId2], 5); - gSprites[spriteId].pos2.y = -4; - gSprites[spriteId2].pos2.y = 4; + gSprites[spriteId].y2 = -4; + gSprites[spriteId2].y2 = 4; } } @@ -6095,7 +6095,7 @@ static void Task_WaitAfterMultiPartnerPartySlideIn(u8 taskId) static void MoveMultiPartyMenuBoxSprite(u8 spriteId, s16 x) { if (x >= 0) - gSprites[spriteId].pos2.x = x; + gSprites[spriteId].x2 = x; } static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId) diff --git a/src/player_pc.c b/src/player_pc.c index a040ba5b6e5b..a81fbc537677 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -1024,8 +1024,8 @@ static void sub_816C060(u16 itemId) { *spriteIdLoc = spriteId; gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].pos2.x = 24; - gSprites[spriteId].pos2.y = 80; + gSprites[spriteId].x2 = 24; + gSprites[spriteId].y2 = 80; } } } diff --git a/src/pokeball.c b/src/pokeball.c index 3671e6a35791..52d47b53471e 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -373,13 +373,13 @@ static void Task_DoPokeballSendOutAnim(u8 taskId) { case POKEBALL_PLAYER_SENDOUT: gBattlerTarget = battlerId; - gSprites[ballSpriteId].pos1.x = 24; - gSprites[ballSpriteId].pos1.y = 68; + gSprites[ballSpriteId].x = 24; + gSprites[ballSpriteId].y = 68; gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1; break; case POKEBALL_OPPONENT_SENDOUT: - gSprites[ballSpriteId].pos1.x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X); - gSprites[ballSpriteId].pos1.y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24; + gSprites[ballSpriteId].x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X); + gSprites[ballSpriteId].y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24; gBattlerTarget = battlerId; gSprites[ballSpriteId].data[0] = 0; gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut; @@ -423,13 +423,13 @@ static void SpriteCB_BallThrow(struct Sprite *sprite) StartSpriteAnim(sprite, 1); sprite->affineAnimPaused = 1; - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[5] = 0; ballId = ItemIdToBallId(GetBattlerPokeballItemId(opponentBattler)); - AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId); sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBattler, 14, ballId); sprite->sBattler = opponentBattler; sprite->data[7] = noOfShakes; @@ -476,7 +476,7 @@ static void SpriteCB_BallThrow_ShrinkMon(struct Sprite *sprite) else { gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] += 0x60; - gSprites[gBattlerSpriteIds[sprite->sBattler]].pos2.y = -gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] >> 8; + gSprites[gBattlerSpriteIds[sprite->sBattler]].y2 = -gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] >> 8; } } @@ -490,8 +490,8 @@ static void SpriteCB_BallThrow_Close(struct Sprite *sprite) sprite->data[3] = 0; sprite->data[4] = 32; sprite->data[5] = 0; - sprite->pos1.y += Cos(0, 32); - sprite->pos2.y = -Cos(0, sprite->data[4]); + sprite->y += Cos(0, 32); + sprite->y2 = -Cos(0, sprite->data[4]); sprite->callback = SpriteCB_BallThrow_FallToGround; } } @@ -504,7 +504,7 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite) switch (sprite->data[3] & 0xFF) { case 0: - sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); + sprite->y2 = -Cos(sprite->data[5], sprite->data[4]); sprite->data[5] += 4 + (sprite->data[3] >> 8); if (sprite->data[5] >= 64) { @@ -530,7 +530,7 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite) } break; case 1: - sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); + sprite->y2 = -Cos(sprite->data[5], sprite->data[4]); sprite->data[5] -= 4 + (sprite->data[3] >> 8); if (sprite->data[5] <= 0) { @@ -542,8 +542,8 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite) if (r5) { sprite->data[3] = 0; - sprite->pos1.y += Cos(64, 32); - sprite->pos2.y = 0; + sprite->y += Cos(64, 32); + sprite->y2 = 0; if (sprite->data[7] == 0) { sprite->callback = SpriteCB_ReleaseMonFromBall; @@ -576,7 +576,7 @@ static void SpriteCB_BallThrow_Shake(struct Sprite *sprite) { case 0: case 2: - sprite->pos2.x += sprite->data[4]; + sprite->x2 += sprite->data[4]; sprite->data[5] += sprite->data[4]; sprite->affineAnimPaused = FALSE; if (sprite->data[5] > 3 || sprite->data[5] < -3) @@ -740,7 +740,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) StartSpriteAnim(sprite, 1); ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId)); - AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId); sprite->data[0] = LaunchBallFadeMonTask(TRUE, sprite->sBattler, 14, ballId); sprite->callback = HandleBallAnimEnd; @@ -844,13 +844,13 @@ static void HandleBallAnimEnd(struct Sprite *sprite) else { gSprites[gBattlerSpriteIds[battlerId]].data[1] -= 288; - gSprites[gBattlerSpriteIds[battlerId]].pos2.y = gSprites[gBattlerSpriteIds[battlerId]].data[1] >> 8; + gSprites[gBattlerSpriteIds[battlerId]].y2 = gSprites[gBattlerSpriteIds[battlerId]].data[1] >> 8; } if (sprite->animEnded && affineAnimEnded) { s32 i, doneBattlers; - gSprites[gBattlerSpriteIds[battlerId]].pos2.y = 0; + gSprites[gBattlerSpriteIds[battlerId]].y2 = 0; gDoingBattleAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = 0; FreeSpriteOamMatrix(sprite); @@ -927,7 +927,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite) r4 = sprite->data[0]; AnimTranslateLinear(sprite); sprite->data[7] += sprite->sBattler / 3; - sprite->pos2.y += Sin(HIBYTE(sprite->data[7]), sprite->data[5]); + sprite->y2 += Sin(HIBYTE(sprite->data[7]), sprite->data[5]); sprite->oam.affineParam += 0x100; if ((sprite->oam.affineParam >> 8) % 3 != 0) sprite->data[0] = r4; @@ -945,10 +945,10 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) { - sprite->pos1.x += sprite->pos2.x; - sprite->pos1.y += sprite->pos2.y; - sprite->pos2.y = 0; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->y += sprite->y2; + sprite->y2 = 0; + sprite->x2 = 0; sprite->sBattler = sprite->oam.affineParam & 0xFF; sprite->data[0] = 0; @@ -1008,11 +1008,11 @@ void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y, spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy); gSprites[spriteId].data[0] = monSpriteId; - gSprites[spriteId].data[5] = gSprites[monSpriteId].pos1.x; - gSprites[spriteId].data[6] = gSprites[monSpriteId].pos1.y; + gSprites[spriteId].data[5] = gSprites[monSpriteId].x; + gSprites[spriteId].data[6] = gSprites[monSpriteId].y; - gSprites[monSpriteId].pos1.x = x; - gSprites[monSpriteId].pos1.y = y; + gSprites[monSpriteId].x = x; + gSprites[monSpriteId].y = y; gSprites[monSpriteId].data[7] = species; gSprites[spriteId].data[1] = g; @@ -1040,7 +1040,7 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) r5 = 0; StartSpriteAnim(sprite, 1); - AnimateBallOpenParticlesForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r5); + AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r5); sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4); sprite->callback = SpriteCB_ReleasedMonFlyOut; gSprites[r7].invisible = FALSE; @@ -1070,24 +1070,24 @@ static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite) StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_NORMAL); r12 = TRUE; } - var1 = (sprite->data[5] - sprite->pos1.x) * sprite->data[7] / 128 + sprite->pos1.x; - var2 = (sprite->data[6] - sprite->pos1.y) * sprite->data[7] / 128 + sprite->pos1.y; - gSprites[monSpriteId].pos1.x = var1; - gSprites[monSpriteId].pos1.y = var2; + var1 = (sprite->data[5] - sprite->x) * sprite->data[7] / 128 + sprite->x; + var2 = (sprite->data[6] - sprite->y) * sprite->data[7] / 128 + sprite->y; + gSprites[monSpriteId].x = var1; + gSprites[monSpriteId].y = var2; if (sprite->data[7] < 128) { s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8); sprite->data[7] += 4; - gSprites[monSpriteId].pos2.x = sine; - gSprites[monSpriteId].pos2.y = sine; + gSprites[monSpriteId].x2 = sine; + gSprites[monSpriteId].y2 = sine; } else { - gSprites[monSpriteId].pos1.x = sprite->data[5]; - gSprites[monSpriteId].pos1.y = sprite->data[6]; - gSprites[monSpriteId].pos2.x = 0; - gSprites[monSpriteId].pos2.y = 0; + gSprites[monSpriteId].x = sprite->data[5]; + gSprites[monSpriteId].y = sprite->data[6]; + gSprites[monSpriteId].x2 = 0; + gSprites[monSpriteId].y2 = 0; r6 = TRUE; } if (sprite->animEnded && r12 && r6) @@ -1133,7 +1133,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) r6 = 0; StartSpriteAnim(sprite, 1); - AnimateBallOpenParticlesForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r6); + AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r6); sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5); sprite->callback = SpriteCB_TradePokeballSendOff; #ifdef BUGFIX @@ -1169,7 +1169,7 @@ static void SpriteCB_TradePokeballSendOff(struct Sprite *sprite) else { gSprites[monSpriteId].data[1] += 96; - gSprites[monSpriteId].pos2.y = -gSprites[monSpriteId].data[1] >> 8; + gSprites[monSpriteId].y2 = -gSprites[monSpriteId].data[1] >> 8; } } @@ -1195,15 +1195,15 @@ void StartHealthboxSlideIn(u8 battlerId) healthboxSprite->sSpeedX = 5; healthboxSprite->sSpeedY = 0; - healthboxSprite->pos2.x = 0x73; - healthboxSprite->pos2.y = 0; + healthboxSprite->x2 = 0x73; + healthboxSprite->y2 = 0; healthboxSprite->callback = SpriteCB_HealthboxSlideIn; if (GetBattlerSide(battlerId) != B_SIDE_PLAYER) { healthboxSprite->sSpeedX = -healthboxSprite->sSpeedX; healthboxSprite->sSpeedY = -healthboxSprite->sSpeedY; - healthboxSprite->pos2.x = -healthboxSprite->pos2.x; - healthboxSprite->pos2.y = -healthboxSprite->pos2.y; + healthboxSprite->x2 = -healthboxSprite->x2; + healthboxSprite->y2 = -healthboxSprite->y2; } gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]); if (GetBattlerPosition(battlerId) == B_POSITION_PLAYER_RIGHT) @@ -1222,9 +1222,9 @@ static void SpriteCB_HealthboxSlideInDelayed(struct Sprite *sprite) static void SpriteCB_HealthboxSlideIn(struct Sprite *sprite) { - sprite->pos2.x -= sprite->sSpeedX; - sprite->pos2.y -= sprite->sSpeedY; - if (sprite->pos2.x == 0 && sprite->pos2.y == 0) + sprite->x2 -= sprite->sSpeedX; + sprite->y2 -= sprite->sSpeedY; + if (sprite->x2 == 0 && sprite->y2 == 0) sprite->callback = SpriteCallbackDummy; } @@ -1246,13 +1246,13 @@ static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite) { u8 r1 = sprite->data[1]; - gSprites[r1].pos2.y = sprite->data[0]; + gSprites[r1].y2 = sprite->data[0]; sprite->data[0] = -sprite->data[0]; sprite->data[2]++; if (sprite->data[2] == 21) { - gSprites[r1].pos2.x = 0; - gSprites[r1].pos2.y = 0; + gSprites[r1].x2 = 0; + gSprites[r1].y2 = 0; DestroySprite(sprite); } } diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 47e510562cc4..748d988a4ee8 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -934,8 +934,8 @@ static u8 CreateMonSprite(struct Pokemon* mon) static void StartMonJumpForPokeblock(u8 spriteId) { - gSprites[spriteId].pos1.x = MON_X; - gSprites[spriteId].pos1.y = MON_Y; + gSprites[spriteId].x = MON_X; + gSprites[spriteId].y = MON_Y; gSprites[spriteId].sSpeed = -8; gSprites[spriteId].sAccel = 1; gSprites[spriteId].callback = SpriteCB_MonJumpForPokeblock; @@ -943,8 +943,8 @@ static void StartMonJumpForPokeblock(u8 spriteId) static void SpriteCB_MonJumpForPokeblock(struct Sprite* sprite) { - sprite->pos1.x += 4; - sprite->pos1.y += sprite->sSpeed; + sprite->x += 4; + sprite->y += sprite->sSpeed; sprite->sSpeed += sprite->sAccel; // Play cry at jump peak @@ -988,8 +988,8 @@ static u8 CreatePokeblockSprite(void) static void SpriteCB_ThrownPokeblock(struct Sprite* sprite) { - sprite->pos1.x -= 4; - sprite->pos1.y += sprite->sSpeed; + sprite->x -= 4; + sprite->y += sprite->sSpeed; sprite->sSpeed += sprite->sAccel; if (sprite->sSpeed == 10) DestroySprite(sprite); @@ -1094,8 +1094,8 @@ static bool8 InitMonAnimStage(void) pokeblockFeed->monInitX = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE]); pokeblockFeed->monInitY = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE]); pokeblockFeed->maxAnimStageTime = pokeblockFeed->animData[ANIMDATA_TIME]; - pokeblockFeed->monX = pokeblockFeed->monSpritePtr->pos2.x; - pokeblockFeed->monY = pokeblockFeed->monSpritePtr->pos2.y; + pokeblockFeed->monX = pokeblockFeed->monSpritePtr->x2; + pokeblockFeed->monY = pokeblockFeed->monSpritePtr->y2; // Calculate the positions to move to during the animation // The time is counted down during this, so reset it afterwards @@ -1111,8 +1111,8 @@ static bool8 DoMonAnimStep(void) { // Update mon's position u16 time = sPokeblockFeed->maxAnimStageTime - sPokeblockFeed->animData[ANIMDATA_TIME]; - sPokeblockFeed->monSpritePtr->pos2.x = sPokeblockFeed->monAnimX[time]; - sPokeblockFeed->monSpritePtr->pos2.y = sPokeblockFeed->monAnimY[time]; + sPokeblockFeed->monSpritePtr->x2 = sPokeblockFeed->monAnimX[time]; + sPokeblockFeed->monSpritePtr->y2 = sPokeblockFeed->monAnimY[time]; // Count down time remaining in this stage // Return TRUE if this stage is complete diff --git a/src/pokedex.c b/src/pokedex.c index c7c892d5359d..cc469b32f819 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -1785,7 +1785,7 @@ static void Task_HandlePokedexStartMenuInput(u8 taskId) static void Task_OpenInfoScreenAfterMonMovement(u8 taskId) { - if (gSprites[sPokedexView->selectedMonSpriteId].pos1.x == 48 && gSprites[sPokedexView->selectedMonSpriteId].pos1.y == 56) + if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56) { sPokedexView->currentPageBackup = sPokedexView->currentPage; gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); @@ -1987,7 +1987,7 @@ static void Task_HandleSearchResultsStartMenuInput(u8 taskId) static void Task_OpenSearchResultsInfoScreenAfterMonMovement(u8 taskId) { - if (gSprites[sPokedexView->selectedMonSpriteId].pos1.x == 48 && gSprites[sPokedexView->selectedMonSpriteId].pos1.y == 56) + if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56) { sPokedexView->currentPageBackup = sPokedexView->currentPage; gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); @@ -2652,7 +2652,7 @@ static void UpdateSelectedMonSpriteId(void) { u16 spriteId = sPokedexView->monSpriteIds[i]; - if (gSprites[spriteId].pos2.x == 0 && gSprites[spriteId].pos2.y == 0 && spriteId != 0xFFFF) + if (gSprites[spriteId].x2 == 0 && gSprites[spriteId].y2 == 0 && spriteId != 0xFFFF) sPokedexView->selectedMonSpriteId = spriteId; } } @@ -3000,19 +3000,19 @@ void SpriteCB_MoveMonForInfoScreen(struct Sprite *sprite) { sprite->oam.priority = 0; sprite->oam.affineMode = ST_OAM_AFFINE_OFF; - sprite->pos2.x = 0; - sprite->pos2.y = 0; - if (sprite->pos1.x != 48 || sprite->pos1.y != 56) + sprite->x2 = 0; + sprite->y2 = 0; + if (sprite->x != 48 || sprite->y != 56) { - if (sprite->pos1.x > 48) - sprite->pos1.x--; - if (sprite->pos1.x < 48) - sprite->pos1.x++; + if (sprite->x > 48) + sprite->x--; + if (sprite->x < 48) + sprite->x++; - if (sprite->pos1.y > 56) - sprite->pos1.y--; - if (sprite->pos1.y < 56) - sprite->pos1.y++; + if (sprite->y > 56) + sprite->y--; + if (sprite->y < 56) + sprite->y++; } else { @@ -3032,7 +3032,7 @@ static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite) else { u32 var; - sprite->pos2.y = gSineTable[(u8)sprite->data[5]] * 76 / 256; + sprite->y2 = gSineTable[(u8)sprite->data[5]] * 76 / 256; var = SAFE_DIV(0x10000, gSineTable[sprite->data[5] + 64]); if (var > 0xFFFF) var = 0xFFFF; @@ -3062,7 +3062,7 @@ static void SpriteCB_Scrollbar(struct Sprite *sprite) if (sPokedexView->currentPage != PAGE_MAIN && sPokedexView->currentPage != PAGE_SEARCH_RESULTS) DestroySprite(sprite); else - sprite->pos2.y = sPokedexView->selectedPokemon * 120 / (sPokedexView->pokemonListCount - 1); + sprite->y2 = sPokedexView->selectedPokemon * 120 / (sPokedexView->pokemonListCount - 1); } static void SpriteCB_ScrollArrow(struct Sprite *sprite) @@ -3091,7 +3091,7 @@ static void SpriteCB_ScrollArrow(struct Sprite *sprite) sprite->invisible = FALSE; r0 = sprite->data[2] - 128; } - sprite->pos2.y = gSineTable[r0] / 64; + sprite->y2 = gSineTable[r0] / 64; sprite->data[2] = sprite->data[2] + 8; if (sPokedexView->menuIsOpen == FALSE && sPokedexView->menuY == 0 && sprite->invisible == FALSE) sprite->invisible = FALSE; @@ -3126,8 +3126,8 @@ static void SpriteCB_RotatingPokeBall(struct Sprite *sprite) val = sPokedexView->pokeBallRotation + (sprite->data[1] + 64); r3 = gSineTable[val]; r0 = gSineTable[val + 64]; - sprite->pos2.x = r0 * 40 / 256; - sprite->pos2.y = r3 * 40 / 256; + sprite->x2 = r0 * 40 / 256; + sprite->y2 = r3 * 40 / 256; } } @@ -3144,8 +3144,8 @@ static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite) if (sPokedexView->menuIsOpen && sPokedexView->menuY == r1) { sprite->invisible = FALSE; - sprite->pos2.y = sPokedexView->menuCursorPos * 16; - sprite->pos2.x = gSineTable[(u8)sprite->data[2]] / 64; + sprite->y2 = sPokedexView->menuCursorPos * 16; + sprite->x2 = gSineTable[(u8)sprite->data[2]] / 64; sprite->data[2] += 8; } else @@ -3755,7 +3755,7 @@ static void Task_LoadSizeScreen(u8 taskId) gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 1; gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].pos2.y = gPokedexEntries[sPokedexListItem->dexNum].trainerOffset; + gSprites[spriteId].y2 = gPokedexEntries[sPokedexListItem->dexNum].trainerOffset; SetOamMatrix(1, gPokedexEntries[sPokedexListItem->dexNum].trainerScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].trainerScale); LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20); gTasks[taskId].data[5] = spriteId; @@ -3766,7 +3766,7 @@ static void Task_LoadSizeScreen(u8 taskId) gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 2; gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].pos2.y = gPokedexEntries[sPokedexListItem->dexNum].pokemonOffset; + gSprites[spriteId].y2 = gPokedexEntries[sPokedexListItem->dexNum].pokemonOffset; SetOamMatrix(2, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale); LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20); gTasks[taskId].tMonSpriteId = spriteId; @@ -4054,15 +4054,15 @@ static void Task_ExitCaughtMonPage(u8 taskId) static void SpriteCB_SlideCaughtMonToCenter(struct Sprite *sprite) { - if (sprite->pos1.x < 0x78) - sprite->pos1.x += 2; - if (sprite->pos1.x > 0x78) - sprite->pos1.x -= 2; + if (sprite->x < 0x78) + sprite->x += 2; + if (sprite->x > 0x78) + sprite->x -= 2; - if (sprite->pos1.y < 0x50) - sprite->pos1.y += 1; - if (sprite->pos1.y > 0x50) - sprite->pos1.y -= 1; + if (sprite->y < 0x50) + sprite->y += 1; + if (sprite->y > 0x50) + sprite->y -= 1; } #undef tState @@ -5570,7 +5570,7 @@ static void SpriteCB_SearchParameterScrollArrow(struct Sprite *sprite) sprite->invisible = FALSE; } val = sprite->data[2] + sprite->sIsDownArrow * 128; - sprite->pos2.y = gSineTable[val] / 128; + sprite->y2 = gSineTable[val] / 128; sprite->data[2] += 8; } else diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index 447ce7515b93..e1d1776b1374 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -560,8 +560,8 @@ static void SpriteCB_CryMeterNeedle(struct Sprite *sprite) SetOamMatrix(0, matrix.a, matrix.b, matrix.c, matrix.d); x = gSineTable[((sCryMeterNeedle->rotation + 0x7F) & 0xFF)]; y = gSineTable[((sCryMeterNeedle->rotation + 0x7F) & 0xFF) + 64]; - sprite->pos2.x = x * 24 / 256; - sprite->pos2.y = y * 24 / 256; + sprite->x2 = x * 24 / 256; + sprite->y2 = y * 24 / 256; } static void SetCryMeterNeedleTarget(s8 offset) diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index 500916b0e49c..8e90caeb85ec 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -877,8 +877,8 @@ static void SetPosForRotation(struct Sprite *sprite, u16 index, s16 amplitudeX, amplitudeX *= -1; amplitudeY *= -1; - sprite->pos2.x = xAdder + amplitudeX; - sprite->pos2.y = yAdder + amplitudeY; + sprite->x2 = xAdder + amplitudeX; + sprite->y2 = yAdder + amplitudeY; } u8 GetSpeciesBackAnimSet(u16 species) @@ -1030,7 +1030,7 @@ static void HandleSetAffineData(struct Sprite *sprite, s16 xScale, s16 yScale, u static void TryFlipX(struct Sprite *sprite) { if (!sprite->sDontFlip) - sprite->pos2.x *= -1; + sprite->x2 *= -1; } static bool32 InitAnimData(u8 id) @@ -1111,7 +1111,7 @@ static void Anim_HorizontalVibrate(struct Sprite *sprite) if (sprite->data[2] > 40) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { @@ -1121,7 +1121,7 @@ static void Anim_HorizontalVibrate(struct Sprite *sprite) else sign = -1; - sprite->pos2.x = Sin((sprite->data[2] * 128 / 40) % 256, 6) * sign; + sprite->x2 = Sin((sprite->data[2] * 128 / 40) % 256, 6) * sign; } sprite->data[2]++; @@ -1134,11 +1134,11 @@ static void HorizontalSlide(struct Sprite *sprite) if (sprite->data[2] > sprite->data[0]) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { - sprite->pos2.x = Sin((sprite->data[2] * 384 / sprite->data[0]) % 256, 6); + sprite->x2 = Sin((sprite->data[2] * 384 / sprite->data[0]) % 256, 6); } sprite->data[2]++; @@ -1159,11 +1159,11 @@ static void VerticalSlide(struct Sprite *sprite) if (sprite->data[2] > sprite->data[0]) { sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; } else { - sprite->pos2.y = -(Sin((sprite->data[2] * 384 / sprite->data[0]) % 256, 6)); + sprite->y2 = -(Sin((sprite->data[2] * 384 / sprite->data[0]) % 256, 6)); } sprite->data[2]++; @@ -1183,8 +1183,8 @@ static void VerticalJumps(struct Sprite *sprite) if (counter > 384) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { @@ -1193,12 +1193,12 @@ static void VerticalJumps(struct Sprite *sprite) { case 0: case 1: - sprite->pos2.y = -(Sin(counter % 128, sprite->data[0] * 2)); + sprite->y2 = -(Sin(counter % 128, sprite->data[0] * 2)); break; case 2: case 3: counter -= 256; - sprite->pos2.y = -(Sin(counter, sprite->data[0] * 3)); + sprite->y2 = -(Sin(counter, sprite->data[0] * 3)); break; } } @@ -1220,8 +1220,8 @@ static void Anim_VerticalJumpsHorizontalJumps(struct Sprite *sprite) if (counter > 768) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { @@ -1231,23 +1231,23 @@ static void Anim_VerticalJumpsHorizontalJumps(struct Sprite *sprite) { case 0: case 1: - sprite->pos2.x = 0; + sprite->x2 = 0; break; case 2: counter = 0; break; case 3: - sprite->pos2.x = -(counter % 128 * 8) / 128; + sprite->x2 = -(counter % 128 * 8) / 128; break; case 4: - sprite->pos2.x = (counter % 128) / 8 - 8; + sprite->x2 = (counter % 128) / 8 - 8; break; case 5: - sprite->pos2.x = -(counter % 128 * 8) / 128 + 8; + sprite->x2 = -(counter % 128 * 8) / 128 + 8; break; } - sprite->pos2.y = -(Sin(counter % 128, 8)); + sprite->y2 = -(Sin(counter % 128, 8)); } sprite->data[2] += 12; @@ -1326,8 +1326,8 @@ static void Zigzag(struct Sprite *sprite) } else { - sprite->pos2.x += sZigzagData[sprite->data[3]][0]; - sprite->pos2.y += sZigzagData[sprite->data[3]][1]; + sprite->x2 += sZigzagData[sprite->data[3]][0]; + sprite->y2 += sZigzagData[sprite->data[3]][1]; sprite->data[2]++; TryFlipX(sprite); } @@ -1346,11 +1346,11 @@ static void HorizontalShake(struct Sprite *sprite) if (counter > 2304) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { - sprite->pos2.x = Sin(counter % 256, sprite->data[7]); + sprite->x2 = Sin(counter % 256, sprite->data[7]); } sprite->data[2] += sprite->data[0]; @@ -1371,11 +1371,11 @@ static void VerticalShake(struct Sprite *sprite) if (counter > 2304) { sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; } else { - sprite->pos2.y = Sin(counter % 256, 3); + sprite->y2 = Sin(counter % 256, 3); } sprite->data[2] += sprite->data[0]; @@ -1393,8 +1393,8 @@ static void Anim_CircularVibrate(struct Sprite *sprite) if (sprite->data[2] > 512) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { @@ -1409,8 +1409,8 @@ static void Anim_CircularVibrate(struct Sprite *sprite) amplitude = Sin(sprite->data[2] / 4, 8); index = sprite->data[2] % 256; - sprite->pos2.y = Sin(index, amplitude) * sign; - sprite->pos2.x = Cos(index, amplitude) * sign; + sprite->y2 = Sin(index, amplitude) * sign; + sprite->x2 = Cos(index, amplitude) * sign; } sprite->data[2] += 9; @@ -1508,16 +1508,16 @@ static void CircleCounterclockwise(struct Sprite *sprite) if (sprite->data[2] > sAnims[id].rotation) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->callback = WaitAnimEnd; } else { s16 index = (sprite->data[2] + 192) % 256; - sprite->pos2.x = -(Cos(index, sAnims[id].data * 2)); - sprite->pos2.y = Sin(index, sAnims[id].data) + sAnims[id].data; + sprite->x2 = -(Cos(index, sAnims[id].data * 2)); + sprite->y2 = Sin(index, sAnims[id].data) + sAnims[id].data; } sprite->data[2] += sAnims[id].speed; @@ -1605,7 +1605,7 @@ static void Anim_VerticalStretch(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; - sprite->pos2.y = posY; + sprite->y2 = posY; } else { @@ -1627,7 +1627,7 @@ static void Anim_VerticalStretch(struct Sprite *sprite) if (sprite->data[5] != 256) posY = (256 - sprite->data[5]) / 8; - sprite->pos2.y = -(posY); + sprite->y2 = -(posY); SetAffineData(sprite, sprite->data[4], sprite->data[5], 0); } @@ -1650,11 +1650,11 @@ static void VerticalShakeTwice(struct Sprite *sprite) if (var5 == (u8)-1) { sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; } else { - sprite->pos2.y = Sin(index, amplitude); + sprite->y2 = Sin(index, amplitude); if (var7 == var6) { @@ -1691,7 +1691,7 @@ static void Anim_TipMoveForward(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { @@ -1700,7 +1700,7 @@ static void Anim_TipMoveForward(struct Sprite *sprite) if (counter < 10) HandleSetAffineData(sprite, 256, 256, counter / 2 * 512); else if (counter >= 10 && counter <= 29) - sprite->pos2.x = -(Sin(index, 5)); + sprite->x2 = -(Sin(index, 5)); else HandleSetAffineData(sprite, 256, 256, (35 - counter) / 2 * 1024); } @@ -1717,14 +1717,14 @@ static void Anim_HorizontalPivot(struct Sprite *sprite) if (sprite->data[2] > 100) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } else { s16 index = (sprite->data[2] * 256) / 100; - sprite->pos2.y = Sin(index, 10); + sprite->y2 = Sin(index, 10); HandleSetAffineData(sprite, 256, 256, Sin(index, 3276)); } @@ -1742,7 +1742,7 @@ static void VerticalSlideWobble(struct Sprite *sprite) if (sprite->data[2] > 100) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1751,7 +1751,7 @@ static void VerticalSlideWobble(struct Sprite *sprite) index = (sprite->data[2] * 256) / 100; var = (sprite->data[2] * 512) / 100; var &= 0xFF; - sprite->pos2.y = Sin(index, sprite->data[0]); + sprite->y2 = Sin(index, sprite->data[0]); HandleSetAffineData(sprite, 256, 256, Sin(var, 3276)); } @@ -1776,7 +1776,7 @@ static void RisingWobble(struct Sprite *sprite) if (sprite->data[2] > 100) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1785,7 +1785,7 @@ static void RisingWobble(struct Sprite *sprite) index = (sprite->data[2] * 256) / 100; var = (sprite->data[2] * 512) / 100; var &= 0xFF; - sprite->pos2.y = -(Sin(index / 2, sprite->data[0] * 2)); + sprite->y2 = -(Sin(index / 2, sprite->data[0] * 2)); HandleSetAffineData(sprite, 256, 256, Sin(var, 3276)); } @@ -1813,7 +1813,7 @@ static void Anim_HorizontalSlideWobble(struct Sprite *sprite) if (sprite->data[2] > 100) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1822,7 +1822,7 @@ static void Anim_HorizontalSlideWobble(struct Sprite *sprite) index = (sprite->data[2] * 256) / 100; var = (sprite->data[2] * 512) / 100; var &= 0xFF; - sprite->pos2.x = Sin(index, 8); + sprite->x2 = Sin(index, 8); HandleSetAffineData(sprite, 256, 256, Sin(var, 3276)); } @@ -1845,7 +1845,7 @@ static void VerticalSquishBounce(struct Sprite *sprite) if (sprite->data[2] > sprite->data[0] * 3) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1858,7 +1858,7 @@ static void VerticalSquishBounce(struct Sprite *sprite) if (yScale > 256) posY = (256 - yScale) / 8; - sprite->pos2.y = -(Sin(sprite->data[3], 10)) - posY; + sprite->y2 = -(Sin(sprite->data[3], 10)) - posY; HandleSetAffineData(sprite, 256 - Sin(sprite->data[4], 32), yScale, 0); sprite->data[2]++; sprite->data[4] = (sprite->data[4] + 128 / sprite->data[0]) & 0xFF; @@ -1881,7 +1881,7 @@ static void ShrinkGrow(struct Sprite *sprite) if (sprite->data[2] > (128 / sprite->data[6]) * sprite->data[7]) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1892,7 +1892,7 @@ static void ShrinkGrow(struct Sprite *sprite) if (yScale > 256) posY = (256 - yScale) / 8; - sprite->pos2.y = -(posY); + sprite->y2 = -(posY); HandleSetAffineData(sprite, Sin(sprite->data[4], 48) + 256, yScale, 0); sprite->data[2]++; sprite->data[4] = (sprite->data[4] + sprite->data[6]) & 0xFF; @@ -1961,8 +1961,8 @@ static void BounceRotateToSides(struct Sprite *sprite) if (sBounceRotateToSidesData[arrId][sprite->data[4]][2] == 0) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -1970,10 +1970,10 @@ static void BounceRotateToSides(struct Sprite *sprite) { u16 rotation; - sprite->pos2.y = -(Sin(r7 * 128 / sBounceRotateToSidesData[arrId][sprite->data[4]][2], 10)); - sprite->pos2.x = (r10 * r7 / sBounceRotateToSidesData[arrId][sprite->data[4]][2]) + r9; + sprite->y2 = -(Sin(r7 * 128 / sBounceRotateToSidesData[arrId][sprite->data[4]][2], 10)); + sprite->x2 = (r10 * r7 / sBounceRotateToSidesData[arrId][sprite->data[4]][2]) + r9; - rotation = -(var * sprite->pos2.x) / 8; + rotation = -(var * sprite->x2) / 8; HandleSetAffineData(sprite, 256, 256, rotation); if (r7 == sBounceRotateToSidesData[arrId][sprite->data[4]][2]) @@ -2039,9 +2039,9 @@ static void Anim_BackAndLunge(struct Sprite *sprite) static void BackAndLunge_0(struct Sprite *sprite) { TryFlipX(sprite); - if (++sprite->pos2.x > 7) + if (++sprite->x2 > 7) { - sprite->pos2.x = 8; + sprite->x2 = 8; sprite->data[7] = 2; sprite->callback = BackAndLunge_1; } @@ -2052,14 +2052,14 @@ static void BackAndLunge_1(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x -= sprite->data[7]; + sprite->x2 -= sprite->data[7]; sprite->data[7]++; - if (sprite->pos2.x <= 0) + if (sprite->x2 <= 0) { s16 subResult; u8 var = sprite->data[7]; sprite->data[6] = 0; - subResult = sprite->pos2.x; + subResult = sprite->x2; do { @@ -2081,7 +2081,7 @@ static void BackAndLunge_2(struct Sprite *sprite) u8 rotation; TryFlipX(sprite); - sprite->pos2.x -= sprite->data[7]; + sprite->x2 -= sprite->data[7]; sprite->data[7]++; rotation = (sprite->data[5] * 6) / sprite->data[6]; @@ -2090,9 +2090,9 @@ static void BackAndLunge_2(struct Sprite *sprite) HandleSetAffineData(sprite, 256, 256, rotation * 256); - if (sprite->pos2.x < -8) + if (sprite->x2 < -8) { - sprite->pos2.x = -8; + sprite->x2 = -8; sprite->data[4] = 2; sprite->data[3] = 0; sprite->data[2] = rotation; @@ -2118,7 +2118,7 @@ static void BackAndLunge_3(struct Sprite *sprite) } else { - sprite->pos2.x += sprite->data[4]; + sprite->x2 += sprite->data[4]; sprite->data[4] *= -1; sprite->data[3]++; } @@ -2130,10 +2130,10 @@ static void BackAndLunge_4(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x += 2; - if (sprite->pos2.x > 0) + sprite->x2 += 2; + if (sprite->x2 > 0) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -2155,15 +2155,15 @@ static void Anim_BackFlip(struct Sprite *sprite) static void BackFlip_0(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x++; - sprite->pos2.y--; + sprite->x2++; + sprite->y2--; - if (sprite->pos2.x % 2 == 0 && sprite->data[3] <= 0) + if (sprite->x2 % 2 == 0 && sprite->data[3] <= 0) sprite->data[3] = 10; - if (sprite->pos2.x > 7) + if (sprite->x2 > 7) { - sprite->pos2.x = 8; - sprite->pos2.y = -8; + sprite->x2 = 8; + sprite->y2 = -8; sprite->data[4] = 0; sprite->callback = BackFlip_1; } @@ -2174,8 +2174,8 @@ static void BackFlip_0(struct Sprite *sprite) static void BackFlip_1(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x = Cos(sprite->data[4], 16) - 8; - sprite->pos2.y = Sin(sprite->data[4], 16) - 8; + sprite->x2 = Cos(sprite->data[4], 16) - 8; + sprite->y2 = Sin(sprite->data[4], 16) - 8; if (sprite->data[4] > 63) { @@ -2202,16 +2202,16 @@ static void BackFlip_2(struct Sprite *sprite) { u32 rotation; - sprite->pos2.x = Cos(sprite->data[2], 5) - 4; - sprite->pos2.y = -(Sin(sprite->data[2], 5)) + 4; + sprite->x2 = Cos(sprite->data[2], 5) - 4; + sprite->y2 = -(Sin(sprite->data[2], 5)) + 4; sprite->data[2] -= 4; rotation = sprite->data[2] - 32; HandleSetAffineData(sprite, 256, 256, rotation * 512); if (sprite->data[2] <= 32) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -2252,13 +2252,13 @@ static void Anim_BackFlipBig(struct Sprite *sprite) static void BackFlipBig_0(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x--; - sprite->pos2.y++; + sprite->x2--; + sprite->y2++; - if (sprite->pos2.x <= -16) + if (sprite->x2 <= -16) { - sprite->pos2.x = -16; - sprite->pos2.y = 16; + sprite->x2 = -16; + sprite->y2 = 16; sprite->callback = BackFlipBig_1; sprite->data[2] = 160; } @@ -2272,8 +2272,8 @@ static void BackFlipBig_1(struct Sprite *sprite) TryFlipX(sprite); sprite->data[2] -= 4; - sprite->pos2.x = Cos(sprite->data[2], 22); - sprite->pos2.y = -(Sin(sprite->data[2], 22)); + sprite->x2 = Cos(sprite->data[2], 22); + sprite->y2 = -(Sin(sprite->data[2], 22)); rotation = sprite->data[2] - 32; HandleSetAffineData(sprite, 256, 256, rotation * 512); @@ -2286,10 +2286,10 @@ static void BackFlipBig_1(struct Sprite *sprite) static void BackFlipBig_2(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x--; - sprite->pos2.y++; + sprite->x2--; + sprite->y2++; - if (sprite->pos2.x <= 0) + if (sprite->x2 <= 0) { ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -2311,10 +2311,10 @@ static void Anim_FrontFlip(struct Sprite *sprite) static void FrontFlip_0(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x++; - sprite->pos2.y--; + sprite->x2++; + sprite->y2--; - if (sprite->pos2.x > 15) + if (sprite->x2 > 15) { sprite->data[2] = 0; sprite->callback = FrontFlip_1; @@ -2328,17 +2328,17 @@ static void FrontFlip_1(struct Sprite *sprite) TryFlipX(sprite); sprite->data[2] += 16; - if (sprite->pos2.x <= -16) + if (sprite->x2 <= -16) { - sprite->pos2.x = -16; - sprite->pos2.y = 16; + sprite->x2 = -16; + sprite->y2 = 16; sprite->data[2] = 0; sprite->callback = FrontFlip_2; } else { - sprite->pos2.x -= 2; - sprite->pos2.y += 2; + sprite->x2 -= 2; + sprite->y2 += 2; } HandleSetAffineData(sprite, 256, 256, sprite->data[2] << 8); @@ -2348,13 +2348,13 @@ static void FrontFlip_1(struct Sprite *sprite) static void FrontFlip_2(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x++; - sprite->pos2.y--;; + sprite->x2++; + sprite->y2--;; - if (sprite->pos2.x >= 0) + if (sprite->x2 >= 0) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -2392,26 +2392,26 @@ static void TumblingFrontFlip(struct Sprite *sprite) sprite->data[6] = 0; } - sprite->pos2.x += (sprite->data[7] * 2 * sprite->data[3]); - sprite->pos2.y += (sprite->data[7] * sprite->data[4]); + sprite->x2 += (sprite->data[7] * 2 * sprite->data[3]); + sprite->y2 += (sprite->data[7] * sprite->data[4]); sprite->data[6] += 8; - if (sprite->pos2.x <= -16 || sprite->pos2.x >= 16) + if (sprite->x2 <= -16 || sprite->x2 >= 16) { - sprite->pos2.x = sprite->data[3] * 16; + sprite->x2 = sprite->data[3] * 16; sprite->data[3] *= -1; sprite->data[5]++; } - else if (sprite->pos2.y <= -16 || sprite->pos2.y >= 16) + else if (sprite->y2 <= -16 || sprite->y2 >= 16) { - sprite->pos2.y = sprite->data[4] * 16; + sprite->y2 = sprite->data[4] * 16; sprite->data[4] *= -1; sprite->data[5]++; } - if (sprite->data[5] > 5 && sprite->pos2.x <= 0) + if (sprite->data[5] > 5 && sprite->x2 <= 0) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; if (sAnims[sprite->data[0]].runs > 1) { sAnims[sprite->data[0]].runs--; @@ -2445,8 +2445,8 @@ static void Figure8(struct Sprite *sprite) { TryFlipX(sprite); sprite->data[6] += 4; - sprite->pos2.x = -(Sin(sprite->data[6], 16)); - sprite->pos2.y = -(Sin((sprite->data[6] * 2) & 0xFF, 8)); + sprite->x2 = -(Sin(sprite->data[6], 16)); + sprite->y2 = -(Sin((sprite->data[6] * 2) & 0xFF, 8)); if (sprite->data[6] > 192 && sprite->data[7] == 1) { HandleSetAffineData(sprite, 256, 256, 0); @@ -2460,8 +2460,8 @@ static void Figure8(struct Sprite *sprite) if (sprite->data[6] > 255) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -2517,7 +2517,7 @@ static void SwingConcave(struct Sprite *sprite) if (sprite->data[2] > sAnims[sprite->data[0]].data) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; + sprite->x2 = 0; if (sAnims[sprite->data[0]].runs > 1) { sAnims[sprite->data[0]].runs--; @@ -2532,7 +2532,7 @@ static void SwingConcave(struct Sprite *sprite) else { s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].data; - sprite->pos2.x = -(Sin(index, 10)); + sprite->x2 = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, Sin(index, 3276)); } @@ -2557,7 +2557,7 @@ static void SwingConvex(struct Sprite *sprite) if (sprite->data[2] > sAnims[sprite->data[0]].data) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; + sprite->x2 = 0; if (sAnims[sprite->data[0]].runs > 1) { sAnims[sprite->data[0]].runs--; @@ -2572,7 +2572,7 @@ static void SwingConvex(struct Sprite *sprite) else { s16 index = (sprite->data[2] * 256) / sAnims[sprite->data[0]].data; - sprite->pos2.x = -(Sin(index, 10)); + sprite->x2 = -(Sin(index, 10)); HandleSetAffineData(sprite, 256, 256, -(Sin(index, 3276))); } @@ -2604,9 +2604,9 @@ static void RotateUpSlamDown_0(struct Sprite *sprite) { TryFlipX(sprite); sprite->data[7]--; - sprite->pos2.x = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); + sprite->x2 = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); - sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6])); + sprite->y2 = -(Sin(sprite->data[7], sprite->data[6])); HandleSetAffineData(sprite, 256, 256, (sprite->data[7] - 128) << 8); if (sprite->data[7] <= 120) @@ -2634,15 +2634,15 @@ static void RotateUpSlamDown_2(struct Sprite *sprite) { TryFlipX(sprite); sprite->data[7] += 2; - sprite->pos2.x = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); + sprite->x2 = sprite->data[6] + Cos(sprite->data[7], sprite->data[6]); - sprite->pos2.y = -(Sin(sprite->data[7], sprite->data[6])); + sprite->y2 = -(Sin(sprite->data[7], sprite->data[6])); HandleSetAffineData(sprite, 256, 256, (sprite->data[7] - 128) << 8); if (sprite->data[7] >= 128) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); sprite->data[2] = 0; ResetSpriteAfterAnim(sprite); @@ -2671,7 +2671,7 @@ static void DeepVerticalSquishBounce(struct Sprite *sprite) if (sprite->data[5] == 0) { sprite->data[7] = Sin(sprite->data[4], 256); - sprite->pos2.y = Sin(sprite->data[4], 16); + sprite->y2 = Sin(sprite->data[4], 16); sprite->data[6] = Sin(sprite->data[4], 32); HandleSetAffineData(sprite, 256 - sprite->data[6], 256 + sprite->data[7], 0); if (sprite->data[4] == 128) @@ -2683,7 +2683,7 @@ static void DeepVerticalSquishBounce(struct Sprite *sprite) else if (sprite->data[5] == 1) { sprite->data[7] = Sin(sprite->data[4], 32); - sprite->pos2.y = -(Sin(sprite->data[4], 8)); + sprite->y2 = -(Sin(sprite->data[4], 8)); sprite->data[6] = Sin(sprite->data[4], 128); HandleSetAffineData(sprite, 256 + sprite->data[6], 256 - sprite->data[7], 0); if (sprite->data[4] == 128) @@ -2723,28 +2723,28 @@ static void Anim_HorizontalJumps(struct Sprite *sprite) if (counter > 512) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { switch (sprite->data[2] / 128) { case 0: - sprite->pos2.x = -(counter % 128 * 8) / 128; + sprite->x2 = -(counter % 128 * 8) / 128; break; case 1: - sprite->pos2.x = (counter % 128 / 16) - 8; + sprite->x2 = (counter % 128 / 16) - 8; break; case 2: - sprite->pos2.x = (counter % 128 / 16); + sprite->x2 = (counter % 128 / 16); break; case 3: - sprite->pos2.x = -(counter % 128 * 8) / 128 + 8; + sprite->x2 = -(counter % 128 * 8) / 128 + 8; break; } - sprite->pos2.y = -(Sin(counter % 128, 8)); + sprite->y2 = -(Sin(counter % 128, 8)); } sprite->data[2] += 12; @@ -2785,8 +2785,8 @@ static void HorizontalJumpsVerticalStretch_0(struct Sprite *sprite) else { s32 var = 8 * sAnims[sprite->data[0]].data; - sprite->pos2.x = var * (counter % 128) / 128; - sprite->pos2.y = -(Sin(counter % 128, 8)); + sprite->x2 = var * (counter % 128) / 128; + sprite->y2 = -(Sin(counter % 128, 8)); sprite->data[2] += 12; } @@ -2800,7 +2800,7 @@ static void HorizontalJumpsVerticalStretch_1(struct Sprite *sprite) if (sprite->data[2] > 48) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[2] = 0; sprite->callback = HorizontalJumpsVerticalStretch_2; } @@ -2811,14 +2811,14 @@ static void HorizontalJumpsVerticalStretch_1(struct Sprite *sprite) if (sprite->data[2] >= 16 && sprite->data[2] <= 31) { sprite->data[3] += 8; - sprite->pos2.x -= sAnims[sprite->data[0]].data; + sprite->x2 -= sAnims[sprite->data[0]].data; } yDelta = 0; if (yScale > 256) yDelta = (256 - yScale) / 8; - sprite->pos2.y = -(Sin(sprite->data[3], 20)) - yDelta; + sprite->y2 = -(Sin(sprite->data[3], 20)) - yDelta; HandleSetAffineData(sprite, 256 - Sin(sprite->data[4], 32), yScale, 0); sprite->data[2]++; sprite->data[4] += 8; @@ -2851,15 +2851,15 @@ static void HorizontalJumpsVerticalStretch_2(struct Sprite *sprite) sprite->callback = WaitAnimEnd; } - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { s32 var = sAnims[sprite->data[0]].data; - sprite->pos2.x = var * ((counter % 128) * 8) / 128 + 8 * -var; - sprite->pos2.y = -(Sin(counter % 128, 8)); + sprite->x2 = var * ((counter % 128) * 8) / 128 + 8 * -var; + sprite->y2 = -(Sin(counter % 128, 8)); } sprite->data[2] += 12; @@ -2877,8 +2877,8 @@ static void RotateToSides(struct Sprite *sprite) TryFlipX(sprite); if (sprite->data[7] > 254) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); if (sAnims[sprite->data[0]].runs > 1) { @@ -2898,7 +2898,7 @@ static void RotateToSides(struct Sprite *sprite) { u16 rotation; - sprite->pos2.x = -(Sin(sprite->data[7], 16)); + sprite->x2 = -(Sin(sprite->data[7], 16)); rotation = Sin(sprite->data[7], 32); HandleSetAffineData(sprite, 256, 256, rotation << 8); sprite->data[7] += sAnims[sprite->data[0]].rotation; @@ -2925,8 +2925,8 @@ static void Anim_RotateUpToSides(struct Sprite *sprite) TryFlipX(sprite); if (sprite->data[7] > 254) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -2936,8 +2936,8 @@ static void Anim_RotateUpToSides(struct Sprite *sprite) { u16 rotation; - sprite->pos2.x = -(Sin(sprite->data[7], 16)); - sprite->pos2.y = -(Sin(sprite->data[7] % 128, 16)); + sprite->x2 = -(Sin(sprite->data[7], 16)); + sprite->y2 = -(Sin(sprite->data[7] % 128, 16)); rotation = Sin(sprite->data[7], 32); HandleSetAffineData(sprite, 256, 256, rotation << 8); sprite->data[7] += 8; @@ -3006,8 +3006,8 @@ static void TipHopForward_1(struct Sprite *sprite) } else { - sprite->pos2.x = -(sprite->data[2] * 16) / 512; - sprite->pos2.y = -(Sin(sprite->data[2] % 128, 4)); + sprite->x2 = -(sprite->data[2] * 16) / 512; + sprite->y2 = -(Sin(sprite->data[2] % 128, 4)); sprite->data[2] += 12; } @@ -3021,13 +3021,13 @@ static void TipHopForward_2(struct Sprite *sprite) if (sprite->data[7] < 0) { sprite->data[7] = 0; - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } else { - sprite->pos2.x = -(Sin(sprite->data[7] * 2, 16)); + sprite->x2 = -(Sin(sprite->data[7] * 2, 16)); } HandleSetAffineData(sprite, 256, 256, sprite->data[7] << 8); @@ -3048,8 +3048,8 @@ static void Anim_PivotShake(struct Sprite *sprite) TryFlipX(sprite); if (sprite->data[7] > 255) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[7] = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -3057,8 +3057,8 @@ static void Anim_PivotShake(struct Sprite *sprite) else { sprite->data[7] += 16; - sprite->pos2.x = -(Sin(sprite->data[7] % 128, 8)); - sprite->pos2.y = -(Sin(sprite->data[7] % 128, 8)); + sprite->x2 = -(Sin(sprite->data[7] % 128, 8)); + sprite->y2 = -(Sin(sprite->data[7] % 128, 8)); } rotation = Sin(sprite->data[7] % 128, 16); @@ -3093,8 +3093,8 @@ static void TipAndShake_0(struct Sprite *sprite) else { sprite->data[7] += 2; - sprite->pos2.x = Sin(sprite->data[7], 8); - sprite->pos2.y = -(Sin(sprite->data[7], 8)); + sprite->x2 = Sin(sprite->data[7], 8); + sprite->y2 = -(Sin(sprite->data[7], 8)); } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); @@ -3112,8 +3112,8 @@ static void TipAndShake_1(struct Sprite *sprite) else { sprite->data[7] += 2; - sprite->pos2.x = Sin(sprite->data[7], 8); - sprite->pos2.y = -(Sin(sprite->data[7], 8)); + sprite->x2 = Sin(sprite->data[7], 8); + sprite->y2 = -(Sin(sprite->data[7], 8)); } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); @@ -3130,8 +3130,8 @@ static void TipAndShake_2(struct Sprite *sprite) sprite->callback = TipAndShake_3; } - sprite->pos2.x = Sin(sprite->data[7], 8); - sprite->pos2.y = -(Sin(sprite->data[7], 8)); + sprite->x2 = Sin(sprite->data[7], 8); + sprite->y2 = -(Sin(sprite->data[7], 8)); if (sprite->data[7] <= 28 || sprite->data[7] >= 36) { sprite->data[6] *= -1; @@ -3154,8 +3154,8 @@ static void TipAndShake_3(struct Sprite *sprite) else { sprite->data[7] -= 2; - sprite->pos2.x = Sin(sprite->data[7], 8); - sprite->pos2.y = -(Sin(sprite->data[7], 8)); + sprite->x2 = Sin(sprite->data[7], 8); + sprite->y2 = -(Sin(sprite->data[7], 8)); } HandleSetAffineData(sprite, 256, 256, -(sprite->data[7]) << 8); @@ -3168,7 +3168,7 @@ static void Anim_VibrateToCorners(struct Sprite *sprite) if (sprite->data[2] > 40) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { @@ -3180,13 +3180,13 @@ static void Anim_VibrateToCorners(struct Sprite *sprite) if ((sprite->data[2] % 4) / 2 == 0) { - sprite->pos2.x = Sin((sprite->data[2] * 128 / 40) % 256, 16) * sign; - sprite->pos2.y = -(sprite->pos2.x); + sprite->x2 = Sin((sprite->data[2] * 128 / 40) % 256, 16) * sign; + sprite->y2 = -(sprite->x2); } else { - sprite->pos2.x = -(Sin((sprite->data[2] * 128 / 40) % 256, 16)) * sign; - sprite->pos2.y = sprite->pos2.x; + sprite->x2 = -(Sin((sprite->data[2] * 128 / 40) % 256, 16)) * sign; + sprite->y2 = sprite->x2; } } @@ -3273,7 +3273,7 @@ static void Anim_VerticalSpring(struct Sprite *sprite) if (sprite->data[7] > 512) { - sprite->pos2.y = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -3282,7 +3282,7 @@ static void Anim_VerticalSpring(struct Sprite *sprite) { s16 yScale; - sprite->pos2.y = Sin(sprite->data[7] % 256, 8); + sprite->y2 = Sin(sprite->data[7] % 256, 8); sprite->data[7] += 8; yScale = Sin(sprite->data[7] % 128, 96); HandleSetAffineData(sprite, 256, yScale + 256, 0); @@ -3300,7 +3300,7 @@ static void Anim_VerticalRepeatedSpring(struct Sprite *sprite) if (sprite->data[7] > 256) { - sprite->pos2.y = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -3309,7 +3309,7 @@ static void Anim_VerticalRepeatedSpring(struct Sprite *sprite) { s16 yScale; - sprite->pos2.y = Sin(sprite->data[7], 16); + sprite->y2 = Sin(sprite->data[7], 16); sprite->data[7] += 4; yScale = Sin((sprite->data[7] % 64) * 2, 128); HandleSetAffineData(sprite, 256, yScale + 256, 0); @@ -3362,7 +3362,7 @@ static void SpringRising_1(struct Sprite *sprite) { s16 sign, index; - sprite->pos2.y = -(sprite->data[6] * 4) - Sin(sprite->data[7], 8); + sprite->y2 = -(sprite->data[6] * 4) - Sin(sprite->data[7], 8); if (sprite->data[7] > 63) { sign = -1; @@ -3391,12 +3391,12 @@ static void SpringRising_2(struct Sprite *sprite) sprite->data[7] += 8; yScale = Cos(sprite->data[7], 128); - sprite->pos2.y = -(Cos(sprite->data[7], 12)); + sprite->y2 = -(Cos(sprite->data[7], 12)); if (sprite->data[7] > 63) { ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); } @@ -3407,7 +3407,7 @@ static void HorizontalSpring(struct Sprite *sprite) { if (sprite->data[7] > sprite->data[5]) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; HandleSetAffineData(sprite, 256, 256, 0); @@ -3416,7 +3416,7 @@ static void HorizontalSpring(struct Sprite *sprite) { s16 xScale; - sprite->pos2.x = Sin(sprite->data[7] % 256, sprite->data[4]); + sprite->x2 = Sin(sprite->data[7] % 256, sprite->data[4]); sprite->data[7] += sprite->data[6]; xScale = Sin(sprite->data[7] % 128, 96); HandleSetAffineData(sprite, 256 + xScale, 256, 0); @@ -3442,7 +3442,7 @@ static void HorizontalRepeatedSpring(struct Sprite *sprite) { if (sprite->data[7] > sprite->data[5]) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; HandleSetAffineData(sprite, 256, 256, 0); @@ -3451,7 +3451,7 @@ static void HorizontalRepeatedSpring(struct Sprite *sprite) { s16 xScale; - sprite->pos2.x = Sin(sprite->data[7] % 256, sprite->data[4]); + sprite->x2 = Sin(sprite->data[7] % 256, sprite->data[4]); sprite->data[7] += sprite->data[6]; xScale = Sin((sprite->data[7] % 64) * 2, 128); HandleSetAffineData(sprite, 256 + xScale, 256, 0); @@ -3485,7 +3485,7 @@ static void Anim_HorizontalSlideShrink(struct Sprite *sprite) if (sprite->data[7] > 512) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); sprite->callback = WaitAnimEnd; @@ -3494,7 +3494,7 @@ static void Anim_HorizontalSlideShrink(struct Sprite *sprite) { s16 scale; - sprite->pos2.x = Sin(sprite->data[7] % 256, 8); + sprite->x2 = Sin(sprite->data[7] % 256, 8); sprite->data[7] += 8; scale = Sin(sprite->data[7] % 128, 96); HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); @@ -3515,7 +3515,7 @@ static void Anim_LungeGrow(struct Sprite *sprite) if (sprite->data[7] > 512) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); sprite->callback = WaitAnimEnd; @@ -3524,7 +3524,7 @@ static void Anim_LungeGrow(struct Sprite *sprite) { s16 scale; - sprite->pos2.x = -(Sin((sprite->data[7] % 256) / 2, 16)); + sprite->x2 = -(Sin((sprite->data[7] % 256) / 2, 16)); sprite->data[7] += 8; scale = -(Sin((sprite->data[7] % 256) / 2, 64)); HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); @@ -3545,7 +3545,7 @@ static void Anim_CircleIntoBackground(struct Sprite *sprite) if (sprite->data[7] > 512) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); HandleSetAffineData(sprite, 256, 256, 0); sprite->callback = WaitAnimEnd; @@ -3554,7 +3554,7 @@ static void Anim_CircleIntoBackground(struct Sprite *sprite) { s16 scale; - sprite->pos2.x = -(Sin(sprite->data[7] % 256 , 8)); + sprite->x2 = -(Sin(sprite->data[7] % 256 , 8)); sprite->data[7] += 8; scale = Sin((sprite->data[7] % 256) / 2, 96); HandleSetAffineData(sprite, 256 + scale, 256 + scale, 0); @@ -3577,20 +3577,20 @@ static void Anim_RapidHorizontalHops(struct Sprite *sprite) switch (caseVar) { case 0: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512; break; case 1: - sprite->pos2.x = (sprite->data[2] % 512 / 32) - 16; + sprite->x2 = (sprite->data[2] % 512 / 32) - 16; break; case 2: - sprite->pos2.x = (sprite->data[2] % 512) / 32; + sprite->x2 = (sprite->data[2] % 512) / 32; break; case 3: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512 + 16; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512 + 16; break; } - sprite->pos2.y = -(Sin(sprite->data[2] % 128, 4)); + sprite->y2 = -(Sin(sprite->data[2] % 128, 4)); sprite->data[2] += 24; } @@ -3628,25 +3628,25 @@ static void Anim_FourPetal(struct Sprite *sprite) switch (sprite->data[6]) { case 1: - sprite->pos2.x = -(Cos(sprite->data[7], 8)); - sprite->pos2.y = Sin(sprite->data[7], 8) - 8; + sprite->x2 = -(Cos(sprite->data[7], 8)); + sprite->y2 = Sin(sprite->data[7], 8) - 8; break; case 2: - sprite->pos2.x = Sin(sprite->data[7] + 128, 8) + 8; - sprite->pos2.y = -(Cos(sprite->data[7], 8)); + sprite->x2 = Sin(sprite->data[7] + 128, 8) + 8; + sprite->y2 = -(Cos(sprite->data[7], 8)); break; case 3: - sprite->pos2.x = Cos(sprite->data[7], 8); - sprite->pos2.y = Sin(sprite->data[7] + 128, 8) + 8; + sprite->x2 = Cos(sprite->data[7], 8); + sprite->y2 = Sin(sprite->data[7] + 128, 8) + 8; break; case 0: case 4: - sprite->pos2.x = Sin(sprite->data[7], 8) - 8; - sprite->pos2.y = Cos(sprite->data[7], 8); + sprite->x2 = Sin(sprite->data[7], 8) - 8; + sprite->y2 = Cos(sprite->data[7], 8); break; default: - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->callback = WaitAnimEnd; break; } @@ -3877,11 +3877,11 @@ static void VerticalShakeBack(struct Sprite *sprite) if (counter > 2304) { sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; } else { - sprite->pos2.y = Sin((counter + 192) % 256, sprite->data[7]) + sprite->data[7]; + sprite->y2 = Sin((counter + 192) % 256, sprite->data[7]) + sprite->data[7]; } sprite->data[2] += sprite->data[0]; @@ -3917,20 +3917,20 @@ static void Anim_VerticalShakeHorizontalSlide_Slow(struct Sprite *sprite) switch (divCase) { case 0: - sprite->pos2.x = (sprite->data[2] % 512) / 32; + sprite->x2 = (sprite->data[2] % 512) / 32; break; case 2: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512; break; case 1: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512 + 16; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512 + 16; break; case 3: - sprite->pos2.x = (sprite->data[2] % 512) / 32 - 16; + sprite->x2 = (sprite->data[2] % 512) / 32 - 16; break; } - sprite->pos2.y = Sin(sprite->data[2] % 128, 4); + sprite->y2 = Sin(sprite->data[2] % 128, 4); sprite->data[2] += 24; } @@ -3943,7 +3943,7 @@ static void VerticalStretchBothEnds(struct Sprite *sprite) if (sprite->data[5] > sprite->data[6]) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[5] = 0; HandleSetAffineData(sprite, 256, 256, 0); if (sprite->data[4] <= 1) @@ -4079,11 +4079,11 @@ static void VerticalShakeLowTwice(struct Sprite *sprite) if (var5 == (u8)-1) { sprite->callback = WaitAnimEnd; - sprite->pos2.y = 0; + sprite->y2 = 0; } else { - sprite->pos2.y = Sin((var8 + 192) % 256, var7) + var7; + sprite->y2 = Sin((var8 + 192) % 256, var7) + var7; if (var9 == var6) { sprite->data[5]++; @@ -4126,7 +4126,7 @@ static void Anim_HorizontalVibrate_Fast(struct Sprite *sprite) if (sprite->data[2] > 40) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { @@ -4136,7 +4136,7 @@ static void Anim_HorizontalVibrate_Fast(struct Sprite *sprite) else sign = -1; - sprite->pos2.x = Sin((sprite->data[2] * 128 / 40) % 256, 9) * sign; + sprite->x2 = Sin((sprite->data[2] * 128 / 40) % 256, 9) * sign; } sprite->data[2]++; @@ -4147,7 +4147,7 @@ static void Anim_HorizontalVibrate_Fastest(struct Sprite *sprite) if (sprite->data[2] > 40) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { @@ -4157,7 +4157,7 @@ static void Anim_HorizontalVibrate_Fastest(struct Sprite *sprite) else sign = -1; - sprite->pos2.x = Sin((sprite->data[2] * 128 / 40) % 256, 12) * sign; + sprite->x2 = Sin((sprite->data[2] * 128 / 40) % 256, 12) * sign; } sprite->data[2]++; @@ -4203,7 +4203,7 @@ static void GrowStutter(struct Sprite *sprite) s16 index1 = 0, index2 = 0; if (sprite->data[5] > sprite->data[6]) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->data[5] = 0; HandleSetAffineData(sprite, 256, 256, 0); if (sprite->data[4] <= 1) @@ -4274,20 +4274,20 @@ static void Anim_VerticalShakeHorizontalSlide(struct Sprite *sprite) switch (divCase) { case 0: - sprite->pos2.x = (sprite->data[2] % 512) / 32; + sprite->x2 = (sprite->data[2] % 512) / 32; break; case 2: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512; break; case 1: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512 + 16; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512 + 16; break; case 3: - sprite->pos2.x = (sprite->data[2] % 512) / 32 - 16; + sprite->x2 = (sprite->data[2] % 512) / 32 - 16; break; } - sprite->pos2.y = Sin(sprite->data[2] % 128, 4); + sprite->y2 = Sin(sprite->data[2] % 128, 4); sprite->data[2] += 48; } @@ -4308,20 +4308,20 @@ static void Anim_VerticalShakeHorizontalSlide_Fast(struct Sprite *sprite) switch (divCase) { case 0: - sprite->pos2.x = (sprite->data[2] % 512) / 32; + sprite->x2 = (sprite->data[2] % 512) / 32; break; case 2: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512; break; case 1: - sprite->pos2.x = -(sprite->data[2] % 512 * 16) / 512 + 16; + sprite->x2 = -(sprite->data[2] % 512 * 16) / 512 + 16; break; case 3: - sprite->pos2.x = (sprite->data[2] % 512) / 32 - 16; + sprite->x2 = (sprite->data[2] % 512) / 32 - 16; break; } - sprite->pos2.y = Sin(sprite->data[2] % 96, 4); + sprite->y2 = Sin(sprite->data[2] % 96, 4); sprite->data[2] += 64; } @@ -4359,8 +4359,8 @@ static void TriangleDown(struct Sprite *sprite) else { s32 amplitude = sprite->data[5]; - sprite->pos2.x += (sTriangleDownData[sprite->data[3]][0] * amplitude); - sprite->pos2.y += (sTriangleDownData[sprite->data[3]][1] * sprite->data[5]); // Not using amplitude here. No reason for this. + sprite->x2 += (sTriangleDownData[sprite->data[3]][0] * amplitude); + sprite->y2 += (sTriangleDownData[sprite->data[3]][1] * sprite->data[5]); // Not using amplitude here. No reason for this. sprite->data[2]++; TryFlipX(sprite); } @@ -4636,8 +4636,8 @@ static void ConcaveArc(struct Sprite *sprite) if (sprite->data[6] <= 1) { sprite->callback = WaitAnimEnd; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { @@ -4647,12 +4647,12 @@ static void ConcaveArc(struct Sprite *sprite) } else { - sprite->pos2.x = -(Sin(sprite->data[7], sprite->data[5])); - sprite->pos2.y = Sin((sprite->data[7] + 192) % 256, sprite->data[4]); - if (sprite->pos2.y > 0) - sprite->pos2.y *= -1; + sprite->x2 = -(Sin(sprite->data[7], sprite->data[5])); + sprite->y2 = Sin((sprite->data[7] + 192) % 256, sprite->data[4]); + if (sprite->y2 > 0) + sprite->y2 *= -1; - sprite->pos2.y += sprite->data[4]; + sprite->y2 += sprite->data[4]; sprite->data[7] += sprite->data[3]; } } @@ -4716,8 +4716,8 @@ static void ConvexDoubleArc(struct Sprite *sprite) sprite->data[7] = 0; } - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { @@ -4728,22 +4728,22 @@ static void ConvexDoubleArc(struct Sprite *sprite) if (sprite->data[7] > 256) sprite->data[7] = 256; - sprite->pos2.y = -(Sin(sprite->data[7] % 256, 8)); + sprite->y2 = -(Sin(sprite->data[7] % 256, 8)); } else if (sprite->data[7] > 95) { - sprite->pos2.y = Sin(96, 6) - Sin((sprite->data[7] - 96) * 2, 4); + sprite->y2 = Sin(96, 6) - Sin((sprite->data[7] - 96) * 2, 4); } else { - sprite->pos2.y = Sin(sprite->data[7], 6); + sprite->y2 = Sin(sprite->data[7], 6); } posX = -(Sin(sprite->data[7] / 2, sprite->data[5])); if (sprite->data[4] % 2 == 0) posX *= -1; - sprite->pos2.x = posX; + sprite->x2 = posX; sprite->data[7] += sprite->data[3]; } } @@ -4861,8 +4861,8 @@ static void Anim_HorizontalDip(struct Sprite *sprite) if (sprite->data[2] > sprite->data[7]) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { @@ -4898,8 +4898,8 @@ static void Anim_HorizontalDip_Fast(struct Sprite *sprite) if (sprite->data[2] > sprite->data[7]) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { @@ -4935,8 +4935,8 @@ static void Anim_HorizontalDip_Twice(struct Sprite *sprite) if (sprite->data[2] > sprite->data[7]) { HandleSetAffineData(sprite, 256, 256, 0); - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->data[0]++; if (sprite->data[3] <= sprite->data[0]) { @@ -4961,7 +4961,7 @@ static void ShrinkGrowVibrate(struct Sprite *sprite) { if (sprite->data[2] > sprite->data[7]) { - sprite->pos2.y = 0; + sprite->y2 = 0; HandleSetAffineData(sprite, 256, 256, 0); ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; @@ -4990,7 +4990,7 @@ static void ShrinkGrowVibrate(struct Sprite *sprite) posY = posY_signed; if (posY < 0) posY += 7; - sprite->pos2.y = (u32)(posY) >> 3; + sprite->y2 = (u32)(posY) >> 3; HandleSetAffineData(sprite, sprite->data[4], sprite->data[5], 0); } @@ -5002,7 +5002,7 @@ static void Anim_ShrinkGrowVibrate_Fast(struct Sprite *sprite) if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); - sprite->pos2.y += 2; + sprite->y2 += 2; sprite->data[6] = 40; sprite->data[7] = 80; } @@ -5015,7 +5015,7 @@ static void Anim_ShrinkGrowVibrate(struct Sprite *sprite) if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); - sprite->pos2.y += 2; + sprite->y2 += 2; sprite->data[6] = 40; sprite->data[7] = 40; } @@ -5028,7 +5028,7 @@ static void Anim_ShrinkGrowVibrate_Slow(struct Sprite *sprite) if (sprite->data[2] == 0) { HandleStartAffineAnim(sprite); - sprite->pos2.y += 2; + sprite->y2 += 2; sprite->data[6] = 80; sprite->data[7] = 80; } @@ -5044,10 +5044,10 @@ static void JoltRight_3(struct Sprite *sprite); static void JoltRight(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x -= sprite->data[2]; - if (sprite->pos2.x <= -sprite->data[6]) + sprite->x2 -= sprite->data[2]; + if (sprite->x2 <= -sprite->data[6]) { - sprite->pos2.x = -sprite->data[6]; + sprite->x2 = -sprite->data[6]; sprite->data[7] = 2; sprite->callback = JoltRight_0; } @@ -5058,9 +5058,9 @@ static void JoltRight(struct Sprite *sprite) static void JoltRight_0(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x += sprite->data[7]; + sprite->x2 += sprite->data[7]; sprite->data[7]++; - if (sprite->pos2.x >= 0) + if (sprite->x2 >= 0) sprite->callback = JoltRight_1; TryFlipX(sprite); @@ -5069,11 +5069,11 @@ static void JoltRight_0(struct Sprite *sprite) static void JoltRight_1(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x += sprite->data[7]; + sprite->x2 += sprite->data[7]; sprite->data[7]++; - if (sprite->pos2.x > sprite->data[6]) + if (sprite->x2 > sprite->data[6]) { - sprite->pos2.x = sprite->data[6]; + sprite->x2 = sprite->data[6]; sprite->callback = JoltRight_2; } @@ -5089,7 +5089,7 @@ static void JoltRight_2(struct Sprite *sprite) } else { - sprite->pos2.x += sprite->data[4]; + sprite->x2 += sprite->data[4]; sprite->data[4] *= -1; sprite->data[3]++; } @@ -5100,10 +5100,10 @@ static void JoltRight_2(struct Sprite *sprite) static void JoltRight_3(struct Sprite *sprite) { TryFlipX(sprite); - sprite->pos2.x -= 2; - if (sprite->pos2.x <= 0) + sprite->x2 -= 2; + if (sprite->x2 <= 0) { - sprite->pos2.x = 0; + sprite->x2 = 0; ResetSpriteAfterAnim(sprite); sprite->callback = WaitAnimEnd; } @@ -5149,7 +5149,7 @@ static void Anim_JoltRight_Slow(struct Sprite *sprite) static void SetShakeFlashYellowPos(struct Sprite *sprite) { - sprite->pos2.x = sprite->data[1]; + sprite->x2 = sprite->data[1]; if (sprite->data[0] > 1) { sprite->data[1] *= -1; @@ -5230,7 +5230,7 @@ static void ShakeFlashYellow(struct Sprite *sprite) SetShakeFlashYellowPos(sprite); if (array[sprite->data[6]].time == (u8)-1) { - sprite->pos2.x = 0; + sprite->x2 = 0; sprite->callback = WaitAnimEnd; } else @@ -5339,12 +5339,12 @@ static void ShakeGlow_Move(struct Sprite *sprite) if (++sprite->data[3] < sprite->data[4]) sprite->data[5] = 0; - sprite->pos2.x = 0; + sprite->x2 = 0; } else { s8 sign = 1 - (sprite->data[3] % 2 * 2); - sprite->pos2.x = sign * Sin((sprite->data[5] * 384 / sprite->data[0]) % 256, 6); + sprite->x2 = sign * Sin((sprite->data[5] * 384 / sprite->data[0]) % 256, 6); sprite->data[5]++; } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 5c678ed8c4dc..8fe590a0cdd9 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -2764,7 +2764,7 @@ static void DoStarAnim(struct PokemonJumpGfx *jumpGfx, int multiplayerId) ResetPokeJumpSpriteData(jumpGfx->starSprites[multiplayerId]); jumpGfx->starSprites[multiplayerId]->sOffset = jumpGfx->monSprites[multiplayerId] - gSprites; jumpGfx->starSprites[multiplayerId]->invisible = FALSE; - jumpGfx->starSprites[multiplayerId]->pos1.y = 96; + jumpGfx->starSprites[multiplayerId]->y = 96; jumpGfx->starSprites[multiplayerId]->callback = SpriteCB_Star; StartSpriteAnim(jumpGfx->starSprites[multiplayerId], 1); } @@ -2781,11 +2781,11 @@ static void SpriteCB_Star(struct Sprite *sprite) } break; case 1: - sprite->pos1.y--; + sprite->y--; sprite->sTimer++; - if (sprite->pos1.y <= 72) + if (sprite->y <= 72) { - sprite->pos1.y = 72; + sprite->y = 72; sprite->sState++; } break; @@ -2806,7 +2806,7 @@ static void SpriteCB_Star(struct Sprite *sprite) static void Gfx_StartMonHitShake(struct PokemonJumpGfx *jumpGfx, int multiplayerId) { jumpGfx->monSprites[multiplayerId]->callback = SpriteCB_MonHitShake; - jumpGfx->monSprites[multiplayerId]->pos2.y = 0; + jumpGfx->monSprites[multiplayerId]->y2 = 0; ResetPokeJumpSpriteData(jumpGfx->monSprites[multiplayerId]); } @@ -2823,16 +2823,16 @@ static void SpriteCB_MonHitShake(struct Sprite *sprite) if (++sprite->sTimer > 1) { if (++sprite->sNumShakes & 1) - sprite->pos2.y = 2; + sprite->y2 = 2; else - sprite->pos2.y = -2; + sprite->y2 = -2; sprite->sTimer = 0; } if (sprite->sNumShakes > 12) { - sprite->pos2.y = 0; + sprite->y2 = 0; sprite->callback = SpriteCallbackDummy; } } @@ -2919,7 +2919,7 @@ static void SpriteCB_MonIntroBounce(struct Sprite *sprite) if (sprite->sHopPos > 127) sprite->sHopPos = 0; - sprite->pos2.y = -(gSineTable[sprite->sHopPos] >> 3); + sprite->y2 = -(gSineTable[sprite->sHopPos] >> 3); if (sprite->sHopPos == 0) { if (++sprite->sNumHops < 2) @@ -2990,7 +2990,7 @@ static void UpdateVineAnim(struct PokemonJumpGfx *jumpGfx, int vineState) count = 0; for (i = 0; i < VINE_SPRITES_PER_SIDE; i++) { - jumpGfx->vineSprites[count]->pos1.y = sVineYCoords[i][vineState]; + jumpGfx->vineSprites[count]->y = sVineYCoords[i][vineState]; jumpGfx->vineSprites[count]->oam.priority = priority; jumpGfx->vineSprites[count]->oam.paletteNum = palNum; StartSpriteAnim(jumpGfx->vineSprites[count], vineState); @@ -2999,7 +2999,7 @@ static void UpdateVineAnim(struct PokemonJumpGfx *jumpGfx, int vineState) for (i = VINE_SPRITES_PER_SIDE - 1; i >= 0; i--) { - jumpGfx->vineSprites[count]->pos1.y = sVineYCoords[i][vineState]; + jumpGfx->vineSprites[count]->y = sVineYCoords[i][vineState]; jumpGfx->vineSprites[count]->oam.priority = priority; jumpGfx->vineSprites[count]->oam.paletteNum = palNum; StartSpriteAnim(jumpGfx->vineSprites[count], vineState); @@ -3726,7 +3726,7 @@ static void CreateJumpMonSprites(void) static void SetMonSpriteY(u32 id, s16 y) { - sPokemonJumpGfx->monSprites[id]->pos2.y = y; + sPokemonJumpGfx->monSprites[id]->y2 = y; } static void UpdateVineSwing(int vineState) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index c82caf0b0d2f..87180ad1e9c9 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1873,12 +1873,12 @@ static void ChooseBoxMenu_CreateSprites(u8 curBox) anim = 0; if (i & 2) { - sChooseBoxMenu->menuSideSprites[i]->pos1.x = 196; + sChooseBoxMenu->menuSideSprites[i]->x = 196; anim = 2; } if (i & 1) { - sChooseBoxMenu->menuSideSprites[i]->pos1.y = 112; + sChooseBoxMenu->menuSideSprites[i]->y = 112; sChooseBoxMenu->menuSideSprites[i]->oam.size = 0; anim++; } @@ -1970,11 +1970,11 @@ static void SpriteCB_ChooseBoxArrow(struct Sprite *sprite) if (++sprite->data[1] > 3) { sprite->data[1] = 0; - sprite->pos2.x += sprite->data[0]; + sprite->x2 += sprite->data[0]; if (++sprite->data[2] > 5) { sprite->data[2] = 0; - sprite->pos2.x = 0; + sprite->x2 = 0; } } } @@ -3881,8 +3881,8 @@ static void CreateMarkingComboSprite(void) sStorage->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MARKING_COMBO, PALTAG_MARKING_COMBO, NULL); sStorage->markingComboSprite->oam.priority = 1; sStorage->markingComboSprite->subpriority = 1; - sStorage->markingComboSprite->pos1.x = 40; - sStorage->markingComboSprite->pos1.y = 150; + sStorage->markingComboSprite->x = 40; + sStorage->markingComboSprite->y = 150; sStorage->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); } @@ -4532,13 +4532,13 @@ static void SpriteCB_BoxMonIconScrollIn(struct Sprite *sprite) { // Icon moving sprite->sDistance--; - sprite->pos1.x += sprite->sSpeed; + sprite->x += sprite->sSpeed; } else { // Icon arrived sStorage->iconScrollNumIncoming--; - sprite->pos1.x = sprite->sScrollInDestX; + sprite->x = sprite->sScrollInDestX; sprite->callback = SpriteCallbackDummy; } } @@ -4552,8 +4552,8 @@ static void SpriteCB_BoxMonIconScrollOut(struct Sprite *sprite) else { // Icon moving - sprite->pos1.x += sprite->sSpeed; - sprite->sScrollOutX = sprite->pos1.x + sprite->pos2.x; + sprite->x += sprite->sSpeed; + sprite->sScrollOutX = sprite->x + sprite->x2; // Check if icon offscreen if (sprite->sScrollOutX <= 68 || sprite->sScrollOutX >= 252) @@ -4777,7 +4777,7 @@ static void CreatePartyMonsSprites(bool8 visible) { for (i = 0; i < count; i++) { - sStorage->partySprites[i]->pos1.y -= DISPLAY_HEIGHT; + sStorage->partySprites[i]->y -= DISPLAY_HEIGHT; sStorage->partySprites[i]->invisible = TRUE; } } @@ -4834,8 +4834,8 @@ static void MovePartySpriteToNextSlot(struct Sprite *sprite, u16 partyId) else x = 152, y = 8 * (3 * (partyId - 1)) + 16; - sprite->sMonX = (u16)(sprite->pos1.x) * 8; - sprite->sMonY = (u16)(sprite->pos1.y) * 8; + sprite->sMonX = (u16)(sprite->x) * 8; + sprite->sMonY = (u16)(sprite->y) * 8; sprite->sSpeedX = ((x * 8) - sprite->sMonX) / 8; sprite->sSpeedY = ((y * 8) - sprite->sMonY) / 8; sprite->data[6] = 8; @@ -4848,21 +4848,21 @@ static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *sprite) { s16 x = sprite->sMonX += sprite->sSpeedX; s16 y = sprite->sMonY += sprite->sSpeedY; - sprite->pos1.x = x / 8u; - sprite->pos1.y = y / 8u; + sprite->x = x / 8u; + sprite->y = y / 8u; sprite->sMoveSteps--; } else { if (sprite->sPartyId == 0) { - sprite->pos1.x = 104; - sprite->pos1.y = 64; + sprite->x = 104; + sprite->y = 64; } else { - sprite->pos1.x = 152; - sprite->pos1.y = 8 * (3 * (sprite->sPartyId - 1)) + 16; + sprite->x = 152; + sprite->y = 8 * (3 * (sprite->sPartyId - 1)) + 16; } sprite->callback = SpriteCallbackDummy; sStorage->partySprites[sprite->sPartyId] = sprite; @@ -4894,8 +4894,8 @@ static void MovePartySprites(s16 yDelta) { if (sStorage->partySprites[i] != NULL) { - sStorage->partySprites[i]->pos1.y += yDelta; - posY = sStorage->partySprites[i]->pos1.y + sStorage->partySprites[i]->pos2.y + sStorage->partySprites[i]->centerToCornerVecY; + sStorage->partySprites[i]->y += yDelta; + posY = sStorage->partySprites[i]->y + sStorage->partySprites[i]->y2 + sStorage->partySprites[i]->centerToCornerVecY; posY += 16; if (posY > 192) sStorage->partySprites[i]->invisible = TRUE; @@ -4995,12 +4995,12 @@ static bool8 MoveShiftingMons(void) sStorage->shiftTimer++; if (sStorage->shiftTimer & 1) { - (*sStorage->shiftMonSpritePtr)->pos1.y--; - sStorage->movingMonSprite->pos1.y++; + (*sStorage->shiftMonSpritePtr)->y--; + sStorage->movingMonSprite->y++; } - (*sStorage->shiftMonSpritePtr)->pos2.x = gSineTable[sStorage->shiftTimer * 8] / 16; - sStorage->movingMonSprite->pos2.x = -(gSineTable[sStorage->shiftTimer * 8] / 16); + (*sStorage->shiftMonSpritePtr)->x2 = gSineTable[sStorage->shiftTimer * 8] / 16; + sStorage->movingMonSprite->x2 = -(gSineTable[sStorage->shiftTimer * 8] / 16); if (sStorage->shiftTimer == 8) { sStorage->movingMonSprite->oam.priority = (*sStorage->shiftMonSpritePtr)->oam.priority; @@ -5097,8 +5097,8 @@ static void SetMovingMonPriority(u8 priority) static void SpriteCB_HeldMon(struct Sprite *sprite) { - sprite->pos1.x = sStorage->cursorSprite->pos1.x; - sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 4; + sprite->x = sStorage->cursorSprite->x; + sprite->y = sStorage->cursorSprite->y + sStorage->cursorSprite->y2 + 4; } static u16 TryLoadMonIconTiles(u16 species) @@ -5598,7 +5598,7 @@ static void SpriteCB_IncomingBoxTitle(struct Sprite *sprite) { if (sprite->sIncomingDelay != 0) sprite->sIncomingDelay--; - else if ((sprite->pos1.x += sprite->sSpeed) == sprite->sIncomingX) + else if ((sprite->x += sprite->sSpeed) == sprite->sIncomingX) sprite->callback = SpriteCallbackDummy; } @@ -5610,8 +5610,8 @@ static void SpriteCB_OutgoingBoxTitle(struct Sprite *sprite) } else { - sprite->pos1.x += sprite->sSpeed; - sprite->sOutgoingX = sprite->pos1.x + sprite->pos2.x; + sprite->x += sprite->sSpeed; + sprite->sOutgoingX = sprite->x + sprite->x2; if (sprite->sOutgoingX < 64 || sprite->sOutgoingX > DISPLAY_WIDTH + 16) DestroySprite(sprite); } @@ -5676,7 +5676,7 @@ static void StartBoxScrollArrowsSlide(s8 direction) for (i = 0; i < 2; i++) { - sStorage->arrowSprites[i]->pos2.x = 0; + sStorage->arrowSprites[i]->x2 = 0; sStorage->arrowSprites[i]->sState = 2; } if (direction < 0) @@ -5704,8 +5704,8 @@ static void StopBoxScrollArrowsSlide(void) for (i = 0; i < 2; i++) { - sStorage->arrowSprites[i]->pos1.x = 136 * i + 92; - sStorage->arrowSprites[i]->pos2.x = 0; + sStorage->arrowSprites[i]->x = 136 * i + 92; + sStorage->arrowSprites[i]->x2 = 0; sStorage->arrowSprites[i]->invisible = FALSE; } AnimateBoxScrollArrows(TRUE); @@ -5740,17 +5740,17 @@ static void SpriteCB_Arrow(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->pos2.x = 0; + sprite->x2 = 0; break; case 1: if (++sprite->sTimer > 3) { sprite->sTimer = 0; - sprite->pos2.x += sprite->sSpeed; + sprite->x2 += sprite->sSpeed; if (++sprite->data[2] > 5) { sprite->data[2] = 0; - sprite->pos2.x = 0; + sprite->x2 = 0; } } break; @@ -5758,18 +5758,18 @@ static void SpriteCB_Arrow(struct Sprite *sprite) sprite->sState = 3; break; case 3: - sprite->pos1.x -= sStorage->scrollSpeed; - if (sprite->pos1.x <= 72 || sprite->pos1.x >= DISPLAY_WIDTH + 8) + sprite->x -= sStorage->scrollSpeed; + if (sprite->x <= 72 || sprite->x >= DISPLAY_WIDTH + 8) sprite->invisible = TRUE; if (--sprite->sTimer == 0) { - sprite->pos1.x = sprite->data[2]; + sprite->x = sprite->data[2]; sprite->invisible = FALSE; sprite->sState = 4; } break; case 4: - sprite->pos1.x -= sStorage->scrollSpeed; + sprite->x -= sStorage->scrollSpeed; break; } } @@ -5901,35 +5901,35 @@ static bool8 UpdateCursorPos(void) // Update position toward target sStorage->cursorNewX += sStorage->cursorSpeedX; sStorage->cursorNewY += sStorage->cursorSpeedY; - sStorage->cursorSprite->pos1.x = sStorage->cursorNewX >> 8; - sStorage->cursorSprite->pos1.y = sStorage->cursorNewY >> 8; + sStorage->cursorSprite->x = sStorage->cursorNewX >> 8; + sStorage->cursorSprite->y = sStorage->cursorNewY >> 8; // Limit cursor on right - if (sStorage->cursorSprite->pos1.x > DISPLAY_WIDTH + 16) + if (sStorage->cursorSprite->x > DISPLAY_WIDTH + 16) { - tmp = sStorage->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16); - sStorage->cursorSprite->pos1.x = tmp + 64; + tmp = sStorage->cursorSprite->x - (DISPLAY_WIDTH + 16); + sStorage->cursorSprite->x = tmp + 64; } // Limit cursor on left - if (sStorage->cursorSprite->pos1.x < 64) + if (sStorage->cursorSprite->x < 64) { - tmp = 64 - sStorage->cursorSprite->pos1.x; - sStorage->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp; + tmp = 64 - sStorage->cursorSprite->x; + sStorage->cursorSprite->x = DISPLAY_WIDTH + 16 - tmp; } // Limit cursor on bottom - if (sStorage->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16) + if (sStorage->cursorSprite->y > DISPLAY_HEIGHT + 16) { - tmp = sStorage->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16); - sStorage->cursorSprite->pos1.y = tmp - 16; + tmp = sStorage->cursorSprite->y - (DISPLAY_HEIGHT + 16); + sStorage->cursorSprite->y = tmp - 16; } // Limit cursor on top - if (sStorage->cursorSprite->pos1.y < -16) + if (sStorage->cursorSprite->y < -16) { - tmp = -16 - sStorage->cursorSprite->pos1.y; - sStorage->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp; + tmp = -16 - sStorage->cursorSprite->y; + sStorage->cursorSprite->y = DISPLAY_HEIGHT + 16 - tmp; } // Cursor flips vertically when moving on/off the top buttons @@ -5939,8 +5939,8 @@ static bool8 UpdateCursorPos(void) else { // Time is up for cursor movement, make sure it's exactly at target - sStorage->cursorSprite->pos1.x = sStorage->cursorTargetX; - sStorage->cursorSprite->pos1.y = sStorage->cursorTargetY; + sStorage->cursorSprite->x = sStorage->cursorTargetX; + sStorage->cursorSprite->y = sStorage->cursorTargetY; DoCursorNewPosUpdate(); } @@ -5973,26 +5973,26 @@ static void InitCursorMove(void) switch (sStorage->cursorVerticalWrap) { default: // No wrap - yDistance = sStorage->cursorTargetY - sStorage->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY - sStorage->cursorSprite->y; break; case -1: // Wrap from top to bottom - yDistance = sStorage->cursorTargetY - 192 - sStorage->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY - 192 - sStorage->cursorSprite->y; break; case 1: // Wrap from bottom to top - yDistance = sStorage->cursorTargetY + 192 - sStorage->cursorSprite->pos1.y; + yDistance = sStorage->cursorTargetY + 192 - sStorage->cursorSprite->y; break; } switch (sStorage->cursorHorizontalWrap) { default: // No Wrap - xDistance = sStorage->cursorTargetX - sStorage->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX - sStorage->cursorSprite->x; break; case -1: // Wrap from left to right - xDistance = sStorage->cursorTargetX - 192 - sStorage->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX - 192 - sStorage->cursorSprite->x; break; case 1: // Wrap from right to left - xDistance = sStorage->cursorTargetX + 192 - sStorage->cursorSprite->pos1.x; + xDistance = sStorage->cursorTargetX + 192 - sStorage->cursorSprite->x; break; } @@ -6000,8 +6000,8 @@ static void InitCursorMove(void) xDistance <<= 8; sStorage->cursorSpeedX = xDistance / sStorage->cursorMoveSteps; sStorage->cursorSpeedY = yDistance / sStorage->cursorMoveSteps; - sStorage->cursorNewX = sStorage->cursorSprite->pos1.x << 8; - sStorage->cursorNewY = sStorage->cursorSprite->pos1.y << 8; + sStorage->cursorNewX = sStorage->cursorSprite->x << 8; + sStorage->cursorNewY = sStorage->cursorSprite->y << 8; } static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition) @@ -6277,13 +6277,13 @@ static bool8 MultiMonPlaceChange_Up(void) static bool8 MonPlaceChange_CursorDown(void) { - switch (sStorage->cursorSprite->pos2.y) + switch (sStorage->cursorSprite->y2) { default: - sStorage->cursorSprite->pos2.y++; + sStorage->cursorSprite->y2++; break; case 0: - sStorage->cursorSprite->pos2.y++; + sStorage->cursorSprite->y2++; break; case 8: // Cursor has reached bottom return FALSE; @@ -6294,12 +6294,12 @@ static bool8 MonPlaceChange_CursorDown(void) static bool8 MonPlaceChange_CursorUp(void) { - switch (sStorage->cursorSprite->pos2.y) + switch (sStorage->cursorSprite->y2) { case 0: // Cursor has reached top return FALSE; default: - sStorage->cursorSprite->pos2.y--; + sStorage->cursorSprite->y2--; break; } @@ -7743,8 +7743,8 @@ static bool8 SetMenuTexts_Item(void) static void SpriteCB_CursorShadow(struct Sprite *sprite) { - sprite->pos1.x = sStorage->cursorSprite->pos1.x; - sprite->pos1.y = sStorage->cursorSprite->pos1.y + 20; + sprite->x = sStorage->cursorSprite->x; + sprite->y = sStorage->cursorSprite->y + 20; } static void CreateCursorSprites(void) @@ -9079,20 +9079,20 @@ static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos) case CURSOR_AREA_IN_BOX: x = cursorPos % IN_BOX_COLUMNS; y = cursorPos / IN_BOX_COLUMNS; - sStorage->itemIcons[id].sprite->pos1.x = (24 * x) + 112; - sStorage->itemIcons[id].sprite->pos1.y = (24 * y) + 56; + sStorage->itemIcons[id].sprite->x = (24 * x) + 112; + sStorage->itemIcons[id].sprite->y = (24 * y) + 56; sStorage->itemIcons[id].sprite->oam.priority = 2; break; case CURSOR_AREA_IN_PARTY: if (cursorPos == 0) { - sStorage->itemIcons[id].sprite->pos1.x = 116; - sStorage->itemIcons[id].sprite->pos1.y = 76; + sStorage->itemIcons[id].sprite->x = 116; + sStorage->itemIcons[id].sprite->y = 76; } else { - sStorage->itemIcons[id].sprite->pos1.x = 164; - sStorage->itemIcons[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; + sStorage->itemIcons[id].sprite->x = 164; + sStorage->itemIcons[id].sprite->y = 24 * (cursorPos - 1) + 28; } sStorage->itemIcons[id].sprite->oam.priority = 1; break; @@ -9281,8 +9281,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->data[1] = sprite->pos1.x << 4; - sprite->data[2] = sprite->pos1.y << 4; + sprite->data[1] = sprite->x << 4; + sprite->data[2] = sprite->y << 4; sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; @@ -9290,8 +9290,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) case 1: sprite->data[1] -= sprite->data[3]; sprite->data[2] -= sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 4; - sprite->pos1.y = sprite->data[2] >> 4; + sprite->x = sprite->data[1] >> 4; + sprite->y = sprite->data[2] >> 4; if (++sprite->data[5] > 11) sprite->callback = SpriteCB_ItemIcon_SetPosToCursor; break; @@ -9300,8 +9300,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite) static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *sprite) { - sprite->pos1.x = sStorage->cursorSprite->pos1.x + 4; - sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 8; + sprite->x = sStorage->cursorSprite->x + 4; + sprite->y = sStorage->cursorSprite->y + sStorage->cursorSprite->y2 + 8; sprite->oam.priority = sStorage->cursorSprite->oam.priority; } @@ -9310,8 +9310,8 @@ static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->data[1] = sprite->pos1.x << 4; - sprite->data[2] = sprite->pos1.y << 4; + sprite->data[1] = sprite->x << 4; + sprite->data[2] = sprite->y << 4; sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; @@ -9319,8 +9319,8 @@ static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite) case 1: sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 4; - sprite->pos1.y = sprite->data[2] >> 4; + sprite->x = sprite->data[1] >> 4; + sprite->y = sprite->data[2] >> 4; if (++sprite->data[5] > 11) { SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); @@ -9335,8 +9335,8 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->data[1] = sprite->pos1.x << 4; - sprite->data[2] = sprite->pos1.y << 4; + sprite->data[1] = sprite->x << 4; + sprite->data[2] = sprite->y << 4; sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; @@ -9344,13 +9344,13 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *sprite) case 1: sprite->data[1] -= sprite->data[3]; sprite->data[2] -= sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 4; - sprite->pos1.y = sprite->data[2] >> 4; - sprite->pos2.x = gSineTable[sprite->data[5] * 8] >> 4; + sprite->x = sprite->data[1] >> 4; + sprite->y = sprite->data[2] >> 4; + sprite->x2 = gSineTable[sprite->data[5] * 8] >> 4; if (++sprite->data[5] > 11) { SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); - sprite->pos2.x = 0; + sprite->x2 = 0; sprite->callback = SpriteCB_ItemIcon_SetPosToCursor; } break; @@ -9362,8 +9362,8 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->data[1] = sprite->pos1.x << 4; - sprite->data[2] = sprite->pos1.y << 4; + sprite->data[1] = sprite->x << 4; + sprite->data[2] = sprite->y << 4; sprite->data[3] = 10; sprite->data[4] = 21; sprite->data[5] = 0; @@ -9371,14 +9371,14 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite) case 1: sprite->data[1] += sprite->data[3]; sprite->data[2] += sprite->data[4]; - sprite->pos1.x = sprite->data[1] >> 4; - sprite->pos1.y = sprite->data[2] >> 4; - sprite->pos2.x = -(gSineTable[sprite->data[5] * 8] >> 4); + sprite->x = sprite->data[1] >> 4; + sprite->y = sprite->data[2] >> 4; + sprite->x2 = -(gSineTable[sprite->data[5] * 8] >> 4); if (++sprite->data[5] > 11) { SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos); sprite->callback = SpriteCallbackDummy; - sprite->pos2.x = 0; + sprite->x2 = 0; } break; } @@ -9386,8 +9386,8 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite) static void SpriteCB_ItemIcon_HideParty(struct Sprite *sprite) { - sprite->pos1.y -= 8; - if (sprite->pos1.y + sprite->pos2.y < -16) + sprite->y -= 8; + if (sprite->y + sprite->y2 < -16) { sprite->callback = SpriteCallbackDummy; SetItemIconActive(GetItemIconIdxBySprite(sprite), FALSE); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 31505b7c9b3c..9c41f9147750 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3772,8 +3772,8 @@ static void SetTypeSpritePosAndPal(u8 typeId, u8 x, u8 y, u8 spriteArrayId) struct Sprite *sprite = &gSprites[sMonSummaryScreen->spriteIds[spriteArrayId]]; StartSpriteAnim(sprite, typeId); sprite->oam.paletteNum = sMoveTypeToOamPaletteNum[typeId]; - sprite->pos1.x = x + 16; - sprite->pos1.y = y + 8; + sprite->x = x + 16; + sprite->y = y + 8; SetSpriteInvisibility(spriteArrayId, FALSE); } @@ -3999,8 +3999,8 @@ static void CreateMonMarkingsSprite(struct Pokemon *mon) if (sprite != NULL) { StartSpriteAnim(sprite, GetMonData(mon, MON_DATA_MARKINGS)); - sMonSummaryScreen->markingsSprite->pos1.x = 60; - sMonSummaryScreen->markingsSprite->pos1.y = 26; + sMonSummaryScreen->markingsSprite->x = 60; + sMonSummaryScreen->markingsSprite->y = 26; sMonSummaryScreen->markingsSprite->oam.priority = 1; } } @@ -4087,9 +4087,9 @@ static void SpriteCb_MoveSelector(struct Sprite *sprite) } if (sprite->data[0] == SPRITE_ARR_ID_MOVE_SELECTOR1) - sprite->pos2.y = sMonSummaryScreen->firstMoveIndex * 16; + sprite->y2 = sMonSummaryScreen->firstMoveIndex * 16; else - sprite->pos2.y = sMonSummaryScreen->secondMoveIndex * 16; + sprite->y2 = sMonSummaryScreen->secondMoveIndex * 16; } static void DestroyMoveSelectorSprites(u8 firstArrayId) diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index dc07dd44c668..c882befc4f0c 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -672,8 +672,8 @@ void CreateMonMarkingsOrPokeballIndicators(void) BufferMonMarkingsMenuTiles(); sprite = CreateMonMarkingAllCombosSprite(0x69, 0x69, sConditionGraphMonMarkingsPal); sprite->oam.priority = 3; - sprite->pos1.x = 192; - sprite->pos1.y = 32; + sprite->x = 192; + sprite->y = 32; sprite->callback = MonMarkingsCallback; structPtr->monMarksSprite = sprite; PokenavFillPalette(IndexOfSpritePaletteTag(0x69), 0); @@ -792,7 +792,7 @@ void FreePartyConditionSubstruct2(void) void MonPicGfxSpriteCallback(struct Sprite *sprite) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - sprite->pos1.x = structPtr->monTransitionX + 38; + sprite->x = structPtr->monTransitionX + 38; } void CreateConditionMonPic(u8 id) diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 9c4d1528658a..88c1773a6d5a 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -604,7 +604,7 @@ static void CleanupPokenavMainMenuResources(void) static void SpriteCB_SpinningPokenav(struct Sprite *sprite) { // If the background starts scrolling, follow it. - sprite->pos2.y = (GetBgY(0) / 256u) * -1; + sprite->y2 = (GetBgY(0) / 256u) * -1; } struct Sprite *PauseSpinningPokenavSprite(void) @@ -619,8 +619,8 @@ void ResumeSpinningPokenavSprite(void) { struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->spinningPokenav->pos1.x = 220; - structPtr->spinningPokenav->pos1.y = 12; + structPtr->spinningPokenav->x = 220; + structPtr->spinningPokenav->y = 12; structPtr->spinningPokenav->callback = SpriteCB_SpinningPokenav; structPtr->spinningPokenav->invisible = FALSE; structPtr->spinningPokenav->oam.priority = 0; @@ -640,13 +640,13 @@ static void InitHoennMapHeaderSprites(void) spriteId = CreateSprite(&sPokenavLeftHeaderHoennMapSpriteTemplate, 0, 0, 1); structPtr->leftHeaderSprites[i] = &gSprites[spriteId]; structPtr->leftHeaderSprites[i]->invisible = TRUE; - structPtr->leftHeaderSprites[i]->pos2.x = i * 64; + structPtr->leftHeaderSprites[i]->x2 = i * 64; spriteId = CreateSprite(&sUnknown_0861FB44, 0, 0, 2); structPtr->submenuLeftHeaderSprites[i] = &gSprites[spriteId]; structPtr->submenuLeftHeaderSprites[i]->invisible = TRUE; - structPtr->submenuLeftHeaderSprites[i]->pos2.x = i * 32; - structPtr->submenuLeftHeaderSprites[i]->pos2.y = 18; + structPtr->submenuLeftHeaderSprites[i]->x2 = i * 32; + structPtr->submenuLeftHeaderSprites[i]->y2 = 18; structPtr->submenuLeftHeaderSprites[i]->oam.tileNum += (i * 8) + 64; } } @@ -686,9 +686,9 @@ static void LoadLeftHeaderGfxForMenu(u32 menuGfxId) structPtr->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].size; if (menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_OUT || menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_IN) - structPtr->leftHeaderSprites[1]->pos2.x = 56; + structPtr->leftHeaderSprites[1]->x2 = 56; else - structPtr->leftHeaderSprites[1]->pos2.x = 64; + structPtr->leftHeaderSprites[1]->x2 = 64; } static void LoadLeftHeaderGfxForSubMenu(u32 menuGfxId) @@ -762,7 +762,7 @@ static void ShowLeftHeaderSprites(u32 startY, bool32 isOnRightSide) for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++) { - structPtr->leftHeaderSprites[i]->pos1.y = startY; + structPtr->leftHeaderSprites[i]->y = startY; MoveLeftHeader(structPtr->leftHeaderSprites[i], start, end, 12); } } @@ -779,7 +779,7 @@ static void ShowLeftHeaderSubmenuSprites(u32 startY, bool32 isOnRightSide) for (i = 0; i < (s32)ARRAY_COUNT(structPtr->submenuLeftHeaderSprites); i++) { - structPtr->submenuLeftHeaderSprites[i]->pos1.y = startY; + structPtr->submenuLeftHeaderSprites[i]->y = startY; MoveLeftHeader(structPtr->submenuLeftHeaderSprites[i], start, end, 12); } } @@ -818,7 +818,7 @@ static void HideLeftHeaderSubmenuSprites(bool32 isOnRightSide) static void MoveLeftHeader(struct Sprite *sprite, s32 startX, s32 endX, s32 duration) { - sprite->pos1.x = startX; + sprite->x = startX; sprite->data[0] = startX * 16; sprite->data[1] = (endX - startX) * 16 / duration; sprite->data[2] = duration; @@ -832,15 +832,15 @@ static void SpriteCB_MoveLeftHeader(struct Sprite *sprite) { sprite->data[2]--; sprite->data[0] += sprite->data[1]; - sprite->pos1.x = sprite->data[0] >> 4; - if (sprite->pos1.x < -16 || sprite->pos1.x > 256) + sprite->x = sprite->data[0] >> 4; + if (sprite->x < -16 || sprite->x > 256) sprite->invisible = TRUE; else sprite->invisible = FALSE; } else { - sprite->pos1.x = sprite->data[7]; + sprite->x = sprite->data[7]; sprite->callback = SpriteCallbackDummy; } } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 398e174d8f7a..846171efd8f5 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -1074,9 +1074,9 @@ static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state) PutWindowTilemap(state->msgBoxWindowId); CopyWindowToVram(state->msgBoxWindowId, 3); sprite = PauseSpinningPokenavSprite(); - sprite->pos1.x = 24; - sprite->pos1.y = 112; - sprite->pos2.y = 0; + sprite->x = 24; + sprite->y = 112; + sprite->y2 = 0; } static void DrawMsgBoxForCloseByMsg(struct Pokenav4Struct *state) @@ -1200,7 +1200,7 @@ static void CloseMatchCallSelectOptionsWindow(struct Pokenav4Struct *state) static void UpdateCursorGfxPos(struct Pokenav4Struct *state, int top) { - state->optionsCursorSprite->pos2.y = top * 16; + state->optionsCursorSprite->y2 = top * 16; } void SpriteCB_OptionsCursor(struct Sprite *sprite) @@ -1208,7 +1208,7 @@ void SpriteCB_OptionsCursor(struct Sprite *sprite) if (++sprite->data[0] > 3) { sprite->data[0] = 0; - sprite->pos2.x = (sprite->pos2.x + 1) & 0x7; + sprite->x2 = (sprite->x2 + 1) & 0x7; } } @@ -1251,16 +1251,16 @@ static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite) case 0: if (CheckForSpaceForDma3Request(sprite->data[7]) != -1) { - sprite->pos2.x = -80; + sprite->x2 = -80; sprite->invisible = FALSE; sprite->data[0]++; } break; case 1: - sprite->pos2.x += 8; - if (sprite->pos2.x >= 0) + sprite->x2 += 8; + if (sprite->x2 >= 0) { - sprite->pos2.x = 0; + sprite->x2 = 0; sprite->callback = SpriteCallbackDummy; } break; @@ -1269,8 +1269,8 @@ static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite) static void SpriteCB_TrainerPicSlideOffscreen(struct Sprite *sprite) { - sprite->pos2.x -= 8; - if (sprite->pos2.x <= -80) + sprite->x2 -= 8; + if (sprite->x2 <= -80) { sprite->invisible = TRUE; sprite->callback = SpriteCallbackDummy; diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index b3f9331b7397..7e70a50c889b 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -890,7 +890,7 @@ void ToggleMatchCallArrows(struct PokenavSub17Substruct *list, bool32 shouldHide void SpriteCB_MatchCallRightArrow(struct Sprite *sprite) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - sprite->pos2.y = structPtr->unk888.selectedIndexOffset << 4; + sprite->y2 = structPtr->unk888.selectedIndexOffset << 4; } void SpriteCB_MatchCallDownArrow(struct Sprite *sprite) @@ -907,7 +907,7 @@ void SpriteCB_MatchCallDownArrow(struct Sprite *sprite) sprite->data[0] = 0; offset = (sprite->data[1] + 1) & 7; sprite->data[1] = offset; - sprite->pos2.y = offset; + sprite->y2 = offset; } } @@ -925,7 +925,7 @@ void SpriteCB_MatchCallUpArrow(struct Sprite *sprite) sprite->data[0] = 0; offset = (sprite->data[1] + 1) & 7; sprite->data[1] = offset; - sprite->pos2.y = -1 * offset; + sprite->y2 = -1 * offset; } } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index 8cd2a6b2fbf6..ff219b71e312 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -781,7 +781,7 @@ static void CreateMenuOptionSprites(void) { u8 spriteId = CreateSprite(&sMenuOptionSpriteTemplate, 0x8c, 20 * i + 40, 3); unk->iconSprites[i][j] = &gSprites[spriteId]; - gSprites[spriteId].pos2.x = 32 * j; + gSprites[spriteId].x2 = 32 * j; } } } @@ -822,9 +822,9 @@ static void DrawOptionLabelGfx(const u16 *const *tiles, s32 yPos, s32 deltaY) unk->iconSprites[i][j]->oam.tileNum = (*tiles)[0] + sp04 + 8 * j; unk->iconSprites[i][j]->oam.paletteNum = IndexOfSpritePaletteTag((*tiles)[1] + 4); unk->iconSprites[i][j]->invisible = TRUE; - unk->iconSprites[i][j]->pos1.y = yPos; - unk->iconSprites[i][j]->pos1.x = 0x8c; - unk->iconSprites[i][j]->pos2.x = 32 * j; + unk->iconSprites[i][j]->y = yPos; + unk->iconSprites[i][j]->x = 0x8c; + unk->iconSprites[i][j]->x2 = 32 * j; } unk->iconVisible[i] = TRUE; } @@ -935,7 +935,7 @@ static void SetMenuOptionGfxParamsInactive(struct Sprite ** sprites, s32 x, s32 for (i = 0; i < 4; i++) { - (*sprites)->pos1.x = x; + (*sprites)->x = x; (*sprites)->data[0] = a3; (*sprites)->data[1] = 16 * (a2 - x) / a3; (*sprites)->data[2] = 16 * x; @@ -987,11 +987,11 @@ static void sub_81CA474(struct Sprite * sprite) if (sprite->data[0] != -1) { sprite->data[2] += sprite->data[1]; - sprite->pos1.x = sprite->data[2] >> 4; + sprite->x = sprite->data[2] >> 4; } else { - sprite->pos1.x = sprite->data[7]; + sprite->x = sprite->data[7]; sprite->callback = SpriteCallbackDummy; } } @@ -1007,8 +1007,8 @@ static void sub_81CA4AC(struct Sprite * sprite) StartSpriteAffineAnim(sprite, 1); sprite->data[1]++; sprite->data[2] = 0x100; - sprite->pos1.x += sprite->pos2.x; - sprite->pos2.x = 0; + sprite->x += sprite->x2; + sprite->x2 = 0; } else { @@ -1019,16 +1019,16 @@ static void sub_81CA4AC(struct Sprite * sprite) switch (sprite->data[7]) { case 0: - sprite->pos2.x = -r1 * 3; + sprite->x2 = -r1 * 3; break; case 1: - sprite->pos2.x = -r1; + sprite->x2 = -r1; break; case 2: - sprite->pos2.x = r1; + sprite->x2 = r1; break; case 3: - sprite->pos2.x = r1 * 3; + sprite->x2 = r1 * 3; break; } if (sprite->affineAnimEnded) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 2dd2e4408878..a5c9426db9e4 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -725,7 +725,7 @@ static void UpdateCityZoomTextPosition(void) struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); int y = 132 - (GetBgY(1) >> 8); for (i = 0; i < (int)ARRAY_COUNT(state->cityZoomTextSprites); i++) - state->cityZoomTextSprites[i]->pos1.y = y; + state->cityZoomTextSprites[i]->y = y; } static void SetCityZoomTextInvisibility(bool32 invisible) diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index 8a9061ace985..a7644fdaaf7d 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -997,7 +997,7 @@ static void StartMonSpriteSlide(struct Sprite *sprite, s32 startX, s32 destX, s3 { u32 delta = destX - startX; - sprite->pos1.x = startX; + sprite->x = startX; sprite->sCurrX = startX << 4; sprite->sMoveIncr = (delta << 4) / time; sprite->sTime = time; @@ -1012,15 +1012,15 @@ static void SpriteCB_MonSpriteSlide(struct Sprite *sprite) { sprite->sTime--; sprite->sCurrX += sprite->sMoveIncr; - sprite->pos1.x = sprite->sCurrX >> 4; - if (sprite->pos1.x <= MON_SPRITE_X_OFF) + sprite->x = sprite->sCurrX >> 4; + if (sprite->x <= MON_SPRITE_X_OFF) sprite->invisible = TRUE; else sprite->invisible = FALSE; } else { - sprite->pos1.x = sprite->sDestX; + sprite->x = sprite->sDestX; sprite->callback = SpriteCallbackDummy; } } @@ -1232,8 +1232,8 @@ static void UpdateAndZoomInSelectedRibbon(struct PokenavSub14 *structPtr) s32 x = (position % RIBBONS_PER_ROW) * 16 + 96; s32 y = (position / RIBBONS_PER_ROW) * 16 + 40; - structPtr->bigRibbonSprite->pos1.x = x; - structPtr->bigRibbonSprite->pos1.y = y; + structPtr->bigRibbonSprite->x = x; + structPtr->bigRibbonSprite->y = y; // Set new selected ribbon's gfx data ribbonId = GetRibbonId(); diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 24e76e1c9e97..f2c5a319c4e2 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -1433,34 +1433,34 @@ static void SpriteCB_DuoFightPre_Groudon(struct Sprite *sprite) s16 *data = sprite->data; data[5]++; data[5] &= 0x1F; - if (data[5] == 0 && sprite->pos1.x != 72) + if (data[5] == 0 && sprite->x != 72) { - sprite->pos1.x--; - gSprites[sprite->sGroudonBodySpriteId].pos1.x--; - gSprites[sGroudonShoulderSpriteId].pos1.x--; - gSprites[sGroudonClawSpriteId].pos1.x--; + sprite->x--; + gSprites[sprite->sGroudonBodySpriteId].x--; + gSprites[sGroudonShoulderSpriteId].x--; + gSprites[sGroudonClawSpriteId].x--; } switch (sprite->animCmdIndex) { case 0: - gSprites[sGroudonShoulderSpriteId].pos2.x = 0; - gSprites[sGroudonShoulderSpriteId].pos2.y = 0; - gSprites[sGroudonClawSpriteId].pos2.x = 0; - gSprites[sGroudonClawSpriteId].pos2.y = 0; + gSprites[sGroudonShoulderSpriteId].x2 = 0; + gSprites[sGroudonShoulderSpriteId].y2 = 0; + gSprites[sGroudonClawSpriteId].x2 = 0; + gSprites[sGroudonClawSpriteId].y2 = 0; break; case 1: case 3: - gSprites[sGroudonShoulderSpriteId].pos2.x = -1; - gSprites[sGroudonShoulderSpriteId].pos2.y = 0; - gSprites[sGroudonClawSpriteId].pos2.x = -1; - gSprites[sGroudonClawSpriteId].pos2.y = 0; + gSprites[sGroudonShoulderSpriteId].x2 = -1; + gSprites[sGroudonShoulderSpriteId].y2 = 0; + gSprites[sGroudonClawSpriteId].x2 = -1; + gSprites[sGroudonClawSpriteId].y2 = 0; break; case 2: - gSprites[sGroudonShoulderSpriteId].pos2.x = -1; - gSprites[sGroudonShoulderSpriteId].pos2.y = 1; - gSprites[sGroudonClawSpriteId].pos2.x = -2; - gSprites[sGroudonClawSpriteId].pos2.y = 1; + gSprites[sGroudonShoulderSpriteId].x2 = -1; + gSprites[sGroudonShoulderSpriteId].y2 = 1; + gSprites[sGroudonClawSpriteId].x2 = -2; + gSprites[sGroudonClawSpriteId].y2 = 1; break; } } @@ -1502,58 +1502,58 @@ static void SpriteCB_DuoFightPre_Kyogre(struct Sprite *sprite) s16 *data = sprite->data; data[5]++; data[5] &= 0x1F; - if (data[5] == 0 && sprite->pos1.x != 152) + if (data[5] == 0 && sprite->x != 152) { - sprite->pos1.x++; - gSprites[sprite->data[0] >> 8].pos1.x++; - gSprites[sprite->data[0] & 0xFF].pos1.x++; - gSprites[data[1] >> 8].pos1.x++; - gSprites[data[1] & 0xFF].pos1.x++; - gSprites[data[2] >> 8].pos1.x++; - gSprites[data[2] & 0xFF].pos1.x++; - gSprites[data[3] >> 8].pos1.x++; - gSprites[data[3] & 0xFF].pos1.x++; - gSprites[data[4] >> 8].pos1.x++; - gSprites[data[4] & 0xFF].pos1.x++; + sprite->x++; + gSprites[sprite->data[0] >> 8].x++; + gSprites[sprite->data[0] & 0xFF].x++; + gSprites[data[1] >> 8].x++; + gSprites[data[1] & 0xFF].x++; + gSprites[data[2] >> 8].x++; + gSprites[data[2] & 0xFF].x++; + gSprites[data[3] >> 8].x++; + gSprites[data[3] & 0xFF].x++; + gSprites[data[4] >> 8].x++; + gSprites[data[4] & 0xFF].x++; } switch (gSprites[data[2] & 0xFF].animCmdIndex) { case 0: - sprite->pos2.y = 0; - gSprites[data[0] >> 8].pos2.y = 0; - gSprites[data[0] & 0xFF].pos2.y = 0; - gSprites[data[1] >> 8].pos2.y = 0; - gSprites[data[1] & 0xFF].pos2.y = 0; - gSprites[data[2] >> 8].pos2.y = 0; - gSprites[data[2] & 0xFF].pos2.y = 0; - gSprites[data[3] >> 8].pos2.y = 0; - gSprites[data[3] & 0xFF].pos2.y = 0; - gSprites[data[4] >> 8].pos2.y = 0; - gSprites[data[4] & 0xFF].pos2.y = 0; + sprite->y2 = 0; + gSprites[data[0] >> 8].y2 = 0; + gSprites[data[0] & 0xFF].y2 = 0; + gSprites[data[1] >> 8].y2 = 0; + gSprites[data[1] & 0xFF].y2 = 0; + gSprites[data[2] >> 8].y2 = 0; + gSprites[data[2] & 0xFF].y2 = 0; + gSprites[data[3] >> 8].y2 = 0; + gSprites[data[3] & 0xFF].y2 = 0; + gSprites[data[4] >> 8].y2 = 0; + gSprites[data[4] & 0xFF].y2 = 0; break; case 1: case 3: - sprite->pos2.y = 1; - gSprites[data[0] >> 8].pos2.y = 1; - gSprites[data[0] & 0xFF].pos2.y = 1; - gSprites[data[1] >> 8].pos2.y = 1; - gSprites[data[1] & 0xFF].pos2.y = 1; - gSprites[data[2] >> 8].pos2.y = 1; - gSprites[data[2] & 0xFF].pos2.y = 1; - gSprites[data[3] >> 8].pos2.y = 1; - gSprites[data[3] & 0xFF].pos2.y = 1; - gSprites[data[4] >> 8].pos2.y = 1; - gSprites[data[4] & 0xFF].pos2.y = 1; + sprite->y2 = 1; + gSprites[data[0] >> 8].y2 = 1; + gSprites[data[0] & 0xFF].y2 = 1; + gSprites[data[1] >> 8].y2 = 1; + gSprites[data[1] & 0xFF].y2 = 1; + gSprites[data[2] >> 8].y2 = 1; + gSprites[data[2] & 0xFF].y2 = 1; + gSprites[data[3] >> 8].y2 = 1; + gSprites[data[3] & 0xFF].y2 = 1; + gSprites[data[4] >> 8].y2 = 1; + gSprites[data[4] & 0xFF].y2 = 1; break; case 2: - sprite->pos2.y = 2; - gSprites[data[0] >> 8].pos2.y = 2; - gSprites[data[0] & 0xFF].pos2.y = 2; - gSprites[data[1] >> 8].pos2.y = 2; - gSprites[data[1] & 0xFF].pos2.y = 2; - gSprites[data[2] >> 8].pos2.y = 2; - gSprites[data[4] & 0xFF].pos2.y = 2; + sprite->y2 = 2; + gSprites[data[0] >> 8].y2 = 2; + gSprites[data[0] & 0xFF].y2 = 2; + gSprites[data[1] >> 8].y2 = 2; + gSprites[data[1] & 0xFF].y2 = 2; + gSprites[data[2] >> 8].y2 = 2; + gSprites[data[4] & 0xFF].y2 = 2; break; } } @@ -1825,34 +1825,34 @@ static void SpriteCB_DuoFight_Groudon(struct Sprite *sprite) s16 *data = sprite->data; data[5]++; data[5] &= 0xF; - if (!(data[5] & 7) && sprite->pos1.x != 72) + if (!(data[5] & 7) && sprite->x != 72) { - sprite->pos1.x--; - gSprites[sprite->sGroudonBodySpriteId].pos1.x--; - gSprites[sGroudonShoulderSpriteId].pos1.x--; - gSprites[sGroudonClawSpriteId].pos1.x--; + sprite->x--; + gSprites[sprite->sGroudonBodySpriteId].x--; + gSprites[sGroudonShoulderSpriteId].x--; + gSprites[sGroudonClawSpriteId].x--; } switch (sprite->animCmdIndex) { case 0: - gSprites[sGroudonShoulderSpriteId].pos2.x = 0; - gSprites[sGroudonShoulderSpriteId].pos2.y = 0; - gSprites[sGroudonClawSpriteId].pos2.x = 0; - gSprites[sGroudonClawSpriteId].pos2.y = 0; + gSprites[sGroudonShoulderSpriteId].x2 = 0; + gSprites[sGroudonShoulderSpriteId].y2 = 0; + gSprites[sGroudonClawSpriteId].x2 = 0; + gSprites[sGroudonClawSpriteId].y2 = 0; break; case 1: case 3: - gSprites[sGroudonShoulderSpriteId].pos2.x = -1; - gSprites[sGroudonShoulderSpriteId].pos2.y = 0; - gSprites[sGroudonClawSpriteId].pos2.x = -1; - gSprites[sGroudonClawSpriteId].pos2.y = 0; + gSprites[sGroudonShoulderSpriteId].x2 = -1; + gSprites[sGroudonShoulderSpriteId].y2 = 0; + gSprites[sGroudonClawSpriteId].x2 = -1; + gSprites[sGroudonClawSpriteId].y2 = 0; break; case 2: - gSprites[sGroudonShoulderSpriteId].pos2.x = -1; - gSprites[sGroudonShoulderSpriteId].pos2.y = 1; - gSprites[sGroudonClawSpriteId].pos2.x = -2; - gSprites[sGroudonClawSpriteId].pos2.y = 1; + gSprites[sGroudonShoulderSpriteId].x2 = -1; + gSprites[sGroudonShoulderSpriteId].y2 = 1; + gSprites[sGroudonClawSpriteId].x2 = -2; + gSprites[sGroudonClawSpriteId].y2 = 1; break; } } @@ -1860,12 +1860,12 @@ static void SpriteCB_DuoFight_Groudon(struct Sprite *sprite) static void DuoFight_SlideGroudonDown(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->pos1.y <= DISPLAY_HEIGHT) + if (sprite->y <= DISPLAY_HEIGHT) { - sprite->pos1.y += 8; - gSprites[sprite->sGroudonBodySpriteId].pos1.y += 8; - gSprites[sGroudonShoulderSpriteId].pos1.y += 8; - gSprites[sGroudonClawSpriteId].pos1.y += 8; + sprite->y += 8; + gSprites[sprite->sGroudonBodySpriteId].y += 8; + gSprites[sGroudonShoulderSpriteId].y += 8; + gSprites[sGroudonClawSpriteId].y += 8; } } @@ -1906,58 +1906,58 @@ static void SpriteCB_DuoFight_Kyogre(struct Sprite *sprite) s16 *data = sprite->data; data[5]++; data[5] &= 0xF; - if (!(data[5] & 7) && sprite->pos1.x != 152) + if (!(data[5] & 7) && sprite->x != 152) { - sprite->pos1.x++; - gSprites[sprite->data[0] >> 8].pos1.x++; - gSprites[sprite->data[0] & 0xFF].pos1.x++; - gSprites[data[1] >> 8].pos1.x++; - gSprites[data[1] & 0xFF].pos1.x++; - gSprites[data[2] >> 8].pos1.x++; - gSprites[data[2] & 0xFF].pos1.x++; - gSprites[data[3] >> 8].pos1.x++; - gSprites[data[3] & 0xFF].pos1.x++; - gSprites[data[4] >> 8].pos1.x++; - gSprites[data[4] & 0xFF].pos1.x++; + sprite->x++; + gSprites[sprite->data[0] >> 8].x++; + gSprites[sprite->data[0] & 0xFF].x++; + gSprites[data[1] >> 8].x++; + gSprites[data[1] & 0xFF].x++; + gSprites[data[2] >> 8].x++; + gSprites[data[2] & 0xFF].x++; + gSprites[data[3] >> 8].x++; + gSprites[data[3] & 0xFF].x++; + gSprites[data[4] >> 8].x++; + gSprites[data[4] & 0xFF].x++; } switch (gSprites[data[2] & 0xFF].animCmdIndex) { case 0: - sprite->pos2.y = 0; - gSprites[data[0] >> 8].pos2.y = 0; - gSprites[data[0] & 0xFF].pos2.y = 0; - gSprites[data[1] >> 8].pos2.y = 0; - gSprites[data[1] & 0xFF].pos2.y = 0; - gSprites[data[2] >> 8].pos2.y = 0; - gSprites[data[2] & 0xFF].pos2.y = 0; - gSprites[data[3] >> 8].pos2.y = 0; - gSprites[data[3] & 0xFF].pos2.y = 0; - gSprites[data[4] >> 8].pos2.y = 0; - gSprites[data[4] & 0xFF].pos2.y = 0; + sprite->y2 = 0; + gSprites[data[0] >> 8].y2 = 0; + gSprites[data[0] & 0xFF].y2 = 0; + gSprites[data[1] >> 8].y2 = 0; + gSprites[data[1] & 0xFF].y2 = 0; + gSprites[data[2] >> 8].y2 = 0; + gSprites[data[2] & 0xFF].y2 = 0; + gSprites[data[3] >> 8].y2 = 0; + gSprites[data[3] & 0xFF].y2 = 0; + gSprites[data[4] >> 8].y2 = 0; + gSprites[data[4] & 0xFF].y2 = 0; break; case 1: case 3: - sprite->pos2.y = 1; - gSprites[data[0] >> 8].pos2.y = 1; - gSprites[data[0] & 0xFF].pos2.y = 1; - gSprites[data[1] >> 8].pos2.y = 1; - gSprites[data[1] & 0xFF].pos2.y = 1; - gSprites[data[2] >> 8].pos2.y = 1; - gSprites[data[2] & 0xFF].pos2.y = 1; - gSprites[data[3] >> 8].pos2.y = 1; - gSprites[data[3] & 0xFF].pos2.y = 1; - gSprites[data[4] >> 8].pos2.y = 1; - gSprites[data[4] & 0xFF].pos2.y = 1; + sprite->y2 = 1; + gSprites[data[0] >> 8].y2 = 1; + gSprites[data[0] & 0xFF].y2 = 1; + gSprites[data[1] >> 8].y2 = 1; + gSprites[data[1] & 0xFF].y2 = 1; + gSprites[data[2] >> 8].y2 = 1; + gSprites[data[2] & 0xFF].y2 = 1; + gSprites[data[3] >> 8].y2 = 1; + gSprites[data[3] & 0xFF].y2 = 1; + gSprites[data[4] >> 8].y2 = 1; + gSprites[data[4] & 0xFF].y2 = 1; break; case 2: - sprite->pos2.y = 2; - gSprites[data[0] >> 8].pos2.y = 2; - gSprites[data[0] & 0xFF].pos2.y = 2; - gSprites[data[1] >> 8].pos2.y = 2; - gSprites[data[1] & 0xFF].pos2.y = 2; - gSprites[data[2] >> 8].pos2.y = 2; - gSprites[data[4] & 0xFF].pos2.y = 2; + sprite->y2 = 2; + gSprites[data[0] >> 8].y2 = 2; + gSprites[data[0] & 0xFF].y2 = 2; + gSprites[data[1] >> 8].y2 = 2; + gSprites[data[1] & 0xFF].y2 = 2; + gSprites[data[2] >> 8].y2 = 2; + gSprites[data[4] & 0xFF].y2 = 2; break; } } @@ -1965,19 +1965,19 @@ static void SpriteCB_DuoFight_Kyogre(struct Sprite *sprite) static void DuoFight_SlideKyogreDown(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->pos1.y <= DISPLAY_HEIGHT) + if (sprite->y <= DISPLAY_HEIGHT) { - sprite->pos1.y += 8; - gSprites[sprite->data[0] >> 8].pos1.y += 8; - gSprites[sprite->data[0] & 0xFF].pos1.y += 8; - gSprites[data[1] >> 8].pos1.y += 8; - gSprites[data[1] & 0xFF].pos1.y += 8; - gSprites[data[2] >> 8].pos1.y += 8; - gSprites[data[2] & 0xFF].pos1.y += 8; - gSprites[data[3] >> 8].pos1.y += 8; - gSprites[data[3] & 0xFF].pos1.y += 8; - gSprites[data[4] >> 8].pos1.y += 8; - gSprites[data[4] & 0xFF].pos1.y += 8; + sprite->y += 8; + gSprites[sprite->data[0] >> 8].y += 8; + gSprites[sprite->data[0] & 0xFF].y += 8; + gSprites[data[1] >> 8].y += 8; + gSprites[data[1] & 0xFF].y += 8; + gSprites[data[2] >> 8].y += 8; + gSprites[data[2] & 0xFF].y += 8; + gSprites[data[3] >> 8].y += 8; + gSprites[data[3] & 0xFF].y += 8; + gSprites[data[4] >> 8].y += 8; + gSprites[data[4] & 0xFF].y += 8; } } @@ -2184,13 +2184,13 @@ static void SpriteCB_TakesFlight_Smoke(struct Sprite *sprite) { if (sprite->sTimer == 0) { - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; } else { - sprite->pos2.x += sTakesFlight_SmokeCoords[sprite->sSmokeId][0]; - sprite->pos2.y += sTakesFlight_SmokeCoords[sprite->sSmokeId][1]; + sprite->x2 += sTakesFlight_SmokeCoords[sprite->sSmokeId][0]; + sprite->y2 += sTakesFlight_SmokeCoords[sprite->sSmokeId][1]; } sprite->sTimer++; @@ -2433,13 +2433,13 @@ static void SpriteCB_Descends_Rayquaza(struct Sprite *sprite) if (sTimer % sXMovePeriod == 0) { - sprite->pos2.x--; - gSprites[sTailSpriteId].pos2.x--; + sprite->x2--; + gSprites[sTailSpriteId].x2--; } if (sTimer % sYMovePeriod == 0) { - sprite->pos2.y++; - gSprites[sTailSpriteId].pos2.y++; + sprite->y2++; + gSprites[sTailSpriteId].y2++; } sTimer++; @@ -2902,14 +2902,14 @@ static void SpriteCB_ChasesAway_DuoRingPush(struct Sprite *sprite) { if (!sprite->sIsKyogre) { - sprite->pos1.x -= sprite->sSpeed; - gSprites[sprite->sBodyPartSpriteId1].pos1.x -= sprite->sSpeed; + sprite->x -= sprite->sSpeed; + gSprites[sprite->sBodyPartSpriteId1].x -= sprite->sSpeed; } else { - sprite->pos1.x += sprite->sSpeed; - gSprites[sprite->sBodyPartSpriteId1].pos1.x += sprite->sSpeed; - gSprites[sprite->sBodyPartSpriteId2].pos1.x += sprite->sSpeed; + sprite->x += sprite->sSpeed; + gSprites[sprite->sBodyPartSpriteId1].x += sprite->sSpeed; + gSprites[sprite->sBodyPartSpriteId2].x += sprite->sSpeed; } sprite->sDecel++; @@ -2949,18 +2949,18 @@ static void SpriteCB_ChasesAway_GroudonLeave(struct Sprite *sprite) case 2: if (sprite->animDelayCounter % 12 == 0) { - sprite->pos1.x -= 2; - gSprites[sprite->data[0]].pos1.x -=2; + sprite->x -= 2; + gSprites[sprite->data[0]].x -=2; } - gSprites[sprite->data[0]].pos2.y = 0; + gSprites[sprite->data[0]].y2 = 0; break; case 1: case 3: - gSprites[sprite->data[0]].pos2.y = -2; + gSprites[sprite->data[0]].y2 = -2; if ((sprite->animDelayCounter & 15) == 0) { - sprite->pos1.y++; - gSprites[sprite->data[0]].pos1.y++; + sprite->y++; + gSprites[sprite->data[0]].y++; } break; } @@ -2982,10 +2982,10 @@ static void SpriteCB_ChasesAway_KyogreLeave(struct Sprite *sprite) { if ((sprite->data[4] & 3) == 0) { - if (sprite->pos2.x == 1) - sprite->pos2.x = -1; + if (sprite->x2 == 1) + sprite->x2 = -1; else - sprite->pos2.x = 1; + sprite->x2 = 1; } if (sprite->data[5] == 128) { @@ -2998,10 +2998,10 @@ static void SpriteCB_ChasesAway_KyogreLeave(struct Sprite *sprite) } if (sprite->data[5] > 127) { - if (sprite->pos2.y != 32) + if (sprite->y2 != 32) { sprite->data[6]++; - sprite->pos2.y = sprite->data[6] >> 4; + sprite->y2 = sprite->data[6] >> 4; } } else @@ -3029,8 +3029,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite) s16 frame = sprite->sTimer; if (frame <= 64) { - sprite->pos2.y += 2; - gSprites[sprite->sTailSpriteId].pos2.y += 2; + sprite->y2 += 2; + gSprites[sprite->sTailSpriteId].y2 += 2; if (sprite->sTimer == 64) { ChasesAway_SetRayquazaAnim(sprite, 1, 0, -48); @@ -3062,8 +3062,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite) { SpriteCB_ChasesAway_RayquazaFloat(sprite); ChasesAway_SetRayquazaAnim(sprite, 3, 48, 16); - sprite->pos2.x = 1; - gSprites[sprite->sTailSpriteId].pos2.x = 1; + sprite->x2 = 1; + gSprites[sprite->sTailSpriteId].x2 = 1; PlayCry1(SPECIES_RAYQUAZA, 0); CreateTask(Task_ChasesAway_AnimateRing, 0); } @@ -3072,8 +3072,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite) switch (frame) { case 376: - sprite->pos2.x = 0; - gSprites[sprite->sTailSpriteId].pos2.x = 0; + sprite->x2 = 0; + gSprites[sprite->sTailSpriteId].x2 = 0; SpriteCB_ChasesAway_RayquazaFloat(sprite); ChasesAway_SetRayquazaAnim(sprite, 2, 48, 16); sprite->callback = SpriteCB_ChasesAway_RayquazaFloat; @@ -3086,8 +3086,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite) if (sprite->sTimer > 328 && (sprite->sTimer & 1) == 0) { - sprite->pos2.x *= -1; - gSprites[sprite->sTailSpriteId].pos2.x = sprite->pos2.x; + sprite->x2 *= -1; + gSprites[sprite->sTailSpriteId].x2 = sprite->x2; } sprite->sTimer++; @@ -3098,8 +3098,8 @@ static void SpriteCB_ChasesAway_RayquazaFloat(struct Sprite *body) struct Sprite *tail = &gSprites[body->sTailSpriteId]; if (!(body->sFloatTimer & tail->sTailFloatDelay)) { - body->pos2.y += body->sYOffset; - gSprites[body->sTailSpriteId].pos2.y += body->sYOffset; // why access gSprites again? tail->pos2.y would be sufficient + body->y2 += body->sYOffset; + gSprites[body->sTailSpriteId].y2 += body->sYOffset; // why access gSprites again? tail->y2 would be sufficient body->sYOffset += body->sYOffsetDir; if (body->sYOffset >= tail->sTailFloatPeak || body->sYOffset <= -tail->sTailFloatPeak) { @@ -3119,11 +3119,11 @@ static void ChasesAway_SetRayquazaAnim(struct Sprite *body, u8 animNum, s16 x, s { struct Sprite *tail = &gSprites[body->sTailSpriteId]; - tail->pos1.x = body->pos1.x + x; - tail->pos1.y = body->pos1.y + y; + tail->x = body->x + x; + tail->y = body->y + y; - tail->pos2.x = body->pos2.x; - tail->pos2.y = body->pos2.y; + tail->x2 = body->x2; + tail->y2 = body->y2; StartSpriteAnim(body, animNum); StartSpriteAnim(tail, animNum); diff --git a/src/region_map.c b/src/region_map.c index 27e035199872..6ef99192150d 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -952,8 +952,8 @@ void PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(s16 x, s16 y) UpdateRegionMapVideoRegs(); if (gRegionMap->playerIconSprite != NULL) { - gRegionMap->playerIconSprite->pos2.x = -x; - gRegionMap->playerIconSprite->pos2.y = -y; + gRegionMap->playerIconSprite->x2 = -x; + gRegionMap->playerIconSprite->y2 = -y; } } @@ -1364,8 +1364,8 @@ static void SpriteCB_CursorMapFull(struct Sprite *sprite) { if (gRegionMap->cursorMovementFrameCounter != 0) { - sprite->pos1.x += 2 * gRegionMap->cursorDeltaX; - sprite->pos1.y += 2 * gRegionMap->cursorDeltaY; + sprite->x += 2 * gRegionMap->cursorDeltaX; + sprite->y += 2 * gRegionMap->cursorDeltaY; gRegionMap->cursorMovementFrameCounter--; } } @@ -1411,15 +1411,15 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag) if (gRegionMap->zoomed == TRUE) { gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(32x32); - gRegionMap->cursorSprite->pos1.x -= 8; - gRegionMap->cursorSprite->pos1.y -= 8; + gRegionMap->cursorSprite->x -= 8; + gRegionMap->cursorSprite->y -= 8; StartSpriteAnim(gRegionMap->cursorSprite, 1); } else { gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(16x16); - gRegionMap->cursorSprite->pos1.x = 8 * gRegionMap->cursorPosX + 4; - gRegionMap->cursorSprite->pos1.y = 8 * gRegionMap->cursorPosY + 4; + gRegionMap->cursorSprite->x = 8 * gRegionMap->cursorPosX + 4; + gRegionMap->cursorSprite->y = 8 * gRegionMap->cursorPosY + 4; } gRegionMap->cursorSprite->data[1] = 2; gRegionMap->cursorSprite->data[2] = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101; @@ -1472,14 +1472,14 @@ void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag) gRegionMap->playerIconSprite = &gSprites[spriteId]; if (!gRegionMap->zoomed) { - gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 8 + 4; - gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 8 + 4; + gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4; + gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4; gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; } else { - gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 16 - 0x30; - gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 16 - 0x42; + gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30; + gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42; gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; } } @@ -1499,17 +1499,17 @@ static void UnhideRegionMapPlayerIcon(void) { if (gRegionMap->zoomed == TRUE) { - gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 16 - 0x30; - gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 16 - 0x42; + gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30; + gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42; gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; gRegionMap->playerIconSprite->invisible = FALSE; } else { - gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 8 + 4; - gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 8 + 4; - gRegionMap->playerIconSprite->pos2.x = 0; - gRegionMap->playerIconSprite->pos2.y = 0; + gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4; + gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4; + gRegionMap->playerIconSprite->x2 = 0; + gRegionMap->playerIconSprite->y2 = 0; gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; gRegionMap->playerIconSprite->invisible = FALSE; } @@ -1518,10 +1518,10 @@ static void UnhideRegionMapPlayerIcon(void) static void SpriteCB_PlayerIconMapZoomed(struct Sprite *sprite) { - sprite->pos2.x = -2 * gRegionMap->scrollX; - sprite->pos2.y = -2 * gRegionMap->scrollY; - sprite->data[0] = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; - sprite->data[1] = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; + sprite->x2 = -2 * gRegionMap->scrollX; + sprite->y2 = -2 * gRegionMap->scrollY; + sprite->data[0] = sprite->y + sprite->y2 + sprite->centerToCornerVecY; + sprite->data[1] = sprite->x + sprite->x2 + sprite->centerToCornerVecX; if (sprite->data[0] < -8 || sprite->data[0] > 0xa8 || sprite->data[1] < -8 || sprite->data[1] > 0xf8) { sprite->data[2] = FALSE; diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index cc4da7e1600d..528a0e52d2fb 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -243,36 +243,36 @@ static void SpriteCB_Cursor_UpOrRight(struct Sprite *sprite) sprite->invisible = FALSE; sprite->animNum = ARROW_UP; sprite->animDelayCounter = 0; - sprite->pos1.x = 53; - sprite->pos1.y = 68; + sprite->x = 53; + sprite->y = 68; break; case SELECTION_HOURS: sprite->invisible = FALSE; sprite->animNum = ARROW_UP; sprite->animDelayCounter = 0; - sprite->pos1.x = 86; - sprite->pos1.y = 68; + sprite->x = 86; + sprite->y = 68; break; case SELECTION_MINS: sprite->invisible = FALSE; sprite->animNum = ARROW_UP; sprite->animDelayCounter = 0; - sprite->pos1.x = 101; - sprite->pos1.y = 68; + sprite->x = 101; + sprite->y = 68; break; case SELECTION_SECS: sprite->invisible = FALSE; sprite->animNum = ARROW_UP; sprite->animDelayCounter = 0; - sprite->pos1.x = 116; - sprite->pos1.y = 68; + sprite->x = 116; + sprite->y = 68; break; case SELECTION_CONFIRM: sprite->invisible = FALSE; sprite->animNum = ARROW_RIGHT; sprite->animDelayCounter = 0; - sprite->pos1.x = 153; - sprite->pos1.y = 80; + sprite->x = 153; + sprite->y = 80; break; case SELECTION_NONE: DestroySprite(sprite); @@ -293,29 +293,29 @@ static void SpriteCB_Cursor_Down(struct Sprite *sprite) sprite->invisible = FALSE; sprite->animNum = ARROW_DOWN; sprite->animDelayCounter = 0; - sprite->pos1.x = 53; - sprite->pos1.y = 92; + sprite->x = 53; + sprite->y = 92; break; case SELECTION_HOURS: sprite->invisible = FALSE; sprite->animNum = ARROW_DOWN; sprite->animDelayCounter = 0; - sprite->pos1.x = 86; - sprite->pos1.y = 92; + sprite->x = 86; + sprite->y = 92; break; case SELECTION_MINS: sprite->invisible = FALSE; sprite->animNum = ARROW_DOWN; sprite->animDelayCounter = 0; - sprite->pos1.x = 101; - sprite->pos1.y = 92; + sprite->x = 101; + sprite->y = 92; break; case SELECTION_SECS: sprite->invisible = FALSE; sprite->animNum = ARROW_DOWN; sprite->animDelayCounter = 0; - sprite->pos1.x = 116; - sprite->pos1.y = 92; + sprite->x = 116; + sprite->y = 92; break; case SELECTION_CONFIRM: // The up arrow is used as a right arrow when Confirm is selected diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 36c23c2a5684..a185d9a14563 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -755,7 +755,7 @@ static u8 RotatingGate_CreateGate(u8 gateId, s16 deltaX, s16 deltaY) sprite->data[0] = gateId; sprite->coordOffsetEnabled = 1; - GetMapCoordsFromSpritePos(x + deltaX, y + deltaY, &sprite->pos1.x, &sprite->pos1.y); + GetMapCoordsFromSpritePos(x + deltaX, y + deltaY, &sprite->x, &sprite->y); RotatingGate_HideGatesOutsideViewport(sprite); StartSpriteAffineAnim(sprite, RotatingGate_GetGateOrientation(gateId)); @@ -800,8 +800,8 @@ static void RotatingGate_HideGatesOutsideViewport(struct Sprite *sprite) s16 x2, y2; sprite->invisible = FALSE; - x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; - y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; + x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX; + y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY; x2 = x + 0x40; // Dimensions of the rotating gate y2 = y + 0x40; diff --git a/src/roulette.c b/src/roulette.c index adde16199181..14ae16556707 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -3632,8 +3632,8 @@ static void ShowHideGridBalls(bool8 hideAll, u8 hideBallId) else { gSprites[sRoulette->spriteIds[i + SPR_GRID_BALLS]].invisible = FALSE; - gSprites[sRoulette->spriteIds[i + SPR_GRID_BALLS]].pos1.x = (sGridSelections[sRoulette->hitSquares[i]].x + 1) * 8 + 4; - gSprites[sRoulette->spriteIds[i + SPR_GRID_BALLS]].pos1.y = (sGridSelections[sRoulette->hitSquares[i]].y + 1) * 8 + 3; + gSprites[sRoulette->spriteIds[i + SPR_GRID_BALLS]].x = (sGridSelections[sRoulette->hitSquares[i]].x + 1) * 8 + 4; + gSprites[sRoulette->spriteIds[i + SPR_GRID_BALLS]].y = (sGridSelections[sRoulette->hitSquares[i]].y + 1) * 8 + 3; } } } @@ -3648,8 +3648,8 @@ static void ShowHideWinSlotCursor(u8 selectionId) else { gSprites[sRoulette->spriteIds[SPR_WIN_SLOT_CURSOR]].invisible = FALSE; - gSprites[sRoulette->spriteIds[SPR_WIN_SLOT_CURSOR]].pos1.x = (sGridSelections[selectionId].x + 2) * 8; - gSprites[sRoulette->spriteIds[SPR_WIN_SLOT_CURSOR]].pos1.y = (sGridSelections[selectionId].y + 2) * 8; + gSprites[sRoulette->spriteIds[SPR_WIN_SLOT_CURSOR]].x = (sGridSelections[selectionId].x + 2) * 8; + gSprites[sRoulette->spriteIds[SPR_WIN_SLOT_CURSOR]].y = (sGridSelections[selectionId].y + 2) * 8; } } @@ -3688,8 +3688,8 @@ static void SpriteCB_WheelIcon(struct Sprite *sprite) angle -= 360; sin = Sin2(angle); cos = Cos2(angle); - sprite->pos2.x = sin * sprite->data[1] >> 12; - sprite->pos2.y = -cos * sprite->data[1] >> 12; + sprite->x2 = sin * sprite->data[1] >> 12; + sprite->y2 = -cos * sprite->data[1] >> 12; matrixNum = sprite->oam.matrixNum; sin /= 16; gOamMatrices[matrixNum].d = cos /= 16; @@ -3845,7 +3845,7 @@ static void SetBallCounterNumLeft(u8 numBalls) static void SpriteCB_GridSquare(struct Sprite *sprite) { - sprite->pos2.x = sRoulette->gridX; + sprite->x2 = sRoulette->gridX; } static void CreateWheelCenterSprite(void) @@ -3995,12 +3995,12 @@ static void UpdateBallPos(struct Sprite *sprite) sprite->sBallDistToCenter = sRoulette->ballDistToCenter; sin = Sin2(sprite->sBallAngle); cos = Cos2(sprite->sBallAngle); - sprite->pos2.x = sin * sprite->sBallDistToCenter >> 12; - sprite->pos2.y = -cos * sprite->sBallDistToCenter >> 12; + sprite->x2 = sin * sprite->sBallDistToCenter >> 12; + sprite->y2 = -cos * sprite->sBallDistToCenter >> 12; if (IsSEPlaying()) { - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, sprite->pos2.x); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, sprite->pos2.x); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, sprite->x2); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, sprite->x2); } } @@ -4013,9 +4013,9 @@ static void SpriteCB_BallLandInSlot(struct Sprite *sprite) sprite->sBallAngle -= 360; sin = Sin2(sprite->sBallAngle); cos = Cos2(sprite->sBallAngle); - sprite->pos2.x = sin * sprite->sBallDistToCenter >> 12; - sprite->pos2.y = -cos * sprite->sBallDistToCenter >> 12; - sprite->pos2.y += gSpriteCoordOffsetY; + sprite->x2 = sin * sprite->sBallDistToCenter >> 12; + sprite->y2 = -cos * sprite->sBallDistToCenter >> 12; + sprite->y2 += gSpriteCoordOffsetY; } static void SpriteCB_UnstickBall_ShroomishBallFall(struct Sprite *sprite) @@ -4098,9 +4098,9 @@ static void SpriteCB_UnstickBall_Shroomish(struct Sprite *sprite) static void SpriteCB_UnstickBall_TaillowDrop(struct Sprite *sprite) { - sprite->pos2.y = (s16)(sprite->data[2] * 0.05f * sprite->data[2]) - 45; + sprite->y2 = (s16)(sprite->data[2] * 0.05f * sprite->data[2]) - 45; sprite->data[2]++; - if (sprite->data[2] >= DEGREES_PER_SLOT && sprite->pos2.y >= 0) + if (sprite->data[2] >= DEGREES_PER_SLOT && sprite->y2 >= 0) { LandBall() sRoulette->ballUnstuck = TRUE; @@ -4111,11 +4111,11 @@ static void SpriteCB_UnstickBall_TaillowPickUp(struct Sprite *sprite) { if (sprite->data[2]++ < 45) { - sprite->pos2.y--; + sprite->y2--; if (sprite->data[2] == 45) { if (gSprites[sRoulette->spriteIds[SPR_CLEAR_MON]].animCmdIndex == 1) - sprite->pos2.y++; + sprite->y2++; } } else @@ -4125,9 +4125,9 @@ static void SpriteCB_UnstickBall_TaillowPickUp(struct Sprite *sprite) if (gSprites[sRoulette->spriteIds[SPR_CLEAR_MON]].animDelayCounter == 0) { if (gSprites[sRoulette->spriteIds[SPR_CLEAR_MON]].animCmdIndex == 1) - sprite->pos2.y++; + sprite->y2++; else - sprite->pos2.y--; + sprite->y2--; } } else @@ -4516,8 +4516,8 @@ static void SpriteCB_ShroomishExit(struct Sprite *sprite) // Delay for screen shaking, then exit left if (sprite->data[1]++ >= sprite->data[3]) { - sprite->pos1.x -= 2; - if (sprite->pos1.x < -16) + sprite->x -= 2; + if (sprite->x < -16) { if (!sRoulette->ballUnstuck) sRoulette->ballUnstuck = TRUE; @@ -4563,7 +4563,7 @@ static void SpriteCB_ShroomishFall(struct Sprite *sprite) f32 timer; sprite->data[1]++; timer = sprite->data[1]; - sprite->pos2.y = timer * 0.039f * timer; + sprite->y2 = timer * 0.039f * timer; sRoulette->shroomishShadowAlpha = sShroomishShadowAlphas[(sRoulette->shroomishShadowTimer - 1) / 2]; if (sRoulette->shroomishShadowTimer < ARRAY_COUNT(sShroomishShadowAlphas) * 2 - 1) sRoulette->shroomishShadowTimer++; @@ -4636,9 +4636,9 @@ static void SpriteCB_TaillowShadow_Flash(struct Sprite *sprite) static void SpriteCB_Taillow_FlyAway(struct Sprite *sprite) { - if (sprite->pos1.y > -16) + if (sprite->y > -16) { - sprite->pos1.y--; + sprite->y--; } else { @@ -4657,9 +4657,9 @@ static void SpriteCB_Taillow_PickUpBall(struct Sprite *sprite) if (sprite->data[1] >= 0) { sprite->data[1]--; - sprite->pos1.y--; + sprite->y--; if (sprite->data[1] == 0 && sprite->animCmdIndex == 1) - sprite->pos2.y++; + sprite->y2++; } else { @@ -4669,9 +4669,9 @@ static void SpriteCB_Taillow_PickUpBall(struct Sprite *sprite) if (sprite->animDelayCounter == 0) { if (sprite->animCmdIndex == 1) - sprite->pos2.y++; + sprite->y2++; else - sprite->pos2.y--; + sprite->y2--; } } else @@ -4700,10 +4700,10 @@ static void SpriteCB_Taillow_FlyIn(struct Sprite *sprite) if (sprite->data[1]-- > 7) { - sprite->pos1.x += xMoveOffsets[sRoulette->ball->sStuckOnWheelLeft] * 2; + sprite->x += xMoveOffsets[sRoulette->ball->sStuckOnWheelLeft] * 2; if (IsSEPlaying()) { - s8 pan = -((116 - sprite->pos1.x) / 2); + s8 pan = -((116 - sprite->x) / 2); m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); } @@ -4712,8 +4712,8 @@ static void SpriteCB_Taillow_FlyIn(struct Sprite *sprite) { if (sprite->data[1] >= 0) { - sprite->pos1.x += xMoveOffsets[sRoulette->ball->sStuckOnWheelLeft] * yMoveOffsets[7 - sprite->data[1]][0]; - sprite->pos1.y += yMoveOffsets[7 - sprite->data[1]][1]; + sprite->x += xMoveOffsets[sRoulette->ball->sStuckOnWheelLeft] * yMoveOffsets[7 - sprite->data[1]][0]; + sprite->y += yMoveOffsets[7 - sprite->data[1]][1]; } else { @@ -4735,7 +4735,7 @@ static void SpriteCB_TaillowShadow_FlyIn(struct Sprite *sprite) if (sprite->data[1]-- >= 0) { - sprite->pos1.x += moveDir[sRoulette->ball->sStuckOnWheelLeft] * 2; + sprite->x += moveDir[sRoulette->ball->sStuckOnWheelLeft] * 2; gSprites[sprite->sMonShadowSpriteId].invisible ^= 1; } else diff --git a/src/shop.c b/src/shop.c index 55b421928cbf..d534e91f4a62 100755 --- a/src/shop.c +++ b/src/shop.c @@ -625,8 +625,8 @@ static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) if (spriteId != MAX_SPRITES) { *spriteIdPtr = spriteId; - gSprites[spriteId].pos2.x = 24; - gSprites[spriteId].pos2.y = 88; + gSprites[spriteId].x2 = 24; + gSprites[spriteId].y2 = 88; } } else diff --git a/src/slot_machine.c b/src/slot_machine.c index 9a3a9ee06b7d..157f3625e4f0 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -3605,7 +3605,7 @@ static void SpriteCB_ReelSymbol(struct Sprite *sprite) { sprite->data[2] = sSlotMachine->reelPixelOffsets[sprite->data[0]] + sprite->data[1]; sprite->data[2] %= 120; - sprite->pos1.y = sSlotMachine->reelPixelOffsetsWhileStopping[sprite->data[0]] + 28 + sprite->data[2]; + sprite->y = sSlotMachine->reelPixelOffsetsWhileStopping[sprite->data[0]] + 28 + sprite->data[2]; sprite->sheetTileStart = GetSpriteTileStartByTag(GetTagAtRest(sprite->data[0], sprite->data[2] / 24)); SetSpriteSheetFrameTileNum(sprite); } @@ -3692,12 +3692,12 @@ static void DestroyReelTimePikachuSprite(void) static void SpriteCB_ReelTimePikachu(struct Sprite *sprite) { - sprite->pos2.y = sprite->pos2.x = 0; + sprite->y2 = sprite->x2 = 0; if (sprite->animNum == 4) { - sprite->pos2.y = sprite->pos2.x = 8; + sprite->y2 = sprite->x2 = 8; if ((sprite->animCmdIndex != 0 && sprite->animDelayCounter != 0) || (sprite->animCmdIndex == 0 && sprite->animDelayCounter == 0)) - sprite->pos2.y = -8; + sprite->y2 = -8; } } @@ -3776,7 +3776,7 @@ static void SpriteCB_ReelTimeNumbers(struct Sprite *sprite) { s16 r0 = (u16)(sSlotMachine->reeltimePixelOffset + sprite->data[7]); r0 %= 40; - sprite->pos1.y = r0 + 59; + sprite->y = r0 + 59; StartSpriteAnimIfDifferent(sprite, GetNearbyReelTimeTag(r0 / 20)); } @@ -3872,15 +3872,15 @@ static void SpriteCB_ReelTimeBolt(struct Sprite *sprite) if (sprite->sDelayTimer != 0) { sprite->sDelayTimer--; - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; sprite->invisible = TRUE; } else { sprite->invisible = FALSE; - sprite->pos2.x += sprite->sXDir; - sprite->pos2.y += sprite->sYDir; + sprite->x2 += sprite->sXDir; + sprite->y2 += sprite->sYDir; if (++sprite->sCounter >= 8) { sprite->sDelayTimer = sprite->sDelay; @@ -3971,7 +3971,7 @@ static void CreateReelTimeExplosionSprite(void) static void SpriteCB_ReelTimeExplosion(struct Sprite *sprite) { - sprite->pos2.y = gSpriteCoordOffsetY; + sprite->y2 = gSpriteCoordOffsetY; } static void DestroyReelTimeExplosionSprite(void) @@ -3999,8 +3999,8 @@ static void SpriteCB_ReelTimeDuck(struct Sprite *sprite) { sprite->data[0] -= 2; sprite->data[0] &= 0xff; - sprite->pos2.x = Cos(sprite->data[0], 20); - sprite->pos2.y = Sin(sprite->data[0], 6); + sprite->x2 = Cos(sprite->data[0], 20); + sprite->y2 = Sin(sprite->data[0], 6); sprite->subpriority = 0; if (sprite->data[0] >= 0x80) { @@ -4061,7 +4061,7 @@ static void SpriteCB_ReelTimeSmoke(struct Sprite *sprite) } sprite->sMoveY &= 0xff; sprite->sMoveY += 16; - sprite->pos2.y -= (sprite->sMoveY >> 8); + sprite->y2 -= (sprite->sMoveY >> 8); } static u8 IsReelTimeSmokeAnimFinished(void) @@ -4147,12 +4147,12 @@ static void SpriteCB_DigitalDisplay_Smoke(struct Sprite *sprite) sprite->subspriteTableNum ^= 1; sprite->sCounter = 0; } - sprite->pos2.x = 0; - sprite->pos2.y = 0; + sprite->x2 = 0; + sprite->y2 = 0; if (sprite->subspriteTableNum != 0) { - sprite->pos2.x = targetX[sprite->sSpriteId]; - sprite->pos2.y = targetY[sprite->sSpriteId]; + sprite->x2 = targetX[sprite->sSpriteId]; + sprite->y2 = targetY[sprite->sSpriteId]; } } @@ -4181,10 +4181,10 @@ static void SpriteCB_DigitalDisplay_Reel(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->pos1.x += 4; - if (sprite->pos1.x >= 0xd0) + sprite->x += 4; + if (sprite->x >= 0xd0) { - sprite->pos1.x = 0xd0; + sprite->x = 0xd0; sprite->sState++; } break; @@ -4193,8 +4193,8 @@ static void SpriteCB_DigitalDisplay_Reel(struct Sprite *sprite) sprite->sState++; break; case 2: - sprite->pos1.x += 4; - if (sprite->pos1.x >= 0x110) + sprite->x += 4; + if (sprite->x >= 0x110) sprite->sState++; break; case 3: @@ -4209,10 +4209,10 @@ static void SpriteCB_DigitalDisplay_Time(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->pos1.x -= 4; - if (sprite->pos1.x <= 0xd0) + sprite->x -= 4; + if (sprite->x <= 0xd0) { - sprite->pos1.x = 0xd0; + sprite->x = 0xd0; sprite->sState++; } break; @@ -4221,8 +4221,8 @@ static void SpriteCB_DigitalDisplay_Time(struct Sprite *sprite) sprite->sState++; break; case 2: - sprite->pos1.x -= 4; - if (sprite->pos1.x <= 0x90) + sprite->x -= 4; + if (sprite->x <= 0x90) sprite->sState++; break; case 3: @@ -4247,10 +4247,10 @@ static void SpriteCB_DigitalDisplay_ReelTimeNumber(struct Sprite *sprite) } break; case 2: - sprite->pos1.x += 4; - if (sprite->pos1.x >= 0xd0) + sprite->x += 4; + if (sprite->x >= 0xd0) { - sprite->pos1.x = 0xd0; + sprite->x = 0xd0; sprite->sState++; } break; @@ -4259,8 +4259,8 @@ static void SpriteCB_DigitalDisplay_ReelTimeNumber(struct Sprite *sprite) sprite->sState++; break; case 4: - sprite->pos1.x += 4; - if (sprite->pos1.x >= 0xf8) + sprite->x += 4; + if (sprite->x >= 0xf8) sprite->sState++; break; case 5: @@ -4278,10 +4278,10 @@ static void SpriteCB_DigitalDisplay_PokeballRocking(struct Sprite *sprite) sprite->sState++; // fallthrough case 1: - sprite->pos1.y += 8; - if (sprite->pos1.y >= 0x70) + sprite->y += 8; + if (sprite->y >= 0x70) { - sprite->pos1.y = 0x70; + sprite->y = 0x70; sprite->sCounter = 16; sprite->sState++; } @@ -4289,7 +4289,7 @@ static void SpriteCB_DigitalDisplay_PokeballRocking(struct Sprite *sprite) case 2: if (sprite->data[2] == 0) { - sprite->pos1.y -= sprite->sCounter; + sprite->y -= sprite->sCounter; sprite->sCounter = -sprite->sCounter; if (++sprite->data[3] >= 2) { @@ -4318,10 +4318,10 @@ static void SpriteCB_DigitalDisplay_Stop(struct Sprite *sprite) sprite->sState++; break; case 1: - sprite->pos1.y += 2; - if (sprite->pos1.y >= 0x30) + sprite->y += 2; + if (sprite->y >= 0x30) { - sprite->pos1.y = 0x30; + sprite->y = 0x30; sprite->sState++; sprite->sWaitForAnim = FALSE; } @@ -4397,8 +4397,8 @@ static void SpriteCB_DigitalDisplay_RegBonus(struct Sprite *sprite) switch (sprite->sState) { case 0: - sprite->pos2.x = letterXOffset[sprite->sSpriteId]; - sprite->pos2.y = letterYOffset[sprite->sSpriteId]; + sprite->x2 = letterXOffset[sprite->sSpriteId]; + sprite->y2 = letterYOffset[sprite->sSpriteId]; sprite->sCounter = letterDelay[sprite->sSpriteId]; sprite->sState++; // fallthrough @@ -4407,17 +4407,17 @@ static void SpriteCB_DigitalDisplay_RegBonus(struct Sprite *sprite) sprite->sState++; break; case 2: - if (sprite->pos2.x > 0) - sprite->pos2.x -= 4; - else if (sprite->pos2.x < 0) - sprite->pos2.x += 4; + if (sprite->x2 > 0) + sprite->x2 -= 4; + else if (sprite->x2 < 0) + sprite->x2 += 4; - if (sprite->pos2.y > 0) - sprite->pos2.y -= 4; - else if (sprite->pos2.y < 0) - sprite->pos2.y += 4; + if (sprite->y2 > 0) + sprite->y2 -= 4; + else if (sprite->y2 < 0) + sprite->y2 += 4; - if (sprite->pos2.x == 0 && sprite->pos2.y == 0) + if (sprite->x2 == 0 && sprite->y2 == 0) sprite->sState++; break; } @@ -4432,8 +4432,8 @@ static void SpriteCB_DigitalDisplay_BigBonus(struct Sprite *sprite) sprite->sState++; sprite->sCounter = 12; } - sprite->pos2.x = Cos(sp0[sprite->sSpriteId], sprite->sCounter); - sprite->pos2.y = Sin(sp0[sprite->sSpriteId], sprite->sCounter); + sprite->x2 = Cos(sp0[sprite->sSpriteId], sprite->sCounter); + sprite->y2 = Sin(sp0[sprite->sSpriteId], sprite->sCounter); if (sprite->sCounter != 0) sprite->sCounter--; } diff --git a/src/starter_choose.c b/src/starter_choose.c index 92cb2d48cfa5..b327816e6ad3 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -523,8 +523,8 @@ static void Task_HandleStarterChooseInput(u8 taskId) static void Task_WaitForStarterSprite(u8 taskId) { if (gSprites[gTasks[taskId].tCircleSpriteId].affineAnimEnded && - gSprites[gTasks[taskId].tCircleSpriteId].pos1.x == STARTER_PKMN_POS_X && - gSprites[gTasks[taskId].tCircleSpriteId].pos1.y == STARTER_PKMN_POS_Y) + gSprites[gTasks[taskId].tCircleSpriteId].x == STARTER_PKMN_POS_X && + gSprites[gTasks[taskId].tCircleSpriteId].y == STARTER_PKMN_POS_Y) { gTasks[taskId].func = Task_AskConfirmStarter; } @@ -643,9 +643,9 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y) static void SpriteCB_SelectionHand(struct Sprite *sprite) { // Float up and down above selected pokeball - sprite->pos1.x = sCursorCoords[gTasks[sprite->data[0]].tStarterSelection][0]; - sprite->pos1.y = sCursorCoords[gTasks[sprite->data[0]].tStarterSelection][1]; - sprite->pos2.y = Sin(sprite->data[1], 8); + 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); sprite->data[1] = (u8)(sprite->data[1]) + 4; } @@ -661,12 +661,12 @@ static void SpriteCB_Pokeball(struct Sprite *sprite) static void SpriteCB_StarterPokemon(struct Sprite *sprite) { // Move sprite to upper center of screen - if (sprite->pos1.x > STARTER_PKMN_POS_X) - sprite->pos1.x -= 4; - if (sprite->pos1.x < STARTER_PKMN_POS_X) - sprite->pos1.x += 4; - if (sprite->pos1.y > STARTER_PKMN_POS_Y) - sprite->pos1.y -= 2; - if (sprite->pos1.y < STARTER_PKMN_POS_Y) - sprite->pos1.y += 2; + if (sprite->x > STARTER_PKMN_POS_X) + sprite->x -= 4; + if (sprite->x < STARTER_PKMN_POS_X) + sprite->x += 4; + if (sprite->y > STARTER_PKMN_POS_Y) + sprite->y -= 2; + if (sprite->y < STARTER_PKMN_POS_Y) + sprite->y += 2; } diff --git a/src/title_screen.c b/src/title_screen.c index cf356cefa24f..ef0f3a0da32c 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -358,12 +358,12 @@ static void SpriteCB_VersionBannerLeft(struct Sprite *sprite) if (gTasks[sprite->data[1]].data[1] != 0) { sprite->oam.objMode = ST_OAM_OBJ_NORMAL; - sprite->pos1.y = VERSION_BANNER_Y_GOAL; + sprite->y = VERSION_BANNER_Y_GOAL; } else { - if (sprite->pos1.y != VERSION_BANNER_Y_GOAL) - sprite->pos1.y++; + if (sprite->y != VERSION_BANNER_Y_GOAL) + sprite->y++; if (sprite->data[0] != 0) sprite->data[0]--; SetGpuReg(REG_OFFSET_BLDALPHA, gTitleScreenAlphaBlend[sprite->data[0]]); @@ -375,12 +375,12 @@ static void SpriteCB_VersionBannerRight(struct Sprite *sprite) if (gTasks[sprite->data[1]].data[1] != 0) { sprite->oam.objMode = ST_OAM_OBJ_NORMAL; - sprite->pos1.y = VERSION_BANNER_Y_GOAL; + sprite->y = VERSION_BANNER_Y_GOAL; } else { - if (sprite->pos1.y != VERSION_BANNER_Y_GOAL) - sprite->pos1.y++; + if (sprite->y != VERSION_BANNER_Y_GOAL) + sprite->y++; } } @@ -430,13 +430,13 @@ static void CreateCopyrightBanner(s16 x, s16 y) static void SpriteCB_PokemonLogoShine(struct Sprite *sprite) { - if (sprite->pos1.x < DISPLAY_WIDTH + 32) + if (sprite->x < DISPLAY_WIDTH + 32) { if (sprite->data[0]) // Flash background { u16 backgroundColor; - if (sprite->pos1.x < DISPLAY_WIDTH / 2) + if (sprite->x < DISPLAY_WIDTH / 2) { // Brighten background color if (sprite->data[1] < 31) @@ -454,15 +454,15 @@ static void SpriteCB_PokemonLogoShine(struct Sprite *sprite) } backgroundColor = _RGB(sprite->data[1], sprite->data[1], sprite->data[1]); - if (sprite->pos1.x == DISPLAY_WIDTH / 2 + 12 - || sprite->pos1.x == DISPLAY_WIDTH / 2 + 16 - || sprite->pos1.x == DISPLAY_WIDTH / 2 + 20 - || sprite->pos1.x == DISPLAY_WIDTH / 2 + 24) + if (sprite->x == DISPLAY_WIDTH / 2 + 12 + || sprite->x == DISPLAY_WIDTH / 2 + 16 + || sprite->x == DISPLAY_WIDTH / 2 + 20 + || sprite->x == DISPLAY_WIDTH / 2 + 24) gPlttBufferFaded[0] = RGB(24, 31, 12); else gPlttBufferFaded[0] = backgroundColor; } - sprite->pos1.x += 4; + sprite->x += 4; } else { @@ -473,8 +473,8 @@ static void SpriteCB_PokemonLogoShine(struct Sprite *sprite) static void SpriteCB_PokemonLogoShine2(struct Sprite *sprite) { - if (sprite->pos1.x < DISPLAY_WIDTH + 32) - sprite->pos1.x += 8; + if (sprite->x < DISPLAY_WIDTH + 32) + sprite->x += 8; else DestroySprite(sprite); } diff --git a/src/trade.c b/src/trade.c index 78d7399fa3e8..1305b4336a98 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1349,14 +1349,14 @@ static void TradeMenuMoveCursor(u8 *cursorPosition, u8 direction) if (newPosition == (PARTY_SIZE * 2)) // CANCEL { StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteId], CURSOR_ANIM_ON_CANCEL); - gSprites[sTradeMenuData->cursorSpriteId].pos1.x = DISPLAY_WIDTH - 16; - gSprites[sTradeMenuData->cursorSpriteId].pos1.y = DISPLAY_HEIGHT; + gSprites[sTradeMenuData->cursorSpriteId].x = DISPLAY_WIDTH - 16; + gSprites[sTradeMenuData->cursorSpriteId].y = DISPLAY_HEIGHT; } else { StartSpriteAnim(&gSprites[sTradeMenuData->cursorSpriteId], CURSOR_ANIM_NORMAL); - gSprites[sTradeMenuData->cursorSpriteId].pos1.x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32; - gSprites[sTradeMenuData->cursorSpriteId].pos1.y = sTradeMonSpriteCoords[newPosition][1] * 8; + gSprites[sTradeMenuData->cursorSpriteId].x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32; + gSprites[sTradeMenuData->cursorSpriteId].y = sTradeMonSpriteCoords[newPosition][1] * 8; } if (*cursorPosition != newPosition) @@ -1857,11 +1857,11 @@ static void DrawTradeMenuParty(u8 whichParty) case 3: CopyToBgTilemapBufferRect_ChangePalette(1, sTradeMovesBoxTilemap, selectedMonParty * 15, 0, 15, 17, 0); CopyBgTilemapBufferToVram(1); - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos1.x = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].x = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos1.y = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][1] * 8) - 12; - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos2.x = 0; - gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].pos2.y = 0; + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].y = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][1] * 8) - 12; + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].x2 = 0; + gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].y2 = 0; nameStringWidth = GetMonNicknameWidth(nickname, selectedMonParty, partyIdx); AddTextPrinterParameterized3((whichParty * 2) + 14, 0, (80 - nameStringWidth) / 2, 4, sTradeTextColors, 0, nickname); BufferTradeMonMoves(movesString, selectedMonParty, partyIdx); @@ -2050,10 +2050,10 @@ static void ResetTradeMenuPartyPositions(u8 whichParty) for (i = 0; i < sTradeMenuData->partyCounts[whichParty]; i++) { gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].invisible = FALSE; - gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].pos1.x = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][0] * 8 + 14; - gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].pos1.y = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][1] * 8 - 12; - gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].pos2.x = 0; - gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].pos2.y = 0; + gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].x = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][0] * 8 + 14; + gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].y = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][1] * 8 - 12; + gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].x2 = 0; + gSprites[sTradeMenuData->partySpriteIds[whichParty][i]].y2 = 0; } } @@ -2644,7 +2644,7 @@ static void SpriteCB_LinkMonShadow(struct Sprite *sprite) static void SpriteCB_CableEndSending(struct Sprite *sprite) { sprite->data[0]++; - sprite->pos2.y++; + sprite->y2++; if (sprite->data[0] == 10) DestroySprite(sprite); @@ -2654,7 +2654,7 @@ static void SpriteCB_CableEndSending(struct Sprite *sprite) static void SpriteCB_CableEndReceiving(struct Sprite *sprite) { sprite->data[0]++; - sprite->pos2.y--; + sprite->y2--; if (sprite->data[0] == 10) DestroySprite(sprite); @@ -3404,8 +3404,8 @@ static bool8 AnimateTradeSequenceCable(void) { case TS_STATE_START: gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = -180; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 = -180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; sTradeData->state++; sTradeData->cachedMapMusic = GetCurrentMapMusic(); PlayNewMapMusic(MUS_EVOLUTION); @@ -3414,13 +3414,13 @@ static bool8 AnimateTradeSequenceCable(void) if (sTradeData->bg2hofs > 0) { // Sliding - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x += 3; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 += 3; sTradeData->bg2hofs -= 3; } else { // Pokémon has arrived onscreen - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 = 0; sTradeData->bg2hofs = 0; sTradeData->state = TS_STATE_SEND_MSG; } @@ -3533,9 +3533,9 @@ static bool8 AnimateTradeSequenceCable(void) DISPCNT_OBJ_ON); break; case TS_STATE_LINK_MON_TRAVEL_OFFSCREEN: - gSprites[sTradeData->connectionSpriteId1].pos1.y -= 2; - gSprites[sTradeData->connectionSpriteId2].pos1.y -= 2; - if (gSprites[sTradeData->connectionSpriteId1].pos1.y < -8) + gSprites[sTradeData->connectionSpriteId1].y -= 2; + gSprites[sTradeData->connectionSpriteId2].y -= 2; + if (gSprites[sTradeData->connectionSpriteId1].y < -8) sTradeData->state = TS_STATE_FADE_OUT_TO_CROSSING; break; case TS_STATE_FADE_OUT_TO_CROSSING: @@ -3563,13 +3563,13 @@ static bool8 AnimateTradeSequenceCable(void) PlaySE(SE_WARP_OUT); sTradeData->state++; } - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; break; case TS_STATE_CROSSING_LINK_MONS_ENTER: - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -90) + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; + if (gSprites[sTradeData->connectionSpriteId1].y2 <= -90) { gSprites[sTradeData->connectionSpriteId1].data[1] = 1; gSprites[sTradeData->connectionSpriteId2].data[1] = 1; @@ -3601,23 +3601,23 @@ static bool8 AnimateTradeSequenceCable(void) StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.x = 60; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 180; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.y = 192; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = -32; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x = 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x = 180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y = 192; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y = -32; gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = FALSE; sTradeData->state++; break; case TS_STATE_CROSSING_MON_PICS_MOVE: - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y -= 3; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT - && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 -= 3; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 += 3; + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -DISPLAY_HEIGHT + && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } - if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -222) + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -222) { gSprites[sTradeData->connectionSpriteId1].data[1] = 0; gSprites[sTradeData->connectionSpriteId2].data[1] = 0; @@ -3628,9 +3628,9 @@ static bool8 AnimateTradeSequenceCable(void) } break; case TS_STATE_CROSSING_LINK_MONS_EXIT: - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -222) + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; + if (gSprites[sTradeData->connectionSpriteId1].y2 <= -222) { BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); sTradeData->state++; @@ -3662,9 +3662,9 @@ static bool8 AnimateTradeSequenceCable(void) sTradeData->state++; break; case TS_STATE_LINK_MON_TRAVEL_IN: - gSprites[sTradeData->connectionSpriteId1].pos2.y += 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y + gSprites[sTradeData->connectionSpriteId1].pos1.y == 64) + gSprites[sTradeData->connectionSpriteId1].y2 += 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; + if (gSprites[sTradeData->connectionSpriteId1].y2 + gSprites[sTradeData->connectionSpriteId1].y == 64) { sTradeData->state++; } @@ -3772,10 +3772,10 @@ static bool8 AnimateTradeSequenceCable(void) } break; case TS_STATE_SHOW_NEW_MON: - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 120; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.x = 0; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x = 120; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x2 = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 = 0; StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); @@ -3877,8 +3877,8 @@ static bool8 AnimateTradeSequenceWireless(void) { case TS_STATE_START: gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = -180; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 = -180; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PLAYER]].y_offset; sTradeData->state++; sTradeData->cachedMapMusic = GetCurrentMapMusic(); PlayNewMapMusic(MUS_EVOLUTION); @@ -3886,12 +3886,12 @@ static bool8 AnimateTradeSequenceWireless(void) case TS_STATE_MON_SLIDE_IN: if (sTradeData->bg2hofs > 0) { - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x += 3; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 += 3; sTradeData->bg2hofs -= 3; } else { - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.x = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x2 = 0; sTradeData->bg2hofs = 0; sTradeData->state = TS_STATE_SEND_MSG; } @@ -4010,9 +4010,9 @@ static bool8 AnimateTradeSequenceWireless(void) DISPCNT_OBJ_ON); break; case TS_STATE_LINK_MON_TRAVEL_OFFSCREEN: - gSprites[sTradeData->connectionSpriteId1].pos1.y -= 2; - gSprites[sTradeData->connectionSpriteId2].pos1.y -= 2; - if (gSprites[sTradeData->connectionSpriteId1].pos1.y < -8) + gSprites[sTradeData->connectionSpriteId1].y -= 2; + gSprites[sTradeData->connectionSpriteId2].y -= 2; + if (gSprites[sTradeData->connectionSpriteId1].y < -8) { sTradeData->state = TS_STATE_FADE_OUT_TO_CROSSING; } @@ -4042,13 +4042,13 @@ static bool8 AnimateTradeSequenceWireless(void) PlaySE(SE_WARP_OUT); sTradeData->state++; } - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; break; case TS_STATE_CROSSING_LINK_MONS_ENTER: - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -90) + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; + if (gSprites[sTradeData->connectionSpriteId1].y2 <= -90) { gSprites[sTradeData->connectionSpriteId1].data[1] = 1; gSprites[sTradeData->connectionSpriteId2].data[1] = 1; @@ -4081,23 +4081,23 @@ static bool8 AnimateTradeSequenceWireless(void) StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]], 0); } StartSpriteAffineAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.x = 40; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 200; - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos1.y = 192; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = -32; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].x = 40; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x = 200; + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y = 192; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y = -32; gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].invisible = FALSE; gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].invisible = FALSE; sTradeData->state++; break; case TS_STATE_CROSSING_MON_PICS_MOVE: - gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y -= 3; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y += 3; - if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -DISPLAY_HEIGHT - && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y >= -DISPLAY_HEIGHT - 3) + gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 -= 3; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 += 3; + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -DISPLAY_HEIGHT + && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); } - if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].pos2.y < -222) + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -222) { gSprites[sTradeData->connectionSpriteId1].data[1] = 0; gSprites[sTradeData->connectionSpriteId2].data[1] = 0; @@ -4108,9 +4108,9 @@ static bool8 AnimateTradeSequenceWireless(void) } break; case TS_STATE_CROSSING_LINK_MONS_EXIT: - gSprites[sTradeData->connectionSpriteId1].pos2.y -= 3; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 3; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y <= -222) + gSprites[sTradeData->connectionSpriteId1].y2 -= 3; + gSprites[sTradeData->connectionSpriteId2].y2 += 3; + if (gSprites[sTradeData->connectionSpriteId1].y2 <= -222) { BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); sTradeData->state++; @@ -4145,9 +4145,9 @@ static bool8 AnimateTradeSequenceWireless(void) sTradeData->state++; break; case TS_STATE_LINK_MON_TRAVEL_IN: - gSprites[sTradeData->connectionSpriteId1].pos2.y += 4; - gSprites[sTradeData->connectionSpriteId2].pos2.y += 4; - if (gSprites[sTradeData->connectionSpriteId1].pos2.y + gSprites[sTradeData->connectionSpriteId1].pos1.y == 64) + gSprites[sTradeData->connectionSpriteId1].y2 += 4; + gSprites[sTradeData->connectionSpriteId2].y2 += 4; + if (gSprites[sTradeData->connectionSpriteId1].y2 + gSprites[sTradeData->connectionSpriteId1].y == 64) { sTradeData->state = TS_STATE_PAN_TO_GBA_WIRELESS; sTradeData->timer = 0; @@ -4272,10 +4272,10 @@ static bool8 AnimateTradeSequenceWireless(void) } break; case TS_STATE_SHOW_NEW_MON: - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.x = 120; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos1.y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.x = 0; - gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].pos2.y = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x = 120; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y = gMonFrontPicCoords[sTradeData->monSpecies[TRADE_PARTNER]].y_offset + 60; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x2 = 0; + gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 = 0; StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); @@ -4425,16 +4425,16 @@ static void UpdateTradeFinishFlags(void) static void SpriteCB_BouncingPokeball(struct Sprite *sprite) { - sprite->pos1.y += sprite->data[0] / 10; + sprite->y += sprite->data[0] / 10; sprite->data[5] += sprite->data[1]; - sprite->pos1.x = sprite->data[5] / 10; - if (sprite->pos1.y > 0x4c) + sprite->x = sprite->data[5] / 10; + if (sprite->y > 0x4c) { - sprite->pos1.y = 0x4c; + sprite->y = 0x4c; sprite->data[0] = -(sprite->data[0] * sprite->data[2]) / 100; sprite->data[3] ++; } - if (sprite->pos1.x == 0x78) + if (sprite->x == 0x78) sprite->data[1] = 0; sprite->data[0] += sprite->data[4]; if (sprite->data[3] == 4) @@ -4446,7 +4446,7 @@ static void SpriteCB_BouncingPokeball(struct Sprite *sprite) static void SpriteCB_BouncingPokeballDepart(struct Sprite *sprite) { - sprite->pos2.y += sTradeBallVerticalVelocityTable[sprite->data[0]]; + sprite->y2 += sTradeBallVerticalVelocityTable[sprite->data[0]]; if (sprite->data[0] == 22) PlaySE(SE_BALL_BOUNCE_1); if (++ sprite->data[0] == 44) @@ -4464,7 +4464,7 @@ static void SpriteCB_BouncingPokeballDepartEnd(struct Sprite *sprite) StartSpriteAffineAnim(sprite, 1); if (++ sprite->data[1] > 20) { - sprite->pos2.y -= sTradeBallVerticalVelocityTable[sprite->data[0]]; + sprite->y2 -= sTradeBallVerticalVelocityTable[sprite->data[0]]; if (++ sprite->data[0] == 23) { DestroySprite(sprite); @@ -4477,7 +4477,7 @@ static void SpriteCB_BouncingPokeballArrive(struct Sprite *sprite) { if (sprite->data[2] == 0) { - if ((sprite->pos1.y += 4) > sprite->data[3]) + if ((sprite->y += 4) > sprite->data[3]) { sprite->data[2] ++; sprite->data[0] = 0x16; @@ -4492,7 +4492,7 @@ static void SpriteCB_BouncingPokeballArrive(struct Sprite *sprite) PlaySE(SE_BALL_BOUNCE_3); if (sprite->data[0] == 0x6b) PlaySE(SE_BALL_BOUNCE_4); - sprite->pos2.y += sTradeBallVerticalVelocityTable[sprite->data[0]]; + sprite->y2 += sTradeBallVerticalVelocityTable[sprite->data[0]]; if (++sprite->data[0] == 0x6c) sprite->callback = SpriteCallbackDummy; } diff --git a/src/trainer_see.c b/src/trainer_see.c index 155c84cbef9a..ea052fb0ced5 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -756,10 +756,10 @@ static void SpriteCB_TrainerIcons(struct Sprite *sprite) { struct Sprite *objEventSprite = &gSprites[gObjectEvents[objEventId].spriteId]; sprite->sData4 += sprite->sData3; - sprite->pos1.x = objEventSprite->pos1.x; - sprite->pos1.y = objEventSprite->pos1.y - 16; - sprite->pos2.x = objEventSprite->pos2.x; - sprite->pos2.y = objEventSprite->pos2.y + sprite->sData4; + sprite->x = objEventSprite->x; + sprite->y = objEventSprite->y - 16; + sprite->x2 = objEventSprite->x2; + sprite->y2 = objEventSprite->y2 + sprite->sData4; if (sprite->sData4) sprite->sData3++; else diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 8e9f78280c3b..3167563adeb4 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -3167,14 +3167,14 @@ static void MoveKeyboardCursor(void) if (page != UNION_ROOM_KB_PAGE_REGISTER) { StartSpriteAnim(sSprites->keyboardCursor, 0); - sSprites->keyboardCursor->pos1.x = x * 8 + 10; - sSprites->keyboardCursor->pos1.y = y * 12 + 24; + sSprites->keyboardCursor->x = x * 8 + 10; + sSprites->keyboardCursor->y = y * 12 + 24; } else { StartSpriteAnim(sSprites->keyboardCursor, 2); - sSprites->keyboardCursor->pos1.x = 24; - sSprites->keyboardCursor->pos1.y = y * 12 + 24; + sSprites->keyboardCursor->x = 24; + sSprites->keyboardCursor->y = y * 12 + 24; } } @@ -3231,7 +3231,7 @@ static void SpriteCB_TextEntryCursor(struct Sprite *sprite) else { sprite->invisible = FALSE; - sprite->pos1.x = pos * 8 + 76; + sprite->x = pos * 8 + 76; } } @@ -3240,8 +3240,8 @@ static void SpriteCB_TextEntryArrow(struct Sprite *sprite) if (++sprite->data[0] > 4) { sprite->data[0] = 0; - if (++sprite->pos2.x > 4) - sprite->pos2.x = 0; + if (++sprite->x2 > 4) + sprite->x2 = 0; } } diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 669b6ab25156..cdcdfc5da643 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -1143,9 +1143,9 @@ static void LoadAndCreateUpDownSprites(void) static void SpriteCB_UpDown(struct Sprite *sprite) { if (sprite->data[0] < 6) - sprite->pos2.y -= 2; + sprite->y2 -= 2; else if (sprite->data[0] < 12) - sprite->pos2.y += 2; + sprite->y2 += 2; if (++sprite->data[0] > 60) { @@ -1234,7 +1234,7 @@ static void UpdateMonPic(u8 loadId) { sMenu->curMonSpriteId = spriteId; gSprites[sMenu->curMonSpriteId].callback = SpriteCB_MonPic; - gSprites[sMenu->curMonSpriteId].pos2.y -= 34; + gSprites[sMenu->curMonSpriteId].y2 -= 34; sMenu->curMonTileStart = (void*)(OBJ_VRAM0 + (sMenu->curMonSheet * 32)); sMenu->curMonPalette = (sMenu->curMonPalette * 16) + 0x100; } @@ -1574,7 +1574,7 @@ static bool8 LoadNewSelection_MonToMon(void) static void SpriteCB_MonPic(struct Sprite *sprite) { - sprite->pos1.x = sMenu->curMonXOffset + 38; + sprite->x = sMenu->curMonXOffset + 38; } static void SpriteCB_SelectionIconPokeball(struct Sprite *sprite) @@ -1661,13 +1661,13 @@ static bool8 LoadConditionTitle(void) // Literally the word "Condition", the title block that appears over the mon icon static void SpriteCB_Condition(struct Sprite *sprite) { - s16 prevX = sprite->pos1.x; + s16 prevX = sprite->x; - sprite->pos1.x += sprite->data[0]; - if ((prevX <= sprite->data[1] && sprite->pos1.x >= sprite->data[1]) - || (prevX >= sprite->data[1] && sprite->pos1.x <= sprite->data[1])) + sprite->x += sprite->data[0]; + if ((prevX <= sprite->data[1] && sprite->x >= sprite->data[1]) + || (prevX >= sprite->data[1] && sprite->x <= sprite->data[1])) { - sprite->pos1.x = sprite->data[1]; + sprite->x = sprite->data[1]; sprite->callback = SpriteCallbackDummy; } } diff --git a/src/wallclock.c b/src/wallclock.c index 70888ac5fb4d..6f9bc02aee8c 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -1029,8 +1029,8 @@ static void SpriteCB_MinuteHand(struct Sprite *sprite) if (y > 128) y |= 0xff00; - sprite->pos2.x = x; - sprite->pos2.y = y; + sprite->x2 = x; + sprite->y2 = y; } static void SpriteCB_HourHand(struct Sprite *sprite) @@ -1049,8 +1049,8 @@ static void SpriteCB_HourHand(struct Sprite *sprite) if (y > 128) y |= 0xff00; - sprite->pos2.x = x; - sprite->pos2.y = y; + sprite->x2 = x; + sprite->y2 = y; } static void SpriteCB_PMIndicator(struct Sprite *sprite) @@ -1077,8 +1077,8 @@ static void SpriteCB_PMIndicator(struct Sprite *sprite) sprite->data[1]--; } } - sprite->pos2.x = Cos2(sprite->data[1]) * 30 / 0x1000; - sprite->pos2.y = Sin2(sprite->data[1]) * 30 / 0x1000; + sprite->x2 = Cos2(sprite->data[1]) * 30 / 0x1000; + sprite->y2 = Sin2(sprite->data[1]) * 30 / 0x1000; } static void SpriteCB_AMIndicator(struct Sprite *sprite) @@ -1105,6 +1105,6 @@ static void SpriteCB_AMIndicator(struct Sprite *sprite) sprite->data[1]--; } } - sprite->pos2.x = Cos2(sprite->data[1]) * 30 / 0x1000; - sprite->pos2.y = Sin2(sprite->data[1]) * 30 / 0x1000; + sprite->x2 = Cos2(sprite->data[1]) * 30 / 0x1000; + sprite->y2 = Sin2(sprite->data[1]) * 30 / 0x1000; } From 2f1a9974400a00bd0ff5394bf8ee797361a3fd9a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 8 Jul 2021 00:49:27 -0400 Subject: [PATCH 237/762] Use PR title for symbols branch commits --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index de3a35c40526..a8bd016cbcd8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -71,4 +71,4 @@ jobs: branch: symbols cwd: "./symbols" add: "*.sym" - message: ${{ github.event.commits[0].message }} + message: ${{ github.event.pull_request.title }} From 01f2381e017a25b5e1bdefb4b18e73097192fc51 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 11 Jul 2021 16:23:19 -0400 Subject: [PATCH 238/762] Add LINK_MANAGER field comments from SDK --- include/AgbRfu_LinkManager.h | 75 +++++++++++++++++++----------------- 1 file changed, 40 insertions(+), 35 deletions(-) diff --git a/include/AgbRfu_LinkManager.h b/include/AgbRfu_LinkManager.h index d4ef13183e48..3b38b85fc9fa 100644 --- a/include/AgbRfu_LinkManager.h +++ b/include/AgbRfu_LinkManager.h @@ -120,10 +120,10 @@ typedef struct InitializeParametersTag { // rfu_REQ_configSystem argument u8 maxMFrame; // Maximum number of times to re-transmit of RFU level u8 MC_TimerCount; // MC_Timer count (x16.7ms) - u16 availSlot_flag; // Use RFU-API constant "AVAIL_SLOT1-4" to specify the maximum number of child devices (1 - 4) that can be connected to a parent device. + u16 availSlot_flag; // Use RFU-API constant "AVAIL_SLOT1-4" to specify the maximum number of child devices (1 - 4) that can be connected to a parent device. // rfu_REQB_configGameData argument - u8 mboot_flag; // Multiplayer boot flag + u8 mboot_flag; // Multiplayer boot flag u16 serialNo; // Game serial number u8 *gameName; // Game name u8 *userName; // User name @@ -132,8 +132,8 @@ typedef struct InitializeParametersTag { u8 fastSearchParent_flag; // Flag indicating whether parent fast search operation to be performed by child. // Link recovery settings - u8 linkRecovery_enable; // Determines whether or not to execute the link recovery process when a link cut occurs - u16 linkRecovery_period; // Time to spend on the link recovery process (x 16.7 ms) Note: Runs for unlimited time when specifying 0. + u8 linkRecovery_enable; // Determines whether or not to execute the link recovery process when a link cut occurs + u16 linkRecovery_period; // Time to spend on the link recovery process (x 16.7 ms) Note: Runs for unlimited time when specifying 0. // Setting for NI-type data transmit/receive period u16 NI_failCounter_limit; // Limit for failCounter during NI type data transmit/receive (x 16.7 ms) Note: Runs for unlimited time when specifying 0. @@ -142,44 +142,49 @@ typedef struct InitializeParametersTag { // Timer that counts with the V-Blank cycle typedef struct VblankTimerTag { - u8 active; // Timer ON/OFF (bits 0 - 3 indicate ON/OFF for each connected slot) - u16 count_max; // Maximum count value (x16.7ms) + u8 active; // Timer ON/OFF (bits 0 - 3 indicate ON/OFF for each connected slot) + u16 count_max; // Maximum count value (x16.7ms) u16 count[RFU_CHILD_MAX]; // Current count value (x 16.7 ms) for each connected slot }VBL_TIMER; typedef struct linkManagerTag { - /* 0x000 */ u8 acceptSlot_flag; - /* 0x001 */ u8 acceptCount; - /* 0x002 */ vu8 childClockSlave_flag; - /* 0x003 */ vu8 parentAck_flag; - /* 0x004 */ u8 state; - /* 0x005 */ u8 next_state; - /* 0x006 */ u8 parent_child; - /* 0x007 */ u8 pcswitch_flag; - /* 0x008 */ u8 RFU_powerOn_flag; - /* 0x009 */ u8 linkRecovery_enable; - /* 0x00a */ u8 linkRecovery_start_flag; - /* 0x00b */ u8 fastSearchParent_flag; - /* 0x00c */ u8 connectSlot_flag_old; - /* 0x00d */ u8 reserveDisconnectSlot_flag; - /* 0x00e */ u8 active; - /* 0x00f */ u8 msc_exe_flag; - /* 0x010 */ u8 child_slot; - /* 0x011 */ u8 state_bak[2]; - /* 0x014 */ u16 param[2]; - /* 0x018 */ u16 NI_failCounter_limit; - /* 0x01a */ u16 connect_period; - /* 0x01c */ u16 pcswitch_period_bak; - /* 0x01e */ u16 work; - /* 0x020 */ u16 *acceptable_serialNo_list; - /* 0x024 */ VBL_TIMER nameAcceptTimer; - /* 0x030 */ VBL_TIMER linkRecoveryTimer; - /* 0x03c */ INIT_PARAM *init_param; - /* 0x040 */ void (*LMAN_callback)(u8, u8); - /* 0x044 */ void (*MSC_callback)(u16); + u8 acceptSlot_flag; // Connection slot of child for which Link Manager accepted connection, expressed in bits. (This bit is not dropped for a broken link but is dropped with complete disconnection.) + u8 acceptCount; // Number of child devices for which connections accepted by Link Manager. + vu8 childClockSlave_flag; // Flag indicating whether AGB clock slave state is currently being maintained by child. + vu8 parentAck_flag; // Flag indicating the child devices for which the parent received ACK by UNI commmunication. + u8 state; // Current link manager state + u8 next_state; // State that the link manager transitions to when it is next called. + u8 parent_child; // Shows whether operating on a parent or child. + u8 pcswitch_flag; // Flag for parent-child switching search. + u8 RFU_powerOn_flag; // Flag indicating whether RFU has been powered down. + u8 linkRecovery_enable; // ON/OFF flag for the link recovery process. + u8 linkRecovery_start_flag; // Link recovery start flag + u8 fastSearchParent_flag; // ON/OFF flag for parent fast search by child. + u8 connectSlot_flag_old; // Value of rfuLinkStatus->connectSlot_flag (internally used by the API) when the link manager was called previously. + u8 reserveDisconnectSlot_flag; // Bit indication of the child slot that was reject by child connection authentication and is waiting for disconnect. + u8 active; // Link manager operating flag (internally used by the API) + u8 msc_exe_flag; // MSC callback executing flag (internally used by the API) + u8 child_slot; // Slot number where child device connected (internally used by the API) + u8 state_bak[2]; // Backup of link manager state (internally used by the API) + u16 param[2]; // Region where parameters returned when LMAN callback occurs are stored. + u16 NI_failCounter_limit; // Period of failCounter during NI type data transmit/receive (x 16.7 ms) Note: Runs for unlimited time when specifying 0 + u16 connect_period; // Count for the period to execute a connection process (x 16.7 ms). Note: Runs for unlimited time when specifying 0. + u16 pcswitch_period_bak; // Backup for No. 3 SC period during parent-child switching search. + u16 work; // Work region used by the link manager. + u16 *acceptable_serialNo_list; // List of game serial numbers that can accept connections. (See Note below) + VBL_TIMER nameAcceptTimer; // Timer for period to receive game names from child device. + VBL_TIMER linkRecoveryTimer; // Timer for the link recovery process period for both parent and child. Note: Runs for unlimited time when specifying 0. + INIT_PARAM *init_param; // Pointer to parameter when executing initial setting process. + void (*LMAN_callback)(u8 msg,u8 param_count); // Pointer to user-defined LMAN callback routine generated by link manager operation. + void (*MSC_callback)(u16 REQ_commandID); // User-defined MSC callback function. (When defining the link manager, defines the MSC callback using rfu_LMAN_initializeManager or rfu_LMAN_setMSCCallback without using rfu_setMSCCallback.) } LINK_MANAGER; +/* Note: The acceptable_serialNo_list uses the following format to specify a list of game serial numbers that the parent device can accept connections from and terminates with 0xffff. (maximum 16 devices) + + u16 acceptable_serialNo_list[]={0x0001, 0x0002, 0x0003, 0xffff}; +*/ + extern struct linkManagerTag lman; u32 rfu_LMAN_REQBN_softReset_and_checkID(void); From eab1d7b5b11d9325ebe8f67fa4a7430eb05cf461 Mon Sep 17 00:00:00 2001 From: Collin Styles Date: Sun, 11 Jul 2021 13:21:20 -0700 Subject: [PATCH 239/762] Use the `IS_TYPE_PHYSICAL` macro in `AddMovePoints` --- src/battle_tv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_tv.c b/src/battle_tv.c index a61f5ff29110..8c1f8044a55f 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -1246,7 +1246,7 @@ static void AddMovePoints(u8 caseId, u16 arg1, u8 arg2, u8 arg3) break; case PTS_REFLECT: // If hit Reflect with damaging physical move - if (type < TYPE_MYSTERY && power != 0 && tvPtr->side[defSide].reflectMonId != 0) + if (IS_TYPE_PHYSICAL(type) && power != 0 && tvPtr->side[defSide].reflectMonId != 0) { u32 id = (tvPtr->side[defSide].reflectMonId - 1) * 4; movePoints->points[defSide][id + tvPtr->side[defSide].reflectMoveSlot] += sPointsArray[caseId][0]; @@ -1254,7 +1254,7 @@ static void AddMovePoints(u8 caseId, u16 arg1, u8 arg2, u8 arg3) break; case PTS_LIGHT_SCREEN: // If hit Light Screen with damaging special move - if (type >= TYPE_MYSTERY && power != 0 && tvPtr->side[defSide].lightScreenMonId != 0) + if (!IS_TYPE_PHYSICAL(type) && power != 0 && tvPtr->side[defSide].lightScreenMonId != 0) { u32 id = (tvPtr->side[defSide].lightScreenMonId - 1) * 4; movePoints->points[defSide][id + tvPtr->side[defSide].lightScreenMoveSlot] += sPointsArray[caseId][0]; From 52512cfbe1b69200d41964e5046cb04a776a5d49 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 16 Jul 2021 12:15:53 -0400 Subject: [PATCH 240/762] Use merge commit message for symbols branch --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a8bd016cbcd8..5b904ae9f354 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -63,6 +63,7 @@ jobs: if: ${{ github.event_name == 'push' }} run: | cp -v *.sym symbols/ + export GITHUB_COMMIT_MSG="$( git log --format=%s ${GITHUB_SHA} )" - name: Update symfiles if: ${{ github.event_name == 'push' }} @@ -71,4 +72,4 @@ jobs: branch: symbols cwd: "./symbols" add: "*.sym" - message: ${{ github.event.pull_request.title }} + message: $GITHUB_COMMIT_MSG From 06351bf63c791c3390edb9968effcfbadbd63fbe Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 20 Jul 2021 15:18:31 -0400 Subject: [PATCH 241/762] Remove address comments --- data/battle_ai_scripts.s | 316 +-- data/battle_scripts_1.s | 2 +- data/battle_scripts_2.s | 8 +- data/contest_ai_scripts.s | 2 +- data/event_scripts.s | 144 +- data/field_effect_scripts.s | 136 +- data/fonts.s | 36 +- .../AbandonedShip_CaptainsOffice/scripts.inc | 14 +- .../AbandonedShip_Corridors_1F/scripts.inc | 14 +- .../AbandonedShip_Corridors_B1F/scripts.inc | 34 +- data/maps/AbandonedShip_Deck/scripts.inc | 4 +- .../scripts.inc | 50 +- .../scripts.inc | 38 +- data/maps/AbandonedShip_Room_B1F/scripts.inc | 2 +- data/maps/AbandonedShip_Rooms2_1F/scripts.inc | 64 +- .../maps/AbandonedShip_Rooms2_B1F/scripts.inc | 6 +- data/maps/AbandonedShip_Rooms_1F/scripts.inc | 34 +- data/maps/AbandonedShip_Rooms_B1F/scripts.inc | 8 +- .../AbandonedShip_Underwater1/scripts.inc | 4 +- .../AbandonedShip_Underwater2/scripts.inc | 4 +- data/maps/AlteringCave/scripts.inc | 4 +- data/maps/AncientTomb/scripts.inc | 26 +- data/maps/AquaHideout_1F/scripts.inc | 36 +- data/maps/AquaHideout_B1F/scripts.inc | 56 +- data/maps/AquaHideout_B2F/scripts.inc | 50 +- .../AquaHideout_UnusedRubyMap1/scripts.inc | 2 +- .../AquaHideout_UnusedRubyMap2/scripts.inc | 2 +- .../AquaHideout_UnusedRubyMap3/scripts.inc | 2 +- data/maps/ArtisanCave_1F/scripts.inc | 2 +- data/maps/ArtisanCave_B1F/scripts.inc | 4 +- data/maps/BattleColosseum_2P/scripts.inc | 2 +- data/maps/BattleColosseum_4P/scripts.inc | 2 +- .../scripts.inc | 182 +- .../scripts.inc | 18 +- .../scripts.inc | 158 +- .../scripts.inc | 276 +- .../scripts.inc | 28 +- .../scripts.inc | 218 +- .../scripts.inc | 130 +- .../scripts.inc | 86 +- .../scripts.inc | 170 +- .../scripts.inc | 230 +- .../scripts.inc | 160 +- .../scripts.inc | 44 +- .../scripts.inc | 188 +- .../scripts.inc | 18 +- .../scripts.inc | 126 +- .../scripts.inc | 14 +- .../scripts.inc | 226 +- .../scripts.inc | 16 +- .../scripts.inc | 122 +- .../scripts.inc | 296 +-- .../scripts.inc | 280 +- .../scripts.inc | 90 +- .../scripts.inc | 164 +- .../scripts.inc | 22 +- .../scripts.inc | 28 +- .../scripts.inc | 388 +-- .../scripts.inc | 144 +- .../scripts.inc | 40 +- .../scripts.inc | 758 +++--- .../scripts.inc | 242 +- data/maps/BattleFrontier_Lounge1/scripts.inc | 96 +- data/maps/BattleFrontier_Lounge2/scripts.inc | 110 +- data/maps/BattleFrontier_Lounge3/scripts.inc | 138 +- data/maps/BattleFrontier_Lounge4/scripts.inc | 14 +- data/maps/BattleFrontier_Lounge5/scripts.inc | 70 +- data/maps/BattleFrontier_Lounge6/scripts.inc | 20 +- data/maps/BattleFrontier_Lounge7/scripts.inc | 136 +- data/maps/BattleFrontier_Lounge8/scripts.inc | 14 +- data/maps/BattleFrontier_Lounge9/scripts.inc | 2 +- data/maps/BattleFrontier_Mart/scripts.inc | 18 +- .../BattleFrontier_OutsideEast/scripts.inc | 146 +- .../BattleFrontier_OutsideWest/scripts.inc | 174 +- .../scripts.inc | 22 +- .../scripts.inc | 8 +- .../BattleFrontier_RankingHall/scripts.inc | 50 +- .../BattleFrontier_ReceptionGate/scripts.inc | 142 +- .../BattleFrontier_ScottsHouse/scripts.inc | 90 +- data/maps/BattlePyramidSquare01/scripts.inc | 2 +- data/maps/BirthIsland_Exterior/scripts.inc | 30 +- data/maps/BirthIsland_Harbor/scripts.inc | 6 +- data/maps/CaveOfOrigin_1F/scripts.inc | 4 +- data/maps/CaveOfOrigin_B1F/scripts.inc | 26 +- data/maps/CaveOfOrigin_Entrance/scripts.inc | 4 +- .../scripts.inc | 4 +- .../scripts.inc | 4 +- .../scripts.inc | 4 +- data/maps/ContestHall/scripts.inc | 144 +- data/maps/DesertRuins/scripts.inc | 26 +- data/maps/DesertUnderpass/scripts.inc | 14 +- data/maps/DewfordTown/scripts.inc | 122 +- data/maps/DewfordTown_Gym/scripts.inc | 166 +- data/maps/DewfordTown_Hall/scripts.inc | 126 +- data/maps/DewfordTown_House1/scripts.inc | 14 +- data/maps/DewfordTown_House2/scripts.inc | 18 +- .../DewfordTown_PokemonCenter_1F/scripts.inc | 14 +- .../DewfordTown_PokemonCenter_2F/scripts.inc | 8 +- data/maps/EverGrandeCity/scripts.inc | 18 +- .../EverGrandeCity_ChampionsRoom/scripts.inc | 78 +- .../EverGrandeCity_DrakesRoom/scripts.inc | 28 +- .../EverGrandeCity_GlaciasRoom/scripts.inc | 28 +- data/maps/EverGrandeCity_Hall1/scripts.inc | 6 +- data/maps/EverGrandeCity_Hall2/scripts.inc | 6 +- data/maps/EverGrandeCity_Hall3/scripts.inc | 6 +- data/maps/EverGrandeCity_Hall4/scripts.inc | 6 +- data/maps/EverGrandeCity_Hall5/scripts.inc | 6 +- .../EverGrandeCity_HallOfFame/scripts.inc | 22 +- .../EverGrandeCity_PhoebesRoom/scripts.inc | 28 +- .../scripts.inc | 28 +- .../scripts.inc | 8 +- .../scripts.inc | 36 +- .../scripts.inc | 8 +- .../EverGrandeCity_SidneysRoom/scripts.inc | 30 +- data/maps/FallarborTown/scripts.inc | 36 +- .../scripts.inc | 62 +- .../scripts.inc | 20 +- .../FallarborTown_BattleTentLobby/scripts.inc | 96 +- .../FallarborTown_CozmosHouse/scripts.inc | 38 +- data/maps/FallarborTown_Mart/scripts.inc | 18 +- .../scripts.inc | 32 +- .../scripts.inc | 28 +- .../scripts.inc | 8 +- data/maps/FarawayIsland_Entrance/scripts.inc | 14 +- data/maps/FarawayIsland_Interior/scripts.inc | 50 +- data/maps/FieryPath/scripts.inc | 6 +- data/maps/FortreeCity/scripts.inc | 56 +- .../FortreeCity_DecorationShop/scripts.inc | 18 +- data/maps/FortreeCity_Gym/scripts.inc | 108 +- data/maps/FortreeCity_House1/scripts.inc | 28 +- data/maps/FortreeCity_House2/scripts.inc | 24 +- data/maps/FortreeCity_House3/scripts.inc | 10 +- data/maps/FortreeCity_House4/scripts.inc | 28 +- data/maps/FortreeCity_House5/scripts.inc | 14 +- data/maps/FortreeCity_Mart/scripts.inc | 18 +- .../FortreeCity_PokemonCenter_1F/scripts.inc | 18 +- .../FortreeCity_PokemonCenter_2F/scripts.inc | 8 +- data/maps/GraniteCave_1F/scripts.inc | 10 +- data/maps/GraniteCave_B1F/scripts.inc | 4 +- data/maps/GraniteCave_B2F/scripts.inc | 2 +- data/maps/GraniteCave_StevensRoom/scripts.inc | 30 +- data/maps/InsideOfTruck/scripts.inc | 16 +- data/maps/IslandCave/scripts.inc | 32 +- data/maps/JaggedPass/scripts.inc | 94 +- data/maps/LavaridgeTown/scripts.inc | 120 +- data/maps/LavaridgeTown_Gym_1F/scripts.inc | 142 +- data/maps/LavaridgeTown_Gym_B1F/scripts.inc | 24 +- data/maps/LavaridgeTown_HerbShop/scripts.inc | 20 +- data/maps/LavaridgeTown_House/scripts.inc | 10 +- data/maps/LavaridgeTown_Mart/scripts.inc | 14 +- .../scripts.inc | 18 +- .../scripts.inc | 8 +- data/maps/LilycoveCity/scripts.inc | 244 +- .../maps/LilycoveCity_ContestHall/scripts.inc | 144 +- .../LilycoveCity_ContestLobby/scripts.inc | 290 +-- .../LilycoveCity_CoveLilyMotel_1F/scripts.inc | 30 +- .../LilycoveCity_CoveLilyMotel_2F/scripts.inc | 42 +- .../scripts.inc | 32 +- .../scripts.inc | 66 +- .../scripts.inc | 58 +- .../scripts.inc | 22 +- .../scripts.inc | 22 +- .../scripts.inc | 22 +- .../scripts.inc | 40 +- data/maps/LilycoveCity_Harbor/scripts.inc | 156 +- data/maps/LilycoveCity_House1/scripts.inc | 10 +- data/maps/LilycoveCity_House2/scripts.inc | 10 +- data/maps/LilycoveCity_House3/scripts.inc | 42 +- data/maps/LilycoveCity_House4/scripts.inc | 10 +- .../scripts.inc | 110 +- .../scripts.inc | 106 +- .../scripts.inc | 34 +- .../LilycoveCity_PokemonCenter_1F/scripts.inc | 24 +- .../LilycoveCity_PokemonCenter_2F/scripts.inc | 8 +- .../scripts.inc | 216 +- data/maps/LilycoveCity_UnusedMart/scripts.inc | 2 +- data/maps/LittlerootTown/scripts.inc | 260 +- .../scripts.inc | 132 +- .../scripts.inc | 78 +- .../LittlerootTown_MaysHouse_1F/scripts.inc | 100 +- .../LittlerootTown_MaysHouse_2F/scripts.inc | 98 +- .../scripts.inc | 260 +- data/maps/MagmaHideout_1F/scripts.inc | 20 +- data/maps/MagmaHideout_2F_1R/scripts.inc | 34 +- data/maps/MagmaHideout_2F_2R/scripts.inc | 34 +- data/maps/MagmaHideout_2F_3R/scripts.inc | 2 +- data/maps/MagmaHideout_3F_1R/scripts.inc | 18 +- data/maps/MagmaHideout_3F_2R/scripts.inc | 10 +- data/maps/MagmaHideout_3F_3R/scripts.inc | 2 +- data/maps/MagmaHideout_4F/scripts.inc | 52 +- data/maps/MarineCave_End/scripts.inc | 18 +- data/maps/MarineCave_Entrance/scripts.inc | 4 +- data/maps/MauvilleCity/scripts.inc | 168 +- data/maps/MauvilleCity_BikeShop/scripts.inc | 98 +- data/maps/MauvilleCity_GameCorner/scripts.inc | 212 +- data/maps/MauvilleCity_Gym/scripts.inc | 130 +- data/maps/MauvilleCity_House1/scripts.inc | 12 +- data/maps/MauvilleCity_House2/scripts.inc | 22 +- data/maps/MauvilleCity_Mart/scripts.inc | 14 +- .../MauvilleCity_PokemonCenter_1F/scripts.inc | 20 +- .../MauvilleCity_PokemonCenter_2F/scripts.inc | 12 +- data/maps/MeteorFalls_1F_1R/scripts.inc | 58 +- data/maps/MeteorFalls_1F_2R/scripts.inc | 68 +- data/maps/MeteorFalls_B1F_1R/scripts.inc | 2 +- data/maps/MeteorFalls_B1F_2R/scripts.inc | 2 +- data/maps/MeteorFalls_StevensCave/scripts.inc | 12 +- data/maps/MirageTower_1F/scripts.inc | 4 +- data/maps/MirageTower_2F/scripts.inc | 4 +- data/maps/MirageTower_3F/scripts.inc | 4 +- data/maps/MirageTower_4F/scripts.inc | 20 +- data/maps/MossdeepCity/scripts.inc | 106 +- .../MossdeepCity_GameCorner_1F/scripts.inc | 32 +- .../MossdeepCity_GameCorner_B1F/scripts.inc | 2 +- data/maps/MossdeepCity_Gym/scripts.inc | 200 +- data/maps/MossdeepCity_House1/scripts.inc | 16 +- data/maps/MossdeepCity_House2/scripts.inc | 22 +- data/maps/MossdeepCity_House3/scripts.inc | 18 +- data/maps/MossdeepCity_House4/scripts.inc | 22 +- data/maps/MossdeepCity_Mart/scripts.inc | 18 +- .../MossdeepCity_PokemonCenter_1F/scripts.inc | 14 +- .../MossdeepCity_PokemonCenter_2F/scripts.inc | 12 +- .../MossdeepCity_SpaceCenter_1F/scripts.inc | 132 +- .../MossdeepCity_SpaceCenter_2F/scripts.inc | 138 +- .../MossdeepCity_StevensHouse/scripts.inc | 60 +- data/maps/MtChimney/scripts.inc | 246 +- .../MtChimney_CableCarStation/scripts.inc | 30 +- data/maps/MtPyre_1F/scripts.inc | 18 +- data/maps/MtPyre_2F/scripts.inc | 56 +- data/maps/MtPyre_3F/scripts.inc | 38 +- data/maps/MtPyre_4F/scripts.inc | 10 +- data/maps/MtPyre_5F/scripts.inc | 10 +- data/maps/MtPyre_6F/scripts.inc | 30 +- data/maps/MtPyre_Exterior/scripts.inc | 12 +- data/maps/MtPyre_Summit/scripts.inc | 166 +- data/maps/NavelRock_B1F/scripts.inc | 2 +- data/maps/NavelRock_Bottom/scripts.inc | 18 +- data/maps/NavelRock_Down01/scripts.inc | 2 +- data/maps/NavelRock_Down02/scripts.inc | 2 +- data/maps/NavelRock_Down03/scripts.inc | 2 +- data/maps/NavelRock_Down04/scripts.inc | 2 +- data/maps/NavelRock_Down05/scripts.inc | 2 +- data/maps/NavelRock_Down06/scripts.inc | 2 +- data/maps/NavelRock_Down07/scripts.inc | 2 +- data/maps/NavelRock_Down08/scripts.inc | 2 +- data/maps/NavelRock_Down09/scripts.inc | 2 +- data/maps/NavelRock_Down10/scripts.inc | 2 +- data/maps/NavelRock_Down11/scripts.inc | 2 +- data/maps/NavelRock_Entrance/scripts.inc | 2 +- data/maps/NavelRock_Exterior/scripts.inc | 4 +- data/maps/NavelRock_Fork/scripts.inc | 2 +- data/maps/NavelRock_Harbor/scripts.inc | 6 +- data/maps/NavelRock_Top/scripts.inc | 26 +- data/maps/NavelRock_Up1/scripts.inc | 2 +- data/maps/NavelRock_Up2/scripts.inc | 2 +- data/maps/NavelRock_Up3/scripts.inc | 2 +- data/maps/NavelRock_Up4/scripts.inc | 2 +- data/maps/NewMauville_Entrance/scripts.inc | 18 +- data/maps/NewMauville_Inside/scripts.inc | 50 +- data/maps/OldaleTown/scripts.inc | 106 +- data/maps/OldaleTown_House1/scripts.inc | 6 +- data/maps/OldaleTown_House2/scripts.inc | 10 +- data/maps/OldaleTown_Mart/scripts.inc | 22 +- .../OldaleTown_PokemonCenter_1F/scripts.inc | 22 +- .../OldaleTown_PokemonCenter_2F/scripts.inc | 8 +- data/maps/PacifidlogTown/scripts.inc | 22 +- data/maps/PacifidlogTown_House1/scripts.inc | 10 +- data/maps/PacifidlogTown_House2/scripts.inc | 46 +- data/maps/PacifidlogTown_House3/scripts.inc | 24 +- data/maps/PacifidlogTown_House4/scripts.inc | 22 +- data/maps/PacifidlogTown_House5/scripts.inc | 14 +- .../scripts.inc | 18 +- .../scripts.inc | 8 +- data/maps/PetalburgCity/scripts.inc | 156 +- data/maps/PetalburgCity_Gym/scripts.inc | 438 ++-- data/maps/PetalburgCity_House1/scripts.inc | 10 +- data/maps/PetalburgCity_House2/scripts.inc | 10 +- data/maps/PetalburgCity_Mart/scripts.inc | 22 +- .../scripts.inc | 32 +- .../scripts.inc | 8 +- .../PetalburgCity_WallysHouse/scripts.inc | 38 +- data/maps/PetalburgWoods/scripts.inc | 130 +- data/maps/RecordCorner/scripts.inc | 2 +- data/maps/Route101/scripts.inc | 68 +- data/maps/Route102/scripts.inc | 42 +- data/maps/Route103/scripts.inc | 110 +- data/maps/Route104/scripts.inc | 238 +- data/maps/Route104_MrBrineysHouse/scripts.inc | 44 +- .../scripts.inc | 26 +- data/maps/Route104_Prototype/scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/Route105/scripts.inc | 32 +- data/maps/Route106/scripts.inc | 18 +- data/maps/Route107/scripts.inc | 20 +- data/maps/Route108/scripts.inc | 18 +- data/maps/Route109/scripts.inc | 124 +- data/maps/Route109_SeashoreHouse/scripts.inc | 64 +- data/maps/Route110/scripts.inc | 320 +-- .../scripts.inc | 16 +- .../scripts.inc | 22 +- .../Route110_TrickHouseCorridor/scripts.inc | 4 +- data/maps/Route110_TrickHouseEnd/scripts.inc | 94 +- .../Route110_TrickHouseEntrance/scripts.inc | 246 +- .../Route110_TrickHousePuzzle1/scripts.inc | 36 +- .../Route110_TrickHousePuzzle2/scripts.inc | 52 +- .../Route110_TrickHousePuzzle3/scripts.inc | 76 +- .../Route110_TrickHousePuzzle4/scripts.inc | 32 +- .../Route110_TrickHousePuzzle5/scripts.inc | 302 +-- .../Route110_TrickHousePuzzle6/scripts.inc | 38 +- .../Route110_TrickHousePuzzle7/scripts.inc | 132 +- .../Route110_TrickHousePuzzle8/scripts.inc | 32 +- data/maps/Route111/scripts.inc | 224 +- .../Route111_OldLadysRestStop/scripts.inc | 18 +- .../scripts.inc | 28 +- data/maps/Route112/scripts.inc | 46 +- .../maps/Route112_CableCarStation/scripts.inc | 30 +- data/maps/Route113/scripts.inc | 64 +- data/maps/Route113_GlassWorkshop/scripts.inc | 98 +- data/maps/Route114/scripts.inc | 70 +- .../Route114_FossilManiacsHouse/scripts.inc | 20 +- .../Route114_FossilManiacsTunnel/scripts.inc | 26 +- data/maps/Route114_LanettesHouse/scripts.inc | 30 +- data/maps/Route115/scripts.inc | 52 +- data/maps/Route116/scripts.inc | 140 +- .../Route116_TunnelersRestHouse/scripts.inc | 20 +- data/maps/Route117/scripts.inc | 76 +- data/maps/Route117_PokemonDayCare/scripts.inc | 4 +- data/maps/Route118/scripts.inc | 90 +- data/maps/Route119/scripts.inc | 178 +- data/maps/Route119_House/scripts.inc | 10 +- .../Route119_WeatherInstitute_1F/scripts.inc | 48 +- .../Route119_WeatherInstitute_2F/scripts.inc | 98 +- data/maps/Route120/scripts.inc | 132 +- data/maps/Route121/scripts.inc | 58 +- .../Route121_SafariZoneEntrance/scripts.inc | 34 +- data/maps/Route122/scripts.inc | 2 +- data/maps/Route123/scripts.inc | 72 +- .../Route123_BerryMastersHouse/scripts.inc | 30 +- data/maps/Route124/scripts.inc | 38 +- .../scripts.inc | 98 +- data/maps/Route125/scripts.inc | 30 +- data/maps/Route126/scripts.inc | 24 +- data/maps/Route127/scripts.inc | 28 +- data/maps/Route128/scripts.inc | 70 +- data/maps/Route129/scripts.inc | 20 +- data/maps/Route130/scripts.inc | 14 +- data/maps/Route131/scripts.inc | 24 +- data/maps/Route132/scripts.inc | 18 +- data/maps/Route133/scripts.inc | 16 +- data/maps/Route134/scripts.inc | 22 +- data/maps/RustboroCity/scripts.inc | 328 +-- .../RustboroCity_CuttersHouse/scripts.inc | 14 +- .../RustboroCity_DevonCorp_1F/scripts.inc | 48 +- .../RustboroCity_DevonCorp_2F/scripts.inc | 108 +- .../RustboroCity_DevonCorp_3F/scripts.inc | 70 +- data/maps/RustboroCity_Flat1_1F/scripts.inc | 10 +- data/maps/RustboroCity_Flat1_2F/scripts.inc | 54 +- data/maps/RustboroCity_Flat2_1F/scripts.inc | 10 +- data/maps/RustboroCity_Flat2_2F/scripts.inc | 14 +- data/maps/RustboroCity_Flat2_3F/scripts.inc | 10 +- data/maps/RustboroCity_Gym/scripts.inc | 80 +- data/maps/RustboroCity_House1/scripts.inc | 24 +- data/maps/RustboroCity_House2/scripts.inc | 10 +- data/maps/RustboroCity_House3/scripts.inc | 14 +- data/maps/RustboroCity_Mart/scripts.inc | 24 +- .../RustboroCity_PokemonCenter_1F/scripts.inc | 18 +- .../RustboroCity_PokemonCenter_2F/scripts.inc | 8 +- .../RustboroCity_PokemonSchool/scripts.inc | 92 +- data/maps/RusturfTunnel/scripts.inc | 128 +- data/maps/SSTidalCorridor/scripts.inc | 98 +- data/maps/SSTidalLowerDeck/scripts.inc | 18 +- data/maps/SSTidalRooms/scripts.inc | 74 +- data/maps/SafariZone_North/scripts.inc | 6 +- data/maps/SafariZone_Northeast/scripts.inc | 2 +- data/maps/SafariZone_Northwest/scripts.inc | 4 +- data/maps/SafariZone_RestHouse/scripts.inc | 8 +- data/maps/SafariZone_South/scripts.inc | 58 +- data/maps/SafariZone_Southeast/scripts.inc | 2 +- data/maps/SafariZone_Southwest/scripts.inc | 6 +- data/maps/ScorchedSlab/scripts.inc | 4 +- data/maps/SeafloorCavern_Entrance/scripts.inc | 18 +- data/maps/SeafloorCavern_Room1/scripts.inc | 18 +- data/maps/SeafloorCavern_Room2/scripts.inc | 2 +- data/maps/SeafloorCavern_Room3/scripts.inc | 18 +- data/maps/SeafloorCavern_Room4/scripts.inc | 18 +- data/maps/SeafloorCavern_Room5/scripts.inc | 2 +- data/maps/SeafloorCavern_Room6/scripts.inc | 2 +- data/maps/SeafloorCavern_Room7/scripts.inc | 2 +- data/maps/SeafloorCavern_Room8/scripts.inc | 2 +- data/maps/SeafloorCavern_Room9/scripts.inc | 56 +- data/maps/SealedChamber_InnerRoom/scripts.inc | 18 +- data/maps/SealedChamber_OuterRoom/scripts.inc | 36 +- .../scripts.inc | 2 +- .../ShoalCave_HighTideInnerRoom/scripts.inc | 2 +- .../ShoalCave_LowTideEntranceRoom/scripts.inc | 26 +- .../maps/ShoalCave_LowTideIceRoom/scripts.inc | 2 +- .../ShoalCave_LowTideInnerRoom/scripts.inc | 40 +- .../ShoalCave_LowTideLowerRoom/scripts.inc | 20 +- .../ShoalCave_LowTideStairsRoom/scripts.inc | 12 +- data/maps/SkyPillar_1F/scripts.inc | 6 +- data/maps/SkyPillar_2F/scripts.inc | 8 +- data/maps/SkyPillar_3F/scripts.inc | 6 +- data/maps/SkyPillar_4F/scripts.inc | 8 +- data/maps/SkyPillar_5F/scripts.inc | 6 +- data/maps/SkyPillar_Entrance/scripts.inc | 4 +- data/maps/SkyPillar_Outside/scripts.inc | 36 +- data/maps/SkyPillar_Top/scripts.inc | 40 +- data/maps/SlateportCity/scripts.inc | 368 +-- .../scripts.inc | 28 +- .../scripts.inc | 72 +- .../SlateportCity_BattleTentLobby/scripts.inc | 90 +- data/maps/SlateportCity_Harbor/scripts.inc | 152 +- data/maps/SlateportCity_House/scripts.inc | 10 +- data/maps/SlateportCity_Mart/scripts.inc | 14 +- .../SlateportCity_NameRatersHouse/scripts.inc | 36 +- .../scripts.inc | 128 +- .../scripts.inc | 116 +- .../scripts.inc | 14 +- .../scripts.inc | 8 +- .../SlateportCity_PokemonFanClub/scripts.inc | 116 +- .../scripts.inc | 36 +- .../scripts.inc | 10 +- data/maps/SootopolisCity/scripts.inc | 340 +-- data/maps/SootopolisCity_Gym_1F/scripts.inc | 84 +- data/maps/SootopolisCity_Gym_B1F/scripts.inc | 82 +- data/maps/SootopolisCity_House1/scripts.inc | 14 +- data/maps/SootopolisCity_House2/scripts.inc | 14 +- data/maps/SootopolisCity_House3/scripts.inc | 16 +- data/maps/SootopolisCity_House4/scripts.inc | 14 +- data/maps/SootopolisCity_House5/scripts.inc | 10 +- data/maps/SootopolisCity_House6/scripts.inc | 20 +- data/maps/SootopolisCity_House7/scripts.inc | 10 +- .../scripts.inc | 62 +- data/maps/SootopolisCity_Mart/scripts.inc | 22 +- .../scripts.inc | 76 +- .../scripts.inc | 18 +- .../scripts.inc | 22 +- .../scripts.inc | 8 +- data/maps/SouthernIsland_Exterior/scripts.inc | 18 +- data/maps/SouthernIsland_Interior/scripts.inc | 38 +- data/maps/TerraCave_End/scripts.inc | 18 +- data/maps/TerraCave_Entrance/scripts.inc | 4 +- data/maps/TradeCenter/scripts.inc | 2 +- data/maps/TrainerHill_1F/scripts.inc | 2 +- data/maps/TrainerHill_2F/scripts.inc | 2 +- data/maps/TrainerHill_3F/scripts.inc | 2 +- data/maps/TrainerHill_4F/scripts.inc | 2 +- data/maps/TrainerHill_Elevator/scripts.inc | 28 +- data/maps/TrainerHill_Entrance/scripts.inc | 138 +- data/maps/TrainerHill_Roof/scripts.inc | 22 +- data/maps/Underwater_MarineCave/scripts.inc | 6 +- data/maps/Underwater_Route105/scripts.inc | 4 +- data/maps/Underwater_Route124/scripts.inc | 2 +- data/maps/Underwater_Route125/scripts.inc | 4 +- data/maps/Underwater_Route126/scripts.inc | 2 +- data/maps/Underwater_Route127/scripts.inc | 4 +- data/maps/Underwater_Route128/scripts.inc | 2 +- data/maps/Underwater_Route129/scripts.inc | 4 +- data/maps/Underwater_Route134/scripts.inc | 4 +- .../Underwater_SeafloorCavern/scripts.inc | 16 +- .../maps/Underwater_SealedChamber/scripts.inc | 10 +- .../Underwater_SootopolisCity/scripts.inc | 4 +- data/maps/UnionRoom/scripts.inc | 26 +- data/maps/VerdanturfTown/scripts.inc | 44 +- .../scripts.inc | 48 +- .../scripts.inc | 20 +- .../scripts.inc | 104 +- .../scripts.inc | 38 +- data/maps/VerdanturfTown_House/scripts.inc | 10 +- data/maps/VerdanturfTown_Mart/scripts.inc | 18 +- .../scripts.inc | 14 +- .../scripts.inc | 8 +- .../VerdanturfTown_WandasHouse/scripts.inc | 52 +- data/maps/VictoryRoad_1F/scripts.inc | 76 +- data/maps/VictoryRoad_B1F/scripts.inc | 42 +- data/maps/VictoryRoad_B2F/scripts.inc | 50 +- data/multiboot_berry_glitch_fix.s | 4 +- data/multiboot_pokemon_colosseum.s | 2 +- data/mystery_event_script_cmd_table.s | 2 +- data/script_cmd_table.inc | 4 +- data/scripts/abnormal_weather.inc | 98 +- data/scripts/apprentice.inc | 52 +- data/scripts/battle_pike.inc | 68 +- data/scripts/berry_blender.inc | 236 +- data/scripts/berry_tree.inc | 84 +- data/scripts/cable_club.inc | 350 +-- data/scripts/cave_hole.inc | 10 +- data/scripts/cave_of_origin.inc | 12 +- data/scripts/check_furniture.inc | 14 +- data/scripts/contest_hall.inc | 502 ++-- data/scripts/day_care.inc | 124 +- data/scripts/elite_four.inc | 8 +- data/scripts/field_move_scripts.inc | 96 +- data/scripts/field_poison.inc | 8 +- data/scripts/flash.inc | 2 +- data/scripts/gabby_and_ty.inc | 110 +- data/scripts/hall_of_fame.inc | 12 +- data/scripts/interview.inc | 80 +- data/scripts/item_ball_scripts.inc | 330 +-- data/scripts/kecleon.inc | 24 +- data/scripts/lilycove_lady.inc | 260 +- data/scripts/mauville_man.inc | 372 +-- data/scripts/mevent.inc | 10 +- data/scripts/mevent_altering_cave.inc | 4 +- data/scripts/mevent_aurora_ticket.inc | 6 +- data/scripts/mevent_battle_card.inc | 4 +- data/scripts/mevent_mystic_ticket.inc | 6 +- data/scripts/mevent_old_sea_map.inc | 6 +- data/scripts/mevent_pichu.inc | 18 +- data/scripts/mevent_stamp_card.inc | 2 +- data/scripts/mevent_trainer.inc | 4 +- data/scripts/move_tutors.inc | 64 +- data/scripts/movement.inc | 44 +- data/scripts/mystery_event_club.inc | 50 +- data/scripts/new_game.inc | 4 +- data/scripts/obtain_item.inc | 56 +- data/scripts/pc.inc | 18 +- data/scripts/pc_transfer.inc | 16 +- data/scripts/pkmn_center_nurse.inc | 32 +- data/scripts/players_house.inc | 164 +- data/scripts/prof_birch.inc | 18 +- data/scripts/record_mix.inc | 6 +- data/scripts/repel.inc | 4 +- data/scripts/rival_graphics.inc | 18 +- data/scripts/roulette.inc | 32 +- data/scripts/safari_zone.inc | 108 +- data/scripts/secret_base.inc | 194 +- data/scripts/secret_power_tm.inc | 22 +- data/scripts/set_gym_trainers.inc | 18 +- data/scripts/shared_secret_base.inc | 68 +- data/scripts/std_msgbox.inc | 16 +- data/scripts/surf.inc | 6 +- data/scripts/test_signpost.inc | 4 +- data/scripts/trainer_battle.inc | 38 +- data/scripts/trainer_hill.inc | 22 +- data/scripts/trainer_script.inc | 6 +- data/scripts/tv.inc | 20 +- data/specials.inc | 2 +- data/text/abnormal_weather.inc | 4 +- data/text/apprentice.inc | 576 ++--- data/text/battle_tent.inc | 132 +- data/text/berries.inc | 82 +- data/text/birch_speech.inc | 18 +- data/text/blend_master.inc | 30 +- data/text/braille.inc | 44 +- data/text/cable_club.inc | 182 +- data/text/check_furniture.inc | 14 +- data/text/contest_link.inc | 22 +- data/text/contest_painting.inc | 4 +- data/text/contest_strings.inc | 400 +-- data/text/event_ticket_1.inc | 16 +- data/text/event_ticket_2.inc | 20 +- data/text/frontier_brain.inc | 56 +- data/text/lottery_corner.inc | 30 +- data/text/mart_clerk.inc | 6 +- data/text/match_call.inc | 632 ++--- data/text/mauville_man.inc | 36 +- data/text/mevent.inc | 16 +- data/text/move_tutors.inc | 82 +- data/text/obtain_item.inc | 18 +- data/text/pc.inc | 12 +- data/text/pc_transfer.inc | 12 +- data/text/pkmn_center_nurse.inc | 20 +- data/text/pokedex_rating.inc | 50 +- data/text/pokemon_news.inc | 24 +- data/text/record_mix.inc | 4 +- data/text/save.inc | 14 +- data/text/secret_base_trainers.inc | 120 +- data/text/shoal_cave.inc | 18 +- data/text/surf.inc | 4 +- data/text/trainers.inc | 2284 ++++++++--------- data/text/trick_house_mechadolls.inc | 90 +- data/text/tv.inc | 802 +++--- data/tilesets/graphics.inc | 296 +-- data/tilesets/headers.inc | 154 +- data/tilesets/metatiles.inc | 280 +- data/unknown_serial_data.s | 2 +- 576 files changed, 17798 insertions(+), 17798 deletions(-) diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s index 4867f4261459..0d4c85771d6b 100644 --- a/data/battle_ai_scripts.s +++ b/data/battle_ai_scripts.s @@ -12,7 +12,7 @@ .section script_data, "aw", %progbits .align 2 -gBattleAI_ScriptsTable:: @ 82DBEF8 +gBattleAI_ScriptsTable:: .4byte AI_CheckBadMove @ AI_SCRIPT_CHECK_BAD_MOVE .4byte AI_TryToFaint @ AI_SCRIPT_TRY_TO_FAINT .4byte AI_CheckViability @ AI_SCRIPT_CHECK_VIABILITY @@ -52,7 +52,7 @@ AI_CheckBadMove: if_move MOVE_HORN_DRILL, AI_CBM_CheckIfNegatesType get_how_powerful_move_is if_equal MOVE_POWER_OTHER, AI_CheckBadMove_CheckSoundproof -AI_CBM_CheckIfNegatesType: @ 82DBF92 +AI_CBM_CheckIfNegatesType: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_VOLT_ABSORB, CheckIfVoltAbsorbCancelsElectric @@ -62,32 +62,32 @@ AI_CBM_CheckIfNegatesType: @ 82DBF92 if_equal ABILITY_LEVITATE, CheckIfLevitateCancelsGroundMove goto AI_CheckBadMove_CheckSoundproof_ -CheckIfVoltAbsorbCancelsElectric: @ 82DBFBD +CheckIfVoltAbsorbCancelsElectric: get_curr_move_type if_equal_ TYPE_ELECTRIC, Score_Minus12 goto AI_CheckBadMove_CheckSoundproof_ -CheckIfWaterAbsorbCancelsWater: @ 82DBFCA +CheckIfWaterAbsorbCancelsWater: get_curr_move_type if_equal_ TYPE_WATER, Score_Minus12 goto AI_CheckBadMove_CheckSoundproof_ -CheckIfFlashFireCancelsFire: @ 82DBFD7 +CheckIfFlashFireCancelsFire: get_curr_move_type if_equal_ TYPE_FIRE, Score_Minus12 goto AI_CheckBadMove_CheckSoundproof_ -CheckIfWonderGuardCancelsMove: @ 82DBFE4 +CheckIfWonderGuardCancelsMove: if_type_effectiveness AI_EFFECTIVENESS_x2, AI_CheckBadMove_CheckSoundproof_ goto Score_Minus10 -CheckIfLevitateCancelsGroundMove: @ 82DBFEF +CheckIfLevitateCancelsGroundMove: get_curr_move_type if_equal_ TYPE_GROUND, Score_Minus10 -AI_CheckBadMove_CheckSoundproof_: @ 82DBFF7 +AI_CheckBadMove_CheckSoundproof_: get_how_powerful_move_is if_equal MOVE_POWER_OTHER, AI_CheckBadMove_CheckSoundproof @ Pointless check -AI_CheckBadMove_CheckSoundproof: @ 82DBFFE +AI_CheckBadMove_CheckSoundproof: get_ability AI_TARGET if_not_equal ABILITY_SOUNDPROOF, AI_CheckBadMove_CheckEffect if_move MOVE_GROWL, Score_Minus10 @@ -99,7 +99,7 @@ AI_CheckBadMove_CheckSoundproof: @ 82DBFFE if_move MOVE_UPROAR, Score_Minus10 if_move MOVE_METAL_SOUND, Score_Minus10 if_move MOVE_GRASS_WHISTLE, Score_Minus10 -AI_CheckBadMove_CheckEffect: @ 82DC045 +AI_CheckBadMove_CheckEffect: if_effect EFFECT_SLEEP, AI_CBM_Sleep if_effect EFFECT_EXPLOSION, AI_CBM_Explosion if_effect EFFECT_DREAM_EATER, AI_CBM_DreamEater @@ -211,7 +211,7 @@ AI_CheckBadMove_CheckEffect: @ 82DC045 if_effect EFFECT_DRAGON_DANCE, AI_CBM_DragonDance end -AI_CBM_Sleep: @ 82DC2D4 +AI_CBM_Sleep: get_ability AI_TARGET if_equal ABILITY_INSOMNIA, Score_Minus10 if_equal ABILITY_VITAL_SPIRIT, Score_Minus10 @@ -219,7 +219,7 @@ AI_CBM_Sleep: @ 82DC2D4 if_side_affecting AI_TARGET, SIDE_STATUS_SAFEGUARD, Score_Minus10 end -AI_CBM_Explosion: @ 82DC2F7 +AI_CBM_Explosion: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_DAMP, Score_Minus10 @@ -229,87 +229,87 @@ AI_CBM_Explosion: @ 82DC2F7 if_not_equal 0, Score_Minus10 goto Score_Minus1 -AI_CBM_Explosion_End: @ 82DC31A +AI_CBM_Explosion_End: end -AI_CBM_Nightmare: @ 82DC31B +AI_CBM_Nightmare: if_status2 AI_TARGET, STATUS2_NIGHTMARE, Score_Minus10 if_not_status AI_TARGET, STATUS1_SLEEP, Score_Minus8 end -AI_CBM_DreamEater: @ 82DC330 +AI_CBM_DreamEater: if_not_status AI_TARGET, STATUS1_SLEEP, Score_Minus8 if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 end -AI_CBM_BellyDrum: @ 82DC341 +AI_CBM_BellyDrum: if_hp_less_than AI_USER, 51, Score_Minus10 -AI_CBM_AttackUp: @ 82DC348 +AI_CBM_AttackUp: if_stat_level_equal AI_USER, STAT_ATK, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_DefenseUp: @ 82DC351 +AI_CBM_DefenseUp: if_stat_level_equal AI_USER, STAT_DEF, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_SpeedUp: @ 82DC35A +AI_CBM_SpeedUp: if_stat_level_equal AI_USER, STAT_SPEED, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_SpAtkUp: @ 82DC363 +AI_CBM_SpAtkUp: if_stat_level_equal AI_USER, STAT_SPATK, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_SpDefUp: @ 82DC36C +AI_CBM_SpDefUp: if_stat_level_equal AI_USER, STAT_SPDEF, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_AccUp: @ 82DC375 +AI_CBM_AccUp: if_stat_level_equal AI_USER, STAT_ACC, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_EvasionUp: @ 82DC37E +AI_CBM_EvasionUp: if_stat_level_equal AI_USER, STAT_EVASION, MAX_STAT_STAGE, Score_Minus10 end -AI_CBM_AttackDown: @ 82DC387 +AI_CBM_AttackDown: if_stat_level_equal AI_TARGET, STAT_ATK, MIN_STAT_STAGE, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_HYPER_CUTTER, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_DefenseDown: @ 82DC39C +AI_CBM_DefenseDown: if_stat_level_equal AI_TARGET, STAT_DEF, MIN_STAT_STAGE, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_SpeedDown: @ 82DC3A9 +AI_CBM_SpeedDown: if_stat_level_equal AI_TARGET, STAT_SPEED, MIN_STAT_STAGE, Score_Minus10 if_ability AI_TARGET, ABILITY_SPEED_BOOST, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_SpAtkDown: @ 82DC3BF +AI_CBM_SpAtkDown: if_stat_level_equal AI_TARGET, STAT_SPATK, MIN_STAT_STAGE, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_SpDefDown: @ 82DC3CC +AI_CBM_SpDefDown: if_stat_level_equal AI_TARGET, STAT_SPDEF, MIN_STAT_STAGE, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_AccDown: @ 82DC3D9 +AI_CBM_AccDown: if_stat_level_equal AI_TARGET, STAT_ACC, MIN_STAT_STAGE, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_KEEN_EYE, Score_Minus10 goto CheckIfAbilityBlocksStatChange -AI_CBM_EvasionDown: @ 82DC3EE +AI_CBM_EvasionDown: if_stat_level_equal AI_TARGET, STAT_EVASION, MIN_STAT_STAGE, Score_Minus10 -CheckIfAbilityBlocksStatChange: @ 82DC3F6 +CheckIfAbilityBlocksStatChange: get_ability AI_TARGET if_equal ABILITY_CLEAR_BODY, Score_Minus10 if_equal ABILITY_WHITE_SMOKE, Score_Minus10 end -AI_CBM_Haze: @ 82DC405 +AI_CBM_Haze: if_stat_level_less_than AI_USER, STAT_ATK, DEFAULT_STAT_STAGE, AI_CBM_Haze_End if_stat_level_less_than AI_USER, STAT_DEF, DEFAULT_STAT_STAGE, AI_CBM_Haze_End if_stat_level_less_than AI_USER, STAT_SPEED, DEFAULT_STAT_STAGE, AI_CBM_Haze_End @@ -326,17 +326,17 @@ AI_CBM_Haze: @ 82DC405 if_stat_level_more_than AI_TARGET, STAT_EVASION, DEFAULT_STAT_STAGE, AI_CBM_Haze_End goto Score_Minus10 -AI_CBM_Haze_End: @ 82DC47A +AI_CBM_Haze_End: end -AI_CBM_Roar: @ 82DC47B +AI_CBM_Roar: count_usable_party_mons AI_TARGET if_equal 0, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_SUCTION_CUPS, Score_Minus10 end -AI_CBM_Toxic: @ 82DC48C +AI_CBM_Toxic: get_target_type1 if_equal TYPE_STEEL, Score_Minus10 if_equal TYPE_POISON, Score_Minus10 @@ -349,50 +349,50 @@ AI_CBM_Toxic: @ 82DC48C if_side_affecting AI_TARGET, SIDE_STATUS_SAFEGUARD, Score_Minus10 end -AI_CBM_LightScreen: @ 82DC4C5 +AI_CBM_LightScreen: if_side_affecting AI_USER, SIDE_STATUS_LIGHTSCREEN, Score_Minus8 end -AI_CBM_OneHitKO: @ 82DC4D0 +AI_CBM_OneHitKO: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_STURDY, Score_Minus10 if_level_cond 1, Score_Minus10 end -AI_CBM_Magnitude: @ 82DC4E5 +AI_CBM_Magnitude: get_ability AI_TARGET if_equal ABILITY_LEVITATE, Score_Minus10 -AI_CBM_HighRiskForDamage: @ 82DC4ED +AI_CBM_HighRiskForDamage: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET if_not_equal ABILITY_WONDER_GUARD, AI_CBM_HighRiskForDamage_End if_type_effectiveness AI_EFFECTIVENESS_x2, AI_CBM_HighRiskForDamage_End goto Score_Minus10 -AI_CBM_HighRiskForDamage_End: @ 82DC506 +AI_CBM_HighRiskForDamage_End: end -AI_CBM_Mist: @ 82DC507 +AI_CBM_Mist: if_side_affecting AI_USER, SIDE_STATUS_MIST, Score_Minus8 end -AI_CBM_FocusEnergy: @ 82DC512 +AI_CBM_FocusEnergy: if_status2 AI_USER, STATUS2_FOCUS_ENERGY, Score_Minus10 end -AI_CBM_Confuse: @ 82DC51D +AI_CBM_Confuse: if_status2 AI_TARGET, STATUS2_CONFUSION, Score_Minus5 get_ability AI_TARGET if_equal ABILITY_OWN_TEMPO, Score_Minus10 if_side_affecting AI_TARGET, SIDE_STATUS_SAFEGUARD, Score_Minus10 end -AI_CBM_Reflect: @ 82DC53A +AI_CBM_Reflect: if_side_affecting AI_USER, SIDE_STATUS_REFLECT, Score_Minus8 end -AI_CBM_Paralyze: @ 82DC545 +AI_CBM_Paralyze: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_LIMBER, Score_Minus10 @@ -400,12 +400,12 @@ AI_CBM_Paralyze: @ 82DC545 if_side_affecting AI_TARGET, SIDE_STATUS_SAFEGUARD, Score_Minus10 end -AI_CBM_Substitute: @ 82DC568 +AI_CBM_Substitute: if_status2 AI_USER, STATUS2_SUBSTITUTE, Score_Minus8 if_hp_less_than AI_USER, 26, Score_Minus10 end -AI_CBM_LeechSeed: @ 82DC57A +AI_CBM_LeechSeed: if_status3 AI_TARGET, STATUS3_LEECHSEED, Score_Minus10 get_target_type1 if_equal TYPE_GRASS, Score_Minus10 @@ -413,45 +413,45 @@ AI_CBM_LeechSeed: @ 82DC57A if_equal TYPE_GRASS, Score_Minus10 end -AI_CBM_Disable: @ 82DC595 +AI_CBM_Disable: if_any_move_disabled AI_TARGET, Score_Minus8 end -AI_CBM_Encore: @ 82DC59D +AI_CBM_Encore: if_any_move_encored AI_TARGET, Score_Minus8 end -AI_CBM_DamageDuringSleep: @ 82DC5A5 +AI_CBM_DamageDuringSleep: if_not_status AI_USER, STATUS1_SLEEP, Score_Minus8 end -AI_CBM_CantEscape: @ 82DC5B0 +AI_CBM_CantEscape: if_status2 AI_TARGET, STATUS2_ESCAPE_PREVENTION, Score_Minus10 end -AI_CBM_Curse: @ 82DC5BB +AI_CBM_Curse: if_stat_level_equal AI_USER, STAT_ATK, MAX_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_USER, STAT_DEF, MAX_STAT_STAGE, Score_Minus8 end -AI_CBM_Spikes: @ 82DC5CC +AI_CBM_Spikes: if_side_affecting AI_TARGET, SIDE_STATUS_SPIKES, Score_Minus10 end -AI_CBM_Foresight: @ 82DC5D7 +AI_CBM_Foresight: if_status2 AI_TARGET, STATUS2_FORESIGHT, Score_Minus10 end -AI_CBM_PerishSong: @ 82DC5E2 +AI_CBM_PerishSong: if_status3 AI_TARGET, STATUS3_PERISH_SONG, Score_Minus10 end -AI_CBM_Sandstorm: @ 82DC5ED +AI_CBM_Sandstorm: get_weather if_equal AI_WEATHER_SANDSTORM, Score_Minus8 end -AI_CBM_Attract: @ 82DC5F5 +AI_CBM_Attract: if_status2 AI_TARGET, STATUS2_INFATUATION, Score_Minus10 get_ability AI_TARGET if_equal ABILITY_OBLIVIOUS, Score_Minus10 @@ -460,73 +460,73 @@ AI_CBM_Attract: @ 82DC5F5 if_equal MON_FEMALE, AI_CBM_Attract_CheckIfTargetIsMale goto Score_Minus10 -AI_CBM_Attract_CheckIfTargetIsFemale: @ 82DC61A +AI_CBM_Attract_CheckIfTargetIsFemale: get_gender AI_TARGET if_equal MON_FEMALE, AI_CBM_Attract_End goto Score_Minus10 -AI_CBM_Attract_CheckIfTargetIsMale: @ 82DC627 +AI_CBM_Attract_CheckIfTargetIsMale: get_gender AI_TARGET if_equal MON_MALE, AI_CBM_Attract_End goto Score_Minus10 -AI_CBM_Attract_End: @ 82DC634 +AI_CBM_Attract_End: end -AI_CBM_Safeguard: @ 82DC635 +AI_CBM_Safeguard: if_side_affecting AI_USER, SIDE_STATUS_SAFEGUARD, Score_Minus8 end -AI_CBM_Memento: @ 82DC640 +AI_CBM_Memento: if_stat_level_equal AI_TARGET, STAT_ATK, MIN_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_TARGET, STAT_SPATK, MIN_STAT_STAGE, Score_Minus8 -AI_CBM_BatonPass: @ 82DC650 +AI_CBM_BatonPass: count_usable_party_mons AI_USER if_equal 0, Score_Minus10 end -AI_CBM_RainDance: @ 82DC659 +AI_CBM_RainDance: get_weather if_equal AI_WEATHER_RAIN, Score_Minus8 end -AI_CBM_SunnyDay: @ 82DC661 +AI_CBM_SunnyDay: get_weather if_equal AI_WEATHER_SUN, Score_Minus8 end -AI_CBM_FutureSight: @ 82DC669 +AI_CBM_FutureSight: if_side_affecting AI_TARGET, SIDE_STATUS_FUTUREATTACK, Score_Minus12 if_side_affecting AI_USER, SIDE_STATUS_FUTUREATTACK, Score_Minus12 score +5 end -AI_CBM_FakeOut: @ 82DC680 +AI_CBM_FakeOut: is_first_turn_for AI_USER if_equal FALSE, Score_Minus10 end -AI_CBM_Stockpile: @ 82DC689 +AI_CBM_Stockpile: get_stockpile_count AI_USER if_equal 3, Score_Minus10 end -AI_CBM_SpitUpAndSwallow: @ 82DC692 +AI_CBM_SpitUpAndSwallow: if_type_effectiveness AI_EFFECTIVENESS_x0, Score_Minus10 get_stockpile_count AI_USER if_equal 0, Score_Minus10 end -AI_CBM_Hail: @ 82DC6A1 +AI_CBM_Hail: get_weather if_equal AI_WEATHER_HAIL, Score_Minus8 end -AI_CBM_Torment: @ 82DC6A9 +AI_CBM_Torment: if_status2 AI_TARGET, STATUS2_TORMENT, Score_Minus10 end -AI_CBM_WillOWisp: @ 82DC6B4 +AI_CBM_WillOWisp: get_ability AI_TARGET if_equal ABILITY_WATER_VEIL, Score_Minus10 if_status AI_TARGET, STATUS1_ANY, Score_Minus10 @@ -536,61 +536,61 @@ AI_CBM_WillOWisp: @ 82DC6B4 if_side_affecting AI_TARGET, SIDE_STATUS_SAFEGUARD, Score_Minus10 end -AI_CBM_HelpingHand: @ 82DC6E3 +AI_CBM_HelpingHand: if_not_double_battle Score_Minus10 end -AI_CBM_TrickAndKnockOff: @ 82DC6EB +AI_CBM_TrickAndKnockOff: get_ability AI_TARGET if_equal ABILITY_STICKY_HOLD, Score_Minus10 end -AI_CBM_Ingrain: @ 82DC6F4 +AI_CBM_Ingrain: if_status3 AI_USER, STATUS3_ROOTED, Score_Minus10 end -AI_CBM_Recycle: @ 82DC6FF +AI_CBM_Recycle: get_used_held_item AI_USER if_equal ITEM_NONE, Score_Minus10 end -AI_CBM_Imprison: @ 82DC708 +AI_CBM_Imprison: if_status3 AI_USER, STATUS3_IMPRISONED_OTHERS, Score_Minus10 end -AI_CBM_Refresh: @ 82DC713 +AI_CBM_Refresh: if_not_status AI_USER, STATUS1_POISON | STATUS1_BURN | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON, Score_Minus10 end -AI_CBM_MudSport: @ 82DC71E +AI_CBM_MudSport: if_status3 AI_USER, STATUS3_MUDSPORT, Score_Minus10 end -AI_CBM_Tickle: @ 82DC729 +AI_CBM_Tickle: if_stat_level_equal AI_TARGET, STAT_ATK, MIN_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_TARGET, STAT_DEF, MIN_STAT_STAGE, Score_Minus8 end -AI_CBM_CosmicPower: @ 82DC73A +AI_CBM_CosmicPower: if_stat_level_equal AI_USER, STAT_DEF, MAX_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_USER, STAT_SPDEF, MAX_STAT_STAGE, Score_Minus8 end -AI_CBM_BulkUp: @ 82DC74B +AI_CBM_BulkUp: if_stat_level_equal AI_USER, STAT_ATK, MAX_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_USER, STAT_DEF, MAX_STAT_STAGE, Score_Minus8 end -AI_CBM_WaterSport: @ 82DC75C +AI_CBM_WaterSport: if_status3 AI_USER, STATUS3_WATERSPORT, Score_Minus10 end -AI_CBM_CalmMind: @ 82DC767 +AI_CBM_CalmMind: if_stat_level_equal AI_USER, STAT_SPATK, MAX_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_USER, STAT_SPDEF, MAX_STAT_STAGE, Score_Minus8 end -AI_CBM_DragonDance: @ 82DC778 +AI_CBM_DragonDance: if_stat_level_equal AI_USER, STAT_ATK, MAX_STAT_STAGE, Score_Minus10 if_stat_level_equal AI_USER, STAT_SPEED, MAX_STAT_STAGE, Score_Minus8 end @@ -773,67 +773,67 @@ AI_CheckViability: if_effect EFFECT_DRAGON_DANCE, AI_CV_DragonDance end -AI_CV_Sleep: @ 82DCA92 +AI_CV_Sleep: if_has_move_with_effect AI_TARGET, EFFECT_DREAM_EATER, AI_CV_SleepEncourageSlpDamage if_has_move_with_effect AI_TARGET, EFFECT_NIGHTMARE, AI_CV_SleepEncourageSlpDamage goto AI_CV_Sleep_End -AI_CV_SleepEncourageSlpDamage: @ 82DCAA5 +AI_CV_SleepEncourageSlpDamage: if_random_less_than 128, AI_CV_Sleep_End score +1 -AI_CV_Sleep_End: @ 82DCAAD +AI_CV_Sleep_End: end -AI_CV_Absorb: @ 82DCAAE +AI_CV_Absorb: if_type_effectiveness AI_EFFECTIVENESS_x0_5, AI_CV_AbsorbEncourageMaybe if_type_effectiveness AI_EFFECTIVENESS_x0_25, AI_CV_AbsorbEncourageMaybe goto AI_CV_Absorb_End -AI_CV_AbsorbEncourageMaybe: @ 82DCABF +AI_CV_AbsorbEncourageMaybe: if_random_less_than 50, AI_CV_Absorb_End score -3 -AI_CV_Absorb_End: @ 82DCAC7 +AI_CV_Absorb_End: end -AI_CV_SelfKO: @ 82DCAC8 +AI_CV_SelfKO: if_stat_level_less_than AI_TARGET, STAT_EVASION, 7, AI_CV_SelfKO_Encourage1 score -1 if_stat_level_less_than AI_TARGET, STAT_EVASION, 10, AI_CV_SelfKO_Encourage1 if_random_less_than 128, AI_CV_SelfKO_Encourage1 score -1 -AI_CV_SelfKO_Encourage1: @ 82DCAE2 +AI_CV_SelfKO_Encourage1: if_hp_less_than AI_USER, 80, AI_CV_SelfKO_Encourage2 if_target_faster AI_CV_SelfKO_Encourage2 if_random_less_than 50, AI_CV_SelfKO_End goto Score_Minus3 -AI_CV_SelfKO_Encourage2: @ 82DCAFA +AI_CV_SelfKO_Encourage2: if_hp_more_than AI_USER, 50, AI_CV_SelfKO_Encourage4 if_random_less_than 128, AI_CV_SelfKO_Encourage3 score +1 -AI_CV_SelfKO_Encourage3: @ 82DCB09 +AI_CV_SelfKO_Encourage3: if_hp_more_than AI_USER, 30, AI_CV_SelfKO_End if_random_less_than 50, AI_CV_SelfKO_End score +1 goto AI_CV_SelfKO_End -AI_CV_SelfKO_Encourage4: @ 82DCB1D +AI_CV_SelfKO_Encourage4: if_random_less_than 50, AI_CV_SelfKO_End score -1 -AI_CV_SelfKO_End: @ 82DCB25 +AI_CV_SelfKO_End: end -AI_CV_DreamEater: @ 82DCB26 +AI_CV_DreamEater: if_type_effectiveness AI_EFFECTIVENESS_x0_25, AI_CV_DreamEater_ScoreDown1 if_type_effectiveness AI_EFFECTIVENESS_x0_5, AI_CV_DreamEater_ScoreDown1 goto AI_CV_DreamEater_End -AI_CV_DreamEater_ScoreDown1: @ 82DCB37 +AI_CV_DreamEater_ScoreDown1: score -1 -AI_CV_DreamEater_End: @ 82DCB39 +AI_CV_DreamEater_End: end -AI_CV_MirrorMove: @ 82DCB3A +AI_CV_MirrorMove: if_target_faster AI_CV_MirrorMove2 get_last_used_bank_move AI_TARGET if_not_in_hwords AI_CV_MirrorMove_EncouragedMovesToMirror, AI_CV_MirrorMove2 @@ -841,15 +841,15 @@ AI_CV_MirrorMove: @ 82DCB3A score +2 goto AI_CV_MirrorMove_End -AI_CV_MirrorMove2: @ 82DCB58 +AI_CV_MirrorMove2: get_last_used_bank_move AI_TARGET if_in_hwords AI_CV_MirrorMove_EncouragedMovesToMirror, AI_CV_MirrorMove_End if_random_less_than 80, AI_CV_MirrorMove_End score -1 -AI_CV_MirrorMove_End: @ 82DCB6B +AI_CV_MirrorMove_End: end -AI_CV_MirrorMove_EncouragedMovesToMirror: @ 82DCB6C +AI_CV_MirrorMove_EncouragedMovesToMirror: .2byte MOVE_SLEEP_POWDER .2byte MOVE_LOVELY_KISS .2byte MOVE_SPORE @@ -891,39 +891,39 @@ AI_CV_MirrorMove_EncouragedMovesToMirror: @ 82DCB6C .2byte MOVE_SKILL_SWAP .2byte -1 -AI_CV_AttackUp: @ 82DCBBC +AI_CV_AttackUp: if_stat_level_less_than AI_USER, STAT_ATK, 9, AI_CV_AttackUp2 if_random_less_than 100, AI_CV_AttackUp3 score -1 goto AI_CV_AttackUp3 -AI_CV_AttackUp2: @ 82DCBD1 +AI_CV_AttackUp2: if_hp_not_equal AI_USER, 100, AI_CV_AttackUp3 if_random_less_than 128, AI_CV_AttackUp3 score +2 -AI_CV_AttackUp3: @ 82DCBE0 +AI_CV_AttackUp3: if_hp_more_than AI_USER, 70, AI_CV_AttackUp_End if_hp_less_than AI_USER, 40, AI_CV_AttackUp_ScoreDown2 if_random_less_than 40, AI_CV_AttackUp_End -AI_CV_AttackUp_ScoreDown2: @ 82DCBF4 +AI_CV_AttackUp_ScoreDown2: score -2 -AI_CV_AttackUp_End: @ 82DCBF6 +AI_CV_AttackUp_End: end -AI_CV_DefenseUp: @ 82DCBF7 +AI_CV_DefenseUp: if_stat_level_less_than AI_USER, STAT_DEF, 9, AI_CV_DefenseUp2 if_random_less_than 100, AI_CV_DefenseUp3 score -1 goto AI_CV_DefenseUp3 -AI_CV_DefenseUp2: @ 82DCC0C +AI_CV_DefenseUp2: if_hp_not_equal AI_USER, 100, AI_CV_DefenseUp3 if_random_less_than 128, AI_CV_DefenseUp3 score +2 -AI_CV_DefenseUp3: @ 82DCC1B +AI_CV_DefenseUp3: if_hp_less_than AI_USER, 70, AI_CV_DefenseUp4 if_random_less_than 200, AI_CV_DefenseUp_End -AI_CV_DefenseUp4: @ 82DCC28 +AI_CV_DefenseUp4: if_hp_less_than AI_USER, 40, AI_CV_DefenseUp_ScoreDown2 get_last_used_bank_move AI_TARGET get_move_power_from_result @@ -932,14 +932,14 @@ AI_CV_DefenseUp4: @ 82DCC28 get_move_type_from_result if_not_in_bytes AI_CV_DefenseUp_PhysicalTypes, AI_CV_DefenseUp_ScoreDown2 if_random_less_than 60, AI_CV_DefenseUp_End -AI_CV_DefenseUp5: @ 82DCC4A +AI_CV_DefenseUp5: if_random_less_than 60, AI_CV_DefenseUp_End -AI_CV_DefenseUp_ScoreDown2: @ 82DCC50 +AI_CV_DefenseUp_ScoreDown2: score -2 -AI_CV_DefenseUp_End: @ 82DCC52 +AI_CV_DefenseUp_End: end -AI_CV_DefenseUp_PhysicalTypes: @ 82DCC53 +AI_CV_DefenseUp_PhysicalTypes: .byte TYPE_NORMAL .byte TYPE_FIGHTING .byte TYPE_POISON @@ -951,50 +951,50 @@ AI_CV_DefenseUp_PhysicalTypes: @ 82DCC53 .byte TYPE_STEEL .byte -1 -AI_CV_SpeedUp: @ 82DCC5D +AI_CV_SpeedUp: if_target_faster AI_CV_SpeedUp2 score -3 goto AI_CV_SpeedUp_End -AI_CV_SpeedUp2: @ 82DCC6A +AI_CV_SpeedUp2: if_random_less_than 70, AI_CV_SpeedUp_End score +3 -AI_CV_SpeedUp_End: @ 82DCC72 +AI_CV_SpeedUp_End: end -AI_CV_SpAtkUp: @ 82DCC73 +AI_CV_SpAtkUp: if_stat_level_less_than AI_USER, STAT_SPATK, 9, AI_CV_SpAtkUp2 if_random_less_than 100, AI_CV_SpAtkUp3 score -1 goto AI_CV_SpAtkUp3 -AI_CV_SpAtkUp2: @ 82DCC88 +AI_CV_SpAtkUp2: if_hp_not_equal AI_USER, 100, AI_CV_SpAtkUp3 if_random_less_than 128, AI_CV_SpAtkUp3 score +2 -AI_CV_SpAtkUp3: @ 82DCC97 +AI_CV_SpAtkUp3: if_hp_more_than AI_USER, 70, AI_CV_SpAtkUp_End if_hp_less_than AI_USER, 40, AI_CV_SpAtkUp_ScoreDown2 if_random_less_than 70, AI_CV_SpAtkUp_End -AI_CV_SpAtkUp_ScoreDown2: @ 82DCCAB +AI_CV_SpAtkUp_ScoreDown2: score -2 -AI_CV_SpAtkUp_End: @ 82DCCAD +AI_CV_SpAtkUp_End: end -AI_CV_SpDefUp: @ 82DCCAE +AI_CV_SpDefUp: if_stat_level_less_than AI_USER, STAT_SPDEF, 9, AI_CV_SpDefUp2 if_random_less_than 100, AI_CV_SpDefUp3 score -1 goto AI_CV_SpDefUp3 -AI_CV_SpDefUp2: @ 82DCCC3 +AI_CV_SpDefUp2: if_hp_not_equal AI_USER, 100, AI_CV_SpDefUp3 if_random_less_than 128, AI_CV_SpDefUp3 score +2 -AI_CV_SpDefUp3: @ 82DCCD2 +AI_CV_SpDefUp3: if_hp_less_than AI_USER, 70, AI_CV_SpDefUp4 if_random_less_than 200, AI_CV_SpDefUp_End -AI_CV_SpDefUp4: @ 82DCCDF +AI_CV_SpDefUp4: if_hp_less_than AI_USER, 40, AI_CV_SpDefUp_ScoreDown2 get_last_used_bank_move AI_TARGET get_move_power_from_result @@ -1003,14 +1003,14 @@ AI_CV_SpDefUp4: @ 82DCCDF get_move_type_from_result if_in_bytes AI_CV_SpDefUp_PhysicalTypes, AI_CV_SpDefUp_ScoreDown2 if_random_less_than 60, AI_CV_SpDefUp_End -AI_CV_SpDefUp5: @ 82DCD01 +AI_CV_SpDefUp5: if_random_less_than 60, AI_CV_SpDefUp_End -AI_CV_SpDefUp_ScoreDown2: @ 82DCD07 +AI_CV_SpDefUp_ScoreDown2: score -2 -AI_CV_SpDefUp_End: @ 82DCD09 +AI_CV_SpDefUp_End: end -AI_CV_SpDefUp_PhysicalTypes: @ 82DCD0A +AI_CV_SpDefUp_PhysicalTypes: .byte TYPE_NORMAL .byte TYPE_FIGHTING .byte TYPE_POISON @@ -1085,26 +1085,26 @@ AI_CV_AlwaysHit2: AI_CV_AlwaysHit_End: end -AI_CV_AttackDown: @ 82DCDF8 +AI_CV_AttackDown: if_stat_level_equal AI_TARGET, STAT_ATK, DEFAULT_STAT_STAGE, AI_CV_AttackDown3 score -1 if_hp_more_than AI_USER, 90, AI_CV_AttackDown2 score -1 -AI_CV_AttackDown2: @ 82DCE0B +AI_CV_AttackDown2: if_stat_level_more_than AI_TARGET, STAT_ATK, 3, AI_CV_AttackDown3 if_random_less_than 50, AI_CV_AttackDown3 score -2 -AI_CV_AttackDown3: @ 82DCE1B +AI_CV_AttackDown3: if_hp_more_than AI_TARGET, 70, AI_CV_AttackDown4 score -2 -AI_CV_AttackDown4: @ 82DCE24 +AI_CV_AttackDown4: get_target_type1 if_in_bytes AI_CV_AttackDown_UnknownTypeList, AI_CV_AttackDown_End get_target_type2 if_in_bytes AI_CV_AttackDown_UnknownTypeList, AI_CV_AttackDown_End if_random_less_than 50, AI_CV_AttackDown_End score -2 -AI_CV_AttackDown_End: @ 82DCE42 +AI_CV_AttackDown_End: end AI_CV_AttackDown_UnknownTypeList: @@ -1128,21 +1128,21 @@ AI_CV_DefenseDown3: AI_CV_DefenseDown_End: end -AI_CV_SpeedDownFromChance: @ 82DCE6B +AI_CV_SpeedDownFromChance: if_move MOVE_ICY_WIND, AI_CV_SpeedDown if_move MOVE_ROCK_TOMB, AI_CV_SpeedDown if_move MOVE_MUD_SHOT, AI_CV_SpeedDown end -AI_CV_SpeedDown: @ 82DCE81 +AI_CV_SpeedDown: if_target_faster AI_CV_SpeedDown2 score -3 goto AI_CV_SpeedDown_End -AI_CV_SpeedDown2: @ 82DCE8E +AI_CV_SpeedDown2: if_random_less_than 70, AI_CV_SpeedDown_End score +2 -AI_CV_SpeedDown_End: @ 82DCE96 +AI_CV_SpeedDown_End: end AI_CV_SpAtkDown: @@ -1164,10 +1164,10 @@ AI_CV_SpAtkDown4: if_in_bytes AI_CV_SpAtkDown_SpecialTypeList, AI_CV_SpAtkDown_End if_random_less_than 50, AI_CV_SpAtkDown_End score -2 -AI_CV_SpAtkDown_End: @ 82DCEE1 +AI_CV_SpAtkDown_End: end -AI_CV_SpAtkDown_SpecialTypeList: @ 82DCEE2 +AI_CV_SpAtkDown_SpecialTypeList: .byte TYPE_FIRE .byte TYPE_WATER .byte TYPE_GRASS @@ -1178,19 +1178,19 @@ AI_CV_SpAtkDown_SpecialTypeList: @ 82DCEE2 .byte TYPE_DARK .byte -1 -AI_CV_SpDefDown: @ 82DCEEB +AI_CV_SpDefDown: if_hp_less_than AI_USER, 70, AI_CV_SpDefDown2 if_stat_level_more_than AI_TARGET, STAT_SPDEF, 3, AI_CV_SpDefDown3 -AI_CV_SpDefDown2: @ 82DCEFA +AI_CV_SpDefDown2: if_random_less_than 50, AI_CV_SpDefDown3 score -2 -AI_CV_SpDefDown3: @ 82DCF02 +AI_CV_SpDefDown3: if_hp_more_than AI_TARGET, 70, AI_CV_SpDefDown_End score -2 -AI_CV_SpDefDown_End: @ 82DCF0B +AI_CV_SpDefDown_End: end -AI_CV_AccuracyDown: @ 82DCF0C +AI_CV_AccuracyDown: if_hp_less_than AI_USER, 70, AI_CV_AccuracyDown2 if_hp_more_than AI_TARGET, 70, AI_CV_AccuracyDown3 AI_CV_AccuracyDown2: @@ -2949,7 +2949,7 @@ AI_HPAware_TargetTryToDiscourage: AI_HPAware_End: end -AI_HPAware_DiscouragedEffectsWhenHighHP: @ 82DE21F +AI_HPAware_DiscouragedEffectsWhenHighHP: .byte EFFECT_EXPLOSION .byte EFFECT_RESTORE_HP .byte EFFECT_REST @@ -2965,7 +2965,7 @@ AI_HPAware_DiscouragedEffectsWhenHighHP: @ 82DE21F .byte EFFECT_OVERHEAT .byte -1 -AI_HPAware_DiscouragedEffectsWhenMediumHP: @ 82DE22D +AI_HPAware_DiscouragedEffectsWhenMediumHP: .byte EFFECT_EXPLOSION .byte EFFECT_ATTACK_UP .byte EFFECT_DEFENSE_UP @@ -3010,7 +3010,7 @@ AI_HPAware_DiscouragedEffectsWhenMediumHP: @ 82DE22D .byte EFFECT_DRAGON_DANCE .byte -1 -AI_HPAware_DiscouragedEffectsWhenLowHP: @ 82DE258 +AI_HPAware_DiscouragedEffectsWhenLowHP: .byte EFFECT_ATTACK_UP .byte EFFECT_DEFENSE_UP .byte EFFECT_SPEED_UP @@ -3060,10 +3060,10 @@ AI_HPAware_DiscouragedEffectsWhenLowHP: @ 82DE258 .byte EFFECT_DRAGON_DANCE .byte -1 -AI_HPAware_DiscouragedEffectsWhenTargetHighHP: @ 82DE288 +AI_HPAware_DiscouragedEffectsWhenTargetHighHP: .byte -1 -AI_HPAware_DiscouragedEffectsWhenTargetMediumHP: @ 82DE289 +AI_HPAware_DiscouragedEffectsWhenTargetMediumHP: .byte EFFECT_ATTACK_UP .byte EFFECT_DEFENSE_UP .byte EFFECT_SPEED_UP @@ -3105,7 +3105,7 @@ AI_HPAware_DiscouragedEffectsWhenTargetMediumHP: @ 82DE289 .byte EFFECT_DRAGON_DANCE .byte -1 -AI_HPAware_DiscouragedEffectsWhenTargetLowHP: @ 82DE2B1 +AI_HPAware_DiscouragedEffectsWhenTargetLowHP: .byte EFFECT_SLEEP .byte EFFECT_EXPLOSION .byte EFFECT_ATTACK_UP @@ -3178,7 +3178,7 @@ AI_TrySunnyDayStart: is_first_turn_for AI_USER if_equal FALSE, AI_TrySunnyDayStart_End score +5 -AI_TrySunnyDayStart_End: @ 82DE308 +AI_TrySunnyDayStart_End: end AI_Roaming: @@ -3190,10 +3190,10 @@ AI_Roaming: if_equal ABILITY_LEVITATE, AI_Roaming_Flee get_ability AI_TARGET if_equal ABILITY_ARENA_TRAP, AI_Roaming_End -AI_Roaming_Flee: @ 82DE335 +AI_Roaming_Flee: flee -AI_Roaming_End: @ 82DE336 +AI_Roaming_End: end AI_Safari: diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 1577765cd097..74efef7acb5b 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -16,7 +16,7 @@ .section script_data, "aw", %progbits .align 2 -gBattleScriptsForMoveEffects:: @ 82D86A8 +gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectHit @ EFFECT_HIT .4byte BattleScript_EffectSleep @ EFFECT_SLEEP .4byte BattleScript_EffectPoisonHit @ EFFECT_POISON_HIT diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 996048dd3dc2..b7f0f693fb7a 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -12,7 +12,7 @@ .section script_data, "aw", %progbits .align 2 -gBattlescriptsForBallThrow:: @ 82DBD08 +gBattlescriptsForBallThrow:: .4byte BattleScript_BallThrow @ ITEM_NONE .4byte BattleScript_BallThrow @ ITEM_MASTER_BALL .4byte BattleScript_BallThrow @ ITEM_ULTRA_BALL @@ -28,7 +28,7 @@ gBattlescriptsForBallThrow:: @ 82DBD08 .4byte BattleScript_BallThrow @ ITEM_PREMIER_BALL .align 2 -gBattlescriptsForUsingItem:: @ 82DBD3C +gBattlescriptsForUsingItem:: .4byte BattleScript_PlayerUsesItem .4byte BattleScript_OpponentUsesHealItem @ AI_ITEM_FULL_RESTORE .4byte BattleScript_OpponentUsesHealItem @ AI_ITEM_HEAL_HP @@ -37,11 +37,11 @@ gBattlescriptsForUsingItem:: @ 82DBD3C .4byte BattleScript_OpponentUsesGuardSpec @ AI_ITEM_GUARD_SPEC .align 2 -gBattlescriptsForRunningByItem:: @ 82DBD54 +gBattlescriptsForRunningByItem:: .4byte BattleScript_RunByUsingItem .align 2 -gBattlescriptsForSafariActions:: @ 82DBD58 +gBattlescriptsForSafariActions:: .4byte BattleScript_ActionWatchesCarefully .4byte BattleScript_ActionGetNear .4byte BattleScript_ActionThrowPokeblock diff --git a/data/contest_ai_scripts.s b/data/contest_ai_scripts.s index e47ccb4c8b49..f0972264f021 100644 --- a/data/contest_ai_scripts.s +++ b/data/contest_ai_scripts.s @@ -13,7 +13,7 @@ enum MON_4 .align 2 -gContestAI_ScriptsTable:: @ 82DE350 +gContestAI_ScriptsTable:: .4byte AI_CheckBadMove @ CONTEST_AI_CHECK_BAD_MOVE .4byte AI_CheckCombo @ CONTEST_AI_CHECK_COMBO .4byte AI_CheckBoring @ CONTEST_AI_CHECK_BORING diff --git a/data/event_scripts.s b/data/event_scripts.s index 432f1294d90f..852fa36d8ce1 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -61,7 +61,7 @@ @ 81DB67C .include "data/script_cmd_table.inc" -gSpecialVars:: @ 81DBA0C +gSpecialVars:: .4byte gSpecialVar_0x8000 .4byte gSpecialVar_0x8001 .4byte gSpecialVar_0x8002 @@ -87,7 +87,7 @@ gSpecialVars:: @ 81DBA0C .include "data/specials.inc" -gStdScripts:: @ 81DC2A0 +gStdScripts:: .4byte Std_ObtainItem @ STD_OBTAIN_ITEM .4byte Std_FindItem @ STD_FIND_ITEM .4byte Std_MsgboxNPC @ MSGBOX_NPC @@ -99,7 +99,7 @@ gStdScripts:: @ 81DC2A0 .4byte Std_RegisteredInMatchCall @ STD_REGISTER_MATCH_CALL .4byte Std_MsgboxGetPoints @ MSGBOX_GETPOINTS .4byte Std_10 -gStdScripts_End:: @ 81DC2CC +gStdScripts_End:: .include "data/maps/PetalburgCity/scripts.inc" .include "data/maps/SlateportCity/scripts.inc" @@ -576,12 +576,12 @@ gStdScripts_End:: @ 81DC2CC .include "data/scripts/new_game.inc" .include "data/scripts/hall_of_fame.inc" -EventScript_WhiteOut:: @ 8271857 +EventScript_WhiteOut:: call EverGrandeCity_HallOfFame_EventScript_ResetEliteFour goto EventScript_ResetMrBriney end -EventScript_ResetMrBriney:: @ 8271862 +EventScript_ResetMrBriney:: compare VAR_BRINEY_LOCATION, 1 goto_if_eq EventScript_MoveMrBrineyToHouse compare VAR_BRINEY_LOCATION, 2 @@ -590,7 +590,7 @@ EventScript_ResetMrBriney:: @ 8271862 goto_if_eq EventScript_MoveMrBrineyToRoute109 end -EventScript_MoveMrBrineyToHouse:: @ 8271884 +EventScript_MoveMrBrineyToHouse:: setflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN setflag FLAG_HIDE_ROUTE_109_MR_BRINEY @@ -600,7 +600,7 @@ EventScript_MoveMrBrineyToHouse:: @ 8271884 clearflag FLAG_HIDE_BRINEYS_HOUSE_PEEKO end -EventScript_MoveMrBrineyToDewford:: @ 827189A +EventScript_MoveMrBrineyToDewford:: setflag FLAG_HIDE_ROUTE_109_MR_BRINEY setflag FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT setflag FLAG_HIDE_ROUTE_104_MR_BRINEY @@ -611,7 +611,7 @@ EventScript_MoveMrBrineyToDewford:: @ 827189A clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN end -EventScript_MoveMrBrineyToRoute109:: @ 82718B3 +EventScript_MoveMrBrineyToRoute109:: setflag FLAG_HIDE_ROUTE_104_MR_BRINEY setflag FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT setflag FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY @@ -622,7 +622,7 @@ EventScript_MoveMrBrineyToRoute109:: @ 82718B3 clearflag FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT end -EverGrandeCity_HallOfFame_EventScript_ResetEliteFour:: @ 82718CC +EverGrandeCity_HallOfFame_EventScript_ResetEliteFour:: clearflag FLAG_DEFEATED_ELITE_4_SIDNEY clearflag FLAG_DEFEATED_ELITE_4_PHOEBE clearflag FLAG_DEFEATED_ELITE_4_GLACIA @@ -630,7 +630,7 @@ EverGrandeCity_HallOfFame_EventScript_ResetEliteFour:: @ 82718CC setvar VAR_ELITE_4_STATE, 0 return -Common_EventScript_UpdateBrineyLocation:: @ 82718DE +Common_EventScript_UpdateBrineyLocation:: goto_if_unset FLAG_RECEIVED_POKENAV, Common_EventScript_NopReturn goto_if_set FLAG_DEFEATED_PETALBURG_GYM, Common_EventScript_NopReturn goto_if_unset FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT, EventScript_SetBrineyLocation_House @@ -638,15 +638,15 @@ Common_EventScript_UpdateBrineyLocation:: @ 82718DE goto_if_unset FLAG_HIDE_ROUTE_109_MR_BRINEY, EventScript_SetBrineyLocation_Route109 return -EventScript_SetBrineyLocation_House:: @ 827190C +EventScript_SetBrineyLocation_House:: setvar VAR_BRINEY_LOCATION, 1 return -EventScript_SetBrineyLocation_Dewford:: @ 8271912 +EventScript_SetBrineyLocation_Dewford:: setvar VAR_BRINEY_LOCATION, 2 return -EventScript_SetBrineyLocation_Route109:: @ 8271918 +EventScript_SetBrineyLocation_Route109:: setvar VAR_BRINEY_LOCATION, 3 return @@ -656,32 +656,32 @@ EventScript_SetBrineyLocation_Route109:: @ 8271918 .include "data/scripts/pc.inc" @ scripts/notices.inc? signs.inc? See comment about text/notices.inc -Common_EventScript_ShowPokemartSign:: @ 8271E6A +Common_EventScript_ShowPokemartSign:: msgbox gText_PokemartSign, MSGBOX_SIGN end -Common_EventScript_ShowPokemonCenterSign:: @ 8271E73 +Common_EventScript_ShowPokemonCenterSign:: msgbox gText_PokemonCenterSign, MSGBOX_SIGN end -Common_ShowEasyChatScreen:: @ 8271E7C +Common_ShowEasyChatScreen:: fadescreen FADE_TO_BLACK special ShowEasyChatScreen fadescreen FADE_FROM_BLACK return -Common_EventScript_ReadyPetalburgGymForBattle:: @ 8271E84 +Common_EventScript_ReadyPetalburgGymForBattle:: clearflag FLAG_HIDE_PETALBURG_GYM_GREETER setflag FLAG_PETALBURG_MART_EXPANDED_ITEMS return -Common_EventScript_BufferTrendyPhrase:: @ 8271E8B +Common_EventScript_BufferTrendyPhrase:: dotimebasedevents setvar VAR_0x8004, 0 special BufferTrendyPhraseString return -EventScript_BackupMrBrineyLocation:: @ 8271E95 +EventScript_BackupMrBrineyLocation:: copyvar VAR_0x8008, VAR_BRINEY_LOCATION setvar VAR_BRINEY_LOCATION, 0 return @@ -690,34 +690,34 @@ EventScript_BackupMrBrineyLocation:: @ 8271E95 .include "data/scripts/rival_graphics.inc" .include "data/scripts/set_gym_trainers.inc" -Common_EventScript_ShowBagIsFull:: @ 8272054 +Common_EventScript_ShowBagIsFull:: msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT release end -Common_EventScript_BagIsFull:: @ 827205E +Common_EventScript_BagIsFull:: msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT return -Common_EventScript_ShowNoRoomForDecor:: @ 8272067 +Common_EventScript_ShowNoRoomForDecor:: msgbox gText_NoRoomLeftForAnother, MSGBOX_DEFAULT release end -Common_EventScript_NoRoomForDecor:: @ 8272071 +Common_EventScript_NoRoomForDecor:: msgbox gText_NoRoomLeftForAnother, MSGBOX_DEFAULT return -Common_EventScript_SetAbnormalWeather:: @ 827207A +Common_EventScript_SetAbnormalWeather:: setweather WEATHER_ABNORMAL return -Common_EventScript_PlayGymBadgeFanfare:: @ 827207E +Common_EventScript_PlayGymBadgeFanfare:: playfanfare MUS_OBTAIN_BADGE waitfanfare return -Common_EventScript_OutOfCenterPartyHeal:: @ 8272083 +Common_EventScript_OutOfCenterPartyHeal:: fadescreen FADE_TO_BLACK playfanfare MUS_HEAL waitfanfare @@ -725,7 +725,7 @@ Common_EventScript_OutOfCenterPartyHeal:: @ 8272083 fadescreen FADE_FROM_BLACK return -EventScript_RegionMap:: @ 827208F +EventScript_RegionMap:: lockall msgbox Common_Text_LookCloserAtMap, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -734,12 +734,12 @@ EventScript_RegionMap:: @ 827208F releaseall end -Common_EventScript_PlayBrineysBoatMusic:: @ 82720A0 +Common_EventScript_PlayBrineysBoatMusic:: setflag FLAG_DONT_TRANSITION_MUSIC playbgm MUS_SAILING, FALSE return -Common_EventScript_StopBrineysBoatMusic:: @ 82720A8 +Common_EventScript_StopBrineysBoatMusic:: clearflag FLAG_DONT_TRANSITION_MUSIC fadedefaultbgm return @@ -747,13 +747,13 @@ Common_EventScript_StopBrineysBoatMusic:: @ 82720A8 .include "data/scripts/prof_birch.inc" @ Below could be split as ferry.inc aside from the Rusturf tunnel script -Common_EventScript_FerryDepart:: @ 82721E2 +Common_EventScript_FerryDepart:: delay 60 applymovement VAR_0x8004, Movement_FerryDepart waitmovement 0 return -Movement_FerryDepart: @ 82721F0 +Movement_FerryDepart: walk_slow_right walk_slow_right walk_slow_right @@ -763,7 +763,7 @@ Movement_FerryDepart: @ 82721F0 walk_right step_end -EventScript_HideMrBriney:: @ 82721F8 +EventScript_HideMrBriney:: setflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN setflag FLAG_HIDE_ROUTE_109_MR_BRINEY @@ -775,7 +775,7 @@ EventScript_HideMrBriney:: @ 82721F8 setvar VAR_BRINEY_LOCATION, 0 return -RusturfTunnel_EventScript_SetRusturfTunnelOpen:: @ 8272216 +RusturfTunnel_EventScript_SetRusturfTunnelOpen:: removeobject LOCALID_WANDAS_BF removeobject LOCALID_WANDA clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WANDAS_BOYFRIEND @@ -784,7 +784,7 @@ RusturfTunnel_EventScript_SetRusturfTunnelOpen:: @ 8272216 setflag FLAG_RUSTURF_TUNNEL_OPENED return -EventScript_UnusedBoardFerry:: @ 827222B +EventScript_UnusedBoardFerry:: delay 30 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 @@ -795,11 +795,11 @@ EventScript_UnusedBoardFerry:: @ 827222B delay 30 return -Movement_UnusedBoardFerry: @ 827224E +Movement_UnusedBoardFerry: walk_up step_end -Common_EventScript_FerryDepartIsland:: @ 8272250 +Common_EventScript_FerryDepartIsland:: compare VAR_FACING, DIR_SOUTH call_if_eq Ferry_EventScript_DepartIslandSouth compare VAR_FACING, DIR_WEST @@ -812,13 +812,13 @@ Common_EventScript_FerryDepartIsland:: @ 8272250 .include "data/scripts/cave_of_origin.inc" .include "data/scripts/kecleon.inc" -Common_EventScript_NameReceivedPartyMon:: @ 82723DD +Common_EventScript_NameReceivedPartyMon:: fadescreen FADE_TO_BLACK special ChangePokemonNickname waitstate return -Common_EventScript_PlayerHandedOverTheItem:: @ 82723E4 +Common_EventScript_PlayerHandedOverTheItem:: bufferitemname 0, VAR_0x8004 playfanfare MUS_OBTAIN_TMHM message gText_PlayerHandedOverTheItem @@ -837,32 +837,32 @@ Common_EventScript_PlayerHandedOverTheItem:: @ 82723E4 .include "data/text/obtain_item.inc" @ The below and surf.inc could be split into some text/notices.inc -gText_PokemartSign:: @ 8272B6A +gText_PokemartSign:: .string "“Selected items for your convenience!”\n" .string "POKéMON MART$" -gText_PokemonCenterSign:: @ 8272B9E +gText_PokemonCenterSign:: .string "“Rejuvenate your tired partners!”\n" .string "POKéMON CENTER$" -gText_MomOrDadMightLikeThisProgram:: @ 8272BCF +gText_MomOrDadMightLikeThisProgram:: .string "{STR_VAR_1} might like this program.\n" .string "… … … … … … … … … … … … … … … …\p" .string "Better get going!$" -gText_WhichFloorWouldYouLike:: @ 8272C1D +gText_WhichFloorWouldYouLike:: .string "Welcome to LILYCOVE DEPARTMENT STORE.\p" .string "Which floor would you like?$" -gText_SandstormIsVicious:: @ 8272C5F +gText_SandstormIsVicious:: .string "The sandstorm is vicious.\n" .string "It's impossible to keep going.$" -gText_SelectWithoutRegisteredItem:: @ 8272C98 +gText_SelectWithoutRegisteredItem:: .string "An item in the BAG can be\n" .string "registered to SELECT for easy use.$" -gText_PokemonTrainerSchoolEmail:: @ 8272CD5 +gText_PokemonTrainerSchoolEmail:: .string "There's an e-mail from POKéMON TRAINER\n" .string "SCHOOL.\p" .string "… … … … … …\p" @@ -871,25 +871,25 @@ gText_PokemonTrainerSchoolEmail:: @ 8272CD5 .string "move sets chosen for POKéMON.\p" .string "… … … … … …$" -gText_PlayerHouseBootPC:: @ 8272D87 +gText_PlayerHouseBootPC:: .string "{PLAYER} booted up the PC.$" -gText_PokeblockLinkCanceled:: @ 8272D9C +gText_PokeblockLinkCanceled:: .string "The link was canceled.$" -gText_UnusedNicknameReceivedPokemon:: @ 8272DB3 +gText_UnusedNicknameReceivedPokemon:: .string "Want to give a nickname to\n" .string "the {STR_VAR_2} you received?$" -gText_PlayerWhitedOut:: @ 8272DE3 +gText_PlayerWhitedOut:: .string "{PLAYER} is out of usable\n" .string "POKéMON!\p{PLAYER} whited out!$" -gText_RegisteredTrainerinPokeNav:: @ 8272E0F +gText_RegisteredTrainerinPokeNav:: .string "Registered {STR_VAR_1} {STR_VAR_2}\n" .string "in the POKéNAV.$" -gText_ComeBackWithSecretPower:: @ 8272E30 +gText_ComeBackWithSecretPower:: .string "Do you know the TM SECRET POWER?\p" .string "Our group, we love the TM SECRET\n" .string "POWER.\p" @@ -898,7 +898,7 @@ gText_ComeBackWithSecretPower:: @ 8272E30 .string "We'll accept you as a member and sell\n" .string "you good stuff in secrecy.$" -gText_PokerusExplanation:: @ 8272F07 +gText_PokerusExplanation:: .string "Your POKéMON may be infected with\n" .string "POKéRUS.\p" .string "Little is known about the POKéRUS\n" @@ -909,94 +909,94 @@ gText_PokerusExplanation:: @ 8272F07 .include "data/text/surf.inc" -gText_DoorOpenedFarAway:: @ 827301B +gText_DoorOpenedFarAway:: .string "It sounded as if a door opened\n" .string "somewhere far away.$" -gText_BigHoleInTheWall:: @ 827304E +gText_BigHoleInTheWall:: .string "There is a big hole in the wall.$" -gText_SorryWirelessClubAdjustments:: @ 827306F +gText_SorryWirelessClubAdjustments:: .string "I'm terribly sorry.\n" .string "The POKéMON WIRELESS CLUB is\l" .string "undergoing adjustments now.$" -gText_UndergoingAdjustments:: @ 82730BC +gText_UndergoingAdjustments:: .string "It appears to be undergoing\n" .string "adjustments…$" @ Unused -gText_SorryTradeCenterInspections:: @ 82730E5 +gText_SorryTradeCenterInspections:: .string "I'm terribly sorry. The TRADE CENTER\n" .string "is undergoing inspections.$" @ Unused -gText_SorryRecordCornerPreparation:: @ 8273125 +gText_SorryRecordCornerPreparation:: .string "I'm terribly sorry. The RECORD CORNER\n" .string "is under preparation.$" -gText_PlayerHandedOverTheItem:: @ 8273161 +gText_PlayerHandedOverTheItem:: .string "{PLAYER} handed over the\n" .string "{STR_VAR_1}.$" -gText_ThankYouForAccessingMysteryGift:: @ 8273178 +gText_ThankYouForAccessingMysteryGift:: .string "Thank you for accessing the\n" .string "MYSTERY GIFT System.$" -gText_PlayerFoundOneTMHM:: @ 82731A9 +gText_PlayerFoundOneTMHM:: .string "{PLAYER} found one {STR_VAR_1}\n" .string "{STR_VAR_2}!$" -gText_Sudowoodo_Attacked:: @ 82731BD +gText_Sudowoodo_Attacked:: .string "The weird tree doesn't like the\n" .string "WAILMER PAIL!\p" .string "The weird tree attacked!$" -gText_LegendaryFlewAway:: @ 8273204 +gText_LegendaryFlewAway:: .string "The {STR_VAR_1} flew away!$" .include "data/text/pc_transfer.inc" .include "data/text/mevent.inc" .include "data/text/abnormal_weather.inc" -EventScript_SelectWithoutRegisteredItem:: @ 82736B3 +EventScript_SelectWithoutRegisteredItem:: msgbox gText_SelectWithoutRegisteredItem, MSGBOX_SIGN end .include "data/scripts/field_poison.inc" -Common_EventScript_NopReturn:: @ 827374E +Common_EventScript_NopReturn:: return @ Unused -EventScript_CableClub_SetVarResult1:: @ 827374F +EventScript_CableClub_SetVarResult1:: setvar VAR_RESULT, 1 return -EventScript_CableClub_SetVarResult0:: @ 8273755 +EventScript_CableClub_SetVarResult0:: setvar VAR_RESULT, 0 return -Common_EventScript_UnionRoomAttendant:: @ 827375B +Common_EventScript_UnionRoomAttendant:: call CableClub_EventScript_UnionRoomAttendant end -Common_EventScript_WirelessClubAttendant:: @ 8273761 +Common_EventScript_WirelessClubAttendant:: call CableClub_EventScript_WirelessClubAttendant end -Common_EventScript_DirectCornerAttendant:: @ 8273767 +Common_EventScript_DirectCornerAttendant:: call CableClub_EventScript_DirectCornerAttendant end -Common_EventScript_RemoveStaticPokemon:: @ 827376D +Common_EventScript_RemoveStaticPokemon:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK release end -Common_EventScript_LegendaryFlewAway:: @ 8273776 +Common_EventScript_LegendaryFlewAway:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK diff --git a/data/field_effect_scripts.s b/data/field_effect_scripts.s index c57f19a0401a..1c97da8fe4a7 100644 --- a/data/field_effect_scripts.s +++ b/data/field_effect_scripts.s @@ -4,7 +4,7 @@ .section script_data, "aw", %progbits .align 2 -gFieldEffectScriptPointers:: @ 82DB9D4 +gFieldEffectScriptPointers:: .4byte gFieldEffectScript_ExclamationMarkIcon1 @ FLDEFF_EXCLAMATION_MARK_ICON .4byte gFieldEffectScript_UseCutOnTallGrass @ FLDEFF_USE_CUT_ON_GRASS .4byte gFieldEffectScript_UseCutOnTree @ FLDEFF_USE_CUT_ON_TREE @@ -73,273 +73,273 @@ gFieldEffectScriptPointers:: @ 82DB9D4 .4byte gFieldEffectScript_DestroyDeoxysRock @ FLDEFF_DESTROY_DEOXYS_ROCK .4byte gFieldEffectScript_MoveDeoxysRock @ FLDEFF_MOVE_DEOXYS_ROCK -gFieldEffectScript_ExclamationMarkIcon1:: @ 82DBAE0 +gFieldEffectScript_ExclamationMarkIcon1:: field_eff_callnative FldEff_ExclamationMarkIcon field_eff_end -gFieldEffectScript_UseCutOnTallGrass:: @ 82DBAE6 +gFieldEffectScript_UseCutOnTallGrass:: field_eff_callnative FldEff_UseCutOnGrass field_eff_end -gFieldEffectScript_UseCutOnTree:: @ 82DBAEC +gFieldEffectScript_UseCutOnTree:: field_eff_callnative FldEff_UseCutOnTree field_eff_end -gFieldEffectScript_Shadow:: @ 82DBAF2 +gFieldEffectScript_Shadow:: field_eff_callnative FldEff_Shadow field_eff_end -gFieldEffectScript_TallGrass:: @ 82DBAF8 +gFieldEffectScript_TallGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_TallGrass field_eff_end -gFieldEffectScript_Ripple:: @ 82DBB02 +gFieldEffectScript_Ripple:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_Ripple field_eff_end -gFieldEffectScript_FieldMoveShowMon:: @ 82DBB0C +gFieldEffectScript_FieldMoveShowMon:: field_eff_callnative FldEff_FieldMoveShowMon field_eff_end -gFieldEffectScript_Ash:: @ 82DBB12 +gFieldEffectScript_Ash:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_Ash field_eff_end -gFieldEffectScript_SurfBlob:: @ 82DBB1C +gFieldEffectScript_SurfBlob:: field_eff_callnative FldEff_SurfBlob field_eff_end -gFieldEffectScript_UseSurf:: @ 82DBB22 +gFieldEffectScript_UseSurf:: field_eff_callnative FldEff_UseSurf field_eff_end -gFieldEffectScript_GroundImpactDust:: @ 82DBB28 +gFieldEffectScript_GroundImpactDust:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_Dust field_eff_end -gFieldEffectScript_UseSecretPowerCave:: @ 82DBB32 +gFieldEffectScript_UseSecretPowerCave:: field_eff_callnative FldEff_UseSecretPowerCave field_eff_end -gFieldEffectScript_JumpTallGrass:: @ 82DBB38 +gFieldEffectScript_JumpTallGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_JumpTallGrass field_eff_end -gFieldEffectScript_SandFootprints:: @ 82DBB42 +gFieldEffectScript_SandFootprints:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_SandFootprints field_eff_end -gFieldEffectScript_JumpBigSplash:: @ 82DBB4C +gFieldEffectScript_JumpBigSplash:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_JumpBigSplash field_eff_end -gFieldEffectScript_Splash:: @ 82DBB56 +gFieldEffectScript_Splash:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_Splash field_eff_end -gFieldEffectScript_JumpSmallSplash:: @ 82DBB60 +gFieldEffectScript_JumpSmallSplash:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_JumpSmallSplash field_eff_end -gFieldEffectScript_LongGrass:: @ 82DBB6A +gFieldEffectScript_LongGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_LongGrass field_eff_end -gFieldEffectScript_JumpLongGrass:: @ 82DBB74 +gFieldEffectScript_JumpLongGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_JumpLongGrass field_eff_end -gFieldEffectScript_UnusedGrass:: @ 82DBB7E +gFieldEffectScript_UnusedGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_UnusedGrass field_eff_end -gFieldEffectScript_UnusedGrass2:: @ 82DBB88 +gFieldEffectScript_UnusedGrass2:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_UnusedGrass2 field_eff_end -gFieldEffectScript_UnusedSand:: @ 82DBB92 +gFieldEffectScript_UnusedSand:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_UnusedSand field_eff_end -gFieldEffectScript_WaterSurfacing:: @ 82DBB9C +gFieldEffectScript_WaterSurfacing:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_WaterSurfacing field_eff_end -gFieldEffectScript_BerryTreeGrowthSparkle:: @ 82DBBA6 +gFieldEffectScript_BerryTreeGrowthSparkle:: field_eff_callnative FldEff_BerryTreeGrowthSparkle field_eff_end -gFieldEffectScript_DeepSandFootprints:: @ 82DBBAC +gFieldEffectScript_DeepSandFootprints:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_DeepSandFootprints field_eff_end -gFieldEffectScript_PokeCenterHeal:: @ 82DBBB6 +gFieldEffectScript_PokeCenterHeal:: field_eff_loadfadedpal gSpritePalette_PokeballGlow field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_PokecenterHeal field_eff_end -gFieldEffectScript_UseSecretPowerTree:: @ 82DBBC5 +gFieldEffectScript_UseSecretPowerTree:: field_eff_callnative FldEff_UseSecretPowerTree field_eff_end -gFieldEffectScript_UseSecretPowerShrub:: @ 82DBBCB +gFieldEffectScript_UseSecretPowerShrub:: field_eff_callnative FldEff_UseSecretPowerShrub field_eff_end -gFieldEffectScript_TreeDisguise:: @ 82DBBD1 +gFieldEffectScript_TreeDisguise:: field_eff_callnative ShowTreeDisguiseFieldEffect field_eff_end -gFieldEffectScript_MountainDisguise:: @ 82DBBD7 +gFieldEffectScript_MountainDisguise:: field_eff_callnative ShowMountainDisguiseFieldEffect field_eff_end -gFieldEffectScript_NPCUseFly:: @ 82DBBDD +gFieldEffectScript_NPCUseFly:: field_eff_callnative FldEff_NPCFlyOut field_eff_end -gFieldEffectScript_UseFly:: @ 82DBBE3 +gFieldEffectScript_UseFly:: field_eff_callnative FldEff_UseFly field_eff_end -gFieldEffectScript_FlyIn:: @ 82DBBE9 +gFieldEffectScript_FlyIn:: field_eff_callnative FldEff_FlyIn field_eff_end -gFieldEffectScript_QuestionMarkIcon:: @ 82DBBEF +gFieldEffectScript_QuestionMarkIcon:: field_eff_callnative FldEff_QuestionMarkIcon field_eff_end -gFieldEffectScript_FeetInFlowingWater:: @ 82DBBF5 +gFieldEffectScript_FeetInFlowingWater:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_FeetInFlowingWater field_eff_end -gFieldEffectScript_BikeTireTracks:: @ 82DBBFF +gFieldEffectScript_BikeTireTracks:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_BikeTireTracks field_eff_end -gFieldEffectScript_SandDisguisePlaceholder:: @ 82DBC09 +gFieldEffectScript_SandDisguisePlaceholder:: field_eff_callnative ShowSandDisguiseFieldEffect field_eff_end -gFieldEffectScript_UseRockSmash:: @ 82DBC0F +gFieldEffectScript_UseRockSmash:: field_eff_callnative FldEff_UseRockSmash field_eff_end -gFieldEffectScript_UseStrength:: @ 82DBC15 +gFieldEffectScript_UseStrength:: field_eff_callnative FldEff_UseStrength field_eff_end -gFieldEffectScript_UseDig:: @ 82DBC1B +gFieldEffectScript_UseDig:: field_eff_callnative FldEff_UseDig field_eff_end -gFieldEffectScript_SandPile:: @ 82DBC21 +gFieldEffectScript_SandPile:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_SandPile field_eff_end -gFieldEffectScript_ShortGrass:: @ 82DBC2B +gFieldEffectScript_ShortGrass:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_ShortGrass field_eff_end -gFieldEffectScript_HotSpringsWater:: @ 82DBC35 +gFieldEffectScript_HotSpringsWater:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect1, FldEff_HotSpringsWater field_eff_end -gFieldEffectScript_UseWaterfall:: @ 82DBC3F +gFieldEffectScript_UseWaterfall:: field_eff_callnative FldEff_UseWaterfall field_eff_end -gFieldEffectScript_UseDive:: @ 82DBC45 +gFieldEffectScript_UseDive:: field_eff_callnative FldEff_UseDive field_eff_end -gFieldEffectScript_Pokeball:: @ 82DBC4B +gFieldEffectScript_Pokeball:: field_eff_loadpal gSpritePalette_Pokeball field_eff_callnative FldEff_Pokeball field_eff_end -gFieldEffectScript_HeartIcon:: @ 82DBC56 +gFieldEffectScript_HeartIcon:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_HeartIcon field_eff_end -gFieldEffectScript_Nop47:: @ 82DBC60 +gFieldEffectScript_Nop47:: field_eff_callnative FldEff_Nop47 field_eff_end -gFieldEffectScript_Nop48:: @ 82DBC66 +gFieldEffectScript_Nop48:: field_eff_callnative FldEff_Nop48 field_eff_end -gFieldEffectScript_AshPuff:: @ 82DBC6C +gFieldEffectScript_AshPuff:: field_eff_loadfadedpal_callnative gSpritePalette_Ash, FldEff_AshPuff field_eff_end -gFieldEffectScript_AshLaunch:: @ 82DBC76 +gFieldEffectScript_AshLaunch:: field_eff_loadfadedpal_callnative gSpritePalette_Ash, FldEff_AshLaunch field_eff_end -gFieldEffectScript_SweetScent:: @ 82DBC80 +gFieldEffectScript_SweetScent:: field_eff_callnative FldEff_SweetScent field_eff_end -gFieldEffectScript_SandPillar:: @ 82DBC86 +gFieldEffectScript_SandPillar:: field_eff_loadfadedpal_callnative gSpritePalette_SandPillar, FldEff_SandPillar field_eff_end -gFieldEffectScript_Bubbles:: @ 82DBC90 +gFieldEffectScript_Bubbles:: field_eff_loadfadedpal_callnative gSpritePalette_GeneralFieldEffect0, FldEff_Bubbles field_eff_end -gFieldEffectScript_Sparkle:: @ 82DBC9A +gFieldEffectScript_Sparkle:: field_eff_loadfadedpal_callnative gSpritePalette_SmallSparkle, FldEff_Sparkle field_eff_end -gFieldEffectScript_ShowSecretPowerCave:: @ 82DBCA4 +gFieldEffectScript_ShowSecretPowerCave:: field_eff_loadfadedpal_callnative gSpritePalette_SecretPower_Cave, FldEff_SecretPowerCave field_eff_end -gFieldEffectScript_ShowSecretPowerTree:: @ 82DBCAE +gFieldEffectScript_ShowSecretPowerTree:: field_eff_loadfadedpal_callnative gSpritePalette_SecretPower_Plant, FldEff_SecretPowerTree field_eff_end -gFieldEffectScript_ShowSecretPowerShrub:: @ 82DBCB8 +gFieldEffectScript_ShowSecretPowerShrub:: field_eff_loadfadedpal_callnative gSpritePalette_SecretPower_Plant, FldEff_SecretPowerShrub field_eff_end -gFieldEffectScript_ShowCutGrass:: @ 82DBCC2 +gFieldEffectScript_ShowCutGrass:: field_eff_loadfadedpal_callnative gSpritePalette_CutGrass, FldEff_CutGrass field_eff_end -gFieldEffectScript_FieldMoveShowMonInit:: @ 82DBCCC +gFieldEffectScript_FieldMoveShowMonInit:: field_eff_callnative FldEff_FieldMoveShowMonInit field_eff_end -gFieldEffectScript_UsePuzzleEffect:: @ 82DBCD2 +gFieldEffectScript_UsePuzzleEffect:: field_eff_callnative FldEff_UsePuzzleEffect field_eff_end -gFieldEffectScript_SecretBaseBootPC:: @ 82DBCD8 +gFieldEffectScript_SecretBaseBootPC:: field_eff_callnative FldEff_SecretBasePCTurnOn field_eff_end -gFieldEffectScript_HallOfFameRecord:: @ 82DBCDE +gFieldEffectScript_HallOfFameRecord:: field_eff_loadfadedpal gSpritePalette_PokeballGlow field_eff_loadfadedpal_callnative gSpritePalette_HofMonitor, FldEff_HallOfFameRecord field_eff_end -gFieldEffectScript_UseTeleport:: @ 82DBCED +gFieldEffectScript_UseTeleport:: field_eff_callnative FldEff_UseTeleport field_eff_end -gFieldEffectScript_RayquazaSpotlight:: @ 82DBCF3 +gFieldEffectScript_RayquazaSpotlight:: field_eff_callnative FldEff_RayquazaSpotlight field_eff_end -gFieldEffectScript_DestroyDeoxysRock:: @ 82DBCF9 +gFieldEffectScript_DestroyDeoxysRock:: field_eff_callnative FldEff_DestroyDeoxysRock field_eff_end -gFieldEffectScript_MoveDeoxysRock:: @ 82DBCFF +gFieldEffectScript_MoveDeoxysRock:: field_eff_callnative FldEff_MoveDeoxysRock field_eff_end diff --git a/data/fonts.s b/data/fonts.s index facc882acd97..9283724814fc 100644 --- a/data/fonts.s +++ b/data/fonts.s @@ -4,73 +4,73 @@ .section .rodata .align 2 -gFont8LatinGlyphs:: @ 862BAE4 +gFont8LatinGlyphs:: .incbin "graphics/fonts/font8.latfont" .align 2 -gFont8LatinGlyphWidths:: @ 8633AE4 +gFont8LatinGlyphWidths:: .include "graphics/fonts/font8_latin_widths.inc" .align 2 -gFont0LatinGlyphs:: @ 8633CE4 +gFont0LatinGlyphs:: .incbin "graphics/fonts/font0.latfont" .align 2 -gFont0LatinGlyphWidths:: @ 863BCE4 +gFont0LatinGlyphWidths:: .include "graphics/fonts/font0_latin_widths.inc" .align 2 -gFont7LatinGlyphs:: @ 863BEE4 +gFont7LatinGlyphs:: .incbin "graphics/fonts/font7.latfont" .align 2 -gFont7LatinGlyphWidths:: @ 8643EE4 +gFont7LatinGlyphWidths:: .include "graphics/fonts/font7_latin_widths.inc" .align 2 -gFont2LatinGlyphs:: @ 86440E4 +gFont2LatinGlyphs:: .incbin "graphics/fonts/font2.latfont" .align 2 -gFont2LatinGlyphWidths:: @ 864C0E4 +gFont2LatinGlyphWidths:: .include "graphics/fonts/font2_latin_widths.inc" .align 2 -gFont1LatinGlyphs:: @ 864C2E4 +gFont1LatinGlyphs:: .incbin "graphics/fonts/font1.latfont" .align 2 -gFont1LatinGlyphWidths:: @ 86542E4 +gFont1LatinGlyphWidths:: .include "graphics/fonts/font1_latin_widths.inc" .align 2 -gFont0JapaneseGlyphs:: @ 86544E4 +gFont0JapaneseGlyphs:: .incbin "graphics/fonts/font0.hwjpnfont" .align 2 -gFont1JapaneseGlyphs:: @ 86584E4 +gFont1JapaneseGlyphs:: .incbin "graphics/fonts/font1.hwjpnfont" .align 2 -gUnusedJapaneseFireRedLeafGreenMaleFontGlyphs:: @ 865C4E4 +gUnusedJapaneseFireRedLeafGreenMaleFontGlyphs:: .incbin "graphics/fonts/unused_frlg_male.fwjpnfont" .align 2 -gUnusedJapaneseFireRedLeafGreenMaleFontGlyphWidths:: @ 86644E4 +gUnusedJapaneseFireRedLeafGreenMaleFontGlyphWidths:: .include "graphics/fonts/unused_japanese_frlg_male_font_widths.inc" .align 2 -gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphs:: @ 86646E4 +gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphs:: .incbin "graphics/fonts/unused_frlg_female.fwjpnfont" .align 2 -gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphWidths:: @ 866C6E4 +gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphWidths:: .include "graphics/fonts/unused_japanese_frlg_female_font_widths.inc" .align 2 -gFont2JapaneseGlyphs:: @ 866C8E4 +gFont2JapaneseGlyphs:: .incbin "graphics/fonts/font2.fwjpnfont" .align 2 -gFont2JapaneseGlyphWidths:: @ 86748E4 +gFont2JapaneseGlyphWidths:: .include "graphics/fonts/font2_japanese_widths.inc" diff --git a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc index 139701edbfa0..99dfa7bd8048 100644 --- a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc +++ b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc @@ -1,7 +1,7 @@ -AbandonedShip_CaptainsOffice_MapScripts:: @ 82387E1 +AbandonedShip_CaptainsOffice_MapScripts:: .byte 0 -AbandonedShip_CaptainsOffice_EventScript_CaptSternAide:: @ 82387E2 +AbandonedShip_CaptainsOffice_EventScript_CaptSternAide:: lock faceplayer goto_if_set FLAG_EXCHANGED_SCANNER, AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus @@ -13,30 +13,30 @@ AbandonedShip_CaptainsOffice_EventScript_CaptSternAide:: @ 82387E2 release end -AbandonedShip_CaptainsOffice_EventScript_CanYouDeliverScanner:: @ 8238810 +AbandonedShip_CaptainsOffice_EventScript_CanYouDeliverScanner:: msgbox AbandonedShip_CaptainsOffice_Text_OhCanYouDeliverScanner, MSGBOX_DEFAULT release end -AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus:: @ 823881A +AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus:: msgbox AbandonedShip_CaptainsOffice_Text_ThisIsSSCactus, MSGBOX_DEFAULT release end -AbandonedShip_CaptainsOffice_Text_NoSuccessFindingScanner: @ 8238824 +AbandonedShip_CaptainsOffice_Text_NoSuccessFindingScanner: .string "I'm investigating this ship on behalf\n" .string "of CAPT. STERN.\p" .string "He also asked me to find a SCANNER,\n" .string "but I haven't had any success…$" -AbandonedShip_CaptainsOffice_Text_OhCanYouDeliverScanner: @ 823889D +AbandonedShip_CaptainsOffice_Text_OhCanYouDeliverScanner: .string "Oh! That's a SCANNER!\p" .string "Listen, can I get you to deliver that\n" .string "to CAPT. STERN?\p" .string "I want to investigate this ship a\n" .string "little more.$" -AbandonedShip_CaptainsOffice_Text_ThisIsSSCactus: @ 8238918 +AbandonedShip_CaptainsOffice_Text_ThisIsSSCactus: .string "This ship is called S.S. CACTUS.\n" .string "It seems to be from an earlier era.$" diff --git a/data/maps/AbandonedShip_Corridors_1F/scripts.inc b/data/maps/AbandonedShip_Corridors_1F/scripts.inc index a954ee119792..2c850d1fdc09 100644 --- a/data/maps/AbandonedShip_Corridors_1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_1F/scripts.inc @@ -1,26 +1,26 @@ -AbandonedShip_Corridors_1F_MapScripts:: @ 82379A4 +AbandonedShip_Corridors_1F_MapScripts:: .byte 0 -AbandonedShip_Corridors_1F_EventScript_Youngster:: @ 82379A5 +AbandonedShip_Corridors_1F_EventScript_Youngster:: msgbox AbandonedShip_Corridors_1F_Text_IsntItFunHere, MSGBOX_NPC end -AbandonedShip_Corridors_1F_EventScript_Charlie:: @ 82379AE +AbandonedShip_Corridors_1F_EventScript_Charlie:: trainerbattle_single TRAINER_CHARLIE, AbandonedShip_Corridors_1F_Text_CharlieIntro, AbandonedShip_Corridors_1F_Text_CharlieDefeat msgbox AbandonedShip_Corridors_1F_Text_CharliePostBattle, MSGBOX_AUTOCLOSE end -AbandonedShip_Corridors_1F_Text_CharlieIntro: @ 82379C5 +AbandonedShip_Corridors_1F_Text_CharlieIntro: .string "What's so funny about having my inner\n" .string "tube aboard the ship?$" -AbandonedShip_Corridors_1F_Text_CharlieDefeat: @ 8237A01 +AbandonedShip_Corridors_1F_Text_CharlieDefeat: .string "Whoa, you overwhelmed me!$" -AbandonedShip_Corridors_1F_Text_CharliePostBattle: @ 8237A1B +AbandonedShip_Corridors_1F_Text_CharliePostBattle: .string "It's not easy throwing POKé BALLS\n" .string "while hanging on to an inner tube!$" -AbandonedShip_Corridors_1F_Text_IsntItFunHere: @ 8237A60 +AbandonedShip_Corridors_1F_Text_IsntItFunHere: .string "Isn't it fun here?\n" .string "I get excited just being here!$" diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc index 94ed2ef7e724..dd70c9dd3291 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc @@ -1,30 +1,30 @@ -AbandonedShip_Corridors_B1F_MapScripts:: @ 8237D84 +AbandonedShip_Corridors_B1F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AbandonedShip_Corridors_B1F_OnResume map_script MAP_SCRIPT_ON_LOAD, AbandonedShip_Corridors_B1F_OnLoad .byte 0 -AbandonedShip_Corridors_B1F_OnResume: @ 8237D8F +AbandonedShip_Corridors_B1F_OnResume: setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 255, 5, 4 end -AbandonedShip_Corridors_B1F_OnLoad: @ 8237D98 +AbandonedShip_Corridors_B1F_OnLoad: call_if_unset FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_LockStorageRoom call_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_UnlockStorageRoom end -AbandonedShip_Corridors_B1F_EventScript_LockStorageRoom:: @ 8237DAB +AbandonedShip_Corridors_B1F_EventScript_LockStorageRoom:: setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 return -AbandonedShip_Corridors_B1F_EventScript_UnlockStorageRoom:: @ 8237DB5 +AbandonedShip_Corridors_B1F_EventScript_UnlockStorageRoom:: setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 return -AbandonedShip_Corridors_B1F_EventScript_TuberM:: @ 8237DBF +AbandonedShip_Corridors_B1F_EventScript_TuberM:: msgbox AbandonedShip_Corridors_B1F_Text_YayItsAShip, MSGBOX_NPC end -AbandonedShip_Corridors_B1F_EventScript_StorageRoomDoor:: @ 8237DC8 +AbandonedShip_Corridors_B1F_EventScript_StorageRoomDoor:: lockall goto_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_DoorIsUnlocked checkitem ITEM_STORAGE_KEY, 1 @@ -39,49 +39,49 @@ AbandonedShip_Corridors_B1F_EventScript_StorageRoomDoor:: @ 8237DC8 releaseall end -AbandonedShip_Corridors_B1F_EventScript_DoorIsLocked:: @ 8237DFF +AbandonedShip_Corridors_B1F_EventScript_DoorIsLocked:: msgbox AbandonedShip_Corridors_B1F_Text_DoorIsLocked, MSGBOX_DEFAULT releaseall end -AbandonedShip_Corridors_B1F_EventScript_DoorIsUnlocked:: @ 8237E09 +AbandonedShip_Corridors_B1F_EventScript_DoorIsUnlocked:: msgbox AbandonedShip_Text_TheDoorIsOpen, MSGBOX_DEFAULT releaseall end -AbandonedShip_Corridors_B1F_EventScript_Duncan:: @ 8237E13 +AbandonedShip_Corridors_B1F_EventScript_Duncan:: trainerbattle_single TRAINER_DUNCAN, AbandonedShip_Corridors_B1F_Text_DuncanIntro, AbandonedShip_Corridors_B1F_Text_DuncanDefeat msgbox AbandonedShip_Corridors_B1F_Text_DuncanPostBattle, MSGBOX_AUTOCLOSE end -AbandonedShip_Corridors_B1F_Text_DuncanIntro: @ 8237E2A +AbandonedShip_Corridors_B1F_Text_DuncanIntro: .string "When we go out to sea, we SAILORS\n" .string "always bring our POKéMON.\l" .string "How about a quick battle?$" -AbandonedShip_Corridors_B1F_Text_DuncanDefeat: @ 8237E80 +AbandonedShip_Corridors_B1F_Text_DuncanDefeat: .string "Whoops, I'm sunk!$" -AbandonedShip_Corridors_B1F_Text_DuncanPostBattle: @ 8237E92 +AbandonedShip_Corridors_B1F_Text_DuncanPostBattle: .string "The ship's bottom has sunk into the\n" .string "depths.\p" .string "If a POKéMON knew how to go underwater,\n" .string "we might make some progress…$" -AbandonedShip_Corridors_B1F_Text_YayItsAShip: @ 8237F03 +AbandonedShip_Corridors_B1F_Text_YayItsAShip: .string "Yay!\n" .string "It's a ship!$" -AbandonedShip_Corridors_B1F_Text_DoorIsLocked: @ 8237F15 +AbandonedShip_Corridors_B1F_Text_DoorIsLocked: .string "The door is locked.\p" .string "“STORAGE” is painted on the door.$" -AbandonedShip_Corridors_B1F_Text_InsertedStorageKey: @ 8237F4B +AbandonedShip_Corridors_B1F_Text_InsertedStorageKey: .string "{PLAYER} inserted and turned the\n" .string "STORAGE KEY.\p" .string "The inserted KEY stuck fast,\n" .string "but the door opened.$" -AbandonedShip_Text_TheDoorIsOpen: @ 8237FA5 +AbandonedShip_Text_TheDoorIsOpen: .string "The door is open.$" diff --git a/data/maps/AbandonedShip_Deck/scripts.inc b/data/maps/AbandonedShip_Deck/scripts.inc index b0ecc2a4db72..6e1e75063dd6 100644 --- a/data/maps/AbandonedShip_Deck/scripts.inc +++ b/data/maps/AbandonedShip_Deck/scripts.inc @@ -1,8 +1,8 @@ -AbandonedShip_Deck_MapScripts:: @ 823799A +AbandonedShip_Deck_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, AbandonedShip_Deck_OnTransition .byte 0 -AbandonedShip_Deck_OnTransition: @ 82379A0 +AbandonedShip_Deck_OnTransition: setflag FLAG_LANDMARK_ABANDONED_SHIP end diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc index 612d46a9a468..4ec63a7e103c 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc @@ -1,13 +1,13 @@ -AbandonedShip_HiddenFloorCorridors_MapScripts:: @ 823896C +AbandonedShip_HiddenFloorCorridors_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AbandonedShip_HiddenFloorCorridors_OnResume map_script MAP_SCRIPT_ON_LOAD, AbandonedShip_HiddenFloorCorridors_OnLoad .byte 0 -AbandonedShip_HiddenFloorCorridors_OnResume: @ 8238977 +AbandonedShip_HiddenFloorCorridors_OnResume: setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 255, 5, 4 end -AbandonedShip_HiddenFloorCorridors_OnLoad: @ 8238980 +AbandonedShip_HiddenFloorCorridors_OnLoad: call_if_unset FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom1 call_if_unset FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom2 call_if_unset FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom4 @@ -18,39 +18,39 @@ AbandonedShip_HiddenFloorCorridors_OnLoad: @ 8238980 call_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom6 end -AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom1:: @ 82389C9 +AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom1:: setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 return -AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom2:: @ 82389D3 +AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom2:: setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 return -AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom4:: @ 82389DD +AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom4:: setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Unlocked, 0 return -AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom6:: @ 82389E7 +AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom6:: setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Unlocked, 0 return -AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom1:: @ 82389F1 +AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom1:: setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 return -AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom2:: @ 82389FB +AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom2:: setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 return -AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom4:: @ 8238A05 +AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom4:: setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Locked, 0 return -AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom6:: @ 8238A0F +AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom6:: setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Locked, 0 return -AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: @ 8238A19 +AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: lockall goto_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_1_KEY, 1 @@ -65,7 +65,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: @ 8238A19 releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: @ 8238A50 +AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: lockall goto_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_2_KEY, 1 @@ -80,7 +80,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: @ 8238A50 releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: @ 8238A87 +AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: lockall goto_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_4_KEY, 1 @@ -95,7 +95,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: @ 8238A87 releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door:: @ 8238ABE +AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door:: lockall goto_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_6_KEY, 1 @@ -110,48 +110,48 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door:: @ 8238ABE releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked:: @ 8238AF5 +AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked:: msgbox AbandonedShip_HiddenFloorCorridors_Text_Rm1DoorIsLocked, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked:: @ 8238AFF +AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked:: msgbox AbandonedShip_HiddenFloorCorridors_Text_Rm2DoorIsLocked, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked:: @ 8238B09 +AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked:: msgbox AbandonedShip_HiddenFloorCorridors_Text_Rm4DoorIsLocked, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked:: @ 8238B13 +AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked:: msgbox AbandonedShip_HiddenFloorCorridors_Text_Rm6DoorIsLocked, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen:: @ 8238B1D +AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen:: msgbox AbandonedShip_Text_TheDoorIsOpen, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorCorridors_Text_Rm1DoorIsLocked: @ 8238B27 +AbandonedShip_HiddenFloorCorridors_Text_Rm1DoorIsLocked: .string "The door is locked.\p" .string "“RM. 1” is painted on the door.$" -AbandonedShip_HiddenFloorCorridors_Text_Rm2DoorIsLocked: @ 8238B5B +AbandonedShip_HiddenFloorCorridors_Text_Rm2DoorIsLocked: .string "The door is locked.\p" .string "“RM. 2” is painted on the door.$" -AbandonedShip_HiddenFloorCorridors_Text_Rm4DoorIsLocked: @ 8238B8F +AbandonedShip_HiddenFloorCorridors_Text_Rm4DoorIsLocked: .string "The door is locked.\p" .string "“RM. 4” is painted on the door.$" -AbandonedShip_HiddenFloorCorridors_Text_Rm6DoorIsLocked: @ 8238BC3 +AbandonedShip_HiddenFloorCorridors_Text_Rm6DoorIsLocked: .string "The door is locked.\p" .string "“RM. 6” is painted on the door.$" -AbandonedShip_HiddenFloorCorridors_Text_InsertedKey: @ 8238BF7 +AbandonedShip_HiddenFloorCorridors_Text_InsertedKey: .string "{PLAYER} inserted and turned the\n" .string "KEY.\p" .string "The inserted KEY stuck fast,\n" diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc b/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc index 53a7ee2ed6ee..cdeb225de228 100644 --- a/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc @@ -1,8 +1,8 @@ -AbandonedShip_HiddenFloorRooms_MapScripts:: @ 8238C49 +AbandonedShip_HiddenFloorRooms_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, AbandonedShip_HiddenFloorRooms_OnFrame .byte 0 -AbandonedShip_HiddenFloorRooms_OnFrame: @ 8238C4F +AbandonedShip_HiddenFloorRooms_OnFrame: map_script_2 VAR_TEMP_1, 0, AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle .2byte 0 @@ -13,7 +13,7 @@ AbandonedShip_HiddenFloorRooms_OnFrame: @ 8238C4F @ Upper row, left column (Rm 4) @ Upper row, middle column (Rm 5) @ Upper row, right column (Rm 6) -AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle:: @ 8238C59 +AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle:: setvar VAR_TEMP_1, 1 getplayerxy VAR_TEMP_2, VAR_TEMP_3 setvar VAR_TEMP_4, 1 @@ -32,19 +32,19 @@ AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle:: @ 8238C59 case 6, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm6 end -AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn:: @ 8238CD1 +AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn:: addvar VAR_TEMP_4, 1 return -AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn:: @ 8238CD7 +AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn:: addvar VAR_TEMP_4, 2 return -AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow:: @ 8238CDD +AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow:: addvar VAR_TEMP_4, 3 return -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1:: @ 8238CE3 +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1:: delay 20 dofieldeffectsparkle 10, 10, 0 specialvar VAR_RESULT, FoundAbandonedShipRoom4Key @@ -54,10 +54,10 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1:: @ 8238CE3 delay 10 end -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2:: @ 8238D0C +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2:: end -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3:: @ 8238D0D +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3:: specialvar VAR_RESULT, FoundAbandonedShipRoom1Key compare VAR_RESULT, TRUE goto_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle @@ -68,10 +68,10 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3:: @ 8238D0D delay 10 end -AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle:: @ 8238D32 +AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle:: end -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4:: @ 8238D33 +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4:: delay 20 dofieldeffectsparkle 8, 5, 0 dofieldeffectsparkle 11, 3, 0 @@ -82,7 +82,7 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4:: @ 8238D33 delay 10 end -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5:: @ 8238D6B +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5:: delay 20 dofieldeffectsparkle 16, 3, 0 dofieldeffectsparkle 25, 2, 0 @@ -94,32 +94,32 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5:: @ 8238D6B delay 10 end -AbandonedShip_HiddenFloorRooms_EventScript_EnterRm6:: @ 8238DB2 +AbandonedShip_HiddenFloorRooms_EventScript_EnterRm6:: end -AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle:: @ 8238DB3 +AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle:: dofieldeffectsparkle 42, 10, 0 return -AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle:: @ 8238DC3 +AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle:: dofieldeffectsparkle 20, 5, 0 return -AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle:: @ 8238DD3 +AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle:: dofieldeffectsparkle 1, 12, 0 return -AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle:: @ 8238DE3 +AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle:: dofieldeffectsparkle 1, 2, 0 return -AbandonedShip_HiddenFloorRooms_EventScript_Trash:: @ 8238DF3 +AbandonedShip_HiddenFloorRooms_EventScript_Trash:: lockall msgbox AbandonedShip_HiddenFloorRooms_Text_BrightShinyTrash, MSGBOX_DEFAULT releaseall end -AbandonedShip_HiddenFloorRooms_Text_BrightShinyTrash: @ 8238DFE +AbandonedShip_HiddenFloorRooms_Text_BrightShinyTrash: .string "It's bright and shiny!\n" .string "But it's just trash…$" diff --git a/data/maps/AbandonedShip_Room_B1F/scripts.inc b/data/maps/AbandonedShip_Room_B1F/scripts.inc index 5dd7a2bad39d..a5489e81009f 100644 --- a/data/maps/AbandonedShip_Room_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Room_B1F/scripts.inc @@ -1,3 +1,3 @@ -AbandonedShip_Room_B1F_MapScripts:: @ 82380A5 +AbandonedShip_Room_B1F_MapScripts:: .byte 0 diff --git a/data/maps/AbandonedShip_Rooms2_1F/scripts.inc b/data/maps/AbandonedShip_Rooms2_1F/scripts.inc index a09242fc948d..e02d109b7bf5 100644 --- a/data/maps/AbandonedShip_Rooms2_1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms2_1F/scripts.inc @@ -1,7 +1,7 @@ -AbandonedShip_Rooms2_1F_MapScripts:: @ 82380A6 +AbandonedShip_Rooms2_1F_MapScripts:: .byte 0 -AbandonedShip_Rooms2_1F_EventScript_Dan:: @ 82380A7 +AbandonedShip_Rooms2_1F_EventScript_Dan:: trainerbattle_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_DanIntro, AbandonedShip_Rooms2_1F_Text_DanDefeat, AbandonedShip_Rooms2_1F_Text_DanNotEnoughMons, AbandonedShip_Rooms2_1F_EventScript_RegisterDan specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -10,18 +10,18 @@ AbandonedShip_Rooms2_1F_EventScript_Dan:: @ 82380A7 release end -AbandonedShip_Rooms2_1F_EventScript_RegisterDan:: @ 82380D7 +AbandonedShip_Rooms2_1F_EventScript_RegisterDan:: msgbox AbandonedShip_Rooms2_1F_Text_KiraRegister, MSGBOX_DEFAULT @ Kira speaks for both when registering KiraAndDan register_matchcall TRAINER_KIRA_AND_DAN_1 release end -AbandonedShip_Rooms2_1F_EventScript_DanRematch:: @ 82380F0 +AbandonedShip_Rooms2_1F_EventScript_DanRematch:: trainerbattle_rematch_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_DanRematchIntro, AbandonedShip_Rooms2_1F_Text_DanRematchDefeat, AbandonedShip_Rooms2_1F_Text_DanRematchNotEnoughMons msgbox AbandonedShip_Rooms2_1F_Text_DanPostRematch, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms2_1F_EventScript_Kira:: @ 823810B +AbandonedShip_Rooms2_1F_EventScript_Kira:: trainerbattle_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_KiraIntro, AbandonedShip_Rooms2_1F_Text_KiraDefeat, AbandonedShip_Rooms2_1F_Text_KiraNotEnoughMons, AbandonedShip_Rooms2_1F_EventScript_RegisterKira specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -30,122 +30,122 @@ AbandonedShip_Rooms2_1F_EventScript_Kira:: @ 823810B release end -AbandonedShip_Rooms2_1F_EventScript_RegisterKira:: @ 823813B +AbandonedShip_Rooms2_1F_EventScript_RegisterKira:: msgbox AbandonedShip_Rooms2_1F_Text_KiraRegister, MSGBOX_DEFAULT register_matchcall TRAINER_KIRA_AND_DAN_1 release end -AbandonedShip_Rooms2_1F_EventScript_KiraRematch:: @ 8238154 +AbandonedShip_Rooms2_1F_EventScript_KiraRematch:: trainerbattle_rematch_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_KiraRematchIntro, AbandonedShip_Rooms2_1F_Text_KiraRematchDefeat, AbandonedShip_Rooms2_1F_Text_KiraRematchNotEnoughMons msgbox AbandonedShip_Rooms2_1F_Text_KiraPostRematch, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms2_1F_EventScript_Jani:: @ 823816F +AbandonedShip_Rooms2_1F_EventScript_Jani:: trainerbattle_single TRAINER_JANI, AbandonedShip_Rooms2_1F_Text_JaniIntro, AbandonedShip_Rooms2_1F_Text_JaniDefeat msgbox AbandonedShip_Rooms2_1F_Text_JaniPostBattle, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms2_1F_EventScript_Garrison:: @ 8238186 +AbandonedShip_Rooms2_1F_EventScript_Garrison:: trainerbattle_single TRAINER_GARRISON, AbandonedShip_Rooms2_1F_Text_GarrisonIntro, AbandonedShip_Rooms2_1F_Text_GarrisonDefeat msgbox AbandonedShip_Rooms2_1F_Text_GarrisonPostBattle, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms2_1F_Text_DanIntro: @ 823819D +AbandonedShip_Rooms2_1F_Text_DanIntro: .string "DAN: While searching for treasures,\n" .string "we discovered a TRAINER!$" -AbandonedShip_Rooms2_1F_Text_DanDefeat: @ 82381DA +AbandonedShip_Rooms2_1F_Text_DanDefeat: .string "DAN: We couldn't win even though\n" .string "we worked together…$" -AbandonedShip_Rooms2_1F_Text_DanPostBattle: @ 823820F +AbandonedShip_Rooms2_1F_Text_DanPostBattle: .string "DAN: We can't find any treasures…\n" .string "I wonder if someone got them already?$" -AbandonedShip_Rooms2_1F_Text_DanNotEnoughMons: @ 8238257 +AbandonedShip_Rooms2_1F_Text_DanNotEnoughMons: .string "DAN: You don't even have two POKéMON.\n" .string "You can't expect to beat us like that.$" -AbandonedShip_Rooms2_1F_Text_KiraIntro: @ 82382A4 +AbandonedShip_Rooms2_1F_Text_KiraIntro: .string "KIRA: Oh?\n" .string "We were searching for treasures.\l" .string "But we discovered a TRAINER instead!$" -AbandonedShip_Rooms2_1F_Text_KiraDefeat: @ 82382F4 +AbandonedShip_Rooms2_1F_Text_KiraDefeat: .string "KIRA: Ooh, so strong!$" -AbandonedShip_Rooms2_1F_Text_KiraPostBattle: @ 823830A +AbandonedShip_Rooms2_1F_Text_KiraPostBattle: .string "KIRA: Where could the treasures be?\p" .string "I've already decided what I'm buying\n" .string "when we find the treasures!$" -AbandonedShip_Rooms2_1F_Text_KiraNotEnoughMons: @ 823836F +AbandonedShip_Rooms2_1F_Text_KiraNotEnoughMons: .string "KIRA: Oh, you don't have two POKéMON?\n" .string "We'll have to battle some other time!$" -AbandonedShip_Rooms2_1F_Text_KiraRegister: @ 82383BB +AbandonedShip_Rooms2_1F_Text_KiraRegister: .string "KIRA: Oh, you make me so angry!\n" .string "I'm going to register you for that!$" -AbandonedShip_Rooms2_1F_Text_DanRematchIntro: @ 82383FF +AbandonedShip_Rooms2_1F_Text_DanRematchIntro: .string "DAN: We've been searching for\n" .string "treasures all this time.\p" .string "Our POKéMON have grown stronger, too.\n" .string "Let us show you, okay?$" -AbandonedShip_Rooms2_1F_Text_DanRematchDefeat: @ 8238473 +AbandonedShip_Rooms2_1F_Text_DanRematchDefeat: .string "DAN: You're strong, as usual!$" -AbandonedShip_Rooms2_1F_Text_DanPostRematch: @ 8238491 +AbandonedShip_Rooms2_1F_Text_DanPostRematch: .string "DAN: We can't find any treasures,\n" .string "we lose at POKéMON…\p" .string "I want to go home… But if I say that,\n" .string "she gets all angry with me…$" -AbandonedShip_Rooms2_1F_Text_DanRematchNotEnoughMons: @ 8238509 +AbandonedShip_Rooms2_1F_Text_DanRematchNotEnoughMons: .string "DAN: You don't even have two POKéMON.\n" .string "You can't expect to beat us like that.$" -AbandonedShip_Rooms2_1F_Text_KiraRematchIntro: @ 8238556 +AbandonedShip_Rooms2_1F_Text_KiraRematchIntro: .string "KIRA: Oh? We meet again!\p" .string "Just like us, you still haven't given up\n" .string "searching for treasures, have you?\p" .string "Want to make it so the loser has\n" .string "to give up searching?$" -AbandonedShip_Rooms2_1F_Text_KiraRematchDefeat: @ 82385F2 +AbandonedShip_Rooms2_1F_Text_KiraRematchDefeat: .string "KIRA: Oh, we lost again…$" -AbandonedShip_Rooms2_1F_Text_KiraPostRematch: @ 823860B +AbandonedShip_Rooms2_1F_Text_KiraPostRematch: .string "KIRA: We're not leaving until we raise\n" .string "our POKéMON some more and we find\l" .string "the treasures here!$" -AbandonedShip_Rooms2_1F_Text_KiraRematchNotEnoughMons: @ 8238668 +AbandonedShip_Rooms2_1F_Text_KiraRematchNotEnoughMons: .string "KIRA: Oh, you don't have two POKéMON?\n" .string "We'll have to battle some other time!$" -AbandonedShip_Rooms2_1F_Text_JaniIntro: @ 82386B4 +AbandonedShip_Rooms2_1F_Text_JaniIntro: .string "I'm not good at swimming,\n" .string "but I am good at battles!$" -AbandonedShip_Rooms2_1F_Text_JaniDefeat: @ 82386E8 +AbandonedShip_Rooms2_1F_Text_JaniDefeat: .string "Oops.\n" .string "That didn't go very well.$" -AbandonedShip_Rooms2_1F_Text_JaniPostBattle: @ 8238708 +AbandonedShip_Rooms2_1F_Text_JaniPostBattle: .string "Walking around barefoot in this ship\n" .string "is kind of gross.$" -AbandonedShip_Rooms2_1F_Text_GarrisonIntro: @ 823873F +AbandonedShip_Rooms2_1F_Text_GarrisonIntro: .string "Strength and compassion…\n" .string "Those are a TRAINER's treasures!$" -AbandonedShip_Rooms2_1F_Text_GarrisonDefeat: @ 8238779 +AbandonedShip_Rooms2_1F_Text_GarrisonDefeat: .string "Ah, there is something about you\n" .string "that sparkles.$" -AbandonedShip_Rooms2_1F_Text_GarrisonPostBattle: @ 82387A9 +AbandonedShip_Rooms2_1F_Text_GarrisonPostBattle: .string "In a cabin somewhere on board,\n" .string "I saw something sparkle.$" diff --git a/data/maps/AbandonedShip_Rooms2_B1F/scripts.inc b/data/maps/AbandonedShip_Rooms2_B1F/scripts.inc index 5c2418696557..156a67e5d587 100644 --- a/data/maps/AbandonedShip_Rooms2_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms2_B1F/scripts.inc @@ -1,11 +1,11 @@ -AbandonedShip_Rooms2_B1F_MapScripts:: @ 8238024 +AbandonedShip_Rooms2_B1F_MapScripts:: .byte 0 -AbandonedShip_Rooms2_B1F_EventScript_Camper:: @ 8238025 +AbandonedShip_Rooms2_B1F_EventScript_Camper:: msgbox AbandonedShip_Rooms2_B1F_Text_PerfectPlaceToGoExploring, MSGBOX_NPC end -AbandonedShip_Rooms2_B1F_Text_PerfectPlaceToGoExploring: @ 823802E +AbandonedShip_Rooms2_B1F_Text_PerfectPlaceToGoExploring: .string "This is a perfect place to go exploring!\n" .string "It's exciting here!\p" .string "I bet there're amazing treasures on\n" diff --git a/data/maps/AbandonedShip_Rooms_1F/scripts.inc b/data/maps/AbandonedShip_Rooms_1F/scripts.inc index cabbb45eabf9..41b4eb3b6750 100644 --- a/data/maps/AbandonedShip_Rooms_1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms_1F/scripts.inc @@ -1,16 +1,16 @@ -AbandonedShip_Rooms_1F_MapScripts:: @ 8237A92 +AbandonedShip_Rooms_1F_MapScripts:: .byte 0 -AbandonedShip_Rooms_1F_EventScript_Gentleman:: @ 8237A93 +AbandonedShip_Rooms_1F_EventScript_Gentleman:: msgbox AbandonedShip_Rooms_1F_Text_TakingALookAround, MSGBOX_NPC end -AbandonedShip_Rooms_1F_EventScript_Demetrius:: @ 8237A9C +AbandonedShip_Rooms_1F_EventScript_Demetrius:: trainerbattle_single TRAINER_DEMETRIUS, AbandonedShip_Rooms_1F_Text_DemetriusIntro, AbandonedShip_Rooms_1F_Text_DemetriusDefeat msgbox AbandonedShip_Rooms_1F_Text_DemetriusPostBattle, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms_1F_EventScript_Thalia:: @ 8237AB3 +AbandonedShip_Rooms_1F_EventScript_Thalia:: trainerbattle_single TRAINER_THALIA_1, AbandonedShip_Rooms_1F_Text_ThaliaIntro, AbandonedShip_Rooms_1F_Text_ThaliaDefeat, AbandonedShip_Rooms_1F_EventScript_RegisterThalia specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -19,7 +19,7 @@ AbandonedShip_Rooms_1F_EventScript_Thalia:: @ 8237AB3 release end -AbandonedShip_Rooms_1F_EventScript_RegisterThalia:: @ 8237ADF +AbandonedShip_Rooms_1F_EventScript_RegisterThalia:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox AbandonedShip_Rooms_1F_Text_ThaliaRegister, MSGBOX_DEFAULT @@ -27,52 +27,52 @@ AbandonedShip_Rooms_1F_EventScript_RegisterThalia:: @ 8237ADF release end -AbandonedShip_Rooms_1F_EventScript_ThaliaRematch:: @ 8237AFE +AbandonedShip_Rooms_1F_EventScript_ThaliaRematch:: trainerbattle_rematch TRAINER_THALIA_1, AbandonedShip_Rooms_1F_Text_ThaliaRematchIntro, AbandonedShip_Rooms_1F_Text_ThaliaRematchDefeat msgbox AbandonedShip_Rooms_1F_Text_ThaliaPostRematch, MSGBOX_AUTOCLOSE end -AbandonedShip_Rooms_1F_Text_TakingALookAround: @ 8237B15 +AbandonedShip_Rooms_1F_Text_TakingALookAround: .string "Ships of this sort are rare, so I'm\n" .string "taking a look around.\p" .string "Hmhm…\n" .string "There appear to be other cabins…$" -AbandonedShip_Rooms_1F_Text_ThaliaIntro: @ 8237B76 +AbandonedShip_Rooms_1F_Text_ThaliaIntro: .string "What on earth would compel you to\n" .string "come here? You must be curious!$" -AbandonedShip_Rooms_1F_Text_ThaliaDefeat: @ 8237BB8 +AbandonedShip_Rooms_1F_Text_ThaliaDefeat: .string "Not just curious, but also strong…$" -AbandonedShip_Rooms_1F_Text_ThaliaPostBattle: @ 8237BDB +AbandonedShip_Rooms_1F_Text_ThaliaPostBattle: .string "The man next door…\p" .string "He says he's just sightseeing,\n" .string "but I don't know about that.$" -AbandonedShip_Rooms_1F_Text_ThaliaRegister: @ 8237C2A +AbandonedShip_Rooms_1F_Text_ThaliaRegister: .string "You're such a tough TRAINER!\n" .string "Let me register you as a memento!$" -AbandonedShip_Rooms_1F_Text_ThaliaRematchIntro: @ 8237C69 +AbandonedShip_Rooms_1F_Text_ThaliaRematchIntro: .string "What on earth would compel you to\n" .string "come back? You must really be curious!$" -AbandonedShip_Rooms_1F_Text_ThaliaRematchDefeat: @ 8237CB2 +AbandonedShip_Rooms_1F_Text_ThaliaRematchDefeat: .string "Aren't you too strong?$" -AbandonedShip_Rooms_1F_Text_ThaliaPostRematch: @ 8237CC9 +AbandonedShip_Rooms_1F_Text_ThaliaPostRematch: .string "I'm sure that man's up to something!\n" .string "He just acts so suspiciously!$" -AbandonedShip_Rooms_1F_Text_DemetriusIntro: @ 8237D0C +AbandonedShip_Rooms_1F_Text_DemetriusIntro: .string "Waaah!\n" .string "I've been found! …Huh?$" -AbandonedShip_Rooms_1F_Text_DemetriusDefeat: @ 8237D2A +AbandonedShip_Rooms_1F_Text_DemetriusDefeat: .string "Oh, you're not my mom.$" -AbandonedShip_Rooms_1F_Text_DemetriusPostBattle: @ 8237D41 +AbandonedShip_Rooms_1F_Text_DemetriusPostBattle: .string "I'm in trouble with my mom, so I ran.\n" .string "Keep it a secret where I am!$" diff --git a/data/maps/AbandonedShip_Rooms_B1F/scripts.inc b/data/maps/AbandonedShip_Rooms_B1F/scripts.inc index 80208b05119f..a716972ff487 100644 --- a/data/maps/AbandonedShip_Rooms_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms_B1F/scripts.inc @@ -1,16 +1,16 @@ -AbandonedShip_Rooms_B1F_MapScripts:: @ 8237FB7 +AbandonedShip_Rooms_B1F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AbandonedShip_Rooms_B1F_OnResume .byte 0 -AbandonedShip_Rooms_B1F_OnResume: @ 8237FBD +AbandonedShip_Rooms_B1F_OnResume: setdivewarp MAP_ABANDONED_SHIP_UNDERWATER2, 255, 17, 4 end -AbandonedShip_Rooms_B1F_EventScript_FatMan:: @ 8237FC6 +AbandonedShip_Rooms_B1F_EventScript_FatMan:: msgbox AbandonedShip_Rooms_B1F_Text_GettingQueasy, MSGBOX_NPC end -AbandonedShip_Rooms_B1F_Text_GettingQueasy: @ 8237FCF +AbandonedShip_Rooms_B1F_Text_GettingQueasy: .string "Urrrrppp…\p" .string "I'm getting queasy just being aboard\n" .string "this ship…\p" diff --git a/data/maps/AbandonedShip_Underwater1/scripts.inc b/data/maps/AbandonedShip_Underwater1/scripts.inc index 9e10c19f5efb..9b3528b7796b 100644 --- a/data/maps/AbandonedShip_Underwater1/scripts.inc +++ b/data/maps/AbandonedShip_Underwater1/scripts.inc @@ -1,8 +1,8 @@ -AbandonedShip_Underwater1_MapScripts:: @ 8238096 +AbandonedShip_Underwater1_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AbandonedShip_Underwater1_OnResume .byte 0 -AbandonedShip_Underwater1_OnResume: @ 823809C +AbandonedShip_Underwater1_OnResume: setdivewarp MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS, 255, 0, 10 end diff --git a/data/maps/AbandonedShip_Underwater2/scripts.inc b/data/maps/AbandonedShip_Underwater2/scripts.inc index 40e6c1e5e367..bb139bd510db 100644 --- a/data/maps/AbandonedShip_Underwater2/scripts.inc +++ b/data/maps/AbandonedShip_Underwater2/scripts.inc @@ -1,8 +1,8 @@ -AbandonedShip_Underwater2_MapScripts:: @ 823895D +AbandonedShip_Underwater2_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AbandonedShip_Underwater2_OnResume .byte 0 -AbandonedShip_Underwater2_OnResume: @ 8238963 +AbandonedShip_Underwater2_OnResume: setdivewarp MAP_ABANDONED_SHIP_ROOMS_B1F, 255, 13, 7 end diff --git a/data/maps/AlteringCave/scripts.inc b/data/maps/AlteringCave/scripts.inc index 601f49217724..91bc5ec3364d 100644 --- a/data/maps/AlteringCave/scripts.inc +++ b/data/maps/AlteringCave/scripts.inc @@ -1,8 +1,8 @@ -AlteringCave_MapScripts:: @ 823B177 +AlteringCave_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, AlteringCave_OnTransition .byte 0 -AlteringCave_OnTransition: @ 823B17D +AlteringCave_OnTransition: setflag FLAG_LANDMARK_ALTERING_CAVE end diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index 95dd85d2863c..40d9f0dff0f8 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -1,34 +1,34 @@ -AncientTomb_MapScripts:: @ 8238FB3 +AncientTomb_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AncientTomb_OnResume map_script MAP_SCRIPT_ON_LOAD, AncientTomb_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, AncientTomb_OnTransition .byte 0 -AncientTomb_OnResume: @ 8238FC3 +AncientTomb_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, AncientTomb_EventScript_TryRemoveRegisteel end -AncientTomb_EventScript_TryRemoveRegisteel:: @ 8238FCD +AncientTomb_EventScript_TryRemoveRegisteel:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -AncientTomb_OnTransition: @ 8238FE1 +AncientTomb_OnTransition: setflag FLAG_LANDMARK_ANCIENT_TOMB call_if_unset FLAG_DEFEATED_REGISTEEL, AncientTomb_EventScript_ShowRegisteel end -AncientTomb_EventScript_ShowRegisteel:: @ 8238FEE +AncientTomb_EventScript_ShowRegisteel:: clearflag FLAG_HIDE_REGISTEEL return -AncientTomb_OnLoad: @ 8238FF2 +AncientTomb_OnLoad: call_if_unset FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED, AncientTomb_EventScript_HideRegiEntrance end -AncientTomb_EventScript_HideRegiEntrance:: @ 8238FFC +AncientTomb_EventScript_HideRegiEntrance:: setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 @@ -37,7 +37,7 @@ AncientTomb_EventScript_HideRegiEntrance:: @ 8238FFC setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 return -AncientTomb_EventScript_CaveEntranceMiddle:: @ 8239033 +AncientTomb_EventScript_CaveEntranceMiddle:: lockall goto_if_set FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED, AncientTomb_EventScript_BigHoleInWall braillemessage AncientTomb_Braille_ShineInTheMiddle @@ -46,12 +46,12 @@ AncientTomb_EventScript_CaveEntranceMiddle:: @ 8239033 releaseall end -AncientTomb_EventScript_BigHoleInWall:: @ 8239046 +AncientTomb_EventScript_BigHoleInWall:: msgbox gText_BigHoleInTheWall, MSGBOX_DEFAULT releaseall end -AncientTomb_EventScript_CaveEntranceSide:: @ 8239050 +AncientTomb_EventScript_CaveEntranceSide:: lockall braillemessage AncientTomb_Braille_ShineInTheMiddle waitbuttonpress @@ -59,7 +59,7 @@ AncientTomb_EventScript_CaveEntranceSide:: @ 8239050 releaseall end -AncientTomb_EventScript_Registeel:: @ 823905A +AncientTomb_EventScript_Registeel:: lock faceplayer waitse @@ -82,12 +82,12 @@ AncientTomb_EventScript_Registeel:: @ 823905A release end -AncientTomb_EventScript_DefeatedRegisteel:: @ 82390A1 +AncientTomb_EventScript_DefeatedRegisteel:: setflag FLAG_DEFEATED_REGISTEEL goto Common_EventScript_RemoveStaticPokemon end -AncientTomb_EventScript_RanFromRegisteel:: @ 82390AA +AncientTomb_EventScript_RanFromRegisteel:: setvar VAR_0x8004, SPECIES_REGISTEEL goto Common_EventScript_LegendaryFlewAway end diff --git a/data/maps/AquaHideout_1F/scripts.inc b/data/maps/AquaHideout_1F/scripts.inc index b246862a72a4..4a99f250c41e 100644 --- a/data/maps/AquaHideout_1F/scripts.inc +++ b/data/maps/AquaHideout_1F/scripts.inc @@ -1,8 +1,8 @@ -AquaHideout_1F_MapScripts:: @ 8233493 +AquaHideout_1F_MapScripts:: .byte 0 @ The below two entrance guards give hints about what to do to progress the story -AquaHideout_1F_EventScript_HideoutEntranceGrunt1:: @ 8233494 +AquaHideout_1F_EventScript_HideoutEntranceGrunt1:: lock faceplayer goto_if_set FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, AquaHideout_1F_EventScript_SlateportHint1 @@ -11,17 +11,17 @@ AquaHideout_1F_EventScript_HideoutEntranceGrunt1:: @ 8233494 release end -AquaHideout_1F_EventScript_MagmaHideoutHint1:: @ 82334B2 +AquaHideout_1F_EventScript_MagmaHideoutHint1:: msgbox AquaHideout_1F_Text_WhereMightMagmaHideoutBe, MSGBOX_DEFAULT release end -AquaHideout_1F_EventScript_SlateportHint1:: @ 82334BC +AquaHideout_1F_EventScript_SlateportHint1:: msgbox AquaHideout_1F_Text_BossWentToJackASubmarine, MSGBOX_DEFAULT release end -AquaHideout_1F_EventScript_HideoutEntranceGrunt2:: @ 82334C6 +AquaHideout_1F_EventScript_HideoutEntranceGrunt2:: lock faceplayer goto_if_set FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, AquaHideout_1F_EventScript_SlateportHint2 @@ -30,27 +30,27 @@ AquaHideout_1F_EventScript_HideoutEntranceGrunt2:: @ 82334C6 release end -AquaHideout_1F_EventScript_MagmaHideoutHint2:: @ 82334E4 +AquaHideout_1F_EventScript_MagmaHideoutHint2:: msgbox AquaHideout_1F_Text_TeamMagmaAtMtChimney, MSGBOX_DEFAULT release end -AquaHideout_1F_EventScript_SlateportHint2:: @ 82334EE +AquaHideout_1F_EventScript_SlateportHint2:: msgbox AquaHideout_1F_Text_BossIsInSlateportCity, MSGBOX_DEFAULT release end -AquaHideout_1F_EventScript_Grunt1:: @ 82334F8 +AquaHideout_1F_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_1, AquaHideout_1F_Text_Grunt1Intro, AquaHideout_1F_Text_Grunt1Defeat, AquaHideout_1F_EventScript_Grunt1Defeated msgbox AquaHideout_1F_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_1F_EventScript_Grunt1Defeated:: @ 8233513 +AquaHideout_1F_EventScript_Grunt1Defeated:: msgbox AquaHideout_1F_Text_Grunt1PostBattle, MSGBOX_DEFAULT release end -AquaHideout_1F_Text_OurBossIsSnatchingSomething: @ 823351D +AquaHideout_1F_Text_OurBossIsSnatchingSomething: .string "What? What? What do you want with \n" .string "TEAM AQUA?\p" .string "Our BOSS isn't here! He's gone off to\n" @@ -60,7 +60,7 @@ AquaHideout_1F_Text_OurBossIsSnatchingSomething: @ 823351D .string "Wahaha! Do you really think I'd tell\n" .string "you something that crucial?$" -AquaHideout_1F_Text_WhereMightMagmaHideoutBe: @ 82335E3 +AquaHideout_1F_Text_WhereMightMagmaHideoutBe: .string "What? What?\n" .string "Are you a TEAM MAGMA grunt?\p" .string "I hear that TEAM MAGMA is trying to\n" @@ -68,7 +68,7 @@ AquaHideout_1F_Text_WhereMightMagmaHideoutBe: @ 82335E3 .string "HIDEOUT.\p" .string "But where might their HIDEOUT be?$" -AquaHideout_1F_Text_BossWentToJackASubmarine: @ 823367D +AquaHideout_1F_Text_BossWentToJackASubmarine: .string "What? What? What do you want with \n" .string "TEAM AQUA?\p" .string "Our BOSS isn't here!\n" @@ -78,7 +78,7 @@ AquaHideout_1F_Text_BossWentToJackASubmarine: @ 823367D .string "Wahaha! Do you really think I'd tell\n" .string "you something that crucial?$" -AquaHideout_1F_Text_BossIsOnRoute122: @ 8233739 +AquaHideout_1F_Text_BossIsOnRoute122: .string "What? What? What do you want with \n" .string "TEAM AQUA?\p" .string "Our BOSS isn't here! He's on his way to\n" @@ -88,14 +88,14 @@ AquaHideout_1F_Text_BossIsOnRoute122: @ 8233739 .string "Wahaha! Do you really think I'd tell\n" .string "you something that crucial?$" -AquaHideout_1F_Text_TeamMagmaAtMtChimney: @ 82337FA +AquaHideout_1F_Text_TeamMagmaAtMtChimney: .string "What? What?\n" .string "Are you a TEAM MAGMA grunt?\p" .string "I hear that TEAM MAGMA is after\n" .string "an awesome POKéMON at MT. CHIMNEY.\p" .string "But what is that POKéMON like?$" -AquaHideout_1F_Text_BossIsInSlateportCity: @ 8233884 +AquaHideout_1F_Text_BossIsInSlateportCity: .string "What? What? What do you want with\n" .string "TEAM AQUA?\p" .string "Our BOSS isn't here!\n" @@ -105,15 +105,15 @@ AquaHideout_1F_Text_BossIsInSlateportCity: @ 8233884 .string "Wahaha! Do you really think I'd tell\n" .string "you something that crucial?$" -AquaHideout_1F_Text_Grunt1Intro: @ 823393D +AquaHideout_1F_Text_Grunt1Intro: .string "Ayiyiyi!\n" .string "Suspicious character spotted!$" -AquaHideout_1F_Text_Grunt1Defeat: @ 8233964 +AquaHideout_1F_Text_Grunt1Defeat: .string "Grrrrr…\n" .string "I lost it!$" -AquaHideout_1F_Text_Grunt1PostBattle: @ 8233977 +AquaHideout_1F_Text_Grunt1PostBattle: .string "I took the loss for the TEAM,\n" .string "but I did my job…$" diff --git a/data/maps/AquaHideout_B1F/scripts.inc b/data/maps/AquaHideout_B1F/scripts.inc index 17e803814f9c..4a4a95cc4414 100644 --- a/data/maps/AquaHideout_B1F/scripts.inc +++ b/data/maps/AquaHideout_B1F/scripts.inc @@ -1,33 +1,33 @@ -AquaHideout_B1F_MapScripts:: @ 82339A7 +AquaHideout_B1F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, AquaHideout_B1F_OnResume map_script MAP_SCRIPT_ON_TRANSITION, AquaHideout_B1F_OnTransition .byte 0 -AquaHideout_B1F_OnResume: @ 82339B2 +AquaHideout_B1F_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, AquaHideout_B1F_EventScript_TryRemoveElectrode end -AquaHideout_B1F_EventScript_TryRemoveElectrode:: @ 82339BC +AquaHideout_B1F_EventScript_TryRemoveElectrode:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -AquaHideout_B1F_OnTransition: @ 82339D0 +AquaHideout_B1F_OnTransition: call_if_unset FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT, AquaHideout_B1F_EventScript_ShowElectrode1 call_if_unset FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT, AquaHideout_B1F_EventScript_ShowElectrode2 end -AquaHideout_B1F_EventScript_ShowElectrode1:: @ 82339E3 +AquaHideout_B1F_EventScript_ShowElectrode1:: clearflag FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_1 return -AquaHideout_B1F_EventScript_ShowElectrode2:: @ 82339E7 +AquaHideout_B1F_EventScript_ShowElectrode2:: clearflag FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_2 return -AquaHideout_B1F_EventScript_Electrode1:: @ 82339EB +AquaHideout_B1F_EventScript_Electrode1:: lock faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE @@ -49,12 +49,12 @@ AquaHideout_B1F_EventScript_Electrode1:: @ 82339EB release end -AquaHideout_B1F_EventScript_DefeatedElectrode1:: @ 8233A2F +AquaHideout_B1F_EventScript_DefeatedElectrode1:: setflag FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT goto Common_EventScript_RemoveStaticPokemon end -AquaHideout_B1F_EventScript_Electrode2:: @ 8233A38 +AquaHideout_B1F_EventScript_Electrode2:: lock faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE @@ -76,92 +76,92 @@ AquaHideout_B1F_EventScript_Electrode2:: @ 8233A38 release end -AquaHideout_B1F_EventScript_DefeatedElectrode2:: @ 8233A7C +AquaHideout_B1F_EventScript_DefeatedElectrode2:: setflag FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT goto Common_EventScript_RemoveStaticPokemon end -AquaHideout_B1F_EventScript_Grunt2:: @ 8233A85 +AquaHideout_B1F_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_2, AquaHideout_B1F_Text_Grunt2Intro, AquaHideout_B1F_Text_Grunt2Defeat, AquaHideout_B1F_EventScript_Grunt2Defeated msgbox AquaHideout_B1F_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B1F_EventScript_Grunt2Defeated:: @ 8233AA0 +AquaHideout_B1F_EventScript_Grunt2Defeated:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox AquaHideout_B1F_Text_Grunt2PostBattle, MSGBOX_DEFAULT release end -AquaHideout_B1F_EventScript_Grunt3:: @ 8233AB0 +AquaHideout_B1F_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_3, AquaHideout_B1F_Text_Grunt3Intro, AquaHideout_B1F_Text_Grunt3Defeat, AquaHideout_B1F_EventScript_Grunt3Defeated msgbox AquaHideout_B1F_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B1F_EventScript_Grunt3Defeated:: @ 8233ACB +AquaHideout_B1F_EventScript_Grunt3Defeated:: msgbox AquaHideout_B1F_Text_Grunt3PostBattle, MSGBOX_DEFAULT release end -AquaHideout_B1F_EventScript_Grunt5:: @ 8233AD5 +AquaHideout_B1F_EventScript_Grunt5:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_5, AquaHideout_B1F_Text_Grunt5Intro, AquaHideout_B1F_Text_Grunt5Defeat msgbox AquaHideout_B1F_Text_Grunt5PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B1F_EventScript_Grunt7:: @ 8233AEC +AquaHideout_B1F_EventScript_Grunt7:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_7, AquaHideout_B1F_Text_Grunt7Intro, AquaHideout_B1F_Text_Grunt7Defeat msgbox AquaHideout_B1F_Text_Grunt7PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B1F_Text_Grunt2Intro: @ 8233B03 +AquaHideout_B1F_Text_Grunt2Intro: .string "If you want to know the secret about\n" .string "our HIDEOUT, you have me to beat!$" -AquaHideout_B1F_Text_Grunt2Defeat: @ 8233B4A +AquaHideout_B1F_Text_Grunt2Defeat: .string "I can't win at all…$" -AquaHideout_B1F_Text_Grunt2PostBattle: @ 8233B5E +AquaHideout_B1F_Text_Grunt2PostBattle: .string "Our HIDEOUT's secret?\p" .string "Well, let's just say…\n" .string "There's a submarine at the far end!\p" .string "But, by now…\n" .string "Kekekeke…$" -AquaHideout_B1F_Text_Grunt3Intro: @ 8233BC5 +AquaHideout_B1F_Text_Grunt3Intro: .string "Fuel supply loaded A-OK!\n" .string "In-cruise snacks loaded A-OK!\p" .string "Nothing left to do but KO a pesky\n" .string "meddler!$" -AquaHideout_B1F_Text_Grunt3Defeat: @ 8233C27 +AquaHideout_B1F_Text_Grunt3Defeat: .string "I took a serious licking!$" -AquaHideout_B1F_Text_Grunt3PostBattle: @ 8233C41 +AquaHideout_B1F_Text_Grunt3PostBattle: .string "Humph!\n" .string "This was supposed to happen!\p" .string "My mission was to just hold you up!$" -AquaHideout_B1F_Text_Grunt5Intro: @ 8233C89 +AquaHideout_B1F_Text_Grunt5Intro: .string "Yawn… Keeping watch over the\n" .string "HIDEOUT bores me. I'll take you on.$" -AquaHideout_B1F_Text_Grunt5Defeat: @ 8233CCA +AquaHideout_B1F_Text_Grunt5Defeat: .string "Yawn…\n" .string "Oh, I lost…$" -AquaHideout_B1F_Text_Grunt5PostBattle: @ 8233CDC +AquaHideout_B1F_Text_Grunt5PostBattle: .string "If you scurry too much, other TEAM\n" .string "AQUA members might get you.$" -AquaHideout_B1F_Text_Grunt7Intro: @ 8233D1B +AquaHideout_B1F_Text_Grunt7Intro: .string "Hey!\n" .string "You there!\p" .string "Which do you think is cooler?\n" .string "TEAM AQUA's uniform or TEAM MAGMA's?$" -AquaHideout_B1F_Text_Grunt7Defeat: @ 8233D6E +AquaHideout_B1F_Text_Grunt7Defeat: .string "I lost in a cool way…$" -AquaHideout_B1F_Text_Grunt7PostBattle: @ 8233D84 +AquaHideout_B1F_Text_Grunt7PostBattle: .string "If you have a cool uniform, you look\n" .string "good even in a loss, don't you think?$" diff --git a/data/maps/AquaHideout_B2F/scripts.inc b/data/maps/AquaHideout_B2F/scripts.inc index 25fc1820f0f1..95059fb6d3aa 100644 --- a/data/maps/AquaHideout_B2F/scripts.inc +++ b/data/maps/AquaHideout_B2F/scripts.inc @@ -1,19 +1,19 @@ .set LOCALID_MATT, 1 .set LOCALID_SUBMARINE, 4 -AquaHideout_B2F_MapScripts:: @ 8233DCF +AquaHideout_B2F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, AquaHideout_B2F_OnTransition .byte 0 -AquaHideout_B2F_OnTransition: @ 8233DD5 +AquaHideout_B2F_OnTransition: call_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, AquaHideout_B2F_EventScript_PreventMattNoticing end -AquaHideout_B2F_EventScript_PreventMattNoticing:: @ 8233DDF +AquaHideout_B2F_EventScript_PreventMattNoticing:: setvar VAR_TEMP_1, 1 return -AquaHideout_B2F_EventScript_MattNoticePlayer:: @ 8233DE5 +AquaHideout_B2F_EventScript_MattNoticePlayer:: lockall setvar VAR_0x8008, LOCALID_MATT playse SE_PIN @@ -25,13 +25,13 @@ AquaHideout_B2F_EventScript_MattNoticePlayer:: @ 8233DE5 releaseall end -AquaHideout_B2F_EventScript_Matt:: @ 8233E09 +AquaHideout_B2F_EventScript_Matt:: trainerbattle_single TRAINER_MATT, AquaHideout_B2F_Text_MattIntro, AquaHideout_B2F_Text_MattDefeat, AquaHideout_B2F_EventScript_SubmarineEscape msgbox AquaHideout_B2F_Text_MattPostBattle, MSGBOX_DEFAULT release end -AquaHideout_B2F_EventScript_SubmarineEscape:: @ 8233E25 +AquaHideout_B2F_EventScript_SubmarineEscape:: setvar VAR_0x8008, LOCALID_MATT setvar VAR_0x8009, LOCALID_SUBMARINE applymovement VAR_0x8008, Common_Movement_WalkInPlaceFastestLeft @@ -54,7 +54,7 @@ AquaHideout_B2F_EventScript_SubmarineEscape:: @ 8233E25 release end -AquaHideout_B2F_Movement_SumbarineDepartLeft: @ 8233E80 +AquaHideout_B2F_Movement_SumbarineDepartLeft: walk_left walk_left walk_left @@ -62,34 +62,34 @@ AquaHideout_B2F_Movement_SumbarineDepartLeft: @ 8233E80 step_end @ Unused -AquaHideout_B2F_Movement_SumbarineDepartRight: @ 8233E85 +AquaHideout_B2F_Movement_SumbarineDepartRight: walk_right walk_right walk_right walk_right step_end -AquaHideout_B2F_EventScript_Grunt4:: @ 8233E8A +AquaHideout_B2F_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_4, AquaHideout_B2F_Text_Grunt4Intro, AquaHideout_B2F_Text_Grunt4Defeat, AquaHideout_B2F_EventScript_Grunt4Defeated msgbox AquaHideout_B2F_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B2F_EventScript_Grunt4Defeated:: @ 8233EA5 +AquaHideout_B2F_EventScript_Grunt4Defeated:: msgbox AquaHideout_B2F_Text_Grunt4PostBattle, MSGBOX_DEFAULT release end -AquaHideout_B2F_EventScript_Grunt6:: @ 8233EAF +AquaHideout_B2F_EventScript_Grunt6:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_6, AquaHideout_B2F_Text_Grunt6Intro, AquaHideout_B2F_Text_Grunt6Defeat msgbox AquaHideout_B2F_Text_Grunt6PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B2F_EventScript_Grunt8:: @ 8233EC6 +AquaHideout_B2F_EventScript_Grunt8:: trainerbattle_single TRAINER_GRUNT_AQUA_HIDEOUT_8, AquaHideout_B2F_Text_Grunt8Intro, AquaHideout_B2F_Text_Grunt8Defeat msgbox AquaHideout_B2F_Text_Grunt8PostBattle, MSGBOX_AUTOCLOSE end -AquaHideout_B2F_Text_MattIntro: @ 8233EDD +AquaHideout_B2F_Text_MattIntro: .string "Hehehe…\p" .string "Got here already, did you?\n" .string "We underestimated you!\p" @@ -99,16 +99,16 @@ AquaHideout_B2F_Text_MattIntro: @ 8233EDD .string "I'm not stalling for time.\n" .string "I'm going to pulverize you!$" -AquaHideout_B2F_Text_MattDefeat: @ 8233F8D +AquaHideout_B2F_Text_MattDefeat: .string "Hehehe…\n" .string "So, I lost, too…$" -AquaHideout_B2F_Text_OurBossGotThroughHisPreparations: @ 8233FA6 +AquaHideout_B2F_Text_OurBossGotThroughHisPreparations: .string "Hehehe!\p" .string "While I was toying with you, our BOSS\n" .string "got through his preparations!$" -AquaHideout_B2F_Text_MattPostBattle: @ 8233FF2 +AquaHideout_B2F_Text_MattPostBattle: .string "Hehehe!\p" .string "Our BOSS has already gone on his way to\n" .string "some cave under the sea!\p" @@ -118,19 +118,19 @@ AquaHideout_B2F_Text_MattPostBattle: @ 8233FF2 .string "But will you find it then?\n" .string "Hehehe!$" -AquaHideout_B2F_Text_Grunt4Intro: @ 82340B4 +AquaHideout_B2F_Text_Grunt4Intro: .string "Wahahah, I grew weary of waiting!\n" .string "You owe me a battle, too!$" -AquaHideout_B2F_Text_Grunt4Defeat: @ 82340F0 +AquaHideout_B2F_Text_Grunt4Defeat: .string "Tired of waiting…\n" .string "Lost and dazed…$" -AquaHideout_B2F_Text_Grunt4PostBattle: @ 8234112 +AquaHideout_B2F_Text_Grunt4PostBattle: .string "BOSS…\n" .string "Is this good enough?$" -AquaHideout_B2F_Text_Grunt6Intro: @ 823412D +AquaHideout_B2F_Text_Grunt6Intro: .string "Warp panels, the HIDEOUT's pride\n" .string "and joy!\p" .string "You're clueless about where you are,\n" @@ -138,25 +138,25 @@ AquaHideout_B2F_Text_Grunt6Intro: @ 823412D .string "Fluster and tire out the enemy, then\n" .string "lower the boom! That's our plan!$" -AquaHideout_B2F_Text_Grunt6Defeat: @ 82341CE +AquaHideout_B2F_Text_Grunt6Defeat: .string "What's wrong with you?\n" .string "You're not tired at all!$" -AquaHideout_B2F_Text_Grunt6PostBattle: @ 82341FE +AquaHideout_B2F_Text_Grunt6PostBattle: .string "That reminds me… I can't remember\n" .string "where I put the MASTER BALL.\p" .string "If I fail to guard it, our BOSS will\n" .string "chew me out…$" -AquaHideout_B2F_Text_Grunt8Intro: @ 823426F +AquaHideout_B2F_Text_Grunt8Intro: .string "When I joined TEAM AQUA, the first\n" .string "thing I had to learn was how these\l" .string "warp panels connected.$" -AquaHideout_B2F_Text_Grunt8Defeat: @ 82342CC +AquaHideout_B2F_Text_Grunt8Defeat: .string "I was too occupied thinking about\n" .string "the warp panels…$" -AquaHideout_B2F_Text_Grunt8PostBattle: @ 82342FF +AquaHideout_B2F_Text_Grunt8PostBattle: .string "I'll have to learn about how I can\n" .string "battle more effectively…$" diff --git a/data/maps/AquaHideout_UnusedRubyMap1/scripts.inc b/data/maps/AquaHideout_UnusedRubyMap1/scripts.inc index 73cde82a97fe..ed01251e6db1 100644 --- a/data/maps/AquaHideout_UnusedRubyMap1/scripts.inc +++ b/data/maps/AquaHideout_UnusedRubyMap1/scripts.inc @@ -1,3 +1,3 @@ -AquaHideout_UnusedRubyMap1_MapScripts:: @ 823929B +AquaHideout_UnusedRubyMap1_MapScripts:: .byte 0 diff --git a/data/maps/AquaHideout_UnusedRubyMap2/scripts.inc b/data/maps/AquaHideout_UnusedRubyMap2/scripts.inc index 28901497af8a..adf4c5b8c6f3 100644 --- a/data/maps/AquaHideout_UnusedRubyMap2/scripts.inc +++ b/data/maps/AquaHideout_UnusedRubyMap2/scripts.inc @@ -1,3 +1,3 @@ -AquaHideout_UnusedRubyMap2_MapScripts:: @ 823929C +AquaHideout_UnusedRubyMap2_MapScripts:: .byte 0 diff --git a/data/maps/AquaHideout_UnusedRubyMap3/scripts.inc b/data/maps/AquaHideout_UnusedRubyMap3/scripts.inc index de0e6d7ddb15..518a6c0195c0 100644 --- a/data/maps/AquaHideout_UnusedRubyMap3/scripts.inc +++ b/data/maps/AquaHideout_UnusedRubyMap3/scripts.inc @@ -1,3 +1,3 @@ -AquaHideout_UnusedRubyMap3_MapScripts:: @ 823929D +AquaHideout_UnusedRubyMap3_MapScripts:: .byte 0 diff --git a/data/maps/ArtisanCave_1F/scripts.inc b/data/maps/ArtisanCave_1F/scripts.inc index 18090ff6858a..66e478ade559 100644 --- a/data/maps/ArtisanCave_1F/scripts.inc +++ b/data/maps/ArtisanCave_1F/scripts.inc @@ -1,3 +1,3 @@ -ArtisanCave_1F_MapScripts:: @ 823AFB7 +ArtisanCave_1F_MapScripts:: .byte 0 diff --git a/data/maps/ArtisanCave_B1F/scripts.inc b/data/maps/ArtisanCave_B1F/scripts.inc index 4dd850e88487..a7afb0776ed5 100644 --- a/data/maps/ArtisanCave_B1F/scripts.inc +++ b/data/maps/ArtisanCave_B1F/scripts.inc @@ -1,8 +1,8 @@ -ArtisanCave_B1F_MapScripts:: @ 823AFAD +ArtisanCave_B1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, ArtisanCave_B1F_OnTransition .byte 0 -ArtisanCave_B1F_OnTransition: @ 823AFB3 +ArtisanCave_B1F_OnTransition: setflag FLAG_LANDMARK_ARTISAN_CAVE end diff --git a/data/maps/BattleColosseum_2P/scripts.inc b/data/maps/BattleColosseum_2P/scripts.inc index 97c6a5d0bddc..460943a8701f 100644 --- a/data/maps/BattleColosseum_2P/scripts.inc +++ b/data/maps/BattleColosseum_2P/scripts.inc @@ -1,3 +1,3 @@ -BattleColosseum_2P_MapScripts:: @ 823B77D +BattleColosseum_2P_MapScripts:: .byte 0 diff --git a/data/maps/BattleColosseum_4P/scripts.inc b/data/maps/BattleColosseum_4P/scripts.inc index 70dca8e27674..f18dd7abdb76 100644 --- a/data/maps/BattleColosseum_4P/scripts.inc +++ b/data/maps/BattleColosseum_4P/scripts.inc @@ -1,3 +1,3 @@ -BattleColosseum_4P_MapScripts:: @ 823B780 +BattleColosseum_4P_MapScripts:: .byte 0 diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index ac48a45bfd4a..4f7d3bd87368 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -7,7 +7,7 @@ .set LOCALID_PLAYER, 8 .set LOCALID_ANNOUNCER, 9 -BattleFrontier_BattleArenaBattleRoom_MapScripts:: @ 8257487 +BattleFrontier_BattleArenaBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleArenaBattleRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleArenaBattleRoom_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleArenaBattleRoom_OnWarp @@ -17,16 +17,16 @@ BattleFrontier_BattleArenaBattleRoom_MapScripts:: @ 8257487 @ 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: @ 825749C +BattleFrontier_BattleArenaBattleRoom_OnResume: special OffsetCameraForBattle end -BattleFrontier_BattleArenaBattleRoom_OnTransition: @ 82574A0 +BattleFrontier_BattleArenaBattleRoom_OnTransition: frontier_settrainers call BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfx end -BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfx:: @ 82574AE +BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale @@ -34,19 +34,19 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfx:: @ 82574AE goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxFemale return -BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale:: @ 82574C6 +BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxFemale:: @ 82574CC +BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -BattleFrontier_BattleArenaBattleRoom_OnFrame: @ 82574D2 +BattleFrontier_BattleArenaBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom:: @ 82574DC +BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom:: lockall showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter @@ -60,7 +60,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom:: @ 82574DC frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE goto BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers:: @ 825752E +BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers:: tower_setopponent addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter @@ -97,7 +97,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers:: @ 825752E call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle switch VAR_RESULT case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner:: @ 82575DB +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 @@ -108,12 +108,12 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner:: @ 82575 waitmovement 0 arena_gettrainername msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT -BattleFrontier_BattleArenaBattleRoom_EventScript_WarpToLobbyLost:: @ 8257615 +BattleFrontier_BattleArenaBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 255, 7, 8 waitstate -BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent:: @ 8257630 +BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent:: call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 @@ -134,7 +134,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent:: @ 8257630 playfanfare MUS_HEAL waitfanfare special HealPlayerParty -BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: @ 82576B0 +BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY @@ -163,7 +163,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: @ 82576B0 case 3, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8257768 +BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge @@ -171,7 +171,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ case 2, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle:: @ 825779E +BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattleArenaBattleRoom_Text_RecordLastBattle waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -180,18 +180,18 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskRecordBattle:: @ 825779E case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_RecordBattle:: @ 82577D0 +BattleFrontier_BattleArenaBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_AskPauseChallenge:: @ 82577DA +BattleFrontier_BattleArenaBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent case YES, BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge:: @ 8257808 +BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -200,50 +200,50 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge:: @ 8257808 case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge:: @ 825783A +BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge:: closemessage applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight waitmovement 0 goto BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers waitstate -BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon:: @ 8257852 +BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon:: delay 60 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 255, 7, 8 waitstate -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8257870 +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8257877 +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor4thOpponent:: @ 825787E +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor4thOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor4thOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor5thOpponent:: @ 8257885 +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor5thOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor5thOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor6thOpponent:: @ 825788C +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor6thOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor6thOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor7thOpponent:: @ 8257893 +BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor7thOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor7thOpponent waitmessage return -BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: @ 825789A +BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait waitmessage arena_save CHALLENGE_STATUS_PAUSED @@ -253,12 +253,12 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: @ 825789A frontier_reset end -BattleFrontier_BattleArenaBattleRoom_EventScript_TycoonUpNext:: @ 82578BC +BattleFrontier_BattleArenaBattleRoom_EventScript_TycoonUpNext:: compare VAR_TEMP_2, 1 goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon msgbox BattleFrontier_BattleArenaBattleRoom_Text_NowFaceTycoon, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 -BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: @ 82578D4 +BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: message BattleFrontier_BattleArenaBattleRoom_Text_PreparedForTycoon waitmessage call BattleFrontier_EventScript_GetCantRecordBattle @@ -272,7 +272,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: @ 82578D4 case 3, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon -BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord:: @ 825792B +BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta @@ -280,7 +280,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord:: @ 8 case 2, BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon -BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta:: @ 8257961 +BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta:: call BattleFrontier_EventScript_SetBrainObjectGfx applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight @@ -321,14 +321,14 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta:: @ 8257961 applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_YouLookWeakTakeThingsEasy, MSGBOX_DEFAULT -BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver:: @ 8257A3F +BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_IgniteMyPassionForBattle, MSGBOX_DEFAULT call BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver goto BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner -BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver:: @ 8257A5C +BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver:: call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner frontier_getsymbols compare VAR_RESULT, 0 @@ -344,7 +344,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver:: @ 8257A5C msgbox BattleFrontier_BattleArenaBattleRoom_Text_GoingToBeFunNextTime, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon -BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold:: @ 8257AA5 +BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold @@ -358,14 +358,14 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold:: @ 8257AA5 applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_WontAllowHalfheartedEffort, MSGBOX_DEFAULT -BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold:: @ 8257AF8 +BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_LetsGetThisStarted, MSGBOX_DEFAULT call BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold goto BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner -BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold:: @ 8257B15 +BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold:: call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner frontier_getsymbols compare VAR_RESULT, 2 @@ -381,12 +381,12 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold:: @ 8257B15 msgbox BattleFrontier_BattleArenaBattleRoom_Text_IfWeBattleAgainWontLose, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon -BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle:: @ 8257B5E +BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_SetKOTourneyBegin, MSGBOX_DEFAULT call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle return -BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle:: @ 8257B6C +BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle:: closemessage setvar VAR_TEMP_2, 0 frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE @@ -400,7 +400,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle:: @ 8257B6C frontier_resetsketch return -BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner:: @ 8257BA9 +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 @@ -414,39 +414,39 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner:: @ 8257BA9 call BattleFrontier_EventScript_IncrementWinStreak return -BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter: @ 8257BE2 +BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter: walk_right walk_right -BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForwardLong: @ 8257BE4 +BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForwardLong: walk_right -BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward: @ 8257BE5 +BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward: walk_right step_end -BattleFrontier_BattleArenaBattleRoom_Movement_PlayerWalkBackToLine: @ 8257BE7 +BattleFrontier_BattleArenaBattleRoom_Movement_PlayerWalkBackToLine: walk_left walk_left walk_in_place_fastest_right step_end -BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft: @ 8257BEB +BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft: walk_in_place_fastest_up step_end -BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight: @ 8257BED +BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight: walk_in_place_fastest_right step_end -BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter: @ 8257BEF +BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter: walk_left walk_left -BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong: @ 8257BF1 +BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong: walk_left -BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward: @ 8257BF2 +BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward: walk_left step_end -BattleFrontier_BattleArenaBattleRoom_Movement_GretaEnter: @ 8257BF4 +BattleFrontier_BattleArenaBattleRoom_Movement_GretaEnter: walk_fast_left walk_fast_left walk_fast_left @@ -454,7 +454,7 @@ BattleFrontier_BattleArenaBattleRoom_Movement_GretaEnter: @ 8257BF4 walk_fast_left step_end -BattleFrontier_BattleArenaBattleRoom_Movement_OpponentExit: @ 8257BFA +BattleFrontier_BattleArenaBattleRoom_Movement_OpponentExit: walk_right walk_right walk_right @@ -464,30 +464,30 @@ BattleFrontier_BattleArenaBattleRoom_Movement_OpponentExit: @ 8257BFA walk_right step_end -BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown: @ 8257C02 +BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown: disable_jump_landing_ground_effect jump_in_place_down step_end -BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp: @ 8257C05 +BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp: disable_jump_landing_ground_effect jump_in_place_up step_end -BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown: @ 8257C08 +BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown: walk_in_place_fastest_down step_end @ Unused, redundant -BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight2: @ 8257C0A +BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight2: walk_in_place_fastest_right step_end -BattleFrontier_BattleArenaBattleRoom_OnWarp: @ 8257C0C +BattleFrontier_BattleArenaBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects .2byte 0 -BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects:: @ 8257C16 +BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects:: hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM removeobject LOCALID_OPPONENT call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx @@ -495,7 +495,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects:: @ 8257C16 setvar VAR_TEMP_1, 1 end -BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer: @ 8257C30 +BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer: walk_down walk_in_place_fastest_left delay_16 @@ -507,97 +507,97 @@ BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer: @ 8257C30 walk_in_place_fastest_left step_end -BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter: @ 8257C3A +BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter: walk_down walk_in_place_fastest_left step_end -BattleFrontier_BattleArenaBattleRoom_Text_PlayerStepForward: @ 8257C3D +BattleFrontier_BattleArenaBattleRoom_Text_PlayerStepForward: .string "REFEREE: TRAINER {PLAYER}!\n" .string "Step forward, please!$" -BattleFrontier_BattleArenaBattleRoom_Text_OpponentStepForward: @ 8257C68 +BattleFrontier_BattleArenaBattleRoom_Text_OpponentStepForward: .string "REFEREE: TRAINER {STR_VAR_1}!\n" .string "Step forward, please!$" -BattleFrontier_BattleArenaBattleRoom_Text_SetKOTourneyBegin: @ 8257C93 +BattleFrontier_BattleArenaBattleRoom_Text_SetKOTourneyBegin: .string "REFEREE: Set KO Tourney!\n" .string "Begin!$" -BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer: @ 8257CB3 +BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer: .string "REFEREE: The winner is {PLAYER}!$" -BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent: @ 8257CCE +BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent: .string "REFEREE: The winner is {STR_VAR_1}!$" -BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored: @ 8257CE9 +BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored: .string "Your POKéMON will be restored to\n" .string "full health.$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent: @ 8257D17 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent: .string "Next up, your second opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent: @ 8257D50 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent: .string "Next up, your third opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor4thOpponent: @ 8257D88 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor4thOpponent: .string "Next up, your fourth opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor5thOpponent: @ 8257DC1 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor5thOpponent: .string "Next up, your fifth opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor6thOpponent: @ 8257DF9 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor6thOpponent: .string "Next up, your sixth opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor7thOpponent: @ 8257E31 +BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor7thOpponent: .string "Next up, your seventh opponent!\n" .string "Are you ready to move on?$" -BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown: @ 8257E6B +BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown: .string "Would you like to save the game and\n" .string "shut down now?$" -BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge: @ 8257E9E +BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge: .string "Would you like to retire from your\n" .string "Set KO Tourney challenge?$" -BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait: @ 8257EDB +BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait: .string "I am saving your game data.\n" .string "Please wait.$" -BattleFrontier_BattleArenaBattleRoom_Text_RecordLastBattle: @ 8257F04 +BattleFrontier_BattleArenaBattleRoom_Text_RecordLastBattle: .string "Would you like to record your last\n" .string "battle on your FRONTIER PASS?$" -BattleFrontier_BattleArenaBattleRoom_Text_NowFaceTycoon: @ 8257F45 +BattleFrontier_BattleArenaBattleRoom_Text_NowFaceTycoon: .string "My dear challenger!\p" .string "Your skill level is truly astounding!\p" .string "We now would like you to face our\n" .string "leader, the ARENA TYCOON!$" -BattleFrontier_BattleArenaBattleRoom_Text_PreparedForTycoon: @ 8257FBB +BattleFrontier_BattleArenaBattleRoom_Text_PreparedForTycoon: .string "A battle with the ARENA TYCOON!\n" .string "Are you prepared?$" -BattleFrontier_BattleArenaBattleRoom_Text_MakeWayForGreta: @ 8257FED +BattleFrontier_BattleArenaBattleRoom_Text_MakeWayForGreta: .string "REFEREE: The ARENA TYCOON!\n" .string "Make way for GRETA!$" -BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureChallenger: @ 825801C +BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureChallenger: .string "GRETA: Hey!\n" .string "Howdy!\p" .string "…Wait, are you the challenger?$" -BattleFrontier_BattleArenaBattleRoom_Text_IsThatRight: @ 825804E +BattleFrontier_BattleArenaBattleRoom_Text_IsThatRight: .string "Is that right? Hmm…\n" .string "Hmhm…$" -BattleFrontier_BattleArenaBattleRoom_Text_YouLookWeakTakeThingsEasy: @ 8258068 +BattleFrontier_BattleArenaBattleRoom_Text_YouLookWeakTakeThingsEasy: .string "I don't know how to say it, but…\n" .string "To put it bluntly, you look pretty weak.\l" .string "Are you sure you're up for me?\p" @@ -605,53 +605,53 @@ BattleFrontier_BattleArenaBattleRoom_Text_YouLookWeakTakeThingsEasy: @ 8258068 .string "Well, all right!\n" .string "We'll take things easy to start with!$" -BattleFrontier_BattleArenaBattleRoom_Text_IgniteMyPassionForBattle: @ 825810D +BattleFrontier_BattleArenaBattleRoom_Text_IgniteMyPassionForBattle: .string "Okay! Let's see you ignite my passion\n" .string "for battle!$" -BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureToughAfterAll: @ 825813F +BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureToughAfterAll: .string "GRETA: Ow, wait a second!\n" .string "You are tough after all!\p" .string "I like you!\n" .string "Let's see your FRONTIER PASS.$" -BattleFrontier_BattleArenaBattleRoom_Text_ReceivedGutsSymbol: @ 825819C +BattleFrontier_BattleArenaBattleRoom_Text_ReceivedGutsSymbol: .string "The Guts Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattleArenaBattleRoom_Text_GoingToBeFunNextTime: @ 82581CF +BattleFrontier_BattleArenaBattleRoom_Text_GoingToBeFunNextTime: .string "Hmm…\p" .string "It's going to be fun the next time!\n" .string "I'm looking forward to it!$" -BattleFrontier_BattleArenaBattleRoom_Text_GretaLookingForwardToSeeingAgain: @ 8258213 +BattleFrontier_BattleArenaBattleRoom_Text_GretaLookingForwardToSeeingAgain: .string "GRETA: Hey! Howdy!\n" .string "You finally won your way up to me!\p" .string "I was getting worried waiting for you!\n" .string "I was really looking forward to seeing\l" .string "you again!$" -BattleFrontier_BattleArenaBattleRoom_Text_SoAreYouReady: @ 82582A2 +BattleFrontier_BattleArenaBattleRoom_Text_SoAreYouReady: .string "… … …\n" .string "So, are you ready?$" -BattleFrontier_BattleArenaBattleRoom_Text_WontAllowHalfheartedEffort: @ 82582BB +BattleFrontier_BattleArenaBattleRoom_Text_WontAllowHalfheartedEffort: .string "I won't allow a halfhearted effort!\n" .string "Be ready for a thrashing!$" -BattleFrontier_BattleArenaBattleRoom_Text_LetsGetThisStarted: @ 82582F9 +BattleFrontier_BattleArenaBattleRoom_Text_LetsGetThisStarted: .string "Come on, REFEREE!\n" .string "Let's get this started!$" -BattleFrontier_BattleArenaBattleRoom_Text_GretaBlownAway: @ 8258323 +BattleFrontier_BattleArenaBattleRoom_Text_GretaBlownAway: .string "GRETA: Gaaah! Blown away!\n" .string "Let's see your FRONTIER PASS!$" -BattleFrontier_BattleArenaBattleRoom_Text_GutsSymbolTookGoldenShine: @ 825835B +BattleFrontier_BattleArenaBattleRoom_Text_GutsSymbolTookGoldenShine: .string "The Guts Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattleArenaBattleRoom_Text_IfWeBattleAgainWontLose: @ 8258383 +BattleFrontier_BattleArenaBattleRoom_Text_IfWeBattleAgainWontLose: .string "Arrrgh!\n" .string "This is so infuriating!\p" .string "If we ever battle again, I won't lose!\n" diff --git a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc index 7044caa39149..fe808159e249 100644 --- a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleArenaCorridor_MapScripts:: @ 82573B9 +BattleFrontier_BattleArenaCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleArenaCorridor_OnFrame .byte 0 -BattleFrontier_BattleArenaCorridor_OnFrame: @ 82573BF +BattleFrontier_BattleArenaCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom .2byte 0 -BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom:: @ 82573C9 +BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom:: delay 16 setvar VAR_TEMP_0, 1 applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor @@ -26,7 +26,7 @@ BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom:: @ 82573C9 waitstate end -BattleFrontier_BattleArenaCorridor_Movement_PlayerWalkToDoor: @ 8257417 +BattleFrontier_BattleArenaCorridor_Movement_PlayerWalkToDoor: walk_up walk_left walk_left @@ -49,12 +49,12 @@ BattleFrontier_BattleArenaCorridor_Movement_PlayerWalkToDoor: @ 8257417 walk_right step_end -BattleFrontier_BattleArenaCorridor_Movement_PlayerEnterDoor: @ 825742C +BattleFrontier_BattleArenaCorridor_Movement_PlayerEnterDoor: walk_right set_invisible step_end -BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor: @ 825742F +BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor: walk_left walk_left walk_left @@ -77,16 +77,16 @@ BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor: @ 825742F walk_right step_end -BattleFrontier_BattleArenaCorridor_Movement_AttendantFacePlayer: @ 8257444 +BattleFrontier_BattleArenaCorridor_Movement_AttendantFacePlayer: walk_in_place_fastest_left step_end -BattleFrontier_BattleArenaCorridor_Movement_AttendantMoveOutOfWay: @ 8257446 +BattleFrontier_BattleArenaCorridor_Movement_AttendantMoveOutOfWay: walk_up walk_in_place_fastest_down step_end -BattleFrontier_BattleArenaCorridor_Text_PleaseStepIn: @ 8257449 +BattleFrontier_BattleArenaCorridor_Text_PleaseStepIn: .string "Your battles shall be waged in\n" .string "the next room. Please step in!$" diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index 2c8253456134..287fd4639a2a 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -1,20 +1,20 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleArenaLobby_MapScripts:: @ 8255C36 +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 .byte 0 -BattleFrontier_BattleArenaLobby_OnWarp: @ 8255C41 +BattleFrontier_BattleArenaLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleArenaLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleArenaLobby_EventScript_TurnPlayerNorth:: @ 8255C4B +BattleFrontier_BattleArenaLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleArenaLobby_OnFrame: @ 8255C55 +BattleFrontier_BattleArenaLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge @@ -22,11 +22,11 @@ BattleFrontier_BattleArenaLobby_OnFrame: @ 8255C55 map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleArenaLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus:: @ 8255C7F +BattleFrontier_BattleArenaLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving:: @ 8255C88 +BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattleArenaLobby_Text_DidntSaveBeforeShuttingDown, MSGBOX_DEFAULT closemessage @@ -37,7 +37,7 @@ BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving:: @ 8255C88 releaseall end -BattleFrontier_BattleArenaLobby_EventScript_WonChallenge:: @ 8255CCF +BattleFrontier_BattleArenaLobby_EventScript_WonChallenge:: lockall frontier_isbrain compare VAR_RESULT, TRUE @@ -45,9 +45,9 @@ BattleFrontier_BattleArenaLobby_EventScript_WonChallenge:: @ 8255CCF msgbox BattleFrontier_BattleArenaLobby_Text_CongratsOnSevenWins, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints -BattleFrontier_BattleArenaLobby_EventScript_DefeatedTycoon:: @ 8255CF0 +BattleFrontier_BattleArenaLobby_EventScript_DefeatedTycoon:: msgbox BattleFrontier_BattleArenaLobby_Text_CongratsOnDefeatingTycoon, MSGBOX_DEFAULT -BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints:: @ 8255CF8 +BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattleArenaLobby_Text_PleaseAcceptBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -60,7 +60,7 @@ BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints:: @ 8255CF8 releaseall end -BattleFrontier_BattleArenaLobby_EventScript_LostChallenge:: @ 8255D2B +BattleFrontier_BattleArenaLobby_EventScript_LostChallenge:: lockall message BattleFrontier_BattleArenaLobby_Text_ThankYouWaitWhileSave waitmessage @@ -72,7 +72,7 @@ BattleFrontier_BattleArenaLobby_EventScript_LostChallenge:: @ 8255D2B releaseall end -BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge:: @ 8255D59 +BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge:: frontier_checkairshow special LoadPlayerParty special HealPlayerParty @@ -90,12 +90,12 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge:: @ 8255D59 case 0, BattleFrontier_BattleArenaLobby_EventScript_RecordMatch case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge -BattleFrontier_BattleArenaLobby_EventScript_RecordMatch:: @ 8255DBA +BattleFrontier_BattleArenaLobby_EventScript_RecordMatch:: call BattleFrontier_EventScript_SaveBattle -BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge:: @ 8255DBF +BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge:: return -BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge:: @ 8255DC0 +BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge:: lockall message BattleFrontier_BattleArenaLobby_Text_LookingForwardToArrivalSaveGame waitmessage @@ -106,14 +106,14 @@ BattleFrontier_BattleArenaLobby_EventScript_ResumeChallenge:: @ 8255DC0 setvar VAR_TEMP_0, 255 goto BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge -BattleFrontier_BattleArenaLobby_EventScript_Attendant:: @ 8255DF4 +BattleFrontier_BattleArenaLobby_EventScript_Attendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_ARENA setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES special SavePlayerParty msgbox BattleFrontier_BattleArenaLobby_Text_WelcomeToBattleArena, MSGBOX_DEFAULT -BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge:: @ 8255E0B +BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge:: message BattleFrontier_BattleArenaLobby_Text_WishToTakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -123,7 +123,7 @@ BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge:: @ 8255E0B case 2, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge -BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: @ 8255E47 +BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattleArenaLobby_Text_WhichLevelMode waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -149,7 +149,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: @ 8255E47 case YES, BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge -BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge:: @ 8255EE8 +BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER arena_init @@ -163,7 +163,7 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge:: @ 8255EE8 setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed -BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge:: @ 8255F54 +BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox BattleFrontier_BattleArenaLobby_Text_GuideYouToArena, MSGBOX_DEFAULT @@ -178,36 +178,36 @@ BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge:: @ 8255F54 waitstate end -BattleFrontier_BattleArenaLobby_EventScript_ExplainChallenge:: @ 8255F9F +BattleFrontier_BattleArenaLobby_EventScript_ExplainChallenge:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_AskTakeChallenge -BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons:: @ 8255FAC +BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLv50:: @ 8255FC7 +BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLv50:: msgbox BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_EndCancelChallenge -BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8255FD4 +BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_EndCancelChallenge -BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed:: @ 8255FE1 +BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge -BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge:: @ 8255FF8 +BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge:: @ 8255FFB +BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge, MSGBOX_DEFAULT -BattleFrontier_BattleArenaLobby_EventScript_EndCancelChallenge:: @ 8256003 +BattleFrontier_BattleArenaLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50:: @ 8256005 +BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor waitmovement 0 @@ -220,7 +220,7 @@ BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50:: @ 8256005 waitdooranim return -BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor: @ 8256034 +BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor: walk_up walk_up walk_up @@ -232,12 +232,12 @@ BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor: @ 8256034 walk_up step_end -BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor: @ 825603E +BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor: @ 8256041 +BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor: walk_up walk_up walk_up @@ -250,13 +250,13 @@ BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor: @ 8256041 walk_in_place_fastest_up step_end -BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor: @ 825604C +BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen:: @ 8256050 +BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor waitmovement 0 @@ -269,7 +269,7 @@ BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen:: @ 8256050 waitdooranim return -BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor: @ 825607F +BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor: walk_up walk_up walk_up @@ -280,7 +280,7 @@ BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor: @ 825607F walk_up step_end -BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor: @ 8256088 +BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor: walk_up walk_up walk_up @@ -292,7 +292,7 @@ BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor: @ 8256088 walk_in_place_fastest_up step_end -BattleFrontier_BattleArenaLobby_EventScript_ShowResults:: @ 8256092 +BattleFrontier_BattleArenaLobby_EventScript_ShowResults:: lockall frontier_results FRONTIER_FACILITY_ARENA waitbuttonpress @@ -300,29 +300,29 @@ BattleFrontier_BattleArenaLobby_EventScript_ShowResults:: @ 8256092 releaseall end -BattleFrontier_BattleArenaLobby_EventScript_Youngster:: @ 82560A6 +BattleFrontier_BattleArenaLobby_EventScript_Youngster:: msgbox BattleFrontier_BattleArenaLobby_Text_BadIdeaToNotAttack, MSGBOX_NPC end -BattleFrontier_BattleArenaLobby_EventScript_Man:: @ 82560AF +BattleFrontier_BattleArenaLobby_EventScript_Man:: msgbox BattleFrontier_BattleArenaLobby_Text_LandingHitsWorked, MSGBOX_NPC end -BattleFrontier_BattleArenaLobby_EventScript_Camper:: @ 82560B8 +BattleFrontier_BattleArenaLobby_EventScript_Camper:: msgbox BattleFrontier_BattleArenaLobby_Text_MatchWasDeclaredDraw, MSGBOX_NPC end -BattleFrontier_BattleArenaLobby_EventScript_Woman:: @ 82560C1 +BattleFrontier_BattleArenaLobby_EventScript_Woman:: msgbox BattleFrontier_BattleArenaLobby_Text_OrderOfMonsImportant, MSGBOX_NPC end -BattleFrontier_BattleArenaLobby_EventScript_RulesBoard:: @ 82560CA +BattleFrontier_BattleArenaLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleArenaLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard:: @ 82560D9 +BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading waitmessage multichoice 17, 2, MULTI_BATTLE_ARENA_RULES, FALSE @@ -335,45 +335,45 @@ BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard:: @ 82560D9 case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_ExitRules end -BattleFrontier_BattleArenaLobby_EventScript_BattleRules:: @ 825612C +BattleFrontier_BattleArenaLobby_EventScript_BattleRules:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleArenaLobby_EventScript_MindRules:: @ 825613A +BattleFrontier_BattleArenaLobby_EventScript_MindRules:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainMindRules, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleArenaLobby_EventScript_SkillRules:: @ 8256148 +BattleFrontier_BattleArenaLobby_EventScript_SkillRules:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleArenaLobby_EventScript_BodyRules:: @ 8256156 +BattleFrontier_BattleArenaLobby_EventScript_BodyRules:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleArenaLobby_EventScript_ExitRules:: @ 8256164 +BattleFrontier_BattleArenaLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattleArenaLobby_Text_WelcomeToBattleArena: @ 8256166 +BattleFrontier_BattleArenaLobby_Text_WelcomeToBattleArena: .string "Where the battling spirit of TRAINERS\n" .string "is put to the test!\p" .string "I welcome you to the BATTLE ARENA!\p" .string "I am your guide to the Set KO Tourney!$" -BattleFrontier_BattleArenaLobby_Text_WishToTakeChallenge: @ 82561EA +BattleFrontier_BattleArenaLobby_Text_WishToTakeChallenge: .string "Now, do you wish to take\n" .string "the BATTLE ARENA challenge?$" -BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge: @ 825621F +BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge: .string "We await your challenge on\n" .string "another occasion!$" -BattleFrontier_BattleArenaLobby_Text_ExplainChallenge: @ 825624C +BattleFrontier_BattleArenaLobby_Text_ExplainChallenge: .string "In the BATTLE ARENA, we undertake\n" .string "the Set KO Tourney.\p" .string "All participants enter with a team of\n" @@ -394,20 +394,20 @@ BattleFrontier_BattleArenaLobby_Text_ExplainChallenge: @ 825624C .string "seven TRAINERS in succession,\l" .string "we will present you with Battle Points.$" -BattleFrontier_BattleArenaLobby_Text_OkayToSave: @ 82564CE +BattleFrontier_BattleArenaLobby_Text_OkayToSave: .string "Before showing you to the BATTLE\n" .string "ARENA, you must save. Is that okay?$" -BattleFrontier_BattleArenaLobby_Text_WhichLevelMode: @ 8256513 +BattleFrontier_BattleArenaLobby_Text_WhichLevelMode: .string "The BATTLE ARENA offers two levels\n" .string "of challenge, Level 50 and Open Level.\l" .string "Which is your choice?$" -BattleFrontier_BattleArenaLobby_Text_SelectThreeMons: @ 8256573 +BattleFrontier_BattleArenaLobby_Text_SelectThreeMons: .string "Very well, now select your\n" .string "three POKéMON, please.$" -BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLvOpen: @ 82565A5 +BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLvOpen: .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -419,7 +419,7 @@ BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLvOpen: @ 82565A5 .string "When you have made your preparations,\n" .string "please do return.$" -BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLv50: @ 82566A8 +BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLv50: .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -433,11 +433,11 @@ BattleFrontier_BattleArenaLobby_Text_NotEnoughValidMonsLv50: @ 82566A8 .string "When you have made your preparations,\n" .string "please do return.$" -BattleFrontier_BattleArenaLobby_Text_GuideYouToArena: @ 82567E6 +BattleFrontier_BattleArenaLobby_Text_GuideYouToArena: .string "I shall now guide you to\n" .string "the BATTLE ARENA.$" -BattleFrontier_BattleArenaLobby_Text_DidntSaveBeforeShuttingDown: @ 8256811 +BattleFrontier_BattleArenaLobby_Text_DidntSaveBeforeShuttingDown: .string "My dear challenger!\p" .string "You did not save the game before\n" .string "shutting down, did you?\p" @@ -447,67 +447,67 @@ BattleFrontier_BattleArenaLobby_Text_DidntSaveBeforeShuttingDown: @ 8256811 .string "You may, of course, start with a fresh\n" .string "challenge.$" -BattleFrontier_BattleArenaLobby_Text_CongratsOnSevenWins: @ 82568E7 +BattleFrontier_BattleArenaLobby_Text_CongratsOnSevenWins: .string "We congratulate you for your splendid\n" .string "string of wins over seven TRAINERS!$" -BattleFrontier_BattleArenaLobby_Text_RecordAchievement: @ 8256931 +BattleFrontier_BattleArenaLobby_Text_RecordAchievement: .string "Your achievement will be recorded.\n" .string "Please wait while I save the game.$" @ Unused -BattleFrontier_BattleArenaLobby_Text_PresentYouWithPrize: @ 8256977 +BattleFrontier_BattleArenaLobby_Text_PresentYouWithPrize: .string "In commemoration of your 7-win streak,\n" .string "we present you with this prize.$" @ Unused -BattleFrontier_BattleArenaLobby_Text_ReceivedPrize: @ 82569BE +BattleFrontier_BattleArenaLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" @ Unused -BattleFrontier_BattleArenaLobby_Text_BagFullReturnForPrize: @ 82569D8 +BattleFrontier_BattleArenaLobby_Text_BagFullReturnForPrize: .string "Oh?\n" .string "Your BAG seems to be full.\p" .string "I urge you to clear space and\n" .string "return for your prize.$" -BattleFrontier_BattleArenaLobby_Text_ThankYouWaitWhileSave: @ 8256A2C +BattleFrontier_BattleArenaLobby_Text_ThankYouWaitWhileSave: .string "Thank you so much for participating!\p" .string "Please wait while I save the game.$" -BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge2: @ 8256A74 +BattleFrontier_BattleArenaLobby_Text_AwaitAnotherChallenge2: .string "We await your challenge on\n" .string "another occasion!$" -BattleFrontier_BattleArenaLobby_Text_LookingForwardToArrivalSaveGame: @ 8256AA1 +BattleFrontier_BattleArenaLobby_Text_LookingForwardToArrivalSaveGame: .string "We have been looking forward to\n" .string "your arrival.\p" .string "Before I show you to the BATTLE\n" .string "ARENA, I must save the game.\l" .string "Please wait.$" -BattleFrontier_BattleArenaLobby_Text_RecordLastMatch: @ 8256B19 +BattleFrontier_BattleArenaLobby_Text_RecordLastMatch: .string "Shall I record your last BATTLE ARENA\n" .string "match on your FRONTIER PASS?$" -BattleFrontier_BattleArenaLobby_Text_BadIdeaToNotAttack: @ 8256B5C +BattleFrontier_BattleArenaLobby_Text_BadIdeaToNotAttack: .string "I lost on the REFEREE's decision…\p" .string "I don't think it was a good idea to only\n" .string "use defensive moves and not attack…$" -BattleFrontier_BattleArenaLobby_Text_LandingHitsWorked: @ 8256BCB +BattleFrontier_BattleArenaLobby_Text_LandingHitsWorked: .string "I won in judging!\p" .string "Landing hits consistently on\n" .string "the opponent's POKéMON worked!$" -BattleFrontier_BattleArenaLobby_Text_MatchWasDeclaredDraw: @ 8256C19 +BattleFrontier_BattleArenaLobby_Text_MatchWasDeclaredDraw: .string "Our match was declared a draw.\p" .string "When we ran out of time, both my\n" .string "POKéMON and the opponent's had about\l" .string "the same amount of HP left.$" -BattleFrontier_BattleArenaLobby_Text_OrderOfMonsImportant: @ 8256C9A +BattleFrontier_BattleArenaLobby_Text_OrderOfMonsImportant: .string "In the BATTLE ARENA, the order of\n" .string "POKéMON is totally important.\p" .string "For example, if your first POKéMON\n" @@ -518,13 +518,13 @@ BattleFrontier_BattleArenaLobby_Text_OrderOfMonsImportant: @ 8256C9A .string "I think that will be a good way of\n" .string "making an effective team.$" -BattleFrontier_BattleArenaLobby_Text_RulesAreListed: @ 8256DB8 +BattleFrontier_BattleArenaLobby_Text_RulesAreListed: .string "The Set KO Tourney's rules are listed.$" -BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading: @ 8256DDF +BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules: @ 8256E02 +BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules: .string "The Set KO Tourney has special rules,\n" .string "unlike standard battles.\p" .string "First, one battle lasts only\n" @@ -536,7 +536,7 @@ BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules: @ 8256E02 .string "Also, a POKéMON cannot be switched out\n" .string "until its battle's outcome is decided.$" -BattleFrontier_BattleArenaLobby_Text_ExplainMindRules: @ 8256F43 +BattleFrontier_BattleArenaLobby_Text_ExplainMindRules: .string "The first judging factor is “Mind.”\n" .string "This factor evaluates how aggressive\l" .string "the battlers were.\p" @@ -544,7 +544,7 @@ BattleFrontier_BattleArenaLobby_Text_ExplainMindRules: @ 8256F43 .string "the TRAINERS ordered the use of\l" .string "offensive moves.$" -BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules: @ 8256FF2 +BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules: .string "The second judging factor is “Skill.”\n" .string "This factor evaluates how effectively\l" .string "POKéMON moves were used.\p" @@ -563,7 +563,7 @@ BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules: @ 8256FF2 .string "hit with a move, its Skill rating will not\l" .string "go down.$" -BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules: @ 8257202 +BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules: .string "The third judging factor is “Body.”\n" .string "This factor is based on how much HP\l" .string "remained at the end of a battle.\p" @@ -571,13 +571,13 @@ BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules: @ 8257202 .string "HP a POKéMON had at the start of\l" .string "battle, and what remained at the end.$" -BattleFrontier_BattleArenaLobby_Text_CongratsOnDefeatingTycoon: @ 82572D9 +BattleFrontier_BattleArenaLobby_Text_CongratsOnDefeatingTycoon: .string "A victory snatched from the ARENA\n" .string "TYCOON, and a seven-TRAINER sweep!\p" .string "We congratulate you on your most\n" .string "splendid challenge!$" -BattleFrontier_BattleArenaLobby_Text_PleaseAcceptBattlePoints: @ 8257353 +BattleFrontier_BattleArenaLobby_Text_PleaseAcceptBattlePoints: .string "My dear challenger, in recognition of\n" .string "your indefatigable spirit, please\l" .string "accept these Battle Point(s).$" diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index f9cc466a265e..b092d560349e 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -5,7 +5,7 @@ .set LOCALID_PLAYER, 13 .set LOCALID_OPPONENT, 15 -BattleFrontier_BattleDomeBattleRoom_MapScripts:: @ 824BC9C +BattleFrontier_BattleDomeBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleDomeBattleRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeBattleRoom_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleDomeBattleRoom_OnWarp @@ -16,7 +16,7 @@ BattleFrontier_BattleDomeBattleRoom_MapScripts:: @ 824BC9C .set DRAW_TRAINER, 1 .set DRAW_TUCKER, 2 -BattleFrontier_BattleDomeBattleRoom_OnTransition: @ 824BCB1 +BattleFrontier_BattleDomeBattleRoom_OnTransition: dome_setopponentgfx frontier_get FRONTIER_DATA_BATTLE_NUM copyvar VAR_TEMP_F, VAR_RESULT @@ -25,7 +25,7 @@ BattleFrontier_BattleDomeBattleRoom_OnTransition: @ 824BCB1 call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx end -BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx:: @ 824BCDC +BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale @@ -33,19 +33,19 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx:: @ 824BCDC goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxFemale return -BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale:: @ 824BCF4 +BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxFemale:: @ 824BCFA +BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -BattleFrontier_BattleDomeBattleRoom_OnFrame: @ 824BD00 +BattleFrontier_BattleDomeBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom:: @ 824BD0A +BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom:: lockall call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum compare VAR_RESULT, DOME_ROUND1 @@ -60,13 +60,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom:: @ 824BD0A goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter compare VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker -BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter:: @ 824BD4E +BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter:: applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnter goto BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer -BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker:: @ 824BD5A +BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker:: applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker -BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer:: @ 824BD61 +BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer:: playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround waitmovement 0 @@ -74,7 +74,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer:: @ 824BD6 goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent compare VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTucker -BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent:: @ 824BD82 +BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent:: dome_getopponentname msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTrainer, MSGBOX_DEFAULT closemessage @@ -92,7 +92,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent:: @ 824BD82 case B_OUTCOME_LOST, BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent case B_OUTCOME_FORFEITED, BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent setvar VAR_TEMP_2, DRAW_TRAINER -BattleFrontier_BattleDomeBattleRoom_EventScript_Draw:: @ 824BDF7 +BattleFrontier_BattleDomeBattleRoom_EventScript_Draw:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_RefereeDecisionPleaseWait, MSGBOX_DEFAULT closemessage playse SE_M_ENCORE2 @@ -110,7 +110,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_Draw:: @ 824BDF7 dome_compareseeds switch VAR_RESULT case 1, BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent -BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent:: @ 824BE4F +BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent:: applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown waitmovement 0 dome_getopponentname @@ -123,30 +123,30 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent:: @ 824BE4F playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround delay 60 -BattleFrontier_BattleDomeBattleRoom_EventScript_LostTourney:: @ 824BE8D +BattleFrontier_BattleDomeBattleRoom_EventScript_LostTourney:: dome_resolvewinners DOME_PLAYER_LOST_MATCH -BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobbyLost:: @ 824BE9A +BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST goto BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon:: @ 824BEB1 +BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon:: frontier_gettrainername 1 message BattleFrontier_BattleDomeBattleRoom_Text_TrainerIsWinner waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWonDraw:: @ 824BEC5 +BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWonDraw:: frontier_gettrainername 0 message BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTrainer waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw:: @ 824BED9 +BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw:: message BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTucker waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent:: @ 824BEE0 +BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent:: applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown waitmovement 0 compare VAR_TEMP_2, NO_DRAW @@ -167,7 +167,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent:: @ 824BEE0 warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 255, 5, 3 waitstate -BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney:: @ 824BF62 +BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney:: applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerApproachAudience waitmovement 0 frontier_get FRONTIER_DATA_LVL_MODE @@ -176,9 +176,9 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney:: @ 824BF62 msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLv50Champ, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeBattleRoom_EventScript_CelebrateWin -BattleFrontier_BattleDomeBattleRoom_EventScript_WonLvOpenTourney:: @ 824BF96 +BattleFrontier_BattleDomeBattleRoom_EventScript_WonLvOpenTourney:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLvOpenChamp, MSGBOX_DEFAULT -BattleFrontier_BattleDomeBattleRoom_EventScript_CelebrateWin:: @ 824BF9E +BattleFrontier_BattleDomeBattleRoom_EventScript_CelebrateWin:: special DoDomeConfetti playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround @@ -186,15 +186,15 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_CelebrateWin:: @ 824BF9E frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON goto BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWon:: @ 824BFC3 +BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWon:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsWinner, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw:: @ 824BFCC +BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerPlayer, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayer:: @ 824BFD5 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayer:: dome_get DOME_DATA_ATTEMPTED_CHALLENGE compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt @@ -207,7 +207,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayer:: @ 824BFD5 goto BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt:: @ 824C023 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt:: call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptRound1 @@ -216,27 +216,27 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt:: @ 8 case DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptFinal return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptRound1:: @ 824C05A +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptRound1:: message BattleFrontier_BattleDomeBattleRoom_Text_BrightNewHope waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptRound2:: @ 824C061 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptRound2:: message BattleFrontier_BattleDomeBattleRoom_Text_RisingStar waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptSemifinal:: @ 824C068 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptSemifinal:: message BattleFrontier_BattleDomeBattleRoom_Text_WillTheyRaceToChampionship waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptFinal:: @ 824C06F +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttemptFinal:: message BattleFrontier_BattleDomeBattleRoom_Text_CanAchieveChampionFirstTry waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWon:: @ 824C076 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWon:: call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonRound1 @@ -245,27 +245,27 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWon:: @ 824C0 case DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonFinal return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonRound1:: @ 824C0AD +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonRound1:: message BattleFrontier_BattleDomeBattleRoom_Text_CanLossBeAvenged waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonRound2:: @ 824C0B4 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonRound2:: message BattleFrontier_BattleDomeBattleRoom_Text_OnFireForChampionship waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonSemifinal:: @ 824C0BB +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonSemifinal:: message BattleFrontier_BattleDomeBattleRoom_Text_WinHereAdvancesToFinal waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonFinal:: @ 824C0C2 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonFinal:: message BattleFrontier_BattleDomeBattleRoom_Text_WillLongHeldDreamComeTrue waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion:: @ 824C0C9 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion:: compare VAR_TEMP_F, DOME_FINAL goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker switch VAR_TEMP_E @@ -273,7 +273,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion:: @ 824C0 case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerGold case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerGold -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker:: @ 824C105 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker:: call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionRound1 @@ -282,35 +282,35 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker:: case DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionFinal return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionRound1:: @ 824C13C +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionRound1:: message BattleFrontier_BattleDomeBattleRoom_Text_TheInvincibleChampion waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionRound2:: @ 824C143 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionRound2:: message BattleFrontier_BattleDomeBattleRoom_Text_CanAnyoneHopeToBeatTrainer waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionSemifinal:: @ 824C14A +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionSemifinal:: message BattleFrontier_BattleDomeBattleRoom_Text_DoBattlesExistSolelyForTrainer waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionFinal:: @ 824C151 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionFinal:: message BattleFrontier_BattleDomeBattleRoom_Text_CurrentChampAimingToRetainTitle waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerSilver:: @ 824C158 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerSilver:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_FeelGlowOfTrueMaster, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerGold:: @ 824C161 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerGold:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_CanWinStreakBeStretched, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreak:: @ 824C16A +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreak:: call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakRound1 @@ -319,44 +319,44 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreak:: @ 8 case DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakFinal return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakRound1:: @ 824C1A1 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakRound1:: message BattleFrontier_BattleDomeBattleRoom_Text_FormerChampHasReturned waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakRound2:: @ 824C1A8 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakRound2:: message BattleFrontier_BattleDomeBattleRoom_Text_FormerToughnessReturned waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakSemifinal:: @ 824C1AF +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakSemifinal:: message BattleFrontier_BattleDomeBattleRoom_Text_WillDoExpectedAdvanceToFinals waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakFinal:: @ 824C1B6 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreakFinal:: message BattleFrontier_BattleDomeBattleRoom_Text_WillFormerChampRegainGlory waitmessage return -BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum:: @ 824C1BD +BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum:: frontier_get FRONTIER_DATA_BATTLE_NUM return -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTucker:: @ 824C1CB +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTucker:: switch VAR_TEMP_E case FRONTIER_BRAIN_SILVER, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerSilver case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerGold case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerGold -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerSilver:: @ 824C1FC +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerSilver:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_MakeWayForDomeAceTucker, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter -BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerGold:: @ 824C209 +BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerGold:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_LegendHasReturnedDomeAceTucker, MSGBOX_DEFAULT -BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter:: @ 824C211 +BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter:: closemessage applymovement LOCALID_AUDIENCE_TWIN, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance @@ -391,7 +391,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter:: @ 824C211 goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver msgbox BattleFrontier_BattleDomeBattleRoom_Text_TuckerSilverIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: @ 824C2B9 +BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_LetsSeeYourStrategy, MSGBOX_DEFAULT call BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle switch VAR_RESULT @@ -415,13 +415,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: @ 824C2B9 msgbox BattleFrontier_BattleDomeBattleRoom_Text_WontUnderestimateYouNextTime, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney -BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerGoldIntro:: @ 824C346 +BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerGoldIntro:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold msgbox BattleFrontier_BattleDomeBattleRoom_Text_TuckerGoldIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold:: @ 824C373 +BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_UnleashAllPowerIPossess, MSGBOX_DEFAULT call BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle switch VAR_RESULT @@ -445,7 +445,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold:: @ 824C373 msgbox BattleFrontier_BattleDomeBattleRoom_Text_LookForwardToNextEncounter, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney -BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle:: @ 824C400 +BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTucker, MSGBOX_DEFAULT closemessage applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward2 @@ -454,18 +454,18 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle:: @ 824C400 call BattleFrontier_BattleDomeBattleRoom_EventScript_DoDomeBattle return -BattleFrontier_BattleDomeBattleRoom_EventScript_LostToTucker:: @ 824C420 +BattleFrontier_BattleDomeBattleRoom_EventScript_LostToTucker:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_WinnerIsTucker, MSGBOX_DEFAULT playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround waitse goto BattleFrontier_BattleDomeBattleRoom_EventScript_LostTourney -BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerDraw:: @ 824C436 +BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerDraw:: setvar VAR_TEMP_2, DRAW_TUCKER goto BattleFrontier_BattleDomeBattleRoom_EventScript_Draw -BattleFrontier_BattleDomeBattleRoom_EventScript_DoDomeBattle:: @ 824C440 +BattleFrontier_BattleDomeBattleRoom_EventScript_DoDomeBattle:: frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE special HealPlayerParty setvar VAR_0x8004, SPECIAL_BATTLE_DOME @@ -479,11 +479,11 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_DoDomeBattle:: @ 824C440 dome_resetsketch return -BattleFrontier_BattleDomeBattleRoom_OnWarp: @ 824C481 +BattleFrontier_BattleDomeBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects .2byte 0 -BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects:: @ 824C48B +BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects:: hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM call BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx @@ -501,20 +501,20 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects:: @ 824C48B removeobject LOCALID_OPPONENT addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisibleFacingUp -BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects:: @ 824C4EF +BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects:: end -BattleFrontier_BattleDomeBattleRoom_OnResume: @ 824C4F0 +BattleFrontier_BattleDomeBattleRoom_OnResume: compare VAR_TEMP_9, 1 call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience end -BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience:: @ 824C4FC +BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience:: call BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience return @ Add audience members to supplement the permanent object event audience -BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience:: @ 824C502 +BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience:: compare VAR_TEMP_F, DOME_ROUND1 call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience compare VAR_TEMP_F, DOME_ROUND2 @@ -525,10 +525,10 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience:: @ 824C502 call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience return -BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience:: @ 824C52F +BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience:: return -BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience:: @ 824C530 +BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience:: createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0, 3, DIR_SOUTH @@ -542,7 +542,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience:: @ 824C530 createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1, 3, DIR_SOUTH return -BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience:: @ 824C594 +BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience:: createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0, 3, DIR_SOUTH @@ -566,7 +566,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience:: @ 824C594 createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, DIR_SOUTH return -BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience:: @ 824C652 +BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience:: createvobject OBJ_EVENT_GFX_NINJA_BOY, 0, 2, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_BEAUTY, 2, 15, 0, 3, DIR_SOUTH @@ -601,27 +601,27 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience:: @ 824C652 createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, DIR_SOUTH return -BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible: @ 824C773 +BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible: set_invisible step_end -BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnter: @ 824C775 +BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnter: set_visible delay_16 walk_up walk_up walk_up walk_right -BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward: @ 824C77B +BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward: walk_right step_end -BattleFrontier_BattleDomeBattleRoom_Movement_PlayerApproachAudience: @ 824C77D +BattleFrontier_BattleDomeBattleRoom_Movement_PlayerApproachAudience: walk_up step_end @ Identical to Movement_PlayerEnter -BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker: @ 824C77F +BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker: set_visible delay_16 walk_up @@ -631,20 +631,20 @@ BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker: @ 824C77F walk_right step_end -BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward2: @ 824C787 +BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward2: walk_right step_end -BattleFrontier_BattleDomeBattleRoom_Movement_OpponentStepForward: @ 824C789 +BattleFrontier_BattleDomeBattleRoom_Movement_OpponentStepForward: walk_left step_end -BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisibleFacingUp: @ 824C78B +BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisibleFacingUp: face_up set_invisible step_end -BattleFrontier_BattleDomeBattleRoom_Movement_TuckerEnterAndDance: @ 824C78E +BattleFrontier_BattleDomeBattleRoom_Movement_TuckerEnterAndDance: set_visible walk_up walk_up @@ -753,7 +753,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_TuckerEnterAndDance: @ 824C78E walk_left step_end -BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance: @ 824C7F9 +BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance: delay_16 delay_16 walk_left @@ -803,16 +803,16 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance: @ 8 walk_in_place_fastest_down step_end -BattleFrontier_BattleDomeBattleRoom_Movement_TuckerStepForward: @ 824C829 +BattleFrontier_BattleDomeBattleRoom_Movement_TuckerStepForward: walk_left step_end -BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer: @ 824C82B +BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer: walk_left walk_left step_end -BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround:: @ 824C82E +BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround:: turnvobject 0, DIR_EAST turnvobject 2, DIR_EAST turnvobject 4, DIR_EAST @@ -881,7 +881,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround:: @ 824C82E delay 20 return -BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby:: @ 824C8F5 +BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles @@ -889,13 +889,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby:: @ 824C8F5 waitstate end -BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles:: @ 824C90F +BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles:: warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 255, 17, 11 waitstate end @ On round 1 there's a 50% chance that a specific audience member will walk to his seat -BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos:: @ 824C919 +BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos:: random 2 copyvar VAR_TEMP_D, VAR_RESULT compare VAR_TEMP_D, 0 @@ -904,13 +904,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos:: @ setobjectmovementtype LOCALID_AUDIENCE_WALKING, MOVEMENT_TYPE_FACE_RIGHT return -BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat:: @ 824C938 +BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat:: compare VAR_TEMP_D, 0 goto_if_eq Common_EventScript_NopReturn applymovement LOCALID_AUDIENCE_WALKING, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat return -BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump: @ 824C94B +BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump: delay_16 delay_16 delay_16 @@ -931,7 +931,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump: @ 824C94B enable_jump_landing_ground_effect step_end -BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat: @ 824C95E +BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat: walk_down walk_down walk_right @@ -939,52 +939,52 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat: @ 824C95E walk_in_place_fastest_down step_end -BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter: @ 824C964 +BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter: walk_right walk_right walk_right walk_right step_end -BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerFaceLeft: @ 824C969 +BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerFaceLeft: walk_in_place_fastest_left step_end -BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit: @ 824C96B +BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit: walk_left walk_left walk_left walk_left step_end -BattleFrontier_BattleDomeBattleRoom_Text_PlayerHasEnteredDome: @ 824C970 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerHasEnteredDome: .string "{PLAYER} has entered the BATTLE DOME!$" -BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTrainer: @ 824C990 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTrainer: .string "{STR_VAR_1}\n" .string "match!\p" .string "{PLAYER} versus {STR_VAR_2}!\p" .string "Let the battle begin!$" -BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsWinner: @ 824C9BE +BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsWinner: .string "{PLAYER} is the winner!\n" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_TrainerIsWinner: @ 824C9E1 +BattleFrontier_BattleDomeBattleRoom_Text_TrainerIsWinner: .string "{STR_VAR_2} is the winner!\n" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLv50Champ: @ 824CA04 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLv50Champ: .string "{PLAYER} is the Level 50\n" .string "Battle Tournament Champion!\p" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLvOpenChamp: @ 824CA44 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLvOpenChamp: .string "{PLAYER} is the Open Level\n" .string "Battle Tournament Champion!\p" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_RefereeDecisionPleaseWait: @ 824CA86 +BattleFrontier_BattleDomeBattleRoom_Text_RefereeDecisionPleaseWait: .string "What an unbelievable finish!\n" .string "We have a double knockout!\p" .string "In this event, the Battle Tournament\n" @@ -992,7 +992,7 @@ BattleFrontier_BattleDomeBattleRoom_Text_RefereeDecisionPleaseWait: @ 824CA86 .string "Please wait while the judging\n" .string "is under way.$" -BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTrainer: @ 824CB34 +BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTrainer: .string "The REFEREES have reached\n" .string "a decision!\p" .string "The winner is…\n" @@ -1000,7 +1000,7 @@ BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTrainer: @ 824CB34 .string "The winner is {STR_VAR_1}!\l" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerPlayer: @ 824CB9D +BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerPlayer: .string "The REFEREES have reached\n" .string "a decision!\p" .string "The winner is…\n" @@ -1008,85 +1008,85 @@ BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerPlayer: @ 824CB9D .string "The winner is {PLAYER}!\l" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_BrightNewHope: @ 824CC06 +BattleFrontier_BattleDomeBattleRoom_Text_BrightNewHope: .string "The bright new hope!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_RisingStar: @ 824CC1C +BattleFrontier_BattleDomeBattleRoom_Text_RisingStar: .string "The rising star!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_WillTheyRaceToChampionship: @ 824CC2E +BattleFrontier_BattleDomeBattleRoom_Text_WillTheyRaceToChampionship: .string "Will this TRAINER race to\n" .string "the championship?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_CanAchieveChampionFirstTry: @ 824CC5B +BattleFrontier_BattleDomeBattleRoom_Text_CanAchieveChampionFirstTry: .string "Can the feat of a championship\n" .string "on the first try be achieved?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_CanLossBeAvenged: @ 824CC99 +BattleFrontier_BattleDomeBattleRoom_Text_CanLossBeAvenged: .string "Can the loss of the last match\n" .string "be avenged?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_OnFireForChampionship: @ 824CCC5 +BattleFrontier_BattleDomeBattleRoom_Text_OnFireForChampionship: .string "The TRAINER is on fire for\n" .string "the first championship try!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_WinHereAdvancesToFinal: @ 824CCFD +BattleFrontier_BattleDomeBattleRoom_Text_WinHereAdvancesToFinal: .string "A win here means this TRAINER\n" .string "advances to the final!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_WillLongHeldDreamComeTrue: @ 824CD33 +BattleFrontier_BattleDomeBattleRoom_Text_WillLongHeldDreamComeTrue: .string "Will the long-held dream of\n" .string "a championship finally come true?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_TheInvincibleChampion: @ 824CD72 +BattleFrontier_BattleDomeBattleRoom_Text_TheInvincibleChampion: .string "The invincible champion!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_CanAnyoneHopeToBeatTrainer: @ 824CD8C +BattleFrontier_BattleDomeBattleRoom_Text_CanAnyoneHopeToBeatTrainer: .string "Can anyone hope to beat this\n" .string "TRAINER?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_DoBattlesExistSolelyForTrainer: @ 824CDB3 +BattleFrontier_BattleDomeBattleRoom_Text_DoBattlesExistSolelyForTrainer: .string "Do battles exist solely for\n" .string "this TRAINER?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_CurrentChampAimingToRetainTitle: @ 824CDDE +BattleFrontier_BattleDomeBattleRoom_Text_CurrentChampAimingToRetainTitle: .string "The current champion aiming to\n" .string "retain the title!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_FormerChampHasReturned: @ 824CE10 +BattleFrontier_BattleDomeBattleRoom_Text_FormerChampHasReturned: .string "The former champion has returned!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_FormerToughnessReturned: @ 824CE33 +BattleFrontier_BattleDomeBattleRoom_Text_FormerToughnessReturned: .string "The former toughness has returned!\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_WillDoExpectedAdvanceToFinals: @ 824CE57 +BattleFrontier_BattleDomeBattleRoom_Text_WillDoExpectedAdvanceToFinals: .string "Will this TRAINER do as expected\n" .string "and advance to the finals?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_WillFormerChampRegainGlory: @ 824CE94 +BattleFrontier_BattleDomeBattleRoom_Text_WillFormerChampRegainGlory: .string "Will the former champ regain\n" .string "lost glory?\p" .string "$" -BattleFrontier_BattleDomeBattleRoom_Text_FeelGlowOfTrueMaster: @ 824CEBE +BattleFrontier_BattleDomeBattleRoom_Text_FeelGlowOfTrueMaster: .string "Feel the glow of a true master!$" -BattleFrontier_BattleDomeBattleRoom_Text_MakeWayForDomeAceTucker: @ 824CEDE +BattleFrontier_BattleDomeBattleRoom_Text_MakeWayForDomeAceTucker: .string "And now… The TRAINER standing in\n" .string "{PLAYER}'s record-setting path…\p" .string "Yes! The one and only!\n" @@ -1094,11 +1094,11 @@ BattleFrontier_BattleDomeBattleRoom_Text_MakeWayForDomeAceTucker: @ 824CEDE .string "Our very own DOME ACE!\l" .string "Make way for TUCKER!$" -BattleFrontier_BattleDomeBattleRoom_Text_SpectatorTuckerChant: @ 824CF7A +BattleFrontier_BattleDomeBattleRoom_Text_SpectatorTuckerChant: .string "Spectators: TUCKER! TUCKER!\n" .string "TUCKER! TUCKER! TUCKER!$" -BattleFrontier_BattleDomeBattleRoom_Text_TuckerSilverIntro: @ 824CFAE +BattleFrontier_BattleDomeBattleRoom_Text_TuckerSilverIntro: .string "TUCKER: Ahahah!\p" .string "Do you hear it? This crowd!\n" .string "They're all itching to see our match!\p" @@ -1110,37 +1110,37 @@ BattleFrontier_BattleDomeBattleRoom_Text_TuckerSilverIntro: @ 824CFAE .string "I, TUCKER the DOME ACE, will bathe you\l" .string "in my brilliant glow!$" -BattleFrontier_BattleDomeBattleRoom_Text_LetsSeeYourStrategy: @ 824D0D9 +BattleFrontier_BattleDomeBattleRoom_Text_LetsSeeYourStrategy: .string "Your strategy!\n" .string "Let's see it!$" -BattleFrontier_BattleDomeBattleRoom_Text_IncredibleVictorIsPlayer: @ 824D0F6 +BattleFrontier_BattleDomeBattleRoom_Text_IncredibleVictorIsPlayer: .string "Unbelievable! It's incredible!\n" .string "The victor is {PLAYER}!$" -BattleFrontier_BattleDomeBattleRoom_Text_WinnerIsTucker: @ 824D127 +BattleFrontier_BattleDomeBattleRoom_Text_WinnerIsTucker: .string "The winner is TUCKER!\n" .string "The DOME ACE has prevailed!\p" .string "Congratulations, TUCKER!$" -BattleFrontier_BattleDomeBattleRoom_Text_SeeYourFrontierPass: @ 824D172 +BattleFrontier_BattleDomeBattleRoom_Text_SeeYourFrontierPass: .string "TUCKER: Rules are rules!\n" .string "Let me see your FRONTIER PASS.$" -BattleFrontier_BattleDomeBattleRoom_Text_ReceivedTacticsSymbol: @ 824D1AA +BattleFrontier_BattleDomeBattleRoom_Text_ReceivedTacticsSymbol: .string "The Tactics Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattleDomeBattleRoom_Text_WontUnderestimateYouNextTime: @ 824D1E0 +BattleFrontier_BattleDomeBattleRoom_Text_WontUnderestimateYouNextTime: .string "… … … … … …\p" .string "I sorely underestimated you. I won't\n" .string "make the same mistake next time…$" -BattleFrontier_BattleDomeBattleRoom_Text_CanWinStreakBeStretched: @ 824D232 +BattleFrontier_BattleDomeBattleRoom_Text_CanWinStreakBeStretched: .string "Can the win streak be stretched?\n" .string "The confidence is there!$" -BattleFrontier_BattleDomeBattleRoom_Text_LegendHasReturnedDomeAceTucker: @ 824D26C +BattleFrontier_BattleDomeBattleRoom_Text_LegendHasReturnedDomeAceTucker: .string "Ladies and gentlemen!\n" .string "Boys, girls, and POKéMON!\p" .string "Finally!\n" @@ -1149,7 +1149,7 @@ BattleFrontier_BattleDomeBattleRoom_Text_LegendHasReturnedDomeAceTucker: @ 824D2 .string "Our very own DOME ACE!\l" .string "It's none other than TUCKER!$" -BattleFrontier_BattleDomeBattleRoom_Text_TuckerGoldIntro: @ 824D319 +BattleFrontier_BattleDomeBattleRoom_Text_TuckerGoldIntro: .string "TUCKER: Ah…\n" .string "The pummeling roar of the crowd…\l" .string "Their furnace-like heat of excitement…\l" @@ -1161,22 +1161,22 @@ BattleFrontier_BattleDomeBattleRoom_Text_TuckerGoldIntro: @ 824D319 .string "Brighter and more brilliant!\l" .string "I must light all that gather here!$" -BattleFrontier_BattleDomeBattleRoom_Text_UnleashAllPowerIPossess: @ 824D43E +BattleFrontier_BattleDomeBattleRoom_Text_UnleashAllPowerIPossess: .string "I will unleash all the power that\n" .string "I possess! Right here and now!$" -BattleFrontier_BattleDomeBattleRoom_Text_NeverLostWhenPowerUnleashed: @ 824D47F +BattleFrontier_BattleDomeBattleRoom_Text_NeverLostWhenPowerUnleashed: .string "TUCKER: You're genuinely fantastic!\p" .string "Never before! I haven't ever lost in the\n" .string "times I've had to unleash my power.\p" .string "Yes, quite fantastic!\n" .string "Your FRONTIER PASS, please?$" -BattleFrontier_BattleDomeBattleRoom_Text_TacticsSymbolTookGoldenShine: @ 824D522 +BattleFrontier_BattleDomeBattleRoom_Text_TacticsSymbolTookGoldenShine: .string "The Tactics Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattleDomeBattleRoom_Text_LookForwardToNextEncounter: @ 824D54D +BattleFrontier_BattleDomeBattleRoom_Text_LookForwardToNextEncounter: .string "You're strong, but above all,\n" .string "you have a unique charm!\p" .string "In you, I see a definite potential for\n" @@ -1185,23 +1185,23 @@ BattleFrontier_BattleDomeBattleRoom_Text_LookForwardToNextEncounter: @ 824D54D .string "our next encounter!$" @ Unused -BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLv50Champ2: @ 824D5F5 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLv50Champ2: .string "{PLAYER} is the Level 50\n" .string "Battle Tournament Champion!\p" .string "Congratulations!$" @ Unused -BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLvOpenChamp2: @ 824D635 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerIsLvOpenChamp2: .string "{PLAYER} is the Open Level\n" .string "Battle Tournament Champion!\p" .string "Congratulations!$" -BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTucker: @ 824D677 +BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTucker: .string "The final match!\p" .string "{PLAYER} versus the DOME ACE, TUCKER!\p" .string "Let the battle begin!$" -BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTucker: @ 824D6BE +BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTucker: .string "The REFEREES have reached\n" .string "a decision!\p" .string "The winner is…\n" diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc index 44db802e8200..2c35779c7e2a 100644 --- a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleDomeCorridor_MapScripts:: @ 824B0FE +BattleFrontier_BattleDomeCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeCorridor_OnFrame .byte 0 -BattleFrontier_BattleDomeCorridor_OnFrame: @ 824B104 +BattleFrontier_BattleDomeCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor .2byte 0 -BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor:: @ 824B10E +BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor:: delay 16 setvar VAR_TEMP_0, 1 frontier_get FRONTIER_DATA_LVL_MODE @@ -26,7 +26,7 @@ BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor:: @ 824B10E waitdooranim goto BattleFrontier_BattleDomeCorridor_EventScript_WarpToPreBattleRoom -BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen:: @ 824B161 +BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen waitmovement 0 @@ -37,14 +37,14 @@ BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen:: @ 824B161 waitmovement 0 closedoor 37, 3 waitdooranim -BattleFrontier_BattleDomeCorridor_EventScript_WarpToPreBattleRoom:: @ 824B18F +BattleFrontier_BattleDomeCorridor_EventScript_WarpToPreBattleRoom:: waitmovement 0 setvar VAR_0x8006, 0 warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 255, 5, 7 waitstate end -BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50: @ 824B1A1 +BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50: walk_up walk_left walk_left @@ -59,13 +59,13 @@ BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50: @ 824B1A1 walk_in_place_fastest_up step_end -BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLv50: @ 824B1AE +BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLv50: walk_up walk_up set_invisible step_end -BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLv50: @ 824B1B2 +BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLv50: walk_left walk_left walk_left @@ -79,12 +79,12 @@ BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLv50: @ 824B1B2 walk_up step_end -BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLv50: @ 824B1BE +BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLv50: walk_up set_invisible step_end -BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen: @ 824B1C1 +BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen: walk_up walk_right walk_right @@ -103,13 +103,13 @@ BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen: @ 824B1C1 walk_in_place_fastest_up step_end -BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLvOpen: @ 824B1D2 +BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLvOpen: walk_up walk_up set_invisible step_end -BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen: @ 824B1D6 +BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen: walk_right walk_right walk_right @@ -127,13 +127,13 @@ BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen: @ 824B1D6 walk_up step_end -BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLvOpen: @ 824B1E6 +BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLvOpen: walk_up set_invisible step_end @ Unused -BattleFrontier_BattleDomeCorridor_Movement_WalkToBattleRoomMidRight: @ 824B1E9 +BattleFrontier_BattleDomeCorridor_Movement_WalkToBattleRoomMidRight: walk_up walk_right walk_right diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc index 39bca5a3d309..04df6f38c6c5 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc @@ -1,26 +1,26 @@ .set LOCALID_ATTENDANT_SINGLES, 1 .set LOCALID_ATTENDANT_DOUBLES, 6 -BattleFrontier_BattleDomeLobby_MapScripts:: @ 82497E2 +BattleFrontier_BattleDomeLobby_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleDomeLobby_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeLobby_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleDomeLobby_OnWarp .byte 0 -BattleFrontier_BattleDomeLobby_OnResume: @ 82497F2 +BattleFrontier_BattleDomeLobby_OnResume: dome_initresultstree end -BattleFrontier_BattleDomeLobby_OnWarp: @ 82497FB +BattleFrontier_BattleDomeLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleDomeLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleDomeLobby_EventScript_TurnPlayerNorth:: @ 8249805 +BattleFrontier_BattleDomeLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleDomeLobby_OnFrame: @ 824980F +BattleFrontier_BattleDomeLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge @@ -28,11 +28,11 @@ BattleFrontier_BattleDomeLobby_OnFrame: @ 824980F map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleDomeLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus:: @ 8249839 +BattleFrontier_BattleDomeLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving:: @ 8249842 +BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattleDomeLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage @@ -44,7 +44,7 @@ BattleFrontier_BattleDomeLobby_EventScript_QuitWithoutSaving:: @ 8249842 releaseall end -BattleFrontier_BattleDomeLobby_EventScript_WonChallenge:: @ 824989B +BattleFrontier_BattleDomeLobby_EventScript_WonChallenge:: call BattleFrontier_EventScript_IncrementWinStreak lockall frontier_isbrain @@ -53,9 +53,9 @@ BattleFrontier_BattleDomeLobby_EventScript_WonChallenge:: @ 824989B msgbox BattleFrontier_BattleDomeLobby_Text_CongratsForWinningTourney, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_GiveBattlePoints -BattleFrontier_BattleDomeLobby_EventScript_DefeatedAce:: @ 82498C1 +BattleFrontier_BattleDomeLobby_EventScript_DefeatedAce:: msgbox BattleFrontier_BattleDomeLobby_Text_CongratsDefeatedTucker, MSGBOX_DEFAULT -BattleFrontier_BattleDomeLobby_EventScript_GiveBattlePoints:: @ 82498C9 +BattleFrontier_BattleDomeLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattleDomeLobby_Text_AwardTheseBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -71,7 +71,7 @@ BattleFrontier_BattleDomeLobby_EventScript_GiveBattlePoints:: @ 82498C9 special HealPlayerParty goto BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle -BattleFrontier_BattleDomeLobby_EventScript_LostChallenge:: @ 8249940 +BattleFrontier_BattleDomeLobby_EventScript_LostChallenge:: lockall msgbox BattleFrontier_BattleDomeLobby_Text_ThankYouForPlaying, MSGBOX_DEFAULT message BattleFrontier_BattleDomeLobby_Text_RecordWillBeSaved @@ -83,7 +83,7 @@ BattleFrontier_BattleDomeLobby_EventScript_LostChallenge:: @ 8249940 dome_set DOME_DATA_ATTEMPTED_CHALLENGE, TRUE special LoadPlayerParty special HealPlayerParty -BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle:: @ 8249991 +BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle:: dome_save 0 playse SE_SAVE waitse @@ -98,16 +98,16 @@ BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle:: @ 8249991 case 0, BattleFrontier_BattleDomeLobby_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_EndChallenge -BattleFrontier_BattleDomeLobby_EventScript_RecordBattle:: @ 82499E4 +BattleFrontier_BattleDomeLobby_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle -BattleFrontier_BattleDomeLobby_EventScript_EndChallenge:: @ 82499E9 +BattleFrontier_BattleDomeLobby_EventScript_EndChallenge:: msgbox BattleFrontier_BattleDomeLobby_Text_HopeToSeeYouAgain, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge:: @ 82499F9 +BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge:: lockall msgbox BattleFrontier_BattleDomeLobby_Text_WeveBeenWaitingForYou, MSGBOX_DEFAULT message BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge2 @@ -119,7 +119,7 @@ BattleFrontier_BattleDomeLobby_EventScript_ResumeChallenge:: @ 82499F9 setvar VAR_TEMP_0, 255 goto BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge -BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendant:: @ 8249A35 +BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_DOME @@ -127,7 +127,7 @@ BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendant:: @ 8249A35 goto BattleFrontier_BattleDomeLobby_EventScript_AttendantWelcome end -BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendant:: @ 8249A47 +BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_DOME @@ -135,13 +135,13 @@ BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendant:: @ 8249A47 goto BattleFrontier_BattleDomeLobby_EventScript_AttendantWelcome end -BattleFrontier_BattleDomeLobby_EventScript_AttendantWelcome:: @ 8249A59 +BattleFrontier_BattleDomeLobby_EventScript_AttendantWelcome:: special SavePlayerParty compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_WelcomeDoubles -BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: @ 8249A72 +BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_TakeSinglesChallenge compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -154,7 +154,7 @@ BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: @ 8249A72 case 2, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge -BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: @ 8249ABF +BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattleDomeLobby_Text_WhichLevelMode waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -180,7 +180,7 @@ BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: @ 8249ABF case YES, BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge -BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge:: @ 8249B60 +BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER dome_init @@ -194,7 +194,7 @@ BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge:: @ 8249B60 compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed dome_inittrainers -BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: @ 8249BC2 +BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE dome_settrainers @@ -207,39 +207,39 @@ BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: @ 8249BC2 waitstate end -BattleFrontier_BattleDomeLobby_EventScript_ExplainChallenge:: @ 8249BFA +BattleFrontier_BattleDomeLobby_EventScript_ExplainChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_ExplainSinglesChallenge compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_ExplainDoublesChallenge goto BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge -BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMons:: @ 8249C15 +BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLv50:: @ 8249C30 +BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLv50:: msgbox BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge -BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8249C3D +BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge -BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed:: @ 8249C4A +BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge -BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge:: @ 8249C61 +BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge:: @ 8249C64 +BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattleDomeLobby_Text_HopeToSeeYouAgain, MSGBOX_DEFAULT -BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge:: @ 8249C6C +BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor:: @ 8249C6E +BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -264,63 +264,63 @@ BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor:: @ 8249C6E waitdooranim return -BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor:: @ 8249CDD +BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor:: applymovement LOCALID_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor return -BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantWalkToDoor:: @ 8249CE5 +BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantWalkToDoor:: applymovement LOCALID_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor return -BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantEnterDoor:: @ 8249CED +BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantEnterDoor:: applymovement LOCALID_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor return -BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantEnterDoor:: @ 8249CF5 +BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantEnterDoor:: applymovement LOCALID_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor return -BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles:: @ 8249CFD +BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles:: msgbox BattleFrontier_BattleDomeLobby_Text_WelcomeSingleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeLobby_EventScript_WelcomeDoubles:: @ 8249D06 +BattleFrontier_BattleDomeLobby_EventScript_WelcomeDoubles:: msgbox BattleFrontier_BattleDomeLobby_Text_WelcomeDoubleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeLobby_EventScript_TakeSinglesChallenge:: @ 8249D0F +BattleFrontier_BattleDomeLobby_EventScript_TakeSinglesChallenge:: message BattleFrontier_BattleDomeLobby_Text_TakeSinglesChallenge return -BattleFrontier_BattleDomeLobby_EventScript_TakeDoublesChallenge:: @ 8249D15 +BattleFrontier_BattleDomeLobby_EventScript_TakeDoublesChallenge:: message BattleFrontier_BattleDomeLobby_Text_TakeDoublesChallenge return -BattleFrontier_BattleDomeLobby_EventScript_ExplainSinglesChallenge:: @ 8249D1B +BattleFrontier_BattleDomeLobby_EventScript_ExplainSinglesChallenge:: msgbox BattleFrontier_BattleDomeLobby_Text_ExplainSinglesChallenge, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeLobby_EventScript_ExplainDoublesChallenge:: @ 8249D24 +BattleFrontier_BattleDomeLobby_EventScript_ExplainDoublesChallenge:: msgbox BattleFrontier_BattleDomeLobby_Text_ExplainDoublesChallenge, MSGBOX_DEFAULT return -BattleFrontier_BattleDomeLobby_EventScript_OpenSinglesDoor:: @ 8249D2D +BattleFrontier_BattleDomeLobby_EventScript_OpenSinglesDoor:: opendoor 5, 4 return -BattleFrontier_BattleDomeLobby_EventScript_OpenDoublesDoor:: @ 8249D33 +BattleFrontier_BattleDomeLobby_EventScript_OpenDoublesDoor:: opendoor 17, 4 return -BattleFrontier_BattleDomeLobby_EventScript_CloseSinglesDoor:: @ 8249D39 +BattleFrontier_BattleDomeLobby_EventScript_CloseSinglesDoor:: closedoor 5, 4 return -BattleFrontier_BattleDomeLobby_EventScript_CloseDoublesDoor:: @ 8249D3F +BattleFrontier_BattleDomeLobby_EventScript_CloseDoublesDoor:: closedoor 17, 4 return -BattleFrontier_BattleDomeLobby_Movement_WalkToDoor: @ 8249D45 +BattleFrontier_BattleDomeLobby_Movement_WalkToDoor: walk_up walk_up walk_up @@ -328,18 +328,18 @@ BattleFrontier_BattleDomeLobby_Movement_WalkToDoor: @ 8249D45 walk_up step_end -BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor: @ 8249D4B +BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -BattleFrontier_BattleDomeLobby_Movement_PlayerEnterDoor: @ 8249D4E +BattleFrontier_BattleDomeLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -BattleFrontier_BattleDomeLobby_EventScript_ShowSinglesResults:: @ 8249D52 +BattleFrontier_BattleDomeLobby_EventScript_ShowSinglesResults:: lockall frontier_results FRONTIER_FACILITY_DOME, FRONTIER_MODE_SINGLES waitbuttonpress @@ -347,7 +347,7 @@ BattleFrontier_BattleDomeLobby_EventScript_ShowSinglesResults:: @ 8249D52 releaseall end -BattleFrontier_BattleDomeLobby_EventScript_ShowDoublesResults:: @ 8249D6B +BattleFrontier_BattleDomeLobby_EventScript_ShowDoublesResults:: lockall frontier_results FRONTIER_FACILITY_DOME, FRONTIER_MODE_DOUBLES waitbuttonpress @@ -355,7 +355,7 @@ BattleFrontier_BattleDomeLobby_EventScript_ShowDoublesResults:: @ 8249D6B releaseall end -BattleFrontier_BattleDomeLobby_EventScript_ShowPrevTourneyTree:: @ 8249D84 +BattleFrontier_BattleDomeLobby_EventScript_ShowPrevTourneyTree:: dome_get DOME_DATA_PREV_TOURNEY_TYPE compare VAR_RESULT, 0 call_if_eq BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLv50 @@ -370,61 +370,61 @@ BattleFrontier_BattleDomeLobby_EventScript_ShowPrevTourneyTree:: @ 8249D84 waitstate end -BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLv50:: @ 8249DC9 +BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLv50:: msgbox BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLv50, MSGBOX_SIGN return -BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLv50:: @ 8249DD2 +BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLv50:: msgbox BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLv50, MSGBOX_SIGN return -BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLvOpen:: @ 8249DDB +BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLvOpen:: msgbox BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLvOpen, MSGBOX_SIGN return -BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLvOpen:: @ 8249DE4 +BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLvOpen:: msgbox BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLvOpen, MSGBOX_SIGN return -BattleFrontier_BattleDomeLobby_EventScript_Maniac:: @ 8249DED +BattleFrontier_BattleDomeLobby_EventScript_Maniac:: dome_getwinnersname msgbox BattleFrontier_BattleDomeLobby_Text_LastWinnerWasTough, MSGBOX_NPC end -BattleFrontier_BattleDomeLobby_EventScript_Lass:: @ 8249DFE +BattleFrontier_BattleDomeLobby_EventScript_Lass:: msgbox BattleFrontier_BattleDomeLobby_Text_WinnersGainReputation, MSGBOX_NPC end -BattleFrontier_BattleDomeLobby_EventScript_FatMan:: @ 8249E07 +BattleFrontier_BattleDomeLobby_EventScript_FatMan:: msgbox BattleFrontier_BattleDomeLobby_Text_TrashedInFirstRound, MSGBOX_NPC end -BattleFrontier_BattleDomeLobby_EventScript_Man:: @ 8249E10 +BattleFrontier_BattleDomeLobby_EventScript_Man:: msgbox BattleFrontier_BattleDomeLobby_Text_NeedToCheckOpponentCarefully, MSGBOX_NPC end @ A few OutsideWest event scripts are inserted here instead, two of which are unused -BattleFrontier_OutsideWest_EventScript_Man3:: @ 8249E19 +BattleFrontier_OutsideWest_EventScript_Man3:: msgbox BattleFrontier_OutsideWest_Text_LongDreamedAboutBattleFrontier, MSGBOX_NPC end @ Unused -BattleFrontier_OutsideWest_EventScript_BattleDomeSign2:: @ 8249E22 +BattleFrontier_OutsideWest_EventScript_BattleDomeSign2:: msgbox BattleFrontier_OutsideWest_Text_BattleDomeSign2, MSGBOX_NPC end @ Unused -BattleFrontier_OutsideWest_EventScript_UnderConstructionSign:: @ 8249E2B +BattleFrontier_OutsideWest_EventScript_UnderConstructionSign:: msgbox BattleFrontier_OutsideWest_Text_QuestionMarkUnderConstruction, MSGBOX_NPC end -BattleFrontier_BattleDomeLobby_EventScript_RulesBoard:: @ 8249E34 +BattleFrontier_BattleDomeLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleDomeLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard:: @ 8249E43 +BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleDomeLobby_Text_ReadWhichHeading waitmessage multichoice 17, 4, MULTI_BATTLE_DOME_RULES, FALSE @@ -436,40 +436,40 @@ BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard:: @ 8249E43 case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_ExitRules end -BattleFrontier_BattleDomeLobby_EventScript_RulesMatchup:: @ 8249E8B +BattleFrontier_BattleDomeLobby_EventScript_RulesMatchup:: msgbox BattleFrontier_BattleDomeLobby_Text_ExplainMatchupRules, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleDomeLobby_EventScript_RulesTourneyTree:: @ 8249E99 +BattleFrontier_BattleDomeLobby_EventScript_RulesTourneyTree:: msgbox BattleFrontier_BattleDomeLobby_Text_ExplainTourneyTree, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleDomeLobby_EventScript_RulesDoubleKO:: @ 8249EA7 +BattleFrontier_BattleDomeLobby_EventScript_RulesDoubleKO:: msgbox BattleFrontier_BattleDomeLobby_Text_ExplainDoubleKORules, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleDomeLobby_EventScript_ExitRules:: @ 8249EB5 +BattleFrontier_BattleDomeLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattleDomeLobby_Text_WelcomeSingleBattle: @ 8249EB7 +BattleFrontier_BattleDomeLobby_Text_WelcomeSingleBattle: .string "Where the strategies of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE DOME!\p" .string "I am your guide to the SINGLE BATTLE\n" .string "Tournament.$" -BattleFrontier_BattleDomeLobby_Text_TakeSinglesChallenge: @ 8249F3A +BattleFrontier_BattleDomeLobby_Text_TakeSinglesChallenge: .string "Would you like to challenge\n" .string "the SINGLE BATTLE Tournament?$" -BattleFrontier_BattleDomeLobby_Text_HopeToSeeYouAgain: @ 8249F74 +BattleFrontier_BattleDomeLobby_Text_HopeToSeeYouAgain: .string "We hope to see you again.$" -BattleFrontier_BattleDomeLobby_Text_ExplainSinglesChallenge: @ 8249F8E +BattleFrontier_BattleDomeLobby_Text_ExplainSinglesChallenge: .string "The SINGLE BATTLE Tournament\n" .string "is exactly as the name suggests--\l" .string "a tournament of SINGLE BATTLES.\p" @@ -490,20 +490,20 @@ BattleFrontier_BattleDomeLobby_Text_ExplainSinglesChallenge: @ 8249F8E .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge: @ 824A1C6 +BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge: .string "Before I show you to the BATTLE DOME,\n" .string "I must save the data. Is that okay?$" -BattleFrontier_BattleDomeLobby_Text_WhichLevelMode: @ 824A210 +BattleFrontier_BattleDomeLobby_Text_WhichLevelMode: .string "The tournament offers two levels\n" .string "of challenge, Level 50 and Open Level.\l" .string "Which is your choice?$" -BattleFrontier_BattleDomeLobby_Text_SelectThreeMons: @ 824A26E +BattleFrontier_BattleDomeLobby_Text_SelectThreeMons: .string "Now select the three POKéMON that\n" .string "you wish to enter, please.$" -BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLvOpen: @ 824A2AB +BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLvOpen: .string "Excuse me!\p" .string "You don't have three eligible POKéMON.\p" .string "Also, the POKéMON must be holding\n" @@ -511,7 +511,7 @@ BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLvOpen: @ 824A2AB .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLv50: @ 824A353 +BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLv50: .string "Excuse me!\p" .string "You don't have three eligible POKéMON.\p" .string "You must have three different POKéMON\n" @@ -521,63 +521,63 @@ BattleFrontier_BattleDomeLobby_Text_NotEnoughValidMonsLv50: @ 824A353 .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleDomeLobby_Text_ShowYouToBattleDome: @ 824A437 +BattleFrontier_BattleDomeLobby_Text_ShowYouToBattleDome: .string "I will now show you to\n" .string "the BATTLE DOME.$" -BattleFrontier_BattleDomeLobby_Text_DidntSaveBeforeQuitting: @ 824A45F +BattleFrontier_BattleDomeLobby_Text_DidntSaveBeforeQuitting: .string "Excuse me!\p" .string "You didn't save before you quit your\n" .string "challenge last time.\p" .string "Because of that, your challenge so far\n" .string "has been disqualified. Sorry!$" -BattleFrontier_BattleDomeLobby_Text_CongratsForWinningTourney: @ 824A4E9 +BattleFrontier_BattleDomeLobby_Text_CongratsForWinningTourney: .string "Congratulations for winning\n" .string "your Battle Tournament!$" @ Unused -BattleFrontier_BattleDomeLobby_Text_HereIsYourPrize: @ 824A51D +BattleFrontier_BattleDomeLobby_Text_HereIsYourPrize: .string "Here is your prize for your Battle\n" .string "Tournament victory.$" @ Used by Verdanturf Tent -BattleFrontier_BattleDomeLobby_Text_ReceivedPrize: @ 824A554 +BattleFrontier_BattleDomeLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" @ Unused -BattleFrontier_BattleDomeLobby_Text_BagFullMakeRoom: @ 824A56E +BattleFrontier_BattleDomeLobby_Text_BagFullMakeRoom: .string "Oh, your BAG appears to be full.\p" .string "Please make room in your BAG, then come\n" .string "see me.$" -BattleFrontier_BattleDomeLobby_Text_ThankYouForPlaying: @ 824A5BF +BattleFrontier_BattleDomeLobby_Text_ThankYouForPlaying: .string "Thank you for playing!$" -BattleFrontier_BattleDomeLobby_Text_RecordWillBeSaved: @ 824A5D6 +BattleFrontier_BattleDomeLobby_Text_RecordWillBeSaved: .string "Your record will be saved.\n" .string "Please wait.$" -BattleFrontier_BattleDomeLobby_Text_WeveBeenWaitingForYou: @ 824A5FE +BattleFrontier_BattleDomeLobby_Text_WeveBeenWaitingForYou: .string "We've been waiting for you!$" -BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge2: @ 824A61A +BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge2: .string "Before I show you to the BATTLE DOME,\n" .string "I must save the data. Is that okay?$" -BattleFrontier_BattleDomeLobby_Text_WelcomeDoubleBattle: @ 824A664 +BattleFrontier_BattleDomeLobby_Text_WelcomeDoubleBattle: .string "Where the strategies of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE DOME!\p" .string "I am your guide to the DOUBLE BATTLE\n" .string "Tournament.$" -BattleFrontier_BattleDomeLobby_Text_TakeDoublesChallenge: @ 824A6E7 +BattleFrontier_BattleDomeLobby_Text_TakeDoublesChallenge: .string "Would you like to challenge\n" .string "the DOUBLE BATTLE Tournament?$" -BattleFrontier_BattleDomeLobby_Text_ExplainDoublesChallenge: @ 824A721 +BattleFrontier_BattleDomeLobby_Text_ExplainDoublesChallenge: .string "The DOUBLE BATTLE Tournament\n" .string "is exactly as the name suggests--\l" .string "a tournament of DOUBLE BATTLES.\p" @@ -598,23 +598,23 @@ BattleFrontier_BattleDomeLobby_Text_ExplainDoublesChallenge: @ 824A721 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLv50: @ 824A966 +BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLv50: .string "They're the results of the last\n" .string "Level 50 SINGLE BATTLE Tournament.$" -BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLv50: @ 824A9A9 +BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLv50: .string "They're the results of the last\n" .string "Level 50 DOUBLE BATTLE Tournament.$" -BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLvOpen: @ 824A9EC +BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsSinglesLvOpen: .string "They're the results of the last\n" .string "Open Level SINGLE BATTLE Tournament.$" -BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLvOpen: @ 824AA31 +BattleFrontier_BattleDomeLobby_Text_PrevTourneyResultsDoublesLvOpen: .string "They're the results of the last\n" .string "Open Level DOUBLE BATTLE Tournament.$" -BattleFrontier_BattleDomeLobby_Text_LastWinnerWasTough: @ 824AA76 +BattleFrontier_BattleDomeLobby_Text_LastWinnerWasTough: .string "Did you see it?\n" .string "The last Battle Tournament?\p" .string "The winner, {STR_VAR_1}, was seriously\n" @@ -622,21 +622,21 @@ BattleFrontier_BattleDomeLobby_Text_LastWinnerWasTough: @ 824AA76 .string "You should check out the results\n" .string "on the monitor beside the PC.$" -BattleFrontier_OutsideWest_Text_LongDreamedAboutBattleFrontier: @ 824AB06 +BattleFrontier_OutsideWest_Text_LongDreamedAboutBattleFrontier: .string "The BATTLE FRONTIER…\n" .string "I've long dreamed about a place like it.$" @ Functionally unused -BattleFrontier_OutsideWest_Text_BattleDomeSign2: @ 824AB44 +BattleFrontier_OutsideWest_Text_BattleDomeSign2: .string "The BATTLE DOME\n" .string "Become the Unbeatable Superstar!$" @ Functionally unused -BattleFrontier_OutsideWest_Text_QuestionMarkUnderConstruction: @ 824AB75 +BattleFrontier_OutsideWest_Text_QuestionMarkUnderConstruction: .string "The ??????\n" .string "Under Construction!$" -BattleFrontier_BattleDomeLobby_Text_WinnersGainReputation: @ 824AB94 +BattleFrontier_BattleDomeLobby_Text_WinnersGainReputation: .string "When a TRAINER chains tournament\n" .string "wins at the BATTLE DOME, he or she\l" .string "gains a reputation as a star.\p" @@ -645,48 +645,48 @@ BattleFrontier_BattleDomeLobby_Text_WinnersGainReputation: @ 824AB94 .string "A true superstar is a TRAINER who\n" .string "can keep winning tournaments.$" -BattleFrontier_BattleDomeLobby_Text_TrashedInFirstRound: @ 824AC76 +BattleFrontier_BattleDomeLobby_Text_TrashedInFirstRound: .string "I ran into one of the tournament\n" .string "favorites in the very first round.\p" .string "Of course I got trashed…$" -BattleFrontier_BattleDomeLobby_Text_NeedToCheckOpponentCarefully: @ 824ACD3 +BattleFrontier_BattleDomeLobby_Text_NeedToCheckOpponentCarefully: .string "I would've won if I'd kept this POKéMON\n" .string "held in reserve.\p" .string "You need to check your opponent's\n" .string "POKéMON carefully before choosing\l" .string "your battling POKéMON.$" -BattleFrontier_BattleDomeLobby_Text_CongratsDefeatedTucker: @ 824AD67 +BattleFrontier_BattleDomeLobby_Text_CongratsDefeatedTucker: .string "Congratulations!\p" .string "You defeated the DOME ACE and won\n" .string "the Battle Tournament!$" -BattleFrontier_BattleDomeLobby_Text_AwardTheseBattlePoints: @ 824ADB1 +BattleFrontier_BattleDomeLobby_Text_AwardTheseBattlePoints: .string "In recognition of your strategy--\n" .string "a thing of beauty it was, too--\l" .string "we award you these Battle Point(s)!$" -BattleFrontier_BattleDomeLobby_Text_RecordLastMatch: @ 824AE17 +BattleFrontier_BattleDomeLobby_Text_RecordLastMatch: .string "Would you like to record your\n" .string "last BATTLE DOME match on your\l" .string "FRONTIER PASS?$" -BattleFrontier_BattleDomeLobby_Text_RulesAreListed: @ 824AE63 +BattleFrontier_BattleDomeLobby_Text_RulesAreListed: .string "The Battle Tournament rules\n" .string "are listed.$" -BattleFrontier_BattleDomeLobby_Text_ReadWhichHeading: @ 824AE8B +BattleFrontier_BattleDomeLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattleDomeLobby_Text_ExplainMatchupRules: @ 824AEAE +BattleFrontier_BattleDomeLobby_Text_ExplainMatchupRules: .string "The tournament matchups are drawn up\n" .string "based on the toughness of POKéMON\l" .string "held by TRAINERS.\p" .string "The matchups avoid having tough\n" .string "TRAINERS face each other right away.$" -BattleFrontier_BattleDomeLobby_Text_ExplainTourneyTree: @ 824AF4C +BattleFrontier_BattleDomeLobby_Text_ExplainTourneyTree: .string "The tournament chart, or as we call it,\n" .string "the “Tree,” is available for viewing\l" .string "in the Waiting Room from any guide.\p" @@ -697,7 +697,7 @@ BattleFrontier_BattleDomeLobby_Text_ExplainTourneyTree: @ 824AF4C .string "by TRAINERS, and the battle styles of\l" .string "TRAINERS.$" -BattleFrontier_BattleDomeLobby_Text_ExplainDoubleKORules: @ 824B073 +BattleFrontier_BattleDomeLobby_Text_ExplainDoubleKORules: .string "If battling POKéMON faint at the same\n" .string "time--a double KO--in a tournament\l" .string "match, the REFEREES will review\l" diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc index 4499bda92d55..ca441cf1f8dc 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc @@ -1,24 +1,24 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleDomePreBattleRoom_MapScripts:: @ 824B1F9 +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 .byte 0 -BattleFrontier_BattleDomePreBattleRoom_OnWarp: @ 824B204 +BattleFrontier_BattleDomePreBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth:: @ 824B20E +BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleDomePreBattleRoom_OnFrame: @ 824B218 +BattleFrontier_BattleDomePreBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom:: @ 824B222 +BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom:: compare VAR_0x8006, 1 goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE @@ -26,7 +26,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom:: @ 824B222 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter waitmovement 0 lockall -BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: @ 824B24F +BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: call BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage waitmessage switch VAR_RESULT @ No case? @@ -43,7 +43,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: @ 824B case 5, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord:: @ 824B2C1 +BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord:: multichoice 16, 2, MULTI_TOURNEY_NO_RECORD, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo @@ -53,7 +53,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord: case 4, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle:: @ 824B30D +BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -62,18 +62,18 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle:: @ 824B30D case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle:: @ 824B33F +BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge:: @ 824B349 +BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound case YES, BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge:: @ 824B377 +BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -82,11 +82,11 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge:: @ 824B37 case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge:: @ 824B3A9 +BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge:: dome_resolvewinners DOME_PLAYER_RETIRED goto BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobbyLost -BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge:: @ 824B3BB +BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleDomePreBattleRoom_Text_SavingDataPleaseWait waitmessage dome_save CHALLENGE_STATUS_PAUSED @@ -96,21 +96,21 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge:: @ 824B3BB frontier_reset end -BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo:: @ 824B3DD +BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_PlayersNextOpponentIsTrainer, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK dome_showopponentinfo waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree:: @ 824B3F5 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree:: call BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage fadescreen FADE_TO_BLACK dome_showtourneytree waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage:: @ 824B40A +BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage:: frontier_get FRONTIER_DATA_BATTLE_NUM switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound1 @@ -119,23 +119,23 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage:: @ 824B40A case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInFinals return -BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound1:: @ 824B449 +BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound1:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound1, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound2:: @ 824B452 +BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound2:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound2, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInSemifinals:: @ 824B45B +BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInSemifinals:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInSemifinals, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInFinals:: @ 824B464 +BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInFinals:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInFinals, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge:: @ 824B46D +BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge:: message BattleFrontier_BattleDomePreBattleRoom_Text_ChooseTwoMons waitmessage waitbuttonpress @@ -168,7 +168,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge:: @ 824B46D waitstate end -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage:: @ 824B4FB +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage:: frontier_get FRONTIER_DATA_BATTLE_NUM switch VAR_RESULT case DOME_ROUND1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound1 @@ -177,19 +177,19 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage:: @ case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound1:: @ 824B53A +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound1:: message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound1 return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound2:: @ 824B540 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound2:: message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound2 return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForSemifinals:: @ 824B546 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForSemifinals:: message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForSemifinals return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals:: @ 824B54C +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals:: frontier_getbrainstatus switch VAR_RESULT case FRONTIER_BRAIN_SILVER, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver @@ -199,27 +199,27 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals:: @ 824B54C message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForFinals return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver:: @ 824B58B +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver:: goto_if_set FLAG_TEMP_1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilverShort msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver, MSGBOX_DEFAULT setflag FLAG_TEMP_1 return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGold:: @ 824B5A0 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGold:: goto_if_set FLAG_TEMP_1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGoldShort msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGold, MSGBOX_DEFAULT setflag FLAG_TEMP_1 return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilverShort:: @ 824B5B5 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilverShort:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilverShort, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGoldShort:: @ 824B5BE +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGoldShort:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGoldShort, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle:: @ 824B5C7 +BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle:: setvar VAR_TEMP_0, 1 msgbox BattleFrontier_BattleDomePreBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT special LoadPlayerParty @@ -233,7 +233,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle:: @ 824B5C7 waitstate goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound -BattleFrontier_BattleDomePreBattleRoom_EventScript_RoundCompleteMessage:: @ 824B600 +BattleFrontier_BattleDomePreBattleRoom_EventScript_RoundCompleteMessage:: frontier_get FRONTIER_DATA_BATTLE_NUM switch VAR_RESULT case DOME_ROUND2, BattleFrontier_BattleDomePreBattleRoom_EventScript_Round1Complete @@ -241,136 +241,136 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_RoundCompleteMessage:: @ 824B case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_SemifinalsComplete return -BattleFrontier_BattleDomePreBattleRoom_EventScript_Round1Complete:: @ 824B634 +BattleFrontier_BattleDomePreBattleRoom_EventScript_Round1Complete:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_Round1Complete, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_Round2Complete:: @ 824B63D +BattleFrontier_BattleDomePreBattleRoom_EventScript_Round2Complete:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_Round2Complete, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_EventScript_SemifinalsComplete:: @ 824B646 +BattleFrontier_BattleDomePreBattleRoom_EventScript_SemifinalsComplete:: msgbox BattleFrontier_BattleDomePreBattleRoom_Text_SemifinalsComplete, MSGBOX_DEFAULT return -BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside: @ 824B64F +BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside: walk_right face_left step_end -BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter: @ 824B652 +BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor: @ 824B657 +BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor: walk_up step_end -BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor: @ 824B659 +BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor: walk_up set_invisible step_end -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound1: @ 824B65C +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound1: .string "Your 1st-round match is next.\n" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound2: @ 824B689 +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound2: .string "Your 2nd-round match is next.\n" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForSemifinals: @ 824B6B6 +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForSemifinals: .string "Your semifinal match is next.\n" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForFinals: @ 824B6E3 +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForFinals: .string "Your final match is next.\n" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ChooseTwoMons: @ 824B70C +BattleFrontier_BattleDomePreBattleRoom_Text_ChooseTwoMons: .string "Please choose the two POKéMON\n" .string "that are to appear in battle.$" -BattleFrontier_BattleDomePreBattleRoom_Text_RightThisWay: @ 824B748 +BattleFrontier_BattleDomePreBattleRoom_Text_RightThisWay: .string "Right this way, please.$" -BattleFrontier_BattleDomePreBattleRoom_Text_RestoreMonsToFullHealth: @ 824B760 +BattleFrontier_BattleDomePreBattleRoom_Text_RestoreMonsToFullHealth: .string "Thank you for competing!\p" .string "I'll restore your POKéMON to\n" .string "full health.$" -BattleFrontier_BattleDomePreBattleRoom_Text_Round1Complete: @ 824B7A3 +BattleFrontier_BattleDomePreBattleRoom_Text_Round1Complete: .string "All 1st-round matches have been\n" .string "completed.\p" .string "These are the teams that advanced!$" -BattleFrontier_BattleDomePreBattleRoom_Text_Round2Complete: @ 824B7F1 +BattleFrontier_BattleDomePreBattleRoom_Text_Round2Complete: .string "All 2nd-round matches have been\n" .string "completed.\p" .string "These are the teams that advanced!$" -BattleFrontier_BattleDomePreBattleRoom_Text_SemifinalsComplete: @ 824B83F +BattleFrontier_BattleDomePreBattleRoom_Text_SemifinalsComplete: .string "All semifinal matches have been\n" .string "completed.\p" .string "These are the teams that advanced!$" @ Unused -BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForRound2: @ 824B88D +BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForRound2: .string "Congratulations for getting through\n" .string "the 1st round.\p" .string "The 2nd round is next.\n" .string "Are you ready?$" @ Unused -BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForSemifinals: @ 824B8E6 +BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForSemifinals: .string "Congratulations for advancing\n" .string "to the semifinals.\p" .string "The best four teams meet in this round.\n" .string "Are you ready?$" @ Unused -BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForFinals: @ 824B94E +BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForFinals: .string "Congratulations for advancing\n" .string "to the final match.\p" .string "You're one win from the championship.\n" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_PlayersNextOpponentIsTrainer: @ 824B9B5 +BattleFrontier_BattleDomePreBattleRoom_Text_PlayersNextOpponentIsTrainer: .string "{PLAYER}'s next opponent\n" .string "is this TRAINER.$" -BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound1: @ 824B9D9 +BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound1: .string "The tournament is in the 1st round.$" -BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound2: @ 824B9FD +BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound2: .string "The tournament is in the 2nd round.$" -BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInSemifinals: @ 824BA21 +BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInSemifinals: .string "The tournament is in the semifinals.$" -BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInFinals: @ 824BA46 +BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInFinals: .string "The tournament is up to the final.$" -BattleFrontier_BattleDomePreBattleRoom_Text_SaveAndQuitGame: @ 824BA69 +BattleFrontier_BattleDomePreBattleRoom_Text_SaveAndQuitGame: .string "Would you like to save and\n" .string "quit the game?$" -BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge: @ 824BA93 +BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge: .string "Would you like to retire from your\n" .string "Battle Tournament challenge?$" -BattleFrontier_BattleDomePreBattleRoom_Text_SavingDataPleaseWait: @ 824BAD3 +BattleFrontier_BattleDomePreBattleRoom_Text_SavingDataPleaseWait: .string "I am saving your data.\n" .string "Please wait.$" -BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch: @ 824BAF7 +BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch: .string "Should I record your last match\n" .string "on your FRONTIER PASS?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver: @ 824BB2E +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver: .string "Congratulations for advancing\n" .string "to the final match.\p" .string "For the final match, you will challenge\n" @@ -378,19 +378,19 @@ BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver: @ 824BB2E .string "Are you ready?$" @ Identical to ReadyForTuckerSilver -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGold: @ 824BBAC +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGold: .string "Congratulations for advancing\n" .string "to the final match.\p" .string "For the final match, you will challenge\n" .string "the DOME ACE TUCKER.\p" .string "Are you ready?$" -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilverShort: @ 824BC2A +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilverShort: .string "Your final battle against TUCKER is\n" .string "next. Are you ready?$" @ Identical again -BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGoldShort: @ 824BC63 +BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGoldShort: .string "Your final battle against TUCKER is\n" .string "next. Are you ready?$" diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc index f15f6542efb0..367756054f4c 100644 --- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc @@ -7,7 +7,7 @@ .set LOCALID_SCIENTIST_6, 7 .set LOCALID_PLAYER, 8 -BattleFrontier_BattleFactoryBattleRoom_MapScripts:: @ 825ADAB +BattleFrontier_BattleFactoryBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleFactoryBattleRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleFactoryBattleRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleFactoryBattleRoom_OnFrame @@ -16,7 +16,7 @@ BattleFrontier_BattleFactoryBattleRoom_MapScripts:: @ 825ADAB @ 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: @ 825ADBB +BattleFrontier_BattleFactoryBattleRoom_OnTransition: frontier_settrainers checkplayergender compare VAR_RESULT, MALE @@ -29,37 +29,37 @@ BattleFrontier_BattleFactoryBattleRoom_OnTransition: @ 825ADBB goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj end -BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj:: @ 825ADF3 +BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj:: call BattleFrontier_EventScript_SetBrainObjectGfx setobjectxyperm LOCALID_OPPONENT, 7, 9 end -BattleFrontier_BattleFactoryBattleRoom_OnWarp: @ 825AE00 +BattleFrontier_BattleFactoryBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects .2byte 0 -BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects:: @ 825AE0A +BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects:: setvar VAR_TEMP_1, 1 hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects hideobjectat LOCALID_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM -BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects:: @ 825AE24 +BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects:: end -BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale:: @ 825AE25 +BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale:: @ 825AE2B +BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -BattleFrontier_BattleFactoryBattleRoom_OnFrame: @ 825AE31 +BattleFrontier_BattleFactoryBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle:: @ 825AE3B +BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle:: msgbox BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn, MSGBOX_DEFAULT closemessage applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle @@ -70,7 +70,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle:: goto BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent end -BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom:: @ 825AE67 +BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom:: compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom @@ -83,7 +83,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom:: @ 825AE67 addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter waitmovement 0 -BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent:: @ 825AEA7 +BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent:: compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland palace_getopponentintro @@ -99,20 +99,20 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent:: @ 825AEA7 waitstate switch VAR_RESULT case 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent -BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost:: @ 825AEF8 +BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent:: @ 825AF0F +BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent:: factory_get FACTORY_DATA_WIN_STREAK_SWAPS compare VAR_RESULT, MAX_STREAK goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak addvar VAR_RESULT, 1 setorcopyvar VAR_0x8006, VAR_RESULT factory_set FACTORY_DATA_WIN_STREAK_SWAPS @ uses VAR_0x8006 above -BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak:: @ 825AF3E +BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak:: call BattleFrontier_EventScript_IncrementWinStreak -BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum:: @ 825AF43 +BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum:: frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT @@ -121,11 +121,11 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum:: @ 825AF4 setvar VAR_0x8006, 1 warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 255, 8, 8 waitstate -BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon:: @ 825AF85 +BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland:: @ 825AF9C +BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland:: switch VAR_TEMP_F case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver @@ -135,14 +135,14 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland:: @ 825AF9C goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver:: @ 825AFEF +BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver:: msgbox BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn, MSGBOX_DEFAULT call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost -BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver:: @ 825B00C +BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver:: frontier_getsymbols compare VAR_RESULT, 0 goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland @@ -158,20 +158,20 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver:: @ 825B msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NextTimeNoHoldsBarred, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland -BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold:: @ 825B051 +BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold msgbox BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold:: @ 825B07E +BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold:: msgbox BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn, MSGBOX_DEFAULT call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost -BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold:: @ 825B09B +BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold:: frontier_getsymbols compare VAR_RESULT, 2 goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland @@ -187,7 +187,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold:: @ 825B09 msgbox BattleFrontier_BattleFactoryBattleRoom_Text_LastTimeILoseToYou, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland -BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle:: @ 825B0E0 +BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle:: closemessage frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE special HealPlayerParty @@ -197,7 +197,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle:: @ 825B0E0 waitstate return -BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland:: @ 825B105 +BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland:: factory_get FACTORY_DATA_WIN_STREAK_SWAPS compare VAR_RESULT, MAX_STREAK goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak @@ -214,7 +214,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland:: @ 825B105 goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon end -BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom: @ 825B17B +BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom: walk_up walk_up walk_up @@ -223,11 +223,11 @@ BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom: @ 825B17B face_right step_end -BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland: @ 825B182 +BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland: walk_right step_end -BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter: @ 825B184 +BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down @@ -236,14 +236,14 @@ BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter: @ 825B184 face_left step_end -BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle: @ 825B18B +BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle: walk_up walk_up walk_up face_left step_end -BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby:: @ 825B190 +BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles @@ -251,12 +251,12 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby:: @ 825B190 waitstate end -BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles:: @ 825B1AA +BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles:: warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 255, 14, 8 waitstate end -BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle:: @ 825B1B4 +BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle:: applymovement LOCALID_SCIENTIST_1, Common_Movement_WalkInPlaceFastestRight applymovement LOCALID_SCIENTIST_2, Common_Movement_WalkInPlaceFastestRight applymovement LOCALID_SCIENTIST_3, Common_Movement_WalkInPlaceFastestRight @@ -266,11 +266,11 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle:: @ 825B waitmovement 0 return -BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn: @ 825B1E2 +BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn: .string "Hey, hey!\n" .string "Get a move on!$" -BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead: @ 825B1FB +BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead: .string "Hey, my name's NOLAND!\n" .string "I'm basically in charge of this place,\l" .string "which is why I'm the FACTORY HEAD!\p" @@ -287,26 +287,26 @@ BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead: @ 825B1FB .string "conditions as you.\p" .string "I'll be using rental POKéMON, too!$" -BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn: @ 825B3F1 +BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn: .string "Shake out every last bit of your\n" .string "knowledge and bring it on!$" -BattleFrontier_BattleFactoryBattleRoom_Text_NolandLetsSeeFrontierPass: @ 825B42D +BattleFrontier_BattleFactoryBattleRoom_Text_NolandLetsSeeFrontierPass: .string "NOLAND: Smart going!\n" .string "Let's see your FRONTIER PASS.$" -BattleFrontier_BattleFactoryBattleRoom_Text_ReceivedKnowledgeSymbol: @ 825B460 +BattleFrontier_BattleFactoryBattleRoom_Text_ReceivedKnowledgeSymbol: .string "The Knowledge Symbol was embossed\n" .string "on the FRONTIER PASS!$" -BattleFrontier_BattleFactoryBattleRoom_Text_NextTimeNoHoldsBarred: @ 825B498 +BattleFrontier_BattleFactoryBattleRoom_Text_NextTimeNoHoldsBarred: .string "Heh…\n" .string "You're a pretty bright spark…\p" .string "Next time, I'll come after you hard.\n" .string "No holds barred, understand?\p" .string "You keep up your studies!$" -BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime: @ 825B517 +BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime: .string "NOLAND: Hey, hey! How's it going?\n" .string "You keeping up with your studies?\p" .string "…Oh?\p" @@ -315,21 +315,21 @@ BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime: @ 825B517 .string "Now, this should be fun!\n" .string "I'm getting excited, hey!$" -BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn: @ 825B5CF +BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn: .string "All right!\n" .string "Bring it on!$" -BattleFrontier_BattleFactoryBattleRoom_Text_OutOfMyLeagueLetsSeePass: @ 825B5E7 +BattleFrontier_BattleFactoryBattleRoom_Text_OutOfMyLeagueLetsSeePass: .string "NOLAND: What the…\n" .string "You're getting out of my league!\p" .string "Sheesh!\n" .string "Let's see that FRONTIER PASS!$" -BattleFrontier_BattleFactoryBattleRoom_Text_KnowledgeSymbolTookGoldenShine: @ 825B640 +BattleFrontier_BattleFactoryBattleRoom_Text_KnowledgeSymbolTookGoldenShine: .string "The Knowledge Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattleFactoryBattleRoom_Text_LastTimeILoseToYou: @ 825B66D +BattleFrontier_BattleFactoryBattleRoom_Text_LastTimeILoseToYou: .string "Pfft, man!\p" .string "That's absolutely the last time\n" .string "I lose to you!\p" diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc index dfdb7c944e4d..3b11392947b4 100644 --- a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc @@ -1,21 +1,21 @@ .set LOCALID_ATTENDANT_SINGLES, 1 .set LOCALID_ATTENDANT_DOUBLES, 6 -BattleFrontier_BattleFactoryLobby_MapScripts:: @ 82583E8 +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 .byte 0 -BattleFrontier_BattleFactoryLobby_OnWarp: @ 82583F3 +BattleFrontier_BattleFactoryLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleFactoryLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleFactoryLobby_EventScript_TurnPlayerNorth:: @ 82583FD +BattleFrontier_BattleFactoryLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleFactoryLobby_OnFrame: @ 8258407 +BattleFrontier_BattleFactoryLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge @@ -23,11 +23,11 @@ BattleFrontier_BattleFactoryLobby_OnFrame: @ 8258407 map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus:: @ 8258431 +BattleFrontier_BattleFactoryLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving:: @ 825843A +BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattleFactoryLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage @@ -40,7 +40,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving:: @ 825843A releaseall end -BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge:: @ 825849B +BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge:: lockall frontier_isbrain compare VAR_RESULT, TRUE @@ -49,10 +49,10 @@ BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge:: @ 825849B waitmessage goto BattleFrontier_BattleFactoryLobby_EventScript_GiveBattlePoints -BattleFrontier_BattleFactoryLobby_EventScript_DefeatedFactoryHead:: @ 82584BD +BattleFrontier_BattleFactoryLobby_EventScript_DefeatedFactoryHead:: msgbox BattleFrontier_BattleFactoryLobby_Text_CongratsForDefeatingHead, MSGBOX_DEFAULT waitmessage -BattleFrontier_BattleFactoryLobby_EventScript_GiveBattlePoints:: @ 82584C6 +BattleFrontier_BattleFactoryLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattleFactoryLobby_Text_AwardBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -66,7 +66,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_GiveBattlePoints:: @ 82584C6 goto BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle end -BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge:: @ 8258506 +BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge:: lockall message BattleFrontier_BattleFactoryLobby_Text_ReturnMonsSaveResults waitmessage @@ -77,7 +77,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge:: @ 8258506 playse SE_SAVE waitse -BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle:: @ 825853B +BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle:: call BattleFrontier_EventScript_GetCantRecordBattle compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle @@ -89,16 +89,16 @@ BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle:: @ 825853B case 0, BattleFrontier_BattleFactoryLobby_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle -BattleFrontier_BattleFactoryLobby_EventScript_RecordBattle:: @ 825857D +BattleFrontier_BattleFactoryLobby_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle -BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle:: @ 8258582 +BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle:: msgbox BattleFrontier_BattleFactoryLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge:: @ 8258592 +BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge:: lockall message BattleFrontier_BattleFactoryLobby_Text_WaitingForYouToResume waitmessage @@ -110,7 +110,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_ResumeChallenge:: @ 8258592 setvar VAR_0x8006, 2 goto BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge -BattleFrontier_BattleFactoryLobby_EventScript_SinglesAttendant:: @ 82585CB +BattleFrontier_BattleFactoryLobby_EventScript_SinglesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_FACTORY @@ -118,19 +118,19 @@ BattleFrontier_BattleFactoryLobby_EventScript_SinglesAttendant:: @ 82585CB goto BattleFrontier_BattleFactoryLobby_EventScript_Attendant end -BattleFrontier_BattleFactoryLobby_EventScript_DoublesAttendant:: @ 82585DD +BattleFrontier_BattleFactoryLobby_EventScript_DoublesAttendant:: setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_FACTORY setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES goto BattleFrontier_BattleFactoryLobby_EventScript_Attendant end -BattleFrontier_BattleFactoryLobby_EventScript_Attendant:: @ 82585ED +BattleFrontier_BattleFactoryLobby_EventScript_Attendant:: special SavePlayerParty compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForSingleBattle compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForDoubleBattle -BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: @ 8258606 +BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TakeSinglesChallenge compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -143,7 +143,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: @ 8258606 case 2, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge -BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge:: @ 8258653 +BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattleFactoryLobby_Text_WhichLevelMode waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -157,7 +157,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_TryEnterChallenge:: @ 8258653 case YES, BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_LoadPartyAndCancelChallenge -BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge:: @ 82586B9 +BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 factory_init frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING @@ -170,7 +170,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge:: @ 82586B9 compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed setvar VAR_0x8006, 0 -BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge:: @ 825871A +BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge:: special SavePlayerParty msgbox BattleFrontier_BattleFactoryLobby_Text_StepThisWay, MSGBOX_DEFAULT closemessage @@ -186,71 +186,71 @@ BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge:: @ 825871A waitstate end -BattleFrontier_BattleFactoryLobby_EventScript_TalkedToSinglesAttendant:: @ 825875C +BattleFrontier_BattleFactoryLobby_EventScript_TalkedToSinglesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES return -BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant:: @ 8258762 +BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES return -BattleFrontier_BattleFactoryLobby_EventScript_ExplainChallenge:: @ 8258768 +BattleFrontier_BattleFactoryLobby_EventScript_ExplainChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_ExplainSinglesChallenge compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_ExplainDoublesChallenge goto BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge -BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed:: @ 8258783 +BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge -BattleFrontier_BattleFactoryLobby_EventScript_LoadPartyAndCancelChallenge:: @ 825879A +BattleFrontier_BattleFactoryLobby_EventScript_LoadPartyAndCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge:: @ 825879D +BattleFrontier_BattleFactoryLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattleFactoryLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT release end -BattleFrontier_BattleFactoryLobby_Movement_AttendantEnterDoor: @ 82587A7 +BattleFrontier_BattleFactoryLobby_Movement_AttendantEnterDoor: walk_up walk_up walk_up set_invisible step_end -BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor: @ 82587AC +BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForSingleBattle:: @ 82587B1 +BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForSingleBattle:: msgbox BattleFrontier_BattleFactoryLobby_Text_WelcomeForSingleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForDoubleBattle:: @ 82587BA +BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForDoubleBattle:: msgbox BattleFrontier_BattleFactoryLobby_Text_WelcomeForDoubleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryLobby_EventScript_TakeSinglesChallenge:: @ 82587C3 +BattleFrontier_BattleFactoryLobby_EventScript_TakeSinglesChallenge:: message BattleFrontier_BattleFactoryLobby_Text_TakeSinglesChallenge return -BattleFrontier_BattleFactoryLobby_EventScript_TakeDoublesChallenge:: @ 82587C9 +BattleFrontier_BattleFactoryLobby_EventScript_TakeDoublesChallenge:: message BattleFrontier_BattleFactoryLobby_Text_TakeDoublesChallenge return -BattleFrontier_BattleFactoryLobby_EventScript_ExplainSinglesChallenge:: @ 82587CF +BattleFrontier_BattleFactoryLobby_EventScript_ExplainSinglesChallenge:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainSinglesChallenge, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryLobby_EventScript_ExplainDoublesChallenge:: @ 82587D8 +BattleFrontier_BattleFactoryLobby_EventScript_ExplainDoublesChallenge:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainDoublesChallenge, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryLobby_EventScript_ShowSinglesResults:: @ 82587E1 +BattleFrontier_BattleFactoryLobby_EventScript_ShowSinglesResults:: lockall frontier_results FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_SINGLES waitbuttonpress @@ -258,7 +258,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_ShowSinglesResults:: @ 82587E1 releaseall end -BattleFrontier_BattleFactoryLobby_EventScript_ShowDoublesResults:: @ 82587FA +BattleFrontier_BattleFactoryLobby_EventScript_ShowDoublesResults:: lockall frontier_results FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_DOUBLES waitbuttonpress @@ -266,31 +266,31 @@ BattleFrontier_BattleFactoryLobby_EventScript_ShowDoublesResults:: @ 82587FA releaseall end -BattleFrontier_BattleFactoryLobby_EventScript_Woman:: @ 8258813 +BattleFrontier_BattleFactoryLobby_EventScript_Woman:: msgbox BattleFrontier_BattleFactoryLobby_Text_NeedKnowledgeOfMonsMoves, MSGBOX_NPC end -BattleFrontier_BattleFactoryLobby_EventScript_Camper:: @ 825881C +BattleFrontier_BattleFactoryLobby_EventScript_Camper:: msgbox BattleFrontier_BattleFactoryLobby_Text_SwappedForWeakMon, MSGBOX_NPC end -BattleFrontier_BattleFactoryLobby_EventScript_Picnicker:: @ 8258825 +BattleFrontier_BattleFactoryLobby_EventScript_Picnicker:: lock msgbox BattleFrontier_BattleFactoryLobby_Text_NeedToCheckOpponentsMons, MSGBOX_DEFAULT release end -BattleFrontier_BattleFactoryLobby_EventScript_FatMan:: @ 8258830 +BattleFrontier_BattleFactoryLobby_EventScript_FatMan:: msgbox BattleFrontier_BattleFactoryLobby_Text_CantFigureOutStaffHints, MSGBOX_NPC end -BattleFrontier_BattleFactoryLobby_EventScript_RulesBoard:: @ 8258839 +BattleFrontier_BattleFactoryLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleFactoryLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard:: @ 8258848 +BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading waitmessage multichoice 17, 0, MULTI_BATTLE_FACTORY_RULES, FALSE @@ -304,47 +304,47 @@ BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard:: @ 8258848 case MULTI_B_PRESSED, BattleFrontier_BattleFactoryLobby_EventScript_ExitRules end -BattleFrontier_BattleFactoryLobby_EventScript_RulesBasics:: @ 82588A6 +BattleFrontier_BattleFactoryLobby_EventScript_RulesBasics:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainBasicRules, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapPartner:: @ 82588B4 +BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapPartner:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainSwapPartnerRules, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapNumber:: @ 82588C2 +BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapNumber:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNumberRules, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapNotes:: @ 82588D0 +BattleFrontier_BattleFactoryLobby_EventScript_RulesSwapNotes:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNotesRules, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_RulesOpenLv:: @ 82588DE +BattleFrontier_BattleFactoryLobby_EventScript_RulesOpenLv:: msgbox BattleFrontier_BattleFactoryLobby_Text_ExplainOpenLvRules, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleFactoryLobby_EventScript_ExitRules:: @ 82588EC +BattleFrontier_BattleFactoryLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattleFactoryLobby_Text_WelcomeForSingleBattle: @ 82588EE +BattleFrontier_BattleFactoryLobby_Text_WelcomeForSingleBattle: .string "Where the intelligence of TRAINERS\n" .string "is put to the test!\p" .string "Welcome to the BATTLE FACTORY!\p" .string "I am your guide to the Battle Swap\n" .string "Single Tournament.$" -BattleFrontier_BattleFactoryLobby_Text_TakeSinglesChallenge: @ 825897A +BattleFrontier_BattleFactoryLobby_Text_TakeSinglesChallenge: .string "Would you like to take the Battle\n" .string "Swap Single challenge?$" -BattleFrontier_BattleFactoryLobby_Text_ExplainSinglesChallenge: @ 82589B3 +BattleFrontier_BattleFactoryLobby_Text_ExplainSinglesChallenge: .string "The Battle Swap Single Tournament\n" .string "is a SINGLE BATTLE competition using\l" .string "only rental POKéMON.\p" @@ -362,26 +362,26 @@ BattleFrontier_BattleFactoryLobby_Text_ExplainSinglesChallenge: @ 82589B3 .string "If you don't save, you will be\n" .string "disqualified from your challenge.$" -BattleFrontier_BattleFactoryLobby_Text_LookForwardToNextVisit: @ 8258BC5 +BattleFrontier_BattleFactoryLobby_Text_LookForwardToNextVisit: .string "We look forward to your next visit.$" -BattleFrontier_BattleFactoryLobby_Text_WhichLevelMode: @ 8258BE9 +BattleFrontier_BattleFactoryLobby_Text_WhichLevelMode: .string "Which level do you wish to challenge?\n" .string "Level 50 or Open Level?$" -BattleFrontier_BattleFactoryLobby_Text_OkayToSaveBeforeChallenge: @ 8258C27 +BattleFrontier_BattleFactoryLobby_Text_OkayToSaveBeforeChallenge: .string "Before you begin your challenge,\n" .string "I need to save the game. Is that okay?$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_WillHoldMonsForSafekeeping: @ 8258C6F +BattleFrontier_BattleFactoryLobby_Text_WillHoldMonsForSafekeeping: .string "Okay, I will hold your POKéMON for\n" .string "safekeeping while you compete.$" -BattleFrontier_BattleFactoryLobby_Text_StepThisWay: @ 8258CB1 +BattleFrontier_BattleFactoryLobby_Text_StepThisWay: .string "Please step this way.$" -BattleFrontier_BattleFactoryLobby_Text_ReturnMonsSaveResults: @ 8258CC7 +BattleFrontier_BattleFactoryLobby_Text_ReturnMonsSaveResults: .string "Thank you for participating!\p" .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.\p" @@ -389,58 +389,58 @@ BattleFrontier_BattleFactoryLobby_Text_ReturnMonsSaveResults: @ 8258CC7 .string "Please wait.$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_ReturnMons: @ 8258D54 +BattleFrontier_BattleFactoryLobby_Text_ReturnMons: .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.$" -BattleFrontier_BattleFactoryLobby_Text_CongratsSevenWins: @ 8258D93 +BattleFrontier_BattleFactoryLobby_Text_CongratsSevenWins: .string "Congratulations! You've won seven\n" .string "straight Battle Swap matches!$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_AwardBattlePointsForStreak: @ 8258DD3 +BattleFrontier_BattleFactoryLobby_Text_AwardBattlePointsForStreak: .string "In recognition of your 7-win streak,\n" .string "we award you these Battle Point(s).$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_MaxBattlePoints: @ 8258E1C +BattleFrontier_BattleFactoryLobby_Text_MaxBattlePoints: .string "Oh, oh, oh!\p" .string "Your Battle Points are maxed.\p" .string "Please come back after using\n" .string "some Battle Points.$" -BattleFrontier_BattleFactoryLobby_Text_WaitingForYouToResume: @ 8258E77 +BattleFrontier_BattleFactoryLobby_Text_WaitingForYouToResume: .string "We've been waiting for you!\p" .string "Before we resume your challenge,\n" .string "I must save the game.$" -BattleFrontier_BattleFactoryLobby_Text_DidntSaveBeforeQuitting: @ 8258ECA +BattleFrontier_BattleFactoryLobby_Text_DidntSaveBeforeQuitting: .string "I'm sorry to say this, but you didn't\n" .string "save before you quit playing last time.\p" .string "As a result, you have been disqualified\n" .string "from your challenge.$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_WellReturnMons: @ 8258F55 +BattleFrontier_BattleFactoryLobby_Text_WellReturnMons: .string "We'll return your personal POKéMON.$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_ReceivedPrizeItem: @ 8258F79 +BattleFrontier_BattleFactoryLobby_Text_ReceivedPrizeItem: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -BattleFrontier_BattleFactoryLobby_Text_WelcomeForDoubleBattle: @ 8258F93 +BattleFrontier_BattleFactoryLobby_Text_WelcomeForDoubleBattle: .string "Where the intelligence of TRAINERS\n" .string "is put to the test!\p" .string "Welcome to the BATTLE FACTORY!\p" .string "I am your guide to the Battle Swap\n" .string "Double Tournament.$" -BattleFrontier_BattleFactoryLobby_Text_TakeDoublesChallenge: @ 825901F +BattleFrontier_BattleFactoryLobby_Text_TakeDoublesChallenge: .string "Would you like to take the Battle\n" .string "Swap Double challenge?$" -BattleFrontier_BattleFactoryLobby_Text_ExplainDoublesChallenge: @ 8259058 +BattleFrontier_BattleFactoryLobby_Text_ExplainDoublesChallenge: .string "The Battle Swap Double Tournament\n" .string "is a DOUBLE BATTLE competition using\l" .string "only rental POKéMON.\p" @@ -458,28 +458,28 @@ BattleFrontier_BattleFactoryLobby_Text_ExplainDoublesChallenge: @ 8259058 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleFactoryLobby_Text_CongratsForDefeatingHead: @ 825926A +BattleFrontier_BattleFactoryLobby_Text_CongratsForDefeatingHead: .string "Congratulations for defeating\n" .string "the FACTORY HEAD and winning\l" .string "seven matches in a row!$" -BattleFrontier_BattleFactoryLobby_Text_AwardBattlePoints: @ 82592BD +BattleFrontier_BattleFactoryLobby_Text_AwardBattlePoints: .string "In recognition of your wealth of\n" .string "knowledge and keen intelligence,\l" .string "we award you these Battle Point(s).$" -BattleFrontier_BattleFactoryLobby_Text_ExchangeMonsAndSave: @ 8259323 +BattleFrontier_BattleFactoryLobby_Text_ExchangeMonsAndSave: .string "Let me exchange your POKéMON\n" .string "for our rental POKéMON.\p" .string "I need to save the battle data,\n" .string "so please wait.$" -BattleFrontier_BattleFactoryLobby_Text_RecordLastMatch: @ 8259388 +BattleFrontier_BattleFactoryLobby_Text_RecordLastMatch: .string "Would you like to record your last\n" .string "BATTLE FACTORY match on your\l" .string "FRONTIER PASS?$" -BattleFrontier_BattleFactoryLobby_Text_NeedKnowledgeOfMonsMoves: @ 82593D7 +BattleFrontier_BattleFactoryLobby_Text_NeedKnowledgeOfMonsMoves: .string "Hi!\n" .string "You, there!\p" .string "Are you thinking that the events here\n" @@ -491,26 +491,26 @@ BattleFrontier_BattleFactoryLobby_Text_NeedKnowledgeOfMonsMoves: @ 82593D7 .string "about POKéMON and their moves,\l" .string "it will be tough to keep winning.$" -BattleFrontier_BattleFactoryLobby_Text_SwappedForWeakMon: @ 82594E5 +BattleFrontier_BattleFactoryLobby_Text_SwappedForWeakMon: .string "I swapped for a weak POKéMON…\n" .string "I thought it was a good kind to have…\p" .string "They wiped the floor with us…$" -BattleFrontier_BattleFactoryLobby_Text_NeedToCheckOpponentsMons: @ 8259547 +BattleFrontier_BattleFactoryLobby_Text_NeedToCheckOpponentsMons: .string "Things haven't been going my way\n" .string "at all.\p" .string "You need to check your opponent's\n" .string "POKéMON during battle to see if\l" .string "they're any good.$" -BattleFrontier_BattleFactoryLobby_Text_CantFigureOutStaffHints: @ 82595C4 +BattleFrontier_BattleFactoryLobby_Text_CantFigureOutStaffHints: .string "You know how the staff here give you\n" .string "a few hints about your next opponent?\p" .string "Well, I'm a full-grown man, but I have\n" .string "trouble figuring out their hints.$" @ Unused -BattleFrontier_BattleFactoryLobby_Text_RentalMonsAreVaried: @ 8259658 +BattleFrontier_BattleFactoryLobby_Text_RentalMonsAreVaried: .string "Like, I'm really tough, but I get bored\n" .string "really easily, so I just kept swapping\l" .string "and battling over and over.\p" @@ -518,33 +518,33 @@ BattleFrontier_BattleFactoryLobby_Text_RentalMonsAreVaried: @ 8259658 .string "Battle Swap events, I noticed they\l" .string "varied the rental POKéMON.$" -BattleFrontier_BattleFactoryLobby_Text_RulesAreListed: @ 8259721 +BattleFrontier_BattleFactoryLobby_Text_RulesAreListed: .string "The Battle Swap rules are listed.$" -BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading: @ 8259743 +BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattleFactoryLobby_Text_ExplainBasicRules: @ 8259766 +BattleFrontier_BattleFactoryLobby_Text_ExplainBasicRules: .string "In a Battle Swap event, you may use\n" .string "only three POKéMON.\p" .string "Whether you are renting or swapping,\n" .string "your team may not have two or more\l" .string "of the same POKéMON.$" -BattleFrontier_BattleFactoryLobby_Text_ExplainSwapPartnerRules: @ 82597FB +BattleFrontier_BattleFactoryLobby_Text_ExplainSwapPartnerRules: .string "You may swap POKéMON only with\n" .string "the TRAINER you have just defeated.\p" .string "You may swap for only those POKéMON\n" .string "used by the beaten TRAINER.$" -BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNumberRules: @ 825987E +BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNumberRules: .string "After every battle you win, you may\n" .string "swap for one of your defeated\l" .string "opponent's POKéMON.\p" .string "You will not be able to swap POKéMON\n" .string "with the seventh TRAINER in the event.$" -BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNotesRules: @ 8259920 +BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNotesRules: .string "There are two key points to be aware\n" .string "of when swapping POKéMON.\p" .string "First, when swapping, you can't check\n" @@ -556,7 +556,7 @@ BattleFrontier_BattleFactoryLobby_Text_ExplainSwapNotesRules: @ 8259920 .string "This sequence remains unchanged\n" .string "even when swaps are made.$" -BattleFrontier_BattleFactoryLobby_Text_ExplainOpenLvRules: @ 8259A5E +BattleFrontier_BattleFactoryLobby_Text_ExplainOpenLvRules: .string "In the Open Level, the rental POKéMON\n" .string "and the opposing TRAINERS' POKéMON\l" .string "are all Level 100.$" diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index 3d3f2faeee83..ce3cb357c281 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -1,29 +1,29 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleFactoryPreBattleRoom_MapScripts:: @ 8259ABA +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 .byte 0 -BattleFrontier_BattleFactoryPreBattleRoom_OnWarp: @ 8259AC5 +BattleFrontier_BattleFactoryPreBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SetUpObjects .2byte 0 -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SetUpObjects:: @ 8259ACF +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 compare VAR_0x8006, 1 goto_if_ne BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth setobjectxy LOCALID_ATTENDANT, 8, 7 turnobject LOCALID_ATTENDANT, DIR_SOUTH -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth:: @ 8259AEA +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleFactoryPreBattleRoom_OnFrame: @ 8259AEF +BattleFrontier_BattleFactoryPreBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: @ 8259AF9 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: compare VAR_0x8006, 1 goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle setvar VAR_TEMP_0, 1 @@ -45,7 +45,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: @ 8259AF9 factory_setswapped factory_rentmons waitstate -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom:: @ 8259B74 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT closemessage call BattleFrontier_EventScript_GetLvlMode @@ -58,7 +58,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom:: @ 8259B7 waitstate end -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle:: @ 8259BA5 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle:: factory_setopponentmons factory_resethelditems msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons, MSGBOX_DEFAULT @@ -84,11 +84,11 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle:: @ goto BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead end -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent:: @ 8259C13 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY goto_if_ne BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent:: @ 8259C26 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor2ndOpponent @@ -113,7 +113,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent case 3, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8259CC6 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon @@ -121,7 +121,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecor case 2, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle:: @ 8259CFC +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_RecordLatestBattle waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -130,18 +130,18 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRecordBattle:: @ 8259CF case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_RecordBattle:: @ 8259D2E +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskPauseChallenge:: @ 8259D38 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent case YES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge:: @ 8259D66 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -150,7 +150,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge:: @ 825 case 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon:: @ 8259D98 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon:: factory_generateopponentmons factory_getopponentmontype setorcopyvar VAR_0x8005, VAR_RESULT @@ -164,7 +164,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon:: @ 8259D98 case YES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: @ 8259DF2 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: fadescreen FADE_TO_BLACK factory_swapmons waitstate @@ -174,37 +174,37 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: @ 8259DF2 msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8259E1D +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8259E24 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor4thOpponent:: @ 8259E2B +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor4thOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor4thOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor5thOpponent:: @ 8259E32 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor5thOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor5thOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor6thOpponent:: @ 8259E39 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor6thOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor6thOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor7thOpponent:: @ 8259E40 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor7thOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor7thOpponent waitmessage return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge:: @ 8259E47 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait waitmessage factory_save CHALLENGE_STATUS_PAUSED @@ -214,14 +214,14 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge:: @ 8259E47 frontier_reset end -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge:: @ 8259E69 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge:: special SavePlayerParty factory_setparties 0 frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE special CalculatePlayerPartyCount goto BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType:: @ 8259E93 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_InvestigatedUpcomingOpponent, MSGBOX_DEFAULT compare VAR_0x8005, TYPE_NORMAL call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal @@ -261,79 +261,79 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType:: @ call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal:: @ 8259F62 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInNormalType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFighting:: @ 8259F6B +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFighting:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFightingType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFlying:: @ 8259F74 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFlying:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFlyingType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPoison:: @ 8259F7D +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPoison:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPoisonType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGround:: @ 8259F86 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGround:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGroundType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesRock:: @ 8259F8F +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesRock:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInRockType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesBug:: @ 8259F98 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesBug:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInBugType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGhost:: @ 8259FA1 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGhost:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGhostType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesSteel:: @ 8259FAA +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesSteel:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInSteelType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFire:: @ 8259FB3 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFire:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFireType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesWater:: @ 8259FBC +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesWater:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInWaterType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGrass:: @ 8259FC5 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGrass:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGrassType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesElectric:: @ 8259FCE +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesElectric:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInElectricType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPsychic:: @ 8259FD7 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPsychic:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPsychicType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesIce:: @ 8259FE0 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesIce:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInIceType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDragon:: @ 8259FE9 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDragon:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDragonType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark:: @ 8259FF2 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDarkType, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType:: @ 8259FFB +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerHasNoClearFavorite, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle:: @ 825A004 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle:: compare VAR_0x8006, FACTORY_STYLE_NONE call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained compare VAR_0x8006, FACTORY_STYLE_PREPARATION @@ -354,43 +354,43 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle:: @ call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleFlexible return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained:: @ 825A068 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleUnrestrained, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleTotalPreparation:: @ 825A071 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleTotalPreparation:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleTotalPreparation, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleSlowAndSteady:: @ 825A07A +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleSlowAndSteady:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleSlowAndSteady, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleEndurance:: @ 825A083 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleEndurance:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleEndurance, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleHighRisk:: @ 825A08C +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleHighRisk:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleHighRisk, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleWeakenFoe:: @ 825A095 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleWeakenFoe:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleWeakenFoe, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleImpossibleToPredict:: @ 825A09E +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleImpossibleToPredict:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleImpossibleToPredict, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleDependsOnFlow:: @ 825A0A7 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleDependsOnFlow:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleDependsOnFlow, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleFlexible:: @ 825A0B0 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleFlexible:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleFlexible, MSGBOX_DEFAULT return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: @ 825A0B9 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_PreparedToFaceHead waitmessage call BattleFrontier_EventScript_GetCantRecordBattle @@ -404,7 +404,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: @ 825A0B case 3, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord:: @ 825A110 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead @@ -412,7 +412,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord:: case 2, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead:: @ 825A146 +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_CantTellAnythingAboutHead, MSGBOX_DEFAULT msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon, MSGBOX_YESNO switch VAR_RESULT @@ -420,17 +420,17 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead:: @ 825A case YES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLv50:: @ 825A17C +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLv50:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50 return -BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen:: @ 825A18B +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen return -BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom: @ 825A19A +BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom: walk_up walk_up walk_up @@ -438,7 +438,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom: @ 825A19A walk_up step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50: @ 825A1A0 +BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50: walk_up walk_left walk_left @@ -446,7 +446,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50: @ walk_up step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen: @ 825A1A6 +BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen: walk_up walk_right walk_right @@ -454,7 +454,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen: walk_up step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantEnterRoom: @ 825A1AC +BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantEnterRoom: walk_up walk_up walk_up @@ -463,7 +463,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantEnterRoom: @ 825A1AC face_down step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50: @ 825A1B3 +BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50: walk_left walk_left walk_up @@ -471,7 +471,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50: @ set_invisible step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen: @ 825A1B9 +BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen: walk_right walk_right walk_up @@ -479,201 +479,201 @@ BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen: set_invisible step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantMoveToReceiveCall: @ 825A1BF +BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantMoveToReceiveCall: walk_left walk_left walk_left step_end -BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantReturnToPlayer: @ 825A1C3 +BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantReturnToPlayer: walk_right walk_right walk_right face_down step_end -BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection: @ 825A1C8 +BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection: .string "First, we will hold your POKéMON for\n" .string "safekeeping.\p" .string "You may then choose from our\n" .string "selection of POKéMON.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons: @ 825A22D +BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons: .string "Thank you for competing!\n" .string "Let us restore your POKéMON!$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent: @ 825A263 +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent: .string "The 2nd match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent: @ 825A289 +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent: .string "The 3rd match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor4thOpponent: @ 825A2AF +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor4thOpponent: .string "The 4th match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor5thOpponent: @ 825A2D5 +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor5thOpponent: .string "The 5th match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor6thOpponent: @ 825A2FB +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor6thOpponent: .string "The 6th match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor7thOpponent: @ 825A321 +BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor7thOpponent: .string "Finally, the 7th match is next!\n" .string "Are you ready?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame: @ 825A350 +BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame: .string "Would you like to save and quit\n" .string "the game?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge: @ 825A37A +BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge: .string "Would you like to retire from your\n" .string "Battle Swap challenge?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_InvestigatedUpcomingOpponent: @ 825A3B4 +BattleFrontier_BattleFactoryPreBattleRoom_Text_InvestigatedUpcomingOpponent: .string "I've conducted a little investigation\n" .string "about your upcoming opponent.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInNormalType: @ 825A3F8 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInNormalType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the NORMAL type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFireType: @ 825A43E +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFireType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the FIRE type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInWaterType: @ 825A482 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInWaterType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the WATER type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInElectricType: @ 825A4C7 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInElectricType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the ELECTRIC type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGrassType: @ 825A50F +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGrassType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the GRASS type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInIceType: @ 825A554 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInIceType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the ICE type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFightingType: @ 825A597 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFightingType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the FIGHTING type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPoisonType: @ 825A5DF +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPoisonType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the POISON type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGroundType: @ 825A625 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGroundType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the GROUND type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFlyingType: @ 825A66B +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFlyingType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the FLYING type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPsychicType: @ 825A6B1 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInPsychicType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the PSYCHIC type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInBugType: @ 825A6F8 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInBugType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the BUG type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInRockType: @ 825A73B +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInRockType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the ROCK type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGhostType: @ 825A77F +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInGhostType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the GHOST type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDragonType: @ 825A7C4 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDragonType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the DRAGON type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDarkType: @ 825A80A +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDarkType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the DARK type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInSteelType: @ 825A84E +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInSteelType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the STEEL type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerHasNoClearFavorite: @ 825A893 +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerHasNoClearFavorite: .string "The TRAINER appears to have no clear\n" .string "favorites when it comes to type.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleSlowAndSteady: @ 825A8D9 +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleSlowAndSteady: .string "The favorite battle style appears to\n" .string "be slow and steady.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleEndurance: @ 825A912 +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleEndurance: .string "The favorite battle style appears to\n" .string "be one of endurance.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleHighRisk: @ 825A94C +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleHighRisk: .string "The favorite battle style appears to\n" .string "be high risk, high return.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleDependsOnFlow: @ 825A98C +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleDependsOnFlow: .string "The favorite battle style appears to\n" .string "depend on the battle's flow.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleTotalPreparation: @ 825A9CE +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleTotalPreparation: .string "The favorite battle style appears to\n" .string "be one based on total preparation.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleWeakenFoe: @ 825AA16 +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleWeakenFoe: .string "The favorite battle style appears\n" .string "to be weakening the foe to start.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleFlexible: @ 825AA5A +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleFlexible: .string "The favorite battle style appears to\n" .string "be flexibly adaptable to the situation.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleImpossibleToPredict: @ 825AAA7 +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleImpossibleToPredict: .string "The favorite battle style appears to\n" .string "be impossible to predict.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleUnrestrained: @ 825AAE6 +BattleFrontier_BattleFactoryPreBattleRoom_Text_StyleUnrestrained: .string "The favorite battle style appears to\n" .string "be free-spirited and unrestrained.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon: @ 825AB2E +BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon: .string "Before starting the battle, would you\n" .string "like to swap a POKéMON?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete: @ 825AB6C +BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete: .string "Thank you!\n" .string "Your POKéMON swap is complete.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay: @ 825AB96 +BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay: .string "Right this way, please!$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait: @ 825ABAE +BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait: .string "I am saving your data.\n" .string "Please wait.$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_RecordLatestBattle: @ 825ABD2 +BattleFrontier_BattleFactoryPreBattleRoom_Text_RecordLatestBattle: .string "Would you like to record your latest\n" .string "battle on your FRONTIER PASS?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_WaitFewMoments: @ 825AC15 +BattleFrontier_BattleFactoryPreBattleRoom_Text_WaitFewMoments: .string "Excuse me! Excuse me, please!\n" .string "May I get you to wait a few moments?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_UnderstoodSirWillDo: @ 825AC58 +BattleFrontier_BattleFactoryPreBattleRoom_Text_UnderstoodSirWillDo: .string "…Uh-huh? What?! …Whoa!\n" .string "Understood, sir! Will do!$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_MessageFromHeadComeRightNow: @ 825AC89 +BattleFrontier_BattleFactoryPreBattleRoom_Text_MessageFromHeadComeRightNow: .string "Oh, my…\n" .string "Sorry to keep you waiting!\p" .string "I have a message from this facility's\n" @@ -681,10 +681,10 @@ BattleFrontier_BattleFactoryPreBattleRoom_Text_MessageFromHeadComeRightNow: @ 82 .string "He says, “We're going to do it!\n" .string "Come here right now!”$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_PreparedToFaceHead: @ 825AD20 +BattleFrontier_BattleFactoryPreBattleRoom_Text_PreparedToFaceHead: .string "The FACTORY HEAD is demanding you.\n" .string "Are you prepared to face him?$" -BattleFrontier_BattleFactoryPreBattleRoom_Text_CantTellAnythingAboutHead: @ 825AD61 +BattleFrontier_BattleFactoryPreBattleRoom_Text_CantTellAnythingAboutHead: .string "I'm terribly sorry, but I can't tell you\n" .string "anything about the FACTORY HEAD.$" diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index 0ad0a9377329..a838c7eadd94 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -4,7 +4,7 @@ .set LOCALID_DUSCLOPS, 4 .set LOCALID_AZURILL, 5 -BattleFrontier_BattlePalaceBattleRoom_MapScripts:: @ 824F815 +BattleFrontier_BattlePalaceBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePalaceBattleRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePalaceBattleRoom_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePalaceBattleRoom_OnWarp @@ -14,12 +14,12 @@ BattleFrontier_BattlePalaceBattleRoom_MapScripts:: @ 824F815 @ 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: @ 824F825 +BattleFrontier_BattlePalaceBattleRoom_OnTransition: frontier_settrainers call BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx end -BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx:: @ 824F833 +BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxMale @@ -28,21 +28,21 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx:: @ 824F833 return @ The opponent's gfx are set to the players by default -BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxMale:: @ 824F84B +BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxFemale:: @ 824F856 +BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -BattleFrontier_BattlePalaceBattleRoom_OnFrame: @ 824F861 +BattleFrontier_BattlePalaceBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom:: @ 824F86B +BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom:: showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 0 @@ -54,10 +54,10 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom:: @ 824F86B frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE goto BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge:: @ 824F8B5 +BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge:: applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerEnterRoom waitmovement 0 -BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter:: @ 824F8BF +BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter @@ -68,11 +68,11 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter:: @ 824F8BF call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle switch VAR_RESULT case 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost:: @ 824F8FA +BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent:: @ 824F911 +BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent:: call BattleFrontier_EventScript_IncrementWinStreak frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 @@ -92,7 +92,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent:: @ 824F911 playfanfare MUS_HEAL waitfanfare special HealPlayerParty -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: @ 824F98A +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY @@ -121,7 +121,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: @ 824F98 case 3, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 824FA42 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge @@ -129,7 +129,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord:: case 2, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle:: @ 824FA78 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattlePalaceBattleRoom_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -138,18 +138,18 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRecordBattle:: @ 824FA78 case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_RecordBattle:: @ 824FAAA +BattleFrontier_BattlePalaceBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskPauseChallenge:: @ 824FAB4 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent case YES, BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge:: @ 824FAE2 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -158,17 +158,17 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge:: @ 824FAE2 case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge:: @ 824FB14 +BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge:: applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight closemessage goto BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter -BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon:: @ 824FB28 +BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: @ 824FB3F +BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattlePalaceBattleRoom_Text_SavingData waitmessage palace_save CHALLENGE_STATUS_PAUSED @@ -178,12 +178,12 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: @ 824FB3F frontier_reset end -BattleFrontier_BattlePalaceBattleRoom_EventScript_MavenUpNext:: @ 824FB61 +BattleFrontier_BattlePalaceBattleRoom_EventScript_MavenUpNext:: compare VAR_TEMP_2, 1 goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven msgbox BattleFrontier_BattlePalaceBattleRoom_Text_ChallengingPalaceMaven, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: @ 824FB79 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: message BattleFrontier_BattlePalaceBattleRoom_Text_ReadyForPalaceMaven waitmessage call BattleFrontier_EventScript_GetCantRecordBattle @@ -197,7 +197,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: @ 824FB79 case 3, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven -BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord:: @ 824FBD0 +BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser @@ -205,7 +205,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord:: @ 8 case 2, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven -BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser:: @ 824FC06 +BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser:: call BattleFrontier_EventScript_SetBrainObjectGfx msgbox BattleFrontier_BattlePalaceBattleRoom_Text_AnnounceArrivalOfSpenser, MSGBOX_DEFAULT closemessage @@ -229,14 +229,14 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser:: @ 824FC06 goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserFirstIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver:: @ 824FCAA +BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_ProveYourBondWithMons, MSGBOX_DEFAULT call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost -BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: @ 824FCC7 +BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: palace_incrementstreak frontier_getsymbols compare VAR_RESULT, 0 @@ -258,20 +258,20 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: @ 824F msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserAwaitNextTime, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon -BattleFrontier_BattlePalaceBattleRoom_EventScript_IntroSpenserGold:: @ 824FD3A +BattleFrontier_BattlePalaceBattleRoom_EventScript_IntroSpenserGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserThisTimeWontHoldBack, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold:: @ 824FD67 +BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_Kaaah, MSGBOX_DEFAULT call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost -BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold:: @ 824FD84 +BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold:: palace_incrementstreak frontier_getsymbols compare VAR_RESULT, 2 @@ -293,7 +293,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold:: @ 824FD8 msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserComeSeeMeAgain, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon -BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle:: @ 824FDF7 +BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle:: closemessage setvar VAR_TEMP_2, 0 frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE @@ -307,11 +307,11 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle:: @ 824FDF7 frontier_resetsketch return -BattleFrontier_BattlePalaceBattleRoom_OnWarp: @ 824FE34 +BattleFrontier_BattlePalaceBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_SetUpRoomObjects .2byte 0 -BattleFrontier_BattlePalaceBattleRoom_EventScript_SetUpRoomObjects:: @ 824FE3E +BattleFrontier_BattlePalaceBattleRoom_EventScript_SetUpRoomObjects:: hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM call BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx setvar VAR_TEMP_1, 1 @@ -321,55 +321,55 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_SetUpRoomObjects:: @ 824FE3E applymovement LOCALID_AZURILL, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible end -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 824FE66 +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 824FE6D +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor4thOpponent:: @ 824FE74 +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor4thOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor4thOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor5thOpponent:: @ 824FE7B +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor5thOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor5thOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor6thOpponent:: @ 824FE82 +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor6thOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor6thOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor7thOpponent:: @ 824FE89 +BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor7thOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor7thOpponent waitmessage return -BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible: @ 824FE90 +BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible: set_invisible step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerEnterRoom: @ 824FE92 +BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerEnterRoom: set_visible walk_up walk_up walk_up walk_up -BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight: @ 824FE97 +BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight: face_right step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp: @ 824FE99 +BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp: face_up step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge: @ 824FE9B +BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge: set_visible walk_up walk_up @@ -377,7 +377,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge: @ 824FE9 walk_up step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter: @ 824FEA1 +BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down @@ -385,37 +385,37 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter: @ 824FEA1 face_left step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentExit: @ 824FEA7 +BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentExit: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown: @ 824FEAC +BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown: face_down step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter1: @ 824FEAE +BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter1: set_visible walk_slow_down walk_slow_down face_left step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter2: @ 824FEB3 +BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter2: set_visible walk_slow_down step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter3: @ 824FEB6 +BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter3: walk_slow_down walk_slow_down walk_slow_down face_left step_end -BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby:: @ 824FEBB +BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles @@ -423,12 +423,12 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby:: @ 824FEBB waitstate end -BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles:: @ 824FED5 +BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles:: warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 255, 19, 7 waitstate end -BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter: @ 824FEDF +BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter: delay_16 delay_16 set_visible @@ -438,7 +438,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter: @ 824FEDF walk_in_place_fastest_left step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter: @ 824FEE7 +BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter: set_visible walk_fast_down walk_fast_right @@ -451,7 +451,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter: @ 824FEE7 delay_16 step_end -BattleFrontier_BattlePalaceBattleRoom_Movement_SpenserEnter: @ 824FEF2 +BattleFrontier_BattlePalaceBattleRoom_Movement_SpenserEnter: delay_16 delay_16 delay_16 @@ -467,64 +467,64 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_SpenserEnter: @ 824FEF2 face_left step_end -BattleFrontier_BattlePalaceBattleRoom_Text_LetMeRestoreYourMons: @ 824FF00 +BattleFrontier_BattlePalaceBattleRoom_Text_LetMeRestoreYourMons: .string "Excellent…\n" .string "Let me restore your POKéMON.$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent: @ 824FF28 +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent: .string "The 2nd opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent: @ 824FF54 +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent: .string "The 3rd opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor4thOpponent: @ 824FF80 +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor4thOpponent: .string "The 4th opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor5thOpponent: @ 824FFAC +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor5thOpponent: .string "The 5th opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor6thOpponent: @ 824FFD8 +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor6thOpponent: .string "The 6th opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor7thOpponent: @ 8250004 +BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor7thOpponent: .string "The 7th opponent is next.\n" .string "Are you prepared?$" -BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame: @ 8250030 +BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame: .string "Would you like to save and quit\n" .string "the game?$" -BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge: @ 825005A +BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge: .string "Do you wish to quit your challenge?$" -BattleFrontier_BattlePalaceBattleRoom_Text_SavingData: @ 825007E +BattleFrontier_BattlePalaceBattleRoom_Text_SavingData: .string "Saving the data.\n" .string "Have patience…$" -BattleFrontier_BattlePalaceBattleRoom_Text_RecordLastMatch: @ 825009E +BattleFrontier_BattlePalaceBattleRoom_Text_RecordLastMatch: .string "Do you wish to record your latest\n" .string "match on your FRONTIER PASS?$" -BattleFrontier_BattlePalaceBattleRoom_Text_ChallengingPalaceMaven: @ 82500DD +BattleFrontier_BattlePalaceBattleRoom_Text_ChallengingPalaceMaven: .string "And now…\p" .string "By winning consistently, you have\n" .string "earned the privilege of challenging\l" .string "our master, the PALACE MAVEN…$" -BattleFrontier_BattlePalaceBattleRoom_Text_ReadyForPalaceMaven: @ 825014A +BattleFrontier_BattlePalaceBattleRoom_Text_ReadyForPalaceMaven: .string "I shall send for the PALACE MAVEN.\n" .string "Are you ready?$" -BattleFrontier_BattlePalaceBattleRoom_Text_AnnounceArrivalOfSpenser: @ 825017C +BattleFrontier_BattlePalaceBattleRoom_Text_AnnounceArrivalOfSpenser: .string "Let great fanfare announce the arrival\n" .string "of the PALACE MAVEN, SPENSER!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserFirstIntro: @ 82501C1 +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserFirstIntro: .string "SPENSER: My physical being is with\n" .string "POKéMON always!\p" .string "My heart beats as one with\n" @@ -536,34 +536,34 @@ BattleFrontier_BattlePalaceBattleRoom_Text_SpenserFirstIntro: @ 82501C1 .string "If your bonds of trust are frail,\n" .string "you will never beat my brethren!$" -BattleFrontier_BattlePalaceBattleRoom_Text_ProveYourBondWithMons: @ 82502C4 +BattleFrontier_BattlePalaceBattleRoom_Text_ProveYourBondWithMons: .string "The bond you share with your POKéMON!\n" .string "Prove it to me here!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserPostSilverBattle: @ 82502FF +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserPostSilverBattle: .string "SPENSER: Gwahahah!\p" .string "Hah, you never fell for my bluster!\n" .string "Sorry for trying that stunt!\p" .string "Here!\n" .string "Bring me the thing!$" -BattleFrontier_BattlePalaceBattleRoom_Text_LetsSeeFrontierPass: @ 825036D +BattleFrontier_BattlePalaceBattleRoom_Text_LetsSeeFrontierPass: .string "My, my, if only you could maintain that\n" .string "facade of distinguished authority…\p" .string "Here!\n" .string "Let's see your FRONTIER PASS!$" -BattleFrontier_BattlePalaceBattleRoom_Text_ReceivedSpiritsSymbol: @ 82503DC +BattleFrontier_BattlePalaceBattleRoom_Text_ReceivedSpiritsSymbol: .string "The Spirits Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserAwaitNextTime: @ 8250412 +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserAwaitNextTime: .string "SPENSER: Your POKéMON's eyes are \n" .string "truly clear and unclouded.\p" .string "I will eagerly await the next\n" .string "opportunity to see you.$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserThisTimeWontHoldBack: @ 8250485 +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserThisTimeWontHoldBack: .string "SPENSER: Gwahahah!\n" .string "You've battled your way up again?\p" .string "You must have developed a truly\n" @@ -574,10 +574,10 @@ BattleFrontier_BattlePalaceBattleRoom_Text_SpenserThisTimeWontHoldBack: @ 825048 .string "Ready now?\n" .string "Prepare to lose!$" -BattleFrontier_BattlePalaceBattleRoom_Text_Kaaah: @ 8250572 +BattleFrontier_BattlePalaceBattleRoom_Text_Kaaah: .string "… … …Kaaah!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserYourTeamIsAdmirable: @ 825057E +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserYourTeamIsAdmirable: .string "SPENSER: Well, that was some display!\n" .string "Even fully unleashed, my brethren\l" .string "could not overpower you.\p" @@ -585,17 +585,17 @@ BattleFrontier_BattlePalaceBattleRoom_Text_SpenserYourTeamIsAdmirable: @ 825057E .string "Here!\n" .string "Bring me that thing, will you?$" -BattleFrontier_BattlePalaceBattleRoom_Text_HurryWithFrontierPass: @ 8250629 +BattleFrontier_BattlePalaceBattleRoom_Text_HurryWithFrontierPass: .string "My, my, if only you could maintain\n" .string "a certain level of decorum…\p" .string "Gaaah, here!\n" .string "Hurry with that FRONTIER PASS, you!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpiritsSymbolTookGoldenShine: @ 8250699 +BattleFrontier_BattlePalaceBattleRoom_Text_SpiritsSymbolTookGoldenShine: .string "The Spirits Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattlePalaceBattleRoom_Text_SpenserComeSeeMeAgain: @ 82506C4 +BattleFrontier_BattlePalaceBattleRoom_Text_SpenserComeSeeMeAgain: .string "SPENSER: Gwahahah!\p" .string "Come see me time and again!\n" .string "My brethren and I will be waiting!$" diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc index 2b3b8aab34e3..011170bae846 100644 --- a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattlePalaceCorridor_MapScripts:: @ 824F4A3 +BattleFrontier_BattlePalaceCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePalaceCorridor_OnFrame .byte 0 -BattleFrontier_BattlePalaceCorridor_OnFrame: @ 824F4A9 +BattleFrontier_BattlePalaceCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor .2byte 0 -BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor:: @ 824F4B3 +BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor:: delay 16 applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor @@ -41,7 +41,7 @@ BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor:: @ 824F4B3 waitdooranim goto BattleFrontier_BattlePalaceCorridor_EventScript_WarpToBattleRoom -BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom:: @ 824F553 +BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom waitmovement 0 @@ -52,39 +52,39 @@ BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom:: @ 824F553 waitmovement 0 closedoor 10, 3 waitdooranim -BattleFrontier_BattlePalaceCorridor_EventScript_WarpToBattleRoom:: @ 824F581 +BattleFrontier_BattlePalaceCorridor_EventScript_WarpToBattleRoom:: warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM, 255, 7, 4 waitstate end -BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment1:: @ 824F58B +BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment1:: msgbox BattleFrontier_BattlePalaceCorridor_Text_PeopleAndMonAreSame, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment2:: @ 824F594 +BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment2:: msgbox BattleFrontier_BattlePalaceCorridor_Text_LetMonDoWhatItLikes, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment3:: @ 824F59D +BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment3:: msgbox BattleFrontier_BattlePalaceCorridor_Text_MonDifferentWhenCornered, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceCorridor_EventScript_StreakComment:: @ 824F5A6 +BattleFrontier_BattlePalaceCorridor_EventScript_StreakComment:: msgbox BattleFrontier_BattlePalaceCorridor_Text_BeginningToUnderstandNature, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceCorridor_EventScript_LongStreakComment:: @ 824F5AF +BattleFrontier_BattlePalaceCorridor_EventScript_LongStreakComment:: msgbox BattleFrontier_BattlePalaceCorridor_Text_HeartfeltBondBetweenYouAndMons, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor: @ 824F5B8 +BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkTo50BattleRoom: @ 824F5BD +BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkTo50BattleRoom: walk_up walk_up walk_left @@ -93,7 +93,7 @@ BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkTo50BattleRoom: @ 824F walk_up step_end -BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkTo50BattleRoom: @ 824F5C4 +BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkTo50BattleRoom: walk_up walk_up walk_up @@ -102,7 +102,7 @@ BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkTo50BattleRoom: @ 824F5C4 walk_up step_end -BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom: @ 824F5CB +BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom: walk_up walk_right walk_right @@ -111,7 +111,7 @@ BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom: @ 82 walk_up step_end -BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom: @ 824F5D2 +BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom: walk_up walk_up walk_right @@ -120,38 +120,38 @@ BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom: @ 824F5 walk_up step_end -BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom: @ 824F5D9 +BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom: walk_up -BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom: @ 824F5DA +BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom: walk_up set_invisible step_end -BattleFrontier_BattlePalaceCorridor_Text_PeopleAndMonAreSame: @ 824F5DD +BattleFrontier_BattlePalaceCorridor_Text_PeopleAndMonAreSame: .string "People and POKéMON, they are but\n" .string "the same…\p" .string "Their individual nature makes them\n" .string "good at certain things, and not good\l" .string "at others.$" -BattleFrontier_BattlePalaceCorridor_Text_LetMonDoWhatItLikes: @ 824F65B +BattleFrontier_BattlePalaceCorridor_Text_LetMonDoWhatItLikes: .string "Rather than trying to make a POKéMON\n" .string "do what it dislikes, try to let it do\l" .string "what it likes and is good at doing.\p" .string "Put yourself in the POKéMON's position\n" .string "and consider what moves it would like.$" -BattleFrontier_BattlePalaceCorridor_Text_MonDifferentWhenCornered: @ 824F718 +BattleFrontier_BattlePalaceCorridor_Text_MonDifferentWhenCornered: .string "A POKéMON's nature is a remarkable\n" .string "thing…\p" .string "Some POKéMON behave in a completely\n" .string "different way when they are cornered.$" -BattleFrontier_BattlePalaceCorridor_Text_BeginningToUnderstandNature: @ 824F78C +BattleFrontier_BattlePalaceCorridor_Text_BeginningToUnderstandNature: .string "Are you beginning to understand how\n" .string "a POKéMON's nature makes it behave?$" -BattleFrontier_BattlePalaceCorridor_Text_HeartfeltBondBetweenYouAndMons: @ 824F7D4 +BattleFrontier_BattlePalaceCorridor_Text_HeartfeltBondBetweenYouAndMons: .string "Ah… I see a strong, heartfelt bond\n" .string "between you and your POKéMON…$" diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index 4c2a4841e833..a51fa48fde8a 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -1,21 +1,21 @@ .set LOCALID_ATTENDANT_SINGLES, 1 .set LOCALID_ATTENDANT_DOUBLES, 6 -BattleFrontier_BattlePalaceLobby_MapScripts:: @ 824D77E +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 .byte 0 -BattleFrontier_BattlePalaceLobby_OnWarp: @ 824D789 +BattleFrontier_BattlePalaceLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePalaceLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePalaceLobby_EventScript_TurnPlayerNorth:: @ 824D793 +BattleFrontier_BattlePalaceLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePalaceLobby_OnFrame: @ 824D79D +BattleFrontier_BattlePalaceLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge @@ -23,11 +23,11 @@ BattleFrontier_BattlePalaceLobby_OnFrame: @ 824D79D map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus:: @ 824D7C7 +BattleFrontier_BattlePalaceLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving:: @ 824D7D0 +BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge, MSGBOX_DEFAULT closemessage @@ -38,7 +38,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving:: @ 824D7D0 releaseall end -BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge:: @ 824D817 +BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge:: lockall frontier_isbrain compare VAR_RESULT, TRUE @@ -46,9 +46,9 @@ BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge:: @ 824D817 msgbox BattleFrontier_BattlePalaceLobby_Text_FirmTrueBondsFor7WinStreak, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints -BattleFrontier_BattlePalaceLobby_EventScript_DefeatedMaven:: @ 824D838 +BattleFrontier_BattlePalaceLobby_EventScript_DefeatedMaven:: msgbox BattleFrontier_BattlePalaceLobby_Text_ToDefeatMavenAnd7Trainers, MSGBOX_DEFAULT -BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints:: @ 824D840 +BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattlePalaceLobby_Text_PresentYouWithBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -61,7 +61,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints:: @ 824D840 releaseall end -BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge:: @ 824D873 +BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge:: lockall message BattleFrontier_BattlePalaceLobby_Text_ResultsWillBeRecorded waitmessage @@ -73,7 +73,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_LostChallenge:: @ 824D873 releaseall end -BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge:: @ 824D8A1 +BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge:: frontier_checkairshow special LoadPlayerParty special HealPlayerParty @@ -91,12 +91,12 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge:: @ 824D8A1 case 0, BattleFrontier_BattlePalaceLobby_EventScript_RecordMatch case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge -BattleFrontier_BattlePalaceLobby_EventScript_RecordMatch:: @ 824D902 +BattleFrontier_BattlePalaceLobby_EventScript_RecordMatch:: call BattleFrontier_EventScript_SaveBattle -BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge:: @ 824D907 +BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge:: return -BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge:: @ 824D908 +BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge:: lockall msgbox BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting, MSGBOX_DEFAULT message BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge @@ -108,7 +108,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_ResumeChallenge:: @ 824D908 setvar VAR_TEMP_0, 255 goto BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge -BattleFrontier_BattlePalaceLobby_EventScript_SinglesAttendant:: @ 824D944 +BattleFrontier_BattlePalaceLobby_EventScript_SinglesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PALACE @@ -116,7 +116,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SinglesAttendant:: @ 824D944 goto BattleFrontier_BattlePalaceLobby_EventScript_Attendant end -BattleFrontier_BattlePalaceLobby_EventScript_DoublesAttendant:: @ 824D956 +BattleFrontier_BattlePalaceLobby_EventScript_DoublesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PALACE @@ -124,7 +124,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_DoublesAttendant:: @ 824D956 goto BattleFrontier_BattlePalaceLobby_EventScript_Attendant end -BattleFrontier_BattlePalaceLobby_EventScript_Attendant:: @ 824D968 +BattleFrontier_BattlePalaceLobby_EventScript_Attendant:: palace_get PALACE_DATA_PRIZE compare VAR_RESULT, ITEM_NONE goto_if_ne BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge @@ -133,7 +133,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_Attendant:: @ 824D968 call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForSingleBattle compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForDoubleBattle -BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: @ 824D999 +BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_AskTakeSingleBattleChallenge compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -146,7 +146,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: @ 824D999 case 2, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge -BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: @ 824D9E6 +BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattlePalaceLobby_Text_WhichChallenge waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -172,7 +172,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: @ 824D9E6 case YES, BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge -BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge:: @ 824DA87 +BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER palace_init @@ -186,7 +186,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge:: @ 824DA87 setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed -BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: @ 824DAF3 +BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox BattleFrontier_BattlePalaceLobby_Text_FollowMe, MSGBOX_DEFAULT @@ -197,58 +197,58 @@ BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: @ 824DAF3 waitstate end -BattleFrontier_BattlePalaceLobby_EventScript_ExplainChallenge:: @ 824DB20 +BattleFrontier_BattlePalaceLobby_EventScript_ExplainChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_ExplainDoublesChallenge msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainSingleBattleChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge -BattleFrontier_BattlePalaceLobby_EventScript_ExplainDoublesChallenge:: @ 824DB38 +BattleFrontier_BattlePalaceLobby_EventScript_ExplainDoublesChallenge:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainDoubleBattleChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge -BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons:: @ 824DB45 +BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLv50:: @ 824DB60 +BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLv50:: msgbox BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 824DB6D +BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed:: @ 824DB7A +BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge -BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge:: @ 824DB91 +BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge:: @ 824DB94 +BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattlePalaceLobby_Text_ReturnWhenFortified, MSGBOX_DEFAULT -BattleFrontier_BattlePalaceLobby_EventScript_EndCancelChallenge:: @ 824DB9C +BattleFrontier_BattlePalaceLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForSingleBattle:: @ 824DB9E +BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForSingleBattle:: msgbox BattleFrontier_BattlePalaceLobby_Text_WelcomeForSingleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForDoubleBattle:: @ 824DBA7 +BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForDoubleBattle:: msgbox BattleFrontier_BattlePalaceLobby_Text_WelcomeForDoubleBattle, MSGBOX_DEFAULT return -BattleFrontier_BattlePalaceLobby_EventScript_AskTakeSingleBattleChallenge:: @ 824DBB0 +BattleFrontier_BattlePalaceLobby_EventScript_AskTakeSingleBattleChallenge:: message BattleFrontier_BattlePalaceLobby_Text_TakeSingleBattleChallenge return -BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge:: @ 824DBB6 +BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge:: message BattleFrontier_BattlePalaceLobby_Text_TakeDoubleBattleChallenge return -BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor:: @ 824DBBC +BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -271,46 +271,46 @@ BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor:: @ 824DBBC waitdooranim return -BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant:: @ 824DC23 +BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES return -BattleFrontier_BattlePalaceLobby_EventScript_TalkedToDoublesAttendant:: @ 824DC29 +BattleFrontier_BattlePalaceLobby_EventScript_TalkedToDoublesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES return -BattleFrontier_BattlePalaceLobby_EventScript_OpenSinglesHallDoor:: @ 824DC2F +BattleFrontier_BattlePalaceLobby_EventScript_OpenSinglesHallDoor:: opendoor 5, 4 return -BattleFrontier_BattlePalaceLobby_EventScript_OpenDoublesHallDoor:: @ 824DC35 +BattleFrontier_BattlePalaceLobby_EventScript_OpenDoublesHallDoor:: opendoor 19, 4 return -BattleFrontier_BattlePalaceLobby_EventScript_CloseSinglesHallDoor:: @ 824DC3B +BattleFrontier_BattlePalaceLobby_EventScript_CloseSinglesHallDoor:: closedoor 5, 4 return -BattleFrontier_BattlePalaceLobby_EventScript_CloseDoublesHallDoor:: @ 824DC41 +BattleFrontier_BattlePalaceLobby_EventScript_CloseDoublesHallDoor:: closedoor 19, 4 return -BattleFrontier_BattlePalaceLobby_Movement_WalkToDoor: @ 824DC47 +BattleFrontier_BattlePalaceLobby_Movement_WalkToDoor: walk_up step_end -BattleFrontier_BattlePalaceLobby_Movement_AttendantEnterDoor: @ 824DC49 +BattleFrontier_BattlePalaceLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -BattleFrontier_BattlePalaceLobby_Movement_PlayerEnterDoor: @ 824DC4C +BattleFrontier_BattlePalaceLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -BattleFrontier_BattlePalaceLobby_EventScript_ShowSinglesResults:: @ 824DC50 +BattleFrontier_BattlePalaceLobby_EventScript_ShowSinglesResults:: lockall frontier_results FRONTIER_FACILITY_PALACE, FRONTIER_MODE_SINGLES waitbuttonpress @@ -318,7 +318,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_ShowSinglesResults:: @ 824DC50 releaseall end -BattleFrontier_BattlePalaceLobby_EventScript_ShowDoublesResults:: @ 824DC69 +BattleFrontier_BattlePalaceLobby_EventScript_ShowDoublesResults:: lockall frontier_results FRONTIER_FACILITY_PALACE, FRONTIER_MODE_DOUBLES waitbuttonpress @@ -326,29 +326,29 @@ BattleFrontier_BattlePalaceLobby_EventScript_ShowDoublesResults:: @ 824DC69 releaseall end -BattleFrontier_BattlePalaceLobby_EventScript_BlackBelt:: @ 824DC82 +BattleFrontier_BattlePalaceLobby_EventScript_BlackBelt:: msgbox BattleFrontier_BattlePalaceLobby_Text_LadyCanTellWhatMonsThink, MSGBOX_NPC end -BattleFrontier_BattlePalaceLobby_EventScript_Man:: @ 824DC8B +BattleFrontier_BattlePalaceLobby_EventScript_Man:: msgbox BattleFrontier_BattlePalaceLobby_Text_NatureAndMovesKeyHere, MSGBOX_NPC end -BattleFrontier_BattlePalaceLobby_EventScript_Beauty:: @ 824DC94 +BattleFrontier_BattlePalaceLobby_EventScript_Beauty:: msgbox BattleFrontier_BattlePalaceLobby_Text_MonDocileButTransforms, MSGBOX_NPC end -BattleFrontier_BattlePalaceLobby_EventScript_Maniac:: @ 824DC9D +BattleFrontier_BattlePalaceLobby_EventScript_Maniac:: msgbox BattleFrontier_BattlePalaceLobby_Text_WhatNatureFavorsChippingAway, MSGBOX_NPC end -BattleFrontier_BattlePalaceLobby_EventScript_RulesBoard:: @ 824DCA6 +BattleFrontier_BattlePalaceLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattlePalaceLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard:: @ 824DCB5 +BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading waitmessage multichoice 16, 0, MULTI_BATTLE_PALACE_RULES, FALSE @@ -362,47 +362,47 @@ BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard:: @ 824DCB5 case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_ExitRules end -BattleFrontier_BattlePalaceLobby_EventScript_RulesBasics:: @ 824DD13 +BattleFrontier_BattlePalaceLobby_EventScript_RulesBasics:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_RulesNature:: @ 824DD21 +BattleFrontier_BattlePalaceLobby_EventScript_RulesNature:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_RulesMoves:: @ 824DD2F +BattleFrontier_BattlePalaceLobby_EventScript_RulesMoves:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_RulesUnderpowered:: @ 824DD3D +BattleFrontier_BattlePalaceLobby_EventScript_RulesUnderpowered:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_RulesWhenInDanger:: @ 824DD4B +BattleFrontier_BattlePalaceLobby_EventScript_RulesWhenInDanger:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePalaceLobby_EventScript_ExitRules:: @ 824DD59 +BattleFrontier_BattlePalaceLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattlePalaceLobby_Text_WelcomeForSingleBattle: @ 824DD5B +BattleFrontier_BattlePalaceLobby_Text_WelcomeForSingleBattle: .string "Where the hearts of TRAINERS\n" .string "are put to the test.\p" .string "I welcome you to the BATTLE PALACE.\p" .string "I accept challenges to the SINGLE\n" .string "BATTLE HALLS.$" -BattleFrontier_BattlePalaceLobby_Text_TakeSingleBattleChallenge: @ 824DDE1 +BattleFrontier_BattlePalaceLobby_Text_TakeSingleBattleChallenge: .string "Do you wish to take\n" .string "the SINGLE BATTLE HALL challenge?$" -BattleFrontier_BattlePalaceLobby_Text_ExplainSingleBattleChallenge: @ 824DE17 +BattleFrontier_BattlePalaceLobby_Text_ExplainSingleBattleChallenge: .string "In the BATTLE PALACE, there are\n" .string "several auditoriums for SINGLE BATTLES\l" .string "that are named SINGLE BATTLE HALLS.\p" @@ -425,16 +425,16 @@ BattleFrontier_BattlePalaceLobby_Text_ExplainSingleBattleChallenge: @ 824DE17 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattlePalaceLobby_Text_ReturnWhenFortified: @ 824E0D8 +BattleFrontier_BattlePalaceLobby_Text_ReturnWhenFortified: .string "When you have fortified your heart\n" .string "and POKéMON, you must return.$" -BattleFrontier_BattlePalaceLobby_Text_WhichChallenge: @ 824E119 +BattleFrontier_BattlePalaceLobby_Text_WhichChallenge: .string "There are two BATTLE HALLS,\n" .string "Level 50 and Open Level.\l" .string "Which is your choice of a challenge?$" -BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLv50: @ 824E173 +BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLv50: .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -448,7 +448,7 @@ BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLv50: @ 824E173 .string "Come back when you have made\n" .string "your preparations.$" -BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLvOpen: @ 824E29E +BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLvOpen: .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -460,52 +460,52 @@ BattleFrontier_BattlePalaceLobby_Text_NotEnoughValidMonsLvOpen: @ 824E29E .string "Come back when you have made\n" .string "your preparations.$" -BattleFrontier_BattlePalaceLobby_Text_NowSelectThreeMons: @ 824E399 +BattleFrontier_BattlePalaceLobby_Text_NowSelectThreeMons: .string "Good. Now, you must select your\n" .string "three POKéMON.$" -BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge2: @ 824E3C8 +BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge2: .string "I must save before I show you to\n" .string "the BATTLE HALL. Is that okay?$" -BattleFrontier_BattlePalaceLobby_Text_FollowMe: @ 824E408 +BattleFrontier_BattlePalaceLobby_Text_FollowMe: .string "Good.\n" .string "Now, follow me.$" -BattleFrontier_BattlePalaceLobby_Text_ResultsWillBeRecorded: @ 824E41E +BattleFrontier_BattlePalaceLobby_Text_ResultsWillBeRecorded: .string "I feel privileged for having seen\n" .string "your POKéMON's exploits.\p" .string "The results will be recorded.\n" .string "I must ask you to briefly wait.$" -BattleFrontier_BattlePalaceLobby_Text_FirmTrueBondsFor7WinStreak: @ 824E497 +BattleFrontier_BattlePalaceLobby_Text_FirmTrueBondsFor7WinStreak: .string "To achieve a 7-win streak…\p" .string "The bonds that bind your heart with\n" .string "your POKéMON seem firm and true.$" -BattleFrontier_BattlePalaceLobby_Text_FeatWillBeRecorded: @ 824E4F7 +BattleFrontier_BattlePalaceLobby_Text_FeatWillBeRecorded: .string "Your feat will be recorded.\n" .string "I must ask you to briefly wait.$" @ Unused -BattleFrontier_BattlePalaceLobby_Text_BattlePointsFor7WinStreak: @ 824E5333 +BattleFrontier_BattlePalaceLobby_Text_BattlePointsFor7WinStreak: .string "For the feat of your 7-win streak,\n" .string "we present you with Battle Point(s).$" -BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize: @ 824E57B +BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize: .string "You seem to have no space for\n" .string "our prize.\p" .string "You should return when you have\n" .string "organized your BAG.$" -BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting: @ 824E5D8 +BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting: .string "We have been waiting for you…$" -BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge: @ 824E5F6 +BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge: .string "I must save before I show you to\n" .string "the BATTLE HALL. Is that okay?$" -BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge: @ 824E636 +BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge: .string "Sigh…\p" .string "You failed to save before you ended\n" .string "your challenge the last time.\p" @@ -513,11 +513,11 @@ BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge: @ 824E6 .string "disqualified. It is most unfortunate.$" @ Unused -BattleFrontier_BattlePalaceLobby_Text_ReceivedPrize: @ 824E6C9 +BattleFrontier_BattlePalaceLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -BattleFrontier_BattlePalaceLobby_Text_LadyCanTellWhatMonsThink: @ 824E6E3 +BattleFrontier_BattlePalaceLobby_Text_LadyCanTellWhatMonsThink: .string "For a hardy fellow like me,\n" .string "hardy POKéMON are the best.\p" .string "Offense is the best defense!\n" @@ -533,7 +533,7 @@ BattleFrontier_BattlePalaceLobby_Text_LadyCanTellWhatMonsThink: @ 824E6E3 .string "Huh?\n" .string "Why are you looking at me like that?$" -BattleFrontier_BattlePalaceLobby_Text_NatureAndMovesKeyHere: @ 824E851 +BattleFrontier_BattlePalaceLobby_Text_NatureAndMovesKeyHere: .string "Hmm…\p" .string "It appears that the nature of POKéMON\n" .string "and the moves that they have been\l" @@ -546,7 +546,7 @@ BattleFrontier_BattlePalaceLobby_Text_NatureAndMovesKeyHere: @ 824E851 .string "you may need to examine how well\l" .string "its moves match its nature.$" -BattleFrontier_BattlePalaceLobby_Text_MonDocileButTransforms: @ 824E992 +BattleFrontier_BattlePalaceLobby_Text_MonDocileButTransforms: .string "My POKéMON is usually very docile.\p" .string "But when it's in a BATTLE HALL,\n" .string "it sometimes seems to become\l" @@ -554,25 +554,25 @@ BattleFrontier_BattlePalaceLobby_Text_MonDocileButTransforms: @ 824E992 .string "It becomes totally intimidating.\n" .string "It's shocking, even.$" -BattleFrontier_BattlePalaceLobby_Text_WhatNatureFavorsChippingAway: @ 824EA4B +BattleFrontier_BattlePalaceLobby_Text_WhatNatureFavorsChippingAway: .string "I wonder what sort of nature a POKéMON\n" .string "would have if it favored enfeebling its\l" .string "opponents and chipping away slowly.\p" .string "I'd be surprised if it was a LAX nature.\p" .string "But, nah, that can't be right.$" -BattleFrontier_BattlePalaceLobby_Text_WelcomeForDoubleBattle: @ 824EB06 +BattleFrontier_BattlePalaceLobby_Text_WelcomeForDoubleBattle: .string "Where the hearts of TRAINERS\n" .string "are put to the test.\p" .string "I welcome you to the BATTLE PALACE.\p" .string "I accept challenges to the DOUBLE\n" .string "BATTLE HALLS.$" -BattleFrontier_BattlePalaceLobby_Text_TakeDoubleBattleChallenge: @ 824EB8C +BattleFrontier_BattlePalaceLobby_Text_TakeDoubleBattleChallenge: .string "Do you wish to take\n" .string "the DOUBLE BATTLE HALL challenge?$" -BattleFrontier_BattlePalaceLobby_Text_ExplainDoubleBattleChallenge: @ 824EBC2 +BattleFrontier_BattlePalaceLobby_Text_ExplainDoubleBattleChallenge: .string "In the BATTLE PALACE, there are\n" .string "several auditoriums for DOUBLE BATTLES\l" .string "that are named DOUBLE BATTLE HALLS.\p" @@ -595,34 +595,34 @@ BattleFrontier_BattlePalaceLobby_Text_ExplainDoubleBattleChallenge: @ 824EBC2 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattlePalaceLobby_Text_ToDefeatMavenAnd7Trainers: @ 824EE81 +BattleFrontier_BattlePalaceLobby_Text_ToDefeatMavenAnd7Trainers: .string "To defeat the PALACE MAVEN\n" .string "and seven TRAINERS in a row…$" -BattleFrontier_BattlePalaceLobby_Text_PresentYouWithBattlePoints: @ 824EEB9 +BattleFrontier_BattlePalaceLobby_Text_PresentYouWithBattlePoints: .string "In honor of the bond you share with\n" .string "your POKéMON, we present you with\l" .string "these Battle Point(s).$" -BattleFrontier_BattlePalaceLobby_Text_LikeToRecordMatch: @ 824EF16 +BattleFrontier_BattlePalaceLobby_Text_LikeToRecordMatch: .string "Would you like to record your latest\n" .string "BATTLE PALACE match on your\l" .string "FRONTIER PASS?$" -BattleFrontier_BattlePalaceLobby_Text_RulesAreListed: @ 824EF66 +BattleFrontier_BattlePalaceLobby_Text_RulesAreListed: .string "The BATTLE HALL rules are listed.$" -BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading: @ 824EF88 +BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics: @ 824EFAB +BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics: .string "Here, POKéMON are required to think\n" .string "and battle by themselves.\p" .string "Unlike in the wild, POKéMON that live\n" .string "with people behave differently\l" .string "depending on their nature.$" -BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature: @ 824F049 +BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature: .string "Depending on its nature, a POKéMON\n" .string "may prefer to attack no matter what.\p" .string "Another POKéMON may prefer to protect\n" @@ -635,7 +635,7 @@ BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature: @ 824F049 .string "It may also dislike certain moves that\n" .string "it has trouble using.$" -BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves: @ 824F190 +BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves: .string "There are offensive moves that inflict\n" .string "direct damage on the foe.\p" .string "There are defensive moves that are\n" @@ -648,7 +648,7 @@ BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves: @ 824F190 .string "POKéMON will consider using moves in\n" .string "these three categories.$" -BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered: @ 824F2E8 +BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered: .string "When not under command by its TRAINER,\n" .string "a POKéMON may be unable to effectively\l" .string "use certain moves.\p" @@ -658,7 +658,7 @@ BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered: @ 824F2E8 .string "do not match its nature, it will often\l" .string "be unable to live up to its potential.$" -BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger: @ 824F3F4 +BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger: .string "Depending on its nature, a POKéMON may\n" .string "start using moves that don't match its\l" .string "nature when it is in trouble.\p" diff --git a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc index 1c55d7bf5cf5..44539747b812 100644 --- a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattlePikeCorridor_MapScripts:: @ 825C771 +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 .byte 0 -BattleFrontier_BattlePikeCorridor_OnFrame: @ 825C77C +BattleFrontier_BattlePikeCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor .2byte 0 -BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor:: @ 825C786 +BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor:: delay 16 frontier_set FRONTIER_DATA_BATTLE_NUM, 1 pike_cleartrainerids @@ -29,34 +29,34 @@ BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor:: @ 825C786 waitstate end -BattleFrontier_BattlePikeCorridor_OnWarp: @ 825C7F7 +BattleFrontier_BattlePikeCorridor_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePikeCorridor_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePikeCorridor_EventScript_TurnPlayerNorth:: @ 825C801 +BattleFrontier_BattlePikeCorridor_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeCorridor_Movement_PlayerEnterCorridor: @ 825C80B +BattleFrontier_BattlePikeCorridor_Movement_PlayerEnterCorridor: walk_up walk_up step_end -BattleFrontier_BattlePikeCorridor_Movement_PlayerExitCorridor: @ 825C80E +BattleFrontier_BattlePikeCorridor_Movement_PlayerExitCorridor: walk_up walk_up set_invisible step_end -BattleFrontier_BattlePikeCorridor_Movement_AttendantEnterCorridor: @ 825C812 +BattleFrontier_BattlePikeCorridor_Movement_AttendantEnterCorridor: walk_up walk_up walk_left face_down step_end -BattleFrontier_BattlePikeCorridor_Text_YourChallengeHasBegun: @ 825C817 +BattleFrontier_BattlePikeCorridor_Text_YourChallengeHasBegun: .string "Your Battle Choice challenge\n" .string "has now begun…$" diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index 1bc66bbfa034..ecbbafef245a 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -1,31 +1,31 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattlePikeLobby_MapScripts:: @ 825B6C6 +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 .byte 0 -BattleFrontier_BattlePikeLobby_OnFrame: @ 825B6D1 +BattleFrontier_BattlePikeLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, BattleFrontier_BattlePikeLobby_EventScript_WonChallenge map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePikeLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattlePikeLobby_OnWarp: @ 825B6F3 +BattleFrontier_BattlePikeLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePikeLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePikeLobby_EventScript_TurnPlayerNorth:: @ 825B6FD +BattleFrontier_BattlePikeLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus:: @ 825B707 +BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving:: @ 825B710 +BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving:: special HealPlayerParty pike_resethelditems lockall @@ -38,7 +38,7 @@ BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving:: @ 825B710 releaseall end -BattleFrontier_BattlePikeLobby_EventScript_WonChallenge:: @ 825B762 +BattleFrontier_BattlePikeLobby_EventScript_WonChallenge:: lockall frontier_isbrain compare VAR_RESULT, TRUE @@ -47,10 +47,10 @@ BattleFrontier_BattlePikeLobby_EventScript_WonChallenge:: @ 825B762 waitmessage goto BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints -BattleFrontier_BattlePikeLobby_EventScript_DefeatedQueen:: @ 825B784 +BattleFrontier_BattlePikeLobby_EventScript_DefeatedQueen:: msgbox BattleFrontier_BattlePikeLobby_Text_SnatchedVictoryFromQueen, MSGBOX_DEFAULT waitmessage -BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints:: @ 825B78D +BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -72,7 +72,7 @@ BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints:: @ 825B78D releaseall end -BattleFrontier_BattlePikeLobby_EventScript_LostChallenge:: @ 825B806 +BattleFrontier_BattlePikeLobby_EventScript_LostChallenge:: lockall message BattleFrontier_BattlePikeLobby_Text_ChallengeEndedRecordResults waitmessage @@ -91,14 +91,14 @@ BattleFrontier_BattlePikeLobby_EventScript_LostChallenge:: @ 825B806 releaseall end -BattleFrontier_BattlePikeLobby_EventScript_Attendant:: @ 825B868 +BattleFrontier_BattlePikeLobby_EventScript_Attendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PIKE setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES special SavePlayerParty msgbox BattleFrontier_BattlePikeLobby_Text_WelcomeToBattlePike, MSGBOX_DEFAULT -BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge:: @ 825B87F +BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge:: message BattleFrontier_BattlePikeLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -108,7 +108,7 @@ BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge:: @ 825B87F case 2, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge -BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: @ 825B8BB +BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattlePikeLobby_Text_WhichChallengeMode waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -134,7 +134,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: @ 825B8BB case YES, BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge -BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge:: @ 825B95C +BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 setvar VAR_TEMP_1, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER @@ -164,36 +164,36 @@ BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge:: @ 825B95C waitstate end -BattleFrontier_BattlePikeLobby_EventScript_ExplainChallenge:: @ 825BA1A +BattleFrontier_BattlePikeLobby_EventScript_ExplainChallenge:: msgbox BattleFrontier_BattlePikeLobby_Text_ExplainBattlePike, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_AskTakeChallenge -BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons:: @ 825BA27 +BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLv50:: @ 825BA42 +BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLv50:: msgbox BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 825BA4F +BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePikeLobby_EventScript_CancelChallengeSaveFailed:: @ 825BA5C +BattleFrontier_BattlePikeLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge -BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge:: @ 825BA73 +BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge:: @ 825BA76 +BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattlePikeLobby_Text_LookForwardToSeeingYou, MSGBOX_DEFAULT -BattleFrontier_BattlePikeLobby_EventScript_EndCancelChallenge:: @ 825BA7E +BattleFrontier_BattlePikeLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattlePikeLobby_EventScript_ShowResults:: @ 825BA80 +BattleFrontier_BattlePikeLobby_EventScript_ShowResults:: lockall frontier_results FRONTIER_FACILITY_PIKE waitbuttonpress @@ -201,39 +201,39 @@ BattleFrontier_BattlePikeLobby_EventScript_ShowResults:: @ 825BA80 releaseall end -BattleFrontier_BattlePikeLobby_EventScript_WalkToCorridor:: @ 825BA94 +BattleFrontier_BattlePikeLobby_EventScript_WalkToCorridor:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePikeLobby_Movement_AttendantWalkToCorridor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeLobby_Movement_PlayerWalkToCorridor waitmovement 0 return -BattleFrontier_BattlePikeLobby_Movement_PlayerWalkToCorridor: @ 825BAA6 +BattleFrontier_BattlePikeLobby_Movement_PlayerWalkToCorridor: walk_up -BattleFrontier_BattlePikeLobby_Movement_AttendantWalkToCorridor: @ 825BAA7 +BattleFrontier_BattlePikeLobby_Movement_AttendantWalkToCorridor: walk_up walk_up set_invisible step_end -BattleFrontier_BattlePikeLobby_EventScript_Hiker:: @ 825BAAB +BattleFrontier_BattlePikeLobby_EventScript_Hiker:: msgbox BattleFrontier_BattlePikeLobby_Text_OneRoomAwayFromGoal, MSGBOX_NPC end -BattleFrontier_BattlePikeLobby_EventScript_Twin:: @ 825BAB4 +BattleFrontier_BattlePikeLobby_EventScript_Twin:: msgbox BattleFrontier_BattlePikeLobby_Text_NeverHadToBattleTrainer, MSGBOX_NPC end -BattleFrontier_BattlePikeLobby_EventScript_Beauty:: @ 825BABD +BattleFrontier_BattlePikeLobby_EventScript_Beauty:: msgbox BattleFrontier_BattlePikeLobby_Text_ThinkAbilitiesUsefulHere, MSGBOX_NPC end -BattleFrontier_BattlePikeLobby_EventScript_RulesBoard:: @ 825BAC6 +BattleFrontier_BattlePikeLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattlePikeLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard:: @ 825BAD5 +BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattlePikeLobby_Text_ReadWhichHeading waitmessage multichoice 16, 4, MULTI_BATTLE_PIKE_RULES, FALSE @@ -245,43 +245,43 @@ BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard:: @ 825BAD5 case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_ExitRules end -BattleFrontier_BattlePikeLobby_EventScript_RulesPokenavBag:: @ 825BB1D +BattleFrontier_BattlePikeLobby_EventScript_RulesPokenavBag:: msgbox BattleFrontier_BattlePikeLobby_Text_ExplainPokenavBagRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePikeLobby_EventScript_RulesHeldItems:: @ 825BB2B +BattleFrontier_BattlePikeLobby_EventScript_RulesHeldItems:: msgbox BattleFrontier_BattlePikeLobby_Text_ExplainHeldItemRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePikeLobby_EventScript_RulesMonOrder:: @ 825BB39 +BattleFrontier_BattlePikeLobby_EventScript_RulesMonOrder:: msgbox BattleFrontier_BattlePikeLobby_Text_ExplainMonOrderRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePikeLobby_EventScript_ExitRules:: @ 825BB47 +BattleFrontier_BattlePikeLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattlePike_EventScript_CloseCurtain:: @ 825BB49 +BattleFrontier_BattlePike_EventScript_CloseCurtain:: playse SE_PIKE_CURTAIN_CLOSE special CloseBattlePikeCurtain waitstate waitse return -BattleFrontier_BattlePikeLobby_Text_WelcomeToBattlePike: @ 825BB52 +BattleFrontier_BattlePikeLobby_Text_WelcomeToBattlePike: .string "Where the luck of TRAINERS\n" .string "is put to the test…\p" .string "Welcome to the BATTLE PIKE…\p" .string "I am your guide to the BATTLE PIKE…$" -BattleFrontier_BattlePikeLobby_Text_TakeChallenge: @ 825BBC1 +BattleFrontier_BattlePikeLobby_Text_TakeChallenge: .string "Would you like to take the Battle\n" .string "Choice challenge?$" -BattleFrontier_BattlePikeLobby_Text_ExplainBattlePike: @ 825BBF5 +BattleFrontier_BattlePikeLobby_Text_ExplainBattlePike: .string "Here we conduct an event we call\n" .string "the Battle Choice.\p" .string "The Battle Choice rules are very\n" @@ -300,16 +300,16 @@ BattleFrontier_BattlePikeLobby_Text_ExplainBattlePike: @ 825BBF5 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattlePikeLobby_Text_LookForwardToSeeingYou: @ 825BE02 +BattleFrontier_BattlePikeLobby_Text_LookForwardToSeeingYou: .string "We look forward to seeing you\n" .string "on another occasion…$" -BattleFrontier_BattlePikeLobby_Text_WhichChallengeMode: @ 825BE35 +BattleFrontier_BattlePikeLobby_Text_WhichChallengeMode: .string "You have the choice of two courses,\n" .string "Level 50 and Open Level.\l" .string "Which will you challenge?$" -BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLv50: @ 825BE8C +BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLv50: .string "I beg your pardon, but…\p" .string "You do not have three eligible\n" .string "POKéMON for the Battle Choice event.\p" @@ -321,7 +321,7 @@ BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLv50: @ 825BE8C .string "Please come see me when\n" .string "you are ready…$" -BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLvOpen: @ 825BF9A +BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLvOpen: .string "I beg your pardon, but…\p" .string "You do not have three eligible\n" .string "POKéMON for the Battle Choice event.\p" @@ -333,101 +333,101 @@ BattleFrontier_BattlePikeLobby_Text_NotEnoughValidMonsLvOpen: @ 825BF9A .string "Please come see me when\n" .string "you are ready…$" -BattleFrontier_BattlePikeLobby_Text_PleaseChooseThreeMons: @ 825C094 +BattleFrontier_BattlePikeLobby_Text_PleaseChooseThreeMons: .string "Please choose the three POKéMON\n" .string "you wish to enter in the challenge…$" -BattleFrontier_BattlePikeLobby_Text_SaveBeforeChallenge: @ 825C0D8 +BattleFrontier_BattlePikeLobby_Text_SaveBeforeChallenge: .string "Before starting your Battle Choice\n" .string "challenge, I must save the game.\l" .string "Is that acceptable?$" -BattleFrontier_BattlePikeLobby_Text_StepThisWay: @ 825C130 +BattleFrontier_BattlePikeLobby_Text_StepThisWay: .string "Please step this way…$" -BattleFrontier_BattlePikeLobby_Text_ChallengeEndedRecordResults: @ 825C146 +BattleFrontier_BattlePikeLobby_Text_ChallengeEndedRecordResults: .string "Your challenge has ended…\p" .string "I shall record your results.\n" .string "Please wait…$" -BattleFrontier_BattlePikeLobby_Text_PossessLuckInAbundance: @ 825C18A +BattleFrontier_BattlePikeLobby_Text_PossessLuckInAbundance: .string "You have completed the challenge…\p" .string "I must say… You seem to possess luck\n" .string "in abundance…$" -BattleFrontier_BattlePikeLobby_Text_ShallRecordResults: @ 825C1DF +BattleFrontier_BattlePikeLobby_Text_ShallRecordResults: .string "I shall record your results.\n" .string "Please wait…$" @ Unused -BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints2: @ 825C209 +BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints2: .string "To commemorate your completion of\n" .string "the Battle Choice challenge, we award\l" .string "you these Battle Point(s)…$" @ Unused -BattleFrontier_BattlePikeLobby_Text_ReachedBattlePointLimit: @ 825C26C +BattleFrontier_BattlePikeLobby_Text_ReachedBattlePointLimit: .string "You appear to have reached the limit\n" .string "for Battle Points…\pPlease exchange some Battle Points\n" .string "for prizes, then return…$" -BattleFrontier_BattlePikeLobby_Text_FailedToSaveBeforeQuitting: @ 825C2E0 +BattleFrontier_BattlePikeLobby_Text_FailedToSaveBeforeQuitting: .string "I beg your pardon, but…\p" .string "You failed to save before you quit\n" .string "your challenge the last time.\p" .string "Because of that, your challenge so far\n" .string "has been disqualified. I am sorry…$" -BattleFrontier_BattlePikeLobby_Text_SnatchedVictoryFromQueen: @ 825C383 +BattleFrontier_BattlePikeLobby_Text_SnatchedVictoryFromQueen: .string "Congratulations…\p" .string "You have snatched victory from the\n" .string "PIKE QUEEN and cleared the event…$" -BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints: @ 825C3D9 +BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints: .string "In recognition of your amazing luck,\n" .string "we award you these Battle Point(s)…$" -BattleFrontier_BattlePikeLobby_Text_OneRoomAwayFromGoal: @ 825C422 +BattleFrontier_BattlePikeLobby_Text_OneRoomAwayFromGoal: .string "Arrgh! I blew my chance!\n" .string "I was one room away from the goal!\p" .string "In this place, you'd better watch out\n" .string "for poison, freezing, and so on.$" -BattleFrontier_BattlePikeLobby_Text_NeverHadToBattleTrainer: @ 825C4A5 +BattleFrontier_BattlePikeLobby_Text_NeverHadToBattleTrainer: .string "I've completed the challenge 10 times\n" .string "now, but I've never had to battle\l" .string "a TRAINER once.$" -BattleFrontier_BattlePikeLobby_Text_ThinkAbilitiesUsefulHere: @ 825C4FD +BattleFrontier_BattlePikeLobby_Text_ThinkAbilitiesUsefulHere: .string "Listen! Listen!\p" .string "Don't you think that the special\n" .string "abilities of POKéMON will be useful\l" .string "here?$" @ Unused -BattleFrontier_BattlePikeLobby_Text_TrainersWhicheverPathIChoose: @ 825C558 +BattleFrontier_BattlePikeLobby_Text_TrainersWhicheverPathIChoose: .string "What is this weird place?\n" .string "I can't figure it out at all!\p" .string "I've taken the challenge a bunch\n" .string "of times, but all I ever do is run into\l" .string "TRAINERS whichever path I choose.$" -BattleFrontier_BattlePikeLobby_Text_RulesAreListed: @ 825C5FB +BattleFrontier_BattlePikeLobby_Text_RulesAreListed: .string "The Battle Choice's rules are listed.$" -BattleFrontier_BattlePikeLobby_Text_ReadWhichHeading: @ 825C621 +BattleFrontier_BattlePikeLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattlePikeLobby_Text_ExplainPokenavBagRules: @ 825C644 +BattleFrontier_BattlePikeLobby_Text_ExplainPokenavBagRules: .string "The BAG and POKéNAV may not be used\n" .string "during a Battle Choice challenge.$" -BattleFrontier_BattlePikeLobby_Text_ExplainHeldItemRules: @ 825C68A +BattleFrontier_BattlePikeLobby_Text_ExplainHeldItemRules: .string "During a Battle Choice challenge,\n" .string "any BERRY or HERB held by POKéMON\l" .string "will be effective only once.$" -BattleFrontier_BattlePikeLobby_Text_ExplainMonOrderRules: @ 825C6EB +BattleFrontier_BattlePikeLobby_Text_ExplainMonOrderRules: .string "During a Battle Choice challenge,\n" .string "the sequence of POKéMON cannot be\l" .string "changed.\p" diff --git a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc index 51c7d5610dfc..15ebbeb3fd19 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattlePikeRoomFinal_MapScripts:: @ 825E392 +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 .byte 0 -BattleFrontier_BattlePikeRoomFinal_OnFrame: @ 825E39D +BattleFrontier_BattlePikeRoomFinal_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom:: @ 825E3A7 +BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom:: delay 16 applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePikeRoomFinal_Movement_AttendantApproachPlayer waitmovement 0 @@ -22,21 +22,21 @@ BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom:: @ 825E3A7 waitstate end -BattleFrontier_BattlePikeRoomFinal_Movement_AttendantApproachPlayer: @ 825E3DB +BattleFrontier_BattlePikeRoomFinal_Movement_AttendantApproachPlayer: walk_down walk_down step_end -BattleFrontier_BattlePikeRoomFinal_OnWarp: @ 825E3DE +BattleFrontier_BattlePikeRoomFinal_OnWarp: map_script_2 VAR_TEMP_4, 0, BattleFrontier_BattlePikeRoomFinal_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePikeRoomFinal_EventScript_TurnPlayerNorth:: @ 825E3E8 +BattleFrontier_BattlePikeRoomFinal_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_4, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeRoomFinal_Text_CongratsThisWayPlease: @ 825E3F2 +BattleFrontier_BattlePikeRoomFinal_Text_CongratsThisWayPlease: .string "Congratulations…\n" .string "Now, this way, please…$" diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 4238dd3f3765..6ab862287c04 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -3,18 +3,18 @@ .equ LOCALID_OBJ_0, 1 .equ LOCALID_OBJ_1, 2 -BattleFrontier_BattlePikeRoomNormal_MapScripts:: @ 825D152 +BattleFrontier_BattlePikeRoomNormal_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePikeRoom_OnResume map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePikeRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeRoomNormal_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoom_OnWarp .byte 0 -BattleFrontier_BattlePikeRoomNormal_OnFrame: @ 825D167 +BattleFrontier_BattlePikeRoomNormal_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom:: @ 825D171 +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom:: setvar VAR_TEMP_0, 1 pike_getroomtype switch VAR_RESULT @@ -26,7 +26,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom:: @ 825D171 case PIKE_ROOM_BRAIN, BattleFrontier_BattlePikeRoomNormal_EventScript_EnterBrainRoom end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterSingleBattleRoom:: @ 825D1C6 +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterSingleBattleRoom:: lockall delay 16 applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer @@ -42,18 +42,18 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterSingleBattleRoom:: @ 825D1C waitstate switch VAR_RESULT case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_WonSingleBattle -BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost:: @ 825D20A +BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 waitstate end -BattleFrontier_BattlePikeRoomNormal_EventScript_WonSingleBattle:: @ 825D226 +BattleFrontier_BattlePikeRoomNormal_EventScript_WonSingleBattle:: applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit waitmovement 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterHardBattleRoom:: @ 825D231 +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterHardBattleRoom:: lockall delay 16 msgbox BattleFrontier_BattlePikeRoomNormal_Text_BattleSomewhatToughTrainer, MSGBOX_DEFAULT @@ -75,7 +75,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterHardBattleRoom:: @ 825D231 goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost end -BattleFrontier_BattlePikeRoomNormal_EventScript_WonHardBattle:: @ 825D285 +BattleFrontier_BattlePikeRoomNormal_EventScript_WonHardBattle:: applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit waitmovement 0 applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCApproachPlayer @@ -93,7 +93,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_WonHardBattle:: @ 825D285 waitmovement 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterBrainRoom:: @ 825D2BF +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterBrainRoom:: delay 22 lockall applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_PreQueenHealNPCApproachPlayer @@ -104,7 +104,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterBrainRoom:: @ 825D2BF case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealOneMon case 2, BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealTwoMons -BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter:: @ 825D2FB +BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_ShallFetchOurMaster, MSGBOX_DEFAULT closemessage special SpawnCameraObject @@ -141,14 +141,14 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter:: @ 825D2FB goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver msgbox BattleFrontier_BattlePikeRoomNormal_Text_ImThePikeQueen, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver:: @ 825D3BD +BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_HopeYouDidntUseUpLuck, MSGBOX_DEFAULT call BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost -BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver:: @ 825D3DA +BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver:: frontier_getsymbols compare VAR_RESULT, 0 goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy @@ -163,20 +163,20 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver:: @ 825D3DA closemessage goto BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy -BattleFrontier_BattlePikeRoomNormal_EventScript_IntroLucyGold:: @ 825D416 +BattleFrontier_BattlePikeRoomNormal_EventScript_IntroLucyGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold msgbox BattleFrontier_BattlePikeRoomNormal_Text_LucyYouAgain, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold:: @ 825D443 +BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_NowComeOn, MSGBOX_DEFAULT call BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost -BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold:: @ 825D460 +BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold:: frontier_getsymbols compare VAR_RESULT, 2 goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy @@ -192,7 +192,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold:: @ 825D460 goto BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy end -BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy:: @ 825D49D +BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy:: applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_LucyMoveAside waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2 @@ -204,26 +204,26 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy:: @ 825D49D waitstate end -BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenNoHeal:: @ 825D4DC +BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenNoHeal:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomNoHeal, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter end -BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealOneMon:: @ 825D4EA +BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealOneMon:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealOne, MSGBOX_DEFAULT playfanfare MUS_HEAL waitfanfare goto BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter end -BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealTwoMons:: @ 825D4FC +BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealTwoMons:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealTwo, MSGBOX_DEFAULT playfanfare MUS_HEAL waitfanfare goto BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom:: @ 825D50E +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom:: lockall delay 16 applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer @@ -240,7 +240,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom:: @ 825D50E releaseall end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterDoubleBattleRoom:: @ 825D53E +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterDoubleBattleRoom:: lockall delay 16 applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1WalkRight @@ -272,7 +272,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterDoubleBattleRoom:: @ 825D53 goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost end -BattleFrontier_BattlePikeRoomNormal_EventScript_WonDoubleBattle:: @ 825D5DC +BattleFrontier_BattlePikeRoomNormal_EventScript_WonDoubleBattle:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2 waitmovement 0 applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit @@ -283,7 +283,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_WonDoubleBattle:: @ 825D5DC waitmovement 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_EnterStatusRoom:: @ 825D605 +BattleFrontier_BattlePikeRoomNormal_EventScript_EnterStatusRoom:: lockall message BattleFrontier_BattlePikeRoomNormal_Text_WatchOut applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer @@ -299,7 +299,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterStatusRoom:: @ 825D605 releaseall end -BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: @ 825D643 +BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_KirliaStop, MSGBOX_DEFAULT closemessage waitse @@ -334,7 +334,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: @ 825D643 msgbox BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForKirlia, MSGBOX_DEFAULT return -BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: @ 825D6D5 +BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_DusclopsStop, MSGBOX_DEFAULT closemessage waitse @@ -365,37 +365,37 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: @ 825D6D5 msgbox BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForDusclops, MSGBOX_DEFAULT return -BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedToxic:: @ 825D751 +BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedToxic:: message BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedToxic waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedWillOWisp:: @ 825D758 +BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedWillOWisp:: message BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedWillOWisp waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedThunderWave:: @ 825D75F +BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedThunderWave:: message BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedThunderWave waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedHypnosis:: @ 825D766 +BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedHypnosis:: message BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedHypnosis waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedIceBeam:: @ 825D76D +BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedIceBeam:: message BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedIceBeam waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp:: @ 825D774 +BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp:: message BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedWillOWisp waitmessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle:: @ 825D77B +BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle:: closemessage applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2 waitmovement 0 @@ -405,12 +405,12 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle:: @ 825D77B waitstate return -BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer: @ 825D795 +BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer: walk_down walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit: @ 825D798 +BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit: walk_up walk_up walk_up @@ -418,17 +418,17 @@ BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit: @ 825D798 walk_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExit: @ 825D79E +BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExit: walk_up set_invisible walk_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon: @ 825D7A2 +BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon: walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer: @ 825D7A4 +BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer: walk_down face_left delay_16 @@ -436,7 +436,7 @@ BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer: @ 825D7A4 face_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer: @ 825D7AA +BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer: walk_fast_down walk_fast_right walk_fast_right @@ -445,57 +445,57 @@ BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer: @ 825D7AA face_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC: @ 825D7B1 +BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC: face_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside: @ 825D7B3 +BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside: walk_left -BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceRight: @ 825D7B4 +BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceRight: face_right step_end -BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCApproachPlayer: @ 825D7B6 +BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCApproachPlayer: walk_down walk_down walk_right face_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer1: @ 825D7BB +BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer1: face_left step_end -BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2: @ 825D7BD +BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2: face_right step_end -BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceUp: @ 825D7BF +BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceUp: face_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1WalkRight: @ 825D7C1 +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1WalkRight: walk_right step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2WalkLeft: @ 825D7C3 +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2WalkLeft: walk_left step_end -BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown: @ 825D7C5 +BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown: walk_down walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1FacePlayer: @ 825D7C8 +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1FacePlayer: face_right step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2FacePlayer: @ 825D7CA +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2FacePlayer: face_left step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit: @ 825D7CC +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit: walk_up walk_up walk_up @@ -505,7 +505,7 @@ BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit: @ 825D7CC walk_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2Exit: @ 825D7D4 +BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2Exit: walk_up walk_up walk_up @@ -516,40 +516,40 @@ BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2Exit: @ 825D7D4 step_end @ For approaching Lucy and exiting room after defeating Lucy -BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2: @ 825D7DC +BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2: walk_up walk_up step_end -BattleFrontier_BattlePikeRoomNormal_Movement_PreQueenHealNPCApproachPlayer: @ 825D7DF +BattleFrontier_BattlePikeRoomNormal_Movement_PreQueenHealNPCApproachPlayer: walk_down walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExitForLucy: @ 825D7E2 +BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExitForLucy: walk_up walk_up walk_up set_invisible step_end -BattleFrontier_BattlePikeRoomNormal_Movement_LucyEnter: @ 825D7E7 +BattleFrontier_BattlePikeRoomNormal_Movement_LucyEnter: set_visible walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Movement_LucyMoveAside: @ 825D7EA +BattleFrontier_BattlePikeRoomNormal_Movement_LucyMoveAside: walk_left face_right step_end -BattleFrontier_BattlePikeRoomNormal_EventScript_NPC:: @ 825D7ED +BattleFrontier_BattlePikeRoomNormal_EventScript_NPC:: pike_getroomtype switch VAR_RESULT case PIKE_ROOM_NPC, BattleFrontier_BattlePikeRoomNormal_EventScript_NormalNPC case PIKE_ROOM_STATUS, BattleFrontier_BattlePikeRoomNormal_EventScript_StatusNPC case PIKE_ROOM_HEAL_PART, BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC -BattleFrontier_BattlePikeRoomNormal_EventScript_NormalNPC:: @ 825D81B +BattleFrontier_BattlePikeRoomNormal_EventScript_NormalNPC:: lock faceplayer pike_getnpcmsg @@ -559,7 +559,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_NormalNPC:: @ 825D81B release end -BattleFrontier_BattlePikeRoomNormal_EventScript_StatusNPC:: @ 825D831 +BattleFrontier_BattlePikeRoomNormal_EventScript_StatusNPC:: lock faceplayer msgbox BattleFrontier_BattlePikeRoomNormal_Text_ApologizeHopeMonsAreFine, MSGBOX_DEFAULT @@ -567,7 +567,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_StatusNPC:: @ 825D831 release end -BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC:: @ 825D83E +BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC:: pike_healonetwomons compare VAR_RESULT, 2 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons @@ -582,14 +582,14 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC:: @ 825D83E waitmovement 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreOneMon:: @ 825D875 +BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreOneMon:: lock faceplayer msgbox BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreOneMon, MSGBOX_DEFAULT closemessage return -BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons:: @ 825D881 +BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons:: lock faceplayer msgbox BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreTwoMons, MSGBOX_DEFAULT @@ -597,7 +597,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons:: @ 825D881 return @ Dusclops or Kirlia -BattleFrontier_BattlePikeRoomNormal_EventScript_StatusMon:: @ 825D88D +BattleFrontier_BattlePikeRoomNormal_EventScript_StatusMon:: lock faceplayer msgbox BattleFrontier_BattlePikeRoomNormal_Text_Silence, MSGBOX_DEFAULT @@ -607,7 +607,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_StatusMon:: @ 825D88D waitmovement 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesMostlyClosed:: @ 825D8A4 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesMostlyClosed:: setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage1_Tile0, 1 setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage1_Tile1, 1 setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage1_Tile2, 1 @@ -618,7 +618,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesMostlyClosed:: @ special DrawWholeMapView return -BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed:: @ 825D8E7 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed:: setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage2_Tile0, 1 setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage2_Tile1, 1 setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage2_Tile2, 1 @@ -629,7 +629,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed:: @ special DrawWholeMapView return -BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesOpen:: @ 825D92A +BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesOpen:: setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage3_Tile0, 1 setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage3_Tile1, 1 setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage3_Tile2, 1 @@ -640,7 +640,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesOpen:: @ 825D92A special DrawWholeMapView return -BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesClosed:: @ 825D96D +BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesClosed:: setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage0_Tile0, 1 setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage0_Tile1, 1 setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage0_Tile2, 1 @@ -651,136 +651,136 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesClosed:: @ 825D96 special DrawWholeMapView return -BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanUp: @ 825D9B0 +BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanUp: walk_up walk_up step_end @ Unused -BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanDown: @ 825D9B3 +BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanDown: walk_down walk_down step_end -BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreToFullHealth: @ 825D9B6 +BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreToFullHealth: .string "Welcome…\n" .string "You must be commended for your luck…\p" .string "Your POKéMON shall be restored\n" .string "to full health…$" -BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge: @ 825DA13 +BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge: .string "I urge you to enjoy the rest of your\n" .string "Battle Choice challenge…$" -BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreOneMon: @ 825DA51 +BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreOneMon: .string "Ah, you're a lucky one.\n" .string "I'm in somewhat-good spirits now.\p" .string "I will restore one of your POKéMON\n" .string "to full health.$" -BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell: @ 825DABE +BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell: .string "The best of luck to you.\n" .string "Farewell.$" @ Seems there was a planned room type where the player could choose to battle and would be healed if they won @ Possibly replaced/superseded by the hard battle room, which is the same but the battle isnt optional @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_CareForBattleWillRestoreMons: @ 825DAE1 +BattleFrontier_BattlePikeRoomNormal_Text_CareForBattleWillRestoreMons: .string "Excuse me…\p" .string "Would you care for a battle?\n" .string "I'll restore your POKéMON if you win.$" @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_NowShallWe: @ 825DB2F +BattleFrontier_BattlePikeRoomNormal_Text_NowShallWe: .string "Very well…\n" .string "Now, shall we?$" @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_HowUnsportingOfYou: @ 825DB49 +BattleFrontier_BattlePikeRoomNormal_Text_HowUnsportingOfYou: .string "I see…\n" .string "How unsporting of you…$" @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreMonsAsPromised: @ 825DB67 +BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreMonsAsPromised: .string "Magnificent…\p" .string "As promised, I shall restore your\n" .string "POKéMON to full health.$" @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell2: @ 825DBAE +BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell2: .string "The best of luck to you.\n" .string "Farewell.$" -BattleFrontier_BattlePikeRoomNormal_Text_WatchOut: @ 825DBD1 +BattleFrontier_BattlePikeRoomNormal_Text_WatchOut: .string "Oh, my!\p" .string "Watch out!$" -BattleFrontier_BattlePikeRoomNormal_Text_KirliaStop: @ 825DBE4 +BattleFrontier_BattlePikeRoomNormal_Text_KirliaStop: .string "Now, now!\n" .string "KIRLIA, stop that!$" -BattleFrontier_BattlePikeRoomNormal_Text_DusclopsStop: @ 825DC01 +BattleFrontier_BattlePikeRoomNormal_Text_DusclopsStop: .string "Now, now!\n" .string "DUSCLOPS, stop that!$" -BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedToxic: @ 825DC20 +BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedToxic: .string "KIRLIA used TOXIC!$" -BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedHypnosis: @ 825DC33 +BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedHypnosis: .string "KIRLIA used HYPNOSIS!$" -BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedThunderWave: @ 825DC49 +BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedThunderWave: .string "KIRLIA used THUNDER WAVE!$" -BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedWillOWisp: @ 825DC63 +BattleFrontier_BattlePikeRoomNormal_Text_KirliaUsedWillOWisp: .string "KIRLIA used WILL-O-WISP!$" -BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedWillOWisp: @ 825DC7C +BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedWillOWisp: .string "DUSCLOPS used WILL-O-WISP!$" -BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedIceBeam: @ 825DC97 +BattleFrontier_BattlePikeRoomNormal_Text_DusclopsUsedIceBeam: .string "DUSCLOPS used ICE BEAM!$" -BattleFrontier_BattlePikeRoomNormal_Text_ThatsEnough: @ 825DCAF +BattleFrontier_BattlePikeRoomNormal_Text_ThatsEnough: .string "Look here!\n" .string "That's quite enough!$" -BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForKirlia: @ 825DCCF +BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForKirlia: .string "I must apologize to you…\p" .string "My KIRLIA has a TIMID nature…$" -BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForDusclops: @ 825DD06 +BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForDusclops: .string "I must apologize to you…\p" .string "My DUSCLOPS has a TIMID nature…$" -BattleFrontier_BattlePikeRoomNormal_Text_AttacksWhenStartled: @ 825DD3F +BattleFrontier_BattlePikeRoomNormal_Text_AttacksWhenStartled: .string "It attacks without warning if it is\n" .string "startled by another person…\p" .string "Are you and your POKéMON all right?$" -BattleFrontier_BattlePikeRoomNormal_Text_ApologizeHopeMonsAreFine: @ 825DDA3 +BattleFrontier_BattlePikeRoomNormal_Text_ApologizeHopeMonsAreFine: .string "I do apologize for what happened…\n" .string "I do hope your POKéMON are fine.$" -BattleFrontier_BattlePikeRoomNormal_Text_Silence: @ 825DDE6 +BattleFrontier_BattlePikeRoomNormal_Text_Silence: .string "… … … … … …\n" .string "… … … … … …$" -BattleFrontier_BattlePikeRoomNormal_Text_BattleSomewhatToughTrainer: @ 825DDFE +BattleFrontier_BattlePikeRoomNormal_Text_BattleSomewhatToughTrainer: .string "Welcome…\p" .string "Here, we will have you battle\n" .string "a somewhat-tough TRAINER…$" -BattleFrontier_BattlePikeRoomNormal_Text_RestoreToFullHealth: @ 825DE3F +BattleFrontier_BattlePikeRoomNormal_Text_RestoreToFullHealth: .string "How wonderful…\p" .string "To honor your victory, your POKéMON\n" .string "shall be restored to full health…$" -BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge2: @ 825DE94 +BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge2: .string "I urge you to enjoy the rest of your\n" .string "Battle Choice challenge…$" -BattleFrontier_BattlePikeRoomNormal_Text_ImThePikeQueen: @ 825DED2 +BattleFrontier_BattlePikeRoomNormal_Text_ImThePikeQueen: .string "I am LUCY…\n" .string "I am the law here…\l" .string "For I am the PIKE QUEEN…\p" @@ -789,23 +789,23 @@ BattleFrontier_BattlePikeRoomNormal_Text_ImThePikeQueen: @ 825DED2 .string "…I'm not one for idle chatter.\n" .string "Hurry. Come on…$" -BattleFrontier_BattlePikeRoomNormal_Text_HopeYouDidntUseUpLuck: @ 825DF71 +BattleFrontier_BattlePikeRoomNormal_Text_HopeYouDidntUseUpLuck: .string "Your luck…\n" .string "I hope you didn't use it all up here…$" -BattleFrontier_BattlePikeRoomNormal_Text_LucyShowMeFrontierPass: @ 825DFA2 +BattleFrontier_BattlePikeRoomNormal_Text_LucyShowMeFrontierPass: .string "LUCY: … … … … … …\n" .string "Show me your FRONTIER PASS…$" -BattleFrontier_BattlePikeRoomNormal_Text_ReceivedLuckSymbol: @ 825DFD0 +BattleFrontier_BattlePikeRoomNormal_Text_ReceivedLuckSymbol: .string "The Luck Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattlePikeRoomNormal_Text_AllThereIsDisappear: @ 825E003 +BattleFrontier_BattlePikeRoomNormal_Text_AllThereIsDisappear: .string "…That's all there is…\n" .string "Disappear already…$" -BattleFrontier_BattlePikeRoomNormal_Text_LucyYouAgain: @ 825E02C +BattleFrontier_BattlePikeRoomNormal_Text_LucyYouAgain: .string "LUCY: …You again…\p" .string "… … … … … …\p" .string "…I've trampled flowers and braved\n" @@ -815,51 +815,51 @@ BattleFrontier_BattlePikeRoomNormal_Text_LucyYouAgain: @ 825E02C .string "… … … … … …\n" .string "Fine… I'll do it…$" -BattleFrontier_BattlePikeRoomNormal_Text_NowComeOn: @ 825E0E8 +BattleFrontier_BattlePikeRoomNormal_Text_NowComeOn: .string "Now!\n" .string "Come on!$" -BattleFrontier_BattlePikeRoomNormal_Text_LucyFrontierPass: @ 825E0F6 +BattleFrontier_BattlePikeRoomNormal_Text_LucyFrontierPass: .string "LUCY: … … … … … …\p" .string "…FRONTIER PASS…$" -BattleFrontier_BattlePikeRoomNormal_Text_LuckSymbolTookGoldenShine: @ 825E118 +BattleFrontier_BattlePikeRoomNormal_Text_LuckSymbolTookGoldenShine: .string "The Luck Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattlePikeRoomNormal_Text_IWontForget: @ 825E140 +BattleFrontier_BattlePikeRoomNormal_Text_IWontForget: .string "…You, I won't forget…\n" .string "…Ever…$" -BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomNoHeal: @ 825E15D +BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomNoHeal: .string "I welcome you…\p" .string "Giggle…\n" .string "You seem to be bereft of luck…\p" .string "If only you hadn't chosen this room,\n" .string "your POKéMON could have been healed…$" -BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealOne: @ 825E1DD +BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealOne: .string "I welcome you…\p" .string "Since you have chosen this room, I will\n" .string "restore one POKéMON to full health…$" -BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealTwo: @ 825E238 +BattleFrontier_BattlePikeRoomNormal_Text_ChoseRoomHealTwo: .string "I welcome you…\p" .string "Since you have chosen this room, I will\n" .string "restore two POKéMON to full health…$" @ Unused -BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreAllMons: @ 825E293 +BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreAllMons: .string "I welcome you…\p" .string "Giggle…\n" .string "You should thank your lucky stars…\p" .string "Since you have chosen this room,\n" .string "all your POKéMON will be restored…$" -BattleFrontier_BattlePikeRoomNormal_Text_ShallFetchOurMaster: @ 825E311 +BattleFrontier_BattlePikeRoomNormal_Text_ShallFetchOurMaster: .string "I shall go fetch our master…$" -BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreTwoMons: @ 825E32E +BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreTwoMons: .string "Ah, you're a lucky one!\n" .string "I'm in good spirits now.\p" .string "I will restore two of your POKéMON\n" diff --git a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc index b035d25d3b81..ee9e548f6ebd 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc @@ -1,35 +1,35 @@ -BattleFrontier_BattlePikeRoomWildMons_MapScripts:: @ 825E41A +BattleFrontier_BattlePikeRoomWildMons_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePikeRoomWildMons_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeRoomWildMons_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoomWildMons_OnWarp .byte 0 -BattleFrontier_BattlePikeRoomWildMons_OnFrame: @ 825E42A +BattleFrontier_BattlePikeRoomWildMons_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeRoomWildMons_EventScript_SetInWildMonRoom map_script_2 VAR_TEMP_1, 1, BattleFrontier_BattlePikeRoomWildMons_EventScript_WarpToLobbyLost .2byte 0 -BattleFrontier_BattlePikeRoomWildMons_EventScript_SetInWildMonRoom:: @ 825E43C +BattleFrontier_BattlePikeRoomWildMons_EventScript_SetInWildMonRoom:: setvar VAR_TEMP_0, 1 pike_inwildmonroom end -BattleFrontier_BattlePikeRoomWildMons_EventScript_WarpToLobbyLost:: @ 825E44A +BattleFrontier_BattlePikeRoomWildMons_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 waitstate end -BattleFrontier_BattlePikeRoomWildMons_OnWarp: @ 825E466 +BattleFrontier_BattlePikeRoomWildMons_OnWarp: map_script_2 VAR_TEMP_4, 0, BattleFrontier_BattlePikeRoomWildMons_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePikeRoomWildMons_EventScript_TurnPlayerNorth:: @ 825E470 +BattleFrontier_BattlePikeRoomWildMons_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_4, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeRoomWildMons_OnResume: @ 825E47A +BattleFrontier_BattlePikeRoomWildMons_OnResume: call BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves frontier_get FRONTIER_DATA_BATTLE_OUTCOME compare VAR_RESULT, B_OUTCOME_LOST @@ -38,7 +38,7 @@ BattleFrontier_BattlePikeRoomWildMons_OnResume: @ 825E47A goto_if_eq BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost end -BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost:: @ 825E4A3 +BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost:: setvar VAR_TEMP_1, 1 end diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc index acdd490204e7..37737554f5a3 100644 --- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc @@ -1,12 +1,12 @@ .set LOCALID_HINT_GIVER, 2 -BattleFrontier_BattlePikeThreePathRoom_MapScripts:: @ 825C843 +BattleFrontier_BattlePikeThreePathRoom_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePikeRoom_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeThreePathRoom_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeThreePathRoom_OnWarp .byte 0 -BattleFrontier_BattlePikeThreePathRoom_OnFrame: @ 825C853 +BattleFrontier_BattlePikeThreePathRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge @@ -14,25 +14,25 @@ BattleFrontier_BattlePikeThreePathRoom_OnFrame: @ 825C853 map_script_2 VAR_TEMP_5, 1, BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint .2byte 0 -BattleFrontier_BattlePikeThreePathRoom_OnWarp: @ 825C87D +BattleFrontier_BattlePikeThreePathRoom_OnWarp: map_script_2 VAR_TEMP_4, 0, BattleFrontier_BattlePikeThreePathRoom_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePikeThreePathRoom_EventScript_TurnPlayerNorth:: @ 825C887 +BattleFrontier_BattlePikeThreePathRoom_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_4, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus:: @ 825C891 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby:: @ 825C89A +BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby:: warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 waitstate end -BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge:: @ 825C8A4 +BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge:: lockall message BattleFrontier_BattlePikeThreePathRoom_Text_AwaitingReturnSaveBeforeResume waitmessage @@ -50,7 +50,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_ResumeChallenge:: @ 825C8A4 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 99 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_Attendant:: @ 825C908 +BattleFrontier_BattlePikeThreePathRoom_EventScript_Attendant:: frontier_get FRONTIER_DATA_BATTLE_NUM @ Room number switch VAR_RESULT case 1, BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom1 @@ -62,56 +62,56 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_Attendant:: @ 825C908 case 13, BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom13 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom1:: @ 825C968 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom1:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom1, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom3:: @ 825C978 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom3:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom3, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom5:: @ 825C988 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom5:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom5, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom7:: @ 825C998 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom7:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom7, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom9:: @ 825C9A8 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom9:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom9, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom11:: @ 825C9B8 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom11:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom11, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom13:: @ 825C9C8 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AttendantRoom13:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom13, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge:: @ 825C9D8 +BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_ContinueWithChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattlePikeThreePathRoom_EventScript_AskSaveChallenge @@ -119,7 +119,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AskContinueChallenge:: @ 825C release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge:: @ 825C9FD +BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge:: frontier_saveparty message BattleFrontier_BattlePikeThreePathRoom_Text_SavingYourData waitmessage @@ -131,7 +131,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge:: @ 825C9FD frontier_reset end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AskSaveChallenge:: @ 825CA2A +BattleFrontier_BattlePikeThreePathRoom_EventScript_AskSaveChallenge:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_SaveChallengeAndQuit, MSGBOX_YESNO switch VAR_RESULT case YES, BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge @@ -140,7 +140,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AskSaveChallenge:: @ 825CA2A release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AskRetireChallenge:: @ 825CA5A +BattleFrontier_BattlePikeThreePathRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattlePikeThreePathRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -149,18 +149,18 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AskRetireChallenge:: @ 825CA5 release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_SetHintRoom:: @ 825CA78 +BattleFrontier_BattlePikeThreePathRoom_EventScript_SetHintRoom:: pike_sethintroom compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint setvar VAR_TEMP_5, 255 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint:: @ 825CA91 +BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint:: setvar VAR_TEMP_5, 1 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint:: @ 825CA97 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint:: applymovement LOCALID_HINT_GIVER, BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer waitmovement 0 lockall @@ -171,7 +171,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint:: @ 825CA97 setvar VAR_TEMP_5, 255 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: @ 825CABB +BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: pike_gethint compare VAR_RESULT, PIKE_HINT_BRAIN goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint @@ -185,12 +185,12 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: @ 825CABB release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_DeclineHint:: @ 825CB00 +BattleFrontier_BattlePikeThreePathRoom_EventScript_DeclineHint:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_ApologizeForImpertinence, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_AcceptHint:: @ 825CB0A +BattleFrontier_BattlePikeThreePathRoom_EventScript_AcceptHint:: pike_gethintroomid switch VAR_RESULT case PIKE_ROOM_LEFT, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveLeftRoomHint @@ -198,19 +198,19 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AcceptHint:: @ 825CB0A case PIKE_ROOM_RIGHT, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveRightRoomHint end -BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveLeftRoomHint:: @ 825CB39 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveLeftRoomHint:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutLeftPath, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint -BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveCenterRoomHint:: @ 825CB46 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveCenterRoomHint:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutCenterPath, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint -BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveRightRoomHint:: @ 825CB53 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveRightRoomHint:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutRightPath, MSGBOX_DEFAULT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint -BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint:: @ 825CB60 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint:: pike_gethint switch VAR_RESULT case PIKE_HINT_NOSTALGIA, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintNostalgia @@ -219,34 +219,34 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint:: @ 825CB60 case PIKE_HINT_PEOPLE, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintPeople end -BattleFrontier_BattlePikeThreePathRoom_EventScript_HintNostalgia:: @ 825CB9A +BattleFrontier_BattlePikeThreePathRoom_EventScript_HintNostalgia:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_WaveOfNostaliga, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_HintWhispering:: @ 825CBA4 +BattleFrontier_BattlePikeThreePathRoom_EventScript_HintWhispering:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_HeardWhispering, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_HintPokemon:: @ 825CBAE +BattleFrontier_BattlePikeThreePathRoom_EventScript_HintPokemon:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_AromaOfPokemon, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_HintPeople:: @ 825CBB8 +BattleFrontier_BattlePikeThreePathRoom_EventScript_HintPeople:: msgbox BattleFrontier_BattlePikeThreePathRoom_Text_PresenceOfPeople, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint:: @ 825CBC2 +BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint:: lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_DreadfulPresence, MSGBOX_DEFAULT release end -BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer: @ 825CBCE +BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer: walk_left walk_left walk_down @@ -255,7 +255,7 @@ BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer: @ 825CB walk_down step_end -BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverReturnToPos: @ 825CBD5 +BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverReturnToPos: walk_up walk_up walk_up @@ -265,107 +265,107 @@ BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverReturnToPos: @ 825CBD5 face_down step_end -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom1: @ 825CBDD +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom1: .string "You are currently in\n" .string "the 1st room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom3: @ 825CC00 +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom3: .string "You are currently in\n" .string "the 3rd room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom5: @ 825CC23 +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom5: .string "You are currently in\n" .string "the 5th room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom7: @ 825CC46 +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom7: .string "You are currently in\n" .string "the 7th room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom9: @ 825CC69 +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom9: .string "You are currently in\n" .string "the 9th room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom11: @ 825CC8C +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom11: .string "You are currently in\n" .string "the 11th room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom13: @ 825CCB0 +BattleFrontier_BattlePikeThreePathRoom_Text_CurrentlyInRoom13: .string "You are currently in\n" .string "the 13th room…$" -BattleFrontier_BattlePikeThreePathRoom_Text_ContinueWithChallenge: @ 825CCD4 +BattleFrontier_BattlePikeThreePathRoom_Text_ContinueWithChallenge: .string "Will you continue with\n" .string "your challenge?$" -BattleFrontier_BattlePikeThreePathRoom_Text_SaveChallengeAndQuit: @ 825CCFB +BattleFrontier_BattlePikeThreePathRoom_Text_SaveChallengeAndQuit: .string "Would you like to save your challenge\n" .string "and quit the game for now?$" -BattleFrontier_BattlePikeThreePathRoom_Text_RetireFromChallenge: @ 825CD3C +BattleFrontier_BattlePikeThreePathRoom_Text_RetireFromChallenge: .string "Do you wish to retire from your\n" .string "Battle Choice challenge?$" -BattleFrontier_BattlePikeThreePathRoom_Text_AwaitingReturnSaveBeforeResume: @ 825CD75 +BattleFrontier_BattlePikeThreePathRoom_Text_AwaitingReturnSaveBeforeResume: .string "We've been awaiting your return…\p" .string "Before resuming your Battle Choice\n" .string "challenge, let me save the game…$" -BattleFrontier_BattlePikeThreePathRoom_Text_PleaseEnjoyChallenge: @ 825CDDA +BattleFrontier_BattlePikeThreePathRoom_Text_PleaseEnjoyChallenge: .string "Please do enjoy your Battle Choice\n" .string "challenge…$" -BattleFrontier_BattlePikeThreePathRoom_Text_SavingYourData: @ 825CE08 +BattleFrontier_BattlePikeThreePathRoom_Text_SavingYourData: .string "I am saving your data…\n" .string "A little time, please…$" -BattleFrontier_BattlePike_Text_PathBlockedNoTurningBack: @ 825CE36 +BattleFrontier_BattlePike_Text_PathBlockedNoTurningBack: .string "The path is blocked!\n" .string "And there is no turning back…$" -BattleFrontier_BattlePikeThreePathRoom_Text_FindingItDifficultToChoose: @ 825CE69 +BattleFrontier_BattlePikeThreePathRoom_Text_FindingItDifficultToChoose: .string "I beg your pardon, but…\p" .string "Are you perhaps finding it difficult\n" .string "to choose your path?$" -BattleFrontier_BattlePikeThreePathRoom_Text_ApologizeForImpertinence: @ 825CEBB +BattleFrontier_BattlePikeThreePathRoom_Text_ApologizeForImpertinence: .string "I see…\n" .string "I apologize for my impertinence…$" -BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutRightPath: @ 825CEE3 +BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutRightPath: .string "Ah, let me see… There is something\n" .string "about the path on the right…$" -BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutCenterPath: @ 825CF23 +BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutCenterPath: .string "Ah, let me see… There is something\n" .string "about the path in the center…$" -BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutLeftPath: @ 825CF64 +BattleFrontier_BattlePikeThreePathRoom_Text_SomethingAboutLeftPath: .string "Ah, let me see… There is something\n" .string "about the path on the left…$" -BattleFrontier_BattlePikeThreePathRoom_Text_AromaOfPokemon: @ 825CFA3 +BattleFrontier_BattlePikeThreePathRoom_Text_AromaOfPokemon: .string "It seems to have the distinct aroma\n" .string "of POKéMON wafting around it…$" -BattleFrontier_BattlePikeThreePathRoom_Text_PresenceOfPeople: @ 825CFE5 +BattleFrontier_BattlePikeThreePathRoom_Text_PresenceOfPeople: .string "Is it… A TRAINER?\n" .string "I sense the presence of people…$" -BattleFrontier_BattlePikeThreePathRoom_Text_HeardWhispering: @ 825D017 +BattleFrontier_BattlePikeThreePathRoom_Text_HeardWhispering: .string "I seem to have heard something…\n" .string "It may have been whispering…$" -BattleFrontier_BattlePikeThreePathRoom_Text_WaveOfNostaliga: @ 825D054 +BattleFrontier_BattlePikeThreePathRoom_Text_WaveOfNostaliga: .string "For some odd reason, I felt a wave\n" .string "of nostalgia coming from it…$" -BattleFrontier_BattlePikeThreePathRoom_Text_TerrifyingEvent: @ 825D094 +BattleFrontier_BattlePikeThreePathRoom_Text_TerrifyingEvent: .string "I am sorry to say…\p" .string "A terrifying event, yes, a horrible one,\n" .string "is about to befall you…\p" .string "I urge you to pay the utmost care\n" .string "and prepare for the worst…$" -BattleFrontier_BattlePikeThreePathRoom_Text_DreadfulPresence: @ 825D125 +BattleFrontier_BattlePikeThreePathRoom_Text_DreadfulPresence: .string "From every path I sense a dreadful\n" .string "presence…$" diff --git a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc index e63e27e4e223..8993418ee8b9 100644 --- a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc @@ -1,16 +1,16 @@ -BattleFrontier_BattlePyramidFloor_MapScripts:: @ 8252A33 +BattleFrontier_BattlePyramidFloor_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePyramidFloor_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePyramidFloor_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePyramidFloor_OnTransition .byte 0 -BattleFrontier_BattlePyramidFloor_OnFrame: @ 8252A43 +BattleFrontier_BattlePyramidFloor_OnFrame: map_script_2 VAR_TEMP_D, 1, BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight map_script_2 VAR_TEMP_E, 0, BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic map_script_2 VAR_TEMP_F, 1, BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName .2byte 0 -BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight:: @ 8252A5D +BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight:: lockall @ pyramid_updatelight, cant use macro because it straddles the loop setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_UPDATE_LIGHT @@ -18,7 +18,7 @@ BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight:: @ 8252A5D setvar VAR_0x8006, PYRAMID_LIGHT_INCR_RADIUS setvar VAR_0x8007, SE_SAVE setvar VAR_RESULT, 0 -BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop:: @ 8252A77 +BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop:: special CallBattlePyramidFunction delay 2 compare VAR_RESULT, 2 @@ -27,17 +27,17 @@ BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop:: @ 8252A77 releaseall end -BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName:: @ 8252A8F +BattleFrontier_BattlePyramidFloor_EventScript_ShowMapName:: special ShowMapNamePopup setvar VAR_TEMP_F, 0 end -BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic:: @ 8252A98 +BattleFrontier_BattlePyramidFloor_EventScript_PlayPyramidMusic:: playbgm MUS_B_PYRAMID, FALSE setvar VAR_TEMP_E, 1 end -BattleFrontier_BattlePyramidFloor_OnResume: @ 8252AA2 +BattleFrontier_BattlePyramidFloor_OnResume: pyramid_setfloorpal frontier_getstatus switch VAR_TEMP_0 @@ -59,14 +59,14 @@ BattleFrontier_BattlePyramidFloor_OnResume: @ 8252AA2 goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost frontier_isbattletype BATTLE_TYPE_TRAINER @ VAR_RESULT seems to be ignored here setvar VAR_TEMP_D, 1 -BattleFrontier_BattlePyramidFloor_EventScript_ResetParty:: @ 8252B39 +BattleFrontier_BattlePyramidFloor_EventScript_ResetParty:: pyramid_resetparty end -BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost:: @ 8252B42 +BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST pyramid_set PYRAMID_DATA_TRAINER_FLAGS, 255 -BattleFrontier_BattlePyramid_EventScript_WarpToLobby:: @ 8252B66 +BattleFrontier_BattlePyramid_EventScript_WarpToLobby:: pyramid_updatelight 0, PYRAMID_LIGHT_SET_RADIUS pyramid_clearhelditems special HealPlayerParty @@ -74,7 +74,7 @@ BattleFrontier_BattlePyramid_EventScript_WarpToLobby:: @ 8252B66 waitstate end -BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge:: @ 8252B8D +BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge:: pyramid_save CHALLENGE_STATUS_SAVING special SavePlayerParty frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 @@ -83,16 +83,16 @@ BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge:: @ 8252B8D setvar VAR_TEMP_F, 1 end -BattleFrontier_BattlePyramidFloor_OnTransition: @ 8252BCA +BattleFrontier_BattlePyramidFloor_OnTransition: call BattleFrontier_BattlePyramidFloor_EventScript_SetLightRadius setvar VAR_TEMP_F, 1 end -BattleFrontier_BattlePyramidFloor_EventScript_SetLightRadius:: @ 8252BD5 +BattleFrontier_BattlePyramidFloor_EventScript_SetLightRadius:: pyramid_updatelight 32, PYRAMID_LIGHT_SET_RADIUS return -BattlePyramid_WarpToNextFloor:: @ 8252BE8 +BattlePyramid_WarpToNextFloor:: call BattleFrontier_EventScript_IncrementWinStreak frontier_get FRONTIER_DATA_BATTLE_NUM @ Floor number addvar VAR_RESULT, 1 @@ -106,13 +106,13 @@ BattlePyramid_WarpToNextFloor:: @ 8252BE8 waitstate end -BattlePyramid_WarpToTop:: @ 8252C45 +BattlePyramid_WarpToTop:: warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP, 255, 17, 17 waitstate end @ TRAINER_PHILLIP is used as a placeholder -BattlePyramid_TrainerBattle:: @ 8252C4F +BattlePyramid_TrainerBattle:: trainerbattle TRAINER_BATTLE_PYRAMID, TRAINER_PHILLIP, 0, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText pyramid_showhint waitmessage @@ -121,620 +121,620 @@ BattlePyramid_TrainerBattle:: @ 8252C4F releaseall end -BattlePyramid_FindItemBall:: @ 8252C6A +BattlePyramid_FindItemBall:: pyramid_setitem callstd STD_FIND_ITEM compare VAR_0x8007, 0 goto_if_eq BattlePyramid_FindItemBallEnd pyramid_hideitem -BattlePyramid_FindItemBallEnd:: @ 8252C87 +BattlePyramid_FindItemBallEnd:: end -BattlePyramid_Retire:: @ 8252C88 +BattlePyramid_Retire:: goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @ Also used by Trainer Hill -BattleFacility_TrainerBattle_PlaceholderText: @ 8252C8D +BattleFacility_TrainerBattle_PlaceholderText: .string "This is a sample message.$" -gText_BattlePyramidConfirmRest:: @ 8252CA7 +gText_BattlePyramidConfirmRest:: .string "Your BATTLE PYRAMID quest will be\n" .string "saved so that you may quit for now.\l" .string "Is that okay?$" -gText_BattlePyramidConfirmRetire:: @ 8252CFB +gText_BattlePyramidConfirmRetire:: .string "Are you sure you want to quit your\n" .string "PYRAMID quest?$" -BattlePyramid_Text_ExitHintUp1:: @ 8252D2D +BattlePyramid_Text_ExitHintUp1:: .string "This floor's exit is in\n" .string "that direction: {UP_ARROW}$" -BattlePyramid_Text_ExitHintLeft1:: @ 8252D57 +BattlePyramid_Text_ExitHintLeft1:: .string "This floor's exit is in\n" .string "that direction: {LEFT_ARROW}$" -BattlePyramid_Text_ExitHintRight1:: @ 8252D81 +BattlePyramid_Text_ExitHintRight1:: .string "This floor's exit is in\n" .string "that direction: {RIGHT_ARROW}$" -BattlePyramid_Text_ExitHintDown1:: @ 8252DAB +BattlePyramid_Text_ExitHintDown1:: .string "This floor's exit is in\n" .string "that direction: {DOWN_ARROW}$" -BattlePyramid_Text_ExitHintUp2:: @ 8252DD5 +BattlePyramid_Text_ExitHintUp2:: .string "The exit on this floor is in\n" .string "the {UP_ARROW} direction.$" -BattlePyramid_Text_ExitHintLeft2:: @ 8252E03 +BattlePyramid_Text_ExitHintLeft2:: .string "The exit on this floor is in\n" .string "the {LEFT_ARROW} direction.$" -BattlePyramid_Text_ExitHintRight2:: @ 8252E31 +BattlePyramid_Text_ExitHintRight2:: .string "The exit on this floor is in\n" .string "the {RIGHT_ARROW} direction.$" -BattlePyramid_Text_ExitHintDown2:: @ 8252E5F +BattlePyramid_Text_ExitHintDown2:: .string "The exit on this floor is in\n" .string "the {DOWN_ARROW} direction.$" -BattlePyramid_Text_ExitHintUp3:: @ 8252E8D +BattlePyramid_Text_ExitHintUp3:: .string "The exit is over\n" .string "that {UP_ARROW} way.$" -BattlePyramid_Text_ExitHintLeft3:: @ 8252EAA +BattlePyramid_Text_ExitHintLeft3:: .string "The exit is over\n" .string "that {LEFT_ARROW} way.$" -BattlePyramid_Text_ExitHintRight3:: @ 8252EC7 +BattlePyramid_Text_ExitHintRight3:: .string "The exit is over\n" .string "that {RIGHT_ARROW} way.$" -BattlePyramid_Text_ExitHintDown3:: @ 8252EE4 +BattlePyramid_Text_ExitHintDown3:: .string "The exit is over\n" .string "that {DOWN_ARROW} way.$" -BattlePyramid_Text_ExitHintUp4:: @ 8252F01 +BattlePyramid_Text_ExitHintUp4:: .string "On this floor, the exit is somewhere\n" .string "in the {UP_ARROW} direction.$" -BattlePyramid_Text_ExitHintLeft4:: @ 8252F3A +BattlePyramid_Text_ExitHintLeft4:: .string "On this floor, the exit is somewhere\n" .string "in the {LEFT_ARROW} direction.$" -BattlePyramid_Text_ExitHintRight4:: @ 8252F73 +BattlePyramid_Text_ExitHintRight4:: .string "On this floor, the exit is somewhere\n" .string "in the {RIGHT_ARROW} direction.$" -BattlePyramid_Text_ExitHintDown4:: @ 8252FAC +BattlePyramid_Text_ExitHintDown4:: .string "On this floor, the exit is somewhere\n" .string "in the {DOWN_ARROW} direction.$" -BattlePyramid_Text_ExitHintUp5:: @ 8252FE5 +BattlePyramid_Text_ExitHintUp5:: .string "The exit?\n" .string "It's that {UP_ARROW} way.$" -BattlePyramid_Text_ExitHintLeft5:: @ 8253000 +BattlePyramid_Text_ExitHintLeft5:: .string "The exit?\n" .string "It's that {LEFT_ARROW} way.$" -BattlePyramid_Text_ExitHintRight5:: @ 825301B +BattlePyramid_Text_ExitHintRight5:: .string "The exit?\n" .string "It's that {RIGHT_ARROW} way.$" -BattlePyramid_Text_ExitHintDown5:: @ 8253036 +BattlePyramid_Text_ExitHintDown5:: .string "The exit?\n" .string "It's that {DOWN_ARROW} way.$" -BattlePyramid_Text_ExitHintUp6:: @ 8253051 +BattlePyramid_Text_ExitHintUp6:: .string "The exit happens to be in\n" .string "the {UP_ARROW} direction.$" -BattlePyramid_Text_ExitHintLeft6:: @ 825307C +BattlePyramid_Text_ExitHintLeft6:: .string "The exit happens to be in\n" .string "the {LEFT_ARROW} direction.$" -BattlePyramid_Text_ExitHintRight6:: @ 82530A7 +BattlePyramid_Text_ExitHintRight6:: .string "The exit happens to be in\n" .string "the {RIGHT_ARROW} direction.$" -BattlePyramid_Text_ExitHintDown6:: @ 82530D2 +BattlePyramid_Text_ExitHintDown6:: .string "The exit happens to be in\n" .string "the {DOWN_ARROW} direction.$" -BattlePyramid_Text_EightItemsRemaining1:: @ 82530FD +BattlePyramid_Text_EightItemsRemaining1:: .string "Are you looking for items?\p" .string "There are eight items left to\n" .string "be found.$" -BattlePyramid_Text_SevenItemsRemaining1:: @ 8253140 +BattlePyramid_Text_SevenItemsRemaining1:: .string "Are you looking for items?\p" .string "There are seven items left to\n" .string "be found.$" -BattlePyramid_Text_SixItemsRemaining1:: @ 8253183 +BattlePyramid_Text_SixItemsRemaining1:: .string "Are you looking for items?\p" .string "There are six items left to\n" .string "be found.$" -BattlePyramid_Text_FiveItemsRemaining1:: @ 82531C4 +BattlePyramid_Text_FiveItemsRemaining1:: .string "Are you looking for items?\p" .string "There are five items left to\n" .string "be found.$" -BattlePyramid_Text_FourItemsRemaining1:: @ 8253206 +BattlePyramid_Text_FourItemsRemaining1:: .string "Are you looking for items?\p" .string "There are four items left to\n" .string "be found.$" -BattlePyramid_Text_ThreeItemsRemaining1:: @ 8253248 +BattlePyramid_Text_ThreeItemsRemaining1:: .string "Are you looking for items?\p" .string "There are three items left to\n" .string "be found.$" -BattlePyramid_Text_TwoItemsRemaining1:: @ 825328B +BattlePyramid_Text_TwoItemsRemaining1:: .string "Are you looking for items?\p" .string "There are two items left to\n" .string "be found.$" -BattlePyramid_Text_OneItemRemaining1:: @ 82532CC +BattlePyramid_Text_OneItemRemaining1:: .string "Are you looking for items?\p" .string "There is one item left to\n" .string "be found.$" -BattlePyramid_Text_ZeroItemsRemaining1:: @ 825330B +BattlePyramid_Text_ZeroItemsRemaining1:: .string "Are you looking for items?\p" .string "There isn't anything left to\n" .string "be found!$" -BattlePyramid_Text_EightItemsRemaining2:: @ 825334D +BattlePyramid_Text_EightItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are eight items\n" .string "lying around here.$" -BattlePyramid_Text_SevenItemsRemaining2:: @ 82533A6 +BattlePyramid_Text_SevenItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are seven items left\n" .string "lying around here.$" -BattlePyramid_Text_SixItemsRemaining2:: @ 8253404 +BattlePyramid_Text_SixItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are six items left\n" .string "lying around here.$" -BattlePyramid_Text_FiveItemsRemaining2:: @ 8253460 +BattlePyramid_Text_FiveItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are five items left\n" .string "lying around here.$" -BattlePyramid_Text_FourItemsRemaining2:: @ 82534BD +BattlePyramid_Text_FourItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are four items left\n" .string "lying around here.$" -BattlePyramid_Text_ThreeItemsRemaining2:: @ 825351A +BattlePyramid_Text_ThreeItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are three items left\n" .string "lying around here.$" -BattlePyramid_Text_TwoItemsRemaining2:: @ 8253578 +BattlePyramid_Text_TwoItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There are two items left\n" .string "lying around here.$" -BattlePyramid_Text_OneItemRemaining2:: @ 82535D4 +BattlePyramid_Text_OneItemRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There is just one item\n" .string "lying around here.$" -BattlePyramid_Text_ZeroItemsRemaining2:: @ 825362E +BattlePyramid_Text_ZeroItemsRemaining2:: .string "Because you won, I'll tell you\n" .string "a little secret!\p" .string "There isn't anything left\n" .string "lying around here.$" -BattlePyramid_Text_EightItemsRemaining3:: @ 825368B +BattlePyramid_Text_EightItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are eight items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_SevenItemsRemaining3:: @ 82536F8 +BattlePyramid_Text_SevenItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are seven items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_SixItemsRemaining3:: @ 8253765 +BattlePyramid_Text_SixItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are six items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_FiveItemsRemaining3:: @ 82537D0 +BattlePyramid_Text_FiveItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are five items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_FourItemsRemaining3:: @ 825383C +BattlePyramid_Text_FourItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are four items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_ThreeItemsRemaining3:: @ 82538A8 +BattlePyramid_Text_ThreeItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are three items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_TwoItemsRemaining3:: @ 8253915 +BattlePyramid_Text_TwoItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are two items left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_OneItemRemaining3:: @ 8253980 +BattlePyramid_Text_OneItemRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there's but one item left\n" .string "waiting to be found on this floor.$" -BattlePyramid_Text_ZeroItemsRemaining3:: @ 82539EC +BattlePyramid_Text_ZeroItemsRemaining3:: .string "How's your stock of items holding up?\p" .string "I reckon there are no more items\n" .string "waiting to be found on this floor.\l" .string "You take care now!$" -BattlePyramid_Text_EightItemsRemaining4:: @ 8253A69 +BattlePyramid_Text_EightItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be eight more\n" .string "items on the ground.$" -BattlePyramid_Text_SevenItemsRemaining4:: @ 8253AC4 +BattlePyramid_Text_SevenItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be seven more\n" .string "items on the ground.$" -BattlePyramid_Text_SixItemsRemaining4:: @ 8253B1F +BattlePyramid_Text_SixItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be six more\n" .string "items on the ground.$" -BattlePyramid_Text_FiveItemsRemaining4:: @ 8253B78 +BattlePyramid_Text_FiveItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be five more\n" .string "items on the ground.$" -BattlePyramid_Text_FourItemsRemaining4:: @ 8253BD2 +BattlePyramid_Text_FourItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be four more\n" .string "items on the ground.$" -BattlePyramid_Text_ThreeItemsRemaining4:: @ 8253C2C +BattlePyramid_Text_ThreeItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be three more\n" .string "items on the ground.$" -BattlePyramid_Text_TwoItemsRemaining4:: @ 8253C87 +BattlePyramid_Text_TwoItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be two more\n" .string "items on the ground.$" -BattlePyramid_Text_OneItemRemaining4:: @ 8253CE0 +BattlePyramid_Text_OneItemRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appears to be only one more\n" .string "item on the ground.$" -BattlePyramid_Text_ZeroItemsRemaining4:: @ 8253D3E +BattlePyramid_Text_ZeroItemsRemaining4:: .string "You're strong, so you've earned\n" .string "a hint!\p" .string "There appear to be no more\n" .string "items on the ground.$" -BattlePyramid_Text_EightItemsRemaining5:: @ 8253D96 +BattlePyramid_Text_EightItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are eight items…$" -BattlePyramid_Text_SevenItemsRemaining5:: @ 8253DD2 +BattlePyramid_Text_SevenItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are seven items…$" -BattlePyramid_Text_SixItemsRemaining5:: @ 8253E0E +BattlePyramid_Text_SixItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are six items…$" -BattlePyramid_Text_FiveItemsRemaining5:: @ 8253E48 +BattlePyramid_Text_FiveItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are five items…$" -BattlePyramid_Text_FourItemsRemaining5:: @ 8253E83 +BattlePyramid_Text_FourItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are four items…$" -BattlePyramid_Text_ThreeItemsRemaining5:: @ 8253EBE +BattlePyramid_Text_ThreeItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are three items…$" -BattlePyramid_Text_TwoItemsRemaining5:: @ 8253EFA +BattlePyramid_Text_TwoItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are two items…$" -BattlePyramid_Text_OneItemRemaining5:: @ 8253F34 +BattlePyramid_Text_OneItemRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there is one item…$" -BattlePyramid_Text_ZeroItemsRemaining5:: @ 8253F6C +BattlePyramid_Text_ZeroItemsRemaining5:: .string "On this floor of the PYRAMID,\n" .string "I hear there are no items…$" -BattlePyramid_Text_EightItemsRemaining6:: @ 8253FA5 +BattlePyramid_Text_EightItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are eight more\n" .string "items on this floor.$" -BattlePyramid_Text_SevenItemsRemaining6:: @ 8253FF7 +BattlePyramid_Text_SevenItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are seven more\n" .string "items on this floor.$" -BattlePyramid_Text_SixItemsRemaining6:: @ 8254049 +BattlePyramid_Text_SixItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are six more\n" .string "items on this floor.$" -BattlePyramid_Text_FiveItemsRemaining6:: @ 8254099 +BattlePyramid_Text_FiveItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are five more\n" .string "items on this floor.$" -BattlePyramid_Text_FourItemsRemaining6:: @ 82540EA +BattlePyramid_Text_FourItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are four more\n" .string "items on this floor.$" -BattlePyramid_Text_ThreeItemsRemaining6:: @ 825413B +BattlePyramid_Text_ThreeItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are three more\n" .string "items on this floor.$" -BattlePyramid_Text_TwoItemsRemaining6:: @ 825418D +BattlePyramid_Text_TwoItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are two more\n" .string "items on this floor.$" -BattlePyramid_Text_OneItemRemaining6:: @ 82541DD +BattlePyramid_Text_OneItemRemaining6:: .string "Have you collected any items?\p" .string "I believe there is one more\n" .string "item on this floor.$" -BattlePyramid_Text_ZeroItemsRemaining6:: @ 825422B +BattlePyramid_Text_ZeroItemsRemaining6:: .string "Have you collected any items?\p" .string "I believe there are no more\n" .string "items on this floor.$" -BattlePyramid_Text_SevenTrainersRemaining1:: @ 825427A +BattlePyramid_Text_SevenTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still seven tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_SixTrainersRemaining1:: @ 82542CB +BattlePyramid_Text_SixTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still six tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_FiveTrainersRemaining1:: @ 825431A +BattlePyramid_Text_FiveTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still five tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_FourTrainersRemaining1:: @ 825436A +BattlePyramid_Text_FourTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still four tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_ThreeTrainersRemaining1:: @ 82543BA +BattlePyramid_Text_ThreeTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still three tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_TwoTrainersRemaining1:: @ 825440B +BattlePyramid_Text_TwoTrainersRemaining1:: .string "You were really awesome!\p" .string "But there are still two tough\n" .string "TRAINERS other than me!$" -BattlePyramid_Text_OneTrainersRemaining1:: @ 825445A +BattlePyramid_Text_OneTrainersRemaining1:: .string "You were really awesome!\p" .string "But there's still one tough\n" .string "TRAINER other than me!$" -BattlePyramid_Text_ZeroTrainersRemaining1:: @ 82544A6 +BattlePyramid_Text_ZeroTrainersRemaining1:: .string "You were really awesome!\p" .string "There's no one left that\n" .string "can beat you!$" -BattlePyramid_Text_SevenTrainersRemaining2:: @ 82544E6 +BattlePyramid_Text_SevenTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are seven TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_SixTrainersRemaining2:: @ 8254538 +BattlePyramid_Text_SixTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are six TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_FiveTrainersRemaining2:: @ 8254588 +BattlePyramid_Text_FiveTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are five TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_FourTrainersRemaining2:: @ 82545D9 +BattlePyramid_Text_FourTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are four TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_ThreeTrainersRemaining2:: @ 825462A +BattlePyramid_Text_ThreeTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are three TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_TwoTrainersRemaining2:: @ 825467C +BattlePyramid_Text_TwoTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are two TRAINERS left!\n" .string "Someone will humble you!$" -BattlePyramid_Text_OneTrainersRemaining2:: @ 82546CC +BattlePyramid_Text_OneTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there's one TRAINER left!\n" .string "I'm sure you will be humbled!$" -BattlePyramid_Text_ZeroTrainersRemaining2:: @ 825471E +BattlePyramid_Text_ZeroTrainersRemaining2:: .string "This is so upsetting!\p" .string "But there are no more TRAINERS\n" .string "who can engage you!$" -BattlePyramid_Text_SevenTrainersRemaining3:: @ 8254767 +BattlePyramid_Text_SevenTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are seven more TRAINERS\n" .string "on this floor. Can you beat them all?$" -BattlePyramid_Text_SixTrainersRemaining3:: @ 82547C9 +BattlePyramid_Text_SixTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are six more TRAINERS\n" .string "on this floor. Can you beat them all?$" -BattlePyramid_Text_FiveTrainersRemaining3:: @ 8254829 +BattlePyramid_Text_FiveTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are five more TRAINERS\n" .string "on this floor. Can you beat them all?$" -BattlePyramid_Text_FourTrainersRemaining3:: @ 825488A +BattlePyramid_Text_FourTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are four more TRAINERS\n" .string "on this floor. Can you beat them all?$" -BattlePyramid_Text_ThreeTrainersRemaining3:: @ 82548EB +BattlePyramid_Text_ThreeTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are three more TRAINERS\n" .string "on this floor. Can you beat them all?$" -BattlePyramid_Text_TwoTrainersRemaining3:: @ 825494D +BattlePyramid_Text_TwoTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there are two more TRAINERS\n" .string "on this floor. Can you beat them both?$" -BattlePyramid_Text_OneTrainersRemaining3:: @ 82549AE +BattlePyramid_Text_OneTrainersRemaining3:: .string "That's pretty impressive!\p" .string "But there's still one more TRAINER\n" .string "on this floor. Can you prevail?$" -BattlePyramid_Text_ZeroTrainersRemaining3:: @ 8254A0B +BattlePyramid_Text_ZeroTrainersRemaining3:: .string "That's pretty impressive!\p" .string "You've gone through all the TRAINERS\n" .string "on this floor.$" -BattlePyramid_Text_SevenTrainersRemaining4:: @ 8254A59 +BattlePyramid_Text_SevenTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the seven TRAINERS left on this floor.$" -BattlePyramid_Text_SixTrainersRemaining4:: @ 8254A9E +BattlePyramid_Text_SixTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the six TRAINERS left on this floor.$" -BattlePyramid_Text_FiveTrainersRemaining4:: @ 8254AE1 +BattlePyramid_Text_FiveTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the five TRAINERS left on this floor.$" -BattlePyramid_Text_FourTrainersRemaining4:: @ 8254B25 +BattlePyramid_Text_FourTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the four TRAINERS left on this floor.$" -BattlePyramid_Text_ThreeTrainersRemaining4:: @ 8254B69 +BattlePyramid_Text_ThreeTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the three TRAINERS left on this floor.$" -BattlePyramid_Text_TwoTrainersRemaining4:: @ 8254BAE +BattlePyramid_Text_TwoTrainersRemaining4:: .string "Maybe you could sweep through\n" .string "the two TRAINERS left on this floor.$" -BattlePyramid_Text_OneTrainersRemaining4:: @ 8254BF1 +BattlePyramid_Text_OneTrainersRemaining4:: .string "Maybe you could complete your sweep\n" .string "with the one TRAINER left on this floor.$" -BattlePyramid_Text_ZeroTrainersRemaining4:: @ 8254C3E +BattlePyramid_Text_ZeroTrainersRemaining4:: .string "There isn't a single person left who\n" .string "can defeat you now…$" -BattlePyramid_Text_SevenTrainersRemaining5:: @ 8254C77 +BattlePyramid_Text_SevenTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the seven expert TRAINERS who remain.$" -BattlePyramid_Text_SixTrainersRemaining5:: @ 8254CC0 +BattlePyramid_Text_SixTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the six expert TRAINERS who remain.$" -BattlePyramid_Text_FiveTrainersRemaining5:: @ 8254D07 +BattlePyramid_Text_FiveTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the five expert TRAINERS who remain.$" -BattlePyramid_Text_FourTrainersRemaining5:: @ 8254D4F +BattlePyramid_Text_FourTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the four expert TRAINERS who remain.$" -BattlePyramid_Text_ThreeTrainersRemaining5:: @ 8254D97 +BattlePyramid_Text_ThreeTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the three expert TRAINERS who remain.$" -BattlePyramid_Text_TwoTrainersRemaining5:: @ 8254DE0 +BattlePyramid_Text_TwoTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the two expert TRAINERS who remain.$" -BattlePyramid_Text_OneTrainersRemaining5:: @ 8254E27 +BattlePyramid_Text_OneTrainersRemaining5:: .string "You may have what it takes to beat\n" .string "the one expert TRAINER who remains.$" -BattlePyramid_Text_ZeroTrainersRemaining5:: @ 8254E6E +BattlePyramid_Text_ZeroTrainersRemaining5:: .string "Your skills are beyond reproach.\p" .string "There are no more TRAINERS here\n" .string "who have any chance of beating you.$" -BattlePyramid_Text_SevenTrainersRemaining6:: @ 8254ED3 +BattlePyramid_Text_SevenTrainersRemaining6:: .string "Can you keep winning against\n" .string "the seven remaining TRAINERS?$" -BattlePyramid_Text_SixTrainersRemaining6:: @ 8254F0E +BattlePyramid_Text_SixTrainersRemaining6:: .string "Can you keep winning against\n" .string "the six remaining TRAINERS?$" -BattlePyramid_Text_FiveTrainersRemaining6:: @ 8254F47 +BattlePyramid_Text_FiveTrainersRemaining6:: .string "Can you keep winning against\n" .string "the five remaining TRAINERS?$" -BattlePyramid_Text_FourTrainersRemaining6:: @ 8254F81 +BattlePyramid_Text_FourTrainersRemaining6:: .string "Can you keep winning against\n" .string "the four remaining TRAINERS?$" -BattlePyramid_Text_ThreeTrainersRemaining6:: @ 8254FBB +BattlePyramid_Text_ThreeTrainersRemaining6:: .string "Can you keep winning against\n" .string "the three remaining TRAINERS?$" -BattlePyramid_Text_TwoTrainersRemaining6:: @ 8254FF6 +BattlePyramid_Text_TwoTrainersRemaining6:: .string "Can you keep winning against\n" .string "the two remaining TRAINERS?$" -BattlePyramid_Text_OneTrainersRemaining6:: @ 825502F +BattlePyramid_Text_OneTrainersRemaining6:: .string "Can you keep winning against\n" .string "the last remaining TRAINER?$" -BattlePyramid_Text_ZeroTrainersRemaining6:: @ 8255068 +BattlePyramid_Text_ZeroTrainersRemaining6:: .string "There aren't any TRAINERS left that\n" .string "can take you on now…$" diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc index 175d2c56b710..c93deee3eca9 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc @@ -1,22 +1,22 @@ .set LOCALID_ATTENDANT, 1 .set LOCALID_HINT_GIVER, 2 -BattleFrontier_BattlePyramidLobby_MapScripts:: @ 8250716 +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 .byte 0 @ Unused. Pyramid uses Dome's OnWarp (presumably by mistake). Their effects are identical -BattleFrontier_BattlePyramidLobby_OnWarp: @ 8250721 +BattleFrontier_BattlePyramidLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePyramidLobby_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattlePyramidLobby_EventScript_TurnPlayerNorth: @ 825072B +BattleFrontier_BattlePyramidLobby_EventScript_TurnPlayerNorth: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePyramidLobby_OnFrame: @ 8250735 +BattleFrontier_BattlePyramidLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidLobby_EventScript_ResumeChallenge @@ -24,11 +24,11 @@ BattleFrontier_BattlePyramidLobby_OnFrame: @ 8250735 map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus:: @ 825075F +BattleFrontier_BattlePyramidLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving:: @ 8250768 +BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving:: lockall message BattleFrontier_BattlePyramidLobby_Text_DidntSaveBeforeQuittingTakeBag waitmessage @@ -42,7 +42,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving:: @ 8250768 releaseall end -BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge:: @ 82507B1 +BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge:: lockall frontier_isbrain compare VAR_RESULT, TRUE @@ -50,9 +50,9 @@ BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge:: @ 82507B1 msgbox BattleFrontier_BattlePyramidLobby_Text_YouveConqueredPyramid, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints -BattleFrontier_BattlePyramidLobby_EventScript_DefeatedKing:: @ 82507D2 +BattleFrontier_BattlePyramidLobby_EventScript_DefeatedKing:: msgbox BattleFrontier_BattlePyramidLobby_Text_YouveDefeatedPyramidKing, MSGBOX_DEFAULT -BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints:: @ 82507DA +BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints:: special DoBattlePyramidMonsHaveHeldItem compare VAR_RESULT, TRUE call_if_eq BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag @@ -80,7 +80,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints:: @ 82507DA releaseall end -BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge:: @ 8250852 +BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge:: frontier_checkairshow special LoadPlayerParty pyramid_clearhelditems @@ -102,17 +102,17 @@ BattleFrontier_BattlePyramidLobby_EventScript_LostChallenge:: @ 8250852 releaseall end -BattleFrontier_BattlePyramidLobby_EventScript_ResumeChallenge:: @ 82508AC +BattleFrontier_BattlePyramidLobby_EventScript_ResumeChallenge:: goto BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge -BattleFrontier_BattlePyramidLobby_EventScript_Attendant:: @ 82508B1 +BattleFrontier_BattlePyramidLobby_EventScript_Attendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PYRAMID setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES special SavePlayerParty msgbox BattleFrontier_BattlePyramidLobby_Text_WelcomeToBattlePyramid, MSGBOX_DEFAULT -BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge:: @ 82508C8 +BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge:: message BattleFrontier_BattlePyramidLobby_Text_EmbarkOnChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -122,7 +122,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge:: @ 82508C8 case 2, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge -BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: @ 8250904 +BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: message BattleFrontier_BattlePyramidLobby_Text_WhichLevelMode waitmessage multichoice 17, 6, MULTI_LEVEL_MODE, FALSE @@ -148,7 +148,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: @ 8250904 case YES, BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge -BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge:: @ 82509A5 +BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER pyramid_init @@ -164,7 +164,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge:: @ 82509A5 setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed -BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge:: @ 8250A21 +BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox BattleFrontier_BattlePyramidLobby_Text_ShowYouIntoPyramid, MSGBOX_DEFAULT @@ -178,36 +178,36 @@ BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge:: @ 8250A21 waitstate end -BattleFrontier_BattlePyramidLobby_EventScript_ExplainChallenge:: @ 8250A68 +BattleFrontier_BattlePyramidLobby_EventScript_ExplainChallenge:: msgbox BattleFrontier_BattlePyramidLobby_Text_ExplainBattlePyramid, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_AskTakeChallenge -BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons:: @ 8250A75 +BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLv50:: @ 8250A90 +BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLv50:: msgbox BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8250A9D +BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_EndCancelChallenge -BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed:: @ 8250AAA +BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge -BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge:: @ 8250AC1 +BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge:: @ 8250AC4 +BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge:: msgbox BattleFrontier_BattlePyramidLobby_Text_AwaitFutureChallenge, MSGBOX_DEFAULT -BattleFrontier_BattlePyramidLobby_EventScript_EndCancelChallenge:: @ 8250ACC +BattleFrontier_BattlePyramidLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattlePyramidLobby_EventScript_HintGiver:: @ 8250ACE +BattleFrontier_BattlePyramidLobby_EventScript_HintGiver:: lockall applymovement LOCALID_HINT_GIVER, Common_Movement_FacePlayer waitmovement 0 @@ -217,7 +217,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_HintGiver:: @ 8250ACE releaseall end -BattleFrontier_BattlePyramidLobby_EventScript_GiveHint:: @ 8250AF0 +BattleFrontier_BattlePyramidLobby_EventScript_GiveHint:: multichoice 17, 6, MULTI_LEVEL_MODE, FALSE switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50 @@ -227,10 +227,10 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveHint:: @ 8250AF0 return @ Shouldnt occur -BattleFrontier_BattlePyramidLobby_EventScript_NoHint:: @ 8250B27 +BattleFrontier_BattlePyramidLobby_EventScript_NoHint:: return -BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50:: @ 8250B28 +BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50:: msgbox BattleFrontier_BattlePyramidLobby_Text_Aah, MSGBOX_DEFAULT pyramid_get PYRAMID_DATA_WIN_STREAK_ACTIVE_50 compare VAR_RESULT, FALSE @@ -239,12 +239,12 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50:: @ 8250B28 goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return -BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLv50Streak:: @ 8250B53 +BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLv50Streak:: pyramid_get PYRAMID_DATA_WIN_STREAK_50 goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return -BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLvOpen:: @ 8250B66 +BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLvOpen:: msgbox BattleFrontier_BattlePyramidLobby_Text_Aah, MSGBOX_DEFAULT pyramid_get PYRAMID_DATA_WIN_STREAK_ACTIVE_OPEN compare VAR_RESULT, FALSE @@ -253,12 +253,12 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLvOpen:: @ 8250B66 goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return -BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLvOpenStreak:: @ 8250B91 +BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLvOpenStreak:: pyramid_get PYRAMID_DATA_WIN_STREAK_OPEN goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return -BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment:: @ 8250BA4 +BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment:: copyvar VAR_0x8004, VAR_RESULT special GetBattlePyramidHint switch VAR_RESULT @@ -284,87 +284,87 @@ BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment:: @ 8250BA4 case 19, BattleFrontier_BattlePyramidLobby_EventScript_HintNormal return -BattleFrontier_BattlePyramidLobby_EventScript_HintParalysis:: @ 8250C8E +BattleFrontier_BattlePyramidLobby_EventScript_HintParalysis:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintParalysis, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintPoison:: @ 8250C97 +BattleFrontier_BattlePyramidLobby_EventScript_HintPoison:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintPoison, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintBurn:: @ 8250CA0 +BattleFrontier_BattlePyramidLobby_EventScript_HintBurn:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintBurn, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintPPWaste:: @ 8250CA9 +BattleFrontier_BattlePyramidLobby_EventScript_HintPPWaste:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintPPWaste, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintLevitate:: @ 8250CB2 +BattleFrontier_BattlePyramidLobby_EventScript_HintLevitate:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintLevitate, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintTrapAbility:: @ 8250CBB +BattleFrontier_BattlePyramidLobby_EventScript_HintTrapAbility:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintTrapAbility, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintIce:: @ 8250CC4 +BattleFrontier_BattlePyramidLobby_EventScript_HintIce:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintIce, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintExplosion:: @ 8250CCD +BattleFrontier_BattlePyramidLobby_EventScript_HintExplosion:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintExplosion, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintPsychic:: @ 8250CD6 +BattleFrontier_BattlePyramidLobby_EventScript_HintPsychic:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintPsychic, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintRock:: @ 8250CDF +BattleFrontier_BattlePyramidLobby_EventScript_HintRock:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintRock, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintFighting:: @ 8250CE8 +BattleFrontier_BattlePyramidLobby_EventScript_HintFighting:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintFighting, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintWeather:: @ 8250CF1 +BattleFrontier_BattlePyramidLobby_EventScript_HintWeather:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintWeather, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintBug:: @ 8250CFA +BattleFrontier_BattlePyramidLobby_EventScript_HintBug:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintBug, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintDark:: @ 8250D03 +BattleFrontier_BattlePyramidLobby_EventScript_HintDark:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintDark, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintWater:: @ 8250D0C +BattleFrontier_BattlePyramidLobby_EventScript_HintWater:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintWater, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintGhost:: @ 8250D15 +BattleFrontier_BattlePyramidLobby_EventScript_HintGhost:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintGhost, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintSteel:: @ 8250D1E +BattleFrontier_BattlePyramidLobby_EventScript_HintSteel:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintSteel, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintFlyingDragon:: @ 8250D27 +BattleFrontier_BattlePyramidLobby_EventScript_HintFlyingDragon:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintFlyingDragon, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintStoneEvolve:: @ 8250D30 +BattleFrontier_BattlePyramidLobby_EventScript_HintStoneEvolve:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintStoneEvolve, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_HintNormal:: @ 8250D39 +BattleFrontier_BattlePyramidLobby_EventScript_HintNormal:: msgbox BattleFrontier_BattlePyramidLobby_Text_HintNormal, MSGBOX_DEFAULT return -BattleFrontier_BattlePyramidLobby_EventScript_ShowResults:: @ 8250D42 +BattleFrontier_BattlePyramidLobby_EventScript_ShowResults:: lockall frontier_results FRONTIER_FACILITY_PYRAMID waitbuttonpress @@ -372,7 +372,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_ShowResults:: @ 8250D42 releaseall end -BattleFrontier_BattlePyramidLobby_EventScript_WalkToPanelAndReceiveBag:: @ 8250D56 +BattleFrontier_BattlePyramidLobby_EventScript_WalkToPanelAndReceiveBag:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel waitmovement 0 @@ -383,9 +383,9 @@ BattleFrontier_BattlePyramidLobby_EventScript_WalkToPanelAndReceiveBag:: @ 8250D msgbox BattleFrontier_BattlePyramidLobby_Text_PleaseTakePreviousBattleBag, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag -BattleFrontier_BattlePyramidLobby_EventScript_ReceiveNewBattleBag:: @ 8250D94 +BattleFrontier_BattlePyramidLobby_EventScript_ReceiveNewBattleBag:: msgbox BattleFrontier_BattlePyramidLobby_Text_PleaseTakeThisBattleBag, MSGBOX_DEFAULT -BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag:: @ 8250D9C +BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag:: message BattleFrontier_BattlePyramidLobby_Text_ExchangedBagForBattleBag waitmessage playse SE_EXP_MAX @@ -398,7 +398,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag:: @ 8250D9C waitmovement 0 return -BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel: @ 8250DC4 +BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel: walk_up walk_up walk_up @@ -409,7 +409,7 @@ BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel: @ 8250DC4 face_down step_end -BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel: @ 8250DCD +BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel: walk_up walk_up walk_up @@ -419,17 +419,17 @@ BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel: @ 8250DCD walk_up step_end -BattleFrontier_BattlePyramidLobby_Movement_AttendantMoveAside: @ 8250DD5 +BattleFrontier_BattlePyramidLobby_Movement_AttendantMoveAside: walk_right face_left step_end -BattleFrontier_BattlePyramidLobby_Movement_PlayerStepOnPanel: @ 8250DD8 +BattleFrontier_BattlePyramidLobby_Movement_PlayerStepOnPanel: walk_up walk_up step_end -BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag:: @ 8250DDB +BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag:: msgbox BattleFrontier_BattlePyramidLobby_Text_MonHoldingItemCannotTake, MSGBOX_DEFAULT setflag FLAG_STORING_ITEMS_IN_PYRAMID_BAG special TryStoreHeldItemsInPyramidBag @@ -440,12 +440,12 @@ BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag:: @ 825 goto BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep end -BattleFrontier_BattlePyramidLobby_EventScript_HeldItemsStoredInPyramidBag:: @ 8250E00 +BattleFrontier_BattlePyramidLobby_EventScript_HeldItemsStoredInPyramidBag:: msgbox BattleFrontier_BattlePyramidLobby_Text_HeldItemsMovedToBag, MSGBOX_DEFAULT return @ When exiting Battle Pyramid with a full pyramid bag and held items the player must select to keep/toss party held items and make room for any kept items by tossing from the pyramid bag -BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep:: @ 8250E09 +BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep:: multichoice 17, 6, MULTI_FRONTIER_ITEM_CHOOSE, FALSE switch VAR_RESULT case 0, BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromBag @@ -454,7 +454,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep:: @ 8250E09 case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_ExitPickItems end -BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromBag:: @ 8250E40 +BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromBag:: special ChooseItemsToTossFromPyramidBag waitstate message BattleFrontier_BattlePyramidLobby_Text_PickItemsToKeep @@ -462,7 +462,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromBag:: @ 8250E40 goto BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep end -BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromParty:: @ 8250E50 +BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromParty:: special BattlePyramidChooseMonHeldItems waitstate message BattleFrontier_BattlePyramidLobby_Text_PickItemsToKeep @@ -470,34 +470,34 @@ BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromParty:: @ 8250E50 goto BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep end -BattleFrontier_BattlePyramidLobby_EventScript_ExitPickItems:: @ 8250E60 +BattleFrontier_BattlePyramidLobby_EventScript_ExitPickItems:: special DoBattlePyramidMonsHaveHeldItem compare VAR_RESULT, TRUE goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems return -BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems:: @ 8250E6F +BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems:: msgbox BattleFrontier_BattlePyramidLobby_Text_LeastOneMonHoldingItem, MSGBOX_DEFAULT message BattleFrontier_BattlePyramidLobby_Text_PickItemsToKeep waitmessage goto BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep end -BattleFrontier_BattlePyramidLobby_EventScript_Woman:: @ 8250E83 +BattleFrontier_BattlePyramidLobby_EventScript_Woman:: msgbox BattleFrontier_BattlePyramidLobby_Text_TrainersNoticeRunning, MSGBOX_NPC end -BattleFrontier_BattlePyramidLobby_EventScript_FatMan:: @ 8250E8C +BattleFrontier_BattlePyramidLobby_EventScript_FatMan:: msgbox BattleFrontier_BattlePyramidLobby_Text_LostLotOfItems, MSGBOX_NPC end -BattleFrontier_BattlePyramidLobby_EventScript_RulesBoard:: @ 8250E95 +BattleFrontier_BattlePyramidLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattlePyramidLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard:: @ 8250EA4 +BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattlePyramidLobby_Text_ReadWhichHeading waitmessage multichoice 15, 2, MULTI_BATTLE_PYRAMID_RULES, FALSE @@ -510,45 +510,45 @@ BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard:: @ 8250EA4 case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_ExitRules end -BattleFrontier_BattlePyramidLobby_EventScript_RulesPokemon:: @ 8250EF7 +BattleFrontier_BattlePyramidLobby_EventScript_RulesPokemon:: msgbox BattleFrontier_BattlePyramidLobby_Text_ExplainMonRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePyramidLobby_EventScript_RulesTrainers:: @ 8250F05 +BattleFrontier_BattlePyramidLobby_EventScript_RulesTrainers:: msgbox BattleFrontier_BattlePyramidLobby_Text_ExplainTrainerRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePyramidLobby_EventScript_RulesMaze:: @ 8250F13 +BattleFrontier_BattlePyramidLobby_EventScript_RulesMaze:: msgbox BattleFrontier_BattlePyramidLobby_Text_ExplainMazeRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePyramidLobby_EventScript_RulesBag:: @ 8250F21 +BattleFrontier_BattlePyramidLobby_EventScript_RulesBag:: msgbox BattleFrontier_BattlePyramidLobby_Text_ExplainBagRules, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattlePyramidLobby_EventScript_ExitRules:: @ 8250F2F +BattleFrontier_BattlePyramidLobby_EventScript_ExitRules:: releaseall end -BattleFrontier_BattlePyramidLobby_Text_WelcomeToBattlePyramid: @ 8250F31 +BattleFrontier_BattlePyramidLobby_Text_WelcomeToBattlePyramid: .string "Where the courage of TRAINERS\n" .string "is put to the test!\p" .string "Welcome to the BATTLE PYRAMID!\p" .string "I am your guide to\n" .string "the Battle Quest.$" -BattleFrontier_BattlePyramidLobby_Text_EmbarkOnChallenge: @ 8250FA7 +BattleFrontier_BattlePyramidLobby_Text_EmbarkOnChallenge: .string "Have you the courage to embark on\n" .string "the Battle Quest challenge?$" -BattleFrontier_BattlePyramidLobby_Text_AwaitFutureChallenge: @ 8250FE5 +BattleFrontier_BattlePyramidLobby_Text_AwaitFutureChallenge: .string "We await your challenge in the future!$" -BattleFrontier_BattlePyramidLobby_Text_ExplainBattlePyramid: @ 825100C +BattleFrontier_BattlePyramidLobby_Text_ExplainBattlePyramid: .string "The Battle Quest is a battling\n" .string "event in which you must explore\l" .string "the PYRAMID and try to reach the top.\p" @@ -567,16 +567,16 @@ BattleFrontier_BattlePyramidLobby_Text_ExplainBattlePyramid: @ 825100C .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattlePyramidLobby_Text_WhichLevelMode: @ 8251248 +BattleFrontier_BattlePyramidLobby_Text_WhichLevelMode: .string "The PYRAMID offers two courses,\n" .string "Level 50 and Open Level.\l" .string "Which will you enter?$" -BattleFrontier_BattlePyramidLobby_Text_SelectThreeMons: @ 8251297 +BattleFrontier_BattlePyramidLobby_Text_SelectThreeMons: .string "Very good. Now, please select the three\n" .string "POKéMON you wish to accompany you.$" -BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLvOpen: @ 82512E2 +BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLvOpen: .string "A slight problem, adventurer!\p" .string "You seem to not have the three\n" .string "POKéMON qualified for the challenge.\p" @@ -586,7 +586,7 @@ BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLvOpen: @ 82512E2 .string "When you are ready, please have\n" .string "a word with me.$" -BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLv50: @ 82513C1 +BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLv50: .string "A slight problem, adventurer!\p" .string "You seem to not have the three\n" .string "POKéMON qualified for the challenge.\p" @@ -598,38 +598,38 @@ BattleFrontier_BattlePyramidLobby_Text_NotEnoughValidMonsLv50: @ 82513C1 .string "When you are ready, please have\n" .string "a word with me.$" -BattleFrontier_BattlePyramidLobby_Text_OkayToSaveBeforeChallenge: @ 82514E6 +BattleFrontier_BattlePyramidLobby_Text_OkayToSaveBeforeChallenge: .string "Before you enter the BATTLE PYRAMID,\n" .string "the game must be saved. Is that okay?$" -BattleFrontier_BattlePyramidLobby_Text_ShowYouIntoPyramid: @ 8251531 +BattleFrontier_BattlePyramidLobby_Text_ShowYouIntoPyramid: .string "Very good. I will now show you into\n" .string "the BATTLE PYRAMID.$" -BattleFrontier_BattlePyramidLobby_Text_WeWillHoldBagForSafekeeping: @ 8251569 +BattleFrontier_BattlePyramidLobby_Text_WeWillHoldBagForSafekeeping: .string "We will hold your BAG for safekeeping,\n" .string "{PLAYER}, while you are exploring.$" -BattleFrontier_BattlePyramidLobby_Text_PleaseTakePreviousBattleBag: @ 82515AD +BattleFrontier_BattlePyramidLobby_Text_PleaseTakePreviousBattleBag: .string "In exchange, please take this BATTLE\n" .string "BAG, the one you used previously.$" -BattleFrontier_BattlePyramidLobby_Text_PleaseTakeThisBattleBag: @ 82515F4 +BattleFrontier_BattlePyramidLobby_Text_PleaseTakeThisBattleBag: .string "In exchange, please take this\n" .string "BATTLE BAG.$" -BattleFrontier_BattlePyramidLobby_Text_ExchangedBagForBattleBag: @ 825161E +BattleFrontier_BattlePyramidLobby_Text_ExchangedBagForBattleBag: .string "{PLAYER} exchanged the BAG for\n" .string "the BATTLE BAG.$" -BattleFrontier_BattlePyramidLobby_Text_StepOnFloorPanel: @ 8251647 +BattleFrontier_BattlePyramidLobby_Text_StepOnFloorPanel: .string "When you step on this floor panel,\n" .string "you will be transported to a higher\l" .string "floor in the PYRAMID.\p" .string "I hope for your sake that your\n" .string "quest goes safely!$" -BattleFrontier_BattlePyramidLobby_Text_DidntSaveBeforeQuittingTakeBag: @ 82516D6 +BattleFrontier_BattlePyramidLobby_Text_DidntSaveBeforeQuittingTakeBag: .string "A major problem, explorer!\p" .string "You did not save before ending\n" .string "your challenge the last time.\p" @@ -639,112 +639,112 @@ BattleFrontier_BattlePyramidLobby_Text_DidntSaveBeforeQuittingTakeBag: @ 82516D6 .string "for you.\p" .string "{PLAYER} got the BAG back.$" -BattleFrontier_BattlePyramidLobby_Text_YouveConqueredPyramid: @ 82517B5 +BattleFrontier_BattlePyramidLobby_Text_YouveConqueredPyramid: .string "Excellent to see you back!\p" .string "You've conquered the PYRAMID!\n" .string "How splendid!$" -BattleFrontier_BattlePyramidLobby_Text_MonHoldingItemCannotTake: @ 82517FC +BattleFrontier_BattlePyramidLobby_Text_MonHoldingItemCannotTake: .string "Ah, a slight problem.\p" .string "At least one POKéMON is holding\n" .string "an item.\p" .string "I'm sorry to say, items obtained in\n" .string "the PYRAMID cannot be taken away.$" -BattleFrontier_BattlePyramidLobby_Text_HeldItemsMovedToBag: @ 8251881 +BattleFrontier_BattlePyramidLobby_Text_HeldItemsMovedToBag: .string "All items held by your POKéMON will be\n" .string "moved to your BATTLE BAG, {PLAYER}.$" -BattleFrontier_BattlePyramidLobby_Text_BagCannotHoldPickItemsToKeep: @ 82518C6 +BattleFrontier_BattlePyramidLobby_Text_BagCannotHoldPickItemsToKeep: .string "The BATTLE BAG cannot hold all your\n" .string "items, I'm sorry to say.\p" .string "Please pick the items you'll keep in the\n" .string "BATTLE BAG, and with your POKéMON.$" -BattleFrontier_BattlePyramidLobby_Text_LeastOneMonHoldingItem: @ 825194F +BattleFrontier_BattlePyramidLobby_Text_LeastOneMonHoldingItem: .string "At least one POKéMON is still\n" .string "holding an item.$" -BattleFrontier_BattlePyramidLobby_Text_PickItemsToKeep: @ 825197E +BattleFrontier_BattlePyramidLobby_Text_PickItemsToKeep: .string "Please pick the items you'll keep in the\n" .string "BATTLE BAG, and with your POKéMON.$" @ Unused -BattleFrontier_BattlePyramidLobby_Text_ReturnedEverythingMonsHeld: @ 82519CA +BattleFrontier_BattlePyramidLobby_Text_ReturnedEverythingMonsHeld: .string "{PLAYER} returned everything that\n" .string "the POKéMON held.$" -BattleFrontier_BattlePyramidLobby_Text_UsedBattleBagWillBeKept: @ 82519F8 +BattleFrontier_BattlePyramidLobby_Text_UsedBattleBagWillBeKept: .string "The BATTLE BAG you used will be kept\n" .string "in readiness for your next challenge.\p" .string "{PLAYER} turned the BATTLE BAG over\n" .string "for the BAG's return.$" -BattleFrontier_BattlePyramidLobby_Text_RecordResultsWait: @ 8251A77 +BattleFrontier_BattlePyramidLobby_Text_RecordResultsWait: .string "I must record your results.\n" .string "Please wait.$" @ Unused -BattleFrontier_BattlePyramidLobby_Text_ForConqueringPyramidTakeThis: @ 8251AA0 +BattleFrontier_BattlePyramidLobby_Text_ForConqueringPyramidTakeThis: .string "As a memento for conquering\n" .string "the BATTLE PYRAMID, please take this.$" @ Unused -BattleFrontier_BattlePyramidLobby_Text_ReceivedPrizeItem: @ 8251AE2 +BattleFrontier_BattlePyramidLobby_Text_ReceivedPrizeItem: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" @ Unused -BattleFrontier_BattlePyramidLobby_Text_BagIsFull: @ 8251AFC +BattleFrontier_BattlePyramidLobby_Text_BagIsFull: .string "…Ah…\n" .string "Your BAG appears to be filled.\p" .string "Please return after you've organized\n" .string "your BAG's contents.$" -BattleFrontier_BattlePyramidLobby_Text_DisappointingHereIsBag: @ 8251B5A +BattleFrontier_BattlePyramidLobby_Text_DisappointingHereIsBag: .string "How disappointing for you…\p" .string "Here is the BAG we've been holding\n" .string "for you.\p" .string "{PLAYER} got the BAG back.$" -BattleFrontier_BattlePyramidLobby_Text_LookForwardToNextChallenge: @ 8251BB6 +BattleFrontier_BattlePyramidLobby_Text_LookForwardToNextChallenge: .string "We look forward to your\n" .string "next challenge!$" @ Unused -BattleFrontier_BattlePyramidLobby_Text_HereIsPrize: @ 8251BDE +BattleFrontier_BattlePyramidLobby_Text_HereIsPrize: .string "We have been looking forward to\n" .string "your arrival!\p" .string "Here is your prize for conquering\n" .string "the PYRAMID.$" -BattleFrontier_BattlePyramidLobby_Text_TellYouWhatMisfortunesAwait: @ 8251C3B +BattleFrontier_BattlePyramidLobby_Text_TellYouWhatMisfortunesAwait: .string "Welcome…\p" .string "I shall be pleased to tell you what\n" .string "misfortunes await in the PYRAMID…$" -BattleFrontier_BattlePyramidLobby_Text_Aah: @ 8251C8A +BattleFrontier_BattlePyramidLobby_Text_Aah: .string "… … … … … …\n" .string "… … … … … …\p" .string "… … … … … …\n" .string "Aah!$" -BattleFrontier_BattlePyramidLobby_Text_HintParalysis: @ 8251CB3 +BattleFrontier_BattlePyramidLobby_Text_HintParalysis: .string "I see a shower of sparks…\p" .string "…And in it, I see your POKéMON\n" .string "struggling with paralysis…$" -BattleFrontier_BattlePyramidLobby_Text_HintPoison: @ 8251D07 +BattleFrontier_BattlePyramidLobby_Text_HintPoison: .string "I see poison…\p" .string "…And, I see your POKéMON suffering\n" .string "from the effects of poison…$" -BattleFrontier_BattlePyramidLobby_Text_HintBurn: @ 8251D54 +BattleFrontier_BattlePyramidLobby_Text_HintBurn: .string "I see bright red flames…\p" .string "…And, I see your POKéMON suffering\n" .string "from burns…$" -BattleFrontier_BattlePyramidLobby_Text_HintPPWaste: @ 8251D9C +BattleFrontier_BattlePyramidLobby_Text_HintPPWaste: .string "I sense the tremendous pressure of\n" .string "unrequited anger…\p" .string "It is a curse…\p" @@ -752,44 +752,44 @@ BattleFrontier_BattlePyramidLobby_Text_HintPPWaste: @ 8251D9C .string "Power Points and having no recourse\l" .string "but to use STRUGGLE…$" -BattleFrontier_BattlePyramidLobby_Text_HintLevitate: @ 8251E3D +BattleFrontier_BattlePyramidLobby_Text_HintLevitate: .string "I see POKéMON loftily airborne…\p" .string "…And, I see your POKéMON frustrated\n" .string "by powerless GROUND-type moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintTrapAbility: @ 8251EA1 +BattleFrontier_BattlePyramidLobby_Text_HintTrapAbility: .string "I sense terrific energy rising from\n" .string "the ground below…\p" .string "…And, I see your POKéMON unable to\n" .string "escape the power's clutches…$" -BattleFrontier_BattlePyramidLobby_Text_HintIce: @ 8251F17 +BattleFrontier_BattlePyramidLobby_Text_HintIce: .string "I see ICE-type POKéMON…\p" .string "…And, I see your POKéMON fighting\n" .string "the freezing effects of ice…$" -BattleFrontier_BattlePyramidLobby_Text_HintExplosion: @ 8251F6E +BattleFrontier_BattlePyramidLobby_Text_HintExplosion: .string "I see a flurry of moves that imperil\n" .string "the user…\p" .string "…And, I see your POKéMON falling\n" .string "to them…$" -BattleFrontier_BattlePyramidLobby_Text_HintPsychic: @ 8251FC7 +BattleFrontier_BattlePyramidLobby_Text_HintPsychic: .string "I see PSYCHIC-type POKéMON…\p" .string "…And, I see your POKéMON in torment\n" .string "from PSYCHIC moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintRock: @ 825201B +BattleFrontier_BattlePyramidLobby_Text_HintRock: .string "I see ROCK-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from ROCK moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintFighting: @ 8252068 +BattleFrontier_BattlePyramidLobby_Text_HintFighting: .string "I see FIGHTING-type POKéMON…\p" .string "…And, I see your POKéMON pummeled\n" .string "by FIGHTING moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintWeather: @ 82520BA +BattleFrontier_BattlePyramidLobby_Text_HintWeather: .string "RAIN DANCE… SUNNY DAY…\n" .string "SANDSTORM… HAIL…\p" .string "I see POKéMON that become stronger\n" @@ -797,37 +797,37 @@ BattleFrontier_BattlePyramidLobby_Text_HintWeather: @ 82520BA .string "…And, I see your POKéMON confounded\n" .string "by different types of moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintBug: @ 8252158 +BattleFrontier_BattlePyramidLobby_Text_HintBug: .string "I see BUG-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from different kinds of attacks…$" -BattleFrontier_BattlePyramidLobby_Text_HintDark: @ 82521B4 +BattleFrontier_BattlePyramidLobby_Text_HintDark: .string "I see DARK-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from DARK-type moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintWater: @ 8252206 +BattleFrontier_BattlePyramidLobby_Text_HintWater: .string "I see WATER-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from WATER-type moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintGhost: @ 825225A +BattleFrontier_BattlePyramidLobby_Text_HintGhost: .string "I see GHOST-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from GHOST-type moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintSteel: @ 82522AE +BattleFrontier_BattlePyramidLobby_Text_HintSteel: .string "I see STEEL-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from enormously powerful moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintFlyingDragon: @ 825230B +BattleFrontier_BattlePyramidLobby_Text_HintFlyingDragon: .string "I see flying POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from enormously powerful moves…$" -BattleFrontier_BattlePyramidLobby_Text_HintStoneEvolve: @ 8252364 +BattleFrontier_BattlePyramidLobby_Text_HintStoneEvolve: .string "I see those that have evolved from\n" .string "the power of stones…\p" .string "I also sense fire, water,\n" @@ -835,18 +835,18 @@ BattleFrontier_BattlePyramidLobby_Text_HintStoneEvolve: @ 8252364 .string "…And, I see your POKéMON suffering\n" .string "from those three powers…$" -BattleFrontier_BattlePyramidLobby_Text_HintNormal: @ 8252403 +BattleFrontier_BattlePyramidLobby_Text_HintNormal: .string "I see NORMAL-type POKéMON…\p" .string "…And, I see your POKéMON suffering\n" .string "from enormously powerful moves…$" -BattleFrontier_BattlePyramidLobby_Text_BelieveMyFortunesOrNot: @ 8252461 +BattleFrontier_BattlePyramidLobby_Text_BelieveMyFortunesOrNot: .string "Whether you believe my fortunes\n" .string "or not, the choice is yours…\p" .string "The future can be changed anytime…\n" .string "I wish you safe passage…$" -BattleFrontier_BattlePyramidLobby_Text_TrainersNoticeRunning: @ 82524DA +BattleFrontier_BattlePyramidLobby_Text_TrainersNoticeRunning: .string "Did you know?\p" .string "If you run fast, TRAINERS may notice\n" .string "and come after you for a battle.\p" @@ -854,37 +854,37 @@ BattleFrontier_BattlePyramidLobby_Text_TrainersNoticeRunning: @ 82524DA .string "don't catch their eyes, but sneak\l" .string "cautiously and quietly past them.$" -BattleFrontier_BattlePyramidLobby_Text_LostLotOfItems: @ 8252595 +BattleFrontier_BattlePyramidLobby_Text_LostLotOfItems: .string "Awaaaaaaarrrrgh!\p" .string "I had a whole lot of items, but I lost\n" .string "them all when I lost!\p" .string "Awaaaaaaarrrrgh!$" -BattleFrontier_BattlePyramidLobby_Text_YouveDefeatedPyramidKing: @ 82525F4 +BattleFrontier_BattlePyramidLobby_Text_YouveDefeatedPyramidKing: .string "Welcome back!\n" .string "You've done the unthinkable!\p" .string "You've defeated the PYRAMID KING\n" .string "and conquered the BATTLE PYRAMID!$" -BattleFrontier_BattlePyramidLobby_Text_GiveYouTheseBattlePoints: @ 8252662 +BattleFrontier_BattlePyramidLobby_Text_GiveYouTheseBattlePoints: .string "Young explorer!\n" .string "In commendation of your courage,\l" .string "we give you these Battle Point(s)!$" -BattleFrontier_BattlePyramidLobby_Text_RulesAreListed: @ 82526B6 +BattleFrontier_BattlePyramidLobby_Text_RulesAreListed: .string "The Battle Quest rules are listed.$" -BattleFrontier_BattlePyramidLobby_Text_ReadWhichHeading: @ 82526D9 +BattleFrontier_BattlePyramidLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattlePyramidLobby_Text_ExplainMonRules: @ 82526FC +BattleFrontier_BattlePyramidLobby_Text_ExplainMonRules: .string "When the PYRAMID is conquered,\n" .string "the wild POKéMON that appear in it\l" .string "are replaced by different kinds.\p" .string "Explore, observe, and learn what kinds\n" .string "of wild POKéMON you may encounter.$" -BattleFrontier_BattlePyramidLobby_Text_ExplainTrainerRules: @ 82527A9 +BattleFrontier_BattlePyramidLobby_Text_ExplainTrainerRules: .string "TRAINERS are lying in wait for you\n" .string "inside the PYRAMID.\p" .string "On each floor, there are up to\n" @@ -892,7 +892,7 @@ BattleFrontier_BattlePyramidLobby_Text_ExplainTrainerRules: @ 82527A9 .string "When you defeat a TRAINER, you will\n" .string "get a helpful hint for your adventure.$" -BattleFrontier_BattlePyramidLobby_Text_ExplainMazeRules: @ 825285A +BattleFrontier_BattlePyramidLobby_Text_ExplainMazeRules: .string "The mazes in the PYRAMID rearrange\n" .string "themselves every time you enter it.\p" .string "The mazes are poorly lit.\n" @@ -900,7 +900,7 @@ BattleFrontier_BattlePyramidLobby_Text_ExplainMazeRules: @ 825285A .string "The light grows brighter whenever you\n" .string "defeat a wild POKéMON or a TRAINER.$" -BattleFrontier_BattlePyramidLobby_Text_ExplainBagRules: @ 8252924 +BattleFrontier_BattlePyramidLobby_Text_ExplainBagRules: .string "The BATTLE BAG serves as your BAG\n" .string "while in the PYRAMID.\p" .string "There are two separate BATTLE BAGS--\n" diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc index 568424083d2f..1f031ea40f02 100644 --- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc @@ -1,37 +1,37 @@ .set LOCALID_ATTENDANT, 1 .set LOCALID_BRANDON, 2 -BattleFrontier_BattlePyramidTop_MapScripts:: @ 82550A1 +BattleFrontier_BattlePyramidTop_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePyramidTop_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePyramidTop_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePyramidTop_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePyramidTop_OnWarp .byte 0 -BattleFrontier_BattlePyramidTop_OnTransition: @ 82550B6 +BattleFrontier_BattlePyramidTop_OnTransition: pyramid_updatelight 200, PYRAMID_LIGHT_SET_RADIUS setvar VAR_TEMP_F, 1 end -BattleFrontier_BattlePyramidTop_OnWarp: @ 82550CE +BattleFrontier_BattlePyramidTop_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects .2byte 0 -BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects:: @ 82550D8 +BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH compare VAR_TEMP_C, 0 goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects setobjectxyperm LOCALID_BRANDON, 0, 0 -BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects:: @ 82550F3 +BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects:: end -BattleFrontier_BattlePyramidTop_OnResume: @ 82550F4 +BattleFrontier_BattlePyramidTop_OnResume: frontier_getbrainstatus compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus call BattleFrontier_EventScript_SetBrainObjectGfx -BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus:: @ 825510C +BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus:: copyvar VAR_TEMP_C, VAR_RESULT frontier_getstatus switch VAR_TEMP_0 @@ -47,22 +47,22 @@ BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus:: @ 825510C goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost end -BattleFrontier_BattlePyramidTop_OnFrame: @ 825516E +BattleFrontier_BattlePyramidTop_OnFrame: map_script_2 VAR_TEMP_E, 0, BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic map_script_2 VAR_TEMP_F, 1, BattleFrontier_BattlePyramidTop_EventScript_ShowMapName .2byte 0 -BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic:: @ 8255180 +BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic:: playbgm MUS_B_PYRAMID_TOP, FALSE setvar VAR_TEMP_E, 1 end -BattleFrontier_BattlePyramidTop_EventScript_ShowMapName:: @ 825518A +BattleFrontier_BattlePyramidTop_EventScript_ShowMapName:: special ShowMapNamePopup setvar VAR_TEMP_F, 0 end -BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge:: @ 8255193 +BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge:: pyramid_save CHALLENGE_STATUS_SAVING special SavePlayerParty frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 @@ -71,7 +71,7 @@ BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge:: @ 8255193 setvar VAR_TEMP_F, 1 end -BattleFrontier_BattlePyramidTop_EventScript_Attendant:: @ 82551D0 +BattleFrontier_BattlePyramidTop_EventScript_Attendant:: lock faceplayer compare VAR_TEMP_D, 0 @@ -91,25 +91,25 @@ BattleFrontier_BattlePyramidTop_EventScript_Attendant:: @ 82551D0 playfanfare MUS_OBTAIN_B_POINTS waitfanfare closemessage -BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon:: @ 825521A +BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 255, 7, 13 waitstate end -BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady:: @ 8255236 +BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady:: msgbox BattleFrontier_BattlePyramidTop_Text_StepForwardWhenReady, MSGBOX_DEFAULT closemessage end -BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside:: @ 8255240 +BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside:: msgbox BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere, MSGBOX_DEFAULT applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside setvar VAR_TEMP_D, 1 closemessage end -BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon:: @ 8255256 +BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon:: lockall switch VAR_TEMP_C case FRONTIER_BRAIN_GOLD, BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold @@ -130,10 +130,10 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon:: @ 8255256 goto BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver end -BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech:: @ 82552D0 +BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech:: applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer waitmovement 0 -BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver:: @ 82552DA +BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver:: msgbox BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle playbgm MUS_B_PYRAMID_TOP, FALSE @@ -141,7 +141,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver:: @ 82552DA goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost -BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver:: @ 82552FB +BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver:: frontier_getsymbols compare VAR_RESULT, 0 goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon @@ -154,7 +154,7 @@ BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver:: @ 82552FB msgbox BattleFrontier_BattlePyramidTop_Text_LookForwardToNextMeeting, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon -BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold:: @ 8255335 +BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech @@ -170,10 +170,10 @@ BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold:: @ 8255335 goto BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold end -BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech:: @ 8255388 +BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech:: applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer waitmovement 0 -BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold:: @ 8255392 +BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold:: msgbox BattleFrontier_BattlePyramidTop_Text_EverythingYouHave, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle playbgm MUS_B_PYRAMID_TOP, FALSE @@ -181,7 +181,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold:: @ 8255392 goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost -BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold:: @ 82553B3 +BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold:: frontier_getsymbols compare VAR_RESULT, 2 goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon @@ -194,7 +194,7 @@ BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold:: @ 82553B3 msgbox BattleFrontier_BattlePyramidTop_Text_FarewellForNow, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon -BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle:: @ 82553ED +BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle:: closemessage setvar VAR_0x8004, SPECIAL_BATTLE_PYRAMID setvar VAR_0x8005, 0 @@ -202,17 +202,17 @@ BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle:: @ 82553ED waitstate return -BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside: @ 82553FD +BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside: walk_right walk_in_place_fastest_left step_end -BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath: @ 8255400 +BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath: walk_left walk_in_place_fastest_up step_end -BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop: @ 8255403 +BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop: walk_up walk_up walk_up @@ -221,17 +221,17 @@ BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop: @ 8255403 walk_in_place_fastest_down step_end -BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer: @ 825540A +BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer: walk_fast_down step_end -BattleFrontier_BattlePyramidTop_Movement_CameraPanUp: @ 825540C +BattleFrontier_BattlePyramidTop_Movement_CameraPanUp: walk_slow_up walk_slow_up delay_16 step_end -BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo: @ 8255410 +BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo: .string "It is a delight to see you here!\n" .string "You have reached the summit of\l" .string "the BATTLE PYRAMID!\p" @@ -242,11 +242,11 @@ BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo: @ 8255410 .string "Now, please!\n" .string "Up you go!$" -BattleFrontier_BattlePyramidTop_Text_PlayerConqueredPyramid: @ 82554E8 +BattleFrontier_BattlePyramidTop_Text_PlayerConqueredPyramid: .string "The PYRAMID's new conqueror!\n" .string "Let the name {PLAYER} be known!$" -BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere: @ 825551F +BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere: .string "It is a delight to see you here!\p" .string "Unfortunately, you were second by\n" .string "a mere fraction of time!\p" @@ -259,7 +259,7 @@ BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere: @ 825551F .string "Now, please! When you are ready,\n" .string "take one more step of courage!$" -BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure: @ 8255669 +BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure: .string "Young adventurer…\p" .string "Wouldn't you agree that explorations\n" .string "are the grandest of adventures?\p" @@ -269,7 +269,7 @@ BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure: @ 8255669 .string "And, above all, only your own courage\n" .string "to lead you through unknown worlds…$" -BattleFrontier_BattlePyramidTop_Text_ImPyramidKingBrandon: @ 825573E +BattleFrontier_BattlePyramidTop_Text_ImPyramidKingBrandon: .string "Aah, yes, indeed this life is grand!\n" .string "Grand, it is! Eh?\p" .string "I'm BRANDON!\p" @@ -282,25 +282,25 @@ BattleFrontier_BattlePyramidTop_Text_ImPyramidKingBrandon: @ 825573E .string "Hahahah!\n" .string "This should be exciting!$" -BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle: @ 8255846 +BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle: .string "Now, then!\n" .string "Bring your courage to our battle!$" -BattleFrontier_BattlePyramidTop_Text_BrandonFrontierPassPlease: @ 8255873 +BattleFrontier_BattlePyramidTop_Text_BrandonFrontierPassPlease: .string "BRANDON: Hahahah! Grand it was!\n" .string "Grand, yes, indeed!\p" .string "Well done! You've earned recognition!\n" .string "Your FRONTIER PASS, please!$" -BattleFrontier_BattlePyramidTop_Text_ReceivedBraveSymbol: @ 82558E9 +BattleFrontier_BattlePyramidTop_Text_ReceivedBraveSymbol: .string "The Brave Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattlePyramidTop_Text_LookForwardToNextMeeting: @ 825591D +BattleFrontier_BattlePyramidTop_Text_LookForwardToNextMeeting: .string "Young explorer!\n" .string "I look forward to our next meeting!$" -BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned: @ 8255951 +BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned: .string "BRANDON: …You've finally returned,\n" .string "young explorer…\p" .string "Your love of adventure seems to come\n" @@ -314,16 +314,16 @@ BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned: @ 8255951 .string "Those days of death-defying,\n" .string "life-affirming adventures are back…$" -BattleFrontier_BattlePyramidTop_Text_MyCourageIsOffMeter: @ 8255A6D +BattleFrontier_BattlePyramidTop_Text_MyCourageIsOffMeter: .string "Now, then!\p" .string "I sense my own courage is off\n" .string "the meter!$" -BattleFrontier_BattlePyramidTop_Text_EverythingYouHave: @ 8255AA1 +BattleFrontier_BattlePyramidTop_Text_EverythingYouHave: .string "Everything you have!\n" .string "I'm braced for it all!$" -BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis: @ 8255ACD +BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis: .string "BRANDON: Hahahah!\n" .string "Remarkable!\l" .string "Yes, it's grand, indeed!\p" @@ -331,17 +331,17 @@ BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis: @ 8255ACD .string "You've bested me through and through!\n" .string "Here! I want you to have this!$" -BattleFrontier_BattlePyramidTop_Text_BraveSymbolTookGoldenShine: @ 8255B59 +BattleFrontier_BattlePyramidTop_Text_BraveSymbolTookGoldenShine: .string "The Brave Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattlePyramidTop_Text_FarewellForNow: @ 8255B82 +BattleFrontier_BattlePyramidTop_Text_FarewellForNow: .string "Ah, yes! It just goes to show that\n" .string "I have much to learn still!\p" .string "May our paths cross again!\n" .string "Farewell for now, young explorer!$" -BattleFrontier_BattlePyramidTop_Text_StepForwardWhenReady: @ 8255BFE +BattleFrontier_BattlePyramidTop_Text_StepForwardWhenReady: .string "Now, when you are ready, take courage\n" .string "and step forward.$" diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc index bfe26edb52ff..c909239beac4 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc @@ -2,25 +2,25 @@ .set LOCALID_ATTENDANT_1, 2 .set LOCALID_ATTENDANT_2, 3 -BattleFrontier_BattleTowerBattleRoom_MapScripts:: @ 8241B40 +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 .byte 0 -BattleFrontier_BattleTowerBattleRoom_OnWarp: @ 8241B4B +BattleFrontier_BattleTowerBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerBattleRoom_EventScript_SetUpObjects .2byte 0 -BattleFrontier_BattleTowerBattleRoom_EventScript_SetUpObjects:: @ 8241B55 +BattleFrontier_BattleTowerBattleRoom_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SetInvisible end -BattleFrontier_BattleTowerBattleRoom_OnFrame: @ 8241B62 +BattleFrontier_BattleTowerBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom:: @ 8241B6C +BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom:: setvar VAR_TEMP_0, 1 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter waitmovement 0 @@ -35,7 +35,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom:: @ 8241B6C frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE goto BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter:: @ 8241BC3 +BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter @@ -46,14 +46,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter:: @ 8241BC3 call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle switch VAR_RESULT case B_OUTCOME_WON, BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent -BattleFrontier_BattleTower_EventScript_WarpToLobbyLost:: @ 8241C03 +BattleFrontier_BattleTower_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST tower_set TOWER_DATA_LVL_MODE setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER special Script_TryGainNewFanFromCounter goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent:: @ 8241C2F +BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent:: call BattleFrontier_EventScript_IncrementWinStreak tower_setbattlewon switch VAR_RESULT @@ -72,7 +72,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent:: @ 8241C2F playfanfare MUS_HEAL waitfanfare special HealPlayerParty -BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: @ 8241C8F +BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY @@ -90,7 +90,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: @ 8241C8F case 3, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ 8241D0A +BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge @@ -98,7 +98,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord:: @ case 2, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle:: @ 8241D40 +BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -107,18 +107,18 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskRecordBattle:: @ 8241D40 case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_RecordBattle:: @ 8241D72 +BattleFrontier_BattleTowerBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_AskPauseChallenge:: @ 8241D7C +BattleFrontier_BattleTowerBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent case YES, BattleFrontier_BattleTowerBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge:: @ 8241DAA +BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -127,7 +127,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge:: @ 8241DAA case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_RetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge:: @ 8241DDC +BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge:: closemessage applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle waitmovement 0 @@ -135,14 +135,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge:: @ 8241DDC waitmovement 0 goto BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter -BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon:: @ 8241DF6 +BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON tower_set TOWER_DATA_LVL_MODE setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER special Script_TryGainNewFanFromCounter goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleTowerBattleRoom_EventScript_PauseChallenge:: @ 8241E22 +BattleFrontier_BattleTowerBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleTowerBattleRoom_Text_SavingPleaseWait waitmessage tower_save CHALLENGE_STATUS_PAUSED @@ -152,7 +152,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_PauseChallenge:: @ 8241E22 frontier_reset end -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyForOpponent:: @ 8241E44 +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyForOpponent:: copyvar VAR_TEMP_F, VAR_RESULT switch VAR_TEMP_F case 1, BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor2ndOpponent @@ -162,41 +162,41 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyForOpponent:: @ 8241E44 case 5, BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor6thOpponent case 6, BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor7thOpponent -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8241E90 +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8241E97 +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor4thOpponent:: @ 8241E9E +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor4thOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor4thOpponent waitmessage return -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor5thOpponent:: @ 8241EA5 +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor5thOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor5thOpponent waitmessage return -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor6thOpponent:: @ 8241EAC +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor6thOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor6thOpponent waitmessage return -BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor7thOpponent:: @ 8241EB3 +BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyFor7thOpponent:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor7thOpponent waitmessage return -BattleFrontier_EventScript_IncrementWinStreak:: @ 8241EBA +BattleFrontier_EventScript_IncrementWinStreak:: frontier_incrementstreak return -BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter:: @ 8241EC3 +BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter:: applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter waitmovement 0 applymovement LOCALID_ATTENDANT_2, Common_Movement_WalkInPlaceLeft @@ -213,12 +213,12 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter:: @ 8241EC waitmovement 0 return -BattleFrontier_BattleTowerBattleRoom_EventScript_MaidenUpNext:: @ 8241F0A +BattleFrontier_BattleTowerBattleRoom_EventScript_MaidenUpNext:: compare VAR_TEMP_2, 1 goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden msgbox BattleFrontier_BattleTowerBattleRoom_Text_SalonMaidenOnHerWay, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 -BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: @ 8241F22 +BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyForSalonMaiden waitmessage call BattleFrontier_EventScript_GetCantRecordBattle @@ -232,7 +232,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: @ 8241F22 case 3, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden -BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord:: @ 8241F79 +BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel @@ -240,7 +240,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord:: @ 8 case 2, BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden -BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel:: @ 8241FAF +BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel:: call BattleFrontier_EventScript_SetBrainObjectGfx closemessage applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle @@ -259,14 +259,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel:: @ 8241FAF goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver msgbox BattleFrontier_BattleTowerBattleRoom_Text_GreetingsImAnabel, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver:: @ 8242029 +BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_LetMeSeeYourTalent, MSGBOX_DEFAULT call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle compare VAR_RESULT, B_OUTCOME_WON goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost -BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver:: @ 8242046 +BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver:: call BattleFrontier_EventScript_IncrementWinStreak frontier_getsymbols compare VAR_RESULT, 0 @@ -280,20 +280,20 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver:: @ 824204 msgbox BattleFrontier_BattleTowerBattleRoom_Text_UntilNextTime, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon -BattleFrontier_BattleTowerBattleRoom_EventScript_AnabelGoldIntro:: @ 8242085 +BattleFrontier_BattleTowerBattleRoom_EventScript_AnabelGoldIntro:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH compare VAR_RESULT, FALSE goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold msgbox BattleFrontier_BattleTowerBattleRoom_Text_AnabelYouCameBack, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH -BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold:: @ 82420B2 +BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_LetsBeginShallWe, MSGBOX_DEFAULT call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle compare VAR_RESULT, B_OUTCOME_WON goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost -BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold:: @ 82420CF +BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold:: call BattleFrontier_EventScript_IncrementWinStreak frontier_getsymbols compare VAR_RESULT, 2 @@ -307,7 +307,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold:: @ 82420CF msgbox BattleFrontier_BattleTowerBattleRoom_Text_WishICouldBattleYouAgain, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon -BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle:: @ 824210E +BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle:: closemessage setvar VAR_TEMP_2, 0 frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE @@ -322,31 +322,31 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle:: @ 824210E frontier_restorehelditems special HealPlayerParty frontier_resetsketch -BattleFrontier_BattleTowerBattleRoom_EventScript_EndTowerBattle:: @ 824215A +BattleFrontier_BattleTowerBattleRoom_EventScript_EndTowerBattle:: tower_setinterviewdata frontier_get FRONTIER_DATA_BATTLE_OUTCOME return -BattleFrontier_EventScript_SetBrainObjectGfx:: @ 8242170 +BattleFrontier_EventScript_SetBrainObjectGfx:: frontier_setbrainobj return -BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter: @ 8242179 +BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up face_right step_end -BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant: @ 824217E +BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant: face_down step_end -BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle: @ 8242180 +BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle: face_right step_end -BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter: @ 8242182 +BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down @@ -354,21 +354,21 @@ BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter: @ 8242182 face_left step_end -BattleFrontier_BattleTowerBattleRoom_Movement_OpponentExit: @ 8242188 +BattleFrontier_BattleTowerBattleRoom_Movement_OpponentExit: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer: @ 824218D +BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer: walk_right walk_right walk_right walk_up step_end -BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos: @ 8242192 +BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos: walk_down walk_left walk_left @@ -376,11 +376,11 @@ BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos: @ 8242192 face_right step_end -BattleFrontier_BattleTowerBattleRoom_Movement_SetInvisible: @ 8242198 +BattleFrontier_BattleTowerBattleRoom_Movement_SetInvisible: set_invisible step_end -BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter: @ 824219A +BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter: set_visible delay_16 walk_up @@ -389,21 +389,21 @@ BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter: @ 824219A delay_8 step_end -BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantExit: @ 82421A1 +BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantExit: walk_right walk_right walk_down set_invisible step_end -BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantDelay: @ 82421A6 +BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantDelay: delay_16 delay_16 delay_16 delay_16 step_end -BattleFrontier_BattleTowerBattleRoom_Movement_AttendantFaceSecondAttendant: @ 82421AB +BattleFrontier_BattleTowerBattleRoom_Movement_AttendantFaceSecondAttendant: face_right delay_16 delay_16 @@ -412,7 +412,7 @@ BattleFrontier_BattleTowerBattleRoom_Movement_AttendantFaceSecondAttendant: @ 82 walk_in_place_right step_end -BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter: @ 82421B2 +BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter: walk_slow_down walk_slow_down walk_slow_down @@ -420,7 +420,7 @@ BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter: @ 82421B2 face_left step_end -BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby:: @ 82421B8 +BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles @@ -432,95 +432,95 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby:: @ 82421B8 waitstate end -BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles:: @ 82421E8 +BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 10, 6 waitstate end -BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis:: @ 82421F2 +BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 14, 6 waitstate end -BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis:: @ 82421FC +BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis:: tower_closelink warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 18, 6 waitstate end -BattleFrontier_BattleTowerBattleRoom_EventScript_RetireChallenge:: @ 824220E +BattleFrontier_BattleTowerBattleRoom_EventScript_RetireChallenge:: setflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost end -BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth: @ 8242217 +BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth: .string "We will restore your POKéMON to\n" .string "full health.$" @ Unused -BattleFrontier_BattleTowerBattleRoom_Text_ReadyForOpponent: @ 8242244 +BattleFrontier_BattleTowerBattleRoom_Text_ReadyForOpponent: .string "You will be facing opponent no. {STR_VAR_1}.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor2ndOpponent: @ 8242277 +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor2ndOpponent: .string "You will be facing opponent no. 2.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor3rdOpponent: @ 82422A9 +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor3rdOpponent: .string "You will be facing opponent no. 3.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor4thOpponent: @ 82422DB +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor4thOpponent: .string "You will be facing opponent no. 4.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor5thOpponent: @ 824230D +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor5thOpponent: .string "You will be facing opponent no. 5.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor6thOpponent: @ 824233F +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor6thOpponent: .string "You will be facing opponent no. 6.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor7thOpponent: @ 8242371 +BattleFrontier_BattleTowerBattleRoom_Text_ReadyFor7thOpponent: .string "You will be facing opponent no. 7.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle: @ 82423A3 +BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle: .string "Record your battle on your\n" .string "FRONTIER PASS?$" -BattleFrontier_BattleTowerLobby_Text_BattleRecordedOnPass: @ 82423CD +BattleFrontier_BattleTowerLobby_Text_BattleRecordedOnPass: .string "{PLAYER}'s battle was recorded\n" .string "on the FRONTIER PASS.$" -BattleFrontier_BattleTowerBattleRoom_Text_SaveAndQuitGame: @ 82423FC +BattleFrontier_BattleTowerBattleRoom_Text_SaveAndQuitGame: .string "Would you like to save and\n" .string "quit the game?$" -BattleFrontier_BattleTowerBattleRoom_Text_SavingPleaseWait: @ 8242426 +BattleFrontier_BattleTowerBattleRoom_Text_SavingPleaseWait: .string "Saving your battle data.\n" .string "Please wait.$" -BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge: @ 824244C +BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge: .string "Would you like to cancel your BATTLE\n" .string "ROOM challenge?$" -BattleFrontier_BattleTowerBattleRoom_Text_RecordCouldntBeSaved:: @ 8242481 +BattleFrontier_BattleTowerBattleRoom_Text_RecordCouldntBeSaved:: .string "There was an error of some sort.\n" .string "Your record could not be saved.$" -BattleFrontier_BattleTowerBattleRoom_Text_SalonMaidenOnHerWay: @ 82424C2 +BattleFrontier_BattleTowerBattleRoom_Text_SalonMaidenOnHerWay: .string "Excuse me, but…\p" .string "Our leader, the SALON MAIDEN, is on\n" .string "her way here in hopes of battling you.\p" .string "She should be arriving very shortly.$" -BattleFrontier_BattleTowerBattleRoom_Text_ReadyForSalonMaiden: @ 8242542 +BattleFrontier_BattleTowerBattleRoom_Text_ReadyForSalonMaiden: .string "You will be facing the SALON MAIDEN.\n" .string "Are you prepared?$" -BattleFrontier_BattleTowerBattleRoom_Text_GreetingsImAnabel: @ 8242579 +BattleFrontier_BattleTowerBattleRoom_Text_GreetingsImAnabel: .string "Greetings…\n" .string "My name is ANABEL.\p" .string "I am the SALON MAIDEN, and I am in\n" @@ -532,20 +532,20 @@ BattleFrontier_BattleTowerBattleRoom_Text_GreetingsImAnabel: @ 8242579 .string "The reason I've come to see you…\n" .string "Well, there is but one reason…$" -BattleFrontier_BattleTowerBattleRoom_Text_LetMeSeeYourTalent: @ 824268C +BattleFrontier_BattleTowerBattleRoom_Text_LetMeSeeYourTalent: .string "Let me see your talent in\n" .string "its entirety…$" -BattleFrontier_BattleTowerBattleRoom_Text_AnabelTalentShallBeRecognized: @ 82426B4 +BattleFrontier_BattleTowerBattleRoom_Text_AnabelTalentShallBeRecognized: .string "ANABEL: Fufufu, nicely done…\p" .string "Your FRONTIER PASS, please…\n" .string "Your talent shall be recognized.$" -BattleFrontier_BattleTowerBattleRoom_Text_ReceivedAbilitySymbol: @ 824270E +BattleFrontier_BattleTowerBattleRoom_Text_ReceivedAbilitySymbol: .string "The Ability Symbol was embossed on\n" .string "the FRONTIER PASS!$" -BattleFrontier_BattleTowerBattleRoom_Text_UntilNextTime: @ 8242744 +BattleFrontier_BattleTowerBattleRoom_Text_UntilNextTime: .string "… … … … … …\p" .string "You have confidence in your POKéMON\n" .string "battling talent, don't you?\p" @@ -554,7 +554,7 @@ BattleFrontier_BattleTowerBattleRoom_Text_UntilNextTime: @ 8242744 .string "I will be waiting for you.\n" .string "Until the next time we meet…$" -BattleFrontier_BattleTowerBattleRoom_Text_AnabelYouCameBack: @ 82427F9 +BattleFrontier_BattleTowerBattleRoom_Text_AnabelYouCameBack: .string "ANABEL: You really did come back to\n" .string "see me…\p" .string "… … … … … …\p" @@ -564,18 +564,18 @@ BattleFrontier_BattleTowerBattleRoom_Text_AnabelYouCameBack: @ 82427F9 .string "Too long since I've been able to battle\n" .string "without thinking about anything…$" -BattleFrontier_BattleTowerBattleRoom_Text_LetsBeginShallWe: @ 82428E0 +BattleFrontier_BattleTowerBattleRoom_Text_LetsBeginShallWe: .string "Let's begin, shall we?$" -BattleFrontier_BattleTowerBattleRoom_Text_AnabelCongratsYourPassPlease: @ 82428F7 +BattleFrontier_BattleTowerBattleRoom_Text_AnabelCongratsYourPassPlease: .string "ANABEL: Fufu, congratulations…\n" .string "Your FRONTIER PASS, please…$" -BattleFrontier_BattleTowerBattleRoom_Text_AbilitySymbolTookGoldenShine: @ 8242932 +BattleFrontier_BattleTowerBattleRoom_Text_AbilitySymbolTookGoldenShine: .string "The Ability Symbol took on\n" .string "a golden shine!$" -BattleFrontier_BattleTowerBattleRoom_Text_WishICouldBattleYouAgain: @ 824295D +BattleFrontier_BattleTowerBattleRoom_Text_WishICouldBattleYouAgain: .string "That was fun…\p" .string "I have never had a POKéMON battle\n" .string "so enjoyable before…\p" diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc index 0237e525c6a6..c09c897e9866 100644 --- a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc @@ -1,27 +1,27 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleTowerCorridor_MapScripts:: @ 8241AAA +BattleFrontier_BattleTowerCorridor_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, BattleFrontier_BattleTowerCorridor_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerCorridor_OnFrame .byte 0 -BattleFrontier_BattleTowerCorridor_OnLoad: @ 8241AB5 +BattleFrontier_BattleTowerCorridor_OnLoad: compare VAR_0x8006, 1 goto_if_eq BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor setmetatile 12, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, 0 setmetatile 12, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, 0 end -BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor:: @ 8241AD3 +BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor:: setmetatile 15, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, 0 setmetatile 15, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, 0 end -BattleFrontier_BattleTowerCorridor_OnFrame: @ 8241AE6 +BattleFrontier_BattleTowerCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor .2byte 0 -BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor:: @ 8241AF0 +BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor:: setvar VAR_TEMP_0, 1 compare VAR_0x8006, 1 goto_if_eq BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor @@ -30,25 +30,25 @@ BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor:: @ 8241AF0 waitmovement 0 goto BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom -BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor:: @ 8241B16 +BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToFarDoor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToFarDoor waitmovement 0 -BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom:: @ 8241B27 +BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom:: setvar VAR_TEMP_0, 0 warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 255, 4, 8 waitstate end -BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToFarDoor: @ 8241B36 +BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToFarDoor: walk_right -BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToFarDoor: @ 8241B37 +BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToFarDoor: walk_right walk_right -BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToDoor: @ 8241B39 +BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToDoor: walk_right -BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToDoor: @ 8241B3A +BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToDoor: walk_right walk_right walk_right diff --git a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc index 8e66465b7786..0021b9e84206 100644 --- a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleTowerElevator_MapScripts:: @ 82419DB +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 .byte 0 -BattleFrontier_BattleTowerElevator_OnFrame: @ 82419E6 +BattleFrontier_BattleTowerElevator_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerElevator_EventScript_EnterElevator .2byte 0 -BattleFrontier_BattleTowerElevator_EventScript_EnterElevator:: @ 82419F0 +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 @@ -25,7 +25,7 @@ BattleFrontier_BattleTowerElevator_EventScript_EnterElevator:: @ 82419F0 call BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom end -BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom:: @ 8241A28 +BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -36,56 +36,56 @@ BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom:: @ 8241A28 call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti return -BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor:: @ 8241A55 +BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR, 255, 8, 1 waitstate return -BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoomMulti:: @ 8241A5F +BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoomMulti:: goto_if_unset FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerElevator_EventScript_WarpToPartnerRoom warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 255, 7, 2 waitstate return -BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti:: @ 8241A72 +BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 255, 7, 2 waitstate return -BattleFrontier_BattleTowerElevator_EventScript_WarpToPartnerRoom:: @ 8241A7C +BattleFrontier_BattleTowerElevator_EventScript_WarpToPartnerRoom:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 255, 10, 1 waitstate return -BattleFrontier_BattleTowerElevator_Movement_AttendantEnter: @ 8241A86 +BattleFrontier_BattleTowerElevator_Movement_AttendantEnter: walk_up walk_right face_down step_end -BattleFrontier_BattleTowerElevator_Movement_PlayerEnter: @ 8241A8A +BattleFrontier_BattleTowerElevator_Movement_PlayerEnter: walk_up walk_up face_down step_end -BattleFrontier_BattleTowerElevator_Movement_AttendantExit: @ 8241A8E +BattleFrontier_BattleTowerElevator_Movement_AttendantExit: walk_down walk_down set_invisible step_end -BattleFrontier_BattleTowerElevator_Movement_PlayerExit: @ 8241A92 +BattleFrontier_BattleTowerElevator_Movement_PlayerExit: walk_right walk_down walk_down step_end -BattleFrontier_BattleTowerElevator_OnWarp: @ 8241A96 +BattleFrontier_BattleTowerElevator_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerElevator_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleTowerElevator_EventScript_TurnPlayerNorth:: @ 8241AA0 +BattleFrontier_BattleTowerElevator_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index 5bc18e000882..ab2a620436cb 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -5,43 +5,43 @@ @ 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:: @ 823E67B +BattleFrontier_BattleTowerLobby_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleTowerLobby_OnResume map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerLobby_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerLobby_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerLobby_OnWarp .byte 0 -BattleFrontier_BattleTowerLobby_OnResume: @ 823E690 +BattleFrontier_BattleTowerLobby_OnResume: special TryHideBattleTowerReporter end -BattleFrontier_BattleTowerLobby_OnTransition: @ 823E694 +BattleFrontier_BattleTowerLobby_OnTransition: call BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter apprentice_shouldcheckgone compare VAR_0x8004, FALSE @ Always TRUE here goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, BattleFrontier_BattleTowerLobby_EventScript_HideApprentice -BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice:: @ 823E6B5 +BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice:: clearflag FLAG_HIDE_APPRENTICE apprentice_setgfx -BattleFrontier_BattleTowerLobby_EventScript_EndShowOrHideApprentice:: @ 823E6C0 +BattleFrontier_BattleTowerLobby_EventScript_EndShowOrHideApprentice:: end -BattleFrontier_BattleTowerLobby_EventScript_HideApprentice:: @ 823E6C1 +BattleFrontier_BattleTowerLobby_EventScript_HideApprentice:: setflag FLAG_HIDE_APPRENTICE goto BattleFrontier_BattleTowerLobby_EventScript_EndShowOrHideApprentice -BattleFrontier_BattleTowerLobby_OnWarp: @ 823E6C9 +BattleFrontier_BattleTowerLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerLobby_EventScript_PlayerFaceNorth .2byte 0 -BattleFrontier_BattleTowerLobby_EventScript_PlayerFaceNorth:: @ 823E6D3 +BattleFrontier_BattleTowerLobby_EventScript_PlayerFaceNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleTowerLobby_OnFrame: @ 823E6DD +BattleFrontier_BattleTowerLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge @@ -49,11 +49,11 @@ BattleFrontier_BattleTowerLobby_OnFrame: @ 823E6DD map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, BattleFrontier_BattleTowerLobby_EventScript_LostChallenge .2byte 0 -BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus:: @ 823E707 +BattleFrontier_BattleTowerLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving:: @ 823E710 +BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving:: lock faceplayer msgbox BattleFrontier_BattleTowerLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT @@ -65,7 +65,7 @@ BattleFrontier_BattleTowerLobby_EventScript_QuitWithoutSaving:: @ 823E710 release end -BattleFrontier_BattleTowerLobby_EventScript_WonChallenge:: @ 823E758 +BattleFrontier_BattleTowerLobby_EventScript_WonChallenge:: lock faceplayer frontier_isbrain @@ -75,9 +75,9 @@ BattleFrontier_BattleTowerLobby_EventScript_WonChallenge:: @ 823E758 waitmessage goto BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons -BattleFrontier_BattleTowerLobby_EventScript_DefeatedMaiden:: @ 823E778 +BattleFrontier_BattleTowerLobby_EventScript_DefeatedMaiden:: msgbox BattleFrontier_BattleTowerLobby_Text_CongratsDefeatedMaiden, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons:: @ 823E780 +BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons:: tower_giveribbons compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints @@ -86,7 +86,7 @@ BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons:: @ 823E780 playfanfare MUS_OBTAIN_ITEM waitfanfare msgbox BattleFrontier_BattleTowerLobby_Text_PutRibbonOnMons, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints:: @ 823E7A5 +BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_BattleTowerLobby_Text_AwardYouTheseBattlePoints, MSGBOX_DEFAULT frontier_givepoints msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS @@ -95,23 +95,23 @@ BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints:: @ 823E7A5 compare VAR_RESULT, 49 goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge msgbox BattleFrontier_BattleTowerLobby_Text_AboutToFace50thTrainer, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge:: @ 823E7E2 +BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 release end -BattleFrontier_BattleTowerLobby_EventScript_LostChallenge:: @ 823E7F2 +BattleFrontier_BattleTowerLobby_EventScript_LostChallenge:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak tower_get TOWER_DATA_WIN_STREAK compare VAR_RESULT, 0 goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying -BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak:: @ 823E81E +BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak:: tower_set TOWER_DATA_WIN_STREAK_ACTIVE, FALSE -BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying:: @ 823E830 +BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying:: lock faceplayer message BattleFrontier_BattleTowerLobby_Text_ThankYouForPlaying @@ -123,7 +123,7 @@ BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying:: @ 823E830 release end -BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: @ 823E84D +BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: message BattleFrontier_BattleTowerLobby_Text_RecordWillBeSaved waitmessage frontier_checkairshow @@ -143,7 +143,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: @ 823E84D case 0, BattleFrontier_EventScript_SaveBattle case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle -BattleFrontier_EventScript_SaveBattle:: @ 823E8B4 +BattleFrontier_EventScript_SaveBattle:: frontier_savebattle compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_EventScript_BattleSaveFailed @@ -151,16 +151,16 @@ BattleFrontier_EventScript_SaveBattle:: @ 823E8B4 msgbox BattleFrontier_BattleTowerLobby_Text_BattleRecordedOnPass, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle -BattleFrontier_EventScript_BattleSaveFailed:: @ 823E8D7 +BattleFrontier_EventScript_BattleSaveFailed:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_RecordCouldntBeSaved, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle:: @ 823E8DF +BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle:: return -BattleFrontier_EventScript_GetCantRecordBattle:: @ 823E8E0 +BattleFrontier_EventScript_GetCantRecordBattle:: frontier_get FRONTIER_DATA_RECORD_DISABLED return -BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge:: @ 823E8EE +BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge:: lock faceplayer compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES @@ -176,17 +176,17 @@ BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge:: @ 823E8EE goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_SetBravoTrainerOn:: @ 823E930 +BattleFrontier_BattleTowerLobby_EventScript_SetBravoTrainerOn:: setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, TRUE return -BattleFrontier_BattleTowerLobby_EventScript_SinglesAttendant:: @ 823E936 +BattleFrontier_BattleTowerLobby_EventScript_SinglesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_TOWER special SavePlayerParty msgbox BattleFrontier_BattleTowerLobby_Text_WelcomSingleBattle, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_AskEnterSinglesChallenge:: @ 823E948 +BattleFrontier_BattleTowerLobby_EventScript_AskEnterSinglesChallenge:: message BattleFrontier_BattleTowerLobby_Text_TakeSinglesChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -196,7 +196,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskEnterSinglesChallenge:: @ 823E948 case 2, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: @ 823E984 +BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage @@ -223,7 +223,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: @ 823E984 case YES, BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge:: @ 823EA2A +BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge:: frontier_set FRONTIER_DATA_SELECTED_MON_ORDER setvar VAR_TEMP_0, 0 tower_init @@ -241,18 +241,18 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge:: @ 823EA goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_ExplainSinglesChallenge:: @ 823EA91 +BattleFrontier_BattleTowerLobby_EventScript_ExplainSinglesChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainSinglesChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_AskEnterSinglesChallenge end -BattleFrontier_BattleTowerLobby_EventScript_DoublesAttendant:: @ 823EA9F +BattleFrontier_BattleTowerLobby_EventScript_DoublesAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_TOWER special SavePlayerParty msgbox BattleFrontier_BattleTowerLobby_Text_WelcomeDoubleBattle, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_AskEnterDoublesChallenge:: @ 823EAB1 +BattleFrontier_BattleTowerLobby_EventScript_AskEnterDoublesChallenge:: message BattleFrontier_BattleTowerLobby_Text_TakeDoublesChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -262,7 +262,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskEnterDoublesChallenge:: @ 823EAB1 case 2, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: @ 823EAED +BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage @@ -289,7 +289,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: @ 823EAED case YES, BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge:: @ 823EB93 +BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge:: frontier_set FRONTIER_DATA_SELECTED_MON_ORDER setvar VAR_TEMP_0, 0 tower_init @@ -307,19 +307,19 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge:: @ 823EB goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_ExplainDoublesChallenge:: @ 823EBFA +BattleFrontier_BattleTowerLobby_EventScript_ExplainDoublesChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainDoublesChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_AskEnterDoublesChallenge end -BattleFrontier_BattleTowerLobby_EventScript_MultisAttendant:: @ 823EC08 +BattleFrontier_BattleTowerLobby_EventScript_MultisAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_TOWER clearflag FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER special SavePlayerParty msgbox BattleFrontier_BattleTowerLobby_Text_WelcomeMultiBattle, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_AskEnterMultisChallenge:: @ 823EC1D +BattleFrontier_BattleTowerLobby_EventScript_AskEnterMultisChallenge:: message BattleFrontier_BattleTowerLobby_Text_TakeMultisChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -329,7 +329,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskEnterMultisChallenge:: @ 823EC1D case 2, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: @ 823EC59 +BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage @@ -356,7 +356,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: @ 823EC59 case YES, BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge:: @ 823ECFF +BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge:: frontier_set FRONTIER_DATA_SELECTED_MON_ORDER setvar VAR_TEMP_0, 0 tower_init @@ -374,18 +374,18 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge:: @ 823ECF goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_ExplainMultisChallenge:: @ 823ED66 +BattleFrontier_BattleTowerLobby_EventScript_ExplainMultisChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainMultisChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_AskEnterMultisChallenge end -BattleFrontier_BattleTowerLobby_EventScript_LinkMultisAttendant:: @ 823ED74 +BattleFrontier_BattleTowerLobby_EventScript_LinkMultisAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_TOWER special SavePlayerParty msgbox BattleFrontier_BattleTowerLobby_Text_WelcomeLinkMultiBattle, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_AskEnterLinkMultisChallenge:: @ 823ED86 +BattleFrontier_BattleTowerLobby_EventScript_AskEnterLinkMultisChallenge:: message BattleFrontier_BattleTowerLobby_Text_TakeLinkMultisChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -395,7 +395,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskEnterLinkMultisChallenge:: @ 823E case 2, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: @ 823EDC2 +BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS message BattleFrontier_BattleTowerLobby_Text_WhichLevelMode waitmessage @@ -422,7 +422,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: @ 823E case YES, BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge -BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge:: @ 823EE68 +BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge:: frontier_set FRONTIER_DATA_SELECTED_MON_ORDER setvar VAR_TEMP_0, 0 tower_init @@ -443,7 +443,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge:: @ 82 goto BattleFrontier_BattleTowerLobby_EventScript_TryCableLink end -BattleFrontier_BattleTowerLobby_EventScript_FeelingsMan:: @ 823EEE7 +BattleFrontier_BattleTowerLobby_EventScript_FeelingsMan:: lock faceplayer message BattleFrontier_BattleTowerLobby_Text_DescribeFeelingsAboutBattleTower @@ -458,7 +458,7 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsMan:: @ 823EEE7 release end -BattleFrontier_BattleTowerLobby_EventScript_FeelingsBattleNow:: @ 823EF32 +BattleFrontier_BattleTowerLobby_EventScript_FeelingsBattleNow:: msgbox BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouBegin, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_BATTLE_START call Common_ShowEasyChatScreen @@ -467,7 +467,7 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsBattleNow:: @ 823EF32 goto BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings end -BattleFrontier_BattleTowerLobby_EventScript_FeelingsIWon:: @ 823EF4C +BattleFrontier_BattleTowerLobby_EventScript_FeelingsIWon:: msgbox BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveWon, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_BATTLE_WON call Common_ShowEasyChatScreen @@ -476,7 +476,7 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsIWon:: @ 823EF4C goto BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings end -BattleFrontier_BattleTowerLobby_EventScript_FeelingsILost:: @ 823EF66 +BattleFrontier_BattleTowerLobby_EventScript_FeelingsILost:: msgbox BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveLost, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_BATTLE_LOST call Common_ShowEasyChatScreen @@ -485,37 +485,37 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsILost:: @ 823EF66 goto BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings end -BattleFrontier_BattleTowerLobby_EventScript_FeelingsWontTell:: @ 823EF80 +BattleFrontier_BattleTowerLobby_EventScript_FeelingsWontTell:: msgbox BattleFrontier_BattleTowerLobby_Text_DontThinkMuchAboutIt, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings:: @ 823EF8A +BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings:: compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat compare VAR_RESULT, 1 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_SubmittedFeelings end -BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat:: @ 823EFA1 +BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat:: msgbox BattleFrontier_BattleTowerLobby_Text_ChangedYourMind, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_SubmittedFeelings:: @ 823EFAB +BattleFrontier_BattleTowerLobby_EventScript_SubmittedFeelings:: msgbox BattleFrontier_BattleTowerLobby_Text_ThatsHowYouFeel, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_Woman:: @ 823EFB5 +BattleFrontier_BattleTowerLobby_EventScript_Woman:: msgbox BattleFrontier_BattleTowerLobby_Text_WinsInRowRecorded, MSGBOX_NPC end -BattleFrontier_BattleTowerLobby_EventScript_Boy:: @ 823EFBE +BattleFrontier_BattleTowerLobby_EventScript_Boy:: msgbox BattleFrontier_BattleTowerLobby_Text_CanLeaveUntilLossOrSevenWins, MSGBOX_NPC end -BattleFrontier_BattleTowerLobby_EventScript_ShowSinglesResults:: @ 823EFC7 +BattleFrontier_BattleTowerLobby_EventScript_ShowSinglesResults:: lockall frontier_results FRONTIER_FACILITY_TOWER, FRONTIER_MODE_SINGLES waitbuttonpress @@ -523,7 +523,7 @@ BattleFrontier_BattleTowerLobby_EventScript_ShowSinglesResults:: @ 823EFC7 releaseall end -BattleFrontier_BattleTowerLobby_EventScript_ShowDoublesResults:: @ 823EFE0 +BattleFrontier_BattleTowerLobby_EventScript_ShowDoublesResults:: lockall frontier_results FRONTIER_FACILITY_TOWER, FRONTIER_MODE_DOUBLES waitbuttonpress @@ -531,7 +531,7 @@ BattleFrontier_BattleTowerLobby_EventScript_ShowDoublesResults:: @ 823EFE0 releaseall end -BattleFrontier_BattleTowerLobby_EventScript_ShowMultisResults:: @ 823EFF9 +BattleFrontier_BattleTowerLobby_EventScript_ShowMultisResults:: lockall frontier_results FRONTIER_FACILITY_TOWER, FRONTIER_MODE_MULTIS waitbuttonpress @@ -539,7 +539,7 @@ BattleFrontier_BattleTowerLobby_EventScript_ShowMultisResults:: @ 823EFF9 releaseall end -BattleFrontier_BattleTowerLobby_EventScript_ShowLinkMultisResults:: @ 823F012 +BattleFrontier_BattleTowerLobby_EventScript_ShowLinkMultisResults:: lockall frontier_results FRONTIER_FACILITY_TOWER, FRONTIER_MODE_LINK_MULTIS waitbuttonpress @@ -547,12 +547,12 @@ BattleFrontier_BattleTowerLobby_EventScript_ShowLinkMultisResults:: @ 823F012 releaseall end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons:: @ 823F02B +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpen -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50:: @ 823F046 +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50:: switch VAR_FRONTIER_BATTLE_MODE case FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Singles case FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Doubles @@ -560,17 +560,17 @@ BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50:: @ 823F046 goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Singles:: @ 823F06F +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Singles:: msgbox BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Singles, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Doubles:: @ 823F07D +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLv50Doubles:: msgbox BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Doubles, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 823F08B +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpen:: switch VAR_FRONTIER_BATTLE_MODE case FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenSingles case FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenDoubles @@ -578,37 +578,37 @@ BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 823F08B goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenSingles:: @ 823F0B4 +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenSingles:: msgbox BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenSingles, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenDoubles:: @ 823F0C2 +BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMonsLvOpenDoubles:: msgbox BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenDoubles, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed:: @ 823F0D0 +BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS @ No status provided, so it relies on VAR_0x8006 being 0 already goto BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge:: @ 823F0E3 +BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge:: special LoadPlayerParty -BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge:: @ 823F0E6 +BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge:: special CloseLink msgbox BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge, MSGBOX_DEFAULT -BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge:: @ 823F0F1 +BattleFrontier_BattleTowerLobby_EventScript_EndCancelChallenge:: release end -BattleFrontier_BattleTowerLobby_EventScript_EnterElevator:: @ 823F0F3 +BattleFrontier_BattleTowerLobby_EventScript_EnterElevator:: special SavePlayerParty setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_PARTY_ORDER call BattleFrontier_BattleTowerLobby_EventScript_GetPartySize special CallFrontierUtilFunc setvar VAR_RESULT, 0 -BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: @ 823F108 +BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: tower_loadlinkopponents delay 1 compare VAR_RESULT, 6 @@ -620,18 +620,18 @@ BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: @ 823F108 waitstate end -BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom:: @ 823F135 +BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom:: call BattleFrontier_BattleTowerLobby_EventScript_BufferModeText compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ShowYouToLinkMultiBattleRoom msgbox BattleFrontier_BattleTowerLobby_Text_ShowYouToBattleRoom, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator -BattleFrontier_BattleTowerLobby_EventScript_ShowYouToLinkMultiBattleRoom:: @ 823F152 +BattleFrontier_BattleTowerLobby_EventScript_ShowYouToLinkMultiBattleRoom:: messageautoscroll BattleFrontier_BattleTowerLobby_Text_ShowYouToBattleRoom waitmessage delay 48 -BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator:: @ 823F15B +BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator:: closemessage call BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo call BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord @@ -647,25 +647,25 @@ BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator:: @ 823F15B waitdooranim return -BattleFrontier_BattleTowerLobby_Movement_WalkToElevator: @ 823F195 +BattleFrontier_BattleTowerLobby_Movement_WalkToElevator: walk_up walk_up walk_up step_end -BattleFrontier_BattleTowerLobby_Movement_AttendantEnterElevator: @ 823F199 +BattleFrontier_BattleTowerLobby_Movement_AttendantEnterElevator: walk_up set_invisible step_end -BattleFrontier_BattleTowerLobby_Movement_PlayerEnterElevator: @ 823F19C +BattleFrontier_BattleTowerLobby_Movement_PlayerEnterElevator: walk_up walk_up set_invisible step_end @ Unused -BattleFrontier_BattleTowerLobby_Movement_UnusedEnterElevator: @ 823F1A0 +BattleFrontier_BattleTowerLobby_Movement_UnusedEnterElevator: walk_fast_up walk_fast_up walk_fast_up @@ -674,7 +674,7 @@ BattleFrontier_BattleTowerLobby_Movement_UnusedEnterElevator: @ 823F1A0 set_invisible step_end -BattleFrontier_BattleTowerLobby_EventScript_BufferModeText:: @ 823F1A7 +BattleFrontier_BattleTowerLobby_EventScript_BufferModeText:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -685,23 +685,23 @@ BattleFrontier_BattleTowerLobby_EventScript_BufferModeText:: @ 823F1A7 call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti return -BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle:: @ 823F1D4 +BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle:: bufferstdstring 0, STDSTRING_SINGLE return -BattleFrontier_BattleTowerLobby_EventScript_BufferTextDouble:: @ 823F1D9 +BattleFrontier_BattleTowerLobby_EventScript_BufferTextDouble:: bufferstdstring 0, STDSTRING_DOUBLE return -BattleFrontier_BattleTowerLobby_EventScript_BufferTextMulti:: @ 823F1DE +BattleFrontier_BattleTowerLobby_EventScript_BufferTextMulti:: bufferstdstring 0, STDSTRING_MULTI return -BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti:: @ 823F1E3 +BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti:: bufferstdstring 0, STDSTRING_MULTI_LINK return -BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo:: @ 823F1E8 +BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -712,23 +712,23 @@ BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo:: @ 823F1E8 call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant return -BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant:: @ 823F215 +BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES return -BattleFrontier_BattleTowerLobby_EventScript_TalkedToDoublesAttendant:: @ 823F21B +BattleFrontier_BattleTowerLobby_EventScript_TalkedToDoublesAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES return -BattleFrontier_BattleTowerLobby_EventScript_TalkedToMultisAttendant:: @ 823F221 +BattleFrontier_BattleTowerLobby_EventScript_TalkedToMultisAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_MULTIS return -BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant:: @ 823F227 +BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant:: setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_LINK_MULTIS return -BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord:: @ 823F22D +BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -739,23 +739,23 @@ BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord:: @ 823F22D call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis return -BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles:: @ 823F25A +BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles:: setvar VAR_0x8004, 6 return -BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordDoubles:: @ 823F260 +BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordDoubles:: setvar VAR_0x8004, 10 return -BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordMultis:: @ 823F266 +BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordMultis:: setvar VAR_0x8004, 14 return -BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis:: @ 823F26C +BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis:: setvar VAR_0x8004, 18 return -BattleFrontier_BattleTowerLobby_EventScript_GetPartySize:: @ 823F272 +BattleFrontier_BattleTowerLobby_EventScript_GetPartySize:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -766,27 +766,27 @@ BattleFrontier_BattleTowerLobby_EventScript_GetPartySize:: @ 823F272 call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetLinkMultisPartySize return -BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize:: @ 823F29F +BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE return -BattleFrontier_BattleTowerLobby_EventScript_GetDoublesPartySize:: @ 823F2A5 +BattleFrontier_BattleTowerLobby_EventScript_GetDoublesPartySize:: setvar VAR_0x8005, FRONTIER_DOUBLES_PARTY_SIZE return -BattleFrontier_BattleTowerLobby_EventScript_GetMultisPartySize:: @ 823F2AB +BattleFrontier_BattleTowerLobby_EventScript_GetMultisPartySize:: setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE return -BattleFrontier_BattleTowerLobby_EventScript_GetLinkMultisPartySize:: @ 823F2B1 +BattleFrontier_BattleTowerLobby_EventScript_GetLinkMultisPartySize:: setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE return -BattleFrontier_EventScript_GetLvlMode:: @ 823F2B7 +BattleFrontier_EventScript_GetLvlMode:: frontier_get FRONTIER_DATA_LVL_MODE return -BattleFrontier_BattleTowerLobby_EventScript_TryCableLink:: @ 823F2C5 +BattleFrontier_BattleTowerLobby_EventScript_TryCableLink:: setvar VAR_0x8004, USING_BATTLE_TOWER message gText_PleaseWaitForLink waitmessage @@ -809,7 +809,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryCableLink:: @ 823F2C5 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLink end -BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections:: @ 823F327 +BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections:: special CloseLink compare VAR_0x8005, 3 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendDifferentSelection @@ -817,20 +817,20 @@ BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections:: @ 823 release end -BattleFrontier_BattleTowerLobby_EventScript_FriendDifferentSelection:: @ 823F33F +BattleFrontier_BattleTowerLobby_EventScript_FriendDifferentSelection:: msgbox BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlMode, MSGBOX_DEFAULT msgbox BattleFrontier_BattleTowerLobby_Text_ChooseDifferentMonsMatchLvlMode, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_AbortLinkIncorrectNumberOfPlayers:: @ 823F351 +BattleFrontier_BattleTowerLobby_EventScript_AbortLinkIncorrectNumberOfPlayers:: msgbox BattleFrontier_BattleTowerLobby_Text_LinkMultiOnlyForTwoPlayers, MSGBOX_DEFAULT special CloseLink msgbox CableClub_Text_IncorrectNumberOfParticipants, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_AbortLink:: @ 823F366 +BattleFrontier_BattleTowerLobby_EventScript_AbortLink:: special CloseLink compare VAR_0x8005, 0 call_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendChoseDifferentLvlMode @@ -842,19 +842,19 @@ BattleFrontier_BattleTowerLobby_EventScript_AbortLink:: @ 823F366 release end -BattleFrontier_BattleTowerLobby_EventScript_FriendChoseDifferentLvlMode:: @ 823F394 +BattleFrontier_BattleTowerLobby_EventScript_FriendChoseDifferentLvlMode:: msgbox BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlMode, MSGBOX_DEFAULT return -BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMon:: @ 823F39D +BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMon:: msgbox BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMon, MSGBOX_DEFAULT return -BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMons:: @ 823F3A6 +BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMons:: msgbox BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMons, MSGBOX_DEFAULT return -BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful:: @ 823F3AF +BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful:: incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE message BattleFrontier_BattleTowerLobby_Text_SaveGameBeforeShowingIn @@ -868,17 +868,17 @@ BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful:: @ 823F3AF goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_ExplainLinkMultisChallenge:: @ 823F3DA +BattleFrontier_BattleTowerLobby_EventScript_ExplainLinkMultisChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainLinkMultisChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_AskEnterLinkMultisChallenge end -BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink:: @ 823F3E8 +BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink:: setvar VAR_0x8004, LINK_GROUP_BATTLE_TOWER goto BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader end -BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader:: @ 823F3F3 +BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader:: message CableClub_Text_ChooseGroupLeaderOfTwo waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -889,7 +889,7 @@ BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader:: @ 823F3F3 case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge end -BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader:: @ 823F430 +BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader:: call CableClub_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful @@ -902,7 +902,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader:: @ 823F430 release return -BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup:: @ 823F463 +BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup:: call CableClub_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful @@ -915,7 +915,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup:: @ 823F463 release return -BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful:: @ 823F496 +BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful:: incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE message BattleFrontier_BattleTowerLobby_Text_SaveGameBeforeShowingIn @@ -928,13 +928,13 @@ BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful:: @ 823F496 goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator end -BattleFrontier_BattleTowerLobby_EventScript_RulesBoard:: @ 823F4BE +BattleFrontier_BattleTowerLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleTowerLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard:: @ 823F4CD +BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleTowerLobby_Text_ReadWhichHeading waitmessage multichoice 17, 2, MULTI_BATTLE_TOWER_RULES, FALSE @@ -947,79 +947,79 @@ BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard:: @ 823F4CD case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_ExitRules end -BattleFrontier_BattleTowerLobby_EventScript_RulesTower:: @ 823F520 +BattleFrontier_BattleTowerLobby_EventScript_RulesTower:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainTowerRules, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleTowerLobby_EventScript_RulesMons:: @ 823F52E +BattleFrontier_BattleTowerLobby_EventScript_RulesMons:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainMonRules, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleTowerLobby_EventScript_RulesSalon:: @ 823F53C +BattleFrontier_BattleTowerLobby_EventScript_RulesSalon:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainSalonRules, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleTowerLobby_EventScript_RulesMultiLink:: @ 823F54A +BattleFrontier_BattleTowerLobby_EventScript_RulesMultiLink:: msgbox BattleFrontier_BattleTowerLobby_Text_ExplainMultiLinkRules, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_ReadRulesBoard end -BattleFrontier_BattleTowerLobby_EventScript_ExitRules:: @ 823F558 +BattleFrontier_BattleTowerLobby_EventScript_ExitRules:: releaseall end @ Unused -BattleFrontier_BattleTowerLobby_EventScript_DirectYouToBattleRoom: @ 823F55A +BattleFrontier_BattleTowerLobby_EventScript_DirectYouToBattleRoom: .string "I'll direct you to your BATTLE ROOM now.$" -BattleFrontier_BattleTowerLobby_Text_DidntSaveBeforeQuitting: @ 823F583 +BattleFrontier_BattleTowerLobby_Text_DidntSaveBeforeQuitting: .string "Excuse me!\p" .string "You didn't save before you quit your\n" .string "challenge last time.\p" .string "Because of that, your challenge so far\n" .string "has been disqualified. Sorry!$" -BattleFrontier_BattleTowerLobby_Text_CongratsBeatenSeven: @ 823F60D +BattleFrontier_BattleTowerLobby_Text_CongratsBeatenSeven: .string "Congratulations!\n" .string "You've beaten all seven TRAINERS!\p" .string "$" @ Unused -BattleFrontier_BattleTowerLobby_Text_EarnedFabulousPrize: @ 823F641 +BattleFrontier_BattleTowerLobby_Text_EarnedFabulousPrize: .string "For beating seven TRAINERS in a row,\n" .string "you have earned this fabulous prize!\p" .string "$" -BattleFrontier_BattleTowerLobby_Text_ReceivedPrize: @ 823F68C +BattleFrontier_BattleTowerLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_BagFullMakeRoom: @ 823F6A6 +BattleFrontier_BattleTowerLobby_Text_BagFullMakeRoom: .string "Oh, your BAG appears to be full.\p" .string "Please make room in your BAG, then come\n" .string "see me.$" -BattleFrontier_BattleTowerLobby_Text_ThankYouForPlaying: @ 823F6F7 +BattleFrontier_BattleTowerLobby_Text_ThankYouForPlaying: .string "Thank you for playing!\p" .string "$" -BattleFrontier_BattleTowerLobby_Text_RecordWillBeSaved: @ 823F70F +BattleFrontier_BattleTowerLobby_Text_RecordWillBeSaved: .string "Your record will be saved.\n" .string "Please wait.$" -BattleFrontier_BattleTowerLobby_Text_WeveBeenWaitingForYou: @ 823F737 +BattleFrontier_BattleTowerLobby_Text_WeveBeenWaitingForYou: .string "We've been waiting for you!\p" .string "$" -BattleFrontier_BattleTowerLobby_Text_ProgressWillBeSaved: @ 823F754 +BattleFrontier_BattleTowerLobby_Text_ProgressWillBeSaved: .string "Before entering a BATTLE ROOM, your\n" .string "progress will be saved. Please wait.$" -BattleFrontier_BattleTowerLobby_Text_AboutToFace50thTrainer: @ 823F79D +BattleFrontier_BattleTowerLobby_Text_AboutToFace50thTrainer: .string "You're finally about to face the\n" .string "50th TRAINER.\p" .string "From here on, every time you beat seven\n" @@ -1027,54 +1027,54 @@ BattleFrontier_BattleTowerLobby_Text_AboutToFace50thTrainer: @ 823F79D .string "receive a commemorative RIBBON.\p" .string "Good luck!$" -BattleFrontier_BattleTowerLobby_Text_HereAreSomeRibbons: @ 823F844 +BattleFrontier_BattleTowerLobby_Text_HereAreSomeRibbons: .string "Here are some RIBBONS for beating\n" .string "seven tough TRAINERS in a row.\p" .string "{PLAYER} received some RIBBONS!$" -BattleFrontier_BattleTowerLobby_Text_PutRibbonOnMons: @ 823F89F +BattleFrontier_BattleTowerLobby_Text_PutRibbonOnMons: .string "{PLAYER} put the RIBBONS on\n" .string "the challenger POKéMON.$" -BattleFrontier_BattleTowerLobby_Text_DescribeFeelingsAboutBattleTower: @ 823F8CD +BattleFrontier_BattleTowerLobby_Text_DescribeFeelingsAboutBattleTower: .string "Excuse me, do you have a moment?\p" .string "Can you describe your feelings when\n" .string "you're about to begin a BATTLE TOWER\l" .string "match, or when you've either won or\l" .string "lost a match?$" -BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouBegin: @ 823F969 +BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouBegin: .string "Okay, what are your feelings when\n" .string "you're about to begin a match?$" -BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveWon: @ 823F9AA +BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveWon: .string "What do you feel when you've won\n" .string "a match?$" -BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveLost: @ 823F9D4 +BattleFrontier_BattleTowerLobby_Text_FeelWhatWhenYouveLost: .string "Can I hear about your feelings when\n" .string "you have lost a match?$" -BattleFrontier_BattleTowerLobby_Text_DontThinkMuchAboutIt: @ 823FA0F +BattleFrontier_BattleTowerLobby_Text_DontThinkMuchAboutIt: .string "Oh, so you don't think much about it?\n" .string "You're one cool customer.$" -BattleFrontier_BattleTowerLobby_Text_ChangedYourMind: @ 823FA4F +BattleFrontier_BattleTowerLobby_Text_ChangedYourMind: .string "Hunh? You changed your mind?\n" .string "I guess you're fickle.$" -BattleFrontier_BattleTowerLobby_Text_ThatsHowYouFeel: @ 823FA83 +BattleFrontier_BattleTowerLobby_Text_ThatsHowYouFeel: .string "Okay, so that's how you feel?\n" .string "That's quite original.\p" .string "Thanks!$" -BattleFrontier_BattleTowerLobby_Text_WinsInRowRecorded: @ 823FAC0 +BattleFrontier_BattleTowerLobby_Text_WinsInRowRecorded: .string "The number of matches you win in a row\n" .string "is recorded.\p" .string "I'd better not get beaten in\n" .string "an embarrassing way!$" -BattleFrontier_BattleTowerLobby_Text_CanLeaveUntilLossOrSevenWins: @ 823FB26 +BattleFrontier_BattleTowerLobby_Text_CanLeaveUntilLossOrSevenWins: .string "Once you've entered the BATTLE TOWER,\n" .string "you can't leave until you either lose\l" .string "or you beat seven TRAINERS in a row.\p" @@ -1082,7 +1082,7 @@ BattleFrontier_BattleTowerLobby_Text_CanLeaveUntilLossOrSevenWins: @ 823FB26 .string "to the challenge.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_DoubleBattleRoomConstruction: @ 823FBCE +BattleFrontier_BattleTowerLobby_Text_DoubleBattleRoomConstruction: .string "Welcome to the BATTLE TOWER\n" .string "DOUBLE BATTLE CORNER!\p" .string "Unfortunately, the BATTLE ROOMS\n" @@ -1091,7 +1091,7 @@ BattleFrontier_BattleTowerLobby_Text_DoubleBattleRoomConstruction: @ 823FBCE .string "is completed.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_MultiBattleRoomConstruction: @ 823FC6B +BattleFrontier_BattleTowerLobby_Text_MultiBattleRoomConstruction: .string "Welcome to the BATTLE TOWER\n" .string "MULTI BATTLE CORNER!\p" .string "Unfortunately, the BATTLE ROOMS\n" @@ -1099,34 +1099,34 @@ BattleFrontier_BattleTowerLobby_Text_MultiBattleRoomConstruction: @ 823FC6B .string "Please come back when the work\n" .string "is completed.$" -BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge: @ 823FD07 +BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge: .string "We look forward to seeing you on\n" .string "another challenge!$" -BattleFrontier_BattleTowerLobby_Text_WhichLevelMode: @ 823FD3B +BattleFrontier_BattleTowerLobby_Text_WhichLevelMode: .string "The BATTLE ROOM offers two levels\n" .string "of challenge, Level 50 and Open Level.\l" .string "Which is your choice?$" @ Unused -BattleFrontier_BattleTowerLobby_Text_PleaseSelectMons: @ 823FD9A +BattleFrontier_BattleTowerLobby_Text_PleaseSelectMons: .string "Please select the POKéMON you wish\n" .string "to enter.$" -BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering: @ 823FDC7 +BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering: .string "Before entering a BATTLE ROOM, your\n" .string "progress must be saved. Is that okay?$" -BattleFrontier_BattleTowerLobby_Text_ShowYouToBattleRoom: @ 823FE11 +BattleFrontier_BattleTowerLobby_Text_ShowYouToBattleRoom: .string "I will now show you to the\n" .string "{STR_VAR_1} BATTLE ROOM.$" -BattleFrontier_BattleTowerLobby_Text_RecordLastMatch: @ 823FE3C +BattleFrontier_BattleTowerLobby_Text_RecordLastMatch: .string "Shall I record your last BATTLE TOWER\n" .string "match on your FRONTIER PASS?$" @ Unused -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50: @ 823FE7F +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50: .string "Excuse me!\p" .string "You don't have {STR_VAR_2} eligible POKéMON.\p" .string "You must have {STR_VAR_2} different POKéMON\n" @@ -1137,7 +1137,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50: @ 823FE7F .string "Please come see me when you are ready.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpen: @ 823FF5D +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpen: .string "Excuse me!\p" .string "You don't have {STR_VAR_2} eligible POKéMON.\p" .string "You must have {STR_VAR_2} different POKéMON\n" @@ -1147,7 +1147,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpen: @ 823FF5D .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Singles: @ 8240027 +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Singles: .string "Excuse me!\p" .string "You don't have three eligible POKéMON.\p" .string "You must have three different POKéMON\n" @@ -1157,7 +1157,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Singles: @ 8240027 .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenSingles: @ 824010B +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenSingles: .string "Excuse me!\p" .string "You don't have three eligible POKéMON.\p" .string "You must have three different POKéMON\n" @@ -1167,7 +1167,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenSingles: @ 824010B .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Doubles: @ 82401DB +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Doubles: .string "Excuse me!\p" .string "You don't have four eligible POKéMON.\p" .string "You must have four different POKéMON\n" @@ -1177,7 +1177,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Doubles: @ 82401DB .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenDoubles: @ 82402BD +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenDoubles: .string "Excuse me!\p" .string "You don't have four eligible POKéMON.\p" .string "You must have four different POKéMON\n" @@ -1187,7 +1187,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenDoubles: @ 82402BD .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Multis: @ 824038B +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Multis: .string "Excuse me!\p" .string "You don't have two eligible POKéMON.\p" .string "You must have two different POKéMON\n" @@ -1197,7 +1197,7 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLv50Multis: @ 824038B .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenMultis: @ 824046B +BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenMultis: .string "Excuse me!\p" .string "You don't have two eligible POKéMON.\p" .string "You must have two different POKéMON\n" @@ -1207,18 +1207,18 @@ BattleFrontier_BattleTowerLobby_Text_NotEnoughValidMonsLvOpenMultis: @ 824046B .string "EGGS{STR_VAR_1} ineligible.\p" .string "Please come see me when you are ready.$" -BattleFrontier_BattleTowerLobby_Text_WelcomSingleBattle: @ 8240537 +BattleFrontier_BattleTowerLobby_Text_WelcomSingleBattle: .string "Where the talents of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE TOWER!\p" .string "I am your guide to the SINGLE\n" .string "BATTLE ROOMS.$" -BattleFrontier_BattleTowerLobby_Text_TakeSinglesChallenge: @ 82405B3 +BattleFrontier_BattleTowerLobby_Text_TakeSinglesChallenge: .string "Would you like to take the SINGLE\n" .string "BATTLE ROOM challenge?$" -BattleFrontier_BattleTowerLobby_Text_ExplainSinglesChallenge: @ 82405EC +BattleFrontier_BattleTowerLobby_Text_ExplainSinglesChallenge: .string "The BATTLE TOWER's SINGLE BATTLE\n" .string "ROOMS are facilities for conducting\l" .string "SINGLE BATTLES with three POKéMON.\p" @@ -1233,22 +1233,22 @@ BattleFrontier_BattleTowerLobby_Text_ExplainSinglesChallenge: @ 82405EC .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleTowerLobby_Text_SelectThreeMons: @ 82407A6 +BattleFrontier_BattleTowerLobby_Text_SelectThreeMons: .string "Now please select the three POKéMON\n" .string "that are to be entered.$" -BattleFrontier_BattleTowerLobby_Text_WelcomeDoubleBattle: @ 82407E2 +BattleFrontier_BattleTowerLobby_Text_WelcomeDoubleBattle: .string "Where the talents of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE TOWER!\p" .string "I am your guide to the DOUBLE\n" .string "BATTLE ROOMS.$" -BattleFrontier_BattleTowerLobby_Text_TakeDoublesChallenge: @ 824085E +BattleFrontier_BattleTowerLobby_Text_TakeDoublesChallenge: .string "Would you like to take the DOUBLE\n" .string "BATTLE ROOM challenge?$" -BattleFrontier_BattleTowerLobby_Text_ExplainDoublesChallenge: @ 8240897 +BattleFrontier_BattleTowerLobby_Text_ExplainDoublesChallenge: .string "The BATTLE TOWER's DOUBLE BATTLE\n" .string "ROOMS are facilities for conducting\l" .string "DOUBLE BATTLES with four POKéMON.\p" @@ -1263,22 +1263,22 @@ BattleFrontier_BattleTowerLobby_Text_ExplainDoublesChallenge: @ 8240897 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleTowerLobby_Text_PleaseSelectFourMons: @ 8240A50 +BattleFrontier_BattleTowerLobby_Text_PleaseSelectFourMons: .string "Now please select the four POKéMON\n" .string "that are to be entered.$" -BattleFrontier_BattleTowerLobby_Text_WelcomeMultiBattle: @ 8240A8B +BattleFrontier_BattleTowerLobby_Text_WelcomeMultiBattle: .string "Where the talents of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE TOWER!\p" .string "I am your guide to the MULTI\n" .string "BATTLE ROOMS.$" -BattleFrontier_BattleTowerLobby_Text_TakeMultisChallenge: @ 8240B06 +BattleFrontier_BattleTowerLobby_Text_TakeMultisChallenge: .string "Would you like to take the MULTI\n" .string "BATTLE ROOM challenge?$" -BattleFrontier_BattleTowerLobby_Text_ExplainMultisChallenge: @ 8240B3E +BattleFrontier_BattleTowerLobby_Text_ExplainMultisChallenge: .string "The BATTLE TOWER's MULTI BATTLE\n" .string "ROOMS are facilities for conducting\l" .string "MULTI BATTLES.\p" @@ -1301,22 +1301,22 @@ BattleFrontier_BattleTowerLobby_Text_ExplainMultisChallenge: @ 8240B3E .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons: @ 8240DDB +BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons: .string "Now please select the two POKéMON\n" .string "that are to be entered.$" -BattleFrontier_BattleTowerLobby_Text_WelcomeLinkMultiBattle: @ 8240E15 +BattleFrontier_BattleTowerLobby_Text_WelcomeLinkMultiBattle: .string "Where the talents of TRAINERS\n" .string "are put to the test!\p" .string "Welcome to the BATTLE TOWER!\p" .string "I am your guide to the LINK MULTI\n" .string "BATTLE ROOMS.$" -BattleFrontier_BattleTowerLobby_Text_TakeLinkMultisChallenge: @ 8240E95 +BattleFrontier_BattleTowerLobby_Text_TakeLinkMultisChallenge: .string "Would you like to take the LINK MULTI\n" .string "BATTLE ROOM challenge?$" -BattleFrontier_BattleTowerLobby_Text_ExplainLinkMultisChallenge: @ 8240ED2 +BattleFrontier_BattleTowerLobby_Text_ExplainLinkMultisChallenge: .string "The BATTLE TOWER's MULTI BATTLE\n" .string "ROOMS are facilities for conducting\l" .string "MULTI BATTLES with a friend.\p" @@ -1337,76 +1337,76 @@ BattleFrontier_BattleTowerLobby_Text_ExplainLinkMultisChallenge: @ 8240ED2 .string "Once you start, you must battle seven\n" .string "MULTI BATTLES in a row nonstop.$" -BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons2: @ 824115E +BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons2: .string "Now please select the two POKéMON\n" .string "that are to be entered.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_ChoseSameMonAsFriend: @ 8241198 +BattleFrontier_BattleTowerLobby_Text_ChoseSameMonAsFriend: .string "You have chosen the same kind of\n" .string "POKéMON as your friend.\p" .string "Please choose two POKéMON different\n" .string "from your friend's, match the level\l" .string "you wish to enter, and register again.$" -BattleFrontier_BattleTowerLobby_Text_LinkMultiOnlyForTwoPlayers: @ 8241240 +BattleFrontier_BattleTowerLobby_Text_LinkMultiOnlyForTwoPlayers: .string "The LINK MULTI BATTLE ROOM challenge\n" .string "is only for two linked players.$" -BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMon: @ 8241285 +BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMon: .string "Your friend has also selected\n" .string "the POKéMON {STR_VAR_1}.$" -BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMons: @ 82412B3 +BattleFrontier_BattleTowerLobby_Text_FriendAlsoSelectedMons: .string "Your friend has also selected the\n" .string "POKéMON {STR_VAR_1} and {STR_VAR_2}.$" -BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlMode: @ 82412E8 +BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlMode: .string "Your friend has chosen a different\n" .string "battle level.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlModeSameMon: @ 8241319 +BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlModeSameMon: .string "Your friend has chosen a different\n" .string "battle level.\p" .string "Your friend has also selected\n" .string "the POKéMON {STR_VAR_1}.$" @ Unused -BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlModeSameMons: @ 8241378 +BattleFrontier_BattleTowerLobby_Text_FriendChoseDifferentLvlModeSameMons: .string "Your friend has chosen a different\n" .string "battle level.\p" .string "Your friend has also selected the\n" .string "POKéMON {STR_VAR_1} and {STR_VAR_2}.$" -BattleFrontier_BattleTowerLobby_Text_ChooseDifferentMonsMatchLvlMode: @ 82413DE +BattleFrontier_BattleTowerLobby_Text_ChooseDifferentMonsMatchLvlMode: .string "Please choose two POKéMON different\n" .string "from your friend's, match the level\l" .string "you wish to enter, and register again.$" -BattleFrontier_BattleTowerLobby_Text_SaveGameBeforeShowingIn: @ 824144D +BattleFrontier_BattleTowerLobby_Text_SaveGameBeforeShowingIn: .string "I will save the game before\n" .string "showing you in. Please wait.$" -BattleFrontier_BattleTowerLobby_Text_CongratsDefeatedMaiden: @ 8241486 +BattleFrontier_BattleTowerLobby_Text_CongratsDefeatedMaiden: .string "Congratulations!\n" .string "You have defeated the SALON MAIDEN\l" .string "and swept seven TRAINERS!$" -BattleFrontier_BattleTowerLobby_Text_AwardYouTheseBattlePoints: @ 82414D4 +BattleFrontier_BattleTowerLobby_Text_AwardYouTheseBattlePoints: .string "In recognition of your infinite talent,\n" .string "we award you these Battle Point(s).$" -BattleFrontier_Text_ObtainedXBattlePoints: @ 8241520 +BattleFrontier_Text_ObtainedXBattlePoints: .string "{PLAYER} obtained {STR_VAR_1} Battle Point(s).$" -BattleFrontier_BattleTowerLobby_Text_RulesAreListed: @ 8241540 +BattleFrontier_BattleTowerLobby_Text_RulesAreListed: .string "The BATTLE TOWER rules are listed.$" -BattleFrontier_BattleTowerLobby_Text_ReadWhichHeading: @ 8241563 +BattleFrontier_BattleTowerLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -BattleFrontier_BattleTowerLobby_Text_ExplainTowerRules: @ 8241586 +BattleFrontier_BattleTowerLobby_Text_ExplainTowerRules: .string "The BATTLE TOWER is a facility where\n" .string "four types of battles are waged--\l" .string "SINGLE BATTLE, DOUBLE BATTLE, MULTI\l" @@ -1416,7 +1416,7 @@ BattleFrontier_BattleTowerLobby_Text_ExplainTowerRules: @ 8241586 .string "Please speak with a guide offering\n" .string "the type of battle you wish to enter.$" -BattleFrontier_BattleTowerLobby_Text_ExplainMonRules: @ 8241693 +BattleFrontier_BattleTowerLobby_Text_ExplainMonRules: .string "Depending on the BATTLE ROOM you are\n" .string "entering, you will be required to take\l" .string "a certain number of POKéMON.\p" @@ -1425,7 +1425,7 @@ BattleFrontier_BattleTowerLobby_Text_ExplainMonRules: @ 8241693 .string "The DOUBLE BATTLE mode requires four,\n" .string "and the MULTI modes both require two.$" -BattleFrontier_BattleTowerLobby_Text_ExplainSalonRules: @ 8241777 +BattleFrontier_BattleTowerLobby_Text_ExplainSalonRules: .string "The BATTLE SALON is where you must\n" .string "find a partner to form a tag team for\l" .string "the MULTI BATTLE ROOM challenge.\p" @@ -1435,7 +1435,7 @@ BattleFrontier_BattleTowerLobby_Text_ExplainSalonRules: @ 8241777 .string "You may choose a new tag partner\n" .string "after winning seven straight matches.$" -BattleFrontier_BattleTowerLobby_Text_ExplainMultiLinkRules: @ 824187E +BattleFrontier_BattleTowerLobby_Text_ExplainMultiLinkRules: .string "The LINK MULTI BATTLE Mode is for two\n" .string "friends to mount a challenge together.\p" .string "You and your friend must be linked with\n" diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc index 0e8f5e8cd0e6..b7354d9a2046 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc @@ -5,7 +5,7 @@ .set LOCALID_PLAYER, 5 .set LOCALID_PARTNER, 6 -BattleFrontier_BattleTowerMultiBattleRoom_MapScripts:: @ 8248EE8 +BattleFrontier_BattleTowerMultiBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiBattleRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerMultiBattleRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerMultiBattleRoom_OnFrame @@ -15,14 +15,14 @@ BattleFrontier_BattleTowerMultiBattleRoom_MapScripts:: @ 8248EE8 @ 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: @ 8248EF8 +BattleFrontier_BattleTowerMultiBattleRoom_OnTransition: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetLinkPlayerGfx end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx:: @ 8248F0F +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx:: tower_setpartnergfx checkplayergender compare VAR_RESULT, FEMALE @@ -30,27 +30,27 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx:: @ 8248F0F setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_BRENDAN_NORMAL return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8248F29 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_MAY_NORMAL return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetLinkPlayerGfx:: @ 8248F2F +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetLinkPlayerGfx:: special SetBattleTowerLinkPlayerGfx return -BattleFrontier_BattleTowerMultiBattleRoom_OnWarp: @ 8248F33 +BattleFrontier_BattleTowerMultiBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_HidePlayerObj .2byte 0 -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_HidePlayerObj:: @ 8248F3D +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_HidePlayerObj:: hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM end -BattleFrontier_BattleTowerMultiBattleRoom_OnFrame: @ 8248F43 +BattleFrontier_BattleTowerMultiBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom .2byte 0 -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom:: @ 8248F4D +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom:: setvar VAR_TEMP_0, 1 applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom @@ -67,7 +67,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom:: @ 8248F4D frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter:: @ 8248FB4 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter:: tower_setopponent addobject LOCALID_OPPONENT_1 addobject LOCALID_OPPONENT_2 @@ -89,7 +89,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter:: @ 8248FB4 waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoTowerBattle -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink:: @ 8249026 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink:: tower_getopponentintro 0 delay 15 applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft @@ -103,18 +103,18 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink:: @ 8 messageautoscroll gStringVar4 waitmessage delay 48 -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoTowerBattle:: @ 8249069 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoTowerBattle:: call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle switch VAR_RESULT case B_OUTCOME_WON, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost:: @ 824907E +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST tower_set TOWER_DATA_LVL_MODE setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER special Script_TryGainNewFanFromCounter goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents:: @ 82490AA +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents:: call BattleFrontier_EventScript_IncrementWinStreak tower_setbattlewon switch VAR_RESULT @@ -135,11 +135,11 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents:: @ 8249 msgbox BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink:: @ 8249118 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink:: messageautoscroll BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth waitmessage delay 48 -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty:: @ 8249121 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty:: special LoadPlayerParty frontier_setpartyorder FRONTIER_MULTI_PARTY_SIZE compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS @@ -147,7 +147,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty:: @ 8249121 playfanfare MUS_HEAL waitfanfare special HealPlayerParty -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: @ 8249143 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: frontier_get FRONTIER_DATA_BATTLE_NUM call BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS @@ -163,7 +163,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: @ 8 case 3, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord:: @ 82491B1 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord:: multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge @@ -171,7 +171,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoReco case 2, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattle:: @ 82491E7 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattle:: message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -180,18 +180,18 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattle:: @ 82491E case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RecordBattle case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RecordBattle:: @ 8249219 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RecordBattle:: call BattleFrontier_EventScript_SaveBattle goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskPauseChallenge:: @ 8249223 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents case YES, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge:: @ 8249251 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -200,7 +200,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge:: @ 824 case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge:: @ 8249283 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge:: closemessage clearflag FLAG_TEMP_2 applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle @@ -212,14 +212,14 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge:: @ 8249 goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyWon:: @ 82492AF +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON tower_set TOWER_DATA_LVL_MODE setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER special Script_TryGainNewFanFromCounter goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_PauseChallenge:: @ 82492DB +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleTowerBattleRoom_Text_SavingPleaseWait waitmessage tower_save CHALLENGE_STATUS_PAUSED @@ -229,7 +229,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_PauseChallenge:: @ 82492DB frontier_reset end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet:: @ 82492FD +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLink copyvar VAR_TEMP_F, VAR_RESULT @@ -241,37 +241,37 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet:: case 5, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSet case 6, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSet -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSet:: @ 8249354 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor2ndOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor3rdOpponentSet:: @ 824935B +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor3rdOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor3rdOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor4thOpponentSet:: @ 8249362 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor4thOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor4thOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor5thOpponentSet:: @ 8249369 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor5thOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor5thOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSet:: @ 8249370 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor6thOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSet:: @ 8249377 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSet:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor7thOpponentSet waitmessage return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLink:: @ 824937E +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLink:: copyvar VAR_TEMP_F, VAR_RESULT switch VAR_TEMP_F case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSetLink @@ -281,48 +281,48 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLin case 5, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSetLink case 6, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSetLink -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSetLink:: @ 82493CA +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor2ndOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor3rdOpponentSetLink:: @ 82493D6 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor3rdOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor3rdOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor4thOpponentSetLink:: @ 82493E2 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor4thOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor4thOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor5thOpponentSetLink:: @ 82493EE +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor5thOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor5thOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSetLink:: @ 82493FA +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor6thOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor6thOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSetLink:: @ 8249406 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor7thOpponentSetLink:: message BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor7thOpponentSet waitmessage goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_LinkDelayForMsg:: @ 8249412 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_LinkDelayForMsg:: waitmessage delay 48 return -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink:: @ 8249417 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink:: goto_if_set FLAG_TEMP_2, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNoRecord multichoice 19, 6, MULTI_GO_ON_RECORD_RETIRE, TRUE switch VAR_RESULT @@ -332,7 +332,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLink:: case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNoRecord:: @ 8249457 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNoRecord:: multichoice 20, 8, MULTI_GO_ON_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink @@ -340,7 +340,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsLinkNo case MULTI_B_PRESSED, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink:: @ 8249483 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink:: setvar VAR_0x8004, BATTLE_TOWER_LINK_CONTINUE setvar VAR_0x8005, 0 message gText_LinkStandby3 @@ -352,7 +352,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink:: @ goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_LinkDelayForMsg end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink:: @ 82494A8 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink:: message BattleFrontier_BattleTowerBattleRoom_Text_RecordYourBattle waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -364,7 +364,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRecordBattleLink:: @ 82 goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink:: @ 82494DD +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink:: message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -373,7 +373,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink:: @ goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink:: @ 82494FA +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink:: setvar VAR_0x8004, BATTLE_TOWER_LINK_RETIRE setvar VAR_0x8005, 0 message gText_LinkStandby3 @@ -383,11 +383,11 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink:: @ 82 goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost end -BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReconnectLink:: @ 8249514 +BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReconnectLink:: special BattleTowerReconnectLink return -BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom: @ 8249518 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom: walk_up walk_up walk_up @@ -395,7 +395,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom: @ 8249518 face_right step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom: @ 824951E +BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom: walk_left walk_up walk_up @@ -403,15 +403,15 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom: @ 824951E face_right step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant: @ 8249524 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant: face_left step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle: @ 8249526 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle: walk_in_place_fastest_right step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter: @ 8249528 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter: walk_down walk_down walk_down @@ -419,7 +419,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter: @ 8249528 face_left step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter: @ 824952E +BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter: walk_right walk_down walk_down @@ -427,93 +427,93 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter: @ 824952E face_left step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Exit: @ 8249534 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Exit: walk_up walk_up walk_up set_invisible step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Exit: @ 8249539 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Exit: walk_up walk_up walk_up walk_up step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer: @ 824953E +BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer: walk_right walk_right step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos: @ 8249541 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos: walk_left walk_left walk_in_place_fastest_right step_end -BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft: @ 8249545 +BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft: walk_in_place_left step_end -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor2ndOpponentSet: @ 8249547 +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor2ndOpponentSet: .string "The 2nd set of opponents is next.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor3rdOpponentSet: @ 8249578 +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor3rdOpponentSet: .string "The 3rd set of opponents is next.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor4thOpponentSet: @ 82495A9 +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor4thOpponentSet: .string "The 4th set of opponents is next.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor5thOpponentSet: @ 82495DA +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor5thOpponentSet: .string "The 5th set of opponents is next.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor6thOpponentSet: @ 824960B +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor6thOpponentSet: .string "The 6th set of opponents is next.\n" .string "Are you ready?$" -BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor7thOpponentSet: @ 824963C +BattleFrontier_BattleTowerMultiBattleRoom_Text_ReadyFor7thOpponentSet: .string "The 7th set of opponents is next.\n" .string "Are you ready?$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_2ndOpponentSetNext: @ 824966D +BattleFrontier_BattleTowerMultiBattleRoom_Text_2ndOpponentSetNext: .string "The 2nd set of opponents is next.\n" .string "Do your best!$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_3rdOpponentSetNext: @ 824969D +BattleFrontier_BattleTowerMultiBattleRoom_Text_3rdOpponentSetNext: .string "The 3rd set of opponents is next.\n" .string "Do your best!$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_4thOpponentSetNext: @ 82496CD +BattleFrontier_BattleTowerMultiBattleRoom_Text_4thOpponentSetNext: .string "The 4th set of opponents is next.\n" .string "Do your best!$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_5thOpponentSetNext: @ 82496FD +BattleFrontier_BattleTowerMultiBattleRoom_Text_5thOpponentSetNext: .string "The 5th set of opponents is next.\n" .string "Do your best!$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_6thOpponentSetNext: @ 824972D +BattleFrontier_BattleTowerMultiBattleRoom_Text_6thOpponentSetNext: .string "The 6th set of opponents is next.\n" .string "Do your best!$" @ Unused -BattleFrontier_BattleTowerMultiBattleRoom_Text_7thOpponentSetNext: @ 824975D +BattleFrontier_BattleTowerMultiBattleRoom_Text_7thOpponentSetNext: .string "The 7th set of opponents is next.\n" .string "Do your best!$" -gText_LinkStandby3:: @ 824978D +gText_LinkStandby3:: .string "Link standby…$" -gText_YourPartnerHasRetired:: @ 824979B +gText_YourPartnerHasRetired:: .string "Your partner has retired.\p" .string "Your BATTLE ROOM challenge\n" .string "will be canceled.$" diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc index 5e496527ea31..9c6a8bb2bf2c 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc @@ -3,7 +3,7 @@ .set LOCALID_ATTENDANT_2, 3 .set LOCALID_PARTNER, 4 -BattleFrontier_BattleTowerMultiCorridor_MapScripts:: @ 8248D4A +BattleFrontier_BattleTowerMultiCorridor_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiCorridor_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerMultiCorridor_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerMultiCorridor_OnFrame @@ -13,14 +13,14 @@ BattleFrontier_BattleTowerMultiCorridor_MapScripts:: @ 8248D4A @ 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: @ 8248D5A +BattleFrontier_BattleTowerMultiCorridor_OnTransition: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_SetLinkPlayerGfx end -BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx:: @ 8248D71 +BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx:: tower_setpartnergfx checkplayergender compare VAR_RESULT, FEMALE @@ -28,30 +28,30 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx:: @ 8248D71 setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_BRENDAN_NORMAL return -BattleFrontier_BattleTowerMultiCorridor_EventScript_SetPlayerGfxFemale:: @ 8248D8B +BattleFrontier_BattleTowerMultiCorridor_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_MAY_NORMAL return -BattleFrontier_BattleTowerMultiCorridor_EventScript_SetLinkPlayerGfx:: @ 8248D91 +BattleFrontier_BattleTowerMultiCorridor_EventScript_SetLinkPlayerGfx:: special SetBattleTowerLinkPlayerGfx return -BattleFrontier_BattleTowerMultiCorridor_OnWarp: @ 8248D95 +BattleFrontier_BattleTowerMultiCorridor_OnWarp: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerMultiCorridor_EventScript_SetUpObjects .2byte 0 -BattleFrontier_BattleTowerMultiCorridor_EventScript_SetUpObjects:: @ 8248D9F +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 special OffsetCameraForBattle end -BattleFrontier_BattleTowerMultiCorridor_OnFrame: @ 8248DB2 +BattleFrontier_BattleTowerMultiCorridor_OnFrame: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor .2byte 0 -BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor:: @ 8248DBC +BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor:: lockall setflag FLAG_ENABLE_MULTI_CORRIDOR_DOOR setvar VAR_0x8004, 14 @ x coord of far door, used by DrawDoor @@ -94,7 +94,7 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor:: @ 8248DBC releaseall end -BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToBattleRoom:: @ 8248E71 +BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToBattleRoom:: compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES @@ -105,23 +105,23 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToBattleRoom:: @ 8248E71 call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom return -BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom:: @ 8248E9E +BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 255, 4, 8 waitstate return -BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToMultiBattleRoom:: @ 8248EA8 +BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToMultiBattleRoom:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 255, 4, 5 waitstate return @ Unnecessary duplicate of the above -BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom:: @ 8248EB2 +BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom:: warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 255, 4, 5 waitstate return -BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerWalkToDoor: @ 8248EBC +BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerWalkToDoor: walk_down walk_right walk_right @@ -131,7 +131,7 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerWalkToDoor: @ 8248EBC walk_right step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerWalkToDoor: @ 8248EC4 +BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerWalkToDoor: walk_down walk_left walk_left @@ -141,7 +141,7 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerWalkToDoor: @ 8248EC4 walk_left step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor: @ 8248ECC +BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor: walk_right walk_right walk_right @@ -152,7 +152,7 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor: @ 82 walk_in_place_fastest_right step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor: @ 8248ED5 +BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor: walk_left walk_left walk_left @@ -163,19 +163,19 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor: @ 8 walk_in_place_fastest_left step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor: @ 8248EDE +BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor: delay_16 walk_up walk_up set_invisible step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor: @ 8248EE3 +BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor: walk_up set_invisible step_end -BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator: @ 8248EE6 +BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator: walk_down step_end diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc index 297514524a2e..4a6d29446e44 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc @@ -1,17 +1,17 @@ .set LOCALID_ATTENDANT, 1 -BattleFrontier_BattleTowerMultiPartnerRoom_MapScripts:: @ 8243D92 +BattleFrontier_BattleTowerMultiPartnerRoom_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleTowerMultiPartnerRoom_OnResume map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiPartnerRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerMultiPartnerRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerMultiPartnerRoom_OnFrame .byte 0 -BattleFrontier_BattleTowerMultiPartnerRoom_OnResume: @ 8243DA7 +BattleFrontier_BattleTowerMultiPartnerRoom_OnResume: pyramid_resetparty end -BattleFrontier_BattleTowerMultiPartnerRoom_OnTransition: @ 8243DB0 +BattleFrontier_BattleTowerMultiPartnerRoom_OnTransition: goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ChosePartner clearflag FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_1 clearflag FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_2 @@ -24,7 +24,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_OnTransition: @ 8243DB0 tower_loadpartners end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ChosePartner:: @ 8243DDA +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ChosePartner:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_BOY_1 setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_BOY_1 setvar VAR_OBJ_GFX_ID_2, OBJ_EVENT_GFX_BOY_1 @@ -38,26 +38,26 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ChosePartner:: @ 8243DDA setobjectxyperm LOCALID_ATTENDANT, 10, 2 end -BattleFrontier_BattleTowerMultiPartnerRoom_OnWarp: @ 8243E14 +BattleFrontier_BattleTowerMultiPartnerRoom_OnWarp: map_script_2 VAR_TEMP_3, 1, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TurnPlayerNorth .2byte 0 -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TurnPlayerNorth:: @ 8243E1E +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattleTowerMultiPartnerRoom_OnFrame: @ 8243E23 +BattleFrontier_BattleTowerMultiPartnerRoom_OnFrame: map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom map_script_2 VAR_TEMP_3, 1, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ExitRoom .2byte 0 -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ExitRoom:: @ 8243E35 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ExitRoom:: lockall setvar VAR_TEMP_3, 0 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom:: @ 8243E41 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom:: lockall applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom waitmovement 0 @@ -72,16 +72,16 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom:: @ 8243E41 releaseall end -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom: @ 8243E75 +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom: walk_down step_end -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit: @ 8243E77 +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit: walk_left walk_in_place_fastest_down step_end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: @ 8243E7A +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: lock faceplayer message BattleFrontier_BattleTowerMultiPartnerRoom_Text_QuitLookingForPartner @@ -93,12 +93,12 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: @ 8243E7A release end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge:: @ 8243E9D +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge:: frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator:: @ 8243EB5 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator:: msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_ThankYouForChoosingPartner, MSGBOX_DEFAULT closemessage applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestUp @@ -113,59 +113,59 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator:: @ 8243EB5 releaseall end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevator:: @ 8243EE4 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevator:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevator waitmovement 0 return @ Unused -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorEast: @ 8243EF6 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorEast: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevatorEast waitmovement 0 return @ Unused -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorWest: @ 8243F08 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorWest: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEneterElevatorWest waitmovement 0 return -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevator: @ 8243F1A +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevator: walk_up walk_up set_invisible step_end @ Functionally unused -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevatorEast: @ 8243F1E +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevatorEast: walk_right walk_up set_invisible step_end @ Functionally unused -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEneterElevatorWest: @ 8243F22 +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEneterElevatorWest: walk_left walk_up set_invisible step_end -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator: @ 8243F26 +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator: walk_up set_invisible step_end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner1:: @ 8243F29 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner1:: lock faceplayer setvar VAR_TEMP_2, 0 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: @ 8243F36 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_RejectPartner tower_dopartnermsg PARTNER_MSGID_INTRO waitmessage @@ -194,24 +194,24 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: release end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_RejectPartner:: @ 8243FC3 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_RejectPartner:: tower_dopartnermsg PARTNER_MSGID_REJECT waitmessage waitbuttonpress release end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExit:: @ 8243FD4 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExit:: applymovement VAR_LAST_TALKED, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExit waitmovement 0 return -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExitSouth:: @ 8243FDF +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExitSouth:: applymovement VAR_LAST_TALKED, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExitSouth waitmovement 0 return -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExit: @ 8243FEA +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExit: walk_fast_up walk_fast_up walk_fast_up @@ -221,7 +221,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExit: @ 8243FEA walk_fast_up step_end -BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExitSouth: @ 8243FF2 +BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExitSouth: walk_fast_left walk_fast_up walk_fast_up @@ -232,131 +232,131 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PartnerExitSouth: @ 8243FF2 walk_fast_up step_end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner2:: @ 8243FFB +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner2:: lock faceplayer setvar VAR_TEMP_2, 1 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner3:: @ 8244008 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner3:: lock faceplayer setvar VAR_TEMP_2, 2 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner4:: @ 8244015 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner4:: lock faceplayer setvar VAR_TEMP_2, 3 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner5:: @ 8244022 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner5:: lock faceplayer setvar VAR_TEMP_2, 4 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner6:: @ 824402F +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner6:: lock faceplayer setvar VAR_TEMP_2, 5 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner7:: @ 824403C +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner7:: lock faceplayer setvar VAR_TEMP_2, 6 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner8:: @ 8244049 +BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Partner8:: lock faceplayer setvar VAR_TEMP_2, 7 goto BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner end -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner: @ 8244056 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner: .string "Please find a partner from out of\n" .string "the TRAINERS gathered here.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_QuitLookingForPartner: @ 8244094 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_QuitLookingForPartner: .string "{PLAYER}, you have not found a partner\n" .string "for your tag team.\p" .string "Would you like to quit looking and\n" .string "return to the reception counter?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner2: @ 824410C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner2: .string "Then, please find a partner from\n" .string "the TRAINERS gathered here.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ThankYouForChoosingPartner:: @ 8244149 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ThankYouForChoosingPartner:: .string "Thank you for choosing a partner.\p" .string "I will now show you to your\n" .string "MULTI BATTLE ROOM.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Intro:: @ 824419A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Intro:: .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "You can call me {STR_VAR_3}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Mon1:: @ 82441CA +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Mon1:: .string "On {STR_VAR_1}'s advice, I brought\n" .string "one {STR_VAR_3} with {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Mon2Ask:: @ 82441F7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Please, let me join you as a tag team.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Accept:: @ 824422E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Accept:: .string "Thank you!\n" .string "I'll go register right now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Reject:: @ 8244255 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice1Reject:: .string "I really wanted to form a tag team\n" .string "with you, {PLAYER}…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Intro:: @ 8244286 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Intro:: .string "I am {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "My name is {STR_VAR_3}.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Mon1:: @ 82442B2 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Mon1:: .string "I got advice from {STR_VAR_1} and chose\n" .string "one {STR_VAR_3} with {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Mon2Ask:: @ 82442E4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Please, let's form a tag team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Accept:: @ 8244313 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Accept:: .string "Thank you very much!\n" .string "I'll be done with registration quickly!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Reject:: @ 8244350 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_UnusedApprentice2Reject:: .string "{PLAYER}, I was hoping that I could\n" .string "partner up with you…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Intro:: @ 8244383 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Intro:: .string "Um, my name's {STR_VAR_3}, and I'm\n" .string "{STR_VAR_1}'s no. {STR_VAR_2} apprentice.\p" .string "Snivel…\p" .string "I'm sorry!\n" .string "This tension is making me cry…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Mon1:: @ 82443E7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Mon1:: .string "{STR_VAR_3} advised me, so I have\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Mon2Ask:: @ 8244413 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Snivel…\n" .string "Please, please team up with me!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Accept:: @ 824444B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Accept:: .string "Oh, really? You will?\n" .string "Awesome! Wicked! Awoooh!\p" .string "Oh… I'm sorry…\n" @@ -364,119 +364,119 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Accept:: @ 824444B .string "I'll go register right away.\n" .string "Please don't go away!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Reject:: @ 82444D6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice1Reject:: .string "Oh, b-but…\n" .string "Sob… Waaaaah!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Intro:: @ 82444EF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Intro:: .string "Hi, there! I'm {STR_VAR_3}!\n" .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Mon1:: @ 824451E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Mon1:: .string "{STR_VAR_3} recommended my crew.\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Mon2Ask:: @ 8244549 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1},\n" .string "that's what I have! Cool, huh?\p" .string "So come on!\n" .string "Let's form a tag team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Accept:: @ 824459B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Accept:: .string "Yay! Great!\n" .string "Okay, I'll go register, okay?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Reject:: @ 82445C5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice2Reject:: .string "Aww, why?\n" .string "I wanted to team up, {PLAYER}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Intro:: @ 82445E8 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Intro:: .string "I'm {STR_VAR_3}, the no. {STR_VAR_2} apprentice\n" .string "of the famous {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Mon1:: @ 8244618 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Mon1:: .string "I looked to {STR_VAR_3} for advice.\n" .string "One {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Mon2Ask:: @ 8244643 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Mon2Ask:: .string "and one {STR_VAR_2} with {STR_VAR_1},\n" .string "that's my pair.\p" .string "Please, will you join me in\n" .string "a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Accept:: @ 824468F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Accept:: .string "Thank you!\n" .string "I'll register right away!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Reject:: @ 82446B4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice3Reject:: .string "{PLAYER}, I had been hoping to join\n" .string "you in a tag team…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Intro:: @ 82446E5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Intro:: .string "Um… I'm sincerely happy that you\n" .string "would take the time to talk to me.\p" .string "I'm {STR_VAR_3}.\n" .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Mon1:: @ 824474D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Mon1:: .string "{STR_VAR_3} gave me advice.\n" .string "I'm very grateful for it.\p" .string "I have a team of one {STR_VAR_2}\n" .string "with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Mon2Ask:: @ 824479E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\n" .string "I know I'm asking a lot…\p" .string "I don't think you'll be willing to,\n" .string "but may I join you as a partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Accept:: @ 824480C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Accept:: .string "Really? I can't believe it!\n" .string "I can't believe you'll let me join you!\l" .string "I… I won't let you down!\p" .string "Um… If it's really okay, I'll go register\n" .string "right this instant!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Reject:: @ 82448A7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice4Reject:: .string "Oh…\n" .string "I didn't think I was good enough…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Intro:: @ 82448CD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Intro:: .string "Hi, I'm {STR_VAR_3}.\n" .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Mon1:: @ 82448F5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Mon1:: .string "{STR_VAR_3} told me that it would be\n" .string "good to make this team:\l" .string "one {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Mon2Ask:: @ 8244939 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Mon2Ask:: .string "and one {STR_VAR_2} that knows how\n" .string "to use {STR_VAR_1}.\p" .string "Not bad, huh?\n" .string "Want me to team up with you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Accept:: @ 8244989 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Accept:: .string "Okay, glad to join you!\n" .string "I hope you won't mess things up for me!\l" .string "I'll do my registration now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Reject:: @ 82449E6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice5Reject:: .string "Huh? Why did you turn me down?\n" .string "You're no judge of character!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Intro:: @ 8244A23 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Intro:: .string "I'm {STR_VAR_3} and I'm a TRIATHLETE.\n" .string "I'm busy every day what with jogging,\l" .string "training, and rapping.\p" .string "I also happen to be {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Mon1:: @ 8244AA9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Mon1:: .string "This is what {STR_VAR_3} recommended.\n" .string "One {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Mon2Ask:: @ 8244AD6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Mon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2}.\p" .string "I put a lot of effort into raising\n" @@ -484,113 +484,113 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Mon2Ask:: @ 8244AD6 .string "Let's form a tag team\n" .string "and give it a go!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Accept:: @ 8244B52 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Accept:: .string "Thanks, that's the spirit!\n" .string "Hang tight while I go register, okay?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Reject:: @ 8244B93 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice6Reject:: .string "I took time from my busy schedule\n" .string "to be here! Give me a break!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Intro:: @ 8244BD2 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Intro:: .string "Hi!\n" .string "How's it going?\p" .string "I'm {STR_VAR_3}, {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice. Glad to meet you!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Mon1:: @ 8244C18 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Mon1:: .string "Listen, listen! You have to hear about\n" .string "the POKéMON {STR_VAR_3} recommended.\l" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Mon2Ask:: @ 8244C6E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\n" .string "Of course I raised them superbly!\p" .string "So, want to team up?\n" .string "I'm sure it'll be a great combo!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Accept:: @ 8244CD6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Accept:: .string "Yay, I think this will be fun!\n" .string "I'll go register!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Reject:: @ 8244D07 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice7Reject:: .string "Oh, you're mean!\n" .string "I come recommended, you know.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Intro:: @ 8244D36 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Intro:: .string "Please let me introduce myself.\n" .string "I am {STR_VAR_3}.\p" .string "I serve as {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Mon1:: @ 8244D82 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Mon1:: .string "I sought the sage advice of\n" .string "{STR_VAR_3} and raised my team\l" .string "of one {STR_VAR_2} with {STR_VAR_1}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Mon2Ask:: @ 8244DC6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Mon2Ask:: .string "and one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Please agree to a tag team with me!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Accept:: @ 8244DFE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Accept:: .string "Oh… I'm delighted!\n" .string "I promise to give you my best!\p" .string "Of course I will register us!\n" .string "Please wait!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Reject:: @ 8244E5B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice8Reject:: .string "I had been hoping to join you,\n" .string "{PLAYER}…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Intro:: @ 8244E7E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Intro:: .string "Eek! You spoke to me!\n" .string "I… I'm overjoyed!\p" .string "I'm {STR_VAR_3}! I'm {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Mon1:: @ 8244ECA +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Mon1:: .string "On {STR_VAR_3}'s advice, I trained\n" .string "one {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Mon2Ask:: @ 8244EF4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Mon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2}.\p" .string "Please, can you grant me my wish?\n" .string "I want to be your tag-team partner!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Accept:: @ 8244F4F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Accept:: .string "Eek! I… I feel giddy!\n" .string "Thank you so much!\l" .string "I'll go register us right away!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Reject:: @ 8244F98 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice9Reject:: .string "Waaah! Don't you feel any pity?\n" .string "But that makes you cooler…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Intro:: @ 8244FD3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Intro:: .string "Yeehaw! I'm {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice!\p" .string "{STR_VAR_3}'s my name, hello, hello!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Mon1:: @ 8245013 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Mon1:: .string "My mentor {STR_VAR_3} recommended\n" .string "one {STR_VAR_1}-master {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Mon2Ask:: @ 824503D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Mon2Ask:: .string "and one {STR_VAR_1}-master\n" .string "{STR_VAR_2}.\p" .string "Good stuff, huh?\n" .string "You'll partner with me, won't you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Accept:: @ 8245087 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Accept:: .string "Okay, excellent!\n" .string "I'll get the registration done quickly!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Reject:: @ 82450C0 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice10Reject:: .string "Gwaaah!\n" .string "You're a calculating one, {PLAYER}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Intro:: @ 82450E6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Intro:: .string "Hey! There's big trouble! This is\n" .string "the BATTLE TOWER's last day!\p" .string "… … … … … …\n" @@ -599,29 +599,29 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Intro:: @ 82450E6 .string "I'm {STR_VAR_1}'s 1,000th apprentice!\l" .string "Actually, I'm no. {STR_VAR_2}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Mon1:: @ 8245196 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Mon1:: .string "{STR_VAR_3} gave me some advice.\n" .string "{STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Mon2Ask:: @ 82451BD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Mon2Ask:: .string "{STR_VAR_2} with {STR_VAR_1}.\n" .string "I've got ten of each kind!\l" .string "Actually, just one of each!\p" .string "How about it?\n" .string "Want to try tag battles with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Accept:: @ 824522F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Accept:: .string "Yippee!\n" .string "I'll give you a POKéMON as my thanks!\p" .string "Just joking! But I will really go do\n" .string "the registration, okay?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Reject:: @ 824529A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice11Reject:: .string "Oh, that's so cold! I'll have to wreck\n" .string "the BATTLE TOWER for that!\p" .string "Of course I won't!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Intro:: @ 82452EF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Intro:: .string "Hey, there, I'm rockin' and a-rollin'!\n" .string "POKéMON, I be controllin'!\p" .string "I'm {STR_VAR_3} the rappin' SAILOR.\n" @@ -629,36 +629,36 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Intro:: @ 82452EF .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "Me, you shouldn't be quick to dismiss!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Mon1:: @ 82453B4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Mon1:: .string "With the advice of {STR_VAR_3} I did\n" .string "abide, put together my team of pride!\l" .string "One {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Mon2Ask:: @ 8245406 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Mon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2}!\p" .string "Our meeting we should commemorate,\n" .string "with a tag-team victory to celebrate!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Accept:: @ 8245464 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Accept:: .string "Hey, hey, I like your style!\n" .string "Our registration, I will go file!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Reject:: @ 82454A3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice12Reject:: .string "Oh, hey, {PLAYER}, now that's cold!\n" .string "If I may be so bold!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Intro:: @ 82454D6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Intro:: .string "Yippee-yahoo!\n" .string "Oh, don't run! I was just having fun!\p" .string "Howdy! I'm {STR_VAR_3}!\n" .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Mon1:: @ 8245535 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Mon1:: .string "{STR_VAR_3} told me what to do.\n" .string "So one {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Mon2Ask:: @ 824555F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Mon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2}, I did choose.\p" .string "So, what do you say?\n" @@ -666,29 +666,29 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Mon2Ask:: @ 824555F .string "Please, I'm begging you!\n" .string "Let me join you, don't leave me blue!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Accept:: @ 82455EC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Accept:: .string "Yeahah! Luck is with me!\n" .string "It sure makes me happy!\p" .string "Before we go join the fray,\n" .string "I'll go register right away!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Reject:: @ 8245656 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice13Reject:: .string "You're turning me down?\n" .string "{PLAYER}, you're making me frown!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Intro:: @ 824568A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Intro:: .string "Cough!\p" .string "Oh, sorry, I have a cold.\n" .string "My POKéMON are fine, though.\p" .string "My name's {STR_VAR_3}, {STR_VAR_1}'s\n" .string "no. {STR_VAR_2} apprentice. Cough!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Mon1:: @ 82456F5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Mon1:: .string "I took {STR_VAR_3}'s advice to heart\n" .string "and put together my team of\l" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Mon2Ask:: @ 8245740 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "I trained them every day,\n" .string "even in wind and rain.\p" @@ -697,1115 +697,1115 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Mon2Ask:: @ 8245740 .string "That's what I'm about.\n" .string "Want to be my tag partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Accept:: @ 82457D9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Accept:: .string "Thanks, I appreciate this!\n" .string "Cough, cough!\l" .string "Hang on while I go register.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Reject:: @ 824581F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice14Reject:: .string "Oh, you won't?\n" .string "{PLAYER}, I think we'd make a good pair.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Intro:: @ 8245851 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Intro:: .string "Oh, hello!\n" .string "This is nerve-racking.\p" .string "I'm {STR_VAR_3}.\n" .string "I'm the no. {STR_VAR_2} apprentice of {STR_VAR_1}.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Mon1:: @ 824589C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Mon1:: .string "{STR_VAR_3} said this team'll be good--\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Mon2Ask:: @ 82458CE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Mon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "I'm feeling self-conscious about this,\n" .string "but will you let me join you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Accept:: @ 8245923 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Accept:: .string "Oh, gee, thank you!\n" .string "I feel bashful, but I'll do my best!\p" .string "I'll go get the registration done.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Reject:: @ 824597F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice15Reject:: .string "Oh, please don't say no!\n" .string "I feel self-conscious enough already…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Intro:: @ 82459BE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Intro:: .string "I am {STR_VAR_3}, and that's no lie.\n" .string "I am {STR_VAR_1}'s no. {STR_VAR_2} apprentice.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Mon1:: @ 82459F7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Mon1:: .string "{STR_VAR_3} recommended my team.\p" .string "Since the advice sounded sincere,\n" .string "I decided to bring with me\l" .string "my {STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Mon2Ask:: @ 8245A5F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Mon2Ask:: .string "my {STR_VAR_1}-using {STR_VAR_2}.\p" .string "If possible, I would like you to accept\n" .string "me as your tag-team partner.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Accept:: @ 8245AB4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Accept:: .string "You really will accept me?\n" .string "It would be too terrible otherwise.\p" .string "But since you've agreed, this is fine.\n" .string "I shall go register the both of us.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Reject:: @ 8245B3E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_Apprentice16Reject:: .string "Hm? Now why would you refuse?\n" .string "Is this your idea of a joke?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassIntro:: @ 8245B79 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassIntro:: .string "I'm {STR_VAR_1}, and I'm a LASS!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassMon1:: @ 8245B91 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassMon1:: .string "What I have are one {STR_VAR_2}\n" .string "that uses {STR_VAR_1} and one$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassMon2Ask:: @ 8245BBD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassMon2Ask:: .string "{STR_VAR_2} that uses {STR_VAR_1}.\n" .string "Those are what I have with me.\p" .string "Will you be my partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassAccept:: @ 8245C05 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassAccept:: .string "Thank you!\n" .string "I'll go do the registration!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassReject:: @ 8245C2D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LassReject:: .string "You don't want to be my partner?\n" .string "You'll regret it later!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterIntro:: @ 8245C66 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterIntro:: .string "Hello!\p" .string "I'm YOUNGSTER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterMon1:: @ 8245C7F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterMon1:: .string "Want to know what I have?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterMon2Ask:: @ 8245CAC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "You'll be my tag-team partner,\n" .string "won't you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterAccept:: @ 8245CE6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterAccept:: .string "Yay!\n" .string "I'll go and register, okay?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterReject:: @ 8245D07 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_YoungsterReject:: .string "Aww! If you'd form a tag team with\n" .string "my POKéMON, we'd be unstoppable!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerIntro:: @ 8245D4B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerIntro:: .string "Yahoo!\n" .string "I'm HIKER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerMon1:: @ 8245D60 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerMon1:: .string "Know what I have with me?\n" .string "My {STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerMon2Ask:: @ 8245D8D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerMon2Ask:: .string "my {STR_VAR_1}-using {STR_VAR_2}!\p" .string "Sounds good, eh?\n" .string "Want to form a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerAccept:: @ 8245DC7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerAccept:: .string "Yahoo!\n" .string "I'll go do the registering, then.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerReject:: @ 8245DF0 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HikerReject:: .string "I would've liked to battle with you\n" .string "at my side.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyIntro:: @ 8245E20 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyIntro:: .string "Hello!\n" .string "I'm {STR_VAR_1}, and I'm a BEAUTY!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyMon1:: @ 8245E41 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyMon1:: .string "Do you know what I've been raising?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyMon2Ask:: @ 8245E78 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "What do you think?\n" .string "Want to make a tag team together?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyAccept:: @ 8245EBD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyAccept:: .string "Wonderful!\n" .string "I'll get the registration done now!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyReject:: @ 8245EEC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BeautyReject:: .string "How disappointing!\p" .string "We two together--we would've been\n" .string "the best!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanIntro:: @ 8245F2B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanIntro:: .string "Yo!\p" .string "You know who I am?\n" .string "I'm {STR_VAR_1} the FISHERMAN!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanMon1:: @ 8245F58 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanMon1:: .string "I've got with me a team of one\n" .string "{STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanMon2Ask:: @ 8245F87 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanMon2Ask:: .string "one {STR_VAR_1}-using {STR_VAR_2}.\p" .string "So, how about it?\n" .string "Will you battle at my side?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanAccept:: @ 8245FC6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanAccept:: .string "Good, good!\n" .string "Leave it up to me!\p" .string "I'll go and register us now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanReject:: @ 8246002 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_FishermanReject:: .string "We matched up perfectly, too…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyIntro:: @ 8246020 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyIntro:: .string "Glad to make your acquaintance.\n" .string "I am {STR_VAR_1}, a LADY.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyMon1:: @ 8246051 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyMon1:: .string "I am accompanied by a team of\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyMon2Ask:: @ 8246082 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "I hope I meet your approval.\n" .string "For I wish to have you as my partner.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyAccept:: @ 82460D5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyAccept:: .string "I thank you sincerely.\n" .string "I shall handle the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyReject:: @ 824610D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_LadyReject:: .string "I'm sure that you will regret not\n" .string "having me as your partner.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFIntro:: @ 824614A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFIntro:: .string "I'm TRIATHLETE {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFMon1:: @ 824615D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFMon1:: .string "What I have…\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFMon2Ask:: @ 824617D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\n" .string "That's my pair!\p" .string "Please?\n" .string "Will you form a tag team with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFAccept:: @ 82461C7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFAccept:: .string "Gee, thanks!\n" .string "I'll go register at the counter.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFReject:: @ 82461F5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteFReject:: .string "We two together, we would've been\n" .string "tough for certain!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherIntro:: @ 824622A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherIntro:: .string "Hiya!\n" .string "I'm BUG CATCHER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherMon1:: @ 8246244 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherMon1:: .string "Check out what I have!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherMon2Ask:: @ 824626E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "So, listen!\n" .string "Do you want to form a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherAccept:: @ 82462AA +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherAccept:: .string "Gotcha!\p" .string "I'll go do the registration stuff\n" .string "at the counter.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherReject:: @ 82462E4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugCatcherReject:: .string "Aww, my POKéMON are awesome.\n" .string "I hope you won't regret this!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMIntro:: @ 824631F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMIntro:: .string "Good day!\n" .string "I'm SCHOOL KID {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMMon1:: @ 824633C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMMon1:: .string "What I've been raising are one\n" .string "{STR_VAR_2} that uses {STR_VAR_1}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMMon2Ask:: @ 824636B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMMon2Ask:: .string "and one {STR_VAR_2} that uses\n" .string "{STR_VAR_1}.\p" .string "Not too bad, don't you think?\n" .string "Would you care to form a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMAccept:: @ 82463C5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMAccept:: .string "Thank you very much!\n" .string "I'll get done with the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMReject:: @ 82463FF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidMReject:: .string "That's too bad…\p" .string "I was hoping that I could learn\n" .string "from you as your partner…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyIntro:: @ 8246449 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyIntro:: .string "Yo! Let me tell you who I am!\n" .string "I'm RICH BOY {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyMon1:: @ 8246478 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyMon1:: .string "Guess what I got!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyMon2Ask:: @ 824649D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "I'm willing to offer you the chance\n" .string "to be in a tag team with me.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyAccept:: @ 82464EE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyAccept:: .string "Smart move!\p" .string "I'll finish up the registration\n" .string "process quick!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyReject:: @ 8246529 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RichBoyReject:: .string "You'd turn me of all people down?\n" .string "You'll regret that decision for sure!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltIntro:: @ 8246571 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltIntro:: .string "Hiyah!\n" .string "I am BLACK BELT {STR_VAR_1}.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltMon1:: @ 824658C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltMon1:: .string "As my companions, I have\n" .string "one {STR_VAR_2} using {STR_VAR_1}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltMon2Ask:: @ 82465B5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltMon2Ask:: .string "and one {STR_VAR_2} using\n" .string "{STR_VAR_1}.\p" .string "Please, grant me my wish!\n" .string "Allow me to be your tag partner!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltAccept:: @ 8246605 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltAccept:: .string "Hiyah!\n" .string "I will go register forthwith!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltReject:: @ 824662A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BlackBeltReject:: .string "I see… I hope for an opportunity\n" .string "the next time we meet…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFIntro:: @ 8246662 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFIntro:: .string "Hi, there!\n" .string "I'm {STR_VAR_1}, and I'm a TUBER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFMon1:: @ 8246686 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFMon1:: .string "I'll tell you what I have.\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFMon2Ask:: @ 82466B4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\n" .string "May I please be on your tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFAccept:: @ 82466E6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFAccept:: .string "Thank you!\n" .string "I'll go register us now!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFReject:: @ 824670A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberFReject:: .string "If we'd become partners, we could\n" .string "have been so strong!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacIntro:: @ 8246741 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacIntro:: .string "Greetings…\n" .string "I am HEX MANIAC {STR_VAR_1}…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacMon1:: @ 8246760 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacMon1:: .string "I bear with me one {STR_VAR_1}-using\n" .string "{STR_VAR_2} together with one$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacMon2Ask:: @ 8246791 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacMon2Ask:: .string "{STR_VAR_1}-using {STR_VAR_2}…\p" .string "I beseech you…\n" .string "Join me in a tag team…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacAccept:: @ 82467C4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacAccept:: .string "I thank you…\n" .string "I shall register us…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacReject:: @ 82467E6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_HexManiacReject:: .string "I so longed to join you…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMIntro:: @ 82467FF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMIntro:: .string "How do you do? I'm {STR_VAR_1},\n" .string "and I'm a POKéMON BREEDER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMMon1:: @ 8246831 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMMon1:: .string "I'm raising a couple good ones!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMMon2Ask:: @ 8246864 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "How about it?\n" .string "Feel like making a tag team with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMAccept:: @ 82468A7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMAccept:: .string "Thank you kindly!\p" .string "I'll go take care of the registration\n" .string "stuff, so you wait right here!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMReject:: @ 82468FE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederMReject:: .string "I was looking forward to being\n" .string "your partner…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFIntro:: @ 824692B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFIntro:: .string "Well, hello!\n" .string "I'm TRIATHLETE {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFMon1:: @ 824694B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFMon1:: .string "Want to know what I run with?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFMon2Ask:: @ 824697C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Well?\n" .string "Want to be in a tag team with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFAccept:: @ 82469B4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFAccept:: .string "Good going!\p" .string "I'll be quick and get the registration\n" .string "all done!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFReject:: @ 82469F1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteFReject:: .string "You and me, we would've been tops.\n" .string "It's too bad…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMIntro:: @ 8246A22 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMIntro:: .string "Hey, there! My name's {STR_VAR_1}!\n" .string "I'm a TRIATHLETE!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMMon1:: @ 8246A4E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMMon1:: .string "I go on runs with my durable team--\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMMon2Ask:: @ 8246A85 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Not too shabby, huh?\n" .string "We should be in a tag team together!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMAccept:: @ 8246ACF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMAccept:: .string "All right!\n" .string "I'll go register in a flash!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMReject:: @ 8246AF7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RunningTriathleteMReject:: .string "I really wanted to battle as your\n" .string "tag-team partner…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlIntro:: @ 8246B2B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlIntro:: .string "I'm BATTLE GIRL {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlMon1:: @ 8246B3F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlMon1:: .string "I've been toughening up one\n" .string "{STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlMon2Ask:: @ 8246B6B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlMon2Ask:: .string "one {STR_VAR_1}-using {STR_VAR_2}!\p" .string "Do you like that combo?\n" .string "How about you and me join up?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlAccept:: @ 8246BB2 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlAccept:: .string "Why, thanks!\p" .string "I'll get the registration done\n" .string "right now!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlReject:: @ 8246BE9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BattleGirlReject:: .string "With you, I thought we could form\n" .string "the ultimate tag team…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMIntro:: @ 8246C22 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMIntro:: .string "I'm TRIATHLETE {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMMon1:: @ 8246C35 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMMon1:: .string "I've been running with one {STR_VAR_2}\n" .string "that knows how to use {STR_VAR_1}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMMon2Ask:: @ 8246C6C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMMon2Ask:: .string "and one {STR_VAR_2} with {STR_VAR_1}!\p" .string "We could be in a tag team.\n" .string "Wouldn't that be great?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMAccept:: @ 8246CB3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMAccept:: .string "Thank you!\p" .string "I'll go register us, and that's\n" .string "right now!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMReject:: @ 8246CE9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CyclingTriathleteMReject:: .string "Aww, that's too bad. We would've been\n" .string "the toughest tag team around!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMIntro:: @ 8246D2D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMIntro:: .string "Me?\n" .string "I'm TUBER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMMon1:: @ 8246D3F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMMon1:: .string "What do I have with me?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMMon2Ask:: @ 8246D6A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Hey?\n" .string "You'll team up with me, right?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMAccept:: @ 8246D9E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMAccept:: .string "Okay!\p" .string "I'll go register!\n" .string "Let's be excellent together!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMReject:: @ 8246DD3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_TuberMReject:: .string "My POKéMON are tough for sure…\n" .string "It's too bad you don't want to team up.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristIntro:: @ 8246E1A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristIntro:: .string "Yay-hey!\n" .string "Call me GUITARIST {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristMon1:: @ 8246E39 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristMon1:: .string "Check out my entourage!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristMon2Ask:: @ 8246E64 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Yay-hey! Pretty wild, huh?\n" .string "We'll have to do a duet in a tag team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristAccept:: @ 8246EB6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristAccept:: .string "Yay-hey! Right on!\n" .string "I'll do that registration stuff now!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristReject:: @ 8246EEE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GuitaristReject:: .string "My POKéMON rock hard!\n" .string "You'll be sorry, I tell you!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanIntro:: @ 8246F21 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanIntro:: .string "Pleased to meet you.\n" .string "I am {STR_VAR_1}, a GENTLEMAN.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanMon1:: @ 8246F4C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanMon1:: .string "I am accompanied by my trusted\n" .string "{STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanMon2Ask:: @ 8246F7B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanMon2Ask:: .string "one {STR_VAR_1}-using {STR_VAR_2}.\p" .string "May I ask you to join me in a tag-team\n" .string "partnership arrangement?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanAccept:: @ 8246FCC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanAccept:: .string "Ah, I thank you for your trust.\n" .string "I shall be done with the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanReject:: @ 8247013 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_GentlemanReject:: .string "That is most unfortunate…\p" .string "I shall look forward to the next\n" .string "opportunity…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMIntro:: @ 824705B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMIntro:: .string "Hello, I'm {STR_VAR_1},\n" .string "and I'm a POKéFAN.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMMon1:: @ 824707D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMMon1:: .string "I have with me now one {STR_VAR_2}\n" .string "that knows the move {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMMon2Ask:: @ 82470B2 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Do you like what you see?\n" .string "Why don't you be my tag partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMAccept:: @ 82470FD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMAccept:: .string "Thank you!\n" .string "I'll look after the registration!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMReject:: @ 824712A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanMReject:: .string "My POKéMON are top grade…\n" .string "It's too bad you can't appreciate that.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMIntro:: @ 824716C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMIntro:: .string "Hm!\n" .string "I am {STR_VAR_1}, and an EXPERT am I!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMMon1:: @ 824718D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMMon1:: .string "The POKéMON that I've toughened up are\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMMon2Ask:: @ 82471C7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "What say you to a tag team with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMAccept:: @ 82471FB +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMAccept:: .string "Hm!\n" .string "I shall register us right away!\l" .string "Let us both do our best!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMReject:: @ 8247238 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertMReject:: .string "I will hope that your choice is\n" .string "indeed correct…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFIntro:: @ 8247268 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFIntro:: .string "Hello, hello.\n" .string "I'm {STR_VAR_1}, and I'm an EXPERT.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFMon1:: @ 8247291 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFMon1:: .string "I've raised my POKéMON thoroughly.\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFMon2Ask:: @ 82472C7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}--\n" .string "they're what I have.\p" .string "Wouldn't you like to team up with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFAccept:: @ 8247313 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFAccept:: .string "Good, good.\n" .string "I'll see to the registration right away.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFReject:: @ 8247348 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ExpertFReject:: .string "Perhaps we can form a team the next\n" .string "time we meet.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerIntro:: @ 824737A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerIntro:: .string "I'm DRAGON TAMER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerMon1:: @ 824738F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerMon1:: .string "The team I've been toughening up is\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerMon2Ask:: @ 82473C6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "How about it?\n" .string "Want to be my partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerAccept:: @ 82473FB +BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerAccept:: .string "Okay, I'll give it my best!\n" .string "I'll go register now, all right?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerReject:: @ 8247438 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_DragonTamerReject:: .string "You're not going to find many tougher\n" .string "partners than me!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperIntro:: @ 8247470 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperIntro:: .string "I'm BIRD KEEPER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon1:: @ 8247484 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon1:: .string "What POKéMON do I have?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon2Ask:: @ 82474AF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Don't you think we'd make a decent\n" .string "tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperAccept:: @ 82474EC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperAccept:: .string "Great, thanks!\n" .string "I'll look after the registration!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperReject:: @ 824751D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperReject:: .string "My POKéMON and I are strong.\n" .string "What a letdown.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyIntro:: @ 824754A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyIntro:: .string "I'm NINJA BOY {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon1:: @ 824755C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon1:: .string "My POKéMON team consists of one\n" .string "{STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon2Ask:: @ 824758B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Let's be in a tag team together!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyAccept:: @ 82475BC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyAccept:: .string "Yay!\n" .string "Let me go register!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyReject:: @ 82475D5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyReject:: .string "You'll regret not having my tough\n" .string "POKéMON on your side!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyIntro:: @ 824760D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyIntro:: .string "Hello!\n" .string "I'm PARASOL LADY {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyMon1:: @ 8247629 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyMon1:: .string "Escorting me now are my {STR_VAR_2}\n" .string "that uses {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyMon2Ask:: @ 8247655 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyMon2Ask:: .string "one {STR_VAR_2} that uses\n" .string "{STR_VAR_1}.\p" .string "Aren't they nice?\n" .string "Care to join us in a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyAccept:: @ 824769B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyAccept:: .string "Thanks a bunch!\p" .string "I'll go register at the counter.\n" .string "Let's not disappoint each other!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyReject:: @ 82476ED +BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyReject:: .string "My POKéMON are tremendously strong.\n" .string "How disappointing…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacIntro:: @ 8247724 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacIntro:: .string "Hello.\n" .string "I'm {STR_VAR_1}, and I'm a BUG MANIAC!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon1:: @ 8247749 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon1:: .string "I have found my POKéMON, yes.\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon2Ask:: @ 824777A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}--\n" .string "they are what I found.\p" .string "Could I interest you in forming\n" .string "a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacAccept:: @ 82477CE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacAccept:: .string "Okay!\n" .string "Understood!\p" .string "I won't be long with the registration!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacReject:: @ 8247807 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacReject:: .string "With the POKéMON I found, we wouldn't\n" .string "have lost…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorIntro:: @ 8247838 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorIntro:: .string "Ahoy, there!\n" .string "I'm SAILOR {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon1:: @ 8247854 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon1:: .string "Let me show you my pride and joy!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon2Ask:: @ 8247889 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Of course you're not going to turn\n" .string "me down. We will team up, right?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorAccept:: @ 82478DD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorAccept:: .string "I didn't expect any less!\n" .string "I'll go register now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorReject:: @ 824790D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorReject:: .string "We would've stormed through\n" .string "the opposition! Too bad!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorIntro:: @ 8247942 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorIntro:: .string "Hi, I'm {STR_VAR_1}.\n" .string "I'm a COLLECTOR.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorMon1:: @ 824795F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorMon1:: .string "The jewels in my collection are\n" .string "my {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorMon2Ask:: @ 8247991 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Swell, huh?\n" .string "We should be in a team together.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorAccept:: @ 82479CE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorAccept:: .string "Oh, yeah!\p" .string "Well, let's not waste any time.\n" .string "I'll go register the two of us.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorReject:: @ 8247A18 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorReject:: .string "Well, that's upsetting.\n" .string "You don't appreciate my POKéMON.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMIntro:: @ 8247A51 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMIntro:: .string "Howdy, I'm {STR_VAR_1}.\n" .string "I'm a POKéMON RANGER.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon1:: @ 8247A76 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon1:: .string "Keeping me company are one\n" .string "{STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon2Ask:: @ 8247AA1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Don't you think we'd make an impressive\n" .string "tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMAccept:: @ 8247AE3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMAccept:: .string "That's super!\n" .string "I'll deal with the registration now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMReject:: @ 8247B16 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMReject:: .string "Next time, choose my POKéMON,\n" .string "will you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFIntro:: @ 8247B3E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFIntro:: .string "My name's {STR_VAR_1}.\n" .string "I'm a POKéMON RANGER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon1:: @ 8247B62 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon1:: .string "Let me tell you about my team. I have\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon2Ask:: @ 8247B9B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "How would you like to form a tag team\n" .string "with my little posse?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFAccept:: @ 8247BE7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFAccept:: .string "We'll be at our best!\n" .string "I'll get the registration done quick!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFReject:: @ 8247C23 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFReject:: .string "I hope you'll choose my POKéMON\n" .string "next time.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyIntro:: @ 8247C4E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyIntro:: .string "Pleased to meet you. I'm {STR_VAR_1}.\n" .string "I consider myself an AROMA LADY.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyMon1:: @ 8247C8C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyMon1:: .string "I travel with one {STR_VAR_2}\n" .string "that uses {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyMon2Ask:: @ 8247CB2 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyMon2Ask:: .string "one {STR_VAR_2} that uses\n" .string "{STR_VAR_1}.\p" .string "I hope they strike your fancy.\n" .string "Would you care to be my partner?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyAccept:: @ 8247D07 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyAccept:: .string "I'm honored by your acceptance.\n" .string "I will go register right this instant.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyReject:: @ 8247D4E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyReject:: .string "It would be wonderful if we could form\n" .string "a tag team the next time we meet.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacIntro:: @ 8247D97 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacIntro:: .string "Want to know who I am?\n" .string "I'm {STR_VAR_1}, the RUIN MANIAC!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon1:: @ 8247DC7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon1:: .string "The POKéMON that I have with me are\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon2Ask:: @ 8247DFE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Intriguing, eh?\n" .string "How about you and I partner up?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacAccept:: @ 8247E3E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacAccept:: .string "That's a sound decision!\n" .string "I'll go do the registration paperwork.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacReject:: @ 8247E7E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacReject:: .string "Hmm…\n" .string "I think my POKéMON are tough…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMIntro:: @ 8247EA1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMIntro:: .string "I'm COOLTRAINER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon1:: @ 8247EB5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon1:: .string "The POKéMON I have right now are one\n" .string "{STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon2Ask:: @ 8247EE9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\n" .string "Cool, huh?\p" .string "Don't you think it'd be pretty cool\n" .string "if we made a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMAccept:: @ 8247F3F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMAccept:: .string "Cool!\n" .string "I'll go do the registration in a flash!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMReject:: @ 8247F6D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMReject:: .string "I thought that we'd make just\n" .string "the greatest team ever.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFIntro:: @ 8247FA3 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFIntro:: .string "I'm COOLTRAINER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon1:: @ 8247FB7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon1:: .string "The team I've been raising has one\n" .string "{STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon2Ask:: @ 8247FE9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Does that sound okay?\n" .string "How about we become tag partners?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFAccept:: @ 8248031 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFAccept:: .string "Sounds A-OK!\n" .string "I'd better do the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFReject:: @ 824805E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFReject:: .string "I was thinking how we would be\n" .string "one tough team…$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacIntro:: @ 824808D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacIntro:: .string "Heyo!\n" .string "I'm {STR_VAR_1}, the POKéMANIAC!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon1:: @ 82480AB +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon1:: .string "What does a guy like me have?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon2Ask:: @ 82480DC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1},\n" .string "that's what!\p" .string "Let's do it!\n" .string "We'll stomp around as a tag team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacAccept:: @ 8248128 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacAccept:: .string "Good call!\n" .string "I'll register the both of us!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacReject:: @ 8248151 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacReject:: .string "My POKéMON are brutal!\n" .string "It's not my fault if you regret this!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerIntro:: @ 824818E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerIntro:: .string "Yo, there!\n" .string "I'm KINDLER {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerMon1:: @ 82481A9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerMon1:: .string "You know what my training cooked up?\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerMon2Ask:: @ 82481E1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Well, what do you say?\n" .string "Want to form a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerAccept:: @ 8248221 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerAccept:: .string "All right!\n" .string "I'll get on with the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerReject:: @ 824824F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerReject:: .string "Promise you'll partner up with me\n" .string "the next time we run into each other.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperIntro:: @ 8248297 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperIntro:: .string "I'm {STR_VAR_1}, and I'm a CAMPER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon1:: @ 82482B1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon1:: .string "I've been raising one {STR_VAR_1}-\n" .string "using {STR_VAR_2} and one$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon2Ask:: @ 82482DC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon2Ask:: .string "{STR_VAR_1}-using {STR_VAR_2}.\p" .string "Do you think it'd be fun to team up?\n" .string "I bet it would be!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperAccept:: @ 8248321 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperAccept:: .string "Yeah!\n" .string "Off I go to register!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperReject:: @ 824833D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperReject:: .string "Next time, okay?\n" .string "I want to be on your team.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerIntro:: @ 8248369 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerIntro:: .string "Hello!\n" .string "I'm {STR_VAR_1}, and I'm a PICNICKER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon1:: @ 824838D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon1:: .string "The POKéMON I've been taking are\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon2Ask:: @ 82483C1 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Are you interested in joining me\n" .string "on a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerAccept:: @ 8248401 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerAccept:: .string "Why, thank you!\n" .string "I will do the registration now.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerReject:: @ 8248431 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerReject:: .string "It would be nice if I could join you\n" .string "some other time.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMIntro:: @ 8248467 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMIntro:: .string "I'm PSYCHIC {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon1:: @ 8248477 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon1:: .string "The twosome I've been raising are\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon2Ask:: @ 82484AC +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Would you like to form a tag team\n" .string "with me?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMAccept:: @ 82484E7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMAccept:: .string "Sure thing!\n" .string "I'll take care of the registration!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMReject:: @ 8248517 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMReject:: .string "If we meet again, that's when I'd like\n" .string "to team up with you.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFIntro:: @ 8248553 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFIntro:: .string "I'm {STR_VAR_1}.\n" .string "I'm a PSYCHIC.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon1:: @ 824856A +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon1:: .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon2Ask:: @ 824857D +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}--\n" .string "they're my disciples.\p" .string "Doesn't the idea of forming a tag-team\n" .string "partnership intrigue you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFAccept:: @ 82485E5 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFAccept:: .string "Thank you.\n" .string "I'll go deal with the registration.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFReject:: @ 8248614 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFReject:: .string "I hope there will be another chance\n" .string "to forge an alliance.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFIntro:: @ 824864E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFIntro:: .string "I'm SCHOOL KID {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon1:: @ 8248661 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon1:: .string "One {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon2Ask:: @ 8248671 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2} are my POKéMON pair.\p" .string "May I please be your partner on\n" .string "a tag team?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFAccept:: @ 82486C6 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFAccept:: .string "Ooh, thank you!\n" .string "I'll register at the counter right away!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFReject:: @ 82486FF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFReject:: .string "Please?\n" .string "May I join you the next time?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFIntro:: @ 8248725 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFIntro:: .string "Hiya! The name's {STR_VAR_1}!\n" .string "I'm a POKéMON BREEDER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFMon1:: @ 8248751 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFMon1:: .string "The POKéMON I've raised are one\n" .string "{STR_VAR_1}-using {STR_VAR_2} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFMon2Ask:: @ 8248781 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFMon2Ask:: .string "one {STR_VAR_1}-using {STR_VAR_2}.\p" .string "Sound interesting?\n" .string "How about we form a tag team, then?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFAccept:: @ 82487C9 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFAccept:: .string "All righty!\n" .string "You leave the registration to me!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFReject:: @ 82487F7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFReject:: .string "You have to team up with me next time,\n" .string "all right?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFIntro:: @ 8248829 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFIntro:: .string "I'm {STR_VAR_1}, and I'm proud to say\n" .string "that I am a POKéFAN.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon1:: @ 824885B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon1:: .string "The darling POKéMON I've raised are\n" .string "one {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon2Ask:: @ 8248892 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}.\p" .string "Aren't they just the cutest?\n" .string "We ought to make a team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFAccept:: @ 82488D8 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFAccept:: .string "Thank you, dear!\n" .string "I'll be on my way to register!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFReject:: @ 8248908 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFReject:: .string "My darling POKéMON are the best,\n" .string "I'll have you know. How annoying!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFIntro:: @ 824894B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFIntro:: .string "Hi, I'm SWIMMER {STR_VAR_1}.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon1:: @ 824895F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon1:: .string "One {STR_VAR_1}-using {STR_VAR_2}$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon2Ask:: @ 824896F +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon2Ask:: .string "and one {STR_VAR_1}-using\n" .string "{STR_VAR_2} are what I've trained.\p" .string "You and me, let's make a tag team.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFAccept:: @ 82489BD +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFAccept:: .string "That's cool!\n" .string "I'll register the two of us.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFReject:: @ 82489E7 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFReject:: .string "If we meet again, you owe me\n" .string "a tag team!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMIntro:: @ 8248A10 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMIntro:: .string "What's happening?\n" .string "I'm {STR_VAR_1}, and I'm a TRIATHLETE.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon1:: @ 8248A40 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon1:: .string "I got a couple decent POKéMON.\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon2Ask:: @ 8248A72 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "It'd be neat if we made a tag team\n" .string "together, so how about it?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMAccept:: @ 8248AC0 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMAccept:: .string "Right on!\n" .string "You wait while I register, okay?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMReject:: @ 8248AEB +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMReject:: .string "I expect you'll let me join you\n" .string "next time, how's that?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFIntro:: @ 8248B22 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFIntro:: .string "I'm the TRIATHLETE {STR_VAR_1}!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon1:: @ 8248B39 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon1:: .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon2Ask:: @ 8248B4C +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon2Ask:: .string "another {STR_VAR_2} that knows how\n" .string "to use {STR_VAR_1}. That's my pair.\p" .string "What do you think?\n" .string "We'd make a good team, I'd say.$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFAccept:: @ 8248BB4 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFAccept:: .string "I like that answer!\n" .string "I'll get done with registration fast!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFReject:: @ 8248BEE +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFReject:: .string "You'll give me another chance to form\n" .string "a partnership, won't you?$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMIntro:: @ 8248C2E +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMIntro:: .string "Hi, there! Hello!\n" .string "I'm {STR_VAR_1}, and I'm a SWIMMER!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon1:: @ 8248C5B +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon1:: .string "Check out what I've been raising!\n" .string "One {STR_VAR_2} with {STR_VAR_1} and$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon2Ask:: @ 8248C90 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon2Ask:: .string "one {STR_VAR_2} with {STR_VAR_1}!\p" .string "Sweet, huh?\n" .string "It'd be sweet to form a team, too!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMAccept:: @ 8248CCF +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMAccept:: .string "Much obliged!\n" .string "I'll get this registration thing done!$" -BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMReject:: @ 8248D04 +BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMReject:: .string "If we meet again, you have to team up\n" .string "with me. You'll do that, right?$" diff --git a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc index b7dfe19fa017..360b8162cf46 100644 --- a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc +++ b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc @@ -1,18 +1,18 @@ -BattleFrontier_ExchangeServiceCorner_MapScripts:: @ 825F070 +BattleFrontier_ExchangeServiceCorner_MapScripts:: .byte 0 -BattleFrontier_ExchangeServiceCorner_EventScript_ClerkWelcome:: @ 825F071 +BattleFrontier_ExchangeServiceCorner_EventScript_ClerkWelcome:: msgbox BattleFrontier_ExchangeServiceCorner_Text_WelcomePleaseChoosePrize, MSGBOX_DEFAULT special ShowBattlePointsWindow return -BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye:: @ 825F07D +BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ThankYouVisitWithPoints, MSGBOX_DEFAULT special CloseBattlePointsWindow release end -BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize:: @ 825F08A +BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize:: specialvar VAR_TEMP_1, GetFrontierBattlePoints compare VAR_TEMP_1, VAR_0x8008 goto_if_ge BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize @@ -26,7 +26,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize:: @ 825F08A goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem end -BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize:: @ 825F0C9 +BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize:: compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK @@ -34,7 +34,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize:: @ 825F0C9 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem end -BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor:: @ 825F0E5 +BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor:: checkdecorspace VAR_0x8009 compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor @@ -49,13 +49,13 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor:: @ 825F0E5 goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 end -BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor:: @ 825F11D +BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor:: msgbox BattleFrontier_ExchangeServiceCorner_Text_PCIsFull, MSGBOX_DEFAULT special CloseBattlePointsWindow release end -BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem:: @ 825F12A +BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem:: checkitemspace VAR_0x8009, 1 compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_BagFull @@ -70,13 +70,13 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem:: @ 825F12A goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem end -BattleFrontier_ExchangeServiceCorner_EventScript_BagFull:: @ 825F166 +BattleFrontier_ExchangeServiceCorner_EventScript_BagFull:: msgbox BattleFrontier_ExchangeServiceCorner_Text_DontHaveSpaceToHoldIt, MSGBOX_DEFAULT special CloseBattlePointsWindow release end -BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk1:: @ 825F173 +BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk1:: lock faceplayer setvar VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK @@ -84,7 +84,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk1:: @ 825F173 goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 end -BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1:: @ 825F185 +BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1:: setvar VAR_0x8004, SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1 special ShowFrontierExchangeCornerItemIconWindow special ShowScrollableMultichoice @@ -105,7 +105,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1:: @ 825F185 case MULTI_B_PRESSED, BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye end -BattleFrontier_ExchangeServiceCorner_EventScript_KissPoster:: @ 825F21E +BattleFrontier_ExchangeServiceCorner_EventScript_KissPoster:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissPoster, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -114,7 +114,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KissPoster:: @ 825F21E goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_KissCushion:: @ 825F241 +BattleFrontier_ExchangeServiceCorner_EventScript_KissCushion:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissCushion, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -123,7 +123,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KissCushion:: @ 825F241 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_SmoochumDoll:: @ 825F264 +BattleFrontier_ExchangeServiceCorner_EventScript_SmoochumDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmSmoochumDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -132,7 +132,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_SmoochumDoll:: @ 825F264 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_TogepiDoll:: @ 825F287 +BattleFrontier_ExchangeServiceCorner_EventScript_TogepiDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmTogepiDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -141,7 +141,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TogepiDoll:: @ 825F287 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_MeowthDoll:: @ 825F2AA +BattleFrontier_ExchangeServiceCorner_EventScript_MeowthDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmMeowthDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -150,7 +150,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_MeowthDoll:: @ 825F2AA goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_ClefairyDoll:: @ 825F2CD +BattleFrontier_ExchangeServiceCorner_EventScript_ClefairyDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmClefairyDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -159,7 +159,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ClefairyDoll:: @ 825F2CD goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_DittoDoll:: @ 825F2F0 +BattleFrontier_ExchangeServiceCorner_EventScript_DittoDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmDittoDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -168,7 +168,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_DittoDoll:: @ 825F2F0 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_CyndaquilDoll:: @ 825F313 +BattleFrontier_ExchangeServiceCorner_EventScript_CyndaquilDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCyndaquilDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -177,7 +177,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_CyndaquilDoll:: @ 825F313 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_ChikoritaDoll:: @ 825F336 +BattleFrontier_ExchangeServiceCorner_EventScript_ChikoritaDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmChikoritaDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -186,7 +186,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChikoritaDoll:: @ 825F336 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_TotodileDoll:: @ 825F359 +BattleFrontier_ExchangeServiceCorner_EventScript_TotodileDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmTotodileDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 @@ -195,7 +195,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TotodileDoll:: @ 825F359 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk2:: @ 825F37C +BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk2:: lock faceplayer setvar VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK @@ -203,7 +203,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_DecorClerk2:: @ 825F37C goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 end -BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2:: @ 825F38E +BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2:: setvar VAR_0x8004, SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2 special ShowFrontierExchangeCornerItemIconWindow special ShowScrollableMultichoice @@ -219,7 +219,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2:: @ 825F38E case MULTI_B_PRESSED, BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye end -BattleFrontier_ExchangeServiceCorner_EventScript_LaprasDoll:: @ 825F3F0 +BattleFrontier_ExchangeServiceCorner_EventScript_LaprasDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmLaprasDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 @@ -228,7 +228,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_LaprasDoll:: @ 825F3F0 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_SnorlaxDoll:: @ 825F413 +BattleFrontier_ExchangeServiceCorner_EventScript_SnorlaxDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmSnorlaxDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 @@ -237,7 +237,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_SnorlaxDoll:: @ 825F413 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_VenusaurDoll:: @ 825F436 +BattleFrontier_ExchangeServiceCorner_EventScript_VenusaurDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmVenusaurDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 @@ -246,7 +246,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_VenusaurDoll:: @ 825F436 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_CharizardDoll:: @ 825F459 +BattleFrontier_ExchangeServiceCorner_EventScript_CharizardDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCharizardDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 @@ -255,7 +255,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_CharizardDoll:: @ 825F459 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_BlastoiseDoll:: @ 825F47C +BattleFrontier_ExchangeServiceCorner_EventScript_BlastoiseDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmBlastoiseDoll, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 @@ -264,7 +264,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_BlastoiseDoll:: @ 825F47C goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_VitaminClerk:: @ 825F49F +BattleFrontier_ExchangeServiceCorner_EventScript_VitaminClerk:: lock faceplayer setvar VAR_TEMP_2, EXCHANGE_CORNER_VITAMIN_CLERK @@ -272,7 +272,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_VitaminClerk:: @ 825F49F goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin end -BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin:: @ 825F4B1 +BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin:: setvar VAR_0x8004, SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR special ShowFrontierExchangeCornerItemIconWindow special ShowScrollableMultichoice @@ -289,7 +289,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin:: @ 825F4B1 case MULTI_B_PRESSED, BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye end -BattleFrontier_ExchangeServiceCorner_EventScript_Protein:: @ 825F51E +BattleFrontier_ExchangeServiceCorner_EventScript_Protein:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmProtein, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -298,7 +298,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Protein:: @ 825F51E goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Calcium:: @ 825F541 +BattleFrontier_ExchangeServiceCorner_EventScript_Calcium:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCalcium, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -307,7 +307,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Calcium:: @ 825F541 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Iron:: @ 825F564 +BattleFrontier_ExchangeServiceCorner_EventScript_Iron:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmIron, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -316,7 +316,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Iron:: @ 825F564 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Zinc:: @ 825F587 +BattleFrontier_ExchangeServiceCorner_EventScript_Zinc:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmZinc, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -325,7 +325,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Zinc:: @ 825F587 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Carbos:: @ 825F5AA +BattleFrontier_ExchangeServiceCorner_EventScript_Carbos:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCarbos, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -334,7 +334,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Carbos:: @ 825F5AA goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_HPUp:: @ 825F5CD +BattleFrontier_ExchangeServiceCorner_EventScript_HPUp:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmHPUp, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin @@ -343,7 +343,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_HPUp:: @ 825F5CD goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_HoldItemClerk:: @ 825F5F0 +BattleFrontier_ExchangeServiceCorner_EventScript_HoldItemClerk:: lock faceplayer setvar VAR_TEMP_2, EXCHANGE_CORNER_HOLD_ITEM_CLERK @@ -351,7 +351,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_HoldItemClerk:: @ 825F5F0 goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem end -BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem:: @ 825F602 +BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem:: setvar VAR_0x8004, SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR special ShowFrontierExchangeCornerItemIconWindow special ShowScrollableMultichoice @@ -371,7 +371,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem:: @ 825F602 case MULTI_B_PRESSED, BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye end -BattleFrontier_ExchangeServiceCorner_EventScript_Leftovers:: @ 825F690 +BattleFrontier_ExchangeServiceCorner_EventScript_Leftovers:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmLeftovers, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -380,7 +380,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Leftovers:: @ 825F690 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_WhiteHerb:: @ 825F6B3 +BattleFrontier_ExchangeServiceCorner_EventScript_WhiteHerb:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmWhiteHerb, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -389,7 +389,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_WhiteHerb:: @ 825F6B3 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_QuickClaw:: @ 825F6D6 +BattleFrontier_ExchangeServiceCorner_EventScript_QuickClaw:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmQuickClaw, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -398,7 +398,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_QuickClaw:: @ 825F6D6 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_MentalHerb:: @ 825F6F9 +BattleFrontier_ExchangeServiceCorner_EventScript_MentalHerb:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmMentalHerb, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -407,7 +407,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_MentalHerb:: @ 825F6F9 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Brightpowder:: @ 825F71C +BattleFrontier_ExchangeServiceCorner_EventScript_Brightpowder:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmBrightpowder, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -416,7 +416,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Brightpowder:: @ 825F71C goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_ChoiceBand:: @ 825F73F +BattleFrontier_ExchangeServiceCorner_EventScript_ChoiceBand:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmChoiceBand, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -425,7 +425,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChoiceBand:: @ 825F73F goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_KingsRock:: @ 825F762 +BattleFrontier_ExchangeServiceCorner_EventScript_KingsRock:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKingsRock, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -434,7 +434,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KingsRock:: @ 825F762 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_FocusBand:: @ 825F785 +BattleFrontier_ExchangeServiceCorner_EventScript_FocusBand:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmFocusBand, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -443,7 +443,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_FocusBand:: @ 825F785 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_ScopeLens:: @ 825F7A8 +BattleFrontier_ExchangeServiceCorner_EventScript_ScopeLens:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmScopeLens, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem @@ -452,29 +452,29 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ScopeLens:: @ 825F7A8 goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize end -BattleFrontier_ExchangeServiceCorner_EventScript_Man:: @ 825F7CB +BattleFrontier_ExchangeServiceCorner_EventScript_Man:: msgbox BattleFrontier_ExchangeServiceCorner_Text_GoGetYourOwnDoll, MSGBOX_NPC end -BattleFrontier_ExchangeServiceCorner_EventScript_Sailor:: @ 825F7D4 +BattleFrontier_ExchangeServiceCorner_EventScript_Sailor:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ItemsWillGetMonTougher, MSGBOX_NPC end -BattleFrontier_ExchangeServiceCorner_EventScript_PokefanF:: @ 825F7DD +BattleFrontier_ExchangeServiceCorner_EventScript_PokefanF:: lock msgbox BattleFrontier_ExchangeServiceCorner_Text_GetYouAnythingYouWant, MSGBOX_DEFAULT release end -BattleFrontier_ExchangeServiceCorner_EventScript_RichBoy:: @ 825F7E8 +BattleFrontier_ExchangeServiceCorner_EventScript_RichBoy:: msgbox BattleFrontier_ExchangeServiceCorner_Text_WishIHadAllDolls, MSGBOX_NPC end -BattleFrontier_ExchangeServiceCorner_EventScript_Girl:: @ 825F7F1 +BattleFrontier_ExchangeServiceCorner_EventScript_Girl:: msgbox BattleFrontier_ExchangeServiceCorner_Text_MoreBattlePointsForRecord, MSGBOX_NPC end -BattleFrontier_ExchangeServiceCorner_Text_WelcomePleaseChoosePrize: @ 825F7FA +BattleFrontier_ExchangeServiceCorner_Text_WelcomePleaseChoosePrize: .string "Hello, this is the EXCHANGE SERVICE\n" .string "CORNER.\p" .string "We exchange the Battle Points you\n" @@ -482,154 +482,154 @@ BattleFrontier_ExchangeServiceCorner_Text_WelcomePleaseChoosePrize: @ 825F7FA .string "Please choose a prize from this list.$" @ Unused -BattleFrontier_ExchangeServiceCorner_Text_PleaseChoosePrize: @ 825F890 +BattleFrontier_ExchangeServiceCorner_Text_PleaseChoosePrize: .string "Please choose a prize from this list.$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissPoster: @ 825F8B6 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissPoster: .string "You've chosen the KISS POSTER.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissCushion: @ 825F8E6 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissCushion: .string "You've chosen the KISS CUSHION.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmSmoochumDoll: @ 825F917 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmSmoochumDoll: .string "You've chosen the SMOOCHUM DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmTogepiDoll: @ 825F949 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmTogepiDoll: .string "You've chosen the TOGEPI DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmMeowthDoll: @ 825F979 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmMeowthDoll: .string "You've chosen the MEOWTH DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmClefairyDoll: @ 825F9A9 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmClefairyDoll: .string "You've chosen the CLEFAIRY DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmDittoDoll: @ 825F9DB +BattleFrontier_ExchangeServiceCorner_Text_ConfirmDittoDoll: .string "You've chosen the DITTO DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmCyndaquilDoll: @ 825FA0A +BattleFrontier_ExchangeServiceCorner_Text_ConfirmCyndaquilDoll: .string "You've chosen the CYNDAQUIL DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmChikoritaDoll: @ 825FA3D +BattleFrontier_ExchangeServiceCorner_Text_ConfirmChikoritaDoll: .string "You've chosen the CHIKORITA DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmTotodileDoll: @ 825FA70 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmTotodileDoll: .string "You've chosen the TOTODILE DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmLaprasDoll: @ 825FAA2 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmLaprasDoll: .string "You've chosen the LAPRAS DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmSnorlaxDoll: @ 825FAD2 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmSnorlaxDoll: .string "You've chosen the SNORLAX DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmVenusaurDoll: @ 825FB03 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmVenusaurDoll: .string "You've chosen the VENUSAUR DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmCharizardDoll: @ 825FB35 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmCharizardDoll: .string "You've chosen the CHARIZARD DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmBlastoiseDoll: @ 825FB68 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmBlastoiseDoll: .string "You've chosen the BLASTOISE DOLL.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmProtein: @ 825FB9B +BattleFrontier_ExchangeServiceCorner_Text_ConfirmProtein: .string "You've chosen the PROTEIN.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmCalcium: @ 825FBC7 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmCalcium: .string "You've chosen the CALCIUM.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmIron: @ 825FBF3 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmIron: .string "You've chosen the IRON.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmZinc: @ 825FC1C +BattleFrontier_ExchangeServiceCorner_Text_ConfirmZinc: .string "You've chosen the ZINC.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmCarbos: @ 825FC45 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmCarbos: .string "You've chosen the CARBOS.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmHPUp: @ 825FC70 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmHPUp: .string "You've chosen the HP UP.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmBrightpowder: @ 825FC9A +BattleFrontier_ExchangeServiceCorner_Text_ConfirmBrightpowder: .string "You've chosen the BRIGHTPOWDER.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmWhiteHerb: @ 825FCCB +BattleFrontier_ExchangeServiceCorner_Text_ConfirmWhiteHerb: .string "You've chosen the WHITE HERB.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmQuickClaw: @ 825FCFA +BattleFrontier_ExchangeServiceCorner_Text_ConfirmQuickClaw: .string "You've chosen the QUICK CLAW.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmMentalHerb: @ 825FD29 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmMentalHerb: .string "You've chosen the MENTAL HERB.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmChoiceBand: @ 825FD59 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmChoiceBand: .string "You've chosen the CHOICE BAND.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmKingsRock: @ 825FD89 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmKingsRock: .string "You've chosen the KING'S ROCK.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmFocusBand: @ 825FDB9 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmFocusBand: .string "You've chosen the FOCUS BAND.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmScopeLens: @ 825FDE8 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmScopeLens: .string "You've chosen the SCOPE LENS.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_ConfirmLeftovers: @ 825FE17 +BattleFrontier_ExchangeServiceCorner_Text_ConfirmLeftovers: .string "You've chosen the LEFTOVERS.\n" .string "Is that correct?$" -BattleFrontier_ExchangeServiceCorner_Text_WellSendItToPC: @ 825FE45 +BattleFrontier_ExchangeServiceCorner_Text_WellSendItToPC: .string "Thank you!\n" .string "We'll send it to your PC at home.$" -BattleFrontier_ExchangeServiceCorner_Text_HereIsYourPrize: @ 825FE72 +BattleFrontier_ExchangeServiceCorner_Text_HereIsYourPrize: .string "Here is your prize!$" -BattleFrontier_ExchangeServiceCorner_Text_DontHaveEnoughPoints: @ 825FE86 +BattleFrontier_ExchangeServiceCorner_Text_DontHaveEnoughPoints: .string "I'm so sorry…\n" .string "You don't have enough Battle Points…$" -BattleFrontier_ExchangeServiceCorner_Text_PCIsFull: @ 825FEB9 +BattleFrontier_ExchangeServiceCorner_Text_PCIsFull: .string "I'm so sorry…\n" .string "Your PC appears to be full…$" -BattleFrontier_ExchangeServiceCorner_Text_DontHaveSpaceToHoldIt: @ 825FEE3 +BattleFrontier_ExchangeServiceCorner_Text_DontHaveSpaceToHoldIt: .string "I'm so sorry…\n" .string "You don't have space to hold it…$" -BattleFrontier_ExchangeServiceCorner_Text_ThankYouVisitWithPoints: @ 825FF12 +BattleFrontier_ExchangeServiceCorner_Text_ThankYouVisitWithPoints: .string "Thank you very much.\p" .string "Please visit us when you have\n" .string "saved up Battle Points.$" -BattleFrontier_ExchangeServiceCorner_Text_WishIHadAllDolls: @ 825FF5D +BattleFrontier_ExchangeServiceCorner_Text_WishIHadAllDolls: .string "Oh, they're so nice!\n" .string "I wish I had them!\l" .string "Cute cushions!\l" @@ -637,18 +637,18 @@ BattleFrontier_ExchangeServiceCorner_Text_WishIHadAllDolls: @ 825FF5D .string "Little plush DOLLS!\l" .string "I wish I had them all!$" -BattleFrontier_ExchangeServiceCorner_Text_GetYouAnythingYouWant: @ 825FFD0 +BattleFrontier_ExchangeServiceCorner_Text_GetYouAnythingYouWant: .string "Leave it to your mommy!\p" .string "If it's anything you want, I'll go\n" .string "through anything to get it, honey!$" -BattleFrontier_ExchangeServiceCorner_Text_ItemsWillGetMonTougher: @ 826002E +BattleFrontier_ExchangeServiceCorner_Text_ItemsWillGetMonTougher: .string "If I can get hold of the items here,\n" .string "my POKéMON will get tougher.\p" .string "You bet they will!\n" .string "No question about it!$" -BattleFrontier_ExchangeServiceCorner_Text_GoGetYourOwnDoll: @ 8260099 +BattleFrontier_ExchangeServiceCorner_Text_GoGetYourOwnDoll: .string "Hah?\n" .string "What are you gawking at?\p" .string "I don't like you staring at my plush\n" @@ -656,110 +656,110 @@ BattleFrontier_ExchangeServiceCorner_Text_GoGetYourOwnDoll: @ 8260099 .string "If you want it, go get one yourself!\n" .string "Isn't that right, SMOOCHUM?$" -BattleFrontier_ExchangeServiceCorner_Text_MoreBattlePointsForRecord: @ 826012D +BattleFrontier_ExchangeServiceCorner_Text_MoreBattlePointsForRecord: .string "Did you know?\p" .string "If you stretch your record at any of\n" .string "the BATTLE facilities, they start\l" .string "giving you more and more Battle Points.$" -BattleFrontier_ExchangeServiceCorner_Text_KissPosterDesc:: @ 82601AA +BattleFrontier_ExchangeServiceCorner_Text_KissPosterDesc:: .string "A large poster with a SMOOCHUM print.$" -BattleFrontier_ExchangeServiceCorner_Text_KissCushionDesc:: @ 82601D0 +BattleFrontier_ExchangeServiceCorner_Text_KissCushionDesc:: .string "A SMOOCHUM cushion.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_SmoochumDollDesc:: @ 8260201 +BattleFrontier_ExchangeServiceCorner_Text_SmoochumDollDesc:: .string "A SMOOCHUM DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_TogepiDollDesc:: @ 826022F +BattleFrontier_ExchangeServiceCorner_Text_TogepiDollDesc:: .string "A TOGEPI DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_MeowthDollDesc:: @ 826025B +BattleFrontier_ExchangeServiceCorner_Text_MeowthDollDesc:: .string "A MEOWTH DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_ClefairyDollDesc:: @ 8260287 +BattleFrontier_ExchangeServiceCorner_Text_ClefairyDollDesc:: .string "A CLEFAIRY DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_DittoDollDesc:: @ 82602B5 +BattleFrontier_ExchangeServiceCorner_Text_DittoDollDesc:: .string "A DITTO DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_CyndaquilDollDesc:: @ 82602E0 +BattleFrontier_ExchangeServiceCorner_Text_CyndaquilDollDesc:: .string "A CYNDAQUIL DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_ChikoritaDollDesc:: @ 826030F +BattleFrontier_ExchangeServiceCorner_Text_ChikoritaDollDesc:: .string "A CHIKORITA DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_TotodileDollDesc:: @ 826033E +BattleFrontier_ExchangeServiceCorner_Text_TotodileDollDesc:: .string "A TOTODILE DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_LargeDollDesc:: @ 826036C +BattleFrontier_ExchangeServiceCorner_Text_LargeDollDesc:: .string "A large DOLL.\n" .string "Place it on a mat or a desk.$" -BattleFrontier_ExchangeServiceCorner_Text_ProteinDesc:: @ 8260397 +BattleFrontier_ExchangeServiceCorner_Text_ProteinDesc:: .string "Raises the stat ATTACK of one\n" .string "POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_CalciumDesc:: @ 82603BE +BattleFrontier_ExchangeServiceCorner_Text_CalciumDesc:: .string "Raises the stat SP. ATK of one\n" .string "POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_IronDesc:: @ 82603E6 +BattleFrontier_ExchangeServiceCorner_Text_IronDesc:: .string "Raises the stat DEFENSE of one\n" .string "POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_ZincDesc:: @ 826040E +BattleFrontier_ExchangeServiceCorner_Text_ZincDesc:: .string "Raises the stat SP. DEF of one\n" .string "POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_CarbosDesc:: @ 8260436 +BattleFrontier_ExchangeServiceCorner_Text_CarbosDesc:: .string "Raises the stat SPEED of one\n" .string "POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_HPUpDesc:: @ 826045C +BattleFrontier_ExchangeServiceCorner_Text_HPUpDesc:: .string "Raises the HP of one POKéMON.$" -BattleFrontier_ExchangeServiceCorner_Text_LeftoversDesc:: @ 826047A +BattleFrontier_ExchangeServiceCorner_Text_LeftoversDesc:: .string "A hold item that gradually restores\n" .string "HP in battle.$" -BattleFrontier_ExchangeServiceCorner_Text_WhiteHerbDesc:: @ 82604AC +BattleFrontier_ExchangeServiceCorner_Text_WhiteHerbDesc:: .string "A hold item that restores any\n" .string "lowered stat.$" -BattleFrontier_ExchangeServiceCorner_Text_QuickClawDesc:: @ 82604D8 +BattleFrontier_ExchangeServiceCorner_Text_QuickClawDesc:: .string "A hold item that occasionally allows\n" .string "the first strike.$" -BattleFrontier_ExchangeServiceCorner_Text_MentalHerbDesc:: @ 826050F +BattleFrontier_ExchangeServiceCorner_Text_MentalHerbDesc:: .string "A hold item that snaps POKéMON out\n" .string "of infatuation.$" -BattleFrontier_ExchangeServiceCorner_Text_BrightpowderDesc:: @ 8260542 +BattleFrontier_ExchangeServiceCorner_Text_BrightpowderDesc:: .string "A hold item that casts a glare to\n" .string "reduce accuracy.$" -BattleFrontier_ExchangeServiceCorner_Text_ChoiceBandDesc:: @ 8260575 +BattleFrontier_ExchangeServiceCorner_Text_ChoiceBandDesc:: .string "Raises a move's power, but permits\n" .string "only that move.$" -BattleFrontier_ExchangeServiceCorner_Text_KingsRockDesc:: @ 82605A8 +BattleFrontier_ExchangeServiceCorner_Text_KingsRockDesc:: .string "A hold item that may cause flinching\n" .string "when the foe is hit.$" -BattleFrontier_ExchangeServiceCorner_Text_FocusBandDesc:: @ 82605E2 +BattleFrontier_ExchangeServiceCorner_Text_FocusBandDesc:: .string "A hold item that occasionally\n" .string "prevents fainting.$" -BattleFrontier_ExchangeServiceCorner_Text_ScopeLensDesc:: @ 8260613 +BattleFrontier_ExchangeServiceCorner_Text_ScopeLensDesc:: .string "A hold item that raises the\n" .string "critical-hit rate.$" diff --git a/data/maps/BattleFrontier_Lounge1/scripts.inc b/data/maps/BattleFrontier_Lounge1/scripts.inc index 0ded021b6773..0455d577ce10 100644 --- a/data/maps/BattleFrontier_Lounge1/scripts.inc +++ b/data/maps/BattleFrontier_Lounge1/scripts.inc @@ -1,8 +1,8 @@ -BattleFrontier_Lounge1_MapScripts:: @ 825E774 +BattleFrontier_Lounge1_MapScripts:: .byte 0 @ NPC that rates pokemon based on their IVs -BattleFrontier_Lounge1_EventScript_Breeder:: @ 825E775 +BattleFrontier_Lounge1_EventScript_Breeder:: lock faceplayer call_if_unset FLAG_MET_BATTLE_FRONTIER_BREEDER, BattleFrontier_Lounge1_EventScript_BreederIntro @@ -11,7 +11,7 @@ BattleFrontier_Lounge1_EventScript_Breeder:: @ 825E775 goto BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder end -BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder:: @ 825E792 +BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder:: special ChoosePartyMon waitstate compare VAR_0x8004, 255 @@ -20,11 +20,11 @@ BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder:: @ 825E792 goto_if_eq BattleFrontier_Lounge1_EventScript_CancelMonSelect end -BattleFrontier_Lounge1_EventScript_BreederIntro:: @ 825E7AD +BattleFrontier_Lounge1_EventScript_BreederIntro:: msgbox BattleFrontier_Lounge1_Text_PokemonBreederIntro, MSGBOX_DEFAULT return -BattleFrontier_Lounge1_EventScript_AlreadyMetBreeder:: @ 825E7B6 +BattleFrontier_Lounge1_EventScript_AlreadyMetBreeder:: msgbox BattleFrontier_Lounge1_Text_LetsLookAtYourPokemon, MSGBOX_DEFAULT return @@ -32,7 +32,7 @@ BattleFrontier_Lounge1_EventScript_AlreadyMetBreeder:: @ 825E7B6 @ VAR_0x8005: Sum of the mons IVs @ VAR_0x8006: Stat id of highest IV stat @ VAR_0x8007: IV of the highest IV stat -BattleFrontier_Lounge1_EventScript_ShowMonToBreeder:: @ 825E7BF +BattleFrontier_Lounge1_EventScript_ShowMonToBreeder:: specialvar VAR_RESULT, ScriptGetPartyMonSpecies compare VAR_RESULT, SPECIES_EGG goto_if_eq BattleFrontier_Lounge1_EventScript_ShowEggToBreeder @@ -47,13 +47,13 @@ BattleFrontier_Lounge1_EventScript_ShowMonToBreeder:: @ 825E7BF goto_if_ge BattleFrontier_Lounge1_EventScript_VeryHighTotalIVs end -BattleFrontier_Lounge1_EventScript_ShowEggToBreeder:: @ 825E7FF +BattleFrontier_Lounge1_EventScript_ShowEggToBreeder:: msgbox BattleFrontier_Lounge1_Text_EvenICantTell, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder end @ Comment on the highest IV stat -BattleFrontier_Lounge1_EventScript_HighestIVStat:: @ 825E80D +BattleFrontier_Lounge1_EventScript_HighestIVStat:: compare VAR_0x8006, STAT_HP goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVHP compare VAR_0x8006, STAT_ATK @@ -69,7 +69,7 @@ BattleFrontier_Lounge1_EventScript_HighestIVStat:: @ 825E80D end @ Comment on the highest IV value -BattleFrontier_Lounge1_EventScript_HighestIVValue:: @ 825E850 +BattleFrontier_Lounge1_EventScript_HighestIVValue:: compare VAR_0x8007, 15 goto_if_le BattleFrontier_Lounge1_EventScript_HighestIVLow compare VAR_0x8007, 25 @@ -80,94 +80,94 @@ BattleFrontier_Lounge1_EventScript_HighestIVValue:: @ 825E850 goto_if_ge BattleFrontier_Lounge1_EventScript_HighestIVMax end -BattleFrontier_Lounge1_EventScript_EndBreederComments:: @ 825E87D +BattleFrontier_Lounge1_EventScript_EndBreederComments:: release end -BattleFrontier_Lounge1_EventScript_AverageTotalIVs:: @ 825E87F +BattleFrontier_Lounge1_EventScript_AverageTotalIVs:: msgbox BattleFrontier_Lounge1_Text_AverageAbility, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVStat end -BattleFrontier_Lounge1_EventScript_AboveAverageTotalIVs:: @ 825E88D +BattleFrontier_Lounge1_EventScript_AboveAverageTotalIVs:: msgbox BattleFrontier_Lounge1_Text_BetterThanAverageAbility, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVStat end -BattleFrontier_Lounge1_EventScript_HighTotalIVs:: @ 825E89B +BattleFrontier_Lounge1_EventScript_HighTotalIVs:: msgbox BattleFrontier_Lounge1_Text_ImpressiveAbility, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVStat end -BattleFrontier_Lounge1_EventScript_VeryHighTotalIVs:: @ 825E8A9 +BattleFrontier_Lounge1_EventScript_VeryHighTotalIVs:: msgbox BattleFrontier_Lounge1_Text_OutstandingAbility, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVStat end -BattleFrontier_Lounge1_EventScript_HighestIVHP:: @ 825E8B7 +BattleFrontier_Lounge1_EventScript_HighestIVHP:: msgbox BattleFrontier_Lounge1_Text_BestAspectHP, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVAtk:: @ 825E8C5 +BattleFrontier_Lounge1_EventScript_HighestIVAtk:: msgbox BattleFrontier_Lounge1_Text_BestAspectAtk, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVDef:: @ 825E8D3 +BattleFrontier_Lounge1_EventScript_HighestIVDef:: msgbox BattleFrontier_Lounge1_Text_BestAspectDef, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVSpeed:: @ 825E8E1 +BattleFrontier_Lounge1_EventScript_HighestIVSpeed:: msgbox BattleFrontier_Lounge1_Text_BestAspectSpeed, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVSpAtk:: @ 825E8EF +BattleFrontier_Lounge1_EventScript_HighestIVSpAtk:: msgbox BattleFrontier_Lounge1_Text_BestAspectSpAtk, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVSpDef:: @ 825E8FD +BattleFrontier_Lounge1_EventScript_HighestIVSpDef:: msgbox BattleFrontier_Lounge1_Text_BestAspectSpDef, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_HighestIVValue end -BattleFrontier_Lounge1_EventScript_HighestIVLow:: @ 825E90B +BattleFrontier_Lounge1_EventScript_HighestIVLow:: msgbox BattleFrontier_Lounge1_Text_StatRelativelyGood, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_EndBreederComments end -BattleFrontier_Lounge1_EventScript_HighestIVMid:: @ 825E919 +BattleFrontier_Lounge1_EventScript_HighestIVMid:: msgbox BattleFrontier_Lounge1_Text_StatImpressive, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_EndBreederComments end -BattleFrontier_Lounge1_EventScript_HighestIVHigh:: @ 825E927 +BattleFrontier_Lounge1_EventScript_HighestIVHigh:: msgbox BattleFrontier_Lounge1_Text_StatOutstanding, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_EndBreederComments end -BattleFrontier_Lounge1_EventScript_HighestIVMax:: @ 825E935 +BattleFrontier_Lounge1_EventScript_HighestIVMax:: msgbox BattleFrontier_Lounge1_Text_StatFlawless, MSGBOX_DEFAULT goto BattleFrontier_Lounge1_EventScript_EndBreederComments end -BattleFrontier_Lounge1_EventScript_CancelMonSelect:: @ 825E943 +BattleFrontier_Lounge1_EventScript_CancelMonSelect:: msgbox BattleFrontier_Lounge1_Text_NoTimeForMyAdvice, MSGBOX_DEFAULT release end -BattleFrontier_Lounge1_EventScript_Boy1:: @ 825E94D +BattleFrontier_Lounge1_EventScript_Boy1:: msgbox BattleFrontier_Lounge1_Text_SaidMyMonIsOutstanding, MSGBOX_NPC end -BattleFrontier_Lounge1_EventScript_Boy2:: @ 825E956 +BattleFrontier_Lounge1_EventScript_Boy2:: msgbox BattleFrontier_Lounge1_Text_DidntDoAnythingSpecialRaisingIt, MSGBOX_NPC end -BattleFrontier_Lounge1_Text_PokemonBreederIntro: @ 825E95F +BattleFrontier_Lounge1_Text_PokemonBreederIntro: .string "For 70 years I have raised POKéMON!\n" .string "I am the man they revere as\l" .string "the legendary top POKéMON BREEDER!\p" @@ -180,95 +180,95 @@ BattleFrontier_Lounge1_Text_PokemonBreederIntro: @ 825E95F .string "Here!\n" .string "Let's have a look at your POKéMON!$" -BattleFrontier_Lounge1_Text_AverageAbility: @ 825EA92 +BattleFrontier_Lounge1_Text_AverageAbility: .string "…Hmm…\p" .string "This one, overall, I would describe\n" .string "as being of average ability.$" -BattleFrontier_Lounge1_Text_BetterThanAverageAbility: @ 825EAD9 +BattleFrontier_Lounge1_Text_BetterThanAverageAbility: .string "…Hmm…\p" .string "This one, overall, I would describe as\n" .string "having better-than-average ability.$" -BattleFrontier_Lounge1_Text_ImpressiveAbility: @ 825EB2A +BattleFrontier_Lounge1_Text_ImpressiveAbility: .string "…Hmm…\p" .string "This one, overall, I would say is\n" .string "quite impressive in ability!$" -BattleFrontier_Lounge1_Text_OutstandingAbility: @ 825EB6F +BattleFrontier_Lounge1_Text_OutstandingAbility: .string "…Hmm…\p" .string "This one, overall, I would say is\n" .string "wonderfully outstanding in ability!$" -BattleFrontier_Lounge1_Text_BestAspectHP: @ 825EBBB +BattleFrontier_Lounge1_Text_BestAspectHP: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its HP…$" -BattleFrontier_Lounge1_Text_BestAspectAtk: @ 825EBF8 +BattleFrontier_Lounge1_Text_BestAspectAtk: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its ATTACK…$" -BattleFrontier_Lounge1_Text_BestAspectDef: @ 825EC39 +BattleFrontier_Lounge1_Text_BestAspectDef: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its DEFENSE…$" -BattleFrontier_Lounge1_Text_BestAspectSpAtk: @ 825EC7B +BattleFrontier_Lounge1_Text_BestAspectSpAtk: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its SPECIAL ATTACK…$" -BattleFrontier_Lounge1_Text_BestAspectSpDef: @ 825ECC4 +BattleFrontier_Lounge1_Text_BestAspectSpDef: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its SPECIAL DEFENSE…$" -BattleFrontier_Lounge1_Text_BestAspectSpeed: @ 825ED0E +BattleFrontier_Lounge1_Text_BestAspectSpeed: .string "Incidentally, the best aspect of it,\n" .string "I would say, is its SPEED…$" -BattleFrontier_Lounge1_Text_StatRelativelyGood: @ 825ED4E +BattleFrontier_Lounge1_Text_StatRelativelyGood: .string "That stat is relatively good.\n" .string "…Hm… That's how I call it.$" -BattleFrontier_Lounge1_Text_StatImpressive: @ 825ED87 +BattleFrontier_Lounge1_Text_StatImpressive: .string "That stat is quite impressive.\n" .string "…Hm… That's how I call it.$" -BattleFrontier_Lounge1_Text_StatOutstanding: @ 825EDC1 +BattleFrontier_Lounge1_Text_StatOutstanding: .string "That stat is outstanding!\n" .string "…Hm… That's how I call it.$" -BattleFrontier_Lounge1_Text_StatFlawless: @ 825EDF6 +BattleFrontier_Lounge1_Text_StatFlawless: .string "It's flawless! A thing of perfection!\n" .string "…Hm… That's how I call it.$" -BattleFrontier_Lounge1_Text_NoTimeForMyAdvice: @ 825EE37 +BattleFrontier_Lounge1_Text_NoTimeForMyAdvice: .string "What?\n" .string "You have no time for my advice?\p" .string "You should always be eager to learn\n" .string "from the experiences of your elders!$" @ Unused -BattleFrontier_Lounge1_Text_HaveBusinessNeedsTending: @ 825EEA6 +BattleFrontier_Lounge1_Text_HaveBusinessNeedsTending: .string "Yes, what is it now?\p" .string "I have business that needs tending!\n" .string "Save it for next time!$" -BattleFrontier_Lounge1_Text_LetsLookAtYourPokemon: @ 825EEF6 +BattleFrontier_Lounge1_Text_LetsLookAtYourPokemon: .string "Ah, youngster! Do your POKéMON's\n" .string "abilities intrigue you?\p" .string "Here, here!\n" .string "Let's have a look at your POKéMON!$" -BattleFrontier_Lounge1_Text_EvenICantTell: @ 825EF5E +BattleFrontier_Lounge1_Text_EvenICantTell: .string "An expert I am, but even I can't tell\n" .string "anything about an unhatched POKéMON!\p" .string "Show me a POKéMON!\n" .string "A POKéMON is what I need to see!$" -BattleFrontier_Lounge1_Text_SaidMyMonIsOutstanding: @ 825EFDD +BattleFrontier_Lounge1_Text_SaidMyMonIsOutstanding: .string "He said my POKéMON is outstanding!\n" .string "I'm glad I raised it carefully!$" -BattleFrontier_Lounge1_Text_DidntDoAnythingSpecialRaisingIt: @ 825F020 +BattleFrontier_Lounge1_Text_DidntDoAnythingSpecialRaisingIt: .string "He said my POKéMON is outstanding!\n" .string "But I didn't do anything special\l" .string "raising it…$" diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc index 610a744b4ab8..106d1d1793a8 100644 --- a/data/maps/BattleFrontier_Lounge2/scripts.inc +++ b/data/maps/BattleFrontier_Lounge2/scripts.inc @@ -1,4 +1,4 @@ -BattleFrontier_Lounge2_MapScripts:: @ 8260642 +BattleFrontier_Lounge2_MapScripts:: .byte 0 @ This NPC gives hints about a random facility or battle mode. @@ -7,7 +7,7 @@ BattleFrontier_Lounge2_MapScripts:: @ 8260642 @ The name of the Frontier Brain there @ The type and description of the 3 pokemon they use in their silver battle @ The type and description of the 3 pokemon they use in their gold battle -BattleFrontier_Lounge2_EventScript_FrontierManiac:: @ 8260643 +BattleFrontier_Lounge2_EventScript_FrontierManiac:: lock faceplayer goto_if_set FLAG_MET_BATTLE_FRONTIER_MANIAC, BattleFrontier_Lounge2_EventScript_AlreadyMetManiac @@ -16,12 +16,12 @@ BattleFrontier_Lounge2_EventScript_FrontierManiac:: @ 8260643 goto BattleFrontier_Lounge2_EventScript_GiveAdvice end -BattleFrontier_Lounge2_EventScript_AlreadyMetManiac:: @ 826065F +BattleFrontier_Lounge2_EventScript_AlreadyMetManiac:: msgbox BattleFrontier_Lounge2_Text_SwingByForTheLatestWord, MSGBOX_DEFAULT goto BattleFrontier_Lounge2_EventScript_GiveAdvice end -BattleFrontier_Lounge2_EventScript_GiveAdvice:: @ 826066D +BattleFrontier_Lounge2_EventScript_GiveAdvice:: compare VAR_FRONTIER_MANIAC_FACILITY, 0 call_if_eq BattleFrontier_Lounge2_EventScript_BufferSingle compare VAR_FRONTIER_MANIAC_FACILITY, 1 @@ -52,77 +52,77 @@ BattleFrontier_Lounge2_EventScript_GiveAdvice:: @ 826066D release end -BattleFrontier_Lounge2_EventScript_BattleTowerNews:: @ 82606F8 +BattleFrontier_Lounge2_EventScript_BattleTowerNews:: msgbox BattleFrontier_Lounge2_Text_BattleTowerIsHottest, MSGBOX_DEFAULT return -BattleFrontier_Lounge2_EventScript_FacilityNews:: @ 8260701 +BattleFrontier_Lounge2_EventScript_FacilityNews:: msgbox BattleFrontier_Lounge2_Text_FacilityIsHottest, MSGBOX_DEFAULT return -BattleFrontier_Lounge2_EventScript_BufferSingle:: @ 826070A +BattleFrontier_Lounge2_EventScript_BufferSingle:: bufferstdstring 0, STDSTRING_SINGLE return -BattleFrontier_Lounge2_EventScript_BufferDouble:: @ 826070F +BattleFrontier_Lounge2_EventScript_BufferDouble:: bufferstdstring 0, STDSTRING_DOUBLE return -BattleFrontier_Lounge2_EventScript_BufferMulti:: @ 8260714 +BattleFrontier_Lounge2_EventScript_BufferMulti:: bufferstdstring 0, STDSTRING_MULTI return -BattleFrontier_Lounge2_EventScript_BufferMultiLink:: @ 8260719 +BattleFrontier_Lounge2_EventScript_BufferMultiLink:: bufferstdstring 0, STDSTRING_MULTI_LINK return -BattleFrontier_Lounge2_EventScript_BufferBattleDome:: @ 826071E +BattleFrontier_Lounge2_EventScript_BufferBattleDome:: bufferstdstring 0, STDSTRING_BATTLE_DOME return -BattleFrontier_Lounge2_EventScript_BufferBattleFactory:: @ 8260723 +BattleFrontier_Lounge2_EventScript_BufferBattleFactory:: bufferstdstring 0, STDSTRING_BATTLE_FACTORY return -BattleFrontier_Lounge2_EventScript_BufferBattlePalace:: @ 8260728 +BattleFrontier_Lounge2_EventScript_BufferBattlePalace:: bufferstdstring 0, STDSTRING_BATTLE_PALACE return -BattleFrontier_Lounge2_EventScript_BufferBattleArena:: @ 826072D +BattleFrontier_Lounge2_EventScript_BufferBattleArena:: bufferstdstring 0, STDSTRING_BATTLE_ARENA return -BattleFrontier_Lounge2_EventScript_BufferBattlePike:: @ 8260732 +BattleFrontier_Lounge2_EventScript_BufferBattlePike:: bufferstdstring 0, STDSTRING_BATTLE_PIKE return -BattleFrontier_Lounge2_EventScript_BufferBattlePyramid:: @ 8260737 +BattleFrontier_Lounge2_EventScript_BufferBattlePyramid:: bufferstdstring 0, STDSTRING_BATTLE_PYRAMID return -BattleFrontier_Lounge2_EventScript_Maniac1:: @ 826073C +BattleFrontier_Lounge2_EventScript_Maniac1:: lock msgbox BattleFrontier_Lounge2_Text_NewsGatheringPower, MSGBOX_DEFAULT release end -BattleFrontier_Lounge2_EventScript_Maniac2:: @ 8260747 +BattleFrontier_Lounge2_EventScript_Maniac2:: lock msgbox BattleFrontier_Lounge2_Text_AmazingPowersOfObservation, MSGBOX_DEFAULT release end -BattleFrontier_Lounge2_EventScript_Maniac3:: @ 8260752 +BattleFrontier_Lounge2_EventScript_Maniac3:: lock msgbox BattleFrontier_Lounge2_Text_AmazingPowerOfPersuasion, MSGBOX_DEFAULT release end -BattleFrontier_Lounge2_EventScript_TriathleteF:: @ 826075D +BattleFrontier_Lounge2_EventScript_TriathleteF:: msgbox BattleFrontier_Lounge2_Text_ThisPlaceIsScaringMe, MSGBOX_NPC end -BattleFrontier_Lounge2_Text_FrontierManiacIntro:: @ 8260766 +BattleFrontier_Lounge2_Text_FrontierManiacIntro:: .string "Howdy! When it comes to news about\n" .string "the BATTLE FRONTIER, I'm no. 1.\p" .string "You can think of me as\n" @@ -132,34 +132,34 @@ BattleFrontier_Lounge2_Text_FrontierManiacIntro:: @ 8260766 .string "I'll happily share the hottest news\n" .string "I gathered about the BATTLE FRONTIER.$" -BattleFrontier_Lounge2_Text_SwingByForTheLatestWord:: @ 8260857 +BattleFrontier_Lounge2_Text_SwingByForTheLatestWord:: .string "Howdy! Did you swing by to grill me\n" .string "about the latest word? Oh, all right!$" @ Unused -BattleFrontier_Lounge2_Text_MyInformationsBeenUsefulRight:: @ 82608A1 +BattleFrontier_Lounge2_Text_MyInformationsBeenUsefulRight:: .string "Well? Well? Well?\p" .string "I'm sure my information's been\n" .string "seriously useful to you, right?$" -BattleFrontier_Lounge2_Text_FacilityIsHottest:: @ 82608F2 +BattleFrontier_Lounge2_Text_FacilityIsHottest:: .string "Let's see now…\p" .string "It sounds like the {STR_VAR_1}\n" .string "is the hottest place going.$" -BattleFrontier_Lounge2_Text_BattleTowerIsHottest:: @ 8260933 +BattleFrontier_Lounge2_Text_BattleTowerIsHottest:: .string "Let's see now…\p" .string "It sounds like BATTLE TOWER\n" .string "{STR_VAR_1} is the hottest.$" -BattleFrontier_Lounge2_Text_SalonMaidenIsThere:: @ 8260971 +BattleFrontier_Lounge2_Text_SalonMaidenIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this mysterious TRAINER called\n" .string "the SALON MAIDEN that runs the place.$" -BattleFrontier_Lounge2_Text_SalonMaidenSilverMons:: @ 8260A1E +BattleFrontier_Lounge2_Text_SalonMaidenSilverMons:: .string "Have you battled the SALON MAIDEN?\p" .string "When she's measuring up her opponent,\n" .string "she apparently uses these POKéMON:\p" @@ -167,7 +167,7 @@ BattleFrontier_Lounge2_Text_SalonMaidenSilverMons:: @ 8260A1E .string "a FIRE-type VOLCANO POKéMON,\l" .string "and a NORMAL-type SLEEPING POKéMON.$" -BattleFrontier_Lounge2_Text_SalonMaidenGoldMons:: @ 8260AE7 +BattleFrontier_Lounge2_Text_SalonMaidenGoldMons:: .string "Have you battled the SALON MAIDEN\n" .string "when she's serious?\p" .string "When she's battling flat out,\n" @@ -176,14 +176,14 @@ BattleFrontier_Lounge2_Text_SalonMaidenGoldMons:: @ 8260AE7 .string "an ELECTRIC-type THUNDER POKéMON,\l" .string "and a NORMAL-type SLEEPING POKéMON.$" -BattleFrontier_Lounge2_Text_DomeAceIsThere:: @ 8260BC4 +BattleFrontier_Lounge2_Text_DomeAceIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this flamboyant TRAINER called\n" .string "the DOME ACE that runs the place.$" -BattleFrontier_Lounge2_Text_DomeAceSilverMons:: @ 8260C6D +BattleFrontier_Lounge2_Text_DomeAceSilverMons:: .string "Have you battled the DOME ACE?\p" .string "When he's treating the opponent\n" .string "lightly, he uses these three POKéMON:\p" @@ -191,7 +191,7 @@ BattleFrontier_Lounge2_Text_DomeAceSilverMons:: @ 8260C6D .string "a WATER & GROUND MUD FISH POKéMON,\l" .string "and a FIRE & FLYING FLAME POKéMON.$" -BattleFrontier_Lounge2_Text_DomeAceGoldMons:: @ 8260D3A +BattleFrontier_Lounge2_Text_DomeAceGoldMons:: .string "Have you battled the DOME ACE\n" .string "when he's serious?\p" .string "When he's demonstrating his strategy,\n" @@ -201,14 +201,14 @@ BattleFrontier_Lounge2_Text_DomeAceGoldMons:: @ 8260D3A .string "and a STEEL- & PSYCHIC-type IRON LEG\l" .string "POKéMON.$" -BattleFrontier_Lounge2_Text_FactoryHeadIsThere:: @ 8260E1E +BattleFrontier_Lounge2_Text_FactoryHeadIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this freaky TRAINER called\n" .string "the FACTORY HEAD that runs the place.$" -BattleFrontier_Lounge2_Text_FactoryHeadSilverMons:: @ 8260EC7 +BattleFrontier_Lounge2_Text_FactoryHeadSilverMons:: .string "Have you battled the FACTORY HEAD\n" .string "already?\p" .string "Let me think… When he goes to battle,\n" @@ -216,7 +216,7 @@ BattleFrontier_Lounge2_Text_FactoryHeadSilverMons:: @ 8260EC7 .string "He battles under pretty much the same\n" .string "conditions as you.$" -BattleFrontier_Lounge2_Text_FactoryHeadGoldMons:: @ 8260F74 +BattleFrontier_Lounge2_Text_FactoryHeadGoldMons:: .string "Have you battled the FACTORY HEAD\n" .string "when he's serious?\p" .string "When he goes seriously to battle,\n" @@ -224,14 +224,14 @@ BattleFrontier_Lounge2_Text_FactoryHeadGoldMons:: @ 8260F74 .string "He battles under virtually the same\n" .string "conditions as you.$" -BattleFrontier_Lounge2_Text_PikeQueenIsThere:: @ 8261026 +BattleFrontier_Lounge2_Text_PikeQueenIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this scary TRAINER called\n" .string "the PIKE QUEEN that runs the place.$" -BattleFrontier_Lounge2_Text_PikeQueenSilverMons:: @ 82610CC +BattleFrontier_Lounge2_Text_PikeQueenSilverMons:: .string "Have you battled the PIKE QUEEN\n" .string "before?\p" .string "When she's in a good mood, they say\n" @@ -240,7 +240,7 @@ BattleFrontier_Lounge2_Text_PikeQueenSilverMons:: @ 82610CC .string "a BUG & ROCK MOLD POKéMON,\l" .string "and a WATER-type TENDER POKéMON.$" -BattleFrontier_Lounge2_Text_PikeQueenGoldMons:: @ 8261194 +BattleFrontier_Lounge2_Text_PikeQueenGoldMons:: .string "Have you battled the PIKE QUEEN\n" .string "when she's serious?\p" .string "When she's seriously annoyed, they say\n" @@ -250,14 +250,14 @@ BattleFrontier_Lounge2_Text_PikeQueenGoldMons:: @ 8261194 .string "and a WATER- & FLYING-type ATROCIOUS\l" .string "POKéMON.$" -BattleFrontier_Lounge2_Text_ArenaTycoonIsThere:: @ 8261282 +BattleFrontier_Lounge2_Text_ArenaTycoonIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this cute TRAINER called\n" .string "the ARENA TYCOON that runs the place.$" -BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons:: @ 8261329 +BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons:: .string "Have you battled the ARENA TYCOON\n" .string "before?\p" .string "When she's assessing the foe's ability,\n" @@ -266,7 +266,7 @@ BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons:: @ 8261329 .string "a DARK-type MOONLIGHT POKéMON,\l" .string "and a BUG & GHOST SHED POKéMON.$" -BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons:: @ 8261403 +BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons:: .string "Have you battled the ARENA TYCOON\n" .string "when she's serious?\p" .string "When she battles for keeps,\n" @@ -276,14 +276,14 @@ BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons:: @ 8261403 .string "and a GRASS- & FIGHTING-type\l" .string "MUSHROOM POKéMON.$" -BattleFrontier_Lounge2_Text_PalaceMavenIsThere:: @ 82614E6 +BattleFrontier_Lounge2_Text_PalaceMavenIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this sinister TRAINER called\n" .string "the PALACE MAVEN that runs the place.$" -BattleFrontier_Lounge2_Text_PalaceMavenSilverMons:: @ 8261591 +BattleFrontier_Lounge2_Text_PalaceMavenSilverMons:: .string "Have you battled the PALACE MAVEN\n" .string "before?\p" .string "When he's testing the opponent's\n" @@ -292,7 +292,7 @@ BattleFrontier_Lounge2_Text_PalaceMavenSilverMons:: @ 8261591 .string "a NORMAL-type LAZY POKéMON, and a\l" .string "WATER- & ICE-type TRANSPORT POKéMON.$" -BattleFrontier_Lounge2_Text_PalaceMavenGoldMons:: @ 826166F +BattleFrontier_Lounge2_Text_PalaceMavenGoldMons:: .string "Have you battled the PALACE MAVEN\n" .string "when he's serious?\p" .string "When he throws his entire might into\n" @@ -301,14 +301,14 @@ BattleFrontier_Lounge2_Text_PalaceMavenGoldMons:: @ 826166F .string "a NORMAL-type LAZY POKéMON,\l" .string "and a WATER-type AURORA POKéMON.$" -BattleFrontier_Lounge2_Text_PyramidKingIsThere:: @ 826174D +BattleFrontier_Lounge2_Text_PyramidKingIsThere:: .string "Bet you didn't know this!\p" .string "One of those top TRAINERS that SCOTT\n" .string "calls the FRONTIER BRAINS is there.\p" .string "It's this fiery-hot TRAINER called\n" .string "the PYRAMID KING that runs the place.$" -BattleFrontier_Lounge2_Text_PyramidKingSilverMons:: @ 82617F9 +BattleFrontier_Lounge2_Text_PyramidKingSilverMons:: .string "Have you battled the PYRAMID KING\n" .string "before?\p" .string "When he's checking the foe's power,\n" @@ -317,7 +317,7 @@ BattleFrontier_Lounge2_Text_PyramidKingSilverMons:: @ 82617F9 .string "an ICE-type ICEBERG POKéMON,\l" .string "and a STEEL-type IRON POKéMON.$" -BattleFrontier_Lounge2_Text_PyramidKingGoldMons:: @ 82618C4 +BattleFrontier_Lounge2_Text_PyramidKingGoldMons:: .string "Have you battled the PYRAMID KING\n" .string "when he's serious?\p" .string "When he's pumped with hot power,\n" @@ -327,7 +327,7 @@ BattleFrontier_Lounge2_Text_PyramidKingGoldMons:: @ 82618C4 .string "and a FIRE- & FLYING-type FLAME\l" .string "POKéMON.$" -BattleFrontier_Lounge2_Text_DoubleBattleAdvice1:: @ 82619AC +BattleFrontier_Lounge2_Text_DoubleBattleAdvice1:: .string "Sure, there are several places where\n" .string "you can enter DOUBLE BATTLES.\p" .string "But the DOUBLE BATTLE ROOMS of\n" @@ -336,44 +336,44 @@ BattleFrontier_Lounge2_Text_DoubleBattleAdvice1:: @ 82619AC .string "how DOUBLE BATTLES are played here\l" .string "in the BATTLE FRONTIER.$" -BattleFrontier_Lounge2_Text_DoubleBattleAdvice2:: @ 8261A91 +BattleFrontier_Lounge2_Text_DoubleBattleAdvice2:: .string "Watch yourself in the battles here.\p" .string "I hear there are TRAINERS that have\n" .string "strategies they developed just for\l" .string "DOUBLE BATTLES.$" -BattleFrontier_Lounge2_Text_DoubleBattleAdvice3:: @ 8261B0C +BattleFrontier_Lounge2_Text_DoubleBattleAdvice3:: .string "Once you're confident and comfortable\n" .string "with DOUBLE BATTLES here, you should\l" .string "think about challenging other places\l" .string "offering DOUBLE BATTLES.$" -BattleFrontier_Lounge2_Text_MultiBattleAdvice:: @ 8261B95 +BattleFrontier_Lounge2_Text_MultiBattleAdvice:: .string "All sorts of TRAINERS gather in\n" .string "the BATTLE SALON.\p" .string "Just think--you may run into your\n" .string "friends or followers!\l" .string "You should look carefully!$" -BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice:: @ 8261C1A +BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice:: .string "If you're with a friend, head for the\n" .string "LINK MULTI BATTLE ROOM.\p" .string "If you play with a strong friend,\n" .string "you can expect to see tough foes!$" -BattleFrontier_Lounge2_Text_NewsGatheringPower:: @ 8261C9C +BattleFrontier_Lounge2_Text_NewsGatheringPower:: .string "What amazing news-gathering power!\n" .string "My mentor's like none other!$" -BattleFrontier_Lounge2_Text_AmazingPowersOfObservation:: @ 8261CDC +BattleFrontier_Lounge2_Text_AmazingPowersOfObservation:: .string "What amazing powers of observation!\n" .string "My mentor's like none other!$" -BattleFrontier_Lounge2_Text_AmazingPowerOfPersuasion:: @ 8261D1D +BattleFrontier_Lounge2_Text_AmazingPowerOfPersuasion:: .string "What amazing power of persuasion!\n" .string "My mentor's like none other!$" -BattleFrontier_Lounge2_Text_ThisPlaceIsScaringMe:: @ 8261D5C +BattleFrontier_Lounge2_Text_ThisPlaceIsScaringMe:: .string "…What is this place?\n" .string "It's scaring me…$" diff --git a/data/maps/BattleFrontier_Lounge3/scripts.inc b/data/maps/BattleFrontier_Lounge3/scripts.inc index d1b8d2024505..c0a941738581 100644 --- a/data/maps/BattleFrontier_Lounge3/scripts.inc +++ b/data/maps/BattleFrontier_Lounge3/scripts.inc @@ -1,11 +1,11 @@ -BattleFrontier_Lounge3_MapScripts:: @ 8261D82 +BattleFrontier_Lounge3_MapScripts:: .byte 0 .set BET_AMOUNT_5, 5 .set BET_AMOUNT_10, 10 .set BET_AMOUNT_15, 15 -BattleFrontier_Lounge3_EventScript_Gambler:: @ 8261D83 +BattleFrontier_Lounge3_EventScript_Gambler:: lock faceplayer goto_if_set FLAG_MET_BATTLE_FRONTIER_GAMBLER, BattleFrontier_Lounge3_EventScript_AlreadyMetGambler @@ -17,7 +17,7 @@ BattleFrontier_Lounge3_EventScript_Gambler:: @ 8261D83 goto BattleFrontier_Lounge3_EventScript_AskToEnterChallenge end -BattleFrontier_Lounge3_EventScript_AskToEnterChallenge:: @ 8261DAF +BattleFrontier_Lounge3_EventScript_AskToEnterChallenge:: special ShowFrontierGamblerLookingMessage waitmessage waitbuttonpress @@ -33,7 +33,7 @@ BattleFrontier_Lounge3_EventScript_AskToEnterChallenge:: @ 8261DAF goto BattleFrontier_Lounge3_EventScript_ChooseBetAmount end -BattleFrontier_Lounge3_EventScript_ChooseBetAmount:: @ 8261DE9 +BattleFrontier_Lounge3_EventScript_ChooseBetAmount:: multichoice 20, 4, MULTI_FRONTIER_GAMBLER_BET, FALSE copyvar VAR_FRONTIER_GAMBLER_AMOUNT_BET, VAR_RESULT switch VAR_RESULT @@ -44,22 +44,22 @@ BattleFrontier_Lounge3_EventScript_ChooseBetAmount:: @ 8261DE9 case MULTI_B_PRESSED, BattleFrontier_Lounge3_EventScript_CancelBet end -BattleFrontier_Lounge3_EventScript_Bet5:: @ 8261E30 +BattleFrontier_Lounge3_EventScript_Bet5:: setvar VAR_0x8008, BET_AMOUNT_5 goto BattleFrontier_Lounge3_EventScript_TryPlaceBet end -BattleFrontier_Lounge3_EventScript_Bet10:: @ 8261E3B +BattleFrontier_Lounge3_EventScript_Bet10:: setvar VAR_0x8008, BET_AMOUNT_10 goto BattleFrontier_Lounge3_EventScript_TryPlaceBet end -BattleFrontier_Lounge3_EventScript_Bet15:: @ 8261E46 +BattleFrontier_Lounge3_EventScript_Bet15:: setvar VAR_0x8008, BET_AMOUNT_15 goto BattleFrontier_Lounge3_EventScript_TryPlaceBet end -BattleFrontier_Lounge3_EventScript_TryPlaceBet:: @ 8261E51 +BattleFrontier_Lounge3_EventScript_TryPlaceBet:: specialvar VAR_TEMP_1, GetFrontierBattlePoints compare VAR_TEMP_1, VAR_0x8008 goto_if_ge BattleFrontier_Lounge3_EventScript_PlaceBet @@ -69,7 +69,7 @@ BattleFrontier_Lounge3_EventScript_TryPlaceBet:: @ 8261E51 goto BattleFrontier_Lounge3_EventScript_ChooseBetAmount end -BattleFrontier_Lounge3_EventScript_PlaceBet:: @ 8261E75 +BattleFrontier_Lounge3_EventScript_PlaceBet:: copyvar VAR_0x8004, VAR_0x8008 special TakeFrontierBattlePoints setvar VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET @@ -79,7 +79,7 @@ BattleFrontier_Lounge3_EventScript_PlaceBet:: @ 8261E75 goto BattleFrontier_Lounge3_EventScript_FinishBet end -BattleFrontier_Lounge3_EventScript_FinishBet:: @ 8261E96 +BattleFrontier_Lounge3_EventScript_FinishBet:: special ShowFrontierGamblerGoMessage waitmessage waitbuttonpress @@ -87,7 +87,7 @@ BattleFrontier_Lounge3_EventScript_FinishBet:: @ 8261E96 release end -BattleFrontier_Lounge3_EventScript_CountSilverSymbols:: @ 8261EA0 +BattleFrontier_Lounge3_EventScript_CountSilverSymbols:: setvar VAR_0x8004, 0 call_if_set FLAG_SYS_TOWER_SILVER, BattleFrontier_Lounge3_EventScript_AddSilverSymbolCount call_if_set FLAG_SYS_DOME_SILVER, BattleFrontier_Lounge3_EventScript_AddSilverSymbolCount @@ -98,23 +98,23 @@ BattleFrontier_Lounge3_EventScript_CountSilverSymbols:: @ 8261EA0 call_if_set FLAG_SYS_PYRAMID_SILVER, BattleFrontier_Lounge3_EventScript_AddSilverSymbolCount return -BattleFrontier_Lounge3_EventScript_AddSilverSymbolCount:: @ 8261EE5 +BattleFrontier_Lounge3_EventScript_AddSilverSymbolCount:: addvar VAR_0x8004, 1 return -BattleFrontier_Lounge3_EventScript_NotEnoughSilverSymbols:: @ 8261EEB +BattleFrontier_Lounge3_EventScript_NotEnoughSilverSymbols:: msgbox BattleFrontier_Lounge3_Text_CantYouSeeWereBusyHere, MSGBOX_DEFAULT goto BattleFrontier_Lounge3_EventScript_FaceOriginalDirection end -BattleFrontier_Lounge3_EventScript_AlreadyMetGambler:: @ 8261EF9 +BattleFrontier_Lounge3_EventScript_AlreadyMetGambler:: msgbox BattleFrontier_Lounge3_Text_Oh, MSGBOX_DEFAULT compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET goto_if_ge BattleFrontier_Lounge3_EventScript_CheckBetResults goto BattleFrontier_Lounge3_EventScript_AskToEnterChallenge end -BattleFrontier_Lounge3_EventScript_CheckBetResults:: @ 8261F12 +BattleFrontier_Lounge3_EventScript_CheckBetResults:: compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET goto_if_eq BattleFrontier_Lounge3_EventScript_ChallengeNotAttempted compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_WON @@ -122,7 +122,7 @@ BattleFrontier_Lounge3_EventScript_CheckBetResults:: @ 8261F12 goto BattleFrontier_Lounge3_EventScript_LostChallenge end -BattleFrontier_Lounge3_EventScript_WonChallenge:: @ 8261F2E +BattleFrontier_Lounge3_EventScript_WonChallenge:: msgbox BattleFrontier_Lounge3_Text_HelloChampHeresYourPoints, MSGBOX_DEFAULT compare VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_5 call_if_eq BattleFrontier_Lounge3_EventScript_RewardBet5 @@ -137,82 +137,82 @@ BattleFrontier_Lounge3_EventScript_WonChallenge:: @ 8261F2E release end -BattleFrontier_Lounge3_EventScript_LostChallenge:: @ 8261F71 +BattleFrontier_Lounge3_EventScript_LostChallenge:: msgbox BattleFrontier_Lounge3_Text_NiceTryCantReturnPoints, MSGBOX_DEFAULT setvar VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_WAITING release end -BattleFrontier_Lounge3_EventScript_RewardBet5:: @ 8261F80 +BattleFrontier_Lounge3_EventScript_RewardBet5:: buffernumberstring 0, (BET_AMOUNT_5 * 2) setvar VAR_0x8004, (BET_AMOUNT_5 * 2) return -BattleFrontier_Lounge3_EventScript_RewardBet10:: @ 8261F8A +BattleFrontier_Lounge3_EventScript_RewardBet10:: buffernumberstring 0, (BET_AMOUNT_10 * 2) setvar VAR_0x8004, (BET_AMOUNT_10 * 2) return -BattleFrontier_Lounge3_EventScript_RewardBet15:: @ 8261F94 +BattleFrontier_Lounge3_EventScript_RewardBet15:: buffernumberstring 0, (BET_AMOUNT_15 * 2) setvar VAR_0x8004, (BET_AMOUNT_15 * 2) return -BattleFrontier_Lounge3_EventScript_ChallengeNotAttempted:: @ 8261F9E +BattleFrontier_Lounge3_EventScript_ChallengeNotAttempted:: special ShowFrontierGamblerGoMessage waitmessage waitbuttonpress release end -BattleFrontier_Lounge3_EventScript_DeclineChallenge:: @ 8261FA5 +BattleFrontier_Lounge3_EventScript_DeclineChallenge:: msgbox BattleFrontier_Lounge3_Text_NotInterested, MSGBOX_DEFAULT release end -BattleFrontier_Lounge3_EventScript_CancelBet:: @ 8261FAF +BattleFrontier_Lounge3_EventScript_CancelBet:: special CloseBattlePointsWindow goto BattleFrontier_Lounge3_EventScript_DeclineChallenge end -BattleFrontier_Lounge3_EventScript_Man:: @ 8261FB8 +BattleFrontier_Lounge3_EventScript_Man:: msgbox BattleFrontier_Lounge3_Text_ShouldBeTakingChallenges, MSGBOX_NPC end -BattleFrontier_Lounge3_EventScript_Woman:: @ 8261FC1 +BattleFrontier_Lounge3_EventScript_Woman:: lock faceplayer msgbox BattleFrontier_Lounge3_Text_BackedWrongTrainer, MSGBOX_DEFAULT goto BattleFrontier_Lounge3_EventScript_FaceOriginalDirection end -BattleFrontier_Lounge3_EventScript_PokefanF:: @ 8261FD1 +BattleFrontier_Lounge3_EventScript_PokefanF:: lock faceplayer msgbox BattleFrontier_Lounge3_Text_KnowWinnerWhenISeeOne, MSGBOX_DEFAULT goto BattleFrontier_Lounge3_EventScript_FaceOriginalDirection end -BattleFrontier_Lounge3_EventScript_FatMan:: @ 8261FE1 +BattleFrontier_Lounge3_EventScript_FatMan:: lock faceplayer msgbox BattleFrontier_Lounge3_Text_TrainerGoodButRattled, MSGBOX_DEFAULT goto BattleFrontier_Lounge3_EventScript_FaceOriginalDirection end -BattleFrontier_Lounge3_EventScript_FaceOriginalDirection:: @ 8261FF1 +BattleFrontier_Lounge3_EventScript_FaceOriginalDirection:: closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end -BattleFrontier_Lounge3_Text_CantYouSeeWereBusyHere:: @ 8261FFE +BattleFrontier_Lounge3_Text_CantYouSeeWereBusyHere:: .string "…What's that you want?\p" .string "Can't you see we're kind of busy here?\n" .string "Can't your business wait till later?$" -BattleFrontier_Lounge3_Text_YouLookToughExplainGambling:: @ 8262061 +BattleFrontier_Lounge3_Text_YouLookToughExplainGambling:: .string "…Huh?\n" .string "You look to me like a tough TRAINER.\p" .string "Heheh…\n" @@ -232,201 +232,201 @@ BattleFrontier_Lounge3_Text_YouLookToughExplainGambling:: @ 8262061 .string "Sounds simple, huh?\n" .string "So, anyway…$" -BattleFrontier_Lounge3_Text_ChallengeBattleTowerSingle:: @ 8262261 +BattleFrontier_Lounge3_Text_ChallengeBattleTowerSingle:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be challenging the BATTLE\l" .string "TOWER's SINGLE BATTLE ROOMS.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleTowerDouble:: @ 826230D +BattleFrontier_Lounge3_Text_ChallengeBattleTowerDouble:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be challenging the BATTLE\l" .string "TOWER's DOUBLE BATTLE ROOMS.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleTowerMulti:: @ 82623B9 +BattleFrontier_Lounge3_Text_ChallengeBattleTowerMulti:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be challenging the BATTLE\l" .string "TOWER's MULTI BATTLE ROOMS.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleDomeSingle:: @ 8262464 +BattleFrontier_Lounge3_Text_ChallengeBattleDomeSingle:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "DOME's SINGLE BATTLE Tourney.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleDomeDouble:: @ 826250E +BattleFrontier_Lounge3_Text_ChallengeBattleDomeDouble:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "DOME's DOUBLE BATTLE Tourney.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleFactorySingle:: @ 82625B8 +BattleFrontier_Lounge3_Text_ChallengeBattleFactorySingle:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "FACTORY's Battle Swap Single Tourney.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleFactoryDouble:: @ 826266A +BattleFrontier_Lounge3_Text_ChallengeBattleFactoryDouble:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "FACTORY's Battle Swap Double Tourney.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattlePalaceSingle:: @ 826271C +BattleFrontier_Lounge3_Text_ChallengeBattlePalaceSingle:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be challenging the BATTLE\l" .string "PALACE's SINGLE BATTLE HALLS.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattlePalaceDouble:: @ 82627C9 +BattleFrontier_Lounge3_Text_ChallengeBattlePalaceDouble:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be challenging the BATTLE\l" .string "PALACE's DOUBLE BATTLE HALLS.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattleArena:: @ 8262876 +BattleFrontier_Lounge3_Text_ChallengeBattleArena:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "ARENA's Set KO Tourney.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattlePike:: @ 826291A +BattleFrontier_Lounge3_Text_ChallengeBattlePike:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE PIKE's\l" .string "Battle Choice.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_ChallengeBattlePyramid:: @ 82629BC +BattleFrontier_Lounge3_Text_ChallengeBattlePyramid:: .string "What I'm looking for is a TRAINER who's\n" .string "going to be entering the BATTLE\l" .string "PYRAMID's Battle Quest.\p" .string "But so far, I haven't seen a TRAINER\n" .string "that has that winning quality.$" -BattleFrontier_Lounge3_Text_HowAboutEnteringEventForMe:: @ 8262A60 +BattleFrontier_Lounge3_Text_HowAboutEnteringEventForMe:: .string "I'll see to it that you benefit, too.\n" .string "So how about it?\l" .string "How about entering that event for me?$" -BattleFrontier_Lounge3_Text_SpotMeSomeBattlePoints:: @ 8262ABD +BattleFrontier_Lounge3_Text_SpotMeSomeBattlePoints:: .string "All right, that's perfect.\n" .string "So, uh… How about spotting me some\l" .string "of your Battle Points?\p" .string "Trust me, I'll show you my gratitude\n" .string "afterward.$" -BattleFrontier_Lounge3_Text_HowMuchCanYouSpot:: @ 8262B42 +BattleFrontier_Lounge3_Text_HowMuchCanYouSpot:: .string "Great, great!\n" .string "So, how much can you spot me?$" -BattleFrontier_Lounge3_Text_YouDontHaveEnoughPoints:: @ 8262B6E +BattleFrontier_Lounge3_Text_YouDontHaveEnoughPoints:: .string "Oh, no, no, no!\n" .string "You don't have enough Battle Points!\p" .string "I wish you wouldn't monkey around and\n" .string "waste everyone's time!$" -BattleFrontier_Lounge3_Text_ThanksOffYouGo:: @ 8262BE0 +BattleFrontier_Lounge3_Text_ThanksOffYouGo:: .string "Heheh! Thanks much!\n" .string "So, off you go!$" -BattleFrontier_Lounge3_Text_GetToBattleTowerSingle:: @ 8262C04 +BattleFrontier_Lounge3_Text_GetToBattleTowerSingle:: .string "Get to the BATTLE TOWER's\n" .string "SINGLE BATTLE ROOMS pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleTowerDouble:: @ 8262C90 +BattleFrontier_Lounge3_Text_GetToBattleTowerDouble:: .string "Get to the BATTLE TOWER's\n" .string "DOUBLE BATTLE ROOMS pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleTowerMulti:: @ 8262D1C +BattleFrontier_Lounge3_Text_GetToBattleTowerMulti:: .string "Get to the BATTLE TOWER's\n" .string "MULTI BATTLE ROOMS pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleDomeSingle:: @ 8262DA7 +BattleFrontier_Lounge3_Text_GetToBattleDomeSingle:: .string "Get to the BATTLE DOME's\n" .string "SINGLE BATTLE Tourney pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleDomeDouble:: @ 8262E34 +BattleFrontier_Lounge3_Text_GetToBattleDomeDouble:: .string "Get to the BATTLE DOME's\n" .string "DOUBLE BATTLE Tourney pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleFactorySingle:: @ 8262EC1 +BattleFrontier_Lounge3_Text_GetToBattleFactorySingle:: .string "Get to the BATTLE FACTORY's\n" .string "Battle Swap Single Tourney pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleFactoryDouble:: @ 8262F56 +BattleFrontier_Lounge3_Text_GetToBattleFactoryDouble:: .string "Get to the BATTLE FACTORY's\n" .string "Battle Swap Double Tourney pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattlePalaceSingle:: @ 8262FEB +BattleFrontier_Lounge3_Text_GetToBattlePalaceSingle:: .string "Get to the BATTLE PALACE's\n" .string "SINGLE BATTLE HALLS pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattlePalaceDouble:: @ 8263078 +BattleFrontier_Lounge3_Text_GetToBattlePalaceDouble:: .string "Get to the BATTLE PALACE's\n" .string "DOUBLE BATTLE HALLS pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattleArena:: @ 8263105 +BattleFrontier_Lounge3_Text_GetToBattleArena:: .string "Get to the BATTLE ARENA's\n" .string "Set KO Tourney pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattlePike:: @ 826318C +BattleFrontier_Lounge3_Text_GetToBattlePike:: .string "Get to the BATTLE PIKE's\n" .string "Battle Choice pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_GetToBattlePyramid:: @ 8263211 +BattleFrontier_Lounge3_Text_GetToBattlePyramid:: .string "Get to the BATTLE PYRAMID's\n" .string "Battle Quest pronto!\p" .string "It's a must-win situation!\n" .string "Don't blow your chance!\l" .string "Both of our futures depend on you!$" -BattleFrontier_Lounge3_Text_NiceTryCantReturnPoints:: @ 8263298 +BattleFrontier_Lounge3_Text_NiceTryCantReturnPoints:: .string "Oh, it's you…\n" .string "Nice try…\p" .string "I hate to break it to you, but I can't\n" @@ -434,7 +434,7 @@ BattleFrontier_Lounge3_Text_NiceTryCantReturnPoints:: @ 8263298 .string "I guess we'll have to let it motivate\n" .string "us to try harder next time!$" -BattleFrontier_Lounge3_Text_HelloChampHeresYourPoints:: @ 8263334 +BattleFrontier_Lounge3_Text_HelloChampHeresYourPoints:: .string "Oh, yes!\n" .string "Hello there, champ!\p" .string "I knew you could!\n" @@ -443,36 +443,36 @@ BattleFrontier_Lounge3_Text_HelloChampHeresYourPoints:: @ 8263334 .string "I'll return your Battle Points and,\n" .string "of course, a little extra from me!$" -BattleFrontier_Lounge3_Text_ObtainedBattlePoints:: @ 82633D4 +BattleFrontier_Lounge3_Text_ObtainedBattlePoints:: .string "{PLAYER} obtained\n" .string "{STR_VAR_1} Battle Points.$" -BattleFrontier_Lounge3_Text_ThinkOfMeForAnotherChallenge:: @ 82633F2 +BattleFrontier_Lounge3_Text_ThinkOfMeForAnotherChallenge:: .string "If you're up for another challenge,\n" .string "please do think of me!$" -BattleFrontier_Lounge3_Text_NotInterested:: @ 826342D +BattleFrontier_Lounge3_Text_NotInterested:: .string "Not interested?! You shouldn't be\n" .string "so afraid to take a chance!$" -BattleFrontier_Lounge3_Text_Oh:: @ 826346B +BattleFrontier_Lounge3_Text_Oh:: .string "Oh…$" -BattleFrontier_Lounge3_Text_BackedWrongTrainer:: @ 826346F +BattleFrontier_Lounge3_Text_BackedWrongTrainer:: .string "I backed the wrong TRAINER again!\p" .string "Maybe I should be battling normally\n" .string "like everyone else…$" -BattleFrontier_Lounge3_Text_TrainerGoodButRattled:: @ 82634C9 +BattleFrontier_Lounge3_Text_TrainerGoodButRattled:: .string "That TRAINER…\p" .string "He's good, but he gets rattled too\n" .string "easily to survive the BATTLE DOME…$" -BattleFrontier_Lounge3_Text_KnowWinnerWhenISeeOne:: @ 826351D +BattleFrontier_Lounge3_Text_KnowWinnerWhenISeeOne:: .string "Giggle!\n" .string "I know a winner when I see one!$" -BattleFrontier_Lounge3_Text_ShouldBeTakingChallenges:: @ 8263545 +BattleFrontier_Lounge3_Text_ShouldBeTakingChallenges:: .string "Those TRAINERS…\n" .string "What are they doing?\l" .string "They should be taking challenges.$" diff --git a/data/maps/BattleFrontier_Lounge4/scripts.inc b/data/maps/BattleFrontier_Lounge4/scripts.inc index 6da60d30ff8c..9aa6c82049c6 100644 --- a/data/maps/BattleFrontier_Lounge4/scripts.inc +++ b/data/maps/BattleFrontier_Lounge4/scripts.inc @@ -1,27 +1,27 @@ -BattleFrontier_Lounge4_MapScripts:: @ 826358C +BattleFrontier_Lounge4_MapScripts:: .byte 0 -BattleFrontier_Lounge4_EventScript_Woman:: @ 826358D +BattleFrontier_Lounge4_EventScript_Woman:: msgbox BattleFrontier_Lounge4_Text_WonderIfInterviewsAiring, MSGBOX_NPC end -BattleFrontier_Lounge4_EventScript_Cook:: @ 8263596 +BattleFrontier_Lounge4_EventScript_Cook:: msgbox BattleFrontier_Lounge4_Text_IfIOpenedRestaurantHere, MSGBOX_NPC end -BattleFrontier_Lounge4_EventScript_Man:: @ 826359F +BattleFrontier_Lounge4_EventScript_Man:: msgbox BattleFrontier_Lounge4_Text_NeedBreatherAfterBattles, MSGBOX_NPC end -BattleFrontier_Lounge4_Text_WonderIfInterviewsAiring: @ 82635A8 +BattleFrontier_Lounge4_Text_WonderIfInterviewsAiring: .string "I wonder if they'll be airing interviews\n" .string "with tough TRAINERS today?$" -BattleFrontier_Lounge4_Text_IfIOpenedRestaurantHere: @ 82635EC +BattleFrontier_Lounge4_Text_IfIOpenedRestaurantHere: .string "If I opened a restaurant here,\n" .string "it'd make money for sure.$" -BattleFrontier_Lounge4_Text_NeedBreatherAfterBattles: @ 8263625 +BattleFrontier_Lounge4_Text_NeedBreatherAfterBattles: .string "Whew…\p" .string "I need to take a breather after\n" .string "some intense battles…\p" diff --git a/data/maps/BattleFrontier_Lounge5/scripts.inc b/data/maps/BattleFrontier_Lounge5/scripts.inc index 3df294fb17c9..61ac0cb9e247 100644 --- a/data/maps/BattleFrontier_Lounge5/scripts.inc +++ b/data/maps/BattleFrontier_Lounge5/scripts.inc @@ -1,7 +1,7 @@ -BattleFrontier_Lounge5_MapScripts:: @ 82645C5 +BattleFrontier_Lounge5_MapScripts:: .byte 0 -BattleFrontier_Lounge5_EventScript_NatureGirl:: @ 82645C6 +BattleFrontier_Lounge5_EventScript_NatureGirl:: lock faceplayer msgbox BattleFrontier_Lounge5_Text_NatureGirlGreeting, MSGBOX_YESNO @@ -22,184 +22,184 @@ BattleFrontier_Lounge5_EventScript_NatureGirl:: @ 82645C6 release end -BattleFrontier_Lounge5_EventScript_NatureGirlEgg:: @ 8264603 +BattleFrontier_Lounge5_EventScript_NatureGirlEgg:: msgbox BattleFrontier_Lounge5_Text_NatureGirlEgg, MSGBOX_DEFAULT release end -BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown:: @ 826460D +BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown:: msgbox BattleFrontier_Lounge5_Text_NatureGirlNoneShown, MSGBOX_DEFAULT release end -BattleFrontier_Lounge5_EventScript_Gentleman:: @ 8264617 +BattleFrontier_Lounge5_EventScript_Gentleman:: msgbox BattleFrontier_Lounge5_Text_LadyClaimsSheUnderstandsPokemon, MSGBOX_NPC end -BattleFrontier_Lounge5_EventScript_BlackBelt:: @ 8264620 +BattleFrontier_Lounge5_EventScript_BlackBelt:: msgbox BattleFrontier_Lounge5_Text_GirlSayingSomethingProfound, MSGBOX_NPC end -BattleFrontier_Lounge5_EventScript_LittleBoy:: @ 8264629 +BattleFrontier_Lounge5_EventScript_LittleBoy:: msgbox BattleFrontier_Lounge5_Text_GirlPlaysAtRedHouseALot, MSGBOX_NPC end -BattleFrontier_Lounge5_Text_NatureGirlGreeting:: @ 8264632 +BattleFrontier_Lounge5_Text_NatureGirlGreeting:: .string "Ehehe!\n" .string "I can tell what POKéMON are thinking!\p" .string "Please!\n" .string "Can I see your POKéMON?$" -BattleFrontier_Lounge5_Text_NatureGirlNoneShown:: @ 826467F +BattleFrontier_Lounge5_Text_NatureGirlNoneShown:: .string "Boo!\n" .string "Cheapie!$" -BattleFrontier_Lounge5_Text_NatureGirlHardy:: @ 826468D +BattleFrontier_Lounge5_Text_NatureGirlHardy:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "It will battle even if it has a lot\l" .string "of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlLonely:: @ 82646E5 +BattleFrontier_Lounge5_Text_NatureGirlLonely:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "But if it gets enough ouchies,\l" .string "it will hit back!$" -BattleFrontier_Lounge5_Text_NatureGirlBrave:: @ 8264741 +BattleFrontier_Lounge5_Text_NatureGirlBrave:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "But if it gets enough ouchies,\l" .string "it will worry about itself!$" -BattleFrontier_Lounge5_Text_NatureGirlAdamant:: @ 82647A4 +BattleFrontier_Lounge5_Text_NatureGirlAdamant:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "It will battle even if it has a lot\l" .string "of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlNaughty:: @ 82647FC +BattleFrontier_Lounge5_Text_NatureGirlNaughty:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "But if it gets enough ouchies,\l" .string "it will hit back!$" -BattleFrontier_Lounge5_Text_NatureGirlBold:: @ 8264858 +BattleFrontier_Lounge5_Text_NatureGirlBold:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "But if it gets enough ouchies,\l" .string "it will worry about itself!$" -BattleFrontier_Lounge5_Text_NatureGirlDocileNaiveQuietQuirky:: @ 82648BE +BattleFrontier_Lounge5_Text_NatureGirlDocileNaiveQuietQuirky:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "It will battle even if it has a lot\l" .string "of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlRelaxed:: @ 8264916 +BattleFrontier_Lounge5_Text_NatureGirlRelaxed:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "But if it gets enough ouchies,\l" .string "it will hit back!$" -BattleFrontier_Lounge5_Text_NatureGirlImpish:: @ 8264972 +BattleFrontier_Lounge5_Text_NatureGirlImpish:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "But if it gets enough ouchies,\l" .string "it will worry about itself!$" -BattleFrontier_Lounge5_Text_NatureGirlLax:: @ 82649D5 +BattleFrontier_Lounge5_Text_NatureGirlLax:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "It says it likes to be sneaky even\l" .string "if it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlTimid:: @ 8264A3F +BattleFrontier_Lounge5_Text_NatureGirlTimid:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "But if it gets enough ouchies,\l" .string "it will turn sneaky!$" -BattleFrontier_Lounge5_Text_NatureGirlHasty:: @ 8264A9B +BattleFrontier_Lounge5_Text_NatureGirlHasty:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "It will battle even if it has a lot\l" .string "of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlSerious:: @ 8264AF3 +BattleFrontier_Lounge5_Text_NatureGirlSerious:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "It says it likes to be sneaky even\l" .string "if it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlJolly:: @ 8264B5D +BattleFrontier_Lounge5_Text_NatureGirlJolly:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "But if it gets enough ouchies,\l" .string "it will worry about itself!$" -BattleFrontier_Lounge5_Text_NatureGirlModest:: @ 8264BC3 +BattleFrontier_Lounge5_Text_NatureGirlModest:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "It says it worries about itself whether\l" .string "or not it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlMild:: @ 8264C36 +BattleFrontier_Lounge5_Text_NatureGirlMild:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "But if it gets enough ouchies,\l" .string "it will turn sneaky!$" -BattleFrontier_Lounge5_Text_NatureGirlBashful:: @ 8264C95 +BattleFrontier_Lounge5_Text_NatureGirlBashful:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "It says it worries about itself even\l" .string "if it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlRash:: @ 8264D01 +BattleFrontier_Lounge5_Text_NatureGirlRash:: .string "Hmhm…\p" .string "This one says it likes to be sneaky!\n" .string "It says it likes to be sneaky even\l" .string "if it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlCalm:: @ 8264D6B +BattleFrontier_Lounge5_Text_NatureGirlCalm:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "It says it worries about itself even\l" .string "if it has a lot of ouchies!$" -BattleFrontier_Lounge5_Text_NatureGirlGentle:: @ 8264DD7 +BattleFrontier_Lounge5_Text_NatureGirlGentle:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "But if it gets enough ouchies,\l" .string "it will hit back!$" -BattleFrontier_Lounge5_Text_NatureGirlSassy:: @ 8264E33 +BattleFrontier_Lounge5_Text_NatureGirlSassy:: .string "Hmhm…\p" .string "This one says it likes to battle!\n" .string "But if it gets enough ouchies,\l" .string "it will turn sneaky!$" -BattleFrontier_Lounge5_Text_NatureGirlCareful:: @ 8264E8F +BattleFrontier_Lounge5_Text_NatureGirlCareful:: .string "Hmhm…\p" .string "This one says it looks after itself!\n" .string "But if it gets enough ouchies,\l" .string "it will turn sneaky!$" -BattleFrontier_Lounge5_Text_NatureGirlEgg:: @ 8264EEE +BattleFrontier_Lounge5_Text_NatureGirlEgg:: .string "That's silly! An EGG is asleep!\n" .string "I can't talk to it!$" -BattleFrontier_Lounge5_Text_LadyClaimsSheUnderstandsPokemon:: @ 8264F22 +BattleFrontier_Lounge5_Text_LadyClaimsSheUnderstandsPokemon:: .string "How charming!\n" .string "That little lady claims she can\l" .string "understand POKéMON!$" -BattleFrontier_Lounge5_Text_GirlSayingSomethingProfound:: @ 8264F64 +BattleFrontier_Lounge5_Text_GirlSayingSomethingProfound:: .string "I have this feeling that the little girl\n" .string "is saying something profound.$" -BattleFrontier_Lounge5_Text_GirlPlaysAtRedHouseALot:: @ 8264FAB +BattleFrontier_Lounge5_Text_GirlPlaysAtRedHouseALot:: .string "I know something!\p" .string "That little girl plays at the red house\n" .string "a lot!$" diff --git a/data/maps/BattleFrontier_Lounge6/scripts.inc b/data/maps/BattleFrontier_Lounge6/scripts.inc index 34ca000732ea..f88c69324d39 100644 --- a/data/maps/BattleFrontier_Lounge6/scripts.inc +++ b/data/maps/BattleFrontier_Lounge6/scripts.inc @@ -1,7 +1,7 @@ -BattleFrontier_Lounge6_MapScripts:: @ 8264FEC +BattleFrontier_Lounge6_MapScripts:: .byte 0 -BattleFrontier_Lounge6_EventScript_Trader:: @ 8264FED +BattleFrontier_Lounge6_EventScript_Trader:: lock faceplayer goto_if_set FLAG_BATTLE_FRONTIER_TRADE_DONE, BattleFrontier_Lounge6_EventScript_TradeCompleted @@ -32,23 +32,23 @@ BattleFrontier_Lounge6_EventScript_Trader:: @ 8264FED release end -BattleFrontier_Lounge6_EventScript_DeclineTrade:: @ 826506B +BattleFrontier_Lounge6_EventScript_DeclineTrade:: msgbox BattleFrontier_Lounge6_Text_WellThatsFineToo, MSGBOX_DEFAULT release end -BattleFrontier_Lounge6_EventScript_NotRequestedMon:: @ 8265075 +BattleFrontier_Lounge6_EventScript_NotRequestedMon:: bufferspeciesname 0, VAR_0x8009 msgbox BattleFrontier_Lounge6_Text_DontTradeForAnythingButMon, MSGBOX_DEFAULT release end -BattleFrontier_Lounge6_EventScript_TradeCompleted:: @ 8265083 +BattleFrontier_Lounge6_EventScript_TradeCompleted:: msgbox BattleFrontier_Lounge6_Text_SkittySoMuchCuterThanImagined, MSGBOX_DEFAULT release end -BattleFrontier_Lounge6_Text_WouldYouLikeToTrade: @ 826508D +BattleFrontier_Lounge6_Text_WouldYouLikeToTrade: .string "My POKéMON is a {STR_VAR_2}.\n" .string "Do you know it?\l" .string "It's quite cute and rather nice.\p" @@ -57,24 +57,24 @@ BattleFrontier_Lounge6_Text_WouldYouLikeToTrade: @ 826508D .string "Would you like to trade me a {STR_VAR_1}\n" .string "for my {STR_VAR_2}?$" -BattleFrontier_Lounge6_Text_PromiseIllBeGoodToIt: @ 8265128 +BattleFrontier_Lounge6_Text_PromiseIllBeGoodToIt: .string "Oh, it's adorable!\n" .string "Thank you!\l" .string "I promise I'll be good to it!\p" .string "Oh! I hope you'll be good to\n" .string "my {STR_VAR_2}, too!$" -BattleFrontier_Lounge6_Text_DontTradeForAnythingButMon: @ 826518D +BattleFrontier_Lounge6_Text_DontTradeForAnythingButMon: .string "Oh, I'm sorry!\n" .string "I don't intend to trade for anything\l" .string "but a {STR_VAR_1}.$" -BattleFrontier_Lounge6_Text_WellThatsFineToo: @ 82651CB +BattleFrontier_Lounge6_Text_WellThatsFineToo: .string "Oh, you won't?\n" .string "Well, that's fine, too.\l" .string "Please come visit us again.$" -BattleFrontier_Lounge6_Text_SkittySoMuchCuterThanImagined: @ 826520E +BattleFrontier_Lounge6_Text_SkittySoMuchCuterThanImagined: .string "Giggle!\n" .string "A SKITTY is so much cuter than I had\l" .string "imagined. I'm delighted!$" diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc index 3dd8fc98cfb4..2878444706bb 100644 --- a/data/maps/BattleFrontier_Lounge7/scripts.inc +++ b/data/maps/BattleFrontier_Lounge7/scripts.inc @@ -1,7 +1,7 @@ -BattleFrontier_Lounge7_MapScripts:: @ 8265254 +BattleFrontier_Lounge7_MapScripts:: .byte 0 -BattleFrontier_Lounge7_EventScript_LeftMoveTutor:: @ 8265255 +BattleFrontier_Lounge7_EventScript_LeftMoveTutor:: lock faceplayer setvar VAR_TEMP_C, SCROLL_MULTI_BF_MOVE_TUTOR_1 @@ -11,12 +11,12 @@ BattleFrontier_Lounge7_EventScript_LeftMoveTutor:: @ 8265255 goto BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove end -BattleFrontier_Lounge7_EventScript_AlreadyMetLeftTutor:: @ 8265276 +BattleFrontier_Lounge7_EventScript_AlreadyMetLeftTutor:: msgbox BattleFrontier_Lounge7_Text_LeftTutorWelcomeBack, MSGBOX_DEFAULT goto BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove end -BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove:: @ 8265284 +BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove:: message BattleFrontier_Lounge7_Text_TeachWhichMove waitmessage special ShowBattlePointsWindow @@ -41,7 +41,7 @@ BattleFrontier_Lounge7_EventScript_ChooseLeftTutorMove:: @ 8265284 case MULTI_B_PRESSED, BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect end -BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove:: @ 826532F +BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove:: message BattleFrontier_Lounge7_Text_TeachWhichMove waitmessage setvar VAR_TEMP_E, 0 @@ -65,57 +65,57 @@ BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove:: @ 826532F case MULTI_B_PRESSED, BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect end -BattleFrontier_Lounge7_EventScript_Softboiled:: @ 82653D7 +BattleFrontier_Lounge7_EventScript_Softboiled:: setvar VAR_0x8008, 16 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_SeismicToss:: @ 82653E2 +BattleFrontier_Lounge7_EventScript_SeismicToss:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_DreamEater:: @ 82653ED +BattleFrontier_Lounge7_EventScript_DreamEater:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_MegaPunch:: @ 82653F8 +BattleFrontier_Lounge7_EventScript_MegaPunch:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_MegaKick:: @ 8265403 +BattleFrontier_Lounge7_EventScript_MegaKick:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_BodySlam:: @ 826540E +BattleFrontier_Lounge7_EventScript_BodySlam:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_RockSlide:: @ 8265419 +BattleFrontier_Lounge7_EventScript_RockSlide:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_Counter:: @ 8265424 +BattleFrontier_Lounge7_EventScript_Counter:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_ThunderWave:: @ 826542F +BattleFrontier_Lounge7_EventScript_ThunderWave:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_SwordsDance:: @ 826543A +BattleFrontier_Lounge7_EventScript_SwordsDance:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_RightMoveTutor:: @ 8265445 +BattleFrontier_Lounge7_EventScript_RightMoveTutor:: lock faceplayer setvar VAR_TEMP_C, SCROLL_MULTI_BF_MOVE_TUTOR_2 @@ -125,12 +125,12 @@ BattleFrontier_Lounge7_EventScript_RightMoveTutor:: @ 8265445 goto BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove end -BattleFrontier_Lounge7_EventScript_AlreadyMetRightTutor:: @ 8265466 +BattleFrontier_Lounge7_EventScript_AlreadyMetRightTutor:: msgbox BattleFrontier_Lounge7_Text_RightTutorWelcomeBack, MSGBOX_DEFAULT goto BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove end -BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove:: @ 8265474 +BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove:: message BattleFrontier_Lounge7_Text_TeachWhichMove waitmessage special ShowBattlePointsWindow @@ -155,7 +155,7 @@ BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove:: @ 8265474 case MULTI_B_PRESSED, BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect end -BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove:: @ 826551F +BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove:: message BattleFrontier_Lounge7_Text_TeachWhichMove waitmessage setvar VAR_TEMP_E, 1 @@ -179,64 +179,64 @@ BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove:: @ 826551F case MULTI_B_PRESSED, BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect end -BattleFrontier_Lounge7_EventScript_DefenseCurl:: @ 82655C7 +BattleFrontier_Lounge7_EventScript_DefenseCurl:: setvar VAR_0x8008, 16 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_Snore:: @ 82655D2 +BattleFrontier_Lounge7_EventScript_Snore:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_MudSlap:: @ 82655DD +BattleFrontier_Lounge7_EventScript_MudSlap:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_Swift:: @ 82655E8 +BattleFrontier_Lounge7_EventScript_Swift:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_IcyWind:: @ 82655F3 +BattleFrontier_Lounge7_EventScript_IcyWind:: setvar VAR_0x8008, 24 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_Endure:: @ 82655FE +BattleFrontier_Lounge7_EventScript_Endure:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_PsychUp:: @ 8265609 +BattleFrontier_Lounge7_EventScript_PsychUp:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_IcePunch:: @ 8265614 +BattleFrontier_Lounge7_EventScript_IcePunch:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_ThunderPunch:: @ 826561F +BattleFrontier_Lounge7_EventScript_ThunderPunch:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_FirePunch:: @ 826562A +BattleFrontier_Lounge7_EventScript_FirePunch:: setvar VAR_0x8008, 48 goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection end -BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect:: @ 8265635 +BattleFrontier_Lounge7_EventScript_ExitTutorMoveSelect:: special CloseBattleFrontierTutorWindow special CloseBattlePointsWindow msgbox BattleFrontier_Lounge7_Text_YouDontWantTo, MSGBOX_DEFAULT release end -BattleFrontier_Lounge7_EventScript_CancelChooseMon:: @ 8265645 +BattleFrontier_Lounge7_EventScript_CancelChooseMon:: msgbox BattleFrontier_Lounge7_Text_YouDontWantTo, MSGBOX_DEFAULT release end @@ -245,7 +245,7 @@ BattleFrontier_Lounge7_EventScript_CancelChooseMon:: @ 8265645 @ VAR_TEMP_C is the scroll multichoice ID @ VAR_TEMP_D is the move selection @ VAR_TEMP_E is which move tutor was spoken to -BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: @ 826564F +BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: copyvar VAR_0x8004, VAR_TEMP_D copyvar VAR_0x8005, VAR_TEMP_E special BufferBattleFrontierTutorMoveName @@ -261,7 +261,7 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: @ 826564F goto BattleFrontier_Lounge7_EventScript_ChooseNewMove end -BattleFrontier_Lounge7_EventScript_TeachTutorMove:: @ 8265696 +BattleFrontier_Lounge7_EventScript_TeachTutorMove:: msgbox BattleFrontier_Lounge7_Text_TeachMoveToWhichMon, MSGBOX_DEFAULT special GetBattleFrontierTutorMoveIndex fadescreen FADE_TO_BLACK @@ -277,21 +277,21 @@ BattleFrontier_Lounge7_EventScript_TeachTutorMove:: @ 8265696 release end -BattleFrontier_Lounge7_EventScript_ChooseNewMove:: @ 82656CA +BattleFrontier_Lounge7_EventScript_ChooseNewMove:: compare VAR_TEMP_E, 0 goto_if_eq BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove goto BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove end -BattleFrontier_Lounge7_EventScript_Sailor:: @ 82656DB +BattleFrontier_Lounge7_EventScript_Sailor:: msgbox BattleFrontier_Lounge7_Text_ThinkLadiesDontGetAlong, MSGBOX_NPC end -BattleFrontier_Lounge7_EventScript_Gentleman:: @ 82656E4 +BattleFrontier_Lounge7_EventScript_Gentleman:: msgbox BattleFrontier_Lounge7_Text_LadiesWereStrongAndBeautiful, MSGBOX_NPC end -BattleFrontier_Lounge7_Text_LeftTutorIntro: @ 82656ED +BattleFrontier_Lounge7_Text_LeftTutorIntro: .string "Buhahaha!\p" .string "You couldn't tell it from looking now,\n" .string "but I used to be one tough TRAINER.\p" @@ -309,38 +309,38 @@ BattleFrontier_Lounge7_Text_LeftTutorIntro: @ 82656ED .string "How about paying for the moves I teach\l" .string "with a wee bit of Battle Points?$" -BattleFrontier_Lounge7_Text_LeftTutorWelcomeBack: @ 82658AB +BattleFrontier_Lounge7_Text_LeftTutorWelcomeBack: .string "Buhahaha!\p" .string "Are you back to learn special and\n" .string "yet cute POKéMON moves?$" -BattleFrontier_Lounge7_Text_TeachWhichMove: @ 82658EF +BattleFrontier_Lounge7_Text_TeachWhichMove: .string "Fine, fine, look here!\n" .string "Which move should I teach?$" -BattleFrontier_Lounge7_Text_MoveWillBeXBattlePoints: @ 8265921 +BattleFrontier_Lounge7_Text_MoveWillBeXBattlePoints: .string "The move {STR_VAR_1}, is it?\n" .string "That will be {STR_VAR_2} Battle Points, okay?$" -BattleFrontier_Lounge7_Text_TeachMoveToWhichMon: @ 826595A +BattleFrontier_Lounge7_Text_TeachMoveToWhichMon: .string "Fine, fine, now pick the POKéMON\n" .string "I should teach the move to.$" -BattleFrontier_Lounge7_Text_HaventGotEnoughPoints: @ 8265997 +BattleFrontier_Lounge7_Text_HaventGotEnoughPoints: .string "What the…\n" .string "You haven't got enough Battle Points!$" -BattleFrontier_Lounge7_Text_IllTakeBattlePoints: @ 82659C7 +BattleFrontier_Lounge7_Text_IllTakeBattlePoints: .string "Do you see how skilled I am now?\n" .string "I'll take your Battle Points, thanks!$" -BattleFrontier_Lounge7_Text_YouDontWantTo: @ 8265A0E +BattleFrontier_Lounge7_Text_YouDontWantTo: .string "What's that?\n" .string "You don't want to…\p" .string "If you want to see how skilled I am,\n" .string "you come see me anytime!$" -BattleFrontier_Lounge7_Text_RightTutorIntro: @ 8265A6C +BattleFrontier_Lounge7_Text_RightTutorIntro: .string "Ihihihi!\p" .string "I know it's hard to see now, but I used\n" .string "to be one fantastic TRAINER.\p" @@ -358,19 +358,19 @@ BattleFrontier_Lounge7_Text_RightTutorIntro: @ 8265A6C .string "How about paying for the moves I teach\l" .string "with a wee bit of Battle Points?$" -BattleFrontier_Lounge7_Text_RightTutorWelcomeBack: @ 8265C2C +BattleFrontier_Lounge7_Text_RightTutorWelcomeBack: .string "Ihihihi!\p" .string "Have you come to learn hard and\n" .string "yet pretty POKéMON moves?$" -BattleFrontier_Lounge7_Text_ThinkLadiesDontGetAlong: @ 8265C6F +BattleFrontier_Lounge7_Text_ThinkLadiesDontGetAlong: .string "Those ladies, the way they bad-mouth\n" .string "each other, you probably think that\l" .string "they don't get along.\p" .string "But if that were true, they wouldn't\n" .string "stay out here together, would they?$" -BattleFrontier_Lounge7_Text_LadiesWereStrongAndBeautiful: @ 8265D17 +BattleFrontier_Lounge7_Text_LadiesWereStrongAndBeautiful: .string "When I was just a wee YOUNGSTER,\n" .string "those ladies were strong and beautiful.\p" .string "They were idols among us TRAINERS.\p" @@ -382,102 +382,102 @@ BattleFrontier_Lounge7_Text_LadiesWereStrongAndBeautiful: @ 8265D17 .string "but feel this…\p" .string "Time is so cruel…$" -BattleFrontier_Lounge7_Text_SoftboiledDesc:: @ 8265E30 +BattleFrontier_Lounge7_Text_SoftboiledDesc:: .string "Recovers up to\n" .string "half the user's\n" .string "maximum HP.$" -BattleFrontier_Lounge7_Text_SeismicTossDesc:: @ 8265E5B +BattleFrontier_Lounge7_Text_SeismicTossDesc:: .string "Inflicts damage\n" .string "identical to the\n" .string "user's level.$" -BattleFrontier_Lounge7_Text_DreamEaterDesc:: @ 8265E8A +BattleFrontier_Lounge7_Text_DreamEaterDesc:: .string "Recovers half the\n" .string "damage inflicted\n" .string "on a sleeping foe.$" -BattleFrontier_Lounge7_Text_MegaPunchDesc:: @ 8265EC0 +BattleFrontier_Lounge7_Text_MegaPunchDesc:: .string "A strong punch\n" .string "thrown with\n" .string "incredible power.$" -BattleFrontier_Lounge7_Text_MegaKickDesc:: @ 8265EED +BattleFrontier_Lounge7_Text_MegaKickDesc:: .string "An extremely\n" .string "powerful kick with\n" .string "intense force.$" -BattleFrontier_Lounge7_Text_BodySlamDesc:: @ 8265F1C +BattleFrontier_Lounge7_Text_BodySlamDesc:: .string "A full-body slam\n" .string "that may cause\n" .string "paralysis.$" -BattleFrontier_Lounge7_Text_RockSlideDesc:: @ 8265F47 +BattleFrontier_Lounge7_Text_RockSlideDesc:: .string "Large boulders\n" .string "are hurled. May\n" .string "cause flinching.$" -BattleFrontier_Lounge7_Text_CounterDesc:: @ 8265F77 +BattleFrontier_Lounge7_Text_CounterDesc:: .string "Retaliates any\n" .string "physical hit with\n" .string "double the power.$" -BattleFrontier_Lounge7_Text_ThunderWaveDesc:: @ 8265FAA +BattleFrontier_Lounge7_Text_ThunderWaveDesc:: .string "A weak jolt of\n" .string "electricity that\n" .string "paralyzes the foe.$" -BattleFrontier_Lounge7_Text_SwordsDanceDesc:: @ 8265FDD +BattleFrontier_Lounge7_Text_SwordsDanceDesc:: .string "A fighting dance\n" .string "that sharply\n" .string "raises ATTACK.$" -BattleFrontier_Lounge7_Text_DefenseCurlDesc:: @ 826600A +BattleFrontier_Lounge7_Text_DefenseCurlDesc:: .string "Curls up to con-\n" .string "ceal weak spots\n" .string "and raise DEFENSE.$" -BattleFrontier_Lounge7_Text_SnoreDesc:: @ 826603E +BattleFrontier_Lounge7_Text_SnoreDesc:: .string "A loud attack\n" .string "that can be used\n" .string "only while asleep.$" -BattleFrontier_Lounge7_Text_MudSlapDesc:: @ 8266070 +BattleFrontier_Lounge7_Text_MudSlapDesc:: .string "Hurls mud in the\n" .string "foe's face to re-\n" .string "duce its accuracy.$" -BattleFrontier_Lounge7_Text_SwiftDesc:: @ 82660A6 +BattleFrontier_Lounge7_Text_SwiftDesc:: .string "Sprays star-\n" .string "shaped rays\n" .string "that never miss.$" -BattleFrontier_Lounge7_Text_IcyWindDesc:: @ 82660D0 +BattleFrontier_Lounge7_Text_IcyWindDesc:: .string "A chilling attack\n" .string "that lowers the\n" .string "foe's SPEED.$" -BattleFrontier_Lounge7_Text_EndureDesc:: @ 82660FF +BattleFrontier_Lounge7_Text_EndureDesc:: .string "Endures any at-\n" .string "tack for 1 turn,\n" .string "leaving 1HP.$" -BattleFrontier_Lounge7_Text_PsychUpDesc:: @ 826612D +BattleFrontier_Lounge7_Text_PsychUpDesc:: .string "Copies the foe's\n" .string "effect(s) and\n" .string "gives to the user.$" -BattleFrontier_Lounge7_Text_IcePunchDesc:: @ 826615F +BattleFrontier_Lounge7_Text_IcePunchDesc:: .string "An icy punch\n" .string "that may\n" .string "freeze the foe.$" -BattleFrontier_Lounge7_Text_ThunderPunchDesc:: @ 8266185 +BattleFrontier_Lounge7_Text_ThunderPunchDesc:: .string "An electrified\n" .string "punch that may\n" .string "paralyze the foe.$" -BattleFrontier_Lounge7_Text_FirePunchDesc:: @ 82661B5 +BattleFrontier_Lounge7_Text_FirePunchDesc:: .string "A fiery punch\n" .string "that may burn\n" .string "the foe.$" diff --git a/data/maps/BattleFrontier_Lounge8/scripts.inc b/data/maps/BattleFrontier_Lounge8/scripts.inc index 2615af743959..8f4a443d5700 100644 --- a/data/maps/BattleFrontier_Lounge8/scripts.inc +++ b/data/maps/BattleFrontier_Lounge8/scripts.inc @@ -1,19 +1,19 @@ -BattleFrontier_Lounge8_MapScripts:: @ 82676C9 +BattleFrontier_Lounge8_MapScripts:: .byte 0 -BattleFrontier_Lounge8_EventScript_Man:: @ 82676CA +BattleFrontier_Lounge8_EventScript_Man:: msgbox BattleFrontier_Lounge8_Text_WhatATrainerNeeds, MSGBOX_NPC end -BattleFrontier_Lounge8_EventScript_Woman:: @ 82676D3 +BattleFrontier_Lounge8_EventScript_Woman:: msgbox BattleFrontier_Lounge8_Text_KnowAboutFrontierBrains, MSGBOX_NPC end -BattleFrontier_Lounge8_EventScript_NinjaBoy:: @ 82676DC +BattleFrontier_Lounge8_EventScript_NinjaBoy:: msgbox BattleFrontier_Lounge8_Text_ToldMeIHaveTalentForBattling, MSGBOX_NPC end -BattleFrontier_Lounge8_Text_WhatATrainerNeeds: @ 82676E5 +BattleFrontier_Lounge8_Text_WhatATrainerNeeds: .string "What a TRAINER needs…\p" .string "Knowledge…\n" .string "Strategy…\l" @@ -27,14 +27,14 @@ BattleFrontier_Lounge8_Text_WhatATrainerNeeds: @ 82676E5 .string "Huh? POKéMON?\n" .string "What's that?$" -BattleFrontier_Lounge8_Text_KnowAboutFrontierBrains: @ 826779C +BattleFrontier_Lounge8_Text_KnowAboutFrontierBrains: .string "Do you know about the FRONTIER\n" .string "BRAINS?\p" .string "That's what SCOTT calls the seven\n" .string "special TRAINERS that run the seven\l" .string "facilities in the BATTLE FRONTIER.$" -BattleFrontier_Lounge8_Text_ToldMeIHaveTalentForBattling: @ 826782C +BattleFrontier_Lounge8_Text_ToldMeIHaveTalentForBattling: .string "At the BATTLE TOWER, an older girl\n" .string "told me that I have a lot of talent\l" .string "for battling!\p" diff --git a/data/maps/BattleFrontier_Lounge9/scripts.inc b/data/maps/BattleFrontier_Lounge9/scripts.inc index cba75ee777d6..b955a81e3602 100644 --- a/data/maps/BattleFrontier_Lounge9/scripts.inc +++ b/data/maps/BattleFrontier_Lounge9/scripts.inc @@ -1,3 +1,3 @@ -BattleFrontier_Lounge9_MapScripts:: @ 82678F8 +BattleFrontier_Lounge9_MapScripts:: .byte 0 diff --git a/data/maps/BattleFrontier_Mart/scripts.inc b/data/maps/BattleFrontier_Mart/scripts.inc index 4e60e9ce541a..6afe6a0186b0 100644 --- a/data/maps/BattleFrontier_Mart/scripts.inc +++ b/data/maps/BattleFrontier_Mart/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_OLD_WOMAN, 2 -BattleFrontier_Mart_MapScripts:: @ 8267ACB +BattleFrontier_Mart_MapScripts:: .byte 0 -BattleFrontier_Mart_EventScript_Clerk:: @ 8267ACC +BattleFrontier_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -14,7 +14,7 @@ BattleFrontier_Mart_EventScript_Clerk:: @ 8267ACC end .align 2 -BattleFrontier_Mart_Pokemart: @ 8267AE4 +BattleFrontier_Mart_Pokemart: .2byte ITEM_ULTRA_BALL .2byte ITEM_HYPER_POTION .2byte ITEM_MAX_POTION @@ -32,11 +32,11 @@ BattleFrontier_Mart_Pokemart: @ 8267AE4 release end -BattleFrontier_Mart_EventScript_OldMan:: @ 8267B02 +BattleFrontier_Mart_EventScript_OldMan:: msgbox BattleFrontier_Mart_Text_ChaperonGrandson, MSGBOX_NPC end -BattleFrontier_Mart_EventScript_OldWoman:: @ 8267B0B +BattleFrontier_Mart_EventScript_OldWoman:: lock applymovement LOCALID_OLD_WOMAN, Common_Movement_FaceDown waitmovement 0 @@ -44,23 +44,23 @@ BattleFrontier_Mart_EventScript_OldWoman:: @ 8267B0B release end -BattleFrontier_Mart_EventScript_Boy:: @ 8267B20 +BattleFrontier_Mart_EventScript_Boy:: msgbox BattleFrontier_Mart_Text_FacilitiesDontAllowItems, MSGBOX_NPC end -BattleFrontier_Mart_Text_ChaperonGrandson: @ 8267B29 +BattleFrontier_Mart_Text_ChaperonGrandson: .string "We came here to chaperon our\n" .string "grandson.\p" .string "But since we're here, we thought\n" .string "we should get some souvenirs.$" -BattleFrontier_Mart_Text_ProteinMakeNiceGift: @ 8267B8F +BattleFrontier_Mart_Text_ProteinMakeNiceGift: .string "Dear, what do you think of this?\n" .string "Wouldn't this make a nice gift?\p" .string "It's…PRO…TE…IN?\n" .string "It sounds delicious, doesn't it?$" -BattleFrontier_Mart_Text_FacilitiesDontAllowItems: @ 8267C01 +BattleFrontier_Mart_Text_FacilitiesDontAllowItems: .string "A lot of the BATTLE FRONTIER's\n" .string "facilities don't allow the use of items\l" .string "during battles.\p" diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc index 8e891dd32cb0..8166f91869f6 100644 --- a/data/maps/BattleFrontier_OutsideEast/scripts.inc +++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc @@ -1,74 +1,74 @@ .set LOCALID_SUDOWOODO, 14 -BattleFrontier_OutsideEast_MapScripts:: @ 8242C04 +BattleFrontier_OutsideEast_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_OutsideEast_OnResume map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_OutsideEast_OnTransition .byte 0 -BattleFrontier_OutsideEast_OnResume: @ 8242C0F +BattleFrontier_OutsideEast_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, BattleFrontier_OutsideEast_EventScript_TryRemoveSudowoodo end -BattleFrontier_OutsideEast_EventScript_TryRemoveSudowoodo:: @ 8242C19 +BattleFrontier_OutsideEast_EventScript_TryRemoveSudowoodo:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -BattleFrontier_OutsideEast_OnTransition: @ 8242C2D +BattleFrontier_OutsideEast_OnTransition: setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0 setflag FLAG_HIDE_BATTLE_TOWER_REPORTER call_if_unset FLAG_DEFEATED_SUDOWOODO, BattleFrontier_OutsideEast_EventScript_ShowSudowoodo end -BattleFrontier_OutsideEast_EventScript_ShowSudowoodo:: @ 8242C3F +BattleFrontier_OutsideEast_EventScript_ShowSudowoodo:: clearflag FLAG_HIDE_BATTLE_FRONTIER_SUDOWOODO return -BattleFrontier_OutsideEast_EventScript_BattleTowerSign:: @ 8242C43 +BattleFrontier_OutsideEast_EventScript_BattleTowerSign:: msgbox BattleFrontier_OutsideEast_Text_BattleTowerSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_BattlePalaceSign:: @ 8242C4C +BattleFrontier_OutsideEast_EventScript_BattlePalaceSign:: msgbox BattleFrontier_OutsideEast_Text_BattlePalaceSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_BattleArenaSign:: @ 8242C55 +BattleFrontier_OutsideEast_EventScript_BattleArenaSign:: msgbox BattleFrontier_OutsideEast_Text_BattleArenaSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_BattlePyramidSign:: @ 8242C5E +BattleFrontier_OutsideEast_EventScript_BattlePyramidSign:: msgbox BattleFrontier_OutsideEast_Text_BattlePyramidSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_NinjaBoy:: @ 8242C67 +BattleFrontier_OutsideEast_EventScript_NinjaBoy:: msgbox BattleFrontier_OutsideEast_Text_BattleTowerFeelsSpecial, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Man1:: @ 8242C70 +BattleFrontier_OutsideEast_EventScript_Man1:: msgbox BattleFrontier_OutsideEast_Text_ConquerLeagueAndFrontier, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Hiker:: @ 8242C79 +BattleFrontier_OutsideEast_EventScript_Hiker:: msgbox BattleFrontier_OutsideEast_Text_PyramidTooHarsh, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_HexManiac:: @ 8242C82 +BattleFrontier_OutsideEast_EventScript_HexManiac:: msgbox BattleFrontier_OutsideEast_Text_ThriveInDarkness, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_BlackBelt1:: @ 8242C8B +BattleFrontier_OutsideEast_EventScript_BlackBelt1:: msgbox BattleFrontier_OutsideEast_Text_PutTogetherUltimateTeam, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Cook:: @ 8242C94 +BattleFrontier_OutsideEast_EventScript_Cook:: lock msgbox BattleFrontier_OutsideEast_Text_BelieveInYouBuddy, MSGBOX_DEFAULT release end -BattleFrontier_OutsideEast_EventScript_Zigzagoon:: @ 8242C9F +BattleFrontier_OutsideEast_EventScript_Zigzagoon:: lock faceplayer waitse @@ -78,33 +78,33 @@ BattleFrontier_OutsideEast_EventScript_Zigzagoon:: @ 8242C9F release end -BattleFrontier_OutsideEast_EventScript_RichBoy:: @ 8242CB2 +BattleFrontier_OutsideEast_EventScript_RichBoy:: msgbox BattleFrontier_OutsideEast_Text_PeopleCallMeBusybody, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_ExpertF:: @ 8242CBB +BattleFrontier_OutsideEast_EventScript_ExpertF:: msgbox BattleFrontier_OutsideEast_Text_OnceBeatGymLeader, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_TriathleteF:: @ 8242CC4 +BattleFrontier_OutsideEast_EventScript_TriathleteF:: msgbox BattleFrontier_OutsideEast_Text_FastOnBikeAndBattles, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Twin:: @ 8242CCD +BattleFrontier_OutsideEast_EventScript_Twin:: msgbox BattleFrontier_OutsideEast_Text_BetterThanDaddyAtPokemon, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Man2:: @ 8242CD6 +BattleFrontier_OutsideEast_EventScript_Man2:: lock msgbox BattleFrontier_OutsideEast_Text_GoRackUpSomeWinsForDaddy, MSGBOX_DEFAULT release end -BattleFrontier_OutsideEast_EventScript_TriathleteM:: @ 8242CE1 +BattleFrontier_OutsideEast_EventScript_TriathleteM:: msgbox BattleFrontier_OutsideEast_Text_DidScottBringYouHere, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Sudowoodo:: @ 8242CEA +BattleFrontier_OutsideEast_EventScript_Sudowoodo:: lock faceplayer waitse @@ -114,7 +114,7 @@ BattleFrontier_OutsideEast_EventScript_Sudowoodo:: @ 8242CEA release end -BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: @ 8242CFC +BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: lock faceplayer special DoWateringBerryTreeAnim @@ -145,12 +145,12 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: @ 8242CFC release end -BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo:: @ 8242D60 +BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo:: setflag FLAG_DEFEATED_SUDOWOODO goto Common_EventScript_RemoveStaticPokemon end -BattleFrontier_OutsideEast_Movement_SudowoodoShake: @ 8242D69 +BattleFrontier_OutsideEast_Movement_SudowoodoShake: face_right delay_8 face_down @@ -168,59 +168,59 @@ BattleFrontier_OutsideEast_Movement_SudowoodoShake: @ 8242D69 face_down step_end -BattleFrontier_OutsideEast_EventScript_Maniac1:: @ 8242D79 +BattleFrontier_OutsideEast_EventScript_Maniac1:: msgbox BattleFrontier_OutsideEast_Text_HeardPrettyGirlAtBattleArena, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Girl:: @ 8242D82 +BattleFrontier_OutsideEast_EventScript_Girl:: msgbox BattleFrontier_OutsideEast_Text_SometimesImportantOldManInThere, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_PsychicM:: @ 8242D8B +BattleFrontier_OutsideEast_EventScript_PsychicM:: msgbox BattleFrontier_OutsideEast_Text_LegendOfBattlePyramid, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Man3:: @ 8242D94 +BattleFrontier_OutsideEast_EventScript_Man3:: msgbox BattleFrontier_OutsideEast_Text_GotWipedOut, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Woman1:: @ 8242D9D +BattleFrontier_OutsideEast_EventScript_Woman1:: msgbox BattleFrontier_OutsideEast_Text_ToughTrainerInBattleTower, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Woman2:: @ 8242DA6 +BattleFrontier_OutsideEast_EventScript_Woman2:: msgbox BattleFrontier_OutsideEast_Text_EnoughBattlePointsForDoll, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_BlackBelt2:: @ 8242DAF +BattleFrontier_OutsideEast_EventScript_BlackBelt2:: msgbox BattleFrontier_OutsideEast_Text_LikeToHaveNameRecordedHere, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_Maniac2:: @ 8242DB8 +BattleFrontier_OutsideEast_EventScript_Maniac2:: lock msgbox BattleFrontier_OutsideEast_Text_CanDoAnythingWithYou, MSGBOX_DEFAULT release end -BattleFrontier_OutsideEast_EventScript_Woman3:: @ 8242DC3 +BattleFrontier_OutsideEast_EventScript_Woman3:: lock msgbox BattleFrontier_OutsideEast_Text_PowerOfOurLoveWillOvercome, MSGBOX_DEFAULT release end -BattleFrontier_OutsideEast_EventScript_RankingHallSign:: @ 8242DCE +BattleFrontier_OutsideEast_EventScript_RankingHallSign:: msgbox BattleFrontier_OutsideEast_Text_RankingHallSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_ExchangeCornerSign:: @ 8242DD7 +BattleFrontier_OutsideEast_EventScript_ExchangeCornerSign:: msgbox BattleFrontier_OutsideEast_Text_ExchangeCornerSign, MSGBOX_SIGN end -BattleFrontier_OutsideEast_EventScript_Gentleman:: @ 8242DE0 +BattleFrontier_OutsideEast_EventScript_Gentleman:: msgbox BattleFrontier_OutsideEast_Text_FrontierNotExclusivelyForToughTrainers, MSGBOX_NPC end -BattleFrontier_OutsideEast_EventScript_OldWoman:: @ 8242DE9 +BattleFrontier_OutsideEast_EventScript_OldWoman:: lock faceplayer goto_if_set FLAG_DEFEATED_SUDOWOODO, BattleFrontier_OutsideEast_EventScript_OldWomanSudowoodoGone @@ -228,47 +228,47 @@ BattleFrontier_OutsideEast_EventScript_OldWoman:: @ 8242DE9 release end -BattleFrontier_OutsideEast_EventScript_OldWomanSudowoodoGone:: @ 8242DFE +BattleFrontier_OutsideEast_EventScript_OldWomanSudowoodoGone:: msgbox BattleFrontier_OutsideEast_Text_OnceAnOddTreePastHere, MSGBOX_DEFAULT release end -BattleFrontier_OutsideEast_EventScript_Camper:: @ 8242E08 +BattleFrontier_OutsideEast_EventScript_Camper:: msgbox BattleFrontier_OutsideEast_Text_StickyMonWithLongTail, MSGBOX_NPC end -BattleFrontier_OutsideEast_Text_BattleTowerSign: @ 8242E11 +BattleFrontier_OutsideEast_Text_BattleTowerSign: .string "This is the BATTLE TOWER!\n" .string "Keep the win streak as the toughest\l" .string "TRAINER!$" -BattleFrontier_OutsideEast_Text_BattlePalaceSign: @ 8242E58 +BattleFrontier_OutsideEast_Text_BattlePalaceSign: .string "This is the BATTLE PALACE!\n" .string "Keep your eyes on POKéMON battles!$" -BattleFrontier_OutsideEast_Text_BattleArenaSign: @ 8242E96 +BattleFrontier_OutsideEast_Text_BattleArenaSign: .string "This is the BATTLE ARENA!\n" .string "Let the toughest teams gather!$" -BattleFrontier_OutsideEast_Text_BattlePyramidSign: @ 8242ECF +BattleFrontier_OutsideEast_Text_BattlePyramidSign: .string "This is the BATTLE PYRAMID!\n" .string "Advance through the Battle Quest!$" -BattleFrontier_OutsideEast_Text_RankingHallSign: @ 8242F0D +BattleFrontier_OutsideEast_Text_RankingHallSign: .string "BATTLE FRONTIER RANKING HALL\n" .string "Set your sights on new records!$" -BattleFrontier_OutsideEast_Text_ExchangeCornerSign: @ 8242F4A +BattleFrontier_OutsideEast_Text_ExchangeCornerSign: .string "BATTLE POINT EXCHANGE SERVICE CORNER\n" .string "Exchange your Battle Points!$" -BattleFrontier_OutsideEast_Text_BattleTowerFeelsSpecial: @ 8242F8C +BattleFrontier_OutsideEast_Text_BattleTowerFeelsSpecial: .string "Wow!\n" .string "It's huge!\p" .string "The BATTLE TOWER feels special.\n" .string "It's different from the others.$" -BattleFrontier_OutsideEast_Text_ConquerLeagueAndFrontier: @ 8242FDC +BattleFrontier_OutsideEast_Text_ConquerLeagueAndFrontier: .string "My grand ambition is to conquer both\n" .string "the BATTLE FRONTIER and the POKéMON\l" .string "LEAGUE.\p" @@ -276,26 +276,26 @@ BattleFrontier_OutsideEast_Text_ConquerLeagueAndFrontier: @ 8242FDC .string "I… I'm going to ask MIMI next door\n" .string "if she will be friends with me!$" -BattleFrontier_OutsideEast_Text_PyramidTooHarsh: @ 824308C +BattleFrontier_OutsideEast_Text_PyramidTooHarsh: .string "The BATTLE PYRAMID's too harsh!\n" .string "I just can't make it to the top!\p" .string "Since I'm out of options, maybe I can\n" .string "climb the outside…$" -BattleFrontier_OutsideEast_Text_ThriveInDarkness: @ 8243106 +BattleFrontier_OutsideEast_Text_ThriveInDarkness: .string "I thrive in darkness…\n" .string "Yes… What is worthy of me?\l" .string "None other than the BATTLE PYRAMID…\p" .string "What say you to wandering in darkness\n" .string "and in utter and total desperation?$" -BattleFrontier_OutsideEast_Text_PutTogetherUltimateTeam: @ 82431A5 +BattleFrontier_OutsideEast_Text_PutTogetherUltimateTeam: .string "I didn't sleep for a week, but then\n" .string "I put together the ultimate team!\p" .string "I can't see myself losing, no joke.\n" .string "We're storming the BATTLE ARENA!$" -BattleFrontier_OutsideEast_Text_DidScottBringYouHere: @ 8243230 +BattleFrontier_OutsideEast_Text_DidScottBringYouHere: .string "Did SCOTT bring you here, too?\n" .string "What is it with that guy?\p" .string "It sounds like he really does know\n" @@ -303,16 +303,16 @@ BattleFrontier_OutsideEast_Text_DidScottBringYouHere: @ 8243230 .string "I've never seen him battling in person\n" .string "ever.$" -BattleFrontier_OutsideEast_Text_BelieveInYouBuddy: @ 82432DD +BattleFrontier_OutsideEast_Text_BelieveInYouBuddy: .string "ZIGG!\n" .string "I believe in you, little buddy!\p" .string "I'll make my little ZIGG any favorite\n" .string "tasty treats you like if you win!$" -BattleFrontier_OutsideEast_Text_ZigzagoonLooksVacant: @ 824334B +BattleFrontier_OutsideEast_Text_ZigzagoonLooksVacant: .string "ZIGZAGOON looks vacant…$" -BattleFrontier_OutsideEast_Text_PeopleCallMeBusybody: @ 8243363 +BattleFrontier_OutsideEast_Text_PeopleCallMeBusybody: .string "People call me a busybody,\n" .string "but I can't help it.\p" .string "Your hat's on crooked!\n" @@ -321,29 +321,29 @@ BattleFrontier_OutsideEast_Text_PeopleCallMeBusybody: @ 8243363 .string "I don't know if I can stand to just\n" .string "watch at the BATTLE PALACE…$" -BattleFrontier_OutsideEast_Text_OnceBeatGymLeader: @ 8243425 +BattleFrontier_OutsideEast_Text_OnceBeatGymLeader: .string "I may not look that impressive now,\n" .string "but I once beat a GYM LEADER.\p" .string "Who knows, maybe I should give it\n" .string "another shot at glory.$" -BattleFrontier_OutsideEast_Text_FastOnBikeAndBattles: @ 82434A0 +BattleFrontier_OutsideEast_Text_FastOnBikeAndBattles: .string "I'm fast on my BIKE, and that goes for\n" .string "the way I battle, too.\p" .string "I win matches in the blink of\n" .string "an eye!$" -BattleFrontier_OutsideEast_Text_BetterThanDaddyAtPokemon: @ 8243504 +BattleFrontier_OutsideEast_Text_BetterThanDaddyAtPokemon: .string "I'm better than my daddy\n" .string "at POKéMON.$" -BattleFrontier_OutsideEast_Text_GoRackUpSomeWinsForDaddy: @ 8243529 +BattleFrontier_OutsideEast_Text_GoRackUpSomeWinsForDaddy: .string "Go on, my baby sweetie!\n" .string "Go rack up some wins for Daddy!\p" .string "You're just like your mother,\n" .string "so you'll be dominating!$" -BattleFrontier_OutsideEast_Text_HeardPrettyGirlAtBattleArena: @ 8243598 +BattleFrontier_OutsideEast_Text_HeardPrettyGirlAtBattleArena: .string "It wasn't easy getting here,\n" .string "but I'd heard about this knockout\l" .string "pretty girl at the BATTLE ARENA.\p" @@ -352,13 +352,13 @@ BattleFrontier_OutsideEast_Text_HeardPrettyGirlAtBattleArena: @ 8243598 .string "A whole teeming mob of sweaty,\n" .string "stinky, and primitive martial artists!$" -BattleFrontier_OutsideEast_Text_SometimesImportantOldManInThere: @ 8243668 +BattleFrontier_OutsideEast_Text_SometimesImportantOldManInThere: .string "I sometimes see this really important-\n" .string "looking old man going in there.\p" .string "He has these really awesome POKéMON.\n" .string "He seems really nice, though.$" -BattleFrontier_OutsideEast_Text_LegendOfBattlePyramid: @ 82436F2 +BattleFrontier_OutsideEast_Text_LegendOfBattlePyramid: .string "Do you know it?\n" .string "The legend of the BATTLE PYRAMID?\p" .string "When there comes a confident TRAINER\n" @@ -370,7 +370,7 @@ BattleFrontier_OutsideEast_Text_LegendOfBattlePyramid: @ 82436F2 .string "What's it supposed to mean?\n" .string "That, my friend, I can't say!$" -BattleFrontier_OutsideEast_Text_GotWipedOut: @ 8243809 +BattleFrontier_OutsideEast_Text_GotWipedOut: .string "Man! Oh man!\n" .string "I've never lost once before!\p" .string "But I got wiped out with no saving\n" @@ -378,7 +378,7 @@ BattleFrontier_OutsideEast_Text_GotWipedOut: @ 8243809 .string "And then I'm told I don't have any\n" .string "talent?! Man!$" -BattleFrontier_OutsideEast_Text_ToughTrainerInBattleTower: @ 8243895 +BattleFrontier_OutsideEast_Text_ToughTrainerInBattleTower: .string "This guy ran into a horribly tough\n" .string "TRAINER while he was on the BATTLE\l" .string "TOWER challenge.\p" @@ -386,23 +386,23 @@ BattleFrontier_OutsideEast_Text_ToughTrainerInBattleTower: @ 8243895 .string "You need to be cautious if you ever\n" .string "decide to go to the BATTLE TOWER.$" -BattleFrontier_OutsideEast_Text_EnoughBattlePointsForDoll: @ 8243943 +BattleFrontier_OutsideEast_Text_EnoughBattlePointsForDoll: .string "Yes!\n" .string "I've finally got enough Battle Points!\p" .string "I guess I'll trade for another giant\n" .string "plush DOLL!$" -BattleFrontier_OutsideEast_Text_LikeToHaveNameRecordedHere: @ 82439A0 +BattleFrontier_OutsideEast_Text_LikeToHaveNameRecordedHere: .string "Oh, yeah, okay!\n" .string "So this is the RANKING HALL!\p" .string "I'd like to go down in history as\n" .string "a super champ and have my name\l" .string "recorded here for posterity.$" -BattleFrontier_OutsideEast_Text_CanDoAnythingWithYou: @ 8243A2B +BattleFrontier_OutsideEast_Text_CanDoAnythingWithYou: .string "With you by my side, I can do anything.$" -BattleFrontier_OutsideEast_Text_PowerOfOurLoveWillOvercome: @ 8243A53 +BattleFrontier_OutsideEast_Text_PowerOfOurLoveWillOvercome: .string "Ooh, darling, you are so wonderful!\p" .string "Ooh, I just can't wait anymore!\p" .string "Let's go to a MULTI BATTLE ROOM\n" @@ -413,7 +413,7 @@ BattleFrontier_OutsideEast_Text_PowerOfOurLoveWillOvercome: @ 8243A53 .string "Why, before us, darling, everything\n" .string "will topple like dominoes!$" -BattleFrontier_OutsideEast_Text_FrontierNotExclusivelyForToughTrainers: @ 8243B68 +BattleFrontier_OutsideEast_Text_FrontierNotExclusivelyForToughTrainers: .string "The BATTLE FRONTIER isn't exclusively\n" .string "for tough TRAINERS.\p" .string "Many people with special abilities\n" @@ -422,19 +422,19 @@ BattleFrontier_OutsideEast_Text_FrontierNotExclusivelyForToughTrainers: @ 8243B6 .string "He may have built this place to serve\n" .string "a bigger objective…$" -BattleFrontier_OutsideEast_Text_OddTreeHereSeemsToWiggle: @ 8243C2C +BattleFrontier_OutsideEast_Text_OddTreeHereSeemsToWiggle: .string "Excuse me, young one.\n" .string "Have you good eyesight?\p" .string "There is an odd tree past here, and to\n" .string "my tired eyes it seems to wiggle.$" -BattleFrontier_OutsideEast_Text_OnceAnOddTreePastHere: @ 8243CA3 +BattleFrontier_OutsideEast_Text_OnceAnOddTreePastHere: .string "Excuse me, young one.\n" .string "Have you a good memory?\p" .string "I have this feeling there once was\n" .string "an odd tree past here.$" -BattleFrontier_OutsideEast_Text_StickyMonWithLongTail: @ 8243D0B +BattleFrontier_OutsideEast_Text_StickyMonWithLongTail: .string "I…\n" .string "I saw it!\p" .string "There was a sticky sort of a POKéMON\n" diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index 9a85593a16ef..19f05625853b 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -7,16 +7,16 @@ .set LOCALID_FISHERMAN_2, 18 .set LOCALID_MAN_4, 23 -BattleFrontier_OutsideWest_MapScripts:: @ 823D3E1 +BattleFrontier_OutsideWest_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_OutsideWest_OnTransition .byte 0 -BattleFrontier_OutsideWest_OnTransition: @ 823D3E7 +BattleFrontier_OutsideWest_OnTransition: setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0 setflag FLAG_HIDE_BATTLE_TOWER_REPORTER end -BattleFrontier_OutsideWest_EventScript_FerryAttendant:: @ 823D3F0 +BattleFrontier_OutsideWest_EventScript_FerryAttendant:: lock faceplayer msgbox BattleFrontier_OutsideWest_Text_MayISeeYourTicket, MSGBOX_DEFAULT @@ -28,7 +28,7 @@ BattleFrontier_OutsideWest_EventScript_FerryAttendant:: @ 823D3F0 goto BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination end -BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination:: @ 823D416 +BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination:: multichoicedefault 18, 6, MULTI_SSTIDAL_BATTLE_FRONTIER, 2, FALSE switch VAR_RESULT case 0, BattleFrontier_OutsideWest_EventScript_FerryToSlateport @@ -37,12 +37,12 @@ BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination:: @ 823D416 case MULTI_B_PRESSED, BattleFrontier_OutsideWest_EventScript_CancelFerrySelect end -BattleFrontier_OutsideWest_EventScript_NoSSTicket:: @ 823D44E +BattleFrontier_OutsideWest_EventScript_NoSSTicket:: msgbox BattleFrontier_OutsideWest_Text_MustHaveTicketToBoard, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: @ 823D458 +BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: msgbox BattleFrontier_OutsideWest_Text_SlateportItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination @@ -53,7 +53,7 @@ BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: @ 823D458 release end -BattleFrontier_OutsideWest_EventScript_FerryToLilycove:: @ 823D483 +BattleFrontier_OutsideWest_EventScript_FerryToLilycove:: msgbox BattleFrontier_OutsideWest_Text_LilycoveItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination @@ -64,13 +64,13 @@ BattleFrontier_OutsideWest_EventScript_FerryToLilycove:: @ 823D483 release end -BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination:: @ 823D4AE +BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination:: message BattleFrontier_OutsideWest_Text_ThenWhereWouldYouLikeToGo waitmessage goto BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination end -BattleFrontier_OutsideWest_EventScript_BoardFerry:: @ 823D4BA +BattleFrontier_OutsideWest_EventScript_BoardFerry:: closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown waitmovement 0 @@ -80,38 +80,38 @@ BattleFrontier_OutsideWest_EventScript_BoardFerry:: @ 823D4BA call Common_EventScript_FerryDepartIsland return -BattleFrontier_OutsideWest_EventScript_CancelFerrySelect:: @ 823D4D8 +BattleFrontier_OutsideWest_EventScript_CancelFerrySelect:: msgbox BattleFrontier_OutsideWest_Text_SailWithUsAnotherTime, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_BattleDomeSign:: @ 823D4E2 +BattleFrontier_OutsideWest_EventScript_BattleDomeSign:: msgbox BattleFrontier_OutsideWest_Text_BattleDomeSign, MSGBOX_SIGN end -BattleFrontier_OutsideWest_EventScript_BattleFactorySign:: @ 823D4EB +BattleFrontier_OutsideWest_EventScript_BattleFactorySign:: msgbox BattleFrontier_OutsideWest_Text_BattleFactorySign, MSGBOX_SIGN end -BattleFrontier_OutsideWest_EventScript_BattlePikeSign:: @ 823D4F4 +BattleFrontier_OutsideWest_EventScript_BattlePikeSign:: msgbox BattleFrontier_OutsideWest_Text_BattlePikeSign, MSGBOX_SIGN end @ Unused. Of note, Battle Tower is in the East section in the final release -BattleFrontier_OutsideWest_EventScript_UnusedNPC1:: @ 823D4FD +BattleFrontier_OutsideWest_EventScript_UnusedNPC1:: msgbox BattleFrontier_OutsideWest_Text_ThisIsBattleTower, MSGBOX_NPC end @ Unused -BattleFrontier_OutsideWest_EventScript_UnusedNPC2:: @ 823D4FD +BattleFrontier_OutsideWest_EventScript_UnusedNPC2:: msgbox BattleFrontier_OutsideWest_Text_CantFindBattleTower, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Boy1:: @ 823D50F +BattleFrontier_OutsideWest_EventScript_Boy1:: msgbox BattleFrontier_OutsideWest_Text_BestOutOfAllMyFriends, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Fisherman2:: @ 823D518 +BattleFrontier_OutsideWest_EventScript_Fisherman2:: lock faceplayer message BattleFrontier_OutsideWest_Text_GotSeasickOnWayHere @@ -122,21 +122,21 @@ BattleFrontier_OutsideWest_EventScript_Fisherman2:: @ 823D518 release end -BattleFrontier_OutsideWest_EventScript_Man1:: @ 823D52D +BattleFrontier_OutsideWest_EventScript_Man1:: msgbox BattleFrontier_OutsideWest_Text_OnlyToughTrainersBroughtHere, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Maniac1:: @ 823D536 +BattleFrontier_OutsideWest_EventScript_Maniac1:: lock goto BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk end -BattleFrontier_OutsideWest_EventScript_Maniac2:: @ 823D53D +BattleFrontier_OutsideWest_EventScript_Maniac2:: lock goto BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk end -BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk:: @ 823D544 +BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk:: applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFastestRight waitmovement 0 msgbox BattleFrontier_OutsideWest_Text_SureWeCanChallengeWithNoMons, MSGBOX_DEFAULT @@ -151,7 +151,7 @@ BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk:: @ 823D544 release end -BattleFrontier_OutsideWest_EventScript_Camper:: @ 823D57F +BattleFrontier_OutsideWest_EventScript_Camper:: lock faceplayer delay 20 @@ -167,15 +167,15 @@ BattleFrontier_OutsideWest_EventScript_Camper:: @ 823D57F release end -BattleFrontier_OutsideWest_EventScript_CamperFaceFactory:: @ 823D5BA +BattleFrontier_OutsideWest_EventScript_CamperFaceFactory:: applymovement LOCALID_CAMPER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -BattleFrontier_OutsideWest_EventScript_CamperAlreadyFacingFactory:: @ 823D5C5 +BattleFrontier_OutsideWest_EventScript_CamperAlreadyFacingFactory:: return -BattleFrontier_OutsideWest_EventScript_Girl:: @ 823D5C6 +BattleFrontier_OutsideWest_EventScript_Girl:: lock faceplayer message BattleFrontier_OutsideWest_Text_ScaredOfPikeBecauseSeviper @@ -192,47 +192,47 @@ BattleFrontier_OutsideWest_EventScript_Girl:: @ 823D5C6 release end -BattleFrontier_OutsideWest_EventScript_GirlShudderNorth:: @ 823D5FD +BattleFrontier_OutsideWest_EventScript_GirlShudderNorth:: applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderNorth waitmovement 0 return -BattleFrontier_OutsideWest_EventScript_GirlShudderSouth:: @ 823D608 +BattleFrontier_OutsideWest_EventScript_GirlShudderSouth:: applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderSouth waitmovement 0 return -BattleFrontier_OutsideWest_EventScript_GirlShudderWest:: @ 823D613 +BattleFrontier_OutsideWest_EventScript_GirlShudderWest:: applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderWest waitmovement 0 return -BattleFrontier_OutsideWest_EventScript_GirlShudderEast:: @ 823D61E +BattleFrontier_OutsideWest_EventScript_GirlShudderEast:: applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderEast waitmovement 0 return -BattleFrontier_OutsideWest_Movement_GirlShudderNorth: @ 823D629 +BattleFrontier_OutsideWest_Movement_GirlShudderNorth: walk_in_place_fastest_down walk_in_place_fastest_down step_end -BattleFrontier_OutsideWest_Movement_GirlShudderSouth: @ 823D62C +BattleFrontier_OutsideWest_Movement_GirlShudderSouth: walk_in_place_fastest_up walk_in_place_fastest_up step_end -BattleFrontier_OutsideWest_Movement_GirlShudderWest: @ 823D62F +BattleFrontier_OutsideWest_Movement_GirlShudderWest: walk_in_place_fastest_right walk_in_place_fastest_right step_end -BattleFrontier_OutsideWest_Movement_GirlShudderEast: @ 823D632 +BattleFrontier_OutsideWest_Movement_GirlShudderEast: walk_in_place_fastest_left walk_in_place_fastest_left step_end -BattleFrontier_OutsideWest_EventScript_Woman2:: @ 823D635 +BattleFrontier_OutsideWest_EventScript_Woman2:: lock faceplayer msgbox BattleFrontier_OutsideWest_Text_LetsPlayRockPaperScissors, MSGBOX_DEFAULT @@ -242,70 +242,70 @@ BattleFrontier_OutsideWest_EventScript_Woman2:: @ 823D635 goto BattleFrontier_OutsideWest_EventScript_WomanLostRockPaperScissors end -BattleFrontier_OutsideWest_EventScript_WomanWonRockPaperScissors:: @ 823D653 +BattleFrontier_OutsideWest_EventScript_WomanWonRockPaperScissors:: msgbox BattleFrontier_OutsideWest_Text_WonIllTakePikeChallenge, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_WomanLostRockPaperScissors:: @ 823D65D +BattleFrontier_OutsideWest_EventScript_WomanLostRockPaperScissors:: msgbox BattleFrontier_OutsideWest_Text_LostIllPutOffPikeChallenge, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_Fisherman1:: @ 823D667 +BattleFrontier_OutsideWest_EventScript_Fisherman1:: msgbox BattleFrontier_OutsideWest_Text_ChooseFishingOverBattling, MSGBOX_NPC end @ Unused -BattleFrontier_OutsideWest_EventScript_UnusedNPC3:: @ 823D670 +BattleFrontier_OutsideWest_EventScript_UnusedNPC3:: msgbox BattleFrontier_OutsideWest_Text_DomeIsHereGrandpa, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Gentleman:: @ 823D679 +BattleFrontier_OutsideWest_EventScript_Gentleman:: msgbox BattleFrontier_OutsideWest_Text_YoureOffToChallengeDome, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Lass:: @ 823D682 +BattleFrontier_OutsideWest_EventScript_Lass:: msgbox BattleFrontier_OutsideWest_Text_KeepBattlingUntilIGetSymbol, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_ExpertM:: @ 823D68B +BattleFrontier_OutsideWest_EventScript_ExpertM:: msgbox BattleFrontier_OutsideWest_Text_WontLetGentlemenBeatMe, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Man2:: @ 823D694 +BattleFrontier_OutsideWest_EventScript_Man2:: msgbox BattleFrontier_OutsideWest_Text_NothingHereNotLongAgo, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Woman1:: @ 823D69D +BattleFrontier_OutsideWest_EventScript_Woman1:: msgbox BattleFrontier_OutsideWest_Text_FinallyArrivedAtFrontier, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_FatMan1:: @ 823D6A6 +BattleFrontier_OutsideWest_EventScript_FatMan1:: msgbox BattleFrontier_OutsideWest_Text_SquareFilledWithToughPeople, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_FatMan2:: @ 823D6AF +BattleFrontier_OutsideWest_EventScript_FatMan2:: msgbox BattleFrontier_OutsideWest_Text_MetOlderGirlAtPike, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Woman3:: @ 823D6B8 +BattleFrontier_OutsideWest_EventScript_Woman3:: lock msgbox BattleFrontier_OutsideWest_Text_LastTimeOurEyesMet, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_Boy2:: @ 823D6C3 +BattleFrontier_OutsideWest_EventScript_Boy2:: lock msgbox BattleFrontier_OutsideWest_Text_DomeAceLookedBecauseOfMyCheering, MSGBOX_DEFAULT release end -BattleFrontier_OutsideWest_EventScript_OldMan:: @ 823D6CE +BattleFrontier_OutsideWest_EventScript_OldMan:: msgbox BattleFrontier_OutsideWest_Text_DomeAceIsMine, MSGBOX_NPC end -BattleFrontier_OutsideWest_EventScript_Man4:: @ 823D6D7 +BattleFrontier_OutsideWest_EventScript_Man4:: lock faceplayer msgbox BattleFrontier_OutsideWest_Text_FansOverThereUsedToBeTrainers, MSGBOX_DEFAULT @@ -315,76 +315,76 @@ BattleFrontier_OutsideWest_EventScript_Man4:: @ 823D6D7 release end -BattleFrontier_OutsideWest_EventScript_PokefanF:: @ 823D6EE +BattleFrontier_OutsideWest_EventScript_PokefanF:: msgbox BattleFrontier_OutsideWest_Text_MonWithLongTailInFrontier, MSGBOX_NPC end -BattleFrontier_OutsideWest_Text_BattleDomeSign: @ 823D6F7 +BattleFrontier_OutsideWest_Text_BattleDomeSign: .string "This is the BATTLE DOME!\n" .string "Your path to the invincible superstar!$" -BattleFrontier_OutsideWest_Text_BattleFactorySign: @ 823D737 +BattleFrontier_OutsideWest_Text_BattleFactorySign: .string "This is the BATTLE FACTORY!\n" .string "Seek out the toughest POKéMON!$" -BattleFrontier_OutsideWest_Text_BattlePikeSign: @ 823D772 +BattleFrontier_OutsideWest_Text_BattlePikeSign: .string "This is the BATTLE PIKE!\n" .string "Choose one of three paths!$" -BattleFrontier_OutsideWest_Text_ThisIsBattleTower: @ 823D7A6 +BattleFrontier_OutsideWest_Text_ThisIsBattleTower: .string "This is the BATTLE TOWER.\p" .string "TRAINERS bring their best-raised\n" .string "POKéMON for elimination-style matches.$" -BattleFrontier_OutsideWest_Text_MayISeeYourTicket: @ 823D808 +BattleFrontier_OutsideWest_Text_MayISeeYourTicket: .string "Hello, are you here for the ferry?\n" .string "May I see your TICKET?$" -BattleFrontier_OutsideWest_Text_MustHaveTicketToBoard: @ 823D842 +BattleFrontier_OutsideWest_Text_MustHaveTicketToBoard: .string "{PLAYER} doesn't have the TICKET…\p" .string "I'm terribly sorry.\p" .string "You must have a TICKET to board\n" .string "the ferry.$" -BattleFrontier_OutsideWest_Text_WhereWouldYouLikeToGo: @ 823D89D +BattleFrontier_OutsideWest_Text_WhereWouldYouLikeToGo: .string "{PLAYER} flashed the TICKET.\p" .string "Perfect! That's all you need!\p" .string "And where would you like to go?$" -BattleFrontier_OutsideWest_Text_SlateportItIs: @ 823D8F2 +BattleFrontier_OutsideWest_Text_SlateportItIs: .string "SLATEPORT CITY it is, then!$" -BattleFrontier_OutsideWest_Text_LilycoveItIs: @ 823D90E +BattleFrontier_OutsideWest_Text_LilycoveItIs: .string "LILYCOVE CITY it is, then!$" -BattleFrontier_OutsideWest_Text_SailWithUsAnotherTime: @ 823D929 +BattleFrontier_OutsideWest_Text_SailWithUsAnotherTime: .string "Please sail with us another time!$" -BattleFrontier_OutsideWest_Text_PleaseBoardFerry: @ 823D94B +BattleFrontier_OutsideWest_Text_PleaseBoardFerry: .string "Please board the ferry and wait for\n" .string "departure.$" -BattleFrontier_OutsideWest_Text_ThenWhereWouldYouLikeToGo: @ 823D97A +BattleFrontier_OutsideWest_Text_ThenWhereWouldYouLikeToGo: .string "Then, where would you like to go?$" -BattleFrontier_OutsideWest_Text_BestOutOfAllMyFriends: @ 823D99C +BattleFrontier_OutsideWest_Text_BestOutOfAllMyFriends: .string "I'm the best out of all my friends.\n" .string "But here…\l" .string "I've been useless!$" -BattleFrontier_OutsideWest_Text_CantFindBattleTower: @ 823D9DD +BattleFrontier_OutsideWest_Text_CantFindBattleTower: .string "I want to go to the BATTLE TOWER,\n" .string "but I can't find it even though I have\l" .string "a map of the BATTLE FRONTIER.\p" .string "This place is just too big!$" -BattleFrontier_OutsideWest_Text_GotSeasickOnWayHere: @ 823DA60 +BattleFrontier_OutsideWest_Text_GotSeasickOnWayHere: .string "I wanted to take a challenge as soon\n" .string "as I arrived here.\p" .string "But on the way, I got seasick…\n" .string "Urrrrp…$" -BattleFrontier_OutsideWest_Text_OnlyToughTrainersBroughtHere: @ 823DABF +BattleFrontier_OutsideWest_Text_OnlyToughTrainersBroughtHere: .string "It's not as if just anyone can come\n" .string "here, you know?\p" .string "Only those TRAINERS who've been\n" @@ -392,94 +392,94 @@ BattleFrontier_OutsideWest_Text_OnlyToughTrainersBroughtHere: @ 823DABF .string "That's why many TRAINERS don't even\n" .string "know about the BATTLE FRONTIER.$" -BattleFrontier_OutsideWest_Text_SureWeCanChallengeWithNoMons: @ 823DB7D +BattleFrontier_OutsideWest_Text_SureWeCanChallengeWithNoMons: .string "Hey, bro…\p" .string "Are you sure we can make challenges\n" .string "even if we don't have any POKéMON?$" -BattleFrontier_OutsideWest_Text_BigGuySaidIllLendYouMons: @ 823DBCE +BattleFrontier_OutsideWest_Text_BigGuySaidIllLendYouMons: .string "Uh…\n" .string "I'm sure it'll be okay.\p" .string "I think…\p" .string "But remember that big scary guy?\n" .string "He said, “I'll lend you POKéMON!”$" -BattleFrontier_OutsideWest_Text_WhosRaisingThoseRentalMons: @ 823DC36 +BattleFrontier_OutsideWest_Text_WhosRaisingThoseRentalMons: .string "That's the BATTLE FACTORY.\n" .string "You can rent strong POKéMON there.\p" .string "But it makes me wonder.\n" .string "Who's raising those rental POKéMON?$" -BattleFrontier_OutsideWest_Text_ScaredOfPikeBecauseSeviper: @ 823DCB0 +BattleFrontier_OutsideWest_Text_ScaredOfPikeBecauseSeviper: .string "I'm scared of going into the BATTLE\n" .string "PIKE because of SEVIPER…\p" .string "B-but I came all the way here, so I will\n" .string "try to conquer everything!\l" .string "…Shudder…$" -BattleFrontier_OutsideWest_Text_LetsPlayRockPaperScissors: @ 823DD3B +BattleFrontier_OutsideWest_Text_LetsPlayRockPaperScissors: .string "Let's play rock, paper, scissors!\n" .string "One, two, three!\p" .string "… … … … … …$" -BattleFrontier_OutsideWest_Text_WonIllTakePikeChallenge: @ 823DD7A +BattleFrontier_OutsideWest_Text_WonIllTakePikeChallenge: .string "Yay! I won!\n" .string "I will take the BATTLE PIKE challenge!$" -BattleFrontier_OutsideWest_Text_LostIllPutOffPikeChallenge: @ 823DDAD +BattleFrontier_OutsideWest_Text_LostIllPutOffPikeChallenge: .string "Oh, no…\n" .string "I lost.\p" .string "I guess I'm not very lucky today.\n" .string "I'll put off my BATTLE PIKE challenge\l" .string "until tomorrow.$" -BattleFrontier_OutsideWest_Text_ChooseFishingOverBattling: @ 823DE15 +BattleFrontier_OutsideWest_Text_ChooseFishingOverBattling: .string "I believe I'm the only person here who,\n" .string "for some unknown reason, would choose\l" .string "fishing over battling.\p" .string "Huh? You can't catch anything here?\n" .string "That's disappointing…$" -BattleFrontier_OutsideWest_Text_KeepBattlingUntilIGetSymbol: @ 823DEB4 +BattleFrontier_OutsideWest_Text_KeepBattlingUntilIGetSymbol: .string "Today, I'm going to keep battling, no\n" .string "matter what, until I get a Symbol.$" -BattleFrontier_OutsideWest_Text_YoureOffToChallengeDome: @ 823DEFD +BattleFrontier_OutsideWest_Text_YoureOffToChallengeDome: .string "Oh? You're off to challenge\n" .string "the BATTLE DOME?\p" .string "I'll wish you the best of luck.\n" .string "Let us both win our way up and meet\l" .string "in challenges.$" -BattleFrontier_OutsideWest_Text_DomeIsHereGrandpa: @ 823DF7D +BattleFrontier_OutsideWest_Text_DomeIsHereGrandpa: .string "Grandpa, over here!\n" .string "The BATTLE DOME is here!\l" .string "Go get 'em, Grandpa!$" -BattleFrontier_OutsideWest_Text_WontLetGentlemenBeatMe: @ 823DFBF +BattleFrontier_OutsideWest_Text_WontLetGentlemenBeatMe: .string "Ah, so this here is the BATTLE DOME?\n" .string "I won't let GENTLEMEN beat me!\p" .string "But where is the entrance?$" -BattleFrontier_OutsideWest_Text_NothingHereNotLongAgo: @ 823E01E +BattleFrontier_OutsideWest_Text_NothingHereNotLongAgo: .string "There used to be nothing here not all\n" .string "that long ago.\p" .string "But, now look at this place! Amazing!\n" .string "I'll bring my mother out to see this.$" -BattleFrontier_OutsideWest_Text_FinallyArrivedAtFrontier: @ 823E09F +BattleFrontier_OutsideWest_Text_FinallyArrivedAtFrontier: .string "I've finally arrived at the BATTLE\n" .string "FRONTIER!\p" .string "I'm sure to grab attention with\n" .string "my looks and ability!$" -BattleFrontier_OutsideWest_Text_SquareFilledWithToughPeople: @ 823E102 +BattleFrontier_OutsideWest_Text_SquareFilledWithToughPeople: .string "Munch, munch…\p" .string "It looks like this square's filled with\n" .string "tough people.\p" .string "Munch, munch…$" -BattleFrontier_OutsideWest_Text_MetOlderGirlAtPike: @ 823E154 +BattleFrontier_OutsideWest_Text_MetOlderGirlAtPike: .string "Crunch, munch…\p" .string "A while back, I met this older girl\n" .string "at the BATTLE PIKE.\p" @@ -492,13 +492,13 @@ BattleFrontier_OutsideWest_Text_MetOlderGirlAtPike: @ 823E154 .string "scary experience, sure enough.\p" .string "Crunch, munch…$" -BattleFrontier_OutsideWest_Text_LastTimeOurEyesMet: @ 823E273 +BattleFrontier_OutsideWest_Text_LastTimeOurEyesMet: .string "Huh? Will you listen to yourself?\n" .string "That's nothing!\p" .string "Why, the last time I cheered for him,\n" .string "our eyes met and sparks flew!$" -BattleFrontier_OutsideWest_Text_DomeAceLookedBecauseOfMyCheering: @ 823E2E9 +BattleFrontier_OutsideWest_Text_DomeAceLookedBecauseOfMyCheering: .string "Whaaaaaat?!\n" .string "Pfft!\p" .string "That only happened because\n" @@ -506,7 +506,7 @@ BattleFrontier_OutsideWest_Text_DomeAceLookedBecauseOfMyCheering: @ 823E2E9 .string "The DOME ACE only looked our way\n" .string "because my cheering was so loud!$" -BattleFrontier_OutsideWest_Text_DomeAceIsMine: @ 823E37E +BattleFrontier_OutsideWest_Text_DomeAceIsMine: .string "Oh, shush!\n" .string "Keep that racket down!\p" .string "You fair-weather fans should stick\n" @@ -514,7 +514,7 @@ BattleFrontier_OutsideWest_Text_DomeAceIsMine: @ 823E37E .string "The DOME ACE is mine!\n" .string "The only idol for me!$" -BattleFrontier_OutsideWest_Text_FansOverThereUsedToBeTrainers: @ 823E410 +BattleFrontier_OutsideWest_Text_FansOverThereUsedToBeTrainers: .string "Those people squabbling over there…\p" .string "It's hard to believe, but they once\n" .string "were TRAINERS, and good ones, too.\p" @@ -528,7 +528,7 @@ BattleFrontier_OutsideWest_Text_FansOverThereUsedToBeTrainers: @ 823E410 .string "They go cheer for their idol at the\l" .string "BATTLE DOME every day now.$" -BattleFrontier_OutsideWest_Text_MonWithLongTailInFrontier: @ 823E5A5 +BattleFrontier_OutsideWest_Text_MonWithLongTailInFrontier: .string "I heard a rumor that someone saw\n" .string "a POKéMON with an unusually long tail\l" .string "somewhere in the BATTLE FRONTIER.\p" diff --git a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc index 795c3fabeba8..6479270503bc 100644 --- a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc +++ b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_NURSE, 1 -BattleFrontier_PokemonCenter_1F_MapScripts:: @ 82678F9 +BattleFrontier_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -BattleFrontier_PokemonCenter_1F_OnTransition: @ 8267904 +BattleFrontier_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_BATTLE_FRONTIER_OUTSIDE_EAST end -BattleFrontier_PokemonCenter_1F_EventScript_Nurse:: @ 8267908 +BattleFrontier_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -17,19 +17,19 @@ BattleFrontier_PokemonCenter_1F_EventScript_Nurse:: @ 8267908 release end -BattleFrontier_PokemonCenter_1F_EventScript_SchoolKid:: @ 8267916 +BattleFrontier_PokemonCenter_1F_EventScript_SchoolKid:: msgbox BattleFrontier_PokemonCenter_1F_Text_NeverSeenPokemon, MSGBOX_NPC end -BattleFrontier_PokemonCenter_1F_EventScript_Man:: @ 826791F +BattleFrontier_PokemonCenter_1F_EventScript_Man:: msgbox BattleFrontier_PokemonCenter_1F_Text_NextStopBattleArena, MSGBOX_NPC end -BattleFrontier_PokemonCenter_1F_EventScript_Picnicker:: @ 8267928 +BattleFrontier_PokemonCenter_1F_EventScript_Picnicker:: msgbox BattleFrontier_PokemonCenter_1F_Text_GoingThroughEveryChallenge, MSGBOX_NPC end -BattleFrontier_PokemonCenter_1F_EventScript_Skitty:: @ 8267931 +BattleFrontier_PokemonCenter_1F_EventScript_Skitty:: lock faceplayer waitse @@ -39,7 +39,7 @@ BattleFrontier_PokemonCenter_1F_EventScript_Skitty:: @ 8267931 release end -BattleFrontier_PokemonCenter_1F_Text_NeverSeenPokemon: @ 8267944 +BattleFrontier_PokemonCenter_1F_Text_NeverSeenPokemon: .string "There was someone here using a \n" .string "POKéMON I've never seen before.\p" .string "I never learned about it at\n" @@ -47,15 +47,15 @@ BattleFrontier_PokemonCenter_1F_Text_NeverSeenPokemon: @ 8267944 .string "I wonder where you can catch POKéMON\n" .string "like that.$" -BattleFrontier_PokemonCenter_1F_Text_NextStopBattleArena: @ 82679EB +BattleFrontier_PokemonCenter_1F_Text_NextStopBattleArena: .string "Okay! Next stop, the BATTLE ARENA!\n" .string "I'd better get the right POKéMON from\l" .string "the PC Storage System.$" -BattleFrontier_PokemonCenter_1F_Text_GoingThroughEveryChallenge: @ 8267A4B +BattleFrontier_PokemonCenter_1F_Text_GoingThroughEveryChallenge: .string "Giggle… I'm going to go through every\n" .string "challenge with just this baby!$" -BattleFrontier_PokemonCenter_1F_Text_Skitty: @ 8267A90 +BattleFrontier_PokemonCenter_1F_Text_Skitty: .string "SKITTY: Mya myaaah!$" diff --git a/data/maps/BattleFrontier_PokemonCenter_2F/scripts.inc b/data/maps/BattleFrontier_PokemonCenter_2F/scripts.inc index 5a19a9d28439..6dc785e75efa 100644 --- a/data/maps/BattleFrontier_PokemonCenter_2F/scripts.inc +++ b/data/maps/BattleFrontier_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -BattleFrontier_PokemonCenter_2F_MapScripts:: @ 8267AA4 +BattleFrontier_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ BattleFrontier_PokemonCenter_2F_MapScripts:: @ 8267AA4 .byte 0 @ The below 3 are unused and leftover from RS -BattleFrontier_PokemonCenter_2F_EventScript_Colosseum:: @ 8267AB9 +BattleFrontier_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -BattleFrontier_PokemonCenter_2F_EventScript_TradeCenter:: @ 8267ABF +BattleFrontier_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -BattleFrontier_PokemonCenter_2F_EventScript_RecordCorner:: @ 8267AC5 +BattleFrontier_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/BattleFrontier_RankingHall/scripts.inc b/data/maps/BattleFrontier_RankingHall/scripts.inc index e8415c828645..20b2b21c1e26 100644 --- a/data/maps/BattleFrontier_RankingHall/scripts.inc +++ b/data/maps/BattleFrontier_RankingHall/scripts.inc @@ -1,67 +1,67 @@ -BattleFrontier_RankingHall_MapScripts:: @ 825E4A9 +BattleFrontier_RankingHall_MapScripts:: .byte 0 -BattleFrontier_RankingHall_EventScript_TowerSinglesRecords:: @ 825E4AA +BattleFrontier_RankingHall_EventScript_TowerSinglesRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_SINGLES goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_TowerDoublesRecords:: @ 825E4B6 +BattleFrontier_RankingHall_EventScript_TowerDoublesRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_DOUBLES goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_TowerMultisRecords:: @ 825E4C2 +BattleFrontier_RankingHall_EventScript_TowerMultisRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_MULTIS goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_TowerLinkRecords:: @ 825E4CE +BattleFrontier_RankingHall_EventScript_TowerLinkRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_LINK goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_ArenaRecords:: @ 825E4DA +BattleFrontier_RankingHall_EventScript_ArenaRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_ARENA goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_PalaceRecords:: @ 825E4E6 +BattleFrontier_RankingHall_EventScript_PalaceRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_PALACE goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_FactoryRecords:: @ 825E4F2 +BattleFrontier_RankingHall_EventScript_FactoryRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_FACTORY goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_DomeRecords:: @ 825E4FE +BattleFrontier_RankingHall_EventScript_DomeRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_DOME goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_PikeRecords:: @ 825E50A +BattleFrontier_RankingHall_EventScript_PikeRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_PIKE goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_PyramidRecords:: @ 825E516 +BattleFrontier_RankingHall_EventScript_PyramidRecords:: lockall setvar VAR_0x8005, RANKING_HALL_BATTLE_PYRAMID goto BattleFrontier_RankingHall_EventScript_ShowRecords end -BattleFrontier_RankingHall_EventScript_ShowRecords:: @ 825E522 +BattleFrontier_RankingHall_EventScript_ShowRecords:: special ShowRankingHallRecordsWindow waitbuttonpress special ScrollRankingHallRecordsWindow @@ -70,19 +70,19 @@ BattleFrontier_RankingHall_EventScript_ShowRecords:: @ 825E522 releaseall end -BattleFrontier_RankingHall_EventScript_Attendant:: @ 825E52F +BattleFrontier_RankingHall_EventScript_Attendant:: msgbox BattleFrontier_RankingHall_Text_ExplainRankingHall, MSGBOX_NPC end -BattleFrontier_RankingHall_EventScript_DomePikeFactoryRecordsSign:: @ 825E538 +BattleFrontier_RankingHall_EventScript_DomePikeFactoryRecordsSign:: msgbox BattleFrontier_RankingHall_Text_DomePikeFactoryRecords, MSGBOX_SIGN end -BattleFrontier_RankingHall_EventScript_PalaceArenaPyramidRecordsSIgn:: @ 825E541 +BattleFrontier_RankingHall_EventScript_PalaceArenaPyramidRecordsSIgn:: msgbox BattleFrontier_RankingHall_Text_PalaceArenaPyramidRecords, MSGBOX_SIGN end -BattleFrontier_RankingHall_EventScript_NinjaBoy:: @ 825E54A +BattleFrontier_RankingHall_EventScript_NinjaBoy:: lock faceplayer msgbox BattleFrontier_RankingHall_Text_IsYourNameOnThisList, MSGBOX_YESNO @@ -92,42 +92,42 @@ BattleFrontier_RankingHall_EventScript_NinjaBoy:: @ 825E54A release end -BattleFrontier_RankingHall_EventScript_NinjaBoyNameOnList:: @ 825E569 +BattleFrontier_RankingHall_EventScript_NinjaBoyNameOnList:: msgbox BattleFrontier_RankingHall_Text_WowThatsSuper, MSGBOX_DEFAULT release end -BattleFrontier_RankingHall_EventScript_Boy:: @ 825E573 +BattleFrontier_RankingHall_EventScript_Boy:: msgbox BattleFrontier_RankingHall_Text_MyNamesNotUpThere, MSGBOX_NPC end -BattleFrontier_RankingHall_Text_ExplainRankingHall: @ 825E57C +BattleFrontier_RankingHall_Text_ExplainRankingHall: .string "This is the RANKING HALL.\p" .string "This is where we recognize the immortal\n" .string "TRAINERS who left great records in\l" .string "BATTLE FRONTIER events.$" -BattleFrontier_RankingHall_Text_DomePikeFactoryRecords: @ 825E5F9 +BattleFrontier_RankingHall_Text_DomePikeFactoryRecords: .string "BATTLE DOME, BATTLE PIKE,\n" .string "and BATTLE FACTORY Records$" -BattleFrontier_RankingHall_Text_PalaceArenaPyramidRecords: @ 825E62E +BattleFrontier_RankingHall_Text_PalaceArenaPyramidRecords: .string "BATTLE PALACE, BATTLE ARENA,\n" .string "and BATTLE PYRAMID Records$" -BattleFrontier_RankingHall_Text_IsYourNameOnThisList: @ 825E666 +BattleFrontier_RankingHall_Text_IsYourNameOnThisList: .string "Hi, is your name on this list?$" -BattleFrontier_RankingHall_Text_WowThatsSuper: @ 825E685 +BattleFrontier_RankingHall_Text_WowThatsSuper: .string "Wow, that's super!\n" .string "I'll have to try harder, too!$" -BattleFrontier_RankingHall_Text_WorkHarderIfYouSawFriendsName: @ 825E6B6 +BattleFrontier_RankingHall_Text_WorkHarderIfYouSawFriendsName: .string "Oh, is that right?\p" .string "If you saw your friend's name up here,\n" .string "I bet it would make you work harder!$" -BattleFrontier_RankingHall_Text_MyNamesNotUpThere: @ 825E715 +BattleFrontier_RankingHall_Text_MyNamesNotUpThere: .string "Hmm…\n" .string "My name's not up there…\p" .string "Well, it's only natural since I haven't\n" diff --git a/data/maps/BattleFrontier_ReceptionGate/scripts.inc b/data/maps/BattleFrontier_ReceptionGate/scripts.inc index 904bb5247977..410eb747d72c 100644 --- a/data/maps/BattleFrontier_ReceptionGate/scripts.inc +++ b/data/maps/BattleFrontier_ReceptionGate/scripts.inc @@ -2,20 +2,20 @@ .set LOCALID_GUIDE, 2 .set LOCALID_SCOTT, 4 -BattleFrontier_ReceptionGate_MapScripts:: @ 82661DA +BattleFrontier_ReceptionGate_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_ReceptionGate_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_ReceptionGate_OnTransition .byte 0 -BattleFrontier_ReceptionGate_OnTransition: @ 82661E5 +BattleFrontier_ReceptionGate_OnTransition: setflag FLAG_LANDMARK_BATTLE_FRONTIER end -BattleFrontier_ReceptionGate_OnFrame: @ 82661E9 +BattleFrontier_ReceptionGate_OnFrame: map_script_2 VAR_HAS_ENTERED_BATTLE_FRONTIER, 0, BattleFrontier_ReceptionGate_EventScript_FirstTimeEntering .2byte 0 -BattleFrontier_ReceptionGate_EventScript_FirstTimeEntering:: @ 82661F3 +BattleFrontier_ReceptionGate_EventScript_FirstTimeEntering:: lockall setvar VAR_HAS_ENTERED_BATTLE_FRONTIER, 1 playse SE_PIN @@ -30,7 +30,7 @@ BattleFrontier_ReceptionGate_EventScript_FirstTimeEntering:: @ 82661F3 goto BattleFrontier_ReceptionGate_EventScript_ScottScene end -BattleFrontier_ReceptionGate_EventScript_ScottScene:: @ 8266229 +BattleFrontier_ReceptionGate_EventScript_ScottScene:: msgbox BattleFrontier_ReceptionGate_Text_WelcomeToBattleFrontier, MSGBOX_DEFAULT msgbox BattleFrontier_ReceptionGate_Text_IssueFrontierPass, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_ITEM @@ -66,14 +66,14 @@ BattleFrontier_ReceptionGate_EventScript_ScottScene:: @ 8266229 releaseall end -BattleFrontier_ReceptionGate_Movement_PlayerApproachCounter: @ 82662D2 +BattleFrontier_ReceptionGate_Movement_PlayerApproachCounter: walk_up walk_up walk_left walk_left step_end -BattleFrontier_ReceptionGate_Movement_PlayerFaceScott: @ 82662D7 +BattleFrontier_ReceptionGate_Movement_PlayerFaceScott: delay_16 delay_16 delay_16 @@ -82,12 +82,12 @@ BattleFrontier_ReceptionGate_Movement_PlayerFaceScott: @ 82662D7 step_end @ Unused -BattleFrontier_ReceptionGate_Movement_WalkDown: @ 82662DD +BattleFrontier_ReceptionGate_Movement_WalkDown: walk_down walk_down step_end -BattleFrontier_ReceptionGate_Movement_ScottEnter: @ 82662E0 +BattleFrontier_ReceptionGate_Movement_ScottEnter: walk_down walk_down walk_down @@ -97,7 +97,7 @@ BattleFrontier_ReceptionGate_Movement_ScottEnter: @ 82662E0 walk_left step_end -BattleFrontier_ReceptionGate_Movement_ScottExit: @ 82662E8 +BattleFrontier_ReceptionGate_Movement_ScottExit: walk_right walk_up walk_up @@ -107,7 +107,7 @@ BattleFrontier_ReceptionGate_Movement_ScottExit: @ 82662E8 walk_up step_end -BattleFrontier_ReceptionGate_Movement_GreeterFaceScott: @ 82662F0 +BattleFrontier_ReceptionGate_Movement_GreeterFaceScott: delay_16 delay_16 delay_16 @@ -115,7 +115,7 @@ BattleFrontier_ReceptionGate_Movement_GreeterFaceScott: @ 82662F0 walk_in_place_fastest_right step_end -BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott: @ 82662F6 +BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott: delay_16 delay_16 delay_16 @@ -123,7 +123,7 @@ BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott: @ 82662F6 walk_in_place_fastest_left step_end -BattleFrontier_ReceptionGate_EventScript_Greeter:: @ 82662FC +BattleFrontier_ReceptionGate_EventScript_Greeter:: lock faceplayer msgbox BattleFrontier_ReceptionGate_Text_WelcomeToBattleFrontier, MSGBOX_DEFAULT @@ -131,14 +131,14 @@ BattleFrontier_ReceptionGate_EventScript_Greeter:: @ 82662FC release end -BattleFrontier_ReceptionGate_EventScript_FacilityGuide:: @ 8266310 +BattleFrontier_ReceptionGate_EventScript_FacilityGuide:: lock faceplayer msgbox BattleFrontier_ReceptionGate_Text_YourGuideToFacilities, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout:: @ 8266320 +BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout:: message BattleFrontier_ReceptionGate_Text_LearnAboutWhich2 waitmessage setvar VAR_0x8004, SCROLL_MULTI_BF_RECEPTIONIST @@ -158,64 +158,64 @@ BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout:: @ 8266320 case MULTI_B_PRESSED, BattleFrontier_ReceptionGate_EventScript_ExitFacilityGuide end -BattleFrontier_ReceptionGate_EventScript_BattleTower:: @ 82663AE +BattleFrontier_ReceptionGate_EventScript_BattleTower:: msgbox BattleFrontier_ReceptionGate_Text_BattleTowerInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattleDome:: @ 82663BC +BattleFrontier_ReceptionGate_EventScript_BattleDome:: msgbox BattleFrontier_ReceptionGate_Text_BattleDomeInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattlePalace:: @ 82663CA +BattleFrontier_ReceptionGate_EventScript_BattlePalace:: msgbox BattleFrontier_ReceptionGate_Text_BattlePalaceInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattleArena:: @ 82663D8 +BattleFrontier_ReceptionGate_EventScript_BattleArena:: msgbox BattleFrontier_ReceptionGate_Text_BattleArenaInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattleFactory:: @ 82663E6 +BattleFrontier_ReceptionGate_EventScript_BattleFactory:: msgbox BattleFrontier_ReceptionGate_Text_BattleFactoryInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattlePike:: @ 82663F4 +BattleFrontier_ReceptionGate_EventScript_BattlePike:: msgbox BattleFrontier_ReceptionGate_Text_BattlePikeInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattlePyramid:: @ 8266402 +BattleFrontier_ReceptionGate_EventScript_BattlePyramid:: msgbox BattleFrontier_ReceptionGate_Text_BattlePyramidInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_RankingHall:: @ 8266410 +BattleFrontier_ReceptionGate_EventScript_RankingHall:: msgbox BattleFrontier_ReceptionGate_Text_RankingHallInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ExchangeCorner:: @ 826641E +BattleFrontier_ReceptionGate_EventScript_ExchangeCorner:: msgbox BattleFrontier_ReceptionGate_Text_ExchangeCornerInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFacilityToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ExitFacilityGuide:: @ 826642C +BattleFrontier_ReceptionGate_EventScript_ExitFacilityGuide:: msgbox BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier, MSGBOX_DEFAULT release end -BattleFrontier_ReceptionGate_EventScript_RulesGuide:: @ 8266436 +BattleFrontier_ReceptionGate_EventScript_RulesGuide:: lock faceplayer msgbox BattleFrontier_ReceptionGate_Text_YourGuideToRules, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout:: @ 8266446 +BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout:: message BattleFrontier_ReceptionGate_Text_LearnAboutWhat waitmessage multichoice 15, 0, MULTI_FRONTIER_RULES, FALSE @@ -229,44 +229,44 @@ BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout:: @ 8266446 case MULTI_B_PRESSED, BattleFrontier_ReceptionGate_EventScript_ExitRulesGuide end -BattleFrontier_ReceptionGate_EventScript_LevelMode:: @ 82664A4 +BattleFrontier_ReceptionGate_EventScript_LevelMode:: msgbox BattleFrontier_ReceptionGate_Text_LevelModeInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_Level50:: @ 82664B2 +BattleFrontier_ReceptionGate_EventScript_Level50:: msgbox BattleFrontier_ReceptionGate_Text_Level50Info, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_OpenLevel:: @ 82664C0 +BattleFrontier_ReceptionGate_EventScript_OpenLevel:: msgbox BattleFrontier_ReceptionGate_Text_OpenLevelInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_MonEntry:: @ 82664CE +BattleFrontier_ReceptionGate_EventScript_MonEntry:: msgbox BattleFrontier_ReceptionGate_Text_MonEntryInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_HoldItems:: @ 82664DC +BattleFrontier_ReceptionGate_EventScript_HoldItems:: msgbox BattleFrontier_ReceptionGate_Text_HoldItemsInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseRuleToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ExitRulesGuide:: @ 82664EA +BattleFrontier_ReceptionGate_EventScript_ExitRulesGuide:: msgbox BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier, MSGBOX_DEFAULT release end -BattleFrontier_ReceptionGate_EventScript_FrontierPassGuide:: @ 82664F4 +BattleFrontier_ReceptionGate_EventScript_FrontierPassGuide:: lock faceplayer msgbox BattleFrontier_ReceptionGate_Text_YourGuideToFrontierPass, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout:: @ 8266504 +BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout:: message BattleFrontier_ReceptionGate_Text_LearnAboutWhich1 waitmessage multichoice 16, 4, MULTI_FRONTIER_PASS_INFO, FALSE @@ -278,62 +278,62 @@ BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout:: @ case MULTI_B_PRESSED, BattleFrontier_ReceptionGate_EventScript_ExitFrontierPassGuide end -BattleFrontier_ReceptionGate_EventScript_Symbols:: @ 826654C +BattleFrontier_ReceptionGate_EventScript_Symbols:: msgbox BattleFrontier_ReceptionGate_Text_SymbolsInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_RecordBattle:: @ 826655A +BattleFrontier_ReceptionGate_EventScript_RecordBattle:: msgbox BattleFrontier_ReceptionGate_Text_RecordedBattleInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_BattlePoints:: @ 8266568 +BattleFrontier_ReceptionGate_EventScript_BattlePoints:: msgbox BattleFrontier_ReceptionGate_Text_BattlePointsInfo, MSGBOX_DEFAULT goto BattleFrontier_ReceptionGate_EventScript_ChooseFrontierPassInfoToLearnAbout end -BattleFrontier_ReceptionGate_EventScript_ExitFrontierPassGuide:: @ 8266576 +BattleFrontier_ReceptionGate_EventScript_ExitFrontierPassGuide:: msgbox BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier, MSGBOX_DEFAULT release end -BattleFrontier_ReceptionGate_Text_FirstTimeHereThisWay: @ 8266580 +BattleFrontier_ReceptionGate_Text_FirstTimeHereThisWay: .string "Is it your first time here?\n" .string "Please step this way!$" -BattleFrontier_ReceptionGate_Text_WelcomeToBattleFrontier: @ 82665B2 +BattleFrontier_ReceptionGate_Text_WelcomeToBattleFrontier: .string "The front lines of POKéMON battling!\n" .string "Welcome to the BATTLE FRONTIER!$" -BattleFrontier_ReceptionGate_Text_IssueFrontierPass: @ 82665F7 +BattleFrontier_ReceptionGate_Text_IssueFrontierPass: .string "For a first-time visitor, we issue\n" .string "the FRONTIER PASS.\p" .string "It's for use at all the facilities\n" .string "in the BATTLE FRONTIER.\p" .string "Here you are!$" -BattleFrontier_ReceptionGate_Text_ObtainedFrontierPass: @ 8266676 +BattleFrontier_ReceptionGate_Text_ObtainedFrontierPass: .string "{PLAYER} obtained\n" .string "the FRONTIER PASS.$" -BattleFrontier_ReceptionGate_Text_PlacedTrainerCardInFrontierPass: @ 8266695 +BattleFrontier_ReceptionGate_Text_PlacedTrainerCardInFrontierPass: .string "{PLAYER} placed the TRAINER CARD\n" .string "in the FRONTIER PASS.$" -BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier: @ 82666C6 +BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier: .string "We hope you enjoy all that the BATTLE\n" .string "FRONTIER has to offer!$" -BattleFrontier_ReceptionGate_Text_IfItIsntPlayerYouCame: @ 8266703 +BattleFrontier_ReceptionGate_Text_IfItIsntPlayerYouCame: .string "???: Well, if it isn't {PLAYER}{KUN}!\n" .string "You came out here!$" -BattleFrontier_ReceptionGate_Text_OhMrScottGoodDay: @ 8266733 +BattleFrontier_ReceptionGate_Text_OhMrScottGoodDay: .string "GUIDE: Oh! MR. SCOTT, sir!\n" .string "Good day to you, sir!$" -BattleFrontier_ReceptionGate_Text_ScottGreatToSeeYouHere: @ 8266764 +BattleFrontier_ReceptionGate_Text_ScottGreatToSeeYouHere: .string "SCOTT: It's great to see you here,\n" .string "it really is!\p" .string "I hope you'll take your time and\n" @@ -343,21 +343,21 @@ BattleFrontier_ReceptionGate_Text_ScottGreatToSeeYouHere: @ 8266764 .string "I also have my quarters here, so feel\n" .string "free to visit if you have time.$" -BattleFrontier_ReceptionGate_Text_YourGuideToFacilities: @ 8266857 +BattleFrontier_ReceptionGate_Text_YourGuideToFacilities: .string "I'm your guide to the various facilities\n" .string "here in the BATTLE FRONTIER.$" -BattleFrontier_ReceptionGate_Text_LearnAboutWhich2: @ 826689D +BattleFrontier_ReceptionGate_Text_LearnAboutWhich2: .string "Which would you like to learn about?$" -BattleFrontier_ReceptionGate_Text_BattleTowerInfo: @ 82668C2 +BattleFrontier_ReceptionGate_Text_BattleTowerInfo: .string "It is the gigantic tower considered\n" .string "to be the BATTLE FRONTIER's symbol.\p" .string "There are four kinds of BATTLE ROOMS\n" .string "in the tower for SINGLE, DOUBLE, MULTI,\l" .string "and LINK MULTI BATTLES.$" -BattleFrontier_ReceptionGate_Text_BattleDomeInfo: @ 826696F +BattleFrontier_ReceptionGate_Text_BattleDomeInfo: .string "The BATTLE DOME is the large building\n" .string "shaped like a huge egg.\p" .string "Events named Battle Tourneys are held\n" @@ -366,20 +366,20 @@ BattleFrontier_ReceptionGate_Text_BattleDomeInfo: @ 826696F .string "two courses--for SINGLE and DOUBLE\l" .string "BATTLES.$" -BattleFrontier_ReceptionGate_Text_BattlePalaceInfo: @ 8266A34 +BattleFrontier_ReceptionGate_Text_BattlePalaceInfo: .string "The BATTLE PALACE is the red building\n" .string "on the right of the BATTLE FRONTIER.\p" .string "There are two kinds of BATTLE HALLS\n" .string "for SINGLE and DOUBLE BATTLES.$" -BattleFrontier_ReceptionGate_Text_BattleArenaInfo: @ 8266AC2 +BattleFrontier_ReceptionGate_Text_BattleArenaInfo: .string "The BATTLE ARENA is the dojo-like\n" .string "building at the center-right of\l" .string "the BATTLE FRONTIER.\p" .string "An event called the Set KO Tourney\n" .string "takes place at the BATTLE ARENA.$" -BattleFrontier_ReceptionGate_Text_BattleFactoryInfo: @ 8266B5D +BattleFrontier_ReceptionGate_Text_BattleFactoryInfo: .string "The BATTLE FACTORY is the large\n" .string "building that is the closest to us.\p" .string "An event called the Battle Swap\n" @@ -388,20 +388,20 @@ BattleFrontier_ReceptionGate_Text_BattleFactoryInfo: @ 8266B5D .string "two courses for SINGLE and DOUBLE\l" .string "BATTLES.$" -BattleFrontier_ReceptionGate_Text_BattlePikeInfo: @ 8266C24 +BattleFrontier_ReceptionGate_Text_BattlePikeInfo: .string "The BATTLE PIKE is the building shaped\n" .string "like a POKéMON at the center-left of\l" .string "the BATTLE FRONTIER.\p" .string "An event called the Battle Choice\n" .string "is conducted there.$" -BattleFrontier_ReceptionGate_Text_BattlePyramidInfo: @ 8266CBB +BattleFrontier_ReceptionGate_Text_BattlePyramidInfo: .string "The BATTLE PYRAMID is the enormous\n" .string "pyramid.\p" .string "An event called the Battle Quest\n" .string "is conducted there.$" -BattleFrontier_ReceptionGate_Text_RankingHallInfo: @ 8266D1C +BattleFrontier_ReceptionGate_Text_RankingHallInfo: .string "The RANKING HALL is located near\n" .string "the BATTLE TOWER.\p" .string "There, you may see the most fantastic\n" @@ -409,28 +409,28 @@ BattleFrontier_ReceptionGate_Text_RankingHallInfo: @ 8266D1C .string "took on the many challenges of\l" .string "the BATTLE FRONTIER.$" -BattleFrontier_ReceptionGate_Text_ExchangeCornerInfo: @ 8266DCB +BattleFrontier_ReceptionGate_Text_ExchangeCornerInfo: .string "The EXCHANGE SERVICE CORNER is near\n" .string "the BATTLE TOWER.\p" .string "The Battle Points you have earned in\n" .string "the BATTLE FRONTIER may be exchanged\l" .string "for fabulous prizes there.$" -BattleFrontier_ReceptionGate_Text_YourGuideToRules: @ 8266E66 +BattleFrontier_ReceptionGate_Text_YourGuideToRules: .string "I'm your guide to the basic rules that\n" .string "are common to all the challenges\l" .string "offered by the facilities in the BATTLE\l" .string "FRONTIER.$" -BattleFrontier_ReceptionGate_Text_LearnAboutWhat: @ 8266EE0 +BattleFrontier_ReceptionGate_Text_LearnAboutWhat: .string "What would you like to learn about?$" -BattleFrontier_ReceptionGate_Text_LevelModeInfo: @ 8266F04 +BattleFrontier_ReceptionGate_Text_LevelModeInfo: .string "All the challenges at the BATTLE\n" .string "FRONTIER's facilities come in\l" .string "two courses--Level 50 and Open Level.$" -BattleFrontier_ReceptionGate_Text_Level50Info: @ 8266F69 +BattleFrontier_ReceptionGate_Text_Level50Info: .string "The Level 50 course is open to POKéMON\n" .string "up to and including Level 50.\p" .string "Please keep in mind, however, that\n" @@ -441,7 +441,7 @@ BattleFrontier_ReceptionGate_Text_Level50Info: @ 8266F69 .string "To begin, we hope you will challenge\n" .string "this course.$" -BattleFrontier_ReceptionGate_Text_OpenLevelInfo: @ 8267080 +BattleFrontier_ReceptionGate_Text_OpenLevelInfo: .string "The Open Level course places no limit\n" .string "on the levels of POKéMON entering\l" .string "challenges.\p" @@ -451,7 +451,7 @@ BattleFrontier_ReceptionGate_Text_OpenLevelInfo: @ 8267080 .string "However, no TRAINER you face will\n" .string "have any POKéMON below Level 60.$" -BattleFrontier_ReceptionGate_Text_MonEntryInfo: @ 826716A +BattleFrontier_ReceptionGate_Text_MonEntryInfo: .string "Virtually any kind of POKéMON may take\n" .string "on the challenges at all facilities.\p" .string "EGGS and certain kinds of POKéMON,\n" @@ -462,7 +462,7 @@ BattleFrontier_ReceptionGate_Text_MonEntryInfo: @ 826716A .string "of the same kind of POKéMON are not\l" .string "permitted.$" -BattleFrontier_ReceptionGate_Text_HoldItemsInfo: @ 8267298 +BattleFrontier_ReceptionGate_Text_HoldItemsInfo: .string "When entering a challenge at a BATTLE\n" .string "FRONTIER facility, POKéMON may not\l" .string "be holding the same kind of item.\p" @@ -470,13 +470,13 @@ BattleFrontier_ReceptionGate_Text_HoldItemsInfo: @ 8267298 .string "entering a challenge are holding\l" .string "different items.$" -BattleFrontier_ReceptionGate_Text_YourGuideToFrontierPass: @ 8267357 +BattleFrontier_ReceptionGate_Text_YourGuideToFrontierPass: .string "I'm your guide to the FRONTIER PASS.$" -BattleFrontier_ReceptionGate_Text_LearnAboutWhich1: @ 826737C +BattleFrontier_ReceptionGate_Text_LearnAboutWhich1: .string "Which would you like to learn about?$" -BattleFrontier_ReceptionGate_Text_SymbolsInfo: @ 82673A1 +BattleFrontier_ReceptionGate_Text_SymbolsInfo: .string "There are seven facilities at\n" .string "the BATTLE FRONTIER.\p" .string "TRAINERS who gain recognition for\n" @@ -488,7 +488,7 @@ BattleFrontier_ReceptionGate_Text_SymbolsInfo: @ 82673A1 .string "It's certainly not easy to win symbols.\n" .string "I wish you the best of luck!$" -BattleFrontier_ReceptionGate_Text_RecordedBattleInfo: @ 82674F3 +BattleFrontier_ReceptionGate_Text_RecordedBattleInfo: .string "It is possible to record one battle\n" .string "on your FRONTIER PASS.\p" .string "You may record a battle you had with\n" @@ -500,7 +500,7 @@ BattleFrontier_ReceptionGate_Text_RecordedBattleInfo: @ 82674F3 .string "You may choose to record your match\n" .string "at the end of a battle.$" -BattleFrontier_ReceptionGate_Text_BattlePointsInfo: @ 826761C +BattleFrontier_ReceptionGate_Text_BattlePointsInfo: .string "Battle Points are rewards given to\n" .string "TRAINERS who battled outstandingly\l" .string "at the BATTLE FRONTIER.\p" diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc index ece1577b4e75..5c793517eeac 100644 --- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc +++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_SCOTT, 1 -BattleFrontier_ScottsHouse_MapScripts:: @ 82636A7 +BattleFrontier_ScottsHouse_MapScripts:: .byte 0 -BattleFrontier_ScottsHouse_EventScript_Scott:: @ 82636A8 +BattleFrontier_ScottsHouse_EventScript_Scott:: lock faceplayer goto_if_set FLAG_TEMP_4, BattleFrontier_ScottsHouse_EventScript_GivenBerry @@ -12,20 +12,20 @@ BattleFrontier_ScottsHouse_EventScript_Scott:: @ 82636A8 goto BattleFrontier_ScottsHouse_EventScript_CheckGiveItems end -BattleFrontier_ScottsHouse_EventScript_CheckGiveItems:: @ 82636CB +BattleFrontier_ScottsHouse_EventScript_CheckGiveItems:: goto_if_unset FLAG_SCOTT_GIVES_BATTLE_POINTS, BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier goto_if_unset FLAG_COLLECTED_ALL_SILVER_SYMBOLS, BattleFrontier_ScottsHouse_EventScript_CheckSilverSymbols goto_if_unset FLAG_COLLECTED_ALL_GOLD_SYMBOLS, BattleFrontier_ScottsHouse_EventScript_CheckGoldSymbols goto BattleFrontier_ScottsHouse_EventScript_CheckGiveShield end -BattleFrontier_ScottsHouse_EventScript_CheckGiveShield:: @ 82636EC +BattleFrontier_ScottsHouse_EventScript_CheckGiveShield:: goto_if_unset FLAG_RECEIVED_SILVER_SHIELD, BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield goto_if_unset FLAG_RECEIVED_GOLD_SHIELD, BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield goto BattleFrontier_ScottsHouse_EventScript_RandomComment end -BattleFrontier_ScottsHouse_EventScript_CheckSilverSymbols:: @ 8263704 +BattleFrontier_ScottsHouse_EventScript_CheckSilverSymbols:: goto_if_unset FLAG_SYS_TOWER_SILVER, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield goto_if_unset FLAG_SYS_DOME_SILVER, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield goto_if_unset FLAG_SYS_PALACE_SILVER, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield @@ -42,7 +42,7 @@ BattleFrontier_ScottsHouse_EventScript_CheckSilverSymbols:: @ 8263704 release end -BattleFrontier_ScottsHouse_EventScript_CheckGoldSymbols:: @ 826376A +BattleFrontier_ScottsHouse_EventScript_CheckGoldSymbols:: goto_if_unset FLAG_SYS_TOWER_GOLD, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield goto_if_unset FLAG_SYS_DOME_GOLD, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield goto_if_unset FLAG_SYS_PALACE_GOLD, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield @@ -59,17 +59,17 @@ BattleFrontier_ScottsHouse_EventScript_CheckGoldSymbols:: @ 826376A release end -BattleFrontier_ScottsHouse_EventScript_BerryPocketFull:: @ 82637D0 +BattleFrontier_ScottsHouse_EventScript_BerryPocketFull:: msgbox BattleFrontier_ScottsHouse_Text_BerryPocketStuffed, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_GivenBerry:: @ 82637DA +BattleFrontier_ScottsHouse_EventScript_GivenBerry:: msgbox BattleFrontier_ScottsHouse_Text_SoGladIBroughtYouHere, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_RandomComment:: @ 82637E4 +BattleFrontier_ScottsHouse_EventScript_RandomComment:: random 3 compare VAR_RESULT, 1 goto_if_eq BattleFrontier_ScottsHouse_EventScript_FrontierBrainComment @@ -79,17 +79,17 @@ BattleFrontier_ScottsHouse_EventScript_RandomComment:: @ 82637E4 release end -BattleFrontier_ScottsHouse_EventScript_FrontierBrainComment:: @ 8263807 +BattleFrontier_ScottsHouse_EventScript_FrontierBrainComment:: msgbox BattleFrontier_ScottsHouse_Text_HaveYouMetFrontierBrain, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_ArtisanCaveComment:: @ 8263811 +BattleFrontier_ScottsHouse_EventScript_ArtisanCaveComment:: msgbox BattleFrontier_ScottsHouse_Text_MayFindWildMonsInFrontier, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield:: @ 826381B +BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 tower_get TOWER_DATA_WIN_STREAK @@ -102,7 +102,7 @@ BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield:: @ 826381B goto BattleFrontier_ScottsHouse_EventScript_RandomComment end -BattleFrontier_ScottsHouse_EventScript_GiveSilverShield:: @ 826387A +BattleFrontier_ScottsHouse_EventScript_GiveSilverShield:: msgbox BattleFrontier_ScottsHouse_Text_Beat50TrainersInARow, MSGBOX_DEFAULT givedecoration DECOR_SILVER_SHIELD compare VAR_RESULT, FALSE @@ -112,17 +112,17 @@ BattleFrontier_ScottsHouse_EventScript_GiveSilverShield:: @ 826387A goto BattleFrontier_ScottsHouse_EventScript_GivenShield end -BattleFrontier_ScottsHouse_EventScript_NoRoomForShield:: @ 82638A0 +BattleFrontier_ScottsHouse_EventScript_NoRoomForShield:: msgbox BattleFrontier_ScottsHouse_Text_ComeBackForThisLater, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_GivenShield:: @ 82638AA +BattleFrontier_ScottsHouse_EventScript_GivenShield:: msgbox BattleFrontier_ScottsHouse_Text_ExpectingToHearEvenGreaterThings, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield:: @ 82638B4 +BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 tower_get TOWER_DATA_WIN_STREAK @@ -135,7 +135,7 @@ BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield:: @ 82638B4 goto BattleFrontier_ScottsHouse_EventScript_RandomComment end -BattleFrontier_ScottsHouse_EventScript_GiveGoldShield:: @ 8263913 +BattleFrontier_ScottsHouse_EventScript_GiveGoldShield:: msgbox BattleFrontier_ScottsHouse_Text_Beat100TrainersInARow, MSGBOX_DEFAULT givedecoration DECOR_GOLD_SHIELD compare VAR_RESULT, FALSE @@ -145,12 +145,12 @@ BattleFrontier_ScottsHouse_EventScript_GiveGoldShield:: @ 8263913 goto BattleFrontier_ScottsHouse_EventScript_GivenShield end -BattleFrontier_ScottsHouse_EventScript_GivenBattlePoints:: @ 8263939 +BattleFrontier_ScottsHouse_EventScript_GivenBattlePoints:: msgbox BattleFrontier_ScottsHouse_Text_ExpectingGreatThings, MSGBOX_DEFAULT release end -BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier:: @ 8263943 +BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier:: msgbox BattleFrontier_ScottsHouse_Text_WelcomeToBattleFrontier, MSGBOX_DEFAULT closemessage delay 30 @@ -175,31 +175,31 @@ BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier:: @ 8263943 goto BattleFrontier_ScottsHouse_EventScript_Give1BattlePoint end -BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints:: @ 82639BC +BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints:: buffernumberstring 0, 4 setvar VAR_0x8004, 4 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end -BattleFrontier_ScottsHouse_EventScript_Give3BattlePoints:: @ 82639CB +BattleFrontier_ScottsHouse_EventScript_Give3BattlePoints:: buffernumberstring 0, 3 setvar VAR_0x8004, 3 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end -BattleFrontier_ScottsHouse_EventScript_Give2BattlePoints:: @ 82639DA +BattleFrontier_ScottsHouse_EventScript_Give2BattlePoints:: buffernumberstring 0, 2 setvar VAR_0x8004, 2 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end -BattleFrontier_ScottsHouse_EventScript_Give1BattlePoint:: @ 82639E9 +BattleFrontier_ScottsHouse_EventScript_Give1BattlePoint:: buffernumberstring 0, 1 setvar VAR_0x8004, 1 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end -BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints:: @ 82639F8 +BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints:: special GiveFrontierBattlePoints msgbox BattleFrontier_ScottsHouse_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS msgbox BattleFrontier_ScottsHouse_Text_ExplainBattlePoints, MSGBOX_DEFAULT @@ -208,27 +208,27 @@ BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints:: @ 82639F8 release end -BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth:: @ 8263A13 +BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth:: applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth:: @ 8263A1E +BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth:: applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast:: @ 8263A29 +BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast:: applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest:: @ 8263A34 +BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest:: applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -BattleFrontier_ScottsHouse_Text_WelcomeToBattleFrontier: @ 8263A3F +BattleFrontier_ScottsHouse_Text_WelcomeToBattleFrontier: .string "SCOTT: Well, hello and welcome!\n" .string "Heheh… Sorry about the cramped space.\p" .string "Anyway, {PLAYER}{KUN}, let me formally\n" @@ -237,7 +237,7 @@ BattleFrontier_ScottsHouse_Text_WelcomeToBattleFrontier: @ 8263A3F .string "It took me years and years, but I've\l" .string "finally given shape to my dream.$" -BattleFrontier_ScottsHouse_Text_HowMuchEffortItTookToMakeReal: @ 8263B29 +BattleFrontier_ScottsHouse_Text_HowMuchEffortItTookToMakeReal: .string "On reflection, it was a terribly long\n" .string "journey…\p" .string "I left home alone on a quest to find\n" @@ -245,7 +245,7 @@ BattleFrontier_ScottsHouse_Text_HowMuchEffortItTookToMakeReal: @ 8263B29 .string "No one can imagine how much effort\n" .string "or time it took to make this real.$" -BattleFrontier_ScottsHouse_Text_HaveThisAsMementoOfOurPathsCrossing: @ 8263BD4 +BattleFrontier_ScottsHouse_Text_HaveThisAsMementoOfOurPathsCrossing: .string "But that's all in the past.\n" .string "No point dwelling on that!\p" .string "All I want for you is to enjoy battling\n" @@ -254,11 +254,11 @@ BattleFrontier_ScottsHouse_Text_HaveThisAsMementoOfOurPathsCrossing: @ 8263BD4 .string "as a memento for all the time our\l" .string "paths crossed on our journeys.$" -BattleFrontier_ScottsHouse_Text_ObtainedXBattlePoints: @ 8263CB0 +BattleFrontier_ScottsHouse_Text_ObtainedXBattlePoints: .string "{PLAYER} obtained\n" .string "{STR_VAR_1} Battle Point(s).$" -BattleFrontier_ScottsHouse_Text_ExplainBattlePoints: @ 8263CD0 +BattleFrontier_ScottsHouse_Text_ExplainBattlePoints: .string "SCOTT: You can check your Battle\n" .string "Points on your FRONTIER PASS.\p" .string "The more success you have here at\n" @@ -267,10 +267,10 @@ BattleFrontier_ScottsHouse_Text_ExplainBattlePoints: @ 8263CD0 .string "Use your Battle Points the way you\n" .string "see fit, like trading them for items.$" -BattleFrontier_ScottsHouse_Text_ExpectingGreatThings: @ 8263DB8 +BattleFrontier_ScottsHouse_Text_ExpectingGreatThings: .string "I'm expecting great things from you!$" -BattleFrontier_ScottsHouse_Text_WhyIGoSeekingTrainers: @ 8263DDD +BattleFrontier_ScottsHouse_Text_WhyIGoSeekingTrainers: .string "SCOTT: Every TRAINER is an individual.\n" .string "They all lead lives of their own.\p" .string "But when they're in a battle,\n" @@ -282,7 +282,7 @@ BattleFrontier_ScottsHouse_Text_WhyIGoSeekingTrainers: @ 8263DDD .string "TRAINERS who are serious about\l" .string "battling, and invite them here.$" -BattleFrontier_ScottsHouse_Text_HaveYouMetFrontierBrain: @ 8263F12 +BattleFrontier_ScottsHouse_Text_HaveYouMetFrontierBrain: .string "SCOTT: Have you met any of\n" .string "the FRONTIER BRAINS?\p" .string "Better yet, have you obtained any\n" @@ -292,7 +292,7 @@ BattleFrontier_ScottsHouse_Text_HaveYouMetFrontierBrain: @ 8263F12 .string "But I'm sure that seeing how tough\n" .string "you are will startle even them!$" -BattleFrontier_ScottsHouse_Text_MayFindWildMonsInFrontier: @ 8263FFE +BattleFrontier_ScottsHouse_Text_MayFindWildMonsInFrontier: .string "SCOTT: You don't just train for battle,\n" .string "right?\p" .string "I think I remember you working on\n" @@ -302,7 +302,7 @@ BattleFrontier_ScottsHouse_Text_MayFindWildMonsInFrontier: @ 8263FFE .string "the BATTLE FRONTIER somewhere…\l" .string "Fufufu!$" -BattleFrontier_ScottsHouse_Text_YouveCollectedAllSilverSymbols: @ 82640BC +BattleFrontier_ScottsHouse_Text_YouveCollectedAllSilverSymbols: .string "SCOTT: Are you enjoying things in\n" .string "the BATTLE FRONTIER?\p" .string "…Wait a second…\n" @@ -317,7 +317,7 @@ BattleFrontier_ScottsHouse_Text_YouveCollectedAllSilverSymbols: @ 82640BC .string "I want you to have this.\n" .string "I'm sure you can put it to proper use.$" -BattleFrontier_ScottsHouse_Text_YouveCollectedAllGoldSymbols: @ 8264216 +BattleFrontier_ScottsHouse_Text_YouveCollectedAllGoldSymbols: .string "SCOTT: I hope you're enjoying\n" .string "everything in the BATTLE FRONTIER.\p" .string "…Wait a second…\n" @@ -332,35 +332,35 @@ BattleFrontier_ScottsHouse_Text_YouveCollectedAllGoldSymbols: @ 8264216 .string "I think you will be able to\n" .string "appreciate the value of my gift!$" -BattleFrontier_ScottsHouse_Text_SoGladIBroughtYouHere: @ 8264373 +BattleFrontier_ScottsHouse_Text_SoGladIBroughtYouHere: .string "I must say I have the gift of knowing\n" .string "a good TRAINER when I see one.\p" .string "I'm so glad I had the foresight to\n" .string "bring you here!$" -BattleFrontier_ScottsHouse_Text_BerryPocketStuffed: @ 82643EB +BattleFrontier_ScottsHouse_Text_BerryPocketStuffed: .string "Your BERRY POCKET seems to\n" .string "be stuffed.$" -BattleFrontier_ScottsHouse_Text_Beat50TrainersInARow: @ 8264412 +BattleFrontier_ScottsHouse_Text_Beat50TrainersInARow: .string "SCOTT: Oh, I heard about you!\n" .string "How you ruled the BATTLE TOWER!\l" .string "You beat over 50 TRAINERS in a row?\p" .string "That's fantastic!\n" .string "I want you to have this!$" -BattleFrontier_ScottsHouse_Text_Beat100TrainersInARow: @ 826449F +BattleFrontier_ScottsHouse_Text_Beat100TrainersInARow: .string "SCOTT: Oh, my! I heard about you!\n" .string "How you overwhelmed the BATTLE TOWER!\l" .string "You beat over 100 TRAINERS in a row?\p" .string "That's ridiculously spectacular!\n" .string "You've got to have this!$" -BattleFrontier_ScottsHouse_Text_ExpectingToHearEvenGreaterThings: @ 8264546 +BattleFrontier_ScottsHouse_Text_ExpectingToHearEvenGreaterThings: .string "I'll be expecting to hear even greater\n" .string "things about you now!$" -BattleFrontier_ScottsHouse_Text_ComeBackForThisLater: @ 8264583 +BattleFrontier_ScottsHouse_Text_ComeBackForThisLater: .string "Oops, well, if you have too much\n" .string "stuff, come back for this later.$" diff --git a/data/maps/BattlePyramidSquare01/scripts.inc b/data/maps/BattlePyramidSquare01/scripts.inc index c547b1b81d49..7a5db2fe2bb1 100644 --- a/data/maps/BattlePyramidSquare01/scripts.inc +++ b/data/maps/BattlePyramidSquare01/scripts.inc @@ -1,2 +1,2 @@ -BattlePyramidSquare01_MapScripts:: @ 823D1A5 +BattlePyramidSquare01_MapScripts:: .byte 0 diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index 58a74f8c463c..03463729cb19 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -2,17 +2,17 @@ @ 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:: @ 8267F15 +BirthIsland_Exterior_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BirthIsland_Exterior_OnTransition map_script MAP_SCRIPT_ON_RESUME, BirthIsland_Exterior_OnResume map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, BirthIsland_Exterior_OnReturnToField .byte 0 -BirthIsland_Exterior_OnReturnToField: @ 8267F25 +BirthIsland_Exterior_OnReturnToField: special SetDeoxysRockPalette end -BirthIsland_Exterior_OnTransition: @ 8267F29 +BirthIsland_Exterior_OnTransition: setflag FLAG_MAP_SCRIPT_CHECKED_DEOXYS setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_DEOXYS_ROCK_STEP_COUNT, 0 @@ -21,29 +21,29 @@ BirthIsland_Exterior_OnTransition: @ 8267F29 call_if_unset FLAG_BATTLED_DEOXYS, BirthIsland_Exterior_EventScript_TryShowDeoxysPuzzle end -BirthIsland_Exterior_EventScript_HideDeoxysAndPuzzle:: @ 8267F4E +BirthIsland_Exterior_EventScript_HideDeoxysAndPuzzle:: setflag FLAG_HIDE_DEOXYS setflag FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE return -BirthIsland_Exterior_EventScript_TryShowDeoxysPuzzle:: @ 8267F55 +BirthIsland_Exterior_EventScript_TryShowDeoxysPuzzle:: goto_if_set FLAG_DEFEATED_DEOXYS, Common_EventScript_NopReturn clearflag FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE clearflag FLAG_DEOXYS_ROCK_COMPLETE return -BirthIsland_Exterior_OnResume: @ 8267F65 +BirthIsland_Exterior_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, BirthIsland_Exterior_EventScript_TryRemoveDeoxys end -BirthIsland_Exterior_EventScript_TryRemoveDeoxys:: @ 8267F6F +BirthIsland_Exterior_EventScript_TryRemoveDeoxys:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_DEOXYS return -BirthIsland_Exterior_EventScript_Triangle:: @ 8267F83 +BirthIsland_Exterior_EventScript_Triangle:: lock faceplayer special DoDeoxysRockInteraction @@ -55,19 +55,19 @@ BirthIsland_Exterior_EventScript_Triangle:: @ 8267F83 case 3, BirthIsland_Exterior_EventScript_NotSolved3 end -BirthIsland_Exterior_EventScript_NotSolved1:: @ 8267FBB +BirthIsland_Exterior_EventScript_NotSolved1:: release end -BirthIsland_Exterior_EventScript_NotSolved2:: @ 8267FBD +BirthIsland_Exterior_EventScript_NotSolved2:: release end -BirthIsland_Exterior_EventScript_NotSolved3:: @ 8267FBF +BirthIsland_Exterior_EventScript_NotSolved3:: release end -BirthIsland_Exterior_EventScript_Deoxys:: @ 8267FC1 +BirthIsland_Exterior_EventScript_Deoxys:: waitse setfieldeffectargument 0, LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK setfieldeffectargument 1, MAP_NUM(BIRTH_ISLAND_EXTERIOR) @@ -102,18 +102,18 @@ BirthIsland_Exterior_EventScript_Deoxys:: @ 8267FC1 release end -BirthIsland_Exterior_EventScript_DefeatedDeoxys:: @ 826803B +BirthIsland_Exterior_EventScript_DefeatedDeoxys:: setflag FLAG_DEFEATED_DEOXYS setvar VAR_0x8004, SPECIES_DEOXYS goto Common_EventScript_LegendaryFlewAway end -BirthIsland_Exterior_EventScript_RanFromDeoxys:: @ 8268049 +BirthIsland_Exterior_EventScript_RanFromDeoxys:: setvar VAR_0x8004, SPECIES_DEOXYS goto Common_EventScript_LegendaryFlewAway end -BirthIsland_Exterior_Movement_DeoxysApproach: @ 8268054 +BirthIsland_Exterior_Movement_DeoxysApproach: walk_slow_down walk_slow_down walk_slow_down diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc index b9274ee2f18f..7ec88ae18804 100644 --- a/data/maps/BirthIsland_Harbor/scripts.inc +++ b/data/maps/BirthIsland_Harbor/scripts.inc @@ -1,10 +1,10 @@ .set LOCALID_SAILOR, 1 .set LOCALID_SS_TIDAL, 2 -BirthIsland_Harbor_MapScripts:: @ 826805C +BirthIsland_Harbor_MapScripts:: .byte 0 -BirthIsland_Harbor_EventScript_Sailor:: @ 826805D +BirthIsland_Harbor_EventScript_Sailor:: lock faceplayer msgbox BirthIsland_Harbor_Text_SailorReturn, MSGBOX_YESNO @@ -23,7 +23,7 @@ BirthIsland_Harbor_EventScript_Sailor:: @ 826805D release end -BirthIsland_Harbor_EventScript_AsYouLike:: @ 82680A2 +BirthIsland_Harbor_EventScript_AsYouLike:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT release end diff --git a/data/maps/CaveOfOrigin_1F/scripts.inc b/data/maps/CaveOfOrigin_1F/scripts.inc index 943a9e9eded2..fc18fa5254fd 100644 --- a/data/maps/CaveOfOrigin_1F/scripts.inc +++ b/data/maps/CaveOfOrigin_1F/scripts.inc @@ -1,7 +1,7 @@ -CaveOfOrigin_1F_MapScripts:: @ 8235768 +CaveOfOrigin_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, CaveOfOrigin_1F_OnTransition .byte 0 -CaveOfOrigin_1F_OnTransition: @ 823576E +CaveOfOrigin_1F_OnTransition: call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_EventScript_DisableTriggers end diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc index e9a146f735bc..511364cfa583 100644 --- a/data/maps/CaveOfOrigin_B1F/scripts.inc +++ b/data/maps/CaveOfOrigin_B1F/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_WALLACE, 1 -CaveOfOrigin_B1F_MapScripts:: @ 82357A8 +CaveOfOrigin_B1F_MapScripts:: .byte 0 -CaveOfOrigin_B1F_EventScript_Wallace:: @ 82357A9 +CaveOfOrigin_B1F_EventScript_Wallace:: lock faceplayer msgbox CaveOfOrigin_B1F_Text_WallaceStory, MSGBOX_DEFAULT @@ -23,7 +23,7 @@ CaveOfOrigin_B1F_EventScript_Wallace:: @ 82357A9 waitmessage goto CaveOfOrigin_B1F_EventScript_WheresRayquaza -CaveOfOrigin_B1F_EventScript_WheresRayquaza:: @ 82357F0 +CaveOfOrigin_B1F_EventScript_WheresRayquaza:: multichoice 0, 0, MULTI_WHERES_RAYQUAZA, FALSE switch VAR_RESULT case 0, CaveOfOrigin_B1F_EventScript_AtCaveOfOrigin @@ -33,22 +33,22 @@ CaveOfOrigin_B1F_EventScript_WheresRayquaza:: @ 82357F0 goto CaveOfOrigin_B1F_EventScript_DontRemember end -CaveOfOrigin_B1F_EventScript_AtCaveOfOrigin:: @ 823582C +CaveOfOrigin_B1F_EventScript_AtCaveOfOrigin:: message CaveOfOrigin_B1F_Text_ButWereInCaveOfOrigin waitmessage goto CaveOfOrigin_B1F_EventScript_WheresRayquaza -CaveOfOrigin_B1F_EventScript_AtMtPyre:: @ 8235837 +CaveOfOrigin_B1F_EventScript_AtMtPyre:: message CaveOfOrigin_B1F_Text_OldLadyDidntMentionThat waitmessage goto CaveOfOrigin_B1F_EventScript_WheresRayquaza -CaveOfOrigin_B1F_EventScript_DontRemember:: @ 8235842 +CaveOfOrigin_B1F_EventScript_DontRemember:: message CaveOfOrigin_B1F_Text_CantYouRememberSomehow waitmessage goto CaveOfOrigin_B1F_EventScript_WheresRayquaza -CaveOfOrigin_B1F_EventScript_AtSkyPillar:: @ 823584D +CaveOfOrigin_B1F_EventScript_AtSkyPillar:: msgbox CaveOfOrigin_B1F_Text_WellHeadToSkyPillar, MSGBOX_DEFAULT closemessage playse SE_EXIT @@ -61,7 +61,7 @@ CaveOfOrigin_B1F_EventScript_AtSkyPillar:: @ 823584D release end -CaveOfOrigin_B1F_Text_WallaceStory: @ 823586E +CaveOfOrigin_B1F_Text_WallaceStory: .string "Ah, so you are {PLAYER}{KUN}?\n" .string "I've heard tales of your exploits.\p" .string "My name is WALLACE.\p" @@ -85,19 +85,19 @@ CaveOfOrigin_B1F_Text_WallaceStory: @ 823586E .string "But even I have no clue as to\n" .string "RAYQUAZA's whereabouts…$" -CaveOfOrigin_B1F_Text_WhereIsRayquaza: @ 8235ACE +CaveOfOrigin_B1F_Text_WhereIsRayquaza: .string "WALLACE: {PLAYER}{KUN}, do you perhaps\n" .string "know where RAYQUAZA is now?\p" .string "If you do, please tell me.$" -CaveOfOrigin_B1F_Text_ButWereInCaveOfOrigin: @ 8235B23 +CaveOfOrigin_B1F_Text_ButWereInCaveOfOrigin: .string "WALLACE: The CAVE OF ORIGIN?\p" .string "But that's right here!\n" .string "I need you to do better than that!\p" .string "Please, I need you to think about\n" .string "where RAYQUAZA might be right now.$" -CaveOfOrigin_B1F_Text_OldLadyDidntMentionThat: @ 8235BBF +CaveOfOrigin_B1F_Text_OldLadyDidntMentionThat: .string "WALLACE: MT. PYRE?\p" .string "But when I met the old lady there\n" .string "earlier, she made no mention of it.\p" @@ -106,12 +106,12 @@ CaveOfOrigin_B1F_Text_OldLadyDidntMentionThat: @ 8235BBF .string "{PLAYER}{KUN}, could you think about this\n" .string "more carefully for me?$" -CaveOfOrigin_B1F_Text_CantYouRememberSomehow: @ 8235C99 +CaveOfOrigin_B1F_Text_CantYouRememberSomehow: .string "WALLACE: Huh? You don't remember?\n" .string "Hmm… That's a problem…\p" .string "Can't you remember somehow?$" -CaveOfOrigin_B1F_Text_WellHeadToSkyPillar: @ 8235CEE +CaveOfOrigin_B1F_Text_WellHeadToSkyPillar: .string "WALLACE: The SKY PILLAR?\p" .string "That's it!\n" .string "It must be the SKY PILLAR!\p" diff --git a/data/maps/CaveOfOrigin_Entrance/scripts.inc b/data/maps/CaveOfOrigin_Entrance/scripts.inc index 76cdbc7ad200..091246ae0df3 100644 --- a/data/maps/CaveOfOrigin_Entrance/scripts.inc +++ b/data/maps/CaveOfOrigin_Entrance/scripts.inc @@ -1,8 +1,8 @@ -CaveOfOrigin_Entrance_MapScripts:: @ 8235759 +CaveOfOrigin_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, CaveOfOrigin_Entrance_OnResume .byte 0 -CaveOfOrigin_Entrance_OnResume: @ 823575F +CaveOfOrigin_Entrance_OnResume: setescapewarp MAP_SOOTOPOLIS_CITY, 255, 31, 17 end diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc index 9f3fefdeb6b9..25744c489749 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc @@ -1,7 +1,7 @@ -CaveOfOrigin_UnusedRubySapphireMap1_MapScripts:: @ 8235778 +CaveOfOrigin_UnusedRubySapphireMap1_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, CaveOfOrigin_UnusedRubySapphireMap1_OnTransition .byte 0 -CaveOfOrigin_UnusedRubySapphireMap1_OnTransition: @ 823577E +CaveOfOrigin_UnusedRubySapphireMap1_OnTransition: call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_EventScript_DisableTriggers end diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc index 60b1f0ccacac..53d7c03fc619 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc @@ -1,8 +1,8 @@ -CaveOfOrigin_UnusedRubySapphireMap2_MapScripts:: @ 8235788 +CaveOfOrigin_UnusedRubySapphireMap2_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, CaveOfOrigin_UnusedRubySapphireMap2_OnTransition .byte 0 -CaveOfOrigin_UnusedRubySapphireMap2_OnTransition: @ 823578E +CaveOfOrigin_UnusedRubySapphireMap2_OnTransition: call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_EventScript_DisableTriggers end diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc index e30b50cbef18..c476d672dede 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc @@ -1,8 +1,8 @@ -CaveOfOrigin_UnusedRubySapphireMap3_MapScripts:: @ 8235798 +CaveOfOrigin_UnusedRubySapphireMap3_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, CaveOfOrigin_UnusedRubySapphireMap3_OnTransition .byte 0 -CaveOfOrigin_UnusedRubySapphireMap3_OnTransition: @ 823579E +CaveOfOrigin_UnusedRubySapphireMap3_OnTransition: call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_EventScript_DisableTriggers end diff --git a/data/maps/ContestHall/scripts.inc b/data/maps/ContestHall/scripts.inc index abde00cc2f01..535e28b7892a 100644 --- a/data/maps/ContestHall/scripts.inc +++ b/data/maps/ContestHall/scripts.inc @@ -1,4 +1,4 @@ -ContestHall_MapScripts:: @ 823B781 +ContestHall_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, ContestHall_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, ContestHall_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, ContestHall_OnTransition @@ -6,17 +6,17 @@ ContestHall_MapScripts:: @ 823B781 map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, ContestHall_OnReturn .byte 0 -ContestHall_OnReturn: @ 823B79B +ContestHall_OnReturn: special LoadLinkContestPlayerPalettes end -ContestHall_OnTransition: @ 823B79F +ContestHall_OnTransition: call ContestHall_EventScript_ReadyContestMusic setvar VAR_TEMP_0, 1 call ContestHall_EventScript_AddRandomAudienceMembers end -ContestHall_EventScript_ReadyContestMusic:: @ 823B7AF +ContestHall_EventScript_ReadyContestMusic:: call ContestHall_EventScript_TryWaitForLink special GetContestMultiplayerId compare VAR_RESULT, 0 @@ -31,49 +31,49 @@ ContestHall_EventScript_ReadyContestMusic:: @ 823B7AF call_if_eq ContestHall_EventScript_SaveContestMusic return -ContestHall_EventScript_SaveContestMusicPlayer1:: @ 823B7EF +ContestHall_EventScript_SaveContestMusicPlayer1:: savebgm MUS_LINK_CONTEST_P1 return -ContestHall_EventScript_SaveContestMusicPlayer2:: @ 823B7F3 +ContestHall_EventScript_SaveContestMusicPlayer2:: savebgm MUS_LINK_CONTEST_P2 return -ContestHall_EventScript_SaveContestMusicPlayer3:: @ 823B7F7 +ContestHall_EventScript_SaveContestMusicPlayer3:: savebgm MUS_LINK_CONTEST_P3 return -ContestHall_EventScript_SaveContestMusicPlayer4:: @ 823B7FB +ContestHall_EventScript_SaveContestMusicPlayer4:: savebgm MUS_LINK_CONTEST_P4 return -ContestHall_EventScript_SaveContestMusic:: @ 823B7FF +ContestHall_EventScript_SaveContestMusic:: savebgm MUS_CONTEST return -ContestHall_OnResume: @ 823B803 +ContestHall_OnResume: compare VAR_TEMP_9, 1 call_if_eq ContestHall_EventScript_ReShowAudience end -ContestHall_EventScript_ReShowAudience:: @ 823B80F +ContestHall_EventScript_ReShowAudience:: call ContestHall_EventScript_CreateAudience return -ContestHall_OnFrame: @ 823B815 +ContestHall_OnFrame: map_script_2 VAR_CONTEST_HALL_STATE, 1, ContestHall_EventScript_Contest .2byte 0 -ContestHall_OnWarp: @ 823B81F +ContestHall_OnWarp: map_script_2 VAR_CONTEST_HALL_STATE, 1, ContestHall_EventScript_SetContestObjects .2byte 0 -ContestHall_EventScript_Contest:: @ 823B829 +ContestHall_EventScript_Contest:: call ContestHall_EventScript_DoContest call ContestHall_EventScript_SetExitWarp end -ContestHall_EventScript_SetContestObjects:: @ 823B834 +ContestHall_EventScript_SetContestObjects:: special LoadLinkContestPlayerPalettes hideobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN call ContestHall_EventScript_CreateAudience @@ -81,14 +81,14 @@ ContestHall_EventScript_SetContestObjects:: @ 823B834 @ There are 8 audience member object events, 7 of which are given random gfx below (the 8th is the Artist) @ The rest of the audience is created statically by ContestHall_EventScript_CreateAudience -ContestHall_EventScript_AddRandomAudienceMembers:: @ 823B842 +ContestHall_EventScript_AddRandomAudienceMembers:: call ContestHall_EventScript_GetRandomAudienceGfxId call ContestHall_EventScript_SetRandomAudienceGfx compare VAR_TEMP_0, 8 goto_if_lt ContestHall_EventScript_AddRandomAudienceMembers return -ContestHall_EventScript_SetRandomAudienceGfx:: @ 823B858 +ContestHall_EventScript_SetRandomAudienceGfx:: switch VAR_TEMP_0 case 1, ContestHall_EventScript_SetRandomAudience1 case 2, ContestHall_EventScript_SetRandomAudience2 @@ -99,42 +99,42 @@ ContestHall_EventScript_SetRandomAudienceGfx:: @ 823B858 case 7, ContestHall_EventScript_SetRandomAudience7 end -ContestHall_EventScript_SetRandomAudience1:: @ 823B8AB +ContestHall_EventScript_SetRandomAudience1:: copyvar VAR_OBJ_GFX_ID_4, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience2:: @ 823B8B6 +ContestHall_EventScript_SetRandomAudience2:: copyvar VAR_OBJ_GFX_ID_5, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience3:: @ 823B8C1 +ContestHall_EventScript_SetRandomAudience3:: copyvar VAR_OBJ_GFX_ID_6, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience4:: @ 823B8CC +ContestHall_EventScript_SetRandomAudience4:: copyvar VAR_OBJ_GFX_ID_7, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience5:: @ 823B8D7 +ContestHall_EventScript_SetRandomAudience5:: copyvar VAR_OBJ_GFX_ID_8, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience6:: @ 823B8E2 +ContestHall_EventScript_SetRandomAudience6:: copyvar VAR_OBJ_GFX_ID_9, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_SetRandomAudience7:: @ 823B8ED +ContestHall_EventScript_SetRandomAudience7:: copyvar VAR_OBJ_GFX_ID_A, VAR_TEMP_1 addvar VAR_TEMP_0, 1 return -ContestHall_EventScript_GetRandomAudienceGfxId:: @ 823B8F8 +ContestHall_EventScript_GetRandomAudienceGfxId:: setvar VAR_RESULT, 32 special GenerateContestRand addvar VAR_RESULT, 1 @@ -173,135 +173,135 @@ ContestHall_EventScript_GetRandomAudienceGfxId:: @ 823B8F8 case 32, ContestHall_EventScript_RandomAudienceScientist1 end -ContestHall_EventScript_RandomAudienceNinjaBoy:: @ 823BA6B +ContestHall_EventScript_RandomAudienceNinjaBoy:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_NINJA_BOY return -ContestHall_EventScript_RandomAudienceTwin:: @ 823BA71 +ContestHall_EventScript_RandomAudienceTwin:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_TWIN return -ContestHall_EventScript_RandomAudienceBoy1:: @ 823BA77 +ContestHall_EventScript_RandomAudienceBoy1:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_BOY_1 return -ContestHall_EventScript_RandomAudienceGirl1:: @ 823BA7D +ContestHall_EventScript_RandomAudienceGirl1:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_GIRL_1 return -ContestHall_EventScript_RandomAudienceGirl2:: @ 823BA83 +ContestHall_EventScript_RandomAudienceGirl2:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_GIRL_2 return -ContestHall_EventScript_RandomAudienceLittleBoy:: @ 823BA89 +ContestHall_EventScript_RandomAudienceLittleBoy:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_LITTLE_BOY return -ContestHall_EventScript_RandomAudienceGirl:: @ 823BA8F +ContestHall_EventScript_RandomAudienceGirl:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_LITTLE_GIRL return -ContestHall_EventScript_RandomAudienceBoy3:: @ 823BA95 +ContestHall_EventScript_RandomAudienceBoy3:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_BOY_3 return -ContestHall_EventScript_RandomAudienceGirl3:: @ 823BA9B +ContestHall_EventScript_RandomAudienceGirl3:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_GIRL_3 return -ContestHall_EventScript_RandomAudienceRichBoy:: @ 823BAA1 +ContestHall_EventScript_RandomAudienceRichBoy:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_RICH_BOY return -ContestHall_EventScript_RandomAudienceFatMan:: @ 823BAA7 +ContestHall_EventScript_RandomAudienceFatMan:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_FAT_MAN return -ContestHall_EventScript_RandomAudiencePokefanF:: @ 823BAAD +ContestHall_EventScript_RandomAudiencePokefanF:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_POKEFAN_F return -ContestHall_EventScript_RandomAudienceMan1:: @ 823BAB3 +ContestHall_EventScript_RandomAudienceMan1:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_MAN_1 return -ContestHall_EventScript_RandomAudienceWoman2:: @ 823BAB9 +ContestHall_EventScript_RandomAudienceWoman2:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_WOMAN_2 return -ContestHall_EventScript_RandomAudienceExpertM:: @ 823BABF +ContestHall_EventScript_RandomAudienceExpertM:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_EXPERT_M return -ContestHall_EventScript_RandomAudienceExpertF:: @ 823BAC5 +ContestHall_EventScript_RandomAudienceExpertF:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_EXPERT_F return -ContestHall_EventScript_RandomAudiencePokefanM:: @ 823BACB +ContestHall_EventScript_RandomAudiencePokefanM:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_POKEFAN_M return -ContestHall_EventScript_RandomAudienceWoman4:: @ 823BAD1 +ContestHall_EventScript_RandomAudienceWoman4:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_WOMAN_4 return -ContestHall_EventScript_RandomAudienceCook:: @ 823BAD7 +ContestHall_EventScript_RandomAudienceCook:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_COOK return -ContestHall_EventScript_RandomAudienceLass:: @ 823BADD +ContestHall_EventScript_RandomAudienceLass:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_LASS return -ContestHall_EventScript_RandomAudienceOldWoman:: @ 823BAE3 +ContestHall_EventScript_RandomAudienceOldWoman:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_OLD_WOMAN return -ContestHall_EventScript_RandomAudienceCamper:: @ 823BAE9 +ContestHall_EventScript_RandomAudienceCamper:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_CAMPER return -ContestHall_EventScript_RandomAudiencePicnicker:: @ 823BAEF +ContestHall_EventScript_RandomAudiencePicnicker:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_PICNICKER return -ContestHall_EventScript_RandomAudienceMan3:: @ 823BAF5 +ContestHall_EventScript_RandomAudienceMan3:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_MAN_3 return -ContestHall_EventScript_RandomAudienceWoman5:: @ 823BAFB +ContestHall_EventScript_RandomAudienceWoman5:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_WOMAN_5 return -ContestHall_EventScript_RandomAudienceYoungster:: @ 823BB01 +ContestHall_EventScript_RandomAudienceYoungster:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_YOUNGSTER return -ContestHall_EventScript_RandomAudienceBugCatcher:: @ 823BB07 +ContestHall_EventScript_RandomAudienceBugCatcher:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_BUG_CATCHER return -ContestHall_EventScript_RandomAudiencePsychicM:: @ 823BB0D +ContestHall_EventScript_RandomAudiencePsychicM:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_PSYCHIC_M return -ContestHall_EventScript_RandomAudienceSchoolKidM:: @ 823BB13 +ContestHall_EventScript_RandomAudienceSchoolKidM:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_SCHOOL_KID_M return -ContestHall_EventScript_RandomAudienceBlackBelt:: @ 823BB19 +ContestHall_EventScript_RandomAudienceBlackBelt:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_BLACK_BELT return -ContestHall_EventScript_RandomAudienceBeauty:: @ 823BB1F +ContestHall_EventScript_RandomAudienceBeauty:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_BEAUTY return -ContestHall_EventScript_RandomAudienceScientist1:: @ 823BB25 +ContestHall_EventScript_RandomAudienceScientist1:: setvar VAR_TEMP_1, OBJ_EVENT_GFX_SCIENTIST_1 return -ContestHall_EventScript_CreateAudience:: @ 823BB2B +ContestHall_EventScript_CreateAudience:: specialvar VAR_RESULT, IsWirelessContest compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_CreateWirelessContestAudience @@ -313,12 +313,12 @@ ContestHall_EventScript_CreateAudience:: @ 823BB2B case CONTEST_TYPE_LINK, ContestHall_EventScript_CreateMasterContestAudience return -ContestHall_EventScript_CreateNormalContestAudience:: @ 823BB78 +ContestHall_EventScript_CreateNormalContestAudience:: createvobject OBJ_EVENT_GFX_NINJA_BOY, 20, 3, 2, 3, DIR_SOUTH createvobject OBJ_EVENT_GFX_SCIENTIST_1, 24, 11, 2, 3, DIR_SOUTH return -ContestHall_EventScript_CreateSuperContestAudience:: @ 823BB8B +ContestHall_EventScript_CreateSuperContestAudience:: createvobject OBJ_EVENT_GFX_BEAUTY, 0, 2, 3, 3, DIR_EAST createvobject OBJ_EVENT_GFX_MAN_5, 1, 2, 4, 3, DIR_EAST createvobject OBJ_EVENT_GFX_HIKER, 2, 2, 7, 3, DIR_EAST @@ -331,7 +331,7 @@ ContestHall_EventScript_CreateSuperContestAudience:: @ 823BB8B createvobject OBJ_EVENT_GFX_SCIENTIST_1, 24, 11, 2, 3, DIR_SOUTH return -ContestHall_EventScript_CreateHyperContestAudience:: @ 823BBE6 +ContestHall_EventScript_CreateHyperContestAudience:: createvobject OBJ_EVENT_GFX_BEAUTY, 0, 2, 3, 3, DIR_EAST createvobject OBJ_EVENT_GFX_MAN_5, 1, 2, 4, 3, DIR_EAST createvobject OBJ_EVENT_GFX_HIKER, 2, 2, 7, 3, DIR_EAST @@ -353,7 +353,7 @@ ContestHall_EventScript_CreateHyperContestAudience:: @ 823BBE6 createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 11, 9, 3, DIR_NORTH return -ContestHall_EventScript_CreateMasterContestAudience:: @ 823BC92 +ContestHall_EventScript_CreateMasterContestAudience:: createvobject OBJ_EVENT_GFX_BEAUTY, 0, 2, 3, 3, DIR_EAST createvobject OBJ_EVENT_GFX_MAN_5, 1, 2, 4, 3, DIR_EAST createvobject OBJ_EVENT_GFX_HIKER, 2, 2, 7, 3, DIR_EAST @@ -383,7 +383,7 @@ ContestHall_EventScript_CreateMasterContestAudience:: @ 823BC92 createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 11, 9, 3, DIR_NORTH return -ContestHall_EventScript_CreateWirelessContestAudience:: @ 823BD86 +ContestHall_EventScript_CreateWirelessContestAudience:: createvobject OBJ_EVENT_GFX_BEAUTY, 0, 2, 3, 3, DIR_EAST createvobject OBJ_EVENT_GFX_MAN_5, 1, 2, 4, 3, DIR_EAST createvobject OBJ_EVENT_GFX_HIKER, 2, 2, 7, 3, DIR_EAST @@ -407,7 +407,7 @@ ContestHall_EventScript_CreateWirelessContestAudience:: @ 823BD86 createvobject OBJ_EVENT_GFX_SCIENTIST_1, 24, 11, 2, 3, DIR_SOUTH return -ContestHall_EventScript_SetExitWarp:: @ 823BE44 +ContestHall_EventScript_SetExitWarp:: special ClearLinkContestFlags switch VAR_CONTEST_TYPE case CONTEST_TYPE_NPC_NORMAL, ContestHall_EventScript_SetExitWarpNormalContest @@ -417,32 +417,32 @@ ContestHall_EventScript_SetExitWarp:: @ 823BE44 case CONTEST_TYPE_LINK, ContestHall_EventScript_SetExitWarpLinkContest return -ContestHall_EventScript_SetExitWarpNormalContest:: @ 823BE84 +ContestHall_EventScript_SetExitWarpNormalContest:: warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 waitstate end -ContestHall_EventScript_SetExitWarpSuperContest:: @ 823BE8E +ContestHall_EventScript_SetExitWarpSuperContest:: warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 waitstate end -ContestHall_EventScript_SetExitWarpHyperContest:: @ 823BE98 +ContestHall_EventScript_SetExitWarpHyperContest:: warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 waitstate end -ContestHall_EventScript_SetExitWarpMasterContest:: @ 823BEA2 +ContestHall_EventScript_SetExitWarpMasterContest:: warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 waitstate end -ContestHall_EventScript_SetExitWarpLinkContest:: @ 823BEAC +ContestHall_EventScript_SetExitWarpLinkContest:: warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 15, 4 waitstate end -LilycoveCity_ContestLobby_EventScript_SetPlayerGfx:: @ 823BEB6 +LilycoveCity_ContestLobby_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan @@ -450,11 +450,11 @@ LilycoveCity_ContestLobby_EventScript_SetPlayerGfx:: @ 823BEB6 goto_if_eq LilycoveCity_ContestLobby_EventScript_SetPlayerGfxMay return -LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan:: @ 823BECE +LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan:: setvar VAR_OBJ_GFX_ID_3, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -LilycoveCity_ContestLobby_EventScript_SetPlayerGfxMay:: @ 823BED4 +LilycoveCity_ContestLobby_EventScript_SetPlayerGfxMay:: setvar VAR_OBJ_GFX_ID_3, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index bd7b04fb4311..414dbfc572cf 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -1,25 +1,25 @@ -DesertRuins_MapScripts:: @ 822D95B +DesertRuins_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, DesertRuins_OnResume map_script MAP_SCRIPT_ON_LOAD, DesertRuins_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, DesertRuins_OnTransition .byte 0 -DesertRuins_OnResume: @ 822D96B +DesertRuins_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, DesertRuins_EventScript_TryRemoveRegirock end -DesertRuins_EventScript_TryRemoveRegirock:: @ 822D975 +DesertRuins_EventScript_TryRemoveRegirock:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -DesertRuins_OnLoad: @ 822D989 +DesertRuins_OnLoad: call_if_unset FLAG_SYS_REGIROCK_PUZZLE_COMPLETED, DesertRuins_EventScript_HideRegiEntrance end -DesertRuins_EventScript_HideRegiEntrance:: @ 822D993 +DesertRuins_EventScript_HideRegiEntrance:: setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 @@ -28,16 +28,16 @@ DesertRuins_EventScript_HideRegiEntrance:: @ 822D993 setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 return -DesertRuins_OnTransition: @ 822D9CA +DesertRuins_OnTransition: setflag FLAG_LANDMARK_DESERT_RUINS call_if_unset FLAG_DEFEATED_REGIROCK, DesertRuins_EventScript_ShowRegirock end -DesertRuins_EventScript_ShowRegirock:: @ 822D9D7 +DesertRuins_EventScript_ShowRegirock:: clearflag FLAG_HIDE_REGIROCK return -DesertRuins_EventScript_CaveEntranceMiddle:: @ 822D9DB +DesertRuins_EventScript_CaveEntranceMiddle:: lockall goto_if_set FLAG_SYS_REGIROCK_PUZZLE_COMPLETED, DesertRuins_EventScript_BigHoleInWall braillemessage DesertRuins_Braille_UseRockSmash @@ -46,12 +46,12 @@ DesertRuins_EventScript_CaveEntranceMiddle:: @ 822D9DB releaseall end -DesertRuins_EventScript_BigHoleInWall:: @ 822D9EE +DesertRuins_EventScript_BigHoleInWall:: msgbox gText_BigHoleInTheWall, MSGBOX_DEFAULT releaseall end -DesertRuins_EventScript_CaveEntranceSide:: @ 822D9F8 +DesertRuins_EventScript_CaveEntranceSide:: lockall braillemessage DesertRuins_Braille_UseRockSmash waitbuttonpress @@ -59,7 +59,7 @@ DesertRuins_EventScript_CaveEntranceSide:: @ 822D9F8 releaseall end -DesertRuins_EventScript_Regirock:: @ 822DA02 +DesertRuins_EventScript_Regirock:: lock faceplayer waitse @@ -82,12 +82,12 @@ DesertRuins_EventScript_Regirock:: @ 822DA02 release end -DesertRuins_EventScript_DefeatedRegirock:: @ 822DA49 +DesertRuins_EventScript_DefeatedRegirock:: setflag FLAG_DEFEATED_REGIROCK goto Common_EventScript_RemoveStaticPokemon end -DesertRuins_EventScript_RanFromRegirock:: @ 822DA52 +DesertRuins_EventScript_RanFromRegirock:: setvar VAR_0x8004, SPECIES_REGIROCK goto Common_EventScript_LegendaryFlewAway end diff --git a/data/maps/DesertUnderpass/scripts.inc b/data/maps/DesertUnderpass/scripts.inc index 7025a268bf2f..518d9888329e 100644 --- a/data/maps/DesertUnderpass/scripts.inc +++ b/data/maps/DesertUnderpass/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_FOSSIL, 1 -DesertUnderpass_MapScripts:: @ 823AF37 +DesertUnderpass_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, DesertUnderpass_OnTransition .byte 0 -DesertUnderpass_OnTransition: @ 823AF3D +DesertUnderpass_OnTransition: setflag FLAG_LANDMARK_DESERT_UNDERPASS end -DesertUnderpass_EventScript_Fossil:: @ 823AF41 +DesertUnderpass_EventScript_Fossil:: lock faceplayer goto_if_set FLAG_CHOSE_ROOT_FOSSIL, DesertUnderpass_EventScript_GiveClawFossil @@ -16,23 +16,23 @@ DesertUnderpass_EventScript_Fossil:: @ 823AF41 release end -DesertUnderpass_EventScript_GiveClawFossil:: @ 823AF57 +DesertUnderpass_EventScript_GiveClawFossil:: giveitem ITEM_CLAW_FOSSIL removeobject LOCALID_FOSSIL release end -DesertUnderpass_EventScript_GiveRootFossil:: @ 823AF68 +DesertUnderpass_EventScript_GiveRootFossil:: giveitem ITEM_ROOT_FOSSIL removeobject LOCALID_FOSSIL release end @ Unused -DesertUnderpass_Text_FoundRootFossil:: @ 823AF79 +DesertUnderpass_Text_FoundRootFossil:: .string "{PLAYER} found the ROOT FOSSIL.$" @ Unused -DesertUnderpass_Text_FoundClawFossil:: @ 823AF93 +DesertUnderpass_Text_FoundClawFossil:: .string "{PLAYER} found the CLAW FOSSIL.$" diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index 6298963c2b17..fdf8c785ef9e 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -10,15 +10,15 @@ .equ LOCALID_BOAT_R104, 7 .equ LOCALID_BRINEY_R104, 8 -DewfordTown_MapScripts:: @ 81E9507 +DewfordTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, DewfordTown_OnTransition .byte 0 -DewfordTown_OnTransition: @ 81E950D +DewfordTown_OnTransition: setflag FLAG_VISITED_DEWFORD_TOWN end -DewfordTown_EventScript_Briney:: @ 81E9511 +DewfordTown_EventScript_Briney:: lock faceplayer goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, DewfordTown_EventScript_ReturnToPetalburgPrompt @@ -32,27 +32,27 @@ DewfordTown_EventScript_Briney:: @ 81E9511 case MULTI_B_PRESSED, DewfordTown_EventScript_CancelSailSelect end -DewfordTown_EventScript_ChoosePetalburg:: @ 81E955A +DewfordTown_EventScript_ChoosePetalburg:: msgbox DewfordTown_Text_PetalburgWereSettingSail, MSGBOX_DEFAULT closemessage goto DewfordTown_EventScript_SailToPetalburg release end -DewfordTown_EventScript_ChooseSlateport:: @ 81E956A +DewfordTown_EventScript_ChooseSlateport:: msgbox DewfordTown_Text_SlateportWereSettingSail, MSGBOX_DEFAULT closemessage goto DewfordTown_EventScript_SailToSlateport release end -DewfordTown_EventScript_CancelSailSelect:: @ 81E957A +DewfordTown_EventScript_CancelSailSelect:: msgbox DewfordTown_Text_JustTellMeWhenYouNeedToSetSail, MSGBOX_DEFAULT closemessage release end -DewfordTown_EventScript_ReturnToPetalburgPrompt:: @ 81E9585 +DewfordTown_EventScript_ReturnToPetalburgPrompt:: msgbox DewfordTown_Text_SetSailBackToPetalburg, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq DewfordTown_EventScript_SailBackToPetalburg @@ -60,29 +60,29 @@ DewfordTown_EventScript_ReturnToPetalburgPrompt:: @ 81E9585 release end -DewfordTown_EventScript_SailBackToPetalburg:: @ 81E95A2 +DewfordTown_EventScript_SailBackToPetalburg:: msgbox DewfordTown_Text_PetalburgWereSettingSail2, MSGBOX_DEFAULT closemessage goto DewfordTown_EventScript_SailToPetalburg end -DewfordTown_EventScript_Woman:: @ 81E95B1 +DewfordTown_EventScript_Woman:: msgbox DewfordTown_Text_TinyIslandCommunity, MSGBOX_NPC end -DewfordTown_EventScript_TownSign:: @ 81E95BA +DewfordTown_EventScript_TownSign:: msgbox DewfordTown_Text_TownSign, MSGBOX_SIGN end -DewfordTown_EventScript_GymSign:: @ 81E95C3 +DewfordTown_EventScript_GymSign:: msgbox DewfordTown_Text_GymSign, MSGBOX_SIGN end -DewfordTown_EventScript_HallSign:: @ 81E95CC +DewfordTown_EventScript_HallSign:: msgbox DewfordTown_Text_HallSign, MSGBOX_SIGN end -DewfordTown_EventScript_OldRodFisherman:: @ 81E95D5 +DewfordTown_EventScript_OldRodFisherman:: lock faceplayer goto_if_set FLAG_RECEIVED_OLD_ROD, DewfordTown_EventScript_HowsFishing @@ -93,7 +93,7 @@ DewfordTown_EventScript_OldRodFisherman:: @ 81E95D5 goto_if_eq DewfordTown_EventScript_NotGettingItchToFish end -DewfordTown_EventScript_GiveOldRod:: @ 81E95FF +DewfordTown_EventScript_GiveOldRod:: msgbox DewfordTown_Text_GiveYouOneOfMyRods, MSGBOX_DEFAULT giveitem ITEM_OLD_ROD setflag FLAG_RECEIVED_OLD_ROD @@ -101,12 +101,12 @@ DewfordTown_EventScript_GiveOldRod:: @ 81E95FF release end -DewfordTown_EventScript_NotGettingItchToFish:: @ 81E9620 +DewfordTown_EventScript_NotGettingItchToFish:: msgbox DewfordTown_Text_ThatsTooBadThen, MSGBOX_DEFAULT release end -DewfordTown_EventScript_HowsFishing:: @ 81E962A +DewfordTown_EventScript_HowsFishing:: message DewfordTown_Text_HowsYourFishing waitmessage multichoice 20, 8, MULTI_HOWS_FISHING, TRUE @@ -116,17 +116,17 @@ DewfordTown_EventScript_HowsFishing:: @ 81E962A goto_if_eq DewfordTown_EventScript_FishingNotSoGood end -DewfordTown_EventScript_FishingExcellent:: @ 81E964C +DewfordTown_EventScript_FishingExcellent:: msgbox DewfordTown_Text_GreatHaulInSomeBigOnes, MSGBOX_DEFAULT release end -DewfordTown_EventScript_FishingNotSoGood:: @ 81E9656 +DewfordTown_EventScript_FishingNotSoGood:: msgbox DewfordTown_Text_FishingAdvice, MSGBOX_DEFAULT release end -DewfordTown_EventScript_SailToPetalburg:: @ 81E9660 +DewfordTown_EventScript_SailToPetalburg:: call EventScript_BackupMrBrineyLocation setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 0 @@ -158,7 +158,7 @@ DewfordTown_EventScript_SailToPetalburg:: @ 81E9660 release end -DewfordTown_EventScript_SailToSlateport:: @ 81E96E7 +DewfordTown_EventScript_SailToSlateport:: call EventScript_BackupMrBrineyLocation setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 1 @@ -196,15 +196,15 @@ DewfordTown_EventScript_SailToSlateport:: @ 81E96E7 release end -DewfordTown_EventScript_LandedSlateportDeliverGoods:: @ 81E9790 +DewfordTown_EventScript_LandedSlateportDeliverGoods:: msgbox DewfordTown_Text_BrineyLandedInSlateportDeliverGoods, MSGBOX_DEFAULT return -DewfordTown_EventScript_LandedSlateport:: @ 81E9799 +DewfordTown_EventScript_LandedSlateport:: msgbox DewfordTown_Text_BrineyLandedInSlateport, MSGBOX_DEFAULT return -DewfordTown_Movement_SailToPetalburg: @ 81E97A2 +DewfordTown_Movement_SailToPetalburg: walk_up walk_up walk_fast_up @@ -401,7 +401,7 @@ DewfordTown_Movement_SailToPetalburg: @ 81E97A2 walk_up step_end -DewfordTown_Movement_SailToSlateport: @ 81E9865 +DewfordTown_Movement_SailToSlateport: walk_right walk_fast_right walk_fast_right @@ -575,34 +575,34 @@ DewfordTown_Movement_SailToSlateport: @ 81E9865 walk_fast_up step_end -DewfordTown_Movement_PlayerBoardBoat: @ 81E9911 +DewfordTown_Movement_PlayerBoardBoat: walk_right walk_up step_end -DewfordTown_Movement_ExitBoatPetalburg: @ 81E9914 +DewfordTown_Movement_ExitBoatPetalburg: walk_up walk_up walk_up step_end -DewfordTown_Movement_ExitBoatSlateport: @ 81E9918 +DewfordTown_Movement_ExitBoatSlateport: walk_up walk_up walk_up walk_in_place_fastest_down step_end -DewfordTown_Movement_BrineyBoardBoat: @ 81E991D +DewfordTown_Movement_BrineyBoardBoat: walk_up step_end -DewfordTown_Movement_BrineyExitBoat: @ 81E991F +DewfordTown_Movement_BrineyExitBoat: walk_up walk_up step_end -DewfordTown_EventScript_TrendyPhraseBoy:: @ 81E9922 +DewfordTown_EventScript_TrendyPhraseBoy:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -613,12 +613,12 @@ DewfordTown_EventScript_TrendyPhraseBoy:: @ 81E9922 goto_if_eq DewfordTown_EventScript_RejectTrendyPhrase end -DewfordTown_EventScript_ConfirmTrendyPhrase:: @ 81E9948 +DewfordTown_EventScript_ConfirmTrendyPhrase:: msgbox DewfordTown_Text_YeahDefinitionOfInRightNow, MSGBOX_DEFAULT release end -DewfordTown_EventScript_RejectTrendyPhrase:: @ 81E9952 +DewfordTown_EventScript_RejectTrendyPhrase:: msgbox DewfordTown_Text_TellMeWhatsNewAndIn, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_TRENDY_PHRASE call Common_ShowEasyChatScreen @@ -630,7 +630,7 @@ DewfordTown_EventScript_RejectTrendyPhrase:: @ 81E9952 goto_if_eq DewfordTown_EventScript_CancelNewTrendyPhrase end -DewfordTown_EventScript_GiveNewTrendyPhrase:: @ 81E997D +DewfordTown_EventScript_GiveNewTrendyPhrase:: incrementgamestat GAME_STAT_STARTED_TRENDS compare VAR_0x8004, FALSE goto_if_eq DewfordTown_EventScript_PhraseNotTrendyEnough @@ -638,90 +638,90 @@ DewfordTown_EventScript_GiveNewTrendyPhrase:: @ 81E997D release end -DewfordTown_EventScript_CancelNewTrendyPhrase:: @ 81E9994 +DewfordTown_EventScript_CancelNewTrendyPhrase:: msgbox DewfordTown_Text_HearOfAnyTrendsComeShareWithMe, MSGBOX_DEFAULT release end -DewfordTown_EventScript_PhraseNotTrendyEnough:: @ 81E999E +DewfordTown_EventScript_PhraseNotTrendyEnough:: msgbox DewfordTown_Text_XHuhIThinkYIsCool, MSGBOX_DEFAULT release end -DewfordTown_Text_TinyIslandCommunity: @ 81E99A8 +DewfordTown_Text_TinyIslandCommunity: .string "DEWFORD is a tiny island community.\n" .string "If something gets trendy here,\l" .string "everyone picks up on it right away.$" -DewfordTown_Text_TownSign: @ 81E9A0F +DewfordTown_Text_TownSign: .string "DEWFORD TOWN\n" .string "“A tiny island in the blue sea.”$" -DewfordTown_Text_GymSign: @ 81E9A3D +DewfordTown_Text_GymSign: .string "DEWFORD TOWN POKéMON GYM\n" .string "LEADER: BRAWLY\l" .string "“A big wave in fighting!”$" -DewfordTown_Text_HallSign: @ 81E9A7F +DewfordTown_Text_HallSign: .string "DEWFORD HALL\n" .string "“Everyone's information exchange!”$" -Route104_Text_LandedInDewfordDeliverLetter: @ 81E9AAF +Route104_Text_LandedInDewfordDeliverLetter: .string "MR. BRINEY: Ahoy!\n" .string "We've hit land in DEWFORD.\p" .string "I suppose you're off to deliver that\n" .string "LETTER to, who was it now, STEVEN!$" -DewfordTown_Text_SetSailBackToPetalburg: @ 81E9B24 +DewfordTown_Text_SetSailBackToPetalburg: .string "MR. BRINEY: Have you delivered your\n" .string "LETTER?\p" .string "Or were you meaning to sail back to\n" .string "PETALBURG?$" -DewfordTown_Text_PetalburgWereSettingSail2: @ 81E9B7F +DewfordTown_Text_PetalburgWereSettingSail2: .string "MR. BRINEY: PETALBURG it is, then!\p" .string "Anchors aweigh!\n" .string "PEEKO, we're setting sail, my darling!$" -DewfordTown_Text_GoDeliverIllBeWaiting: @ 81E9BD9 +DewfordTown_Text_GoDeliverIllBeWaiting: .string "MR. BRINEY: Then you go on and deliver\n" .string "the LETTER. I'll be waiting.$" -DewfordTown_Text_BrineyLandedInDewford: @ 81E9C1D +DewfordTown_Text_BrineyLandedInDewford: .string "MR. BRINEY: Ahoy!\n" .string "We've hit land in DEWFORD!\p" .string "You just go on and tell me whenever\n" .string "you want to set sail again!$" -DewfordTown_Text_WhereAreWeBound: @ 81E9C8A +DewfordTown_Text_WhereAreWeBound: .string "MR. BRINEY: Ahoy!\n" .string "For you, I'll go out to sea anytime!\p" .string "Now, my friend, where are we bound?$" -DewfordTown_Text_PetalburgWereSettingSail: @ 81E9CE5 +DewfordTown_Text_PetalburgWereSettingSail: .string "MR. BRINEY: PETALBURG, is it?\p" .string "Anchors aweigh!\n" .string "PEEKO, we're setting sail, my darling!$" -DewfordTown_Text_SlateportWereSettingSail: @ 81E9D3A +DewfordTown_Text_SlateportWereSettingSail: .string "MR. BRINEY: SLATEPORT, is it?\p" .string "Anchors aweigh!\n" .string "PEEKO, we're setting sail, my darling!$" -DewfordTown_Text_JustTellMeWhenYouNeedToSetSail: @ 81E9D8F +DewfordTown_Text_JustTellMeWhenYouNeedToSetSail: .string "MR. BRINEY: You just tell me whenever\n" .string "you need to set sail again!$" -DewfordTown_Text_GettingItchToFish: @ 81E9DD1 +DewfordTown_Text_GettingItchToFish: .string "This is a renowned fishing spot.\n" .string "Are you getting the itch to fish?$" -DewfordTown_Text_GiveYouOneOfMyRods: @ 81E9E14 +DewfordTown_Text_GiveYouOneOfMyRods: .string "I hear you, and I like what\n" .string "you're saying!\p" .string "I'll give you one of my fishing RODS.$" -DewfordTown_Text_ThrowInFishingAdvice: @ 81E9E65 +DewfordTown_Text_ThrowInFishingAdvice: .string "And, as an added bonus, I'll even throw\n" .string "in a little fishing advice!\p" .string "First, you want to face the water,\n" @@ -733,19 +733,19 @@ DewfordTown_Text_ThrowInFishingAdvice: @ 81E9E65 .string "you need to time the pulls on your ROD\l" .string "to haul them in.$" -DewfordTown_Text_ThatsTooBadThen: @ 81E9F92 +DewfordTown_Text_ThatsTooBadThen: .string "Oh, is that so?\n" .string "That's too bad, then.$" -DewfordTown_Text_HowsYourFishing: @ 81E9FB8 +DewfordTown_Text_HowsYourFishing: .string "Yo!\n" .string "How's your fishing?$" -DewfordTown_Text_GreatHaulInSomeBigOnes: @ 81E9FD0 +DewfordTown_Text_GreatHaulInSomeBigOnes: .string "Is that right! That's great!\n" .string "Haul in some big ones!$" -DewfordTown_Text_FishingAdvice: @ 81EA004 +DewfordTown_Text_FishingAdvice: .string "Oh, hey, don't get down on yourself!\n" .string "I'll give you a little fishing advice.\p" .string "First, you want to face the water,\n" @@ -757,7 +757,7 @@ DewfordTown_Text_FishingAdvice: @ 81EA004 .string "you need to time the pulls on your ROD\l" .string "to haul them in.$" -DewfordTown_Text_XIsTheBiggestHappeningThingRight: @ 81EA136 +DewfordTown_Text_XIsTheBiggestHappeningThingRight: .string "I like what's hip, happening, and trendy.\n" .string "I'm always checking it out.\p" .string "Listen, have you heard about this new\n" @@ -771,13 +771,13 @@ DewfordTown_Text_XIsTheBiggestHappeningThingRight: @ 81EA136 .string "“{STR_VAR_1}”\l" .string "is the biggest happening thing, right?$" -DewfordTown_Text_TellMeWhatsNewAndIn: @ 81EA242 +DewfordTown_Text_TellMeWhatsNewAndIn: .string "Hunh?\n" .string "It's not the hip and happening thing?\p" .string "Well, hey, you have to tell me,\n" .string "what's new and what's “in”?$" -DewfordTown_Text_OfCourseIKnowAboutThat: @ 81EA2AA +DewfordTown_Text_OfCourseIKnowAboutThat: .string "Hunh?\n" .string "“{STR_VAR_2}”?\p" .string "… …\p" @@ -795,18 +795,18 @@ DewfordTown_Text_OfCourseIKnowAboutThat: @ 81EA2AA .string "Now, “{STR_VAR_2}” is\n" .string "what's vital and in tune with the times!$" -DewfordTown_Text_XHuhIThinkYIsCool: @ 81EA3FE +DewfordTown_Text_XHuhIThinkYIsCool: .string "Hmm…\n" .string "“{STR_VAR_2},” huh?\p" .string "But personally, I think\n" .string "“{STR_VAR_1}”\l" .string "is what's real in cool.$" -DewfordTown_Text_HearOfAnyTrendsComeShareWithMe: @ 81EA443 +DewfordTown_Text_HearOfAnyTrendsComeShareWithMe: .string "Well, if you hear of any happening new\n" .string "trends, come share them with me, okay?$" -DewfordTown_Text_YeahDefinitionOfInRightNow: @ 81EA491 +DewfordTown_Text_YeahDefinitionOfInRightNow: .string "Yeah, absolutely right!\p" .string "“{STR_VAR_1}” is the\n" .string "definition of “in” right now.$" diff --git a/data/maps/DewfordTown_Gym/scripts.inc b/data/maps/DewfordTown_Gym/scripts.inc index f67184045447..d2b51766afad 100644 --- a/data/maps/DewfordTown_Gym/scripts.inc +++ b/data/maps/DewfordTown_Gym/scripts.inc @@ -1,12 +1,12 @@ -DewfordTown_Gym_MapScripts:: @ 81FC63C +DewfordTown_Gym_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, DewfordTown_Gym_OnTransition .byte 0 -DewfordTown_Gym_OnTransition: @ 81FC642 +DewfordTown_Gym_OnTransition: call DewfordTown_Gym_EventScript_SetFlashRadius end -DewfordTown_Gym_EventScript_SetFlashRadius:: @ 81FC648 +DewfordTown_Gym_EventScript_SetFlashRadius:: goto_if_defeated TRAINER_BRAWLY_1, DewfordTown_Gym_EventScript_SetLightsOn call DewfordTown_Gym_EventScript_CountTrainersDefeated copyvar VAR_0x8001, VAR_0x8000 @@ -24,39 +24,39 @@ DewfordTown_Gym_EventScript_SetFlashRadius:: @ 81FC648 goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius2 goto DewfordTown_Gym_EventScript_SetFlashRadius1 -DewfordTown_Gym_EventScript_SetLightsOn:: @ 81FC6A2 +DewfordTown_Gym_EventScript_SetLightsOn:: setflashradius 0 return -DewfordTown_Gym_EventScript_SetFlashRadius1:: @ 81FC6A6 +DewfordTown_Gym_EventScript_SetFlashRadius1:: setflashradius 1 return -DewfordTown_Gym_EventScript_SetFlashRadius2:: @ 81FC6AA +DewfordTown_Gym_EventScript_SetFlashRadius2:: setflashradius 2 return -DewfordTown_Gym_EventScript_SetFlashRadius3:: @ 81FC6AE +DewfordTown_Gym_EventScript_SetFlashRadius3:: setflashradius 3 return -DewfordTown_Gym_EventScript_SetFlashRadius4:: @ 81FC6B2 +DewfordTown_Gym_EventScript_SetFlashRadius4:: setflashradius 4 return -DewfordTown_Gym_EventScript_SetFlashRadius5:: @ 81FC6B6 +DewfordTown_Gym_EventScript_SetFlashRadius5:: setflashradius 5 return -DewfordTown_Gym_EventScript_SetFlashRadius6:: @ 81FC6BA +DewfordTown_Gym_EventScript_SetFlashRadius6:: setflashradius 6 return -DewfordTown_Gym_EventScript_SetFlashRadius7:: @ 81FC6BE +DewfordTown_Gym_EventScript_SetFlashRadius7:: setflashradius 7 return -DewfordTown_Gym_EventScript_BrightenRoom:: @ 81FC6C2 +DewfordTown_Gym_EventScript_BrightenRoom:: call DewfordTown_Gym_EventScript_CountTrainersDefeated nop1 compare VAR_0x8000, VAR_0x8001 @@ -75,75 +75,75 @@ DewfordTown_Gym_EventScript_BrightenRoom:: @ 81FC6C2 compare VAR_0x8000, 6 goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash6Trainers -DewfordTown_Gym_EventScript_NoLightChange:: @ 81FC71A +DewfordTown_Gym_EventScript_NoLightChange:: return @ NOTE: A little confusingly, a larger animateflash param value is a smaller flash radius -DewfordTown_Gym_EventScript_AnimateFlash1Trainer:: @ 81FC71B +DewfordTown_Gym_EventScript_AnimateFlash1Trainer:: playse SE_SWITCH animateflash 6 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlash2Trainers:: @ 81FC726 +DewfordTown_Gym_EventScript_AnimateFlash2Trainers:: playse SE_SWITCH animateflash 5 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlash3Trainers:: @ 81FC731 +DewfordTown_Gym_EventScript_AnimateFlash3Trainers:: playse SE_SWITCH animateflash 4 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlash4Trainers:: @ 81FC73C +DewfordTown_Gym_EventScript_AnimateFlash4Trainers:: playse SE_SWITCH animateflash 3 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlash5Trainers:: @ 81FC747 +DewfordTown_Gym_EventScript_AnimateFlash5Trainers:: playse SE_SWITCH animateflash 2 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlash6Trainers:: @ 81FC752 +DewfordTown_Gym_EventScript_AnimateFlash6Trainers:: playse SE_SWITCH animateflash 1 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_AnimateFlashFullBrightness:: @ 81FC75D +DewfordTown_Gym_EventScript_AnimateFlashFullBrightness:: playse SE_SWITCH animateflash 0 call DewfordTown_Gym_EventScript_SetFlashRadius return -DewfordTown_Gym_EventScript_CountTrainersDefeated:: @ 81FC768 +DewfordTown_Gym_EventScript_CountTrainersDefeated:: setvar VAR_0x8000, 0 goto_if_not_defeated TRAINER_TAKAO, DewfordTown_Gym_EventScript_CheckJocelyn addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_CheckJocelyn:: @ 81FC77B +DewfordTown_Gym_EventScript_CheckJocelyn:: goto_if_not_defeated TRAINER_JOCELYN, DewfordTown_Gym_EventScript_CheckLaura addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_CheckLaura:: @ 81FC789 +DewfordTown_Gym_EventScript_CheckLaura:: goto_if_not_defeated TRAINER_LAURA, DewfordTown_Gym_EventScript_CheckBrenden addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_CheckBrenden:: @ 81FC797 +DewfordTown_Gym_EventScript_CheckBrenden:: goto_if_not_defeated TRAINER_BRENDEN, DewfordTown_Gym_EventScript_CheckCristian addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_CheckCristian:: @ 81FC7A5 +DewfordTown_Gym_EventScript_CheckCristian:: goto_if_not_defeated TRAINER_CRISTIAN, DewfordTown_Gym_EventScript_CheckLilith addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_CheckLilith:: @ 81FC7B3 +DewfordTown_Gym_EventScript_CheckLilith:: goto_if_not_defeated TRAINER_LILITH, DewfordTown_Gym_EventScript_StopCountingTrainers addvar VAR_0x8000, 1 -DewfordTown_Gym_EventScript_StopCountingTrainers:: @ 81FC7C1 +DewfordTown_Gym_EventScript_StopCountingTrainers:: return -DewfordTown_Gym_EventScript_Brawly:: @ 81FC7C2 +DewfordTown_Gym_EventScript_Brawly:: trainerbattle_single TRAINER_BRAWLY_1, DewfordTown_Gym_Text_BrawlyIntro, DewfordTown_Gym_Text_BrawlyDefeat, DewfordTown_Gym_EventScript_BrawlyDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -153,7 +153,7 @@ DewfordTown_Gym_EventScript_Brawly:: @ 81FC7C2 release end -DewfordTown_Gym_EventScript_BrawlyDefeated:: @ 81FC7F7 +DewfordTown_Gym_EventScript_BrawlyDefeated:: call DewfordTown_Gym_EventScript_AnimateFlashFullBrightness message DewfordTown_Gym_Text_ReceivedKnuckleBadge waitmessage @@ -180,7 +180,7 @@ DewfordTown_Gym_EventScript_BrawlyDefeated:: @ 81FC7F7 release end -DewfordTown_Gym_EventScript_GiveBulkUp:: @ 81FC855 +DewfordTown_Gym_EventScript_GiveBulkUp:: giveitem ITEM_TM08 compare VAR_RESULT, 0 goto_if_eq Common_EventScript_BagIsFull @@ -188,7 +188,7 @@ DewfordTown_Gym_EventScript_GiveBulkUp:: @ 81FC855 setflag FLAG_RECEIVED_TM08 return -DewfordTown_Gym_EventScript_GiveBulkUp2: @ 81FC878 +DewfordTown_Gym_EventScript_GiveBulkUp2: giveitem ITEM_TM08 compare VAR_RESULT, 0 goto_if_eq Common_EventScript_ShowBagIsFull @@ -197,72 +197,72 @@ DewfordTown_Gym_EventScript_GiveBulkUp2: @ 81FC878 release end -DewfordTown_Gym_EventScript_BrawlyRematch:: @ 81FC89C +DewfordTown_Gym_EventScript_BrawlyRematch:: trainerbattle_rematch_double TRAINER_BRAWLY_1, DewfordTown_Gym_Text_BrawlyPreRematch, DewfordTown_Gym_Text_BrawlyRematchDefeat, DewfordTown_Gym_Text_BrawlyRematchNeedTwoMons msgbox DewfordTown_Gym_Text_BrawlyPostRematch, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_Takao:: @ 81FC8B7 +DewfordTown_Gym_EventScript_Takao:: trainerbattle_single TRAINER_TAKAO, DewfordTown_Gym_Text_TakaoIntro, DewfordTown_Gym_Text_TakaoDefeat, DewfordTown_Gym_EventScript_TakaoBrightenRoom msgbox DewfordTown_Gym_Text_TakaoPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_TakaoBrightenRoom:: @ 81FC8D2 +DewfordTown_Gym_EventScript_TakaoBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_Jocelyn:: @ 81FC8D9 +DewfordTown_Gym_EventScript_Jocelyn:: trainerbattle_single TRAINER_JOCELYN, DewfordTown_Gym_Text_JocelynIntro, DewfordTown_Gym_Text_JocelynDefeat, DewfordTown_Gym_EventScript_JocelynBrightenRoom msgbox DewfordTown_Gym_Text_JocelynPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_JocelynBrightenRoom:: @ 81FC8F4 +DewfordTown_Gym_EventScript_JocelynBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_Laura:: @ 81FC8FB +DewfordTown_Gym_EventScript_Laura:: trainerbattle_single TRAINER_LAURA, DewfordTown_Gym_Text_LauraIntro, DewfordTown_Gym_Text_LauraDefeat, DewfordTown_Gym_EventScript_LauraBrightenRoom msgbox DewfordTown_Gym_Text_LauraPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_LauraBrightenRoom:: @ 81FC916 +DewfordTown_Gym_EventScript_LauraBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_Brenden:: @ 81FC91D +DewfordTown_Gym_EventScript_Brenden:: trainerbattle_single TRAINER_BRENDEN, DewfordTown_Gym_Text_BrendenIntro, DewfordTown_Gym_Text_BrendenDefeat, DewfordTown_Gym_EventScript_BrendenBrightenRoom msgbox DewfordTown_Gym_Text_BrendenPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_BrendenBrightenRoom:: @ 81FC938 +DewfordTown_Gym_EventScript_BrendenBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_Cristian:: @ 81FC93F +DewfordTown_Gym_EventScript_Cristian:: trainerbattle_single TRAINER_CRISTIAN, DewfordTown_Gym_Text_CristianIntro, DewfordTown_Gym_Text_CristianDefeat, DewfordTown_Gym_EventScript_CristianBrightenRoom msgbox DewfordTown_Gym_Text_CristianPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_CristianBrightenRoom:: @ 81FC95A +DewfordTown_Gym_EventScript_CristianBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_Lilith:: @ 81FC961 +DewfordTown_Gym_EventScript_Lilith:: trainerbattle_single TRAINER_LILITH, DewfordTown_Gym_Text_LilithIntro, DewfordTown_Gym_Text_LilithDefeat, DewfordTown_Gym_EventScript_LilithBrightenRoom msgbox DewfordTown_Gym_Text_LilithPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Gym_EventScript_LilithBrightenRoom:: @ 81FC97C +DewfordTown_Gym_EventScript_LilithBrightenRoom:: call DewfordTown_Gym_EventScript_BrightenRoom release end -DewfordTown_Gym_EventScript_GymGuide:: @ 81FC983 +DewfordTown_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_DEWFORD_GYM, DewfordTown_Gym_EventScript_GymGuidePostVictory @@ -270,34 +270,34 @@ DewfordTown_Gym_EventScript_GymGuide:: @ 81FC983 release end -DewfordTown_Gym_EventScript_GymGuidePostVictory:: @ 81FC998 +DewfordTown_Gym_EventScript_GymGuidePostVictory:: msgbox DewfordTown_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -DewfordTown_Gym_EventScript_LeftGymStatue:: @ 81FC9A2 +DewfordTown_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE02_GET, DewfordTown_Gym_EventScript_GymStatueCertified goto DewfordTown_Gym_EventScript_GymStatue end -DewfordTown_Gym_EventScript_RightGymStatue:: @ 81FC9B2 +DewfordTown_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE02_GET, DewfordTown_Gym_EventScript_GymStatueCertified goto DewfordTown_Gym_EventScript_GymStatue end -DewfordTown_Gym_EventScript_GymStatueCertified:: @ 81FC9C2 +DewfordTown_Gym_EventScript_GymStatueCertified:: msgbox DewfordTown_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -DewfordTown_Gym_EventScript_GymStatue:: @ 81FC9CC +DewfordTown_Gym_EventScript_GymStatue:: msgbox DewfordTown_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -DewfordTown_Gym_Text_GymGuideAdvice: @ 81FC9D6 +DewfordTown_Gym_Text_GymGuideAdvice: .string "Hey, how's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "DEWFORD's GYM LEADER BRAWLY commands\n" @@ -313,88 +313,88 @@ DewfordTown_Gym_Text_GymGuideAdvice: @ 81FC9D6 .string "the TRAINERS in your way.\p" .string "Hey, okay, go for it!$" -DewfordTown_Gym_Text_GymGuidePostVictory: @ 81FCB5C +DewfordTown_Gym_Text_GymGuidePostVictory: .string "Whoah! It's turned too bright in here!\p" .string "Your future is bright, too!$" -DewfordTown_Gym_Text_TakaoIntro: @ 81FCB9F +DewfordTown_Gym_Text_TakaoIntro: .string "Might is right!\n" .string "Come on!$" -DewfordTown_Gym_Text_TakaoDefeat: @ 81FCBB8 +DewfordTown_Gym_Text_TakaoDefeat: .string "Not enough power…$" -DewfordTown_Gym_Text_TakaoPostBattle: @ 81FCBCA +DewfordTown_Gym_Text_TakaoPostBattle: .string "Your skill overcame my strength!\n" .string "Your technique is commendable!$" -DewfordTown_Gym_Text_JocelynIntro: @ 81FCC0A +DewfordTown_Gym_Text_JocelynIntro: .string "There's no need for BRAWLY to be\n" .string "involved!\p" .string "I'll crush you!$" -DewfordTown_Gym_Text_JocelynDefeat: @ 81FCC45 +DewfordTown_Gym_Text_JocelynDefeat: .string "But… How?\n" .string "How could I lose so easily?$" -DewfordTown_Gym_Text_JocelynPostBattle: @ 81FCC6B +DewfordTown_Gym_Text_JocelynPostBattle: .string "I'm not going to waste this loss.\n" .string "I'll use it to motivate me to train!\p" .string "One day I'll become a GYM LEADER…\p" .string "No, I'll become the POKéMON LEAGUE\n" .string "CHAMPION!$" -DewfordTown_Gym_Text_LauraIntro: @ 81FCD01 +DewfordTown_Gym_Text_LauraIntro: .string "Don't you dare brush me off!\n" .string "It's not my fault if you cry!$" -DewfordTown_Gym_Text_LauraDefeat: @ 81FCD3C +DewfordTown_Gym_Text_LauraDefeat: .string "Waaaaaaah!\n" .string "I lost!$" -DewfordTown_Gym_Text_LauraPostBattle: @ 81FCD4F +DewfordTown_Gym_Text_LauraPostBattle: .string "I battle in the dark to make my heart\n" .string "stronger.\p" .string "But because it's so dark, I can never\n" .string "see BRAWLY's face…$" -DewfordTown_Gym_Text_LilithIntro: @ 81FCDB8 +DewfordTown_Gym_Text_LilithIntro: .string "Ufufu…\n" .string "Are you stumbling around in the dark?$" -DewfordTown_Gym_Text_LilithDefeat: @ 81FCDE5 +DewfordTown_Gym_Text_LilithDefeat: .string "Oh, you…\n" .string "I don't want to know you!$" -DewfordTown_Gym_Text_LilithPostBattle: @ 81FCE08 +DewfordTown_Gym_Text_LilithPostBattle: .string "You deserve to stay lost and end up\n" .string "back at the entrance again!$" -DewfordTown_Gym_Text_BrendenIntro: @ 81FCE48 +DewfordTown_Gym_Text_BrendenIntro: .string "I'll show you the gumption of\n" .string "a sailing man!$" -DewfordTown_Gym_Text_BrendenDefeat: @ 81FCE75 +DewfordTown_Gym_Text_BrendenDefeat: .string "How'd this happen?\n" .string "It's not like me to lose this way!$" -DewfordTown_Gym_Text_BrendenPostBattle: @ 81FCEAB +DewfordTown_Gym_Text_BrendenPostBattle: .string "Oh, aye! You're worthy of seeing\n" .string "our GYM LEADER.$" -DewfordTown_Gym_Text_CristianIntro: @ 81FCEDC +DewfordTown_Gym_Text_CristianIntro: .string "If you mean to pass, it has to be\n" .string "through me!$" -DewfordTown_Gym_Text_CristianDefeat: @ 81FCF0A +DewfordTown_Gym_Text_CristianDefeat: .string "Grrrrr!\n" .string "Vastly overpowered!$" -DewfordTown_Gym_Text_CristianPostBattle: @ 81FCF26 +DewfordTown_Gym_Text_CristianPostBattle: .string "You win!\n" .string "Go after that BADGE!$" -DewfordTown_Gym_Text_BrawlyIntro: @ 81FCF44 +DewfordTown_Gym_Text_BrawlyIntro: .string "I'm BRAWLY!\n" .string "DEWFORD's GYM LEADER!\p" .string "I've been churned in the rough waves\n" @@ -403,18 +403,18 @@ DewfordTown_Gym_Text_BrawlyIntro: @ 81FCF44 .string "So you wanted to challenge me?\n" .string "Let me see what you're made of!$" -DewfordTown_Gym_Text_BrawlyDefeat: @ 81FD008 +DewfordTown_Gym_Text_BrawlyDefeat: .string "Whoah, wow! You made a much bigger\n" .string "splash than I expected!\p" .string "You swamped me!\p" .string "Okay, you've got me.\n" .string "Take this GYM BADGE!$" -DewfordTown_Gym_Text_ReceivedKnuckleBadge: @ 81FD07D +DewfordTown_Gym_Text_ReceivedKnuckleBadge: .string "{PLAYER} received the KNUCKLE BADGE\n" .string "from BRAWLY.$" -DewfordTown_Gym_Text_KnuckleBadgeInfoTakeThis: @ 81FD0A8 +DewfordTown_Gym_Text_KnuckleBadgeInfoTakeThis: .string "The KNUCKLE BADGE makes all POKéMON\n" .string "up to Level 30, even those you get in\l" .string "trades, obey without question.\p" @@ -423,30 +423,30 @@ DewfordTown_Gym_Text_KnuckleBadgeInfoTakeThis: @ 81FD0A8 .string "If you'd like, use this TECHNICAL\n" .string "MACHINE, too.$" -DewfordTown_Gym_Text_ExplainBulkUp: @ 81FD181 +DewfordTown_Gym_Text_ExplainBulkUp: .string "That TM08 contains BULK UP.\p" .string "It's a move that raises both ATTACK\n" .string "and DEFENSE stats.\p" .string "… … … … … …$" -DewfordTown_Gym_Text_RegisteredBrawly: @ 81FD1E0 +DewfordTown_Gym_Text_RegisteredBrawly: .string "Registered GYM LEADER BRAWLY\n" .string "in the POKéNAV.$" -DewfordTown_Gym_Text_BrawlyPostBattle: @ 81FD20D +DewfordTown_Gym_Text_BrawlyPostBattle: .string "I can see your talent becoming a giant\n" .string "wave to cause a storm of astonishment\l" .string "among TRAINERS one day!$" -DewfordTown_Gym_Text_GymStatue: @ 81FD272 +DewfordTown_Gym_Text_GymStatue: .string "DEWFORD TOWN POKéMON GYM$" -DewfordTown_Gym_Text_GymStatueCertified: @ 81FD28B +DewfordTown_Gym_Text_GymStatueCertified: .string "DEWFORD TOWN POKéMON GYM\p" .string "BRAWLY'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -DewfordTown_Gym_Text_BrawlyPreRematch: @ 81FD2C4 +DewfordTown_Gym_Text_BrawlyPreRematch: .string "BRAWLY: A wave may draw back, but it\n" .string "always returns to the shore.\p" .string "A giant wave of a talent like you…\n" @@ -454,16 +454,16 @@ DewfordTown_Gym_Text_BrawlyPreRematch: @ 81FD2C4 .string "Show me how much higher\n" .string "you've gone!$" -DewfordTown_Gym_Text_BrawlyRematchDefeat: @ 81FD367 +DewfordTown_Gym_Text_BrawlyRematchDefeat: .string "Wow!\n" .string "Swamped again!$" -DewfordTown_Gym_Text_BrawlyPostRematch: @ 81FD37B +DewfordTown_Gym_Text_BrawlyPostRematch: .string "BRAWLY: Battling is vast and it's deep.\n" .string "You can't see the bottom.\l" .string "It's just like the sea of HOENN!$" -DewfordTown_Gym_Text_BrawlyRematchNeedTwoMons: @ 81FD3DE +DewfordTown_Gym_Text_BrawlyRematchNeedTwoMons: .string "BRAWLY: A wave may draw back, but it\n" .string "always returns to the shore.\p" .string "A giant wave of a talent like you…\n" diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc index 814392b3deca..db9d13518b56 100644 --- a/data/maps/DewfordTown_Hall/scripts.inc +++ b/data/maps/DewfordTown_Hall/scripts.inc @@ -3,10 +3,10 @@ .set LOCALID_SCHOOL_KID_M, 7 .set LOCALID_PSYCHIC_M, 8 -DewfordTown_Hall_MapScripts:: @ 81FD4CF +DewfordTown_Hall_MapScripts:: .byte 0 -DewfordTown_Hall_EventScript_Girl:: @ 81FD4D0 +DewfordTown_Hall_EventScript_Girl:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -17,12 +17,12 @@ DewfordTown_Hall_EventScript_Girl:: @ 81FD4D0 release end -DewfordTown_Hall_EventScript_GirlBoredOfTrend:: @ 81FD4EF +DewfordTown_Hall_EventScript_GirlBoredOfTrend:: msgbox DewfordTown_Hall_Text_GettingBoredOfTrend, MSGBOX_DEFAULT release end -DewfordTown_Hall_EventScript_Woman:: @ 81FD4F9 +DewfordTown_Hall_EventScript_Woman:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -30,7 +30,7 @@ DewfordTown_Hall_EventScript_Woman:: @ 81FD4F9 release end -DewfordTown_Hall_EventScript_Man:: @ 81FD50A +DewfordTown_Hall_EventScript_Man:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -42,17 +42,17 @@ DewfordTown_Hall_EventScript_Man:: @ 81FD50A goto_if_eq DewfordTown_Hall_EventScript_RejectTrendLink end -DewfordTown_Hall_EventScript_ConfirmTrendLink:: @ 81FD533 +DewfordTown_Hall_EventScript_ConfirmTrendLink:: msgbox DewfordTown_Hall_Text_MyHunchWasRight, MSGBOX_DEFAULT release end -DewfordTown_Hall_EventScript_RejectTrendLink:: @ 81FD53D +DewfordTown_Hall_EventScript_RejectTrendLink:: msgbox DewfordTown_Hall_Text_NotEasyToKeepUp, MSGBOX_DEFAULT release end -DewfordTown_Hall_EventScript_ExpertM:: @ 81FD547 +DewfordTown_Hall_EventScript_ExpertM:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -63,7 +63,7 @@ DewfordTown_Hall_EventScript_ExpertM:: @ 81FD547 release end -DewfordTown_Hall_EventScript_Twin:: @ 81FD563 +DewfordTown_Hall_EventScript_Twin:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -74,7 +74,7 @@ DewfordTown_Hall_EventScript_Twin:: @ 81FD563 release end -DewfordTown_Hall_EventScript_LittleBoy:: @ 81FD57F +DewfordTown_Hall_EventScript_LittleBoy:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -82,14 +82,14 @@ DewfordTown_Hall_EventScript_LittleBoy:: @ 81FD57F release end -DewfordTown_Hall_EventScript_Bookshelf:: @ 81FD590 +DewfordTown_Hall_EventScript_Bookshelf:: lockall call Common_EventScript_BufferTrendyPhrase msgbox DewfordTown_Hall_Text_BooksAboutTrend, MSGBOX_DEFAULT releaseall end -DewfordTown_Hall_EventScript_Painting:: @ 81FD5A0 +DewfordTown_Hall_EventScript_Painting:: lockall call Common_EventScript_BufferTrendyPhrase special GetDewfordHallPaintingNameIndex @@ -104,39 +104,39 @@ DewfordTown_Hall_EventScript_Painting:: @ 81FD5A0 case 7, DewfordTown_Hall_EventScript_LastTitle end -DewfordTown_Hall_EventScript_ScreamTitle:: @ 81FD607 +DewfordTown_Hall_EventScript_ScreamTitle:: msgbox DewfordTown_Hall_Text_TrendsScream, MSGBOX_DEFAULT releaseall end -DewfordTown_Hall_EventScript_SmileTitle:: @ 81FD611 +DewfordTown_Hall_EventScript_SmileTitle:: msgbox DewfordTown_Hall_Text_TrendsSmile, MSGBOX_DEFAULT releaseall end -DewfordTown_Hall_EventScript_LastTitle:: @ 81FD61B +DewfordTown_Hall_EventScript_LastTitle:: msgbox DewfordTown_Hall_Text_LastTrend, MSGBOX_DEFAULT releaseall end -DewfordTown_Hall_EventScript_BirthTitle:: @ 81FD625 +DewfordTown_Hall_EventScript_BirthTitle:: msgbox DewfordTown_Hall_Text_BirthOfTrend, MSGBOX_DEFAULT releaseall end -DewfordTown_Hall_EventScript_SchoolKidM:: @ 81FD62F +DewfordTown_Hall_EventScript_SchoolKidM:: lockall setvar VAR_0x8008, 0 goto DewfordTown_Hall_EventScript_DoTrendDebate end -DewfordTown_Hall_EventScript_PsychicM:: @ 81FD63B +DewfordTown_Hall_EventScript_PsychicM:: lockall setvar VAR_0x8008, 1 goto DewfordTown_Hall_EventScript_DoTrendDebate end -DewfordTown_Hall_EventScript_DoTrendDebate:: @ 81FD647 +DewfordTown_Hall_EventScript_DoTrendDebate:: call Common_EventScript_BufferTrendyPhrase special GetDewfordHallPaintingNameIndex switch VAR_RESULT @@ -150,7 +150,7 @@ DewfordTown_Hall_EventScript_DoTrendDebate:: @ 81FD647 case 7, DewfordTown_Hall_EventScript_TrendDebate5 end -DewfordTown_Hall_EventScript_TrendDebate1:: @ 81FD6AD +DewfordTown_Hall_EventScript_TrendDebate1:: call DewfordTown_Hall_EventScript_DebateReact1 msgbox DewfordTown_Hall_Text_SawTrendCoolestThing, MSGBOX_DEFAULT call DewfordTown_Hall_EventScript_DebateReact2 @@ -158,7 +158,7 @@ DewfordTown_Hall_EventScript_TrendDebate1:: @ 81FD6AD releaseall end -DewfordTown_Hall_EventScript_TrendDebate2:: @ 81FD6C9 +DewfordTown_Hall_EventScript_TrendDebate2:: call DewfordTown_Hall_EventScript_DebateReact1 msgbox DewfordTown_Hall_Text_ComposedTrendThemeSong, MSGBOX_DEFAULT call DewfordTown_Hall_EventScript_DebateReact2 @@ -166,7 +166,7 @@ DewfordTown_Hall_EventScript_TrendDebate2:: @ 81FD6C9 releaseall end -DewfordTown_Hall_EventScript_TrendDebate3:: @ 81FD6E5 +DewfordTown_Hall_EventScript_TrendDebate3:: call DewfordTown_Hall_EventScript_DebateReact1 msgbox DewfordTown_Hall_Text_OrganizeTrendParty, MSGBOX_DEFAULT call DewfordTown_Hall_EventScript_DebateReact2 @@ -174,7 +174,7 @@ DewfordTown_Hall_EventScript_TrendDebate3:: @ 81FD6E5 releaseall end -DewfordTown_Hall_EventScript_TrendDebate4:: @ 81FD701 +DewfordTown_Hall_EventScript_TrendDebate4:: call DewfordTown_Hall_EventScript_DebateReact1 msgbox DewfordTown_Hall_Text_TrendHasBecomePartOfLife, MSGBOX_DEFAULT call DewfordTown_Hall_EventScript_DebateReact2 @@ -182,7 +182,7 @@ DewfordTown_Hall_EventScript_TrendDebate4:: @ 81FD701 releaseall end -DewfordTown_Hall_EventScript_TrendDebate5:: @ 81FD71D +DewfordTown_Hall_EventScript_TrendDebate5:: call DewfordTown_Hall_EventScript_DebateReact1 msgbox DewfordTown_Hall_Text_IfWeTeamUpWellBeInvincible, MSGBOX_DEFAULT call DewfordTown_Hall_EventScript_DebateReact2 @@ -190,10 +190,10 @@ DewfordTown_Hall_EventScript_TrendDebate5:: @ 81FD71D releaseall end -DewfordTown_Hall_EventScript_DontMovePlayer1:: @ 81FD739 +DewfordTown_Hall_EventScript_DontMovePlayer1:: return -DewfordTown_Hall_EventScript_DebateReact1:: @ 81FD73A +DewfordTown_Hall_EventScript_DebateReact1:: applymovement LOCALID_PSYCHIC_M, DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft waitmovement 0 compare VAR_0x8008, 0 @@ -202,17 +202,17 @@ DewfordTown_Hall_EventScript_DebateReact1:: @ 81FD73A goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer2 end -DewfordTown_Hall_EventScript_PlayerReactWest:: @ 81FD75B +DewfordTown_Hall_EventScript_PlayerReactWest:: compare VAR_FACING, DIR_EAST goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -DewfordTown_Hall_EventScript_DontMovePlayer2:: @ 81FD771 +DewfordTown_Hall_EventScript_DontMovePlayer2:: return -DewfordTown_Hall_EventScript_DebateReact2:: @ 81FD772 +DewfordTown_Hall_EventScript_DebateReact2:: applymovement LOCALID_SCHOOL_KID_M, DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight waitmovement 0 compare VAR_0x8008, 0 @@ -221,39 +221,39 @@ DewfordTown_Hall_EventScript_DebateReact2:: @ 81FD772 goto_if_eq DewfordTown_Hall_EventScript_PlayerReactEast end -DewfordTown_Hall_EventScript_PlayerReactNorthSouth:: @ 81FD793 +DewfordTown_Hall_EventScript_PlayerReactNorthSouth:: compare VAR_FACING, DIR_NORTH call_if_eq DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp compare VAR_FACING, DIR_SOUTH call_if_eq DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown return -DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp:: @ 81FD7AA +DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown:: @ 81FD7B5 +DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -DewfordTown_Hall_EventScript_PlayerReactEast:: @ 81FD7C0 +DewfordTown_Hall_EventScript_PlayerReactEast:: compare VAR_FACING, DIR_WEST goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft: @ 81FD7D6 +DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft: walk_in_place_left step_end -DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight: @ 81FD7D8 +DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight: walk_in_place_right step_end -DewfordTown_Hall_EventScript_SludgeBombMan:: @ 81FD7DA +DewfordTown_Hall_EventScript_SludgeBombMan:: lock faceplayer call Common_EventScript_BufferTrendyPhrase @@ -266,59 +266,59 @@ DewfordTown_Hall_EventScript_SludgeBombMan:: @ 81FD7DA release end -DewfordTown_Hall_EventScript_ReceivedSludgeBomb:: @ 81FD80E +DewfordTown_Hall_EventScript_ReceivedSludgeBomb:: msgbox DewfordTown_Hall_Text_LoveSludgeBombButTrendInToo, MSGBOX_DEFAULT release end -DewfordTown_Hall_Text_CantImagineLifeWithoutTrend: @ 81FD818 +DewfordTown_Hall_Text_CantImagineLifeWithoutTrend: .string "What's in vogue? Why, it has to be\n" .string "“{STR_VAR_1}”!\p" .string "I can't imagine what life would be like\n" .string "without “{STR_VAR_1}”!$" -DewfordTown_Hall_Text_GettingBoredOfTrend: @ 81FD877 +DewfordTown_Hall_Text_GettingBoredOfTrend: .string "What's in vogue? Why, it has to be\n" .string "“{STR_VAR_1}”!\p" .string "But I'm getting kind of bored with it.\p" .string "I should look for the next big thing.$" -DewfordTown_Hall_Text_TeachingMonAboutTrend: @ 81FD8ED +DewfordTown_Hall_Text_TeachingMonAboutTrend: .string "I'm teaching my POKéMON about\n" .string "“{STR_VAR_1},”\l" .string "but it's not going well.\p" .string "It's a bit too much, I think.$" -DewfordTown_Hall_Text_DeepLinkBetweenXAndY: @ 81FD948 +DewfordTown_Hall_Text_DeepLinkBetweenXAndY: .string "I'm studying up on the hip and trendy\n" .string "“{STR_VAR_1}” now.\p" .string "Is it true that there's a deep link\n" .string "between “{STR_VAR_1}”\l" .string "and “{STR_VAR_2}”?$" -DewfordTown_Hall_Text_MyHunchWasRight: @ 81FD9B3 +DewfordTown_Hall_Text_MyHunchWasRight: .string "Oh!\n" .string "So, my hunch was right!\p" .string "I'm one step closer to being hip and\n" .string "happening, yowza!$" -DewfordTown_Hall_Text_NotEasyToKeepUp: @ 81FDA06 +DewfordTown_Hall_Text_NotEasyToKeepUp: .string "What?!\n" .string "Is that so?!\p" .string "It's not easy for an older fellow like\n" .string "me to keep up with trends!$" -DewfordTown_Hall_Text_TVShowAboutTrend: @ 81FDA5C +DewfordTown_Hall_Text_TVShowAboutTrend: .string "This whole business about\n" .string "“{STR_VAR_1}”…\l" .string "Isn't there a TV show on it?$" -DewfordTown_Hall_Text_IsTrendMorePopularAcrossSea: @ 81FDA99 +DewfordTown_Hall_Text_IsTrendMorePopularAcrossSea: .string "Across the sea…\p" .string "Is “{STR_VAR_1}”\n" .string "even more popular?$" -DewfordTown_Hall_Text_CollectTrendMerchandise: @ 81FDAC4 +DewfordTown_Hall_Text_CollectTrendMerchandise: .string "I collect official\n" .string "“{STR_VAR_1}”\l" .string "licensed merchandise.\p" @@ -332,7 +332,7 @@ DewfordTown_Hall_Text_CollectTrendMerchandise: @ 81FDAC4 .string "Heheh, I own!\n" .string "I'm not sharing anything with you!$" -DewfordTown_Hall_Text_BooksAboutTrend: @ 81FDB89 +DewfordTown_Hall_Text_BooksAboutTrend: .string "IDENTIFYING GOOD\n" .string "“{STR_VAR_1}” &\l" .string "BAD “{STR_VAR_1}”…\p" @@ -344,30 +344,30 @@ DewfordTown_Hall_Text_BooksAboutTrend: @ 81FDB89 .string "It's neatly jammed with books about\n" .string "“{STR_VAR_1}.”$" -DewfordTown_Hall_Text_TrendsScream: @ 81FDC05 +DewfordTown_Hall_Text_TrendsScream: .string "“{STR_VAR_1}'S\n" .string "SCREAM” is the title.$" -DewfordTown_Hall_Text_TrendsSmile: @ 81FDC21 +DewfordTown_Hall_Text_TrendsSmile: .string "“{STR_VAR_1}'S\n" .string "SMILE” is the title.$" -DewfordTown_Hall_Text_LastTrend: @ 81FDC3C +DewfordTown_Hall_Text_LastTrend: .string "It's titled “THE LAST\n" .string "{STR_VAR_1}”.$" -DewfordTown_Hall_Text_BirthOfTrend: @ 81FDC57 +DewfordTown_Hall_Text_BirthOfTrend: .string "It's titled “THE BIRTH OF\n" .string "{STR_VAR_1}”.$" -DewfordTown_Hall_Text_SawTrendCoolestThing: @ 81FDC76 +DewfordTown_Hall_Text_SawTrendCoolestThing: .string "I saw “{STR_VAR_1}”!\n" .string "Cool, huh?\p" .string "It's, like, the coolest thing going!\p" .string "It was awesome!\n" .string "It was the real thing, oh yeah!$" -DewfordTown_Hall_Text_AllegedTrendNotAuthentic: @ 81FDCE2 +DewfordTown_Hall_Text_AllegedTrendNotAuthentic: .string "Oh, no, no, no.\p" .string "That alleged\n" .string "“{STR_VAR_1}”\l" @@ -377,7 +377,7 @@ DewfordTown_Hall_Text_AllegedTrendNotAuthentic: @ 81FDCE2 .string "Sharper, yet more mellow!\p" .string "Ah, no matter. It's astonishing!$" -DewfordTown_Hall_Text_ComposedTrendThemeSong: @ 81FDD95 +DewfordTown_Hall_Text_ComposedTrendThemeSong: .string "Hey, listen, I composed a theme song\n" .string "for “{STR_VAR_1}.”\p" .string "“{STR_VAR_1}”\n" @@ -389,20 +389,20 @@ DewfordTown_Hall_Text_ComposedTrendThemeSong: @ 81FDD95 .string "Wonderful\n" .string "{STR_VAR_1}!$" -DewfordTown_Hall_Text_WorkOnYourSinging: @ 81FDE0E +DewfordTown_Hall_Text_WorkOnYourSinging: .string "… …\p" .string "I dare say, chap, it would pay for you\n" .string "to work on your singing before you\l" .string "trifle yourself with\l" .string "“{STR_VAR_1}.”$" -DewfordTown_Hall_Text_OrganizeTrendParty: @ 81FDE77 +DewfordTown_Hall_Text_OrganizeTrendParty: .string "Anyway, as I was saying earlier, we\n" .string "should get together and organize a\l" .string "“{STR_VAR_1}” party\l" .string "on the island.$" -DewfordTown_Hall_Text_BrilliantIndeed: @ 81FDED8 +DewfordTown_Hall_Text_BrilliantIndeed: .string "Oh, a smashing good idea!\p" .string "It will settle once and for all\n" .string "who is the best at\l" @@ -411,14 +411,14 @@ DewfordTown_Hall_Text_BrilliantIndeed: @ 81FDED8 .string "Starting today, our lives will revolve\n" .string "around “{STR_VAR_1}”!$" -DewfordTown_Hall_Text_TrendHasBecomePartOfLife: @ 81FDF72 +DewfordTown_Hall_Text_TrendHasBecomePartOfLife: .string "I was thinking, though…\p" .string "Wouldn't you agree that\n" .string "“{STR_VAR_1}” has\l" .string "grown from being something trendy to\l" .string "being a part of our daily lives?$" -DewfordTown_Hall_Text_TrendWeighsHeavilyOnMind: @ 81FDFF1 +DewfordTown_Hall_Text_TrendWeighsHeavilyOnMind: .string "Beg pardon?\n" .string "That much, what?\p" .string "However, it's true that\n" @@ -429,19 +429,19 @@ DewfordTown_Hall_Text_TrendWeighsHeavilyOnMind: @ 81FDFF1 .string "“{STR_VAR_1}”\l" .string "PROFESSOR, old sport!$" -DewfordTown_Hall_Text_IfWeTeamUpWellBeInvincible: @ 81FE09A +DewfordTown_Hall_Text_IfWeTeamUpWellBeInvincible: .string "If you and me team up as a combo,\n" .string "we'll be invincible when it comes to all\l" .string "things “{STR_VAR_1}”!$" -DewfordTown_Hall_Text_WellBeTrendDuo: @ 81FE0F2 +DewfordTown_Hall_Text_WellBeTrendDuo: .string "Spot on, my friend!\p" .string "We shall be the\n" .string "“{STR_VAR_1}” DUO!\p" .string "Isn't that a ripe image?\n" .string "Hahahah!$" -DewfordTown_Hall_Text_GiveYouSludgeBomb: @ 81FE142 +DewfordTown_Hall_Text_GiveYouSludgeBomb: .string "For me, SLUDGE BOMB is at the peak\n" .string "of popularity. It's the one.\p" .string "Hunh? You're telling me that you don't\n" @@ -449,7 +449,7 @@ DewfordTown_Hall_Text_GiveYouSludgeBomb: @ 81FE142 .string "That's outright pitiful.\n" .string "I'll give you one.$" -DewfordTown_Hall_Text_LoveSludgeBombButTrendInToo: @ 81FE1ED +DewfordTown_Hall_Text_LoveSludgeBombButTrendInToo: .string "I love SLUDGE BOMB.\p" .string "But POKéMON with the move\n" .string "“{STR_VAR_1}”\l" diff --git a/data/maps/DewfordTown_House1/scripts.inc b/data/maps/DewfordTown_House1/scripts.inc index 06e377057800..0aba45d3c7d4 100644 --- a/data/maps/DewfordTown_House1/scripts.inc +++ b/data/maps/DewfordTown_House1/scripts.inc @@ -1,15 +1,15 @@ -DewfordTown_House1_MapScripts:: @ 81FC3CD +DewfordTown_House1_MapScripts:: .byte 0 -DewfordTown_House1_EventScript_Man:: @ 81FC3CE +DewfordTown_House1_EventScript_Man:: msgbox DewfordTown_House1_Text_LotToBeSaidForLivingOnIsland, MSGBOX_NPC end -DewfordTown_House1_EventScript_Woman:: @ 81FC3D7 +DewfordTown_House1_EventScript_Woman:: msgbox DewfordTown_House1_Text_LifeGoesSlowlyOnIsland, MSGBOX_NPC end -DewfordTown_House1_EventScript_Zigzagoon:: @ 81FC3E0 +DewfordTown_House1_EventScript_Zigzagoon:: lock faceplayer waitse @@ -19,18 +19,18 @@ DewfordTown_House1_EventScript_Zigzagoon:: @ 81FC3E0 release end -DewfordTown_House1_Text_LotToBeSaidForLivingOnIsland: @ 81FC3F3 +DewfordTown_House1_Text_LotToBeSaidForLivingOnIsland: .string "There's a lot to be said for living on\n" .string "a small island like this in harmony with\l" .string "POKéMON and the family.$" -DewfordTown_House1_Text_LifeGoesSlowlyOnIsland: @ 81FC45B +DewfordTown_House1_Text_LifeGoesSlowlyOnIsland: .string "I left the major port of SLATEPORT\n" .string "CITY when I married my husband here.\p" .string "Life goes by slowly on this little\n" .string "island. But being surrounded by the\l" .string "beautiful sea--that's happiness, too.$" -DewfordTown_House1_Text_Zigzagoon: @ 81FC510 +DewfordTown_House1_Text_Zigzagoon: .string "ZIGZAGOON: Guguuh!$" diff --git a/data/maps/DewfordTown_House2/scripts.inc b/data/maps/DewfordTown_House2/scripts.inc index 4a57cfdcf51f..ae173f151c3a 100644 --- a/data/maps/DewfordTown_House2/scripts.inc +++ b/data/maps/DewfordTown_House2/scripts.inc @@ -1,7 +1,7 @@ -DewfordTown_House2_MapScripts:: @ 81FE22D +DewfordTown_House2_MapScripts:: .byte 0 -DewfordTown_House2_EventScript_Man:: @ 81FE22E +DewfordTown_House2_EventScript_Man:: lock faceplayer goto_if_set FLAG_RECEIVED_SILK_SCARF, DewfordTown_House2_EventScript_ExplainSilkScarf @@ -13,21 +13,21 @@ DewfordTown_House2_EventScript_Man:: @ 81FE22E release end -DewfordTown_House2_EventScript_NoRoomForScarf:: @ 81FE25D +DewfordTown_House2_EventScript_NoRoomForScarf:: msgbox DewfordTown_House2_Text_NoRoom, MSGBOX_DEFAULT release end -DewfordTown_House2_EventScript_ExplainSilkScarf:: @ 81FE267 +DewfordTown_House2_EventScript_ExplainSilkScarf:: msgbox DewfordTown_House2_Text_ExplainSilkScarf, MSGBOX_DEFAULT release end -DewfordTown_House2_EventScript_Boy:: @ 81FE271 +DewfordTown_House2_EventScript_Boy:: msgbox DewfordTown_House2_Text_BrawlySoCool, MSGBOX_NPC end -DewfordTown_House2_Text_WantYouToHaveSilkScarf: @ 81FE27A +DewfordTown_House2_Text_WantYouToHaveSilkScarf: .string "Gorge your eyes on this!\p" .string "It's a SILK SCARF. It's right at the\n" .string "cutting edge of fashion, yeah!\p" @@ -36,19 +36,19 @@ DewfordTown_House2_Text_WantYouToHaveSilkScarf: @ 81FE27A .string "Oh, you're a delight!\n" .string "Here you go. I want you to have it!$" -DewfordTown_House2_Text_NoRoom: @ 81FE356 +DewfordTown_House2_Text_NoRoom: .string "Oh, you don't have room?\p" .string "Now, listen tight, this SCARF is a must-\n" .string "have! Why, I would sell all my items\l" .string "in order to get it!$" -DewfordTown_House2_Text_ExplainSilkScarf: @ 81FE3D1 +DewfordTown_House2_Text_ExplainSilkScarf: .string "The SILK SCARF raises the power of\n" .string "NORMAL-type moves.\p" .string "It's a marvelous SCARF that will go\n" .string "with almost all POKéMON!$" -DewfordTown_House2_Text_BrawlySoCool: @ 81FE444 +DewfordTown_House2_Text_BrawlySoCool: .string "Wow, you bothered to cross the sea\n" .string "to visit DEWFORD?\p" .string "Did you maybe come here because you\n" diff --git a/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc b/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc index 9873c9e7a658..dbd9e1c8d211 100644 --- a/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -DewfordTown_PokemonCenter_1F_MapScripts:: @ 81FC523 +DewfordTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, DewfordTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -DewfordTown_PokemonCenter_1F_OnTransition: @ 81FC52E +DewfordTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_DEWFORD_TOWN call Common_EventScript_UpdateBrineyLocation end -DewfordTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FC537 +DewfordTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,21 +18,21 @@ DewfordTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FC537 release end -DewfordTown_PokemonCenter_1F_EventScript_PokefanF:: @ 81FC545 +DewfordTown_PokemonCenter_1F_EventScript_PokefanF:: msgbox DewfordTown_PokemonCenter_1F_Text_StoneCavern, MSGBOX_NPC end -DewfordTown_PokemonCenter_1F_EventScript_Man:: @ 81FC54E +DewfordTown_PokemonCenter_1F_EventScript_Man:: msgbox DewfordTown_PokemonCenter_1F_Text_FaintedMonCanUseHM, MSGBOX_NPC end -DewfordTown_PokemonCenter_1F_Text_StoneCavern: @ 81FC557 +DewfordTown_PokemonCenter_1F_Text_StoneCavern: .string "There's a stone cavern at the edge\n" .string "of town.\p" .string "I've heard you can find rare stones\n" .string "there.$" -DewfordTown_PokemonCenter_1F_Text_FaintedMonCanUseHM: @ 81FC5AE +DewfordTown_PokemonCenter_1F_Text_FaintedMonCanUseHM: .string "Even if a POKéMON faints and can't\n" .string "battle, it can still use a move learned\l" .string "from a HIDDEN MACHINE (HM).$" diff --git a/data/maps/DewfordTown_PokemonCenter_2F/scripts.inc b/data/maps/DewfordTown_PokemonCenter_2F/scripts.inc index df8539f0b7ac..625edea6c1ab 100644 --- a/data/maps/DewfordTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/DewfordTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -DewfordTown_PokemonCenter_2F_MapScripts:: @ 81FC615 +DewfordTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ DewfordTown_PokemonCenter_2F_MapScripts:: @ 81FC615 .byte 0 @ The below 3 are unused and leftover from RS -DewfordTown_PokemonCenter_2F_EventScript_Colosseum:: @ 81FC62A +DewfordTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -DewfordTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 81FC630 +DewfordTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -DewfordTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 81FC636 +DewfordTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/EverGrandeCity/scripts.inc b/data/maps/EverGrandeCity/scripts.inc index 42392c7e9a74..de1ad9189d8c 100644 --- a/data/maps/EverGrandeCity/scripts.inc +++ b/data/maps/EverGrandeCity/scripts.inc @@ -1,36 +1,36 @@ -EverGrandeCity_MapScripts:: @ 81E7D1B +EverGrandeCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_OnTransition .byte 0 -EverGrandeCity_OnTransition: @ 81E7D21 +EverGrandeCity_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather end -EverGrandeCity_EventScript_VictoryRoadSign:: @ 81E7D2B +EverGrandeCity_EventScript_VictoryRoadSign:: msgbox EverGrandeCity_Text_EnteringVictoryRoad, MSGBOX_SIGN end -EverGrandeCity_EventScript_CitySign:: @ 81E7D34 +EverGrandeCity_EventScript_CitySign:: msgbox EverGrandeCity_Text_CitySign, MSGBOX_SIGN end -EverGrandeCity_EventScript_PokemonLeagueSign:: @ 81E7D3D +EverGrandeCity_EventScript_PokemonLeagueSign:: msgbox EverGrandeCity_Text_EnteringPokemonLeague, MSGBOX_SIGN end -EverGrandeCity_EventScript_SetVisitedEverGrande:: @ 81E7D46 +EverGrandeCity_EventScript_SetVisitedEverGrande:: setflag FLAG_VISITED_EVER_GRANDE_CITY setvar VAR_TEMP_1, 1 end -EverGrandeCity_Text_EnteringVictoryRoad: @ 81E7D4F +EverGrandeCity_Text_EnteringVictoryRoad: .string "ENTERING VICTORY ROAD$" -EverGrandeCity_Text_EnteringPokemonLeague: @ 81E7D65 +EverGrandeCity_Text_EnteringPokemonLeague: .string "ENTERING POKéMON LEAGUE\n" .string "CENTER GATE$" -EverGrandeCity_Text_CitySign: @ 81E7D89 +EverGrandeCity_Text_CitySign: .string "EVER GRANDE CITY\p" .string "“The paradise of flowers, the sea,\n" .string "and POKéMON.”$" diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index 7b75c87525b6..dc2bb4d72223 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -2,29 +2,29 @@ .set LOCALID_RIVAL, 2 .set LOCALID_BIRCH, 3 -EverGrandeCity_ChampionsRoom_MapScripts:: @ 82289EF +EverGrandeCity_ChampionsRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_ChampionsRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_ChampionsRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_ChampionsRoom_OnFrame .byte 0 -EverGrandeCity_ChampionsRoom_OnTransition: @ 82289FF +EverGrandeCity_ChampionsRoom_OnTransition: call Common_EventScript_SetupRivalGfxId end -EverGrandeCity_ChampionsRoom_OnWarp: @ 8228A05 +EverGrandeCity_ChampionsRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_ChampionsRoom_EventScript_PlayerTurnNorth .2byte 0 -EverGrandeCity_ChampionsRoom_EventScript_PlayerTurnNorth:: @ 8228A0F +EverGrandeCity_ChampionsRoom_EventScript_PlayerTurnNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_ChampionsRoom_OnFrame: @ 8228A14 +EverGrandeCity_ChampionsRoom_OnFrame: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_ChampionsRoom_EventScript_EnterRoom .2byte 0 -EverGrandeCity_ChampionsRoom_EventScript_EnterRoom:: @ 8228A1E +EverGrandeCity_ChampionsRoom_EventScript_EnterRoom:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp4 waitmovement 0 @@ -36,19 +36,19 @@ EverGrandeCity_ChampionsRoom_EventScript_EnterRoom:: @ 8228A1E releaseall end -EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace: @ 8228A42 +EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace: walk_up walk_up step_end -EverGrandeCity_ChampionsRoom_EventScript_Wallace:: @ 8228A45 +EverGrandeCity_ChampionsRoom_EventScript_Wallace:: playbgm MUS_ENCOUNTER_CHAMPION, FALSE msgbox EverGrandeCity_ChampionsRoom_Text_IntroSpeech, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_WALLACE, EverGrandeCity_ChampionsRoom_Text_Defeat goto EverGrandeCity_ChampionsRoom_EventScript_Defeated end -EverGrandeCity_ChampionsRoom_EventScript_Defeated:: @ 8228A61 +EverGrandeCity_ChampionsRoom_EventScript_Defeated:: playse SE_DOOR setmetatile 6, 1, METATILE_EliteFour_OpenDoorChampion_Frame, 0 setmetatile 6, 2, METATILE_EliteFour_OpenDoorChampion_Opening, 0 @@ -70,15 +70,15 @@ EverGrandeCity_ChampionsRoom_EventScript_Defeated:: @ 8228A61 goto_if_eq EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice end -EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic:: @ 8228ABC +EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, FALSE return -EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic:: @ 8228AC1 +EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, FALSE return -EverGrandeCity_ChampionsRoom_EventScript_MayAdvice:: @ 8228AC6 +EverGrandeCity_ChampionsRoom_EventScript_MayAdvice:: msgbox EverGrandeCity_ChampionsRoom_Text_MayAdvice, MSGBOX_DEFAULT delay 40 playse SE_PIN @@ -91,7 +91,7 @@ EverGrandeCity_ChampionsRoom_EventScript_MayAdvice:: @ 8228AC6 goto EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF end -EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice:: @ 8228AFB +EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice:: msgbox EverGrandeCity_ChampionsRoom_Text_BrendanAdvice, MSGBOX_DEFAULT delay 40 playse SE_PIN @@ -104,7 +104,7 @@ EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice:: @ 8228AFB goto EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF end -EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: @ 8228B30 +EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: closemessage addobject LOCALID_BIRCH applymovement LOCALID_BIRCH, EverGrandeCity_ChampionsRoom_Movement_BirchArrives @@ -146,32 +146,32 @@ EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: @ 8228B30 releaseall end -EverGrandeCity_ChampionsRoom_EventScript_MayCongratulations:: @ 8228BEB +EverGrandeCity_ChampionsRoom_EventScript_MayCongratulations:: msgbox EverGrandeCity_ChampionsRoom_Text_MayCongratulations, MSGBOX_DEFAULT return -EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations:: @ 8228BF4 +EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations:: msgbox EverGrandeCity_ChampionsRoom_Text_BrendanCongratulations, MSGBOX_DEFAULT return -EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer:: @ 8228BFD +EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer:: applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -EverGrandeCity_ChampionsRoom_EventScript_RivalLookBackAndForth:: @ 8228C12 +EverGrandeCity_ChampionsRoom_EventScript_RivalLookBackAndForth:: applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth waitmovement 0 return -EverGrandeCity_ChampionsRoom_Movement_PlayerExitStart: @ 8228C1D +EverGrandeCity_ChampionsRoom_Movement_PlayerExitStart: walk_up walk_up step_end -EverGrandeCity_ChampionsRoom_Movement_PlayerExit: @ 8228C20 +EverGrandeCity_ChampionsRoom_Movement_PlayerExit: walk_up delay_16 walk_up @@ -179,7 +179,7 @@ EverGrandeCity_ChampionsRoom_Movement_PlayerExit: @ 8228C20 set_invisible step_end -EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer: @ 8228C26 +EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer: walk_up walk_up walk_up @@ -190,7 +190,7 @@ EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer: @ 8228C26 walk_in_place_fastest_right step_end -EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth: @ 8228C2F +EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth: walk_in_place_fastest_up delay_16 walk_in_place_fastest_right @@ -201,24 +201,24 @@ EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth: @ 8228C2F delay_16 step_end -EverGrandeCity_ChampionsRoom_Movement_RivalFollows: @ 8228C38 +EverGrandeCity_ChampionsRoom_Movement_RivalFollows: walk_right walk_up step_end -EverGrandeCity_ChampionsRoom_Movement_WallaceExitStart: @ 8228C3B +EverGrandeCity_ChampionsRoom_Movement_WallaceExitStart: walk_up walk_up walk_in_place_fastest_down step_end -EverGrandeCity_ChampionsRoom_Movement_WallaceExit: @ 8228C3F +EverGrandeCity_ChampionsRoom_Movement_WallaceExit: walk_up delay_8 set_invisible step_end -EverGrandeCity_ChampionsRoom_Movement_BirchArrives: @ 8228C43 +EverGrandeCity_ChampionsRoom_Movement_BirchArrives: walk_up walk_up walk_up @@ -229,7 +229,7 @@ EverGrandeCity_ChampionsRoom_Movement_BirchArrives: @ 8228C43 walk_in_place_fastest_left step_end -EverGrandeCity_ChampionsRoom_Text_IntroSpeech: @ 8228C4C +EverGrandeCity_ChampionsRoom_Text_IntroSpeech: .string "WALLACE: Welcome, {PLAYER}{KUN}.\p" .string "That incident in SOOTOPOLIS CITY…\n" .string "That was superb work, putting an end\l" @@ -252,7 +252,7 @@ EverGrandeCity_ChampionsRoom_Text_IntroSpeech: @ 8228C4C .string "their POKéMON in HOENN?\p" .string "Show me right here and now!$" -EverGrandeCity_ChampionsRoom_Text_Defeat: @ 8228EAC +EverGrandeCity_ChampionsRoom_Text_Defeat: .string "I, the CHAMPION, fall in defeat…\p" .string "That was wonderful work.\n" .string "You were elegant, infuriatingly so.\l" @@ -261,7 +261,7 @@ EverGrandeCity_ChampionsRoom_Text_Defeat: @ 8228EAC .string "You are a truly noble POKéMON\n" .string "TRAINER!$" -EverGrandeCity_ChampionsRoom_Text_PostBattleSpeech: @ 8228F66 +EverGrandeCity_ChampionsRoom_Text_PostBattleSpeech: .string "WALLACE: The POKéMON you sent into\n" .string "battle…\p" .string "At times they danced like a spring\n" @@ -276,29 +276,29 @@ EverGrandeCity_ChampionsRoom_Text_PostBattleSpeech: @ 8228F66 .string "I now proclaim you to be the new\n" .string "HOENN region…$" -EverGrandeCity_ChampionsRoom_Text_MayAdvice: @ 82290CA +EverGrandeCity_ChampionsRoom_Text_MayAdvice: .string "MAY: {PLAYER}{KUN}!\p" .string "Here's some advice before you challenge\n" .string "the CHAMPION…$" -EverGrandeCity_ChampionsRoom_Text_MayItsAlreadyOver: @ 822910B +EverGrandeCity_ChampionsRoom_Text_MayItsAlreadyOver: .string "MAY: Huh?\n" .string "What, what, what?\p" .string "{PLAYER}{KUN}…\n" .string "Could it be that…\l" .string "It's already over?$" -EverGrandeCity_ChampionsRoom_Text_BrendanAdvice: @ 8229152 +EverGrandeCity_ChampionsRoom_Text_BrendanAdvice: .string "BRENDAN: {PLAYER}!\p" .string "How would you like some advice before\n" .string "you challenge the CHAMPION?…$" -EverGrandeCity_ChampionsRoom_Text_BrendanYouveWon: @ 82291A2 +EverGrandeCity_ChampionsRoom_Text_BrendanYouveWon: .string "BRENDAN: {PLAYER}…\p" .string "Are you trying to tell me…\n" .string "You've beaten the CHAMPION?$" -EverGrandeCity_ChampionsRoom_Text_BirchArriveRatePokedex: @ 82291E6 +EverGrandeCity_ChampionsRoom_Text_BirchArriveRatePokedex: .string "PROF. BIRCH: See?\n" .string "What did I tell you, {RIVAL}?\p" .string "Didn't I tell you that you don't need\n" @@ -314,25 +314,25 @@ EverGrandeCity_ChampionsRoom_Text_BirchArriveRatePokedex: @ 82291E6 .string "What became of your POKéDEX?\n" .string "Here, let me see.$" -EverGrandeCity_ChampionsRoom_Text_BirchCongratulations: @ 822934D +EverGrandeCity_ChampionsRoom_Text_BirchCongratulations: .string "PROF. BIRCH: Anyways,\n" .string "congratulations!\p" .string "Now, go proudly into the final room!$" -EverGrandeCity_ChampionsRoom_Text_WallaceComeWithMe: @ 8229399 +EverGrandeCity_ChampionsRoom_Text_WallaceComeWithMe: .string "WALLACE: {PLAYER}{KUN}…\p" .string "No, let me rephrase that properly.\p" .string "The new CHAMPION!\p" .string "Come with me.$" -EverGrandeCity_ChampionsRoom_Text_WallaceWaitOutside: @ 82293EB +EverGrandeCity_ChampionsRoom_Text_WallaceWaitOutside: .string "WALLACE: I'm sorry, but…\p" .string "From here on, only those TRAINERS who\n" .string "have become CHAMPIONS may enter.\p" .string "You'll have to wait outside with\n" .string "PROF. BIRCH.$" -EverGrandeCity_ChampionsRoom_Text_MayCongratulations: @ 8229479 +EverGrandeCity_ChampionsRoom_Text_MayCongratulations: .string "MAY: Groan…\p" .string "… … … … … … … …\n" .string "… … … … … … … …\p" @@ -341,7 +341,7 @@ EverGrandeCity_ChampionsRoom_Text_MayCongratulations: @ 8229479 .string "{PLAYER}{KUN}!\n" .string "Honestly, congratulations!$" -EverGrandeCity_ChampionsRoom_Text_BrendanCongratulations: @ 82294F5 +EverGrandeCity_ChampionsRoom_Text_BrendanCongratulations: .string "BRENDAN: Whaaaat?! … … … … …\n" .string "… … … … … … … …\p" .string "It can't be helped if that's the rule.\p" diff --git a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc index 38762277fa73..75b16e775055 100644 --- a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc @@ -1,44 +1,44 @@ -EverGrandeCity_DrakesRoom_MapScripts:: @ 822869C +EverGrandeCity_DrakesRoom_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_DrakesRoom_OnFrame map_script MAP_SCRIPT_ON_LOAD, EverGrandeCity_DrakesRoom_OnLoad map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_SidneysRoom_OnWarp .byte 0 @ Unused, Drake uses Sidneys identical OnWarp for some reason -EverGrandeCity_DrakesRoom_OnWarp: @ 82286AC +EverGrandeCity_DrakesRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_DrakesRoom_EventScript_PlayerTurnNorth .2byte 0 -EverGrandeCity_DrakesRoom_EventScript_PlayerTurnNorth:: @ 82286B6 +EverGrandeCity_DrakesRoom_EventScript_PlayerTurnNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_DrakesRoom_OnFrame: @ 82286BB +EverGrandeCity_DrakesRoom_OnFrame: map_script_2 VAR_ELITE_4_STATE, 3, EverGrandeCity_DrakesRoom_EventScript_WalkInCloseDoor .2byte 0 -EverGrandeCity_DrakesRoom_EventScript_WalkInCloseDoor:: @ 82286C5 +EverGrandeCity_DrakesRoom_EventScript_WalkInCloseDoor:: lockall call PokemonLeague_EliteFour_EventScript_WalkInCloseDoor setvar VAR_ELITE_4_STATE, 4 releaseall end -EverGrandeCity_DrakesRoom_OnLoad: @ 82286D2 +EverGrandeCity_DrakesRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_ResetAdvanceToNextRoom compare VAR_ELITE_4_STATE, 4 call_if_eq EverGrandeCity_DrakesRoom_EventScript_CloseDoor end -EverGrandeCity_DrakesRoom_EventScript_ResetAdvanceToNextRoom:: @ 82286E7 +EverGrandeCity_DrakesRoom_EventScript_ResetAdvanceToNextRoom:: call PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom return -EverGrandeCity_DrakesRoom_EventScript_CloseDoor:: @ 82286ED +EverGrandeCity_DrakesRoom_EventScript_CloseDoor:: call PokemonLeague_EliteFour_EventScript_CloseDoor return -EverGrandeCity_DrakesRoom_EventScript_Drake:: @ 82286F3 +EverGrandeCity_DrakesRoom_EventScript_Drake:: lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_PostBattleSpeech @@ -48,12 +48,12 @@ EverGrandeCity_DrakesRoom_EventScript_Drake:: @ 82286F3 goto EverGrandeCity_DrakesRoom_EventScript_Defeated end -EverGrandeCity_DrakesRoom_EventScript_PostBattleSpeech:: @ 822871A +EverGrandeCity_DrakesRoom_EventScript_PostBattleSpeech:: msgbox EverGrandeCity_DrakesRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_DrakesRoom_EventScript_Defeated:: @ 8228724 +EverGrandeCity_DrakesRoom_EventScript_Defeated:: setvar VAR_0x8004, FANCOUNTER_DEFEATED_DRAKE special Script_TryGainNewFanFromCounter setflag FLAG_DEFEATED_ELITE_4_DRAKE @@ -62,7 +62,7 @@ EverGrandeCity_DrakesRoom_EventScript_Defeated:: @ 8228724 release end -EverGrandeCity_DrakesRoom_Text_IntroSpeech: @ 822873E +EverGrandeCity_DrakesRoom_Text_IntroSpeech: .string "I am the last of the POKéMON LEAGUE\n" .string "ELITE FOUR, DRAKE the DRAGON master!\p" .string "In their natural state, POKéMON are\n" @@ -75,10 +75,10 @@ EverGrandeCity_DrakesRoom_Text_IntroSpeech: @ 822873E .string "If you don't, then you will never\n" .string "prevail over me!$" -EverGrandeCity_DrakesRoom_Text_Defeat: @ 8228895 +EverGrandeCity_DrakesRoom_Text_Defeat: .string "Superb, it should be said.$" -EverGrandeCity_DrakesRoom_Text_PostBattleSpeech: @ 82288B0 +EverGrandeCity_DrakesRoom_Text_PostBattleSpeech: .string "You deserve every credit for coming\n" .string "this far as a TRAINER of POKéMON.\p" .string "You do seem to know what is needed.\p" diff --git a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc index 3529b746cb6f..59f4440c458d 100644 --- a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc +++ b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc @@ -1,43 +1,43 @@ -EverGrandeCity_GlaciasRoom_MapScripts:: @ 8228412 +EverGrandeCity_GlaciasRoom_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_GlaciasRoom_OnFrame map_script MAP_SCRIPT_ON_LOAD, EverGrandeCity_GlaciasRoom_OnLoad map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_GlaciasRoom_OnWarp .byte 0 -EverGrandeCity_GlaciasRoom_OnWarp: @ 8228422 +EverGrandeCity_GlaciasRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_GlaciasRoom_EventScript_PlayerTurnNorth .2byte 0 -EverGrandeCity_GlaciasRoom_EventScript_PlayerTurnNorth:: @ 822842C +EverGrandeCity_GlaciasRoom_EventScript_PlayerTurnNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_GlaciasRoom_OnFrame: @ 8228431 +EverGrandeCity_GlaciasRoom_OnFrame: map_script_2 VAR_ELITE_4_STATE, 2, EverGrandeCity_GlaciasRoom_EventScript_WalkInCloseDoor .2byte 0 -EverGrandeCity_GlaciasRoom_EventScript_WalkInCloseDoor:: @ 822843B +EverGrandeCity_GlaciasRoom_EventScript_WalkInCloseDoor:: lockall call PokemonLeague_EliteFour_EventScript_WalkInCloseDoor setvar VAR_ELITE_4_STATE, 3 releaseall end -EverGrandeCity_GlaciasRoom_OnLoad: @ 8228448 +EverGrandeCity_GlaciasRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_ResetAdvanceToNextRoom compare VAR_ELITE_4_STATE, 3 call_if_eq EverGrandeCity_GlaciasRoom_EventScript_CloseDoor end -EverGrandeCity_GlaciasRoom_EventScript_ResetAdvanceToNextRoom:: @ 822845D +EverGrandeCity_GlaciasRoom_EventScript_ResetAdvanceToNextRoom:: call PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom return -EverGrandeCity_GlaciasRoom_EventScript_CloseDoor:: @ 8228463 +EverGrandeCity_GlaciasRoom_EventScript_CloseDoor:: call PokemonLeague_EliteFour_EventScript_CloseDoor return -EverGrandeCity_GlaciasRoom_EventScript_Glacia:: @ 8228469 +EverGrandeCity_GlaciasRoom_EventScript_Glacia:: lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_PostBattleSpeech @@ -47,19 +47,19 @@ EverGrandeCity_GlaciasRoom_EventScript_Glacia:: @ 8228469 goto EverGrandeCity_GlaciasRoom_EventScript_Defeated end -EverGrandeCity_GlaciasRoom_EventScript_PostBattleSpeech:: @ 8228490 +EverGrandeCity_GlaciasRoom_EventScript_PostBattleSpeech:: msgbox EverGrandeCity_GlaciasRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_GlaciasRoom_EventScript_Defeated:: @ 822849A +EverGrandeCity_GlaciasRoom_EventScript_Defeated:: setflag FLAG_DEFEATED_ELITE_4_GLACIA call PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles msgbox EverGrandeCity_GlaciasRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_GlaciasRoom_Text_IntroSpeech: @ 82284AC +EverGrandeCity_GlaciasRoom_Text_IntroSpeech: .string "Welcome, my name is GLACIA\n" .string "of the ELITE FOUR.\p" .string "I've traveled from afar to HOENN\n" @@ -70,14 +70,14 @@ EverGrandeCity_GlaciasRoom_Text_IntroSpeech: @ 82284AC .string "It would please me to no end if I could\n" .string "go all out against you!$" -EverGrandeCity_GlaciasRoom_Text_Defeat: @ 82285B4 +EverGrandeCity_GlaciasRoom_Text_Defeat: .string "You and your POKéMON…\n" .string "How hot your spirits burn!\p" .string "The all-consuming heat overwhelms.\p" .string "It's no surprise that my icy skills\n" .string "failed to harm you.$" -EverGrandeCity_GlaciasRoom_Text_PostBattleSpeech: @ 8228640 +EverGrandeCity_GlaciasRoom_Text_PostBattleSpeech: .string "Advance to the next room.\p" .string "And there, confirm the truly fearsome\n" .string "side of the POKéMON LEAGUE.$" diff --git a/data/maps/EverGrandeCity_Hall1/scripts.inc b/data/maps/EverGrandeCity_Hall1/scripts.inc index cf68eb8c7711..0d4b524c8379 100644 --- a/data/maps/EverGrandeCity_Hall1/scripts.inc +++ b/data/maps/EverGrandeCity_Hall1/scripts.inc @@ -1,12 +1,12 @@ -EverGrandeCity_Hall1_MapScripts:: @ 8229569 +EverGrandeCity_Hall1_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_Hall1_OnWarp .byte 0 -EverGrandeCity_Hall1_OnWarp: @ 822956F +EverGrandeCity_Hall1_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_Hall1_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_Hall1_EventScript_TurnPlayerNorth:: @ 8229579 +EverGrandeCity_Hall1_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/EverGrandeCity_Hall2/scripts.inc b/data/maps/EverGrandeCity_Hall2/scripts.inc index d8702657fa4d..b81df8b405ca 100644 --- a/data/maps/EverGrandeCity_Hall2/scripts.inc +++ b/data/maps/EverGrandeCity_Hall2/scripts.inc @@ -1,12 +1,12 @@ -EverGrandeCity_Hall2_MapScripts:: @ 822957E +EverGrandeCity_Hall2_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_Hall2_OnWarp .byte 0 -EverGrandeCity_Hall2_OnWarp: @ 8229584 +EverGrandeCity_Hall2_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_Hall2_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_Hall2_EventScript_TurnPlayerNorth:: @ 822958E +EverGrandeCity_Hall2_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/EverGrandeCity_Hall3/scripts.inc b/data/maps/EverGrandeCity_Hall3/scripts.inc index 65dc3c44c8b7..4f9245f64678 100644 --- a/data/maps/EverGrandeCity_Hall3/scripts.inc +++ b/data/maps/EverGrandeCity_Hall3/scripts.inc @@ -1,12 +1,12 @@ -EverGrandeCity_Hall3_MapScripts:: @ 8229593 +EverGrandeCity_Hall3_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_Hall3_OnWarp .byte 0 -EverGrandeCity_Hall3_OnWarp: @ 8229599 +EverGrandeCity_Hall3_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_Hall3_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_Hall3_EventScript_TurnPlayerNorth:: @ 82295A3 +EverGrandeCity_Hall3_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/EverGrandeCity_Hall4/scripts.inc b/data/maps/EverGrandeCity_Hall4/scripts.inc index e75d12483baa..3d9ab4603bdd 100644 --- a/data/maps/EverGrandeCity_Hall4/scripts.inc +++ b/data/maps/EverGrandeCity_Hall4/scripts.inc @@ -1,12 +1,12 @@ -EverGrandeCity_Hall4_MapScripts:: @ 82295A8 +EverGrandeCity_Hall4_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_Hall4_OnWarp .byte 0 -EverGrandeCity_Hall4_OnWarp: @ 82295AE +EverGrandeCity_Hall4_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_Hall4_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_Hall4_EventScript_TurnPlayerNorth:: @ 82295B8 +EverGrandeCity_Hall4_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/EverGrandeCity_Hall5/scripts.inc b/data/maps/EverGrandeCity_Hall5/scripts.inc index b8eaed7b9698..9781d114f429 100644 --- a/data/maps/EverGrandeCity_Hall5/scripts.inc +++ b/data/maps/EverGrandeCity_Hall5/scripts.inc @@ -1,12 +1,12 @@ -EverGrandeCity_Hall5_MapScripts:: @ 82295BD +EverGrandeCity_Hall5_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_Hall5_OnWarp .byte 0 -EverGrandeCity_Hall5_OnWarp: @ 82295C3 +EverGrandeCity_Hall5_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_Hall5_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_Hall5_EventScript_TurnPlayerNorth:: @ 82295CD +EverGrandeCity_Hall5_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc index c6281a684f73..f5e4155652ba 100644 --- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc +++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc @@ -1,23 +1,23 @@ .set LOCALID_WALLACE, 1 -EverGrandeCity_HallOfFame_MapScripts:: @ 822982C +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 .byte 0 -EverGrandeCity_HallOfFame_OnWarp: @ 8229837 +EverGrandeCity_HallOfFame_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_HallOfFame_EventScript_TurnPlayerNorth .2byte 0 -EverGrandeCity_HallOfFame_EventScript_TurnPlayerNorth:: @ 8229841 +EverGrandeCity_HallOfFame_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_HallOfFame_OnFrame: @ 8229846 +EverGrandeCity_HallOfFame_OnFrame: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame .2byte 0 -EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: @ 8229850 +EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: lockall applymovement LOCALID_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1 applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1 @@ -52,7 +52,7 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: @ 8229850 goto_if_eq EverGrandeCity_HallOfFame_EventScript_GameClearFemale end -EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9 +EverGrandeCity_HallOfFame_EventScript_GameClearMale:: setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F fadescreenspeed FADE_TO_BLACK, 24 special GameClear @@ -60,7 +60,7 @@ EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9 releaseall end -EverGrandeCity_HallOfFame_EventScript_GameClearFemale:: @ 82298F5 +EverGrandeCity_HallOfFame_EventScript_GameClearFemale:: setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F fadescreenspeed FADE_TO_BLACK, 24 special GameClear @@ -68,7 +68,7 @@ EverGrandeCity_HallOfFame_EventScript_GameClearFemale:: @ 82298F5 releaseall end -EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1: @ 8229901 +EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1: walk_up walk_up walk_up @@ -77,7 +77,7 @@ EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1: @ 8229901 walk_up step_end -EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2: @ 8229908 +EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2: walk_up walk_up walk_up @@ -85,7 +85,7 @@ EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2: @ 8229908 walk_up step_end -EverGrandeCity_HallOfFame_Text_HereWeHonorLeagueChampions: @ 822990E +EverGrandeCity_HallOfFame_Text_HereWeHonorLeagueChampions: .string "WALLACE: This room…\p" .string "This is where we keep records of\n" .string "POKéMON that prevailed through\l" @@ -93,7 +93,7 @@ EverGrandeCity_HallOfFame_Text_HereWeHonorLeagueChampions: @ 822990E .string "It is here that the LEAGUE CHAMPIONS\n" .string "are honored.$" -EverGrandeCity_HallOfFame_Text_LetsRecordYouAndYourPartnersNames: @ 82299A3 +EverGrandeCity_HallOfFame_Text_LetsRecordYouAndYourPartnersNames: .string "WALLACE: Come on, let's record your\n" .string "name as a TRAINER who triumphed over\l" .string "the POKéMON LEAGUE, and the names of\l" diff --git a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc index c922ffe7a574..b64f5145a008 100644 --- a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc @@ -1,43 +1,43 @@ -EverGrandeCity_PhoebesRoom_MapScripts:: @ 8228174 +EverGrandeCity_PhoebesRoom_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, EverGrandeCity_PhoebesRoom_OnLoad map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_PhoebesRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_PhoebesRoom_OnFrame .byte 0 -EverGrandeCity_PhoebesRoom_OnWarp: @ 8228184 +EverGrandeCity_PhoebesRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_PhoebesRoom_EventScript_PlayerTurnNorth .2byte 0 -EverGrandeCity_PhoebesRoom_EventScript_PlayerTurnNorth:: @ 822818E +EverGrandeCity_PhoebesRoom_EventScript_PlayerTurnNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_PhoebesRoom_OnFrame: @ 8228193 +EverGrandeCity_PhoebesRoom_OnFrame: map_script_2 VAR_ELITE_4_STATE, 1, EverGrandeCity_PhoebesRoom_EventScript_WalkInCloseDoor .2byte 0 -EverGrandeCity_PhoebesRoom_EventScript_WalkInCloseDoor:: @ 822819D +EverGrandeCity_PhoebesRoom_EventScript_WalkInCloseDoor:: lockall call PokemonLeague_EliteFour_EventScript_WalkInCloseDoor setvar VAR_ELITE_4_STATE, 2 releaseall end -EverGrandeCity_PhoebesRoom_OnLoad: @ 82281AA +EverGrandeCity_PhoebesRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_ResetAdvanceToNextRoom compare VAR_ELITE_4_STATE, 2 call_if_eq EverGrandeCity_PhoebesRoom_EventScript_CloseDoor end -EverGrandeCity_PhoebesRoom_EventScript_ResetAdvanceToNextRoom:: @ 82281BF +EverGrandeCity_PhoebesRoom_EventScript_ResetAdvanceToNextRoom:: call PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom return -EverGrandeCity_PhoebesRoom_EventScript_CloseDoor:: @ 82281C5 +EverGrandeCity_PhoebesRoom_EventScript_CloseDoor:: call PokemonLeague_EliteFour_EventScript_CloseDoor return -EverGrandeCity_PhoebesRoom_EventScript_Phoebe:: @ 82281CB +EverGrandeCity_PhoebesRoom_EventScript_Phoebe:: lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_PostBattleSpeech @@ -47,19 +47,19 @@ EverGrandeCity_PhoebesRoom_EventScript_Phoebe:: @ 82281CB goto EverGrandeCity_PhoebesRoom_EventScript_Defeated end -EverGrandeCity_PhoebesRoom_EventScript_PostBattleSpeech:: @ 82281F2 +EverGrandeCity_PhoebesRoom_EventScript_PostBattleSpeech:: msgbox EverGrandeCity_PhoebesRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_PhoebesRoom_EventScript_Defeated:: @ 82281FC +EverGrandeCity_PhoebesRoom_EventScript_Defeated:: setflag FLAG_DEFEATED_ELITE_4_PHOEBE call PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles msgbox EverGrandeCity_PhoebesRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_PhoebesRoom_Text_IntroSpeech: @ 822820E +EverGrandeCity_PhoebesRoom_Text_IntroSpeech: .string "Ahahaha!\p" .string "I'm PHOEBE of the ELITE FOUR.\n" .string "I did my training on MT. PYRE.\p" @@ -70,11 +70,11 @@ EverGrandeCity_PhoebesRoom_Text_IntroSpeech: @ 822820E .string "So, come on, just try and see if you can\n" .string "even inflict damage on my POKéMON!$" -EverGrandeCity_PhoebesRoom_Text_Defeat: @ 8228325 +EverGrandeCity_PhoebesRoom_Text_Defeat: .string "Oh, darn.\n" .string "I've gone and lost.$" -EverGrandeCity_PhoebesRoom_Text_PostBattleSpeech: @ 8228343 +EverGrandeCity_PhoebesRoom_Text_PostBattleSpeech: .string "There's a definite bond between you\n" .string "and your POKéMON, too.\p" .string "I didn't recognize it, so it's only\n" diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc index a6cf1b74e525..1244b82fd258 100644 --- a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc @@ -1,22 +1,22 @@ .set LOCALID_NURSE, 1 .set LOCALID_SCOTT, 4 -EverGrandeCity_PokemonCenter_1F_MapScripts:: @ 8229A34 +EverGrandeCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -EverGrandeCity_PokemonCenter_1F_OnTransition: @ 8229A3F +EverGrandeCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_EVER_GRANDE_CITY call_if_unset FLAG_MET_SCOTT_IN_EVERGRANDE, EverGrandeCity_PokemonCenter_1F_EventScript_TryShowScott end -EverGrandeCity_PokemonCenter_1F_EventScript_TryShowScott:: @ 8229A4C +EverGrandeCity_PokemonCenter_1F_EventScript_TryShowScott:: goto_if_unset FLAG_BADGE06_GET, Common_EventScript_NopReturn clearflag FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT return -EverGrandeCity_PokemonCenter_1F_EventScript_Nurse:: @ 8229A59 +EverGrandeCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -24,15 +24,15 @@ EverGrandeCity_PokemonCenter_1F_EventScript_Nurse:: @ 8229A59 release end -EverGrandeCity_PokemonCenter_1F_EventScript_Woman:: @ 8229A67 +EverGrandeCity_PokemonCenter_1F_EventScript_Woman:: msgbox EverGrandeCity_PokemonCenter_1F_Text_LeagueAfterVictoryRoad, MSGBOX_NPC end -EverGrandeCity_PokemonCenter_1F_EventScript_ExpertM:: @ 8229A70 +EverGrandeCity_PokemonCenter_1F_EventScript_ExpertM:: msgbox EverGrandeCity_PokemonCenter_1F_Text_BelieveInYourPokemon, MSGBOX_NPC end -EverGrandeCity_PokemonCenter_1F_EventScript_Scott:: @ 8229A79 +EverGrandeCity_PokemonCenter_1F_EventScript_Scott:: lock faceplayer msgbox EverGrandeCity_PokemonCenter_1F_Text_ScottHappyForYou, MSGBOX_DEFAULT @@ -51,17 +51,17 @@ EverGrandeCity_PokemonCenter_1F_EventScript_Scott:: @ 8229A79 release end -EverGrandeCity_PokemonCenter_1F_EventScript_ScottExitNorth:: @ 8229AB6 +EverGrandeCity_PokemonCenter_1F_EventScript_ScottExitNorth:: applymovement LOCALID_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth waitmovement 0 return -EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit:: @ 8229AC1 +EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit:: applymovement LOCALID_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExit waitmovement 0 return -EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth: @ 8229ACC +EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth: walk_left walk_down walk_down @@ -70,7 +70,7 @@ EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth: @ 8229ACC walk_down step_end -EverGrandeCity_PokemonCenter_1F_Movement_ScottExit: @ 8229AD3 +EverGrandeCity_PokemonCenter_1F_Movement_ScottExit: walk_down walk_down walk_left @@ -79,20 +79,20 @@ EverGrandeCity_PokemonCenter_1F_Movement_ScottExit: @ 8229AD3 walk_down step_end -EverGrandeCity_PokemonCenter_1F_Text_LeagueAfterVictoryRoad: @ 8229ADA +EverGrandeCity_PokemonCenter_1F_Text_LeagueAfterVictoryRoad: .string "The POKéMON LEAGUE is only a short\n" .string "distance after the VICTORY ROAD.\p" .string "If you've come this far, what choice\n" .string "do you have but to keep going?$" -EverGrandeCity_PokemonCenter_1F_Text_BelieveInYourPokemon: @ 8229B62 +EverGrandeCity_PokemonCenter_1F_Text_BelieveInYourPokemon: .string "The long and harrowing VICTORY ROAD…\p" .string "It's like reliving the path one has\n" .string "traveled in life…\p" .string "Believe in your POKéMON and give it\n" .string "your very best!$" -EverGrandeCity_PokemonCenter_1F_Text_ScottHappyForYou: @ 8229BF1 +EverGrandeCity_PokemonCenter_1F_Text_ScottHappyForYou: .string "SCOTT: {PLAYER}{KUN}, you've clawed your\n" .string "way up to face the POKéMON LEAGUE!\p" .string "I'm happy for you!\n" diff --git a/data/maps/EverGrandeCity_PokemonCenter_2F/scripts.inc b/data/maps/EverGrandeCity_PokemonCenter_2F/scripts.inc index f52419d60552..0c8c93d73ba4 100644 --- a/data/maps/EverGrandeCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -EverGrandeCity_PokemonCenter_2F_MapScripts:: @ 8229CE0 +EverGrandeCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ EverGrandeCity_PokemonCenter_2F_MapScripts:: @ 8229CE0 .byte 0 @ The below 3 are unused and leftover from RS -EverGrandeCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8229CF5 +EverGrandeCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -EverGrandeCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8229CFB +EverGrandeCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -EverGrandeCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 8229D01 +EverGrandeCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc index 5eed4faa6915..1be2e7c1f345 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc @@ -2,23 +2,23 @@ .set LOCALID_GUARD_1, 3 .set LOCALID_GUARD_2, 4 -EverGrandeCity_PokemonLeague_1F_MapScripts:: @ 82295D2 +EverGrandeCity_PokemonLeague_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_PokemonLeague_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -EverGrandeCity_PokemonLeague_1F_OnTransition: @ 82295DD +EverGrandeCity_PokemonLeague_1F_OnTransition: setrespawn HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE setflag FLAG_LANDMARK_POKEMON_LEAGUE call_if_unset FLAG_ENTERED_ELITE_FOUR, EverGrandeCity_PokemonLeague_1F_EventScript_GuardsBlockDoor end -EverGrandeCity_PokemonLeague_1F_EventScript_GuardsBlockDoor:: @ 82295ED +EverGrandeCity_PokemonLeague_1F_EventScript_GuardsBlockDoor:: setobjectxyperm LOCALID_GUARD_1, 9, 2 setobjectxyperm LOCALID_GUARD_2, 10, 2 return -EverGrandeCity_PokemonLeague_1F_EventScript_Nurse:: @ 82295FC +EverGrandeCity_PokemonLeague_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -26,7 +26,7 @@ EverGrandeCity_PokemonLeague_1F_EventScript_Nurse:: @ 82295FC release end -EverGrandeCity_PokemonLeague_1F_EventScript_Clerk:: @ 822960A +EverGrandeCity_PokemonLeague_1F_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -37,7 +37,7 @@ EverGrandeCity_PokemonLeague_1F_EventScript_Clerk:: @ 822960A end .align 2 -EverGrandeCity_PokemonLeague_1F_Pokemart: @ 8229624 +EverGrandeCity_PokemonLeague_1F_Pokemart: .2byte ITEM_ULTRA_BALL .2byte ITEM_HYPER_POTION .2byte ITEM_MAX_POTION @@ -51,7 +51,7 @@ EverGrandeCity_PokemonLeague_1F_Pokemart: @ 8229624 @ 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 -EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard:: @ 8229636 +EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard:: lockall goto_if_set FLAG_ENTERED_ELITE_FOUR, EverGrandeCity_PokemonLeague_1F_EventScript_GoForth getplayerxy VAR_TEMP_0, VAR_TEMP_1 @@ -79,23 +79,23 @@ EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard:: @ 8229636 releaseall end -EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromRight:: @ 8229698 +EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromRight:: applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight waitmovement 0 return -EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromLeft:: @ 82296A3 +EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromLeft:: applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft waitmovement 0 return -EverGrandeCity_PokemonLeague_1F_EventScript_NotAllBadges:: @ 82296AE +EverGrandeCity_PokemonLeague_1F_EventScript_NotAllBadges:: playse SE_FAILURE msgbox EverGrandeCity_PokemonLeague_1F_Text_HaventObtainedAllBadges, MSGBOX_DEFAULT releaseall end -EverGrandeCity_PokemonLeague_1F_EventScript_GoForth:: @ 82296BB +EverGrandeCity_PokemonLeague_1F_EventScript_GoForth:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox EverGrandeCity_PokemonLeague_1F_Text_GoForth, MSGBOX_DEFAULT @@ -105,41 +105,41 @@ EverGrandeCity_PokemonLeague_1F_EventScript_GoForth:: @ 82296BB releaseall end -EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight: @ 82296DA +EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight: walk_down walk_left walk_in_place_fastest_up step_end -EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft: @ 82296DE +EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft: walk_down walk_right walk_in_place_fastest_up step_end -EverGrandeCity_PokemonLeague_1F_Movement_LeftGuardOutOfWay: @ 82296E2 +EverGrandeCity_PokemonLeague_1F_Movement_LeftGuardOutOfWay: walk_left walk_in_place_fastest_down step_end -EverGrandeCity_PokemonLeague_1F_Movement_RightGuardOutOfWay: @ 82296E5 +EverGrandeCity_PokemonLeague_1F_Movement_RightGuardOutOfWay: walk_right walk_in_place_fastest_down step_end -EverGrandeCity_PokemonLeague_1F_Text_MustHaveAllGymBadges: @ 82296E8 +EverGrandeCity_PokemonLeague_1F_Text_MustHaveAllGymBadges: .string "Beyond this point, only those TRAINERS\n" .string "who have collected all the GYM BADGES\l" .string "are permitted to enter.\p" .string "TRAINER, let us confirm that you have\n" .string "all the GYM BADGES.$" -EverGrandeCity_PokemonLeague_1F_Text_HaventObtainedAllBadges: @ 8229787 +EverGrandeCity_PokemonLeague_1F_Text_HaventObtainedAllBadges: .string "You haven't obtained all the BADGES.\p" .string "If you're bound for the POKéMON\n" .string "LEAGUE, you must return with them.$" -EverGrandeCity_PokemonLeague_1F_Text_GoForth: @ 82297EF +EverGrandeCity_PokemonLeague_1F_Text_GoForth: .string "TRAINER! Believe in yourself and your\n" .string "POKéMON, and go forth!$" diff --git a/data/maps/EverGrandeCity_PokemonLeague_2F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_2F/scripts.inc index b860f95b8767..0ba84df349c5 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_2F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonLeague_2F/scripts.inc @@ -1,4 +1,4 @@ -EverGrandeCity_PokemonLeague_2F_MapScripts:: @ 8229D07 +EverGrandeCity_PokemonLeague_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ EverGrandeCity_PokemonLeague_2F_MapScripts:: @ 8229D07 .byte 0 @ The below 3 are unused and leftover from RS -EverGrandeCity_PokemonLeague_2F_EventScript_Colosseum:: @ 8229D1C +EverGrandeCity_PokemonLeague_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -EverGrandeCity_PokemonLeague_2F_EventScript_TradeCenter:: @ 8229D22 +EverGrandeCity_PokemonLeague_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -EverGrandeCity_PokemonLeague_2F_EventScript_RecordCorner:: @ 8229D28 +EverGrandeCity_PokemonLeague_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc index 4cd8f262e77f..3444d078b166 100644 --- a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc +++ b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc @@ -1,49 +1,49 @@ -EverGrandeCity_SidneysRoom_MapScripts:: @ 8227F01 +EverGrandeCity_SidneysRoom_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, EverGrandeCity_SidneysRoom_OnLoad map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_SidneysRoom_OnWarp map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_SidneysRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_SidneysRoom_OnFrame .byte 0 -EverGrandeCity_SidneysRoom_OnTransition: @ 8227F16 +EverGrandeCity_SidneysRoom_OnTransition: setflag FLAG_MET_SCOTT_IN_EVERGRANDE setflag FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT end -EverGrandeCity_SidneysRoom_OnLoad: @ 8227F1D +EverGrandeCity_SidneysRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_SIDNEY, EverGrandeCity_SidneysRoom_EventScript_ResetAdvanceToNextRoom compare VAR_ELITE_4_STATE, 1 call_if_eq EverGrandeCity_SidneysRoom_EventScript_CloseDoor end -EverGrandeCity_SidneysRoom_EventScript_ResetAdvanceToNextRoom:: @ 8227F32 +EverGrandeCity_SidneysRoom_EventScript_ResetAdvanceToNextRoom:: call PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom return -EverGrandeCity_SidneysRoom_EventScript_CloseDoor:: @ 8227F38 +EverGrandeCity_SidneysRoom_EventScript_CloseDoor:: call PokemonLeague_EliteFour_EventScript_CloseDoor return -EverGrandeCity_SidneysRoom_OnWarp: @ 8227F3E +EverGrandeCity_SidneysRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, EverGrandeCity_SidneysRoom_EventScript_PlayerTurnNorth .2byte 0 -EverGrandeCity_SidneysRoom_EventScript_PlayerTurnNorth:: @ 8227F48 +EverGrandeCity_SidneysRoom_EventScript_PlayerTurnNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -EverGrandeCity_SidneysRoom_OnFrame: @ 8227F4D +EverGrandeCity_SidneysRoom_OnFrame: map_script_2 VAR_ELITE_4_STATE, 0, EverGrandeCity_SidneysRoom_EventScript_WalkInCloseDoor .2byte 0 -EverGrandeCity_SidneysRoom_EventScript_WalkInCloseDoor:: @ 8227F57 +EverGrandeCity_SidneysRoom_EventScript_WalkInCloseDoor:: lockall call PokemonLeague_EliteFour_EventScript_WalkInCloseDoor setvar VAR_ELITE_4_STATE, 1 releaseall end -EverGrandeCity_SidneysRoom_EventScript_Sidney:: @ 8227F64 +EverGrandeCity_SidneysRoom_EventScript_Sidney:: lock faceplayer goto_if_set FLAG_DEFEATED_ELITE_4_SIDNEY, EverGrandeCity_SidneysRoom_EventScript_PostBattleSpeech @@ -53,19 +53,19 @@ EverGrandeCity_SidneysRoom_EventScript_Sidney:: @ 8227F64 goto EverGrandeCity_SidneysRoom_EventScript_Defeated end -EverGrandeCity_SidneysRoom_EventScript_PostBattleSpeech:: @ 8227F8B +EverGrandeCity_SidneysRoom_EventScript_PostBattleSpeech:: msgbox EverGrandeCity_SidneysRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_SidneysRoom_EventScript_Defeated:: @ 8227F95 +EverGrandeCity_SidneysRoom_EventScript_Defeated:: setflag FLAG_DEFEATED_ELITE_4_SIDNEY call PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles msgbox EverGrandeCity_SidneysRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT release end -EverGrandeCity_SidneysRoom_Text_IntroSpeech: @ 8227FA7 +EverGrandeCity_SidneysRoom_Text_IntroSpeech: .string "Welcome, challenger!\n" .string "I'm SIDNEY of the ELITE FOUR.\p" .string "I like that look you're giving me.\n" @@ -75,11 +75,11 @@ EverGrandeCity_SidneysRoom_Text_IntroSpeech: @ 8227FA7 .string "a battle that can only be staged\l" .string "here in the POKéMON LEAGUE!$" -EverGrandeCity_SidneysRoom_Text_Defeat: @ 82280A2 +EverGrandeCity_SidneysRoom_Text_Defeat: .string "Well, how do you like that? I lost!\n" .string "Eh, it was fun, so it doesn't matter.$" -EverGrandeCity_SidneysRoom_Text_PostBattleSpeech: @ 82280EC +EverGrandeCity_SidneysRoom_Text_PostBattleSpeech: .string "Well, listen to what this loser has\n" .string "to say.\p" .string "You've got what it takes to go far.\n" diff --git a/data/maps/FallarborTown/scripts.inc b/data/maps/FallarborTown/scripts.inc index a94c81ae9c32..809909a5ca36 100644 --- a/data/maps/FallarborTown/scripts.inc +++ b/data/maps/FallarborTown/scripts.inc @@ -1,14 +1,14 @@ -FallarborTown_MapScripts:: @ 81EB1FA +FallarborTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_OnTransition .byte 0 -FallarborTown_OnTransition: @ 81EB200 +FallarborTown_OnTransition: setflag FLAG_VISITED_FALLARBOR_TOWN setvar VAR_CONTEST_HALL_STATE, 0 clearflag FLAG_CONTEST_SKETCH_CREATED end -FallarborTown_EventScript_ExpertM:: @ 81EB20C +FallarborTown_EventScript_ExpertM:: lock faceplayer goto_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, FallarborTown_EventScript_ExpertMNormal @@ -16,20 +16,20 @@ FallarborTown_EventScript_ExpertM:: @ 81EB20C release end -FallarborTown_EventScript_ExpertMNormal:: @ 81EB221 +FallarborTown_EventScript_ExpertMNormal:: msgbox FallarborTown_Text_RegionKnownForMeteors, MSGBOX_DEFAULT release end -FallarborTown_EventScript_Girl:: @ 81EB22B +FallarborTown_EventScript_Girl:: msgbox FallarborTown_Text_MyPreciousAzurill, MSGBOX_NPC end -FallarborTown_EventScript_Gentleman:: @ 81EB234 +FallarborTown_EventScript_Gentleman:: msgbox FallarborTown_Text_HaveYouChallengedFlannery, MSGBOX_NPC end -FallarborTown_EventScript_Azurill:: @ 81EB23D +FallarborTown_EventScript_Azurill:: lock faceplayer waitse @@ -39,39 +39,39 @@ FallarborTown_EventScript_Azurill:: @ 81EB23D release end -FallarborTown_EventScript_BattleTentSign:: @ 81EB250 +FallarborTown_EventScript_BattleTentSign:: msgbox FallarborTown_Text_BattleTentSign, MSGBOX_SIGN end -FallarborTown_EventScript_TownSign:: @ 81EB259 +FallarborTown_EventScript_TownSign:: msgbox FallarborTown_Text_TownSign, MSGBOX_SIGN end -FallarborTown_EventScript_MoveTutorSign:: @ 81EB262 +FallarborTown_EventScript_MoveTutorSign:: msgbox FallarborTown_Text_MoveTutorSign, MSGBOX_SIGN end -FallarborTown_Text_ShadyCharactersCozmosHome: @ 81EB26B +FallarborTown_Text_ShadyCharactersCozmosHome: .string "Something's happening,\n" .string "and I don't like it!\p" .string "I've seen shady characters wandering\n" .string "in and out of PROF. COZMO's home…$" -FallarborTown_Text_RegionKnownForMeteors: @ 81EB2DE +FallarborTown_Text_RegionKnownForMeteors: .string "This region's been known for meteors\n" .string "since the olden days.\p" .string "They say METEOR FALLS was gouged out\n" .string "by a falling meteorite long ago.$" -FallarborTown_Text_MyPreciousAzurill: @ 81EB35F +FallarborTown_Text_MyPreciousAzurill: .string "See! Take a look!\n" .string "This is my precious AZURILL!\p" .string "It's slick and smooth and plushy, too!$" -FallarborTown_Text_Azurill: @ 81EB3B5 +FallarborTown_Text_Azurill: .string "AZURILL: Rooreelooo.$" -FallarborTown_Text_HaveYouChallengedFlannery: @ 81EB3CA +FallarborTown_Text_HaveYouChallengedFlannery: .string "Have you already challenged FLANNERY,\n" .string "the LEADER of LAVARIDGE GYM?\p" .string "The girl's grandfather was famous.\n" @@ -81,15 +81,15 @@ FallarborTown_Text_HaveYouChallengedFlannery: @ 81EB3CA .string "become a great TRAINER in her own\l" .string "right.$" -FallarborTown_Text_BattleTentSign: @ 81EB4C2 +FallarborTown_Text_BattleTentSign: .string "BATTLE TENT FALLARBOR SITE\n" .string "“May the Greatest Teams Gather!”$" -FallarborTown_Text_TownSign: @ 81EB4FE +FallarborTown_Text_TownSign: .string "FALLARBOR TOWN\n" .string "“A farm community with small gardens.”$" -FallarborTown_Text_MoveTutorSign: @ 81EB534 +FallarborTown_Text_MoveTutorSign: .string "MOVE TUTOR'S HOUSE\n" .string "“New moves taught to POKéMON.”$" diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index 83b91ab482c5..947bbb8bba16 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -2,7 +2,7 @@ .set LOCALID_ATTENDANT, 2 .set LOCALID_OPPONENT, 3 -FallarborTown_BattleTentBattleRoom_MapScripts:: @ 8200899 +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 @@ -12,11 +12,11 @@ FallarborTown_BattleTentBattleRoom_MapScripts:: @ 8200899 @ 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: @ 82008A9 +FallarborTown_BattleTentBattleRoom_OnTransition: call FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx end -FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 82008AF +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale @@ -24,21 +24,21 @@ FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 82008AF goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 82008C7 +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 82008D2 +FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -FallarborTown_BattleTentBattleRoom_OnFrame: @ 82008DD +FallarborTown_BattleTentBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82008E7 +FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: lockall showobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter @@ -46,7 +46,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82008E7 frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 0 goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge -FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820090F +FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter @@ -68,20 +68,20 @@ FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820090F waitmovement 0 fallarbortent_getopponentname msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT -FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 820097E +FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 820099C +FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump playse SE_BANG waitse waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer, MSGBOX_DEFAULT closemessage -FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: @ 82009B3 +FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT @@ -101,7 +101,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: @ 82009B3 playfanfare MUS_HEAL waitfanfare special HealPlayerParty -FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A +FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent @@ -113,14 +113,14 @@ FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge case 2, FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge -FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 8200A78 +FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown, MSGBOX_YESNO switch VAR_RESULT case NO, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge case YES, FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6 +FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -129,7 +129,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6 case 0, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 8200AD8 +FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: closemessage applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos waitmovement 0 @@ -138,7 +138,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 8200AD8 goto FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter waitstate -FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8200AF3 +FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: delay 60 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty @@ -153,17 +153,17 @@ FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8200AF3 arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT @ See above -FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8200B43 +FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8200B4A +FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 8200B51 +FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait waitmessage fallarbortent_save CHALLENGE_STATUS_PAUSED @@ -173,7 +173,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 8200B51 frontier_reset end -FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: @ 8200B73 +FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer waitmovement 0 applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant @@ -181,22 +181,22 @@ FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: @ 8200B73 goto FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge end -FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8200B8D +FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: @ 8200B92 +FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: @ 8200B94 +FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: walk_in_place_fastest_left step_end -FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 8200B96 +FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down @@ -205,41 +205,41 @@ FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 8200B96 step_end @ Unused -FallarborTown_BattleTentBattleRoom_Movement_OpponentStepForward: @ 8200B9C +FallarborTown_BattleTentBattleRoom_Movement_OpponentStepForward: walk_left step_end -FallarborTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8200B9E +FallarborTown_BattleTentBattleRoom_Movement_OpponentExit: walk_up walk_up walk_up walk_up step_end -FallarborTown_BattleTentBattleRoom_Movement_AttendantJump: @ 8200BA3 +FallarborTown_BattleTentBattleRoom_Movement_AttendantJump: disable_jump_landing_ground_effect jump_in_place_down step_end -FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: @ 8200BA6 +FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: walk_down walk_down walk_down walk_in_place_fastest_right step_end -FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: @ 8200BAB +FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: walk_up walk_up walk_up walk_in_place_fastest_down step_end -FallarborTown_BattleTentBattleRoom_OnWarp: @ 8200BB0 +FallarborTown_BattleTentBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 8200BBA +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 diff --git a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc index 89daef9b9c4e..077cdfe7986c 100644 --- a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc +++ b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_ATTENDANT, 1 -FallarborTown_BattleTentCorridor_MapScripts:: @ 82006A7 +FallarborTown_BattleTentCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_OnFrame .byte 0 -FallarborTown_BattleTentCorridor_OnFrame: @ 82006AD +FallarborTown_BattleTentCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 82006B7 +FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: lockall setvar VAR_TEMP_0, 1 applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentCorridor_Movement_WalkToDoor @@ -27,44 +27,44 @@ FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 82006B7 releaseall end -FallarborTown_BattleTentCorridor_Movement_WalkToDoor: @ 82006FB +FallarborTown_BattleTentCorridor_Movement_WalkToDoor: walk_up walk_up walk_up walk_up step_end -FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 8200700 +FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor: walk_up -FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 8200701 +FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor: walk_up set_invisible step_end @ Leftover text from when this was a Contest Hall in R/S @ Unused -FallarborTown_ContestHall_Text_DoAllRightInPreliminary: @ 8200704 +FallarborTown_ContestHall_Text_DoAllRightInPreliminary: .string "We do all right in the preliminary round,\n" .string "but we can never win the appeals…\p" .string "Maybe it means I have to watch what\n" .string "other contestants are doing…$" @ Unused -FallarborTown_ContestHall_Text_MonAllTheseRibbons: @ 8200791 +FallarborTown_ContestHall_Text_MonAllTheseRibbons: .string "See!\n" .string "My POKéMON won all these RIBBONS!\p" .string "Have your POKéMON earned any RIBBONS?\n" .string "You can check them on your POKéNAV.$" @ Unused -FallarborTown_ContestHall_Text_CantWinEverywhere: @ 8200802 +FallarborTown_ContestHall_Text_CantWinEverywhere: .string "I can't beat GYM LEADERS…\p" .string "I can't win any CONTESTS…\p" .string "I've been here, there, and everywhere,\n" .string "and it's all for naught…$" @ Unused -FallarborTown_ContestHall_Text_SuperRankStage: @ 8200876 +FallarborTown_ContestHall_Text_SuperRankStage: .string "POKéMON CONTESTS\n" .string "SUPER RANK STAGE!$" diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc index 29fcb43a5e4b..6a2c8713fadd 100644 --- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc +++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc @@ -1,20 +1,20 @@ .set LOCALID_ATTENDANT, 1 -FallarborTown_BattleTentLobby_MapScripts:: @ 81FFE66 +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 .byte 0 -FallarborTown_BattleTentLobby_OnWarp: @ 81FFE71 +FallarborTown_BattleTentLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 81FFE7B +FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -FallarborTown_BattleTentLobby_OnFrame: @ 81FFE85 +FallarborTown_BattleTentLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_ResumeChallenge @@ -22,11 +22,11 @@ FallarborTown_BattleTentLobby_OnFrame: @ 81FFE85 map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_LostChallenge .2byte 0 -FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 81FFEAF +FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 81FFEB8 +FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving:: lockall msgbox FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage @@ -36,7 +36,7 @@ FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 81FFEB8 releaseall end -FallarborTown_BattleTentLobby_EventScript_WonChallenge:: @ 81FFEED +FallarborTown_BattleTentLobby_EventScript_WonChallenge:: lockall msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT message FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame @@ -47,7 +47,7 @@ FallarborTown_BattleTentLobby_EventScript_WonChallenge:: @ 81FFEED playse SE_SAVE waitse -FallarborTown_BattleTentLobby_EventScript_GivePrize:: @ 81FFF27 +FallarborTown_BattleTentLobby_EventScript_GivePrize:: msgbox FallarborTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT fallarbortent_giveprize switch VAR_RESULT @@ -63,7 +63,7 @@ FallarborTown_BattleTentLobby_EventScript_GivePrize:: @ 81FFF27 releaseall end -FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 81FFF73 +FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize:: msgbox FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize, MSGBOX_DEFAULT waitmessage closemessage @@ -71,13 +71,13 @@ FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 81FFF73 releaseall end -FallarborTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 81FFF84 +FallarborTown_BattleTentLobby_EventScript_PrizeWaiting:: lockall msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_GivePrize end -FallarborTown_BattleTentLobby_EventScript_LostChallenge:: @ 81FFF93 +FallarborTown_BattleTentLobby_EventScript_LostChallenge:: lockall message FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving waitmessage @@ -91,7 +91,7 @@ FallarborTown_BattleTentLobby_EventScript_LostChallenge:: @ 81FFF93 releaseall end -FallarborTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 81FFFCD +FallarborTown_BattleTentLobby_EventScript_ResumeChallenge:: lockall message FallarborTown_BattleTentLobby_Text_LookingForwardToArrival waitmessage @@ -102,7 +102,7 @@ FallarborTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 81FFFCD setvar VAR_TEMP_0, 255 goto FallarborTown_BattleTentLobby_EventScript_EnterChallenge -FallarborTown_BattleTentLobby_EventScript_Attendant:: @ 8200001 +FallarborTown_BattleTentLobby_EventScript_Attendant:: lock faceplayer fallarbortent_getprize @@ -110,7 +110,7 @@ FallarborTown_BattleTentLobby_EventScript_Attendant:: @ 8200001 goto_if_ne FallarborTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty msgbox FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT -FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8200021 +FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: message FallarborTown_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -120,7 +120,7 @@ FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8200021 case 2, FallarborTown_BattleTentLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_CancelChallenge -FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 820005D +FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_ARENA setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 @@ -142,7 +142,7 @@ FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 820005D case YES, FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge -FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 82000E2 +FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER fallarbortent_init @@ -155,7 +155,7 @@ FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 82000E2 setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 goto_if_eq FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed -FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: @ 820013C +FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent, MSGBOX_DEFAULT @@ -166,35 +166,35 @@ FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: @ 820013C waitstate end -FallarborTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 8200169 +FallarborTown_BattleTentLobby_EventScript_ExplainChallenge:: msgbox FallarborTown_BattleTentLobby_Text_ExplainFallarborTent, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge -FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 8200176 +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen -FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8200191 +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge -FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 820019E +FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge -FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 82001AB +FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto FallarborTown_BattleTentLobby_EventScript_CancelChallenge -FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 82001C2 +FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: special LoadPlayerParty -FallarborTown_BattleTentLobby_EventScript_CancelChallenge:: @ 82001C5 +FallarborTown_BattleTentLobby_EventScript_CancelChallenge:: msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge, MSGBOX_DEFAULT -FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 82001CD +FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge:: release end -FallarborTown_BattleTentLobby_EventScript_WalkToDoor:: @ 82001CF +FallarborTown_BattleTentLobby_EventScript_WalkToDoor:: applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor waitmovement 0 @@ -207,42 +207,42 @@ FallarborTown_BattleTentLobby_EventScript_WalkToDoor:: @ 82001CF waitdooranim return -FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82001FE +FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor: walk_up walk_up walk_up step_end -FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8200202 +FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor: @ 8200205 +FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor: walk_up walk_up walk_up step_end -FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8200209 +FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -FallarborTown_BattleTentLobby_EventScript_Hiker:: @ 820020D +FallarborTown_BattleTentLobby_EventScript_Hiker:: msgbox FallarborTown_BattleTentLobby_Text_CameToCampOut, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_LittleBoy:: @ 8200216 +FallarborTown_BattleTentLobby_EventScript_LittleBoy:: msgbox FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_Lass:: @ 820021F +FallarborTown_BattleTentLobby_EventScript_Lass:: msgbox FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite, MSGBOX_NPC end -FallarborTown_BattleTentLobby_EventScript_Scott:: @ 8200228 +FallarborTown_BattleTentLobby_EventScript_Scott:: lock faceplayer goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo @@ -252,18 +252,18 @@ FallarborTown_BattleTentLobby_EventScript_Scott:: @ 8200228 release end -FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8200245 +FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: msgbox FallarborTown_BattleTentLobby_Text_ScottMakeChallenge, MSGBOX_DEFAULT release end -FallarborTown_BattleTentLobby_EventScript_RulesBoard:: @ 820024F +FallarborTown_BattleTentLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleArenaLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 820025E +FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading waitmessage multichoice 17, 0, MULTI_FALLARBOR_TENT_RULES, FALSE @@ -277,43 +277,43 @@ FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 820025E case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_ExitRules end -FallarborTown_BattleTentLobby_EventScript_RulesLevel:: @ 82002BC +FallarborTown_BattleTentLobby_EventScript_RulesLevel:: msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_RulesBattle:: @ 82002CA +FallarborTown_BattleTentLobby_EventScript_RulesBattle:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_RulesMind:: @ 82002D8 +FallarborTown_BattleTentLobby_EventScript_RulesMind:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainMindRules, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_RulesSkill:: @ 82002E6 +FallarborTown_BattleTentLobby_EventScript_RulesSkill:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_RulesBody:: @ 82002F4 +FallarborTown_BattleTentLobby_EventScript_RulesBody:: msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules, MSGBOX_DEFAULT goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard end -FallarborTown_BattleTentLobby_EventScript_ExitRules:: @ 8200302 +FallarborTown_BattleTentLobby_EventScript_ExitRules:: releaseall end -FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid: @ 8200304 +FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid: .string "Fufufufufu.\p" .string "I'm going to make everyone think\n" .string "I'm just a kid and let them play down.\p" .string "Then, I'll shock them and grab\n" .string "the title!$" -FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite: @ 8200382 +FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite: .string "You know how BATTLE TENTS offer\n" .string "different events in different towns?\p" .string "My favorite is definitely the BATTLE\n" @@ -322,7 +322,7 @@ FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite: @ 8200382 .string "try to win with all their faith in\l" .string "their POKéMON.$" -FallarborTown_BattleTentLobby_Text_CameToCampOut: @ 820045A +FallarborTown_BattleTentLobby_Text_CameToCampOut: .string "I heard something about some tent,\n" .string "so I came to camp out.\p" .string "I didn't know that tents these days\n" @@ -330,7 +330,7 @@ FallarborTown_BattleTentLobby_Text_CameToCampOut: @ 820045A .string "Since I'm here, I may as well try\n" .string "my hand at battling!$" -FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone: @ 8200501 +FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone: .string "SCOTT: Hi, {PLAYER}{KUN}!\n" .string "So you came out to this BATTLE TENT!\p" .string "The people in these parts tend to be\n" @@ -345,7 +345,7 @@ FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone: @ 8200501 .string "Whoops! Never mind!\n" .string "Keep working at it!$" -FallarborTown_BattleTentLobby_Text_ScottMakeChallenge: @ 8200653 +FallarborTown_BattleTentLobby_Text_ScottMakeChallenge: .string "SCOTT: Instead of wasting your\n" .string "time with the likes of me, why not\l" .string "make a challenge?$" diff --git a/data/maps/FallarborTown_CozmosHouse/scripts.inc b/data/maps/FallarborTown_CozmosHouse/scripts.inc index 3f4db18d3a7b..43a9dca7f304 100644 --- a/data/maps/FallarborTown_CozmosHouse/scripts.inc +++ b/data/maps/FallarborTown_CozmosHouse/scripts.inc @@ -1,7 +1,7 @@ -FallarborTown_CozmosHouse_MapScripts:: @ 8200F12 +FallarborTown_CozmosHouse_MapScripts:: .byte 0 -FallarborTown_CozmosHouse_EventScript_ProfCozmo:: @ 8200F13 +FallarborTown_CozmosHouse_EventScript_ProfCozmo:: lock faceplayer goto_if_set FLAG_RECEIVED_TM27, FallarborTown_CozmosHouse_EventScript_GaveMeteorite @@ -12,7 +12,7 @@ FallarborTown_CozmosHouse_EventScript_ProfCozmo:: @ 8200F13 release end -FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite:: @ 8200F38 +FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite:: call_if_unset FLAG_TEMP_2, FallarborTown_CozmosHouse_EventScript_NoticeMeteorite call_if_set FLAG_TEMP_2, FallarborTown_CozmosHouse_EventScript_AskForMeteorite compare VAR_RESULT, NO @@ -28,27 +28,27 @@ FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite:: @ 8200F38 release end -FallarborTown_CozmosHouse_EventScript_NoticeMeteorite:: @ 8200F8B +FallarborTown_CozmosHouse_EventScript_NoticeMeteorite:: msgbox FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow, MSGBOX_DEFAULT msgbox FallarborTown_CozmosHouse_Text_IsThatMeteoriteMayIHaveIt, MSGBOX_YESNO return -FallarborTown_CozmosHouse_EventScript_AskForMeteorite:: @ 8200F9C +FallarborTown_CozmosHouse_EventScript_AskForMeteorite:: msgbox FallarborTown_CozmosHouse_Text_MayIHaveMeteorite, MSGBOX_YESNO return -FallarborTown_CozmosHouse_EventScript_DeclineGiveMeteorite:: @ 8200FA5 +FallarborTown_CozmosHouse_EventScript_DeclineGiveMeteorite:: setflag FLAG_TEMP_2 msgbox FallarborTown_CozmosHouse_Text_CrushedWithDisappointment, MSGBOX_DEFAULT release end -FallarborTown_CozmosHouse_EventScript_GaveMeteorite:: @ 8200FB2 +FallarborTown_CozmosHouse_EventScript_GaveMeteorite:: msgbox FallarborTown_CozmosHouse_Text_ReallyGoingToHelpMyResearch, MSGBOX_DEFAULT release end -FallarborTown_CozmosHouse_EventScript_CozmosWife:: @ 8200FBC +FallarborTown_CozmosHouse_EventScript_CozmosWife:: lock faceplayer goto_if_set FLAG_RECEIVED_TM27, FallarborTown_CozmosHouse_EventScript_CozmoIsHappy @@ -57,17 +57,17 @@ FallarborTown_CozmosHouse_EventScript_CozmosWife:: @ 8200FBC release end -FallarborTown_CozmosHouse_EventScript_CozmoIsSad:: @ 8200FDA +FallarborTown_CozmosHouse_EventScript_CozmoIsSad:: msgbox FallarborTown_CozmosHouse_Text_FeelSorryForCozmo, MSGBOX_DEFAULT release end -FallarborTown_CozmosHouse_EventScript_CozmoIsHappy:: @ 8200FE4 +FallarborTown_CozmosHouse_EventScript_CozmoIsHappy:: msgbox FallarborTown_CozmosHouse_Text_CozmoIsSoHappy, MSGBOX_DEFAULT release end -FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow: @ 8200FEE +FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow: .string "PROF. COZMO: Oh…\n" .string "I never should have let myself be\l" .string "conned into telling TEAM MAGMA where\l" @@ -75,7 +75,7 @@ FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow: @ 8200FEE .string "That METEORITE from METEOR FALLS…\n" .string "It's never going to be mine now…$" -FallarborTown_CozmosHouse_Text_IsThatMeteoriteMayIHaveIt: @ 82010A2 +FallarborTown_CozmosHouse_Text_IsThatMeteoriteMayIHaveIt: .string "Oh!\n" .string "Hah?\p" .string "That item…\p" @@ -86,36 +86,36 @@ FallarborTown_CozmosHouse_Text_IsThatMeteoriteMayIHaveIt: @ 82010A2 .string "I'm not asking for it for free.\n" .string "How about in exchange for this TM?$" -FallarborTown_CozmosHouse_Text_PleaseUseThisTM: @ 8201159 +FallarborTown_CozmosHouse_Text_PleaseUseThisTM: .string "PROF. COZMO: This TM, it represents\n" .string "my feeling of gratitude.\l" .string "Please use it!$" -FallarborTown_CozmosHouse_Text_ReallyGoingToHelpMyResearch: @ 82011A5 +FallarborTown_CozmosHouse_Text_ReallyGoingToHelpMyResearch: .string "PROF. COZMO: Oh, I can't believe it.\n" .string "This is really, really great!\p" .string "This is really going to help my research!$" -FallarborTown_CozmosHouse_Text_CrushedWithDisappointment: @ 8201212 +FallarborTown_CozmosHouse_Text_CrushedWithDisappointment: .string "PROF. COZMO: Oh, but…\n" .string "I'm crushed with disappointment…$" -FallarborTown_CozmosHouse_Text_MayIHaveMeteorite: @ 8201249 +FallarborTown_CozmosHouse_Text_MayIHaveMeteorite: .string "PROF. COZMO: Please, may I have that\n" .string "METEORITE?\p" .string "I'm not asking for it for free.\n" .string "How about in exchange for this TM?$" -FallarborTown_CozmosHouse_Text_CozmoWentToMeteorFalls: @ 82012BC +FallarborTown_CozmosHouse_Text_CozmoWentToMeteorFalls: .string "PROF. COZMO went off to METEOR FALLS\n" .string "on ROUTE 114 with some people from\l" .string "TEAM MAGMA.$" -FallarborTown_CozmosHouse_Text_FeelSorryForCozmo: @ 8201310 +FallarborTown_CozmosHouse_Text_FeelSorryForCozmo: .string "Poor PROF. COZMO…\n" .string "He's so depressed… I feel sorry for him.$" -FallarborTown_CozmosHouse_Text_CozmoIsSoHappy: @ 820134B +FallarborTown_CozmosHouse_Text_CozmoIsSoHappy: .string "Look at PROF. COZMO…\n" .string "He's so happy! I think it's cute.$" diff --git a/data/maps/FallarborTown_Mart/scripts.inc b/data/maps/FallarborTown_Mart/scripts.inc index bf106781a8fc..2b18a9e14310 100644 --- a/data/maps/FallarborTown_Mart/scripts.inc +++ b/data/maps/FallarborTown_Mart/scripts.inc @@ -1,7 +1,7 @@ -FallarborTown_Mart_MapScripts:: @ 81FFCBE +FallarborTown_Mart_MapScripts:: .byte 0 -FallarborTown_Mart_EventScript_Clerk:: @ 81FFCBF +FallarborTown_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ FallarborTown_Mart_EventScript_Clerk:: @ 81FFCBF end .align 2 -FallarborTown_Mart_Pokemart: @ 81FFCD8 +FallarborTown_Mart_Pokemart: .2byte ITEM_GREAT_BALL .2byte ITEM_SUPER_POTION .2byte ITEM_ANTIDOTE @@ -29,15 +29,15 @@ FallarborTown_Mart_Pokemart: @ 81FFCD8 release end -FallarborTown_Mart_EventScript_Woman:: @ 81FFCF4 +FallarborTown_Mart_EventScript_Woman:: msgbox FallarborTown_Mart_Text_DecidingSkittyEvolve, MSGBOX_NPC end -FallarborTown_Mart_EventScript_PokefanM:: @ 81FFCFD +FallarborTown_Mart_EventScript_PokefanM:: msgbox FallarborTown_Mart_Text_SellNuggetIFound, MSGBOX_NPC end -FallarborTown_Mart_EventScript_Skitty:: @ 81FFD06 +FallarborTown_Mart_EventScript_Skitty:: lock faceplayer waitse @@ -47,7 +47,7 @@ FallarborTown_Mart_EventScript_Skitty:: @ 81FFD06 release end -FallarborTown_Mart_Text_DecidingSkittyEvolve: @ 81FFD19 +FallarborTown_Mart_Text_DecidingSkittyEvolve: .string "I'm having a hard time deciding if I\n" .string "should make my SKITTY evolve or not.\p" .string "I only have to use this MOON STONE,\n" @@ -56,10 +56,10 @@ FallarborTown_Mart_Text_DecidingSkittyEvolve: @ 81FFD19 .string "much stronger.\p" .string "But it will look so different, too.$" -FallarborTown_Mart_Text_Skitty: @ 81FFDFA +FallarborTown_Mart_Text_Skitty: .string "SKITTY: Miyao?$" -FallarborTown_Mart_Text_SellNuggetIFound: @ 81FFE09 +FallarborTown_Mart_Text_SellNuggetIFound: .string "This NUGGET I found here…\n" .string "I suppose I'll have to sell it, seeing\l" .string "as how it has no other use.$" diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc index 780901c423df..1bd54b4b8df6 100644 --- a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc +++ b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_MOVE_RELEARNER, 1 -FallarborTown_MoveRelearnersHouse_MapScripts:: @ 8201382 +FallarborTown_MoveRelearnersHouse_MapScripts:: .byte 0 -FallarborTown_MoveRelearnersHouse_EventScript_MoveRelearner:: @ 8201383 +FallarborTown_MoveRelearnersHouse_EventScript_MoveRelearner:: lockall applymovement LOCALID_MOVE_RELEARNER, Common_Movement_FacePlayer waitmovement 0 @@ -13,7 +13,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_MoveRelearner:: @ 8201383 goto FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove end -FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove:: @ 82013A8 +FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove:: checkitem ITEM_HEART_SCALE, 1 compare VAR_RESULT, FALSE goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale @@ -23,7 +23,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove:: @ 82013A8 goto FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon end -FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon:: @ 82013D6 +FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon:: msgbox FallarborTown_MoveRelearnersHouse_Text_TutorWhichMon, MSGBOX_DEFAULT special ChooseMonForMoveRelearner waitstate @@ -37,7 +37,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon:: @ 82013D6 goto FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove end -FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove:: @ 820140C +FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove:: msgbox FallarborTown_MoveRelearnersHouse_Text_TeachWhichMove, MSGBOX_DEFAULT special TeachMoveRelearnerMove waitstate @@ -48,22 +48,22 @@ FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove:: @ 820140C goto FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale end -FallarborTown_MoveRelearnersHouse_EventScript_NoMoveToTeachMon:: @ 8201436 +FallarborTown_MoveRelearnersHouse_EventScript_NoMoveToTeachMon:: msgbox FallarborTown_MoveRelearnersHouse_Text_DontHaveMoveToTeachPokemon, MSGBOX_DEFAULT goto FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon end -FallarborTown_MoveRelearnersHouse_EventScript_CantTeachEgg:: @ 8201444 +FallarborTown_MoveRelearnersHouse_EventScript_CantTeachEgg:: msgbox FallarborTown_MoveRelearnersHouse_Text_CantTeachEgg, MSGBOX_DEFAULT goto FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon end -FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale:: @ 8201452 +FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale:: msgbox FallarborTown_MoveRelearnersHouse_Text_ComeBackWithHeartScale, MSGBOX_DEFAULT releaseall end -FallarborTown_MoveRelearnersHouse_Text_ImTheMoveTutor: @ 820145C +FallarborTown_MoveRelearnersHouse_Text_ImTheMoveTutor: .string "I'm the MOVE TUTOR.\p" .string "I know all the moves that POKéMON\n" .string "learn--every one of them--and I can\l" @@ -73,32 +73,32 @@ FallarborTown_MoveRelearnersHouse_Text_ImTheMoveTutor: @ 820145C .string "I'll do it for a HEART SCALE.\n" .string "I'm collecting those now.$" -FallarborTown_MoveRelearnersHouse_Text_ThatsAHeartScaleWantMeToTeachMove: @ 8201541 +FallarborTown_MoveRelearnersHouse_Text_ThatsAHeartScaleWantMeToTeachMove: .string "Oh! That's it! That's an honest to\n" .string "goodness HEART SCALE!\p" .string "Let me guess, you want me to teach\n" .string "a move?$" -FallarborTown_MoveRelearnersHouse_Text_TutorWhichMon: @ 82015A5 +FallarborTown_MoveRelearnersHouse_Text_TutorWhichMon: .string "Which POKéMON needs tutoring?$" -FallarborTown_MoveRelearnersHouse_Text_TeachWhichMove: @ 82015C3 +FallarborTown_MoveRelearnersHouse_Text_TeachWhichMove: .string "Which move should I teach?$" -FallarborTown_MoveRelearnersHouse_Text_DontHaveMoveToTeachPokemon: @ 82015DE +FallarborTown_MoveRelearnersHouse_Text_DontHaveMoveToTeachPokemon: .string "Sorry…\p" .string "It doesn't appear as if I have any move\n" .string "I can teach that POKéMON.$" -FallarborTown_MoveRelearnersHouse_Text_HandedOverHeartScale: @ 8201627 +FallarborTown_MoveRelearnersHouse_Text_HandedOverHeartScale: .string "{PLAYER} handed over one HEART SCALE\n" .string "in exchange.$" -FallarborTown_MoveRelearnersHouse_Text_ComeBackWithHeartScale: @ 8201653 +FallarborTown_MoveRelearnersHouse_Text_ComeBackWithHeartScale: .string "If your POKéMON need to learn a move,\n" .string "come back with a HEART SCALE.$" -FallarborTown_MoveRelearnersHouse_Text_CantTeachEgg: @ 8201697 +FallarborTown_MoveRelearnersHouse_Text_CantTeachEgg: .string "Hunh? There isn't a single move that\n" .string "I can teach an EGG.$" diff --git a/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc b/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc index e7967046dbbf..bc9e7c25f8b0 100644 --- a/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc @@ -1,17 +1,17 @@ .set LOCALID_NURSE, 1 .set LOCALID_LANETTE, 4 -FallarborTown_PokemonCenter_1F_MapScripts:: @ 8200BCD +FallarborTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -FallarborTown_PokemonCenter_1F_OnTransition: @ 8200BD8 +FallarborTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_FALLARBOR_TOWN call Common_EventScript_UpdateBrineyLocation end -FallarborTown_PokemonCenter_1F_EventScript_Nurse:: @ 8200BE1 +FallarborTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -19,15 +19,15 @@ FallarborTown_PokemonCenter_1F_EventScript_Nurse:: @ 8200BE1 release end -FallarborTown_PokemonCenter_1F_EventScript_Girl:: @ 8200BEF +FallarborTown_PokemonCenter_1F_EventScript_Girl:: msgbox FallarborTown_PokemonCenter_1F_Text_FossilManiacEdgeOfTown, MSGBOX_NPC end -FallarborTown_PokemonCenter_1F_EventScript_ExpertM:: @ 8200BF8 +FallarborTown_PokemonCenter_1F_EventScript_ExpertM:: msgbox FallarborTown_PokemonCenter_1F_Text_PlantHardyTrees, MSGBOX_NPC end -FallarborTown_PokemonCenter_1F_EventScript_Lanette:: @ 8200C01 +FallarborTown_PokemonCenter_1F_EventScript_Lanette:: lock faceplayer msgbox FallarborTown_PokemonCenter_1F_Text_LanetteGreeting, MSGBOX_DEFAULT @@ -37,26 +37,26 @@ FallarborTown_PokemonCenter_1F_EventScript_Lanette:: @ 8200C01 case DIR_WEST, FallarborTown_PokemonCenter_1F_EventScript_LanetteExitWest end -FallarborTown_PokemonCenter_1F_EventScript_LanetteExitNorth:: @ 8200C28 +FallarborTown_PokemonCenter_1F_EventScript_LanetteExitNorth:: applymovement LOCALID_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth waitmovement 0 goto FallarborTown_PokemonCenter_1F_EventScript_LanetteExited end -FallarborTown_PokemonCenter_1F_EventScript_LanetteExitWest:: @ 8200C38 +FallarborTown_PokemonCenter_1F_EventScript_LanetteExitWest:: applymovement LOCALID_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest waitmovement 0 goto FallarborTown_PokemonCenter_1F_EventScript_LanetteExited end -FallarborTown_PokemonCenter_1F_EventScript_LanetteExited:: @ 8200C48 +FallarborTown_PokemonCenter_1F_EventScript_LanetteExited:: playse SE_SLIDING_DOOR removeobject LOCALID_LANETTE clearflag FLAG_HIDE_LANETTES_HOUSE_LANETTE release end -FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth: @ 8200C53 +FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth: walk_right walk_down walk_down @@ -71,7 +71,7 @@ FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth: @ 8200C53 delay_8 step_end -FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest: @ 8200C60 +FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest: walk_down walk_down walk_left @@ -84,7 +84,7 @@ FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest: @ 8200C60 delay_8 step_end -FallarborTown_PokemonCenter_1F_Text_LanetteGreeting: @ 8200C6B +FallarborTown_PokemonCenter_1F_Text_LanetteGreeting: .string "Oh, hello.\n" .string "You are?\p" .string "Okay, your name's {PLAYER}{KUN}.\n" @@ -101,13 +101,13 @@ FallarborTown_PokemonCenter_1F_Text_LanetteGreeting: @ 8200C6B .string "If you could, please visit me at home.\n" .string "My house is on ROUTE 114.$" -FallarborTown_PokemonCenter_1F_Text_FossilManiacEdgeOfTown: @ 8200E22 +FallarborTown_PokemonCenter_1F_Text_FossilManiacEdgeOfTown: .string "I wonder what POKéMON looked like\n" .string "long, long ago?\p" .string "Maybe the FOSSIL MANIAC at the edge\n" .string "of town will know.$" -FallarborTown_PokemonCenter_1F_Text_PlantHardyTrees: @ 8200E8B +FallarborTown_PokemonCenter_1F_Text_PlantHardyTrees: .string "In the fields of FALLARBOR, we plant\n" .string "seedlings of hardy trees that thrive\l" .string "even in volcanic ash.$" diff --git a/data/maps/FallarborTown_PokemonCenter_2F/scripts.inc b/data/maps/FallarborTown_PokemonCenter_2F/scripts.inc index e9912ee686e6..aa7dea8fa102 100644 --- a/data/maps/FallarborTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/FallarborTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -FallarborTown_PokemonCenter_2F_MapScripts:: @ 8200EEB +FallarborTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ FallarborTown_PokemonCenter_2F_MapScripts:: @ 8200EEB .byte 0 @ The below 3 are unused and leftover from RS -FallarborTown_PokemonCenter_2F_EventScript_Colosseum:: @ 8200F00 +FallarborTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -FallarborTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 8200F06 +FallarborTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -FallarborTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 8200F0C +FallarborTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc index ce0c10c168d9..c4b4c9ab08e0 100644 --- a/data/maps/FarawayIsland_Entrance/scripts.inc +++ b/data/maps/FarawayIsland_Entrance/scripts.inc @@ -1,25 +1,25 @@ .set LOCALID_SAILOR, 1 .set LOCALID_SS_TIDAL, 2 -FarawayIsland_Entrance_MapScripts:: @ 8267C8E +FarawayIsland_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FarawayIsland_Entrance_OnTransition .byte 0 -FarawayIsland_Entrance_OnTransition: @ 8267C94 +FarawayIsland_Entrance_OnTransition: setflag FLAG_ARRIVED_ON_FARAWAY_ISLAND end -FarawayIsland_Entrance_EventScript_SetCloudsWeather:: @ 8267C98 +FarawayIsland_Entrance_EventScript_SetCloudsWeather:: setweather WEATHER_SUNNY_CLOUDS doweather end -FarawayIsland_Entrance_EventScript_ClearWeather:: @ 8267C9D +FarawayIsland_Entrance_EventScript_ClearWeather:: setweather WEATHER_NONE doweather end -FarawayIsland_Entrance_EventScript_Sailor:: @ 8267CA2 +FarawayIsland_Entrance_EventScript_Sailor:: lock faceplayer msgbox FarawayIsland_Entrance_Text_SailorReturn, MSGBOX_YESNO @@ -38,12 +38,12 @@ FarawayIsland_Entrance_EventScript_Sailor:: @ 8267CA2 release end -FarawayIsland_Entrance_EventScript_AsYouLike:: @ 8267CE7 +FarawayIsland_Entrance_EventScript_AsYouLike:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT release end -FarawayIsland_Entrance_EventScript_Sign:: @ 8267CF1 +FarawayIsland_Entrance_EventScript_Sign:: msgbox FarawayIsland_Entrance_Text_Sign, MSGBOX_SIGN end diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index 59a90e357855..bd2b479f70cd 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -1,17 +1,17 @@ @ Note: LOCALID_FARAWAY_ISLAND_MEW is a local id for this map used elsewhere. It's defined in event_objects.h -FarawayIsland_Interior_MapScripts:: @ 8267CFA +FarawayIsland_Interior_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, FarawayIsland_Interior_OnResume map_script MAP_SCRIPT_ON_TRANSITION, FarawayIsland_Interior_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, FarawayIsland_Interior_OnFrame map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, FarawayIsland_Interior_OnReturnToField .byte 0 -FarawayIsland_Interior_OnReturnToField: @ 8267D0F +FarawayIsland_Interior_OnReturnToField: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, FarawayIsland_Interior_EventScript_TrySetMewAboveGrass end -FarawayIsland_Interior_EventScript_TrySetMewAboveGrass:: @ 8267D19 +FarawayIsland_Interior_EventScript_TrySetMewAboveGrass:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_WON goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass @@ -23,39 +23,39 @@ FarawayIsland_Interior_EventScript_TrySetMewAboveGrass:: @ 8267D19 goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass return -FarawayIsland_Interior_EventScript_SetMewAboveGrass:: @ 8267D4B +FarawayIsland_Interior_EventScript_SetMewAboveGrass:: setvar VAR_0x8004, 1 special SetMewAboveGrass return -FarawayIsland_Interior_OnResume: @ 8267D54 +FarawayIsland_Interior_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, FarawayIsland_Interior_EventScript_TryRemoveMew end -FarawayIsland_Interior_EventScript_TryRemoveMew:: @ 8267D5E +FarawayIsland_Interior_EventScript_TryRemoveMew:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -FarawayIsland_Interior_OnTransition: @ 8267D72 +FarawayIsland_Interior_OnTransition: setvar VAR_FARAWAY_ISLAND_STEP_COUNTER, 0 setvar VAR_TEMP_1, 1 call_if_unset FLAG_CAUGHT_MEW, FarawayIsland_Interior_EventScript_TryShowMew end -FarawayIsland_Interior_EventScript_TryShowMew:: @ 8267D86 +FarawayIsland_Interior_EventScript_TryShowMew:: goto_if_set FLAG_DEFEATED_MEW, Common_EventScript_NopReturn clearflag FLAG_HIDE_MEW setvar VAR_TEMP_1, 0 return -FarawayIsland_Interior_OnFrame: @ 8267D98 +FarawayIsland_Interior_OnFrame: map_script_2 VAR_TEMP_1, 0, FarawayIsland_Interior_EventScript_FindMew .2byte 0 -FarawayIsland_Interior_EventScript_FindMew:: @ 8267DA2 +FarawayIsland_Interior_EventScript_FindMew:: lockall playse SE_PIN applymovement LOCALID_FARAWAY_ISLAND_MEW, Common_Movement_ExclamationMark @@ -69,7 +69,7 @@ FarawayIsland_Interior_EventScript_FindMew:: @ 8267DA2 releaseall end -FarawayIsland_Interior_Movement_MewMoveAndHide: @ 8267DCE +FarawayIsland_Interior_Movement_MewMoveAndHide: walk_up walk_up walk_up @@ -77,11 +77,11 @@ FarawayIsland_Interior_Movement_MewMoveAndHide: @ 8267DCE set_invisible step_end -FarawayIsland_Interior_Movement_MewAppear: @ 8267DD4 +FarawayIsland_Interior_Movement_MewAppear: set_visible step_end -FarawayIsland_Interior_Movement_MewFloatUpNorth: @ 8267DD6 +FarawayIsland_Interior_Movement_MewFloatUpNorth: lock_facing_direction walk_fast_up walk_fast_up @@ -90,7 +90,7 @@ FarawayIsland_Interior_Movement_MewFloatUpNorth: @ 8267DD6 walk_in_place_down step_end -FarawayIsland_Interior_Movement_MewFloatUpSouth: @ 8267DDD +FarawayIsland_Interior_Movement_MewFloatUpSouth: lock_facing_direction walk_fast_up walk_fast_up @@ -99,7 +99,7 @@ FarawayIsland_Interior_Movement_MewFloatUpSouth: @ 8267DDD walk_in_place_up step_end -FarawayIsland_Interior_Movement_MewFloatUpWest: @ 8267DE4 +FarawayIsland_Interior_Movement_MewFloatUpWest: lock_facing_direction walk_fast_up walk_fast_up @@ -108,7 +108,7 @@ FarawayIsland_Interior_Movement_MewFloatUpWest: @ 8267DE4 walk_in_place_right step_end -FarawayIsland_Interior_Movement_MewFloatUpEast: @ 8267DEB +FarawayIsland_Interior_Movement_MewFloatUpEast: lock_facing_direction walk_fast_up walk_fast_up @@ -117,7 +117,7 @@ FarawayIsland_Interior_Movement_MewFloatUpEast: @ 8267DEB walk_in_place_left step_end -FarawayIsland_Interior_EventScript_Mew:: @ 8267DF2 +FarawayIsland_Interior_EventScript_Mew:: lock faceplayer applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewAppear @@ -159,38 +159,38 @@ FarawayIsland_Interior_EventScript_Mew:: @ 8267DF2 release end -FarawayIsland_Interior_EventScript_MewDefeated:: @ 8267E96 +FarawayIsland_Interior_EventScript_MewDefeated:: setflag FLAG_DEFEATED_MEW setvar VAR_0x8004, SPECIES_MEW goto Common_EventScript_LegendaryFlewAway end -FarawayIsland_Interior_EventScript_PlayerOrMewRan:: @ 8267EA4 +FarawayIsland_Interior_EventScript_PlayerOrMewRan:: setvar VAR_0x8004, SPECIES_MEW goto Common_EventScript_LegendaryFlewAway end -FarawayIsland_Interior_EventScript_FoundMewNorth:: @ 8267EAF +FarawayIsland_Interior_EventScript_FoundMewNorth:: applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpNorth waitmovement 0 return -FarawayIsland_Interior_EventScript_FoundMewSouth:: @ 8267EBA +FarawayIsland_Interior_EventScript_FoundMewSouth:: applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpSouth waitmovement 0 return -FarawayIsland_Interior_EventScript_FoundMewWest:: @ 8267EC5 +FarawayIsland_Interior_EventScript_FoundMewWest:: applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpWest waitmovement 0 return -FarawayIsland_Interior_EventScript_FoundMewEast:: @ 8267ED0 +FarawayIsland_Interior_EventScript_FoundMewEast:: applymovement LOCALID_FARAWAY_ISLAND_MEW, FarawayIsland_Interior_Movement_MewFloatUpEast waitmovement 0 return -FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: @ 8267EDB +FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: lockall fadescreenswapbuffers FADE_TO_BLACK setflag FLAG_HIDE_MEW @@ -201,5 +201,5 @@ FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: @ 8267EDB releaseall end -FarawayIsland_Interior_Text_TheFeelingOfBeingWatchedFaded: @ 8267EF1 +FarawayIsland_Interior_Text_TheFeelingOfBeingWatchedFaded: .string "The feeling of being watched faded…$" diff --git a/data/maps/FieryPath/scripts.inc b/data/maps/FieryPath/scripts.inc index ca259993ec18..c9dd7aed07d4 100644 --- a/data/maps/FieryPath/scripts.inc +++ b/data/maps/FieryPath/scripts.inc @@ -1,13 +1,13 @@ -FieryPath_MapScripts:: @ 8230F24 +FieryPath_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FieryPath_OnTransition .byte 0 -FieryPath_OnTransition: @ 8230F2A +FieryPath_OnTransition: call_if_unset FLAG_LANDMARK_FIERY_PATH, FieryPath_EventScript_MoveScottToFallarbor setflag FLAG_LANDMARK_FIERY_PATH end -FieryPath_EventScript_MoveScottToFallarbor:: @ 8230F37 +FieryPath_EventScript_MoveScottToFallarbor:: setflag FLAG_HIDE_VERDANTURF_TOWN_SCOTT clearflag FLAG_HIDE_FALLARBOR_TOWN_BATTLE_TENT_SCOTT return diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc index 748ed2558e3d..1ef3cffc73bc 100644 --- a/data/maps/FortreeCity/scripts.inc +++ b/data/maps/FortreeCity/scripts.inc @@ -1,21 +1,21 @@ -FortreeCity_MapScripts:: @ 81E25A4 +FortreeCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FortreeCity_OnTransition map_script MAP_SCRIPT_ON_RESUME, FortreeCity_OnResume .byte 0 -FortreeCity_OnTransition: @ 81E25AF +FortreeCity_OnTransition: setflag FLAG_VISITED_FORTREE_CITY end -FortreeCity_OnResume: @ 81E25B3 +FortreeCity_OnResume: setstepcallback STEP_CB_FORTREE_BRIDGE end -FortreeCity_EventScript_Man:: @ 81E25B6 +FortreeCity_EventScript_Man:: msgbox FortreeCity_Text_SawGiganticPokemonInSky, MSGBOX_NPC end -FortreeCity_EventScript_Woman:: @ 81E25BF +FortreeCity_EventScript_Woman:: lock faceplayer goto_if_set FLAG_KECLEON_FLED_FORTREE, FortreeCity_EventScript_WomanGymAccessible @@ -23,36 +23,36 @@ FortreeCity_EventScript_Woman:: @ 81E25BF release end -FortreeCity_EventScript_WomanGymAccessible:: @ 81E25D4 +FortreeCity_EventScript_WomanGymAccessible:: msgbox FortreeCity_Text_ThisTimeIllBeatWinona, MSGBOX_DEFAULT release end -FortreeCity_EventScript_Girl:: @ 81E25DE +FortreeCity_EventScript_Girl:: msgbox FortreeCity_Text_TreesGrowByDrinkingRainwater, MSGBOX_NPC end -FortreeCity_EventScript_OldMan:: @ 81E25E7 +FortreeCity_EventScript_OldMan:: msgbox FortreeCity_Text_EveryoneHealthyAndLively, MSGBOX_NPC end -FortreeCity_EventScript_Boy:: @ 81E25F0 +FortreeCity_EventScript_Boy:: msgbox FortreeCity_Text_BugPokemonComeThroughWindow, MSGBOX_NPC end -FortreeCity_EventScript_GameboyKid:: @ 81E25F9 +FortreeCity_EventScript_GameboyKid:: msgbox FortreeCity_Text_PokemonThatEvolveWhenTraded, MSGBOX_NPC end -FortreeCity_EventScript_CitySign:: @ 81E2602 +FortreeCity_EventScript_CitySign:: msgbox FortreeCity_Text_CitySign, MSGBOX_SIGN end -FortreeCity_EventScript_GymSign:: @ 81E260B +FortreeCity_EventScript_GymSign:: msgbox FortreeCity_Text_GymSign, MSGBOX_SIGN end -FortreeCity_EventScript_Kecleon:: @ 81E2614 +FortreeCity_EventScript_Kecleon:: lock faceplayer checkitem ITEM_DEVON_SCOPE, 1 @@ -62,14 +62,14 @@ FortreeCity_EventScript_Kecleon:: @ 81E2614 release end -FortreeCity_EventScript_AskUseDevonScope:: @ 81E2630 +FortreeCity_EventScript_AskUseDevonScope:: msgbox FortreeCity_Text_UnseeableUseDevonScope, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq FortreeCity_EventScript_UseDevonScope release end -FortreeCity_EventScript_UseDevonScope:: @ 81E2645 +FortreeCity_EventScript_UseDevonScope:: msgbox FortreeCity_Text_UsedDevonScopePokemonFled, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Movement_KecleonAppears @@ -85,11 +85,11 @@ FortreeCity_EventScript_UseDevonScope:: @ 81E2645 release end -FortreeCity_Movement_KecleonFlee: @ 81E2674 +FortreeCity_Movement_KecleonFlee: walk_right step_end -FortreeCity_Text_SawGiganticPokemonInSky: @ 81E2676 +FortreeCity_Text_SawGiganticPokemonInSky: .string "No one believes me, but I saw this\n" .string "gigantic POKéMON in the sky.\p" .string "It seemed to squirm as it flew toward\n" @@ -98,23 +98,23 @@ FortreeCity_Text_SawGiganticPokemonInSky: @ 81E2676 .string "Um… You, uh…smell singed.\p" .string "Were you at a volcano or something?$" -FortreeCity_Text_SomethingBlockingGym: @ 81E2738 +FortreeCity_Text_SomethingBlockingGym: .string "I want to go to the POKéMON GYM,\n" .string "but something's blocking the way.\p" .string "After all the bother I went through\n" .string "training on ROUTE 120…$" -FortreeCity_Text_ThisTimeIllBeatWinona: @ 81E27B6 +FortreeCity_Text_ThisTimeIllBeatWinona: .string "I've got my pride-and-joy POKéMON\n" .string "with me. This time, I'll beat WINONA.$" -FortreeCity_Text_TreesGrowByDrinkingRainwater: @ 81E27FE +FortreeCity_Text_TreesGrowByDrinkingRainwater: .string "The ground absorbs rainwater, and\n" .string "trees grow by drinking that water…\p" .string "Our FORTREE CITY exists because\n" .string "there's both water and soil.$" -FortreeCity_Text_EveryoneHealthyAndLively: @ 81E2880 +FortreeCity_Text_EveryoneHealthyAndLively: .string "The CITY consists of homes built on\n" .string "trees.\p" .string "Perhaps because of that lifestyle,\n" @@ -122,35 +122,35 @@ FortreeCity_Text_EveryoneHealthyAndLively: @ 81E2880 .string "Why, even myself--I feel as if I've\n" .string "grown thirty years younger.$" -FortreeCity_Text_BugPokemonComeThroughWindow: @ 81E292E +FortreeCity_Text_BugPokemonComeThroughWindow: .string "Living on top of trees is okay.\p" .string "But sometimes BUG POKéMON come in\n" .string "through windows.\l" .string "It can be really startling.$" -FortreeCity_Text_PokemonThatEvolveWhenTraded: @ 81E299D +FortreeCity_Text_PokemonThatEvolveWhenTraded: .string "There are POKéMON that evolve when\n" .string "you trade them! That's what I heard.$" -FortreeCity_Text_SomethingUnseeable: @ 81E29E5 +FortreeCity_Text_SomethingUnseeable: .string "Something unseeable is in the way.$" -FortreeCity_Text_UnseeableUseDevonScope: @ 81E2A08 +FortreeCity_Text_UnseeableUseDevonScope: .string "Something unseeable is in the way.\p" .string "Want to use the DEVON SCOPE?$" -FortreeCity_Text_UsedDevonScopePokemonFled: @ 81E2A48 +FortreeCity_Text_UsedDevonScopePokemonFled: .string "{PLAYER} used the DEVON SCOPE.\p" .string "An invisible POKéMON became completely\n" .string "visible!\p" .string "The startled POKéMON fled!$" -FortreeCity_Text_CitySign: @ 81E2AAC +FortreeCity_Text_CitySign: .string "FORTREE CITY\n" .string "“The treetop city that frolics with\l" .string "nature.”$" -FortreeCity_Text_GymSign: @ 81E2AE6 +FortreeCity_Text_GymSign: .string "FORTREE CITY POKéMON GYM\n" .string "LEADER: WINONA\p" .string "“The bird user taking flight into\n" diff --git a/data/maps/FortreeCity_DecorationShop/scripts.inc b/data/maps/FortreeCity_DecorationShop/scripts.inc index 4dd751b0f077..a42f47af7394 100644 --- a/data/maps/FortreeCity_DecorationShop/scripts.inc +++ b/data/maps/FortreeCity_DecorationShop/scripts.inc @@ -1,15 +1,15 @@ -FortreeCity_DecorationShop_MapScripts:: @ 821800D +FortreeCity_DecorationShop_MapScripts:: .byte 0 -FortreeCity_DecorationShop_EventScript_PokefanM:: @ 821800E +FortreeCity_DecorationShop_EventScript_PokefanM:: msgbox FortreeCity_DecorationShop_Text_MerchandiseSentToPC, MSGBOX_NPC end -FortreeCity_DecorationShop_EventScript_Girl:: @ 8218017 +FortreeCity_DecorationShop_EventScript_Girl:: msgbox FortreeCity_DecorationShop_Text_BuyingDeskForDolls, MSGBOX_NPC end -FortreeCity_DecorationShop_EventScript_ClerkDesks:: @ 8218020 +FortreeCity_DecorationShop_EventScript_ClerkDesks:: lock faceplayer message gText_HowMayIServeYou @@ -20,7 +20,7 @@ FortreeCity_DecorationShop_EventScript_ClerkDesks:: @ 8218020 end .align 2 -FortreeCity_DecorationShop_PokemartDecor_Desks: @ 8218038 +FortreeCity_DecorationShop_PokemartDecor_Desks: .2byte DECOR_SMALL_DESK .2byte DECOR_POKEMON_DESK .2byte DECOR_HEAVY_DESK @@ -33,7 +33,7 @@ FortreeCity_DecorationShop_PokemartDecor_Desks: @ 8218038 release end -FortreeCity_DecorationShop_EventScript_ClerkChairs:: @ 821804C +FortreeCity_DecorationShop_EventScript_ClerkChairs:: lock faceplayer message gText_HowMayIServeYou @@ -44,7 +44,7 @@ FortreeCity_DecorationShop_EventScript_ClerkChairs:: @ 821804C end .align 2 -FortreeCity_DecorationShop_PokemartDecor_Chairs: @ 8218064 +FortreeCity_DecorationShop_PokemartDecor_Chairs: .2byte DECOR_SMALL_CHAIR .2byte DECOR_POKEMON_CHAIR .2byte DECOR_HEAVY_CHAIR @@ -57,13 +57,13 @@ FortreeCity_DecorationShop_PokemartDecor_Chairs: @ 8218064 release end -FortreeCity_DecorationShop_Text_MerchandiseSentToPC: @ 8218078 +FortreeCity_DecorationShop_Text_MerchandiseSentToPC: .string "Merchandise you buy here is sent to\n" .string "your own PC.\p" .string "That's fantastic! I wish they could\n" .string "also deliver me home like that.$" -FortreeCity_DecorationShop_Text_BuyingDeskForDolls: @ 82180ED +FortreeCity_DecorationShop_Text_BuyingDeskForDolls: .string "I'm buying a pretty desk and I'm\n" .string "putting my cute DOLLS on it.\p" .string "If I don't, when I decorate my\n" diff --git a/data/maps/FortreeCity_Gym/scripts.inc b/data/maps/FortreeCity_Gym/scripts.inc index 688c1164592b..caac7247387b 100644 --- a/data/maps/FortreeCity_Gym/scripts.inc +++ b/data/maps/FortreeCity_Gym/scripts.inc @@ -1,21 +1,21 @@ -FortreeCity_Gym_MapScripts:: @ 82165AB +FortreeCity_Gym_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FortreeCity_Gym_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FortreeCity_Gym_OnWarp .byte 0 -FortreeCity_Gym_OnTransition: @ 82165B6 +FortreeCity_Gym_OnTransition: special RotatingGate_InitPuzzle end -FortreeCity_Gym_OnWarp: @ 82165BA +FortreeCity_Gym_OnWarp: map_script_2 VAR_TEMP_0, VAR_TEMP_0, FortreeCity_Gym_EventScript_InitRotatingGates .2byte 0 -FortreeCity_Gym_EventScript_InitRotatingGates:: @ 82165C4 +FortreeCity_Gym_EventScript_InitRotatingGates:: special RotatingGate_InitPuzzleAndGraphics end -FortreeCity_Gym_EventScript_Winona:: @ 82165C8 +FortreeCity_Gym_EventScript_Winona:: trainerbattle_single TRAINER_WINONA_1, FortreeCity_Gym_Text_WinonaIntro, FortreeCity_Gym_Text_WinonaDefeat, FortreeCity_Gym_EventScript_WinonaDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -25,7 +25,7 @@ FortreeCity_Gym_EventScript_Winona:: @ 82165C8 release end -FortreeCity_Gym_EventScript_WinonaDefeated:: @ 82165FD +FortreeCity_Gym_EventScript_WinonaDefeated:: message FortreeCity_Gym_Text_ReceivedFeatherBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -48,7 +48,7 @@ FortreeCity_Gym_EventScript_WinonaDefeated:: @ 82165FD release end -FortreeCity_Gym_EventScript_GiveAerialAce2:: @ 8216646 +FortreeCity_Gym_EventScript_GiveAerialAce2:: giveitem ITEM_TM40 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -57,7 +57,7 @@ FortreeCity_Gym_EventScript_GiveAerialAce2:: @ 8216646 release end -FortreeCity_Gym_EventScript_GiveAerialAce:: @ 821666A +FortreeCity_Gym_EventScript_GiveAerialAce:: giveitem ITEM_TM40 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -65,42 +65,42 @@ FortreeCity_Gym_EventScript_GiveAerialAce:: @ 821666A setflag FLAG_RECEIVED_TM40 return -FortreeCity_Gym_EventScript_WinonaRematch:: @ 821668D +FortreeCity_Gym_EventScript_WinonaRematch:: trainerbattle_rematch_double TRAINER_WINONA_1, FortreeCity_Gym_Text_WinonaPreRematch, FortreeCity_Gym_Text_WinonaRematchDefeat, FortreeCity_Gym_Text_WinonaRematchNeedTwoMons msgbox FortreeCity_Gym_Text_WinonaPostRematch, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Jared:: @ 82166A8 +FortreeCity_Gym_EventScript_Jared:: trainerbattle_single TRAINER_JARED, FortreeCity_Gym_Text_JaredIntro, FortreeCity_Gym_Text_JaredDefeat msgbox FortreeCity_Gym_Text_JaredPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Edwardo:: @ 82166BF +FortreeCity_Gym_EventScript_Edwardo:: trainerbattle_single TRAINER_EDWARDO, FortreeCity_Gym_Text_EdwardoIntro, FortreeCity_Gym_Text_EdwardoDefeat msgbox FortreeCity_Gym_Text_EdwardoPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Flint:: @ 82166D6 +FortreeCity_Gym_EventScript_Flint:: trainerbattle_single TRAINER_FLINT, FortreeCity_Gym_Text_FlintIntro, FortreeCity_Gym_Text_FlintDefeat msgbox FortreeCity_Gym_Text_FlintPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Ashley:: @ 82166ED +FortreeCity_Gym_EventScript_Ashley:: trainerbattle_single TRAINER_ASHLEY, FortreeCity_Gym_Text_AshleyIntro, FortreeCity_Gym_Text_AshleyDefeat msgbox FortreeCity_Gym_Text_AshleyPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Humberto:: @ 8216704 +FortreeCity_Gym_EventScript_Humberto:: trainerbattle_single TRAINER_HUMBERTO, FortreeCity_Gym_Text_HumbertoIntro, FortreeCity_Gym_Text_HumbertoDefeat msgbox FortreeCity_Gym_Text_HumbertoPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_Darius:: @ 821671B +FortreeCity_Gym_EventScript_Darius:: trainerbattle_single TRAINER_DARIUS, FortreeCity_Gym_Text_DariusIntro, FortreeCity_Gym_Text_DariusDefeat msgbox FortreeCity_Gym_Text_DariusPostBattle, MSGBOX_AUTOCLOSE end -FortreeCity_Gym_EventScript_GymGuide:: @ 8216732 +FortreeCity_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_FORTREE_GYM, FortreeCity_Gym_EventScript_GymGuidePostVictory @@ -108,34 +108,34 @@ FortreeCity_Gym_EventScript_GymGuide:: @ 8216732 release end -FortreeCity_Gym_EventScript_GymGuidePostVictory:: @ 8216747 +FortreeCity_Gym_EventScript_GymGuidePostVictory:: msgbox FortreeCity_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -FortreeCity_Gym_EventScript_LeftGymStatue:: @ 8216751 +FortreeCity_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE06_GET, FortreeCity_Gym_EventScript_GymStatueCertified goto FortreeCity_Gym_EventScript_GymStatue end -FortreeCity_Gym_EventScript_RightGymStatue:: @ 8216761 +FortreeCity_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE06_GET, FortreeCity_Gym_EventScript_GymStatueCertified goto FortreeCity_Gym_EventScript_GymStatue end -FortreeCity_Gym_EventScript_GymStatueCertified:: @ 8216771 +FortreeCity_Gym_EventScript_GymStatueCertified:: msgbox FortreeCity_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -FortreeCity_Gym_EventScript_GymStatue:: @ 821677B +FortreeCity_Gym_EventScript_GymStatue:: msgbox FortreeCity_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -FortreeCity_Gym_Text_GymGuideAdvice: @ 8216785 +FortreeCity_Gym_Text_GymGuideAdvice: .string "Yo, how's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "FORTREE GYM LEADER WINONA is\n" @@ -146,94 +146,94 @@ FortreeCity_Gym_Text_GymGuideAdvice: @ 8216785 .string "who are trying to take wing!\p" .string "Okay, go for it!$" -FortreeCity_Gym_Text_GymGuidePostVictory: @ 821687D +FortreeCity_Gym_Text_GymGuidePostVictory: .string "You did it!\n" .string "You've achieved liftoff!$" -FortreeCity_Gym_Text_JaredIntro: @ 82168A2 +FortreeCity_Gym_Text_JaredIntro: .string "Behold the elegant battle style of\n" .string "BIRD POKéMON!$" -FortreeCity_Gym_Text_JaredDefeat: @ 82168D3 +FortreeCity_Gym_Text_JaredDefeat: .string "You…\n" .string "You're strong…$" -FortreeCity_Gym_Text_JaredPostBattle: @ 82168E7 +FortreeCity_Gym_Text_JaredPostBattle: .string "A TRAINER has to be smart to keep\n" .string "up with unexpected turns of events.\p" .string "Do you have the smarts to get to\n" .string "our LEADER?$" -FortreeCity_Gym_Text_EdwardoIntro: @ 821695A +FortreeCity_Gym_Text_EdwardoIntro: .string "The lovers of BIRD POKéMON aspire\n" .string "to join this GYM.\p" .string "As a member of the FORTREE GYM,\n" .string "I'm not allowed to lose!$" -FortreeCity_Gym_Text_EdwardoDefeat: @ 82169C7 +FortreeCity_Gym_Text_EdwardoDefeat: .string "It was too much of a load for me\n" .string "to bear…$" -FortreeCity_Gym_Text_EdwardoPostBattle: @ 82169F1 +FortreeCity_Gym_Text_EdwardoPostBattle: .string "The world is huge, and there are\n" .string "countless tough TRAINERS.\p" .string "I'm going to keep training and make\n" .string "myself even stronger.$" -FortreeCity_Gym_Text_FlintIntro: @ 8216A66 +FortreeCity_Gym_Text_FlintIntro: .string "There's no need for WINONA, our GYM\n" .string "LEADER, to deal with you!\p" .string "I'm plenty good enough for you!$" -FortreeCity_Gym_Text_FlintDefeat: @ 8216AC4 +FortreeCity_Gym_Text_FlintDefeat: .string "WINONA, I…\n" .string "I lost!$" -FortreeCity_Gym_Text_FlintPostBattle: @ 8216AD7 +FortreeCity_Gym_Text_FlintPostBattle: .string "WINONA is cute and she's strong.\n" .string "She's the ultimate LEADER!\p" .string "Blush…$" -FortreeCity_Gym_Text_AshleyIntro: @ 8216B1A +FortreeCity_Gym_Text_AshleyIntro: .string "WINONA taught me personally!\n" .string "You can't beat me easily!$" -FortreeCity_Gym_Text_AshleyDefeat: @ 8216B51 +FortreeCity_Gym_Text_AshleyDefeat: .string "I was beaten…$" -FortreeCity_Gym_Text_AshleyPostBattle: @ 8216B5F +FortreeCity_Gym_Text_AshleyPostBattle: .string "Thanks to WINONA, the people of\n" .string "FORTREE can live without fear.$" -FortreeCity_Gym_Text_HumbertoIntro: @ 8216B9E +FortreeCity_Gym_Text_HumbertoIntro: .string "When WINONA takes to battle, her face\n" .string "shines with beautiful determination…\p" .string "I'm not letting you witness that\n" .string "lovely sight!$" -FortreeCity_Gym_Text_HumbertoDefeat: @ 8216C18 +FortreeCity_Gym_Text_HumbertoDefeat: .string "Urk!\n" .string "I couldn't stop you.$" -FortreeCity_Gym_Text_HumbertoPostBattle: @ 8216C32 +FortreeCity_Gym_Text_HumbertoPostBattle: .string "You'd better watch it!\n" .string "Don't get distracted staring at WINONA\l" .string "or you'll go crashing down in a heap!$" -FortreeCity_Gym_Text_DariusIntro: @ 8216C96 +FortreeCity_Gym_Text_DariusIntro: .string "You'd better know that there are all\n" .string "sorts of FLYING-type POKéMON.\p" .string "You do know that, right?$" -FortreeCity_Gym_Text_DariusDefeat: @ 8216CF2 +FortreeCity_Gym_Text_DariusDefeat: .string "You seem to know your stuff!$" -FortreeCity_Gym_Text_DariusPostBattle: @ 8216D0F +FortreeCity_Gym_Text_DariusPostBattle: .string "Sure, you beat me all right.\n" .string "But you'd better watch it! Our LEADER\l" .string "WINONA's POKéMON are all business.$" -FortreeCity_Gym_Text_WinonaIntro: @ 8216D75 +FortreeCity_Gym_Text_WinonaIntro: .string "I am WINONA. I am the LEADER of\n" .string "the FORTREE POKéMON GYM.\p" .string "I have become one with BIRD POKéMON\n" @@ -243,18 +243,18 @@ FortreeCity_Gym_Text_WinonaIntro: @ 8216D75 .string "Witness the elegant choreography\n" .string "of BIRD POKéMON and I!$" -FortreeCity_Gym_Text_WinonaDefeat: @ 8216E60 +FortreeCity_Gym_Text_WinonaDefeat: .string "Never before have I seen a TRAINER\n" .string "command POKéMON with more grace\l" .string "than I…\p" .string "In recognition of your prowess,\n" .string "I present to you this GYM BADGE.$" -FortreeCity_Gym_Text_ReceivedFeatherBadge: @ 8216EEC +FortreeCity_Gym_Text_ReceivedFeatherBadge: .string "{PLAYER} received the FEATHER BADGE\n" .string "from WINONA.$" -FortreeCity_Gym_Text_ExplainFeatherBadgeTakeThis: @ 8216F17 +FortreeCity_Gym_Text_ExplainFeatherBadgeTakeThis: .string "With the FEATHER BADGE, all POKéMON up\n" .string "to LV 70, even those received through\l" .string "trades, will obey your every command.\p" @@ -263,29 +263,29 @@ FortreeCity_Gym_Text_ExplainFeatherBadgeTakeThis: @ 8216F17 .string "And this…\n" .string "This is a gift from me.$" -FortreeCity_Gym_Text_ExplainAerialAce: @ 8216FEC +FortreeCity_Gym_Text_ExplainAerialAce: .string "TM40 contains AERIAL ACE.\p" .string "Its speed…\n" .string "No POKéMON should be able to avoid it.\p" .string "… … … … … …$" -FortreeCity_Gym_Text_RegisteredWinona: @ 8217044 +FortreeCity_Gym_Text_RegisteredWinona: .string "Registered GYM LEADER WINONA\n" .string "in the POKéNAV.$" -FortreeCity_Gym_Text_WinonaPostBattle: @ 8217071 +FortreeCity_Gym_Text_WinonaPostBattle: .string "Though I fell to you, I will remain\n" .string "devoted to BIRD POKéMON.$" -FortreeCity_Gym_Text_GymStatue: @ 82170AE +FortreeCity_Gym_Text_GymStatue: .string "FORTREE CITY POKéMON GYM$" -FortreeCity_Gym_Text_GymStatueCertified: @ 82170C7 +FortreeCity_Gym_Text_GymStatueCertified: .string "FORTREE CITY POKéMON GYM\p" .string "WINONA'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -FortreeCity_Gym_Text_WinonaPreRematch: @ 8217100 +FortreeCity_Gym_Text_WinonaPreRematch: .string "WINONA: We humans can never escape\n" .string "gravity's pull on the ground.\p" .string "But by striving for excellence,\n" @@ -295,17 +295,17 @@ FortreeCity_Gym_Text_WinonaPreRematch: @ 8217100 .string "Please, allow me to see your power\n" .string "at full flight!$" -FortreeCity_Gym_Text_WinonaRematchDefeat: @ 82171E6 +FortreeCity_Gym_Text_WinonaRematchDefeat: .string "I failed to reach your height again…$" -FortreeCity_Gym_Text_WinonaPostRematch: @ 821720B +FortreeCity_Gym_Text_WinonaPostRematch: .string "WINONA: Even though I have lost,\n" .string "the wings of my heart remain unbroken.\p" .string "I can rise and soar again and\n" .string "yet again.\p" .string "I am convinced of it!$" -FortreeCity_Gym_Text_WinonaRematchNeedTwoMons: @ 8217292 +FortreeCity_Gym_Text_WinonaRematchNeedTwoMons: .string "WINONA: We humans can never escape\n" .string "gravity's pull on the ground.\p" .string "But by striving for excellence,\n" diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc index c7f4a8d5b7a9..3dd58ca34454 100644 --- a/data/maps/FortreeCity_House1/scripts.inc +++ b/data/maps/FortreeCity_House1/scripts.inc @@ -1,7 +1,7 @@ -FortreeCity_House1_MapScripts:: @ 82162BA +FortreeCity_House1_MapScripts:: .byte 0 -FortreeCity_House1_EventScript_Trader:: @ 82162BB +FortreeCity_House1_EventScript_Trader:: lock faceplayer goto_if_set FLAG_FORTREE_NPC_TRADE_COMPLETED, FortreeCity_House1_EventScript_TradeCompleted @@ -33,27 +33,27 @@ FortreeCity_House1_EventScript_Trader:: @ 82162BB release end -FortreeCity_House1_EventScript_DeclineTrade:: @ 821633D +FortreeCity_House1_EventScript_DeclineTrade:: msgbox FortreeCity_House1_Text_YouWontTradeMe, MSGBOX_DEFAULT release end -FortreeCity_House1_EventScript_NotRequestedMon:: @ 8216347 +FortreeCity_House1_EventScript_NotRequestedMon:: bufferspeciesname 0, VAR_0x8009 msgbox FortreeCity_House1_Text_ThisIsntAMon, MSGBOX_DEFAULT release end -FortreeCity_House1_EventScript_TradeCompleted:: @ 8216355 +FortreeCity_House1_EventScript_TradeCompleted:: msgbox FortreeCity_House1_Text_GoingToMakeVolbeatStrong, MSGBOX_DEFAULT release end -FortreeCity_House1_EventScript_ExpertF:: @ 821635F +FortreeCity_House1_EventScript_ExpertF:: msgbox FortreeCity_House1_Text_TradingMemoriesWithOthers, MSGBOX_NPC end -FortreeCity_House1_EventScript_Zigzagoon:: @ 8216368 +FortreeCity_House1_EventScript_Zigzagoon:: lock faceplayer waitse @@ -63,7 +63,7 @@ FortreeCity_House1_EventScript_Zigzagoon:: @ 8216368 release end -FortreeCity_House1_Text_YouWillTradeWontYou: @ 821637B +FortreeCity_House1_Text_YouWillTradeWontYou: .string "Wrooooaaar! I need it!\n" .string "I have to get me a {STR_VAR_1}!\l" .string "I'll do anything for it!\p" @@ -73,29 +73,29 @@ FortreeCity_House1_Text_YouWillTradeWontYou: @ 821637B .string "your {STR_VAR_1} for my {STR_VAR_2},\l" .string "won't you?$" -FortreeCity_House1_Text_MonYouTakeCare: @ 8216440 +FortreeCity_House1_Text_MonYouTakeCare: .string "Oh, yeah, right on!\p" .string "{STR_VAR_1}, welcome!\n" .string "{STR_VAR_2}, you take care!$" -FortreeCity_House1_Text_ThisIsntAMon: @ 8216474 +FortreeCity_House1_Text_ThisIsntAMon: .string "Uh, no, I don't think so.\n" .string "That isn't a {STR_VAR_1}.$" -FortreeCity_House1_Text_YouWontTradeMe: @ 821649F +FortreeCity_House1_Text_YouWontTradeMe: .string "No? You won't trade me?\n" .string "Even after I bared my heart to you?$" -FortreeCity_House1_Text_GoingToMakeVolbeatStrong: @ 82164DB +FortreeCity_House1_Text_GoingToMakeVolbeatStrong: .string "I'm going to make VOLBEAT super\n" .string "strong from this moment on!\p" .string "I hope you do the same with PLUSLE!$" -FortreeCity_House1_Text_TradingMemoriesWithOthers: @ 821653B +FortreeCity_House1_Text_TradingMemoriesWithOthers: .string "Trading POKéMON with others…\p" .string "It's as if you're trading your own\n" .string "memories with other people.$" -FortreeCity_House1_Text_Zigzagoon: @ 8216597 +FortreeCity_House1_Text_Zigzagoon: .string "ZIGZAGOON: Gumomoh?$" diff --git a/data/maps/FortreeCity_House2/scripts.inc b/data/maps/FortreeCity_House2/scripts.inc index 394ad9ffc28d..29e9ea93cfe7 100644 --- a/data/maps/FortreeCity_House2/scripts.inc +++ b/data/maps/FortreeCity_House2/scripts.inc @@ -1,7 +1,7 @@ -FortreeCity_House2_MapScripts:: @ 82177CA +FortreeCity_House2_MapScripts:: .byte 0 -FortreeCity_House2_EventScript_HiddenPowerGiver:: @ 82177CB +FortreeCity_House2_EventScript_HiddenPowerGiver:: lock faceplayer goto_if_set FLAG_RECEIVED_TM10, FortreeCity_House2_EventScript_ExplainHiddenPower @@ -27,56 +27,56 @@ FortreeCity_House2_EventScript_HiddenPowerGiver:: @ 82177CB release end -FortreeCity_House2_EventScript_Greeting:: @ 8217862 +FortreeCity_House2_EventScript_Greeting:: msgbox FortreeCity_House2_Text_HiddenPowersArousedByNature, MSGBOX_DEFAULT setflag FLAG_MET_HIDDEN_POWER_GIVER return -FortreeCity_House2_EventScript_ExplainHiddenPower:: @ 821786E +FortreeCity_House2_EventScript_ExplainHiddenPower:: msgbox FortreeCity_House2_Text_ExplainHiddenPower, MSGBOX_DEFAULT release end -FortreeCity_House2_EventScript_WrongGuess:: @ 8217878 +FortreeCity_House2_EventScript_WrongGuess:: msgbox FortreeCity_House2_Text_YouGuessedWrong, MSGBOX_DEFAULT release end -FortreeCity_House2_Text_HiddenPowersArousedByNature: @ 8217882 +FortreeCity_House2_Text_HiddenPowersArousedByNature: .string "People… POKéMON…\p" .string "Their hidden powers are aroused by\n" .string "living in natural environments…$" -FortreeCity_House2_Text_CoinInWhichHand: @ 82178D6 +FortreeCity_House2_Text_CoinInWhichHand: .string "Let this old woman see if your hidden\n" .string "power has awoken…\p" .string "I hold a coin in my hand.\p" .string "Now, tell me, have I palmed it in\n" .string "the right hand? Or in the left?$" -FortreeCity_House2_Text_CorrectTryAgainWhichHand: @ 821796A +FortreeCity_House2_Text_CorrectTryAgainWhichHand: .string "Oh! Yes, correct!\p" .string "We shall try again.\p" .string "In which hand have I palmed the coin?\n" .string "The right or left?$" -FortreeCity_House2_Text_CorrectTryAgainWhichHand2: @ 82179C9 +FortreeCity_House2_Text_CorrectTryAgainWhichHand2: .string "Oh! Yes, correct!\p" .string "We shall try again.\p" .string "In which hand have I palmed the coin?\n" .string "The right or left?$" -FortreeCity_House2_Text_YourHiddenPowerHasAwoken: @ 8217A28 +FortreeCity_House2_Text_YourHiddenPowerHasAwoken: .string "Oh! Splendid!\n" .string "Your hidden power has awoken!\p" .string "Here, take this and awaken the hidden\n" .string "power of your POKéMON.$" -FortreeCity_House2_Text_ExplainHiddenPower: @ 8217A91 +FortreeCity_House2_Text_ExplainHiddenPower: .string "HIDDEN POWER is a move that changes\n" .string "with the POKéMON.$" -FortreeCity_House2_Text_YouGuessedWrong: @ 8217AC7 +FortreeCity_House2_Text_YouGuessedWrong: .string "No, too bad.\n" .string "You guessed wrong.$" diff --git a/data/maps/FortreeCity_House3/scripts.inc b/data/maps/FortreeCity_House3/scripts.inc index 396bd4b22234..1ae5a1ecbedc 100644 --- a/data/maps/FortreeCity_House3/scripts.inc +++ b/data/maps/FortreeCity_House3/scripts.inc @@ -1,15 +1,15 @@ -FortreeCity_House3_MapScripts:: @ 8217AE7 +FortreeCity_House3_MapScripts:: .byte 0 -FortreeCity_House3_EventScript_Maniac:: @ 8217AE8 +FortreeCity_House3_EventScript_Maniac:: msgbox FortreeCity_House3_Text_MetStevenHadAmazingPokemon, MSGBOX_NPC end -FortreeCity_House3_EventScript_SchoolKidM:: @ 8217AF1 +FortreeCity_House3_EventScript_SchoolKidM:: msgbox FortreeCity_House3_Text_OhYouHavePokedex, MSGBOX_NPC end -FortreeCity_House3_Text_MetStevenHadAmazingPokemon: @ 8217AFA +FortreeCity_House3_Text_MetStevenHadAmazingPokemon: .string "While speaking about POKéDEXES,\n" .string "I remembered something.\p" .string "I met this TRAINER, STEVEN, when\n" @@ -21,7 +21,7 @@ FortreeCity_House3_Text_MetStevenHadAmazingPokemon: @ 8217AFA .string "He might even be stronger than the\n" .string "GYM LEADER in this town…$" -FortreeCity_House3_Text_OhYouHavePokedex: @ 8217C22 +FortreeCity_House3_Text_OhYouHavePokedex: .string "What's that thing you have there?\p" .string "… … … … … …\p" .string "Oh, it's called a POKéDEX?\n" diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc index 891e8eb75057..8a6d71eb4d3d 100644 --- a/data/maps/FortreeCity_House4/scripts.inc +++ b/data/maps/FortreeCity_House4/scripts.inc @@ -1,13 +1,13 @@ .set LOCALID_WINGULL, 3 -FortreeCity_House4_MapScripts:: @ 8217C80 +FortreeCity_House4_MapScripts:: .byte 0 -FortreeCity_House4_EventScript_Woman:: @ 8217C81 +FortreeCity_House4_EventScript_Woman:: msgbox FortreeCity_House4_Text_BringsWorldCloserTogether, MSGBOX_NPC end -FortreeCity_House4_EventScript_Boy:: @ 8217C8A +FortreeCity_House4_EventScript_Boy:: lockall goto_if_set FLAG_RECEIVED_MENTAL_HERB, FortreeCity_House4_EventScript_ReceivedMentalHerb goto_if_set FLAG_WINGULL_DELIVERED_MAIL, FortreeCity_House4_EventScript_WingullReturned @@ -22,14 +22,14 @@ FortreeCity_House4_EventScript_Boy:: @ 8217C8A releaseall end -FortreeCity_House4_EventScript_WingullOnErrand:: @ 8217CC4 +FortreeCity_House4_EventScript_WingullOnErrand:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox FortreeCity_House4_Text_AskedWingullToRunErrand, MSGBOX_DEFAULT releaseall end -FortreeCity_House4_EventScript_WingullReturned:: @ 8217CD8 +FortreeCity_House4_EventScript_WingullReturned:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox FortreeCity_House4_Text_WelcomeWingullTakeMentalHerb, MSGBOX_DEFAULT @@ -40,14 +40,14 @@ FortreeCity_House4_EventScript_WingullReturned:: @ 8217CD8 releaseall end -FortreeCity_House4_EventScript_ReceivedMentalHerb:: @ 8217D06 +FortreeCity_House4_EventScript_ReceivedMentalHerb:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox FortreeCity_House4_Text_FriendsFarAwayThanksToWingull, MSGBOX_DEFAULT releaseall end -FortreeCity_House4_Movement_WingullExit: @ 8217D1A +FortreeCity_House4_Movement_WingullExit: walk_fast_down walk_fast_down walk_fast_right @@ -55,7 +55,7 @@ FortreeCity_House4_Movement_WingullExit: @ 8217D1A delay_8 step_end -FortreeCity_House4_EventScript_Wingull:: @ 8217D20 +FortreeCity_House4_EventScript_Wingull:: lock faceplayer waitse @@ -65,21 +65,21 @@ FortreeCity_House4_EventScript_Wingull:: @ 8217D20 release end -FortreeCity_House4_Text_BringsWorldCloserTogether: @ 8217D33 +FortreeCity_House4_Text_BringsWorldCloserTogether: .string "By being together with POKéMON,\n" .string "people make more and more friends.\p" .string "And that brings the world closer\n" .string "together. I think it's wonderful!$" -FortreeCity_House4_Text_GoBirdPokemon: @ 8217DB9 +FortreeCity_House4_Text_GoBirdPokemon: .string "There!\n" .string "Go, BIRD POKéMON!$" -FortreeCity_House4_Text_AskedWingullToRunErrand: @ 8217DD2 +FortreeCity_House4_Text_AskedWingullToRunErrand: .string "Heheh, I asked my WINGULL to run\n" .string "an errand for me.$" -FortreeCity_House4_Text_WelcomeWingullTakeMentalHerb: @ 8217E05 +FortreeCity_House4_Text_WelcomeWingullTakeMentalHerb: .string "Good!\n" .string "Welcome back, WINGULL!\p" .string "Huh? What is this?\n" @@ -89,10 +89,10 @@ FortreeCity_House4_Text_WelcomeWingullTakeMentalHerb: @ 8217E05 .string "But I'm not a TRAINER, so you can\n" .string "have it.$" -FortreeCity_House4_Text_FriendsFarAwayThanksToWingull: @ 8217EA8 +FortreeCity_House4_Text_FriendsFarAwayThanksToWingull: .string "Thanks to my WINGULL, I have friends\n" .string "who live far away.$" -FortreeCity_House4_Text_Wingull: @ 8217EE0 +FortreeCity_House4_Text_Wingull: .string "WINGULL: Pihyoh!$" diff --git a/data/maps/FortreeCity_House5/scripts.inc b/data/maps/FortreeCity_House5/scripts.inc index 4d27c2f0614b..71fcc78cadde 100644 --- a/data/maps/FortreeCity_House5/scripts.inc +++ b/data/maps/FortreeCity_House5/scripts.inc @@ -1,15 +1,15 @@ -FortreeCity_House5_MapScripts:: @ 8217EF1 +FortreeCity_House5_MapScripts:: .byte 0 -FortreeCity_House5_EventScript_PokefanF:: @ 8217EF2 +FortreeCity_House5_EventScript_PokefanF:: msgbox FortreeCity_House5_Text_TreeHousesAreGreat, MSGBOX_NPC end -FortreeCity_House5_EventScript_Man:: @ 8217EFB +FortreeCity_House5_EventScript_Man:: msgbox FortreeCity_House5_Text_AdaptedToNature, MSGBOX_NPC end -FortreeCity_House5_EventScript_Zigzagoon:: @ 8217F04 +FortreeCity_House5_EventScript_Zigzagoon:: lock faceplayer waitse @@ -19,17 +19,17 @@ FortreeCity_House5_EventScript_Zigzagoon:: @ 8217F04 release end -FortreeCity_House5_Text_TreeHousesAreGreat: @ 8217F17 +FortreeCity_House5_Text_TreeHousesAreGreat: .string "The tree houses of FORTREE are great!\p" .string "I think it's the number one town for\n" .string "living together with POKéMON.$" -FortreeCity_House5_Text_AdaptedToNature: @ 8217F80 +FortreeCity_House5_Text_AdaptedToNature: .string "POKéMON and people have adapted to\n" .string "nature for survival.\p" .string "There's no need to make nature\n" .string "conform to the way we want to live.$" -FortreeCity_House5_Text_Zigzagoon: @ 8217FFB +FortreeCity_House5_Text_Zigzagoon: .string "ZIGZAGOON: Bufuu!$" diff --git a/data/maps/FortreeCity_Mart/scripts.inc b/data/maps/FortreeCity_Mart/scripts.inc index 05318e7bdce3..c37716bc85a1 100644 --- a/data/maps/FortreeCity_Mart/scripts.inc +++ b/data/maps/FortreeCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -FortreeCity_Mart_MapScripts:: @ 8217665 +FortreeCity_Mart_MapScripts:: .byte 0 -FortreeCity_Mart_EventScript_Clerk:: @ 8217666 +FortreeCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ FortreeCity_Mart_EventScript_Clerk:: @ 8217666 end .align 2 -FortreeCity_Mart_Pokemart: @ 8217680 +FortreeCity_Mart_Pokemart: .2byte ITEM_GREAT_BALL .2byte ITEM_ULTRA_BALL .2byte ITEM_SUPER_POTION @@ -27,31 +27,31 @@ FortreeCity_Mart_Pokemart: @ 8217680 release end -FortreeCity_Mart_EventScript_Woman:: @ 8217698 +FortreeCity_Mart_EventScript_Woman:: msgbox FortreeCity_Mart_Text_SuperRepelBetter, MSGBOX_NPC end -FortreeCity_Mart_EventScript_Girl:: @ 82176A1 +FortreeCity_Mart_EventScript_Girl:: msgbox FortreeCity_Mart_Text_StockUpOnItems, MSGBOX_NPC end -FortreeCity_Mart_EventScript_Boy:: @ 82176AA +FortreeCity_Mart_EventScript_Boy:: msgbox FortreeCity_Mart_Text_RareCandyMakesMonGrow, MSGBOX_NPC end -FortreeCity_Mart_Text_SuperRepelBetter: @ 82176B3 +FortreeCity_Mart_Text_SuperRepelBetter: .string "SUPER REPEL lasts a long time,\n" .string "and it gets the job done.\p" .string "It's much better than an ordinary\n" .string "REPEL.$" -FortreeCity_Mart_Text_StockUpOnItems: @ 8217715 +FortreeCity_Mart_Text_StockUpOnItems: .string "I always stock up on more items than\n" .string "I'm sure I'll need.\p" .string "You never know what might happen.\n" .string "Better to be safe than sorry!$" -FortreeCity_Mart_Text_RareCandyMakesMonGrow: @ 821778E +FortreeCity_Mart_Text_RareCandyMakesMonGrow: .string "A RARE CANDY makes a POKéMON grow\n" .string "immediately by one level.$" diff --git a/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc b/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc index 5be9e6616f94..d1ea3d864802 100644 --- a/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_NURSE, 1 -FortreeCity_PokemonCenter_1F_MapScripts:: @ 82173D8 +FortreeCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, FortreeCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -FortreeCity_PokemonCenter_1F_OnTransition: @ 82173E3 +FortreeCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_FORTREE_CITY end -FortreeCity_PokemonCenter_1F_EventScript_Nurse:: @ 82173E7 +FortreeCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -17,25 +17,25 @@ FortreeCity_PokemonCenter_1F_EventScript_Nurse:: @ 82173E7 release end -FortreeCity_PokemonCenter_1F_EventScript_Gentleman:: @ 82173F5 +FortreeCity_PokemonCenter_1F_EventScript_Gentleman:: msgbox FortreeCity_PokemonCenter_1F_Text_GoToSafariZone, MSGBOX_NPC end -FortreeCity_PokemonCenter_1F_EventScript_Man:: @ 82173FE +FortreeCity_PokemonCenter_1F_EventScript_Man:: msgbox FortreeCity_PokemonCenter_1F_Text_RecordCornerIsNeat, MSGBOX_NPC end -FortreeCity_PokemonCenter_1F_EventScript_Boy:: @ 8217407 +FortreeCity_PokemonCenter_1F_EventScript_Boy:: msgbox FortreeCity_PokemonCenter_1F_Text_DoYouKnowAboutPokenav, MSGBOX_NPC end -FortreeCity_PokemonCenter_1F_Text_GoToSafariZone: @ 8217410 +FortreeCity_PokemonCenter_1F_Text_GoToSafariZone: .string "Listen, kid, are you working\n" .string "on a POKéDEX?\p" .string "Hmm… Go to the SAFARI ZONE.\n" .string "That's my suggestion.$" -FortreeCity_PokemonCenter_1F_Text_RecordCornerIsNeat: @ 821746D +FortreeCity_PokemonCenter_1F_Text_RecordCornerIsNeat: .string "Have you done anything at\n" .string "the RECORD CORNER?\p" .string "It's pretty neat. It mixes and matches\n" @@ -43,7 +43,7 @@ FortreeCity_PokemonCenter_1F_Text_RecordCornerIsNeat: @ 821746D .string "I don't know quite how it works,\n" .string "but it's cool. It's exciting, even!$" -FortreeCity_PokemonCenter_1F_Text_DoYouKnowAboutPokenav: @ 821751F +FortreeCity_PokemonCenter_1F_Text_DoYouKnowAboutPokenav: .string "Oh, wow, you have a POKéNAV!\n" .string "And it's just like mine!\p" .string "Do you know about POKéNAV's\n" diff --git a/data/maps/FortreeCity_PokemonCenter_2F/scripts.inc b/data/maps/FortreeCity_PokemonCenter_2F/scripts.inc index 183dbece0ba2..cebae6b48508 100644 --- a/data/maps/FortreeCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/FortreeCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -FortreeCity_PokemonCenter_2F_MapScripts:: @ 821763E +FortreeCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ FortreeCity_PokemonCenter_2F_MapScripts:: @ 821763E .byte 0 @ The below 3 are unused and leftover from RS -FortreeCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8217653 +FortreeCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -FortreeCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8217659 +FortreeCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -FortreeCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 821765F +FortreeCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/GraniteCave_1F/scripts.inc b/data/maps/GraniteCave_1F/scripts.inc index a35147691961..1bf81b997b22 100644 --- a/data/maps/GraniteCave_1F/scripts.inc +++ b/data/maps/GraniteCave_1F/scripts.inc @@ -1,7 +1,7 @@ -GraniteCave_1F_MapScripts:: @ 822DA5D +GraniteCave_1F_MapScripts:: .byte 0 -GraniteCave_1F_EventScript_Hiker:: @ 822DA5E +GraniteCave_1F_EventScript_Hiker:: lock faceplayer goto_if_set FLAG_RECEIVED_HM05, GraniteCave_1F_EventScript_ReceivedFlash @@ -12,12 +12,12 @@ GraniteCave_1F_EventScript_Hiker:: @ 822DA5E release end -GraniteCave_1F_EventScript_ReceivedFlash:: @ 822DA8A +GraniteCave_1F_EventScript_ReceivedFlash:: msgbox GraniteCave_1F_Text_ExplainFlash, MSGBOX_DEFAULT release end -GraniteCave_1F_Text_GetsDarkAheadHereYouGo: @ 822DA94 +GraniteCave_1F_Text_GetsDarkAheadHereYouGo: .string "Hey, you.\n" .string "It gets awfully dark ahead.\l" .string "It'll be tough trying to explore.\p" @@ -29,7 +29,7 @@ GraniteCave_1F_Text_GetsDarkAheadHereYouGo: @ 822DA94 .string "that we meet is our motto.\p" .string "Here you go, I'll pass this on to you.$" -GraniteCave_1F_Text_ExplainFlash: @ 822DBB7 +GraniteCave_1F_Text_ExplainFlash: .string "Teach that hidden move FLASH to\n" .string "a POKéMON and use it.\p" .string "It lights up even the inky darkness\n" diff --git a/data/maps/GraniteCave_B1F/scripts.inc b/data/maps/GraniteCave_B1F/scripts.inc index f465b0694bbb..f1b52ce6626a 100644 --- a/data/maps/GraniteCave_B1F/scripts.inc +++ b/data/maps/GraniteCave_B1F/scripts.inc @@ -1,10 +1,10 @@ -GraniteCave_B1F_MapScripts:: @ 822DC5E +GraniteCave_B1F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, CaveHole_FixCrackedGround map_script MAP_SCRIPT_ON_RESUME, GraniteCave_B1F_SetHoleWarp .byte 0 -GraniteCave_B1F_SetHoleWarp: @ 822DC6E +GraniteCave_B1F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_GRANITE_CAVE_B2F, 255, 0, 0 end diff --git a/data/maps/GraniteCave_B2F/scripts.inc b/data/maps/GraniteCave_B2F/scripts.inc index d8cacbe387b1..ac09ee9e92f9 100644 --- a/data/maps/GraniteCave_B2F/scripts.inc +++ b/data/maps/GraniteCave_B2F/scripts.inc @@ -1,3 +1,3 @@ -GraniteCave_B2F_MapScripts:: @ 822DC79 +GraniteCave_B2F_MapScripts:: .byte 0 diff --git a/data/maps/GraniteCave_StevensRoom/scripts.inc b/data/maps/GraniteCave_StevensRoom/scripts.inc index 650177b95542..73c50b70a51a 100644 --- a/data/maps/GraniteCave_StevensRoom/scripts.inc +++ b/data/maps/GraniteCave_StevensRoom/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_STEVEN, 1 -GraniteCave_StevensRoom_MapScripts:: @ 822DC7A +GraniteCave_StevensRoom_MapScripts:: .byte 0 -GraniteCave_StevensRoom_EventScript_Steven:: @ 822DC7B +GraniteCave_StevensRoom_EventScript_Steven:: lock faceplayer msgbox GraniteCave_StevensRoom_Text_ImStevenLetterForMe, MSGBOX_DEFAULT @@ -38,28 +38,28 @@ GraniteCave_StevensRoom_EventScript_Steven:: @ 822DC7B release end -GraniteCave_StevensRoom_EventScript_StevenExitNorth:: @ 822DD0D +GraniteCave_StevensRoom_EventScript_StevenExitNorth:: applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit waitmovement 0 return -GraniteCave_StevensRoom_EventScript_StevenExitWestEast:: @ 822DD18 +GraniteCave_StevensRoom_EventScript_StevenExitWestEast:: applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit waitmovement 0 return -GraniteCave_StevensRoom_EventScript_StevenExitSouth:: @ 822DD2A +GraniteCave_StevensRoom_EventScript_StevenExitSouth:: applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExitSouth waitmovement 0 return -GraniteCave_StevensRoom_EventScript_BagFull:: @ 822DD3C +GraniteCave_StevensRoom_EventScript_BagFull:: msgbox GraniteCave_StevensRoom_Text_OhBagIsFull, MSGBOX_DEFAULT return -GraniteCave_StevensRoom_Movement_StevenExit: @ 822DD45 +GraniteCave_StevensRoom_Movement_StevenExit: walk_up walk_up walk_up @@ -68,14 +68,14 @@ GraniteCave_StevensRoom_Movement_StevenExit: @ 822DD45 delay_8 step_end -GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit: @ 822DD4C +GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit: delay_16 delay_16 delay_16 walk_in_place_fastest_up step_end -GraniteCave_StevensRoom_Movement_StevenExitSouth: @ 822DD51 +GraniteCave_StevensRoom_Movement_StevenExitSouth: walk_left walk_up walk_up @@ -86,14 +86,14 @@ GraniteCave_StevensRoom_Movement_StevenExitSouth: @ 822DD51 delay_8 step_end -GraniteCave_StevensRoom_Text_ImStevenLetterForMe: @ 822DD5A +GraniteCave_StevensRoom_Text_ImStevenLetterForMe: .string "My name is STEVEN.\p" .string "I'm interested in rare stones,\n" .string "so I travel here and there.\p" .string "Oh?\n" .string "A LETTER for me?$" -GraniteCave_StevensRoom_Text_ThankYouTakeThis: @ 822DDBD +GraniteCave_StevensRoom_Text_ThankYouTakeThis: .string "STEVEN: Okay, thank you.\p" .string "You went through all this trouble to\n" .string "deliver that. I need to thank you.\p" @@ -102,7 +102,7 @@ GraniteCave_StevensRoom_Text_ThankYouTakeThis: @ 822DDBD .string "It contains my favorite move,\n" .string "STEEL WING.$" -GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister: @ 822DE6B +GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister: .string "STEVEN: Your POKéMON appear quite\n" .string "capable.\p" .string "If you keep training, you could even\n" @@ -113,14 +113,14 @@ GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister: @ 822DE6B .string "our POKéNAVS.\p" .string "… … … … … …$" -GraniteCave_StevensRoom_Text_RegisteredSteven: @ 822DF6A +GraniteCave_StevensRoom_Text_RegisteredSteven: .string "Registered STEVEN\n" .string "in the POKéNAV.$" -GraniteCave_StevensRoom_Text_IveGotToHurryAlong: @ 822DF8C +GraniteCave_StevensRoom_Text_IveGotToHurryAlong: .string "Now, I've got to hurry along.$" -GraniteCave_StevensRoom_Text_OhBagIsFull: @ 822DFAA +GraniteCave_StevensRoom_Text_OhBagIsFull: .string "Oh, your BAG is full…\n" .string "That's too bad, then.$" diff --git a/data/maps/InsideOfTruck/scripts.inc b/data/maps/InsideOfTruck/scripts.inc index fb75273cc440..3068b11841c5 100644 --- a/data/maps/InsideOfTruck/scripts.inc +++ b/data/maps/InsideOfTruck/scripts.inc @@ -1,19 +1,19 @@ -InsideOfTruck_MapScripts:: @ 823BEDA +InsideOfTruck_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, InsideOfTruck_OnLoad map_script MAP_SCRIPT_ON_RESUME, InsideOfTruck_OnResume .byte 0 -InsideOfTruck_OnLoad: @ 823BEE5 +InsideOfTruck_OnLoad: setmetatile 4, 1, METATILE_InsideOfTruck_ExitLight_Top, 0 setmetatile 4, 2, METATILE_InsideOfTruck_ExitLight_Mid, 0 setmetatile 4, 3, METATILE_InsideOfTruck_ExitLight_Bottom, 0 end -InsideOfTruck_OnResume: @ 823BF01 +InsideOfTruck_OnResume: setstepcallback STEP_CB_TRUCK end -InsideOfTruck_EventScript_SetIntroFlags:: @ 823BF04 +InsideOfTruck_EventScript_SetIntroFlags:: lockall setflag FLAG_HIDE_MAP_NAME_POPUP checkplayergender @@ -23,7 +23,7 @@ InsideOfTruck_EventScript_SetIntroFlags:: @ 823BF04 goto_if_eq InsideOfTruck_EventScript_SetIntroFlagsFemale end -InsideOfTruck_EventScript_SetIntroFlagsMale:: @ 823BF20 +InsideOfTruck_EventScript_SetIntroFlagsMale:: setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F setvar VAR_LITTLEROOT_INTRO_STATE, 1 setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MOM @@ -36,7 +36,7 @@ InsideOfTruck_EventScript_SetIntroFlagsMale:: @ 823BF20 releaseall end -InsideOfTruck_EventScript_SetIntroFlagsFemale:: @ 823BF46 +InsideOfTruck_EventScript_SetIntroFlagsFemale:: setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F setvar VAR_LITTLEROOT_INTRO_STATE, 2 setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_MOM @@ -49,11 +49,11 @@ InsideOfTruck_EventScript_SetIntroFlagsFemale:: @ 823BF46 releaseall end -InsideOfTruck_EventScript_MovingBox:: @ 823BF6C +InsideOfTruck_EventScript_MovingBox:: msgbox InsideOfTruck_Text_BoxPrintedWithMonLogo, MSGBOX_SIGN end -InsideOfTruck_Text_BoxPrintedWithMonLogo: @ 823BF75 +InsideOfTruck_Text_BoxPrintedWithMonLogo: .string "The box is printed with a POKéMON logo.\p" .string "It's a POKéMON brand moving and\n" .string "delivery service.$" diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc index 56643a5040cb..af93863b7c05 100644 --- a/data/maps/IslandCave/scripts.inc +++ b/data/maps/IslandCave/scripts.inc @@ -1,25 +1,25 @@ -IslandCave_MapScripts:: @ 8238E2A +IslandCave_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, IslandCave_OnResume map_script MAP_SCRIPT_ON_LOAD, IslandCave_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, IslandCave_OnTransition .byte 0 -IslandCave_OnResume: @ 8238E3A +IslandCave_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, IslandCave_EventScript_TryRemoveRegice end -IslandCave_EventScript_TryRemoveRegice:: @ 8238E44 +IslandCave_EventScript_TryRemoveRegice:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -IslandCave_OnLoad: @ 8238E58 +IslandCave_OnLoad: call_if_unset FLAG_SYS_BRAILLE_REGICE_COMPLETED, IslandCave_EventScript_HideRegiEntrance end -IslandCave_EventScript_HideRegiEntrance:: @ 8238E62 +IslandCave_EventScript_HideRegiEntrance:: setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 @@ -28,17 +28,17 @@ IslandCave_EventScript_HideRegiEntrance:: @ 8238E62 setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 return -IslandCave_OnTransition: @ 8238E99 +IslandCave_OnTransition: setflag FLAG_LANDMARK_ISLAND_CAVE call IslandCave_EventScript_ClearSteps call_if_unset FLAG_DEFEATED_REGICE, IslandCave_EventScript_ShowRegice end -IslandCave_EventScript_ShowRegice:: @ 8238EAB +IslandCave_EventScript_ShowRegice:: clearflag FLAG_HIDE_REGICE return -IslandCave_EventScript_OpenRegiEntrance:: @ 8238EAF +IslandCave_EventScript_OpenRegiEntrance:: setmetatile 7, 19, METATILE_Cave_SealedChamberEntrance_TopLeft, 1 setmetatile 8, 19, METATILE_Cave_SealedChamberEntrance_TopMid, 1 setmetatile 9, 19, METATILE_Cave_SealedChamberEntrance_TopRight, 1 @@ -50,7 +50,7 @@ IslandCave_EventScript_OpenRegiEntrance:: @ 8238EAF setflag FLAG_SYS_BRAILLE_REGICE_COMPLETED end -IslandCave_EventScript_CaveEntranceMiddle:: @ 8238EEF +IslandCave_EventScript_CaveEntranceMiddle:: lockall call_if_set FLAG_TEMP_3, IslandCave_EventScript_ClearSteps goto_if_set FLAG_SYS_BRAILLE_REGICE_COMPLETED, IslandCave_EventScript_BigHoleInWall @@ -60,12 +60,12 @@ IslandCave_EventScript_CaveEntranceMiddle:: @ 8238EEF goto IslandCave_EventScript_CloseBrailleMsg end -IslandCave_EventScript_BigHoleInWall:: @ 8238F13 +IslandCave_EventScript_BigHoleInWall:: msgbox gText_BigHoleInTheWall, MSGBOX_DEFAULT releaseall end -IslandCave_EventScript_CaveEntranceSide:: @ 8238F1D +IslandCave_EventScript_CaveEntranceSide:: lockall call_if_set FLAG_TEMP_3, IslandCave_EventScript_ClearSteps braillemessage IslandCave_Braille_RunLapAroundWall @@ -75,20 +75,20 @@ IslandCave_EventScript_CaveEntranceSide:: @ 8238F1D goto IslandCave_EventScript_CloseBrailleMsg end -IslandCave_EventScript_CloseBrailleMsg:: @ 8238F41 +IslandCave_EventScript_CloseBrailleMsg:: waitbuttonpress closebraillemessage releaseall end -IslandCave_EventScript_ClearSteps:: @ 8238F45 +IslandCave_EventScript_ClearSteps:: setvar VAR_REGICE_STEPS_1, 0 setvar VAR_REGICE_STEPS_2, 0 setvar VAR_REGICE_STEPS_3, 0 clearflag FLAG_TEMP_3 return -IslandCave_EventScript_Regice:: @ 8238F58 +IslandCave_EventScript_Regice:: lock faceplayer waitse @@ -111,12 +111,12 @@ IslandCave_EventScript_Regice:: @ 8238F58 release end -IslandCave_EventScript_DefeatedRegice:: @ 8238F9F +IslandCave_EventScript_DefeatedRegice:: setflag FLAG_DEFEATED_REGICE goto Common_EventScript_RemoveStaticPokemon end -IslandCave_EventScript_RanFromRegice:: @ 8238FA8 +IslandCave_EventScript_RanFromRegice:: setvar VAR_0x8004, SPECIES_REGICE goto Common_EventScript_LegendaryFlewAway end diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc index c7fc95676a31..754ee00cf5bb 100644 --- a/data/maps/JaggedPass/scripts.inc +++ b/data/maps/JaggedPass/scripts.inc @@ -1,48 +1,48 @@ .set LOCALID_HIDEOUT_GUARD, 5 -JaggedPass_MapScripts:: @ 8230656 +JaggedPass_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, JaggedPass_OnResume map_script MAP_SCRIPT_ON_TRANSITION, JaggedPass_OnTransition map_script MAP_SCRIPT_ON_LOAD, JaggedPass_OnLoad .byte 0 -JaggedPass_OnResume: @ 8230666 +JaggedPass_OnResume: setstepcallback STEP_CB_ASH compare VAR_JAGGED_PASS_STATE, 0 call_if_eq JaggedPass_EventScript_CheckHasMagmaEmblem end -JaggedPass_EventScript_CheckHasMagmaEmblem:: @ 8230674 +JaggedPass_EventScript_CheckHasMagmaEmblem:: checkitem ITEM_MAGMA_EMBLEM, 1 compare VAR_RESULT, TRUE goto_if_eq JaggedPass_EventScript_SetReadyToOpenHideout return -JaggedPass_EventScript_SetReadyToOpenHideout:: @ 8230685 +JaggedPass_EventScript_SetReadyToOpenHideout:: setvar VAR_JAGGED_PASS_STATE, 1 return -JaggedPass_OnTransition: @ 823068B +JaggedPass_OnTransition: compare VAR_JAGGED_PASS_ASH_WEATHER, 1 call_if_eq JaggedPass_EventScript_SetWeatherAsh end -JaggedPass_EventScript_SetWeatherAsh:: @ 8230697 +JaggedPass_EventScript_SetWeatherAsh:: setweather WEATHER_VOLCANIC_ASH doweather return -JaggedPass_OnLoad: @ 823069C +JaggedPass_OnLoad: compare VAR_JAGGED_PASS_STATE, 1 goto_if_le JaggedPass_EventScript_ConcealHideoutEntrance end -JaggedPass_EventScript_ConcealHideoutEntrance:: @ 82306A8 +JaggedPass_EventScript_ConcealHideoutEntrance:: setmetatile 16, 17, METATILE_Lavaridge_RockWall, 1 setmetatile 16, 18, METATILE_Lavaridge_RockWall, 1 end -JaggedPass_EventScript_OpenMagmaHideout:: @ 82306BB +JaggedPass_EventScript_OpenMagmaHideout:: lockall setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan @@ -68,7 +68,7 @@ JaggedPass_EventScript_OpenMagmaHideout:: @ 82306BB releaseall end -JaggedPass_EventScript_MagmaHideoutGuard:: @ 8230718 +JaggedPass_EventScript_MagmaHideoutGuard:: lockall goto_if_set FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS, JaggedPass_EventScript_GuardDefeated waitse @@ -88,7 +88,7 @@ JaggedPass_EventScript_MagmaHideoutGuard:: @ 8230718 releaseall end -JaggedPass_EventScript_GuardDefeated:: @ 8230766 +JaggedPass_EventScript_GuardDefeated:: applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_FacePlayer waitmovement 0 msgbox JaggedPass_Text_GoWhereverYouWant, MSGBOX_DEFAULT @@ -98,12 +98,12 @@ JaggedPass_EventScript_GuardDefeated:: @ 8230766 releaseall end -JaggedPass_EventScript_Eric:: @ 8230785 +JaggedPass_EventScript_Eric:: trainerbattle_single TRAINER_ERIC, JaggedPass_Text_EricIntro, JaggedPass_Text_EricDefeat msgbox JaggedPass_Text_EricPostBattle, MSGBOX_AUTOCLOSE end -JaggedPass_EventScript_Diana:: @ 823079C +JaggedPass_EventScript_Diana:: trainerbattle_single TRAINER_DIANA_1, JaggedPass_Text_DianaIntro, JaggedPass_Text_DianaDefeat, JaggedPass_EventScript_RegisterDiana specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -112,19 +112,19 @@ JaggedPass_EventScript_Diana:: @ 823079C release end -JaggedPass_EventScript_RegisterDiana:: @ 82307C8 +JaggedPass_EventScript_RegisterDiana:: special PlayerFaceTrainerAfterBattle msgbox JaggedPass_Text_DianaRegister, MSGBOX_DEFAULT register_matchcall TRAINER_DIANA_1 release end -JaggedPass_EventScript_DianaRematch:: @ 82307E4 +JaggedPass_EventScript_DianaRematch:: trainerbattle_rematch TRAINER_DIANA_1, JaggedPass_Text_DianaRematchIntro, JaggedPass_Text_DianaRematchDefeat msgbox JaggedPass_Text_DianaPostRematch, MSGBOX_AUTOCLOSE end -JaggedPass_EventScript_Ethan:: @ 82307FB +JaggedPass_EventScript_Ethan:: trainerbattle_single TRAINER_ETHAN_1, JaggedPass_Text_EthanIntro, JaggedPass_Text_EthanDefeat, JaggedPass_EventScript_RegisterEthan specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -133,142 +133,142 @@ JaggedPass_EventScript_Ethan:: @ 82307FB release end -JaggedPass_EventScript_RegisterEthan:: @ 8230827 +JaggedPass_EventScript_RegisterEthan:: special PlayerFaceTrainerAfterBattle msgbox JaggedPass_Text_EthanRegister, MSGBOX_DEFAULT register_matchcall TRAINER_ETHAN_1 release end -JaggedPass_EventScript_EthanRematch:: @ 8230843 +JaggedPass_EventScript_EthanRematch:: trainerbattle_rematch TRAINER_ETHAN_1, JaggedPass_Text_EthanRematchIntro, JaggedPass_Text_EthanRematchDefeat msgbox JaggedPass_Text_EthanPostRematch, MSGBOX_AUTOCLOSE end -JaggedPass_EventScript_Julio:: @ 823085A +JaggedPass_EventScript_Julio:: trainerbattle_single TRAINER_JULIO, JaggedPass_Text_JulioIntro, JaggedPass_Text_JulioDefeat msgbox JaggedPass_Text_JulioPostBattle, MSGBOX_AUTOCLOSE end -JaggedPass_EventScript_Autumn:: @ 8230871 +JaggedPass_EventScript_Autumn:: trainerbattle_single TRAINER_AUTUMN, JaggedPass_Text_AutumnIntro, JaggedPass_Text_AutumnDefeat msgbox JaggedPass_Text_AutumnPostBattle, MSGBOX_AUTOCLOSE end -JaggedPass_Text_EricIntro: @ 8230888 +JaggedPass_Text_EricIntro: .string "MT. CHIMNEY's JAGGED PASS…\p" .string "Now this is what I've always wanted\n" .string "in a mountain.\p" .string "This jagged bumpiness…\n" .string "It rocks my soul!$" -JaggedPass_Text_EricDefeat: @ 82308FF +JaggedPass_Text_EricDefeat: .string "Losing left me bitter!$" -JaggedPass_Text_EricPostBattle: @ 8230916 +JaggedPass_Text_EricPostBattle: .string "Yes, I did lose at POKéMON…\p" .string "But, when it comes to the love of\n" .string "the mountains, I have you beat!$" -JaggedPass_Text_DianaIntro: @ 8230974 +JaggedPass_Text_DianaIntro: .string "This place isn't your casual hike.\n" .string "It's not suited for a picnic.$" -JaggedPass_Text_DianaDefeat: @ 82309B5 +JaggedPass_Text_DianaDefeat: .string "Ohhh, no!\n" .string "The ground is too bumpy…$" -JaggedPass_Text_DianaPostBattle: @ 82309D8 +JaggedPass_Text_DianaPostBattle: .string "Did you know?\p" .string "Some people cleverly ride their\n" .string "bicycles up this horribly bumpy pass.$" -JaggedPass_Text_DianaRegister: @ 8230A2C +JaggedPass_Text_DianaRegister: .string "Will you ever be back in this area?\n" .string "If you do return, I'd like a rematch.$" -JaggedPass_Text_DianaRematchIntro: @ 8230A76 +JaggedPass_Text_DianaRematchIntro: .string "Picnics are fun wherever you go.\n" .string "Just like POKéMON!$" -JaggedPass_Text_DianaRematchDefeat: @ 8230AAA +JaggedPass_Text_DianaRematchDefeat: .string "I only lost because the ground is\n" .string "too bumpy!$" -JaggedPass_Text_DianaPostRematch: @ 8230AD7 +JaggedPass_Text_DianaPostRematch: .string "I'll forget about losing and just\n" .string "enjoy this bumpy hike.$" -JaggedPass_Text_EthanIntro: @ 8230B10 +JaggedPass_Text_EthanIntro: .string "JAGGED PASS is hard to walk on.\n" .string "It's a good place for training.$" -JaggedPass_Text_EthanDefeat: @ 8230B50 +JaggedPass_Text_EthanDefeat: .string "It was all over while we were still\n" .string "trying to find a good footing…$" -JaggedPass_Text_EthanPostBattle: @ 8230B93 +JaggedPass_Text_EthanPostBattle: .string "If I had an ACRO BIKE, I'd be able to\n" .string "jump ledges.$" -JaggedPass_Text_EthanRegister: @ 8230BC6 +JaggedPass_Text_EthanRegister: .string "When I get more used to this bumpiness,\n" .string "I'll be sure to win!\p" .string "Can you register me in your POKéNAV?$" -JaggedPass_Text_EthanRematchIntro: @ 8230C28 +JaggedPass_Text_EthanRematchIntro: .string "I got used to this bumpiness.\n" .string "I sing while I climb now.$" -JaggedPass_Text_EthanRematchDefeat: @ 8230C60 +JaggedPass_Text_EthanRematchDefeat: .string "It's still not easy to battle on this\n" .string "bumpy ground…$" -JaggedPass_Text_EthanPostRematch: @ 8230C94 +JaggedPass_Text_EthanPostRematch: .string "I should get an ACRO BIKE from RYDEL\n" .string "in MAUVILLE CITY…$" -JaggedPass_Text_GruntIntro: @ 8230CCB +JaggedPass_Text_GruntIntro: .string "Wah!\n" .string "What are you doing here?\p" .string "What am I doing in a place like this?\p" .string "What business is it of yours?$" -JaggedPass_Text_GruntDefeat: @ 8230D2D +JaggedPass_Text_GruntDefeat: .string "Urrrgh…\p" .string "I should've ducked into our HIDEOUT\n" .string "right away…$" -JaggedPass_Text_GoWhereverYouWant: @ 8230D65 +JaggedPass_Text_GoWhereverYouWant: .string "Okay, oh-kay!\n" .string "I admit it--you're strong!\p" .string "Don't worry about me.\n" .string "Go wherever you want!$" -JaggedPass_Text_BoulderShakingInResponseToEmblem: @ 8230DBA +JaggedPass_Text_BoulderShakingInResponseToEmblem: .string "Oh! This boulder is shaking in response\n" .string "to the MAGMA EMBLEM!$" -JaggedPass_Text_JulioIntro: @ 8230DF7 +JaggedPass_Text_JulioIntro: .string "Aiyeeh! It's awfully scary to shoot\n" .string "down the mountain in one go!$" -JaggedPass_Text_JulioDefeat: @ 8230E38 +JaggedPass_Text_JulioDefeat: .string "I feel like I'm falling apart…$" -JaggedPass_Text_JulioPostBattle: @ 8230E57 +JaggedPass_Text_JulioPostBattle: .string "My bicycle bounced around so much,\n" .string "my rear end's sore…$" -JaggedPass_Text_AutumnIntro: @ 8230E8E +JaggedPass_Text_AutumnIntro: .string "I climb this hill every day.\n" .string "I have confidence in my strength!$" -JaggedPass_Text_AutumnDefeat: @ 8230ECD +JaggedPass_Text_AutumnDefeat: .string "Hmm…\n" .string "What went wrong?$" -JaggedPass_Text_AutumnPostBattle: @ 8230EE3 +JaggedPass_Text_AutumnPostBattle: .string "What is that odd rock protrusion\n" .string "a little up the hill from here?$" diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc index 59275c526de5..baa9027a94b5 100644 --- a/data/maps/LavaridgeTown/scripts.inc +++ b/data/maps/LavaridgeTown/scripts.inc @@ -1,12 +1,12 @@ .set LOCALID_RIVAL_ON_BIKE, 7 .set LOCALID_RIVAL, 8 -LavaridgeTown_MapScripts:: @ 81EA4D3 +LavaridgeTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, LavaridgeTown_OnFrame .byte 0 -LavaridgeTown_OnTransition: @ 81EA4DE +LavaridgeTown_OnTransition: setflag FLAG_VISITED_LAVARIDGE_TOWN call_if_set FLAG_WHITEOUT_TO_LAVARIDGE, LavaridgeTown_EventScript_ClearLavaridgeWhiteOut call_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, LavaridgeTown_EventScript_ShowMtChimneyTrainers @@ -18,36 +18,36 @@ LavaridgeTown_OnTransition: @ 81EA4DE call_if_eq LavaridgeTown_EventScript_HideMapNamePopup end -LavaridgeTown_EventScript_ClearLavaridgeWhiteOut:: @ 81EA514 +LavaridgeTown_EventScript_ClearLavaridgeWhiteOut:: clearflag FLAG_WHITEOUT_TO_LAVARIDGE return -LavaridgeTown_EventScript_CheckSetRivalPos:: @ 81EA518 +LavaridgeTown_EventScript_CheckSetRivalPos:: getplayerxy VAR_0x8004, VAR_0x8005 compare VAR_0x8004, 9 goto_if_eq LavaridgeTown_EventScript_SetRivalPos return -LavaridgeTown_EventScript_SetRivalPos:: @ 81EA529 +LavaridgeTown_EventScript_SetRivalPos:: setobjectxyperm LOCALID_RIVAL, 11, 9 setobjectxyperm LOCALID_RIVAL_ON_BIKE, 9, 8 setobjectmovementtype LOCALID_RIVAL_ON_BIKE, MOVEMENT_TYPE_FACE_UP clearflag FLAG_HIDE_LAVARIDGE_TOWN_RIVAL return -LavaridgeTown_EventScript_ShowMtChimneyTrainers:: @ 81EA53F +LavaridgeTown_EventScript_ShowMtChimneyTrainers:: clearflag FLAG_HIDE_MT_CHIMNEY_TRAINERS return -LavaridgeTown_EventScript_HideMapNamePopup:: @ 81EA543 +LavaridgeTown_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -LavaridgeTown_OnFrame: @ 81EA547 +LavaridgeTown_OnFrame: map_script_2 VAR_LAVARIDGE_TOWN_STATE, 1, LavaridgeTown_EventScript_RivalGiveGoGoggles .2byte 0 -LavaridgeTown_EventScript_RivalGiveGoGoggles:: @ 81EA551 +LavaridgeTown_EventScript_RivalGiveGoGoggles:: lockall getplayerxy VAR_0x8008, VAR_0x8009 compare VAR_0x8008, 9 @@ -71,7 +71,7 @@ LavaridgeTown_EventScript_RivalGiveGoGoggles:: @ 81EA551 goto_if_eq LavaridgeTown_EventScript_BrendanGiveGoGoggles end -LavaridgeTown_EventScript_MayGiveGoGoggles:: @ 81EA5B5 +LavaridgeTown_EventScript_MayGiveGoGoggles:: msgbox LavaridgeTown_Text_MayNiceBadgesTakeThis, MSGBOX_DEFAULT giveitem ITEM_GO_GOGGLES setflag FLAG_RECEIVED_GO_GOGGLES @@ -79,7 +79,7 @@ LavaridgeTown_EventScript_MayGiveGoGoggles:: @ 81EA5B5 goto LavaridgeTown_EventScript_RivalExit end -LavaridgeTown_EventScript_BrendanGiveGoGoggles:: @ 81EA5DA +LavaridgeTown_EventScript_BrendanGiveGoGoggles:: msgbox LavaridgeTown_Text_BrendanNiceBadgesTakeThis, MSGBOX_DEFAULT giveitem ITEM_GO_GOGGLES setflag FLAG_RECEIVED_GO_GOGGLES @@ -87,7 +87,7 @@ LavaridgeTown_EventScript_BrendanGiveGoGoggles:: @ 81EA5DA goto LavaridgeTown_EventScript_RivalExit end -LavaridgeTown_EventScript_RivalExit:: @ 81EA5FF +LavaridgeTown_EventScript_RivalExit:: closemessage removeobject LOCALID_RIVAL addobject LOCALID_RIVAL_ON_BIKE @@ -104,15 +104,15 @@ LavaridgeTown_EventScript_RivalExit:: @ 81EA5FF releaseall end -LavaridgeTown_EventScript_PlayMayMusic:: @ 81EA630 +LavaridgeTown_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, TRUE return -LavaridgeTown_EventScript_PlayBrendanMusic:: @ 81EA635 +LavaridgeTown_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE return -LavaridgeTown_EventScript_RivalNoticePlayer:: @ 81EA63A +LavaridgeTown_EventScript_RivalNoticePlayer:: applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestUp waitmovement 0 playse SE_PIN @@ -122,7 +122,7 @@ LavaridgeTown_EventScript_RivalNoticePlayer:: @ 81EA63A waitmovement 0 return -LavaridgeTown_EventScript_RivalExitHerbShop:: @ 81EA65C +LavaridgeTown_EventScript_RivalExitHerbShop:: opendoor 12, 15 waitdooranim addobject LOCALID_RIVAL @@ -141,28 +141,28 @@ LavaridgeTown_EventScript_RivalExitHerbShop:: @ 81EA65C waitmovement 0 return -LavaridgeTown_EventScript_RivalApproachPlayer1:: @ 81EA6A1 +LavaridgeTown_EventScript_RivalApproachPlayer1:: applymovement LOCALID_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer1 waitmovement 0 return -LavaridgeTown_EventScript_RivalApproachPlayer2:: @ 81EA6AC +LavaridgeTown_EventScript_RivalApproachPlayer2:: applymovement LOCALID_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer2 waitmovement 0 return -LavaridgeTown_EventScript_RivalExit1:: @ 81EA6B7 +LavaridgeTown_EventScript_RivalExit1:: applymovement OBJ_EVENT_ID_PLAYER, LavaridgeTown_Movement_PlayerWatchRivalExit applymovement LOCALID_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit1 waitmovement 0 return -LavaridgeTown_EventScript_RivalExit2:: @ 81EA6C9 +LavaridgeTown_EventScript_RivalExit2:: applymovement LOCALID_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit2 waitmovement 0 return -LavaridgeTown_Movement_RivalExit2: @ 81EA6D4 +LavaridgeTown_Movement_RivalExit2: walk_fast_right walk_fast_right walk_fast_right @@ -175,13 +175,13 @@ LavaridgeTown_Movement_RivalExit2: @ 81EA6D4 walk_fast_up step_end -LavaridgeTown_Movement_PlayerWatchRivalExit: @ 81EA6DF +LavaridgeTown_Movement_PlayerWatchRivalExit: delay_16 delay_8 walk_in_place_fastest_right step_end -LavaridgeTown_Movement_RivalExit1: @ 81EA6E3 +LavaridgeTown_Movement_RivalExit1: walk_fast_down walk_fast_right walk_fast_right @@ -193,7 +193,7 @@ LavaridgeTown_Movement_RivalExit1: @ 81EA6E3 walk_fast_right step_end -LavaridgeTown_Movement_RivalApproachPlayer2: @ 81EA6ED +LavaridgeTown_Movement_RivalApproachPlayer2: walk_left walk_left walk_left @@ -202,51 +202,51 @@ LavaridgeTown_Movement_RivalApproachPlayer2: @ 81EA6ED walk_left step_end -LavaridgeTown_Movement_RivalApproachPlayer1: @ 81EA6F4 +LavaridgeTown_Movement_RivalApproachPlayer1: walk_left walk_left walk_up step_end -LavaridgeTown_Movement_RivalExitHerbShop: @ 81EA6F8 +LavaridgeTown_Movement_RivalExitHerbShop: walk_down step_end -LavaridgeTown_EventScript_HotSpringsTrigger:: @ 81EA6FA +LavaridgeTown_EventScript_HotSpringsTrigger:: specialvar VAR_RESULT, GetPlayerFacingDirection compare VAR_RESULT, DIR_SOUTH goto_if_eq LavaridgeTown_EventScript_EnteredHotSprings end -LavaridgeTown_EventScript_EnteredHotSprings:: @ 81EA70B +LavaridgeTown_EventScript_EnteredHotSprings:: incrementgamestat GAME_STAT_ENTERED_HOT_SPRINGS end -LavaridgeTown_EventScript_ExpertM:: @ 81EA70E +LavaridgeTown_EventScript_ExpertM:: msgbox LavaridgeTown_Text_HotSpringsNeverRunDry, MSGBOX_NPC end -LavaridgeTown_EventScript_OldMan:: @ 81EA717 +LavaridgeTown_EventScript_OldMan:: msgbox LavaridgeTown_Text_PokemonNippedBackside, MSGBOX_SIGN end -LavaridgeTown_EventScript_Twin:: @ 81EA720 +LavaridgeTown_EventScript_Twin:: msgbox LavaridgeTown_Text_BatheInHotSpringsEveryDay, MSGBOX_NPC end -LavaridgeTown_EventScript_HotSpringsOldWoman1:: @ 81EA729 +LavaridgeTown_EventScript_HotSpringsOldWoman1:: msgbox LavaridgeTown_Text_IfPokemonInHotSprings, MSGBOX_NPC end -LavaridgeTown_EventScript_HotSpringsOldWoman2:: @ 81EA732 +LavaridgeTown_EventScript_HotSpringsOldWoman2:: msgbox LavaridgeTown_Text_HotSpringsClaims, MSGBOX_NPC end -LavaridgeTown_EventScript_ExpertF:: @ 81EA73B +LavaridgeTown_EventScript_ExpertF:: msgbox LavaridgeTown_Text_OhYouLikeHotSprings, MSGBOX_NPC end -LavaridgeTown_EventScript_EggWoman:: @ 81EA744 +LavaridgeTown_EventScript_EggWoman:: lock faceplayer goto_if_set FLAG_RECEIVED_LAVARIDGE_EGG, LavaridgeTown_EventScript_ReceivedEgg @@ -265,34 +265,34 @@ LavaridgeTown_EventScript_EggWoman:: @ 81EA744 release end -LavaridgeTown_EventScript_ReceivedEgg:: @ 81EA787 +LavaridgeTown_EventScript_ReceivedEgg:: msgbox LavaridgeTown_Text_EverySoOftenEggFoundAtDayCare, MSGBOX_DEFAULT release end -LavaridgeTown_EventScript_NoRoomForEgg:: @ 81EA791 +LavaridgeTown_EventScript_NoRoomForEgg:: msgbox LavaridgeTown_Text_NoRoomForThisEgg, MSGBOX_DEFAULT release end -LavaridgeTown_EventScript_DeclineEgg:: @ 81EA79B +LavaridgeTown_EventScript_DeclineEgg:: msgbox LavaridgeTown_Text_AsYouWishThen, MSGBOX_DEFAULT release end -LavaridgeTown_EventScript_TownSign:: @ 81EA7A5 +LavaridgeTown_EventScript_TownSign:: msgbox LavaridgeTown_Text_TownSign, MSGBOX_SIGN end -LavaridgeTown_EventScript_GymSign:: @ 81EA7AE +LavaridgeTown_EventScript_GymSign:: msgbox LavaridgeTown_Text_GymSign, MSGBOX_SIGN end -LavaridgeTown_EventScript_HerbShopSign:: @ 81EA7B7 +LavaridgeTown_EventScript_HerbShopSign:: msgbox LavaridgeTown_Text_HerbShopSign, MSGBOX_SIGN end -LavaridgeTown_Text_MayNiceBadgesTakeThis: @ 81EA7C0 +LavaridgeTown_Text_MayNiceBadgesTakeThis: .string "MAY: {PLAYER}{KUN}! Long time no see!\p" .string "Oh? While I visited the hot springs,\n" .string "you got the LAVARIDGE GYM BADGE.\p" @@ -302,7 +302,7 @@ LavaridgeTown_Text_MayNiceBadgesTakeThis: @ 81EA7C0 .string "I guess it would be okay for you to\n" .string "have this.$" -LavaridgeTown_Text_MayExplainGoGogglesChallengeDad: @ 81EA897 +LavaridgeTown_Text_MayExplainGoGogglesChallengeDad: .string "MAY: With those GO-GOGGLES, you'll\n" .string "have no trouble getting through the\l" .string "desert near ROUTE 111.\p" @@ -314,7 +314,7 @@ LavaridgeTown_Text_MayExplainGoGogglesChallengeDad: @ 81EA897 .string "your dad in PETALBURG GYM.\p" .string "See you again!$" -LavaridgeTown_Text_BrendanNiceBadgesTakeThis: @ 81EA9A2 +LavaridgeTown_Text_BrendanNiceBadgesTakeThis: .string "BRENDAN: {PLAYER}, hey, it's been a while.\n" .string "How's it going?\p" .string "Hmm…\n" @@ -322,7 +322,7 @@ LavaridgeTown_Text_BrendanNiceBadgesTakeThis: @ 81EA9A2 .string "All right, then.\n" .string "You may as well have this.$" -LavaridgeTown_Text_BrendanExplainGoGogglesChallengeDad: @ 81EAA2E +LavaridgeTown_Text_BrendanExplainGoGogglesChallengeDad: .string "BRENDAN: Keep those with you if you're\n" .string "planning on going into that desert near\l" .string "ROUTE 111.\p" @@ -336,7 +336,7 @@ LavaridgeTown_Text_BrendanExplainGoGogglesChallengeDad: @ 81EAA2E .string "he really is tough.\p" .string "See you around!$" -LavaridgeTown_Text_HaveEggWillYouTakeIt: @ 81EAB80 +LavaridgeTown_Text_HaveEggWillYouTakeIt: .string "I have here an EGG.\p" .string "I'd hoped to hatch it by covering it in\n" .string "hot sand by the hot springs.\l" @@ -349,28 +349,28 @@ LavaridgeTown_Text_HaveEggWillYouTakeIt: @ 81EAB80 .string "So, what say you?\n" .string "Will you take this EGG to hatch?$" -LavaridgeTown_Text_HopeYoullWalkPlentyWithEgg: @ 81EACC0 +LavaridgeTown_Text_HopeYoullWalkPlentyWithEgg: .string "Good! I hope you'll walk plenty with\n" .string "this here EGG!$" -LavaridgeTown_Text_ReceivedTheEgg: @ 81EACF4 +LavaridgeTown_Text_ReceivedTheEgg: .string "{PLAYER} received the EGG.$" -LavaridgeTown_Text_NoRoomForThisEgg: @ 81EAD09 +LavaridgeTown_Text_NoRoomForThisEgg: .string "Oh? You've too many POKéMON.\n" .string "There's no room for this EGG…$" -LavaridgeTown_Text_AsYouWishThen: @ 81EAD44 +LavaridgeTown_Text_AsYouWishThen: .string "As you wish, then…\p" .string "If you have a change of heart about\n" .string "hatching this EGG, I will be here.$" -LavaridgeTown_Text_EverySoOftenEggFoundAtDayCare: @ 81EAD9E +LavaridgeTown_Text_EverySoOftenEggFoundAtDayCare: .string "Every so often, an EGG will be found at\n" .string "the POKéMON DAY CARE.\p" .string "Or at least that's how the rumor goes.$" -LavaridgeTown_Text_HotSpringsNeverRunDry: @ 81EAE03 +LavaridgeTown_Text_HotSpringsNeverRunDry: .string "We draw as much hot water as we need,\n" .string "and yet the hot springs never run dry.\p" .string "Isn't it magical?\p" @@ -379,47 +379,47 @@ LavaridgeTown_Text_HotSpringsNeverRunDry: @ 81EAE03 .string "ground are heated by magma to well up\l" .string "as hot springs.$" -LavaridgeTown_Text_PokemonNippedBackside: @ 81EAEE1 +LavaridgeTown_Text_PokemonNippedBackside: .string "Being buried in this hot sand is…\n" .string "Sigh…\p" .string "So warm and heavenly…\p" .string "Eh? Gyaah! Ouch!\p" .string "A POKéMON nipped my backside!$" -LavaridgeTown_Text_OhYouLikeHotSprings: @ 81EAF4E +LavaridgeTown_Text_OhYouLikeHotSprings: .string "Oh, you like hot springs, do you?\p" .string "That's surprising for one as young\n" .string "as you.$" -LavaridgeTown_Text_BatheInHotSpringsEveryDay: @ 81EAF9B +LavaridgeTown_Text_BatheInHotSpringsEveryDay: .string "I bathe in the hot springs every day.\p" .string "I want to become a beautiful and strong\n" .string "GYM LEADER like FLANNERY.$" -LavaridgeTown_Text_IfPokemonInHotSprings: @ 81EB003 +LavaridgeTown_Text_IfPokemonInHotSprings: .string "If people put POKéMON in hot springs,\n" .string "it might be seriously strange.\p" .string "Why, it might be an electric bath, or\n" .string "a bubble bath, or even a lava bath…$" -LavaridgeTown_Text_HotSpringsClaims: @ 81EB092 +LavaridgeTown_Text_HotSpringsClaims: .string "They're claiming that these hot springs\n" .string "are good for calming nervous tension,\l" .string "relieving aching muscles, solving\l" .string "romantic problems, and attracting\l" .string "money…$" -LavaridgeTown_Text_TownSign: @ 81EB12B +LavaridgeTown_Text_TownSign: .string "LAVARIDGE TOWN\p" .string "“POKéMON CENTER HOT SPRINGS\n" .string "An excellent place for relaxing!”$" -LavaridgeTown_Text_GymSign: @ 81EB178 +LavaridgeTown_Text_GymSign: .string "LAVARIDGE TOWN POKéMON GYM\n" .string "LEADER: FLANNERY\l" .string "“One with a fiery passion that burns!”$" -LavaridgeTown_Text_HerbShopSign: @ 81EB1CB +LavaridgeTown_Text_HerbShopSign: .string "POKéMON HERB SHOP\n" .string "“Bitter taste--better cure!”$" diff --git a/data/maps/LavaridgeTown_Gym_1F/scripts.inc b/data/maps/LavaridgeTown_Gym_1F/scripts.inc index 901969416784..608f32e24c39 100644 --- a/data/maps/LavaridgeTown_Gym_1F/scripts.inc +++ b/data/maps/LavaridgeTown_Gym_1F/scripts.inc @@ -3,17 +3,17 @@ .set LOCALID_AXLE, 4 .set LOCALID_DANIELLE, 5 -LavaridgeTown_Gym_1F_MapScripts:: @ 81FE6F4 +LavaridgeTown_Gym_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_Gym_1F_OnTransition .byte 0 -LavaridgeTown_Gym_1F_OnTransition: @ 81FE6FA +LavaridgeTown_Gym_1F_OnTransition: call LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars call LavaridgeTown_Gym_1F_EventScript_CheckBuryTrainers end @ Unclear where/if these temp vars are getting checked -LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars:: @ 81FE705 +LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars:: setvar VAR_TEMP_B, 0 setvar VAR_TEMP_C, 0 setvar VAR_TEMP_D, 0 @@ -21,34 +21,34 @@ LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars:: @ 81FE705 setvar VAR_TEMP_F, 0 goto_if_defeated TRAINER_COLE LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar setvar VAR_TEMP_B, 1 -LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar:: @ 81FE72C +LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar:: goto_if_defeated TRAINER_GERALD, LavaridgeTown_Gym_1F_EventScript_SetAxleTempVar setvar VAR_TEMP_C, 1 -LavaridgeTown_Gym_1F_EventScript_SetAxleTempVar:: @ 81FE73A +LavaridgeTown_Gym_1F_EventScript_SetAxleTempVar:: goto_if_defeated TRAINER_AXLE, LavaridgeTown_Gym_1F_EventScript_SetDanielleTempVar setvar VAR_TEMP_D, 1 -LavaridgeTown_Gym_1F_EventScript_SetDanielleTempVar:: @ 81FE748 +LavaridgeTown_Gym_1F_EventScript_SetDanielleTempVar:: goto_if_defeated TRAINER_DANIELLE, LavaridgeTown_Gym_1F_EventScript_EndSetTrainerTempVars setvar VAR_TEMP_E, 1 -LavaridgeTown_Gym_1F_EventScript_EndSetTrainerTempVars:: @ 81FE756 +LavaridgeTown_Gym_1F_EventScript_EndSetTrainerTempVars:: return -LavaridgeTown_Gym_1F_EventScript_CheckBuryTrainers:: @ 81FE757 +LavaridgeTown_Gym_1F_EventScript_CheckBuryTrainers:: goto_if_defeated TRAINER_COLE, LavaridgeTown_Gym_1F_EventScript_CheckBuryGerald setobjectmovementtype LOCALID_COLE, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_1F_EventScript_CheckBuryGerald:: @ 81FE764 +LavaridgeTown_Gym_1F_EventScript_CheckBuryGerald:: goto_if_defeated TRAINER_GERALD, LavaridgeTown_Gym_1F_EventScript_CheckBuryAxle setobjectmovementtype LOCALID_GERALD, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_1F_EventScript_CheckBuryAxle:: @ 81FE771 +LavaridgeTown_Gym_1F_EventScript_CheckBuryAxle:: goto_if_defeated TRAINER_AXLE, LavaridgeTown_Gym_1F_EventScript_CheckBuryDanielle setobjectmovementtype LOCALID_AXLE, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_1F_EventScript_CheckBuryDanielle:: @ 81FE77E +LavaridgeTown_Gym_1F_EventScript_CheckBuryDanielle:: goto_if_defeated TRAINER_DANIELLE, LavaridgeTown_Gym_1F_EventScript_EndCheckBuryTrainers setobjectmovementtype LOCALID_DANIELLE, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_1F_EventScript_EndCheckBuryTrainers:: @ 81FE78B +LavaridgeTown_Gym_1F_EventScript_EndCheckBuryTrainers:: return -LavaridgeTown_Gym_1F_EventScript_Flannery:: @ 81FE78C +LavaridgeTown_Gym_1F_EventScript_Flannery:: trainerbattle_single TRAINER_FLANNERY_1, LavaridgeTown_Gym_1F_Text_FlanneryIntro, LavaridgeTown_Gym_1F_Text_FlanneryDefeat, LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -58,7 +58,7 @@ LavaridgeTown_Gym_1F_EventScript_Flannery:: @ 81FE78C release end -LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated:: @ 81FE7C1 +LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated:: message LavaridgeTown_Gym_1F_Text_ReceivedHeatBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -85,7 +85,7 @@ LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated:: @ 81FE7C1 release end -LavaridgeTown_Gym_1F_EventScript_GiveOverheat2:: @ 81FE81D +LavaridgeTown_Gym_1F_EventScript_GiveOverheat2:: giveitem ITEM_TM50 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -94,7 +94,7 @@ LavaridgeTown_Gym_1F_EventScript_GiveOverheat2:: @ 81FE81D release end -LavaridgeTown_Gym_1F_EventScript_GiveOverheat:: @ 81FE841 +LavaridgeTown_Gym_1F_EventScript_GiveOverheat:: giveitem ITEM_TM50 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -102,17 +102,17 @@ LavaridgeTown_Gym_1F_EventScript_GiveOverheat:: @ 81FE841 setflag FLAG_RECEIVED_TM50 return -LavaridgeTown_Gym_1F_EventScript_FlanneryRematch:: @ 81FE864 +LavaridgeTown_Gym_1F_EventScript_FlanneryRematch:: trainerbattle_rematch_double TRAINER_FLANNERY_1, LavaridgeTown_Gym_1F_Text_FlanneryPreRematch, LavaridgeTown_Gym_1F_Text_FlanneryRematchDefeat, LavaridgeTown_Gym_1F_Text_FlanneryRematchNeedTwoMons msgbox LavaridgeTown_Gym_1F_Text_FlanneryPostRematch, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_1F_EventScript_Cole:: @ 81FE87F +LavaridgeTown_Gym_1F_EventScript_Cole:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_COLE, LOCALID_COLE, LavaridgeTown_Gym_1F_Text_ColeIntro, LavaridgeTown_Gym_1F_Text_ColeDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_1F_Text_ColePostBattle MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_EventScript_CheckTrainerScript:: @ 81FE89A +LavaridgeTown_Gym_EventScript_CheckTrainerScript:: call LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars release special ShouldTryGetTrainerScript @@ -120,42 +120,42 @@ LavaridgeTown_Gym_EventScript_CheckTrainerScript:: @ 81FE89A goto_if_eq EventScript_GotoTrainerScript end -LavaridgeTown_Gym_1F_EventScript_Axle:: @ 81FE8AF +LavaridgeTown_Gym_1F_EventScript_Axle:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_AXLE, LOCALID_AXLE, LavaridgeTown_Gym_1F_Text_AxleIntro, LavaridgeTown_Gym_1F_Text_AxleDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_1F_Text_AxlePostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_B1F_EventScript_Keegan:: @ 81FE8CA +LavaridgeTown_Gym_B1F_EventScript_Keegan:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_KEEGAN, LOCALID_KEEGAN, LavaridgeTown_Gym_B1F_Text_KeeganIntro, LavaridgeTown_Gym_B1F_Text_KeeganDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_B1F_Text_KeeganPostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_1F_EventScript_Danielle:: @ 81FE8E5 +LavaridgeTown_Gym_1F_EventScript_Danielle:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_DANIELLE, LOCALID_DANIELLE, LavaridgeTown_Gym_1F_Text_DanielleIntro, LavaridgeTown_Gym_1F_Text_DanielleDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_1F_Text_DaniellePostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_1F_EventScript_Gerald:: @ 81FE900 +LavaridgeTown_Gym_1F_EventScript_Gerald:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_GERALD, LOCALID_GERALD, LavaridgeTown_Gym_1F_Text_GeraldIntro, LavaridgeTown_Gym_1F_Text_GeraldDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_1F_Text_GeraldPostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_B1F_EventScript_Jace:: @ 81FE91B +LavaridgeTown_Gym_B1F_EventScript_Jace:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_JACE, LOCALID_JACE, LavaridgeTown_Gym_B1F_Text_JaceIntro, LavaridgeTown_Gym_B1F_Text_JaceDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_B1F_Text_JacePostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_B1F_EventScript_Jeff:: @ 81FE936 +LavaridgeTown_Gym_B1F_EventScript_Jeff:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_JEFF, LOCALID_JEFF, LavaridgeTown_Gym_B1F_Text_JeffIntro, LavaridgeTown_Gym_B1F_Text_JeffDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_B1F_Text_JeffPostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_B1F_EventScript_Eli:: @ 81FE951 +LavaridgeTown_Gym_B1F_EventScript_Eli:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_ELI, LOCALID_ELI, LavaridgeTown_Gym_B1F_Text_EliIntro, LavaridgeTown_Gym_B1F_Text_EliDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript msgbox LavaridgeTown_Gym_B1F_Text_EliPostBattle, MSGBOX_AUTOCLOSE end -LavaridgeTown_Gym_1F_EventScript_GymGuide:: @ 81FE96C +LavaridgeTown_Gym_1F_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, LavaridgeTown_Gym_1F_EventScript_GymGuidePostVictory @@ -163,34 +163,34 @@ LavaridgeTown_Gym_1F_EventScript_GymGuide:: @ 81FE96C release end -LavaridgeTown_Gym_1F_EventScript_GymGuidePostVictory:: @ 81FE981 +LavaridgeTown_Gym_1F_EventScript_GymGuidePostVictory:: msgbox LavaridgeTown_Gym_1F_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -LavaridgeTown_Gym_1F_EventScript_LeftGymStatue:: @ 81FE98B +LavaridgeTown_Gym_1F_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE04_GET, LavaridgeTown_Gym_1F_EventScript_GymStatueCertified goto LavaridgeTown_Gym_1F_EventScript_GymStatue end -LavaridgeTown_Gym_1F_EventScript_RightGymStatue:: @ 81FE99B +LavaridgeTown_Gym_1F_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE04_GET, LavaridgeTown_Gym_1F_EventScript_GymStatueCertified goto LavaridgeTown_Gym_1F_EventScript_GymStatue end -LavaridgeTown_Gym_1F_EventScript_GymStatueCertified:: @ 81FE9AB +LavaridgeTown_Gym_1F_EventScript_GymStatueCertified:: msgbox LavaridgeTown_Gym_1F_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -LavaridgeTown_Gym_1F_EventScript_GymStatue:: @ 81FE9B5 +LavaridgeTown_Gym_1F_EventScript_GymStatue:: msgbox LavaridgeTown_Gym_1F_Text_GymStatue, MSGBOX_DEFAULT releaseall end -LavaridgeTown_Gym_1F_Text_GymGuideAdvice: @ 81FE9BF +LavaridgeTown_Gym_1F_Text_GymGuideAdvice: .string "Hey, how's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "LAVARIDGE's GYM LEADER FLANNERY\n" @@ -201,35 +201,35 @@ LavaridgeTown_Gym_1F_Text_GymGuideAdvice: @ 81FE9BF .string "Hose her down with water and then\l" .string "go for it!$" -LavaridgeTown_Gym_1F_Text_GymGuidePostVictory: @ 81FEAB8 +LavaridgeTown_Gym_1F_Text_GymGuidePostVictory: .string "Yow! That was a scorching-hot battle!$" -LavaridgeTown_Gym_1F_Text_ColeIntro: @ 81FEADE +LavaridgeTown_Gym_1F_Text_ColeIntro: .string "Owowowowow!\n" .string "Yikes, it's hot!$" -LavaridgeTown_Gym_1F_Text_ColeDefeat: @ 81FEAFB +LavaridgeTown_Gym_1F_Text_ColeDefeat: .string "I'm blinded by sweat in my eyes…$" -LavaridgeTown_Gym_1F_Text_ColePostBattle: @ 81FEB1C +LavaridgeTown_Gym_1F_Text_ColePostBattle: .string "Being buried in hot sand promotes\n" .string "circulation.\p" .string "It's effective for healing pain in\n" .string "your joints.$" -LavaridgeTown_Gym_1F_Text_AxleIntro: @ 81FEB7B +LavaridgeTown_Gym_1F_Text_AxleIntro: .string "I'm trying to relieve my stress.\n" .string "Don't come along and stress me out!$" -LavaridgeTown_Gym_1F_Text_AxleDefeat: @ 81FEBC0 +LavaridgeTown_Gym_1F_Text_AxleDefeat: .string "I hope FLANNERY flames you good!$" -LavaridgeTown_Gym_1F_Text_AxlePostBattle: @ 81FEBE1 +LavaridgeTown_Gym_1F_Text_AxlePostBattle: .string "Haaah… Whew…\p" .string "If you spend too much time buried in\n" .string "hot sand, it tuckers you out…$" -LavaridgeTown_Gym_B1F_Text_KeeganIntro: @ 81FEC31 +LavaridgeTown_Gym_B1F_Text_KeeganIntro: .string "You must be getting tired by now.\n" .string "You'd like to rest in the hot sand,\l" .string "wouldn't you?\p" @@ -237,78 +237,78 @@ LavaridgeTown_Gym_B1F_Text_KeeganIntro: @ 81FEC31 .string "your willpower is an important ability\l" .string "for all TRAINERS.$" -LavaridgeTown_Gym_B1F_Text_KeeganDefeat: @ 81FECE3 +LavaridgeTown_Gym_B1F_Text_KeeganDefeat: .string "Play with fire, and be burned…$" -LavaridgeTown_Gym_B1F_Text_KeeganPostBattle: @ 81FED02 +LavaridgeTown_Gym_B1F_Text_KeeganPostBattle: .string "Your skill is real…\n" .string "But our LEADER FLANNERY is strong.\p" .string "If you don't watch yourself, you'll be\n" .string "burned seriously.$" -LavaridgeTown_Gym_1F_Text_GeraldIntro: @ 81FED72 +LavaridgeTown_Gym_1F_Text_GeraldIntro: .string "Can your POKéMON withstand\n" .string "392-degree heat?$" -LavaridgeTown_Gym_1F_Text_GeraldDefeat: @ 81FED9E +LavaridgeTown_Gym_1F_Text_GeraldDefeat: .string "It didn't burn hotly enough…$" -LavaridgeTown_Gym_1F_Text_GeraldPostBattle: @ 81FEDBB +LavaridgeTown_Gym_1F_Text_GeraldPostBattle: .string "The temperature of magma is\n" .string "392 degrees.\p" .string "Your POKéMON beat me, so they should\n" .string "easily survive in magma.$" -LavaridgeTown_Gym_1F_Text_DanielleIntro: @ 81FEE22 +LavaridgeTown_Gym_1F_Text_DanielleIntro: .string "Um…\n" .string "Okay, I'll battle with you.$" -LavaridgeTown_Gym_1F_Text_DanielleDefeat: @ 81FEE42 +LavaridgeTown_Gym_1F_Text_DanielleDefeat: .string "Oh, but you're too strong.$" -LavaridgeTown_Gym_1F_Text_DaniellePostBattle: @ 81FEE5D +LavaridgeTown_Gym_1F_Text_DaniellePostBattle: .string "I'm going to be a pretty and strong\n" .string "TRAINER just like FLANNERY.$" -LavaridgeTown_Gym_B1F_Text_JaceIntro: @ 81FEE9D +LavaridgeTown_Gym_B1F_Text_JaceIntro: .string "Come on, get with it!\n" .string "Let's go before my feelings cool!$" -LavaridgeTown_Gym_B1F_Text_JaceDefeat: @ 81FEED5 +LavaridgeTown_Gym_B1F_Text_JaceDefeat: .string "It's so hot, and yet my heart is\n" .string "clutched by ice…$" -LavaridgeTown_Gym_B1F_Text_JacePostBattle: @ 81FEF07 +LavaridgeTown_Gym_B1F_Text_JacePostBattle: .string "The way the battling spirit burns\n" .string "within you, you may stand a chance\l" .string "against our LEADER.$" -LavaridgeTown_Gym_B1F_Text_JeffIntro: @ 81FEF60 +LavaridgeTown_Gym_B1F_Text_JeffIntro: .string "See how the flames blaze wildly?\n" .string "They flare in anticipation of my win!$" -LavaridgeTown_Gym_B1F_Text_JeffDefeat: @ 81FEFA7 +LavaridgeTown_Gym_B1F_Text_JeffDefeat: .string "Something didn't go right.$" -LavaridgeTown_Gym_B1F_Text_JeffPostBattle: @ 81FEFC2 +LavaridgeTown_Gym_B1F_Text_JeffPostBattle: .string "Well, so what? I say so what?\n" .string "I can walk on hot coals barefoot!\p" .string "…Don't even think about trying it!$" -LavaridgeTown_Gym_B1F_Text_EliIntro: @ 81FF025 +LavaridgeTown_Gym_B1F_Text_EliIntro: .string "As much as I love mountains,\n" .string "I especially love volcanoes.$" -LavaridgeTown_Gym_B1F_Text_EliDefeat: @ 81FF05F +LavaridgeTown_Gym_B1F_Text_EliDefeat: .string "Well, it seems to me I lost without\n" .string "ever being in control.$" -LavaridgeTown_Gym_B1F_Text_EliPostBattle: @ 81FF09A +LavaridgeTown_Gym_B1F_Text_EliPostBattle: .string "I stay here because I became a fan\n" .string "of FLANNERY's power.\p" .string "Hehehehe.$" -LavaridgeTown_Gym_1F_Text_FlanneryIntro: @ 81FF0DC +LavaridgeTown_Gym_1F_Text_FlanneryIntro: .string "Welcome… No, wait.\p" .string "Puny TRAINER, how good to see you've\n" .string "made it here!\p" @@ -323,7 +323,7 @@ LavaridgeTown_Gym_1F_Text_FlanneryIntro: @ 81FF0DC .string "father, I shall, uh…demonstrate the\l" .string "hot moves we have honed on this land!$" -LavaridgeTown_Gym_1F_Text_FlanneryDefeat: @ 81FF233 +LavaridgeTown_Gym_1F_Text_FlanneryDefeat: .string "Oh…\n" .string "I guess I was trying too hard…\p" .string "I… I've only recently become\n" @@ -335,11 +335,11 @@ LavaridgeTown_Gym_1F_Text_FlanneryDefeat: @ 81FF233 .string "Thanks for teaching me that.\n" .string "For that, you deserve this.$" -LavaridgeTown_Gym_1F_Text_ReceivedHeatBadge: @ 81FF32F +LavaridgeTown_Gym_1F_Text_ReceivedHeatBadge: .string "{PLAYER} received the HEAT BADGE\n" .string "from FLANNERY.$" -LavaridgeTown_Gym_1F_Text_ExplainHeatBadgeTakeThis: @ 81FF359 +LavaridgeTown_Gym_1F_Text_ExplainHeatBadgeTakeThis: .string "If you have a HEAT BADGE, all POKéMON\n" .string "up to Level 50, even those you get in\l" .string "trades from other people, will obey\l" @@ -349,7 +349,7 @@ LavaridgeTown_Gym_1F_Text_ExplainHeatBadgeTakeThis: @ 81FF359 .string "This is a token of my appreciation.\n" .string "Don't be shy about taking it!$" -LavaridgeTown_Gym_1F_Text_ExplainOverheat: @ 81FF45C +LavaridgeTown_Gym_1F_Text_ExplainOverheat: .string "That TM50 contains OVERHEAT.\p" .string "That move inflicts serious damage on\n" .string "the opponent.\p" @@ -357,24 +357,24 @@ LavaridgeTown_Gym_1F_Text_ExplainOverheat: @ 81FF45C .string "of the POKéMON using it. It might not\l" .string "be suitable for longer battles.$" -LavaridgeTown_Gym_1F_Text_RegisteredFlannery: @ 81FF517 +LavaridgeTown_Gym_1F_Text_RegisteredFlannery: .string "Registered GYM LEADER FLANNERY\n" .string "in the POKéNAV.$" -LavaridgeTown_Gym_1F_Text_FlanneryPostBattle: @ 81FF546 +LavaridgeTown_Gym_1F_Text_FlanneryPostBattle: .string "Your power reminds me of someone…\p" .string "Oh! I know! You battle like NORMAN,\n" .string "the GYM LEADER of PETALBURG.$" -LavaridgeTown_Gym_1F_Text_GymStatue: @ 81FF5A9 +LavaridgeTown_Gym_1F_Text_GymStatue: .string "LAVARIDGE TOWN POKéMON GYM$" -LavaridgeTown_Gym_1F_Text_GymStatueCertified: @ 81FF5C4 +LavaridgeTown_Gym_1F_Text_GymStatueCertified: .string "LAVARIDGE TOWN POKéMON GYM\p" .string "FLANNERY'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -LavaridgeTown_Gym_1F_Text_FlanneryPreRematch: @ 81FF601 +LavaridgeTown_Gym_1F_Text_FlanneryPreRematch: .string "FLANNERY: Losing a battle isn't going\n" .string "to deflate me.\p" .string "I love POKéMON.\n" @@ -383,11 +383,11 @@ LavaridgeTown_Gym_1F_Text_FlanneryPreRematch: @ 81FF601 .string "Let's exchange superhot moves\n" .string "in another battle!$" -LavaridgeTown_Gym_1F_Text_FlanneryRematchDefeat: @ 81FF69F +LavaridgeTown_Gym_1F_Text_FlanneryRematchDefeat: .string "Whew!\n" .string "On the verge of eruption!$" -LavaridgeTown_Gym_1F_Text_FlanneryPostRematch: @ 81FF6BF +LavaridgeTown_Gym_1F_Text_FlanneryPostRematch: .string "FLANNERY: I lost the match,\n" .string "but I'm completely satisfied.\p" .string "It's not often I get to enjoy a battle\n" @@ -395,7 +395,7 @@ LavaridgeTown_Gym_1F_Text_FlanneryPostRematch: @ 81FF6BF .string "Let's have another one like this\n" .string "again sometime!$" -LavaridgeTown_Gym_1F_Text_FlanneryRematchNeedTwoMons: @ 81FF75E +LavaridgeTown_Gym_1F_Text_FlanneryRematchNeedTwoMons: .string "FLANNERY: Losing a battle isn't going\n" .string "to deflate me.\p" .string "I love POKéMON.\n" diff --git a/data/maps/LavaridgeTown_Gym_B1F/scripts.inc b/data/maps/LavaridgeTown_Gym_B1F/scripts.inc index f2e41ace4b99..3a9165bb1606 100644 --- a/data/maps/LavaridgeTown_Gym_B1F/scripts.inc +++ b/data/maps/LavaridgeTown_Gym_B1F/scripts.inc @@ -3,47 +3,47 @@ .equ LOCALID_JEFF, 3 .equ LOCALID_ELI, 4 -LavaridgeTown_Gym_B1F_MapScripts:: @ 81FF87E +LavaridgeTown_Gym_B1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_Gym_B1F_OnTransition .byte 0 -LavaridgeTown_Gym_B1F_OnTransition: @ 81FF884 +LavaridgeTown_Gym_B1F_OnTransition: call LavaridgeTown_Gym_B1F_EventScript_SetTrainerTempVars call LavaridgeTown_Gym_B1F_EventScript_CheckBuryTrainers end @ Unclear where/if these temp vars are getting checked -LavaridgeTown_Gym_B1F_EventScript_SetTrainerTempVars:: @ 81FF88F +LavaridgeTown_Gym_B1F_EventScript_SetTrainerTempVars:: setvar VAR_TEMP_7, 0 setvar VAR_TEMP_8, 0 setvar VAR_TEMP_9, 0 setvar VAR_TEMP_A, 0 goto_if_defeated TRAINER_KEEGAN, LavaridgeTown_Gym_B1F_EventScript_SetJaceTempVar setvar VAR_TEMP_7, 1 -LavaridgeTown_Gym_B1F_EventScript_SetJaceTempVar:: @ 81FF8B1 +LavaridgeTown_Gym_B1F_EventScript_SetJaceTempVar:: goto_if_defeated TRAINER_JACE, LavaridgeTown_Gym_B1F_EventScript_SetJeffTempVar setvar VAR_TEMP_8, 1 -LavaridgeTown_Gym_B1F_EventScript_SetJeffTempVar:: @ 81FF8BF +LavaridgeTown_Gym_B1F_EventScript_SetJeffTempVar:: goto_if_defeated TRAINER_JEFF, LavaridgeTown_Gym_B1F_EventScript_SetEliTempVar setvar VAR_TEMP_9, 1 -LavaridgeTown_Gym_B1F_EventScript_SetEliTempVar:: @ 81FF8CD +LavaridgeTown_Gym_B1F_EventScript_SetEliTempVar:: goto_if_defeated TRAINER_ELI, LavaridgeTown_Gym_B1F_EventScript_EndSetTrainerTempVars setvar VAR_TEMP_A, 1 -LavaridgeTown_Gym_B1F_EventScript_EndSetTrainerTempVars:: @ 81FF8DB +LavaridgeTown_Gym_B1F_EventScript_EndSetTrainerTempVars:: return -LavaridgeTown_Gym_B1F_EventScript_CheckBuryTrainers:: @ 81FF8DC +LavaridgeTown_Gym_B1F_EventScript_CheckBuryTrainers:: goto_if_defeated TRAINER_KEEGAN, LavaridgeTown_Gym_B1F_EventScript_CheckBuryJace setobjectmovementtype LOCALID_KEEGAN, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_B1F_EventScript_CheckBuryJace:: @ 81FF8E9 +LavaridgeTown_Gym_B1F_EventScript_CheckBuryJace:: goto_if_defeated TRAINER_JACE, LavaridgeTown_Gym_B1F_EventScript_CheckBuryJeff setobjectmovementtype LOCALID_JACE, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_B1F_EventScript_CheckBuryJeff:: @ 81FF8F6 +LavaridgeTown_Gym_B1F_EventScript_CheckBuryJeff:: goto_if_defeated TRAINER_JEFF, LavaridgeTown_Gym_B1F_EventScript_CheckBuryEli setobjectmovementtype LOCALID_JEFF, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_B1F_EventScript_CheckBuryEli:: @ 81FF903 +LavaridgeTown_Gym_B1F_EventScript_CheckBuryEli:: goto_if_defeated TRAINER_ELI, LavaridgeTown_Gym_B1F_EventScript_EndCheckBuryTrainers setobjectmovementtype LOCALID_ELI, MOVEMENT_TYPE_BURIED -LavaridgeTown_Gym_B1F_EventScript_EndCheckBuryTrainers:: @ 81FF910 +LavaridgeTown_Gym_B1F_EventScript_EndCheckBuryTrainers:: return diff --git a/data/maps/LavaridgeTown_HerbShop/scripts.inc b/data/maps/LavaridgeTown_HerbShop/scripts.inc index d98d6ef49f50..2637f5c09d73 100644 --- a/data/maps/LavaridgeTown_HerbShop/scripts.inc +++ b/data/maps/LavaridgeTown_HerbShop/scripts.inc @@ -1,7 +1,7 @@ -LavaridgeTown_HerbShop_MapScripts:: @ 81FE4D6 +LavaridgeTown_HerbShop_MapScripts:: .byte 0 -LavaridgeTown_HerbShop_EventScript_Clerk:: @ 81FE4D7 +LavaridgeTown_HerbShop_EventScript_Clerk:: lock faceplayer message LavaridgeTown_HerbShop_Text_WelcomeToHerbShop @@ -12,7 +12,7 @@ LavaridgeTown_HerbShop_EventScript_Clerk:: @ 81FE4D7 end .align 2 -LavaridgeTown_HerbShop_Pokemart: @ 81FE4F0 +LavaridgeTown_HerbShop_Pokemart: .2byte ITEM_ENERGY_POWDER .2byte ITEM_ENERGY_ROOT .2byte ITEM_HEAL_POWDER @@ -21,11 +21,11 @@ LavaridgeTown_HerbShop_Pokemart: @ 81FE4F0 release end -LavaridgeTown_HerbShop_EventScript_ExpertM:: @ 81FE4FC +LavaridgeTown_HerbShop_EventScript_ExpertM:: msgbox LavaridgeTown_HerbShop_Text_HerbalMedicineWorksButMonWillDislike, MSGBOX_NPC end -LavaridgeTown_HerbShop_EventScript_OldMan:: @ 81FE505 +LavaridgeTown_HerbShop_EventScript_OldMan:: lock faceplayer goto_if_set FLAG_RECEIVED_CHARCOAL, LavaridgeTown_HerbShop_EventScript_ExplainCharcoal @@ -37,22 +37,22 @@ LavaridgeTown_HerbShop_EventScript_OldMan:: @ 81FE505 release end -LavaridgeTown_HerbShop_EventScript_ExplainCharcoal:: @ 81FE534 +LavaridgeTown_HerbShop_EventScript_ExplainCharcoal:: msgbox LavaridgeTown_HerbShop_Text_ExplainCharcoal, MSGBOX_DEFAULT release end -LavaridgeTown_HerbShop_Text_WelcomeToHerbShop: @ 81FE53E +LavaridgeTown_HerbShop_Text_WelcomeToHerbShop: .string "Welcome to the HERB SHOP, home of\n" .string "effective and inexpensive medicine!$" -LavaridgeTown_HerbShop_Text_YouveComeToLookAtHerbalMedicine: @ 81FE584 +LavaridgeTown_HerbShop_Text_YouveComeToLookAtHerbalMedicine: .string "You've come to look at herbal medicine\n" .string "in LAVARIDGE?\p" .string "That's rather commendable.\p" .string "I like you! Take this!$" -LavaridgeTown_HerbShop_Text_ExplainCharcoal: @ 81FE5EB +LavaridgeTown_HerbShop_Text_ExplainCharcoal: .string "That CHARCOAL I gave you, it's used\n" .string "for making herbal medicine.\p" .string "It also does wonders when held by\n" @@ -60,7 +60,7 @@ LavaridgeTown_HerbShop_Text_ExplainCharcoal: @ 81FE5EB .string "It intensifies the power of FIRE-type\n" .string "moves.$" -LavaridgeTown_HerbShop_Text_HerbalMedicineWorksButMonWillDislike: @ 81FE685 +LavaridgeTown_HerbShop_Text_HerbalMedicineWorksButMonWillDislike: .string "Herbal medicine works impressively well.\n" .string "But your POKéMON will dislike you for it.\l" .string "It must be horribly bitter!$" diff --git a/data/maps/LavaridgeTown_House/scripts.inc b/data/maps/LavaridgeTown_House/scripts.inc index 6db5f9ee526e..58fd8ecb259c 100644 --- a/data/maps/LavaridgeTown_House/scripts.inc +++ b/data/maps/LavaridgeTown_House/scripts.inc @@ -1,11 +1,11 @@ -LavaridgeTown_House_MapScripts:: @ 81FF911 +LavaridgeTown_House_MapScripts:: .byte 0 -LavaridgeTown_House_EventScript_OldMan:: @ 81FF912 +LavaridgeTown_House_EventScript_OldMan:: msgbox LavaridgeTown_House_Text_WifeWarmingEggInHotSprings, MSGBOX_NPC end -LavaridgeTown_House_EventScript_Zigzagoon:: @ 81FF91B +LavaridgeTown_House_EventScript_Zigzagoon:: lock faceplayer waitse @@ -15,12 +15,12 @@ LavaridgeTown_House_EventScript_Zigzagoon:: @ 81FF91B release end -LavaridgeTown_House_Text_WifeWarmingEggInHotSprings: @ 81FF92E +LavaridgeTown_House_Text_WifeWarmingEggInHotSprings: .string "My wife's warming an EGG in the hot\n" .string "springs. This is what she told me.\p" .string "She left two POKéMON with the DAY CARE.\n" .string "And they discovered that EGG!$" -LavaridgeTown_House_Text_Zigzagoon: @ 81FF9BB +LavaridgeTown_House_Text_Zigzagoon: .string "ZIGZAGOON: Pshoo!$" diff --git a/data/maps/LavaridgeTown_Mart/scripts.inc b/data/maps/LavaridgeTown_Mart/scripts.inc index b5b3cb6f1301..001df3140105 100644 --- a/data/maps/LavaridgeTown_Mart/scripts.inc +++ b/data/maps/LavaridgeTown_Mart/scripts.inc @@ -1,7 +1,7 @@ -LavaridgeTown_Mart_MapScripts:: @ 81FF9CD +LavaridgeTown_Mart_MapScripts:: .byte 0 -LavaridgeTown_Mart_EventScript_Clerk:: @ 81FF9CE +LavaridgeTown_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ LavaridgeTown_Mart_EventScript_Clerk:: @ 81FF9CE end .align 2 -LavaridgeTown_Mart_Pokemart: @ 81FF9E8 +LavaridgeTown_Mart_Pokemart: .2byte ITEM_GREAT_BALL .2byte ITEM_SUPER_POTION .2byte ITEM_ANTIDOTE @@ -26,21 +26,21 @@ LavaridgeTown_Mart_Pokemart: @ 81FF9E8 release end -LavaridgeTown_Mart_EventScript_ExpertM:: @ 81FF9FE +LavaridgeTown_Mart_EventScript_ExpertM:: msgbox LavaridgeTown_Mart_Text_XSpeedFirstStrike, MSGBOX_NPC end -LavaridgeTown_Mart_EventScript_OldWoman:: @ 81FFA07 +LavaridgeTown_Mart_EventScript_OldWoman:: msgbox LavaridgeTown_Mart_Text_LocalSpecialtyOnMtChimney, MSGBOX_NPC end -LavaridgeTown_Mart_Text_XSpeedFirstStrike: @ 81FFA10 +LavaridgeTown_Mart_Text_XSpeedFirstStrike: .string "Use X SPEED to add to a POKéMON's\n" .string "SPEED in battle.\p" .string "That will help it get in the first\n" .string "strike--a decided advantage!$" -LavaridgeTown_Mart_Text_LocalSpecialtyOnMtChimney: @ 81FFA83 +LavaridgeTown_Mart_Text_LocalSpecialtyOnMtChimney: .string "On MT. CHIMNEY's peak, there's a local\n" .string "specialty that you can buy only there.\p" .string "Give it to a POKéMON--it will be elated.$" diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc b/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc index 0b596ba5bc8e..9ff72aa812c4 100644 --- a/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -LavaridgeTown_PokemonCenter_1F_MapScripts:: @ 81FFAFA +LavaridgeTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -LavaridgeTown_PokemonCenter_1F_OnTransition: @ 81FFB05 +LavaridgeTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_LAVARIDGE_TOWN call Common_EventScript_UpdateBrineyLocation end -LavaridgeTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FFB0E +LavaridgeTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,31 +18,31 @@ LavaridgeTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FFB0E release end -LavaridgeTown_PokemonCenter_1F_EventScript_Youngster:: @ 81FFB1C +LavaridgeTown_PokemonCenter_1F_EventScript_Youngster:: msgbox LavaridgeTown_PokemonCenter_1F_Text_HotSpringCanInvigorate, MSGBOX_NPC end -LavaridgeTown_PokemonCenter_1F_EventScript_Woman:: @ 81FFB25 +LavaridgeTown_PokemonCenter_1F_EventScript_Woman:: msgbox LavaridgeTown_PokemonCenter_1F_Text_TrainersPokemonSpendTimeTogether, MSGBOX_NPC end -LavaridgeTown_PokemonCenter_1F_EventScript_Gentleman:: @ 81FFB2E +LavaridgeTown_PokemonCenter_1F_EventScript_Gentleman:: msgbox LavaridgeTown_PokemonCenter_1F_Text_TrainersShouldRestToo, MSGBOX_NPC end -LavaridgeTown_PokemonCenter_1F_Text_TrainersPokemonSpendTimeTogether: @ 81FFB37 +LavaridgeTown_PokemonCenter_1F_Text_TrainersPokemonSpendTimeTogether: .string "I think POKéMON get closer to their\n" .string "TRAINERS if they spend time together.\p" .string "The longer the better.\n" .string "That's what I think.$" -LavaridgeTown_PokemonCenter_1F_Text_HotSpringCanInvigorate: @ 81FFBAD +LavaridgeTown_PokemonCenter_1F_Text_HotSpringCanInvigorate: .string "It's sort of magical how just sitting\n" .string "in a hot-spring pool can invigorate.\p" .string "I wish I could let my POKéMON\n" .string "soak, too.$" -LavaridgeTown_PokemonCenter_1F_Text_TrainersShouldRestToo: @ 81FFC21 +LavaridgeTown_PokemonCenter_1F_Text_TrainersShouldRestToo: .string "Hohoho! Hey, kid, you can reach\n" .string "the hot springs from here.\p" .string "If POKéMON are getting rest, so too\n" diff --git a/data/maps/LavaridgeTown_PokemonCenter_2F/scripts.inc b/data/maps/LavaridgeTown_PokemonCenter_2F/scripts.inc index 633f91e95f8d..d61aa0fe757b 100644 --- a/data/maps/LavaridgeTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/LavaridgeTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -LavaridgeTown_PokemonCenter_2F_MapScripts:: @ 81FFC97 +LavaridgeTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ LavaridgeTown_PokemonCenter_2F_MapScripts:: @ 81FFC97 .byte 0 @ The below 3 are unused and leftover from RS -LavaridgeTown_PokemonCenter_2F_EventScript_Colosseum:: @ 81FFCAC +LavaridgeTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -LavaridgeTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 81FFCB2 +LavaridgeTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -LavaridgeTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 81FFCB8 +LavaridgeTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index b5748ef606a8..048cabacbce3 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -1,12 +1,12 @@ .set LOCALID_WOMAN_1, 19 .set LOCALID_MAN_1, 20 -LilycoveCity_MapScripts:: @ 81E2B3C +LilycoveCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_OnTransition map_script MAP_SCRIPT_ON_LOAD, LilycoveCity_OnLoad .byte 0 -LilycoveCity_OnTransition: @ 81E2B47 +LilycoveCity_OnTransition: setflag FLAG_VISITED_LILYCOVE_CITY setvar VAR_CONTEST_HALL_STATE, 0 setflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER @@ -14,11 +14,11 @@ LilycoveCity_OnTransition: @ 81E2B47 call Common_EventScript_SetupRivalGfxId end -LilycoveCity_OnLoad: @ 81E2B61 +LilycoveCity_OnLoad: call_if_unset FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_SetWailmerMetatiles end -LilycoveCity_EventScript_SetWailmerMetatiles:: @ 81E2B6B +LilycoveCity_EventScript_SetWailmerMetatiles:: setmetatile 76, 12, METATILE_Lilycove_Wailmer0, 1 setmetatile 77, 12, METATILE_Lilycove_Wailmer1, 1 setmetatile 76, 13, METATILE_Lilycove_Wailmer2, 1 @@ -33,7 +33,7 @@ LilycoveCity_EventScript_SetWailmerMetatiles:: @ 81E2B6B setmetatile 78, 17, METATILE_Lilycove_Wailmer3, 1 return -LilycoveCity_EventScript_BerryGentleman:: @ 81E2BD8 +LilycoveCity_EventScript_BerryGentleman:: lock faceplayer dotimebasedevents @@ -49,16 +49,16 @@ LilycoveCity_EventScript_BerryGentleman:: @ 81E2BD8 release end -LilycoveCity_EventScript_ReceivedBerry:: @ 81E2C18 +LilycoveCity_EventScript_ReceivedBerry:: msgbox LilycoveCity_Text_PokeblocksSuitPokemon, MSGBOX_DEFAULT release end -LilycoveCity_EventScript_Man3:: @ 81E2C22 +LilycoveCity_EventScript_Man3:: msgbox LilycoveCity_Text_ContestHallInTown, MSGBOX_NPC end -LilycoveCity_EventScript_Girl:: @ 81E2C2B +LilycoveCity_EventScript_Girl:: lock faceplayer goto_if_set FLAG_BADGE07_GET, LilycoveCity_EventScript_GirlAquaGone @@ -66,16 +66,16 @@ LilycoveCity_EventScript_Girl:: @ 81E2C2B release end -LilycoveCity_EventScript_GirlAquaGone:: @ 81E2C40 +LilycoveCity_EventScript_GirlAquaGone:: msgbox LilycoveCity_Text_GoingToMoveDeleterForHMs, MSGBOX_DEFAULT release end -LilycoveCity_EventScript_RichBoy:: @ 81E2C4A +LilycoveCity_EventScript_RichBoy:: msgbox LilycoveCity_Text_ImFromKanto, MSGBOX_NPC end -LilycoveCity_EventScript_Sailor2:: @ 81E2C53 +LilycoveCity_EventScript_Sailor2:: lock faceplayer goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_Sailor2AquaGone @@ -83,12 +83,12 @@ LilycoveCity_EventScript_Sailor2:: @ 81E2C53 release end -LilycoveCity_EventScript_Sailor2AquaGone:: @ 81E2C68 +LilycoveCity_EventScript_Sailor2AquaGone:: msgbox LilycoveCity_Text_SomeonePuntedTeamAquaOut, MSGBOX_DEFAULT release end -LilycoveCity_EventScript_Woman2:: @ 81E2C72 +LilycoveCity_EventScript_Woman2:: lock faceplayer goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_Woman2AquaGone @@ -96,24 +96,24 @@ LilycoveCity_EventScript_Woman2:: @ 81E2C72 release end -LilycoveCity_EventScript_Woman2AquaGone:: @ 81E2C87 +LilycoveCity_EventScript_Woman2AquaGone:: msgbox LilycoveCity_Text_MissingPokemonCameBack, MSGBOX_DEFAULT release end -LilycoveCity_EventScript_Man2:: @ 81E2C91 +LilycoveCity_EventScript_Man2:: msgbox LilycoveCity_Text_ImArtDealer, MSGBOX_NPC end -LilycoveCity_EventScript_ExpertM1:: @ 81E2C9A +LilycoveCity_EventScript_ExpertM1:: msgbox LilycoveCity_Text_SeaRemainsForeverYoung, MSGBOX_SIGN end -LilycoveCity_EventScript_ExpertF:: @ 81E2CA3 +LilycoveCity_EventScript_ExpertF:: msgbox LilycoveCity_Text_SixtyYearsAgoHusbandProposed, MSGBOX_SIGN end -LilycoveCity_EventScript_ExpertM2:: @ 81E2CAC +LilycoveCity_EventScript_ExpertM2:: lock faceplayer goto_if_set FLAG_BADGE07_GET, LilycoveCity_EventScript_ExpertM2AquaGone @@ -121,44 +121,44 @@ LilycoveCity_EventScript_ExpertM2:: @ 81E2CAC release end -LilycoveCity_EventScript_ExpertM2AquaGone:: @ 81E2CC1 +LilycoveCity_EventScript_ExpertM2AquaGone:: msgbox LilycoveCity_Text_TeamAquaLotGoneForGood, MSGBOX_DEFAULT release end -LilycoveCity_EventScript_Sailor1:: @ 81E2CCB +LilycoveCity_EventScript_Sailor1:: msgbox LilycoveCity_Text_HeardTowerCalledSkyPillar, MSGBOX_NPC end -LilycoveCity_EventScript_FatMan:: @ 81E2CD4 +LilycoveCity_EventScript_FatMan:: msgbox LilycoveCity_Text_SawTallTowerOnRoute131, MSGBOX_NPC end -LilycoveCity_EventScript_Man1:: @ 81E2CDD +LilycoveCity_EventScript_Man1:: lockall msgbox LilycoveCity_Text_JustArrivedAndSawRarePokemon, MSGBOX_NPC applymovement LOCALID_MAN_1, Common_Movement_FaceOriginalDirection end -LilycoveCity_EventScript_Woman1:: @ 81E2CEE +LilycoveCity_EventScript_Woman1:: lockall msgbox LilycoveCity_Text_HoneymoonVowToSeeRarePokemon, MSGBOX_NPC applymovement LOCALID_WOMAN_1, Common_Movement_FaceOriginalDirection end -LilycoveCity_EventScript_CitySign:: @ 81E2CFF +LilycoveCity_EventScript_CitySign:: msgbox LilycoveCity_Text_CitySign, MSGBOX_SIGN end -LilycoveCity_EventScript_ContestHallSign:: @ 81E2D08 +LilycoveCity_EventScript_ContestHallSign:: msgbox LilycoveCity_Text_ContestHallSign, MSGBOX_SIGN end -LilycoveCity_EventScript_MotelSign:: @ 81E2D11 +LilycoveCity_EventScript_MotelSign:: msgbox LilycoveCity_Text_MotelSign, MSGBOX_SIGN end -LilycoveCity_EventScript_MuseumSign:: @ 81E2D1A +LilycoveCity_EventScript_MuseumSign:: lockall specialvar VAR_0x8004, CountPlayerMuseumPaintings switch VAR_0x8004 @@ -167,36 +167,36 @@ LilycoveCity_EventScript_MuseumSign:: @ 81E2D1A releaseall end -LilycoveCity_EventScript_MuseumSignNoPaintings:: @ 81E2D3A +LilycoveCity_EventScript_MuseumSignNoPaintings:: msgbox LilycoveCity_Text_MuseumSign, MSGBOX_DEFAULT releaseall end -LilycoveCity_EventScript_HarborSign:: @ 81E2D44 +LilycoveCity_EventScript_HarborSign:: lockall goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_EventScript_HarborSignFerryReady msgbox LilycoveCity_Text_HarborSignUnderConstruction, MSGBOX_DEFAULT releaseall end -LilycoveCity_EventScript_HarborSignFerryReady:: @ 81E2D58 +LilycoveCity_EventScript_HarborSignFerryReady:: msgbox LilycoveCity_Text_HarborSign, MSGBOX_DEFAULT releaseall end -LilycoveCity_EventScript_TrainerFanClubSign:: @ 81E2D62 +LilycoveCity_EventScript_TrainerFanClubSign:: msgbox LilycoveCity_Text_TrainerFanClubSign, MSGBOX_SIGN end -LilycoveCity_EventScript_DepartmentStoreSign:: @ 81E2D6B +LilycoveCity_EventScript_DepartmentStoreSign:: msgbox LilycoveCity_Text_DepartmentStoreSign, MSGBOX_SIGN end -LilycoveCity_EventScript_MoveDeletersHouseSign:: @ 81E2D74 +LilycoveCity_EventScript_MoveDeletersHouseSign:: msgbox LilycoveCity_Text_MoveDeletersHouseSign, MSGBOX_SIGN end -LilycoveCity_EventScript_WailmerTrainerGrunt:: @ 81E2D7D +LilycoveCity_EventScript_WailmerTrainerGrunt:: lockall goto_if_set FLAG_MET_WAILMER_TRAINER, LilycoveCity_EventScript_MetWailmerTrainer msgbox LilycoveCity_Text_WailmerLeapOutOfWater, MSGBOX_DEFAULT @@ -209,28 +209,28 @@ LilycoveCity_EventScript_WailmerTrainerGrunt:: @ 81E2D7D releaseall end -LilycoveCity_EventScript_MetWailmerTrainer:: @ 81E2DB0 +LilycoveCity_EventScript_MetWailmerTrainer:: msgbox LilycoveCity_Text_WailmerLeapOutOfWater, MSGBOX_DEFAULT releaseall end -LilycoveCity_EventScript_AquaGrunt1:: @ 81E2DBA +LilycoveCity_EventScript_AquaGrunt1:: msgbox LilycoveCity_Text_MovedLootIntoHideoutToday, MSGBOX_NPC end -LilycoveCity_EventScript_AquaGrunt2:: @ 81E2DC3 +LilycoveCity_EventScript_AquaGrunt2:: msgbox LilycoveCity_Text_ChanceToDoBigThings, MSGBOX_NPC end -LilycoveCity_EventScript_AquaGrunt3:: @ 81E2DCC +LilycoveCity_EventScript_AquaGrunt3:: msgbox LilycoveCity_Text_DontGoNearCaveInCove, MSGBOX_NPC end -LilycoveCity_EventScript_AquaGrunt4:: @ 81E2DD5 +LilycoveCity_EventScript_AquaGrunt4:: msgbox LilycoveCity_Text_IfWorldBecomesOurs, MSGBOX_NPC end -LilycoveCity_EventScript_Rival:: @ 81E2DDE +LilycoveCity_EventScript_Rival:: lock faceplayer checkplayergender @@ -240,7 +240,7 @@ LilycoveCity_EventScript_Rival:: @ 81E2DDE goto_if_eq LilycoveCity_EventScript_Brendan end -LilycoveCity_EventScript_May:: @ 81E2DF8 +LilycoveCity_EventScript_May:: playbgm MUS_ENCOUNTER_MAY, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattle @@ -253,15 +253,15 @@ LilycoveCity_EventScript_May:: @ 81E2DF8 case 2, LilycoveCity_EventScript_BattleMayMudkip end -LilycoveCity_EventScript_MayAskToBattleAgain:: @ 81E2E48 +LilycoveCity_EventScript_MayAskToBattleAgain:: msgbox LilycoveCity_Text_MayBattleMe, MSGBOX_YESNO return -LilycoveCity_EventScript_MayAskToBattle:: @ 81E2E51 +LilycoveCity_EventScript_MayAskToBattle:: msgbox LilycoveCity_Text_MayShoppingLetsBattle, MSGBOX_YESNO return -LilycoveCity_EventScript_DeclineMayBattle:: @ 81E2E5A +LilycoveCity_EventScript_DeclineMayBattle:: setflag FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE msgbox LilycoveCity_Text_MayNotRaisingPokemon, MSGBOX_DEFAULT savebgm MUS_DUMMY @@ -269,7 +269,7 @@ LilycoveCity_EventScript_DeclineMayBattle:: @ 81E2E5A release end -LilycoveCity_EventScript_Brendan:: @ 81E2E6B +LilycoveCity_EventScript_Brendan:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattle @@ -282,15 +282,15 @@ LilycoveCity_EventScript_Brendan:: @ 81E2E6B case 2, LilycoveCity_EventScript_BattleBrendanMudkip end -LilycoveCity_EventScript_BrendanAskToBattleAgain:: @ 81E2EBB +LilycoveCity_EventScript_BrendanAskToBattleAgain:: msgbox LilycoveCity_Text_BrendanBattleMe, MSGBOX_YESNO return -LilycoveCity_EventScript_BrendanAskToBattle:: @ 81E2EC4 +LilycoveCity_EventScript_BrendanAskToBattle:: msgbox LilycoveCity_Text_BrendanShoppingLetsBattle, MSGBOX_YESNO return -LilycoveCity_EventScript_DeclineBrendanBattle:: @ 81E2ECD +LilycoveCity_EventScript_DeclineBrendanBattle:: setflag FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE msgbox LilycoveCity_Text_BrendanNoConfidence, MSGBOX_DEFAULT savebgm MUS_DUMMY @@ -298,37 +298,37 @@ LilycoveCity_EventScript_DeclineBrendanBattle:: @ 81E2ECD release end -LilycoveCity_EventScript_BattleMayTreecko:: @ 81E2EDE +LilycoveCity_EventScript_BattleMayTreecko:: trainerbattle_no_intro TRAINER_MAY_LILYCOVE_TREECKO, LilycoveCity_Text_MayDefeat goto LilycoveCity_EventScript_DefeatedMay end -LilycoveCity_EventScript_BattleMayTorchic:: @ 81E2EEE +LilycoveCity_EventScript_BattleMayTorchic:: trainerbattle_no_intro TRAINER_MAY_LILYCOVE_TORCHIC, LilycoveCity_Text_MayDefeat goto LilycoveCity_EventScript_DefeatedMay end -LilycoveCity_EventScript_BattleMayMudkip:: @ 81E2EFE +LilycoveCity_EventScript_BattleMayMudkip:: trainerbattle_no_intro TRAINER_MAY_LILYCOVE_MUDKIP, LilycoveCity_Text_MayDefeat goto LilycoveCity_EventScript_DefeatedMay end -LilycoveCity_EventScript_BattleBrendanTreecko:: @ 81E2F0E +LilycoveCity_EventScript_BattleBrendanTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_TREECKO, LilycoveCity_Text_BrendanDefeat goto LilycoveCity_EventScript_DefeatedBrendan end -LilycoveCity_EventScript_BattleBrendanTorchic:: @ 81E2F1E +LilycoveCity_EventScript_BattleBrendanTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_TORCHIC, LilycoveCity_Text_BrendanDefeat goto LilycoveCity_EventScript_DefeatedBrendan end -LilycoveCity_EventScript_BattleBrendanMudkip:: @ 81E2F2E +LilycoveCity_EventScript_BattleBrendanMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_LILYCOVE_MUDKIP, LilycoveCity_Text_BrendanDefeat goto LilycoveCity_EventScript_DefeatedBrendan end -LilycoveCity_EventScript_DefeatedMay:: @ 81E2F3E +LilycoveCity_EventScript_DefeatedMay:: msgbox LilycoveCity_Text_MayGoingBackToLittleroot, MSGBOX_DEFAULT setvar VAR_RESULT, FALSE call_if_set FLAG_BADGE06_GET, LilycoveCity_EventScript_CheckFinalBadge @@ -341,28 +341,28 @@ LilycoveCity_EventScript_DefeatedMay:: @ 81E2F3E goto LilycoveCity_EventScript_RivalFlyAway end -LilycoveCity_EventScript_CheckFinalBadge:: @ 81E2F76 +LilycoveCity_EventScript_CheckFinalBadge:: goto_if_set FLAG_BADGE08_GET, LilycoveCity_EventScript_HasFinalBadge return -LilycoveCity_EventScript_HasFinalBadge:: @ 81E2F80 +LilycoveCity_EventScript_HasFinalBadge:: setvar VAR_RESULT, TRUE return -LilycoveCity_EventScript_MayCollectBadges:: @ 81E2F86 +LilycoveCity_EventScript_MayCollectBadges:: msgbox LilycoveCity_Text_MayYouGoingToCollectBadges, MSGBOX_DEFAULT return -LilycoveCity_EventScript_MayPokemonLeague:: @ 81E2F8F +LilycoveCity_EventScript_MayPokemonLeague:: goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_EventScript_MayBattleFrontier msgbox LilycoveCity_Text_MayYouGoingToPokemonLeague, MSGBOX_DEFAULT return -LilycoveCity_EventScript_MayBattleFrontier:: @ 81E2FA1 +LilycoveCity_EventScript_MayBattleFrontier:: msgbox LilycoveCity_Text_MayYouGoingToBattleFrontier, MSGBOX_DEFAULT return -LilycoveCity_EventScript_DefeatedBrendan:: @ 81E2FAA +LilycoveCity_EventScript_DefeatedBrendan:: msgbox LilycoveCity_Text_BrendanGoingBackToLittleroot, MSGBOX_DEFAULT setvar VAR_RESULT, FALSE call_if_set FLAG_BADGE06_GET, LilycoveCity_EventScript_CheckFinalBadge @@ -375,20 +375,20 @@ LilycoveCity_EventScript_DefeatedBrendan:: @ 81E2FAA goto LilycoveCity_EventScript_RivalFlyAway end -LilycoveCity_EventScript_BrendanCollectBadges:: @ 81E2FE2 +LilycoveCity_EventScript_BrendanCollectBadges:: msgbox LilycoveCity_Text_BrendanYouGoingToCollectBadges, MSGBOX_DEFAULT return -LilycoveCity_EventScript_BrendanPokemonLeague:: @ 81E2FEB +LilycoveCity_EventScript_BrendanPokemonLeague:: goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_EventScript_BrendanBattleFrontier msgbox LilycoveCity_Text_BrendanYouGoingToPokemonLeague, MSGBOX_DEFAULT return -LilycoveCity_EventScript_BrendanBattleFrontier:: @ 81E2FFD +LilycoveCity_EventScript_BrendanBattleFrontier:: msgbox LilycoveCity_Text_BrendanYouGoingToBattleFrontier, MSGBOX_DEFAULT return -LilycoveCity_EventScript_RivalFlyAway:: @ 81E3006 +LilycoveCity_EventScript_RivalFlyAway:: closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown waitmovement 0 @@ -404,7 +404,7 @@ LilycoveCity_EventScript_RivalFlyAway:: @ 81E3006 release end -LilycoveCity_EventScript_SchoolKidM:: @ 81E302D +LilycoveCity_EventScript_SchoolKidM:: lock faceplayer msgbox LilycoveCity_Text_DoYouKnowAboutBerryBlender, MSGBOX_YESNO @@ -415,15 +415,15 @@ LilycoveCity_EventScript_SchoolKidM:: @ 81E302D release end -LilycoveCity_EventScript_KnowAboutBerryBlender:: @ 81E304F +LilycoveCity_EventScript_KnowAboutBerryBlender:: msgbox LilycoveCity_Text_FasterSpinBetterPokeblocks, MSGBOX_DEFAULT return -LilycoveCity_EventScript_DontKnowAboutBerryBlender:: @ 81E3058 +LilycoveCity_EventScript_DontKnowAboutBerryBlender:: msgbox LilycoveCity_Text_ExplainBerryBlender, MSGBOX_DEFAULT return -LilycoveCity_Text_MayShoppingLetsBattle: @ 81E3061 +LilycoveCity_Text_MayShoppingLetsBattle: .string "MAY: Oh, hey?\n" .string "{PLAYER}{KUN}, are you shopping, too?\p" .string "I bought a whole bunch of DOLLS and\n" @@ -436,35 +436,35 @@ LilycoveCity_Text_MayShoppingLetsBattle: @ 81E3061 .string "I'll battle with you, so you can show\n" .string "me your POKéMON, {PLAYER}{KUN}.$" -LilycoveCity_Text_MayNotRaisingPokemon: @ 81E318D +LilycoveCity_Text_MayNotRaisingPokemon: .string "MAY: Oh, why? {PLAYER}{KUN}, haven't you\n" .string "been raising your POKéMON?\p" .string "That's not a very good showing as a\n" .string "TRAINER…$" -LilycoveCity_Text_MayBattleMe: @ 81E31F5 +LilycoveCity_Text_MayBattleMe: .string "MAY: Come on, battle with me, so I can\n" .string "check out your POKéMON!$" -LilycoveCity_Text_MayWontBeBeaten: @ 81E3234 +LilycoveCity_Text_MayWontBeBeaten: .string "MAY: The POKéMON I raised won't be\n" .string "beaten by your POKéMON, {PLAYER}{KUN}!$" -LilycoveCity_Text_MayDefeat: @ 81E3275 +LilycoveCity_Text_MayDefeat: .string "… … … … … … … …\p" .string "I remember the battle I had with you,\n" .string "{PLAYER}{KUN}, on ROUTE 103.\p" .string "That battle helped you become this\n" .string "strong, {PLAYER}{KUN}, didn't it?$" -LilycoveCity_Text_MayGoingBackToLittleroot: @ 81E32FB +LilycoveCity_Text_MayGoingBackToLittleroot: .string "MAY: I'm thinking of going back to\n" .string "LITTLEROOT soon.\p" .string "I've caught a decent group of POKéMON,\n" .string "and my POKéDEX is coming along, so\l" .string "I'm going home to show my dad.$" -LilycoveCity_Text_MayYouGoingToCollectBadges: @ 81E3398 +LilycoveCity_Text_MayYouGoingToCollectBadges: .string "{PLAYER}{KUN}, what are you going to do?\p" .string "Collect all the GYM BADGES and take\n" .string "the POKéMON LEAGUE challenge?\p" @@ -473,7 +473,7 @@ LilycoveCity_Text_MayYouGoingToCollectBadges: @ 81E3398 .string "POKéDEX. I'll complete it before you!\p" .string "See you!$" -LilycoveCity_Text_MayYouGoingToPokemonLeague: @ 81E346D +LilycoveCity_Text_MayYouGoingToPokemonLeague: .string "{PLAYER}{KUN}, what are you going to do?\p" .string "Are you taking the POKéMON LEAGUE\n" .string "challenge?\p" @@ -483,7 +483,7 @@ LilycoveCity_Text_MayYouGoingToPokemonLeague: @ 81E346D .string "but I'll finish my POKéDEX before you!\p" .string "See you!$" -LilycoveCity_Text_MayYouGoingToBattleFrontier: @ 81E353A +LilycoveCity_Text_MayYouGoingToBattleFrontier: .string "{PLAYER}{KUN}, what are you going to do?\p" .string "Are you taking the BATTLE FRONTIER\n" .string "challenge?\p" @@ -493,7 +493,7 @@ LilycoveCity_Text_MayYouGoingToBattleFrontier: @ 81E353A .string "but I'll finish my POKéDEX before you!\p" .string "See you!$" -LilycoveCity_Text_BrendanShoppingLetsBattle: @ 81E3608 +LilycoveCity_Text_BrendanShoppingLetsBattle: .string "BRENDAN: Oh, hey, it's {PLAYER}.\p" .string "I'm running an errand for my dad.\n" .string "No, I'm not buying any DOLLS.\p" @@ -501,39 +501,39 @@ LilycoveCity_Text_BrendanShoppingLetsBattle: @ 81E3608 .string "Want to have a battle to see who's been\n" .string "raising POKéMON better?$" -LilycoveCity_Text_BrendanNoConfidence: @ 81E36BF +LilycoveCity_Text_BrendanNoConfidence: .string "BRENDAN: Oh, what's the matter?\n" .string "Don't have the confidence?$" -LilycoveCity_Text_BrendanBattleMe: @ 81E36FA +LilycoveCity_Text_BrendanBattleMe: .string "BRENDAN: Want to battle to see who's\n" .string "been raising POKéMON better?$" -LilycoveCity_Text_BrendanWontBeBeaten: @ 81E373C +LilycoveCity_Text_BrendanWontBeBeaten: .string "BRENDAN: Aww, but you know I'm not\n" .string "going to lose to no {PLAYER}.$" -LilycoveCity_Text_BrendanDefeat: @ 81E3777 +LilycoveCity_Text_BrendanDefeat: .string "Humph…\n" .string "You've done a lot of raising.\p" .string "That stings a bit--I had a head start\n" .string "on you as a TRAINER…$" -LilycoveCity_Text_BrendanGoingBackToLittleroot: @ 81E37D7 +LilycoveCity_Text_BrendanGoingBackToLittleroot: .string "BRENDAN: I…\n" .string "I plan on going home to LITTLEROOT.\p" .string "You know I'm helping out my dad on his\n" .string "POKéDEX. It's coming together pretty\l" .string "decently, so I should go show him.$" -LilycoveCity_Text_BrendanYouGoingToCollectBadges: @ 81E3876 +LilycoveCity_Text_BrendanYouGoingToCollectBadges: .string "{PLAYER}, what are you going to do?\p" .string "Collect all the GYM BADGES and take\n" .string "the POKéMON LEAGUE challenge?\p" .string "Maybe I'll do that, too…\p" .string "Well, anyway, hang in there!$" -LilycoveCity_Text_BrendanYouGoingToPokemonLeague: @ 81E390C +LilycoveCity_Text_BrendanYouGoingToPokemonLeague: .string "{PLAYER}, what are you going to do?\p" .string "Since you're that strong, are you\n" .string "taking the POKéMON LEAGUE challenge?\p" @@ -542,7 +542,7 @@ LilycoveCity_Text_BrendanYouGoingToPokemonLeague: @ 81E390C .string "you, {PLAYER}.\p" .string "Well, anyway, hang in there!$" -LilycoveCity_Text_BrendanYouGoingToBattleFrontier: @ 81E39E3 +LilycoveCity_Text_BrendanYouGoingToBattleFrontier: .string "{PLAYER}, what are you going to do?\p" .string "Are you taking the BATTLE FRONTIER\n" .string "challenge?\p" @@ -556,14 +556,14 @@ LilycoveCity_Text_BrendanYouGoingToBattleFrontier: @ 81E39E3 .string "FRONTIER.\p" .string "Well, anyway, hang in there!$" -LilycoveCity_Text_MovedLootIntoHideoutToday: @ 81E3B2C +LilycoveCity_Text_MovedLootIntoHideoutToday: .string "Fufufu…\p" .string "We moved more loot into our secret\n" .string "HIDEOUT today…\p" .string "Wh-who are you?!\n" .string "I was just talking to myself!$" -LilycoveCity_Text_ChanceToDoBigThings: @ 81E3B95 +LilycoveCity_Text_ChanceToDoBigThings: .string "I'm just a GRUNT, so I don't know what\n" .string "the BOSS is thinking…\p" .string "But being on TEAM AQUA, I know I'll get\n" @@ -571,44 +571,44 @@ LilycoveCity_Text_ChanceToDoBigThings: @ 81E3B95 .string "Wh-who are you?!\n" .string "I was just talking to myself!$" -LilycoveCity_Text_DontGoNearCaveInCove: @ 81E3C46 +LilycoveCity_Text_DontGoNearCaveInCove: .string "Hey, you!\p" .string "Don't go near the cave in the cove!\p" .string "Why? You don't need a reason why!\n" .string "I'm an adult, so you just listen to me!$" -LilycoveCity_Text_IfWorldBecomesOurs: @ 81E3CBE +LilycoveCity_Text_IfWorldBecomesOurs: .string "If this whole wide world becomes ours,\n" .string "TEAM AQUA's, it will be a happier\l" .string "place for POKéMON, too.$" -LilycoveCity_Text_WailmerLeapOutOfWater: @ 81E3D1F +LilycoveCity_Text_WailmerLeapOutOfWater: .string "There! WAILMER!\n" .string "Leap out of the water now!$" -LilycoveCity_Text_GetLostMessingUpTraining: @ 81E3D4A +LilycoveCity_Text_GetLostMessingUpTraining: .string "Hunh? What do you want?\p" .string "You're messing up our training,\n" .string "so can you, like, get lost?$" -LilycoveCity_Text_ContestHallInTown: @ 81E3D9E +LilycoveCity_Text_ContestHallInTown: .string "There's a POKéMON CONTEST HALL\n" .string "right in this here town. \p" .string "That means well-raised POKéMON will\n" .string "come from all over the country.\p" .string "My heart swells with excitement!$" -LilycoveCity_Text_StrangeCaveInCove: @ 81E3E3C +LilycoveCity_Text_StrangeCaveInCove: .string "Have you seen that strange cave in\n" .string "the cove at the edge of town?$" -LilycoveCity_Text_GoingToMoveDeleterForHMs: @ 81E3E7D +LilycoveCity_Text_GoingToMoveDeleterForHMs: .string "I'm going to teach my POKéMON some new\n" .string "moves for entering a CONTEST.\p" .string "So, I'm going to see the MOVE DELETER\n" .string "and make it forget HM moves.$" -LilycoveCity_Text_ImFromKanto: @ 81E3F05 +LilycoveCity_Text_ImFromKanto: .string "I came from KANTO.\p" .string "The HOENN region is beautiful with\n" .string "all its water and verdant nature.\p" @@ -616,50 +616,50 @@ LilycoveCity_Text_ImFromKanto: @ 81E3F05 .string "Could there be rare POKéMON that live\n" .string "only in this area?$" -LilycoveCity_Text_TeamAquaBeenTrainingWailmer: @ 81E3FAB +LilycoveCity_Text_TeamAquaBeenTrainingWailmer: .string "TEAM AQUA's been training their\n" .string "WAILMER in the cove.\p" .string "We SAILORS can't get our boats out\n" .string "to sea with them in the way!$" -LilycoveCity_Text_SomeonePuntedTeamAquaOut: @ 81E4020 +LilycoveCity_Text_SomeonePuntedTeamAquaOut: .string "Ahoy, did you know?\p" .string "Someone punted TEAM AQUA out of\n" .string "the way for us!\p" .string "That got the WAILMER out of the cove,\n" .string "so we can get our boats out again.$" -LilycoveCity_Text_SomeoneStoleMyPokemon: @ 81E40AD +LilycoveCity_Text_SomeoneStoleMyPokemon: .string "I was taking a relaxing snooze at the\n" .string "seaside inn to the sound of waves…\p" .string "When someone stole my POKéMON!\p" .string "Who's the abductor?\n" .string "TEAM AQUA? Is it TEAM AQUA?$" -LilycoveCity_Text_MissingPokemonCameBack: @ 81E4145 +LilycoveCity_Text_MissingPokemonCameBack: .string "My missing POKéMON…\n" .string "It came back without me noticing!$" -LilycoveCity_Text_ImArtDealer: @ 81E417B +LilycoveCity_Text_ImArtDealer: .string "I'm an ART DEALER.\p" .string "I am a buyer and seller of fine art,\n" .string "especially paintings.\p" .string "I've heard that the MUSEUM here has\n" .string "magnificent works on exhibit…$" -LilycoveCity_Text_SeaRemainsForeverYoung: @ 81E420B +LilycoveCity_Text_SeaRemainsForeverYoung: .string "Even as we grow old and wrinkled,\n" .string "the sea remains forever young with\l" .string "the vivid brilliance of life…\p" .string "Fwohoho fwohohohoho…$" -LilycoveCity_Text_SixtyYearsAgoHusbandProposed: @ 81E4283 +LilycoveCity_Text_SixtyYearsAgoHusbandProposed: .string "It was sixty years ago that my husband\n" .string "proposed to me here.\l" .string "The sea remains as beautiful as ever.\p" .string "Mufufufu mufufufufufu…$" -LilycoveCity_Text_TeamAquaRenovatedCavern: @ 81E42FC +LilycoveCity_Text_TeamAquaRenovatedCavern: .string "Hm, you know of the peculiar cavern\n" .string "in this cove?\p" .string "That had been a natural formation,\n" @@ -670,92 +670,92 @@ LilycoveCity_Text_TeamAquaRenovatedCavern: @ 81E42FC .string "But what they do and what they say\n" .string "don't match at all!$" -LilycoveCity_Text_TeamAquaLotGoneForGood: @ 81E43FF +LilycoveCity_Text_TeamAquaLotGoneForGood: .string "That cave in the cove…\p" .string "I didn't notice it right away,\n" .string "but it's completely empty now.\p" .string "That TEAM AQUA lot, they must\n" .string "have gone away for good.$" -LilycoveCity_Text_CitySign: @ 81E448B +LilycoveCity_Text_CitySign: .string "LILYCOVE CITY\p" .string "“Where the land ends and the\n" .string "sea begins.”$" -LilycoveCity_Text_ContestHallSign: @ 81E44C3 +LilycoveCity_Text_ContestHallSign: .string "POKéMON CONTEST HALL\n" .string "“The gathering place for TRAINERS!”$" -LilycoveCity_Text_MotelSign: @ 81E44FC +LilycoveCity_Text_MotelSign: .string "COVE LILY MOTEL\p" .string "“Remember us as COVE LILY of\n" .string "LILYCOVE.”$" -LilycoveCity_Text_MuseumSign: @ 81E4534 +LilycoveCity_Text_MuseumSign: .string "LILYCOVE MUSEUM\p" .string "“POKéMON Masterpiece Collection\n" .string "on exhibit!”$" -LilycoveCity_Text_MuseumSignPlayersExhibit: @ 81E4571 +LilycoveCity_Text_MuseumSignPlayersExhibit: .string "LILYCOVE MUSEUM\p" .string "“{PLAYER}'s POKéMON Collection\n" .string "on exhibit!”$" -LilycoveCity_Text_HarborSignUnderConstruction: @ 81E45A7 +LilycoveCity_Text_HarborSignUnderConstruction: .string "LILYCOVE CITY HARBOR\p" .string "“The ferry S.S. TIDAL is under\n" .string "construction in SLATEPORT CITY.\p" .string "“Service is scheduled to begin\n" .string "shortly.”$" -LilycoveCity_Text_HarborSign: @ 81E4624 +LilycoveCity_Text_HarborSign: .string "LILYCOVE CITY HARBOR\p" .string "“Enjoy a delightful cruise on\n" .string "the ferry S.S. TIDAL.”$" -LilycoveCity_Text_TrainerFanClubSign: @ 81E466E +LilycoveCity_Text_TrainerFanClubSign: .string "POKéMON TRAINER FAN CLUB\p" .string "The names of TRAINERS are scribbled\n" .string "all over the sign…$" -LilycoveCity_Text_DepartmentStoreSign: @ 81E46BE +LilycoveCity_Text_DepartmentStoreSign: .string "LILYCOVE DEPARTMENT STORE\p" .string "“Overflowing with great merchandise\n" .string "and excitement!\p" .string "“A great place to find that something\n" .string "you need!”$" -LilycoveCity_Text_MoveDeletersHouseSign: @ 81E473D +LilycoveCity_Text_MoveDeletersHouseSign: .string "MOVE DELETER'S HOUSE\p" .string "“Unwanted POKéMON moves deleted.”$" -LilycoveCity_Text_DoYouKnowAboutBerryBlender: @ 81E4774 +LilycoveCity_Text_DoYouKnowAboutBerryBlender: .string "Do you know about the machine\n" .string "BERRY BLENDER?$" -LilycoveCity_Text_FasterSpinBetterPokeblocks: @ 81E47A1 +LilycoveCity_Text_FasterSpinBetterPokeblocks: .string "People have to work together to get it\n" .string "to spin faster.\p" .string "The faster you can make it spin, the\n" .string "better {POKEBLOCK}S you can get, I've heard.$" -LilycoveCity_Text_ExplainBerryBlender: @ 81E4824 +LilycoveCity_Text_ExplainBerryBlender: .string "It's used for making a kind of candy\n" .string "called a {POKEBLOCK}.\p" .string "If you give a good {POKEBLOCK} to a POKéMON,\n" .string "its condition will improve by a lot.$" -LilycoveCity_Text_HeardTowerCalledSkyPillar: @ 81E48A5 +LilycoveCity_Text_HeardTowerCalledSkyPillar: .string "I heard there's a tower somewhere out\n" .string "on the sea routes.\p" .string "It's called the SKY PILLAR, I hear.$" -LilycoveCity_Text_SawTallTowerOnRoute131: @ 81E4902 +LilycoveCity_Text_SawTallTowerOnRoute131: .string "I saw this tall tower somewhere\n" .string "around ROUTE 131.\p" .string "Could that possibly be…?$" -LilycoveCity_Text_JustArrivedAndSawRarePokemon: @ 81E494D +LilycoveCity_Text_JustArrivedAndSawRarePokemon: .string "We just arrived here on our\n" .string "honeymoon vacation.\p" .string "We happened to see a DRAGON-type\n" @@ -763,7 +763,7 @@ LilycoveCity_Text_JustArrivedAndSawRarePokemon: @ 81E494D .string "Do cool POKéMON like that live in\n" .string "the HOENN region?$" -LilycoveCity_Text_HoneymoonVowToSeeRarePokemon: @ 81E49F4 +LilycoveCity_Text_HoneymoonVowToSeeRarePokemon: .string "On our honeymoon, we vowed to see as\n" .string "many rare POKéMON as we can.\p" .string "So we were delighted to see a rare\n" diff --git a/data/maps/LilycoveCity_ContestHall/scripts.inc b/data/maps/LilycoveCity_ContestHall/scripts.inc index f390e9b24247..610611358d70 100644 --- a/data/maps/LilycoveCity_ContestHall/scripts.inc +++ b/data/maps/LilycoveCity_ContestHall/scripts.inc @@ -27,26 +27,26 @@ .set LOCALID_CUTE_AUDIENCE_3, 30 .set LOCALID_CUTE_AUDIENCE_2, 31 -LilycoveCity_ContestHall_MapScripts:: @ 821B484 +LilycoveCity_ContestHall_MapScripts:: .byte 0 -LilycoveCity_ContestHall_EventScript_Boy1:: @ 821B485 +LilycoveCity_ContestHall_EventScript_Boy1:: msgbox LilycoveCity_ContestHall_Text_TodayWonSmartnessContest, MSGBOX_NPC end -LilycoveCity_ContestHall_EventScript_Boy2:: @ 821B48E +LilycoveCity_ContestHall_EventScript_Boy2:: msgbox LilycoveCity_ContestHall_Text_EnteredBunchOfContests, MSGBOX_NPC end -LilycoveCity_ContestHall_EventScript_Girl:: @ 821B497 +LilycoveCity_ContestHall_EventScript_Girl:: msgbox LilycoveCity_ContestHall_Text_ManWhoWonEarlierHadPokeblocks, MSGBOX_NPC end -LilycoveCity_ContestHall_EventScript_Sailor:: @ 821B4A0 +LilycoveCity_ContestHall_EventScript_Sailor:: msgbox LilycoveCity_ContestHall_Text_IsntThisPlaceHumongous, MSGBOX_NPC end -LilycoveCity_ContestHall_EventScript_SmartContestMC:: @ 821B4A9 +LilycoveCity_ContestHall_EventScript_SmartContestMC:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_GiveItBestSmartAppeal, MSGBOX_DEFAULT @@ -56,7 +56,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestMC:: @ 821B4A9 release end -LilycoveCity_ContestHall_EventScript_SmartContestJudge:: @ 821B4C0 +LilycoveCity_ContestHall_EventScript_SmartContestJudge:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_AreYouEnjoyingThisContest, MSGBOX_DEFAULT @@ -66,7 +66,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestJudge:: @ 821B4C0 release end -LilycoveCity_ContestHall_EventScript_SmartContestant1:: @ 821B4D7 +LilycoveCity_ContestHall_EventScript_SmartContestant1:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_EnteredWrongContest, MSGBOX_DEFAULT @@ -76,7 +76,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestant1:: @ 821B4D7 release end -LilycoveCity_ContestHall_EventScript_SmartContestant2:: @ 821B4EE +LilycoveCity_ContestHall_EventScript_SmartContestant2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_RaisedMonToBeSmart, MSGBOX_DEFAULT @@ -86,7 +86,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestant2:: @ 821B4EE release end -LilycoveCity_ContestHall_EventScript_SmartContestant3:: @ 821B505 +LilycoveCity_ContestHall_EventScript_SmartContestant3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_IfMonPullsSmartMoveNext, MSGBOX_DEFAULT @@ -96,7 +96,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestant3:: @ 821B505 release end -LilycoveCity_ContestHall_EventScript_SmartContestant4:: @ 821B51C +LilycoveCity_ContestHall_EventScript_SmartContestant4:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_DontAppreciateCuteLeechLife, MSGBOX_DEFAULT @@ -106,11 +106,11 @@ LilycoveCity_ContestHall_EventScript_SmartContestant4:: @ 821B51C release end -LilycoveCity_ContestHall_EventScript_SmartContestAudience1:: @ 821B533 +LilycoveCity_ContestHall_EventScript_SmartContestAudience1:: msgbox LilycoveCity_ContestHall_Text_YoureBeautifulGrandpa, MSGBOX_SIGN end -LilycoveCity_ContestHall_EventScript_SmartContestAudience2:: @ 821B53C +LilycoveCity_ContestHall_EventScript_SmartContestAudience2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_AllSeemToUseDifferentMoves, MSGBOX_DEFAULT @@ -120,7 +120,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestAudience2:: @ 821B53C release end -LilycoveCity_ContestHall_EventScript_SmartContestAudience3:: @ 821B553 +LilycoveCity_ContestHall_EventScript_SmartContestAudience3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_PokemonSmarterThanTrainers, MSGBOX_DEFAULT @@ -130,7 +130,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestAudience3:: @ 821B553 release end -LilycoveCity_ContestHall_EventScript_SmartContestAudience4:: @ 821B56A +LilycoveCity_ContestHall_EventScript_SmartContestAudience4:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_StillLoveSmartnessContests, MSGBOX_DEFAULT @@ -140,7 +140,7 @@ LilycoveCity_ContestHall_EventScript_SmartContestAudience4:: @ 821B56A release end -LilycoveCity_ContestHall_EventScript_BeautyContestMC:: @ 821B581 +LilycoveCity_ContestHall_EventScript_BeautyContestMC:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_AreYouEnteringBeautyContest, MSGBOX_DEFAULT @@ -150,7 +150,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestMC:: @ 821B581 release end -LilycoveCity_ContestHall_EventScript_BeautyContestJudge:: @ 821B598 +LilycoveCity_ContestHall_EventScript_BeautyContestJudge:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_EveryPokemonPristineBeauty, MSGBOX_DEFAULT @@ -160,7 +160,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestJudge:: @ 821B598 release end -LilycoveCity_ContestHall_EventScript_BeautyContestant1:: @ 821B5AF +LilycoveCity_ContestHall_EventScript_BeautyContestant1:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_EyesWillBeGluedToMyBeauty, MSGBOX_DEFAULT @@ -170,7 +170,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestant1:: @ 821B5AF release end -LilycoveCity_ContestHall_EventScript_BeautyContestant2:: @ 821B5C6 +LilycoveCity_ContestHall_EventScript_BeautyContestant2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_OverdidGrooming, MSGBOX_DEFAULT @@ -180,7 +180,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestant2:: @ 821B5C6 release end -LilycoveCity_ContestHall_EventScript_BeautyContestant3:: @ 821B5DD +LilycoveCity_ContestHall_EventScript_BeautyContestant3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_JudgeWontSeeAuroraBeam, MSGBOX_DEFAULT @@ -190,7 +190,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestant3:: @ 821B5DD release end -LilycoveCity_ContestHall_EventScript_BeautyContestant4:: @ 821B5F4 +LilycoveCity_ContestHall_EventScript_BeautyContestant4:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_PokemonLooksLikeYoungerMe, MSGBOX_DEFAULT @@ -200,7 +200,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestant4:: @ 821B5F4 release end -LilycoveCity_ContestHall_EventScript_BeautyContestAudience1:: @ 821B60B +LilycoveCity_ContestHall_EventScript_BeautyContestAudience1:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_WinBeautyContestMakesMeHappy, MSGBOX_DEFAULT @@ -210,7 +210,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestAudience1:: @ 821B60B release end -LilycoveCity_ContestHall_EventScript_BeautyContestAudience2:: @ 821B622 +LilycoveCity_ContestHall_EventScript_BeautyContestAudience2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_GanderAtAllThosePrettyPokemon, MSGBOX_DEFAULT @@ -220,7 +220,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestAudience2:: @ 821B622 release end -LilycoveCity_ContestHall_EventScript_BeautyContestAudience3:: @ 821B639 +LilycoveCity_ContestHall_EventScript_BeautyContestAudience3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_CantWinOnBeautyAlone, MSGBOX_DEFAULT @@ -230,7 +230,7 @@ LilycoveCity_ContestHall_EventScript_BeautyContestAudience3:: @ 821B639 release end -LilycoveCity_ContestHall_EventScript_CuteContestMC:: @ 821B650 +LilycoveCity_ContestHall_EventScript_CuteContestMC:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_InTheMiddleOfContest, MSGBOX_DEFAULT @@ -240,7 +240,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestMC:: @ 821B650 release end -LilycoveCity_ContestHall_EventScript_CuteContestJudge:: @ 821B667 +LilycoveCity_ContestHall_EventScript_CuteContestJudge:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_SuchCharmingCuteAppeals, MSGBOX_DEFAULT @@ -250,7 +250,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestJudge:: @ 821B667 release end -LilycoveCity_ContestHall_EventScript_CuteContestant1:: @ 821B67E +LilycoveCity_ContestHall_EventScript_CuteContestant1:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_MyAzurillWasDistracted, MSGBOX_DEFAULT @@ -260,7 +260,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestant1:: @ 821B67E release end -LilycoveCity_ContestHall_EventScript_CuteContestant2:: @ 821B695 +LilycoveCity_ContestHall_EventScript_CuteContestant2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_NeverWonBattleButContest, MSGBOX_DEFAULT @@ -270,7 +270,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestant2:: @ 821B695 release end -LilycoveCity_ContestHall_EventScript_CuteContestant3:: @ 821B6AC +LilycoveCity_ContestHall_EventScript_CuteContestant3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_PetalDanceIsMarvel, MSGBOX_DEFAULT @@ -280,7 +280,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestant3:: @ 821B6AC release end -LilycoveCity_ContestHall_EventScript_CuteContestant4:: @ 821B6C3 +LilycoveCity_ContestHall_EventScript_CuteContestant4:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_MyMonAppealSoMuchCuter, MSGBOX_DEFAULT @@ -290,7 +290,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestant4:: @ 821B6C3 release end -LilycoveCity_ContestHall_EventScript_CuteContestAudience1:: @ 821B6DA +LilycoveCity_ContestHall_EventScript_CuteContestAudience1:: lockall applymovement LOCALID_CUTE_AUDIENCE_1, Common_Movement_FacePlayer waitmovement 0 @@ -303,7 +303,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestAudience1:: @ 821B6DA releaseall end -LilycoveCity_ContestHall_EventScript_CuteContestAudience2:: @ 821B705 +LilycoveCity_ContestHall_EventScript_CuteContestAudience2:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_WantCuteMonOfMyOwn, MSGBOX_DEFAULT @@ -313,7 +313,7 @@ LilycoveCity_ContestHall_EventScript_CuteContestAudience2:: @ 821B705 release end -LilycoveCity_ContestHall_EventScript_CuteContestAudience3:: @ 821B71C +LilycoveCity_ContestHall_EventScript_CuteContestAudience3:: lock faceplayer msgbox LilycoveCity_ContestHall_Text_ThatGirlThereIsCutest, MSGBOX_DEFAULT @@ -323,26 +323,26 @@ LilycoveCity_ContestHall_EventScript_CuteContestAudience3:: @ 821B71C release end -LilycoveCity_ContestHall_EventScript_BeautyStageSign:: @ 821B733 +LilycoveCity_ContestHall_EventScript_BeautyStageSign:: msgbox LilycoveCity_ContestHall_Text_BeautyContestStage, MSGBOX_SIGN end -LilycoveCity_ContestHall_EventScript_CuteStageSign:: @ 821B73C +LilycoveCity_ContestHall_EventScript_CuteStageSign:: msgbox LilycoveCity_ContestHall_Text_CuteContestStage, MSGBOX_SIGN end -LilycoveCity_ContestHall_EventScript_SmartStageSign:: @ 821B745 +LilycoveCity_ContestHall_EventScript_SmartStageSign:: msgbox LilycoveCity_ContestHall_Text_SmartContestStage, MSGBOX_SIGN end -LilycoveCity_ContestHall_Text_TodayWonSmartnessContest: @ 821B74E +LilycoveCity_ContestHall_Text_TodayWonSmartnessContest: .string "This POKéMON won the BEAUTY CONTEST\n" .string "here before.\p" .string "Well, guess what? Today, I made it\n" .string "win a SMARTNESS CONTEST!\p" .string "My abilities scare even me…$" -LilycoveCity_ContestHall_Text_EnteredBunchOfContests: @ 821B7D7 +LilycoveCity_ContestHall_Text_EnteredBunchOfContests: .string "I've entered a bunch of CONTESTS,\n" .string "so I'm seeing how things work.\p" .string "If you're in a COOLNESS CONTEST,\n" @@ -350,29 +350,29 @@ LilycoveCity_ContestHall_Text_EnteredBunchOfContests: @ 821B7D7 .string "But smart moves and cute moves\n" .string "don't go over well, for instance.$" -LilycoveCity_ContestHall_Text_ManWhoWonEarlierHadPokeblocks: @ 821B899 +LilycoveCity_ContestHall_Text_ManWhoWonEarlierHadPokeblocks: .string "That young man who won earlier had\n" .string "a whole bunch of different {POKEBLOCK}S.\p" .string "Can you win if you had that many\n" .string "of those things?$" -LilycoveCity_ContestHall_Text_IsntThisPlaceHumongous: @ 821B911 +LilycoveCity_ContestHall_Text_IsntThisPlaceHumongous: .string "Whoa, isn't this place humongous!\p" .string "The tension in the air… It's not\n" .string "like a CONTEST hall in the sticks.$" -LilycoveCity_ContestHall_Text_GiveItBestSmartAppeal: @ 821B977 +LilycoveCity_ContestHall_Text_GiveItBestSmartAppeal: .string "MC: Okay, SMART POKéMON and their\n" .string "TRAINERS, are you ready?!\p" .string "Give it your best showing!\n" .string "Let's appeal!$" -LilycoveCity_ContestHall_Text_AreYouEnjoyingThisContest: @ 821B9DC +LilycoveCity_ContestHall_Text_AreYouEnjoyingThisContest: .string "JUDGE: Are you enjoying this CONTEST?\p" .string "Come back with three friends, and\n" .string "all of you may enter a CONTEST!$" -LilycoveCity_ContestHall_Text_EnteredWrongContest: @ 821BA44 +LilycoveCity_ContestHall_Text_EnteredWrongContest: .string "Ayayayay…\n" .string "I entered the wrong CONTEST.\p" .string "I entered this tough POKéMON in\n" @@ -380,7 +380,7 @@ LilycoveCity_ContestHall_Text_EnteredWrongContest: @ 821BA44 .string "Come on, wow them with a smart-looking\n" .string "ROCK SMASH.$" -LilycoveCity_ContestHall_Text_RaisedMonToBeSmart: @ 821BAD5 +LilycoveCity_ContestHall_Text_RaisedMonToBeSmart: .string "I've spent many a year, and all my\n" .string "wisdom besides, raising this POKéMON\l" .string "to be smart.\p" @@ -388,54 +388,54 @@ LilycoveCity_ContestHall_Text_RaisedMonToBeSmart: @ 821BAD5 .string "young pup's POKéMON.\p" .string "My dear wife, are you seeing this?$" -LilycoveCity_ContestHall_Text_IfMonPullsSmartMoveNext: @ 821BB84 +LilycoveCity_ContestHall_Text_IfMonPullsSmartMoveNext: .string "There it is!\p" .string "If my POKéMON pulls a smart move next,\n" .string "the audience's excitement will peak!$" -LilycoveCity_ContestHall_Text_DontAppreciateCuteLeechLife: @ 821BBDD +LilycoveCity_ContestHall_Text_DontAppreciateCuteLeechLife: .string "Oh, dear, no!\p" .string "My darling ZUBAT's LEECH LIFE is so\n" .string "cute I kept using it over and over!\p" .string "But these mean people don't appreciate\n" .string "it at all!$" -LilycoveCity_ContestHall_Text_YoureBeautifulGrandpa: @ 821BC65 +LilycoveCity_ContestHall_Text_YoureBeautifulGrandpa: .string "Kiyaaah! You're beautiful, Grandpa!$" -LilycoveCity_ContestHall_Text_AllSeemToUseDifferentMoves: @ 821BC89 +LilycoveCity_ContestHall_Text_AllSeemToUseDifferentMoves: .string "Even when TRAINERS enter the same\n" .string "kind of POKéMON, they all seem to use\l" .string "different moves for appeals.\p" .string "It's just like the way people have\n" .string "different styles for battling.$" -LilycoveCity_ContestHall_Text_PokemonSmarterThanTrainers: @ 821BD30 +LilycoveCity_ContestHall_Text_PokemonSmarterThanTrainers: .string "I think the POKéMON look smarter\n" .string "than their TRAINERS. By a lot.$" -LilycoveCity_ContestHall_Text_StillLoveSmartnessContests: @ 821BD70 +LilycoveCity_ContestHall_Text_StillLoveSmartnessContests: .string "When all's said and done, I still love\n" .string "SMARTNESS CONTESTS.\p" .string "That intellectual green color…\n" .string "It's so… So… Cool.$" -LilycoveCity_ContestHall_Text_AreYouEnteringBeautyContest: @ 821BDDD +LilycoveCity_ContestHall_Text_AreYouEnteringBeautyContest: .string "MC: Are you entering the BEAUTY\n" .string "CONTEST, too? Good luck!$" -LilycoveCity_ContestHall_Text_EveryPokemonPristineBeauty: @ 821BE16 +LilycoveCity_ContestHall_Text_EveryPokemonPristineBeauty: .string "JUDGE: Ah, every POKéMON here is\n" .string "a model of pristine beauty!\p" .string "Why, I almost forgot to score them!$" -LilycoveCity_ContestHall_Text_EyesWillBeGluedToMyBeauty: @ 821BE77 +LilycoveCity_ContestHall_Text_EyesWillBeGluedToMyBeauty: .string "A POKéMON this beautiful…\n" .string "There isn't another one like it.\p" .string "Everyone's eyes will be glued to\n" .string "my beauty.$" -LilycoveCity_ContestHall_Text_OverdidGrooming: @ 821BEDE +LilycoveCity_ContestHall_Text_OverdidGrooming: .string "Waaaah!\p" .string "I brushed and groomed my POKéMON\n" .string "carefully for this CONTEST…\p" @@ -443,96 +443,96 @@ LilycoveCity_ContestHall_Text_OverdidGrooming: @ 821BEDE .string "My POKéMON's coat turned all scraggly…\p" .string "What should I do?$" -LilycoveCity_ContestHall_Text_JudgeWontSeeAuroraBeam: @ 821BF6E +LilycoveCity_ContestHall_Text_JudgeWontSeeAuroraBeam: .string "This AURORA BEAM is so dazzling,\n" .string "the JUDGE won't be able to see it.\p" .string "Uh, wait a second…\n" .string "That'll be meaningless, then!$" -LilycoveCity_ContestHall_Text_PokemonLooksLikeYoungerMe: @ 821BFE3 +LilycoveCity_ContestHall_Text_PokemonLooksLikeYoungerMe: .string "This pretty POKéMON looks just like\n" .string "me when I was younger.\p" .string "Right when I said that, my husband\n" .string "spewed the coffee he was drinking.\p" .string "Did I say something funny?$" -LilycoveCity_ContestHall_Text_WinBeautyContestMakesMeHappy: @ 821C07F +LilycoveCity_ContestHall_Text_WinBeautyContestMakesMeHappy: .string "You know, if I win at a BEAUTY\n" .string "CONTEST, sure it makes me\l" .string "happy. More than usual, anyway.$" -LilycoveCity_ContestHall_Text_GanderAtAllThosePrettyPokemon: @ 821C0D8 +LilycoveCity_ContestHall_Text_GanderAtAllThosePrettyPokemon: .string "Wahahahah!\p" .string "Will you take a gander at all those\n" .string "pretty POKéMON!\l" .string "I just love this sort of glitz!$" -LilycoveCity_ContestHall_Text_CantWinOnBeautyAlone: @ 821C137 +LilycoveCity_ContestHall_Text_CantWinOnBeautyAlone: .string "You can't always win on just beauty\n" .string "alone.\p" .string "You have to groom your POKéMON so\n" .string "it's nice and glossy like mine.$" -LilycoveCity_ContestHall_Text_InTheMiddleOfContest: @ 821C1A4 +LilycoveCity_ContestHall_Text_InTheMiddleOfContest: .string "MC: Uh-oh! Hello!\n" .string "We're in the middle of a CONTEST!\p" .string "Please enter at our registration\n" .string "counter and come out, okay?$" -LilycoveCity_ContestHall_Text_SuchCharmingCuteAppeals: @ 821C215 +LilycoveCity_ContestHall_Text_SuchCharmingCuteAppeals: .string "JUDGE: Oh, such charming and cute\n" .string "appeals!\p" .string "Oh, my goodness! What a perfectly\n" .string "adorable WATER SPORT appeal!$" -LilycoveCity_ContestHall_Text_MyAzurillWasDistracted: @ 821C27F +LilycoveCity_ContestHall_Text_MyAzurillWasDistracted: .string "Oh, no… My sweet AZURILL was\n" .string "distracted by another POKéMON.$" -LilycoveCity_ContestHall_Text_NeverWonBattleButContest: @ 821C2BB +LilycoveCity_ContestHall_Text_NeverWonBattleButContest: .string "My POKéMON has never won in a battle,\n" .string "but put it in a CONTEST and look out!$" -LilycoveCity_ContestHall_Text_PetalDanceIsMarvel: @ 821C307 +LilycoveCity_ContestHall_Text_PetalDanceIsMarvel: .string "My POKéMON's PETAL DANCE is a marvel\n" .string "of elegance.\p" .string "I won't let anyone disturb its\n" .string "performance.$" -LilycoveCity_ContestHall_Text_MyMonAppealSoMuchCuter: @ 821C365 +LilycoveCity_ContestHall_Text_MyMonAppealSoMuchCuter: .string "Everyone's POKéMON are very cute.\p" .string "However, if my POKéMON were to make\n" .string "a cute appeal…\p" .string "I'm sure that it would be so much \n" .string "cuter than the others.$" -LilycoveCity_ContestHall_Text_MyChildIsInContest: @ 821C3F4 +LilycoveCity_ContestHall_Text_MyChildIsInContest: .string "My child is in this CONTEST.$" -LilycoveCity_ContestHall_Text_ComeOnDear: @ 821C411 +LilycoveCity_ContestHall_Text_ComeOnDear: .string "Come on, dear. Go for it!\n" .string "Your POKéMON is the best!$" -LilycoveCity_ContestHall_Text_ThatGirlThereIsCutest: @ 821C445 +LilycoveCity_ContestHall_Text_ThatGirlThereIsCutest: .string "I think that girl over there is\n" .string "the cutest of the lot.\p" .string "What's that? They're judging\n" .string "POKéMON by their looks?$" -LilycoveCity_ContestHall_Text_WantCuteMonOfMyOwn: @ 821C4B1 +LilycoveCity_ContestHall_Text_WantCuteMonOfMyOwn: .string "Ohh, seeing all these cute POKéMON,\n" .string "they make we want to get my own!\p" .string "I'm going to go catch some!$" -LilycoveCity_ContestHall_Text_BeautyContestStage: @ 821C512 +LilycoveCity_ContestHall_Text_BeautyContestStage: .string "BEAUTY CONTEST STAGE\n" .string "BE ALLURED BY BEAUTIFUL POKéMON!$" -LilycoveCity_ContestHall_Text_CuteContestStage: @ 821C548 +LilycoveCity_ContestHall_Text_CuteContestStage: .string "CUTENESS CONTEST STAGE\n" .string "BE CHARMED BY CUTE POKéMON!$" -LilycoveCity_ContestHall_Text_SmartContestStage: @ 821C57B +LilycoveCity_ContestHall_Text_SmartContestStage: .string "SMARTNESS CONTEST STAGE\n" .string "BE IMPRESSED BY SMART POKéMON!$" diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 458585ea450f..48a8e6b92697 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -4,19 +4,19 @@ .set LOCALID_ARTIST, 4 .set LOCALID_ARTIST_LINK, 11 -LilycoveCity_ContestLobby_MapScripts:: @ 821A211 +LilycoveCity_ContestLobby_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_ContestLobby_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, LilycoveCity_ContestLobby_OnFrame .byte 0 @ Some scripts for this room are split into data/scripts/contest_hall and data/scripts/berry_blender -LilycoveCity_ContestLobby_OnTransition: @ 821A21C +LilycoveCity_ContestLobby_OnTransition: call LilycoveCity_ContestLobby_EventScript_TryShowContestReporter call LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster end -LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster:: @ 821A227 +LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster:: getpricereduction POKENEWS_BLENDMASTER compare VAR_RESULT, TRUE goto_if_eq LilycoveCity_ContestLobby_EventScript_ShowBlendMaster @@ -24,22 +24,22 @@ LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster:: @ 821A227 setflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER return -LilycoveCity_ContestLobby_EventScript_ShowBlendMaster:: @ 821A23C +LilycoveCity_ContestLobby_EventScript_ShowBlendMaster:: setflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_REPLACEMENT clearflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER return -LilycoveCity_ContestLobby_OnFrame: @ 821A243 +LilycoveCity_ContestLobby_OnFrame: map_script_2 VAR_LILYCOVE_CONTEST_LOBBY_STATE, 1, LilycoveCity_ContestLobby_EventScript_TryDoContestArtist map_script_2 VAR_LILYCOVE_CONTEST_LOBBY_STATE, 2, LilycoveCity_ContestLobby_EventScript_TryDoLinkContestArtist .2byte 0 -LilycoveCity_ContestLobby_EventScript_TryDoContestArtist:: @ 821A255 +LilycoveCity_ContestLobby_EventScript_TryDoContestArtist:: goto_if_set FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR, LilycoveCity_ContestLobby_EventScript_ContestArtist setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0 end -LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264 +LilycoveCity_ContestLobby_EventScript_ContestArtist:: lockall addobject LOCALID_ARTIST applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer @@ -59,7 +59,7 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264 releaseall end -LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum:: @ 821A2AA +LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum:: msgbox LilycoveCity_ContestLobby_Text_IllTakePaintingToMuseum, MSGBOX_DEFAULT closemessage special SaveMuseumContestPainting @@ -75,7 +75,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum:: @ 821A2AA releaseall end -LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting:: @ 821A2E4 +LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting:: msgbox LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum @@ -88,7 +88,7 @@ LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting:: @ 821A2E4 releaseall end -LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon:: @ 821A314 +LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon:: incrementgamestat GAME_STAT_RECEIVED_RIBBONS special BufferContestWinnerMonName applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistBeginToExit @@ -107,7 +107,7 @@ LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon:: @ 821A314 closemessage return -LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons:: @ 821A360 +LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons:: specialvar VAR_0x8004, CountPlayerMuseumPaintings switch VAR_0x8004 case 1, LilycoveCity_ContestLobby_EventScript_ShowPatron1 @@ -117,27 +117,27 @@ LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons:: @ 821A360 case 5, LilycoveCity_ContestLobby_EventScript_ShowTourists return -LilycoveCity_ContestLobby_EventScript_ShowPatron1:: @ 821A3A2 +LilycoveCity_ContestLobby_EventScript_ShowPatron1:: clearflag FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1 return -LilycoveCity_ContestLobby_EventScript_ShowPatron2:: @ 821A3A6 +LilycoveCity_ContestLobby_EventScript_ShowPatron2:: clearflag FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_2 return -LilycoveCity_ContestLobby_EventScript_ShowPatron3:: @ 821A3AA +LilycoveCity_ContestLobby_EventScript_ShowPatron3:: clearflag FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_3 return -LilycoveCity_ContestLobby_EventScript_ShowPatron4:: @ 821A3AE +LilycoveCity_ContestLobby_EventScript_ShowPatron4:: clearflag FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_4 return -LilycoveCity_ContestLobby_EventScript_ShowTourists:: @ 821A3B2 +LilycoveCity_ContestLobby_EventScript_ShowTourists:: clearflag FLAG_HIDE_LILYCOVE_MUSEUM_TOURISTS return -LilycoveCity_ContestLobby_EventScript_SetPaintingFlag:: @ 821A3B6 +LilycoveCity_ContestLobby_EventScript_SetPaintingFlag:: switch VAR_CONTEST_CATEGORY case CONTEST_CATEGORY_COOL, LilycoveCity_ContestLobby_EventScript_MadeCoolPainting case CONTEST_CATEGORY_BEAUTY, LilycoveCity_ContestLobby_EventScript_MadeBeautyPainting @@ -146,27 +146,27 @@ LilycoveCity_ContestLobby_EventScript_SetPaintingFlag:: @ 821A3B6 case CONTEST_CATEGORY_TOUGH, LilycoveCity_ContestLobby_EventScript_MadeToughPainting return -LilycoveCity_ContestLobby_EventScript_MadeCoolPainting:: @ 821A3F3 +LilycoveCity_ContestLobby_EventScript_MadeCoolPainting:: setflag FLAG_COOL_PAINTING_MADE return -LilycoveCity_ContestLobby_EventScript_MadeBeautyPainting:: @ 821A3F7 +LilycoveCity_ContestLobby_EventScript_MadeBeautyPainting:: setflag FLAG_BEAUTY_PAINTING_MADE return -LilycoveCity_ContestLobby_EventScript_MadeCutePainting:: @ 821A3FB +LilycoveCity_ContestLobby_EventScript_MadeCutePainting:: setflag FLAG_CUTE_PAINTING_MADE return -LilycoveCity_ContestLobby_EventScript_MadeSmartPainting:: @ 821A3FF +LilycoveCity_ContestLobby_EventScript_MadeSmartPainting:: setflag FLAG_SMART_PAINTING_MADE return -LilycoveCity_ContestLobby_EventScript_MadeToughPainting:: @ 821A403 +LilycoveCity_ContestLobby_EventScript_MadeToughPainting:: setflag FLAG_TOUGH_PAINTING_MADE return -LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer: @ 821A407 +LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer: walk_down walk_down walk_down @@ -176,7 +176,7 @@ LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer: @ 821A407 walk_right step_end -LilycoveCity_ContestLobby_Movement_ArtistExit: @ 821A40F +LilycoveCity_ContestLobby_Movement_ArtistExit: walk_down walk_down walk_down @@ -187,17 +187,17 @@ LilycoveCity_ContestLobby_Movement_ArtistExit: @ 821A40F walk_down step_end -LilycoveCity_ContestLobby_Movement_PlayerFaceArtist: @ 821A418 +LilycoveCity_ContestLobby_Movement_PlayerFaceArtist: walk_in_place_fastest_left step_end -LilycoveCity_ContestLobby_Movement_ArtistBeginToExit: @ 821A41A +LilycoveCity_ContestLobby_Movement_ArtistBeginToExit: walk_down walk_down walk_down step_end -LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer: @ 821A41E +LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer: delay_16 delay_16 delay_16 @@ -208,12 +208,12 @@ LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer: @ 821A41E walk_in_place_fastest_right step_end -LilycoveCity_ContestLobby_EventScript_TryDoLinkContestArtist:: @ 821A427 +LilycoveCity_ContestLobby_EventScript_TryDoLinkContestArtist:: goto_if_set FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR, LilycoveCity_ContestLobby_EventScript_LinkContestArtist setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0 end -LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436 +LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: lockall addobject LOCALID_ARTIST_LINK applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer @@ -231,7 +231,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436 goto_if_eq LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink end -LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: @ 821A47A +LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: msgbox LilycoveCity_ContestLobby_Text_IllTakePaintingToMuseum, MSGBOX_DEFAULT closemessage special SaveMuseumContestPainting @@ -247,7 +247,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: @ 821A47A releaseall end -LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink:: @ 821A4B4 +LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink:: msgbox LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink @@ -260,7 +260,7 @@ LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink:: @ 821A4B4 releaseall end -LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon:: @ 821A4E4 +LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon:: incrementgamestat GAME_STAT_RECEIVED_RIBBONS setflag FLAG_SYS_RIBBON_GET special BufferContestWinnerMonName @@ -280,7 +280,7 @@ LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon:: @ 821A4E4 closemessage return -LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer: @ 821A533 +LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer: walk_down walk_down walk_down @@ -291,7 +291,7 @@ LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer: @ 821A533 walk_left step_end -LilycoveCity_ContestLobby_Movement_LinkArtistExit: @ 821A53C +LilycoveCity_ContestLobby_Movement_LinkArtistExit: walk_down walk_down walk_down @@ -302,17 +302,17 @@ LilycoveCity_ContestLobby_Movement_LinkArtistExit: @ 821A53C walk_down step_end -LilycoveCity_ContestLobby_Movement_PlayerFaceLinkArtist: @ 821A545 +LilycoveCity_ContestLobby_Movement_PlayerFaceLinkArtist: walk_in_place_fastest_right step_end -LilycoveCity_ContestLobby_Movement_LinkArtistBeginExit: @ 821A547 +LilycoveCity_ContestLobby_Movement_LinkArtistBeginExit: walk_down walk_down walk_down step_end -LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer: @ 821A54B +LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer: delay_16 delay_16 delay_16 @@ -324,7 +324,7 @@ LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer: @ 821A54B step_end @ EventScript_SpeakToContestReceptionist either ends or returns after a contest entry is submitted -LilycoveCity_ContestLobby_EventScript_ContestReceptionist:: @ 821A554 +LilycoveCity_ContestLobby_EventScript_ContestReceptionist:: special ClearLinkContestFlags specialvar VAR_RESULT, IsContestDebugActive @ Always FALSE compare VAR_RESULT, TRUE @@ -338,7 +338,7 @@ LilycoveCity_ContestLobby_EventScript_ContestReceptionist:: @ 821A554 waitstate end -LilycoveCity_ContestLobby_EventScript_SetContestType:: @ 821A585 +LilycoveCity_ContestLobby_EventScript_SetContestType:: switch VAR_CONTEST_RANK case CONTEST_RANK_NORMAL, LilycoveCity_ContestLobby_EventScript_SetNormalContestType case CONTEST_RANK_SUPER, LilycoveCity_ContestLobby_EventScript_SetSuperContestType @@ -346,24 +346,24 @@ LilycoveCity_ContestLobby_EventScript_SetContestType:: @ 821A585 case CONTEST_RANK_MASTER, LilycoveCity_ContestLobby_EventScript_SetMasterContestType return -LilycoveCity_ContestLobby_EventScript_SetNormalContestType:: @ 821A5B7 +LilycoveCity_ContestLobby_EventScript_SetNormalContestType:: setvar VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL return -LilycoveCity_ContestLobby_EventScript_SetSuperContestType:: @ 821A5BD +LilycoveCity_ContestLobby_EventScript_SetSuperContestType:: setvar VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER return -LilycoveCity_ContestLobby_EventScript_SetHyperContestType:: @ 821A5C3 +LilycoveCity_ContestLobby_EventScript_SetHyperContestType:: setvar VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_HYPER return -LilycoveCity_ContestLobby_EventScript_SetMasterContestType:: @ 821A5C9 +LilycoveCity_ContestLobby_EventScript_SetMasterContestType:: setvar VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_MASTER return @ Functionally unused -LilycoveCity_ContestLobby_EventScript_SetDebug:: @ 821A5CF +LilycoveCity_ContestLobby_EventScript_SetDebug:: setflag FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR copyvar VAR_LILYCOVE_MUSEUM_2F_STATE, 1 additem ITEM_CONTEST_PASS @@ -373,7 +373,7 @@ LilycoveCity_ContestLobby_EventScript_SetDebug:: @ 821A5CF setflag FLAG_SYS_RIBBON_GET end -LilycoveCity_ContestLobby_EventScript_WarpToContestHall:: @ 821A5EF +LilycoveCity_ContestLobby_EventScript_WarpToContestHall:: setflag FLAG_ENTERED_CONTEST switch VAR_CONTEST_CATEGORY case CONTEST_CATEGORY_COOL, LilycoveCity_ContestLobby_EventScript_WarpToCoolContestHall @@ -383,37 +383,37 @@ LilycoveCity_ContestLobby_EventScript_WarpToContestHall:: @ 821A5EF case CONTEST_CATEGORY_TOUGH, LilycoveCity_ContestLobby_EventScript_WarpToToughContestHall return -LilycoveCity_ContestLobby_EventScript_WarpToCoolContestHall:: @ 821A62F +LilycoveCity_ContestLobby_EventScript_WarpToCoolContestHall:: setwarp MAP_CONTEST_HALL_COOL, 255, 7, 5 special DoContestHallWarp waitstate return -LilycoveCity_ContestLobby_EventScript_WarpToBeautyContestHall:: @ 821A63C +LilycoveCity_ContestLobby_EventScript_WarpToBeautyContestHall:: setwarp MAP_CONTEST_HALL_BEAUTY, 255, 7, 5 special DoContestHallWarp waitstate return -LilycoveCity_ContestLobby_EventScript_WarpToCuteContestHall:: @ 821A649 +LilycoveCity_ContestLobby_EventScript_WarpToCuteContestHall:: setwarp MAP_CONTEST_HALL_CUTE, 255, 7, 5 special DoContestHallWarp waitstate return -LilycoveCity_ContestLobby_EventScript_WarpToSmartContestHall:: @ 821A656 +LilycoveCity_ContestLobby_EventScript_WarpToSmartContestHall:: setwarp MAP_CONTEST_HALL_SMART, 255, 7, 5 special DoContestHallWarp waitstate return -LilycoveCity_ContestLobby_EventScript_WarpToToughContestHall:: @ 821A663 +LilycoveCity_ContestLobby_EventScript_WarpToToughContestHall:: setwarp MAP_CONTEST_HALL_TOUGH, 255, 7, 5 special DoContestHallWarp waitstate return -LilycoveCity_ContestLobby_EventScript_LeadToContestHall:: @ 821A670 +LilycoveCity_ContestLobby_EventScript_LeadToContestHall:: lockall applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter waitmovement 0 @@ -440,7 +440,7 @@ LilycoveCity_ContestLobby_EventScript_LeadToContestHall:: @ 821A670 releaseall return -LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall: @ 821A6E8 +LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall: walk_left walk_left walk_left @@ -452,24 +452,24 @@ LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall: @ 821A6E8 set_invisible step_end -LilycoveCity_ContestLobby_Movement_PlayerApproachReceptionist: @ 821A6F2 +LilycoveCity_ContestLobby_Movement_PlayerApproachReceptionist: walk_in_place_fastest_left walk_left step_end -LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter: @ 821A6F5 +LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter: walk_left walk_left walk_in_place_fastest_down step_end -LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter: @ 821A6F9 +LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter: walk_down walk_down walk_in_place_fastest_up step_end -LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall: @ 821A6FD +LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall: walk_left walk_left walk_left @@ -480,85 +480,85 @@ LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall: @ 821A6FD set_invisible step_end -LilycoveCity_ContestLobby_Movement_ReceptionistFacePlayer: @ 821A706 +LilycoveCity_ContestLobby_Movement_ReceptionistFacePlayer: walk_in_place_fastest_right step_end -LilycoveCity_ContestLobby_EventScript_BlackBelt:: @ 821A708 +LilycoveCity_ContestLobby_EventScript_BlackBelt:: msgbox LilycoveCity_ContestLobby_Text_MasterRankHereICome, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_Girl:: @ 821A711 +LilycoveCity_ContestLobby_EventScript_Girl:: msgbox LilycoveCity_ContestLobby_Text_WholeVarietyOfPokemonHere, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_Artist:: @ 821A71A +LilycoveCity_ContestLobby_EventScript_Artist:: msgbox LilycoveCity_ContestLobby_Text_ContestFeastForEyes, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_FatMan:: @ 821A723 +LilycoveCity_ContestLobby_EventScript_FatMan:: msgbox LilycoveCity_ContestLobby_Text_ToughContestIsExtreme, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_Fisherman:: @ 821A72C +LilycoveCity_ContestLobby_EventScript_Fisherman:: msgbox LilycoveCity_ContestLobby_Text_LavishedCareOnMon, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_NinjaBoy:: @ 821A735 +LilycoveCity_ContestLobby_EventScript_NinjaBoy:: msgbox LilycoveCity_ContestLobby_Text_MadePokeblocksWithFamily, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E +LilycoveCity_ContestLobby_EventScript_ContestWinner1:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_1 releaseall end -LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745 +LilycoveCity_ContestLobby_EventScript_ContestWinner2:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_2 releaseall end -LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C +LilycoveCity_ContestLobby_EventScript_ContestWinner3:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_3 releaseall end -LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753 +LilycoveCity_ContestLobby_EventScript_ContestWinner4:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_4 releaseall end -LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A +LilycoveCity_ContestLobby_EventScript_ContestWinner5:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_5 releaseall end -LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761 +LilycoveCity_ContestLobby_EventScript_ContestWinner6:: lockall fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_HALL_6 releaseall end -LilycoveCity_ContestLobby_EventScript_Blender3Boy:: @ 821A768 +LilycoveCity_ContestLobby_EventScript_Blender3Boy:: msgbox BerryBlender_Text_LetsGetBlendingAlready, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_Blender3Girl:: @ 821A771 +LilycoveCity_ContestLobby_EventScript_Blender3Girl:: msgbox BerryBlender_Text_WhatKindOfPokeblockWillIGet, MSGBOX_NPC end -LilycoveCity_ContestLobby_EventScript_BerryBlenderSpeedRecords:: @ 821A77A +LilycoveCity_ContestLobby_EventScript_BerryBlenderSpeedRecords:: lockall special ShowBerryBlenderRecordWindow waitbuttonpress @@ -566,7 +566,7 @@ LilycoveCity_ContestLobby_EventScript_BerryBlenderSpeedRecords:: @ 821A77A releaseall end -LilycoveCity_ContestLobby_EventScript_LinkContestResults:: @ 821A784 +LilycoveCity_ContestLobby_EventScript_LinkContestResults:: lockall frontier_results FACILITY_LINK_CONTEST waitbuttonpress @@ -574,60 +574,60 @@ LilycoveCity_ContestLobby_EventScript_LinkContestResults:: @ 821A784 releaseall end -LilycoveCity_ContestLobby_EventScript_BlendMaster:: @ 821A798 +LilycoveCity_ContestLobby_EventScript_BlendMaster:: lock faceplayer msgbox BerryBlender_Text_BlendWithTheBlendMaster, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker1:: @ 821A7A8 +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker1:: lock msgbox BerryBlender_Text_WhoaAwesome, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker2:: @ 821A7B3 +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker2:: lock msgbox BerryBlender_Text_WickedlyFast, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker3:: @ 821A7BE +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker3:: lock msgbox BerryBlender_Text_WhatAnExpert, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker4:: @ 821A7C9 +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker4:: lock faceplayer msgbox BerryBlender_Text_MadeAmazingPokeblocksWithMaster, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker5:: @ 821A7D9 +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker5:: lock faceplayer msgbox BerryBlender_Text_QualitiesOfBlendMaster, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection end -LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker6:: @ 821A7E9 +LilycoveCity_ContestLobby_EventScript_BlendMasterOnlooker6:: lock faceplayer msgbox BerryBlender_Text_MasterWorksOnSkillsInMountains, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection end -LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection:: @ 821A7F9 +LilycoveCity_ContestLobby_EventScript_FaceOriginalDirection:: closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end -LilycoveCity_ContestLobby_EventScript_LinkContestReceptionist:: @ 821A806 +LilycoveCity_ContestLobby_EventScript_LinkContestReceptionist:: special ClearLinkContestFlags lock faceplayer @@ -635,7 +635,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestReceptionist:: @ 821A806 goto LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest end -LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest:: @ 821A819 +LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest:: message LilycoveCity_ContestLobby_Text_EnterContest3 waitmessage multichoice 0, 0, MULTI_ENTERINFO, FALSE @@ -646,7 +646,7 @@ LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest:: @ 821A819 case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest:: @ 821A856 +LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest:: msgbox LilycoveCity_ContestLobby_Text_ProgressWillBeSaved, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest @@ -664,19 +664,19 @@ LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest:: @ 821A856 case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_EmeraldMode:: @ 821A8BB +LilycoveCity_ContestLobby_EventScript_EmeraldMode:: setvar VAR_TEMP_C, 0 goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType end -LilycoveCity_ContestLobby_EventScript_GlobalMode:: @ 821A8C6 +LilycoveCity_ContestLobby_EventScript_GlobalMode:: setvar VAR_TEMP_C, 1 compare VAR_TEMP_D, 1 goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkNoWirelessGMode goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType end -LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType:: @ 821A8DC +LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType:: message LilycoveCity_ContestLobby_Text_EnterWhichContest3 waitmessage multichoice 0, 0, MULTI_CONTEST_TYPE, FALSE @@ -687,7 +687,7 @@ LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType:: @ 821A8DC goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon end -LilycoveCity_ContestLobby_EventScript_LinkContestInfo:: @ 821A90D +LilycoveCity_ContestLobby_EventScript_LinkContestInfo:: message LilycoveCity_ContestLobby_Text_WhichTopic2 waitmessage multichoice 0, 0, MULTI_LINK_CONTEST_INFO, FALSE @@ -699,28 +699,28 @@ LilycoveCity_ContestLobby_EventScript_LinkContestInfo:: @ 821A90D case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest end -LilycoveCity_ContestLobby_EventScript_ExplainLinkContest:: @ 821A955 +LilycoveCity_ContestLobby_EventScript_ExplainLinkContest:: msgbox LilycoveCity_ContestLobby_Text_ExplainLinkContest, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_LinkContestInfo end -LilycoveCity_ContestLobby_EventScript_ExplainEMode:: @ 821A963 +LilycoveCity_ContestLobby_EventScript_ExplainEMode:: msgbox LilycoveCity_ContestLobby_Text_ExplainEMode, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_LinkContestInfo end -LilycoveCity_ContestLobby_EventScript_ExplainGMode:: @ 821A971 +LilycoveCity_ContestLobby_EventScript_ExplainGMode:: msgbox LilycoveCity_ContestLobby_Text_ExplainGMode, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_LinkContestInfo end -LilycoveCity_ContestLobby_EventScript_CancelLinkContest:: @ 821A97F +LilycoveCity_ContestLobby_EventScript_CancelLinkContest:: special CloseLink msgbox LilycoveCity_ContestLobby_Text_ParticipateAnotherTime, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon:: @ 821A98C +LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon3, MSGBOX_DEFAULT setvar VAR_CONTEST_RANK, 0 choosecontestmon @@ -739,27 +739,27 @@ LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon:: @ 821A98C goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkCantEnterFainted end -LilycoveCity_ContestLobby_EventScript_LinkCantEnterLowRank:: @ 821A9E0 +LilycoveCity_ContestLobby_EventScript_LinkCantEnterLowRank:: msgbox LilycoveCity_ContestLobby_Text_MonNotQualifiedForRank, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon end -LilycoveCity_ContestLobby_EventScript_LinkCantEnterEgg:: @ 821A9EE +LilycoveCity_ContestLobby_EventScript_LinkCantEnterEgg:: msgbox LilycoveCity_ContestLobby_Text_EggCannotTakePart2, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon end -LilycoveCity_ContestLobby_EventScript_LinkCantEnterFainted:: @ 821A9FC +LilycoveCity_ContestLobby_EventScript_LinkCantEnterFainted:: msgbox LilycoveCity_ContestLobby_Text_MonInNoCondition2, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon end -LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest:: @ 821AA0A +LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest:: copyvar VAR_0x8008, VAR_0x8004 goto LilycoveCity_ContestLobby_EventScript_TrySetUpLinkContest end -LilycoveCity_ContestLobby_EventScript_TrySetUpLinkContest:: @ 821AA15 +LilycoveCity_ContestLobby_EventScript_TrySetUpLinkContest:: compare VAR_TEMP_D, 1 goto_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupType compare VAR_TEMP_D, 2 @@ -791,49 +791,49 @@ LilycoveCity_ContestLobby_EventScript_TrySetUpLinkContest:: @ 821AA15 case 2, LilycoveCity_ContestLobby_EventScript_CancelLinkTransmissionError end -LilycoveCity_ContestLobby_EventScript_TryLinkEMode:: @ 821AABB +LilycoveCity_ContestLobby_EventScript_TryLinkEMode:: special TryContestEModeLinkup waitstate return -LilycoveCity_ContestLobby_EventScript_TryLinkGMode:: @ 821AAC0 +LilycoveCity_ContestLobby_EventScript_TryLinkGMode:: special TryContestGModeLinkup waitstate return -LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentContest:: @ 821AAC5 +LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentContest:: msgbox LilycoveCity_ContestLobby_Text_PlayersChoseDifferentContest, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices:: @ 821AAD3 +LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices:: msgbox LilycoveCity_ContestLobby_Text_PlayersMadeDifferentChoice, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_CancelLinkModeDifference:: @ 821AAE1 +LilycoveCity_ContestLobby_EventScript_CancelLinkModeDifference:: msgbox LilycoveCity_ContestLobby_Text_PlayerAt4PCounterUseGMode, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_CancelLinkError:: @ 821AAEF +LilycoveCity_ContestLobby_EventScript_CancelLinkError:: special CloseLink msgbox Text_LinkErrorPleaseReset, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_CancelLinkNoWirelessGMode:: @ 821AAFC +LilycoveCity_ContestLobby_EventScript_CancelLinkNoWirelessGMode:: special CloseLink msgbox LilycoveCity_ContestLobby_Text_NoWirelessAdapterInGMode, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_CancelLinkTransmissionError:: @ 821AB09 +LilycoveCity_ContestLobby_EventScript_CancelLinkTransmissionError:: msgbox LilycoveCity_ContestLobby_Text_TransmissionError, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_StartLinkContest:: @ 821AB17 +LilycoveCity_ContestLobby_EventScript_StartLinkContest:: special GetContestPlayerId addvar VAR_0x8004, 1 buffernumberstring 1, VAR_0x8004 @@ -848,7 +848,7 @@ LilycoveCity_ContestLobby_EventScript_StartLinkContest:: @ 821AB17 call LilycoveCity_ContestLobby_EventScript_WarpToContestHall end -LilycoveCity_ContestLobby_EventScript_SetLinkGroupType:: @ 821AB4B +LilycoveCity_ContestLobby_EventScript_SetLinkGroupType:: compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_COOL call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupCoolContest compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_BEAUTY @@ -862,27 +862,27 @@ LilycoveCity_ContestLobby_EventScript_SetLinkGroupType:: @ 821AB4B goto LilycoveCity_ContestLobby_EventScript_DecideLinkLeader end -LilycoveCity_ContestLobby_EventScript_SetLinkGroupCoolContest:: @ 821AB88 +LilycoveCity_ContestLobby_EventScript_SetLinkGroupCoolContest:: setvar VAR_0x8004, LINK_GROUP_COOL_CONTEST return -LilycoveCity_ContestLobby_EventScript_SetLinkGroupBeautyContest:: @ 821AB8E +LilycoveCity_ContestLobby_EventScript_SetLinkGroupBeautyContest:: setvar VAR_0x8004, LINK_GROUP_BEAUTY_CONTEST return -LilycoveCity_ContestLobby_EventScript_SetLinkGroupCuteContest:: @ 821AB94 +LilycoveCity_ContestLobby_EventScript_SetLinkGroupCuteContest:: setvar VAR_0x8004, LINK_GROUP_CUTE_CONTEST return -LilycoveCity_ContestLobby_EventScript_SetLinkGroupSmartContest:: @ 821AB9A +LilycoveCity_ContestLobby_EventScript_SetLinkGroupSmartContest:: setvar VAR_0x8004, LINK_GROUP_SMART_CONTEST return -LilycoveCity_ContestLobby_EventScript_SetLinkGroupToughContest:: @ 821ABA0 +LilycoveCity_ContestLobby_EventScript_SetLinkGroupToughContest:: setvar VAR_0x8004, LINK_GROUP_TOUGH_CONTEST return -LilycoveCity_ContestLobby_EventScript_DecideLinkLeader:: @ 821ABA6 +LilycoveCity_ContestLobby_EventScript_DecideLinkLeader:: message LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -893,7 +893,7 @@ LilycoveCity_ContestLobby_EventScript_DecideLinkLeader:: @ 821ABA6 case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelLinkContest end -LilycoveCity_ContestLobby_EventScript_TryLeadGroup:: @ 821ABE3 +LilycoveCity_ContestLobby_EventScript_TryLeadGroup:: call LilycoveCity_ContestLobby_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided @@ -904,7 +904,7 @@ LilycoveCity_ContestLobby_EventScript_TryLeadGroup:: @ 821ABE3 release end -LilycoveCity_ContestLobby_EventScript_TryJoinGroup:: @ 821AC0B +LilycoveCity_ContestLobby_EventScript_TryJoinGroup:: call LilycoveCity_ContestLobby_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided @@ -915,23 +915,23 @@ LilycoveCity_ContestLobby_EventScript_TryJoinGroup:: @ 821AC0B release end -LilycoveCity_ContestLobby_EventScript_TryBecomeLinkLeader:: @ 821AC33 +LilycoveCity_ContestLobby_EventScript_TryBecomeLinkLeader:: special TryBecomeLinkLeader waitstate return -LilycoveCity_ContestLobby_EventScript_TryJoinLinkGroup:: @ 821AC38 +LilycoveCity_ContestLobby_EventScript_TryJoinLinkGroup:: special TryJoinLinkGroup waitstate return -LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided:: @ 821AC3D +LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided:: messageinstant LilycoveCity_ContestLobby_Text_Transmitting contestlinktransfer goto LilycoveCity_ContestLobby_EventScript_StartLinkContest end -LilycoveCity_ContestLobby_EventScript_LeadToLinkContestHall:: @ 821AC49 +LilycoveCity_ContestLobby_EventScript_LeadToLinkContestHall:: messageautoscroll LilycoveCity_ContestLobby_Text_ContestBeginShortly waitmessage delay 20 @@ -964,7 +964,7 @@ LilycoveCity_ContestLobby_EventScript_LeadToLinkContestHall:: @ 821AC49 release return -LilycoveCity_ContestLobby_Movement_PlayerWalkToLinkContestHall: @ 821ACD0 +LilycoveCity_ContestLobby_Movement_PlayerWalkToLinkContestHall: walk_right walk_right walk_right @@ -977,23 +977,23 @@ LilycoveCity_ContestLobby_Movement_PlayerWalkToLinkContestHall: @ 821ACD0 set_invisible step_end -LilycoveCity_ContestLobby_Movement_PlayerApproachLinkReceptionist: @ 821ACDB +LilycoveCity_ContestLobby_Movement_PlayerApproachLinkReceptionist: walk_right step_end -LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter: @ 821ACDD +LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter: walk_right walk_right walk_in_place_fastest_down step_end -LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter: @ 821ACE1 +LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter: walk_down walk_down walk_in_place_fastest_up step_end -LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall: @ 821ACE5 +LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall: walk_right walk_right walk_right @@ -1005,11 +1005,11 @@ LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall: @ 821ACE5 set_invisible step_end -LilycoveCity_ContestLobby_Movement_LinkReceptionistFacePlayer: @ 821ACEF +LilycoveCity_ContestLobby_Movement_LinkReceptionistFacePlayer: walk_in_place_fastest_left step_end -LilycoveCity_ContestLobby_EventScript_LittleGirl:: @ 821ACF1 +LilycoveCity_ContestLobby_EventScript_LittleGirl:: lock faceplayer goto_if_set FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_LittleGirlHaveCase @@ -1017,22 +1017,22 @@ LilycoveCity_ContestLobby_EventScript_LittleGirl:: @ 821ACF1 release end -LilycoveCity_ContestLobby_EventScript_LittleGirlHaveCase:: @ 821AD06 +LilycoveCity_ContestLobby_EventScript_LittleGirlHaveCase:: msgbox LilycoveCity_ContestLobby_Text_MakePokeblocksDifferentBerries, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_Text_LadyGaveMePokeblockCase: @ 821AD10 +LilycoveCity_ContestLobby_Text_LadyGaveMePokeblockCase: .string "Yippee!\p" .string "The lady at the reception counter\n" .string "gave me a case for {POKEBLOCK}S!$" -LilycoveCity_ContestLobby_Text_MakePokeblocksDifferentBerries: @ 821AD55 +LilycoveCity_ContestLobby_Text_MakePokeblocksDifferentBerries: .string "Make {POKEBLOCK}S and put them in there.\p" .string "When you make a {POKEBLOCK}, everyone\n" .string "has to put in a different BERRY.$" -LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint: @ 821ADB9 +LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint: .string "Congratulations!\p" .string "I did a painting of your POKéMON to\n" .string "commemorate its victory…\p" @@ -1041,7 +1041,7 @@ LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint: @ 821ADB9 .string "painting better than I usually do.\l" .string "Look, see?$" -LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum: @ 821AE78 +LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum: .string "What do you think? I'm confident in\n" .string "what I've done, but do you like it?\p" .string "A work of this caliber, it wouldn't look\n" @@ -1050,7 +1050,7 @@ LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum: @ 821AE78 .string "for paintings?\p" .string "Do you think I should take this there?$" -LilycoveCity_ContestLobby_Text_IllTakePaintingToMuseum: @ 821AF63 +LilycoveCity_ContestLobby_Text_IllTakePaintingToMuseum: .string "What, really? Then, sure, I will take\n" .string "this painting there right now.\p" .string "I'll give it a proper title, too.\p" @@ -1059,34 +1059,34 @@ LilycoveCity_ContestLobby_Text_IllTakePaintingToMuseum: @ 821AF63 .string "Please check if they did accept this.\n" .string "Thank you!$" -LilycoveCity_ContestLobby_Text_TakeMementoOfPainting: @ 821B030 +LilycoveCity_ContestLobby_Text_TakeMementoOfPainting: .string "Oh, that's right!\p" .string "As a memento of me painting your\n" .string "POKéMON, please take this.$" -LilycoveCity_ContestLobby_Text_ReceivedARibbon: @ 821B07E +LilycoveCity_ContestLobby_Text_ReceivedARibbon: .string "{PLAYER} received a RIBBON.$" -LilycoveCity_ContestLobby_Text_PutTheRibbonOnMon: @ 821B094 +LilycoveCity_ContestLobby_Text_PutTheRibbonOnMon: .string "{PLAYER} put the RIBBON on\n" .string "{STR_VAR_1}.$" -LilycoveCity_ContestLobby_Text_OkaySeeYou: @ 821B0AD +LilycoveCity_ContestLobby_Text_OkaySeeYou: .string "Okay, see you!$" -LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum: @ 821B0BC +LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum: .string "Oh… Then, I guess I'll just take\n" .string "this home with me…\p" .string "But, you know, I would like to take\n" .string "this to the art museum… Okay?$" -LilycoveCity_ContestLobby_Text_FineThatsTheWayItIs: @ 821B132 +LilycoveCity_ContestLobby_Text_FineThatsTheWayItIs: .string "Oh, fine, that's the way it is.\n" .string "I will hang this in my own house.\p" .string "I'll just have to try harder next time.\n" .string "Well, be seeing you.$" -LilycoveCity_ContestLobby_Text_MasterRankHereICome: @ 821B1B1 +LilycoveCity_ContestLobby_Text_MasterRankHereICome: .string "Hoo, boy… Master Rank CONTESTS,\n" .string "here I come.\p" .string "The world will know that my dearest\n" @@ -1094,31 +1094,31 @@ LilycoveCity_ContestLobby_Text_MasterRankHereICome: @ 821B1B1 .string "existence. The time has come!\l" .string "Uheheheh.$" -LilycoveCity_ContestLobby_Text_WholeVarietyOfPokemonHere: @ 821B24D +LilycoveCity_ContestLobby_Text_WholeVarietyOfPokemonHere: .string "You can see a whole variety of\n" .string "POKéMON here.\p" .string "That's why I make this place a regular\n" .string "part of my daily stroll.$" -LilycoveCity_ContestLobby_Text_ContestFeastForEyes: @ 821B2BA +LilycoveCity_ContestLobby_Text_ContestFeastForEyes: .string "Wow, coming out to a CONTEST is\n" .string "a feast for these eyes!\p" .string "Would you look at all the POKéMON\n" .string "that just scream to be painted?$" -LilycoveCity_ContestLobby_Text_ToughContestIsExtreme: @ 821B334 +LilycoveCity_ContestLobby_Text_ToughContestIsExtreme: .string "The TOUGHNESS CONTEST is like\n" .string "extreme, man!\p" .string "Those muscular appeals…\n" .string "Cascading sweat… I swoon!$" -LilycoveCity_ContestLobby_Text_LavishedCareOnMon: @ 821B392 +LilycoveCity_ContestLobby_Text_LavishedCareOnMon: .string "Day in and day out, I lavished my care\n" .string "on this POKéMON.\p" .string "Its condition is peaking.\n" .string "Today, victory is mine!$" -LilycoveCity_ContestLobby_Text_MadePokeblocksWithFamily: @ 821B3FC +LilycoveCity_ContestLobby_Text_MadePokeblocksWithFamily: .string "I made {POKEBLOCK}S with Mom, Dad, and\n" .string "Big Sister. They turned out great!\p" .string "I bet you can make smoother, better\n" diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc index 72667973d206..8ce2a97df2ff 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc +++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_OWNER, 1 -LilycoveCity_CoveLilyMotel_1F_MapScripts:: @ 8218188 +LilycoveCity_CoveLilyMotel_1F_MapScripts:: .byte 0 -LilycoveCity_CoveLilyMotel_1F_EventScript_MotelOwner:: @ 8218189 +LilycoveCity_CoveLilyMotel_1F_EventScript_MotelOwner:: lockall goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear goto_if_set FLAG_BADGE07_GET, LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted @@ -17,7 +17,7 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_MotelOwner:: @ 8218189 releaseall end -LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted:: @ 82181C3 +LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted:: msgbox LilycoveCity_CoveLilyMotel_1F_Text_MonFoundLostItem, MSGBOX_DEFAULT applymovement LOCALID_OWNER, Common_Movement_FacePlayer waitmovement 0 @@ -28,7 +28,7 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted:: @ 82181C3 releaseall end -LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear:: @ 82181EA +LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear:: msgbox LilycoveCity_CoveLilyMotel_1F_Text_HouseSittingMonCaughtBurglar, MSGBOX_DEFAULT applymovement LOCALID_OWNER, Common_Movement_FacePlayer waitmovement 0 @@ -39,7 +39,7 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear:: @ 82181EA releaseall end -LilycoveCity_CoveLilyMotel_1F_EventScript_BlockingTV:: @ 8218211 +LilycoveCity_CoveLilyMotel_1F_EventScript_BlockingTV:: lockall playse SE_PIN applymovement LOCALID_OWNER, Common_Movement_ExclamationMark @@ -58,24 +58,24 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_BlockingTV:: @ 8218211 release end -LilycoveCity_CoveLilyMotel_1F_Movement_PlayerPushFromTV: @ 8218259 +LilycoveCity_CoveLilyMotel_1F_Movement_PlayerPushFromTV: face_right lock_facing_direction walk_left unlock_facing_direction step_end -LilycoveCity_CoveLilyMotel_1F_Movement_OwnerPushPlayer: @ 821825E +LilycoveCity_CoveLilyMotel_1F_Movement_OwnerPushPlayer: walk_up step_end -LilycoveCity_CoveLilyMotel_1F_Movement_OwnerReturn: @ 8218260 +LilycoveCity_CoveLilyMotel_1F_Movement_OwnerReturn: face_down walk_down face_up step_end -LilycoveCity_CoveLilyMotel_1F_Text_GuestsDoubledByMascot: @ 8218264 +LilycoveCity_CoveLilyMotel_1F_Text_GuestsDoubledByMascot: .string "Hm, so they doubled the guests by\n" .string "using POKéMON as attractions?\p" .string "Hm, well, maybe I should make a cute\n" @@ -83,17 +83,17 @@ LilycoveCity_CoveLilyMotel_1F_Text_GuestsDoubledByMascot: @ 8218264 .string "I wonder if that will attract more\n" .string "guests to stay with us?$" -LilycoveCity_CoveLilyMotel_1F_Text_NoGuestsWithTeamAqua: @ 821831E +LilycoveCity_CoveLilyMotel_1F_Text_NoGuestsWithTeamAqua: .string "Oh, sorry, sorry!\n" .string "I was too involved in watching TV!\p" .string "Since that TEAM AQUA came to town,\n" .string "the tourists have been staying away.$" -LilycoveCity_CoveLilyMotel_1F_Text_CantSeeTheTV: @ 821839B +LilycoveCity_CoveLilyMotel_1F_Text_CantSeeTheTV: .string "Hey, down in front!\n" .string "I can't see the TV!$" -LilycoveCity_CoveLilyMotel_1F_Text_MonFoundLostItem: @ 82183C3 +LilycoveCity_CoveLilyMotel_1F_Text_MonFoundLostItem: .string "Amazing! You're telling me a POKéMON\n" .string "found someone's lost item?\p" .string "That's something. If we had some smart\n" @@ -101,7 +101,7 @@ LilycoveCity_CoveLilyMotel_1F_Text_MonFoundLostItem: @ 82183C3 .string "We could recover anything that our\n" .string "guests mislaid…$" -LilycoveCity_CoveLilyMotel_1F_Text_HeardAquaHideoutBusted: @ 8218470 +LilycoveCity_CoveLilyMotel_1F_Text_HeardAquaHideoutBusted: .string "Oh, sorry, sorry!\n" .string "I was too involved in watching TV!\p" .string "I heard that someone busted\n" @@ -111,7 +111,7 @@ LilycoveCity_CoveLilyMotel_1F_Text_HeardAquaHideoutBusted: @ 8218470 .string "It was a company called… Uh…\n" .string "GAME something…$" -LilycoveCity_CoveLilyMotel_1F_Text_HouseSittingMonCaughtBurglar: @ 8218544 +LilycoveCity_CoveLilyMotel_1F_Text_HouseSittingMonCaughtBurglar: .string "Amazing! A house-sitting POKéMON\n" .string "caught a burglar?\p" .string "That's something. If we had a tough\n" @@ -119,7 +119,7 @@ LilycoveCity_CoveLilyMotel_1F_Text_HouseSittingMonCaughtBurglar: @ 8218544 .string "We would be able to provide our guests\n" .string "with greater safety.$" -LilycoveCity_CoveLilyMotel_1F_Text_BetterGetWorkingOnGuestsDinner: @ 82185F4 +LilycoveCity_CoveLilyMotel_1F_Text_BetterGetWorkingOnGuestsDinner: .string "Oh, sorry, sorry!\n" .string "I was too involved in watching TV.\p" .string "Oh, yes. A big group of guests arrived\n" diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc index 9d3520be56d3..a5e8b40cf6a7 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc +++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc @@ -1,7 +1,7 @@ -LilycoveCity_CoveLilyMotel_2F_MapScripts:: @ 82186D2 +LilycoveCity_CoveLilyMotel_2F_MapScripts:: .byte 0 -LilycoveCity_CoveLilyMotel_2F_EventScript_GameDesigner:: @ 82186D3 +LilycoveCity_CoveLilyMotel_2F_EventScript_GameDesigner:: lock faceplayer call_if_unset FLAG_TEMP_2, LilycoveCity_CoveLilyMotel_2F_EventScript_ShowMeCompletedDex @@ -12,18 +12,18 @@ LilycoveCity_CoveLilyMotel_2F_EventScript_GameDesigner:: @ 82186D3 release end -LilycoveCity_CoveLilyMotel_2F_EventScript_ShowMeCompletedDex:: @ 82186F9 +LilycoveCity_CoveLilyMotel_2F_EventScript_ShowMeCompletedDex:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_ShowMeCompletedDex, MSGBOX_DEFAULT return -LilycoveCity_CoveLilyMotel_2F_EventScript_AllHoennMonsFanfare:: @ 8218702 +LilycoveCity_CoveLilyMotel_2F_EventScript_AllHoennMonsFanfare:: setflag FLAG_TEMP_2 playfanfare MUS_OBTAIN_ITEM waitfanfare goto LilycoveCity_CoveLilyMotel_2F_EventScript_ShowDiploma end -LilycoveCity_CoveLilyMotel_2F_EventScript_ShowDiploma:: @ 821870F +LilycoveCity_CoveLilyMotel_2F_EventScript_ShowDiploma:: message LilycoveCity_CoveLilyMotel_2F_Text_FilledPokedexGiveYouThis waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -32,27 +32,27 @@ LilycoveCity_CoveLilyMotel_2F_EventScript_ShowDiploma:: @ 821870F release end -LilycoveCity_CoveLilyMotel_2F_EventScript_Programmer:: @ 8218720 +LilycoveCity_CoveLilyMotel_2F_EventScript_Programmer:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_ImTheProgrammer, MSGBOX_NPC end -LilycoveCity_CoveLilyMotel_2F_EventScript_GraphicArtist:: @ 8218729 +LilycoveCity_CoveLilyMotel_2F_EventScript_GraphicArtist:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_ImTheGraphicArtist, MSGBOX_NPC end -LilycoveCity_CoveLilyMotel_2F_EventScript_FatMan:: @ 8218732 +LilycoveCity_CoveLilyMotel_2F_EventScript_FatMan:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_GirlsAreCute, MSGBOX_NPC end -LilycoveCity_CoveLilyMotel_2F_EventScript_Woman:: @ 821873B +LilycoveCity_CoveLilyMotel_2F_EventScript_Woman:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_SeaBreezeTicklesHeart, MSGBOX_NPC end -LilycoveCity_CoveLilyMotel_2F_EventScript_GameBoyKid:: @ 8218744 +LilycoveCity_CoveLilyMotel_2F_EventScript_GameBoyKid:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_NeverLeaveWithoutGameBoy, MSGBOX_NPC end -LilycoveCity_CoveLilyMotel_2F_EventScript_Scott:: @ 821874D +LilycoveCity_CoveLilyMotel_2F_EventScript_Scott:: lock faceplayer goto_if_set FLAG_MET_SCOTT_IN_LILYCOVE, LilycoveCity_CoveLilyMotel_2F_EventScript_MetScott @@ -62,12 +62,12 @@ LilycoveCity_CoveLilyMotel_2F_EventScript_Scott:: @ 821874D release end -LilycoveCity_CoveLilyMotel_2F_EventScript_MetScott:: @ 821876A +LilycoveCity_CoveLilyMotel_2F_EventScript_MetScott:: msgbox LilycoveCity_CoveLilyMotel_2F_Text_ContestsDoTakeStrategy, MSGBOX_DEFAULT release end -LilycoveCity_CoveLilyMotel_2F_Text_ShowMeCompletedDex: @ 8218774 +LilycoveCity_CoveLilyMotel_2F_Text_ShowMeCompletedDex: .string "I'm the GAME DESIGNER.\p" .string "Oh, is that right?\n" .string "You're working on a POKéDEX?\p" @@ -76,7 +76,7 @@ LilycoveCity_CoveLilyMotel_2F_Text_ShowMeCompletedDex: @ 8218774 .string "If you do complete it, please come\n" .string "show me.$" -LilycoveCity_CoveLilyMotel_2F_Text_FilledPokedexGiveYouThis: @ 821881C +LilycoveCity_CoveLilyMotel_2F_Text_FilledPokedexGiveYouThis: .string "Wow! That's awesome!\n" .string "Yep, it's totally awesome!\p" .string "This POKéDEX is completely filled!\n" @@ -85,17 +85,17 @@ LilycoveCity_CoveLilyMotel_2F_Text_FilledPokedexGiveYouThis: @ 821881C .string "Let me give you something in\n" .string "recognition of your feat!$" -LilycoveCity_CoveLilyMotel_2F_Text_ImTheProgrammer: @ 82188D6 +LilycoveCity_CoveLilyMotel_2F_Text_ImTheProgrammer: .string "Me? You're talking to me?\n" .string "I'm the PROGRAMMER.\p" .string "I wonder what the SLOTS are\n" .string "like here.$" -LilycoveCity_CoveLilyMotel_2F_Text_ImTheGraphicArtist: @ 821892B +LilycoveCity_CoveLilyMotel_2F_Text_ImTheGraphicArtist: .string "I'm the GRAPHIC ARTIST! Aren't the\n" .string "POKéMON of HOENN interesting?$" -LilycoveCity_CoveLilyMotel_2F_Text_GirlsAreCute: @ 821896C +LilycoveCity_CoveLilyMotel_2F_Text_GirlsAreCute: .string "The girl TUBERS, they're cute, hey?\n" .string "To battle against a cute TUBER…\p" .string "Whoop, it's so awesome!\p" @@ -103,17 +103,17 @@ LilycoveCity_CoveLilyMotel_2F_Text_GirlsAreCute: @ 821896C .string "A 2-on-2 battle with TWINS…\p" .string "Whoop, it's unbearably fun!$" -LilycoveCity_CoveLilyMotel_2F_Text_SeaBreezeTicklesHeart: @ 8218A21 +LilycoveCity_CoveLilyMotel_2F_Text_SeaBreezeTicklesHeart: .string "The sea breeze tickles my heart.\n" .string "It feels wonderful here!$" -LilycoveCity_CoveLilyMotel_2F_Text_NeverLeaveWithoutGameBoy: @ 8218A5B +LilycoveCity_CoveLilyMotel_2F_Text_NeverLeaveWithoutGameBoy: .string "You never know when and where\n" .string "people will challenge you.\p" .string "That's why I never leave home without\n" .string "my GAME BOY ADVANCE.$" -LilycoveCity_CoveLilyMotel_2F_Text_SnoozingPreferBattles: @ 8218ACF +LilycoveCity_CoveLilyMotel_2F_Text_SnoozingPreferBattles: .string "SCOTT: … … … … …\n" .string "… … … … … Zzz…\p" .string "… … … … … Huh?!\n" @@ -129,7 +129,7 @@ LilycoveCity_CoveLilyMotel_2F_Text_SnoozingPreferBattles: @ 8218ACF .string "like the GYMS, CONTESTS, BATTLE TENT,\l" .string "the whole works!$" -LilycoveCity_CoveLilyMotel_2F_Text_ContestsDoTakeStrategy: @ 8218C33 +LilycoveCity_CoveLilyMotel_2F_Text_ContestsDoTakeStrategy: .string "SCOTT: I think it does take strategy\n" .string "to win a CONTEST.\p" .string "Devising CONTEST strategies is one way\n" diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc index 10bd9eee52b7..a7b062096f68 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc @@ -1,7 +1,7 @@ -LilycoveCity_DepartmentStoreElevator_MapScripts:: @ 8220623 +LilycoveCity_DepartmentStoreElevator_MapScripts:: .byte 0 -LilycoveCity_DepartmentStoreElevator_EventScript_Attendant:: @ 8220624 +LilycoveCity_DepartmentStoreElevator_EventScript_Attendant:: lock faceplayer setvar VAR_0x8004, 0 @@ -21,32 +21,32 @@ LilycoveCity_DepartmentStoreElevator_EventScript_Attendant:: @ 8220624 end @ Below scripts ensure the cursor for floor select always starts on the current floor -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom5th:: @ 8220689 +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom5th:: multichoicedefault 0, 0, MULTI_FLOORS, 0, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom4th:: @ 8220695 +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom4th:: multichoicedefault 0, 0, MULTI_FLOORS, 1, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom3rd:: @ 82206A1 +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom3rd:: multichoicedefault 0, 0, MULTI_FLOORS, 2, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom2nd:: @ 82206AD +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom2nd:: multichoicedefault 0, 0, MULTI_FLOORS, 3, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom1st:: @ 82206B9 +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom1st:: multichoicedefault 0, 0, MULTI_FLOORS, 4, FALSE goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor end -LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor:: @ 82206C5 +LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor:: switch VAR_RESULT case 0, LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor case 1, LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor @@ -57,7 +57,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor:: @ 82206C5 case MULTI_B_PRESSED, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: @ 8220718 +LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_1F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F, 255, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F @@ -67,7 +67,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: @ 8220718 goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: @ 8220740 +LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_2F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F, 255, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F @@ -77,7 +77,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: @ 8220740 goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: @ 8220768 +LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_3F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F, 255, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F @@ -87,7 +87,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: @ 8220768 goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: @ 8220790 +LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_4F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F, 255, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F @@ -97,7 +97,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: @ 8220790 goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor:: @ 82207B8 +LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_5F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F, 255, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F @@ -107,12 +107,12 @@ LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor:: @ 82207B8 goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect end -LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect:: @ 82207E0 +LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect:: special CloseDeptStoreElevatorWindow release end -LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator:: @ 82207E5 +LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator:: special CloseDeptStoreElevatorWindow closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown @@ -123,7 +123,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator:: @ 82207E5 setflag FLAG_TEMP_2 return -LilycoveCity_DepartmentStoreElevator_EventScript_SetFloor:: @ 82207FC +LilycoveCity_DepartmentStoreElevator_EventScript_SetFloor:: special SetDeptStoreFloor return diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index 68771a2ddfd3..e91ca7745c90 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -1,8 +1,8 @@ -LilycoveCity_DepartmentStoreRooftop_MapScripts:: @ 8220207 +LilycoveCity_DepartmentStoreRooftop_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_DepartmentStoreRooftop_OnTransition .byte 0 -LilycoveCity_DepartmentStoreRooftop_OnTransition: @ 822020D +LilycoveCity_DepartmentStoreRooftop_OnTransition: getpricereduction POKENEWS_LILYCOVE compare VAR_RESULT, TRUE call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman @@ -10,15 +10,15 @@ LilycoveCity_DepartmentStoreRooftop_OnTransition: @ 822020D call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_HideSaleWoman end -LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman:: @ 8220227 +LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman:: clearflag FLAG_HIDE_LILYCOVE_DEPARTMENT_STORE_ROOFTOP_SALE_WOMAN return -LilycoveCity_DepartmentStoreRooftop_EventScript_HideSaleWoman:: @ 822022B +LilycoveCity_DepartmentStoreRooftop_EventScript_HideSaleWoman:: setflag FLAG_HIDE_LILYCOVE_DEPARTMENT_STORE_ROOFTOP_SALE_WOMAN return -LilycoveCity_DepartmentStoreRooftop_EventScript_SaleWoman:: @ 822022F +LilycoveCity_DepartmentStoreRooftop_EventScript_SaleWoman:: lock faceplayer message gText_HowMayIServeYou @@ -29,7 +29,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_SaleWoman:: @ 822022F end .align 2 -LilycoveCity_DepartmentStoreRooftop_PokemartDecor_ClearOutSale: @ 8220248 +LilycoveCity_DepartmentStoreRooftop_PokemartDecor_ClearOutSale: .2byte DECOR_MUD_BALL .2byte DECOR_FENCE_LENGTH .2byte DECOR_FENCE_WIDTH @@ -48,7 +48,7 @@ LilycoveCity_DepartmentStoreRooftop_PokemartDecor_ClearOutSale: @ 8220248 release end -LilycoveCity_DepartmentStoreRooftop_EventScript_Man:: @ 8220268 +LilycoveCity_DepartmentStoreRooftop_EventScript_Man:: lock faceplayer getpricereduction POKENEWS_LILYCOVE @@ -58,16 +58,16 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_Man:: @ 8220268 release end -LilycoveCity_DepartmentStoreRooftop_EventScript_ManClearOutSale:: @ 8220282 +LilycoveCity_DepartmentStoreRooftop_EventScript_ManClearOutSale:: msgbox LilycoveCity_DepartmentStoreRooftop_Text_BeenWaitingForClearOutSale, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStoreRooftop_EventScript_ThirstyMan:: @ 822028C +LilycoveCity_DepartmentStoreRooftop_EventScript_ThirstyMan:: msgbox LilycoveCity_DepartmentStoreRooftop_Text_BoneDryThirsty, MSGBOX_NPC end -LilycoveCity_DepartmentStoreRooftop_EventScript_VendingMachine:: @ 8220295 +LilycoveCity_DepartmentStoreRooftop_EventScript_VendingMachine:: lockall message LilycoveCity_DepartmentStoreRooftop_Text_WhichDrinkWouldYouLike waitmessage @@ -75,7 +75,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_VendingMachine:: @ 8220295 goto LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink:: @ 82202A6 +LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink:: multichoice 16, 0, MULTI_VENDING_MACHINE, FALSE copyvar VAR_TEMP_1, VAR_RESULT switch VAR_TEMP_1 @@ -86,46 +86,46 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink:: @ 82202A6 goto LilycoveCity_DepartmentStoreRooftop_EventScript_ExitVendingMachine end -LilycoveCity_DepartmentStoreRooftop_EventScript_FreshWater:: @ 82202E4 +LilycoveCity_DepartmentStoreRooftop_EventScript_FreshWater:: setvar VAR_TEMP_0, ITEM_FRESH_WATER goto LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_SodaPop:: @ 82202EF +LilycoveCity_DepartmentStoreRooftop_EventScript_SodaPop:: setvar VAR_TEMP_0, ITEM_SODA_POP goto LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_Lemonade:: @ 82202FA +LilycoveCity_DepartmentStoreRooftop_EventScript_Lemonade:: setvar VAR_TEMP_0, ITEM_LEMONADE goto LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater:: @ 8220305 +LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater:: checkmoney 200, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneySodaPop:: @ 822030C +LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneySodaPop:: checkmoney 300, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade:: @ 8220313 +LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade:: checkmoney 350, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyFreshWater:: @ 822031A +LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyFreshWater:: removemoney 200, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop:: @ 8220321 +LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop:: removemoney 300, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade:: @ 8220328 +LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade:: removemoney 350, 0 return -LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: @ 822032F +LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: compare VAR_TEMP_1, 0 call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater compare VAR_TEMP_1, 1 @@ -178,57 +178,57 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: @ 822032F goto LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink:: @ 8220436 +LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink:: message LilycoveCity_DepartmentStoreRooftop_Text_WhichDrinkWouldYouLike waitmessage goto LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink end -LilycoveCity_DepartmentStoreRooftop_EventScript_NotEnoughMoneyForDrink:: @ 8220442 +LilycoveCity_DepartmentStoreRooftop_EventScript_NotEnoughMoneyForDrink:: msgbox LilycoveCity_DepartmentStoreRooftop_Text_NotEnoughMoney, MSGBOX_DEFAULT goto LilycoveCity_DepartmentStoreRooftop_EventScript_ExitVendingMachine end -LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink:: @ 8220450 +LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink:: msgbox gText_TheBagIsFull, MSGBOX_DEFAULT goto LilycoveCity_DepartmentStoreRooftop_EventScript_ExitVendingMachine end -LilycoveCity_DepartmentStoreRooftop_EventScript_ExitVendingMachine:: @ 822045E +LilycoveCity_DepartmentStoreRooftop_EventScript_ExitVendingMachine:: hidemoneybox releaseall end -LilycoveCity_DepartmentStoreRooftop_Text_SetDatesForClearOutSales: @ 8220463 +LilycoveCity_DepartmentStoreRooftop_Text_SetDatesForClearOutSales: .string "Don't they have set dates for their\n" .string "clear-out sales?\p" .string "I watch TV, but they never show any\n" .string "commercials.$" -LilycoveCity_DepartmentStoreRooftop_Text_BeenWaitingForClearOutSale: @ 82204C9 +LilycoveCity_DepartmentStoreRooftop_Text_BeenWaitingForClearOutSale: .string "Yes! I've been waiting a long time for\n" .string "this clear-out sale.\p" .string "They have items that you can only get\n" .string "here. I'm going to load up, that I am!$" -LilycoveCity_DepartmentStoreRooftop_Text_BoneDryThirsty: @ 8220552 +LilycoveCity_DepartmentStoreRooftop_Text_BoneDryThirsty: .string "Ohh… I'm bone-dry thirsty!$" -LilycoveCity_DepartmentStoreRooftop_Text_WhichDrinkWouldYouLike: @ 822056D +LilycoveCity_DepartmentStoreRooftop_Text_WhichDrinkWouldYouLike: .string "It's a VENDING MACHINE.\n" .string "Which drink would you like?$" -LilycoveCity_DepartmentStoreRooftop_Text_CanOfDrinkDroppedDown: @ 82205A1 +LilycoveCity_DepartmentStoreRooftop_Text_CanOfDrinkDroppedDown: .string "Clang!\p" .string "A can of {STR_VAR_1} dropped down.$" -LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown: @ 82205C2 +LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown: .string "Clang!\p" .string "Score! An extra can of {STR_VAR_1}\n" .string "dropped down!$" -LilycoveCity_DepartmentStoreRooftop_Text_NotEnoughMoney: @ 82205F1 +LilycoveCity_DepartmentStoreRooftop_Text_NotEnoughMoney: .string "Not enough money…$" -LilycoveCity_DepartmentStoreRooftop_Text_DecidedAgainstBuyingDrink: @ 8220603 +LilycoveCity_DepartmentStoreRooftop_Text_DecidedAgainstBuyingDrink: .string "Decided against buying a drink.$" diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc index 191220091c3c..e1167ad7ea9f 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc @@ -1,13 +1,13 @@ .set LOCALID_LOTTERY_CLERK, 2 -LilycoveCity_DepartmentStore_1F_MapScripts:: @ 821F692 +LilycoveCity_DepartmentStore_1F_MapScripts:: .byte 0 -LilycoveCity_DepartmentStore_1F_EventScript_Greeter:: @ 821F693 +LilycoveCity_DepartmentStore_1F_EventScript_Greeter:: msgbox LilycoveCity_DepartmentStore_1F_Text_WelcomeToDeptStore, MSGBOX_NPC end -LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: @ 821F69C +LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: lock faceplayer dotimebasedevents @@ -57,62 +57,62 @@ LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: @ 821F69C goto LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain2 end -LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPartyMon:: @ 821F77B +LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPartyMon:: msgbox LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPartyMon, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPCMon:: @ 821F784 +LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPCMon:: msgbox LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPCMon, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_ComeBackTomorrow:: @ 821F78D +LilycoveCity_DepartmentStore_1F_EventScript_ComeBackTomorrow:: msgbox LilycoveCity_DepartmentStore_1F_Text_ComeBackTomorrow, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain:: @ 821F797 +LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain:: msgbox LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStore_1F_EventScript_NoMatch:: @ 821F7A1 +LilycoveCity_DepartmentStore_1F_EventScript_NoMatch:: msgbox LilycoveCity_DepartmentStore_1F_Text_NoNumbersMatched, MSGBOX_DEFAULT goto LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain2 end -LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain2:: @ 821F7AF +LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain2:: msgbox LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain2, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStore_1F_EventScript_TwoDigitMatch:: @ 821F7B9 +LilycoveCity_DepartmentStore_1F_EventScript_TwoDigitMatch:: msgbox LilycoveCity_DepartmentStore_1F_Text_TwoDigitsMatched, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_ThreeDigitMatch:: @ 821F7C2 +LilycoveCity_DepartmentStore_1F_EventScript_ThreeDigitMatch:: msgbox LilycoveCity_DepartmentStore_1F_Text_ThreeDigitsMatched, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_FourDigitMatch:: @ 821F7CB +LilycoveCity_DepartmentStore_1F_EventScript_FourDigitMatch:: msgbox LilycoveCity_DepartmentStore_1F_Text_FourDigitsMatched, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_FullMatch:: @ 821F7D4 +LilycoveCity_DepartmentStore_1F_EventScript_FullMatch:: msgbox LilycoveCity_DepartmentStore_1F_Text_AllFiveDigitsMatched, MSGBOX_DEFAULT return -LilycoveCity_DepartmentStore_1F_EventScript_RecordPrizeNoRoom:: @ 821F7DD +LilycoveCity_DepartmentStore_1F_EventScript_RecordPrizeNoRoom:: copyvar VAR_POKELOT_PRIZE_PLACE, VAR_0x8004 copyvar VAR_POKELOT_PRIZE_ITEM, VAR_0x8005 goto LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize end -LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize:: @ 821F7ED +LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize:: msgbox LilycoveCity_DepartmentStore_1F_Text_NoRoomForThis, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier:: @ 821F7F7 +LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier:: msgbox LilycoveCity_DepartmentStore_1F_Text_PrizeWeveBeenHolding, MSGBOX_DEFAULT giveitem VAR_POKELOT_PRIZE_ITEM compare VAR_RESULT, FALSE @@ -125,19 +125,19 @@ LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier:: @ 821F7F7 release end -LilycoveCity_DepartmentStore_1F_EventScript_PokefanF:: @ 821F82F +LilycoveCity_DepartmentStore_1F_EventScript_PokefanF:: msgbox LilycoveCity_DepartmentStore_1F_Text_IBuyAllSortsOfThings, MSGBOX_NPC end -LilycoveCity_DepartmentStore_1F_EventScript_LittleGirl:: @ 821F838 +LilycoveCity_DepartmentStore_1F_EventScript_LittleGirl:: msgbox LilycoveCity_DepartmentStore_1F_Text_MomBuyingMeFurniture, MSGBOX_NPC end -LilycoveCity_DepartmentStore_1F_EventScript_PokefanM:: @ 821F841 +LilycoveCity_DepartmentStore_1F_EventScript_PokefanM:: msgbox LilycoveCity_DepartmentStore_1F_Text_BuyingSomethingForAzumarill, MSGBOX_NPC end -LilycoveCity_DepartmentStore_1F_EventScript_Azumarill:: @ 821F84A +LilycoveCity_DepartmentStore_1F_EventScript_Azumarill:: lock faceplayer waitse @@ -147,30 +147,30 @@ LilycoveCity_DepartmentStore_1F_EventScript_Azumarill:: @ 821F84A release end -LilycoveCity_DepartmentStore_1F_EventScript_FloorNamesSign:: @ 821F85D +LilycoveCity_DepartmentStore_1F_EventScript_FloorNamesSign:: msgbox LilycoveCity_DepartmentStore_1F_Text_FloorNamesSign, MSGBOX_SIGN end -LilycoveCity_DepartmentStore_1F_Text_WelcomeToDeptStore: @ 821F866 +LilycoveCity_DepartmentStore_1F_Text_WelcomeToDeptStore: .string "Welcome to LILYCOVE DEPARTMENT STORE.$" -LilycoveCity_DepartmentStore_1F_Text_IBuyAllSortsOfThings: @ 821F88C +LilycoveCity_DepartmentStore_1F_Text_IBuyAllSortsOfThings: .string "Whenever I come to the DEPARTMENT\n" .string "STORE, I always end up buying all sorts\l" .string "of things because it's so fun.$" -LilycoveCity_DepartmentStore_1F_Text_MomBuyingMeFurniture: @ 821F8F5 +LilycoveCity_DepartmentStore_1F_Text_MomBuyingMeFurniture: .string "Today, my mom is going to buy me some\n" .string "nice furniture.$" -LilycoveCity_DepartmentStore_1F_Text_BuyingSomethingForAzumarill: @ 821F92B +LilycoveCity_DepartmentStore_1F_Text_BuyingSomethingForAzumarill: .string "I'm buying something for my AZUMARILL\n" .string "as a reward for winning a CONTEST.$" -LilycoveCity_DepartmentStore_1F_Text_Azumarill: @ 821F974 +LilycoveCity_DepartmentStore_1F_Text_Azumarill: .string "AZUMARILL: Maririroo!$" -LilycoveCity_DepartmentStore_1F_Text_FloorNamesSign: @ 821F98A +LilycoveCity_DepartmentStore_1F_Text_FloorNamesSign: .string "1F: SERVICE COUNTER\n" .string " LOTTERY CORNER\p" .string "2F: TRAINER'S ZONE\p" @@ -180,7 +180,7 @@ LilycoveCity_DepartmentStore_1F_Text_FloorNamesSign: @ 821F98A .string "ROOFTOP: ROOFTOP PLAZA$" @ Unused -LilycoveCity_DepartmentStore_1F_Text_WirelessCommIsFun: @ 821FA13 +LilycoveCity_DepartmentStore_1F_Text_WirelessCommIsFun: .string "Wireless Communication is a\n" .string "lot of fun, isn't it?\p" .string "I think it lets you do things that\n" @@ -190,7 +190,7 @@ LilycoveCity_DepartmentStore_1F_Text_WirelessCommIsFun: @ 821FA13 .string "I think it's going to be exciting!$" @ Unused -LilycoveCity_DepartmentStore_1F_Text_SpreadWordAboutWirelessComm: @ 821FAE5 +LilycoveCity_DepartmentStore_1F_Text_SpreadWordAboutWirelessComm: .string "I want to spread the word about how\n" .string "fun Wireless Communication can be.$" diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc index 9ced6b347bda..478f5cfd3122 100644 --- a/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc @@ -1,19 +1,19 @@ -LilycoveCity_DepartmentStore_2F_MapScripts:: @ 821FB2C +LilycoveCity_DepartmentStore_2F_MapScripts:: .byte 0 -LilycoveCity_DepartmentStore_2F_EventScript_Cook:: @ 821FB2D +LilycoveCity_DepartmentStore_2F_EventScript_Cook:: msgbox LilycoveCity_DepartmentStore_2F_Text_LearnToUseItemsProperly, MSGBOX_NPC end -LilycoveCity_DepartmentStore_2F_EventScript_PokefanF:: @ 821FB36 +LilycoveCity_DepartmentStore_2F_EventScript_PokefanF:: msgbox LilycoveCity_DepartmentStore_2F_Text_GoodGiftForHusband, MSGBOX_NPC end -LilycoveCity_DepartmentStore_2F_EventScript_Sailor:: @ 821FB3F +LilycoveCity_DepartmentStore_2F_EventScript_Sailor:: msgbox LilycoveCity_DepartmentStore_2F_Text_StockUpOnItems, MSGBOX_NPC end -LilycoveCity_DepartmentStore_2F_EventScript_ClerkLeft:: @ 821FB48 +LilycoveCity_DepartmentStore_2F_EventScript_ClerkLeft:: lock faceplayer message gText_HowMayIServeYou @@ -24,7 +24,7 @@ LilycoveCity_DepartmentStore_2F_EventScript_ClerkLeft:: @ 821FB48 end .align 2 -LilycoveCity_DepartmentStore_2F_Pokemart1: @ 821FB60 +LilycoveCity_DepartmentStore_2F_Pokemart1: .2byte ITEM_POKE_BALL .2byte ITEM_GREAT_BALL .2byte ITEM_ULTRA_BALL @@ -40,7 +40,7 @@ LilycoveCity_DepartmentStore_2F_Pokemart1: @ 821FB60 release end -LilycoveCity_DepartmentStore_2F_EventScript_ClerkRight:: @ 821FB7A +LilycoveCity_DepartmentStore_2F_EventScript_ClerkRight:: lock faceplayer message gText_HowMayIServeYou @@ -51,7 +51,7 @@ LilycoveCity_DepartmentStore_2F_EventScript_ClerkRight:: @ 821FB7A end .align 2 -LilycoveCity_DepartmentStore_2F_Pokemart2: @ 821FB94 +LilycoveCity_DepartmentStore_2F_Pokemart2: .2byte ITEM_POTION .2byte ITEM_SUPER_POTION .2byte ITEM_HYPER_POTION @@ -66,15 +66,15 @@ LilycoveCity_DepartmentStore_2F_Pokemart2: @ 821FB94 release end -LilycoveCity_DepartmentStore_2F_Text_LearnToUseItemsProperly: @ 821FBAC +LilycoveCity_DepartmentStore_2F_Text_LearnToUseItemsProperly: .string "Learn to use items properly.\n" .string "That's basic, really.$" -LilycoveCity_DepartmentStore_2F_Text_GoodGiftForHusband: @ 821FBDF +LilycoveCity_DepartmentStore_2F_Text_GoodGiftForHusband: .string "My husband is waiting at home.\n" .string "What would make a good gift for him?$" -LilycoveCity_DepartmentStore_2F_Text_StockUpOnItems: @ 821FC23 +LilycoveCity_DepartmentStore_2F_Text_StockUpOnItems: .string "I'm leaving on a long journey soon.\n" .string "I need to stock up on items.$" diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc index bec38867c09e..ddb92751934b 100644 --- a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc @@ -1,7 +1,7 @@ -LilycoveCity_DepartmentStore_3F_MapScripts:: @ 821FC64 +LilycoveCity_DepartmentStore_3F_MapScripts:: .byte 0 -LilycoveCity_DepartmentStore_3F_EventScript_ClerkLeft:: @ 821FC65 +LilycoveCity_DepartmentStore_3F_EventScript_ClerkLeft:: lock faceplayer message gText_HowMayIServeYou @@ -11,7 +11,7 @@ LilycoveCity_DepartmentStore_3F_EventScript_ClerkLeft:: @ 821FC65 release end -LilycoveCity_DepartmentStore_3F_Pokemart_Vitamins: @ 821FC7C +LilycoveCity_DepartmentStore_3F_Pokemart_Vitamins: .2byte ITEM_PROTEIN .2byte ITEM_CALCIUM .2byte ITEM_IRON @@ -22,7 +22,7 @@ LilycoveCity_DepartmentStore_3F_Pokemart_Vitamins: @ 821FC7C release end -LilycoveCity_DepartmentStore_3F_EventScript_ClerkRight:: @ 821FC8C +LilycoveCity_DepartmentStore_3F_EventScript_ClerkRight:: lock faceplayer message gText_HowMayIServeYou @@ -33,7 +33,7 @@ LilycoveCity_DepartmentStore_3F_EventScript_ClerkRight:: @ 821FC8C end .align 2 -LilycoveCity_DepartmentStore_3F_Pokemart_StatBoosters: @ 821FCA4 +LilycoveCity_DepartmentStore_3F_Pokemart_StatBoosters: .2byte ITEM_X_SPEED .2byte ITEM_X_SPECIAL .2byte ITEM_X_ATTACK @@ -45,31 +45,31 @@ LilycoveCity_DepartmentStore_3F_Pokemart_StatBoosters: @ 821FCA4 release end -LilycoveCity_DepartmentStore_3F_EventScript_TriathleteM:: @ 821FCB6 +LilycoveCity_DepartmentStore_3F_EventScript_TriathleteM:: msgbox LilycoveCity_DepartmentStore_3F_Text_ItemsBestForTougheningPokemon, MSGBOX_NPC end -LilycoveCity_DepartmentStore_3F_EventScript_PokefanM:: @ 821FCBF +LilycoveCity_DepartmentStore_3F_EventScript_PokefanM:: msgbox LilycoveCity_DepartmentStore_3F_Text_WantMoreEndurance, MSGBOX_NPC end -LilycoveCity_DepartmentStore_3F_EventScript_Woman:: @ 821FCC8 +LilycoveCity_DepartmentStore_3F_EventScript_Woman:: msgbox LilycoveCity_DepartmentStore_3F_Text_GaveCarbosToSpeedUpMon, MSGBOX_NPC end -LilycoveCity_DepartmentStore_3F_Text_ItemsBestForTougheningPokemon: @ 821FCD1 +LilycoveCity_DepartmentStore_3F_Text_ItemsBestForTougheningPokemon: .string "For quickly toughening up POKéMON,\n" .string "items are the best.\p" .string "PROTEIN boosts ATTACK,\n" .string "and CALCIUM raises SP. ATK.$" -LilycoveCity_DepartmentStore_3F_Text_WantMoreEndurance: @ 821FD3B +LilycoveCity_DepartmentStore_3F_Text_WantMoreEndurance: .string "I want my POKéMON to have more\n" .string "endurance.\p" .string "I'm trying to decide whether to raise\n" .string "DEFENSE with IRON, or SP. DEF with ZINC.$" -LilycoveCity_DepartmentStore_3F_Text_GaveCarbosToSpeedUpMon: @ 821FDB4 +LilycoveCity_DepartmentStore_3F_Text_GaveCarbosToSpeedUpMon: .string "I gave a CARBOS to my POKéMON,\n" .string "and its SPEED went up.$" diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc index 441697a7ccd0..d176781d6e62 100644 --- a/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc @@ -1,19 +1,19 @@ -LilycoveCity_DepartmentStore_4F_MapScripts:: @ 821FDEA +LilycoveCity_DepartmentStore_4F_MapScripts:: .byte 0 -LilycoveCity_DepartmentStore_4F_EventScript_Gentleman:: @ 821FDEB +LilycoveCity_DepartmentStore_4F_EventScript_Gentleman:: msgbox LilycoveCity_DepartmentStore_4F_Text_AttackOrDefenseTM, MSGBOX_NPC end -LilycoveCity_DepartmentStore_4F_EventScript_Woman:: @ 821FDF4 +LilycoveCity_DepartmentStore_4F_EventScript_Woman:: msgbox LilycoveCity_DepartmentStore_4F_Text_FiftyDifferentTMs, MSGBOX_NPC end -LilycoveCity_DepartmentStore_4F_EventScript_Youngster:: @ 821FDFD +LilycoveCity_DepartmentStore_4F_EventScript_Youngster:: msgbox LilycoveCity_DepartmentStore_4F_Text_PokemonOnlyHaveFourMoves, MSGBOX_NPC end -LilycoveCity_DepartmentStore_4F_EventScript_ClerkLeft:: @ 821FE06 +LilycoveCity_DepartmentStore_4F_EventScript_ClerkLeft:: lock faceplayer message gText_HowMayIServeYou @@ -24,7 +24,7 @@ LilycoveCity_DepartmentStore_4F_EventScript_ClerkLeft:: @ 821FE06 end .align 2 -LilycoveCity_DepartmentStore_4F_Pokemart_AttackTMs: @ 821FE20 +LilycoveCity_DepartmentStore_4F_Pokemart_AttackTMs: .2byte ITEM_TM38 @ Fire Blast .2byte ITEM_TM25 @ Thunder .2byte ITEM_TM14 @ Blizzard @@ -33,7 +33,7 @@ LilycoveCity_DepartmentStore_4F_Pokemart_AttackTMs: @ 821FE20 release end -LilycoveCity_DepartmentStore_4F_EventScript_ClerkRight:: @ 821FE2C +LilycoveCity_DepartmentStore_4F_EventScript_ClerkRight:: lock faceplayer message gText_HowMayIServeYou @@ -44,7 +44,7 @@ LilycoveCity_DepartmentStore_4F_EventScript_ClerkRight:: @ 821FE2C end .align 2 -LilycoveCity_DepartmentStore_4F_Pokemart_DefenseTMs: @ 821FE44 +LilycoveCity_DepartmentStore_4F_Pokemart_DefenseTMs: .2byte ITEM_TM17 @ Protect .2byte ITEM_TM20 @ Safeguard .2byte ITEM_TM33 @ Reflect @@ -53,20 +53,20 @@ LilycoveCity_DepartmentStore_4F_Pokemart_DefenseTMs: @ 821FE44 release end -LilycoveCity_DepartmentStore_4F_Text_AttackOrDefenseTM: @ 821FE50 +LilycoveCity_DepartmentStore_4F_Text_AttackOrDefenseTM: .string "Hmm…\p" .string "An attacking move…\n" .string "Or a defensive move…\p" .string "It's no easy matter to decide which TM\n" .string "moves should be taught to POKéMON…$" -LilycoveCity_DepartmentStore_4F_Text_FiftyDifferentTMs: @ 821FEC7 +LilycoveCity_DepartmentStore_4F_Text_FiftyDifferentTMs: .string "There are so many different kinds of\n" .string "TM moves.\p" .string "A catalog I read said there are fifty\n" .string "different kinds.$" -LilycoveCity_DepartmentStore_4F_Text_PokemonOnlyHaveFourMoves: @ 821FF2D +LilycoveCity_DepartmentStore_4F_Text_PokemonOnlyHaveFourMoves: .string "I'd like to get all the different TMs,\n" .string "but a POKéMON learns only four moves.$" diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc index 2b36e3d27c2b..374bd8df736e 100644 --- a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc @@ -1,23 +1,23 @@ .set LOCALID_WOMAN, 7 -LilycoveCity_DepartmentStore_5F_MapScripts:: @ 821FF7A +LilycoveCity_DepartmentStore_5F_MapScripts:: map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LilycoveCity_DepartmentStore_5F_OnWarp .byte 0 @ During the abnormal weather from Kyogre/Groudon awakening the dept store rooftop is inaccessible @ Likely done to avoid dealing with showing the weather. Technically the rooftop is indoors -LilycoveCity_DepartmentStore_5F_OnWarp: @ 821FF80 +LilycoveCity_DepartmentStore_5F_OnWarp: map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 1, LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 2, LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 3, LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs .2byte 0 -LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs:: @ 821FF9A +LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs:: setobjectxy LOCALID_WOMAN, 16, 2 turnobject LOCALID_WOMAN, DIR_NORTH end -LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarLeft:: @ 821FFA6 +LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarLeft:: lock faceplayer message gText_HowMayIServeYou @@ -28,7 +28,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarLeft:: @ 821FFA6 end .align 2 -LilycoveCity_DepartmentStore_5F_Pokemart_Dolls: @ 821FFC0 +LilycoveCity_DepartmentStore_5F_Pokemart_Dolls: .2byte DECOR_PICHU_DOLL .2byte DECOR_PIKACHU_DOLL .2byte DECOR_MARILL_DOLL @@ -45,7 +45,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Dolls: @ 821FFC0 release end -LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidLeft:: @ 821FFDC +LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidLeft:: lock faceplayer message gText_HowMayIServeYou @@ -56,7 +56,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidLeft:: @ 821FFDC end .align 2 -LilycoveCity_DepartmentStore_5F_Pokemart_Cushions: @ 821FFF4 +LilycoveCity_DepartmentStore_5F_Pokemart_Cushions: .2byte DECOR_PIKA_CUSHION .2byte DECOR_ROUND_CUSHION .2byte DECOR_ZIGZAG_CUSHION @@ -70,7 +70,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Cushions: @ 821FFF4 release end -LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidRight:: @ 822000A +LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidRight:: lock faceplayer message gText_HowMayIServeYou @@ -81,7 +81,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidRight:: @ 822000A end .align 2 -LilycoveCity_DepartmentStore_5F_Pokemart_Posters: @ 8220024 +LilycoveCity_DepartmentStore_5F_Pokemart_Posters: .2byte DECOR_BALL_POSTER .2byte DECOR_GREEN_POSTER .2byte DECOR_RED_POSTER @@ -95,7 +95,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Posters: @ 8220024 release end -LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarRight:: @ 822003A +LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarRight:: lock faceplayer message gText_HowMayIServeYou @@ -106,7 +106,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarRight:: @ 822003A end .align 2 -LilycoveCity_DepartmentStore_5F_Pokemart_Mats: @ 8220054 +LilycoveCity_DepartmentStore_5F_Pokemart_Mats: .2byte DECOR_SURF_MAT .2byte DECOR_THUNDER_MAT .2byte DECOR_FIRE_BLAST_MAT @@ -121,11 +121,11 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Mats: @ 8220054 release end -LilycoveCity_DepartmentStore_5F_EventScript_PokefanF:: @ 822006C +LilycoveCity_DepartmentStore_5F_EventScript_PokefanF:: msgbox LilycoveCity_DepartmentStore_5F_Text_PlaceFullOfCuteDolls, MSGBOX_NPC end -LilycoveCity_DepartmentStore_5F_EventScript_Woman:: @ 8220075 +LilycoveCity_DepartmentStore_5F_EventScript_Woman:: lockall applymovement LOCALID_WOMAN, Common_Movement_FacePlayer waitmovement 0 @@ -136,13 +136,13 @@ LilycoveCity_DepartmentStore_5F_EventScript_Woman:: @ 8220075 goto LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather end -LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal:: @ 822009C +LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal:: msgbox LilycoveCity_DepartmentStore_5F_Text_SellManyCuteMatsHere, MSGBOX_DEFAULT closemessage releaseall end -LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather:: @ 82200A7 +LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather:: msgbox LilycoveCity_DepartmentStore_5F_Text_ClosedRooftopForWeather, MSGBOX_DEFAULT closemessage applymovement LOCALID_WOMAN, Common_Movement_WalkInPlaceFastestUp @@ -150,24 +150,24 @@ LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather:: @ 82200A7 releaseall end -LilycoveCity_DepartmentStore_5F_EventScript_LittleGirl:: @ 82200BC +LilycoveCity_DepartmentStore_5F_EventScript_LittleGirl:: msgbox LilycoveCity_DepartmentStore_5F_Text_GettingDollInsteadOfPokemon, MSGBOX_NPC end -LilycoveCity_DepartmentStore_5F_Text_PlaceFullOfCuteDolls: @ 82200C5 +LilycoveCity_DepartmentStore_5F_Text_PlaceFullOfCuteDolls: .string "This place is full of cute DOLLS.\p" .string "I should buy some for me, instead of\n" .string "just for my children.$" -LilycoveCity_DepartmentStore_5F_Text_GettingDollInsteadOfPokemon: @ 8220122 +LilycoveCity_DepartmentStore_5F_Text_GettingDollInsteadOfPokemon: .string "I'm not big enough to raise POKéMON,\n" .string "so I'm getting a cute DOLL instead.$" -LilycoveCity_DepartmentStore_5F_Text_SellManyCuteMatsHere: @ 822016B +LilycoveCity_DepartmentStore_5F_Text_SellManyCuteMatsHere: .string "They sell many cute MATS here.\p" .string "I wonder which one I should get?\n" .string "Maybe I'll buy them all…$" -LilycoveCity_DepartmentStore_5F_Text_ClosedRooftopForWeather: @ 82201C4 +LilycoveCity_DepartmentStore_5F_Text_ClosedRooftopForWeather: .string "I think they closed the rooftop\n" .string "because the weather is wild today.$" diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index 1d9ae6a01ffd..8f7f7d15cae4 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -3,15 +3,15 @@ .set LOCALID_FERRY_SAILOR, 4 .set LOCALID_BRINEY, 5 -LilycoveCity_Harbor_MapScripts:: @ 821E000 +LilycoveCity_Harbor_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_Harbor_OnTransition .byte 0 -LilycoveCity_Harbor_OnTransition: @ 821E006 +LilycoveCity_Harbor_OnTransition: setescapewarp MAP_LILYCOVE_CITY, 255, 12, 33 end -LilycoveCity_Harbor_EventScript_FerryAttendant:: @ 821E00F +LilycoveCity_Harbor_EventScript_FerryAttendant:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, LilycoveCity_Harbor_EventScript_FerryUnavailable @@ -37,7 +37,7 @@ LilycoveCity_Harbor_EventScript_FerryAttendant:: @ 821E00F end @ First goto_if_eq is unnecessary; identical scripts -LilycoveCity_Harbor_EventScript_NoFirstTimeEventTickets:: @ 821E080 +LilycoveCity_Harbor_EventScript_NoFirstTimeEventTickets:: compare VAR_TEMP_A, 0 goto_if_eq LilycoveCity_Harbor_EventScript_NoEventTickets msgbox LilycoveCity_Harbor_Text_MayISeeYourTicket, MSGBOX_DEFAULT @@ -46,7 +46,7 @@ LilycoveCity_Harbor_EventScript_NoFirstTimeEventTickets:: @ 821E080 goto LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect end -LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect:: @ 821E09F +LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect:: setvar VAR_0x8004, 0 special ScriptMenu_CreateLilycoveSSTidalMultichoice waitstate @@ -62,35 +62,35 @@ LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect:: @ 821E09F case MULTI_B_PRESSED, LilycoveCity_Harbor_EventScript_ExitSailSelect end -LilycoveCity_Harbor_EventScript_GoToSouthernIsland:: @ 821E109 +LilycoveCity_Harbor_EventScript_GoToSouthernIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_SOUTHERN_ISLAND_EXTERIOR, 255, 13, 22 waitstate release end -LilycoveCity_Harbor_EventScript_GoToNavelRock:: @ 821E119 +LilycoveCity_Harbor_EventScript_GoToNavelRock:: call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_NAVEL_ROCK_HARBOR, 255, 8, 4 waitstate release end -LilycoveCity_Harbor_EventScript_GoToBirthIsland:: @ 821E129 +LilycoveCity_Harbor_EventScript_GoToBirthIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_BIRTH_ISLAND_HARBOR, 255, 8, 4 waitstate release end -LilycoveCity_Harbor_EventScript_GoToFarawayIsland:: @ 821E139 +LilycoveCity_Harbor_EventScript_GoToFarawayIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_FARAWAY_ISLAND_ENTRANCE, 255, 13, 38 waitstate release end -LilycoveCity_Harbor_EventScript_GoToSlateport:: @ 821E149 +LilycoveCity_Harbor_EventScript_GoToSlateport:: msgbox LilycoveCity_Harbor_Text_SlateportItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind @@ -101,7 +101,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateport:: @ 821E149 release end -LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: @ 821E171 +LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: msgbox LilycoveCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind @@ -111,7 +111,7 @@ LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: @ 821E171 release end -LilycoveCity_Harbor_EventScript_GetEonTicketState:: @ 821E194 +LilycoveCity_Harbor_EventScript_GetEonTicketState:: setvar VAR_TEMP_E, 0 goto_if_unset FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, Common_EventScript_NopReturn checkitem ITEM_EON_TICKET, 1 @@ -122,7 +122,7 @@ LilycoveCity_Harbor_EventScript_GetEonTicketState:: @ 821E194 setvar VAR_TEMP_E, 2 return -LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: @ 821E1C6 +LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: setvar VAR_TEMP_D, 0 goto_if_unset FLAG_ENABLE_SHIP_BIRTH_ISLAND, Common_EventScript_NopReturn checkitem ITEM_AURORA_TICKET, 1 @@ -133,7 +133,7 @@ LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: @ 821E1C6 setvar VAR_TEMP_D, 2 return -LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: @ 821E1F8 +LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: setvar VAR_TEMP_C, 0 goto_if_unset FLAG_ENABLE_SHIP_FARAWAY_ISLAND, Common_EventScript_NopReturn checkitem ITEM_OLD_SEA_MAP, 1 @@ -144,7 +144,7 @@ LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: @ 821E1F8 setvar VAR_TEMP_C, 2 return -LilycoveCity_Harbor_EventScript_GetMysticTicketState:: @ 821E22A +LilycoveCity_Harbor_EventScript_GetMysticTicketState:: setvar VAR_TEMP_9, 0 goto_if_unset FLAG_ENABLE_SHIP_NAVEL_ROCK, Common_EventScript_NopReturn checkitem ITEM_MYSTIC_TICKET, 1 @@ -155,7 +155,7 @@ LilycoveCity_Harbor_EventScript_GetMysticTicketState:: @ 821E22A setvar VAR_TEMP_9, 2 return -LilycoveCity_Harbor_EventScript_GetFirstTimeShowingTicket:: @ 821E25C +LilycoveCity_Harbor_EventScript_GetFirstTimeShowingTicket:: setvar VAR_TEMP_B, 0 compare VAR_TEMP_E, 2 call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket @@ -167,23 +167,23 @@ LilycoveCity_Harbor_EventScript_GetFirstTimeShowingTicket:: @ 821E25C call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket return -LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket:: @ 821E28E +LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket:: addvar VAR_TEMP_B, 1 return -LilycoveCity_Harbor_EventScript_SetFirstTimeShowingAuroraTicket:: @ 821E294 +LilycoveCity_Harbor_EventScript_SetFirstTimeShowingAuroraTicket:: addvar VAR_TEMP_B, 2 return -LilycoveCity_Harbor_EventScript_SetFirstTimeShowingOldSeaMap:: @ 821E29A +LilycoveCity_Harbor_EventScript_SetFirstTimeShowingOldSeaMap:: addvar VAR_TEMP_B, 4 return -LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket:: @ 821E2A0 +LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket:: addvar VAR_TEMP_B, 8 return -LilycoveCity_Harbor_EventScript_GetHasTicketsState:: @ 821E2A6 +LilycoveCity_Harbor_EventScript_GetHasTicketsState:: setvar VAR_TEMP_A, 0 compare VAR_TEMP_E, 1 call_if_eq LilycoveCity_Harbor_EventScript_SetHasEonTicket @@ -195,23 +195,23 @@ LilycoveCity_Harbor_EventScript_GetHasTicketsState:: @ 821E2A6 call_if_eq LilycoveCity_Harbor_EventScript_SetHasMysticTicket return -LilycoveCity_Harbor_EventScript_SetHasEonTicket:: @ 821E2D8 +LilycoveCity_Harbor_EventScript_SetHasEonTicket:: addvar VAR_TEMP_A, 1 return -LilycoveCity_Harbor_EventScript_SetHasAuroraTicket:: @ 821E2DE +LilycoveCity_Harbor_EventScript_SetHasAuroraTicket:: addvar VAR_TEMP_A, 2 return -LilycoveCity_Harbor_EventScript_SetHasOldSeaMap:: @ 821E2E4 +LilycoveCity_Harbor_EventScript_SetHasOldSeaMap:: addvar VAR_TEMP_A, 4 return -LilycoveCity_Harbor_EventScript_SetHasMysticTicket:: @ 821E2EA +LilycoveCity_Harbor_EventScript_SetHasMysticTicket:: addvar VAR_TEMP_A, 8 return -LilycoveCity_Harbor_EventScript_EonTicketFirstTime:: @ 821E2F0 +LilycoveCity_Harbor_EventScript_EonTicketFirstTime:: setflag FLAG_SHOWN_EON_TICKET msgbox EventTicket_Text_ThatPass, MSGBOX_DEFAULT closemessage @@ -220,7 +220,7 @@ LilycoveCity_Harbor_EventScript_EonTicketFirstTime:: @ 821E2F0 goto LilycoveCity_Harbor_EventScript_GoToSouthernIslandFirstTime end -LilycoveCity_Harbor_EventScript_GoToSouthernIslandFirstTime:: @ 821E30F +LilycoveCity_Harbor_EventScript_GoToSouthernIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor warp MAP_SOUTHERN_ISLAND_EXTERIOR, 255, 13, 22 @@ -228,7 +228,7 @@ LilycoveCity_Harbor_EventScript_GoToSouthernIslandFirstTime:: @ 821E30F release end -LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime:: @ 821E320 +LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime:: setflag FLAG_SHOWN_AURORA_TICKET msgbox EventTicket_Text_ThatPass, MSGBOX_DEFAULT closemessage @@ -237,7 +237,7 @@ LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime:: @ 821E320 goto LilycoveCity_Harbor_EventScript_GoToBirthIslandFirstTime end -LilycoveCity_Harbor_EventScript_GoToBirthIslandFirstTime:: @ 821E33F +LilycoveCity_Harbor_EventScript_GoToBirthIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor warp MAP_BIRTH_ISLAND_HARBOR, 255, 8, 4 @@ -245,7 +245,7 @@ LilycoveCity_Harbor_EventScript_GoToBirthIslandFirstTime:: @ 821E33F release end -LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: @ 821E350 +LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: setflag FLAG_SHOWN_OLD_SEA_MAP msgbox EventTicket_Text_ShowOldSeaMap, MSGBOX_DEFAULT closemessage @@ -286,7 +286,7 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: @ 821E350 release end -LilycoveCity_Harbor_EventScript_GoToFarawayIslandFirstTime:: @ 821E40C +LilycoveCity_Harbor_EventScript_GoToFarawayIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor warp MAP_FARAWAY_ISLAND_ENTRANCE, 255, 13, 38 @@ -294,7 +294,7 @@ LilycoveCity_Harbor_EventScript_GoToFarawayIslandFirstTime:: @ 821E40C release end -LilycoveCity_Harbor_EventScript_MysticTicketFirstTime:: @ 821E41D +LilycoveCity_Harbor_EventScript_MysticTicketFirstTime:: setflag FLAG_SHOWN_MYSTIC_TICKET msgbox EventTicket_Text_ThatPass, MSGBOX_DEFAULT closemessage @@ -303,7 +303,7 @@ LilycoveCity_Harbor_EventScript_MysticTicketFirstTime:: @ 821E41D goto LilycoveCity_Harbor_EventScript_GoToNavelRockFirstTime end -LilycoveCity_Harbor_EventScript_GoToNavelRockFirstTime:: @ 821E43C +LilycoveCity_Harbor_EventScript_GoToNavelRockFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor warp MAP_NAVEL_ROCK_HARBOR, 255, 8, 4 @@ -311,7 +311,7 @@ LilycoveCity_Harbor_EventScript_GoToNavelRockFirstTime:: @ 821E43C release end -LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime:: @ 821E44D +LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime:: msgbox EventTicket_Text_ThatPass, MSGBOX_DEFAULT closemessage call LilycoveCity_Harbor_EventScript_GetEventTicketSailor @@ -331,7 +331,7 @@ LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime:: @ 821E44D release end -LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect:: @ 821E4B6 +LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT closemessage applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFastestUp @@ -347,7 +347,7 @@ LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect:: @ 821E4B6 release end -LilycoveCity_Harbor_EventScript_GetEventTicketSailor:: @ 821E4EE +LilycoveCity_Harbor_EventScript_GetEventTicketSailor:: applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp waitmovement 0 delay 30 @@ -359,7 +359,7 @@ LilycoveCity_Harbor_EventScript_GetEventTicketSailor:: @ 821E4EE waitmovement 0 return -LilycoveCity_Harbor_EventScript_BoardFerryWithSailor:: @ 821E514 +LilycoveCity_Harbor_EventScript_BoardFerryWithSailor:: applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFastestUp waitmovement 0 delay 30 @@ -374,12 +374,12 @@ LilycoveCity_Harbor_EventScript_BoardFerryWithSailor:: @ 821E514 call Common_EventScript_FerryDepart return -LilycoveCity_Harbor_EventScript_FerryUnavailable:: @ 821E54D +LilycoveCity_Harbor_EventScript_FerryUnavailable:: msgbox LilycoveCity_Harbor_Text_FerryUnavailable, MSGBOX_DEFAULT release end -LilycoveCity_Harbor_EventScript_NoEventTickets:: @ 821E557 +LilycoveCity_Harbor_EventScript_NoEventTickets:: msgbox LilycoveCity_Harbor_Text_MayISeeYourTicket, MSGBOX_DEFAULT message LilycoveCity_Harbor_Text_FlashTicketWhereTo waitmessage @@ -387,13 +387,13 @@ LilycoveCity_Harbor_EventScript_NoEventTickets:: @ 821E557 end @ Unused -LilycoveCity_Harbor_EventScript_NoTicket:: @ 821E56B +LilycoveCity_Harbor_EventScript_NoTicket:: msgbox LilycoveCity_Harbor_Text_NoTicket, MSGBOX_DEFAULT release end @ Unused -LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: @ 821E575 +LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: msgbox LilycoveCity_Harbor_Text_SlateportItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind @@ -405,7 +405,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: @ 821E575 end @ Unused -LilycoveCity_Harbor_EventScript_GoToBattleFrontierUnused:: @ 821E59D +LilycoveCity_Harbor_EventScript_GoToBattleFrontierUnused:: msgbox LilycoveCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind @@ -415,13 +415,13 @@ LilycoveCity_Harbor_EventScript_GoToBattleFrontierUnused:: @ 821E59D release end -LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind:: @ 821E5C0 +LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind:: message LilycoveCity_Harbor_Text_WhereWouldYouLikeToGo waitmessage goto LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect end -LilycoveCity_Harbor_EventScript_BoardFerry:: @ 821E5CC +LilycoveCity_Harbor_EventScript_BoardFerry:: msgbox LilycoveCity_Harbor_Text_PleaseBoard, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp @@ -438,35 +438,35 @@ LilycoveCity_Harbor_EventScript_BoardFerry:: @ 821E5CC call Common_EventScript_FerryDepart return -LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast:: @ 821E610 +LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast:: applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryEast waitmovement 0 return -LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth:: @ 821E61B +LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth:: applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth waitmovement 0 return -LilycoveCity_Harbor_EventScript_ExitSailSelect:: @ 821E626 +LilycoveCity_Harbor_EventScript_ExitSailSelect:: msgbox LilycoveCity_Harbor_Text_SailAnotherTime, MSGBOX_DEFAULT release end -LilycoveCity_Harbor_Movement_PlayerBoardFerryEast: @ 821E630 +LilycoveCity_Harbor_Movement_PlayerBoardFerryEast: walk_right walk_in_place_fastest_up step_end -LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth: @ 821E633 +LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth: walk_up step_end -LilycoveCity_Harbor_Movement_UnusedBoardFerry: @ 821E635 +LilycoveCity_Harbor_Movement_UnusedBoardFerry: walk_up step_end -LilycoveCity_Harbor_EventScript_Sailor:: @ 821E637 +LilycoveCity_Harbor_EventScript_Sailor:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_Harbor_EventScript_SailorFerryAvailable @@ -474,82 +474,82 @@ LilycoveCity_Harbor_EventScript_Sailor:: @ 821E637 release end -LilycoveCity_Harbor_EventScript_SailorFerryAvailable:: @ 821E64C +LilycoveCity_Harbor_EventScript_SailorFerryAvailable:: msgbox LilycoveCity_Harbor_Text_SailorFerryAvailable, MSGBOX_DEFAULT release end -LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayNorth:: @ 821E656 +LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayNorth:: applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayNorth waitmovement 0 return -LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast:: @ 821E661 +LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast:: applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayEast waitmovement 0 return -LilycoveCity_Harbor_Movement_SailorOutOfWayNorth: @ 821E66C +LilycoveCity_Harbor_Movement_SailorOutOfWayNorth: walk_in_place_fastest_right lock_facing_direction walk_left unlock_facing_direction step_end -LilycoveCity_Harbor_Movement_SailorOutOfWayEast: @ 821E671 +LilycoveCity_Harbor_Movement_SailorOutOfWayEast: lock_facing_direction walk_down unlock_facing_direction step_end -LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth:: @ 821E675 +LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth:: applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast:: @ 821E680 +LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast:: applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth:: @ 821E68B +LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth:: applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast:: @ 821E696 +LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast:: applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorNorth:: @ 821E6A1 +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 waitmovement 0 return -LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast:: @ 821E6BA +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 waitmovement 0 return -LilycoveCity_Harbor_Movement_BrineyBoardFerry: @ 821E6D3 +LilycoveCity_Harbor_Movement_BrineyBoardFerry: walk_in_place_fastest_up delay_8 set_invisible step_end -LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyNorth: @ 821E6D7 +LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyNorth: delay_16 walk_up delay_16 set_invisible step_end -LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth: @ 821E6DC +LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth: delay_16 delay_16 delay_16 @@ -559,7 +559,7 @@ LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth: @ 821E6DC set_invisible step_end -LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast: @ 821E6E4 +LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast: delay_16 walk_right walk_in_place_fastest_up @@ -567,7 +567,7 @@ LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast: @ 821E6E4 set_invisible step_end -LilycoveCity_Harbor_Movement_SailorBoardWithBrineyEast: @ 821E6EA +LilycoveCity_Harbor_Movement_SailorBoardWithBrineyEast: delay_16 delay_16 delay_16 @@ -576,50 +576,50 @@ LilycoveCity_Harbor_Movement_SailorBoardWithBrineyEast: @ 821E6EA set_invisible step_end -LilycoveCity_Harbor_Text_FerryUnavailable: @ 821E6F1 +LilycoveCity_Harbor_Text_FerryUnavailable: .string "I beg your pardon?\n" .string "You're looking for a ship?\p" .string "I'm sorry, the ferry service isn't\n" .string "available at present…$" -LilycoveCity_Harbor_Text_MayISeeYourTicket: @ 821E758 +LilycoveCity_Harbor_Text_MayISeeYourTicket: .string "Hello, are you here for the ferry?\n" .string "May I see your TICKET?$" -LilycoveCity_Harbor_Text_NoTicket: @ 821E792 +LilycoveCity_Harbor_Text_NoTicket: .string "{PLAYER} doesn't have the TICKET…\p" .string "I'm terribly sorry.\p" .string "You must have a TICKET to board\n" .string "the ferry.$" -LilycoveCity_Harbor_Text_FlashTicketWhereTo: @ 821E7ED +LilycoveCity_Harbor_Text_FlashTicketWhereTo: .string "{PLAYER} flashed the TICKET.\p" .string "Perfect! That's all you need!\p" .string "And where would you like to go?$" -LilycoveCity_Harbor_Text_SailAnotherTime: @ 821E842 +LilycoveCity_Harbor_Text_SailAnotherTime: .string "Please sail with us another time!$" -LilycoveCity_Harbor_Text_SlateportItIs: @ 821E864 +LilycoveCity_Harbor_Text_SlateportItIs: .string "SLATEPORT CITY it is, then!$" -LilycoveCity_Harbor_Text_BattleFrontierItIs: @ 821E880 +LilycoveCity_Harbor_Text_BattleFrontierItIs: .string "BATTLE FRONTIER it is, then!$" -LilycoveCity_Harbor_Text_PleaseBoard: @ 821E89D +LilycoveCity_Harbor_Text_PleaseBoard: .string "Please board the ferry and wait for\n" .string "departure.$" -LilycoveCity_Harbor_Text_WhereWouldYouLikeToGo: @ 821E8CC +LilycoveCity_Harbor_Text_WhereWouldYouLikeToGo: .string "Then, where would you like to go?$" -LilycoveCity_Harbor_Text_SailorFerryUnavailable: @ 821E8EE +LilycoveCity_Harbor_Text_SailorFerryUnavailable: .string "Until they finish making the ferry,\n" .string "we sailors have nothing to do…\p" .string "I wish they'd get a move on, the folks\n" .string "at the SHIPYARD in SLATEPORT.$" -LilycoveCity_Harbor_Text_SailorFerryAvailable: @ 821E976 +LilycoveCity_Harbor_Text_SailorFerryAvailable: .string "The ferry S.S. TIDAL is finally in\n" .string "operation.\p" .string "The folks at the SHIPYARD in SLATEPORT\n" diff --git a/data/maps/LilycoveCity_House1/scripts.inc b/data/maps/LilycoveCity_House1/scripts.inc index 207b27a11c9c..34e9e6d90e89 100644 --- a/data/maps/LilycoveCity_House1/scripts.inc +++ b/data/maps/LilycoveCity_House1/scripts.inc @@ -1,11 +1,11 @@ -LilycoveCity_House1_MapScripts:: @ 821ECCD +LilycoveCity_House1_MapScripts:: .byte 0 -LilycoveCity_House1_EventScript_ExpertM:: @ 821ECCE +LilycoveCity_House1_EventScript_ExpertM:: msgbox LilycoveCity_House1_Text_PokemonPartnersNotTools, MSGBOX_NPC end -LilycoveCity_House1_EventScript_Kecleon:: @ 821ECD7 +LilycoveCity_House1_EventScript_Kecleon:: lock faceplayer waitse @@ -15,12 +15,12 @@ LilycoveCity_House1_EventScript_Kecleon:: @ 821ECD7 release end -LilycoveCity_House1_Text_PokemonPartnersNotTools: @ 821ECEA +LilycoveCity_House1_Text_PokemonPartnersNotTools: .string "POKéMON are partners to people.\n" .string "They aren't our tools.\p" .string "Unfortunately, there are some people\n" .string "who fail to understand that…$" -LilycoveCity_House1_Text_Kecleon: @ 821ED63 +LilycoveCity_House1_Text_Kecleon: .string "KECLEON: Ruroro?$" diff --git a/data/maps/LilycoveCity_House2/scripts.inc b/data/maps/LilycoveCity_House2/scripts.inc index 29d741abd4be..c7664c641fcf 100644 --- a/data/maps/LilycoveCity_House2/scripts.inc +++ b/data/maps/LilycoveCity_House2/scripts.inc @@ -1,7 +1,7 @@ -LilycoveCity_House2_MapScripts:: @ 821ED74 +LilycoveCity_House2_MapScripts:: .byte 0 -LilycoveCity_House2_EventScript_FatMan:: @ 821ED75 +LilycoveCity_House2_EventScript_FatMan:: lock faceplayer goto_if_set FLAG_RECEIVED_TM44, LilycoveCity_House2_EventScript_ReceivedRest @@ -14,17 +14,17 @@ LilycoveCity_House2_EventScript_FatMan:: @ 821ED75 release end -LilycoveCity_House2_EventScript_ReceivedRest:: @ 821EDAC +LilycoveCity_House2_EventScript_ReceivedRest:: msgbox LilycoveCity_House2_Text_SleepIsEssential, MSGBOX_DEFAULT release end -LilycoveCity_House2_Text_NotAwakeYetHaveThis: @ 821EDB6 +LilycoveCity_House2_Text_NotAwakeYetHaveThis: .string "Huh? What? What's that?\p" .string "I'm not near awake yet…\n" .string "You can have this…$" -LilycoveCity_House2_Text_SleepIsEssential: @ 821EDF9 +LilycoveCity_House2_Text_SleepIsEssential: .string "Yawn…\p" .string "Sleep is essential for good health…\n" .string "Sleep and regain health…$" diff --git a/data/maps/LilycoveCity_House3/scripts.inc b/data/maps/LilycoveCity_House3/scripts.inc index 8d4a1059ecaa..de76c58b6bbc 100644 --- a/data/maps/LilycoveCity_House3/scripts.inc +++ b/data/maps/LilycoveCity_House3/scripts.inc @@ -1,13 +1,13 @@ -LilycoveCity_House3_MapScripts:: @ 821EE3C +LilycoveCity_House3_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_House3_OnTransition .byte 0 -LilycoveCity_House3_OnTransition: @ 821EE42 +LilycoveCity_House3_OnTransition: random 4 copyvar VAR_TEMP_1, VAR_RESULT end -LilycoveCity_House3_EventScript_PokefanF:: @ 821EE4B +LilycoveCity_House3_EventScript_PokefanF:: lock faceplayer msgbox LilycoveCity_House3_Text_LearnFromMasterOfPokeblocks, MSGBOX_YESNO @@ -20,7 +20,7 @@ LilycoveCity_House3_EventScript_PokefanF:: @ 821EE4B release end -LilycoveCity_House3_EventScript_DeclinePokeblockLearn:: @ 821EE75 +LilycoveCity_House3_EventScript_DeclinePokeblockLearn:: msgbox LilycoveCity_House3_Text_OhAreYouSure, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -28,7 +28,7 @@ LilycoveCity_House3_EventScript_DeclinePokeblockLearn:: @ 821EE75 release end -LilycoveCity_House3_EventScript_Man:: @ 821EE8A +LilycoveCity_House3_EventScript_Man:: lock faceplayer msgbox LilycoveCity_House3_Text_HappyToHaveQuadruplets, MSGBOX_DEFAULT @@ -38,7 +38,7 @@ LilycoveCity_House3_EventScript_Man:: @ 821EE8A release end -LilycoveCity_House3_EventScript_GameBoyKid1:: @ 821EEA1 +LilycoveCity_House3_EventScript_GameBoyKid1:: lock faceplayer switch VAR_TEMP_1 @@ -48,7 +48,7 @@ LilycoveCity_House3_EventScript_GameBoyKid1:: @ 821EEA1 case 3, LilycoveCity_House3_EventScript_WereDoingContest end -LilycoveCity_House3_EventScript_GameBoyKid2:: @ 821EED5 +LilycoveCity_House3_EventScript_GameBoyKid2:: lock faceplayer switch VAR_TEMP_1 @@ -58,7 +58,7 @@ LilycoveCity_House3_EventScript_GameBoyKid2:: @ 821EED5 case 3, LilycoveCity_House3_EventScript_WereDoingContest end -LilycoveCity_House3_EventScript_GameBoyKid3:: @ 821EF09 +LilycoveCity_House3_EventScript_GameBoyKid3:: lock faceplayer switch VAR_TEMP_1 @@ -68,7 +68,7 @@ LilycoveCity_House3_EventScript_GameBoyKid3:: @ 821EF09 case 3, LilycoveCity_House3_EventScript_WereDoingContest end -LilycoveCity_House3_EventScript_GameBoyKid4:: @ 821EF3D +LilycoveCity_House3_EventScript_GameBoyKid4:: lock faceplayer switch VAR_TEMP_1 @@ -78,27 +78,27 @@ LilycoveCity_House3_EventScript_GameBoyKid4:: @ 821EF3D case 3, LilycoveCity_House3_EventScript_WereDoingContest end -LilycoveCity_House3_EventScript_WereDoingMultiBattle:: @ 821EF71 +LilycoveCity_House3_EventScript_WereDoingMultiBattle:: msgbox LilycoveCity_House3_Text_GoingToWinMultiBattles, MSGBOX_DEFAULT release end -LilycoveCity_House3_EventScript_WereMixingRecords:: @ 821EF7B +LilycoveCity_House3_EventScript_WereMixingRecords:: msgbox LilycoveCity_House3_Text_LikeMixingAtRecordCorner, MSGBOX_DEFAULT release end -LilycoveCity_House3_EventScript_WereBlendingBerries:: @ 821EF85 +LilycoveCity_House3_EventScript_WereBlendingBerries:: msgbox LilycoveCity_House3_Text_MakePokeblocksWithBerryBlender, MSGBOX_DEFAULT release end -LilycoveCity_House3_EventScript_WereDoingContest:: @ 821EF8F +LilycoveCity_House3_EventScript_WereDoingContest:: msgbox LilycoveCity_House3_Text_GoingToEnterContest, MSGBOX_DEFAULT release end -LilycoveCity_House3_Text_LearnFromMasterOfPokeblocks: @ 821EF99 +LilycoveCity_House3_Text_LearnFromMasterOfPokeblocks: .string "Oh, my, my! Are you traveling alone?\n" .string "But you're so young! Good for you!\p" .string "I'm sure my kids could learn a thing\n" @@ -109,12 +109,12 @@ LilycoveCity_House3_Text_LearnFromMasterOfPokeblocks: @ 821EF99 .string "Would you like to learn from me,\n" .string "a master of {POKEBLOCK}S?$" -LilycoveCity_House3_Text_OhAreYouSure: @ 821F0A9 +LilycoveCity_House3_Text_OhAreYouSure: .string "Oh? Are you sure?\p" .string "You shouldn't always try to do\n" .string "everything by yourself, dear!$" -LilycoveCity_House3_Text_ExplainPokeblocks: @ 821F0F8 +LilycoveCity_House3_Text_ExplainPokeblocks: .string "Oh, good! You're a smart soul!\n" .string "This is a bit long, so listen up!\p" .string "Are you ready?\p" @@ -143,26 +143,26 @@ LilycoveCity_House3_Text_ExplainPokeblocks: @ 821F0F8 .string "the world would be a happier place.\p" .string "Don't give up, dear!$" -LilycoveCity_House3_Text_HappyToHaveQuadruplets: @ 821F430 +LilycoveCity_House3_Text_HappyToHaveQuadruplets: .string "When my wife gave birth to quadruplets,\n" .string "you bet I was shocked.\p" .string "But, now, seeing them play together,\n" .string "it makes me happy.$" -LilycoveCity_House3_Text_GoingToWinMultiBattles: @ 821F4A7 +LilycoveCity_House3_Text_GoingToWinMultiBattles: .string "We're having MULTI BATTLES, but I know\n" .string "I'm going to win.$" -LilycoveCity_House3_Text_LikeMixingAtRecordCorner: @ 821F4E0 +LilycoveCity_House3_Text_LikeMixingAtRecordCorner: .string "We like mixing stuff at\n" .string "the RECORD CORNER.\p" .string "But what gets mixed up?$" -LilycoveCity_House3_Text_MakePokeblocksWithBerryBlender: @ 821F523 +LilycoveCity_House3_Text_MakePokeblocksWithBerryBlender: .string "We're going to make super {POKEBLOCK}S\n" .string "with a BERRY BLENDER!$" -LilycoveCity_House3_Text_GoingToEnterContest: @ 821F55A +LilycoveCity_House3_Text_GoingToEnterContest: .string "I want to brag about how tough my\n" .string "POKéMON is, so we're going to enter\l" .string "a CONTEST together.$" diff --git a/data/maps/LilycoveCity_House4/scripts.inc b/data/maps/LilycoveCity_House4/scripts.inc index 685a91b7da5e..0160ae763a30 100644 --- a/data/maps/LilycoveCity_House4/scripts.inc +++ b/data/maps/LilycoveCity_House4/scripts.inc @@ -1,20 +1,20 @@ -LilycoveCity_House4_MapScripts:: @ 821F5B4 +LilycoveCity_House4_MapScripts:: .byte 0 -LilycoveCity_House4_EventScript_Man1:: @ 821F5B5 +LilycoveCity_House4_EventScript_Man1:: msgbox LilycoveCity_House4_Text_MysteriesAtBottomOfSea, MSGBOX_NPC end -LilycoveCity_House4_EventScript_Man2:: @ 821F5BE +LilycoveCity_House4_EventScript_Man2:: msgbox LilycoveCity_House4_Text_UnderwaterTrenchMossdeepSootopolis, MSGBOX_NPC end -LilycoveCity_House4_Text_MysteriesAtBottomOfSea: @ 821F5C7 +LilycoveCity_House4_Text_MysteriesAtBottomOfSea: .string "This planet's biggest mysteries are\n" .string "at the bottom of the sea.\p" .string "Somebody said that, but I don't know…$" -LilycoveCity_House4_Text_UnderwaterTrenchMossdeepSootopolis: @ 821F62B +LilycoveCity_House4_Text_UnderwaterTrenchMossdeepSootopolis: .string "There's a deep underwater trench\n" .string "between MOSSDEEP and SOOTOPOLIS.\p" .string "That's what someone told me, anyway.$" diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc index ded9ed53d8ec..e5d855633eb9 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_CURATOR, 2 .set LOCALID_ARTIST_2, 8 -LilycoveCity_LilycoveMuseum_1F_MapScripts:: @ 8218CB8 +LilycoveCity_LilycoveMuseum_1F_MapScripts:: .byte 0 -LilycoveCity_LilycoveMuseum_1F_EventScript_Greeter:: @ 8218CB9 +LilycoveCity_LilycoveMuseum_1F_EventScript_Greeter:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_WelcomeToLilycoveMuseum, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_Curator:: @ 8218CC2 +LilycoveCity_LilycoveMuseum_1F_EventScript_Curator:: lockall applymovement LOCALID_CURATOR, Common_Movement_FacePlayer message LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings @@ -20,11 +20,11 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Curator:: @ 8218CC2 goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet end -LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet:: @ 8218CEC +LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_NotDisturbYouTakeYourTime, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings:: @ 8218CF5 +LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_HaveYouAnInterestInPaintings, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested @@ -32,12 +32,12 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings:: @ 8218CF5 goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings end -LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested:: @ 8218D14 +LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_HonoredYoudVisitInSpiteOfThat, MSGBOX_SIGN releaseall end -LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings:: @ 8218D1E +LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_ExcellentCanYouComeWithMe, MSGBOX_SIGN applymovement LOCALID_CURATOR, LilycoveCity_LilycoveMuseum_1F_Movement_CuratorEnterStairs waitmovement 0 @@ -48,7 +48,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings:: @ 8218D1E case DIR_EAST, LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast end -LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth:: @ 8218D5A +LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth waitmovement 0 @@ -56,7 +56,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth:: @ 8218D5A waitstate end -LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest:: @ 8218D6F +LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest waitmovement 0 @@ -64,7 +64,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest:: @ 8218D6F waitstate end -LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast:: @ 8218D84 +LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast waitmovement 0 @@ -72,86 +72,86 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast:: @ 8218D84 waitstate end -LilycoveCity_LilycoveMuseum_1F_Movement_CuratorEnterStairs: @ 8218D99 +LilycoveCity_LilycoveMuseum_1F_Movement_CuratorEnterStairs: walk_up step_end -LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest: @ 8218D9B +LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest: walk_left walk_up step_end -LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast: @ 8218D9E +LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast: walk_right walk_up step_end -LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth: @ 8218DA1 +LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth: walk_up walk_up step_end -LilycoveCity_LilycoveMuseum_1F_EventScript_OldPainting:: @ 8218DA4 +LilycoveCity_LilycoveMuseum_1F_EventScript_OldPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_VeryOldPainting, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_FantasyPainting:: @ 8218DAD +LilycoveCity_LilycoveMuseum_1F_EventScript_FantasyPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_OddLandscapeFantasticScenery, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_WomanPainting:: @ 8218DB6 +LilycoveCity_LilycoveMuseum_1F_EventScript_WomanPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBeautifulWoman, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_LegendaryPokemonPainting:: @ 8218DBF +LilycoveCity_LilycoveMuseum_1F_EventScript_LegendaryPokemonPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfLegendaryPokemon, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_GrassPokemonPainting:: @ 8218DC8 +LilycoveCity_LilycoveMuseum_1F_EventScript_GrassPokemonPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfGrassPokemon, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_BerryPainting:: @ 8218DD1 +LilycoveCity_LilycoveMuseum_1F_EventScript_BerryPainting:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBerries, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_EventScript_BirdSculpture:: @ 8218DDA +LilycoveCity_LilycoveMuseum_EventScript_BirdSculpture:: msgbox LilycoveCity_LilycoveMuseum_Text_BirdPokemonSculptureReplica, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_PokeBallSculpture:: @ 8218DE3 +LilycoveCity_LilycoveMuseum_1F_EventScript_PokeBallSculpture:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_BigPokeBallCarvedFromStone, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_StoneTablet:: @ 8218DEC +LilycoveCity_LilycoveMuseum_1F_EventScript_StoneTablet:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_StoneTabletWithAncientText, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_SchoolKidM:: @ 8218DF5 +LilycoveCity_LilycoveMuseum_1F_EventScript_SchoolKidM:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_MustntForgetLoveForFineArts, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_EventScript_Artist1:: @ 8218DFE +LilycoveCity_LilycoveMuseum_1F_EventScript_Artist1:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_ThisMuseumIsInspiration, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_EventScript_NinjaBoy:: @ 8218E07 +LilycoveCity_LilycoveMuseum_1F_EventScript_NinjaBoy:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_ThisLadyIsPretty, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_Woman1:: @ 8218E10 +LilycoveCity_LilycoveMuseum_1F_EventScript_Woman1:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_ThisPokemonIsAdorable, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_1F_EventScript_Woman2:: @ 8218E19 +LilycoveCity_LilycoveMuseum_1F_EventScript_Woman2:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_HeardMuseumGotNewPaintings, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_EventScript_PsychicM:: @ 8218E22 +LilycoveCity_LilycoveMuseum_1F_EventScript_PsychicM:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_CuratorHasBeenCheerful, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_EventScript_Artist2:: @ 8218E2B +LilycoveCity_LilycoveMuseum_1F_EventScript_Artist2:: lock faceplayer msgbox LilycoveCity_LilycoveMuseum_1F_Text_AimToSeeGreatPaintings, MSGBOX_DEFAULT @@ -161,17 +161,17 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Artist2:: @ 8218E2B release end -LilycoveCity_LilycoveMuseum_1F_EventScript_FatMan:: @ 8218E42 +LilycoveCity_LilycoveMuseum_1F_EventScript_FatMan:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_MuseumTouristDestination, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_1F_Text_WelcomeToLilycoveMuseum: @ 8218E4B +LilycoveCity_LilycoveMuseum_1F_Text_WelcomeToLilycoveMuseum: .string "Welcome to LILYCOVE MUSEUM.\p" .string "Please take the time to enjoy our\n" .string "collection of fantastic artwork\l" .string "featuring POKéMON.$" -LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings: @ 8218EBC +LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings: .string "I'm the CURATOR of this MUSEUM of\n" .string "fine arts.\p" .string "It's heartening to see someone so\n" @@ -179,116 +179,116 @@ LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings: @ 8218EB .string "Have you viewed our collection of\n" .string "paintings already?$" -LilycoveCity_LilycoveMuseum_1F_Text_NotDisturbYouTakeYourTime: @ 8218F5C +LilycoveCity_LilycoveMuseum_1F_Text_NotDisturbYouTakeYourTime: .string "Ah, then let me not disturb you.\n" .string "Please, do take your time.$" -LilycoveCity_LilycoveMuseum_1F_Text_HaveYouAnInterestInPaintings: @ 8218F98 +LilycoveCity_LilycoveMuseum_1F_Text_HaveYouAnInterestInPaintings: .string "Oh? I do believe that you seem to\n" .string "be a POKéMON TRAINER.\p" .string "Have you an interest in paintings,\n" .string "too?$" -LilycoveCity_LilycoveMuseum_1F_Text_HonoredYoudVisitInSpiteOfThat: @ 8218FF8 +LilycoveCity_LilycoveMuseum_1F_Text_HonoredYoudVisitInSpiteOfThat: .string "I see…\p" .string "I'm honored that you would visit\n" .string "us in spite of that.$" -LilycoveCity_LilycoveMuseum_1F_Text_ExcellentCanYouComeWithMe: @ 8219035 +LilycoveCity_LilycoveMuseum_1F_Text_ExcellentCanYouComeWithMe: .string "Ah, excellent!\n" .string "You do like paintings!\p" .string "Then, may I ask you to come with me?$" -LilycoveCity_LilycoveMuseum_1F_Text_VeryOldPainting: @ 8219080 +LilycoveCity_LilycoveMuseum_1F_Text_VeryOldPainting: .string "It's a very old painting.\n" .string "The paint is peeling here and there.$" -LilycoveCity_LilycoveMuseum_1F_Text_OddLandscapeFantasticScenery: @ 82190BF +LilycoveCity_LilycoveMuseum_1F_Text_OddLandscapeFantasticScenery: .string "It's an odd landscape with bizarre\n" .string "and fantastic scenery.$" -LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBeautifulWoman: @ 82190F9 +LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBeautifulWoman: .string "It's a painting of a beautiful, smiling\n" .string "woman with a POKéMON on her lap.$" -LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfLegendaryPokemon: @ 8219142 +LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfLegendaryPokemon: .string "It's a painting of a legendary POKéMON\n" .string "from long ago.\p" .string "The artist painted this from\n" .string "imagination.$" -LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfGrassPokemon: @ 82191A2 +LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfGrassPokemon: .string "It's a painting of GRASS POKéMON\n" .string "swaying in a breeze.\p" .string "They appear to be enjoying the wind's\n" .string "gentle caress.$" -LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBerries: @ 821920D +LilycoveCity_LilycoveMuseum_1F_Text_PaintingOfBerries: .string "It's a delicious-looking painting\n" .string "of BERRIES.\p" .string "This painting could make you hungry!$" -LilycoveCity_LilycoveMuseum_Text_BirdPokemonSculptureReplica: @ 8219260 +LilycoveCity_LilycoveMuseum_Text_BirdPokemonSculptureReplica: .string "It's a replica of a famous sculpture.\p" .string "It depicts an ancient BIRD POKéMON.$" -LilycoveCity_LilycoveMuseum_1F_Text_BigPokeBallCarvedFromStone: @ 82192AA +LilycoveCity_LilycoveMuseum_1F_Text_BigPokeBallCarvedFromStone: .string "It's a big POKé BALL carved from\n" .string "a black stone.\p" .string "It was apparently used in festivals\n" .string "in the olden days.$" -LilycoveCity_LilycoveMuseum_1F_Text_StoneTabletWithAncientText: @ 8219311 +LilycoveCity_LilycoveMuseum_1F_Text_StoneTabletWithAncientText: .string "It's a huge stone tablet inscribed\n" .string "with POKéMON and dense text in the\l" .string "small characters of an ancient,\l" .string "unreadable language.$" -LilycoveCity_LilycoveMuseum_1F_Text_WorksOfMagnificence: @ 821938C +LilycoveCity_LilycoveMuseum_1F_Text_WorksOfMagnificence: .string "Hmmm…\n" .string "What works of great magnificence…$" -LilycoveCity_LilycoveMuseum_1F_Text_MustntForgetLoveForFineArts: @ 82193B4 +LilycoveCity_LilycoveMuseum_1F_Text_MustntForgetLoveForFineArts: .string "Battling with POKéMON is fun,\n" .string "I'll grant you that.\p" .string "But one mustn't forget our love for\n" .string "the fine arts.$" -LilycoveCity_LilycoveMuseum_1F_Text_ThisMuseumIsInspiration: @ 821941A +LilycoveCity_LilycoveMuseum_1F_Text_ThisMuseumIsInspiration: .string "This ART MUSEUM… Well, you could\n" .string "see many fantastic paintings.\p" .string "And the CURATOR is a wonderful person.\p" .string "Among artists like myself, this MUSEUM\n" .string "is an inspiration.$" -LilycoveCity_LilycoveMuseum_1F_Text_ThisLadyIsPretty: @ 82194BA +LilycoveCity_LilycoveMuseum_1F_Text_ThisLadyIsPretty: .string "This lady is pretty!\n" .string "She's like Mommy!$" -LilycoveCity_LilycoveMuseum_1F_Text_ThisPokemonIsAdorable: @ 82194E1 +LilycoveCity_LilycoveMuseum_1F_Text_ThisPokemonIsAdorable: .string "This POKéMON is adorable!\n" .string "Just like our little boy!$" -LilycoveCity_LilycoveMuseum_1F_Text_HeardMuseumGotNewPaintings: @ 8219515 +LilycoveCity_LilycoveMuseum_1F_Text_HeardMuseumGotNewPaintings: .string "I'd heard that this ART MUSEUM got\n" .string "in some new paintings.\p" .string "So, naturally I hurried over.\p" .string "Are the new paintings up on\n" .string "the second floor?$" -LilycoveCity_LilycoveMuseum_1F_Text_CuratorHasBeenCheerful: @ 821959B +LilycoveCity_LilycoveMuseum_1F_Text_CuratorHasBeenCheerful: .string "Lately, the CURATOR has been\n" .string "unusually cheerful.\p" .string "I bet something good happened for him.\n" .string "Definitely.$" -LilycoveCity_LilycoveMuseum_1F_Text_AimToSeeGreatPaintings: @ 82195FF +LilycoveCity_LilycoveMuseum_1F_Text_AimToSeeGreatPaintings: .string "I aim to see many great paintings\n" .string "here and learn from them.\p" .string "I have this dream of one day having\n" .string "my artwork exhibited here.$" -LilycoveCity_LilycoveMuseum_1F_Text_MuseumTouristDestination: @ 821967A +LilycoveCity_LilycoveMuseum_1F_Text_MuseumTouristDestination: .string "The ART MUSEUM has become a favorite\n" .string "tourist destination.\p" .string "It's great for LILYCOVE…\n" diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index 6f51d1cac728..27b59502cd20 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -1,68 +1,68 @@ .set LOCALID_CURATOR, 1 -LilycoveCity_LilycoveMuseum_2F_MapScripts:: @ 821973A +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 .byte 0 -LilycoveCity_LilycoveMuseum_2F_OnLoad: @ 8219745 +LilycoveCity_LilycoveMuseum_2F_OnLoad: goto_if_set FLAG_COOL_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_SetCoolPainting goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckBeautyPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_CheckBeautyPainting:: @ 8219754 +LilycoveCity_LilycoveMuseum_2F_EventScript_CheckBeautyPainting:: goto_if_set FLAG_BEAUTY_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_SetBeautyPainting goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckCutePainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_CheckCutePainting:: @ 8219763 +LilycoveCity_LilycoveMuseum_2F_EventScript_CheckCutePainting:: goto_if_set FLAG_CUTE_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_SetCutePainting goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckSmartPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_CheckSmartPainting:: @ 8219772 +LilycoveCity_LilycoveMuseum_2F_EventScript_CheckSmartPainting:: goto_if_set FLAG_SMART_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_SetSmartPainting goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting:: @ 8219781 +LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting:: goto_if_set FLAG_TOUGH_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_SetToughPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_SetCoolPainting:: @ 821978B +LilycoveCity_LilycoveMuseum_2F_EventScript_SetCoolPainting:: setmetatile 10, 6, METATILE_LilycoveMuseum_Painting2_Left, 1 setmetatile 11, 6, METATILE_LilycoveMuseum_Painting2_Right, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckBeautyPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_SetBeautyPainting:: @ 82197A3 +LilycoveCity_LilycoveMuseum_2F_EventScript_SetBeautyPainting:: setmetatile 18, 6, METATILE_LilycoveMuseum_Painting1_Left, 1 setmetatile 19, 6, METATILE_LilycoveMuseum_Painting1_Right, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckCutePainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_SetCutePainting:: @ 82197BB +LilycoveCity_LilycoveMuseum_2F_EventScript_SetCutePainting:: setmetatile 14, 10, METATILE_LilycoveMuseum_Painting3_Left, 1 setmetatile 15, 10, METATILE_LilycoveMuseum_Painting3_Right, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckSmartPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_SetSmartPainting:: @ 82197D3 +LilycoveCity_LilycoveMuseum_2F_EventScript_SetSmartPainting:: setmetatile 6, 10, METATILE_LilycoveMuseum_Painting0_Left, 1 setmetatile 7, 10, METATILE_LilycoveMuseum_Painting0_Right, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting end -LilycoveCity_LilycoveMuseum_2F_EventScript_SetToughPainting:: @ 82197EB +LilycoveCity_LilycoveMuseum_2F_EventScript_SetToughPainting:: setmetatile 2, 6, METATILE_LilycoveMuseum_Painting4_Left, 1 setmetatile 3, 6, METATILE_LilycoveMuseum_Painting4_Right, 1 end -LilycoveCity_LilycoveMuseum_2F_OnFrame: @ 82197FE +LilycoveCity_LilycoveMuseum_2F_OnFrame: map_script_2 VAR_LILYCOVE_MUSEUM_2F_STATE, 0, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall .2byte 0 -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall:: @ 8219808 +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall:: lockall applymovement LOCALID_CURATOR, Common_Movement_FacePlayer applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft @@ -82,16 +82,16 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall:: @ 8219808 releaseall end -LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft: @ 8219861 +LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft: walk_in_place_fastest_left step_end -LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall: @ 8219863 +LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall: face_up delay_16 step_end -LilycoveCity_LilycoveMuseum_2F_EventScript_Curator:: @ 8219866 +LilycoveCity_LilycoveMuseum_2F_EventScript_Curator:: lockall goto_if_set FLAG_RECEIVED_GLASS_ORNAMENT, LilycoveCity_LilycoveMuseum_2F_EventScript_ReceivedGlassOrnament specialvar VAR_0x8004, CountPlayerMuseumPaintings @@ -104,11 +104,11 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_Curator:: @ 8219866 msgbox LilycoveCity_LilycoveMuseum_2F_Text_WishToFillExhibit, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_2F_EventScript_AddedPainting:: @ 82198BA +LilycoveCity_LilycoveMuseum_2F_EventScript_AddedPainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ThanksAddedNewPainting, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_2F_EventScript_ThankPlayer:: @ 82198C3 +LilycoveCity_LilycoveMuseum_2F_EventScript_ThankPlayer:: applymovement LOCALID_CURATOR, Common_Movement_FacePlayer waitmovement 0 msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsYouPlayer, MSGBOX_DEFAULT @@ -117,7 +117,7 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_ThankPlayer:: @ 82198C3 goto LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament end -LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament:: @ 82198EA +LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament:: applymovement LOCALID_CURATOR, Common_Movement_FacePlayer msgbox LilycoveCity_LilycoveMuseum_2F_Text_TokenOfGratitude, MSGBOX_DEFAULT givedecoration DECOR_GLASS_ORNAMENT @@ -128,99 +128,99 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament:: @ 82198EA releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_NoRoomForGlassOrnament:: @ 8219911 +LilycoveCity_LilycoveMuseum_2F_EventScript_NoRoomForGlassOrnament:: call Common_EventScript_NoRoomForDecor msgbox LilycoveCity_LilycoveMuseum_2F_Text_KeepThisForYou, MSGBOX_DEFAULT closemessage releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_ReceivedGlassOrnament:: @ 8219921 +LilycoveCity_LilycoveMuseum_2F_EventScript_ReceivedGlassOrnament:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_HonorToHaveYouVisit, MSGBOX_NPC releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_CutePainting:: @ 821992B +LilycoveCity_LilycoveMuseum_2F_EventScript_CutePainting:: lockall goto_if_set FLAG_CUTE_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPinkPictureFrame, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_2F_EventScript_ToughPainting:: @ 821993E +LilycoveCity_LilycoveMuseum_2F_EventScript_ToughPainting:: lockall goto_if_set FLAG_TOUGH_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsYellowPictureFrame, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_2F_EventScript_CoolPainting:: @ 8219951 +LilycoveCity_LilycoveMuseum_2F_EventScript_CoolPainting:: lockall goto_if_set FLAG_COOL_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsRedPictureFrame, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_2F_EventScript_BeautyPainting:: @ 8219964 +LilycoveCity_LilycoveMuseum_2F_EventScript_BeautyPainting:: lockall goto_if_set FLAG_BEAUTY_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsBluePictureFrame, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_2F_EventScript_SmartPainting:: @ 8219977 +LilycoveCity_LilycoveMuseum_2F_EventScript_SmartPainting:: lockall goto_if_set FLAG_SMART_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsGreenPictureFrame, MSGBOX_SIGN end -LilycoveCity_LilycoveMuseum_2F_EventScript_Girl:: @ 821998A +LilycoveCity_LilycoveMuseum_2F_EventScript_Girl:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsSurprisedMe, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_2F_EventScript_ExpertM:: @ 8219993 +LilycoveCity_LilycoveMuseum_2F_EventScript_ExpertM:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsRatherAmusing, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: @ 821999C +LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ThesePaintingsOfYourPokemon, MSGBOX_NPC end -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5 +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_MUSEUM_COOL releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3 +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_MUSEUM_BEAUTY releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1 +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_MUSEUM_CUTE releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_MUSEUM_SMART releaseall end -LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD +LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_MUSEUM_TOUGH releaseall end -LilycoveCity_LilycoveMuseum_2F_Text_ThisIsExhibitHall: @ 82199EB +LilycoveCity_LilycoveMuseum_2F_Text_ThisIsExhibitHall: .string "This is our special exhibit hall.$" -LilycoveCity_LilycoveMuseum_2F_Text_ExplainExhibitHall: @ 8219A0D +LilycoveCity_LilycoveMuseum_2F_Text_ExplainExhibitHall: .string "As you can plainly see, there is not\n" .string "a single painting on exhibit.\p" .string "Here, I don't wish to exhibit works of\n" @@ -236,7 +236,7 @@ LilycoveCity_LilycoveMuseum_2F_Text_ExplainExhibitHall: @ 8219A0D .string "POKéMON seemingly ready to spring\l" .string "forth into glorious life!$" -LilycoveCity_LilycoveMuseum_2F_Text_PleaseObtainPaintingsForExhibit: @ 8219BC4 +LilycoveCity_LilycoveMuseum_2F_Text_PleaseObtainPaintingsForExhibit: .string "I beg your pardon. I didn't intend\n" .string "to monopolize the conversation.\p" .string "Now, as you are young, and yet\n" @@ -248,23 +248,23 @@ LilycoveCity_LilycoveMuseum_2F_Text_PleaseObtainPaintingsForExhibit: @ 8219BC4 .string "the artist's permission to exhibit\l" .string "it here?$" -LilycoveCity_LilycoveMuseum_2F_Text_WishToFillExhibit: @ 8219CF3 +LilycoveCity_LilycoveMuseum_2F_Text_WishToFillExhibit: .string "I wish to fill this exhibit hall with\n" .string "modern and vibrant paintings of\l" .string "POKéMON.$" -LilycoveCity_LilycoveMuseum_2F_Text_ThanksAddedNewPainting: @ 8219D42 +LilycoveCity_LilycoveMuseum_2F_Text_ThanksAddedNewPainting: .string "Thanks to you, we've added a new\n" .string "painting to our collection!\p" .string "I've heard it depicts your POKéMON.\n" .string "Truly magnificent!\p" .string "Thank you so very, very much!$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsYouPlayer: @ 8219DD4 +LilycoveCity_LilycoveMuseum_2F_Text_ItsYouPlayer: .string "Ah! It's you!\n" .string "{PLAYER}!$" -LilycoveCity_LilycoveMuseum_2F_Text_PaintingsAttractedMoreGuests: @ 8219DE6 +LilycoveCity_LilycoveMuseum_2F_Text_PaintingsAttractedMoreGuests: .string "Isn't this marvelous?\n" .string "This collection of paintings!\p" .string "Each one of them flawless!\n" @@ -274,56 +274,56 @@ LilycoveCity_LilycoveMuseum_2F_Text_PaintingsAttractedMoreGuests: @ 8219DE6 .string "Sincerely, I thank you, {PLAYER}.\n" .string "This is my dream come true!$" -LilycoveCity_LilycoveMuseum_2F_Text_TokenOfGratitude: @ 8219EC5 +LilycoveCity_LilycoveMuseum_2F_Text_TokenOfGratitude: .string "This is merely a token of my gratitude.$" -LilycoveCity_LilycoveMuseum_2F_Text_KeepThisForYou: @ 8219EED +LilycoveCity_LilycoveMuseum_2F_Text_KeepThisForYou: .string "I will keep this for you until we\n" .string "meet again.$" -LilycoveCity_LilycoveMuseum_2F_Text_HonorToHaveYouVisit: @ 8219F1B +LilycoveCity_LilycoveMuseum_2F_Text_HonorToHaveYouVisit: .string "Ah, so good to see you, {PLAYER}!\p" .string "It's an honor to have you visit us\n" .string "on your busy journeys.\p" .string "Please, relax and do enjoy your\n" .string "visit with us.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsPinkPictureFrame: @ 8219FA0 +LilycoveCity_LilycoveMuseum_2F_Text_ItsPinkPictureFrame: .string "It's a picture frame with pink-colored\n" .string "adornments.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsYellowPictureFrame: @ 8219FD3 +LilycoveCity_LilycoveMuseum_2F_Text_ItsYellowPictureFrame: .string "It's a picture frame with\n" .string "yellow-colored adornments.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsBluePictureFrame: @ 821A008 +LilycoveCity_LilycoveMuseum_2F_Text_ItsBluePictureFrame: .string "It's a picture frame with\n" .string "blue-colored adornments.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsRedPictureFrame: @ 821A03B +LilycoveCity_LilycoveMuseum_2F_Text_ItsRedPictureFrame: .string "It's a picture frame with\n" .string "red-colored adornments.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsGreenPictureFrame: @ 821A06D +LilycoveCity_LilycoveMuseum_2F_Text_ItsGreenPictureFrame: .string "It's a picture frame with\n" .string "green-colored adornments.$" -LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon: @ 821A0A1 +LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon: .string "It's a painting of POKéMON.$" -LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsSurprisedMe: @ 821A0BD +LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsSurprisedMe: .string "I've been away awhile, so the new\n" .string "paintings up here surprised me.\p" .string "I wish someone would paint my POKéMON\n" .string "this pretty.$" -LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsRatherAmusing: @ 821A132 +LilycoveCity_LilycoveMuseum_2F_Text_NewPaintingsRatherAmusing: .string "Well… So this is where they show\n" .string "the topical POKéMON paintings.\p" .string "I see, these new paintings are indeed\n" .string "rather amusing.$" -LilycoveCity_LilycoveMuseum_2F_Text_ThesePaintingsOfYourPokemon: @ 821A1A8 +LilycoveCity_LilycoveMuseum_2F_Text_ThesePaintingsOfYourPokemon: .string "Wow, is that right?\n" .string "These paintings are of your POKéMON.\p" .string "Isn't that just the ultimate joy for\n" diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc index 1a27e3b8f130..ff340c9f33f4 100644 --- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc +++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_MOVE_DELETER, 1 -LilycoveCity_MoveDeletersHouse_MapScripts:: @ 821EA0A +LilycoveCity_MoveDeletersHouse_MapScripts:: .byte 0 -LilycoveCity_MoveDeletersHouse_EventScript_MoveDeleter:: @ 821EA0B +LilycoveCity_MoveDeletersHouse_EventScript_MoveDeleter:: lockall applymovement LOCALID_MOVE_DELETER, Common_Movement_FacePlayer waitmovement 0 @@ -14,7 +14,7 @@ LilycoveCity_MoveDeletersHouse_EventScript_MoveDeleter:: @ 821EA0B releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: @ 821EA3B +LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMonShouldForget, MSGBOX_DEFAULT special ChoosePartyMon waitstate @@ -40,7 +40,7 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: @ 821EA3B releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_TryForgetMove:: @ 821EAB0 +LilycoveCity_MoveDeletersHouse_EventScript_TryForgetMove:: special IsLastMonThatKnowsSurf compare VAR_RESULT, TRUE goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_LastMonWithSurf @@ -51,62 +51,62 @@ LilycoveCity_MoveDeletersHouse_EventScript_TryForgetMove:: @ 821EAB0 releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove:: @ 821EACF +LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove:: special BufferMoveDeleterNicknameAndMove msgbox LilycoveCity_MoveDeletersHouse_Text_MonOnlyKnowsOneMove, MSGBOX_DEFAULT releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_EggCantForgetMoves:: @ 821EADC +LilycoveCity_MoveDeletersHouse_EventScript_EggCantForgetMoves:: msgbox LilycoveCity_MoveDeletersHouse_Text_EggCantForgetMoves, MSGBOX_DEFAULT releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_ComeAgain:: @ 821EAE6 +LilycoveCity_MoveDeletersHouse_EventScript_ComeAgain:: msgbox LilycoveCity_MoveDeletersHouse_Text_ComeAgain, MSGBOX_DEFAULT releaseall end -LilycoveCity_MoveDeletersHouse_EventScript_LastMonWithSurf:: @ 821EAF0 +LilycoveCity_MoveDeletersHouse_EventScript_LastMonWithSurf:: special BufferMoveDeleterNicknameAndMove msgbox LilycoveCity_MoveDeletersHouse_Text_CantForgetSurf, MSGBOX_DEFAULT releaseall end -LilycoveCity_MoveDeletersHouse_Text_ICanMakeMonForgetMove: @ 821EAFD +LilycoveCity_MoveDeletersHouse_Text_ICanMakeMonForgetMove: .string "Uh…\n" .string "Oh, yes, I'm the MOVE DELETER.\p" .string "I can make POKéMON forget their moves.\p" .string "Would you like me to do that?$" -LilycoveCity_MoveDeletersHouse_Text_WhichMonShouldForget: @ 821EB65 +LilycoveCity_MoveDeletersHouse_Text_WhichMonShouldForget: .string "Which POKéMON should forget a move?$" -LilycoveCity_MoveDeletersHouse_Text_WhichMoveShouldBeForgotten: @ 821EB89 +LilycoveCity_MoveDeletersHouse_Text_WhichMoveShouldBeForgotten: .string "Which move should be forgotten?$" -LilycoveCity_MoveDeletersHouse_Text_MonOnlyKnowsOneMove: @ 821EBA9 +LilycoveCity_MoveDeletersHouse_Text_MonOnlyKnowsOneMove: .string "{STR_VAR_1} knows only one move\n" .string "so it can't be forgotten…$" -LilycoveCity_MoveDeletersHouse_Text_MonsMoveShouldBeForgotten: @ 821EBDA +LilycoveCity_MoveDeletersHouse_Text_MonsMoveShouldBeForgotten: .string "Hm! {STR_VAR_1}'s {STR_VAR_2}?\n" .string "That move should be forgotten?$" -LilycoveCity_MoveDeletersHouse_Text_MonHasForgottenMove: @ 821EC06 +LilycoveCity_MoveDeletersHouse_Text_MonHasForgottenMove: .string "It worked to perfection!\p" .string "{STR_VAR_1} has forgotten\n" .string "{STR_VAR_2} completely.$" -LilycoveCity_MoveDeletersHouse_Text_ComeAgain: @ 821EC3F +LilycoveCity_MoveDeletersHouse_Text_ComeAgain: .string "Come again if there are moves that\n" .string "need to be forgotten.$" -LilycoveCity_MoveDeletersHouse_Text_EggCantForgetMoves: @ 821EC78 +LilycoveCity_MoveDeletersHouse_Text_EggCantForgetMoves: .string "What?\n" .string "No EGG should know any moves.$" -LilycoveCity_MoveDeletersHouse_Text_CantForgetSurf: @ 821EC9C +LilycoveCity_MoveDeletersHouse_Text_CantForgetSurf: .string "Hm!\p" .string "Your {STR_VAR_1} doesn't seem willing\n" .string "to forget SURF.$" diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc index 829c55646af7..03f2657e714d 100644 --- a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc @@ -1,17 +1,17 @@ .set LOCALID_NURSE, 1 -LilycoveCity_PokemonCenter_1F_MapScripts:: @ 821C5B2 +LilycoveCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -LilycoveCity_PokemonCenter_1F_OnTransition: @ 821C5BD +LilycoveCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_LILYCOVE_CITY goto LilycoveCity_PokemonCenter_1F_EventScript_SetLilycoveLadyGfx end @ SetLilycoveLadyGfx returns TRUE if its the Contest Lady -LilycoveCity_PokemonCenter_1F_EventScript_SetLilycoveLadyGfx:: @ 821C5C6 +LilycoveCity_PokemonCenter_1F_EventScript_SetLilycoveLadyGfx:: special SetLilycoveLadyGfx compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon @@ -19,15 +19,15 @@ LilycoveCity_PokemonCenter_1F_EventScript_SetLilycoveLadyGfx:: @ 821C5C6 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon end -LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon:: @ 821C5E0 +LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon:: setflag FLAG_HIDE_LILYCOVE_POKEMON_CENTER_CONTEST_LADY_MON end -LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon:: @ 821C5E4 +LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon:: clearflag FLAG_HIDE_LILYCOVE_POKEMON_CENTER_CONTEST_LADY_MON end -LilycoveCity_PokemonCenter_1F_EventScript_Nurse:: @ 821C5E8 +LilycoveCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -35,11 +35,11 @@ LilycoveCity_PokemonCenter_1F_EventScript_Nurse:: @ 821C5E8 release end -LilycoveCity_PokemonCenter_1F_EventScript_Boy:: @ 821C5F6 +LilycoveCity_PokemonCenter_1F_EventScript_Boy:: msgbox LilycoveCity_PokemonCenter_1F_Text_HowManyKindsOfPokemon, MSGBOX_NPC end -LilycoveCity_PokemonCenter_1F_EventScript_Maniac:: @ 821C5FF +LilycoveCity_PokemonCenter_1F_EventScript_Maniac:: lock faceplayer goto_if_set FLAG_BADGE07_GET, LilycoveCity_PokemonCenter_1F_EventScript_ManiacBadTeamGone @@ -47,23 +47,23 @@ LilycoveCity_PokemonCenter_1F_EventScript_Maniac:: @ 821C5FF release end -LilycoveCity_PokemonCenter_1F_EventScript_ManiacBadTeamGone:: @ 821C614 +LilycoveCity_PokemonCenter_1F_EventScript_ManiacBadTeamGone:: msgbox LilycoveCity_PokemonCenter_1F_Text_HaventSeenRottenScoundrels, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_Text_HowManyKindsOfPokemon: @ 821C61E +LilycoveCity_PokemonCenter_1F_Text_HowManyKindsOfPokemon: .string "I wonder how many kinds of POKéMON\n" .string "there are in the world.\p" .string "It'd be great to cross seas and\n" .string "trade POKéMON with people far away.$" -LilycoveCity_PokemonCenter_1F_Text_HeardAboutRottenScoundrels: @ 821C69D +LilycoveCity_PokemonCenter_1F_Text_HeardAboutRottenScoundrels: .string "I've been hearing about some rotten\n" .string "scoundrels who steal POKéMON and rip\l" .string "off METEORITES.$" -LilycoveCity_PokemonCenter_1F_Text_HaventSeenRottenScoundrels: @ 821C6F6 +LilycoveCity_PokemonCenter_1F_Text_HaventSeenRottenScoundrels: .string "Those rotten scoundrels who steal\n" .string "POKéMON and rip off METEORITES…\p" .string "I haven't seen them around recently.$" diff --git a/data/maps/LilycoveCity_PokemonCenter_2F/scripts.inc b/data/maps/LilycoveCity_PokemonCenter_2F/scripts.inc index 965580da5439..b5321cbe0ca3 100644 --- a/data/maps/LilycoveCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/LilycoveCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -LilycoveCity_PokemonCenter_2F_MapScripts:: @ 821C75D +LilycoveCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ LilycoveCity_PokemonCenter_2F_MapScripts:: @ 821C75D .byte 0 @ The below 3 are unused and leftover from RS -LilycoveCity_PokemonCenter_2F_EventScript_Colosseum:: @ 821C772 +LilycoveCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -LilycoveCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 821C778 +LilycoveCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -LilycoveCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 821C77E +LilycoveCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc index 86544d3e9259..211073c581be 100644 --- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc +++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc @@ -7,18 +7,18 @@ .set LOCALID_WOMAN, 7 .set LOCALID_EXPERT_F, 8 -LilycoveCity_PokemonTrainerFanClub_MapScripts:: @ 821C785 +LilycoveCity_PokemonTrainerFanClub_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, LilycoveCity_PokemonTrainerFanClub_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_PokemonTrainerFanClub_OnTransition .byte 0 @ See field_specials.c for a breakdown of the Fan Club and its variables -LilycoveCity_PokemonTrainerFanClub_OnFrame: @ 821C790 +LilycoveCity_PokemonTrainerFanClub_OnFrame: map_script_2 VAR_LILYCOVE_FAN_CLUB_STATE, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans .2byte 0 -LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans:: @ 821C79A +LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans:: lockall applymovement LOCALID_LASS, Common_Movement_WalkInPlaceFastestDown waitmovement 0 @@ -39,7 +39,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans:: @ 821C79A releaseall end -LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer: @ 821C7F5 +LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer: delay_8 walk_in_place_fastest_down walk_down @@ -49,7 +49,7 @@ LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer: @ 821C7F5 walk_left step_end -LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer: @ 821C7FD +LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer: walk_fast_left walk_fast_left walk_fast_down @@ -58,12 +58,12 @@ LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer: @ 821C7FD walk_fast_down step_end -LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer: @ 821C804 +LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer: walk_down walk_in_place_fastest_right step_end -LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: @ 821C807 +LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: jump_in_place_right walk_fast_up walk_fast_up @@ -71,7 +71,7 @@ LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: @ 821C807 walk_in_place_fastest_down step_end -LilycoveCity_PokemonTrainerFanClub_OnTransition: @ 821C80D +LilycoveCity_PokemonTrainerFanClub_OnTransition: call LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer compare VAR_LILYCOVE_FAN_CLUB_STATE, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting @@ -79,7 +79,7 @@ LilycoveCity_PokemonTrainerFanClub_OnTransition: @ 821C80D goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions end -LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions:: @ 821C829 +LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions:: special TryLoseFansFromPlayTime call LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow setvar VAR_0x8004, FANCLUB_MEMBER1 @@ -116,7 +116,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions:: @ 821C call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable end -LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer:: @ 821C8DA +LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer:: specialvar VAR_RESULT, ShouldHideFanClubInterviewer compare VAR_RESULT, TRUE goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_HideInterviewer @@ -124,13 +124,13 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer:: @ 821C8DA clearflag FLAG_FAN_CLUB_STRENGTH_SHARED return -LilycoveCity_PokemonTrainerFanClub_EventScript_HideInterviewer:: @ 821C8F1 +LilycoveCity_PokemonTrainerFanClub_EventScript_HideInterviewer:: setflag FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER return @ Set up the fan club TV show, if the player has at least 5 fans in the club @ Rather than counting up, 1 is subtracted from the total for each member not a fan of the players -LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow:: @ 821C8F5 +LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow:: setvar VAR_0x8005, NUM_TRAINER_FAN_CLUB_MEMBERS setvar VAR_0x8004, FANCLUB_MEMBER1 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer @@ -168,47 +168,47 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow:: @ 821C8F5 goto_if_ge LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow return -LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan:: @ 821C9AE +LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan:: subvar VAR_0x8005, 1 return -LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow:: @ 821C9B4 +LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow:: special TryPutTrainerFanClubOnAir return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable:: @ 821C9B8 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable:: setobjectxyperm LOCALID_LASS, 7, 5 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable:: @ 821C9C0 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable:: setobjectxyperm LOCALID_POKEFAN_M, 3, 4 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember3ToFarTable:: @ 821C9C8 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember3ToFarTable:: setobjectxyperm LOCALID_LITTLE_GIRL, 7, 2 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable:: @ 821C9D0 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable:: setobjectxyperm LOCALID_NINJA_BOY, 5, 5 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember5ToFarTable:: @ 821C9D8 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember5ToFarTable:: setobjectxyperm LOCALID_BOY, 5, 2 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember6ToFarTable:: @ 821C9E0 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember6ToFarTable:: setobjectxyperm LOCALID_MAN, 8, 4 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember7ToFarTable:: @ 821C9E8 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember7ToFarTable:: setobjectxyperm LOCALID_WOMAN, 3, 3 return -LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable:: @ 821C9F0 +LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable:: setobjectxyperm LOCALID_EXPERT_F, 8, 3 return -LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting:: @ 821C9F8 +LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting:: call LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow call LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable call LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable @@ -217,7 +217,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanM call LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable end -LilycoveCity_PokemonTrainerFanClub_EventScript_Man:: @ 821CA17 +LilycoveCity_PokemonTrainerFanClub_EventScript_Man:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER6 @@ -234,7 +234,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Man:: @ 821CA17 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan:: @ 821CA56 +LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyFan @@ -242,22 +242,22 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan:: @ 821CA56 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyFan:: @ 821CA70 +LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_OthersDontKnowYoureTheBest, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyNonFan:: @ 821CA7A +LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsBestNoOneWantsToListen, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayerNotChampion:: @ 821CA84 +LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayerNotChampion:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_HearingAboutToughNewTrainer, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_Lass:: @ 821CA8E +LilycoveCity_PokemonTrainerFanClub_EventScript_Lass:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER1 @@ -274,7 +274,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Lass:: @ 821CA8E release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan:: @ 821CACD +LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyFan @@ -282,22 +282,22 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan:: @ 821CACD release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyFan:: @ 821CAE7 +LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_BrawlyNoImYourFan, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyNonFan:: @ 821CAF1 +LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_NobodyUnderstandsBrawly, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayerNotChampion:: @ 821CAFB +LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayerNotChampion:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_MyFavoriteTrainerIsBrawly, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanM:: @ 821CB05 +LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanM:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER2 @@ -314,7 +314,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanM:: @ 821CB05 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan:: @ 821CB44 +LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyFan @@ -322,22 +322,22 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan:: @ 821CB44 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyFan:: @ 821CB5E +LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_YourFatherNeverGaveUpSoKeepOnBattling, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyNonFan:: @ 821CB68 +LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouAndNormanAreDifferent, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayerNotChampion:: @ 821CB72 +LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayerNotChampion:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_WeDiscussStrongestTrainers, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirl:: @ 821CB7C +LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirl:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER3 @@ -354,7 +354,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirl:: @ 821CB7C release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan:: @ 821CBBB +LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyFan @@ -362,22 +362,22 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan:: @ 821CBBB release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyFan:: @ 821CBD5 +LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_AlwaysCheerForYou, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyNonFan:: @ 821CBDF +LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsReallyCoolItsJustMe, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayerNotChampion:: @ 821CBE9 +LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayerNotChampion:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_WishThereWasTrainerLikeThat, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoy:: @ 821CBF3 +LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoy:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER4 @@ -392,7 +392,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoy:: @ 821CBF3 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan:: @ 821CC27 +LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyFan @@ -400,17 +400,17 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan:: @ 821CC27 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyFan:: @ 821CC41 +LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_OnlyOneWhoCheersForYou, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyNonFan:: @ 821CC4B +LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_NeverGoingToStopBeingTrainersFan, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_Boy:: @ 821CC55 +LilycoveCity_PokemonTrainerFanClub_EventScript_Boy:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER5 @@ -425,7 +425,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Boy:: @ 821CC55 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan:: @ 821CC89 +LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyFan @@ -433,17 +433,17 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan:: @ 821CC89 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyFan:: @ 821CCA3 +LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_ImInYourCorner, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyNonFan:: @ 821CCAD +LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_YoureMaybeStrongerThanTrainer, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_Woman:: @ 821CCB7 +LilycoveCity_PokemonTrainerFanClub_EventScript_Woman:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER7 @@ -458,7 +458,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Woman:: @ 821CCB7 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan:: @ 821CCEB +LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyFan @@ -466,17 +466,17 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan:: @ 821CCEB release end -LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyFan:: @ 821CD05 +LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouBattleAttractivelyInToughSituation, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyNonFan:: @ 821CD0F +LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_NoOneCanKnockYouButTrainerStronger, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertF:: @ 821CD19 +LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertF:: lock faceplayer setvar VAR_0x8004, FANCLUB_MEMBER8 @@ -491,7 +491,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertF:: @ 821CD19 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan:: @ 821CD4D +LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyFan @@ -499,17 +499,17 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan:: @ 821CD4D release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyFan:: @ 821CD67 +LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_OnlyIRecognizeYourTrueWorth, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyNonFan:: @ 821CD71 +LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyNonFan:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_YourePowerfulButNotTrueStrength, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_Interviewer:: @ 821CD7B +LilycoveCity_PokemonTrainerFanClub_EventScript_Interviewer:: lock faceplayer goto_if_set FLAG_FAN_CLUB_STRENGTH_SHARED, LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed @@ -518,7 +518,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Interviewer:: @ 821CD7B @ The interviewer doesnt count as an individual fan club member @ Instead they always ask about whoever the Lass would be interested in, if not the player -LilycoveCity_PokemonTrainerFanClub_EventScript_Interview:: @ 821CD90 +LilycoveCity_PokemonTrainerFanClub_EventScript_Interview:: setvar VAR_0x8005, TVSHOW_FAN_CLUB_SPECIAL special InterviewBefore compare VAR_RESULT, TRUE @@ -538,12 +538,12 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Interview:: @ 821CD90 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion end -LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion:: @ 821CDE0 +LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion:: msgbox LilycoveCity_PokemonTrainerFanClub_Text_ThatsWhatYouThink, MSGBOX_DEFAULT goto LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer end -LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion:: @ 821CDEE +LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer, MSGBOX_YESNO @@ -553,7 +553,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion:: @ 821CDEE goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion end -LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion:: @ 821CE15 +LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_WhatsYourOpinionOfTrainer2, MSGBOX_DEFAULT @@ -568,7 +568,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion:: @ 821CE15 goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion end -LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer:: @ 821CE4D +LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName message LilycoveCity_PokemonTrainerFanClub_Text_HowStrongRateTrainer @@ -588,7 +588,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer:: @ 821CE4D goto LilycoveCity_PokemonTrainerFanClub_EventScript_CompleteInterview end -LilycoveCity_PokemonTrainerFanClub_EventScript_CancelRateTrainer:: @ 821CE9F +LilycoveCity_PokemonTrainerFanClub_EventScript_CancelRateTrainer:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer2, MSGBOX_YESNO @@ -598,14 +598,14 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CancelRateTrainer:: @ 821CE9F goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer end -LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer:: @ 821CEC6 +LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouShouldMeetTrainer, MSGBOX_DEFAULT release end -LilycoveCity_PokemonTrainerFanClub_EventScript_CompleteInterview:: @ 821CED8 +LilycoveCity_PokemonTrainerFanClub_EventScript_CompleteInterview:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_ThankYouIllShareThisInfo, MSGBOX_DEFAULT @@ -613,7 +613,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CompleteInterview:: @ 821CED8 release end -LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed:: @ 821CEED +LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_HopeYouCatchTVSpecial, MSGBOX_DEFAULT @@ -621,14 +621,14 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed:: @ 821CEED end @ Shouldnt be reached -LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed2:: @ 821CEFF +LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed2:: end -LilycoveCity_PokemonTrainerFanClub_Text_OhWowItsPlayer: @ 821CF00 +LilycoveCity_PokemonTrainerFanClub_Text_OhWowItsPlayer: .string "Oh, wow!\n" .string "It's {PLAYER}!$" -LilycoveCity_PokemonTrainerFanClub_Text_HeardAboutYouImYourFan: @ 821CF12 +LilycoveCity_PokemonTrainerFanClub_Text_HeardAboutYouImYourFan: .string "I've heard the news!\n" .string "You're really strong, aren't you?\p" .string "We always argue about who is the\n" @@ -644,29 +644,29 @@ LilycoveCity_PokemonTrainerFanClub_Text_HeardAboutYouImYourFan: @ 821CF12 .string "Remember, I'm cheering for you,\n" .string "{PLAYER}!$" -LilycoveCity_PokemonTrainerFanClub_Text_YoureOneWeWantToWin: @ 821D094 +LilycoveCity_PokemonTrainerFanClub_Text_YoureOneWeWantToWin: .string "Yo, {PLAYER}!\n" .string "You're the one we want to win!$" -LilycoveCity_PokemonTrainerFanClub_Text_OthersDontKnowYoureTheBest: @ 821D0BB +LilycoveCity_PokemonTrainerFanClub_Text_OthersDontKnowYoureTheBest: .string "The others, they don't know that\n" .string "you're the best of the best!\p" .string "Isn't that right, {PLAYER}?\n" .string "Show them you've got guts!$" -LilycoveCity_PokemonTrainerFanClub_Text_TrainersPowerIsOutOfTheOrdinary: @ 821D12A +LilycoveCity_PokemonTrainerFanClub_Text_TrainersPowerIsOutOfTheOrdinary: .string "I hate to say this, but the TRAINER\n" .string "everybody's talking about is\l" .string "{STR_VAR_1}, no question about it!\p" .string "That TRAINER's power…\n" .string "It's out of the ordinary.$" -LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsBestNoOneWantsToListen: @ 821D1B5 +LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsBestNoOneWantsToListen: .string "Darn it… I've been telling people\n" .string "that {STR_VAR_1} is the best now…\p" .string "But no one wants to listen…$" -LilycoveCity_PokemonTrainerFanClub_Text_HearingAboutToughNewTrainer: @ 821D20C +LilycoveCity_PokemonTrainerFanClub_Text_HearingAboutToughNewTrainer: .string "I've been hearing things about\n" .string "a tough new TRAINER.\p" .string "This TRAINER's supposed to be beating\n" @@ -674,13 +674,13 @@ LilycoveCity_PokemonTrainerFanClub_Text_HearingAboutToughNewTrainer: @ 821D20C .string "Do you know anything about this\n" .string "new TRAINER?$" -LilycoveCity_PokemonTrainerFanClub_Text_ImPullingForYou: @ 821D2A6 +LilycoveCity_PokemonTrainerFanClub_Text_ImPullingForYou: .string "Oh!\n" .string "{PLAYER}!\p" .string "Go for it!\n" .string "I'm pulling for you!$" -LilycoveCity_PokemonTrainerFanClub_Text_BrawlyNoImYourFan: @ 821D2CE +LilycoveCity_PokemonTrainerFanClub_Text_BrawlyNoImYourFan: .string "Sigh…\n" .string "BRAWLY…\p" .string "Oh, no! Wait!\n" @@ -689,36 +689,36 @@ LilycoveCity_PokemonTrainerFanClub_Text_BrawlyNoImYourFan: @ 821D2CE .string "So make me proud!\n" .string "Go for it!$" -LilycoveCity_PokemonTrainerFanClub_Text_ICantHelpLikingBrawly: @ 821D347 +LilycoveCity_PokemonTrainerFanClub_Text_ICantHelpLikingBrawly: .string "I can't help it, I can only get to\n" .string "like BRAWLY…$" -LilycoveCity_PokemonTrainerFanClub_Text_NobodyUnderstandsBrawly: @ 821D377 +LilycoveCity_PokemonTrainerFanClub_Text_NobodyUnderstandsBrawly: .string "Nobody understands the charm of\n" .string "BRAWLY…\p" .string "I don't care!\p" .string "Even if I'm the only one, I'm going\n" .string "to keep cheering for BRAWLY!$" -LilycoveCity_PokemonTrainerFanClub_Text_MyFavoriteTrainerIsBrawly: @ 821D3EE +LilycoveCity_PokemonTrainerFanClub_Text_MyFavoriteTrainerIsBrawly: .string "Whatever anyone says, my favorite\n" .string "TRAINER is DEWFORD's GYM LEADER\l" .string "BRAWLY!$" -LilycoveCity_PokemonTrainerFanClub_Text_YouveSurpassedYourFather: @ 821D438 +LilycoveCity_PokemonTrainerFanClub_Text_YouveSurpassedYourFather: .string "You've surpassed your own father in\n" .string "every regard!\p" .string "I'm telling you, so there's no question\n" .string "about it at all!$" -LilycoveCity_PokemonTrainerFanClub_Text_YourFatherNeverGaveUpSoKeepOnBattling: @ 821D4A3 +LilycoveCity_PokemonTrainerFanClub_Text_YourFatherNeverGaveUpSoKeepOnBattling: .string "Even when things turned bleak,\n" .string "your father never gave up.\p" .string "This I know to be true.\p" .string "You never give up even if you lose!\n" .string "So keep on battling!$" -LilycoveCity_PokemonTrainerFanClub_Text_LongWayToGoComparedToNorman: @ 821D52E +LilycoveCity_PokemonTrainerFanClub_Text_LongWayToGoComparedToNorman: .string "NORMAN battled with more power,\n" .string "charisma, and showmanship than you.\p" .string "Even though people may say that\n" @@ -726,7 +726,7 @@ LilycoveCity_PokemonTrainerFanClub_Text_LongWayToGoComparedToNorman: @ 821D52E .string "You've still got a long way to go\n" .string "compared to your father.$" -LilycoveCity_PokemonTrainerFanClub_Text_YouAndNormanAreDifferent: @ 821D5DC +LilycoveCity_PokemonTrainerFanClub_Text_YouAndNormanAreDifferent: .string "You're beginning to get the same\n" .string "air of awe NORMAN exudes.\p" .string "But there's something conclusively\n" @@ -734,7 +734,7 @@ LilycoveCity_PokemonTrainerFanClub_Text_YouAndNormanAreDifferent: @ 821D5DC .string "I can't tell you what that is.\n" .string "You'll have to find it yourself.$" -LilycoveCity_PokemonTrainerFanClub_Text_WeDiscussStrongestTrainers: @ 821D69C +LilycoveCity_PokemonTrainerFanClub_Text_WeDiscussStrongestTrainers: .string "Everyone here, we're all huge fans\n" .string "of POKéMON battles.\p" .string "We discuss who we consider to be\n" @@ -742,12 +742,12 @@ LilycoveCity_PokemonTrainerFanClub_Text_WeDiscussStrongestTrainers: @ 821D69C .string "If you were to become famous,\n" .string "we might even become your fans!$" -LilycoveCity_PokemonTrainerFanClub_Text_OhWoweeItsPlayer: @ 821D751 +LilycoveCity_PokemonTrainerFanClub_Text_OhWoweeItsPlayer: .string "Oh, woweee! It's {PLAYER}!\n" .string "For real, too!\p" .string "Please, shake my hand, shake my hand!$" -LilycoveCity_PokemonTrainerFanClub_Text_AlwaysCheerForYou: @ 821D79B +LilycoveCity_PokemonTrainerFanClub_Text_AlwaysCheerForYou: .string "I'll always cheer for you, {PLAYER}!\n" .string "Always, always!\p" .string "I don't want to see you lose ever,\n" @@ -755,60 +755,60 @@ LilycoveCity_PokemonTrainerFanClub_Text_AlwaysCheerForYou: @ 821D79B .string "Because I know you're really,\n" .string "really strong, {PLAYER}!$" -LilycoveCity_PokemonTrainerFanClub_Text_EveryoneThinksTrainerIsCool: @ 821D822 +LilycoveCity_PokemonTrainerFanClub_Text_EveryoneThinksTrainerIsCool: .string "{STR_VAR_1} is really cool…\p" .string "Everyone thinks so, right, right?$" -LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsReallyCoolItsJustMe: @ 821D857 +LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsReallyCoolItsJustMe: .string "{STR_VAR_1} really is cool, don't\n" .string "you think so?\p" .string "Even if it's just me, I'm going to keep\n" .string "cheering my favorite TRAINER.$" -LilycoveCity_PokemonTrainerFanClub_Text_WishThereWasTrainerLikeThat: @ 821D8C4 +LilycoveCity_PokemonTrainerFanClub_Text_WishThereWasTrainerLikeThat: .string "My favorite TRAINER is…\p" .string "Cool…\p" .string "Strong…\p" .string "And really nice…\p" .string "I wish there was a TRAINER like that…$" -LilycoveCity_PokemonTrainerFanClub_Text_WantToBeStrongLikeYou: @ 821D921 +LilycoveCity_PokemonTrainerFanClub_Text_WantToBeStrongLikeYou: .string "Whoa! It's {PLAYER}!\n" .string "Wicked!\p" .string "When I grow up, I want to be strong\n" .string "like you, {PLAYER}!$" -LilycoveCity_PokemonTrainerFanClub_Text_OnlyOneWhoCheersForYou: @ 821D96A +LilycoveCity_PokemonTrainerFanClub_Text_OnlyOneWhoCheersForYou: .string "Even if I'm the only one…\p" .string "You'll always be the only one\n" .string "I cheer for, {PLAYER}!\p" .string "Because I believe in you, {PLAYER}!$" -LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsWickedlyCool: @ 821D9D1 +LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsWickedlyCool: .string "{STR_VAR_1} is so wickedly cool…\n" .string "I want to shake hands with my hero.$" -LilycoveCity_PokemonTrainerFanClub_Text_NeverGoingToStopBeingTrainersFan: @ 821DA0D +LilycoveCity_PokemonTrainerFanClub_Text_NeverGoingToStopBeingTrainersFan: .string "Even if I'm the only one…\p" .string "I'm never going to stop being\n" .string "{STR_VAR_1}'s fan!\p" .string "Because I've heard, {STR_VAR_1}\n" .string "never loses!$" -LilycoveCity_PokemonTrainerFanClub_Text_YoureAmazingAfterAll: @ 821DA73 +LilycoveCity_PokemonTrainerFanClub_Text_YoureAmazingAfterAll: .string "{PLAYER}!\n" .string "You are amazing after all!\p" .string "Ever since I set eyes on you,\n" .string "I knew that you were great.\p" .string "It looks like my eyes didn't deceive me.$" -LilycoveCity_PokemonTrainerFanClub_Text_ImInYourCorner: @ 821DAF5 +LilycoveCity_PokemonTrainerFanClub_Text_ImInYourCorner: .string "Who cares about the others.\n" .string "I'm in your corner!\p" .string "You don't need to worry. Just get\n" .string "out there and battle like always.$" -LilycoveCity_PokemonTrainerFanClub_Text_ThinkTrainerIsNumberOne: @ 821DB69 +LilycoveCity_PokemonTrainerFanClub_Text_ThinkTrainerIsNumberOne: .string "You're a pretty decent TRAINER,\n" .string "I think.\p" .string "But I also think that {STR_VAR_1}\n" @@ -816,32 +816,32 @@ LilycoveCity_PokemonTrainerFanClub_Text_ThinkTrainerIsNumberOne: @ 821DB69 .string "That's just my opinion.\n" .string "Don't worry about it too much.$" -LilycoveCity_PokemonTrainerFanClub_Text_YoureMaybeStrongerThanTrainer: @ 821DBFB +LilycoveCity_PokemonTrainerFanClub_Text_YoureMaybeStrongerThanTrainer: .string "Wow, you really are strong.\n" .string "Maybe even stronger than {STR_VAR_1}.\p" .string "But {STR_VAR_1} needs me.\p" .string "If I don't cheer for {STR_VAR_1},\n" .string "who will?$" -LilycoveCity_PokemonTrainerFanClub_Text_YouChangedMyMind: @ 821DC68 +LilycoveCity_PokemonTrainerFanClub_Text_YouChangedMyMind: .string "You've changed my mind!\n" .string "You are strong, aren't you?\p" .string "I'd like you to tell me how you managed\n" .string "to get so strong!$" -LilycoveCity_PokemonTrainerFanClub_Text_YouBattleAttractivelyInToughSituation: @ 821DCD6 +LilycoveCity_PokemonTrainerFanClub_Text_YouBattleAttractivelyInToughSituation: .string "The tougher the situation, the more\n" .string "attractively you battle.\p" .string "I can't wait for your next battle!$" -LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsStandout: @ 821DD36 +LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsStandout: .string "Among the recently hot TRAINERS,\n" .string "{STR_VAR_1} is the standout.\p" .string "That toughness, it's simply not normal.\p" .string "You're doing okay, but you're not in\n" .string "the same class as {STR_VAR_1}.$" -LilycoveCity_PokemonTrainerFanClub_Text_NoOneCanKnockYouButTrainerStronger: @ 821DDCE +LilycoveCity_PokemonTrainerFanClub_Text_NoOneCanKnockYouButTrainerStronger: .string "You are really popular…\p" .string "You're strong, and you're caring to\n" .string "POKéMON. No one can knock you.\p" @@ -849,23 +849,23 @@ LilycoveCity_PokemonTrainerFanClub_Text_NoOneCanKnockYouButTrainerStronger: @ 82 .string "{STR_VAR_1} is definitely stronger!\n" .string "I'm positive!$" -LilycoveCity_PokemonTrainerFanClub_Text_YouImpressive: @ 821DE72 +LilycoveCity_PokemonTrainerFanClub_Text_YouImpressive: .string "You…\p" .string "Impressive!$" -LilycoveCity_PokemonTrainerFanClub_Text_OnlyIRecognizeYourTrueWorth: @ 821DE83 +LilycoveCity_PokemonTrainerFanClub_Text_OnlyIRecognizeYourTrueWorth: .string "Your true worth, it is fine if only\n" .string "I recognized it.\p" .string "The others I doubt will understand\n" .string "the hidden power that beats within.$" -LilycoveCity_PokemonTrainerFanClub_Text_HaventRealizedPotential: @ 821DEFF +LilycoveCity_PokemonTrainerFanClub_Text_HaventRealizedPotential: .string "Yes, I see strength in your eyes.\p" .string "But!\p" .string "You still haven't realized your\n" .string "potential.$" -LilycoveCity_PokemonTrainerFanClub_Text_YourePowerfulButNotTrueStrength: @ 821DF51 +LilycoveCity_PokemonTrainerFanClub_Text_YourePowerfulButNotTrueStrength: .string "It is true that you are tremendously\n" .string "powerful.\p" .string "But!\n" diff --git a/data/maps/LilycoveCity_UnusedMart/scripts.inc b/data/maps/LilycoveCity_UnusedMart/scripts.inc index fa0405f68cfd..5b98e21cd1f1 100644 --- a/data/maps/LilycoveCity_UnusedMart/scripts.inc +++ b/data/maps/LilycoveCity_UnusedMart/scripts.inc @@ -1,3 +1,3 @@ -LilycoveCity_UnusedMart_MapScripts:: @ 821C784 +LilycoveCity_UnusedMart_MapScripts:: .byte 0 diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc index ba58323096ad..2d74a261831b 100644 --- a/data/maps/LittlerootTown/scripts.inc +++ b/data/maps/LittlerootTown/scripts.inc @@ -3,7 +3,7 @@ .set LOCALID_RIVAL, 7 .set LOCALID_BIRCH, 8 -LittlerootTown_MapScripts:: @ 81E7DCB +LittlerootTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, LittlerootTown_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LittlerootTown_OnWarp @@ -39,7 +39,7 @@ LittlerootTown_MapScripts:: @ 81E7DCB @ 4: Received Pokedex -LittlerootTown_OnTransition: @ 81E7DDB +LittlerootTown_OnTransition: setflag FLAG_VISITED_LITTLEROOT_TOWN call Common_EventScript_SetupRivalGfxId compare VAR_LITTLEROOT_INTRO_STATE, 2 @@ -61,45 +61,45 @@ LittlerootTown_OnTransition: @ 81E7DDB call_if_eq LittlerootTown_EventScript_LeftLabAfterDexUpgrade end -LittlerootTown_EventScript_LeftLabAfterDexUpgrade:: @ 81E7E45 +LittlerootTown_EventScript_LeftLabAfterDexUpgrade:: setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3 return -LittlerootTown_EventScript_HideMapNamePopup:: @ 81E7E4B +LittlerootTown_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -LittlerootTown_EventScript_SetRivalLeftForRoute103:: @ 81E7E4F +LittlerootTown_EventScript_SetRivalLeftForRoute103:: setflag FLAG_RIVAL_LEFT_FOR_ROUTE103 return -LittlerootTown_EventScript_MoveRivalFromOldale:: @ 81E7E53 +LittlerootTown_EventScript_MoveRivalFromOldale:: setvar VAR_OLDALE_RIVAL_STATE, 2 setflag FLAG_HIDE_OLDALE_TOWN_RIVAL return -LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent:: @ 81E7E5C +LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent:: setvar VAR_LITTLEROOT_HOUSES_STATE_MAY, 5 setvar VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 5 return -LittlerootTown_EventScript_MoveMomToMaysDoor:: @ 81E7E67 +LittlerootTown_EventScript_MoveMomToMaysDoor:: setobjectxyperm LOCALID_MOM, 14, 8 return -LittlerootTown_EventScript_SetTwinPos:: @ 81E7E6F +LittlerootTown_EventScript_SetTwinPos:: compare VAR_LITTLEROOT_TOWN_STATE, 0 goto_if_eq LittlerootTown_EventScript_SetTwinGuardingRoutePos setobjectxyperm LOCALID_TWIN, 10, 1 setobjectmovementtype LOCALID_TWIN, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_EventScript_SetTwinGuardingRoutePos:: @ 81E7E86 +LittlerootTown_EventScript_SetTwinGuardingRoutePos:: setobjectxyperm LOCALID_TWIN, 7, 2 setobjectmovementtype LOCALID_TWIN, MOVEMENT_TYPE_FACE_DOWN return -LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos:: @ 81E7E92 +LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos:: clearflag FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_DOWN checkplayergender @@ -109,21 +109,21 @@ LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos:: @ 81E7E92 call_if_eq LittlerootTown_EventScript_SetMomInFrontOfDoorFemale return -LittlerootTown_EventScript_SetMomInFrontOfDoorMale:: @ 81E7EB1 +LittlerootTown_EventScript_SetMomInFrontOfDoorMale:: setobjectxyperm LOCALID_MOM, 5, 9 return -LittlerootTown_EventScript_SetMomInFrontOfDoorFemale:: @ 81E7EB9 +LittlerootTown_EventScript_SetMomInFrontOfDoorFemale:: setobjectxyperm LOCALID_MOM, 14, 9 return -LittlerootTown_OnFrame: @ 81E7EC1 +LittlerootTown_OnFrame: map_script_2 VAR_LITTLEROOT_INTRO_STATE, 1, LittlerootTown_EventScript_StepOffTruckMale map_script_2 VAR_LITTLEROOT_INTRO_STATE, 2, LittlerootTown_EventScript_StepOffTruckFemale map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1, LittlerootTown_EventScript_BeginDexUpgradeScene .2byte 0 -LittlerootTown_EventScript_StepOffTruckMale:: @ 81E7EDB +LittlerootTown_EventScript_StepOffTruckMale:: lockall setvar VAR_0x8004, 5 setvar VAR_0x8005, 8 @@ -134,7 +134,7 @@ LittlerootTown_EventScript_StepOffTruckMale:: @ 81E7EDB releaseall end -LittlerootTown_EventScript_StepOffTruckFemale:: @ 81E7EF9 +LittlerootTown_EventScript_StepOffTruckFemale:: lockall setvar VAR_0x8004, 14 setvar VAR_0x8005, 8 @@ -145,7 +145,7 @@ LittlerootTown_EventScript_StepOffTruckFemale:: @ 81E7EF9 releaseall end -LittlerootTown_EventScript_GoInsideWithMom:: @ 81E7F17 +LittlerootTown_EventScript_GoInsideWithMom:: delay 15 playse SE_LEDGE applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_Movement_PlayerStepOffTruck @@ -179,46 +179,46 @@ LittlerootTown_EventScript_GoInsideWithMom:: @ 81E7F17 clearflag FLAG_HIDE_MAP_NAME_POPUP return -LittlerootTown_Movement_MomExitHouse: @ 81E7F98 +LittlerootTown_Movement_MomExitHouse: walk_down step_end -LittlerootTown_Movement_MomApproachPlayerAtTruck: @ 81E7F9A +LittlerootTown_Movement_MomApproachPlayerAtTruck: walk_down walk_in_place_fastest_left step_end -LittlerootTown_Movement_MomApproachDoor: @ 81E7F9D +LittlerootTown_Movement_MomApproachDoor: delay_16 delay_8 walk_up step_end -LittlerootTown_Movement_MomEnterHouse: @ 81E7FA1 +LittlerootTown_Movement_MomEnterHouse: walk_up set_invisible step_end -LittlerootTown_Movement_PlayerApproachDoor: @ 81E7FA4 +LittlerootTown_Movement_PlayerApproachDoor: delay_16 delay_8 walk_right walk_in_place_fastest_up step_end -LittlerootTown_Movement_PlayerEnterHouse: @ 81E7FA9 +LittlerootTown_Movement_PlayerEnterHouse: walk_up walk_up step_end -LittlerootTown_Movement_PlayerStepOffTruck: @ 81E7FAC +LittlerootTown_Movement_PlayerStepOffTruck: jump_right delay_16 delay_16 delay_16 step_end -LittlerootTown_EventScript_BeginDexUpgradeScene:: @ 81E7FB1 +LittlerootTown_EventScript_BeginDexUpgradeScene:: lockall playse SE_PIN applymovement LOCALID_BIRCH, Common_Movement_ExclamationMark @@ -235,11 +235,11 @@ LittlerootTown_EventScript_BeginDexUpgradeScene:: @ 81E7FB1 releaseall end -LittlerootTown_OnWarp: @ 81E7FE2 +LittlerootTown_OnWarp: map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1, LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade .2byte 0 -LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade:: @ 81E7FEC +LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade:: addobject LOCALID_BIRCH addobject LOCALID_RIVAL checkplayergender @@ -248,25 +248,25 @@ LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade:: @ 81E7FEC goto LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale end -LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale:: @ 81E8004 +LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale:: setobjectxy LOCALID_RIVAL, 6, 10 setobjectxy LOCALID_BIRCH, 5, 10 end -LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale:: @ 81E8013 +LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale:: setobjectxy LOCALID_RIVAL, 13, 10 setobjectxy LOCALID_BIRCH, 14, 10 end -LittlerootTown_EventScript_FatMan:: @ 81E8022 +LittlerootTown_EventScript_FatMan:: msgbox LittlerootTown_Text_CanUsePCToStoreItems, MSGBOX_NPC end -LittlerootTown_EventScript_Boy:: @ 81E802B +LittlerootTown_EventScript_Boy:: msgbox LittlerootTown_Text_BirchSpendsDaysInLab, MSGBOX_NPC end -LittlerootTown_EventScript_Twin:: @ 81E8034 +LittlerootTown_EventScript_Twin:: lock faceplayer goto_if_set FLAG_ADVENTURE_STARTED, LittlerootTown_EventScript_GoodLuck @@ -277,7 +277,7 @@ LittlerootTown_EventScript_Twin:: @ 81E8034 release end -LittlerootTown_EventScript_GoSaveBirch:: @ 81E805D +LittlerootTown_EventScript_GoSaveBirch:: special GetPlayerBigGuyGirlString msgbox LittlerootTown_Text_CanYouGoSeeWhatsHappening, MSGBOX_DEFAULT closemessage @@ -287,18 +287,18 @@ LittlerootTown_EventScript_GoSaveBirch:: @ 81E805D release end -LittlerootTown_EventScript_YouSavedBirch:: @ 81E807A +LittlerootTown_EventScript_YouSavedBirch:: special GetPlayerBigGuyGirlString msgbox LittlerootTown_Text_YouSavedBirch, MSGBOX_DEFAULT release end -LittlerootTown_EventScript_GoodLuck:: @ 81E8087 +LittlerootTown_EventScript_GoodLuck:: msgbox LittlerootTown_Text_GoodLuckCatchingPokemon, MSGBOX_DEFAULT release end -LittlerootTown_EventScript_NeedPokemonTriggerLeft:: @ 81E8091 +LittlerootTown_EventScript_NeedPokemonTriggerLeft:: lockall applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinApproachPlayerLeft waitmovement 0 @@ -308,7 +308,7 @@ LittlerootTown_EventScript_NeedPokemonTriggerLeft:: @ 81E8091 releaseall end -LittlerootTown_EventScript_DangerousWithoutPokemon:: @ 81E80AD +LittlerootTown_EventScript_DangerousWithoutPokemon:: msgbox LittlerootTown_Text_IfYouGoInGrassPokemonWillJumpOut, MSGBOX_DEFAULT closemessage applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinPushPlayerFromRoute @@ -318,7 +318,7 @@ LittlerootTown_EventScript_DangerousWithoutPokemon:: @ 81E80AD closemessage return -LittlerootTown_Movement_TwinApproachPlayerLeft: @ 81E80D1 +LittlerootTown_Movement_TwinApproachPlayerLeft: face_right delay_8 disable_jump_landing_ground_effect @@ -334,11 +334,11 @@ LittlerootTown_Movement_TwinApproachPlayerLeft: @ 81E80D1 face_down step_end -LittlerootTown_Movement_TwinPushPlayerFromRoute: @ 81E80DF +LittlerootTown_Movement_TwinPushPlayerFromRoute: walk_down step_end -LittlerootTown_Movement_TwinReturnLeft: @ 81E80E1 +LittlerootTown_Movement_TwinReturnLeft: walk_right walk_down walk_down @@ -350,13 +350,13 @@ LittlerootTown_Movement_TwinReturnLeft: @ 81E80E1 walk_in_place_fastest_down step_end -LittlerootTown_Movement_PushPlayerBackFromRoute: @ 81E80EB +LittlerootTown_Movement_PushPlayerBackFromRoute: lock_facing_direction walk_down unlock_facing_direction step_end -LittlerootTown_EventScript_NeedPokemonTriggerRight:: @ 81E80EF +LittlerootTown_EventScript_NeedPokemonTriggerRight:: lockall applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinApproachPlayerRight waitmovement 0 @@ -366,7 +366,7 @@ LittlerootTown_EventScript_NeedPokemonTriggerRight:: @ 81E80EF releaseall end -LittlerootTown_Movement_TwinApproachPlayerRight: @ 81E810B +LittlerootTown_Movement_TwinApproachPlayerRight: face_right delay_8 disable_jump_landing_ground_effect @@ -381,7 +381,7 @@ LittlerootTown_Movement_TwinApproachPlayerRight: @ 81E810B face_down step_end -LittlerootTown_Movement_TwinReturnRight: @ 81E8118 +LittlerootTown_Movement_TwinReturnRight: walk_left walk_down walk_left @@ -390,7 +390,7 @@ LittlerootTown_Movement_TwinReturnRight: @ 81E8118 walk_in_place_fastest_down step_end -LittlerootTown_EventScript_GoSaveBirchTrigger:: @ 81E811F +LittlerootTown_EventScript_GoSaveBirchTrigger:: lockall applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFastestRight waitmovement 0 @@ -405,15 +405,15 @@ LittlerootTown_EventScript_GoSaveBirchTrigger:: @ 81E811F releaseall end -LittlerootTown_EventScript_TownSign:: @ 81E8151 +LittlerootTown_EventScript_TownSign:: msgbox LittlerootTown_Text_TownSign, MSGBOX_SIGN end -LittlerootTown_EventScript_BirchsLabSign:: @ 81E815A +LittlerootTown_EventScript_BirchsLabSign:: msgbox LittlerootTown_Text_ProfBirchsLab, MSGBOX_SIGN end -LittlerootTown_EventScript_BrendansHouseSign:: @ 81E8163 +LittlerootTown_EventScript_BrendansHouseSign:: lockall checkplayergender compare VAR_RESULT, MALE @@ -423,15 +423,15 @@ LittlerootTown_EventScript_BrendansHouseSign:: @ 81E8163 releaseall end -LittlerootTown_EventScript_PlayersHouseSignMale:: @ 81E817D +LittlerootTown_EventScript_PlayersHouseSignMale:: msgbox LittlerootTown_Text_PlayersHouse, MSGBOX_DEFAULT return -LittlerootTown_EventScript_BirchsHouseSignFemale:: @ 81E8186 +LittlerootTown_EventScript_BirchsHouseSignFemale:: msgbox LittlerootTown_Text_ProfBirchsHouse, MSGBOX_DEFAULT return -LittlerootTown_EventScript_MaysHouseSign:: @ 81E818F +LittlerootTown_EventScript_MaysHouseSign:: lockall checkplayergender compare VAR_RESULT, MALE @@ -441,53 +441,53 @@ LittlerootTown_EventScript_MaysHouseSign:: @ 81E818F releaseall end -LittlerootTown_EventScript_BirchsHouseSignMale:: @ 81E81A9 +LittlerootTown_EventScript_BirchsHouseSignMale:: msgbox LittlerootTown_Text_ProfBirchsHouse, MSGBOX_DEFAULT return -LittlerootTown_EventScript_PlayersHouseSignFemale:: @ 81E81B2 +LittlerootTown_EventScript_PlayersHouseSignFemale:: msgbox LittlerootTown_Text_PlayersHouse, MSGBOX_DEFAULT return -LittlerootTown_EventScript_GiveRunningShoesTrigger0:: @ 81E81BB +LittlerootTown_EventScript_GiveRunningShoesTrigger0:: lockall setvar VAR_0x8008, 0 setobjectxy LOCALID_MOM, 10, 9 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger1:: @ 81E81CE +LittlerootTown_EventScript_GiveRunningShoesTrigger1:: lockall setvar VAR_0x8008, 1 setobjectxy LOCALID_MOM, 11, 9 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger2:: @ 81E81E1 +LittlerootTown_EventScript_GiveRunningShoesTrigger2:: lockall setvar VAR_0x8008, 2 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger3:: @ 81E81ED +LittlerootTown_EventScript_GiveRunningShoesTrigger3:: lockall setvar VAR_0x8008, 3 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger4:: @ 81E81F9 +LittlerootTown_EventScript_GiveRunningShoesTrigger4:: lockall setvar VAR_0x8008, 4 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger5:: @ 81E8205 +LittlerootTown_EventScript_GiveRunningShoesTrigger5:: lockall setvar VAR_0x8008, 5 goto LittlerootTown_EventScript_GiveRunningShoesTrigger end -LittlerootTown_EventScript_GiveRunningShoesTrigger:: @ 81E8211 +LittlerootTown_EventScript_GiveRunningShoesTrigger:: checkplayergender compare VAR_RESULT, MALE call_if_eq LittlerootTown_EventScript_MomNoticePlayerMale @@ -514,27 +514,27 @@ LittlerootTown_EventScript_GiveRunningShoesTrigger:: @ 81E8211 goto LittlerootTown_EventScript_SetReceivedRunningShoes end -LittlerootTown_EventScript_SetHomeDoorCoordsMale:: @ 81E8281 +LittlerootTown_EventScript_SetHomeDoorCoordsMale:: setvar VAR_0x8009, 5 setvar VAR_0x800A, 8 return -LittlerootTown_EventScript_SetHomeDoorCoordsFemale:: @ 81E828C +LittlerootTown_EventScript_SetHomeDoorCoordsFemale:: setvar VAR_0x8009, 14 setvar VAR_0x800A, 8 return -LittlerootTown_EventScript_MomNoticePlayerMale:: @ 81E8297 +LittlerootTown_EventScript_MomNoticePlayerMale:: applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -LittlerootTown_EventScript_MomNoticePlayerFemale:: @ 81E82A2 +LittlerootTown_EventScript_MomNoticePlayerFemale:: applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerMale:: @ 81E82AD +LittlerootTown_EventScript_MomApproachPlayerMale:: compare VAR_0x8008, 0 call_if_eq LittlerootTown_EventScript_MomApproachPlayer0 compare VAR_0x8008, 1 @@ -549,7 +549,7 @@ LittlerootTown_EventScript_MomApproachPlayerMale:: @ 81E82AD call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale5 return -LittlerootTown_EventScript_MomApproachPlayerFemale:: @ 81E82F0 +LittlerootTown_EventScript_MomApproachPlayerFemale:: compare VAR_0x8008, 0 call_if_eq LittlerootTown_EventScript_MomApproachPlayer0 compare VAR_0x8008, 1 @@ -564,77 +564,77 @@ LittlerootTown_EventScript_MomApproachPlayerFemale:: @ 81E82F0 call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale5 return -LittlerootTown_EventScript_MomApproachPlayer0:: @ 81E8333 +LittlerootTown_EventScript_MomApproachPlayer0:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer0 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayer1:: @ 81E8348 +LittlerootTown_EventScript_MomApproachPlayer1:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer1 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerMale2:: @ 81E835D +LittlerootTown_EventScript_MomApproachPlayerMale2:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale2 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerMale3:: @ 81E8372 +LittlerootTown_EventScript_MomApproachPlayerMale3:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale3 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerMale4:: @ 81E8387 +LittlerootTown_EventScript_MomApproachPlayerMale4:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale4 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerMale5:: @ 81E839C +LittlerootTown_EventScript_MomApproachPlayerMale5:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale5 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerFemale2:: @ 81E83B1 +LittlerootTown_EventScript_MomApproachPlayerFemale2:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale2 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerFemale3:: @ 81E83C6 +LittlerootTown_EventScript_MomApproachPlayerFemale3:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale3 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerFemale4:: @ 81E83DB +LittlerootTown_EventScript_MomApproachPlayerFemale4:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale4 waitmovement 0 return -LittlerootTown_EventScript_MomApproachPlayerFemale5:: @ 81E83F0 +LittlerootTown_EventScript_MomApproachPlayerFemale5:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale5 waitmovement 0 return -LittlerootTown_EventScript_MomReturnHomeMale:: @ 81E8405 +LittlerootTown_EventScript_MomReturnHomeMale:: compare VAR_0x8008, 0 call_if_eq LittlerootTown_EventScript_MomReturnHome0 compare VAR_0x8008, 1 @@ -649,7 +649,7 @@ LittlerootTown_EventScript_MomReturnHomeMale:: @ 81E8405 call_if_eq LittlerootTown_EventScript_MomReturnHomeMale5 return -LittlerootTown_EventScript_MomReturnHomeFemale:: @ 81E8448 +LittlerootTown_EventScript_MomReturnHomeFemale:: compare VAR_0x8008, 0 call_if_eq LittlerootTown_EventScript_MomReturnHome0 compare VAR_0x8008, 1 @@ -664,17 +664,17 @@ LittlerootTown_EventScript_MomReturnHomeFemale:: @ 81E8448 call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale5 return -LittlerootTown_EventScript_MomReturnHome0:: @ 81E848B +LittlerootTown_EventScript_MomReturnHome0:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHome0 waitmovement 0 return -LittlerootTown_EventScript_MomReturnHome1:: @ 81E8496 +LittlerootTown_EventScript_MomReturnHome1:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHome1 waitmovement 0 return -LittlerootTown_EventScript_MomReturnHomeMale2:: @ 81E84A1 +LittlerootTown_EventScript_MomReturnHomeMale2:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale2 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -686,7 +686,7 @@ LittlerootTown_EventScript_MomReturnHomeMale2:: @ 81E84A1 waitdooranim return -LittlerootTown_EventScript_MomReturnHomeMale3:: @ 81E84C7 +LittlerootTown_EventScript_MomReturnHomeMale3:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale3 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -698,7 +698,7 @@ LittlerootTown_EventScript_MomReturnHomeMale3:: @ 81E84C7 waitdooranim return -LittlerootTown_EventScript_MomReturnHomeMale4:: @ 81E84ED +LittlerootTown_EventScript_MomReturnHomeMale4:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale4 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -710,7 +710,7 @@ LittlerootTown_EventScript_MomReturnHomeMale4:: @ 81E84ED waitdooranim return -LittlerootTown_EventScript_MomReturnHomeMale5:: @ 81E8513 +LittlerootTown_EventScript_MomReturnHomeMale5:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale5 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -722,7 +722,7 @@ LittlerootTown_EventScript_MomReturnHomeMale5:: @ 81E8513 waitdooranim return -LittlerootTown_EventScript_MomReturnHomeFemale2:: @ 81E8539 +LittlerootTown_EventScript_MomReturnHomeFemale2:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale2 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -734,7 +734,7 @@ LittlerootTown_EventScript_MomReturnHomeFemale2:: @ 81E8539 waitdooranim return -LittlerootTown_EventScript_MomReturnHomeFemale3:: @ 81E855F +LittlerootTown_EventScript_MomReturnHomeFemale3:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale3 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -746,7 +746,7 @@ LittlerootTown_EventScript_MomReturnHomeFemale3:: @ 81E855F waitdooranim return -LittlerootTown_EventScript_MomReturnHomeFemale4:: @ 81E8585 +LittlerootTown_EventScript_MomReturnHomeFemale4:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale4 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -758,7 +758,7 @@ LittlerootTown_EventScript_MomReturnHomeFemale4:: @ 81E8585 waitdooranim return -LittlerootTown_EventScript_MomReturnHomeFemale5:: @ 81E85AB +LittlerootTown_EventScript_MomReturnHomeFemale5:: applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale5 waitmovement 0 opendoor VAR_0x8009, VAR_0x800A @@ -770,7 +770,7 @@ LittlerootTown_EventScript_MomReturnHomeFemale5:: @ 81E85AB waitdooranim return -LittlerootTown_Movement_MomApproachPlayer0: @ 81E85D1 +LittlerootTown_Movement_MomApproachPlayer0: walk_up walk_up walk_up @@ -779,7 +779,7 @@ LittlerootTown_Movement_MomApproachPlayer0: @ 81E85D1 walk_up step_end -LittlerootTown_Movement_MomApproachPlayer1: @ 81E85D8 +LittlerootTown_Movement_MomApproachPlayer1: walk_up walk_up walk_up @@ -788,14 +788,14 @@ LittlerootTown_Movement_MomApproachPlayer1: @ 81E85D8 walk_up step_end -LittlerootTown_Movement_MomApproachPlayerMale2: @ 81E85DF +LittlerootTown_Movement_MomApproachPlayerMale2: walk_right walk_right walk_right walk_right step_end -LittlerootTown_Movement_MomApproachPlayerMale3: @ 81E85E4 +LittlerootTown_Movement_MomApproachPlayerMale3: walk_right walk_right walk_right @@ -803,29 +803,29 @@ LittlerootTown_Movement_MomApproachPlayerMale3: @ 81E85E4 walk_right step_end -LittlerootTown_Movement_MomApproachPlayerMale4: @ 81E85EA +LittlerootTown_Movement_MomApproachPlayerMale4: walk_right walk_right step_end -LittlerootTown_Movement_MomApproachPlayerMale5: @ 81E85ED +LittlerootTown_Movement_MomApproachPlayerMale5: walk_right walk_right walk_right step_end -LittlerootTown_Movement_MomApproachPlayerFemale2: @ 81E85F1 +LittlerootTown_Movement_MomApproachPlayerFemale2: walk_left walk_left walk_left step_end -LittlerootTown_Movement_MomApproachPlayerFemale3: @ 81E85F5 +LittlerootTown_Movement_MomApproachPlayerFemale3: walk_left walk_left step_end -LittlerootTown_Movement_MomApproachPlayerFemale4: @ 81E85F8 +LittlerootTown_Movement_MomApproachPlayerFemale4: walk_left walk_left walk_left @@ -833,14 +833,14 @@ LittlerootTown_Movement_MomApproachPlayerFemale4: @ 81E85F8 walk_left step_end -LittlerootTown_Movement_MomApproachPlayerFemale5: @ 81E85FE +LittlerootTown_Movement_MomApproachPlayerFemale5: walk_left walk_left walk_left walk_left step_end -LittlerootTown_Movement_MomReturnHome0: @ 81E8603 +LittlerootTown_Movement_MomReturnHome0: walk_down walk_down walk_down @@ -848,7 +848,7 @@ LittlerootTown_Movement_MomReturnHome0: @ 81E8603 walk_down step_end -LittlerootTown_Movement_MomReturnHome1: @ 81E8609 +LittlerootTown_Movement_MomReturnHome1: walk_down walk_down walk_down @@ -856,7 +856,7 @@ LittlerootTown_Movement_MomReturnHome1: @ 81E8609 walk_down step_end -LittlerootTown_Movement_MomReturnHomeMale2: @ 81E860F +LittlerootTown_Movement_MomReturnHomeMale2: walk_left walk_left walk_left @@ -864,7 +864,7 @@ LittlerootTown_Movement_MomReturnHomeMale2: @ 81E860F walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeMale3: @ 81E8615 +LittlerootTown_Movement_MomReturnHomeMale3: walk_left walk_left walk_left @@ -873,33 +873,33 @@ LittlerootTown_Movement_MomReturnHomeMale3: @ 81E8615 walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeMale4: @ 81E861C +LittlerootTown_Movement_MomReturnHomeMale4: walk_left walk_left walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeMale5: @ 81E8620 +LittlerootTown_Movement_MomReturnHomeMale5: walk_left walk_left walk_left walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeFemale2: @ 81E8625 +LittlerootTown_Movement_MomReturnHomeFemale2: walk_right walk_right walk_right walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeFemale3: @ 81E862A +LittlerootTown_Movement_MomReturnHomeFemale3: walk_right walk_right walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeFemale4: @ 81E862E +LittlerootTown_Movement_MomReturnHomeFemale4: walk_right walk_right walk_right @@ -908,7 +908,7 @@ LittlerootTown_Movement_MomReturnHomeFemale4: @ 81E862E walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomReturnHomeFemale5: @ 81E8635 +LittlerootTown_Movement_MomReturnHomeFemale5: walk_right walk_right walk_right @@ -916,11 +916,11 @@ LittlerootTown_Movement_MomReturnHomeFemale5: @ 81E8635 walk_in_place_fastest_up step_end -LittlerootTown_Movement_MomExitThroughDoor: @ 81E863B +LittlerootTown_Movement_MomExitThroughDoor: walk_up step_end -LittlerootTown_EventScript_Mom:: @ 81E863D +LittlerootTown_EventScript_Mom:: lock faceplayer checkplayergender @@ -941,14 +941,14 @@ LittlerootTown_EventScript_Mom:: @ 81E863D goto LittlerootTown_EventScript_SetReceivedRunningShoes end -LittlerootTown_EventScript_SetReceivedRunningShoes:: @ 81E8686 +LittlerootTown_EventScript_SetReceivedRunningShoes:: removeobject LOCALID_MOM setflag FLAG_SYS_B_DASH setvar VAR_LITTLEROOT_TOWN_STATE, 4 release end -LittlerootTown_EventScript_GiveRunningShoes:: @ 81E8693 +LittlerootTown_EventScript_GiveRunningShoes:: msgbox LittlerootTown_Text_WearTheseRunningShoes, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_ITEM message LittlerootTown_Text_SwitchShoesWithRunningShoes @@ -960,7 +960,7 @@ LittlerootTown_EventScript_GiveRunningShoes:: @ 81E8693 delay 30 return -LittlerootTown_Text_OurNewHomeLetsGoInside: @ 81E86BC +LittlerootTown_Text_OurNewHomeLetsGoInside: .string "MOM: {PLAYER}, we're here, honey!\p" .string "It must be tiring riding with our things\n" .string "in the moving truck.\p" @@ -972,10 +972,10 @@ LittlerootTown_Text_OurNewHomeLetsGoInside: @ 81E86BC .string "And, you get your own room, {PLAYER}!\n" .string "Let's go inside.$" -LittlerootTown_Text_WaitPlayer: @ 81E87E1 +LittlerootTown_Text_WaitPlayer: .string "MOM: Wait, {PLAYER}!$" -LittlerootTown_Text_WearTheseRunningShoes: @ 81E87F0 +LittlerootTown_Text_WearTheseRunningShoes: .string "MOM: {PLAYER}! {PLAYER}! Did you\n" .string "introduce yourself to PROF. BIRCH?\p" .string "Oh! What an adorable POKéMON!\n" @@ -986,11 +986,11 @@ LittlerootTown_Text_WearTheseRunningShoes: @ 81E87F0 .string "adventure, wear these RUNNING SHOES.\p" .string "They'll put a zip in your step!$" -LittlerootTown_Text_SwitchShoesWithRunningShoes: @ 81E8925 +LittlerootTown_Text_SwitchShoesWithRunningShoes: .string "{PLAYER} switched shoes with the\n" .string "RUNNING SHOES.$" -LittlerootTown_Text_ExplainRunningShoes: @ 81E894F +LittlerootTown_Text_ExplainRunningShoes: .string "MOM: {PLAYER}, those shoes came with\n" .string "instructions.\p" .string "“Press the B Button while wearing these\n" @@ -998,7 +998,7 @@ LittlerootTown_Text_ExplainRunningShoes: @ 81E894F .string "“Slip on these RUNNING SHOES and race\n" .string "in the great outdoors!”$" -LittlerootTown_Text_ComeHomeIfAnythingHappens: @ 81E8A03 +LittlerootTown_Text_ComeHomeIfAnythingHappens: .string "… … … … … … … …\n" .string "… … … … … … … …\p" .string "To think that you have your very own\n" @@ -1008,28 +1008,28 @@ LittlerootTown_Text_ComeHomeIfAnythingHappens: @ 81E8A03 .string "If anything happens, you can come home.\p" .string "Go on, go get them, honey!$" -LittlerootTown_Text_CanUsePCToStoreItems: @ 81E8ACF +LittlerootTown_Text_CanUsePCToStoreItems: .string "If you use a PC, you can store items\n" .string "and POKéMON.\p" .string "The power of science is staggering!$" -LittlerootTown_Text_BirchSpendsDaysInLab: @ 81E8B25 +LittlerootTown_Text_BirchSpendsDaysInLab: .string "PROF. BIRCH spends days in his LAB\n" .string "studying, then he'll suddenly go out in\l" .string "the wild to do more research…\p" .string "When does PROF. BIRCH spend time\n" .string "at home?$" -LittlerootTown_Text_IfYouGoInGrassPokemonWillJumpOut: @ 81E8BB8 +LittlerootTown_Text_IfYouGoInGrassPokemonWillJumpOut: .string "Um, um, um!\p" .string "If you go outside and go in the grass,\n" .string "wild POKéMON will jump out!$" -LittlerootTown_Text_DangerousIfYouDontHavePokemon: @ 81E8C07 +LittlerootTown_Text_DangerousIfYouDontHavePokemon: .string "It's dangerous if you don't have\n" .string "your own POKéMON.$" -LittlerootTown_Text_CanYouGoSeeWhatsHappening: @ 81E8C3A +LittlerootTown_Text_CanYouGoSeeWhatsHappening: .string "Um, hi!\p" .string "There are scary POKéMON outside!\n" .string "I can hear their cries!\p" @@ -1038,28 +1038,28 @@ LittlerootTown_Text_CanYouGoSeeWhatsHappening: @ 81E8C3A .string "Can you go see what's happening\n" .string "for me?$" -LittlerootTown_Text_YouSavedBirch: @ 81E8CE3 +LittlerootTown_Text_YouSavedBirch: .string "You saved PROF. BIRCH!\n" .string "I'm so glad!$" -LittlerootTown_Text_GoodLuckCatchingPokemon: @ 81E8D07 +LittlerootTown_Text_GoodLuckCatchingPokemon: .string "Are you going to catch POKéMON?\n" .string "Good luck!$" -LittlerootTown_Text_TownSign: @ 81E8D32 +LittlerootTown_Text_TownSign: .string "LITTLEROOT TOWN\n" .string "“A town that can't be shaded any hue.”$" -LittlerootTown_Text_ProfBirchsLab: @ 81E8D69 +LittlerootTown_Text_ProfBirchsLab: .string "PROF. BIRCH'S POKéMON LAB$" -LittlerootTown_Text_PlayersHouse: @ 81E8D83 +LittlerootTown_Text_PlayersHouse: .string "{PLAYER}'s HOUSE$" -LittlerootTown_Text_ProfBirchsHouse: @ 81E8D8E +LittlerootTown_Text_ProfBirchsHouse: .string "PROF. BIRCH'S HOUSE$" -LittlerootTown_Text_BirchSomethingToShowYouAtLab: @ 81E8DA2 +LittlerootTown_Text_BirchSomethingToShowYouAtLab: .string "PROF. BIRCH: Well, well, {PLAYER}{KUN}!\n" .string "That was good work out there!\p" .string "I knew there was something special\n" diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index 4b5679ad9e03..9d19519c8183 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -2,34 +2,34 @@ .set LOCALID_RIVAL_MOM, 4 .set LOCALID_RIVAL, 7 -LittlerootTown_BrendansHouse_1F_MapScripts:: @ 81F7755 +LittlerootTown_BrendansHouse_1F_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, LittlerootTown_BrendansHouse_1F_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_BrendansHouse_1F_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, LittlerootTown_BrendansHouse_1F_OnFrame .byte 0 -LittlerootTown_BrendansHouse_1F_OnLoad: @ 81F7765 +LittlerootTown_BrendansHouse_1F_OnLoad: compare VAR_LITTLEROOT_INTRO_STATE, 6 call_if_lt LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual end -LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes:: @ 81F777A +LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes:: setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, 1 setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, 1 return -LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual:: @ 81F778D +LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual:: checkplayergender compare VAR_RESULT, MALE goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual return -LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual:: @ 81F779A +LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual:: setmetatile 3, 7, METATILE_BrendansMaysHouse_BookOnTable, 1 return -LittlerootTown_BrendansHouse_1F_OnTransition: @ 81F77A4 +LittlerootTown_BrendansHouse_1F_OnTransition: compare VAR_LITTLEROOT_INTRO_STATE, 3 call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor compare VAR_LITTLEROOT_INTRO_STATE, 5 @@ -38,24 +38,24 @@ LittlerootTown_BrendansHouse_1F_OnTransition: @ 81F77A4 call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV end -LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs:: @ 81F77C6 +LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs:: setobjectxyperm LOCALID_MOM, 8, 4 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV:: @ 81F77D2 +LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV:: setobjectxyperm LOCALID_MOM, 4, 5 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor:: @ 81F77DE +LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor:: setobjectxyperm LOCALID_MOM, 9, 8 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return @ Many of the below scripts have no gender check because they assume youre in the correct house @ The below SS Ticket script uses Mays house state by accident(?), but theyre both set identically after the intro -LittlerootTown_BrendansHouse_1F_OnFrame: @ 81F77EA +LittlerootTown_BrendansHouse_1F_OnFrame: map_script_2 VAR_LITTLEROOT_INTRO_STATE, 3, LittlerootTown_BrendansHouse_1F_EventScript_EnterHouseMovingIn map_script_2 VAR_LITTLEROOT_INTRO_STATE, 5, LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock map_script_2 VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_BrendansHouse_1F_EventScript_PetalburgGymReport @@ -63,7 +63,7 @@ LittlerootTown_BrendansHouse_1F_OnFrame: @ 81F77EA map_script_2 VAR_LITTLEROOT_HOUSES_STATE_MAY, 3, PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV .2byte 0 -LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock:: @ 81F7814 +LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock:: lockall msgbox PlayersHouse_1F_Text_GoSetTheClock, MSGBOX_DEFAULT closemessage @@ -75,25 +75,25 @@ LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock:: @ 81F7814 releaseall end -LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs: @ 81F783A +LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs: walk_up step_end -LittlerootTown_BrendansHouse_1F_EventScript_EnterHouseMovingIn:: @ 81F783C +LittlerootTown_BrendansHouse_1F_EventScript_EnterHouseMovingIn:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, MALE goto PlayersHouse_1F_EventScript_EnterHouseMovingIn end -LittlerootTown_BrendansHouse_1F_EventScript_PetalburgGymReport:: @ 81F784D +LittlerootTown_BrendansHouse_1F_EventScript_PetalburgGymReport:: lockall setvar VAR_0x8004, MALE setvar VAR_0x8005, LOCALID_MOM goto PlayersHouse_1F_EventScript_PetalburgGymReportMale end -LittlerootTown_BrendansHouse_1F_EventScript_YoureNewNeighbor:: @ 81F785E +LittlerootTown_BrendansHouse_1F_EventScript_YoureNewNeighbor:: lockall playse SE_PIN applymovement LOCALID_RIVAL_MOM, Common_Movement_ExclamationMark @@ -110,7 +110,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_YoureNewNeighbor:: @ 81F785E releaseall end -LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach: @ 81F789C +LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach: walk_down walk_right walk_right @@ -119,7 +119,7 @@ LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach: @ 81F789C walk_right step_end -LittlerootTown_BrendansHouse_1F_EventScript_GoSeeRoom:: @ 81F78A3 +LittlerootTown_BrendansHouse_1F_EventScript_GoSeeRoom:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, MALE @@ -128,25 +128,25 @@ LittlerootTown_BrendansHouse_1F_EventScript_GoSeeRoom:: @ 81F78A3 goto PlayersHouse_1F_EventScript_MomGoSeeRoom end -LittlerootTown_BrendansHouse_1F_EventScript_MeetRival0:: @ 81F78BE +LittlerootTown_BrendansHouse_1F_EventScript_MeetRival0:: lockall setvar VAR_0x8008, 0 goto LittlerootTown_BrendansHouse_1F_EventScript_MeetRival end -LittlerootTown_BrendansHouse_1F_EventScript_MeetRival1:: @ 81F78CA +LittlerootTown_BrendansHouse_1F_EventScript_MeetRival1:: lockall setvar VAR_0x8008, 1 goto LittlerootTown_BrendansHouse_1F_EventScript_MeetRival end -LittlerootTown_BrendansHouse_1F_EventScript_MeetRival2:: @ 81F78D6 +LittlerootTown_BrendansHouse_1F_EventScript_MeetRival2:: lockall setvar VAR_0x8008, 2 goto LittlerootTown_BrendansHouse_1F_EventScript_MeetRival end -LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: @ 81F78E2 +LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: playse SE_EXIT delay 10 addobject LOCALID_RIVAL @@ -186,27 +186,27 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: @ 81F78E2 releaseall end -LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan:: @ 81F7981 +LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0:: @ 81F798C +LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer1:: @ 81F7997 +LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer1:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2:: @ 81F79A2 +LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0: @ 81F79AD +LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0: walk_in_place_fastest_left walk_left walk_in_place_fastest_up @@ -216,13 +216,13 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0: @ 81F79AD walk_up step_end -LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1: @ 81F79B5 +LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1: walk_up walk_up walk_up step_end -LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2: @ 81F79B9 +LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -232,31 +232,31 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2: @ 81F79B9 walk_up step_end -LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs0:: @ 81F79C1 +LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs0:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0 applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs1:: @ 81F79D3 +LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs1:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1 applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2:: @ 81F79E5 +LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2 applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2 waitmovement 0 return -LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0: @ 81F79F7 +LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0: delay_16 delay_8 walk_in_place_fastest_right step_end -LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1: @ 81F79FB +LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1: delay_16 delay_8 walk_in_place_fastest_right @@ -265,13 +265,13 @@ LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1: @ 81F79FB walk_in_place_fastest_up step_end -LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2: @ 81F7A02 +LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2: delay_16 delay_8 walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0: @ 81F7A06 +LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -279,7 +279,7 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0: @ 81F7A06 walk_up step_end -LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1: @ 81F7A0C +LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -291,7 +291,7 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1: @ 81F7A0C walk_up step_end -LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2: @ 81F7A16 +LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2: walk_in_place_fastest_left walk_left walk_in_place_fastest_up @@ -299,11 +299,11 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2: @ 81F7A16 walk_up step_end -PlayersHouse_1F_Text_IsntItNiceInHere: @ 81F7A1C +PlayersHouse_1F_Text_IsntItNiceInHere: .string "MOM: See, {PLAYER}?\n" .string "Isn't it nice in here, too?$" -PlayersHouse_1F_Text_MoversPokemonGoSetClock: @ 81F7A46 +PlayersHouse_1F_Text_MoversPokemonGoSetClock: .string "The mover's POKéMON do all the work\n" .string "of moving us in and cleaning up after.\l" .string "This is so convenient!\p" @@ -313,87 +313,87 @@ PlayersHouse_1F_Text_MoversPokemonGoSetClock: @ 81F7A46 .string "our move here.\l" .string "Don't forget to set it!$" -PlayersHouse_1F_Text_ArentYouInterestedInRoom: @ 81F7B24 +PlayersHouse_1F_Text_ArentYouInterestedInRoom: .string "MOM: Well, {PLAYER}?\p" .string "Aren't you interested in seeing your\n" .string "very own room?$" -PlayersHouse_1F_Text_GoSetTheClock: @ 81F7B67 +PlayersHouse_1F_Text_GoSetTheClock: .string "MOM: {PLAYER}.\p" .string "Go set the clock in your room, honey.$" -PlayersHouse_1F_Text_OhComeQuickly: @ 81F7B96 +PlayersHouse_1F_Text_OhComeQuickly: .string "MOM: Oh! {PLAYER}, {PLAYER}!\n" .string "Quick! Come quickly!$" -PlayersHouse_1F_Text_MaybeDadWillBeOn: @ 81F7BBC +PlayersHouse_1F_Text_MaybeDadWillBeOn: .string "MOM: Look! It's PETALBURG GYM!\n" .string "Maybe DAD will be on!$" -PlayersHouse_1F_Text_ItsOverWeMissedHim: @ 81F7BF1 +PlayersHouse_1F_Text_ItsOverWeMissedHim: .string "MOM: Oh… It's over.\p" .string "I think DAD was on, but we missed him.\n" .string "Too bad.$" -PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor: @ 81F7C35 +PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor: .string "Oh, yes.\n" .string "One of DAD's friends lives in town.\p" .string "PROF. BIRCH is his name.\p" .string "He lives right next door, so you should\n" .string "go over and introduce yourself.$" -PlayersHouse_1F_Text_SeeYouHoney: @ 81F7CC3 +PlayersHouse_1F_Text_SeeYouHoney: .string "MOM: See you, honey!$" -PlayersHouse_1F_Text_DidYouMeetProfBirch: @ 81F7CD8 +PlayersHouse_1F_Text_DidYouMeetProfBirch: .string "MOM: Did you introduce yourself to\n" .string "PROF. BIRCH?$" -PlayersHouse_1F_Text_YouShouldRestABit: @ 81F7D08 +PlayersHouse_1F_Text_YouShouldRestABit: .string "MOM: How are you doing, {PLAYER}?\n" .string "You look a little tired.\p" .string "I think you should rest a bit.$" -PlayersHouse_1F_Text_TakeCareHoney: @ 81F7D5C +PlayersHouse_1F_Text_TakeCareHoney: .string "MOM: Take care, honey!$" -PlayersHouse_1F_Text_GotDadsBadgeHeresSomethingFromMom: @ 81F7D73 +PlayersHouse_1F_Text_GotDadsBadgeHeresSomethingFromMom: .string "MOM: Oh? Did DAD give you that BADGE?\p" .string "Then here's something from your MOM!$" -PlayersHouse_1F_Text_DontPushYourselfTooHard: @ 81F7DBE +PlayersHouse_1F_Text_DontPushYourselfTooHard: .string "Don't push yourself too hard, dear.\n" .string "You can always come home.\p" .string "Go for it, honey!$" -PlayersHouse_1F_Text_IsThatAPokenav: @ 81F7E0E +PlayersHouse_1F_Text_IsThatAPokenav: .string "MOM: What is that, honey? A POKéNAV?\n" .string "Someone from DEVON gave it to you?\p" .string "Well, honey, how about registering\n" .string "your mom?\p" .string "… … …$" -PlayersHouse_1F_Text_RegisteredMom: @ 81F7E89 +PlayersHouse_1F_Text_RegisteredMom: .string "Registered MOM\n" .string "in the POKéNAV.$" -PlayersHouse_1F_Text_Vigoroth1: @ 81F7EA8 +PlayersHouse_1F_Text_Vigoroth1: .string "Fugiiiiih!$" -PlayersHouse_1F_Text_Vigoroth2: @ 81F7EB3 +PlayersHouse_1F_Text_Vigoroth2: .string "Huggoh, uggo uggo…$" -PlayersHouse_1F_Text_ReportFromPetalburgGym: @ 81F7EC6 +PlayersHouse_1F_Text_ReportFromPetalburgGym: .string "INTERVIEWER: …We brought you this\n" .string "report from in front of PETALBURG GYM.$" -PlayersHouse_1F_Text_TheresAMovieOnTV: @ 81F7F0F +PlayersHouse_1F_Text_TheresAMovieOnTV: .string "There is a movie on TV.\p" .string "Two men are dancing on a big piano\n" .string "keyboard.\p" .string "Better get going!$" -PlayersHouse_1F_Text_RunningShoesManual: @ 81F7F66 +PlayersHouse_1F_Text_RunningShoesManual: .string "It's the instruction booklet for the\n" .string "RUNNING SHOES.\p" .string "“Press the B Button to run while\n" @@ -401,7 +401,7 @@ PlayersHouse_1F_Text_RunningShoesManual: @ 81F7F66 .string "“Lace up your RUNNING SHOES and hit\n" .string "the road running!”$" -PlayersHouse_1F_Text_TicketFromBrineyCameForYou: @ 81F800E +PlayersHouse_1F_Text_TicketFromBrineyCameForYou: .string "DAD: Hm?\p" .string "Hey, it's {PLAYER}!\p" .string "It's been a while since I saw you,\n" @@ -412,26 +412,26 @@ PlayersHouse_1F_Text_TicketFromBrineyCameForYou: @ 81F800E .string "This came to you from someone named\l" .string "MR. BRINEY.$" -PlayersHouse_1F_Text_PortsInSlateportLilycove: @ 81F80FE +PlayersHouse_1F_Text_PortsInSlateportLilycove: .string "DAD: Hm, a TICKET for a ferry?\p" .string "If I recall, there are ferry ports in\n" .string "SLATEPORT and LILYCOVE.$" -PlayersHouse_1F_Text_BetterGetBackToGym: @ 81F815B +PlayersHouse_1F_Text_BetterGetBackToGym: .string "I'd better get back to PETALBURG GYM.\p" .string "MOM, thanks for looking after the house\n" .string "while I'm away.$" -PlayersHouse_1F_Text_DadShouldStayLonger: @ 81F81B9 +PlayersHouse_1F_Text_DadShouldStayLonger: .string "MOM: That DAD of yours…\p" .string "He comes home for the first time in a\n" .string "while, but all he talks about is POKéMON.\p" .string "He should relax and stay a little longer.$" -PlayersHouse_1F_Text_IsThatABreakingStory: @ 81F824B +PlayersHouse_1F_Text_IsThatABreakingStory: .string "MOM: Is that a breaking news story?$" -PlayersHouse_1F_Text_LatiEmergencyNewsFlash: @ 81F826F +PlayersHouse_1F_Text_LatiEmergencyNewsFlash: .string "We bring you this emergency\n" .string "news flash!\p" .string "In various HOENN locales, there have\n" @@ -442,11 +442,11 @@ PlayersHouse_1F_Text_LatiEmergencyNewsFlash: @ 81F826F .string "We now return you to the regular\n" .string "movie program.$" -PlayersHouse_1F_Text_WhatColorDidTheySay: @ 81F8351 +PlayersHouse_1F_Text_WhatColorDidTheySay: .string "MOM: {PLAYER}, did you catch that?\p" .string "What color did the announcer say\n" .string "that POKéMON was?$" -PlayersHouse_1F_Text_StillUnknownPokemon: @ 81F83A1 +PlayersHouse_1F_Text_StillUnknownPokemon: .string "MOM: Well, isn't that something!\n" .string "There are still unknown POKéMON.$" diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index 6cfeea7e4f93..5d6af5cf00a0 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -1,11 +1,11 @@ .set LOCALID_RIVAL, 1 -LittlerootTown_BrendansHouse_2F_MapScripts:: @ 81F83E3 +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 .byte 0 -LittlerootTown_BrendansHouse_2F_OnTransition: @ 81F83EE +LittlerootTown_BrendansHouse_2F_OnTransition: compare VAR_LITTLEROOT_RIVAL_STATE, 2 call_if_lt LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan compare VAR_LITTLEROOT_RIVAL_STATE, 3 @@ -16,13 +16,13 @@ LittlerootTown_BrendansHouse_2F_OnTransition: @ 81F83EE setvar VAR_SECRET_BASE_INITIALIZED, 0 end -LittlerootTown_BrendansHouse_2F_EventScript_CheckShouldUpdateBrendanPos:: @ 81F841A +LittlerootTown_BrendansHouse_2F_EventScript_CheckShouldUpdateBrendanPos:: goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos compare VAR_BIRCH_LAB_STATE, 2 goto_if_ge LittlerootTown_BrendansHouse_2F_EventScript_Ret goto LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos -LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos:: @ 81F8433 +LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos:: checkplayergender compare VAR_RESULT, MALE goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_Ret @@ -32,30 +32,30 @@ LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos:: @ 81F8433 setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_BrendansHouse_2F_EventScript_Ret:: @ 81F8456 +LittlerootTown_BrendansHouse_2F_EventScript_Ret:: return -LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan:: @ 81F8457 +LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan:: checkplayergender compare VAR_RESULT, FEMALE goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan return -LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan:: @ 81F8464 +LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan:: setvar VAR_LITTLEROOT_RIVAL_STATE, 2 return -LittlerootTown_BrendansHouse_2F_OnWarp: @ 81F846A +LittlerootTown_BrendansHouse_2F_OnWarp: map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, LittlerootTown_BrendansHouse_2F_EventScript_CheckInitDecor .2byte 0 -LittlerootTown_BrendansHouse_2F_EventScript_CheckInitDecor:: @ 81F8474 +LittlerootTown_BrendansHouse_2F_EventScript_CheckInitDecor:: checkplayergender compare VAR_RESULT, MALE goto_if_eq SecretBase_EventScript_InitDecorations end -LittlerootTown_BrendansHouse_2F_EventScript_RivalsPokeBall:: @ 81F8481 +LittlerootTown_BrendansHouse_2F_EventScript_RivalsPokeBall:: lockall compare VAR_LITTLEROOT_RIVAL_STATE, 2 goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan @@ -63,7 +63,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_RivalsPokeBall:: @ 81F8481 releaseall end -LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: @ 81F8497 +LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: delay 10 addobject LOCALID_RIVAL applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters @@ -92,7 +92,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: @ 81F8497 releaseall end -LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth:: @ 81F8507 +LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight @@ -104,7 +104,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth:: @ 81F8507 waitmovement 0 return -LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth:: @ 81F8536 +LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight @@ -116,7 +116,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth:: @ 81F8536 waitmovement 0 return -LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest:: @ 81F8565 +LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight @@ -128,7 +128,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest:: @ 81F8565 waitmovement 0 return -LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast:: @ 81F8594 +LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp @@ -139,13 +139,13 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast:: @ 81F8594 waitmovement 0 return -LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters: @ 81F85BC +LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters: walk_down walk_down walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth: @ 81F85C0 +LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth: walk_left walk_left walk_down @@ -153,7 +153,7 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth: @ 81F85C0 walk_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth: @ 81F85C6 +LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth: walk_up walk_up walk_up @@ -164,7 +164,7 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth: @ 81F85C6 walk_in_place_fastest_up step_end -LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth: @ 81F85CF +LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth: delay_16 walk_in_place_fastest_up delay_16 @@ -174,13 +174,13 @@ LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth: @ 81F85CF walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth: @ 81F85D7 +LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth: walk_left walk_left walk_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth: @ 81F85DB +LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth: walk_up walk_left walk_left @@ -189,7 +189,7 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth: @ 81F85DB walk_in_place_fastest_up step_end -LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth: @ 81F85E2 +LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth: delay_16 walk_in_place_fastest_up delay_16 @@ -197,14 +197,14 @@ LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth: @ 81F85E2 walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest: @ 81F85E8 +LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest: walk_left walk_left walk_down walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest: @ 81F85ED +LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest: walk_up walk_up walk_left @@ -215,7 +215,7 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest: @ 81F85ED walk_in_place_fastest_up step_end -LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest: @ 81F85F6 +LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest: delay_8 delay_16 walk_in_place_fastest_up @@ -224,7 +224,7 @@ LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest: @ 81F85F6 walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast: @ 81F85FD +LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast: walk_left walk_left walk_left @@ -233,7 +233,7 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast: @ 81F85FD walk_in_place_fastest_down step_end -LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast: @ 81F8604 +LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast: walk_up walk_left walk_left @@ -241,13 +241,13 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast: @ 81F8604 step_end @ Unused, the player is already facing this direction so its unneeded -LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanEast: @ 81F8609 +LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanEast: delay_16 delay_16 walk_in_place_fastest_left step_end -LittlerootTown_BrendansHouse_2F_EventScript_PC:: @ 81F860D +LittlerootTown_BrendansHouse_2F_EventScript_PC:: lockall checkplayergender compare VAR_RESULT, MALE @@ -256,7 +256,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_PC:: @ 81F860D goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_CheckRivalsPC end -LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: @ 81F8626 +LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: setvar VAR_0x8004, 1 special DoPCTurnOnEffect playse SE_PC_ON @@ -266,31 +266,31 @@ LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: @ 81F8626 releaseall end -LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC:: @ 81F863F +LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC:: setvar VAR_0x8004, 1 playse SE_PC_OFF special DoPCTurnOffEffect releaseall end -LittlerootTown_BrendansHouse_2F_EventScript_CheckRivalsPC:: @ 81F864C +LittlerootTown_BrendansHouse_2F_EventScript_CheckRivalsPC:: msgbox gText_PokemonTrainerSchoolEmail, MSGBOX_DEFAULT releaseall end -PlayersHouse_2F_EventScript_Notebook:: @ 81F8656 +PlayersHouse_2F_EventScript_Notebook:: msgbox PlayersHouse_2F_Text_Notebook, MSGBOX_SIGN end -PlayersHouse_2F_EventScript_GameCube:: @ 81F865F +PlayersHouse_2F_EventScript_GameCube:: msgbox PlayersHouse_2F_Text_ItsAGameCube, MSGBOX_SIGN end -PlayersHouse_2F_Text_ClockIsStopped: @ 81F8668 +PlayersHouse_2F_Text_ClockIsStopped: .string "The clock is stopped…\p" .string "Better set it and start it!$" -PlayersHouse_2F_Text_HowDoYouLikeYourRoom: @ 81F869A +PlayersHouse_2F_Text_HowDoYouLikeYourRoom: .string "MOM: {PLAYER}, how do you like your\n" .string "new room?\p" .string "Good! Everything's put away neatly!\p" @@ -300,7 +300,7 @@ PlayersHouse_2F_Text_HowDoYouLikeYourRoom: @ 81F869A .string "Oh, you should make sure that\n" .string "everything's all there on your desk.$" -PlayersHouse_2F_Text_Notebook: @ 81F877F +PlayersHouse_2F_Text_Notebook: .string "{PLAYER} flipped open the notebook.\p" .string "ADVENTURE RULE NO. 1\n" .string "Open the MENU with START.\p" @@ -308,11 +308,11 @@ PlayersHouse_2F_Text_Notebook: @ 81F877F .string "Record your progress with SAVE.\p" .string "The remaining pages are blank…$" -Common_Text_LookCloserAtMap: @ 81F8820 +Common_Text_LookCloserAtMap: .string "{PLAYER} took a closer look at the\n" .string "HOENN region map.$" -PlayersHouse_2F_Text_ItsAGameCube: @ 81F884F +PlayersHouse_2F_Text_ItsAGameCube: .string "It's a Nintendo GameCube.\p" .string "A Game Boy Advance is connected to\n" .string "serve as the Controller.$" diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index f1df425b7411..80c8c919e343 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -2,34 +2,34 @@ .set LOCALID_RIVAL_MOM, 4 .set LOCALID_RIVAL, 7 -LittlerootTown_MaysHouse_1F_MapScripts:: @ 81F88A5 +LittlerootTown_MaysHouse_1F_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, LittlerootTown_MaysHouse_1F_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_MaysHouse_1F_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, LittlerootTown_MaysHouse_1F_OnFrame .byte 0 -LittlerootTown_MaysHouse_1F_OnLoad: @ 81F88B5 +LittlerootTown_MaysHouse_1F_OnLoad: compare VAR_LITTLEROOT_INTRO_STATE, 6 call_if_lt LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual end -LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes:: @ 81F88CA +LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes:: setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, 1 setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, 1 return -LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual:: @ 81F88DD +LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual:: checkplayergender compare VAR_RESULT, FEMALE goto_if_eq LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual return -LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual:: @ 81F88EA +LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual:: setmetatile 6, 7, METATILE_BrendansMaysHouse_BookOnTable, 1 return -LittlerootTown_MaysHouse_1F_OnTransition: @ 81F88F4 +LittlerootTown_MaysHouse_1F_OnTransition: compare VAR_LITTLEROOT_INTRO_STATE, 3 call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor compare VAR_LITTLEROOT_INTRO_STATE, 5 @@ -38,23 +38,23 @@ LittlerootTown_MaysHouse_1F_OnTransition: @ 81F88F4 call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV end -LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs:: @ 81F8916 +LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs:: setobjectxyperm LOCALID_MOM, 2, 4 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV:: @ 81F8922 +LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV:: setobjectxyperm LOCALID_MOM, 6, 5 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor:: @ 81F892E +LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor:: setobjectxyperm LOCALID_MOM, 1, 8 setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP return @ Many of the below scripts have no gender check because they assume youre in the correct house -LittlerootTown_MaysHouse_1F_OnFrame: @ 81F893A +LittlerootTown_MaysHouse_1F_OnFrame: map_script_2 VAR_LITTLEROOT_INTRO_STATE, 3, LittlerootTown_MaysHouse_1F_EventScript_EnterHouseMovingIn map_script_2 VAR_LITTLEROOT_INTRO_STATE, 5, LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock map_script_2 VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_MaysHouse_1F_EventScript_PetalburgGymReport @@ -62,7 +62,7 @@ LittlerootTown_MaysHouse_1F_OnFrame: @ 81F893A map_script_2 VAR_LITTLEROOT_HOUSES_STATE_MAY, 3, PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV .2byte 0 -LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock:: @ 81F8964 +LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock:: lockall msgbox PlayersHouse_1F_Text_GoSetTheClock, MSGBOX_DEFAULT closemessage @@ -74,25 +74,25 @@ LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock:: @ 81F8964 releaseall end -LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs: @ 81F898A +LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs: walk_up step_end -LittlerootTown_MaysHouse_1F_EventScript_EnterHouseMovingIn:: @ 81F898C +LittlerootTown_MaysHouse_1F_EventScript_EnterHouseMovingIn:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, FEMALE goto PlayersHouse_1F_EventScript_EnterHouseMovingIn end -LittlerootTown_MaysHouse_1F_EventScript_PetalburgGymReport:: @ 81F899D +LittlerootTown_MaysHouse_1F_EventScript_PetalburgGymReport:: lockall setvar VAR_0x8004, FEMALE setvar VAR_0x8005, LOCALID_MOM goto PlayersHouse_1F_EventScript_PetalburgGymReportFemale end -LittlerootTown_MaysHouse_1F_EventScript_YoureNewNeighbor:: @ 81F89AE +LittlerootTown_MaysHouse_1F_EventScript_YoureNewNeighbor:: lockall playse SE_PIN applymovement LOCALID_RIVAL_MOM, Common_Movement_ExclamationMark @@ -109,7 +109,7 @@ LittlerootTown_MaysHouse_1F_EventScript_YoureNewNeighbor:: @ 81F89AE releaseall end -LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach: @ 81F89EC +LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach: walk_down walk_left walk_left @@ -118,7 +118,7 @@ LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach: @ 81F89EC walk_left step_end -RivalsHouse_1F_EventScript_RivalMom:: @ 81F89F3 +RivalsHouse_1F_EventScript_RivalMom:: lock faceplayer goto_if_set FLAG_DEFEATED_RIVAL_ROUTE103, RivalsHouse_1F_EventScript_GoHomeEverySoOften @@ -130,22 +130,22 @@ RivalsHouse_1F_EventScript_RivalMom:: @ 81F89F3 release end -RivalsHouse_1F_EventScript_RivalTooBusy:: @ 81F8A1F +RivalsHouse_1F_EventScript_RivalTooBusy:: msgbox RivalsHouse_1F_Text_TooBusyToNoticeVisit, MSGBOX_DEFAULT release end -RivalsHouse_1F_EventScript_RivalIsOnRoute103:: @ 81F8A29 +RivalsHouse_1F_EventScript_RivalIsOnRoute103:: msgbox RivalsHouse_1F_Text_WentOutToRoute103, MSGBOX_DEFAULT release end -RivalsHouse_1F_EventScript_GoHomeEverySoOften:: @ 81F8A33 +RivalsHouse_1F_EventScript_GoHomeEverySoOften:: msgbox RivalsHouse_1F_Text_ShouldGoHomeEverySoOften, MSGBOX_DEFAULT release end -RivalsHouse_1F_EventScript_RivalSibling:: @ 81F8A3D +RivalsHouse_1F_EventScript_RivalSibling:: lock faceplayer special GetPlayerBigGuyGirlString @@ -153,7 +153,7 @@ RivalsHouse_1F_EventScript_RivalSibling:: @ 81F8A3D release end -LittlerootTown_MaysHouse_1F_EventScript_GoSeeRoom:: @ 81F8A4C +LittlerootTown_MaysHouse_1F_EventScript_GoSeeRoom:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, FEMALE @@ -162,25 +162,25 @@ LittlerootTown_MaysHouse_1F_EventScript_GoSeeRoom:: @ 81F8A4C goto PlayersHouse_1F_EventScript_MomGoSeeRoom end -LittlerootTown_MaysHouse_1F_EventScript_MeetRival0:: @ 81F8A67 +LittlerootTown_MaysHouse_1F_EventScript_MeetRival0:: lockall setvar VAR_0x8008, 0 goto LittlerootTown_MaysHouse_1F_EventScript_MeetRival end -LittlerootTown_MaysHouse_1F_EventScript_MeetRival1:: @ 81F8A73 +LittlerootTown_MaysHouse_1F_EventScript_MeetRival1:: lockall setvar VAR_0x8008, 1 goto LittlerootTown_MaysHouse_1F_EventScript_MeetRival end -LittlerootTown_MaysHouse_1F_EventScript_MeetRival2:: @ 81F8A7F +LittlerootTown_MaysHouse_1F_EventScript_MeetRival2:: lockall setvar VAR_0x8008, 2 goto LittlerootTown_MaysHouse_1F_EventScript_MeetRival end -LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: @ 81F8A8B +LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: playse SE_EXIT delay 10 addobject LOCALID_RIVAL @@ -220,27 +220,27 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: @ 81F8A8B releaseall end -LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay:: @ 81F8B2A +LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0:: @ 81F8B35 +LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0 waitmovement 0 return -LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer1:: @ 81F8B40 +LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer1:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1 waitmovement 0 return -LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2:: @ 81F8B4B +LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2 waitmovement 0 return -LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0: @ 81F8B56 +LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0: walk_in_place_fastest_left walk_left walk_in_place_fastest_up @@ -250,13 +250,13 @@ LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0: @ 81F8B56 walk_up step_end -LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1: @ 81F8B5E +LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1: walk_up walk_up walk_up step_end -LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2: @ 81F8B62 +LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -266,31 +266,31 @@ LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2: @ 81F8B62 walk_up step_end -LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs0:: @ 81F8B6A +LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs0:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0 applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0 waitmovement 0 return -LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs1:: @ 81F8B7C +LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs1:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1 applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1 waitmovement 0 return -LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2:: @ 81F8B8E +LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2 applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2 waitmovement 0 return -LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0: @ 81F8BA0 +LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0: delay_16 delay_8 walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1: @ 81F8BA4 +LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1: delay_16 delay_8 walk_in_place_fastest_right @@ -299,13 +299,13 @@ LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1: @ 81F8BA4 walk_in_place_fastest_up step_end -LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2: @ 81F8BAB +LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2: delay_16 delay_8 walk_in_place_fastest_left step_end -LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0: @ 81F8BAF +LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -313,7 +313,7 @@ LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0: @ 81F8BAF walk_up step_end -LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1: @ 81F8BB5 +LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1: walk_in_place_fastest_right walk_right walk_in_place_fastest_up @@ -325,7 +325,7 @@ LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1: @ 81F8BB5 walk_up step_end -LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2: @ 81F8BBF +LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2: walk_in_place_fastest_left walk_left walk_in_place_fastest_up @@ -333,7 +333,7 @@ LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2: @ 81F8BBF walk_up step_end -RivalsHouse_1F_Text_OhYoureTheNewNeighbor: @ 81F8BC5 +RivalsHouse_1F_Text_OhYoureTheNewNeighbor: .string "Oh, hello. And you are?\p" .string "… … … … … … … … …\n" .string "… … … … … … … … …\p" @@ -345,26 +345,26 @@ RivalsHouse_1F_Text_OhYoureTheNewNeighbor: @ 81F8BC5 .string "a new friend.\p" .string "Our {STR_VAR_1} is upstairs, I think.$" -RivalsHouse_1F_Text_LikeChildLikeFather: @ 81F8CA5 +RivalsHouse_1F_Text_LikeChildLikeFather: .string "Like child, like father.\p" .string "My husband is as wild about POKéMON\n" .string "as our child.\p" .string "If he's not at his LAB, he's likely\n" .string "scrabbling about in grassy places.$" -RivalsHouse_1F_Text_TooBusyToNoticeVisit: @ 81F8D37 +RivalsHouse_1F_Text_TooBusyToNoticeVisit: .string "That {RIVAL}!\p" .string "I guess our child is too busy with\n" .string "POKéMON to notice that you came\l" .string "to visit, {PLAYER}{KUN}.$" -RivalsHouse_1F_Text_WentOutToRoute103: @ 81F8D93 +RivalsHouse_1F_Text_WentOutToRoute103: .string "Oh, {RIVAL} went out to ROUTE 103\n" .string "just a little while ago.\p" .string "Like father, like child.\n" .string "{RIVAL} can't stay quietly at home.$" -RivalsHouse_1F_Text_ShouldGoHomeEverySoOften: @ 81F8E01 +RivalsHouse_1F_Text_ShouldGoHomeEverySoOften: .string "I think it's wonderful for people to\n" .string "travel with POKéMON.\p" .string "But you should go home every so often\n" @@ -372,7 +372,7 @@ RivalsHouse_1F_Text_ShouldGoHomeEverySoOften: @ 81F8E01 .string "She might not say it, but I'm sure she\n" .string "worries about you, {PLAYER}{KUN}.$" -RivalsHouse_1F_Text_MayWhoAreYou: @ 81F8EC6 +RivalsHouse_1F_Text_MayWhoAreYou: .string "Huh?\n" .string "Who… Who are you?\p" .string "… … … … … … … …\n" @@ -396,7 +396,7 @@ RivalsHouse_1F_Text_MayWhoAreYou: @ 81F8EC6 .string "some wild POKéMON!\p" .string "{PLAYER}{KUN}, I'll catch you later!$" -RivalsHouse_1F_Text_BrendanWhoAreYou: @ 81F90B4 +RivalsHouse_1F_Text_BrendanWhoAreYou: .string "Hey!\n" .string "You…\p" .string "Who are you?\p" @@ -416,7 +416,7 @@ RivalsHouse_1F_Text_BrendanWhoAreYou: @ 81F90B4 .string "some wild POKéMON.\p" .string "Some other time, okay?$" -RivalsHouse_1F_Text_DoYouHavePokemon: @ 81F9262 +RivalsHouse_1F_Text_DoYouHavePokemon: .string "Hi, neighbor!\p" .string "Do you already have your\n" .string "own POKéMON?$" diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc index a0583841cf4f..1483a845c34e 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc @@ -1,11 +1,11 @@ .set LOCALID_RIVAL, 1 -LittlerootTown_MaysHouse_2F_MapScripts:: @ 81F9296 +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 .byte 0 -LittlerootTown_MaysHouse_2F_OnTransition: @ 81F92A1 +LittlerootTown_MaysHouse_2F_OnTransition: compare VAR_LITTLEROOT_RIVAL_STATE, 2 call_if_lt LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay compare VAR_LITTLEROOT_RIVAL_STATE, 3 @@ -16,13 +16,13 @@ LittlerootTown_MaysHouse_2F_OnTransition: @ 81F92A1 setvar VAR_SECRET_BASE_INITIALIZED, 0 end -LittlerootTown_MaysHouse_2F_EventScript_CheckShouldUpdateMayPos:: @ 81F92CD +LittlerootTown_MaysHouse_2F_EventScript_CheckShouldUpdateMayPos:: goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos compare VAR_BIRCH_LAB_STATE, 2 goto_if_ge LittlerootTown_MaysHouse_2F_EventScript_Ret goto LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos -LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos:: @ 81F92E6 +LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos:: checkplayergender compare VAR_RESULT, FEMALE goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_Ret @@ -32,30 +32,30 @@ LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos:: @ 81F92E6 setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_FACE_UP return -LittlerootTown_MaysHouse_2F_EventScript_Ret:: @ 81F9309 +LittlerootTown_MaysHouse_2F_EventScript_Ret:: return -LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay:: @ 81F930A +LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay:: checkplayergender compare VAR_RESULT, MALE goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay return -LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay:: @ 81F9317 +LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay:: setvar VAR_LITTLEROOT_RIVAL_STATE, 2 return -LittlerootTown_MaysHouse_2F_OnWarp: @ 81F931D +LittlerootTown_MaysHouse_2F_OnWarp: map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, LittlerootTown_MaysHouse_2F_EventScript_CheckInitDecor .2byte 0 -LittlerootTown_MaysHouse_2F_EventScript_CheckInitDecor:: @ 81F9327 +LittlerootTown_MaysHouse_2F_EventScript_CheckInitDecor:: checkplayergender compare VAR_RESULT, FEMALE goto_if_eq SecretBase_EventScript_InitDecorations end -LittlerootTown_MaysHouse_2F_EventScript_RivalsPokeBall:: @ 81F9334 +LittlerootTown_MaysHouse_2F_EventScript_RivalsPokeBall:: lockall compare VAR_LITTLEROOT_RIVAL_STATE, 2 goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMay @@ -63,7 +63,7 @@ LittlerootTown_MaysHouse_2F_EventScript_RivalsPokeBall:: @ 81F9334 releaseall end -LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: @ 81F934A +LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: delay 10 addobject LOCALID_RIVAL applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayEnters @@ -92,7 +92,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: @ 81F934A releaseall end -LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth:: @ 81F93BA +LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft @@ -104,7 +104,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth:: @ 81F93BA waitmovement 0 return -LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth:: @ 81F93E9 +LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft @@ -116,7 +116,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth:: @ 81F93E9 waitmovement 0 return -LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest:: @ 81F9418 +LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp @@ -127,7 +127,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest:: @ 81F9418 waitmovement 0 return -LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast:: @ 81F9440 +LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft @@ -139,13 +139,13 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast:: @ 81F9440 waitmovement 0 return -LittlerootTown_MaysHouse_2F_Movement_MayEnters: @ 81F946F +LittlerootTown_MaysHouse_2F_Movement_MayEnters: walk_down walk_down walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth: @ 81F9473 +LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth: walk_right walk_right walk_down @@ -153,7 +153,7 @@ LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth: @ 81F9473 walk_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth: @ 81F9479 +LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth: walk_up walk_up walk_up @@ -165,7 +165,7 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth: @ 81F9479 walk_in_place_fastest_up step_end -LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth: @ 81F9483 +LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth: delay_16 walk_in_place_fastest_up delay_16 @@ -175,13 +175,13 @@ LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth: @ 81F9483 walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth: @ 81F948B +LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth: walk_right walk_right walk_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth: @ 81F948F +LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth: walk_up walk_in_place_fastest_right walk_right @@ -191,7 +191,7 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth: @ 81F948F walk_in_place_fastest_up step_end -LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth: @ 81F9497 +LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth: delay_16 walk_in_place_fastest_up delay_16 @@ -199,7 +199,7 @@ LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth: @ 81F9497 walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest: @ 81F949D +LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest: walk_right walk_right walk_right @@ -208,7 +208,7 @@ LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest: @ 81F949D walk_in_place_fastest_down step_end -LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest: @ 81F94A4 +LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest: walk_up walk_right walk_right @@ -216,20 +216,20 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest: @ 81F94A4 step_end @ Unused, the player is already facing this direction so its unneeded -LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayWest: @ 81F94A9 +LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayWest: delay_16 delay_16 walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast: @ 81F94AD +LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast: walk_right walk_right walk_down walk_in_place_fastest_right step_end -LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast: @ 81F94B2 +LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast: walk_up walk_up walk_right @@ -240,7 +240,7 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast: @ 81F94B2 walk_in_place_fastest_up step_end -LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast: @ 81F94BB +LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast: delay_16 walk_in_place_fastest_up delay_16 @@ -248,7 +248,7 @@ LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast: @ 81F94BB walk_in_place_fastest_right step_end -RivalsHouse_2F_EventScript_Rival:: @ 81F94C1 +RivalsHouse_2F_EventScript_Rival:: lockall goto_if_set FLAG_MET_RIVAL_LILYCOVE, RivalsHouse_2F_EventScript_RivalPostLilycove checkplayergender @@ -258,17 +258,17 @@ RivalsHouse_2F_EventScript_Rival:: @ 81F94C1 goto_if_eq RivalsHouse_2F_EventScript_Brendan end -RivalsHouse_2F_EventScript_May:: @ 81F94E3 +RivalsHouse_2F_EventScript_May:: msgbox RivalsHouse_2F_Text_MayGettingReady, MSGBOX_DEFAULT releaseall end -RivalsHouse_2F_EventScript_Brendan:: @ 81F94ED +RivalsHouse_2F_EventScript_Brendan:: msgbox RivalsHouse_2F_Text_BrendanGettingReady, MSGBOX_DEFAULT releaseall end -RivalsHouse_2F_EventScript_RivalPostLilycove:: @ 81F94F7 +RivalsHouse_2F_EventScript_RivalPostLilycove:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 checkplayergender @@ -280,25 +280,25 @@ RivalsHouse_2F_EventScript_RivalPostLilycove:: @ 81F94F7 releaseall end -RivalsHouse_2F_EventScript_MayPostLilycove:: @ 81F951D +RivalsHouse_2F_EventScript_MayPostLilycove:: goto_if_set FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE, RivalsHouse_2F_EventScript_MayWhereShouldIGoNext msgbox RivalsHouse_2F_Text_MayJustCheckingMyPokedex, MSGBOX_DEFAULT return -RivalsHouse_2F_EventScript_BrendanPostLilycove:: @ 81F952F +RivalsHouse_2F_EventScript_BrendanPostLilycove:: goto_if_set FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE, RivalsHouse_2F_EventScript_BrendanWhereShouldIGoNext msgbox RivalsHouse_2F_Text_BrendanJustCheckingMyPokedex, MSGBOX_DEFAULT return -RivalsHouse_2F_EventScript_MayWhereShouldIGoNext:: @ 81F9541 +RivalsHouse_2F_EventScript_MayWhereShouldIGoNext:: msgbox RivalsHouse_2F_Text_MayWhereShouldIGoNext, MSGBOX_DEFAULT return -RivalsHouse_2F_EventScript_BrendanWhereShouldIGoNext:: @ 81F954A +RivalsHouse_2F_EventScript_BrendanWhereShouldIGoNext:: msgbox RivalsHouse_2F_Text_BrendanWhereShouldIGoNext, MSGBOX_DEFAULT return -LittlerootTown_MaysHouse_2F_EventScript_PC:: @ 81F9553 +LittlerootTown_MaysHouse_2F_EventScript_PC:: lockall checkplayergender compare VAR_RESULT, MALE @@ -307,12 +307,12 @@ LittlerootTown_MaysHouse_2F_EventScript_PC:: @ 81F9553 goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC end -LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC:: @ 81F956C +LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC:: msgbox gText_PokemonTrainerSchoolEmail, MSGBOX_DEFAULT releaseall end -LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC:: @ 81F9576 +LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC:: setvar VAR_0x8004, 2 special DoPCTurnOnEffect playse SE_PC_ON @@ -322,14 +322,14 @@ LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC:: @ 81F9576 releaseall end -LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC:: @ 81F958F +LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC:: setvar VAR_0x8004, 2 playse SE_PC_OFF special DoPCTurnOffEffect releaseall end -RivalsHouse_2F_Text_MayWhoAreYou: @ 81F959C +RivalsHouse_2F_Text_MayWhoAreYou: .string "Huh?\n" .string "Who… Who are you?\p" .string "… … … … … … … …\n" @@ -353,11 +353,11 @@ RivalsHouse_2F_Text_MayWhoAreYou: @ 81F959C .string "some wild POKéMON!\p" .string "{PLAYER}{KUN}, I'll catch you later!$" -RivalsHouse_2F_Text_MayGettingReady: @ 81F978A +RivalsHouse_2F_Text_MayGettingReady: .string "POKéMON fully restored!\n" .string "Items ready, and…$" -RivalsHouse_2F_Text_BrendanWhoAreYou: @ 81F97B4 +RivalsHouse_2F_Text_BrendanWhoAreYou: .string "Hey!\n" .string "You…\p" .string "Who are you?\p" @@ -377,15 +377,15 @@ RivalsHouse_2F_Text_BrendanWhoAreYou: @ 81F97B4 .string "some wild POKéMON.\p" .string "Some other time, okay?$" -RivalsHouse_2F_Text_BrendanGettingReady: @ 81F9962 +RivalsHouse_2F_Text_BrendanGettingReady: .string "POKéMON fully restored…\n" .string "Items all packed, and…$" -RivalsHouse_2F_Text_ItsRivalsPokeBall: @ 81F9991 +RivalsHouse_2F_Text_ItsRivalsPokeBall: .string "It's {RIVAL}'s POKé BALL!\p" .string "Better leave it right where it is.$" -RivalsHouse_2F_Text_MayJustCheckingMyPokedex: @ 81F99C9 +RivalsHouse_2F_Text_MayJustCheckingMyPokedex: .string "MAY: {PLAYER}{KUN}!\p" .string "I was just checking my POKéDEX.\p" .string "There's still a lot of POKéMON that\n" @@ -395,13 +395,13 @@ RivalsHouse_2F_Text_MayJustCheckingMyPokedex: @ 81F99C9 .string "I wonder where I should go catch\n" .string "some POKéMON next?$" -RivalsHouse_2F_Text_MayWhereShouldIGoNext: @ 81F9A9E +RivalsHouse_2F_Text_MayWhereShouldIGoNext: .string "MAY: I wonder where I should go catch\n" .string "some POKéMON next?\p" .string "Wouldn't it be funny if we ran into each\n" .string "other, {PLAYER}{KUN}?$" -RivalsHouse_2F_Text_BrendanJustCheckingMyPokedex: @ 81F9B0D +RivalsHouse_2F_Text_BrendanJustCheckingMyPokedex: .string "BRENDAN: Hey, it's {PLAYER}.\p" .string "I was just checking out my POKéDEX.\p" .string "There are still many POKéMON that\n" @@ -410,7 +410,7 @@ RivalsHouse_2F_Text_BrendanJustCheckingMyPokedex: @ 81F9B0D .string "Checking this POKéDEX out gives me\n" .string "the urge to hit the road again.$" -RivalsHouse_2F_Text_BrendanWhereShouldIGoNext: @ 81F9BE7 +RivalsHouse_2F_Text_BrendanWhereShouldIGoNext: .string "BRENDAN: I'm having a hard time deciding\n" .string "where I should catch POKéMON next.\p" .string "Hey, {PLAYER}, if I see you while I'm out\n" diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index bc03be7b2f1a..2bff65b31339 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -5,7 +5,7 @@ .set LOCALID_BALL_TOTODILE, 5 .set LOCALID_BALL_CHIKORITA, 6 -LittlerootTown_ProfessorBirchsLab_MapScripts:: @ 81F9C91 +LittlerootTown_ProfessorBirchsLab_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_ProfessorBirchsLab_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LittlerootTown_ProfessorBirchsLab_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, LittlerootTown_ProfessorBirchsLab_OnFrame @@ -26,7 +26,7 @@ LittlerootTown_ProfessorBirchsLab_MapScripts:: @ 81F9C91 @ 4: Defeated rival on Route 103 @ 5: Received pokedex -LittlerootTown_ProfessorBirchsLab_OnTransition: @ 81F9CA1 +LittlerootTown_ProfessorBirchsLab_OnTransition: call Common_EventScript_SetupRivalGfxId call ProfBirch_EventScript_UpdateLocation compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 @@ -37,7 +37,7 @@ LittlerootTown_ProfessorBirchsLab_OnTransition: @ 81F9CA1 goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter end -LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter:: @ 81F9CCD +LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter:: specialvar VAR_RESULT, HasAllHoennMons compare VAR_RESULT, TRUE goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter @@ -45,21 +45,21 @@ LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter:: @ 81F9 setobjectxyperm LOCALID_RIVAL, 5, 10 end -LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter:: @ 81F9CE9 +LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter:: setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 4 goto LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout -LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout:: @ 81F9CF3 +LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout:: setmaplayoutindex LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB_WITH_TABLE end -LittlerootTown_ProfessorBirchsLab_EventScript_SetAfterJohtoStarterLayout:: @ 81F9CF7 +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 end -LittlerootTown_ProfessorBirchsLab_OnWarp: @ 81F9D06 +LittlerootTown_ProfessorBirchsLab_OnWarp: map_script_2 VAR_BIRCH_LAB_STATE, 2, LittlerootTown_ProfessorBirchsLab_EventScript_SetPlayerPosForReceiveStarter map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade @@ -69,11 +69,11 @@ LittlerootTown_ProfessorBirchsLab_OnWarp: @ 81F9D06 map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5, LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForJohtoStarters .2byte 0 -LittlerootTown_ProfessorBirchsLab_EventScript_SetPlayerPosForReceiveStarter:: @ 81F9D40 +LittlerootTown_ProfessorBirchsLab_EventScript_SetPlayerPosForReceiveStarter:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade:: @ 81F9D45 +LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH addobject LOCALID_BIRCH addobject LOCALID_RIVAL @@ -85,11 +85,11 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade:: @ 81F9 setobjectxy LOCALID_AIDE, 10, 10 end -LittlerootTown_ProfessorBirchsLab_EventScript_AddRivalObject:: @ 81F9D71 +LittlerootTown_ProfessorBirchsLab_EventScript_AddRivalObject:: addobject LOCALID_RIVAL end -LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForJohtoStarters:: @ 81F9D75 +LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForJohtoStarters:: addobject LOCALID_BALL_CYNDAQUIL addobject LOCALID_BALL_TOTODILE addobject LOCALID_BALL_CHIKORITA @@ -106,7 +106,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForJohtoStarters:: @ 8 setobjectxy LOCALID_RIVAL, 5, 5 end -LittlerootTown_ProfessorBirchsLab_OnFrame: @ 81F9DB9 +LittlerootTown_ProfessorBirchsLab_OnFrame: map_script_2 VAR_BIRCH_LAB_STATE, 2, LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent map_script_2 VAR_BIRCH_LAB_STATE, 4, LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedexEvent map_script_2 VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1, LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex @@ -115,7 +115,7 @@ LittlerootTown_ProfessorBirchsLab_OnFrame: @ 81F9DB9 @ The starter is technically given prior to this on Route 101 by special ChooseStarter @ This is just where the game tells you its yours and lets you nickname it -LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent:: @ 81F9DDB +LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent:: lockall bufferleadmonspeciesname 0 message LittlerootTown_ProfessorBirchsLab_Text_LikeYouToHavePokemon @@ -129,13 +129,13 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent:: @ 81F9DDB goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival end -LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter:: @ 81F9E07 +LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter:: setvar VAR_0x8004, 0 call Common_EventScript_NameReceivedPartyMon goto LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival end -LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival:: @ 81F9E17 +LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MightBeGoodIdeaToGoSeeRival, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival @@ -143,14 +143,14 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival:: @ 81F9E17 goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival end -LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival:: @ 81F9E36 +LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival:: msgbox LittlerootTown_ProfessorBirchsLab_Text_GetRivalToTeachYou, MSGBOX_DEFAULT clearflag FLAG_HIDE_ROUTE_101_BOY setvar VAR_BIRCH_LAB_STATE, 3 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival:: @ 81F9E48 +LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival:: msgbox LittlerootTown_ProfessorBirchsLab_Text_DontBeThatWay, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival @@ -158,14 +158,14 @@ LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival:: @ 81F9E48 goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival end -LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedexEvent:: @ 81F9E67 +LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedexEvent:: lockall applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex waitmovement 0 goto LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex end -LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex: @ 81F9E78 +LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex: walk_up walk_up walk_up @@ -175,7 +175,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex: @ 81F9E78 walk_up step_end -LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: @ 81F9E80 +LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: lockall delay 30 msgbox LittlerootTown_ProfessorBirchsLab_Text_OtherRegionsUpgradeToNational, MSGBOX_DEFAULT @@ -224,17 +224,17 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: @ 81F9E80 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_MayUpgradeComment:: @ 81F9F32 +LittlerootTown_ProfessorBirchsLab_EventScript_MayUpgradeComment:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayUpgradeSoCool, MSGBOX_DEFAULT closemessage return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanUpgradeComment:: @ 81F9F3C +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanUpgradeComment:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanYouCanThankMe, MSGBOX_DEFAULT closemessage return -LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes: @ 81F9F46 +LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes: walk_left walk_in_place_fastest_down delay_16 @@ -254,7 +254,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes: @ 81F9F46 walk_in_place_fastest_up step_end -LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex: @ 81F9F58 +LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex: walk_left walk_left walk_left @@ -266,7 +266,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex: @ 81F9F58 walk_in_place_fastest_down step_end -LittlerootTown_ProfessorBirchsLab_EventScript_ChooseJohtoStarter:: @ 81F9F62 +LittlerootTown_ProfessorBirchsLab_EventScript_ChooseJohtoStarter:: lockall applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter waitmovement 0 @@ -275,7 +275,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ChooseJohtoStarter:: @ 81F9F62 releaseall end -LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter: @ 81F9F7C +LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter: walk_up walk_up walk_up @@ -285,7 +285,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter: @ 81F9 walk_up step_end -LittlerootTown_ProfessorBirchsLab_EventScript_Aide:: @ 81F9F84 +LittlerootTown_ProfessorBirchsLab_EventScript_Aide:: lock faceplayer compare VAR_BIRCH_LAB_STATE, 3 @@ -296,17 +296,17 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Aide:: @ 81F9F84 release end -LittlerootTown_ProfessorBirchsLab_EventScript_AideAlreadyMet:: @ 81F9FA7 +LittlerootTown_ProfessorBirchsLab_EventScript_AideAlreadyMet:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BirchIsntOneForDeskWork, MSGBOX_DEFAULT release end -LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter:: @ 81F9FB1 +LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BirchEnjoysRivalsHelpToo, MSGBOX_DEFAULT release end -LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil:: @ 81F9FBB +LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter @@ -319,7 +319,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil:: @ 81F9FBB goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil end -LittlerootTown_ProfessorBirchsLab_EventScript_Totodile:: @ 81F9FEF +LittlerootTown_ProfessorBirchsLab_EventScript_Totodile:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter @@ -332,7 +332,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Totodile:: @ 81F9FEF goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile end -LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita:: @ 81FA023 +LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter @@ -345,18 +345,18 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita:: @ 81FA023 goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita end -LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter:: @ 81FA057 +LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BetterLeaveOthersAlone, MSGBOX_DEFAULT releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime:: @ 81FA061 +LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime:: hidemonpic msgbox LittlerootTown_ProfessorBirchsLab_Text_TakeYourTimeAllInvaluable, MSGBOX_DEFAULT releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: @ 81FA06C +LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: bufferspeciesname 0, SPECIES_CYNDAQUIL setvar VAR_TEMP_1, SPECIES_CYNDAQUIL givemon SPECIES_CYNDAQUIL, 5, ITEM_NONE @@ -368,7 +368,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: @ 81FA06C goto Common_EventScript_NoMoreRoomForPokemon end -LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty:: @ 81FA0A1 +LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CYNDAQUIL msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -379,7 +379,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty:: @ 81FA0A1 goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil end -LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC:: @ 81FA0CC +LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CYNDAQUIL msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -389,19 +389,19 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC:: @ 81FA0CC goto LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC end -LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC:: @ 81FA0F2 +LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC:: call Common_EventScript_TransferredToPC goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil end -LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil:: @ 81FA0FD +LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil:: hidemonpic msgbox LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting, MSGBOX_DEFAULT setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: @ 81FA10D +LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: bufferspeciesname 0, SPECIES_TOTODILE setvar VAR_TEMP_1, SPECIES_TOTODILE givemon SPECIES_TOTODILE, 5, ITEM_NONE @@ -413,7 +413,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: @ 81FA10D goto Common_EventScript_NoMoreRoomForPokemon end -LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty:: @ 81FA142 +LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_TOTODILE msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -424,7 +424,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty:: @ 81FA142 goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile end -LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC:: @ 81FA16D +LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_TOTODILE msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -434,19 +434,19 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC:: @ 81FA16D goto LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC end -LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC:: @ 81FA193 +LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC:: call Common_EventScript_TransferredToPC goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile end -LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile:: @ 81FA19E +LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile:: hidemonpic msgbox LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting, MSGBOX_DEFAULT setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: @ 81FA1AE +LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: bufferspeciesname 0, SPECIES_CHIKORITA setvar VAR_TEMP_1, SPECIES_CHIKORITA givemon SPECIES_CHIKORITA, 5, ITEM_NONE @@ -458,7 +458,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: @ 81FA1AE goto Common_EventScript_NoMoreRoomForPokemon end -LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty:: @ 81FA1E3 +LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CHIKORITA msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -469,7 +469,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty:: @ 81FA1E3 goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita end -LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC:: @ 81FA20E +LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CHIKORITA msgbox gText_NicknameThisPokemon, MSGBOX_YESNO @@ -479,26 +479,26 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC:: @ 81FA20E goto LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC end -LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC:: @ 81FA234 +LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC:: call Common_EventScript_TransferredToPC goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita end -LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita:: @ 81FA23F +LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita:: hidemonpic msgbox LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting, MSGBOX_DEFAULT setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter:: @ 81FA24F +LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter:: playfanfare MUS_OBTAIN_ITEM message LittlerootTown_ProfessorBirchsLab_Text_ReceivedJohtoStarter waitmessage waitfanfare return -LittlerootTown_ProfessorBirchsLab_EventScript_Birch:: @ 81FA25A +LittlerootTown_ProfessorBirchsLab_EventScript_Birch:: lock faceplayer compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5 @@ -510,17 +510,17 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Birch:: @ 81FA25A goto LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister end -LittlerootTown_ProfessorBirchsLab_EventScript_CanHaveAnyOneOfRarePokemon:: @ 81FA28A +LittlerootTown_ProfessorBirchsLab_EventScript_CanHaveAnyOneOfRarePokemon:: msgbox LittlerootTown_ProfessorBirchsLab_Text_CanHaveAnyOneOfRarePokemon, MSGBOX_DEFAULT release end -LittlerootTown_ProfessorBirchsLab_EventScript_GrassyPatchWaiting:: @ 81FA294 +LittlerootTown_ProfessorBirchsLab_EventScript_GrassyPatchWaiting:: msgbox LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting2, MSGBOX_DEFAULT release end -LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister:: @ 81FA29E +LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister:: goto_if_unset FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380, ProfBirch_EventScript_RatePokedexOrRegister compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3 goto_if_eq ProfBirch_EventScript_RatePokedexOrRegister @@ -532,7 +532,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister:: @ 81FA2 release end -EventScript_RegisterProfBirch:: @ 81FA2D2 +EventScript_RegisterProfBirch:: msgbox MatchCall_Text_BirchRegisterCall, MSGBOX_DEFAULT closemessage delay 30 @@ -546,7 +546,7 @@ EventScript_RegisterProfBirch:: @ 81FA2D2 release end -LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: @ 81FA2F8 +LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: msgbox LittlerootTown_ProfessorBirchsLab_Text_HeardYouBeatRivalTakePokedex, MSGBOX_DEFAULT call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivePokedex msgbox LittlerootTown_ProfessorBirchsLab_Text_ExplainPokedex, MSGBOX_DEFAULT @@ -568,7 +568,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: @ 81FA2F8 releaseall end -LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls:: @ 81FA352 +LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayGotPokedexTooTakeThese, MSGBOX_DEFAULT giveitem ITEM_POKE_BALL, 5 compare VAR_RESULT, FALSE @@ -577,7 +577,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls:: @ 81FA352 setvar VAR_RESULT, 0 return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls:: @ 81FA37F +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanGotPokedexTooTakeThese, MSGBOX_DEFAULT giveitem ITEM_POKE_BALL, 5 compare VAR_RESULT, FALSE @@ -586,7 +586,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls:: @ 81FA37F setvar VAR_RESULT, 1 return -LittlerootTown_ProfessorBirchsLab_EventScript_ReceivePokedex:: @ 81FA3AC +LittlerootTown_ProfessorBirchsLab_EventScript_ReceivePokedex:: playfanfare MUS_OBTAIN_ITEM message LittlerootTown_ProfessorBirchsLab_Text_ReceivedPokedex waitfanfare @@ -596,29 +596,29 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivePokedex:: @ 81FA3AC setvar VAR_CABLE_CLUB_TUTORIAL_STATE, 1 return -LittlerootTown_ProfessorBirchsLab_EventScript_PokemonAwait:: @ 81FA3C4 +LittlerootTown_ProfessorBirchsLab_EventScript_PokemonAwait:: msgbox LittlerootTown_ProfessorBirchsLab_Text_CountlessPokemonAwait, MSGBOX_DEFAULT release end -LittlerootTown_ProfessorBirchsLab_EventScript_MayNoRoomForPokeBalls:: @ 81FA3CE +LittlerootTown_ProfessorBirchsLab_EventScript_MayNoRoomForPokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_OhYourBagsFull, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanNoRoomForPokeBalls:: @ 81FA3D7 +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanNoRoomForPokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_HeyYourBagsFull, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer: @ 81FA3E0 +LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer: walk_down walk_in_place_fastest_left step_end -LittlerootTown_ProfessorBirchsLab_EventScript_Machine:: @ 81FA3E3 +LittlerootTown_ProfessorBirchsLab_EventScript_Machine:: msgbox LittlerootTown_ProfessorBirchsLab_Text_SeriousLookingMachine, MSGBOX_SIGN end -LittlerootTown_ProfessorBirchsLab_EventScript_Rival:: @ 81FA3EC +LittlerootTown_ProfessorBirchsLab_EventScript_Rival:: lock faceplayer compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5 @@ -635,15 +635,15 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Rival:: @ 81FA3EC release end -LittlerootTown_ProfessorBirchsLab_EventScript_MayWhereShouldIGoNext:: @ 81FA428 +LittlerootTown_ProfessorBirchsLab_EventScript_MayWhereShouldIGoNext:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayWhereShouldIGoNext, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanWhereShouldIGoNext:: @ 81FA431 +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanWhereShouldIGoNext:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanWhereShouldIGoNext, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans:: @ 81FA43A +LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans:: checkplayergender compare VAR_RESULT, MALE call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayWhatNextImStayingHere @@ -652,15 +652,15 @@ LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans:: @ 81FA43A release end -LittlerootTown_ProfessorBirchsLab_EventScript_MayWhatNextImStayingHere:: @ 81FA453 +LittlerootTown_ProfessorBirchsLab_EventScript_MayWhatNextImStayingHere:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayWhatNextImStayingHere, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanPreferCollectingSlowly: @ 81FA45C +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanPreferCollectingSlowly: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanPreferCollectingSlowly, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier:: @ 81FA465 +LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier:: checkplayergender compare VAR_RESULT, MALE call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayHaveYouGoneToBattleFrontier @@ -669,15 +669,15 @@ LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier:: release end -LittlerootTown_ProfessorBirchsLab_EventScript_MayHaveYouGoneToBattleFrontier:: @ 81FA47E +LittlerootTown_ProfessorBirchsLab_EventScript_MayHaveYouGoneToBattleFrontier:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayHaveYouGoneToBattleFrontier, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanHaveYouGoneToBattleFrontier:: @ 81FA487 +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanHaveYouGoneToBattleFrontier:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanHaveYouGoneToBattleFrontier, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork:: @ 81FA490 +LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork:: checkplayergender compare VAR_RESULT, MALE call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayTakeBreakFromFieldwork @@ -686,27 +686,27 @@ LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork:: @ 81 release end -LittlerootTown_ProfessorBirchsLab_EventScript_MayTakeBreakFromFieldwork:: @ 81FA4A9 +LittlerootTown_ProfessorBirchsLab_EventScript_MayTakeBreakFromFieldwork:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayTakeBreakFromFieldwork, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_BrendanTakeBreakFromFieldwork:: @ 81FA4B2 +LittlerootTown_ProfessorBirchsLab_EventScript_BrendanTakeBreakFromFieldwork:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanTakeBreakFromFieldwork, MSGBOX_DEFAULT return -LittlerootTown_ProfessorBirchsLab_EventScript_PC:: @ 81FA4BB +LittlerootTown_ProfessorBirchsLab_EventScript_PC:: msgbox LittlerootTown_ProfessorBirchsLab_Text_PCUsedForResearch, MSGBOX_SIGN end -LittlerootTown_ProfessorBirchsLab_EventScript_Bookshelf:: @ 81FA4C4 +LittlerootTown_ProfessorBirchsLab_EventScript_Bookshelf:: msgbox LittlerootTown_ProfessorBirchsLab_Text_CrammedWithBooksOnPokemon, MSGBOX_SIGN end -LittlerootTown_ProfessorBirchsLab_EventScript_Book:: @ 81FA4CD +LittlerootTown_ProfessorBirchsLab_EventScript_Book:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BookTooHardToRead, MSGBOX_SIGN end -LittlerootTown_ProfessorBirchsLab_EventScript_ScottAboardSSTidalCall:: @ 81FA4D6 +LittlerootTown_ProfessorBirchsLab_EventScript_ScottAboardSSTidalCall:: lockall pokenavcall LittlerootTown_ProfessorBirchsLab_Text_ScottAboardSSTidalCall waitmessage @@ -714,7 +714,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ScottAboardSSTidalCall:: @ 81FA4D6 releaseall end -LittlerootTown_ProfessorBirchsLab_Text_BirchAwayOnFieldwork: @ 81FA4E2 +LittlerootTown_ProfessorBirchsLab_Text_BirchAwayOnFieldwork: .string "Hunh? PROF. BIRCH?\p" .string "The PROF's away on fieldwork.\n" .string "Ergo, he isn't here.\p" @@ -727,19 +727,19 @@ LittlerootTown_ProfessorBirchsLab_Text_BirchAwayOnFieldwork: @ 81FA4E2 .string "rather go outside and experience\l" .string "things than read about them here.$" -LittlerootTown_ProfessorBirchsLab_Text_BirchIsntOneForDeskWork: @ 81FA641 +LittlerootTown_ProfessorBirchsLab_Text_BirchIsntOneForDeskWork: .string "The PROF isn't one for doing desk work.\n" .string "He's the type of person who would\l" .string "rather go outside and experience\l" .string "things than read about them here.$" -LittlerootTown_ProfessorBirchsLab_Text_BirchEnjoysRivalsHelpToo: @ 81FA6CE +LittlerootTown_ProfessorBirchsLab_Text_BirchEnjoysRivalsHelpToo: .string "PROF. BIRCH is studying the habitats\n" .string "and distribution of POKéMON.\p" .string "The PROF enjoys {RIVAL}'s help, too.\n" .string "There's a lot of love there.$" -LittlerootTown_ProfessorBirchsLab_Text_LikeYouToHavePokemon: @ 81FA74D +LittlerootTown_ProfessorBirchsLab_Text_LikeYouToHavePokemon: .string "PROF. BIRCH: So, {PLAYER}{KUN}.\p" .string "I've heard so much about you from\n" .string "your father.\p" @@ -754,11 +754,11 @@ LittlerootTown_ProfessorBirchsLab_Text_LikeYouToHavePokemon: @ 81FA74D .string "used earlier.\p" .string "{PLAYER} received the {STR_VAR_1}!$" -LittlerootTown_ProfessorBirchsLab_Text_WhyNotGiveNicknameToMon: @ 81FA8B1 +LittlerootTown_ProfessorBirchsLab_Text_WhyNotGiveNicknameToMon: .string "PROF. BIRCH: While you're at it, why not\n" .string "give a nickname to that {STR_VAR_1}?$" -LittlerootTown_ProfessorBirchsLab_Text_MightBeGoodIdeaToGoSeeRival: @ 81FA8F6 +LittlerootTown_ProfessorBirchsLab_Text_MightBeGoodIdeaToGoSeeRival: .string "PROF. BIRCH: If you work at POKéMON\n" .string "and gain experience, I think you'll make\l" .string "an extremely good TRAINER.\p" @@ -767,17 +767,17 @@ LittlerootTown_ProfessorBirchsLab_Text_MightBeGoodIdeaToGoSeeRival: @ 81FA8F6 .string "{PLAYER}{KUN}, don't you think it might be\n" .string "a good idea to go see {RIVAL}?$" -LittlerootTown_ProfessorBirchsLab_Text_GetRivalToTeachYou: @ 81FA9D5 +LittlerootTown_ProfessorBirchsLab_Text_GetRivalToTeachYou: .string "PROF. BIRCH: Great!\n" .string "{RIVAL} should be happy, too.\p" .string "Get {RIVAL} to teach you what it\n" .string "means to be a TRAINER.$" -LittlerootTown_ProfessorBirchsLab_Text_DontBeThatWay: @ 81FAA35 +LittlerootTown_ProfessorBirchsLab_Text_DontBeThatWay: .string "PROF. BIRCH: Oh, don't be that way.\n" .string "You should go meet my kid.$" -LittlerootTown_ProfessorBirchsLab_Text_BirchRivalGoneHome: @ 81FAA74 +LittlerootTown_ProfessorBirchsLab_Text_BirchRivalGoneHome: .string "PROF. BIRCH: {RIVAL}?\n" .string "Gone home, I think.\p" .string "Or maybe that kid's scrabbling around\n" @@ -785,7 +785,7 @@ LittlerootTown_ProfessorBirchsLab_Text_BirchRivalGoneHome: @ 81FAA74 .string "If you or your POKéMON get tired,\n" .string "you should get some rest at home.$" -LittlerootTown_ProfessorBirchsLab_Text_HeardYouBeatRivalTakePokedex: @ 81FAB22 +LittlerootTown_ProfessorBirchsLab_Text_HeardYouBeatRivalTakePokedex: .string "PROF. BIRCH: Oh, hi, {PLAYER}{KUN}!\p" .string "I heard you beat {RIVAL} on\n" .string "your first try. That's excellent!\p" @@ -797,10 +797,10 @@ LittlerootTown_ProfessorBirchsLab_Text_HeardYouBeatRivalTakePokedex: @ 81FAB22 .string "research, but I think you should have\l" .string "this POKéDEX.$" -LittlerootTown_ProfessorBirchsLab_Text_ReceivedPokedex: @ 81FAC32 +LittlerootTown_ProfessorBirchsLab_Text_ReceivedPokedex: .string "{PLAYER} received the POKéDEX!$" -LittlerootTown_ProfessorBirchsLab_Text_ExplainPokedex: @ 81FAC4B +LittlerootTown_ProfessorBirchsLab_Text_ExplainPokedex: .string "PROF. BIRCH: The POKéDEX is a high-tech\n" .string "tool that automatically makes a record\l" .string "of any POKéMON you meet or catch.\p" @@ -811,19 +811,19 @@ LittlerootTown_ProfessorBirchsLab_Text_ExplainPokedex: @ 81FAC4B .string "why, {RIVAL} looks for me while I'm out\l" .string "doing fieldwork, and shows me.$" -LittlerootTown_ProfessorBirchsLab_Text_CountlessPokemonAwait: @ 81FAD6F +LittlerootTown_ProfessorBirchsLab_Text_CountlessPokemonAwait: .string "PROF. BIRCH: Countless POKéMON\n" .string "await you!\p" .string "Argh, I'm getting the itch to get out\n" .string "and do fieldwork again!$" -LittlerootTown_ProfessorBirchsLab_Text_MayGotPokedexTooTakeThese: @ 81FADD7 +LittlerootTown_ProfessorBirchsLab_Text_MayGotPokedexTooTakeThese: .string "MAY: Oh, wow, {PLAYER}{KUN}!\n" .string "You got a POKéDEX, too!\p" .string "That's great! Just like me!\n" .string "I've got something for you, too!$" -LittlerootTown_ProfessorBirchsLab_Text_CatchCutePokemonWithPokeBalls: @ 81FAE40 +LittlerootTown_ProfessorBirchsLab_Text_CatchCutePokemonWithPokeBalls: .string "MAY: It's fun if you can get a lot of\n" .string "POKéMON!\p" .string "I'm going to look all over the place\n" @@ -831,20 +831,20 @@ LittlerootTown_ProfessorBirchsLab_Text_CatchCutePokemonWithPokeBalls: @ 81FAE40 .string "If I find any cute POKéMON, I'll catch\n" .string "them with POKé BALLS!$" -LittlerootTown_ProfessorBirchsLab_Text_OhYourBagsFull: @ 81FAEF3 +LittlerootTown_ProfessorBirchsLab_Text_OhYourBagsFull: .string "Oh? Your BAG's full.$" -LittlerootTown_ProfessorBirchsLab_Text_MayWhereShouldIGoNext: @ 81FAF08 +LittlerootTown_ProfessorBirchsLab_Text_MayWhereShouldIGoNext: .string "MAY: I wonder where I should go look\n" .string "for POKéMON next?$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanGotPokedexTooTakeThese: @ 81FAF3F +LittlerootTown_ProfessorBirchsLab_Text_BrendanGotPokedexTooTakeThese: .string "BRENDAN: Huh…\n" .string "So you got a POKéDEX, too.\p" .string "Well then, here.\n" .string "I'll give you these.$" -LittlerootTown_ProfessorBirchsLab_Text_CatchCoolPokemonWithPokeBalls: @ 81FAF8E +LittlerootTown_ProfessorBirchsLab_Text_CatchCoolPokemonWithPokeBalls: .string "BRENDAN: You know it's more fun to\n" .string "have a whole bunch of POKéMON.\p" .string "I'm going to explore all over the place\n" @@ -852,28 +852,28 @@ LittlerootTown_ProfessorBirchsLab_Text_CatchCoolPokemonWithPokeBalls: @ 81FAF8E .string "If I find any cool POKéMON, you bet\n" .string "I'll try to get them with POKé BALLS.$" -LittlerootTown_ProfessorBirchsLab_Text_HeyYourBagsFull: @ 81FB05D +LittlerootTown_ProfessorBirchsLab_Text_HeyYourBagsFull: .string "Hey, your BAG's full.$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanWhereShouldIGoNext: @ 81FB073 +LittlerootTown_ProfessorBirchsLab_Text_BrendanWhereShouldIGoNext: .string "BRENDAN: Where should I look for\n" .string "POKéMON next…$" -LittlerootTown_ProfessorBirchsLab_Text_SeriousLookingMachine: @ 81FB0A2 +LittlerootTown_ProfessorBirchsLab_Text_SeriousLookingMachine: .string "It's a serious-looking machine.\n" .string "The PROF must use this for research.$" -LittlerootTown_ProfessorBirchsLab_Text_PCUsedForResearch: @ 81FB0E7 +LittlerootTown_ProfessorBirchsLab_Text_PCUsedForResearch: .string "It's a PC used for research.\n" .string "Better not mess around with it.$" -LittlerootTown_ProfessorBirchsLab_Text_CrammedWithBooksOnPokemon: @ 81FB124 +LittlerootTown_ProfessorBirchsLab_Text_CrammedWithBooksOnPokemon: .string "It's crammed with books on POKéMON.$" -LittlerootTown_ProfessorBirchsLab_Text_BookTooHardToRead: @ 81FB148 +LittlerootTown_ProfessorBirchsLab_Text_BookTooHardToRead: .string "It's a book that's too hard to read.$" -LittlerootTown_ProfessorBirchsLab_Text_OtherRegionsUpgradeToNational: @ 81FB16D +LittlerootTown_ProfessorBirchsLab_Text_OtherRegionsUpgradeToNational: .string "PROF. BIRCH: Now…\p" .string "{PLAYER}{KUN} and {RIVAL}, I've had the two\n" .string "of you help me study POKéMON.\p" @@ -890,28 +890,28 @@ LittlerootTown_ProfessorBirchsLab_Text_OtherRegionsUpgradeToNational: @ 81FB16D .string "the NATIONAL Mode.\p" .string "Here, let me see your POKéDEX units.$" -LittlerootTown_ProfessorBirchsLab_Text_MayUpgradeSoCool: @ 81FB30F +LittlerootTown_ProfessorBirchsLab_Text_MayUpgradeSoCool: .string "MAY: Eheheh!\p" .string "It's so cool that even my POKéDEX\n" .string "is getting updated!\p" .string "It's because you went out and caught\n" .string "so many POKéMON, {PLAYER}{KUN}!$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanYouCanThankMe: @ 81FB38E +LittlerootTown_ProfessorBirchsLab_Text_BrendanYouCanThankMe: .string "BRENDAN: I went out all over HOENN\n" .string "and checked out POKéMON.\p" .string "You can thank me for getting\n" .string "the NATIONAL Mode POKéDEX.\p" .string "Yep, you're lucky, {PLAYER}!$" -LittlerootTown_ProfessorBirchsLab_Text_OkayAllDone: @ 81FB419 +LittlerootTown_ProfessorBirchsLab_Text_OkayAllDone: .string "PROF. BIRCH: Okay, all done!$" -LittlerootTown_ProfessorBirchsLab_Text_PokedexUpgradedToNational: @ 81FB436 +LittlerootTown_ProfessorBirchsLab_Text_PokedexUpgradedToNational: .string "{PLAYER}'s POKéDEX was upgraded\n" .string "to the NATIONAL Mode!$" -LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting2: @ 81FB466 +LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting2: .string "PROF. BIRCH: But listen.\n" .string "You've become the CHAMPION,\l" .string "but your POKéMON journey isn't over.\p" @@ -920,19 +920,19 @@ LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting2: @ 81FB466 .string "Somewhere, there is a grassy patch\n" .string "that's waiting for you!$" -LittlerootTown_ProfessorBirchsLab_Text_MayTakeBreakFromFieldwork: @ 81FB528 +LittlerootTown_ProfessorBirchsLab_Text_MayTakeBreakFromFieldwork: .string "MAY: I think I'll take a short break\n" .string "from fieldwork.\p" .string "I think I'll help the PROF here for\n" .string "a while.$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanTakeBreakFromFieldwork: @ 81FB58A +LittlerootTown_ProfessorBirchsLab_Text_BrendanTakeBreakFromFieldwork: .string "BRENDAN: For the time being,\n" .string "I'm taking a break from fieldwork.\p" .string "I'll be helping out the PROF here\n" .string "for a while.$" -LittlerootTown_ProfessorBirchsLab_Text_CompletedDexChoosePokemon: @ 81FB5F9 +LittlerootTown_ProfessorBirchsLab_Text_CompletedDexChoosePokemon: .string "PROF. BIRCH: Oh, {PLAYER}{KUN}!\n" .string "Let's have a look at your POKéDEX.\p" .string "… … … … … …\n" @@ -949,50 +949,50 @@ LittlerootTown_ProfessorBirchsLab_Text_CompletedDexChoosePokemon: @ 81FB5F9 .string "You can have any one of these\n" .string "three POKéMON!$" -LittlerootTown_ProfessorBirchsLab_Text_CanHaveAnyOneOfRarePokemon: @ 81FB787 +LittlerootTown_ProfessorBirchsLab_Text_CanHaveAnyOneOfRarePokemon: .string "PROF. BIRCH: These are rare POKéMON\n" .string "only found in another region!\p" .string "You can have any one of these\n" .string "three POKéMON!$" -LittlerootTown_ProfessorBirchsLab_Text_YoullTakeCyndaquil: @ 81FB7F6 +LittlerootTown_ProfessorBirchsLab_Text_YoullTakeCyndaquil: .string "PROF. BIRCH: The FIRE POKéMON\n" .string "CYNDAQUIL caught your eye!\p" .string "You're as sharp as ever!\p" .string "So the CYNDAQUIL is your choice?$" -LittlerootTown_ProfessorBirchsLab_Text_YoullTakeTotodile: @ 81FB869 +LittlerootTown_ProfessorBirchsLab_Text_YoullTakeTotodile: .string "PROF. BIRCH: The WATER POKéMON\n" .string "TOTODILE is your choice!\p" .string "You know how to pick a good one.\p" .string "So, you'll take the TOTODILE?$" -LittlerootTown_ProfessorBirchsLab_Text_YoullTakeChikorita: @ 81FB8E0 +LittlerootTown_ProfessorBirchsLab_Text_YoullTakeChikorita: .string "PROF. BIRCH: The GRASS POKéMON\n" .string "CHIKORITA is your choice!\p" .string "You sure know what you're doing.\p" .string "So, you'll take the CHIKORITA?$" -LittlerootTown_ProfessorBirchsLab_Text_TakeYourTimeAllInvaluable: @ 81FB959 +LittlerootTown_ProfessorBirchsLab_Text_TakeYourTimeAllInvaluable: .string "PROF. BIRCH: Take your time before\n" .string "you decide.\p" .string "They're all invaluable POKéMON.$" @ Unused -LittlerootTown_ProfessorBirchsLab_Text_PickedFinePokemon: @ 81FB9A8 +LittlerootTown_ProfessorBirchsLab_Text_PickedFinePokemon: .string "PROF. BIRCH: I see!\n" .string "You picked a fine POKéMON!$" -LittlerootTown_ProfessorBirchsLab_Text_ReceivedJohtoStarter: @ 81FB9D7 +LittlerootTown_ProfessorBirchsLab_Text_ReceivedJohtoStarter: .string "{PLAYER} received the {STR_VAR_1}\n" .string "from PROF. BIRCH!$" @ Unused -LittlerootTown_ProfessorBirchsLab_Text_NicknameJohtoStarter: @ 81FB9FC +LittlerootTown_ProfessorBirchsLab_Text_NicknameJohtoStarter: .string "Want to give a nickname to\n" .string "the {STR_VAR_1} you received?$" -LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting: @ 81FBA2C +LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting: .string "PROF. BIRCH: Listen, {PLAYER}{KUN}.\n" .string "You've completed the HOENN POKéDEX,\l" .string "but your POKéMON journey isn't over.\p" @@ -1001,16 +1001,16 @@ LittlerootTown_ProfessorBirchsLab_Text_GrassyPatchWaiting: @ 81FBA2C .string "Somewhere, there is a grassy patch\n" .string "that's waiting for you!$" -LittlerootTown_ProfessorBirchsLab_Text_BetterLeaveOthersAlone: @ 81FBAF8 +LittlerootTown_ProfessorBirchsLab_Text_BetterLeaveOthersAlone: .string "You received the promised POKéMON.\n" .string "Better leave the others alone.$" @ Unused -LittlerootTown_ProfessorBirchsLab_Text_DontHaveAnyRoomForPokemon: @ 81FBB3A +LittlerootTown_ProfessorBirchsLab_Text_DontHaveAnyRoomForPokemon: .string "Oh, you don't have any room for\n" .string "this POKéMON.$" -LittlerootTown_ProfessorBirchsLab_Text_MayWhatNextImStayingHere: @ 81FBB68 +LittlerootTown_ProfessorBirchsLab_Text_MayWhatNextImStayingHere: .string "MAY: {PLAYER}{KUN}, after this…\n" .string "What are you going to do?\p" .string "Are you going to keep battling\n" @@ -1019,22 +1019,22 @@ LittlerootTown_ProfessorBirchsLab_Text_MayWhatNextImStayingHere: @ 81FBB68 .string "the NATIONAL POKéDEX?\p" .string "I'm staying here to help the PROF.$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanPreferCollectingSlowly: @ 81FBC2D +LittlerootTown_ProfessorBirchsLab_Text_BrendanPreferCollectingSlowly: .string "BRENDAN: Rather than collecting\n" .string "POKéMON, I prefer slowly and \l" .string "steadily raising the one I chose.$" -LittlerootTown_ProfessorBirchsLab_Text_MayHaveYouGoneToBattleFrontier: @ 81FBC8D +LittlerootTown_ProfessorBirchsLab_Text_MayHaveYouGoneToBattleFrontier: .string "MAY: Oh, hi, {PLAYER}{KUN}!\n" .string "Have you gone to that place,\l" .string "the BATTLE FRONTIER?$" -LittlerootTown_ProfessorBirchsLab_Text_BrendanHaveYouGoneToBattleFrontier: @ 81FBCD2 +LittlerootTown_ProfessorBirchsLab_Text_BrendanHaveYouGoneToBattleFrontier: .string "BRENDAN: Hey, {PLAYER}!\n" .string "Have you gone out to that place,\l" .string "the BATTLE FRONTIER?$" -LittlerootTown_ProfessorBirchsLab_Text_ScottAboardSSTidalCall: @ 81FBD1A +LittlerootTown_ProfessorBirchsLab_Text_ScottAboardSSTidalCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "SCOTT: Hi, hi, {PLAYER}!\n" diff --git a/data/maps/MagmaHideout_1F/scripts.inc b/data/maps/MagmaHideout_1F/scripts.inc index 7c6997ca2c9b..d4e22477e35a 100644 --- a/data/maps/MagmaHideout_1F/scripts.inc +++ b/data/maps/MagmaHideout_1F/scripts.inc @@ -1,38 +1,38 @@ -MagmaHideout_1F_MapScripts:: @ 8239880 +MagmaHideout_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MagmaHideout_1F_OnTransition .byte 0 -MagmaHideout_1F_OnTransition: @ 8239886 +MagmaHideout_1F_OnTransition: setvar VAR_JAGGED_PASS_ASH_WEATHER, 0 end -MagmaHideout_1F_EventScript_Grunt1:: @ 823988C +MagmaHideout_1F_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_1, MagmaHideout_1F_Text_Grunt1Intro, MagmaHideout_1F_Text_Grunt1Defeat msgbox MagmaHideout_1F_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_1F_EventScript_Grunt2:: @ 82398A3 +MagmaHideout_1F_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_2, MagmaHideout_1F_Text_Grunt2Intro, MagmaHideout_1F_Text_Grunt2Defeat msgbox MagmaHideout_1F_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_1F_Text_Grunt1Intro: @ 82398BA +MagmaHideout_1F_Text_Grunt1Intro: .string "When TEAM MAGMA has roll call, we get\n" .string "important guarding assignments in\l" .string "the order that we line up.\p" .string "That's why I'm stuck off in this corner.\n" .string "I'm always late to roll call!$" -MagmaHideout_1F_Text_Grunt1Defeat: @ 8239964 +MagmaHideout_1F_Text_Grunt1Defeat: .string "I'm always late for training sessions,\n" .string "too!\p" .string "I hate to say it, but I'm wimpy…$" -MagmaHideout_1F_Text_Grunt1PostBattle: @ 82399B1 +MagmaHideout_1F_Text_Grunt1PostBattle: .string "Okay, I'll try to put a little more\n" .string "effort into things from now on…$" -MagmaHideout_1F_Text_Grunt2Intro: @ 82399F5 +MagmaHideout_1F_Text_Grunt2Intro: .string "Our leader told us to dig into\n" .string "MT. CHIMNEY, so we dug and dug.\p" .string "And in the course of digging, we came\n" @@ -41,11 +41,11 @@ MagmaHideout_1F_Text_Grunt2Intro: @ 82399F5 .string "Fuhahaha!\n" .string "I'll tell you if you beat me!$" -MagmaHideout_1F_Text_Grunt2Defeat: @ 8239ABA +MagmaHideout_1F_Text_Grunt2Defeat: .string "Arrgh!\n" .string "Taken down!$" -MagmaHideout_1F_Text_Grunt2PostBattle: @ 8239ACD +MagmaHideout_1F_Text_Grunt2PostBattle: .string "I won't tell you after all.\n" .string "You'll find out when you get there!\p" .string "It'd be better if you saved surprises\n" diff --git a/data/maps/MagmaHideout_2F_1R/scripts.inc b/data/maps/MagmaHideout_2F_1R/scripts.inc index 6f117c0062b6..ab5603e4e6e1 100644 --- a/data/maps/MagmaHideout_2F_1R/scripts.inc +++ b/data/maps/MagmaHideout_2F_1R/scripts.inc @@ -1,27 +1,27 @@ -MagmaHideout_2F_1R_MapScripts:: @ 8239B50 +MagmaHideout_2F_1R_MapScripts:: .byte 0 -MagmaHideout_2F_1R_EventScript_Grunt14:: @ 8239B51 +MagmaHideout_2F_1R_EventScript_Grunt14:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_14, MagmaHideout_2F_1R_Text_Grunt14Intro, MagmaHideout_2F_1R_Text_Grunt14Defeat msgbox MagmaHideout_2F_1R_Text_Grunt14PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_1R_EventScript_Grunt3:: @ 8239B68 +MagmaHideout_2F_1R_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_3, MagmaHideout_2F_1R_Text_Grunt3Intro, MagmaHideout_2F_1R_Text_Grunt3Defeat msgbox MagmaHideout_2F_1R_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_1R_EventScript_Grunt4:: @ 8239B7F +MagmaHideout_2F_1R_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_4, MagmaHideout_2F_1R_Text_Grunt4Intro, MagmaHideout_2F_1R_Text_Grunt4Defeat msgbox MagmaHideout_2F_1R_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_1R_EventScript_Grunt5:: @ 8239B96 +MagmaHideout_2F_1R_EventScript_Grunt5:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_5, MagmaHideout_2F_1R_Text_Grunt5Intro, MagmaHideout_2F_1R_Text_Grunt5Defeat msgbox MagmaHideout_2F_1R_Text_Grunt5PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_1R_Text_Grunt14Intro: @ 8239BAD +MagmaHideout_2F_1R_Text_Grunt14Intro: .string "What, what, what?\p" .string "Only TEAM MAGMA members are supposed\n" .string "to be in here!\p" @@ -30,46 +30,46 @@ MagmaHideout_2F_1R_Text_Grunt14Intro: @ 8239BAD .string "You rouse my suspicion!\n" .string "Battle with me!$" -MagmaHideout_2F_1R_Text_Grunt14Defeat: @ 8239C4B +MagmaHideout_2F_1R_Text_Grunt14Defeat: .string "Aiyiyi…\n" .string "My pride as a TEAM MAGMA member…$" -MagmaHideout_2F_1R_Text_Grunt14PostBattle: @ 8239C74 +MagmaHideout_2F_1R_Text_Grunt14PostBattle: .string "If you suffer from chills, you should\n" .string "join TEAM MAGMA.$" -MagmaHideout_2F_1R_Text_Grunt3Intro: @ 8239CAB +MagmaHideout_2F_1R_Text_Grunt3Intro: .string "Hold it right there!\p" .string "You don't really expect me to keep\n" .string "my trap shut and let you waltz by me?$" -MagmaHideout_2F_1R_Text_Grunt3Defeat: @ 8239D09 +MagmaHideout_2F_1R_Text_Grunt3Defeat: .string "Ooh wow!\n" .string "I concede!$" -MagmaHideout_2F_1R_Text_Grunt3PostBattle: @ 8239D1D +MagmaHideout_2F_1R_Text_Grunt3PostBattle: .string "Maybe it would've been better if I did\n" .string "just let you go unchallenged…$" -MagmaHideout_2F_1R_Text_Grunt4Intro: @ 8239D62 +MagmaHideout_2F_1R_Text_Grunt4Intro: .string "Ahah!\n" .string "An intruder!$" -MagmaHideout_2F_1R_Text_Grunt4Defeat: @ 8239D75 +MagmaHideout_2F_1R_Text_Grunt4Defeat: .string "Graaah!$" -MagmaHideout_2F_1R_Text_Grunt4PostBattle: @ 8239D7D +MagmaHideout_2F_1R_Text_Grunt4PostBattle: .string "I've already lost.\p" .string "Do I really need to keep running\n" .string "around in a circle?$" -MagmaHideout_2F_1R_Text_Grunt5Intro: @ 8239DC5 +MagmaHideout_2F_1R_Text_Grunt5Intro: .string "Oh, oh!\n" .string "An intruder!$" -MagmaHideout_2F_1R_Text_Grunt5Defeat: @ 8239DDA +MagmaHideout_2F_1R_Text_Grunt5Defeat: .string "Mutter…$" -MagmaHideout_2F_1R_Text_Grunt5PostBattle: @ 8239DE2 +MagmaHideout_2F_1R_Text_Grunt5PostBattle: .string "Actually, I'm no expert at battling…$" diff --git a/data/maps/MagmaHideout_2F_2R/scripts.inc b/data/maps/MagmaHideout_2F_2R/scripts.inc index d0121f9534b7..8c7702eebf07 100644 --- a/data/maps/MagmaHideout_2F_2R/scripts.inc +++ b/data/maps/MagmaHideout_2F_2R/scripts.inc @@ -1,78 +1,78 @@ -MagmaHideout_2F_2R_MapScripts:: @ 8239E07 +MagmaHideout_2F_2R_MapScripts:: .byte 0 -MagmaHideout_2F_2R_EventScript_Grunt15:: @ 8239E08 +MagmaHideout_2F_2R_EventScript_Grunt15:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_15, MagmaHideout_2F_2R_Text_Grunt15Intro, MagmaHideout_2F_2R_Text_Grunt15Defeat msgbox MagmaHideout_2F_2R_Text_Grunt15PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_2R_EventScript_Grunt6:: @ 8239E1F +MagmaHideout_2F_2R_EventScript_Grunt6:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_6, MagmaHideout_2F_2R_Text_Grunt6Intro, MagmaHideout_2F_2R_Text_Grunt6Defeat msgbox MagmaHideout_2F_2R_Text_Grunt6PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_2R_EventScript_Grunt7:: @ 8239E36 +MagmaHideout_2F_2R_EventScript_Grunt7:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_7, MagmaHideout_2F_2R_Text_Grunt7Intro, MagmaHideout_2F_2R_Text_Grunt7Defeat msgbox MagmaHideout_2F_2R_Text_Grunt7PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_2R_EventScript_Grunt8:: @ 8239E4D +MagmaHideout_2F_2R_EventScript_Grunt8:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_8, MagmaHideout_2F_2R_Text_Grunt8Intro, MagmaHideout_2F_2R_Text_Grunt8Defeat msgbox MagmaHideout_2F_2R_Text_Grunt8PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_2F_2R_Text_Grunt15Intro: @ 8239E64 +MagmaHideout_2F_2R_Text_Grunt15Intro: .string "I don't have a bone to pick with you.\n" .string "I'm just following orders!$" -MagmaHideout_2F_2R_Text_Grunt15Defeat: @ 8239EA5 +MagmaHideout_2F_2R_Text_Grunt15Defeat: .string "I may have lost, but…$" -MagmaHideout_2F_2R_Text_Grunt15PostBattle: @ 8239EBB +MagmaHideout_2F_2R_Text_Grunt15PostBattle: .string "We dug up something beyond belief!\n" .string "And, we got the BLUE ORB!\p" .string "All that's left is for our leader to…\n" .string "Fufufu… Fwahahaha!$" -MagmaHideout_2F_2R_Text_Grunt6Intro: @ 8239F31 +MagmaHideout_2F_2R_Text_Grunt6Intro: .string "I can't stand heat. Maybe I should've\n" .string "joined TEAM AQUA instead…$" -MagmaHideout_2F_2R_Text_Grunt6Defeat: @ 8239F71 +MagmaHideout_2F_2R_Text_Grunt6Defeat: .string "Yeah, I really may not be right for\n" .string "TEAM MAGMA…$" -MagmaHideout_2F_2R_Text_Grunt6PostBattle: @ 8239FA1 +MagmaHideout_2F_2R_Text_Grunt6PostBattle: .string "Don't you get lonely for the sea\n" .string "being in a place like this?$" -MagmaHideout_2F_2R_Text_Grunt7Intro: @ 8239FDE +MagmaHideout_2F_2R_Text_Grunt7Intro: .string "You can hear tremors here sometimes.\p" .string "Could it be the volcano rattling?\n" .string "Or is it GROU…\p" .string "Whoops!\n" .string "No, no, never mind!$" -MagmaHideout_2F_2R_Text_Grunt7Defeat: @ 823A050 +MagmaHideout_2F_2R_Text_Grunt7Defeat: .string "You're a fiery battler.\n" .string "Just like a volcano!$" -MagmaHideout_2F_2R_Text_Grunt7PostBattle: @ 823A07D +MagmaHideout_2F_2R_Text_Grunt7PostBattle: .string "You just happened to win this time,\n" .string "but that doesn't matter.\p" .string "TEAM MAGMA's goal is about to be\n" .string "reached!$" -MagmaHideout_2F_2R_Text_Grunt8Intro: @ 823A0E4 +MagmaHideout_2F_2R_Text_Grunt8Intro: .string "One of our guys was freaking out that\n" .string "he lost his MAGMA EMBLEM…\p" .string "Wait a minute!\n" .string "Was it you who found it?$" -MagmaHideout_2F_2R_Text_Grunt8Defeat: @ 823A14C +MagmaHideout_2F_2R_Text_Grunt8Defeat: .string "I'm having trouble believing this…$" -MagmaHideout_2F_2R_Text_Grunt8PostBattle: @ 823A16F +MagmaHideout_2F_2R_Text_Grunt8PostBattle: .string "I'm getting this feeling that our plan\n" .string "is going to end in failure…$" diff --git a/data/maps/MagmaHideout_2F_3R/scripts.inc b/data/maps/MagmaHideout_2F_3R/scripts.inc index cbcb3fd52987..12b076d782e3 100644 --- a/data/maps/MagmaHideout_2F_3R/scripts.inc +++ b/data/maps/MagmaHideout_2F_3R/scripts.inc @@ -1,3 +1,3 @@ -MagmaHideout_2F_3R_MapScripts:: @ 823AD00 +MagmaHideout_2F_3R_MapScripts:: .byte 0 diff --git a/data/maps/MagmaHideout_3F_1R/scripts.inc b/data/maps/MagmaHideout_3F_1R/scripts.inc index 04e5526aee86..dafb96a5cf1a 100644 --- a/data/maps/MagmaHideout_3F_1R/scripts.inc +++ b/data/maps/MagmaHideout_3F_1R/scripts.inc @@ -1,29 +1,29 @@ -MagmaHideout_3F_1R_MapScripts:: @ 823A1B2 +MagmaHideout_3F_1R_MapScripts:: .byte 0 -MagmaHideout_3F_1R_EventScript_Grunt9:: @ 823A1B3 +MagmaHideout_3F_1R_EventScript_Grunt9:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_9, MagmaHideout_3F_1R_Text_Grunt9Intro, MagmaHideout_3F_1R_Text_Grunt9Defeat msgbox MagmaHideout_3F_1R_Text_Grunt9PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_3F_1R_EventScript_Grunt16:: @ 823A1CA +MagmaHideout_3F_1R_EventScript_Grunt16:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_16, MagmaHideout_3F_1R_Text_Grunt16Intro, MagmaHideout_3F_1R_Text_Grunt16Defeat msgbox MagmaHideout_3F_1R_Text_Grunt16PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_3F_1R_Text_Grunt9Intro: @ 823A1E1 +MagmaHideout_3F_1R_Text_Grunt9Intro: .string "What did I do to deserve this guard\n" .string "posting?\p" .string "My left ear is burning up!$" -MagmaHideout_3F_1R_Text_Grunt9Defeat: @ 823A229 +MagmaHideout_3F_1R_Text_Grunt9Defeat: .string "I'm getting heat exhaustion…$" -MagmaHideout_3F_1R_Text_Grunt9PostBattle: @ 823A246 +MagmaHideout_3F_1R_Text_Grunt9PostBattle: .string "Do you think it's odd that we're wearing\n" .string "hoods in this magma-filled volcano?$" -MagmaHideout_3F_1R_Text_Grunt16Intro: @ 823A293 +MagmaHideout_3F_1R_Text_Grunt16Intro: .string "We joined so we can help our leader\n" .string "achieve his fantastic vision.\p" .string "I don't care if you're with TEAM AQUA\n" @@ -31,11 +31,11 @@ MagmaHideout_3F_1R_Text_Grunt16Intro: @ 823A293 .string "No one interferes with us and gets\n" .string "away with it!$" -MagmaHideout_3F_1R_Text_Grunt16Defeat: @ 823A353 +MagmaHideout_3F_1R_Text_Grunt16Defeat: .string "Oh, no!\n" .string "You're not to be trusted at all!$" -MagmaHideout_3F_1R_Text_Grunt16PostBattle: @ 823A37C +MagmaHideout_3F_1R_Text_Grunt16PostBattle: .string "Listen to me.\n" .string "TEAM MAGMA is right!\p" .string "Don't listen to TEAM AQUA.\n" diff --git a/data/maps/MagmaHideout_3F_2R/scripts.inc b/data/maps/MagmaHideout_3F_2R/scripts.inc index 06f371151e4e..93a25f42419a 100644 --- a/data/maps/MagmaHideout_3F_2R/scripts.inc +++ b/data/maps/MagmaHideout_3F_2R/scripts.inc @@ -1,12 +1,12 @@ -MagmaHideout_3F_2R_MapScripts:: @ 823A3D4 +MagmaHideout_3F_2R_MapScripts:: .byte 0 -MagmaHideout_3F_2R_EventScript_Grunt10:: @ 823A3D5 +MagmaHideout_3F_2R_EventScript_Grunt10:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_10, MagmaHideout_3F_2R_Text_Grunt10Intro, MagmaHideout_3F_2R_Text_Grunt10Defeat msgbox MagmaHideout_3F_2R_Text_Grunt10PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_3F_2R_Text_Grunt10Intro: @ 823A3EC +MagmaHideout_3F_2R_Text_Grunt10Intro: .string "I understand everything our leader\n" .string "says. But you know what?\p" .string "Doing stuff like digging up a super-\n" @@ -15,11 +15,11 @@ MagmaHideout_3F_2R_Text_Grunt10Intro: @ 823A3EC .string "I think we're going a little too far.\n" .string "What do you think?$" -MagmaHideout_3F_2R_Text_Grunt10Defeat: @ 823A4BB +MagmaHideout_3F_2R_Text_Grunt10Defeat: .string "Yeah, I think we are doing something\n" .string "wrong somehow.$" -MagmaHideout_3F_2R_Text_Grunt10PostBattle: @ 823A4EF +MagmaHideout_3F_2R_Text_Grunt10PostBattle: .string "You know, losing to you cleared my mind.\p" .string "The next time I see our leader,\n" .string "I'm going to ask him about what we do.$" diff --git a/data/maps/MagmaHideout_3F_3R/scripts.inc b/data/maps/MagmaHideout_3F_3R/scripts.inc index e85cff9a3184..94afdddbf142 100644 --- a/data/maps/MagmaHideout_3F_3R/scripts.inc +++ b/data/maps/MagmaHideout_3F_3R/scripts.inc @@ -1,3 +1,3 @@ -MagmaHideout_3F_3R_MapScripts:: @ 823ACFF +MagmaHideout_3F_3R_MapScripts:: .byte 0 diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc index 199e3c1bcae4..a89054b7af6a 100644 --- a/data/maps/MagmaHideout_4F/scripts.inc +++ b/data/maps/MagmaHideout_4F/scripts.inc @@ -6,10 +6,10 @@ .set LOCALID_MAXIE, 6 .set LOCALID_GROUDON_SLEEPING, 7 -MagmaHideout_4F_MapScripts:: @ 823A55F +MagmaHideout_4F_MapScripts:: .byte 0 -MagmaHideout_4F_EventScript_Maxie:: @ 823A560 +MagmaHideout_4F_EventScript_Maxie:: lockall playbgm MUS_ENCOUNTER_MAGMA, FALSE msgbox MagmaHideout_4F_Text_MaxieAwakenGroudon, MSGBOX_DEFAULT @@ -81,7 +81,7 @@ MagmaHideout_4F_EventScript_Maxie:: @ 823A560 releaseall end -MagmaHideout_4F_Movement_GroudonApproach: @ 823A672 +MagmaHideout_4F_Movement_GroudonApproach: delay_16 delay_16 walk_slow_down @@ -94,12 +94,12 @@ MagmaHideout_4F_Movement_GroudonApproach: @ 823A672 delay_16 step_end -MagmaHideout_4F_Movement_GroudonExit: @ 823A67D +MagmaHideout_4F_Movement_GroudonExit: slide_up slide_up step_end -MagmaHideout_4F_Movement_MaxieLookAround: @ 823A680 +MagmaHideout_4F_Movement_MaxieLookAround: face_left delay_16 face_right @@ -113,64 +113,64 @@ MagmaHideout_4F_Movement_MaxieLookAround: @ 823A680 delay_16 step_end -MagmaHideout_4F_EventScript_Grunt11:: @ 823A68C +MagmaHideout_4F_EventScript_Grunt11:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_11, MagmaHideout_4F_Text_Grunt11Intro, MagmaHideout_4F_Text_Grunt11Defeat msgbox MagmaHideout_4F_Text_Grunt11PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_4F_EventScript_Grunt12:: @ 823A6A3 +MagmaHideout_4F_EventScript_Grunt12:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_12, MagmaHideout_4F_Text_Grunt12Intro, MagmaHideout_4F_Text_Grunt12Defeat msgbox MagmaHideout_4F_Text_Grunt12PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_4F_EventScript_Grunt13:: @ 823A6BA +MagmaHideout_4F_EventScript_Grunt13:: trainerbattle_single TRAINER_GRUNT_MAGMA_HIDEOUT_13, MagmaHideout_4F_Text_Grunt13Intro, MagmaHideout_4F_Text_Grunt13Defeat msgbox MagmaHideout_4F_Text_Grunt13PostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_4F_EventScript_Tabitha:: @ 823A6D1 +MagmaHideout_4F_EventScript_Tabitha:: trainerbattle_single TRAINER_TABITHA_MAGMA_HIDEOUT, MagmaHideout_4F_Text_TabithaIntro, MagmaHideout_4F_Text_TabithaDefeat msgbox MagmaHideout_4F_Text_TabithaPostBattle, MSGBOX_AUTOCLOSE end -MagmaHideout_4F_Text_Grunt11Intro: @ 823A6E8 +MagmaHideout_4F_Text_Grunt11Intro: .string "I want to see GROUDON, too, but they\n" .string "won't let me see even its tail…\p" .string "It's got me feeling really frustrated.\p" .string "Oh, no!\n" .string "I blabbed about GROUDON!$" -MagmaHideout_4F_Text_Grunt11Defeat: @ 823A775 +MagmaHideout_4F_Text_Grunt11Defeat: .string "I guess it's impossible to win if one\n" .string "doesn't have a calm mind…$" -MagmaHideout_4F_Text_Grunt11PostBattle: @ 823A7B5 +MagmaHideout_4F_Text_Grunt11PostBattle: .string "I wonder if GROUDON even has a tail?$" -MagmaHideout_4F_Text_Grunt12Intro: @ 823A7DA +MagmaHideout_4F_Text_Grunt12Intro: .string "Fuhahaha!\n" .string "Soon! Very soon!\l" .string "Our grand objective will be achieved!$" -MagmaHideout_4F_Text_Grunt12Defeat: @ 823A81B +MagmaHideout_4F_Text_Grunt12Defeat: .string "Grrr…\n" .string "I've come so far, but now this?$" -MagmaHideout_4F_Text_Grunt12PostBattle: @ 823A841 +MagmaHideout_4F_Text_Grunt12PostBattle: .string "MAXIE, sir!\n" .string "An intruder is headed your way!$" -MagmaHideout_4F_Text_Grunt13Intro: @ 823A86D +MagmaHideout_4F_Text_Grunt13Intro: .string "You're not finished yet!\n" .string "You're not getting by me easily!$" -MagmaHideout_4F_Text_Grunt13Defeat: @ 823A8A7 +MagmaHideout_4F_Text_Grunt13Defeat: .string "Was I that easy to knock down?$" -MagmaHideout_4F_Text_Grunt13PostBattle: @ 823A8C6 +MagmaHideout_4F_Text_Grunt13PostBattle: .string "C-come on, one more match…$" -MagmaHideout_4F_Text_TabithaIntro: @ 823A8E1 +MagmaHideout_4F_Text_TabithaIntro: .string "Hehehe!\n" .string "You made it this far, so I'll tell you!\p" .string "That's right!\n" @@ -180,15 +180,15 @@ MagmaHideout_4F_Text_TabithaIntro: @ 823A8E1 .string "It's going to awaken real soon!\n" .string "Hehe! Hehehe!$" -MagmaHideout_4F_Text_TabithaDefeat: @ 823A994 +MagmaHideout_4F_Text_TabithaDefeat: .string "Taken down again…\n" .string "Hehe…$" -MagmaHideout_4F_Text_TabithaPostBattle: @ 823A9AC +MagmaHideout_4F_Text_TabithaPostBattle: .string "…And while you wasted time with me,\n" .string "MAXIE should have awakened GROUDON…$" -MagmaHideout_4F_Text_MaxieAwakenGroudon: @ 823A9F4 +MagmaHideout_4F_Text_MaxieAwakenGroudon: .string "MAXIE: GROUDON…\p" .string "Nothing could awaken you from your\n" .string "sleep bathed in magma…\p" @@ -199,25 +199,25 @@ MagmaHideout_4F_Text_MaxieAwakenGroudon: @ 823A9F4 .string "And show me…\n" .string "Show me the full extent of your power!$" -MagmaHideout_4F_Text_MaxieGroudonWhatsWrong: @ 823AADA +MagmaHideout_4F_Text_MaxieGroudonWhatsWrong: .string "MAXIE: GROUDON!\n" .string "What's wrong?\p" .string "Wasn't the BLUE ORB the key?\p" .string "GROUDON!\n" .string "Where have you gone…$" -MagmaHideout_4F_Text_MaxieOhItWasYou: @ 823AB33 +MagmaHideout_4F_Text_MaxieOhItWasYou: .string "MAXIE: Oh, so it was you?\p" .string "I've seen you poking around uninvited\n" .string "here and there…\p" .string "I get it now!\n" .string "You must have pulled a cheap stunt!$" -MagmaHideout_4F_Text_MaxieDefeat: @ 823ABB5 +MagmaHideout_4F_Text_MaxieDefeat: .string "What makes you so adept at handling\n" .string "POKéMON?$" -MagmaHideout_4F_Text_MaxieImGoingAfterGroudon: @ 823ABE2 +MagmaHideout_4F_Text_MaxieImGoingAfterGroudon: .string "MAXIE: There has to be some reason\n" .string "why GROUDON fled…\p" .string "That's what you're trying to say,\n" diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc index a6d89479348a..47bbf9aada76 100644 --- a/data/maps/MarineCave_End/scripts.inc +++ b/data/maps/MarineCave_End/scripts.inc @@ -1,31 +1,31 @@ .set LOCALID_KYOGRE, 1 -MarineCave_End_MapScripts:: @ 823AFDF +MarineCave_End_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, MarineCave_End_OnResume map_script MAP_SCRIPT_ON_TRANSITION, MarineCave_End_OnTransition .byte 0 -MarineCave_End_OnResume: @ 823AFEA +MarineCave_End_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, MarineCave_End_EventScript_TryRemoveKyogre end -MarineCave_End_EventScript_TryRemoveKyogre:: @ 823AFF4 +MarineCave_End_EventScript_TryRemoveKyogre:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_KYOGRE return -MarineCave_End_OnTransition: @ 823B008 +MarineCave_End_OnTransition: call_if_unset FLAG_DEFEATED_KYOGRE, MarineCave_End_EventScript_ShowKyogre end -MarineCave_End_EventScript_ShowKyogre:: @ 823B012 +MarineCave_End_EventScript_ShowKyogre:: clearflag FLAG_HIDE_MARINE_CAVE_KYOGRE setvar VAR_TEMP_1, 1 return -MarineCave_End_EventScript_Kyogre:: @ 823B01B +MarineCave_End_EventScript_Kyogre:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 @@ -54,18 +54,18 @@ MarineCave_End_EventScript_Kyogre:: @ 823B01B releaseall end -MarineCave_End_EventScript_DefeatedKyogre:: @ 823B084 +MarineCave_End_EventScript_DefeatedKyogre:: setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 1 setflag FLAG_DEFEATED_KYOGRE goto Common_EventScript_RemoveStaticPokemon end -MarineCave_End_EventScript_RanFromKyogre:: @ 823B092 +MarineCave_End_EventScript_RanFromKyogre:: setvar VAR_0x8004, SPECIES_KYOGRE goto Common_EventScript_LegendaryFlewAway end -MarineCave_End_Movement_KyogreApproach: @ 823B09D +MarineCave_End_Movement_KyogreApproach: init_affine_anim walk_down_start_affine delay_16 diff --git a/data/maps/MarineCave_Entrance/scripts.inc b/data/maps/MarineCave_Entrance/scripts.inc index 1ba4546e312b..a075d2c30d69 100644 --- a/data/maps/MarineCave_Entrance/scripts.inc +++ b/data/maps/MarineCave_Entrance/scripts.inc @@ -1,8 +1,8 @@ -MarineCave_Entrance_MapScripts:: @ 823AFD0 +MarineCave_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, MarineCave_Entrance_OnResume .byte 0 -MarineCave_Entrance_OnResume: @ 823AFD6 +MarineCave_Entrance_OnResume: setdivewarp MAP_UNDERWATER_MARINE_CAVE, 255, 9, 6 end diff --git a/data/maps/MauvilleCity/scripts.inc b/data/maps/MauvilleCity/scripts.inc index 7107f4754a84..748fbd3c7971 100644 --- a/data/maps/MauvilleCity/scripts.inc +++ b/data/maps/MauvilleCity/scripts.inc @@ -2,11 +2,11 @@ .set LOCALID_WALLYS_UNCLE, 7 .set LOCALID_SCOTT, 11 -MauvilleCity_MapScripts:: @ 81DF385 +MauvilleCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MauvilleCity_OnTransition .byte 0 -MauvilleCity_OnTransition: @ 81DF38B +MauvilleCity_OnTransition: setflag FLAG_VISITED_MAUVILLE_CITY clearflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE clearflag FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION @@ -16,45 +16,45 @@ MauvilleCity_OnTransition: @ 81DF38B call_if_set FLAG_GOT_TM24_FROM_WATTSON, MauvilleCity_EventScript_MoveWattsonBackToGym end -MauvilleCity_EventScript_MoveWattsonBackToGym:: @ 81DF3A9 +MauvilleCity_EventScript_MoveWattsonBackToGym:: clearflag FLAG_HIDE_MAUVILLE_GYM_WATTSON setflag FLAG_HIDE_MAUVILLE_CITY_WATTSON setflag FLAG_WATTSON_REMATCH_AVAILABLE return -MauvilleCity_EventScript_Boy:: @ 81DF3B3 +MauvilleCity_EventScript_Boy:: msgbox MauvilleCity_Text_NurseHurtMonBackToHealth, MSGBOX_NPC end -MauvilleCity_EventScript_Maniac:: @ 81DF3BC +MauvilleCity_EventScript_Maniac:: msgbox MauvilleCity_Text_AllSortsOfPeopleComeThrough, MSGBOX_NPC end -MauvilleCity_EventScript_Woman:: @ 81DF3C5 +MauvilleCity_EventScript_Woman:: msgbox MauvilleCity_Text_RydelVeryGenerous, MSGBOX_NPC end -MauvilleCity_EventScript_RichBoy:: @ 81DF3CE +MauvilleCity_EventScript_RichBoy:: msgbox MauvilleCity_Text_PokemonCanJumpYouOnBike, MSGBOX_NPC end -MauvilleCity_EventScript_CitySign:: @ 81DF3D7 +MauvilleCity_EventScript_CitySign:: msgbox MauvilleCity_Text_CitySign, MSGBOX_SIGN end -MauvilleCity_EventScript_GymSign:: @ 81DF3E0 +MauvilleCity_EventScript_GymSign:: msgbox MauvilleCity_Text_GymSign, MSGBOX_SIGN end -MauvilleCity_EventScript_BikeShopSign:: @ 81DF3E9 +MauvilleCity_EventScript_BikeShopSign:: msgbox MauvilleCity_Text_BikeShopSign, MSGBOX_SIGN end -MauvilleCity_EventScript_GameCornerSign:: @ 81DF3F2 +MauvilleCity_EventScript_GameCornerSign:: msgbox MauvilleCity_Text_GameCornerSign, MSGBOX_SIGN end -MauvilleCity_EventScript_SchoolKidM:: @ 81DF3FB +MauvilleCity_EventScript_SchoolKidM:: lock faceplayer goto_if_set FLAG_TV_EXPLAINED, MauvilleCity_EventScript_TVExplained @@ -63,12 +63,12 @@ MauvilleCity_EventScript_SchoolKidM:: @ 81DF3FB release end -MauvilleCity_EventScript_TVExplained:: @ 81DF413 +MauvilleCity_EventScript_TVExplained:: msgbox MauvilleCity_Text_BeenCheckingOutTV, MSGBOX_DEFAULT release end -MauvilleCity_EventScript_WallysUncle:: @ 81DF41D +MauvilleCity_EventScript_WallysUncle:: lock faceplayer goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_UncleAskPlayerToBattleWally @@ -79,7 +79,7 @@ MauvilleCity_EventScript_WallysUncle:: @ 81DF41D release end -MauvilleCity_EventScript_UncleAskPlayerToBattleWally:: @ 81DF43D +MauvilleCity_EventScript_UncleAskPlayerToBattleWally:: msgbox MauvilleCity_Text_UncleCanYouBattleWally, MSGBOX_DEFAULT closemessage applymovement LOCALID_WALLYS_UNCLE, Common_Movement_FaceOriginalDirection @@ -87,7 +87,7 @@ MauvilleCity_EventScript_UncleAskPlayerToBattleWally:: @ 81DF43D release end -MauvilleCity_EventScript_Wally:: @ 81DF452 +MauvilleCity_EventScript_Wally:: lockall goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_WallyRequestBattleAgain applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight @@ -106,7 +106,7 @@ MauvilleCity_EventScript_Wally:: @ 81DF452 goto MauvilleCity_EventScript_BattleWallyPrompt end -MauvilleCity_EventScript_BattleWallyPrompt:: @ 81DF4AD +MauvilleCity_EventScript_BattleWallyPrompt:: compare VAR_RESULT, YES call_if_eq MauvilleCity_EventScript_BattleWally compare VAR_RESULT, NO @@ -117,7 +117,7 @@ MauvilleCity_EventScript_BattleWallyPrompt:: @ 81DF4AD case DIR_EAST, MauvilleCity_EventScript_WallyAndUncleExitEast end -MauvilleCity_EventScript_WallyAndUncleExitNorth:: @ 81DF4E0 +MauvilleCity_EventScript_WallyAndUncleExitNorth:: applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitNorth1 applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitNorth1 applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth1 @@ -137,7 +137,7 @@ MauvilleCity_EventScript_WallyAndUncleExitNorth:: @ 81DF4E0 goto MauvilleCity_EventScript_DefeatedWally end -MauvilleCity_EventScript_WallyAndUncleExitEast:: @ 81DF53D +MauvilleCity_EventScript_WallyAndUncleExitEast:: applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitEast1 applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitEast1 applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast1 @@ -156,7 +156,7 @@ MauvilleCity_EventScript_WallyAndUncleExitEast:: @ 81DF53D goto MauvilleCity_EventScript_DefeatedWally end -MauvilleCity_EventScript_DefeatedWally:: @ 81DF593 +MauvilleCity_EventScript_DefeatedWally:: removeobject LOCALID_WALLY removeobject LOCALID_WALLYS_UNCLE clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY @@ -181,32 +181,32 @@ MauvilleCity_EventScript_DefeatedWally:: @ 81DF593 releaseall end -MauvilleCity_EventScript_ScottApproachPlayerNorth:: @ 81DF5F3 +MauvilleCity_EventScript_ScottApproachPlayerNorth:: addobject LOCALID_SCOTT applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottApproachPlayerNorth waitmovement 0 return -MauvilleCity_EventScript_ScottApproachPlayerEast:: @ 81DF601 +MauvilleCity_EventScript_ScottApproachPlayerEast:: setobjectxyperm LOCALID_SCOTT, 12, 13 addobject LOCALID_SCOTT applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottApproachPlayerEast waitmovement 0 return -MauvilleCity_EventScript_ScottExitNorth:: @ 81DF616 +MauvilleCity_EventScript_ScottExitNorth:: applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitNorth applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottExitNorth waitmovement 0 return -MauvilleCity_EventScript_ScottExitEast:: @ 81DF628 +MauvilleCity_EventScript_ScottExitEast:: applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitEast applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottExitEast waitmovement 0 return -MauvilleCity_EventScript_BattleWally:: @ 81DF63A +MauvilleCity_EventScript_BattleWally:: msgbox MauvilleCity_Text_WallyHereICome, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_WALLY_MAUVILLE, MauvilleCity_Text_WallyDefeat applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight @@ -220,20 +220,20 @@ MauvilleCity_EventScript_BattleWally:: @ 81DF63A msgbox MauvilleCity_Text_UncleNoNeedToBeDown, MSGBOX_DEFAULT return -MauvilleCity_EventScript_DeclineWallyBattle:: @ 81DF683 +MauvilleCity_EventScript_DeclineWallyBattle:: setflag FLAG_DECLINED_WALLY_BATTLE_MAUVILLE msgbox MauvilleCity_Text_WallyMyUncleWontKnowImStrong, MSGBOX_DEFAULT release end -MauvilleCity_EventScript_WallyRequestBattleAgain:: @ 81DF690 +MauvilleCity_EventScript_WallyRequestBattleAgain:: applymovement LOCALID_WALLY, Common_Movement_FacePlayer waitmovement 0 msgbox MauvilleCity_Text_WallyPleaseBattleMe, MSGBOX_YESNO goto MauvilleCity_EventScript_BattleWallyPrompt end -MauvilleCity_Movement_WallyExitNorth1: @ 81DF6A8 +MauvilleCity_Movement_WallyExitNorth1: walk_left walk_left walk_down @@ -241,7 +241,7 @@ MauvilleCity_Movement_WallyExitNorth1: @ 81DF6A8 walk_left step_end -MauvilleCity_Movement_WallyExitEast1: @ 81DF6AE +MauvilleCity_Movement_WallyExitEast1: walk_down walk_down walk_left @@ -249,7 +249,7 @@ MauvilleCity_Movement_WallyExitEast1: @ 81DF6AE walk_left step_end -MauvilleCity_Movement_WallyExitNorth2: @ 81DF6B4 +MauvilleCity_Movement_WallyExitNorth2: delay_16 delay_16 walk_left @@ -263,7 +263,7 @@ MauvilleCity_Movement_WallyExitNorth2: @ 81DF6B4 delay_8 step_end -MauvilleCity_Movement_WallyExitEast2: @ 81DF6C0 +MauvilleCity_Movement_WallyExitEast2: delay_16 delay_16 walk_left @@ -277,41 +277,41 @@ MauvilleCity_Movement_WallyExitEast2: @ 81DF6C0 delay_8 step_end -MauvilleCity_Movement_PlayerWatchWallyExitNorth2: @ 81DF6CC +MauvilleCity_Movement_PlayerWatchWallyExitNorth2: delay_16 delay_8 walk_in_place_fastest_left step_end -MauvilleCity_Movement_PlayerWatchWallyExitEast2: @ 81DF6D0 +MauvilleCity_Movement_PlayerWatchWallyExitEast2: delay_16 delay_16 delay_16 walk_in_place_fastest_left step_end -MauvilleCity_Movement_PlayerWatchScottExitNorth: @ 81DF6D5 +MauvilleCity_Movement_PlayerWatchScottExitNorth: delay_16 walk_in_place_fastest_left step_end -MauvilleCity_Movement_PlayerWatchScottExitEast: @ 81DF6D8 +MauvilleCity_Movement_PlayerWatchScottExitEast: delay_16 delay_16 walk_in_place_fastest_left step_end -MauvilleCity_Movement_PlayerWatchWallyExitEast1: @ 81DF6DC +MauvilleCity_Movement_PlayerWatchWallyExitEast1: delay_16 walk_in_place_fastest_down step_end -MauvilleCity_Movement_PlayerWatchWallyExitNorth1: @ 81DF6DF +MauvilleCity_Movement_PlayerWatchWallyExitNorth1: delay_16 walk_in_place_fastest_left step_end -MauvilleCity_Movement_WallysUncleExitNorth1: @ 81DF6E2 +MauvilleCity_Movement_WallysUncleExitNorth1: walk_left walk_left walk_left @@ -319,7 +319,7 @@ MauvilleCity_Movement_WallysUncleExitNorth1: @ 81DF6E2 walk_down step_end -MauvilleCity_Movement_WallysUncleExitEast1: @ 81DF6E8 +MauvilleCity_Movement_WallysUncleExitEast1: walk_left walk_down walk_down @@ -327,25 +327,25 @@ MauvilleCity_Movement_WallysUncleExitEast1: @ 81DF6E8 walk_left step_end -MauvilleCity_Movement_PlayerFaceUncleNorth: @ 81DF6EE +MauvilleCity_Movement_PlayerFaceUncleNorth: delay_16 delay_8 delay_4 walk_in_place_fastest_down step_end -MauvilleCity_Movement_WallysUncleApproachPlayerNorth: @ 81DF6F3 +MauvilleCity_Movement_WallysUncleApproachPlayerNorth: walk_right walk_right walk_in_place_fastest_up step_end -MauvilleCity_Movement_WallysUncleApproachPlayerEast: @ 81DF6F7 +MauvilleCity_Movement_WallysUncleApproachPlayerEast: walk_right walk_up step_end -MauvilleCity_Movement_WallysUncleExitNorth2: @ 81DF6FA +MauvilleCity_Movement_WallysUncleExitNorth2: walk_left walk_left walk_left @@ -356,7 +356,7 @@ MauvilleCity_Movement_WallysUncleExitNorth2: @ 81DF6FA walk_left step_end -MauvilleCity_Movement_WallysUncleExitEast2: @ 81DF703 +MauvilleCity_Movement_WallysUncleExitEast2: walk_down walk_left walk_left @@ -368,7 +368,7 @@ MauvilleCity_Movement_WallysUncleExitEast2: @ 81DF703 walk_left step_end -MauvilleCity_Movement_ScottApproachPlayerNorth: @ 81DF70D +MauvilleCity_Movement_ScottApproachPlayerNorth: walk_up walk_up walk_up @@ -382,7 +382,7 @@ MauvilleCity_Movement_ScottApproachPlayerNorth: @ 81DF70D walk_in_place_fastest_up step_end -MauvilleCity_Movement_ScottApproachPlayerEast: @ 81DF719 +MauvilleCity_Movement_ScottApproachPlayerEast: walk_up walk_up walk_up @@ -396,7 +396,7 @@ MauvilleCity_Movement_ScottApproachPlayerEast: @ 81DF719 walk_up step_end -MauvilleCity_Movement_ScottExitNorth: @ 81DF725 +MauvilleCity_Movement_ScottExitNorth: walk_left walk_left walk_left @@ -408,7 +408,7 @@ MauvilleCity_Movement_ScottExitNorth: @ 81DF725 walk_left step_end -MauvilleCity_Movement_ScottExitEast: @ 81DF72F +MauvilleCity_Movement_ScottExitEast: walk_down walk_left walk_left @@ -421,7 +421,7 @@ MauvilleCity_Movement_ScottExitEast: @ 81DF72F walk_left step_end -MauvilleCity_EventScript_Wattson:: @ 81DF73A +MauvilleCity_EventScript_Wattson:: lock faceplayer goto_if_set FLAG_GOT_TM24_FROM_WATTSON, MauvilleCity_EventScript_ReceivedThunderbolt @@ -435,12 +435,12 @@ MauvilleCity_EventScript_Wattson:: @ 81DF73A release end -MauvilleCity_EventScript_BegunNewMauville:: @ 81DF77A +MauvilleCity_EventScript_BegunNewMauville:: msgbox MauvilleCity_Text_WattsonWontBeChallenge, MSGBOX_DEFAULT release end -MauvilleCity_EventScript_CompletedNewMauville:: @ 81DF784 +MauvilleCity_EventScript_CompletedNewMauville:: msgbox MauvilleCity_Text_WattsonThanksTakeTM, MSGBOX_DEFAULT giveitem ITEM_TM24 compare VAR_RESULT, FALSE @@ -450,12 +450,12 @@ MauvilleCity_EventScript_CompletedNewMauville:: @ 81DF784 release end -MauvilleCity_EventScript_ReceivedThunderbolt:: @ 81DF7B0 +MauvilleCity_EventScript_ReceivedThunderbolt:: msgbox MauvilleCity_Text_WattsonYoungTakeCharge, MSGBOX_DEFAULT release end -MauvilleCity_EventScript_RegisterWallyCall:: @ 81DF7BA +MauvilleCity_EventScript_RegisterWallyCall:: lockall pokenavcall MauvilleCity_Text_WallyPokenavCall waitmessage @@ -470,30 +470,30 @@ MauvilleCity_EventScript_RegisterWallyCall:: @ 81DF7BA releaseall end -MauvilleCity_Text_UncleHesTooPeppy: @ 81DF7DC +MauvilleCity_Text_UncleHesTooPeppy: .string "UNCLE: It's because of POKéMON that\n" .string "this boy's got more pep, I suppose…\l" .string "But he's become a bit too peppy…$" -MauvilleCity_Text_WallyWantToChallengeGym: @ 81DF845 +MauvilleCity_Text_WallyWantToChallengeGym: .string "WALLY: Aww, UNCLE, please?\p" .string "I want to challenge this GYM and see\n" .string "how much better I've become.\p" .string "Please? May I, please?$" -MauvilleCity_Text_UncleYourePushingIt: @ 81DF8B9 +MauvilleCity_Text_UncleYourePushingIt: .string "UNCLE: Now hold on, WALLY.\p" .string "Since you started living with POKéMON,\n" .string "you have grown quite a lot stronger.\p" .string "But don't you think you're pushing it\n" .string "to suddenly challenge a GYM?$" -MauvilleCity_Text_WallyWeCanBeatAnyone: @ 81DF963 +MauvilleCity_Text_WallyWeCanBeatAnyone: .string "WALLY: I'm not pushing it.\p" .string "If I combine forces with RALTS,\n" .string "we can beat anyone!$" -MauvilleCity_Text_WallyWillYouBattleMe: @ 81DF9B2 +MauvilleCity_Text_WallyWillYouBattleMe: .string "WALLY: Oh! Hi, {PLAYER}!\p" .string "I've gotten a lot stronger since\n" .string "we met.\p" @@ -502,43 +502,43 @@ MauvilleCity_Text_WallyWillYouBattleMe: @ 81DF9B2 .string "{PLAYER}, please, will you have\n" .string "a battle with me?$" -MauvilleCity_Text_WallyMyUncleWontKnowImStrong: @ 81DFA4A +MauvilleCity_Text_WallyMyUncleWontKnowImStrong: .string "WALLY: Oh… If you won't battle me,\n" .string "{PLAYER}, my UNCLE won't know that I've\l" .string "become really strong.$" -MauvilleCity_Text_UncleCanYouBattleWally: @ 81DFAA5 +MauvilleCity_Text_UncleCanYouBattleWally: .string "UNCLE: {PLAYER}{KUN}, was it?\n" .string "On WALLY's behalf, can I ask you to\l" .string "battle with him just this once?\p" .string "I don't think he's going to listen to\n" .string "any reason the way he is now.$" -MauvilleCity_Text_WallyPleaseBattleMe: @ 81DFB42 +MauvilleCity_Text_WallyPleaseBattleMe: .string "WALLY: {PLAYER}, please!\n" .string "Battle with me, please.$" -MauvilleCity_Text_WallyHereICome: @ 81DFB6D +MauvilleCity_Text_WallyHereICome: .string "WALLY: {PLAYER}, thank you.\p" .string "Okay… Here I come!$" -MauvilleCity_Text_WallyDefeat: @ 81DFB96 +MauvilleCity_Text_WallyDefeat: .string "WALLY: … … … … … … …\p" .string "… … … … … … … …\p" .string "I lost…$" -MauvilleCity_Text_WallyIllGoBackToVerdanturf: @ 81DFBC3 +MauvilleCity_Text_WallyIllGoBackToVerdanturf: .string "WALLY: UNCLE…\n" .string "I'll go back to VERDANTURF…$" -MauvilleCity_Text_ThankYouNotEnoughToBattle: @ 81DFBED +MauvilleCity_Text_ThankYouNotEnoughToBattle: .string "{PLAYER}, thank you.\n" .string "Being a TRAINER is tough, isn't it?\p" .string "It's not enough just to have POKéMON\n" .string "and make them battle. That isn't what\l" .string "being a real TRAINER is about.$" -MauvilleCity_Text_UncleNoNeedToBeDown: @ 81DFC8A +MauvilleCity_Text_UncleNoNeedToBeDown: .string "UNCLE: WALLY, there's no need to be so\n" .string "down on yourself.\p" .string "Why, what's keeping you from becoming\n" @@ -546,7 +546,7 @@ MauvilleCity_Text_UncleNoNeedToBeDown: @ 81DFC8A .string "Come on, let's go home.\n" .string "Everyone's waiting for you.$" -MauvilleCity_Text_UncleVisitUsSometime: @ 81DFD34 +MauvilleCity_Text_UncleVisitUsSometime: .string "UNCLE: {PLAYER}{KUN}, it just dawned on me\n" .string "that you must be the TRAINER who kept\l" .string "an eye out for WALLY when he caught\l" @@ -556,7 +556,7 @@ MauvilleCity_Text_UncleVisitUsSometime: @ 81DFD34 .string "I'm sure WALLY would enjoy it.$" -MauvilleCity_Text_WallyPokenavCall: @ 81DFDFB +MauvilleCity_Text_WallyPokenavCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "WALLY: Oh, hello, {PLAYER}!\p" @@ -567,11 +567,11 @@ MauvilleCity_Text_WallyPokenavCall: @ 81DFDFB .string "… … … … … …\n" .string "… … … … … Click!$" -MauvilleCity_Text_RegisteredWally: @ 81DFEB4 +MauvilleCity_Text_RegisteredWally: .string "Registered WALLY\n" .string "in the POKéNAV.$" -MauvilleCity_Text_ScottYouDidntHoldBack: @ 81DFED5 +MauvilleCity_Text_ScottYouDidntHoldBack: .string "SCOTT: Hehe…\n" .string "I was watching that match!\p" .string "You're friends with that boy WALLY,\n" @@ -584,7 +584,7 @@ MauvilleCity_Text_ScottYouDidntHoldBack: @ 81DFED5 .string "… … … … … …\n" .string "I'll be cheering for you!$" -MauvilleCity_Text_WattsonNeedFavorTakeKey: @ 81DFFE4 +MauvilleCity_Text_WattsonNeedFavorTakeKey: .string "WATTSON: Oh, {PLAYER}{KUN}!\n" .string "You look like you have a lot of zip!\l" .string "That's a good thing, wahahahaha!\p" @@ -599,7 +599,7 @@ MauvilleCity_Text_WattsonNeedFavorTakeKey: @ 81DFFE4 .string "Here, this is the KEY to get into\n" .string "NEW MAUVILLE.$" -MauvilleCity_Text_WattsonWontBeChallenge: @ 81E0154 +MauvilleCity_Text_WattsonWontBeChallenge: .string "WATTSON: Don't you worry about it.\n" .string "It won't be a challenge to you.\p" .string "The entrance to NEW MAUVILLE is just\n" @@ -607,7 +607,7 @@ MauvilleCity_Text_WattsonWontBeChallenge: @ 81E0154 .string "That's it, then, you have my trust!\n" .string "Wahahahaha!$" -MauvilleCity_Text_WattsonThanksTakeTM: @ 81E020E +MauvilleCity_Text_WattsonThanksTakeTM: .string "WATTSON: Wahahahaha!\p" .string "I knew it, {PLAYER}{KUN}! I knew I'd made\n" .string "the right choice asking you!\p" @@ -615,51 +615,51 @@ MauvilleCity_Text_WattsonThanksTakeTM: @ 81E020E .string "THUNDERBOLT!\p" .string "Go on, you've earned it!$" -MauvilleCity_Text_WattsonYoungTakeCharge: @ 81E02AA +MauvilleCity_Text_WattsonYoungTakeCharge: .string "WATTSON: Wahahahaha!\p" .string "It pleases me to no end to see\n" .string "the young step up and take charge!$" -MauvilleCity_Text_NurseHurtMonBackToHealth: @ 81E0301 +MauvilleCity_Text_NurseHurtMonBackToHealth: .string "You know, it's cool to have POKéMON\n" .string "battles and stuff…\p" .string "But if your POKéMON gets hurt,\n" .string "you have to nurse it back to health.$" -MauvilleCity_Text_AllSortsOfPeopleComeThrough: @ 81E037C +MauvilleCity_Text_AllSortsOfPeopleComeThrough: .string "The roads of this town stretch north\n" .string "and south, and east and west.\p" .string "Because of that, we get all sorts of\n" .string "people coming through.$" -MauvilleCity_Text_RydelVeryGenerous: @ 81E03FB +MauvilleCity_Text_RydelVeryGenerous: .string "Have you been to RYDEL'S CYCLES yet?\p" .string "RYDEL, the owner, is a very generous\n" .string "man.$" -MauvilleCity_Text_PokemonCanJumpYouOnBike: @ 81E044A +MauvilleCity_Text_PokemonCanJumpYouOnBike: .string "Even if you're riding a BIKE,\n" .string "wild POKéMON could jump you.$" -MauvilleCity_Text_CitySign: @ 81E0485 +MauvilleCity_Text_CitySign: .string "MAUVILLE CITY\n" .string "“The bright and shiny city of fun!”$" -MauvilleCity_Text_GymSign: @ 81E04B7 +MauvilleCity_Text_GymSign: .string "MAUVILLE CITY POKéMON GYM\n" .string "LEADER: WATTSON\l" .string "“The cheerfully electrifying man!”$" -MauvilleCity_Text_BikeShopSign: @ 81E0504 +MauvilleCity_Text_BikeShopSign: .string "“Ride in gravel and shake up your\n" .string "soul!”\l" .string "RYDEL'S CYCLES$" -MauvilleCity_Text_GameCornerSign: @ 81E053C +MauvilleCity_Text_GameCornerSign: .string "“The play spot for all!”\n" .string "MAUVILLE GAME CORNER$" -MauvilleCity_Text_ExplainTV: @ 81E056A +MauvilleCity_Text_ExplainTV: .string "Hi, do you check out TV at all?\p" .string "They've added a bunch of cool new\n" .string "shows recently.\p" @@ -671,5 +671,5 @@ MauvilleCity_Text_ExplainTV: @ 81E056A .string "That's why I think you should check\n" .string "out TVs whenever you can.$" -MauvilleCity_Text_BeenCheckingOutTV: @ 81E0699 +MauvilleCity_Text_BeenCheckingOutTV: .string "Hi, have you been checking out TVs?$" diff --git a/data/maps/MauvilleCity_BikeShop/scripts.inc b/data/maps/MauvilleCity_BikeShop/scripts.inc index 6832554e44b7..45efbe8f3b93 100644 --- a/data/maps/MauvilleCity_BikeShop/scripts.inc +++ b/data/maps/MauvilleCity_BikeShop/scripts.inc @@ -1,7 +1,7 @@ -MauvilleCity_BikeShop_MapScripts:: @ 820EBBB +MauvilleCity_BikeShop_MapScripts:: .byte 0 -MauvilleCity_BikeShop_EventScript_Rydel:: @ 820EBBC +MauvilleCity_BikeShop_EventScript_Rydel:: lock faceplayer goto_if_set FLAG_RECEIVED_BIKE, MauvilleCity_BikeShop_EventScript_AskSwitchBikes @@ -14,7 +14,7 @@ MauvilleCity_BikeShop_EventScript_Rydel:: @ 820EBBC goto_if_eq MauvilleCity_BikeShop_EventScript_NotFar end -MauvilleCity_BikeShop_EventScript_SkipGreeting:: @ 820EBF7 +MauvilleCity_BikeShop_EventScript_SkipGreeting:: msgbox MauvilleCity_BikeShop_Text_DidYouComeFromFarAway, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq MauvilleCity_BikeShop_EventScript_YesFar @@ -22,7 +22,7 @@ MauvilleCity_BikeShop_EventScript_SkipGreeting:: @ 820EBF7 goto_if_eq MauvilleCity_BikeShop_EventScript_NotFar end -MauvilleCity_BikeShop_EventScript_ChooseBike:: @ 820EC16 +MauvilleCity_BikeShop_EventScript_ChooseBike:: message MauvilleCity_BikeShop_Text_ExplainBikesChooseWhichOne waitmessage multichoice 21, 8, MULTI_BIKE, TRUE @@ -31,36 +31,36 @@ MauvilleCity_BikeShop_EventScript_ChooseBike:: @ 820EC16 case 1, MauvilleCity_BikeShop_EventScript_GetAcroBike end -MauvilleCity_BikeShop_EventScript_NotFar:: @ 820EC3D +MauvilleCity_BikeShop_EventScript_NotFar:: setflag FLAG_DECLINED_BIKE msgbox MauvilleCity_BikeShop_Text_GuessYouDontNeedBike, MSGBOX_DEFAULT release end -MauvilleCity_BikeShop_EventScript_YesFar:: @ 820EC4A +MauvilleCity_BikeShop_EventScript_YesFar:: setflag FLAG_RECEIVED_BIKE goto MauvilleCity_BikeShop_EventScript_ChooseBike end -MauvilleCity_BikeShop_EventScript_GetMachBike:: @ 820EC53 +MauvilleCity_BikeShop_EventScript_GetMachBike:: msgbox MauvilleCity_BikeShop_Text_ChoseMachBike, MSGBOX_DEFAULT giveitem ITEM_MACH_BIKE goto MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes end -MauvilleCity_BikeShop_EventScript_GetAcroBike:: @ 820EC6D +MauvilleCity_BikeShop_EventScript_GetAcroBike:: msgbox MauvilleCity_BikeShop_Text_ChoseAcroBike, MSGBOX_DEFAULT giveitem ITEM_ACRO_BIKE goto MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes end -MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes:: @ 820EC87 +MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes:: msgbox MauvilleCity_BikeShop_Text_ComeBackToSwitchBikes, MSGBOX_DEFAULT special SwapRegisteredBike release end -MauvilleCity_BikeShop_EventScript_AskSwitchBikes:: @ 820EC94 +MauvilleCity_BikeShop_EventScript_AskSwitchBikes:: msgbox MauvilleCity_BikeShop_Text_WantToSwitchBikes, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchBikes @@ -69,7 +69,7 @@ MauvilleCity_BikeShop_EventScript_AskSwitchBikes:: @ 820EC94 end @ If the player does not have a bike on them Rydel assumes its stored in the PC -MauvilleCity_BikeShop_EventScript_SwitchBikes:: @ 820ECB3 +MauvilleCity_BikeShop_EventScript_SwitchBikes:: msgbox MauvilleCity_BikeShop_Text_IllSwitchBikes, MSGBOX_DEFAULT checkitem ITEM_ACRO_BIKE, 1 compare VAR_RESULT, TRUE @@ -81,12 +81,12 @@ MauvilleCity_BikeShop_EventScript_SwitchBikes:: @ 820ECB3 release end -MauvilleCity_BikeShop_EventScript_KeepBike:: @ 820ECE5 +MauvilleCity_BikeShop_EventScript_KeepBike:: msgbox MauvilleCity_BikeShop_Text_HappyYouLikeIt, MSGBOX_DEFAULT release end -MauvilleCity_BikeShop_EventScript_SwitchAcroForMach:: @ 820ECEF +MauvilleCity_BikeShop_EventScript_SwitchAcroForMach:: incrementgamestat GAME_STAT_TRADED_BIKES msgbox MauvilleCity_BikeShop_Text_ExchangedAcroForMach, MSGBOX_DEFAULT removeitem ITEM_ACRO_BIKE @@ -94,7 +94,7 @@ MauvilleCity_BikeShop_EventScript_SwitchAcroForMach:: @ 820ECEF goto MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes end -MauvilleCity_BikeShop_EventScript_SwitchMachForAcro:: @ 820ED10 +MauvilleCity_BikeShop_EventScript_SwitchMachForAcro:: incrementgamestat GAME_STAT_TRADED_BIKES msgbox MauvilleCity_BikeShop_Text_ExchangedMachForAcro, MSGBOX_DEFAULT removeitem ITEM_MACH_BIKE @@ -102,17 +102,17 @@ MauvilleCity_BikeShop_EventScript_SwitchMachForAcro:: @ 820ED10 goto MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes end -MauvilleCity_BikeShop_EventScript_Assistant:: @ 820ED31 +MauvilleCity_BikeShop_EventScript_Assistant:: msgbox MauvilleCity_BikeShop_Text_HandbooksAreInBack, MSGBOX_NPC end -MauvilleCity_BikeShop_EventScript_MachBikeHandbook:: @ 820ED3A +MauvilleCity_BikeShop_EventScript_MachBikeHandbook:: message MauvilleCity_BikeShop_Text_MachHandbookWhichPage waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage end -MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage:: @ 820ED46 +MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage:: multichoice 0, 0, MULTI_MACH_BIKE_INFO, FALSE switch VAR_RESULT case 0, MauvilleCity_BikeShop_EventScript_HowToRide @@ -122,35 +122,35 @@ MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage:: @ 820ED46 case MULTI_B_PRESSED, MauvilleCity_BikeShop_EventScript_ExitMachHandbook end -MauvilleCity_BikeShop_EventScript_HowToRide:: @ 820ED88 +MauvilleCity_BikeShop_EventScript_HowToRide:: message MauvilleCity_BikeShop_Text_HowToRideMachBike waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage end -MauvilleCity_BikeShop_EventScript_HowToTurn:: @ 820ED94 +MauvilleCity_BikeShop_EventScript_HowToTurn:: message MauvilleCity_BikeShop_Text_HowToTurnMachBike waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage end -MauvilleCity_BikeShop_EventScript_SandySlopes:: @ 820EDA0 +MauvilleCity_BikeShop_EventScript_SandySlopes:: message MauvilleCity_BikeShop_Text_SandySlopes waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseMachHandbookPage end -MauvilleCity_BikeShop_EventScript_ExitMachHandbook:: @ 820EDAC +MauvilleCity_BikeShop_EventScript_ExitMachHandbook:: release end -MauvilleCity_BikeShop_EventScript_AcroBikeHandbook:: @ 820EDAE +MauvilleCity_BikeShop_EventScript_AcroBikeHandbook:: message MauvilleCity_BikeShop_Text_AcroHandbookWhichPage waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage end -MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage:: @ 820EDBA +MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage:: multichoice 0, 0, MULTI_ACRO_BIKE_INFO, FALSE switch VAR_RESULT case 0, MauvilleCity_BikeShop_EventScript_Wheelies @@ -160,45 +160,45 @@ MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage:: @ 820EDBA case MULTI_B_PRESSED, MauvilleCity_BikeShop_EventScript_ExitAcroHandbook end -MauvilleCity_BikeShop_EventScript_Wheelies:: @ 820EDFC +MauvilleCity_BikeShop_EventScript_Wheelies:: message MauvilleCity_BikeShop_Text_Wheelies waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage end -MauvilleCity_BikeShop_EventScript_BunnyHops:: @ 820EE08 +MauvilleCity_BikeShop_EventScript_BunnyHops:: message MauvilleCity_BikeShop_Text_BunnyHops waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage end -MauvilleCity_BikeShop_EventScript_Jumps:: @ 820EE14 +MauvilleCity_BikeShop_EventScript_Jumps:: message MauvilleCity_BikeShop_Text_Jumps waitmessage goto MauvilleCity_BikeShop_EventScript_ChooseAcroHandbookPage end -MauvilleCity_BikeShop_EventScript_ExitAcroHandbook:: @ 820EE20 +MauvilleCity_BikeShop_EventScript_ExitAcroHandbook:: release end -MauvilleCity_BikeShop_Text_RydelGreeting: @ 820EE22 +MauvilleCity_BikeShop_Text_RydelGreeting: .string "Well, well, what have we here?\n" .string "A most energetic customer!\p" .string "Me? You may call me RYDEL.\n" .string "I'm the owner of this cycle shop.$" -MauvilleCity_BikeShop_Text_DidYouComeFromFarAway: @ 820EE99 +MauvilleCity_BikeShop_Text_DidYouComeFromFarAway: .string "RYDEL: Your RUNNING SHOES…\n" .string "They're awfully filthy.\p" .string "Did you come from far away?$" -MauvilleCity_BikeShop_Text_GuessYouDontNeedBike: @ 820EEE8 +MauvilleCity_BikeShop_Text_GuessYouDontNeedBike: .string "RYDEL: Is that right?\p" .string "Then, I guess you have no need for\n" .string "any of my BIKES.$" -MauvilleCity_BikeShop_Text_ExplainBikesChooseWhichOne: @ 820EF32 +MauvilleCity_BikeShop_Text_ExplainBikesChooseWhichOne: .string "RYDEL: Hm, hm… … … … …\p" .string "You're saying that you came all this\n" .string "way from LITTLEROOT?\p" @@ -222,37 +222,37 @@ MauvilleCity_BikeShop_Text_ExplainBikesChooseWhichOne: @ 820EF32 .string "have whichever one you like!\p" .string "Which one will you choose?$" -MauvilleCity_BikeShop_Text_ChoseMachBike: @ 820F18D +MauvilleCity_BikeShop_Text_ChoseMachBike: .string "{PLAYER} chose the MACH BIKE.$" -MauvilleCity_BikeShop_Text_ChoseAcroBike: @ 820F1A5 +MauvilleCity_BikeShop_Text_ChoseAcroBike: .string "{PLAYER} chose the ACRO BIKE.$" -MauvilleCity_BikeShop_Text_ComeBackToSwitchBikes: @ 820F1BD +MauvilleCity_BikeShop_Text_ComeBackToSwitchBikes: .string "RYDEL: If you get the urge to switch\n" .string "BIKES, just come see me!$" -MauvilleCity_BikeShop_Text_WantToSwitchBikes: @ 820F1FB +MauvilleCity_BikeShop_Text_WantToSwitchBikes: .string "RYDEL: Oh? Were you thinking about\n" .string "switching BIKES?$" -MauvilleCity_BikeShop_Text_IllSwitchBikes: @ 820F22F +MauvilleCity_BikeShop_Text_IllSwitchBikes: .string "RYDEL: Okay, no problem!\n" .string "I'll switch BIKES for you!$" -MauvilleCity_BikeShop_Text_ExchangedMachForAcro: @ 820F263 +MauvilleCity_BikeShop_Text_ExchangedMachForAcro: .string "{PLAYER} got the MACH BIKE exchanged\n" .string "for an ACRO BIKE.$" -MauvilleCity_BikeShop_Text_ExchangedAcroForMach: @ 820F294 +MauvilleCity_BikeShop_Text_ExchangedAcroForMach: .string "{PLAYER} got the ACRO BIKE exchanged\n" .string "for a MACH BIKE.$" -MauvilleCity_BikeShop_Text_HappyYouLikeIt: @ 820F2C4 +MauvilleCity_BikeShop_Text_HappyYouLikeIt: .string "RYDEL: Good, good!\n" .string "I'm happy that you like it!$" -MauvilleCity_BikeShop_Text_OhYourBikeIsInPC: @ 820F2F3 +MauvilleCity_BikeShop_Text_OhYourBikeIsInPC: .string "Oh? What happened to that BIKE\n" .string "I gave you?\p" .string "Oh, I get it, you stored it using your PC.\p" @@ -261,18 +261,18 @@ MauvilleCity_BikeShop_Text_OhYourBikeIsInPC: @ 820F2F3 .string "May the wind always be at your back\n" .string "on your adventure!$" -MauvilleCity_BikeShop_Text_HandbooksAreInBack: @ 820F3C3 +MauvilleCity_BikeShop_Text_HandbooksAreInBack: .string "I'm learning about BIKES while\n" .string "I work here.\p" .string "If you need advice on how to ride your\n" .string "BIKE, there're a couple handbooks in\l" .string "the back.$" -MauvilleCity_BikeShop_Text_MachHandbookWhichPage: @ 820F445 +MauvilleCity_BikeShop_Text_MachHandbookWhichPage: .string "It's a handbook on the MACH BIKE.\p" .string "Which page do you want to read?$" -MauvilleCity_BikeShop_Text_HowToRideMachBike: @ 820F487 +MauvilleCity_BikeShop_Text_HowToRideMachBike: .string "A BIKE moves in the direction that\n" .string "the + Control Pad is pressed.\p" .string "It will speed up once it gets rolling.\p" @@ -280,7 +280,7 @@ MauvilleCity_BikeShop_Text_HowToRideMachBike: @ 820F487 .string "The BIKE will slow to a stop.\p" .string "Want to read a different page?$" -MauvilleCity_BikeShop_Text_HowToTurnMachBike: @ 820F550 +MauvilleCity_BikeShop_Text_HowToTurnMachBike: .string "A MACH BIKE is speedy, but it can't\n" .string "stop very quickly.\p" .string "It gets a little tricky to get around\n" @@ -289,7 +289,7 @@ MauvilleCity_BikeShop_Text_HowToTurnMachBike: @ 820F550 .string "before the corner and slow down.\p" .string "Want to read a different page?$" -MauvilleCity_BikeShop_Text_SandySlopes: @ 820F61A +MauvilleCity_BikeShop_Text_SandySlopes: .string "There are small sandy slopes\n" .string "throughout the HOENN region.\p" .string "The loose, crumbly sand makes it\n" @@ -298,11 +298,11 @@ MauvilleCity_BikeShop_Text_SandySlopes: @ 820F61A .string "zip up a sandy slope.\p" .string "Want to read a different page?$" -MauvilleCity_BikeShop_Text_AcroHandbookWhichPage: @ 820F6ED +MauvilleCity_BikeShop_Text_AcroHandbookWhichPage: .string "It's a handbook on the ACRO BIKE.\p" .string "Which page do you want to read?$" -MauvilleCity_BikeShop_Text_Wheelies: @ 820F72F +MauvilleCity_BikeShop_Text_Wheelies: .string "Press the B Button while riding,\n" .string "and the front wheel lifts up.\p" .string "You can zip around with the front\n" @@ -310,14 +310,14 @@ MauvilleCity_BikeShop_Text_Wheelies: @ 820F72F .string "This technique is called a wheelie.\p" .string "Want to read a different page?$" -MauvilleCity_BikeShop_Text_BunnyHops: @ 820F7F5 +MauvilleCity_BikeShop_Text_BunnyHops: .string "Keeping the B Button pressed,\n" .string "your BIKE can hop on the spot.\p" .string "This technique is called a bunny hop.\p" .string "You can ride while hopping, too.\p" .string "Want to read a different page?$" -MauvilleCity_BikeShop_Text_Jumps: @ 820F898 +MauvilleCity_BikeShop_Text_Jumps: .string "Press the B Button and the + Control\n" .string "Pad at the same time to jump.\p" .string "Press the + Control Pad to the side\n" diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc index f8cf2ea1816a..896dfa680750 100644 --- a/data/maps/MauvilleCity_GameCorner/scripts.inc +++ b/data/maps/MauvilleCity_GameCorner/scripts.inc @@ -1,4 +1,4 @@ -MauvilleCity_GameCorner_MapScripts:: @ 820FBB8 +MauvilleCity_GameCorner_MapScripts:: .byte 0 @ Game Corner prices @@ -12,7 +12,7 @@ MauvilleCity_GameCorner_MapScripts:: @ 820FBB8 .set COINS_PRICE_50, 1000 .set COINS_PRICE_500, 10000 -MauvilleCity_GameCorner_EventScript_CoinsClerk:: @ 820FBB9 +MauvilleCity_GameCorner_EventScript_CoinsClerk:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ThisIsMauvilleGameCorner, MSGBOX_DEFAULT @@ -25,7 +25,7 @@ MauvilleCity_GameCorner_EventScript_CoinsClerk:: @ 820FBB9 showcoinsbox 1, 6 goto MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50 -MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50:: @ 820FBE5 +MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50:: multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 0, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_Buy50Coins @@ -34,7 +34,7 @@ MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50:: @ 820FBE5 end @ Unused -MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault500:: @ 820FC0C +MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault500:: multichoicedefault 15, 0, MULTI_GAME_CORNER_COINS, 1, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_Buy50Coins @@ -42,7 +42,7 @@ MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault500:: @ 820FC0C goto MauvilleCity_GameCorner_EventScript_CancelBuyCoins end -MauvilleCity_GameCorner_EventScript_Buy50Coins:: @ 820FC33 +MauvilleCity_GameCorner_EventScript_Buy50Coins:: checkcoins VAR_TEMP_1 compare VAR_TEMP_1, (MAX_COINS + 1 - 50) goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins @@ -60,7 +60,7 @@ MauvilleCity_GameCorner_EventScript_Buy50Coins:: @ 820FC33 release end -MauvilleCity_GameCorner_EventScript_Buy500Coins:: @ 820FC75 +MauvilleCity_GameCorner_EventScript_Buy500Coins:: checkcoins VAR_TEMP_1 compare VAR_TEMP_1, (MAX_COINS + 1 - 500) goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins @@ -78,33 +78,33 @@ MauvilleCity_GameCorner_EventScript_Buy500Coins:: @ 820FC75 release end -MauvilleCity_GameCorner_EventScript_NeedCoinCase:: @ 820FCB7 +MauvilleCity_GameCorner_EventScript_NeedCoinCase:: msgbox MauvilleCity_GameCorner_Text_NeedCoinCaseForCoins, MSGBOX_DEFAULT release end -MauvilleCity_GameCorner_EventScript_NotEnoughMoney:: @ 820FCC1 +MauvilleCity_GameCorner_EventScript_NotEnoughMoney:: msgbox MauvilleCity_GameCorner_Text_DontHaveEnoughMoney, MSGBOX_DEFAULT hidemoneybox hidecoinsbox 0, 5 release end -MauvilleCity_GameCorner_EventScript_CancelBuyCoins:: @ 820FCD1 +MauvilleCity_GameCorner_EventScript_CancelBuyCoins:: msgbox MauvilleCity_GameCorner_Text_DontNeedCoinsThen, MSGBOX_DEFAULT hidemoneybox hidecoinsbox 0, 5 release end -MauvilleCity_GameCorner_EventScript_NoRoomForCoins:: @ 820FCE1 +MauvilleCity_GameCorner_EventScript_NoRoomForCoins:: msgbox MauvilleCity_GameCorner_Text_CoinCaseIsFull, MSGBOX_DEFAULT hidemoneybox hidecoinsbox 0, 5 release end -MauvilleCity_GameCorner_EventScript_PrizeCornerDolls:: @ 820FCF1 +MauvilleCity_GameCorner_EventScript_PrizeCornerDolls:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT @@ -114,19 +114,19 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerDolls:: @ 820FCF1 release end -MauvilleCity_GameCorner_EventScript_ChooseDollPrizeMessage:: @ 820FD0D +MauvilleCity_GameCorner_EventScript_ChooseDollPrizeMessage:: message MauvilleCity_GameCorner_Text_WhichPrize waitmessage setvar VAR_TEMP_1, 0 showcoinsbox 1, 1 goto MauvilleCity_GameCorner_EventScript_ChooseDollPrize -MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize:: @ 820FD20 +MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize:: message MauvilleCity_GameCorner_Text_WhichPrize waitmessage goto MauvilleCity_GameCorner_EventScript_ChooseDollPrize -MauvilleCity_GameCorner_EventScript_ChooseDollPrize:: @ 820FD2B +MauvilleCity_GameCorner_EventScript_ChooseDollPrize:: multichoice 12, 0, MULTI_GAME_CORNER_DOLLS, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_TreeckoDoll @@ -136,22 +136,22 @@ MauvilleCity_GameCorner_EventScript_ChooseDollPrize:: @ 820FD2B goto MauvilleCity_GameCorner_EventScript_CancelDollSelect end -MauvilleCity_GameCorner_EventScript_TreeckoDoll:: @ 820FD67 +MauvilleCity_GameCorner_EventScript_TreeckoDoll:: setvar VAR_TEMP_1, 1 bufferdecorationname 0, DECOR_TREECKO_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize -MauvilleCity_GameCorner_EventScript_TorchicDoll:: @ 820FD75 +MauvilleCity_GameCorner_EventScript_TorchicDoll:: setvar VAR_TEMP_1, 2 bufferdecorationname 0, DECOR_TORCHIC_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize -MauvilleCity_GameCorner_EventScript_MudkipDoll:: @ 820FD83 +MauvilleCity_GameCorner_EventScript_MudkipDoll:: setvar VAR_TEMP_1, 3 bufferdecorationname 0, DECOR_MUDKIP_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize -MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: @ 820FD91 +MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: msgbox MauvilleCity_GameCorner_Text_SoYourChoiceIsX, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_GameCorner_EventScript_CancelDollSelect @@ -161,7 +161,7 @@ MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: @ 820FD91 case 3, MauvilleCity_GameCorner_EventScript_BuyMudkipDoll end -MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: @ 820FDCB +MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll @@ -177,7 +177,7 @@ MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: @ 820FDCB goto MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize end -MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: @ 820FE05 +MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll @@ -193,7 +193,7 @@ MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: @ 820FE05 goto MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize end -MauvilleCity_GameCorner_EventScript_BuyMudkipDoll:: @ 820FE3F +MauvilleCity_GameCorner_EventScript_BuyMudkipDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll @@ -209,23 +209,23 @@ MauvilleCity_GameCorner_EventScript_BuyMudkipDoll:: @ 820FE3F goto MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize end -MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll:: @ 820FE79 +MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll:: msgbox MauvilleCity_GameCorner_Text_NotEnoughCoins, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize end -MauvilleCity_GameCorner_EventScript_NoRoomForDoll:: @ 820FE87 +MauvilleCity_GameCorner_EventScript_NoRoomForDoll:: call Common_EventScript_NoRoomForDecor goto MauvilleCity_GameCorner_EventScript_ReturnToChooseDollPrize end -MauvilleCity_GameCorner_EventScript_CancelDollSelect:: @ 820FE92 +MauvilleCity_GameCorner_EventScript_CancelDollSelect:: msgbox MauvilleCity_GameCorner_Text_OhIsThatSo, MSGBOX_DEFAULT hidecoinsbox 0, 0 release end -MauvilleCity_GameCorner_EventScript_PrizeCornerTMs:: @ 820FE9F +MauvilleCity_GameCorner_EventScript_PrizeCornerTMs:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT @@ -235,19 +235,19 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerTMs:: @ 820FE9F release end -MauvilleCity_GameCorner_EventScript_ChooseTMPrizeMessage:: @ 820FEBB +MauvilleCity_GameCorner_EventScript_ChooseTMPrizeMessage:: message MauvilleCity_GameCorner_Text_WhichPrize waitmessage setvar VAR_TEMP_1, 0 showcoinsbox 1, 1 goto MauvilleCity_GameCorner_EventScript_ChooseTMPrize -MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize:: @ 820FECE +MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize:: message MauvilleCity_GameCorner_Text_WhichPrize waitmessage goto MauvilleCity_GameCorner_EventScript_ChooseTMPrize -MauvilleCity_GameCorner_EventScript_ChooseTMPrize:: @ 820FED9 +MauvilleCity_GameCorner_EventScript_ChooseTMPrize:: multichoice 12, 0, MULTI_GAME_CORNER_TMS, FALSE switch VAR_RESULT case 0, MauvilleCity_GameCorner_EventScript_TM32 @@ -259,37 +259,37 @@ MauvilleCity_GameCorner_EventScript_ChooseTMPrize:: @ 820FED9 goto MauvilleCity_GameCorner_EventScript_CancelTMSelect end -MauvilleCity_GameCorner_EventScript_TM32:: @ 820FF2B +MauvilleCity_GameCorner_EventScript_TM32:: setvar VAR_TEMP_1, 1 bufferitemname 0, ITEM_TM32 setvar VAR_0x8004, ITEM_TM32 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize -MauvilleCity_GameCorner_EventScript_TM29:: @ 820FF3E +MauvilleCity_GameCorner_EventScript_TM29:: setvar VAR_TEMP_1, 2 bufferitemname 0, ITEM_TM29 setvar VAR_0x8004, ITEM_TM29 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize -MauvilleCity_GameCorner_EventScript_TM35:: @ 820FF51 +MauvilleCity_GameCorner_EventScript_TM35:: setvar VAR_TEMP_1, 3 bufferitemname 0, ITEM_TM35 setvar VAR_0x8004, ITEM_TM35 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize -MauvilleCity_GameCorner_EventScript_TM24:: @ 820FF64 +MauvilleCity_GameCorner_EventScript_TM24:: setvar VAR_TEMP_1, 4 bufferitemname 0, ITEM_TM24 setvar VAR_0x8004, ITEM_TM24 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize -MauvilleCity_GameCorner_EventScript_TM13:: @ 820FF77 +MauvilleCity_GameCorner_EventScript_TM13:: setvar VAR_TEMP_1, 5 bufferitemname 0, ITEM_TM13 setvar VAR_0x8004, ITEM_TM13 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize -MauvilleCity_GameCorner_EventScript_ConfirmTMPrize:: @ 820FF8A +MauvilleCity_GameCorner_EventScript_ConfirmTMPrize:: special BufferTMHMMoveName msgbox MauvilleCity_GameCorner_Text_SoYourChoiceIsTheTMX, MSGBOX_YESNO compare VAR_RESULT, NO @@ -302,7 +302,7 @@ MauvilleCity_GameCorner_EventScript_ConfirmTMPrize:: @ 820FF8A case 5, MauvilleCity_GameCorner_EventScript_BuyTM13 end -MauvilleCity_GameCorner_EventScript_BuyTM32:: @ 820FFDD +MauvilleCity_GameCorner_EventScript_BuyTM32:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM32_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM @@ -317,7 +317,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM32:: @ 820FFDD goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_BuyTM29:: @ 8210017 +MauvilleCity_GameCorner_EventScript_BuyTM29:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM29_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM @@ -332,7 +332,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM29:: @ 8210017 goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_BuyTM35:: @ 8210051 +MauvilleCity_GameCorner_EventScript_BuyTM35:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM35_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM @@ -347,7 +347,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM35:: @ 8210051 goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_BuyTM24:: @ 821008B +MauvilleCity_GameCorner_EventScript_BuyTM24:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM24_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM @@ -362,7 +362,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM24:: @ 821008B goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_BuyTM13:: @ 82100C5 +MauvilleCity_GameCorner_EventScript_BuyTM13:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM13_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM @@ -377,31 +377,31 @@ MauvilleCity_GameCorner_EventScript_BuyTM13:: @ 82100C5 goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM:: @ 82100FF +MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM:: msgbox MauvilleCity_GameCorner_Text_NotEnoughCoins, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_NoRoomForTM:: @ 821010D +MauvilleCity_GameCorner_EventScript_NoRoomForTM:: call Common_EventScript_BagIsFull goto MauvilleCity_GameCorner_EventScript_ReturnToChooseTMPrize end -MauvilleCity_GameCorner_EventScript_CancelTMSelect:: @ 8210118 +MauvilleCity_GameCorner_EventScript_CancelTMSelect:: msgbox MauvilleCity_GameCorner_Text_OhIsThatSo, MSGBOX_DEFAULT hidecoinsbox 0, 0 release end -MauvilleCity_GameCorner_EventScript_Woman2:: @ 8210125 +MauvilleCity_GameCorner_EventScript_Woman2:: msgbox MauvilleCity_GameCorner_Text_CoinsAreNeededToPlay, MSGBOX_NPC end -MauvilleCity_GameCorner_EventScript_Gentleman:: @ 821012E +MauvilleCity_GameCorner_EventScript_Gentleman:: msgbox MauvilleCity_GameCorner_Text_RouletteOnlyLuck, MSGBOX_NPC end -MauvilleCity_GameCorner_EventScript_Girl:: @ 8210137 +MauvilleCity_GameCorner_EventScript_Girl:: lock faceplayer goto_if_set FLAG_RECEIVED_STARTER_DOLL, MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll @@ -414,7 +414,7 @@ MauvilleCity_GameCorner_EventScript_Girl:: @ 8210137 case 2, MauvilleCity_GameCorner_EventScript_GiveMudkipDoll end -MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: @ 821017C +MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: bufferdecorationname 1, DECOR_TREECKO_DOLL checkdecorspace DECOR_TREECKO_DOLL compare VAR_RESULT, FALSE @@ -425,7 +425,7 @@ MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: @ 821017C goto MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll end -MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: @ 82101A6 +MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: bufferdecorationname 1, DECOR_TORCHIC_DOLL checkdecorspace DECOR_TORCHIC_DOLL compare VAR_RESULT, FALSE @@ -436,7 +436,7 @@ MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: @ 82101A6 goto MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll end -MauvilleCity_GameCorner_EventScript_GiveMudkipDoll:: @ 82101D0 +MauvilleCity_GameCorner_EventScript_GiveMudkipDoll:: bufferdecorationname 1, DECOR_MUDKIP_DOLL checkdecorspace DECOR_MUDKIP_DOLL compare VAR_RESULT, FALSE @@ -447,23 +447,23 @@ MauvilleCity_GameCorner_EventScript_GiveMudkipDoll:: @ 82101D0 goto MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll end -MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll:: @ 82101FA +MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll:: call Common_EventScript_NoRoomForDecor msgbox MauvilleCity_GameCorner_Text_YouWantItButNotNow, MSGBOX_DEFAULT release end -MauvilleCity_GameCorner_EventScript_DeclineStarterDoll:: @ 8210209 +MauvilleCity_GameCorner_EventScript_DeclineStarterDoll:: msgbox MauvilleCity_GameCorner_Text_DontBeNegative, MSGBOX_DEFAULT release end -MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll:: @ 8210213 +MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll:: msgbox MauvilleCity_GameCorner_Text_CantWinJackpot, MSGBOX_DEFAULT release end -MauvilleCity_GameCorner_EventScript_PokefanM:: @ 821021D +MauvilleCity_GameCorner_EventScript_PokefanM:: lock faceplayer checkitem ITEM_COIN_CASE, 1 @@ -473,7 +473,7 @@ MauvilleCity_GameCorner_EventScript_PokefanM:: @ 821021D goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_TryGive20Coins:: @ 821023D +MauvilleCity_GameCorner_EventScript_TryGive20Coins:: goto_if_set FLAG_RECEIVED_20_COINS, MauvilleCity_GameCorner_EventScript_PokefanMNormal checkcoins VAR_TEMP_1 compare VAR_TEMP_1, 1 @ Only give 20 coins if player has no coins @@ -485,54 +485,54 @@ MauvilleCity_GameCorner_EventScript_TryGive20Coins:: @ 821023D goto MauvilleCity_GameCorner_EventScript_PokefanMNormal end -MauvilleCity_GameCorner_EventScript_PokefanMNormal:: @ 821026B +MauvilleCity_GameCorner_EventScript_PokefanMNormal:: msgbox MauvilleCity_GameCorner_Text_MauvilleSomethingForEveryone, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_OldMan:: @ 8210279 +MauvilleCity_GameCorner_EventScript_OldMan:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_RouletteTablesDifferentRates, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_Cook:: @ 8210289 +MauvilleCity_GameCorner_EventScript_Cook:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_EasyToLoseTrackOfTime, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_Man:: @ 8210299 +MauvilleCity_GameCorner_EventScript_Man:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_UpTo3CoinsCanBeUsed, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_NPCReturnToSlots:: @ 82102A9 +MauvilleCity_GameCorner_EventScript_NPCReturnToSlots:: closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end -MauvilleCity_GameCorner_EventScript_Maniac:: @ 82102B6 +MauvilleCity_GameCorner_EventScript_Maniac:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_DifficultToStopOn7, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_Woman:: @ 82102C6 +MauvilleCity_GameCorner_EventScript_Woman:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_HeresSomeSlotsInfo, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end -MauvilleCity_GameCorner_EventScript_SlotMachine0:: @ 82102D6 +MauvilleCity_GameCorner_EventScript_SlotMachine0:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -543,7 +543,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine0:: @ 82102D6 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine1:: @ 82102F6 +MauvilleCity_GameCorner_EventScript_SlotMachine1:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -554,7 +554,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine1:: @ 82102F6 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine2:: @ 8210316 +MauvilleCity_GameCorner_EventScript_SlotMachine2:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -565,7 +565,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine2:: @ 8210316 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine3:: @ 8210336 +MauvilleCity_GameCorner_EventScript_SlotMachine3:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -576,7 +576,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine3:: @ 8210336 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine4:: @ 8210356 +MauvilleCity_GameCorner_EventScript_SlotMachine4:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -587,7 +587,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine4:: @ 8210356 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine5:: @ 8210376 +MauvilleCity_GameCorner_EventScript_SlotMachine5:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -598,7 +598,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine5:: @ 8210376 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine6:: @ 8210396 +MauvilleCity_GameCorner_EventScript_SlotMachine6:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -609,7 +609,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine6:: @ 8210396 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine7:: @ 82103B6 +MauvilleCity_GameCorner_EventScript_SlotMachine7:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -620,7 +620,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine7:: @ 82103B6 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine8:: @ 82103D6 +MauvilleCity_GameCorner_EventScript_SlotMachine8:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -631,7 +631,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine8:: @ 82103D6 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine9:: @ 82103F6 +MauvilleCity_GameCorner_EventScript_SlotMachine9:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -642,7 +642,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine9:: @ 82103F6 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine10:: @ 8210416 +MauvilleCity_GameCorner_EventScript_SlotMachine10:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -653,7 +653,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine10:: @ 8210416 releaseall end -MauvilleCity_GameCorner_EventScript_SlotMachine11:: @ 8210436 +MauvilleCity_GameCorner_EventScript_SlotMachine11:: lockall checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE @@ -664,146 +664,146 @@ MauvilleCity_GameCorner_EventScript_SlotMachine11:: @ 8210436 releaseall end -MauvilleCity_GameCorner_EventScript_NoCoinCase:: @ 8210456 +MauvilleCity_GameCorner_EventScript_NoCoinCase:: msgbox MauvilleCity_GameCorner_Text_CantPlayWithNoCoinCase, MSGBOX_DEFAULT releaseall end -MauvilleCity_GameCorner_Text_ThisIsMauvilleGameCorner: @ 8210460 +MauvilleCity_GameCorner_Text_ThisIsMauvilleGameCorner: .string "This is MAUVILLE GAME CORNER.$" -MauvilleCity_GameCorner_Text_NeedCoinCaseForCoins: @ 821047E +MauvilleCity_GameCorner_Text_NeedCoinCaseForCoins: .string "Okay, you wanted some COINS for\n" .string "the games?\p" .string "But you don't have a COIN CASE for\n" .string "stowing the COINS.$" -MauvilleCity_GameCorner_Text_WereYouLookingForCoins: @ 82104DF +MauvilleCity_GameCorner_Text_WereYouLookingForCoins: .string "Were you looking for COINS?\p" .string "It's ¥1000 for 50 COINS.\n" .string "Would you like some?$" -MauvilleCity_GameCorner_Text_ThankYouHereAreYourCoins: @ 8210529 +MauvilleCity_GameCorner_Text_ThankYouHereAreYourCoins: .string "Thank you very much!\n" .string "Here are your COINS!$" -MauvilleCity_GameCorner_Text_DontHaveEnoughMoney: @ 8210553 +MauvilleCity_GameCorner_Text_DontHaveEnoughMoney: .string "Um… You don't appear to have\n" .string "enough money…$" -MauvilleCity_GameCorner_Text_CoinCaseIsFull: @ 821057E +MauvilleCity_GameCorner_Text_CoinCaseIsFull: .string "Oh?\n" .string "Your COIN CASE is full.$" -MauvilleCity_GameCorner_Text_DontNeedCoinsThen: @ 821059A +MauvilleCity_GameCorner_Text_DontNeedCoinsThen: .string "Oh… You don't need COINS, then?\n" .string "Good luck on your adventure!$" -MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes: @ 82105D7 +MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes: .string "Welcome.\p" .string "You can exchange your COINS for\n" .string "prizes here.$" -MauvilleCity_GameCorner_Text_WhichPrize: @ 821060D +MauvilleCity_GameCorner_Text_WhichPrize: .string "Which prize would you like?$" -MauvilleCity_GameCorner_Text_SoYourChoiceIsTheTMX: @ 8210629 +MauvilleCity_GameCorner_Text_SoYourChoiceIsTheTMX: .string "So your choice is\n" .string "the {STR_VAR_1} {STR_VAR_2}?$" -MauvilleCity_GameCorner_Text_SendToYourHomePC: @ 8210646 +MauvilleCity_GameCorner_Text_SendToYourHomePC: .string "Thank you!\n" .string "We'll send it to your PC at home.$" -MauvilleCity_GameCorner_Text_NotEnoughCoins: @ 8210673 +MauvilleCity_GameCorner_Text_NotEnoughCoins: .string "You don't have enough COINS.$" @ Unused -MauvilleCity_GameCorner_Text_NoRoomForPlacingDecor: @ 8210690 +MauvilleCity_GameCorner_Text_NoRoomForPlacingDecor: .string "There isn't any room available for\n" .string "placing {STR_VAR_1}.$" -MauvilleCity_GameCorner_Text_OhIsThatSo: @ 82106BF +MauvilleCity_GameCorner_Text_OhIsThatSo: .string "Oh, is that so? \n" .string "You need to save some COINS before\l" .string "coming back here.$" -MauvilleCity_GameCorner_Text_SoYourChoiceIsX: @ 8210705 +MauvilleCity_GameCorner_Text_SoYourChoiceIsX: .string "So your choice is {STR_VAR_1}?$" -MauvilleCity_GameCorner_Text_HereYouGo: @ 821071B +MauvilleCity_GameCorner_Text_HereYouGo: .string "Here you go!$" @ Unused -MauvilleCity_GameCorner_Text_CantCarryAnyMore: @ 8210728 +MauvilleCity_GameCorner_Text_CantCarryAnyMore: .string "Oh, you can't carry any more than that.$" -MauvilleCity_GameCorner_Text_GotTwoOfSameDollWantOne: @ 8210750 +MauvilleCity_GameCorner_Text_GotTwoOfSameDollWantOne: .string "I made a mistake and got two of\n" .string "the same DOLLS.\p" .string "Would you like one of them?$" -MauvilleCity_GameCorner_Text_HereYouGo2: @ 821079C +MauvilleCity_GameCorner_Text_HereYouGo2: .string "Here you go!$" -MauvilleCity_GameCorner_Text_YouWantItButNotNow: @ 82107A9 +MauvilleCity_GameCorner_Text_YouWantItButNotNow: .string "Huh?\n" .string "You want it, but not right now?$" -MauvilleCity_GameCorner_Text_DontBeNegative: @ 82107CE +MauvilleCity_GameCorner_Text_DontBeNegative: .string "Oh, don't be so negative!\n" .string "You can have this!$" -MauvilleCity_GameCorner_Text_CantWinJackpot: @ 82107FB +MauvilleCity_GameCorner_Text_CantWinJackpot: .string "There's a prize I want, but I can't win\n" .string "the jackpot.$" -MauvilleCity_GameCorner_Text_NeedCoinCaseGoNextDoor: @ 8210830 +MauvilleCity_GameCorner_Text_NeedCoinCaseGoNextDoor: .string "Hey, kid, if you want to play here,\n" .string "you need a COIN CASE.\p" .string "I think the young lady next door\n" .string "had one. Go see her!$" -MauvilleCity_GameCorner_Text_LuckOnlyLastSoLongTakeCoins: @ 82108A0 +MauvilleCity_GameCorner_Text_LuckOnlyLastSoLongTakeCoins: .string "My luck can only last so long.\n" .string "This is too much for me.\l" .string "Here, take some COINS!$" -MauvilleCity_GameCorner_Text_MauvilleSomethingForEveryone: @ 82108EF +MauvilleCity_GameCorner_Text_MauvilleSomethingForEveryone: .string "MAUVILLE has something for\n" .string "everyone.\p" .string "For me, it's the GAME CORNER.$" -MauvilleCity_GameCorner_Text_RouletteTablesDifferentRates: @ 8210932 +MauvilleCity_GameCorner_Text_RouletteTablesDifferentRates: .string "The ROULETTE tables have different\n" .string "rates.\p" .string "Check your COINS if you're going to\n" .string "pick a table.$" -MauvilleCity_GameCorner_Text_EasyToLoseTrackOfTime: @ 821098E +MauvilleCity_GameCorner_Text_EasyToLoseTrackOfTime: .string "It's easy to lose track of time in here. \n" .string "I should get back to work.$" -MauvilleCity_GameCorner_Text_CoinsAreNeededToPlay: @ 82109D3 +MauvilleCity_GameCorner_Text_CoinsAreNeededToPlay: .string "COINS are needed to play here\n" .string "in the GAME CORNER.$" -MauvilleCity_GameCorner_Text_RouletteOnlyLuck: @ 8210A05 +MauvilleCity_GameCorner_Text_RouletteOnlyLuck: .string "This ROULETTE thing…\n" .string "It's rather demanding.\p" .string "Win or lose, it's only by luck.$" -MauvilleCity_GameCorner_Text_UpTo3CoinsCanBeUsed: @ 8210A51 +MauvilleCity_GameCorner_Text_UpTo3CoinsCanBeUsed: .string "Up to three COINS can be used to play\n" .string "the SLOTS.$" -MauvilleCity_GameCorner_Text_DifficultToStopOn7: @ 8210A82 +MauvilleCity_GameCorner_Text_DifficultToStopOn7: .string "It's very difficult to make it stop\n" .string "right on “7.”\p" .string "If it stops on “7” during the REEL TIME\n" .string "bonus game, you'll receive extra COINS.$" -MauvilleCity_GameCorner_Text_HeresSomeSlotsInfo: @ 8210B04 +MauvilleCity_GameCorner_Text_HeresSomeSlotsInfo: .string "Here's some information for you\n" .string "about the SLOTS.\p" .string "The more lightning bolts you stock,\n" @@ -815,7 +815,7 @@ MauvilleCity_GameCorner_Text_HeresSomeSlotsInfo: @ 8210B04 .string "That would total 660 COINS, but it's\n" .string "very difficult to get.$" -MauvilleCity_GameCorner_Text_CantPlayWithNoCoinCase: @ 8210C2E +MauvilleCity_GameCorner_Text_CantPlayWithNoCoinCase: .string "You can't play if you don't have\n" .string "a COIN CASE.$" diff --git a/data/maps/MauvilleCity_Gym/scripts.inc b/data/maps/MauvilleCity_Gym/scripts.inc index 3fa7dc8c94fc..3c09ecfa2042 100644 --- a/data/maps/MauvilleCity_Gym/scripts.inc +++ b/data/maps/MauvilleCity_Gym/scripts.inc @@ -1,8 +1,8 @@ -MauvilleCity_Gym_MapScripts:: @ 820DD6E +MauvilleCity_Gym_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MauvilleCity_Gym_OnLoad .byte 0 -MauvilleCity_Gym_OnLoad: @ 820DD74 +MauvilleCity_Gym_OnLoad: goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_DeactivatePuzzle switch VAR_MAUVILLE_GYM_STATE case 0, MauvilleCity_Gym_EventScript_UpdateBarriers @@ -12,11 +12,11 @@ MauvilleCity_Gym_OnLoad: @ 820DD74 case 4, MauvilleCity_Gym_EventScript_Switch4Pressed end -MauvilleCity_Gym_EventScript_UpdateBarriers:: @ 820DDBA +MauvilleCity_Gym_EventScript_UpdateBarriers:: goto_if_set FLAG_MAUVILLE_GYM_BARRIERS_STATE, MauvilleCity_Gym_EventScript_SetAltBarriers end -MauvilleCity_Gym_EventScript_SetAltBarriers:: @ 820DDC4 +MauvilleCity_Gym_EventScript_SetAltBarriers:: setmetatile 3, 11, METATILE_MauvilleGym_RedBeamV1_On, 1 setmetatile 3, 12, METATILE_MauvilleGym_RedBeamV2_On, 1 setmetatile 3, 13, METATILE_MauvilleGym_PoleTop_On, 1 @@ -45,35 +45,35 @@ MauvilleCity_Gym_EventScript_SetAltBarriers:: @ 820DDC4 setmetatile 5, 7, METATILE_MauvilleGym_GreenBeamH4_Off, 0 end -MauvilleCity_Gym_EventScript_Switch1Pressed:: @ 820DEAF +MauvilleCity_Gym_EventScript_Switch1Pressed:: setvar VAR_0x8004, 0 special MauvilleGymPressSwitch goto MauvilleCity_Gym_EventScript_UpdateBarriers end -MauvilleCity_Gym_EventScript_Switch2Pressed:: @ 820DEBD +MauvilleCity_Gym_EventScript_Switch2Pressed:: setvar VAR_0x8004, 1 special MauvilleGymPressSwitch goto MauvilleCity_Gym_EventScript_UpdateBarriers end -MauvilleCity_Gym_EventScript_Switch3Pressed:: @ 820DECB +MauvilleCity_Gym_EventScript_Switch3Pressed:: setvar VAR_0x8004, 2 special MauvilleGymPressSwitch goto MauvilleCity_Gym_EventScript_UpdateBarriers end -MauvilleCity_Gym_EventScript_Switch4Pressed:: @ 820DED9 +MauvilleCity_Gym_EventScript_Switch4Pressed:: setvar VAR_0x8004, 3 special MauvilleGymPressSwitch goto MauvilleCity_Gym_EventScript_UpdateBarriers end -MauvilleCity_Gym_EventScript_DeactivatePuzzle:: @ 820DEE7 +MauvilleCity_Gym_EventScript_DeactivatePuzzle:: special MauvilleGymDeactivatePuzzle end -MauvilleCity_Gym_EventScript_Wattson:: @ 820DEEB +MauvilleCity_Gym_EventScript_Wattson:: trainerbattle_single TRAINER_WATTSON_1, MauvilleCity_Gym_Text_WattsonIntro, MauvilleCity_Gym_Text_WattsonDefeat, MauvilleCity_Gym_EventScript_WattsonDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -85,7 +85,7 @@ MauvilleCity_Gym_EventScript_Wattson:: @ 820DEEB release end -MauvilleCity_Gym_EventScript_WattsonDefeated:: @ 820DF2B +MauvilleCity_Gym_EventScript_WattsonDefeated:: message MauvilleCity_Gym_Text_ReceivedDynamoBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -114,7 +114,7 @@ MauvilleCity_Gym_EventScript_WattsonDefeated:: @ 820DF2B release end -MauvilleCity_Gym_EventScript_GiveShockWave2:: @ 820DF8D +MauvilleCity_Gym_EventScript_GiveShockWave2:: giveitem ITEM_TM34 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -123,7 +123,7 @@ MauvilleCity_Gym_EventScript_GiveShockWave2:: @ 820DF8D release end -MauvilleCity_Gym_EventScript_GiveShockWave:: @ 820DFB1 +MauvilleCity_Gym_EventScript_GiveShockWave:: giveitem ITEM_TM34 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -131,17 +131,17 @@ MauvilleCity_Gym_EventScript_GiveShockWave:: @ 820DFB1 setflag FLAG_RECEIVED_TM34 return -MauvilleCity_Gym_EventScript_CompletedNewMauville:: @ 820DFD4 +MauvilleCity_Gym_EventScript_CompletedNewMauville:: msgbox MauvilleCity_Gym_Text_WattsonGoForthAndEndeavor, MSGBOX_DEFAULT release end -MauvilleCity_Gym_EventScript_WattsonRematch:: @ 820DFDE +MauvilleCity_Gym_EventScript_WattsonRematch:: trainerbattle_rematch_double TRAINER_WATTSON_1, MauvilleCity_Gym_Text_WattsonPreRematch, MauvilleCity_Gym_Text_WattsonRematchDefeat, MauvilleCity_Gym_Text_WattsonRematchNeedTwoMons msgbox MauvilleCity_Gym_Text_WattsonPostRematch, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_Switch1:: @ 820DFF9 +MauvilleCity_Gym_EventScript_Switch1:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing compare VAR_MAUVILLE_GYM_STATE, 1 @@ -151,7 +151,7 @@ MauvilleCity_Gym_EventScript_Switch1:: @ 820DFF9 goto MauvilleCity_Gym_EventScript_PressFloorSwitch end -MauvilleCity_Gym_EventScript_Switch2:: @ 820E01E +MauvilleCity_Gym_EventScript_Switch2:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing compare VAR_MAUVILLE_GYM_STATE, 2 @@ -161,7 +161,7 @@ MauvilleCity_Gym_EventScript_Switch2:: @ 820E01E goto MauvilleCity_Gym_EventScript_PressFloorSwitch end -MauvilleCity_Gym_EventScript_Switch3:: @ 820E043 +MauvilleCity_Gym_EventScript_Switch3:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing compare VAR_MAUVILLE_GYM_STATE, 3 @@ -171,7 +171,7 @@ MauvilleCity_Gym_EventScript_Switch3:: @ 820E043 goto MauvilleCity_Gym_EventScript_PressFloorSwitch end -MauvilleCity_Gym_EventScript_Switch4:: @ 820E068 +MauvilleCity_Gym_EventScript_Switch4:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing compare VAR_MAUVILLE_GYM_STATE, 4 @@ -181,7 +181,7 @@ MauvilleCity_Gym_EventScript_Switch4:: @ 820E068 goto MauvilleCity_Gym_EventScript_PressFloorSwitch end -MauvilleCity_Gym_EventScript_PressFloorSwitch:: @ 820E08D +MauvilleCity_Gym_EventScript_PressFloorSwitch:: special MauvilleGymSetDefaultBarriers special MauvilleGymPressSwitch special DrawWholeMapView @@ -191,46 +191,46 @@ MauvilleCity_Gym_EventScript_PressFloorSwitch:: @ 820E08D releaseall end -MauvilleCity_Gym_EventScript_SwitchDoNothing:: @ 820E0AD +MauvilleCity_Gym_EventScript_SwitchDoNothing:: releaseall end -MauvilleCity_Gym_EventScript_SetBarriersAltState:: @ 820E0AF +MauvilleCity_Gym_EventScript_SetBarriersAltState:: setflag FLAG_MAUVILLE_GYM_BARRIERS_STATE releaseall end -MauvilleCity_Gym_EventScript_ClearBarriersAltState:: @ 820E0B4 +MauvilleCity_Gym_EventScript_ClearBarriersAltState:: clearflag FLAG_MAUVILLE_GYM_BARRIERS_STATE releaseall end -MauvilleCity_Gym_EventScript_Kirk:: @ 820E0B9 +MauvilleCity_Gym_EventScript_Kirk:: trainerbattle_single TRAINER_KIRK, MauvilleCity_Gym_Text_KirkIntro, MauvilleCity_Gym_Text_KirkDefeat msgbox MauvilleCity_Gym_Text_KirkPostBattle, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_Shawn:: @ 820E0D0 +MauvilleCity_Gym_EventScript_Shawn:: trainerbattle_single TRAINER_SHAWN, MauvilleCity_Gym_Text_ShawnIntro, MauvilleCity_Gym_Text_ShawnDefeat msgbox MauvilleCity_Gym_Text_ShawnPostBattle, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_Ben:: @ 820E0E7 +MauvilleCity_Gym_EventScript_Ben:: trainerbattle_single TRAINER_BEN, MauvilleCity_Gym_Text_BenIntro, MauvilleCity_Gym_Text_BenDefeat msgbox MauvilleCity_Gym_Text_BenPostBattle, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_Vivian:: @ 820E0FE +MauvilleCity_Gym_EventScript_Vivian:: trainerbattle_single TRAINER_VIVIAN, MauvilleCity_Gym_Text_VivianIntro, MauvilleCity_Gym_Text_VivianDefeat msgbox MauvilleCity_Gym_Text_VivianPostBattle, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_Angelo:: @ 820E115 +MauvilleCity_Gym_EventScript_Angelo:: trainerbattle_single TRAINER_ANGELO, MauvilleCity_Gym_Text_AngeloIntro, MauvilleCity_Gym_Text_AngeloDefeat msgbox MauvilleCity_Gym_Text_AngeloPostBattle, MSGBOX_AUTOCLOSE end -MauvilleCity_Gym_EventScript_GymGuide:: @ 820E12C +MauvilleCity_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_GymGuidePostVictory @@ -238,34 +238,34 @@ MauvilleCity_Gym_EventScript_GymGuide:: @ 820E12C release end -MauvilleCity_Gym_EventScript_GymGuidePostVictory:: @ 820E141 +MauvilleCity_Gym_EventScript_GymGuidePostVictory:: msgbox MauvilleCity_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -MauvilleCity_Gym_EventScript_LeftGymStatue:: @ 820E14B +MauvilleCity_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE03_GET, MauvilleCity_Gym_EventScript_GymStatueCertified goto MauvilleCity_Gym_EventScript_GymStatue end -MauvilleCity_Gym_EventScript_RightGymStatue:: @ 820E15B +MauvilleCity_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE03_GET, MauvilleCity_Gym_EventScript_GymStatueCertified goto MauvilleCity_Gym_EventScript_GymStatue end -MauvilleCity_Gym_EventScript_GymStatueCertified:: @ 820E16B +MauvilleCity_Gym_EventScript_GymStatueCertified:: msgbox MauvilleCity_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -MauvilleCity_Gym_EventScript_GymStatue:: @ 820E175 +MauvilleCity_Gym_EventScript_GymStatue:: msgbox MauvilleCity_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -MauvilleCity_Gym_Text_GymGuideAdvice: @ 820E17F +MauvilleCity_Gym_Text_GymGuideAdvice: .string "Hey, how's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "WATTSON, the LEADER of MAUVILLE\n" @@ -276,72 +276,72 @@ MauvilleCity_Gym_Text_GymGuideAdvice: @ 820E17F .string "doors all over his GYM! Eccentric!\p" .string "Hey, go for it!$" -MauvilleCity_Gym_Text_GymGuidePostVictory: @ 820E283 +MauvilleCity_Gym_Text_GymGuidePostVictory: .string "Whoa, you're electrifying!\n" .string "You've powered the door open!$" -MauvilleCity_Gym_Text_KirkIntro: @ 820E2BC +MauvilleCity_Gym_Text_KirkIntro: .string "My electric soul, it'll shatter your\n" .string "dreams whole, whoa-yeahah!$" -MauvilleCity_Gym_Text_KirkDefeat: @ 820E2FC +MauvilleCity_Gym_Text_KirkDefeat: .string "That was plugged in, amped up,\n" .string "over-driven electric, man!$" -MauvilleCity_Gym_Text_KirkPostBattle: @ 820E336 +MauvilleCity_Gym_Text_KirkPostBattle: .string "POKéMON and rock, it's all about heart,\n" .string "whoa-yeah!$" -MauvilleCity_Gym_Text_ShawnIntro: @ 820E369 +MauvilleCity_Gym_Text_ShawnIntro: .string "I trained under WATTSON!\n" .string "There ain't no way I'll lose easily!$" -MauvilleCity_Gym_Text_ShawnDefeat: @ 820E3A7 +MauvilleCity_Gym_Text_ShawnDefeat: .string "Unplugged and turned off…$" -MauvilleCity_Gym_Text_ShawnPostBattle: @ 820E3C1 +MauvilleCity_Gym_Text_ShawnPostBattle: .string "WATTSON, our GYM LEADER, has been\n" .string "around for a long, long time.\p" .string "He was battling even before your\n" .string "daddy was born, that tough coot.$" -MauvilleCity_Gym_Text_BenIntro: @ 820E443 +MauvilleCity_Gym_Text_BenIntro: .string "This GYM's got puzzles!\n" .string "Isn't it fun?$" -MauvilleCity_Gym_Text_BenDefeat: @ 820E469 +MauvilleCity_Gym_Text_BenDefeat: .string "It's no fun to lose…$" -MauvilleCity_Gym_Text_BenPostBattle: @ 820E47E +MauvilleCity_Gym_Text_BenPostBattle: .string "WATTSON says he likes setting up\n" .string "little traps with switches.$" -MauvilleCity_Gym_Text_VivianIntro: @ 820E4BB +MauvilleCity_Gym_Text_VivianIntro: .string "With my charm and my POKéMON's moves,\n" .string "you'll be shocked!$" -MauvilleCity_Gym_Text_VivianDefeat: @ 820E4F4 +MauvilleCity_Gym_Text_VivianDefeat: .string "I'm shocked by your power!$" -MauvilleCity_Gym_Text_VivianPostBattle: @ 820E50F +MauvilleCity_Gym_Text_VivianPostBattle: .string "I've heard that MAUVILLE was founded\n" .string "by WATTSON.\p" .string "He was a TRAINER long before we\n" .string "became TRAINERS.\l" .string "He must know all sorts of things!$" -MauvilleCity_Gym_Text_AngeloIntro: @ 820E593 +MauvilleCity_Gym_Text_AngeloIntro: .string "I love shiny things!$" -MauvilleCity_Gym_Text_AngeloDefeat: @ 820E5A8 +MauvilleCity_Gym_Text_AngeloDefeat: .string "Oh…\n" .string "My eyes are frazzled…$" -MauvilleCity_Gym_Text_AngeloPostBattle: @ 820E5C2 +MauvilleCity_Gym_Text_AngeloPostBattle: .string "MAUVILLE GYM's WATTSON has a shiny\n" .string "forehead. It makes me happy!$" -MauvilleCity_Gym_Text_WattsonIntro: @ 820E602 +MauvilleCity_Gym_Text_WattsonIntro: .string "I've given up on my plans to convert\n" .string "the city, I have.\p" .string "And so, I put my time into making\n" @@ -354,17 +354,17 @@ MauvilleCity_Gym_Text_WattsonIntro: @ 820E602 .string "Then, I, WATTSON, the LEADER of\n" .string "MAUVILLE GYM, shall electrify you!$" -MauvilleCity_Gym_Text_WattsonDefeat: @ 820E734 +MauvilleCity_Gym_Text_WattsonDefeat: .string "Wahahahah!\n" .string "Fine, I lost!\p" .string "You ended up giving me a thrill!\n" .string "Take this BADGE!$" -MauvilleCity_Gym_Text_ReceivedDynamoBadge: @ 820E77F +MauvilleCity_Gym_Text_ReceivedDynamoBadge: .string "{PLAYER} received the DYNAMO BADGE\n" .string "from WATTSON.$" -MauvilleCity_Gym_Text_ExplainDynamoBadgeTakeThis: @ 820E7AA +MauvilleCity_Gym_Text_ExplainDynamoBadgeTakeThis: .string "With the DYNAMO BADGE, POKéMON can\n" .string "use ROCK SMASH out of battle.\p" .string "And, it will make your POKéMON a little\n" @@ -372,33 +372,33 @@ MauvilleCity_Gym_Text_ExplainDynamoBadgeTakeThis: @ 820E7AA .string "Hmm…\n" .string "You should take this, too!$" -MauvilleCity_Gym_Text_ExplainShockWave: @ 820E844 +MauvilleCity_Gym_Text_ExplainShockWave: .string "That TM34 there contains SHOCK WAVE.\p" .string "It's a trustworthy move that never\n" .string "misses! You can count on it!\p" .string "… … … … … …$" -MauvilleCity_Gym_Text_RegisteredWattson: @ 820E8B5 +MauvilleCity_Gym_Text_RegisteredWattson: .string "Registered GYM LEADER WATTSON\n" .string "in the POKéNAV.$" -MauvilleCity_Gym_Text_WattsonPostBattle: @ 820E8E3 +MauvilleCity_Gym_Text_WattsonPostBattle: .string "I swell with optimism, seeing a promising\n" .string "young TRAINER like you!$" -MauvilleCity_Gym_Text_WattsonGoForthAndEndeavor: @ 820E925 +MauvilleCity_Gym_Text_WattsonGoForthAndEndeavor: .string "Wahahahah!\n" .string "Go forth and endeavor, youngster!$" -MauvilleCity_Gym_Text_GymStatue: @ 820E952 +MauvilleCity_Gym_Text_GymStatue: .string "MAUVILLE CITY POKéMON GYM$" -MauvilleCity_Gym_Text_GymStatueCertified: @ 820E96C +MauvilleCity_Gym_Text_GymStatueCertified: .string "MAUVILLE CITY POKéMON GYM\p" .string "WATTSON'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -MauvilleCity_Gym_Text_WattsonPreRematch: @ 820E9A7 +MauvilleCity_Gym_Text_WattsonPreRematch: .string "WATTSON: Ah-ha! Here at last!\n" .string "I know what you want.\l" .string "You want to battle my POKéMON!\p" @@ -406,11 +406,11 @@ MauvilleCity_Gym_Text_WattsonPreRematch: @ 820E9A7 .string "I'll make sparks fly from you!\n" .string "Don't say I didn't warn you!$" -MauvilleCity_Gym_Text_WattsonRematchDefeat: @ 820EA42 +MauvilleCity_Gym_Text_WattsonRematchDefeat: .string "Oof…\n" .string "Our batteries ran dry…$" -MauvilleCity_Gym_Text_WattsonPostRematch: @ 820EA5E +MauvilleCity_Gym_Text_WattsonPostRematch: .string "WATTSON: We'll have to recharge our\n" .string "batteries again.\p" .string "When we're fully charged up, we'll\n" @@ -418,7 +418,7 @@ MauvilleCity_Gym_Text_WattsonPostRematch: @ 820EA5E .string "So, come back again sometime,\n" .string "won't you?$" -MauvilleCity_Gym_Text_WattsonRematchNeedTwoMons: @ 820EAFD +MauvilleCity_Gym_Text_WattsonRematchNeedTwoMons: .string "WATTSON: Ah-ha! Here at last!\n" .string "I know what you want.\l" .string "You want to battle my POKéMON!\p" diff --git a/data/maps/MauvilleCity_House1/scripts.inc b/data/maps/MauvilleCity_House1/scripts.inc index 21655a1b8610..d0d3481a663a 100644 --- a/data/maps/MauvilleCity_House1/scripts.inc +++ b/data/maps/MauvilleCity_House1/scripts.inc @@ -1,7 +1,7 @@ -MauvilleCity_House1_MapScripts:: @ 820F975 +MauvilleCity_House1_MapScripts:: .byte 0 -MauvilleCity_House1_EventScript_RockSmashDude:: @ 820F976 +MauvilleCity_House1_EventScript_RockSmashDude:: lock faceplayer goto_if_set FLAG_RECEIVED_HM06, MauvilleCity_House1_EventScript_ReceivedRockSmash @@ -13,12 +13,12 @@ MauvilleCity_House1_EventScript_RockSmashDude:: @ 820F976 release end -MauvilleCity_House1_EventScript_ReceivedRockSmash:: @ 820F9A5 +MauvilleCity_House1_EventScript_ReceivedRockSmash:: msgbox MauvilleCity_House1_Text_MonCanFlyOutOfSmashedRock, MSGBOX_DEFAULT release end -MauvilleCity_House1_Text_ImRockSmashDudeTakeThis: @ 820F9AF +MauvilleCity_House1_Text_ImRockSmashDudeTakeThis: .string "Woohoo!\p" .string "I hear people call me the ROCK SMASH\n" .string "GUY, but I find that sort of degrading.\p" @@ -30,7 +30,7 @@ MauvilleCity_House1_Text_ImRockSmashDudeTakeThis: @ 820F9AF .string "I like that!\n" .string "Here, take this HIDDEN MACHINE!$" -MauvilleCity_House1_Text_ExplainRockSmash: @ 820FAA9 +MauvilleCity_House1_Text_ExplainRockSmash: .string "That HM contains ROCK SMASH.\p" .string "If you come across large boulders\n" .string "that block your path…\p" @@ -39,7 +39,7 @@ MauvilleCity_House1_Text_ExplainRockSmash: @ 820FAA9 .string "Yes, sir! Smash rocks aside, I say!\n" .string "Woohoo!$" -MauvilleCity_House1_Text_MonCanFlyOutOfSmashedRock: @ 820FB67 +MauvilleCity_House1_Text_MonCanFlyOutOfSmashedRock: .string "Oh, yes, if you smash a rock, a POKéMON\n" .string "could come flying out of hiding.\p" .string "Woohoo!$" diff --git a/data/maps/MauvilleCity_House2/scripts.inc b/data/maps/MauvilleCity_House2/scripts.inc index 06ec830ea1c1..178b79f9b4ed 100644 --- a/data/maps/MauvilleCity_House2/scripts.inc +++ b/data/maps/MauvilleCity_House2/scripts.inc @@ -1,7 +1,7 @@ -MauvilleCity_House2_MapScripts:: @ 8210C5C +MauvilleCity_House2_MapScripts:: .byte 0 -MauvilleCity_House2_EventScript_Woman:: @ 8210C5D +MauvilleCity_House2_EventScript_Woman:: lock faceplayer goto_if_set FLAG_RECEIVED_COIN_CASE, MauvilleCity_House2_EventScript_ReceivedCoinCase @@ -12,7 +12,7 @@ MauvilleCity_House2_EventScript_Woman:: @ 8210C5D release end -MauvilleCity_House2_EventScript_AskToTradeForHarborMail:: @ 8210C82 +MauvilleCity_House2_EventScript_AskToTradeForHarborMail:: playse SE_PIN applymovement VAR_LAST_TALKED, Common_Movement_ExclamationMark waitmovement 0 @@ -25,7 +25,7 @@ MauvilleCity_House2_EventScript_AskToTradeForHarborMail:: @ 8210C82 goto_if_eq MauvilleCity_House2_EventScript_DeclineTrade end -MauvilleCity_House2_EventScript_AcceptTrade:: @ 8210CB8 +MauvilleCity_House2_EventScript_AcceptTrade:: msgbox MauvilleCity_House2_Text_IllTradeYouCoinCase, MSGBOX_DEFAULT removeitem ITEM_HARBOR_MAIL giveitem ITEM_COIN_CASE @@ -33,35 +33,35 @@ MauvilleCity_House2_EventScript_AcceptTrade:: @ 8210CB8 goto MauvilleCity_House2_EventScript_ReceivedCoinCase end -MauvilleCity_House2_EventScript_ReceivedCoinCase:: @ 8210CDA +MauvilleCity_House2_EventScript_ReceivedCoinCase:: msgbox MauvilleCity_House2_Text_UseCoinCaseAtGameCorner, MSGBOX_DEFAULT release end -MauvilleCity_House2_EventScript_DeclineTrade:: @ 8210CE4 +MauvilleCity_House2_EventScript_DeclineTrade:: msgbox MauvilleCity_House2_Text_ThatsDisappointing, MSGBOX_DEFAULT release end -MauvilleCity_House2_Text_BuyHarborMailAtSlateport: @ 8210CEE +MauvilleCity_House2_Text_BuyHarborMailAtSlateport: .string "If I had a BIKE, it'd be easy to cycle to\n" .string "SLATEPORT for some shopping.\p" .string "I'd be able to buy HARBOR MAIL at the\n" .string "POKéMON MART in SLATEPORT…$" -MauvilleCity_House2_Text_TradeHarborMailForCoinCase: @ 8210D76 +MauvilleCity_House2_Text_TradeHarborMailForCoinCase: .string "Oh! You have HARBOR MAIL?\n" .string "Will you trade it for a COIN CASE?$" -MauvilleCity_House2_Text_IllTradeYouCoinCase: @ 8210DB3 +MauvilleCity_House2_Text_IllTradeYouCoinCase: .string "Oh, I'm so happy!\n" .string "Okay, I'll trade you a COIN CASE!$" -MauvilleCity_House2_Text_UseCoinCaseAtGameCorner: @ 8210DE7 +MauvilleCity_House2_Text_UseCoinCaseAtGameCorner: .string "That COIN CASE can be used\n" .string "at the GAME CORNER.$" -MauvilleCity_House2_Text_ThatsDisappointing: @ 8210E16 +MauvilleCity_House2_Text_ThatsDisappointing: .string "Oh, that's disappointing.\p" .string "A COIN CASE is needed for the\n" .string "GAME CORNER.$" diff --git a/data/maps/MauvilleCity_Mart/scripts.inc b/data/maps/MauvilleCity_Mart/scripts.inc index b288d42b7d05..4cf5bc20bb82 100644 --- a/data/maps/MauvilleCity_Mart/scripts.inc +++ b/data/maps/MauvilleCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -MauvilleCity_Mart_MapScripts:: @ 82110E5 +MauvilleCity_Mart_MapScripts:: .byte 0 -MauvilleCity_Mart_EventScript_Clerk:: @ 82110E6 +MauvilleCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ MauvilleCity_Mart_EventScript_Clerk:: @ 82110E6 end .align 2 -MauvilleCity_Mart_Pokemart: @ 8211100 +MauvilleCity_Mart_Pokemart: .2byte ITEM_POKE_BALL .2byte ITEM_GREAT_BALL .2byte ITEM_SUPER_POTION @@ -29,15 +29,15 @@ MauvilleCity_Mart_Pokemart: @ 8211100 release end -MauvilleCity_Mart_EventScript_ExpertM:: @ 821111C +MauvilleCity_Mart_EventScript_ExpertM:: msgbox MauvilleCity_Mart_Text_ItemsToTemporarilyElevateStats, MSGBOX_NPC end -MauvilleCity_Mart_EventScript_Man:: @ 8211125 +MauvilleCity_Mart_EventScript_Man:: msgbox MauvilleCity_Mart_Text_DecisionsDetermineBattle, MSGBOX_NPC end -MauvilleCity_Mart_Text_ItemsToTemporarilyElevateStats: @ 821112E +MauvilleCity_Mart_Text_ItemsToTemporarilyElevateStats: .string "There are items that temporarily\n" .string "elevate the stats of POKéMON.\p" .string "The ones I know you use in battle\n" @@ -45,7 +45,7 @@ MauvilleCity_Mart_Text_ItemsToTemporarilyElevateStats: @ 821112E .string "I do believe that there are others\n" .string "like them.$" -MauvilleCity_Mart_Text_DecisionsDetermineBattle: @ 82111D8 +MauvilleCity_Mart_Text_DecisionsDetermineBattle: .string "Use a certain move, or use an item\n" .string "instead…\p" .string "The TRAINER's decisions determine how\n" diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc index 179dfad8abff..4347c4773442 100644 --- a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc @@ -1,21 +1,21 @@ .set LOCALID_NURSE, 1 -MauvilleCity_PokemonCenter_1F_MapScripts:: @ 8210E5B +MauvilleCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MauvilleCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -MauvilleCity_PokemonCenter_1F_OnTransition: @ 8210E66 +MauvilleCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_MAUVILLE_CITY call Common_EventScript_UpdateBrineyLocation goto MauvilleCity_PokemonCenter_1F_EventScript_SetMauvilleOldManGfx end -MauvilleCity_PokemonCenter_1F_EventScript_SetMauvilleOldManGfx:: @ 8210E74 +MauvilleCity_PokemonCenter_1F_EventScript_SetMauvilleOldManGfx:: special ScrSpecial_SetMauvilleOldManObjEventGfx end -MauvilleCity_PokemonCenter_1F_EventScript_Nurse:: @ 8210E78 +MauvilleCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -23,32 +23,32 @@ MauvilleCity_PokemonCenter_1F_EventScript_Nurse:: @ 8210E78 release end -MauvilleCity_PokemonCenter_1F_EventScript_Woman1:: @ 8210E86 +MauvilleCity_PokemonCenter_1F_EventScript_Woman1:: msgbox MauvilleCity_PokemonCenter_1F_Text_ManOverThereSaysWeirdThings, MSGBOX_NPC end -MauvilleCity_PokemonCenter_1F_EventScript_Woman2:: @ 8210E8F +MauvilleCity_PokemonCenter_1F_EventScript_Woman2:: msgbox MauvilleCity_PokemonCenter_1F_Text_MyDataUpdatedFromRecordCorner, MSGBOX_NPC end -MauvilleCity_PokemonCenter_1F_EventScript_Youngster:: @ 8210E98 +MauvilleCity_PokemonCenter_1F_EventScript_Youngster:: msgbox MauvilleCity_PokemonCenter_1F_Text_RecordCornerSoundsFun, MSGBOX_NPC end -MauvilleCity_PokemonCenter_1F_Text_ManOverThereSaysWeirdThings: @ 8210EA1 +MauvilleCity_PokemonCenter_1F_Text_ManOverThereSaysWeirdThings: .string "That man over there, he says weird\n" .string "things!\p" .string "He's funny in a weird way.\n" .string "I doubt I'll forget about him!$" -MauvilleCity_PokemonCenter_1F_Text_MyDataUpdatedFromRecordCorner: @ 8210F06 +MauvilleCity_PokemonCenter_1F_Text_MyDataUpdatedFromRecordCorner: .string "When I accessed the RECORD CORNER,\n" .string "the data for what's hot in DEWFORD\l" .string "got updated.\p" .string "Now that bit of data is the same\n" .string "as my friend's!$" -MauvilleCity_PokemonCenter_1F_Text_RecordCornerSoundsFun: @ 8210F8A +MauvilleCity_PokemonCenter_1F_Text_RecordCornerSoundsFun: .string "A RECORD CORNER opened upstairs in\n" .string "the POKéMON CENTER.\p" .string "I don't know what it's about, but it\n" diff --git a/data/maps/MauvilleCity_PokemonCenter_2F/scripts.inc b/data/maps/MauvilleCity_PokemonCenter_2F/scripts.inc index 9626e4882683..e6a716ec266d 100644 --- a/data/maps/MauvilleCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/MauvilleCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -MauvilleCity_PokemonCenter_2F_MapScripts:: @ 8211008 +MauvilleCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,23 +6,23 @@ MauvilleCity_PokemonCenter_2F_MapScripts:: @ 8211008 .byte 0 @ The below 3 are unused and leftover from RS -MauvilleCity_PokemonCenter_2F_EventScript_Colosseum:: @ 821101D +MauvilleCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -MauvilleCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8211023 +MauvilleCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -MauvilleCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 8211029 +MauvilleCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end -MauvilleCity_PokemonCenter_2F_EventScript_Youngster:: @ 821102F +MauvilleCity_PokemonCenter_2F_EventScript_Youngster:: msgbox MauvilleCity_PokemonCenter_2F_Text_Youngster, MSGBOX_NPC end -MauvilleCity_PokemonCenter_2F_Text_Youngster: @ 8211038 +MauvilleCity_PokemonCenter_2F_Text_Youngster: .string "Did you know that you can link battle\n" .string "at the COLOSSEUM here?\p" .string "They put up your record on the wall\n" diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc index 8202267b9216..4a40912697c8 100644 --- a/data/maps/MeteorFalls_1F_1R/scripts.inc +++ b/data/maps/MeteorFalls_1F_1R/scripts.inc @@ -4,22 +4,22 @@ .set LOCALID_AQUA_GRUNT_1, 8 .set LOCALID_AQUA_GRUNT_2, 9 -MeteorFalls_1F_1R_MapScripts:: @ 822BD2A +MeteorFalls_1F_1R_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MeteorFalls_1F_1R_OnLoad .byte 0 -MeteorFalls_1F_1R_OnLoad: @ 822BD30 +MeteorFalls_1F_1R_OnLoad: call_if_set FLAG_SYS_GAME_CLEAR, MeteorFalls_1F_1R_EventScript_OpenStevensCave end -MeteorFalls_1F_1R_EventScript_OpenStevensCave:: @ 822BD3A +MeteorFalls_1F_1R_EventScript_OpenStevensCave:: setmetatile 4, 1, METATILE_MeteorFalls_CaveEntrance_Top, 1 setmetatile 3, 2, METATILE_MeteorFalls_CaveEntrance_Left, 1 setmetatile 4, 2, METATILE_MeteorFalls_CaveEntrance_Bottom, 0 setmetatile 5, 2, METATILE_MeteorFalls_CaveEntrance_Right, 1 return -MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: @ 822BD5F +MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: lockall playbgm MUS_ENCOUNTER_MAGMA, FALSE applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceDown @@ -96,13 +96,13 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: @ 822BD5F releaseall end -MeteorFalls_1F_1R_Movement_MagmaGruntApproachPlayer: @ 822BEC0 +MeteorFalls_1F_1R_Movement_MagmaGruntApproachPlayer: walk_right walk_right walk_in_place_fastest_up step_end -MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit: @ 822BEC4 +MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit: walk_fast_up walk_fast_up walk_fast_right @@ -114,7 +114,7 @@ MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit: @ 822BEC4 walk_fast_right step_end -MeteorFalls_1F_1R_Movement_MagmaGrunt2Exit: @ 822BECE +MeteorFalls_1F_1R_Movement_MagmaGrunt2Exit: walk_fast_up walk_fast_up walk_fast_up @@ -127,7 +127,7 @@ MeteorFalls_1F_1R_Movement_MagmaGrunt2Exit: @ 822BECE walk_fast_right step_end -MeteorFalls_1F_1R_Movement_ArchieArrive: @ 822BED9 +MeteorFalls_1F_1R_Movement_ArchieArrive: walk_right walk_right walk_right @@ -136,7 +136,7 @@ MeteorFalls_1F_1R_Movement_ArchieArrive: @ 822BED9 walk_right step_end -MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive: @ 822BEE0 +MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive: delay_16 delay_16 walk_right @@ -146,7 +146,7 @@ MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive: @ 822BEE0 walk_right step_end -MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive: @ 822BEE8 +MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive: delay_16 delay_16 walk_right @@ -156,7 +156,7 @@ MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive: @ 822BEE8 walk_right step_end -MeteorFalls_1F_1R_Movement_ArchieExit: @ 822BEF0 +MeteorFalls_1F_1R_Movement_ArchieExit: walk_right walk_right walk_right @@ -166,7 +166,7 @@ MeteorFalls_1F_1R_Movement_ArchieExit: @ 822BEF0 walk_right step_end -MeteorFalls_1F_1R_Movement_ArchieApproachPlayer: @ 822BEF8 +MeteorFalls_1F_1R_Movement_ArchieApproachPlayer: walk_right walk_right walk_up @@ -174,7 +174,7 @@ MeteorFalls_1F_1R_Movement_ArchieApproachPlayer: @ 822BEF8 walk_in_place_fastest_left step_end -MeteorFalls_1F_1R_Movement_AquaGrunt1Exit: @ 822BEFE +MeteorFalls_1F_1R_Movement_AquaGrunt1Exit: walk_up walk_up walk_right @@ -186,14 +186,14 @@ MeteorFalls_1F_1R_Movement_AquaGrunt1Exit: @ 822BEFE walk_right step_end -MeteorFalls_1F_1R_Movement_AquaGrunt1ApproachArchie: @ 822BF08 +MeteorFalls_1F_1R_Movement_AquaGrunt1ApproachArchie: walk_right walk_right walk_right walk_in_place_fastest_up step_end -MeteorFalls_1F_1R_Movement_AquaGrunt2Exit: @ 822BF0D +MeteorFalls_1F_1R_Movement_AquaGrunt2Exit: walk_up walk_up walk_up @@ -206,14 +206,14 @@ MeteorFalls_1F_1R_Movement_AquaGrunt2Exit: @ 822BF0D walk_right step_end -MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie: @ 822BF18 +MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie: walk_right walk_right walk_right walk_in_place_fastest_up step_end -MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay: @ 822BF1D +MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay: walk_in_place_fastest_down delay_4 walk_in_place_fastest_right @@ -223,7 +223,7 @@ MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay: @ 822BF1D face_right step_end -MeteorFalls_1F_1R_EventScript_ProfCozmo:: @ 822BF25 +MeteorFalls_1F_1R_EventScript_ProfCozmo:: lock faceplayer goto_if_set FLAG_MET_PROF_COZMO, MeteorFalls_1F_1R_EventScript_MetCozmo @@ -232,28 +232,28 @@ MeteorFalls_1F_1R_EventScript_ProfCozmo:: @ 822BF25 release end -MeteorFalls_1F_1R_EventScript_MetCozmo:: @ 822BF3D +MeteorFalls_1F_1R_EventScript_MetCozmo:: msgbox MeteorFalls_1F_1R_Text_WhatsTeamMagmaDoingAtMtChimney, MSGBOX_DEFAULT release end -MeteorFalls_1F_1R_Text_WithThisMeteorite: @ 822BF47 +MeteorFalls_1F_1R_Text_WithThisMeteorite: .string "Hehehe!\p" .string "With this METEORITE, that thing in\n" .string "MT. CHIMNEY will…$" -MeteorFalls_1F_1R_Text_DontExpectMercyFromMagma: @ 822BF84 +MeteorFalls_1F_1R_Text_DontExpectMercyFromMagma: .string "Heh?\p" .string "I don't know who you are, but if you get\n" .string "in the way of TEAM MAGMA, don't\l" .string "expect any mercy!$" -MeteorFalls_1F_1R_Text_HoldItRightThereMagma: @ 822BFE4 +MeteorFalls_1F_1R_Text_HoldItRightThereMagma: .string "Hold it right there, TEAM MAGMA!\p" .string "You're badly mistaken if you think you\n" .string "can have your way with the world!$" -MeteorFalls_1F_1R_Text_BeSeeingYouTeamAqua: @ 822C04E +MeteorFalls_1F_1R_Text_BeSeeingYouTeamAqua: .string "Hehehe!\n" .string "Even TEAM AQUA joins us!\p" .string "But it's too much trouble to deal with\n" @@ -264,7 +264,7 @@ MeteorFalls_1F_1R_Text_BeSeeingYouTeamAqua: @ 822C04E .string "Hehehe! Be seeing you, you TEAM\n" .string "AQUA dingbats!$" -MeteorFalls_1F_1R_Text_ArchieSeenYouBefore: @ 822C11C +MeteorFalls_1F_1R_Text_ArchieSeenYouBefore: .string "ARCHIE: Didn't I see you before?\n" .string "At SLATEPORT's MUSEUM?\p" .string "Ah, so your name is {PLAYER}.\p" @@ -279,22 +279,22 @@ MeteorFalls_1F_1R_Text_ArchieSeenYouBefore: @ 822C11C .string "They are the rivals to us,\n" .string "the sea-loving TEAM AQUA!$" -MeteorFalls_1F_1R_Text_BossWeShouldChaseMagma: @ 822C268 +MeteorFalls_1F_1R_Text_BossWeShouldChaseMagma: .string "BOSS, we should give chase to\n" .string "TEAM MAGMA…$" -MeteorFalls_1F_1R_Text_ArchieYesNoTellingWhatMagmaWillDo: @ 822C292 +MeteorFalls_1F_1R_Text_ArchieYesNoTellingWhatMagmaWillDo: .string "ARCHIE: Yes, yes, we must!\n" .string "We've got to hurry.\p" .string "There's no telling what TEAM MAGMA\n" .string "will do at MT. CHIMNEY!$" -MeteorFalls_1F_1R_Text_ArchieFarewell: @ 822C2FC +MeteorFalls_1F_1R_Text_ArchieFarewell: .string "ARCHIE: {PLAYER}, you should keep\n" .string "an eye out for TEAM MAGMA, too.\p" .string "Farewell!$" -MeteorFalls_1F_1R_Text_MeetProfCozmo: @ 822C342 +MeteorFalls_1F_1R_Text_MeetProfCozmo: .string "I… I'm COZMO…\n" .string "I'm a PROFESSOR…\p" .string "TEAM MAGMA asked me to guide them\n" @@ -309,7 +309,7 @@ MeteorFalls_1F_1R_Text_MeetProfCozmo: @ 822C342 .string "What are they going to do with that\n" .string "METEORITE at MT. CHIMNEY?$" -MeteorFalls_1F_1R_Text_WhatsTeamMagmaDoingAtMtChimney: @ 822C47D +MeteorFalls_1F_1R_Text_WhatsTeamMagmaDoingAtMtChimney: .string "PROF. COZMO: But that TEAM MAGMA…\p" .string "What are they going to do with that\n" .string "METEORITE at MT. CHIMNEY?$" diff --git a/data/maps/MeteorFalls_1F_2R/scripts.inc b/data/maps/MeteorFalls_1F_2R/scripts.inc index 0fa73212e9e3..706d362bed63 100644 --- a/data/maps/MeteorFalls_1F_2R/scripts.inc +++ b/data/maps/MeteorFalls_1F_2R/scripts.inc @@ -1,7 +1,7 @@ -MeteorFalls_1F_2R_MapScripts:: @ 822C4DD +MeteorFalls_1F_2R_MapScripts:: .byte 0 -MeteorFalls_1F_2R_EventScript_Nicolas:: @ 822C4DE +MeteorFalls_1F_2R_EventScript_Nicolas:: trainerbattle_single TRAINER_NICOLAS_1, MeteorFalls_1F_2R_Text_NicolasIntro, MeteorFalls_1F_2R_Text_NicolasDefeat, MeteorFalls_1F_2R_EventScript_RegisterNicolas specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -10,7 +10,7 @@ MeteorFalls_1F_2R_EventScript_Nicolas:: @ 822C4DE release end -MeteorFalls_1F_2R_EventScript_RegisterNicolas:: @ 822C50A +MeteorFalls_1F_2R_EventScript_RegisterNicolas:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox MeteorFalls_1F_2R_Text_NicolasRegister, MSGBOX_DEFAULT @@ -18,12 +18,12 @@ MeteorFalls_1F_2R_EventScript_RegisterNicolas:: @ 822C50A release end -MeteorFalls_1F_2R_EventScript_RematchNicolas:: @ 822C529 +MeteorFalls_1F_2R_EventScript_RematchNicolas:: trainerbattle_rematch TRAINER_NICOLAS_1, MeteorFalls_1F_2R_Text_NicolasRematchIntro, MeteorFalls_1F_2R_Text_NicolasRematchDefeat msgbox MeteorFalls_1F_2R_Text_NicolasPostRematch, MSGBOX_AUTOCLOSE end -MeteorFalls_1F_2R_EventScript_John:: @ 822C540 +MeteorFalls_1F_2R_EventScript_John:: trainerbattle_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JohnIntro, MeteorFalls_1F_2R_Text_JohnDefeat, MeteorFalls_1F_2R_Text_JohnNotEnoughMons, MeteorFalls_1F_2R_EventScript_RegisterJohn specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -32,18 +32,18 @@ MeteorFalls_1F_2R_EventScript_John:: @ 822C540 release end -MeteorFalls_1F_2R_EventScript_RegisterJohn:: @ 822C570 +MeteorFalls_1F_2R_EventScript_RegisterJohn:: msgbox MeteorFalls_1F_2R_Text_JohnRegister, MSGBOX_DEFAULT register_matchcall TRAINER_JOHN_AND_JAY_1 release end -MeteorFalls_1F_2R_EventScript_RematchJohn:: @ 822C589 +MeteorFalls_1F_2R_EventScript_RematchJohn:: trainerbattle_rematch_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JohnRematchIntro, MeteorFalls_1F_2R_Text_JohnRematchDefeat, MeteorFalls_1F_2R_Text_JohnRematchNotEnoughMons msgbox MeteorFalls_1F_2R_Text_JohnPostRematch, MSGBOX_AUTOCLOSE end -MeteorFalls_1F_2R_EventScript_Jay:: @ 822C5A4 +MeteorFalls_1F_2R_EventScript_Jay:: trainerbattle_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JayIntro, MeteorFalls_1F_2R_Text_JayDefeat, MeteorFalls_1F_2R_Text_JayNotEnoughMons, MeteorFalls_1F_2R_EventScript_RegisterJay specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -52,133 +52,133 @@ MeteorFalls_1F_2R_EventScript_Jay:: @ 822C5A4 release end -MeteorFalls_1F_2R_EventScript_RegisterJay:: @ 822C5D4 +MeteorFalls_1F_2R_EventScript_RegisterJay:: msgbox MeteorFalls_1F_2R_Text_JohnRegister, MSGBOX_DEFAULT @ John speaks for both during register register_matchcall TRAINER_JOHN_AND_JAY_1 release end -MeteorFalls_1F_2R_EventScript_RematchJay:: @ 822C5ED +MeteorFalls_1F_2R_EventScript_RematchJay:: trainerbattle_rematch_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JayRematchIntro, MeteorFalls_1F_2R_Text_JayRematchDefeat, MeteorFalls_1F_2R_Text_JayRematchNotEnoughMons msgbox MeteorFalls_1F_2R_Text_JayPostRematch, MSGBOX_AUTOCLOSE end -MeteorFalls_1F_2R_Text_NicolasIntro: @ 822C608 +MeteorFalls_1F_2R_Text_NicolasIntro: .string "This is where we DRAGON users do our\n" .string "training.\p" .string "The CHAMPION even visits.\n" .string "Now do you see how special it is here?$" -MeteorFalls_1F_2R_Text_NicolasDefeat: @ 822C678 +MeteorFalls_1F_2R_Text_NicolasDefeat: .string "Urgh!\n" .string "I didn't expect you to be so strong!$" -MeteorFalls_1F_2R_Text_NicolasPostBattle: @ 822C6A3 +MeteorFalls_1F_2R_Text_NicolasPostBattle: .string "The road ahead remains long and harsh.\p" .string "When will my POKéMON and I become\n" .string "the best?$" -MeteorFalls_1F_2R_Text_NicolasRegister: @ 822C6F6 +MeteorFalls_1F_2R_Text_NicolasRegister: .string "I want to know more about your power.\n" .string "Let me register you in my POKéNAV.$" -MeteorFalls_1F_2R_Text_NicolasRematchIntro: @ 822C73F +MeteorFalls_1F_2R_Text_NicolasRematchIntro: .string "Since we met, we have trained hard\n" .string "with our sights on number one.\p" .string "Help us see how much stronger we've\n" .string "become!$" -MeteorFalls_1F_2R_Text_NicolasRematchDefeat: @ 822C7AD +MeteorFalls_1F_2R_Text_NicolasRematchDefeat: .string "Urgh!\n" .string "I didn't expect you to be so strong!$" -MeteorFalls_1F_2R_Text_NicolasPostRematch: @ 822C7D8 +MeteorFalls_1F_2R_Text_NicolasPostRematch: .string "You've obviously kept up your\n" .string "POKéMON training.\p" .string "So long as you remain strong, I, too,\n" .string "can become stronger!$" -MeteorFalls_1F_2R_Text_JohnIntro: @ 822C843 +MeteorFalls_1F_2R_Text_JohnIntro: .string "JOHN: We've always battled POKéMON\n" .string "together as a twosome.\l" .string "We've confidence in ourselves.$" -MeteorFalls_1F_2R_Text_JohnDefeat: @ 822C89C +MeteorFalls_1F_2R_Text_JohnDefeat: .string "JOHN: Oh, my.\n" .string "We've lost, dear wife.$" -MeteorFalls_1F_2R_Text_JohnPostBattle: @ 822C8C1 +MeteorFalls_1F_2R_Text_JohnPostBattle: .string "JOHN: We've been married for\n" .string "fifty years.\p" .string "Come to think of it, I've yet to beat\n" .string "my dear wife in a battle.$" -MeteorFalls_1F_2R_Text_JohnNotEnoughMons: @ 822C92B +MeteorFalls_1F_2R_Text_JohnNotEnoughMons: .string "JOHN: Well, well, what a young TRAINER!\p" .string "Will you battle with us? If so, you'll\n" .string "have to return with more POKéMON.$" -MeteorFalls_1F_2R_Text_JohnRegister: @ 822C99C +MeteorFalls_1F_2R_Text_JohnRegister: .string "JOHN: Young TRAINER, if the chance\n" .string "arises, will you battle with us again?$" -MeteorFalls_1F_2R_Text_JayIntro: @ 822C9E6 +MeteorFalls_1F_2R_Text_JayIntro: .string "JAY: We've been married for\n" .string "fifty years.\p" .string "The bond we share as a couple could\n" .string "never be broken.$" -MeteorFalls_1F_2R_Text_JayDefeat: @ 822CA44 +MeteorFalls_1F_2R_Text_JayDefeat: .string "JAY: Oh, dear.\n" .string "We've lost, my dear husband.$" -MeteorFalls_1F_2R_Text_JayPostBattle: @ 822CA70 +MeteorFalls_1F_2R_Text_JayPostBattle: .string "JAY: Fifty years of marriage…\p" .string "If we ever argued, we always settled\n" .string "it with a POKéMON battle…$" -MeteorFalls_1F_2R_Text_JayNotEnoughMons: @ 822CACD +MeteorFalls_1F_2R_Text_JayNotEnoughMons: .string "JAY: Well, well, aren't you a young\n" .string "TRAINER?\p" .string "If you'd care to battle with us, you'll\n" .string "have to come back with more POKéMON.$" -MeteorFalls_1F_2R_Text_JohnRematchIntro: @ 822CB47 +MeteorFalls_1F_2R_Text_JohnRematchIntro: .string "JOHN: We've always battled POKéMON\n" .string "together as a twosome.\l" .string "We've confidence in ourselves.$" -MeteorFalls_1F_2R_Text_JohnRematchDefeat: @ 822CBA0 +MeteorFalls_1F_2R_Text_JohnRematchDefeat: .string "JOHN: Oh, my.\n" .string "We've lost, dear wife.$" -MeteorFalls_1F_2R_Text_JohnPostRematch: @ 822CBC5 +MeteorFalls_1F_2R_Text_JohnPostRematch: .string "JOHN: Married for fifty years…\p" .string "On reflection, the dear wife and I,\n" .string "we battled day in and day out…$" -MeteorFalls_1F_2R_Text_JohnRematchNotEnoughMons: @ 822CC27 +MeteorFalls_1F_2R_Text_JohnRematchNotEnoughMons: .string "JOHN: Well, well, what a young TRAINER!\p" .string "Will you battle with us? If so, you'll\n" .string "have to return with more POKéMON.$" -MeteorFalls_1F_2R_Text_JayRematchIntro: @ 822CC98 +MeteorFalls_1F_2R_Text_JayRematchIntro: .string "JAY: We've been married for\n" .string "fifty years.\p" .string "We've supported each other all that\n" .string "time. We've made ourselves strong.$" -MeteorFalls_1F_2R_Text_JayRematchDefeat: @ 822CD08 +MeteorFalls_1F_2R_Text_JayRematchDefeat: .string "JAY: Oh, dear.\n" .string "We've lost, my dear husband.$" -MeteorFalls_1F_2R_Text_JayPostRematch: @ 822CD34 +MeteorFalls_1F_2R_Text_JayPostRematch: .string "JAY: Fifty years of marriage…\n" .string "Many things have happened.\p" .string "I hope that we will continue to make\n" .string "happy memories together.$" -MeteorFalls_1F_2R_Text_JayRematchNotEnoughMons: @ 822CDAB +MeteorFalls_1F_2R_Text_JayRematchNotEnoughMons: .string "JAY: Well, well, aren't you a young\n" .string "TRAINER?\p" .string "If you'd care to battle with us, you'll\n" diff --git a/data/maps/MeteorFalls_B1F_1R/scripts.inc b/data/maps/MeteorFalls_B1F_1R/scripts.inc index 551e68180ce6..6d7af8ed94f1 100644 --- a/data/maps/MeteorFalls_B1F_1R/scripts.inc +++ b/data/maps/MeteorFalls_B1F_1R/scripts.inc @@ -1,3 +1,3 @@ -MeteorFalls_B1F_1R_MapScripts:: @ 822CE25 +MeteorFalls_B1F_1R_MapScripts:: .byte 0 diff --git a/data/maps/MeteorFalls_B1F_2R/scripts.inc b/data/maps/MeteorFalls_B1F_2R/scripts.inc index 775b5787c413..a1d8d5b65c27 100644 --- a/data/maps/MeteorFalls_B1F_2R/scripts.inc +++ b/data/maps/MeteorFalls_B1F_2R/scripts.inc @@ -1,3 +1,3 @@ -MeteorFalls_B1F_2R_MapScripts:: @ 822CE26 +MeteorFalls_B1F_2R_MapScripts:: .byte 0 diff --git a/data/maps/MeteorFalls_StevensCave/scripts.inc b/data/maps/MeteorFalls_StevensCave/scripts.inc index 9ccc2ca68c4e..a1c9e74ecead 100644 --- a/data/maps/MeteorFalls_StevensCave/scripts.inc +++ b/data/maps/MeteorFalls_StevensCave/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_STEVEN, 1 -MeteorFalls_StevensCave_MapScripts:: @ 823B181 +MeteorFalls_StevensCave_MapScripts:: .byte 0 -MeteorFalls_StevensCave_EventScript_Steven:: @ 823B182 +MeteorFalls_StevensCave_EventScript_Steven:: lock goto_if_set FLAG_DEFEATED_METEOR_FALLS_STEVEN, MeteorFalls_StevensCave_EventScript_Defeated waitse @@ -21,14 +21,14 @@ MeteorFalls_StevensCave_EventScript_Steven:: @ 823B182 release end -MeteorFalls_StevensCave_EventScript_Defeated:: @ 823B1CD +MeteorFalls_StevensCave_EventScript_Defeated:: applymovement LOCALID_STEVEN, Common_Movement_FacePlayer waitmovement 0 msgbox MeteorFalls_StevensCave_Text_MyPredictionCameTrue, MSGBOX_DEFAULT release end -MeteorFalls_StevensCave_Text_ShouldKnowHowGoodIAmExpectWorst: @ 823B1E1 +MeteorFalls_StevensCave_Text_ShouldKnowHowGoodIAmExpectWorst: .string "STEVEN: Oh, wow, {PLAYER}{KUN}.\n" .string "I'm amazed you knew where to find me.\p" .string "Do you, uh…maybe think of me as\n" @@ -41,11 +41,11 @@ MeteorFalls_StevensCave_Text_ShouldKnowHowGoodIAmExpectWorst: @ 823B1E1 .string "Okay, {PLAYER}{KUN}, if you're going to mount\n" .string "a serious challenge, expect the worst!$" -MeteorFalls_StevensCave_Text_StevenDefeat: @ 823B32D +MeteorFalls_StevensCave_Text_StevenDefeat: .string "You…\n" .string "I had no idea you'd become so strong…$" -MeteorFalls_StevensCave_Text_MyPredictionCameTrue: @ 823B358 +MeteorFalls_StevensCave_Text_MyPredictionCameTrue: .string "STEVEN: Come to think of it, ever since\n" .string "our paths first crossed in GRANITE\l" .string "CAVE in DEWFORD, I had this feeling.\p" diff --git a/data/maps/MirageTower_1F/scripts.inc b/data/maps/MirageTower_1F/scripts.inc index 74ec749fa992..6a6b4f50ed18 100644 --- a/data/maps/MirageTower_1F/scripts.inc +++ b/data/maps/MirageTower_1F/scripts.inc @@ -1,8 +1,8 @@ -MirageTower_1F_MapScripts:: @ 823AD01 +MirageTower_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MirageTower_1F_OnTransition .byte 0 -MirageTower_1F_OnTransition: @ 823AD07 +MirageTower_1F_OnTransition: setflag FLAG_ENTERED_MIRAGE_TOWER setflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE setflag FLAG_LANDMARK_MIRAGE_TOWER diff --git a/data/maps/MirageTower_2F/scripts.inc b/data/maps/MirageTower_2F/scripts.inc index 888288633d15..3d53359d4c14 100644 --- a/data/maps/MirageTower_2F/scripts.inc +++ b/data/maps/MirageTower_2F/scripts.inc @@ -1,10 +1,10 @@ -MirageTower_2F_MapScripts:: @ 823AD11 +MirageTower_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, CaveHole_FixCrackedGround map_script MAP_SCRIPT_ON_RESUME, MirageTower_2F_SetHoleWarp .byte 0 -MirageTower_2F_SetHoleWarp: @ 823AD21 +MirageTower_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_MIRAGE_TOWER_1F, 255, 0, 0 end diff --git a/data/maps/MirageTower_3F/scripts.inc b/data/maps/MirageTower_3F/scripts.inc index a54b2cccaa3c..02b08640083e 100644 --- a/data/maps/MirageTower_3F/scripts.inc +++ b/data/maps/MirageTower_3F/scripts.inc @@ -1,10 +1,10 @@ -MirageTower_3F_MapScripts:: @ 823AD2C +MirageTower_3F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, CaveHole_FixCrackedGround map_script MAP_SCRIPT_ON_RESUME, MirageTower_3F_SetHoleWarp .byte 0 -MirageTower_3F_SetHoleWarp: @ 823AD3C +MirageTower_3F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_MIRAGE_TOWER_2F, 255, 0, 0 end diff --git a/data/maps/MirageTower_4F/scripts.inc b/data/maps/MirageTower_4F/scripts.inc index a258f9deca44..2c96710d13e7 100644 --- a/data/maps/MirageTower_4F/scripts.inc +++ b/data/maps/MirageTower_4F/scripts.inc @@ -1,10 +1,10 @@ .set LOCALID_ROOT_FOSSIL, 1 .set LOCALID_CLAW_FOSSIL, 2 -MirageTower_4F_MapScripts:: @ 823AD47 +MirageTower_4F_MapScripts:: .byte 0 -MirageTower_4F_EventScript_RootFossil:: @ 823AD48 +MirageTower_4F_EventScript_RootFossil:: lock faceplayer msgbox MirageTower_4F_Text_TakeRootFossil, MSGBOX_YESNO @@ -20,12 +20,12 @@ MirageTower_4F_EventScript_RootFossil:: @ 823AD48 goto MirageTower_4F_EventScript_CollapseMirageTower end -MirageTower_4F_EventScript_LeaveRootFossil:: @ 823AD7F +MirageTower_4F_EventScript_LeaveRootFossil:: msgbox MirageTower_4F_Text_LeftRootFossilAlone, MSGBOX_DEFAULT release end -MirageTower_4F_EventScript_ClawFossil:: @ 823AD89 +MirageTower_4F_EventScript_ClawFossil:: lock faceplayer msgbox MirageTower_4F_Text_TakeClawFossil, MSGBOX_YESNO @@ -41,12 +41,12 @@ MirageTower_4F_EventScript_ClawFossil:: @ 823AD89 goto MirageTower_4F_EventScript_CollapseMirageTower end -MirageTower_4F_EventScript_LeaveClawFossil:: @ 823ADC0 +MirageTower_4F_EventScript_LeaveClawFossil:: msgbox MirageTower_4F_Text_LeaveClawFossilAlone, MSGBOX_DEFAULT release end -MirageTower_4F_EventScript_CollapseMirageTower:: @ 823ADCA +MirageTower_4F_EventScript_CollapseMirageTower:: setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan setvar VAR_0x8006, 32 @ num shakes @@ -62,21 +62,21 @@ MirageTower_4F_EventScript_CollapseMirageTower:: @ 823ADCA release end -MirageTower_4F_Text_TakeRootFossil: @ 823ADF9 +MirageTower_4F_Text_TakeRootFossil: .string "You found the ROOT FOSSIL.\p" .string "If this FOSSIL is taken, the ground\n" .string "around it will likely crumble away…\p" .string "Take the ROOT FOSSIL anyway?$" -MirageTower_4F_Text_LeftRootFossilAlone: @ 823AE79 +MirageTower_4F_Text_LeftRootFossilAlone: .string "{PLAYER} left the ROOT FOSSIL alone.$" -MirageTower_4F_Text_TakeClawFossil: @ 823AE98 +MirageTower_4F_Text_TakeClawFossil: .string "You found the CLAW FOSSIL.\p" .string "If this FOSSIL is taken, the ground\n" .string "around it will likely crumble away…\p" .string "Take the CLAW FOSSIL anyway?$" -MirageTower_4F_Text_LeaveClawFossilAlone: @ 823AF18 +MirageTower_4F_Text_LeaveClawFossilAlone: .string "{PLAYER} left the CLAW FOSSIL alone.$" diff --git a/data/maps/MossdeepCity/scripts.inc b/data/maps/MossdeepCity/scripts.inc index 963635ccd64e..07758873d831 100644 --- a/data/maps/MossdeepCity/scripts.inc +++ b/data/maps/MossdeepCity/scripts.inc @@ -5,11 +5,11 @@ .set LOCALID_MAXIE, 14 .set LOCALID_SCOTT, 16 -MossdeepCity_MapScripts:: @ 81E4A96 +MossdeepCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_OnTransition .byte 0 -MossdeepCity_OnTransition: @ 81E4A9C +MossdeepCity_OnTransition: clearflag FLAG_MOSSDEEP_GYM_SWITCH_1 clearflag FLAG_MOSSDEEP_GYM_SWITCH_2 clearflag FLAG_MOSSDEEP_GYM_SWITCH_3 @@ -17,7 +17,7 @@ MossdeepCity_OnTransition: @ 81E4A9C call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather end -MossdeepCity_EventScript_PokefanF:: @ 81E4AB2 +MossdeepCity_EventScript_PokefanF:: lock faceplayer goto_if_set FLAG_RECEIVED_HM08, MossdeepCity_EventScript_PokefanFMagmaGone @@ -25,12 +25,12 @@ MossdeepCity_EventScript_PokefanF:: @ 81E4AB2 release end -MossdeepCity_EventScript_PokefanFMagmaGone:: @ 81E4AC7 +MossdeepCity_EventScript_PokefanFMagmaGone:: msgbox MossdeepCity_Text_SpaceCenterLaunchingRockets, MSGBOX_DEFAULT release end -MossdeepCity_EventScript_Sailor:: @ 81E4AD1 +MossdeepCity_EventScript_Sailor:: lock faceplayer goto_if_set FLAG_RECEIVED_HM08, MossdeepCity_EventScript_SailorMagmaGone @@ -38,49 +38,49 @@ MossdeepCity_EventScript_Sailor:: @ 81E4AD1 release end -MossdeepCity_EventScript_SailorMagmaGone:: @ 81E4AE6 +MossdeepCity_EventScript_SailorMagmaGone:: msgbox MossdeepCity_Text_FeelReliefOnLand, MSGBOX_DEFAULT release end -MossdeepCity_EventScript_NinjaBoy:: @ 81E4AF0 +MossdeepCity_EventScript_NinjaBoy:: msgbox MossdeepCity_Text_WailmerWatching, MSGBOX_NPC end -MossdeepCity_EventScript_ExpertM:: @ 81E4AF9 +MossdeepCity_EventScript_ExpertM:: msgbox MossdeepCity_Text_LifeNeedsSeaToLive, MSGBOX_NPC end -MossdeepCity_EventScript_Girl:: @ 81E4B02 +MossdeepCity_EventScript_Girl:: msgbox MossdeepCity_Text_NiceIfWorldCoveredByFlowers, MSGBOX_NPC end -MossdeepCity_EventScript_Woman:: @ 81E4B0B +MossdeepCity_EventScript_Woman:: msgbox MossdeepCity_Text_SpecialSpaceCenterRock, MSGBOX_NPC end -MossdeepCity_EventScript_WhiteRock:: @ 81E4B14 +MossdeepCity_EventScript_WhiteRock:: msgbox MossdeepCity_Text_ItsAWhiteRock, MSGBOX_SIGN end -MossdeepCity_EventScript_GymSign:: @ 81E4B1D +MossdeepCity_EventScript_GymSign:: msgbox MossdeepCity_Text_GymSign, MSGBOX_SIGN end -MossdeepCity_EventScript_CitySign:: @ 81E4B26 +MossdeepCity_EventScript_CitySign:: msgbox MossdeepCity_Text_CitySign, MSGBOX_SIGN end -MossdeepCity_EventScript_SpaceCenterSign:: @ 81E4B2F +MossdeepCity_EventScript_SpaceCenterSign:: msgbox MossdeepCity_Text_SpaceCenterSign, MSGBOX_SIGN end -MossdeepCity_EventScript_VisitedMossdeep:: @ 81E4B38 +MossdeepCity_EventScript_VisitedMossdeep:: setflag FLAG_VISITED_MOSSDEEP_CITY setvar VAR_TEMP_1, 1 end -MossdeepCity_EventScript_TeamMagmaEnterSpaceCenter:: @ 81E4B41 +MossdeepCity_EventScript_TeamMagmaEnterSpaceCenter:: lockall applymovement LOCALID_MAXIE, MossdeepCity_Movement_MaxieGestureToSpaceCenter waitmovement 0 @@ -106,7 +106,7 @@ MossdeepCity_EventScript_TeamMagmaEnterSpaceCenter:: @ 81E4B41 releaseall end -MossdeepCity_Movement_MaxieGestureToSpaceCenter: @ 81E4BAD +MossdeepCity_Movement_MaxieGestureToSpaceCenter: delay_16 face_right delay_16 @@ -118,14 +118,14 @@ MossdeepCity_Movement_MaxieGestureToSpaceCenter: @ 81E4BAD delay_16 step_end -MossdeepCity_Movement_GruntFaceSpaceCenter: @ 81E4BB7 +MossdeepCity_Movement_GruntFaceSpaceCenter: face_right delay_16 delay_16 delay_16 step_end -MossdeepCity_Movement_MaxieEnterSpaceCenter: @ 81E4BBC +MossdeepCity_Movement_MaxieEnterSpaceCenter: walk_down walk_right walk_right @@ -141,7 +141,7 @@ MossdeepCity_Movement_MaxieEnterSpaceCenter: @ 81E4BBC walk_right step_end -MossdeepCity_Movement_Grunt1EnterSpaceCenter: @ 81E4BCA +MossdeepCity_Movement_Grunt1EnterSpaceCenter: delay_16 delay_8 walk_down @@ -162,7 +162,7 @@ MossdeepCity_Movement_Grunt1EnterSpaceCenter: @ 81E4BCA walk_right step_end -MossdeepCity_Movement_Grunt2EnterSpaceCenter: @ 81E4BDD +MossdeepCity_Movement_Grunt2EnterSpaceCenter: delay_16 delay_8 walk_down @@ -182,7 +182,7 @@ MossdeepCity_Movement_Grunt2EnterSpaceCenter: @ 81E4BDD walk_right step_end -MossdeepCity_Movement_Grunt3EnterSpaceCenter: @ 81E4BEF +MossdeepCity_Movement_Grunt3EnterSpaceCenter: delay_16 delay_8 walk_down @@ -201,7 +201,7 @@ MossdeepCity_Movement_Grunt3EnterSpaceCenter: @ 81E4BEF walk_right step_end -MossdeepCity_Movement_Grunt4EnterSpaceCenter: @ 81E4C00 +MossdeepCity_Movement_Grunt4EnterSpaceCenter: delay_16 delay_8 walk_right @@ -219,7 +219,7 @@ MossdeepCity_Movement_Grunt4EnterSpaceCenter: @ 81E4C00 walk_right step_end -MossdeepCity_EventScript_Man:: @ 81E4C10 +MossdeepCity_EventScript_Man:: lock faceplayer msgbox MossdeepCity_Text_SurfExhilarating, MSGBOX_DEFAULT @@ -228,7 +228,7 @@ MossdeepCity_EventScript_Man:: @ 81E4C10 release end -MossdeepCity_EventScript_KingsRockBoy:: @ 81E4C26 +MossdeepCity_EventScript_KingsRockBoy:: lock faceplayer goto_if_set FLAG_RECEIVED_KINGS_ROCK, MossdeepCity_EventScript_ReceivedKingsRock @@ -243,21 +243,21 @@ MossdeepCity_EventScript_KingsRockBoy:: @ 81E4C26 release end -MossdeepCity_EventScript_ReceivedKingsRock:: @ 81E4C68 +MossdeepCity_EventScript_ReceivedKingsRock:: msgbox MossdeepCity_Text_StevensHouseOverThere, MSGBOX_DEFAULT release end -MossdeepCity_EventScript_DeclineKingsRock:: @ 81E4C72 +MossdeepCity_EventScript_DeclineKingsRock:: msgbox MossdeepCity_Text_WhatToDoWithWeirdRock, MSGBOX_DEFAULT release end -MossdeepCity_EventScript_BlackBelt:: @ 81E4C7C +MossdeepCity_EventScript_BlackBelt:: msgbox MossdeepCity_Text_SootopolisNewGymLeader, MSGBOX_NPC end -MossdeepCity_EventScript_Scott:: @ 81E4C85 +MossdeepCity_EventScript_Scott:: lock faceplayer msgbox MossdeepCity_Text_ScottSomethingWrongWithTown, MSGBOX_DEFAULT @@ -271,25 +271,25 @@ MossdeepCity_EventScript_Scott:: @ 81E4C85 release end -MossdeepCity_EventScript_ScottExitNorth:: @ 81E4CB0 +MossdeepCity_EventScript_ScottExitNorth:: applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit applymovement LOCALID_SCOTT, MossdeepCity_Movement_ScottExitNorth waitmovement 0 return -MossdeepCity_EventScript_ScottExitEast:: @ 81E4CC2 +MossdeepCity_EventScript_ScottExitEast:: applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit applymovement LOCALID_SCOTT, MossdeepCity_Movement_ScottExitEast waitmovement 0 return -MossdeepCity_Movement_PlayerWatchScottExit: @ 81E4CD4 +MossdeepCity_Movement_PlayerWatchScottExit: delay_16 delay_16 walk_in_place_fastest_left step_end -MossdeepCity_Movement_ScottExitNorth: @ 81E4CD8 +MossdeepCity_Movement_ScottExitNorth: walk_left walk_left walk_left @@ -301,7 +301,7 @@ MossdeepCity_Movement_ScottExitNorth: @ 81E4CD8 walk_left step_end -MossdeepCity_Movement_ScottExitEast: @ 81E4CE2 +MossdeepCity_Movement_ScottExitEast: walk_down walk_left walk_left @@ -314,26 +314,26 @@ MossdeepCity_Movement_ScottExitEast: @ 81E4CE2 walk_left step_end -MossdeepCity_Text_WantKingsRockStevenGaveMe: @ 81E4CED +MossdeepCity_Text_WantKingsRockStevenGaveMe: .string "I got this from STEVEN, but I don't\n" .string "know what it's good for.\p" .string "I think it's called KING'S ROCK.\n" .string "Do you want it?$" -MossdeepCity_Text_YouCanKeepIt: @ 81E4D5B +MossdeepCity_Text_YouCanKeepIt: .string "Why would you want it?\n" .string "You're weird.\p" .string "You can keep it, but keep it a secret\n" .string "from STEVEN.$" -MossdeepCity_Text_StevensHouseOverThere: @ 81E4DB3 +MossdeepCity_Text_StevensHouseOverThere: .string "STEVEN's house is right over there!$" -MossdeepCity_Text_WhatToDoWithWeirdRock: @ 81E4DD7 +MossdeepCity_Text_WhatToDoWithWeirdRock: .string "Yeah, you think so, too! What are you\n" .string "supposed to do with some weird rock?$" -MossdeepCity_Text_WailmerWatching: @ 81E4E22 +MossdeepCity_Text_WailmerWatching: .string "Around MOSSDEEP, you can see wild\n" .string "WAILMER.\p" .string "It's called, uh…\n" @@ -341,17 +341,17 @@ MossdeepCity_Text_WailmerWatching: @ 81E4E22 .string "WAI, WAI, WAI…\p" .string "WAILMER watching!$" -MossdeepCity_Text_SpaceCenterReceivedLetter: @ 81E4E90 +MossdeepCity_Text_SpaceCenterReceivedLetter: .string "The island's SPACE CENTER has been\n" .string "launching huge rockets.\p" .string "There's been some kind of an uproar\n" .string "over a letter they received recently.$" -MossdeepCity_Text_SpaceCenterLaunchingRockets: @ 81E4F15 +MossdeepCity_Text_SpaceCenterLaunchingRockets: .string "The island's SPACE CENTER has been\n" .string "launching huge rockets.$" -MossdeepCity_Text_MossdeepTargetedByMagma: @ 81E4F50 +MossdeepCity_Text_MossdeepTargetedByMagma: .string "I heard from a SAILOR buddy that\n" .string "TEAM AQUA set up shop in LILYCOVE.\p" .string "I also heard that someone came along\n" @@ -361,18 +361,18 @@ MossdeepCity_Text_MossdeepTargetedByMagma: @ 81E4F50 .string "If you want to know what they're up to,\n" .string "go visit the SPACE CENTER.$" -MossdeepCity_Text_FeelReliefOnLand: @ 81E5051 +MossdeepCity_Text_FeelReliefOnLand: .string "I'm a SAILOR, so the sea's obviously\n" .string "more important to me.\p" .string "But you know? When I get back on land\n" .string "after a long voyage, I do feel relief!$" -MossdeepCity_Text_NiceIfWorldCoveredByFlowers: @ 81E50D9 +MossdeepCity_Text_NiceIfWorldCoveredByFlowers: .string "Wouldn't it be nice?\p" .string "If the whole world was covered in\n" .string "plants and flowers like this island?$" -MossdeepCity_Text_LifeNeedsSeaToLive: @ 81E5135 +MossdeepCity_Text_LifeNeedsSeaToLive: .string "All life needs the sea to live, even\n" .string "though it makes its home on the land.\p" .string "Life, having run its course, becomes\n" @@ -381,14 +381,14 @@ MossdeepCity_Text_LifeNeedsSeaToLive: @ 81E5135 .string "the land.\p" .string "Yes, like the very shoreline here.$" -MossdeepCity_Text_SurfExhilarating: @ 81E5213 +MossdeepCity_Text_SurfExhilarating: .string "A voyage on a ship is fine.\p" .string "But crossing the sea with POKéMON\n" .string "using SURF…\p" .string "Now that's an exhilarating trip!\n" .string "Wouldn't you agree, youngster?$" -MossdeepCity_Text_SpecialSpaceCenterRock: @ 81E529D +MossdeepCity_Text_SpecialSpaceCenterRock: .string "This rock has a special meaning to\n" .string "the people at the SPACE CENTER.\p" .string "They put it here as their wish for\n" @@ -398,23 +398,23 @@ MossdeepCity_Text_SpecialSpaceCenterRock: @ 81E529D .string "I use a wish tag to make it happen.\n" .string "That's what I do.$" -MossdeepCity_Text_ItsAWhiteRock: @ 81E5396 +MossdeepCity_Text_ItsAWhiteRock: .string "It's a white rock.$" -MossdeepCity_Text_GymSign: @ 81E53A9 +MossdeepCity_Text_GymSign: .string "MOSSDEEP CITY POKéMON GYM\n" .string "LEADERS: LIZA & TATE\p" .string "“The mystic combination!”$" -MossdeepCity_Text_CitySign: @ 81E53F2 +MossdeepCity_Text_CitySign: .string "MOSSDEEP CITY\n" .string "“Our slogan: Cherish POKéMON!”$" -MossdeepCity_Text_SpaceCenterSign: @ 81E541F +MossdeepCity_Text_SpaceCenterSign: .string "MOSSDEEP SPACE CENTER\n" .string "“The closest place to space.”$" -MossdeepCity_Text_ScottSomethingWrongWithTown: @ 81E5453 +MossdeepCity_Text_ScottSomethingWrongWithTown: .string "SCOTT: {PLAYER}{KUN}, feeling good?\n" .string "I'm doing great!\p" .string "I'd heard MOSSDEEP's GYM LEADER is\n" @@ -427,7 +427,7 @@ MossdeepCity_Text_ScottSomethingWrongWithTown: @ 81E5453 .string "I don't think it concerns me in any\n" .string "way, though.$" -MossdeepCity_Text_SootopolisNewGymLeader: @ 81E5581 +MossdeepCity_Text_SootopolisNewGymLeader: .string "Ahh… It feels great letting the waves\n" .string "wash over my feet…\p" .string "Speaking of the waves, you know that\n" diff --git a/data/maps/MossdeepCity_GameCorner_1F/scripts.inc b/data/maps/MossdeepCity_GameCorner_1F/scripts.inc index 95b08256e836..b2780df04524 100644 --- a/data/maps/MossdeepCity_GameCorner_1F/scripts.inc +++ b/data/maps/MossdeepCity_GameCorner_1F/scripts.inc @@ -1,19 +1,19 @@ -MossdeepCity_GameCorner_1F_MapScripts:: @ 8224B27 +MossdeepCity_GameCorner_1F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, MossdeepCity_GameCorner_1F_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, MossdeepCity_GameCorner_1F_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad .byte 0 -MossdeepCity_GameCorner_1F_OnWarp: @ 8224B37 +MossdeepCity_GameCorner_1F_OnWarp: map_script_2 VAR_CABLE_CLUB_STATE, USING_MINIGAME, CableClub_EventScript_CheckTurnAttendant .2byte 0 -MossdeepCity_GameCorner_1F_OnFrame: @ 8224B41 +MossdeepCity_GameCorner_1F_OnFrame: map_script_2 VAR_CABLE_CLUB_STATE, USING_MINIGAME, CableClub_EventScript_ExitMinigameRoom .2byte 0 @ Script is redundant, the label in the goto also does lock and faceplayer -MossdeepCity_GameCorner_1F_EventScript_InfoMan:: @ 8224B4B +MossdeepCity_GameCorner_1F_EventScript_InfoMan:: lock faceplayer goto MossdeepCity_GameCorner_1F_EventScript_InfoMan2 @@ -21,7 +21,7 @@ MossdeepCity_GameCorner_1F_EventScript_InfoMan:: @ 8224B4B end @ Script is redundant, the label in the goto also does lock and faceplayer -MossdeepCity_GameCorner_1F_EventScript_OldMan:: @ 8224B54 +MossdeepCity_GameCorner_1F_EventScript_OldMan:: lock faceplayer goto MossdeepCity_GameCorner_1F_EventScript_OldMan2 @@ -34,54 +34,54 @@ MossdeepCity_GameCorner_1F_EventScript_OldMan:: @ 8224B54 @ The text below is unused and duplicated in its replacement in Sootopolis City @ And the BG Door event was moved inaccessibly into a wall -RS_MysteryEventsHouse_EventScript_Door:: @ 8224B5D +RS_MysteryEventsHouse_EventScript_Door:: msgbox RS_MysteryEventsHouse_Text_DoorIsLocked, MSGBOX_SIGN end -RS_MysteryEventsHouse_Text_OldManGreeting: @ 8224B66 +RS_MysteryEventsHouse_Text_OldManGreeting: .string "When I was young, I traveled the world\n" .string "as a POKéMON TRAINER.\p" .string "Now that I've become an old buzzard,\n" .string "my only amusement is watching young\l" .string "TRAINERS battle.$" -RS_MysteryEventsHouse_Text_DoorIsLocked: @ 8224BFD +RS_MysteryEventsHouse_Text_DoorIsLocked: .string "The door appears to be locked.$" -RS_MysteryEventsHouse_Text_ChallengeVisitingTrainer: @ 8224C1C +RS_MysteryEventsHouse_Text_ChallengeVisitingTrainer: .string "A TRAINER named {STR_VAR_1} is\n" .string "visiting my home.\p" .string "Would you like to challenge\n" .string "{STR_VAR_1}?$" -RS_MysteryEventsHouse_Text_YouWontBattle: @ 8224C64 +RS_MysteryEventsHouse_Text_YouWontBattle: .string "You won't battle? I'm disappointed\n" .string "that I can't see you battle…$" -RS_MysteryEventsHouse_Text_KeepItToA3On3: @ 8224CA4 +RS_MysteryEventsHouse_Text_KeepItToA3On3: .string "Oh, good, good!\p" .string "But my house isn't all that sturdy.\p" .string "Could I ask you to keep it down to\n" .string "a 3-on-3 match?$" -RS_MysteryEventsHouse_Text_SaveYourProgress: @ 8224D0B +RS_MysteryEventsHouse_Text_SaveYourProgress: .string "Before you two battle, you should\n" .string "save your progress.$" -RS_MysteryEventsHouse_Text_HopeToSeeAGoodMatch: @ 8224D41 +RS_MysteryEventsHouse_Text_HopeToSeeAGoodMatch: .string "I hope to see a good match!$" -RS_MysteryEventsHouse_Text_BattleTie: @ 8224D5D +RS_MysteryEventsHouse_Text_BattleTie: .string "So, it became a standoff.\p" .string "It was a brilliant match in which\n" .string "neither side conceded a step!$" -RS_MysteryEventsHouse_Text_BattleWon: @ 8224DB7 +RS_MysteryEventsHouse_Text_BattleWon: .string "That was superlative!\p" .string "Why, it was like seeing myself in\n" .string "my youth again!$" -RS_MysteryEventsHouse_Text_BattleLost: @ 8224DFF +RS_MysteryEventsHouse_Text_BattleLost: .string "Ah, too bad for you!\p" .string "But it was a good match.\n" .string "I hope you can win next time.$" diff --git a/data/maps/MossdeepCity_GameCorner_B1F/scripts.inc b/data/maps/MossdeepCity_GameCorner_B1F/scripts.inc index 695be3c6ece4..c9387646a6d7 100644 --- a/data/maps/MossdeepCity_GameCorner_B1F/scripts.inc +++ b/data/maps/MossdeepCity_GameCorner_B1F/scripts.inc @@ -1,3 +1,3 @@ -MossdeepCity_GameCorner_B1F_MapScripts:: @ 8224E4B +MossdeepCity_GameCorner_B1F_MapScripts:: .byte 0 diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc index 0e6487e16ab4..22c2e17ab915 100644 --- a/data/maps/MossdeepCity_Gym/scripts.inc +++ b/data/maps/MossdeepCity_Gym/scripts.inc @@ -1,54 +1,54 @@ -MossdeepCity_Gym_MapScripts:: @ 8220800 +MossdeepCity_Gym_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_Gym_OnLoad .byte 0 @ NOTE: Mossdeep Gym was redesigned between R/S and E. Leftover (and now functionally unused) scripts are commented below @ All the below checks are leftover from RS. FLAG_MOSSDEEP_GYM_SWITCH_X is never set -MossdeepCity_Gym_OnLoad: @ 8220806 +MossdeepCity_Gym_OnLoad: goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_1, MossdeepCity_Gym_EventScript_SetSwitch1Metatiles goto MossdeepCity_Gym_EventScript_CheckSwitch2 end -MossdeepCity_Gym_EventScript_CheckSwitch2:: @ 8220815 +MossdeepCity_Gym_EventScript_CheckSwitch2:: goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_2, MossdeepCity_Gym_EventScript_SetSwitch2Metatiles goto MossdeepCity_Gym_EventScript_CheckSwitch3 end -MossdeepCity_Gym_EventScript_CheckSwitch3:: @ 8220824 +MossdeepCity_Gym_EventScript_CheckSwitch3:: goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_3, MossdeepCity_Gym_EventScript_SetSwitch3Metatiles goto MossdeepCity_Gym_EventScript_CheckSwitch4 end -MossdeepCity_Gym_EventScript_CheckSwitch4:: @ 8220833 +MossdeepCity_Gym_EventScript_CheckSwitch4:: goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_4, MossdeepCity_Gym_EventScript_SetSwitch4Metatiles end @ All the below set metatile scripts are leftover from RS and are functionally unused -MossdeepCity_Gym_EventScript_SetSwitch1Metatiles:: @ 822083D +MossdeepCity_Gym_EventScript_SetSwitch1Metatiles:: setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Right, 0 setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Down, 1 goto MossdeepCity_Gym_EventScript_CheckSwitch2 end -MossdeepCity_Gym_EventScript_SetSwitch2Metatiles:: @ 8220855 +MossdeepCity_Gym_EventScript_SetSwitch2Metatiles:: setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Right, 0 setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Down, 1 goto MossdeepCity_Gym_EventScript_CheckSwitch3 end -MossdeepCity_Gym_EventScript_SetSwitch3Metatiles:: @ 822086D +MossdeepCity_Gym_EventScript_SetSwitch3Metatiles:: setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Left, 0 setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Down, 1 goto MossdeepCity_Gym_EventScript_CheckSwitch4 end -MossdeepCity_Gym_EventScript_SetSwitch4Metatiles:: @ 8220885 +MossdeepCity_Gym_EventScript_SetSwitch4Metatiles:: setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Up, 0 setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Down, 1 end -MossdeepCity_Gym_EventScript_TateAndLiza:: @ 8220898 +MossdeepCity_Gym_EventScript_TateAndLiza:: trainerbattle_double TRAINER_TATE_AND_LIZA_1, MossdeepCity_Gym_Text_TateAndLizaIntro, MossdeepCity_Gym_Text_TateAndLizaDefeat, MossdeepCity_Gym_Text_TateAndLizaNeedTwoMons, MossdeepCity_Gym_EventScript_TateAndLizaDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -58,7 +58,7 @@ MossdeepCity_Gym_EventScript_TateAndLiza:: @ 8220898 release end -MossdeepCity_Gym_EventScript_TateAndLizaDefeated:: @ 82208D1 +MossdeepCity_Gym_EventScript_TateAndLizaDefeated:: message MossdeepCity_Gym_Text_ReceivedMindBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -90,7 +90,7 @@ MossdeepCity_Gym_EventScript_TateAndLizaDefeated:: @ 82208D1 release end -MossdeepCity_Gym_EventScript_GiveCalmMind2:: @ 8220937 +MossdeepCity_Gym_EventScript_GiveCalmMind2:: giveitem ITEM_TM04 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -99,7 +99,7 @@ MossdeepCity_Gym_EventScript_GiveCalmMind2:: @ 8220937 release end -MossdeepCity_Gym_EventScript_GiveCalmMind:: @ 822095B +MossdeepCity_Gym_EventScript_GiveCalmMind:: giveitem ITEM_TM04 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -107,13 +107,13 @@ MossdeepCity_Gym_EventScript_GiveCalmMind:: @ 822095B setflag FLAG_RECEIVED_TM04 return -MossdeepCity_Gym_EventScript_TateAndLizaRematch:: @ 822097E +MossdeepCity_Gym_EventScript_TateAndLizaRematch:: trainerbattle_rematch_double TRAINER_TATE_AND_LIZA_1, MossdeepCity_Gym_Text_TateAndLizaPreRematch, MossdeepCity_Gym_Text_TateAndLizaRematchDefeat, MossdeepCity_Gym_Text_TateAndLizaRematchNeedTwoMons msgbox MossdeepCity_Gym_Text_TateAndLizaPostRematch, MSGBOX_AUTOCLOSE end @ All the below switch scripts are leftover from RS and are functionally unused -MossdeepCity_Gym_EventScript_Switch1:: @ 8220999 +MossdeepCity_Gym_EventScript_Switch1:: lockall goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_1, MossdeepCity_Gym_EventScript_ClearSwitch1 setflag FLAG_MOSSDEEP_GYM_SWITCH_1 @@ -124,13 +124,13 @@ MossdeepCity_Gym_EventScript_Switch1:: @ 8220999 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed:: @ 82209C8 +MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed:: special DrawWholeMapView playse SE_CLICK releaseall end -MossdeepCity_Gym_EventScript_ClearSwitch1:: @ 82209D0 +MossdeepCity_Gym_EventScript_ClearSwitch1:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_1 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 @@ -139,7 +139,7 @@ MossdeepCity_Gym_EventScript_ClearSwitch1:: @ 82209D0 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_Switch2:: @ 82209F5 +MossdeepCity_Gym_EventScript_Switch2:: lockall goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_2, MossdeepCity_Gym_EventScript_ClearSwitch2 setflag FLAG_MOSSDEEP_GYM_SWITCH_2 @@ -150,7 +150,7 @@ MossdeepCity_Gym_EventScript_Switch2:: @ 82209F5 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_ClearSwitch2:: @ 8220A24 +MossdeepCity_Gym_EventScript_ClearSwitch2:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_2 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 @@ -159,7 +159,7 @@ MossdeepCity_Gym_EventScript_ClearSwitch2:: @ 8220A24 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_Switch3:: @ 8220A49 +MossdeepCity_Gym_EventScript_Switch3:: lockall goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_3, MossdeepCity_Gym_EventScript_ClearSwitch3 setflag FLAG_MOSSDEEP_GYM_SWITCH_3 @@ -170,7 +170,7 @@ MossdeepCity_Gym_EventScript_Switch3:: @ 8220A49 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_ClearSwitch3:: @ 8220A78 +MossdeepCity_Gym_EventScript_ClearSwitch3:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_3 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 @@ -179,7 +179,7 @@ MossdeepCity_Gym_EventScript_ClearSwitch3:: @ 8220A78 goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_Switch4:: @ 8220A9D +MossdeepCity_Gym_EventScript_Switch4:: lockall goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_4, MossdeepCity_Gym_EventScript_ClearSwitch4 setflag FLAG_MOSSDEEP_GYM_SWITCH_4 @@ -190,7 +190,7 @@ MossdeepCity_Gym_EventScript_Switch4:: @ 8220A9D goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_ClearSwitch4:: @ 8220ACC +MossdeepCity_Gym_EventScript_ClearSwitch4:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_4 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 @@ -199,74 +199,74 @@ MossdeepCity_Gym_EventScript_ClearSwitch4:: @ 8220ACC goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end -MossdeepCity_Gym_EventScript_WarpToEntrance:: @ 8220AF1 +MossdeepCity_Gym_EventScript_WarpToEntrance:: lockall warpmossdeepgym MAP_MOSSDEEP_CITY_GYM, 255, 7, 30 waitstate releaseall end -MossdeepCity_Gym_EventScript_Preston:: @ 8220AFD +MossdeepCity_Gym_EventScript_Preston:: trainerbattle_single TRAINER_PRESTON, MossdeepCity_Gym_Text_PrestonIntro, MossdeepCity_Gym_Text_PrestonDefeat msgbox MossdeepCity_Gym_Text_PrestonPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Virgil:: @ 8220B14 +MossdeepCity_Gym_EventScript_Virgil:: trainerbattle_single TRAINER_VIRGIL, MossdeepCity_Gym_Text_VirgilIntro, MossdeepCity_Gym_Text_VirgilDefeat msgbox MossdeepCity_Gym_Text_VirgilPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Blake:: @ 8220B2B +MossdeepCity_Gym_EventScript_Blake:: trainerbattle_single TRAINER_BLAKE, MossdeepCity_Gym_Text_BlakeIntro, MossdeepCity_Gym_Text_BlakeDefeat msgbox MossdeepCity_Gym_Text_BlakePostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Hannah:: @ 8220B42 +MossdeepCity_Gym_EventScript_Hannah:: trainerbattle_single TRAINER_HANNAH, MossdeepCity_Gym_Text_HannahIntro, MossdeepCity_Gym_Text_HannahDefeat msgbox MossdeepCity_Gym_Text_HannahPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Samantha:: @ 8220B59 +MossdeepCity_Gym_EventScript_Samantha:: trainerbattle_single TRAINER_SAMANTHA, MossdeepCity_Gym_Text_SamanthaIntro, MossdeepCity_Gym_Text_SamanthaDefeat msgbox MossdeepCity_Gym_Text_SamanthaPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Maura:: @ 8220B70 +MossdeepCity_Gym_EventScript_Maura:: trainerbattle_single TRAINER_MAURA, MossdeepCity_Gym_Text_MauraIntro, MossdeepCity_Gym_Text_MauraDefeat msgbox MossdeepCity_Gym_Text_MauraPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Sylvia:: @ 8220B87 +MossdeepCity_Gym_EventScript_Sylvia:: trainerbattle_single TRAINER_SYLVIA, MossdeepCity_Gym_Text_SylviaIntro, MossdeepCity_Gym_Text_SylviaDefeat msgbox MossdeepCity_Gym_Text_SylviaPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Nate:: @ 8220B9E +MossdeepCity_Gym_EventScript_Nate:: trainerbattle_single TRAINER_NATE, MossdeepCity_Gym_Text_NateIntro, MossdeepCity_Gym_Text_NateDefeat msgbox MossdeepCity_Gym_Text_NatePostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Macey:: @ 8220BB5 +MossdeepCity_Gym_EventScript_Macey:: trainerbattle_single TRAINER_MACEY, MossdeepCity_Gym_Text_MaceyIntro, MossdeepCity_Gym_Text_MaceyDefeat msgbox MossdeepCity_Gym_Text_MaceyPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Clifford:: @ 8220BCC +MossdeepCity_Gym_EventScript_Clifford:: trainerbattle_single TRAINER_CLIFFORD, MossdeepCity_Gym_Text_CliffordIntro, MossdeepCity_Gym_Text_CliffordDefeat msgbox MossdeepCity_Gym_Text_CliffordPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Nicholas:: @ 8220BE3 +MossdeepCity_Gym_EventScript_Nicholas:: trainerbattle_single TRAINER_NICHOLAS, MossdeepCity_Gym_Text_NicholasIntro, MossdeepCity_Gym_Text_NicholasDefeat msgbox MossdeepCity_Gym_Text_NicholasPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_Kathleen:: @ 8220BFA +MossdeepCity_Gym_EventScript_Kathleen:: trainerbattle_single TRAINER_KATHLEEN, MossdeepCity_Gym_Text_KathleenIntro, MossdeepCity_Gym_Text_KathleenDefeat msgbox MossdeepCity_Gym_Text_KathleenPostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_Gym_EventScript_GymGuide:: @ 8220C11 +MossdeepCity_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_MOSSDEEP_GYM, MossdeepCity_Gym_EventScript_GymGuidePostVictory @@ -274,40 +274,40 @@ MossdeepCity_Gym_EventScript_GymGuide:: @ 8220C11 release end -MossdeepCity_Gym_EventScript_GymGuidePostVictory:: @ 8220C26 +MossdeepCity_Gym_EventScript_GymGuidePostVictory:: msgbox MossdeepCity_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end @ Leftover from RS, functionally unused -MossdeepCity_Gym_Movement_WaitAfterSwitchUse: @ 8220C30 +MossdeepCity_Gym_Movement_WaitAfterSwitchUse: delay_16 delay_16 step_end -MossdeepCity_Gym_EventScript_LeftGymStatue:: @ 8220C33 +MossdeepCity_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE07_GET, MossdeepCity_Gym_EventScript_GymStatueCertified goto MossdeepCity_Gym_EventScript_GymStatue end -MossdeepCity_Gym_EventScript_RightGymStatue:: @ 8220C43 +MossdeepCity_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE07_GET, MossdeepCity_Gym_EventScript_GymStatueCertified goto MossdeepCity_Gym_EventScript_GymStatue end -MossdeepCity_Gym_EventScript_GymStatueCertified:: @ 8220C53 +MossdeepCity_Gym_EventScript_GymStatueCertified:: msgbox MossdeepCity_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -MossdeepCity_Gym_EventScript_GymStatue:: @ 8220C5D +MossdeepCity_Gym_EventScript_GymStatue:: msgbox MossdeepCity_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -MossdeepCity_Gym_EventScript_YellowFloorSwitch:: @ 8220C67 +MossdeepCity_Gym_EventScript_YellowFloorSwitch:: playse SE_SWITCH waitse playse SE_REPEL @@ -319,7 +319,7 @@ MossdeepCity_Gym_EventScript_YellowFloorSwitch:: @ 8220C67 freerotatingtilepuzzle end -MossdeepCity_Gym_EventScript_BlueFloorSwitch:: @ 8220C7D +MossdeepCity_Gym_EventScript_BlueFloorSwitch:: playse SE_SWITCH waitse playse SE_REPEL @@ -331,7 +331,7 @@ MossdeepCity_Gym_EventScript_BlueFloorSwitch:: @ 8220C7D freerotatingtilepuzzle end -MossdeepCity_Gym_EventScript_GreenFloorSwitch:: @ 8220C93 +MossdeepCity_Gym_EventScript_GreenFloorSwitch:: playse SE_SWITCH waitse playse SE_REPEL @@ -343,7 +343,7 @@ MossdeepCity_Gym_EventScript_GreenFloorSwitch:: @ 8220C93 freerotatingtilepuzzle end -MossdeepCity_Gym_EventScript_PurpleFloorSwitch:: @ 8220CA9 +MossdeepCity_Gym_EventScript_PurpleFloorSwitch:: playse SE_SWITCH waitse playse SE_REPEL @@ -355,7 +355,7 @@ MossdeepCity_Gym_EventScript_PurpleFloorSwitch:: @ 8220CA9 freerotatingtilepuzzle end -MossdeepCity_Gym_EventScript_RedFloorSwitch:: @ 8220CBF +MossdeepCity_Gym_EventScript_RedFloorSwitch:: playse SE_SWITCH waitse playse SE_REPEL @@ -367,7 +367,7 @@ MossdeepCity_Gym_EventScript_RedFloorSwitch:: @ 8220CBF freerotatingtilepuzzle end -MossdeepCity_Gym_Text_GymGuideAdvice: @ 8220CD5 +MossdeepCity_Gym_Text_GymGuideAdvice: .string "Yo, how's it going, CHAMPION-bound\n" .string "{PLAYER}?\p" .string "The GYM LEADERS here use\n" @@ -381,46 +381,46 @@ MossdeepCity_Gym_Text_GymGuideAdvice: @ 8220CD5 .string "them how tight you are with your\l" .string "POKéMON. Go for it!$" -MossdeepCity_Gym_Text_GymGuidePostVictory: @ 8220E2A +MossdeepCity_Gym_Text_GymGuidePostVictory: .string "Wow, you're astounding!\n" .string "You're one great TRAINER!$" -MossdeepCity_Gym_Text_PrestonIntro: @ 8220E5C +MossdeepCity_Gym_Text_PrestonIntro: .string "Battles hinge on the strength of your\n" .string "spirit! The weak-spirited will never win!$" -MossdeepCity_Gym_Text_PrestonDefeat: @ 8220EAC +MossdeepCity_Gym_Text_PrestonDefeat: .string "I lost!\n" .string "I must temper my spirit again!$" -MossdeepCity_Gym_Text_PrestonPostBattle: @ 8220ED3 +MossdeepCity_Gym_Text_PrestonPostBattle: .string "The indecisive lose.\n" .string "That's my warning to you.$" -MossdeepCity_Gym_Text_VirgilIntro: @ 8220F02 +MossdeepCity_Gym_Text_VirgilIntro: .string "Let me see your talent!$" -MossdeepCity_Gym_Text_VirgilDefeat: @ 8220F1A +MossdeepCity_Gym_Text_VirgilDefeat: .string "You possess spectacular talent!$" -MossdeepCity_Gym_Text_VirgilPostBattle: @ 8220F3A +MossdeepCity_Gym_Text_VirgilPostBattle: .string "If there are prodigies in the world,\n" .string "then our GYM LEADERS are them!\p" .string "However, you may be even more talented\n" .string "than them…$" -MossdeepCity_Gym_Text_BlakeIntro: @ 8220FB0 +MossdeepCity_Gym_Text_BlakeIntro: .string "Fufufufu… Watch me levitate a POKé\n" .string "BALL telekinetically!\p" .string "Wrooooooooaaaar!\n" .string "… … … … … … …\p" .string "Sometimes, I'm out of sync…$" -MossdeepCity_Gym_Text_BlakeDefeat: @ 8221024 +MossdeepCity_Gym_Text_BlakeDefeat: .string "My POKéMON battling skills are out\n" .string "of sync, too!$" -MossdeepCity_Gym_Text_BlakePostBattle: @ 8221055 +MossdeepCity_Gym_Text_BlakePostBattle: .string "A POKé BALL was too heavy to lift\n" .string "psychically. But this dust bunny…\p" .string "Whoooooooooooooooh!\n" @@ -428,127 +428,127 @@ MossdeepCity_Gym_Text_BlakePostBattle: @ 8221055 .string "No, I'm not cheating!\n" .string "I didn't blow on it! Honestly!$" -MossdeepCity_Gym_Text_HannahIntro: @ 82210EE +MossdeepCity_Gym_Text_HannahIntro: .string "When you lose to me, don't be too hard\n" .string "on yourself.\p" .string "It's not that you're weak--I'm just\n" .string "too strong!$" -MossdeepCity_Gym_Text_HannahDefeat: @ 8221152 +MossdeepCity_Gym_Text_HannahDefeat: .string "You're just too strong!$" -MossdeepCity_Gym_Text_HannahPostBattle: @ 822116A +MossdeepCity_Gym_Text_HannahPostBattle: .string "I'm not going to get down on myself for\n" .string "losing. I just need to train harder.\p" .string "Positive thinking--that's my strong\n" .string "point!$" -MossdeepCity_Gym_Text_SamanthaIntro: @ 82211E2 +MossdeepCity_Gym_Text_SamanthaIntro: .string "I see it…\n" .string "I see your future…\p" .string "If you can beat me, I will tell you\n" .string "your future!$" -MossdeepCity_Gym_Text_SamanthaDefeat: @ 8221230 +MossdeepCity_Gym_Text_SamanthaDefeat: .string "I surrender!$" -MossdeepCity_Gym_Text_SamanthaPostBattle: @ 822123D +MossdeepCity_Gym_Text_SamanthaPostBattle: .string "You will wage a terrifically intense\n" .string "battle with our GYM LEADERS…\p" .string "The result…\n" .string "You won't hear it from me!$" -MossdeepCity_Gym_Text_MauraIntro: @ 82212A6 +MossdeepCity_Gym_Text_MauraIntro: .string "The roads you have traveled…\n" .string "What you have experienced…\p" .string "Come at me with everything you've\n" .string "learned!$" -MossdeepCity_Gym_Text_MauraDefeat: @ 8221309 +MossdeepCity_Gym_Text_MauraDefeat: .string "You've traveled a path of greatness!$" -MossdeepCity_Gym_Text_MauraPostBattle: @ 822132E +MossdeepCity_Gym_Text_MauraPostBattle: .string "A bright future awaits those who have\n" .string "worked diligently.\p" .string "For those who lazed idly, there is\n" .string "only despair at the end.\p" .string "What goes around comes around…$" -MossdeepCity_Gym_Text_SylviaIntro: @ 82213C2 +MossdeepCity_Gym_Text_SylviaIntro: .string "Even at the risk of life, I will win\n" .string "this battle!$" -MossdeepCity_Gym_Text_SylviaDefeat: @ 82213F4 +MossdeepCity_Gym_Text_SylviaDefeat: .string "What you do…\n" .string "It horrifies me…$" -MossdeepCity_Gym_Text_SylviaPostBattle: @ 8221412 +MossdeepCity_Gym_Text_SylviaPostBattle: .string "How dare you beat me…\p" .string "It won't be my fault if something\n" .string "horrible befalls you…$" -MossdeepCity_Gym_Text_NateIntro: @ 8221460 +MossdeepCity_Gym_Text_NateIntro: .string "Hohoho.\p" .string "You need me to show you how tenacious\n" .string "the PSYCHIC type can be.$" -MossdeepCity_Gym_Text_NateDefeat: @ 82214A7 +MossdeepCity_Gym_Text_NateDefeat: .string "Oh! My, my!\n" .string "Your battle style is fantastic!$" -MossdeepCity_Gym_Text_NatePostBattle: @ 82214D3 +MossdeepCity_Gym_Text_NatePostBattle: .string "I… I don't let defeat rattle m-me,\n" .string "however b-badly.$" -MossdeepCity_Gym_Text_KathleenIntro: @ 8221507 +MossdeepCity_Gym_Text_KathleenIntro: .string "Let me show you a perfectly awful,\n" .string "horrifying time!$" -MossdeepCity_Gym_Text_KathleenDefeat: @ 822153B +MossdeepCity_Gym_Text_KathleenDefeat: .string "N-nooooo!$" -MossdeepCity_Gym_Text_KathleenPostBattle: @ 8221545 +MossdeepCity_Gym_Text_KathleenPostBattle: .string "Your vitality is contagious!\n" .string "Get away from me quickly!$" -MossdeepCity_Gym_Text_CliffordIntro: @ 822157C +MossdeepCity_Gym_Text_CliffordIntro: .string "I may be past my prime, but I suggest\n" .string "you not patronize me.$" -MossdeepCity_Gym_Text_CliffordDefeat: @ 82215B8 +MossdeepCity_Gym_Text_CliffordDefeat: .string "Ah, you overflow with the power\n" .string "of youth!$" -MossdeepCity_Gym_Text_CliffordPostBattle: @ 82215E2 +MossdeepCity_Gym_Text_CliffordPostBattle: .string "It seems that I could not overcome\n" .string "your youthful energy.$" -MossdeepCity_Gym_Text_MaceyIntro: @ 822161B +MossdeepCity_Gym_Text_MaceyIntro: .string "You're not getting through to the end!\n" .string "Not if I can help it!$" -MossdeepCity_Gym_Text_MaceyDefeat: @ 8221658 +MossdeepCity_Gym_Text_MaceyDefeat: .string "How could you be so ludicrously\n" .string "strong?$" -MossdeepCity_Gym_Text_MaceyPostBattle: @ 8221680 +MossdeepCity_Gym_Text_MaceyPostBattle: .string "Humph! You may be strong, but you're\n" .string "not suitable for the PSYCHIC type!\p" .string "The way you battle is somehow brutal!$" -MossdeepCity_Gym_Text_NicholasIntro: @ 82216EE +MossdeepCity_Gym_Text_NicholasIntro: .string "Wroooar! Have a taste of my super\n" .string "POKéMON hard-battling power!$" -MossdeepCity_Gym_Text_NicholasDefeat: @ 822172D +MossdeepCity_Gym_Text_NicholasDefeat: .string "Oh!\n" .string "Done in!$" -MossdeepCity_Gym_Text_NicholasPostBattle: @ 822173A +MossdeepCity_Gym_Text_NicholasPostBattle: .string "All right! I think I'll develop a special\n" .string "invincible POKéMON power next.$" -MossdeepCity_Gym_Text_TateAndLizaIntro: @ 8221783 +MossdeepCity_Gym_Text_TateAndLizaIntro: .string "TATE: Hehehe… Were you surprised?\p" .string "LIZA: Fufufu… Were you surprised?\p" .string "TATE: That there are two GYM LEADERS?\n" @@ -562,24 +562,24 @@ MossdeepCity_Gym_Text_TateAndLizaIntro: @ 8221783 .string "TATE: This combination of ours…\n" .string "LIZA: Can you beat it?$" -MossdeepCity_Gym_Text_TateAndLizaDefeat: @ 82218EC +MossdeepCity_Gym_Text_TateAndLizaDefeat: .string "TATE: What?! Our combination…\n" .string "LIZA: Was shattered!\p" .string "TATE: It can't be helped. You've won…\n" .string "LIZA: So, in recognition, take this.$" -MossdeepCity_Gym_Text_ReceivedMindBadge: @ 822196A +MossdeepCity_Gym_Text_ReceivedMindBadge: .string "{PLAYER} received the MIND BADGE\n" .string "from TATE and LIZA.$" -MossdeepCity_Gym_Text_ExplainMindBadgeTakeThis: @ 8221999 +MossdeepCity_Gym_Text_ExplainMindBadgeTakeThis: .string "TATE: The MIND BADGE enhances the\n" .string "SP. ATK and SP. DEF of POKéMON.\p" .string "LIZA: It also lets you use the HM move\n" .string "DIVE outside of battle.\p" .string "TATE: You should also take this, too.$" -MossdeepCity_Gym_Text_ExplainCalmMind: @ 8221A40 +MossdeepCity_Gym_Text_ExplainCalmMind: .string "TATE: That TM04 contains…\n" .string "LIZA: CALM MIND!\p" .string "TATE: It raises SP. ATK and…\n" @@ -588,18 +588,18 @@ MossdeepCity_Gym_Text_ExplainCalmMind: @ 8221A40 .string "LIZA: For PSYCHIC POKéMON!\p" .string "… … … … … …$" -MossdeepCity_Gym_Text_RegisteredTateAndLiza: @ 8221AEA +MossdeepCity_Gym_Text_RegisteredTateAndLiza: .string "Registered GYM LEADERS TATE & LIZA\n" .string "in the POKéNAV.$" -MossdeepCity_Gym_Text_TateAndLizaPostBattle: @ 8221B1D +MossdeepCity_Gym_Text_TateAndLizaPostBattle: .string "TATE: Looks like the bond between you\n" .string "and your POKéMON is far stronger than\l" .string "the bond that we share as twins.\p" .string "LIZA: You will become even stronger!\n" .string "We've battled you, so we know.$" -MossdeepCity_Gym_Text_TateAndLizaNeedTwoMons: @ 8221BCE +MossdeepCity_Gym_Text_TateAndLizaNeedTwoMons: .string "TATE: Hehehe… Were you surprised?\p" .string "LIZA: That there are two GYM LEADERS?\p" .string "TATE: Oops, you have only one…\n" @@ -608,15 +608,15 @@ MossdeepCity_Gym_Text_TateAndLizaNeedTwoMons: @ 8221BCE .string "LIZA: If you want to challenge us,\n" .string "bring some more POKéMON.$" -MossdeepCity_Gym_Text_GymStatue: @ 8221CB0 +MossdeepCity_Gym_Text_GymStatue: .string "MOSSDEEP CITY POKéMON GYM$" -MossdeepCity_Gym_Text_GymStatueCertified: @ 8221CCA +MossdeepCity_Gym_Text_GymStatueCertified: .string "MOSSDEEP CITY POKéMON GYM\p" .string "LIZA AND TATE'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -MossdeepCity_Gym_Text_TateAndLizaPreRematch: @ 8221D0B +MossdeepCity_Gym_Text_TateAndLizaPreRematch: .string "TATE: POKéMON…\n" .string "LIZA: POKéMON…\p" .string "TATE: By changing the party's mix…\n" @@ -628,17 +628,17 @@ MossdeepCity_Gym_Text_TateAndLizaPreRematch: @ 8221D0B .string "TATE: Our combination…\n" .string "LIZA: We'll show you again and again!$" -MossdeepCity_Gym_Text_TateAndLizaRematchDefeat: @ 8221E05 +MossdeepCity_Gym_Text_TateAndLizaRematchDefeat: .string "TATE: You and your POKéMON…\n" .string "LIZA: It's as if you were siblings!$" -MossdeepCity_Gym_Text_TateAndLizaPostRematch: @ 8221E45 +MossdeepCity_Gym_Text_TateAndLizaPostRematch: .string "TATE: You can knock us down,\n" .string "but we'll never stay down!\p" .string "LIZA: Because the two of us,\n" .string "we always support each other!$" -MossdeepCity_Gym_Text_TateAndLizaRematchNeedTwoMons: @ 8221EB8 +MossdeepCity_Gym_Text_TateAndLizaRematchNeedTwoMons: .string "TATE: You're back again…\n" .string "LIZA: You're back again…\p" .string "TATE: To give us a rematch.\n" diff --git a/data/maps/MossdeepCity_House1/scripts.inc b/data/maps/MossdeepCity_House1/scripts.inc index 3ad07e02337e..99224a795e05 100644 --- a/data/maps/MossdeepCity_House1/scripts.inc +++ b/data/maps/MossdeepCity_House1/scripts.inc @@ -1,7 +1,7 @@ -MossdeepCity_House1_MapScripts:: @ 8221FD5 +MossdeepCity_House1_MapScripts:: .byte 0 -MossdeepCity_House1_EventScript_BlackBelt:: @ 8221FD6 +MossdeepCity_House1_EventScript_BlackBelt:: lock faceplayer bufferleadmonspeciesname 0 @@ -13,30 +13,30 @@ MossdeepCity_House1_EventScript_BlackBelt:: @ 8221FD6 release end -MossdeepCity_House1_EventScript_NeutralNature:: @ 8221FFC +MossdeepCity_House1_EventScript_NeutralNature:: msgbox MossdeepCity_House1_Text_DoesntLikeOrDislikePokeblocks, MSGBOX_DEFAULT release end -MossdeepCity_House1_EventScript_Woman:: @ 8222006 +MossdeepCity_House1_EventScript_Woman:: msgbox MossdeepCity_House1_Text_HusbandCanTellPokeblockMonLikes, MSGBOX_NPC end -MossdeepCity_House1_Text_HmmYourPokemon: @ 822200F +MossdeepCity_House1_Text_HmmYourPokemon: .string "Hmm!\n" .string "Your {STR_VAR_1}…$" -MossdeepCity_House1_Text_ItLikesXPokeblocks: @ 822201D +MossdeepCity_House1_Text_ItLikesXPokeblocks: .string "It likes {STR_VAR_1}S,\n" .string "doesn't it?\p" .string "No, I'm positive of it! It definitely\n" .string "likes {STR_VAR_1}S!$" -MossdeepCity_House1_Text_DoesntLikeOrDislikePokeblocks: @ 8222068 +MossdeepCity_House1_Text_DoesntLikeOrDislikePokeblocks: .string "It doesn't appear to like or dislike\n" .string "any {POKEBLOCK}S.$" -MossdeepCity_House1_Text_HusbandCanTellPokeblockMonLikes: @ 8222099 +MossdeepCity_House1_Text_HusbandCanTellPokeblockMonLikes: .string "My husband can tell what kind of\n" .string "{POKEBLOCK}S a POKéMON likes at a glance.$" diff --git a/data/maps/MossdeepCity_House2/scripts.inc b/data/maps/MossdeepCity_House2/scripts.inc index 5e4b3b34290c..63036814b2ee 100644 --- a/data/maps/MossdeepCity_House2/scripts.inc +++ b/data/maps/MossdeepCity_House2/scripts.inc @@ -1,17 +1,17 @@ .set LOCALID_WINGULL, 3 -MossdeepCity_House2_MapScripts:: @ 82220DE +MossdeepCity_House2_MapScripts:: .byte 0 -MossdeepCity_House2_EventScript_Man:: @ 82220DF +MossdeepCity_House2_EventScript_Man:: msgbox MossdeepCity_House2_Text_SisterMailsBoyfriendInFortree, MSGBOX_NPC end -MossdeepCity_House2_EventScript_Twin:: @ 82220E8 +MossdeepCity_House2_EventScript_Twin:: msgbox MossdeepCity_House2_Text_PokemonCarriesMailBackAndForth, MSGBOX_NPC end -MossdeepCity_House2_EventScript_Wingull:: @ 82220F1 +MossdeepCity_House2_EventScript_Wingull:: lock faceplayer waitse @@ -29,17 +29,17 @@ MossdeepCity_House2_EventScript_Wingull:: @ 82220F1 release end -MossdeepCity_House2_EventScript_WingullExitNorth:: @ 8222124 +MossdeepCity_House2_EventScript_WingullExitNorth:: applymovement LOCALID_WINGULL, MossdeepCity_House2_Movement_WingullExitNorth waitmovement 0 return -MossdeepCity_House2_EventScript_WingullExitWest:: @ 822212F +MossdeepCity_House2_EventScript_WingullExitWest:: applymovement LOCALID_WINGULL, MossdeepCity_House2_Movement_WingullExitEast waitmovement 0 return -MossdeepCity_House2_Movement_WingullExitNorth: @ 822213A +MossdeepCity_House2_Movement_WingullExitNorth: walk_fast_right walk_fast_down walk_fast_down @@ -48,25 +48,25 @@ MossdeepCity_House2_Movement_WingullExitNorth: @ 822213A delay_8 step_end -MossdeepCity_House2_Movement_WingullExitEast: @ 8222141 +MossdeepCity_House2_Movement_WingullExitEast: walk_fast_down walk_fast_down walk_fast_down delay_8 step_end -MossdeepCity_House2_Text_SisterMailsBoyfriendInFortree: @ 8222146 +MossdeepCity_House2_Text_SisterMailsBoyfriendInFortree: .string "My little sister exchanges MAIL with\n" .string "her boyfriend in FORTREE.\p" .string "I don't envy her one bit at all.$" -MossdeepCity_House2_Text_PokemonCarriesMailBackAndForth: @ 82221A6 +MossdeepCity_House2_Text_PokemonCarriesMailBackAndForth: .string "Even though I can't see my friend in\n" .string "FORTREE, my POKéMON carries MAIL\l" .string "back and forth for us.\p" .string "I'm not lonesome, even though we're\n" .string "apart.$" -MossdeepCity_House2_Text_Wingull: @ 822222E +MossdeepCity_House2_Text_Wingull: .string "WINGULL: Pihyoh!$" diff --git a/data/maps/MossdeepCity_House3/scripts.inc b/data/maps/MossdeepCity_House3/scripts.inc index b968dfc045cd..51df05fe040a 100644 --- a/data/maps/MossdeepCity_House3/scripts.inc +++ b/data/maps/MossdeepCity_House3/scripts.inc @@ -1,7 +1,7 @@ -MossdeepCity_House3_MapScripts:: @ 82225C2 +MossdeepCity_House3_MapScripts:: .byte 0 -MossdeepCity_House3_EventScript_SuperRodFisherman:: @ 82225C3 +MossdeepCity_House3_EventScript_SuperRodFisherman:: lock faceplayer goto_if_set FLAG_RECEIVED_SUPER_ROD, MossdeepCity_House3_EventScript_ReceivedSuperRod @@ -15,17 +15,17 @@ MossdeepCity_House3_EventScript_SuperRodFisherman:: @ 82225C3 release end -MossdeepCity_House3_EventScript_ReceivedSuperRod:: @ 8222602 +MossdeepCity_House3_EventScript_ReceivedSuperRod:: msgbox MossdeepCity_House3_Text_GoAfterSeafloorPokemon, MSGBOX_DEFAULT release end -MossdeepCity_House3_EventScript_DeclineSuperRod:: @ 822260C +MossdeepCity_House3_EventScript_DeclineSuperRod:: msgbox MossdeepCity_House3_Text_DontYouLikeToFish, MSGBOX_DEFAULT release end -MossdeepCity_House3_Text_YouWantSuperRod: @ 8222616 +MossdeepCity_House3_Text_YouWantSuperRod: .string "Hey there, TRAINER!\n" .string "A SUPER ROD really is super!\p" .string "Say all you want, but this baby can\n" @@ -33,19 +33,19 @@ MossdeepCity_House3_Text_YouWantSuperRod: @ 8222616 .string "What do you think?\n" .string "You want it, don't you?$" -MossdeepCity_House3_Text_SuperRodIsSuper: @ 82226B6 +MossdeepCity_House3_Text_SuperRodIsSuper: .string "You bet, you bet!\n" .string "After all, a SUPER ROD is really super!$" -MossdeepCity_House3_Text_TryDroppingRodInWater: @ 82226F0 +MossdeepCity_House3_Text_TryDroppingRodInWater: .string "If there's any water, try dropping in\n" .string "your ROD and see what bites!$" -MossdeepCity_House3_Text_DontYouLikeToFish: @ 8222733 +MossdeepCity_House3_Text_DontYouLikeToFish: .string "Hunh?\n" .string "Don't you like to fish?$" -MossdeepCity_House3_Text_GoAfterSeafloorPokemon: @ 8222751 +MossdeepCity_House3_Text_GoAfterSeafloorPokemon: .string "Go after the seafloor POKéMON with\n" .string "your SUPER ROD.$" diff --git a/data/maps/MossdeepCity_House4/scripts.inc b/data/maps/MossdeepCity_House4/scripts.inc index 473c1cfbdee4..85c0e5ebc055 100644 --- a/data/maps/MossdeepCity_House4/scripts.inc +++ b/data/maps/MossdeepCity_House4/scripts.inc @@ -1,7 +1,7 @@ -MossdeepCity_House4_MapScripts:: @ 8222DD7 +MossdeepCity_House4_MapScripts:: .byte 0 -MossdeepCity_House4_EventScript_Woman:: @ 8222DD8 +MossdeepCity_House4_EventScript_Woman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_House4_EventScript_CanBattleAtSecretBases @@ -9,12 +9,12 @@ MossdeepCity_House4_EventScript_Woman:: @ 8222DD8 release end -MossdeepCity_House4_EventScript_CanBattleAtSecretBases:: @ 8222DED +MossdeepCity_House4_EventScript_CanBattleAtSecretBases:: msgbox MossdeepCity_House4_Text_BrotherLikesToVisitBasesAndBattle, MSGBOX_DEFAULT release end -MossdeepCity_House4_EventScript_NinjaBoy:: @ 8222DF7 +MossdeepCity_House4_EventScript_NinjaBoy:: lock faceplayer special CheckPlayerHasSecretBase @@ -25,12 +25,12 @@ MossdeepCity_House4_EventScript_NinjaBoy:: @ 8222DF7 release end -MossdeepCity_House4_EventScript_NoSecretBase:: @ 8222E14 +MossdeepCity_House4_EventScript_NoSecretBase:: msgbox MossdeepCity_House4_Text_MakeSecretBase, MSGBOX_DEFAULT release end -MossdeepCity_House4_EventScript_Skitty:: @ 8222E1E +MossdeepCity_House4_EventScript_Skitty:: lock faceplayer waitse @@ -40,23 +40,23 @@ MossdeepCity_House4_EventScript_Skitty:: @ 8222E1E release end -MossdeepCity_House4_Text_BrotherLikesToFindBases: @ 8222E31 +MossdeepCity_House4_Text_BrotherLikesToFindBases: .string "My little brother says he likes to go\n" .string "find people's SECRET BASES.$" -MossdeepCity_House4_Text_BrotherLikesToVisitBasesAndBattle: @ 8222E73 +MossdeepCity_House4_Text_BrotherLikesToVisitBasesAndBattle: .string "My little brother says he likes to\n" .string "visit people's SECRET BASES and have\l" .string "POKéMON battles.$" -MossdeepCity_House4_Text_YouMadeSecretBaseNearX: @ 8222ECC +MossdeepCity_House4_Text_YouMadeSecretBaseNearX: .string "Was it you who made a SECRET BASE\n" .string "near {STR_VAR_1}?$" -MossdeepCity_House4_Text_MakeSecretBase: @ 8222EF7 +MossdeepCity_House4_Text_MakeSecretBase: .string "You should make a SECRET BASE\n" .string "somewhere. I'll go find it!$" -MossdeepCity_House4_Text_Skitty: @ 8222F31 +MossdeepCity_House4_Text_Skitty: .string "SKITTY: Miyaan?$" diff --git a/data/maps/MossdeepCity_Mart/scripts.inc b/data/maps/MossdeepCity_Mart/scripts.inc index c0d0ae31163b..50edddd09aba 100644 --- a/data/maps/MossdeepCity_Mart/scripts.inc +++ b/data/maps/MossdeepCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -MossdeepCity_Mart_MapScripts:: @ 82223C7 +MossdeepCity_Mart_MapScripts:: .byte 0 -MossdeepCity_Mart_EventScript_Clerk:: @ 82223C8 +MossdeepCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ MossdeepCity_Mart_EventScript_Clerk:: @ 82223C8 end .align 2 -MossdeepCity_Mart_Pokemart: @ 82223E0 +MossdeepCity_Mart_Pokemart: .2byte ITEM_ULTRA_BALL .2byte ITEM_NET_BALL .2byte ITEM_DIVE_BALL @@ -26,31 +26,31 @@ MossdeepCity_Mart_Pokemart: @ 82223E0 release end -MossdeepCity_Mart_EventScript_Woman:: @ 82223F6 +MossdeepCity_Mart_EventScript_Woman:: msgbox MossdeepCity_Mart_Text_ReviveIsFantastic, MSGBOX_NPC end -MossdeepCity_Mart_EventScript_Boy:: @ 82223FF +MossdeepCity_Mart_EventScript_Boy:: msgbox MossdeepCity_Mart_Text_MaxRepelLastsLongest, MSGBOX_NPC end -MossdeepCity_Mart_EventScript_Sailor:: @ 8222408 +MossdeepCity_Mart_EventScript_Sailor:: msgbox MossdeepCity_Mart_Text_NetAndDiveBallsRare, MSGBOX_NPC end -MossdeepCity_Mart_Text_ReviveIsFantastic: @ 8222411 +MossdeepCity_Mart_Text_ReviveIsFantastic: .string "REVIVE is fantastic!\p" .string "Give it to a fainted POKéMON,\n" .string "and the POKéMON will arise.\p" .string "But be careful, REVIVE doesn't restore\n" .string "the used-up PP of moves.$" -MossdeepCity_Mart_Text_MaxRepelLastsLongest: @ 82224A0 +MossdeepCity_Mart_Text_MaxRepelLastsLongest: .string "MAX REPEL keeps all weak POKéMON away.\p" .string "Out of all the REPEL sprays, it lasts\n" .string "the longest.$" -MossdeepCity_Mart_Text_NetAndDiveBallsRare: @ 82224FA +MossdeepCity_Mart_Text_NetAndDiveBallsRare: .string "The NET and DIVE BALLS are rare POKé\n" .string "BALLS that are only made in MOSSDEEP.\p" .string "A NET BALL is effective against\n" diff --git a/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc b/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc index 7cefc796a015..bfd3561d2612 100644 --- a/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_NURSE, 1 -MossdeepCity_PokemonCenter_1F_MapScripts:: @ 822223F +MossdeepCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -MossdeepCity_PokemonCenter_1F_OnTransition: @ 822224A +MossdeepCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_MOSSDEEP_CITY end -MossdeepCity_PokemonCenter_1F_EventScript_Nurse:: @ 822224E +MossdeepCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -17,21 +17,21 @@ MossdeepCity_PokemonCenter_1F_EventScript_Nurse:: @ 822224E release end -MossdeepCity_PokemonCenter_1F_EventScript_Woman:: @ 822225C +MossdeepCity_PokemonCenter_1F_EventScript_Woman:: msgbox MossdeepCity_PokemonCenter_1F_Text_GymLeaderDuoFormidable, MSGBOX_NPC end -MossdeepCity_PokemonCenter_1F_EventScript_Girl:: @ 8222265 +MossdeepCity_PokemonCenter_1F_EventScript_Girl:: msgbox MossdeepCity_PokemonCenter_1F_Text_AbilitiesMightChangeMoves, MSGBOX_NPC end -MossdeepCity_PokemonCenter_1F_Text_GymLeaderDuoFormidable: @ 822226E +MossdeepCity_PokemonCenter_1F_Text_GymLeaderDuoFormidable: .string "The GYM LEADERS in this town are\n" .string "a formidable duo.\p" .string "Their combination attacks are, like,\n" .string "excellent and wow!$" -MossdeepCity_PokemonCenter_1F_Text_AbilitiesMightChangeMoves: @ 82222D9 +MossdeepCity_PokemonCenter_1F_Text_AbilitiesMightChangeMoves: .string "Depending on the special abilities of\n" .string "POKéMON, some moves might change\l" .string "or not work at all.$" diff --git a/data/maps/MossdeepCity_PokemonCenter_2F/scripts.inc b/data/maps/MossdeepCity_PokemonCenter_2F/scripts.inc index 1d88c9ca2c88..3b41bff6c0ea 100644 --- a/data/maps/MossdeepCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -MossdeepCity_PokemonCenter_2F_MapScripts:: @ 8222334 +MossdeepCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,23 +6,23 @@ MossdeepCity_PokemonCenter_2F_MapScripts:: @ 8222334 .byte 0 @ The below 3 are unused and leftover from RS -MossdeepCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8222349 +MossdeepCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -MossdeepCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 822234F +MossdeepCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -MossdeepCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 8222355 +MossdeepCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end -MossdeepCity_PokemonCenter_2F_EventScript_Woman5:: @ 822235B +MossdeepCity_PokemonCenter_2F_EventScript_Woman5:: msgbox MossdeepCity_PokemonCenter_2F_Text_Woman5, MSGBOX_NPC end -MossdeepCity_PokemonCenter_2F_Text_Woman5: @ 8222364 +MossdeepCity_PokemonCenter_2F_Text_Woman5: .string "If I win a whole lot of link battles\n" .string "and show everyone how good I am,\l" .string "I might get a fan following!$" diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc index eb081dbbbb7b..4d69725b4c50 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc @@ -5,17 +5,17 @@ .set LOCALID_WOMAN, 5 .set LOCALID_STAIR_GRUNT, 9 -MossdeepCity_SpaceCenter_1F_MapScripts:: @ 8222F41 +MossdeepCity_SpaceCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_SpaceCenter_1F_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_SpaceCenter_1F_OnTransition .byte 0 -MossdeepCity_SpaceCenter_1F_OnTransition: @ 8222F4C +MossdeepCity_SpaceCenter_1F_OnTransition: compare VAR_MOSSDEEP_CITY_STATE, 2 goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma end -MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: @ 8222F58 +MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: setobjectxyperm LOCALID_SAILOR, 1, 9 setobjectmovementtype LOCALID_SAILOR, MOVEMENT_TYPE_FACE_RIGHT setobjectxyperm LOCALID_WOMAN, 0, 8 @@ -33,29 +33,29 @@ MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: @ 8222F58 goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight end -MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft:: @ 8222FAA +MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft:: setobjectxyperm LOCALID_STAIR_GRUNT, 12, 2 end -MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown:: @ 8222FB2 +MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown:: setobjectxyperm LOCALID_STAIR_GRUNT, 13, 3 end @ Functionally unused. See comment on MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast -MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight:: @ 8222FBA +MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight:: setobjectxyperm LOCALID_STAIR_GRUNT, 14, 2 end -MossdeepCity_SpaceCenter_1F_OnLoad: @ 8222FC2 +MossdeepCity_SpaceCenter_1F_OnLoad: compare VAR_MOSSDEEP_CITY_STATE, 2 goto_if_le MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote end -MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: @ 8222FCE +MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: setmetatile 2, 5, METATILE_Facility_DataPad, 1 return -MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: @ 8222FD8 +MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: lock faceplayer compare VAR_MOSSDEEP_CITY_STATE, 2 @@ -73,15 +73,15 @@ MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: @ 8222FD8 release end -MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet:: @ 8223012 +MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet:: msgbox MossdeepCity_SpaceCenter_1F_Text_RocketLaunchImminent, MSGBOX_DEFAULT return -MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber:: @ 822301B +MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber:: msgbox MossdeepCity_SpaceCenter_1F_Text_SuccessfulLaunchNumber, MSGBOX_DEFAULT return -MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: @ 8223024 +MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: dotimebasedevents specialvar VAR_RESULT, GetWeekCount buffernumberstring 0, VAR_RESULT @@ -95,15 +95,15 @@ MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: @ 8223024 release end -MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma:: @ 8223051 +MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_HaywireButRocketLaunchImminent, MSGBOX_DEFAULT return -MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma:: @ 822305A +MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_HaywireButSuccessfulLaunchNumber, MSGBOX_DEFAULT return -MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: @ 8223063 +MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: lock faceplayer compare VAR_MOSSDEEP_CITY_STATE, 2 @@ -112,14 +112,14 @@ MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: @ 8223063 release end -MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma:: @ 822307A +MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight waitmovement 0 release end -MossdeepCity_SpaceCenter_1F_EventScript_SunStoneMan:: @ 822308E +MossdeepCity_SpaceCenter_1F_EventScript_SunStoneMan:: lock faceplayer compare VAR_MOSSDEEP_CITY_STATE, 2 @@ -134,12 +134,12 @@ MossdeepCity_SpaceCenter_1F_EventScript_SunStoneMan:: @ 822308E release end -MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStone:: @ 82230D0 +MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStone:: msgbox MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: @ 82230DA +MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis, MSGBOX_DEFAULT giveitem ITEM_SUN_STONE @@ -152,14 +152,14 @@ MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: @ 82230DA release end -MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma:: @ 8223119 +MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight waitmovement 0 release end -MossdeepCity_SpaceCenter_1F_EventScript_Woman:: @ 822312D +MossdeepCity_SpaceCenter_1F_EventScript_Woman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal @@ -170,17 +170,17 @@ MossdeepCity_SpaceCenter_1F_EventScript_Woman:: @ 822312D goto MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma end -MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal:: @ 8223154 +MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal:: msgbox MossdeepCity_SpaceCenter_1F_Text_DidPokemonComeFromSpace, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma:: @ 822315E +MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_AquaShouldBeatMagma, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_1F_EventScript_OldMan:: @ 8223168 +MossdeepCity_SpaceCenter_1F_EventScript_OldMan:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal @@ -191,7 +191,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_OldMan:: @ 8223168 goto MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma end -MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal:: @ 822318F +MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal:: msgbox MossdeepCity_SpaceCenter_1F_Text_RocketsBoggleMyMind, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -199,7 +199,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal:: @ 822318F release end -MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma:: @ 82231A4 +MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaWantsToSpoilMyDream, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -207,7 +207,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma:: @ 82231A4 release end -MossdeepCity_SpaceCenter_1F_EventScript_Steven:: @ 82231B9 +MossdeepCity_SpaceCenter_1F_EventScript_Steven:: lock faceplayer msgbox MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel, MSGBOX_DEFAULT @@ -216,28 +216,28 @@ MossdeepCity_SpaceCenter_1F_EventScript_Steven:: @ 82231B9 release end -MossdeepCity_SpaceCenter_1F_EventScript_MagmaNote:: @ 82231CF +MossdeepCity_SpaceCenter_1F_EventScript_MagmaNote:: lockall msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaIntentToStealNotice, MSGBOX_DEFAULT releaseall end -MossdeepCity_SpaceCenter_1F_EventScript_Grunt3:: @ 82231DA +MossdeepCity_SpaceCenter_1F_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_3, MossdeepCity_SpaceCenter_1F_Text_Grunt3Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt3Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_SpaceCenter_1F_EventScript_Grunt1:: @ 82231F1 +MossdeepCity_SpaceCenter_1F_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_1, MossdeepCity_SpaceCenter_1F_Text_Grunt1Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt1Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_SpaceCenter_1F_EventScript_Grunt4:: @ 8223208 +MossdeepCity_SpaceCenter_1F_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_4, MossdeepCity_SpaceCenter_1F_Text_Grunt4Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt4Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -MossdeepCity_SpaceCenter_1F_EventScript_Grunt2:: @ 822321F +MossdeepCity_SpaceCenter_1F_EventScript_Grunt2:: lock faceplayer goto_if_set FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F, MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated @@ -258,12 +258,12 @@ MossdeepCity_SpaceCenter_1F_EventScript_Grunt2:: @ 822321F release end -MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated:: @ 822326E +MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated:: msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt2PostBattle, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest:: @ 8223278 +MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest:: applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest waitmovement 0 setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1 @@ -272,53 +272,53 @@ MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest:: @ 8223278 @ 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:: @ 8223289 +MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast:: applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast waitmovement 0 setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3 release end -MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest: @ 822329A +MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest: lock_facing_direction walk_left unlock_facing_direction step_end @ Functionally unused. See above -MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast: @ 822329E +MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast: lock_facing_direction walk_right unlock_facing_direction step_end @ This was meant to only handle the player facing North, but by mistake(?) it also handles the player facing East -MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs: @ 82232A2 +MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs: face_left lock_facing_direction walk_right unlock_facing_direction step_end -MossdeepCity_SpaceCenter_1F_Text_RocketLaunchImminent: @ 82232A7 +MossdeepCity_SpaceCenter_1F_Text_RocketLaunchImminent: .string "The rocket's launch is imminent!$" -MossdeepCity_SpaceCenter_1F_Text_SuccessfulLaunchNumber: @ 82232C8 +MossdeepCity_SpaceCenter_1F_Text_SuccessfulLaunchNumber: .string "The rocket launched safely!\n" .string "That's successful launch no. {STR_VAR_1}!$" -MossdeepCity_SpaceCenter_1F_Text_HaywireButRocketLaunchImminent: @ 8223305 +MossdeepCity_SpaceCenter_1F_Text_HaywireButRocketLaunchImminent: .string "I know that things are a little\n" .string "haywire right now, but…\p" .string "The rocket's launch is imminent!$" -MossdeepCity_SpaceCenter_1F_Text_HaywireButSuccessfulLaunchNumber: @ 822335E +MossdeepCity_SpaceCenter_1F_Text_HaywireButSuccessfulLaunchNumber: .string "I know that things are a little\n" .string "haywire right now, but…\p" .string "The rocket launched safely!\n" .string "That's successful launch no. {STR_VAR_1}!$" -MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection: @ 82233D3 +MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection: .string "A rocket launch demands perfection.\n" .string "Not even a 1% margin of error is allowed.\p" .string "Even if it's 99% okay, the whole thing\n" @@ -326,55 +326,55 @@ MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection: @ 82233D3 .string "Despite that, we never stop trying.\n" .string "Why? It's a dream that never ends.$" -MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter: @ 82234B7 +MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter: .string "Those MAGMA thugs have their sights\n" .string "set on our SPACE CENTER.\p" .string "But we can't allow anything that minor\n" .string "to interfere with our rocket launch!$" -MossdeepCity_SpaceCenter_1F_Text_FoundThisYouCanHaveIt: @ 8223540 +MossdeepCity_SpaceCenter_1F_Text_FoundThisYouCanHaveIt: .string "I was taking a stroll down the beach\n" .string "when I found this.\p" .string "It's not anything I need, so you can\n" .string "have it.$" -MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers: @ 82235A6 +MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers: .string "The HOENN region has been famous for \n" .string "its meteor showers for a long time.$" -MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis: @ 82235F0 +MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis: .string "TEAM MAGMA can't be allowed to steal\n" .string "the rocket fuel.\p" .string "Oh, by the way, you can have this stone\n" .string "I found on the beach.$" -MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma: @ 8223664 +MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma: .string "With TEAM MAGMA around, I guess\n" .string "strolls on the beach aren't safe.$" -MossdeepCity_SpaceCenter_1F_Text_DidPokemonComeFromSpace: @ 82236A6 +MossdeepCity_SpaceCenter_1F_Text_DidPokemonComeFromSpace: .string "Some people claim that POKéMON came\n" .string "from space. Could it be true?$" -MossdeepCity_SpaceCenter_1F_Text_AquaShouldBeatMagma: @ 82236E8 +MossdeepCity_SpaceCenter_1F_Text_AquaShouldBeatMagma: .string "TEAM AQUA should take care of\n" .string "TEAM MAGMA!\p" .string "But if they did that, TEAM AQUA will\n" .string "become bold and brazen, won't they?$" -MossdeepCity_SpaceCenter_1F_Text_RocketsBoggleMyMind: @ 822375B +MossdeepCity_SpaceCenter_1F_Text_RocketsBoggleMyMind: .string "A giant chunk of metal bursts through\n" .string "the skies and flies into space…\p" .string "It boggles my mind!$" -MossdeepCity_SpaceCenter_1F_Text_MagmaWantsToSpoilMyDream: @ 82237B5 +MossdeepCity_SpaceCenter_1F_Text_MagmaWantsToSpoilMyDream: .string "A giant chunk of metal bursts through\n" .string "the skies and flies into space…\p" .string "But TEAM MAGMA wants to spoil\n" .string "that dream of mine!\p" .string "I'm not having any of that!$" -MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel: @ 8223849 +MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel: .string "STEVEN: {PLAYER}{KUN}, have you read that\n" .string "proclamation already?\p" .string "TEAM MAGMA is coming after the rocket\n" @@ -386,57 +386,57 @@ MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel: @ 8223849 .string "In the meantime, why don't you go\n" .string "check out the town?$" -MossdeepCity_SpaceCenter_1F_Text_Grunt3Intro: @ 822396C +MossdeepCity_SpaceCenter_1F_Text_Grunt3Intro: .string "As promised, we've come for\n" .string "the rocket fuel!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt3Defeat: @ 8223999 +MossdeepCity_SpaceCenter_1F_Text_Grunt3Defeat: .string "Ran out of fuel…$" -MossdeepCity_SpaceCenter_1F_Text_Grunt3PostBattle: @ 82239AA +MossdeepCity_SpaceCenter_1F_Text_Grunt3PostBattle: .string "Don't think you're on a roll just\n" .string "because you've beaten me!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt1Intro: @ 82239E6 +MossdeepCity_SpaceCenter_1F_Text_Grunt1Intro: .string "We gave you fair warning!\n" .string "There's nothing sneaky about us!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt1Defeat: @ 8223A21 +MossdeepCity_SpaceCenter_1F_Text_Grunt1Defeat: .string "Grrr…\n" .string "We should've used sneaky treachery…$" -MossdeepCity_SpaceCenter_1F_Text_Grunt1PostBattle: @ 8223A4B +MossdeepCity_SpaceCenter_1F_Text_Grunt1PostBattle: .string "Okay, I get it already! The next time,\n" .string "we'll come unannounced.$" -MossdeepCity_SpaceCenter_1F_Text_Grunt4Intro: @ 8223A8A +MossdeepCity_SpaceCenter_1F_Text_Grunt4Intro: .string "The rocket fuel the SPACE CENTER has\n" .string "in storage--that's what we're after.\p" .string "We mean to take every last bit of it!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt4Defeat: @ 8223AFA +MossdeepCity_SpaceCenter_1F_Text_Grunt4Defeat: .string "Please, can you spare some fuel?\n" .string "Even a chintzy cup will do!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt4PostBattle: @ 8223B37 +MossdeepCity_SpaceCenter_1F_Text_Grunt4PostBattle: .string "What are we going to do with\n" .string "the rocket fuel?\p" .string "How would I know?\n" .string "Ask our leader upstairs!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt2Intro: @ 8223B90 +MossdeepCity_SpaceCenter_1F_Text_Grunt2Intro: .string "Our leader said no one, but no one,\n" .string "gets past me!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt2Defeat: @ 8223BC2 +MossdeepCity_SpaceCenter_1F_Text_Grunt2Defeat: .string "Ack! Ack! Aaack!$" -MossdeepCity_SpaceCenter_1F_Text_Grunt2PostBattle: @ 8223BD3 +MossdeepCity_SpaceCenter_1F_Text_Grunt2PostBattle: .string "Please, tell our leader that\n" .string "I never abandoned my post.\l" .string "That I stayed to the bitter end…$" -MossdeepCity_SpaceCenter_1F_Text_MagmaIntentToStealNotice: @ 8223C2C +MossdeepCity_SpaceCenter_1F_Text_MagmaIntentToStealNotice: .string "This is…\n" .string "An intent-to-steal notice?\p" .string "“To the staff of the SPACE CENTER:\n" diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc index 62550d7c631a..839ab8f24812 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc @@ -9,19 +9,19 @@ .set LOCALID_TABITHA, 8 .set LOCALID_MAXIE, 9 -MossdeepCity_SpaceCenter_2F_MapScripts:: @ 8223D58 +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 .byte 0 -MossdeepCity_SpaceCenter_2F_OnTransition: @ 8223D63 +MossdeepCity_SpaceCenter_2F_OnTransition: compare VAR_MOSSDEEP_CITY_STATE, 2 call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians compare VAR_MOSSDEEP_SPACE_CENTER_STATE, 2 call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts end -MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians:: @ 8223D7A +MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians:: clearflag FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER setobjectxyperm LOCALID_SCIENTIST, 5, 3 setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT @@ -31,17 +31,17 @@ MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians:: @ 8223D7A setobjectmovementtype LOCALID_GENTLEMAN, MOVEMENT_TYPE_FACE_RIGHT return -MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts:: @ 8223D9F +MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts:: setobjectxyperm LOCALID_GRUNT_6, 11, 2 setobjectxyperm LOCALID_GRUNT_7, 15, 2 setobjectxyperm LOCALID_GRUNT_5, 13, 4 return -MossdeepCity_SpaceCenter_2F_OnFrame: @ 8223DB5 +MossdeepCity_SpaceCenter_2F_OnFrame: map_script_2 VAR_MOSSDEEP_SPACE_CENTER_STATE, 1, MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts .2byte 0 -MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts:: @ 8223DBF +MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts:: playse SE_PIN applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_ExclamationMark waitmovement 0 @@ -59,11 +59,11 @@ MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts:: @ 8223DBF releaseall end -MossdeepCity_SpaceCenter_2F_Movement_PlayerExit: @ 8223E07 +MossdeepCity_SpaceCenter_2F_Movement_PlayerExit: walk_up step_end -MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts:: @ 8223E09 +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 @@ -87,25 +87,25 @@ MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts:: @ 8223E09 releaseall end -MossdeepCity_SpaceCenter_2F_Movement_Grunt6Defeated: @ 8223E81 +MossdeepCity_SpaceCenter_2F_Movement_Grunt6Defeated: lock_facing_direction walk_left unlock_facing_direction step_end -MossdeepCity_SpaceCenter_2F_Movement_Grunt5Defeated: @ 8223E85 +MossdeepCity_SpaceCenter_2F_Movement_Grunt5Defeated: lock_facing_direction walk_down unlock_facing_direction step_end -MossdeepCity_SpaceCenter_2F_Movement_Grunt7Defeated: @ 8223E89 +MossdeepCity_SpaceCenter_2F_Movement_Grunt7Defeated: lock_facing_direction walk_right unlock_facing_direction step_end -MossdeepCity_SpaceCenter_2F_EventScript_Scientist:: @ 8223E8D +MossdeepCity_SpaceCenter_2F_EventScript_Scientist:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal @@ -116,17 +116,17 @@ MossdeepCity_SpaceCenter_2F_EventScript_Scientist:: @ 8223E8D goto MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma end -MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal:: @ 8223EB4 +MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal:: msgbox MossdeepCity_SpaceCenter_2F_Text_MossdeepIdealForRockets, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma:: @ 8223EBE +MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma:: msgbox MossdeepCity_SpaceCenter_2F_Text_WhyWouldMagmaStealRocketFuel, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_2F_EventScript_Gentleman:: @ 8223EC8 +MossdeepCity_SpaceCenter_2F_EventScript_Gentleman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal @@ -137,17 +137,17 @@ MossdeepCity_SpaceCenter_2F_EventScript_Gentleman:: @ 8223EC8 goto MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma end -MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal:: @ 8223EEF +MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal:: msgbox MossdeepCity_SpaceCenter_2F_Text_WouldveLikedToBeAstronaut, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma:: @ 8223EF9 +MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma:: msgbox MossdeepCity_SpaceCenter_2F_Text_MagmaCantGetAwayWithThis, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_2F_EventScript_RichBoy:: @ 8223F03 +MossdeepCity_SpaceCenter_2F_EventScript_RichBoy:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal @@ -158,30 +158,30 @@ MossdeepCity_SpaceCenter_2F_EventScript_RichBoy:: @ 8223F03 goto MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma end -MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal:: @ 8223F2A +MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal:: msgbox MossdeepCity_SpaceCenter_2F_Text_WishOrdinaryPeopleCouldGoIntoSpace, MSGBOX_DEFAULT release end -MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma:: @ 8223F34 +MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma:: msgbox MossdeepCity_SpaceCenter_2F_Text_DoesMagmaWantToGoToSpace, MSGBOX_DEFAULT release end @ Battle for the below 3 grunts is handled in MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts -MossdeepCity_SpaceCenter_2F_EventScript_Grunt6:: @ 8223F3E +MossdeepCity_SpaceCenter_2F_EventScript_Grunt6:: msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt6PostBattle, MSGBOX_NPC end -MossdeepCity_SpaceCenter_2F_EventScript_Grunt7:: @ 8223F47 +MossdeepCity_SpaceCenter_2F_EventScript_Grunt7:: msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt7PostBattle, MSGBOX_NPC end -MossdeepCity_SpaceCenter_2F_EventScript_Grunt5:: @ 8223F50 +MossdeepCity_SpaceCenter_2F_EventScript_Grunt5:: msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt5PostBattle, MSGBOX_NPC end -MossdeepCity_SpaceCenter_2F_EventScript_Tabitha:: @ 8223F59 +MossdeepCity_SpaceCenter_2F_EventScript_Tabitha:: lock faceplayer msgbox MossdeepCity_SpaceCenter_2F_Text_WellTakeCareOfYou, MSGBOX_DEFAULT @@ -190,13 +190,13 @@ MossdeepCity_SpaceCenter_2F_EventScript_Tabitha:: @ 8223F59 release end -MossdeepCity_SpaceCenter_2F_EventScript_Maxie:: @ 8223F6F +MossdeepCity_SpaceCenter_2F_EventScript_Maxie:: lockall msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieDontInterfere, MSGBOX_DEFAULT releaseall end -MossdeepCity_SpaceCenter_2F_EventScript_Steven:: @ 8223F7A +MossdeepCity_SpaceCenter_2F_EventScript_Steven:: lockall goto_if_set FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER, MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt setflag FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER @@ -212,13 +212,13 @@ MossdeepCity_SpaceCenter_2F_EventScript_Steven:: @ 8223F7A releaseall end -MossdeepCity_SpaceCenter_2F_EventScript_StevenFightMovementSouth:: @ 8223FBA +MossdeepCity_SpaceCenter_2F_EventScript_StevenFightMovementSouth:: applymovement LOCALID_STEVEN, MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth waitmovement 0 releaseall end -MossdeepCity_SpaceCenter_2F_Movement_StevenFight: @ 8223FC6 +MossdeepCity_SpaceCenter_2F_Movement_StevenFight: lock_facing_direction walk_fast_up walk_fast_up @@ -229,7 +229,7 @@ MossdeepCity_SpaceCenter_2F_Movement_StevenFight: @ 8223FC6 walk_slow_down step_end -MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth: @ 8223FCF +MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth: face_left lock_facing_direction walk_fast_right @@ -242,7 +242,7 @@ MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth: @ 8223FCF face_down step_end -MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt:: @ 8223FDA +MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox MossdeepCity_SpaceCenter_2F_Text_StevenAreYouReadyToBattle, MSGBOX_YESNO @@ -255,7 +255,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt:: @ 8223FDA releaseall end -MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: @ 822400C +MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown waitmovement 0 special SavePlayerParty @@ -267,7 +267,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: @ 822400C special LoadPlayerParty goto MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt -MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle:: @ 8224032 +MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle:: special ReducePlayerPartyToSelectedMons frontier_set FRONTIER_DATA_SELECTED_MON_ORDER setvar VAR_0x8004, SPECIAL_BATTLE_STEVEN @@ -282,7 +282,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle:: @ 8224032 special SetCB2WhiteOut waitstate -MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071 +MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided, MSGBOX_DEFAULT closemessage delay 20 @@ -333,29 +333,29 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071 fadescreen FADE_FROM_BLACK end -MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer:: @ 8224131 +MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer:: switch VAR_FACING case DIR_SOUTH, MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerSouth case DIR_WEST, MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest return -MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerSouth:: @ 822414D +MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerSouth:: turnobject LOCALID_STEVEN, DIR_NORTH return -MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest:: @ 8224152 +MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest:: turnobject LOCALID_STEVEN, DIR_EAST return -MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer:: @ 8224157 +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 end -MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer:: @ 8224166 +MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer:: trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_MOSSDEEP, 0, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat end -MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall:: @ 8224175 +MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall:: lockall checkplayergender compare VAR_RESULT, MALE @@ -367,108 +367,108 @@ MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall:: @ 8224175 releaseall end -MossdeepCity_SpaceCenter_2F_EventScript_MayRayquazaCall:: @ 8224193 +MossdeepCity_SpaceCenter_2F_EventScript_MayRayquazaCall:: pokenavcall MatchCall_Text_MayRayquazaCall waitmessage return -MossdeepCity_SpaceCenter_2F_EventScript_BrendanRayquazaCall:: @ 822419A +MossdeepCity_SpaceCenter_2F_EventScript_BrendanRayquazaCall:: pokenavcall MatchCall_Text_BrendanRayquazaCall waitmessage return -MossdeepCity_SpaceCenter_2F_Text_MossdeepIdealForRockets: @ 82241A1 +MossdeepCity_SpaceCenter_2F_Text_MossdeepIdealForRockets: .string "MOSSDEEP has mainly sunny weather,\n" .string "and its winds are stable.\p" .string "It's an ideal location for launching\n" .string "rockets.$" -MossdeepCity_SpaceCenter_2F_Text_WhyWouldMagmaStealRocketFuel: @ 822420C +MossdeepCity_SpaceCenter_2F_Text_WhyWouldMagmaStealRocketFuel: .string "Why would TEAM MAGMA want to steal\n" .string "our rocket fuel in the first place?$" -MossdeepCity_SpaceCenter_2F_Text_WouldveLikedToBeAstronaut: @ 8224253 +MossdeepCity_SpaceCenter_2F_Text_WouldveLikedToBeAstronaut: .string "If only I was a little younger, I would\n" .string "have liked being an astronaut…\p" .string "No… It's not too late!\n" .string "I can and will try!$" -MossdeepCity_SpaceCenter_2F_Text_MagmaCantGetAwayWithThis: @ 82242C5 +MossdeepCity_SpaceCenter_2F_Text_MagmaCantGetAwayWithThis: .string "If TEAM MAGMA takes the rocket fuel,\n" .string "I won't be able to go to space!\p" .string "They can't be allowed to get away\n" .string "with such an outrage!$" -MossdeepCity_SpaceCenter_2F_Text_WishOrdinaryPeopleCouldGoIntoSpace: @ 8224342 +MossdeepCity_SpaceCenter_2F_Text_WishOrdinaryPeopleCouldGoIntoSpace: .string "I wish ordinary people could go into\n" .string "space one day…$" -MossdeepCity_SpaceCenter_2F_Text_DoesMagmaWantToGoToSpace: @ 8224376 +MossdeepCity_SpaceCenter_2F_Text_DoesMagmaWantToGoToSpace: .string "TEAM MAGMA…\n" .string "Do they want to go to space, too?$" -MossdeepCity_SpaceCenter_2F_Text_YoureOutnumberedTakeUsOn: @ 82243A4 +MossdeepCity_SpaceCenter_2F_Text_YoureOutnumberedTakeUsOn: .string "What's wrong with you?\p" .string "You're outnumbered three to one,\n" .string "but you still want to take us on?$" -MossdeepCity_SpaceCenter_2F_Text_GoodAnswer: @ 82243FE +MossdeepCity_SpaceCenter_2F_Text_GoodAnswer: .string "Good answer!\n" .string "That's what a smart person'll do!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt5Intro: @ 822442D +MossdeepCity_SpaceCenter_2F_Text_Grunt5Intro: .string "A reckless go-getter, are you?\n" .string "Okay, I'll go first!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt5Defeat: @ 8224461 +MossdeepCity_SpaceCenter_2F_Text_Grunt5Defeat: .string "I lost!\n" .string "But!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt6Intro: @ 822446E +MossdeepCity_SpaceCenter_2F_Text_Grunt6Intro: .string "It's too soon to be relieved!\n" .string "I'm up next!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt6Defeat: @ 8224499 +MossdeepCity_SpaceCenter_2F_Text_Grunt6Defeat: .string "I lost, too!\n" .string "But!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt7Intro: @ 82244AB +MossdeepCity_SpaceCenter_2F_Text_Grunt7Intro: .string "I bet you want to take a break.\n" .string "But I'm not about to let you do that!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt7Defeat: @ 82244F1 +MossdeepCity_SpaceCenter_2F_Text_Grunt7Defeat: .string "We should've taken a break…\n" .string "That's what we should've done…$" -MossdeepCity_SpaceCenter_2F_Text_Grunt6PostBattle: @ 822452C +MossdeepCity_SpaceCenter_2F_Text_Grunt6PostBattle: .string "Three of us here, and look at the sorry\n" .string "mess we got ourselves into.$" -MossdeepCity_SpaceCenter_2F_Text_Grunt7PostBattle: @ 8224570 +MossdeepCity_SpaceCenter_2F_Text_Grunt7PostBattle: .string "We three losing like this…\n" .string "We look worse than usual by triple!$" -MossdeepCity_SpaceCenter_2F_Text_Grunt5PostBattle: @ 82245AF +MossdeepCity_SpaceCenter_2F_Text_Grunt5PostBattle: .string "Are we being useful to our leader\n" .string "at all?$" -MossdeepCity_SpaceCenter_2F_Text_WellTakeCareOfYou: @ 82245D9 +MossdeepCity_SpaceCenter_2F_Text_WellTakeCareOfYou: .string "Hehehe!\p" .string "We come all the way here to get some\n" .string "fuel, and we're interfered with again!\p" .string "If you're going to mess with us too,\n" .string "we'll take care of you at the same time!$" -MossdeepCity_SpaceCenter_2F_Text_MaxieDontInterfere: @ 822467B +MossdeepCity_SpaceCenter_2F_Text_MaxieDontInterfere: .string "MAXIE: Clear out of the way!\n" .string "Don't you dare interfere!$" -MossdeepCity_SpaceCenter_2F_Text_StevenWhyStealRocketFuel: @ 82246B2 +MossdeepCity_SpaceCenter_2F_Text_StevenWhyStealRocketFuel: .string "STEVEN: TEAM MAGMA…\p" .string "What's the point of stealing rocket\n" .string "fuel?$" -MossdeepCity_SpaceCenter_2F_Text_MaxieUseFuelToEruptVolcano: @ 82246F0 +MossdeepCity_SpaceCenter_2F_Text_MaxieUseFuelToEruptVolcano: .string "MAXIE: Fufufu… Since you're so\n" .string "curious, you deserve an explanation.\p" .string "We're going to jettison the entire\n" @@ -479,24 +479,24 @@ MossdeepCity_SpaceCenter_2F_Text_MaxieUseFuelToEruptVolcano: @ 82246F0 .string "the volcano erupt!\p" .string "It will be savage!$" -MossdeepCity_SpaceCenter_2F_Text_StevenAreYouReadyToBattle: @ 82247FF +MossdeepCity_SpaceCenter_2F_Text_StevenAreYouReadyToBattle: .string "STEVEN: {PLAYER}{KUN}!\n" .string "You're going to help me?\p" .string "Let's go into battle together!\n" .string "Are you ready?$" -MossdeepCity_SpaceCenter_2F_Text_StevenHurryGetReadyQuickly: @ 8224854 +MossdeepCity_SpaceCenter_2F_Text_StevenHurryGetReadyQuickly: .string "STEVEN: Then, hurry!\n" .string "Get ready quickly!$" -MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand: @ 822487C +MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand: .string "All I want…\n" .string "I just want to expand the land mass…$" -MossdeepCity_SpaceCenter_Text_TabithaDefeat: @ 82248AD +MossdeepCity_SpaceCenter_Text_TabithaDefeat: .string "I'm with our leader…$" -MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided: @ 82248C2 +MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided: .string "MAXIE: We failed to make the volcano\n" .string "erupt…\p" .string "We failed to control GROUDON after\n" @@ -511,13 +511,13 @@ MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided: @ 82248C2 .string "Then might TEAM AQUA's goal to expand\n" .string "the sea also be equally misguided?$" -MossdeepCity_SpaceCenter_2F_Text_MaxieWeWillGiveUp: @ 82249DC +MossdeepCity_SpaceCenter_2F_Text_MaxieWeWillGiveUp: .string "MAXIE: All right…\n" .string "We will give up on the fuel…\p" .string "There appear to be more important\n" .string "matters that I must examine…$" -MossdeepCity_SpaceCenter_2F_Text_StevenThankYouComeSeeMeAtHome: @ 8224A4A +MossdeepCity_SpaceCenter_2F_Text_StevenThankYouComeSeeMeAtHome: .string "STEVEN: Whew, that was too tense.\n" .string "{PLAYER}{KUN}, thank you.\p" .string "I have something to give you as\n" diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index 1d384efe1f99..1f5a9e09a9f0 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -1,35 +1,35 @@ .set LOCALID_STEVEN, 1 .set LOCALID_BELDUM_BALL, 2 -MossdeepCity_StevensHouse_MapScripts:: @ 8222784 +MossdeepCity_StevensHouse_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_StevensHouse_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_StevensHouse_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, MossdeepCity_StevensHouse_OnFrame .byte 0 -MossdeepCity_StevensHouse_OnLoad: @ 8222794 +MossdeepCity_StevensHouse_OnLoad: call_if_unset FLAG_SYS_GAME_CLEAR, MossdeepCity_StevensHouse_EventScript_HideStevensNote end -MossdeepCity_StevensHouse_EventScript_HideStevensNote:: @ 822279E +MossdeepCity_StevensHouse_EventScript_HideStevensNote:: setmetatile 6, 4, METATILE_GenericBuilding_TableEdge, 1 return -MossdeepCity_StevensHouse_OnTransition: @ 82227A8 +MossdeepCity_StevensHouse_OnTransition: compare VAR_STEVENS_HOUSE_STATE, 2 call_if_eq MossdeepCity_StevensHouse_EventScript_SetStevenPos end -MossdeepCity_StevensHouse_EventScript_SetStevenPos:: @ 82227B4 +MossdeepCity_StevensHouse_EventScript_SetStevenPos:: setobjectxyperm LOCALID_STEVEN, 6, 5 setobjectmovementtype LOCALID_STEVEN, MOVEMENT_TYPE_FACE_UP return -MossdeepCity_StevensHouse_OnFrame: @ 82227C0 +MossdeepCity_StevensHouse_OnFrame: map_script_2 VAR_STEVENS_HOUSE_STATE, 1, MossdeepCity_StevensHouse_EventScript_StevenGivesDive .2byte 0 -MossdeepCity_StevensHouse_EventScript_StevenGivesDive:: @ 82227CA +MossdeepCity_StevensHouse_EventScript_StevenGivesDive:: lockall applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 @@ -55,7 +55,7 @@ MossdeepCity_StevensHouse_EventScript_StevenGivesDive:: @ 82227CA releaseall end -MossdeepCity_StevensHouse_Movement_StevenApproachPlayer: @ 8222833 +MossdeepCity_StevensHouse_Movement_StevenApproachPlayer: walk_left walk_left walk_left @@ -65,7 +65,7 @@ MossdeepCity_StevensHouse_Movement_StevenApproachPlayer: @ 8222833 walk_in_place_fastest_down step_end -MossdeepCity_StevensHouse_Movement_StevenReturn: @ 822283B +MossdeepCity_StevensHouse_Movement_StevenReturn: walk_up walk_right walk_right @@ -73,7 +73,7 @@ MossdeepCity_StevensHouse_Movement_StevenReturn: @ 822283B walk_in_place_fastest_up step_end -MossdeepCity_StevensHouse_EventScript_BeldumPokeball:: @ 8222841 +MossdeepCity_StevensHouse_EventScript_BeldumPokeball:: lockall msgbox MossdeepCity_StevensHouse_Text_TakeBallContainingBeldum, MSGBOX_YESNO compare VAR_RESULT, NO @@ -81,12 +81,12 @@ MossdeepCity_StevensHouse_EventScript_BeldumPokeball:: @ 8222841 goto MossdeepCity_StevensHouse_EventScript_GiveBeldum end -MossdeepCity_StevensHouse_EventScript_LeaveBeldum:: @ 822285B +MossdeepCity_StevensHouse_EventScript_LeaveBeldum:: msgbox MossdeepCity_StevensHouse_Text_LeftPokeBallWhereItWas, MSGBOX_DEFAULT releaseall end -MossdeepCity_StevensHouse_EventScript_GiveBeldum:: @ 8222865 +MossdeepCity_StevensHouse_EventScript_GiveBeldum:: setvar VAR_TEMP_1, SPECIES_BELDUM givemon SPECIES_BELDUM, 5, ITEM_NONE compare VAR_RESULT, 0 @@ -96,7 +96,7 @@ MossdeepCity_StevensHouse_EventScript_GiveBeldum:: @ 8222865 goto Common_EventScript_NoMoreRoomForPokemon end -MossdeepCity_StevensHouse_EventScript_SendBeldumParty:: @ 8222895 +MossdeepCity_StevensHouse_EventScript_SendBeldumParty:: call MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -106,7 +106,7 @@ MossdeepCity_StevensHouse_EventScript_SendBeldumParty:: @ 8222895 goto MossdeepCity_StevensHouse_EventScript_ReceivedBeldum end -MossdeepCity_StevensHouse_EventScript_SendBeldumPC:: @ 82228BD +MossdeepCity_StevensHouse_EventScript_SendBeldumPC:: call MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -115,12 +115,12 @@ MossdeepCity_StevensHouse_EventScript_SendBeldumPC:: @ 82228BD goto MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC end -MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC:: @ 82228E0 +MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC:: call Common_EventScript_TransferredToPC goto MossdeepCity_StevensHouse_EventScript_ReceivedBeldum end -MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare:: @ 82228EB +MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare:: bufferspeciesname 1, SPECIES_BELDUM removeobject LOCALID_BELDUM_BALL playfanfare MUS_OBTAIN_ITEM @@ -130,33 +130,33 @@ MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare:: @ 82228EB bufferspeciesname 0, SPECIES_BELDUM return -MossdeepCity_StevensHouse_EventScript_ReceivedBeldum:: @ 8222901 +MossdeepCity_StevensHouse_EventScript_ReceivedBeldum:: setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL setflag FLAG_RECEIVED_BELDUM releaseall end -MossdeepCity_StevensHouse_EventScript_RockDisplay:: @ 8222909 +MossdeepCity_StevensHouse_EventScript_RockDisplay:: msgbox MossdeepCity_StevensHouse_Text_CollectionOfRareRocks, MSGBOX_SIGN end -MossdeepCity_StevensHouse_EventScript_Steven:: @ 8222912 +MossdeepCity_StevensHouse_EventScript_Steven:: msgbox MossdeepCity_StevensHouse_Text_UnderwateCavernBetweenMossdeepSootopolis, MSGBOX_NPC end -MossdeepCity_StevensHouse_EventScript_Letter:: @ 822291B +MossdeepCity_StevensHouse_EventScript_Letter:: lockall msgbox MossdeepCity_StevensHouse_Text_LetterFromSteven, MSGBOX_DEFAULT releaseall end @ Unused, leftover from RS -MossdeepCity_StevensHouse_EventScript_DiveItemBall:: @ 8222926 +MossdeepCity_StevensHouse_EventScript_DiveItemBall:: finditem ITEM_HM08 setflag FLAG_RECEIVED_HM08 end -MossdeepCity_StevensHouse_Text_YouveEarnedHMDive: @ 8222936 +MossdeepCity_StevensHouse_Text_YouveEarnedHMDive: .string "STEVEN: {PLAYER}{KUN}…\p" .string "As you can see, there's not much here,\n" .string "but this is my home.\p" @@ -166,7 +166,7 @@ MossdeepCity_StevensHouse_Text_YouveEarnedHMDive: @ 8222936 .string "No need to be shy--you've earned\n" .string "this HM.$" -MossdeepCity_StevensHouse_Text_ExplainDive: @ 8222A0E +MossdeepCity_StevensHouse_Text_ExplainDive: .string "STEVEN: While you're using SURF, you\n" .string "should notice dark patches of water.\p" .string "Use DIVE if you come to deep water\n" @@ -176,31 +176,31 @@ MossdeepCity_StevensHouse_Text_ExplainDive: @ 8222A0E .string "In some places, it won't be possible\n" .string "for you to surface, though.$" -MossdeepCity_StevensHouse_Text_UnderwateCavernBetweenMossdeepSootopolis: @ 8222B11 +MossdeepCity_StevensHouse_Text_UnderwateCavernBetweenMossdeepSootopolis: .string "STEVEN: Apparently, there's an\n" .string "underwater cavern between\l" .string "MOSSDEEP and SOOTOPOLIS.\p" .string "You know, the one that CAPT. STERN\n" .string "found in his submarine.$" -MossdeepCity_StevensHouse_Text_TakeBallContainingBeldum: @ 8222B9E +MossdeepCity_StevensHouse_Text_TakeBallContainingBeldum: .string "{PLAYER} checked the POKé BALL.\p" .string "It contained the POKéMON\n" .string "BELDUM.\p" .string "Take the POKé BALL?$" -MossdeepCity_StevensHouse_Text_ObtainedBeldum: @ 8222BED +MossdeepCity_StevensHouse_Text_ObtainedBeldum: .string "{PLAYER} obtained a BELDUM.$" @ Unused -MossdeepCity_StevensHouse_Text_NoSpaceForAnotherMon: @ 8222C03 +MossdeepCity_StevensHouse_Text_NoSpaceForAnotherMon: .string "There is no space for another POKéMON.$" -MossdeepCity_StevensHouse_Text_LeftPokeBallWhereItWas: @ 8222C2A +MossdeepCity_StevensHouse_Text_LeftPokeBallWhereItWas: .string "{PLAYER} left the POKé BALL where\n" .string "it was.$" -MossdeepCity_StevensHouse_Text_LetterFromSteven: @ 8222C4E +MossdeepCity_StevensHouse_Text_LetterFromSteven: .string "It's a letter.\p" .string "… … … … … …\p" .string "To {PLAYER}{KUN}…\p" @@ -217,7 +217,7 @@ MossdeepCity_StevensHouse_Text_LetterFromSteven: @ 8222C4E .string "May our paths cross someday.\p" .string "STEVEN STONE$" -MossdeepCity_StevensHouse_Text_CollectionOfRareRocks: @ 8222D97 +MossdeepCity_StevensHouse_Text_CollectionOfRareRocks: .string "It's a collection of rare rocks and\n" .string "stones assembled by STEVEN.$" diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index 061590e1ae1c..cd07667b5b88 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -5,20 +5,20 @@ .set LOCALID_MAGMA_GRUNT_1, 29 -MtChimney_MapScripts:: @ 822EDC1 +MtChimney_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, MtChimney_OnResume map_script MAP_SCRIPT_ON_TRANSITION, MtChimney_OnTransition .byte 0 -MtChimney_OnTransition: @ 822EDCC +MtChimney_OnTransition: setvar VAR_JAGGED_PASS_ASH_WEATHER, 1 end -MtChimney_OnResume: @ 822EDD2 +MtChimney_OnResume: setstepcallback STEP_CB_ASH end -MtChimney_EventScript_Archie:: @ 822EDD5 +MtChimney_EventScript_Archie:: lock faceplayer call_if_unset FLAG_EVIL_LEADER_PLEASE_STOP, MtChimney_EventScript_ArchieGoStopTeamMagma @@ -30,15 +30,15 @@ MtChimney_EventScript_Archie:: @ 822EDD5 release end -MtChimney_EventScript_ArchieGoStopTeamMagma:: @ 822EDF9 +MtChimney_EventScript_ArchieGoStopTeamMagma:: msgbox MtChimney_Text_ArchieGoStopTeamMagma, MSGBOX_DEFAULT return -MtChimney_EventScript_ArchieBusyFighting:: @ 822EE02 +MtChimney_EventScript_ArchieBusyFighting:: msgbox MtChimney_Text_ArchieIHaveMyHandsFull, MSGBOX_DEFAULT return -MtChimney_EventScript_Maxie:: @ 822EE0B +MtChimney_EventScript_Maxie:: lockall playbgm MUS_ENCOUNTER_MAGMA, FALSE msgbox MtChimney_Text_MeteoriteWillActivateVolcano, MSGBOX_DEFAULT @@ -84,27 +84,27 @@ MtChimney_EventScript_Maxie:: @ 822EE0B releaseall end -MtChimney_EventScript_ArchieApproachPlayerEast:: @ 822EEC7 +MtChimney_EventScript_ArchieApproachPlayerEast:: applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieApproachPlayerEast waitmovement 0 return -MtChimney_EventScript_ArchieApproachPlayerNorth:: @ 822EED2 +MtChimney_EventScript_ArchieApproachPlayerNorth:: applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieApproachPlayerNorth waitmovement 0 return -MtChimney_EventScript_ArchieExitEast:: @ 822EEDD +MtChimney_EventScript_ArchieExitEast:: applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieExitEast waitmovement 0 return -MtChimney_EventScript_ArchieExitNorth:: @ 822EEE8 +MtChimney_EventScript_ArchieExitNorth:: applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieExitNorth waitmovement 0 return -MtChimney_EventScript_LavaCookieLady:: @ 822EEF3 +MtChimney_EventScript_LavaCookieLady:: lock faceplayer showmoneybox 0, 0, 0 @@ -125,30 +125,30 @@ MtChimney_EventScript_LavaCookieLady:: @ 822EEF3 release end -MtChimney_EventScript_BagIsFull:: @ 822EF51 +MtChimney_EventScript_BagIsFull:: msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT hidemoneybox release end -MtChimney_EventScript_RemoveMoney:: @ 822EF5E +MtChimney_EventScript_RemoveMoney:: removemoney 200, 0 updatemoneybox 0, 0 return -MtChimney_EventScript_DeclineLavaCookie:: @ 822EF69 +MtChimney_EventScript_DeclineLavaCookie:: msgbox MtChimney_Text_OhFineThen, MSGBOX_DEFAULT hidemoneybox release end -MtChimney_EventScript_NotEnoughMoney:: @ 822EF76 +MtChimney_EventScript_NotEnoughMoney:: msgbox MtChimney_Text_YouveNotGotTheMoney, MSGBOX_DEFAULT hidemoneybox release end -MtChimney_Movement_ArchieApproachPlayerEast: @ 822EF83 +MtChimney_Movement_ArchieApproachPlayerEast: walk_up walk_up walk_up @@ -158,7 +158,7 @@ MtChimney_Movement_ArchieApproachPlayerEast: @ 822EF83 walk_right step_end -MtChimney_Movement_ArchieExitEast: @ 822EF8B +MtChimney_Movement_ArchieExitEast: walk_left walk_down walk_down @@ -169,7 +169,7 @@ MtChimney_Movement_ArchieExitEast: @ 822EF8B walk_down step_end -MtChimney_Movement_ArchieApproachPlayerNorth: @ 822EF94 +MtChimney_Movement_ArchieApproachPlayerNorth: walk_up walk_up walk_up @@ -179,7 +179,7 @@ MtChimney_Movement_ArchieApproachPlayerNorth: @ 822EF94 walk_right step_end -MtChimney_Movement_ArchieExitNorth: @ 822EF9C +MtChimney_Movement_ArchieExitNorth: walk_left walk_left walk_down @@ -191,7 +191,7 @@ MtChimney_Movement_ArchieExitNorth: @ 822EF9C walk_down step_end -MtChimney_Movement_Unused1: @ 822EFA6 +MtChimney_Movement_Unused1: walk_down walk_down walk_down @@ -211,7 +211,7 @@ MtChimney_Movement_Unused1: @ 822EFA6 walk_down step_end -MtChimney_Movement_Unused2: @ 822EFB8 +MtChimney_Movement_Unused2: walk_down walk_down walk_down @@ -222,7 +222,7 @@ MtChimney_Movement_Unused2: @ 822EFB8 walk_down step_end -MtChimney_Movement_Unused3: @ 822EFC1 +MtChimney_Movement_Unused3: walk_right walk_down walk_down @@ -239,7 +239,7 @@ MtChimney_Movement_Unused3: @ 822EFC1 walk_down step_end -MtChimney_Movement_Unused4: @ 822EFD0 +MtChimney_Movement_Unused4: walk_fast_down walk_fast_down walk_fast_down @@ -266,7 +266,7 @@ MtChimney_Movement_Unused4: @ 822EFD0 walk_down step_end -MtChimney_Movement_Unused5: @ 822EFE9 +MtChimney_Movement_Unused5: delay_16 delay_16 delay_16 @@ -279,7 +279,7 @@ MtChimney_Movement_Unused5: @ 822EFE9 walk_down step_end -MtChimney_Movement_Unused6: @ 822EFF4 +MtChimney_Movement_Unused6: delay_16 walk_left walk_down @@ -297,7 +297,7 @@ MtChimney_Movement_Unused6: @ 822EFF4 walk_down step_end -MtChimney_Movement_Unused7: @ 822F004 +MtChimney_Movement_Unused7: delay_16 walk_left walk_left @@ -316,7 +316,7 @@ MtChimney_Movement_Unused7: @ 822F004 walk_down step_end -MtChimney_Movement_Unused8: @ 822F015 +MtChimney_Movement_Unused8: delay_16 walk_down walk_left @@ -326,7 +326,7 @@ MtChimney_Movement_Unused8: @ 822F015 walk_in_place_fastest_down step_end -MtChimney_Movement_Unused9: @ 822F01D +MtChimney_Movement_Unused9: walk_down walk_down walk_down @@ -342,11 +342,11 @@ MtChimney_Movement_Unused9: @ 822F01D walk_down step_end -MtChimney_Movement_Unused10: @ 822F02B +MtChimney_Movement_Unused10: walk_down step_end -MtChimney_Movement_Unused11: @ 822F02D +MtChimney_Movement_Unused11: walk_down walk_down walk_down @@ -356,7 +356,7 @@ MtChimney_Movement_Unused11: @ 822F02D walk_down step_end -MtChimney_Movement_Unused12: @ 822F035 +MtChimney_Movement_Unused12: delay_16 delay_16 walk_in_place_fastest_left @@ -368,7 +368,7 @@ MtChimney_Movement_Unused12: @ 822F035 walk_down step_end -MtChimney_Movement_Unused13: @ 822F03F +MtChimney_Movement_Unused13: delay_16 delay_16 delay_16 @@ -381,74 +381,74 @@ MtChimney_Movement_Unused13: @ 822F03F walk_down step_end -MtChimney_Movement_Unused14: @ 822F04A +MtChimney_Movement_Unused14: lock_facing_direction walk_fast_left unlock_facing_direction face_right step_end -MtChimney_Movement_Unused15: @ 822F04F +MtChimney_Movement_Unused15: walk_left walk_in_place_fastest_right delay_16 step_end -MtChimney_EventScript_BusyAquaGrunt1:: @ 822F053 +MtChimney_EventScript_BusyAquaGrunt1:: msgbox MtChimney_Text_MagmaOutnumbersUs, MSGBOX_SIGN end -MtChimney_EventScript_BusyAquaGrunt2:: @ 822F05C +MtChimney_EventScript_BusyAquaGrunt2:: msgbox MtChimney_Text_LessHabitatForWaterPokemon, MSGBOX_SIGN end -MtChimney_EventScript_BusyAquaGrunt3:: @ 822F065 +MtChimney_EventScript_BusyAquaGrunt3:: msgbox MtChimney_Text_MagmasNameSimilar, MSGBOX_SIGN end -MtChimney_EventScript_Tabitha:: @ 822F06E +MtChimney_EventScript_Tabitha:: trainerbattle_single TRAINER_TABITHA_MT_CHIMNEY, MtChimney_Text_TabithaIntro, MtChimney_Text_TabithaDefeat msgbox MtChimney_Text_TabithaPostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Grunt2:: @ 822F085 +MtChimney_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_MT_CHIMNEY_2, MtChimney_Text_Grunt2Intro, MtChimney_Text_Grunt2Defeat msgbox MtChimney_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_BusyMagmaGrunt1:: @ 822F09C +MtChimney_EventScript_BusyMagmaGrunt1:: msgbox MtChimney_Text_TeamAquaAlwaysMessingWithPlans, MSGBOX_SIGN end -MtChimney_EventScript_BusyMagmaGrunt2:: @ 822F0A5 +MtChimney_EventScript_BusyMagmaGrunt2:: msgbox MtChimney_Text_MeteoritesPackAmazingPower, MSGBOX_SIGN end -MtChimney_EventScript_BusyMagmaGrunt3:: @ 822F0AE +MtChimney_EventScript_BusyMagmaGrunt3:: msgbox MtChimney_Text_YouBetterNotMessWithUs, MSGBOX_SIGN end -MtChimney_EventScript_BusyMagmaGrunt4:: @ 822F0B7 +MtChimney_EventScript_BusyMagmaGrunt4:: msgbox MtChimney_Text_AquasNameSimilar, MSGBOX_SIGN end -MtChimney_EventScript_BusyMagmaGrunt5:: @ 822F0C0 +MtChimney_EventScript_BusyMagmaGrunt5:: msgbox MtChimney_Text_DouseThemInFire, MSGBOX_SIGN end -MtChimney_EventScript_BusyMagmaGrunt6:: @ 822F0C9 +MtChimney_EventScript_BusyMagmaGrunt6:: msgbox MtChimney_Text_KeepMakingMoreLand, MSGBOX_SIGN end -MtChimney_EventScript_MagmaPoochyena:: @ 822F0D2 +MtChimney_EventScript_MagmaPoochyena:: msgbox MtChimney_Text_Bufoh, MSGBOX_SIGN end -MtChimney_EventScript_AquaPoochyena:: @ 822F0DB +MtChimney_EventScript_AquaPoochyena:: msgbox MtChimney_Text_Bushaa, MSGBOX_SIGN end -MtChimney_EventScript_MeteoriteMachine:: @ 822F0E4 +MtChimney_EventScript_MeteoriteMachine:: lockall goto_if_unset FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, MtChimney_EventScript_MachineOn goto_if_set FLAG_RECEIVED_METEORITE, MtChimney_EventScript_MachineOff @@ -461,26 +461,26 @@ MtChimney_EventScript_MeteoriteMachine:: @ 822F0E4 releaseall end -MtChimney_EventScript_LeaveMeteoriteAlone:: @ 822F123 +MtChimney_EventScript_LeaveMeteoriteAlone:: msgbox MtChimney_Text_PlayerLeftMeteorite, MSGBOX_DEFAULT releaseall end -MtChimney_EventScript_MachineOff:: @ 822F12D +MtChimney_EventScript_MachineOff:: msgbox MtChimney_Text_MachineMakesNoResponse, MSGBOX_DEFAULT releaseall end -MtChimney_EventScript_MachineOn:: @ 822F137 +MtChimney_EventScript_MachineOn:: msgbox MtChimney_Text_MetoriteFittedOnMachine, MSGBOX_DEFAULT releaseall end -MtChimney_EventScript_RouteSign:: @ 822F141 +MtChimney_EventScript_RouteSign:: msgbox MtChimney_Text_RouteSign, MSGBOX_SIGN end -MtChimney_EventScript_Shelby:: @ 822F14A +MtChimney_EventScript_Shelby:: trainerbattle_single TRAINER_SHELBY_1, MtChimney_Text_ShelbyIntro, MtChimney_Text_ShelbyDefeat, MtChimney_EventScript_DefeatedShelby specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -489,7 +489,7 @@ MtChimney_EventScript_Shelby:: @ 822F14A release end -MtChimney_EventScript_DefeatedShelby:: @ 822F176 +MtChimney_EventScript_DefeatedShelby:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox MtChimney_Text_ShelbyRegister, MSGBOX_DEFAULT @@ -497,32 +497,32 @@ MtChimney_EventScript_DefeatedShelby:: @ 822F176 release end -MtChimney_EventScript_RematchShelby:: @ 822F195 +MtChimney_EventScript_RematchShelby:: trainerbattle_rematch TRAINER_SHELBY_1, MtChimney_Text_ShelbyRematchIntro, MtChimney_Text_ShelbyRematchDefeat msgbox MtChimney_Text_ShelbyPostRematch, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Melissa:: @ 822F1AC +MtChimney_EventScript_Melissa:: trainerbattle_single TRAINER_MELISSA, MtChimney_Text_MelissaIntro, MtChimney_Text_MelissaDefeat msgbox MtChimney_Text_MelissaPostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Sheila:: @ 822F1C3 +MtChimney_EventScript_Sheila:: trainerbattle_single TRAINER_SHEILA, MtChimney_Text_SheilaIntro, MtChimney_Text_SheilaDefeat msgbox MtChimney_Text_SheilaPostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Shirley:: @ 822F1DA +MtChimney_EventScript_Shirley:: trainerbattle_single TRAINER_SHIRLEY, MtChimney_Text_ShirleyIntro, MtChimney_Text_ShirleyDefeat msgbox MtChimney_Text_ShirleyPostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Grunt1:: @ 822F1F1 +MtChimney_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_MT_CHIMNEY_1, MtChimney_Text_Grunt1Intro, MtChimney_Text_Grunt1Defeat msgbox MtChimney_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -MtChimney_EventScript_Sawyer:: @ 822F208 +MtChimney_EventScript_Sawyer:: trainerbattle_single TRAINER_SAWYER_1, MtChimney_Text_SawyerIntro, MtChimney_Text_SawyerDefeat, MtChimney_EventScript_SawyerDefeated specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -531,7 +531,7 @@ MtChimney_EventScript_Sawyer:: @ 822F208 release end -MtChimney_EventScript_SawyerDefeated:: @ 822F234 +MtChimney_EventScript_SawyerDefeated:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox MtChimney_Text_SawyerRegister, MSGBOX_DEFAULT @@ -539,12 +539,12 @@ MtChimney_EventScript_SawyerDefeated:: @ 822F234 release end -MtChimney_EventScript_SawyerRematch:: @ 822F253 +MtChimney_EventScript_SawyerRematch:: trainerbattle_rematch TRAINER_SAWYER_1, MtChimney_Text_SawyerRematchIntro, MtChimney_Text_SawyerRematchDefeat msgbox MtChimney_Text_SawyerPostRematch, MSGBOX_AUTOCLOSE end -MtChimney_Text_MeteoriteWillActivateVolcano: @ 822F26A +MtChimney_Text_MeteoriteWillActivateVolcano: .string "The power contained in the METEORITE…\p" .string "By amplifying its power with this\n" .string "machine, MT. CHIMNEY's volcanic\l" @@ -553,7 +553,7 @@ MtChimney_Text_MeteoriteWillActivateVolcano: @ 822F26A .string "the crater and…\l" .string "Fufufu…$" -MtChimney_Text_MaxieIntro: @ 822F32E +MtChimney_Text_MaxieIntro: .string "MAXIE: Hm?\n" .string "Who are you?\p" .string "… … … … … …\n" @@ -581,11 +581,11 @@ MtChimney_Text_MaxieIntro: @ 822F32E .string "I'll teach you the consequences of\l" .string "meddling in our grand design!$" -MtChimney_Text_MaxieDefeat: @ 822F5CF +MtChimney_Text_MaxieDefeat: .string "What?!\p" .string "I, MAXIE, was caught off guard?!$" -MtChimney_Text_MaxieYouHaventSeenLastOfMagma: @ 822F5F7 +MtChimney_Text_MaxieYouHaventSeenLastOfMagma: .string "MAXIE: But, enough.\n" .string "I will back off this time.\p" .string "But don't think that this is the last\n" @@ -594,81 +594,81 @@ MtChimney_Text_MaxieYouHaventSeenLastOfMagma: @ 822F5F7 .string "Even without the METEORITE, if we\n" .string "obtain that ORB… Fufufu…$" -MtChimney_Text_TabithaIntro: @ 822F6AA +MtChimney_Text_TabithaIntro: .string "Hehehe!\p" .string "So you've come all the way here!\p" .string "But you're too late!\n" .string "I've already delivered the METEORITE\l" .string "from METEOR FALLS to the BOSS!$" -MtChimney_Text_TabithaDefeat: @ 822F72C +MtChimney_Text_TabithaDefeat: .string "Hehehe…\p" .string "Even though I've lost, if our leader\n" .string "awakens that thing…$" -MtChimney_Text_TabithaPostBattle: @ 822F76D +MtChimney_Text_TabithaPostBattle: .string "BOSS, hurry!\n" .string "Give it the METEORITE's energy!\p" .string "Hehehe…$" -MtChimney_Text_Grunt2Intro: @ 822F7A2 +MtChimney_Text_Grunt2Intro: .string "We of TEAM MAGMA are working hard for\n" .string "everyone's sake.\p" .string "Like, if that thing's power made more\n" .string "land, there'd be more places to live.\p" .string "Everyone'd be happy!$" -MtChimney_Text_Grunt2Defeat: @ 822F83A +MtChimney_Text_Grunt2Defeat: .string "Hunh?\n" .string "What do you mean I lost?$" -MtChimney_Text_Grunt2PostBattle: @ 822F859 +MtChimney_Text_Grunt2PostBattle: .string "Our BOSS says, “It will make everyone\n" .string "happy.”\p" .string "But why does everyone keep getting\n" .string "in our way?$" -MtChimney_Text_Grunt1Intro: @ 822F8B6 +MtChimney_Text_Grunt1Intro: .string "If there were more land, I'd be able\n" .string "to get a big house of my own!\p" .string "I'm going to build it on hardened lava!$" -MtChimney_Text_Grunt1Defeat: @ 822F921 +MtChimney_Text_Grunt1Defeat: .string "My dream of a big house…$" -MtChimney_Text_Grunt1PostBattle: @ 822F93A +MtChimney_Text_Grunt1PostBattle: .string "A kid like you, you ought to be\n" .string "splashing about in the waves!$" -MtChimney_Text_TeamAquaAlwaysMessingWithPlans: @ 822F978 +MtChimney_Text_TeamAquaAlwaysMessingWithPlans: .string "That annoying TEAM AQUA…\n" .string "They always mess with our plans!$" -MtChimney_Text_MeteoritesPackAmazingPower: @ 822F9B2 +MtChimney_Text_MeteoritesPackAmazingPower: .string "METEORITES pack amazing power!$" -MtChimney_Text_YouBetterNotMessWithUs: @ 822F9D1 +MtChimney_Text_YouBetterNotMessWithUs: .string "You'd better not mess with us!\p" .string "We're trying to awaken that thing\n" .string "for the benefit of everyone!$" -MtChimney_Text_AquasNameSimilar: @ 822FA2F +MtChimney_Text_AquasNameSimilar: .string "We're TEAM MAGMA!\p" .string "They're TEAM AQUA!\p" .string "It totally annoys me that they'd\n" .string "use a name like ours!$" -MtChimney_Text_DouseThemInFire: @ 822FA8B +MtChimney_Text_DouseThemInFire: .string "Yeah!\n" .string "Douse them in fire!$" -MtChimney_Text_KeepMakingMoreLand: @ 822FAA5 +MtChimney_Text_KeepMakingMoreLand: .string "We're going to keep making more land!$" -MtChimney_Text_Bufoh: @ 822FACB +MtChimney_Text_Bufoh: .string "Bufoh!$" -MtChimney_Text_ArchieGoStopTeamMagma: @ 822FAD2 +MtChimney_Text_ArchieGoStopTeamMagma: .string "ARCHIE: Grr, {PLAYER}!\n" .string "I should've guessed you'd show up!\p" .string "See for yourself what the fanatics\n" @@ -678,14 +678,14 @@ MtChimney_Text_ArchieGoStopTeamMagma: @ 822FAD2 .string "Doing something like that will cause\n" .string "the volcano's eruption!$" -MtChimney_Text_ArchieIHaveMyHandsFull: @ 822FBC7 +MtChimney_Text_ArchieIHaveMyHandsFull: .string "ARCHIE: Grrr…\p" .string "I want to stop that MAXIE,\n" .string "but I can't!\p" .string "Not when I have my hands full battling\n" .string "three opponents at once!$" -MtChimney_Text_ArchieThankYou: @ 822FC3D +MtChimney_Text_ArchieThankYou: .string "ARCHIE: {PLAYER}!\n" .string "Thank you!\p" .string "With your help, we thwarted TEAM\n" @@ -697,161 +697,161 @@ MtChimney_Text_ArchieThankYou: @ 822FC3D .string "our pursuit of TEAM MAGMA.\p" .string "{PLAYER}, we shall meet again!$" -MtChimney_Text_MagmaOutnumbersUs: @ 822FD1F +MtChimney_Text_MagmaOutnumbersUs: .string "Darn… TEAM MAGMA outnumbers us!\n" .string "We can't keep up with them!$" -MtChimney_Text_LessHabitatForWaterPokemon: @ 822FD5B +MtChimney_Text_LessHabitatForWaterPokemon: .string "If they expand the land, there'll be\n" .string "less habitats for WATER POKéMON!$" -MtChimney_Text_MagmasNameSimilar: @ 822FDA1 +MtChimney_Text_MagmasNameSimilar: .string "We're TEAM AQUA!\p" .string "They're TEAM MAGMA!\p" .string "It burns me up that they'd use such\n" .string "a confusing name!$" -MtChimney_Text_Bushaa: @ 822FDFC +MtChimney_Text_Bushaa: .string "Bushaa!$" -MtChimney_Text_LavaCookiesJust200: @ 822FE04 +MtChimney_Text_LavaCookiesJust200: .string "LAVA COOKIES are MT. CHIMNEY's local\n" .string "specialty.\p" .string "Try one. It's just ¥200.$" -MtChimney_Text_ThankYouDear: @ 822FE4D +MtChimney_Text_ThankYouDear: .string "Thank you, dear!$" -MtChimney_Text_YouveNotGotTheMoney: @ 822FE5E +MtChimney_Text_YouveNotGotTheMoney: .string "Oh, dear. You can't buy a thing if\n" .string "you've not got the money.$" -MtChimney_Text_OhFineThen: @ 822FE9B +MtChimney_Text_OhFineThen: .string "Oh, fine then.$" -MtChimney_Text_MetoriteFittedOnMachine: @ 822FEAA +MtChimney_Text_MetoriteFittedOnMachine: .string "A METEORITE is fitted on a mysterious\n" .string "machine…\p" .string "The machine seems to be storing\n" .string "energy in the METEORITE.$" -MtChimney_Text_RemoveTheMeteorite: @ 822FF12 +MtChimney_Text_RemoveTheMeteorite: .string "A METEORITE is fitted on a mysterious\n" .string "machine…\p" .string "Do you want to remove the METEORITE?$" -MtChimney_Text_PlayerRemovedMeteorite: @ 822FF66 +MtChimney_Text_PlayerRemovedMeteorite: .string "{PLAYER} removed the METEORITE from\n" .string "the mysterious machine.$" -MtChimney_Text_PlayerLeftMeteorite: @ 822FF9C +MtChimney_Text_PlayerLeftMeteorite: .string "{PLAYER} left the METEORITE where\n" .string "it was.$" -MtChimney_Text_MachineMakesNoResponse: @ 822FFC0 +MtChimney_Text_MachineMakesNoResponse: .string "This mysterious machine…\n" .string "It makes no response whatsoever.$" -MtChimney_Text_RouteSign: @ 822FFFA +MtChimney_Text_RouteSign: .string "{DOWN_ARROW} JAGGED PATH\n" .string "LAVARIDGE TOWN AHEAD$" -MtChimney_Text_ShelbyIntro: @ 823001D +MtChimney_Text_ShelbyIntro: .string "I've been to the hot springs and\n" .string "refreshed my tired bones.\l" .string "Right now I'm feeling strong!$" -MtChimney_Text_ShelbyDefeat: @ 8230076 +MtChimney_Text_ShelbyDefeat: .string "Oh, my goodness.\n" .string "Now, aren't you something!$" -MtChimney_Text_ShelbyPostBattle: @ 82300A2 +MtChimney_Text_ShelbyPostBattle: .string "Well, well, I've lost. I can't call\n" .string "myself an EXPERT now, can I?$" -MtChimney_Text_ShelbyRegister: @ 82300E3 +MtChimney_Text_ShelbyRegister: .string "Thank you, child. It was fun, as if\n" .string "I were battling my own grandchild.\p" .string "Please, come see me again for\n" .string "a rematch.$" -MtChimney_Text_ShelbyRematchIntro: @ 8230153 +MtChimney_Text_ShelbyRematchIntro: .string "If you can mesh your heart with those\n" .string "of your POKéMON, why, you should be\l" .string "able to achieve great things.$" -MtChimney_Text_ShelbyRematchDefeat: @ 82301BB +MtChimney_Text_ShelbyRematchDefeat: .string "Oh, my goodness.\n" .string "Now, aren't you something!$" -MtChimney_Text_ShelbyPostRematch: @ 82301E7 +MtChimney_Text_ShelbyPostRematch: .string "Perhaps your heart has become one\n" .string "with the hearts of your POKéMON.$" -MtChimney_Text_MelissaIntro: @ 823022A +MtChimney_Text_MelissaIntro: .string "I've got the fire in me, baby.\n" .string "I can't stand it! I have to battle!$" -MtChimney_Text_MelissaDefeat: @ 823026D +MtChimney_Text_MelissaDefeat: .string "Ooh, that was a scorching-hot match!$" -MtChimney_Text_MelissaPostBattle: @ 8230292 +MtChimney_Text_MelissaPostBattle: .string "The heat of MT. CHIMNEY warms\n" .string "me up, baby!$" -MtChimney_Text_SheilaIntro: @ 82302BD +MtChimney_Text_SheilaIntro: .string "I've finally made it to MT. CHIMNEY.\n" .string "I want to make my POKéMON battle!$" -MtChimney_Text_SheilaDefeat: @ 8230304 +MtChimney_Text_SheilaDefeat: .string "The way you battle…\n" .string "It's like a MT. CHIMNEY eruption!$" -MtChimney_Text_SheilaPostBattle: @ 823033A +MtChimney_Text_SheilaPostBattle: .string "Like I said, I've finally made it to\n" .string "MT. CHIMNEY. It would be a shame if\l" .string "I only do a little sightseeing…\p" .string "I want to get in some battles and buy\n" .string "COOKIES as souvenirs.$" -MtChimney_Text_ShirleyIntro: @ 82303DF +MtChimney_Text_ShirleyIntro: .string "Since I bathed in the hot springs,\n" .string "I've been feeling great!\l" .string "I'm sure I'm going to win!$" -MtChimney_Text_ShirleyDefeat: @ 8230436 +MtChimney_Text_ShirleyDefeat: .string "Yowch!\n" .string "I'm getting a chill out of the water.$" -MtChimney_Text_ShirleyPostBattle: @ 8230463 +MtChimney_Text_ShirleyPostBattle: .string "I'll have to take another dip in the\n" .string "hot springs. Want to join me?\p" .string "Just joking!$" -MtChimney_Text_SawyerIntro: @ 82304B3 +MtChimney_Text_SawyerIntro: .string "This is one fine mountain! Plenty of\n" .string "hot people around for company!$" -MtChimney_Text_SawyerDefeat: @ 82304F7 +MtChimney_Text_SawyerDefeat: .string "Oh, you're a real firebrand, too!$" -MtChimney_Text_SawyerPostBattle: @ 8230519 +MtChimney_Text_SawyerPostBattle: .string "I think I need a dip in LAVARIDGE\n" .string "HOT SPRING with the locals!$" -MtChimney_Text_SawyerRegister: @ 8230557 +MtChimney_Text_SawyerRegister: .string "I like little fireballs like you.\n" .string "Let me register you in my POKéNAV.$" -MtChimney_Text_SawyerRematchIntro: @ 823059C +MtChimney_Text_SawyerRematchIntro: .string "I'm happily surrounded by hot people\n" .string "around these parts. I won't lose!$" -MtChimney_Text_SawyerRematchDefeat: @ 82305E3 +MtChimney_Text_SawyerRematchDefeat: .string "Gosh, you're still the same\n" .string "firebrand as before!$" -MtChimney_Text_SawyerPostRematch: @ 8230614 +MtChimney_Text_SawyerPostRematch: .string "Actually, it really is hot here.\n" .string "I'm overdressed for these parts.$" diff --git a/data/maps/MtChimney_CableCarStation/scripts.inc b/data/maps/MtChimney_CableCarStation/scripts.inc index 5eebdb7673d1..c2e8da486e6f 100644 --- a/data/maps/MtChimney_CableCarStation/scripts.inc +++ b/data/maps/MtChimney_CableCarStation/scripts.inc @@ -1,25 +1,25 @@ .set LOCALID_ATTENDANT, 1 -MtChimney_CableCarStation_MapScripts:: @ 822ABFA +MtChimney_CableCarStation_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MtChimney_CableCarStation_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, MtChimney_CableCarStation_OnFrame .byte 0 -MtChimney_CableCarStation_OnTransition: @ 822AC05 +MtChimney_CableCarStation_OnTransition: compare VAR_CABLE_CAR_STATION_STATE, 1 call_if_eq MtChimney_CableCarStation_EventScript_MoveAttendantAside end -MtChimney_CableCarStation_EventScript_MoveAttendantAside:: @ 822AC11 +MtChimney_CableCarStation_EventScript_MoveAttendantAside:: setobjectxyperm LOCALID_ATTENDANT, 5, 4 setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_RIGHT return -MtChimney_CableCarStation_OnFrame: @ 822AC1D +MtChimney_CableCarStation_OnFrame: map_script_2 VAR_CABLE_CAR_STATION_STATE, 1, MtChimney_CableCarStation_EventScript_ExitCableCar .2byte 0 -MtChimney_CableCarStation_EventScript_ExitCableCar:: @ 822AC27 +MtChimney_CableCarStation_EventScript_ExitCableCar:: lockall applymovement OBJ_EVENT_ID_PLAYER, MtChimney_CableCarStation_Movement_ExitCableCar applymovement LOCALID_ATTENDANT, MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar @@ -30,7 +30,7 @@ MtChimney_CableCarStation_EventScript_ExitCableCar:: @ 822AC27 releaseall end -MtChimney_CableCarStation_EventScript_Attendant:: @ 822AC4B +MtChimney_CableCarStation_EventScript_Attendant:: lock faceplayer msgbox MtChimney_CableCarStation_Text_CableCarReadyGetOn, MSGBOX_YESNO @@ -40,7 +40,7 @@ MtChimney_CableCarStation_EventScript_Attendant:: @ 822AC4B goto_if_eq MtChimney_CableCarStation_EventScript_DeclineRide end -MtChimney_CableCarStation_EventScript_RideCableCar:: @ 822AC6C +MtChimney_CableCarStation_EventScript_RideCableCar:: msgbox MtChimney_CableCarStation_Text_StepThisWay, MSGBOX_DEFAULT closemessage applymovement LOCALID_ATTENDANT, MtChimney_CableCarStation_Movement_LeadPlayerToCableCar @@ -55,46 +55,46 @@ MtChimney_CableCarStation_EventScript_RideCableCar:: @ 822AC6C release end -MtChimney_CableCarStation_EventScript_DeclineRide:: @ 822AC9B +MtChimney_CableCarStation_EventScript_DeclineRide:: msgbox MtChimney_CableCarStation_Text_RideAnotherTime, MSGBOX_DEFAULT release end -MtChimney_CableCarStation_Movement_LeadPlayerToCableCar: @ 822ACA5 +MtChimney_CableCarStation_Movement_LeadPlayerToCableCar: walk_up walk_up walk_left walk_in_place_fastest_right step_end -MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar: @ 822ACAA +MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar: delay_16 walk_right walk_down walk_down step_end -MtChimney_CableCarStation_Movement_BoardCableCar: @ 822ACAF +MtChimney_CableCarStation_Movement_BoardCableCar: walk_up walk_up walk_up delay_16 step_end -MtChimney_CableCarStation_Movement_ExitCableCar: @ 822ACB4 +MtChimney_CableCarStation_Movement_ExitCableCar: walk_down walk_down walk_down delay_16 step_end -MtChimney_CableCarStation_Text_CableCarReadyGetOn: @ 822ACB9 +MtChimney_CableCarStation_Text_CableCarReadyGetOn: .string "The CABLE CAR is ready to go down.\n" .string "Would you like to be on it?$" -MtChimney_CableCarStation_Text_StepThisWay: @ 822ACF8 +MtChimney_CableCarStation_Text_StepThisWay: .string "Please step this way.$" -MtChimney_CableCarStation_Text_RideAnotherTime: @ 822AD0E +MtChimney_CableCarStation_Text_RideAnotherTime: .string "Please ride with us another time.$" diff --git a/data/maps/MtPyre_1F/scripts.inc b/data/maps/MtPyre_1F/scripts.inc index a303cb2c1066..1354b2ac1bce 100644 --- a/data/maps/MtPyre_1F/scripts.inc +++ b/data/maps/MtPyre_1F/scripts.inc @@ -1,7 +1,7 @@ -MtPyre_1F_MapScripts:: @ 8230F3E +MtPyre_1F_MapScripts:: .byte 0 -MtPyre_1F_EventScript_CleanseTagWoman:: @ 8230F3F +MtPyre_1F_EventScript_CleanseTagWoman:: lock faceplayer goto_if_set FLAG_RECEIVED_CLEANSE_TAG, MtPyre_1F_EventScript_ReceivedCleanseTag @@ -13,36 +13,36 @@ MtPyre_1F_EventScript_CleanseTagWoman:: @ 8230F3F release end -MtPyre_1F_EventScript_ReceivedCleanseTag:: @ 8230F6E +MtPyre_1F_EventScript_ReceivedCleanseTag:: msgbox MtPyre_1F_Text_ExplainCleanseTag, MSGBOX_DEFAULT release end -MtPyre_1F_EventScript_PokefanF:: @ 8230F78 +MtPyre_1F_EventScript_PokefanF:: msgbox MtPyre_1F_Text_ComeToPayRespects, MSGBOX_NPC end -MtPyre_1F_EventScript_Man:: @ 8230F81 +MtPyre_1F_EventScript_Man:: msgbox MtPyre_1F_Text_RestingPlaceOfZigzagoon, MSGBOX_NPC end -MtPyre_1F_Text_TakeThisForYourOwnGood: @ 8230F8A +MtPyre_1F_Text_TakeThisForYourOwnGood: .string "All sorts of beings wander the slopes\n" .string "of MT. PYRE…\p" .string "There is no telling what may happen.\n" .string "Take this. It's for your own good.$" -MtPyre_1F_Text_ExplainCleanseTag: @ 8231005 +MtPyre_1F_Text_ExplainCleanseTag: .string "Have a POKéMON hold that\n" .string "CLEANSE TAG.\p" .string "It will help ward off wild POKéMON.$" -MtPyre_1F_Text_ComeToPayRespects: @ 823104F +MtPyre_1F_Text_ComeToPayRespects: .string "Did you come to pay your respect\n" .string "to the spirits of departed POKéMON?\p" .string "You must care for your POKéMON a lot.$" -MtPyre_1F_Text_RestingPlaceOfZigzagoon: @ 82310BA +MtPyre_1F_Text_RestingPlaceOfZigzagoon: .string "This is the final resting place of my\n" .string "ZIGZAGOON. I cherished it…$" diff --git a/data/maps/MtPyre_2F/scripts.inc b/data/maps/MtPyre_2F/scripts.inc index 52c1a154ccd8..9fe7bf9d2f98 100644 --- a/data/maps/MtPyre_2F/scripts.inc +++ b/data/maps/MtPyre_2F/scripts.inc @@ -1,91 +1,91 @@ -MtPyre_2F_MapScripts:: @ 82310FB +MtPyre_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, CaveHole_FixCrackedGround map_script MAP_SCRIPT_ON_RESUME, MtPyre_2F_SetHoleWarp .byte 0 -MtPyre_2F_SetHoleWarp: @ 823110B +MtPyre_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_MT_PYRE_1F, 255, 0, 0 end -MtPyre_2F_EventScript_Woman:: @ 8231116 +MtPyre_2F_EventScript_Woman:: msgbox MtPyre_2F_Text_MemoriesOfSkitty, MSGBOX_NPC end -MtPyre_2F_EventScript_PokefanM:: @ 823111F +MtPyre_2F_EventScript_PokefanM:: msgbox MtPyre_2F_Text_TumbledFromFloorAbove, MSGBOX_NPC end -MtPyre_2F_EventScript_Mark:: @ 8231128 +MtPyre_2F_EventScript_Mark:: trainerbattle_single TRAINER_MARK, MtPyre_2F_Text_MarkIntro, MtPyre_2F_Text_MarkDefeat msgbox MtPyre_2F_Text_MarkPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_2F_EventScript_Luke:: @ 823113F +MtPyre_2F_EventScript_Luke:: trainerbattle_double TRAINER_DEZ_AND_LUKE, MtPyre_2F_Text_LukeIntro, MtPyre_2F_Text_LukeDefeat, MtPyre_2F_Text_LukeNotEnoughMons msgbox MtPyre_2F_Text_LukePostBattle, MSGBOX_AUTOCLOSE end -MtPyre_2F_EventScript_Dez:: @ 823115A +MtPyre_2F_EventScript_Dez:: trainerbattle_double TRAINER_DEZ_AND_LUKE, MtPyre_2F_Text_DezIntro, MtPyre_2F_Text_DezDefeat, MtPyre_2F_Text_DezNotEnoughMons msgbox MtPyre_2F_Text_DezPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_2F_EventScript_Leah:: @ 8231175 +MtPyre_2F_EventScript_Leah:: trainerbattle_single TRAINER_LEAH, MtPyre_2F_Text_LeahIntro, MtPyre_2F_Text_LeahDefeat msgbox MtPyre_2F_Text_LeahPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_2F_EventScript_Zander:: @ 823118C +MtPyre_2F_EventScript_Zander:: trainerbattle_single TRAINER_ZANDER, MtPyre_2F_Text_ZanderIntro, MtPyre_2F_Text_ZanderDefeat msgbox MtPyre_2F_Text_ZanderPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_2F_Text_MemoriesOfSkitty: @ 82311A3 +MtPyre_2F_Text_MemoriesOfSkitty: .string "Memories of my darling SKITTY…\n" .string "My eyes overflow thinking about it.$" -MtPyre_2F_Text_TumbledFromFloorAbove: @ 82311E6 +MtPyre_2F_Text_TumbledFromFloorAbove: .string "Ooch, ouch… There are holes in the\n" .string "ground here and there.\p" .string "I didn't notice and took a tumble from\n" .string "the floor above.$" -MtPyre_2F_Text_MarkIntro: @ 8231258 +MtPyre_2F_Text_MarkIntro: .string "Hey! Are you searching for POKéMON?\n" .string "You came along after me! You're rude!$" -MtPyre_2F_Text_MarkDefeat: @ 82312A2 +MtPyre_2F_Text_MarkDefeat: .string "Ayieeeeh!\n" .string "I'm sorry, forgive me, please!$" -MtPyre_2F_Text_MarkPostBattle: @ 82312CB +MtPyre_2F_Text_MarkPostBattle: .string "People don't come here often, so\n" .string "I thought there'd be rare POKéMON.$" -MtPyre_2F_Text_LukeIntro: @ 823130F +MtPyre_2F_Text_LukeIntro: .string "LUKE: We're here on a dare.\p" .string "Heheh, if I show her how cool I am,\n" .string "she'll fall for me. I know it!\p" .string "I know! I'll cream you and show her\n" .string "how cool I am!$" -MtPyre_2F_Text_LukeDefeat: @ 82313A1 +MtPyre_2F_Text_LukeDefeat: .string "LUKE: Whoopsie!$" -MtPyre_2F_Text_LukePostBattle: @ 82313B1 +MtPyre_2F_Text_LukePostBattle: .string "LUKE: Well, we lost but that's okay!\n" .string "I'm right here by your side.\l" .string "We'll make it through this dare!$" -MtPyre_2F_Text_LukeNotEnoughMons: @ 8231414 +MtPyre_2F_Text_LukeNotEnoughMons: .string "LUKE: If you want to take me on,\n" .string "bring some more POKéMON.\p" .string "If you don't, I won't be able to show\n" .string "off to my girl how cool I am!$" -MtPyre_2F_Text_DezIntro: @ 8231492 +MtPyre_2F_Text_DezIntro: .string "DEZ: I came here on a dare with my\n" .string "boyfriend.\p" .string "It's really scary, but I'm with my\n" @@ -93,42 +93,42 @@ MtPyre_2F_Text_DezIntro: @ 8231492 .string "I know! I'll get my boyfriend to look\n" .string "cool by beating you!$" -MtPyre_2F_Text_DezDefeat: @ 8231534 +MtPyre_2F_Text_DezDefeat: .string "DEZ: Waaaah! I'm scared!$" -MtPyre_2F_Text_DezPostBattle: @ 823154D +MtPyre_2F_Text_DezPostBattle: .string "DEZ: We're lovey-dovey, so we don't\n" .string "care if we lose!$" -MtPyre_2F_Text_DezNotEnoughMons: @ 8231582 +MtPyre_2F_Text_DezNotEnoughMons: .string "DEZ: If you want to challenge us, you\n" .string "should bring at least two POKéMON.\p" .string "My boyfriend's strong.\n" .string "Just one POKéMON won't do at all.$" -MtPyre_2F_Text_LeahIntro: @ 8231604 +MtPyre_2F_Text_LeahIntro: .string "You are an unfamiliar sight…\n" .string "Depart before anything befalls you!$" -MtPyre_2F_Text_LeahDefeat: @ 8231645 +MtPyre_2F_Text_LeahDefeat: .string "Hmm…\n" .string "You're durable.$" -MtPyre_2F_Text_LeahPostBattle: @ 823165A +MtPyre_2F_Text_LeahPostBattle: .string "Our family has been TRAINERS here\n" .string "since my great-grandmother's time…\p" .string "It is my duty to protect this\n" .string "mountain…$" -MtPyre_2F_Text_ZanderIntro: @ 82316C7 +MtPyre_2F_Text_ZanderIntro: .string "Kiyaaaaah!\n" .string "I'm terrified!$" -MtPyre_2F_Text_ZanderDefeat: @ 82316E1 +MtPyre_2F_Text_ZanderDefeat: .string "Nooooooo!\n" .string "I lost my wits!$" -MtPyre_2F_Text_ZanderPostBattle: @ 82316FB +MtPyre_2F_Text_ZanderPostBattle: .string "I get freaked out every time I see\n" .string "anything move…\p" .string "I shouldn't have come here to train…$" diff --git a/data/maps/MtPyre_3F/scripts.inc b/data/maps/MtPyre_3F/scripts.inc index 02cea0c22ab0..b91a589bc099 100644 --- a/data/maps/MtPyre_3F/scripts.inc +++ b/data/maps/MtPyre_3F/scripts.inc @@ -1,17 +1,17 @@ -MtPyre_3F_MapScripts:: @ 8231752 +MtPyre_3F_MapScripts:: .byte 0 -MtPyre_3F_EventScript_William:: @ 8231753 +MtPyre_3F_EventScript_William:: trainerbattle_single TRAINER_WILLIAM, MtPyre_3F_Text_WilliamIntro, MtPyre_3F_Text_WilliamDefeat msgbox MtPyre_3F_Text_WilliamPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_3F_EventScript_Kayla:: @ 823176A +MtPyre_3F_EventScript_Kayla:: trainerbattle_single TRAINER_KAYLA, MtPyre_3F_Text_KaylaIntro MtPyre_3F_Text_KaylaDefeat msgbox MtPyre_3F_Text_KaylaPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_3F_EventScript_Gabrielle:: @ 8231781 +MtPyre_3F_EventScript_Gabrielle:: trainerbattle_single TRAINER_GABRIELLE_1, MtPyre_3F_Text_GabrielleIntro, MtPyre_3F_Text_GabrielleDefeat, MtPyre_3F_EventScript_RegisterGabrielle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -20,7 +20,7 @@ MtPyre_3F_EventScript_Gabrielle:: @ 8231781 release end -MtPyre_3F_EventScript_RegisterGabrielle:: @ 82317AD +MtPyre_3F_EventScript_RegisterGabrielle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox MtPyre_3F_Text_GabrielleRegister, MSGBOX_DEFAULT @@ -28,47 +28,47 @@ MtPyre_3F_EventScript_RegisterGabrielle:: @ 82317AD release end -MtPyre_3F_EventScript_RematchGabrielle:: @ 82317CC +MtPyre_3F_EventScript_RematchGabrielle:: trainerbattle_rematch TRAINER_GABRIELLE_1, MtPyre_3F_Text_GabrielleRematchIntro, MtPyre_3F_Text_GabrielleRematchDefeat msgbox MtPyre_3F_Text_GabriellePostRematch, MSGBOX_AUTOCLOSE end -MtPyre_3F_Text_WilliamIntro: @ 82317E3 +MtPyre_3F_Text_WilliamIntro: .string "The rich atmosphere of the mountain\n" .string "has elevated my psychic power!\p" .string "A mere child like you…\n" .string "You dream of winning?$" -MtPyre_3F_Text_WilliamDefeat: @ 8231853 +MtPyre_3F_Text_WilliamDefeat: .string "I drown in self-pity…$" -MtPyre_3F_Text_WilliamPostBattle: @ 8231869 +MtPyre_3F_Text_WilliamPostBattle: .string "My psychic powers have surely\n" .string "grown several times, but…$" -MtPyre_3F_Text_KaylaIntro: @ 82318A1 +MtPyre_3F_Text_KaylaIntro: .string "Ahahahaha!\p" .string "This is no place for children, least\n" .string "of all you!$" -MtPyre_3F_Text_KaylaDefeat: @ 82318DD +MtPyre_3F_Text_KaylaDefeat: .string "I lost that cleanly…$" -MtPyre_3F_Text_KaylaPostBattle: @ 82318F2 +MtPyre_3F_Text_KaylaPostBattle: .string "This means my training is still not\n" .string "enough…\p" .string "I've got to keep working toward the\n" .string "summit…\p" .string "Go, me!$" -MtPyre_3F_Text_GabrielleIntro: @ 8231952 +MtPyre_3F_Text_GabrielleIntro: .string "Why have you come here?$" -MtPyre_3F_Text_GabrielleDefeat: @ 823196A +MtPyre_3F_Text_GabrielleDefeat: .string "That was amazing!\n" .string "You're a very special TRAINER.$" -MtPyre_3F_Text_GabriellePostBattle: @ 823199B +MtPyre_3F_Text_GabriellePostBattle: .string "POKéMON no longer of this world.\n" .string "POKéMON that are with you now.\p" .string "And the POKéMON that you will meet\n" @@ -76,21 +76,21 @@ MtPyre_3F_Text_GabriellePostBattle: @ 823199B .string "They are all to be equally cherished.\n" .string "Please remember that.$" -MtPyre_3F_Text_GabrielleRegister: @ 8231A49 +MtPyre_3F_Text_GabrielleRegister: .string "I would like to see your POKéMON\n" .string "when they grow up some more…\p" .string "Please, I need to see your POKéNAV.$" -MtPyre_3F_Text_GabrielleRematchIntro: @ 8231AAB +MtPyre_3F_Text_GabrielleRematchIntro: .string "Oh, it's you…\p" .string "Have you come to show me your grown\n" .string "POKéMON?$" -MtPyre_3F_Text_GabrielleRematchDefeat: @ 8231AE6 +MtPyre_3F_Text_GabrielleRematchDefeat: .string "How amazing!\n" .string "You are a special person.$" -MtPyre_3F_Text_GabriellePostRematch: @ 8231B0D +MtPyre_3F_Text_GabriellePostRematch: .string "POKéMON no longer of this world.\n" .string "POKéMON that are with you now.\p" .string "And the POKéMON that you will meet\n" diff --git a/data/maps/MtPyre_4F/scripts.inc b/data/maps/MtPyre_4F/scripts.inc index 683b38607ae1..0127e6856269 100644 --- a/data/maps/MtPyre_4F/scripts.inc +++ b/data/maps/MtPyre_4F/scripts.inc @@ -1,22 +1,22 @@ -MtPyre_4F_MapScripts:: @ 8231BC8 +MtPyre_4F_MapScripts:: .byte 0 @ Seems like the scripts for the 4F and 5F were swapped -MtPyre_5F_EventScript_Atsushi:: @ 8231BC9 +MtPyre_5F_EventScript_Atsushi:: trainerbattle_single TRAINER_ATSUSHI, MtPyre_5F_Text_AtsushiIntro, MtPyre_5F_Text_AtsushiDefeat msgbox MtPyre_5F_Text_AtsushiPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_5F_Text_AtsushiIntro: @ 8231BE0 +MtPyre_5F_Text_AtsushiIntro: .string "Teacher…\n" .string "Please watch over my progress!$" -MtPyre_5F_Text_AtsushiDefeat: @ 8231C08 +MtPyre_5F_Text_AtsushiDefeat: .string "Teacher…\n" .string "Please forgive me!$" -MtPyre_5F_Text_AtsushiPostBattle: @ 8231C24 +MtPyre_5F_Text_AtsushiPostBattle: .string "Until I improve, my teacher, who rests\n" .string "here, will never find true peace…$" diff --git a/data/maps/MtPyre_5F/scripts.inc b/data/maps/MtPyre_5F/scripts.inc index f27370d7c69d..1c8a3fc7df9c 100644 --- a/data/maps/MtPyre_5F/scripts.inc +++ b/data/maps/MtPyre_5F/scripts.inc @@ -1,23 +1,23 @@ -MtPyre_5F_MapScripts:: @ 8231C6D +MtPyre_5F_MapScripts:: .byte 0 @ Seems like the scripts for the 4F and 5F were swapped -MtPyre_4F_EventScript_Tasha:: @ 8231C6E +MtPyre_4F_EventScript_Tasha:: trainerbattle_single TRAINER_TASHA, MtPyre_4F_Text_TashaIntro, MtPyre_4F_Text_TashaDefeat msgbox MtPyre_4F_Text_TashaPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_4F_Text_TashaIntro: @ 8231C85 +MtPyre_4F_Text_TashaIntro: .string "I love all things horrifying…\n" .string "It's like a disease…\p" .string "When I'm here…\n" .string "I shiver with fear…$" -MtPyre_4F_Text_TashaDefeat: @ 8231CDB +MtPyre_4F_Text_TashaDefeat: .string "Losing, I dislike…$" -MtPyre_4F_Text_TashaPostBattle: @ 8231CEE +MtPyre_4F_Text_TashaPostBattle: .string "I want to see dreadful things…\n" .string "I can't leave…\p" .string "Stay…\n" diff --git a/data/maps/MtPyre_6F/scripts.inc b/data/maps/MtPyre_6F/scripts.inc index e3bdd928e9c0..4b7df8e7cf61 100644 --- a/data/maps/MtPyre_6F/scripts.inc +++ b/data/maps/MtPyre_6F/scripts.inc @@ -1,7 +1,7 @@ -MtPyre_6F_MapScripts:: @ 8231D3A +MtPyre_6F_MapScripts:: .byte 0 -MtPyre_6F_EventScript_Valerie:: @ 8231D3B +MtPyre_6F_EventScript_Valerie:: trainerbattle_single TRAINER_VALERIE_1, MtPyre_6F_Text_ValerieIntro, MtPyre_6F_Text_ValerieDefeat, MtPyre_6F_EventScript_RegisterValerie specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -10,7 +10,7 @@ MtPyre_6F_EventScript_Valerie:: @ 8231D3B release end -MtPyre_6F_EventScript_RegisterValerie:: @ 8231D67 +MtPyre_6F_EventScript_RegisterValerie:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox MtPyre_6F_Text_ValerieRegister, MSGBOX_DEFAULT @@ -18,52 +18,52 @@ MtPyre_6F_EventScript_RegisterValerie:: @ 8231D67 release end -MtPyre_6F_EventScript_RematchValerie:: @ 8231D86 +MtPyre_6F_EventScript_RematchValerie:: trainerbattle_rematch TRAINER_VALERIE_1, MtPyre_6F_Text_ValerieRematchIntro, MtPyre_6F_Text_ValerieRematchDefeat msgbox MtPyre_6F_Text_ValeriePostRematch, MSGBOX_AUTOCLOSE end -MtPyre_6F_EventScript_Cedric:: @ 8231D9D +MtPyre_6F_EventScript_Cedric:: trainerbattle_single TRAINER_CEDRIC, MtPyre_6F_Text_CedricIntro, MtPyre_6F_Text_CedricDefeat msgbox MtPyre_6F_Text_CedricPostBattle, MSGBOX_AUTOCLOSE end -MtPyre_6F_Text_ValerieIntro: @ 8231DB4 +MtPyre_6F_Text_ValerieIntro: .string "When I'm here…\n" .string "A curious power flows into me…$" -MtPyre_6F_Text_ValerieDefeat: @ 8231DE2 +MtPyre_6F_Text_ValerieDefeat: .string "The power is ebbing away…$" -MtPyre_6F_Text_ValeriePostBattle: @ 8231DFC +MtPyre_6F_Text_ValeriePostBattle: .string "Perhaps the power is from the spirits\n" .string "of POKéMON in fitful sleep here…$" -MtPyre_6F_Text_ValerieRegister: @ 8231E43 +MtPyre_6F_Text_ValerieRegister: .string "Fufufu… I lost the match, but…\n" .string "I have this little ability…\p" .string "Without ever laying my hands on\n" .string "your POKéNAV… Hiyah!$" -MtPyre_6F_Text_ValerieRematchIntro: @ 8231EB3 +MtPyre_6F_Text_ValerieRematchIntro: .string "Behind you…\n" .string "What is it…$" -MtPyre_6F_Text_ValerieRematchDefeat: @ 8231ECB +MtPyre_6F_Text_ValerieRematchDefeat: .string "Something faded away…$" -MtPyre_6F_Text_ValeriePostRematch: @ 8231EE1 +MtPyre_6F_Text_ValeriePostRematch: .string "The POKéMON at rest here…\n" .string "Sometimes, they play…$" -MtPyre_6F_Text_CedricIntro: @ 8231F11 +MtPyre_6F_Text_CedricIntro: .string "Have you lost your bearings?\n" .string "Have no fear for I am here!$" -MtPyre_6F_Text_CedricDefeat: @ 8231F4A +MtPyre_6F_Text_CedricDefeat: .string "Weren't you lost?$" -MtPyre_6F_Text_CedricPostBattle: @ 8231F5C +MtPyre_6F_Text_CedricPostBattle: .string "I had this feeling that a lost TRAINER\n" .string "would be panicked and easy to beat.\p" .string "It's dirty and I won't try it again…$" diff --git a/data/maps/MtPyre_Exterior/scripts.inc b/data/maps/MtPyre_Exterior/scripts.inc index 56a990266fe4..01279d645c87 100644 --- a/data/maps/MtPyre_Exterior/scripts.inc +++ b/data/maps/MtPyre_Exterior/scripts.inc @@ -1,27 +1,27 @@ -MtPyre_Exterior_MapScripts:: @ 8231FCC +MtPyre_Exterior_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MtPyre_Exterior_OnTransition .byte 0 -MtPyre_Exterior_OnTransition: @ 8231FD2 +MtPyre_Exterior_OnTransition: call MtPyre_Exterior_EventScript_CheckEnterFromSummit end -MtPyre_Exterior_EventScript_CheckEnterFromSummit:: @ 8231FD8 +MtPyre_Exterior_EventScript_CheckEnterFromSummit:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 compare VAR_TEMP_1, 12 goto_if_lt MtPyre_Exterior_EventScript_EnterFromSummit return -MtPyre_Exterior_EventScript_EnterFromSummit:: @ 8231FE9 +MtPyre_Exterior_EventScript_EnterFromSummit:: setweather WEATHER_FOG_HORIZONTAL return -MtPyre_Exterior_EventScript_FogTrigger:: @ 8231FED +MtPyre_Exterior_EventScript_FogTrigger:: setweather WEATHER_FOG_HORIZONTAL doweather end -MtPyre_Exterior_EventScript_SunTrigger:: @ 8231FF2 +MtPyre_Exterior_EventScript_SunTrigger:: setweather WEATHER_SUNNY doweather end diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc index e899c3471cda..d55872792b52 100644 --- a/data/maps/MtPyre_Summit/scripts.inc +++ b/data/maps/MtPyre_Summit/scripts.inc @@ -6,39 +6,39 @@ .set LOCALID_GRUNT_4, 7 .set LOCALID_MAXIE, 8 -MtPyre_Summit_MapScripts:: @ 8231FF7 +MtPyre_Summit_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, MtPyre_Summit_OnTransition .byte 0 -MtPyre_Summit_OnTransition: @ 8231FFD +MtPyre_Summit_OnTransition: compare VAR_MT_PYRE_STATE, 2 call_if_eq MtPyre_Summit_EventScript_SetArchieMaxiePositions end -MtPyre_Summit_EventScript_SetArchieMaxiePositions:: @ 8232009 +MtPyre_Summit_EventScript_SetArchieMaxiePositions:: setobjectxyperm LOCALID_MAXIE, 23, 6 setobjectxyperm LOCALID_ARCHIE, 22, 6 end -MtPyre_Summit_EventScript_TeamAquaTrigger0:: @ 8232018 +MtPyre_Summit_EventScript_TeamAquaTrigger0:: lockall setvar VAR_0x8008, 0 goto MtPyre_Summit_EventScript_TeamAquaExits end -MtPyre_Summit_EventScript_TeamAquaTrigger1:: @ 8232024 +MtPyre_Summit_EventScript_TeamAquaTrigger1:: lockall setvar VAR_0x8008, 1 goto MtPyre_Summit_EventScript_TeamAquaExits end -MtPyre_Summit_EventScript_TeamAquaTrigger2:: @ 8232030 +MtPyre_Summit_EventScript_TeamAquaTrigger2:: lockall setvar VAR_0x8008, 2 goto MtPyre_Summit_EventScript_TeamAquaExits end -MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C +MtPyre_Summit_EventScript_TeamAquaExits:: playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 @@ -78,66 +78,66 @@ MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C releaseall end -MtPyre_Summit_EventScript_ArchieFacePlayer0:: @ 82320E0 +MtPyre_Summit_EventScript_ArchieFacePlayer0:: applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer0 waitmovement 0 return @ Archie is already facing player -MtPyre_Summit_EventScript_ArchieFacePlayer1:: @ 82320EB +MtPyre_Summit_EventScript_ArchieFacePlayer1:: return -MtPyre_Summit_EventScript_ArchieFacePlayer2:: @ 82320EC +MtPyre_Summit_EventScript_ArchieFacePlayer2:: applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer2 waitmovement 0 return -MtPyre_Summit_EventScript_OldLadyApproachPlayer0:: @ 82320F7 +MtPyre_Summit_EventScript_OldLadyApproachPlayer0:: applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer0 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -MtPyre_Summit_EventScript_OldLadyApproachPlayer1:: @ 823210C +MtPyre_Summit_EventScript_OldLadyApproachPlayer1:: applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer1 waitmovement 0 return -MtPyre_Summit_EventScript_OldLadyApproachPlayer2:: @ 8232117 +MtPyre_Summit_EventScript_OldLadyApproachPlayer2:: applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer2 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -MtPyre_Summit_Movement_OldLadyApproachPlayer0: @ 823212C +MtPyre_Summit_Movement_OldLadyApproachPlayer0: walk_down walk_down walk_in_place_fastest_left step_end -MtPyre_Summit_Movement_OldLadyApproachPlayer1: @ 8232130 +MtPyre_Summit_Movement_OldLadyApproachPlayer1: walk_down step_end -MtPyre_Summit_Movement_OldLadyApproachPlayer2: @ 8232132 +MtPyre_Summit_Movement_OldLadyApproachPlayer2: walk_down walk_down walk_in_place_fastest_right step_end -MtPyre_Summit_Movement_ArchieFacePlayer0: @ 8232136 +MtPyre_Summit_Movement_ArchieFacePlayer0: walk_left walk_in_place_fastest_down step_end -MtPyre_Summit_Movement_ArchieFacePlayer2: @ 8232139 +MtPyre_Summit_Movement_ArchieFacePlayer2: walk_right walk_in_place_fastest_down step_end -MtPyre_Summit_EventScript_OldMan:: @ 823213C +MtPyre_Summit_EventScript_OldMan:: lock faceplayer goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, MtPyre_Summit_EventScript_OldManAfterRayquaza @@ -149,7 +149,7 @@ MtPyre_Summit_EventScript_OldMan:: @ 823213C release end -MtPyre_Summit_EventScript_OldManAfterRayquaza:: @ 8232167 +MtPyre_Summit_EventScript_OldManAfterRayquaza:: msgbox MtPyre_Summit_Text_HearTheNewLegendOfHoenn, MSGBOX_YESNO compare VAR_RESULT, YES call_if_eq MtPyre_Summit_EventScript_OldManNewTale @@ -158,19 +158,19 @@ MtPyre_Summit_EventScript_OldManAfterRayquaza:: @ 8232167 release end -MtPyre_Summit_EventScript_OldManTale:: @ 8232187 +MtPyre_Summit_EventScript_OldManTale:: msgbox MtPyre_Summit_Text_GroudonKyogreTale, MSGBOX_DEFAULT return -MtPyre_Summit_EventScript_DeclineOldManTale:: @ 8232190 +MtPyre_Summit_EventScript_DeclineOldManTale:: msgbox MtPyre_Summit_Text_WellThatTooIsFine, MSGBOX_DEFAULT return -MtPyre_Summit_EventScript_OldManNewTale:: @ 8232199 +MtPyre_Summit_EventScript_OldManNewTale:: msgbox MtPyre_Summit_Text_HoennTrioTale, MSGBOX_DEFAULT return -MtPyre_Summit_EventScript_OldLady:: @ 82321A2 +MtPyre_Summit_EventScript_OldLady:: lock faceplayer goto_if_set FLAG_RETURNED_RED_OR_BLUE_ORB, MtPyre_Summit_EventScript_OldLadyAfterOrbsReturned @@ -181,41 +181,41 @@ MtPyre_Summit_EventScript_OldLady:: @ 82321A2 release end -MtPyre_Summit_EventScript_OldLadyOrbsReturned:: @ 82321CB +MtPyre_Summit_EventScript_OldLadyOrbsReturned:: msgbox MtPyre_Summit_Text_ThoseTwoMenReturnedOrbs, MSGBOX_DEFAULT setflag FLAG_RETURNED_RED_OR_BLUE_ORB release end -MtPyre_Summit_EventScript_OldLadyLegendariesAwake:: @ 82321D8 +MtPyre_Summit_EventScript_OldLadyLegendariesAwake:: msgbox MtPyre_Summit_Text_GroudonKyogreAwakened, MSGBOX_DEFAULT release end -MtPyre_Summit_EventScript_OldLadyAfterOrbsReturned:: @ 82321E2 +MtPyre_Summit_EventScript_OldLadyAfterOrbsReturned:: msgbox MtPyre_Summit_Text_SuperAncientPokemonTaughtUs, MSGBOX_DEFAULT release end -MtPyre_Summit_EventScript_ArchieMaxieTrigger0:: @ 82321EC +MtPyre_Summit_EventScript_ArchieMaxieTrigger0:: lockall setvar VAR_0x8008, 0 goto MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs end -MtPyre_Summit_EventScript_ArchieMaxieTrigger1:: @ 82321F8 +MtPyre_Summit_EventScript_ArchieMaxieTrigger1:: lockall setvar VAR_0x8008, 1 goto MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs end -MtPyre_Summit_EventScript_ArchieMaxieTrigger2:: @ 8232204 +MtPyre_Summit_EventScript_ArchieMaxieTrigger2:: lockall setvar VAR_0x8008, 2 goto MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs end -MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs:: @ 8232210 +MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 delay 60 @@ -255,49 +255,49 @@ MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs:: @ 8232210 releaseall end -MtPyre_Summit_EventScript_ArchieMaxieBeginExit0:: @ 82322C4 +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 waitmovement 0 return -MtPyre_Summit_EventScript_ArchieMaxieBeginExit1:: @ 82322DD +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 waitmovement 0 return -MtPyre_Summit_EventScript_ArchieMaxieBeginExit2:: @ 82322F6 +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 waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachPlayer0:: @ 823230F +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 waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachPlayer1:: @ 8232328 +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 waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachPlayer2:: @ 8232341 +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 waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachArchie0:: @ 823235A +MtPyre_Summit_EventScript_MaxieApproachArchie0:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie0 waitmovement 0 @@ -305,7 +305,7 @@ MtPyre_Summit_EventScript_MaxieApproachArchie0:: @ 823235A waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachArchie1:: @ 8232376 +MtPyre_Summit_EventScript_MaxieApproachArchie1:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie1 waitmovement 0 @@ -313,7 +313,7 @@ MtPyre_Summit_EventScript_MaxieApproachArchie1:: @ 8232376 waitmovement 0 return -MtPyre_Summit_EventScript_MaxieApproachArchie2:: @ 8232392 +MtPyre_Summit_EventScript_MaxieApproachArchie2:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie2 waitmovement 0 @@ -321,19 +321,19 @@ MtPyre_Summit_EventScript_MaxieApproachArchie2:: @ 8232392 waitmovement 0 return -MtPyre_Summit_Movement_PlayerFaceMaxie0: @ 82323AE +MtPyre_Summit_Movement_PlayerFaceMaxie0: delay_16 delay_16 walk_in_place_fastest_right step_end -MtPyre_Summit_Movement_PlayerFaceMaxie: @ 82323B2 +MtPyre_Summit_Movement_PlayerFaceMaxie: delay_16 delay_16 walk_in_place_fastest_left step_end -MtPyre_Summit_Movement_ArchieExit: @ 82323B6 +MtPyre_Summit_Movement_ArchieExit: walk_down walk_down walk_down @@ -342,7 +342,7 @@ MtPyre_Summit_Movement_ArchieExit: @ 82323B6 walk_down step_end -MtPyre_Summit_Movement_MaxieExit: @ 82323BD +MtPyre_Summit_Movement_MaxieExit: walk_down walk_down walk_down @@ -351,7 +351,7 @@ MtPyre_Summit_Movement_MaxieExit: @ 82323BD walk_down step_end -MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0: @ 82323C4 +MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0: delay_16 delay_8 walk_left @@ -360,7 +360,7 @@ MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0: @ 82323C4 walk_in_place_fastest_down step_end -MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1: @ 82323CB +MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1: delay_16 delay_8 walk_right @@ -369,7 +369,7 @@ MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1: @ 82323CB walk_in_place_fastest_down step_end -MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2: @ 82323D2 +MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2: delay_16 delay_8 walk_in_place_fastest_left @@ -377,38 +377,38 @@ MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2: @ 82323D2 walk_in_place_fastest_down step_end -MtPyre_Summit_Movement_MaxieApproachPlayer0: @ 82323D8 +MtPyre_Summit_Movement_MaxieApproachPlayer0: walk_up walk_up walk_up walk_left step_end -MtPyre_Summit_Movement_MaxieApproachPlayer1: @ 82323DD +MtPyre_Summit_Movement_MaxieApproachPlayer1: walk_up walk_up walk_up walk_in_place_fastest_right step_end -MtPyre_Summit_Movement_MaxieApproachPlayer2: @ 82323E2 +MtPyre_Summit_Movement_MaxieApproachPlayer2: walk_up walk_up walk_up walk_in_place_fastest_right step_end -MtPyre_Summit_Movement_ArchieWatchMaxie: @ 82323E7 +MtPyre_Summit_Movement_ArchieWatchMaxie: delay_16 walk_in_place_fastest_up step_end -MtPyre_Summit_Movement_PlayerWatchMaxie: @ 82323EA +MtPyre_Summit_Movement_PlayerWatchMaxie: delay_16 walk_in_place_fastest_down step_end -MtPyre_Summit_Movement_MaxieApproachArchie0: @ 82323ED +MtPyre_Summit_Movement_MaxieApproachArchie0: walk_down walk_right walk_down @@ -416,54 +416,54 @@ MtPyre_Summit_Movement_MaxieApproachArchie0: @ 82323ED walk_in_place_fastest_left step_end -MtPyre_Summit_Movement_MaxieApproachArchie1: @ 82323F3 +MtPyre_Summit_Movement_MaxieApproachArchie1: walk_down walk_down walk_down walk_in_place_fastest_left step_end -MtPyre_Summit_Movement_MaxieApproachArchie2: @ 82323F8 +MtPyre_Summit_Movement_MaxieApproachArchie2: walk_down walk_down walk_down walk_in_place_fastest_left step_end -MtPyre_Summit_EventScript_Grunt1:: @ 82323FD +MtPyre_Summit_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_MT_PYRE_1, MtPyre_Summit_Text_Grunt1Intro, MtPyre_Summit_Text_Grunt1Defeat msgbox MtPyre_Summit_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -MtPyre_Summit_EventScript_Grunt2:: @ 8232414 +MtPyre_Summit_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_MT_PYRE_2, MtPyre_Summit_Text_Grunt2Intro, MtPyre_Summit_Text_Grunt2Defeat msgbox MtPyre_Summit_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -MtPyre_Summit_EventScript_Grunt3:: @ 823242B +MtPyre_Summit_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_MT_PYRE_3, MtPyre_Summit_Text_Grunt3Intro, MtPyre_Summit_Text_Grunt3Defeat msgbox MtPyre_Summit_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -MtPyre_Summit_EventScript_Grunt4:: @ 8232442 +MtPyre_Summit_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_MT_PYRE_4, MtPyre_Summit_Text_Grunt4Intro, MtPyre_Summit_Text_Grunt4Defeat msgbox MtPyre_Summit_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -MtPyre_Summit_Text_Grunt1Intro: @ 8232459 +MtPyre_Summit_Text_Grunt1Intro: .string "No! Those TEAM MAGMA goons got\n" .string "here ahead of us!\p" .string "We can't fall behind!$" -MtPyre_Summit_Text_Grunt1Defeat: @ 82324A0 +MtPyre_Summit_Text_Grunt1Defeat: .string "I thought you were one of the MAGMAS\n" .string "who happened to come back…$" -MtPyre_Summit_Text_Grunt1PostBattle: @ 82324E0 +MtPyre_Summit_Text_Grunt1PostBattle: .string "Yeah, so you are strong…\n" .string "But there're a lot of us!$" -MtPyre_Summit_Text_Grunt2Intro: @ 8232513 +MtPyre_Summit_Text_Grunt2Intro: .string "Hah!\n" .string "Too bad for you!\p" .string "If you came earlier, you only would've\n" @@ -471,46 +471,46 @@ MtPyre_Summit_Text_Grunt2Intro: @ 8232513 .string "But since you arrived now, you have\n" .string "to take on us toughies!$" -MtPyre_Summit_Text_Grunt2Defeat: @ 82325B0 +MtPyre_Summit_Text_Grunt2Defeat: .string "Urgh… I should've let you take on\n" .string "TEAM MAGMA first…$" -MtPyre_Summit_Text_Grunt2PostBattle: @ 82325E4 +MtPyre_Summit_Text_Grunt2PostBattle: .string "You don't know anything!\n" .string "So why are you messing with us?$" -MtPyre_Summit_Text_Grunt3Intro: @ 823261D +MtPyre_Summit_Text_Grunt3Intro: .string "You…\n" .string "We saw you at MT. CHIMNEY.\p" .string "You don't belong to either TEAM,\n" .string "so why would you be here?$" -MtPyre_Summit_Text_Grunt3Defeat: @ 8232678 +MtPyre_Summit_Text_Grunt3Defeat: .string "If you're going to mess with anyone,\n" .string "let it be TEAM MAGMA…$" -MtPyre_Summit_Text_Grunt3PostBattle: @ 82326B3 +MtPyre_Summit_Text_Grunt3PostBattle: .string "Heh, it doesn't matter!\n" .string "We bought ourselves some time!\p" .string "The BOSS should have snatched what\n" .string "he was after!$" -MtPyre_Summit_Text_Grunt4Intro: @ 823271B +MtPyre_Summit_Text_Grunt4Intro: .string "Oh, I know!\n" .string "You tried to join TEAM MAGMA,\l" .string "but they wouldn't have you!\p" .string "Well, don't think that we'll let you\n" .string "join our TEAM AQUA!$" -MtPyre_Summit_Text_Grunt4Defeat: @ 823279A +MtPyre_Summit_Text_Grunt4Defeat: .string "If you want to join TEAM AQUA that\n" .string "badly, we can consider it…$" -MtPyre_Summit_Text_Grunt4PostBattle: @ 82327D8 +MtPyre_Summit_Text_Grunt4PostBattle: .string "We have a great combination going\n" .string "with us members and our leader.$" -MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo: @ 823281A +MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo: .string "ARCHIE: TEAM MAGMA's MAXIE got ahead\n" .string "of us, but we also got what we wanted.\p" .string "The RED ORB preserved at MT. PYRE…\n" @@ -520,7 +520,7 @@ MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo: @ 823281A .string "Okay, TEAM!\n" .string "We're pulling out!$" -MtPyre_Summit_Text_BothOrbsTakenMagmaLeftThis: @ 823290E +MtPyre_Summit_Text_BothOrbsTakenMagmaLeftThis: .string "Oh, no…\n" .string "This cannot happen…\p" .string "Not only the BLUE ORB, but even\n" @@ -540,13 +540,13 @@ MtPyre_Summit_Text_BothOrbsTakenMagmaLeftThis: @ 823290E .string "I would like you to have it.\n" .string "Perhaps it will be useful in some way.$" -MtPyre_Summit_Text_OrbsHaveBeenTaken: @ 8232AD8 +MtPyre_Summit_Text_OrbsHaveBeenTaken: .string "The BLUE ORB and RED ORB taken by\n" .string "those sinister men…\p" .string "They must never be apart…\n" .string "I fear something terrible will happen…$" -MtPyre_Summit_Text_GroudonKyogreAwakened: @ 8232B4F +MtPyre_Summit_Text_GroudonKyogreAwakened: .string "Oh, my goodness…\p" .string "You say that both GROUDON and KYOGRE\n" .string "have been awakened?\p" @@ -560,13 +560,13 @@ MtPyre_Summit_Text_GroudonKyogreAwakened: @ 8232B4F .string "It could be a human, or perhaps\n" .string "a POKéMON, but no one knows.$" -MtPyre_Summit_Text_ThoseTwoMenReturnedOrbs: @ 8232CA6 +MtPyre_Summit_Text_ThoseTwoMenReturnedOrbs: .string "The two men who took the ORBS came\n" .string "back to return them on their own.\p" .string "Those men…\n" .string "Perhaps they are not so evil after all…$" -MtPyre_Summit_Text_SuperAncientPokemonTaughtUs: @ 8232D1E +MtPyre_Summit_Text_SuperAncientPokemonTaughtUs: .string "The embodiments of the land, sea,\n" .string "and the sky…\p" .string "That is said to be the identities of\n" @@ -577,7 +577,7 @@ MtPyre_Summit_Text_SuperAncientPokemonTaughtUs: @ 8232D1E .string "The super-ancient POKéMON have\n" .string "taught us that…$" -MtPyre_Summit_Text_WillYouHearOutMyTale: @ 8232E0C +MtPyre_Summit_Text_WillYouHearOutMyTale: .string "MT. PYRE is where we calm the spirits\n" .string "of POKéMON that have passed on…\p" .string "This is a high place where one can\n" @@ -588,7 +588,7 @@ MtPyre_Summit_Text_WillYouHearOutMyTale: @ 8232E0C .string "Will you hear out my tale? A tale long\n" .string "told in the HOENN region?$" -MtPyre_Summit_Text_GroudonKyogreTale: @ 8232F27 +MtPyre_Summit_Text_GroudonKyogreTale: .string "It happened long, long ago…\p" .string "The world was wracked by a ferocious\n" .string "clash between the POKéMON of the land\l" @@ -608,16 +608,16 @@ MtPyre_Summit_Text_GroudonKyogreTale: @ 8232F27 .string "the sea where eventually they\l" .string "disappeared…$" -MtPyre_Summit_Text_WellThatTooIsFine: @ 8233162 +MtPyre_Summit_Text_WellThatTooIsFine: .string "I see…\n" .string "Well, that, too, is fine…$" -MtPyre_Summit_Text_MaxieSilence: @ 8233183 +MtPyre_Summit_Text_MaxieSilence: .string "MAXIE: {PLAYER}…\p" .string "… … … … … …\n" .string "… … … … … …$" -MtPyre_Summit_Text_HearTheNewLegendOfHoenn: @ 82331A6 +MtPyre_Summit_Text_HearTheNewLegendOfHoenn: .string "It is my role to pass on the legends\n" .string "of HOENN to future generations.\p" .string "And the crisis that just ended in\n" @@ -625,7 +625,7 @@ MtPyre_Summit_Text_HearTheNewLegendOfHoenn: @ 82331A6 .string "Have you the time to hear the new\n" .string "legend of HOENN?$" -MtPyre_Summit_Text_HoennTrioTale: @ 823325D +MtPyre_Summit_Text_HoennTrioTale: .string "It happened long, long ago…\p" .string "The world was wracked by a ferocious\n" .string "clash between the POKéMON of the land\l" diff --git a/data/maps/NavelRock_B1F/scripts.inc b/data/maps/NavelRock_B1F/scripts.inc index a8906f24da32..17e9c442e8d5 100644 --- a/data/maps/NavelRock_B1F/scripts.inc +++ b/data/maps/NavelRock_B1F/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_B1F_MapScripts:: @ 826910D +NavelRock_B1F_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc index 766c818d2910..da9e06cff30a 100644 --- a/data/maps/NavelRock_Bottom/scripts.inc +++ b/data/maps/NavelRock_Bottom/scripts.inc @@ -1,36 +1,36 @@ .set LOCALID_LUGIA, 1 -NavelRock_Bottom_MapScripts:: @ 8269255 +NavelRock_Bottom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, NavelRock_Bottom_OnTransition map_script MAP_SCRIPT_ON_RESUME, NavelRock_Bottom_OnResume .byte 0 -NavelRock_Bottom_OnTransition: @ 8269260 +NavelRock_Bottom_OnTransition: call_if_set FLAG_CAUGHT_LUGIA, NavelRock_Bottom_EventScript_HideLugia call_if_unset FLAG_CAUGHT_LUGIA, NavelRock_Bottom_EventScript_TryShowLugia end -NavelRock_Bottom_EventScript_HideLugia:: @ 8269273 +NavelRock_Bottom_EventScript_HideLugia:: setflag FLAG_HIDE_LUGIA return -NavelRock_Bottom_EventScript_TryShowLugia:: @ 8269277 +NavelRock_Bottom_EventScript_TryShowLugia:: goto_if_set FLAG_DEFEATED_LUGIA, Common_EventScript_NopReturn clearflag FLAG_HIDE_LUGIA return -NavelRock_Bottom_OnResume: @ 8269284 +NavelRock_Bottom_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, NavelRock_Bottom_EventScript_TryRemoveLugia end -NavelRock_Bottom_EventScript_TryRemoveLugia:: @ 826928E +NavelRock_Bottom_EventScript_TryRemoveLugia:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_LUGIA return -NavelRock_Bottom_EventScript_Lugia:: @ 82692A2 +NavelRock_Bottom_EventScript_Lugia:: lock faceplayer waitse @@ -73,13 +73,13 @@ NavelRock_Bottom_EventScript_Lugia:: @ 82692A2 release end -NavelRock_Bottom_EventScript_DefeatedLugia:: @ 8269336 +NavelRock_Bottom_EventScript_DefeatedLugia:: setflag FLAG_DEFEATED_LUGIA setvar VAR_0x8004, SPECIES_LUGIA goto Common_EventScript_LegendaryFlewAway end -NavelRock_Bottom_EventScript_RanFromLugia:: @ 8269344 +NavelRock_Bottom_EventScript_RanFromLugia:: setvar VAR_0x8004, SPECIES_LUGIA goto Common_EventScript_LegendaryFlewAway end diff --git a/data/maps/NavelRock_Down01/scripts.inc b/data/maps/NavelRock_Down01/scripts.inc index 9677167eb990..b3dd63931fb6 100644 --- a/data/maps/NavelRock_Down01/scripts.inc +++ b/data/maps/NavelRock_Down01/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down01_MapScripts:: @ 826924A +NavelRock_Down01_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down02/scripts.inc b/data/maps/NavelRock_Down02/scripts.inc index 946530a4a11a..2cca3e3ebef7 100644 --- a/data/maps/NavelRock_Down02/scripts.inc +++ b/data/maps/NavelRock_Down02/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down02_MapScripts:: @ 826924B +NavelRock_Down02_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down03/scripts.inc b/data/maps/NavelRock_Down03/scripts.inc index 2a2a702c184e..0d0feaf4f51a 100644 --- a/data/maps/NavelRock_Down03/scripts.inc +++ b/data/maps/NavelRock_Down03/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down03_MapScripts:: @ 826924C +NavelRock_Down03_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down04/scripts.inc b/data/maps/NavelRock_Down04/scripts.inc index acf5aa45640d..6ac0cfd01a61 100644 --- a/data/maps/NavelRock_Down04/scripts.inc +++ b/data/maps/NavelRock_Down04/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down04_MapScripts:: @ 826924D +NavelRock_Down04_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down05/scripts.inc b/data/maps/NavelRock_Down05/scripts.inc index 22a0c2059d68..0fcc279b8f10 100644 --- a/data/maps/NavelRock_Down05/scripts.inc +++ b/data/maps/NavelRock_Down05/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down05_MapScripts:: @ 826924E +NavelRock_Down05_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down06/scripts.inc b/data/maps/NavelRock_Down06/scripts.inc index 9acfe1e6a358..7669b77140d2 100644 --- a/data/maps/NavelRock_Down06/scripts.inc +++ b/data/maps/NavelRock_Down06/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down06_MapScripts:: @ 826924F +NavelRock_Down06_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down07/scripts.inc b/data/maps/NavelRock_Down07/scripts.inc index 6c08fcc85a42..0a4dc3f35c60 100644 --- a/data/maps/NavelRock_Down07/scripts.inc +++ b/data/maps/NavelRock_Down07/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down07_MapScripts:: @ 8269250 +NavelRock_Down07_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down08/scripts.inc b/data/maps/NavelRock_Down08/scripts.inc index 5a40a72a5dbb..329c73d91979 100644 --- a/data/maps/NavelRock_Down08/scripts.inc +++ b/data/maps/NavelRock_Down08/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down08_MapScripts:: @ 8269251 +NavelRock_Down08_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down09/scripts.inc b/data/maps/NavelRock_Down09/scripts.inc index 80bbbc0e58a3..172d6c975623 100644 --- a/data/maps/NavelRock_Down09/scripts.inc +++ b/data/maps/NavelRock_Down09/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down09_MapScripts:: @ 8269252 +NavelRock_Down09_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down10/scripts.inc b/data/maps/NavelRock_Down10/scripts.inc index 2b27edeb5867..849ad2cfdefa 100644 --- a/data/maps/NavelRock_Down10/scripts.inc +++ b/data/maps/NavelRock_Down10/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down10_MapScripts:: @ 8269253 +NavelRock_Down10_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Down11/scripts.inc b/data/maps/NavelRock_Down11/scripts.inc index 91c6fa36a4c3..a45962fc1348 100644 --- a/data/maps/NavelRock_Down11/scripts.inc +++ b/data/maps/NavelRock_Down11/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Down11_MapScripts:: @ 8269254 +NavelRock_Down11_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Entrance/scripts.inc b/data/maps/NavelRock_Entrance/scripts.inc index 9c25f505468b..419ec493c9f8 100644 --- a/data/maps/NavelRock_Entrance/scripts.inc +++ b/data/maps/NavelRock_Entrance/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Entrance_MapScripts:: @ 826910C +NavelRock_Entrance_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Exterior/scripts.inc b/data/maps/NavelRock_Exterior/scripts.inc index 827408068c20..37b69616c533 100644 --- a/data/maps/NavelRock_Exterior/scripts.inc +++ b/data/maps/NavelRock_Exterior/scripts.inc @@ -1,8 +1,8 @@ -NavelRock_Exterior_MapScripts:: @ 82690B2 +NavelRock_Exterior_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, NavelRock_Exterior_OnTransition .byte 0 -NavelRock_Exterior_OnTransition: @ 82690B8 +NavelRock_Exterior_OnTransition: setflag FLAG_ARRIVED_AT_NAVEL_ROCK end diff --git a/data/maps/NavelRock_Fork/scripts.inc b/data/maps/NavelRock_Fork/scripts.inc index 4269feeacf76..d83cba849400 100644 --- a/data/maps/NavelRock_Fork/scripts.inc +++ b/data/maps/NavelRock_Fork/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Fork_MapScripts:: @ 826910E +NavelRock_Fork_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc index 7c0cbed6a62f..586085cbfb76 100644 --- a/data/maps/NavelRock_Harbor/scripts.inc +++ b/data/maps/NavelRock_Harbor/scripts.inc @@ -1,10 +1,10 @@ .set LOCALID_SAILOR, 1 .set LOCALID_SS_TIDAL, 2 -NavelRock_Harbor_MapScripts:: @ 82690BC +NavelRock_Harbor_MapScripts:: .byte 0 -NavelRock_Harbor_EventScript_Sailor:: @ 82690BD +NavelRock_Harbor_EventScript_Sailor:: lock faceplayer msgbox NavelRock_Harbor_Text_SailorReturn, MSGBOX_YESNO @@ -23,7 +23,7 @@ NavelRock_Harbor_EventScript_Sailor:: @ 82690BD release end -NavelRock_Harbor_EventScript_AsYouLike:: @ 8269102 +NavelRock_Harbor_EventScript_AsYouLike:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT release end diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc index b24aed23b824..4355699ee5d3 100644 --- a/data/maps/NavelRock_Top/scripts.inc +++ b/data/maps/NavelRock_Top/scripts.inc @@ -1,39 +1,39 @@ .set LOCALID_HO_OH, 1 -NavelRock_Top_MapScripts:: @ 8269113 +NavelRock_Top_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, NavelRock_Top_OnTransition map_script MAP_SCRIPT_ON_RESUME, NavelRock_Top_OnResume .byte 0 -NavelRock_Top_OnTransition: @ 826911E +NavelRock_Top_OnTransition: call_if_set FLAG_CAUGHT_HO_OH, NavelRock_Top_EventScript_HideHoOh call_if_unset FLAG_CAUGHT_HO_OH, NavelRock_Top_EventScript_TryShowHoOh end -NavelRock_Top_EventScript_HideHoOh:: @ 8269131 +NavelRock_Top_EventScript_HideHoOh:: setvar VAR_TEMP_1, 1 setflag FLAG_HIDE_HO_OH return -NavelRock_Top_EventScript_TryShowHoOh:: @ 826913A +NavelRock_Top_EventScript_TryShowHoOh:: setvar VAR_TEMP_1, 1 goto_if_set FLAG_DEFEATED_HO_OH, Common_EventScript_NopReturn setvar VAR_TEMP_1, 0 clearflag FLAG_HIDE_HO_OH return -NavelRock_Top_OnResume: @ 8269151 +NavelRock_Top_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, NavelRock_Top_EventScript_TryRemoveHoOh end -NavelRock_Top_EventScript_TryRemoveHoOh:: @ 826915B +NavelRock_Top_EventScript_TryRemoveHoOh:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_HO_OH return -NavelRock_Top_EventScript_HoOh:: @ 826916F +NavelRock_Top_EventScript_HoOh:: lockall setvar VAR_TEMP_1, 1 special SpawnCameraObject @@ -78,24 +78,24 @@ NavelRock_Top_EventScript_HoOh:: @ 826916F releaseall end -NavelRock_Top_EventScript_DefeatedHoOh:: @ 8269217 +NavelRock_Top_EventScript_DefeatedHoOh:: setflag FLAG_DEFEATED_HO_OH setvar VAR_0x8004, SPECIES_HO_OH goto Common_EventScript_LegendaryFlewAway end -NavelRock_Top_EventScript_RanFromHoOh:: @ 8269225 +NavelRock_Top_EventScript_RanFromHoOh:: setvar VAR_0x8004, SPECIES_HO_OH goto Common_EventScript_LegendaryFlewAway end -NavelRock_Top_Movement_CameraPanUp: @ 8269230 +NavelRock_Top_Movement_CameraPanUp: walk_up walk_up walk_up step_end -NavelRock_Top_Movement_CameraPanDown: @ 8269234 +NavelRock_Top_Movement_CameraPanDown: delay_16 delay_16 walk_down @@ -103,7 +103,7 @@ NavelRock_Top_Movement_CameraPanDown: @ 8269234 walk_down step_end -NavelRock_Top_Movement_HoOhApproach: @ 826923A +NavelRock_Top_Movement_HoOhApproach: walk_down walk_down walk_down @@ -114,7 +114,7 @@ NavelRock_Top_Movement_HoOhApproach: @ 826923A delay_16 step_end -NavelRock_Top_Movement_HoOhAppear: @ 8269243 +NavelRock_Top_Movement_HoOhAppear: delay_16 delay_16 walk_in_place_down diff --git a/data/maps/NavelRock_Up1/scripts.inc b/data/maps/NavelRock_Up1/scripts.inc index c85af5f0c989..5c73a3eb8677 100644 --- a/data/maps/NavelRock_Up1/scripts.inc +++ b/data/maps/NavelRock_Up1/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Up1_MapScripts:: @ 826910F +NavelRock_Up1_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Up2/scripts.inc b/data/maps/NavelRock_Up2/scripts.inc index 27ae52190938..69147ed1a554 100644 --- a/data/maps/NavelRock_Up2/scripts.inc +++ b/data/maps/NavelRock_Up2/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Up2_MapScripts:: @ 8269110 +NavelRock_Up2_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Up3/scripts.inc b/data/maps/NavelRock_Up3/scripts.inc index a9c3e2a3ce5d..c2cd971de451 100644 --- a/data/maps/NavelRock_Up3/scripts.inc +++ b/data/maps/NavelRock_Up3/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Up3_MapScripts:: @ 8269111 +NavelRock_Up3_MapScripts:: .byte 0 diff --git a/data/maps/NavelRock_Up4/scripts.inc b/data/maps/NavelRock_Up4/scripts.inc index c6beead6dab0..a3c1fa72dfb3 100644 --- a/data/maps/NavelRock_Up4/scripts.inc +++ b/data/maps/NavelRock_Up4/scripts.inc @@ -1,3 +1,3 @@ -NavelRock_Up4_MapScripts:: @ 8269112 +NavelRock_Up4_MapScripts:: .byte 0 diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc index d398a03ead3f..7bc134d5024d 100644 --- a/data/maps/NewMauville_Entrance/scripts.inc +++ b/data/maps/NewMauville_Entrance/scripts.inc @@ -1,14 +1,14 @@ -NewMauville_Entrance_MapScripts:: @ 82372AD +NewMauville_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, NewMauville_Entrance_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, NewMauville_Entrance_OnTransition .byte 0 -NewMauville_Entrance_OnLoad: @ 82372B8 +NewMauville_Entrance_OnLoad: compare VAR_NEW_MAUVILLE_STATE, 0 call_if_eq NewMauville_Entrance_EventScript_CloseDoor end -NewMauville_Entrance_EventScript_CloseDoor:: @ 82372C4 +NewMauville_Entrance_EventScript_CloseDoor:: setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile0, 1 setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile1, 1 setmetatile 5, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile2, 1 @@ -17,11 +17,11 @@ NewMauville_Entrance_EventScript_CloseDoor:: @ 82372C4 setmetatile 5, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile5, 1 return -NewMauville_Entrance_OnTransition: @ 82372FB +NewMauville_Entrance_OnTransition: setflag FLAG_LANDMARK_NEW_MAUVILLE end -NewMauville_Entrance_EventScript_Door:: @ 82372FF +NewMauville_Entrance_EventScript_Door:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 @@ -45,17 +45,17 @@ NewMauville_Entrance_EventScript_Door:: @ 82372FF releaseall end -NewMauville_Entrance_EventScript_DontOpenDoor:: @ 8237380 +NewMauville_Entrance_EventScript_DontOpenDoor:: releaseall end -NewMauville_Entrance_Text_DoorIsLocked: @ 8237382 +NewMauville_Entrance_Text_DoorIsLocked: .string "The door is locked.$" -NewMauville_Entrance_Text_UseBasementKey: @ 8237396 +NewMauville_Entrance_Text_UseBasementKey: .string "Use the BASEMENT KEY?$" -NewMauville_Entrance_Text_UsedBasementKey: @ 82373AC +NewMauville_Entrance_Text_UsedBasementKey: .string "{PLAYER} used the BASEMENT KEY.\p" .string "The door opened!$" diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc index 7675799eb96c..ac9572ea85f2 100644 --- a/data/maps/NewMauville_Inside/scripts.inc +++ b/data/maps/NewMauville_Inside/scripts.inc @@ -1,10 +1,10 @@ -NewMauville_Inside_MapScripts:: @ 82373D7 +NewMauville_Inside_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, NewMauville_Inside_OnResume map_script MAP_SCRIPT_ON_TRANSITION, NewMauville_Inside_OnTransition map_script MAP_SCRIPT_ON_LOAD, NewMauville_Inside_OnLoad .byte 0 -NewMauville_Inside_OnResume: @ 82373E7 +NewMauville_Inside_OnResume: compare VAR_TEMP_1, 1 call_if_eq NewMauville_Inside_EventScript_SetBarrierStateBlueButton compare VAR_TEMP_2, 1 @@ -12,14 +12,14 @@ NewMauville_Inside_OnResume: @ 82373E7 call_if_set FLAG_SYS_CTRL_OBJ_DELETE, NewMauville_Inside_EventScript_TryRemoveVoltorb end -NewMauville_Inside_EventScript_TryRemoveVoltorb:: @ 8237407 +NewMauville_Inside_EventScript_TryRemoveVoltorb:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -NewMauville_Inside_OnTransition: @ 823741B +NewMauville_Inside_OnTransition: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 call_if_unset FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE, NewMauville_Inside_EventScript_ShowVoltorb1 @@ -27,24 +27,24 @@ NewMauville_Inside_OnTransition: @ 823741B call_if_unset FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE, NewMauville_Inside_EventScript_ShowVoltorb3 end -NewMauville_Inside_EventScript_ShowVoltorb1:: @ 8237441 +NewMauville_Inside_EventScript_ShowVoltorb1:: clearflag FLAG_HIDE_NEW_MAUVILLE_VOLTORB_1 return -NewMauville_Inside_EventScript_ShowVoltorb2:: @ 8237445 +NewMauville_Inside_EventScript_ShowVoltorb2:: clearflag FLAG_HIDE_NEW_MAUVILLE_VOLTORB_2 return -NewMauville_Inside_EventScript_ShowVoltorb3:: @ 8237449 +NewMauville_Inside_EventScript_ShowVoltorb3:: clearflag FLAG_HIDE_NEW_MAUVILLE_VOLTORB_3 return -NewMauville_Inside_OnLoad: @ 823744D +NewMauville_Inside_OnLoad: compare VAR_NEW_MAUVILLE_STATE, 2 call_if_eq NewMauville_Inside_EventScript_SetGeneratorOffMetatiles end -NewMauville_Inside_EventScript_BlueButton:: @ 8237459 +NewMauville_Inside_EventScript_BlueButton:: lockall setvar VAR_TEMP_1, 1 setvar VAR_TEMP_2, 0 @@ -54,7 +54,7 @@ NewMauville_Inside_EventScript_BlueButton:: @ 8237459 releaseall end -NewMauville_Inside_EventScript_GreenButton:: @ 8237471 +NewMauville_Inside_EventScript_GreenButton:: lockall setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 1 @@ -64,7 +64,7 @@ NewMauville_Inside_EventScript_GreenButton:: @ 8237471 releaseall end -NewMauville_Inside_EventScript_SetBarrierStateBlueButton:: @ 8237489 +NewMauville_Inside_EventScript_SetBarrierStateBlueButton:: setmetatile 23, 34, METATILE_BikeShop_Barrier_Hidden_Top, 1 setmetatile 23, 35, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 setmetatile 23, 36, METATILE_BikeShop_Floor_Shadow_Top, 0 @@ -104,7 +104,7 @@ NewMauville_Inside_EventScript_SetBarrierStateBlueButton:: @ 8237489 setmetatile 18, 36, METATILE_BikeShop_Button_Green, 0 return -NewMauville_Inside_EventScript_SetBarrierStateGreenButton:: @ 82375D7 +NewMauville_Inside_EventScript_SetBarrierStateGreenButton:: setmetatile 23, 34, METATILE_BikeShop_Barrier_Blue_Top, 1 setmetatile 23, 35, METATILE_BikeShop_Barrier_Blue_TopMid, 1 setmetatile 23, 36, METATILE_BikeShop_Barrier_Blue_BottomMid, 1 @@ -144,7 +144,7 @@ NewMauville_Inside_EventScript_SetBarrierStateGreenButton:: @ 82375D7 setmetatile 30, 38, METATILE_BikeShop_Button_Blue, 0 return -NewMauville_Inside_EventScript_RedButton:: @ 8237725 +NewMauville_Inside_EventScript_RedButton:: lockall msgbox NewMauville_Inside_Text_SteppedOnSwitchGeneratorStopped, MSGBOX_DEFAULT call NewMauville_Inside_EventScript_SetGeneratorOffMetatiles @@ -152,7 +152,7 @@ NewMauville_Inside_EventScript_RedButton:: @ 8237725 releaseall end -NewMauville_Inside_EventScript_SetGeneratorOffMetatiles:: @ 823773A +NewMauville_Inside_EventScript_SetGeneratorOffMetatiles:: setmetatile 33, 6, METATILE_BikeShop_Button_Pressed, 0 setmetatile 32, 2, METATILE_BikeShop_Generator_Off_Tile0, 1 setmetatile 33, 2, METATILE_BikeShop_Generator_Off_Tile1, 1 @@ -165,7 +165,7 @@ NewMauville_Inside_EventScript_SetGeneratorOffMetatiles:: @ 823773A special DrawWholeMapView return -NewMauville_Inside_EventScript_Generator:: @ 823778F +NewMauville_Inside_EventScript_Generator:: lockall compare VAR_NEW_MAUVILLE_STATE, 2 goto_if_eq NewMauville_Inside_EventScript_GeneratorOff @@ -173,12 +173,12 @@ NewMauville_Inside_EventScript_Generator:: @ 823778F releaseall end -NewMauville_Inside_EventScript_GeneratorOff:: @ 82377A5 +NewMauville_Inside_EventScript_GeneratorOff:: msgbox NewMauville_Inside_Text_GeneratorQuietedDown, MSGBOX_DEFAULT releaseall end -NewMauville_Inside_EventScript_Voltorb1:: @ 82377AF +NewMauville_Inside_EventScript_Voltorb1:: lock faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE @@ -200,12 +200,12 @@ NewMauville_Inside_EventScript_Voltorb1:: @ 82377AF release end -NewMauville_Inside_EventScript_DefeatedVoltorb1:: @ 82377F3 +NewMauville_Inside_EventScript_DefeatedVoltorb1:: setflag FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE goto Common_EventScript_RemoveStaticPokemon end -NewMauville_Inside_EventScript_Voltorb2:: @ 82377FC +NewMauville_Inside_EventScript_Voltorb2:: lock faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE @@ -227,12 +227,12 @@ NewMauville_Inside_EventScript_Voltorb2:: @ 82377FC release end -NewMauville_Inside_EventScript_DefeatedVoltorb2:: @ 8237840 +NewMauville_Inside_EventScript_DefeatedVoltorb2:: setflag FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE goto Common_EventScript_RemoveStaticPokemon end -NewMauville_Inside_EventScript_Voltorb3:: @ 8237849 +NewMauville_Inside_EventScript_Voltorb3:: lock faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE @@ -254,21 +254,21 @@ NewMauville_Inside_EventScript_Voltorb3:: @ 8237849 release end -NewMauville_Inside_EventScript_DefeatedVoltorb3:: @ 823788D +NewMauville_Inside_EventScript_DefeatedVoltorb3:: setflag FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE goto Common_EventScript_RemoveStaticPokemon end -NewMauville_Inside_Text_GeneratorRadiatingHeat: @ 8237896 +NewMauville_Inside_Text_GeneratorRadiatingHeat: .string "The generator is radiating heat that\n" .string "can be felt even at a distance.\p" .string "It looks like it should be turned off\n" .string "as soon as possible.$" -NewMauville_Inside_Text_GeneratorQuietedDown: @ 8237916 +NewMauville_Inside_Text_GeneratorQuietedDown: .string "The generator quieted down.$" -NewMauville_Inside_Text_SteppedOnSwitchGeneratorStopped: @ 8237932 +NewMauville_Inside_Text_SteppedOnSwitchGeneratorStopped: .string "{PLAYER} stepped on the switch.\p" .string "Click…\p" .string "… … … … … … … …\n" diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc index 593215357260..8ba0e4d25dff 100644 --- a/data/maps/OldaleTown/scripts.inc +++ b/data/maps/OldaleTown/scripts.inc @@ -2,11 +2,11 @@ .set LOCALID_FOOTPRINTS_MAN, 3 .set LOCALID_RIVAL, 4 -OldaleTown_MapScripts:: @ 81E8EA2 +OldaleTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, OldaleTown_OnTransition .byte 0 -OldaleTown_OnTransition: @ 81E8EA8 +OldaleTown_OnTransition: call Common_EventScript_SetupRivalGfxId setflag FLAG_VISITED_OLDALE_TOWN call_if_unset FLAG_ADVENTURE_STARTED, OldaleTown_EventScript_BlockWestEntrance @@ -15,29 +15,29 @@ OldaleTown_OnTransition: @ 81E8EA8 end @ This script seems pointless because nothing uses VAR_OLDALE_TOWN_STATE -OldaleTown_EventScript_SetOldaleState:: @ 81E8ECC +OldaleTown_EventScript_SetOldaleState:: setvar VAR_OLDALE_TOWN_STATE, 1 return -OldaleTown_EventScript_BlockWestEntrance:: @ 81E8ED2 +OldaleTown_EventScript_BlockWestEntrance:: setobjectxyperm LOCALID_FOOTPRINTS_MAN, 1, 11 setobjectmovementtype LOCALID_FOOTPRINTS_MAN, MOVEMENT_TYPE_FACE_LEFT return -OldaleTown_EventScript_MoveMartEmployee:: @ 81E8EDE +OldaleTown_EventScript_MoveMartEmployee:: setobjectxyperm LOCALID_MART_EMPLOYEE, 13, 14 setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN return -OldaleTown_EventScript_CitySign:: @ 81E8EEA +OldaleTown_EventScript_CitySign:: msgbox OldaleTown_Text_CitySign, MSGBOX_SIGN end -OldaleTown_EventScript_Girl:: @ 81E8EF3 +OldaleTown_EventScript_Girl:: msgbox OldaleTown_Text_SavingMyProgress, MSGBOX_NPC end -OldaleTown_EventScript_MartEmployee:: @ 81E8EFC +OldaleTown_EventScript_MartEmployee:: lock faceplayer goto_if_set FLAG_RECEIVED_POTION_OLDALE, OldaleTown_EventScript_ExplainPotion @@ -52,28 +52,28 @@ OldaleTown_EventScript_MartEmployee:: @ 81E8EFC case DIR_EAST, OldaleTown_EventScript_GoToMartEast end -OldaleTown_EventScript_GoToMartSouth:: @ 81E8F47 +OldaleTown_EventScript_GoToMartSouth:: applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeSouth applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerSouth waitmovement 0 goto OldaleTown_EventScript_ExplainPokemonMart end -OldaleTown_EventScript_GoToMartNorth:: @ 81E8F5E +OldaleTown_EventScript_GoToMartNorth:: applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeNorth applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerNorth waitmovement 0 goto OldaleTown_EventScript_ExplainPokemonMart end -OldaleTown_EventScript_GoToMartEast:: @ 81E8F75 +OldaleTown_EventScript_GoToMartEast:: applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerEast applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeEast waitmovement 0 goto OldaleTown_EventScript_ExplainPokemonMart end -OldaleTown_EventScript_ExplainPokemonMart:: @ 81E8F8C +OldaleTown_EventScript_ExplainPokemonMart:: msgbox OldaleTown_Text_ThisIsAPokemonMart, MSGBOX_DEFAULT giveitem ITEM_POTION compare VAR_RESULT, FALSE @@ -84,18 +84,18 @@ OldaleTown_EventScript_ExplainPokemonMart:: @ 81E8F8C release end -OldaleTown_EventScript_ExplainPotion:: @ 81E8FB9 +OldaleTown_EventScript_ExplainPotion:: msgbox OldaleTown_Text_PotionExplanation, MSGBOX_DEFAULT release end -OldaleTown_EventScript_BagIsFull:: @ 81E8FC3 +OldaleTown_EventScript_BagIsFull:: msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT fadedefaultbgm release end -OldaleTown_Movement_EmployeeEast: @ 81E8FCE +OldaleTown_Movement_EmployeeEast: walk_up walk_up walk_up @@ -106,7 +106,7 @@ OldaleTown_Movement_EmployeeEast: @ 81E8FCE walk_in_place_fastest_down step_end -OldaleTown_Movement_EmployeeSouth: @ 81E8FD7 +OldaleTown_Movement_EmployeeSouth: walk_left walk_up walk_up @@ -119,7 +119,7 @@ OldaleTown_Movement_EmployeeSouth: @ 81E8FD7 walk_in_place_fastest_down step_end -OldaleTown_Movement_EmployeeNorth: @ 81E8FE2 +OldaleTown_Movement_EmployeeNorth: walk_up walk_up walk_up @@ -130,7 +130,7 @@ OldaleTown_Movement_EmployeeNorth: @ 81E8FE2 walk_in_place_fastest_down step_end -OldaleTown_Movement_Unknown1: @ 81E8FEB +OldaleTown_Movement_Unknown1: walk_up walk_up walk_right @@ -146,7 +146,7 @@ OldaleTown_Movement_Unknown1: @ 81E8FEB walk_in_place_fastest_down step_end -OldaleTown_Movement_PlayerEast: @ 81E8FF9 +OldaleTown_Movement_PlayerEast: walk_right walk_up walk_up @@ -156,7 +156,7 @@ OldaleTown_Movement_PlayerEast: @ 81E8FF9 walk_up step_end -OldaleTown_Movement_PlayerSouth: @ 81E9001 +OldaleTown_Movement_PlayerSouth: delay_16 delay_16 delay_16 @@ -168,7 +168,7 @@ OldaleTown_Movement_PlayerSouth: @ 81E9001 walk_up step_end -OldaleTown_Movement_PlayerNorth: @ 81E900B +OldaleTown_Movement_PlayerNorth: walk_up walk_up walk_up @@ -178,7 +178,7 @@ OldaleTown_Movement_PlayerNorth: @ 81E900B walk_up step_end -OldaleTown_Movement_Unknown2: @ 81E9013 +OldaleTown_Movement_Unknown2: walk_left walk_up walk_up @@ -192,7 +192,7 @@ OldaleTown_Movement_Unknown2: @ 81E9013 walk_up step_end -OldaleTown_EventScript_FootprintsMan:: @ 81E901F +OldaleTown_EventScript_FootprintsMan:: lock faceplayer goto_if_set FLAG_ADVENTURE_STARTED, OldaleTown_EventScript_NotBlockingPath @@ -203,7 +203,7 @@ OldaleTown_EventScript_FootprintsMan:: @ 81E901F release end -OldaleTown_EventScript_BlockedPath:: @ 81E903F +OldaleTown_EventScript_BlockedPath:: lockall applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerStepBack applymovement LOCALID_FOOTPRINTS_MAN, OldaleTown_Movement_BackUp @@ -215,12 +215,12 @@ OldaleTown_EventScript_BlockedPath:: @ 81E903F releaseall end -OldaleTown_EventScript_NotBlockingPath:: @ 81E9066 +OldaleTown_EventScript_NotBlockingPath:: msgbox OldaleTown_Text_FinishedSketchingFootprints, MSGBOX_DEFAULT release end -OldaleTown_EventScript_Rival:: @ 81E9070 +OldaleTown_EventScript_Rival:: lockall applymovement LOCALID_RIVAL, Common_Movement_FacePlayer waitmovement 0 @@ -228,7 +228,7 @@ OldaleTown_EventScript_Rival:: @ 81E9070 goto OldaleTown_EventScript_ShowRivalMessage end -OldaleTown_EventScript_RivalTrigger1:: @ 81E9086 +OldaleTown_EventScript_RivalTrigger1:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer1 waitmovement 0 @@ -238,7 +238,7 @@ OldaleTown_EventScript_RivalTrigger1:: @ 81E9086 goto OldaleTown_EventScript_ShowRivalMessage end -OldaleTown_EventScript_RivalTrigger2:: @ 81E90A6 +OldaleTown_EventScript_RivalTrigger2:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer2 waitmovement 0 @@ -248,7 +248,7 @@ OldaleTown_EventScript_RivalTrigger2:: @ 81E90A6 goto OldaleTown_EventScript_ShowRivalMessage end -OldaleTown_EventScript_RivalTrigger3:: @ 81E90C6 +OldaleTown_EventScript_RivalTrigger3:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer3 waitmovement 0 @@ -258,7 +258,7 @@ OldaleTown_EventScript_RivalTrigger3:: @ 81E90C6 goto OldaleTown_EventScript_ShowRivalMessage end -OldaleTown_EventScript_ShowRivalMessage:: @ 81E90E6 +OldaleTown_EventScript_ShowRivalMessage:: checkplayergender compare VAR_RESULT, MALE goto_if_eq OldaleTown_EventScript_ShowMayMessage @@ -266,17 +266,17 @@ OldaleTown_EventScript_ShowRivalMessage:: @ 81E90E6 goto_if_eq OldaleTown_EventScript_ShowBrendanMessage end -OldaleTown_EventScript_ShowMayMessage:: @ 81E90FE +OldaleTown_EventScript_ShowMayMessage:: msgbox OldaleTown_Text_MayLetsGoBack, MSGBOX_DEFAULT goto OldaleTown_EventScript_RivalFinish end -OldaleTown_EventScript_ShowBrendanMessage:: @ 81E910C +OldaleTown_EventScript_ShowBrendanMessage:: msgbox OldaleTown_Text_BrendanLetsGoBack, MSGBOX_DEFAULT goto OldaleTown_EventScript_RivalFinish end -OldaleTown_EventScript_RivalFinish:: @ 81E911A +OldaleTown_EventScript_RivalFinish:: closemessage compare VAR_0x8009, 0 call_if_eq OldaleTown_EventScript_DoExitMovement1 @@ -290,33 +290,33 @@ OldaleTown_EventScript_RivalFinish:: @ 81E911A releaseall end -OldaleTown_EventScript_DoExitMovement1:: @ 81E9148 +OldaleTown_EventScript_DoExitMovement1:: compare VAR_FACING, DIR_SOUTH goto_if_ne OldaleTown_EventScript_DoExitMovement2 applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit waitmovement 0 return -OldaleTown_EventScript_DoExitMovement2:: @ 81E915E +OldaleTown_EventScript_DoExitMovement2:: applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_WatchRivalExit applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit waitmovement 0 return -OldaleTown_Movement_RivalApproachPlayer1: @ 81E9170 +OldaleTown_Movement_RivalApproachPlayer1: walk_left walk_left step_end -OldaleTown_Movement_RivalApproachPlayer2: @ 81E9173 +OldaleTown_Movement_RivalApproachPlayer2: walk_left step_end -OldaleTown_Movement_RivalApproachPlayer3: @ 81E9175 +OldaleTown_Movement_RivalApproachPlayer3: face_left step_end -OldaleTown_Movement_RivalExit: @ 81E9177 +OldaleTown_Movement_RivalExit: walk_down walk_down walk_down @@ -325,18 +325,18 @@ OldaleTown_Movement_RivalExit: @ 81E9177 walk_down step_end -OldaleTown_Movement_WatchRivalExit: @ 81E917E +OldaleTown_Movement_WatchRivalExit: delay_8 delay_4 walk_in_place_fastest_down step_end -OldaleTown_Movement_PlayerStepBack: @ 81E9182 +OldaleTown_Movement_PlayerStepBack: delay_8 walk_right step_end -OldaleTown_Movement_BackUp: @ 81E9185 +OldaleTown_Movement_BackUp: walk_fast_up walk_in_place_fastest_left lock_facing_direction @@ -344,21 +344,21 @@ OldaleTown_Movement_BackUp: @ 81E9185 unlock_facing_direction step_end -OldaleTown_Movement_ReturnToOriginalPosition: @ 81E918B +OldaleTown_Movement_ReturnToOriginalPosition: walk_down walk_left step_end -OldaleTown_Text_SavingMyProgress: @ 81E918E +OldaleTown_Text_SavingMyProgress: .string "I want to take a rest, so I'm saving my\n" .string "progress.$" -OldaleTown_Text_IWorkAtPokemonMart: @ 81E91C0 +OldaleTown_Text_IWorkAtPokemonMart: .string "Hi!\n" .string "I work at a POKéMON MART.\p" .string "Can I get you to come with me?$" -OldaleTown_Text_ThisIsAPokemonMart: @ 81E91FD +OldaleTown_Text_ThisIsAPokemonMart: .string "This is a POKéMON MART.\n" .string "Just look for our blue roof.\p" .string "We sell a variety of goods including\n" @@ -366,12 +366,12 @@ OldaleTown_Text_ThisIsAPokemonMart: @ 81E91FD .string "Here, I'd like you to have this as\n" .string "a promotional item.$" -OldaleTown_Text_PotionExplanation: @ 81E92AF +OldaleTown_Text_PotionExplanation: .string "A POTION can be used anytime, so it's\n" .string "even more useful than a POKéMON CENTER\l" .string "in certain situations.$" -OldaleTown_Text_WaitDontComeInHere: @ 81E9313 +OldaleTown_Text_WaitDontComeInHere: .string "Aaaaah! Wait!\n" .string "Please don't come in here.\p" .string "I just discovered the footprints of\n" @@ -379,29 +379,29 @@ OldaleTown_Text_WaitDontComeInHere: @ 81E9313 .string "Wait until I finish sketching\n" .string "them, okay?$" -OldaleTown_Text_DiscoveredFootprints: @ 81E939A +OldaleTown_Text_DiscoveredFootprints: .string "I just discovered the footprints of\n" .string "a rare POKéMON!\p" .string "Wait until I finish sketching\n" .string "them, okay?$" -OldaleTown_Text_FinishedSketchingFootprints: @ 81E93F8 +OldaleTown_Text_FinishedSketchingFootprints: .string "I finished sketching the footprints of\n" .string "a rare POKéMON.\p" .string "But it turns out they were only my\n" .string "own footprints…$" -OldaleTown_Text_MayLetsGoBack: @ 81E9462 +OldaleTown_Text_MayLetsGoBack: .string "MAY: {PLAYER}{KUN}!\n" .string "Over here!\l" .string "Let's hurry home!$" -OldaleTown_Text_BrendanLetsGoBack: @ 81E948A +OldaleTown_Text_BrendanLetsGoBack: .string "BRENDAN: I'm heading back to my dad's\n" .string "LAB now.\l" .string "{PLAYER}, you should hustle back, too.$" -OldaleTown_Text_CitySign: @ 81E94DA +OldaleTown_Text_CitySign: .string "OLDALE TOWN\n" .string "“Where things start off scarce.”$" diff --git a/data/maps/OldaleTown_House1/scripts.inc b/data/maps/OldaleTown_House1/scripts.inc index 1cb5622efe67..5211f583edab 100644 --- a/data/maps/OldaleTown_House1/scripts.inc +++ b/data/maps/OldaleTown_House1/scripts.inc @@ -1,11 +1,11 @@ -OldaleTown_House1_MapScripts:: @ 81FBE85 +OldaleTown_House1_MapScripts:: .byte 0 -OldaleTown_House1_EventScript_Woman:: @ 81FBE86 +OldaleTown_House1_EventScript_Woman:: msgbox OldaleTown_House1_Text_LeftPokemonGoesOutFirst, MSGBOX_NPC end -OldaleTown_House1_Text_LeftPokemonGoesOutFirst: @ 81FBE8F +OldaleTown_House1_Text_LeftPokemonGoesOutFirst: .string "When a POKéMON battle starts, the one\n" .string "at the left of the list goes out first.\p" .string "So, when you get more POKéMON in your\n" diff --git a/data/maps/OldaleTown_House2/scripts.inc b/data/maps/OldaleTown_House2/scripts.inc index 3259e319c223..49e317bac45a 100644 --- a/data/maps/OldaleTown_House2/scripts.inc +++ b/data/maps/OldaleTown_House2/scripts.inc @@ -1,19 +1,19 @@ -OldaleTown_House2_MapScripts:: @ 81FBF5A +OldaleTown_House2_MapScripts:: .byte 0 -OldaleTown_House2_EventScript_Woman:: @ 81FBF5B +OldaleTown_House2_EventScript_Woman:: msgbox OldaleTown_House2_Text_PokemonLevelUp, MSGBOX_NPC end -OldaleTown_House2_EventScript_Man:: @ 81FBF64 +OldaleTown_House2_EventScript_Man:: msgbox OldaleTown_House2_Text_YoullGoFurtherWithStrongPokemon, MSGBOX_NPC end -OldaleTown_House2_Text_PokemonLevelUp: @ 81FBF6D +OldaleTown_House2_Text_PokemonLevelUp: .string "When POKéMON battle, they eventually\n" .string "level up and become stronger.$" -OldaleTown_House2_Text_YoullGoFurtherWithStrongPokemon: @ 81FBFB0 +OldaleTown_House2_Text_YoullGoFurtherWithStrongPokemon: .string "If the POKéMON with you become\n" .string "stronger, you'll be able to go farther\l" .string "away from here.$" diff --git a/data/maps/OldaleTown_Mart/scripts.inc b/data/maps/OldaleTown_Mart/scripts.inc index 33d26cbfb148..fa97dfe8d7fa 100644 --- a/data/maps/OldaleTown_Mart/scripts.inc +++ b/data/maps/OldaleTown_Mart/scripts.inc @@ -1,7 +1,7 @@ -OldaleTown_Mart_MapScripts:: @ 81FC23F +OldaleTown_Mart_MapScripts:: .byte 0 -OldaleTown_Mart_EventScript_Clerk:: @ 81FC240 +OldaleTown_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ OldaleTown_Mart_EventScript_Clerk:: @ 81FC240 release end -OldaleTown_Mart_Pokemart_Basic: @ 81FC260 +OldaleTown_Mart_Pokemart_Basic: .2byte ITEM_POTION .2byte ITEM_ANTIDOTE .2byte ITEM_PARALYZE_HEAL @@ -21,14 +21,14 @@ OldaleTown_Mart_Pokemart_Basic: @ 81FC260 release end -OldaleTown_Mart_ExpandedItems:: @ 81FC26C +OldaleTown_Mart_ExpandedItems:: pokemart OldaleTown_Mart_Pokemart_Expanded msgbox gText_PleaseComeAgain, MSGBOX_DEFAULT release end .align 2 -OldaleTown_Mart_Pokemart_Expanded: @ 81FC27C +OldaleTown_Mart_Pokemart_Expanded: .2byte ITEM_POKE_BALL .2byte ITEM_POTION .2byte ITEM_ANTIDOTE @@ -38,7 +38,7 @@ OldaleTown_Mart_Pokemart_Expanded: @ 81FC27C release end -OldaleTown_Mart_EventScript_Woman:: @ 81FC28A +OldaleTown_Mart_EventScript_Woman:: lock faceplayer goto_if_set FLAG_ADVENTURE_STARTED, OldaleTown_Mart_EventScript_PokeBallsInStock @@ -46,24 +46,24 @@ OldaleTown_Mart_EventScript_Woman:: @ 81FC28A release end -OldaleTown_Mart_EventScript_PokeBallsInStock:: @ 81FC29F +OldaleTown_Mart_EventScript_PokeBallsInStock:: msgbox OldaleTown_Mart_Text_ImGoingToBuyPokeBalls, MSGBOX_DEFAULT release end -OldaleTown_Mart_EventScript_Boy:: @ 81FC2A9 +OldaleTown_Mart_EventScript_Boy:: msgbox OldaleTown_Mart_Text_RestoreHPWithPotion, MSGBOX_NPC end -OldaleTown_Mart_Text_PokeBallsAreSoldOut: @ 81FC2B2 +OldaleTown_Mart_Text_PokeBallsAreSoldOut: .string "The clerk says they're all sold out.\n" .string "I can't buy any POKé BALLS.$" -OldaleTown_Mart_Text_ImGoingToBuyPokeBalls: @ 81FC2F3 +OldaleTown_Mart_Text_ImGoingToBuyPokeBalls: .string "I'm going to buy a bunch of POKé BALLS\n" .string "and catch a bunch of POKéMON!$" -OldaleTown_Mart_Text_RestoreHPWithPotion: @ 81FC338 +OldaleTown_Mart_Text_RestoreHPWithPotion: .string "If a POKéMON gets hurt and loses its HP\n" .string "and faints, it won't be able to battle.\p" .string "To prevent your POKéMON from fainting,\n" diff --git a/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc b/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc index 0918f3c39d24..07549592f81e 100644 --- a/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -OldaleTown_PokemonCenter_1F_MapScripts:: @ 81FC006 +OldaleTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, OldaleTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -OldaleTown_PokemonCenter_1F_OnTransition: @ 81FC011 +OldaleTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_OLDALE_TOWN call Common_EventScript_UpdateBrineyLocation end -OldaleTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FC01A +OldaleTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,15 +18,15 @@ OldaleTown_PokemonCenter_1F_EventScript_Nurse:: @ 81FC01A release end -OldaleTown_PokemonCenter_1F_EventScript_Gentleman:: @ 81FC028 +OldaleTown_PokemonCenter_1F_EventScript_Gentleman:: msgbox OldaleTown_PokemonCenter_1F_Text_TrainersCanUsePC, MSGBOX_NPC end -OldaleTown_PokemonCenter_1F_EventScript_Boy:: @ 81FC031 +OldaleTown_PokemonCenter_1F_EventScript_Boy:: msgbox OldaleTown_PokemonCenter_1F_Text_PokemonCentersAreGreat, MSGBOX_NPC end -OldaleTown_PokemonCenter_1F_EventScript_Girl:: @ 81FC03A +OldaleTown_PokemonCenter_1F_EventScript_Girl:: lock faceplayer goto_if_set FLAG_SYS_POKEDEX_GET, OldaleTown_PokemonCenter_1F_EventScript_WirelessClubAvailable @@ -34,30 +34,30 @@ OldaleTown_PokemonCenter_1F_EventScript_Girl:: @ 81FC03A release end -OldaleTown_PokemonCenter_1F_EventScript_WirelessClubAvailable:: @ 81FC04F +OldaleTown_PokemonCenter_1F_EventScript_WirelessClubAvailable:: msgbox OldaleTown_PokemonCenter_1F_Text_TradedInWirelessClub, MSGBOX_DEFAULT release end -OldaleTown_PokemonCenter_1F_Text_TrainersCanUsePC: @ 81FC059 +OldaleTown_PokemonCenter_1F_Text_TrainersCanUsePC: .string "That PC in the corner there is\n" .string "for any POKéMON TRAINER to use.\p" .string "Naturally, that means you're welcome\n" .string "to use it, too.$" -OldaleTown_PokemonCenter_1F_Text_PokemonCentersAreGreat: @ 81FC0CD +OldaleTown_PokemonCenter_1F_Text_PokemonCentersAreGreat: .string "POKéMON CENTERS are great!\p" .string "You can use their services as much\n" .string "as you like, and it's all for free.\l" .string "You never have to worry!$" -OldaleTown_PokemonCenter_1F_Text_WirelessClubNotAvailable: @ 81FC148 +OldaleTown_PokemonCenter_1F_Text_WirelessClubNotAvailable: .string "The POKéMON WIRELESS CLUB on\n" .string "the second floor was built recently.\p" .string "But they say they're still making\n" .string "adjustments.$" -OldaleTown_PokemonCenter_1F_Text_TradedInWirelessClub: @ 81FC1B9 +OldaleTown_PokemonCenter_1F_Text_TradedInWirelessClub: .string "The POKéMON WIRELESS CLUB on\n" .string "the second floor was built recently.\p" .string "I traded POKéMON right away.$" diff --git a/data/maps/OldaleTown_PokemonCenter_2F/scripts.inc b/data/maps/OldaleTown_PokemonCenter_2F/scripts.inc index 125805f50f57..4dbe7cdd1db8 100644 --- a/data/maps/OldaleTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/OldaleTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -OldaleTown_PokemonCenter_2F_MapScripts:: @ 81FC218 +OldaleTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ OldaleTown_PokemonCenter_2F_MapScripts:: @ 81FC218 .byte 0 @ The below 3 are unused and leftover from RS -OldaleTown_PokemonCenter_2F_EventScript_Colosseum:: @ 81FC22D +OldaleTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -OldaleTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 81FC233 +OldaleTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -OldaleTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 81FC239 +OldaleTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/PacifidlogTown/scripts.inc b/data/maps/PacifidlogTown/scripts.inc index fc491cfe302c..384fa0753cdd 100644 --- a/data/maps/PacifidlogTown/scripts.inc +++ b/data/maps/PacifidlogTown/scripts.inc @@ -1,44 +1,44 @@ -PacifidlogTown_MapScripts:: @ 81EBAB1 +PacifidlogTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, PacifidlogTown_OnTransition map_script MAP_SCRIPT_ON_RESUME, PacifidlogTown_OnResume .byte 0 -PacifidlogTown_OnTransition: @ 81EBABC +PacifidlogTown_OnTransition: setflag FLAG_VISITED_PACIFIDLOG_TOWN end -PacifidlogTown_OnResume: @ 81EBAC0 +PacifidlogTown_OnResume: setstepcallback STEP_CB_PACIFIDLOG_BRIDGE end -PacifidlogTown_EventScript_NinjaBoy:: @ 81EBAC3 +PacifidlogTown_EventScript_NinjaBoy:: msgbox PacifidlogTown_Text_NeatHousesOnWater, MSGBOX_NPC end -PacifidlogTown_EventScript_Girl:: @ 81EBACC +PacifidlogTown_EventScript_Girl:: msgbox PacifidlogTown_Text_FastRunningCurrent, MSGBOX_NPC end -PacifidlogTown_EventScript_Fisherman:: @ 81EBAD5 +PacifidlogTown_EventScript_Fisherman:: msgbox PacifidlogTown_Text_SkyPillarTooScary, MSGBOX_NPC end -PacifidlogTown_EventScript_TownSign:: @ 81EBADE +PacifidlogTown_EventScript_TownSign:: msgbox PacifidlogTown_Text_TownSign, MSGBOX_SIGN end -PacifidlogTown_Text_FastRunningCurrent: @ 81EBAE7 +PacifidlogTown_Text_FastRunningCurrent: .string "The sea between PACIFIDLOG and\n" .string "SLATEPORT has a fast-running tide.\p" .string "If you decide to SURF, you could end\n" .string "up swept away somewhere else.$" -PacifidlogTown_Text_NeatHousesOnWater: @ 81EBB6C +PacifidlogTown_Text_NeatHousesOnWater: .string "See, isn't it neat?\n" .string "These houses are on water!\p" .string "I was born here!$" -PacifidlogTown_Text_SkyPillarTooScary: @ 81EBBAC +PacifidlogTown_Text_SkyPillarTooScary: .string "The SKY PILLAR?\p" .string "…Oh, you must mean that tall, tall\n" .string "tower a little further out.\p" @@ -47,7 +47,7 @@ PacifidlogTown_Text_SkyPillarTooScary: @ 81EBBAC .string "Life at sea level in PACIFIDLOG,\n" .string "that suits me fine.$" -PacifidlogTown_Text_TownSign: @ 81EBC7A +PacifidlogTown_Text_TownSign: .string "PACIFIDLOG TOWN\p" .string "“Where the morning sun smiles upon\n" .string "the waters.”$" diff --git a/data/maps/PacifidlogTown_House1/scripts.inc b/data/maps/PacifidlogTown_House1/scripts.inc index 7759cb29a6a9..b3a39a59d825 100644 --- a/data/maps/PacifidlogTown_House1/scripts.inc +++ b/data/maps/PacifidlogTown_House1/scripts.inc @@ -1,15 +1,15 @@ -PacifidlogTown_House1_MapScripts:: @ 820365C +PacifidlogTown_House1_MapScripts:: .byte 0 -PacifidlogTown_House1_EventScript_Man:: @ 820365D +PacifidlogTown_House1_EventScript_Man:: msgbox PacifidlogTown_House1_Text_RegiStory, MSGBOX_NPC end -PacifidlogTown_House1_EventScript_Woman:: @ 8203666 +PacifidlogTown_House1_EventScript_Woman:: msgbox PacifidlogTown_House1_Text_SixDotsOpenThreeDoors, MSGBOX_NPC end -PacifidlogTown_House1_Text_RegiStory: @ 820366F +PacifidlogTown_House1_Text_RegiStory: .string "In the HOENN region, there are three\n" .string "POKéMON that represent the power of\l" .string "rock, ice, and steel.\p" @@ -18,7 +18,7 @@ PacifidlogTown_House1_Text_RegiStory: @ 820366F .string "That's the story I heard when I was\n" .string "just a little kid.$" -PacifidlogTown_House1_Text_SixDotsOpenThreeDoors: @ 820373A +PacifidlogTown_House1_Text_SixDotsOpenThreeDoors: .string "“Six dots open three doors.”\p" .string "Grandpa used to say that, but I don't\n" .string "know what he meant.$" diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index 60b6c9961e83..3c0be269e26c 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -1,7 +1,7 @@ -PacifidlogTown_House2_MapScripts:: @ 8203791 +PacifidlogTown_House2_MapScripts:: .byte 0 -PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: @ 8203792 +PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: lock faceplayer dotimebasedevents @@ -19,27 +19,27 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: @ 8203792 goto PacifidlogTown_House2_EventScript_GiveFrustration end -PacifidlogTown_House2_EventScript_UpdateFanClubTMFlag:: @ 82037DE +PacifidlogTown_House2_EventScript_UpdateFanClubTMFlag:: goto_if_unset FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK, Common_EventScript_NopReturn specialvar VAR_RESULT, GetDaysUntilPacifidlogTMAvailable compare VAR_RESULT, 0 call_if_eq PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM return -PacifidlogTown_House2_EventScript_MonAssessment:: @ 82037F8 +PacifidlogTown_House2_EventScript_MonAssessment:: msgbox PacifidlogTown_House2_Text_AhYourPokemon, MSGBOX_DEFAULT return -PacifidlogTown_House2_EventScript_FirstMonAssessment:: @ 8203801 +PacifidlogTown_House2_EventScript_FirstMonAssessment:: msgbox PacifidlogTown_House2_Text_ChairmansYoungerBrotherOnVacation, MSGBOX_DEFAULT msgbox PacifidlogTown_House2_Text_AhYourPokemon, MSGBOX_DEFAULT return -PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM:: @ 8203812 +PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM:: clearflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK return -PacifidlogTown_House2_EventScript_GiveReturn:: @ 8203816 +PacifidlogTown_House2_EventScript_GiveReturn:: msgbox PacifidlogTown_House2_Text_AdoringPokemonTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM27 compare VAR_RESULT, FALSE @@ -50,12 +50,12 @@ PacifidlogTown_House2_EventScript_GiveReturn:: @ 8203816 release end -PacifidlogTown_House2_EventScript_PutInEffort:: @ 8203845 +PacifidlogTown_House2_EventScript_PutInEffort:: msgbox PacifidlogTown_House2_Text_PutInSomeMoreEffort, MSGBOX_DEFAULT release end -PacifidlogTown_House2_EventScript_GiveFrustration:: @ 820384F +PacifidlogTown_House2_EventScript_GiveFrustration:: msgbox PacifidlogTown_House2_Text_ViciousPokemonTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM21 compare VAR_RESULT, FALSE @@ -66,14 +66,14 @@ PacifidlogTown_House2_EventScript_GiveFrustration:: @ 820384F release end -PacifidlogTown_House2_EventScript_ComeBackInXDays:: @ 820387E +PacifidlogTown_House2_EventScript_ComeBackInXDays:: specialvar VAR_RESULT, GetDaysUntilPacifidlogTMAvailable buffernumberstring 0, VAR_RESULT msgbox PacifidlogTown_House2_Text_GetGoodTMInXDays, MSGBOX_DEFAULT release end -PacifidlogTown_House2_EventScript_HappyAzurill:: @ 8203891 +PacifidlogTown_House2_EventScript_HappyAzurill:: lock faceplayer waitse @@ -84,7 +84,7 @@ PacifidlogTown_House2_EventScript_HappyAzurill:: @ 8203891 release end -PacifidlogTown_House2_EventScript_UnhappyAzurill:: @ 82038AC +PacifidlogTown_House2_EventScript_UnhappyAzurill:: lock faceplayer waitse @@ -95,7 +95,7 @@ PacifidlogTown_House2_EventScript_UnhappyAzurill:: @ 82038AC release end -PacifidlogTown_House2_Text_ChairmansYoungerBrotherOnVacation: @ 82038C7 +PacifidlogTown_House2_Text_ChairmansYoungerBrotherOnVacation: .string "Er-hem!\p" .string "I am the POKéMON FAN CLUB's most\n" .string "important person, the CHAIRMAN's\l" @@ -103,50 +103,50 @@ PacifidlogTown_House2_Text_ChairmansYoungerBrotherOnVacation: @ 82038C7 .string "I'm here enjoying my vacation with\n" .string "POKéMON, yes, indeed.$" -PacifidlogTown_House2_Text_AhYourPokemon: @ 820395B +PacifidlogTown_House2_Text_AhYourPokemon: .string "Ah!\n" .string "Your POKéMON…$" -PacifidlogTown_House2_Text_AdoringPokemonTakeThis: @ 820396D +PacifidlogTown_House2_Text_AdoringPokemonTakeThis: .string "It clearly likes you very much.\p" .string "A POKéMON that adoring and adorable\n" .string "deserves a TM like this, no?$" -PacifidlogTown_House2_Text_PutInSomeMoreEffort: @ 82039CE +PacifidlogTown_House2_Text_PutInSomeMoreEffort: .string "Hmm…\n" .string "It's not bad, but it's also not good.\p" .string "You, as the TRAINER, need to put in\n" .string "some more effort.$" -PacifidlogTown_House2_Text_ViciousPokemonTakeThis: @ 8203A2F +PacifidlogTown_House2_Text_ViciousPokemonTakeThis: .string "It has a vicious look to it.\p" .string "A frightening POKéMON like that\n" .string "deserves a TM like this.$" -PacifidlogTown_House2_Text_ExplainReturnFrustration: @ 8203A85 +PacifidlogTown_House2_Text_ExplainReturnFrustration: .string "If a POKéMON likes you a lot, RETURN's\n" .string "power is enhanced.\p" .string "If it doesn't like you, FRUSTRATION's\n" .string "power goes up.$" -PacifidlogTown_House2_Text_GetGoodTMInXDays: @ 8203AF4 +PacifidlogTown_House2_Text_GetGoodTMInXDays: .string "Oh, yes. In about {STR_VAR_1} or so days,\n" .string "I should be getting a good TM or two.\p" .string "You should come see me then.\n" .string "I'll give you a TM that's suitable for\l" .string "your POKéMON.$" -PacifidlogTown_House2_Text_Rurii: @ 8203B8D +PacifidlogTown_House2_Text_Rurii: .string "AZURILL: Rurii.$" -PacifidlogTown_House2_Text_VeryFriendlyWithTrainer: @ 8203B9D +PacifidlogTown_House2_Text_VeryFriendlyWithTrainer: .string "It appears to be very friendly with the\n" .string "TRAINER.$" -PacifidlogTown_House2_Text_Rururi: @ 8203BCE +PacifidlogTown_House2_Text_Rururi: .string "AZURILL: Rururi!$" -PacifidlogTown_House2_Text_DoesntLikeTrainerVeryMuch: @ 8203BDF +PacifidlogTown_House2_Text_DoesntLikeTrainerVeryMuch: .string "It doesn't appear to like the TRAINER\n" .string "very much.$" diff --git a/data/maps/PacifidlogTown_House3/scripts.inc b/data/maps/PacifidlogTown_House3/scripts.inc index ea33c8d01c7c..c53ef051968c 100644 --- a/data/maps/PacifidlogTown_House3/scripts.inc +++ b/data/maps/PacifidlogTown_House3/scripts.inc @@ -1,7 +1,7 @@ -PacifidlogTown_House3_MapScripts:: @ 8203C10 +PacifidlogTown_House3_MapScripts:: .byte 0 -PacifidlogTown_House3_EventScript_Trader:: @ 8203C11 +PacifidlogTown_House3_EventScript_Trader:: lock faceplayer goto_if_set FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED, PacifidlogTown_House3_EventScript_TradeCompleted @@ -33,27 +33,27 @@ PacifidlogTown_House3_EventScript_Trader:: @ 8203C11 release end -PacifidlogTown_House3_EventScript_DeclineTrade:: @ 8203C93 +PacifidlogTown_House3_EventScript_DeclineTrade:: msgbox PacifidlogTown_House3_Text_NotDesperateOrAnything, MSGBOX_DEFAULT release end -PacifidlogTown_House3_EventScript_NotRequestedMon:: @ 8203C9D +PacifidlogTown_House3_EventScript_NotRequestedMon:: bufferspeciesname 0, VAR_0x8009 msgbox PacifidlogTown_House3_Text_WontAcceptAnyLessThanRealMon, MSGBOX_DEFAULT release end -PacifidlogTown_House3_EventScript_TradeCompleted:: @ 8203CAB +PacifidlogTown_House3_EventScript_TradeCompleted:: msgbox PacifidlogTown_House3_Text_ReallyWantedToGetBagon, MSGBOX_DEFAULT release end -PacifidlogTown_House3_EventScript_Girl:: @ 8203CB5 +PacifidlogTown_House3_EventScript_Girl:: msgbox PacifidlogTown_House3_Text_IsThatAPokedex, MSGBOX_NPC end -PacifidlogTown_House3_Text_WillingToTradeIt: @ 8203CBE +PacifidlogTown_House3_Text_WillingToTradeIt: .string "Check out this {STR_VAR_2}!\p" .string "It's the {STR_VAR_2} that I caught\n" .string "yesterday to celebrate my birthday!\p" @@ -62,29 +62,29 @@ PacifidlogTown_House3_Text_WillingToTradeIt: @ 8203CBE .string "I'll tell you what. I might be willing\n" .string "to trade it for a {STR_VAR_1}.$" -PacifidlogTown_House3_Text_ItsSubtlyDifferentThankYou: @ 8203D87 +PacifidlogTown_House3_Text_ItsSubtlyDifferentThankYou: .string "Oh, so this is a {STR_VAR_1}?\p" .string "It's sort of like a {STR_VAR_2},\n" .string "and yet it's subtly different.\p" .string "Thank you!$" -PacifidlogTown_House3_Text_WontAcceptAnyLessThanRealMon: @ 8203DDE +PacifidlogTown_House3_Text_WontAcceptAnyLessThanRealMon: .string "No, no, no! I won't accept any\n" .string "less than a real {STR_VAR_1}!$" -PacifidlogTown_House3_Text_NotDesperateOrAnything: @ 8203E12 +PacifidlogTown_House3_Text_NotDesperateOrAnything: .string "Oh, so you're not going to go through\n" .string "with this?\p" .string "That's cool. I'm not desperate to make\n" .string "a trade or anything.$" -PacifidlogTown_House3_Text_ReallyWantedToGetBagon: @ 8203E7F +PacifidlogTown_House3_Text_ReallyWantedToGetBagon: .string "I know I could go looking for one\n" .string "on my own, but…\p" .string "But I really wanted to get a BAGON\n" .string "that another TRAINER caught…$" -PacifidlogTown_House3_Text_IsThatAPokedex: @ 8203EF1 +PacifidlogTown_House3_Text_IsThatAPokedex: .string "Is that a POKéDEX?\p" .string "Did you get to meet a lot of different\n" .string "POKéMON?\p" diff --git a/data/maps/PacifidlogTown_House4/scripts.inc b/data/maps/PacifidlogTown_House4/scripts.inc index 42a988bc2146..12d7197bd120 100644 --- a/data/maps/PacifidlogTown_House4/scripts.inc +++ b/data/maps/PacifidlogTown_House4/scripts.inc @@ -1,15 +1,15 @@ -PacifidlogTown_House4_MapScripts:: @ 8203F4B +PacifidlogTown_House4_MapScripts:: .byte 0 -PacifidlogTown_House4_EventScript_LittleGirl:: @ 8203F4C +PacifidlogTown_House4_EventScript_LittleGirl:: msgbox PacifidlogTown_House4_Text_SkyPokemon, MSGBOX_NPC end -PacifidlogTown_House4_EventScript_Woman:: @ 8203F55 +PacifidlogTown_House4_EventScript_Woman:: msgbox PacifidlogTown_House4_Text_PeopleSawHighFlyingPokemon, MSGBOX_NPC end -PacifidlogTown_House4_EventScript_Boy:: @ 8203F5E +PacifidlogTown_House4_EventScript_Boy:: lock faceplayer msgbox PacifidlogTown_House4_Text_WhereDidYouComeFrom, MSGBOX_YESNO @@ -19,35 +19,35 @@ PacifidlogTown_House4_EventScript_Boy:: @ 8203F5E goto_if_eq PacifidlogTown_House4_EventScript_No end -PacifidlogTown_House4_EventScript_Yes:: @ 8203F7F +PacifidlogTown_House4_EventScript_Yes:: msgbox PacifidlogTown_House4_Text_YesTown, MSGBOX_DEFAULT release end -PacifidlogTown_House4_EventScript_No:: @ 8203F89 +PacifidlogTown_House4_EventScript_No:: msgbox PacifidlogTown_House4_Text_YouHaveToComeFromSomewhere, MSGBOX_DEFAULT release end -PacifidlogTown_House4_Text_PeopleSawHighFlyingPokemon: @ 8203F93 +PacifidlogTown_House4_Text_PeopleSawHighFlyingPokemon: .string "People were saying they saw a POKéMON\n" .string "flying high above HOENN.\p" .string "Is it flying around all the time?\n" .string "Doesn't it need to rest somewhere?$" -PacifidlogTown_House4_Text_SkyPokemon: @ 8204017 +PacifidlogTown_House4_Text_SkyPokemon: .string "A sky POKéMON!\n" .string "A sky POKéMON!$" -PacifidlogTown_House4_Text_WhereDidYouComeFrom: @ 8204035 +PacifidlogTown_House4_Text_WhereDidYouComeFrom: .string "Where did you come from?$" -PacifidlogTown_House4_Text_YesTown: @ 820404E +PacifidlogTown_House4_Text_YesTown: .string "Yes?\n" .string "YES TOWN?\p" .string "I've never heard of a place like that.$" -PacifidlogTown_House4_Text_YouHaveToComeFromSomewhere: @ 8204084 +PacifidlogTown_House4_Text_YouHaveToComeFromSomewhere: .string "No? That doesn't make any sense.\n" .string "You have to come from somewhere.\p" .string "Oh! Wait! You're not going to say you\n" diff --git a/data/maps/PacifidlogTown_House5/scripts.inc b/data/maps/PacifidlogTown_House5/scripts.inc index f8be20f471fb..5da4fb9022c0 100644 --- a/data/maps/PacifidlogTown_House5/scripts.inc +++ b/data/maps/PacifidlogTown_House5/scripts.inc @@ -1,7 +1,7 @@ -PacifidlogTown_House5_MapScripts:: @ 8204110 +PacifidlogTown_House5_MapScripts:: .byte 0 -PacifidlogTown_House5_EventScript_MirageIslandWatcher:: @ 8204111 +PacifidlogTown_House5_EventScript_MirageIslandWatcher:: lock faceplayer specialvar VAR_RESULT, IsMirageIslandPresent @@ -11,23 +11,23 @@ PacifidlogTown_House5_EventScript_MirageIslandWatcher:: @ 8204111 release end -PacifidlogTown_House5_EventScript_MirageIslandPresent:: @ 820412D +PacifidlogTown_House5_EventScript_MirageIslandPresent:: msgbox PacifidlogTown_House5_Text_CanSeeMirageIslandToday, MSGBOX_DEFAULT release end -PacifidlogTown_House5_EventScript_Gentleman:: @ 8204137 +PacifidlogTown_House5_EventScript_Gentleman:: msgbox PacifidlogTown_House5_Text_MirageIslandAppearDependingOnWeather, MSGBOX_NPC end -PacifidlogTown_House5_Text_CantSeeMirageIslandToday: @ 8204140 +PacifidlogTown_House5_Text_CantSeeMirageIslandToday: .string "I can't see MIRAGE ISLAND today…$" -PacifidlogTown_House5_Text_CanSeeMirageIslandToday: @ 8204161 +PacifidlogTown_House5_Text_CanSeeMirageIslandToday: .string "Oh! Oh my!\n" .string "I can see MIRAGE ISLAND today!$" -PacifidlogTown_House5_Text_MirageIslandAppearDependingOnWeather: @ 820418B +PacifidlogTown_House5_Text_MirageIslandAppearDependingOnWeather: .string "MIRAGE ISLAND…\p" .string "It must become visible and invisible\n" .string "depending on the weather conditions\l" diff --git a/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc b/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc index fbe42ce99586..32db89f8dc00 100644 --- a/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_NURSE, 1 -PacifidlogTown_PokemonCenter_1F_MapScripts:: @ 82034A7 +PacifidlogTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, PacifidlogTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -PacifidlogTown_PokemonCenter_1F_OnTransition: @ 82034B2 +PacifidlogTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_PACIFIDLOG_TOWN end -PacifidlogTown_PokemonCenter_1F_EventScript_Nurse:: @ 82034B6 +PacifidlogTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -17,29 +17,29 @@ PacifidlogTown_PokemonCenter_1F_EventScript_Nurse:: @ 82034B6 release end -PacifidlogTown_PokemonCenter_1F_EventScript_Girl:: @ 82034C4 +PacifidlogTown_PokemonCenter_1F_EventScript_Girl:: msgbox PacifidlogTown_PokemonCenter_1F_Text_WhatColorTrainerCard, MSGBOX_NPC end -PacifidlogTown_PokemonCenter_1F_EventScript_Woman:: @ 82034CD +PacifidlogTown_PokemonCenter_1F_EventScript_Woman:: msgbox PacifidlogTown_PokemonCenter_1F_Text_OnColonyOfCorsola, MSGBOX_NPC end -PacifidlogTown_PokemonCenter_1F_EventScript_OldMan:: @ 82034D6 +PacifidlogTown_PokemonCenter_1F_EventScript_OldMan:: msgbox PacifidlogTown_PokemonCenter_1F_Text_AncestorsLivedOnBoats, MSGBOX_NPC end -PacifidlogTown_PokemonCenter_1F_Text_WhatColorTrainerCard: @ 82034DF +PacifidlogTown_PokemonCenter_1F_Text_WhatColorTrainerCard: .string "What color is your TRAINER CARD?\n" .string "Mine's copper!$" -PacifidlogTown_PokemonCenter_1F_Text_OnColonyOfCorsola: @ 820350F +PacifidlogTown_PokemonCenter_1F_Text_OnColonyOfCorsola: .string "PACIFIDLOG TOWN floats on top of\n" .string "a colony of CORSOLA.\p" .string "If I told you that, would you believe\n" .string "me?$" -PacifidlogTown_PokemonCenter_1F_Text_AncestorsLivedOnBoats: @ 820356F +PacifidlogTown_PokemonCenter_1F_Text_AncestorsLivedOnBoats: .string "The ancestors of the people in\n" .string "PACIFIDLOG were said to have been\l" .string "born on boats and then lived and died \l" diff --git a/data/maps/PacifidlogTown_PokemonCenter_2F/scripts.inc b/data/maps/PacifidlogTown_PokemonCenter_2F/scripts.inc index 576c1679c0fd..61a30117504c 100644 --- a/data/maps/PacifidlogTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/PacifidlogTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -PacifidlogTown_PokemonCenter_2F_MapScripts:: @ 8203635 +PacifidlogTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ PacifidlogTown_PokemonCenter_2F_MapScripts:: @ 8203635 .byte 0 @ The below 3 are unused and leftover from RS -PacifidlogTown_PokemonCenter_2F_EventScript_Colosseum:: @ 820364A +PacifidlogTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -PacifidlogTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 8203650 +PacifidlogTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -PacifidlogTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 8203656 +PacifidlogTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc index 5114ea639e4d..49f1efadb2a5 100644 --- a/data/maps/PetalburgCity/scripts.inc +++ b/data/maps/PetalburgCity/scripts.inc @@ -9,7 +9,7 @@ PetalburgCity_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, PetalburgCity_OnFrame .byte 0 -PetalburgCity_OnTransition: @ 81DC2D7 +PetalburgCity_OnTransition: setflag FLAG_VISITED_PETALBURG_CITY compare VAR_PETALBURG_CITY_STATE, 0 call_if_eq PetalburgCity_EventScript_MoveGymBoyToWestEntrance @@ -21,25 +21,25 @@ PetalburgCity_OnTransition: @ 81DC2D7 call_if_eq PetalburgCity_EventScript_SetGymDoorsUnlocked end -PetalburgCity_EventScript_MoveGymBoyToWestEntrance:: @ 81DC307 +PetalburgCity_EventScript_MoveGymBoyToWestEntrance:: setobjectxyperm LOCALID_GYM_BOY, 5, 11 return -PetalburgCity_EventScript_DisableMapNameAndMusic:: @ 81DC30F +PetalburgCity_EventScript_DisableMapNameAndMusic:: setflag FLAG_HIDE_MAP_NAME_POPUP savebgm MUS_FOLLOW_ME return -PetalburgCity_EventScript_SetGymDoorsUnlocked:: @ 81DC316 +PetalburgCity_EventScript_SetGymDoorsUnlocked:: setvar VAR_PETALBURG_GYM_STATE, 7 return -PetalburgCity_OnFrame: @ 81DC31C +PetalburgCity_OnFrame: map_script_2 VAR_PETALBURG_CITY_STATE, 2, PetalburgCity_EventScript_WallyTutorial map_script_2 VAR_PETALBURG_CITY_STATE, 4, PetalburgCity_EventScript_WalkToWallyHouse .2byte 0 -PetalburgCity_EventScript_WallyTutorial:: @ 81DC32E +PetalburgCity_EventScript_WallyTutorial:: lockall special SavePlayerParty special PutZigzagoonInPlayerParty @@ -65,7 +65,7 @@ PetalburgCity_EventScript_WallyTutorial:: @ 81DC32E releaseall end -PetalburgCity_EventScript_WalkToWallyHouse:: @ 81DC390 +PetalburgCity_EventScript_WalkToWallyHouse:: lockall setflag FLAG_HIDE_MAP_NAME_POPUP applymovement LOCALID_WALLYS_DAD, PetalburgCity_Movement_WalkToWallyHouseWallysDad @@ -90,7 +90,7 @@ PetalburgCity_EventScript_WalkToWallyHouse:: @ 81DC390 releaseall end -PetalburgCity_EventScript_Boy:: @ 81DC3E6 +PetalburgCity_EventScript_Boy:: lock faceplayer msgbox PetalburgCity_Text_WaterReflection, MSGBOX_DEFAULT @@ -100,11 +100,11 @@ PetalburgCity_EventScript_Boy:: @ 81DC3E6 release end -PetalburgCity_EventScript_WallysMom:: @ 81DC3FD +PetalburgCity_EventScript_WallysMom:: msgbox PetalburgCity_Text_WhereIsWally, MSGBOX_NPC end -PetalburgCity_Movement_WalkToWallyHousePlayer: @ 81DC406 +PetalburgCity_Movement_WalkToWallyHousePlayer: delay_8 walk_down walk_down @@ -124,12 +124,12 @@ PetalburgCity_Movement_WalkToWallyHousePlayer: @ 81DC406 walk_up step_end -PetalburgCity_Movement_WalkInsideHousePlayer: @ 81DC418 +PetalburgCity_Movement_WalkInsideHousePlayer: walk_up walk_up step_end -PetalburgCity_Movement_WalkToWallyHouseWallysDad: @ 81DC41B +PetalburgCity_Movement_WalkToWallyHouseWallysDad: delay_8 walk_down walk_down @@ -149,12 +149,12 @@ PetalburgCity_Movement_WalkToWallyHouseWallysDad: @ 81DC41B walk_up step_end -PetalburgCity_Movement_WalkInsideHouseWallysDad: @ 81DC42D +PetalburgCity_Movement_WalkInsideHouseWallysDad: walk_up set_invisible step_end -PetalburgCity_Movement_WallyTutorialPlayer: @ 81DC430 +PetalburgCity_Movement_WallyTutorialPlayer: delay_8 walk_down walk_down @@ -189,7 +189,7 @@ PetalburgCity_Movement_WallyTutorialPlayer: @ 81DC430 walk_in_place_fastest_right step_end -PetalburgCity_Movement_WallyTutorialWally: @ 81DC451 +PetalburgCity_Movement_WallyTutorialWally: delay_8 walk_down walk_down @@ -228,47 +228,47 @@ PetalburgCity_Movement_WallyTutorialWally: @ 81DC451 walk_in_place_fastest_right step_end -PetalburgCity_EventScript_GymSign:: @ 81DC476 +PetalburgCity_EventScript_GymSign:: msgbox PetalburgCity_Text_GymSign, MSGBOX_SIGN end -PetalburgCity_EventScript_CitySign:: @ 81DC47F +PetalburgCity_EventScript_CitySign:: msgbox PetalburgCity_Text_CitySign, MSGBOX_SIGN end -PetalburgCity_EventScript_Gentleman:: @ 81DC488 +PetalburgCity_EventScript_Gentleman:: msgbox PetalburgCity_Text_FullPartyExplanation, MSGBOX_NPC end -PetalburgCity_EventScript_WallyHouseSign:: @ 81DC491 +PetalburgCity_EventScript_WallyHouseSign:: msgbox PetalburgCity_Text_WallyHouseSign, MSGBOX_SIGN end -PetalburgCity_EventScript_ShowGymToPlayer0:: @ 81DC49A +PetalburgCity_EventScript_ShowGymToPlayer0:: lockall setvar VAR_0x8008, 0 goto PetalburgCity_EventScript_ShowGymToPlayer end -PetalburgCity_EventScript_ShowGymToPlayer1:: @ 81DC4A6 +PetalburgCity_EventScript_ShowGymToPlayer1:: lockall setvar VAR_0x8008, 1 goto PetalburgCity_EventScript_ShowGymToPlayer end -PetalburgCity_EventScript_ShowGymToPlayer2:: @ 81DC4B2 +PetalburgCity_EventScript_ShowGymToPlayer2:: lockall setvar VAR_0x8008, 2 goto PetalburgCity_EventScript_ShowGymToPlayer end -PetalburgCity_EventScript_ShowGymToPlayer3:: @ 81DC4BE +PetalburgCity_EventScript_ShowGymToPlayer3:: lockall setvar VAR_0x8008, 3 goto PetalburgCity_EventScript_ShowGymToPlayer end -PetalburgCity_EventScript_ShowGymToPlayer:: @ 81DC4CA +PetalburgCity_EventScript_ShowGymToPlayer:: applymovement LOCALID_GYM_BOY, Common_Movement_FacePlayer waitmovement 0 playbgm MUS_FOLLOW_ME, FALSE @@ -307,83 +307,83 @@ PetalburgCity_EventScript_ShowGymToPlayer:: @ 81DC4CA releaseall end -PetalburgCity_EventScript_BoyApproachPlayer0:: @ 81DC57F +PetalburgCity_EventScript_BoyApproachPlayer0:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer0 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_EventScript_BoyApproachPlayer1:: @ 81DC594 +PetalburgCity_EventScript_BoyApproachPlayer1:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer1 waitmovement 0 return -PetalburgCity_EventScript_BoyApproachPlayer2:: @ 81DC59F +PetalburgCity_EventScript_BoyApproachPlayer2:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer2 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -PetalburgCity_EventScript_BoyApproachPlayer3:: @ 81DC5B4 +PetalburgCity_EventScript_BoyApproachPlayer3:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer3 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -PetalburgCity_EventScript_LeadPlayerToGym0:: @ 81DC5C9 +PetalburgCity_EventScript_LeadPlayerToGym0:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym0 applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym0 waitmovement 0 return -PetalburgCity_EventScript_LeadPlayerToGym1:: @ 81DC5DB +PetalburgCity_EventScript_LeadPlayerToGym1:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym1 applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym1 waitmovement 0 return -PetalburgCity_EventScript_LeadPlayerToGym2:: @ 81DC5ED +PetalburgCity_EventScript_LeadPlayerToGym2:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym2 applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym2 waitmovement 0 return -PetalburgCity_EventScript_LeadPlayerToGym3:: @ 81DC5FF +PetalburgCity_EventScript_LeadPlayerToGym3:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym3 applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym3 waitmovement 0 return @ Unused -PetalburgCity_Movement_Delay48:: @ 81DC611 +PetalburgCity_Movement_Delay48:: delay_16 delay_16 delay_16 step_end -PetalburgCity_Movement_BoyApproachPlayer0: @ 81DC615 +PetalburgCity_Movement_BoyApproachPlayer0: walk_right walk_right walk_right walk_in_place_fastest_up step_end -PetalburgCity_Movement_BoyApproachPlayer1: @ 81DC61A +PetalburgCity_Movement_BoyApproachPlayer1: walk_right walk_right step_end -PetalburgCity_Movement_BoyApproachPlayer2: @ 81DC61D +PetalburgCity_Movement_BoyApproachPlayer2: walk_right walk_right walk_right walk_in_place_fastest_down step_end -PetalburgCity_Movement_BoyApproachPlayer3: @ 81DC622 +PetalburgCity_Movement_BoyApproachPlayer3: walk_down walk_right walk_right @@ -391,7 +391,7 @@ PetalburgCity_Movement_BoyApproachPlayer3: @ 81DC622 walk_in_place_fastest_down step_end -PetalburgCity_Movement_BoyWalkToGym0: @ 81DC628 +PetalburgCity_Movement_BoyWalkToGym0: walk_right walk_right walk_right @@ -404,7 +404,7 @@ PetalburgCity_Movement_BoyWalkToGym0: @ 81DC628 walk_in_place_fastest_up step_end -PetalburgCity_Movement_BoyWalkToGym1: @ 81DC633 +PetalburgCity_Movement_BoyWalkToGym1: walk_down walk_right walk_right @@ -420,7 +420,7 @@ PetalburgCity_Movement_BoyWalkToGym1: @ 81DC633 walk_in_place_fastest_up step_end -PetalburgCity_Movement_BoyWalkToGym2: @ 81DC641 +PetalburgCity_Movement_BoyWalkToGym2: walk_right walk_right walk_right @@ -433,7 +433,7 @@ PetalburgCity_Movement_BoyWalkToGym2: @ 81DC641 walk_in_place_fastest_up step_end -PetalburgCity_Movement_BoyWalkToGym3: @ 81DC64C +PetalburgCity_Movement_BoyWalkToGym3: walk_right walk_right walk_right @@ -447,7 +447,7 @@ PetalburgCity_Movement_BoyWalkToGym3: @ 81DC64C walk_in_place_fastest_up step_end -PetalburgCity_Movement_BoyWalkAway: @ 81DC658 +PetalburgCity_Movement_BoyWalkAway: walk_down walk_left walk_left @@ -462,7 +462,7 @@ PetalburgCity_Movement_BoyWalkAway: @ 81DC658 walk_left step_end -PetalburgCity_Movement_PlayerWalkToGym0: @ 81DC665 +PetalburgCity_Movement_PlayerWalkToGym0: walk_down walk_right walk_right @@ -474,7 +474,7 @@ PetalburgCity_Movement_PlayerWalkToGym0: @ 81DC665 walk_up step_end -PetalburgCity_Movement_PlayerWalkToGym1: @ 81DC66F +PetalburgCity_Movement_PlayerWalkToGym1: delay_16 delay_16 walk_down @@ -489,7 +489,7 @@ PetalburgCity_Movement_PlayerWalkToGym1: @ 81DC66F walk_up step_end -PetalburgCity_Movement_PlayerWalkToGym2: @ 81DC67C +PetalburgCity_Movement_PlayerWalkToGym2: walk_up walk_right walk_right @@ -501,7 +501,7 @@ PetalburgCity_Movement_PlayerWalkToGym2: @ 81DC67C walk_up step_end -PetalburgCity_Movement_PlayerWalkToGym3: @ 81DC686 +PetalburgCity_Movement_PlayerWalkToGym3: walk_up walk_right walk_right @@ -514,7 +514,7 @@ PetalburgCity_Movement_PlayerWalkToGym3: @ 81DC686 walk_up step_end -PetalburgCity_EventScript_Scott0:: @ 81DC691 +PetalburgCity_EventScript_Scott0:: lockall addobject LOCALID_SCOTT setvar VAR_0x8008, 0 @@ -522,7 +522,7 @@ PetalburgCity_EventScript_Scott0:: @ 81DC691 goto PetalburgCity_EventScript_Scott end -PetalburgCity_EventScript_Scott1:: @ 81DC6A7 +PetalburgCity_EventScript_Scott1:: lockall addobject LOCALID_SCOTT setvar VAR_0x8008, 1 @@ -530,7 +530,7 @@ PetalburgCity_EventScript_Scott1:: @ 81DC6A7 goto PetalburgCity_EventScript_Scott end -PetalburgCity_EventScript_Scott2:: @ 81DC6BD +PetalburgCity_EventScript_Scott2:: lockall addobject LOCALID_SCOTT setvar VAR_0x8008, 2 @@ -538,7 +538,7 @@ PetalburgCity_EventScript_Scott2:: @ 81DC6BD goto PetalburgCity_EventScript_Scott end -PetalburgCity_EventScript_Scott3:: @ 81DC6D3 +PetalburgCity_EventScript_Scott3:: lockall addobject LOCALID_SCOTT setvar VAR_0x8008, 3 @@ -546,7 +546,7 @@ PetalburgCity_EventScript_Scott3:: @ 81DC6D3 goto PetalburgCity_EventScript_Scott end -PetalburgCity_EventScript_Scott:: @ 81DC6E9 +PetalburgCity_EventScript_Scott:: applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottStartWalkLeft waitmovement 0 playse SE_PIN @@ -584,45 +584,45 @@ PetalburgCity_EventScript_Scott:: @ 81DC6E9 releaseall end -PetalburgCity_EventScript_ScottExit0:: @ 81DC78E +PetalburgCity_EventScript_ScottExit0:: applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit0 applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit0 waitmovement 0 return -PetalburgCity_EventScript_ScottExit1:: @ 81DC7A0 +PetalburgCity_EventScript_ScottExit1:: applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit1 applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit1 waitmovement 0 return -PetalburgCity_EventScript_ScottExit2:: @ 81DC7B2 +PetalburgCity_EventScript_ScottExit2:: applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit2 applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit2 waitmovement 0 return -PetalburgCity_EventScript_ScottExit3:: @ 81DC7C4 +PetalburgCity_EventScript_ScottExit3:: applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit3 applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit3 waitmovement 0 return -PetalburgCity_Movement_ScottStartWalkLeft: @ 81DC7D6 +PetalburgCity_Movement_ScottStartWalkLeft: walk_left walk_left walk_left walk_left step_end -PetalburgCity_Movement_ScottApproachPlayer: @ 81DC7DB +PetalburgCity_Movement_ScottApproachPlayer: walk_left walk_left walk_left walk_left step_end -PetalburgCity_Movement_ScottExit0: @ 81DC7E0 +PetalburgCity_Movement_ScottExit0: walk_down walk_down walk_left @@ -638,7 +638,7 @@ PetalburgCity_Movement_ScottExit0: @ 81DC7E0 walk_left step_end -PetalburgCity_Movement_PlayerWatchScottExit0: @ 81DC7EE +PetalburgCity_Movement_PlayerWatchScottExit0: delay_16 walk_in_place_fastest_down delay_16 @@ -647,7 +647,7 @@ PetalburgCity_Movement_PlayerWatchScottExit0: @ 81DC7EE walk_in_place_fastest_left step_end -PetalburgCity_Movement_ScottExit1: @ 81DC7F5 +PetalburgCity_Movement_ScottExit1: walk_down walk_left walk_left @@ -662,7 +662,7 @@ PetalburgCity_Movement_ScottExit1: @ 81DC7F5 walk_left step_end -PetalburgCity_Movement_PlayerWatchScottExit1: @ 81DC802 +PetalburgCity_Movement_PlayerWatchScottExit1: delay_16 walk_in_place_fastest_down delay_16 @@ -670,7 +670,7 @@ PetalburgCity_Movement_PlayerWatchScottExit1: @ 81DC802 walk_in_place_fastest_left step_end -PetalburgCity_Movement_ScottExit2: @ 81DC808 +PetalburgCity_Movement_ScottExit2: walk_down walk_left walk_left @@ -685,7 +685,7 @@ PetalburgCity_Movement_ScottExit2: @ 81DC808 walk_left step_end -PetalburgCity_Movement_PlayerWatchScottExit2: @ 81DC815 +PetalburgCity_Movement_PlayerWatchScottExit2: delay_16 walk_in_place_fastest_down delay_16 @@ -693,7 +693,7 @@ PetalburgCity_Movement_PlayerWatchScottExit2: @ 81DC815 walk_in_place_fastest_left step_end -PetalburgCity_Movement_ScottExit3: @ 81DC81B +PetalburgCity_Movement_ScottExit3: walk_up walk_left walk_left @@ -708,7 +708,7 @@ PetalburgCity_Movement_ScottExit3: @ 81DC81B walk_left step_end -PetalburgCity_Movement_PlayerWatchScottExit3: @ 81DC828 +PetalburgCity_Movement_PlayerWatchScottExit3: delay_16 walk_in_place_fastest_up delay_16 @@ -716,16 +716,16 @@ PetalburgCity_Movement_PlayerWatchScottExit3: @ 81DC828 walk_in_place_fastest_left step_end -PetalburgCity_EventScript_GymBoy:: @ 81DC82E +PetalburgCity_EventScript_GymBoy:: msgbox PetalburgCity_Text_AreYouRookieTrainer, MSGBOX_NPC end -PetalburgCity_Text_WhereIsWally: @ 81DC837 +PetalburgCity_Text_WhereIsWally: .string "Where has our WALLY gone?\p" .string "We have to leave for VERDANTURF TOWN\n" .string "very soon…$" -PetalburgCity_Text_AreYouRookieTrainer: @ 81DC881 +PetalburgCity_Text_AreYouRookieTrainer: .string "Hiya! Are you maybe…\n" .string "A rookie TRAINER?\p" .string "Do you know what POKéMON TRAINERS\n" @@ -733,51 +733,51 @@ PetalburgCity_Text_AreYouRookieTrainer: @ 81DC881 .string "They first check what kind of GYM\n" .string "is in the town.$" -PetalburgCity_Text_ThisIsPetalburgGym: @ 81DC91B +PetalburgCity_Text_ThisIsPetalburgGym: .string "See? This is PETALBURG CITY's GYM.$" -PetalburgCity_Text_ThisIsGymSign: @ 81DC93E +PetalburgCity_Text_ThisIsGymSign: .string "This is the GYM's sign. Look for it\n" .string "whenever you're looking for a GYM.$" -PetalburgCity_Text_WaterReflection: @ 81DC985 +PetalburgCity_Text_WaterReflection: .string "My face is reflected in the water.\p" .string "It's a shining grin full of hope…\p" .string "Or it could be a look of somber silence\n" .string "struggling with fear…\p" .string "What do you see reflected in your face?$" -PetalburgCity_Text_FullPartyExplanation: @ 81DCA30 +PetalburgCity_Text_FullPartyExplanation: .string "Let's say you have six POKéMON.\n" .string "If you catch another one…\p" .string "It is automatically sent to a STORAGE\n" .string "BOX over a PC connection.$" -PetalburgCity_Text_GymSign: @ 81DCAAA +PetalburgCity_Text_GymSign: .string "PETALBURG CITY POKéMON GYM\n" .string "LEADER: NORMAN\l" .string "“A man in pursuit of power!”$" -PetalburgCity_Text_CitySign: @ 81DCAF1 +PetalburgCity_Text_CitySign: .string "PETALBURG CITY\n" .string "“Where people mingle with nature.”$" -PetalburgCity_Text_WallyHouseSign: @ 81DCB23 +PetalburgCity_Text_WallyHouseSign: .string "WALLY'S HOUSE$" -PetalburgCity_Text_AreYouATrainer: @ 81DCB31 +PetalburgCity_Text_AreYouATrainer: .string "Excuse me!\p" .string "Let me guess, from the way you're\n" .string "dressed, are you a POKéMON TRAINER?$" -PetalburgCity_Text_WellMaybeNot: @ 81DCB82 +PetalburgCity_Text_WellMaybeNot: .string "… … … … … …\p" .string "Well, maybe not.\n" .string "Your clothes aren't all that dirty.\p" .string "You're either a rookie TRAINER,\n" .string "or maybe you're just an ordinary kid.$" -PetalburgCity_Text_ImLookingForTalentedTrainers: @ 81DCC09 +PetalburgCity_Text_ImLookingForTalentedTrainers: .string "I'm roaming the land in search of\n" .string "talented TRAINERS.\p" .string "I'm sorry to have taken your time.$" diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index b2f6b1061fd0..43e8c4108cff 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -2,14 +2,14 @@ .set LOCALID_WALLY, 10 .set LOCALID_WALLYS_DAD, 11 -PetalburgCity_Gym_MapScripts:: @ 8204889 +PetalburgCity_Gym_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, PetalburgCity_Gym_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, PetalburgCity_Gym_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, PetalburgCity_Gym_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, PetalburgCity_Gym_OnFrame .byte 0 -PetalburgCity_Gym_OnLoad: @ 820489E +PetalburgCity_Gym_OnLoad: compare VAR_PETALBURG_GYM_STATE, 6 goto_if_eq PetalburgCity_Gym_EventScript_OpenUnlockedDoors compare VAR_PETALBURG_GYM_STATE, 7 @@ -17,7 +17,7 @@ PetalburgCity_Gym_OnLoad: @ 820489E end @ NOTE: Strength and OHKO rooms are misleading. Both are more accurately Critical-Hit -PetalburgCity_Gym_EventScript_OpenUnlockedDoors:: @ 82048B5 +PetalburgCity_Gym_EventScript_OpenUnlockedDoors:: setvar VAR_0x8005, 1 call PetalburgCity_Gym_EventScript_OpenGymEntranceDoors call_if_defeated TRAINER_RANDALL, PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors @@ -29,7 +29,7 @@ PetalburgCity_Gym_EventScript_OpenUnlockedDoors:: @ 82048B5 call_if_defeated TRAINER_BERKE, PetalburgCity_Gym_EventScript_OpenOHKORoomDoors end -PetalburgCity_Gym_EventScript_UnlockAllDoors:: @ 82048FF +PetalburgCity_Gym_EventScript_UnlockAllDoors:: setvar VAR_0x8005, 1 call PetalburgCity_Gym_EventScript_OpenGymEntranceDoors call PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors @@ -41,7 +41,7 @@ PetalburgCity_Gym_EventScript_UnlockAllDoors:: @ 82048FF call PetalburgCity_Gym_EventScript_OpenOHKORoomDoors return -PetalburgCity_Gym_OnTransition: @ 820492D +PetalburgCity_Gym_OnTransition: compare VAR_PETALBURG_GYM_STATE, 1 call_if_eq PetalburgCity_Gym_EventScript_MoveWallyToEntrance compare VAR_PETALBURG_GYM_STATE, 6 @@ -49,15 +49,15 @@ PetalburgCity_Gym_OnTransition: @ 820492D call_if_set FLAG_SYS_GAME_CLEAR, PetalburgCity_Gym_EventScript_CheckNormanForRematch end -PetalburgCity_Gym_EventScript_MoveWallyToEntrance:: @ 820494D +PetalburgCity_Gym_EventScript_MoveWallyToEntrance:: setobjectxyperm LOCALID_WALLY, 5, 108 return -PetalburgCity_Gym_EventScript_MoveNormanToEntrance:: @ 8204955 +PetalburgCity_Gym_EventScript_MoveNormanToEntrance:: setobjectxyperm LOCALID_NORMAN, 4, 107 return -PetalburgCity_Gym_EventScript_CheckNormanForRematch:: @ 820495D +PetalburgCity_Gym_EventScript_CheckNormanForRematch:: setorcopyvar VAR_TRAINER_BATTLE_OPPONENT_A, TRAINER_NORMAN_1 specialvar VAR_RESULT, IsTrainerReadyForRematch compare VAR_RESULT, TRUE @@ -67,23 +67,23 @@ PetalburgCity_Gym_EventScript_CheckNormanForRematch:: @ 820495D setobjectxyperm LOCALID_NORMAN, 4, 107 return -PetalburgCity_Gym_EventScript_DontMoveNormanToFront:: @ 8204985 +PetalburgCity_Gym_EventScript_DontMoveNormanToFront:: setvar VAR_PETALBURG_GYM_STATE, 8 end -PetalburgCity_Gym_OnWarp: @ 820498B +PetalburgCity_Gym_OnWarp: map_script_2 VAR_PETALBURG_GYM_STATE, 1, PetalburgCity_Gym_EventScript_TurnPlayerNorth .2byte 0 -PetalburgCity_Gym_EventScript_TurnPlayerNorth:: @ 8204995 +PetalburgCity_Gym_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -PetalburgCity_Gym_OnFrame: @ 820499A +PetalburgCity_Gym_OnFrame: map_script_2 VAR_PETALBURG_GYM_STATE, 1, PetalburgCity_Gym_EventScript_ReturnFromWallyTutorial .2byte 0 -PetalburgCity_Gym_EventScript_ReturnFromWallyTutorial:: @ 82049A4 +PetalburgCity_Gym_EventScript_ReturnFromWallyTutorial:: lockall msgbox PetalburgCity_Gym_Text_DadSoDidItWorkOut, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_WallyThankYouBye, MSGBOX_DEFAULT @@ -102,14 +102,14 @@ PetalburgCity_Gym_EventScript_ReturnFromWallyTutorial:: @ 82049A4 releaseall end -PetalburgCity_Gym_Movement_WallyExitGym: @ 82049EC +PetalburgCity_Gym_Movement_WallyExitGym: walk_down walk_down walk_down delay_16 step_end -PetalburgCity_Gym_EventScript_Norman:: @ 82049F1 +PetalburgCity_Gym_EventScript_Norman:: lock faceplayer switch VAR_PETALBURG_GYM_STATE @@ -129,27 +129,27 @@ PetalburgCity_Gym_EventScript_Norman:: @ 82049F1 case DIR_EAST, PetalburgCity_Gym_EventScript_BeginWallyTutorialEast end -PetalburgCity_Gym_EventScript_BeginWallyTutorialSouth:: @ 8204A80 +PetalburgCity_Gym_EventScript_BeginWallyTutorialSouth:: setvar VAR_0x8008, 0 goto PetalburgCity_Gym_EventScript_BeginWallyTutorial end -PetalburgCity_Gym_EventScript_BeginWallyTutorialNorth:: @ 8204A8B +PetalburgCity_Gym_EventScript_BeginWallyTutorialNorth:: setvar VAR_0x8008, 1 goto PetalburgCity_Gym_EventScript_BeginWallyTutorial end -PetalburgCity_Gym_EventScript_BeginWallyTutorialWest:: @ 8204A96 +PetalburgCity_Gym_EventScript_BeginWallyTutorialWest:: setvar VAR_0x8008, 2 goto PetalburgCity_Gym_EventScript_BeginWallyTutorial end -PetalburgCity_Gym_EventScript_BeginWallyTutorialEast:: @ 8204AA1 +PetalburgCity_Gym_EventScript_BeginWallyTutorialEast:: setvar VAR_0x8008, 3 goto PetalburgCity_Gym_EventScript_BeginWallyTutorial end -PetalburgCity_Gym_EventScript_BeginWallyTutorial:: @ 8204AAC +PetalburgCity_Gym_EventScript_BeginWallyTutorial:: addobject LOCALID_WALLY playse SE_DOOR compare VAR_0x8008, 0 @@ -225,13 +225,13 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial:: @ 8204AAC release end -PetalburgCity_Gym_EventScript_WallyArriveSouth:: @ 8204C31 +PetalburgCity_Gym_EventScript_WallyArriveSouth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive waitmovement 0 return -PetalburgCity_Gym_EventScript_WallyArriveNorth:: @ 8204C43 +PetalburgCity_Gym_EventScript_WallyArriveNorth:: applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArriveNorth waitmovement 0 applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight @@ -239,127 +239,127 @@ PetalburgCity_Gym_EventScript_WallyArriveNorth:: @ 8204C43 waitmovement 0 return -PetalburgCity_Gym_EventScript_WallyArriveWestEast:: @ 8204C5F +PetalburgCity_Gym_EventScript_WallyArriveWestEast:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallySouth:: @ 8204C78 +PetalburgCity_Gym_EventScript_ExitGymWithWallySouth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallySouth waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallyNorth:: @ 8204C91 +PetalburgCity_Gym_EventScript_ExitGymWithWallyNorth:: applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitNorth applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallyWest:: @ 8204CA3 +PetalburgCity_Gym_EventScript_ExitGymWithWallyWest:: applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyWest waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallyEast:: @ 8204CB5 +PetalburgCity_Gym_EventScript_ExitGymWithWallyEast:: applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitEast applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyEast waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth:: @ 8204CC7 +PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth:: @ 8204CD2 +PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressPlayerWest:: @ 8204CE4 +PetalburgCity_Gym_EventScript_NormanAddressPlayerWest:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressPlayerEast:: @ 8204CF6 +PetalburgCity_Gym_EventScript_NormanAddressPlayerEast:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestLeft applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressWallySouth:: @ 8204D08 +PetalburgCity_Gym_EventScript_NormanAddressWallySouth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressWallyNorth:: @ 8204D13 +PetalburgCity_Gym_EventScript_NormanAddressWallyNorth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressWallyWest:: @ 8204D1E +PetalburgCity_Gym_EventScript_NormanAddressWallyWest:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanAddressWallyEast:: @ 8204D29 +PetalburgCity_Gym_EventScript_NormanAddressWallyEast:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_Gym_EventScript_WallyFacePlayer:: @ 8204D34 +PetalburgCity_Gym_EventScript_WallyFacePlayer:: applymovement LOCALID_WALLY, Common_Movement_FacePlayer waitmovement 0 return -PetalburgCity_Gym_EventScript_WallyFaceDown:: @ 8204D3F +PetalburgCity_Gym_EventScript_WallyFaceDown:: applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanNoBadges:: @ 8204D4A +PetalburgCity_Gym_EventScript_NormanNoBadges:: msgbox PetalburgCity_Gym_Text_NormanGoToRustboro, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_NormanOneBadge:: @ 8204D54 +PetalburgCity_Gym_EventScript_NormanOneBadge:: msgbox PetalburgCity_Gym_Text_NormanGoToDewford, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_NormanTwoBadges:: @ 8204D5E +PetalburgCity_Gym_EventScript_NormanTwoBadges:: msgbox PetalburgCity_Gym_Text_YouHaveGottenStronger, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_NormanThreeBadges:: @ 8204D68 +PetalburgCity_Gym_EventScript_NormanThreeBadges:: msgbox PetalburgCity_Gym_Text_YouHaveGottenStronger, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_NormanFaceDoorSouth:: @ 8204D72 +PetalburgCity_Gym_EventScript_NormanFaceDoorSouth:: return @ For all other NormanFaceDoorX, Norman is already facing the door from NormanAddressWallyX -PetalburgCity_Gym_EventScript_NormanFaceDoorNorth:: @ 8204D73 +PetalburgCity_Gym_EventScript_NormanFaceDoorNorth:: applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -PetalburgCity_Gym_EventScript_NormanFaceDoorWest:: @ 8204D7E +PetalburgCity_Gym_EventScript_NormanFaceDoorWest:: return -PetalburgCity_Gym_EventScript_NormanFaceDoorEast:: @ 8204D7F +PetalburgCity_Gym_EventScript_NormanFaceDoorEast:: return -PetalburgCity_Gym_EventScript_NormanPostBattle:: @ 8204D80 +PetalburgCity_Gym_EventScript_NormanPostBattle:: call PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry compare VAR_RESULT, TRUE goto_if_eq PetalburgCity_Gym_EventScript_GiveEnigmaBerry @@ -369,17 +369,17 @@ PetalburgCity_Gym_EventScript_NormanPostBattle:: @ 8204D80 release end -PetalburgCity_Gym_EventScript_GiveFacade2:: @ 8204DAC +PetalburgCity_Gym_EventScript_GiveFacade2:: call PetalburgCity_Gym_EventScript_GiveFacade release end -PetalburgCity_Gym_EventScript_NormanRematch:: @ 8204DB3 +PetalburgCity_Gym_EventScript_NormanRematch:: trainerbattle_rematch_double TRAINER_NORMAN_1, PetalburgCity_Gym_Text_NormanPreRematch, PetalburgCity_Gym_Text_NormanRematchDefeat, PetalburgCity_Gym_Text_NormanRematchNeedTwoMons msgbox PetalburgCity_Gym_Text_NormanPostRematch, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry:: @ 8204DCE +PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry:: specialvar VAR_RESULT, IsEnigmaBerryValid compare VAR_RESULT, FALSE goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry @@ -395,11 +395,11 @@ PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry:: @ 8204DCE setvar VAR_RESULT, TRUE return -PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry:: @ 8204E17 +PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry:: setvar VAR_RESULT, FALSE return -PetalburgCity_Gym_EventScript_GiveEnigmaBerry:: @ 8204E1D +PetalburgCity_Gym_EventScript_GiveEnigmaBerry:: giveitem ITEM_ENIGMA_BERRY compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -407,7 +407,7 @@ PetalburgCity_Gym_EventScript_GiveEnigmaBerry:: @ 8204E1D release end -PetalburgCity_Gym_EventScript_NormanBattle:: @ 8204E3B +PetalburgCity_Gym_EventScript_NormanBattle:: msgbox PetalburgCity_Gym_Text_NormanIntro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_NORMAN_1, PetalburgCity_Gym_Text_NormanDefeat message PetalburgCity_Gym_Text_ReceivedBalanceBadge @@ -440,7 +440,7 @@ PetalburgCity_Gym_EventScript_NormanBattle:: @ 8204E3B case DIR_EAST, PetalburgCity_Gym_EventScript_WallysDadArrivesEast end -PetalburgCity_Gym_EventScript_GiveFacade:: @ 8204ED2 +PetalburgCity_Gym_EventScript_GiveFacade:: giveitem ITEM_TM42 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -448,19 +448,19 @@ PetalburgCity_Gym_EventScript_GiveFacade:: @ 8204ED2 msgbox PetalburgCity_Gym_Text_ExplainFacade, MSGBOX_DEFAULT return -PetalburgCity_Gym_EventScript_WallysDadArrivesNorth:: @ 8204EF5 +PetalburgCity_Gym_EventScript_WallysDadArrivesNorth:: setvar VAR_0x8008, 1 goto PetalburgCity_Gym_EventScript_WallysDadArrives -PetalburgCity_Gym_EventScript_WallysDadArrivesEast:: @ 8204EFF +PetalburgCity_Gym_EventScript_WallysDadArrivesEast:: setvar VAR_0x8008, 2 goto PetalburgCity_Gym_EventScript_WallysDadArrives -PetalburgCity_Gym_EventScript_WallysDadArrivesWest:: @ 8204F09 +PetalburgCity_Gym_EventScript_WallysDadArrivesWest:: setvar VAR_0x8008, 3 goto PetalburgCity_Gym_EventScript_WallysDadArrives -PetalburgCity_Gym_EventScript_WallysDadArrives:: @ 8204F13 +PetalburgCity_Gym_EventScript_WallysDadArrives:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadEnterGym waitmovement 0 playse SE_PIN @@ -502,22 +502,22 @@ PetalburgCity_Gym_EventScript_WallysDadArrives:: @ 8204F13 release end -PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth:: @ 8204FCC +PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth:: applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast:: @ 8204FD7 +PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast:: applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest:: @ 8204FE2 +PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest:: applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth:: @ 8204FED +PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft @@ -525,7 +525,7 @@ PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth:: @ 8204FED waitmovement 0 return -PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast:: @ 8205009 +PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown @@ -533,7 +533,7 @@ PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast:: @ 8205009 waitmovement 0 return -PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest:: @ 8205025 +PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown @@ -541,26 +541,26 @@ PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest:: @ 8205025 waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth:: @ 8205041 +PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitNorth applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallysDadEast:: @ 820505A +PetalburgCity_Gym_EventScript_ExitGymWithWallysDadEast:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitEast applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast waitmovement 0 return -PetalburgCity_Gym_EventScript_ExitGymWithWallysDadWest:: @ 820506C +PetalburgCity_Gym_EventScript_ExitGymWithWallysDadWest:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitWest applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest waitmovement 0 return -PetalburgCity_Gym_Movement_WallysDadExitNorth: @ 820507E +PetalburgCity_Gym_Movement_WallysDadExitNorth: walk_down walk_down walk_left @@ -573,7 +573,7 @@ PetalburgCity_Gym_Movement_WallysDadExitNorth: @ 820507E set_invisible step_end -PetalburgCity_Gym_Movement_WallysDadExitEast: @ 8205089 +PetalburgCity_Gym_Movement_WallysDadExitEast: walk_down walk_down walk_left @@ -586,7 +586,7 @@ PetalburgCity_Gym_Movement_WallysDadExitEast: @ 8205089 set_invisible step_end -PetalburgCity_Gym_Movement_WallysDadExitWest: @ 8205094 +PetalburgCity_Gym_Movement_WallysDadExitWest: walk_down walk_down walk_left @@ -601,7 +601,7 @@ PetalburgCity_Gym_Movement_WallysDadExitWest: @ 8205094 set_invisible step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth: @ 82050A1 +PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth: delay_16 walk_down walk_down @@ -611,7 +611,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth: @ 82050A1 walk_down step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast: @ 82050A9 +PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast: delay_16 walk_down walk_down @@ -621,7 +621,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast: @ 82050A9 walk_down step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest: @ 82050B1 +PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest: delay_16 walk_down walk_down @@ -633,7 +633,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest: @ 82050B1 walk_down step_end -PetalburgCity_Gym_Movement_WallysDadEnterGym: @ 82050BB +PetalburgCity_Gym_Movement_WallysDadEnterGym: walk_up delay_8 walk_in_place_fastest_right @@ -643,7 +643,7 @@ PetalburgCity_Gym_Movement_WallysDadEnterGym: @ 82050BB walk_in_place_fastest_up step_end -PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth: @ 82050C3 +PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth: walk_right walk_right walk_up @@ -652,7 +652,7 @@ PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth: @ 82050C3 walk_in_place_fastest_right step_end -PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast: @ 82050CA +PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast: walk_right walk_right walk_up @@ -660,7 +660,7 @@ PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast: @ 82050CA walk_up step_end -PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest: @ 82050D0 +PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest: walk_right walk_right walk_up @@ -670,7 +670,7 @@ PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest: @ 82050D0 walk_up step_end -PetalburgCity_Gym_Movement_Unused: @ 82050D8 +PetalburgCity_Gym_Movement_Unused: walk_in_place_fastest_up delay_16 delay_16 @@ -681,7 +681,7 @@ PetalburgCity_Gym_Movement_Unused: @ 82050D8 walk_in_place_fastest_down step_end -PetalburgCity_Gym_Movement_WallyArriveNorth: @ 82050E1 +PetalburgCity_Gym_Movement_WallyArriveNorth: delay_16 walk_up delay_16 @@ -693,7 +693,7 @@ PetalburgCity_Gym_Movement_WallyArriveNorth: @ 82050E1 walk_in_place_fastest_left step_end -PetalburgCity_Gym_Movement_WallyArrive: @ 82050EB +PetalburgCity_Gym_Movement_WallyArrive: delay_16 walk_up delay_16 @@ -702,7 +702,7 @@ PetalburgCity_Gym_Movement_WallyArrive: @ 82050EB walk_up step_end -PetalburgCity_Gym_Movement_WallyExitNorth: @ 82050F2 +PetalburgCity_Gym_Movement_WallyExitNorth: walk_down walk_down walk_down @@ -712,7 +712,7 @@ PetalburgCity_Gym_Movement_WallyExitNorth: @ 82050F2 walk_in_place_down step_end -PetalburgCity_Gym_Movement_WallyExitEast: @ 82050FA +PetalburgCity_Gym_Movement_WallyExitEast: walk_down walk_down walk_right @@ -722,7 +722,7 @@ PetalburgCity_Gym_Movement_WallyExitEast: @ 82050FA walk_in_place_down step_end -PetalburgCity_Gym_Movement_WallyExitSouthWest: @ 8205102 +PetalburgCity_Gym_Movement_WallyExitSouthWest: walk_down walk_down walk_down @@ -731,7 +731,7 @@ PetalburgCity_Gym_Movement_WallyExitSouthWest: @ 8205102 walk_in_place_down step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth: @ 8205109 +PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth: delay_16 delay_16 delay_16 @@ -741,7 +741,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth: @ 8205109 delay_8 step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallySouth: @ 8205111 +PetalburgCity_Gym_Movement_PlayerExitWithWallySouth: delay_16 delay_16 walk_right @@ -753,7 +753,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallySouth: @ 8205111 delay_8 step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallyWest: @ 820511B +PetalburgCity_Gym_Movement_PlayerExitWithWallyWest: delay_16 delay_16 walk_down @@ -763,7 +763,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallyWest: @ 820511B delay_8 step_end -PetalburgCity_Gym_Movement_PlayerExitWithWallyEast: @ 8205123 +PetalburgCity_Gym_Movement_PlayerExitWithWallyEast: walk_in_place_fastest_down delay_16 delay_16 @@ -775,12 +775,12 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallyEast: @ 8205123 delay_8 step_end -PetalburgCity_Gym_EventScript_NoAmountOfTrainingIsEnough:: @ 820512D +PetalburgCity_Gym_EventScript_NoAmountOfTrainingIsEnough:: msgbox PetalburgCity_Gym_Text_DadNoAmountOfTrainingIsEnough, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_SpeedRoomDoor:: @ 8205137 +PetalburgCity_Gym_EventScript_SpeedRoomDoor:: lockall compare VAR_PETALBURG_GYM_STATE, 6 goto_if_lt PetalburgCity_Gym_EventScript_DoorLocked @@ -793,7 +793,7 @@ PetalburgCity_Gym_EventScript_SpeedRoomDoor:: @ 8205137 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_EnterRoom:: @ 820516C +PetalburgCity_Gym_EventScript_EnterRoom:: closemessage delay 30 warpdoor MAP_PETALBURG_CITY_GYM, 255, VAR_0x8008, VAR_0x8009 @@ -801,17 +801,17 @@ PetalburgCity_Gym_EventScript_EnterRoom:: @ 820516C releaseall end -PetalburgCity_Gym_EventScript_DontEnterRoom:: @ 820517B +PetalburgCity_Gym_EventScript_DontEnterRoom:: releaseall end -PetalburgCity_Gym_EventScript_DoorLocked:: @ 820517D +PetalburgCity_Gym_EventScript_DoorLocked:: msgbox PetalburgCity_Gym_Text_DoorAppearsLocked, MSGBOX_DEFAULT releaseall end @ VAR_0x8008 and VAR_0x8009 below are the x and y coordinates of the warp -PetalburgCity_Gym_EventScript_AccuracyRoomDoor:: @ 8205187 +PetalburgCity_Gym_EventScript_AccuracyRoomDoor:: lockall compare VAR_PETALBURG_GYM_STATE, 6 goto_if_lt PetalburgCity_Gym_EventScript_DoorLocked @@ -824,7 +824,7 @@ PetalburgCity_Gym_EventScript_AccuracyRoomDoor:: @ 8205187 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_ConfusionRoomDoor:: @ 82051BC +PetalburgCity_Gym_EventScript_ConfusionRoomDoor:: lockall goto_if_not_defeated TRAINER_RANDALL, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 @@ -836,7 +836,7 @@ PetalburgCity_Gym_EventScript_ConfusionRoomDoor:: @ 82051BC goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_LeftDefenseRoomDoor:: @ 82051EF +PetalburgCity_Gym_EventScript_LeftDefenseRoomDoor:: lockall goto_if_not_defeated TRAINER_RANDALL, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 @@ -848,7 +848,7 @@ PetalburgCity_Gym_EventScript_LeftDefenseRoomDoor:: @ 82051EF goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_RightDefenseRoomDoor:: @ 8205222 +PetalburgCity_Gym_EventScript_RightDefenseRoomDoor:: lockall goto_if_not_defeated TRAINER_MARY, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 @@ -860,7 +860,7 @@ PetalburgCity_Gym_EventScript_RightDefenseRoomDoor:: @ 8205222 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_RecoveryRoomDoor:: @ 8205255 +PetalburgCity_Gym_EventScript_RecoveryRoomDoor:: lockall goto_if_not_defeated TRAINER_MARY, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 @@ -872,7 +872,7 @@ PetalburgCity_Gym_EventScript_RecoveryRoomDoor:: @ 8205255 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_LeftStrengthRoomDoor:: @ 8205288 +PetalburgCity_Gym_EventScript_LeftStrengthRoomDoor:: lockall goto_if_not_defeated TRAINER_PARKER, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 @@ -884,7 +884,7 @@ PetalburgCity_Gym_EventScript_LeftStrengthRoomDoor:: @ 8205288 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_RightStrengthRoomDoor:: @ 82052BB +PetalburgCity_Gym_EventScript_RightStrengthRoomDoor:: lockall goto_if_not_defeated TRAINER_ALEXIA, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 @@ -896,7 +896,7 @@ PetalburgCity_Gym_EventScript_RightStrengthRoomDoor:: @ 82052BB goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_LeftOHKORoomDoor:: @ 82052EE +PetalburgCity_Gym_EventScript_LeftOHKORoomDoor:: lockall goto_if_not_defeated TRAINER_ALEXIA, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 @@ -908,7 +908,7 @@ PetalburgCity_Gym_EventScript_LeftOHKORoomDoor:: @ 82052EE goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_RightOHKORoomDoor:: @ 8205321 +PetalburgCity_Gym_EventScript_RightOHKORoomDoor:: lockall goto_if_not_defeated TRAINER_GEORGE, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 @@ -920,7 +920,7 @@ PetalburgCity_Gym_EventScript_RightOHKORoomDoor:: @ 8205321 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_LeftGymLeadersRoomDoor:: @ 8205354 +PetalburgCity_Gym_EventScript_LeftGymLeadersRoomDoor:: lockall goto_if_not_defeated TRAINER_JODY, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 @@ -932,7 +932,7 @@ PetalburgCity_Gym_EventScript_LeftGymLeadersRoomDoor:: @ 8205354 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_RightGymLeadersRoomDoor:: @ 8205387 +PetalburgCity_Gym_EventScript_RightGymLeadersRoomDoor:: lockall goto_if_not_defeated TRAINER_BERKE, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 @@ -944,128 +944,128 @@ PetalburgCity_Gym_EventScript_RightGymLeadersRoomDoor:: @ 8205387 goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom end -PetalburgCity_Gym_EventScript_Randall:: @ 82053BA +PetalburgCity_Gym_EventScript_Randall:: trainerbattle_single TRAINER_RANDALL, PetalburgCity_Gym_Text_RandallIntro, PetalburgCity_Gym_Text_RandallDefeat, PetalburgCity_Gym_EventScript_SlideOpenSpeedRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_RandallPostBadge msgbox PetalburgCity_Gym_Text_RandallPostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenSpeedRoomDoors:: @ 82053DE +PetalburgCity_Gym_EventScript_SlideOpenSpeedRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_RandallPostBadge:: @ 82053ED +PetalburgCity_Gym_EventScript_RandallPostBadge:: msgbox PetalburgCity_Gym_Text_RandallPostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_Parker:: @ 82053F6 +PetalburgCity_Gym_EventScript_Parker:: trainerbattle_single TRAINER_PARKER, PetalburgCity_Gym_Text_ParkerIntro, PetalburgCity_Gym_Text_ParkerDefeat, PetalburgCity_Gym_EventScript_SlideOpenConfusionRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_ParkerPostBadge msgbox PetalburgCity_Gym_Text_ParkerPostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenConfusionRoomDoors:: @ 820541A +PetalburgCity_Gym_EventScript_SlideOpenConfusionRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenConfusionRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_ParkerPostBadge:: @ 8205429 +PetalburgCity_Gym_EventScript_ParkerPostBadge:: msgbox PetalburgCity_Gym_Text_ParkerPostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_George:: @ 8205432 +PetalburgCity_Gym_EventScript_George:: trainerbattle_single TRAINER_GEORGE, PetalburgCity_Gym_Text_GeorgeIntro, PetalburgCity_Gym_Text_GeorgeDefeat, PetalburgCity_Gym_EventScript_SlideOpenRecoveryRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_GeorgePostBadge msgbox PetalburgCity_Gym_Text_GeorgePostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenRecoveryRoomDoors:: @ 8205456 +PetalburgCity_Gym_EventScript_SlideOpenRecoveryRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenRecoveryRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_GeorgePostBadge:: @ 8205465 +PetalburgCity_Gym_EventScript_GeorgePostBadge:: msgbox PetalburgCity_Gym_Text_GeorgePostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_Berke:: @ 820546E +PetalburgCity_Gym_EventScript_Berke:: trainerbattle_single TRAINER_BERKE, PetalburgCity_Gym_Text_BerkeIntro, PetalburgCity_Gym_Text_BerkeDefeat, PetalburgCity_Gym_EventScript_SlideOpenOHKORoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_BerkePostBadge msgbox PetalburgCity_Gym_Text_BerkePostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenOHKORoomDoors:: @ 8205492 +PetalburgCity_Gym_EventScript_SlideOpenOHKORoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenOHKORoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_BerkePostBadge:: @ 82054A1 +PetalburgCity_Gym_EventScript_BerkePostBadge:: msgbox PetalburgCity_Gym_Text_BerkePostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_Mary:: @ 82054AA +PetalburgCity_Gym_EventScript_Mary:: trainerbattle_single TRAINER_MARY, PetalburgCity_Gym_Text_MaryIntro, PetalburgCity_Gym_Text_MaryDefeat, PetalburgCity_Gym_EventScript_SlideOpenAccuracyRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_MaryPostBadge msgbox PetalburgCity_Gym_Text_MaryPostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenAccuracyRoomDoors:: @ 82054CE +PetalburgCity_Gym_EventScript_SlideOpenAccuracyRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenAccuracyRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_MaryPostBadge:: @ 82054DD +PetalburgCity_Gym_EventScript_MaryPostBadge:: msgbox PetalburgCity_Gym_Text_MaryPostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_Alexia:: @ 82054E6 +PetalburgCity_Gym_EventScript_Alexia:: trainerbattle_single TRAINER_ALEXIA, PetalburgCity_Gym_Text_AlexiaIntro, PetalburgCity_Gym_Text_AlexiaDefeat, PetalburgCity_Gym_EventScript_SlideOpenDefenseRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_AlexiaPostBadge msgbox PetalburgCity_Gym_Text_AlexiaPostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenDefenseRoomDoors:: @ 820550A +PetalburgCity_Gym_EventScript_SlideOpenDefenseRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenDefenseRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_AlexiaPostBadge:: @ 8205519 +PetalburgCity_Gym_EventScript_AlexiaPostBadge:: msgbox PetalburgCity_Gym_Text_AlexiaPostBadge, MSGBOX_NPC end -PetalburgCity_Gym_EventScript_Jody:: @ 8205522 +PetalburgCity_Gym_EventScript_Jody:: trainerbattle_single TRAINER_JODY, PetalburgCity_Gym_Text_JodyIntro, PetalburgCity_Gym_Text_JodyDefeat, PetalburgCity_Gym_EventScript_SlideOpenStrengthRoomDoors goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_JodyPostBadge msgbox PetalburgCity_Gym_Text_JodyPostBattle, MSGBOX_AUTOCLOSE end -PetalburgCity_Gym_EventScript_SlideOpenStrengthRoomDoors:: @ 8205546 +PetalburgCity_Gym_EventScript_SlideOpenStrengthRoomDoors:: setvar VAR_0x8005, 0 call PetalburgCity_Gym_EventScript_OpenStrengthRoomDoors special DrawWholeMapView release end -PetalburgCity_Gym_EventScript_JodyPostBadge:: @ 8205555 +PetalburgCity_Gym_EventScript_JodyPostBadge:: msgbox PetalburgCity_Gym_Text_JodyPostBadge, MSGBOX_NPC end @ VAR_0x8004 below is the room number @ VAR_0x8005 below is 0 when the door should be slid open and 1 when it should be unlocked immediately -PetalburgCity_Gym_EventScript_OpenGymEntranceDoors:: @ 820555E +PetalburgCity_Gym_EventScript_OpenGymEntranceDoors:: setvar VAR_0x8004, 1 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1074,7 +1074,7 @@ PetalburgCity_Gym_EventScript_OpenGymEntranceDoors:: @ 820555E call PetalburgCity_Gym_EventScript_SetEntranceRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors:: @ 820557F +PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors:: setvar VAR_0x8004, 2 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1083,7 +1083,7 @@ PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors:: @ 820557F call PetalburgCity_Gym_EventScript_SetSpeedRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenAccuracyRoomDoors:: @ 82055A0 +PetalburgCity_Gym_EventScript_OpenAccuracyRoomDoors:: setvar VAR_0x8004, 3 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1092,7 +1092,7 @@ PetalburgCity_Gym_EventScript_OpenAccuracyRoomDoors:: @ 82055A0 call PetalburgCity_Gym_EventScript_SetAccuracyRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenConfusionRoomDoors:: @ 82055C1 +PetalburgCity_Gym_EventScript_OpenConfusionRoomDoors:: setvar VAR_0x8004, 4 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1101,7 +1101,7 @@ PetalburgCity_Gym_EventScript_OpenConfusionRoomDoors:: @ 82055C1 call PetalburgCity_Gym_EventScript_SetConfusionRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenDefenseRoomDoors:: @ 82055E2 +PetalburgCity_Gym_EventScript_OpenDefenseRoomDoors:: setvar VAR_0x8004, 5 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1110,7 +1110,7 @@ PetalburgCity_Gym_EventScript_OpenDefenseRoomDoors:: @ 82055E2 call PetalburgCity_Gym_EventScript_SetDefenseRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenRecoveryRoomDoors:: @ 8205603 +PetalburgCity_Gym_EventScript_OpenRecoveryRoomDoors:: setvar VAR_0x8004, 6 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1119,7 +1119,7 @@ PetalburgCity_Gym_EventScript_OpenRecoveryRoomDoors:: @ 8205603 call PetalburgCity_Gym_EventScript_SetRecoveryRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenStrengthRoomDoors:: @ 8205624 +PetalburgCity_Gym_EventScript_OpenStrengthRoomDoors:: setvar VAR_0x8004, 7 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1128,7 +1128,7 @@ PetalburgCity_Gym_EventScript_OpenStrengthRoomDoors:: @ 8205624 call PetalburgCity_Gym_EventScript_SetStrengthRoomDoorMetatiles return -PetalburgCity_Gym_EventScript_OpenOHKORoomDoors:: @ 8205645 +PetalburgCity_Gym_EventScript_OpenOHKORoomDoors:: setvar VAR_0x8004, 8 compare VAR_0x8005, 0 call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors @@ -1137,64 +1137,64 @@ PetalburgCity_Gym_EventScript_OpenOHKORoomDoors:: @ 8205645 call PetalburgCity_Gym_EventScript_SetOHKORoomDoorMetatiles return -PetalburgCity_Gym_EventScript_SetEntranceRoomDoorMetatiles:: @ 8205666 +PetalburgCity_Gym_EventScript_SetEntranceRoomDoorMetatiles:: setmetatile 6, 85, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 85, METATILE_PetalburgGym_RoomEntrance_Right, 0 setmetatile 1, 98, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 98, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetSpeedRoomDoorMetatiles:: @ 820568B +PetalburgCity_Gym_EventScript_SetSpeedRoomDoorMetatiles:: setmetatile 6, 46, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 46, METATILE_PetalburgGym_RoomEntrance_Right, 0 setmetatile 1, 59, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 59, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetAccuracyRoomDoorMetatiles:: @ 82056B0 +PetalburgCity_Gym_EventScript_SetAccuracyRoomDoorMetatiles:: setmetatile 6, 59, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 59, METATILE_PetalburgGym_RoomEntrance_Right, 0 setmetatile 1, 72, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 72, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetConfusionRoomDoorMetatiles:: @ 82056D5 +PetalburgCity_Gym_EventScript_SetConfusionRoomDoorMetatiles:: setmetatile 1, 20, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 20, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetDefenseRoomDoorMetatiles:: @ 82056E8 +PetalburgCity_Gym_EventScript_SetDefenseRoomDoorMetatiles:: setmetatile 6, 20, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 20, METATILE_PetalburgGym_RoomEntrance_Right, 0 setmetatile 1, 33, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 33, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetRecoveryRoomDoorMetatiles:: @ 820570D +PetalburgCity_Gym_EventScript_SetRecoveryRoomDoorMetatiles:: setmetatile 6, 33, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 33, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetStrengthRoomDoorMetatiles:: @ 8205720 +PetalburgCity_Gym_EventScript_SetStrengthRoomDoorMetatiles:: setmetatile 1, 7, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 2, 7, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SetOHKORoomDoorMetatiles:: @ 8205733 +PetalburgCity_Gym_EventScript_SetOHKORoomDoorMetatiles:: setmetatile 6, 7, METATILE_PetalburgGym_RoomEntrance_Left, 0 setmetatile 7, 7, METATILE_PetalburgGym_RoomEntrance_Right, 0 return -PetalburgCity_Gym_EventScript_SlideOpenRoomDoors:: @ 8205746 +PetalburgCity_Gym_EventScript_SlideOpenRoomDoors:: special PetalburgGymSlideOpenRoomDoors waitstate return -PetalburgCity_Gym_EventScript_UnlockRoomDoors:: @ 820574B +PetalburgCity_Gym_EventScript_UnlockRoomDoors:: special PetalburgGymUnlockRoomDoors return -PetalburgCity_Gym_EventScript_GymGuide:: @ 820574F +PetalburgCity_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_GymGuidePostVictory @@ -1202,34 +1202,34 @@ PetalburgCity_Gym_EventScript_GymGuide:: @ 820574F release end -PetalburgCity_Gym_EventScript_GymGuidePostVictory:: @ 8205764 +PetalburgCity_Gym_EventScript_GymGuidePostVictory:: msgbox PetalburgCity_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -PetalburgCity_Gym_EventScript_LeftGymStatue:: @ 820576E +PetalburgCity_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE05_GET, PetalburgCity_Gym_EventScript_GymStatueCertified goto PetalburgCity_Gym_EventScript_GymStatue end -PetalburgCity_Gym_EventScript_RightGymStatue:: @ 820577E +PetalburgCity_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE05_GET, PetalburgCity_Gym_EventScript_GymStatueCertified goto PetalburgCity_Gym_EventScript_GymStatue end -PetalburgCity_Gym_EventScript_GymStatueCertified:: @ 820578E +PetalburgCity_Gym_EventScript_GymStatueCertified:: msgbox PetalburgCity_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -PetalburgCity_Gym_EventScript_GymStatue:: @ 8205798 +PetalburgCity_Gym_EventScript_GymStatue:: msgbox PetalburgCity_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -PetalburgCity_Gym_Text_DadYoureHereWithYourPokemon: @ 82057A2 +PetalburgCity_Gym_Text_DadYoureHereWithYourPokemon: .string "DAD: Hm?\p" .string "Well, if it isn't {PLAYER}!\n" .string "So you're all finished moving in?\p" @@ -1242,15 +1242,15 @@ PetalburgCity_Gym_Text_DadYoureHereWithYourPokemon: @ 82057A2 .string "That's great news!\n" .string "I'll be looking forward to it!$" -PetalburgCity_Gym_Text_WallyIdLikeAPokemon: @ 82058B1 +PetalburgCity_Gym_Text_WallyIdLikeAPokemon: .string "Um… I…\n" .string "I'd like to get a POKéMON, please…$" -PetalburgCity_Gym_Text_DadOhYoureWallyRight: @ 82058DB +PetalburgCity_Gym_Text_DadOhYoureWallyRight: .string "DAD: Hm? You're… Uh… Oh, right.\n" .string "You're WALLY, right?$" -PetalburgCity_Gym_Text_WallyIveNeverCaughtAPokemon: @ 8205910 +PetalburgCity_Gym_Text_WallyIveNeverCaughtAPokemon: .string "WALLY: I'm going to go stay with my\n" .string "relatives in VERDANTURF TOWN.\p" .string "I thought I would be lonely by myself,\n" @@ -1258,38 +1258,38 @@ PetalburgCity_Gym_Text_WallyIveNeverCaughtAPokemon: @ 8205910 .string "But I've never caught a POKéMON before.\n" .string "I don't know how…$" -PetalburgCity_Gym_Text_DadHmISee: @ 82059D8 +PetalburgCity_Gym_Text_DadHmISee: .string "DAD: Hm. I see.$" -PetalburgCity_Gym_Text_DadPlayerGoWithWally: @ 82059E8 +PetalburgCity_Gym_Text_DadPlayerGoWithWally: .string "DAD: {PLAYER}, you heard that,\n" .string "right?\p" .string "Go with WALLY and make sure that he\n" .string "safely catches a POKéMON.$" -PetalburgCity_Gym_Text_IllLoanYouMyZigzagoon: @ 8205A46 +PetalburgCity_Gym_Text_IllLoanYouMyZigzagoon: .string "WALLY, here, I'll loan you my POKéMON.\p" .string "WALLY received a ZIGZAGOON!$" -PetalburgCity_Gym_Text_WallyThankYouAndDadGivesPokeBall: @ 8205A89 +PetalburgCity_Gym_Text_WallyThankYouAndDadGivesPokeBall: .string "WALLY: Oh, wow!\n" .string "A POKéMON!\p" .string "DAD: Hm. I'll give you a POKé BALL, too.\n" .string "Go for it!\p" .string "WALLY received a POKé BALL!$" -PetalburgCity_Gym_Text_WallyOhWowThankYou: @ 8205AF4 +PetalburgCity_Gym_Text_WallyOhWowThankYou: .string "WALLY: Oh, wow!\n" .string "Thank you!$" -PetalburgCity_Gym_Text_WouldYouReallyComeWithMe: @ 8205B0F +PetalburgCity_Gym_Text_WouldYouReallyComeWithMe: .string "{PLAYER}… Would you really come\n" .string "with me?$" -PetalburgCity_Gym_Text_DadSoDidItWorkOut: @ 8205B32 +PetalburgCity_Gym_Text_DadSoDidItWorkOut: .string "DAD: So, did it work out?$" -PetalburgCity_Gym_Text_WallyThankYouBye: @ 8205B4C +PetalburgCity_Gym_Text_WallyThankYouBye: .string "WALLY: Thank you, yes, it did.\n" .string "Here's your POKéMON back.\p" .string "{PLAYER}, thank you for coming along\n" @@ -1302,7 +1302,7 @@ PetalburgCity_Gym_Text_WallyThankYouBye: @ 8205B4C .string "so I have to go!\p" .string "Bye, {PLAYER}!$" -PetalburgCity_Gym_Text_DadGoCollectBadges: @ 8205C40 +PetalburgCity_Gym_Text_DadGoCollectBadges: .string "DAD: Now…\p" .string "{PLAYER}, if you want to become a\n" .string "strong TRAINER, here's my advice.\p" @@ -1319,7 +1319,7 @@ PetalburgCity_Gym_Text_DadGoCollectBadges: @ 8205C40 .string "But that's only after you become\n" .string "stronger.$" -PetalburgCity_Gym_Text_NormanGoToRustboro: @ 8205DB4 +PetalburgCity_Gym_Text_NormanGoToRustboro: .string "DAD: Hm? Aren't you going to the\n" .string "POKéMON GYM in RUSTBORO CITY?\p" .string "There's no challenge for me to\n" @@ -1329,7 +1329,7 @@ PetalburgCity_Gym_Text_NormanGoToRustboro: @ 8205DB4 .string "I'll battle you, {PLAYER}, when you\n" .string "can show me four GYM BADGES, okay?$" -PetalburgCity_Gym_Text_NormanGoToDewford: @ 8205EAE +PetalburgCity_Gym_Text_NormanGoToDewford: .string "DAD: I see… So, you've beaten\n" .string "the GYM LEADER in RUSTBORO CITY.\p" .string "But there are many more TRAINERS\n" @@ -1338,13 +1338,13 @@ PetalburgCity_Gym_Text_NormanGoToDewford: @ 8205EAE .string "GYM LEADER named BRAWLY.\p" .string "You should go challenge him.$" -PetalburgCity_Gym_Text_YouHaveGottenStronger: @ 8205F87 +PetalburgCity_Gym_Text_YouHaveGottenStronger: .string "DAD: Hm… {PLAYER}, you have gotten\n" .string "stronger.\p" .string "I can tell by the number of BADGES\n" .string "that you've earned.$" -PetalburgCity_Gym_Text_NormanIntro: @ 8205FE5 +PetalburgCity_Gym_Text_NormanIntro: .string "DAD: Hm…\n" .string "So, you did get four GYM BADGES.\p" .string "Fine, as I promised, we will have\n" @@ -1358,7 +1358,7 @@ PetalburgCity_Gym_Text_NormanIntro: @ 8205FE5 .string "{PLAYER}, you'd better give it your\n" .string "best shot, too!$" -PetalburgCity_Gym_Text_NormanDefeat: @ 8206107 +PetalburgCity_Gym_Text_NormanDefeat: .string "…\p" .string "I… I can't…\p" .string "I can't believe it. {PLAYER}…\p" @@ -1366,11 +1366,11 @@ PetalburgCity_Gym_Text_NormanDefeat: @ 8206107 .string "But, rules are rules!\n" .string "Here, take this.$" -PetalburgCity_Gym_Text_ReceivedBalanceBadge: @ 8206162 +PetalburgCity_Gym_Text_ReceivedBalanceBadge: .string "{PLAYER} received the BALANCE BADGE\n" .string "from DAD!$" -PetalburgCity_Gym_Text_ExplainBalanceBadgeTakeThis: @ 820618A +PetalburgCity_Gym_Text_ExplainBalanceBadgeTakeThis: .string "DAD: With that BADGE, the DEFENSE\n" .string "of all your POKéMON will increase.\p" .string "POKéMON that know the HM move SURF\n" @@ -1378,7 +1378,7 @@ PetalburgCity_Gym_Text_ExplainBalanceBadgeTakeThis: @ 820618A .string "This is my gift to you. {PLAYER}, I'm\n" .string "sure you can use it correctly.$" -PetalburgCity_Gym_Text_ExplainFacade: @ 8206254 +PetalburgCity_Gym_Text_ExplainFacade: .string "DAD: TM42 contains FACADE.\p" .string "It doubles the power of moves if\n" .string "the POKéMON is poisoned, paralyzed,\l" @@ -1386,23 +1386,23 @@ PetalburgCity_Gym_Text_ExplainFacade: @ 8206254 .string "It might be able to turn a bad\n" .string "situation into an advantage.$" -PetalburgCity_Gym_Text_DadHappyAndSad: @ 82062FB +PetalburgCity_Gym_Text_DadHappyAndSad: .string "DAD: As the GYM LEADER, I can't\n" .string "express how upset I am…\p" .string "But as a father, it makes me both\n" .string "happy and a little sad. It's odd…$" -PetalburgCity_Gym_Text_PleaseComeWithMe: @ 8206377 +PetalburgCity_Gym_Text_PleaseComeWithMe: .string "Ah, there you are, {PLAYER}{KUN}!\p" .string "Please come with me.\n" .string "I have something I want you to have.$" -PetalburgCity_Gym_Text_LetMeBorrowPlayer: @ 82063CA +PetalburgCity_Gym_Text_LetMeBorrowPlayer: .string "NORMAN, you don't mind, do you?\p" .string "Let me borrow your {PLAYER}{KUN} for\n" .string "a minute or two.$" -PetalburgCity_Gym_Text_DadGoingToKeepTraining: @ 8206417 +PetalburgCity_Gym_Text_DadGoingToKeepTraining: .string "DAD: {PLAYER}, you should go visit\n" .string "your mother every so often.\p" .string "I'm going to stay here and redouble\n" @@ -1410,13 +1410,13 @@ PetalburgCity_Gym_Text_DadGoingToKeepTraining: @ 8206417 .string "It would bother me as a TRAINER to\n" .string "not avenge my loss to you, {PLAYER}!$" -PetalburgCity_Gym_Text_DadNoAmountOfTrainingIsEnough: @ 82064C3 +PetalburgCity_Gym_Text_DadNoAmountOfTrainingIsEnough: .string "DAD: {PLAYER}, how are things going?\p" .string "The world of POKéMON is deep.\p" .string "I honestly think that no amount of\n" .string "training would ever be enough.$" -PetalburgCity_Gym_Text_GymGuideAdvice: @ 8206542 +PetalburgCity_Gym_Text_GymGuideAdvice: .string "Hey, how's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "The doors in this GYM open when you\n" @@ -1434,53 +1434,53 @@ PetalburgCity_Gym_Text_GymGuideAdvice: @ 8206542 .string "Once you've chosen the door…\n" .string "Well, hey, go for it!$" -PetalburgCity_Gym_Text_GymGuidePostVictory: @ 82066F3 +PetalburgCity_Gym_Text_GymGuidePostVictory: .string "{PLAYER}! Whoa! You've overcome even\n" .string "your own father!\p" .string "Like, whoa!\n" .string "What a stunning turn of events!$" -PetalburgCity_Gym_Text_RandallIntro: @ 820674F +PetalburgCity_Gym_Text_RandallIntro: .string "The ability to attack before the\n" .string "opponent…\p" .string "Just that alone puts me at a great\n" .string "advantage, don't you agree?$" -PetalburgCity_Gym_Text_RandallDefeat: @ 82067B9 +PetalburgCity_Gym_Text_RandallDefeat: .string "That was a magnificent battle!$" -PetalburgCity_Gym_Text_RandallPostBattle: @ 82067D8 +PetalburgCity_Gym_Text_RandallPostBattle: .string "Go on to the next room where a new\n" .string "challenge awaits you.\p" .string "At the left is the CONFUSION ROOM.\p" .string "The right door leads to the DEFENSE\n" .string "ROOM.$" -PetalburgCity_Gym_Text_RandallPostBadge: @ 820685E +PetalburgCity_Gym_Text_RandallPostBadge: .string "Whomever you beat, and whomever you\n" .string "may lose to, you never shirk from\l" .string "training yourself and your POKéMON.\p" .string "That's what I think being a\n" .string "GYM LEADER is all about.$" -PetalburgCity_Gym_Text_ParkerIntro: @ 82068FD +PetalburgCity_Gym_Text_ParkerIntro: .string "This is the CONFUSION ROOM.\p" .string "Let me see how well bonded you are\n" .string "with your POKéMON!$" -PetalburgCity_Gym_Text_ParkerDefeat: @ 820694F +PetalburgCity_Gym_Text_ParkerDefeat: .string "I couldn't confuse your team enough…\n" .string "You share a strong bond together.$" -PetalburgCity_Gym_Text_ParkerPostBattle: @ 8206996 +PetalburgCity_Gym_Text_ParkerPostBattle: .string "The next room is the STRENGTH ROOM.\n" .string "Can you withstand brute force?$" -PetalburgCity_Gym_Text_ParkerPostBadge: @ 82069D9 +PetalburgCity_Gym_Text_ParkerPostBadge: .string "After you beat our LEADER, the\n" .string "training has become a lot tougher.$" -PetalburgCity_Gym_Text_GeorgeIntro: @ 8206A1B +PetalburgCity_Gym_Text_GeorgeIntro: .string "Just when you think you're going to\n" .string "win, your opponent restores HP…\p" .string "Can you just imagine how awful that\n" @@ -1488,11 +1488,11 @@ PetalburgCity_Gym_Text_GeorgeIntro: @ 8206A1B .string "I'll show you exactly how awful it\n" .string "feels!$" -PetalburgCity_Gym_Text_GeorgeDefeat: @ 8206AB8 +PetalburgCity_Gym_Text_GeorgeDefeat: .string "I couldn't restore HP enough…\n" .string "What ATTACK power…$" -PetalburgCity_Gym_Text_GeorgePostBattle: @ 8206AE9 +PetalburgCity_Gym_Text_GeorgePostBattle: .string "I should have expected no less from\n" .string "our LEADER's kid.\p" .string "No, wait! A TRAINER's abilities are\n" @@ -1501,21 +1501,21 @@ PetalburgCity_Gym_Text_GeorgePostBattle: @ 8206AE9 .string "weren't enough.\p" .string "Go on! The ONE-HIT KO ROOM is next.$" -PetalburgCity_Gym_Text_GeorgePostBadge: @ 8206BB1 +PetalburgCity_Gym_Text_GeorgePostBadge: .string "I'm going to keep training at GYMS.\n" .string "One day, I'll become a LEADER.$" -PetalburgCity_Gym_Text_BerkeIntro: @ 8206BF4 +PetalburgCity_Gym_Text_BerkeIntro: .string "I'm not going to take it easy just\n" .string "because you're our LEADER's kid.\p" .string "I'll show you how horrid it is for\n" .string "a POKéMON to take a critical hit!$" -PetalburgCity_Gym_Text_BerkeDefeat: @ 8206C7D +PetalburgCity_Gym_Text_BerkeDefeat: .string "Your power…\n" .string "You're the real deal.$" -PetalburgCity_Gym_Text_BerkePostBattle: @ 8206C9F +PetalburgCity_Gym_Text_BerkePostBattle: .string "Your father really is strong.\n" .string "He's a TRAINER worth my respect.\p" .string "And, I sense the same glow coming\n" @@ -1523,21 +1523,21 @@ PetalburgCity_Gym_Text_BerkePostBattle: @ 8206C9F .string "I hope that you'll stage a terrific\n" .string "battle with your father!$" -PetalburgCity_Gym_Text_BerkePostBadge: @ 8206D56 +PetalburgCity_Gym_Text_BerkePostBadge: .string "Since your dad became the LEADER,\n" .string "the TRAINERS of PETALBURG CITY have\l" .string "become a lot tougher.$" -PetalburgCity_Gym_Text_MaryIntro: @ 8206DB2 +PetalburgCity_Gym_Text_MaryIntro: .string "Giggle…\n" .string "This is the ACCURACY ROOM.\p" .string "It's pretty nasty when every attack\n" .string "lands without fail.$" -PetalburgCity_Gym_Text_MaryDefeat: @ 8206E0D +PetalburgCity_Gym_Text_MaryDefeat: .string "You were a cut above me…$" -PetalburgCity_Gym_Text_MaryPostBattle: @ 8206E26 +PetalburgCity_Gym_Text_MaryPostBattle: .string "There are some even stronger\n" .string "TRAINERS waiting for you.\p" .string "The left is the DEFENSE ROOM, and\n" @@ -1545,20 +1545,20 @@ PetalburgCity_Gym_Text_MaryPostBattle: @ 8206E26 .string "Your POKéMON's ATTACK power will be\n" .string "on trial either way.$" -PetalburgCity_Gym_Text_MaryPostBadge: @ 8206ED8 +PetalburgCity_Gym_Text_MaryPostBadge: .string "Do you know what we're trying to\n" .string "achieve as TRAINERS?\p" .string "We're striving to become soul mates\n" .string "with our POKéMON.$" -PetalburgCity_Gym_Text_AlexiaIntro: @ 8206F44 +PetalburgCity_Gym_Text_AlexiaIntro: .string "The higher the DEFENSE, the more\n" .string "reckless I can be in attack.$" -PetalburgCity_Gym_Text_AlexiaDefeat: @ 8206F82 +PetalburgCity_Gym_Text_AlexiaDefeat: .string "Our defenses weren't enough…$" -PetalburgCity_Gym_Text_AlexiaPostBattle: @ 8206F9F +PetalburgCity_Gym_Text_AlexiaPostBattle: .string "I think you've taught me a valuable\n" .string "lesson here.\p" .string "Now, go on! The left door goes to\n" @@ -1568,83 +1568,83 @@ PetalburgCity_Gym_Text_AlexiaPostBattle: @ 8206F9F .string "Both of them have TRAINERS who are\n" .string "skilled at offense.$" -PetalburgCity_Gym_Text_AlexiaPostBadge: @ 8207069 +PetalburgCity_Gym_Text_AlexiaPostBadge: .string "Hi! Have you tried using SURF?$" -PetalburgCity_Gym_Text_JodyIntro: @ 8207088 +PetalburgCity_Gym_Text_JodyIntro: .string "Our GYM LEADER told us to go all out\n" .string "and beat you.\p" .string "Even if you happen to be the\n" .string "LEADER's kid!$" -PetalburgCity_Gym_Text_JodyDefeat: @ 82070E6 +PetalburgCity_Gym_Text_JodyDefeat: .string "But… I went all out!$" -PetalburgCity_Gym_Text_JodyPostBattle: @ 82070FB +PetalburgCity_Gym_Text_JodyPostBattle: .string "The way you use your POKéMON…\n" .string "It's like your father's style.\p" .string "Go on through! The GYM LEADER, your\n" .string "father, is waiting!$" -PetalburgCity_Gym_Text_JodyPostBadge: @ 8207170 +PetalburgCity_Gym_Text_JodyPostBadge: .string "Sure, it's fine to make your POKéMON\n" .string "stronger.\p" .string "But what decides the winner?\p" .string "Why, it's the feelings TRAINERS have\n" .string "for their POKéMON.$" -PetalburgCity_Gym_Text_DoorAppearsLocked: @ 82071F4 +PetalburgCity_Gym_Text_DoorAppearsLocked: .string "This door appears to be locked\n" .string "right now…$" -PetalburgCity_Gym_Text_EnterSpeedRoom: @ 820721E +PetalburgCity_Gym_Text_EnterSpeedRoom: .string "“SPEED ROOM,” the sign says.\p" .string "Do you want to go through?$" @ Unused -PetalburgCity_Gym_Text_DoorAppearsLocked2: @ 8207256 +PetalburgCity_Gym_Text_DoorAppearsLocked2: .string "This door appears to be locked\n" .string "right now…$" -PetalburgCity_Gym_Text_EnterAccuracyRoom: @ 8207280 +PetalburgCity_Gym_Text_EnterAccuracyRoom: .string "“ACCURACY ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterConfusionRoom: @ 82072BB +PetalburgCity_Gym_Text_EnterConfusionRoom: .string "“CONFUSION ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterDefenseRoom: @ 82072F7 +PetalburgCity_Gym_Text_EnterDefenseRoom: .string "“DEFENSE ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterRecoveryRoom: @ 8207331 +PetalburgCity_Gym_Text_EnterRecoveryRoom: .string "“RECOVERY ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterStrengthRoom: @ 820736C +PetalburgCity_Gym_Text_EnterStrengthRoom: .string "“STRENGTH ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterOHKORoom: @ 82073A7 +PetalburgCity_Gym_Text_EnterOHKORoom: .string "“ONE-HIT KO ROOM,” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_EnterGymLeadersRoom: @ 82073E4 +PetalburgCity_Gym_Text_EnterGymLeadersRoom: .string "“GYM LEADER'S ROOM\p" .string "“See for yourself what POKéMON await\n" .string "you!” the sign says.\p" .string "Do you want to go through?$" -PetalburgCity_Gym_Text_GymStatue: @ 820744C +PetalburgCity_Gym_Text_GymStatue: .string "PETALBURG CITY POKéMON GYM$" -PetalburgCity_Gym_Text_GymStatueCertified: @ 8207467 +PetalburgCity_Gym_Text_GymStatueCertified: .string "PETALBURG CITY POKéMON GYM\p" .string "NORMAN'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -PetalburgCity_Gym_Text_NormanPreRematch: @ 82074A2 +PetalburgCity_Gym_Text_NormanPreRematch: .string "DAD: {PLAYER}…\n" .string "I had a feeling that you would come.\p" .string "I would never refuse to accept\n" @@ -1656,18 +1656,18 @@ PetalburgCity_Gym_Text_NormanPreRematch: @ 82074A2 .string "we owe it to each other to do the best\l" .string "we can. Isn't that right, {PLAYER}?$" -PetalburgCity_Gym_Text_NormanRematchDefeat: @ 82075CE +PetalburgCity_Gym_Text_NormanRematchDefeat: .string "Uh… Haha…\n" .string "Maybe that was going too hard…$" -PetalburgCity_Gym_Text_NormanPostRematch: @ 82075F7 +PetalburgCity_Gym_Text_NormanPostRematch: .string "DAD: {PLAYER}…\n" .string "What is your dream?\p" .string "My dream…\n" .string "Hahaha…\l" .string "It has already come true, actually.$" -PetalburgCity_Gym_Text_NormanRematchNeedTwoMons: @ 820764A +PetalburgCity_Gym_Text_NormanRematchNeedTwoMons: .string "DAD: {PLAYER}…\n" .string "I had a feeling that you would come.\p" .string "I would never refuse to accept\n" diff --git a/data/maps/PetalburgCity_House1/scripts.inc b/data/maps/PetalburgCity_House1/scripts.inc index 2fe46437ee67..ac803259c442 100644 --- a/data/maps/PetalburgCity_House1/scripts.inc +++ b/data/maps/PetalburgCity_House1/scripts.inc @@ -1,20 +1,20 @@ -PetalburgCity_House1_MapScripts:: @ 8207799 +PetalburgCity_House1_MapScripts:: .byte 0 -PetalburgCity_House1_EventScript_Man:: @ 820779A +PetalburgCity_House1_EventScript_Man:: msgbox PetalburgCity_House1_Text_TravelingIsWonderful, MSGBOX_NPC end -PetalburgCity_House1_EventScript_Woman:: @ 82077A3 +PetalburgCity_House1_EventScript_Woman:: msgbox PetalburgCity_House1_Text_GoOnAdventure, MSGBOX_NPC end -PetalburgCity_House1_Text_TravelingIsWonderful: @ 82077AC +PetalburgCity_House1_Text_TravelingIsWonderful: .string "Traveling is wonderful!\p" .string "When I was young, I roamed the seas\n" .string "and the mountains!$" -PetalburgCity_House1_Text_GoOnAdventure: @ 82077FB +PetalburgCity_House1_Text_GoOnAdventure: .string "Sigh…\p" .string "I wish I could go on an adventure\n" .string "with some POKéMON…\p" diff --git a/data/maps/PetalburgCity_House2/scripts.inc b/data/maps/PetalburgCity_House2/scripts.inc index 3be93cbd047f..1770627ed06b 100644 --- a/data/maps/PetalburgCity_House2/scripts.inc +++ b/data/maps/PetalburgCity_House2/scripts.inc @@ -1,21 +1,21 @@ -PetalburgCity_House2_MapScripts:: @ 82078F2 +PetalburgCity_House2_MapScripts:: .byte 0 -PetalburgCity_House2_EventScript_Woman:: @ 82078F3 +PetalburgCity_House2_EventScript_Woman:: msgbox PetalburgCity_House2_Text_NormanBecameGymLeader, MSGBOX_NPC end -PetalburgCity_House2_EventScript_SchoolKid:: @ 82078FC +PetalburgCity_House2_EventScript_SchoolKid:: msgbox PetalburgCity_House2_Text_BattledNormanOnce, MSGBOX_NPC end -PetalburgCity_House2_Text_NormanBecameGymLeader: @ 8207905 +PetalburgCity_House2_Text_NormanBecameGymLeader: .string "NORMAN became our town's new\n" .string "GYM LEADER.\p" .string "I think he called his family over from\n" .string "somewhere far away.$" -PetalburgCity_House2_Text_BattledNormanOnce: @ 8207969 +PetalburgCity_House2_Text_BattledNormanOnce: .string "I battled NORMAN once, but, whew,\n" .string "he was way too strong.\p" .string "How would I put it?\p" diff --git a/data/maps/PetalburgCity_Mart/scripts.inc b/data/maps/PetalburgCity_Mart/scripts.inc index f27f0aeb5dcc..abaa7b5b0ec3 100644 --- a/data/maps/PetalburgCity_Mart/scripts.inc +++ b/data/maps/PetalburgCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -PetalburgCity_Mart_MapScripts:: @ 8207D68 +PetalburgCity_Mart_MapScripts:: .byte 0 -PetalburgCity_Mart_EventScript_Clerk:: @ 8207D69 +PetalburgCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -13,7 +13,7 @@ PetalburgCity_Mart_EventScript_Clerk:: @ 8207D69 end .align 2 -PetalburgCity_Mart_Pokemart_Basic: @ 8207D8C +PetalburgCity_Mart_Pokemart_Basic: .2byte ITEM_POKE_BALL .2byte ITEM_POTION .2byte ITEM_ANTIDOTE @@ -29,14 +29,14 @@ PetalburgCity_Mart_Pokemart_Basic: @ 8207D8C release end -PetalburgCity_Mart_EventScript_ExpandedItems:: @ 8207DA6 +PetalburgCity_Mart_EventScript_ExpandedItems:: pokemart PetalburgCity_Mart_Pokemart_Expanded msgbox gText_PleaseComeAgain, MSGBOX_DEFAULT release end .align 2 -PetalburgCity_Mart_Pokemart_Expanded: @ 8207DB8 +PetalburgCity_Mart_Pokemart_Expanded: .2byte ITEM_POKE_BALL .2byte ITEM_GREAT_BALL .2byte ITEM_POTION @@ -54,30 +54,30 @@ PetalburgCity_Mart_Pokemart_Expanded: @ 8207DB8 release end -PetalburgCity_Mart_EventScript_Woman:: @ 8207DD6 +PetalburgCity_Mart_EventScript_Woman:: msgbox PetalburgCity_Mart_Text_WeakWillGrowStronger, MSGBOX_NPC end -PetalburgCity_Mart_EventScript_Boy:: @ 8207DDF +PetalburgCity_Mart_EventScript_Boy:: msgbox PetalburgCity_Mart_Text_RepelIsUseful, MSGBOX_NPC end -PetalburgCity_Mart_EventScript_Man:: @ 8207DE8 +PetalburgCity_Mart_EventScript_Man:: msgbox PetalburgCity_Mart_Text_TakeSomeAntidotesWithYou, MSGBOX_NPC end -PetalburgCity_Mart_Text_WeakWillGrowStronger: @ 8207DF1 +PetalburgCity_Mart_Text_WeakWillGrowStronger: .string "Even if a POKéMON is weak now,\n" .string "it will grow stronger.\p" .string "The most important thing is love!\n" .string "Love for your POKéMON!$" -PetalburgCity_Mart_Text_RepelIsUseful: @ 8207E60 +PetalburgCity_Mart_Text_RepelIsUseful: .string "Do you use REPEL?\n" .string "It keeps POKéMON away, so it's\l" .string "useful when you're in a hurry.$" -PetalburgCity_Mart_Text_TakeSomeAntidotesWithYou: @ 8207EB0 +PetalburgCity_Mart_Text_TakeSomeAntidotesWithYou: .string "Do you have any ANTIDOTES with\n" .string "you?\p" .string "If you walk around with a poisoned\n" diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc index 5910141644fe..58b58054f2fa 100644 --- a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -PetalburgCity_PokemonCenter_1F_MapScripts:: @ 82079E8 +PetalburgCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, PetalburgCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -PetalburgCity_PokemonCenter_1F_OnTransition: @ 82079F3 +PetalburgCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_PETALBURG_CITY call Common_EventScript_UpdateBrineyLocation end -PetalburgCity_PokemonCenter_1F_EventScript_Nurse:: @ 82079FC +PetalburgCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,15 +18,15 @@ PetalburgCity_PokemonCenter_1F_EventScript_Nurse:: @ 82079FC release end -PetalburgCity_PokemonCenter_1F_EventScript_FatMan:: @ 8207A0A +PetalburgCity_PokemonCenter_1F_EventScript_FatMan:: msgbox PetalburgCity_PokemonCenter_1F_Text_PCStorageSystem, MSGBOX_NPC end -PetalburgCity_PokemonCenter_1F_EventScript_Youngster:: @ 8207A13 +PetalburgCity_PokemonCenter_1F_EventScript_Youngster:: msgbox PetalburgCity_PokemonCenter_1F_Text_OranBerryRegainedHP, MSGBOX_NPC end -PetalburgCity_PokemonCenter_1F_EventScript_Woman:: @ 8207A1C +PetalburgCity_PokemonCenter_1F_EventScript_Woman:: lock faceplayer msgbox PetalburgCity_PokemonCenter_1F_Text_ManyTypesOfPokemon, MSGBOX_DEFAULT @@ -36,7 +36,7 @@ PetalburgCity_PokemonCenter_1F_EventScript_Woman:: @ 8207A1C release end -PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo:: @ 8207A38 +PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo:: compare VAR_STARTER_MON, 0 call_if_eq PetalburgCity_PokemonCenter_1F_EventScript_SayTreeckoType compare VAR_STARTER_MON, 1 @@ -46,36 +46,36 @@ PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo:: @ 8207A38 release end -PetalburgCity_PokemonCenter_1F_EventScript_SayTreeckoType:: @ 8207A5B +PetalburgCity_PokemonCenter_1F_EventScript_SayTreeckoType:: msgbox PetalburgCity_PokemonCenter_1F_Text_TreeckoIsGrassType, MSGBOX_DEFAULT return -PetalburgCity_PokemonCenter_1F_EventScript_SayTorchicType:: @ 8207A64 +PetalburgCity_PokemonCenter_1F_EventScript_SayTorchicType:: msgbox PetalburgCity_PokemonCenter_1F_Text_TorchicIsFireType, MSGBOX_DEFAULT return -PetalburgCity_PokemonCenter_1F_EventScript_SayMudkipType:: @ 8207A6D +PetalburgCity_PokemonCenter_1F_EventScript_SayMudkipType:: msgbox PetalburgCity_PokemonCenter_1F_Text_MudkipIsWaterType, MSGBOX_DEFAULT return -PetalburgCity_PokemonCenter_1F_Text_PCStorageSystem: @ 8207A76 +PetalburgCity_PokemonCenter_1F_Text_PCStorageSystem: .string "That PC-based POKéMON Storage\n" .string "System…\p" .string "Whoever made it must be some kind\n" .string "of a scientific wizard!$" -PetalburgCity_PokemonCenter_1F_Text_OranBerryRegainedHP: @ 8207AD6 +PetalburgCity_PokemonCenter_1F_Text_OranBerryRegainedHP: .string "When my POKéMON ate an\n" .string "ORAN BERRY, it regained HP!$" -PetalburgCity_PokemonCenter_1F_Text_ManyTypesOfPokemon: @ 8207B09 +PetalburgCity_PokemonCenter_1F_Text_ManyTypesOfPokemon: .string "There are many types of POKéMON.\p" .string "All types have their strengths and\n" .string "weaknesses against other types.\p" .string "Depending on the types of POKéMON,\n" .string "a battle could be easy or hard.$" -PetalburgCity_PokemonCenter_1F_Text_TreeckoIsGrassType: @ 8207BB0 +PetalburgCity_PokemonCenter_1F_Text_TreeckoIsGrassType: .string "For example, your TREECKO\n" .string "is a GRASS type.\p" .string "It's strong against the WATER and\n" @@ -83,7 +83,7 @@ PetalburgCity_PokemonCenter_1F_Text_TreeckoIsGrassType: @ 8207BB0 .string "But, it's weak against FIRE-type\n" .string "POKéMON.$" -PetalburgCity_PokemonCenter_1F_Text_TorchicIsFireType: @ 8207C35 +PetalburgCity_PokemonCenter_1F_Text_TorchicIsFireType: .string "For example, your TORCHIC\n" .string "is a FIRE type.\p" .string "It's strong against the GRASS and\n" @@ -91,7 +91,7 @@ PetalburgCity_PokemonCenter_1F_Text_TorchicIsFireType: @ 8207C35 .string "But, it's weak against WATER-type\n" .string "POKéMON.$" -PetalburgCity_PokemonCenter_1F_Text_MudkipIsWaterType: @ 8207CB7 +PetalburgCity_PokemonCenter_1F_Text_MudkipIsWaterType: .string "For example, your MUDKIP\n" .string "is a WATER type.\p" .string "It's strong against the FIRE type.\p" diff --git a/data/maps/PetalburgCity_PokemonCenter_2F/scripts.inc b/data/maps/PetalburgCity_PokemonCenter_2F/scripts.inc index 8485ae2c69e1..bd3e30f9aba5 100644 --- a/data/maps/PetalburgCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/PetalburgCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -PetalburgCity_PokemonCenter_2F_MapScripts:: @ 8207D41 +PetalburgCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ PetalburgCity_PokemonCenter_2F_MapScripts:: @ 8207D41 .byte 0 @ The below 3 are unused and leftover from RS -PetalburgCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8207D56 +PetalburgCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -PetalburgCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8207D5C +PetalburgCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -PetalburgCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 8207D62 +PetalburgCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/PetalburgCity_WallysHouse/scripts.inc b/data/maps/PetalburgCity_WallysHouse/scripts.inc index 1e4e75987f4a..3a06208a78c9 100644 --- a/data/maps/PetalburgCity_WallysHouse/scripts.inc +++ b/data/maps/PetalburgCity_WallysHouse/scripts.inc @@ -1,24 +1,24 @@ .set LOCALID_WALLYS_DAD, 1 -PetalburgCity_WallysHouse_MapScripts:: @ 8204229 +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 .byte 0 -PetalburgCity_WallysHouse_OnWarp: @ 8204234 +PetalburgCity_WallysHouse_OnWarp: map_script_2 VAR_PETALBURG_CITY_STATE, 4, PetalburgCity_WallysHouse_EventScript_PlayerWallysDadFaceEachOther .2byte 0 -PetalburgCity_WallysHouse_EventScript_PlayerWallysDadFaceEachOther:: @ 820423E +PetalburgCity_WallysHouse_EventScript_PlayerWallysDadFaceEachOther:: turnobject OBJ_EVENT_ID_PLAYER, DIR_EAST turnobject LOCALID_WALLYS_DAD, DIR_WEST end -PetalburgCity_WallysHouse_OnFrame: @ 8204247 +PetalburgCity_WallysHouse_OnFrame: map_script_2 VAR_PETALBURG_CITY_STATE, 4, PetalburgCity_WallysHouse_EventScript_GiveHM03Surf .2byte 0 -PetalburgCity_WallysHouse_EventScript_GiveHM03Surf:: @ 8204251 +PetalburgCity_WallysHouse_EventScript_GiveHM03Surf:: lockall msgbox PetalburgCity_WallysHouse_Text_PleaseExcuseUs, MSGBOX_DEFAULT giveitem ITEM_HM03 @@ -28,7 +28,7 @@ PetalburgCity_WallysHouse_EventScript_GiveHM03Surf:: @ 8204251 releaseall end -PetalburgCity_WallysHouse_EventScript_WallysDad:: @ 8204278 +PetalburgCity_WallysHouse_EventScript_WallysDad:: lock faceplayer goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, PetalburgCity_WallysHouse_EventScript_DefeatedWallyInVictoryRoad @@ -39,22 +39,22 @@ PetalburgCity_WallysHouse_EventScript_WallysDad:: @ 8204278 release end -PetalburgCity_WallysHouse_EventScript_ReceievedHM03Surf:: @ 82042A2 +PetalburgCity_WallysHouse_EventScript_ReceievedHM03Surf:: msgbox PetalburgCity_WallysHouse_Text_WallyIsComingHomeSoon, MSGBOX_DEFAULT release end -PetalburgCity_WallysHouse_EventScript_DefeatedWallyInVictoryRoad:: @ 82042AC +PetalburgCity_WallysHouse_EventScript_DefeatedWallyInVictoryRoad:: msgbox PetalburgCity_WallysHouse_Text_YouMetWallyInEverGrandeCity, MSGBOX_DEFAULT release end -PetalburgCity_WallysHouse_EventScript_PlayedWithWally:: @ 82042B6 +PetalburgCity_WallysHouse_EventScript_PlayedWithWally:: msgbox PetalburgCity_WallysHouse_Text_WonderHowWallyIsDoing, MSGBOX_DEFAULT release end -PetalburgCity_WallysHouse_EventScript_WallysMom:: @ 82042C0 +PetalburgCity_WallysHouse_EventScript_WallysMom:: lock faceplayer goto_if_set FLAG_RECEIVED_HM03, PetalburgCity_WallysHouse_EventScript_ReceivedHM03Surf @@ -62,12 +62,12 @@ PetalburgCity_WallysHouse_EventScript_WallysMom:: @ 82042C0 release end -PetalburgCity_WallysHouse_EventScript_ReceivedHM03Surf:: @ 82042D5 +PetalburgCity_WallysHouse_EventScript_ReceivedHM03Surf:: msgbox PetalburgCity_WallysHouse_Text_WallyLeftWithoutTelling, MSGBOX_DEFAULT release end -PetalburgCity_WallysHouse_Text_ThanksForPlayingWithWally: @ 82042DF +PetalburgCity_WallysHouse_Text_ThanksForPlayingWithWally: .string "You're…\n" .string "Ah, you must be {PLAYER}{KUN}, right?\p" .string "Thank you for playing with WALLY a\n" @@ -83,10 +83,10 @@ PetalburgCity_WallysHouse_Text_ThanksForPlayingWithWally: @ 82042DF .string "I wonder where he could have\n" .string "gotten by now?$" -PetalburgCity_WallysHouse_Text_WonderHowWallyIsDoing: @ 820444D +PetalburgCity_WallysHouse_Text_WonderHowWallyIsDoing: .string "I wonder how our WALLY is doing?$" -PetalburgCity_WallysHouse_Text_PleaseExcuseUs: @ 820446E +PetalburgCity_WallysHouse_Text_PleaseExcuseUs: .string "{PLAYER}{KUN}! Please excuse us for\n" .string "dragging you here this way.\p" .string "But our WALLY's become very healthy\n" @@ -103,15 +103,15 @@ PetalburgCity_WallysHouse_Text_PleaseExcuseUs: @ 820446E .string "This isn't a bribe or anything, but\n" .string "I'd really like you to have this.$" -PetalburgCity_WallysHouse_Text_SurfGoAllSortsOfPlaces: @ 820461A +PetalburgCity_WallysHouse_Text_SurfGoAllSortsOfPlaces: .string "If your POKéMON can SURF, you'll be\n" .string "able to go to all sorts of places.$" -PetalburgCity_WallysHouse_Text_WallyIsComingHomeSoon: @ 8204661 +PetalburgCity_WallysHouse_Text_WallyIsComingHomeSoon: .string "WALLY's coming home soon.\n" .string "I'm looking forward to that.$" -PetalburgCity_WallysHouse_Text_YouMetWallyInEverGrandeCity: @ 8204698 +PetalburgCity_WallysHouse_Text_YouMetWallyInEverGrandeCity: .string "Oh? You met WALLY in\n" .string "EVER GRANDE CITY?\p" .string "Oh, {PLAYER}{KUN}, don't be silly.\p" @@ -119,13 +119,13 @@ PetalburgCity_WallysHouse_Text_YouMetWallyInEverGrandeCity: @ 8204698 .string "can't go somewhere far away like\l" .string "that all by himself.$" -PetalburgCity_WallysHouse_Text_WallyWasReallyHappy: @ 8204732 +PetalburgCity_WallysHouse_Text_WallyWasReallyHappy: .string "WALLY was really happy when he told\n" .string "us that he caught a POKéMON.\p" .string "It's been ages since I've seen him\n" .string "smile like that.$" -PetalburgCity_WallysHouse_Text_WallyLeftWithoutTelling: @ 82047A7 +PetalburgCity_WallysHouse_Text_WallyLeftWithoutTelling: .string "I want you to keep this a secret\n" .string "from my husband…\p" .string "But our WALLY left VERDANTURF TOWN\n" diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc index 1f1b2edcb388..2ade8964212c 100644 --- a/data/maps/PetalburgWoods/scripts.inc +++ b/data/maps/PetalburgWoods/scripts.inc @@ -1,10 +1,10 @@ .set LOCALID_GRUNT, 3 .set LOCALID_DEVON_EMPLOYEE, 4 -PetalburgWoods_MapScripts:: @ 822DFD6 +PetalburgWoods_MapScripts:: .byte 0 -PetalburgWoods_EventScript_DevonResearcherLeft:: @ 822DFD7 +PetalburgWoods_EventScript_DevonResearcherLeft:: lockall call PetalburgWoods_EventScript_DevonResearcherIntro applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerLeft @@ -39,7 +39,7 @@ PetalburgWoods_EventScript_DevonResearcherLeft:: @ 822DFD7 goto PetalburgWoods_EventScript_RemoveDevonResearcher end -PetalburgWoods_EventScript_DevonResearcherRight:: @ 822E079 +PetalburgWoods_EventScript_DevonResearcherRight:: lockall call PetalburgWoods_EventScript_DevonResearcherIntro applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerRight @@ -75,14 +75,14 @@ PetalburgWoods_EventScript_DevonResearcherRight:: @ 822E079 goto PetalburgWoods_EventScript_RemoveDevonResearcher end -PetalburgWoods_EventScript_DevonResearcherIntro:: @ 822E124 +PetalburgWoods_EventScript_DevonResearcherIntro:: applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherLookAround waitmovement 0 msgbox PetalburgWoods_Text_NotAOneToBeFound, MSGBOX_DEFAULT closemessage return -PetalburgWoods_EventScript_DevonResearcherPostBattle:: @ 822E138 +PetalburgWoods_EventScript_DevonResearcherPostBattle:: msgbox PetalburgWoods_Text_YouveGotSomeNerve, MSGBOX_DEFAULT closemessage applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaRunAway @@ -97,12 +97,12 @@ PetalburgWoods_EventScript_DevonResearcherPostBattle:: @ 822E138 goto PetalburgWoods_EventScript_DevonResearcherFinish end -PetalburgWoods_EventScript_BagFull:: @ 822E17D +PetalburgWoods_EventScript_BagFull:: msgbox PetalburgWoods_Text_YoureLoadedWithItems, MSGBOX_DEFAULT goto PetalburgWoods_EventScript_DevonResearcherFinish end -PetalburgWoods_EventScript_DevonResearcherFinish:: @ 822E18B +PetalburgWoods_EventScript_DevonResearcherFinish:: msgbox PetalburgWoods_Text_TeamAquaAfterSomethingInRustboro, MSGBOX_DEFAULT applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherStartExit waitmovement 0 @@ -110,13 +110,13 @@ PetalburgWoods_EventScript_DevonResearcherFinish:: @ 822E18B closemessage return -PetalburgWoods_EventScript_RemoveDevonResearcher:: @ 822E1A7 +PetalburgWoods_EventScript_RemoveDevonResearcher:: removeobject LOCALID_DEVON_EMPLOYEE setvar VAR_PETALBURG_WOODS_STATE, 1 releaseall end -PetalburgWoods_Movement_DevonResearcherLookAround: @ 822E1B1 +PetalburgWoods_Movement_DevonResearcherLookAround: face_up delay_16 delay_4 @@ -135,7 +135,7 @@ PetalburgWoods_Movement_DevonResearcherLookAround: @ 822E1B1 delay_16 step_end -PetalburgWoods_Movement_DevonResearcherExitLeft: @ 822E1C2 +PetalburgWoods_Movement_DevonResearcherExitLeft: walk_fast_right walk_fast_up walk_fast_up @@ -146,14 +146,14 @@ PetalburgWoods_Movement_DevonResearcherExitLeft: @ 822E1C2 walk_fast_up step_end -PetalburgWoods_Movement_DevonResearcherApproachPlayerLeft: @ 822E1CB +PetalburgWoods_Movement_DevonResearcherApproachPlayerLeft: delay_16 face_player walk_down walk_down step_end -PetalburgWoods_Movement_DevonResearcherApproachPlayerRight: @ 822E1D0 +PetalburgWoods_Movement_DevonResearcherApproachPlayerRight: delay_16 face_player walk_down @@ -162,7 +162,7 @@ PetalburgWoods_Movement_DevonResearcherApproachPlayerRight: @ 822E1D0 walk_in_place_fastest_right step_end -PetalburgWoods_Movement_DevonResearcherExitRight: @ 822E1D7 +PetalburgWoods_Movement_DevonResearcherExitRight: walk_fast_left walk_fast_up walk_fast_up @@ -173,13 +173,13 @@ PetalburgWoods_Movement_DevonResearcherExitRight: @ 822E1D7 walk_fast_up step_end -PetalburgWoods_Movement_WatchResearcherLeave: @ 822E1E0 +PetalburgWoods_Movement_WatchResearcherLeave: delay_16 delay_16 walk_in_place_fastest_up step_end -PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft: @ 822E1E4 +PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft: walk_fast_right walk_fast_down walk_fast_down @@ -187,13 +187,13 @@ PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft: @ 822E1E4 walk_in_place_fastest_up step_end -PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight: @ 822E1EA +PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight: walk_fast_down walk_fast_right walk_in_place_fastest_up step_end -PetalburgWoods_Movement_DevonResearcherStartExit: @ 822E1EE +PetalburgWoods_Movement_DevonResearcherStartExit: walk_in_place_fastest_down delay_16 delay_16 @@ -203,18 +203,18 @@ PetalburgWoods_Movement_DevonResearcherStartExit: @ 822E1EE face_up step_end -PetalburgWoods_Movement_AquaApproachResearcherLeft: @ 822E1F6 +PetalburgWoods_Movement_AquaApproachResearcherLeft: walk_fast_down walk_fast_down step_end -PetalburgWoods_Movement_AquaBackOff: @ 822E1F9 +PetalburgWoods_Movement_AquaBackOff: lock_facing_direction walk_up unlock_facing_direction step_end -PetalburgWoods_Movement_AquaRunAway: @ 822E1FD +PetalburgWoods_Movement_AquaRunAway: walk_fast_up walk_fast_up walk_fast_up @@ -224,32 +224,32 @@ PetalburgWoods_Movement_AquaRunAway: @ 822E1FD delay_16 step_end -PetalburgWoods_Movement_AquaApproachResearcherRight: @ 822E205 +PetalburgWoods_Movement_AquaApproachResearcherRight: walk_fast_down walk_fast_down walk_fast_down step_end -PetalburgWoods_Movement_AquaEntrance: @ 822E209 +PetalburgWoods_Movement_AquaEntrance: walk_down walk_down delay_16 delay_16 step_end -PetalburgWoods_Movement_AquaApproachPlayer: @ 822E20E +PetalburgWoods_Movement_AquaApproachPlayer: walk_down step_end -PetalburgWoods_EventScript_Boy1:: @ 822E210 +PetalburgWoods_EventScript_Boy1:: msgbox PetalburgWoods_Text_StayOutOfTallGrass, MSGBOX_NPC end -PetalburgWoods_EventScript_Boy2:: @ 822E219 +PetalburgWoods_EventScript_Boy2:: msgbox PetalburgWoods_Text_HiddenItemsExplanation, MSGBOX_NPC end -PetalburgWoods_EventScript_Girl:: @ 822E222 +PetalburgWoods_EventScript_Girl:: lock faceplayer goto_if_set FLAG_RECEIVED_MIRACLE_SEED, PetalburgWoods_EventScript_ExplainMiracleSeed @@ -261,25 +261,25 @@ PetalburgWoods_EventScript_Girl:: @ 822E222 release end -PetalburgWoods_EventScript_ExplainMiracleSeed:: @ 822E251 +PetalburgWoods_EventScript_ExplainMiracleSeed:: msgbox PetalburgWoods_Text_MiracleSeedExplanation, MSGBOX_DEFAULT release end -PetalburgWoods_EventScript_Sign1:: @ 822E25B +PetalburgWoods_EventScript_Sign1:: msgbox PetalburgWoods_Text_TrainerTipsExperience, MSGBOX_SIGN end -PetalburgWoods_EventScript_Sign2:: @ 822E264 +PetalburgWoods_EventScript_Sign2:: msgbox PetalburgWoods_Text_TrainerTipsPP, MSGBOX_SIGN end -PetalburgWoods_EventScript_Lyle:: @ 822E26D +PetalburgWoods_EventScript_Lyle:: trainerbattle_single TRAINER_LYLE, PetalburgWoods_Text_GoBugPokemonTeam, PetalburgWoods_Text_ICouldntWin msgbox PetalburgWoods_Text_ImOutOfPokeBalls, MSGBOX_AUTOCLOSE end -PetalburgWoods_EventScript_James:: @ 822E284 +PetalburgWoods_EventScript_James:: trainerbattle_single TRAINER_JAMES_1, PetalburgWoods_Text_InstantlyPopularWithBugPokemon, PetalburgWoods_Text_CantBePopularIfILose, PetalburgWoods_EventScript_TryRegisterJames specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -292,71 +292,71 @@ PetalburgWoods_EventScript_James:: @ 822E284 release end -PetalburgWoods_EventScript_TryRegisterJames:: @ 822E2C5 +PetalburgWoods_EventScript_TryRegisterJames:: special PlayerFaceTrainerAfterBattle waitmovement 0 goto_if_set FLAG_HAS_MATCH_CALL, PetalburgWoods_EventScript_RegisterJames release end -PetalburgWoods_EventScript_RegisterJames:: @ 822E2D6 +PetalburgWoods_EventScript_RegisterJames:: msgbox PetalburgWoods_Text_IWantRematch1, MSGBOX_DEFAULT register_matchcall TRAINER_JAMES_1 release end -PetalburgWoods_EventScript_TryRegisterJames2:: @ 822E2EF +PetalburgWoods_EventScript_TryRegisterJames2:: goto_if_set FLAG_HAS_MATCH_CALL, PetalburgWoods_EventScript_RegisterJames2 msgbox PetalburgWoods_Text_PeopleRespectYou, MSGBOX_DEFAULT release end -PetalburgWoods_EventScript_RegisterJames2:: @ 822E302 +PetalburgWoods_EventScript_RegisterJames2:: msgbox PetalburgWoods_Text_IWantRematch2, MSGBOX_DEFAULT register_matchcall TRAINER_JAMES_1 release end -PetalburgWoods_EventScript_JamesRematch:: @ 822E31B +PetalburgWoods_EventScript_JamesRematch:: trainerbattle_rematch TRAINER_JAMES_1, PetalburgWoods_Text_MyPokemonHaveGrown, PetalburgWoods_Text_CantBePopularIfLose msgbox PetalburgWoods_Text_IveBeenTrainingHard, MSGBOX_AUTOCLOSE end -PetalburgWoods_Text_NotAOneToBeFound: @ 822E332 +PetalburgWoods_Text_NotAOneToBeFound: .string "Hmmm…\n" .string "Not a one to be found…$" -PetalburgWoods_Text_HaveYouSeenShroomish: @ 822E34F +PetalburgWoods_Text_HaveYouSeenShroomish: .string "Hello, have you seen any POKéMON\n" .string "called SHROOMISH around here?\p" .string "I really love that POKéMON.$" -PetalburgWoods_Text_IWasGoingToAmbushYou: @ 822E3AA +PetalburgWoods_Text_IWasGoingToAmbushYou: .string "I was going to ambush you, but you\n" .string "had to dawdle in PETALBURG WOODS\l" .string "forever, didn't you?\p" .string "I got sick of waiting, so here I am!$" -PetalburgWoods_Text_HandOverThosePapers: @ 822E428 +PetalburgWoods_Text_HandOverThosePapers: .string "You! DEVON RESEARCHER!\p" .string "Hand over those papers!$" -PetalburgWoods_Text_YouHaveToHelpMe: @ 822E457 +PetalburgWoods_Text_YouHaveToHelpMe: .string "Aiyeeeh!\p" .string "You're a POKéMON TRAINER, aren't you?\n" .string "You've got to help me, please!$" -PetalburgWoods_Text_NoOneCrossesTeamAqua: @ 822E4A5 +PetalburgWoods_Text_NoOneCrossesTeamAqua: .string "Hunh? What do you think you're doing?\n" .string "What, you're going to protect him?\p" .string "No one who crosses TEAM AQUA\n" .string "gets any mercy, not even a kid!\p" .string "Come on and battle me!$" -PetalburgWoods_Text_YoureKiddingMe: @ 822E542 +PetalburgWoods_Text_YoureKiddingMe: .string "You're kidding me! You're tough!$" -PetalburgWoods_Text_YouveGotSomeNerve: @ 822E563 +PetalburgWoods_Text_YouveGotSomeNerve: .string "Grrr… You've got some nerve\n" .string "meddling with TEAM AQUA!\l" .string "Come on and battle me again!\p" @@ -366,7 +366,7 @@ PetalburgWoods_Text_YouveGotSomeNerve: @ 822E563 .string "after something in RUSTBORO.\p" .string "I'll let you go today!$" -PetalburgWoods_Text_ThatWasAwfullyClose: @ 822E63D +PetalburgWoods_Text_ThatWasAwfullyClose: .string "Whew…\n" .string "That was awfully close!\p" .string "Thanks to you, he didn't rob me of\n" @@ -374,85 +374,85 @@ PetalburgWoods_Text_ThatWasAwfullyClose: @ 822E63D .string "I know, I'll give you a GREAT BALL as\n" .string "my thanks!$" -PetalburgWoods_Text_TeamAquaAfterSomethingInRustboro: @ 822E6C7 +PetalburgWoods_Text_TeamAquaAfterSomethingInRustboro: .string "Didn't that TEAM AQUA thug say\n" .string "they were after something in\l" .string "RUSTBORO, too?$" -PetalburgWoods_Text_ICantBeWastingTime: @ 822E712 +PetalburgWoods_Text_ICantBeWastingTime: .string "Uh-oh! It's a crisis!\n" .string "I can't be wasting time!$" -PetalburgWoods_Text_YoureLoadedWithItems: @ 822E741 +PetalburgWoods_Text_YoureLoadedWithItems: .string "You're loaded with items.\n" .string "I can't give you this GREAT BALL.$" -PetalburgWoods_Text_GoBugPokemonTeam: @ 822E77D +PetalburgWoods_Text_GoBugPokemonTeam: .string "I caught a whole bunch of POKéMON!\p" .string "Go, go, go!\n" .string "My BUG POKéMON team!$" -PetalburgWoods_Text_ICouldntWin: @ 822E7C1 +PetalburgWoods_Text_ICouldntWin: .string "I have all these POKéMON,\n" .string "but I couldn't win…$" -PetalburgWoods_Text_ImOutOfPokeBalls: @ 822E7EF +PetalburgWoods_Text_ImOutOfPokeBalls: .string "I caught a bunch of POKéMON.\n" .string "Now I'm out of POKé BALLS.$" -PetalburgWoods_Text_InstantlyPopularWithBugPokemon: @ 822E827 +PetalburgWoods_Text_InstantlyPopularWithBugPokemon: .string "If you take BUG POKéMON to school,\n" .string "you get to be instantly popular!$" -PetalburgWoods_Text_CantBePopularIfILose: @ 822E86B +PetalburgWoods_Text_CantBePopularIfILose: .string "I can't be popular if I lose.$" -PetalburgWoods_Text_PeopleRespectYou: @ 822E889 +PetalburgWoods_Text_PeopleRespectYou: .string "If you have a big BUG POKéMON,\n" .string "people respect you for it.$" -PetalburgWoods_Text_IWantRematch1: @ 822E8C3 +PetalburgWoods_Text_IWantRematch1: .string "I want a rematch when my BUG\n" .string "POKéMON grow up!\p" .string "I'm registering you in my POKéNAV!$" -PetalburgWoods_Text_IWantRematch2: @ 822E914 +PetalburgWoods_Text_IWantRematch2: .string "I want a rematch when my BUG \n" .string "POKéMON grow up!\p" .string "I'm registering you in my POKéNAV!$" -PetalburgWoods_Text_MyPokemonHaveGrown: @ 822E966 +PetalburgWoods_Text_MyPokemonHaveGrown: .string "My BUG POKéMON have grown.\n" .string "I'll be popular again.$" -PetalburgWoods_Text_CantBePopularIfLose: @ 822E998 +PetalburgWoods_Text_CantBePopularIfLose: .string "I can't be popular if I lose.$" -PetalburgWoods_Text_IveBeenTrainingHard: @ 822E9B6 +PetalburgWoods_Text_IveBeenTrainingHard: .string "You get to be popular if you have\n" .string "strong POKéMON, right?\l" .string "So, I've been training hard.$" -PetalburgWoods_Text_StayOutOfTallGrass: @ 822EA0C +PetalburgWoods_Text_StayOutOfTallGrass: .string "Yo, there!\n" .string "Your POKéMON doing okay?\p" .string "If your POKéMON are weak and you want\n" .string "to avoid battles, you should stay out\l" .string "of tall grass.$" -PetalburgWoods_Text_HiddenItemsExplanation: @ 822EA8B +PetalburgWoods_Text_HiddenItemsExplanation: .string "Sometimes, there are things on the\n" .string "ground even if you can't see them.\p" .string "That's why I always check where I'm\n" .string "walking.$" -PetalburgWoods_Text_TryUsingThisItem: @ 822EAFE +PetalburgWoods_Text_TryUsingThisItem: .string "Oh, neat!\n" .string "That's the BADGE from RUSTBORO GYM!\p" .string "You must be a TRAINER.\n" .string "You should try using this item.$" -PetalburgWoods_Text_MiracleSeedExplanation: @ 822EB63 +PetalburgWoods_Text_MiracleSeedExplanation: .string "It's a MIRACLE SEED.\n" .string "If a POKéMON holds that item, its\l" .string "GRASS-type moves become stronger.\p" @@ -460,7 +460,7 @@ PetalburgWoods_Text_MiracleSeedExplanation: @ 822EB63 .string "other convenient items for POKéMON\l" .string "to hold.$" -PetalburgWoods_Text_TrainerTipsExperience: @ 822EC10 +PetalburgWoods_Text_TrainerTipsExperience: .string "TRAINER TIPS\p" .string "Any POKéMON that appears even once\n" .string "in a battle is awarded EXP Points.\p" @@ -470,7 +470,7 @@ PetalburgWoods_Text_TrainerTipsExperience: @ 822EC10 .string "out. It will earn EXP Points without\l" .string "being exposed to any harm.$" -PetalburgWoods_Text_TrainerTipsPP: @ 822ED07 +PetalburgWoods_Text_TrainerTipsPP: .string "TRAINER TIPS\p" .string "In addition to Hit Points (HP), POKéMON\n" .string "have Power Points (PP) that are used to\l" diff --git a/data/maps/RecordCorner/scripts.inc b/data/maps/RecordCorner/scripts.inc index 4f342b860efb..b317920de8ff 100644 --- a/data/maps/RecordCorner/scripts.inc +++ b/data/maps/RecordCorner/scripts.inc @@ -1,3 +1,3 @@ -RecordCorner_MapScripts:: @ 823B77F +RecordCorner_MapScripts:: .byte 0 diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index b9322614751c..d83c8213b6c5 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -1,25 +1,25 @@ .set LOCALID_BIRCH, 2 .set LOCALID_ZIGZAGOON, 4 -Route101_MapScripts:: @ 81EBCBA +Route101_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route101_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route101_OnFrame .byte 0 -Route101_OnTransition: @ 81EBCC5 +Route101_OnTransition: call ProfBirch_EventScript_UpdateLocation end -Route101_OnFrame: @ 81EBCCB +Route101_OnFrame: map_script_2 VAR_ROUTE101_STATE, 0, Route101_EventScript_HideMapNamePopup .2byte 0 -Route101_EventScript_HideMapNamePopup:: @ 81EBCD5 +Route101_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP setvar VAR_ROUTE101_STATE, 1 end -Route101_EventScript_StartBirchRescue:: @ 81EBCDE +Route101_EventScript_StartBirchRescue:: lockall playbgm MUS_HELP, TRUE msgbox Route101_Text_HelpMe, MSGBOX_DEFAULT @@ -44,7 +44,7 @@ Route101_EventScript_StartBirchRescue:: @ 81EBCDE releaseall end -Route101_EventScript_PreventExitSouth:: @ 81EBD4E +Route101_EventScript_PreventExitSouth:: lockall msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT closemessage @@ -53,7 +53,7 @@ Route101_EventScript_PreventExitSouth:: @ 81EBD4E releaseall end -Route101_EventScript_PreventExitWest:: @ 81EBD64 +Route101_EventScript_PreventExitWest:: lockall msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT closemessage @@ -62,7 +62,7 @@ Route101_EventScript_PreventExitWest:: @ 81EBD64 releaseall end -Route101_EventScript_PreventExitNorth:: @ 81EBD7A +Route101_EventScript_PreventExitNorth:: lockall msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT closemessage @@ -71,19 +71,19 @@ Route101_EventScript_PreventExitNorth:: @ 81EBD7A releaseall end -Route101_Movement_PreventExitSouth: @ 81EBD90 +Route101_Movement_PreventExitSouth: walk_up step_end -Route101_Movement_PreventExitWest: @ 81EBD92 +Route101_Movement_PreventExitWest: walk_right step_end -Route101_Movement_PreventExitNorth: @ 81EBD94 +Route101_Movement_PreventExitNorth: walk_down step_end -Route101_Movement_ZigzagoonChaseInCircles: @ 81EBD96 +Route101_Movement_ZigzagoonChaseInCircles: walk_fast_up walk_fast_up walk_fast_up @@ -116,7 +116,7 @@ Route101_Movement_ZigzagoonChaseInCircles: @ 81EBD96 walk_fast_left step_end -Route101_Movement_ZigzagoonChase1: @ 81EBDB5 +Route101_Movement_ZigzagoonChase1: walk_fast_up walk_fast_right walk_fast_right @@ -128,14 +128,14 @@ Route101_Movement_ZigzagoonChase1: @ 81EBDB5 @ Leftover data? This command is unused. step_end -Route101_Movement_ZigzagoonFaceBirch: @ 81EBDBD +Route101_Movement_ZigzagoonFaceBirch: walk_in_place_fast_left walk_in_place_fast_left walk_in_place_fast_left walk_in_place_fast_left step_end -Route101_Movement_EnterScene: @ 81EBDC2 +Route101_Movement_EnterScene: walk_fast_up walk_fast_up walk_fast_up @@ -143,7 +143,7 @@ Route101_Movement_EnterScene: @ 81EBDC2 walk_in_place_fastest_left step_end -Route101_Movement_BirchRunInCircles: @ 81EBDC8 +Route101_Movement_BirchRunInCircles: walk_fast_up walk_fast_up walk_fast_right @@ -176,7 +176,7 @@ Route101_Movement_BirchRunInCircles: @ 81EBDC8 walk_fast_left step_end -Route101_Movement_BirchRunAway1: @ 81EBDE7 +Route101_Movement_BirchRunAway1: walk_fast_right walk_fast_right walk_fast_right @@ -188,37 +188,37 @@ Route101_Movement_BirchRunAway1: @ 81EBDE7 @ Leftover data? This command is unused. step_end -Route101_Movement_BirchFaceZigzagoon: @ 81EBDEF +Route101_Movement_BirchFaceZigzagoon: walk_in_place_fast_right walk_in_place_fast_right walk_in_place_fast_right walk_in_place_fast_right step_end -Route101_Movement_Unused1: @ 81EBDF4 +Route101_Movement_Unused1: walk_up walk_up step_end -Route101_Movement_Unused2: @ 81EBDF7 +Route101_Movement_Unused2: walk_up walk_left walk_up step_end -Route101_EventScript_Youngster:: @ 81EBDFB +Route101_EventScript_Youngster:: msgbox Route101_Text_TakeTiredPokemonToPokeCenter, MSGBOX_NPC end -Route101_EventScript_Boy:: @ 81EBE04 +Route101_EventScript_Boy:: msgbox Route101_Text_WildPokemonInTallGrass, MSGBOX_NPC end -Route101_EventScript_RouteSign:: @ 81EBE0D +Route101_EventScript_RouteSign:: msgbox Route101_Text_RouteSign, MSGBOX_SIGN end -Route101_EventScript_BirchsBag:: @ 81EBE16 +Route101_EventScript_BirchsBag:: lock faceplayer setflag FLAG_SYS_POKEMON_GET @@ -250,32 +250,32 @@ Route101_EventScript_BirchsBag:: @ 81EBE16 release end -Route101_EventScript_HideMayInBedroom:: @ 81EBE85 +Route101_EventScript_HideMayInBedroom:: setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM return -Route101_EventScript_HideBrendanInBedroom:: @ 81EBE89 +Route101_EventScript_HideBrendanInBedroom:: setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM return -Route101_Movement_BirchApproachPlayer: @ 81EBE8D +Route101_Movement_BirchApproachPlayer: walk_right step_end -Route101_Text_HelpMe: @ 81EBE8F +Route101_Text_HelpMe: .string "H-help me!$" -Route101_Text_PleaseHelp: @ 81EBE9A +Route101_Text_PleaseHelp: .string "Hello! You over there!\n" .string "Please! Help!\p" .string "In my BAG!\n" .string "There's a POKé BALL!$" -Route101_Text_DontLeaveMe: @ 81EBEDF +Route101_Text_DontLeaveMe: .string "Wh-Where are you going?!\n" .string "Don't leave me like this!$" -Route101_Text_YouSavedMe: @ 81EBF12 +Route101_Text_YouSavedMe: .string "PROF. BIRCH: Whew…\p" .string "I was in the tall grass studying wild\n" .string "POKéMON when I was jumped.\p" @@ -286,19 +286,19 @@ Route101_Text_YouSavedMe: @ 81EBF12 .string "This is not the place to chat, so come\n" .string "by my POKéMON LAB later, okay?$" -Route101_Text_TakeTiredPokemonToPokeCenter: @ 81EBFDD +Route101_Text_TakeTiredPokemonToPokeCenter: .string "If POKéMON get tired, take them to\n" .string "a POKéMON CENTER.\p" .string "There's a POKéMON CENTER in OLDALE\n" .string "TOWN right close by.$" -Route101_Text_WildPokemonInTallGrass: @ 81EC04A +Route101_Text_WildPokemonInTallGrass: .string "Wild POKéMON will jump out at you in\n" .string "tall grass.\p" .string "If you want to catch POKéMON, you have\n" .string "to go into the tall grass and search.$" -Route101_Text_RouteSign: @ 81EC0C8 +Route101_Text_RouteSign: .string "ROUTE 101\n" .string "{UP_ARROW} OLDALE TOWN$" diff --git a/data/maps/Route102/scripts.inc b/data/maps/Route102/scripts.inc index b14f204e5807..cc1eaa4bb71c 100644 --- a/data/maps/Route102/scripts.inc +++ b/data/maps/Route102/scripts.inc @@ -1,23 +1,23 @@ -Route102_MapScripts:: @ 81EC0E0 +Route102_MapScripts:: .byte 0 -Route102_EventScript_LittleBoy:: @ 81EC0E1 +Route102_EventScript_LittleBoy:: msgbox Route102_Text_ImNotVeryTall, MSGBOX_NPC end -Route102_EventScript_RouteSignOldale:: @ 81EC0EA +Route102_EventScript_RouteSignOldale:: msgbox Route102_Text_RouteSignOldale, MSGBOX_SIGN end -Route102_EventScript_RouteSignPetalburg:: @ 81EC0F3 +Route102_EventScript_RouteSignPetalburg:: msgbox Route102_Text_RouteSignPetalburg, MSGBOX_SIGN end -Route102_EventScript_Boy:: @ 81EC0FC +Route102_EventScript_Boy:: msgbox Route102_Text_CatchWholeBunchOfPokemon, MSGBOX_NPC end -Route102_EventScript_Calvin:: @ 81EC105 +Route102_EventScript_Calvin:: trainerbattle_single TRAINER_CALVIN_1, Route102_Text_CalvinIntro, Route102_Text_CalvinDefeated, Route102_EventScript_CalvinRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -30,52 +30,52 @@ Route102_EventScript_Calvin:: @ 81EC105 release end -Route102_EventScript_CalvinRegisterMatchCallAfterBattle:: @ 81EC146 +Route102_EventScript_CalvinRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 goto_if_set FLAG_HAS_MATCH_CALL, Route102_EventScript_CalvinRegisterMatchCall release end -Route102_EventScript_CalvinRegisterMatchCall:: @ 81EC157 +Route102_EventScript_CalvinRegisterMatchCall:: msgbox Route102_Text_CalvinRegisterShort, MSGBOX_DEFAULT register_matchcall TRAINER_CALVIN_1 release end -Route102_EventScript_CalvinTryRegister:: @ 81EC170 +Route102_EventScript_CalvinTryRegister:: goto_if_set FLAG_HAS_MATCH_CALL, Route102_EventScript_CalvinRegister msgbox Route102_Text_CalvinPostBattle, MSGBOX_DEFAULT release end -Route102_EventScript_CalvinRegister:: @ 81EC183 +Route102_EventScript_CalvinRegister:: msgbox Route102_Text_CalvinRegister, MSGBOX_DEFAULT register_matchcall TRAINER_CALVIN_1 release end -Route102_EventScript_CalvinRematch:: @ 81EC19C +Route102_EventScript_CalvinRematch:: trainerbattle_rematch TRAINER_CALVIN_1, Route102_Text_CalvinRematchIntro, Route102_Text_CalvinRematchDefeated msgbox Route102_Text_CalvinRematchPostBattle, MSGBOX_AUTOCLOSE end -Route102_EventScript_Rick:: @ 81EC1B3 +Route102_EventScript_Rick:: trainerbattle_single TRAINER_RICK, Route102_Text_RickIntro, Route102_Text_RickDefeated msgbox Route102_Text_RickPostBattle, MSGBOX_AUTOCLOSE end -Route102_EventScript_Tiana:: @ 81EC1CA +Route102_EventScript_Tiana:: trainerbattle_single TRAINER_TIANA, Route102_Text_TianaIntro, Route102_Text_TianaDefeated msgbox Route102_Text_TianaPostBattle, MSGBOX_AUTOCLOSE end -Route102_EventScript_Allen:: @ 81EC1E1 +Route102_EventScript_Allen:: trainerbattle_single TRAINER_ALLEN, Route102_Text_AllenIntro, Route102_Text_AllenDefeated msgbox Route102_Text_AllenPostBattle, MSGBOX_AUTOCLOSE end -Route102_Text_WatchMeCatchPokemon: @ 81EC1F8 +Route102_Text_WatchMeCatchPokemon: .string "WALLY: {PLAYER}…\n" .string "POKéMON hide in tall grass like this,\l" .string "don't they?\p" @@ -83,29 +83,29 @@ Route102_Text_WatchMeCatchPokemon: @ 81EC1F8 .string "catch one properly.\p" .string "…Whoa!$" -Route102_Text_WallyIDidIt: @ 81EC271 +Route102_Text_WallyIDidIt: .string "WALLY: I did it… It's my…\n" .string "My POKéMON!$" -Route102_Text_LetsGoBack: @ 81EC297 +Route102_Text_LetsGoBack: .string "{PLAYER}, thank you!\n" .string "Let's go back to the GYM!$" -Route102_Text_ImNotVeryTall: @ 81EC2C0 +Route102_Text_ImNotVeryTall: .string "I'm…not very tall, so I sink right\n" .string "into tall grass.\p" .string "The grass goes up my nose and…\n" .string "Fwafwafwafwafwa…\p" .string "Fwatchoo!$" -Route102_Text_CatchWholeBunchOfPokemon: @ 81EC32E +Route102_Text_CatchWholeBunchOfPokemon: .string "I'm going to catch a whole bunch of\n" .string "POKéMON!$" -Route102_Text_RouteSignOldale: @ 81EC35B +Route102_Text_RouteSignOldale: .string "ROUTE 102\n" .string "{RIGHT_ARROW} OLDALE TOWN$" -Route102_Text_RouteSignPetalburg: @ 81EC373 +Route102_Text_RouteSignPetalburg: .string "ROUTE 102\n" .string "{LEFT_ARROW} PETALBURG CITY$" diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index b096069e7e38..f0ac53949dce 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -1,25 +1,25 @@ .set LOCALID_RIVAL, 2 -Route103_MapScripts:: @ 81EC38E +Route103_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route103_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route103_OnLoad .byte 0 -Route103_OnTransition: @ 81EC399 +Route103_OnTransition: call Common_EventScript_SetupRivalGfxId call ProfBirch_EventScript_UpdateLocation end -Route103_OnLoad: @ 81EC3A4 +Route103_OnLoad: call_if_set FLAG_SYS_GAME_CLEAR, Route103_EventScript_OpenAlteringCave end -Route103_EventScript_OpenAlteringCave:: @ 81EC3AE +Route103_EventScript_OpenAlteringCave:: setmetatile 45, 5, METATILE_General_CaveEntrance_Top, 1 setmetatile 45, 6, METATILE_General_CaveEntrance_Bottom, 0 return -Route103_EventScript_Rival:: @ 81EC3C1 +Route103_EventScript_Rival:: lockall checkplayergender compare VAR_RESULT, MALE @@ -28,7 +28,7 @@ Route103_EventScript_Rival:: @ 81EC3C1 goto_if_eq Route103_EventScript_RivalBrendan end -Route103_EventScript_RivalMay:: @ 81EC3DA +Route103_EventScript_RivalMay:: msgbox Route103_Text_MayRoute103Pokemon, MSGBOX_DEFAULT closemessage playbgm MUS_ENCOUNTER_MAY, TRUE @@ -45,7 +45,7 @@ Route103_EventScript_RivalMay:: @ 81EC3DA case 2, Route103_EventScript_StartMayBattleMudkip end -Route103_EventScript_RivalBrendan:: @ 81EC434 +Route103_EventScript_RivalBrendan:: msgbox Route103_Text_BrendanRoute103Pokemon, MSGBOX_DEFAULT closemessage playbgm MUS_ENCOUNTER_BRENDAN, TRUE @@ -62,47 +62,47 @@ Route103_EventScript_RivalBrendan:: @ 81EC434 case 2, Route103_EventScript_StartBrendanBattleMudkip end -Route103_EventScript_StartMayBattleTreecko:: @ 81EC48E +Route103_EventScript_StartMayBattleTreecko:: trainerbattle_no_intro TRAINER_MAY_ROUTE_103_TREECKO, Route103_Text_MayDefeated goto Route103_EventScript_AfterMayBattle end -Route103_EventScript_StartMayBattleTorchic:: @ 81EC49E +Route103_EventScript_StartMayBattleTorchic:: trainerbattle_no_intro TRAINER_MAY_ROUTE_103_TORCHIC, Route103_Text_MayDefeated goto Route103_EventScript_AfterMayBattle end -Route103_EventScript_StartMayBattleMudkip:: @ 81EC4AE +Route103_EventScript_StartMayBattleMudkip:: trainerbattle_no_intro TRAINER_MAY_ROUTE_103_MUDKIP, Route103_Text_MayDefeated goto Route103_EventScript_AfterMayBattle end -Route103_EventScript_StartBrendanBattleTreecko:: @ 81EC4BE +Route103_EventScript_StartBrendanBattleTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_TREECKO, Route103_Text_BrendanDefeated goto Route103_EventScript_AfterBrendanBattle end -Route103_EventScript_StartBrendanBattleTorchic:: @ 81EC4CE +Route103_EventScript_StartBrendanBattleTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_TORCHIC, Route103_Text_BrendanDefeated goto Route103_EventScript_AfterBrendanBattle end -Route103_EventScript_StartBrendanBattleMudkip:: @ 81EC4DE +Route103_EventScript_StartBrendanBattleMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_103_MUDKIP, Route103_Text_BrendanDefeated goto Route103_EventScript_AfterBrendanBattle end -Route103_EventScript_AfterMayBattle:: @ 81EC4EE +Route103_EventScript_AfterMayBattle:: msgbox Route103_Text_MayTimeToHeadBack, MSGBOX_DEFAULT goto Route103_EventScript_RivalExit end -Route103_EventScript_AfterBrendanBattle:: @ 81EC4FC +Route103_EventScript_AfterBrendanBattle:: msgbox Route103_Text_BrendanTimeToHeadBack, MSGBOX_DEFAULT goto Route103_EventScript_RivalExit end -Route103_EventScript_RivalExit:: @ 81EC50A +Route103_EventScript_RivalExit:: closemessage switch VAR_FACING case DIR_SOUTH, Route103_EventScript_RivalExitFacingSouth @@ -111,7 +111,7 @@ Route103_EventScript_RivalExit:: @ 81EC50A case DIR_EAST, Route103_EventScript_RivalExitFacingEastOrWest end -Route103_EventScript_RivalExitFacingNorth:: @ 81EC53D +Route103_EventScript_RivalExitFacingNorth:: applymovement OBJ_EVENT_ID_PLAYER, Route103_Movement_WatchRivalExitFacingNorth applymovement LOCALID_RIVAL, Route103_Movement_RivalExitFacingNorth1 waitmovement 0 @@ -121,7 +121,7 @@ Route103_EventScript_RivalExitFacingNorth:: @ 81EC53D goto Route103_EventScript_RivalEnd end -Route103_EventScript_RivalExitFacingEastOrWest:: @ 81EC561 +Route103_EventScript_RivalExitFacingEastOrWest:: applymovement OBJ_EVENT_ID_PLAYER, Route103_Movement_WatchRivalExitFacingEastOrWest applymovement LOCALID_RIVAL, Route103_Movement_RivalExit1 waitmovement 0 @@ -131,7 +131,7 @@ Route103_EventScript_RivalExitFacingEastOrWest:: @ 81EC561 goto Route103_EventScript_RivalEnd end -Route103_EventScript_RivalExitFacingSouth:: @ 81EC585 +Route103_EventScript_RivalExitFacingSouth:: applymovement LOCALID_RIVAL, Route103_Movement_RivalExit1 waitmovement 0 playse SE_LEDGE @@ -140,7 +140,7 @@ Route103_EventScript_RivalExitFacingSouth:: @ 81EC585 goto Route103_EventScript_RivalEnd end -Route103_EventScript_RivalEnd:: @ 81EC5A2 +Route103_EventScript_RivalEnd:: removeobject LOCALID_RIVAL setvar VAR_BIRCH_LAB_STATE, 4 clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL @@ -152,12 +152,12 @@ Route103_EventScript_RivalEnd:: @ 81EC5A2 releaseall end -Route103_Movement_RivalExitFacingNorth1: @ 81EC5BE +Route103_Movement_RivalExitFacingNorth1: walk_left walk_down step_end -Route103_EventScript_RivalExitFacingNorth2: @ 81EC5C1 +Route103_EventScript_RivalExitFacingNorth2: jump_2_down delay_16 walk_down @@ -166,7 +166,7 @@ Route103_EventScript_RivalExitFacingNorth2: @ 81EC5C1 walk_down step_end -Route103_Movement_WatchRivalExitFacingNorth: @ 81EC5C8 +Route103_Movement_WatchRivalExitFacingNorth: delay_16 delay_4 walk_in_place_fastest_left @@ -174,11 +174,11 @@ Route103_Movement_WatchRivalExitFacingNorth: @ 81EC5C8 walk_in_place_fastest_down step_end -Route103_Movement_RivalExit1: @ 81EC5CE +Route103_Movement_RivalExit1: walk_down step_end -Route103_Movement_RivalExit2: @ 81EC5D0 +Route103_Movement_RivalExit2: jump_2_down delay_16 walk_down @@ -186,29 +186,29 @@ Route103_Movement_RivalExit2: @ 81EC5D0 walk_down step_end -Route103_Movement_WatchRivalExitFacingEastOrWest: @ 81EC5D6 +Route103_Movement_WatchRivalExitFacingEastOrWest: delay_16 walk_in_place_fastest_down step_end -Route103_EventScript_Boy:: @ 81EC5D9 +Route103_EventScript_Boy:: msgbox Route103_Text_ShouldHaveBroughtPotion, MSGBOX_NPC end -Route103_EventScript_Man:: @ 81EC5E2 +Route103_EventScript_Man:: msgbox Route103_Text_ShortcutToOldale, MSGBOX_NPC end -Route103_EventScript_RouteSign:: @ 81EC5EB +Route103_EventScript_RouteSign:: msgbox Route103_Text_RouteSign, MSGBOX_SIGN end -Route103_EventScript_Daisy:: @ 81EC5F4 +Route103_EventScript_Daisy:: trainerbattle_single TRAINER_DAISY, Route103_Text_DaisyIntro, Route103_Text_DaisyDefeated msgbox Route103_Text_DaisyPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Amy:: @ 81EC60B +Route103_EventScript_Amy:: trainerbattle_double TRAINER_AMY_AND_LIV_1, Route103_Text_AmyIntro, Route103_Text_AmyDefeated, Route103_Text_AmyNotEnoughPokemon, Route102_EventScript_AmyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -216,18 +216,18 @@ Route103_EventScript_Amy:: @ 81EC60B msgbox Route103_Text_AmyPostBattle, MSGBOX_AUTOCLOSE end -Route102_EventScript_AmyRegisterMatchCallAfterBattle:: @ 81EC63A +Route102_EventScript_AmyRegisterMatchCallAfterBattle:: msgbox Route103_Text_AmyLivRegister, MSGBOX_DEFAULT register_matchcall TRAINER_AMY_AND_LIV_1 release end -Route102_EventScript_AmyRematch:: @ 81EC653 +Route102_EventScript_AmyRematch:: trainerbattle_rematch_double TRAINER_AMY_AND_LIV_1, Route103_Text_AmyRematchIntro, Route103_Text_AmyRematchDefeated, Route103_Text_AmyRematchNotEnoughPokemon msgbox Route103_Text_AmyRematchPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Liv:: @ 81EC66E +Route103_EventScript_Liv:: trainerbattle_double TRAINER_AMY_AND_LIV_1, Route103_Text_LivIntro, Route103_Text_LivDefeated, Route103_Text_LivNotEnoughPokemon, Route102_EventScript_LivRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -235,23 +235,23 @@ Route103_EventScript_Liv:: @ 81EC66E msgbox Route103_Text_LivPostBattle, MSGBOX_AUTOCLOSE end -Route102_EventScript_LivRegisterMatchCallAfterBattle:: @ 81EC69D +Route102_EventScript_LivRegisterMatchCallAfterBattle:: msgbox Route103_Text_AmyLivRegister, MSGBOX_DEFAULT register_matchcall TRAINER_AMY_AND_LIV_1 release end -Route102_EventScript_LivRematch:: @ 81EC6B6 +Route102_EventScript_LivRematch:: trainerbattle_rematch_double TRAINER_AMY_AND_LIV_1, Route103_Text_LivRematchIntro, Route103_Text_LivRematchDefeated, Route103_Text_LivRematchNotEnoughPokemon msgbox Route103_Text_LivRematchPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Andrew:: @ 81EC6D1 +Route103_EventScript_Andrew:: trainerbattle_single TRAINER_ANDREW, Route103_Text_AndrewIntro, Route103_Text_AndrewDefeated msgbox Route103_Text_AndrewPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Miguel:: @ 81EC6E8 +Route103_EventScript_Miguel:: trainerbattle_single TRAINER_MIGUEL_1, Route103_Text_MiguelIntro, Route103_Text_MiguelDefeated, Route102_EventScript_MiguelRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -260,7 +260,7 @@ Route103_EventScript_Miguel:: @ 81EC6E8 release end -Route102_EventScript_MiguelRegisterMatchCallAfterBattle:: @ 81EC714 +Route102_EventScript_MiguelRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route103_Text_MiguelRegister, MSGBOX_DEFAULT @@ -268,36 +268,36 @@ Route102_EventScript_MiguelRegisterMatchCallAfterBattle:: @ 81EC714 release end -Route103_EventScript_MiguelRematch:: @ 81EC733 +Route103_EventScript_MiguelRematch:: trainerbattle_rematch TRAINER_MIGUEL_1, Route103_Text_MiguelRematchIntro, Route103_Text_MiguelRematchDefeated msgbox Route103_Text_MiguelRematchPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Marcos:: @ 81EC74A +Route103_EventScript_Marcos:: trainerbattle_single TRAINER_MARCOS, Route103_Text_MarcosIntro, Route103_Text_MarcosDefeated msgbox Route103_Text_MarcosPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Rhett:: @ 81EC761 +Route103_EventScript_Rhett:: trainerbattle_single TRAINER_RHETT, Route103_Text_RhettIntro, Route103_Text_RhettDefeated msgbox Route103_Text_RhettPostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Pete:: @ 81EC778 +Route103_EventScript_Pete:: trainerbattle_single TRAINER_PETE, Route103_Text_PeteIntro, Route103_Text_PeteDefeated msgbox Route103_Text_PetePostBattle, MSGBOX_AUTOCLOSE end -Route103_EventScript_Isabelle:: @ 81EC78F +Route103_EventScript_Isabelle:: trainerbattle_single TRAINER_ISABELLE, Route103_Text_IsabelleIntro, Route103_Text_IsabelleDefeated msgbox Route103_Text_IsabellePostBattle, MSGBOX_AUTOCLOSE end -Route103_Text_MayRoute103Pokemon: @ 81EC7A6 +Route103_Text_MayRoute103Pokemon: .string "MAY: Let's see… The POKéMON found\n" .string "on ROUTE 103 include…$" -Route103_Text_MayLetsBattle: @ 81EC7DE +Route103_Text_MayLetsBattle: .string "Oh, hi, {PLAYER}{KUN}!\p" .string "…Oh, I see, my dad gave you\n" .string "a POKéMON as a gift.\p" @@ -306,11 +306,11 @@ Route103_Text_MayLetsBattle: @ 81EC7DE .string "I'll give you a taste of what being\n" .string "a TRAINER is like.$" -Route103_Text_MayDefeated: @ 81EC881 +Route103_Text_MayDefeated: .string "Wow! That's great!\n" .string "{PLAYER}{KUN}, you're pretty good!$" -Route103_Text_MayTimeToHeadBack: @ 81EC8AE +Route103_Text_MayTimeToHeadBack: .string "MAY: I think I know why my dad has\n" .string "an eye out for you now.\p" .string "I mean, you just got that POKéMON,\n" @@ -320,11 +320,11 @@ Route103_Text_MayTimeToHeadBack: @ 81EC8AE .string "Well, it's time to head back to\n" .string "the LAB.$" -Route103_Text_BrendanRoute103Pokemon: @ 81EC989 +Route103_Text_BrendanRoute103Pokemon: .string "BRENDAN: Okay, so it's this one and\n" .string "that one that live on ROUTE 103…$" -Route103_Text_BrendanLetsBattle: @ 81EC9CE +Route103_Text_BrendanLetsBattle: .string "Hey, it's {PLAYER}!\p" .string "…Oh, yeah, Dad gave you a POKéMON.\p" .string "Since we're here, how about a little\n" @@ -332,10 +332,10 @@ Route103_Text_BrendanLetsBattle: @ 81EC9CE .string "I'll teach you what being a TRAINER's\n" .string "about!$" -Route103_Text_BrendanDefeated: @ 81ECA59 +Route103_Text_BrendanDefeated: .string "Huh, {PLAYER}, you're not too shabby.$" -Route103_Text_BrendanTimeToHeadBack: @ 81ECA79 +Route103_Text_BrendanTimeToHeadBack: .string "BRENDAN: I think I get it.\n" .string "I think I know why my dad has his eye\l" .string "out for you now.\p" @@ -345,16 +345,16 @@ Route103_Text_BrendanTimeToHeadBack: @ 81ECA79 .string "could befriend any POKéMON with ease.\p" .string "We should head back to the LAB.$" -Route103_Text_ShouldHaveBroughtPotion: @ 81ECB73 +Route103_Text_ShouldHaveBroughtPotion: .string "My POKéMON is staggeringly tired…\n" .string "I should have brought a POTION…$" -Route103_Text_ShortcutToOldale: @ 81ECBB5 +Route103_Text_ShortcutToOldale: .string "If you cross the sea from here,\n" .string "it'll be a shortcut to OLDALE TOWN.\p" .string "Fufufu, that's useful, isn't it?$" -Route103_Text_RouteSign: @ 81ECC1A +Route103_Text_RouteSign: .string "ROUTE 103\n" .string "{DOWN_ARROW} OLDALE TOWN$" diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index cb840d9b3543..87880ab59b48 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -2,37 +2,37 @@ @ These are labeled in DewfordTown/scripts.inc .set LOCALID_RIVAL, 34 -Route104_MapScripts:: @ 81ECC32 +Route104_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, Route104_OnFrame map_script MAP_SCRIPT_ON_TRANSITION, Route104_OnTransition .byte 0 -Route104_OnFrame: @ 81ECC3D +Route104_OnFrame: map_script_2 VAR_BOARD_BRINEY_BOAT_STATE, 1, Route104_EventScript_StartSailToDewford .2byte 0 -Route104_EventScript_StartSailToDewford:: @ 81ECC47 +Route104_EventScript_StartSailToDewford:: lockall goto Route104_EventScript_SailToDewford end -Route104_OnTransition: @ 81ECC4E +Route104_OnTransition: call Common_EventScript_SetupRivalGfxId call Route104_EventScript_TrySetRivalPos call Route104_EventScript_ShowOrHideWhiteHerbFlorist end -Route104_EventScript_ShowOrHideWhiteHerbFlorist:: @ 81ECC5E +Route104_EventScript_ShowOrHideWhiteHerbFlorist:: goto_if_unset FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_EventScript_HideWhiteHerbFlorist goto_if_unset FLAG_BADGE03_GET, Route104_EventScript_HideWhiteHerbFlorist clearflag FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST return -Route104_EventScript_HideWhiteHerbFlorist:: @ 81ECC74 +Route104_EventScript_HideWhiteHerbFlorist:: setflag FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST return -Route104_EventScript_TrySetRivalPos:: @ 81ECC78 +Route104_EventScript_TrySetRivalPos:: compare VAR_BOARD_BRINEY_BOAT_STATE, 1 goto_if_ge Route104_EventScript_DontSetRivalPos goto_if_set FLAG_MET_RIVAL_RUSTBORO, Route104_EventScript_DontSetRivalPos @@ -40,17 +40,17 @@ Route104_EventScript_TrySetRivalPos:: @ 81ECC78 setobjectxyperm LOCALID_RIVAL, 17, 52 return -Route104_EventScript_DontSetRivalPos:: @ 81ECC9D +Route104_EventScript_DontSetRivalPos:: return -Route104_EventScript_Rival:: @ 81ECC9E +Route104_EventScript_Rival:: lockall setvar VAR_0x8008, 1 applymovement LOCALID_RIVAL, Common_Movement_FacePlayer waitmovement 0 goto Route104_EventScript_RivalEncounter -Route104_EventScript_RivalTrigger:: @ 81ECCB3 +Route104_EventScript_RivalTrigger:: lockall setflag FLAG_HIDE_RUSTBORO_CITY_RIVAL setvar VAR_RUSTBORO_CITY_STATE, 8 @@ -75,7 +75,7 @@ Route104_EventScript_RivalTrigger:: @ 81ECCB3 goto Route104_EventScript_RivalEncounter @ Unused, shares script with Rustboro encounter instead -Route104_EventScript_PlayRivalMusic:: @ 81ECD11 +Route104_EventScript_PlayRivalMusic:: checkplayergender compare VAR_RESULT, MALE goto_if_eq Route104_EventScript_PlayMayMusic @@ -83,15 +83,15 @@ Route104_EventScript_PlayRivalMusic:: @ 81ECD11 goto_if_eq Route104_EventScript_PlayBrendanMusic return -Route104_EventScript_PlayMayMusic:: @ 81ECD29 +Route104_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, TRUE return -Route104_EventScript_PlayBrendanMusic:: @ 81ECD2E +Route104_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE return -Route104_EventScript_RivalEncounter:: @ 81ECD33 +Route104_EventScript_RivalEncounter:: checkplayergender compare VAR_RESULT, MALE goto_if_eq Route104_EventScript_MayEncounter @@ -99,7 +99,7 @@ Route104_EventScript_RivalEncounter:: @ 81ECD33 goto_if_eq Route104_EventScript_BrendanEncounter end -Route104_EventScript_MayEncounter:: @ 81ECD4B +Route104_EventScript_MayEncounter:: goto_if_set FLAG_DEFEATED_RIVAL_ROUTE_104, Route104_EventScript_MayDefeated goto_if_set FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_MayAskToBattle setflag FLAG_REGISTER_RIVAL_POKENAV @@ -128,21 +128,21 @@ Route104_EventScript_MayEncounter:: @ 81ECD4B releaseall end -Route104_Movement_RivalWalkSlowLeft: @ 81ECDC8 +Route104_Movement_RivalWalkSlowLeft: walk_slow_left step_end -Route104_Movement_RivalApproachPlayer: @ 81ECDCA +Route104_Movement_RivalApproachPlayer: walk_down face_right step_end -Route104_Movement_PlayerFaceRival: @ 81ECDCD +Route104_Movement_PlayerFaceRival: delay_4 walk_in_place_fastest_left step_end -Route104_EventScript_MayAskToBattle:: @ 81ECDD0 +Route104_EventScript_MayAskToBattle:: msgbox Route104_Text_MayLetsBattle, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route104_EventScript_BattleMay @@ -150,7 +150,7 @@ Route104_EventScript_MayAskToBattle:: @ 81ECDD0 releaseall end -Route104_EventScript_BattleMay:: @ 81ECDED +Route104_EventScript_BattleMay:: msgbox Route104_Text_MayIntro, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route104_EventScript_BattleMayTreecko @@ -158,37 +158,37 @@ Route104_EventScript_BattleMay:: @ 81ECDED case 2, Route104_EventScript_BattleMayMudkip end -Route104_EventScript_MayDefeated:: @ 81ECE1C +Route104_EventScript_MayDefeated:: msgbox Route104_Text_MayPostBattle, MSGBOX_DEFAULT compare VAR_0x8008, 0 call_if_eq Route104_EventScript_RestoreMusic releaseall end -Route104_EventScript_RestoreMusic:: @ 81ECE31 +Route104_EventScript_RestoreMusic:: savebgm MUS_DUMMY fadedefaultbgm return -Route104_EventScript_BattleMayTreecko:: @ 81ECE36 +Route104_EventScript_BattleMayTreecko:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TREECKO, Route104_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_MayDefeated end -Route104_EventScript_BattleMayTorchic:: @ 81ECE49 +Route104_EventScript_BattleMayTorchic:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TORCHIC, Route104_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_MayDefeated end -Route104_EventScript_BattleMayMudkip:: @ 81ECE5C +Route104_EventScript_BattleMayMudkip:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_MUDKIP, Route104_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_MayDefeated end -Route104_EventScript_BrendanEncounter:: @ 81ECE6F +Route104_EventScript_BrendanEncounter:: goto_if_set FLAG_DEFEATED_RIVAL_ROUTE_104, Route104_EventScript_BrendanDefeated goto_if_set FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_BrendanAskToBattle setflag FLAG_REGISTER_RIVAL_POKENAV @@ -217,7 +217,7 @@ Route104_EventScript_BrendanEncounter:: @ 81ECE6F releaseall end -Route104_EventScript_BrendanAskToBattle:: @ 81ECEEC +Route104_EventScript_BrendanAskToBattle:: msgbox Route104_Text_BrendanLetsBattle, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route104_EventScript_BattleBrendan @@ -225,7 +225,7 @@ Route104_EventScript_BrendanAskToBattle:: @ 81ECEEC releaseall end -Route104_EventScript_BattleBrendan:: @ 81ECF09 +Route104_EventScript_BattleBrendan:: msgbox Route104_Text_BrendanIntro, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route104_EventScript_BattleBrendanTreecko @@ -233,42 +233,42 @@ Route104_EventScript_BattleBrendan:: @ 81ECF09 case 2, Route104_EventScript_BattleBrendanMudkip end -Route104_EventScript_BrendanDefeated:: @ 81ECF38 +Route104_EventScript_BrendanDefeated:: msgbox Route104_Text_BrendanPostBattle, MSGBOX_DEFAULT compare VAR_0x8008, 0 call_if_eq Route104_EventScript_RestoreMusic releaseall end -Route104_EventScript_BattleBrendanTreecko:: @ 81ECF4D +Route104_EventScript_BattleBrendanTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TREECKO, Route104_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_BrendanDefeated end -Route104_EventScript_BattleBrendanTorchic:: @ 81ECF60 +Route104_EventScript_BattleBrendanTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TORCHIC, Route104_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_BrendanDefeated end -Route104_EventScript_BattleBrendanMudkip:: @ 81ECF73 +Route104_EventScript_BattleBrendanMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_MUDKIP, Route104_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_ROUTE_104 goto Route104_EventScript_BrendanDefeated end -Route104_Movement_PlayerBackUp: @ 81ECF86 +Route104_Movement_PlayerBackUp: lock_facing_direction walk_down unlock_facing_direction step_end -Route104_Movement_RivalExitBrineysCottage: @ 81ECF8A +Route104_Movement_RivalExitBrineysCottage: walk_down step_end -Route104_EventScript_ExpertF:: @ 81ECF8C +Route104_EventScript_ExpertF:: lock faceplayer goto_if_set FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104, Route104_EventScript_ReceivedBerry @@ -281,12 +281,12 @@ Route104_EventScript_ExpertF:: @ 81ECF8C release end -Route104_EventScript_ReceivedBerry:: @ 81ECFC3 +Route104_EventScript_ReceivedBerry:: msgbox Route104_Text_TrainersOftenMakeMonHoldBerries, MSGBOX_DEFAULT release end -Route104_EventScript_WhiteHerbFlorist:: @ 81ECFCD +Route104_EventScript_WhiteHerbFlorist:: lock faceplayer goto_if_set FLAG_RECEIVED_WHITE_HERB, Route104_EventScript_ReceivedWhiteHerb @@ -298,48 +298,48 @@ Route104_EventScript_WhiteHerbFlorist:: @ 81ECFCD release end -Route104_EventScript_ReceivedWhiteHerb:: @ 81ECFFC +Route104_EventScript_ReceivedWhiteHerb:: msgbox Route104_Text_FlowerShopSellingSaplings, MSGBOX_DEFAULT release end -Route104_EventScript_Girl1:: @ 81ED006 +Route104_EventScript_Girl1:: msgbox Route104_Text_BrineyLivesInSeasideCottage, MSGBOX_NPC end -Route104_EventScript_BugCatcher:: @ 81ED00F +Route104_EventScript_BugCatcher:: msgbox Route104_Text_WhatsItLikeAtBottomOfSea, MSGBOX_SIGN end -Route104_EventScript_BrineysCottageSign:: @ 81ED018 +Route104_EventScript_BrineysCottageSign:: msgbox Route104_Text_MrBrineysCottage, MSGBOX_SIGN end -Route104_EventScript_RouteSignPetalburg:: @ 81ED021 +Route104_EventScript_RouteSignPetalburg:: msgbox Route104_Text_RouteSignPetalburg, MSGBOX_SIGN end -Route104_EventScript_RouteSignRustboro:: @ 81ED02A +Route104_EventScript_RouteSignRustboro:: msgbox Route104_Text_RouteSignRustboro, MSGBOX_SIGN end -Route104_EventScript_FlowerShopSign:: @ 81ED033 +Route104_EventScript_FlowerShopSign:: msgbox Route104_Text_PrettyPetalFlowShop, MSGBOX_SIGN end -Route104_EventScript_TrainerTipsDoubleBattles:: @ 81ED03C +Route104_EventScript_TrainerTipsDoubleBattles:: msgbox Route104_Text_TrainerTipsDoubleBattles, MSGBOX_SIGN end -Route104_EventScript_Boy1:: @ 81ED045 +Route104_EventScript_Boy1:: msgbox Route104_Text_ThrowBallAtWeakenedPokemon, MSGBOX_NPC end -Route104_EventScript_Woman:: @ 81ED04E +Route104_EventScript_Woman:: msgbox Route104_Text_OnlyThrowBallAtWildPokemon, MSGBOX_NPC end -Route104_EventScript_Boy2:: @ 81ED057 +Route104_EventScript_Boy2:: lock faceplayer goto_if_set FLAG_RECEIVED_TM09, Route104_EventScript_ReceivedBulletSeed @@ -351,16 +351,16 @@ Route104_EventScript_Boy2:: @ 81ED057 release end -Route104_EventScript_ReceivedBulletSeed:: @ 81ED086 +Route104_EventScript_ReceivedBulletSeed:: msgbox Route104_Text_TMsAreOneTimeUse, MSGBOX_DEFAULT release end -Route104_EventScript_Girl2:: @ 81ED090 +Route104_EventScript_Girl2:: msgbox Route104_Text_ImNotATrainer, MSGBOX_NPC end -Route104_EventScript_SailToDewford:: @ 81ED099 +Route104_EventScript_SailToDewford:: setobjectpriority LOCALID_BRINEY_R104, MAP_ROUTE104, 0 setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104, 0 applymovement LOCALID_BRINEY_R104, Route104_Movement_BrineyBoardBoat @@ -374,13 +374,13 @@ Route104_EventScript_SailToDewford:: @ 81ED099 goto_if_unset FLAG_ENABLE_NORMAN_MATCH_CALL, Route104_EventScript_SailToDewfordDadCalls end -Route104_EventScript_SailToDewfordNoCall:: @ 81ED0D9 +Route104_EventScript_SailToDewfordNoCall:: applymovement LOCALID_BOAT_R104, Route104_Movement_SailToDewford applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_SailToDewford waitmovement 0 goto Route104_EventScript_ArriveInDewford -Route104_EventScript_SailToDewfordDadCalls:: @ 81ED0EF +Route104_EventScript_SailToDewfordDadCalls:: applymovement LOCALID_BOAT_R104, Route104_Movement_SailToDewfordBeforeDadCalls applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_SailToDewfordBeforeDadCalls waitmovement 0 @@ -399,7 +399,7 @@ Route104_EventScript_SailToDewfordDadCalls:: @ 81ED0EF waitmovement 0 goto Route104_EventScript_ArriveInDewford -Route104_EventScript_ArriveInDewford:: @ 81ED139 +Route104_EventScript_ArriveInDewford:: delay 50 applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerExitBoat waitmovement 0 @@ -427,17 +427,17 @@ Route104_EventScript_ArriveInDewford:: @ 81ED139 goto_if_set FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_LandedInDewford end -Route104_EventScript_DeliverLetterReminder:: @ 81ED1B4 +Route104_EventScript_DeliverLetterReminder:: msgbox Route104_Text_LandedInDewfordDeliverLetter, MSGBOX_DEFAULT releaseall end -Route104_EventScript_LandedInDewford:: @ 81ED1BE +Route104_EventScript_LandedInDewford:: msgbox DewfordTown_Text_BrineyLandedInDewford, MSGBOX_DEFAULT releaseall end -Route104_Movement_SailToDewfordBeforeDadCalls: @ 81ED1C8 +Route104_Movement_SailToDewfordBeforeDadCalls: walk_down walk_down walk_down @@ -537,7 +537,7 @@ Route104_Movement_SailToDewfordBeforeDadCalls: @ 81ED1C8 walk_fastest_down step_end -Route104_Movement_SailToDewfordAfterDadCalls: @ 81ED22A +Route104_Movement_SailToDewfordAfterDadCalls: walk_fastest_down walk_fastest_down walk_fastest_down @@ -637,7 +637,7 @@ Route104_Movement_SailToDewfordAfterDadCalls: @ 81ED22A walk_down step_end -Route104_Movement_SailToDewford: @ 81ED28C +Route104_Movement_SailToDewford: walk_down walk_down walk_down @@ -834,43 +834,43 @@ Route104_Movement_SailToDewford: @ 81ED28C walk_down step_end -Route104_Movement_PlayerBoardBoat: @ 81ED34F +Route104_Movement_PlayerBoardBoat: walk_left walk_down walk_down step_end -Route104_Movement_PlayerExitBoat: @ 81ED353 +Route104_Movement_PlayerExitBoat: walk_down step_end -Route104_Movement_PlayerMoveForBriney: @ 81ED355 +Route104_Movement_PlayerMoveForBriney: walk_down walk_left walk_in_place_fastest_right step_end -Route104_Movement_BrineyBoardBoat: @ 81ED359 +Route104_Movement_BrineyBoardBoat: walk_down walk_down step_end -Route104_Movement_BrineyExitBoat: @ 81ED35C +Route104_Movement_BrineyExitBoat: walk_down walk_in_place_fastest_left step_end -Route104_EventScript_Ivan:: @ 81ED35F +Route104_EventScript_Ivan:: trainerbattle_single TRAINER_IVAN, Route104_Text_IvanIntro, Route104_Text_IvanDefeat msgbox Route104_Text_IvanPostBattle, MSGBOX_AUTOCLOSE end -Route104_EventScript_Billy:: @ 81ED376 +Route104_EventScript_Billy:: trainerbattle_single TRAINER_BILLY, Route104_Text_BillyIntro, Route104_Text_BillyDefeat msgbox Route104_Text_BillyPostBattle, MSGBOX_AUTOCLOSE end -Route104_EventScript_Haley:: @ 81ED38D +Route104_EventScript_Haley:: trainerbattle_single TRAINER_HALEY_1, Route104_Text_HaleyIntro, Route104_Text_HaleyDefeat, Route104_EventScript_TryRegisterHaleyAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -883,37 +883,37 @@ Route104_EventScript_Haley:: @ 81ED38D release end -Route104_EventScript_TryRegisterHaleyAfterBattle:: @ 81ED3CE +Route104_EventScript_TryRegisterHaleyAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterHaleyAfterBattle release end -Route104_EventScript_RegisterHaleyAfterBattle:: @ 81ED3DF +Route104_EventScript_RegisterHaleyAfterBattle:: msgbox Route104_Text_HaleyRegister2, MSGBOX_DEFAULT register_matchcall TRAINER_HALEY_1 release end -Route104_EventScript_TryRegisterHaley:: @ 81ED3F8 +Route104_EventScript_TryRegisterHaley:: goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterHaley msgbox Route104_Text_HaleyPostBattle, MSGBOX_DEFAULT release end -Route104_EventScript_RegisterHaley:: @ 81ED40B +Route104_EventScript_RegisterHaley:: msgbox Route104_Text_HaleyRegister1, MSGBOX_DEFAULT register_matchcall TRAINER_HALEY_1 release end -Route104_EventScript_RematchHaley:: @ 81ED424 +Route104_EventScript_RematchHaley:: trainerbattle_rematch TRAINER_HALEY_1, Route104_Text_HaleyRematchIntro, Route104_Text_HaleyRematchDefeat msgbox Route104_Text_HaleyPostRematch, MSGBOX_AUTOCLOSE end -Route104_EventScript_Winston:: @ 81ED43B +Route104_EventScript_Winston:: trainerbattle_single TRAINER_WINSTON_1, Route104_Text_WinstonIntro, Route104_Text_WinstonDefeat, Route104_EventScript_TryRegisterWinstonAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -926,37 +926,37 @@ Route104_EventScript_Winston:: @ 81ED43B release end -Route104_EventScript_TryRegisterWinstonAfterBattle:: @ 81ED47C +Route104_EventScript_TryRegisterWinstonAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterWinstonAfterBattle release end -Route104_EventScript_RegisterWinstonAfterBattle:: @ 81ED48D +Route104_EventScript_RegisterWinstonAfterBattle:: msgbox Route104_Text_WinstonRegister2, MSGBOX_DEFAULT register_matchcall TRAINER_WINSTON_1 release end -Route104_EventScript_TryRegisterWinston:: @ 81ED4A6 +Route104_EventScript_TryRegisterWinston:: goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterWinston msgbox Route104_Text_WinstonPostBattle, MSGBOX_DEFAULT release end -Route104_EventScript_RegisterWinston:: @ 81ED4B9 +Route104_EventScript_RegisterWinston:: msgbox Route104_Text_WinstonRegister1, MSGBOX_DEFAULT register_matchcall TRAINER_WINSTON_1 release end -Route104_EventScript_RematchWinston:: @ 81ED4D2 +Route104_EventScript_RematchWinston:: trainerbattle_rematch TRAINER_WINSTON_1, Route104_Text_WinstonRematchIntro, Route104_Text_WinstonRematchDefeat msgbox Route104_Text_WinstonPostRematch, MSGBOX_AUTOCLOSE end -Route104_EventScript_Cindy:: @ 81ED4E9 +Route104_EventScript_Cindy:: trainerbattle_single TRAINER_CINDY_1, Route104_Text_CindyIntro, Route104_Text_CindyDefeat, Route104_EventScript_TryRegisterCindyAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -969,100 +969,100 @@ Route104_EventScript_Cindy:: @ 81ED4E9 release end -Route104_EventScript_TryRegisterCindyAfterBattle:: @ 81ED52A +Route104_EventScript_TryRegisterCindyAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterCindyAfterBattle release end -Route104_EventScript_RegisterCindyAfterBattle:: @ 81ED53B +Route104_EventScript_RegisterCindyAfterBattle:: msgbox Route104_Text_CindyRegister2, MSGBOX_DEFAULT register_matchcall TRAINER_CINDY_1 release end -Route104_EventScript_TryRegisterCindy:: @ 81ED554 +Route104_EventScript_TryRegisterCindy:: goto_if_set FLAG_HAS_MATCH_CALL, Route104_EventScript_RegisterCindy msgbox Route104_Text_CindyPostBattle, MSGBOX_DEFAULT release end -Route104_EventScript_RegisterCindy:: @ 81ED567 +Route104_EventScript_RegisterCindy:: msgbox Route104_Text_CindyRegister1, MSGBOX_DEFAULT register_matchcall TRAINER_CINDY_1 release end -Route104_EventScript_RematchCindy:: @ 81ED580 +Route104_EventScript_RematchCindy:: trainerbattle_rematch TRAINER_CINDY_1, Route104_Text_CindyRematchIntro, Route104_Text_CindyRematchDefeat msgbox Route104_Text_CindyPostRematch, MSGBOX_AUTOCLOSE end -Route104_EventScript_Gina:: @ 81ED597 +Route104_EventScript_Gina:: trainerbattle_double TRAINER_GINA_AND_MIA_1, Route104_Text_GinaIntro, Route104_Text_GinaDefeat, Route104_Text_GinaNotEnoughMons special GetPlayerBigGuyGirlString msgbox Route104_Text_GinaPostBattle, MSGBOX_DEFAULT release end -Route104_EventScript_Mia:: @ 81ED5B6 +Route104_EventScript_Mia:: trainerbattle_double TRAINER_GINA_AND_MIA_1, Route104_Text_MiaIntro, Route104_Text_MiaDefeat, Route104_Text_MiaNotEnoughMons special GetPlayerBigGuyGirlString msgbox Route104_Text_MiaPostBattle, MSGBOX_DEFAULT release end -Route104_EventScript_Darian:: @ 81ED5D5 +Route104_EventScript_Darian:: trainerbattle_single TRAINER_DARIAN, Route104_Text_DarianIntro, Route104_Text_DarianDefeat msgbox Route104_Text_DarianPostBattle, MSGBOX_AUTOCLOSE end -Route104_Text_BrineyLivesInSeasideCottage: @ 81ED5EC +Route104_Text_BrineyLivesInSeasideCottage: .string "That seaside cottage is where\n" .string "MR. BRINEY lives.\p" .string "He was once a mighty sailor who never\n" .string "feared the sea, however stormy.$" -Route104_Text_WhatsItLikeAtBottomOfSea: @ 81ED662 +Route104_Text_WhatsItLikeAtBottomOfSea: .string "The sea, huh?\p" .string "I wonder what it's like at the bottom\n" .string "of the sea?$" -Route104_Text_ThrowBallAtWeakenedPokemon: @ 81ED6A2 +Route104_Text_ThrowBallAtWeakenedPokemon: .string "If you're going to throw a POKé BALL,\n" .string "weaken the wild POKéMON first.\p" .string "It will be easier to catch if it's been\n" .string "poisoned, burned, or lulled to sleep.$" -Route104_Text_OnlyThrowBallAtWildPokemon: @ 81ED735 +Route104_Text_OnlyThrowBallAtWildPokemon: .string "You're a thief if you try to steal\n" .string "someone else's POKéMON.\p" .string "You should throw POKé BALLS only at\n" .string "wild POKéMON.$" -Route104_Text_ImNotATrainer: @ 81ED7A2 +Route104_Text_ImNotATrainer: .string "Oh, no, I'm not a TRAINER.\p" .string "But that's right, if TRAINERS lock eyes,\n" .string "it's a challenge to battle.\p" .string "If you don't want to battle, stay out\n" .string "of their sight.$" -Route104_Text_LikeFillingMouthWithSeedsTakeThis: @ 81ED838 +Route104_Text_LikeFillingMouthWithSeedsTakeThis: .string "I like filling my mouth with seeds,\n" .string "then spitting them out fast!\p" .string "You can have this, so you try it out!\p" .string "Use it on a POKéMON, and it will learn\n" .string "a move for firing seeds rapidly.$" -Route104_Text_TMsAreOneTimeUse: @ 81ED8E7 +Route104_Text_TMsAreOneTimeUse: .string "A word of advice!\p" .string "A TM, TECHNICAL MACHINE, is good only\n" .string "for one-time use.\p" .string "Once you use it, it's gone.\n" .string "Think twice before using it!$" -Route104_Text_DontNeedThisTakeIt: @ 81ED96A +Route104_Text_DontNeedThisTakeIt: .string "This FLOWER SHOP started selling\n" .string "saplings recently.\p" .string "It made me so happy, I went overboard\n" @@ -1070,27 +1070,27 @@ Route104_Text_DontNeedThisTakeIt: @ 81ED96A .string "I don't need this WHITE HERB anymore.\n" .string "Would you take it, please?$" -Route104_Text_FlowerShopSellingSaplings: @ 81EDA0F +Route104_Text_FlowerShopSellingSaplings: .string "This FLOWER SHOP started selling\n" .string "saplings recently.\p" .string "It made me so happy, I went overboard\n" .string "shopping. Where should I put them?$" -Route104_Text_MrBrineysCottage: @ 81EDA8C +Route104_Text_MrBrineysCottage: .string "MR. BRINEY'S COTTAGE$" -Route104_Text_RouteSignPetalburg: @ 81EDAA1 +Route104_Text_RouteSignPetalburg: .string "ROUTE 1O4\n" .string "{RIGHT_ARROW} PETALBURG CITY$" -Route104_Text_RouteSignRustboro: @ 81EDABC +Route104_Text_RouteSignRustboro: .string "ROUTE 1O4\n" .string "{UP_ARROW} RUSTBORO CITY$" -Route104_Text_PrettyPetalFlowShop: @ 81EDAD6 +Route104_Text_PrettyPetalFlowShop: .string "PRETTY PETAL FLOWER SHOP$" -Route104_Text_TrainerTipsDoubleBattles: @ 81EDAEF +Route104_Text_TrainerTipsDoubleBattles: .string "TRAINER TIPS\p" .string "In the HOENN region there are pairs\n" .string "of TRAINERS who challenge others\l" @@ -1101,45 +1101,45 @@ Route104_Text_TrainerTipsDoubleBattles: @ 81EDAEF .string "left of the list and the top one.\l" .string "Watch how POKéMON are lined up.$" -Route104_Text_MayWeShouldRegister: @ 81EDBFF +Route104_Text_MayWeShouldRegister: .string "MAY: Oh, hi, {PLAYER}{KUN}!\p" .string "DEVON upgraded your POKéNAV with\n" .string "the MATCH CALL system, huh?\p" .string "We should register each other so we\n" .string "can get in contact anytime.$" -Route104_Text_RegisteredMay: @ 81EDC8F +Route104_Text_RegisteredMay: .string "{PLAYER} registered MAY\n" .string "in the POKéNAV.$" -Route104_Text_MayHowsYourPokedex: @ 81EDCB1 +Route104_Text_MayHowsYourPokedex: .string "MAY: Oh, by the way, {PLAYER}{KUN},\n" .string "how's your POKéDEX coming along?$" -Route104_Text_MayMinesDecentLetsBattle: @ 81EDCED +Route104_Text_MayMinesDecentLetsBattle: .string "Mine's looking pretty decent.\n" .string "So…\l" .string "How about a little battle?$" -Route104_Text_MayHaventRaisedPokemon: @ 81EDD2A +Route104_Text_MayHaventRaisedPokemon: .string "MAY: Oh, what's the matter?\p" .string "Haven't you caught or raised your\n" .string "POKéMON very much?\p" .string "That's not very good for a TRAINER!$" -Route104_Text_MayLetsBattle: @ 81EDD9F +Route104_Text_MayLetsBattle: .string "MAY: So, what do you think?\n" .string "How about a little battle here?$" -Route104_Text_MayIntro: @ 81EDDDB +Route104_Text_MayIntro: .string "MAY: You just became a TRAINER,\n" .string "{PLAYER}{KUN}. I'm not going to lose!$" -Route104_Text_MayDefeat: @ 81EDE18 +Route104_Text_MayDefeat: .string "Yikes!\n" .string "You're better than I expected!$" -Route104_Text_MayPostBattle: @ 81EDE3E +Route104_Text_MayPostBattle: .string "MAY: I can tell you've gotten pretty\n" .string "good with the way you handle POKéMON.\p" .string "But instead of only making them\n" @@ -1147,43 +1147,43 @@ Route104_Text_MayPostBattle: @ 81EDE3E .string "It's important to become friends with\n" .string "POKéMON, too.$" -Route104_Text_BrendanWeShouldRegister: @ 81EDF04 +Route104_Text_BrendanWeShouldRegister: .string "BRENDAN: Oh, hey, {PLAYER}!\p" .string "Cool, you had DEVON install the MATCH\n" .string "CALL system on your POKéNAV!\p" .string "Let's register each other in our\n" .string "POKéNAVS so we can keep in touch.$" -Route104_Text_RegisteredBrendan: @ 81EDFA0 +Route104_Text_RegisteredBrendan: .string "{PLAYER} registered BRENDAN\n" .string "in the POKéNAV.$" -Route104_Text_BrendanHowsYourPokedex: @ 81EDFC6 +Route104_Text_BrendanHowsYourPokedex: .string "BRENDAN: {PLAYER}, how's your POKéDEX?\n" .string "Have you filled in any pages yet?$" -Route104_Text_BrendanDoingGreatLetsBattle: @ 81EE009 +Route104_Text_BrendanDoingGreatLetsBattle: .string "Me, I'm doing great!\p" .string "Want to check out how good I am with\n" .string "a battle?$" -Route104_Text_BrendanNoConfidence: @ 81EE04D +Route104_Text_BrendanNoConfidence: .string "BRENDAN: What's the matter? Don't have\n" .string "any confidence in your POKéMON?$" -Route104_Text_BrendanLetsBattle: @ 81EE094 +Route104_Text_BrendanLetsBattle: .string "BRENDAN: What's up?\n" .string "Want to have a battle with me?$" -Route104_Text_BrendanIntro: @ 81EE0C7 +Route104_Text_BrendanIntro: .string "BRENDAN: I know you just became\n" .string "a TRAINER, but I won't go easy!$" -Route104_Text_BrendanDefeat: @ 81EE107 +Route104_Text_BrendanDefeat: .string "Hmm…\n" .string "You're pretty good.$" -Route104_Text_BrendanPostBattle: @ 81EE120 +Route104_Text_BrendanPostBattle: .string "BRENDAN: You've gotten pretty decent\n" .string "at handling POKéMON.\p" .string "But, you know, you shouldn't just be\n" diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc index 186254d92bda..60e08c7b89ed 100644 --- a/data/maps/Route104_MrBrineysHouse/scripts.inc +++ b/data/maps/Route104_MrBrineysHouse/scripts.inc @@ -1,29 +1,29 @@ .set LOCALID_BRINEY, 1 .set LOCALID_PEEKO, 2 -Route104_MrBrineysHouse_MapScripts:: @ 8229D2E +Route104_MrBrineysHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route104_MrBrineysHouse_OnTransition .byte 0 -Route104_MrBrineysHouse_OnTransition: @ 8229D34 +Route104_MrBrineysHouse_OnTransition: setflag FLAG_LANDMARK_MR_BRINEY_HOUSE compare VAR_BRINEY_HOUSE_STATE, 1 call_if_eq Route104_MrBrineysHouse_EventScript_SetBrineyPeekoPos call_if_set FLAG_RECEIVED_POKENAV, Route104_MrBrineysHouse_EventScript_HideRustboroRival end -Route104_MrBrineysHouse_EventScript_HideRustboroRival:: @ 8229D4C +Route104_MrBrineysHouse_EventScript_HideRustboroRival:: setflag FLAG_HIDE_RUSTBORO_CITY_RIVAL return -Route104_MrBrineysHouse_EventScript_SetBrineyPeekoPos:: @ 8229D50 +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 return -Route104_MrBrineysHouse_EventScript_Briney:: @ 8229D67 +Route104_MrBrineysHouse_EventScript_Briney:: lock faceplayer call_if_unset FLAG_MR_BRINEY_SAILING_INTRO, Route104_MrBrineysHouse_EventScript_SailingIntro @@ -32,7 +32,7 @@ Route104_MrBrineysHouse_EventScript_Briney:: @ 8229D67 goto Route104_MrBrineysHouse_EventScript_WhereAreWeBound end -Route104_MrBrineysHouse_EventScript_SailingIntro:: @ 8229D8A +Route104_MrBrineysHouse_EventScript_SailingIntro:: setflag FLAG_MR_BRINEY_SAILING_INTRO msgbox Route104_MrBrineysHouse_Text_WaitUpPeeko, MSGBOX_DEFAULT msgbox Route104_MrBrineysHouse_Text_ItsYouLetsSailToDewford, MSGBOX_YESNO @@ -41,7 +41,7 @@ Route104_MrBrineysHouse_EventScript_SailingIntro:: @ 8229D8A goto Route104_MrBrineysHouse_EventScript_SailToDewford end -Route104_MrBrineysHouse_EventScript_WhereAreWeBound:: @ 8229DAE +Route104_MrBrineysHouse_EventScript_WhereAreWeBound:: message Route104_MrBrineysHouse_Text_WhereAreWeBound waitmessage multichoicedefault 20, 8, MULTI_BRINEY_OFF_DEWFORD, 1, FALSE @@ -51,31 +51,31 @@ Route104_MrBrineysHouse_EventScript_WhereAreWeBound:: @ 8229DAE case MULTI_B_PRESSED, Route104_MrBrineysHouse_EventScript_DeclineSailing end -Route104_MrBrineysHouse_EventScript_SailBothDeliveries:: @ 8229DE1 +Route104_MrBrineysHouse_EventScript_SailBothDeliveries:: msgbox Route104_MrBrineysHouse_Text_NeedToMakeDeliveriesSailToDewford, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing goto Route104_MrBrineysHouse_EventScript_SailToDewford end -Route104_MrBrineysHouse_EventScript_SailDeliverPackage:: @ 8229DFA +Route104_MrBrineysHouse_EventScript_SailDeliverPackage:: msgbox Route104_MrBrineysHouse_Text_NeedToDeliverPackageSailToDewford, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing goto Route104_MrBrineysHouse_EventScript_SailToDewford end -Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing:: @ 8229E13 +Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing:: msgbox Route104_MrBrineysHouse_Text_DeclineDeliverySail, MSGBOX_DEFAULT release end -Route104_MrBrineysHouse_EventScript_DeclineSailing:: @ 8229E1D +Route104_MrBrineysHouse_EventScript_DeclineSailing:: msgbox Route104_MrBrineysHouse_Text_TellMeWheneverYouWantToSail, MSGBOX_DEFAULT release end -Route104_MrBrineysHouse_EventScript_SailToDewford:: @ 8229E27 +Route104_MrBrineysHouse_EventScript_SailToDewford:: msgbox Route104_MrBrineysHouse_Text_SetSailForDewford, MSGBOX_DEFAULT call EventScript_BackupMrBrineyLocation setvar VAR_BOARD_BRINEY_BOAT_STATE, 1 @@ -91,7 +91,7 @@ Route104_MrBrineysHouse_EventScript_SailToDewford:: @ 8229E27 releaseall end -Route104_MrBrineysHouse_EventScript_Peeko:: @ 8229E5D +Route104_MrBrineysHouse_EventScript_Peeko:: lock faceplayer waitse @@ -101,11 +101,11 @@ Route104_MrBrineysHouse_EventScript_Peeko:: @ 8229E5D release end -Route104_MrBrineysHouse_Text_WaitUpPeeko: @ 8229E70 +Route104_MrBrineysHouse_Text_WaitUpPeeko: .string "MR. BRINEY: Hold on, lass!\n" .string "Wait up, PEEKO!$" -Route104_MrBrineysHouse_Text_ItsYouLetsSailToDewford: @ 8229E9B +Route104_MrBrineysHouse_Text_ItsYouLetsSailToDewford: .string "Hm? You're {PLAYER}{KUN}!\n" .string "You saved my darling PEEKO!\l" .string "We owe so much to you!\p" @@ -120,18 +120,18 @@ Route104_MrBrineysHouse_Text_ItsYouLetsSailToDewford: @ 8229E9B .string "You've come to the right man!\n" .string "We'll set sail for DEWFORD.$" -Route104_MrBrineysHouse_Text_SetSailForDewford: @ 8229FE9 +Route104_MrBrineysHouse_Text_SetSailForDewford: .string "MR. BRINEY: DEWFORD it is, then!\p" .string "Anchors aweigh!\n" .string "PEEKO, we're setting sail, my darling!$" -Route104_MrBrineysHouse_Text_DeclineDeliverySail: @ 822A041 +Route104_MrBrineysHouse_Text_DeclineDeliverySail: .string "MR. BRINEY: Is that so?\n" .string "Your deliveries can wait?\p" .string "You just go on and tell me whenever\n" .string "you want to set sail!$" -Route104_MrBrineysHouse_Text_NeedToMakeDeliveriesSailToDewford: @ 822A0AD +Route104_MrBrineysHouse_Text_NeedToMakeDeliveriesSailToDewford: .string "MR. BRINEY: Ahoy!\n" .string "I know exactly what you want to say!\p" .string "You're to deliver a LETTER to DEWFORD\n" @@ -140,7 +140,7 @@ Route104_MrBrineysHouse_Text_NeedToMakeDeliveriesSailToDewford: @ 822A0AD .string "at all--I'm the man for the job!\p" .string "First, we'll set sail for DEWFORD.$" -Route104_MrBrineysHouse_Text_NeedToDeliverPackageSailToDewford: @ 822A18F +Route104_MrBrineysHouse_Text_NeedToDeliverPackageSailToDewford: .string "MR. BRINEY: Ahoy!\n" .string "I know exactly what you want to say!\p" .string "You're to deliver a package to\n" @@ -149,17 +149,17 @@ Route104_MrBrineysHouse_Text_NeedToDeliverPackageSailToDewford: @ 822A18F .string "at all--I'm the man for the job!\p" .string "First, we'll set sail for DEWFORD.$" -Route104_MrBrineysHouse_Text_WhereAreWeBound: @ 822A268 +Route104_MrBrineysHouse_Text_WhereAreWeBound: .string "MR. BRINEY: Ahoy!\n" .string "For you, I'll go out to sea anytime!\p" .string "Now, my friend, where are we bound?$" -Route104_MrBrineysHouse_Text_TellMeWheneverYouWantToSail: @ 822A2C3 +Route104_MrBrineysHouse_Text_TellMeWheneverYouWantToSail: .string "MR. BRINEY: Is that so?\n" .string "Well, PEEKO owes her life to you.\p" .string "You just go on and tell me whenever\n" .string "you want to set sail!$" -Route104_MrBrineysHouse_Text_Peeko: @ 822A337 +Route104_MrBrineysHouse_Text_Peeko: .string "PEEKO: Pii piihyoro!$" diff --git a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc index e2ed46ddc278..34f5ba42c4f3 100644 --- a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc +++ b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc @@ -1,21 +1,21 @@ .set LOCALID_OWNER, 1 -Route104_PrettyPetalFlowerShop_MapScripts:: @ 822A34C +Route104_PrettyPetalFlowerShop_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route104_PrettyPetalFlowerShop_OnTransition .byte 0 -Route104_PrettyPetalFlowerShop_OnTransition: @ 822A352 +Route104_PrettyPetalFlowerShop_OnTransition: setflag FLAG_LANDMARK_FLOWER_SHOP goto_if_unset FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_PrettyPetalFlowerShop_EventScript_MoveShopOwner goto_if_unset FLAG_BADGE03_GET, Route104_PrettyPetalFlowerShop_EventScript_MoveShopOwner setflag FLAG_TEMP_1 end -Route104_PrettyPetalFlowerShop_EventScript_MoveShopOwner:: @ 822A36B +Route104_PrettyPetalFlowerShop_EventScript_MoveShopOwner:: setobjectxyperm LOCALID_OWNER, 4, 6 end -Route104_PrettyPetalFlowerShop_EventScript_ShopOwner:: @ 822A373 +Route104_PrettyPetalFlowerShop_EventScript_ShopOwner:: lock faceplayer goto_if_set FLAG_TEMP_1, Route104_PrettyPetalFlowerShop_EventScript_SellDecorations @@ -30,7 +30,7 @@ Route104_PrettyPetalFlowerShop_EventScript_ShopOwner:: @ 822A373 release end -Route104_PrettyPetalFlowerShop_EventScript_AlreadyMet:: @ 822A3B2 +Route104_PrettyPetalFlowerShop_EventScript_AlreadyMet:: msgbox Route104_PrettyPetalFlowerShop_Text_LearnAboutBerries, MSGBOX_YESNO compare VAR_RESULT, YES call_if_eq Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries @@ -39,15 +39,15 @@ Route104_PrettyPetalFlowerShop_EventScript_AlreadyMet:: @ 822A3B2 release end -Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries:: @ 822A3D2 +Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries:: msgbox Route104_PrettyPetalFlowerShop_Text_BerriesExplanation, MSGBOX_DEFAULT return -Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries:: @ 822A3DB +Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries:: msgbox Route104_PrettyPetalFlowerShop_Text_FlowersBringHappiness, MSGBOX_DEFAULT return -Route104_PrettyPetalFlowerShop_EventScript_SellDecorations:: @ 822A3E4 +Route104_PrettyPetalFlowerShop_EventScript_SellDecorations:: message gText_PlayerWhatCanIDoForYou waitmessage pokemartdecoration2 Route104_PrettyPetalFlowerShop_Pokemart_Plants @@ -56,7 +56,7 @@ Route104_PrettyPetalFlowerShop_EventScript_SellDecorations:: @ 822A3E4 end .align 2 -Route104_PrettyPetalFlowerShop_Pokemart_Plants: @ 822A3FC +Route104_PrettyPetalFlowerShop_Pokemart_Plants: .2byte DECOR_RED_PLANT .2byte DECOR_TROPICAL_PLANT .2byte DECOR_PRETTY_FLOWERS @@ -67,7 +67,7 @@ Route104_PrettyPetalFlowerShop_Pokemart_Plants: @ 822A3FC release end -Route104_PrettyPetalFlowerShop_EventScript_WailmerPailGirl:: @ 822A40C +Route104_PrettyPetalFlowerShop_EventScript_WailmerPailGirl:: lock faceplayer goto_if_unset FLAG_RECEIVED_WAILMER_PAIL, Route104_PrettyPetalFlowerShop_EventScript_GiveWailmerPail @@ -75,7 +75,7 @@ Route104_PrettyPetalFlowerShop_EventScript_WailmerPailGirl:: @ 822A40C release end -Route104_PrettyPetalFlowerShop_EventScript_GiveWailmerPail:: @ 822A421 +Route104_PrettyPetalFlowerShop_EventScript_GiveWailmerPail:: msgbox Route104_PrettyPetalFlowerShop_Text_YouCanHaveThis, MSGBOX_DEFAULT giveitem ITEM_WAILMER_PAIL msgbox Route104_PrettyPetalFlowerShop_Text_WailmerPailExplanation, MSGBOX_DEFAULT @@ -83,7 +83,7 @@ Route104_PrettyPetalFlowerShop_EventScript_GiveWailmerPail:: @ 822A421 release end -Route104_PrettyPetalFlowerShop_EventScript_RandomBerryGirl:: @ 822A442 +Route104_PrettyPetalFlowerShop_EventScript_RandomBerryGirl:: lock faceplayer dotimebasedevents @@ -99,7 +99,7 @@ Route104_PrettyPetalFlowerShop_EventScript_RandomBerryGirl:: @ 822A442 release end -Route104_PrettyPetalFlowerShop_EventScript_AlreadyReceivedBerry:: @ 822A482 +Route104_PrettyPetalFlowerShop_EventScript_AlreadyReceivedBerry:: msgbox Route104_PrettyPetalFlowerShop_Text_MachineMixesBerries, MSGBOX_DEFAULT release end diff --git a/data/maps/Route104_Prototype/scripts.inc b/data/maps/Route104_Prototype/scripts.inc index d8274fffc14a..3ad060c6de25 100644 --- a/data/maps/Route104_Prototype/scripts.inc +++ b/data/maps/Route104_Prototype/scripts.inc @@ -1,3 +1,3 @@ -Route104_Prototype_MapScripts:: @ 82693F2 +Route104_Prototype_MapScripts:: .byte 0 diff --git a/data/maps/Route104_PrototypePrettyPetalFlowerShop/scripts.inc b/data/maps/Route104_PrototypePrettyPetalFlowerShop/scripts.inc index bacbad7e90cf..a94eb24ec50e 100644 --- a/data/maps/Route104_PrototypePrettyPetalFlowerShop/scripts.inc +++ b/data/maps/Route104_PrototypePrettyPetalFlowerShop/scripts.inc @@ -1,3 +1,3 @@ -Route104_PrototypePrettyPetalFlowerShop_MapScripts:: @ 82693F3 +Route104_PrototypePrettyPetalFlowerShop_MapScripts:: .byte 0 diff --git a/data/maps/Route105/scripts.inc b/data/maps/Route105/scripts.inc index a42446e72857..b60cd181fa5a 100644 --- a/data/maps/Route105/scripts.inc +++ b/data/maps/Route105/scripts.inc @@ -1,10 +1,10 @@ -Route105_MapScripts:: @ 81EE1DB +Route105_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, Route105_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, Route105_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route105_OnFrame .byte 0 -Route105_OnLoad: @ 81EE1EB +Route105_OnLoad: call_if_unset FLAG_REGI_DOORS_OPENED, Route105_CloseRegiEntrance compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute105North @@ -12,12 +12,12 @@ Route105_OnLoad: @ 81EE1EB call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute105South end -Route105_CloseRegiEntrance:: @ 81EE20B +Route105_CloseRegiEntrance:: setmetatile 9, 19, METATILE_General_RockWall_RockBase, 1 setmetatile 9, 20, METATILE_General_RockWall_SandBase, 1 return -Route105_OnTransition: @ 81EE21E +Route105_OnTransition: compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH @@ -26,41 +26,41 @@ Route105_OnTransition: @ 81EE21E call_if_eq AbnormalWeather_StartKyogreWeather end -Route105_OnFrame: @ 81EE240 +Route105_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route105_EventScript_Foster:: @ 81EE24A +Route105_EventScript_Foster:: trainerbattle_single TRAINER_FOSTER, Route105_Text_FosterIntro, Route105_Text_FosterDefeated msgbox Route105_Text_FosterPostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Luis:: @ 81EE261 +Route105_EventScript_Luis:: trainerbattle_single TRAINER_LUIS, Route105_Text_LuisIntro, Route105_Text_LuisDefeated msgbox Route105_Text_LuisPostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Dominik:: @ 81EE278 +Route105_EventScript_Dominik:: trainerbattle_single TRAINER_DOMINIK, Route105_Text_DominikIntro, Route105_Text_DominikDefeated msgbox Route105_Text_DominikPostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Beverly:: @ 81EE28F +Route105_EventScript_Beverly:: trainerbattle_single TRAINER_BEVERLY, Route105_Text_BeverlyIntro, Route105_Text_BeverlyDefeated msgbox Route105_Text_PostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Imani:: @ 81EE2A6 +Route105_EventScript_Imani:: trainerbattle_single TRAINER_IMANI, Route105_Text_ImaniIntro, Route105_Text_ImaniDefeated msgbox Route105_Text_ImaniPostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Josue:: @ 81EE2BD +Route105_EventScript_Josue:: trainerbattle_single TRAINER_JOSUE, Route105_Text_JosueIntro, Route105_Text_JosueDefeated msgbox Route105_Text_JosuePostBattle, MSGBOX_AUTOCLOSE end -Route105_EventScript_Andres:: @ 81EE2D4 +Route105_EventScript_Andres:: trainerbattle_single TRAINER_ANDRES_1, Route105_Text_AndresIntro, Route105_Text_AndresDefeated, Route105_EventScript_AndresRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -69,7 +69,7 @@ Route105_EventScript_Andres:: @ 81EE2D4 release end -Route105_EventScript_AndresRegisterMatchCallAfterBattle:: @ 81EE300 +Route105_EventScript_AndresRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route105_Text_AndresRegister, MSGBOX_DEFAULT @@ -77,12 +77,12 @@ Route105_EventScript_AndresRegisterMatchCallAfterBattle:: @ 81EE300 release end -Route105_EventScript_AndresRematch:: @ 81EE31F +Route105_EventScript_AndresRematch:: trainerbattle_rematch TRAINER_ANDRES_1, Route105_Text_AndresRematchIntro, Route105_Text_AndresRematchDefeated msgbox Route105_Text_AndresRematchPostBattle, MSGBOX_AUTOCLOSE end -Route104_Text_DadPokenavCall: @ 81EE336 +Route104_Text_DadPokenavCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "DAD: Oh, {PLAYER}?\p" @@ -98,6 +98,6 @@ Route104_Text_DadPokenavCall: @ 81EE336 .string "… … … … … …\n" .string "… … … … … Click!$" -Route104_Text_RegisteredDadInPokenav: @ 81EE463 +Route104_Text_RegisteredDadInPokenav: .string "Registered DAD NORMAN\n" .string "in the POKéNAV.$" diff --git a/data/maps/Route106/scripts.inc b/data/maps/Route106/scripts.inc index f9d3fb3b93c7..2107ce1c3bf5 100644 --- a/data/maps/Route106/scripts.inc +++ b/data/maps/Route106/scripts.inc @@ -1,21 +1,21 @@ -Route106_MapScripts:: @ 81EE489 +Route106_MapScripts:: .byte 0 -Route106_EventScript_TrainerTipsSign:: @ 81EE48A +Route106_EventScript_TrainerTipsSign:: msgbox Route106_Text_TrainerTips, MSGBOX_SIGN end -Route106_EventScript_Douglas:: @ 81EE493 +Route106_EventScript_Douglas:: trainerbattle_single TRAINER_DOUGLAS, Route106_Text_DouglasIntro, Route106_Text_DouglasDefeated msgbox Route106_Text_DouglasPostBattle, MSGBOX_AUTOCLOSE end -Route106_EventScript_Kyla:: @ 81EE4AA +Route106_EventScript_Kyla:: trainerbattle_single TRAINER_KYLA, Route106_Text_KylaIntro, Route106_Text_KylaDefeated msgbox Route106_Text_KylaPostBattle, MSGBOX_AUTOCLOSE end -Route106_EventScript_Elliot:: @ 81EE4C1 +Route106_EventScript_Elliot:: trainerbattle_single TRAINER_ELLIOT_1, Route106_Text_ElliotIntro, Route106_Text_ElliotDefeated, Route106_EventScript_ElliotRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -24,7 +24,7 @@ Route106_EventScript_Elliot:: @ 81EE4C1 release end -Route106_EventScript_ElliotRegisterMatchCallAfterBattle:: @ 81EE4ED +Route106_EventScript_ElliotRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route106_Text_ElliotRegister, MSGBOX_DEFAULT @@ -32,17 +32,17 @@ Route106_EventScript_ElliotRegisterMatchCallAfterBattle:: @ 81EE4ED release end -Route106_EventScript_ElliotRematch:: @ 81EE50C +Route106_EventScript_ElliotRematch:: trainerbattle_rematch TRAINER_ELLIOT_1, Route106_Text_ElliotRematchIntro, Route106_Text_ElliotRematchDefeated msgbox Route106_Text_ElliotRematchPostBattle, MSGBOX_AUTOCLOSE end -Route106_EventScript_Ned:: @ 81EE523 +Route106_EventScript_Ned:: trainerbattle_single TRAINER_NED, Route106_Text_NedIntro, Route106_Text_NedDefeated msgbox Route106_Text_NedPostBattle, MSGBOX_AUTOCLOSE end -Route106_Text_TrainerTips: @ 81EE53A +Route106_Text_TrainerTips: .string "TRAINER TIPS\p" .string "Advice on catching POKéMON with a ROD:\n" .string "Press the A Button if you get a bite.$" diff --git a/data/maps/Route107/scripts.inc b/data/maps/Route107/scripts.inc index 0642c457fa6f..cffeafb08f4e 100644 --- a/data/maps/Route107/scripts.inc +++ b/data/maps/Route107/scripts.inc @@ -1,12 +1,12 @@ -Route107_MapScripts:: @ 81EE594 +Route107_MapScripts:: .byte 0 -Route107_EventScript_Darrin:: @ 81EE595 +Route107_EventScript_Darrin:: trainerbattle_single TRAINER_DARRIN, Route107_Text_DarrinIntro, Route107_Text_DarrinDefeated msgbox Route107_Text_DarrinPostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Tony:: @ 81EE5AC +Route107_EventScript_Tony:: trainerbattle_single TRAINER_TONY_1, Route107_Text_TonyIntro, Route107_Text_TonyDefeated, Route107_EventScript_TonyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -15,7 +15,7 @@ Route107_EventScript_Tony:: @ 81EE5AC release end -Route107_EventScript_TonyRegisterMatchCallAfterBattle:: @ 81EE5D8 +Route107_EventScript_TonyRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route107_Text_TonyRegister, MSGBOX_DEFAULT @@ -23,32 +23,32 @@ Route107_EventScript_TonyRegisterMatchCallAfterBattle:: @ 81EE5D8 release end -Route107_EventScript_TonyRematch:: @ 81EE5F7 +Route107_EventScript_TonyRematch:: trainerbattle_rematch TRAINER_TONY_1, Route107_Text_TonyRematchIntro, Route107_Text_TonyRematchDefeated msgbox Route107_Text_TonyRematchPostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Denise:: @ 81EE60E +Route107_EventScript_Denise:: trainerbattle_single TRAINER_DENISE, Route107_Text_DeniseIntro, Route107_Text_DeniseDefeated msgbox Route107_Text_DenisePostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Beth:: @ 81EE625 +Route107_EventScript_Beth:: trainerbattle_single TRAINER_BETH, Route107_Text_BethIntro, Route107_Text_BethDefeated msgbox Route107_Text_BethPostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Lisa:: @ 81EE63C +Route107_EventScript_Lisa:: trainerbattle_double TRAINER_LISA_AND_RAY, Route107_Text_LisaIntro, Route107_Text_LisaDefeated, Route107_Text_LisaNotEnoughPokemon msgbox Route107_Text_LisaPostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Ray:: @ 81EE657 +Route107_EventScript_Ray:: trainerbattle_double TRAINER_LISA_AND_RAY, Route107_Text_RayIntro, Route107_Text_RayDefeated, Route107_Text_RayNotEnoughPokemon msgbox Route107_Text_RayPostBattle, MSGBOX_AUTOCLOSE end -Route107_EventScript_Camron:: @ 81EE672 +Route107_EventScript_Camron:: trainerbattle_single TRAINER_CAMRON, Route107_Text_CamronIntro, Route107_Text_CamronDefeated msgbox Route107_Text_CamronPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route108/scripts.inc b/data/maps/Route108/scripts.inc index 57f353bd13c5..866391554565 100644 --- a/data/maps/Route108/scripts.inc +++ b/data/maps/Route108/scripts.inc @@ -1,32 +1,32 @@ -Route108_MapScripts:: @ 81EE689 +Route108_MapScripts:: .byte 0 -Route108_EventScript_Jerome:: @ 81EE68A +Route108_EventScript_Jerome:: trainerbattle_single TRAINER_JEROME, Route108_Text_JeromeIntro, Route108_Text_JeromeDefeated msgbox Route108_Text_JeromePostBattle, MSGBOX_AUTOCLOSE end -Route108_EventScript_Matthew:: @ 81EE6A1 +Route108_EventScript_Matthew:: trainerbattle_single TRAINER_MATTHEW, Route108_Text_MatthewIntro, Route108_Text_MatthewDefeated msgbox Route108_Text_MatthewPostBattle, MSGBOX_AUTOCLOSE end -Route108_EventScript_Tara:: @ 81EE6B8 +Route108_EventScript_Tara:: trainerbattle_single TRAINER_TARA, Route108_Text_TaraIntro, Route108_Text_TaraDefeated msgbox Route108_Text_TaraPostBattle, MSGBOX_AUTOCLOSE end -Route108_EventScript_Missy:: @ 81EE6CF +Route108_EventScript_Missy:: trainerbattle_single TRAINER_MISSY, Route108_Text_MissyIntro, Route108_Text_MissyDefeated msgbox Route108_Text_MissyPostBattle, MSGBOX_AUTOCLOSE end -Route108_EventScript_Carolina:: @ 81EE6E6 +Route108_EventScript_Carolina:: trainerbattle_single TRAINER_CAROLINA, Route108_Text_CarolinaIntro, Route108_Text_CarolinaDefeated msgbox Route108_Text_CarolinaPostBattle, MSGBOX_AUTOCLOSE end -Route108_EventScript_Cory:: @ 81EE6FD +Route108_EventScript_Cory:: trainerbattle_single TRAINER_CORY_1, Route108_Text_CoryIntro, Route108_Text_CoryDefeated, Route108_EventScript_CoryRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -35,7 +35,7 @@ Route108_EventScript_Cory:: @ 81EE6FD release end -Route108_EventScript_CoryRegisterMatchCallAfterBattle:: @ 81EE729 +Route108_EventScript_CoryRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route108_Text_CoryRegister, MSGBOX_DEFAULT @@ -43,7 +43,7 @@ Route108_EventScript_CoryRegisterMatchCallAfterBattle:: @ 81EE729 release end -Route108_EventScript_CoryRematch:: @ 81EE748 +Route108_EventScript_CoryRematch:: trainerbattle_rematch TRAINER_CORY_1, Route108_Text_CoryRematchIntro, Route108_Text_CoryRematchDefeated msgbox Route108_Text_CoryRematchPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index a88e8645914b..ff1ac4ac05a7 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -1,10 +1,10 @@ @ NOTE: Route 109's sail to Dewford script references local IDs from Dewford's map. @ These are labeled in DewfordTown/scripts.inc -Route109_MapScripts:: @ 81EE75F +Route109_MapScripts:: .byte 0 -Route109_EventScript_StartDepartForDewford:: @ 81EE760 +Route109_EventScript_StartDepartForDewford:: call EventScript_BackupMrBrineyLocation setobjectpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0 setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109, 0 @@ -17,25 +17,25 @@ Route109_EventScript_StartDepartForDewford:: @ 81EE760 case DIR_EAST, Route109_EventScript_EnterBoatEast end -Route109_EventScript_EnterBoatSouth:: @ 81EE7A5 +Route109_EventScript_EnterBoatSouth:: applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatSouth waitmovement 0 goto Route109_EventScript_DoSailToDewford end -Route109_EventScript_EnterBoatEast:: @ 81EE7B5 +Route109_EventScript_EnterBoatEast:: applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatEast waitmovement 0 goto Route109_EventScript_DoSailToDewford end -Route109_EventScript_EnterBoatWest:: @ 81EE7C5 +Route109_EventScript_EnterBoatWest:: applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatWest waitmovement 0 goto Route109_EventScript_DoSailToDewford end -Route109_EventScript_DoSailToDewford:: @ 81EE7D5 +Route109_EventScript_DoSailToDewford:: hideobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE109 call Common_EventScript_PlayBrineysBoatMusic applymovement LOCALID_BOAT_R109, Route109_Movement_SailToDewford @@ -65,7 +65,7 @@ Route109_EventScript_DoSailToDewford:: @ 81EE7D5 release end -Route109_Movement_SailToDewford: @ 81EE84F +Route109_Movement_SailToDewford: walk_in_place_fastest_down walk_down walk_down @@ -241,45 +241,45 @@ Route109_Movement_SailToDewford: @ 81EE84F walk_in_place_fastest_down step_end -Route109_Movement_PlayerEnterBoatSouth: @ 81EE8FD +Route109_Movement_PlayerEnterBoatSouth: walk_down walk_down step_end -Route109_Movement_PlayerExitBoat: @ 81EE900 +Route109_Movement_PlayerExitBoat: walk_down walk_down walk_left walk_in_place_fastest_right step_end -Route109_Movement_PlayerEnterBoatEast: @ 81EE905 +Route109_Movement_PlayerEnterBoatEast: walk_right walk_down step_end -Route109_Movement_PlayerEnterBoatWest: @ 81EE908 +Route109_Movement_PlayerEnterBoatWest: walk_left walk_down step_end -Route109_Movement_BrineyEnterBoat: @ 81EE90B +Route109_Movement_BrineyEnterBoat: walk_down step_end -Route109_Movement_BrineyExitBoat: @ 81EE90D +Route109_Movement_BrineyExitBoat: walk_down walk_in_place_fastest_left step_end -Route109_EventScript_MrBriney:: @ 81EE910 +Route109_EventScript_MrBriney:: lock faceplayer goto_if_unset FLAG_DELIVERED_DEVON_GOODS, Route109_EventScript_HaveNotDeliveredDevonGood goto Route109_EventScript_DeliveredDevonGoods end -Route109_EventScript_HaveNotDeliveredDevonGood:: @ 81EE921 +Route109_EventScript_HaveNotDeliveredDevonGood:: message Route109_Text_BrineySailToDewfordQuestion msgbox Route109_Text_BrineySailToDewfordQuestion, MSGBOX_YESNO compare VAR_RESULT, NO @@ -287,7 +287,7 @@ Route109_EventScript_HaveNotDeliveredDevonGood:: @ 81EE921 goto Route109_EventScript_SailToDewford end -Route109_EventScript_DeliveredDevonGoods:: @ 81EE93F +Route109_EventScript_DeliveredDevonGoods:: message Route109_Text_BrineyWhereAreWeBound waitmessage multichoicedefault 21, 8, MULTI_BRINEY_OFF_DEWFORD, 1, FALSE @@ -297,27 +297,27 @@ Route109_EventScript_DeliveredDevonGoods:: @ 81EE93F case MULTI_B_PRESSED, Route109_EventScript_ChoseNotToSail end -Route109_EventScript_SailToDewford:: @ 81EE972 +Route109_EventScript_SailToDewford:: msgbox Route109_Text_BrineyDewfordItIs, MSGBOX_DEFAULT closemessage goto Route109_EventScript_StartDepartForDewford end -Route109_EventScript_StayHere:: @ 81EE981 +Route109_EventScript_StayHere:: msgbox Route109_Text_BrineyDeliverDevonGoods, MSGBOX_DEFAULT release end -Route109_EventScript_ChoseNotToSail:: @ 81EE98B +Route109_EventScript_ChoseNotToSail:: msgbox Route109_Text_BrineyTellMeWhenYouNeedToSail, MSGBOX_DEFAULT release end -Route109_EventScript_SeashoreHouseGirl:: @ 81EE995 +Route109_EventScript_SeashoreHouseGirl:: msgbox Route109_Text_ChillAtMyPapasSpot, MSGBOX_NPC end -Route109_EventScript_SandCastleBoy:: @ 81EE99E +Route109_EventScript_SandCastleBoy:: lock faceplayer msgbox Route109_Text_SandCastleTakingLongTime, MSGBOX_DEFAULT @@ -327,7 +327,7 @@ Route109_EventScript_SandCastleBoy:: @ 81EE99E release end -Route109_EventScript_SoftSandGirl:: @ 81EE9B5 +Route109_EventScript_SoftSandGirl:: lock faceplayer special GetPlayerBigGuyGirlString @@ -343,22 +343,22 @@ Route109_EventScript_SoftSandGirl:: @ 81EE9B5 release end -Route109_EventScript_AlreadyReceivedSoftSand:: @ 81EE9F2 +Route109_EventScript_AlreadyReceivedSoftSand:: msgbox Route109_Text_WereGoingToMakeBigCastle, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end -Route109_EventScript_Woman:: @ 81EEA06 +Route109_EventScript_Woman:: msgbox Route109_Text_LittleKidsDartAround, MSGBOX_NPC end -Route109_EventScript_OldMan:: @ 81EEA0F +Route109_EventScript_OldMan:: msgbox Route109_Text_ZigzagoonPicksUpLitter, MSGBOX_NPC end -Route109_EventScript_Zigzagoon:: @ 81EEA18 +Route109_EventScript_Zigzagoon:: lock faceplayer waitse @@ -368,35 +368,35 @@ Route109_EventScript_Zigzagoon:: @ 81EEA18 release end -Route109_EventScript_SeashoreHouseSign:: @ 81EEA2B +Route109_EventScript_SeashoreHouseSign:: msgbox Route109_Text_SeashoreHouseSign, MSGBOX_SIGN end -Route109_EventScript_TrainerTipsSign:: @ 81EEA34 +Route109_EventScript_TrainerTipsSign:: msgbox Route109_Text_TrainerTipsSign, MSGBOX_SIGN end -Route109_EventScript_David:: @ 81EEA3D +Route109_EventScript_David:: trainerbattle_single TRAINER_DAVID, Route109_Text_DavidIntro, Route109_Text_DavidDefeated msgbox Route109_Text_DavidPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Alice:: @ 81EEA54 +Route109_EventScript_Alice:: trainerbattle_single TRAINER_ALICE, Route109_Text_AliceIntro, Route109_Text_AliceDefeated msgbox Route109_Text_AlicePostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Huey:: @ 81EEA6B +Route109_EventScript_Huey:: trainerbattle_single TRAINER_HUEY, Route109_Text_HueyIntro, Route109_Text_HueyDefeated msgbox Route109_Text_HueyPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Edmond:: @ 81EEA82 +Route109_EventScript_Edmond:: trainerbattle_single TRAINER_EDMOND, Route109_Text_EdmondIntro, Route109_Text_EdmondDefeated msgbox Route109_Text_EdmondPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Ricky:: @ 81EEA99 +Route109_EventScript_Ricky:: trainerbattle_single TRAINER_RICKY_1, Route109_Text_RickyIntro, Route109_Text_RickyDefeated, Route109_EventScript_RickyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -405,7 +405,7 @@ Route109_EventScript_Ricky:: @ 81EEA99 release end -Route109_EventScript_RickyRegisterMatchCallAfterBattle:: @ 81EEAC5 +Route109_EventScript_RickyRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route109_Text_RickyRegister, MSGBOX_DEFAULT @@ -413,12 +413,12 @@ Route109_EventScript_RickyRegisterMatchCallAfterBattle:: @ 81EEAC5 release end -Route109_EventScript_RickyRematch:: @ 81EEAE4 +Route109_EventScript_RickyRematch:: trainerbattle_rematch TRAINER_RICKY_1, Route109_Text_RickyRematchIntro, Route109_Text_RickyRematchDefeated msgbox Route109_Text_RickyRematchPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Lola:: @ 81EEAFB +Route109_EventScript_Lola:: trainerbattle_single TRAINER_LOLA_1, Route109_Text_LolaIntro, Route109_Text_LolaDefeated, Route109_EventScript_LolaRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -427,7 +427,7 @@ Route109_EventScript_Lola:: @ 81EEAFB release end -Route109_EventScript_LolaRegisterMatchCallAfterBattle:: @ 81EEB27 +Route109_EventScript_LolaRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route109_Text_LolaRegister, MSGBOX_DEFAULT @@ -435,115 +435,115 @@ Route109_EventScript_LolaRegisterMatchCallAfterBattle:: @ 81EEB27 release end -Route109_EventScript_LolaRematch:: @ 81EEB46 +Route109_EventScript_LolaRematch:: trainerbattle_rematch TRAINER_LOLA_1, Route109_Text_LolaRematchIntro, Route109_Text_LolaRematchDefeated msgbox Route109_Text_LolaRematchPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Austina:: @ 81EEB5D +Route109_EventScript_Austina:: trainerbattle_single TRAINER_AUSTINA, Route109_Text_AustinaIntro, Route109_Text_AustinaDefeated msgbox Route109_Text_AustinaPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Gwen:: @ 81EEB74 +Route109_EventScript_Gwen:: trainerbattle_single TRAINER_GWEN, Route109_Text_GwenIntro, Route109_Text_GwenDefeated msgbox Route109_Text_GwenPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Carter:: @ 81EEB8B +Route109_EventScript_Carter:: trainerbattle_single TRAINER_CARTER, Route109_Text_CarterIntro, Route109_Text_CarterDefeated msgbox Route109_Text_CarterPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Paul:: @ 81EEBA2 +Route109_EventScript_Paul:: trainerbattle_double TRAINER_MEL_AND_PAUL, Route109_Text_PaulIntro, Route109_Text_PaulDefeated, Route109_Text_PaulNotEnoughPokemon msgbox Route109_Text_PaulPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Mel:: @ 81EEBBD +Route109_EventScript_Mel:: trainerbattle_double TRAINER_MEL_AND_PAUL, Route109_Text_MelIntro, Route109_Text_MelDefeated, Route109_Text_MelNotEnoughPokemon msgbox Route109_Text_MelPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Chandler:: @ 81EEBD8 +Route109_EventScript_Chandler:: trainerbattle_single TRAINER_CHANDLER, Route109_Text_ChandlerIntro, Route109_Text_ChandlerDefeated msgbox Route109_Text_ChandlerPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Hailey:: @ 81EEBEF +Route109_EventScript_Hailey:: trainerbattle_single TRAINER_HAILEY, Route109_Text_HaileyIntro, Route109_Text_HaileyDefeated msgbox Route109_Text_HaileyPostBattle, MSGBOX_AUTOCLOSE end -Route109_EventScript_Elijah:: @ 81EEC06 +Route109_EventScript_Elijah:: trainerbattle_single TRAINER_ELIJAH, Route109_Text_ElijahIntro, Route109_Text_ElijahDefeated msgbox Route109_Text_ElijahPostBattle, MSGBOX_AUTOCLOSE end -DewfordTown_Text_BrineyLandedInSlateportDeliverGoods: @ 81EEC1D +DewfordTown_Text_BrineyLandedInSlateportDeliverGoods: .string "MR. BRINEY: Ahoy!\n" .string "We've made land in SLATEPORT!\p" .string "I suppose you're going to visit CAPT.\n" .string "STERN and deliver the DEVON GOODS?$" -Route109_Text_BrineySailToDewfordQuestion: @ 81EEC96 +Route109_Text_BrineySailToDewfordQuestion: .string "MR. BRINEY: I thought you're supposed\n" .string "to deliver the DEVON GOODS.\p" .string "Would you like to sail back to\n" .string "DEWFORD, then?$" -Route109_Text_BrineyDewfordItIs: @ 81EED06 +Route109_Text_BrineyDewfordItIs: .string "MR. BRINEY: DEWFORD it is, then!\p" .string "Anchors aweigh!\n" .string "PEEKO, we're setting sail, my darling!$" -Route109_Text_BrineyDeliverDevonGoods: @ 81EED5E +Route109_Text_BrineyDeliverDevonGoods: .string "MR. BRINEY: Then you go on and deliver\n" .string "the DEVON GOODS. I'll be waiting.$" -DewfordTown_Text_BrineyLandedInSlateport: @ 81EEDA7 +DewfordTown_Text_BrineyLandedInSlateport: .string "MR. BRINEY: Ahoy! We've made land in\n" .string "SLATEPORT!\p" .string "You just go on and tell me whenever\n" .string "you want to set sail again!$" -Route109_Text_BrineyWhereAreWeBound: @ 81EEE17 +Route109_Text_BrineyWhereAreWeBound: .string "MR. BRINEY: Ahoy!\n" .string "For you, I'll go out to sea anytime!\p" .string "Now, my friend, where are we bound?$" -Route109_Text_BrineyTellMeWhenYouNeedToSail: @ 81EEE72 +Route109_Text_BrineyTellMeWhenYouNeedToSail: .string "MR. BRINEY: You just tell me whenever\n" .string "you need to set sail again!$" -Route109_Text_ChillAtMyPapasSpot: @ 81EEEB4 +Route109_Text_ChillAtMyPapasSpot: .string "Yo, TRAINERS!\n" .string "Whether you're hot to trot,\l" .string "or cool cat not,\l" .string "chill at my papa's spot!$" -Route109_Text_LittleKidsDartAround: @ 81EEF08 +Route109_Text_LittleKidsDartAround: .string "Little kids can dart around so quickly…\p" .string "You don't dare take your eyes off them\n" .string "for an instant. It's very taxing.\p" .string "Mine are with my POKéMON, so they\n" .string "should be okay, but…$" -Route109_Text_SandCastleTakingLongTime: @ 81EEFB0 +Route109_Text_SandCastleTakingLongTime: .string "Our sand castle's taking a long time\n" .string "to make.$" -Route109_Text_YouCanHaveThis: @ 81EEFDE +Route109_Text_YouCanHaveThis: .string "You can have this!$" -Route109_Text_WereGoingToMakeBigCastle: @ 81EEFF1 +Route109_Text_WereGoingToMakeBigCastle: .string "We're going to get all the sand from\n" .string "the beach and make a big castle!\p" .string "And then we're going to be a king and\n" .string "queen.\p" .string "We'll let you be a servant.$" -Route109_Text_ZigzagoonPicksUpLitter: @ 81EF080 +Route109_Text_ZigzagoonPicksUpLitter: .string "The water around these parts is clean.\p" .string "But, I get my ZIGZAGOON to pick up\n" .string "litter from the shoreline at times.\p" @@ -552,15 +552,15 @@ Route109_Text_ZigzagoonPicksUpLitter: @ 81EF080 .string "If we pollute the sea, it all comes\n" .string "back to haunt us eventually.$" -Route109_Text_ZigzagoonCry: @ 81EF173 +Route109_Text_ZigzagoonCry: .string "ZIGZAGOON: Guguu?$" -Route109_Text_SeashoreHouseSign: @ 81EF185 +Route109_Text_SeashoreHouseSign: .string "SEASHORE HOUSE\p" .string "“May hot battles rage on hot sands!\n" .string "The place for hot TRAINERS!”$" -Route109_Text_TrainerTipsSign: @ 81EF1D5 +Route109_Text_TrainerTipsSign: .string "TRAINER TIPS\p" .string "POKéMON at the same level may not\n" .string "always have identical stats.\p" diff --git a/data/maps/Route109_SeashoreHouse/scripts.inc b/data/maps/Route109_SeashoreHouse/scripts.inc index 9334772d6b9c..c4cfd1576e5e 100644 --- a/data/maps/Route109_SeashoreHouse/scripts.inc +++ b/data/maps/Route109_SeashoreHouse/scripts.inc @@ -1,12 +1,12 @@ -Route109_SeashoreHouse_MapScripts:: @ 82693F4 +Route109_SeashoreHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route109_SeashoreHouse_OnTransition .byte 0 -Route109_SeashoreHouse_OnTransition: @ 82693FA +Route109_SeashoreHouse_OnTransition: setflag FLAG_LANDMARK_SEASHORE_HOUSE end -Route109_SeashoreHouse_EventScript_Owner:: @ 82693FE +Route109_SeashoreHouse_EventScript_Owner:: lock faceplayer goto_if_set FLAG_RECEIVED_6_SODA_POP, Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop @@ -17,12 +17,12 @@ Route109_SeashoreHouse_EventScript_Owner:: @ 82693FE release end -Route109_SeashoreHouse_EventScript_AlreadyGaveIntroduction:: @ 8269428 +Route109_SeashoreHouse_EventScript_AlreadyGaveIntroduction:: msgbox Route109_SeashoreHouse_Text_ShowMeSomeHotMatches, MSGBOX_DEFAULT release end -Route109_SeashoreHouse_EventScript_DefeatedTrainers:: @ 8269432 +Route109_SeashoreHouse_EventScript_DefeatedTrainers:: msgbox Route109_SeashoreHouse_Text_TakeTheseSodaPopBottles, MSGBOX_DEFAULT giveitem ITEM_SODA_POP, 6 compare VAR_RESULT, FALSE @@ -31,12 +31,12 @@ Route109_SeashoreHouse_EventScript_DefeatedTrainers:: @ 8269432 release end -Route109_SeashoreHouse_EventScript_BagFull:: @ 8269456 +Route109_SeashoreHouse_EventScript_BagFull:: msgbox Route109_SeashoreHouse_Text_BagFull, MSGBOX_DEFAULT release end -Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: @ 8269460 +Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: showmoneybox 0, 0, 0 msgbox Route109_SeashoreHouse_Text_WantToBuySodaPop, MSGBOX_YESNO compare VAR_RESULT, YES @@ -46,7 +46,7 @@ Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: @ 8269460 release end -Route109_SeashoreHouse_EventScript_BuySodaPop:: @ 8269484 +Route109_SeashoreHouse_EventScript_BuySodaPop:: checkmoney 300, 0 compare VAR_RESULT, FALSE goto_if_eq Route109_SeashoreHouse_EventScript_NotEnoughMoney @@ -61,34 +61,34 @@ Route109_SeashoreHouse_EventScript_BuySodaPop:: @ 8269484 release end -Route109_SeashoreHouse_EventScript_NotEnoughMoney:: @ 82694C8 +Route109_SeashoreHouse_EventScript_NotEnoughMoney:: msgbox Route109_SeashoreHouse_Text_NotEnoughMoney, MSGBOX_DEFAULT hidemoneybox release end -Route109_SeashoreHouse_EventScript_NotEnoughSpace:: @ 82694D5 +Route109_SeashoreHouse_EventScript_NotEnoughSpace:: msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT hidemoneybox release end -Route109_SeashoreHouse_EventScript_Dwayne:: @ 82694E2 +Route109_SeashoreHouse_EventScript_Dwayne:: trainerbattle_single TRAINER_DWAYNE, Route109_SeashoreHouse_Text_DwayneIntro, Route109_SeashoreHouse_Text_DwayneDefeated, Route109_SeashoreHouse_EventScript_CheckTrainersCompletion msgbox Route109_SeashoreHouse_Text_DwaynePostBattle, MSGBOX_AUTOCLOSE end -Route109_SeashoreHouse_EventScript_Johanna:: @ 82694FD +Route109_SeashoreHouse_EventScript_Johanna:: trainerbattle_single TRAINER_JOHANNA, Route109_SeashoreHouse_Text_JohannaIntro, Route109_SeashoreHouse_Text_JohannaDefeated, Route109_SeashoreHouse_EventScript_CheckTrainersCompletion msgbox Route109_SeashoreHouse_Text_JohannaPostBattle, MSGBOX_AUTOCLOSE end -Route109_SeashoreHouse_EventScript_Simon:: @ 8269518 +Route109_SeashoreHouse_EventScript_Simon:: trainerbattle_single TRAINER_SIMON, Route109_SeashoreHouse_Text_SimonIntro, Route109_SeashoreHouse_Text_SimonDefeated, Route109_SeashoreHouse_EventScript_CheckTrainersCompletion msgbox Route109_SeashoreHouse_Text_SimonPostBattle, MSGBOX_AUTOCLOSE end -Route109_SeashoreHouse_EventScript_CheckTrainersCompletion:: @ 8269533 +Route109_SeashoreHouse_EventScript_CheckTrainersCompletion:: goto_if_not_defeated TRAINER_DWAYNE, Route109_SeashoreHouse_EventScript_TrainersNotCompleted goto_if_not_defeated TRAINER_JOHANNA, Route109_SeashoreHouse_EventScript_TrainersNotCompleted goto_if_not_defeated TRAINER_SIMON, Route109_SeashoreHouse_EventScript_TrainersNotCompleted @@ -96,11 +96,11 @@ Route109_SeashoreHouse_EventScript_CheckTrainersCompletion:: @ 8269533 release end -Route109_SeashoreHouse_EventScript_TrainersNotCompleted:: @ 8269553 +Route109_SeashoreHouse_EventScript_TrainersNotCompleted:: release end -Route109_SeashoreHouse_Text_SeashoreHouseIntro: @ 8269555 +Route109_SeashoreHouse_Text_SeashoreHouseIntro: .string "I'm the owner of the SEASHORE HOUSE.\n" .string "But you can call me MR. SEA!\p" .string "What I love above all is to see hot\n" @@ -109,12 +109,12 @@ Route109_SeashoreHouse_Text_SeashoreHouseIntro: @ 8269555 .string "If you can defeat all the TRAINERS\n" .string "here, I'll reward your efforts.$" -Route109_SeashoreHouse_Text_ShowMeSomeHotMatches: @ 8269635 +Route109_SeashoreHouse_Text_ShowMeSomeHotMatches: .string "Show me some hot matches!\p" .string "I run this SEASHORE HOUSE just for\n" .string "that reason alone!$" -Route109_SeashoreHouse_Text_TakeTheseSodaPopBottles: @ 8269685 +Route109_SeashoreHouse_Text_TakeTheseSodaPopBottles: .string "You're scorching hot!\n" .string "Those battles blazed!\l" .string "I'm more than just satisfied!\p" @@ -122,59 +122,59 @@ Route109_SeashoreHouse_Text_TakeTheseSodaPopBottles: @ 8269685 .string "streak, I want you to take these.\p" .string "It's half a dozen bottles of SODA POP!$" -Route109_SeashoreHouse_Text_BagFull: @ 826973A +Route109_SeashoreHouse_Text_BagFull: .string "Oh, but hey, your BAG's jammed full.\n" .string "I'll hang on to these for you.$" -Route109_SeashoreHouse_Text_WantToBuySodaPop: @ 826977E +Route109_SeashoreHouse_Text_WantToBuySodaPop: .string "Want to buy some SODA POP?\n" .string "POKéMON love it!\p" .string "Just ¥300 a bottle!\n" .string "Buy some!$" -Route109_SeashoreHouse_Text_HereYouGo: @ 82697C8 +Route109_SeashoreHouse_Text_HereYouGo: .string "Here you go!$" -Route109_SeashoreHouse_Text_NotEnoughMoney: @ 82697D5 +Route109_SeashoreHouse_Text_NotEnoughMoney: .string "You don't have the money.$" -Route109_SeashoreHouse_Text_ThatsTooBad: @ 82697EF +Route109_SeashoreHouse_Text_ThatsTooBad: .string "No?\n" .string "That's too bad.$" -Route109_SeashoreHouse_Text_DwayneIntro: @ 8269803 +Route109_SeashoreHouse_Text_DwayneIntro: .string "If you're looking for a battle in the\n" .string "SEASHORE HOUSE, you'll find no\l" .string "hotter TRAINER than me, matey!$" -Route109_SeashoreHouse_Text_DwayneDefeated: @ 8269867 +Route109_SeashoreHouse_Text_DwayneDefeated: .string "That was a hot battle!\n" .string "I can accept that loss, matey!$" -Route109_SeashoreHouse_Text_DwaynePostBattle: @ 826989D +Route109_SeashoreHouse_Text_DwaynePostBattle: .string "Whenever I'm in SLATEPORT, I enjoy\n" .string "hot battles and ice-cold SODA POP!$" -Route109_SeashoreHouse_Text_JohannaIntro: @ 82698E3 +Route109_SeashoreHouse_Text_JohannaIntro: .string "Boring battles aren't worth the effort.\p" .string "Fiery hot battles are what toughen up\n" .string "TRAINERS and POKéMON!$" -Route109_SeashoreHouse_Text_JohannaDefeated: @ 8269947 +Route109_SeashoreHouse_Text_JohannaDefeated: .string "That's hot!$" -Route109_SeashoreHouse_Text_JohannaPostBattle: @ 8269953 +Route109_SeashoreHouse_Text_JohannaPostBattle: .string "Whew, I'm all thirsty.\n" .string "Maybe I'll have a SODA POP.$" -Route109_SeashoreHouse_Text_SimonIntro: @ 8269986 +Route109_SeashoreHouse_Text_SimonIntro: .string "I'm going to show you how great\n" .string "my POKéMON are, but don't cry!$" -Route109_SeashoreHouse_Text_SimonDefeated: @ 82699C5 +Route109_SeashoreHouse_Text_SimonDefeated: .string "…I lost, but I won't cry…$" -Route109_SeashoreHouse_Text_SimonPostBattle: @ 82699DF +Route109_SeashoreHouse_Text_SimonPostBattle: .string "If one of my POKéMON knew the move\n" .string "for carrying me across water on its\l" .string "back, I could get rid of this inner tube.$" diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc index f7be3fb9e7ef..e9caf68adeb9 100644 --- a/data/maps/Route110/scripts.inc +++ b/data/maps/Route110/scripts.inc @@ -3,37 +3,37 @@ .set LOCALID_RIVAL_ON_BIKE, 29 .set LOCALID_BIRCH, 36 -Route110_MapScripts:: @ 81EF269 +Route110_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route110_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route110_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_OnFrame .byte 0 -Route110_OnResume: @ 81EF279 +Route110_OnResume: special UpdateCyclingRoadState end -Route110_OnTransition: @ 81EF27D +Route110_OnTransition: call Common_EventScript_SetupRivalGfxId call Common_EventScript_SetupRivalOnBikeGfxId compare VAR_CYCLING_CHALLENGE_STATE, 1 call_if_eq Route110_EventScript_SaveCyclingMusic end -Route110_EventScript_SaveCyclingMusic:: @ 81EF293 +Route110_EventScript_SaveCyclingMusic:: savebgm MUS_CYCLING return -Route110_OnFrame: @ 81EF297 +Route110_OnFrame: map_script_2 VAR_CYCLING_CHALLENGE_STATE, 1, Route110_EventScript_BeginCylcingRoadChallenge .2byte 0 -Route110_EventScript_BeginCylcingRoadChallenge:: @ 81EF2A1 +Route110_EventScript_BeginCylcingRoadChallenge:: special Special_BeginCyclingRoadChallenge setvar VAR_CYCLING_CHALLENGE_STATE, 2 return -Route110_EventScript_AquaGrunt1:: @ 81EF2AA +Route110_EventScript_AquaGrunt1:: lock faceplayer msgbox Route110_Text_WeCantTalkAboutAquaActivities, MSGBOX_DEFAULT @@ -42,7 +42,7 @@ Route110_EventScript_AquaGrunt1:: @ 81EF2AA release end -Route110_EventScript_AquaGrunt2:: @ 81EF2C0 +Route110_EventScript_AquaGrunt2:: lock faceplayer msgbox Route110_Text_KickUpARuckus, MSGBOX_DEFAULT @@ -51,7 +51,7 @@ Route110_EventScript_AquaGrunt2:: @ 81EF2C0 release end -Route110_EventScript_AquaGrunt3:: @ 81EF2D6 +Route110_EventScript_AquaGrunt3:: lock faceplayer msgbox Route110_Text_MyFirstJobInAqua, MSGBOX_DEFAULT @@ -60,7 +60,7 @@ Route110_EventScript_AquaGrunt3:: @ 81EF2D6 release end -Route110_EventScript_AquaGrunt4:: @ 81EF2EC +Route110_EventScript_AquaGrunt4:: lock faceplayer msgbox Route110_Text_AquaActionsBringSmiles, MSGBOX_DEFAULT @@ -69,71 +69,71 @@ Route110_EventScript_AquaGrunt4:: @ 81EF2EC release end -Route110_EventScript_Boy1:: @ 81EF302 +Route110_EventScript_Boy1:: msgbox Route110_Text_RideBikeAtFullSpeed, MSGBOX_NPC end -Route110_EventScript_CyclingGirl1:: @ 81EF30B +Route110_EventScript_CyclingGirl1:: msgbox Route110_Text_HairStreamsBehindMe, MSGBOX_NPC end -Route110_EventScript_CyclingGuy1:: @ 81EF314 +Route110_EventScript_CyclingGuy1:: msgbox Route110_Text_YouGotBikeFromRydel, MSGBOX_NPC end -Route110_EventScript_OldMan:: @ 81EF31D +Route110_EventScript_OldMan:: msgbox Route110_Text_TwoRoads, MSGBOX_NPC end -Route110_EventScript_OldWoman:: @ 81EF326 +Route110_EventScript_OldWoman:: msgbox Route110_Text_WalkOnTheLowRoad, MSGBOX_NPC end -Route110_EventScript_CyclingGuy2:: @ 81EF32F +Route110_EventScript_CyclingGuy2:: msgbox Route110_Text_BikeTechniques, MSGBOX_NPC end -Route110_EventScript_Boy2:: @ 81EF338 +Route110_EventScript_Boy2:: msgbox Route110_Text_WhichShouldIChoose, MSGBOX_NPC end -Route110_EventScript_SlateportCitySign:: @ 81EF341 +Route110_EventScript_SlateportCitySign:: msgbox Route110_Text_SlateportCitySign, MSGBOX_SIGN end -Route110_EventScript_CyclingRoadSign:: @ 81EF34A +Route110_EventScript_CyclingRoadSign:: msgbox Route110_Text_CyclingRoadSign, MSGBOX_SIGN end -Route110_EventScript_VandalizedSign:: @ 81EF353 +Route110_EventScript_VandalizedSign:: msgbox Route110_Text_AquaWasHere, MSGBOX_SIGN end -Route110_EventScript_Route103Sign:: @ 81EF35C +Route110_EventScript_Route103Sign:: msgbox Route110_Text_Route103Sign, MSGBOX_SIGN end -Route110_EventScript_SeasideParkingSign:: @ 81EF365 +Route110_EventScript_SeasideParkingSign:: msgbox Route110_Text_SeasideParkingSign, MSGBOX_SIGN end -Route110_EventScript_MauvilleCitySign:: @ 81EF36E +Route110_EventScript_MauvilleCitySign:: msgbox Route110_Text_MauvilleCitySign, MSGBOX_SIGN end -Route110_EventScript_TrainerTipsPrlzSleep:: @ 81EF377 +Route110_EventScript_TrainerTipsPrlzSleep:: msgbox Route110_Text_TrainerTipsPrlzSleep, MSGBOX_SIGN end -Route110_EventScript_TrainerTipsRegisterItems:: @ 81EF380 +Route110_EventScript_TrainerTipsRegisterItems:: msgbox Route110_Text_TrainerTipsRegisterItems, MSGBOX_SIGN end -Route110_EventScript_TrickHouseSign:: @ 81EF389 +Route110_EventScript_TrickHouseSign:: msgbox Route110_Text_TrickHouseSign, MSGBOX_SIGN end -Route110_EventScript_CyclingRoadResultsSign:: @ 81EF392 +Route110_EventScript_CyclingRoadResultsSign:: lockall specialvar VAR_RESULT, GetRecordedCyclingRoadResults compare VAR_RESULT, FALSE @@ -142,12 +142,12 @@ Route110_EventScript_CyclingRoadResultsSign:: @ 81EF392 releaseall end -Route110_EventScript_NoRecordSet:: @ 81EF3AD +Route110_EventScript_NoRecordSet:: msgbox Route110_Text_ThereIsNoRecord, MSGBOX_DEFAULT releaseall end -Route110_EventScript_ChallengeGuy:: @ 81EF3B7 +Route110_EventScript_ChallengeGuy:: lock faceplayer specialvar VAR_RESULT, GetPlayerAvatarBike @@ -159,27 +159,27 @@ Route110_EventScript_ChallengeGuy:: @ 81EF3B7 release end -Route110_EventScript_PlayerNotRidingBike:: @ 81EF3DE +Route110_EventScript_PlayerNotRidingBike:: msgbox Route110_Text_RatedForNumberOfCollisions, MSGBOX_DEFAULT release end -Route110_EventScript_PlayerRidingAcroBike:: @ 81EF3E8 +Route110_EventScript_PlayerRidingAcroBike:: msgbox Route110_Text_AcroBikesDoNotQualify, MSGBOX_DEFAULT release end -Route110_EventScript_Edward:: @ 81EF3F2 +Route110_EventScript_Edward:: trainerbattle_single TRAINER_EDWARD, Route110_Text_EdwardIntro, Route110_Text_EdwardDefeated msgbox Route110_Text_EdwardPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Jaclyn:: @ 81EF409 +Route110_EventScript_Jaclyn:: trainerbattle_single TRAINER_JACLYN, Route110_Text_JaclynIntro, Route110_Text_JaclynDefeated msgbox Route110_Text_JaclynPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Edwin:: @ 81EF420 +Route110_EventScript_Edwin:: trainerbattle_single TRAINER_EDWIN_1, Route110_Text_EdwinIntro, Route110_Text_EdwinDefeated, Route110_EventScript_EdwinRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -188,7 +188,7 @@ Route110_EventScript_Edwin:: @ 81EF420 release end -Route110_EventScript_EdwinRegisterMatchCallAfterBattle:: @ 81EF44C +Route110_EventScript_EdwinRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route110_Text_EdwinRegister, MSGBOX_DEFAULT @@ -196,27 +196,27 @@ Route110_EventScript_EdwinRegisterMatchCallAfterBattle:: @ 81EF44C release end -Route110_EventScript_EdwinRematch:: @ 81EF46B +Route110_EventScript_EdwinRematch:: trainerbattle_rematch TRAINER_EDWIN_1, Route110_Text_EdwinRematchIntro, Route110_Text_EdwinRematchDefeated msgbox Route110_Text_EdwinRematchPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Dale:: @ 81EF482 +Route110_EventScript_Dale:: trainerbattle_single TRAINER_DALE, Route110_Text_DaleIntro, Route110_Text_DaleDefeated msgbox Route110_Text_DalePostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Jacob:: @ 81EF499 +Route110_EventScript_Jacob:: trainerbattle_single TRAINER_JACOB, Route110_Text_JacobIntro, Route110_Text_JacobDefeated msgbox Route110_Text_JacobPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Anthony:: @ 81EF4B0 +Route110_EventScript_Anthony:: trainerbattle_single TRAINER_ANTHONY, Route110_Text_AnthonyIntro, Route110_Text_AnthonyDefeated msgbox Route110_Text_AnthonyPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Benjamin:: @ 81EF4C7 +Route110_EventScript_Benjamin:: trainerbattle_single TRAINER_BENJAMIN_1, Route110_Text_BenjaminIntro, Route110_Text_BenjaminDefeated, Route110_EventScript_BenjaminRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -225,7 +225,7 @@ Route110_EventScript_Benjamin:: @ 81EF4C7 release end -Route110_EventScript_BenjaminRegisterMatchCallAfterBattle:: @ 81EF4F3 +Route110_EventScript_BenjaminRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route110_Text_BenjaminRegister, MSGBOX_DEFAULT @@ -233,17 +233,17 @@ Route110_EventScript_BenjaminRegisterMatchCallAfterBattle:: @ 81EF4F3 release end -Route110_EventScript_BenjaminRematch:: @ 81EF512 +Route110_EventScript_BenjaminRematch:: trainerbattle_rematch TRAINER_BENJAMIN_1, Route110_Text_BenjaminRematchIntro, Route110_Text_BenjaminRematchDefeated msgbox Route110_Text_BenjaminRematchPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Jasmine:: @ 81EF529 +Route110_EventScript_Jasmine:: trainerbattle_single TRAINER_JASMINE, Route110_Text_JasmineIntro, Route110_Text_JasmineDefeated msgbox Route110_Text_JasminePostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Abigail:: @ 81EF540 +Route110_EventScript_Abigail:: trainerbattle_single TRAINER_ABIGAIL_1, Route110_Text_AbigailIntro, Route110_Text_AbigailDefeated, Route110_EventScript_AbigailRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -252,7 +252,7 @@ Route110_EventScript_Abigail:: @ 81EF540 release end -Route110_EventScript_AbigailRegisterMatchCallAfterBattle:: @ 81EF56C +Route110_EventScript_AbigailRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route110_Text_AbigailRegister, MSGBOX_DEFAULT @@ -260,12 +260,12 @@ Route110_EventScript_AbigailRegisterMatchCallAfterBattle:: @ 81EF56C release end -Route110_EventScript_AbigailRematch:: @ 81EF58B +Route110_EventScript_AbigailRematch:: trainerbattle_rematch TRAINER_ABIGAIL_1, Route110_Text_AbigailRematchIntro, Route110_Text_AbigailRematchDefeated msgbox Route110_Text_AbigailRematchPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Isabel:: @ 81EF5A2 +Route110_EventScript_Isabel:: trainerbattle_single TRAINER_ISABEL_1, Route110_Text_IsabelIntro, Route110_Text_IsabelDefeated, Route110_EventScript_IsabelRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -274,7 +274,7 @@ Route110_EventScript_Isabel:: @ 81EF5A2 release end -Route110_EventScript_IsabelRegisterMatchCallAfterBattle:: @ 81EF5CE +Route110_EventScript_IsabelRegisterMatchCallAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route110_Text_IsabelRegister, MSGBOX_DEFAULT @@ -282,35 +282,35 @@ Route110_EventScript_IsabelRegisterMatchCallAfterBattle:: @ 81EF5CE release end -Route110_EventScript_IsabelRematch:: @ 81EF5ED +Route110_EventScript_IsabelRematch:: trainerbattle_rematch TRAINER_ISABEL_1, Route110_Text_IsabelRematchIntro, Route110_Text_IsabelRematchDefeated msgbox Route110_Text_IsabelRematchPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Timmy:: @ 81EF604 +Route110_EventScript_Timmy:: trainerbattle_single TRAINER_TIMMY, Route110_Text_TimmyIntro, Route110_Text_TimmyDefeated msgbox Route110_Text_TimmyPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Unused:: @ 81EF61B +Route110_EventScript_Unused:: end -Route110_EventScript_Kaleb:: @ 81EF61C +Route110_EventScript_Kaleb:: trainerbattle_single TRAINER_KALEB, Route110_Text_KalebIntro, Route110_Text_KalebDefeated msgbox Route110_Text_KalebPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Joseph:: @ 81EF633 +Route110_EventScript_Joseph:: trainerbattle_single TRAINER_JOSEPH, Route110_Text_JosephIntro, Route110_Text_JosephDefeated msgbox Route110_Text_JosephPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_Alyssa:: @ 81EF64A +Route110_EventScript_Alyssa:: trainerbattle_single TRAINER_ALYSSA, Route110_Text_AlyssaIntro, Route110_Text_AlyssaDefeated msgbox Route110_Text_AlyssaPostBattle, MSGBOX_AUTOCLOSE end -Route110_EventScript_CyclingChallengeEnd:: @ 81EF661 +Route110_EventScript_CyclingChallengeEnd:: lockall applymovement LOCALID_CHALLENGE_BIKER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 @@ -318,7 +318,7 @@ Route110_EventScript_CyclingChallengeEnd:: @ 81EF661 releaseall end -Route110_EventScript_CyclingChallengeResults:: @ 81EF673 +Route110_EventScript_CyclingChallengeResults:: special FinishCyclingRoadChallenge msgbox Route110_Text_CyclingChallengeResultSummary, MSGBOX_DEFAULT switch VAR_RESULT @@ -335,53 +335,53 @@ Route110_EventScript_CyclingChallengeResults:: @ 81EF673 case 0, Route110_EventScript_ChallengeReactionWorst end -Route110_EventScript_ChallengeReactionBest:: @ 81EF6FD +Route110_EventScript_ChallengeReactionBest:: msgbox Route110_Text_ChallengeReactionBest, MSGBOX_DEFAULT goto Route110_EventScript_EndChallenge end -Route110_EventScript_ChallengeReactionGood:: @ 81EF70B +Route110_EventScript_ChallengeReactionGood:: msgbox Route110_Text_ChallengeReactionGood, MSGBOX_DEFAULT goto Route110_EventScript_EndChallenge end -Route110_EventScript_ChallengeReactionOk:: @ 81EF719 +Route110_EventScript_ChallengeReactionOk:: msgbox Route110_Text_ChallengeReactionOk, MSGBOX_DEFAULT goto Route110_EventScript_EndChallenge end -Route110_EventScript_ChallengeReactionBad:: @ 81EF727 +Route110_EventScript_ChallengeReactionBad:: msgbox Route110_Text_ChallengeReactionBad, MSGBOX_DEFAULT goto Route110_EventScript_EndChallenge end -Route110_EventScript_ChallengeReactionWorst:: @ 81EF735 +Route110_EventScript_ChallengeReactionWorst:: msgbox Route110_Text_ChallengeReactionWorst, MSGBOX_DEFAULT goto Route110_EventScript_EndChallenge end -Route110_EventScript_EndChallenge:: @ 81EF743 +Route110_EventScript_EndChallenge:: setvar VAR_CYCLING_CHALLENGE_STATE, 3 savebgm MUS_DUMMY fadedefaultbgm return -Route110_EventScript_RivalTrigger1:: @ 81EF74D +Route110_EventScript_RivalTrigger1:: setvar VAR_0x8008, 1 goto Route110_EventScript_RivalScene end -Route110_EventScript_RivalTrigger2:: @ 81EF758 +Route110_EventScript_RivalTrigger2:: setvar VAR_0x8008, 2 goto Route110_EventScript_RivalScene end -Route110_EventScript_RivalTrigger3:: @ 81EF763 +Route110_EventScript_RivalTrigger3:: setvar VAR_0x8008, 3 goto Route110_EventScript_RivalScene end -Route110_EventScript_RivalScene:: @ 81EF76E +Route110_EventScript_RivalScene:: lockall checkplayergender compare VAR_RESULT, MALE @@ -409,15 +409,15 @@ Route110_EventScript_RivalScene:: @ 81EF76E releaseall end -Route110_EventScript_PlayMayMusic:: @ 81EF7E1 +Route110_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, TRUE return -Route110_EventScript_PlayBrendanMusic:: @ 81EF7E6 +Route110_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE return -Route110_EventScript_MayBattle:: @ 81EF7EB +Route110_EventScript_MayBattle:: msgbox Route110_Text_MayLetsBattle, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route110_EventScript_MayBattleTreecko @@ -425,29 +425,29 @@ Route110_EventScript_MayBattle:: @ 81EF7EB case 2, Route110_EventScript_MayBattleMudkip end -Route110_EventScript_MayBattleTreecko:: @ 81EF81A +Route110_EventScript_MayBattleTreecko:: trainerbattle_no_intro TRAINER_MAY_ROUTE_110_TREECKO, Route110_Text_MayDefeated goto Route110_EventScript_MayDefeated end -Route110_EventScript_MayBattleTorchic:: @ 81EF82A +Route110_EventScript_MayBattleTorchic:: trainerbattle_no_intro TRAINER_MAY_ROUTE_110_TORCHIC, Route110_Text_MayDefeated goto Route110_EventScript_MayDefeated end -Route110_EventScript_MayBattleMudkip:: @ 81EF83A +Route110_EventScript_MayBattleMudkip:: trainerbattle_no_intro TRAINER_MAY_ROUTE_110_MUDKIP, Route110_Text_MayDefeated goto Route110_EventScript_MayDefeated end -Route110_EventScript_MayDefeated:: @ 81EF84A +Route110_EventScript_MayDefeated:: msgbox Route110_Text_MayTakeThis, MSGBOX_DEFAULT call Route110_EventScript_GiveItemfinder msgbox Route110_Text_MayExplainItemfinder, MSGBOX_DEFAULT goto Route110_EventScript_RivalExit end -Route110_EventScript_BrendanBattle:: @ 81EF865 +Route110_EventScript_BrendanBattle:: msgbox Route110_Text_BrendanLetsBattle, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route110_EventScript_BrendanBattleTreecko @@ -455,33 +455,33 @@ Route110_EventScript_BrendanBattle:: @ 81EF865 case 2, Route110_EventScript_BrendanBattleMudkip end -Route110_EventScript_BrendanBattleTreecko:: @ 81EF894 +Route110_EventScript_BrendanBattleTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_TREECKO, Route110_Text_BrendanDefeated goto Route110_EventScript_BrendanDefeated end -Route110_EventScript_BrendanBattleTorchic:: @ 81EF8A4 +Route110_EventScript_BrendanBattleTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_TORCHIC, Route110_Text_BrendanDefeated goto Route110_EventScript_BrendanDefeated end -Route110_EventScript_BrendanBattleMudkip:: @ 81EF8B4 +Route110_EventScript_BrendanBattleMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_110_MUDKIP, Route110_Text_BrendanDefeated goto Route110_EventScript_BrendanDefeated end -Route110_EventScript_BrendanDefeated:: @ 81EF8C4 +Route110_EventScript_BrendanDefeated:: msgbox Route110_Text_BrendanTakeThis, MSGBOX_DEFAULT call Route110_EventScript_GiveItemfinder msgbox Route110_Text_BrendanExplainItemfinder, MSGBOX_DEFAULT goto Route110_EventScript_RivalExit end -Route110_EventScript_GiveItemfinder:: @ 81EF8DF +Route110_EventScript_GiveItemfinder:: giveitem ITEM_ITEMFINDER return -Route110_EventScript_RivalExit:: @ 81EF8EC +Route110_EventScript_RivalExit:: closemessage compare VAR_0x8008, 1 call_if_eq Route110_EventScript_MoveRival1 @@ -507,65 +507,65 @@ Route110_EventScript_RivalExit:: @ 81EF8EC releaseall end -Route110_EventScript_RivalApproachPlayer1:: @ 81EF94E +Route110_EventScript_RivalApproachPlayer1:: applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer1 waitmovement 0 return -Route110_EventScript_RivalApproachPlayer2:: @ 81EF959 +Route110_EventScript_RivalApproachPlayer2:: applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer2 waitmovement 0 return -Route110_EventScript_RivalApproachPlayer3:: @ 81EF964 +Route110_EventScript_RivalApproachPlayer3:: applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer3 waitmovement 0 return -Route110_EventScript_RivalExit1:: @ 81EF96F +Route110_EventScript_RivalExit1:: applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit1 waitmovement 0 return -Route110_EventScript_RivalExit2:: @ 81EF97A +Route110_EventScript_RivalExit2:: applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit2 waitmovement 0 return -Route110_EventScript_RivalExit3:: @ 81EF985 +Route110_EventScript_RivalExit3:: applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit3 waitmovement 0 return -Route110_EventScript_MoveRival1:: @ 81EF990 +Route110_EventScript_MoveRival1:: setobjectxyperm LOCALID_RIVAL_ON_BIKE, 33, 55 return -Route110_EventScript_MoveRival2:: @ 81EF998 +Route110_EventScript_MoveRival2:: setobjectxyperm LOCALID_RIVAL_ON_BIKE, 34, 55 return -Route110_EventScript_MoveRival3:: @ 81EF9A0 +Route110_EventScript_MoveRival3:: setobjectxyperm LOCALID_RIVAL_ON_BIKE, 35, 55 return -Route110_Movement_RivalApproachPlayer1: @ 81EF9A8 +Route110_Movement_RivalApproachPlayer1: walk_down walk_left walk_in_place_fastest_down step_end -Route110_Movement_RivalApproachPlayer2: @ 81EF9AC +Route110_Movement_RivalApproachPlayer2: walk_down step_end -Route110_Movement_RivalApproachPlayer3: @ 81EF9AE +Route110_Movement_RivalApproachPlayer3: walk_down walk_right walk_in_place_fastest_down step_end -Route110_Movement_RivalExit1: @ 81EF9B2 +Route110_Movement_RivalExit1: walk_fast_up walk_fast_up walk_fast_up @@ -575,7 +575,7 @@ Route110_Movement_RivalExit1: @ 81EF9B2 walk_fast_up step_end -Route110_Movement_RivalExit2: @ 81EF9BA +Route110_Movement_RivalExit2: walk_fast_up walk_fast_up walk_fast_up @@ -586,7 +586,7 @@ Route110_Movement_RivalExit2: @ 81EF9BA walk_fast_down step_end -Route110_Movement_RivalExit3: @ 81EF9C3 +Route110_Movement_RivalExit3: walk_fast_up walk_fast_up walk_fast_up @@ -596,27 +596,27 @@ Route110_Movement_RivalExit3: @ 81EF9C3 walk_fast_up step_end -Route110_EventScript_BirchScene1:: @ 81EF9CB +Route110_EventScript_BirchScene1:: lockall setvar VAR_0x8008, 1 goto Route110_EventScript_BirchScene -Route110_EventScript_BirchScene2:: @ 81EF9D6 +Route110_EventScript_BirchScene2:: lockall setvar VAR_0x8008, 2 goto Route110_EventScript_BirchScene -Route110_EventScript_BirchScene3:: @ 81EF9E1 +Route110_EventScript_BirchScene3:: lockall setvar VAR_0x8008, 3 goto Route110_EventScript_BirchScene -Route110_EventScript_BirchScene4:: @ 81EF9EC +Route110_EventScript_BirchScene4:: lockall setvar VAR_0x8008, 4 goto Route110_EventScript_BirchScene -Route110_EventScript_BirchScene:: @ 81EF9F7 +Route110_EventScript_BirchScene:: addobject LOCALID_BIRCH applymovement LOCALID_BIRCH, Route110_Movement_BirchEntrance waitmovement 0 @@ -669,77 +669,77 @@ Route110_EventScript_BirchScene:: @ 81EF9F7 releaseall end -Route110_EventScript_BirchApproachPlayer1:: @ 81EFAD8 +Route110_EventScript_BirchApproachPlayer1:: applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer1 waitmovement 0 return -Route110_EventScript_BirchApproachPlayer2:: @ 81EFAE3 +Route110_EventScript_BirchApproachPlayer2:: applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer2 waitmovement 0 return -Route110_EventScript_BirchApproachPlayer3:: @ 81EFAEE +Route110_EventScript_BirchApproachPlayer3:: applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer3 waitmovement 0 return -Route110_EventScript_BirchApproachPlayer4:: @ 81EFAF9 +Route110_EventScript_BirchApproachPlayer4:: applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer4 waitmovement 0 return -Route110_EventScript_BirchExit1:: @ 81EFB04 +Route110_EventScript_BirchExit1:: applymovement LOCALID_BIRCH, Route110_Movement_BirchExit1 waitmovement 0 return -Route110_EventScript_BirchExit2:: @ 81EFB0F +Route110_EventScript_BirchExit2:: applymovement LOCALID_BIRCH, Route110_Movement_BirchExit2 waitmovement 0 return -Route110_EventScript_BirchExit3:: @ 81EFB1A +Route110_EventScript_BirchExit3:: applymovement LOCALID_BIRCH, Route110_Movement_BirchExit3 waitmovement 0 return -Route110_EventScript_BirchExit4:: @ 81EFB25 +Route110_EventScript_BirchExit4:: applymovement LOCALID_BIRCH, Route110_Movement_BirchExit4 waitmovement 0 return -Route110_Movement_BirchEntrance: @ 81EFB30 +Route110_Movement_BirchEntrance: walk_down walk_down walk_down step_end -Route110_Movement_BirchApproachPlayer1: @ 81EFB34 +Route110_Movement_BirchApproachPlayer1: walk_down walk_left walk_left walk_down step_end -Route110_Movement_BirchApproachPlayer2: @ 81EFB39 +Route110_Movement_BirchApproachPlayer2: walk_down walk_left walk_down step_end -Route110_Movement_BirchApproachPlayer3: @ 81EFB3D +Route110_Movement_BirchApproachPlayer3: walk_down walk_down step_end -Route110_Movement_BirchApproachPlayer4: @ 81EFB40 +Route110_Movement_BirchApproachPlayer4: walk_down walk_right walk_down step_end -Route110_Movement_BirchExit1: @ 81EFB44 +Route110_Movement_BirchExit1: walk_up walk_up walk_right @@ -748,7 +748,7 @@ Route110_Movement_BirchExit1: @ 81EFB44 walk_up step_end -Route110_Movement_BirchExit2: @ 81EFB4B +Route110_Movement_BirchExit2: walk_up walk_up walk_up @@ -756,7 +756,7 @@ Route110_Movement_BirchExit2: @ 81EFB4B walk_up step_end -Route110_Movement_BirchExit3: @ 81EFB51 +Route110_Movement_BirchExit3: walk_up walk_up walk_up @@ -764,7 +764,7 @@ Route110_Movement_BirchExit3: @ 81EFB51 walk_up step_end -Route110_Movement_BirchExit4: @ 81EFB57 +Route110_Movement_BirchExit4: walk_up walk_up walk_up @@ -772,40 +772,40 @@ Route110_Movement_BirchExit4: @ 81EFB57 walk_up step_end -Route110_Text_WeCantTalkAboutAquaActivities: @ 81EFB5D +Route110_Text_WeCantTalkAboutAquaActivities: .string "TEAM AQUA's activities…\n" .string "We can't talk about them yet.$" -Route110_Text_KickUpARuckus: @ 81EFB93 +Route110_Text_KickUpARuckus: .string "I want to get going to SLATEPORT and\n" .string "kick up a ruckus!$" -Route110_Text_MyFirstJobInAqua: @ 81EFBCA +Route110_Text_MyFirstJobInAqua: .string "This is my first job after joining\n" .string "TEAM AQUA. It's a little scary.$" -Route110_Text_AquaActionsBringSmiles: @ 81EFC0D +Route110_Text_AquaActionsBringSmiles: .string "TEAM AQUA's actions should bring\n" .string "smiles to people's faces!$" -Route110_Text_MayLetsBattle: @ 81EFC48 +Route110_Text_MayLetsBattle: .string "MAY: Hi, {PLAYER}{KUN}, long time no see!\p" .string "While I was searching for other\n" .string "POKéMON, my POKéMON grew stronger.\p" .string "So…\n" .string "How about a little battle?$" -Route110_Text_MayDefeated: @ 81EFCCB +Route110_Text_MayDefeated: .string "Yikes!\n" .string "You're better than I expected!$" -Route110_Text_MayTakeThis: @ 81EFCF1 +Route110_Text_MayTakeThis: .string "MAY: {PLAYER}{KUN}, you've been busy\n" .string "training, too, haven't you?\p" .string "I think you deserve a reward!\n" .string "This is from me!$" -Route110_Text_MayExplainItemfinder: @ 81EFD58 +Route110_Text_MayExplainItemfinder: .string "MAY: That's an ITEMFINDER.\p" .string "Try it out. If there is an item that's\n" .string "not visible, it emits a sound.\p" @@ -814,24 +814,24 @@ Route110_Text_MayExplainItemfinder: @ 81EFD58 .string "me, but I think you should train a lot\l" .string "harder for the next time.$" -Route110_Text_BrendanLetsBattle: @ 81EFE3F +Route110_Text_BrendanLetsBattle: .string "BRENDAN: Hey, {PLAYER}.\n" .string "So this is where you were.\l" .string "How's it going?\p" .string "Have you been raising your POKéMON?\n" .string "I'll check for you.$" -Route110_Text_BrendanDefeated: @ 81EFEB4 +Route110_Text_BrendanDefeated: .string "Hmm…\n" .string "You're pretty good.$" -Route110_Text_BrendanTakeThis: @ 81EFECD +Route110_Text_BrendanTakeThis: .string "BRENDAN: {PLAYER}, you've trained\n" .string "without me noticing…\p" .string "Good enough!\n" .string "Here, take this.$" -Route110_Text_BrendanExplainItemfinder: @ 81EFF1C +Route110_Text_BrendanExplainItemfinder: .string "BRENDAN: That's an ITEMFINDER.\p" .string "Use it to root around for items that\n" .string "aren't visible.\p" @@ -840,16 +840,16 @@ Route110_Text_BrendanExplainItemfinder: @ 81EFF1C .string "Anyway, I'm off to look for new\n" .string "POKéMON.$" -Route110_Text_RideBikeAtFullSpeed: @ 81EFFC3 +Route110_Text_RideBikeAtFullSpeed: .string "Wouldn't it be great to ride a BIKE\n" .string "at full speed on CYCLING ROAD?$" -Route110_Text_HairStreamsBehindMe: @ 81F0006 +Route110_Text_HairStreamsBehindMe: .string "How do you like the way my raven-\n" .string "colored hair streams behind me?\p" .string "I grew my hair out just for that.$" -Route110_Text_YouGotBikeFromRydel: @ 81F006A +Route110_Text_YouGotBikeFromRydel: .string "Oh, hey, you got that BIKE from RYDEL!\p" .string "Oh, it's glaringly obvious.\n" .string "It says right on your bike…\p" @@ -866,139 +866,139 @@ Route110_Text_YouGotBikeFromRydel: @ 81F006A .string "You should ride it around all over\n" .string "the place--it's good advertising!$" -Route110_Text_TwoRoads: @ 81F0261 +Route110_Text_TwoRoads: .string "The two roads, one above, one below…\p" .string "A road each for people and POKéMON.\n" .string "Perhaps that is right and fair.$" -Route110_Text_WalkOnTheLowRoad: @ 81F02CA +Route110_Text_WalkOnTheLowRoad: .string "I don't have a BIKE, so I'll take\n" .string "a leisurely walk on the low road.$" -Route110_Text_BikeTechniques: @ 81F030E +Route110_Text_BikeTechniques: .string "Learning techniques will make BIKE\n" .string "riding even more fun.\p" .string "There are some places that you can\n" .string "reach only by using a BIKE technique.$" -Route110_Text_WhichShouldIChoose: @ 81F0390 +Route110_Text_WhichShouldIChoose: .string "Which should I choose?\p" .string "Make a beeline for MAUVILLE on\n" .string "CYCLING ROAD, or take the low road\l" .string "and look for POKéMON?$" -Route110_Text_CyclingChallengeResultSummary: @ 81F03FF +Route110_Text_CyclingChallengeResultSummary: .string "Number of collisions:\n" .string "… … {STR_VAR_1}!\p" .string "Total time:\n" .string "… … {STR_VAR_2}!$" -Route110_Text_ChallengeReactionBest: @ 81F0431 +Route110_Text_ChallengeReactionBest: .string "Bravo! Splendid showing!\p" .string "Your love of cycling comes from deep\n" .string "within your heart.\l" .string "You've shaken me to my very soul!$" -Route110_Text_ChallengeReactionGood: @ 81F04A4 +Route110_Text_ChallengeReactionGood: .string "Your technique is remarkable.\p" .string "I suggest you speed up a bit while\n" .string "still avoiding collisions.$" -Route110_Text_ChallengeReactionOk: @ 81F0500 +Route110_Text_ChallengeReactionOk: .string "I would consider you a work in\n" .string "progress.\p" .string "Still, I hope you don't forget the\n" .string "sheer pleasure of cycling.$" -Route110_Text_ChallengeReactionBad: @ 81F0567 +Route110_Text_ChallengeReactionBad: .string "My word… Your cycling skills border\n" .string "on terrifying.\p" .string "Most certainly, you need much more\n" .string "practice riding.$" -Route110_Text_ChallengeReactionWorst: @ 81F05CE +Route110_Text_ChallengeReactionWorst: .string "…I am aghast…\p" .string "You're perhaps not cut out for this\n" .string "unfortunate cycling business.\p" .string "You ought to give serious thought to\n" .string "returning that BIKE to RYDEL.$" -Route110_Text_RatedForNumberOfCollisions: @ 81F0661 +Route110_Text_RatedForNumberOfCollisions: .string "This is CYCLING ROAD.\p" .string "If you were to ride from MAUVILLE to\n" .string "SLATEPORT on a MACH BIKE, you would\l" .string "be rated for the number of collisions\l" .string "and your total time.$" -Route110_Text_AlwaysAimHigher: @ 81F06FB +Route110_Text_AlwaysAimHigher: .string "Regardless of the results, I count on\n" .string "seeing more challenges from you.\l" .string "Always aim higher!$" -Route110_Text_AcroBikesDoNotQualify: @ 81F0755 +Route110_Text_AcroBikesDoNotQualify: .string "On this CYCLING ROAD, those riding\n" .string "MACH BIKES are rated for their number\l" .string "of collisions and their total times.\p" .string "ACRO BIKES do not qualify for rating.\n" .string "They are easy to turn, so it's not fair.$" -Route110_Text_SlateportCitySign: @ 81F0812 +Route110_Text_SlateportCitySign: .string "ROUTE 110\n" .string "{DOWN_ARROW} SLATEPORT CITY$" -Route110_Text_CyclingRoadSign: @ 81F082D +Route110_Text_CyclingRoadSign: .string "SEASIDE CYCLING ROAD$" -Route110_Text_AquaWasHere: @ 81F0842 +Route110_Text_AquaWasHere: .string "“TEAM AQUA was here!”\p" .string "Someone painted that onto this sign,\n" .string "but then someone else painted over it.\p" .string "“TEAM MAGMA rules!” is what it\n" .string "says now.$" -Route110_Text_Route103Sign: @ 81F08CD +Route110_Text_Route103Sign: .string "ROUTE 110\n" .string "{LEFT_ARROW} ROUTE 103$" -Route110_Text_SeasideParkingSign: @ 81F08E3 +Route110_Text_SeasideParkingSign: .string "SEASIDE PARKING$" -Route110_Text_MauvilleCitySign: @ 81F08F3 +Route110_Text_MauvilleCitySign: .string "ROUTE 110\n" .string "{UP_ARROW} MAUVILLE CITY$" -Route110_Text_TrainerTipsPrlzSleep: @ 81F090D +Route110_Text_TrainerTipsPrlzSleep: .string "TRAINER TIPS\p" .string "The foe can be made helpless by\n" .string "paralyzing it or causing it to sleep.\p" .string "It is an important technique for\n" .string "POKéMON battles.$" -Route110_Text_TrainerTipsRegisterItems: @ 81F0992 +Route110_Text_TrainerTipsRegisterItems: .string "TRAINER TIPS\p" .string "The items in the BAG can be reorganized\n" .string "by pressing SELECT.$" -Route110_Text_TrickHouseSign: @ 81F09DB +Route110_Text_TrickHouseSign: .string "“Three steps {RIGHT_ARROW} and two steps {UP_ARROW}\n" .string "to reach the wondrous TRICK HOUSE.”$" -Route110_Text_BestRecord: @ 81F0A1E +Route110_Text_BestRecord: .string "THE BEST RECORD TO DATE…\p" .string "No. of collisions: {STR_VAR_1}\p" .string "Elapsed time: {STR_VAR_2}$" -Route110_Text_ThereIsNoRecord: @ 81F0A5E +Route110_Text_ThereIsNoRecord: .string "THE BEST RECORD TO DATE…\p" .string "No one seems to have taken the\n" .string "challenge. There is no record…$" -Route110_Text_ImagineSeeingYouHere: @ 81F0AB5 +Route110_Text_ImagineSeeingYouHere: .string "PROF. BIRCH: Oh, {PLAYER}{KUN}!\n" .string "Imagine seeing you here!\p" .string "And where might my {RIVAL} be?$" -Route110_Text_HeardYouInstallMatchCall: @ 81F0AFF +Route110_Text_HeardYouInstallMatchCall: .string "Oh, I see!\n" .string "You two are running separately.\l" .string "Well, that's fine.\p" @@ -1010,11 +1010,11 @@ Route110_Text_HeardYouInstallMatchCall: @ 81F0AFF .string "I can rate your POKéDEX anytime.\p" .string "… … … … … …$" -Route110_Text_RegisteredBirchInPokenav: @ 81F0C0C +Route110_Text_RegisteredBirchInPokenav: .string "Registered PROF. BIRCH\n" .string "in the POKéNAV.$" -Route110_Text_KeepAnEyeOutForRival: @ 81F0C33 +Route110_Text_KeepAnEyeOutForRival: .string "PROF. BIRCH: {PLAYER}{KUN}…\p" .string "Please keep an eye out for my {RIVAL}.\n" .string "… … … … … …\p" diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc index 17ecd2be3baa..4bad754c4dca 100644 --- a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc +++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc @@ -1,14 +1,14 @@ -Route110_SeasideCyclingRoadNorthEntrance_MapScripts:: @ 826EA77 +Route110_SeasideCyclingRoadNorthEntrance_MapScripts:: .byte 0 -Route110_SeasideCyclingRoadNorthEntrance_EventScript_Clerk:: @ 826EA78 +Route110_SeasideCyclingRoadNorthEntrance_EventScript_Clerk:: lock faceplayer msgbox Route110_SeasideCyclingRoadNorthEntrance_Text_GoAllOutOnCyclingRoad, MSGBOX_DEFAULT release end -Route110_SeasideCyclingRoadNorthEntrance_EventScript_BikeCheck:: @ 826EA84 +Route110_SeasideCyclingRoadNorthEntrance_EventScript_BikeCheck:: lockall specialvar VAR_RESULT, GetPlayerAvatarBike compare VAR_RESULT, 0 @@ -18,7 +18,7 @@ Route110_SeasideCyclingRoadNorthEntrance_EventScript_BikeCheck:: @ 826EA84 releaseall end -Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike:: @ 826EA9F +Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike:: msgbox Route110_SeasideCyclingRoadNorthEntrance_Text_TooDangerousToWalk, MSGBOX_DEFAULT closemessage applymovement OBJ_EVENT_ID_PLAYER, Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter @@ -26,24 +26,24 @@ Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike:: @ 826EA9F releaseall end -Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter: @ 826EAB4 +Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter: walk_left step_end -Route110_SeasideCyclingRoadNorthEntrance_EventScript_ClearCyclingRoad:: @ 826EAB6 +Route110_SeasideCyclingRoadNorthEntrance_EventScript_ClearCyclingRoad:: lockall clearflag FLAG_SYS_CYCLING_ROAD setvar VAR_TEMP_1, 0 releaseall end -Route110_SeasideCyclingRoadNorthEntrance_Text_GoAllOutOnCyclingRoad: @ 826EAC1 +Route110_SeasideCyclingRoadNorthEntrance_Text_GoAllOutOnCyclingRoad: .string "On CYCLING ROAD, you can go all out\n" .string "and cycle as fast as you'd like.\p" .string "It feels great to go that fast, but try\n" .string "not to crash into anyone!$" -Route110_SeasideCyclingRoadNorthEntrance_Text_TooDangerousToWalk: @ 826EB48 +Route110_SeasideCyclingRoadNorthEntrance_Text_TooDangerousToWalk: .string "Sorry, you can't walk on CYCLING\n" .string "ROAD. It's too dangerous.\p" .string "Please come back with a BIKE.$" diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc index 1799f0f5f32e..92b4b3e44c19 100644 --- a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc +++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc @@ -1,26 +1,26 @@ -Route110_SeasideCyclingRoadSouthEntrance_MapScripts:: @ 826EBA1 +Route110_SeasideCyclingRoadSouthEntrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_SeasideCyclingRoadSouthEntrance_OnTransition .byte 0 -Route110_SeasideCyclingRoadSouthEntrance_OnTransition: @ 826EBA7 +Route110_SeasideCyclingRoadSouthEntrance_OnTransition: compare VAR_CYCLING_CHALLENGE_STATE, 3 call_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge compare VAR_CYCLING_CHALLENGE_STATE, 2 call_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge end -Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge:: @ 826EBBE +Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge:: setvar VAR_CYCLING_CHALLENGE_STATE, 1 return -Route110_SeasideCyclingRoadSouthEntrance_EventScript_Clerk:: @ 826EBC4 +Route110_SeasideCyclingRoadSouthEntrance_EventScript_Clerk:: lock faceplayer msgbox Route110_SeasideCyclingRoadSouthEntrance_Text_GoAllOutOnCyclingRoad, MSGBOX_DEFAULT release end -Route110_SeasideCyclingRoadSouthEntrance_EventScript_BikeCheck:: @ 826EBD0 +Route110_SeasideCyclingRoadSouthEntrance_EventScript_BikeCheck:: lockall specialvar VAR_RESULT, GetPlayerAvatarBike compare VAR_RESULT, 2 @@ -32,11 +32,11 @@ Route110_SeasideCyclingRoadSouthEntrance_EventScript_BikeCheck:: @ 826EBD0 releaseall end -Route110_SeasideCyclingRoadSouthEntrance_EventScript_OnMachBike:: @ 826EBF6 +Route110_SeasideCyclingRoadSouthEntrance_EventScript_OnMachBike:: setvar VAR_CYCLING_CHALLENGE_STATE, 1 return -Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike:: @ 826EBFC +Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike:: msgbox Route110_SeasideCyclingRoadSouthEntrance_Text_TooDangerousToWalk, MSGBOX_DEFAULT closemessage applymovement OBJ_EVENT_ID_PLAYER, Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter @@ -44,11 +44,11 @@ Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike:: @ 826EBFC releaseall end -Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter: @ 826EC11 +Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter: walk_left step_end -Route110_SeasideCyclingRoadSouthEntrance_EventScript_ClearCyclingRoad:: @ 826EC13 +Route110_SeasideCyclingRoadSouthEntrance_EventScript_ClearCyclingRoad:: lockall setvar VAR_CYCLING_CHALLENGE_STATE, 0 clearflag FLAG_SYS_CYCLING_ROAD @@ -56,13 +56,13 @@ Route110_SeasideCyclingRoadSouthEntrance_EventScript_ClearCyclingRoad:: @ 826EC1 releaseall end -Route110_SeasideCyclingRoadSouthEntrance_Text_GoAllOutOnCyclingRoad: @ 826EC23 +Route110_SeasideCyclingRoadSouthEntrance_Text_GoAllOutOnCyclingRoad: .string "On CYCLING ROAD, you can go all out\n" .string "and cycle as fast as you'd like.\p" .string "It feels great to go that fast, but try\n" .string "not to crash into anyone!$" -Route110_SeasideCyclingRoadSouthEntrance_Text_TooDangerousToWalk: @ 826ECAA +Route110_SeasideCyclingRoadSouthEntrance_Text_TooDangerousToWalk: .string "Sorry, you can't walk on CYCLING\n" .string "ROAD. It's too dangerous.\p" .string "Please come back with a BIKE.$" diff --git a/data/maps/Route110_TrickHouseCorridor/scripts.inc b/data/maps/Route110_TrickHouseCorridor/scripts.inc index ad469bc48bc7..ee7791a28b4f 100644 --- a/data/maps/Route110_TrickHouseCorridor/scripts.inc +++ b/data/maps/Route110_TrickHouseCorridor/scripts.inc @@ -1,8 +1,8 @@ -Route110_TrickHouseCorridor_MapScripts:: @ 826B903 +Route110_TrickHouseCorridor_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseCorridor_OnTransition .byte 0 -Route110_TrickHouseCorridor_OnTransition: @ 826B909 +Route110_TrickHouseCorridor_OnTransition: setvar VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 1 end diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc index 8e1ffdeb2078..9167cbd34abf 100644 --- a/data/maps/Route110_TrickHouseEnd/scripts.inc +++ b/data/maps/Route110_TrickHouseEnd/scripts.inc @@ -1,48 +1,48 @@ .set LOCALID_TRICK_MASTER, 1 -Route110_TrickHouseEnd_MapScripts:: @ 826ACAF +Route110_TrickHouseEnd_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHouseEnd_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseEnd_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_TrickHouseEnd_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, Route110_TrickHouseEnd_OnWarp .byte 0 -Route110_TrickHouseEnd_OnResume: @ 826ACC4 +Route110_TrickHouseEnd_OnResume: compare VAR_TEMP_1, 1 call_if_eq Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile end -Route110_TrickHouseEnd_OnTransition: @ 826ACD0 +Route110_TrickHouseEnd_OnTransition: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 special SetTrickHouseNuggetFlag end -Route110_TrickHouseEnd_OnWarp: @ 826ACDE +Route110_TrickHouseEnd_OnWarp: map_script_2 VAR_TEMP_2, 0, Route110_TrickHouseEnd_EventScript_SetTrickMasterPos .2byte 0 -Route110_TrickHouseEnd_EventScript_SetTrickMasterPos:: @ 826ACE8 +Route110_TrickHouseEnd_EventScript_SetTrickMasterPos:: addobject LOCALID_TRICK_MASTER showobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_END turnobject LOCALID_TRICK_MASTER, DIR_EAST end -Route110_TrickHouseEnd_OnFrame: @ 826ACF5 +Route110_TrickHouseEnd_OnFrame: map_script_2 VAR_TEMP_1, 0, Route110_TrickHouseEnd_EventScript_CloseDoor .2byte 0 -Route110_TrickHouseEnd_EventScript_CloseDoor:: @ 826ACFF +Route110_TrickHouseEnd_EventScript_CloseDoor:: setvar VAR_TEMP_1, 1 call Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile special DrawWholeMapView end -Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile:: @ 826AD0D +Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile:: setmetatile 10, 1, METATILE_GenericBuilding_TrickHouse_Door_Closed, 1 return -Route110_TrickHouseEnd_EventScript_TrickMaster:: @ 826AD17 +Route110_TrickHouseEnd_EventScript_TrickMaster:: lock faceplayer msgbox Route110_TrickHouseEnd_Text_YouveMadeItToMe, MSGBOX_DEFAULT @@ -58,7 +58,7 @@ Route110_TrickHouseEnd_EventScript_TrickMaster:: @ 826AD17 case 7, Route110_TrickHouseEnd_EventScript_CompletedPuzzle8 end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle1:: @ 826AD84 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle1:: msgbox Route110_TrickHouseEnd_Text_AllNightToPlantTrees, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -71,7 +71,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle1:: @ 826AD84 release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle2:: @ 826ADC0 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle2:: msgbox Route110_TrickHouseEnd_Text_AllNightToMakeMaze, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -84,7 +84,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle2:: @ 826ADC0 release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle3:: @ 826ADFC +Route110_TrickHouseEnd_EventScript_CompletedPuzzle3:: msgbox Route110_TrickHouseEnd_Text_AllNightToPreparePanels, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -97,7 +97,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle3:: @ 826ADFC release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle4:: @ 826AE38 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle4:: msgbox Route110_TrickHouseEnd_Text_AllNightToShoveBoulders, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -110,7 +110,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle4:: @ 826AE38 release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle5:: @ 826AE74 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle5:: msgbox Route110_TrickHouseEnd_Text_AllNightToMakeMechadolls, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -123,7 +123,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle5:: @ 826AE74 release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle6:: @ 826AEB0 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle6:: msgbox Route110_TrickHouseEnd_Text_AllNightToInstallDoors, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -136,7 +136,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle6:: @ 826AEB0 release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle7:: @ 826AEEC +Route110_TrickHouseEnd_EventScript_CompletedPuzzle7:: msgbox Route110_TrickHouseEnd_Text_AllNightSettingUpArrows, MSGBOX_DEFAULT msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 @@ -149,7 +149,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle7:: @ 826AEEC release end -Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: @ 826AF28 +Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: msgbox Route110_TrickHouseEnd_Text_AllNightPolishingFloors, MSGBOX_DEFAULT closemessage compare VAR_FACING, DIR_SOUTH @@ -177,21 +177,21 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: @ 826AF28 release end -Route110_TrickHouseEnd_EventScript_ChooseTent:: @ 826AFA5 +Route110_TrickHouseEnd_EventScript_ChooseTent:: multichoice 0, 0, MULTI_TENT, TRUE switch VAR_RESULT case 0, Route110_TrickHouseEnd_EventScript_GiveRedTent goto Route110_TrickHouseEnd_EventScript_GiveBlueTent -Route110_TrickHouseEnd_EventScript_GiveRedTent:: @ 826AFBF +Route110_TrickHouseEnd_EventScript_GiveRedTent:: givedecoration DECOR_RED_TENT return -Route110_TrickHouseEnd_EventScript_GiveBlueTent:: @ 826AFC7 +Route110_TrickHouseEnd_EventScript_GiveBlueTent:: givedecoration DECOR_BLUE_TENT return -Route110_TrickHouseEnd_EventScript_TrickMasterExit:: @ 826AFCF +Route110_TrickHouseEnd_EventScript_TrickMasterExit:: applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterSpin waitmovement 0 playse SE_M_EXPLOSION @@ -201,39 +201,39 @@ Route110_TrickHouseEnd_EventScript_TrickMasterExit:: @ 826AFCF addvar VAR_TRICK_HOUSE_LEVEL, 1 return -Route110_TrickHouseEnd_EventScript_BagFull:: @ 826AFEF +Route110_TrickHouseEnd_EventScript_BagFull:: call Common_EventScript_BagIsFull msgbox Route110_TrickHouseEnd_Text_NoRoomForThis, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 1 return -Route110_TrickHouseEnd_EventScript_NoRoomForTent:: @ 826B002 +Route110_TrickHouseEnd_EventScript_NoRoomForTent:: call Common_EventScript_NoRoomForDecor msgbox Route110_TrickHouseEnd_Text_NoRoomInPC, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 1 return -Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth:: @ 826B015 +Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth:: applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth:: @ 826B020 +Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth:: applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest:: @ 826B02B +Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest:: applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast:: @ 826B036 +Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast:: applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -Route110_TrickHouseEnd_EventScript_TrickMasterExitTrigger:: @ 826B041 +Route110_TrickHouseEnd_EventScript_TrickMasterExitTrigger:: lockall turnobject LOCALID_TRICK_MASTER, DIR_WEST playse SE_PIN @@ -254,70 +254,70 @@ Route110_TrickHouseEnd_EventScript_TrickMasterExitTrigger:: @ 826B041 releaseall end -Route110_TrickHouseEnd_Movement_KeepPlayerInRoom: @ 826B089 +Route110_TrickHouseEnd_Movement_KeepPlayerInRoom: walk_down step_end -Route110_TrickHouseEnd_Movement_TrickMasterSurprise: @ 826B08B +Route110_TrickHouseEnd_Movement_TrickMasterSurprise: jump_in_place_left step_end -Route110_TrickHouseEnd_Text_YouveMadeItToMe: @ 826B08D +Route110_TrickHouseEnd_Text_YouveMadeItToMe: .string "Aak!\n" .string "You've made it to me?\l" .string "Hmmm… You're sharp!$" -Route110_TrickHouseEnd_Text_AllNightToPlantTrees: @ 826B0BC +Route110_TrickHouseEnd_Text_AllNightToPlantTrees: .string "It took me all night to plant all those\n" .string "trees…\p" .string "You're almost my equal in greatness by\n" .string "one, two, three, four, five, six places!$" -Route110_TrickHouseEnd_Text_AllNightToMakeMaze: @ 826B13B +Route110_TrickHouseEnd_Text_AllNightToMakeMaze: .string "It took me all night to make the maze…\p" .string "You're almost my equal in greatness by\n" .string "one, two, three, four, five places!$" -Route110_TrickHouseEnd_Text_AllNightToPreparePanels: @ 826B1AD +Route110_TrickHouseEnd_Text_AllNightToPreparePanels: .string "It took me all night to prepare\n" .string "the wall panels…\p" .string "You're almost my equal in greatness by\n" .string "one, two, three, four places!$" -Route110_TrickHouseEnd_Text_AllNightToShoveBoulders: @ 826B223 +Route110_TrickHouseEnd_Text_AllNightToShoveBoulders: .string "It took me all night to shove in those\n" .string "boulders…\p" .string "You're almost my equal in greatness by\n" .string "one, two, three places!$" -Route110_TrickHouseEnd_Text_AllNightToMakeMechadolls: @ 826B293 +Route110_TrickHouseEnd_Text_AllNightToMakeMechadolls: .string "It took me all night to make MECHADOLLS\n" .string "and another to think up the quiz…\p" .string "You're almost my equal in greatness by\n" .string "one, two places!$" -Route110_TrickHouseEnd_Text_AllNightToInstallDoors: @ 826B315 +Route110_TrickHouseEnd_Text_AllNightToInstallDoors: .string "It took me all night to install\n" .string "the doors…\p" .string "You're almost my equal in greatness!$" -Route110_TrickHouseEnd_Text_AllNightSettingUpArrows: @ 826B365 +Route110_TrickHouseEnd_Text_AllNightSettingUpArrows: .string "It took me all night setting up arrows…\p" .string "You're my equal in greatness!$" -Route110_TrickHouseEnd_Text_AllNightPolishingFloors: @ 826B3AB +Route110_TrickHouseEnd_Text_AllNightPolishingFloors: .string "It took me all night polishing floors…\p" .string "You're above me in greatness!\n" .string "Possibly…$" -Route110_TrickHouseEnd_Text_FountainOfIdeasRunDry: @ 826B3FA +Route110_TrickHouseEnd_Text_FountainOfIdeasRunDry: .string "Wh-what should I do?\n" .string "My fountain of ideas for tricks has\l" .string "run dry…\p" .string "Perhaps it is time I toured the country\n" .string "on a quest to devise new tricks…$" -Route110_TrickHouseEnd_Text_DefeatedMePreferWhichTent: @ 826B485 +Route110_TrickHouseEnd_Text_DefeatedMePreferWhichTent: .string "I hate to admit defeat, but you have\n" .string "bested me!\p" .string "Still, you must have been reeled in by\n" @@ -333,13 +333,13 @@ Route110_TrickHouseEnd_Text_DefeatedMePreferWhichTent: @ 826B485 .string "a RED TENT and a BLUE TENT.\l" .string "Which do you prefer?$" -Route110_TrickHouseEnd_Text_NoRoomInPC: @ 826B615 +Route110_TrickHouseEnd_Text_NoRoomInPC: .string "What? No room in your PC?\n" .string "What am I to make of that?\p" .string "I wish I could say that, but I am much\n" .string "too kind and caring, so come back later!$" -Route110_TrickHouseEnd_Text_LeavingOnJourney: @ 826B69A +Route110_TrickHouseEnd_Text_LeavingOnJourney: .string "… … … … … …\p" .string "I am leaving on a journey of discovery.\n" .string "A quest in search of new tricks.\p" @@ -347,17 +347,17 @@ Route110_TrickHouseEnd_Text_LeavingOnJourney: @ 826B69A .string "entertain me again.\p" .string "And now, farewell!$" -Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward: @ 826B73D +Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward: .string "Fine!\n" .string "You have earned this reward!$" -Route110_TrickHouseEnd_Text_NoRoomForThis: @ 826B760 +Route110_TrickHouseEnd_Text_NoRoomForThis: .string "What? Have you no room for this?\n" .string "What manner of items do you carry?\p" .string "But fine, since you've reached me,\n" .string "your reward will be with me till later.$" -Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou: @ 826B7EF +Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou: .string "Scrub that smug smirk from your face!\n" .string "It's much too early to think you've won!\p" .string "I'll make new tricks to stump you, I will.\n" @@ -365,7 +365,7 @@ Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou: @ 826B7EF .string "Come back for the next exciting\n" .string "installment!$" -Route110_TrickHouseEnd_Text_YoureIgnoringMe: @ 826B8BD +Route110_TrickHouseEnd_Text_YoureIgnoringMe: .string "Now, now! You're ignoring me now?\n" .string "Now that, I consider heartbreaking!$" diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index 4df752dc1697..9375f2046f8b 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -1,6 +1,6 @@ .set LOCALID_TRICK_MASTER, 1 -Route110_TrickHouseEntrance_MapScripts:: @ 8269A50 +Route110_TrickHouseEntrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseEntrance_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_TrickHouseEntrance_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, Route110_TrickHouseEntrance_OnWarp @@ -15,7 +15,7 @@ Route110_TrickHouseEntrance_MapScripts:: @ 8269A50 @ 5: Completed previous challenge @ 6: 'Trick Master' mechadoll ready to give Tent reward from final challenge (if bag was full) -Route110_TrickHouseEntrance_OnTransition: @ 8269A60 +Route110_TrickHouseEntrance_OnTransition: setflag FLAG_LANDMARK_TRICK_HOUSE compare VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_EnterFromCorridor @@ -36,24 +36,24 @@ Route110_TrickHouseEntrance_OnTransition: @ 8269A60 case 4, Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched3 end -Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward:: @ 8269AD7 +Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 compare VAR_TRICK_HOUSE_LEVEL, 8 goto_if_eq Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 2 end -Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward:: @ 8269AED +Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 6 end -Route110_TrickHouseEntrance_EventScript_EnterFromCorridor:: @ 8269AF3 +Route110_TrickHouseEntrance_EventScript_EnterFromCorridor:: setvar VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 5 setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end -Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle:: @ 8269B03 +Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 0 compare VAR_TRICK_HOUSE_LEVEL, 1 call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2 @@ -73,63 +73,63 @@ Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle:: @ 8269B03 call_if_eq Route110_TrickHouseEntrance_EventScript_FinishedPuzzles return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2:: @ 8269B61 +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2:: call_if_unset FLAG_BADGE03_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3:: @ 8269B6B +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3:: call_if_unset FLAG_BADGE04_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4:: @ 8269B75 +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4:: call_if_unset FLAG_BADGE05_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5:: @ 8269B7F +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5:: call_if_unset FLAG_BADGE06_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6:: @ 8269B89 +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6:: call_if_unset FLAG_BADGE07_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7:: @ 8269B93 +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7:: call_if_unset FLAG_BADGE08_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8:: @ 8269B9D +Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8:: call_if_unset FLAG_SYS_GAME_CLEAR, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return -Route110_TrickHouseEntrance_EventScript_FinishedPuzzles:: @ 8269BA7 +Route110_TrickHouseEntrance_EventScript_FinishedPuzzles:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 4 return -Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle:: @ 8269BAD +Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 return -Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor:: @ 8269BB3 +Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor:: setobjectxyperm LOCALID_TRICK_MASTER, 5, 2 end -Route110_TrickHouseEntrance_EventScript_ReadyBeingWatchedTrigger:: @ 8269BBB +Route110_TrickHouseEntrance_EventScript_ReadyBeingWatchedTrigger:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 0 end -Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched1:: @ 8269BC1 +Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched1:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end -Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched2:: @ 8269BC7 +Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched2:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end -Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched3:: @ 8269BCD +Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched3:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end -Route110_TrickHouseEntrance_OnWarp: @ 8269BD3 +Route110_TrickHouseEntrance_OnWarp: map_script_2 VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_TrickMasterFound map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 0, Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 1, Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster @@ -140,14 +140,14 @@ Route110_TrickHouseEntrance_OnWarp: @ 8269BD3 map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 6, Route110_TrickHouseEntrance_EventScript_SetTrickMasterInFrontOfDoor .2byte 0 -Route110_TrickHouseEntrance_EventScript_TrickMasterFound:: @ 8269C15 +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 end -Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot:: @ 8269C26 +Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot:: addobject LOCALID_TRICK_MASTER hideobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE switch VAR_TRICK_HOUSE_LEVEL @@ -161,59 +161,59 @@ Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot:: @ 8269C26 case 7, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle8 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle1:: @ 8269C8C +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle1:: setobjectxy LOCALID_TRICK_MASTER, 6, 3 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle2:: @ 8269C94 +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle2:: setobjectxy LOCALID_TRICK_MASTER, 11, 5 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle3:: @ 8269C9C +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle3:: setobjectxy LOCALID_TRICK_MASTER, 9, 1 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle4:: @ 8269CA4 +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle4:: setobjectxy LOCALID_TRICK_MASTER, 3, 1 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle5:: @ 8269CAC +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle5:: setobjectxy LOCALID_TRICK_MASTER, 0, 5 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle6:: @ 8269CB4 +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle6:: setobjectxy LOCALID_TRICK_MASTER, 11, 1 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle7:: @ 8269CBC +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle7:: setobjectxy LOCALID_TRICK_MASTER, 8, 1 end -Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle8:: @ 8269CC4 +Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle8:: setobjectxy LOCALID_TRICK_MASTER, 4, 4 end -Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster:: @ 8269CCC +Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster:: removeobject LOCALID_TRICK_MASTER end -Route110_TrickHouseEntrance_EventScript_SetTrickMasterFacingDoor:: @ 8269CD0 +Route110_TrickHouseEntrance_EventScript_SetTrickMasterFacingDoor:: addobject LOCALID_TRICK_MASTER setobjectxy LOCALID_TRICK_MASTER, 5, 2 turnobject LOCALID_TRICK_MASTER, DIR_NORTH end -Route110_TrickHouseEntrance_EventScript_SetTrickMasterInFrontOfDoor:: @ 8269CDF +Route110_TrickHouseEntrance_EventScript_SetTrickMasterInFrontOfDoor:: addobject LOCALID_TRICK_MASTER setobjectxy LOCALID_TRICK_MASTER, 5, 2 turnobject LOCALID_TRICK_MASTER, DIR_SOUTH end -Route110_TrickHouseEntrance_OnFrame: @ 8269CEE +Route110_TrickHouseEntrance_OnFrame: map_script_2 VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_BeginChallenge .2byte 0 -Route110_TrickHouseEntrance_EventScript_BeginChallenge:: @ 8269CF8 +Route110_TrickHouseEntrance_EventScript_BeginChallenge:: lockall delay 20 compare VAR_TRICK_HOUSE_LEVEL, 0 @@ -232,11 +232,11 @@ Route110_TrickHouseEntrance_EventScript_BeginChallenge:: @ 8269CF8 releaseall end -Route110_TrickHouseEntrance_EventScript_UnusedRelease:: @ 8269D39 +Route110_TrickHouseEntrance_EventScript_UnusedRelease:: releaseall end -Route110_TrickHouseEntrance_EventScript_TrickMaster:: @ 8269D3B +Route110_TrickHouseEntrance_EventScript_TrickMaster:: lockall switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_FoundTrickMaster @@ -245,7 +245,7 @@ Route110_TrickHouseEntrance_EventScript_TrickMaster:: @ 8269D3B case 6, Route110_TrickHouseEntrance_EventScript_MechadollReward end -Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: @ 8269D6E +Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: playse SE_PIN applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_ExclamationMark waitmovement 0 @@ -274,39 +274,39 @@ Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: @ 8269D6E releaseall end -Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk:: @ 8269DEE +Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBeneathDesk, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundBehindTree:: @ 8269DF7 +Route110_TrickHouseEntrance_EventScript_FoundBehindTree:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBehindTree, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundInDresser:: @ 8269E00 +Route110_TrickHouseEntrance_EventScript_FoundInDresser:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInDresser, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow:: @ 8269E09 +Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow:: msgbox Route110_TrickHouseEntrance_Text_ConealedBeyondWindow, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundInPlanter:: @ 8269E12 +Route110_TrickHouseEntrance_EventScript_FoundInPlanter:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInPlanter, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundInCupboard:: @ 8269E1B +Route110_TrickHouseEntrance_EventScript_FoundInCupboard:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInCupboard, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundBehindWindow:: @ 8269E24 +Route110_TrickHouseEntrance_EventScript_FoundBehindWindow:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBehindWindow, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion:: @ 8269E2D +Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBeneathCushion, MSGBOX_DEFAULT return -Route110_TrickHouse_Movement_TrickMasterSpin: @ 8269E36 +Route110_TrickHouse_Movement_TrickMasterSpin: face_up delay_4 face_left @@ -317,7 +317,7 @@ Route110_TrickHouse_Movement_TrickMasterSpin: @ 8269E36 delay_4 step_end -Route110_TrickHouse_Movement_TrickMasterJumpAway: @ 8269E3F +Route110_TrickHouse_Movement_TrickMasterJumpAway: face_up disable_anim slide_up @@ -328,11 +328,11 @@ Route110_TrickHouse_Movement_TrickMasterJumpAway: @ 8269E3F slide_up step_end -Route110_TrickHouseEntrance_EventScript_MeetTrickMaster:: @ 8269E48 +Route110_TrickHouseEntrance_EventScript_MeetTrickMaster:: msgbox Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster, MSGBOX_DEFAULT return -Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle:: @ 8269E51 +Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle:: msgbox Route110_TrickHouseEntrance_Text_NextTimeUseThisTrick, MSGBOX_DEFAULT closemessage applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer @@ -348,7 +348,7 @@ Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle:: @ 8269E51 releaseall end -Route110_TrickHouseEntrance_EventScript_GiveReward:: @ 8269E8F +Route110_TrickHouseEntrance_EventScript_GiveReward:: applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward, MSGBOX_DEFAULT @@ -368,7 +368,7 @@ Route110_TrickHouseEntrance_EventScript_GiveReward:: @ 8269E8F goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward end -Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward:: @ 8269EEF +Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward:: giveitem ITEM_RARE_CANDY compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -378,7 +378,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward:: @ 8269EEF releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward:: @ 8269F1B +Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward:: giveitem ITEM_TIMER_BALL compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -388,7 +388,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward:: @ 8269F1B releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward:: @ 8269F47 +Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward:: giveitem ITEM_HARD_STONE compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -398,7 +398,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward:: @ 8269F47 releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward:: @ 8269F73 +Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward:: giveitem ITEM_SMOKE_BALL compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -408,7 +408,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward:: @ 8269F73 releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward:: @ 8269F9F +Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward:: giveitem ITEM_TM12 compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -418,7 +418,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward:: @ 8269F9F releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward:: @ 8269FCB +Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward:: giveitem ITEM_MAGNET compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -428,7 +428,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward:: @ 8269FCB releaseall end -Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: @ 8269FF7 +Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: giveitem ITEM_PP_MAX compare VAR_RESULT, TRUE goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward @@ -438,7 +438,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: @ 8269FF7 releaseall end -Route110_TrickHouseEntrance_EventScript_GotReward:: @ 826A023 +Route110_TrickHouseEntrance_EventScript_GotReward:: setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestUp @@ -446,7 +446,7 @@ Route110_TrickHouseEntrance_EventScript_GotReward:: @ 826A023 releaseall end -Route110_TrickHouseEntrance_EventScript_MechadollReward:: @ 826A039 +Route110_TrickHouseEntrance_EventScript_MechadollReward:: applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_MechadollWhichTent, MSGBOX_DEFAULT @@ -459,21 +459,21 @@ Route110_TrickHouseEntrance_EventScript_MechadollReward:: @ 826A039 releaseall end -Route110_TrickHouseEntrance_EventScript_ChooseTent:: @ 826A070 +Route110_TrickHouseEntrance_EventScript_ChooseTent:: multichoice 0, 0, MULTI_TENT, TRUE switch VAR_RESULT case 0, Route110_TrickHouseEntrance_EventScript_GiveRedTent goto Route110_TrickHouseEntrance_EventScript_GiveBlueTent -Route110_TrickHouseEntrance_EventScript_GiveRedTent:: @ 826A08A +Route110_TrickHouseEntrance_EventScript_GiveRedTent:: givedecoration DECOR_RED_TENT return -Route110_TrickHouseEntrance_EventScript_GiveBlueTent:: @ 826A092 +Route110_TrickHouseEntrance_EventScript_GiveBlueTent:: givedecoration DECOR_BLUE_TENT return -Route110_TrickHouseEntrance_EventScript_ReceivedTent:: @ 826A09A +Route110_TrickHouseEntrance_EventScript_ReceivedTent:: msgbox Route110_TrickHouseEntrance_Text_ThenFarewell, MSGBOX_DEFAULT closemessage applymovement LOCALID_TRICK_MASTER, Route110_TrickHousePuzzle5_Movement_MechadollShake @@ -489,7 +489,7 @@ Route110_TrickHouseEntrance_EventScript_ReceivedTent:: @ 826A09A releaseall end -Route110_TrickHouseEntrance_EventScript_Door:: @ 826A0D3 +Route110_TrickHouseEntrance_EventScript_Door:: lockall switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_ItsAScroll @@ -498,12 +498,12 @@ Route110_TrickHouseEntrance_EventScript_Door:: @ 826A0D3 case 5, Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage end -Route110_TrickHouseEntrance_EventScript_ItsAScroll:: @ 826A106 +Route110_TrickHouseEntrance_EventScript_ItsAScroll:: msgbox Route110_TrickHouseEntrance_Text_ItsAScroll, MSGBOX_DEFAULT releaseall end -Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: @ 826A110 +Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: msgbox Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll, MSGBOX_YESNO closemessage compare VAR_RESULT, YES @@ -511,7 +511,7 @@ Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: @ 826A110 releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom:: @ 826A126 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom:: setmetatile 5, 1, METATILE_GenericBuilding_TrickHouse_Stairs_Down, 0 special DrawWholeMapView delay 20 @@ -530,76 +530,76 @@ Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom:: @ 826A126 case 7, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8 end -Route110_TrickHouseEntrance_Movement_EnterRoom: @ 826A1A7 +Route110_TrickHouseEntrance_Movement_EnterRoom: set_invisible step_end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1:: @ 826A1A9 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE1, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom2:: @ 826A1B4 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom2:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE2, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom3:: @ 826A1BF +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom3:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE3, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom4:: @ 826A1CA +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom4:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE4, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom5:: @ 826A1D5 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom5:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom6:: @ 826A1E0 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom6:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE6, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom7:: @ 826A1EB +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom7:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8:: @ 826A1F6 +Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE8, 255, 0, 21 waitstate releaseall end -Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote:: @ 826A201 +Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote:: msgbox Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote, MSGBOX_DEFAULT releaseall end -Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage:: @ 826A20B +Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage:: compare VAR_TRICK_HOUSE_LEVEL, 8 goto_if_eq Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2 msgbox Route110_TrickHouseEntrance_Text_ItsAScroll, MSGBOX_DEFAULT releaseall end -Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2:: @ 826A220 +Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2:: msgbox Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote, MSGBOX_DEFAULT releaseall end -Route110_TrickHousePuzzle_EventScript_Door:: @ 826A22A +Route110_TrickHousePuzzle_EventScript_Door:: lockall switch VAR_TRICK_HOUSE_LEVEL case 0, Route110_TrickHousePuzzle1_EventScript_Door @@ -612,7 +612,7 @@ Route110_TrickHousePuzzle_EventScript_Door:: @ 826A22A case 7, Route110_TrickHousePuzzle8_EventScript_Door end -Route110_TrickHousePuzzle1_EventScript_Door:: @ 826A289 +Route110_TrickHousePuzzle1_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -623,7 +623,7 @@ Route110_TrickHousePuzzle1_EventScript_Door:: @ 826A289 releaseall end -Route110_TrickHousePuzzle2_EventScript_Door:: @ 826A2B2 +Route110_TrickHousePuzzle2_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -634,7 +634,7 @@ Route110_TrickHousePuzzle2_EventScript_Door:: @ 826A2B2 releaseall end -Route110_TrickHousePuzzle3_EventScript_Door:: @ 826A2DB +Route110_TrickHousePuzzle3_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -645,7 +645,7 @@ Route110_TrickHousePuzzle3_EventScript_Door:: @ 826A2DB releaseall end -Route110_TrickHousePuzzle4_EventScript_Door:: @ 826A304 +Route110_TrickHousePuzzle4_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -656,7 +656,7 @@ Route110_TrickHousePuzzle4_EventScript_Door:: @ 826A304 releaseall end -Route110_TrickHousePuzzle5_EventScript_Door:: @ 826A32D +Route110_TrickHousePuzzle5_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -667,7 +667,7 @@ Route110_TrickHousePuzzle5_EventScript_Door:: @ 826A32D releaseall end -Route110_TrickHousePuzzle6_EventScript_Door:: @ 826A356 +Route110_TrickHousePuzzle6_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -678,7 +678,7 @@ Route110_TrickHousePuzzle6_EventScript_Door:: @ 826A356 releaseall end -Route110_TrickHousePuzzle7_EventScript_Door:: @ 826A37F +Route110_TrickHousePuzzle7_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -689,7 +689,7 @@ Route110_TrickHousePuzzle7_EventScript_Door:: @ 826A37F releaseall end -Route110_TrickHousePuzzle8_EventScript_Door:: @ 826A3A8 +Route110_TrickHousePuzzle8_EventScript_Door:: compare VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0 goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT @@ -700,17 +700,17 @@ Route110_TrickHousePuzzle8_EventScript_Door:: @ 826A3A8 releaseall end -Route110_TrickHousePuzzle_EventScript_DoorLocked:: @ 826A3D1 +Route110_TrickHousePuzzle_EventScript_DoorLocked:: msgbox Route110_TrickHouseEntrance_Text_DoorLockedWriteSecretCodeHere, MSGBOX_DEFAULT releaseall end -Route110_TrickHousePuzzle_EventScript_ReadScrollAgain:: @ 826A3DB +Route110_TrickHousePuzzle_EventScript_ReadScrollAgain:: msgbox Route110_TrickHousePuzzle_Text_SecretCodeWrittenOnIt, MSGBOX_DEFAULT releaseall end -Route110_TrickHousePuzzle_EventScript_FoundScroll:: @ 826A3E5 +Route110_TrickHousePuzzle_EventScript_FoundScroll:: playfanfare MUS_OBTAIN_ITEM message Route110_TrickHousePuzzle_Text_FoundAScroll waitfanfare @@ -718,7 +718,7 @@ Route110_TrickHousePuzzle_EventScript_FoundScroll:: @ 826A3E5 releaseall end -Route110_TrickHouseEntrance_EventScript_TrickMasterHiding:: @ 826A3F8 +Route110_TrickHouseEntrance_EventScript_TrickMasterHiding:: lockall msgbox Route110_TrickHouseEntrance_Text_YoureBeingWatched, MSGBOX_DEFAULT releaseall @@ -731,75 +731,75 @@ Route110_TrickHouseEntrance_EventScript_TrickMasterHiding:: @ 826A3F8 setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end -Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1:: @ 826A429 +Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1:: setvar VAR_0x8004, 6 @ x setvar VAR_0x8005, 3 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return -Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2:: @ 826A439 +Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2:: setvar VAR_0x8004, 11 @ x setvar VAR_0x8005, 5 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return -Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3:: @ 826A449 +Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3:: setvar VAR_0x8004, 9 @ x setvar VAR_0x8005, 2 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return -Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle:: @ 826A459 +Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle:: setvar VAR_0x8006, 0 dofieldeffectsparkle VAR_0x8004, VAR_0x8005, VAR_0x8006 waitfieldeffect FLDEFF_SPARKLE delay 10 return -Route110_TrickHouseEntrance_Text_YoureBeingWatched: @ 826A474 +Route110_TrickHouseEntrance_Text_YoureBeingWatched: .string "You're being watched…$" -Route110_TrickHouseEntrance_Text_ConcealedBeneathDesk: @ 826A48A +Route110_TrickHouseEntrance_Text_ConcealedBeneathDesk: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "beneath this desk? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedBehindTree: @ 826A4DA +Route110_TrickHouseEntrance_Text_ConcealedBehindTree: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "behind this tree? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedInDresser: @ 826A529 +Route110_TrickHouseEntrance_Text_ConcealedInDresser: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "in this dresser? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConealedBeyondWindow: @ 826A577 +Route110_TrickHouseEntrance_Text_ConealedBeyondWindow: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "beyond this window? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedInPlanter: @ 826A5C8 +Route110_TrickHouseEntrance_Text_ConcealedInPlanter: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "in this planter? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedInCupboard: @ 826A616 +Route110_TrickHouseEntrance_Text_ConcealedInCupboard: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "in this cupboard? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedBehindWindow: @ 826A665 +Route110_TrickHouseEntrance_Text_ConcealedBehindWindow: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "behind this window? You're sharp!$" -Route110_TrickHouseEntrance_Text_ConcealedBeneathCushion: @ 826A6B6 +Route110_TrickHouseEntrance_Text_ConcealedBeneathCushion: .string "Hah? Grrr…\p" .string "How did you know I concealed myself\n" .string "beneath this cushion? You're sharp!$" -Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster: @ 826A709 +Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster: .string "Behold!\p" .string "For I am the greatest living mystery\n" .string "of a man in all of HOENN!\l" @@ -807,7 +807,7 @@ Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster: @ 826A709 .string "The TRICK MASTER!\n" .string "Wahahaha! Glad to meet you!$" -Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse: @ 826A78C +Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse: .string "You, you've come to challenge\n" .string "my TRICK HOUSE, haven't you?\p" .string "That's why you're here, isn't it?\n" @@ -817,25 +817,25 @@ Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse: @ 826A78C .string "and let your challenge commence!\p" .string "I shall be waiting in the back!$" -Route110_TrickHouseEntrance_Text_ItsAScroll: @ 826A878 +Route110_TrickHouseEntrance_Text_ItsAScroll: .string "It's a scroll.$" -Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll: @ 826A887 +Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll: .string "There is a big hole behind the scroll!\p" .string "Want to go in?$" -Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote: @ 826A8BD +Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote: .string "There is a note affixed to the scroll…\p" .string "“I am leaving on a journey.\n" .string "Don't look for me. TRICK MASTER”$" -Route110_TrickHouseEntrance_Text_NextTimeUseThisTrick: @ 826A921 +Route110_TrickHouseEntrance_Text_NextTimeUseThisTrick: .string "For the next time, I'll use this trick,\n" .string "and that scheme, and those ruses…\p" .string "Mufufufu… If I may say so, it's\n" .string "brilliantly difficult, even for me!$" -Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges: @ 826A9AF +Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges: .string "Hah? What?!\n" .string "Oh, it's you!\p" .string "I'm in the midst of devising new tricky\n" @@ -845,42 +845,42 @@ Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges: @ 826A9AF .string "You wouldn't begrudge me that?\l" .string "Come back in a little while!$" -Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward: @ 826AA82 +Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward: .string "Ah, it's you! You're here to accept the\n" .string "reward from before, isn't that right?\l" .string "Yes, right I am!\p" .string "Here!\n" .string "I'll give it to you now!$" -Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward: @ 826AB00 +Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward: .string "Hah?\n" .string "Did you not come to claim your reward?$" -Route110_TrickHouseEntrance_Text_MechadollWhichTent: @ 826AB2C +Route110_TrickHouseEntrance_Text_MechadollWhichTent: .string "MECHADOLL 5 I AM!\n" .string "IF REWARD IS NOT TAKEN BY YOU,\l" .string "THEN TRICK MASTER YOU CANNOT FOLLOW.\p" .string "RED TENT OR BLUE TENT,\n" .string "WHICH DO YOU PREFER?$" -Route110_TrickHouseEntrance_Text_ThenFarewell: @ 826ABAE +Route110_TrickHouseEntrance_Text_ThenFarewell: .string "THEN FAREWELL.$" -Route110_TrickHouseEntrance_Text_PCFullAgain: @ 826ABBD +Route110_TrickHouseEntrance_Text_PCFullAgain: .string "YOUR PC STATUS: FULL AGAIN.\n" .string "MEAN, YOU ARE.$" -Route110_TrickHousePuzzle_Text_FoundAScroll: @ 826ABE8 +Route110_TrickHousePuzzle_Text_FoundAScroll: .string "{PLAYER} found a scroll.$" -Route110_TrickHousePuzzle_Text_MemorizedSecretCode: @ 826ABFB +Route110_TrickHousePuzzle_Text_MemorizedSecretCode: .string "{PLAYER} memorized the secret code\n" .string "written on the scroll.$" -Route110_TrickHousePuzzle_Text_SecretCodeWrittenOnIt: @ 826AC2F +Route110_TrickHousePuzzle_Text_SecretCodeWrittenOnIt: .string "A secret code is written on it.$" -Route110_TrickHouseEntrance_Text_DoorLockedWriteSecretCodeHere: @ 826AC4F +Route110_TrickHouseEntrance_Text_DoorLockedWriteSecretCodeHere: .string "The door is locked.\p" .string "…On closer inspection, this is written\n" .string "on it: “Write the secret code here.”$" diff --git a/data/maps/Route110_TrickHousePuzzle1/scripts.inc b/data/maps/Route110_TrickHousePuzzle1/scripts.inc index 3797ec29dcba..6fc6adcd5622 100644 --- a/data/maps/Route110_TrickHousePuzzle1/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle1/scripts.inc @@ -1,79 +1,79 @@ -Route110_TrickHousePuzzle1_MapScripts:: @ 826B90F +Route110_TrickHousePuzzle1_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, Route110_TrickHousePuzzle1_OnLoad .byte 0 -Route110_TrickHousePuzzle1_OnLoad: @ 826B915 +Route110_TrickHousePuzzle1_OnLoad: compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2 goto_if_eq Route110_TrickHousePuzzle1_EventScript_OpenDoor end -Route110_TrickHousePuzzle1_EventScript_OpenDoor:: @ 826B921 +Route110_TrickHousePuzzle1_EventScript_OpenDoor:: setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 end -Route110_TrickHousePuzzle1_EventScript_Scroll:: @ 826B92B +Route110_TrickHousePuzzle1_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0 goto_if_eq Route110_TrickHousePuzzle1_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle1_EventScript_FoundScroll:: @ 826B93D +Route110_TrickHousePuzzle1_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_1_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle1_EventScript_Sally:: @ 826B948 +Route110_TrickHousePuzzle1_EventScript_Sally:: trainerbattle_single TRAINER_SALLY, Route110_TrickHousePuzzle1_Text_SallyIntro, Route110_TrickHousePuzzle1_Text_SallyDefeat msgbox Route110_TrickHousePuzzle1_Text_SallyPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle1_EventScript_Eddie:: @ 826B95F +Route110_TrickHousePuzzle1_EventScript_Eddie:: trainerbattle_single TRAINER_EDDIE, Route110_TrickHousePuzzle1_Text_EddieIntro, Route110_TrickHousePuzzle1_Text_EddieDefeat msgbox Route110_TrickHousePuzzle1_Text_EddiePostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle1_EventScript_Robin:: @ 826B976 +Route110_TrickHousePuzzle1_EventScript_Robin:: trainerbattle_single TRAINER_ROBIN, Route110_TrickHousePuzzle1_Text_RobinIntro, Route110_TrickHousePuzzle1_Text_RobinDefeat msgbox Route110_TrickHousePuzzle1_Text_RobinPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened:: @ 826B98D +Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened:: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is fabulous.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle1_Text_SallyIntro: @ 826B9FB +Route110_TrickHousePuzzle1_Text_SallyIntro: .string "I'll hack and slash my way to victory\n" .string "with the CUT we just learned!$" -Route110_TrickHousePuzzle1_Text_SallyDefeat: @ 826BA3F +Route110_TrickHousePuzzle1_Text_SallyDefeat: .string "Why are you so serious?$" -Route110_TrickHousePuzzle1_Text_SallyPostBattle: @ 826BA57 +Route110_TrickHousePuzzle1_Text_SallyPostBattle: .string "I never get tired of hacking\n" .string "and slashing!$" -Route110_TrickHousePuzzle1_Text_EddieIntro: @ 826BA82 +Route110_TrickHousePuzzle1_Text_EddieIntro: .string "I wandered into this weird house\n" .string "by accident…$" -Route110_TrickHousePuzzle1_Text_EddieDefeat: @ 826BAB0 +Route110_TrickHousePuzzle1_Text_EddieDefeat: .string "And now I've lost…$" -Route110_TrickHousePuzzle1_Text_EddiePostBattle: @ 826BAC3 +Route110_TrickHousePuzzle1_Text_EddiePostBattle: .string "I lost my way, I lost a battle, and I'm\n" .string "now even more lost… I can't get out…$" -Route110_TrickHousePuzzle1_Text_RobinIntro: @ 826BB10 +Route110_TrickHousePuzzle1_Text_RobinIntro: .string "Just who is the TRICK MASTER?$" -Route110_TrickHousePuzzle1_Text_RobinDefeat: @ 826BB2E +Route110_TrickHousePuzzle1_Text_RobinDefeat: .string "I lost while I was lost in thought!$" -Route110_TrickHousePuzzle1_Text_RobinPostBattle: @ 826BB52 +Route110_TrickHousePuzzle1_Text_RobinPostBattle: .string "You're strong!\n" .string "Just who are you?$" diff --git a/data/maps/Route110_TrickHousePuzzle2/scripts.inc b/data/maps/Route110_TrickHousePuzzle2/scripts.inc index 2b65ca95cd73..a0222733a9dd 100644 --- a/data/maps/Route110_TrickHousePuzzle2/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle2/scripts.inc @@ -1,9 +1,9 @@ -Route110_TrickHousePuzzle2_MapScripts:: @ 826BB73 +Route110_TrickHousePuzzle2_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHousePuzzle2_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle2_OnTransition .byte 0 -Route110_TrickHousePuzzle2_OnResume: @ 826BB7E +Route110_TrickHousePuzzle2_OnResume: compare VAR_TEMP_1, 1 call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton1 compare VAR_TEMP_2, 1 @@ -14,26 +14,26 @@ Route110_TrickHousePuzzle2_OnResume: @ 826BB7E call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton4 end -Route110_TrickHousePuzzle2_OnTransition: @ 826BBAB +Route110_TrickHousePuzzle2_OnTransition: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 setvar VAR_TEMP_4, 0 end -Route110_TrickHousePuzzle2_EventScript_Scroll:: @ 826BBC0 +Route110_TrickHousePuzzle2_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0 goto_if_eq Route110_TrickHousePuzzle2_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle2_EventScript_FoundScroll:: @ 826BBD2 +Route110_TrickHousePuzzle2_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_2_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle2_EventScript_Button1:: @ 826BBDD +Route110_TrickHousePuzzle2_EventScript_Button1:: lockall setvar VAR_TEMP_1, 1 playse SE_PIN @@ -42,7 +42,7 @@ Route110_TrickHousePuzzle2_EventScript_Button1:: @ 826BBDD releaseall end -Route110_TrickHousePuzzle2_EventScript_Button2:: @ 826BBF0 +Route110_TrickHousePuzzle2_EventScript_Button2:: lockall setvar VAR_TEMP_2, 1 playse SE_PIN @@ -51,7 +51,7 @@ Route110_TrickHousePuzzle2_EventScript_Button2:: @ 826BBF0 releaseall end -Route110_TrickHousePuzzle2_EventScript_Button3:: @ 826BC03 +Route110_TrickHousePuzzle2_EventScript_Button3:: lockall setvar VAR_TEMP_3, 1 playse SE_PIN @@ -60,7 +60,7 @@ Route110_TrickHousePuzzle2_EventScript_Button3:: @ 826BC03 releaseall end -Route110_TrickHousePuzzle2_EventScript_Button4:: @ 826BC16 +Route110_TrickHousePuzzle2_EventScript_Button4:: lockall setvar VAR_TEMP_4, 1 playse SE_PIN @@ -69,78 +69,78 @@ Route110_TrickHousePuzzle2_EventScript_Button4:: @ 826BC16 releaseall end -Route110_TrickHousePuzzle2_EventScript_PressButton1:: @ 826BC29 +Route110_TrickHousePuzzle2_EventScript_PressButton1:: setmetatile 11, 12, METATILE_TrickHousePuzzle_Button_Pressed, 0 setmetatile 1, 13, METATILE_TrickHousePuzzle_Door_Shuttered, 0 return -Route110_TrickHousePuzzle2_EventScript_PressButton2:: @ 826BC3C +Route110_TrickHousePuzzle2_EventScript_PressButton2:: setmetatile 0, 4, METATILE_TrickHousePuzzle_Button_Pressed, 0 setmetatile 5, 6, METATILE_TrickHousePuzzle_Door_Shuttered, 0 return -Route110_TrickHousePuzzle2_EventScript_PressButton3:: @ 826BC4F +Route110_TrickHousePuzzle2_EventScript_PressButton3:: setmetatile 14, 5, METATILE_TrickHousePuzzle_Button_Pressed, 0 setmetatile 7, 15, METATILE_TrickHousePuzzle_Door_Shuttered, 0 return -Route110_TrickHousePuzzle2_EventScript_PressButton4:: @ 826BC62 +Route110_TrickHousePuzzle2_EventScript_PressButton4:: setmetatile 7, 11, METATILE_TrickHousePuzzle_Button_Pressed, 0 setmetatile 14, 12, METATILE_TrickHousePuzzle_Door_Shuttered, 0 return -Route110_TrickHousePuzzle2_EventScript_Ted:: @ 826BC75 +Route110_TrickHousePuzzle2_EventScript_Ted:: trainerbattle_single TRAINER_TED, Route110_TrickHousePuzzle2_Text_TedIntro, Route110_TrickHousePuzzle2_Text_TedDefeat msgbox Route110_TrickHousePuzzle2_Text_TedPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle2_EventScript_Paul:: @ 826BC8C +Route110_TrickHousePuzzle2_EventScript_Paul:: trainerbattle_single TRAINER_PAUL, Route110_TrickHousePuzzle2_Text_PaulIntro, Route110_TrickHousePuzzle2_Text_PaulDefeat msgbox Route110_TrickHousePuzzle2_Text_PaulPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle2_EventScript_Georgia:: @ 826BCA3 +Route110_TrickHousePuzzle2_EventScript_Georgia:: trainerbattle_single TRAINER_GEORGIA, Route110_TrickHousePuzzle2_Text_GeorgiaIntro, Route110_TrickHousePuzzle2_Text_GeorgiaDefeat msgbox Route110_TrickHousePuzzle2_Text_GeorgiaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened: @ 826BCBA +Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is smart.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle2_Text_TedIntro: @ 826BD25 +Route110_TrickHousePuzzle2_Text_TedIntro: .string "Which switch closes which hole?$" -Route110_TrickHousePuzzle2_Text_TedDefeat: @ 826BD45 +Route110_TrickHousePuzzle2_Text_TedDefeat: .string "After that battle, I'm even more\n" .string "confused!$" -Route110_TrickHousePuzzle2_Text_TedPostBattle: @ 826BD70 +Route110_TrickHousePuzzle2_Text_TedPostBattle: .string "Can I get you to push all the buttons\n" .string "for me?$" -Route110_TrickHousePuzzle2_Text_PaulIntro: @ 826BD9E +Route110_TrickHousePuzzle2_Text_PaulIntro: .string "Oh! You're on your second TRICK HOUSE\n" .string "challenge!$" -Route110_TrickHousePuzzle2_Text_PaulDefeat: @ 826BDCF +Route110_TrickHousePuzzle2_Text_PaulDefeat: .string "You're good at battling too?$" -Route110_TrickHousePuzzle2_Text_PaulPostBattle: @ 826BDEC +Route110_TrickHousePuzzle2_Text_PaulPostBattle: .string "The TRICK MASTER rigged all the tricks\n" .string "in this house all by himself.$" -Route110_TrickHousePuzzle2_Text_GeorgiaIntro: @ 826BE31 +Route110_TrickHousePuzzle2_Text_GeorgiaIntro: .string "I want to make my own GYM one day.\n" .string "So, I'm studying how to set traps.$" -Route110_TrickHousePuzzle2_Text_GeorgiaDefeat: @ 826BE77 +Route110_TrickHousePuzzle2_Text_GeorgiaDefeat: .string "I didn't study battling enough!$" -Route110_TrickHousePuzzle2_Text_GeorgiaPostBattle: @ 826BE97 +Route110_TrickHousePuzzle2_Text_GeorgiaPostBattle: .string "You're strong, aren't you?\n" .string "Maybe even enough to be a GYM LEADER!$" diff --git a/data/maps/Route110_TrickHousePuzzle3/scripts.inc b/data/maps/Route110_TrickHousePuzzle3/scripts.inc index ddad0d549327..4e706268c0ca 100644 --- a/data/maps/Route110_TrickHousePuzzle3/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle3/scripts.inc @@ -1,9 +1,9 @@ -Route110_TrickHousePuzzle3_MapScripts:: @ 826BED8 +Route110_TrickHousePuzzle3_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHousePuzzle3_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle3_OnTransition .byte 0 -Route110_TrickHousePuzzle3_OnResume: @ 826BEE3 +Route110_TrickHousePuzzle3_OnResume: call Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles compare VAR_TEMP_9, 0 call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 @@ -11,7 +11,7 @@ Route110_TrickHousePuzzle3_OnResume: @ 826BEE3 call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState1 end -Route110_TrickHousePuzzle3_OnTransition: @ 826BEFF +Route110_TrickHousePuzzle3_OnTransition: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 @@ -20,7 +20,7 @@ Route110_TrickHousePuzzle3_OnTransition: @ 826BEFF setvar VAR_TEMP_9, 0 end -Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: @ 826BF1E +Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Up, 0 setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Up, 0 setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Up, 0 @@ -35,23 +35,23 @@ Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: @ 826BF1E call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile return -Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile:: @ 826BF6F +Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile:: setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Pressed, 0 return -Route110_TrickHousePuzzle3_EventScript_PressedButton2Metatile:: @ 826BF79 +Route110_TrickHousePuzzle3_EventScript_PressedButton2Metatile:: setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Pressed, 0 return -Route110_TrickHousePuzzle3_EventScript_PressedButton3Metatile:: @ 826BF83 +Route110_TrickHousePuzzle3_EventScript_PressedButton3Metatile:: setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Pressed, 0 return -Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile:: @ 826BF8D +Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile:: setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Pressed, 0 return -Route110_TrickHousePuzzle3_EventScript_SetDoorsState0:: @ 826BF97 +Route110_TrickHousePuzzle3_EventScript_SetDoorsState0:: setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 @@ -128,7 +128,7 @@ Route110_TrickHousePuzzle3_EventScript_SetDoorsState0:: @ 826BF97 setmetatile 9, 5, METATILE_TrickHousePuzzle_RedDoorV_Open1, 1 return -Route110_TrickHousePuzzle3_EventScript_SetDoorsState1:: @ 826C232 +Route110_TrickHousePuzzle3_EventScript_SetDoorsState1:: setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 @@ -205,38 +205,38 @@ Route110_TrickHousePuzzle3_EventScript_SetDoorsState1:: @ 826C232 setmetatile 9, 5, METATILE_TrickHousePuzzle_Floor_ShadowTop_Alt, 0 return -Route110_TrickHousePuzzle3_EventScript_Button1:: @ 826C4CD +Route110_TrickHousePuzzle3_EventScript_Button1:: lockall setvar VAR_TEMP_8, 1 goto Route110_TrickHousePuzzle3_EventScript_PressButton end -Route110_TrickHousePuzzle3_EventScript_Button2:: @ 826C4D9 +Route110_TrickHousePuzzle3_EventScript_Button2:: lockall setvar VAR_TEMP_8, 2 goto Route110_TrickHousePuzzle3_EventScript_PressButton end -Route110_TrickHousePuzzle3_EventScript_Button3:: @ 826C4E5 +Route110_TrickHousePuzzle3_EventScript_Button3:: lockall setvar VAR_TEMP_8, 3 goto Route110_TrickHousePuzzle3_EventScript_PressButton end -Route110_TrickHousePuzzle3_EventScript_Button4:: @ 826C4F1 +Route110_TrickHousePuzzle3_EventScript_Button4:: lockall setvar VAR_TEMP_8, 4 goto Route110_TrickHousePuzzle3_EventScript_PressButton end -Route110_TrickHousePuzzle3_EventScript_PressButton:: @ 826C4FD +Route110_TrickHousePuzzle3_EventScript_PressButton:: call Route110_TrickHousePuzzle3_EventScript_SetButton playse SE_PIN call Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles goto Route110_TrickHousePuzzle3_EventScript_AlternateDoors end -Route110_TrickHousePuzzle3_EventScript_SetButton:: @ 826C510 +Route110_TrickHousePuzzle3_EventScript_SetButton:: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 @@ -251,23 +251,23 @@ Route110_TrickHousePuzzle3_EventScript_SetButton:: @ 826C510 call_if_eq Route110_TrickHousePuzzle3_EventScript_SetButton4 return -Route110_TrickHousePuzzle3_EventScript_SetButton1:: @ 826C551 +Route110_TrickHousePuzzle3_EventScript_SetButton1:: setvar VAR_TEMP_1, 1 return -Route110_TrickHousePuzzle3_EventScript_SetButton2:: @ 826C557 +Route110_TrickHousePuzzle3_EventScript_SetButton2:: setvar VAR_TEMP_2, 1 return -Route110_TrickHousePuzzle3_EventScript_SetButton3:: @ 826C55D +Route110_TrickHousePuzzle3_EventScript_SetButton3:: setvar VAR_TEMP_3, 1 return -Route110_TrickHousePuzzle3_EventScript_SetButton4:: @ 826C563 +Route110_TrickHousePuzzle3_EventScript_SetButton4:: setvar VAR_TEMP_4, 1 return -Route110_TrickHousePuzzle3_EventScript_AlternateDoors:: @ 826C569 +Route110_TrickHousePuzzle3_EventScript_AlternateDoors:: compare VAR_TEMP_9, 1 call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 compare VAR_TEMP_9, 0 @@ -279,81 +279,81 @@ Route110_TrickHousePuzzle3_EventScript_AlternateDoors:: @ 826C569 goto_if_eq Route110_TrickHousePuzzle3_EventScript_SetAltDoorState end -Route110_TrickHousePuzzle3_EventScript_ClearAltDoorState:: @ 826C599 +Route110_TrickHousePuzzle3_EventScript_ClearAltDoorState:: setvar VAR_TEMP_9, 0 releaseall end -Route110_TrickHousePuzzle3_EventScript_SetAltDoorState:: @ 826C5A0 +Route110_TrickHousePuzzle3_EventScript_SetAltDoorState:: setvar VAR_TEMP_9, 1 releaseall end -Route110_TrickHousePuzzle3_EventScript_Scroll:: @ 826C5A7 +Route110_TrickHousePuzzle3_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0 goto_if_eq Route110_TrickHousePuzzle3_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle3_EventScript_FoundScroll:: @ 826C5B9 +Route110_TrickHousePuzzle3_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_3_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle3_EventScript_Justin:: @ 826C5C4 +Route110_TrickHousePuzzle3_EventScript_Justin:: trainerbattle_single TRAINER_JUSTIN, Route110_TrickHousePuzzle3_Text_JustinIntro, Route110_TrickHousePuzzle3_Text_JustinDefeat msgbox Route110_TrickHousePuzzle3_Text_JustinPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle3_EventScript_Martha:: @ 826C5DB +Route110_TrickHousePuzzle3_EventScript_Martha:: trainerbattle_single TRAINER_MARTHA, Route110_TrickHousePuzzle3_Text_MarthaIntro, Route110_TrickHousePuzzle3_Text_MarthaDefeat msgbox Route110_TrickHousePuzzle3_Text_MarthaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle3_EventScript_Alan:: @ 826C5F2 +Route110_TrickHousePuzzle3_EventScript_Alan:: trainerbattle_single TRAINER_ALAN, Route110_TrickHousePuzzle3_Text_AlanIntro, Route110_TrickHousePuzzle3_Text_AlanDefeat msgbox Route110_TrickHousePuzzle3_Text_AlanPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened: @ 826C609 +Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is coveted.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle3_Text_JustinIntro: @ 826C676 +Route110_TrickHousePuzzle3_Text_JustinIntro: .string "I keep coming back to this same place!$" -Route110_TrickHousePuzzle3_Text_JustinDefeat: @ 826C69D +Route110_TrickHousePuzzle3_Text_JustinDefeat: .string "I'm already having trouble, and then\n" .string "you have to beat me? It's not fair!$" -Route110_TrickHousePuzzle3_Text_JustinPostBattle: @ 826C6E6 +Route110_TrickHousePuzzle3_Text_JustinPostBattle: .string "It's full of doors here!\n" .string "It's too small and dark in here! Help!$" -Route110_TrickHousePuzzle3_Text_MarthaIntro: @ 826C726 +Route110_TrickHousePuzzle3_Text_MarthaIntro: .string "I don't know what's going on here.\n" .string "I'm starting to feel sad…$" -Route110_TrickHousePuzzle3_Text_MarthaDefeat: @ 826C763 +Route110_TrickHousePuzzle3_Text_MarthaDefeat: .string "You… You're awful!$" -Route110_TrickHousePuzzle3_Text_MarthaPostBattle: @ 826C776 +Route110_TrickHousePuzzle3_Text_MarthaPostBattle: .string "I know I'm weak!\n" .string "And, I have no sense of direction!$" -Route110_TrickHousePuzzle3_Text_AlanIntro: @ 826C7AA +Route110_TrickHousePuzzle3_Text_AlanIntro: .string "I don't get it. What would anyone want\n" .string "with a house this bizarre?$" -Route110_TrickHousePuzzle3_Text_AlanDefeat: @ 826C7EC +Route110_TrickHousePuzzle3_Text_AlanDefeat: .string "I don't get it.\n" .string "How did I lose?$" -Route110_TrickHousePuzzle3_Text_AlanPostBattle: @ 826C80C +Route110_TrickHousePuzzle3_Text_AlanPostBattle: .string "I don't get it.\n" .string "How many traps are in this house?\p" .string "You may be the one to solve that.$" diff --git a/data/maps/Route110_TrickHousePuzzle4/scripts.inc b/data/maps/Route110_TrickHousePuzzle4/scripts.inc index 44610a10f7be..10f49adb50ef 100644 --- a/data/maps/Route110_TrickHousePuzzle4/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle4/scripts.inc @@ -1,71 +1,71 @@ -Route110_TrickHousePuzzle4_MapScripts:: @ 826C860 +Route110_TrickHousePuzzle4_MapScripts:: .byte 0 -Route110_TrickHousePuzzle4_EventScript_Scroll:: @ 826C861 +Route110_TrickHousePuzzle4_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0 goto_if_eq Route110_TrickHousePuzzle4_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle4_EventScript_FoundScroll:: @ 826C873 +Route110_TrickHousePuzzle4_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_4_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle4_EventScript_Cora:: @ 826C87E +Route110_TrickHousePuzzle4_EventScript_Cora:: trainerbattle_single TRAINER_CORA, Route110_TrickHousePuzzle4_Text_CoraIntro, Route110_TrickHousePuzzle4_Text_CoraDefeat msgbox Route110_TrickHousePuzzle4_Text_CoraPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle4_EventScript_Yuji:: @ 826C895 +Route110_TrickHousePuzzle4_EventScript_Yuji:: trainerbattle_single TRAINER_YUJI, Route110_TrickHousePuzzle4_Text_YujiIntro, Route110_TrickHousePuzzle4_Text_YujiDefeat msgbox Route110_TrickHousePuzzle4_Text_YujiPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle4_EventScript_Paula:: @ 826C8AC +Route110_TrickHousePuzzle4_EventScript_Paula:: trainerbattle_single TRAINER_PAULA, Route110_TrickHousePuzzle4_Text_PaulaIntro, Route110_TrickHousePuzzle4_Text_PaulaDefeat msgbox Route110_TrickHousePuzzle4_Text_PaulaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened: @ 826C8C3 +Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is cool.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle4_Text_CoraIntro: @ 826C92D +Route110_TrickHousePuzzle4_Text_CoraIntro: .string "It's too much bother to think this out.\n" .string "I only wanted to battle!$" -Route110_TrickHousePuzzle4_Text_CoraDefeat: @ 826C96E +Route110_TrickHousePuzzle4_Text_CoraDefeat: .string "Even though I lost, I still like battling\n" .string "the best!$" -Route110_TrickHousePuzzle4_Text_CoraPostBattle: @ 826C9A2 +Route110_TrickHousePuzzle4_Text_CoraPostBattle: .string "Wouldn't you agree? You would go\n" .string "anywhere if TRAINERS were there.$" -Route110_TrickHousePuzzle4_Text_YujiIntro: @ 826C9E4 +Route110_TrickHousePuzzle4_Text_YujiIntro: .string "Heh! Boulders like this, I can brush\n" .string "aside with one finger!$" -Route110_TrickHousePuzzle4_Text_YujiDefeat: @ 826CA20 +Route110_TrickHousePuzzle4_Text_YujiDefeat: .string "I can push boulders, but I can't solve\n" .string "the puzzle…$" -Route110_TrickHousePuzzle4_Text_YujiPostBattle: @ 826CA53 +Route110_TrickHousePuzzle4_Text_YujiPostBattle: .string "It's not good enough to be brawny…\n" .string "You have to use your head. Be brainy!$" -Route110_TrickHousePuzzle4_Text_PaulaIntro: @ 826CA9C +Route110_TrickHousePuzzle4_Text_PaulaIntro: .string "The TRICK HOUSE is getting trickier,\n" .string "isn't it?$" -Route110_TrickHousePuzzle4_Text_PaulaDefeat: @ 826CACB +Route110_TrickHousePuzzle4_Text_PaulaDefeat: .string "Aaak!$" -Route110_TrickHousePuzzle4_Text_PaulaPostBattle: @ 826CAD1 +Route110_TrickHousePuzzle4_Text_PaulaPostBattle: .string "Has anyone made it to the end?$" diff --git a/data/maps/Route110_TrickHousePuzzle5/scripts.inc b/data/maps/Route110_TrickHousePuzzle5/scripts.inc index 9c66a2c8f905..3c574441ec92 100644 --- a/data/maps/Route110_TrickHousePuzzle5/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle5/scripts.inc @@ -4,11 +4,11 @@ .set LOCALID_MECHADOLL_4, 4 .set LOCALID_MECHADOLL_5, 5 -Route110_TrickHousePuzzle5_MapScripts:: @ 826CAF0 +Route110_TrickHousePuzzle5_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle5_OnTransition .byte 0 -Route110_TrickHousePuzzle5_OnTransition: @ 826CAF6 +Route110_TrickHousePuzzle5_OnTransition: setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 @@ -17,19 +17,19 @@ Route110_TrickHousePuzzle5_OnTransition: @ 826CAF6 setvar VAR_TEMP_8, 0 end -Route110_TrickHousePuzzle5_EventScript_Scroll:: @ 826CB15 +Route110_TrickHousePuzzle5_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0 goto_if_eq Route110_TrickHousePuzzle5_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle5_EventScript_FoundScroll:: @ 826CB27 +Route110_TrickHousePuzzle5_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_5_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1:: @ 826CB32 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1:: lockall applymovement LOCALID_MECHADOLL_1, Common_Movement_FacePlayer waitmovement 0 @@ -39,7 +39,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1:: @ 826CB32 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2:: @ 826CB53 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2:: lockall applymovement LOCALID_MECHADOLL_2, Common_Movement_FacePlayer waitmovement 0 @@ -49,7 +49,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2:: @ 826CB53 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3:: @ 826CB74 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3:: lockall applymovement LOCALID_MECHADOLL_3, Common_Movement_FacePlayer waitmovement 0 @@ -59,7 +59,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3:: @ 826CB74 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4:: @ 826CB95 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4:: lockall applymovement LOCALID_MECHADOLL_4, Common_Movement_FacePlayer waitmovement 0 @@ -69,7 +69,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4:: @ 826CB95 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5:: @ 826CBB6 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5:: lockall applymovement LOCALID_MECHADOLL_5, Common_Movement_FacePlayer waitmovement 0 @@ -79,146 +79,146 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5:: @ 826CBB6 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger0:: @ 826CBD7 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger0:: lockall setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger1:: @ 826CBE3 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger1:: lockall setvar VAR_TEMP_9, 1 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger2:: @ 826CBEF +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger2:: lockall setvar VAR_TEMP_9, 2 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger3:: @ 826CBFB +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger3:: lockall setvar VAR_TEMP_9, 3 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger4:: @ 826CC07 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Trigger4:: lockall setvar VAR_TEMP_9, 4 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger0:: @ 826CC13 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger0:: lockall setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger1:: @ 826CC1F +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger1:: lockall setvar VAR_TEMP_9, 1 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger2:: @ 826CC2B +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger2:: lockall setvar VAR_TEMP_9, 2 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger3:: @ 826CC37 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger3:: lockall setvar VAR_TEMP_9, 3 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger4:: @ 826CC43 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger4:: lockall setvar VAR_TEMP_9, 4 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger5:: @ 826CC4F +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Trigger5:: lockall setvar VAR_TEMP_9, 5 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger0:: @ 826CC5B +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger0:: lockall setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger1:: @ 826CC67 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger1:: lockall setvar VAR_TEMP_9, 1 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger2:: @ 826CC73 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger2:: lockall setvar VAR_TEMP_9, 2 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger3:: @ 826CC7F +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger3:: lockall setvar VAR_TEMP_9, 3 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger4:: @ 826CC8B +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Trigger4:: lockall setvar VAR_TEMP_9, 4 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger0:: @ 826CC97 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger0:: lockall setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger1:: @ 826CCA3 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger1:: lockall setvar VAR_TEMP_9, 1 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger2:: @ 826CCAF +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger2:: lockall setvar VAR_TEMP_9, 2 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger3:: @ 826CCBB +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger3:: lockall setvar VAR_TEMP_9, 3 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger4:: @ 826CCC7 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger4:: lockall setvar VAR_TEMP_9, 4 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end @ Unused -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger5:: @ 826CCD3 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Trigger5:: lockall setvar VAR_TEMP_9, 5 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5Trigger0:: @ 826CCDF +Route110_TrickHousePuzzle5_EventScript_Mechadoll5Trigger0:: lockall setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate:: @ 826CCEB +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate:: setvar VAR_TEMP_1, 1 setvar VAR_TEMP_8, LOCALID_MECHADOLL_1 playse SE_PIN @@ -242,7 +242,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate:: @ 826CCEB case 2, Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3 end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate:: @ 826CD6A +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate:: setvar VAR_TEMP_2, 1 setvar VAR_TEMP_8, LOCALID_MECHADOLL_2 playse SE_PIN @@ -268,7 +268,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate:: @ 826CD6A case 2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3 end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate:: @ 826CDF4 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate:: setvar VAR_TEMP_3, 1 setvar VAR_TEMP_8, LOCALID_MECHADOLL_3 playse SE_PIN @@ -292,7 +292,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate:: @ 826CDF4 case 2, Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3 end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate:: @ 826CE73 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate:: setvar VAR_TEMP_4, 1 setvar VAR_TEMP_8, LOCALID_MECHADOLL_4 playse SE_PIN @@ -316,7 +316,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate:: @ 826CE73 case 2, Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3 end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate:: @ 826CEF2 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate:: setvar VAR_TEMP_5, 1 setvar VAR_TEMP_8, LOCALID_MECHADOLL_5 playse SE_PIN @@ -332,7 +332,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate:: @ 826CEF2 case 2, Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz3 end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz1:: @ 826CF45 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz1:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz1, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL1_Q1, TRUE switch VAR_RESULT @@ -340,7 +340,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz1:: @ 826CF45 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz2:: @ 826CF68 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz2:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz2, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL1_Q2, TRUE switch VAR_RESULT @@ -348,7 +348,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz2:: @ 826CF68 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3:: @ 826CF8B +Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz3, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL1_Q3, TRUE switch VAR_RESULT @@ -356,7 +356,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Quiz3:: @ 826CF8B goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz1:: @ 826CFAE +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz1:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz1, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL2_Q1, TRUE switch VAR_RESULT @@ -364,7 +364,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz1:: @ 826CFAE goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz2:: @ 826CFD1 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz2:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz2, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL2_Q2, TRUE switch VAR_RESULT @@ -372,7 +372,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz2:: @ 826CFD1 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3:: @ 826CFF4 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz3, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL2_Q3, TRUE switch VAR_RESULT @@ -380,7 +380,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Quiz3:: @ 826CFF4 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz1:: @ 826D017 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz1:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz1, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL3_Q1, TRUE switch VAR_RESULT @@ -388,7 +388,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz1:: @ 826D017 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz2:: @ 826D03A +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz2:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz2, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL3_Q2, TRUE switch VAR_RESULT @@ -396,7 +396,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz2:: @ 826D03A goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3:: @ 826D05D +Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz3, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL3_Q3, TRUE switch VAR_RESULT @@ -404,7 +404,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Quiz3:: @ 826D05D goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz1:: @ 826D080 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz1:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz1, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL4_Q1, TRUE switch VAR_RESULT @@ -412,7 +412,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz1:: @ 826D080 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz2:: @ 826D0A3 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz2:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz2, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL4_Q2, TRUE switch VAR_RESULT @@ -420,7 +420,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz2:: @ 826D0A3 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3:: @ 826D0C6 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz3, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL4_Q3, TRUE switch VAR_RESULT @@ -428,7 +428,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Quiz3:: @ 826D0C6 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz1:: @ 826D0E9 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz1:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz1, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL5_Q1, TRUE switch VAR_RESULT @@ -436,7 +436,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz1:: @ 826D0E9 goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz2:: @ 826D10C +Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz2:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz2, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL5_Q2, TRUE switch VAR_RESULT @@ -444,7 +444,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz2:: @ 826D10C goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz3:: @ 826D12F +Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz3:: msgbox Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz3, MSGBOX_DEFAULT multichoice 0, 0, MULTI_MECHADOLL5_Q3, TRUE switch VAR_RESULT @@ -452,7 +452,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5Quiz3:: @ 826D12F goto Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer end -Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer:: @ 826D152 +Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer:: waitse playse SE_FAILURE msgbox Route110_TrickHousePuzzle5_Text_DisappointmentError, MSGBOX_DEFAULT @@ -470,13 +470,13 @@ Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer:: @ 826D152 releaseall end -Route110_TrickHousePuzzle5_EventScript_CorrectAnswer:: @ 826D1A0 +Route110_TrickHousePuzzle5_EventScript_CorrectAnswer:: waitse playse SE_SUCCESS goto Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough end -Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough:: @ 826D1AA +Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough:: msgbox Route110_TrickHousePuzzle5_Text_CorrectGoThrough, MSGBOX_DEFAULT releaseall end @@ -486,7 +486,7 @@ Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough:: @ 826D1AA @ Mechadoll 2 is the only mechadoll to walk right, all the other WalkRight scripts are unused @ Mechadoll 5 never walks, all the Mechadoll5Walk scripts are unused @ No mechadoll walks left 5 paces, all the WalkLeft5 scripts are unused -Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1:: @ 826D1B4 +Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -499,7 +499,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1:: @ 826D1B4 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft1 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2:: @ 826D1EC +Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft2 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -512,7 +512,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2:: @ 826D1EC call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft2 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3:: @ 826D224 +Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft3 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -525,7 +525,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3:: @ 826D224 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft3 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4:: @ 826D25C +Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft4 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -538,7 +538,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4:: @ 826D25C call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft4 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft5:: @ 826D294 +Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft5:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft5 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -551,7 +551,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft5:: @ 826D294 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft5 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1:: @ 826D2CC +Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight1 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -564,7 +564,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1:: @ 826D2CC call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight1 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2:: @ 826D304 +Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight2 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -577,7 +577,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2:: @ 826D304 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight2 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3:: @ 826D33C +Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight3 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -590,7 +590,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3:: @ 826D33C call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight3 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4:: @ 826D374 +Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight4 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -603,7 +603,7 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4:: @ 826D374 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight4 return -Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5:: @ 826D3AC +Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5:: compare VAR_TEMP_8, LOCALID_MECHADOLL_1 call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight5 compare VAR_TEMP_8, LOCALID_MECHADOLL_2 @@ -616,279 +616,279 @@ Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5:: @ 826D3AC call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight5 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1:: @ 826D3E4 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkLeft1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft1:: @ 826D3EF +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft1:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkLeft1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft1:: @ 826D3FA +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft1:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkLeft1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft1:: @ 826D405 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft1:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkLeft1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft1:: @ 826D410 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft1:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkLeft1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft2:: @ 826D41B +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft2:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkLeft2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft2:: @ 826D426 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft2:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkLeft2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft2:: @ 826D431 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft2:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkLeft2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft2:: @ 826D43C +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft2:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkLeft2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft2:: @ 826D447 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft2:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkLeft2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft3:: @ 826D452 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft3:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkLeft3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft3:: @ 826D45D +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft3:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkLeft3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft3:: @ 826D468 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft3:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkLeft3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft3:: @ 826D473 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft3:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkLeft3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft3:: @ 826D47E +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft3:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkLeft3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft4:: @ 826D489 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft4:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkLeft4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft4:: @ 826D494 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft4:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkLeft4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft4:: @ 826D49F +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft4:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkLeft4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft4:: @ 826D4AA +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft4:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkLeft4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft4:: @ 826D4B5 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft4:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkLeft4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft5:: @ 826D4C0 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft5:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkLeft5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft5:: @ 826D4CB +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft5:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkLeft5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft5:: @ 826D4D6 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft5:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkLeft5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft5:: @ 826D4E1 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft5:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkLeft5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft5:: @ 826D4EC +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft5:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkLeft5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight1:: @ 826D4F7 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight1:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkRight1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight1:: @ 826D502 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight1:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkRight1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight1:: @ 826D50D +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight1:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkRight1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight1:: @ 826D518 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight1:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkRight1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight1:: @ 826D523 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight1:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkRight1 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight2:: @ 826D52E +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight2:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkRight2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight2:: @ 826D539 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight2:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkRight2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight2:: @ 826D544 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight2:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkRight2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight2:: @ 826D54F +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight2:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkRight2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight2:: @ 826D55A +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight2:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkRight2 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight3:: @ 826D565 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight3:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkRight3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight3:: @ 826D570 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight3:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkRight3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight3:: @ 826D57B +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight3:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkRight3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight3:: @ 826D586 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight3:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkRight3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight3:: @ 826D591 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight3:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkRight3 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight4:: @ 826D59C +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight4:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkRight4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight4:: @ 826D5A7 +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight4:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkRight4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight4:: @ 826D5B2 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight4:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkRight4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight4:: @ 826D5BD +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight4:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkRight4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight4:: @ 826D5C8 +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight4:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkRight4 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight5:: @ 826D5D3 +Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight5:: applymovement LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_Movement_WalkRight5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight5:: @ 826D5DE +Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight5:: applymovement LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_Movement_WalkRight5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight5:: @ 826D5E9 +Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight5:: applymovement LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_Movement_WalkRight5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight5:: @ 826D5F4 +Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight5:: applymovement LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_Movement_WalkRight5 waitmovement 0 return -Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight5:: @ 826D5FF +Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight5:: applymovement LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_Movement_WalkRight5 waitmovement 0 return -Route110_TrickHousePuzzle5_Movement_WalkLeft1: @ 826D60A +Route110_TrickHousePuzzle5_Movement_WalkLeft1: walk_left step_end -Route110_TrickHousePuzzle5_Movement_WalkLeft2: @ 826D60C +Route110_TrickHousePuzzle5_Movement_WalkLeft2: walk_left walk_left step_end -Route110_TrickHousePuzzle5_Movement_WalkLeft3: @ 826D60F +Route110_TrickHousePuzzle5_Movement_WalkLeft3: walk_left walk_left walk_left step_end -Route110_TrickHousePuzzle5_Movement_WalkLeft4: @ 826D613 +Route110_TrickHousePuzzle5_Movement_WalkLeft4: walk_left walk_left walk_left walk_left step_end -Route110_TrickHousePuzzle5_Movement_WalkLeft5: @ 826D618 +Route110_TrickHousePuzzle5_Movement_WalkLeft5: walk_left walk_left walk_left @@ -896,29 +896,29 @@ Route110_TrickHousePuzzle5_Movement_WalkLeft5: @ 826D618 walk_left step_end -Route110_TrickHousePuzzle5_Movement_WalkRight1: @ 826D61E +Route110_TrickHousePuzzle5_Movement_WalkRight1: walk_right step_end -Route110_TrickHousePuzzle5_Movement_WalkRight2: @ 826D620 +Route110_TrickHousePuzzle5_Movement_WalkRight2: walk_right walk_right step_end -Route110_TrickHousePuzzle5_Movement_WalkRight3: @ 826D623 +Route110_TrickHousePuzzle5_Movement_WalkRight3: walk_right walk_right walk_right step_end -Route110_TrickHousePuzzle5_Movement_WalkRight4: @ 826D627 +Route110_TrickHousePuzzle5_Movement_WalkRight4: walk_right walk_right walk_right walk_right step_end -Route110_TrickHousePuzzle5_Movement_WalkRight5: @ 826D62C +Route110_TrickHousePuzzle5_Movement_WalkRight5: walk_right walk_right walk_right @@ -926,7 +926,7 @@ Route110_TrickHousePuzzle5_Movement_WalkRight5: @ 826D62C walk_right step_end -Route110_TrickHousePuzzle5_Movement_MechadollShake: @ 826D632 +Route110_TrickHousePuzzle5_Movement_MechadollShake: face_left delay_2 face_right @@ -974,128 +974,128 @@ Route110_TrickHousePuzzle5_Movement_MechadollShake: @ 826D632 face_down step_end -Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened: @ 826D660 +Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is a genius.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle5_Text_Mechadoll1Intro: @ 826D6CE +Route110_TrickHousePuzzle5_Text_Mechadoll1Intro: .string "CLICKETY-CLACK…\n" .string "MECHADOLL 1 AM I!\p" .string "IF YOU ANSWER QUIZZES CORRECTLY,\n" .string "THEN YOU WILL GO TO MECHADOLL 5.\l" .string "THEN YOU CAN OBTAIN THE SECRET CODE.$" -Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz1: @ 826D757 +Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz1: .string "MECHADOLL 1 QUIZ.\p" .string "One of these POKéMON is not found\n" .string "on ROUTE 110. Which one is it?$" -Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz2: @ 826D7AA +Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz2: .string "MECHADOLL 1 QUIZ.\p" .string "One of these POKéMON is not of the\n" .string "WATER type. Which one is it?$" -Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz3: @ 826D7FC +Route110_TrickHousePuzzle5_Text_Mechadoll1Quiz3: .string "MECHADOLL 1 QUIZ.\p" .string "One of these POKéMON does not use\n" .string "LEECH LIFE. Which one is it?$" -Route110_TrickHousePuzzle5_Text_CorrectGoThrough: @ 826D84D +Route110_TrickHousePuzzle5_Text_CorrectGoThrough: .string "CONGRATULATIONS. CORRECT YOU ARE.\n" .string "GO THROUGH. PLEASE.$" -Route110_TrickHousePuzzle5_Text_DisappointmentError: @ 826D883 +Route110_TrickHousePuzzle5_Text_DisappointmentError: .string "BZZZT. DISAPPOINTMENT.\n" .string "ERROR.$" -Route110_TrickHousePuzzle5_Text_Wahahahaha: @ 826D8A1 +Route110_TrickHousePuzzle5_Text_Wahahahaha: .string "WAHAHAHAHA! WAHAHAHAHA!\n" .string "CLICKETY-CLACK!$" -Route110_TrickHousePuzzle5_Text_WaitForNextChallenge: @ 826D8C9 +Route110_TrickHousePuzzle5_Text_WaitForNextChallenge: .string "YOUR NEXT CHALLENGE WE WAIT FOR.$" -Route110_TrickHousePuzzle5_Text_Mechadoll2Intro: @ 826D8EA +Route110_TrickHousePuzzle5_Text_Mechadoll2Intro: .string "CLICKETY-CLACK…\n" .string "MECHADOLL 2 AM I!\p" .string "MECHADOLL 1'S QUIZ DIFFICULTY LEVEL\n" .string "IS SET TOO LOW.$" -Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz1: @ 826D940 +Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz1: .string "MECHADOLL 2 QUIZ.\p" .string "Which of these POKéMON did WALLY\n" .string "borrow from your father?$" -Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz2: @ 826D98C +Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz2: .string "MECHADOLL 2 QUIZ.\p" .string "Which of these POKéMON was chasing\n" .string "PROF. BIRCH?$" -Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz3: @ 826D9CE +Route110_TrickHousePuzzle5_Text_Mechadoll2Quiz3: .string "MECHADOLL 2 QUIZ.\p" .string "Which of these POKéMON did TEAM AQUA\n" .string "use in PETALBURG FOREST?$" -Route110_TrickHousePuzzle5_Text_Mechadoll3Intro: @ 826DA1E +Route110_TrickHousePuzzle5_Text_Mechadoll3Intro: .string "CLICKETY-CLACK…\n" .string "MECHADOLL 3 AM I!\p" .string "MATTERS OF MONEY ARE MY SOLE FOCUS.$" -Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz1: @ 826DA64 +Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz1: .string "MECHADOLL 3 QUIZ.\p" .string "Which costs more?\n" .string "Three HARBOR MAILS or one BURN HEAL?$" -Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz2: @ 826DAAD +Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz2: .string "MECHADOLL 3 QUIZ.\p" .string "Sell one GREAT BALL and buy\n" .string "one POTION. How much money remains?$" -Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz3: @ 826DAFF +Route110_TrickHousePuzzle5_Text_Mechadoll3Quiz3: .string "MECHADOLL 3 QUIZ.\p" .string "Do one REPEL and SODA POP cost\n" .string "more than one SUPER POTION?$" -Route110_TrickHousePuzzle5_Text_Mechadoll4Intro: @ 826DB4C +Route110_TrickHousePuzzle5_Text_Mechadoll4Intro: .string "CLICKETY-CLACK…\n" .string "MECHADOLL 4 THAT IS ME!\p" .string "MY QUIZ IS AN OBJECT OF BEAUTY.$" -Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz1: @ 826DB94 +Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz1: .string "MECHADOLL 4 QUIZ.\p" .string "In SEASHORE HOUSE, were there more men\n" .string "or women?$" -Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz2: @ 826DBD7 +Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz2: .string "MECHADOLL 4 QUIZ.\p" .string "In LAVARIDGE TOWN, were there more\n" .string "elderly men or elderly women?$" -Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz3: @ 826DC2A +Route110_TrickHousePuzzle5_Text_Mechadoll4Quiz3: .string "MECHADOLL 4 QUIZ.\p" .string "In the TRAINER'S SCHOOL, how many\n" .string "girl students were there?$" -Route110_TrickHousePuzzle5_Text_Mechadoll5Intro: @ 826DC78 +Route110_TrickHousePuzzle5_Text_Mechadoll5Intro: .string "CLICKETY-CLACK…\n" .string "MECHADOLL 5 AM I!\p" .string "THE MASTER'S BEST AND PROUDEST\n" .string "ACHIEVEMENT AM I.$" -Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz1: @ 826DCCB +Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz1: .string "MECHADOLL 5 QUIZ.\p" .string "In SLATEPORT's POKéMON FAN CLUB,\n" .string "how many POKéMON were there?$" -Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz2: @ 826DD1B +Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz2: .string "MECHADOLL 5 QUIZ.\p" .string "In FORTREE CITY, how many\n" .string "tree houses were there?$" -Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz3: @ 826DD5F +Route110_TrickHousePuzzle5_Text_Mechadoll5Quiz3: .string "MECHADOLL 5 QUIZ.\p" .string "On the CYCLING ROAD, how many\n" .string "TRIATHLETES were there?$" diff --git a/data/maps/Route110_TrickHousePuzzle6/scripts.inc b/data/maps/Route110_TrickHousePuzzle6/scripts.inc index 142b89f42423..35d657acc379 100644 --- a/data/maps/Route110_TrickHousePuzzle6/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle6/scripts.inc @@ -1,87 +1,87 @@ -Route110_TrickHousePuzzle6_MapScripts:: @ 826DDA7 +Route110_TrickHousePuzzle6_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle6_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, Route110_TrickHousePuzzle6_OnWarp .byte 0 -Route110_TrickHousePuzzle6_OnTransition: @ 826DDB2 +Route110_TrickHousePuzzle6_OnTransition: special RotatingGate_InitPuzzle end -Route110_TrickHousePuzzle6_OnWarp: @ 826DDB6 +Route110_TrickHousePuzzle6_OnWarp: map_script_2 VAR_TEMP_0, VAR_TEMP_0, Route110_TrickHousePuzzle6_EventScript_InitPuzzle .2byte 0 -Route110_TrickHousePuzzle6_EventScript_InitPuzzle:: @ 826DDC0 +Route110_TrickHousePuzzle6_EventScript_InitPuzzle:: special RotatingGate_InitPuzzleAndGraphics end -Route110_TrickHousePuzzle6_EventScript_Scroll:: @ 826DDC4 +Route110_TrickHousePuzzle6_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0 goto_if_eq Route110_TrickHousePuzzle6_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle6_EventScript_FoundScroll:: @ 826DDD6 +Route110_TrickHousePuzzle6_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_6_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle6_EventScript_Sophia:: @ 826DDE1 +Route110_TrickHousePuzzle6_EventScript_Sophia:: trainerbattle_single TRAINER_SOPHIA, Route110_TrickHousePuzzle6_Text_SophiaIntro, Route110_TrickHousePuzzle6_Text_SophiaDefeat msgbox Route110_TrickHousePuzzle6_Text_SophiaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle6_EventScript_Benny:: @ 826DDF8 +Route110_TrickHousePuzzle6_EventScript_Benny:: trainerbattle_single TRAINER_BENNY, Route110_TrickHousePuzzle6_Text_BennyIntro, Route110_TrickHousePuzzle6_Text_BennyDefeat msgbox Route110_TrickHousePuzzle6_Text_BennyPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle6_EventScript_Sebastian:: @ 826DE0F +Route110_TrickHousePuzzle6_EventScript_Sebastian:: trainerbattle_single TRAINER_SEBASTIAN, Route110_TrickHousePuzzle6_Text_SebastianIntro, Route110_TrickHousePuzzle6_Text_SebastianDefeat msgbox Route110_TrickHousePuzzle6_Text_SebastianPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened: @ 826DE26 +Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is my life.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle6_Text_SophiaIntro: @ 826DE93 +Route110_TrickHousePuzzle6_Text_SophiaIntro: .string "When I heard there was a strange\n" .string "house, I had to check it out.$" -Route110_TrickHousePuzzle6_Text_SophiaDefeat: @ 826DED2 +Route110_TrickHousePuzzle6_Text_SophiaDefeat: .string "I've discovered a tough TRAINER!$" -Route110_TrickHousePuzzle6_Text_SophiaPostBattle: @ 826DEF3 +Route110_TrickHousePuzzle6_Text_SophiaPostBattle: .string "I'm sure having a good time checking\n" .string "this place out.\p" .string "It's a challenge I've found worth\n" .string "repeating!$" -Route110_TrickHousePuzzle6_Text_BennyIntro: @ 826DF55 +Route110_TrickHousePuzzle6_Text_BennyIntro: .string "Maybe I could get my BIRD POKéMON\n" .string "to fly over the wall…$" -Route110_TrickHousePuzzle6_Text_BennyDefeat: @ 826DF8D +Route110_TrickHousePuzzle6_Text_BennyDefeat: .string "Gwaaah! I blew it!$" -Route110_TrickHousePuzzle6_Text_BennyPostBattle: @ 826DFA0 +Route110_TrickHousePuzzle6_Text_BennyPostBattle: .string "Ehehehe… I guess I lost because\n" .string "I was trying to cheat.$" -Route110_TrickHousePuzzle6_Text_SebastianIntro: @ 826DFD7 +Route110_TrickHousePuzzle6_Text_SebastianIntro: .string "I'm getting dizzy from these rotating\n" .string "doors…$" -Route110_TrickHousePuzzle6_Text_SebastianDefeat: @ 826E004 +Route110_TrickHousePuzzle6_Text_SebastianDefeat: .string "Everything's spinning around and\n" .string "around. I can't take this anymore…$" -Route110_TrickHousePuzzle6_Text_SebastianPostBattle: @ 826E048 +Route110_TrickHousePuzzle6_Text_SebastianPostBattle: .string "You don't seem to be affected at all.\n" .string "Or do you have your poker face on?$" diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc index b0cbd3813973..b0f1cbea12d8 100644 --- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc @@ -1,4 +1,4 @@ -Route110_TrickHousePuzzle7_MapScripts:: @ 826E091 +Route110_TrickHousePuzzle7_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHousePuzzle7_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle7_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route110_TrickHousePuzzle7_OnLoad @@ -8,11 +8,11 @@ Route110_TrickHousePuzzle7_MapScripts:: @ 826E091 @ Puzzle Room 7 in RSE uses whatever puzzle Mossdeep Gym uses @ Because Mossdeep Gym was redesigned for Emerald, theres a good deal of leftover script from the old R/S puzzle -Route110_TrickHousePuzzle7_OnResume: @ 826E0A6 +Route110_TrickHousePuzzle7_OnResume: call Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles end -Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles:: @ 826E0AC +Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles:: call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn @@ -21,57 +21,57 @@ Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles:: @ 826E0AC return @ Leftover from R/S, none of the below metatile scripts are ever called -Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn:: @ 826E0DA +Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn:: setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_On, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn:: @ 826E0ED +Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn:: setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_On, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn:: @ 826E100 +Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn:: setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_On, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn:: @ 826E113 +Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn:: setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right_Alt, 0 setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_On, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn:: @ 826E126 +Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn:: setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, 0 setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_On, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOff:: @ 826E139 +Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOff:: setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, 0 setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_Off, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOff:: @ 826E14C +Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOff:: setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, 0 setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_Off, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOff:: @ 826E15F +Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOff:: setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, 0 setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_Off, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOff:: @ 826E172 +Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOff:: setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left_Alt, 0 setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_Off, 1 return -Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff:: @ 826E185 +Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff:: setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right, 0 setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_Off, 1 return -Route110_TrickHousePuzzle7_OnTransition: @ 826E198 +Route110_TrickHousePuzzle7_OnTransition: compare VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 goto_if_eq Route110_TrickHousePuzzle7_EventScript_TeleportedTransition clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1 @@ -81,36 +81,36 @@ Route110_TrickHousePuzzle7_OnTransition: @ 826E198 clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5 end -Route110_TrickHousePuzzle7_EventScript_TeleportedTransition:: @ 826E1B3 +Route110_TrickHousePuzzle7_EventScript_TeleportedTransition:: end -Route110_TrickHousePuzzle7_OnLoad: @ 826E1B4 +Route110_TrickHousePuzzle7_OnLoad: compare VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 call_if_eq Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles end -Route110_TrickHousePuzzle7_OnFrame: @ 826E1C0 +Route110_TrickHousePuzzle7_OnFrame: map_script_2 VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_ClearState2 .2byte 0 -Route110_TrickHousePuzzle7_EventScript_ClearState2:: @ 826E1CA +Route110_TrickHousePuzzle7_EventScript_ClearState2:: setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 0 end -Route110_TrickHousePuzzle7_EventScript_Scroll:: @ 826E1D0 +Route110_TrickHousePuzzle7_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0 goto_if_eq Route110_TrickHousePuzzle7_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle7_EventScript_FoundScroll:: @ 826E1E2 +Route110_TrickHousePuzzle7_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end @ Unused, leftover from R/S -Route110_TrickHousePuzzle7_EventScript_TeleportPad:: @ 826E1ED +Route110_TrickHousePuzzle7_EventScript_TeleportPad:: lockall setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 warpteleport MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 255, 3, 19 @@ -119,7 +119,7 @@ Route110_TrickHousePuzzle7_EventScript_TeleportPad:: @ 826E1ED end @ All the below switch scripts are unused leftover from R/S -Route110_TrickHousePuzzle7_EventScript_Switch1:: @ 826E1FE +Route110_TrickHousePuzzle7_EventScript_Switch1:: lockall delay 32 call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn @@ -130,7 +130,7 @@ Route110_TrickHousePuzzle7_EventScript_Switch1:: @ 826E1FE goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1Off end -Route110_TrickHousePuzzle7_EventScript_Switch2:: @ 826E22D +Route110_TrickHousePuzzle7_EventScript_Switch2:: lockall delay 32 call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn @@ -141,7 +141,7 @@ Route110_TrickHousePuzzle7_EventScript_Switch2:: @ 826E22D goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2Off end -Route110_TrickHousePuzzle7_EventScript_Switch3:: @ 826E25C +Route110_TrickHousePuzzle7_EventScript_Switch3:: lockall delay 32 call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn @@ -152,7 +152,7 @@ Route110_TrickHousePuzzle7_EventScript_Switch3:: @ 826E25C goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3Off end -Route110_TrickHousePuzzle7_EventScript_Switch4:: @ 826E28B +Route110_TrickHousePuzzle7_EventScript_Switch4:: lockall delay 32 call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn @@ -163,7 +163,7 @@ Route110_TrickHousePuzzle7_EventScript_Switch4:: @ 826E28B goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4Off end -Route110_TrickHousePuzzle7_EventScript_Switch5:: @ 826E2BA +Route110_TrickHousePuzzle7_EventScript_Switch5:: lockall delay 32 call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn @@ -175,58 +175,58 @@ Route110_TrickHousePuzzle7_EventScript_Switch5:: @ 826E2BA end @ All the below switch scripts are unused leftover from R/S -Route110_TrickHousePuzzle7_EventScript_SetSwitch1On:: @ 826E2E9 +Route110_TrickHousePuzzle7_EventScript_SetSwitch1On:: setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch1Off:: @ 826E2EE +Route110_TrickHousePuzzle7_EventScript_SetSwitch1Off:: clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch2On:: @ 826E2F3 +Route110_TrickHousePuzzle7_EventScript_SetSwitch2On:: setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch2Off:: @ 826E2F8 +Route110_TrickHousePuzzle7_EventScript_SetSwitch2Off:: clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch3On:: @ 826E2FD +Route110_TrickHousePuzzle7_EventScript_SetSwitch3On:: setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch3Off:: @ 826E302 +Route110_TrickHousePuzzle7_EventScript_SetSwitch3Off:: clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch4On:: @ 826E307 +Route110_TrickHousePuzzle7_EventScript_SetSwitch4On:: setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch4Off:: @ 826E30C +Route110_TrickHousePuzzle7_EventScript_SetSwitch4Off:: clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch5On:: @ 826E311 +Route110_TrickHousePuzzle7_EventScript_SetSwitch5On:: setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5 releaseall end -Route110_TrickHousePuzzle7_EventScript_SetSwitch5Off:: @ 826E316 +Route110_TrickHousePuzzle7_EventScript_SetSwitch5Off:: clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5 releaseall end @ From here is where the new, actually used puzzle scripts begin -Route110_TrickHousePuzzle7_EventScript_YellowButton:: @ 826E31B +Route110_TrickHousePuzzle7_EventScript_YellowButton:: playse SE_SWITCH waitse playse SE_REPEL @@ -238,7 +238,7 @@ Route110_TrickHousePuzzle7_EventScript_YellowButton:: @ 826E31B freerotatingtilepuzzle end -Route110_TrickHousePuzzle7_EventScript_BlueButton:: @ 826E331 +Route110_TrickHousePuzzle7_EventScript_BlueButton:: playse SE_SWITCH waitse playse SE_REPEL @@ -250,7 +250,7 @@ Route110_TrickHousePuzzle7_EventScript_BlueButton:: @ 826E331 freerotatingtilepuzzle end -Route110_TrickHousePuzzle7_EventScript_GreenButton:: @ 826E347 +Route110_TrickHousePuzzle7_EventScript_GreenButton:: playse SE_SWITCH waitse playse SE_REPEL @@ -262,7 +262,7 @@ Route110_TrickHousePuzzle7_EventScript_GreenButton:: @ 826E347 freerotatingtilepuzzle end -Route110_TrickHousePuzzle7_EventScript_PurpleButton:: @ 826E35D +Route110_TrickHousePuzzle7_EventScript_PurpleButton:: playse SE_SWITCH waitse playse SE_REPEL @@ -275,7 +275,7 @@ Route110_TrickHousePuzzle7_EventScript_PurpleButton:: @ 826E35D end @ Unused -Route110_TrickHousePuzzle7_EventScript_RedButton:: @ 826E373 +Route110_TrickHousePuzzle7_EventScript_RedButton:: playse SE_SWITCH waitse playse SE_REPEL @@ -287,109 +287,109 @@ Route110_TrickHousePuzzle7_EventScript_RedButton:: @ 826E373 freerotatingtilepuzzle end -Route110_TrickHousePuzzle7_EventScript_Joshua:: @ 826E389 +Route110_TrickHousePuzzle7_EventScript_Joshua:: trainerbattle_single TRAINER_JOSHUA, Route110_TrickHousePuzzle7_Text_JoshuaIntro, Route110_TrickHousePuzzle7_Text_JoshuaDefeat msgbox Route110_TrickHousePuzzle7_Text_JoshuaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_Patricia:: @ 826E3A0 +Route110_TrickHousePuzzle7_EventScript_Patricia:: trainerbattle_single TRAINER_PATRICIA, Route110_TrickHousePuzzle7_Text_PatriciaIntro, Route110_TrickHousePuzzle7_Text_PatriciaDefeat msgbox Route110_TrickHousePuzzle7_Text_PatriciaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_Alexis:: @ 826E3B7 +Route110_TrickHousePuzzle7_EventScript_Alexis:: trainerbattle_single TRAINER_ALEXIS, Route110_TrickHousePuzzle7_Text_AlexisIntro, Route110_TrickHousePuzzle7_Text_AlexisDefeat msgbox Route110_TrickHousePuzzle7_Text_AlexisPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_Mariela:: @ 826E3CE +Route110_TrickHousePuzzle7_EventScript_Mariela:: trainerbattle_single TRAINER_MARIELA, Route110_TrickHousePuzzle7_Text_MarielaIntro, Route110_TrickHousePuzzle7_Text_MarielaDefeat msgbox Route110_TrickHousePuzzle7_Text_MarielaPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_Alvaro:: @ 826E3E5 +Route110_TrickHousePuzzle7_EventScript_Alvaro:: trainerbattle_single TRAINER_ALVARO, Route110_TrickHousePuzzle7_Text_AlvaroIntro, Route110_TrickHousePuzzle7_Text_AlvaroDefeat msgbox Route110_TrickHousePuzzle7_Text_AlvaroPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_Everett:: @ 826E3FC +Route110_TrickHousePuzzle7_EventScript_Everett:: trainerbattle_single TRAINER_EVERETT, Route110_TrickHousePuzzle7_Text_EverettIntro, Route110_TrickHousePuzzle7_Text_EverettDefeat msgbox Route110_TrickHousePuzzle7_Text_EverettPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened:: @ 826E413 +Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened:: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is huggable.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle7_Text_JoshuaIntro: @ 826E481 +Route110_TrickHousePuzzle7_Text_JoshuaIntro: .string "The TRICK MASTER always vanishes\n" .string "like smoke. How does he do it?$" -Route110_TrickHousePuzzle7_Text_JoshuaDefeat: @ 826E4C1 +Route110_TrickHousePuzzle7_Text_JoshuaDefeat: .string "Aiyeeeh! You're much too strong!\n" .string "How do you do it?$" -Route110_TrickHousePuzzle7_Text_JoshuaPostBattle: @ 826E4F4 +Route110_TrickHousePuzzle7_Text_JoshuaPostBattle: .string "I wish I could appear and disappear as\n" .string "if I were smoke, too.$" -Route110_TrickHousePuzzle7_Text_PatriciaIntro: @ 826E531 +Route110_TrickHousePuzzle7_Text_PatriciaIntro: .string "Going around the same spot…\n" .string "It begets ill fortune…$" -Route110_TrickHousePuzzle7_Text_PatriciaDefeat: @ 826E564 +Route110_TrickHousePuzzle7_Text_PatriciaDefeat: .string "Defeated!\n" .string "It's a bad sign…$" -Route110_TrickHousePuzzle7_Text_PatriciaPostBattle: @ 826E57F +Route110_TrickHousePuzzle7_Text_PatriciaPostBattle: .string "I've circled the same spot over ten\n" .string "times now… It's ill fortune…$" -Route110_TrickHousePuzzle7_Text_AlexisIntro: @ 826E5C0 +Route110_TrickHousePuzzle7_Text_AlexisIntro: .string "Whoever wins will get through here\n" .string "first. That's the feeling I get.$" -Route110_TrickHousePuzzle7_Text_AlexisDefeat: @ 826E604 +Route110_TrickHousePuzzle7_Text_AlexisDefeat: .string "Oh!\n" .string "Well, go ahead, then!$" -Route110_TrickHousePuzzle7_Text_AlexisPostBattle: @ 826E61E +Route110_TrickHousePuzzle7_Text_AlexisPostBattle: .string "You're solving all the puzzles in the\n" .string "TRICK HOUSE. That's the feeling I get.$" -Route110_TrickHousePuzzle7_Text_MarielaIntro: @ 826E66B +Route110_TrickHousePuzzle7_Text_MarielaIntro: .string "Nufufufu, here at last!\n" .string "Let's get right with it!$" -Route110_TrickHousePuzzle7_Text_MarielaDefeat: @ 826E69C +Route110_TrickHousePuzzle7_Text_MarielaDefeat: .string "You're so casual about winning!$" -Route110_TrickHousePuzzle7_Text_MarielaPostBattle: @ 826E6BC +Route110_TrickHousePuzzle7_Text_MarielaPostBattle: .string "Humph! I'm not upset!\n" .string "Not me!$" -Route110_TrickHousePuzzle7_Text_AlvaroIntro: @ 826E6DA +Route110_TrickHousePuzzle7_Text_AlvaroIntro: .string "I ever so closely watched you coming!$" -Route110_TrickHousePuzzle7_Text_AlvaroDefeat: @ 826E700 +Route110_TrickHousePuzzle7_Text_AlvaroDefeat: .string "This outcome I didn't see coming…$" -Route110_TrickHousePuzzle7_Text_AlvaroPostBattle: @ 826E722 +Route110_TrickHousePuzzle7_Text_AlvaroPostBattle: .string "Well, anyway, we both picked a weird\n" .string "place to get acquainted.\p" .string "As one weirdo to another,\n" .string "let's do our best!$" -Route110_TrickHousePuzzle7_Text_EverettIntro: @ 826E78D +Route110_TrickHousePuzzle7_Text_EverettIntro: .string "It's awfully cramped in here…$" -Route110_TrickHousePuzzle7_Text_EverettDefeat: @ 826E7AB +Route110_TrickHousePuzzle7_Text_EverettDefeat: .string "Oh, yes, strong you are.$" -Route110_TrickHousePuzzle7_Text_EverettPostBattle: @ 826E7C4 +Route110_TrickHousePuzzle7_Text_EverettPostBattle: .string "I was hoping to switch places with you\n" .string "when I beat you, but…$" diff --git a/data/maps/Route110_TrickHousePuzzle8/scripts.inc b/data/maps/Route110_TrickHousePuzzle8/scripts.inc index 9e42182342e7..310751e5dfd2 100644 --- a/data/maps/Route110_TrickHousePuzzle8/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle8/scripts.inc @@ -1,72 +1,72 @@ -Route110_TrickHousePuzzle8_MapScripts:: @ 826E801 +Route110_TrickHousePuzzle8_MapScripts:: .byte 0 -Route110_TrickHousePuzzle8_EventScript_Scroll:: @ 826E802 +Route110_TrickHousePuzzle8_EventScript_Scroll:: lockall compare VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0 goto_if_eq Route110_TrickHousePuzzle8_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end -Route110_TrickHousePuzzle8_EventScript_FoundScroll:: @ 826E814 +Route110_TrickHousePuzzle8_EventScript_FoundScroll:: setvar VAR_TRICK_HOUSE_PUZZLE_8_STATE, 1 goto Route110_TrickHousePuzzle_EventScript_FoundScroll end -Route110_TrickHousePuzzle8_EventScript_Vincent:: @ 826E81F +Route110_TrickHousePuzzle8_EventScript_Vincent:: trainerbattle_single TRAINER_VINCENT, Route110_TrickHousePuzzle8_Text_VincentIntro, Route110_TrickHousePuzzle8_Text_VincentDefeat msgbox Route110_TrickHousePuzzle8_Text_VincentPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle8_EventScript_Keira:: @ 826E836 +Route110_TrickHousePuzzle8_EventScript_Keira:: trainerbattle_single TRAINER_KEIRA, Route110_TrickHousePuzzle8_Text_KeiraIntro, Route110_TrickHousePuzzle8_Text_KeiraDefeat msgbox Route110_TrickHousePuzzle8_Text_KeiraPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle8_EventScript_Leroy:: @ 826E84D +Route110_TrickHousePuzzle8_EventScript_Leroy:: trainerbattle_single TRAINER_LEROY, Route110_TrickHousePuzzle8_Text_LeroyIntro, Route110_TrickHousePuzzle8_Text_LeroyDefeat msgbox Route110_TrickHousePuzzle8_Text_LeroyPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened:: @ 826E864 +Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened:: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER I love.”\n" .string "… … … … … … … …\p" .string "The lock clicked open!$" -Route110_TrickHousePuzzle8_Text_VincentIntro: @ 826E8CD +Route110_TrickHousePuzzle8_Text_VincentIntro: .string "Not many TRAINERS have made it\n" .string "this far.$" -Route110_TrickHousePuzzle8_Text_VincentDefeat: @ 826E8F6 +Route110_TrickHousePuzzle8_Text_VincentDefeat: .string "That must mean you're tough, too…$" -Route110_TrickHousePuzzle8_Text_VincentPostBattle: @ 826E918 +Route110_TrickHousePuzzle8_Text_VincentPostBattle: .string "You've beaten the POKéMON LEAGUE\n" .string "CHAMPION? That's too much!$" -Route110_TrickHousePuzzle8_Text_KeiraIntro: @ 826E954 +Route110_TrickHousePuzzle8_Text_KeiraIntro: .string "Consider yourself lucky to be\n" .string "battling me!$" -Route110_TrickHousePuzzle8_Text_KeiraDefeat: @ 826E97F +Route110_TrickHousePuzzle8_Text_KeiraDefeat: .string "This isn't right!\n" .string "I can't lose!$" -Route110_TrickHousePuzzle8_Text_KeiraPostBattle: @ 826E99F +Route110_TrickHousePuzzle8_Text_KeiraPostBattle: .string "It's a miracle that you beat me.\n" .string "You can brag about it.$" -Route110_TrickHousePuzzle8_Text_LeroyIntro: @ 826E9D7 +Route110_TrickHousePuzzle8_Text_LeroyIntro: .string "You've been slugging through the TRICK\n" .string "HOUSE challenge, too.$" -Route110_TrickHousePuzzle8_Text_LeroyDefeat: @ 826EA14 +Route110_TrickHousePuzzle8_Text_LeroyDefeat: .string "I see…\n" .string "You possess an extraordinary style.$" -Route110_TrickHousePuzzle8_Text_LeroyPostBattle: @ 826EA3F +Route110_TrickHousePuzzle8_Text_LeroyPostBattle: .string "Seeing someone like you should please\n" .string "the TRICK MASTER.$" diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 428011645e35..95f262dd2414 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -6,26 +6,26 @@ @ Note: LOCALID_ROUTE111_PLAYER_FALLING is a local id for this map used elsewhere. It's defined in event_objects.h -Route111_MapScripts:: @ 81F0CA7 +Route111_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, Route111_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, Route111_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, Route111_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, Route111_OnFrame .byte 0 -Route111_OnLoad: @ 81F0CBC +Route111_OnLoad: call_if_unset FLAG_REGI_DOORS_OPENED, Route111_EventScript_CloseDesertRuins compare VAR_MIRAGE_TOWER_STATE, 1 call_if_eq Route111_EventScript_ShowTemporaryMirageTower end -Route111_EventScript_CloseDesertRuins:: @ 81F0CD1 +Route111_EventScript_CloseDesertRuins:: setmetatile 29, 86, METATILE_General_RockWall_RockBase, 1 setmetatile 29, 87, METATILE_General_RockWall_SandBase, 1 return @ Show Mirage Tower just prior to disintegration. Mirage Tower is otherwise handled by the map layout -Route111_EventScript_ShowTemporaryMirageTower:: @ 81F0CE4 +Route111_EventScript_ShowTemporaryMirageTower:: setmetatile 18, 53, METATILE_Mauville_MirageTower_Tile0, 0 setmetatile 19, 53, METATILE_Mauville_MirageTower_Tile1, 0 setmetatile 20, 53, METATILE_Mauville_MirageTower_Tile2, 0 @@ -46,7 +46,7 @@ Route111_EventScript_ShowTemporaryMirageTower:: @ 81F0CE4 setmetatile 20, 58, METATILE_Mauville_MirageTower_Tile11, 0 return -Route111_OnTransition: @ 81F0D87 +Route111_OnTransition: setvar VAR_TRAINER_HILL_IS_ACTIVE, 0 special SetMirageTowerVisibility call_if_unset FLAG_MIRAGE_TOWER_VISIBLE, Route111_EventScript_SetLayoutNoMirageTower @@ -59,7 +59,7 @@ Route111_OnTransition: @ 81F0D87 goto_if_not_defeated TRAINER_VICKY, Route111_EventScript_SetWinstratesNotDefeated end -Route111_EventScript_SetFallingPlayerGfx:: @ 81F0DC2 +Route111_EventScript_SetFallingPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq Route111_EventScript_SetFallingPlayerGfxMale @@ -67,15 +67,15 @@ Route111_EventScript_SetFallingPlayerGfx:: @ 81F0DC2 goto_if_eq Route111_EventScript_SetFallingPlayerGfxFemale return -Route111_EventScript_SetFallingPlayerGfxMale:: @ 81F0DDA +Route111_EventScript_SetFallingPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -Route111_EventScript_SetFallingPlayerGfxFemale:: @ 81F0DE0 +Route111_EventScript_SetFallingPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -Route111_EventScript_CheckSetSandstorm:: @ 81F0DE6 +Route111_EventScript_CheckSetSandstorm:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 compare VAR_TEMP_1, 34 goto_if_lt Route111_EventScript_EndCheckSetSandstorm @@ -87,12 +87,12 @@ Route111_EventScript_CheckSetSandstorm:: @ 81F0DE6 goto_if_gt Route111_EventScript_EndCheckSetSandstorm compare VAR_TEMP_0, 8 goto_if_lt Route111_EventScript_EndCheckSetSandstorm -Route111_EventScript_SetSandstorm:: @ 81F0E22 +Route111_EventScript_SetSandstorm:: setweather WEATHER_SANDSTORM -Route111_EventScript_EndCheckSetSandstorm:: @ 81F0E25 +Route111_EventScript_EndCheckSetSandstorm:: return -Route111_EventScript_SetWinstratesNotDefeated:: @ 81F0E26 +Route111_EventScript_SetWinstratesNotDefeated:: clearflag FLAG_HIDE_ROUTE_111_VICTOR_WINSTRATE setflag FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE setflag FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE @@ -102,27 +102,27 @@ Route111_EventScript_SetWinstratesNotDefeated:: @ 81F0E26 cleartrainerflag TRAINER_VIVI end -Route111_EventScript_SetLayoutNoMirageTower:: @ 81F0E3C +Route111_EventScript_SetLayoutNoMirageTower:: setmaplayoutindex LAYOUT_ROUTE111_NO_MIRAGE_TOWER return -Route111_EventScript_SetMirageTowerGone:: @ 81F0E40 +Route111_EventScript_SetMirageTowerGone:: setvar VAR_MIRAGE_TOWER_STATE, 3 return -Route111_OnWarp: @ 81F0E46 +Route111_OnWarp: map_script_2 VAR_MIRAGE_TOWER_STATE, 1, Route111_EventScript_HidePlayerForMirageTower .2byte 0 -Route111_EventScript_HidePlayerForMirageTower:: @ 81F0E50 +Route111_EventScript_HidePlayerForMirageTower:: hideobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN end -Route111_OnFrame: @ 81F0E56 +Route111_OnFrame: map_script_2 VAR_MIRAGE_TOWER_STATE, 1, Route111_EventScript_MirageTowerDisappear .2byte 0 -Route111_EventScript_MirageTowerDisappear:: @ 81F0E60 +Route111_EventScript_MirageTowerDisappear:: lockall special StartMirageTowerShake waitstate @@ -147,13 +147,13 @@ Route111_EventScript_MirageTowerDisappear:: @ 81F0E60 releaseall end -Route111_EventScript_RootFossilDisappeared:: @ 81F0EA7 +Route111_EventScript_RootFossilDisappeared:: msgbox Route111_Text_RootFossilDisappeared, MSGBOX_DEFAULT releaseall end @ Unused -Route111_Movement_PlayerFall:: @ 81F0EB1 +Route111_Movement_PlayerFall:: store_lock_anim walk_fast_down walk_fast_down @@ -163,7 +163,7 @@ Route111_Movement_PlayerFall:: @ 81F0EB1 walk_fast_down step_end -Route111_EventScript_Girl:: @ 81F0EB9 +Route111_EventScript_Girl:: lock faceplayer dotimebasedevents @@ -178,38 +178,38 @@ Route111_EventScript_Girl:: @ 81F0EB9 release end -Route111_EventScript_ReceivedBerry:: @ 81F0EF4 +Route111_EventScript_ReceivedBerry:: msgbox Route111_Text_WhatColorBerriesToLookForToday, MSGBOX_DEFAULT release end @ Unused -Route111_EventScript_ViciousSandstormTriggerUp:: @ 81F0EFE +Route111_EventScript_ViciousSandstormTriggerUp:: lockall setvar VAR_0x8004, 0 goto Route111_EventScript_ViciousSandstormTrigger end -Route111_EventScript_ViciousSandstormTriggerDown:: @ 81F0F0A +Route111_EventScript_ViciousSandstormTriggerDown:: lockall setvar VAR_0x8004, 1 goto Route111_EventScript_ViciousSandstormTrigger end -Route111_EventScript_ViciousSandstormTriggerLeft:: @ 81F0F16 +Route111_EventScript_ViciousSandstormTriggerLeft:: lockall setvar VAR_0x8004, 2 goto Route111_EventScript_ViciousSandstormTrigger end @ Unused -Route111_EventScript_ViciousSandstormTriggerRight:: @ 81F0F22 +Route111_EventScript_ViciousSandstormTriggerRight:: lockall setvar VAR_0x8004, 3 goto Route111_EventScript_ViciousSandstormTrigger end -Route111_EventScript_ViciousSandstormTrigger:: @ 81F0F2E +Route111_EventScript_ViciousSandstormTrigger:: checkitem ITEM_GO_GOGGLES, 1 compare VAR_RESULT, FALSE goto_if_eq Route111_EventScript_PreventRouteAccess @@ -217,7 +217,7 @@ Route111_EventScript_ViciousSandstormTrigger:: @ 81F0F2E releaseall end -Route111_EventScript_PreventRouteAccess:: @ 81F0F45 +Route111_EventScript_PreventRouteAccess:: msgbox gText_SandstormIsVicious, MSGBOX_DEFAULT closemessage compare VAR_0x8004, 0 @@ -231,56 +231,56 @@ Route111_EventScript_PreventRouteAccess:: @ 81F0F45 releaseall end -Route111_EventScript_PushUpFromRoute:: @ 81F0F7C +Route111_EventScript_PushUpFromRoute:: applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushUpFromRoute waitmovement 0 return -Route111_EventScript_PushDownFromRoute:: @ 81F0F87 +Route111_EventScript_PushDownFromRoute:: applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushDownFromRoute waitmovement 0 return -Route111_EventScript_PushLeftFromRoute:: @ 81F0F92 +Route111_EventScript_PushLeftFromRoute:: applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushLeftFromRoute waitmovement 0 return -Route111_EventScript_PushRightFromRoute:: @ 81F0F9D +Route111_EventScript_PushRightFromRoute:: applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushRightFromRoute waitmovement 0 return -Route111_Movement_PushUpFromRoute: @ 81F0FA8 +Route111_Movement_PushUpFromRoute: walk_up step_end -Route111_Movement_PushDownFromRoute: @ 81F0FAA +Route111_Movement_PushDownFromRoute: walk_down step_end -Route111_Movement_PushLeftFromRoute: @ 81F0FAC +Route111_Movement_PushLeftFromRoute: walk_left step_end -Route111_Movement_PushRightFromRoute: @ 81F0FAE +Route111_Movement_PushRightFromRoute: walk_right step_end -Route111_EventScript_SunTrigger:: @ 81F0FB0 +Route111_EventScript_SunTrigger:: setweather WEATHER_SUNNY fadenewbgm MUS_ROUTE110 doweather setvar VAR_TEMP_3, 0 end -Route111_EventScript_SandstormTrigger:: @ 81F0FBD +Route111_EventScript_SandstormTrigger:: setweather WEATHER_SANDSTORM fadenewbgm MUS_ROUTE111 doweather end -Route111_EventScript_Victor:: @ 81F0FC5 +Route111_EventScript_Victor:: lock faceplayer setflag FLAG_LANDMARK_WINSTRATE_FAMILY @@ -291,7 +291,7 @@ Route111_EventScript_Victor:: @ 81F0FC5 release end -Route111_EventScript_BattleWinstrates:: @ 81F0FE7 +Route111_EventScript_BattleWinstrates:: msgbox Route111_Text_VictorIntro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_VICTOR, Route111_Text_VictorDefeat applymovement LOCALID_VICTOR, Common_Movement_WalkInPlaceFastestUp @@ -360,64 +360,64 @@ Route111_EventScript_BattleWinstrates:: @ 81F0FE7 release end -Route111_EventScript_OpenWinstrateDoor:: @ 81F113C +Route111_EventScript_OpenWinstrateDoor:: opendoor 13, 113 waitdooranim return -Route111_EventScript_CloseWinstrateDoor:: @ 81F1143 +Route111_EventScript_CloseWinstrateDoor:: closedoor 13, 113 waitdooranim return -Route111_Movement_WinstrateEnterHouse: @ 81F114A +Route111_Movement_WinstrateEnterHouse: walk_in_place_fastest_up walk_up step_end -Route111_Movement_WinstrateExitHouse: @ 81F114D +Route111_Movement_WinstrateExitHouse: walk_down step_end -Route111_Movement_WaitForNextWinstrate: @ 81F114F +Route111_Movement_WaitForNextWinstrate: delay_16 delay_16 delay_16 step_end -Route111_EventScript_RouteSignMauville:: @ 81F1153 +Route111_EventScript_RouteSignMauville:: msgbox Route111_Text_RouteSignMauville, MSGBOX_SIGN end -Route111_EventScript_WinstrateHouseSign:: @ 81F115C +Route111_EventScript_WinstrateHouseSign:: msgbox Route111_Text_WinstrateHouseSign, MSGBOX_SIGN end -Route111_EventScript_RouteSign112:: @ 81F1165 +Route111_EventScript_RouteSign112:: msgbox Route111_Text_RouteSign112, MSGBOX_SIGN end -Route111_EventScript_RouteSign113:: @ 81F116E +Route111_EventScript_RouteSign113:: msgbox Route111_Text_RouteSign113, MSGBOX_SIGN end -Route111_EventScript_OldLadysRestStopSign:: @ 81F1177 +Route111_EventScript_OldLadysRestStopSign:: msgbox Route111_Text_OldLadysRestStopSign, MSGBOX_SIGN end -Route111_EventScript_TrainerTipsSpAtkSpDef:: @ 81F1180 +Route111_EventScript_TrainerTipsSpAtkSpDef:: msgbox Route111_Text_TrainerTipsSpAtkSpDef, MSGBOX_SIGN end -Route111_EventScript_Man1:: @ 81F1189 +Route111_EventScript_Man1:: msgbox Route111_Text_ToughToKeepWinningUpTheRanks, MSGBOX_NPC end -Route111_EventScript_Man2:: @ 81F1192 +Route111_EventScript_Man2:: msgbox Route111_Text_WinstrateFamilyDestroyedMe, MSGBOX_NPC end -Route111_EventScript_Hiker:: @ 81F119B +Route111_EventScript_Hiker:: lock faceplayer compare VAR_MIRAGE_TOWER_STATE, 3 @@ -429,22 +429,22 @@ Route111_EventScript_Hiker:: @ 81F119B release end -Route111_EventScript_HikerMirageTowerGone:: @ 81F11C6 +Route111_EventScript_HikerMirageTowerGone:: msgbox Route111_Text_MirageTowerHasntBeenSeenSince, MSGBOX_DEFAULT release end -Route111_EventScript_HikerMirageTowerDisintegrated:: @ 81F11D0 +Route111_EventScript_HikerMirageTowerDisintegrated:: msgbox Route111_Text_ThatWasShockingSandRainedDown, MSGBOX_DEFAULT release end -Route111_EventScript_HikerMirageTowerVisible:: @ 81F11DA +Route111_EventScript_HikerMirageTowerVisible:: msgbox Route111_Text_MirageTowerClearlyVisible, MSGBOX_DEFAULT release end -Route111_EventScript_RockSmashTipFatMan:: @ 81F11E4 +Route111_EventScript_RockSmashTipFatMan:: lockall applymovement LOCALID_ROCK_SMASH_MAN, Common_Movement_FacePlayer waitmovement 0 @@ -455,27 +455,27 @@ Route111_EventScript_RockSmashTipFatMan:: @ 81F11E4 releaseall end -Route111_EventScript_Drew:: @ 81F1204 +Route111_EventScript_Drew:: trainerbattle_single TRAINER_DREW, Route111_Text_DrewIntro, Route111_Text_DrewDefeat msgbox Route111_Text_DrewPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Heidi:: @ 81F121B +Route111_EventScript_Heidi:: trainerbattle_single TRAINER_HEIDI, Route111_Text_HeidiIntro, Route111_Text_HeidiDefeat msgbox Route111_Text_HeidiPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Beau:: @ 81F1232 +Route111_EventScript_Beau:: trainerbattle_single TRAINER_BEAU, Route111_Text_BeauIntro, Route111_Text_BeauDefeat msgbox Route111_Text_BeauPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Becky:: @ 81F1249 +Route111_EventScript_Becky:: trainerbattle_single TRAINER_BECKY, Route111_Text_BeckyIntro, Route111_Text_BeckyDefeat msgbox Route111_Text_BeckyPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Dusty:: @ 81F1260 +Route111_EventScript_Dusty:: trainerbattle_single TRAINER_DUSTY_1, Route111_Text_DustyIntro, Route111_Text_DustyDefeat, Route111_EventScript_RegisterDusty specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -484,7 +484,7 @@ Route111_EventScript_Dusty:: @ 81F1260 release end -Route111_EventScript_RegisterDusty:: @ 81F128C +Route111_EventScript_RegisterDusty:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route111_Text_DustyRegister, MSGBOX_DEFAULT @@ -492,27 +492,27 @@ Route111_EventScript_RegisterDusty:: @ 81F128C release end -Route111_EventScript_RematchDusty:: @ 81F12AB +Route111_EventScript_RematchDusty:: trainerbattle_rematch TRAINER_DUSTY_1, Route111_Text_DustyRematchIntro, Route111_Text_DustyRematchDefeat msgbox Route111_Text_DustyPostRematch, MSGBOX_AUTOCLOSE end -Route111_EventScript_Travis:: @ 81F12C2 +Route111_EventScript_Travis:: trainerbattle_single TRAINER_TRAVIS, Route111_Text_TravisIntro, Route111_Text_TravisDefeat msgbox Route111_Text_TravisPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Irene:: @ 81F12D9 +Route111_EventScript_Irene:: trainerbattle_single TRAINER_IRENE, Route111_Text_IreneIntro, Route111_Text_IreneDefeat msgbox Route111_Text_IrenePostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Daisuke:: @ 81F12F0 +Route111_EventScript_Daisuke:: trainerbattle_single TRAINER_DAISUKE, Route111_Text_DaisukeIntro, Route111_Text_DaisukeDefeat msgbox Route111_Text_DaisukePostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Wilton:: @ 81F1307 +Route111_EventScript_Wilton:: trainerbattle_single TRAINER_WILTON_1, Route111_Text_WiltonIntro, Route111_Text_WiltonDefeat, Route111_EventScript_RegisterWilton specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -521,7 +521,7 @@ Route111_EventScript_Wilton:: @ 81F1307 release end -Route111_EventScript_RegisterWilton:: @ 81F1333 +Route111_EventScript_RegisterWilton:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route111_Text_WiltonRegister, MSGBOX_DEFAULT @@ -529,12 +529,12 @@ Route111_EventScript_RegisterWilton:: @ 81F1333 release end -Route111_EventScript_RematchWilton:: @ 81F1352 +Route111_EventScript_RematchWilton:: trainerbattle_rematch TRAINER_WILTON_1, Route111_Text_WiltonRematchIntro, Route111_Text_WiltonRematchDefeat msgbox Route111_Text_WiltonPostRematch, MSGBOX_AUTOCLOSE end -Route111_EventScript_Brooke:: @ 81F1369 +Route111_EventScript_Brooke:: trainerbattle_single TRAINER_BROOKE_1, Route111_Text_BrookeIntro, Route111_Text_BrookeDefeat, Route111_EventScript_RegisterBrooke specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -543,7 +543,7 @@ Route111_EventScript_Brooke:: @ 81F1369 release end -Route111_EventScript_RegisterBrooke:: @ 81F1395 +Route111_EventScript_RegisterBrooke:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route111_Text_BrookeRegister, MSGBOX_DEFAULT @@ -551,112 +551,112 @@ Route111_EventScript_RegisterBrooke:: @ 81F1395 release end -Route111_EventScript_RematchBrooke:: @ 81F13B4 +Route111_EventScript_RematchBrooke:: trainerbattle_rematch TRAINER_BROOKE_1, Route111_Text_BrookeRematchIntro, Route111_Text_BrookeRematchDefeat msgbox Route111_Text_BrookePostRematch, MSGBOX_AUTOCLOSE end -Route111_EventScript_Hayden:: @ 81F13CB +Route111_EventScript_Hayden:: trainerbattle_single TRAINER_HAYDEN, Route111_Text_HaydenIntro, Route111_Text_HaydenDefeat msgbox Route111_Text_HaydenPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Bianca:: @ 81F13E2 +Route111_EventScript_Bianca:: trainerbattle_single TRAINER_BIANCA, Route111_Text_BiancaIntro, Route111_Text_BiancaDefeat msgbox Route111_Text_BiancaPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Tyron:: @ 81F13F9 +Route111_EventScript_Tyron:: trainerbattle_single TRAINER_TYRON, Route111_Text_TyronIntro, Route111_Text_TyronDefeat msgbox Route111_Text_TyronPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Celina:: @ 81F1410 +Route111_EventScript_Celina:: trainerbattle_single TRAINER_CELINA, Route111_Text_CelinaIntro, Route111_Text_CelinaDefeat msgbox Route111_Text_CelinaPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Celia:: @ 81F1427 +Route111_EventScript_Celia:: trainerbattle_single TRAINER_CELIA, Route111_Text_CeliaIntro, Route111_Text_CeliaDefeat msgbox Route111_Text_CeliaPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Bryan:: @ 81F143E +Route111_EventScript_Bryan:: trainerbattle_single TRAINER_BRYAN, Route111_Text_BryanIntro, Route111_Text_BryanDefeat msgbox Route111_Text_BryanPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_Branden:: @ 81F1455 +Route111_EventScript_Branden:: trainerbattle_single TRAINER_BRANDEN, Route111_Text_BrandenIntro, Route111_Text_BrandenDefeat msgbox Route111_Text_BrandenPostBattle, MSGBOX_AUTOCLOSE end -Route111_EventScript_TrainerHillSign:: @ 81F146C +Route111_EventScript_TrainerHillSign:: msgbox Route111_Text_TrainerHillSign, MSGBOX_SIGN end -Route111_Text_BattleOurFamily: @ 81F1475 +Route111_Text_BattleOurFamily: .string "Hello! I take it you're a traveler.\p" .string "How's this? What do you say to taking\n" .string "on our family of four in a series of\l" .string "POKéMON battles?$" -Route111_Text_IsThatSo: @ 81F14F5 +Route111_Text_IsThatSo: .string "Is that so?\n" .string "Drop in, if you change your mind!$" -Route111_Text_VictorIntro: @ 81F1523 +Route111_Text_VictorIntro: .string "That's the spirit! I like you!$" -Route111_Text_VictorDefeat: @ 81F1542 +Route111_Text_VictorDefeat: .string "Aiyah!\n" .string "You're a lot tougher than I expected!$" -Route111_Text_VictorPostBattle: @ 81F156F +Route111_Text_VictorPostBattle: .string "Hey, all!\n" .string "I've found a pretty strong TRAINER!$" -Route111_Text_VictoriaIntro: @ 81F159D +Route111_Text_VictoriaIntro: .string "Oh, my goodness! Aren't you young?\p" .string "You must be quite the TRAINER to beat\n" .string "my husband, though.\p" .string "It's my turn to battle now!$" -Route111_Text_VictoriaDefeat: @ 81F1616 +Route111_Text_VictoriaDefeat: .string "Oh, gosh!\n" .string "I can't get over how strong you are!$" -Route111_Text_VictoriaPostBattle: @ 81F1645 +Route111_Text_VictoriaPostBattle: .string "There's a strong TRAINER here!\n" .string "This one's really strong!$" -Route111_Text_ViviIntro: @ 81F167E +Route111_Text_ViviIntro: .string "You're stronger than Mommy? Wow!\p" .string "But I'm strong, too!\n" .string "Really! Honestly!$" -Route111_Text_ViviDefeat: @ 81F16C6 +Route111_Text_ViviDefeat: .string "Huh? Did I just lose?$" -Route111_Text_ViviPostBattle: @ 81F16DC +Route111_Text_ViviPostBattle: .string "This stinks…\p" .string "…Snivel… Grandma!$" -Route111_Text_VickyIntro: @ 81F16FB +Route111_Text_VickyIntro: .string "How dare you make my granddaughter\n" .string "cry!\p" .string "For that, I'm going to smack you!\n" .string "Prepare to lose!$" -Route111_Text_VickyDefeat: @ 81F1756 +Route111_Text_VickyDefeat: .string "Kwah! You are strong…\n" .string "My granddaughter was right…$" -Route111_Text_VickyPostBattle: @ 81F1788 +Route111_Text_VickyPostBattle: .string "If you're not in any hurry,\n" .string "visit with us awhile.$" -Route111_Text_ToughToKeepWinningUpTheRanks: @ 81F17BA +Route111_Text_ToughToKeepWinningUpTheRanks: .string "If you don't raise your POKéMON some\n" .string "more, it could be tough to keep winning\l" .string "up through the ranks.\p" @@ -664,32 +664,32 @@ Route111_Text_ToughToKeepWinningUpTheRanks: @ 81F17BA .string "ELITE FOUR are far stronger than\l" .string "any GYM LEADER.$" -Route111_Text_WinstrateFamilyDestroyedMe: @ 81F186E +Route111_Text_WinstrateFamilyDestroyedMe: .string "I challenged the WINSTRATE family,\n" .string "but four matches in a row is tough\l" .string "going… They destroyed me.$" -Route111_Text_RouteSignMauville: @ 81F18CE +Route111_Text_RouteSignMauville: .string "ROUTE 111\n" .string "{DOWN_ARROW} MAUVILLE CITY$" -Route111_Text_WinstrateHouseSign: @ 81F18E8 +Route111_Text_WinstrateHouseSign: .string "“Our family's hearts beat as one!”\n" .string "THE WINSTRATE'S HOUSE$" -Route111_Text_RouteSign112: @ 81F1921 +Route111_Text_RouteSign112: .string "ROUTE 111\n" .string "{LEFT_ARROW} ROUTE 112$" -Route111_Text_RouteSign113: @ 81F1937 +Route111_Text_RouteSign113: .string "ROUTE 111\n" .string "{LEFT_ARROW} ROUTE 113$" -Route111_Text_OldLadysRestStopSign: @ 81F194D +Route111_Text_OldLadysRestStopSign: .string "OLD LADY'S REST STOP\n" .string "“Come in and rest your tired bones.”$" -Route111_Text_TrainerTipsSpAtkSpDef: @ 81F1987 +Route111_Text_TrainerTipsSpAtkSpDef: .string "TRAINER TIPS\p" .string "One of the indicators of a POKéMON's\n" .string "powerfulness is SP. ATK. It stands for\l" @@ -697,14 +697,14 @@ Route111_Text_TrainerTipsSpAtkSpDef: @ 81F1987 .string "Likewise, SP. DEF stands for “SPECIAL\n" .string "DEFENSE.”$" -Route111_Text_ShouldBeMirageTowerAroundHere: @ 81F1A22 +Route111_Text_ShouldBeMirageTowerAroundHere: .string "There should be a tower made of sand\n" .string "around here somewhere.\p" .string "But for some reason, it can be seen\n" .string "sometimes, and sometimes not.\p" .string "That's why I call it the MIRAGE TOWER.$" -Route111_Text_MirageTowerClearlyVisible: @ 81F1AC7 +Route111_Text_MirageTowerClearlyVisible: .string "I see it!\n" .string "The tower of sand!\p" .string "The sand tower they called a mirage\n" @@ -714,7 +714,7 @@ Route111_Text_MirageTowerClearlyVisible: @ 81F1AC7 .string "I want to go inside it, but I can't\n" .string "get my courage up for it…$" -Route111_Text_ThatWasShockingSandRainedDown: @ 81F1B92 +Route111_Text_ThatWasShockingSandRainedDown: .string "Whoa…\n" .string "That was shocking.\p" .string "Sand rained down in chunks all of\n" @@ -722,21 +722,21 @@ Route111_Text_ThatWasShockingSandRainedDown: @ 81F1B92 .string "What was it like inside?\n" .string "Were there sandy ghosts and such?$" -Route111_Text_MirageTowerHasntBeenSeenSince: @ 81F1C12 +Route111_Text_MirageTowerHasntBeenSeenSince: .string "Since I spoke to you, the tower of sand\n" .string "hasn't been seen.\p" .string "Perhaps it really was\n" .string "the MIRAGE TOWER…$" -Route111_Text_ClawFossilDisappeared: @ 81F1C74 +Route111_Text_ClawFossilDisappeared: .string "The CLAW FOSSIL disappeared into\n" .string "the sand…$" -Route111_Text_RootFossilDisappeared: @ 81F1C9F +Route111_Text_RootFossilDisappeared: .string "The ROOT FOSSIL disappeared into\n" .string "the sand…$" -Route111_Text_MauvilleUncleToldMeToTakeRockSmash: @ 81F1CCA +Route111_Text_MauvilleUncleToldMeToTakeRockSmash: .string "Oh, no!\p" .string "My uncle in MAUVILLE told me to take\n" .string "ROCK SMASH with me if I was going to\l" @@ -744,7 +744,7 @@ Route111_Text_MauvilleUncleToldMeToTakeRockSmash: @ 81F1CCA .string "My uncle? He lives across from\n" .string "the bike shop in MAUVILLE.$" -Route111_Text_TrainerHillSign: @ 81F1D61 +Route111_Text_TrainerHillSign: .string "{RIGHT_ARROW} TRAINER HILL ENTRANCE\p" .string "“Scale the heights, you hot-blooded\n" .string "TRAINERS!”$" diff --git a/data/maps/Route111_OldLadysRestStop/scripts.inc b/data/maps/Route111_OldLadysRestStop/scripts.inc index 0df1e6b6e7f2..645ce4de4175 100644 --- a/data/maps/Route111_OldLadysRestStop/scripts.inc +++ b/data/maps/Route111_OldLadysRestStop/scripts.inc @@ -1,12 +1,12 @@ -Route111_OldLadysRestStop_MapScripts:: @ 822A916 +Route111_OldLadysRestStop_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route111_OldLadysRestStop_OnTransition .byte 0 -Route111_OldLadysRestStop_OnTransition: @ 822A91C +Route111_OldLadysRestStop_OnTransition: setflag FLAG_LANDMARK_OLD_LADY_REST_SHOP end -Route111_OldLadysRestStop_EventScript_OldLady:: @ 822A920 +Route111_OldLadysRestStop_EventScript_OldLady:: lock faceplayer msgbox Route111_OldLadysRestStop_Text_RestUpHere, MSGBOX_YESNO @@ -16,7 +16,7 @@ Route111_OldLadysRestStop_EventScript_OldLady:: @ 822A920 goto_if_eq Route111_OldLadysRestStop_EventScript_DeclineRest end -Route111_OldLadysRestStop_EventScript_Rest:: @ 822A941 +Route111_OldLadysRestStop_EventScript_Rest:: msgbox Route111_OldLadysRestStop_Text_TakeYourTimeRestUp, MSGBOX_DEFAULT closemessage call Common_EventScript_OutOfCenterPartyHeal @@ -27,28 +27,28 @@ Route111_OldLadysRestStop_EventScript_Rest:: @ 822A941 goto_if_eq Route111_OldLadysRestStop_EventScript_DeclineRest end -Route111_OldLadysRestStop_EventScript_DeclineRest:: @ 822A96E +Route111_OldLadysRestStop_EventScript_DeclineRest:: msgbox Route111_OldLadysRestStop_Text_DontNeedToBeShy, MSGBOX_DEFAULT release end -Route111_OldLadysRestStop_Text_RestUpHere: @ 822A978 +Route111_OldLadysRestStop_Text_RestUpHere: .string "Oh, dear, dear.\n" .string "Aren't your POKéMON exhausted?\p" .string "If you'd like, rest up here.\n" .string "That's a fine idea! You should do that.$" -Route111_OldLadysRestStop_Text_TakeYourTimeRestUp: @ 822A9EC +Route111_OldLadysRestStop_Text_TakeYourTimeRestUp: .string "That's right.\n" .string "Take your time and rest up!$" -Route111_OldLadysRestStop_Text_StillTiredTakeAnotherRest: @ 822AA16 +Route111_OldLadysRestStop_Text_StillTiredTakeAnotherRest: .string "Oh, dear, dear.\n" .string "Are your POKéMON still tired?\p" .string "You should take another rest here.\n" .string "That's a fine idea. You should do that.$" -Route111_OldLadysRestStop_Text_DontNeedToBeShy: @ 822AA8F +Route111_OldLadysRestStop_Text_DontNeedToBeShy: .string "Is that so?\n" .string "You don't need to be shy about it.$" diff --git a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc index 28bf17dbfbc7..eedd83f0689d 100644 --- a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc +++ b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc @@ -3,10 +3,10 @@ .set LOCALID_VICTORIA, 3 .set LOCALID_VICKY, 4 -Route111_WinstrateFamilysHouse_MapScripts:: @ 822A48C +Route111_WinstrateFamilysHouse_MapScripts:: .byte 0 -Route111_WinstrateFamilysHouse_EventScript_Victor:: @ 822A48D +Route111_WinstrateFamilysHouse_EventScript_Victor:: lock faceplayer setvar VAR_0x8008, LOCALID_VICTOR @@ -14,7 +14,7 @@ Route111_WinstrateFamilysHouse_EventScript_Victor:: @ 822A48D goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_Victoria:: @ 822A4A2 +Route111_WinstrateFamilysHouse_EventScript_Victoria:: lock faceplayer setvar VAR_0x8008, LOCALID_VICTORIA @@ -27,12 +27,12 @@ Route111_WinstrateFamilysHouse_EventScript_Victoria:: @ 822A4A2 goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_ReceivedMachoBrace:: @ 822A4DA +Route111_WinstrateFamilysHouse_EventScript_ReceivedMachoBrace:: msgbox Route111_WinstrateFamilysHouse_Text_PassionateAboutBattles, MSGBOX_DEFAULT goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_Vivi:: @ 822A4E8 +Route111_WinstrateFamilysHouse_EventScript_Vivi:: lock faceplayer setvar VAR_0x8008, LOCALID_VIVI @@ -40,7 +40,7 @@ Route111_WinstrateFamilysHouse_EventScript_Vivi:: @ 822A4E8 goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_Vicky:: @ 822A4FD +Route111_WinstrateFamilysHouse_EventScript_Vicky:: lock faceplayer setvar VAR_0x8008, LOCALID_VICKY @@ -50,19 +50,19 @@ Route111_WinstrateFamilysHouse_EventScript_Vicky:: @ 822A4FD goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_AlreadySpokenTo:: @ 822A51E +Route111_WinstrateFamilysHouse_EventScript_AlreadySpokenTo:: msgbox Route111_WinstrateFamilysHouse_Text_GrandsonStrongShort, MSGBOX_DEFAULT goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end -Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection:: @ 822A52C +Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection:: closemessage applymovement VAR_0x8008, Common_Movement_FaceOriginalDirection waitmovement 0 release end -Route111_WinstrateFamilysHouse_Text_MySonIsStrongerThanYou: @ 822A539 +Route111_WinstrateFamilysHouse_Text_MySonIsStrongerThanYou: .string "You're the first TRAINER I've seen who\n" .string "deploys POKéMON so masterfully.\p" .string "But, I should tell you--my son is\n" @@ -70,7 +70,7 @@ Route111_WinstrateFamilysHouse_Text_MySonIsStrongerThanYou: @ 822A539 .string "He even took the POKéMON LEAGUE\n" .string "challenge, I'll have you know.$" -Route111_WinstrateFamilysHouse_Text_LikeYouToHaveMachoBrace: @ 822A5F4 +Route111_WinstrateFamilysHouse_Text_LikeYouToHaveMachoBrace: .string "We use this MACHO BRACE to more\n" .string "effectively strengthen our POKéMON\l" .string "in training.\p" @@ -78,18 +78,18 @@ Route111_WinstrateFamilysHouse_Text_LikeYouToHaveMachoBrace: @ 822A5F4 .string "I don't know if you need it, but we\l" .string "would like you to have our MACHO BRACE.$" -Route111_WinstrateFamilysHouse_Text_PassionateAboutBattles: @ 822A6B4 +Route111_WinstrateFamilysHouse_Text_PassionateAboutBattles: .string "When it comes to POKéMON battles,\n" .string "we tend to be pretty passionate.$" -Route111_WinstrateFamilysHouse_Text_StrongerFamilyMembers: @ 822A6F7 +Route111_WinstrateFamilysHouse_Text_StrongerFamilyMembers: .string "Mommy is stronger than Daddy.\p" .string "I'm stronger than Mommy.\p" .string "And Grandma's stronger than me!\p" .string "But my big brother is even stronger\n" .string "than Grandma.$" -Route111_WinstrateFamilysHouse_Text_GrandsonStrong: @ 822A780 +Route111_WinstrateFamilysHouse_Text_GrandsonStrong: .string "There's no question that you're strong.\p" .string "But if you were to battle my grandson,\n" .string "you'd end up crying in frustration.\p" @@ -100,7 +100,7 @@ Route111_WinstrateFamilysHouse_Text_GrandsonStrong: @ 822A780 .string "Knowing my grandson, he could be the\n" .string "CHAMPION already!$" -Route111_WinstrateFamilysHouse_Text_GrandsonStrongShort: @ 822A89B +Route111_WinstrateFamilysHouse_Text_GrandsonStrongShort: .string "My grandson must be challenging the\n" .string "POKéMON LEAGUE CHAMPION by now.\p" .string "Knowing my grandson, he could be the\n" diff --git a/data/maps/Route112/scripts.inc b/data/maps/Route112/scripts.inc index 67f776f676aa..4f9d60206ba6 100644 --- a/data/maps/Route112/scripts.inc +++ b/data/maps/Route112/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_GRUNT_1, 1 .set LOCALID_GRUNT_2, 6 -Route112_MapScripts:: @ 81F1DA8 +Route112_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route112_OnTransition .byte 0 -Route112_OnTransition: @ 81F1DAE +Route112_OnTransition: clearflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE setvar VAR_JAGGED_PASS_ASH_WEATHER, 0 end -Route112_EventScript_MagmaGrunts:: @ 81F1DB7 +Route112_EventScript_MagmaGrunts:: lockall delay 40 applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFastestRight @@ -47,28 +47,28 @@ Route112_EventScript_MagmaGrunts:: @ 81F1DB7 releaseall end -Route112_EventScript_MtChimneyCableCarSign:: @ 81F1E46 +Route112_EventScript_MtChimneyCableCarSign:: msgbox Route112_Text_MtChimneyCableCarSign, MSGBOX_SIGN end -Route112_EventScript_MtChimneySign:: @ 81F1E4F +Route112_EventScript_MtChimneySign:: msgbox Route112_Text_MtChimneySign, MSGBOX_SIGN end -Route112_EventScript_RouteSignLavaridge:: @ 81F1E58 +Route112_EventScript_RouteSignLavaridge:: msgbox Route112_Text_RouteSignLavaridge, MSGBOX_SIGN end -Route112_EventScript_Hiker:: @ 81F1E61 +Route112_EventScript_Hiker:: msgbox Route112_Text_NotEasyToGetBackToLavaridge, MSGBOX_NPC end -Route112_EventScript_Brice:: @ 81F1E6A +Route112_EventScript_Brice:: trainerbattle_single TRAINER_BRICE, Route112_Text_BriceIntro, Route112_Text_BriceDefeat msgbox Route112_Text_BricePostBattle, MSGBOX_AUTOCLOSE end -Route112_EventScript_Trent:: @ 81F1E81 +Route112_EventScript_Trent:: trainerbattle_single TRAINER_TRENT_1, Route112_Text_TrentIntro, Route112_Text_TrentDefeat, Route112_EventScript_RegisterTrent specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -77,7 +77,7 @@ Route112_EventScript_Trent:: @ 81F1E81 release end -Route112_EventScript_RegisterTrent:: @ 81F1EAD +Route112_EventScript_RegisterTrent:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route112_Text_TrentRegister, MSGBOX_DEFAULT @@ -85,62 +85,62 @@ Route112_EventScript_RegisterTrent:: @ 81F1EAD release end -Route112_EventScript_RematchTrent:: @ 81F1ECC +Route112_EventScript_RematchTrent:: trainerbattle_rematch TRAINER_TRENT_1, Route112_Text_TrentRematchIntro, Route112_Text_TrentRematchDefeat msgbox Route112_Text_TrentRematchPostBattle, MSGBOX_AUTOCLOSE end -Route112_EventScript_Larry:: @ 81F1EE3 +Route112_EventScript_Larry:: trainerbattle_single TRAINER_LARRY, Route112_Text_LarryIntro, Route112_Text_LarryDefeat msgbox Route112_Text_LarryPostBattle, MSGBOX_AUTOCLOSE end -Route112_EventScript_Carol:: @ 81F1EFA +Route112_EventScript_Carol:: trainerbattle_single TRAINER_CAROL, Route112_Text_CarolIntro, Route112_Text_CarolDefeat msgbox Route112_Text_CarolPostBattle, MSGBOX_AUTOCLOSE end -Route112_EventScript_Bryant:: @ 81F1F11 +Route112_EventScript_Bryant:: trainerbattle_single TRAINER_BRYANT, Route112_Text_BryantIntro, Route112_Text_BryantDefeat msgbox Route112_Text_BryantPostBattle, MSGBOX_AUTOCLOSE end -Route112_EventScript_Shayla:: @ 81F1F28 +Route112_EventScript_Shayla:: trainerbattle_single TRAINER_SHAYLA, Route112_Text_ShaylaIntro, Route112_Text_ShaylaDefeat msgbox Route112_Text_ShaylaPostBattle, MSGBOX_AUTOCLOSE end -Route112_Text_LeaderGoingToAwakenThing: @ 81F1F3F +Route112_Text_LeaderGoingToAwakenThing: .string "Hey, man, is our leader really going\n" .string "to awaken that thing?$" -Route112_Text_YeahWeNeedMeteorite: @ 81F1F7A +Route112_Text_YeahWeNeedMeteorite: .string "Sounds like it, yeah. But I heard\n" .string "we need a METEORITE to do it.$" -Route112_Text_OhThatsWhyCrewWentToFallarbor: @ 81F1FBA +Route112_Text_OhThatsWhyCrewWentToFallarbor: .string "Oh, I get it now. That's why the rest\n" .string "of the crew went out to FALLARBOR.$" -Route112_Text_CantLetAnyonePassUntilTheyreBack: @ 81F2003 +Route112_Text_CantLetAnyonePassUntilTheyreBack: .string "You got it. And until they come back,\n" .string "we're not to let anyone pass, right.$" -Route112_Text_NotEasyToGetBackToLavaridge: @ 81F204E +Route112_Text_NotEasyToGetBackToLavaridge: .string "Eh, I'd like to get to MAUVILLE, but if\n" .string "I went down these ledges, it'd be no\l" .string "easy matter to get back to LAVARIDGE.$" -Route112_Text_MtChimneyCableCarSign: @ 81F20C1 +Route112_Text_MtChimneyCableCarSign: .string "MT. CHIMNEY CABLE CAR\n" .string "“A short walk {UP_ARROW} way!”$" -Route112_Text_MtChimneySign: @ 81F20ED +Route112_Text_MtChimneySign: .string "MT. CHIMNEY\p" .string "“For LAVARIDGE TOWN or the summit,\n" .string "please take the CABLE CAR.”$" -Route112_Text_RouteSignLavaridge: @ 81F2138 +Route112_Text_RouteSignLavaridge: .string "ROUTE 112\n" .string "{LEFT_ARROW} LAVARIDGE TOWN$" diff --git a/data/maps/Route112_CableCarStation/scripts.inc b/data/maps/Route112_CableCarStation/scripts.inc index 6781b154c582..ebc5142ae2e3 100644 --- a/data/maps/Route112_CableCarStation/scripts.inc +++ b/data/maps/Route112_CableCarStation/scripts.inc @@ -1,26 +1,26 @@ .set LOCALID_ATTENDANT, 1 -Route112_CableCarStation_MapScripts:: @ 822AABE +Route112_CableCarStation_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route112_CableCarStation_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route112_CableCarStation_OnFrame .byte 0 -Route112_CableCarStation_OnTransition: @ 822AAC9 +Route112_CableCarStation_OnTransition: setescapewarp MAP_ROUTE112, 255, 28, 28 compare VAR_CABLE_CAR_STATION_STATE, 2 call_if_eq Route112_CableCarStation_EventScript_MoveAttendantAside end -Route112_CableCarStation_EventScript_MoveAttendantAside:: @ 822AADD +Route112_CableCarStation_EventScript_MoveAttendantAside:: setobjectxyperm LOCALID_ATTENDANT, 7, 4 setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_LEFT return -Route112_CableCarStation_OnFrame: @ 822AAE9 +Route112_CableCarStation_OnFrame: map_script_2 VAR_CABLE_CAR_STATION_STATE, 2, Route112_CableCarStation_EventScript_ExitCableCar .2byte 0 -Route112_CableCarStation_EventScript_ExitCableCar:: @ 822AAF3 +Route112_CableCarStation_EventScript_ExitCableCar:: lockall applymovement OBJ_EVENT_ID_PLAYER, Route112_CableCarStation_Movement_ExitCableCar applymovement LOCALID_ATTENDANT, Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar @@ -31,7 +31,7 @@ Route112_CableCarStation_EventScript_ExitCableCar:: @ 822AAF3 releaseall end -Route112_CableCarStation_EventScript_Attendant:: @ 822AB17 +Route112_CableCarStation_EventScript_Attendant:: lock faceplayer msgbox Route112_CableCarStation_Text_CableCarReadyGetOn, MSGBOX_YESNO @@ -41,7 +41,7 @@ Route112_CableCarStation_EventScript_Attendant:: @ 822AB17 goto_if_eq Route112_CableCarStation_EventScript_DeclineRide end -Route112_CableCarStation_EventScript_RideCableCar:: @ 822AB38 +Route112_CableCarStation_EventScript_RideCableCar:: msgbox Route112_CableCarStation_Text_StepThisWay, MSGBOX_DEFAULT closemessage applymovement LOCALID_ATTENDANT, Route112_CableCarStation_Movement_LeadPlayerToCableCar @@ -56,46 +56,46 @@ Route112_CableCarStation_EventScript_RideCableCar:: @ 822AB38 release end -Route112_CableCarStation_EventScript_DeclineRide:: @ 822AB67 +Route112_CableCarStation_EventScript_DeclineRide:: msgbox Route112_CableCarStation_Text_RideAnotherTime, MSGBOX_DEFAULT release end -Route112_CableCarStation_Movement_LeadPlayerToCableCar: @ 822AB71 +Route112_CableCarStation_Movement_LeadPlayerToCableCar: walk_up walk_up walk_right walk_in_place_fastest_left step_end -Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar: @ 822AB76 +Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar: delay_16 walk_left walk_down walk_down step_end -Route112_CableCarStation_Movement_BoardCableCar: @ 822AB7B +Route112_CableCarStation_Movement_BoardCableCar: walk_up walk_up walk_up delay_16 step_end -Route112_CableCarStation_Movement_ExitCableCar: @ 822AB80 +Route112_CableCarStation_Movement_ExitCableCar: walk_down walk_down walk_down delay_16 step_end -Route112_CableCarStation_Text_CableCarReadyGetOn: @ 822AB85 +Route112_CableCarStation_Text_CableCarReadyGetOn: .string "The CABLE CAR is ready to go up.\n" .string "Would you like to be on it?$" -Route112_CableCarStation_Text_StepThisWay: @ 822ABC2 +Route112_CableCarStation_Text_StepThisWay: .string "Please step this way.$" -Route112_CableCarStation_Text_RideAnotherTime: @ 822ABD8 +Route112_CableCarStation_Text_RideAnotherTime: .string "Please ride with us another time.$" diff --git a/data/maps/Route113/scripts.inc b/data/maps/Route113/scripts.inc index 24c57c29c143..0a8bb092c361 100644 --- a/data/maps/Route113/scripts.inc +++ b/data/maps/Route113/scripts.inc @@ -1,18 +1,18 @@ -Route113_MapScripts:: @ 81F2153 +Route113_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route113_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route113_OnTransition .byte 0 -Route113_OnResume: @ 81F215E +Route113_OnResume: setstepcallback STEP_CB_ASH end -Route113_OnTransition: @ 81F2161 +Route113_OnTransition: clearflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE call Route113_EventScript_CheckSetAshWeather end -Route113_EventScript_CheckSetAshWeather:: @ 81F216A +Route113_EventScript_CheckSetAshWeather:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 compare VAR_TEMP_0, 19 goto_if_lt Route113_EventScript_DontSetAshWeather @@ -21,44 +21,44 @@ Route113_EventScript_CheckSetAshWeather:: @ 81F216A setweather WEATHER_VOLCANIC_ASH return -Route113_EventScript_DontSetAshWeather:: @ 81F2189 +Route113_EventScript_DontSetAshWeather:: return -Route113_EventScript_Gentleman:: @ 81F218A +Route113_EventScript_Gentleman:: msgbox Route113_Text_AshCanBeFashionedIntoGlass, MSGBOX_NPC end -Route113_EventScript_NinjaBoy:: @ 81F2193 +Route113_EventScript_NinjaBoy:: msgbox Route113_Text_FunWalkingThroughAsh, MSGBOX_NPC end -Route113_EventScript_RouteSign111:: @ 81F219C +Route113_EventScript_RouteSign111:: msgbox Route113_Text_RouteSign111, MSGBOX_SIGN end -Route113_EventScript_RouteSignFallarbor:: @ 81F21A5 +Route113_EventScript_RouteSignFallarbor:: msgbox Route113_Text_RouteSignFallarbor, MSGBOX_SIGN end -Route113_EventScript_GlassWorkshopSign:: @ 81F21AE +Route113_EventScript_GlassWorkshopSign:: msgbox Route113_Text_GlassWorkshopSign, MSGBOX_SIGN end -Route113_EventScript_TrainerTipsRegisterKeyItems:: @ 81F21B7 +Route113_EventScript_TrainerTipsRegisterKeyItems:: msgbox Route113_Text_TrainerTipsRegisterKeyItems, MSGBOX_SIGN end -Route113_EventScript_Jaylen:: @ 81F21C0 +Route113_EventScript_Jaylen:: trainerbattle_single TRAINER_JAYLEN, Route113_Text_JaylenIntro, Route113_Text_JaylenDefeat msgbox Route113_Text_JaylenPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Dillon:: @ 81F21D7 +Route113_EventScript_Dillon:: trainerbattle_single TRAINER_DILLON, Route113_Text_DillonIntro, Route113_Text_DillonDefeat msgbox Route113_Text_DillonPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Madeline:: @ 81F21EE +Route113_EventScript_Madeline:: trainerbattle_single TRAINER_MADELINE_1, Route113_Text_MadelineIntro, Route113_Text_MadelineDefeat, Route113_EventScript_RegisterMadeline specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -67,7 +67,7 @@ Route113_EventScript_Madeline:: @ 81F21EE release end -Route113_EventScript_RegisterMadeline:: @ 81F221A +Route113_EventScript_RegisterMadeline:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route113_Text_MadelineRegister, MSGBOX_DEFAULT @@ -75,12 +75,12 @@ Route113_EventScript_RegisterMadeline:: @ 81F221A release end -Route113_EventScript_RematchMadeline:: @ 81F2239 +Route113_EventScript_RematchMadeline:: trainerbattle_rematch TRAINER_MADELINE_1, Route113_Text_MadelineRematchIntro, Route113_Text_MadelineRematchDefeat msgbox Route113_Text_MadelinePostRematch, MSGBOX_AUTOCLOSE end -Route113_EventScript_Lao:: @ 81F2250 +Route113_EventScript_Lao:: trainerbattle_single TRAINER_LAO_1, Route113_Text_LaoIntro, Route113_Text_LaoDefeat, Route113_EventScript_RegisterLao specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -89,7 +89,7 @@ Route113_EventScript_Lao:: @ 81F2250 release end -Route113_EventScript_RegisterLao:: @ 81F227C +Route113_EventScript_RegisterLao:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route113_Text_LaoRegister, MSGBOX_DEFAULT @@ -97,74 +97,74 @@ Route113_EventScript_RegisterLao:: @ 81F227C release end -Route113_EventScript_RematchLao:: @ 81F229B +Route113_EventScript_RematchLao:: trainerbattle_rematch TRAINER_LAO_1, Route113_Text_LaoRematchIntro, Route113_Text_LaoRematchDefeat msgbox Route113_Text_LaoPostRematch, MSGBOX_AUTOCLOSE end -Route113_EventScript_Lung:: @ 81F22B2 +Route113_EventScript_Lung:: trainerbattle_single TRAINER_LUNG, Route113_Text_LungIntro, Route113_Text_LungDefeat msgbox Route113_Text_LungPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Tori:: @ 81F22C9 +Route113_EventScript_Tori:: trainerbattle_double TRAINER_TORI_AND_TIA, Route113_Text_ToriIntro, Route113_Text_ToriDefeat, Route113_Text_ToriNotEnoughMons msgbox Route113_Text_ToriPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Tia:: @ 81F22E4 +Route113_EventScript_Tia:: trainerbattle_double TRAINER_TORI_AND_TIA, Route113_Text_TiaIntro, Route113_Text_TiaDefeat, Route113_Text_TiaNotEnoughMons msgbox Route113_Text_TiaPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Sophie:: @ 81F22FF +Route113_EventScript_Sophie:: trainerbattle_single TRAINER_SOPHIE, Route113_Text_SophieIntro, Route113_Text_SophieDefeat msgbox Route113_Text_SophiePostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Coby:: @ 81F2316 +Route113_EventScript_Coby:: trainerbattle_single TRAINER_COBY, Route113_Text_CobyIntro, Route113_Text_CobyDefeat msgbox Route113_Text_CobyPostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Lawrence:: @ 81F232D +Route113_EventScript_Lawrence:: trainerbattle_single TRAINER_LAWRENCE, Route113_Text_LawrenceIntro, Route113_Text_LawrenceDefeat msgbox Route113_Text_LawrencePostBattle, MSGBOX_AUTOCLOSE end -Route113_EventScript_Wyatt:: @ 81F2344 +Route113_EventScript_Wyatt:: trainerbattle_single TRAINER_WYATT, Route113_Text_WyattIntro, Route113_Text_WyattDefeat msgbox Route113_Text_WyattPostBattle, MSGBOX_AUTOCLOSE end -Route113_Text_AshCanBeFashionedIntoGlass: @ 81F235B +Route113_Text_AshCanBeFashionedIntoGlass: .string "Wahahaha! Today's technology is a\n" .string "wondrous thing!\p" .string "Take this volcanic ash here.\n" .string "It can be fashioned into glass.$" -Route113_Text_FunWalkingThroughAsh: @ 81F23CA +Route113_Text_FunWalkingThroughAsh: .string "It's fun walking through the volcano's\n" .string "ashes on the ground and grass.\p" .string "You can see where you walked--it's\n" .string "really neat!$" -Route113_Text_RouteSign111: @ 81F2440 +Route113_Text_RouteSign111: .string "ROUTE 113\n" .string "{RIGHT_ARROW} ROUTE 111$" -Route113_Text_RouteSignFallarbor: @ 81F2456 +Route113_Text_RouteSignFallarbor: .string "ROUTE 113\n" .string "{LEFT_ARROW} FALLARBOR TOWN$" -Route113_Text_TrainerTipsRegisterKeyItems: @ 81F2471 +Route113_Text_TrainerTipsRegisterKeyItems: .string "TRAINER TIPS\p" .string "You may register one of the KEY ITEMS\n" .string "in your BAG as SELECT.\p" .string "Simply press SELECT to use\n" .string "the registered item conveniently.$" -Route113_Text_GlassWorkshopSign: @ 81F24F8 +Route113_Text_GlassWorkshopSign: .string "GLASS WORKSHOP\n" .string "“Turning Volcanic Ash into Glass Items”$" diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc index eed6d8eaba3b..bad739806f5c 100644 --- a/data/maps/Route113_GlassWorkshop/scripts.inc +++ b/data/maps/Route113_GlassWorkshop/scripts.inc @@ -1,4 +1,4 @@ -Route113_GlassWorkshop_MapScripts:: @ 826ED03 +Route113_GlassWorkshop_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route113_GlassWorkshop_OnTransition .byte 0 @@ -11,17 +11,17 @@ Route113_GlassWorkshop_MapScripts:: @ 826ED03 .set PRETTY_DESK_PRICE, 8000 .set LOWEST_ASH_PRICE, BLUE_FLUTE_PRICE -Route113_GlassWorkshop_OnTransition: @ 826ED09 +Route113_GlassWorkshop_OnTransition: setflag FLAG_LANDMARK_GLASS_WORKSHOP compare VAR_GLASS_WORKSHOP_STATE, 1 call_if_eq Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack end -Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack:: @ 826ED18 +Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack:: setvar VAR_GLASS_WORKSHOP_STATE, 2 return -Route113_GlassWorkshop_EventScript_GlassWorker:: @ 826ED1E +Route113_GlassWorkshop_EventScript_GlassWorker:: lock faceplayer compare VAR_GLASS_WORKSHOP_STATE, 10 @@ -37,12 +37,12 @@ Route113_GlassWorkshop_EventScript_GlassWorker:: @ 826ED1E release end -Route113_GlassWorkshop_EventScript_ExplainSootSack:: @ 826ED64 +Route113_GlassWorkshop_EventScript_ExplainSootSack:: msgbox Route113_GlassWorkshop_Text_ExplainSootSack, MSGBOX_DEFAULT release end -Route113_GlassWorkshop_EventScript_CheckCollectedAsh:: @ 826ED6E +Route113_GlassWorkshop_EventScript_CheckCollectedAsh:: checkitem ITEM_SOOT_SACK, 1 compare VAR_RESULT, FALSE goto_if_eq Route113_GlassWorkshop_EventScript_SootSackNotInBag @@ -54,12 +54,12 @@ Route113_GlassWorkshop_EventScript_CheckCollectedAsh:: @ 826ED6E goto Route113_GlassWorkshop_EventScript_ChooseGlassItem end -Route113_GlassWorkshop_EventScript_SootSackNotInBag:: @ 826ED9D +Route113_GlassWorkshop_EventScript_SootSackNotInBag:: msgbox Route113_GlassWorkshop_Text_HaventGotYourSootSack, MSGBOX_DEFAULT release end -Route113_GlassWorkshop_EventScript_ChooseGlassItem:: @ 826EDA7 +Route113_GlassWorkshop_EventScript_ChooseGlassItem:: setvar VAR_0x8009, 0 setvar VAR_0x8004, SCROLL_MULTI_GLASS_WORKSHOP_VENDOR special ShowScrollableMultichoice @@ -76,7 +76,7 @@ Route113_GlassWorkshop_EventScript_ChooseGlassItem:: @ 826EDA7 case MULTI_B_PRESSED, Route113_GlassWorkshop_EventScript_CancelGlassItemSelect end -Route113_GlassWorkshop_EventScript_BlueFlute:: @ 826EE1E +Route113_GlassWorkshop_EventScript_BlueFlute:: setvar VAR_0x8008, ITEM_BLUE_FLUTE bufferitemname 0, VAR_0x8008 setvar VAR_0x800A, BLUE_FLUTE_PRICE @@ -90,7 +90,7 @@ Route113_GlassWorkshop_EventScript_BlueFlute:: @ 826EE1E goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_YellowFlute:: @ 826EE5A +Route113_GlassWorkshop_EventScript_YellowFlute:: setvar VAR_0x8008, ITEM_YELLOW_FLUTE bufferitemname 0, VAR_0x8008 setvar VAR_0x800A, YELLOW_FLUTE_PRICE @@ -104,7 +104,7 @@ Route113_GlassWorkshop_EventScript_YellowFlute:: @ 826EE5A goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_RedFlute:: @ 826EE96 +Route113_GlassWorkshop_EventScript_RedFlute:: setvar VAR_0x8008, ITEM_RED_FLUTE bufferitemname 0, VAR_0x8008 setvar VAR_0x800A, RED_FLUTE_PRICE @@ -118,7 +118,7 @@ Route113_GlassWorkshop_EventScript_RedFlute:: @ 826EE96 goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_WhiteFlute:: @ 826EED2 +Route113_GlassWorkshop_EventScript_WhiteFlute:: setvar VAR_0x8008, ITEM_WHITE_FLUTE bufferitemname 0, VAR_0x8008 setvar VAR_0x800A, WHITE_FLUTE_PRICE @@ -132,7 +132,7 @@ Route113_GlassWorkshop_EventScript_WhiteFlute:: @ 826EED2 goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_BlackFlute:: @ 826EF0E +Route113_GlassWorkshop_EventScript_BlackFlute:: setvar VAR_0x8008, ITEM_BLACK_FLUTE bufferitemname 0, VAR_0x8008 setvar VAR_0x800A, BLACK_FLUTE_PRICE @@ -146,7 +146,7 @@ Route113_GlassWorkshop_EventScript_BlackFlute:: @ 826EF0E goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_PrettyChair:: @ 826EF4A +Route113_GlassWorkshop_EventScript_PrettyChair:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_CHAIR bufferdecorationname 0, VAR_0x8008 @@ -161,7 +161,7 @@ Route113_GlassWorkshop_EventScript_PrettyChair:: @ 826EF4A goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_PrettyDesk:: @ 826EF8B +Route113_GlassWorkshop_EventScript_PrettyDesk:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_DESK bufferdecorationname 0, VAR_0x8008 @@ -176,12 +176,12 @@ Route113_GlassWorkshop_EventScript_PrettyDesk:: @ 826EF8B goto Route113_GlassWorkshop_EventScript_MakeGlassItem end -Route113_GlassWorkshop_EventScript_CancelGlassItemSelect:: @ 826EFCC +Route113_GlassWorkshop_EventScript_CancelGlassItemSelect:: msgbox Route113_GlassWorkshop_Text_AllThatAshButDontWantAnything, MSGBOX_DEFAULT release end -Route113_GlassWorkshop_EventScript_NotEnoughAsh:: @ 826EFD6 +Route113_GlassWorkshop_EventScript_NotEnoughAsh:: setvar VAR_0x800A, LOWEST_ASH_PRICE subvar VAR_0x800A, VAR_ASH_GATHER_COUNT buffernumberstring 0, VAR_0x800A @@ -189,7 +189,7 @@ Route113_GlassWorkshop_EventScript_NotEnoughAsh:: @ 826EFD6 release end -Route113_GlassWorkshop_EventScript_NotEnoughAshForItem:: @ 826EFEE +Route113_GlassWorkshop_EventScript_NotEnoughAshForItem:: subvar VAR_0x800A, VAR_ASH_GATHER_COUNT buffernumberstring 1, VAR_0x800A message Route113_GlassWorkshop_Text_NotEnoughAshToMakeItem @@ -197,13 +197,13 @@ Route113_GlassWorkshop_EventScript_NotEnoughAshForItem:: @ 826EFEE goto Route113_GlassWorkshop_EventScript_ChooseGlassItem end -Route113_GlassWorkshop_EventScript_ChooseDifferentItem:: @ 826F003 +Route113_GlassWorkshop_EventScript_ChooseDifferentItem:: message Route113_GlassWorkshop_Text_WhichWouldYouLike waitmessage goto Route113_GlassWorkshop_EventScript_ChooseGlassItem end -Route113_GlassWorkshop_EventScript_MakeGlassItem:: @ 826F00F +Route113_GlassWorkshop_EventScript_MakeGlassItem:: msgbox Route113_GlassWorkshop_Text_IllMakeItemForYou, MSGBOX_DEFAULT closemessage fadescreen FADE_TO_BLACK @@ -219,31 +219,31 @@ Route113_GlassWorkshop_EventScript_MakeGlassItem:: @ 826F00F release end -Route113_GlassWorkshop_EventScript_GiveGlassFlute:: @ 826F047 +Route113_GlassWorkshop_EventScript_GiveGlassFlute:: giveitem VAR_0x8008 compare VAR_RESULT, FALSE goto_if_eq Route113_GlassWorkshop_EventScript_NoRoomForFlute return -Route113_GlassWorkshop_EventScript_GiveGlassDecor:: @ 826F05F +Route113_GlassWorkshop_EventScript_GiveGlassDecor:: givedecoration VAR_0x8008 compare VAR_RESULT, FALSE goto_if_eq Route113_GlassWorkshop_EventScript_NoRoomForDecor return -Route113_GlassWorkshop_EventScript_NoRoomForFlute:: @ 826F072 +Route113_GlassWorkshop_EventScript_NoRoomForFlute:: call Common_EventScript_BagIsFull msgbox Route113_GlassWorkshop_Text_NoRoomInBag, MSGBOX_DEFAULT release end -Route113_GlassWorkshop_EventScript_NoRoomForDecor:: @ 826F081 +Route113_GlassWorkshop_EventScript_NoRoomForDecor:: call Common_EventScript_NoRoomForDecor msgbox Route113_GlassWorkshop_Text_NoRoomInPC, MSGBOX_DEFAULT release end -Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom:: @ 826F090 +Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom:: switch VAR_GLASS_WORKSHOP_STATE case 10, Route113_GlassWorkshop_EventScript_GiveBlueFlute case 11, Route113_GlassWorkshop_EventScript_GiveYellowFlute @@ -254,56 +254,56 @@ Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom:: @ 826F090 case 16, Route113_GlassWorkshop_EventScript_GivePrettyDesk end -Route113_GlassWorkshop_EventScript_GiveBlueFlute:: @ 826F0E3 +Route113_GlassWorkshop_EventScript_GiveBlueFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_BLUE_FLUTE bufferitemname 0, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GiveYellowFlute:: @ 826F0F7 +Route113_GlassWorkshop_EventScript_GiveYellowFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_YELLOW_FLUTE bufferitemname 0, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GiveRedFlute:: @ 826F10B +Route113_GlassWorkshop_EventScript_GiveRedFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_RED_FLUTE bufferitemname 0, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GiveWhiteFlute:: @ 826F11F +Route113_GlassWorkshop_EventScript_GiveWhiteFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_WHITE_FLUTE bufferitemname 0, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GiveBlackFlute:: @ 826F133 +Route113_GlassWorkshop_EventScript_GiveBlackFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_BLACK_FLUTE bufferitemname 0, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GivePrettyChair:: @ 826F147 +Route113_GlassWorkshop_EventScript_GivePrettyChair:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_CHAIR bufferdecorationname 0, DECOR_PRETTY_CHAIR goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_GivePrettyDesk:: @ 826F15B +Route113_GlassWorkshop_EventScript_GivePrettyDesk:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_DESK bufferdecorationname 0, DECOR_PRETTY_DESK goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end -Route113_GlassWorkshop_EventScript_TryGiveItemAgain:: @ 826F16F +Route113_GlassWorkshop_EventScript_TryGiveItemAgain:: msgbox Route113_GlassWorkshop_Text_IveFinishedGlassItem, MSGBOX_DEFAULT compare VAR_0x8009, 0 call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassFlute @@ -313,11 +313,11 @@ Route113_GlassWorkshop_EventScript_TryGiveItemAgain:: @ 826F16F release end -Route113_GlassWorkshop_EventScript_NinjaBoy:: @ 826F194 +Route113_GlassWorkshop_EventScript_NinjaBoy:: msgbox Route113_GlassWorkshop_Text_FunToBlowGlassFlute, MSGBOX_NPC end -Route113_GlassWorkshop_Text_GoCollectAshWithThis: @ 826F19D +Route113_GlassWorkshop_Text_GoCollectAshWithThis: .string "This area is covered in volcanic ash,\n" .string "huff-puff!\p" .string "I'm specially gifted, huff-puff.\p" @@ -325,7 +325,7 @@ Route113_GlassWorkshop_Text_GoCollectAshWithThis: @ 826F19D .string "and make items, huff-puff.\p" .string "Go collect ashes with this, huff-puff.$" -Route113_GlassWorkshop_Text_ExplainSootSack: @ 826F252 +Route113_GlassWorkshop_Text_ExplainSootSack: .string "Just take that SOOT SACK and walk\n" .string "through piles of ash, huff-puff.\p" .string "And it will fill up with the volcanic ash,\n" @@ -333,11 +333,11 @@ Route113_GlassWorkshop_Text_ExplainSootSack: @ 826F252 .string "Once you think you've collected a good\n" .string "amount, come see me, huff-puff.$" -Route113_GlassWorkshop_Text_LetsSeeCollectedAshes: @ 826F312 +Route113_GlassWorkshop_Text_LetsSeeCollectedAshes: .string "Have you collected ashes, huff-puff?\n" .string "Let me see, huff-puff.$" -Route113_GlassWorkshop_Text_NotEnoughAshNeedX: @ 826F34E +Route113_GlassWorkshop_Text_NotEnoughAshNeedX: .string "Hmmm…\n" .string "There's not enough ash here, huff-puff.\l" .string "I can't make glass with this, huff-puff.\p" @@ -345,25 +345,25 @@ Route113_GlassWorkshop_Text_NotEnoughAshNeedX: @ 826F34E .string "you'll need to walk for me to make you\l" .string "a BLUE FLUTE, huff-puff.$" -Route113_GlassWorkshop_Text_WhichGlassItemWoudYouLike: @ 826F40A +Route113_GlassWorkshop_Text_WhichGlassItemWoudYouLike: .string "Oh!\n" .string "You've got a lot of ashes, huff-puff!\p" .string "I'll make you a glass item, huff-puff!\n" .string "Which one would you like, huff-puff?$" -Route113_GlassWorkshop_Text_IsThatTheItemForYou: @ 826F480 +Route113_GlassWorkshop_Text_IsThatTheItemForYou: .string "A {STR_VAR_1}, huff-puff?\n" .string "Is that the one for you, huff-puff?$" -Route113_GlassWorkshop_Text_WhichWouldYouLike: @ 826F4B5 +Route113_GlassWorkshop_Text_WhichWouldYouLike: .string "Which one would you like, huff-puff?$" -Route113_GlassWorkshop_Text_IllMakeItemForYou: @ 826F4DA +Route113_GlassWorkshop_Text_IllMakeItemForYou: .string "A {STR_VAR_1} it is, then, huff-puff!\p" .string "Okay! I'll make it for you, huff-puff.\n" .string "Just wait a little while, huff-puff.$" -Route113_GlassWorkshop_Text_NotEnoughAshToMakeItem: @ 826F543 +Route113_GlassWorkshop_Text_NotEnoughAshToMakeItem: .string "A {STR_VAR_1}, huff-puff?\p" .string "There's not enough ash here to make\n" .string "that, though, huff-puff.\p" @@ -373,33 +373,33 @@ Route113_GlassWorkshop_Text_NotEnoughAshToMakeItem: @ 826F543 .string "Which item would you rather have me\n" .string "make instead, huff-puff?$" -Route113_GlassWorkshop_Text_AllThatAshButDontWantAnything: @ 826F641 +Route113_GlassWorkshop_Text_AllThatAshButDontWantAnything: .string "You've collected all that ash, but you\n" .string "don't want anything, huff-puff?$" -Route113_GlassWorkshop_Text_IveFinishedGlassItem: @ 826F688 +Route113_GlassWorkshop_Text_IveFinishedGlassItem: .string "Ah, I've finished your {STR_VAR_1}.\n" .string "Take it, huff-puff.$" -Route113_GlassWorkshop_Text_NoRoomInBag: @ 826F6B7 +Route113_GlassWorkshop_Text_NoRoomInBag: .string "Oh?\n" .string "You've no room in your BAG, huff-puff.\p" .string "I'll hold on to it, so come back later,\n" .string "huff-puff.$" -Route113_GlassWorkshop_Text_NoRoomInPC: @ 826F715 +Route113_GlassWorkshop_Text_NoRoomInPC: .string "Oh?\n" .string "You've no room in your PC, huff-puff?\p" .string "I'll hold on to it, so come back later,\n" .string "huff-puff.$" -Route113_GlassWorkshop_Text_HaventGotYourSootSack: @ 826F772 +Route113_GlassWorkshop_Text_HaventGotYourSootSack: .string "Hah? You haven't got your SOOT SACK\n" .string "with you, huff-puff.\p" .string "You have to keep it with you to collect\n" .string "volcanic ash, huff-puff.$" -Route113_GlassWorkshop_Text_FunToBlowGlassFlute: @ 826F7EC +Route113_GlassWorkshop_Text_FunToBlowGlassFlute: .string "It's fun to blow a glass flute while\n" .string "my boss is talking.\p" .string "Huff-huff! Puff-puff!$" diff --git a/data/maps/Route114/scripts.inc b/data/maps/Route114/scripts.inc index dda7f270d194..3eb92d0f1e6e 100644 --- a/data/maps/Route114/scripts.inc +++ b/data/maps/Route114/scripts.inc @@ -1,10 +1,10 @@ -Route114_MapScripts:: @ 81F252F +Route114_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route114_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route114_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route114_OnFrame .byte 0 -Route114_OnTransition: @ 81F253F +Route114_OnTransition: compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH @@ -13,18 +13,18 @@ Route114_OnTransition: @ 81F253F call_if_eq AbnormalWeather_StartGroudonWeather end -Route114_OnLoad: @ 81F2561 +Route114_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute114North compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_SOUTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute114South end -Route114_OnFrame: @ 81F2578 +Route114_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route114_EventScript_Man:: @ 81F2582 +Route114_EventScript_Man:: lock faceplayer dotimebasedevents @@ -41,12 +41,12 @@ Route114_EventScript_Man:: @ 81F2582 release end -Route114_EventScript_ReceivedBerry:: @ 81F25C7 +Route114_EventScript_ReceivedBerry:: msgbox Route114_Text_FunToThinkAboutBerries, MSGBOX_DEFAULT release end -Route114_EventScript_RoarGentleman:: @ 81F25D1 +Route114_EventScript_RoarGentleman:: lock faceplayer goto_if_set FLAG_RECEIVED_TM05, Route114_EventScript_ReceivedRoar @@ -59,12 +59,12 @@ Route114_EventScript_RoarGentleman:: @ 81F25D1 release end -Route114_EventScript_ReceivedRoar:: @ 81F2608 +Route114_EventScript_ReceivedRoar:: msgbox Route114_Text_ExplainRoar, MSGBOX_DEFAULT release end -Route114_EventScript_Poochyena:: @ 81F2612 +Route114_EventScript_Poochyena:: lock faceplayer waitse @@ -74,39 +74,39 @@ Route114_EventScript_Poochyena:: @ 81F2612 release end -Route114_EventScript_MeteorFallsSign:: @ 81F2625 +Route114_EventScript_MeteorFallsSign:: msgbox Route114_Text_MeteorFallsSign, MSGBOX_SIGN end -Route114_EventScript_FossilManiacsHouseSign:: @ 81F262E +Route114_EventScript_FossilManiacsHouseSign:: msgbox Route114_Text_FossilManiacsHouseSign, MSGBOX_SIGN end -Route114_EventScript_LanettesHouseSign:: @ 81F2637 +Route114_EventScript_LanettesHouseSign:: msgbox Route114_Text_LanettesHouse, MSGBOX_SIGN end -Route114_EventScript_Lenny:: @ 81F2640 +Route114_EventScript_Lenny:: trainerbattle_single TRAINER_LENNY, Route114_Text_LennyIntro, Route114_Text_LennyDefeat msgbox Route114_Text_LennyPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Lucas:: @ 81F2657 +Route114_EventScript_Lucas:: trainerbattle_single TRAINER_LUCAS_1, Route114_Text_LucasIntro, Route114_Text_LucasDefeat msgbox Route114_Text_LucasPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Shane:: @ 81F266E +Route114_EventScript_Shane:: trainerbattle_single TRAINER_SHANE, Route114_Text_ShaneIntro, Route114_Text_ShaneDefeat msgbox Route114_Text_ShanePostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Nancy:: @ 81F2685 +Route114_EventScript_Nancy:: trainerbattle_single TRAINER_NANCY, Route114_Text_NancyIntro, Route114_Text_NancyDefeat msgbox Route114_Text_NancyPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Steve:: @ 81F269C +Route114_EventScript_Steve:: trainerbattle_single TRAINER_STEVE_1, Route114_Text_SteveIntro, Route114_Text_SteveDefeat, Route114_EventScript_RegisterSteve specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -115,7 +115,7 @@ Route114_EventScript_Steve:: @ 81F269C release end -Route114_EventScript_RegisterSteve:: @ 81F26C8 +Route114_EventScript_RegisterSteve:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route114_Text_SteveRegister, MSGBOX_DEFAULT @@ -123,12 +123,12 @@ Route114_EventScript_RegisterSteve:: @ 81F26C8 release end -Route114_EventScript_RematchSteve:: @ 81F26E7 +Route114_EventScript_RematchSteve:: trainerbattle_rematch TRAINER_STEVE_1, Route114_Text_SteveRematchIntro, Route114_Text_SteveRematchDefeat msgbox Route114_Text_StevePostRematch, MSGBOX_AUTOCLOSE end -Route114_EventScript_Bernie:: @ 81F26FE +Route114_EventScript_Bernie:: trainerbattle_single TRAINER_BERNIE_1, Route114_Text_BernieIntro, Route114_Text_BernieDefeat, Route114_EventScript_RegisterBernie specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -137,7 +137,7 @@ Route114_EventScript_Bernie:: @ 81F26FE release end -Route114_EventScript_RegisterBernie:: @ 81F272A +Route114_EventScript_RegisterBernie:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route114_Text_BernieRegister, MSGBOX_DEFAULT @@ -145,67 +145,67 @@ Route114_EventScript_RegisterBernie:: @ 81F272A release end -Route114_EventScript_RematchBernie:: @ 81F2749 +Route114_EventScript_RematchBernie:: trainerbattle_rematch TRAINER_BERNIE_1, Route114_Text_BernieRematchIntro, Route114_Text_BernieRematchDefeat msgbox Route114_Text_BerniePostRematch, MSGBOX_AUTOCLOSE end -Route114_EventScript_Claude:: @ 81F2760 +Route114_EventScript_Claude:: trainerbattle_single TRAINER_CLAUDE, Route114_Text_ClaudeIntro, Route114_Text_ClaudeDefeat msgbox Route114_Text_ClaudePostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Nolan:: @ 81F2777 +Route114_EventScript_Nolan:: trainerbattle_single TRAINER_NOLAN, Route114_Text_NolanIntro, Route114_Text_NolanDefeat msgbox Route114_Text_NolanPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Tyra:: @ 81F278E +Route114_EventScript_Tyra:: trainerbattle_double TRAINER_TYRA_AND_IVY, Route114_Text_TyraIntro, Route114_Text_TyraDefeat, Route114_Text_TyraNotEnoughMons msgbox Route114_Text_TyraPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Ivy:: @ 81F27A9 +Route114_EventScript_Ivy:: trainerbattle_double TRAINER_TYRA_AND_IVY, Route114_Text_IvyIntro, Route114_Text_IvyDefeat, Route114_Text_IvyNotEnoughMons msgbox Route114_Text_IvyPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Angelina:: @ 81F27C4 +Route114_EventScript_Angelina:: trainerbattle_single TRAINER_ANGELINA, Route114_Text_AngelinaIntro, Route114_Text_AngelinaDefeat msgbox Route114_Text_AngelinaPostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Charlotte:: @ 81F27DB +Route114_EventScript_Charlotte:: trainerbattle_single TRAINER_CHARLOTTE, Route114_Text_CharlotteIntro, Route114_Text_CharlotteDefeat msgbox Route114_Text_CharlottePostBattle, MSGBOX_AUTOCLOSE end -Route114_EventScript_Kai:: @ 81F27F2 +Route114_EventScript_Kai:: trainerbattle_single TRAINER_KAI, Route114_Text_KaiIntro, Route114_Text_KaiDefeat msgbox Route114_Text_KaiPostBattle, MSGBOX_AUTOCLOSE end -Route114_Text_AllMyMonDoesIsRoarTakeThis: @ 81F2809 +Route114_Text_AllMyMonDoesIsRoarTakeThis: .string "All my POKéMON does is ROAR…\n" .string "No one dares to come near me…\p" .string "Sigh… If you would, please take\n" .string "this TM away…$" -Route114_Text_ExplainRoar: @ 81F2872 +Route114_Text_ExplainRoar: .string "TM05 contains ROAR.\n" .string "A ROAR sends POKéMON scurrying.$" -Route114_Text_Poochyena: @ 81F28A6 +Route114_Text_Poochyena: .string "Bow! Bowwow!$" -Route114_Text_MeteorFallsSign: @ 81F28B3 +Route114_Text_MeteorFallsSign: .string "METEOR FALLS\n" .string "RUSTBORO CITY THROUGH HERE$" -Route114_Text_FossilManiacsHouseSign: @ 81F28DB +Route114_Text_FossilManiacsHouseSign: .string "FOSSIL MANIAC'S HOUSE\n" .string "“Fossils gratefully accepted!”$" -Route114_Text_LanettesHouse: @ 81F2910 +Route114_Text_LanettesHouse: .string "LANETTE'S HOUSE$" diff --git a/data/maps/Route114_FossilManiacsHouse/scripts.inc b/data/maps/Route114_FossilManiacsHouse/scripts.inc index 8db686d10b69..f291cd5ee4ef 100644 --- a/data/maps/Route114_FossilManiacsHouse/scripts.inc +++ b/data/maps/Route114_FossilManiacsHouse/scripts.inc @@ -1,12 +1,12 @@ -Route114_FossilManiacsHouse_MapScripts:: @ 822AD30 +Route114_FossilManiacsHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route114_FossilManiacsHouse_OnTransition .byte 0 -Route114_FossilManiacsHouse_OnTransition: @ 822AD36 +Route114_FossilManiacsHouse_OnTransition: setflag FLAG_LANDMARK_FOSSIL_MANIACS_HOUSE end -Route114_FossilManiacsHouse_EventScript_FossilManiacsBrother:: @ 822AD3A +Route114_FossilManiacsHouse_EventScript_FossilManiacsBrother:: lock faceplayer goto_if_set FLAG_RECEIVED_TM28, Route114_FossilManiacsHouse_EventScript_ReceivedDig @@ -18,20 +18,20 @@ Route114_FossilManiacsHouse_EventScript_FossilManiacsBrother:: @ 822AD3A release end -Route114_FossilManiacsHouse_EventScript_ReceivedDig:: @ 822AD69 +Route114_FossilManiacsHouse_EventScript_ReceivedDig:: msgbox Route114_FossilManiacsHouse_Text_DigReturnsYouToEntrance, MSGBOX_DEFAULT release end -Route114_FossilManiacsHouse_EventScript_RockDisplay:: @ 822AD73 +Route114_FossilManiacsHouse_EventScript_RockDisplay:: msgbox Route114_FossilManiacsHouse_Text_RocksFillDisplayCase, MSGBOX_SIGN end -Route114_FossilManiacsHouse_EventScript_Bookshelf:: @ 822AD7C +Route114_FossilManiacsHouse_EventScript_Bookshelf:: msgbox Route114_FossilManiacsHouse_Text_CrammedWithBooks, MSGBOX_SIGN end -Route114_FossilManiacsHouse_Text_HaveThisToDigLikeMyBrother: @ 822AD85 +Route114_FossilManiacsHouse_Text_HaveThisToDigLikeMyBrother: .string "My big brother's the FOSSIL MANIAC…\n" .string "He's a nice guy who loves FOSSILS…\p" .string "He loves digging holes, too…\n" @@ -39,15 +39,15 @@ Route114_FossilManiacsHouse_Text_HaveThisToDigLikeMyBrother: @ 822AD85 .string "You can have this, so you can DIG\n" .string "holes just like my big brother…$" -Route114_FossilManiacsHouse_Text_DigReturnsYouToEntrance: @ 822AE48 +Route114_FossilManiacsHouse_Text_DigReturnsYouToEntrance: .string "If you make a POKéMON DIG inside a\n" .string "cave, you're returned to the entrance…$" -Route114_FossilManiacsHouse_Text_RocksFillDisplayCase: @ 822AE92 +Route114_FossilManiacsHouse_Text_RocksFillDisplayCase: .string "Rocks in peculiar shapes fill\n" .string "the display case…$" -Route114_FossilManiacsHouse_Text_CrammedWithBooks: @ 822AEC2 +Route114_FossilManiacsHouse_Text_CrammedWithBooks: .string "THE COMPOSITION OF STRATA…\n" .string "HOW RAIN SHAPES THE LAND…\l" .string "STONES, SOIL, AND ROCK…\p" diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc index 86bb20eed99c..a5181be7930f 100644 --- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc +++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc @@ -1,29 +1,29 @@ .set LOCALID_FOSSIL_MANIAC, 1 -Route114_FossilManiacsTunnel_MapScripts:: @ 822AF28 +Route114_FossilManiacsTunnel_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route114_FossilManiacsTunnel_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route114_FossilManiacsTunnel_OnLoad .byte 0 -Route114_FossilManiacsTunnel_OnTransition: @ 822AF33 +Route114_FossilManiacsTunnel_OnTransition: call_if_set FLAG_SYS_GAME_CLEAR, Route114_FossilManiacsTunnel_EventScript_MoveFossilManiac end -Route114_FossilManiacsTunnel_EventScript_MoveFossilManiac:: @ 822AF3D +Route114_FossilManiacsTunnel_EventScript_MoveFossilManiac:: setobjectxyperm LOCALID_FOSSIL_MANIAC, 6, 5 setobjectmovementtype LOCALID_FOSSIL_MANIAC, MOVEMENT_TYPE_FACE_DOWN return -Route114_FossilManiacsTunnel_OnLoad: @ 822AF49 +Route114_FossilManiacsTunnel_OnLoad: call_if_unset FLAG_SYS_GAME_CLEAR, Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass end -Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass:: @ 822AF53 +Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass:: setmetatile 6, 1, METATILE_Fallarbor_RedRockWall, 1 setmetatile 6, 2, METATILE_Fallarbor_RedRockWall, 1 return -Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn:: @ 822AF66 +Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn:: lockall applymovement LOCALID_FOSSIL_MANIAC, Common_Movement_WalkInPlaceFastestUp applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown @@ -33,7 +33,7 @@ Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn:: @ 822AF66 releaseall end -Route114_FossilManiacsTunnel_EventScript_FossilManiac:: @ 822AF87 +Route114_FossilManiacsTunnel_EventScript_FossilManiac:: lock faceplayer goto_if_set FLAG_RECEIVED_REVIVED_FOSSIL_MON, Route114_FossilManiacsTunnel_EventScript_PlayerRevivedFossil @@ -47,17 +47,17 @@ Route114_FossilManiacsTunnel_EventScript_FossilManiac:: @ 822AF87 release end -Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil:: @ 822AFBC +Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil:: msgbox Route114_FossilManiacsTunnel_Text_DevonCorpRevivingFossils, MSGBOX_DEFAULT release end -Route114_FossilManiacsTunnel_EventScript_PlayerRevivedFossil:: @ 822AFC6 +Route114_FossilManiacsTunnel_EventScript_PlayerRevivedFossil:: msgbox Route114_FossilManiacsTunnel_Text_FossilsAreWonderful, MSGBOX_DEFAULT release end -Route114_FossilManiacsTunnel_Text_LookInDesertForFossils: @ 822AFD0 +Route114_FossilManiacsTunnel_Text_LookInDesertForFossils: .string "I'm the FOSSIL MANIAC…\n" .string "I'm a nice guy who loves FOSSILS…\p" .string "Do you want a FOSSIL?\p" @@ -68,7 +68,7 @@ Route114_FossilManiacsTunnel_Text_LookInDesertForFossils: @ 822AFD0 .string "are boulders and sand that may hide\l" .string "FOSSILS…$" -Route114_FossilManiacsTunnel_Text_DevonCorpRevivingFossils: @ 822B0D6 +Route114_FossilManiacsTunnel_Text_DevonCorpRevivingFossils: .string "You found a FOSSIL, didn't you?\n" .string "That's so nice… It's so dreamy…\p" .string "What are you going to do with that\n" @@ -79,11 +79,11 @@ Route114_FossilManiacsTunnel_Text_DevonCorpRevivingFossils: @ 822B0D6 .string "I love my FOSSILS, so I would never\n" .string "do anything like that…$" -Route114_FossilManiacsTunnel_Text_FossilsAreWonderful: @ 822B1CC +Route114_FossilManiacsTunnel_Text_FossilsAreWonderful: .string "FOSSILS are so… Wonderful…\n" .string "It's so dreamy…$" -Route114_FossilManiacsTunnel_Text_NotSafeThatWay: @ 822B1F7 +Route114_FossilManiacsTunnel_Text_NotSafeThatWay: .string "Oh…\n" .string "It's not safe that way…\p" .string "I was digging away, you see…\n" diff --git a/data/maps/Route114_LanettesHouse/scripts.inc b/data/maps/Route114_LanettesHouse/scripts.inc index cd2f808fca8a..5a7ccb34158f 100644 --- a/data/maps/Route114_LanettesHouse/scripts.inc +++ b/data/maps/Route114_LanettesHouse/scripts.inc @@ -1,12 +1,12 @@ -Route114_LanettesHouse_MapScripts:: @ 822B2C8 +Route114_LanettesHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route114_LanettesHouse_OnTransition .byte 0 -Route114_LanettesHouse_OnTransition: @ 822B2CE +Route114_LanettesHouse_OnTransition: setflag FLAG_LANDMARK_LANETTES_HOUSE end -Route114_LanettesHouse_EventScript_Lanette:: @ 822B2D2 +Route114_LanettesHouse_EventScript_Lanette:: lock faceplayer goto_if_set FLAG_RECEIVED_DOLL_LANETTE, Route114_LanettesHouse_EventScript_OfferAdvice @@ -19,12 +19,12 @@ Route114_LanettesHouse_EventScript_Lanette:: @ 822B2D2 release end -Route114_LanettesHouse_EventScript_OfferAdvice:: @ 822B2FF +Route114_LanettesHouse_EventScript_OfferAdvice:: msgbox Route114_LanettesHouse_Text_OrganizeYourBoxes, MSGBOX_DEFAULT release end -Route114_LanettesHouse_EventScript_Notebook:: @ 822B309 +Route114_LanettesHouse_EventScript_Notebook:: lockall msgbox Route114_LanettesHouse_Text_ResearchNotesPage1, MSGBOX_YESNO compare VAR_RESULT, YES @@ -33,22 +33,22 @@ Route114_LanettesHouse_EventScript_Notebook:: @ 822B309 releaseall end -Route114_LanettesHouse_EventScript_NotebookPage2:: @ 822B327 +Route114_LanettesHouse_EventScript_NotebookPage2:: msgbox Route114_LanettesHouse_Text_ResearchNotesPage2, MSGBOX_YESNO compare VAR_RESULT, YES call_if_eq Route114_LanettesHouse_EventScript_NotebookPage3 releaseall end -Route114_LanettesHouse_EventScript_NotebookPage3:: @ 822B33C +Route114_LanettesHouse_EventScript_NotebookPage3:: msgbox Route114_LanettesHouse_Text_ResearchNotesPage3, MSGBOX_DEFAULT return -Route114_LanettesHouse_EventScript_PC:: @ 822B345 +Route114_LanettesHouse_EventScript_PC:: msgbox Route114_LanettesHouse_Text_EmailFromBill, MSGBOX_SIGN end -Route114_LanettesHouse_Text_EverythingClutteredKeepThis: @ 822B34E +Route114_LanettesHouse_Text_EverythingClutteredKeepThis: .string "LANETTE: Oh! {PLAYER}{KUN}!\p" .string "I'm sorry everything is so cluttered…\n" .string "When I get engrossed in research,\l" @@ -56,13 +56,13 @@ Route114_LanettesHouse_Text_EverythingClutteredKeepThis: @ 822B34E .string "This is embarrassing… Please keep\n" .string "this a secret in exchange for this.$" -Route114_LanettesHouse_Text_OrganizeYourBoxes: @ 822B407 +Route114_LanettesHouse_Text_OrganizeYourBoxes: .string "May I offer advice about my POKéMON\n" .string "Storage System?\p" .string "You should organize your BOXES so you\n" .string "can tell which POKéMON are in them.$" -Route114_LanettesHouse_Text_ResearchNotesPage1: @ 822B485 +Route114_LanettesHouse_Text_ResearchNotesPage1: .string "It's LANETTE's research notes.\n" .string "There's information about BOXES.\p" .string "Design BOXES to hold 30 POKéMON each.\p" @@ -70,7 +70,7 @@ Route114_LanettesHouse_Text_ResearchNotesPage1: @ 822B485 .string "420 POKéMON on the PC system.\p" .string "Keep reading?$" -Route114_LanettesHouse_Text_ResearchNotesPage2: @ 822B53C +Route114_LanettesHouse_Text_ResearchNotesPage2: .string "A marking system should be added to\n" .string "make POKéMON easier to organize.\p" .string "The name and wallpaper design of each\n" @@ -78,7 +78,7 @@ Route114_LanettesHouse_Text_ResearchNotesPage2: @ 822B53C .string "the stored POKéMON.\p" .string "Keep reading?$" -Route114_LanettesHouse_Text_ResearchNotesPage3: @ 822B5EF +Route114_LanettesHouse_Text_ResearchNotesPage3: .string "When storing a POKéMON, it should be\n" .string "sent to the BOX inspected last.\p" .string "If that BOX is full, the received\n" @@ -87,10 +87,10 @@ Route114_LanettesHouse_Text_ResearchNotesPage3: @ 822B5EF .string "it is automatically selected as the BOX\l" .string "to which POKéMON are sent.$" -Route114_LanettesHouse_Text_ClosedTheNotebook: @ 822B6E4 +Route114_LanettesHouse_Text_ClosedTheNotebook: .string "{PLAYER} closed the notebook.$" -Route114_LanettesHouse_Text_EmailFromBill: @ 822B6FC +Route114_LanettesHouse_Text_EmailFromBill: .string "There's an e-mail from someone on\n" .string "the PC.\p" .string "“… … … … … … …\p" diff --git a/data/maps/Route115/scripts.inc b/data/maps/Route115/scripts.inc index a9d0d93c1547..600e6751f2fa 100644 --- a/data/maps/Route115/scripts.inc +++ b/data/maps/Route115/scripts.inc @@ -1,17 +1,17 @@ -Route115_MapScripts:: @ 81F2920 +Route115_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, Route115_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, Route115_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route115_OnFrame .byte 0 -Route115_OnLoad: @ 81F2930 +Route115_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute115West compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_EAST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute115East end -Route115_OnTransition: @ 81F2947 +Route115_OnTransition: compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST @@ -20,23 +20,23 @@ Route115_OnTransition: @ 81F2947 call_if_eq AbnormalWeather_StartGroudonWeather end -Route115_OnFrame: @ 81F2969 +Route115_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route115_EventScript_Woman:: @ 81F2973 +Route115_EventScript_Woman:: msgbox Route115_Text_NeverKnowWhenCavePokemonWillAppear, MSGBOX_NPC end -Route115_EventScript_RouteSignRustboro:: @ 81F297C +Route115_EventScript_RouteSignRustboro:: msgbox Route115_Text_RouteSignRustboro, MSGBOX_SIGN end -Route115_EventScript_MeteorFallsSign:: @ 81F2985 +Route115_EventScript_MeteorFallsSign:: msgbox Route115_Text_MeteorFallsSign, MSGBOX_SIGN end -Route115_EventScript_Timothy:: @ 81F298E +Route115_EventScript_Timothy:: trainerbattle_single TRAINER_TIMOTHY_1, Route115_Text_TimothyIntro, Route115_Text_TimothyDefeat, Route115_EventScript_RegisterTimothy specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -45,7 +45,7 @@ Route115_EventScript_Timothy:: @ 81F298E release end -Route115_EventScript_RegisterTimothy:: @ 81F29BA +Route115_EventScript_RegisterTimothy:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route115_Text_TimothyRegister, MSGBOX_DEFAULT @@ -53,17 +53,17 @@ Route115_EventScript_RegisterTimothy:: @ 81F29BA release end -Route115_EventScript_RematchTimothy:: @ 81F29D9 +Route115_EventScript_RematchTimothy:: trainerbattle_rematch TRAINER_TIMOTHY_1, Route115_Text_TimothyRematchIntro, Route115_Text_TimothyRematchDefeat msgbox Route115_Text_TimothyPostRematch, MSGBOX_AUTOCLOSE end -Route115_EventScript_Koichi:: @ 81F29F0 +Route115_EventScript_Koichi:: trainerbattle_single TRAINER_KOICHI, Route115_Text_KoichiIntro, Route115_Text_KoichiDefeat msgbox Route115_Text_KoichiPostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Nob:: @ 81F2A07 +Route115_EventScript_Nob:: trainerbattle_single TRAINER_NOB_1, Route115_Text_NobIntro, Route115_Text_NobDefeat, Route115_EventScript_RegisterNob specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -72,7 +72,7 @@ Route115_EventScript_Nob:: @ 81F2A07 release end -Route115_EventScript_RegisterNob:: @ 81F2A33 +Route115_EventScript_RegisterNob:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route115_Text_NobRegister, MSGBOX_DEFAULT @@ -80,12 +80,12 @@ Route115_EventScript_RegisterNob:: @ 81F2A33 release end -Route115_EventScript_RematchNob:: @ 81F2A52 +Route115_EventScript_RematchNob:: trainerbattle_rematch TRAINER_NOB_1, Route115_Text_NobRematchIntro, Route115_Text_NobRematchDefeat msgbox Route115_Text_NobPostRematch, MSGBOX_AUTOCLOSE end -Route115_EventScript_Cyndy:: @ 81F2A69 +Route115_EventScript_Cyndy:: trainerbattle_single TRAINER_CYNDY_1, Route115_Text_CyndyIntro, Route115_Text_CyndyDefeat, Route115_EventScript_RegisterCyndy specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -94,7 +94,7 @@ Route115_EventScript_Cyndy:: @ 81F2A69 release end -Route115_EventScript_RegisterCyndy:: @ 81F2A95 +Route115_EventScript_RegisterCyndy:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route115_Text_CyndyRegister, MSGBOX_DEFAULT @@ -102,52 +102,52 @@ Route115_EventScript_RegisterCyndy:: @ 81F2A95 release end -Route115_EventScript_RematchCyndy:: @ 81F2AB4 +Route115_EventScript_RematchCyndy:: trainerbattle_rematch TRAINER_CYNDY_1, Route115_Text_CyndyRematchIntro, Route115_Text_CyndyRematchDefeat msgbox Route115_Text_CyndyPostRematch, MSGBOX_AUTOCLOSE end -Route115_EventScript_Hector:: @ 81F2ACB +Route115_EventScript_Hector:: trainerbattle_single TRAINER_HECTOR, Route115_Text_HectorIntro, Route115_Text_HectorDefeat msgbox Route115_Text_HectorPostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Kyra:: @ 81F2AE2 +Route115_EventScript_Kyra:: trainerbattle_single TRAINER_KYRA, Route115_Text_KyraIntro, Route115_Text_KyraDefeat msgbox Route115_Text_KyraPostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Jaiden:: @ 81F2AF9 +Route115_EventScript_Jaiden:: trainerbattle_single TRAINER_JAIDEN, Route115_Text_JaidenIntro, Route115_Text_JaidenDefeat msgbox Route115_Text_JaidenPostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Alix:: @ 81F2B10 +Route115_EventScript_Alix:: trainerbattle_single TRAINER_ALIX, Route115_Text_AlixIntro, Route115_Text_AlixDefeat msgbox Route115_Text_AlixPostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Helene:: @ 81F2B27 +Route115_EventScript_Helene:: trainerbattle_single TRAINER_HELENE, Route115_Text_HeleneIntro, Route115_Text_HeleneDefeat msgbox Route115_Text_HelenePostBattle, MSGBOX_AUTOCLOSE end -Route115_EventScript_Marlene:: @ 81F2B3E +Route115_EventScript_Marlene:: trainerbattle_single TRAINER_MARLENE, Route115_Text_MarleneIntro, Route115_Text_MarleneDefeat msgbox Route115_Text_MarlenePostBattle, MSGBOX_AUTOCLOSE end -Route115_Text_NeverKnowWhenCavePokemonWillAppear: @ 81F2B55 +Route115_Text_NeverKnowWhenCavePokemonWillAppear: .string "Exploring a cave isn't like walking\n" .string "on a road.\p" .string "You never know when wild POKéMON will\n" .string "appear. It's full of suspense.$" -Route115_Text_RouteSignRustboro: @ 81F2BC9 +Route115_Text_RouteSignRustboro: .string "ROUTE 115\n" .string "{DOWN_ARROW} RUSTBORO CITY$" -Route115_Text_MeteorFallsSign: @ 81F2BE3 +Route115_Text_MeteorFallsSign: .string "METEOR FALLS\n" .string "FALLARBOR TOWN THROUGH HERE$" diff --git a/data/maps/Route116/scripts.inc b/data/maps/Route116/scripts.inc index d904fb9eb8c0..2b974035a02f 100644 --- a/data/maps/Route116/scripts.inc +++ b/data/maps/Route116/scripts.inc @@ -1,13 +1,13 @@ .set LOCALID_BRINEY, 11 .set LOCALID_WANDAS_BF_OUTSIDE, 21 -Route116_MapScripts:: @ 81F2C0C +Route116_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route116_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route116_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route116_OnFrame .byte 0 -Route116_OnTransition: @ 81F2C1C +Route116_OnTransition: call_if_set FLAG_RECOVERED_DEVON_GOODS, Route116_EventScript_SetWandasBoyfriendPos compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup @@ -17,22 +17,22 @@ Route116_OnTransition: @ 81F2C1C call_if_eq AbnormalWeather_StartGroudonWeather end -Route116_EventScript_SetWandasBoyfriendPos:: @ 81F2C47 +Route116_EventScript_SetWandasBoyfriendPos:: setobjectxyperm LOCALID_WANDAS_BF_OUTSIDE, 38, 10 return -Route116_OnLoad: @ 81F2C4F +Route116_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_NORTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute116North compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_SOUTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute116South end -Route116_OnFrame: @ 81F2C66 +Route116_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route116_EventScript_WandasBoyfriend:: @ 81F2C70 +Route116_EventScript_WandasBoyfriend:: lock faceplayer goto_if_set FLAG_RECOVERED_DEVON_GOODS, Route116_EventScript_BoyfriendGruntLeftTunnel @@ -41,17 +41,17 @@ Route116_EventScript_WandasBoyfriend:: @ 81F2C70 release end -Route116_EventScript_BoyfriendGruntLeftTunnel:: @ 81F2C8E +Route116_EventScript_BoyfriendGruntLeftTunnel:: msgbox Route116_Text_GoonHightailedItOutOfTunnel, MSGBOX_DEFAULT release end -Route116_EventScript_BoyfriendGruntInTunnel:: @ 81F2C98 +Route116_EventScript_BoyfriendGruntInTunnel:: msgbox Route116_Text_DiggingTunnelWhenGoonOrderedMeOut, MSGBOX_DEFAULT release end -Route116_EventScript_DevonEmployee:: @ 81F2CA2 +Route116_EventScript_DevonEmployee:: lock faceplayer goto_if_set FLAG_MET_DEVON_EMPLOYEE, Route116_EventScript_TryGiveRepeatBallAgain @@ -59,7 +59,7 @@ Route116_EventScript_DevonEmployee:: @ 81F2CA2 goto Route116_EventScript_GiveRepeatBall end -Route116_EventScript_GiveRepeatBall:: @ 81F2CBB +Route116_EventScript_GiveRepeatBall:: setflag FLAG_MET_DEVON_EMPLOYEE giveitem ITEM_REPEAT_BALL compare VAR_RESULT, FALSE @@ -80,27 +80,27 @@ Route116_EventScript_GiveRepeatBall:: @ 81F2CBB release end -Route116_EventScript_DevonEmployeeExit:: @ 81F2D15 +Route116_EventScript_DevonEmployeeExit:: applymovement VAR_LAST_TALKED, Route116_Movement_DevonEmployeeExit waitmovement 0 return -Route116_EventScript_DevonEmployeeExitEast:: @ 81F2D20 +Route116_EventScript_DevonEmployeeExitEast:: applymovement VAR_LAST_TALKED, Route116_Movement_DevonEmployeeExitEast waitmovement 0 return -Route116_EventScript_TryGiveRepeatBallAgain:: @ 81F2D2B +Route116_EventScript_TryGiveRepeatBallAgain:: msgbox Route116_Text_TokenOfAppreciation, MSGBOX_DEFAULT goto Route116_EventScript_GiveRepeatBall end -Route116_EventScript_NoRoomForRepeatBall:: @ 81F2D39 +Route116_EventScript_NoRoomForRepeatBall:: msgbox Route116_Text_BagIsJamPacked, MSGBOX_DEFAULT release end -Route116_Movement_DevonEmployeeExit: @ 81F2D43 +Route116_Movement_DevonEmployeeExit: walk_left walk_left walk_left @@ -111,7 +111,7 @@ Route116_Movement_DevonEmployeeExit: @ 81F2D43 walk_left step_end -Route116_Movement_DevonEmployeeExitEast: @ 81F2D4C +Route116_Movement_DevonEmployeeExitEast: walk_down walk_left walk_left @@ -124,27 +124,27 @@ Route116_Movement_DevonEmployeeExitEast: @ 81F2D4C walk_left step_end -Route116_EventScript_RouteSignRustboro:: @ 81F2D57 +Route116_EventScript_RouteSignRustboro:: msgbox Route116_Text_RouteSignRustboro, MSGBOX_SIGN end -Route116_EventScript_RusturfTunnelSign:: @ 81F2D60 +Route116_EventScript_RusturfTunnelSign:: msgbox Route116_Text_RusturfTunnelSign, MSGBOX_SIGN end -Route116_EventScript_TunnelersRestHouseSign:: @ 81F2D69 +Route116_EventScript_TunnelersRestHouseSign:: msgbox Route116_Text_TunnelersRestHouse, MSGBOX_SIGN end -Route116_EventScript_TrainerTipsBToStopEvolution:: @ 81F2D72 +Route116_EventScript_TrainerTipsBToStopEvolution:: msgbox Route116_Text_TrainerTipsBToStopEvolution, MSGBOX_SIGN end -Route116_EventScript_TrainerTipsBagHasPockets:: @ 81F2D7B +Route116_EventScript_TrainerTipsBagHasPockets:: msgbox Route116_Text_TrainerTipsBagHasPockets, MSGBOX_SIGN end -Route116_EventScript_Briney:: @ 81F2D84 +Route116_EventScript_Briney:: lock faceplayer msgbox Route116_Text_ScoundrelMadeOffWithPeeko, MSGBOX_DEFAULT @@ -152,7 +152,7 @@ Route116_EventScript_Briney:: @ 81F2D84 release end -Route116_EventScript_BrineyTrigger:: @ 81F2D95 +Route116_EventScript_BrineyTrigger:: lockall applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestRight applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft @@ -162,7 +162,7 @@ Route116_EventScript_BrineyTrigger:: @ 81F2D95 releaseall end -Route116_EventScript_GlassesMan:: @ 81F2DB6 +Route116_EventScript_GlassesMan:: lock faceplayer checkitem ITEM_BLACK_GLASSES, 1 @@ -175,13 +175,13 @@ Route116_EventScript_GlassesMan:: @ 81F2DB6 release end -Route116_EventScript_FoundGlassesNotOnPlayer:: @ 81F2DE2 +Route116_EventScript_FoundGlassesNotOnPlayer:: msgbox Route116_Text_CantFindGlassesNotHere, MSGBOX_DEFAULT closemessage goto Route116_EventScript_GlassesManExit end -Route116_EventScript_PlayerHasGlasses:: @ 81F2DF1 +Route116_EventScript_PlayerHasGlasses:: msgbox Route116_Text_CanYouHelpMeFindGlasses, MSGBOX_DEFAULT msgbox Route116_Text_MayISeeThoseGlasses, MSGBOX_DEFAULT specialvar VAR_RESULT, FoundBlackGlasses @@ -191,13 +191,13 @@ Route116_EventScript_PlayerHasGlasses:: @ 81F2DF1 release end -Route116_EventScript_FoundGlassesOnPlayer:: @ 81F2E1B +Route116_EventScript_FoundGlassesOnPlayer:: msgbox Route116_Text_NotWhatImLookingForMaybeTheyArentHere, MSGBOX_DEFAULT closemessage goto Route116_EventScript_GlassesManExit end -Route116_EventScript_GlassesManExit:: @ 81F2E2A +Route116_EventScript_GlassesManExit:: delay 20 compare VAR_FACING, DIR_NORTH call_if_eq Route116_EventScript_GlassesManExitNormal @@ -211,17 +211,17 @@ Route116_EventScript_GlassesManExit:: @ 81F2E2A release end -Route116_EventScript_GlassesManExitNormal:: @ 81F2E5E +Route116_EventScript_GlassesManExitNormal:: applymovement VAR_LAST_TALKED, Route116_Movement_GlassesManExit waitmovement 0 return -Route116_EventScript_GlassesManExitEast:: @ 81F2E69 +Route116_EventScript_GlassesManExitEast:: applymovement VAR_LAST_TALKED, Route116_Movement_GlassesManExitEast waitmovement 0 return -Route116_Movement_GlassesManExit: @ 81F2E74 +Route116_Movement_GlassesManExit: walk_left walk_left walk_left @@ -233,7 +233,7 @@ Route116_Movement_GlassesManExit: @ 81F2E74 walk_left step_end -Route116_Movement_GlassesManExitEast: @ 81F2E7E +Route116_Movement_GlassesManExitEast: walk_up walk_left walk_left @@ -246,17 +246,17 @@ Route116_Movement_GlassesManExitEast: @ 81F2E7E walk_left step_end -Route116_EventScript_Joey:: @ 81F2E89 +Route116_EventScript_Joey:: trainerbattle_single TRAINER_JOEY, Route116_Text_JoeyIntro, Route116_Text_JoeyDefeat msgbox Route116_Text_JoeyPostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Jose:: @ 81F2EA0 +Route116_EventScript_Jose:: trainerbattle_single TRAINER_JOSE, Route116_Text_JoseIntro, Route116_Text_JoseDefeat msgbox Route116_Text_JosePostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Jerry:: @ 81F2EB7 +Route116_EventScript_Jerry:: trainerbattle_single TRAINER_JERRY_1, Route116_Text_JerryIntro, Route116_Text_JerryDefeat, Route116_EventScript_TryRegisterJerryAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -269,12 +269,12 @@ Route116_EventScript_Jerry:: @ 81F2EB7 release end -Route116_EventScript_TryRegisterJerryAfterBattle:: @ 81F2EF8 +Route116_EventScript_TryRegisterJerryAfterBattle:: goto_if_set FLAG_HAS_MATCH_CALL, Route116_EventScript_RegisterJerryAfterBattle release end -Route116_EventScript_RegisterJerryAfterBattle:: @ 81F2F03 +Route116_EventScript_RegisterJerryAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route116_Text_JerryRegister2, MSGBOX_DEFAULT @@ -282,34 +282,34 @@ Route116_EventScript_RegisterJerryAfterBattle:: @ 81F2F03 release end -Route116_EventScript_TryRegisterJerry:: @ 81F2F22 +Route116_EventScript_TryRegisterJerry:: goto_if_set FLAG_HAS_MATCH_CALL, Route116_EventScript_RegisterJerry msgbox Route116_Text_JerryPostBattle, MSGBOX_DEFAULT release end -Route116_EventScript_RegisterJerry:: @ 81F2F35 +Route116_EventScript_RegisterJerry:: msgbox Route116_Text_JerryRegister1, MSGBOX_DEFAULT register_matchcall TRAINER_JERRY_1 release end -Route116_EventScript_RematchJerry:: @ 81F2F4E +Route116_EventScript_RematchJerry:: trainerbattle_rematch TRAINER_JERRY_1, Route116_Text_JerryRematchIntro, Route116_Text_JerryRematchDefeat msgbox Route116_Text_JerryPostRematch, MSGBOX_AUTOCLOSE end -Route116_EventScript_Clark:: @ 81F2F65 +Route116_EventScript_Clark:: trainerbattle_single TRAINER_CLARK, Route116_Text_ClarkIntro, Route116_Text_ClarkDefeat msgbox Route116_Text_ClarkPostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Janice:: @ 81F2F7C +Route116_EventScript_Janice:: trainerbattle_single TRAINER_JANICE, Route116_Text_JaniceIntro, Route116_Text_JaniceDefeat msgbox Route116_Text_JanicePostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Karen:: @ 81F2F93 +Route116_EventScript_Karen:: trainerbattle_single TRAINER_KAREN_1, Route116_Text_KarenIntro, Route116_Text_KarenDefeat, Route116_EventScript_TryRegisterKarenAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -322,12 +322,12 @@ Route116_EventScript_Karen:: @ 81F2F93 release end -Route116_EventScript_TryRegisterKarenAfterBattle:: @ 81F2FD4 +Route116_EventScript_TryRegisterKarenAfterBattle:: goto_if_set FLAG_HAS_MATCH_CALL, Route116_EventScript_RegisterKarenAfterBattle release end -Route116_EventScript_RegisterKarenAfterBattle:: @ 81F2FDF +Route116_EventScript_RegisterKarenAfterBattle:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route116_Text_KarenRegister2, MSGBOX_DEFAULT @@ -335,44 +335,44 @@ Route116_EventScript_RegisterKarenAfterBattle:: @ 81F2FDF release end -Route116_EventScript_TryRegisterKaren:: @ 81F2FFE +Route116_EventScript_TryRegisterKaren:: goto_if_set FLAG_HAS_MATCH_CALL, Route116_EventScript_RegisterKaren msgbox Route116_Text_KarenPostBattle, MSGBOX_DEFAULT release end -Route116_EventScript_RegisterKaren:: @ 81F3011 +Route116_EventScript_RegisterKaren:: msgbox Route116_Text_KarenRegister1, MSGBOX_DEFAULT register_matchcall TRAINER_KAREN_1 release end -Route116_EventScript_RematchKaren:: @ 81F302A +Route116_EventScript_RematchKaren:: trainerbattle_rematch TRAINER_KAREN_1, Route116_Text_KarenRematchIntro, Route116_Text_KarenRematchDefeat msgbox Route116_Text_KarenPostRematch, MSGBOX_AUTOCLOSE end -Route116_EventScript_Sarah:: @ 81F3041 +Route116_EventScript_Sarah:: trainerbattle_single TRAINER_SARAH, Route116_Text_SarahIntro, Route116_Text_SarahDefeat msgbox Route116_Text_SarahPostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Dawson:: @ 81F3058 +Route116_EventScript_Dawson:: trainerbattle_single TRAINER_DAWSON, Route116_Text_DawsonIntro, Route116_Text_DawsonDefeat msgbox Route116_Text_DawsonPostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Devan:: @ 81F306F +Route116_EventScript_Devan:: trainerbattle_single TRAINER_DEVAN, Route116_Text_DevanIntro, Route116_Text_DevanDefeat msgbox Route116_Text_DevanPostBattle, MSGBOX_AUTOCLOSE end -Route116_EventScript_Johnson:: @ 81F3086 +Route116_EventScript_Johnson:: trainerbattle_single TRAINER_JOHNSON, Route116_Text_JohnsonIntro, Route116_Text_JohnsonDefeat msgbox Route116_Text_JohnsonPostBattle, MSGBOX_AUTOCLOSE end -Route116_Text_ScoundrelMadeOffWithPeeko: @ 81F309D +Route116_Text_ScoundrelMadeOffWithPeeko: .string "Ohhh, what am I to do?\p" .string "We were on our walk, PEEKO and I, when\n" .string "we were jumped by an odd thug…\p" @@ -380,11 +380,11 @@ Route116_Text_ScoundrelMadeOffWithPeeko: @ 81F309D .string "darling PEEKO!\p" .string "Wrrrooooooaaaar! PEEKO!$" -Route116_Text_WantToDigTunnel: @ 81F3140 +Route116_Text_WantToDigTunnel: .string "Nnn… Roar!\p" .string "I want to dig that tunnel!$" -Route116_Text_DiggingTunnelWhenGoonOrderedMeOut: @ 81F3166 +Route116_Text_DiggingTunnelWhenGoonOrderedMeOut: .string "Nnn… Roar!\n" .string "What's going on?\p" .string "I was digging the tunnel without any\n" @@ -398,12 +398,12 @@ Route116_Text_DiggingTunnelWhenGoonOrderedMeOut: @ 81F3166 .string "something stupid and startle the\l" .string "POKéMON into an uproar.$" -Route116_Text_GoonHightailedItOutOfTunnel: @ 81F32C1 +Route116_Text_GoonHightailedItOutOfTunnel: .string "Nnn… Roar!\p" .string "That goofy goon hightailed it out of\n" .string "the tunnel! I can go back to digging!$" -Route116_Text_ThankYouTokenOfAppreciation: @ 81F3317 +Route116_Text_ThankYouTokenOfAppreciation: .string "Oh! It's you!\p" .string "You're that person who not only helped\n" .string "me in PETALBURG WOODS, but also got\l" @@ -422,61 +422,61 @@ Route116_Text_ThankYouTokenOfAppreciation: @ 81F3317 .string "As a token of our appreciation, this\n" .string "is our gift to our wonderful TRAINER!$" -Route116_Text_NewBallAvailableAtMart: @ 81F3521 +Route116_Text_NewBallAvailableAtMart: .string "Our new POKé BALL will be available\n" .string "at the POKéMON MART in RUSTBORO.\p" .string "Please do try it out!\n" .string "Thank you and bye-bye!$" -Route116_Text_BagIsJamPacked: @ 81F3593 +Route116_Text_BagIsJamPacked: .string "Your BAG is jam-packed.\n" .string "I can't give you this REPEAT BALL.$" -Route116_Text_TokenOfAppreciation: @ 81F35CE +Route116_Text_TokenOfAppreciation: .string "As a token of our appreciation for\n" .string "your delivering our package, I have\l" .string "a gift of a new kind of POKé BALL\l" .string "for our most wonderful TRAINER!$" -Route116_Text_CanYouHelpMeFindGlasses: @ 81F3657 +Route116_Text_CanYouHelpMeFindGlasses: .string "I dropped my glasses…\n" .string "Can you help me find them?$" -Route116_Text_MayISeeThoseGlasses: @ 81F3688 +Route116_Text_MayISeeThoseGlasses: .string "Those glasses!\n" .string "May I see them for a second?$" -Route116_Text_NotWhatImLookingForMaybeTheyArentHere: @ 81F36B4 +Route116_Text_NotWhatImLookingForMaybeTheyArentHere: .string "Hmm…\n" .string "These are BLACKGLASSES.\l" .string "They're not what I'm looking for…\p" .string "Maybe my glasses aren't around\n" .string "here…$" -Route116_Text_CantFindGlassesNotHere: @ 81F3718 +Route116_Text_CantFindGlassesNotHere: .string "Hmm…\n" .string "I can't find my glasses anywhere…\l" .string "Maybe they're not around here…$" -Route116_Text_NotWhatImLookingFor: @ 81F375E +Route116_Text_NotWhatImLookingFor: .string "Hmm…\n" .string "These are BLACKGLASSES.\l" .string "They're not what I'm looking for…$" -Route116_Text_RouteSignRustboro: @ 81F379D +Route116_Text_RouteSignRustboro: .string "ROUTE 116\n" .string "{LEFT_ARROW} RUSTBORO CITY$" -Route116_Text_RusturfTunnelSign: @ 81F37B7 +Route116_Text_RusturfTunnelSign: .string "RUSTURF TUNNEL\n" .string "“Linking RUSTBORO and VERDANTURF\p" .string "“The tunnel project has been\n" .string "canceled.”$" -Route116_Text_TunnelersRestHouse: @ 81F380F +Route116_Text_TunnelersRestHouse: .string "TUNNELER'S REST HOUSE$" -Route116_Text_TrainerTipsBToStopEvolution: @ 81F3825 +Route116_Text_TrainerTipsBToStopEvolution: .string "TRAINER TIPS\p" .string "If you want to stop a POKéMON from\n" .string "evolving, press the B Button while it\l" @@ -484,7 +484,7 @@ Route116_Text_TrainerTipsBToStopEvolution: @ 81F3825 .string "The startled POKéMON will stop.\p" .string "This is called an evolution cancel.$" -Route116_Text_TrainerTipsBagHasPockets: @ 81F38D4 +Route116_Text_TrainerTipsBagHasPockets: .string "TRAINER TIPS\p" .string "Your BAG has several POCKETS.\p" .string "Items you obtain are automatically\n" diff --git a/data/maps/Route116_TunnelersRestHouse/scripts.inc b/data/maps/Route116_TunnelersRestHouse/scripts.inc index 42a80fc78040..bc46cec731f4 100644 --- a/data/maps/Route116_TunnelersRestHouse/scripts.inc +++ b/data/maps/Route116_TunnelersRestHouse/scripts.inc @@ -1,20 +1,20 @@ -Route116_TunnelersRestHouse_MapScripts:: @ 822B850 +Route116_TunnelersRestHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route116_TunnelersRestHouse_OnTransition .byte 0 -Route116_TunnelersRestHouse_OnTransition: @ 822B856 +Route116_TunnelersRestHouse_OnTransition: setflag FLAG_LANDMARK_TUNNELERS_REST_HOUSE end -Route116_TunnelersRestHouse_EventScript_Tunneler1:: @ 822B85A +Route116_TunnelersRestHouse_EventScript_Tunneler1:: msgbox Route116_TunnelersRestHouse_Text_WeHadToStopBoring, MSGBOX_NPC end -Route116_TunnelersRestHouse_EventScript_Tunneler2:: @ 822B863 +Route116_TunnelersRestHouse_EventScript_Tunneler2:: msgbox Route116_TunnelersRestHouse_Text_ManDiggingHisWayToVerdanturf, MSGBOX_NPC end -Route116_TunnelersRestHouse_EventScript_Tunneler3:: @ 822B86C +Route116_TunnelersRestHouse_EventScript_Tunneler3:: lock faceplayer goto_if_set FLAG_RUSTURF_TUNNEL_OPENED, Route116_TunnelersRestHouse_EventScript_TunnelOpened @@ -22,12 +22,12 @@ Route116_TunnelersRestHouse_EventScript_Tunneler3:: @ 822B86C release end -Route116_TunnelersRestHouse_EventScript_TunnelOpened:: @ 822B881 +Route116_TunnelersRestHouse_EventScript_TunnelOpened:: msgbox Route116_TunnelersRestHouse_Text_TunnelHasGoneThrough, MSGBOX_DEFAULT release end -Route116_TunnelersRestHouse_Text_WeHadToStopBoring: @ 822B88B +Route116_TunnelersRestHouse_Text_WeHadToStopBoring: .string "That RUSTURF TUNNEL there…\p" .string "At first, we had a huge work crew boring\n" .string "through rock with the latest machinery.\l" @@ -38,7 +38,7 @@ Route116_TunnelersRestHouse_Text_WeHadToStopBoring: @ 822B88B .string "So, we've got nothing to do but loll\n" .string "around here doing nothing.$" -Route116_TunnelersRestHouse_Text_ManDiggingHisWayToVerdanturf: @ 822B99F +Route116_TunnelersRestHouse_Text_ManDiggingHisWayToVerdanturf: .string "There's a man digging his way to\n" .string "VERDANTURF all by his lonesome.\l" .string "He's desperate to get through.\p" @@ -48,13 +48,13 @@ Route116_TunnelersRestHouse_Text_ManDiggingHisWayToVerdanturf: @ 822B99F .string "harming the natural environment.\p" .string "I wonder if he made it through yet.$" -Route116_TunnelersRestHouse_Text_GetToVerdanturfWithoutTunnel: @ 822BAAF +Route116_TunnelersRestHouse_Text_GetToVerdanturfWithoutTunnel: .string "To get to VERDANTURF without using\n" .string "this TUNNEL, you'd have to cross the\l" .string "sea to DEWFORD, sail on to SLATEPORT,\l" .string "then travel through MAUVILLE.$" -Route116_TunnelersRestHouse_Text_TunnelHasGoneThrough: @ 822BB3B +Route116_TunnelersRestHouse_Text_TunnelHasGoneThrough: .string "Did you hear? The TUNNEL to VERDANTURF\n" .string "has gone through!\p" .string "Sometimes, if you hope strongly enough,\n" diff --git a/data/maps/Route117/scripts.inc b/data/maps/Route117/scripts.inc index 08f8d05002af..f6ab8859174f 100644 --- a/data/maps/Route117/scripts.inc +++ b/data/maps/Route117/scripts.inc @@ -1,44 +1,44 @@ .set LOCALID_DAYCARE_MAN, 3 -Route117_MapScripts:: @ 81F397D +Route117_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route117_OnTransition .byte 0 -Route117_OnTransition: @ 81F3983 +Route117_OnTransition: call Route117_EventScript_TryMoveDayCareMan end -Route117_EventScript_TryMoveDayCareMan:: @ 81F3989 +Route117_EventScript_TryMoveDayCareMan:: goto_if_unset FLAG_PENDING_DAYCARE_EGG, Route117_EventScript_StopMoveDayCareMan setobjectxyperm LOCALID_DAYCARE_MAN, 47, 6 -Route117_EventScript_StopMoveDayCareMan:: @ 81F3999 +Route117_EventScript_StopMoveDayCareMan:: return -Route117_EventScript_Woman:: @ 81F399A +Route117_EventScript_Woman:: msgbox Route117_Text_ArentTheseFlowersPretty, MSGBOX_NPC end -Route117_EventScript_LittleBoy:: @ 81F39A3 +Route117_EventScript_LittleBoy:: msgbox Route117_Text_AirIsTastyHere, MSGBOX_NPC end -Route117_EventScript_Girl:: @ 81F39AC +Route117_EventScript_Girl:: msgbox Route117_Text_DayCarePokemonHadNewMove, MSGBOX_NPC end -Route117_EventScript_RouteSignVerdanturf:: @ 81F39B5 +Route117_EventScript_RouteSignVerdanturf:: msgbox Route117_Text_RouteSignVerdanturf, MSGBOX_SIGN end -Route117_EventScript_RouteSignMauville:: @ 81F39BE +Route117_EventScript_RouteSignMauville:: msgbox Route117_Text_RouteSignMauville, MSGBOX_SIGN end -Route117_EventScript_DayCareSign:: @ 81F39C7 +Route117_EventScript_DayCareSign:: msgbox Route117_Text_DayCareSign, MSGBOX_SIGN end -Route117_EventScript_Isaac:: @ 81F39D0 +Route117_EventScript_Isaac:: trainerbattle_single TRAINER_ISAAC_1, Route117_Text_IsaacIntro, Route117_Text_IsaacDefeat, Route117_EventScript_RegisterIsaac specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -47,7 +47,7 @@ Route117_EventScript_Isaac:: @ 81F39D0 release end -Route117_EventScript_RegisterIsaac:: @ 81F39FC +Route117_EventScript_RegisterIsaac:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route117_Text_IsaacRegister, MSGBOX_DEFAULT @@ -55,12 +55,12 @@ Route117_EventScript_RegisterIsaac:: @ 81F39FC release end -Route117_EventScript_RematchIsaac:: @ 81F3A1B +Route117_EventScript_RematchIsaac:: trainerbattle_rematch TRAINER_ISAAC_1, Route117_Text_IsaacRematchIntro, Route117_Text_IsaacRematchDefeat msgbox Route117_Text_IsaacPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Lydia:: @ 81F3A32 +Route117_EventScript_Lydia:: trainerbattle_single TRAINER_LYDIA_1, Route117_Text_LydiaIntro, Route117_Text_LydiaDefeat, Route117_EventScript_RegisterLydia specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -69,7 +69,7 @@ Route117_EventScript_Lydia:: @ 81F3A32 release end -Route117_EventScript_RegisterLydia:: @ 81F3A5E +Route117_EventScript_RegisterLydia:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route117_Text_LydiaRegister, MSGBOX_DEFAULT @@ -77,12 +77,12 @@ Route117_EventScript_RegisterLydia:: @ 81F3A5E release end -Route117_EventScript_RematchLydia:: @ 81F3A7D +Route117_EventScript_RematchLydia:: trainerbattle_rematch TRAINER_LYDIA_1, Route117_Text_LydiaRematchIntro, Route117_Text_LydiaRematchDefeat msgbox Route117_Text_LydiaPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Dylan:: @ 81F3A94 +Route117_EventScript_Dylan:: trainerbattle_single TRAINER_DYLAN_1, Route117_Text_DylanIntro, Route117_Text_DylanDefeat, Route117_EventScript_RegisterDylan specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -91,7 +91,7 @@ Route117_EventScript_Dylan:: @ 81F3A94 release end -Route117_EventScript_RegisterDylan:: @ 81F3AC0 +Route117_EventScript_RegisterDylan:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route117_Text_DylanRegister, MSGBOX_DEFAULT @@ -99,12 +99,12 @@ Route117_EventScript_RegisterDylan:: @ 81F3AC0 release end -Route117_EventScript_RematchDylan:: @ 81F3ADF +Route117_EventScript_RematchDylan:: trainerbattle_rematch TRAINER_DYLAN_1, Route117_Text_DylanRematchIntro, Route117_Text_DylanRematchDefeat msgbox Route117_Text_DylanPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Maria:: @ 81F3AF6 +Route117_EventScript_Maria:: trainerbattle_single TRAINER_MARIA_1, Route117_Text_MariaIntro, Route117_Text_MariaDefeat, Route117_EventScript_RegisterMaria specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -113,7 +113,7 @@ Route117_EventScript_Maria:: @ 81F3AF6 release end -Route117_EventScript_RegisterMaria:: @ 81F3B22 +Route117_EventScript_RegisterMaria:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route117_Text_MariaRegister, MSGBOX_DEFAULT @@ -121,17 +121,17 @@ Route117_EventScript_RegisterMaria:: @ 81F3B22 release end -Route117_EventScript_RematchMaria:: @ 81F3B41 +Route117_EventScript_RematchMaria:: trainerbattle_rematch TRAINER_MARIA_1, Route117_Text_MariaRematchIntro, Route117_Text_MariaRematchDefeat msgbox Route117_Text_MariaPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Derek:: @ 81F3B58 +Route117_EventScript_Derek:: trainerbattle_single TRAINER_DEREK, Route117_Text_DerekIntro, Route117_Text_DerekDefeat msgbox Route117_Text_DerekPostBattle, MSGBOX_AUTOCLOSE end -Route117_EventScript_Anna:: @ 81F3B6F +Route117_EventScript_Anna:: trainerbattle_double TRAINER_ANNA_AND_MEG_1, Route117_Text_AnnaIntro, Route117_Text_AnnaDefeat, Route117_Text_AnnaNotEnoughMons, Route117_EventScript_RegisterAnna specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -140,18 +140,18 @@ Route117_EventScript_Anna:: @ 81F3B6F release end -Route117_EventScript_RegisterAnna:: @ 81F3B9F +Route117_EventScript_RegisterAnna:: msgbox Route117_Text_AnnaAndMegRegister, MSGBOX_DEFAULT register_matchcall TRAINER_ANNA_AND_MEG_1 release end -Route117_EventScript_RematchAnna:: @ 81F3BB8 +Route117_EventScript_RematchAnna:: trainerbattle_rematch_double TRAINER_ANNA_AND_MEG_1, Route117_Text_AnnaRematchIntro, Route117_Text_AnnaRematchDefeat, Route117_Text_AnnaRematchNotEnoughMons msgbox Route117_Text_AnnaPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Meg:: @ 81F3BD3 +Route117_EventScript_Meg:: trainerbattle_double TRAINER_ANNA_AND_MEG_1, Route117_Text_MegIntro, Route117_Text_MegDefeat, Route117_Text_MegNotEnoughMons, Route117_EventScript_RegisterMeg specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -160,55 +160,55 @@ Route117_EventScript_Meg:: @ 81F3BD3 release end -Route117_EventScript_RegisterMeg:: @ 81F3C03 +Route117_EventScript_RegisterMeg:: msgbox Route117_Text_AnnaAndMegRegister, MSGBOX_DEFAULT register_matchcall TRAINER_ANNA_AND_MEG_1 release end -Route117_EventScript_RematchMeg:: @ 81F3C1C +Route117_EventScript_RematchMeg:: trainerbattle_rematch_double TRAINER_ANNA_AND_MEG_1, Route117_Text_MegRematchIntro, Route117_Text_MegRematchDefeat, Route117_Text_MegRematchNotEnoughMons msgbox Route117_Text_MegPostRematch, MSGBOX_AUTOCLOSE end -Route117_EventScript_Melina:: @ 81F3C37 +Route117_EventScript_Melina:: trainerbattle_single TRAINER_MELINA, Route117_Text_MelinaIntro, Route117_Text_MelinaDefeat msgbox Route117_Text_MelinaPostBattle, MSGBOX_AUTOCLOSE end -Route117_EventScript_Brandi:: @ 81F3C4E +Route117_EventScript_Brandi:: trainerbattle_single TRAINER_BRANDI, Route117_Text_BrandiIntro, Route117_Text_BrandiDefeat msgbox Route117_Text_BrandiPostBattle, MSGBOX_AUTOCLOSE end -Route117_EventScript_Aisha:: @ 81F3C65 +Route117_EventScript_Aisha:: trainerbattle_single TRAINER_AISHA, Route117_Text_AishaIntro, Route117_Text_AishaDefeat msgbox Route117_Text_AishaPostBattle, MSGBOX_AUTOCLOSE end -Route117_Text_DayCarePokemonHadNewMove: @ 81F3C7C +Route117_Text_DayCarePokemonHadNewMove: .string "I left my POKéMON at the DAY CARE.\p" .string "When I got it back, it had a new move\n" .string "that I didn't teach it.\l" .string "I was really, really surprised.$" -Route117_Text_ArentTheseFlowersPretty: @ 81F3CFD +Route117_Text_ArentTheseFlowersPretty: .string "What do you think?\n" .string "Aren't these flowers pretty?\p" .string "I planted them all!$" -Route117_Text_AirIsTastyHere: @ 81F3D41 +Route117_Text_AirIsTastyHere: .string "The air is tasty here!$" -Route117_Text_RouteSignVerdanturf: @ 81F3D58 +Route117_Text_RouteSignVerdanturf: .string "ROUTE 117\n" .string "{LEFT_ARROW} VERDANTURF TOWN$" -Route117_Text_RouteSignMauville: @ 81F3D74 +Route117_Text_RouteSignMauville: .string "ROUTE 117\n" .string "{RIGHT_ARROW} MAUVILLE CITY$" -Route117_Text_DayCareSign: @ 81F3D8E +Route117_Text_DayCareSign: .string "POKéMON DAY CARE\n" .string "“Let us raise your POKéMON.”$" diff --git a/data/maps/Route117_PokemonDayCare/scripts.inc b/data/maps/Route117_PokemonDayCare/scripts.inc index 898935b26aaf..264778dceaf8 100644 --- a/data/maps/Route117_PokemonDayCare/scripts.inc +++ b/data/maps/Route117_PokemonDayCare/scripts.inc @@ -1,8 +1,8 @@ -Route117_PokemonDayCare_MapScripts:: @ 822BBB1 +Route117_PokemonDayCare_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route117_PokemonDayCare_OnTransition .byte 0 -Route117_PokemonDayCare_OnTransition: @ 822BBB7 +Route117_PokemonDayCare_OnTransition: setflag FLAG_LANDMARK_POKEMON_DAYCARE end diff --git a/data/maps/Route118/scripts.inc b/data/maps/Route118/scripts.inc index 0197508bb27b..723f3c0b54eb 100644 --- a/data/maps/Route118/scripts.inc +++ b/data/maps/Route118/scripts.inc @@ -1,12 +1,12 @@ .set LOCALID_STEVEN, 19 -Route118_MapScripts:: @ 81F3DBC +Route118_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route118_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route118_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route118_OnFrame .byte 0 -Route118_OnTransition: @ 81F3DCC +Route118_OnTransition: call GabbyAndTy_EventScript_UpdateLocation compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup @@ -16,18 +16,18 @@ Route118_OnTransition: @ 81F3DCC call_if_eq AbnormalWeather_StartGroudonWeather end -Route118_OnLoad: @ 81F3DF3 +Route118_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_EAST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute118East compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_WEST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute118West end -Route118_OnFrame: @ 81F3E0A +Route118_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route118_EventScript_GoodRodFisherman:: @ 81F3E14 +Route118_EventScript_GoodRodFisherman:: lock faceplayer goto_if_set FLAG_RECEIVED_GOOD_ROD, Route118_EventScript_ReceivedGoodRod @@ -38,7 +38,7 @@ Route118_EventScript_GoodRodFisherman:: @ 81F3E14 goto_if_eq Route118_EventScript_DeclineGoodRod end -Route118_EventScript_ReceiveGoodRod:: @ 81F3E3E +Route118_EventScript_ReceiveGoodRod:: msgbox Route118_Text_IdenticalMindsTakeThis, MSGBOX_DEFAULT giveitem ITEM_GOOD_ROD setflag FLAG_RECEIVED_GOOD_ROD @@ -46,29 +46,29 @@ Route118_EventScript_ReceiveGoodRod:: @ 81F3E3E release end -Route118_EventScript_DeclineGoodRod:: @ 81F3E5F +Route118_EventScript_DeclineGoodRod:: msgbox Route118_Text_DontYouLikeToFish, MSGBOX_DEFAULT release end -Route118_EventScript_ReceivedGoodRod:: @ 81F3E69 +Route118_EventScript_ReceivedGoodRod:: msgbox Route118_Text_TryCatchingMonWithGoodRod, MSGBOX_DEFAULT release end -Route118_EventScript_Girl:: @ 81F3E73 +Route118_EventScript_Girl:: msgbox Route118_Text_CanCrossRiversWithSurf, MSGBOX_NPC end -Route118_EventScript_RouteSignMauville:: @ 81F3E7C +Route118_EventScript_RouteSignMauville:: msgbox Route118_Text_RouteSignMauville, MSGBOX_SIGN end -Route118_EventScript_RouteSign119:: @ 81F3E85 +Route118_EventScript_RouteSign119:: msgbox Route118_Text_RouteSign119, MSGBOX_SIGN end -Route118_EventScript_StevenTrigger0:: @ 81F3E8E +Route118_EventScript_StevenTrigger0:: lockall setvar VAR_0x8008, 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp @@ -78,7 +78,7 @@ Route118_EventScript_StevenTrigger0:: @ 81F3E8E goto Route118_EventScript_StevenTrigger end -Route118_EventScript_StevenTrigger1:: @ 81F3EAE +Route118_EventScript_StevenTrigger1:: lockall setvar VAR_0x8008, 1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp @@ -86,7 +86,7 @@ Route118_EventScript_StevenTrigger1:: @ 81F3EAE goto Route118_EventScript_StevenTrigger end -Route118_EventScript_StevenTrigger2:: @ 81F3EC4 +Route118_EventScript_StevenTrigger2:: lockall setvar VAR_0x8008, 2 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp @@ -96,7 +96,7 @@ Route118_EventScript_StevenTrigger2:: @ 81F3EC4 goto Route118_EventScript_StevenTrigger end -Route118_EventScript_StevenTrigger:: @ 81F3EE4 +Route118_EventScript_StevenTrigger:: playse SE_LEDGE applymovement LOCALID_STEVEN, Route118_Movement_StevenJumpLedge waitmovement 0 @@ -114,44 +114,44 @@ Route118_EventScript_StevenTrigger:: @ 81F3EE4 releaseall end -Route118_EventScript_StevenExit0:: @ 81F3F28 +Route118_EventScript_StevenExit0:: applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit applymovement LOCALID_STEVEN, Route118_Movement_StevenExit0 waitmovement 0 return -Route118_EventScript_StevenExit1:: @ 81F3F3A +Route118_EventScript_StevenExit1:: applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit applymovement LOCALID_STEVEN, Route118_Movement_StevenExit1 waitmovement 0 return -Route118_EventScript_StevenExit2:: @ 81F3F4C +Route118_EventScript_StevenExit2:: applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit applymovement LOCALID_STEVEN, Route118_Movement_StevenExit2 waitmovement 0 return -Route118_Movement_PlayerWatchStevenExit: @ 81F3F5E +Route118_Movement_PlayerWatchStevenExit: delay_16 walk_in_place_fastest_right step_end -Route118_Movement_StevenApproachLedge0: @ 81F3F61 +Route118_Movement_StevenApproachLedge0: walk_left step_end -Route118_Movement_StevenApproachLedge2: @ 81F3F63 +Route118_Movement_StevenApproachLedge2: walk_right step_end -Route118_Movement_StevenJumpLedge: @ 81F3F65 +Route118_Movement_StevenJumpLedge: jump_2_down delay_16 walk_down step_end -Route118_Movement_StevenExit0: @ 81F3F69 +Route118_Movement_StevenExit0: walk_right walk_right walk_right @@ -164,7 +164,7 @@ Route118_Movement_StevenExit0: @ 81F3F69 walk_right step_end -Route118_Movement_StevenExit1: @ 81F3F74 +Route118_Movement_StevenExit1: walk_right walk_right walk_right @@ -176,7 +176,7 @@ Route118_Movement_StevenExit1: @ 81F3F74 walk_right step_end -Route118_Movement_StevenExit2: @ 81F3F7E +Route118_Movement_StevenExit2: walk_right walk_right walk_right @@ -187,7 +187,7 @@ Route118_Movement_StevenExit2: @ 81F3F7E walk_right step_end -Route118_EventScript_Rose:: @ 81F3F87 +Route118_EventScript_Rose:: trainerbattle_single TRAINER_ROSE_1, Route118_Text_RoseIntro, Route118_Text_RoseDefeat, Route118_EventScript_RegisterRose specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -196,7 +196,7 @@ Route118_EventScript_Rose:: @ 81F3F87 release end -Route118_EventScript_RegisterRose:: @ 81F3FB3 +Route118_EventScript_RegisterRose:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route118_Text_RoseRegister, MSGBOX_DEFAULT @@ -204,22 +204,22 @@ Route118_EventScript_RegisterRose:: @ 81F3FB3 release end -Route118_EventScript_RematchRose:: @ 81F3FD2 +Route118_EventScript_RematchRose:: trainerbattle_rematch TRAINER_ROSE_1, Route118_Text_RoseRematchIntro, Route118_Text_RoseRematchDefeat msgbox Route118_Text_RosePostRematch, MSGBOX_AUTOCLOSE end -Route118_EventScript_Barny:: @ 81F3FE9 +Route118_EventScript_Barny:: trainerbattle_single TRAINER_BARNY, Route118_Text_BarnyIntro, Route118_Text_BarnyDefeat msgbox Route118_Text_BarnyPostBattle, MSGBOX_AUTOCLOSE end -Route118_EventScript_Wade:: @ 81F4000 +Route118_EventScript_Wade:: trainerbattle_single TRAINER_WADE, Route118_Text_WadeIntro, Route118_Text_WadeDefeat msgbox Route118_Text_WadePostBattle, MSGBOX_AUTOCLOSE end -Route118_EventScript_Dalton:: @ 81F4017 +Route118_EventScript_Dalton:: trainerbattle_single TRAINER_DALTON_1, Route118_Text_DaltonIntro, Route118_Text_DaltonDefeat, Route118_EventScript_RegisterDalton specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -228,7 +228,7 @@ Route118_EventScript_Dalton:: @ 81F4017 release end -Route118_EventScript_RegisterDalton:: @ 81F4043 +Route118_EventScript_RegisterDalton:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route118_Text_DaltonRegister, MSGBOX_DEFAULT @@ -236,27 +236,27 @@ Route118_EventScript_RegisterDalton:: @ 81F4043 release end -Route118_EventScript_RematchDalton:: @ 81F4062 +Route118_EventScript_RematchDalton:: trainerbattle_rematch TRAINER_DALTON_1, Route118_Text_DaltonRematchIntro, Route118_Text_DaltonRematchDefeat msgbox Route118_Text_DaltonPostRematch, MSGBOX_AUTOCLOSE end -Route118_EventScript_Perry:: @ 81F4079 +Route118_EventScript_Perry:: trainerbattle_single TRAINER_PERRY, Route118_Text_PerryIntro, Route118_Text_PerryDefeat msgbox Route118_Text_PerryPostBattle, MSGBOX_AUTOCLOSE end -Route118_EventScript_Chester:: @ 81F4090 +Route118_EventScript_Chester:: trainerbattle_single TRAINER_CHESTER, Route118_Text_ChesterIntro, Route118_Text_ChesterDefeat msgbox Route118_Text_ChesterPostBattle, MSGBOX_AUTOCLOSE end -Route118_EventScript_Deandre:: @ 81F40A7 +Route118_EventScript_Deandre:: trainerbattle_single TRAINER_DEANDRE, Route118_Text_DeandreIntro, Route118_Text_DeandreDefeat msgbox Route118_Text_DeandrePostBattle, MSGBOX_AUTOCLOSE end -Route118_Text_StevenQuestions: @ 81F40BE +Route118_Text_StevenQuestions: .string "STEVEN: Hi, {PLAYER}{KUN}!\p" .string "It's me, STEVEN!\n" .string "We met in the cave near DEWFORD.\p" @@ -274,40 +274,40 @@ Route118_Text_StevenQuestions: @ 81F40BE .string "It would be nice if we were to meet\n" .string "again somewhere.$" -Route118_Text_YouAgreeGoodRodIsGood: @ 81F427B +Route118_Text_YouAgreeGoodRodIsGood: .string "Hmm!\n" .string "A GOOD ROD is really good!\p" .string "Wouldn't you agree?$" -Route118_Text_IdenticalMindsTakeThis: @ 81F42AF +Route118_Text_IdenticalMindsTakeThis: .string "Hmm!\n" .string "We're of identical minds!\p" .string "Hmm!\n" .string "Take this GOOD ROD!$" -Route118_Text_TryYourLuckFishing: @ 81F42E7 +Route118_Text_TryYourLuckFishing: .string "Wherever there's water, try your luck\n" .string "at fishing.$" -Route118_Text_DontYouLikeToFish: @ 81F4319 +Route118_Text_DontYouLikeToFish: .string "Don't you like to fish?$" -Route118_Text_TryCatchingMonWithGoodRod: @ 81F4331 +Route118_Text_TryCatchingMonWithGoodRod: .string "Try catching all sorts of POKéMON\n" .string "with your GOOD ROD.$" -Route118_Text_CanCrossRiversWithSurf: @ 81F4367 +Route118_Text_CanCrossRiversWithSurf: .string "Even if there isn't a boat, you can\n" .string "cross rivers and the sea if you have\l" .string "a POKéMON that knows SURF.\p" .string "POKéMON can be counted on to do so\n" .string "much!$" -Route118_Text_RouteSignMauville: @ 81F43F4 +Route118_Text_RouteSignMauville: .string "ROUTE 118\n" .string "{LEFT_ARROW} MAUVILLE CITY$" -Route118_Text_RouteSign119: @ 81F440E +Route118_Text_RouteSign119: .string "ROUTE 118\n" .string "{UP_ARROW} ROUTE 119$" diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc index 37da701a08ba..5e53f4ac8f04 100644 --- a/data/maps/Route119/scripts.inc +++ b/data/maps/Route119/scripts.inc @@ -2,23 +2,23 @@ .set LOCALID_RIVAL_ON_BIKE, 25 .set LOCALID_SCOTT, 43 -Route119_MapScripts:: @ 81F4424 +Route119_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route119_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route119_OnTransition .byte 0 -Route119_OnResume: @ 81F442F +Route119_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, Route119_EventScript_TryRemoveKecleon end -Route119_EventScript_TryRemoveKecleon:: @ 81F4439 +Route119_EventScript_TryRemoveKecleon:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -Route119_OnTransition: @ 81F444D +Route119_OnTransition: call Common_EventScript_SetupRivalGfxId call Common_EventScript_SetupRivalOnBikeGfxId compare VAR_WEATHER_INSTITUTE_STATE, 1 @@ -26,23 +26,23 @@ Route119_OnTransition: @ 81F444D special SetRoute119Weather end -Route119_EventScript_MoveInstituteWorkersDownstairs:: @ 81F4466 +Route119_EventScript_MoveInstituteWorkersDownstairs:: setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS clearflag FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS setvar VAR_WEATHER_INSTITUTE_STATE, 2 return -Route119_EventScript_RivalTrigger1:: @ 81F4472 +Route119_EventScript_RivalTrigger1:: setvar VAR_TEMP_1, 1 goto Route119_EventScript_RivalEncounter end -Route119_EventScript_RivalTrigger2:: @ 81F447D +Route119_EventScript_RivalTrigger2:: setvar VAR_TEMP_1, 2 goto Route119_EventScript_RivalEncounter end -Route119_EventScript_RivalEncounter:: @ 81F4488 +Route119_EventScript_RivalEncounter:: lockall addobject LOCALID_RIVAL_ON_BIKE checkplayergender @@ -73,15 +73,15 @@ Route119_EventScript_RivalEncounter:: @ 81F4488 releaseall end -Route119_EventScript_PlayMayMusic:: @ 81F4501 +Route119_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, TRUE return -Route119_EventScript_PlayBrendanMusic:: @ 81F4506 +Route119_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE return -Route119_EventScript_BattleMay:: @ 81F450B +Route119_EventScript_BattleMay:: msgbox Route119_Text_MayIntro, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route119_EventScript_BattleMayTreecko @@ -89,29 +89,29 @@ Route119_EventScript_BattleMay:: @ 81F450B case 2, Route119_EventScript_BattleMayMudkip end -Route119_EventScript_BattleMayTreecko:: @ 81F453A +Route119_EventScript_BattleMayTreecko:: trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TREECKO, Route119_Text_MayDefeat goto Route119_EventScript_DefeatedMay end -Route119_EventScript_BattleMayTorchic:: @ 81F454A +Route119_EventScript_BattleMayTorchic:: trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TORCHIC, Route119_Text_MayDefeat goto Route119_EventScript_DefeatedMay end -Route119_EventScript_BattleMayMudkip:: @ 81F455A +Route119_EventScript_BattleMayMudkip:: trainerbattle_no_intro TRAINER_MAY_ROUTE_119_MUDKIP, Route119_Text_MayDefeat goto Route119_EventScript_DefeatedMay end -Route119_EventScript_DefeatedMay:: @ 81F456A +Route119_EventScript_DefeatedMay:: msgbox Route119_Text_MayPresentForYou, MSGBOX_DEFAULT call Route119_EventScript_GiveFlyHM msgbox Route119_Text_MayExplainFly, MSGBOX_DEFAULT goto Route119_EventScript_RivalExitScottArrive end -Route119_EventScript_BattleBrendan:: @ 81F4585 +Route119_EventScript_BattleBrendan:: msgbox Route119_Text_BrendanIntro, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, Route119_EventScript_BattleBrendanTreecko @@ -119,34 +119,34 @@ Route119_EventScript_BattleBrendan:: @ 81F4585 case 2, Route119_EventScript_BattleBrendanMudkip end -Route119_EventScript_BattleBrendanTreecko:: @ 81F45B4 +Route119_EventScript_BattleBrendanTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TREECKO, Route119_Text_BrendanDefeat goto Route119_EventScript_DefeatedBrendan end -Route119_EventScript_BattleBrendanTorchic:: @ 81F45C4 +Route119_EventScript_BattleBrendanTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TORCHIC, Route119_Text_BrendanDefeat goto Route119_EventScript_DefeatedBrendan end -Route119_EventScript_BattleBrendanMudkip:: @ 81F45D4 +Route119_EventScript_BattleBrendanMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_MUDKIP, Route119_Text_BrendanDefeat goto Route119_EventScript_DefeatedBrendan end -Route119_EventScript_DefeatedBrendan:: @ 81F45E4 +Route119_EventScript_DefeatedBrendan:: msgbox Route119_Text_BrendanIllGiveYouThis, MSGBOX_DEFAULT call Route119_EventScript_GiveFlyHM msgbox Route119_Text_BrendanExplainFly, MSGBOX_DEFAULT goto Route119_EventScript_RivalExitScottArrive end -Route119_EventScript_GiveFlyHM:: @ 81F45FF +Route119_EventScript_GiveFlyHM:: giveitem ITEM_HM02 setflag FLAG_RECEIVED_HM02 return -Route119_EventScript_RivalExitScottArrive:: @ 81F460F +Route119_EventScript_RivalExitScottArrive:: closemessage compare VAR_TEMP_1, 1 call_if_eq Route119_EventScript_SetRivalPos1 @@ -182,71 +182,71 @@ Route119_EventScript_RivalExitScottArrive:: @ 81F460F releaseall end -Route119_EventScript_SetScottPos1:: @ 81F46A0 +Route119_EventScript_SetScottPos1:: setobjectxyperm LOCALID_SCOTT, 27, 25 return -Route119_EventScript_SetScottPos2:: @ 81F46A8 +Route119_EventScript_SetScottPos2:: setobjectxyperm LOCALID_SCOTT, 28, 25 return -Route119_EventScript_ScottExit1:: @ 81F46B0 +Route119_EventScript_ScottExit1:: applymovement LOCALID_SCOTT, Route119_Movement_ScottExit1 waitmovement 0 return -Route119_EventScript_ScottExit2:: @ 81F46BB +Route119_EventScript_ScottExit2:: applymovement LOCALID_SCOTT, Route119_Movement_ScottExit2 waitmovement 0 return -Route119_EventScript_RivalEnter1:: @ 81F46C6 +Route119_EventScript_RivalEnter1:: applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter1 waitmovement 0 return -Route119_EventScript_RivalEnter2:: @ 81F46D1 +Route119_EventScript_RivalEnter2:: applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter2 waitmovement 0 return -Route119_EventScript_RivalExit1:: @ 81F46DC +Route119_EventScript_RivalExit1:: applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit1 applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit1 waitmovement 0 return -Route119_EventScript_RivalExit2:: @ 81F46EE +Route119_EventScript_RivalExit2:: applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit2 applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit2 waitmovement 0 return -Route119_EventScript_SetRivalPos1:: @ 81F4700 +Route119_EventScript_SetRivalPos1:: setobjectxyperm LOCALID_RIVAL, 25, 32 setobjectxyperm LOCALID_RIVAL_ON_BIKE, 25, 32 return -Route119_EventScript_SetRivalPos2:: @ 81F470F +Route119_EventScript_SetRivalPos2:: setobjectxyperm LOCALID_RIVAL, 26, 32 setobjectxyperm LOCALID_RIVAL_ON_BIKE, 26, 32 return -Route119_Movement_PlayerWatchRivalExit1: @ 81F471E +Route119_Movement_PlayerWatchRivalExit1: delay_16 walk_in_place_fastest_right delay_8 walk_in_place_fastest_up step_end -Route119_Movement_PlayerWatchRivalExit2: @ 81F4723 +Route119_Movement_PlayerWatchRivalExit2: delay_16 walk_in_place_fastest_left delay_8 walk_in_place_fastest_up step_end -Route119_Movement_RivalEnter1: @ 81F4728 +Route119_Movement_RivalEnter1: walk_fast_right walk_fast_right walk_fast_right @@ -258,7 +258,7 @@ Route119_Movement_RivalEnter1: @ 81F4728 walk_fast_up step_end -Route119_Movement_RivalEnter2: @ 81F4732 +Route119_Movement_RivalEnter2: walk_fast_right walk_fast_right walk_fast_right @@ -271,7 +271,7 @@ Route119_Movement_RivalEnter2: @ 81F4732 walk_fast_up step_end -Route119_Movement_RivalExit1: @ 81F473D +Route119_Movement_RivalExit1: walk_fast_right walk_fast_up walk_fast_up @@ -283,7 +283,7 @@ Route119_Movement_RivalExit1: @ 81F473D walk_fast_up step_end -Route119_Movement_RivalExit2: @ 81F4747 +Route119_Movement_RivalExit2: walk_fast_left walk_fast_up walk_fast_up @@ -296,7 +296,7 @@ Route119_Movement_RivalExit2: @ 81F4747 walk_fast_up step_end -Route119_Movement_ScottEnter: @ 81F4752 +Route119_Movement_ScottEnter: walk_down walk_down walk_down @@ -306,7 +306,7 @@ Route119_Movement_ScottEnter: @ 81F4752 walk_down step_end -Route119_Movement_ScottExit1: @ 81F475A +Route119_Movement_ScottExit1: walk_up walk_right walk_right @@ -317,7 +317,7 @@ Route119_Movement_ScottExit1: @ 81F475A walk_up step_end -Route119_Movement_ScottExit2: @ 81F4763 +Route119_Movement_ScottExit2: walk_up walk_right walk_up @@ -327,49 +327,49 @@ Route119_Movement_ScottExit2: @ 81F4763 walk_up step_end -Route119_EventScript_CyclingTriathleteM:: @ 81F476B +Route119_EventScript_CyclingTriathleteM:: msgbox Route119_Text_TallGrassSnaresBikeTires, MSGBOX_NPC end -Route119_EventScript_RouteSignFortree:: @ 81F4774 +Route119_EventScript_RouteSignFortree:: msgbox Route119_Text_RouteSignFortree, MSGBOX_SIGN end -Route119_EventScript_WeatherInstituteSign:: @ 81F477D +Route119_EventScript_WeatherInstituteSign:: msgbox Route119_Text_WeatherInstitute, MSGBOX_SIGN end -Route119_EventScript_Brent:: @ 81F4786 +Route119_EventScript_Brent:: trainerbattle_single TRAINER_BRENT, Route119_Text_BrentIntro, Route119_Text_BrentDefeat msgbox Route119_Text_BrentPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Donald:: @ 81F479D +Route119_EventScript_Donald:: trainerbattle_single TRAINER_DONALD, Route119_Text_DonaldIntro, Route119_Text_DonaldDefeat msgbox Route119_Text_DonaldPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Taylor:: @ 81F47B4 +Route119_EventScript_Taylor:: trainerbattle_single TRAINER_TAYLOR, Route119_Text_TaylorIntro, Route119_Text_TaylorDefeat msgbox Route119_Text_TaylorPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Doug:: @ 81F47CB +Route119_EventScript_Doug:: trainerbattle_single TRAINER_DOUG, Route119_Text_DougIntro, Route119_Text_DougDefeat msgbox Route119_Text_DougPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Greg:: @ 81F47E2 +Route119_EventScript_Greg:: trainerbattle_single TRAINER_GREG, Route119_Text_GregIntro, Route119_Text_GregDefeat msgbox Route119_Text_GregPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Kent:: @ 81F47F9 +Route119_EventScript_Kent:: trainerbattle_single TRAINER_KENT, Route119_Text_KentIntro, Route119_Text_KentDefeat msgbox Route119_Text_KentPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Jackson:: @ 81F4810 +Route119_EventScript_Jackson:: trainerbattle_single TRAINER_JACKSON_1, Route119_Text_JacksonIntro, Route119_Text_JacksonDefeat, Route119_EventScript_RegisterJackson specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -378,7 +378,7 @@ Route119_EventScript_Jackson:: @ 81F4810 release end -Route119_EventScript_RegisterJackson:: @ 81F483C +Route119_EventScript_RegisterJackson:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route119_Text_JacksonRegister, MSGBOX_DEFAULT @@ -386,12 +386,12 @@ Route119_EventScript_RegisterJackson:: @ 81F483C release end -Route119_EventScript_RematchJackson:: @ 81F485B +Route119_EventScript_RematchJackson:: trainerbattle_rematch TRAINER_JACKSON_1, Route119_Text_JacksonRematchIntro, Route119_Text_JacksonRematchDefeat msgbox Route119_Text_JacksonPostRematch, MSGBOX_AUTOCLOSE end -Route119_EventScript_Catherine:: @ 81F4872 +Route119_EventScript_Catherine:: trainerbattle_single TRAINER_CATHERINE_1, Route119_Text_CatherineIntro, Route119_Text_CatherineDefeat, Route119_EventScript_RegisterCatherine specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -400,7 +400,7 @@ Route119_EventScript_Catherine:: @ 81F4872 release end -Route119_EventScript_RegisterCatherine:: @ 81F489E +Route119_EventScript_RegisterCatherine:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route119_Text_CatherineRegister, MSGBOX_DEFAULT @@ -408,57 +408,57 @@ Route119_EventScript_RegisterCatherine:: @ 81F489E release end -Route119_EventScript_RematchCatherine:: @ 81F48BD +Route119_EventScript_RematchCatherine:: trainerbattle_rematch TRAINER_CATHERINE_1, Route119_Text_CatherineRematchIntro, Route119_Text_CatherineRematchDefeat msgbox Route119_Text_CatherinePostRematch, MSGBOX_AUTOCLOSE end -Route119_EventScript_Hugh:: @ 81F48D4 +Route119_EventScript_Hugh:: trainerbattle_single TRAINER_HUGH, Route119_Text_HughIntro, Route119_Text_HughDefeat msgbox Route119_Text_HughPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Phil:: @ 81F48EB +Route119_EventScript_Phil:: trainerbattle_single TRAINER_PHIL, Route119_Text_PhilIntro, Route119_Text_PhilDefeat msgbox Route119_Text_PhilPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Yasu:: @ 81F4902 +Route119_EventScript_Yasu:: trainerbattle_single TRAINER_YASU, Route119_Text_YasuIntro, Route119_Text_YasuDefeat msgbox Route119_Text_YasuPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Takashi:: @ 81F4919 +Route119_EventScript_Takashi:: trainerbattle_single TRAINER_TAKASHI, Route119_Text_TakashiIntro, Route119_Text_TakashiDefeat msgbox Route119_Text_TakashiPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Hideo:: @ 81F4930 +Route119_EventScript_Hideo:: trainerbattle_single TRAINER_HIDEO, Route119_Text_HideoIntro, Route119_Text_HideoDefeat msgbox Route119_Text_HideoPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Chris:: @ 81F4947 +Route119_EventScript_Chris:: trainerbattle_single TRAINER_CHRIS, Route119_Text_ChrisIntro, Route119_Text_ChrisDefeat msgbox Route119_Text_ChrisPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Fabian:: @ 81F495E +Route119_EventScript_Fabian:: trainerbattle_single TRAINER_FABIAN, Route119_Text_FabianIntro, Route119_Text_FabianDefeat msgbox Route119_Text_FabianPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Dayton:: @ 81F4975 +Route119_EventScript_Dayton:: trainerbattle_single TRAINER_DAYTON, Route119_Text_DaytonIntro, Route119_Text_DaytonDefeat msgbox Route119_Text_DaytonPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_Rachel:: @ 81F498C +Route119_EventScript_Rachel:: trainerbattle_single TRAINER_RACHEL, Route119_Text_RachelIntro, Route119_Text_RachelDefeat msgbox Route119_Text_RachelPostBattle, MSGBOX_AUTOCLOSE end -Route119_EventScript_BridgeAquaGrunt1:: @ 81F49A3 +Route119_EventScript_BridgeAquaGrunt1:: lock faceplayer msgbox Route119_Text_StayAwayFromWeatherInstitute, MSGBOX_DEFAULT @@ -468,7 +468,7 @@ Route119_EventScript_BridgeAquaGrunt1:: @ 81F49A3 release end -Route119_EventScript_BridgeAquaGrunt2:: @ 81F49BA +Route119_EventScript_BridgeAquaGrunt2:: lock faceplayer msgbox Route119_Text_DontGoNearWeatherInstitute, MSGBOX_DEFAULT @@ -478,19 +478,19 @@ Route119_EventScript_BridgeAquaGrunt2:: @ 81F49BA release end -Route119_EventScript_Boy1:: @ 81F49D1 +Route119_EventScript_Boy1:: msgbox Route119_Text_ThoughtFlyByCatchingBirdMons, MSGBOX_NPC end -Route119_EventScript_Boy2:: @ 81F49DA +Route119_EventScript_Boy2:: msgbox Route119_Text_CanYourMonMakeSecretBase, MSGBOX_NPC end -Route119_EventScript_TrainerTipsDecoration:: @ 81F49E3 +Route119_EventScript_TrainerTipsDecoration:: msgbox Route119_Text_TrainerTipsDecoration, MSGBOX_SIGN end -Route119_EventScript_ScottWonAtFortreeGymCall:: @ 81F49EC +Route119_EventScript_ScottWonAtFortreeGymCall:: lockall pokenavcall Route119_Text_ScottYouWonAtFortreeGym waitmessage @@ -499,7 +499,7 @@ Route119_EventScript_ScottWonAtFortreeGymCall:: @ 81F49EC releaseall end -Route119_Text_MayIntro: @ 81F49FD +Route119_Text_MayIntro: .string "MAY: {PLAYER}{KUN}!\n" .string "Where were you? I was looking for you!\p" .string "How much stronger have you gotten?\n" @@ -507,18 +507,18 @@ Route119_Text_MayIntro: @ 81F49FD .string "Ready with your POKéMON?\n" .string "Of course you are! Go!$" -Route119_Text_MayDefeat: @ 81F4A98 +Route119_Text_MayDefeat: .string "Achah!\n" .string "{PLAYER}{KUN}, you're strong!\p" .string "I was worried that you might be\n" .string "struggling with your training.$" -Route119_Text_MayPresentForYou: @ 81F4AF3 +Route119_Text_MayPresentForYou: .string "MAY: But I had absolutely nothing to\n" .string "worry about! Keep it up!\p" .string "And, here! I have a present for you.$" -Route119_Text_MayExplainFly: @ 81F4B56 +Route119_Text_MayExplainFly: .string "MAY: Use FLY, and your POKéMON will\n" .string "instantly carry you to any town you've\l" .string "already visited.\p" @@ -531,7 +531,7 @@ Route119_Text_MayExplainFly: @ 81F4B56 .string "{PLAYER}{KUN}.\p" .string "Well, let's meet again somewhere!$" -Route119_Text_BrendanIntro: @ 81F4C9A +Route119_Text_BrendanIntro: .string "BRENDAN: {PLAYER}! So this is where\n" .string "you've been looking for POKéMON?\p" .string "Let me see how good you got.\n" @@ -539,17 +539,17 @@ Route119_Text_BrendanIntro: @ 81F4C9A .string "Now!\n" .string "It's a battle, so battle!$" -Route119_Text_BrendanDefeat: @ 81F4D24 +Route119_Text_BrendanDefeat: .string "Hmm…\n" .string "You've gotten pretty darn decent.$" -Route119_Text_BrendanIllGiveYouThis: @ 81F4D4B +Route119_Text_BrendanIllGiveYouThis: .string "BRENDAN: I'd say you're good enough\n" .string "to search for POKéMON anywhere.\p" .string "Here, I'll give you this.\n" .string "Try it out.$" -Route119_Text_BrendanExplainFly: @ 81F4DB5 +Route119_Text_BrendanExplainFly: .string "BRENDAN: Use FLY, and your POKéMON\n" .string "instantly carries you to any town\l" .string "you've already visited.\p" @@ -557,7 +557,7 @@ Route119_Text_BrendanExplainFly: @ 81F4DB5 .string "to do that.\p" .string "Anyway, I have to move along.$" -Route119_Text_ScottWayToGoBeSeeingYou: @ 81F4E60 +Route119_Text_ScottWayToGoBeSeeingYou: .string "SCOTT: Hahahah!\n" .string "Way to go, {PLAYER}{KUN}!\p" .string "I just passed by a TRAINER riding\n" @@ -572,7 +572,7 @@ Route119_Text_ScottWayToGoBeSeeingYou: @ 81F4E60 .string "Well, I'll be seeing you!$" -Route119_Text_ScottYouWonAtFortreeGym: @ 81F4FBA +Route119_Text_ScottYouWonAtFortreeGym: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "SCOTT: Hiya, {PLAYER}{KUN}, it's me!\p" @@ -587,17 +587,17 @@ Route119_Text_ScottYouWonAtFortreeGym: @ 81F4FBA .string "… … … … … …\n" .string "… … … … … Click!$" -Route119_Text_StayAwayFromWeatherInstitute: @ 81F50EB +Route119_Text_StayAwayFromWeatherInstitute: .string "We're standing lookout here.\p" .string "Hey, you! Stay away from the WEATHER\n" .string "INSTITUTE. It's not safe.$" -Route119_Text_DontGoNearWeatherInstitute: @ 81F5147 +Route119_Text_DontGoNearWeatherInstitute: .string "Lookout duty is surprisingly boring.\p" .string "Hey, you! Please don't go near the\n" .string "WEATHER INSTITUTE.$" -Route119_Text_ThoughtFlyByCatchingBirdMons: @ 81F51A2 +Route119_Text_ThoughtFlyByCatchingBirdMons: .string "I thought you FLY by catching a whole\n" .string "flock of BIRD POKéMON, and then\l" .string "hanging on to them somehow.\p" @@ -606,25 +606,25 @@ Route119_Text_ThoughtFlyByCatchingBirdMons: @ 81F51A2 .string "I wish I'd known about that a long\n" .string "time ago…$" -Route119_Text_TallGrassSnaresBikeTires: @ 81F5261 +Route119_Text_TallGrassSnaresBikeTires: .string "Tch…\n" .string "It's a no-go…\p" .string "The tall grass snares BIKE tires.\n" .string "There's no way you can cycle here.$" -Route119_Text_CanYourMonMakeSecretBase: @ 81F52B9 +Route119_Text_CanYourMonMakeSecretBase: .string "Can your POKéMON use its SECRET POWER\n" .string "on a big pile of grass and make a\l" .string "SECRET BASE?$" -Route119_Text_RouteSignFortree: @ 81F530E +Route119_Text_RouteSignFortree: .string "ROUTE 119\n" .string "{RIGHT_ARROW} FORTREE CITY$" -Route119_Text_WeatherInstitute: @ 81F5327 +Route119_Text_WeatherInstitute: .string "WEATHER INSTITUTE$" -Route119_Text_TrainerTipsDecoration: @ 81F5339 +Route119_Text_TrainerTipsDecoration: .string "TRAINER TIPS\p" .string "Up to sixteen decorations and\n" .string "furniture items can be placed in\l" diff --git a/data/maps/Route119_House/scripts.inc b/data/maps/Route119_House/scripts.inc index b6915aaa3018..548b2c3948cf 100644 --- a/data/maps/Route119_House/scripts.inc +++ b/data/maps/Route119_House/scripts.inc @@ -1,11 +1,11 @@ -Route119_House_MapScripts:: @ 8270965 +Route119_House_MapScripts:: .byte 0 -Route119_House_EventScript_Woman:: @ 8270966 +Route119_House_EventScript_Woman:: msgbox Route119_House_Text_RumorAboutCaveOfOrigin, MSGBOX_NPC end -Route119_House_EventScript_Wingull:: @ 827096F +Route119_House_EventScript_Wingull:: lock faceplayer waitse @@ -15,13 +15,13 @@ Route119_House_EventScript_Wingull:: @ 827096F release end -Route119_House_Text_RumorAboutCaveOfOrigin: @ 8270982 +Route119_House_Text_RumorAboutCaveOfOrigin: .string "I heard about a cave called the CAVE\n" .string "OF ORIGIN.\p" .string "People rumor that the spirits of\n" .string "POKéMON are revived there. Could\l" .string "something like that really happen?$" -Route119_House_Text_Wingull: @ 8270A17 +Route119_House_Text_Wingull: .string "WINGULL: Pihyoh!$" diff --git a/data/maps/Route119_WeatherInstitute_1F/scripts.inc b/data/maps/Route119_WeatherInstitute_1F/scripts.inc index 03c537cf0719..33ba0b025dca 100644 --- a/data/maps/Route119_WeatherInstitute_1F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_1F/scripts.inc @@ -1,20 +1,20 @@ .set LOCALID_LITTLE_BOY, 5 -Route119_WeatherInstitute_1F_MapScripts:: @ 826FA86 +Route119_WeatherInstitute_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route119_WeatherInstitute_1F_OnTransition .byte 0 -Route119_WeatherInstitute_1F_OnTransition: @ 826FA8C +Route119_WeatherInstitute_1F_OnTransition: compare VAR_WEATHER_INSTITUTE_STATE, 0 call_if_eq Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos end -Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos:: @ 826FA98 +Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos:: setobjectxyperm LOCALID_LITTLE_BOY, 0, 5 setobjectmovementtype LOCALID_LITTLE_BOY, MOVEMENT_TYPE_FACE_RIGHT return -Route119_WeatherInstitute_1F_EventScript_LittleBoy:: @ 826FAA4 +Route119_WeatherInstitute_1F_EventScript_LittleBoy:: lock faceplayer special GetPlayerBigGuyGirlString @@ -24,12 +24,12 @@ Route119_WeatherInstitute_1F_EventScript_LittleBoy:: @ 826FAA4 release end -Route119_WeatherInstitute_1F_EventScript_LittleBoyTeamAquaHere:: @ 826FABE +Route119_WeatherInstitute_1F_EventScript_LittleBoyTeamAquaHere:: msgbox Route119_WeatherInstitute_1F_Text_EveryoneWentUpstairs, MSGBOX_DEFAULT release end -Route119_WeatherInstitute_1F_EventScript_InstituteWorker1:: @ 826FAC8 +Route119_WeatherInstitute_1F_EventScript_InstituteWorker1:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, Route119_WeatherInstitute_1F_EventScript_StudyingRain @@ -42,20 +42,20 @@ Route119_WeatherInstitute_1F_EventScript_InstituteWorker1:: @ 826FAC8 release end -Route119_WeatherInstitute_1F_EventScript_LegendaryDefeated:: @ 826FAFF +Route119_WeatherInstitute_1F_EventScript_LegendaryDefeated:: addvar VAR_0x8004, 1 return -Route119_WeatherInstitute_1F_EventScript_StudyingRain:: @ 826FB05 +Route119_WeatherInstitute_1F_EventScript_StudyingRain:: msgbox Route119_WeatherInstitute_1F_Text_ProfStudyingRain, MSGBOX_DEFAULT release end -Route119_WeatherInstitute_1F_EventScript_InstituteWorker2:: @ 826FB0F +Route119_WeatherInstitute_1F_EventScript_InstituteWorker2:: msgbox Route119_WeatherInstitute_1F_Text_WhatWereAquasUpTo, MSGBOX_NPC end -Route119_WeatherInstitute_1F_EventScript_Bed:: @ 826FB18 +Route119_WeatherInstitute_1F_EventScript_Bed:: lockall msgbox Route119_WeatherInstitute_1F_Text_TakeRestInBed, MSGBOX_DEFAULT closemessage @@ -63,54 +63,54 @@ Route119_WeatherInstitute_1F_EventScript_Bed:: @ 826FB18 releaseall end -Route119_WeatherInstitute_1F_EventScript_Grunt1:: @ 826FB29 +Route119_WeatherInstitute_1F_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_WEATHER_INST_1, Route119_WeatherInstitute_1F_Text_Grunt1Intro, Route119_WeatherInstitute_1F_Text_Grunt1Defeat msgbox Route119_WeatherInstitute_1F_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_1F_EventScript_Grunt4:: @ 826FB40 +Route119_WeatherInstitute_1F_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_WEATHER_INST_4, Route119_WeatherInstitute_1F_Text_Grunt4Intro, Route119_WeatherInstitute_1F_Text_Grunt4Defeat msgbox Route119_WeatherInstitute_1F_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_1F_Text_Grunt1Intro: @ 826FB57 +Route119_WeatherInstitute_1F_Text_Grunt1Intro: .string "The BOSS got interested in\n" .string "the research they have going here,\l" .string "so he sent us out.\p" .string "You quit meddling!$" -Route119_WeatherInstitute_1F_Text_Grunt1Defeat: @ 826FBBB +Route119_WeatherInstitute_1F_Text_Grunt1Defeat: .string "Blast it…\n" .string "Blasted by a kid…$" -Route119_WeatherInstitute_1F_Text_Grunt1PostBattle: @ 826FBD7 +Route119_WeatherInstitute_1F_Text_Grunt1PostBattle: .string "Our BOSS knows everything.\p" .string "But I'm just a GRUNT. What would I know\n" .string "about what he's thinking?$" -Route119_WeatherInstitute_1F_Text_Grunt4Intro: @ 826FC34 +Route119_WeatherInstitute_1F_Text_Grunt4Intro: .string "Huh?\n" .string "What's a kid doing here?$" -Route119_WeatherInstitute_1F_Text_Grunt4Defeat: @ 826FC52 +Route119_WeatherInstitute_1F_Text_Grunt4Defeat: .string "Huh?\n" .string "I lost?!$" -Route119_WeatherInstitute_1F_Text_Grunt4PostBattle: @ 826FC60 +Route119_WeatherInstitute_1F_Text_Grunt4PostBattle: .string "Oh, no…\n" .string "I'll catch an earful for losing to a kid…\p" .string "I should just take a nap in the bed…$" -Route119_WeatherInstitute_1F_Text_EveryoneWentUpstairs: @ 826FCB7 +Route119_WeatherInstitute_1F_Text_EveryoneWentUpstairs: .string "While I was sleeping, everyone went\n" .string "upstairs!$" -Route119_WeatherInstitute_1F_Text_WowYoureStrong: @ 826FCE5 +Route119_WeatherInstitute_1F_Text_WowYoureStrong: .string "Wow, you're really strong!\p" .string "I wish I could be a POKéMON TRAINER\n" .string "like you!$" -Route119_WeatherInstitute_1F_Text_ProfStudyingRain: @ 826FD2E +Route119_WeatherInstitute_1F_Text_ProfStudyingRain: .string "The PROFESSOR loves rain.\n" .string "That's a fact.\p" .string "But if it keeps raining, people will be in\n" @@ -118,7 +118,7 @@ Route119_WeatherInstitute_1F_Text_ProfStudyingRain: @ 826FD2E .string "And thus, the PROFESSOR is studying\n" .string "if the rain can be put to good use.$" -Route119_WeatherInstitute_1F_Text_NoticingAbnormalWeather: @ 826FDE8 +Route119_WeatherInstitute_1F_Text_NoticingAbnormalWeather: .string "On the 2nd floor of the INSTITUTE,\n" .string "we study the weather patterns over\l" .string "the HOENN region.\p" @@ -126,13 +126,13 @@ Route119_WeatherInstitute_1F_Text_NoticingAbnormalWeather: @ 826FDE8 .string "isolated cases of droughts and\l" .string "heavy rain lately…$" -Route119_WeatherInstitute_1F_Text_WhatWereAquasUpTo: @ 826FE94 +Route119_WeatherInstitute_1F_Text_WhatWereAquasUpTo: .string "Hello!\n" .string "We've been saved by your actions!\p" .string "What I don't understand is what on\n" .string "earth the AQUAS were up to.$" -Route119_WeatherInstitute_1F_Text_TakeRestInBed: @ 826FEFC +Route119_WeatherInstitute_1F_Text_TakeRestInBed: .string "There's a bed…\n" .string "Let's take a rest.$" diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index 85d9d928fb05..af281ea0a598 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -5,11 +5,11 @@ .set LOCALID_GRUNT_3, 7 .set LOCALID_GRUNT_4, 8 -Route119_WeatherInstitute_2F_MapScripts:: @ 826FF1E +Route119_WeatherInstitute_2F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route119_WeatherInstitute_2F_OnTransition .byte 0 -Route119_WeatherInstitute_2F_OnTransition: @ 826FF24 +Route119_WeatherInstitute_2F_OnTransition: compare VAR_WEATHER_INSTITUTE_STATE, 0 call_if_eq Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere compare VAR_WEATHER_INSTITUTE_STATE, 1 @@ -17,42 +17,42 @@ Route119_WeatherInstitute_2F_OnTransition: @ 826FF24 call_if_set FLAG_SYS_GAME_CLEAR, Route119_WeatherInstitute_2F_EventScript_SetScientistPosGameClear end -Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere:: @ 826FF44 +Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere:: setobjectxyperm LOCALID_SCIENTIST, 1, 6 setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT return -Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaGone:: @ 826FF50 +Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaGone:: setobjectxyperm LOCALID_SCIENTIST, 4, 6 setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT return -Route119_WeatherInstitute_2F_EventScript_SetScientistPosGameClear:: @ 826FF5C +Route119_WeatherInstitute_2F_EventScript_SetScientistPosGameClear:: setobjectxyperm LOCALID_SCIENTIST, 2, 2 setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_UP return -Route119_WeatherInstitute_2F_EventScript_Grunt5:: @ 826FF68 +Route119_WeatherInstitute_2F_EventScript_Grunt5:: trainerbattle_single TRAINER_GRUNT_WEATHER_INST_5, Route119_WeatherInstitute_2F_Text_Grunt5Intro, Route119_WeatherInstitute_2F_Text_Grunt5Defeat msgbox Route119_WeatherInstitute_2F_Text_Grunt5PostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_2F_EventScript_Grunt2:: @ 826FF7F +Route119_WeatherInstitute_2F_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_WEATHER_INST_2, Route119_WeatherInstitute_2F_Text_Grunt2Intro, Route119_WeatherInstitute_2F_Text_Grunt2Defeat msgbox Route119_WeatherInstitute_2F_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_2F_EventScript_Grunt3:: @ 826FF96 +Route119_WeatherInstitute_2F_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_WEATHER_INST_3, Route119_WeatherInstitute_2F_Text_Grunt3Intro, Route119_WeatherInstitute_2F_Text_Grunt3Defeat msgbox Route119_WeatherInstitute_2F_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_2F_EventScript_Shelly:: @ 826FFAD +Route119_WeatherInstitute_2F_EventScript_Shelly:: trainerbattle_single TRAINER_SHELLY_WEATHER_INSTITUTE, Route119_WeatherInstitute_2F_Text_ShellyIntro, Route119_WeatherInstitute_2F_Text_ShellyDefeat, Route119_WeatherInstitute_2F_EventScript_ShellyDefeated msgbox Route119_WeatherInstitute_2F_Text_ShellyPostBattle, MSGBOX_AUTOCLOSE end -Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8 +Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: msgbox Route119_WeatherInstitute_2F_Text_ShellyPostBattle, MSGBOX_DEFAULT closemessage addobject LOCALID_GRUNT_3 @@ -88,7 +88,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8 goto Route119_WeatherInstitute_2F_EventScript_ReceiveCastform end -Route119_WeatherInstitute_2F_EventScript_ReceiveCastform:: @ 827004D +Route119_WeatherInstitute_2F_EventScript_ReceiveCastform:: msgbox Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon, MSGBOX_DEFAULT setvar VAR_TEMP_1, SPECIES_CASTFORM givemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER @@ -99,7 +99,7 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastform:: @ 827004D goto Common_EventScript_NoMoreRoomForPokemon end -Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty:: @ 8270085 +Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty:: call Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -109,7 +109,7 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty:: @ 8270085 goto Route119_WeatherInstitute_2F_EventScript_ExplainCastform end -Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC:: @ 82700AD +Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC:: call Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -118,12 +118,12 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC:: @ 82700AD goto Route119_WeatherInstitute_2F_EventScript_SendCastformToPC end -Route119_WeatherInstitute_2F_EventScript_SendCastformToPC:: @ 82700D0 +Route119_WeatherInstitute_2F_EventScript_SendCastformToPC:: call Common_EventScript_TransferredToPC goto Route119_WeatherInstitute_2F_EventScript_ExplainCastform end -Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare:: @ 82700DB +Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare:: playfanfare MUS_OBTAIN_ITEM message Route119_WeatherInstitute_2F_Text_PlayerReceivedCastform waitmessage @@ -131,19 +131,19 @@ Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare:: @ 82700DB bufferspeciesname 0, SPECIES_CASTFORM return -Route119_WeatherInstitute_2F_EventScript_ExplainCastform:: @ 82700EA +Route119_WeatherInstitute_2F_EventScript_ExplainCastform:: msgbox Route119_WeatherInstitute_2F_Text_PokemonChangesWithWeather, MSGBOX_DEFAULT setflag FLAG_RECEIVED_CASTFORM release end -Route119_WeatherInstitute_2F_EventScript_ScientistMentionWeather:: @ 82700F7 +Route119_WeatherInstitute_2F_EventScript_ScientistMentionWeather:: goto_if_set FLAG_SYS_GAME_CLEAR, Route119_WeatherInstitute_2F_EventScript_TryStartAbnormalWeather msgbox Route119_WeatherInstitute_2F_Text_ChangingWeatherRidiculous, MSGBOX_DEFAULT release end -Route119_WeatherInstitute_2F_EventScript_TryStartAbnormalWeather:: @ 827010A +Route119_WeatherInstitute_2F_EventScript_TryStartAbnormalWeather:: setvar VAR_0x8004, 0 call_if_set FLAG_DEFEATED_KYOGRE, Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated call_if_set FLAG_DEFEATED_GROUDON, Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated @@ -157,26 +157,26 @@ Route119_WeatherInstitute_2F_EventScript_TryStartAbnormalWeather:: @ 827010A release end -Route119_WeatherInstitute_2F_EventScript_KyogreWeather:: @ 827014F +Route119_WeatherInstitute_2F_EventScript_KyogreWeather:: msgbox Route119_WeatherInstitute_2F_Text_KyogreWeather, MSGBOX_DEFAULT release end -Route119_WeatherInstitute_2F_EventScript_CreateAbnormalWeather:: @ 8270159 +Route119_WeatherInstitute_2F_EventScript_CreateAbnormalWeather:: special CreateAbnormalWeatherEvent setflag FLAG_TEMP_2 return -Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated:: @ 8270160 +Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated:: addvar VAR_0x8004, 1 return -Route119_WeatherInstitute_2F_EventScript_NoAbnormalWeather:: @ 8270166 +Route119_WeatherInstitute_2F_EventScript_NoAbnormalWeather:: msgbox Route119_WeatherInstitute_2F_Text_NoAbnormalWeather, MSGBOX_DEFAULT release end -Route119_WeatherInstitute_2F_Movement_GruntApproachShelly: @ 8270170 +Route119_WeatherInstitute_2F_Movement_GruntApproachShelly: walk_fast_left walk_fast_left walk_fast_left @@ -190,7 +190,7 @@ Route119_WeatherInstitute_2F_Movement_GruntApproachShelly: @ 8270170 walk_fast_left step_end -Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay: @ 827017C +Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay: delay_16 delay_16 delay_16 @@ -200,66 +200,66 @@ Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay: @ 827017C walk_in_place_fastest_down step_end -Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition: @ 8270184 +Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition: slide_down walk_in_place_fastest_left step_end -Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer: @ 8270187 +Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer: walk_right walk_right walk_right step_end -Route119_WeatherInstitute_2F_EventScript_WeatherScientist:: @ 827018B +Route119_WeatherInstitute_2F_EventScript_WeatherScientist:: lock faceplayer goto_if_set FLAG_RECEIVED_CASTFORM, Route119_WeatherInstitute_2F_EventScript_ScientistMentionWeather goto Route119_WeatherInstitute_2F_EventScript_ReceiveCastform end -Route119_WeatherInstitute_2F_Text_Grunt2Intro: @ 827019C +Route119_WeatherInstitute_2F_Text_Grunt2Intro: .string "The INSTITUTE created a type of\n" .string "POKéMON that has something to do with\l" .string "the weather. We're here to take them!$" -Route119_WeatherInstitute_2F_Text_Grunt2Defeat: @ 8270208 +Route119_WeatherInstitute_2F_Text_Grunt2Defeat: .string "Our plan's being spoiled by a kid?$" -Route119_WeatherInstitute_2F_Text_Grunt2PostBattle: @ 827022B +Route119_WeatherInstitute_2F_Text_Grunt2PostBattle: .string "If the POKéMON they made here can\n" .string "control the weather freely, then we of\l" .string "TEAM AQUA definitely need it!$" -Route119_WeatherInstitute_2F_Text_Grunt3Intro: @ 8270292 +Route119_WeatherInstitute_2F_Text_Grunt3Intro: .string "We're TEAM AQUA!\n" .string "We appear wherever anything rare is\l" .string "found!$" -Route119_WeatherInstitute_2F_Text_Grunt3Defeat: @ 82702CE +Route119_WeatherInstitute_2F_Text_Grunt3Defeat: .string "You got me!$" -Route119_WeatherInstitute_2F_Text_Grunt3PostBattle: @ 82702DA +Route119_WeatherInstitute_2F_Text_Grunt3PostBattle: .string "You don't have any idea what we of\n" .string "TEAM AQUA are working towards!\l" .string "You stay out of our way!$" -Route119_WeatherInstitute_2F_Text_Grunt5Intro: @ 8270335 +Route119_WeatherInstitute_2F_Text_Grunt5Intro: .string "Don't tell me you're looking for that\n" .string "weather POKéMON, too?\p" .string "That's a no-no!\n" .string "We were here to get it first!$" -Route119_WeatherInstitute_2F_Text_Grunt5Defeat: @ 827039F +Route119_WeatherInstitute_2F_Text_Grunt5Defeat: .string "Oh, will you look at my POKéMON?$" -Route119_WeatherInstitute_2F_Text_Grunt5PostBattle: @ 82703C0 +Route119_WeatherInstitute_2F_Text_Grunt5PostBattle: .string "Humph, so what?\n" .string "What we want…\p" .string "What we really want isn't here…\n" .string "Ihihihihi…$" -Route119_WeatherInstitute_2F_Text_ShellyIntro: @ 8270409 +Route119_WeatherInstitute_2F_Text_ShellyIntro: .string "Ahahahaha!\p" .string "You're going to meddle in TEAM AQUA's\n" .string "affairs?\p" @@ -268,56 +268,56 @@ Route119_WeatherInstitute_2F_Text_ShellyIntro: @ 8270409 .string "You're so cute, you're disgusting!\n" .string "I'll put you down, kiddy!$" -Route119_WeatherInstitute_2F_Text_ShellyDefeat: @ 82704BD +Route119_WeatherInstitute_2F_Text_ShellyDefeat: .string "Ahahahaha!\n" .string "You're disgustingly strong!$" -Route119_WeatherInstitute_2F_Text_ShellyPostBattle: @ 82704E4 +Route119_WeatherInstitute_2F_Text_ShellyPostBattle: .string "It's bad enough to have TEAM MAGMA\n" .string "blunder about, but now there's you!\p" .string "What makes you want to sniff around\n" .string "in our business, anyway?$" -Route119_WeatherInstitute_2F_Text_TeamMagmaJustPassedBy: @ 8270568 +Route119_WeatherInstitute_2F_Text_TeamMagmaJustPassedBy: .string "We have a situation here!\p" .string "A TEAM MAGMA mob just passed\n" .string "the WEATHER INSTITUTE.\p" .string "They appear to be headed for\n" .string "MT. PYRE!$" -Route119_WeatherInstitute_2F_Text_WeHaveToHurryToMtPyre: @ 82705DD +Route119_WeatherInstitute_2F_Text_WeHaveToHurryToMtPyre: .string "What?!\p" .string "We can't waste any more time here!\n" .string "We have to hurry to MT. PYRE, too!\p" .string "Ahahahaha!\n" .string "TEAM MAGMA, just you wait!$" -Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon: @ 8270650 +Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon: .string "Thanks!\n" .string "Thanks to you, we're safe!\p" .string "It might be an odd way of thanking you,\n" .string "but take this POKéMON.$" @ Unused -Route119_WeatherInstitute_2F_Text_NoRoomForPokemon: @ 82706B2 +Route119_WeatherInstitute_2F_Text_NoRoomForPokemon: .string "Hm? You don't seem to have any room\n" .string "for this POKéMON.$" -Route119_WeatherInstitute_2F_Text_PlayerReceivedCastform: @ 82706E8 +Route119_WeatherInstitute_2F_Text_PlayerReceivedCastform: .string "{PLAYER} received CASTFORM!$" -Route119_WeatherInstitute_2F_Text_PokemonChangesWithWeather: @ 82706FE +Route119_WeatherInstitute_2F_Text_PokemonChangesWithWeather: .string "That POKéMON changes shape according\n" .string "to the weather conditions.\p" .string "There're plenty of them in the\n" .string "INSTITUTE--go ahead and take it.$" -Route119_WeatherInstitute_2F_Text_ChangingWeatherRidiculous: @ 827077E +Route119_WeatherInstitute_2F_Text_ChangingWeatherRidiculous: .string "I've been researching rain for many\n" .string "years, but it's ridiculous to think that\l" .string "humans can freely change the weather.$" -Route119_WeatherInstitute_2F_Text_GroudonWeather: @ 82707F1 +Route119_WeatherInstitute_2F_Text_GroudonWeather: .string "I track weather patterns over\n" .string "the HOENN region.\p" .string "Presently, a drought has been recorded\n" @@ -325,7 +325,7 @@ Route119_WeatherInstitute_2F_Text_GroudonWeather: @ 82707F1 .string "Could that mean, somewhere near\n" .string "{STR_VAR_1}…$" -Route119_WeatherInstitute_2F_Text_KyogreWeather: @ 8270873 +Route119_WeatherInstitute_2F_Text_KyogreWeather: .string "I track weather patterns over\n" .string "the HOENN region.\p" .string "Presently, heavy rainfall has been\n" @@ -333,7 +333,7 @@ Route119_WeatherInstitute_2F_Text_KyogreWeather: @ 8270873 .string "Could that mean, somewhere near\n" .string "{STR_VAR_1}…$" -Route119_WeatherInstitute_2F_Text_NoAbnormalWeather: @ 82708FC +Route119_WeatherInstitute_2F_Text_NoAbnormalWeather: .string "Abnormal weather conditions are\n" .string "no longer being reported.\p" .string "The occasional rainfall is a blessing,\n" diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index 0056acbd79f0..f07395824657 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -2,17 +2,17 @@ .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 -Route120_MapScripts:: @ 81F53EC +Route120_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route120_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Route120_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route120_OnLoad .byte 0 -Route120_OnResume: @ 81F53FC +Route120_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, Route120_EventScript_RemoveKecleonObject end -Route120_EventScript_RemoveKecleonObject:: @ 81F5406 +Route120_EventScript_RemoveKecleonObject:: compare VAR_0x8009, 0 call_if_eq Route120_EventScript_RemoveBridgeKecleon compare VAR_0x8009, 1 @@ -27,7 +27,7 @@ Route120_EventScript_RemoveKecleonObject:: @ 81F5406 call_if_eq Route120_EventScript_RemoveKecleon return -Route120_EventScript_RemoveBridgeKecleon:: @ 81F5449 +Route120_EventScript_RemoveBridgeKecleon:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn @@ -35,41 +35,41 @@ Route120_EventScript_RemoveBridgeKecleon:: @ 81F5449 removeobject LOCALID_BRIDGE_KECLEON_SHADOW return -Route120_EventScript_RemoveKecleon:: @ 81F5460 +Route120_EventScript_RemoveKecleon:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -Route120_OnLoad: @ 81F5474 +Route120_OnLoad: call_if_unset FLAG_REGI_DOORS_OPENED, Route120_EventScript_CloseAncientTomb call_if_set FLAG_RECEIVED_DEVON_SCOPE, Route120_EventScript_SetBridgeClearMetatiles call_if_unset FLAG_RECEIVED_DEVON_SCOPE, Route120_EventScript_SetBridgeKecleonMovement end -Route120_EventScript_CloseAncientTomb:: @ 81F5490 +Route120_EventScript_CloseAncientTomb:: setmetatile 7, 54, METATILE_General_RockWall_RockBase, 1 setmetatile 7, 55, METATILE_General_RockWall_SandBase, 1 return -Route120_EventScript_SetBridgeClearMetatiles:: @ 81F54A3 +Route120_EventScript_SetBridgeClearMetatiles:: setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, 0 setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, 0 setmetatile 12, 17, METATILE_General_ReflectiveWater, 0 setmetatile 13, 17, METATILE_General_ReflectiveWater, 0 return -Route120_EventScript_SetBridgeKecleonMovement:: @ 81F54C8 +Route120_EventScript_SetBridgeKecleonMovement:: setobjectmovementtype LOCALID_BRIDGE_KECLEON_SHADOW, MOVEMENT_TYPE_FACE_RIGHT return -Route120_OnTransition: @ 81F54CD +Route120_OnTransition: call GabbyAndTy_EventScript_UpdateLocation call Route120_EventScript_SetWeather end -Route120_EventScript_SetWeather:: @ 81F54D8 +Route120_EventScript_SetWeather:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 compare VAR_TEMP_1, 14 goto_if_le Route120_EventScript_SetSunnyWeather @@ -79,15 +79,15 @@ Route120_EventScript_SetWeather:: @ 81F54D8 goto_if_ge Route120_EventScript_SetCloudyWeather return -Route120_EventScript_SetCloudyWeather:: @ 81F54FF +Route120_EventScript_SetCloudyWeather:: setweather WEATHER_SUNNY_CLOUDS return -Route120_EventScript_SetSunnyWeather:: @ 81F5503 +Route120_EventScript_SetSunnyWeather:: setweather WEATHER_SUNNY return -Route120_EventScript_TrySetRainyWeather:: @ 81F5507 +Route120_EventScript_TrySetRainyWeather:: compare VAR_TEMP_0, 7 goto_if_le Route120_EventScript_SetRainyWeather compare VAR_TEMP_0, 19 @@ -95,11 +95,11 @@ Route120_EventScript_TrySetRainyWeather:: @ 81F5507 goto Route120_EventScript_SetRainyWeather end -Route120_EventScript_SetRainyWeather:: @ 81F5523 +Route120_EventScript_SetRainyWeather:: setweather WEATHER_RAIN return -Route120_EventScript_BerryBeauty:: @ 81F5527 +Route120_EventScript_BerryBeauty:: lock faceplayer dotimebasedevents @@ -123,32 +123,32 @@ Route120_EventScript_BerryBeauty:: @ 81F5527 case 9, Route120_EventScript_GiveIapapaBerry end -Route120_EventScript_GiveFigyBerry:: @ 81F55CA +Route120_EventScript_GiveFigyBerry:: setvar VAR_0x8004, ITEM_FIGY_BERRY goto Route120_EventScript_GiveBerry end -Route120_EventScript_GiveWikiBerry:: @ 81F55D5 +Route120_EventScript_GiveWikiBerry:: setvar VAR_0x8004, ITEM_WIKI_BERRY goto Route120_EventScript_GiveBerry end -Route120_EventScript_GiveMagoBerry:: @ 81F55E0 +Route120_EventScript_GiveMagoBerry:: setvar VAR_0x8004, ITEM_MAGO_BERRY goto Route120_EventScript_GiveBerry end -Route120_EventScript_GiveAguavBerry:: @ 81F55EB +Route120_EventScript_GiveAguavBerry:: setvar VAR_0x8004, ITEM_AGUAV_BERRY goto Route120_EventScript_GiveBerry end -Route120_EventScript_GiveIapapaBerry:: @ 81F55F6 +Route120_EventScript_GiveIapapaBerry:: setvar VAR_0x8004, ITEM_IAPAPA_BERRY goto Route120_EventScript_GiveBerry end -Route120_EventScript_GiveBerry:: @ 81F5601 +Route120_EventScript_GiveBerry:: giveitem VAR_0x8004 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -157,20 +157,20 @@ Route120_EventScript_GiveBerry:: @ 81F5601 release end -Route120_EventScript_ReceivedBerry:: @ 81F5625 +Route120_EventScript_ReceivedBerry:: msgbox Route120_Text_IllGetMoreBerriesFromBerryMaster, MSGBOX_DEFAULT release end -Route120_EventScript_BerryLove:: @ 81F562F +Route120_EventScript_BerryLove:: msgbox Route120_Text_YesYouUnderstand, MSGBOX_DEFAULT return -Route120_EventScript_BerryNotLove:: @ 81F5638 +Route120_EventScript_BerryNotLove:: msgbox Route120_Text_MakeYourOwnImpressions, MSGBOX_DEFAULT return -Route120_EventScript_Steven:: @ 81F5641 +Route120_EventScript_Steven:: lock faceplayer goto_if_set FLAG_NOT_READY_FOR_BATTLE_ROUTE_120, Route120_EventScript_StevenAskReadyForBattle @@ -180,20 +180,20 @@ Route120_EventScript_Steven:: @ 81F5641 goto Route120_EventScript_StevenBattleKecleon end -Route120_EventScript_StevenNotReady:: @ 81F5665 +Route120_EventScript_StevenNotReady:: msgbox Route120_Text_StevenIllWaitHere, MSGBOX_DEFAULT setflag FLAG_NOT_READY_FOR_BATTLE_ROUTE_120 release end -Route120_EventScript_StevenAskReadyForBattle:: @ 81F5672 +Route120_EventScript_StevenAskReadyForBattle:: msgbox Route120_Text_StevenReadyForBattle, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq Route120_EventScript_StevenNotReady goto Route120_EventScript_StevenBattleKecleon end -Route120_EventScript_StevenBattleKecleon:: @ 81F568B +Route120_EventScript_StevenBattleKecleon:: msgbox Route120_Text_StevenShowMeYourPower, MSGBOX_DEFAULT closemessage compare VAR_FACING, DIR_NORTH @@ -228,7 +228,7 @@ Route120_EventScript_StevenBattleKecleon:: @ 81F568B goto Route120_EventScript_StevenGiveDeconScope end -Route120_EventScript_RemoveBridgeKecleonPostBattle:: @ 81F571C +Route120_EventScript_RemoveBridgeKecleonPostBattle:: fadescreenswapbuffers FADE_TO_BLACK removeobject LOCALID_BRIDGE_KECLEON removeobject LOCALID_BRIDGE_KECLEON_SHADOW @@ -236,7 +236,7 @@ Route120_EventScript_RemoveBridgeKecleonPostBattle:: @ 81F571C goto Route120_EventScript_StevenGiveDeconScope end -Route120_EventScript_StevenGiveDeconScope:: @ 81F572C +Route120_EventScript_StevenGiveDeconScope:: applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestDown applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 @@ -261,39 +261,39 @@ Route120_EventScript_StevenGiveDeconScope:: @ 81F572C release end -Route120_EventScript_PlayerApproachKecleonNorth:: @ 81F57A3 +Route120_EventScript_PlayerApproachKecleonNorth:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -Route120_EventScript_PlayerApproachKecleonWest:: @ 81F57AE +Route120_EventScript_PlayerApproachKecleonWest:: applymovement OBJ_EVENT_ID_PLAYER, Route120_Movement_ApproachKecleonWest waitmovement 0 return -Route120_Movement_ApproachKecleonWest: @ 81F57B9 +Route120_Movement_ApproachKecleonWest: walk_down walk_left step_end -Route120_EventScript_BridgeKecleon:: @ 81F57BC +Route120_EventScript_BridgeKecleon:: msgbox Kecleon_Text_SomethingUnseeable, MSGBOX_NPC end -Route120_EventScript_RouteSignFortree:: @ 81F57C5 +Route120_EventScript_RouteSignFortree:: msgbox Route120_Text_RouteSignFortree, MSGBOX_SIGN end -Route120_EventScript_RouteSign121:: @ 81F57CE +Route120_EventScript_RouteSign121:: msgbox Route120_Text_RouteSign121, MSGBOX_SIGN end -Route120_EventScript_Colin:: @ 81F57D7 +Route120_EventScript_Colin:: trainerbattle_single TRAINER_COLIN, Route120_Text_ColinIntro, Route120_Text_ColinDefeat msgbox Route120_Text_ColinPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Robert:: @ 81F57EE +Route120_EventScript_Robert:: trainerbattle_single TRAINER_ROBERT_1, Route120_Text_RobertIntro, Route120_Text_RobertDefeat, Route120_EventScript_RegisterRobert specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -302,7 +302,7 @@ Route120_EventScript_Robert:: @ 81F57EE release end -Route120_EventScript_RegisterRobert:: @ 81F581A +Route120_EventScript_RegisterRobert:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route120_Text_RobertRegister, MSGBOX_DEFAULT @@ -310,22 +310,22 @@ Route120_EventScript_RegisterRobert:: @ 81F581A release end -Route120_EventScript_RematchRobert:: @ 81F5839 +Route120_EventScript_RematchRobert:: trainerbattle_rematch TRAINER_ROBERT_1, Route120_Text_RobertRematchIntro, Route120_Text_RobertRematchDefeat msgbox Route120_Text_RobertPostRematch, MSGBOX_AUTOCLOSE end -Route120_EventScript_Lorenzo:: @ 81F5850 +Route120_EventScript_Lorenzo:: trainerbattle_single TRAINER_LORENZO, Route120_Text_LorenzoIntro, Route120_Text_LorenzoDefeat msgbox Route120_Text_LorenzoPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Jenna:: @ 81F5867 +Route120_EventScript_Jenna:: trainerbattle_single TRAINER_JENNA, Route120_Text_JennaIntro, Route120_Text_JennaDefeat msgbox Route120_Text_JennaPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Jeffrey:: @ 81F587E +Route120_EventScript_Jeffrey:: trainerbattle_single TRAINER_JEFFREY_1, Route120_Text_JeffreyIntro, Route120_Text_JeffreyDefeat, Route120_EventScript_RegisterJeffrey specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -334,7 +334,7 @@ Route120_EventScript_Jeffrey:: @ 81F587E release end -Route120_EventScript_RegisterJeffrey:: @ 81F58AA +Route120_EventScript_RegisterJeffrey:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route120_Text_JeffreyRegister, MSGBOX_DEFAULT @@ -342,52 +342,52 @@ Route120_EventScript_RegisterJeffrey:: @ 81F58AA release end -Route120_EventScript_RematchJeffrey:: @ 81F58C9 +Route120_EventScript_RematchJeffrey:: trainerbattle_rematch TRAINER_JEFFREY_1, Route120_Text_JeffreyRematchIntro, Route120_Text_JeffreyRematchDefeat msgbox Route120_Text_JeffreyPostRematch, MSGBOX_AUTOCLOSE end -Route120_EventScript_Jennifer:: @ 81F58E0 +Route120_EventScript_Jennifer:: trainerbattle_single TRAINER_JENNIFER, Route120_Text_JenniferIntro, Route120_Text_JenniferDefeat msgbox Route120_Text_JenniferPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Chip:: @ 81F58F7 +Route120_EventScript_Chip:: trainerbattle_single TRAINER_CHIP, Route120_Text_ChipIntro, Route120_Text_ChipDefeat msgbox Route120_Text_ChipPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Clarissa:: @ 81F590E +Route120_EventScript_Clarissa:: trainerbattle_single TRAINER_CLARISSA, Route120_Text_ClarissaIntro, Route120_Text_ClarissaDefeat msgbox Route120_Text_ClarissaPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Angelica:: @ 81F5925 +Route120_EventScript_Angelica:: trainerbattle_single TRAINER_ANGELICA, Route120_Text_AngelicaIntro, Route120_Text_AngelicaDefeat msgbox Route120_Text_AngelicaPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Keigo:: @ 81F593C +Route120_EventScript_Keigo:: trainerbattle_single TRAINER_KEIGO, Route120_Text_KeigoIntro, Route120_Text_KeigoDefeat msgbox Route120_Text_KeigoPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Riley:: @ 81F5953 +Route120_EventScript_Riley:: trainerbattle_single TRAINER_RILEY, Route120_Text_RileyIntro, Route120_Text_RileyDefeat msgbox Route120_Text_RileyPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Leonel:: @ 81F596A +Route120_EventScript_Leonel:: trainerbattle_single TRAINER_LEONEL, Route120_Text_LeonelIntro, Route120_Text_LeonelDefeat msgbox Route120_Text_LeonelPostBattle, MSGBOX_AUTOCLOSE end -Route120_EventScript_Callie:: @ 81F5981 +Route120_EventScript_Callie:: trainerbattle_single TRAINER_CALLIE, Route120_Text_CallieIntro, Route120_Text_CallieDefeat msgbox Route120_Text_CalliePostBattle, MSGBOX_AUTOCLOSE end -Route120_Text_StevenGreeting: @ 81F5998 +Route120_Text_StevenGreeting: .string "STEVEN: Hm? {PLAYER}{KUN}, hi.\n" .string "It's been a while.\p" .string "There's something here that you can't\n" @@ -400,25 +400,25 @@ Route120_Text_StevenGreeting: @ 81F5998 .string "{PLAYER}{KUN}, are your POKéMON ready for\n" .string "battle?$" -Route120_Text_StevenIllWaitHere: @ 81F5AAC +Route120_Text_StevenIllWaitHere: .string "STEVEN: No?\p" .string "I'll wait here, so you can get ready.$" -Route120_Text_StevenReadyForBattle: @ 81F5ADE +Route120_Text_StevenReadyForBattle: .string "STEVEN: {PLAYER}{KUN}, are your POKéMON\n" .string "ready for battle?$" -Route120_Text_StevenShowMeYourPower: @ 81F5B0F +Route120_Text_StevenShowMeYourPower: .string "STEVEN: {PLAYER}{KUN}, show me your true\n" .string "power as a TRAINER!$" -Route120_Text_StevenUsedDevonScope: @ 81F5B43 +Route120_Text_StevenUsedDevonScope: .string "STEVEN used the DEVON SCOPE.\p" .string "An invisible POKéMON became completely\n" .string "visible!\p" .string "The startled POKéMON attacked!$" -Route120_Text_StevenGiveDevonScope: @ 81F5BAF +Route120_Text_StevenGiveDevonScope: .string "STEVEN: I see…\n" .string "Your battle style is intriguing.\p" .string "Your POKéMON have obviously grown\n" @@ -428,30 +428,30 @@ Route120_Text_StevenGiveDevonScope: @ 81F5BAF .string "Who knows, there may be other\n" .string "concealed POKéMON.$" -Route120_Text_StevenGoodbye: @ 81F5C7B +Route120_Text_StevenGoodbye: .string "STEVEN: {PLAYER}{KUN}.\p" .string "I enjoy seeing POKéMON and TRAINERS\n" .string "who strive together.\p" .string "I think you're doing great.\p" .string "Well, let's meet again somewhere.$" -Kecleon_Text_SomethingUnseeable: @ 81F5D00 +Kecleon_Text_SomethingUnseeable: .string "Something unseeable is in the way.$" -Kecleon_Text_WantToUseDevonScope: @ 81F5D23 +Kecleon_Text_WantToUseDevonScope: .string "Something unseeable is in the way.\p" .string "Want to use the DEVON SCOPE?$" -Kecleon_Text_UseDevonScopeMonAttacked: @ 81F5D63 +Kecleon_Text_UseDevonScopeMonAttacked: .string "{PLAYER} used the DEVON SCOPE.\p" .string "An invisible POKéMON became completely\n" .string "visible!\p" .string "The startled POKéMON attacked!$" -Route120_Text_RouteSignFortree: @ 81F5DCB +Route120_Text_RouteSignFortree: .string "ROUTE 120\n" .string "{LEFT_ARROW} FORTREE CITY$" -Route120_Text_RouteSign121: @ 81F5DE4 +Route120_Text_RouteSign121: .string "{RIGHT_ARROW} ROUTE 121\n" .string "{LEFT_ARROW} ROUTE 120$" diff --git a/data/maps/Route121/scripts.inc b/data/maps/Route121/scripts.inc index 6dc93cf6b732..3bd0a42ee148 100644 --- a/data/maps/Route121/scripts.inc +++ b/data/maps/Route121/scripts.inc @@ -2,22 +2,22 @@ .set LOCALID_GRUNT_2, 13 .set LOCALID_GRUNT_3, 14 -Route121_MapScripts:: @ 81F5DFC +Route121_MapScripts:: .byte 0 -Route121_EventScript_Woman:: @ 81F5DFD +Route121_EventScript_Woman:: msgbox Route121_Text_AheadLoomsMtPyre, MSGBOX_NPC end -Route121_EventScript_MtPyrePierSign:: @ 81F5E06 +Route121_EventScript_MtPyrePierSign:: msgbox Route121_Text_MtPyrePierSign, MSGBOX_SIGN end -Route121_EventScript_SafariZoneSign:: @ 81F5E0F +Route121_EventScript_SafariZoneSign:: msgbox Route121_Text_SafariZoneSign, MSGBOX_SIGN end -Route121_EventScript_AquaGruntsMoveOut:: @ 81F5E18 +Route121_EventScript_AquaGruntsMoveOut:: lockall playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceRight @@ -36,7 +36,7 @@ Route121_EventScript_AquaGruntsMoveOut:: @ 81F5E18 releaseall end -Route121_Movement_Grunt1Exit: @ 81F5E59 +Route121_Movement_Grunt1Exit: walk_down walk_down walk_down @@ -47,7 +47,7 @@ Route121_Movement_Grunt1Exit: @ 81F5E59 walk_down step_end -Route121_Movement_Grunt2Exit: @ 81F5E62 +Route121_Movement_Grunt2Exit: walk_down walk_down walk_down @@ -58,7 +58,7 @@ Route121_Movement_Grunt2Exit: @ 81F5E62 walk_down step_end -Route121_Movement_Grunt3Exit: @ 81F5E6B +Route121_Movement_Grunt3Exit: walk_down walk_down walk_down @@ -69,12 +69,12 @@ Route121_Movement_Grunt3Exit: @ 81F5E6B walk_down step_end -Route121_EventScript_Vanessa:: @ 81F5E74 +Route121_EventScript_Vanessa:: trainerbattle_single TRAINER_VANESSA, Route121_Text_VanessaIntro, Route121_Text_VanessaDefeat msgbox Route121_Text_VanessaPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Walter:: @ 81F5E8B +Route121_EventScript_Walter:: trainerbattle_single TRAINER_WALTER_1, Route121_Text_WalterIntro, Route121_Text_WalterDefeat, Route121_EventScript_RegisterWalter specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -83,7 +83,7 @@ Route121_EventScript_Walter:: @ 81F5E8B release end -Route121_EventScript_RegisterWalter:: @ 81F5EB7 +Route121_EventScript_RegisterWalter:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route121_Text_WalterRegister, MSGBOX_DEFAULT @@ -91,27 +91,27 @@ Route121_EventScript_RegisterWalter:: @ 81F5EB7 release end -Route121_EventScript_RematchWalter:: @ 81F5ED6 +Route121_EventScript_RematchWalter:: trainerbattle_rematch TRAINER_WALTER_1, Route121_Text_WalterRematchIntro, Route121_Text_WalterRematchDefeat msgbox Route121_Text_WalterPostRematch, MSGBOX_AUTOCLOSE end -Route121_EventScript_Tammy:: @ 81F5EED +Route121_EventScript_Tammy:: trainerbattle_single TRAINER_TAMMY, Route121_Text_TammyIntro, Route121_Text_TammyDefeat msgbox Route121_Text_TammyPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Kate:: @ 81F5F04 +Route121_EventScript_Kate:: trainerbattle_double TRAINER_KATE_AND_JOY, Route121_Text_KateIntro, Route121_Text_KateDefeat, Route121_Text_KateNotEnoughMons msgbox Route121_Text_KatePostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Joy:: @ 81F5F1F +Route121_EventScript_Joy:: trainerbattle_double TRAINER_KATE_AND_JOY, Route121_Text_JoyIntro, Route121_Text_JoyDefeat, Route121_Text_JoyNotEnoughMons msgbox Route121_Text_JoyPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Jessica:: @ 81F5F3A +Route121_EventScript_Jessica:: trainerbattle_single TRAINER_JESSICA_1, Route121_Text_JessicaIntro, Route121_Text_JessicaDefeat, Route121_EventScript_RegisterJessica specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -120,7 +120,7 @@ Route121_EventScript_Jessica:: @ 81F5F3A release end -Route121_EventScript_RegisterJessica:: @ 81F5F66 +Route121_EventScript_RegisterJessica:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route121_Text_JessicaRegister, MSGBOX_DEFAULT @@ -128,32 +128,32 @@ Route121_EventScript_RegisterJessica:: @ 81F5F66 release end -Route121_EventScript_RematchJessica:: @ 81F5F85 +Route121_EventScript_RematchJessica:: trainerbattle_rematch TRAINER_JESSICA_1, Route121_Text_JessicaRematchIntro, Route121_Text_JessicaRematchDefeat msgbox Route121_Text_JessicaPostRematch, MSGBOX_AUTOCLOSE end -Route121_EventScript_Cale:: @ 81F5F9C +Route121_EventScript_Cale:: trainerbattle_single TRAINER_CALE, Route121_Text_CaleIntro, Route121_Text_CaleDefeat msgbox Route121_Text_CalePostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Myles:: @ 81F5FB3 +Route121_EventScript_Myles:: trainerbattle_single TRAINER_MYLES, Route121_Text_MylesIntro, Route121_Text_MylesDefeat msgbox Route121_Text_MylesPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Pat:: @ 81F5FCA +Route121_EventScript_Pat:: trainerbattle_single TRAINER_PAT, Route121_Text_PatIntro, Route121_Text_PatDefeat msgbox Route121_Text_PatPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Marcel:: @ 81F5FE1 +Route121_EventScript_Marcel:: trainerbattle_single TRAINER_MARCEL, Route121_Text_MarcelIntro, Route121_Text_MarcelDefeat msgbox Route121_Text_MarcelPostBattle, MSGBOX_AUTOCLOSE end -Route121_EventScript_Cristin:: @ 81F5FF8 +Route121_EventScript_Cristin:: trainerbattle_single TRAINER_CRISTIN_1, Route121_Text_CristinIntro, Route121_Text_CristinDefeat, Route121_EventScript_RegisterCristin specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -162,7 +162,7 @@ Route121_EventScript_Cristin:: @ 81F5FF8 release end -Route121_EventScript_RegisterCristin:: @ 81F6024 +Route121_EventScript_RegisterCristin:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route121_Text_CristinRegister, MSGBOX_DEFAULT @@ -170,26 +170,26 @@ Route121_EventScript_RegisterCristin:: @ 81F6024 release end -Route121_EventScript_RematchCristin:: @ 81F6043 +Route121_EventScript_RematchCristin:: trainerbattle_rematch TRAINER_CRISTIN_1, Route121_Text_CristinRematchIntro, Route121_Text_CristinRematchDefeat msgbox Route121_Text_CristinPostRematch, MSGBOX_AUTOCLOSE end -Route121_Text_OkayMoveOutToMtPyre: @ 81F605A +Route121_Text_OkayMoveOutToMtPyre: .string "Okay!\n" .string "We're to move out to MT. PYRE!$" -Route121_Text_AheadLoomsMtPyre: @ 81F607F +Route121_Text_AheadLoomsMtPyre: .string "Ahead looms MT. PYRE…\p" .string "It is a natural monument to the spirits \n" .string "of departed POKéMON…$" -Route121_Text_MtPyrePierSign: @ 81F60D3 +Route121_Text_MtPyrePierSign: .string "MT. PYRE PIER\p" .string "…The sign is old and worn out.\n" .string "The words are barely legible…$" -Route121_Text_SafariZoneSign: @ 81F611E +Route121_Text_SafariZoneSign: .string "“Filled with rare POKéMON!”\n" .string "SAFARI ZONE$" diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc index a87a374d2aee..6945f69dcb7a 100644 --- a/data/maps/Route121_SafariZoneEntrance/scripts.inc +++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc @@ -1,12 +1,12 @@ -Route121_SafariZoneEntrance_MapScripts:: @ 822BBBB +Route121_SafariZoneEntrance_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, Route121_SafariZoneEntrance_OnFrame .byte 0 -Route121_SafariZoneEntrance_OnFrame: @ 822BBC1 +Route121_SafariZoneEntrance_OnFrame: map_script_2 VAR_SAFARI_ZONE_STATE, 1, Route121_SafariZoneEntrance_EventScript_ExitSafariZone .2byte 0 -Route121_SafariZoneEntrance_EventScript_ExitSafariZone:: @ 822BBCB +Route121_SafariZoneEntrance_EventScript_ExitSafariZone:: lockall applymovement OBJ_EVENT_ID_PLAYER, Route121_SafariZoneEntrance_Movement_ExitSafariZone waitmovement 0 @@ -14,7 +14,7 @@ Route121_SafariZoneEntrance_EventScript_ExitSafariZone:: @ 822BBCB releaseall end -Route121_SafariZoneEntrance_Movement_ExitSafariZone: @ 822BBDD +Route121_SafariZoneEntrance_Movement_ExitSafariZone: walk_up walk_right walk_right @@ -25,11 +25,11 @@ Route121_SafariZoneEntrance_Movement_ExitSafariZone: @ 822BBDD walk_right step_end -Route121_SafariZoneEntrance_EventScript_WelcomeAttendant:: @ 822BBE6 +Route121_SafariZoneEntrance_EventScript_WelcomeAttendant:: msgbox Route121_SafariZoneEntrance_Text_WelcomeToSafariZone, MSGBOX_NPC end -Route121_SafariZoneEntrance_EventScript_InfoAttendant:: @ 822BBEF +Route121_SafariZoneEntrance_EventScript_InfoAttendant:: lock faceplayer msgbox Route121_SafariZoneEntrance_Text_WelcomeFirstTime, MSGBOX_YESNO @@ -39,12 +39,12 @@ Route121_SafariZoneEntrance_EventScript_InfoAttendant:: @ 822BBEF release end -Route121_SafariZoneEntrance_EventScript_FirstTimeInfo:: @ 822BC0E +Route121_SafariZoneEntrance_EventScript_FirstTimeInfo:: msgbox Route121_SafariZoneEntrance_Text_FirstTimeInfo, MSGBOX_DEFAULT release end -Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: @ 822BC18 +Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 @@ -56,7 +56,7 @@ Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: @ 822BC18 goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end -Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: @ 822BC48 +Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: checkitem ITEM_POKEBLOCK_CASE, 1 compare VAR_RESULT, 0 goto_if_eq Route121_SafariZoneEntrance_EventScript_NoPokeblockCase @@ -84,7 +84,7 @@ Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: @ 822BC48 waitstate end -Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon:: @ 822BCBF +Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon:: getpartysize compare VAR_RESULT, PARTY_SIZE goto_if_ne Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon @@ -95,20 +95,20 @@ Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon:: @ 822BCBF goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end -Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon:: @ 822BCE9 +Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon:: return -Route121_SafariZoneEntrance_EventScript_NoPokeblockCase:: @ 822BCEA +Route121_SafariZoneEntrance_EventScript_NoPokeblockCase:: msgbox Route121_SafariZoneEntrance_Text_YouNeedPokeblockCase, MSGBOX_DEFAULT goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end -Route121_SafariZoneEntrance_EventScript_NotEnoughMoney:: @ 822BCF8 +Route121_SafariZoneEntrance_EventScript_NotEnoughMoney:: msgbox Route121_SafariZoneEntrance_Text_NotEnoughMoney, MSGBOX_DEFAULT goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end -Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter:: @ 822BD06 +Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter:: closemessage hidemoneybox applymovement OBJ_EVENT_ID_PLAYER, Route121_SafariZoneEntrance_Movement_BackAwayFromCounter @@ -116,11 +116,11 @@ Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter:: @ 822BD06 releaseall end -Route121_SafariZoneEntrance_Movement_BackAwayFromCounter: @ 822BD16 +Route121_SafariZoneEntrance_Movement_BackAwayFromCounter: walk_right step_end -Route121_SafariZoneEntrance_Movement_EnterSafariZone: @ 822BD18 +Route121_SafariZoneEntrance_Movement_EnterSafariZone: walk_left walk_left walk_left @@ -131,7 +131,7 @@ Route121_SafariZoneEntrance_Movement_EnterSafariZone: @ 822BD18 delay_16 step_end -Route121_SafariZoneEntrance_EventScript_TrainerTipSign:: @ 822BD21 +Route121_SafariZoneEntrance_EventScript_TrainerTipSign:: msgbox Route121_SafariZoneEntrance_Text_TrainerTip, MSGBOX_SIGN end diff --git a/data/maps/Route122/scripts.inc b/data/maps/Route122/scripts.inc index 8fcfb4c09d41..3c23a3982e07 100644 --- a/data/maps/Route122/scripts.inc +++ b/data/maps/Route122/scripts.inc @@ -1,3 +1,3 @@ -Route122_MapScripts:: @ 81F6146 +Route122_MapScripts:: .byte 0 diff --git a/data/maps/Route123/scripts.inc b/data/maps/Route123/scripts.inc index 0c57d209cb3e..6ce0de6544a9 100644 --- a/data/maps/Route123/scripts.inc +++ b/data/maps/Route123/scripts.inc @@ -1,12 +1,12 @@ -Route123_MapScripts:: @ 81F6147 +Route123_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route123_OnTransition .byte 0 -Route123_OnTransition: @ 81F614D +Route123_OnTransition: special SetRoute123Weather end -Route123_EventScript_GigaDrainGirl:: @ 81F6151 +Route123_EventScript_GigaDrainGirl:: lock faceplayer goto_if_set FLAG_RECEIVED_TM19, Route123_EventScript_ReceivedGigaDrain @@ -23,43 +23,43 @@ Route123_EventScript_GigaDrainGirl:: @ 81F6151 release end -Route123_EventScript_NoGrassMons:: @ 81F619E +Route123_EventScript_NoGrassMons:: release end -Route123_EventScript_ReceivedGigaDrain:: @ 81F61A0 +Route123_EventScript_ReceivedGigaDrain:: msgbox Route123_Text_CheckTreesWithMyGrassMon, MSGBOX_DEFAULT release end -Route123_EventScript_RouteSign:: @ 81F61AA +Route123_EventScript_RouteSign:: msgbox Route123_Text_RouteSign, MSGBOX_SIGN end -Route123_EventScript_RouteSignMtPyre:: @ 81F61B3 +Route123_EventScript_RouteSignMtPyre:: msgbox Route123_Text_RouteSignMtPyre, MSGBOX_SIGN end -Route123_EventScript_BerryMastersHouseSign:: @ 81F61BC +Route123_EventScript_BerryMastersHouseSign:: msgbox Route123_Text_BerryMastersHouse, MSGBOX_SIGN end -Route123_EventScript_Wendy:: @ 81F61C5 +Route123_EventScript_Wendy:: trainerbattle_single TRAINER_WENDY, Route123_Text_WendyIntro, Route123_Text_WendyDefeat msgbox Route123_Text_WendyPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Braxton:: @ 81F61DC +Route123_EventScript_Braxton:: trainerbattle_single TRAINER_BRAXTON, Route123_Text_BraxtonIntro, Route123_Text_BraxtonDefeat msgbox Route123_Text_BraxtonPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Violet:: @ 81F61F3 +Route123_EventScript_Violet:: trainerbattle_single TRAINER_VIOLET, Route123_Text_VioletIntro, Route123_Text_VioletDefeat msgbox Route123_Text_VioletPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Cameron:: @ 81F620A +Route123_EventScript_Cameron:: trainerbattle_single TRAINER_CAMERON_1, Route123_Text_CameronIntro, Route123_Text_CameronDefeat, Route123_EventScript_RegisterCameron specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -68,7 +68,7 @@ Route123_EventScript_Cameron:: @ 81F620A release end -Route123_EventScript_RegisterCameron:: @ 81F6236 +Route123_EventScript_RegisterCameron:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route123_Text_CameronRegister, MSGBOX_DEFAULT @@ -76,12 +76,12 @@ Route123_EventScript_RegisterCameron:: @ 81F6236 release end -Route123_EventScript_RematchCameron:: @ 81F6255 +Route123_EventScript_RematchCameron:: trainerbattle_rematch TRAINER_CAMERON_1, Route123_Text_CameronRematchIntro, Route123_Text_CameronRematchDefeat msgbox Route123_Text_CameronPostRematch, MSGBOX_AUTOCLOSE end -Route123_EventScript_Jacki:: @ 81F626C +Route123_EventScript_Jacki:: trainerbattle_single TRAINER_JACKI_1, Route123_Text_JackiIntro, Route123_Text_JackiDefeat, Route123_EventScript_RegisterJacki specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -90,7 +90,7 @@ Route123_EventScript_Jacki:: @ 81F626C release end -Route123_EventScript_RegisterJacki:: @ 81F6298 +Route123_EventScript_RegisterJacki:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route123_Text_JackiRegister, MSGBOX_DEFAULT @@ -98,62 +98,62 @@ Route123_EventScript_RegisterJacki:: @ 81F6298 release end -Route123_EventScript_RematchJacki:: @ 81F62B7 +Route123_EventScript_RematchJacki:: trainerbattle_rematch TRAINER_JACKI_1, Route123_Text_JackiRematchIntro, Route123_Text_JackiRematchDefeat msgbox Route123_Text_JackiPostRematch, MSGBOX_AUTOCLOSE end -Route123_EventScript_Miu:: @ 81F62CE +Route123_EventScript_Miu:: trainerbattle_double TRAINER_MIU_AND_YUKI, Route123_Text_MiuIntro, Route123_Text_MiuDefeat, Route123_Text_MiuNotEnoughMons msgbox Route123_Text_MiuPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Yuki:: @ 81F62E9 +Route123_EventScript_Yuki:: trainerbattle_double TRAINER_MIU_AND_YUKI, Route123_Text_YukiIntro, Route123_Text_YukiDefeat, Route123_Text_YukiNotEnoughMons msgbox Route123_Text_YukiPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Kindra:: @ 81F6304 +Route123_EventScript_Kindra:: trainerbattle_single TRAINER_KINDRA, Route123_Text_KindraIntro, Route123_Text_KindraDefeat msgbox Route123_Text_KindraPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Frederick:: @ 81F631B +Route123_EventScript_Frederick:: trainerbattle_single TRAINER_FREDRICK, Route123_Text_FrederickIntro, Route123_Text_FrederickDefeat msgbox Route123_Text_FrederickPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Alberto:: @ 81F6332 +Route123_EventScript_Alberto:: trainerbattle_single TRAINER_ALBERTO, Route123_Text_AlbertoIntro, Route123_Text_AlbertoDefeat msgbox Route123_Text_AlbertoPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Ed:: @ 81F6349 +Route123_EventScript_Ed:: trainerbattle_single TRAINER_ED, Route123_Text_EdIntro, Route123_Text_EdDefeat msgbox Route123_Text_EdPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Kayley:: @ 81F6360 +Route123_EventScript_Kayley:: trainerbattle_single TRAINER_KAYLEY, Route123_Text_KayleyIntro, Route123_Text_KayleyDefeat msgbox Route123_Text_KayleyPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Jonas:: @ 81F6377 +Route123_EventScript_Jonas:: trainerbattle_single TRAINER_JONAS, Route123_Text_JonasIntro, Route123_Text_JonasDefeat msgbox Route123_Text_JonasPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Jazmyn:: @ 81F638E +Route123_EventScript_Jazmyn:: trainerbattle_single TRAINER_JAZMYN, Route123_Text_JazmynIntro, Route123_Text_JazmynDefeat msgbox Route123_Text_JazmynPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Davis:: @ 81F63A5 +Route123_EventScript_Davis:: trainerbattle_single TRAINER_DAVIS, Route123_Text_DavisIntro, Route123_Text_DavisDefeat msgbox Route123_Text_DavisPostBattle, MSGBOX_AUTOCLOSE end -Route123_EventScript_Fernando:: @ 81F63BC +Route123_EventScript_Fernando:: trainerbattle_single TRAINER_FERNANDO_1, Route123_Text_FernandoIntro, Route123_Text_FernandoDefeat, Route123_EventScript_RegisterFernando specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -162,7 +162,7 @@ Route123_EventScript_Fernando:: @ 81F63BC release end -Route123_EventScript_RegisterFernando:: @ 81F63E8 +Route123_EventScript_RegisterFernando:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route123_Text_FernandoRegister, MSGBOX_DEFAULT @@ -170,34 +170,34 @@ Route123_EventScript_RegisterFernando:: @ 81F63E8 release end -Route123_EventScript_RematchFernando:: @ 81F6407 +Route123_EventScript_RematchFernando:: trainerbattle_rematch TRAINER_FERNANDO_1, Route123_Text_FernandoRematchIntro, Route123_Text_FernandoRematchDefeat msgbox Route123_Text_FernandoPostRematch, MSGBOX_AUTOCLOSE end -Route123_Text_LoveGrassMonsHaveAny: @ 81F641E +Route123_Text_LoveGrassMonsHaveAny: .string "I love GRASS-type POKéMON!\p" .string "Do you have any GRASS-type POKéMON?$" -Route123_Text_YouLikeGrassMonsTooHaveThis: @ 81F645D +Route123_Text_YouLikeGrassMonsTooHaveThis: .string "Oh?\p" .string "You like GRASS-type POKéMON, too,\n" .string "don't you?\p" .string "I'm so happy, you can have this!\n" .string "It's a token of our friendship.$" -Route123_Text_CheckTreesWithMyGrassMon: @ 81F64CF +Route123_Text_CheckTreesWithMyGrassMon: .string "I check trees with my GRASS-type\n" .string "POKéMON. I'm like a tree doctor.$" -Route123_Text_RouteSign: @ 81F6511 +Route123_Text_RouteSign: .string "{RIGHT_ARROW} ROUTE 123\n" .string "{LEFT_ARROW} ROUTE 118$" -Route123_Text_RouteSignMtPyre: @ 81F6529 +Route123_Text_RouteSignMtPyre: .string "{UP_ARROW} MT. PYRE\n" .string "“Forbidden to the faint of heart.”$" -Route123_Text_BerryMastersHouse: @ 81F6557 +Route123_Text_BerryMastersHouse: .string "BERRY MASTER'S HOUSE$" diff --git a/data/maps/Route123_BerryMastersHouse/scripts.inc b/data/maps/Route123_BerryMastersHouse/scripts.inc index 8b2cc5919136..a9fbfd9d0a27 100644 --- a/data/maps/Route123_BerryMastersHouse/scripts.inc +++ b/data/maps/Route123_BerryMastersHouse/scripts.inc @@ -1,12 +1,12 @@ -Route123_BerryMastersHouse_MapScripts:: @ 826F83B +Route123_BerryMastersHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route123_BerryMastersHouse_OnTransition .byte 0 -Route123_BerryMastersHouse_OnTransition: @ 826F841 +Route123_BerryMastersHouse_OnTransition: setflag FLAG_LANDMARK_BERRY_MASTERS_HOUSE end -Route123_BerryMastersHouse_EventScript_BerryMaster:: @ 826F845 +Route123_BerryMastersHouse_EventScript_BerryMaster:: lock faceplayer dotimebasedevents @@ -30,12 +30,12 @@ Route123_BerryMastersHouse_EventScript_BerryMaster:: @ 826F845 release end -Route123_BerryMastersHouse_EventScript_ReceivedBerryToday:: @ 826F8B6 +Route123_BerryMastersHouse_EventScript_ReceivedBerryToday:: msgbox Route123_BerryMastersHouse_Text_DoneForToday, MSGBOX_DEFAULT release end -Route123_BerryMastersHouse_EventScript_BerryMastersWife:: @ 826F8C0 +Route123_BerryMastersHouse_EventScript_BerryMastersWife:: lock faceplayer dotimebasedevents @@ -51,13 +51,13 @@ Route123_BerryMastersHouse_EventScript_BerryMastersWife:: @ 826F8C0 goto_if_eq Route123_BerryMastersHouse_EventScript_CancelPhrase end -Route123_BerryMastersHouse_EventScript_CancelPhrase:: @ 826F8F7 +Route123_BerryMastersHouse_EventScript_CancelPhrase:: msgbox Route123_BerryMastersHouse_Text_Ah, MSGBOX_DEFAULT msgbox Route123_BerryMastersHouse_Text_JoyNeverGoesOutOfMyLife, MSGBOX_DEFAULT release end -Route123_BerryMastersHouse_EventScript_GavePhrase:: @ 826F909 +Route123_BerryMastersHouse_EventScript_GavePhrase:: compare VAR_0x8004, NOT_SPECIAL_PHRASE goto_if_eq Route123_BerryMastersHouse_EventScript_GiveNormalBerry compare VAR_0x8004, PHRASE_GREAT_BATTLE @@ -72,7 +72,7 @@ Route123_BerryMastersHouse_EventScript_GavePhrase:: @ 826F909 goto_if_eq Route123_BerryMastersHouse_EventScript_GiveBelueBerry end -Route123_BerryMastersHouse_EventScript_GiveNormalBerry:: @ 826F94C +Route123_BerryMastersHouse_EventScript_GiveNormalBerry:: msgbox Route123_BerryMastersHouse_Text_GoodSayingTakeThis, MSGBOX_DEFAULT random NUM_BERRY_MASTER_WIFE_BERRIES addvar VAR_RESULT, FIRST_BERRY_INDEX @@ -83,7 +83,7 @@ Route123_BerryMastersHouse_EventScript_GiveNormalBerry:: @ 826F94C release end -Route123_BerryMastersHouse_EventScript_GiveSpelonBerry:: @ 826F97A +Route123_BerryMastersHouse_EventScript_GiveSpelonBerry:: goto_if_set FLAG_RECEIVED_SPELON_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_SPELON_BERRY @@ -93,7 +93,7 @@ Route123_BerryMastersHouse_EventScript_GiveSpelonBerry:: @ 826F97A goto Route123_BerryMastersHouse_EventScript_GaveBerry end -Route123_BerryMastersHouse_EventScript_GivePamtreBerry:: @ 826F9AB +Route123_BerryMastersHouse_EventScript_GivePamtreBerry:: goto_if_set FLAG_RECEIVED_PAMTRE_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_PAMTRE_BERRY @@ -103,7 +103,7 @@ Route123_BerryMastersHouse_EventScript_GivePamtreBerry:: @ 826F9AB goto Route123_BerryMastersHouse_EventScript_GaveBerry end -Route123_BerryMastersHouse_EventScript_GiveWatmelBerry:: @ 826F9DC +Route123_BerryMastersHouse_EventScript_GiveWatmelBerry:: goto_if_set FLAG_RECEIVED_WATMEL_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_WATMEL_BERRY @@ -113,7 +113,7 @@ Route123_BerryMastersHouse_EventScript_GiveWatmelBerry:: @ 826F9DC goto Route123_BerryMastersHouse_EventScript_GaveBerry end -Route123_BerryMastersHouse_EventScript_GiveDurinBerry:: @ 826FA0D +Route123_BerryMastersHouse_EventScript_GiveDurinBerry:: goto_if_set FLAG_RECEIVED_DURIN_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_DURIN_BERRY @@ -123,7 +123,7 @@ Route123_BerryMastersHouse_EventScript_GiveDurinBerry:: @ 826FA0D goto Route123_BerryMastersHouse_EventScript_GaveBerry end -Route123_BerryMastersHouse_EventScript_GiveBelueBerry:: @ 826FA3E +Route123_BerryMastersHouse_EventScript_GiveBelueBerry:: goto_if_set FLAG_RECEIVED_BELUE_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_BELUE_BERRY @@ -133,12 +133,12 @@ Route123_BerryMastersHouse_EventScript_GiveBelueBerry:: @ 826FA3E goto Route123_BerryMastersHouse_EventScript_GaveBerry end -Route123_BerryMastersHouse_EventScript_ReceivedWifeBerryToday:: @ 826FA6F +Route123_BerryMastersHouse_EventScript_ReceivedWifeBerryToday:: msgbox Route123_BerryMastersHouse_Text_JoyNeverGoesOutOfMyLife, MSGBOX_DEFAULT release end -Route123_BerryMastersHouse_EventScript_GaveBerry:: @ 826FA79 +Route123_BerryMastersHouse_EventScript_GaveBerry:: setflag FLAG_DAILY_BERRY_MASTERS_WIFE msgbox Route123_BerryMastersHouse_Text_JoyNeverGoesOutOfMyLife, MSGBOX_DEFAULT release diff --git a/data/maps/Route124/scripts.inc b/data/maps/Route124/scripts.inc index 92d43e6adcd7..d1cd8ef8c269 100644 --- a/data/maps/Route124/scripts.inc +++ b/data/maps/Route124/scripts.inc @@ -1,26 +1,26 @@ -Route124_MapScripts:: @ 81F656C +Route124_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route124_OnTransition .byte 0 -Route124_OnTransition: @ 81F6572 +Route124_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather end -Route124_EventScript_HuntersHouseSign:: @ 81F657C +Route124_EventScript_HuntersHouseSign:: msgbox Route124_Text_HuntersHouse, MSGBOX_SIGN end -Route124_EventScript_Spencer:: @ 81F6585 +Route124_EventScript_Spencer:: trainerbattle_single TRAINER_SPENCER, Route124_Text_SpencerIntro, Route124_Text_SpencerDefeat msgbox Route124_Text_SpencerPostBattle, MSGBOX_AUTOCLOSE end -Route124_EventScript_Roland:: @ 81F659C +Route124_EventScript_Roland:: trainerbattle_single TRAINER_ROLAND, Route124_Text_RolandIntro, Route124_Text_RolandDefeat msgbox Route124_Text_RolandPostBattle, MSGBOX_AUTOCLOSE end -Route124_EventScript_Jenny:: @ 81F65B3 +Route124_EventScript_Jenny:: trainerbattle_single TRAINER_JENNY_1, Route124_Text_JennyIntro, Route124_Text_JennyDefeat, Route124_EventScript_RegisterJenny specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -29,7 +29,7 @@ Route124_EventScript_Jenny:: @ 81F65B3 release end -Route124_EventScript_RegisterJenny:: @ 81F65DF +Route124_EventScript_RegisterJenny:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route124_Text_JennyRegister, MSGBOX_DEFAULT @@ -37,22 +37,22 @@ Route124_EventScript_RegisterJenny:: @ 81F65DF release end -Route124_EventScript_RematchJenny:: @ 81F65FE +Route124_EventScript_RematchJenny:: trainerbattle_rematch TRAINER_JENNY_1, Route124_Text_JennyRematchIntro, Route124_Text_JennyRematchDefeat msgbox Route124_Text_JennyPostRematch, MSGBOX_AUTOCLOSE end -Route124_EventScript_Grace:: @ 81F6615 +Route124_EventScript_Grace:: trainerbattle_single TRAINER_GRACE, Route124_Text_GraceIntro, Route124_Text_GraceDefeat msgbox Route124_Text_GracePostBattle, MSGBOX_AUTOCLOSE end -Route124_EventScript_Chad:: @ 81F662C +Route124_EventScript_Chad:: trainerbattle_single TRAINER_CHAD, Route124_Text_ChadIntro, Route124_Text_ChadDefeat msgbox Route124_Text_ChadPostBattle, MSGBOX_AUTOCLOSE end -Route124_EventScript_Lila:: @ 81F6643 +Route124_EventScript_Lila:: trainerbattle_double TRAINER_LILA_AND_ROY_1, Route124_Text_LilaIntro, Route124_Text_LilaDefeat, Route124_Text_LilaNotEnoughMons, Route124_EventScript_RegisterLila specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -61,18 +61,18 @@ Route124_EventScript_Lila:: @ 81F6643 release end -Route124_EventScript_RegisterLila:: @ 81F6673 +Route124_EventScript_RegisterLila:: msgbox Route124_Text_LilaRoyRegister, MSGBOX_DEFAULT register_matchcall TRAINER_LILA_AND_ROY_1 release end -Route124_EventScript_RematchLila:: @ 81F668C +Route124_EventScript_RematchLila:: trainerbattle_rematch_double TRAINER_LILA_AND_ROY_1, Route124_Text_LilaRematchIntro, Route124_Text_LilaRematchDefeat, Route124_Text_LilaRematchNotEnoughMons msgbox Route124_Text_LilaPostRematch, MSGBOX_AUTOCLOSE end -Route124_EventScript_Roy:: @ 81F66A7 +Route124_EventScript_Roy:: trainerbattle_double TRAINER_LILA_AND_ROY_1, Route124_Text_RoyIntro, Route124_Text_RoyDefeat, Route124_Text_RoyNotEnoughMons, Route124_EventScript_RegisterRoy specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -81,27 +81,27 @@ Route124_EventScript_Roy:: @ 81F66A7 release end -Route124_EventScript_RegisterRoy:: @ 81F66D7 +Route124_EventScript_RegisterRoy:: msgbox Route124_Text_LilaRoyRegister, MSGBOX_DEFAULT register_matchcall TRAINER_LILA_AND_ROY_1 release end -Route124_EventScript_RematchRoy:: @ 81F66F0 +Route124_EventScript_RematchRoy:: trainerbattle_rematch_double TRAINER_LILA_AND_ROY_1, Route124_Text_RoyRematchIntro, Route124_Text_RoyRematchDefeat, Route124_Text_RoyRematchNotEnoughMons msgbox Route124_Text_RoyPostRematch, MSGBOX_AUTOCLOSE end -Route124_EventScript_Declan:: @ 81F670B +Route124_EventScript_Declan:: trainerbattle_single TRAINER_DECLAN, Route124_Text_DeclanIntro, Route124_Text_DeclanDefeat msgbox Route124_Text_DeclanPostBattle, MSGBOX_AUTOCLOSE end -Route124_EventScript_Isabella:: @ 81F6722 +Route124_EventScript_Isabella:: trainerbattle_single TRAINER_ISABELLA, Route124_Text_IsabellaIntro, Route124_Text_IsabellaDefeat msgbox Route124_Text_IsabellaPostBattle, MSGBOX_AUTOCLOSE end -Route124_Text_HuntersHouse: @ 81F6739 +Route124_Text_HuntersHouse: .string "HUNTER'S HOUSE$" diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc index acf53c1edae4..63bee6ed5b21 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc +++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc @@ -1,12 +1,12 @@ -Route124_DivingTreasureHuntersHouse_MapScripts:: @ 8270A28 +Route124_DivingTreasureHuntersHouse_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route124_DivingTreasureHuntersHouse_OnTransition .byte 0 -Route124_DivingTreasureHuntersHouse_OnTransition: @ 8270A2E +Route124_DivingTreasureHuntersHouse_OnTransition: setflag FLAG_LANDMARK_HUNTERS_HOUSE end -Route124_DivingTreasureHuntersHouse_EventScript_TreasureHunter:: @ 8270A32 +Route124_DivingTreasureHuntersHouse_EventScript_TreasureHunter:: lock faceplayer goto_if_set FLAG_MET_DIVING_TREASURE_HUNTER, Route124_DivingTreasureHuntersHouse_EventScript_SkipGreeting @@ -15,19 +15,19 @@ Route124_DivingTreasureHuntersHouse_EventScript_TreasureHunter:: @ 8270A32 goto Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard end -Route124_DivingTreasureHuntersHouse_EventScript_SkipGreeting:: @ 8270A4E +Route124_DivingTreasureHuntersHouse_EventScript_SkipGreeting:: msgbox Route124_DivingTreasureHuntersHouse_Text_HaveYouSeenAnyShards, MSGBOX_DEFAULT goto Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard end -Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard:: @ 8270A5C +Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard:: call Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards compare VAR_TEMP_1, 0 goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_NoShards goto Route124_DivingTreasureHuntersHouse_EventScript_HasShard end -Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards:: @ 8270A72 +Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards:: setvar VAR_TEMP_1, 0 checkitem ITEM_RED_SHARD, 1 compare VAR_RESULT, TRUE @@ -43,28 +43,28 @@ Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards:: @ 8270A72 call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard return -Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard:: @ 8270AB8 +Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard:: addvar VAR_TEMP_1, 1 return -Route124_DivingTreasureHuntersHouse_EventScript_HasYellowShard:: @ 8270ABE +Route124_DivingTreasureHuntersHouse_EventScript_HasYellowShard:: addvar VAR_TEMP_1, 2 return -Route124_DivingTreasureHuntersHouse_EventScript_HasBlueShard:: @ 8270AC4 +Route124_DivingTreasureHuntersHouse_EventScript_HasBlueShard:: addvar VAR_TEMP_1, 4 return -Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard:: @ 8270ACA +Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard:: addvar VAR_TEMP_1, 8 return -Route124_DivingTreasureHuntersHouse_EventScript_HasShard:: @ 8270AD0 +Route124_DivingTreasureHuntersHouse_EventScript_HasShard:: msgbox Route124_DivingTreasureHuntersHouse_Text_ThatsAShardIllTradeYou, MSGBOX_DEFAULT goto Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions end -Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions:: @ 8270ADE +Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions:: message Route124_DivingTreasureHuntersHouse_Text_WhatDoYouWantToTrade waitmessage switch VAR_TEMP_1 @@ -85,7 +85,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions:: @ 8270ADE case 15, Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYBG end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsR:: @ 8270B8F +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsR:: multichoice 0, 0, MULTI_SHARDS_R, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -93,7 +93,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsR:: @ 8270B8F goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsY:: @ 8270BB5 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsY:: multichoice 0, 0, MULTI_SHARDS_Y, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -101,7 +101,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsY:: @ 8270BB5 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRY:: @ 8270BDB +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRY:: multichoice 0, 0, MULTI_SHARDS_RY, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -110,7 +110,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRY:: @ 8270BDB goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsB:: @ 8270C0C +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsB:: multichoice 0, 0, MULTI_SHARDS_B, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -118,7 +118,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsB:: @ 8270C0C goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRB:: @ 8270C32 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRB:: multichoice 0, 0, MULTI_SHARDS_RB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -127,7 +127,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRB:: @ 8270C32 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYB:: @ 8270C63 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYB:: multichoice 0, 0, MULTI_SHARDS_YB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -136,7 +136,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYB:: @ 8270C63 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYB:: @ 8270C94 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYB:: multichoice 0, 0, MULTI_SHARDS_RYB, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -146,7 +146,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYB:: @ 8270C94 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsG:: @ 8270CD0 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsG:: multichoice 0, 0, MULTI_SHARDS_G, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard @@ -154,7 +154,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsG:: @ 8270CD0 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRG:: @ 8270CF6 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRG:: multichoice 0, 0, MULTI_SHARDS_RG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -163,7 +163,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRG:: @ 8270CF6 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYG:: @ 8270D27 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYG:: multichoice 0, 0, MULTI_SHARDS_YG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -172,7 +172,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYG:: @ 8270D27 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYG:: @ 8270D58 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYG:: multichoice 0, 0, MULTI_SHARDS_RYG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -182,7 +182,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYG:: @ 8270D58 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsBG:: @ 8270D94 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsBG:: multichoice 0, 0, MULTI_SHARDS_BG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard @@ -191,7 +191,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsBG:: @ 8270D94 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRBG:: @ 8270DC5 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRBG:: multichoice 0, 0, MULTI_SHARDS_RBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -201,7 +201,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRBG:: @ 8270DC5 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYBG:: @ 8270E01 +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYBG:: multichoice 0, 0, MULTI_SHARDS_YBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard @@ -211,7 +211,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsYBG:: @ 8270E01 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYBG:: @ 8270E3D +Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYBG:: multichoice 0, 0, MULTI_SHARDS_RYBG, FALSE switch VAR_RESULT case 0, Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard @@ -222,27 +222,27 @@ Route124_DivingTreasureHuntersHouse_EventScript_ShardOptionsRYBG:: @ 8270E3D goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard:: @ 8270E84 +Route124_DivingTreasureHuntersHouse_EventScript_TradeRedShard:: setvar VAR_0x8008, ITEM_RED_SHARD setvar VAR_0x8009, ITEM_FIRE_STONE goto Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard -Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard:: @ 8270E93 +Route124_DivingTreasureHuntersHouse_EventScript_TradeYellowShard:: setvar VAR_0x8008, ITEM_YELLOW_SHARD setvar VAR_0x8009, ITEM_THUNDER_STONE goto Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard -Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard:: @ 8270EA2 +Route124_DivingTreasureHuntersHouse_EventScript_TradeBlueShard:: setvar VAR_0x8008, ITEM_BLUE_SHARD setvar VAR_0x8009, ITEM_WATER_STONE goto Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard -Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard:: @ 8270EB1 +Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard:: setvar VAR_0x8008, ITEM_GREEN_SHARD setvar VAR_0x8009, ITEM_LEAF_STONE goto Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard -Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: @ 8270EC0 +Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: bufferitemname 0, VAR_0x8008 bufferitemname 1, VAR_0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone, MSGBOX_YESNO @@ -257,7 +257,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: @ 8270EC0 goto Route124_DivingTreasureHuntersHouse_EventScript_BagFull end -Route124_DivingTreasureHuntersHouse_EventScript_TradeShard:: @ 8270F01 +Route124_DivingTreasureHuntersHouse_EventScript_TradeShard:: removeitem VAR_0x8008 giveitem VAR_0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_ItsADeal, MSGBOX_DEFAULT @@ -270,74 +270,74 @@ Route124_DivingTreasureHuntersHouse_EventScript_TradeShard:: @ 8270F01 goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end -Route124_DivingTreasureHuntersHouse_EventScript_BagFull:: @ 8270F43 +Route124_DivingTreasureHuntersHouse_EventScript_BagFull:: msgbox Route124_DivingTreasureHuntersHouse_Text_BagFull, MSGBOX_DEFAULT release end -Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade:: @ 8270F4D +Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade:: msgbox Route124_DivingTreasureHuntersHouse_Text_ComeBackIfYouChangeMind, MSGBOX_DEFAULT release end -Route124_DivingTreasureHuntersHouse_EventScript_NoShards:: @ 8270F57 +Route124_DivingTreasureHuntersHouse_EventScript_NoShards:: msgbox Route124_DivingTreasureHuntersHouse_Text_YouHaventGotAnyShards, MSGBOX_DEFAULT release end -Route124_DivingTreasureHuntersHouse_EventScript_EndTrade:: @ 8270F61 +Route124_DivingTreasureHuntersHouse_EventScript_EndTrade:: release end -Route124_DivingTreasureHuntersHouse_EventScript_ShardTradeBoard:: @ 8270F63 +Route124_DivingTreasureHuntersHouse_EventScript_ShardTradeBoard:: msgbox Route124_DivingTreasureHuntersHouse_Text_ShardTradeBoard, MSGBOX_SIGN end -Route124_DivingTreasureHuntersHouse_Text_Greeting: @ 8270F6C +Route124_DivingTreasureHuntersHouse_Text_Greeting: .string "I'm the DIVING TREASURE HUNTER!\p" .string "I'm the awesome dude who makes\n" .string "deep-sea dives to gather treasures\l" .string "resting at the bottom.$" -Route124_DivingTreasureHuntersHouse_Text_HaveYouSeenAnyShards: @ 8270FE5 +Route124_DivingTreasureHuntersHouse_Text_HaveYouSeenAnyShards: .string "Tell me, have you seen any SHARDS of\n" .string "tools made in ancient times?$" -Route124_DivingTreasureHuntersHouse_Text_YouHaventGotAnyShards: @ 8271027 +Route124_DivingTreasureHuntersHouse_Text_YouHaventGotAnyShards: .string "You haven't got any treasures\n" .string "for me…\p" .string "If you see any SHARDS, like the RED\n" .string "SHARD, you've got to trade it with me!$" -Route124_DivingTreasureHuntersHouse_Text_ThatsAShardIllTradeYou: @ 8271098 +Route124_DivingTreasureHuntersHouse_Text_ThatsAShardIllTradeYou: .string "Oh, hey! That…\n" .string "That's a SHARD! I'm looking for those!\p" .string "Oh, man, you've got to trade that\n" .string "with me! I'll give you something good!$" -Route124_DivingTreasureHuntersHouse_Text_WhatDoYouWantToTrade: @ 8271117 +Route124_DivingTreasureHuntersHouse_Text_WhatDoYouWantToTrade: .string "What do you want to trade?$" -Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone: @ 8271132 +Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone: .string "You'll trade your {STR_VAR_1} for\n" .string "my {STR_VAR_2}, then?$" -Route124_DivingTreasureHuntersHouse_Text_ItsADeal: @ 8271158 +Route124_DivingTreasureHuntersHouse_Text_ItsADeal: .string "It's a done deal!\n" .string "Use that wisely!$" -Route124_DivingTreasureHuntersHouse_Text_TradeSomethingElse: @ 827117B +Route124_DivingTreasureHuntersHouse_Text_TradeSomethingElse: .string "Do you want to trade something else?$" -Route124_DivingTreasureHuntersHouse_Text_BagFull: @ 82711A0 +Route124_DivingTreasureHuntersHouse_Text_BagFull: .string "Whoops, your BAG's full.\n" .string "Get rid of some items, friend!$" -Route124_DivingTreasureHuntersHouse_Text_ComeBackIfYouChangeMind: @ 82711D8 +Route124_DivingTreasureHuntersHouse_Text_ComeBackIfYouChangeMind: .string "No? That's a downer.\n" .string "Well, if you change your mind, come back.$" -Route124_DivingTreasureHuntersHouse_Text_ShardTradeBoard: @ 8271217 +Route124_DivingTreasureHuntersHouse_Text_ShardTradeBoard: .string "{CLEAR_TO 0x0a}Wanted item{CLEAR_TO 0x7c}Trade item\n" .string "{CLEAR_TO 0x0f}RED SHARD{CLEAR_TO 0x59}{LEFT_ARROW}{RIGHT_ARROW}{CLEAR_TO 0x7b}FIRE STONE{CLEAR_TO 0xc8}\p" .string "{CLEAR_TO 0x0a}Wanted item{CLEAR_TO 0x7c}Trade item\n" diff --git a/data/maps/Route125/scripts.inc b/data/maps/Route125/scripts.inc index b771e75f9ab7..7a2d3f15fa93 100644 --- a/data/maps/Route125/scripts.inc +++ b/data/maps/Route125/scripts.inc @@ -1,10 +1,10 @@ -Route125_MapScripts:: @ 81F6748 +Route125_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route125_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route125_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route125_OnFrame .byte 0 -Route125_OnTransition: @ 81F6758 +Route125_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup @@ -14,38 +14,38 @@ Route125_OnTransition: @ 81F6758 call_if_eq AbnormalWeather_StartKyogreWeather end -Route125_OnLoad: @ 81F6783 +Route125_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_WEST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute125West compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_EAST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute125East end -Route125_OnFrame: @ 81F679A +Route125_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route125_EventScript_Nolen:: @ 81F67A4 +Route125_EventScript_Nolen:: trainerbattle_single TRAINER_NOLEN, Route125_Text_NolenIntro, Route125_Text_NolenDefeat msgbox Route125_Text_NolenPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Stan:: @ 81F67BB +Route125_EventScript_Stan:: trainerbattle_single TRAINER_STAN, Route125_Text_StanIntro, Route125_Text_StanDefeat msgbox Route125_Text_StanPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Tanya:: @ 81F67D2 +Route125_EventScript_Tanya:: trainerbattle_single TRAINER_TANYA, Route125_Text_TanyaIntro, Route125_Text_TanyaDefeat msgbox Route125_Text_TanyaPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Sharon:: @ 81F67E9 +Route125_EventScript_Sharon:: trainerbattle_single TRAINER_SHARON, Route125_Text_SharonIntro, Route125_Text_SharonDefeat msgbox Route125_Text_SharonPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Ernest:: @ 81F6800 +Route125_EventScript_Ernest:: trainerbattle_single TRAINER_ERNEST_1, Route125_Text_ErnestIntro, Route125_Text_ErnestDefeat, Route125_EventScript_RegisterErnest specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -54,7 +54,7 @@ Route125_EventScript_Ernest:: @ 81F6800 release end -Route125_EventScript_RegisterErnest:: @ 81F682C +Route125_EventScript_RegisterErnest:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route125_Text_ErnestRegister, MSGBOX_DEFAULT @@ -62,27 +62,27 @@ Route125_EventScript_RegisterErnest:: @ 81F682C release end -Route125_EventScript_RematchErnest:: @ 81F684B +Route125_EventScript_RematchErnest:: trainerbattle_rematch TRAINER_ERNEST_1, Route125_Text_ErnestRematchIntro, Route125_Text_ErnestRematchDefeat msgbox Route125_Text_ErnestRematchPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Kim:: @ 81F6862 +Route125_EventScript_Kim:: trainerbattle_double TRAINER_KIM_AND_IRIS, Route125_Text_KimIntro, Route125_Text_KimDefeat, Route125_Text_KimNotEnoughMons msgbox Route125_Text_KimPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Iris:: @ 81F687D +Route125_EventScript_Iris:: trainerbattle_double TRAINER_KIM_AND_IRIS, Route125_Text_IrisIntro, Route125_Text_IrisDefeat, Route125_Text_IrisNotEnoughMons msgbox Route125_Text_IrisPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Presley:: @ 81F6898 +Route125_EventScript_Presley:: trainerbattle_single TRAINER_PRESLEY, Route125_Text_PresleyIntro, Route125_Text_PresleyDefeat msgbox Route125_Text_PresleyPostBattle, MSGBOX_AUTOCLOSE end -Route125_EventScript_Auron:: @ 81F68AF +Route125_EventScript_Auron:: trainerbattle_single TRAINER_AURON, Route125_Text_AuronIntro, Route125_Text_AuronDefeat msgbox Route125_Text_AuronPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route126/scripts.inc b/data/maps/Route126/scripts.inc index 6fbc43592474..79f5bb11be83 100644 --- a/data/maps/Route126/scripts.inc +++ b/data/maps/Route126/scripts.inc @@ -1,47 +1,47 @@ -Route126_MapScripts:: @ 81F68C6 +Route126_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route126_OnTransition .byte 0 -Route126_OnTransition: @ 81F68CC +Route126_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather end -Route126_EventScript_Barry:: @ 81F68D6 +Route126_EventScript_Barry:: trainerbattle_single TRAINER_BARRY, Route126_Text_BarryIntro, Route126_Text_BarryDefeat msgbox Route126_Text_BarryPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Dean:: @ 81F68ED +Route126_EventScript_Dean:: trainerbattle_single TRAINER_DEAN, Route126_Text_DeanIntro, Route126_Text_DeanDefeat msgbox Route126_Text_DeanPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Nikki:: @ 81F6904 +Route126_EventScript_Nikki:: trainerbattle_single TRAINER_NIKKI, Route126_Text_NikkiIntro, Route126_Text_NikkiDefeat msgbox Route126_Text_NikkiPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Brenda:: @ 81F691B +Route126_EventScript_Brenda:: trainerbattle_single TRAINER_BRENDA, Route126_Text_BrendaIntro, Route126_Text_BrendaDefeat msgbox Route126_Text_BrendaPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Leonardo:: @ 81F6932 +Route126_EventScript_Leonardo:: trainerbattle_single TRAINER_LEONARDO, Route126_Text_LeonardoIntro, Route126_Text_LeonardoDefeat msgbox Route126_Text_LeonardoPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Isobel:: @ 81F6949 +Route126_EventScript_Isobel:: trainerbattle_single TRAINER_ISOBEL, Route126_Text_IsobelIntro, Route126_Text_IsobelDefeat msgbox Route126_Text_IsobelPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Sienna:: @ 81F6960 +Route126_EventScript_Sienna:: trainerbattle_single TRAINER_SIENNA, Route126_Text_SiennaIntro, Route126_Text_SiennaDefeat msgbox Route126_Text_SiennaPostBattle, MSGBOX_AUTOCLOSE end -Route126_EventScript_Pablo:: @ 81F6977 +Route126_EventScript_Pablo:: trainerbattle_single TRAINER_PABLO_1, Route126_Text_PabloIntro, Route126_Text_PabloDefeat, Route126_EventScript_RegisterPablo specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -50,7 +50,7 @@ Route126_EventScript_Pablo:: @ 81F6977 release end -Route126_EventScript_RegisterPablo:: @ 81F69A3 +Route126_EventScript_RegisterPablo:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route126_Text_PabloRegister, MSGBOX_DEFAULT @@ -58,7 +58,7 @@ Route126_EventScript_RegisterPablo:: @ 81F69A3 release end -Route126_EventScript_RematchPablo:: @ 81F69C2 +Route126_EventScript_RematchPablo:: trainerbattle_rematch TRAINER_PABLO_1, Route126_Text_PabloRematchIntro, Route126_Text_PabloRematchDefeat msgbox Route126_Text_PabloPostRematch, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route127/scripts.inc b/data/maps/Route127/scripts.inc index 323315b04f00..426e814702b9 100644 --- a/data/maps/Route127/scripts.inc +++ b/data/maps/Route127/scripts.inc @@ -1,10 +1,10 @@ -Route127_MapScripts:: @ 81F69D9 +Route127_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route127_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route127_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route127_OnFrame .byte 0 -Route127_OnTransition: @ 81F69E9 +Route127_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup @@ -14,53 +14,53 @@ Route127_OnTransition: @ 81F69E9 call_if_eq AbnormalWeather_StartKyogreWeather end -Route127_OnLoad: @ 81F6A14 +Route127_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_NORTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute127North compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_SOUTH call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute127South end -Route127_OnFrame: @ 81F6A2B +Route127_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route127_EventScript_Camden:: @ 81F6A35 +Route127_EventScript_Camden:: trainerbattle_single TRAINER_CAMDEN, Route127_Text_CamdenIntro, Route127_Text_CamdenDefeat msgbox Route127_Text_CamdenPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Donny:: @ 81F6A4C +Route127_EventScript_Donny:: trainerbattle_single TRAINER_DONNY, Route127_Text_DonnyIntro, Route127_Text_DonnyDefeat msgbox Route127_Text_DonnyPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Jonah:: @ 81F6A63 +Route127_EventScript_Jonah:: trainerbattle_single TRAINER_JONAH, Route127_Text_JonahIntro, Route127_Text_JonahDefeat msgbox Route127_Text_JonahPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Henry:: @ 81F6A7A +Route127_EventScript_Henry:: trainerbattle_single TRAINER_HENRY, Route127_Text_HenryIntro, Route127_Text_HenryDefeat msgbox Route127_Text_HenryPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Roger:: @ 81F6A91 +Route127_EventScript_Roger:: trainerbattle_single TRAINER_ROGER, Route127_Text_RogerIntro, Route127_Text_RogerDefeat msgbox Route127_Text_RogerPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Aidan:: @ 81F6AA8 +Route127_EventScript_Aidan:: trainerbattle_single TRAINER_AIDAN, Route127_Text_AidanIntro, Route127_Text_AidanDefeat msgbox Route127_Text_AidanPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Athena:: @ 81F6ABF +Route127_EventScript_Athena:: trainerbattle_single TRAINER_ATHENA, Route127_Text_AthenaIntro, Route127_Text_AthenaDefeat msgbox Route127_Text_AthenaPostBattle, MSGBOX_AUTOCLOSE end -Route127_EventScript_Koji:: @ 81F6AD6 +Route127_EventScript_Koji:: trainerbattle_single TRAINER_KOJI_1, Route127_Text_KojiIntro, Route127_Text_KojiDefeat, Route127_EventScript_RegisterKoji specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -69,7 +69,7 @@ Route127_EventScript_Koji:: @ 81F6AD6 release end -Route127_EventScript_RegisterKoji:: @ 81F6B02 +Route127_EventScript_RegisterKoji:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route127_Text_KojiRegister, MSGBOX_DEFAULT @@ -77,7 +77,7 @@ Route127_EventScript_RegisterKoji:: @ 81F6B02 release end -Route127_EventScript_RematchKoji:: @ 81F6B21 +Route127_EventScript_RematchKoji:: trainerbattle_rematch TRAINER_KOJI_1, Route127_Text_KojiRematchIntro, Route127_Text_KojiRematchDefeat msgbox Route127_Text_KojiPostRematch, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route128/scripts.inc b/data/maps/Route128/scripts.inc index 2e69a50adf4b..09b5c404ac07 100644 --- a/data/maps/Route128/scripts.inc +++ b/data/maps/Route128/scripts.inc @@ -2,20 +2,20 @@ .set LOCALID_ARCHIE, 4 .set LOCALID_MAXIE, 5 -Route128_MapScripts:: @ 81F6B38 +Route128_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route128_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route128_OnFrame .byte 0 -Route128_OnTransition: @ 81F6B43 +Route128_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather end -Route128_OnFrame: @ 81F6B4D +Route128_OnFrame: map_script_2 VAR_ROUTE128_STATE, 1, Route128_EventScript_KyogreAwakenedScene .2byte 0 -Route128_EventScript_KyogreAwakenedScene:: @ 81F6B57 +Route128_EventScript_KyogreAwakenedScene:: lockall delay 20 applymovement LOCALID_ARCHIE, Route128_Movement_ArchieLookAround @@ -82,11 +82,11 @@ Route128_EventScript_KyogreAwakenedScene:: @ 81F6B57 releaseall end -Route128_Movement_Unused1: @ 81F6C76 +Route128_Movement_Unused1: walk_fast_left step_end -Route128_Movement_Unused2: @ 81F6C78 +Route128_Movement_Unused2: walk_left walk_left walk_left @@ -101,15 +101,15 @@ Route128_Movement_Unused2: @ 81F6C78 walk_up step_end -Route128_Movement_StevenWalkUp: @ 81F6C85 +Route128_Movement_StevenWalkUp: walk_up step_end -Route128_Movement_StevenApproachPlayer: @ 81F6C87 +Route128_Movement_StevenApproachPlayer: walk_fast_left step_end -Route128_Movement_ArchieLookAround: @ 81F6C89 +Route128_Movement_ArchieLookAround: walk_fast_down walk_in_place_fastest_left delay_16 @@ -119,21 +119,21 @@ Route128_Movement_ArchieLookAround: @ 81F6C89 walk_in_place_fastest_down step_end -Route128_Movement_ArchieBackUp: @ 81F6C91 +Route128_Movement_ArchieBackUp: lock_facing_direction walk_slow_up delay_16 unlock_facing_direction step_end -Route128_Movement_ArchieRunLeft: @ 81F6C96 +Route128_Movement_ArchieRunLeft: walk_fast_left walk_fast_left walk_fast_left walk_in_place_fastest_right step_end -Route128_Movement_ArchieExit: @ 81F6C9B +Route128_Movement_ArchieExit: delay_16 delay_16 walk_fast_up @@ -148,19 +148,19 @@ Route128_Movement_ArchieExit: @ 81F6C9B walk_fast_up step_end -Route128_Movement_MaxieWalkLeft: @ 81F6CA8 +Route128_Movement_MaxieWalkLeft: walk_left walk_left delay_8 delay_4 step_end -Route128_Movement_MaxieApproachArchie: @ 81F6CAD +Route128_Movement_MaxieApproachArchie: walk_left walk_in_place_fastest_down step_end -Route128_Movement_MaxieExit: @ 81F6CB0 +Route128_Movement_MaxieExit: walk_fast_left walk_fast_left walk_fast_left @@ -173,12 +173,12 @@ Route128_Movement_MaxieExit: @ 81F6CB0 walk_fast_up step_end -Route128_Movement_MaxieApproachPlayer: @ 81F6CBB +Route128_Movement_MaxieApproachPlayer: walk_right walk_in_place_fastest_down step_end -Route128_EventScript_Isaiah:: @ 81F6CBE +Route128_EventScript_Isaiah:: trainerbattle_single TRAINER_ISAIAH_1, Route128_Text_IsaiahIntro, Route128_Text_IsaiahDefeat, Route128_EventScript_RegisterIsaiah specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -187,7 +187,7 @@ Route128_EventScript_Isaiah:: @ 81F6CBE release end -Route128_EventScript_RegisterIsaiah:: @ 81F6CEA +Route128_EventScript_RegisterIsaiah:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route128_Text_IsaiahRegister, MSGBOX_DEFAULT @@ -195,12 +195,12 @@ Route128_EventScript_RegisterIsaiah:: @ 81F6CEA release end -Route128_EventScript_RematchIsaiah:: @ 81F6D09 +Route128_EventScript_RematchIsaiah:: trainerbattle_rematch TRAINER_ISAIAH_1, Route128_Text_IsaiahRematchIntro, Route128_Text_IsaiahRematchDefeat msgbox Route128_Text_IsaiahPostRematch, MSGBOX_AUTOCLOSE end -Route128_EventScript_Katelyn:: @ 81F6D20 +Route128_EventScript_Katelyn:: trainerbattle_single TRAINER_KATELYN_1, Route128_Text_KatelynIntro, Route128_Text_KatelynDefeat, Route128_EventScript_RegisterKatelyn specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -209,7 +209,7 @@ Route128_EventScript_Katelyn:: @ 81F6D20 release end -Route128_EventScript_RegisterKatelyn:: @ 81F6D4C +Route128_EventScript_RegisterKatelyn:: special PlayerFaceTrainerAfterBattle waitmovement 0 msgbox Route128_Text_KatelynRegister, MSGBOX_DEFAULT @@ -217,46 +217,46 @@ Route128_EventScript_RegisterKatelyn:: @ 81F6D4C release end -Route128_EventScript_RematchKatelyn:: @ 81F6D6B +Route128_EventScript_RematchKatelyn:: trainerbattle_rematch TRAINER_KATELYN_1, Route128_Text_KatelynRematchIntro, Route128_Text_KatelynRematchDefeat msgbox Route128_Text_KatelynPostRematch, MSGBOX_AUTOCLOSE end -Route128_EventScript_Alexa:: @ 81F6D82 +Route128_EventScript_Alexa:: trainerbattle_single TRAINER_ALEXA, Route128_Text_AlexaIntro, Route128_Text_AlexaDefeat msgbox Route128_Text_AlexaPostBattle, MSGBOX_AUTOCLOSE end -Route128_EventScript_Ruben:: @ 81F6D99 +Route128_EventScript_Ruben:: trainerbattle_single TRAINER_RUBEN, Route128_Text_RubenIntro, Route128_Text_RubenDefeat msgbox Route128_Text_RubenPostBattle, MSGBOX_AUTOCLOSE end -Route128_EventScript_Wayne:: @ 81F6DB0 +Route128_EventScript_Wayne:: trainerbattle_single TRAINER_WAYNE, Route128_Text_WayneIntro, Route128_Text_WayneDefeat msgbox Route128_Text_WaynePostBattle, MSGBOX_AUTOCLOSE end -Route128_EventScript_Harrison:: @ 81F6DC7 +Route128_EventScript_Harrison:: trainerbattle_single TRAINER_HARRISON, Route128_Text_HarrisonIntro, Route128_Text_HarrisonDefeat msgbox Route128_Text_HarrisonPostBattle, MSGBOX_AUTOCLOSE end -Route128_EventScript_Carlee:: @ 81F6DDE +Route128_EventScript_Carlee:: trainerbattle_single TRAINER_CARLEE, Route128_Text_CarleeIntro, Route128_Text_CarleeDefeat msgbox Route128_Text_CarleePostBattle, MSGBOX_AUTOCLOSE end -Route128_Text_ArchieWhatHappened: @ 81F6DF5 +Route128_Text_ArchieWhatHappened: .string "ARCHIE: What happened…\n" .string "What is this wretched scene…\p" .string "Did I…make a horrible mistake?$" -Route128_Text_ArchieIOnlyWanted: @ 81F6E48 +Route128_Text_ArchieIOnlyWanted: .string "I…\n" .string "I only wanted…$" -Route128_Text_MaxieDoYouUnderstandNow: @ 81F6E5A +Route128_Text_MaxieDoYouUnderstandNow: .string "MAXIE: Do you understand now,\n" .string "ARCHIE?\p" .string "Do you finally see how disastrous\n" @@ -265,7 +265,7 @@ Route128_Text_MaxieDoYouUnderstandNow: @ 81F6E5A .string "something before the situation goes\l" .string "completely out of control!$" -Route128_Text_MaxieResposibilityFallsToArchieAndMe: @ 81F6F1E +Route128_Text_MaxieResposibilityFallsToArchieAndMe: .string "MAXIE: {PLAYER}, don't say anything.\p" .string "I know that I have no right to be\n" .string "critical of ARCHIE…\p" @@ -277,17 +277,17 @@ Route128_Text_MaxieResposibilityFallsToArchieAndMe: @ 81F6F1E .string "The responsibility for putting an end\n" .string "to this falls to ARCHIE and me…$" -Route128_Text_MaxieThisDefiesBelief: @ 81F704F +Route128_Text_MaxieThisDefiesBelief: .string "MAXIE: This defies belief…\p" .string "Those super-ancient POKéMON…\p" .string "Their power is unbelievable.\n" .string "They've upset the balance of nature…$" -Route128_Text_StevenWhatIsHappening: @ 81F70C9 +Route128_Text_StevenWhatIsHappening: .string "STEVEN: {PLAYER}{KUN}!\n" .string "What is happening?$" -Route128_Text_StevenWholeWorldWillDrown: @ 81F70EA +Route128_Text_StevenWholeWorldWillDrown: .string "This is terrible…\p" .string "After the scorching heat wave ended,\n" .string "this deluge began.\p" @@ -299,7 +299,7 @@ Route128_Text_StevenWholeWorldWillDrown: @ 81F70EA .string "There's no point arguing here…\n" .string "SOOTOPOLIS might provide answers…$" -Route128_Text_StevenImGoingToSootopolis: @ 81F721B +Route128_Text_StevenImGoingToSootopolis: .string "{PLAYER}{KUN}…\n" .string "I don't know what you intend to do,\l" .string "but don't do anything reckless.\p" diff --git a/data/maps/Route129/scripts.inc b/data/maps/Route129/scripts.inc index ea53c3bf2661..e996722cc9d8 100644 --- a/data/maps/Route129/scripts.inc +++ b/data/maps/Route129/scripts.inc @@ -1,17 +1,17 @@ -Route129_MapScripts:: @ 81F7284 +Route129_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route129_OnTransition map_script MAP_SCRIPT_ON_LOAD, Route129_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, Route129_OnFrame .byte 0 -Route129_OnLoad: @ 81F7294 +Route129_OnLoad: compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_WEST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute129West compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_EAST call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute129East end -Route129_OnTransition: @ 81F72AB +Route129_OnTransition: compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 call_if_eq AbnormalWeather_EventScript_HideMapNamePopup compare VAR_SOOTOPOLIS_CITY_STATE, 4 @@ -22,35 +22,35 @@ Route129_OnTransition: @ 81F72AB call_if_eq AbnormalWeather_StartKyogreWeather end -Route129_EventScript_CheckSetAbnormalWeather:: @ 81F72D8 +Route129_EventScript_CheckSetAbnormalWeather:: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather return -Route129_OnFrame: @ 81F72E2 +Route129_OnFrame: map_script_2 VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_EndEventAndCleanup_1 .2byte 0 -Route129_EventScript_Chase:: @ 81F72EC +Route129_EventScript_Chase:: trainerbattle_single TRAINER_CHASE, Route129_Text_ChaseIntro, Route129_Text_ChaseDefeat msgbox Route129_Text_ChasePostBattle, MSGBOX_AUTOCLOSE end -Route129_EventScript_Allison:: @ 81F7303 +Route129_EventScript_Allison:: trainerbattle_single TRAINER_ALLISON, Route129_Text_AllisonIntro, Route129_Text_AllisonDefeat msgbox Route129_Text_AllisonPostBattle, MSGBOX_AUTOCLOSE end -Route129_EventScript_Reed:: @ 81F731A +Route129_EventScript_Reed:: trainerbattle_single TRAINER_REED, Route129_Text_ReedIntro, Route129_Text_ReedDefeat msgbox Route129_Text_ReedPostBattle, MSGBOX_AUTOCLOSE end -Route129_EventScript_Tisha:: @ 81F7331 +Route129_EventScript_Tisha:: trainerbattle_single TRAINER_TISHA, Route129_Text_TishaIntro, Route129_Text_TishaDefeat msgbox Route129_Text_TishaPostBattle, MSGBOX_AUTOCLOSE end -Route129_EventScript_Clarence:: @ 81F7348 +Route129_EventScript_Clarence:: trainerbattle_single TRAINER_CLARENCE, Route129_Text_ClarenceIntro, Route129_Text_ClarenceDefeat msgbox Route129_Text_ClarencePostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route130/scripts.inc b/data/maps/Route130/scripts.inc index 141196a2ddff..fe360a36bb72 100644 --- a/data/maps/Route130/scripts.inc +++ b/data/maps/Route130/scripts.inc @@ -1,8 +1,8 @@ -Route130_MapScripts:: @ 81F735F +Route130_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route130_OnTransition .byte 0 -Route130_OnTransition: @ 81F7365 +Route130_OnTransition: compare VAR_SOOTOPOLIS_CITY_STATE, 4 call_if_ge Route130_EventScript_CheckSetAbnormalWeather specialvar VAR_RESULT, IsMirageIslandPresent @@ -26,25 +26,25 @@ Route130_OnTransition: @ 81F7365 setmaplayoutindex LAYOUT_ROUTE130 end -Route130_EventScript_SetMirageIslandLayout:: @ 81F73B1 +Route130_EventScript_SetMirageIslandLayout:: setmaplayoutindex LAYOUT_ROUTE130_MIRAGE_ISLAND end -Route130_EventScript_CheckSetAbnormalWeather:: @ 81F73B5 +Route130_EventScript_CheckSetAbnormalWeather:: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather return -Route130_EventScript_Rodney:: @ 81F73BF +Route130_EventScript_Rodney:: trainerbattle_single TRAINER_RODNEY, Route130_Text_RodneyIntro, Route130_Text_RodneyDefeat msgbox Route130_Text_RodneyPostBattle, MSGBOX_AUTOCLOSE end -Route130_EventScript_Katie:: @ 81F73D6 +Route130_EventScript_Katie:: trainerbattle_single TRAINER_KATIE, Route130_Text_KatieIntro, Route130_Text_KatieDefeat msgbox Route130_Text_KatiePostBattle, MSGBOX_AUTOCLOSE end -Route130_EventScript_Santiago:: @ 81F73ED +Route130_EventScript_Santiago:: trainerbattle_single TRAINER_SANTIAGO, Route130_Text_SantiagoIntro, Route130_Text_SantiagoDefeat msgbox Route130_Text_SantiagoPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route131/scripts.inc b/data/maps/Route131/scripts.inc index b419adcf6850..846998bfe92a 100644 --- a/data/maps/Route131/scripts.inc +++ b/data/maps/Route131/scripts.inc @@ -1,57 +1,57 @@ -Route131_MapScripts:: @ 81F7404 +Route131_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route131_OnTransition .byte 0 -Route131_OnTransition: @ 81F740A +Route131_OnTransition: compare VAR_SOOTOPOLIS_CITY_STATE, 4 call_if_ge Route131_EventScript_CheckSetAbnormalWeather call Route131_EventScript_SetLayout end -Route131_EventScript_SetLayout:: @ 81F741B +Route131_EventScript_SetLayout:: setmaplayoutindex LAYOUT_ROUTE131_SKY_PILLAR return -Route131_EventScript_CheckSetAbnormalWeather:: @ 81F741F +Route131_EventScript_CheckSetAbnormalWeather:: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather return -Route131_EventScript_Richard:: @ 81F7429 +Route131_EventScript_Richard:: trainerbattle_single TRAINER_RICHARD, Route131_Text_RichardIntro, Route131_Text_RichardDefeat msgbox Route131_Text_RichardPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Herman:: @ 81F7440 +Route131_EventScript_Herman:: trainerbattle_single TRAINER_HERMAN, Route131_Text_HermanIntro, Route131_Text_HermanDefeat msgbox Route131_Text_HermanPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Susie:: @ 81F7457 +Route131_EventScript_Susie:: trainerbattle_single TRAINER_SUSIE, Route131_Text_SusieIntro, Route131_Text_SusieDefeat msgbox Route131_Text_SusiePostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Kara:: @ 81F746E +Route131_EventScript_Kara:: trainerbattle_single TRAINER_KARA, Route131_Text_KaraIntro, Route131_Text_KaraDefeat msgbox Route131_Text_KaraPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Reli:: @ 81F7485 +Route131_EventScript_Reli:: trainerbattle_double TRAINER_RELI_AND_IAN, Route131_Text_ReliIntro, Route131_Text_ReliDefeat, Route131_Text_ReliNotEnoughMons msgbox Route131_Text_ReliPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Ian:: @ 81F74A0 +Route131_EventScript_Ian:: trainerbattle_double TRAINER_RELI_AND_IAN, Route131_Text_IanIntro, Route131_Text_IanDefeat, Route131_Text_IanNotEnoughMons msgbox Route131_Text_IanPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Talia:: @ 81F74BB +Route131_EventScript_Talia:: trainerbattle_single TRAINER_TALIA, Route131_Text_TaliaIntro, Route131_Text_TaliaDefeat msgbox Route131_Text_TaliaPostBattle, MSGBOX_AUTOCLOSE end -Route131_EventScript_Kevin:: @ 81F74D2 +Route131_EventScript_Kevin:: trainerbattle_single TRAINER_KEVIN, Route131_Text_KevinIntro, Route131_Text_KevinDefeat msgbox Route131_Text_KevinPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route132/scripts.inc b/data/maps/Route132/scripts.inc index 6b82102bebda..40d47a630ffa 100644 --- a/data/maps/Route132/scripts.inc +++ b/data/maps/Route132/scripts.inc @@ -1,42 +1,42 @@ -Route132_MapScripts:: @ 81F74E9 +Route132_MapScripts:: .byte 0 -Route132_EventScript_Gilbert:: @ 81F74EA +Route132_EventScript_Gilbert:: trainerbattle_single TRAINER_GILBERT, Route132_Text_GilbertIntro, Route132_Text_GilbertDefeat msgbox Route132_Text_GilbertPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Dana:: @ 81F7501 +Route132_EventScript_Dana:: trainerbattle_single TRAINER_DANA, Route132_Text_DanaIntro, Route132_Text_DanaDefeat msgbox Route132_Text_DanaPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Ronald:: @ 81F7518 +Route132_EventScript_Ronald:: trainerbattle_single TRAINER_RONALD, Route132_Text_RonaldIntro, Route132_Text_RonaldDefeat msgbox Route132_Text_RonaldPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Kiyo:: @ 81F752F +Route132_EventScript_Kiyo:: trainerbattle_single TRAINER_KIYO, Route132_Text_KiyoIntro, Route132_Text_KiyoDefeat msgbox Route132_Text_KiyoPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Paxton:: @ 81F7546 +Route132_EventScript_Paxton:: trainerbattle_single TRAINER_PAXTON, Route132_Text_PaxtonIntro, Route132_Text_PaxtonDefeat msgbox Route132_Text_PaxtonPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Darcy:: @ 81F755D +Route132_EventScript_Darcy:: trainerbattle_single TRAINER_DARCY, Route132_Text_DarcyIntro, Route132_Text_DarcyDefeat msgbox Route132_Text_DarcyPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Jonathan:: @ 81F7574 +Route132_EventScript_Jonathan:: trainerbattle_single TRAINER_JONATHAN, Route132_Text_JonathanIntro, Route132_Text_JonathanDefeat msgbox Route132_Text_JonathanPostBattle, MSGBOX_AUTOCLOSE end -Route132_EventScript_Makayla:: @ 81F758B +Route132_EventScript_Makayla:: trainerbattle_single TRAINER_MAKAYLA, Route132_Text_MakaylaIntro, Route132_Text_MakaylaDefeat msgbox Route132_Text_MakaylaPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route133/scripts.inc b/data/maps/Route133/scripts.inc index ebe28f5db457..c9350b683023 100644 --- a/data/maps/Route133/scripts.inc +++ b/data/maps/Route133/scripts.inc @@ -1,37 +1,37 @@ -Route133_MapScripts:: @ 81F75A2 +Route133_MapScripts:: .byte 0 -Route133_EventScript_Franklin:: @ 81F75A3 +Route133_EventScript_Franklin:: trainerbattle_single TRAINER_FRANKLIN, Route133_Text_FranklinIntro, Route133_Text_FranklinDefeat msgbox Route133_Text_FranklinPostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Debra:: @ 81F75BA +Route133_EventScript_Debra:: trainerbattle_single TRAINER_DEBRA, Route133_Text_DebraIntro, Route133_Text_DebraDefeat msgbox Route133_Text_DebraPostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Linda:: @ 81F75D1 +Route133_EventScript_Linda:: trainerbattle_single TRAINER_LINDA, Route133_Text_LindaIntro, Route133_Text_LindaDefeat msgbox Route133_Text_LindaPostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Warren:: @ 81F75E8 +Route133_EventScript_Warren:: trainerbattle_single TRAINER_WARREN, Route133_Text_WarrenIntro, Route133_Text_WarrenDefeat msgbox Route133_Text_WarrenPostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Beck:: @ 81F75FF +Route133_EventScript_Beck:: trainerbattle_single TRAINER_BECK, Route133_Text_BeckIntro, Route133_Text_BeckDefeat msgbox Route133_Text_BeckPostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Mollie:: @ 81F7616 +Route133_EventScript_Mollie:: trainerbattle_single TRAINER_MOLLIE, Route133_Text_MollieIntro, Route133_Text_MollieDefeat msgbox Route133_Text_MolliePostBattle, MSGBOX_AUTOCLOSE end -Route133_EventScript_Conor:: @ 81F762D +Route133_EventScript_Conor:: trainerbattle_single TRAINER_CONOR, Route133_Text_ConorIntro, Route133_Text_ConorDefeat msgbox Route133_Text_ConorPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/Route134/scripts.inc b/data/maps/Route134/scripts.inc index 3da2781b9b95..043835373e6a 100644 --- a/data/maps/Route134/scripts.inc +++ b/data/maps/Route134/scripts.inc @@ -1,52 +1,52 @@ -Route134_MapScripts:: @ 81F7644 +Route134_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Route134_OnResume .byte 0 -Route134_OnResume: @ 81F764A +Route134_OnResume: setdivewarp MAP_UNDERWATER_ROUTE134, 255, 8, 6 end -Route134_EventScript_Jack:: @ 81F7653 +Route134_EventScript_Jack:: trainerbattle_single TRAINER_JACK, Route134_Text_JackIntro, Route134_Text_JackDefeat msgbox Route134_Text_JackPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Laurel:: @ 81F766A +Route134_EventScript_Laurel:: trainerbattle_single TRAINER_LAUREL, Route134_Text_LaurelIntro, Route134_Text_LaurelDefeat msgbox Route134_Text_LaurelPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Alex:: @ 81F7681 +Route134_EventScript_Alex:: trainerbattle_single TRAINER_ALEX, Route134_Text_AlexIntro, Route134_Text_AlexDefeat msgbox Route134_Text_AlexPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Aaron:: @ 81F7698 +Route134_EventScript_Aaron:: trainerbattle_single TRAINER_AARON, Route134_Text_AaronIntro, Route134_Text_AaronDefeat msgbox Route134_Text_AaronPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Hitoshi:: @ 81F76AF +Route134_EventScript_Hitoshi:: trainerbattle_single TRAINER_HITOSHI, Route134_Text_HitoshiIntro, Route134_Text_HitoshiDefeat msgbox Route134_Text_HitoshiPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Hudson:: @ 81F76C6 +Route134_EventScript_Hudson:: trainerbattle_single TRAINER_HUDSON, Route134_Text_HudsonIntro, Route134_Text_HudsonDefeat msgbox Route134_Text_HudsonPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Reyna:: @ 81F76DD +Route134_EventScript_Reyna:: trainerbattle_single TRAINER_REYNA, Route134_Text_ReynaIntro, Route134_Text_ReynaDefeat msgbox Route134_Text_ReynaPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Marley:: @ 81F76F4 +Route134_EventScript_Marley:: trainerbattle_single TRAINER_MARLEY, Route134_Text_MarleyIntro, Route134_Text_MarleyDefeat msgbox Route134_Text_MarleyPostBattle, MSGBOX_AUTOCLOSE end -Route134_EventScript_Kelvin:: @ 81F770B +Route134_EventScript_Kelvin:: trainerbattle_single TRAINER_KELVIN, Route134_Text_KelvinIntro, Route134_Text_KelvinDefeat msgbox Route134_Text_KelvinPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc index 05bd25247933..5c6ef0902256 100644 --- a/data/maps/RustboroCity/scripts.inc +++ b/data/maps/RustboroCity/scripts.inc @@ -5,12 +5,12 @@ .set LOCALID_RIVAL, 14 .set LOCALID_SCIENTIST, 15 -RustboroCity_MapScripts:: @ 81E06BD +RustboroCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, RustboroCity_OnFrame .byte 0 -RustboroCity_OnTransition: @ 81E06C8 +RustboroCity_OnTransition: setflag FLAG_VISITED_RUSTBORO_CITY call Common_EventScript_SetupRivalGfxId compare VAR_RUSTBORO_CITY_STATE, 6 @@ -20,25 +20,25 @@ RustboroCity_OnTransition: @ 81E06C8 goto_if_eq RustboroCity_EventScript_PositionScientistForExit end -RustboroCity_EventScript_PositionScientistForExit:: @ 81E06EC +RustboroCity_EventScript_PositionScientistForExit:: compare VAR_TEMP_0, 11 goto_if_eq RustboroCity_EventScript_PositionScientistLeftExit setobjectxyperm LOCALID_SCIENTIST, 12, 15 end -RustboroCity_EventScript_PositionScientistLeftExit:: @ 81E06FF +RustboroCity_EventScript_PositionScientistLeftExit:: setobjectxyperm LOCALID_SCIENTIST, 11, 15 end -RustboroCity_EventScript_HideMapNamePopup:: @ 81E0707 +RustboroCity_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -RustboroCity_OnFrame: @ 81E070B +RustboroCity_OnFrame: map_script_2 VAR_RUSTBORO_CITY_STATE, 6, RustboroCity_EventScript_ScientistAddMatchCall .2byte 0 -RustboroCity_EventScript_ScientistAddMatchCall:: @ 81E0715 +RustboroCity_EventScript_ScientistAddMatchCall:: lockall setvar VAR_ROUTE104_STATE, 1 applymovement OBJ_EVENT_ID_PLAYER, RustboroCity_Movement_PlayerWalkDown @@ -77,13 +77,13 @@ RustboroCity_EventScript_ScientistAddMatchCall:: @ 81E0715 delay 20 goto RustboroCity_EventScript_MatchCallTutorial -RustboroCity_EventScript_PleaseSelectPokenav:: @ 81E07AC +RustboroCity_EventScript_PleaseSelectPokenav:: msgbox RustboroCity_Text_PleaseSelectPokenav, MSGBOX_DEFAULT closemessage delay 10 goto RustboroCity_EventScript_MatchCallTutorial -RustboroCity_EventScript_MatchCallTutorial:: @ 81E07BD +RustboroCity_EventScript_MatchCallTutorial:: setflag FLAG_ADDED_MATCH_CALL_TO_POKENAV special ScriptMenu_CreateStartMenuForPokenavTutorial waitstate @@ -111,21 +111,21 @@ RustboroCity_EventScript_MatchCallTutorial:: @ 81E07BD releaseall end -RustboroCity_Movement_ScientistWalkInPlaceDown: @ 81E084E +RustboroCity_Movement_ScientistWalkInPlaceDown: walk_in_place_down step_end -RustboroCity_Movement_PlayerWalkDown: @ 81E0850 +RustboroCity_Movement_PlayerWalkDown: walk_down step_end -RustboroCity_Movement_ScientistApproachPlayer: @ 81E0852 +RustboroCity_Movement_ScientistApproachPlayer: walk_down delay_16 step_end @ Unused -RustboroCity_Movement_ScientistWalkAroundPlayer: @ 81E0855 +RustboroCity_Movement_ScientistWalkAroundPlayer: delay_16 walk_left walk_down @@ -135,11 +135,11 @@ RustboroCity_Movement_ScientistWalkAroundPlayer: @ 81E0855 delay_16 step_end -RustboroCity_Movement_ScientistLeave: @ 81E085D +RustboroCity_Movement_ScientistLeave: walk_up step_end -RustboroCity_EventScript_FatMan:: @ 81E085F +RustboroCity_EventScript_FatMan:: lock faceplayer goto_if_set FLAG_DEVON_GOODS_STOLEN, RustboroCity_EventScript_FatManSawGrunt @@ -147,23 +147,23 @@ RustboroCity_EventScript_FatMan:: @ 81E085F release end -RustboroCity_EventScript_FatManSawGrunt:: @ 81E0874 +RustboroCity_EventScript_FatManSawGrunt:: msgbox RustboroCity_Text_SneakyLookingManWentAroundCorner, MSGBOX_DEFAULT release end -RustboroCity_EventScript_DevonEmployee2:: @ 81E087E +RustboroCity_EventScript_DevonEmployee2:: lock faceplayer msgbox RustboroCity_Text_YoureNewAroundHere, MSGBOX_DEFAULT release end -RustboroCity_EventScript_Woman:: @ 81E088A +RustboroCity_EventScript_Woman:: msgbox RustboroCity_Text_GymLeaderIsntEasyWithFire, MSGBOX_NPC end -RustboroCity_EventScript_Man1:: @ 81E0893 +RustboroCity_EventScript_Man1:: lock faceplayer goto_if_set FLAG_BADGE01_GET, RustboroCity_EventScript_Man1HaveBadge @@ -171,12 +171,12 @@ RustboroCity_EventScript_Man1:: @ 81E0893 release end -RustboroCity_EventScript_Man1HaveBadge:: @ 81E08A8 +RustboroCity_EventScript_Man1HaveBadge:: msgbox RustboroCity_Text_HeyThatsRustborosGymBadge, MSGBOX_DEFAULT release end -RustboroCity_EventScript_Boy2:: @ 81E08B2 +RustboroCity_EventScript_Boy2:: lock faceplayer goto_if_set FLAG_RECEIVED_POKENAV, RustboroCity_EventScript_Boy2BrineyLeftTunnel @@ -184,49 +184,49 @@ RustboroCity_EventScript_Boy2:: @ 81E08B2 release end -RustboroCity_EventScript_Boy2BrineyLeftTunnel:: @ 81E08C7 +RustboroCity_EventScript_Boy2BrineyLeftTunnel:: msgbox RustboroCity_Text_MrBrineyLovesPeeko, MSGBOX_DEFAULT release end -RustboroCity_EventScript_Twin:: @ 81E08D1 +RustboroCity_EventScript_Twin:: msgbox RustboroCity_Text_WowYouHavePokemon, MSGBOX_NPC end -RustboroCity_EventScript_NinjaBoy:: @ 81E08DA +RustboroCity_EventScript_NinjaBoy:: msgbox RustboroCity_Text_CatchRarePokemonIfIGoToSchool, MSGBOX_SIGN end -RustboroCity_EventScript_TunnelSign:: @ 81E08E3 +RustboroCity_EventScript_TunnelSign:: msgbox RustboroCity_Text_TunnelNearingCompletion, MSGBOX_SIGN end -RustboroCity_EventScript_DevonCorpSign:: @ 81E08EC +RustboroCity_EventScript_DevonCorpSign:: msgbox RustboroCity_Text_DevonCorpSign, MSGBOX_SIGN end -RustboroCity_EventScript_GymSign:: @ 81E08F5 +RustboroCity_EventScript_GymSign:: msgbox RustboroCity_Text_GymSign, MSGBOX_SIGN end @ Unused -RustboroCity_EventScript_DevonCorpBranchOfficeSign:: @ 81E08FE +RustboroCity_EventScript_DevonCorpBranchOfficeSign:: msgbox RustboroCity_Text_DevonCorpBranchOfficeSign, MSGBOX_SIGN end -RustboroCity_EventScript_CitySign:: @ 81E0907 +RustboroCity_EventScript_CitySign:: msgbox RustboroCity_Text_CitySign, MSGBOX_SIGN end -RustboroCity_EventScript_TrainersSchoolSign:: @ 81E0910 +RustboroCity_EventScript_TrainersSchoolSign:: msgbox RustboroCity_Text_TrainersSchoolSign, MSGBOX_SIGN end -RustboroCity_EventScript_CuttersHouseSign:: @ 81E0919 +RustboroCity_EventScript_CuttersHouseSign:: msgbox RustboroCity_Text_CuttersHouse, MSGBOX_SIGN end -RustboroCity_EventScript_LittleBoy:: @ 81E0922 +RustboroCity_EventScript_LittleBoy:: lock faceplayer msgbox RustboroCity_Text_PokemonCanChangeLookFromExp, MSGBOX_DEFAULT @@ -235,7 +235,7 @@ RustboroCity_EventScript_LittleBoy:: @ 81E0922 release end -RustboroCity_EventScript_LittleGirl:: @ 81E0938 +RustboroCity_EventScript_LittleGirl:: lock faceplayer msgbox RustboroCity_Text_PokemonChangeShape, MSGBOX_DEFAULT @@ -244,14 +244,14 @@ RustboroCity_EventScript_LittleGirl:: @ 81E0938 release end -RustboroCity_EventScript_Man2:: @ 81E094E +RustboroCity_EventScript_Man2:: lock faceplayer msgbox RustboroCity_Text_TradePokemonGrowFast, MSGBOX_DEFAULT release end -RustboroCity_EventScript_StolenGoodsTrigger0:: @ 81E095A +RustboroCity_EventScript_StolenGoodsTrigger0:: lockall setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT @@ -259,7 +259,7 @@ RustboroCity_EventScript_StolenGoodsTrigger0:: @ 81E095A goto RustboroCity_EventScript_StolenGoodsScene end -RustboroCity_EventScript_StolenGoodsTrigger1:: @ 81E0971 +RustboroCity_EventScript_StolenGoodsTrigger1:: lockall setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT @@ -267,7 +267,7 @@ RustboroCity_EventScript_StolenGoodsTrigger1:: @ 81E0971 goto RustboroCity_EventScript_StolenGoodsScene end -RustboroCity_EventScript_StolenGoodsTrigger2:: @ 81E0988 +RustboroCity_EventScript_StolenGoodsTrigger2:: lockall setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT @@ -275,7 +275,7 @@ RustboroCity_EventScript_StolenGoodsTrigger2:: @ 81E0988 goto RustboroCity_EventScript_StolenGoodsScene end -RustboroCity_EventScript_StolenGoodsTrigger3:: @ 81E099F +RustboroCity_EventScript_StolenGoodsTrigger3:: lockall setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT @@ -283,7 +283,7 @@ RustboroCity_EventScript_StolenGoodsTrigger3:: @ 81E099F goto RustboroCity_EventScript_StolenGoodsScene end -RustboroCity_EventScript_StolenGoodsTrigger4:: @ 81E09B6 +RustboroCity_EventScript_StolenGoodsTrigger4:: lockall setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT @@ -291,7 +291,7 @@ RustboroCity_EventScript_StolenGoodsTrigger4:: @ 81E09B6 goto RustboroCity_EventScript_StolenGoodsScene end -RustboroCity_EventScript_StolenGoodsScene:: @ 81E09CD +RustboroCity_EventScript_StolenGoodsScene:: msgbox RustboroCity_Text_OutOfTheWay, MSGBOX_DEFAULT closemessage playbgm MUS_ENCOUNTER_AQUA, FALSE @@ -323,41 +323,41 @@ RustboroCity_EventScript_StolenGoodsScene:: @ 81E09CD end @ Unused -RustboroCity_EventScript_ShadyCharacterTookOff:: @ 81E0A3B +RustboroCity_EventScript_ShadyCharacterTookOff:: msgbox RustboroCity_Text_ShadyCharacterTookOffTowardsTunnel, MSGBOX_DEFAULT return @ Unused -RustboroCity_EventScript_YouGotItThankYou:: @ 81E0A44 +RustboroCity_EventScript_YouGotItThankYou:: msgbox RustboroCity_Text_YouGotItThankYou, MSGBOX_DEFAULT return @ Unknown, unused employee movements. Based on the differences in movement theyre for approaching an object (probably the player) in different positions -RustboroCity_EventScript_EmployeeApproachUp:: @ 81E0A4D +RustboroCity_EventScript_EmployeeApproachUp:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachUp waitmovement 0 return @ Unused, see above -RustboroCity_EventScript_EmployeeApproachLeft:: @ 81E0A58 +RustboroCity_EventScript_EmployeeApproachLeft:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachLeft waitmovement 0 return @ Unused, see above -RustboroCity_EventScript_EmployeeApproachRight:: @ 81E0A63 +RustboroCity_EventScript_EmployeeApproachRight:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachRight waitmovement 0 return @ Unused, see above -RustboroCity_EventScript_EmployeeApproachDown:: @ 81E0A6E +RustboroCity_EventScript_EmployeeApproachDown:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachDown waitmovement 0 return @ Unused, similar movement to the above scripts -RustboroCity_EventScript_EmployeeApproachPlayerFar:: @ 81E0A79 +RustboroCity_EventScript_EmployeeApproachPlayerFar:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerFar waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp @@ -365,7 +365,7 @@ RustboroCity_EventScript_EmployeeApproachPlayerFar:: @ 81E0A79 return @ Unused -RustboroCity_Movement_GruntEscapeExtended: @ 81E0A8E +RustboroCity_Movement_GruntEscapeExtended: walk_fastest_right walk_fastest_right walk_fast_right @@ -385,7 +385,7 @@ RustboroCity_Movement_GruntEscapeExtended: @ 81E0A8E walk_fast_up step_end -RustboroCity_Movement_GruntEscape: @ 81E0AA0 +RustboroCity_Movement_GruntEscape: walk_fastest_right walk_fastest_right walk_fast_right @@ -404,7 +404,7 @@ RustboroCity_Movement_GruntEscape: @ 81E0AA0 walk_fast_up step_end -RustboroCity_Movement_EmployeeChaseGrunt1: @ 81E0AB1 +RustboroCity_Movement_EmployeeChaseGrunt1: walk_right walk_right walk_right @@ -414,7 +414,7 @@ RustboroCity_Movement_EmployeeChaseGrunt1: @ 81E0AB1 walk_in_place_fastest_up step_end -RustboroCity_Movement_EmployeeChaseGrunt2: @ 81E0AB9 +RustboroCity_Movement_EmployeeChaseGrunt2: walk_up walk_up walk_up @@ -425,14 +425,14 @@ RustboroCity_Movement_EmployeeChaseGrunt2: @ 81E0AB9 step_end @ Functionally unused -RustboroCity_Movement_EmployeeApproachUp: @ 81E0AC1 +RustboroCity_Movement_EmployeeApproachUp: walk_down walk_right walk_right step_end @ Functionally unused -RustboroCity_Movement_EmployeeApproachLeft: @ 81E0AC5 +RustboroCity_Movement_EmployeeApproachLeft: walk_down walk_down walk_right @@ -440,7 +440,7 @@ RustboroCity_Movement_EmployeeApproachLeft: @ 81E0AC5 step_end @ Functionally unused -RustboroCity_Movement_EmployeeApproachRight: @ 81E0ACA +RustboroCity_Movement_EmployeeApproachRight: walk_down walk_down walk_right @@ -448,7 +448,7 @@ RustboroCity_Movement_EmployeeApproachRight: @ 81E0ACA step_end @ Functionally unused -RustboroCity_Movement_EmployeeApproachDown: @ 81E0ACF +RustboroCity_Movement_EmployeeApproachDown: walk_down walk_down walk_down @@ -457,7 +457,7 @@ RustboroCity_Movement_EmployeeApproachDown: @ 81E0ACF step_end @ Functionally unused -RustboroCity_Movement_EmployeeApproachPlayerFar: @ 81E0AD5 +RustboroCity_Movement_EmployeeApproachPlayerFar: walk_down walk_down walk_down @@ -467,7 +467,7 @@ RustboroCity_Movement_EmployeeApproachPlayerFar: @ 81E0AD5 walk_in_place_fastest_down step_end -RustboroCity_EventScript_DevonEmployee1:: @ 81E0ADD +RustboroCity_EventScript_DevonEmployee1:: lock faceplayer goto_if_set FLAG_RECOVERED_DEVON_GOODS, RustboroCity_EventScript_ReturnGoodsSpokeToEmployee @@ -475,37 +475,37 @@ RustboroCity_EventScript_DevonEmployee1:: @ 81E0ADD release end -RustboroCity_EventScript_ReturnGoodsSpokeToEmployee:: @ 81E0AF2 +RustboroCity_EventScript_ReturnGoodsSpokeToEmployee:: waitse setvar VAR_TEMP_1, 4 goto RustboroCity_EventScript_ReturnGoods end -RustboroCity_EventScript_HelpGetGoodsTrigger0:: @ 81E0AFE +RustboroCity_EventScript_HelpGetGoodsTrigger0:: lockall setvar VAR_TEMP_1, 0 goto RustboroCity_EventScript_EmployeeAskToGetGoods end -RustboroCity_EventScript_HelpGetGoodsTrigger1:: @ 81E0B0A +RustboroCity_EventScript_HelpGetGoodsTrigger1:: lockall setvar VAR_TEMP_1, 1 goto RustboroCity_EventScript_EmployeeAskToGetGoods end -RustboroCity_EventScript_HelpGetGoodsTrigger2:: @ 81E0B16 +RustboroCity_EventScript_HelpGetGoodsTrigger2:: lockall setvar VAR_TEMP_1, 2 goto RustboroCity_EventScript_EmployeeAskToGetGoods end -RustboroCity_EventScript_HelpGetGoodsTrigger3:: @ 81E0B22 +RustboroCity_EventScript_HelpGetGoodsTrigger3:: lockall setvar VAR_TEMP_1, 3 goto RustboroCity_EventScript_EmployeeAskToGetGoods end -RustboroCity_EventScript_EmployeeAskToGetGoods:: @ 81E0B2E +RustboroCity_EventScript_EmployeeAskToGetGoods:: compare VAR_TEMP_1, 0 call_if_eq RustboroCity_EventScript_EmployeeFacePlayerUp1 compare VAR_TEMP_1, 1 @@ -522,7 +522,7 @@ RustboroCity_EventScript_EmployeeAskToGetGoods:: @ 81E0B2E end @ The below movement scripts are either partially or fully duplicated by the movement scripts when the player returns the goods -RustboroCity_EventScript_EmployeeFacePlayerUp1:: @ 81E0B6F +RustboroCity_EventScript_EmployeeFacePlayerUp1:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestUp waitmovement 0 playse SE_PIN @@ -534,7 +534,7 @@ RustboroCity_EventScript_EmployeeFacePlayerUp1:: @ 81E0B6F waitmovement 0 return -RustboroCity_EventScript_EmployeeFacePlayerLeft1:: @ 81E0B9B +RustboroCity_EventScript_EmployeeFacePlayerLeft1:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 playse SE_PIN @@ -546,7 +546,7 @@ RustboroCity_EventScript_EmployeeFacePlayerLeft1:: @ 81E0B9B waitmovement 0 return -RustboroCity_EventScript_EmployeeFacePlayerDown1:: @ 81E0BC7 +RustboroCity_EventScript_EmployeeFacePlayerDown1:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown waitmovement 0 playse SE_PIN @@ -558,7 +558,7 @@ RustboroCity_EventScript_EmployeeFacePlayerDown1:: @ 81E0BC7 waitmovement 0 return -RustboroCity_EventScript_EmployeeApproachPlayerDown1:: @ 81E0BF3 +RustboroCity_EventScript_EmployeeApproachPlayerDown1:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown waitmovement 0 playse SE_PIN @@ -572,35 +572,35 @@ RustboroCity_EventScript_EmployeeApproachPlayerDown1:: @ 81E0BF3 waitmovement 0 return -RustboroCity_Movement_EmployeeApproachPlayerDown: @ 81E0C29 +RustboroCity_Movement_EmployeeApproachPlayerDown: walk_down step_end -RustboroCity_EventScript_ReturnGoodsTrigger0:: @ 81E0C2B +RustboroCity_EventScript_ReturnGoodsTrigger0:: lockall setvar VAR_TEMP_1, 0 goto RustboroCity_EventScript_ReturnGoods end -RustboroCity_EventScript_ReturnGoodsTrigger1:: @ 81E0C37 +RustboroCity_EventScript_ReturnGoodsTrigger1:: lockall setvar VAR_TEMP_1, 1 goto RustboroCity_EventScript_ReturnGoods end -RustboroCity_EventScript_ReturnGoodsTrigger2:: @ 81E0C43 +RustboroCity_EventScript_ReturnGoodsTrigger2:: lockall setvar VAR_TEMP_1, 2 goto RustboroCity_EventScript_ReturnGoods end -RustboroCity_EventScript_ReturnGoodsTrigger3:: @ 81E0C4F +RustboroCity_EventScript_ReturnGoodsTrigger3:: lockall setvar VAR_TEMP_1, 3 goto RustboroCity_EventScript_ReturnGoods end -RustboroCity_EventScript_ReturnGoods:: @ 81E0C5B +RustboroCity_EventScript_ReturnGoods:: compare VAR_TEMP_1, 0 call_if_eq RustboroCity_EventScript_EmployeeFacePlayerUp2 compare VAR_TEMP_1, 1 @@ -626,11 +626,11 @@ RustboroCity_EventScript_ReturnGoods:: @ 81E0C5B releaseall end -RustboroCity_EventScript_BagFull:: @ 81E0CD3 +RustboroCity_EventScript_BagFull:: msgbox RustboroCity_Text_YoureLoadedWithItems, MSGBOX_DEFAULT return -RustboroCity_EventScript_EmployeeFacePlayerUp2:: @ 81E0CDC +RustboroCity_EventScript_EmployeeFacePlayerUp2:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestUp waitmovement 0 playse SE_PIN @@ -642,7 +642,7 @@ RustboroCity_EventScript_EmployeeFacePlayerUp2:: @ 81E0CDC waitmovement 0 return -RustboroCity_EventScript_EmployeeFacePlayerLeft2:: @ 81E0D08 +RustboroCity_EventScript_EmployeeFacePlayerLeft2:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestRight waitmovement 0 playse SE_PIN @@ -654,7 +654,7 @@ RustboroCity_EventScript_EmployeeFacePlayerLeft2:: @ 81E0D08 waitmovement 0 return -RustboroCity_EventScript_EmployeeFacePlayerDown2:: @ 81E0D34 +RustboroCity_EventScript_EmployeeFacePlayerDown2:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown waitmovement 0 playse SE_PIN @@ -666,7 +666,7 @@ RustboroCity_EventScript_EmployeeFacePlayerDown2:: @ 81E0D34 waitmovement 0 return -RustboroCity_EventScript_EmployeeApproachPlayerDown2:: @ 81E0D60 +RustboroCity_EventScript_EmployeeApproachPlayerDown2:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown waitmovement 0 playse SE_PIN @@ -680,7 +680,7 @@ RustboroCity_EventScript_EmployeeApproachPlayerDown2:: @ 81E0D60 waitmovement 0 return -RustboroCity_EventScript_EmployeeFacePlayerRight:: @ 81E0D96 +RustboroCity_EventScript_EmployeeFacePlayerRight:: applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 playse SE_PIN @@ -690,14 +690,14 @@ RustboroCity_EventScript_EmployeeFacePlayerRight:: @ 81E0D96 waitmovement 0 return -RustboroCity_EventScript_Rival:: @ 81E0DB8 +RustboroCity_EventScript_Rival:: lockall call_if_unset FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_FacePlayer waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_PlayRivalMusic:: @ 81E0DD1 +RustboroCity_EventScript_PlayRivalMusic:: checkplayergender compare VAR_RESULT, MALE goto_if_eq RustboroCity_EventScript_PlayMayMusic @@ -705,15 +705,15 @@ RustboroCity_EventScript_PlayRivalMusic:: @ 81E0DD1 goto_if_eq RustboroCity_EventScript_PlayBrendanMusic return -RustboroCity_EventScript_PlayMayMusic:: @ 81E0DE9 +RustboroCity_EventScript_PlayMayMusic:: playbgm MUS_ENCOUNTER_MAY, TRUE return -RustboroCity_EventScript_PlayBrendanMusic:: @ 81E0DEE +RustboroCity_EventScript_PlayBrendanMusic:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE return -RustboroCity_EventScript_RivalTrigger0:: @ 81E0DF3 +RustboroCity_EventScript_RivalTrigger0:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -729,7 +729,7 @@ RustboroCity_EventScript_RivalTrigger0:: @ 81E0DF3 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger1:: @ 81E0E33 +RustboroCity_EventScript_RivalTrigger1:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -745,7 +745,7 @@ RustboroCity_EventScript_RivalTrigger1:: @ 81E0E33 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger2:: @ 81E0E73 +RustboroCity_EventScript_RivalTrigger2:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -761,7 +761,7 @@ RustboroCity_EventScript_RivalTrigger2:: @ 81E0E73 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger3:: @ 81E0EB3 +RustboroCity_EventScript_RivalTrigger3:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -777,7 +777,7 @@ RustboroCity_EventScript_RivalTrigger3:: @ 81E0EB3 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger4:: @ 81E0EF3 +RustboroCity_EventScript_RivalTrigger4:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -793,7 +793,7 @@ RustboroCity_EventScript_RivalTrigger4:: @ 81E0EF3 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger5:: @ 81E0F33 +RustboroCity_EventScript_RivalTrigger5:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -809,7 +809,7 @@ RustboroCity_EventScript_RivalTrigger5:: @ 81E0F33 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger6:: @ 81E0F73 +RustboroCity_EventScript_RivalTrigger6:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -825,7 +825,7 @@ RustboroCity_EventScript_RivalTrigger6:: @ 81E0F73 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalTrigger7:: @ 81E0FB3 +RustboroCity_EventScript_RivalTrigger7:: lockall call RustboroCity_EventScript_PlayRivalMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown @@ -841,7 +841,7 @@ RustboroCity_EventScript_RivalTrigger7:: @ 81E0FB3 waitmovement 0 goto RustboroCity_EventScript_RivalEncounter -RustboroCity_EventScript_RivalEncounter:: @ 81E0FF3 +RustboroCity_EventScript_RivalEncounter:: checkplayergender compare VAR_RESULT, MALE goto_if_eq RustboroCity_EventScript_MayEncounter @@ -849,7 +849,7 @@ RustboroCity_EventScript_RivalEncounter:: @ 81E0FF3 goto_if_eq RustboroCity_EventScript_BrendanEncounter end -RustboroCity_EventScript_MayEncounter:: @ 81E100B +RustboroCity_EventScript_MayEncounter:: goto_if_set FLAG_DEFEATED_RIVAL_RUSTBORO, RustboroCity_EventScript_MayBrineyHint goto_if_set FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_MayAskToBattle setflag FLAG_MET_RIVAL_RUSTBORO @@ -873,7 +873,7 @@ RustboroCity_EventScript_MayEncounter:: @ 81E100B releaseall end -RustboroCity_EventScript_MayAskToBattle:: @ 81E1070 +RustboroCity_EventScript_MayAskToBattle:: setvar VAR_0x8008, 1 msgbox RustboroCity_Text_MayWantToBattle, MSGBOX_YESNO compare VAR_RESULT, YES @@ -882,7 +882,7 @@ RustboroCity_EventScript_MayAskToBattle:: @ 81E1070 releaseall end -RustboroCity_EventScript_BattleMay:: @ 81E1092 +RustboroCity_EventScript_BattleMay:: msgbox RustboroCity_Text_MayImNotGoingToLose, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, RustboroCity_EventScript_BattleMayTreecko @@ -890,37 +890,37 @@ RustboroCity_EventScript_BattleMay:: @ 81E1092 case 2, RustboroCity_EventScript_BattleMayMudkip end -RustboroCity_EventScript_MayBrineyHint:: @ 81E10C1 +RustboroCity_EventScript_MayBrineyHint:: msgbox RustboroCity_Text_MayMrBrineyHint, MSGBOX_DEFAULT compare VAR_0x8008, 0 call_if_eq RustboroCity_EventScript_RestoreBgm releaseall end -RustboroCity_EventScript_RestoreBgm:: @ 81E10D6 +RustboroCity_EventScript_RestoreBgm:: savebgm MUS_DUMMY fadedefaultbgm return -RustboroCity_EventScript_BattleMayTreecko:: @ 81E10DB +RustboroCity_EventScript_BattleMayTreecko:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TREECKO, RustboroCity_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_MayBrineyHint end -RustboroCity_EventScript_BattleMayTorchic:: @ 81E10EE +RustboroCity_EventScript_BattleMayTorchic:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_TORCHIC, RustboroCity_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_MayBrineyHint end -RustboroCity_EventScript_BattleMayMudkip:: @ 81E1101 +RustboroCity_EventScript_BattleMayMudkip:: trainerbattle_no_intro TRAINER_MAY_RUSTBORO_MUDKIP, RustboroCity_Text_MayDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_MayBrineyHint end -RustboroCity_EventScript_BrendanEncounter:: @ 81E1114 +RustboroCity_EventScript_BrendanEncounter:: goto_if_set FLAG_DEFEATED_RIVAL_RUSTBORO, RustboroCity_EventScript_BrendanBrineyHint goto_if_set FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_BrendanAskToBattle setflag FLAG_MET_RIVAL_RUSTBORO @@ -943,7 +943,7 @@ RustboroCity_EventScript_BrendanEncounter:: @ 81E1114 releaseall end -RustboroCity_EventScript_BrendanAskToBattle:: @ 81E1174 +RustboroCity_EventScript_BrendanAskToBattle:: msgbox RustboroCity_Text_BrendanWantToBattle, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq RustboroCity_EventScript_BattleBrendan @@ -951,7 +951,7 @@ RustboroCity_EventScript_BrendanAskToBattle:: @ 81E1174 releaseall end -RustboroCity_EventScript_BattleBrendan:: @ 81E1191 +RustboroCity_EventScript_BattleBrendan:: msgbox RustboroCity_Text_BrendanIWontGoEasy, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, RustboroCity_EventScript_BattleBrendanTreecko @@ -959,32 +959,32 @@ RustboroCity_EventScript_BattleBrendan:: @ 81E1191 case 2, RustboroCity_EventScript_BattleBrendanMudkip end -RustboroCity_EventScript_BrendanBrineyHint:: @ 81E11C0 +RustboroCity_EventScript_BrendanBrineyHint:: msgbox RustboroCity_Text_BrendanMrBrineyHint, MSGBOX_DEFAULT compare VAR_0x8008, 0 call_if_eq RustboroCity_EventScript_RestoreBgm releaseall end -RustboroCity_EventScript_BattleBrendanTreecko:: @ 81E11D5 +RustboroCity_EventScript_BattleBrendanTreecko:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TREECKO, RustboroCity_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_BrendanBrineyHint end -RustboroCity_EventScript_BattleBrendanTorchic:: @ 81E11E8 +RustboroCity_EventScript_BattleBrendanTorchic:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_TORCHIC, RustboroCity_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_BrendanBrineyHint end -RustboroCity_EventScript_BattleBrendanMudkip:: @ 81E11FB +RustboroCity_EventScript_BattleBrendanMudkip:: trainerbattle_no_intro TRAINER_BRENDAN_RUSTBORO_MUDKIP, RustboroCity_Text_BrendanDefeat setflag FLAG_DEFEATED_RIVAL_RUSTBORO goto RustboroCity_EventScript_BrendanBrineyHint end -RustboroCity_Movement_RivalApproachPlayer0: @ 81E120E +RustboroCity_Movement_RivalApproachPlayer0: walk_down walk_left walk_left @@ -993,7 +993,7 @@ RustboroCity_Movement_RivalApproachPlayer0: @ 81E120E walk_down step_end -RustboroCity_Movement_RivalApproachPlayer1: @ 81E1215 +RustboroCity_Movement_RivalApproachPlayer1: walk_down walk_left walk_left @@ -1001,38 +1001,38 @@ RustboroCity_Movement_RivalApproachPlayer1: @ 81E1215 walk_down step_end -RustboroCity_Movement_RivalApproachPlayer2: @ 81E121B +RustboroCity_Movement_RivalApproachPlayer2: walk_down walk_left walk_left walk_down step_end -RustboroCity_Movement_RivalApproachPlayer3: @ 81E1220 +RustboroCity_Movement_RivalApproachPlayer3: walk_down walk_left walk_down step_end -RustboroCity_Movement_RivalApproachPlayer4: @ 81E1224 +RustboroCity_Movement_RivalApproachPlayer4: walk_down walk_down step_end -RustboroCity_Movement_RivalApproachPlayer5: @ 81E1227 +RustboroCity_Movement_RivalApproachPlayer5: walk_down walk_right walk_down step_end -RustboroCity_Movement_RivalApproachPlayer6: @ 81E122B +RustboroCity_Movement_RivalApproachPlayer6: walk_down walk_right walk_right walk_down step_end -RustboroCity_Movement_RivalApproachPlayer7: @ 81E1230 +RustboroCity_Movement_RivalApproachPlayer7: walk_down walk_right walk_right @@ -1040,53 +1040,53 @@ RustboroCity_Movement_RivalApproachPlayer7: @ 81E1230 walk_down step_end -RustboroCity_EventScript_Boy1:: @ 81E1236 +RustboroCity_EventScript_Boy1:: msgbox RustboroCity_Text_YouCanHave2On2Battle, MSGBOX_NPC end -RustboroCity_Text_WeShortenItToDevon: @ 81E123F +RustboroCity_Text_WeShortenItToDevon: .string "The DEVON CORPORATION…\n" .string "We all just shorten it to DEVON.\p" .string "That company makes all sorts of\n" .string "convenient products.$" -RustboroCity_Text_SneakyLookingManWentAroundCorner: @ 81E12AC +RustboroCity_Text_SneakyLookingManWentAroundCorner: .string "Hm? A sneaky-looking man?\p" .string "Come to think of it, yes, a shady-\n" .string "looking guy went around the corner.$" -RustboroCity_Text_HaveYouChallengedGym: @ 81E130D +RustboroCity_Text_HaveYouChallengedGym: .string "Have you taken the POKéMON GYM\n" .string "challenge?\p" .string "When you get that shiny GYM BADGE\n" .string "in hand, I guess TRAINERS begin to\l" .string "realize what is required of them.$" -RustboroCity_Text_HeyThatsRustborosGymBadge: @ 81E139E +RustboroCity_Text_HeyThatsRustborosGymBadge: .string "Hey, that's RUSTBORO's GYM BADGE!\p" .string "Out of all the POKéMON GYM BADGES,\n" .string "RUSTBORO's is the coolest, I'd say.$" -RustboroCity_Text_YoureNewAroundHere: @ 81E1407 +RustboroCity_Text_YoureNewAroundHere: .string "Oh? Who might you be?\n" .string "You're a new face around these parts.\p" .string "Have you just transferred into the\n" .string "POKéMON TRAINER'S SCHOOL?$" -RustboroCity_Text_GymLeaderIsntEasyWithFire: @ 81E1480 +RustboroCity_Text_GymLeaderIsntEasyWithFire: .string "I challenged the GYM LEADER, but…\p" .string "It's not going to be easy winning with\n" .string "my FIRE-type POKéMON…\p" .string "FIRE-type POKéMON don't match up\n" .string "well against ROCK-type POKéMON…$" -RustboroCity_Text_MrBrineyWalksInTheTunnel: @ 81E1520 +RustboroCity_Text_MrBrineyWalksInTheTunnel: .string "The old sailor MR. BRINEY lives in\n" .string "a cottage by the sea.\p" .string "He goes for walks in the tunnel every\n" .string "so often.$" -RustboroCity_Text_MrBrineyLovesPeeko: @ 81E1589 +RustboroCity_Text_MrBrineyLovesPeeko: .string "The old sailor MR. BRINEY lives in\n" .string "a cottage by the sea.\p" .string "He said he was going shopping in\n" @@ -1094,40 +1094,40 @@ RustboroCity_Text_MrBrineyLovesPeeko: @ 81E1589 .string "That old sea dog, he must really love\n" .string "that PEEKO.$" -RustboroCity_Text_WowYouHavePokemon: @ 81E1633 +RustboroCity_Text_WowYouHavePokemon: .string "Wow, you have POKéMON with you, too.\p" .string "When I get bigger, I'm going to go\n" .string "places with POKéMON, too.$" -RustboroCity_Text_CatchRarePokemonIfIGoToSchool: @ 81E1695 +RustboroCity_Text_CatchRarePokemonIfIGoToSchool: .string "POKéMON TRAINER'S SCHOOL!\p" .string "If I go to this school, will I be able\n" .string "to catch rare POKéMON easily?$" -RustboroCity_Text_PokemonCanChangeLookFromExp: @ 81E16F4 +RustboroCity_Text_PokemonCanChangeLookFromExp: .string "If a POKéMON gains experience in\n" .string "battles, it can sometimes change in\l" .string "the way it looks.$" -RustboroCity_Text_PokemonChangeShape: @ 81E174B +RustboroCity_Text_PokemonChangeShape: .string "A POKéMON changes shape?\n" .string "If one did that, I would be shocked!$" -RustboroCity_Text_TradePokemonGrowFast: @ 81E1789 +RustboroCity_Text_TradePokemonGrowFast: .string "A POKéMON you get in a trade from\n" .string "someone grows fast.\p" .string "But if you don't have certain GYM\n" .string "BADGES, it may not obey you…$" -RustboroCity_Text_OutOfTheWay: @ 81E17FE +RustboroCity_Text_OutOfTheWay: .string "Get out!\n" .string "Out of the way!$" -RustboroCity_Text_WaitDontTakeMyGoods: @ 81E1817 +RustboroCity_Text_WaitDontTakeMyGoods: .string "Wait! Pleeeaaase!\p" .string "Don't take my GOODS!$" -RustboroCity_Text_HelpMeIWasRobbed: @ 81E183E +RustboroCity_Text_HelpMeIWasRobbed: .string "Oh, it's you!\p" .string "You're that fantastic TRAINER who\n" .string "helped me in PETALBURG WOODS!\p" @@ -1136,11 +1136,11 @@ RustboroCity_Text_HelpMeIWasRobbed: @ 81E183E .string "If I don't…\n" .string "I'm going to be in serious trouble.$" -RustboroCity_Text_ShadyCharacterTookOffTowardsTunnel: @ 81E1904 +RustboroCity_Text_ShadyCharacterTookOffTowardsTunnel: .string "That shady character, I think he took\n" .string "off towards the tunnel over there.$" -RustboroCity_Text_YouGotItThankYou: @ 81E194D +RustboroCity_Text_YouGotItThankYou: .string "Oh! How did it go?\n" .string "The DEVON GOODS?\p" .string "You did!\n" @@ -1149,15 +1149,15 @@ RustboroCity_Text_YouGotItThankYou: @ 81E194D .string "I know! As my thanks, I'll give you\n" .string "another GREAT BALL!$" -RustboroCity_Text_YoureLoadedWithItems: @ 81E19E5 +RustboroCity_Text_YoureLoadedWithItems: .string "You're loaded with items.\n" .string "I can't give you this GREAT BALL.$" -RustboroCity_Text_PleaseComeWithMe: @ 81E1A21 +RustboroCity_Text_PleaseComeWithMe: .string "Excuse me, please!\n" .string "Please come with me!$" -RustboroCity_Text_MayHiLetsRegister: @ 81E1A49 +RustboroCity_Text_MayHiLetsRegister: .string "MAY: Oh, hi, {PLAYER}{KUN}!\p" .string "You had a MATCH CALL feature put\n" .string "on your POKéNAV!\p" @@ -1165,11 +1165,11 @@ RustboroCity_Text_MayHiLetsRegister: @ 81E1A49 .string "contact one another anytime!\p" .string "… … … … … …$" -RustboroCity_Text_RegisteredMay: @ 81E1ADB +RustboroCity_Text_RegisteredMay: .string "Registered MAY\n" .string "in the POKéNAV.$" -RustboroCity_Text_MayPassedBrineyWantToBattle: @ 81E1AFA +RustboroCity_Text_MayPassedBrineyWantToBattle: .string "MAY: Oh, by the way, I passed\n" .string "MR. BRINEY in PETALBURG WOODS.\p" .string "I guess he's on his way home to his\n" @@ -1179,32 +1179,32 @@ RustboroCity_Text_MayPassedBrineyWantToBattle: @ 81E1AFA .string "So…\n" .string "How about a little battle?$" -RustboroCity_Text_MayOhHaventRaisedPokemonEnough: @ 81E1BD3 +RustboroCity_Text_MayOhHaventRaisedPokemonEnough: .string "MAY: Oh, what's the matter?\p" .string "Haven't you caught or raised your\n" .string "POKéMON very much?\p" .string "That's not very good for a TRAINER!$" -RustboroCity_Text_MayWantToBattle: @ 81E1C48 +RustboroCity_Text_MayWantToBattle: .string "MAY: So, what do you think?\n" .string "How about a little battle here?$" -RustboroCity_Text_MayImNotGoingToLose: @ 81E1C84 +RustboroCity_Text_MayImNotGoingToLose: .string "MAY: You just became a TRAINER,\n" .string "{PLAYER}{KUN}. I'm not going to lose!$" -RustboroCity_Text_MayDefeat: @ 81E1CC1 +RustboroCity_Text_MayDefeat: .string "Yikes!\n" .string "You're better than I expected!$" -RustboroCity_Text_MayMrBrineyHint: @ 81E1CE7 +RustboroCity_Text_MayMrBrineyHint: .string "MAY: Oh, by the way, MR. BRINEY, who\n" .string "I just passed…\p" .string "{PLAYER}{KUN}, you just moved here so you\n" .string "might not know this, but MR. BRINEY\l" .string "was once a revered seafarer.$" -RustboroCity_Text_BrendanHiLetsRegister: @ 81E1D7D +RustboroCity_Text_BrendanHiLetsRegister: .string "BRENDAN: Oh, hey, {PLAYER}!\p" .string "You had a MATCH CALL feature put\n" .string "on your POKéNAV! Cool!\p" @@ -1212,11 +1212,11 @@ RustboroCity_Text_BrendanHiLetsRegister: @ 81E1D7D .string "get in touch anytime!\p" .string "… … … … … …$" -RustboroCity_Text_RegisteredBrendan: @ 81E1E11 +RustboroCity_Text_RegisteredBrendan: .string "Registered BRENDAN\n" .string "in the POKéNAV.$" -RustboroCity_Text_BrendanPassedBrineyWantToBattle: @ 81E1E34 +RustboroCity_Text_BrendanPassedBrineyWantToBattle: .string "BRENDAN: By the way, {PLAYER}, I walked\n" .string "by MR. BRINEY in PETALBURG WOODS.\p" .string "I bet he was on his way home to his\n" @@ -1227,72 +1227,72 @@ RustboroCity_Text_BrendanPassedBrineyWantToBattle: @ 81E1E34 .string "Want to have a battle to test how\n" .string "far you've progressed?$" -RustboroCity_Text_BrendanNoConfidenceInPokemon: @ 81E1F2F +RustboroCity_Text_BrendanNoConfidenceInPokemon: .string "BRENDAN: What's the matter? Don't have\n" .string "any confidence in your POKéMON?$" -RustboroCity_Text_BrendanWantToBattle: @ 81E1F76 +RustboroCity_Text_BrendanWantToBattle: .string "BRENDAN: What's up?\n" .string "Want to have a battle with me?$" -RustboroCity_Text_BrendanIWontGoEasy: @ 81E1FA9 +RustboroCity_Text_BrendanIWontGoEasy: .string "BRENDAN: I know you just became\n" .string "a TRAINER, but I won't go easy!$" -RustboroCity_Text_BrendanDefeat: @ 81E1FE9 +RustboroCity_Text_BrendanDefeat: .string "Hmm…\n" .string "You're pretty good.$" -RustboroCity_Text_BrendanMrBrineyHint: @ 81E2002 +RustboroCity_Text_BrendanMrBrineyHint: .string "BRENDAN: By the way, you know\n" .string "MR. BRINEY? The guy I just passed?\p" .string "I bet you didn't know this, since you\n" .string "just moved here, {PLAYER}, but\l" .string "MR. BRINEY was once a great sailor.$" -RustboroCity_Text_TunnelNearingCompletion: @ 81E20A6 +RustboroCity_Text_TunnelNearingCompletion: .string "“Timesaving tunnel nearing\n" .string "completion!”\p" .string "…Is what it says on the sign, but\n" .string "there's also a big “X” splashed\l" .string "across it in red paint…$" -RustboroCity_Text_DevonCorpSign: @ 81E2128 +RustboroCity_Text_DevonCorpSign: .string "DEVON CORPORATION\p" .string "“For all your living needs, we make\n" .string "it all.”$" -RustboroCity_Text_GymSign: @ 81E2167 +RustboroCity_Text_GymSign: .string "RUSTBORO CITY POKéMON GYM\n" .string "LEADER: ROXANNE\p" .string "“The ROCK-loving honors student!”$" -RustboroCity_Text_DevonCorpBranchOfficeSign: @ 81E21B3 +RustboroCity_Text_DevonCorpBranchOfficeSign: .string "DEVON CORP. BRANCH OFFICE\p" .string "“Access limited to DEVON employees\n" .string "and authorized personnel.”$" -RustboroCity_Text_CitySign: @ 81E220B +RustboroCity_Text_CitySign: .string "RUSTBORO CITY\p" .string "“The city probing the integration of\n" .string "nature and science.”$" -RustboroCity_Text_TrainersSchoolSign: @ 81E2253 +RustboroCity_Text_TrainersSchoolSign: .string "POKéMON TRAINER'S SCHOOL\p" .string "“We'll teach you anything about\n" .string "POKéMON!”$" -RustboroCity_Text_CuttersHouse: @ 81E2296 +RustboroCity_Text_CuttersHouse: .string "CUTTER'S HOUSE$" -RustboroCity_Text_DevelopedNewPokenavFeature: @ 81E22A5 +RustboroCity_Text_DevelopedNewPokenavFeature: .string "I've been developing an added feature\n" .string "for the POKéNAV…\p" .string "And it turned out great!\p" .string "{PLAYER}, may I see that POKéNAV?\n" .string "The one our PRESIDENT gave you?$" -RustboroCity_Text_AddedMatchCallPleaseCallMrStone: @ 81E2331 +RustboroCity_Text_AddedMatchCallPleaseCallMrStone: .string "There you go, {PLAYER}!\p" .string "I added a new feature named\n" .string "MATCH CALL to your POKéNAV.\p" @@ -1304,14 +1304,14 @@ RustboroCity_Text_AddedMatchCallPleaseCallMrStone: @ 81E2331 .string "Test it out.\n" .string "Please give our PRESIDENT a call.$" -RustboroCity_Text_PleaseSelectPokenav: @ 81E2449 +RustboroCity_Text_PleaseSelectPokenav: .string "Please select the POKéNAV.$" -RustboroCity_Text_IdBetterGetBackToWork: @ 81E2464 +RustboroCity_Text_IdBetterGetBackToWork: .string "Okay, I'd better get back to work.\n" .string "Please take care, {PLAYER}!$" -RustboroCity_Text_YouCanHave2On2Battle: @ 81E249D +RustboroCity_Text_YouCanHave2On2Battle: .string "Did you know this?\p" .string "You can have a 2-on-2 battle even\n" .string "if you're not with another TRAINER.\p" diff --git a/data/maps/RustboroCity_CuttersHouse/scripts.inc b/data/maps/RustboroCity_CuttersHouse/scripts.inc index 9ee4fc57565c..f1d6030761c3 100644 --- a/data/maps/RustboroCity_CuttersHouse/scripts.inc +++ b/data/maps/RustboroCity_CuttersHouse/scripts.inc @@ -1,7 +1,7 @@ -RustboroCity_CuttersHouse_MapScripts:: @ 8215BD3 +RustboroCity_CuttersHouse_MapScripts:: .byte 0 -RustboroCity_CuttersHouse_EventScript_Cutter:: @ 8215BD4 +RustboroCity_CuttersHouse_EventScript_Cutter:: lock faceplayer goto_if_set FLAG_RECEIVED_HM01, RustboroCity_CuttersHouse_EventScript_ExplainCut @@ -12,16 +12,16 @@ RustboroCity_CuttersHouse_EventScript_Cutter:: @ 8215BD4 release end -RustboroCity_CuttersHouse_EventScript_ExplainCut:: @ 8215C00 +RustboroCity_CuttersHouse_EventScript_ExplainCut:: msgbox RustboroCity_CuttersHouse_Text_ExplainCut, MSGBOX_DEFAULT release end -RustboroCity_CuttersHouse_EventScript_Lass:: @ 8215C0A +RustboroCity_CuttersHouse_EventScript_Lass:: msgbox RustboroCity_CuttersHouse_Text_DadHelpedClearLandOfTrees, MSGBOX_NPC end -RustboroCity_CuttersHouse_Text_YouCanPutThisHMToGoodUse: @ 8215C13 +RustboroCity_CuttersHouse_Text_YouCanPutThisHMToGoodUse: .string "That determined expression…\n" .string "That limber way you move…\l" .string "And your well-trained POKéMON…\p" @@ -33,7 +33,7 @@ RustboroCity_CuttersHouse_Text_YouCanPutThisHMToGoodUse: @ 8215C13 .string "No need to be modest or shy.\n" .string "Go on, take it!$" -RustboroCity_CuttersHouse_Text_ExplainCut: @ 8215D33 +RustboroCity_CuttersHouse_Text_ExplainCut: .string "That HIDDEN MACHINE, or HM for\n" .string "short, is CUT.\p" .string "An HM move is one that can be used\n" @@ -44,7 +44,7 @@ RustboroCity_CuttersHouse_Text_ExplainCut: @ 8215D33 .string "And, unlike a TM, an HM can be used\n" .string "more than once.$" -RustboroCity_CuttersHouse_Text_DadHelpedClearLandOfTrees: @ 8215E39 +RustboroCity_CuttersHouse_Text_DadHelpedClearLandOfTrees: .string "When they were expanding the city of\n" .string "RUSTBORO, my dad helped out.\p" .string "He made his POKéMON use CUT to clear\n" diff --git a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc index 80e8f3cf1ae1..11953d33868d 100644 --- a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc @@ -1,19 +1,19 @@ .set LOCALID_STAIR_GUARD, 2 -RustboroCity_DevonCorp_1F_MapScripts:: @ 8211245 +RustboroCity_DevonCorp_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_DevonCorp_1F_OnTransition .byte 0 -RustboroCity_DevonCorp_1F_OnTransition: @ 821124B +RustboroCity_DevonCorp_1F_OnTransition: call_if_unset FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_BlockStairs end -RustboroCity_DevonCorp_1F_EventScript_BlockStairs:: @ 8211255 +RustboroCity_DevonCorp_1F_EventScript_BlockStairs:: setobjectxyperm LOCALID_STAIR_GUARD, 14, 2 setobjectmovementtype LOCALID_STAIR_GUARD, MOVEMENT_TYPE_FACE_DOWN return -RustboroCity_DevonCorp_1F_EventScript_Employee:: @ 8211261 +RustboroCity_DevonCorp_1F_EventScript_Employee:: lock faceplayer goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_GoodsRecovered @@ -22,17 +22,17 @@ RustboroCity_DevonCorp_1F_EventScript_Employee:: @ 8211261 release end -RustboroCity_DevonCorp_1F_EventScript_RobberWasntBright:: @ 821127F +RustboroCity_DevonCorp_1F_EventScript_RobberWasntBright:: msgbox RustboroCity_DevonCorp_1F_Text_RobberWasntVeryBright, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_GoodsRecovered:: @ 8211289 +RustboroCity_DevonCorp_1F_EventScript_GoodsRecovered:: msgbox RustboroCity_DevonCorp_1F_Text_SoundsLikeStolenGoodsRecovered, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_StairGuard:: @ 8211293 +RustboroCity_DevonCorp_1F_EventScript_StairGuard:: lock faceplayer goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_AlwaysWelcome @@ -42,17 +42,17 @@ RustboroCity_DevonCorp_1F_EventScript_StairGuard:: @ 8211293 release end -RustboroCity_DevonCorp_1F_EventScript_AlwaysWelcome:: @ 82112BA +RustboroCity_DevonCorp_1F_EventScript_AlwaysWelcome:: msgbox RustboroCity_DevonCorp_1F_Text_YoureAlwaysWelcomeHere, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_GotRobbed:: @ 82112C4 +RustboroCity_DevonCorp_1F_EventScript_GotRobbed:: msgbox RustboroCity_DevonCorp_1F_Text_HowCouldWeGetRobbed, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_Greeter:: @ 82112CE +RustboroCity_DevonCorp_1F_EventScript_Greeter:: lock faceplayer goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_WelcomeToDevonCorp @@ -62,64 +62,64 @@ RustboroCity_DevonCorp_1F_EventScript_Greeter:: @ 82112CE release end -RustboroCity_DevonCorp_1F_EventScript_WelcomeToDevonCorp:: @ 82112F5 +RustboroCity_DevonCorp_1F_EventScript_WelcomeToDevonCorp:: msgbox RustboroCity_DevonCorp_1F_Text_WelcomeToDevonCorp, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_StaffGotRobbed:: @ 82112FF +RustboroCity_DevonCorp_1F_EventScript_StaffGotRobbed:: msgbox RustboroCity_DevonCorp_1F_Text_StaffGotRobbed, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_1F_EventScript_RocksMetalDisplay:: @ 8211309 +RustboroCity_DevonCorp_1F_EventScript_RocksMetalDisplay:: msgbox RustboroCity_DevonCorp_1F_Text_RocksMetalDisplay, MSGBOX_SIGN end -RustboroCity_DevonCorp_1F_EventScript_ProductsDisplay:: @ 8211312 +RustboroCity_DevonCorp_1F_EventScript_ProductsDisplay:: msgbox RustboroCity_DevonCorp_1F_Text_ProductDisplay, MSGBOX_SIGN end -RustboroCity_DevonCorp_1F_Text_WelcomeToDevonCorp: @ 821131B +RustboroCity_DevonCorp_1F_Text_WelcomeToDevonCorp: .string "Hello and welcome to the DEVON\n" .string "CORPORATION.\p" .string "We're proud producers of items and\n" .string "medicine that enhance your life.$" -RustboroCity_DevonCorp_1F_Text_StaffGotRobbed: @ 821138B +RustboroCity_DevonCorp_1F_Text_StaffGotRobbed: .string "One of our research staff stupidly\n" .string "got robbed of an important parcel.$" -RustboroCity_DevonCorp_1F_Text_ThoseShoesAreOurProduct: @ 82113D1 +RustboroCity_DevonCorp_1F_Text_ThoseShoesAreOurProduct: .string "Hey, those RUNNING SHOES!\n" .string "They're one of our products!\p" .string "It makes me happy when I see someone\n" .string "using something we made.$" -RustboroCity_DevonCorp_1F_Text_RobberWasntVeryBright: @ 8211446 +RustboroCity_DevonCorp_1F_Text_RobberWasntVeryBright: .string "That stolen parcel…\p" .string "Well, sure it's important, but it's not\n" .string "anything that anyone can use.\p" .string "In my estimation, that robber must not\n" .string "have been very bright.$" -RustboroCity_DevonCorp_1F_Text_SoundsLikeStolenGoodsRecovered: @ 82114DE +RustboroCity_DevonCorp_1F_Text_SoundsLikeStolenGoodsRecovered: .string "It sounds like they've recovered\n" .string "the ripped-off DEVON GOODS.$" -RustboroCity_DevonCorp_1F_Text_OnlyAuthorizedPeopleEnter: @ 821151B +RustboroCity_DevonCorp_1F_Text_OnlyAuthorizedPeopleEnter: .string "I'm sorry, only authorized people\n" .string "are allowed to enter here.$" -RustboroCity_DevonCorp_1F_Text_HowCouldWeGetRobbed: @ 8211558 +RustboroCity_DevonCorp_1F_Text_HowCouldWeGetRobbed: .string "It's beyond stupid.\n" .string "How could we get robbed?$" -RustboroCity_DevonCorp_1F_Text_YoureAlwaysWelcomeHere: @ 8211585 +RustboroCity_DevonCorp_1F_Text_YoureAlwaysWelcomeHere: .string "Hi, there!\n" .string "You're always welcome here!$" -RustboroCity_DevonCorp_1F_Text_RocksMetalDisplay: @ 82115AC +RustboroCity_DevonCorp_1F_Text_RocksMetalDisplay: .string "Samples of rocks and metal are\n" .string "displayed in the glass case.\p" .string "There's a panel with some writing\n" @@ -133,7 +133,7 @@ RustboroCity_DevonCorp_1F_Text_RocksMetalDisplay: @ 82115AC .string "“DEVON is now a manufacturer of a wide\n" .string "range of industrial products.”$" -RustboroCity_DevonCorp_1F_Text_ProductDisplay: @ 8211722 +RustboroCity_DevonCorp_1F_Text_ProductDisplay: .string "Prototypes and test products fill\n" .string "the glass display case.\p" .string "There's a panel with a description…\p" diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index 03396cc8fb15..326cd946e692 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -1,19 +1,19 @@ .set LOCALID_FOSSIL_SCIENTIST, 5 -RustboroCity_DevonCorp_2F_MapScripts:: @ 8211857 +RustboroCity_DevonCorp_2F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_DevonCorp_2F_OnTransition .byte 0 -RustboroCity_DevonCorp_2F_OnTransition: @ 821185D +RustboroCity_DevonCorp_2F_OnTransition: compare VAR_FOSSIL_RESURRECTION_STATE, 1 call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady end -RustboroCity_DevonCorp_2F_EventScript_SetFossilReady:: @ 8211869 +RustboroCity_DevonCorp_2F_EventScript_SetFossilReady:: setvar VAR_FOSSIL_RESURRECTION_STATE, 2 return -RustboroCity_DevonCorp_2F_EventScript_TalkToPokemonScientist:: @ 821186F +RustboroCity_DevonCorp_2F_EventScript_TalkToPokemonScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -22,7 +22,7 @@ RustboroCity_DevonCorp_2F_EventScript_TalkToPokemonScientist:: @ 821186F release end -RustboroCity_DevonCorp_2F_EventScript_BallScientist:: @ 8211886 +RustboroCity_DevonCorp_2F_EventScript_BallScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -32,12 +32,12 @@ RustboroCity_DevonCorp_2F_EventScript_BallScientist:: @ 8211886 release end -RustboroCity_DevonCorp_2F_EventScript_DevelopedBalls:: @ 82118A6 +RustboroCity_DevonCorp_2F_EventScript_DevelopedBalls:: msgbox RustboroCity_DevonCorp_2F_Text_WeFinallyMadeNewBalls, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_2F_EventScript_PokenavScientist:: @ 82118B0 +RustboroCity_DevonCorp_2F_EventScript_PokenavScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -47,12 +47,12 @@ RustboroCity_DevonCorp_2F_EventScript_PokenavScientist:: @ 82118B0 release end -RustboroCity_DevonCorp_2F_EventScript_HasPokenav:: @ 82118D0 +RustboroCity_DevonCorp_2F_EventScript_HasPokenav:: msgbox RustboroCity_DevonCorp_2F_Text_WowThatsAPokenav, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_2F_EventScript_PokemonDreamsScientist:: @ 82118DA +RustboroCity_DevonCorp_2F_EventScript_PokemonDreamsScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -61,7 +61,7 @@ RustboroCity_DevonCorp_2F_EventScript_PokemonDreamsScientist:: @ 82118DA release end -RustboroCity_DevonCorp_2F_EventScript_FossilScientist:: @ 82118F1 +RustboroCity_DevonCorp_2F_EventScript_FossilScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 2 @@ -79,7 +79,7 @@ RustboroCity_DevonCorp_2F_EventScript_FossilScientist:: @ 82118F1 end @ This whole section has needless duplication and could be condensed considerably -RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: @ 8211933 +RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: closemessage playse SE_PIN applymovement LOCALID_FOSSIL_SCIENTIST, Common_Movement_ExclamationMark @@ -95,7 +95,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: @ 8211933 goto RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil end -RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil:: @ 8211974 +RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil:: bufferitemname 0, ITEM_ROOT_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher, MSGBOX_DEFAULT removeitem ITEM_ROOT_FOSSIL @@ -104,7 +104,7 @@ RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil:: @ 8211974 release end -RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: @ 8211991 +RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: closemessage playse SE_PIN applymovement LOCALID_FOSSIL_SCIENTIST, Common_Movement_ExclamationMark @@ -120,7 +120,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: @ 8211991 goto RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil end -RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil:: @ 82119D2 +RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil:: bufferitemname 0, ITEM_CLAW_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher, MSGBOX_DEFAULT removeitem ITEM_CLAW_FOSSIL @@ -129,36 +129,36 @@ RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil:: @ 82119D2 release end -RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil:: @ 82119EF +RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil:: msgbox RustboroCity_DevonCorp_2F_Text_OhIsThatSo, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_2F_EventScript_StillRegenerating:: @ 82119F9 +RustboroCity_DevonCorp_2F_EventScript_StillRegenerating:: msgbox RustboroCity_DevonCorp_2F_Text_FossilRegeneratorTakesTime, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_2F_EventScript_FossilMonReady:: @ 8211A03 +RustboroCity_DevonCorp_2F_EventScript_FossilMonReady:: compare VAR_WHICH_FOSSIL_REVIVED, 1 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_LileepReady compare VAR_WHICH_FOSSIL_REVIVED, 2 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_AnorithReady end -RustboroCity_DevonCorp_2F_EventScript_LileepReady:: @ 8211A1A +RustboroCity_DevonCorp_2F_EventScript_LileepReady:: bufferspeciesname 1, SPECIES_LILEEP msgbox RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife, MSGBOX_DEFAULT goto RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep end -RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: @ 8211A2C +RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: bufferspeciesname 1, SPECIES_ANORITH msgbox RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife, MSGBOX_DEFAULT goto RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith end -RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: @ 8211A3E +RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: setvar VAR_TEMP_1, SPECIES_LILEEP givemon SPECIES_LILEEP, 20, ITEM_NONE compare VAR_RESULT, 0 @@ -168,7 +168,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: @ 8211A3E goto Common_EventScript_NoMoreRoomForPokemon end -RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty:: @ 8211A6E +RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -178,7 +178,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty:: @ 8211A6E goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep end -RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC:: @ 8211A96 +RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -187,12 +187,12 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC:: @ 8211A96 goto RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC end -RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC:: @ 8211AB9 +RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC:: call Common_EventScript_TransferredToPC goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep end -RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare:: @ 8211AC4 +RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare:: bufferspeciesname 1, SPECIES_LILEEP playfanfare MUS_OBTAIN_ITEM message RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher @@ -201,13 +201,13 @@ RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare:: @ 8211AC4 bufferspeciesname 0, SPECIES_LILEEP return -RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: @ 8211AD7 +RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: setvar VAR_FOSSIL_RESURRECTION_STATE, 0 setflag FLAG_RECEIVED_REVIVED_FOSSIL_MON release end -RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: @ 8211AE1 +RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: setvar VAR_TEMP_1, SPECIES_ANORITH givemon SPECIES_ANORITH, 20, ITEM_NONE compare VAR_RESULT, 0 @@ -217,7 +217,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: @ 8211AE1 goto Common_EventScript_NoMoreRoomForPokemon end -RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty:: @ 8211B11 +RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -227,7 +227,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty:: @ 8211B11 goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith end -RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC:: @ 8211B39 +RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO compare VAR_RESULT, NO @@ -236,12 +236,12 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC:: @ 8211B39 goto RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC end -RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC:: @ 8211B5C +RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC:: call Common_EventScript_TransferredToPC goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith end -RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare:: @ 8211B67 +RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare:: bufferspeciesname 1, SPECIES_ANORITH playfanfare MUS_OBTAIN_ITEM message RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher @@ -250,13 +250,13 @@ RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare:: @ 8211B67 bufferspeciesname 0, SPECIES_ANORITH return -RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith:: @ 8211B7A +RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith:: setvar VAR_FOSSIL_RESURRECTION_STATE, 0 setflag FLAG_RECEIVED_REVIVED_FOSSIL_MON release end -RustboroCity_DevonCorp_2F_EventScript_ChooseFossil:: @ 8211B84 +RustboroCity_DevonCorp_2F_EventScript_ChooseFossil:: message RustboroCity_DevonCorp_2F_Text_TwoFossilsPickOne waitmessage multichoice 17, 6, MULTI_FOSSIL, FALSE @@ -267,19 +267,19 @@ RustboroCity_DevonCorp_2F_EventScript_ChooseFossil:: @ 8211B84 case MULTI_B_PRESSED, RustboroCity_DevonCorp_2F_EventScript_CancelFossilSelect end -RustboroCity_DevonCorp_2F_EventScript_ChooseClawFossil:: @ 8211BC1 +RustboroCity_DevonCorp_2F_EventScript_ChooseClawFossil:: goto RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil end -RustboroCity_DevonCorp_2F_EventScript_ChooseRootFossil:: @ 8211BC7 +RustboroCity_DevonCorp_2F_EventScript_ChooseRootFossil:: goto RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil end -RustboroCity_DevonCorp_2F_EventScript_CancelFossilSelect:: @ 8211BCD +RustboroCity_DevonCorp_2F_EventScript_CancelFossilSelect:: release end -RustboroCity_DevonCorp_2F_EventScript_MatchCallScientist:: @ 8211BCF +RustboroCity_DevonCorp_2F_EventScript_MatchCallScientist:: lock faceplayer compare VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -290,22 +290,22 @@ RustboroCity_DevonCorp_2F_EventScript_MatchCallScientist:: @ 8211BCF release end -RustboroCity_DevonCorp_2F_EventScript_WorkOnNext:: @ 8211BF1 +RustboroCity_DevonCorp_2F_EventScript_WorkOnNext:: msgbox RustboroCity_DevonCorp_2F_Text_WhatToWorkOnNext, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_2F_Text_DeviceForTalkingToPokemon: @ 8211BFB +RustboroCity_DevonCorp_2F_Text_DeviceForTalkingToPokemon: .string "We're developing a device for talking\n" .string "with POKéMON.\p" .string "But we haven't had much success…$" -RustboroCity_DevonCorp_2F_Text_DevelopingNewBalls: @ 8211C50 +RustboroCity_DevonCorp_2F_Text_DevelopingNewBalls: .string "I'm developing new kinds of\n" .string "POKé BALLS…\p" .string "But I haven't made much headway…$" -RustboroCity_DevonCorp_2F_Text_WeFinallyMadeNewBalls: @ 8211C99 +RustboroCity_DevonCorp_2F_Text_WeFinallyMadeNewBalls: .string "We finally made new kinds of\n" .string "POKé BALLS!\p" .string "The REPEAT BALL makes it easier to\n" @@ -316,12 +316,12 @@ RustboroCity_DevonCorp_2F_Text_WeFinallyMadeNewBalls: @ 8211C99 .string "the DEVON CORPORATION.\p" .string "Please give them a try!$" -RustboroCity_DevonCorp_2F_Text_IMadePokenav: @ 8211D9F +RustboroCity_DevonCorp_2F_Text_IMadePokenav: .string "I made the POKéNAV!\p" .string "As an engineer, I feel blessed to have\n" .string "made something so great!$" -RustboroCity_DevonCorp_2F_Text_WowThatsAPokenav: @ 8211DF3 +RustboroCity_DevonCorp_2F_Text_WowThatsAPokenav: .string "Oh, wow!\n" .string "That's a POKéNAV!\p" .string "It came about as a result of our\n" @@ -332,18 +332,18 @@ RustboroCity_DevonCorp_2F_Text_WowThatsAPokenav: @ 8211DF3 .string "No, no. I think you'll find out just by\n" .string "trying the POKéNAV out.$" -RustboroCity_DevonCorp_2F_Text_DeviceToVisualizePokemonDreams: @ 8211EE0 +RustboroCity_DevonCorp_2F_Text_DeviceToVisualizePokemonDreams: .string "I'm trying to develop a device that\n" .string "visually reproduces the dreams of\l" .string "POKéMON…\p" .string "But it's not going well.$" -RustboroCity_DevonCorp_2F_Text_DevelopDeviceToResurrectFossils: @ 8211F48 +RustboroCity_DevonCorp_2F_Text_DevelopDeviceToResurrectFossils: .string "I've been trying to develop a device\n" .string "that resurrects POKéMON from fossils…\p" .string "And, it's working!$" -RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife: @ 8211FA6 +RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife: .string "Wait! That thing you have there…\n" .string "Is that a POKéMON fossil?\p" .string "Would you like to bring that POKéMON\n" @@ -351,12 +351,12 @@ RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife: @ 8211FA6 .string "I can with my newly developed\n" .string "FOSSIL REGENERATOR.$" -RustboroCity_DevonCorp_2F_Text_OhIsThatSo: @ 8212046 +RustboroCity_DevonCorp_2F_Text_OhIsThatSo: .string "Oh, is that so?\p" .string "DEVON's technological expertise\n" .string "is outstanding, I tell you.$" -RustboroCity_DevonCorp_2F_Text_TwoFossilsPickOne: @ 8212092 +RustboroCity_DevonCorp_2F_Text_TwoFossilsPickOne: .string "Oh, now that's a surprise!\n" .string "You have not one, but two, fossils?\p" .string "Unfortunately, my machine can only\n" @@ -364,13 +364,13 @@ RustboroCity_DevonCorp_2F_Text_TwoFossilsPickOne: @ 8212092 .string "Would you like to pick one of your\n" .string "fossils for regeneration?$" -RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher: @ 8212153 +RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher: .string "Excellent!\n" .string "Let's do this right away.\p" .string "{PLAYER} handed the {STR_VAR_1} to\n" .string "the DEVON RESEARCHER.$" -RustboroCity_DevonCorp_2F_Text_FossilRegeneratorTakesTime: @ 82121A2 +RustboroCity_DevonCorp_2F_Text_FossilRegeneratorTakesTime: .string "The FOSSIL REGENERATOR, which I made,\n" .string "is incredible.\p" .string "But it has one drawback--it takes\n" @@ -378,28 +378,28 @@ RustboroCity_DevonCorp_2F_Text_FossilRegeneratorTakesTime: @ 82121A2 .string "So, uh… How about you go for a stroll\n" .string "and look around for a while?$" -RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife: @ 8212251 +RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife: .string "Thanks for waiting!\p" .string "Your fossilized POKéMON has been\n" .string "brought back to life!\p" .string "The fossil was an ancient POKéMON.\n" .string "{STR_VAR_2}, it was!$" -RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher: @ 82122CB +RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher: .string "{PLAYER} received {STR_VAR_2} from\n" .string "the DEVON RESEARCHER.$" @ Unused -RustboroCity_DevonCorp_2F_Text_TooManyPokemon: @ 82122F5 +RustboroCity_DevonCorp_2F_Text_TooManyPokemon: .string "Uh-oh, you've got too many POKéMON.\n" .string "You have no room for this one.$" -RustboroCity_DevonCorp_2F_Text_DevelopNewPokenavFeature: @ 8212338 +RustboroCity_DevonCorp_2F_Text_DevelopNewPokenavFeature: .string "I'm trying to develop a new feature\n" .string "for the POKéNAV…\p" .string "But it's not going well.$" -RustboroCity_DevonCorp_2F_Text_WhatToWorkOnNext: @ 8212386 +RustboroCity_DevonCorp_2F_Text_WhatToWorkOnNext: .string "Well, now what shall I work on\n" .string "developing next?\p" .string "Our company allows us to make our\n" diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc index 9d4c69cd9c14..cfd6709983e1 100644 --- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc @@ -1,34 +1,34 @@ .set LOCALID_DEVON_EMPLOYEE, 2 -RustboroCity_DevonCorp_3F_MapScripts:: @ 821242D +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 map_script MAP_SCRIPT_ON_FRAME_TABLE, RustboroCity_DevonCorp_3F_OnFrame .byte 0 -RustboroCity_DevonCorp_3F_OnTransition: @ 821243D +RustboroCity_DevonCorp_3F_OnTransition: compare VAR_DEVON_CORP_3F_STATE, 0 call_if_eq RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos end -RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos:: @ 8212449 +RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos:: setobjectxyperm LOCALID_DEVON_EMPLOYEE, 3, 2 setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_LEFT return -RustboroCity_DevonCorp_3F_OnWarp: @ 8212455 +RustboroCity_DevonCorp_3F_OnWarp: map_script_2 VAR_DEVON_CORP_3F_STATE, 0, RustboroCity_DevonCorp_3F_EventScript_PlayerFaceEast .2byte 0 -RustboroCity_DevonCorp_3F_EventScript_PlayerFaceEast:: @ 821245F +RustboroCity_DevonCorp_3F_EventScript_PlayerFaceEast:: turnobject OBJ_EVENT_ID_PLAYER, DIR_EAST end -RustboroCity_DevonCorp_3F_OnFrame: @ 8212464 +RustboroCity_DevonCorp_3F_OnFrame: map_script_2 VAR_DEVON_CORP_3F_STATE, 0, RustboroCity_DevonCorp_3F_EventScript_MeetPresident .2byte 0 -RustboroCity_DevonCorp_3F_EventScript_MeetPresident:: @ 821246E +RustboroCity_DevonCorp_3F_EventScript_MeetPresident:: lockall msgbox RustboroCity_DevonCorp_3F_Text_ThisIs3rdFloorWaitHere, MSGBOX_DEFAULT closemessage @@ -74,14 +74,14 @@ RustboroCity_DevonCorp_3F_EventScript_MeetPresident:: @ 821246E releaseall end -RustboroCity_DevonCorp_3F_Movement_Unused: @ 821252F +RustboroCity_DevonCorp_3F_Movement_Unused: walk_up walk_up walk_up walk_in_place_fastest_left step_end -RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident: @ 8212534 +RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident: walk_right walk_right walk_right @@ -98,12 +98,12 @@ RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident: @ 8212534 walk_in_place_fastest_left step_end -RustboroCity_DevonCorp_3F_Movement_EmployeeFaceDesk: @ 8212543 +RustboroCity_DevonCorp_3F_Movement_EmployeeFaceDesk: delay_16 walk_in_place_fastest_down step_end -RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen: @ 8212546 +RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen: walk_right walk_right walk_right @@ -114,7 +114,7 @@ RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen: @ 8212546 walk_right step_end -RustboroCity_DevonCorp_3F_Movement_EmployeeReturnToPlayer: @ 821254F +RustboroCity_DevonCorp_3F_Movement_EmployeeReturnToPlayer: walk_left walk_left walk_left @@ -125,7 +125,7 @@ RustboroCity_DevonCorp_3F_Movement_EmployeeReturnToPlayer: @ 821254F walk_left step_end -RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident: @ 8212558 +RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident: walk_right walk_right walk_right @@ -141,7 +141,7 @@ RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident: @ 8212558 walk_right step_end -RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk: @ 8212566 +RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk: delay_16 delay_16 walk_down @@ -149,7 +149,7 @@ RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk: @ 8212566 walk_in_place_fastest_right step_end -RustboroCity_DevonCorp_3F_EventScript_MrStone:: @ 821256C +RustboroCity_DevonCorp_3F_EventScript_MrStone:: lock faceplayer goto_if_set FLAG_RECEIVED_EXP_SHARE, RustboroCity_DevonCorp_3F_EventScript_MrStoneAfterFavor @@ -161,7 +161,7 @@ RustboroCity_DevonCorp_3F_EventScript_MrStone:: @ 821256C release end -RustboroCity_DevonCorp_3F_EventScript_GiveExpShare:: @ 8212595 +RustboroCity_DevonCorp_3F_EventScript_GiveExpShare:: msgbox RustboroCity_DevonCorp_3F_Text_ThankYouForDeliveringLetter, MSGBOX_DEFAULT giveitem ITEM_EXP_SHARE compare VAR_RESULT, FALSE @@ -174,7 +174,7 @@ RustboroCity_DevonCorp_3F_EventScript_GiveExpShare:: @ 8212595 release end -RustboroCity_DevonCorp_3F_EventScript_MrStoneAfterFavor:: @ 82125CC +RustboroCity_DevonCorp_3F_EventScript_MrStoneAfterFavor:: msgbox RustboroCity_DevonCorp_3F_Text_NotFamiliarWithTrends, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -182,7 +182,7 @@ RustboroCity_DevonCorp_3F_EventScript_MrStoneAfterFavor:: @ 82125CC release end -RustboroCity_DevonCorp_3F_EventScript_Employee:: @ 82125E1 +RustboroCity_DevonCorp_3F_EventScript_Employee:: lock faceplayer goto_if_set FLAG_RECEIVED_REPEAT_BALL, RustboroCity_DevonCorp_3F_EventScript_EmployeeBalls @@ -190,16 +190,16 @@ RustboroCity_DevonCorp_3F_EventScript_Employee:: @ 82125E1 release end -RustboroCity_DevonCorp_3F_EventScript_EmployeeBalls:: @ 82125F6 +RustboroCity_DevonCorp_3F_EventScript_EmployeeBalls:: msgbox RustboroCity_DevonCorp_3F_Text_RepeatAndTimerHugelyPopular, MSGBOX_DEFAULT release end -RustboroCity_DevonCorp_3F_EventScript_RareRocksDisplay:: @ 8212600 +RustboroCity_DevonCorp_3F_EventScript_RareRocksDisplay:: msgbox RustboroCity_DevonCorp_3F_Text_RareRocksDisplay, MSGBOX_SIGN end -RustboroCity_DevonCorp_3F_Text_MrStoneIHaveFavor: @ 8212609 +RustboroCity_DevonCorp_3F_Text_MrStoneIHaveFavor: .string "I'm MR. STONE, the PRESIDENT of\n" .string "the DEVON CORPORATION.\p" .string "I'd just got word about you!\p" @@ -214,17 +214,17 @@ RustboroCity_DevonCorp_3F_Text_MrStoneIHaveFavor: @ 8212609 .string "I was hoping that you'd deliver a\n" .string "LETTER to STEVEN in DEWFORD.$" -RustboroCity_DevonCorp_3F_Text_MrStoneWantYouToHaveThis: @ 821277C +RustboroCity_DevonCorp_3F_Text_MrStoneWantYouToHaveThis: .string "MR. STONE: Now, you should know that\n" .string "I am a great PRESIDENT.\p" .string "So, I'd never be so cheap as to ask\n" .string "a favor for nothing in return.\p" .string "That's why I want you to have this!$" -RustboroCity_DevonCorp_3F_Text_ReceivedPokenav: @ 8212820 +RustboroCity_DevonCorp_3F_Text_ReceivedPokenav: .string "{PLAYER} received a POKéNAV.$" -RustboroCity_DevonCorp_3F_Text_MrStoneExplainPokenavRestUp: @ 8212837 +RustboroCity_DevonCorp_3F_Text_MrStoneExplainPokenavRestUp: .string "MR. STONE: That device…\p" .string "It's a POKéMON NAVIGATOR, or POKéNAV\n" .string "for short.\p" @@ -239,20 +239,20 @@ RustboroCity_DevonCorp_3F_Text_MrStoneExplainPokenavRestUp: @ 8212837 .string "I think it would be best if you rested\n" .string "up before you go on your way.$" -RustboroCity_DevonCorp_3F_Text_MrStoneGoWithCautionAndCare: @ 82129D2 +RustboroCity_DevonCorp_3F_Text_MrStoneGoWithCautionAndCare: .string "MR. STONE: Well, then, {PLAYER}{KUN},\n" .string "go with caution and care!$" -RustboroCity_DevonCorp_3F_Text_CountingOnYou: @ 8212A09 +RustboroCity_DevonCorp_3F_Text_CountingOnYou: .string "MR. STONE: I'm counting on you!$" -RustboroCity_DevonCorp_3F_Text_ThankYouForDeliveringLetter: @ 8212A29 +RustboroCity_DevonCorp_3F_Text_ThankYouForDeliveringLetter: .string "MR. STONE: You delivered my LETTER?\n" .string "Thank you kindly!\p" .string "This is my way of thanking you.\n" .string "It should help you, a TRAINER.$" -RustboroCity_DevonCorp_3F_Text_ExplainExpShare: @ 8212A9E +RustboroCity_DevonCorp_3F_Text_ExplainExpShare: .string "MR. STONE: A POKéMON holding that\n" .string "EXP. SHARE will be given some of the\l" .string "EXP Points from battle.\p" @@ -261,7 +261,7 @@ RustboroCity_DevonCorp_3F_Text_ExplainExpShare: @ 8212A9E .string "I would say EXP. SHARE is quite useful\n" .string "for raising weak POKéMON.$" -RustboroCity_DevonCorp_3F_Text_NotFamiliarWithTrends: @ 8212B78 +RustboroCity_DevonCorp_3F_Text_NotFamiliarWithTrends: .string "MR. STONE: Since my youth, I've immersed\n" .string "myself in work.\p" .string "Consequently, I'm not familiar with\n" @@ -269,7 +269,7 @@ RustboroCity_DevonCorp_3F_Text_NotFamiliarWithTrends: @ 8212B78 .string "But do young people all want to be\n" .string "TRAINERS in the POKéMON LEAGUE?$" -RustboroCity_DevonCorp_3F_Text_ThisIs3rdFloorWaitHere: @ 8212C37 +RustboroCity_DevonCorp_3F_Text_ThisIs3rdFloorWaitHere: .string "This is the DEVON CORPORATION's\n" .string "third floor.\p" .string "Our PRESIDENT's OFFICE is on\n" @@ -287,24 +287,24 @@ RustboroCity_DevonCorp_3F_Text_ThisIs3rdFloorWaitHere: @ 8212C37 .string "Oh, that's right.\n" .string "Could you wait here a second?$" -RustboroCity_DevonCorp_3F_Text_WordWithPresidentComeWithMe: @ 8212DE8 +RustboroCity_DevonCorp_3F_Text_WordWithPresidentComeWithMe: .string "Our PRESIDENT would like to have\n" .string "a word with you.\p" .string "Please come with me.$" -RustboroCity_DevonCorp_3F_Text_PleaseGoAhead: @ 8212E2F +RustboroCity_DevonCorp_3F_Text_PleaseGoAhead: .string "Please, go ahead.$" -RustboroCity_DevonCorp_3F_Text_VisitCaptSternShipyard: @ 8212E41 +RustboroCity_DevonCorp_3F_Text_VisitCaptSternShipyard: .string "If you visit the SHIPYARD in SLATEPORT,\n" .string "you should go see CAPT. STERN.$" -RustboroCity_DevonCorp_3F_Text_RepeatAndTimerHugelyPopular: @ 8212E88 +RustboroCity_DevonCorp_3F_Text_RepeatAndTimerHugelyPopular: .string "DEVON's new products, the REPEAT BALL\n" .string "and TIMER BALL, have become hugely\l" .string "popular among TRAINERS.$" -RustboroCity_DevonCorp_3F_Text_RareRocksDisplay: @ 8212EE9 +RustboroCity_DevonCorp_3F_Text_RareRocksDisplay: .string "It's a collection of rare rocks and\n" .string "stones assembled by the PRESIDENT.$" diff --git a/data/maps/RustboroCity_Flat1_1F/scripts.inc b/data/maps/RustboroCity_Flat1_1F/scripts.inc index c52c7f069168..43b09a2dc6ea 100644 --- a/data/maps/RustboroCity_Flat1_1F/scripts.inc +++ b/data/maps/RustboroCity_Flat1_1F/scripts.inc @@ -1,18 +1,18 @@ -RustboroCity_Flat1_1F_MapScripts:: @ 82150CD +RustboroCity_Flat1_1F_MapScripts:: .byte 0 -RustboroCity_Flat1_1F_EventScript_Man:: @ 82150CE +RustboroCity_Flat1_1F_EventScript_Man:: msgbox RustboroCity_Flat1_1F_Text_EveryPokemonHasAbility, MSGBOX_NPC end -RustboroCity_Flat1_1F_EventScript_Woman:: @ 82150D7 +RustboroCity_Flat1_1F_EventScript_Woman:: msgbox RustboroCity_Flat1_1F_Text_PokemonStrange, MSGBOX_NPC end -RustboroCity_Flat1_1F_Text_EveryPokemonHasAbility: @ 82150E0 +RustboroCity_Flat1_1F_Text_EveryPokemonHasAbility: .string "Every POKéMON has a special ability\n" .string "that it can use.$" -RustboroCity_Flat1_1F_Text_PokemonStrange: @ 8215115 +RustboroCity_Flat1_1F_Text_PokemonStrange: .string "POKéMON are such strange creatures.$" diff --git a/data/maps/RustboroCity_Flat1_2F/scripts.inc b/data/maps/RustboroCity_Flat1_2F/scripts.inc index a1943adaeca9..a9d24092f8c2 100644 --- a/data/maps/RustboroCity_Flat1_2F/scripts.inc +++ b/data/maps/RustboroCity_Flat1_2F/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_WALDAS_DAD, 6 -RustboroCity_Flat1_2F_MapScripts:: @ 8215139 +RustboroCity_Flat1_2F_MapScripts:: .byte 0 -RustboroCity_Flat1_2F_EventScript_WaldasDad:: @ 821513A +RustboroCity_Flat1_2F_EventScript_WaldasDad:: lock faceplayer specialvar VAR_RESULT, TryBufferWaldaPhrase @@ -12,7 +12,7 @@ RustboroCity_Flat1_2F_EventScript_WaldasDad:: @ 821513A compare VAR_RESULT, TRUE goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase -RustboroCity_Flat1_2F_EventScript_GivePhrase:: @ 8215157 +RustboroCity_Flat1_2F_EventScript_GivePhrase:: special DoWaldaNamingScreen waitstate compare VAR_0x8004, 1 @@ -26,38 +26,38 @@ RustboroCity_Flat1_2F_EventScript_GivePhrase:: @ 8215157 goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldaDoesntLikePhrase end -RustboroCity_Flat1_2F_EventScript_WaldasDadFirstPhrase:: @ 821518D +RustboroCity_Flat1_2F_EventScript_WaldasDadFirstPhrase:: msgbox RustboroCity_Flat1_2F_Text_HelloDoYouKnowFunnyPhrase, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase msgbox RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion, MSGBOX_DEFAULT goto RustboroCity_Flat1_2F_EventScript_GivePhrase -RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase:: @ 82151AD +RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase:: msgbox RustboroCity_Flat1_2F_Text_BeenSayingXDoYouKnowBetterPhrase, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase msgbox RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion, MSGBOX_DEFAULT goto RustboroCity_Flat1_2F_EventScript_GivePhrase -RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase:: @ 82151CD +RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase:: msgbox RustboroCity_Flat1_2F_Text_OhIsThatRight, MSGBOX_DEFAULT release end -RustboroCity_Flat1_2F_EventScript_CancelGivePhrase:: @ 82151D7 +RustboroCity_Flat1_2F_EventScript_CancelGivePhrase:: msgbox RustboroCity_Flat1_2F_Text_OhYouDontKnowAny, MSGBOX_DEFAULT release end -RustboroCity_Flat1_2F_EventScript_CancelGiveFirstPhrase:: @ 82151E1 +RustboroCity_Flat1_2F_EventScript_CancelGiveFirstPhrase:: msgbox RustboroCity_Flat1_2F_Text_ThinkOfMyOwnPhrase, MSGBOX_DEFAULT call RustboroCity_Flat1_2F_EventScript_WaldasDadFaceWalda msgbox RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll2, MSGBOX_DEFAULT release end -RustboroCity_Flat1_2F_EventScript_WaldaLikesPhrase:: @ 82151F8 +RustboroCity_Flat1_2F_EventScript_WaldaLikesPhrase:: msgbox RustboroCity_Flat1_2F_Text_LetsGiveItATry2, MSGBOX_DEFAULT call RustboroCity_Flat1_2F_EventScript_WaldasDadFaceWalda msgbox RustboroCity_Flat1_2F_Text_OhShesLaughing, MSGBOX_DEFAULT @@ -67,26 +67,26 @@ RustboroCity_Flat1_2F_EventScript_WaldaLikesPhrase:: @ 82151F8 release end -RustboroCity_Flat1_2F_EventScript_WaldaDoesntLikePhrase:: @ 8215221 +RustboroCity_Flat1_2F_EventScript_WaldaDoesntLikePhrase:: msgbox RustboroCity_Flat1_2F_Text_LetsGiveItATry, MSGBOX_DEFAULT call RustboroCity_Flat1_2F_EventScript_WaldasDadFaceWalda msgbox RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll, MSGBOX_DEFAULT release end -RustboroCity_Flat1_2F_EventScript_WaldasDadFaceWalda:: @ 8215238 +RustboroCity_Flat1_2F_EventScript_WaldasDadFaceWalda:: turnobject LOCALID_WALDAS_DAD, DIR_EAST return -RustboroCity_Flat1_2F_EventScript_WaldasMom:: @ 821523D +RustboroCity_Flat1_2F_EventScript_WaldasMom:: msgbox RustboroCity_Flat1_2F_Text_ComingUpWithMealsIsHard, MSGBOX_NPC end -RustboroCity_Flat1_2F_EventScript_PokeDoll:: @ 8215246 +RustboroCity_Flat1_2F_EventScript_PokeDoll:: msgbox RustboroCity_Flat1_2F_Text_ItsAPokemonPlushDoll, MSGBOX_SIGN end -RustboroCity_Flat1_2F_Text_ComingUpWithMealsIsHard: @ 821524F +RustboroCity_Flat1_2F_Text_ComingUpWithMealsIsHard: .string "Oh, it's so hard every day…\p" .string "What's hard?\n" .string "You need to ask?\p" @@ -95,7 +95,7 @@ RustboroCity_Flat1_2F_Text_ComingUpWithMealsIsHard: @ 821524F .string "It really isn't easy coming up with\n" .string "meals every day.$" -RustboroCity_Flat1_2F_Text_HelloDoYouKnowFunnyPhrase: @ 82152FA +RustboroCity_Flat1_2F_Text_HelloDoYouKnowFunnyPhrase: .string "Oh, hello!\n" .string "Welcome to the PEPPER household.\p" .string "I have a question for you.\n" @@ -109,62 +109,62 @@ RustboroCity_Flat1_2F_Text_HelloDoYouKnowFunnyPhrase: @ 82152FA .string "Do you know of a funny word or\n" .string "phrase you can tell me?$" -RustboroCity_Flat1_2F_Text_BeenSayingXDoYouKnowBetterPhrase: @ 8215448 +RustboroCity_Flat1_2F_Text_BeenSayingXDoYouKnowBetterPhrase: .string "I've been saying “{STR_VAR_1}”\n" .string "to amuse her lately.\p" .string "Do you know of a better word or\n" .string "a phrase that might work?$" -RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion: @ 82154AD +RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion: .string "Oh, that's wonderful.\n" .string "So, let's hear it, your suggestion.$" -RustboroCity_Flat1_2F_Text_OhIsThatRight: @ 82154E7 +RustboroCity_Flat1_2F_Text_OhIsThatRight: .string "Oh, is that right?\p" .string "Well, if you come up with a good\n" .string "suggestion, I'm all ears.$" -RustboroCity_Flat1_2F_Text_LetsGiveItATry2: @ 8215535 +RustboroCity_Flat1_2F_Text_LetsGiveItATry2: .string "Ah, I see.\n" .string "Well, let's give it a try, shall we?$" -RustboroCity_Flat1_2F_Text_OhShesLaughing: @ 8215565 +RustboroCity_Flat1_2F_Text_OhShesLaughing: .string "{STR_VAR_1}.\n" .string "{STR_VAR_1}.\p" .string "Oh, yes! She's laughing!\n" .string "Oh, I am as delighted as she!$" -RustboroCity_Flat1_2F_Text_LetsGiveItATry: @ 82155A4 +RustboroCity_Flat1_2F_Text_LetsGiveItATry: .string "Ah, I see.\n" .string "Well, let's give it a try, shall we?$" -RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll: @ 82155D4 +RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll: .string "{STR_VAR_1}.\n" .string "{STR_VAR_1}.\p" .string "Hmmm… She's not smiling at all.\n" .string "Maybe WALDA is one serious child…$" -RustboroCity_Flat1_2F_Text_ThinkOfMyOwnPhrase: @ 821561E +RustboroCity_Flat1_2F_Text_ThinkOfMyOwnPhrase: .string "Oh, so you don't know any good words.\n" .string "I'd better think for myself, then.\p" .string "Hmm…\n" .string "How about “{STR_VAR_1}”?\l" .string "Let's see if that will work.$" -RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll2: @ 8215699 +RustboroCity_Flat1_2F_Text_ShesNotSmilingAtAll2: .string "{STR_VAR_1}.\n" .string "{STR_VAR_1}.\p" .string "Hmmm… She's not smiling at all.\n" .string "Maybe WALDA is one serious child…$" -RustboroCity_Flat1_2F_Text_OhYouDontKnowAny: @ 82156E3 +RustboroCity_Flat1_2F_Text_OhYouDontKnowAny: .string "Oh, so you don't know any good words.\n" .string "I guess I'll try to amuse her with\l" .string "the saying I used before.\p" .string "Anyways, if you have a good suggestion,\n" .string "don't hesitate in telling me, okay?$" -RustboroCity_Flat1_2F_Text_ThankYouIllGiveYouWallpaper: @ 8215792 +RustboroCity_Flat1_2F_Text_ThankYouIllGiveYouWallpaper: .string "Thank you!\p" .string "Thanks to you, my darling WALDA\n" .string "laughed for me!\p" @@ -181,6 +181,6 @@ RustboroCity_Flat1_2F_Text_ThankYouIllGiveYouWallpaper: @ 8215792 .string "That will give you access to the new\n" .string "wallpaper patterns.$" -RustboroCity_Flat1_2F_Text_ItsAPokemonPlushDoll: @ 8215923 +RustboroCity_Flat1_2F_Text_ItsAPokemonPlushDoll: .string "It's a POKéMON plush DOLL!$" diff --git a/data/maps/RustboroCity_Flat2_1F/scripts.inc b/data/maps/RustboroCity_Flat2_1F/scripts.inc index 182060955113..eda27c71689e 100644 --- a/data/maps/RustboroCity_Flat2_1F/scripts.inc +++ b/data/maps/RustboroCity_Flat2_1F/scripts.inc @@ -1,11 +1,11 @@ -RustboroCity_Flat2_1F_MapScripts:: @ 8215F76 +RustboroCity_Flat2_1F_MapScripts:: .byte 0 -RustboroCity_Flat2_1F_EventScript_OldWoman:: @ 8215F77 +RustboroCity_Flat2_1F_EventScript_OldWoman:: msgbox RustboroCity_Flat2_1F_Text_DevonWorkersLiveHere, MSGBOX_NPC end -RustboroCity_Flat2_1F_EventScript_Skitty:: @ 8215F80 +RustboroCity_Flat2_1F_EventScript_Skitty:: lock faceplayer waitse @@ -15,10 +15,10 @@ RustboroCity_Flat2_1F_EventScript_Skitty:: @ 8215F80 release end -RustboroCity_Flat2_1F_Text_DevonWorkersLiveHere: @ 8215F93 +RustboroCity_Flat2_1F_Text_DevonWorkersLiveHere: .string "DEVON CORPORATION's workers live in\n" .string "this building.$" -RustboroCity_Flat2_1F_Text_Skitty: @ 8215FC6 +RustboroCity_Flat2_1F_Text_Skitty: .string "SKITTY: Gyaaaah!$" diff --git a/data/maps/RustboroCity_Flat2_2F/scripts.inc b/data/maps/RustboroCity_Flat2_2F/scripts.inc index e7909d54ba39..29edb7b586ce 100644 --- a/data/maps/RustboroCity_Flat2_2F/scripts.inc +++ b/data/maps/RustboroCity_Flat2_2F/scripts.inc @@ -1,11 +1,11 @@ -RustboroCity_Flat2_2F_MapScripts:: @ 8215FD7 +RustboroCity_Flat2_2F_MapScripts:: .byte 0 -RustboroCity_Flat2_2F_EventScript_OldMan:: @ 8215FD8 +RustboroCity_Flat2_2F_EventScript_OldMan:: msgbox RustboroCity_Flat2_2F_Text_DevonWasTinyInOldDays, MSGBOX_NPC end -RustboroCity_Flat2_2F_EventScript_NinjaBoy:: @ 8215FE1 +RustboroCity_Flat2_2F_EventScript_NinjaBoy:: lock faceplayer goto_if_set FLAG_RECEIVED_PREMIER_BALL_RUSTBORO, RustboroCity_Flat2_2F_EventScript_GavePremierBall @@ -17,21 +17,21 @@ RustboroCity_Flat2_2F_EventScript_NinjaBoy:: @ 8215FE1 release end -RustboroCity_Flat2_2F_EventScript_GavePremierBall:: @ 8216010 +RustboroCity_Flat2_2F_EventScript_GavePremierBall:: msgbox RustboroCity_Flat2_2F_Text_GoingToWorkAtDevonToo, MSGBOX_DEFAULT release end -RustboroCity_Flat2_2F_Text_DevonWasTinyInOldDays: @ 821601A +RustboroCity_Flat2_2F_Text_DevonWasTinyInOldDays: .string "Way back in the old days, DEVON was just\n" .string "a teeny, tiny company.$" -RustboroCity_Flat2_2F_Text_MyDaddyMadeThisYouCanHaveIt: @ 821605A +RustboroCity_Flat2_2F_Text_MyDaddyMadeThisYouCanHaveIt: .string "My daddy's working at the CORPORATION.\p" .string "My daddy made this!\n" .string "But I can't use it, so you can have it.$" -RustboroCity_Flat2_2F_Text_GoingToWorkAtDevonToo: @ 82160BD +RustboroCity_Flat2_2F_Text_GoingToWorkAtDevonToo: .string "My daddy's working at the CORPORATION.\p" .string "When I grow up, I'm going to work for\n" .string "DEVON, too.$" diff --git a/data/maps/RustboroCity_Flat2_3F/scripts.inc b/data/maps/RustboroCity_Flat2_3F/scripts.inc index 8af31531d24f..3f644f19c26c 100644 --- a/data/maps/RustboroCity_Flat2_3F/scripts.inc +++ b/data/maps/RustboroCity_Flat2_3F/scripts.inc @@ -1,19 +1,19 @@ -RustboroCity_Flat2_3F_MapScripts:: @ 8216116 +RustboroCity_Flat2_3F_MapScripts:: .byte 0 -RustboroCity_Flat2_3F_EventScript_DevonEmployee:: @ 8216117 +RustboroCity_Flat2_3F_EventScript_DevonEmployee:: msgbox RustboroCity_Flat2_3F_Text_PresidentCollectsRareStones, MSGBOX_NPC end -RustboroCity_Flat2_3F_EventScript_Woman:: @ 8216120 +RustboroCity_Flat2_3F_EventScript_Woman:: msgbox RustboroCity_Flat2_3F_Text_PresidentsSonAlsoCollectsRareStones, MSGBOX_NPC end -RustboroCity_Flat2_3F_Text_PresidentCollectsRareStones: @ 8216129 +RustboroCity_Flat2_3F_Text_PresidentCollectsRareStones: .string "DEVON's PRESIDENT likes to collect\n" .string "rare stones.$" -RustboroCity_Flat2_3F_Text_PresidentsSonAlsoCollectsRareStones: @ 8216159 +RustboroCity_Flat2_3F_Text_PresidentsSonAlsoCollectsRareStones: .string "I think the PRESIDENT's son also\n" .string "collects rare stones.$" diff --git a/data/maps/RustboroCity_Gym/scripts.inc b/data/maps/RustboroCity_Gym/scripts.inc index 6d9895fe505d..11354fac0a0b 100644 --- a/data/maps/RustboroCity_Gym/scripts.inc +++ b/data/maps/RustboroCity_Gym/scripts.inc @@ -1,7 +1,7 @@ -RustboroCity_Gym_MapScripts:: @ 8212F30 +RustboroCity_Gym_MapScripts:: .byte 0 -RustboroCity_Gym_EventScript_Roxanne:: @ 8212F31 +RustboroCity_Gym_EventScript_Roxanne:: trainerbattle_single TRAINER_ROXANNE_1, RustboroCity_Gym_Text_RoxanneIntro, RustboroCity_Gym_Text_RoxanneDefeat, RustboroCity_Gym_EventScript_RoxanneDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -11,7 +11,7 @@ RustboroCity_Gym_EventScript_Roxanne:: @ 8212F31 release end -RustboroCity_Gym_EventScript_RoxanneDefeated:: @ 8212F66 +RustboroCity_Gym_EventScript_RoxanneDefeated:: message RustboroCity_Gym_Text_ReceivedStoneBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -27,7 +27,7 @@ RustboroCity_Gym_EventScript_RoxanneDefeated:: @ 8212F66 goto RustboroCity_Gym_EventScript_GiveRockTomb end -RustboroCity_Gym_EventScript_GiveRockTomb:: @ 8212FA4 +RustboroCity_Gym_EventScript_GiveRockTomb:: giveitem ITEM_TM39 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -36,27 +36,27 @@ RustboroCity_Gym_EventScript_GiveRockTomb:: @ 8212FA4 release end -RustboroCity_Gym_EventScript_RoxanneRematch:: @ 8212FC8 +RustboroCity_Gym_EventScript_RoxanneRematch:: trainerbattle_rematch_double TRAINER_ROXANNE_1, RustboroCity_Gym_Text_RoxannePreRematch, RustboroCity_Gym_Text_RoxanneRematchDefeat, RustboroCity_Gym_Text_RoxanneRematchNeedTwoMons msgbox RustboroCity_Gym_Text_RoxannePostRematch, MSGBOX_AUTOCLOSE end -RustboroCity_Gym_EventScript_Josh:: @ 8212FE3 +RustboroCity_Gym_EventScript_Josh:: trainerbattle_single TRAINER_JOSH, RustboroCity_Gym_Text_JoshIntro, RustboroCity_Gym_Text_JoshDefeat msgbox RustboroCity_Gym_Text_JoshPostBattle, MSGBOX_AUTOCLOSE end -RustboroCity_Gym_EventScript_Tommy:: @ 8212FFA +RustboroCity_Gym_EventScript_Tommy:: trainerbattle_single TRAINER_TOMMY, RustboroCity_Gym_Text_TommyIntro, RustboroCity_Gym_Text_TommyDefeat msgbox RustboroCity_Gym_Text_TommyPostBattle, MSGBOX_AUTOCLOSE end -RustboroCity_Gym_EventScript_Marc:: @ 8213011 +RustboroCity_Gym_EventScript_Marc:: trainerbattle_single TRAINER_MARC, RustboroCity_Gym_Text_MarcIntro, RustboroCity_Gym_Text_MarcDefeat msgbox RustboroCity_Gym_Text_MarcPostBattle, MSGBOX_AUTOCLOSE end -RustboroCity_Gym_EventScript_GymGuide:: @ 8213028 +RustboroCity_Gym_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_RUSTBORO_GYM, RustboroCity_Gym_EventScript_GymGuidePostVictory @@ -64,34 +64,34 @@ RustboroCity_Gym_EventScript_GymGuide:: @ 8213028 release end -RustboroCity_Gym_EventScript_GymGuidePostVictory:: @ 821303D +RustboroCity_Gym_EventScript_GymGuidePostVictory:: msgbox RustboroCity_Gym_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -RustboroCity_Gym_EventScript_LeftGymStatue:: @ 8213047 +RustboroCity_Gym_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE01_GET, RustboroCity_Gym_EventScript_GymStatueCertified goto RustboroCity_Gym_EventScript_GymStatue end -RustboroCity_Gym_EventScript_RightGymStatue:: @ 8213057 +RustboroCity_Gym_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE01_GET, RustboroCity_Gym_EventScript_GymStatueCertified goto RustboroCity_Gym_EventScript_GymStatue end -RustboroCity_Gym_EventScript_GymStatueCertified:: @ 8213067 +RustboroCity_Gym_EventScript_GymStatueCertified:: msgbox RustboroCity_Gym_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -RustboroCity_Gym_EventScript_GymStatue:: @ 8213071 +RustboroCity_Gym_EventScript_GymStatue:: msgbox RustboroCity_Gym_Text_GymStatue, MSGBOX_DEFAULT releaseall end -RustboroCity_Gym_EventScript_RegisterRoxanne:: @ 821307B +RustboroCity_Gym_EventScript_RegisterRoxanne:: lockall pokenavcall RustboroCity_Gym_Text_RoxanneRegisterCall waitmessage @@ -106,7 +106,7 @@ RustboroCity_Gym_EventScript_RegisterRoxanne:: @ 821307B releaseall end -RustboroCity_Gym_Text_GymGuideAdvice: @ 821309D +RustboroCity_Gym_Text_GymGuideAdvice: .string "Yo, how's it going?\p" .string "Listen, my friend!\n" .string "Would you like to become the CHAMPION?\p" @@ -128,7 +128,7 @@ RustboroCity_Gym_Text_GymGuideAdvice: @ 821309D .string "the GYM LEADER.\p" .string "Well, go for it!$" -RustboroCity_Gym_Text_GymGuidePostVictory: @ 82132E2 +RustboroCity_Gym_Text_GymGuidePostVictory: .string "Whoa! What a breathtaking victory!\n" .string "My cheering must've worked!\p" .string "Great!\n" @@ -140,45 +140,45 @@ RustboroCity_Gym_Text_GymGuidePostVictory: @ 82132E2 .string "the stairs to the CHAMPIONSHIP!\p" .string "That's got to feel awesome!$" -RustboroCity_Gym_Text_JoshIntro: @ 82133E9 +RustboroCity_Gym_Text_JoshIntro: .string "Don't take us GYM TRAINERS lightly!\n" .string "I'll show you why we're better!$" -RustboroCity_Gym_Text_JoshDefeat: @ 821342D +RustboroCity_Gym_Text_JoshDefeat: .string "You were too good for me…$" -RustboroCity_Gym_Text_JoshPostBattle: @ 8213447 +RustboroCity_Gym_Text_JoshPostBattle: .string "You haven't seen anything of the ROCK\n" .string "type's terrifying power!$" -RustboroCity_Gym_Text_TommyIntro: @ 8213486 +RustboroCity_Gym_Text_TommyIntro: .string "If you can't beat me, you won't stand\n" .string "a chance against ROXANNE!$" -RustboroCity_Gym_Text_TommyDefeat: @ 82134C6 +RustboroCity_Gym_Text_TommyDefeat: .string "Wow! You've got some potential!$" -RustboroCity_Gym_Text_TommyPostBattle: @ 82134E6 +RustboroCity_Gym_Text_TommyPostBattle: .string "ROXANNE is stronger than me by\n" .string "several times.\p" .string "You'd better be on your guard!$" -RustboroCity_Gym_Text_MarcIntro: @ 8213533 +RustboroCity_Gym_Text_MarcIntro: .string "We might be in the middle of town,\n" .string "but so what?\p" .string "My ROCK POKéMON need room to\n" .string "rampage!$" -RustboroCity_Gym_Text_MarcDefeat: @ 8213589 +RustboroCity_Gym_Text_MarcDefeat: .string "Oh, man oh man!\n" .string "Our challenger is one feisty customer!$" -RustboroCity_Gym_Text_MarcPostBattle: @ 82135C0 +RustboroCity_Gym_Text_MarcPostBattle: .string "I have to hand it to our LEADER.\p" .string "It took smarts and sense for her to\n" .string "pick the ROCK type at her young age.$" -RustboroCity_Gym_Text_RoxanneIntro: @ 821362A +RustboroCity_Gym_Text_RoxanneIntro: .string "Hello, I am ROXANNE, the RUSTBORO\n" .string "POKéMON GYM LEADER.\p" .string "I became a GYM LEADER so that I might\n" @@ -187,7 +187,7 @@ RustboroCity_Gym_Text_RoxanneIntro: @ 821362A .string "Would you kindly demonstrate how you\n" .string "battle, and with which POKéMON?$" -RustboroCity_Gym_Text_RoxanneDefeat: @ 821370B +RustboroCity_Gym_Text_RoxanneDefeat: .string "So…\n" .string "I lost…\p" .string "It seems that I still have much more\n" @@ -199,18 +199,18 @@ RustboroCity_Gym_Text_RoxanneDefeat: @ 821370B .string "Please accept the official POKéMON\n" .string "LEAGUE STONE BADGE.$" -RustboroCity_Gym_Text_ReceivedStoneBadge: @ 82137EC +RustboroCity_Gym_Text_ReceivedStoneBadge: .string "{PLAYER} received the STONE BADGE\n" .string "from ROXANNE.$" -RustboroCity_Gym_Text_StoneBadgeInfoTakeThis: @ 8213816 +RustboroCity_Gym_Text_StoneBadgeInfoTakeThis: .string "The STONE BADGE heightens the ATTACK\n" .string "power of your POKéMON.\p" .string "It also enables them to use the HM move\n" .string "CUT outside of battle.\p" .string "Please take this with you, too.$" -RustboroCity_Gym_Text_ExplainRockTomb: @ 82138B1 +RustboroCity_Gym_Text_ExplainRockTomb: .string "That TECHNICAL MACHINE, TM39,\n" .string "contains ROCK TOMB.\p" .string "It not only inflicts damage by dropping\n" @@ -220,21 +220,21 @@ RustboroCity_Gym_Text_ExplainRockTomb: @ 82138B1 .string "Remember, a TM can be used only once,\n" .string "so think before you use it.$" -RustboroCity_Gym_Text_RoxannePostBattle: @ 82139A7 +RustboroCity_Gym_Text_RoxannePostBattle: .string "Since you are so strong, you should\n" .string "challenge other GYM LEADERS.\p" .string "By battling many TRAINERS, you should\n" .string "learn many things.$" -RustboroCity_Gym_Text_GymStatue: @ 8213A21 +RustboroCity_Gym_Text_GymStatue: .string "RUSTBORO CITY POKéMON GYM$" -RustboroCity_Gym_Text_GymStatueCertified: @ 8213A3B +RustboroCity_Gym_Text_GymStatueCertified: .string "RUSTBORO CITY POKéMON GYM\p" .string "ROXANNE'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -RustboroCity_Gym_Text_RoxanneRegisterCall: @ 8213A76 +RustboroCity_Gym_Text_RoxanneRegisterCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "ROXANNE: Oh, hello, {PLAYER}?\n" @@ -251,11 +251,11 @@ RustboroCity_Gym_Text_RoxanneRegisterCall: @ 8213A76 .string "… … … … … …\n" .string "… … … … … Click!$" -RustboroCity_Gym_Text_RegisteredRoxanne: @ 8213C01 +RustboroCity_Gym_Text_RegisteredRoxanne: .string "Registered GYM LEADER ROXANNE\n" .string "in the POKéNAV.$" -RustboroCity_Gym_Text_RoxannePreRematch: @ 8213C2F +RustboroCity_Gym_Text_RoxannePreRematch: .string "ROXANNE: I'm so glad to see you again.\n" .string "I'm ROXANNE, the GYM LEADER here.\p" .string "I'm sure we've both experienced many\n" @@ -263,17 +263,17 @@ RustboroCity_Gym_Text_RoxannePreRematch: @ 8213C2F .string "I would like to see how much better\n" .string "we've become. Let us battle!$" -RustboroCity_Gym_Text_RoxanneRematchDefeat: @ 8213CF9 +RustboroCity_Gym_Text_RoxanneRematchDefeat: .string "Grr…\n" .string "Again, I have lost…$" -RustboroCity_Gym_Text_RoxannePostRematch: @ 8213D12 +RustboroCity_Gym_Text_RoxannePostRematch: .string "ROXANNE: I still have much to learn\n" .string "when it comes to battling POKéMON.\p" .string "That awareness makes me love battling\n" .string "all that much more!$" -RustboroCity_Gym_Text_RoxanneRematchNeedTwoMons: @ 8213D93 +RustboroCity_Gym_Text_RoxanneRematchNeedTwoMons: .string "ROXANNE: I'm so glad to see you again.\n" .string "I'm ROXANNE, the GYM LEADER here.\p" .string "I'm sure we've both experienced many\n" diff --git a/data/maps/RustboroCity_House1/scripts.inc b/data/maps/RustboroCity_House1/scripts.inc index cf1cec610592..0b7de48bc54b 100644 --- a/data/maps/RustboroCity_House1/scripts.inc +++ b/data/maps/RustboroCity_House1/scripts.inc @@ -1,7 +1,7 @@ -RustboroCity_House1_MapScripts:: @ 821593E +RustboroCity_House1_MapScripts:: .byte 0 -RustboroCity_House1_EventScript_Trader:: @ 821593F +RustboroCity_House1_EventScript_Trader:: lock faceplayer goto_if_set FLAG_RUSTBORO_NPC_TRADE_COMPLETED, RustboroCity_House1_EventScript_TradeCompleted @@ -32,27 +32,27 @@ RustboroCity_House1_EventScript_Trader:: @ 821593F release end -RustboroCity_House1_EventScript_DeclineTrade:: @ 82159BD +RustboroCity_House1_EventScript_DeclineTrade:: msgbox RustboroCity_House1_Text_YouDontWantToThatsOkay, MSGBOX_DEFAULT release end -RustboroCity_House1_EventScript_NotRequestedMon:: @ 82159C7 +RustboroCity_House1_EventScript_NotRequestedMon:: bufferspeciesname 0, VAR_0x8009 msgbox RustboroCity_House1_Text_DoesntLookLikeMonToMe, MSGBOX_DEFAULT release end -RustboroCity_House1_EventScript_TradeCompleted:: @ 82159D5 +RustboroCity_House1_EventScript_TradeCompleted:: msgbox RustboroCity_House1_Text_AnyPokemonCanBeCute, MSGBOX_DEFAULT release end -RustboroCity_House1_EventScript_Hiker:: @ 82159DF +RustboroCity_House1_EventScript_Hiker:: msgbox RustboroCity_House1_Text_AllSortsOfPlaces, MSGBOX_NPC end -RustboroCity_House1_Text_IllTradeIfYouWant: @ 82159E8 +RustboroCity_House1_Text_IllTradeIfYouWant: .string "Huh? My POKéMON is cute?\n" .string "Sure, I knew that.\p" .string "But if you really want, I'm willing\n" @@ -60,23 +60,23 @@ RustboroCity_House1_Text_IllTradeIfYouWant: @ 82159E8 .string "I'll trade you my {STR_VAR_2} for\n" .string "a {STR_VAR_1} if you want.$" -RustboroCity_House1_Text_PleaseBeGoodToMyPokemon: @ 8215A77 +RustboroCity_House1_Text_PleaseBeGoodToMyPokemon: .string "Eheheh…\n" .string "Please be good to my POKéMON.$" -RustboroCity_House1_Text_DoesntLookLikeMonToMe: @ 8215A9D +RustboroCity_House1_Text_DoesntLookLikeMonToMe: .string "Huh? That doesn't look anything like\n" .string "a {STR_VAR_1} to me.$" -RustboroCity_House1_Text_YouDontWantToThatsOkay: @ 8215ACE +RustboroCity_House1_Text_YouDontWantToThatsOkay: .string "Oh, if you don't want to, that's okay.\n" .string "But my POKéMON is cute, you know…$" -RustboroCity_House1_Text_AnyPokemonCanBeCute: @ 8215B17 +RustboroCity_House1_Text_AnyPokemonCanBeCute: .string "Any POKéMON can be cute if you raise\n" .string "it with care and kindness.$" -RustboroCity_House1_Text_AllSortsOfPlaces: @ 8215B57 +RustboroCity_House1_Text_AllSortsOfPlaces: .string "In all sorts of places, there are all\n" .string "sorts of POKéMON and people.\p" .string "I find that fascinating, so I go to all\n" diff --git a/data/maps/RustboroCity_House2/scripts.inc b/data/maps/RustboroCity_House2/scripts.inc index c8e80ee9f349..6b517a04a367 100644 --- a/data/maps/RustboroCity_House2/scripts.inc +++ b/data/maps/RustboroCity_House2/scripts.inc @@ -1,20 +1,20 @@ -RustboroCity_House2_MapScripts:: @ 8215EB3 +RustboroCity_House2_MapScripts:: .byte 0 -RustboroCity_House2_EventScript_PokefanF:: @ 8215EB4 +RustboroCity_House2_EventScript_PokefanF:: msgbox RustboroCity_House2_Text_TrainerSchoolExcellent, MSGBOX_NPC end -RustboroCity_House2_EventScript_LittleGirl:: @ 8215EBD +RustboroCity_House2_EventScript_LittleGirl:: msgbox RustboroCity_House2_Text_RoxanneKnowsALot, MSGBOX_NPC end -RustboroCity_House2_Text_TrainerSchoolExcellent: @ 8215EC6 +RustboroCity_House2_Text_TrainerSchoolExcellent: .string "The TRAINER'S SCHOOL is excellent.\p" .string "If you study there, you could even\n" .string "become a GYM LEADER.$" -RustboroCity_House2_Text_RoxanneKnowsALot: @ 8215F21 +RustboroCity_House2_Text_RoxanneKnowsALot: .string "ROXANNE, the GYM LEADER, really knows\n" .string "a lot about POKéMON.\p" .string "She's really strong, too!$" diff --git a/data/maps/RustboroCity_House3/scripts.inc b/data/maps/RustboroCity_House3/scripts.inc index d55166e67434..70a359df63fb 100644 --- a/data/maps/RustboroCity_House3/scripts.inc +++ b/data/maps/RustboroCity_House3/scripts.inc @@ -1,16 +1,16 @@ -RustboroCity_House3_MapScripts:: @ 8216190 +RustboroCity_House3_MapScripts:: .byte 0 -RustboroCity_House3_EventScript_OldMan:: @ 8216191 +RustboroCity_House3_EventScript_OldMan:: msgbox RustboroCity_House3_Text_IGivePerfectlySuitedNicknames, MSGBOX_NPC end -RustboroCity_House3_EventScript_OldWoman:: @ 821619A +RustboroCity_House3_EventScript_OldWoman:: msgbox RustboroCity_House3_Text_NamingPikachuPekachu, MSGBOX_NPC end @ Misspelling on purpose, see nickname -RustboroCity_House3_EventScript_Pekachu:: @ 82161A3 +RustboroCity_House3_EventScript_Pekachu:: lock faceplayer waitse @@ -20,18 +20,18 @@ RustboroCity_House3_EventScript_Pekachu:: @ 82161A3 release end -RustboroCity_House3_Text_IGivePerfectlySuitedNicknames: @ 82161B6 +RustboroCity_House3_Text_IGivePerfectlySuitedNicknames: .string "For my own POKéMON, I give them\n" .string "perfectly suited nicknames!\p" .string "It's my expression of, uh…\n" .string "originality, yes, that's it!$" -RustboroCity_House3_Text_NamingPikachuPekachu: @ 821622A +RustboroCity_House3_Text_NamingPikachuPekachu: .string "But giving the name PEKACHU to\n" .string "a PIKACHU? It seems pointless.\p" .string "I suppose it is good to use a name\n" .string "that's easy to understand, but…$" -RustboroCity_House3_Text_Pekachu: @ 82162AB +RustboroCity_House3_Text_Pekachu: .string "PEKACHU: Peka!$" diff --git a/data/maps/RustboroCity_Mart/scripts.inc b/data/maps/RustboroCity_Mart/scripts.inc index 063c5b64f5d4..91ffafdda9e0 100644 --- a/data/maps/RustboroCity_Mart/scripts.inc +++ b/data/maps/RustboroCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -RustboroCity_Mart_MapScripts:: @ 8214F05 +RustboroCity_Mart_MapScripts:: .byte 0 -RustboroCity_Mart_EventScript_Clerk:: @ 8214F06 +RustboroCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -10,13 +10,13 @@ RustboroCity_Mart_EventScript_Clerk:: @ 8214F06 goto_if_set FLAG_MET_DEVON_EMPLOYEE, RustboroCity_Mart_EventScript_PokemartExpanded end -RustboroCity_Mart_EventScript_PokemartBasic:: @ 8214F21 +RustboroCity_Mart_EventScript_PokemartBasic:: pokemart RustboroCity_Mart_Pokemart_Basic msgbox gText_PleaseComeAgain, MSGBOX_DEFAULT release end -RustboroCity_Mart_Pokemart_Basic: @ 8214F30 +RustboroCity_Mart_Pokemart_Basic: .2byte ITEM_POKE_BALL .2byte ITEM_POTION .2byte ITEM_SUPER_POTION @@ -31,14 +31,14 @@ RustboroCity_Mart_Pokemart_Basic: @ 8214F30 release end -RustboroCity_Mart_EventScript_PokemartExpanded:: @ 8214F48 +RustboroCity_Mart_EventScript_PokemartExpanded:: pokemart RustboroCity_Mart_Pokemart_Expanded msgbox gText_PleaseComeAgain, MSGBOX_DEFAULT release end .align 2 -RustboroCity_Mart_Pokemart_Expanded: @ 8214F58 +RustboroCity_Mart_Pokemart_Expanded: .2byte ITEM_POKE_BALL .2byte ITEM_TIMER_BALL .2byte ITEM_REPEAT_BALL @@ -55,31 +55,31 @@ RustboroCity_Mart_Pokemart_Expanded: @ 8214F58 release end -RustboroCity_Mart_EventScript_PokefanF:: @ 8214F74 +RustboroCity_Mart_EventScript_PokefanF:: msgbox RustboroCity_Mart_Text_BuyingHealsInCaseOfShroomish, MSGBOX_NPC end -RustboroCity_Mart_EventScript_Boy:: @ 8214F7D +RustboroCity_Mart_EventScript_Boy:: msgbox RustboroCity_Mart_Text_ShouldBuySuperPotionsInstead, MSGBOX_NPC end -RustboroCity_Mart_EventScript_BugCatcher:: @ 8214F86 +RustboroCity_Mart_EventScript_BugCatcher:: msgbox RustboroCity_Mart_Text_GettingEscapeRopeJustInCase, MSGBOX_NPC end -RustboroCity_Mart_Text_BuyingHealsInCaseOfShroomish: @ 8214F8F +RustboroCity_Mart_Text_BuyingHealsInCaseOfShroomish: .string "I'm buying some PARLYZ HEALS and\n" .string "ANTIDOTES.\p" .string "Just in case I run into SHROOMISH\n" .string "in PETALBURG WOODS.$" -RustboroCity_Mart_Text_ShouldBuySuperPotionsInstead: @ 8214FF1 +RustboroCity_Mart_Text_ShouldBuySuperPotionsInstead: .string "My POKéMON evolved.\n" .string "It has a lot of HP now.\p" .string "I should buy SUPER POTIONS for it\n" .string "instead of ordinary POTIONS.$" -RustboroCity_Mart_Text_GettingEscapeRopeJustInCase: @ 821505C +RustboroCity_Mart_Text_GettingEscapeRopeJustInCase: .string "I'm getting an ESCAPE ROPE just in\n" .string "case I get lost in a cave.\p" .string "I just need to use it to get back to\n" diff --git a/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc b/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc index fbe1ac739d6f..ff7d7656820e 100644 --- a/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -RustboroCity_PokemonCenter_1F_MapScripts:: @ 8214D62 +RustboroCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -RustboroCity_PokemonCenter_1F_OnTransition: @ 8214D6D +RustboroCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_RUSTBORO_CITY call Common_EventScript_UpdateBrineyLocation end -RustboroCity_PokemonCenter_1F_EventScript_Nurse:: @ 8214D76 +RustboroCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,31 +18,31 @@ RustboroCity_PokemonCenter_1F_EventScript_Nurse:: @ 8214D76 release end -RustboroCity_PokemonCenter_1F_EventScript_Man:: @ 8214D84 +RustboroCity_PokemonCenter_1F_EventScript_Man:: msgbox RustboroCity_PokemonCenter_1F_Text_PokemonHavePersonalities, MSGBOX_NPC end -RustboroCity_PokemonCenter_1F_EventScript_Boy:: @ 8214D8D +RustboroCity_PokemonCenter_1F_EventScript_Boy:: msgbox RustboroCity_PokemonCenter_1F_Text_MaleAndFemalePokemon, MSGBOX_NPC end -RustboroCity_PokemonCenter_1F_EventScript_Girl:: @ 8214D96 +RustboroCity_PokemonCenter_1F_EventScript_Girl:: msgbox RustboroCity_PokemonCenter_1F_Text_HMCutNextDoor, MSGBOX_NPC end -RustboroCity_PokemonCenter_1F_Text_PokemonHavePersonalities: @ 8214D9F +RustboroCity_PokemonCenter_1F_Text_PokemonHavePersonalities: .string "My POKéMON has a NAIVE nature, and my\n" .string "friend's has a JOLLY nature.\p" .string "It's fascinating how POKéMON have\n" .string "personalities!$" -RustboroCity_PokemonCenter_1F_Text_MaleAndFemalePokemon: @ 8214E13 +RustboroCity_PokemonCenter_1F_Text_MaleAndFemalePokemon: .string "Just like people, there are male and\n" .string "female POKéMON.\p" .string "But no one seems to have any idea how\n" .string "they're different.$" -RustboroCity_PokemonCenter_1F_Text_HMCutNextDoor: @ 8214E81 +RustboroCity_PokemonCenter_1F_Text_HMCutNextDoor: .string "The man next door gave me an HM!\p" .string "I used it to teach my POKéMON how to\n" .string "CUT down skinny trees.$" diff --git a/data/maps/RustboroCity_PokemonCenter_2F/scripts.inc b/data/maps/RustboroCity_PokemonCenter_2F/scripts.inc index ba7b5b285ce1..693204377f36 100644 --- a/data/maps/RustboroCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/RustboroCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -RustboroCity_PokemonCenter_2F_MapScripts:: @ 8214EDE +RustboroCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ RustboroCity_PokemonCenter_2F_MapScripts:: @ 8214EDE .byte 0 @ The below 3 are unused and leftover from RS -RustboroCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8214EF3 +RustboroCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -RustboroCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8214EF9 +RustboroCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -RustboroCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 8214EFF +RustboroCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/RustboroCity_PokemonSchool/scripts.inc b/data/maps/RustboroCity_PokemonSchool/scripts.inc index 29c37fe49504..791f5ee84149 100644 --- a/data/maps/RustboroCity_PokemonSchool/scripts.inc +++ b/data/maps/RustboroCity_PokemonSchool/scripts.inc @@ -1,13 +1,13 @@ -RustboroCity_PokemonSchool_MapScripts:: @ 8213EA8 +RustboroCity_PokemonSchool_MapScripts:: .byte 0 -RustboroCity_PokemonSchool_EventScript_Blackboard:: @ 8213EA9 +RustboroCity_PokemonSchool_EventScript_Blackboard:: lockall msgbox RustboroCity_PokemonSchool_Text_BlackboardListsStatusChanges, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic:: @ 8213EB8 +RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic:: message RustboroCity_PokemonSchool_Text_ReadWhichTopic waitmessage multichoicegrid 8, 1, MULTI_STATUS_INFO, 3, FALSE @@ -21,60 +21,60 @@ RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic:: @ 8213EB8 case MULTI_B_PRESSED, RustboroCity_PokemonSchool_EventScript_ExitTopicSelect end -RustboroCity_PokemonSchool_EventScript_Poison:: @ 8213F17 +RustboroCity_PokemonSchool_EventScript_Poison:: msgbox RustboroCity_PokemonSchool_Text_ExplainPoison, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_Paralysis:: @ 8213F25 +RustboroCity_PokemonSchool_EventScript_Paralysis:: msgbox RustboroCity_PokemonSchool_Text_ExplainParalysis, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_Sleep:: @ 8213F33 +RustboroCity_PokemonSchool_EventScript_Sleep:: msgbox RustboroCity_PokemonSchool_Text_ExplainSleep, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_Burn:: @ 8213F41 +RustboroCity_PokemonSchool_EventScript_Burn:: msgbox RustboroCity_PokemonSchool_Text_ExplainBurn, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_Freeze:: @ 8213F4F +RustboroCity_PokemonSchool_EventScript_Freeze:: msgbox RustboroCity_PokemonSchool_Text_ExplainFreeze, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_ChooseBlackboardTopic end -RustboroCity_PokemonSchool_EventScript_ExitTopicSelect:: @ 8213F5D +RustboroCity_PokemonSchool_EventScript_ExitTopicSelect:: releaseall end -RustboroCity_PokemonSchool_EventScript_GameboyKid1:: @ 8213F5F +RustboroCity_PokemonSchool_EventScript_GameboyKid1:: msgbox RustboroCity_PokemonSchool_Text_TradingRightNow, MSGBOX_NPC end -RustboroCity_PokemonSchool_EventScript_GameboyKid2:: @ 8213F68 +RustboroCity_PokemonSchool_EventScript_GameboyKid2:: msgbox RustboroCity_PokemonSchool_Text_AlwaysWantedSeedot, MSGBOX_NPC end -RustboroCity_PokemonSchool_EventScript_RichBoy:: @ 8213F71 +RustboroCity_PokemonSchool_EventScript_RichBoy:: msgbox RustboroCity_PokemonSchool_Text_PokemontCantUseManMadeItems, MSGBOX_NPC end -RustboroCity_PokemonSchool_EventScript_Lass:: @ 8213F7A +RustboroCity_PokemonSchool_EventScript_Lass:: msgbox RustboroCity_PokemonSchool_Text_ConfusedPokemonAttacksItself, MSGBOX_NPC end -RustboroCity_PokemonSchool_EventScript_SchoolKidM:: @ 8213F83 +RustboroCity_PokemonSchool_EventScript_SchoolKidM:: msgbox RustboroCity_PokemonSchool_Text_PokemonHealItselfWithBerry, MSGBOX_NPC end -RustboroCity_PokemonSchool_EventScript_StudentNotebook:: @ 8213F8C +RustboroCity_PokemonSchool_EventScript_StudentNotebook:: msgbox RustboroCity_PokemonSchool_Text_StudentsNotes, MSGBOX_SIGN end -RustboroCity_PokemonSchool_EventScript_Teacher:: @ 8213F95 +RustboroCity_PokemonSchool_EventScript_Teacher:: lock faceplayer goto_if_set FLAG_RECEIVED_QUICK_CLAW, RustboroCity_PokemonSchool_EventScript_GaveQuickClaw @@ -93,17 +93,17 @@ RustboroCity_PokemonSchool_EventScript_Teacher:: @ 8213F95 release end -RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsEast:: @ 8213FE5 +RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsEast:: applymovement VAR_LAST_TALKED, RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsEast waitmovement 0 return -RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsWest:: @ 8213FF0 +RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsWest:: applymovement VAR_LAST_TALKED, RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsWest waitmovement 0 return -RustboroCity_PokemonSchool_EventScript_GaveQuickClaw:: @ 8213FFB +RustboroCity_PokemonSchool_EventScript_GaveQuickClaw:: msgbox RustboroCity_PokemonSchool_Text_ExplainQuickClaw, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown @@ -111,7 +111,7 @@ RustboroCity_PokemonSchool_EventScript_GaveQuickClaw:: @ 8213FFB release end -RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsWest: @ 8214010 +RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsWest: walk_left walk_down walk_down @@ -136,7 +136,7 @@ RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsWest: @ 8214010 walk_right step_end -RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsEast: @ 8214027 +RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsEast: walk_right walk_right walk_down @@ -163,7 +163,7 @@ RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsEast: @ 8214027 walk_left step_end -RustboroCity_PokemonSchool_EventScript_Scott:: @ 8214040 +RustboroCity_PokemonSchool_EventScript_Scott:: lock faceplayer goto_if_set FLAG_MET_SCOTT_AFTER_OBTAINING_STONE_BADGE, RustboroCity_PokemonSchool_EventScript_ScottWatchStudents @@ -175,41 +175,41 @@ RustboroCity_PokemonSchool_EventScript_Scott:: @ 8214040 release end -RustboroCity_PokemonSchool_EventScript_ScottSpokeAlready:: @ 821406F +RustboroCity_PokemonSchool_EventScript_ScottSpokeAlready:: goto_if_set FLAG_BADGE01_GET, RustboroCity_PokemonSchool_EventScript_ScottNoticeBadge msgbox RustboroCity_PokemonSchool_Text_StudentTalentLevelUnknown, MSGBOX_DEFAULT release end -RustboroCity_PokemonSchool_EventScript_ScottGreetHasBadge:: @ 8214082 +RustboroCity_PokemonSchool_EventScript_ScottGreetHasBadge:: msgbox RustboroCity_PokemonSchool_Text_ScottMetAlreadyStoneBadge, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_MetScottAfterBadge end -RustboroCity_PokemonSchool_EventScript_ScottNoticeBadge:: @ 8214090 +RustboroCity_PokemonSchool_EventScript_ScottNoticeBadge:: msgbox RustboroCity_PokemonSchool_Text_ScottStoneBadge, MSGBOX_DEFAULT goto RustboroCity_PokemonSchool_EventScript_MetScottAfterBadge end -RustboroCity_PokemonSchool_EventScript_MetScottAfterBadge:: @ 821409E +RustboroCity_PokemonSchool_EventScript_MetScottAfterBadge:: addvar VAR_SCOTT_STATE, 1 setflag FLAG_MET_SCOTT_AFTER_OBTAINING_STONE_BADGE release end -RustboroCity_PokemonSchool_EventScript_ScottWatchStudents:: @ 82140A8 +RustboroCity_PokemonSchool_EventScript_ScottWatchStudents:: msgbox RustboroCity_PokemonSchool_Text_StudentTalentLevelUnknown, MSGBOX_DEFAULT release end -RustboroCity_PokemonSchool_Text_BlackboardListsStatusChanges: @ 82140B2 +RustboroCity_PokemonSchool_Text_BlackboardListsStatusChanges: .string "The blackboard lists status changes\n" .string "that may affect POKéMON in battle.$" -RustboroCity_PokemonSchool_Text_ReadWhichTopic: @ 82140F9 +RustboroCity_PokemonSchool_Text_ReadWhichTopic: .string "Which topic do you want to read?$" -RustboroCity_PokemonSchool_Text_ExplainPoison: @ 821411A +RustboroCity_PokemonSchool_Text_ExplainPoison: .string "If a POKéMON is poisoned, it will\n" .string "steadily lose HP.\p" .string "The effects of poison remain after\n" @@ -218,7 +218,7 @@ RustboroCity_PokemonSchool_Text_ExplainPoison: @ 821411A .string "while it is traveling.\p" .string "Heal a poisoning using an ANTIDOTE.$" -RustboroCity_PokemonSchool_Text_ExplainParalysis: @ 82141D8 +RustboroCity_PokemonSchool_Text_ExplainParalysis: .string "If a POKéMON becomes paralyzed,\n" .string "its SPEED drops.\p" .string "It may also not be able to move while\n" @@ -226,7 +226,7 @@ RustboroCity_PokemonSchool_Text_ExplainParalysis: @ 82141D8 .string "Paralysis remains after battle.\n" .string "Cure it using a PARLYZ HEAL.$" -RustboroCity_PokemonSchool_Text_ExplainSleep: @ 821427D +RustboroCity_PokemonSchool_Text_ExplainSleep: .string "If a POKéMON falls asleep, it will be\n" .string "unable to attack.\p" .string "A POKéMON may wake up on its own,\n" @@ -234,26 +234,26 @@ RustboroCity_PokemonSchool_Text_ExplainSleep: @ 821427D .string "sleeping, it will stay asleep.\p" .string "Wake it up using an AWAKENING.$" -RustboroCity_PokemonSchool_Text_ExplainBurn: @ 8214336 +RustboroCity_PokemonSchool_Text_ExplainBurn: .string "A burn reduces ATTACK power, and it\n" .string "steadily reduces the victim's HP.\p" .string "A burn lingers after battle.\n" .string "Cure a burn using a BURN HEAL.$" -RustboroCity_PokemonSchool_Text_ExplainFreeze: @ 82143B8 +RustboroCity_PokemonSchool_Text_ExplainFreeze: .string "If a POKéMON is frozen, it becomes\n" .string "completely helpless.\p" .string "It will remain frozen after battle.\n" .string "Thaw it out using an ICE HEAL.$" -RustboroCity_PokemonSchool_Text_StudentsWhoDontStudyGetQuickClaw: @ 8214433 +RustboroCity_PokemonSchool_Text_StudentsWhoDontStudyGetQuickClaw: .string "Students who don't study get a little\n" .string "taste of my QUICK CLAW.\p" .string "Whether or not you are a good student \n" .string "will be evident from the way you use\l" .string "this item.$" -RustboroCity_PokemonSchool_Text_ExplainQuickClaw: @ 82144C8 +RustboroCity_PokemonSchool_Text_ExplainQuickClaw: .string "A POKéMON holding the QUICK CLAW will\n" .string "occasionally speed up and get to move\l" .string "before its opponent.\p" @@ -262,20 +262,20 @@ RustboroCity_PokemonSchool_Text_ExplainQuickClaw: @ 82144C8 .string "Just those alone will give you many\n" .string "topics to study!$" -RustboroCity_PokemonSchool_Text_TradingRightNow: @ 821459F +RustboroCity_PokemonSchool_Text_TradingRightNow: .string "I'm trading POKéMON with my friend\n" .string "right now.$" -RustboroCity_PokemonSchool_Text_AlwaysWantedSeedot: @ 82145CD +RustboroCity_PokemonSchool_Text_AlwaysWantedSeedot: .string "I always wanted a SEEDOT, and\n" .string "I'm finally getting one!$" -RustboroCity_PokemonSchool_Text_PokemontCantUseManMadeItems: @ 8214604 +RustboroCity_PokemonSchool_Text_PokemontCantUseManMadeItems: .string "POKéMON can hold items, but they\n" .string "don't know what to do with man-made\l" .string "items like POTION and ANTIDOTE.$" -RustboroCity_PokemonSchool_Text_ConfusedPokemonAttacksItself: @ 8214669 +RustboroCity_PokemonSchool_Text_ConfusedPokemonAttacksItself: .string "You know how some POKéMON moves can\n" .string "confuse a POKéMON?\p" .string "A confused POKéMON will sometimes\n" @@ -283,7 +283,7 @@ RustboroCity_PokemonSchool_Text_ConfusedPokemonAttacksItself: @ 8214669 .string "But once it leaves battle, it will\n" .string "return to normal.$" -RustboroCity_PokemonSchool_Text_PokemonHealItselfWithBerry: @ 8214719 +RustboroCity_PokemonSchool_Text_PokemonHealItselfWithBerry: .string "A POKéMON holding a BERRY will heal\n" .string "itself…\p" .string "There are many kinds of items that\n" @@ -291,7 +291,7 @@ RustboroCity_PokemonSchool_Text_PokemonHealItselfWithBerry: @ 8214719 .string "Boy, it sure is hard taking notes\n" .string "down…$" -RustboroCity_PokemonSchool_Text_StudentsNotes: @ 82147A2 +RustboroCity_PokemonSchool_Text_StudentsNotes: .string "It's this student's notebook…\p" .string "POKéMON are to be caught using\n" .string "POKé BALLS.\p" @@ -304,7 +304,7 @@ RustboroCity_PokemonSchool_Text_StudentsNotes: @ 82147A2 .string "the strong TRAINERS who await\l" .string "challengers in POKéMON GYMS.$" -RustboroCity_PokemonSchool_Text_ScottMetAlreadyCut: @ 82148C0 +RustboroCity_PokemonSchool_Text_ScottMetAlreadyCut: .string "Hello? Didn't we meet before?\n" .string "I think back in PETALBURG CITY.\p" .string "Let me introduce myself.\n" @@ -320,12 +320,12 @@ RustboroCity_PokemonSchool_Text_ScottMetAlreadyCut: @ 82148C0 .string "If I remember correctly, someone in\n" .string "this town has CUT.$" -RustboroCity_PokemonSchool_Text_StudentTalentLevelUnknown: @ 8214A5F +RustboroCity_PokemonSchool_Text_StudentTalentLevelUnknown: .string "SCOTT: Hmm…\p" .string "The talent levels of the students here\n" .string "are unknown. The potential's there.$" -RustboroCity_PokemonSchool_Text_ScottStoneBadge: @ 8214AB6 +RustboroCity_PokemonSchool_Text_ScottStoneBadge: .string "SCOTT: Oh, what's that?\p" .string "It's a STONE BADGE, isn't it?\n" .string "That's pretty impressive, I'd say.\p" @@ -334,7 +334,7 @@ RustboroCity_PokemonSchool_Text_ScottStoneBadge: @ 8214AB6 .string "It's hard to tell what you're like as\n" .string "a TRAINER from a LEAGUE BADGE.$" -RustboroCity_PokemonSchool_Text_ScottMetAlreadyStoneBadge: @ 8214B8A +RustboroCity_PokemonSchool_Text_ScottMetAlreadyStoneBadge: .string "Hello? Didn't we meet before?\n" .string "I think back in PETALBURG CITY.\p" .string "Let me introduce myself.\n" diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc index 75f5820e0a31..1ba3c240c4a5 100644 --- a/data/maps/RusturfTunnel/scripts.inc +++ b/data/maps/RusturfTunnel/scripts.inc @@ -4,27 +4,27 @@ .set LOCALID_PEEKO, 7 .equ LOCALID_WANDA, 10 -RusturfTunnel_MapScripts:: @ 822CE27 +RusturfTunnel_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, RusturfTunnel_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, RusturfTunnel_OnFrame .byte 0 -RusturfTunnel_OnFrame: @ 822CE32 +RusturfTunnel_OnFrame: map_script_2 VAR_RUSTURF_TUNNEL_STATE, 4, RusturfTunnel_EventScript_ClearTunnelScene map_script_2 VAR_RUSTURF_TUNNEL_STATE, 5, RusturfTunnel_EventScript_ClearTunnelScene .2byte 0 -RusturfTunnel_OnTransition: @ 822CE44 +RusturfTunnel_OnTransition: compare VAR_RUSTURF_TUNNEL_STATE, 2 call_if_eq RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos end -RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos:: @ 822CE50 +RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos:: setobjectxyperm LOCALID_PEEKO, 13, 4 setobjectxyperm LOCALID_GRUNT, 13, 5 return -RusturfTunnel_EventScript_Wanda:: @ 822CE5F +RusturfTunnel_EventScript_Wanda:: lock faceplayer msgbox RusturfTunnel_Text_BoyfriendOnOtherSideOfRock, MSGBOX_DEFAULT @@ -34,7 +34,7 @@ RusturfTunnel_EventScript_Wanda:: @ 822CE5F release end -RusturfTunnel_EventScript_WandasBoyfriend:: @ 822CE76 +RusturfTunnel_EventScript_WandasBoyfriend:: lock faceplayer goto_if_set FLAG_TEMP_1, RusturfTunnel_EventScript_AlreadySpokenTo @@ -46,7 +46,7 @@ RusturfTunnel_EventScript_WandasBoyfriend:: @ 822CE76 release end -RusturfTunnel_EventScript_AlreadySpokenTo:: @ 822CE99 +RusturfTunnel_EventScript_AlreadySpokenTo:: msgbox RusturfTunnel_Text_ToGetToVerdanturf, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -54,7 +54,7 @@ RusturfTunnel_EventScript_AlreadySpokenTo:: @ 822CE99 release end -RusturfTunnel_EventScript_ClearTunnelScene:: @ 822CEAE +RusturfTunnel_EventScript_ClearTunnelScene:: lockall compare VAR_TEMP_1, 1 call_if_eq RusturfTunnel_EventScript_FaceWandasBoyfriend1 @@ -90,13 +90,13 @@ RusturfTunnel_EventScript_ClearTunnelScene:: @ 822CEAE releaseall end -RusturfTunnel_EventScript_BoyfriendApproachWanda1:: @ 822CF5D +RusturfTunnel_EventScript_BoyfriendApproachWanda1:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend1 applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda1 waitmovement 0 return -RusturfTunnel_EventScript_BoyfriendApproachWanda2:: @ 822CF6F +RusturfTunnel_EventScript_BoyfriendApproachWanda2:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda waitmovement 0 @@ -104,7 +104,7 @@ RusturfTunnel_EventScript_BoyfriendApproachWanda2:: @ 822CF6F waitmovement 0 return -RusturfTunnel_EventScript_BoyfriendApproachWanda3:: @ 822CF8B +RusturfTunnel_EventScript_BoyfriendApproachWanda3:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda waitmovement 0 @@ -112,41 +112,41 @@ RusturfTunnel_EventScript_BoyfriendApproachWanda3:: @ 822CF8B waitmovement 0 return -RusturfTunnel_EventScript_FaceWandasBoyfriend1:: @ 822CFA7 +RusturfTunnel_EventScript_FaceWandasBoyfriend1:: applymovement LOCALID_WANDAS_BF, Common_Movement_WalkInPlaceFastestUp waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -RusturfTunnel_EventScript_FaceWandasBoyfriend2:: @ 822CFBC +RusturfTunnel_EventScript_FaceWandasBoyfriend2:: applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendFaceRight waitmovement 0 return -RusturfTunnel_EventScript_FaceWandasBoyfriend3:: @ 822CFC7 +RusturfTunnel_EventScript_FaceWandasBoyfriend3:: return -RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer:: @ 822CFC8 +RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer:: closemessage applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendApproachPlayer waitmovement 0 return -RusturfTunnel_EventScript_WandaAndBoyfriendExit1:: @ 822CFD4 +RusturfTunnel_EventScript_WandaAndBoyfriendExit1:: applymovement LOCALID_WANDA, RusturfTunnel_Movement_WandaExit1 applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit1 waitmovement 0 return -RusturfTunnel_EventScript_WandaAndBoyfriendExit:: @ 822CFE6 +RusturfTunnel_EventScript_WandaAndBoyfriendExit:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchWandaExit applymovement LOCALID_WANDA, RusturfTunnel_Movement_WandaExit applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit waitmovement 0 return -RusturfTunnel_EventScript_WandasBoyfriendNotice:: @ 822CFFF +RusturfTunnel_EventScript_WandasBoyfriendNotice:: playse SE_PIN applymovement LOCALID_WANDAS_BF, Common_Movement_ExclamationMark waitmovement 0 @@ -154,7 +154,7 @@ RusturfTunnel_EventScript_WandasBoyfriendNotice:: @ 822CFFF waitmovement 0 return -RusturfTunnel_Movement_WandaExit1: @ 822D017 +RusturfTunnel_Movement_WandaExit1: walk_right walk_right walk_right @@ -168,7 +168,7 @@ RusturfTunnel_Movement_WandaExit1: @ 822D017 walk_down step_end -RusturfTunnel_Movement_WandaExit: @ 822D023 +RusturfTunnel_Movement_WandaExit: walk_right walk_right walk_right @@ -182,7 +182,7 @@ RusturfTunnel_Movement_WandaExit: @ 822D023 walk_down step_end -RusturfTunnel_Movement_PlayerWatchWandaExit: @ 822D02F +RusturfTunnel_Movement_PlayerWatchWandaExit: delay_8 walk_in_place_fastest_up delay_16 @@ -190,41 +190,41 @@ RusturfTunnel_Movement_PlayerWatchWandaExit: @ 822D02F walk_in_place_fastest_right step_end -RusturfTunnel_Movement_Unused1: @ 822D035 +RusturfTunnel_Movement_Unused1: walk_left walk_in_place_fastest_right step_end -RusturfTunnel_Movement_Unused2: @ 822D038 +RusturfTunnel_Movement_Unused2: walk_down walk_in_place_fastest_up delay_8 walk_in_place_fastest_right step_end -RusturfTunnel_Movement_Unused3: @ 822D03D +RusturfTunnel_Movement_Unused3: walk_up walk_in_place_fastest_down delay_8 walk_in_place_fastest_right step_end -RusturfTunnel_Movement_PlayerWatchBoyfriend1: @ 822D042 +RusturfTunnel_Movement_PlayerWatchBoyfriend1: walk_left walk_in_place_fastest_right step_end -RusturfTunnel_Movement_PlayerWatchBoyfriend: @ 822D045 +RusturfTunnel_Movement_PlayerWatchBoyfriend: walk_right walk_in_place_fastest_left step_end -RusturfTunnel_Movement_BoyfriendFaceRight: @ 822D048 +RusturfTunnel_Movement_BoyfriendFaceRight: walk_up walk_in_place_fastest_right step_end -RusturfTunnel_Movement_WandasBoyfriendExit1: @ 822D04B +RusturfTunnel_Movement_WandasBoyfriendExit1: walk_right walk_right walk_right @@ -239,7 +239,7 @@ RusturfTunnel_Movement_WandasBoyfriendExit1: @ 822D04B walk_down step_end -RusturfTunnel_Movement_WandasBoyfriendExit: @ 822D058 +RusturfTunnel_Movement_WandasBoyfriendExit: walk_up walk_right walk_right @@ -254,37 +254,37 @@ RusturfTunnel_Movement_WandasBoyfriendExit: @ 822D058 walk_down step_end -RusturfTunnel_Movement_WandasBoyfriendApproachPlayer: @ 822D065 +RusturfTunnel_Movement_WandasBoyfriendApproachPlayer: walk_right step_end -RusturfTunnel_Movement_BoyfriendApproachWanda1: @ 822D067 +RusturfTunnel_Movement_BoyfriendApproachWanda1: walk_in_place_fast_up walk_in_place_fast_up walk_fast_up walk_fast_right step_end -RusturfTunnel_Movement_BoyfriendApproachWanda: @ 822D06C +RusturfTunnel_Movement_BoyfriendApproachWanda: walk_in_place_fast_right walk_in_place_fast_right walk_fast_right walk_in_place_fastest_up step_end -RusturfTunnel_EventScript_TunnelBlockagePos1:: @ 822D071 +RusturfTunnel_EventScript_TunnelBlockagePos1:: setvar VAR_TEMP_1, 1 end -RusturfTunnel_EventScript_TunnelBlockagePos2:: @ 822D077 +RusturfTunnel_EventScript_TunnelBlockagePos2:: setvar VAR_TEMP_1, 2 end -RusturfTunnel_EventScript_TunnelBlockagePos3:: @ 822D07D +RusturfTunnel_EventScript_TunnelBlockagePos3:: setvar VAR_TEMP_1, 3 end -RusturfTunnel_EventScript_AquaGruntBackUp:: @ 822D083 +RusturfTunnel_EventScript_AquaGruntBackUp:: lockall msgbox RusturfTunnel_Text_ComeAndGetSome, MSGBOX_DEFAULT closemessage @@ -297,13 +297,13 @@ RusturfTunnel_EventScript_AquaGruntBackUp:: @ 822D083 releaseall end -RusturfTunnel_Movement_GruntAndPeekoBackUp: @ 822D0AB +RusturfTunnel_Movement_GruntAndPeekoBackUp: lock_facing_direction walk_right unlock_facing_direction step_end -RusturfTunnel_EventScript_Peeko:: @ 822D0AF +RusturfTunnel_EventScript_Peeko:: lock faceplayer waitse @@ -313,7 +313,7 @@ RusturfTunnel_EventScript_Peeko:: @ 822D0AF release end -RusturfTunnel_EventScript_Grunt:: @ 822D0C2 +RusturfTunnel_EventScript_Grunt:: lock faceplayer playbgm MUS_ENCOUNTER_AQUA, FALSE @@ -357,7 +357,7 @@ RusturfTunnel_EventScript_Grunt:: @ 822D0C2 release end -RusturfTunnel_Movement_PushPlayerAsideForGrunt: @ 822D178 +RusturfTunnel_Movement_PushPlayerAsideForGrunt: face_down lock_facing_direction walk_up @@ -365,12 +365,12 @@ RusturfTunnel_Movement_PushPlayerAsideForGrunt: @ 822D178 walk_in_place_fastest_left step_end -RusturfTunnel_Movement_PlayerMoveAsideForBriney: @ 822D17E +RusturfTunnel_Movement_PlayerMoveAsideForBriney: walk_down walk_in_place_fastest_up step_end -RusturfTunnel_Movement_GruntEscape: @ 822D181 +RusturfTunnel_Movement_GruntEscape: walk_fast_left walk_fast_left walk_fast_left @@ -382,7 +382,7 @@ RusturfTunnel_Movement_GruntEscape: @ 822D181 walk_fast_left step_end -RusturfTunnel_Movement_BrineyApproachPeeko1: @ 822D18B +RusturfTunnel_Movement_BrineyApproachPeeko1: walk_right walk_right walk_right @@ -392,7 +392,7 @@ RusturfTunnel_Movement_BrineyApproachPeeko1: @ 822D18B walk_right step_end -RusturfTunnel_Movement_BrineyExit: @ 822D193 +RusturfTunnel_Movement_BrineyExit: walk_left walk_left walk_left @@ -406,19 +406,19 @@ RusturfTunnel_Movement_BrineyExit: @ 822D193 walk_left step_end -RusturfTunnel_Movement_PlayerWatchBrineyExit: @ 822D19F +RusturfTunnel_Movement_PlayerWatchBrineyExit: delay_16 delay_8 delay_4 walk_in_place_fastest_left step_end -RusturfTunnel_Movement_BrineyApproachPeeko2: @ 822D1A4 +RusturfTunnel_Movement_BrineyApproachPeeko2: delay_16 walk_right step_end -RusturfTunnel_Movement_PeekoExit: @ 822D1A7 +RusturfTunnel_Movement_PeekoExit: walk_left walk_left walk_left @@ -430,19 +430,19 @@ RusturfTunnel_Movement_PeekoExit: @ 822D1A7 walk_left step_end -RusturfTunnel_EventScript_Mike:: @ 822D1B1 +RusturfTunnel_EventScript_Mike:: trainerbattle_single TRAINER_MIKE_2, RusturfTunnel_Text_MikeIntro, RusturfTunnel_Text_MikeDefeat msgbox RusturfTunnel_Text_MikePostBattle, MSGBOX_AUTOCLOSE end -RusturfTunnel_Text_ComeAndGetSome: @ 822D1C8 +RusturfTunnel_Text_ComeAndGetSome: .string "What, are you coming?\n" .string "Come and get some, then!$" -RusturfTunnel_Text_Peeko: @ 822D1F7 +RusturfTunnel_Text_Peeko: .string "PEEKO: Pii pihyoh!$" -RusturfTunnel_Text_GruntIntro: @ 822D20A +RusturfTunnel_Text_GruntIntro: .string "Grah, keelhaul it all!\p" .string "That hostage POKéMON turned out to\n" .string "be worthless!\p" @@ -451,11 +451,11 @@ RusturfTunnel_Text_GruntIntro: @ 822D20A .string "Hey! You!\n" .string "So you want to battle me?$" -RusturfTunnel_Text_GruntDefeat: @ 822D2B0 +RusturfTunnel_Text_GruntDefeat: .string "Urrrggh! My career in crime comes to\n" .string "a dead end!$" -RusturfTunnel_Text_GruntTakePackage: @ 822D2E1 +RusturfTunnel_Text_GruntTakePackage: .string "This is plain not right…\p" .string "The BOSS told me this would be a\n" .string "slick-and-easy job to pull.\p" @@ -464,11 +464,11 @@ RusturfTunnel_Text_GruntTakePackage: @ 822D2E1 .string "Tch!\n" .string "You want it back that badly, take it!$" -RusturfTunnel_Text_PeekoGladToSeeYouSafe: @ 822D395 +RusturfTunnel_Text_PeekoGladToSeeYouSafe: .string "PEEKO!\n" .string "Am I glad to see you're safe!$" -RusturfTunnel_Text_ThankYouLetsGoHomePeeko: @ 822D3BA +RusturfTunnel_Text_ThankYouLetsGoHomePeeko: .string "PEEKO owes her life to you!\p" .string "They call me MR. BRINEY.\n" .string "And, you are?\p" @@ -484,7 +484,7 @@ RusturfTunnel_Text_ThankYouLetsGoHomePeeko: @ 822D3BA .string "home.\p" .string "PEEKO: Pihyoh!$" -RusturfTunnel_Text_WhyCantTheyKeepDigging: @ 822D510 +RusturfTunnel_Text_WhyCantTheyKeepDigging: .string "… …\p" .string "Why can't they keep digging?\n" .string "Is the bedrock too hard?\p" @@ -496,30 +496,30 @@ RusturfTunnel_Text_WhyCantTheyKeepDigging: @ 822D510 .string "But this…\n" .string "What am I to do?$" -RusturfTunnel_Text_ToGetToVerdanturf: @ 822D5F3 +RusturfTunnel_Text_ToGetToVerdanturf: .string "To get from RUSTBORO to VERDANTURF,\n" .string "you need to go to DEWFORD, then pass\l" .string "through SLATEPORT and MAUVILLE…$" -RusturfTunnel_Text_YouShatteredBoulderTakeHM: @ 822D65C +RusturfTunnel_Text_YouShatteredBoulderTakeHM: .string "Wow! You shattered that boulder\n" .string "blocking the way.\p" .string "To show you how much I appreciate it,\n" .string "I'd like you to have this HM.$" -RusturfTunnel_Text_ExplainStrength: @ 822D6D2 +RusturfTunnel_Text_ExplainStrength: .string "That HM contains STRENGTH.\p" .string "If a muscular POKéMON were to learn\n" .string "that, it would be able to move even\l" .string "large boulders.$" -RusturfTunnel_Text_WandaReunion: @ 822D745 +RusturfTunnel_Text_WandaReunion: .string "WANDA!\n" .string "Now I can see you anytime!\p" .string "WANDA: That's…wonderful.\p" .string "Please, take some rest at my home.$" -RusturfTunnel_Text_BoyfriendOnOtherSideOfRock: @ 822D7A3 +RusturfTunnel_Text_BoyfriendOnOtherSideOfRock: .string "On the other side of this rock…\n" .string "My boyfriend is there.\p" .string "He… He's not just digging the tunnel\n" @@ -527,17 +527,17 @@ RusturfTunnel_Text_BoyfriendOnOtherSideOfRock: @ 822D7A3 .string "He works his hands raw and rough\n" .string "for the benefit of everyone.$" -RusturfTunnel_Text_MikeIntro: @ 822D84D +RusturfTunnel_Text_MikeIntro: .string "What do you call a wild man up in the\n" .string "mountains? A mountain man, right?\p" .string "So why don't they call a POKéMON in\n" .string "the mountains a mountain POKéMON?$" -RusturfTunnel_Text_MikeDefeat: @ 822D8DB +RusturfTunnel_Text_MikeDefeat: .string "My POKéMON…\n" .string "Ran out of power…$" -RusturfTunnel_Text_MikePostBattle: @ 822D8F9 +RusturfTunnel_Text_MikePostBattle: .string "They halted development here to\n" .string "protect POKéMON, right?\l" .string "There's a feel-good story!$" diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc index b6fa7428e06c..07c397e8c85c 100644 --- a/data/maps/SSTidalCorridor/scripts.inc +++ b/data/maps/SSTidalCorridor/scripts.inc @@ -1,11 +1,11 @@ .set LOCALID_SAILOR, 1 .set LOCALID_SCOTT, 5 -SSTidalCorridor_MapScripts:: @ 823BFCF +SSTidalCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, SSTidalCorridor_OnFrame .byte 0 -SSTidalCorridor_OnFrame: @ 823BFD5 +SSTidalCorridor_OnFrame: map_script_2 VAR_SS_TIDAL_SCOTT_STATE, 0, SSTidalCorridor_EventScript_ScottScene map_script_2 VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_SLATEPORT, SSTidalCorridor_EventScript_DepartSlateportForLilycove map_script_2 VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_LILYCOVE, SSTidalCorridor_EventScript_DepartLilycoveForSlateport @@ -13,7 +13,7 @@ SSTidalCorridor_OnFrame: @ 823BFD5 map_script_2 VAR_SS_TIDAL_STATE, SS_TIDAL_EXIT_CURRENTS_LEFT, SSTidalCorridor_EventScript_ArrivedInSlateport .2byte 0 -SSTidalCorridor_EventScript_DepartSlateportForLilycove:: @ 823BFFF +SSTidalCorridor_EventScript_DepartSlateportForLilycove:: special SetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT lockall @@ -22,7 +22,7 @@ SSTidalCorridor_EventScript_DepartSlateportForLilycove:: @ 823BFFF releaseall end -SSTidalCorridor_EventScript_DepartLilycoveForSlateport:: @ 823C015 +SSTidalCorridor_EventScript_DepartLilycoveForSlateport:: setvar VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_LILYCOVE lockall playse SE_DING_DONG @@ -30,28 +30,28 @@ SSTidalCorridor_EventScript_DepartLilycoveForSlateport:: @ 823C015 releaseall end -SSTidalRooms_EventScript_HalfwayToSlateport:: @ 823C028 +SSTidalRooms_EventScript_HalfwayToSlateport:: special SetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT playse SE_DING_DONG msgbox SSTidal_Text_FastCurrentsHopeYouEnjoyVoyage, MSGBOX_DEFAULT return -SSTidalRooms_EventScript_ArrivedInLilycove:: @ 823C03C +SSTidalRooms_EventScript_ArrivedInLilycove:: special ResetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_LILYCOVE playse SE_DING_DONG msgbox SSTidal_Text_MadeLandInLilycove, MSGBOX_DEFAULT return -SSTidalCorridor_EventScript_ReachedStepCount:: @ 823C050 +SSTidalCorridor_EventScript_ReachedStepCount:: compare VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT goto_if_eq SSTidalCorridor_EventScript_HalfwayToLilycove compare VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT goto_if_eq SSTidalCorridor_EventScript_ArrivedInSlateport end -SSTidalCorridor_EventScript_HalfwayToLilycove:: @ 823C067 +SSTidalCorridor_EventScript_HalfwayToLilycove:: special ResetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_LILYCOVE lockall @@ -60,7 +60,7 @@ SSTidalCorridor_EventScript_HalfwayToLilycove:: @ 823C067 releaseall end -SSTidalCorridor_EventScript_ArrivedInSlateport:: @ 823C07D +SSTidalCorridor_EventScript_ArrivedInSlateport:: special ResetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_SLATEPORT lockall @@ -69,14 +69,14 @@ SSTidalCorridor_EventScript_ArrivedInSlateport:: @ 823C07D releaseall end -SSTidalRooms_EventScript_ArrivedInSlateport:: @ 823C093 +SSTidalRooms_EventScript_ArrivedInSlateport:: special ResetSSTidalFlag setvar VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_SLATEPORT playse SE_DING_DONG msgbox SSTidal_Text_MadeLandInSlateport, MSGBOX_DEFAULT return -SSTidalRooms_EventScript_ProgessCruiseAfterBed:: @ 823C0A7 +SSTidalRooms_EventScript_ProgessCruiseAfterBed:: switch VAR_SS_TIDAL_STATE case SS_TIDAL_DEPART_SLATEPORT, SSTidalRooms_EventScript_ArrivedInLilycove case SS_TIDAL_HALFWAY_LILYCOVE, SSTidalRooms_EventScript_ArrivedInLilycove @@ -84,11 +84,11 @@ SSTidalRooms_EventScript_ProgessCruiseAfterBed:: @ 823C0A7 case SS_TIDAL_HALFWAY_SLATEPORT, SSTidalRooms_EventScript_ArrivedInSlateport return -SSTidalCorridor_EventScript_Briney:: @ 823C0D9 +SSTidalCorridor_EventScript_Briney:: msgbox SSTidalCorridor_Text_BrineyWelcomeAboard, MSGBOX_NPC end -SSTidalCorridor_EventScript_Peeko:: @ 823C0E2 +SSTidalCorridor_EventScript_Peeko:: lock faceplayer waitse @@ -98,23 +98,23 @@ SSTidalCorridor_EventScript_Peeko:: @ 823C0E2 release end -SSTidalCorridor_EventScript_Cabin1Sign:: @ 823C0F5 +SSTidalCorridor_EventScript_Cabin1Sign:: msgbox SSTidalCorridor_Text_Cabin1, MSGBOX_SIGN end -SSTidalCorridor_EventScript_Cabin2Sign:: @ 823C0FE +SSTidalCorridor_EventScript_Cabin2Sign:: msgbox SSTidalCorridor_Text_Cabin2, MSGBOX_SIGN end -SSTidalCorridor_EventScript_Cabin3Sign:: @ 823C107 +SSTidalCorridor_EventScript_Cabin3Sign:: msgbox SSTidalCorridor_Text_Cabin3, MSGBOX_SIGN end -SSTidalCorridor_EventScript_Cabin4Sign:: @ 823C110 +SSTidalCorridor_EventScript_Cabin4Sign:: msgbox SSTidalCorridor_Text_Cabin4, MSGBOX_SIGN end -SSTidalCorridor_EventScript_ExitSailor:: @ 823C119 +SSTidalCorridor_EventScript_ExitSailor:: lock faceplayer compare VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_LILYCOVE @@ -125,7 +125,7 @@ SSTidalCorridor_EventScript_ExitSailor:: @ 823C119 release end -SSTidalCorridor_EventScript_ExitLilycove:: @ 823C13B +SSTidalCorridor_EventScript_ExitLilycove:: setrespawn HEAL_LOCATION_LILYCOVE_CITY msgbox SSTidalCorridor_Text_WeveArrived, MSGBOX_DEFAULT call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_HideSnatchGiver @@ -134,7 +134,7 @@ SSTidalCorridor_EventScript_ExitLilycove:: @ 823C13B release end -SSTidalCorridor_EventScript_ExitSlateport:: @ 823C15A +SSTidalCorridor_EventScript_ExitSlateport:: setrespawn HEAL_LOCATION_SLATEPORT_CITY msgbox SSTidalCorridor_Text_WeveArrived, MSGBOX_DEFAULT call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_HideSnatchGiver @@ -143,11 +143,11 @@ SSTidalCorridor_EventScript_ExitSlateport:: @ 823C15A release end -SSTidalCorridor_EventScript_HideSnatchGiver:: @ 823C179 +SSTidalCorridor_EventScript_HideSnatchGiver:: setflag FLAG_HIDE_SS_TIDAL_ROOMS_SNATCH_GIVER return -SSTidalCorridor_EventScript_Porthole:: @ 823C17D +SSTidalCorridor_EventScript_Porthole:: lockall compare VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT goto_if_eq SSTidalCorridor_EventScript_LookThroughPorthole @@ -157,12 +157,12 @@ SSTidalCorridor_EventScript_Porthole:: @ 823C17D releaseall end -SSTidalCorridor_EventScript_LookThroughPorthole:: @ 823C19E +SSTidalCorridor_EventScript_LookThroughPorthole:: special LookThroughPorthole waitstate end -SSTidalCorridor_EventScript_Sailor:: @ 823C1A3 +SSTidalCorridor_EventScript_Sailor:: lock faceplayer goto_if_set FLAG_DEFEATED_SS_TIDAL_TRAINERS, SSTidalCorridor_EventScript_EnjoyYourCruise @@ -171,12 +171,12 @@ SSTidalCorridor_EventScript_Sailor:: @ 823C1A3 release end -SSTidalCorridor_EventScript_EnjoyYourCruise:: @ 823C1BD +SSTidalCorridor_EventScript_EnjoyYourCruise:: msgbox SSTidalCorridor_Text_EnjoyYourCruise, MSGBOX_DEFAULT release end -SSTidalCorridor_EventScript_CheckIfTrainersDefeated:: @ 823C1C7 +SSTidalCorridor_EventScript_CheckIfTrainersDefeated:: goto_if_not_defeated TRAINER_PHILLIP, SSTidalCorridor_EventScript_TrainerNotDefeated goto_if_not_defeated TRAINER_LEONARD, SSTidalCorridor_EventScript_TrainerNotDefeated goto_if_not_defeated TRAINER_COLTON, SSTidalCorridor_EventScript_TrainerNotDefeated @@ -189,10 +189,10 @@ SSTidalCorridor_EventScript_CheckIfTrainersDefeated:: @ 823C1C7 goto SSTidalCorridor_EventScript_EnjoyYourCruise return -SSTidalCorridor_EventScript_TrainerNotDefeated:: @ 823C218 +SSTidalCorridor_EventScript_TrainerNotDefeated:: return -SSTidalCorridor_EventScript_ScottScene:: @ 823C219 +SSTidalCorridor_EventScript_ScottScene:: lockall applymovement LOCALID_SCOTT, SSTidalCorridor_Movement_ScottApproachPlayer waitmovement 0 @@ -215,7 +215,7 @@ SSTidalCorridor_EventScript_ScottScene:: @ 823C219 releaseall end -SSTidalCorridor_Movement_ScottApproachPlayer: @ 823C26D +SSTidalCorridor_Movement_ScottApproachPlayer: walk_left walk_left walk_left @@ -225,7 +225,7 @@ SSTidalCorridor_Movement_ScottApproachPlayer: @ 823C26D walk_left step_end -SSTidalCorridor_Movement_ScottExit: @ 823C275 +SSTidalCorridor_Movement_ScottExit: walk_in_place_fastest_down delay_16 delay_16 @@ -235,7 +235,7 @@ SSTidalCorridor_Movement_ScottExit: @ 823C275 walk_left step_end -SSTidalCorridor_Movement_PlayerWatchScottExit: @ 823C27D +SSTidalCorridor_Movement_PlayerWatchScottExit: delay_16 delay_16 delay_16 @@ -244,7 +244,7 @@ SSTidalCorridor_Movement_PlayerWatchScottExit: @ 823C27D walk_in_place_fastest_down step_end -SSTidalCorridor_Movement_SailorMoveForScott: @ 823C284 +SSTidalCorridor_Movement_SailorMoveForScott: delay_16 walk_right walk_right @@ -253,13 +253,13 @@ SSTidalCorridor_Movement_SailorMoveForScott: @ 823C284 walk_in_place_fastest_left step_end -SSTidalCorridor_Movement_SailorReturn: @ 823C28B +SSTidalCorridor_Movement_SailorReturn: walk_left walk_left walk_in_place_fastest_up step_end -SSTidalCorridor_Text_ScottBattleFrontierInvite: @ 823C28F +SSTidalCorridor_Text_ScottBattleFrontierInvite: .string "SCOTT: Well, hi, hi!\n" .string "{PLAYER}{KUN}, {PLAYER}{KUN}!\p" .string "Something's come up, so I have to\n" @@ -279,25 +279,25 @@ SSTidalCorridor_Text_ScottBattleFrontierInvite: @ 823C28F .string "Okay, {PLAYER}{KUN}, I'll be waiting for you\n" .string "at the BATTLE FRONTIER!$" -SSTidal_Text_FastCurrentsHopeYouEnjoyVoyage: @ 823C462 +SSTidal_Text_FastCurrentsHopeYouEnjoyVoyage: .string "This ferry is built to plow through\n" .string "fast-running currents.\p" .string "We hope you enjoy your voyage with us.\n" .string "Feel free to explore the ship.$" -SSTidal_Text_HopeYouEnjoyVoyage: @ 823C4E3 +SSTidal_Text_HopeYouEnjoyVoyage: .string "We hope you enjoy your voyage on\n" .string "our ferry.$" -SSTidal_Text_MadeLandInSlateport: @ 823C50F +SSTidal_Text_MadeLandInSlateport: .string "We have made land in SLATEPORT CITY.\n" .string "Thank you for sailing with us.$" -SSTidal_Text_MadeLandInLilycove: @ 823C553 +SSTidal_Text_MadeLandInLilycove: .string "We have made land in LILYCOVE CITY.\n" .string "Thank you for sailing with us.$" -SSTidalCorridor_Text_CanRestInCabin2: @ 823C596 +SSTidalCorridor_Text_CanRestInCabin2: .string "It'll be some time before we make land,\n" .string "I reckon.\p" .string "You can rest up in your cabin if you'd\n" @@ -305,22 +305,22 @@ SSTidalCorridor_Text_CanRestInCabin2: @ 823C596 .string "The bed in there is soft and plushy.\n" .string "I can attest to how comfy it is!$" -SSTidalCorridor_Text_WeveArrived: @ 823C64F +SSTidalCorridor_Text_WeveArrived: .string "We've arrived!$" -SSTidalCorridor_Text_VisitOtherCabins: @ 823C65E +SSTidalCorridor_Text_VisitOtherCabins: .string "Go visit other cabins.\n" .string "TRAINERS bored of the boat trip will\l" .string "be itching to battle.$" -SSTidalCorridor_Text_EnjoyYourCruise: @ 823C6B0 +SSTidalCorridor_Text_EnjoyYourCruise: .string "Enjoy your cruise!$" -SSTidalCorridor_Text_HorizonSpreadsBeyondPorthole: @ 823C6C3 +SSTidalCorridor_Text_HorizonSpreadsBeyondPorthole: .string "The horizon spreads beyond\n" .string "the porthole.$" -SSTidalCorridor_Text_BrineyWelcomeAboard: @ 823C6EC +SSTidalCorridor_Text_BrineyWelcomeAboard: .string "MR. BRINEY: Welcome aboard, {PLAYER}{KUN}!\p" .string "They made me honorary captain of\n" .string "the S.S. TIDAL!\p" @@ -330,17 +330,17 @@ SSTidalCorridor_Text_BrineyWelcomeAboard: @ 823C6EC .string "Let me just say, it stirred my sleeping\n" .string "soul as a sailor!$" -SSTidalCorridor_Text_Peeko: @ 823C7E1 +SSTidalCorridor_Text_Peeko: .string "PEEKO: Pihyo pihyohyo…$" -SSTidalCorridor_Text_Cabin1: @ 823C7F8 +SSTidalCorridor_Text_Cabin1: .string "Cabin 1$" -SSTidalCorridor_Text_Cabin2: @ 823C800 +SSTidalCorridor_Text_Cabin2: .string "Cabin 2$" -SSTidalCorridor_Text_Cabin3: @ 823C808 +SSTidalCorridor_Text_Cabin3: .string "Cabin 3$" -SSTidalCorridor_Text_Cabin4: @ 823C810 +SSTidalCorridor_Text_Cabin4: .string "Cabin 4$" diff --git a/data/maps/SSTidalLowerDeck/scripts.inc b/data/maps/SSTidalLowerDeck/scripts.inc index c90366c23adb..7f1d92c9ebb3 100644 --- a/data/maps/SSTidalLowerDeck/scripts.inc +++ b/data/maps/SSTidalLowerDeck/scripts.inc @@ -1,38 +1,38 @@ -SSTidalLowerDeck_MapScripts:: @ 823C818 +SSTidalLowerDeck_MapScripts:: .byte 0 -SSTidalLowerDeck_EventScript_Phillip:: @ 823C819 +SSTidalLowerDeck_EventScript_Phillip:: trainerbattle_single TRAINER_PHILLIP, SSTidalLowerDeck_Text_PhillipIntro, SSTidalLowerDeck_Text_PhillipDefeat msgbox SSTidalLowerDeck_Text_PhillipPostBattle, MSGBOX_AUTOCLOSE end -SSTidalLowerDeck_EventScript_Leonard:: @ 823C830 +SSTidalLowerDeck_EventScript_Leonard:: trainerbattle_single TRAINER_LEONARD, SSTidalLowerDeck_Text_LeonardIntro, SSTidalLowerDeck_Text_LeonardDefeat msgbox SSTidalLowerDeck_Text_LeonardPostBattle, MSGBOX_AUTOCLOSE end -SSTidalLowerDeck_Text_PhillipIntro: @ 823C847 +SSTidalLowerDeck_Text_PhillipIntro: .string "Arrrgh! I'm fed up and dog-tired of\n" .string "cleaning this huge place!\p" .string "Let's have a quick battle!$" -SSTidalLowerDeck_Text_PhillipDefeat: @ 823C8A0 +SSTidalLowerDeck_Text_PhillipDefeat: .string "Little bro, I lost!$" -SSTidalLowerDeck_Text_PhillipPostBattle: @ 823C8B4 +SSTidalLowerDeck_Text_PhillipPostBattle: .string "We're the CLEANUP BROTHERS!\p" .string "The old one dumps the detergent,\n" .string "and the young one does the scrubbing!$" -SSTidalLowerDeck_Text_LeonardIntro: @ 823C917 +SSTidalLowerDeck_Text_LeonardIntro: .string "This is the bottom of the ship's hull.\n" .string "There's plenty of room.\l" .string "It'll be alright for a POKéMON battle.$" -SSTidalLowerDeck_Text_LeonardDefeat: @ 823C97D +SSTidalLowerDeck_Text_LeonardDefeat: .string "Big bro, I lost!$" -SSTidalLowerDeck_Text_LeonardPostBattle: @ 823C98E +SSTidalLowerDeck_Text_LeonardPostBattle: .string "We're the CLEANUP BROTHERS!\p" .string "The old one dumps the detergent,\n" .string "and the young one does the scrubbing!$" diff --git a/data/maps/SSTidalRooms/scripts.inc b/data/maps/SSTidalRooms/scripts.inc index 1cf464d0de96..c5cade489e2f 100644 --- a/data/maps/SSTidalRooms/scripts.inc +++ b/data/maps/SSTidalRooms/scripts.inc @@ -1,7 +1,7 @@ -SSTidalRooms_MapScripts:: @ 823C9F1 +SSTidalRooms_MapScripts:: .byte 0 -SSTidalRooms_EventScript_SnatchGiver:: @ 823C9F2 +SSTidalRooms_EventScript_SnatchGiver:: lock faceplayer goto_if_set FLAG_RECEIVED_TM49, SSTidalRooms_EventScript_ExplainSnatch @@ -14,12 +14,12 @@ SSTidalRooms_EventScript_SnatchGiver:: @ 823C9F2 release end -SSTidalRooms_EventScript_ExplainSnatch:: @ 823CA29 +SSTidalRooms_EventScript_ExplainSnatch:: msgbox SSTidalRooms_Text_ExplainSnatch, MSGBOX_DEFAULT release end -SSTidalRooms_EventScript_Bed:: @ 823CA33 +SSTidalRooms_EventScript_Bed:: lockall msgbox SSTidalRooms_Text_TakeRestOnBed, MSGBOX_DEFAULT closemessage @@ -28,148 +28,148 @@ SSTidalRooms_EventScript_Bed:: @ 823CA33 releaseall end -SSTidalRooms_EventScript_Colton:: @ 823CA49 +SSTidalRooms_EventScript_Colton:: trainerbattle_single TRAINER_COLTON, SSTidalRooms_Text_ColtonIntro, SSTidalRooms_Text_ColtonDefeat msgbox SSTidalRooms_Text_ColtonPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Micah:: @ 823CA60 +SSTidalRooms_EventScript_Micah:: trainerbattle_single TRAINER_MICAH, SSTidalRooms_Text_MicahIntro, SSTidalRooms_Text_MicahDefeat msgbox SSTidalRooms_Text_MicahPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Thomas:: @ 823CA77 +SSTidalRooms_EventScript_Thomas:: trainerbattle_single TRAINER_THOMAS, SSTidalRooms_Text_ThomasIntro, SSTidalRooms_Text_ThomasDefeat msgbox SSTidalRooms_Text_ThomasPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Jed:: @ 823CA8E +SSTidalRooms_EventScript_Jed:: trainerbattle_double TRAINER_LEA_AND_JED, SSTidalRooms_Text_JedIntro, SSTidalRooms_Text_JedDefeat, SSTidalRooms_Text_JedNotEnoughMons msgbox SSTidalRooms_Text_JedPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Lea:: @ 823CAA9 +SSTidalRooms_EventScript_Lea:: trainerbattle_double TRAINER_LEA_AND_JED, SSTidalRooms_Text_LeaIntro, SSTidalRooms_Text_LeaDefeat, SSTidalRooms_Text_LeaNotEnoughMons msgbox SSTidalRooms_Text_LeaPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Garret:: @ 823CAC4 +SSTidalRooms_EventScript_Garret:: trainerbattle_single TRAINER_GARRET, SSTidalRooms_Text_GarretIntro, SSTidalRooms_Text_GarretDefeat msgbox SSTidalRooms_Text_GarretPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_EventScript_Naomi:: @ 823CADB +SSTidalRooms_EventScript_Naomi:: trainerbattle_single TRAINER_NAOMI, SSTidalRooms_Text_NaomiIntro, SSTidalRooms_Text_NaomiDefeat msgbox SSTidalRooms_Text_NaomiPostBattle, MSGBOX_AUTOCLOSE end -SSTidalRooms_Text_TakeRestOnBed: @ 823CAF2 +SSTidalRooms_Text_TakeRestOnBed: .string "There's a bed…\n" .string "Let's take a rest.$" -SSTidalRooms_Text_ColtonIntro: @ 823CB14 +SSTidalRooms_Text_ColtonIntro: .string "I often sail to LILYCOVE CITY.\p" .string "I enjoy attending CONTESTS,\n" .string "you see.$" -SSTidalRooms_Text_ColtonDefeat: @ 823CB58 +SSTidalRooms_Text_ColtonDefeat: .string "That was an enjoyable match!$" -SSTidalRooms_Text_ColtonPostBattle: @ 823CB75 +SSTidalRooms_Text_ColtonPostBattle: .string "I get so excited imagining what kinds\n" .string "of POKéMON I'll get to see in the next\l" .string "CONTEST. The anticipation of it thrills!$" -SSTidalRooms_Text_MicahIntro: @ 823CBEB +SSTidalRooms_Text_MicahIntro: .string "Are your friends strong?$" -SSTidalRooms_Text_MicahDefeat: @ 823CC04 +SSTidalRooms_Text_MicahDefeat: .string "Your friends are, indeed, strong.$" -SSTidalRooms_Text_MicahPostBattle: @ 823CC26 +SSTidalRooms_Text_MicahPostBattle: .string "Friends need not be human.\n" .string "For me, POKéMON are treasured friends!$" -SSTidalRooms_Text_ThomasIntro: @ 823CC68 +SSTidalRooms_Text_ThomasIntro: .string "Child…\n" .string "Did you knock on the door?$" -SSTidalRooms_Text_ThomasDefeat: @ 823CC8A +SSTidalRooms_Text_ThomasDefeat: .string "A loss is to be accepted without haste\n" .string "or panic.$" -SSTidalRooms_Text_ThomasPostBattle: @ 823CCBB +SSTidalRooms_Text_ThomasPostBattle: .string "To be never ruffled in any situation is\n" .string "the GENTLEMAN's code of conduct.$" -SSTidalRooms_Text_JedIntro: @ 823CD04 +SSTidalRooms_Text_JedIntro: .string "JED: I feel a little shy about this, but…\n" .string "We'll show you our lovey-dovey power!$" -SSTidalRooms_Text_JedDefeat: @ 823CD54 +SSTidalRooms_Text_JedDefeat: .string "JED: Sigh…$" -SSTidalRooms_Text_JedPostBattle: @ 823CD5F +SSTidalRooms_Text_JedPostBattle: .string "JED: It's the first time that our lovey-\n" .string "dovey power couldn't prevail!\l" .string "You must be an awesome TRAINER!$" -SSTidalRooms_Text_JedNotEnoughMons: @ 823CDC6 +SSTidalRooms_Text_JedNotEnoughMons: .string "JED: You only have one POKéMON?\n" .string "Isn't that just too lonesome?$" -SSTidalRooms_Text_LeaIntro: @ 823CE04 +SSTidalRooms_Text_LeaIntro: .string "LEA: I feel a little silly, but…\n" .string "We'll show you our lovey-dovey power!$" -SSTidalRooms_Text_LeaDefeat: @ 823CE4B +SSTidalRooms_Text_LeaDefeat: .string "LEA: Oh, boo!$" -SSTidalRooms_Text_LeaPostBattle: @ 823CE59 +SSTidalRooms_Text_LeaPostBattle: .string "LEA: I can't believe it!\n" .string "Our lovey-dovey power failed…\l" .string "You must be an awesome TRAINER!$" -SSTidalRooms_Text_LeaNotEnoughMons: @ 823CEB0 +SSTidalRooms_Text_LeaNotEnoughMons: .string "LEA: I wanted to battle…\n" .string "But you don't even have two POKéMON…$" -SSTidalRooms_Text_GarretIntro: @ 823CEEE +SSTidalRooms_Text_GarretIntro: .string "Ah, you've come just in time.\p" .string "I'm bored, you see.\n" .string "You may entertain me.$" -SSTidalRooms_Text_GarretDefeat: @ 823CF36 +SSTidalRooms_Text_GarretDefeat: .string "…That will do.$" -SSTidalRooms_Text_GarretPostBattle: @ 823CF45 +SSTidalRooms_Text_GarretPostBattle: .string "Perhaps I shall get Father to acquire\n" .string "a yacht for me.\l" .string "A yacht for me and POKéMON!$" -SSTidalRooms_Text_NaomiIntro: @ 823CF97 +SSTidalRooms_Text_NaomiIntro: .string "Oh, you're such an adorable TRAINER.\n" .string "Would you like to have tea?\l" .string "Or would you rather battle?$" -SSTidalRooms_Text_NaomiDefeat: @ 823CFF4 +SSTidalRooms_Text_NaomiDefeat: .string "I see.\n" .string "You're the active sort.$" -SSTidalRooms_Text_NaomiPostBattle: @ 823D013 +SSTidalRooms_Text_NaomiPostBattle: .string "A world cruise on a luxury liner has its\n" .string "charms, I must say…\p" .string "But, I will admit there is an appealing\n" .string "side to touring HOENN by ferry.$" -SSTidalRooms_Text_NotSuspiciousTakeThis: @ 823D098 +SSTidalRooms_Text_NotSuspiciousTakeThis: .string "Uh… Hi! I… I'm not acting suspicious!\n" .string "Uh… You can have this! For free!\p" .string "It… Honestly, I didn't SNATCH it from\n" .string "someone! I'd never do such a thing!\l" .string "It's clean! You can use it!$" -SSTidalRooms_Text_ExplainSnatch: @ 823D145 +SSTidalRooms_Text_ExplainSnatch: .string "SNATCH steals the beneficial effects\n" .string "of certain moves before they can be\l" .string "used by a foe or ally.$" diff --git a/data/maps/SafariZone_North/scripts.inc b/data/maps/SafariZone_North/scripts.inc index 365266b4b2cb..6fb6f2e2ac6b 100644 --- a/data/maps/SafariZone_North/scripts.inc +++ b/data/maps/SafariZone_North/scripts.inc @@ -1,11 +1,11 @@ -SafariZone_North_MapScripts:: @ 823D253 +SafariZone_North_MapScripts:: .byte 0 -SafariZone_North_EventScript_Fisherman:: @ 823D254 +SafariZone_North_EventScript_Fisherman:: msgbox SafariZone_North_Text_Fisherman, MSGBOX_NPC end -SafariZone_North_EventScript_Man:: @ 823D25D +SafariZone_North_EventScript_Man:: msgbox SafariZone_North_Text_Man, MSGBOX_NPC end diff --git a/data/maps/SafariZone_Northeast/scripts.inc b/data/maps/SafariZone_Northeast/scripts.inc index a34d6ab9519c..5fa40e13d0d7 100644 --- a/data/maps/SafariZone_Northeast/scripts.inc +++ b/data/maps/SafariZone_Northeast/scripts.inc @@ -1,4 +1,4 @@ -SafariZone_Northeast_MapScripts:: @ 8242C02 +SafariZone_Northeast_MapScripts:: .byte 0 @ Event scripts for SafariZone_Northeast are in SafariZone_South/scripts.inc diff --git a/data/maps/SafariZone_Northwest/scripts.inc b/data/maps/SafariZone_Northwest/scripts.inc index 5e6261a2e302..ab51f09bc0ae 100644 --- a/data/maps/SafariZone_Northwest/scripts.inc +++ b/data/maps/SafariZone_Northwest/scripts.inc @@ -1,7 +1,7 @@ -SafariZone_Northwest_MapScripts:: @ 823D249 +SafariZone_Northwest_MapScripts:: .byte 0 -SafariZone_Northwest_EventScript_Man:: @ 823D24A +SafariZone_Northwest_EventScript_Man:: msgbox SafariZone_Northwest_Text_Man, MSGBOX_NPC end diff --git a/data/maps/SafariZone_RestHouse/scripts.inc b/data/maps/SafariZone_RestHouse/scripts.inc index bc5688f0fe35..672b5123fceb 100644 --- a/data/maps/SafariZone_RestHouse/scripts.inc +++ b/data/maps/SafariZone_RestHouse/scripts.inc @@ -1,15 +1,15 @@ -SafariZone_RestHouse_MapScripts:: @ 8242BE6 +SafariZone_RestHouse_MapScripts:: .byte 0 -SafariZone_RestHouse_EventScript_Youngster:: @ 8242BE7 +SafariZone_RestHouse_EventScript_Youngster:: msgbox SafariZone_RestHouse_Text_Youngster, MSGBOX_NPC end -SafariZone_RestHouse_EventScript_PsychicM:: @ 8242BF0 +SafariZone_RestHouse_EventScript_PsychicM:: msgbox SafariZone_RestHouse_Text_PsychicM, MSGBOX_NPC end -SafariZone_RestHouse_EventScript_FatMan:: @ 8242BF9 +SafariZone_RestHouse_EventScript_FatMan:: msgbox SafariZone_RestHouse_Text_FatMan, MSGBOX_NPC end diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc index 75ea5234733f..ee9844340060 100644 --- a/data/maps/SafariZone_South/scripts.inc +++ b/data/maps/SafariZone_South/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_ATTENDANT, 1 -SafariZone_South_MapScripts:: @ 823D279 +SafariZone_South_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SafariZone_South_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, SafariZone_South_OnFrame .byte 0 -SafariZone_South_OnFrame: @ 823D284 +SafariZone_South_OnFrame: map_script_2 VAR_SAFARI_ZONE_STATE, 2, SafariZone_South_EventScript_EnterSafariZone .2byte 0 -SafariZone_South_EventScript_EnterSafariZone:: @ 823D28E +SafariZone_South_EventScript_EnterSafariZone:: lockall applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerEnter waitmovement 0 @@ -20,37 +20,37 @@ SafariZone_South_EventScript_EnterSafariZone:: @ 823D28E releaseall end -SafariZone_South_OnTransition: @ 823D2B1 +SafariZone_South_OnTransition: compare VAR_SAFARI_ZONE_STATE, 2 call_if_eq SafariZone_South_EventScript_SetExitAttendantAside end -SafariZone_South_EventScript_SetExitAttendantAside:: @ 823D2BD +SafariZone_South_EventScript_SetExitAttendantAside:: setobjectxyperm LOCALID_ATTENDANT, 31, 34 return -SafariZone_South_Movement_PlayerEnter: @ 823D2C5 +SafariZone_South_Movement_PlayerEnter: walk_down step_end -SafariZone_South_Movement_ExitAttendantBlockDoor: @ 823D2C7 +SafariZone_South_Movement_ExitAttendantBlockDoor: walk_right walk_in_place_fastest_down step_end -SafariZone_South_EventScript_Boy:: @ 823D2CA +SafariZone_South_EventScript_Boy:: msgbox SafariZone_South_Text_Boy, MSGBOX_NPC end -SafariZone_South_EventScript_Man:: @ 823D2D3 +SafariZone_South_EventScript_Man:: msgbox SafariZone_South_Text_Man, MSGBOX_NPC end -SafariZone_South_EventScript_Youngster:: @ 823D2DC +SafariZone_South_EventScript_Youngster:: msgbox SafariZone_South_Text_Youngster, MSGBOX_NPC end -SafariZone_South_EventScript_ExitAttendant:: @ 823D2E5 +SafariZone_South_EventScript_ExitAttendant:: lock faceplayer goto_if_unset FLAG_GOOD_LUCK_SAFARI_ZONE, SafariZone_South_EventScript_GoodLuck @@ -61,13 +61,13 @@ SafariZone_South_EventScript_ExitAttendant:: @ 823D2E5 release end -SafariZone_South_EventScript_GoodLuck:: @ 823D30D +SafariZone_South_EventScript_GoodLuck:: setflag FLAG_GOOD_LUCK_SAFARI_ZONE msgbox SafariZone_South_Text_GoodLuck, MSGBOX_DEFAULT release end -SafariZone_South_EventScript_ExitEarly:: @ 823D31A +SafariZone_South_EventScript_ExitEarly:: msgbox SafariZone_South_Text_ExitEarlyThankYouForPlaying, MSGBOX_DEFAULT closemessage switch VAR_FACING @@ -75,7 +75,7 @@ SafariZone_South_EventScript_ExitEarly:: @ 823D31A case DIR_EAST, SafariZone_South_EventScript_ExitEarlyEast end -SafariZone_South_EventScript_ExitEarlyNorth:: @ 823D33F +SafariZone_South_EventScript_ExitEarlyNorth:: applymovement LOCALID_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantNorth waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerExitNorth @@ -83,7 +83,7 @@ SafariZone_South_EventScript_ExitEarlyNorth:: @ 823D33F goto SafariZone_South_EventScript_Exit end -SafariZone_South_EventScript_ExitEarlyEast:: @ 823D359 +SafariZone_South_EventScript_ExitEarlyEast:: applymovement LOCALID_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantEast waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerExitEast @@ -91,64 +91,64 @@ SafariZone_South_EventScript_ExitEarlyEast:: @ 823D359 goto SafariZone_South_EventScript_Exit end -SafariZone_South_EventScript_Exit:: @ 823D373 +SafariZone_South_EventScript_Exit:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode warpdoor MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 waitstate end -SafariZone_South_Movement_PlayerExitNorth: @ 823D385 +SafariZone_South_Movement_PlayerExitNorth: walk_up step_end -SafariZone_South_Movement_PlayerExitEast: @ 823D387 +SafariZone_South_Movement_PlayerExitEast: walk_right walk_in_place_fastest_up step_end -SafariZone_South_Movement_MoveExitAttendantNorth: @ 823D38A +SafariZone_South_Movement_MoveExitAttendantNorth: walk_left walk_in_place_fastest_right step_end -SafariZone_South_Movement_MoveExitAttendantEast: @ 823D38D +SafariZone_South_Movement_MoveExitAttendantEast: walk_down walk_in_place_fastest_up step_end -SafariZone_South_EventScript_ConstructionWorker1:: @ 823D390 +SafariZone_South_EventScript_ConstructionWorker1:: msgbox SafariZone_South_Text_AreaOffLimits1, MSGBOX_NPC end -SafariZone_Southeast_EventScript_ExpansionZoneAttendant:: @ 823D399 +SafariZone_Southeast_EventScript_ExpansionZoneAttendant:: msgbox SafariZone_Southeast_Text_ExpansionIsFinished, MSGBOX_NPC end -SafariZone_South_EventScript_ConstructionWorker2:: @ 823D3A2 +SafariZone_South_EventScript_ConstructionWorker2:: msgbox SafariZone_South_Text_AreaOffLimits2, MSGBOX_NPC end -SafariZone_Southeast_EventScript_LittleGirl:: @ 823D3AB +SafariZone_Southeast_EventScript_LittleGirl:: msgbox SafariZone_Southeast_Text_LittleGirl, MSGBOX_NPC end -SafariZone_Southeast_EventScript_FatMan:: @ 823D3B4 +SafariZone_Southeast_EventScript_FatMan:: msgbox SafariZone_Southeast_Text_FatMan, MSGBOX_NPC end -SafariZone_Southeast_EventScript_RichBoy:: @ 823D3BD +SafariZone_Southeast_EventScript_RichBoy:: msgbox SafariZone_Southeast_Text_RichBoy, MSGBOX_NPC end -SafariZone_Northeast_EventScript_Boy:: @ 823D3C6 +SafariZone_Northeast_EventScript_Boy:: msgbox SafariZone_Northeast_Text_Boy, MSGBOX_NPC end -SafariZone_Northeast_EventScript_Woman:: @ 823D3CF +SafariZone_Northeast_EventScript_Woman:: msgbox SafariZone_Northeast_Text_Woman, MSGBOX_NPC end -SafariZone_Northeast_EventScript_Girl:: @ 823D3D8 +SafariZone_Northeast_EventScript_Girl:: msgbox SafariZone_Northeast_Text_Girl, MSGBOX_NPC end diff --git a/data/maps/SafariZone_Southeast/scripts.inc b/data/maps/SafariZone_Southeast/scripts.inc index 658d88e56980..259ab2535b1e 100644 --- a/data/maps/SafariZone_Southeast/scripts.inc +++ b/data/maps/SafariZone_Southeast/scripts.inc @@ -1,4 +1,4 @@ -SafariZone_Southeast_MapScripts:: @ 8242C03 +SafariZone_Southeast_MapScripts:: .byte 0 @ Event scripts for SafariZone_Southeast are in SafariZone_South/scripts.inc diff --git a/data/maps/SafariZone_Southwest/scripts.inc b/data/maps/SafariZone_Southwest/scripts.inc index c862f79067c0..3662f4542404 100644 --- a/data/maps/SafariZone_Southwest/scripts.inc +++ b/data/maps/SafariZone_Southwest/scripts.inc @@ -1,11 +1,11 @@ -SafariZone_Southwest_MapScripts:: @ 823D266 +SafariZone_Southwest_MapScripts:: .byte 0 -SafariZone_Southwest_EventScript_Woman:: @ 823D267 +SafariZone_Southwest_EventScript_Woman:: msgbox SafariZone_Southwest_Text_Woman, MSGBOX_NPC end -SafariZone_Southwest_EventScript_RestHouseSign:: @ 823D270 +SafariZone_Southwest_EventScript_RestHouseSign:: msgbox SafariZone_Southwest_Text_RestHouseSign, MSGBOX_SIGN end diff --git a/data/maps/ScorchedSlab/scripts.inc b/data/maps/ScorchedSlab/scripts.inc index 34ad0133059c..48ccd0a02c10 100644 --- a/data/maps/ScorchedSlab/scripts.inc +++ b/data/maps/ScorchedSlab/scripts.inc @@ -1,8 +1,8 @@ -ScorchedSlab_MapScripts:: @ 8239291 +ScorchedSlab_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, ScorchedSlab_OnTransition .byte 0 -ScorchedSlab_OnTransition: @ 8239297 +ScorchedSlab_OnTransition: setflag FLAG_LANDMARK_SCORCHED_SLAB end diff --git a/data/maps/SeafloorCavern_Entrance/scripts.inc b/data/maps/SeafloorCavern_Entrance/scripts.inc index 20f731044d1e..b6b7b667595b 100644 --- a/data/maps/SeafloorCavern_Entrance/scripts.inc +++ b/data/maps/SeafloorCavern_Entrance/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_GRUNT, 1 -SeafloorCavern_Entrance_MapScripts:: @ 823446E +SeafloorCavern_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, SeafloorCavern_Entrance_OnResume .byte 0 -SeafloorCavern_Entrance_OnResume: @ 8234474 +SeafloorCavern_Entrance_OnResume: setdivewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 255, 6, 5 setescapewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 255, 6, 5 end -SeafloorCavern_Entrance_EventScript_Grunt:: @ 8234485 +SeafloorCavern_Entrance_EventScript_Grunt:: lockall compare VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, 1 goto_if_eq SeafloorCavern_Entrance_EventScript_GruntSpeechShort @@ -36,7 +36,7 @@ SeafloorCavern_Entrance_EventScript_Grunt:: @ 8234485 releaseall end -SeafloorCavern_Entrance_EventScript_GruntSpeechShort:: @ 82344ED +SeafloorCavern_Entrance_EventScript_GruntSpeechShort:: compare VAR_FACING, DIR_WEST call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest compare VAR_FACING, DIR_EAST @@ -50,22 +50,22 @@ SeafloorCavern_Entrance_EventScript_GruntSpeechShort:: @ 82344ED releaseall end -SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast:: @ 8234523 +SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast:: applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest:: @ 823452E +SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest:: applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth:: @ 8234539 +SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth:: applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -SeafloorCavern_Entrance_Text_HearMagmaNearMossdeep: @ 8234544 +SeafloorCavern_Entrance_Text_HearMagmaNearMossdeep: .string "Hey!\n" .string "I remember your face!\p" .string "If you're here, it must mean that\n" @@ -81,7 +81,7 @@ SeafloorCavern_Entrance_Text_HearMagmaNearMossdeep: @ 8234544 .string "That bunch of goons, they sure don't\n" .string "look good near the sea!$" -SeafloorCavern_Entrance_Text_HearMagmaNearMossdeepShort: @ 82346C8 +SeafloorCavern_Entrance_Text_HearMagmaNearMossdeepShort: .string "A punk like you, do you really think\n" .string "you can take on TEAM AQUA?\p" .string "I'd say you're too early by about\n" diff --git a/data/maps/SeafloorCavern_Room1/scripts.inc b/data/maps/SeafloorCavern_Room1/scripts.inc index 6baa9ca4eefa..fefa4ca27a59 100644 --- a/data/maps/SeafloorCavern_Room1/scripts.inc +++ b/data/maps/SeafloorCavern_Room1/scripts.inc @@ -1,35 +1,35 @@ -SeafloorCavern_Room1_MapScripts:: @ 82347EB +SeafloorCavern_Room1_MapScripts:: .byte 0 -SeafloorCavern_Room1_EventScript_Grunt1:: @ 82347EC +SeafloorCavern_Room1_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_SEAFLOOR_CAVERN_1, SeafloorCavern_Room1_Text_Grunt1Intro, SeafloorCavern_Room1_Text_Grunt1Defeat msgbox SeafloorCavern_Room1_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room1_EventScript_Grunt2:: @ 8234803 +SeafloorCavern_Room1_EventScript_Grunt2:: trainerbattle_single TRAINER_GRUNT_SEAFLOOR_CAVERN_2, SeafloorCavern_Room1_Text_Grunt2Intro, SeafloorCavern_Room1_Text_Grunt2Defeat msgbox SeafloorCavern_Room1_Text_Grunt2PostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room1_Text_Grunt1Intro: @ 823481A +SeafloorCavern_Room1_Text_Grunt1Intro: .string "We don't need a kid around!\n" .string "Go on home already!$" -SeafloorCavern_Room1_Text_Grunt1Defeat: @ 823484A +SeafloorCavern_Room1_Text_Grunt1Defeat: .string "I want to go home…$" -SeafloorCavern_Room1_Text_Grunt1PostBattle: @ 823485D +SeafloorCavern_Room1_Text_Grunt1PostBattle: .string "I want to get a promotion so I can\n" .string "boss around the GRUNTS…$" -SeafloorCavern_Room1_Text_Grunt2Intro: @ 8234898 +SeafloorCavern_Room1_Text_Grunt2Intro: .string "That submarine… It's tiny inside.\n" .string "I'm sore all over!$" -SeafloorCavern_Room1_Text_Grunt2Defeat: @ 82348CD +SeafloorCavern_Room1_Text_Grunt2Defeat: .string "Losing makes me sore!$" -SeafloorCavern_Room1_Text_Grunt2PostBattle: @ 82348E3 +SeafloorCavern_Room1_Text_Grunt2PostBattle: .string "That submarine we jacked, man,\n" .string "it's brutal as a ride.\l" .string "It's way too tight in there!$" diff --git a/data/maps/SeafloorCavern_Room2/scripts.inc b/data/maps/SeafloorCavern_Room2/scripts.inc index 15201dac0b29..e6213c12416b 100644 --- a/data/maps/SeafloorCavern_Room2/scripts.inc +++ b/data/maps/SeafloorCavern_Room2/scripts.inc @@ -1,3 +1,3 @@ -SeafloorCavern_Room2_MapScripts:: @ 8234936 +SeafloorCavern_Room2_MapScripts:: .byte 0 diff --git a/data/maps/SeafloorCavern_Room3/scripts.inc b/data/maps/SeafloorCavern_Room3/scripts.inc index 1cfb702c81fe..48b4c60ed2bb 100644 --- a/data/maps/SeafloorCavern_Room3/scripts.inc +++ b/data/maps/SeafloorCavern_Room3/scripts.inc @@ -1,17 +1,17 @@ -SeafloorCavern_Room3_MapScripts:: @ 8234937 +SeafloorCavern_Room3_MapScripts:: .byte 0 -SeafloorCavern_Room3_EventScript_Shelly:: @ 8234938 +SeafloorCavern_Room3_EventScript_Shelly:: trainerbattle_single TRAINER_SHELLY_SEAFLOOR_CAVERN, SeafloorCavern_Room3_Text_ShellyIntro, SeafloorCavern_Room3_Text_ShellyDefeat msgbox SeafloorCavern_Room3_Text_ShellyPostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room3_EventScript_Grunt5:: @ 823494F +SeafloorCavern_Room3_EventScript_Grunt5:: trainerbattle_single TRAINER_GRUNT_SEAFLOOR_CAVERN_5, SeafloorCavern_Room3_Text_Grunt5Intro, SeafloorCavern_Room3_Text_Grunt5Defeat msgbox SeafloorCavern_Room3_Text_Grunt5PostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room3_Text_ShellyIntro: @ 8234966 +SeafloorCavern_Room3_Text_ShellyIntro: .string "Ahahahaha!\p" .string "How did you manage to get here without\n" .string "a submarine?\l" @@ -23,11 +23,11 @@ SeafloorCavern_Room3_Text_ShellyIntro: @ 8234966 .string "I'm going to give you a little taste\n" .string "of pain! Resign yourself to it!$" -SeafloorCavern_Room3_Text_ShellyDefeat: @ 8234A79 +SeafloorCavern_Room3_Text_ShellyDefeat: .string "Ahahahaha!\p" .string "Ouch!$" -SeafloorCavern_Room3_Text_ShellyPostBattle: @ 8234A8A +SeafloorCavern_Room3_Text_ShellyPostBattle: .string "Ahahahaha!\n" .string "You're so darn strong.\p" .string "It's terribly disappointing that you're\n" @@ -36,7 +36,7 @@ SeafloorCavern_Room3_Text_ShellyPostBattle: @ 8234A8A .string "world our BOSS has promised as\l" .string "one of us…$" -SeafloorCavern_Room3_Text_Grunt5Intro: @ 8234B3A +SeafloorCavern_Room3_Text_Grunt5Intro: .string "For our dream to become real, we need\n" .string "the power of POKéMON.\p" .string "But meddlers like you use the power of\n" @@ -45,10 +45,10 @@ SeafloorCavern_Room3_Text_Grunt5Intro: @ 8234B3A .string "Life just doesn't work the way we\n" .string "need it to!$" -SeafloorCavern_Room3_Text_Grunt5Defeat: @ 8234BFE +SeafloorCavern_Room3_Text_Grunt5Defeat: .string "Gwah!$" -SeafloorCavern_Room3_Text_Grunt5PostBattle: @ 8234C04 +SeafloorCavern_Room3_Text_Grunt5PostBattle: .string "You know, we don't dare question\n" .string "the motives of our leader.\p" .string "But here you are, just some punk,\n" diff --git a/data/maps/SeafloorCavern_Room4/scripts.inc b/data/maps/SeafloorCavern_Room4/scripts.inc index e2f32287ad40..ab1add78f08f 100644 --- a/data/maps/SeafloorCavern_Room4/scripts.inc +++ b/data/maps/SeafloorCavern_Room4/scripts.inc @@ -1,35 +1,35 @@ -SeafloorCavern_Room4_MapScripts:: @ 8234C9B +SeafloorCavern_Room4_MapScripts:: .byte 0 -SeafloorCavern_Room4_EventScript_Grunt3:: @ 8234C9C +SeafloorCavern_Room4_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_SEAFLOOR_CAVERN_3, SeafloorCavern_Room4_Text_Grunt3Intro, SeafloorCavern_Room4_Text_Grunt3Defeat msgbox SeafloorCavern_Room4_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room4_EventScript_Grunt4:: @ 8234CB3 +SeafloorCavern_Room4_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_SEAFLOOR_CAVERN_4, SeafloorCavern_Room4_Text_Grunt4Intro, SeafloorCavern_Room4_Text_Grunt4Defeat msgbox SeafloorCavern_Room4_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end -SeafloorCavern_Room4_Text_Grunt3Intro: @ 8234CCA +SeafloorCavern_Room4_Text_Grunt3Intro: .string "Who are you?\n" .string "Where did you come in from?$" -SeafloorCavern_Room4_Text_Grunt3Defeat: @ 8234CF3 +SeafloorCavern_Room4_Text_Grunt3Defeat: .string "Lost it…$" -SeafloorCavern_Room4_Text_Grunt3PostBattle: @ 8234CFC +SeafloorCavern_Room4_Text_Grunt3PostBattle: .string "I can't find the way out!\p" .string "I'm not afraid. Don't get me wrong!$" -SeafloorCavern_Room4_Text_Grunt4Intro: @ 8234D3A +SeafloorCavern_Room4_Text_Grunt4Intro: .string "Who are you?\n" .string "Where do you think you're going?$" -SeafloorCavern_Room4_Text_Grunt4Defeat: @ 8234D68 +SeafloorCavern_Room4_Text_Grunt4Defeat: .string "I failed to win!$" -SeafloorCavern_Room4_Text_Grunt4PostBattle: @ 8234D79 +SeafloorCavern_Room4_Text_Grunt4PostBattle: .string "My partner forgot the map in that\n" .string "submarine!\p" .string "How's that for being useless?$" diff --git a/data/maps/SeafloorCavern_Room5/scripts.inc b/data/maps/SeafloorCavern_Room5/scripts.inc index e1c68db6eb5f..244ca5a8051b 100644 --- a/data/maps/SeafloorCavern_Room5/scripts.inc +++ b/data/maps/SeafloorCavern_Room5/scripts.inc @@ -1,3 +1,3 @@ -SeafloorCavern_Room5_MapScripts:: @ 8234DC4 +SeafloorCavern_Room5_MapScripts:: .byte 0 diff --git a/data/maps/SeafloorCavern_Room6/scripts.inc b/data/maps/SeafloorCavern_Room6/scripts.inc index ae8cf02fa768..49ac33a98bd9 100644 --- a/data/maps/SeafloorCavern_Room6/scripts.inc +++ b/data/maps/SeafloorCavern_Room6/scripts.inc @@ -1,3 +1,3 @@ -SeafloorCavern_Room6_MapScripts:: @ 8234DC5 +SeafloorCavern_Room6_MapScripts:: .byte 0 diff --git a/data/maps/SeafloorCavern_Room7/scripts.inc b/data/maps/SeafloorCavern_Room7/scripts.inc index e91cf6193470..a022e08d269c 100644 --- a/data/maps/SeafloorCavern_Room7/scripts.inc +++ b/data/maps/SeafloorCavern_Room7/scripts.inc @@ -1,3 +1,3 @@ -SeafloorCavern_Room7_MapScripts:: @ 8234DC6 +SeafloorCavern_Room7_MapScripts:: .byte 0 diff --git a/data/maps/SeafloorCavern_Room8/scripts.inc b/data/maps/SeafloorCavern_Room8/scripts.inc index 471cafd17777..99a367edb1b4 100644 --- a/data/maps/SeafloorCavern_Room8/scripts.inc +++ b/data/maps/SeafloorCavern_Room8/scripts.inc @@ -1,3 +1,3 @@ -SeafloorCavern_Room8_MapScripts:: @ 8234DC7 +SeafloorCavern_Room8_MapScripts:: .byte 0 diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc index 06ae0d6fe2ad..7749d7a194be 100644 --- a/data/maps/SeafloorCavern_Room9/scripts.inc +++ b/data/maps/SeafloorCavern_Room9/scripts.inc @@ -5,10 +5,10 @@ .set LOCALID_GRUNT_2, 5 .set LOCALID_KYOGRE_SLEEPING, 7 -SeafloorCavern_Room9_MapScripts:: @ 8234DC8 +SeafloorCavern_Room9_MapScripts:: .byte 0 -SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: @ 8234DC9 +SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: lockall setvar VAR_0x8004, LOCALID_ARCHIE setvar VAR_0x8005, LOCALID_MAXIE @@ -150,7 +150,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: @ 8234DC9 releaseall end -SeafloorCavern_Room9_Movement_ArchieApproachPlayer: @ 823502A +SeafloorCavern_Room9_Movement_ArchieApproachPlayer: walk_right walk_right walk_right @@ -160,21 +160,21 @@ SeafloorCavern_Room9_Movement_ArchieApproachPlayer: @ 823502A walk_right step_end -SeafloorCavern_Room9_Movement_Unused1: @ 8235032 +SeafloorCavern_Room9_Movement_Unused1: walk_left walk_left step_end -SeafloorCavern_Room9_Movement_ArchieListenMessage: @ 8235035 +SeafloorCavern_Room9_Movement_ArchieListenMessage: walk_left delay_16 step_end -SeafloorCavern_Room9_Movement_Unused2: @ 8235038 +SeafloorCavern_Room9_Movement_Unused2: walk_right step_end -SeafloorCavern_Room9_Movement_ArchieExit: @ 823503A +SeafloorCavern_Room9_Movement_ArchieExit: face_up lock_facing_direction walk_down @@ -182,7 +182,7 @@ SeafloorCavern_Room9_Movement_ArchieExit: @ 823503A walk_in_place_fastest_right step_end -SeafloorCavern_Room9_Movement_KyogreApproach: @ 8235040 +SeafloorCavern_Room9_Movement_KyogreApproach: delay_16 delay_16 walk_slow_down @@ -195,12 +195,12 @@ SeafloorCavern_Room9_Movement_KyogreApproach: @ 8235040 delay_16 step_end -SeafloorCavern_Room9_Movement_KyogreExit: @ 823504B +SeafloorCavern_Room9_Movement_KyogreExit: slide_up slide_up step_end -SeafloorCavern_Room9_Movement_MaxieArrive: @ 823504E +SeafloorCavern_Room9_Movement_MaxieArrive: walk_fast_right walk_fast_right walk_fast_right @@ -208,49 +208,49 @@ SeafloorCavern_Room9_Movement_MaxieArrive: @ 823504E walk_fast_right step_end -SeafloorCavern_Room9_Movement_MaxieExit: @ 8235054 +SeafloorCavern_Room9_Movement_MaxieExit: walk_right walk_right step_end -SeafloorCavern_Room9_Movement_MagmaGruntArrive: @ 8235057 +SeafloorCavern_Room9_Movement_MagmaGruntArrive: walk_fast_right walk_fast_right walk_fast_right walk_fast_right step_end -SeafloorCavern_Room9_Movement_Delay32: @ 823505C +SeafloorCavern_Room9_Movement_Delay32: delay_16 delay_16 step_end -SeafloorCavern_Room9_Text_ArchieHoldItRightThere: @ 823505F +SeafloorCavern_Room9_Text_ArchieHoldItRightThere: .string "ARCHIE: Hold it right there.$" -SeafloorCavern_Room9_Text_ArchieSoItWasYou: @ 823507C +SeafloorCavern_Room9_Text_ArchieSoItWasYou: .string "ARCHIE: Fufufu…\n" .string "So it was you, after all.$" -SeafloorCavern_Room9_Text_ArchieBeholdKyogre: @ 82350A6 +SeafloorCavern_Room9_Text_ArchieBeholdKyogre: .string "ARCHIE: Behold!\p" .string "See how beautiful it is, the sleeping\n" .string "form of the ancient POKéMON KYOGRE!\p" .string "I have waited so long for this day to\n" .string "come…$" -SeafloorCavern_Room9_Text_ArchieYouMustDisappear: @ 823512C +SeafloorCavern_Room9_Text_ArchieYouMustDisappear: .string "ARCHIE: It surprises me, how you've\n" .string "managed to chase me here.\p" .string "But that's all over now.\p" .string "For the realization of my dream,\n" .string "you must disappear now!$" -SeafloorCavern_Room9_Text_ArchieDefeat: @ 82351BC +SeafloorCavern_Room9_Text_ArchieDefeat: .string "What?!\n" .string "I lost to a mere child like you?!$" -SeafloorCavern_Room9_Text_ArchieWithThisRedOrb: @ 82351E5 +SeafloorCavern_Room9_Text_ArchieWithThisRedOrb: .string "ARCHIE: Fufufu…\p" .string "I commend you. I must recognize that\n" .string "you are truly gifted.\p" @@ -258,21 +258,21 @@ SeafloorCavern_Room9_Text_ArchieWithThisRedOrb: @ 82351E5 .string "I have this in my possession!\p" .string "With this RED ORB, I can make KYOGRE…$" -SeafloorCavern_Room9_Text_RedOrbShinesByItself: @ 8235279 +SeafloorCavern_Room9_Text_RedOrbShinesByItself: .string "The RED ORB suddenly began shining\n" .string "by itself!$" -SeafloorCavern_Room9_Text_ArchieWhereDidKyogreGo: @ 82352A7 +SeafloorCavern_Room9_Text_ArchieWhereDidKyogreGo: .string "ARCHIE: What?!\p" .string "I didn't do anything.\n" .string "Why did the RED ORB…\p" .string "Where did KYOGRE go?$" -SeafloorCavern_Room9_Text_ArchieAMessageFromOutside: @ 82352F6 +SeafloorCavern_Room9_Text_ArchieAMessageFromOutside: .string "ARCHIE: Hm? It's a message from our\n" .string "members outside…$" -SeafloorCavern_Room9_Text_ArchieWhatRainingTooHard: @ 823532B +SeafloorCavern_Room9_Text_ArchieWhatRainingTooHard: .string "ARCHIE: Yes, what is it?\p" .string "Hm…\n" .string "It's raining heavily?\p" @@ -288,7 +288,7 @@ SeafloorCavern_Room9_Text_ArchieWhatRainingTooHard: @ 823532B .string "Hold your position and monitor\n" .string "the situation!$" -SeafloorCavern_Room9_Text_ArchieWhyDidKyogreDisappear: @ 823546F +SeafloorCavern_Room9_Text_ArchieWhyDidKyogreDisappear: .string "ARCHIE: There's something wrong…\p" .string "The RED ORB is supposed to awaken\n" .string "and control KYOGRE…\p" @@ -296,7 +296,7 @@ SeafloorCavern_Room9_Text_ArchieWhyDidKyogreDisappear: @ 823546F .string "Why did KYOGRE disappear?\p" .string "Why?!$" -SeafloorCavern_Room9_Text_MaxieWhatHaveYouWrought: @ 82354F0 +SeafloorCavern_Room9_Text_MaxieWhatHaveYouWrought: .string "MAXIE: What have you wrought?\p" .string "ARCHIE… You've finally awoken KYOGRE,\n" .string "haven't you?\p" @@ -305,7 +305,7 @@ SeafloorCavern_Room9_Text_MaxieWhatHaveYouWrought: @ 82354F0 .string "The world's landmass will drown in\n" .string "the deepening sea…$" -SeafloorCavern_Room9_Text_ArchieDontGetAllHighAndMighty: @ 82355C2 +SeafloorCavern_Room9_Text_ArchieDontGetAllHighAndMighty: .string "ARCHIE: W-what?!\n" .string "Don't get all high and mighty with me!\p" .string "Wasn't it you, TEAM MAGMA, that\n" @@ -314,13 +314,13 @@ SeafloorCavern_Room9_Text_ArchieDontGetAllHighAndMighty: @ 82355C2 .string "I should be able to control KYOGRE…\p" .string "I should be able to control it…$" -SeafloorCavern_Room9_Text_MaxieWeDontHaveTimeToArgue: @ 8235692 +SeafloorCavern_Room9_Text_MaxieWeDontHaveTimeToArgue: .string "MAXIE: We don't have the time to\n" .string "argue about it here!\p" .string "Get outside and see for yourself!\p" .string "See if what you've wrought is the\n" .string "world that we desired!$" -SeafloorCavern_Room9_Text_MaxieComeOnPlayer: @ 8235723 +SeafloorCavern_Room9_Text_MaxieComeOnPlayer: .string "MAXIE: {PLAYER}, come on, you have\n" .string "to get out of here, too!$" diff --git a/data/maps/SealedChamber_InnerRoom/scripts.inc b/data/maps/SealedChamber_InnerRoom/scripts.inc index c31bb7efce65..f81e5f9fde67 100644 --- a/data/maps/SealedChamber_InnerRoom/scripts.inc +++ b/data/maps/SealedChamber_InnerRoom/scripts.inc @@ -1,7 +1,7 @@ -SealedChamber_InnerRoom_MapScripts:: @ 82391F7 +SealedChamber_InnerRoom_MapScripts:: .byte 0 -SealedChamber_InnerRoom_EventScript_BrailleBackWall:: @ 82391F8 +SealedChamber_InnerRoom_EventScript_BrailleBackWall:: lockall braillemessage SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth waitbuttonpress @@ -34,11 +34,11 @@ SealedChamber_InnerRoom_EventScript_BrailleBackWall:: @ 82391F8 releaseall end -SealedChamber_InnerRoom_EventScript_NoEffect:: @ 8239253 +SealedChamber_InnerRoom_EventScript_NoEffect:: releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart1:: @ 8239255 +SealedChamber_InnerRoom_EventScript_BrailleStoryPart1:: lockall braillemessage SealedChamber_InnerRoom_Braille_InThisCaveWeHaveLived waitbuttonpress @@ -46,7 +46,7 @@ SealedChamber_InnerRoom_EventScript_BrailleStoryPart1:: @ 8239255 releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart2:: @ 823925F +SealedChamber_InnerRoom_EventScript_BrailleStoryPart2:: lockall braillemessage SealedChamber_InnerRoom_Braille_WeOweAllToThePokemon waitbuttonpress @@ -54,7 +54,7 @@ SealedChamber_InnerRoom_EventScript_BrailleStoryPart2:: @ 823925F releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart3:: @ 8239269 +SealedChamber_InnerRoom_EventScript_BrailleStoryPart3:: lockall braillemessage SealedChamber_InnerRoom_Braille_ButWeSealedThePokemonAway waitbuttonpress @@ -62,7 +62,7 @@ SealedChamber_InnerRoom_EventScript_BrailleStoryPart3:: @ 8239269 releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart4:: @ 8239273 +SealedChamber_InnerRoom_EventScript_BrailleStoryPart4:: lockall braillemessage SealedChamber_InnerRoom_Braille_WeFearedIt waitbuttonpress @@ -70,7 +70,7 @@ SealedChamber_InnerRoom_EventScript_BrailleStoryPart4:: @ 8239273 releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart5:: @ 823927D +SealedChamber_InnerRoom_EventScript_BrailleStoryPart5:: lockall braillemessage SealedChamber_InnerRoom_Braille_ThoseWithCourageHope waitbuttonpress @@ -78,7 +78,7 @@ SealedChamber_InnerRoom_EventScript_BrailleStoryPart5:: @ 823927D releaseall end -SealedChamber_InnerRoom_EventScript_BrailleStoryPart6:: @ 8239287 +SealedChamber_InnerRoom_EventScript_BrailleStoryPart6:: lockall braillemessage SealedChamber_InnerRoom_Braille_OpenDoorEternalPokemonWaits waitbuttonpress diff --git a/data/maps/SealedChamber_OuterRoom/scripts.inc b/data/maps/SealedChamber_OuterRoom/scripts.inc index f3cd05a86345..2e80d06c82bb 100644 --- a/data/maps/SealedChamber_OuterRoom/scripts.inc +++ b/data/maps/SealedChamber_OuterRoom/scripts.inc @@ -1,23 +1,23 @@ -SealedChamber_OuterRoom_MapScripts:: @ 8239106 +SealedChamber_OuterRoom_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, SealedChamber_OuterRoom_OnResume map_script MAP_SCRIPT_ON_TRANSITION, SealedChamber_OuterRoom_OnTransition map_script MAP_SCRIPT_ON_LOAD, SealedChamber_OuterRoom_OnLoad .byte 0 -SealedChamber_OuterRoom_OnResume: @ 8239116 +SealedChamber_OuterRoom_OnResume: setdivewarp MAP_UNDERWATER_SEALED_CHAMBER, 255, 12, 44 setescapewarp MAP_UNDERWATER_SEALED_CHAMBER, 255, 12, 44 end -SealedChamber_OuterRoom_OnTransition: @ 8239127 +SealedChamber_OuterRoom_OnTransition: setflag FLAG_LANDMARK_SEALED_CHAMBER end -SealedChamber_OuterRoom_OnLoad: @ 823912B +SealedChamber_OuterRoom_OnLoad: call_if_unset FLAG_SYS_BRAILLE_DIG, SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance end -SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance:: @ 8239135 +SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance:: setmetatile 9, 1, METATILE_Cave_EntranceCover, 1 setmetatile 10, 1, METATILE_Cave_EntranceCover, 1 setmetatile 11, 1, METATILE_Cave_EntranceCover, 1 @@ -26,7 +26,7 @@ SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance:: @ 8239135 setmetatile 11, 2, METATILE_Cave_SealedChamberBraille_Mid, 1 return -SealedChamber_OuterRoom_EventScript_BrailleABC:: @ 823916C +SealedChamber_OuterRoom_EventScript_BrailleABC:: lockall braillemessage SealedChamber_OuterRoom_Braille_ABC waitbuttonpress @@ -34,7 +34,7 @@ SealedChamber_OuterRoom_EventScript_BrailleABC:: @ 823916C releaseall end -SealedChamber_OuterRoom_EventScript_BrailleGHI:: @ 8239176 +SealedChamber_OuterRoom_EventScript_BrailleGHI:: lockall braillemessage SealedChamber_OuterRoom_Braille_GHI waitbuttonpress @@ -42,7 +42,7 @@ SealedChamber_OuterRoom_EventScript_BrailleGHI:: @ 8239176 releaseall end -SealedChamber_OuterRoom_EventScript_BrailleMNO:: @ 8239180 +SealedChamber_OuterRoom_EventScript_BrailleMNO:: lockall braillemessage SealedChamber_OuterRoom_Braille_MNO waitbuttonpress @@ -50,7 +50,7 @@ SealedChamber_OuterRoom_EventScript_BrailleMNO:: @ 8239180 releaseall end -SealedChamber_OuterRoom_EventScript_BrailleTUV:: @ 823918A +SealedChamber_OuterRoom_EventScript_BrailleTUV:: lockall braillemessage SealedChamber_OuterRoom_Braille_TUV waitbuttonpress @@ -58,7 +58,7 @@ SealedChamber_OuterRoom_EventScript_BrailleTUV:: @ 823918A releaseall end -SealedChamber_OuterRoom_EventScript_BrailleDEF:: @ 8239194 +SealedChamber_OuterRoom_EventScript_BrailleDEF:: lockall braillemessage SealedChamber_OuterRoom_Braille_DEF waitbuttonpress @@ -66,7 +66,7 @@ SealedChamber_OuterRoom_EventScript_BrailleDEF:: @ 8239194 releaseall end -SealedChamber_OuterRoom_EventScript_BrailleJKL:: @ 823919E +SealedChamber_OuterRoom_EventScript_BrailleJKL:: lockall braillemessage SealedChamber_OuterRoom_Braille_JKL waitbuttonpress @@ -74,7 +74,7 @@ SealedChamber_OuterRoom_EventScript_BrailleJKL:: @ 823919E releaseall end -SealedChamber_OuterRoom_EventScript_BraillePQRS:: @ 82391A8 +SealedChamber_OuterRoom_EventScript_BraillePQRS:: lockall braillemessage SealedChamber_OuterRoom_Braille_PQRS waitbuttonpress @@ -82,7 +82,7 @@ SealedChamber_OuterRoom_EventScript_BraillePQRS:: @ 82391A8 releaseall end -SealedChamber_OuterRoom_EventScript_BraillePeriod:: @ 82391B2 +SealedChamber_OuterRoom_EventScript_BraillePeriod:: lockall braillemessage SealedChamber_OuterRoom_Braille_Period waitbuttonpress @@ -90,7 +90,7 @@ SealedChamber_OuterRoom_EventScript_BraillePeriod:: @ 82391B2 releaseall end -SealedChamber_OuterRoom_EventScript_BrailleWXYZ:: @ 82391BC +SealedChamber_OuterRoom_EventScript_BrailleWXYZ:: lockall braillemessage SealedChamber_OuterRoom_Braille_WXYZ waitbuttonpress @@ -98,7 +98,7 @@ SealedChamber_OuterRoom_EventScript_BrailleWXYZ:: @ 82391BC releaseall end -SealedChamber_OuterRoom_EventScript_BrailleComma:: @ 82391C6 +SealedChamber_OuterRoom_EventScript_BrailleComma:: lockall braillemessage SealedChamber_OuterRoom_Braille_Comma waitbuttonpress @@ -106,7 +106,7 @@ SealedChamber_OuterRoom_EventScript_BrailleComma:: @ 82391C6 releaseall end -SealedChamber_OuterRoom_EventScript_InnerRoomEntranceWall:: @ 82391D0 +SealedChamber_OuterRoom_EventScript_InnerRoomEntranceWall:: lockall goto_if_set FLAG_SYS_BRAILLE_DIG, SealedChamber_OuterRoom_EventScript_HoleInWall braillemessage SealedChamber_OuterRoom_Braille_DigHere @@ -115,12 +115,12 @@ SealedChamber_OuterRoom_EventScript_InnerRoomEntranceWall:: @ 82391D0 releaseall end -SealedChamber_OuterRoom_EventScript_HoleInWall:: @ 82391E3 +SealedChamber_OuterRoom_EventScript_HoleInWall:: msgbox gText_BigHoleInTheWall, MSGBOX_DEFAULT releaseall end -SealedChamber_OuterRoom_EventScript_BrailleDigHere:: @ 82391ED +SealedChamber_OuterRoom_EventScript_BrailleDigHere:: lockall braillemessage SealedChamber_OuterRoom_Braille_DigHere waitbuttonpress diff --git a/data/maps/ShoalCave_HighTideEntranceRoom/scripts.inc b/data/maps/ShoalCave_HighTideEntranceRoom/scripts.inc index d2a93f8e97ac..0f3518ce6320 100644 --- a/data/maps/ShoalCave_HighTideEntranceRoom/scripts.inc +++ b/data/maps/ShoalCave_HighTideEntranceRoom/scripts.inc @@ -1,3 +1,3 @@ -ShoalCave_HighTideEntranceRoom_MapScripts:: @ 82372AB +ShoalCave_HighTideEntranceRoom_MapScripts:: .byte 0 diff --git a/data/maps/ShoalCave_HighTideInnerRoom/scripts.inc b/data/maps/ShoalCave_HighTideInnerRoom/scripts.inc index 6045f80a6180..1da508a9b861 100644 --- a/data/maps/ShoalCave_HighTideInnerRoom/scripts.inc +++ b/data/maps/ShoalCave_HighTideInnerRoom/scripts.inc @@ -1,3 +1,3 @@ -ShoalCave_HighTideInnerRoom_MapScripts:: @ 82372AC +ShoalCave_HighTideInnerRoom_MapScripts:: .byte 0 diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc index 89cadd56d11f..a1206dfb47c2 100644 --- a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc @@ -1,21 +1,21 @@ -ShoalCave_LowTideEntranceRoom_MapScripts:: @ 8236DBA +ShoalCave_LowTideEntranceRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, ShoalCave_LowTideEntranceRoom_OnTransition .byte 0 -ShoalCave_LowTideEntranceRoom_OnTransition: @ 8236DC0 +ShoalCave_LowTideEntranceRoom_OnTransition: special UpdateShoalTideFlag goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideEntranceRoom_EventScript_SetHighTide goto ShoalCave_LowTideEntranceRoom_EventScript_SetLowTide -ShoalCave_LowTideEntranceRoom_EventScript_SetHighTide:: @ 8236DD1 +ShoalCave_LowTideEntranceRoom_EventScript_SetHighTide:: setmaplayoutindex LAYOUT_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM end -ShoalCave_LowTideEntranceRoom_EventScript_SetLowTide:: @ 8236DD5 +ShoalCave_LowTideEntranceRoom_EventScript_SetLowTide:: setmaplayoutindex LAYOUT_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM end -ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: @ 8236DD9 +ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: lock faceplayer dotimebasedevents @@ -46,28 +46,28 @@ ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: @ 8236DD9 end @ If the bag is full, check if a slot will be freed when 4 Shoal Salt or Shells are given -ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed:: @ 8236E69 +ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed:: checkitem ITEM_SHOAL_SALT, 5 compare VAR_RESULT, TRUE goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells return -ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells:: @ 8236E7A +ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells:: checkitem ITEM_SHOAL_SHELL, 5 compare VAR_RESULT, TRUE goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed return -ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed:: @ 8236E8B +ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed:: setvar VAR_RESULT, 2 return -ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell:: @ 8236E91 +ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell:: msgbox ShoalCave_LowTideEntranceRoom_Text_NoSpaceInYourBag, MSGBOX_DEFAULT release end -ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells:: @ 8236E9B +ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells:: checkitem ITEM_SHOAL_SALT, 1 compare VAR_RESULT, TRUE goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell @@ -78,17 +78,17 @@ ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells:: @ 8236E9B release end -ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell:: @ 8236EC5 +ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell:: msgbox ShoalCave_LowTideEntranceRoom_Text_BringMe4ShoalSaltAndShells, MSGBOX_DEFAULT release end -ShoalCave_LowTideEntranceRoom_EventScript_DeclineShellBell:: @ 8236ECF +ShoalCave_LowTideEntranceRoom_EventScript_DeclineShellBell:: msgbox ShoalCave_LowTideEntranceRoom_Text_WantedToMakeShellBell, MSGBOX_DEFAULT release end -ShoalCave_LowTideEntranceRoom_EventScript_ResetShoalItems:: @ 8236ED9 +ShoalCave_LowTideEntranceRoom_EventScript_ResetShoalItems:: clearflag FLAG_RECEIVED_SHOAL_SALT_1 clearflag FLAG_RECEIVED_SHOAL_SALT_2 clearflag FLAG_RECEIVED_SHOAL_SALT_3 diff --git a/data/maps/ShoalCave_LowTideIceRoom/scripts.inc b/data/maps/ShoalCave_LowTideIceRoom/scripts.inc index 3f7a5cce83d9..9c9a1a1725bf 100644 --- a/data/maps/ShoalCave_LowTideIceRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideIceRoom/scripts.inc @@ -1,3 +1,3 @@ -ShoalCave_LowTideIceRoom_MapScripts:: @ 82396A1 +ShoalCave_LowTideIceRoom_MapScripts:: .byte 0 diff --git a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc index 69ef1e75f7fc..9692d2f6944f 100644 --- a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc @@ -1,65 +1,65 @@ -ShoalCave_LowTideInnerRoom_MapScripts:: @ 8236EF5 +ShoalCave_LowTideInnerRoom_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, ShoalCave_LowTideInnerRoom_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, ShoalCave_LowTideInnerRoom_OnTransition .byte 0 -ShoalCave_LowTideInnerRoom_OnTransition: @ 8236F00 +ShoalCave_LowTideInnerRoom_OnTransition: goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_SetHighTide goto ShoalCave_LowTideInnerRoom_EventScript_SetLowTide -ShoalCave_LowTideInnerRoom_EventScript_SetHighTide:: @ 8236F0E +ShoalCave_LowTideInnerRoom_EventScript_SetHighTide:: setmaplayoutindex LAYOUT_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM end -ShoalCave_LowTideInnerRoom_EventScript_SetLowTide:: @ 8236F12 +ShoalCave_LowTideInnerRoom_EventScript_SetLowTide:: setmaplayoutindex LAYOUT_SHOAL_CAVE_LOW_TIDE_INNER_ROOM end -ShoalCave_LowTideInnerRoom_OnLoad: @ 8236F16 +ShoalCave_LowTideInnerRoom_OnLoad: call ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles:: @ 8236F1C +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Large, 1 goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2:: @ 8236F3D +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Large, 1 goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3:: @ 8236F5E +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4 setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Large, 1 goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4 end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4:: @ 8236F76 +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5 setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Large, 1 goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5 end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5:: @ 8236F8E +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6 setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Large, 1 goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6 end -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6:: @ 8236FA6 +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatilesEnd setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Large, 1 return -ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatilesEnd:: @ 8236FB9 +ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatilesEnd:: return -ShoalCave_LowTideInnerRoom_EventScript_ShoalShell1:: @ 8236FBA +ShoalCave_LowTideInnerRoom_EventScript_ShoalShell1:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL @@ -71,12 +71,12 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell1:: @ 8236FBA releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell:: @ 8236FEC +ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell:: msgbox ShoalCave_Text_WasShoallShellNowNothing, MSGBOX_DEFAULT releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ShoalShell2:: @ 8236FF6 +ShoalCave_LowTideInnerRoom_EventScript_ShoalShell2:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL @@ -88,7 +88,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell2:: @ 8236FF6 releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ShoalShell3:: @ 8237028 +ShoalCave_LowTideInnerRoom_EventScript_ShoalShell3:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL @@ -100,7 +100,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell3:: @ 8237028 releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ShoalShell4:: @ 823705A +ShoalCave_LowTideInnerRoom_EventScript_ShoalShell4:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL @@ -112,7 +112,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell4:: @ 823705A releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt1:: @ 823708C +ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt1:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT @@ -124,12 +124,12 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt1:: @ 823708C releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt:: @ 82370BE +ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt:: msgbox ShoalCave_Text_WasShoalSaltNowNothing, MSGBOX_DEFAULT releaseall end -ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt2:: @ 82370C8 +ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt2:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT diff --git a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc index 0c259ff235df..d7937998ee74 100644 --- a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc @@ -1,20 +1,20 @@ -ShoalCave_LowTideLowerRoom_MapScripts:: @ 8237156 +ShoalCave_LowTideLowerRoom_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, ShoalCave_LowTideLowerRoom_OnLoad .byte 0 -ShoalCave_LowTideLowerRoom_OnLoad: @ 823715C +ShoalCave_LowTideLowerRoom_OnLoad: call ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatiles end -ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatiles:: @ 8237162 +ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatilesEnd setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Large, 1 return -ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatilesEnd:: @ 8237175 +ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatilesEnd:: return -ShoalCave_LowTideLowerRoom_EventScript_ShoalSalt4:: @ 8237176 +ShoalCave_LowTideLowerRoom_EventScript_ShoalSalt4:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT @@ -26,12 +26,12 @@ ShoalCave_LowTideLowerRoom_EventScript_ShoalSalt4:: @ 8237176 releaseall end -ShoalCave_LowTideLowerRoom_EventScript_ReceivedShoalSalt:: @ 82371A8 +ShoalCave_LowTideLowerRoom_EventScript_ReceivedShoalSalt:: msgbox ShoalCave_Text_WasShoalSaltNowNothing, MSGBOX_DEFAULT releaseall end -ShoalCave_LowTideLowerRoom_EventScript_BlackBelt:: @ 82371B2 +ShoalCave_LowTideLowerRoom_EventScript_BlackBelt:: lock faceplayer goto_if_set FLAG_RECEIVED_FOCUS_BAND, ShoalCave_LowTideLowerRoom_EventScript_ReceivedFocusBand @@ -43,18 +43,18 @@ ShoalCave_LowTideLowerRoom_EventScript_BlackBelt:: @ 82371B2 release end -ShoalCave_LowTideLowerRoom_EventScript_ReceivedFocusBand:: @ 82371E1 +ShoalCave_LowTideLowerRoom_EventScript_ReceivedFocusBand:: msgbox ShoalCave_LowTideLowerRoom_Text_EverythingStartsWithFocus, MSGBOX_DEFAULT release end -ShoalCave_LowTideLowerRoom_Text_CanOvercomeColdWithFocus: @ 82371EB +ShoalCave_LowTideLowerRoom_Text_CanOvercomeColdWithFocus: .string "The penetrating cold around these\n" .string "parts is an impediment to training.\p" .string "But with focus, one can overcome!\p" .string "With this FOCUS BAND, buckle down and\n" .string "withstand the cold!$" -ShoalCave_LowTideLowerRoom_Text_EverythingStartsWithFocus: @ 823728D +ShoalCave_LowTideLowerRoom_Text_EverythingStartsWithFocus: .string "Everything starts with focus!$" diff --git a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc index 6bbdf03457bc..a778a18e11b6 100644 --- a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc @@ -1,20 +1,20 @@ -ShoalCave_LowTideStairsRoom_MapScripts:: @ 82370FA +ShoalCave_LowTideStairsRoom_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, ShoalCave_LowTideStairsRoom_OnLoad .byte 0 -ShoalCave_LowTideStairsRoom_OnLoad: @ 8237100 +ShoalCave_LowTideStairsRoom_OnLoad: call ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatiles end -ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatiles:: @ 8237106 +ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatilesEnd setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Large, 1 return -ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatilesEnd:: @ 8237119 +ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatilesEnd:: return -ShoalCave_LowTideStairsRoom_EventScript_ShoalSalt3:: @ 823711A +ShoalCave_LowTideStairsRoom_EventScript_ShoalSalt3:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT @@ -26,7 +26,7 @@ ShoalCave_LowTideStairsRoom_EventScript_ShoalSalt3:: @ 823711A releaseall end -ShoalCave_LowTideStairsRoom_EventScript_ReceivedShoalSalt:: @ 823714C +ShoalCave_LowTideStairsRoom_EventScript_ReceivedShoalSalt:: msgbox ShoalCave_Text_WasShoalSaltNowNothing, MSGBOX_DEFAULT releaseall end diff --git a/data/maps/SkyPillar_1F/scripts.inc b/data/maps/SkyPillar_1F/scripts.inc index d60feb155791..3ef94b261c2b 100644 --- a/data/maps/SkyPillar_1F/scripts.inc +++ b/data/maps/SkyPillar_1F/scripts.inc @@ -1,13 +1,13 @@ -SkyPillar_1F_MapScripts:: @ 8239615 +SkyPillar_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_1F_OnTransition .byte 0 -SkyPillar_1F_OnTransition: @ 823961B +SkyPillar_1F_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_1F_EventScript_CleanFloor end -SkyPillar_1F_EventScript_CleanFloor:: @ 8239627 +SkyPillar_1F_EventScript_CleanFloor:: setmaplayoutindex LAYOUT_SKY_PILLAR_1F_CLEAN return diff --git a/data/maps/SkyPillar_2F/scripts.inc b/data/maps/SkyPillar_2F/scripts.inc index 8a02974ea047..9990ebba9668 100644 --- a/data/maps/SkyPillar_2F/scripts.inc +++ b/data/maps/SkyPillar_2F/scripts.inc @@ -1,20 +1,20 @@ -SkyPillar_2F_MapScripts:: @ 823962B +SkyPillar_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_2F_OnTransition map_script MAP_SCRIPT_ON_RESUME, SkyPillar_2F_SetHoleWarp .byte 0 -SkyPillar_2F_OnTransition: @ 823963B +SkyPillar_2F_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_2F_EventScript_CleanFloor copyvar VAR_ICE_STEP_COUNT, 1 end -SkyPillar_2F_EventScript_CleanFloor:: @ 823964C +SkyPillar_2F_EventScript_CleanFloor:: setmaplayoutindex LAYOUT_SKY_PILLAR_2F_CLEAN return -SkyPillar_2F_SetHoleWarp: @ 8239650 +SkyPillar_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_SKY_PILLAR_1F, 255, 0, 0 end diff --git a/data/maps/SkyPillar_3F/scripts.inc b/data/maps/SkyPillar_3F/scripts.inc index d55ac27afb73..681137df0823 100644 --- a/data/maps/SkyPillar_3F/scripts.inc +++ b/data/maps/SkyPillar_3F/scripts.inc @@ -1,13 +1,13 @@ -SkyPillar_3F_MapScripts:: @ 823965B +SkyPillar_3F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_3F_OnTransition .byte 0 -SkyPillar_3F_OnTransition: @ 8239661 +SkyPillar_3F_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_3F_EventScript_CleanFloor end -SkyPillar_3F_EventScript_CleanFloor:: @ 823966D +SkyPillar_3F_EventScript_CleanFloor:: setmaplayoutindex LAYOUT_SKY_PILLAR_3F_CLEAN return diff --git a/data/maps/SkyPillar_4F/scripts.inc b/data/maps/SkyPillar_4F/scripts.inc index af54deaff57c..bed91a1751f8 100644 --- a/data/maps/SkyPillar_4F/scripts.inc +++ b/data/maps/SkyPillar_4F/scripts.inc @@ -1,20 +1,20 @@ -SkyPillar_4F_MapScripts:: @ 8239671 +SkyPillar_4F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CaveHole_CheckFallDownHole map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_4F_OnTransition map_script MAP_SCRIPT_ON_RESUME, SkyPillar_4F_SetHoleWarp .byte 0 -SkyPillar_4F_OnTransition: @ 8239681 +SkyPillar_4F_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_4F_EventScript_CleanFloor copyvar VAR_ICE_STEP_COUNT, 1 end -SkyPillar_4F_EventScript_CleanFloor:: @ 8239692 +SkyPillar_4F_EventScript_CleanFloor:: setmaplayoutindex LAYOUT_SKY_PILLAR_4F_CLEAN return -SkyPillar_4F_SetHoleWarp: @ 8239696 +SkyPillar_4F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR setholewarp MAP_SKY_PILLAR_3F, 255, 0, 0 end diff --git a/data/maps/SkyPillar_5F/scripts.inc b/data/maps/SkyPillar_5F/scripts.inc index 2ba0c0db8b38..12fc72f4936a 100644 --- a/data/maps/SkyPillar_5F/scripts.inc +++ b/data/maps/SkyPillar_5F/scripts.inc @@ -1,13 +1,13 @@ -SkyPillar_5F_MapScripts:: @ 82396A2 +SkyPillar_5F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_5F_OnTransition .byte 0 -SkyPillar_5F_OnTransition: @ 82396A8 +SkyPillar_5F_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_5F_EventScript_CleanFloor return -SkyPillar_5F_EventScript_CleanFloor:: @ 82396B4 +SkyPillar_5F_EventScript_CleanFloor:: setmaplayoutindex LAYOUT_SKY_PILLAR_5F_CLEAN return diff --git a/data/maps/SkyPillar_Entrance/scripts.inc b/data/maps/SkyPillar_Entrance/scripts.inc index bc213d376c5c..b90454bc34f2 100644 --- a/data/maps/SkyPillar_Entrance/scripts.inc +++ b/data/maps/SkyPillar_Entrance/scripts.inc @@ -1,8 +1,8 @@ -SkyPillar_Entrance_MapScripts:: @ 823929E +SkyPillar_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_Entrance_OnTransition .byte 0 -SkyPillar_Entrance_OnTransition: @ 82392A4 +SkyPillar_Entrance_OnTransition: setflag FLAG_LANDMARK_SKY_PILLAR end diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc index 2e0495bcaa28..f11b378ed370 100644 --- a/data/maps/SkyPillar_Outside/scripts.inc +++ b/data/maps/SkyPillar_Outside/scripts.inc @@ -1,40 +1,40 @@ .set LOCALID_WALLACE, 1 -SkyPillar_Outside_MapScripts:: @ 82392A8 +SkyPillar_Outside_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_Outside_OnTransition map_script MAP_SCRIPT_ON_LOAD, SkyPillar_Outside_OnLoad map_script MAP_SCRIPT_ON_FRAME_TABLE, SkyPillar_Outside_OnFrame .byte 0 -SkyPillar_Outside_OnTransition: @ 82392B8 +SkyPillar_Outside_OnTransition: compare VAR_SOOTOPOLIS_CITY_STATE, 3 call_if_eq SkyPillar_Outside_EventScript_HideMapNamePopup compare VAR_SOOTOPOLIS_CITY_STATE, 4 call_if_ge SkyPillar_Outside_EventScript_CheckSetAbnormalWeather end -SkyPillar_Outside_EventScript_HideMapNamePopup:: @ 82392CF +SkyPillar_Outside_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -SkyPillar_Outside_EventScript_CheckSetAbnormalWeather:: @ 82392D3 +SkyPillar_Outside_EventScript_CheckSetAbnormalWeather:: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather return -SkyPillar_Outside_OnLoad: @ 82392DD +SkyPillar_Outside_OnLoad: call_if_set FLAG_WALLACE_GOES_TO_SKY_PILLAR, SkyPillar_Outside_EventScript_OpenDoor end -SkyPillar_Outside_EventScript_OpenDoor:: @ 82392E7 +SkyPillar_Outside_EventScript_OpenDoor:: setmetatile 14, 4, METATILE_Pacifidlog_SkyPillar_DoorOpen_Top, 0 setmetatile 14, 5, METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom, 0 return -SkyPillar_Outside_OnFrame: @ 82392FA +SkyPillar_Outside_OnFrame: map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 3, SkyPillar_Outside_EventScript_WallaceScene .2byte 0 -SkyPillar_Outside_EventScript_WallaceScene:: @ 8239304 +SkyPillar_Outside_EventScript_WallaceScene:: lockall applymovement LOCALID_WALLACE, SkyPillar_Outside_Movement_WallaceApproachPlayer waitmovement 0 @@ -91,7 +91,7 @@ SkyPillar_Outside_EventScript_WallaceScene:: @ 8239304 releaseall end -SkyPillar_Outside_Movement_WallaceApproachPlayer: @ 82393D3 +SkyPillar_Outside_Movement_WallaceApproachPlayer: walk_down walk_down walk_down @@ -104,7 +104,7 @@ SkyPillar_Outside_Movement_WallaceApproachPlayer: @ 82393D3 walk_right step_end -SkyPillar_Outside_Movement_WallaceClimbSkyPillar: @ 82393DE +SkyPillar_Outside_Movement_WallaceClimbSkyPillar: walk_left walk_left walk_left @@ -119,7 +119,7 @@ SkyPillar_Outside_Movement_WallaceClimbSkyPillar: @ 82393DE walk_up step_end -SkyPillar_Outside_Movement_PlayerClimbSkyPillar: @ 82393EB +SkyPillar_Outside_Movement_PlayerClimbSkyPillar: walk_left walk_left walk_left @@ -134,17 +134,17 @@ SkyPillar_Outside_Movement_PlayerClimbSkyPillar: @ 82393EB walk_up step_end -SkyPillar_Outside_EventScript_Wallace:: @ 82393F8 +SkyPillar_Outside_EventScript_Wallace:: end -SkyPillar_Outside_EventScript_ClosedDoor:: @ 82393F9 +SkyPillar_Outside_EventScript_ClosedDoor:: msgbox SkyPillar_Outside_Text_DoorIsClosed, MSGBOX_SIGN end -SkyPillar_Outside_Text_DoorIsClosed: @ 8239402 +SkyPillar_Outside_Text_DoorIsClosed: .string "The door is closed.$" -SkyPillar_Outside_Text_OpenedDoorToSkyPillar: @ 8239416 +SkyPillar_Outside_Text_OpenedDoorToSkyPillar: .string "WALLACE: Oh, my, I'm terribly sorry!\p" .string "In my haste, I didn't notice that\n" .string "I'd left you behind!\p" @@ -152,16 +152,16 @@ SkyPillar_Outside_Text_OpenedDoorToSkyPillar: @ 8239416 .string "the SKY PILLAR.\p" .string "{PLAYER}{KUN}, let's be on our way!$" -SkyPillar_Outside_Text_EarthquakeNotMomentToWaste: @ 82394BC +SkyPillar_Outside_Text_EarthquakeNotMomentToWaste: .string "WALLACE: It's an earthquake!\p" .string "There's not a moment to waste!\n" .string "We've got to hurry!$" -SkyPillar_Outside_Text_SituationGettingWorse: @ 823950C +SkyPillar_Outside_Text_SituationGettingWorse: .string "WALLACE: Hmm…\n" .string "The situation is getting worse…$" -SkyPillar_Outside_Text_GotToGoBackForSootopolis: @ 823953A +SkyPillar_Outside_Text_GotToGoBackForSootopolis: .string "WALLACE: This isn't good…\p" .string "The weather distortion is spreading\n" .string "even here…\p" diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index 86d6cf717118..acbdb4c8bd40 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -1,51 +1,51 @@ .set LOCALID_RAYQUAZA_SLEEPING, 1 -SkyPillar_Top_MapScripts:: @ 82396B8 +SkyPillar_Top_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, SkyPillar_Top_OnResume map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_Top_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SkyPillar_Top_OnWarp .byte 0 -SkyPillar_Top_OnResume: @ 82396C8 +SkyPillar_Top_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, SkyPillar_Top_EventScript_TryRemoveRayquaza end -SkyPillar_Top_EventScript_TryRemoveRayquaza:: @ 82396D2 +SkyPillar_Top_EventScript_TryRemoveRayquaza:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return -SkyPillar_Top_OnTransition: @ 82396E6 +SkyPillar_Top_OnTransition: compare VAR_SKY_PILLAR_STATE, 2 call_if_lt SkyPillar_Top_EventScript_SetCleanLayout compare VAR_SKY_PILLAR_STATE, 2 call_if_ge SkyPillar_Top_EventScript_TryShowRayquaza end -SkyPillar_Top_EventScript_SetCleanLayout:: @ 82396FD +SkyPillar_Top_EventScript_SetCleanLayout:: setmaplayoutindex LAYOUT_SKY_PILLAR_TOP_CLEAN setobjectmovementtype LOCALID_RAYQUAZA_SLEEPING, MOVEMENT_TYPE_FACE_DOWN return -SkyPillar_Top_EventScript_TryShowRayquaza:: @ 8239705 +SkyPillar_Top_EventScript_TryShowRayquaza:: call_if_unset FLAG_DEFEATED_RAYQUAZA, SkyPillar_Top_EventScript_ShowRayquaza return -SkyPillar_Top_EventScript_ShowRayquaza:: @ 823970F +SkyPillar_Top_EventScript_ShowRayquaza:: clearflag FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_STILL return -SkyPillar_Top_OnWarp: @ 8239713 +SkyPillar_Top_OnWarp: map_script_2 VAR_SKY_PILLAR_STATE, 0, SkyPillar_Top_EventScript_RayquazaFaceDown .2byte 0 -SkyPillar_Top_EventScript_RayquazaFaceDown:: @ 823971D +SkyPillar_Top_EventScript_RayquazaFaceDown:: turnobject LOCALID_RAYQUAZA_SLEEPING, DIR_SOUTH end -SkyPillar_Top_EventScript_Rayquaza:: @ 8239722 +SkyPillar_Top_EventScript_Rayquaza:: lockall waitse playmoncry SPECIES_RAYQUAZA, 2 @@ -67,24 +67,24 @@ SkyPillar_Top_EventScript_Rayquaza:: @ 8239722 releaseall end -SkyPillar_Top_EventScript_DefeatedRayquaza:: @ 8239768 +SkyPillar_Top_EventScript_DefeatedRayquaza:: setflag FLAG_DEFEATED_RAYQUAZA goto SkyPillar_Top_EventScript_DefeatedRayquaza2 end -SkyPillar_Top_EventScript_RanFromRayquaza:: @ 8239771 +SkyPillar_Top_EventScript_RanFromRayquaza:: setvar VAR_0x8004, SPECIES_RAYQUAZA goto SkyPillar_Top_EventScript_RanFromRayquaza2 end -SkyPillar_Top_EventScript_DefeatedRayquaza2:: @ 823977C +SkyPillar_Top_EventScript_DefeatedRayquaza2:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK releaseall end -SkyPillar_Top_EventScript_RanFromRayquaza2:: @ 8239785 +SkyPillar_Top_EventScript_RanFromRayquaza2:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK @@ -93,7 +93,7 @@ SkyPillar_Top_EventScript_RanFromRayquaza2:: @ 8239785 releaseall end -SkyPillar_Top_EventScript_AwakenRayquaza:: @ 823979A +SkyPillar_Top_EventScript_AwakenRayquaza:: lockall fadeoutbgm 1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp @@ -140,7 +140,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: @ 823979A @ Rayquaza has unusual movement frames @ See comments, or sAnimTable_Rayquaza -SkyPillar_Top_Movement_RayquazaStir: @ 823983A +SkyPillar_Top_Movement_RayquazaStir: delay_16 walk_in_place_fast_left @ Coiled, awake delay_16 @@ -159,7 +159,7 @@ SkyPillar_Top_Movement_RayquazaStir: @ 823983A delay_16 step_end -SkyPillar_Top_Movement_RayquazaFlyOff: @ 823984B +SkyPillar_Top_Movement_RayquazaFlyOff: delay_16 walk_in_place_down @ Coiled, asleep delay_8 @@ -174,18 +174,18 @@ SkyPillar_Top_Movement_RayquazaFlyOff: @ 823984B slide_up step_end -SkyPillar_Top_Movement_CameraPanUp: @ 8239858 +SkyPillar_Top_Movement_CameraPanUp: walk_slow_up walk_slow_up walk_slow_up step_end -SkyPillar_Top_Movement_CameraPanDown: @ 823985C +SkyPillar_Top_Movement_CameraPanDown: walk_slow_down walk_slow_down walk_slow_down step_end -SkyPillar_Top_Text_RayquazaFlewOff: @ 8239860 +SkyPillar_Top_Text_RayquazaFlewOff: .string "The awakened RAYQUAZA flew off…$" diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index ceb2e862ae59..0f705735959b 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -19,12 +19,12 @@ .set LOCALID_GRUNT_11, 33 .set LOCALID_SCOTT, 35 -SlateportCity_MapScripts:: @ 81DCC61 +SlateportCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_OnFrame .byte 0 -SlateportCity_OnTransition: @ 81DCC6C +SlateportCity_OnTransition: setvar VAR_SLATEPORT_MUSEUM_1F_STATE, 0 call SlateportCity_EventScript_EnterSlateport compare VAR_SLATEPORT_CITY_STATE, 1 @@ -33,13 +33,13 @@ SlateportCity_OnTransition: @ 81DCC6C call_if_eq SlateportCity_EventScript_SetReadyForScottScene end -SlateportCity_EventScript_EnterSlateport:: @ 81DCC8D +SlateportCity_EventScript_EnterSlateport:: setflag FLAG_VISITED_SLATEPORT_CITY setvar VAR_CONTEST_HALL_STATE, 0 setflag FLAG_HIDE_SLATEPORT_CITY_CONTEST_REPORTER return -SlateportCity_EventScript_MovePeopleForSternInterview:: @ 81DCC99 +SlateportCity_EventScript_MovePeopleForSternInterview:: setobjectxyperm LOCALID_CAPT_STERN, 28, 13 setobjectxyperm LOCALID_OLD_WOMAN, 25, 13 setobjectxyperm LOCALID_RICH_BOY, 25, 14 @@ -56,7 +56,7 @@ SlateportCity_EventScript_MovePeopleForSternInterview:: @ 81DCC99 setobjectmovementtype LOCALID_MAN_1, MOVEMENT_TYPE_FACE_LEFT return -SlateportCity_EventScript_SetReadyForScottScene:: @ 81DCCE7 +SlateportCity_EventScript_SetReadyForScottScene:: setflag FLAG_HIDE_MAP_NAME_POPUP getplayerxy VAR_0x8004, VAR_0x8005 compare VAR_0x8004, 30 @@ -65,16 +65,16 @@ SlateportCity_EventScript_SetReadyForScottScene:: @ 81DCCE7 setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_RIGHT return -SlateportCity_EventScript_MoveScottLeft:: @ 81DCD06 +SlateportCity_EventScript_MoveScottLeft:: setobjectxyperm LOCALID_SCOTT, 22, 27 setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_RIGHT return -SlateportCity_OnFrame: @ 81DCD12 +SlateportCity_OnFrame: map_script_2 VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 1, SlateportCity_EventScript_ScottScene .2byte 0 -SlateportCity_EventScript_ScottScene:: @ 81DCD1C +SlateportCity_EventScript_ScottScene:: lockall addobject LOCALID_SCOTT applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PlayerFaceScott @@ -110,13 +110,13 @@ SlateportCity_EventScript_ScottScene:: @ 81DCD1C releaseall end -SlateportCity_Movement_PlayerFaceScott: @ 81DCDA8 +SlateportCity_Movement_PlayerFaceScott: delay_16 delay_8 walk_in_place_fastest_left step_end -SlateportCity_Movement_ScottApproachPlayer: @ 81DCDAC +SlateportCity_Movement_ScottApproachPlayer: walk_right walk_right walk_right @@ -126,7 +126,7 @@ SlateportCity_Movement_ScottApproachPlayer: @ 81DCDAC walk_right step_end -SlateportCity_Movement_ScottExit: @ 81DCDB4 +SlateportCity_Movement_ScottExit: walk_left walk_left walk_left @@ -137,7 +137,7 @@ SlateportCity_Movement_ScottExit: @ 81DCDB4 walk_left step_end -SlateportCity_EventScript_EnergyGuru:: @ 81DCDBD +SlateportCity_EventScript_EnergyGuru:: lock faceplayer message SlateportCity_Text_EnergyGuruSellWhatYouNeed @@ -147,7 +147,7 @@ SlateportCity_EventScript_EnergyGuru:: @ 81DCDBD release end -SlateportCity_Pokemart_EnergyGuru: @ 81DCDD4 +SlateportCity_Pokemart_EnergyGuru: .2byte ITEM_PROTEIN .2byte ITEM_IRON .2byte ITEM_CARBOS @@ -158,7 +158,7 @@ SlateportCity_Pokemart_EnergyGuru: @ 81DCDD4 release end -SlateportCity_EventScript_EffortRibbonWoman:: @ 81DCDE4 +SlateportCity_EventScript_EffortRibbonWoman:: lock faceplayer bufferleadmonspeciesname 0 @@ -178,17 +178,17 @@ SlateportCity_EventScript_EffortRibbonWoman:: @ 81DCDE4 release end -SlateportCity_EventScript_MonEVsNotMaxed:: @ 81DCE2E +SlateportCity_EventScript_MonEVsNotMaxed:: msgbox SlateportCity_Text_GoForItLittleHarder, MSGBOX_DEFAULT release end -SlateportCity_EventScript_MonHasEffortRibbon:: @ 81DCE38 +SlateportCity_EventScript_MonHasEffortRibbon:: msgbox SlateportCity_Text_EffortRibbonLooksGoodOnIt, MSGBOX_DEFAULT release end -SlateportCity_EventScript_Cook:: @ 81DCE42 +SlateportCity_EventScript_Cook:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -197,12 +197,12 @@ SlateportCity_EventScript_Cook:: @ 81DCE42 release end -SlateportCity_EventScript_CookSternInterview:: @ 81DCE59 +SlateportCity_EventScript_CookSternInterview:: msgbox SlateportCity_Text_CaptainComeBackWithBigFish, MSGBOX_DEFAULT release end -SlateportCity_EventScript_OldWoman:: @ 81DCE63 +SlateportCity_EventScript_OldWoman:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -211,12 +211,12 @@ SlateportCity_EventScript_OldWoman:: @ 81DCE63 release end -SlateportCity_EventScript_OldWomanSternInterview:: @ 81DCE7A +SlateportCity_EventScript_OldWomanSternInterview:: msgbox SlateportCity_Text_CaptSternBeingInterviewed, MSGBOX_DEFAULT release end -SlateportCity_EventScript_Girl:: @ 81DCE84 +SlateportCity_EventScript_Girl:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -226,17 +226,17 @@ SlateportCity_EventScript_Girl:: @ 81DCE84 release end -SlateportCity_EventScript_GirlSternInterview:: @ 81DCEA4 +SlateportCity_EventScript_GirlSternInterview:: msgbox SlateportCity_Text_InterviewerSoCool, MSGBOX_DEFAULT release end -SlateportCity_EventScript_GirlSecretBase:: @ 81DCEAE +SlateportCity_EventScript_GirlSecretBase:: msgbox SlateportCity_Text_BuyBricksSoDecorWontGetDirty, MSGBOX_DEFAULT release end -SlateportCity_EventScript_RichBoy:: @ 81DCEB8 +SlateportCity_EventScript_RichBoy:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -245,22 +245,22 @@ SlateportCity_EventScript_RichBoy:: @ 81DCEB8 release end -SlateportCity_EventScript_RichBoySternInterview:: @ 81DCECF +SlateportCity_EventScript_RichBoySternInterview:: msgbox SlateportCity_Text_SternSaysDiscoveredSomething, MSGBOX_DEFAULT release end -SlateportCity_EventScript_FatMan:: @ 81DCED9 +SlateportCity_EventScript_FatMan:: compare VAR_SLATEPORT_CITY_STATE, 1 goto_if_eq SlateportCity_EventScript_FatManSternInterview msgbox SlateportCity_Text_BushedHikingFromMauville, MSGBOX_NPC end -SlateportCity_EventScript_FatManSternInterview:: @ 81DCEED +SlateportCity_EventScript_FatManSternInterview:: msgbox SlateportCity_Text_AmIOnTV, MSGBOX_SIGN end -SlateportCity_EventScript_Man1:: @ 81DCEF6 +SlateportCity_EventScript_Man1:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -269,12 +269,12 @@ SlateportCity_EventScript_Man1:: @ 81DCEF6 release end -SlateportCity_EventScript_Man1SternInterview:: @ 81DCF0D +SlateportCity_EventScript_Man1SternInterview:: msgbox SlateportCity_Text_CaptainsACelebrity, MSGBOX_DEFAULT release end -SlateportCity_EventScript_Woman1:: @ 81DCF17 +SlateportCity_EventScript_Woman1:: lock faceplayer goto_if_set FLAG_DOCK_REJECTED_DEVON_GOODS, SlateportCity_EventScript_Woman1AquaGone @@ -282,16 +282,16 @@ SlateportCity_EventScript_Woman1:: @ 81DCF17 release end -SlateportCity_EventScript_Woman1AquaGone:: @ 81DCF2C +SlateportCity_EventScript_Woman1AquaGone:: msgbox SlateportCity_Text_VisitedMuseumOften, MSGBOX_DEFAULT release end -SlateportCity_EventScript_BattleTentSign:: @ 81DCF36 +SlateportCity_EventScript_BattleTentSign:: msgbox SlateportCity_Text_BattleTentSign, MSGBOX_SIGN end -SlateportCity_EventScript_SternsShipyardSign:: @ 81DCF3F +SlateportCity_EventScript_SternsShipyardSign:: lockall goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_EventScript_SternsShipyardFerryComplete goto_if_set FLAG_BADGE07_GET, SlateportCity_EventScript_SternsShipyardNearsCompletion @@ -299,49 +299,49 @@ SlateportCity_EventScript_SternsShipyardSign:: @ 81DCF3F releaseall end -SlateportCity_EventScript_SternsShipyardNearsCompletion:: @ 81DCF5C +SlateportCity_EventScript_SternsShipyardNearsCompletion:: msgbox SlateportCity_Text_SternsShipyardNearsCompletion, MSGBOX_DEFAULT releaseall end -SlateportCity_EventScript_SternsShipyardFerryComplete:: @ 81DCF66 +SlateportCity_EventScript_SternsShipyardFerryComplete:: msgbox SlateportCity_Text_SternsShipyardFerryComplete, MSGBOX_DEFAULT releaseall end -SlateportCity_EventScript_PokemonFanClubSign:: @ 81DCF70 +SlateportCity_EventScript_PokemonFanClubSign:: msgbox SlateportCity_Text_PokemonFanClubSign, MSGBOX_SIGN end -SlateportCity_EventScript_OceanicMuseumSign:: @ 81DCF79 +SlateportCity_EventScript_OceanicMuseumSign:: msgbox SlateportCity_Text_OceanicMuseumSign, MSGBOX_SIGN end -SlateportCity_EventScript_CitySign:: @ 81DCF82 +SlateportCity_EventScript_CitySign:: msgbox SlateportCity_Text_CitySign, MSGBOX_SIGN end -SlateportCity_EventScript_MarketSign:: @ 81DCF8B +SlateportCity_EventScript_MarketSign:: msgbox SlateportCity_Text_MarketSign, MSGBOX_SIGN end -SlateportCity_EventScript_HarborSign:: @ 81DCF94 +SlateportCity_EventScript_HarborSign:: lockall goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_EventScript_HarborSignFerryComplete msgbox SlateportCity_Text_HarborFerryUnderConstruction, MSGBOX_DEFAULT releaseall end -SlateportCity_EventScript_HarborSignFerryComplete:: @ 81DCFA8 +SlateportCity_EventScript_HarborSignFerryComplete:: msgbox SlateportCity_Text_HarborSign, MSGBOX_DEFAULT releaseall end -SlateportCity_EventScript_NameRatersHouseSign:: @ 81DCFB2 +SlateportCity_EventScript_NameRatersHouseSign:: msgbox SlateportCity_Text_NameRatersHouseSign, MSGBOX_SIGN end -SlateportCity_EventScript_Maniac:: @ 81DCFBB +SlateportCity_EventScript_Maniac:: lock faceplayer compare VAR_SLATEPORT_CITY_STATE, 1 @@ -351,32 +351,32 @@ SlateportCity_EventScript_Maniac:: @ 81DCFBB end @ Unclear if the text here was meant to be different, but its not -SlateportCity_EventScript_ManiacSternInterview:: @ 81DCFD2 +SlateportCity_EventScript_ManiacSternInterview:: msgbox SlateportCity_Text_GetNameRaterToHelpYou, MSGBOX_DEFAULT release end -SlateportCity_EventScript_Woman2:: @ 81DCFDC +SlateportCity_EventScript_Woman2:: msgbox SlateportCity_Text_CantChangeTradeMonName, MSGBOX_NPC end -SlateportCity_EventScript_Sailor1:: @ 81DCFE5 +SlateportCity_EventScript_Sailor1:: msgbox SlateportCity_Text_SeaIsSoWet, MSGBOX_NPC end -SlateportCity_EventScript_Sailor2:: @ 81DCFEE +SlateportCity_EventScript_Sailor2:: msgbox SlateportCity_Text_SinkOldBoats, MSGBOX_NPC end -SlateportCity_EventScript_PokefanF:: @ 81DCFF7 +SlateportCity_EventScript_PokefanF:: msgbox SlateportCity_Text_BuyTooMuch, MSGBOX_NPC end -SlateportCity_EventScript_Man2:: @ 81DD000 +SlateportCity_EventScript_Man2:: msgbox SlateportCity_Text_BattleTentBuiltRecently, MSGBOX_NPC end -SlateportCity_EventScript_AquaGrunt1:: @ 81DD009 +SlateportCity_EventScript_AquaGrunt1:: lock faceplayer msgbox SlateportCity_Text_QuitPushing, MSGBOX_DEFAULT @@ -386,7 +386,7 @@ SlateportCity_EventScript_AquaGrunt1:: @ 81DD009 release end -SlateportCity_EventScript_AquaGrunt2:: @ 81DD020 +SlateportCity_EventScript_AquaGrunt2:: lock faceplayer msgbox SlateportCity_Text_AquaHasPolicy, MSGBOX_DEFAULT @@ -396,7 +396,7 @@ SlateportCity_EventScript_AquaGrunt2:: @ 81DD020 release end -SlateportCity_EventScript_AquaGrunt3:: @ 81DD037 +SlateportCity_EventScript_AquaGrunt3:: lock faceplayer msgbox SlateportCity_Text_BossIsBrilliant, MSGBOX_DEFAULT @@ -406,7 +406,7 @@ SlateportCity_EventScript_AquaGrunt3:: @ 81DD037 release end -SlateportCity_EventScript_AquaGrunt4:: @ 81DD04E +SlateportCity_EventScript_AquaGrunt4:: lock faceplayer msgbox SlateportCity_Text_WhatsNewSchemeIWonder, MSGBOX_DEFAULT @@ -416,7 +416,7 @@ SlateportCity_EventScript_AquaGrunt4:: @ 81DD04E release end -SlateportCity_EventScript_AquaGrunt5:: @ 81DD065 +SlateportCity_EventScript_AquaGrunt5:: lock faceplayer msgbox SlateportCity_Text_ShouldTakeItAll, MSGBOX_DEFAULT @@ -426,7 +426,7 @@ SlateportCity_EventScript_AquaGrunt5:: @ 81DD065 release end -SlateportCity_EventScript_AquaGrunt6:: @ 81DD07C +SlateportCity_EventScript_AquaGrunt6:: lock faceplayer msgbox SlateportCity_Text_DontButtIn, MSGBOX_DEFAULT @@ -436,7 +436,7 @@ SlateportCity_EventScript_AquaGrunt6:: @ 81DD07C release end -SlateportCity_EventScript_AquaGrunt7:: @ 81DD093 +SlateportCity_EventScript_AquaGrunt7:: lock faceplayer msgbox SlateportCity_Text_RemindsMeOfLongLineForGames, MSGBOX_DEFAULT @@ -446,7 +446,7 @@ SlateportCity_EventScript_AquaGrunt7:: @ 81DD093 release end -SlateportCity_EventScript_AquaGrunt8:: @ 81DD0AA +SlateportCity_EventScript_AquaGrunt8:: lock faceplayer msgbox SlateportCity_Text_WhyAreWeLiningUp, MSGBOX_DEFAULT @@ -456,7 +456,7 @@ SlateportCity_EventScript_AquaGrunt8:: @ 81DD0AA release end -SlateportCity_EventScript_AquaGrunt9:: @ 81DD0C1 +SlateportCity_EventScript_AquaGrunt9:: lock faceplayer playse SE_PIN @@ -489,16 +489,16 @@ SlateportCity_EventScript_AquaGrunt9:: @ 81DD0C1 release end -SlateportCity_Movement_DelayAquaGrunt: @ 81DD147 +SlateportCity_Movement_DelayAquaGrunt: delay_16 delay_16 step_end -SlateportCity_EventScript_AquaGrunt10:: @ 81DD14A +SlateportCity_EventScript_AquaGrunt10:: msgbox SlateportCity_Text_ShouldveBroughtMyGameBoy, MSGBOX_SIGN end -SlateportCity_EventScript_AquaGrunt11:: @ 81DD153 +SlateportCity_EventScript_AquaGrunt11:: lock faceplayer msgbox SlateportCity_Text_HotSpringsAfterOperation, MSGBOX_DEFAULT @@ -508,7 +508,7 @@ SlateportCity_EventScript_AquaGrunt11:: @ 81DD153 release end -SlateportCity_EventScript_DollClerk:: @ 81DD16A +SlateportCity_EventScript_DollClerk:: lock faceplayer message gText_HowMayIServeYou @@ -519,7 +519,7 @@ SlateportCity_EventScript_DollClerk:: @ 81DD16A end .align 2 -SlateportCity_PokemartDecor_Dolls: @ 81DD184 +SlateportCity_PokemartDecor_Dolls: .2byte DECOR_AZURILL_DOLL .2byte DECOR_MARILL_DOLL .2byte DECOR_SKITTY_DOLL @@ -527,12 +527,12 @@ SlateportCity_PokemartDecor_Dolls: @ 81DD184 release end -SlateportCity_EventScript_ComeBackWithSecretPower:: @ 81DD18E +SlateportCity_EventScript_ComeBackWithSecretPower:: msgbox gText_ComeBackWithSecretPower, MSGBOX_DEFAULT release end -SlateportCity_EventScript_DecorClerk:: @ 81DD198 +SlateportCity_EventScript_DecorClerk:: lock faceplayer goto_if_unset FLAG_RECEIVED_SECRET_POWER, SlateportCity_EventScript_ComeBackWithSecretPower @@ -543,7 +543,7 @@ SlateportCity_EventScript_DecorClerk:: @ 81DD198 release end -SlateportCity_PokemartDecor: @ 81DD1B8 +SlateportCity_PokemartDecor: .2byte DECOR_RED_BRICK .2byte DECOR_BLUE_BRICK .2byte DECOR_YELLOW_BRICK @@ -562,7 +562,7 @@ SlateportCity_PokemartDecor: @ 81DD1B8 release end -SlateportCity_EventScript_PowerTMClerk:: @ 81DD1D8 +SlateportCity_EventScript_PowerTMClerk:: lock faceplayer message gText_HowMayIServeYou @@ -573,7 +573,7 @@ SlateportCity_EventScript_PowerTMClerk:: @ 81DD1D8 end .align 2 -SlateportCity_Pokemart_PowerTMs: @ 81DD1F0 +SlateportCity_Pokemart_PowerTMs: .2byte ITEM_TM10 @ Hidden Power .2byte ITEM_TM43 @ Secret Power .2byte ITEM_NONE @@ -581,7 +581,7 @@ SlateportCity_Pokemart_PowerTMs: @ 81DD1F0 end @ Scene with Capt Sterns interview and Team Aqua announcing plans to steal Submarine -SlateportCity_EventScript_CaptStern:: @ 81DD1F8 +SlateportCity_EventScript_CaptStern:: lockall msgbox SlateportCity_Text_SternMoveAheadWithExploration, MSGBOX_DEFAULT msgbox SlateportCity_Text_GabbyWonderfulThanksForInterview, MSGBOX_DEFAULT @@ -638,7 +638,7 @@ SlateportCity_EventScript_CaptStern:: @ 81DD1F8 releaseall end -SlateportCity_Movement_OldWomanConcern: @ 81DD309 +SlateportCity_Movement_OldWomanConcern: delay_16 delay_16 emote_question_mark @@ -648,7 +648,7 @@ SlateportCity_Movement_OldWomanConcern: @ 81DD309 walk_in_place_fastest_left step_end -SlateportCity_Movement_ManConcern: @ 81DD311 +SlateportCity_Movement_ManConcern: emote_question_mark walk_in_place_fastest_up delay_16 @@ -658,7 +658,7 @@ SlateportCity_Movement_ManConcern: @ 81DD311 walk_in_place_fastest_left step_end -SlateportCity_Movement_GabbyExit: @ 81DD319 +SlateportCity_Movement_GabbyExit: delay_16 walk_left walk_left @@ -673,7 +673,7 @@ SlateportCity_Movement_GabbyExit: @ 81DD319 walk_left step_end -SlateportCity_Movement_TyExit: @ 81DD326 +SlateportCity_Movement_TyExit: walk_down walk_left walk_left @@ -689,19 +689,19 @@ SlateportCity_Movement_TyExit: @ 81DD326 walk_left step_end -SlateportCity_Movement_Unused: @ 81DD334 +SlateportCity_Movement_Unused: walk_down walk_in_place_fastest_up step_end -SlateportCity_Movement_SternEnterHarbor: @ 81DD337 +SlateportCity_Movement_SternEnterHarbor: walk_right walk_up walk_up set_invisible step_end -SlateportCity_Movement_SternWatchGabbyAndTyExit: @ 81DD33C +SlateportCity_Movement_SternWatchGabbyAndTyExit: delay_16 delay_16 delay_16 @@ -711,7 +711,7 @@ SlateportCity_Movement_SternWatchGabbyAndTyExit: @ 81DD33C walk_left step_end -SlateportCity_Movement_PlayerEnterHarbor: @ 81DD344 +SlateportCity_Movement_PlayerEnterHarbor: walk_in_place_fastest_right delay_16 delay_16 @@ -719,7 +719,7 @@ SlateportCity_Movement_PlayerEnterHarbor: @ 81DD344 walk_up step_end -SlateportCity_Movement_PlayerFaceStern: @ 81DD34A +SlateportCity_Movement_PlayerFaceStern: delay_16 delay_16 delay_16 @@ -730,19 +730,19 @@ SlateportCity_Movement_PlayerFaceStern: @ 81DD34A walk_in_place_fastest_down step_end -SlateportCity_EventScript_Ty:: @ 81DD353 +SlateportCity_EventScript_Ty:: msgbox SlateportCity_Text_BigSmileForCamera, MSGBOX_SIGN end -SlateportCity_EventScript_Gabby:: @ 81DD35C +SlateportCity_EventScript_Gabby:: msgbox SlateportCity_Text_MostInvaluableExperience, MSGBOX_SIGN end -SlateportCity_EventScript_Man3:: @ 81DD365 +SlateportCity_EventScript_Man3:: msgbox SlateportCity_Text_WonderIfLighthouseStartlesPokemon, MSGBOX_NPC end -SlateportCity_EventScript_BerryPowderClerk:: @ 81DD36E +SlateportCity_EventScript_BerryPowderClerk:: lock faceplayer goto_if_set FLAG_RECEIVED_POWDER_JAR, SlateportCity_EventScript_ReceivedPowderJar @@ -753,7 +753,7 @@ SlateportCity_EventScript_BerryPowderClerk:: @ 81DD36E release end -SlateportCity_EventScript_ReceivedPowderJar:: @ 81DD39A +SlateportCity_EventScript_ReceivedPowderJar:: setvar VAR_0x8004, 1 specialvar VAR_RESULT, HasEnoughBerryPowder compare VAR_RESULT, FALSE @@ -763,12 +763,12 @@ SlateportCity_EventScript_ReceivedPowderJar:: @ 81DD39A goto SlateportCity_EventScript_ChooseBerryPowderItem end -SlateportCity_EventScript_ExplainBerryPowder:: @ 81DD3C0 +SlateportCity_EventScript_ExplainBerryPowder:: msgbox SlateportCity_Text_ExplainBerryPowder, MSGBOX_DEFAULT release end -SlateportCity_EventScript_ChooseBerryPowderItem:: @ 81DD3CA +SlateportCity_EventScript_ChooseBerryPowderItem:: message SlateportCity_Text_ExchangeWhatWithIt waitmessage setvar VAR_0x8004, SCROLL_MULTI_BERRY_POWDER_VENDOR @@ -790,90 +790,90 @@ SlateportCity_EventScript_ChooseBerryPowderItem:: @ 81DD3CA case MULTI_B_PRESSED, SlateportCity_EventScript_CancelPowderItemSelect end -SlateportCity_EventScript_EnergyPowder:: @ 81DD46E +SlateportCity_EventScript_EnergyPowder:: bufferitemname 0, ITEM_ENERGY_POWDER setvar VAR_0x8008, ITEM_ENERGY_POWDER setvar VAR_0x8009, 50 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_EnergyRoot:: @ 81DD482 +SlateportCity_EventScript_EnergyRoot:: bufferitemname 0, ITEM_ENERGY_ROOT setvar VAR_0x8008, ITEM_ENERGY_ROOT setvar VAR_0x8009, 80 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_HealPowder:: @ 81DD496 +SlateportCity_EventScript_HealPowder:: bufferitemname 0, ITEM_HEAL_POWDER setvar VAR_0x8008, ITEM_HEAL_POWDER setvar VAR_0x8009, 50 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_RevivalHerb:: @ 81DD4AA +SlateportCity_EventScript_RevivalHerb:: bufferitemname 0, ITEM_REVIVAL_HERB setvar VAR_0x8008, ITEM_REVIVAL_HERB setvar VAR_0x8009, 300 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_Protein:: @ 81DD4BE +SlateportCity_EventScript_Protein:: bufferitemname 0, ITEM_PROTEIN setvar VAR_0x8008, ITEM_PROTEIN setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_Iron:: @ 81DD4D2 +SlateportCity_EventScript_Iron:: bufferitemname 0, ITEM_IRON setvar VAR_0x8008, ITEM_IRON setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_Carbos:: @ 81DD4E6 +SlateportCity_EventScript_Carbos:: bufferitemname 0, ITEM_CARBOS setvar VAR_0x8008, ITEM_CARBOS setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_Calcium:: @ 81DD4FA +SlateportCity_EventScript_Calcium:: bufferitemname 0, ITEM_CALCIUM setvar VAR_0x8008, ITEM_CALCIUM setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_Zinc:: @ 81DD50E +SlateportCity_EventScript_Zinc:: bufferitemname 0, ITEM_ZINC setvar VAR_0x8008, ITEM_ZINC setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_HPUp:: @ 81DD522 +SlateportCity_EventScript_HPUp:: bufferitemname 0, ITEM_HP_UP setvar VAR_0x8008, ITEM_HP_UP setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_PPUp:: @ 81DD536 +SlateportCity_EventScript_PPUp:: bufferitemname 0, ITEM_PP_UP setvar VAR_0x8008, ITEM_PP_UP setvar VAR_0x8009, 3000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end -SlateportCity_EventScript_CancelPowderItemSelect:: @ 81DD54A +SlateportCity_EventScript_CancelPowderItemSelect:: msgbox SlateportCity_Text_ComeBackToTradeBerryPowder, MSGBOX_DEFAULT special RemoveBerryPowderVendorMenu release end -SlateportCity_EventScript_TryBuyBerryPowderItem:: @ 81DD557 +SlateportCity_EventScript_TryBuyBerryPowderItem:: msgbox SlateportCity_Text_ExchangeBerryPowderForItem, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SlateportCity_EventScript_ChooseBerryPowderItem @@ -895,18 +895,18 @@ SlateportCity_EventScript_TryBuyBerryPowderItem:: @ 81DD557 release end -SlateportCity_EventScript_NoRoomForBerryPowderItem:: @ 81DD5C1 +SlateportCity_EventScript_NoRoomForBerryPowderItem:: msgbox gText_TheBagIsFull, MSGBOX_DEFAULT special RemoveBerryPowderVendorMenu release end -SlateportCity_EventScript_NotEnoughBerryPowder:: @ 81DD5CE +SlateportCity_EventScript_NotEnoughBerryPowder:: msgbox SlateportCity_Text_DontHaveEnoughBerryPowder, MSGBOX_DEFAULT goto SlateportCity_EventScript_ChooseBerryPowderItem end -SlateportCity_EventScript_ScottBattleTentScene:: @ 81DD5DC +SlateportCity_EventScript_ScottBattleTentScene:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 @@ -929,23 +929,23 @@ SlateportCity_EventScript_ScottBattleTentScene:: @ 81DD5DC releaseall end -SlateportCity_Movement_PushPlayerDown: @ 81DD630 +SlateportCity_Movement_PushPlayerDown: lock_facing_direction walk_down unlock_facing_direction step_end -SlateportCity_Movement_PlayerWatchScottExit: @ 81DD634 +SlateportCity_Movement_PlayerWatchScottExit: delay_16 walk_in_place_fastest_right step_end -SlateportCity_Movement_ScottExitBattleTent: @ 81DD637 +SlateportCity_Movement_ScottExitBattleTent: delay_8 walk_down step_end -SlateportCity_Movement_ScottExitAfterBattleTent: @ 81DD63A +SlateportCity_Movement_ScottExitAfterBattleTent: walk_right walk_right walk_right @@ -956,193 +956,193 @@ SlateportCity_Movement_ScottExitAfterBattleTent: @ 81DD63A walk_right step_end -SlateportCity_EventScript_BerryCrushRankingsSign:: @ 81DD643 +SlateportCity_EventScript_BerryCrushRankingsSign:: lockall special ShowBerryCrushRankings waitstate releaseall end -SlateportCity_Text_EnergyGuruSellWhatYouNeed: @ 81DD64A +SlateportCity_Text_EnergyGuruSellWhatYouNeed: .string "I'm the ENERGY GURU! I'll go for it and\n" .string "sell you what you need!$" -SlateportCity_Text_OhYourPokemon: @ 81DD68A +SlateportCity_Text_OhYourPokemon: .string "Oh?\n" .string "Your {STR_VAR_1}…$" -SlateportCity_Text_PleaseGiveItThisEffortRibbon: @ 81DD697 +SlateportCity_Text_PleaseGiveItThisEffortRibbon: .string "Went for it stupendously!\p" .string "As its reward, please give it this\n" .string "EFFORT RIBBON.$" -SlateportCity_Text_ReceivedEffortRibbon: @ 81DD6E3 +SlateportCity_Text_ReceivedEffortRibbon: .string "{PLAYER} received the EFFORT RIBBON.$" -SlateportCity_Text_PutEffortRibbonOnMon: @ 81DD702 +SlateportCity_Text_PutEffortRibbonOnMon: .string "{PLAYER} put the EFFORT RIBBON\n" .string "on {STR_VAR_1}.$" -SlateportCity_Text_GoForItLittleHarder: @ 81DD722 +SlateportCity_Text_GoForItLittleHarder: .string "You have to go for it a little harder.\p" .string "If you do, I'll give your POKéMON\n" .string "something nice.$" -SlateportCity_Text_EffortRibbonLooksGoodOnIt: @ 81DD77B +SlateportCity_Text_EffortRibbonLooksGoodOnIt: .string "Oh! Your {STR_VAR_1}, that EFFORT\n" .string "RIBBON looks good on it!$" -SlateportCity_Text_WonderIfLighthouseStartlesPokemon: @ 81DD7AD +SlateportCity_Text_WonderIfLighthouseStartlesPokemon: .string "The light of the lighthouse reaches\n" .string "dozens of miles away.\p" .string "I wonder if it doesn't startle POKéMON\n" .string "in the sea.$" -SlateportCity_Text_SeaweedFullOfLife: @ 81DD81A +SlateportCity_Text_SeaweedFullOfLife: .string "Ooh, look at this!\p" .string "The seaweed you can get around these\n" .string "parts is fresh and full of life.\p" .string "Why, it looks like it can even rear up\n" .string "and attack!$" -SlateportCity_Text_HowTownIsBornAndGrows: @ 81DD8A6 +SlateportCity_Text_HowTownIsBornAndGrows: .string "Where the water is clean, the fruits\n" .string "of bountiful harvest gather.\p" .string "And where people gather, a market\n" .string "soon starts.\p" .string "That is how a town is born and grows.$" -SlateportCity_Text_SlateportWonderfulPlace: @ 81DD93D +SlateportCity_Text_SlateportWonderfulPlace: .string "Shopping where you can breathe the\n" .string "scent of the ocean…\p" .string "SLATEPORT is such a wonderful place!$" -SlateportCity_Text_BuyBricksSoDecorWontGetDirty: @ 81DD999 +SlateportCity_Text_BuyBricksSoDecorWontGetDirty: .string "If you put DOLLS or CUSHIONS on\n" .string "the floor, they'll get dirty.\p" .string "I'm going to buy some BRICKS so my\n" .string "DOLLS and CUSHIONS won't get dirty\l" .string "when I leave them out.$" -SlateportCity_Text_GoingToCompeteInBattleTent: @ 81DDA34 +SlateportCity_Text_GoingToCompeteInBattleTent: .string "Wroooar! I'm going to compete in\n" .string "the BATTLE TENT, too!\p" .string "But before that, I need to catch\n" .string "some POKéMON!$" -SlateportCity_Text_BushedHikingFromMauville: @ 81DDA9A +SlateportCity_Text_BushedHikingFromMauville: .string "Whew… I'm just bushed…\p" .string "I hiked over from MAUVILLE CITY.\n" .string "But, boy, this city's huge.\p" .string "If I'd known this, I would've ridden\n" .string "my BIKE here.$" -SlateportCity_Text_EveryoneCallsHimCaptStern: @ 81DDB21 +SlateportCity_Text_EveryoneCallsHimCaptStern: .string "STERN, the fellow who built the\n" .string "MUSEUM, also happens to be the leader\l" .string "of an undersea exploration team.\p" .string "So, everyone calls him CAPT. STERN.$" -SlateportCity_Text_WhatsLongLineOverThere: @ 81DDBAC +SlateportCity_Text_WhatsLongLineOverThere: .string "What is that over there?\n" .string "That long line…$" -SlateportCity_Text_VisitedMuseumOften: @ 81DDBD5 +SlateportCity_Text_VisitedMuseumOften: .string "When I was a child, I visited\n" .string "the MUSEUM often.\p" .string "I used to dream about the mysteries of\n" .string "the sea after seeing the exhibits.$" -SlateportCity_Text_QuitPushing: @ 81DDC4F +SlateportCity_Text_QuitPushing: .string "Hey, there! Quit pushing!\n" .string "This is the line, can't you see?$" -SlateportCity_Text_AquaHasPolicy: @ 81DDC8A +SlateportCity_Text_AquaHasPolicy: .string "TEAM AQUA has a policy of\n" .string "assembling and dispersing at\l" .string "the operation site.$" -SlateportCity_Text_BossIsBrilliant: @ 81DDCD5 +SlateportCity_Text_BossIsBrilliant: .string "Our BOSS is brilliant.\p" .string "What would he want to do with\n" .string "a MUSEUM now?$" -SlateportCity_Text_WhatsNewSchemeIWonder: @ 81DDD18 +SlateportCity_Text_WhatsNewSchemeIWonder: .string "What's the new scheme, I wonder?\p" .string "Our BOSS is scary when he's mad, so\n" .string "I'd better not screw things up…$" -SlateportCity_Text_ShouldTakeItAll: @ 81DDD7D +SlateportCity_Text_ShouldTakeItAll: .string "If there's something we need in\n" .string "the MUSEUM, we should take it all!$" -SlateportCity_Text_DontButtIn: @ 81DDDC0 +SlateportCity_Text_DontButtIn: .string "Hey, you there!\n" .string "Don't butt in!$" -SlateportCity_Text_RemindsMeOfLongLineForGames: @ 81DDDDF +SlateportCity_Text_RemindsMeOfLongLineForGames: .string "A long line, huh?\p" .string "It reminds me of the times I lined up to\n" .string "buy smash-hit games…$" -SlateportCity_Text_WhyAreWeLiningUp: @ 81DDE2F +SlateportCity_Text_WhyAreWeLiningUp: .string "Why are we even lining up and paying?\n" .string "We should just march in!$" -SlateportCity_Text_WhatDoYouWant: @ 81DDE6E +SlateportCity_Text_WhatDoYouWant: .string "What?\n" .string "What do you want?$" -SlateportCity_Text_IllReadSignForYou: @ 81DDE86 +SlateportCity_Text_IllReadSignForYou: .string "You want to read this sign?\n" .string "I'll read it for you!$" -SlateportCity_Text_SaysSomethingLikeSeaIsEndless: @ 81DDEB8 +SlateportCity_Text_SaysSomethingLikeSeaIsEndless: .string "Let's see…\p" .string "Um… I think it says something like\n" .string "“the life in the sea is endless.”\p" .string "Yup, I'm pretty sure that's what\n" .string "it says.$" -SlateportCity_Text_ShouldveBroughtMyGameBoy: @ 81DDF32 +SlateportCity_Text_ShouldveBroughtMyGameBoy: .string "Grumble…\p" .string "I should've brought my Game Boy\n" .string "Advance so I wouldn't get bored in line…\p" .string "Grumble…$" -SlateportCity_Text_HotSpringsAfterOperation: @ 81DDF8D +SlateportCity_Text_HotSpringsAfterOperation: .string "When this operation's over, I'll take\n" .string "you to a hot spring spa!\p" .string "That's what our leader said.\n" .string "I can't wait!$" -SlateportCity_Text_SeaIsSoWet: @ 81DDFF7 +SlateportCity_Text_SeaIsSoWet: .string "The sea is just so vast…\p" .string "Could the sea have been made by\n" .string "the tears shed by POKéMON?$" -SlateportCity_Text_SinkOldBoats: @ 81DE04B +SlateportCity_Text_SinkOldBoats: .string "Do you know what they do with old\n" .string "ships that become too creaky to sail?\p" .string "They sink them in the sea so they\n" .string "become habitats for POKéMON.$" -SlateportCity_Text_BuyTooMuch: @ 81DE0D2 +SlateportCity_Text_BuyTooMuch: .string "Whenever I visit here, I get carried\n" .string "away and buy too much.$" -SlateportCity_Text_GetNameRaterToHelpYou: @ 81DE10E +SlateportCity_Text_GetNameRaterToHelpYou: .string "If you want to change your POKéMON's\n" .string "nickname, you'll have to get the NAME\l" .string "RATER to help you.$" -SlateportCity_Text_CantChangeTradeMonName: @ 81DE16C +SlateportCity_Text_CantChangeTradeMonName: .string "Any POKéMON you get in a trade,\n" .string "you can't change its nickname.\p" .string "The original TRAINER's love for that\n" .string "POKéMON is in the nickname.$" -SlateportCity_Text_BattleTentBuiltRecently: @ 81DE1EC +SlateportCity_Text_BattleTentBuiltRecently: .string "Recently, a BATTLE TENT was built\n" .string "in SLATEPORT.\p" .string "GYMS are fun, but the BATTLE TENT's\n" @@ -1150,62 +1150,62 @@ SlateportCity_Text_BattleTentBuiltRecently: @ 81DE1EC .string "You should go find tough POKéMON\n" .string "for the BATTLE TENT!$" -SlateportCity_Text_CaptSternBeingInterviewed: @ 81DE28E +SlateportCity_Text_CaptSternBeingInterviewed: .string "I was hoping that it was a famous star\n" .string "so I could get an autograph.\p" .string "But who's that being interviewed?\n" .string "Isn't that CAPT. STERN?$" -SlateportCity_Text_InterviewerSoCool: @ 81DE30C +SlateportCity_Text_InterviewerSoCool: .string "That lady interviewer is so cool\n" .string "and pretty.\p" .string "When I grow up, I'm going to be\n" .string "an international journalist!$" -SlateportCity_Text_SternSaysDiscoveredSomething: @ 81DE376 +SlateportCity_Text_SternSaysDiscoveredSomething: .string "CAPT. STERN says they discovered\n" .string "something at the bottom of the sea.\p" .string "I wonder what it is?\n" .string "What could it be?$" -SlateportCity_Text_CaptainComeBackWithBigFish: @ 81DE3E2 +SlateportCity_Text_CaptainComeBackWithBigFish: .string "What's going on here?\p" .string "Did the good CAPTAIN come back with\n" .string "a big fish from the ocean floor?$" -SlateportCity_Text_AmIOnTV: @ 81DE43D +SlateportCity_Text_AmIOnTV: .string "Hey! Are you watching?\n" .string "Am I on TV?$" -SlateportCity_Text_CaptainsACelebrity: @ 81DE460 +SlateportCity_Text_CaptainsACelebrity: .string "A TV interview! Here!\n" .string "The CAPTAIN's a celebrity!$" -SlateportCity_Text_BigSmileForCamera: @ 81DE491 +SlateportCity_Text_BigSmileForCamera: .string "TY: Okay, CAPT. STERN, a big smile\n" .string "for the camera!$" -SlateportCity_Text_MostInvaluableExperience: @ 81DE4C4 +SlateportCity_Text_MostInvaluableExperience: .string "GABBY: I see, I see. You've had a most\n" .string "invaluable experience…$" -SlateportCity_Text_SternMoveAheadWithExploration: @ 81DE502 +SlateportCity_Text_SternMoveAheadWithExploration: .string "CAPT. STERN: Yes, indeed. We intend to\n" .string "move ahead with our exploration.$" -SlateportCity_Text_GabbyWonderfulThanksForInterview: @ 81DE54A +SlateportCity_Text_GabbyWonderfulThanksForInterview: .string "GABBY: That's wonderful, CAPT. STERN!\n" .string "Thank you for taking the time from\l" .string "your busy schedule to talk to us.\p" .string "We hope we can interview you again\n" .string "with news of more discoveries!$" -SlateportCity_Text_SternWhewFirstInterview: @ 81DE5F7 +SlateportCity_Text_SternWhewFirstInterview: .string "CAPT. STERN: Whew…\p" .string "That was my first time to be filmed for\n" .string "TV. That was nerve-wracking.$" -SlateportCity_Text_OhPlayerWeMadeDiscovery: @ 81DE64F +SlateportCity_Text_OhPlayerWeMadeDiscovery: .string "Oh! {PLAYER}{KUN}!\n" .string "You're looking great!\p" .string "We made a huge discovery on our last\n" @@ -1215,7 +1215,7 @@ SlateportCity_Text_OhPlayerWeMadeDiscovery: @ 81DE64F .string "We think it's the habitat of a POKéMON\n" .string "that's said to have been long extinct.$" -SlateportCity_Text_AquaWillAssumeControlOfSubmarine: @ 81DE724 +SlateportCity_Text_AquaWillAssumeControlOfSubmarine: .string "Fufufu…\n" .string "CAPT. STERN, I presume.\p" .string "We of TEAM AQUA will assume\n" @@ -1226,77 +1226,77 @@ SlateportCity_Text_AquaWillAssumeControlOfSubmarine: @ 81DE724 .string "Just watch and learn what TEAM\l" .string "AQUA has planned!$" -SlateportCity_Text_SternWhatWasAllThat: @ 81DE7F7 +SlateportCity_Text_SternWhatWasAllThat: .string "CAPT. STERN: What was that all about?\p" .string "It sounded like someone using\n" .string "a megaphone…\p" .string "Where did it come from?$" -SlateportCity_Text_FromHarborTryingToTakeSub: @ 81DE860 +SlateportCity_Text_FromHarborTryingToTakeSub: .string "It's from the HARBOR!\p" .string "The submarine!\n" .string "They're trying to take it!$" -SlateportCity_Text_PleaseComeWithMe: @ 81DE8A0 +SlateportCity_Text_PleaseComeWithMe: .string "{PLAYER}{KUN}!\n" .string "Please, come with me!$" -SlateportCity_Text_BattleTentSign: @ 81DE8BC +SlateportCity_Text_BattleTentSign: .string "BATTLE TENT SLATEPORT SITE\n" .string "“Find it! The ultimate POKéMON!”$" -SlateportCity_Text_SternsShipyardWantedSign: @ 81DE8F8 +SlateportCity_Text_SternsShipyardWantedSign: .string "STERN'S SHIPYARD\p" .string "“Wanted: A sailor capable of sailing\n" .string "in all currents.”$" -SlateportCity_Text_SternsShipyardNearsCompletion: @ 81DE940 +SlateportCity_Text_SternsShipyardNearsCompletion: .string "STERN'S SHIPYARD\p" .string "“The ferry S.S. TIDAL nears\n" .string "completion for serving the ports of\l" .string "SLATEPORT and LILYCOVE.”$" -SlateportCity_Text_SternsShipyardFerryComplete: @ 81DE9AA +SlateportCity_Text_SternsShipyardFerryComplete: .string "STERN'S SHIPYARD\p" .string "“Boarding of the SLATEPORT-LILYCOVE\n" .string "ferry S.S. TIDAL is handled at the\l" .string "HARBOR.”$" -SlateportCity_Text_PokemonFanClubSign: @ 81DEA0B +SlateportCity_Text_PokemonFanClubSign: .string "POKéMON FAN CLUB\n" .string "“Calling all fans of POKéMON!”$" -SlateportCity_Text_OceanicMuseumSign: @ 81DEA3B +SlateportCity_Text_OceanicMuseumSign: .string "“The endless sea sustains\n" .string "all life.”\p" .string "OCEANIC MUSEUM$" -SlateportCity_Text_CitySign: @ 81DEA6F +SlateportCity_Text_CitySign: .string "SLATEPORT CITY\p" .string "“The port where people and POKéMON\n" .string "cross paths.”$" -SlateportCity_Text_MarketSign: @ 81DEAAF +SlateportCity_Text_MarketSign: .string "SLATEPORT MARKET\n" .string "“Unique items found nowhere else!”$" -SlateportCity_Text_HarborFerryUnderConstruction: @ 81DEAE3 +SlateportCity_Text_HarborFerryUnderConstruction: .string "SLATEPORT HARBOR\p" .string "“The ferry S.S. TIDAL is under\n" .string "construction in the SHIPYARD.\p" .string "“Service is scheduled to begin\n" .string "shortly.”$" -SlateportCity_Text_HarborSign: @ 81DEB5A +SlateportCity_Text_HarborSign: .string "SLATEPORT HARBOR\p" .string "“Enjoy a delightful cruise on\n" .string "the ferry S.S. TIDAL.”$" -SlateportCity_Text_NameRatersHouseSign: @ 81DEBA0 +SlateportCity_Text_NameRatersHouseSign: .string "NAME RATER'S HOUSE\n" .string "“POKéMON nicknames rated.”$" -SlateportCity_Text_ExplainBerries: @ 81DEBCE +SlateportCity_Text_ExplainBerries: .string "If a wild POKéMON gets hurt, it heals\n" .string "itself by chewing on BERRIES.\p" .string "Did you know that?\p" @@ -1311,7 +1311,7 @@ SlateportCity_Text_ExplainBerries: @ 81DEBCE .string "I've got something good for someone\n" .string "like you.$" -SlateportCity_Text_ExplainBerryPowder: @ 81DED27 +SlateportCity_Text_ExplainBerryPowder: .string "I recently had machines installed at\n" .string "POKéMON CENTERS for crushing BERRIES.\p" .string "The BERRY CRUSH machines are at\n" @@ -1322,39 +1322,39 @@ SlateportCity_Text_ExplainBerryPowder: @ 81DED27 .string "I can make you all sorts of medicine\n" .string "if you bring me lots of BERRY POWDER.$" -SlateportCity_Text_BroughtMeSomeBerryPowder: @ 81DEE40 +SlateportCity_Text_BroughtMeSomeBerryPowder: .string "Have you brought me some\n" .string "BERRY POWDER?$" -SlateportCity_Text_ExchangeWhatWithIt: @ 81DEE67 +SlateportCity_Text_ExchangeWhatWithIt: .string "What would you like to exchange\n" .string "it with?$" -SlateportCity_Text_ExchangeBerryPowderForItem: @ 81DEE90 +SlateportCity_Text_ExchangeBerryPowderForItem: .string "Okay, you want to exchange your\n" .string "BERRY POWDER for one {STR_VAR_1}?$" -SlateportCity_Text_DontHaveEnoughBerryPowder: @ 81DEEC9 +SlateportCity_Text_DontHaveEnoughBerryPowder: .string "Oh, dear. You don't have enough\n" .string "BERRY POWDER.$" -SlateportCity_Text_FineBerryPowderTradeSomethingElse: @ 81DEEF7 +SlateportCity_Text_FineBerryPowderTradeSomethingElse: .string "This is fine BERRY POWDER.\n" .string "It will make excellent medicine.\p" .string "Would you like to trade more of your\n" .string "BERRY POWDER for something else?$" -SlateportCity_Text_WhenYouGetMoreBringItToMe: @ 81DEF79 +SlateportCity_Text_WhenYouGetMoreBringItToMe: .string "Okay! When you get some more\n" .string "BERRY POWDER, bring it to me, please!$" -SlateportCity_Text_ComeBackToTradeBerryPowder: @ 81DEFBC +SlateportCity_Text_ComeBackToTradeBerryPowder: .string "Come back if you'd like to trade your\n" .string "BERRY POWDER for some medicine.\p" .string "I'm always running a bazaar here.\p" .string "Did you know?$" -SlateportCity_Text_YouDroveTeamAquaAway: @ 81DF032 +SlateportCity_Text_YouDroveTeamAquaAway: .string "SCOTT: Huh?\n" .string "I'm sure I met you somewhere before.\p" .string "Have I introduced myself to you?\n" @@ -1363,22 +1363,22 @@ SlateportCity_Text_YouDroveTeamAquaAway: @ 81DF032 .string "here like they were stung.\p" .string "Let me guess--you drove them away?$" -SlateportCity_Text_MaybeThisTrainer: @ 81DF0FE +SlateportCity_Text_MaybeThisTrainer: .string "SCOTT: Hmm…\n" .string "Maybe, just maybe, this TRAINER…$" -SlateportCity_Text_LetsRegisterEachOther: @ 81DF12B +SlateportCity_Text_LetsRegisterEachOther: .string "SCOTT: All right! I think you're going\n" .string "to become a good friend.\p" .string "So, let's register each other in our\n" .string "POKéNAVS.\p" .string "… … … … … …$" -SlateportCity_Text_RegisteredScott: @ 81DF1A6 +SlateportCity_Text_RegisteredScott: .string "Registered this SCOTT person\n" .string "in the POKéNAV.$" -SlateportCity_Text_KeepEyeOnTrainersBeSeeingYou: @ 81DF1D3 +SlateportCity_Text_KeepEyeOnTrainersBeSeeingYou: .string "SCOTT: What I'd like to do is tag along\n" .string "with you, but I do want to keep an eye\l" .string "on the talents of other people, too.\p" @@ -1386,7 +1386,7 @@ SlateportCity_Text_KeepEyeOnTrainersBeSeeingYou: @ 81DF1D3 .string "a bit more.\p" .string "Be seeing you, {PLAYER}{KUN}!$" -SlateportCity_Text_TakingBattleTentChallenge: @ 81DF28C +SlateportCity_Text_TakingBattleTentChallenge: .string "SCOTT: Oh, hey!\n" .string "If it isn't {PLAYER}{KUN}!\p" .string "{PLAYER}{KUN}, let me guess--you're going\n" diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc index e642a1386e8e..c1e9bfc532e0 100644 --- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc +++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc @@ -1,7 +1,7 @@ .set LOCALID_OPPONENT, 2 .set LOCALID_PLAYER, 3 -SlateportCity_BattleTentBattleRoom_MapScripts:: @ 8209960 +SlateportCity_BattleTentBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_BattleTentBattleRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentBattleRoom_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_OnFrame @@ -10,11 +10,11 @@ SlateportCity_BattleTentBattleRoom_MapScripts:: @ 8209960 @ 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: @ 8209970 +SlateportCity_BattleTentBattleRoom_OnTransition: call SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx end -SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8209976 +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale @@ -22,29 +22,29 @@ SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8209976 goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 820998E +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8209994 +SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -SlateportCity_BattleTentBattleRoom_OnWarp: @ 820999A +SlateportCity_BattleTentBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 82099A4 +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 end -SlateportCity_BattleTentBattleRoom_OnFrame: @ 82099B4 +SlateportCity_BattleTentBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82099BE +SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_PLAYER, SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 factory_setopponentgfx @@ -65,14 +65,14 @@ SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82099BE waitstate switch VAR_RESULT case 1, SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent -SlateportCity_BattleTent_EventScript_WarpToLobbyLost:: @ 8209A1B +SlateportCity_BattleTent_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate @ forced stop -SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 8209A39 +SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT @@ -83,21 +83,21 @@ SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 8209A39 waitstate @ forced stop -SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8209A7B +SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate @ forced stop -SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter: @ 8209A99 +SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up walk_in_place_fastest_right step_end -SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: @ 8209A9E +SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index b04b03b99b61..08b19391cee0 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -1,31 +1,31 @@ .set LOCALID_ATTENDANT, 1 -SlateportCity_BattleTentCorridor_MapScripts:: @ 8208E26 +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 .byte 0 @ This is Slateport Tent's version of the Battle Factory Pre-Battle Room -SlateportCity_BattleTentCorridor_OnWarp: @ 8208E31 +SlateportCity_BattleTentCorridor_OnWarp: map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentCorridor_EventScript_SetUpObjects .2byte 0 -SlateportCity_BattleTentCorridor_EventScript_SetUpObjects:: @ 8208E3B +SlateportCity_BattleTentCorridor_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 compare VAR_0x8006, 1 goto_if_ne SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth setobjectxy LOCALID_ATTENDANT, 2, 2 turnobject LOCALID_ATTENDANT, DIR_SOUTH -SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth:: @ 8208E56 +SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -SlateportCity_BattleTentCorridor_OnFrame: @ 8208E5B +SlateportCity_BattleTentCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: @ 8208E65 +SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: compare VAR_0x8006, 1 goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle setvar VAR_TEMP_0, 1 @@ -40,7 +40,7 @@ SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: @ 8208E65 fadescreen FADE_TO_BLACK slateporttent_rentmons waitstate -SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: @ 8208EB4 +SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT closemessage applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestUp @@ -56,14 +56,14 @@ SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: @ 8208EB4 waitstate end -SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle:: @ 8208EEE +SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle:: factory_setopponentmons factory_resethelditems msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons, MSGBOX_DEFAULT playfanfare MUS_HEAL waitfanfare special HealPlayerParty -SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: @ 8208F0D +SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent @@ -75,14 +75,14 @@ SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: @ 8208F0D case 1, SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge case 2, SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge -SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge:: @ 8208F5B +SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent case YES, SlateportCity_BattleTentCorridor_EventScript_PauseChallenge case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: @ 8208F89 +SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -91,7 +91,7 @@ SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: @ 8208F89 case 0, SlateportCity_BattleTent_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_EventScript_AskSwapMon:: @ 8208FBB +SlateportCity_BattleTentCorridor_EventScript_AskSwapMon:: slateporttent_generateopponentmons msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon, MSGBOX_YESNO switch VAR_RESULT @@ -99,7 +99,7 @@ SlateportCity_BattleTentCorridor_EventScript_AskSwapMon:: @ 8208FBB case YES, SlateportCity_BattleTentCorridor_EventScript_SwapMons case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom -SlateportCity_BattleTentCorridor_EventScript_SwapMons:: @ 8208FF1 +SlateportCity_BattleTentCorridor_EventScript_SwapMons:: fadescreen FADE_TO_BLACK slateporttent_swapmons waitstate @@ -108,17 +108,17 @@ SlateportCity_BattleTentCorridor_EventScript_SwapMons:: @ 8208FF1 msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT goto SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom -SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent:: @ 8209014 +SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent waitmessage return -SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent:: @ 820901B +SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent waitmessage return -SlateportCity_BattleTentCorridor_EventScript_PauseChallenge:: @ 8209022 +SlateportCity_BattleTentCorridor_EventScript_PauseChallenge:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait waitmessage slateporttent_save CHALLENGE_STATUS_PAUSED @@ -128,25 +128,25 @@ SlateportCity_BattleTentCorridor_EventScript_PauseChallenge:: @ 8209022 frontier_reset end -SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge:: @ 8209044 +SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge:: special SavePlayerParty factory_setparties 0 goto SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent -SlateportCity_BattleTentCorridor_Movement_PlayerEnter: @ 8209059 +SlateportCity_BattleTentCorridor_Movement_PlayerEnter: walk_up walk_up walk_up walk_up step_end -SlateportCity_BattleTentCorridor_Movement_PlayerExit: @ 820905E +SlateportCity_BattleTentCorridor_Movement_PlayerExit: walk_up walk_up set_invisible step_end -SlateportCity_BattleTentCorridor_Movement_AttendantEnter: @ 8209062 +SlateportCity_BattleTentCorridor_Movement_AttendantEnter: walk_up walk_up walk_up @@ -154,14 +154,14 @@ SlateportCity_BattleTentCorridor_Movement_AttendantEnter: @ 8209062 walk_in_place_fastest_down step_end -SlateportCity_BattleTentCorridor_Movement_AttendantExit: @ 8209068 +SlateportCity_BattleTentCorridor_Movement_AttendantExit: walk_up set_invisible step_end @ Leftover text from when this was a Contest Hall in R/S @ Unused -SlateportCity_ContestHall_Text_AdviceForContests: @ 820906B +SlateportCity_ContestHall_Text_AdviceForContests: .string "Want a tasty little bit of advice\n" .string "for CONTESTS?\p" .string "Using a certain move after another\n" @@ -173,13 +173,13 @@ SlateportCity_ContestHall_Text_AdviceForContests: @ 820906B .string "disrupting your POKéMON's showing.$" @ Unused -SlateportCity_ContestHall_Text_MyPapaIsContestJudge: @ 820917A +SlateportCity_ContestHall_Text_MyPapaIsContestJudge: .string "My papa, he's a CONTEST JUDGE.\p" .string "I wonder what I should be when I\n" .string "grow up, a JUDGE or a GYM LEADER?$" @ Unused -SlateportCity_ContestHall_Text_ImLikeMajorlyCheesed: @ 82091DC +SlateportCity_ContestHall_Text_ImLikeMajorlyCheesed: .string "Hey, man, I'm like majorly cheesed,\n" .string "you know. Like, you know, I just\l" .string "wanted to know why my POKéMON\l" @@ -192,7 +192,7 @@ SlateportCity_ContestHall_Text_ImLikeMajorlyCheesed: @ 82091DC .string "Just, you know, take this!$" @ Unused -SlateportCity_ContestHall_Text_ExplainTorment: @ 8209322 +SlateportCity_ContestHall_Text_ExplainTorment: .string "That's, like, TM41, you know?\n" .string "Hey, it's TORMENT, you hearing me?\p" .string "Like, it won't let the other guy\n" @@ -201,7 +201,7 @@ SlateportCity_ContestHall_Text_ExplainTorment: @ 8209322 .string "I'm not laying a torment on you!$" @ Unused -SlateportCity_ContestHall_Text_MCStepUpTakePartInContest: @ 82093ED +SlateportCity_ContestHall_Text_MCStepUpTakePartInContest: .string "MC: Oh, my, my!\n" .string "Now isn't that a dandy of a POKéMON?\p" .string "Please! Do step right up and take\n" @@ -210,7 +210,7 @@ SlateportCity_ContestHall_Text_MCStepUpTakePartInContest: @ 82093ED .string "My eyes have never failed me!$" @ Unused -SlateportCity_ContestHall_Text_JudgeWouldntDoToMissContest: @ 82094A1 +SlateportCity_ContestHall_Text_JudgeWouldntDoToMissContest: .string "JUDGE: Well, hello there!\n" .string "I see that you're a TRAINER!\p" .string "Then, it just wouldn't do for you\n" @@ -219,19 +219,19 @@ SlateportCity_ContestHall_Text_JudgeWouldntDoToMissContest: @ 82094A1 .string "CITY and enter anytime!$" @ Unused -SlateportCity_ContestHall_Text_ItsAppealTime: @ 820954E +SlateportCity_ContestHall_Text_ItsAppealTime: .string "It's appeal time!\n" .string "What should I lead with?$" @ Unused -SlateportCity_ContestHall_Text_DidntPayAttentionToAppeal: @ 8209579 +SlateportCity_ContestHall_Text_DidntPayAttentionToAppeal: .string "They didn't pay much attention to\n" .string "my POKéMON's appeal…\p" .string "Humph, that JUDGE, he doesn't know\n" .string "a good thing when he sees it.$" @ Unused -SlateportCity_ContestHall_Text_RewardWithSageAdvice: @ 82095F1 +SlateportCity_ContestHall_Text_RewardWithSageAdvice: .string "Oh, hi! You must be a serious fan to get\n" .string "this close to the action.\p" .string "I'll reward your enthusiasm with\n" @@ -244,20 +244,20 @@ SlateportCity_ContestHall_Text_RewardWithSageAdvice: @ 82095F1 .string "to happen!$" @ Unused -SlateportCity_ContestHall_Text_MoreFreakedOutThanMon: @ 8209718 +SlateportCity_ContestHall_Text_MoreFreakedOutThanMon: .string "I can't do this! I'm more freaked out\n" .string "than my POKéMON.\p" .string "I'm shivering and my heart is racing!$" @ Unused -SlateportCity_ContestHall_Text_BattleAndContestAlike: @ 8209775 +SlateportCity_ContestHall_Text_BattleAndContestAlike: .string "A battle and a CONTEST aren't the\n" .string "same, but they are alike, too.\p" .string "You need to work hard and believe\n" .string "in the POKéMON you've raised.$" @ Unused -SlateportCity_ContestHall_Text_MonLooksOnTopOfGame: @ 82097F6 +SlateportCity_ContestHall_Text_MonLooksOnTopOfGame: .string "That POKéMON looks like it's on top\n" .string "of its game, huh?\p" .string "A POKéMON that does good in the\n" @@ -265,19 +265,19 @@ SlateportCity_ContestHall_Text_MonLooksOnTopOfGame: @ 82097F6 .string "relaxed when it's doing appeals.$" @ Unused -SlateportCity_ContestHall_Text_MyMonBetterThanThatLot: @ 8209890 +SlateportCity_ContestHall_Text_MyMonBetterThanThatLot: .string "Will you look at that sorry sight?\p" .string "Heh, my POKéMON's absolutely better\n" .string "than that lot!$" @ Unused -SlateportCity_ContestHall_Text_GetUrgeToMoveWithMon: @ 82098E6 +SlateportCity_ContestHall_Text_GetUrgeToMoveWithMon: .string "Don't you get the urge to move with\n" .string "POKéMON if they're putting on an\l" .string "energetic appeal?$" @ Unused -SlateportCity_ContestHall_Text_HyperRankStage: @ 820993D +SlateportCity_ContestHall_Text_HyperRankStage: .string "POKéMON CONTESTS\n" .string "HYPER RANK STAGE!$" diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc index 07758d42d406..8361cdfcc37b 100644 --- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc +++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc @@ -1,20 +1,20 @@ .set LOCALID_ATTENDANT, 1 -SlateportCity_BattleTentLobby_MapScripts:: @ 8208730 +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 .byte 0 -SlateportCity_BattleTentLobby_OnWarp: @ 820873B +SlateportCity_BattleTentLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 8208745 +SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -SlateportCity_BattleTentLobby_OnFrame: @ 820874F +SlateportCity_BattleTentLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_ResumeChallenge @@ -22,11 +22,11 @@ SlateportCity_BattleTentLobby_OnFrame: @ 820874F map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_LostChallenge .2byte 0 -SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8208779 +SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8208782 +SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving:: lockall msgbox SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT closemessage @@ -36,7 +36,7 @@ SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8208782 releaseall end -SlateportCity_BattleTentLobby_EventScript_WonChallenge:: @ 82087B7 +SlateportCity_BattleTentLobby_EventScript_WonChallenge:: lockall message SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons waitmessage @@ -45,7 +45,7 @@ SlateportCity_BattleTentLobby_EventScript_WonChallenge:: @ 82087B7 slateporttent_save 0 playse SE_SAVE waitse -SlateportCity_BattleTentLobby_EventScript_GivePrize:: @ 82087E9 +SlateportCity_BattleTentLobby_EventScript_GivePrize:: msgbox SlateportCity_BattleTentLobby_Text_AwardYouThisPrize, MSGBOX_DEFAULT slateporttent_giveprize switch VAR_RESULT @@ -57,11 +57,11 @@ SlateportCity_BattleTentLobby_EventScript_GivePrize:: @ 82087E9 waitfanfare goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize -SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize:: @ 820882A +SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize:: msgbox SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize -SlateportCity_BattleTentLobby_EventScript_LostChallenge:: @ 8208837 +SlateportCity_BattleTentLobby_EventScript_LostChallenge:: lockall message SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults waitmessage @@ -70,14 +70,14 @@ SlateportCity_BattleTentLobby_EventScript_LostChallenge:: @ 8208837 playse SE_SAVE waitse -SlateportCity_BattleTentLobby_EventScript_EndGivePrize:: @ 8208861 +SlateportCity_BattleTentLobby_EventScript_EndGivePrize:: msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT closemessage setvar VAR_TEMP_0, 255 releaseall end -SlateportCity_BattleTentLobby_EventScript_ResumeChallenge:: @ 8208871 +SlateportCity_BattleTentLobby_EventScript_ResumeChallenge:: lockall message SlateportCity_BattleTentLobby_Text_BeenWaitingForYou waitmessage @@ -89,7 +89,7 @@ SlateportCity_BattleTentLobby_EventScript_ResumeChallenge:: @ 8208871 setvar VAR_0x8006, 2 goto SlateportCity_BattleTentLobby_EventScript_EnterChallenge -SlateportCity_BattleTentLobby_EventScript_Attendant:: @ 82088AA +SlateportCity_BattleTentLobby_EventScript_Attendant:: lock faceplayer slateporttent_getprize @@ -97,7 +97,7 @@ SlateportCity_BattleTentLobby_EventScript_Attendant:: @ 82088AA goto_if_ne SlateportCity_BattleTentLobby_EventScript_GivePrize special SavePlayerParty msgbox SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT -SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @ 82088CA +SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: message SlateportCity_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -107,7 +107,7 @@ SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @ 82088CA case 2, SlateportCity_BattleTentLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_CancelChallenge -SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge:: @ 8208906 +SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_FACTORY setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT @@ -117,7 +117,7 @@ SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge:: @ 8208906 case YES, SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge -SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8208950 +SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER slateporttent_init @@ -130,7 +130,7 @@ SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8208950 compare VAR_RESULT, 0 goto_if_eq SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed setvar VAR_0x8006, 0 -SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: @ 82089AC +SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: msgbox SlateportCity_BattleTentLobby_Text_StepThisWay, MSGBOX_DEFAULT closemessage call SlateportCity_BattleTentLobby_EventScript_WalkToDoor @@ -139,7 +139,7 @@ SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: @ 82089AC waitstate end -SlateportCity_BattleTentLobby_EventScript_WalkToDoor:: @ 82089C9 +SlateportCity_BattleTentLobby_EventScript_WalkToDoor:: applymovement LOCALID_ATTENDANT, SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor waitmovement 0 @@ -152,53 +152,53 @@ SlateportCity_BattleTentLobby_EventScript_WalkToDoor:: @ 82089C9 waitdooranim return -SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82089F8 +SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor: walk_up walk_up walk_up step_end -SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor: @ 82089FC +SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor: @ 82089FF +SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor: walk_up walk_up walk_up step_end -SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor: @ 8208A03 +SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -SlateportCity_BattleTentLobby_EventScript_ExplainChallenge:: @ 8208A07 +SlateportCity_BattleTentLobby_EventScript_ExplainChallenge:: msgbox SlateportCity_BattleTentLobby_Text_ExplainSlateportTent, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge -SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8208A14 +SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto SlateportCity_BattleTentLobby_EventScript_CancelChallenge -SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8208A2B +SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: special LoadPlayerParty -SlateportCity_BattleTentLobby_EventScript_CancelChallenge:: @ 8208A2E +SlateportCity_BattleTentLobby_EventScript_CancelChallenge:: msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT release end @ Unused -SlateportCity_BattleTentLobby_Movement_UnusedEnterDoor:: @ 8208A38 +SlateportCity_BattleTentLobby_Movement_UnusedEnterDoor:: walk_up walk_up walk_up set_invisible step_end -SlateportCity_BattleTentLobby_EventScript_TormentGiver:: @ 8208A3D +SlateportCity_BattleTentLobby_EventScript_TormentGiver:: lock faceplayer goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_ReceivedTorment @@ -211,30 +211,30 @@ SlateportCity_BattleTentLobby_EventScript_TormentGiver:: @ 8208A3D release end -SlateportCity_BattleTentLobby_EventScript_ReceivedTorment:: @ 8208A74 +SlateportCity_BattleTentLobby_EventScript_ReceivedTorment:: msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT release end -SlateportCity_BattleTentLobby_EventScript_Man:: @ 8208A7E +SlateportCity_BattleTentLobby_EventScript_Man:: msgbox SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_Girl:: @ 8208A87 +SlateportCity_BattleTentLobby_EventScript_Girl:: msgbox SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_Woman:: @ 8208A90 +SlateportCity_BattleTentLobby_EventScript_Woman:: msgbox SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection, MSGBOX_NPC end -SlateportCity_BattleTentLobby_EventScript_RulesBoard:: @ 8208A99 +SlateportCity_BattleTentLobby_EventScript_RulesBoard:: lockall msgbox BattleFrontier_BattleFactoryLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8208AA8 +SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading waitmessage multichoice 17, 0, MULTI_SLATEPORT_TENT_RULES, FALSE @@ -248,36 +248,36 @@ SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8208AA8 case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_ExitRules end -SlateportCity_BattleTentLobby_EventScript_RulesBasics:: @ 8208B06 +SlateportCity_BattleTentLobby_EventScript_RulesBasics:: msgbox SlateportCity_BattleTentLobby_Text_ExplainBasicRules, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner:: @ 8208B14 +SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner:: msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber:: @ 8208B22 +SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber:: msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes:: @ 8208B30 +SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes:: msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNotes, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_RulesMons:: @ 8208B3E +SlateportCity_BattleTentLobby_EventScript_RulesMons:: msgbox SlateportCity_BattleTentLobby_Text_ExplainMonRules, MSGBOX_DEFAULT goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard end -SlateportCity_BattleTentLobby_EventScript_ExitRules:: @ 8208B4C +SlateportCity_BattleTentLobby_EventScript_ExitRules:: releaseall end -SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe: @ 8208B4E +SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe: .string "So, like, I couldn't find myself any\n" .string "POKéMON that were, like, for me.\p" .string "So, I figured, like, hey, I should file\n" @@ -287,7 +287,7 @@ SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe: @ 8208B4E .string "Hey, like, you! Zip it, you know?\n" .string "Just, you know, take this!$" -SlateportCity_BattleTentLobby_Text_ExplainTorment: @ 8208C5C +SlateportCity_BattleTentLobby_Text_ExplainTorment: .string "That's, like, TM41, you know?\n" .string "Hey, it's TORMENT, you hearing me?\p" .string "Like, it won't let the other guy\n" @@ -295,18 +295,18 @@ SlateportCity_BattleTentLobby_Text_ExplainTorment: @ 8208C5C .string "Hey, now, you listen here, like,\n" .string "I'm not laying a torment on you!$" -SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons: @ 8208D27 +SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons: .string "I don't really like BUG POKéMON,\n" .string "but maybe I'll try using some for\l" .string "a change of pace.\p" .string "Who knows, I might even get to like\n" .string "them!$" -SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons: @ 8208DA6 +SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons: .string "You can battle all you want here even\n" .string "if you don't have any tough POKéMON.$" -SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection: @ 8208DF1 +SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection: .string "Wouldn't it be nice if they had more of\n" .string "a selection?$" diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index 276ee32f8d13..fb73f5b9383d 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -4,11 +4,11 @@ .set LOCALID_ARCHIE, 7 .set LOCALID_SUBMARINE, 8 -SlateportCity_Harbor_MapScripts:: @ 820C97D +SlateportCity_Harbor_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_Harbor_OnTransition .byte 0 -SlateportCity_Harbor_OnTransition: @ 820C983 +SlateportCity_Harbor_OnTransition: setescapewarp MAP_SLATEPORT_CITY, 255, 28, 13 setvar VAR_TEMP_1, 0 compare VAR_SLATEPORT_HARBOR_STATE, 1 @@ -16,36 +16,36 @@ SlateportCity_Harbor_OnTransition: @ 820C983 call_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_ShowSSTidal end -SlateportCity_Harbor_EventScript_ShowSSTidal:: @ 820C9A5 +SlateportCity_Harbor_EventScript_ShowSSTidal:: clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL return -SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene:: @ 820C9A9 +SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene:: savebgm MUS_ENCOUNTER_AQUA setobjectxyperm LOCALID_CAPT_STERN, 12, 13 setobjectmovementtype LOCALID_CAPT_STERN, MOVEMENT_TYPE_FACE_LEFT setflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS return -SlateportCity_Harbor_EventScript_AquaEscapeTrigger0:: @ 820C9BB +SlateportCity_Harbor_EventScript_AquaEscapeTrigger0:: lockall setvar VAR_0x8008, 0 goto SlateportCity_Harbor_EventScript_AquaEscapeScene end -SlateportCity_Harbor_EventScript_AquaEscapeTrigger1:: @ 820C9C7 +SlateportCity_Harbor_EventScript_AquaEscapeTrigger1:: lockall setvar VAR_0x8008, 1 goto SlateportCity_Harbor_EventScript_AquaEscapeScene end -SlateportCity_Harbor_EventScript_AquaEscapeTrigger2:: @ 820C9D3 +SlateportCity_Harbor_EventScript_AquaEscapeTrigger2:: lockall setvar VAR_0x8008, 2 goto SlateportCity_Harbor_EventScript_AquaEscapeScene end -SlateportCity_Harbor_EventScript_AquaEscapeTrigger3:: @ 820C9DF +SlateportCity_Harbor_EventScript_AquaEscapeTrigger3:: lockall setvar VAR_0x8008, 3 applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_PlayerWalkUp @@ -53,7 +53,7 @@ SlateportCity_Harbor_EventScript_AquaEscapeTrigger3:: @ 820C9DF goto SlateportCity_Harbor_EventScript_AquaEscapeScene end -SlateportCity_Harbor_EventScript_AquaEscapeScene:: @ 820C9F5 +SlateportCity_Harbor_EventScript_AquaEscapeScene:: applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestDown waitmovement 0 applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestDown @@ -88,28 +88,28 @@ SlateportCity_Harbor_EventScript_AquaEscapeScene:: @ 820C9F5 releaseall end -SlateportCity_Harbor_EventScript_SternApproachPlayer0:: @ 820CA89 +SlateportCity_Harbor_EventScript_SternApproachPlayer0:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer0 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 return -SlateportCity_Harbor_EventScript_SternApproachPlayer1:: @ 820CA9E +SlateportCity_Harbor_EventScript_SternApproachPlayer1:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer1 waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -SlateportCity_Harbor_EventScript_SternApproachPlayer:: @ 820CAB3 +SlateportCity_Harbor_EventScript_SternApproachPlayer:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -SlateportCity_Harbor_Movement_AquaBoardSub: @ 820CAC8 +SlateportCity_Harbor_Movement_AquaBoardSub: delay_16 delay_16 jump_up @@ -117,14 +117,14 @@ SlateportCity_Harbor_Movement_AquaBoardSub: @ 820CAC8 step_end @ Unused, Archie instead shares above identical movement script with Grunt -SlateportCity_Harbor_Movement_ArchieBoardSub: @ 820CACD +SlateportCity_Harbor_Movement_ArchieBoardSub: delay_16 delay_16 jump_up set_invisible step_end -SlateportCity_Harbor_Movement_SubmarineExit: @ 820CAD2 +SlateportCity_Harbor_Movement_SubmarineExit: delay_16 delay_16 delay_16 @@ -140,7 +140,7 @@ SlateportCity_Harbor_Movement_SubmarineExit: @ 820CAD2 walk_fast_right step_end -SlateportCity_Harbor_Movement_SternApproachPlayer0: @ 820CAE0 +SlateportCity_Harbor_Movement_SternApproachPlayer0: walk_left walk_left walk_left @@ -148,24 +148,24 @@ SlateportCity_Harbor_Movement_SternApproachPlayer0: @ 820CAE0 walk_up step_end -SlateportCity_Harbor_Movement_SternApproachPlayer1: @ 820CAE6 +SlateportCity_Harbor_Movement_SternApproachPlayer1: walk_left walk_left walk_up walk_left step_end -SlateportCity_Harbor_Movement_SternApproachPlayer: @ 820CAEB +SlateportCity_Harbor_Movement_SternApproachPlayer: walk_left walk_left walk_left step_end -SlateportCity_Harbor_Movement_PlayerWalkUp: @ 820CAEF +SlateportCity_Harbor_Movement_PlayerWalkUp: walk_up step_end -SlateportCity_Harbor_EventScript_FerryAttendant:: @ 820CAF1 +SlateportCity_Harbor_EventScript_FerryAttendant:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_AskForTicket @@ -173,14 +173,14 @@ SlateportCity_Harbor_EventScript_FerryAttendant:: @ 820CAF1 release end -SlateportCity_Harbor_EventScript_AskForTicket:: @ 820CB06 +SlateportCity_Harbor_EventScript_AskForTicket:: msgbox SlateportCity_Harbor_Text_MayISeeYourTicket, MSGBOX_DEFAULT message SlateportCity_Harbor_Text_FlashedTicketWhereTo waitmessage goto SlateportCity_Harbor_EventScript_ChooseDestination end -SlateportCity_Harbor_EventScript_ChooseDestination:: @ 820CB1A +SlateportCity_Harbor_EventScript_ChooseDestination:: goto_if_set FLAG_MET_SCOTT_ON_SS_TIDAL, SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier multichoicedefault 18, 8, MULTI_SSTIDAL_SLATEPORT_NO_BF, 2, FALSE switch VAR_RESULT @@ -189,7 +189,7 @@ SlateportCity_Harbor_EventScript_ChooseDestination:: @ 820CB1A case MULTI_B_PRESSED, SlateportCity_Harbor_EventScript_CancelDestinationSelect end -SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier:: @ 820CB50 +SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier:: multichoicedefault 17, 6, MULTI_SSTIDAL_SLATEPORT_WITH_BF, 2, FALSE switch VAR_RESULT case 0, SlateportCity_Harbor_EventScript_Lilycove @@ -199,12 +199,12 @@ SlateportCity_Harbor_EventScript_ChooseDestinationWithBattleFrontier:: @ 820CB50 end @ Unused. Should be impossible for player to reach Ferry without having received SS Tidal ticket -SlateportCity_Harbor_EventScript_NoTicket:: @ 820CB88 +SlateportCity_Harbor_EventScript_NoTicket:: msgbox SlateportCity_Harbor_Text_YouMustHaveTicket, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_Lilycove:: @ 820CB92 +SlateportCity_Harbor_EventScript_Lilycove:: msgbox SlateportCity_Harbor_Text_LilycoveItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination @@ -215,7 +215,7 @@ SlateportCity_Harbor_EventScript_Lilycove:: @ 820CB92 release end -SlateportCity_Harbor_EventScript_BattleFrontier:: @ 820CBBA +SlateportCity_Harbor_EventScript_BattleFrontier:: msgbox SlateportCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination @@ -225,13 +225,13 @@ SlateportCity_Harbor_EventScript_BattleFrontier:: @ 820CBBA release end -SlateportCity_Harbor_EventScript_ChooseNewDestination:: @ 820CBDD +SlateportCity_Harbor_EventScript_ChooseNewDestination:: message SlateportCity_Harbor_Text_WhereWouldYouLikeToGo waitmessage goto SlateportCity_Harbor_EventScript_ChooseDestination end -SlateportCity_Harbor_EventScript_BoardFerry:: @ 820CBE9 +SlateportCity_Harbor_EventScript_BoardFerry:: msgbox SlateportCity_Harbor_Text_PleaseBoardFerry, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp @@ -248,31 +248,31 @@ SlateportCity_Harbor_EventScript_BoardFerry:: @ 820CBE9 call Common_EventScript_FerryDepart return -SlateportCity_Harbor_EventScript_CancelDestinationSelect:: @ 820CC2D +SlateportCity_Harbor_EventScript_CancelDestinationSelect:: msgbox SlateportCity_Harbor_Text_SailAnotherTime, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_BoardFerryEast:: @ 820CC37 +SlateportCity_Harbor_EventScript_BoardFerryEast:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryEast waitmovement 0 return -SlateportCity_Harbor_EventScript_BoardFerryNorth:: @ 820CC42 +SlateportCity_Harbor_EventScript_BoardFerryNorth:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryNorth waitmovement 0 return -SlateportCity_Harbor_Movement_BoardFerryEast: @ 820CC4D +SlateportCity_Harbor_Movement_BoardFerryEast: walk_right walk_in_place_fastest_up step_end -SlateportCity_Harbor_Movement_BoardFerryNorth: @ 820CC50 +SlateportCity_Harbor_Movement_BoardFerryNorth: walk_up step_end -SlateportCity_Harbor_EventScript_Sailor:: @ 820CC52 +SlateportCity_Harbor_EventScript_Sailor:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_SailorNoAbnormalWeather @@ -285,20 +285,20 @@ SlateportCity_Harbor_EventScript_Sailor:: @ 820CC52 release end -SlateportCity_Harbor_EventScript_SailorNoAbnormalWeather:: @ 820CC89 +SlateportCity_Harbor_EventScript_SailorNoAbnormalWeather:: msgbox SlateportCity_Harbor_Text_LoveToGoDeepUnderwaterSomeday, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_CountDefeatedLegendary:: @ 820CC93 +SlateportCity_Harbor_EventScript_CountDefeatedLegendary:: addvar VAR_0x8004, 1 return -SlateportCity_Harbor_EventScript_FatMan:: @ 820CC99 +SlateportCity_Harbor_EventScript_FatMan:: msgbox SlateportCity_Harbor_Text_SubTooSmallForMe, MSGBOX_NPC end -SlateportCity_Harbor_EventScript_CaptStern:: @ 820CCA2 +SlateportCity_Harbor_EventScript_CaptStern:: lock faceplayer goto_if_set FLAG_BADGE07_GET, SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment @@ -313,23 +313,23 @@ SlateportCity_Harbor_EventScript_CaptStern:: @ 820CCA2 release end -SlateportCity_Harbor_EventScript_WhyStealSubmarine:: @ 820CCDF +SlateportCity_Harbor_EventScript_WhyStealSubmarine:: msgbox SlateportCity_Harbor_Text_CaptSternWhyStealMySubmarine, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_TeamAquaLeftNeedDive:: @ 820CCE9 +SlateportCity_Harbor_EventScript_TeamAquaLeftNeedDive:: setflag FLAG_EVIL_TEAM_ESCAPED_STERN_SPOKE msgbox SlateportCity_Harbor_Text_TeamAquaLeftNeedDive, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_NeedDive:: @ 820CCF6 +SlateportCity_Harbor_EventScript_NeedDive:: msgbox SlateportCity_Harbor_Text_NeedDiveToCatchSub, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment:: @ 820CD00 +SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment:: compare VAR_TEMP_1, 1 goto_if_eq SlateportCity_Harbor_EventScript_TradedScanner checkitem ITEM_SCANNER, 1 @@ -340,18 +340,18 @@ SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment:: @ 820CD00 release end -SlateportCity_Harbor_EventScript_FerryFinished:: @ 820CD2E +SlateportCity_Harbor_EventScript_FerryFinished:: msgbox SlateportCity_Harbor_Text_FinishedMakingFerry, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_AskToTradeScanner:: @ 820CD38 +SlateportCity_Harbor_EventScript_AskToTradeScanner:: message SlateportCity_Harbor_Text_WouldYouTradeScanner waitmessage goto SlateportCity_Harbor_EventScript_ChooseScannerTrade end -SlateportCity_Harbor_EventScript_ChooseScannerTrade:: @ 820CD44 +SlateportCity_Harbor_EventScript_ChooseScannerTrade:: multichoice 0, 0, MULTI_STERN_DEEPSEA, FALSE switch VAR_RESULT case 0, SlateportCity_Harbor_EventScript_DeepSeaTooth @@ -360,7 +360,7 @@ SlateportCity_Harbor_EventScript_ChooseScannerTrade:: @ 820CD44 case MULTI_B_PRESSED, SlateportCity_Harbor_EventScript_DeclineTrade end -SlateportCity_Harbor_EventScript_DeepSeaTooth:: @ 820CD7B +SlateportCity_Harbor_EventScript_DeepSeaTooth:: msgbox SlateportCity_Harbor_Text_TradeForDeepSeaTooth, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SlateportCity_Harbor_EventScript_ChooseDifferentTrade @@ -373,7 +373,7 @@ SlateportCity_Harbor_EventScript_DeepSeaTooth:: @ 820CD7B goto SlateportCity_Harbor_EventScript_TradedScanner end -SlateportCity_Harbor_EventScript_DeepSeaScale:: @ 820CDBB +SlateportCity_Harbor_EventScript_DeepSeaScale:: msgbox SlateportCity_Harbor_Text_TradeForDeepSeaScale, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SlateportCity_Harbor_EventScript_ChooseDifferentTrade @@ -386,67 +386,67 @@ SlateportCity_Harbor_EventScript_DeepSeaScale:: @ 820CDBB goto SlateportCity_Harbor_EventScript_TradedScanner end -SlateportCity_Harbor_EventScript_DeclineTrade:: @ 820CDFB +SlateportCity_Harbor_EventScript_DeclineTrade:: msgbox SlateportCity_Harbor_Text_IfYouWantToTradeLetMeKnow, MSGBOX_DEFAULT release end -SlateportCity_Harbor_EventScript_ChooseDifferentTrade:: @ 820CE05 +SlateportCity_Harbor_EventScript_ChooseDifferentTrade:: message SlateportCity_Harbor_Text_WhichOneDoYouWant waitmessage goto SlateportCity_Harbor_EventScript_ChooseScannerTrade end -SlateportCity_Harbor_EventScript_TradedScanner:: @ 820CE11 +SlateportCity_Harbor_EventScript_TradedScanner:: setvar VAR_TEMP_1, 1 msgbox SlateportCity_Harbor_Text_ThisWillHelpResearch, MSGBOX_DEFAULT release end -SlateportCity_Harbor_Text_FerryServiceUnavailable: @ 820CE20 +SlateportCity_Harbor_Text_FerryServiceUnavailable: .string "I beg your pardon?\n" .string "You're looking for a ship?\p" .string "I'm sorry, the ferry service isn't\n" .string "available at present…$" -SlateportCity_Harbor_Text_MayISeeYourTicket: @ 820CE87 +SlateportCity_Harbor_Text_MayISeeYourTicket: .string "Hello, are you here for the ferry?\n" .string "May I see your TICKET?$" -SlateportCity_Harbor_Text_YouMustHaveTicket: @ 820CEC1 +SlateportCity_Harbor_Text_YouMustHaveTicket: .string "{PLAYER} doesn't have the TICKET…\p" .string "I'm terribly sorry.\p" .string "You must have a TICKET to board\n" .string "the ferry.$" -SlateportCity_Harbor_Text_FlashedTicketWhereTo: @ 820CF1C +SlateportCity_Harbor_Text_FlashedTicketWhereTo: .string "{PLAYER} flashed the TICKET.\p" .string "Perfect! That's all you need!\p" .string "And where would you like to go?$" -SlateportCity_Harbor_Text_SailAnotherTime: @ 820CF71 +SlateportCity_Harbor_Text_SailAnotherTime: .string "Please sail with us another time!$" -SlateportCity_Harbor_Text_LilycoveItIs: @ 820CF93 +SlateportCity_Harbor_Text_LilycoveItIs: .string "LILYCOVE CITY it is, then!$" -SlateportCity_Harbor_Text_BattleFrontierItIs: @ 820CFAE +SlateportCity_Harbor_Text_BattleFrontierItIs: .string "BATTLE FRONTIER it is, then!$" -SlateportCity_Harbor_Text_PleaseBoardFerry: @ 820CFCB +SlateportCity_Harbor_Text_PleaseBoardFerry: .string "Please board the ferry and wait for\n" .string "departure.$" -SlateportCity_Harbor_Text_WhereWouldYouLikeToGo: @ 820CFFA +SlateportCity_Harbor_Text_WhereWouldYouLikeToGo: .string "Then, where would you like to go?$" -SlateportCity_Harbor_Text_LoveToGoDeepUnderwaterSomeday: @ 820D01C +SlateportCity_Harbor_Text_LoveToGoDeepUnderwaterSomeday: .string "A journey to the bottom of the sea…\n" .string "I wonder what it'd be like?\p" .string "I'd love to go deep underwater like\n" .string "that someday.$" -SlateportCity_Harbor_Text_AbnormalWeather: @ 820D08E +SlateportCity_Harbor_Text_AbnormalWeather: .string "For a ship to sail safely, we need to\n" .string "know about the weather!\p" .string "Speaking of weather, I heard something\n" @@ -456,19 +456,19 @@ SlateportCity_Harbor_Text_AbnormalWeather: @ 820D08E .string "You should visit the WEATHER INSTITUTE\n" .string "and ask around!$" -SlateportCity_Harbor_Text_SubTooSmallForMe: @ 820D194 +SlateportCity_Harbor_Text_SubTooSmallForMe: .string "I wanted to go with CAPT. STERN on\n" .string "the ocean floor exploration.\p" .string "But the sub's too small for me.\p" .string "If I squeezed in, there wouldn't be\n" .string "any room for the CAPTAIN…$" -SlateportCity_Harbor_Text_SameThugsTriedToRobAtMuseum: @ 820D232 +SlateportCity_Harbor_Text_SameThugsTriedToRobAtMuseum: .string "CAPT. STERN: Those thugs…\p" .string "They're the same lot who tried to rob\n" .string "the DEVON GOODS at the MUSEUM.$" -SlateportCity_Harbor_Text_ArchieYouAgainHideoutInLilycove: @ 820D291 +SlateportCity_Harbor_Text_ArchieYouAgainHideoutInLilycove: .string "ARCHIE: Oh?\n" .string "Not you again…\p" .string "You are tenacious to track us here,\n" @@ -479,7 +479,7 @@ SlateportCity_Harbor_Text_ArchieYouAgainHideoutInLilycove: @ 820D291 .string "HIDEOUT in LILYCOVE CITY?\p" .string "Fwahahahaha…$" -SlateportCity_Harbor_Text_CaptSternWhyStealMySubmarine: @ 820D35A +SlateportCity_Harbor_Text_CaptSternWhyStealMySubmarine: .string "CAPT. STERN: Why…\p" .string "Why would TEAM AQUA steal my\n" .string "SUBMARINE EXPLORER 1?\p" @@ -488,7 +488,7 @@ SlateportCity_Harbor_Text_CaptSternWhyStealMySubmarine: @ 820D35A .string "But even if I were to chase them,\n" .string "I don't stand a chance against them…$" -SlateportCity_Harbor_Text_TeamAquaLeftNeedDive: @ 820D42B +SlateportCity_Harbor_Text_TeamAquaLeftNeedDive: .string "CAPT. STERN: Oh, {PLAYER}{KUN}…\p" .string "Okay… So TEAM AQUA left before you\n" .string "could stop them…\p" @@ -503,7 +503,7 @@ SlateportCity_Harbor_Text_TeamAquaLeftNeedDive: @ 820D42B .string "A lot of divers live out there, so\n" .string "someone might teach you…$" -SlateportCity_Harbor_Text_NeedDiveToCatchSub: @ 820D58A +SlateportCity_Harbor_Text_NeedDiveToCatchSub: .string "CAPT. STERN: Trying to catch a\n" .string "submarine… It's impossible.\p" .string "You would need a POKéMON that knows\n" @@ -513,13 +513,13 @@ SlateportCity_Harbor_Text_NeedDiveToCatchSub: @ 820D58A .string "A lot of divers live out there, so\n" .string "someone might teach you…$" -SlateportCity_Harbor_Text_WontBeLongBeforeWeFinishFerry: @ 820D65C +SlateportCity_Harbor_Text_WontBeLongBeforeWeFinishFerry: .string "CAPT. STERN: Oh, yes.\n" .string "MR. BRINEY came to our SHIPYARD.\p" .string "It won't be long now before we finish\n" .string "making the ferry!$" -SlateportCity_Harbor_Text_FinishedMakingFerry: @ 820D6CB +SlateportCity_Harbor_Text_FinishedMakingFerry: .string "CAPT. STERN: {PLAYER}{KUN}!\p" .string "We finally finished making the ferry\n" .string "S.S. TIDAL!\p" @@ -527,7 +527,7 @@ SlateportCity_Harbor_Text_FinishedMakingFerry: @ 820D6CB .string "your friend MR. BRINEY.\p" .string "Please go for a short cruise on it!$" -SlateportCity_Harbor_Text_WouldYouTradeScanner: @ 820D76C +SlateportCity_Harbor_Text_WouldYouTradeScanner: .string "CAPT. STERN: Oh?\n" .string "{PLAYER}{KUN}, that item you have…\p" .string "That's a SCANNER! That would sure\n" @@ -537,27 +537,27 @@ SlateportCity_Harbor_Text_WouldYouTradeScanner: @ 820D76C .string "Like, say, a DEEPSEATOOTH or\n" .string "a DEEPSEASCALE that I have?$" -SlateportCity_Harbor_Text_IfYouWantToTradeLetMeKnow: @ 820D841 +SlateportCity_Harbor_Text_IfYouWantToTradeLetMeKnow: .string "CAPT. STERN: Are you certain?\n" .string "It's useless to you, {PLAYER}{KUN}…\p" .string "Well, okay, then. If you want to trade\n" .string "your SCANNER, let me know.$" -SlateportCity_Harbor_Text_TradeForDeepSeaTooth: @ 820D8BC +SlateportCity_Harbor_Text_TradeForDeepSeaTooth: .string "CAPT. STERN: So you'll trade it for\n" .string "my DEEPSEATOOTH?$" -SlateportCity_Harbor_Text_TradeForDeepSeaScale: @ 820D8F1 +SlateportCity_Harbor_Text_TradeForDeepSeaScale: .string "CAPT. STERN: So you'll trade it for\n" .string "my DEEPSEASCALE?$" -SlateportCity_Harbor_Text_WhichOneDoYouWant: @ 820D926 +SlateportCity_Harbor_Text_WhichOneDoYouWant: .string "CAPT. STERN: Which one do you want?$" -SlateportCity_Harbor_Text_HandedScannerToStern: @ 820D94A +SlateportCity_Harbor_Text_HandedScannerToStern: .string "{PLAYER} handed the SCANNER to\n" .string "CAPT. STERN.$" -SlateportCity_Harbor_Text_ThisWillHelpResearch: @ 820D970 +SlateportCity_Harbor_Text_ThisWillHelpResearch: .string "CAPT. STERN: Thanks, {PLAYER}{KUN}!\n" .string "This will help our research a lot!$" diff --git a/data/maps/SlateportCity_House/scripts.inc b/data/maps/SlateportCity_House/scripts.inc index 13b0caf91c91..d903ba865c3d 100644 --- a/data/maps/SlateportCity_House/scripts.inc +++ b/data/maps/SlateportCity_House/scripts.inc @@ -1,22 +1,22 @@ -SlateportCity_House_MapScripts:: @ 820D9AE +SlateportCity_House_MapScripts:: .byte 0 -SlateportCity_House_EventScript_PokefanM:: @ 820D9AF +SlateportCity_House_EventScript_PokefanM:: msgbox SlateportCity_House_Text_NatureToDoWithStatGains, MSGBOX_NPC end -SlateportCity_House_EventScript_Girl:: @ 820D9B8 +SlateportCity_House_EventScript_Girl:: msgbox SlateportCity_House_Text_MustBeGoingToBattleTent, MSGBOX_NPC end -SlateportCity_House_Text_NatureToDoWithStatGains: @ 820D9C1 +SlateportCity_House_Text_NatureToDoWithStatGains: .string "My POKéMON has a HASTY nature.\p" .string "It has higher SPEED compared to\n" .string "my other POKéMON.\p" .string "Maybe their nature has something to\n" .string "do with the stat gains of POKéMON.$" -SlateportCity_House_Text_MustBeGoingToBattleTent: @ 820DA59 +SlateportCity_House_Text_MustBeGoingToBattleTent: .string "You're a TRAINER, aren't you?\p" .string "Since you came to SLATEPORT CITY,\n" .string "you must be going to the BATTLE TENT.$" diff --git a/data/maps/SlateportCity_Mart/scripts.inc b/data/maps/SlateportCity_Mart/scripts.inc index a1c557ad286d..bd5fc3b55176 100644 --- a/data/maps/SlateportCity_Mart/scripts.inc +++ b/data/maps/SlateportCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -SlateportCity_Mart_MapScripts:: @ 820DC48 +SlateportCity_Mart_MapScripts:: .byte 0 -SlateportCity_Mart_EventScript_Clerk:: @ 820DC49 +SlateportCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -11,7 +11,7 @@ SlateportCity_Mart_EventScript_Clerk:: @ 820DC49 release end -SlateportCity_Mart_Pokemart: @ 820DC60 +SlateportCity_Mart_Pokemart: .2byte ITEM_POKE_BALL .2byte ITEM_GREAT_BALL .2byte ITEM_POTION @@ -25,21 +25,21 @@ SlateportCity_Mart_Pokemart: @ 820DC60 release end -SlateportCity_Mart_EventScript_BlackBelt:: @ 820DC76 +SlateportCity_Mart_EventScript_BlackBelt:: msgbox SlateportCity_Mart_Text_SomeItemsOnlyAtMart, MSGBOX_NPC end -SlateportCity_Mart_EventScript_Man:: @ 820DC7F +SlateportCity_Mart_EventScript_Man:: msgbox SlateportCity_Mart_Text_GreatBallIsBetter, MSGBOX_NPC end -SlateportCity_Mart_Text_SomeItemsOnlyAtMart: @ 820DC88 +SlateportCity_Mart_Text_SomeItemsOnlyAtMart: .string "The MARKET does have some interesting\n" .string "merchandise.\p" .string "But there are some items you can only\n" .string "get at a POKéMON MART.$" -SlateportCity_Mart_Text_GreatBallIsBetter: @ 820DCF8 +SlateportCity_Mart_Text_GreatBallIsBetter: .string "A GREAT BALL is better than a POKé BALL\n" .string "at catching POKéMON.\p" .string "With this, I should be able to get that\n" diff --git a/data/maps/SlateportCity_NameRatersHouse/scripts.inc b/data/maps/SlateportCity_NameRatersHouse/scripts.inc index 92c6b7a0282f..87ed2d07f868 100644 --- a/data/maps/SlateportCity_NameRatersHouse/scripts.inc +++ b/data/maps/SlateportCity_NameRatersHouse/scripts.inc @@ -1,7 +1,7 @@ -SlateportCity_NameRatersHouse_MapScripts:: @ 8209AA4 +SlateportCity_NameRatersHouse_MapScripts:: .byte 0 -SlateportCity_NameRatersHouse_EventScript_NameRater:: @ 8209AA5 +SlateportCity_NameRatersHouse_EventScript_NameRater:: lock faceplayer msgbox SlateportCity_NameRatersHouse_Text_PleasedToRateMonNickname, MSGBOX_YESNO @@ -11,7 +11,7 @@ SlateportCity_NameRatersHouse_EventScript_NameRater:: @ 8209AA5 goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end -SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate:: @ 8209AC6 +SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate:: msgbox SlateportCity_NameRatersHouse_Text_CritiqueWhichMonNickname, MSGBOX_DEFAULT special ChoosePartyMon waitstate @@ -21,12 +21,12 @@ SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate:: @ 8209AC6 goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end -SlateportCity_NameRatersHouse_EventScript_DeclineNameRate:: @ 8209AE9 +SlateportCity_NameRatersHouse_EventScript_DeclineNameRate:: msgbox SlateportCity_NameRatersHouse_Text_DoVisitAgain, MSGBOX_DEFAULT release end -SlateportCity_NameRatersHouse_EventScript_RateMonNickname:: @ 8209AF3 +SlateportCity_NameRatersHouse_EventScript_RateMonNickname:: specialvar VAR_RESULT, ScriptGetPartyMonSpecies compare VAR_RESULT, SPECIES_EGG goto_if_eq SlateportCity_NameRatersHouse_EventScript_CantRateEgg @@ -45,17 +45,17 @@ SlateportCity_NameRatersHouse_EventScript_RateMonNickname:: @ 8209AF3 goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end -SlateportCity_NameRatersHouse_EventScript_CantRateEgg:: @ 8209B46 +SlateportCity_NameRatersHouse_EventScript_CantRateEgg:: msgbox SlateportCity_NameRatersHouse_Text_ThatIsMerelyAnEgg, MSGBOX_DEFAULT release end -SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT:: @ 8209B50 +SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT:: msgbox SlateportCity_NameRatersHouse_Text_MagnificentName, MSGBOX_DEFAULT release end -SlateportCity_NameRatersHouse_EventScript_ChangeNickname:: @ 8209B5A +SlateportCity_NameRatersHouse_EventScript_ChangeNickname:: msgbox SlateportCity_NameRatersHouse_Text_WhatShallNewNameBe, MSGBOX_DEFAULT call Common_EventScript_NameReceivedPartyMon specialvar VAR_RESULT, TryPutNameRaterShowOnTheAir @@ -66,56 +66,56 @@ SlateportCity_NameRatersHouse_EventScript_ChangeNickname:: @ 8209B5A release end -SlateportCity_NameRatersHouse_EventScript_NewNameDifferent:: @ 8209B84 +SlateportCity_NameRatersHouse_EventScript_NewNameDifferent:: msgbox SlateportCity_NameRatersHouse_Text_MonShallBeKnownAsName, MSGBOX_DEFAULT release end -SlateportCity_NameRatersHouse_Text_PleasedToRateMonNickname: @ 8209B8E +SlateportCity_NameRatersHouse_Text_PleasedToRateMonNickname: .string "Hi, hi! I'm the NAME RATER!\n" .string "I'm the fortune-teller of names!\p" .string "I shall be pleased to rate your\n" .string "POKéMON's nickname.$" -SlateportCity_NameRatersHouse_Text_CritiqueWhichMonNickname: @ 8209BFF +SlateportCity_NameRatersHouse_Text_CritiqueWhichMonNickname: .string "Which POKéMON's nickname should\n" .string "I critique?$" -SlateportCity_NameRatersHouse_Text_FineNameSuggestBetterOne: @ 8209C2B +SlateportCity_NameRatersHouse_Text_FineNameSuggestBetterOne: .string "Hmmm… {STR_VAR_1}, is it? That is\n" .string "quite a fine name you bestowed.\p" .string "But! What say you, if I were to\n" .string "suggest a slightly better name?$" -SlateportCity_NameRatersHouse_Text_WhatShallNewNameBe: @ 8209CA4 +SlateportCity_NameRatersHouse_Text_WhatShallNewNameBe: .string "Ah, good. Then, what shall the new\n" .string "nickname be?$" -SlateportCity_NameRatersHouse_Text_MonShallBeKnownAsName: @ 8209CD4 +SlateportCity_NameRatersHouse_Text_MonShallBeKnownAsName: .string "Done! From now on, this POKéMON\n" .string "shall be known as {STR_VAR_1}!\p" .string "It is a better name than before!\n" .string "How fortunate for you!$" -SlateportCity_NameRatersHouse_Text_DoVisitAgain: @ 8209D42 +SlateportCity_NameRatersHouse_Text_DoVisitAgain: .string "I see.\n" .string "Do come visit again.$" -SlateportCity_NameRatersHouse_Text_NameNoDifferentYetSuperior: @ 8209D5E +SlateportCity_NameRatersHouse_Text_NameNoDifferentYetSuperior: .string "Done! From now on, this POKéMON\n" .string "shall be known as {STR_VAR_1}!\p" .string "It looks no different from before,\n" .string "and yet, this is vastly superior!\p" .string "How fortunate for you!$" -SlateportCity_NameRatersHouse_Text_MagnificentName: @ 8209DF0 +SlateportCity_NameRatersHouse_Text_MagnificentName: .string "Hmmm… {STR_VAR_1} it is!\p" .string "This is a magnificent nickname!\n" .string "It is impeccably beyond reproach!\p" .string "You'll do well to cherish your\n" .string "{STR_VAR_1} now and beyond.$" -SlateportCity_NameRatersHouse_Text_ThatIsMerelyAnEgg: @ 8209E74 +SlateportCity_NameRatersHouse_Text_ThatIsMerelyAnEgg: .string "Now, now.\n" .string "That is merely an EGG!$" diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc index 90c9b93b791e..38ec344649d4 100644 --- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc @@ -1,27 +1,27 @@ .set LOCALID_FAMILIAR_GRUNT, 13 -SlateportCity_OceanicMuseum_1F_MapScripts:: @ 820AD95 +SlateportCity_OceanicMuseum_1F_MapScripts:: .byte 0 -SlateportCity_OceanicMuseum_1F_EventScript_EntranceAttendant:: @ 820AD96 +SlateportCity_OceanicMuseum_1F_EventScript_EntranceAttendant:: msgbox SlateportCity_OceanicMuseum_1F_Text_PleaseEnjoyYourself, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeLeft:: @ 820AD9F +SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeLeft:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee end -SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeRight:: @ 820ADB0 +SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeRight:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee end -SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: @ 820ADC1 +SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: showmoneybox 0, 0, 0 msgbox SlateportCity_OceanicMuseum_1F_Text_WouldYouLikeToEnter, MSGBOX_YESNO compare VAR_RESULT, YES @@ -33,7 +33,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: @ 820ADC1 releaseall end -SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee:: @ 820ADE8 +SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee:: checkmoney 50, 0 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney @@ -46,7 +46,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee:: @ 820ADE8 releaseall end -SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney:: @ 820AE18 +SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney:: goto_if_unset FLAG_DELIVERED_DEVON_GOODS, SlateportCity_OceanicMuseum_1F_EventScript_AllowEntranceAnyway msgbox SlateportCity_OceanicMuseum_1F_Text_NotEnoughMoney, MSGBOX_DEFAULT closemessage @@ -56,94 +56,94 @@ SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney:: @ 820AE18 releaseall end -SlateportCity_OceanicMuseum_1F_EventScript_AllowEntranceAnyway:: @ 820AE39 +SlateportCity_OceanicMuseum_1F_EventScript_AllowEntranceAnyway:: msgbox SlateportCity_OceanicMuseum_1F_Text_CatchUpWithYourGroup, MSGBOX_DEFAULT setvar VAR_SLATEPORT_MUSEUM_1F_STATE, 1 hidemoneybox releaseall end -SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter: @ 820AE4B +SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter: walk_down step_end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt1:: @ 820AE4D +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt1:: msgbox SlateportCity_OceanicMuseum_1F_Text_AquaExistForGoodOfAll, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt2:: @ 820AE56 +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt2:: msgbox SlateportCity_OceanicMuseum_1F_Text_OurBossIsntHere, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt3:: @ 820AE5F +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt3:: msgbox SlateportCity_OceanicMuseum_1F_Text_WouldStuffHereMakeMeRich, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt4:: @ 820AE68 +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt4:: msgbox SlateportCity_OceanicMuseum_1F_Text_CanLearnForNefariousDeeds, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt5:: @ 820AE71 +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt5:: msgbox SlateportCity_OceanicMuseum_1F_Text_RustboroBungled, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt6:: @ 820AE7A +SlateportCity_OceanicMuseum_1F_EventScript_MuseumGrunt6:: msgbox SlateportCity_OceanicMuseum_1F_Text_DidntHaveMoney, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_WhirlpoolExperiment:: @ 820AE83 +SlateportCity_OceanicMuseum_1F_EventScript_WhirlpoolExperiment:: msgbox SlateportCity_OceanicMuseum_1F_Text_WhirlpoolExperiment, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_WaterfallExperiment:: @ 820AE8C +SlateportCity_OceanicMuseum_1F_EventScript_WaterfallExperiment:: msgbox SlateportCity_OceanicMuseum_1F_Text_WaterfallExperiment, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_OceanSoilDisplay:: @ 820AE95 +SlateportCity_OceanicMuseum_1F_EventScript_OceanSoilDisplay:: msgbox SlateportCity_OceanicMuseum_1F_Text_OceanSoilDisplay, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_BeachSandDisplay:: @ 820AE9E +SlateportCity_OceanicMuseum_1F_EventScript_BeachSandDisplay:: msgbox SlateportCity_OceanicMuseum_1F_Text_BeachSandDisplay, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact1:: @ 820AEA7 +SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact1:: msgbox SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact1, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact2:: @ 820AEB0 +SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact2:: msgbox SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact2, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact3:: @ 820AEB9 +SlateportCity_OceanicMuseum_1F_EventScript_OceanicMinifact3:: msgbox SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact3, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_FossilDisplay:: @ 820AEC2 +SlateportCity_OceanicMuseum_1F_EventScript_FossilDisplay:: msgbox SlateportCity_OceanicMuseum_1F_Text_FossilDisplay, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_DepthMeasuringMachine:: @ 820AECB +SlateportCity_OceanicMuseum_1F_EventScript_DepthMeasuringMachine:: msgbox SlateportCity_OceanicMuseum_1F_Text_DepthMeasuringMachine, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron1:: @ 820AED4 +SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron1:: msgbox SlateportCity_OceanicMuseum_1F_Text_LearnAboutSeaForBattling, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron2:: @ 820AEDD +SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron2:: msgbox SlateportCity_OceanicMuseum_1F_Text_SternIsRoleModel, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron3:: @ 820AEE6 +SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron3:: msgbox SlateportCity_OceanicMuseum_1F_Text_MustBePokemonWeDontKnow, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron4:: @ 820AEEF +SlateportCity_OceanicMuseum_1F_EventScript_MuseumPatron4:: msgbox SlateportCity_OceanicMuseum_1F_Text_WantSeaPokemon, MSGBOX_NPC end -SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt:: @ 820AEF8 +SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt:: lock faceplayer delay 8 @@ -169,51 +169,51 @@ SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt:: @ 820AEF8 goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast end -SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth:: @ 820AF6C +SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited end -SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitSouth:: @ 820AF83 +SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitSouth:: applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited end -SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast:: @ 820AF93 +SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited end -SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited:: @ 820AFAA +SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited:: setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_FAMILIAR_AQUA_GRUNT playse SE_EXIT removeobject LOCALID_FAMILIAR_GRUNT release end -SlateportCity_OceanicMuseum_1F_EventScript_NoRoomForThief:: @ 820AFB5 +SlateportCity_OceanicMuseum_1F_EventScript_NoRoomForThief:: msgbox SlateportCity_OceanicMuseum_1F_Text_YouHaveToTakeThis, MSGBOX_DEFAULT release end -SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth: @ 820AFBF +SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth: delay_16 delay_8 delay_4 walk_in_place_fastest_down step_end -SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast: @ 820AFC4 +SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast: delay_16 walk_in_place_fastest_down step_end -SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit: @ 820AFC7 +SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit: face_down walk_fast_down walk_fast_down @@ -222,7 +222,7 @@ SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit: @ 820AFC7 delay_8 step_end -SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth: @ 820AFCE +SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth: walk_fast_right walk_fast_down walk_fast_down @@ -231,71 +231,71 @@ SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth: @ 820AFCE delay_8 step_end -SlateportCity_OceanicMuseum_1F_Text_WouldYouLikeToEnter: @ 820AFD5 +SlateportCity_OceanicMuseum_1F_Text_WouldYouLikeToEnter: .string "Welcome to the OCEANIC MUSEUM.\p" .string "The entrance fee is ¥50.\n" .string "Would you like to enter?$" -SlateportCity_OceanicMuseum_1F_Text_PleaseEnjoyYourself: @ 820B026 +SlateportCity_OceanicMuseum_1F_Text_PleaseEnjoyYourself: .string "Please enjoy yourself.$" -SlateportCity_OceanicMuseum_1F_Text_NotEnoughMoney: @ 820B03D +SlateportCity_OceanicMuseum_1F_Text_NotEnoughMoney: .string "Oh? I'm sorry, but you don't seem to\n" .string "have enough money.$" -SlateportCity_OceanicMuseum_1F_Text_CatchUpWithYourGroup: @ 820B075 +SlateportCity_OceanicMuseum_1F_Text_CatchUpWithYourGroup: .string "Oh? You're with that group that\n" .string "went in earlier?\p" .string "You're the only one who's late.\n" .string "You'd better go catch up to them!$" -SlateportCity_OceanicMuseum_1F_Text_AquaExistForGoodOfAll: @ 820B0E8 +SlateportCity_OceanicMuseum_1F_Text_AquaExistForGoodOfAll: .string "We, TEAM AQUA, exist for the good\n" .string "of all!$" -SlateportCity_OceanicMuseum_1F_Text_OurBossIsntHere: @ 820B112 +SlateportCity_OceanicMuseum_1F_Text_OurBossIsntHere: .string "We were told to assemble here,\n" .string "so we did, but…\p" .string "Our BOSS, the linchpin, isn't here.$" -SlateportCity_OceanicMuseum_1F_Text_WouldStuffHereMakeMeRich: @ 820B165 +SlateportCity_OceanicMuseum_1F_Text_WouldStuffHereMakeMeRich: .string "If I ripped off the stuff here,\n" .string "would it make me rich?$" -SlateportCity_OceanicMuseum_1F_Text_CanLearnForNefariousDeeds: @ 820B19C +SlateportCity_OceanicMuseum_1F_Text_CanLearnForNefariousDeeds: .string "What I learn here, I can put to use on\n" .string "nefarious deeds…$" -SlateportCity_OceanicMuseum_1F_Text_RustboroBungled: @ 820B1D4 +SlateportCity_OceanicMuseum_1F_Text_RustboroBungled: .string "If our goons didn't bungle things\n" .string "in RUSTBORO, we wouldn't be here!$" -SlateportCity_OceanicMuseum_1F_Text_DidntHaveMoney: @ 820B218 +SlateportCity_OceanicMuseum_1F_Text_DidntHaveMoney: .string "I didn't have ¥50, so it took a long\n" .string "time getting by the receptionist.$" -SlateportCity_OceanicMuseum_1F_Text_LearnAboutSeaForBattling: @ 820B25F +SlateportCity_OceanicMuseum_1F_Text_LearnAboutSeaForBattling: .string "I want to learn about the sea and\n" .string "use that knowledge for battling.$" -SlateportCity_OceanicMuseum_1F_Text_SternIsRoleModel: @ 820B2A2 +SlateportCity_OceanicMuseum_1F_Text_SternIsRoleModel: .string "I get all giddy and gooey when\n" .string "I see the sea!\p" .string "For me, CAPT. STERN is the number\n" .string "one role model!$" -SlateportCity_OceanicMuseum_1F_Text_MustBePokemonWeDontKnow: @ 820B302 +SlateportCity_OceanicMuseum_1F_Text_MustBePokemonWeDontKnow: .string "The sea is vast without end, and\n" .string "infinitely deep…\p" .string "There must be many POKéMON that\n" .string "we don't know about.$" -SlateportCity_OceanicMuseum_1F_Text_WantSeaPokemon: @ 820B369 +SlateportCity_OceanicMuseum_1F_Text_WantSeaPokemon: .string "I want a sea POKéMON.\p" .string "I think it would feel cool and nice\n" .string "to hug.$" -SlateportCity_OceanicMuseum_1F_Text_RememberMeTakeThis: @ 820B3AB +SlateportCity_OceanicMuseum_1F_Text_RememberMeTakeThis: .string "Aiyeeeh!\n" .string "What are you doing here?\p" .string "Me? I'm the TEAM AQUA member\n" @@ -304,29 +304,29 @@ SlateportCity_OceanicMuseum_1F_Text_RememberMeTakeThis: @ 820B3AB .string "Here, take this!\n" .string "You have to forgive me!$" -SlateportCity_OceanicMuseum_1F_Text_HopeINeverSeeYouAgain: @ 820B449 +SlateportCity_OceanicMuseum_1F_Text_HopeINeverSeeYouAgain: .string "That TM, it suits you more than it\n" .string "does me.\p" .string "Hope I never see you again!\n" .string "Wahahaha!$" -SlateportCity_OceanicMuseum_1F_Text_YouHaveToTakeThis: @ 820B49B +SlateportCity_OceanicMuseum_1F_Text_YouHaveToTakeThis: .string "Awww, come on!\n" .string "You have to take this and let me go!$" -SlateportCity_OceanicMuseum_1F_Text_WhirlpoolExperiment: @ 820B4CF +SlateportCity_OceanicMuseum_1F_Text_WhirlpoolExperiment: .string "A blue fluid is spiraling inside\n" .string "a glass vessel.\p" .string "“This is an experiment to create a\n" .string "WHIRLPOOL artificially using wind.”$" -SlateportCity_OceanicMuseum_1F_Text_WaterfallExperiment: @ 820B547 +SlateportCity_OceanicMuseum_1F_Text_WaterfallExperiment: .string "A red ball is bobbing up and down\n" .string "inside a glass vessel.\p" .string "“This is an experiment simulating a\n" .string "WATERFALL using the ball's buoyancy.”$" -SlateportCity_OceanicMuseum_1F_Text_OceanSoilDisplay: @ 820B5CA +SlateportCity_OceanicMuseum_1F_Text_OceanSoilDisplay: .string "It's a sample of soil from the ocean\n" .string "floor.\p" .string "“Over many years, the remains of\n" @@ -335,7 +335,7 @@ SlateportCity_OceanicMuseum_1F_Text_OceanSoilDisplay: @ 820B5CA .string "“By analyzing these layers, the\n" .string "ancient past is revealed.”$" -SlateportCity_OceanicMuseum_1F_Text_BeachSandDisplay: @ 820B699 +SlateportCity_OceanicMuseum_1F_Text_BeachSandDisplay: .string "It's a sample of beach sand.\p" .string "“Stones from mountains are washed\n" .string "down by rivers where they are\l" @@ -343,7 +343,7 @@ SlateportCity_OceanicMuseum_1F_Text_BeachSandDisplay: @ 820B699 .string "“They are reduced to grains and end\n" .string "up as sand on beaches.”$" -SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact1: @ 820B74B +SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact1: .string "“OCEANIC MINIFACT 1\n" .string "Why is seawater blue?\p" .string "“Light is composed of many colors.\p" @@ -352,7 +352,7 @@ SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact1: @ 820B74B .string "“However, blue light retains its\n" .string "color, making the sea appear blue.”$" -SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact2: @ 820B81F +SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact2: .string "“OCEANIC MINIFACT 2\n" .string "Why is the sea salty?\p" .string "“Seawater contains dissolved salt in\n" @@ -362,7 +362,7 @@ SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact2: @ 820B81F .string "“The concentration of dissolved salt\n" .string "makes the sea salty.”$" -SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact3: @ 820B912 +SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact3: .string "“OCEANIC MINIFACT 3\n" .string "Which is bigger? The sea or land?\p" .string "“The sea covers about 70% of\n" @@ -370,7 +370,7 @@ SlateportCity_OceanicMuseum_1F_Text_OceanicMinifact3: @ 820B912 .string "“The sea is therefore more than twice\n" .string "the size of land.”$" -SlateportCity_OceanicMuseum_1F_Text_FossilDisplay: @ 820B9C0 +SlateportCity_OceanicMuseum_1F_Text_FossilDisplay: .string "It's a fossil with wavy ridges on it.\p" .string "“Soil on the ocean floor gets scoured\n" .string "by the tide.\p" @@ -379,7 +379,7 @@ SlateportCity_OceanicMuseum_1F_Text_FossilDisplay: @ 820B9C0 .string "“If this soil becomes fossilized, it is\n" .string "called a ripple mark.”$" -SlateportCity_OceanicMuseum_1F_Text_DepthMeasuringMachine: @ 820BA9C +SlateportCity_OceanicMuseum_1F_Text_DepthMeasuringMachine: .string "A strange machine is rotating under\n" .string "a glass dome.\p" .string "Maybe it's for measuring the depth\n" diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc index 782e702f6b1a..90b5c83de0cf 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc @@ -3,10 +3,10 @@ .set LOCALID_GRUNT_1, 3 .set LOCALID_GRUNT_2, 4 -SlateportCity_OceanicMuseum_2F_MapScripts:: @ 820BAFF +SlateportCity_OceanicMuseum_2F_MapScripts:: .byte 0 -SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 +SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: lock faceplayer msgbox SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts, MSGBOX_DEFAULT @@ -96,37 +96,37 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00 release end -SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch:: @ 820BC8C +SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch:: setvar VAR_REGISTER_BIRCH_STATE, 1 return -SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts:: @ 820BC92 +SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts:: @ 820BC9D +SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts:: applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntSouth:: @ 820BCA8 +SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntSouth:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth waitmovement 0 return -SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest:: @ 820BCB3 +SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest:: applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest waitmovement 0 return -SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth: @ 820BCBE +SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth: walk_left walk_down walk_in_place_fastest_left step_end -SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest: @ 820BCC2 +SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest: walk_up walk_left walk_left @@ -134,7 +134,7 @@ SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest: @ 820BCC2 walk_in_place_fastest_left step_end -SlateportCity_OceanicMuseum_2F_Movement_Unused: @ 820BCC8 +SlateportCity_OceanicMuseum_2F_Movement_Unused: walk_up walk_left walk_left @@ -150,11 +150,11 @@ SlateportCity_OceanicMuseum_2F_Movement_Unused: @ 820BCC8 delay_8 step_end -SlateportCity_OceanicMuseum_2F_Movement_ArchieApproachPlayer: @ 820BCD6 +SlateportCity_OceanicMuseum_2F_Movement_ArchieApproachPlayer: walk_right step_end -SlateportCity_OceanicMuseum_2F_Movement_ArchieEnter: @ 820BCD8 +SlateportCity_OceanicMuseum_2F_Movement_ArchieEnter: walk_down walk_down walk_down @@ -166,17 +166,17 @@ SlateportCity_OceanicMuseum_2F_Movement_ArchieEnter: @ 820BCD8 walk_right step_end -SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle: @ 820BCE2 +SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle: walk_right step_end -SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter: @ 820BCE4 +SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter: walk_down walk_right walk_in_place_fastest_down step_end -SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach: @ 820BCE8 +SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach: walk_down walk_down walk_down @@ -185,17 +185,17 @@ SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach: @ 820BCE8 walk_right step_end -SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated: @ 820BCEF +SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated: lock_facing_direction walk_left unlock_facing_direction step_end -SlateportCity_OceanicMuseum_2F_Movement_SecondGruntEnter: @ 820BCF3 +SlateportCity_OceanicMuseum_2F_Movement_SecondGruntEnter: walk_down step_end -SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach: @ 820BCF5 +SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach: walk_down walk_down walk_down @@ -206,7 +206,7 @@ SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach: @ 820BCF5 walk_right step_end -SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie: @ 820BCFE +SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie: delay_16 delay_16 delay_16 @@ -220,55 +220,55 @@ SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie: @ 820BCFE walk_in_place_fastest_up step_end -SlateportCity_OceanicMuseum_2F_EventScript_WaterQualitySample1:: @ 820BD0A +SlateportCity_OceanicMuseum_2F_EventScript_WaterQualitySample1:: msgbox SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample1, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_WaterQualitySample2:: @ 820BD13 +SlateportCity_OceanicMuseum_2F_EventScript_WaterQualitySample2:: msgbox SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample2, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_PressureExperiment:: @ 820BD1C +SlateportCity_OceanicMuseum_2F_EventScript_PressureExperiment:: msgbox SlateportCity_OceanicMuseum_2F_Text_PressureExperiment, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_HoennModel:: @ 820BD25 +SlateportCity_OceanicMuseum_2F_EventScript_HoennModel:: msgbox SlateportCity_OceanicMuseum_2F_Text_HoennModel, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_DeepSeawaterDisplay:: @ 820BD2E +SlateportCity_OceanicMuseum_2F_EventScript_DeepSeawaterDisplay:: msgbox SlateportCity_OceanicMuseum_2F_Text_DeepSeawaterDisplay, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_SurfaceSeawaterDisplay:: @ 820BD37 +SlateportCity_OceanicMuseum_2F_EventScript_SurfaceSeawaterDisplay:: msgbox SlateportCity_OceanicMuseum_2F_Text_SurfaceSeawaterDisplay, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_SSTidalReplica:: @ 820BD40 +SlateportCity_OceanicMuseum_2F_EventScript_SSTidalReplica:: msgbox SlateportCity_OceanicMuseum_2F_Text_SSTidalReplica, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_SubmarineReplica:: @ 820BD49 +SlateportCity_OceanicMuseum_2F_EventScript_SubmarineReplica:: msgbox SlateportCity_OceanicMuseum_2F_Text_SubmarineReplica, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_SubmersibleReplica:: @ 820BD52 +SlateportCity_OceanicMuseum_2F_EventScript_SubmersibleReplica:: msgbox SlateportCity_OceanicMuseum_2F_Text_SumbersibleReplica, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_SSAnneReplica:: @ 820BD5B +SlateportCity_OceanicMuseum_2F_EventScript_SSAnneReplica:: msgbox SlateportCity_OceanicMuseum_2F_Text_SSAnneReplica, MSGBOX_SIGN end -SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron1:: @ 820BD64 +SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron1:: msgbox SlateportCity_OceanicMuseum_2F_Text_RemindsMeOfAbandonedShip, MSGBOX_NPC end -SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron2:: @ 820BD6D +SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron2:: msgbox SlateportCity_OceanicMuseum_2F_Text_DontRunInMuseum, MSGBOX_NPC end -SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron3:: @ 820BD76 +SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron3:: lock faceplayer msgbox SlateportCity_OceanicMuseum_2F_Text_WantToRideSubmarine, MSGBOX_DEFAULT @@ -278,7 +278,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_MuseumPatron3:: @ 820BD76 release end -SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts: @ 820BD8D +SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts: .string "Yes? If you're looking for STERN,\n" .string "that would be me.\p" .string "Ah! Those must be the parts I ordered\n" @@ -286,47 +286,47 @@ SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts: @ 820BD8D .string "Thank you! That's great!\n" .string "We can prepare for our expedition now.$" -SlateportCity_OceanicMuseum_2F_Text_WellTakeThoseParts: @ 820BE40 +SlateportCity_OceanicMuseum_2F_Text_WellTakeThoseParts: .string "Hehehe, hold it!\n" .string "We'll take those parts!$" -SlateportCity_OceanicMuseum_2F_Text_SternWhoAreYou: @ 820BE69 +SlateportCity_OceanicMuseum_2F_Text_SternWhoAreYou: .string "CAPT. STERN: Wh-what?\n" .string "Who are you people?$" -SlateportCity_OceanicMuseum_2F_Text_WereTeamAqua: @ 820BE93 +SlateportCity_OceanicMuseum_2F_Text_WereTeamAqua: .string "We're TEAM AQUA!\p" .string "Our BOSS wants those parts!\n" .string "Shut your yap and fork them over!$" -SlateportCity_OceanicMuseum_2F_Text_Grunt1Defeat: @ 820BEE2 +SlateportCity_OceanicMuseum_2F_Text_Grunt1Defeat: .string "Awaaaah!\n" .string "A kid beat me!$" -SlateportCity_OceanicMuseum_2F_Text_BossGoingToBeFurious: @ 820BEFA +SlateportCity_OceanicMuseum_2F_Text_BossGoingToBeFurious: .string "Oh, man, what a disaster…\n" .string "The BOSS is going to be furious…$" -SlateportCity_OceanicMuseum_2F_Text_LetMeTakeCareOfThis: @ 820BF35 +SlateportCity_OceanicMuseum_2F_Text_LetMeTakeCareOfThis: .string "Humph, sniveling wimp!\n" .string "Let me take care of this!$" -SlateportCity_OceanicMuseum_2F_Text_Grunt2Defeat: @ 820BF66 +SlateportCity_OceanicMuseum_2F_Text_Grunt2Defeat: .string "What?!\n" .string "I lost, too!$" -SlateportCity_OceanicMuseum_2F_Text_MeddlingKid: @ 820BF7A +SlateportCity_OceanicMuseum_2F_Text_MeddlingKid: .string "Now what? If we don't get the parts,\n" .string "we're in for it!\p" .string "Arrgh, I didn't count on being meddled\n" .string "with by some meddling kid!$" -SlateportCity_OceanicMuseum_2F_Text_CameToSeeWhatsTakingSoLong: @ 820BFF2 +SlateportCity_OceanicMuseum_2F_Text_CameToSeeWhatsTakingSoLong: .string "I came to see what was taking so\n" .string "long to snatch some parts, and you\l" .string "simps are held up by a mere child?$" -SlateportCity_OceanicMuseum_2F_Text_ArchieWarning: @ 820C059 +SlateportCity_OceanicMuseum_2F_Text_ArchieWarning: .string "We are TEAM AQUA,\n" .string "and we love the sea!\p" .string "And I am TEAM AQUA's leader,\n" @@ -353,7 +353,7 @@ SlateportCity_OceanicMuseum_2F_Text_ArchieWarning: @ 820C059 .string "dearly!\p" .string "And don't you forget it!$" -SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs: @ 820C2BE +SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs: .string "CAPT. STERN: You're…\n" .string "Ah, okay, you're {PLAYER}{KUN}…\p" .string "Anyway, that was a tense situation!\n" @@ -361,7 +361,7 @@ SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs: @ 820C2BE .string "Oh, yes, I almost forgot that you\n" .string "even brought the parts from DEVON!$" -SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo: @ 820C36C +SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo: .string "CAPT. STERN: Whoops!\n" .string "There's no time to lose!\p" .string "We have to set out on our ocean-floor\n" @@ -371,32 +371,32 @@ SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo: @ 820C36C .string "Feel free to wander around and check\n" .string "out our facilities, though.$" -SlateportCity_OceanicMuseum_2F_Text_RemindsMeOfAbandonedShip: @ 820C43F +SlateportCity_OceanicMuseum_2F_Text_RemindsMeOfAbandonedShip: .string "I saw a model of a ship here.\p" .string "It reminded me of the ABANDONED SHIP\n" .string "near DEWFORD TOWN…$" -SlateportCity_OceanicMuseum_2F_Text_DontRunInMuseum: @ 820C495 +SlateportCity_OceanicMuseum_2F_Text_DontRunInMuseum: .string "Don't you dare run around inside\n" .string "the MUSEUM!$" -SlateportCity_OceanicMuseum_2F_Text_WantToRideSubmarine: @ 820C4C2 +SlateportCity_OceanicMuseum_2F_Text_WantToRideSubmarine: .string "Wow, the submarine's awesome!\n" .string "I want to go for a ride!$" -SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample1: @ 820C4F9 +SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample1: .string "“WATER QUALITY SAMPLE 1,” the\n" .string "label says.\p" .string "The sea is all connected, but the\n" .string "water seems to differ by region.$" -SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample2: @ 820C566 +SlateportCity_OceanicMuseum_2F_Text_WaterQualitySample2: .string "“WATER QUALITY SAMPLE 2,” the\n" .string "label says.\p" .string "Does the saltiness of seawater differ\n" .string "by region, too?$" -SlateportCity_OceanicMuseum_2F_Text_PressureExperiment: @ 820C5C6 +SlateportCity_OceanicMuseum_2F_Text_PressureExperiment: .string "A rubber ball is expanding and\n" .string "shrinking.\p" .string "“In the sea, the weight of water itself\n" @@ -407,39 +407,39 @@ SlateportCity_OceanicMuseum_2F_Text_PressureExperiment: @ 820C5C6 .string "the pressure can reach even tens of\l" .string "thousands of tons on a small area.”$" -SlateportCity_OceanicMuseum_2F_Text_HoennModel: @ 820C6C7 +SlateportCity_OceanicMuseum_2F_Text_HoennModel: .string "“MODEL OF HOENN REGION”\p" .string "It's a miniature diorama of the\n" .string "HOENN region.\p" .string "Where is LITTLEROOT TOWN on this?$" -SlateportCity_OceanicMuseum_2F_Text_DeepSeawaterDisplay: @ 820C72F +SlateportCity_OceanicMuseum_2F_Text_DeepSeawaterDisplay: .string "It's a display on the flow of seawater.\p" .string "“Near the bottom of the sea, water\n" .string "flows due to differences in such\l" .string "factors as temperature and salinity.”$" -SlateportCity_OceanicMuseum_2F_Text_SurfaceSeawaterDisplay: @ 820C7C1 +SlateportCity_OceanicMuseum_2F_Text_SurfaceSeawaterDisplay: .string "It's a display on the flow of seawater.\p" .string "“Toward the surface, seawater flows\n" .string "as currents driven by the winds.”$" -SlateportCity_OceanicMuseum_2F_Text_SSTidalReplica: @ 820C82F +SlateportCity_OceanicMuseum_2F_Text_SSTidalReplica: .string "“THE FERRY S.S. TIDAL\p" .string "“A scale replica of the ship under\n" .string "construction at STERN'S SHIPYARD.”$" -SlateportCity_OceanicMuseum_2F_Text_SubmarineReplica: @ 820C88B +SlateportCity_OceanicMuseum_2F_Text_SubmarineReplica: .string "“SUBMARINE EXPLORER 1\p" .string "“A replica of the high-performance\n" .string "ocean floor exploration submarine.”$" -SlateportCity_OceanicMuseum_2F_Text_SumbersibleReplica: @ 820C8E8 +SlateportCity_OceanicMuseum_2F_Text_SumbersibleReplica: .string "“SUBMERSIBLE POD\p" .string "“A replica of a compact, unmanned\n" .string "pod for seafloor exploration.”$" -SlateportCity_OceanicMuseum_2F_Text_SSAnneReplica: @ 820C93A +SlateportCity_OceanicMuseum_2F_Text_SSAnneReplica: .string "“S.S. ANNE\p" .string "“A replica of the luxury liner that\n" .string "circles the globe.”$" diff --git a/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc b/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc index e6b1acea8ef7..295409df81b0 100644 --- a/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -SlateportCity_PokemonCenter_1F_MapScripts:: @ 820DABF +SlateportCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -SlateportCity_PokemonCenter_1F_OnTransition: @ 820DACA +SlateportCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_SLATEPORT_CITY call Common_EventScript_UpdateBrineyLocation end -SlateportCity_PokemonCenter_1F_EventScript_Nurse:: @ 820DAD3 +SlateportCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,15 +18,15 @@ SlateportCity_PokemonCenter_1F_EventScript_Nurse:: @ 820DAD3 release end -SlateportCity_PokemonCenter_1F_EventScript_Sailor:: @ 820DAE1 +SlateportCity_PokemonCenter_1F_EventScript_Sailor:: msgbox SlateportCity_PokemonCenter_1F_Text_RaiseDifferentTypesOfPokemon, MSGBOX_NPC end -SlateportCity_PokemonCenter_1F_EventScript_Woman:: @ 820DAEA +SlateportCity_PokemonCenter_1F_EventScript_Woman:: msgbox SlateportCity_PokemonCenter_1F_Text_TradedMonWithFriend, MSGBOX_NPC end -SlateportCity_PokemonCenter_1F_Text_RaiseDifferentTypesOfPokemon: @ 820DAF3 +SlateportCity_PokemonCenter_1F_Text_RaiseDifferentTypesOfPokemon: .string "Want a tip for battling?\p" .string "I'd say it's raising different kinds\n" .string "of POKéMON in a balanced manner.\p" @@ -35,7 +35,7 @@ SlateportCity_PokemonCenter_1F_Text_RaiseDifferentTypesOfPokemon: @ 820DAF3 .string "If it has a type disadvantage,\n" .string "it might not stand a chance.$" -SlateportCity_PokemonCenter_1F_Text_TradedMonWithFriend: @ 820DBBC +SlateportCity_PokemonCenter_1F_Text_TradedMonWithFriend: .string "I trade POKéMON with my friends.\p" .string "If a traded POKéMON is holding an\n" .string "item, it makes me twice as happy!$" diff --git a/data/maps/SlateportCity_PokemonCenter_2F/scripts.inc b/data/maps/SlateportCity_PokemonCenter_2F/scripts.inc index 6406df27da36..48bad0fe3bba 100644 --- a/data/maps/SlateportCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/SlateportCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -SlateportCity_PokemonCenter_2F_MapScripts:: @ 820DC21 +SlateportCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ SlateportCity_PokemonCenter_2F_MapScripts:: @ 820DC21 .byte 0 @ The below 3 are unused and leftover from RS -SlateportCity_PokemonCenter_2F_EventScript_Colosseum:: @ 820DC36 +SlateportCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -SlateportCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 820DC3C +SlateportCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -SlateportCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 820DC42 +SlateportCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index e4086fa19578..3bff728164f7 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -1,7 +1,7 @@ -SlateportCity_PokemonFanClub_MapScripts:: @ 8209E95 +SlateportCity_PokemonFanClub_MapScripts:: .byte 0 -SlateportCity_PokemonFanClub_EventScript_Chairman:: @ 8209E96 +SlateportCity_PokemonFanClub_EventScript_Chairman:: lock faceplayer goto_if_unset FLAG_ENTERED_CONTEST, SlateportCity_PokemonFanClub_EventScript_ChairmanNotEnteredContest @@ -13,13 +13,13 @@ SlateportCity_PokemonFanClub_EventScript_Chairman:: @ 8209E96 release end -SlateportCity_PokemonFanClub_EventScript_ChairmanFirstAssessment:: @ 8209ED2 +SlateportCity_PokemonFanClub_EventScript_ChairmanFirstAssessment:: setvar VAR_SLATEPORT_FAN_CLUB_STATE, 1 msgbox SlateportCity_PokemonFanClub_Text_AllowMeToExamineYourPokemon, MSGBOX_DEFAULT goto SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon end -SlateportCity_PokemonFanClub_EventScript_ChairmanTryAssessPokemon:: @ 8209EE5 +SlateportCity_PokemonFanClub_EventScript_ChairmanTryAssessPokemon:: setvar VAR_TEMP_2, 0 call_if_set FLAG_RECEIVED_YELLOW_SCARF, SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf call_if_set FLAG_RECEIVED_GREEN_SCARF, SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf @@ -34,12 +34,12 @@ SlateportCity_PokemonFanClub_EventScript_ChairmanTryAssessPokemon:: @ 8209EE5 goto SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon end -SlateportCity_PokemonFanClub_EventScript_NoMoreScarves:: @ 8209F3B +SlateportCity_PokemonFanClub_EventScript_NoMoreScarves:: msgbox SlateportCity_PokemonFanClub_Text_NothingElseToGiveYou, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon:: @ 8209F45 +SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon:: msgbox SlateportCity_PokemonFanClub_Text_HmHmISee, MSGBOX_DEFAULT setvar VAR_TEMP_1, 0 call_if_unset FLAG_RECEIVED_YELLOW_SCARF, SlateportCity_PokemonFanClub_EventScript_CheckMonTough @@ -58,20 +58,20 @@ SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon:: @ 8209F45 release end -SlateportCity_PokemonFanClub_EventScript_ReceivedAllScarves:: @ 8209FCA +SlateportCity_PokemonFanClub_EventScript_ReceivedAllScarves:: setvar VAR_SLATEPORT_FAN_CLUB_STATE, 2 return -SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf:: @ 8209FD0 +SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf:: addvar VAR_TEMP_2, 1 return -SlateportCity_PokemonFanClub_EventScript_NoHighConditions:: @ 8209FD6 +SlateportCity_PokemonFanClub_EventScript_NoHighConditions:: msgbox SlateportCity_PokemonFanClub_Text_GiveMonMorePokeblocks, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: @ 8209FE0 +SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: checkitemspace ITEM_RED_SCARF, 1 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf @@ -82,7 +82,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: @ 8209FE0 release end -SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: @ 820A011 +SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: checkitemspace ITEM_BLUE_SCARF, 1 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf @@ -93,7 +93,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: @ 820A011 release end -SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: @ 820A042 +SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: checkitemspace ITEM_PINK_SCARF, 1 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf @@ -104,7 +104,7 @@ SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: @ 820A042 release end -SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: @ 820A073 +SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: checkitemspace ITEM_GREEN_SCARF, 1 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf @@ -115,7 +115,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: @ 820A073 release end -SlateportCity_PokemonFanClub_EventScript_GiveYellowScarf:: @ 820A0A4 +SlateportCity_PokemonFanClub_EventScript_GiveYellowScarf:: checkitemspace ITEM_YELLOW_SCARF, 1 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf @@ -126,79 +126,79 @@ SlateportCity_PokemonFanClub_EventScript_GiveYellowScarf:: @ 820A0A4 release end -SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf:: @ 820A0D5 +SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf:: msgbox SlateportCity_PokemonFanClub_Text_NoSpaceForReward, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_CheckMonCool:: @ 820A0DF +SlateportCity_PokemonFanClub_EventScript_CheckMonCool:: specialvar VAR_RESULT, CheckLeadMonCool compare VAR_RESULT, TRUE call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonCool return -SlateportCity_PokemonFanClub_EventScript_SetMonCool:: @ 820A0F0 +SlateportCity_PokemonFanClub_EventScript_SetMonCool:: setvar VAR_TEMP_1, 1 return -SlateportCity_PokemonFanClub_EventScript_CheckMonBeauty:: @ 820A0F6 +SlateportCity_PokemonFanClub_EventScript_CheckMonBeauty:: specialvar VAR_RESULT, CheckLeadMonBeauty compare VAR_RESULT, TRUE call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonBeauty return -SlateportCity_PokemonFanClub_EventScript_SetMonBeauty:: @ 820A107 +SlateportCity_PokemonFanClub_EventScript_SetMonBeauty:: setvar VAR_TEMP_1, 2 return -SlateportCity_PokemonFanClub_EventScript_CheckMonCute:: @ 820A10D +SlateportCity_PokemonFanClub_EventScript_CheckMonCute:: specialvar VAR_RESULT, CheckLeadMonCute compare VAR_RESULT, TRUE call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonCute return -SlateportCity_PokemonFanClub_EventScript_SetMonCute:: @ 820A11E +SlateportCity_PokemonFanClub_EventScript_SetMonCute:: setvar VAR_TEMP_1, 3 return -SlateportCity_PokemonFanClub_EventScript_CheckMonSmart:: @ 820A124 +SlateportCity_PokemonFanClub_EventScript_CheckMonSmart:: specialvar VAR_RESULT, CheckLeadMonSmart compare VAR_RESULT, TRUE call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonSmart return -SlateportCity_PokemonFanClub_EventScript_SetMonSmart:: @ 820A135 +SlateportCity_PokemonFanClub_EventScript_SetMonSmart:: setvar VAR_TEMP_1, 4 return -SlateportCity_PokemonFanClub_EventScript_CheckMonTough:: @ 820A13B +SlateportCity_PokemonFanClub_EventScript_CheckMonTough:: specialvar VAR_RESULT, CheckLeadMonTough compare VAR_RESULT, TRUE call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonTough return -SlateportCity_PokemonFanClub_EventScript_SetMonTough:: @ 820A14C +SlateportCity_PokemonFanClub_EventScript_SetMonTough:: setvar VAR_TEMP_1, 5 return -SlateportCity_PokemonFanClub_EventScript_ChairmanNotEnteredContest:: @ 820A152 +SlateportCity_PokemonFanClub_EventScript_ChairmanNotEnteredContest:: goto_if_set FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN, SlateportCity_PokemonFanClub_EventScript_ChairmanEnterContest msgbox SlateportCity_PokemonFanClub_Text_MeetChairman, MSGBOX_DEFAULT setflag FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN release end -SlateportCity_PokemonFanClub_EventScript_ChairmanEnterContest:: @ 820A168 +SlateportCity_PokemonFanClub_EventScript_ChairmanEnterContest:: msgbox SlateportCity_PokemonFanClub_Text_LikeToSeeEnteredContestPokemon, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_MeetChairman:: @ 820A172 +SlateportCity_PokemonFanClub_EventScript_MeetChairman:: msgbox SlateportCity_PokemonFanClub_Text_MeetChairman, MSGBOX_DEFAULT setflag FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN return -SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: @ 820A17E +SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: lock faceplayer goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell @@ -209,7 +209,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: @ 820A17E release end -SlateportCity_PokemonFanClub_EventScript_GiveSootheBell:: @ 820A1A3 +SlateportCity_PokemonFanClub_EventScript_GiveSootheBell:: playse SE_PIN applymovement VAR_LAST_TALKED, Common_Movement_ExclamationMark waitmovement 0 @@ -223,20 +223,20 @@ SlateportCity_PokemonFanClub_EventScript_GiveSootheBell:: @ 820A1A3 release end -SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell:: @ 820A1DE +SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell:: msgbox SlateportCity_PokemonFanClub_Text_TreatPokemonWithLove, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_Man:: @ 820A1E8 +SlateportCity_PokemonFanClub_EventScript_Man:: msgbox SlateportCity_PokemonFanClub_Text_PokemonDontLikeFainting, MSGBOX_NPC end -SlateportCity_PokemonFanClub_EventScript_Twin:: @ 820A1F1 +SlateportCity_PokemonFanClub_EventScript_Twin:: msgbox SlateportCity_PokemonFanClub_Text_MonEnjoyedProtein, MSGBOX_NPC end -SlateportCity_PokemonFanClub_EventScript_Skitty:: @ 820A1FA +SlateportCity_PokemonFanClub_EventScript_Skitty:: lock faceplayer waitse @@ -246,7 +246,7 @@ SlateportCity_PokemonFanClub_EventScript_Skitty:: @ 820A1FA release end -SlateportCity_PokemonFanClub_EventScript_Zigzagoon:: @ 820A20D +SlateportCity_PokemonFanClub_EventScript_Zigzagoon:: lock faceplayer waitse @@ -256,7 +256,7 @@ SlateportCity_PokemonFanClub_EventScript_Zigzagoon:: @ 820A20D release end -SlateportCity_PokemonFanClub_EventScript_Azumarill:: @ 820A220 +SlateportCity_PokemonFanClub_EventScript_Azumarill:: lock faceplayer waitse @@ -266,7 +266,7 @@ SlateportCity_PokemonFanClub_EventScript_Azumarill:: @ 820A220 release end -SlateportCity_PokemonFanClub_Text_MeetChairman: @ 820A233 +SlateportCity_PokemonFanClub_Text_MeetChairman: .string "Er-hem! I am the CHAIRMAN of the\n" .string "POKéMON FAN CLUB!\p" .string "Being the CHAIRMAN, I am naturally\n" @@ -283,12 +283,12 @@ SlateportCity_PokemonFanClub_Text_MeetChairman: @ 820A233 .string "off our POKéMON, and have others\l" .string "show us theirs.$" -SlateportCity_PokemonFanClub_Text_LikeToSeeEnteredContestPokemon: @ 820A3EE +SlateportCity_PokemonFanClub_Text_LikeToSeeEnteredContestPokemon: .string "The POKéMON of a TRAINER who has\n" .string "entered a POKéMON CONTEST…\l" .string "That, I would like to see.$" -SlateportCity_PokemonFanClub_Text_AllowMeToExamineYourPokemon: @ 820A445 +SlateportCity_PokemonFanClub_Text_AllowMeToExamineYourPokemon: .string "Er-hem! I see you've participated in\n" .string "a POKéMON CONTEST!\p" .string "Please! Allow me to examine how you\n" @@ -306,15 +306,15 @@ SlateportCity_PokemonFanClub_Text_AllowMeToExamineYourPokemon: @ 820A445 .string "Please! Allow me to examine how much\n" .string "your POKéMON has grown!$" -SlateportCity_PokemonFanClub_Text_HowIsYourPokemonGrowing: @ 820A62A +SlateportCity_PokemonFanClub_Text_HowIsYourPokemonGrowing: .string "How is your POKéMON growing?\n" .string "Allow me to examine it.$" -SlateportCity_PokemonFanClub_Text_HmHmISee: @ 820A65F +SlateportCity_PokemonFanClub_Text_HmHmISee: .string "Hm, hm…\n" .string "I see…$" -SlateportCity_PokemonFanClub_Text_GiveMonMorePokeblocks: @ 820A66E +SlateportCity_PokemonFanClub_Text_GiveMonMorePokeblocks: .string "Hmmm… It's not bad, but it's not\n" .string "good, either…\p" .string "You, the TRAINER, must put more\n" @@ -322,53 +322,53 @@ SlateportCity_PokemonFanClub_Text_GiveMonMorePokeblocks: @ 820A66E .string "For instance, may I suggest that\n" .string "you give it more {POKEBLOCK}S?$" -SlateportCity_PokemonFanClub_Text_NoSpaceForReward: @ 820A719 +SlateportCity_PokemonFanClub_Text_NoSpaceForReward: .string "Oh, my…\p" .string "Your POKéMON is growing quite well,\n" .string "so you deserve a reward.\p" .string "Unfortunately, you have no space for\n" .string "this in your BAG.$" -SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis: @ 820A795 +SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis: .string "Your {STR_VAR_1}, it is growing in\n" .string "a most impressive manner!\l" .string "It is one fine specimen!\p" .string "But! If you were to give it this,\n" .string "it would grow even better! Indeed!$" -SlateportCity_PokemonFanClub_Text_ExplainRedScarf: @ 820A827 +SlateportCity_PokemonFanClub_Text_ExplainRedScarf: .string "Let a POKéMON hold that RED SCARF.\p" .string "Everyone will recognize the coolness\n" .string "of that POKéMON!$" -SlateportCity_PokemonFanClub_Text_ExplainBlueScarf: @ 820A880 +SlateportCity_PokemonFanClub_Text_ExplainBlueScarf: .string "Let a POKéMON hold that BLUE SCARF.\p" .string "Its beauty will be accentuated much\n" .string "more than now!$" -SlateportCity_PokemonFanClub_Text_ExplainPinkScarf: @ 820A8D7 +SlateportCity_PokemonFanClub_Text_ExplainPinkScarf: .string "Let a POKéMON hold that PINK SCARF.\p" .string "It will draw out the cuteness of\n" .string "the POKéMON some more!$" -SlateportCity_PokemonFanClub_Text_ExplainGreenScarf: @ 820A933 +SlateportCity_PokemonFanClub_Text_ExplainGreenScarf: .string "Let a POKéMON hold that GREEN SCARF.\p" .string "That will enhance the\n" .string "smartness of POKéMON!$" -SlateportCity_PokemonFanClub_Text_ExplainYellowScarf: @ 820A984 +SlateportCity_PokemonFanClub_Text_ExplainYellowScarf: .string "Let a POKéMON hold that YELLOW SCARF.\p" .string "It will bolster your POKéMON's\n" .string "toughness so much more!$" -SlateportCity_PokemonFanClub_Text_NothingElseToGiveYou: @ 820A9E1 +SlateportCity_PokemonFanClub_Text_NothingElseToGiveYou: .string "I'm sorry, but I've nothing else to\n" .string "give you! None at all!\p" .string "After all, you're blessed with the gift\n" .string "of raising POKéMON without resorting\l" .string "to any items!$" -SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou: @ 820AA77 +SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou: .string "I love seeing POKéMON that love\n" .string "their TRAINERS.\p" .string "POKéMON are very sensitive to\n" @@ -378,18 +378,18 @@ SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou: @ 820AA77 .string "When your POKéMON grow to love you,\n" .string "please come show me.$" -SlateportCity_PokemonFanClub_Text_PokemonAdoresYou: @ 820AB63 +SlateportCity_PokemonFanClub_Text_PokemonAdoresYou: .string "Your POKéMON really adores you.\p" .string "For you, a most compassionate\n" .string "TRAINER, a gift from the FAN CLUB!$" -SlateportCity_PokemonFanClub_Text_TreatPokemonWithLove: @ 820ABC4 +SlateportCity_PokemonFanClub_Text_TreatPokemonWithLove: .string "POKéMON are very sensitive to\n" .string "the feelings of their TRAINERS.\p" .string "If you treat your POKéMON with love\n" .string "and care, they'll love you back.$" -SlateportCity_PokemonFanClub_Text_PokemonDontLikeFainting: @ 820AC47 +SlateportCity_PokemonFanClub_Text_PokemonDontLikeFainting: .string "If you keep letting a POKéMON faint\n" .string "in battle, it'll come to resent it.\p" .string "Soon, it will become less trusting\n" @@ -397,18 +397,18 @@ SlateportCity_PokemonFanClub_Text_PokemonDontLikeFainting: @ 820AC47 .string "In other words, it certainly won't\n" .string "like you very much.$" -SlateportCity_PokemonFanClub_Text_MonEnjoyedProtein: @ 820ACF9 +SlateportCity_PokemonFanClub_Text_MonEnjoyedProtein: .string "Do POKéMON enjoy having items used\n" .string "on them?\p" .string "Mine acted really happy when I gave\n" .string "it some PROTEIN.$" -SlateportCity_PokemonFanClub_Text_Skitty: @ 820AD5A +SlateportCity_PokemonFanClub_Text_Skitty: .string "SKITTY: Fffnyaaaah…$" -SlateportCity_PokemonFanClub_Text_Zigzagoon: @ 820AD6E +SlateportCity_PokemonFanClub_Text_Zigzagoon: .string "ZIGZAGOON: Kyuuu…$" -SlateportCity_PokemonFanClub_Text_Azumarill: @ 820AD80 +SlateportCity_PokemonFanClub_Text_Azumarill: .string "AZUMARILL: Marimari?$" diff --git a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc index 8c65f9592bee..8b4a4de54a69 100644 --- a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc +++ b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc @@ -1,9 +1,9 @@ .set LOCALID_DOCK, 1 -SlateportCity_SternsShipyard_1F_MapScripts:: @ 8207F3F +SlateportCity_SternsShipyard_1F_MapScripts:: .byte 0 -SlateportCity_SternsShipyard_1F_EventScript_Dock:: @ 8207F40 +SlateportCity_SternsShipyard_1F_EventScript_Dock:: lockall goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_SternsShipyard_1F_EventScript_FerryReady goto_if_set FLAG_BADGE07_GET, SlateportCity_SternsShipyard_1F_EventScript_BrineyJoined @@ -21,21 +21,21 @@ SlateportCity_SternsShipyard_1F_EventScript_Dock:: @ 8207F40 releaseall end -SlateportCity_SternsShipyard_1F_EventScript_FerryReady:: @ 8207F92 +SlateportCity_SternsShipyard_1F_EventScript_FerryReady:: applymovement LOCALID_DOCK, Common_Movement_FacePlayer waitmovement 0 msgbox SlateportCity_SternsShipyard_1F_Text_FerryIsReady, MSGBOX_DEFAULT releaseall end -SlateportCity_SternsShipyard_1F_EventScript_BrineyJoined:: @ 8207FA6 +SlateportCity_SternsShipyard_1F_EventScript_BrineyJoined:: applymovement LOCALID_DOCK, Common_Movement_FacePlayer waitmovement 0 msgbox SlateportCity_SternsShipyard_1F_Text_BrineyJoinedUs, MSGBOX_DEFAULT releaseall end -SlateportCity_SternsShipyard_1F_EventScript_GoFindStern:: @ 8207FBA +SlateportCity_SternsShipyard_1F_EventScript_GoFindStern:: applymovement LOCALID_DOCK, Common_Movement_FacePlayer waitmovement 0 msgbox SlateportCity_SternsShipyard_1F_Text_CouldYouFindStern, MSGBOX_DEFAULT @@ -45,26 +45,26 @@ SlateportCity_SternsShipyard_1F_EventScript_GoFindStern:: @ 8207FBA releaseall end -SlateportCity_SternsShipyard_1F_EventScript_NeedVeteran:: @ 8207FD9 +SlateportCity_SternsShipyard_1F_EventScript_NeedVeteran:: applymovement LOCALID_DOCK, Common_Movement_FacePlayer waitmovement 0 msgbox SlateportCity_SternsShipyard_1F_Text_CouldUseAdviceFromVeteran, MSGBOX_DEFAULT releaseall end -SlateportCity_SternsShipyard_1F_EventScript_Scientist1:: @ 8207FED +SlateportCity_SternsShipyard_1F_EventScript_Scientist1:: msgbox SlateportCity_SternsShipyard_1F_Text_SeaIsLikeLivingThing, MSGBOX_NPC end -SlateportCity_SternsShipyard_1F_EventScript_Scientist2:: @ 8207FF6 +SlateportCity_SternsShipyard_1F_EventScript_Scientist2:: msgbox SlateportCity_SternsShipyard_1F_Text_GetSeasickEasily, MSGBOX_NPC end -SlateportCity_SternsShipyard_1F_EventScript_Briney:: @ 8207FFF +SlateportCity_SternsShipyard_1F_EventScript_Briney:: msgbox SlateportCity_SternsShipyard_1F_Text_DecidedToHelpDock, MSGBOX_NPC end -SlateportCity_SternsShipyard_1F_Text_CantMakeHeadsOrTails: @ 8208008 +SlateportCity_SternsShipyard_1F_Text_CantMakeHeadsOrTails: .string "Umm… If this goes here, and that\n" .string "goes over there…\p" .string "Then where does this thing go?\n" @@ -72,7 +72,7 @@ SlateportCity_SternsShipyard_1F_Text_CantMakeHeadsOrTails: @ 8208008 .string "Aaargh! I can't make heads or tails\n" .string "of this!$" -SlateportCity_SternsShipyard_1F_Text_MeetDockDeliverToStern: @ 82080A5 +SlateportCity_SternsShipyard_1F_Text_MeetDockDeliverToStern: .string "Hm?\n" .string "Hi, I'm DOCK.\p" .string "CAPT. STERN commissioned me to\n" @@ -86,26 +86,26 @@ SlateportCity_SternsShipyard_1F_Text_MeetDockDeliverToStern: @ 82080A5 .string "Could I get you to go find CAPT.\n" .string "STERN and deliver that to him?$" -SlateportCity_SternsShipyard_1F_Text_CouldYouFindStern: @ 82081A5 +SlateportCity_SternsShipyard_1F_Text_CouldYouFindStern: .string "DOCK: Where could CAPT. STERN have\n" .string "gone off to?\p" .string "Could you go find CAPT. STERN and\n" .string "deliver that parcel to him?$" -SlateportCity_SternsShipyard_1F_Text_CouldUseAdviceFromVeteran: @ 8208213 +SlateportCity_SternsShipyard_1F_Text_CouldUseAdviceFromVeteran: .string "DOCK: Shipbuilding is an art.\p" .string "A lot of things can't be figured out\n" .string "just by calculating.\p" .string "I really could use advice from a veteran\n" .string "who knows the seas…$" -SlateportCity_SternsShipyard_1F_Text_BrineyJoinedUs: @ 82082A8 +SlateportCity_SternsShipyard_1F_Text_BrineyJoinedUs: .string "DOCK: Hi! MR. BRINEY's joined us to\n" .string "lend us his help.\p" .string "Thanks to the veteran sailor, the\n" .string "ferry is steadily coming together.$" -SlateportCity_SternsShipyard_1F_Text_FerryIsReady: @ 8208323 +SlateportCity_SternsShipyard_1F_Text_FerryIsReady: .string "DOCK: The ferry is finally ready!\p" .string "The new S.S. TIDAL is truly a marvel\n" .string "of technology!\p" @@ -114,7 +114,7 @@ SlateportCity_SternsShipyard_1F_Text_FerryIsReady: @ 8208323 .string "You know, there's never an end to\n" .string "technology's march.$" -SlateportCity_SternsShipyard_1F_Text_DecidedToHelpDock: @ 82083EE +SlateportCity_SternsShipyard_1F_Text_DecidedToHelpDock: .string "MR. BRINEY: Ah, {PLAYER}{KUN}!\n" .string "It's been too long!\p" .string "Aye, since I met you, this old sea dog's\n" @@ -129,7 +129,7 @@ SlateportCity_SternsShipyard_1F_Text_DecidedToHelpDock: @ 82083EE .string "my experience, I'm sure that we can\l" .string "build one great ship, aye!$" -SlateportCity_SternsShipyard_1F_Text_SeaIsLikeLivingThing: @ 8208558 +SlateportCity_SternsShipyard_1F_Text_SeaIsLikeLivingThing: .string "The seasons, the weather, where\n" .string "the moon sits in the sky…\p" .string "These and other conditions make\n" @@ -137,7 +137,7 @@ SlateportCity_SternsShipyard_1F_Text_SeaIsLikeLivingThing: @ 8208558 .string "That's right!\n" .string "The sea is like a living thing!$" -SlateportCity_SternsShipyard_1F_Text_GetSeasickEasily: @ 82085FF +SlateportCity_SternsShipyard_1F_Text_GetSeasickEasily: .string "I get seasick real easily.\n" .string "So I get to help out here instead.$" diff --git a/data/maps/SlateportCity_SternsShipyard_2F/scripts.inc b/data/maps/SlateportCity_SternsShipyard_2F/scripts.inc index fff96bc654b4..59e8a531a67d 100644 --- a/data/maps/SlateportCity_SternsShipyard_2F/scripts.inc +++ b/data/maps/SlateportCity_SternsShipyard_2F/scripts.inc @@ -1,20 +1,20 @@ -SlateportCity_SternsShipyard_2F_MapScripts:: @ 820863D +SlateportCity_SternsShipyard_2F_MapScripts:: .byte 0 -SlateportCity_SternsShipyard_2F_EventScript_Scientist1:: @ 820863E +SlateportCity_SternsShipyard_2F_EventScript_Scientist1:: msgbox SlateportCity_SternsShipyard_2F_Text_ShipDesignMoreLikeBuilding, MSGBOX_NPC end -SlateportCity_SternsShipyard_2F_EventScript_Scientist2:: @ 8208647 +SlateportCity_SternsShipyard_2F_EventScript_Scientist2:: msgbox SlateportCity_SternsShipyard_2F_Text_FloatsBecauseBuoyancy, MSGBOX_NPC end -SlateportCity_SternsShipyard_2F_Text_ShipDesignMoreLikeBuilding: @ 8208650 +SlateportCity_SternsShipyard_2F_Text_ShipDesignMoreLikeBuilding: .string "Designing a large ship is more like\n" .string "making a big building than putting\l" .string "together a transportation vehicle.$" -SlateportCity_SternsShipyard_2F_Text_FloatsBecauseBuoyancy: @ 82086BA +SlateportCity_SternsShipyard_2F_Text_FloatsBecauseBuoyancy: .string "Don't you think it's strange that\n" .string "a ship made of heavy iron floats?\p" .string "It floats because of a principle\n" diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index 00fb6b54107d..efeae33d1e58 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -16,7 +16,7 @@ .set LOCALID_ARCHIE, 17 .set LOCALID_WALLACE, 18 -SootopolisCity_MapScripts:: @ 81E565C +SootopolisCity_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, SootopolisCity_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_OnTransition map_script MAP_SCRIPT_ON_RESUME, SootopolisCity_OnResume @@ -24,16 +24,16 @@ SootopolisCity_MapScripts:: @ 81E565C map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SootopolisCity_OnWarp .byte 0 -SootopolisCity_OnLoad: @ 81E5676 +SootopolisCity_OnLoad: call_if_unset FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_LockGymDoor goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_EventScript_LegendariesNotArrived call_if_unset FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_LockHouseDoors end -SootopolisCity_EventScript_LegendariesNotArrived:: @ 81E5692 +SootopolisCity_EventScript_LegendariesNotArrived:: end -SootopolisCity_EventScript_LockHouseDoors:: @ 81E5693 +SootopolisCity_EventScript_LockHouseDoors:: setmetatile 9, 6, METATILE_Sootopolis_Door_Closed, 1 setmetatile 9, 17, METATILE_Sootopolis_Door_Closed, 1 setmetatile 9, 26, METATILE_Sootopolis_Door_Closed, 1 @@ -45,11 +45,11 @@ SootopolisCity_EventScript_LockHouseDoors:: @ 81E5693 setmetatile 51, 36, METATILE_Sootopolis_Door_Closed, 1 return -SootopolisCity_EventScript_LockGymDoor:: @ 81E56E5 +SootopolisCity_EventScript_LockGymDoor:: setmetatile 31, 32, METATILE_Sootopolis_GymDoor_Closed, 1 return -SootopolisCity_OnTransition: @ 81E56EF +SootopolisCity_OnTransition: setflag FLAG_VISITED_SOOTOPOLIS_CITY compare VAR_SOOTOPOLIS_CITY_STATE, 1 call_if_eq SootopolisCity_EventScript_HideMapNamePopup @@ -79,11 +79,11 @@ SootopolisCity_OnTransition: @ 81E56EF call_if_eq SootopolisCity_EventScript_SetExpertBlockCaveEntrance end -SootopolisCity_EventScript_HideMapNamePopup:: @ 81E5781 +SootopolisCity_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -SootopolisCity_EventScript_SetBattleSpectators:: @ 81E5785 +SootopolisCity_EventScript_SetBattleSpectators:: setobjectxyperm LOCALID_KIRI, 13, 48 setobjectxyperm LOCALID_BOY_1, 46, 32 setobjectxyperm LOCALID_NINJA_BOY, 48, 41 @@ -94,7 +94,7 @@ SootopolisCity_EventScript_SetBattleSpectators:: @ 81E5785 setobjectmovementtype LOCALID_WOMAN_1, MOVEMENT_TYPE_FACE_LEFT return -SootopolisCity_EventScript_SetLayout:: @ 81E57B2 +SootopolisCity_EventScript_SetLayout:: compare VAR_SOOTOPOLIS_CITY_STATE, 0 goto_if_eq SootopolisCity_EventScript_SetNormalLayout compare VAR_SOOTOPOLIS_CITY_STATE, 6 @@ -111,14 +111,14 @@ SootopolisCity_EventScript_SetLayout:: @ 81E57B2 goto_if_le SootopolisCity_EventScript_SetLegendariesLayout return -SootopolisCity_EventScript_SetNormalLayout:: @ 81E5800 +SootopolisCity_EventScript_SetNormalLayout:: return -SootopolisCity_EventScript_SetLegendariesLayout:: @ 81E5801 +SootopolisCity_EventScript_SetLegendariesLayout:: setmaplayoutindex LAYOUT_SOOTOPOLIS_CITY_LEGENDS_BATTLE return -SootopolisCity_EventScript_SetWeather:: @ 81E5805 +SootopolisCity_EventScript_SetWeather:: compare VAR_SOOTOPOLIS_CITY_STATE, 0 goto_if_eq SootopolisCity_EventScript_SetNormalWeather compare VAR_SOOTOPOLIS_CITY_STATE, 6 @@ -131,29 +131,29 @@ SootopolisCity_EventScript_SetWeather:: @ 81E5805 goto_if_le Common_EventScript_SetAbnormalWeather return -SootopolisCity_EventScript_SetNormalWeather:: @ 81E583D +SootopolisCity_EventScript_SetNormalWeather:: return -SootopolisCity_EventScript_SetDownpour:: @ 81E583E +SootopolisCity_EventScript_SetDownpour:: setweather WEATHER_DOWNPOUR return -SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos:: @ 81E5842 +SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos:: goto_if_set FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN, SootopolisCity_EventScript_SetEnterCaveOfOriginObjPos return -SootopolisCity_EventScript_SetEnterCaveOfOriginObjPos:: @ 81E584C +SootopolisCity_EventScript_SetEnterCaveOfOriginObjPos:: setobjectxyperm LOCALID_EXPERT, 30, 18 setobjectxyperm LOCALID_STEVEN, 32, 18 return -SootopolisCity_EventScript_SetExitCaveOfOriginObjPos:: @ 81E585B +SootopolisCity_EventScript_SetExitCaveOfOriginObjPos:: setobjectxyperm LOCALID_EXPERT, 30, 18 setobjectxyperm LOCALID_WALLACE, 31, 18 setobjectxyperm LOCALID_STEVEN, 32, 18 end -SootopolisCity_EventScript_SetOutsideGymObjPos:: @ 81E5871 +SootopolisCity_EventScript_SetOutsideGymObjPos:: setobjectxyperm LOCALID_EXPERT, 31, 18 setobjectxyperm LOCALID_STEVEN, 29, 33 setobjectxyperm LOCALID_MAXIE, 33, 35 @@ -166,56 +166,56 @@ SootopolisCity_EventScript_SetOutsideGymObjPos:: @ 81E5871 call_if_eq SootopolisCity_EventScript_SetWallaceLeft return -SootopolisCity_EventScript_SetWallaceMiddle:: @ 81E58AF +SootopolisCity_EventScript_SetWallaceMiddle:: setobjectxyperm LOCALID_WALLACE, 31, 33 setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN return -SootopolisCity_EventScript_SetWallaceRight:: @ 81E58BB +SootopolisCity_EventScript_SetWallaceRight:: setobjectxyperm LOCALID_WALLACE, 32, 33 setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN return -SootopolisCity_EventScript_SetWallaceLeft:: @ 81E58C7 +SootopolisCity_EventScript_SetWallaceLeft:: setobjectxyperm LOCALID_WALLACE, 30, 33 setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN return -SootopolisCity_EventScript_SetExpertBlockCaveEntrance:: @ 81E58D3 +SootopolisCity_EventScript_SetExpertBlockCaveEntrance:: setobjectxyperm LOCALID_EXPERT, 31, 18 return -SootopolisCity_OnWarp: @ 81E58DB +SootopolisCity_OnWarp: map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_PlayerFaceLegendaries .2byte 0 -SootopolisCity_EventScript_PlayerFaceLegendaries:: @ 81E58E5 +SootopolisCity_EventScript_PlayerFaceLegendaries:: compare VAR_SKY_PILLAR_STATE, 1 call_if_eq SootopolisCity_EventScript_PlayerFaceLegendaries1 compare VAR_SKY_PILLAR_STATE, 2 call_if_eq SootopolisCity_EventScript_PlayerFaceLegendaries2 end -SootopolisCity_EventScript_PlayerFaceLegendaries1:: @ 81E58FC +SootopolisCity_EventScript_PlayerFaceLegendaries1:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH return -SootopolisCity_EventScript_PlayerFaceLegendaries2:: @ 81E5901 +SootopolisCity_EventScript_PlayerFaceLegendaries2:: turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH setvar VAR_SKY_PILLAR_STATE, 3 return -SootopolisCity_OnResume: @ 81E590B +SootopolisCity_OnResume: setdivewarp MAP_UNDERWATER_SOOTOPOLIS_CITY, 255, 9, 6 end -SootopolisCity_OnFrame: @ 81E5914 +SootopolisCity_OnFrame: map_script_2 VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_StartLegendariesScene map_script_2 VAR_SKY_PILLAR_STATE, 1, SootopolisCity_EventScript_StartRayquazaScene .2byte 0 @ If not at PokeCenter, assumed to have arrived via Dive -SootopolisCity_EventScript_StartLegendariesScene:: @ 81E5926 +SootopolisCity_EventScript_StartLegendariesScene:: lockall special StorePlayerCoordsInVars compare VAR_0x8004, 43 @@ -225,7 +225,7 @@ SootopolisCity_EventScript_StartLegendariesScene:: @ 81E5926 goto SootopolisCity_EventScript_LegendariesSceneFromPokeCenter end -SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: @ 81E5946 +SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: delay 60 special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter @@ -295,7 +295,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: @ 81E5946 releaseall end -SootopolisCity_Movement_PanToActionFromPokeCenter: @ 81E5A68 +SootopolisCity_Movement_PanToActionFromPokeCenter: walk_slow_diag_southwest walk_slow_diag_southwest walk_slow_diag_southwest @@ -310,7 +310,7 @@ SootopolisCity_Movement_PanToActionFromPokeCenter: @ 81E5A68 walk_slow_diag_southwest step_end -SootopolisCity_Movement_PanBackToPokeCenter: @ 81E5A75 +SootopolisCity_Movement_PanBackToPokeCenter: walk_slow_diag_northeast walk_slow_diag_northeast walk_slow_diag_northeast @@ -325,7 +325,7 @@ SootopolisCity_Movement_PanBackToPokeCenter: @ 81E5A75 walk_slow_diag_northeast step_end -SootopolisCity_EventScript_LegendariesSceneFromDive:: @ 81E5A82 +SootopolisCity_EventScript_LegendariesSceneFromDive:: delay 60 special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromDive @@ -395,7 +395,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: @ 81E5A82 releaseall end -SootopolisCity_Movement_PanToActionFromDive: @ 81E5BA4 +SootopolisCity_Movement_PanToActionFromDive: walk_slow_diag_northeast walk_slow_diag_northeast walk_up @@ -407,7 +407,7 @@ SootopolisCity_Movement_PanToActionFromDive: @ 81E5BA4 walk_up step_end -SootopolisCity_Movement_PanBackToDive: @ 81E5BAE +SootopolisCity_Movement_PanBackToDive: walk_down walk_down walk_down @@ -419,7 +419,7 @@ SootopolisCity_Movement_PanBackToDive: @ 81E5BAE walk_slow_diag_southwest step_end -SootopolisCity_Movement_KyogreAttack: @ 81E5BB8 +SootopolisCity_Movement_KyogreAttack: walk_in_place_slow_left walk_in_place_slow_left walk_in_place_slow_left @@ -431,7 +431,7 @@ SootopolisCity_Movement_KyogreAttack: @ 81E5BB8 clear_affine_anim step_end -SootopolisCity_Movement_KyogreDefend: @ 81E5BC2 +SootopolisCity_Movement_KyogreDefend: delay_16 delay_16 delay_16 @@ -446,7 +446,7 @@ SootopolisCity_Movement_KyogreDefend: @ 81E5BC2 clear_affine_anim step_end -SootopolisCity_Movement_KyogreMoveBack: @ 81E5BCF +SootopolisCity_Movement_KyogreMoveBack: lock_facing_direction walk_right delay_16 @@ -455,7 +455,7 @@ SootopolisCity_Movement_KyogreMoveBack: @ 81E5BCF unlock_facing_direction step_end -SootopolisCity_Movement_KyogreIdle: @ 81E5BD6 +SootopolisCity_Movement_KyogreIdle: walk_in_place_slow_left walk_in_place_slow_left walk_in_place_slow_left @@ -464,7 +464,7 @@ SootopolisCity_Movement_KyogreIdle: @ 81E5BD6 walk_in_place_slow_left step_end -SootopolisCity_Movement_GroudonAttack: @ 81E5BDD +SootopolisCity_Movement_GroudonAttack: walk_in_place_slow_right walk_in_place_slow_right walk_in_place_slow_right @@ -474,7 +474,7 @@ SootopolisCity_Movement_GroudonAttack: @ 81E5BDD walk_fast_right step_end -SootopolisCity_Movement_GroudonDefend: @ 81E5BE5 +SootopolisCity_Movement_GroudonDefend: delay_16 delay_16 delay_16 @@ -487,7 +487,7 @@ SootopolisCity_Movement_GroudonDefend: @ 81E5BE5 walk_fast_right step_end -SootopolisCity_Movement_GroudonMoveBack: @ 81E5BF0 +SootopolisCity_Movement_GroudonMoveBack: lock_facing_direction walk_left delay_16 @@ -496,7 +496,7 @@ SootopolisCity_Movement_GroudonMoveBack: @ 81E5BF0 unlock_facing_direction step_end -SootopolisCity_Movement_GroudonIdle: @ 81E5BF7 +SootopolisCity_Movement_GroudonIdle: walk_in_place_slow_right walk_in_place_slow_right walk_in_place_slow_right @@ -506,7 +506,7 @@ SootopolisCity_Movement_GroudonIdle: @ 81E5BF7 step_end @ If not at PokeCenter, assumed to have arrived via Dive -SootopolisCity_EventScript_StartRayquazaScene:: @ 81E5BFE +SootopolisCity_EventScript_StartRayquazaScene:: lockall special StorePlayerCoordsInVars compare VAR_0x8004, 43 @@ -516,7 +516,7 @@ SootopolisCity_EventScript_StartRayquazaScene:: @ 81E5BFE goto SootopolisCity_EventScript_RayquazaSceneFromPokeCenter end -SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: @ 81E5C1E +SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: delay 60 special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter @@ -569,7 +569,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: @ 81E5C1E waitstate end -SootopolisCity_EventScript_RayquazaSceneFromDive:: @ 81E5CCE +SootopolisCity_EventScript_RayquazaSceneFromDive:: delay 60 special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromDive @@ -622,7 +622,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: @ 81E5CCE waitstate end -SootopolisCity_EventScript_SetRoughWater:: @ 81E5D82 +SootopolisCity_EventScript_SetRoughWater:: setmetatile 27, 43, METATILE_Sootopolis_RoughWater, 0 setmetatile 28, 43, METATILE_Sootopolis_RoughWater, 0 setmetatile 29, 43, METATILE_Sootopolis_RoughWater, 0 @@ -649,7 +649,7 @@ SootopolisCity_EventScript_SetRoughWater:: @ 81E5D82 setmetatile 35, 45, METATILE_Sootopolis_RoughWater, 0 return -SootopolisCity_Movement_RayquazaFlyOff: @ 81E5E5B +SootopolisCity_Movement_RayquazaFlyOff: walk_fast_up walk_fastest_up walk_fastest_up @@ -659,14 +659,14 @@ SootopolisCity_Movement_RayquazaFlyOff: @ 81E5E5B walk_fastest_up step_end -SootopolisCity_Movement_PanUp: @ 81E5E63 +SootopolisCity_Movement_PanUp: walk_up walk_up walk_up walk_up step_end -SootopolisCity_Movement_PlayerApproachLegendaries: @ 81E5E68 +SootopolisCity_Movement_PlayerApproachLegendaries: walk_up walk_up walk_up @@ -674,7 +674,7 @@ SootopolisCity_Movement_PlayerApproachLegendaries: @ 81E5E68 step_end @ Unused -SootopolisCity_Movement_PlayerApproachLegendariesDown: @ 81E5E6D +SootopolisCity_Movement_PlayerApproachLegendariesDown: walk_down walk_down walk_down @@ -682,7 +682,7 @@ SootopolisCity_Movement_PlayerApproachLegendariesDown: @ 81E5E6D step_end @ Unused -SootopolisCity_Movement_UnusedPanUp: @ 81E5E72 +SootopolisCity_Movement_UnusedPanUp: walk_slow_diag_northeast walk_slow_diag_northeast walk_slow_diag_northeast @@ -698,7 +698,7 @@ SootopolisCity_Movement_UnusedPanUp: @ 81E5E72 step_end @ Unused -SootopolisCity_Movement_UnusedPanBack: @ 81E5E7F +SootopolisCity_Movement_UnusedPanBack: walk_down walk_down walk_down @@ -714,7 +714,7 @@ SootopolisCity_Movement_UnusedPanBack: @ 81E5E7F walk_slow_diag_southwest step_end -SootopolisCity_EventScript_CaveOfOriginExpert:: @ 81E5E8D +SootopolisCity_EventScript_CaveOfOriginExpert:: lock faceplayer compare VAR_SOOTOPOLIS_CITY_STATE, 6 @@ -727,22 +727,22 @@ SootopolisCity_EventScript_CaveOfOriginExpert:: @ 81E5E8D release end -SootopolisCity_EventScript_ExpertLeadToCave:: @ 81E5EBA +SootopolisCity_EventScript_ExpertLeadToCave:: msgbox SootopolisCity_Text_LeadSuperiorTrainerToCave, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_ExpertPostLegendaries:: @ 81E5EC4 +SootopolisCity_EventScript_ExpertPostLegendaries:: msgbox SootopolisCity_Text_CaveOfOriginSleepsToo, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_ExpertLegendaries:: @ 81E5ECE +SootopolisCity_EventScript_ExpertLegendaries:: msgbox SootopolisCity_Text_AwakenedPokemonClash, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Kiri:: @ 81E5ED8 +SootopolisCity_EventScript_Kiri:: lock faceplayer compare VAR_SOOTOPOLIS_CITY_STATE, 1 @@ -758,14 +758,14 @@ SootopolisCity_EventScript_Kiri:: @ 81E5ED8 release end -SootopolisCity_EventScript_KiriRayquaza:: @ 81E5F10 +SootopolisCity_EventScript_KiriRayquaza:: msgbox SootopolisCity_Text_PrettyMonCameFromSky, MSGBOX_DEFAULT closemessage release end @ Gives 2 berries daily. First ranges from FIRST_KIRI_BERRY to LAST_KIRI_BERRY, second is always Figy or Iapapa -SootopolisCity_EventScript_KiriGiveBerry:: @ 81E5F1B +SootopolisCity_EventScript_KiriGiveBerry:: dotimebasedevents special GetPlayerBigGuyGirlString goto_if_set FLAG_DAILY_SOOTOPOLIS_RECEIVED_BERRY, SootopolisCity_EventScript_KiriReceivedBerry @@ -785,7 +785,7 @@ SootopolisCity_EventScript_KiriGiveBerry:: @ 81E5F1B goto_if_eq SootopolisCity_EventScript_GiveIapapaBerry end -SootopolisCity_EventScript_GiveFigyBerry:: @ 81E5F79 +SootopolisCity_EventScript_GiveFigyBerry:: giveitem ITEM_FIGY_BERRY compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -793,7 +793,7 @@ SootopolisCity_EventScript_GiveFigyBerry:: @ 81E5F79 release end -SootopolisCity_EventScript_GiveIapapaBerry:: @ 81E5F9A +SootopolisCity_EventScript_GiveIapapaBerry:: giveitem ITEM_IAPAPA_BERRY compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -801,7 +801,7 @@ SootopolisCity_EventScript_GiveIapapaBerry:: @ 81E5F9A release end -SootopolisCity_EventScript_KiriReceivedBerry:: @ 81E5FBB +SootopolisCity_EventScript_KiriReceivedBerry:: msgbox SootopolisCity_Text_LikeSeasonBornIn, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq SootopolisCity_EventScript_KiriLikeSeasonBornIn @@ -809,12 +809,12 @@ SootopolisCity_EventScript_KiriReceivedBerry:: @ 81E5FBB release end -SootopolisCity_EventScript_KiriLikeSeasonBornIn:: @ 81E5FD8 +SootopolisCity_EventScript_KiriLikeSeasonBornIn:: msgbox SootopolisCity_Text_ThenILoveAutumn, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Woman2:: @ 81E5FE2 +SootopolisCity_EventScript_Woman2:: lockall applymovement LOCALID_WOMAN_2, Common_Movement_FacePlayer waitmovement 0 @@ -827,12 +827,12 @@ SootopolisCity_EventScript_Woman2:: @ 81E5FE2 releaseall end -SootopolisCity_EventScript_Woman2Rayquaza:: @ 81E600D +SootopolisCity_EventScript_Woman2Rayquaza:: msgbox SootopolisCity_Text_YouBroughtFlyingMon, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_Man:: @ 81E6017 +SootopolisCity_EventScript_Man:: lock faceplayer compare VAR_SOOTOPOLIS_CITY_STATE, 6 @@ -841,12 +841,12 @@ SootopolisCity_EventScript_Man:: @ 81E6017 release end -SootopolisCity_EventScript_ManPostLegendaries:: @ 81E602E +SootopolisCity_EventScript_ManPostLegendaries:: msgbox SootopolisCity_Text_CityRegainedCalm, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Woman1:: @ 81E6038 +SootopolisCity_EventScript_Woman1:: lock faceplayer compare VAR_SOOTOPOLIS_CITY_STATE, 6 @@ -859,7 +859,7 @@ SootopolisCity_EventScript_Woman1:: @ 81E6038 release end -SootopolisCity_EventScript_Woman1Legendaries:: @ 81E6065 +SootopolisCity_EventScript_Woman1Legendaries:: msgbox SootopolisCity_Text_GiganticPokemonFight, MSGBOX_DEFAULT closemessage applymovement LOCALID_WOMAN_1, Common_Movement_FaceOriginalDirection @@ -867,17 +867,17 @@ SootopolisCity_EventScript_Woman1Legendaries:: @ 81E6065 release end -SootopolisCity_EventScript_Woman1PostLegendaries:: @ 81E607A +SootopolisCity_EventScript_Woman1PostLegendaries:: msgbox SootopolisCity_Text_NightSkyFavoriteScenery, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Woman1Rayquaza:: @ 81E6084 +SootopolisCity_EventScript_Woman1Rayquaza:: msgbox SootopolisCity_Text_FearedWorstWhenPokemonFlewDown, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_NinjaBoy:: @ 81E608E +SootopolisCity_EventScript_NinjaBoy:: lockall applymovement LOCALID_NINJA_BOY, Common_Movement_FacePlayer waitmovement 0 @@ -894,17 +894,17 @@ SootopolisCity_EventScript_NinjaBoy:: @ 81E608E release end -SootopolisCity_EventScript_NinjaBoyNormal:: @ 81E60CF +SootopolisCity_EventScript_NinjaBoyNormal:: msgbox SootopolisCity_Text_WonderWhatWorldIsLike, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_NinjaBoyRayquaza:: @ 81E60D9 +SootopolisCity_EventScript_NinjaBoyRayquaza:: msgbox SootopolisCity_Text_ThatWasWicked, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Boy1:: @ 81E60E3 +SootopolisCity_EventScript_Boy1:: lockall applymovement LOCALID_BOY_1, Common_Movement_FacePlayer waitmovement 0 @@ -922,34 +922,34 @@ SootopolisCity_EventScript_Boy1:: @ 81E60E3 release end -SootopolisCity_EventScript_Boy1Rayquaza:: @ 81E612D +SootopolisCity_EventScript_Boy1Rayquaza:: msgbox SootopolisCity_Text_WhatIsThatGreenPokemon, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Boy1GameClear:: @ 81E6137 +SootopolisCity_EventScript_Boy1GameClear:: msgbox SootopolisCity_Text_WhereDidLegendariesGo, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_Boy1Normal:: @ 81E6141 +SootopolisCity_EventScript_Boy1Normal:: msgbox SootopolisCity_Text_PhysicallyFitLivingHere, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_GymSign:: @ 81E614B +SootopolisCity_EventScript_GymSign:: msgbox SootopolisCity_Text_GymSign, MSGBOX_SIGN end -SootopolisCity_EventScript_CitySign:: @ 81E6154 +SootopolisCity_EventScript_CitySign:: msgbox SootopolisCity_Text_CitySign, MSGBOX_SIGN end -EventScript_ClosedSootopolisDoor:: @ 81E615D +EventScript_ClosedSootopolisDoor:: msgbox SootopolisCity_Text_DoorIsClosed, MSGBOX_SIGN end -SootopolisCity_EventScript_Steven:: @ 81E6166 +SootopolisCity_EventScript_Steven:: lockall applymovement LOCALID_STEVEN, Common_Movement_FacePlayer waitmovement 0 @@ -965,22 +965,22 @@ SootopolisCity_EventScript_Steven:: @ 81E6166 releaseall end -SootopolisCity_EventScript_StevenHelpWallace:: @ 81E61AE +SootopolisCity_EventScript_StevenHelpWallace:: msgbox SootopolisCity_Text_KnowWhatsNeededToHelpHim, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_StevenMaxieArchieLeft:: @ 81E61B8 +SootopolisCity_EventScript_StevenMaxieArchieLeft:: msgbox SootopolisCity_Text_MaxieArchieLeft, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_StevenHelpedWallace:: @ 81E61C2 +SootopolisCity_EventScript_StevenHelpedWallace:: msgbox SootopolisCity_Text_NeverBeenToSkyPillar, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin:: @ 81E61CC +SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin:: msgbox SootopolisCity_Text_InvolvedWithCrisisComeWithMe, MSGBOX_DEFAULT closemessage compare VAR_FACING, DIR_WEST @@ -1007,19 +1007,19 @@ SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin:: @ 81E61CC waitstate end -SootopolisCity_EventScript_StartWalkToCaveOfOriginWest:: @ 81E6243 +SootopolisCity_EventScript_StartWalkToCaveOfOriginWest:: applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest waitmovement 0 return -SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth:: @ 81E6255 +SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth:: applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth waitmovement 0 return -SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin: @ 81E6267 +SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin: walk_up walk_up walk_up @@ -1058,7 +1058,7 @@ SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin: @ 81E6267 walk_in_place_fastest_down step_end -SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest: @ 81E628C +SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest: walk_left walk_up walk_up @@ -1096,7 +1096,7 @@ SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest: @ 81E628C walk_up step_end -SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth: @ 81E62B0 +SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth: walk_up walk_up walk_up @@ -1134,7 +1134,7 @@ SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth: @ 81E62B0 walk_up step_end -SootopolisCity_Movement_StevenWalkToCaveOfOrigin: @ 81E62D4 +SootopolisCity_Movement_StevenWalkToCaveOfOrigin: walk_up walk_up walk_right @@ -1194,7 +1194,7 @@ SootopolisCity_Movement_StevenWalkToCaveOfOrigin: @ 81E62D4 walk_up step_end -SootopolisCity_Movement_PlayerWalkToCaveOfOrigin: @ 81E630E +SootopolisCity_Movement_PlayerWalkToCaveOfOrigin: walk_up walk_up walk_up @@ -1247,12 +1247,12 @@ SootopolisCity_Movement_PlayerWalkToCaveOfOrigin: @ 81E630E walk_right step_end -SootopolisCity_Movement_ExpertMoveAside: @ 81E6341 +SootopolisCity_Movement_ExpertMoveAside: walk_slow_left walk_in_place_fastest_right step_end -SootopolisCity_Movement_StevenArriveCaveEntrance: @ 81E6344 +SootopolisCity_Movement_StevenArriveCaveEntrance: walk_down walk_down walk_left @@ -1265,7 +1265,7 @@ SootopolisCity_Movement_StevenArriveCaveEntrance: @ 81E6344 walk_in_place_fastest_left step_end -SootopolisCity_Movement_PlayerArriveCaveEntrance: @ 81E634F +SootopolisCity_Movement_PlayerArriveCaveEntrance: delay_16 delay_16 delay_16 @@ -1278,12 +1278,12 @@ SootopolisCity_Movement_PlayerArriveCaveEntrance: @ 81E634F walk_in_place_fastest_right step_end -SootopolisCity_Movement_PlayerEnterCaveOfOrigin: @ 81E635A +SootopolisCity_Movement_PlayerEnterCaveOfOrigin: walk_up walk_up step_end -SootopolisCity_EventScript_Boy2:: @ 81E635D +SootopolisCity_EventScript_Boy2:: lockall applymovement LOCALID_BOY_2, Common_Movement_FacePlayer waitmovement 0 @@ -1296,13 +1296,13 @@ SootopolisCity_EventScript_Boy2:: @ 81E635D releaseall end -SootopolisCity_EventScript_Boy2Rayquaza:: @ 81E6388 +SootopolisCity_EventScript_Boy2Rayquaza:: msgbox SootopolisCity_Text_FlyingMonStoppedRampage, MSGBOX_DEFAULT closemessage releaseall end -SootopolisCity_EventScript_BlackBelt:: @ 81E6393 +SootopolisCity_EventScript_BlackBelt:: lockall compare VAR_SOOTOPOLIS_CITY_STATE, 5 goto_if_eq SootopolisCity_EventScript_BlackBeltRayquaza @@ -1317,14 +1317,14 @@ SootopolisCity_EventScript_BlackBelt:: @ 81E6393 releaseall end -SootopolisCity_EventScript_BlackBeltRayquaza:: @ 81E63C7 +SootopolisCity_EventScript_BlackBeltRayquaza:: applymovement LOCALID_BLACK_BELT, Common_Movement_FacePlayer waitmovement 0 msgbox SootopolisCity_Text_GreenOneSettlesThings, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_Girl:: @ 81E63DB +SootopolisCity_EventScript_Girl:: lockall applymovement LOCALID_GIRL, Common_Movement_FacePlayer waitmovement 0 @@ -1337,13 +1337,13 @@ SootopolisCity_EventScript_Girl:: @ 81E63DB releaseall end -SootopolisCity_EventScript_GirlRayquaza:: @ 81E6406 +SootopolisCity_EventScript_GirlRayquaza:: msgbox SootopolisCity_Text_SootopolisDidntGetWrecked, MSGBOX_DEFAULT closemessage releaseall end -SootopolisCity_EventScript_Maniac:: @ 81E6411 +SootopolisCity_EventScript_Maniac:: lockall applymovement LOCALID_MANIAC, Common_Movement_FacePlayer waitmovement 0 @@ -1356,12 +1356,12 @@ SootopolisCity_EventScript_Maniac:: @ 81E6411 releaseall end -SootopolisCity_EventScript_ManiacRayquaza:: @ 81E643C +SootopolisCity_EventScript_ManiacRayquaza:: msgbox SootopolisCity_Text_SawLegendWithOwnEyes, MSGBOX_DEFAULT releaseall end -SootopolisCity_EventScript_Wallace:: @ 81E6446 +SootopolisCity_EventScript_Wallace:: lock faceplayer compare VAR_SOOTOPOLIS_CITY_STATE, 4 @@ -1372,7 +1372,7 @@ SootopolisCity_EventScript_Wallace:: @ 81E6446 release end -SootopolisCity_EventScript_GiveWaterfall:: @ 81E646F +SootopolisCity_EventScript_GiveWaterfall:: msgbox SootopolisCity_Text_ThankYouForHelpAcceptThis, MSGBOX_DEFAULT giveitem ITEM_HM07 setflag FLAG_RECEIVED_HM07 @@ -1387,41 +1387,41 @@ SootopolisCity_EventScript_GiveWaterfall:: @ 81E646F release end -SootopolisCity_EventScript_WallaceMoveFromGym:: @ 81E64B2 +SootopolisCity_EventScript_WallaceMoveFromGym:: applymovement LOCALID_WALLACE, SootopolisCity_Movement_WallaceMoveFromGym waitmovement 0 copyobjectxytoperm LOCALID_WALLACE setvar VAR_SOOTOPOLIS_WALLACE_STATE, 1 return -SootopolisCity_EventScript_WallaceMoveFromGymWest:: @ 81E64C5 +SootopolisCity_EventScript_WallaceMoveFromGymWest:: applymovement LOCALID_WALLACE, SootopolisCity_Movement_WallaceMoveFromGymWest waitmovement 0 copyobjectxytoperm LOCALID_WALLACE setvar VAR_SOOTOPOLIS_WALLACE_STATE, 2 return -SootopolisCity_EventScript_GoToSkyPillar:: @ 81E64D8 +SootopolisCity_EventScript_GoToSkyPillar:: msgbox SootopolisCity_Text_HaventYouScaledSkyPillar, MSGBOX_DEFAULT release end -SootopolisCity_EventScript_GoToGym:: @ 81E64E2 +SootopolisCity_EventScript_GoToGym:: msgbox SootopolisCity_Text_DazzledByMentor, MSGBOX_DEFAULT release end -SootopolisCity_Movement_WallaceMoveFromGym: @ 81E64EC +SootopolisCity_Movement_WallaceMoveFromGym: walk_right walk_in_place_fastest_down step_end -SootopolisCity_Movement_WallaceMoveFromGymWest: @ 81E64EF +SootopolisCity_Movement_WallaceMoveFromGymWest: walk_left walk_in_place_fastest_down step_end -SootopolisCity_EventScript_Maxie:: @ 81E64F2 +SootopolisCity_EventScript_Maxie:: lockall compare VAR_SOOTOPOLIS_CITY_STATE, 5 goto_if_eq SootopolisCity_EventScript_MaxieRayquaza @@ -1430,14 +1430,14 @@ SootopolisCity_EventScript_Maxie:: @ 81E64F2 releaseall end -SootopolisCity_EventScript_MaxieRayquaza:: @ 81E6509 +SootopolisCity_EventScript_MaxieRayquaza:: msgbox SootopolisCity_Text_AfterAllOurScheming, MSGBOX_DEFAULT setflag FLAG_MET_MAXIE_SOOTOPOLIS goto_if_set FLAG_MET_ARCHIE_SOOTOPOLIS, SootopolisCity_EventScript_MaxieArchieLeave releaseall end -SootopolisCity_EventScript_Archie:: @ 81E651F +SootopolisCity_EventScript_Archie:: lockall compare VAR_SOOTOPOLIS_CITY_STATE, 5 goto_if_eq SootopolisCity_EventScript_ArchieRayquaza @@ -1446,14 +1446,14 @@ SootopolisCity_EventScript_Archie:: @ 81E651F releaseall end -SootopolisCity_EventScript_ArchieRayquaza:: @ 81E6536 +SootopolisCity_EventScript_ArchieRayquaza:: msgbox SootopolisCity_Text_TryingMeaninglessToPokemon, MSGBOX_DEFAULT setflag FLAG_MET_ARCHIE_SOOTOPOLIS goto_if_set FLAG_MET_MAXIE_SOOTOPOLIS, SootopolisCity_EventScript_MaxieArchieLeave releaseall end -SootopolisCity_EventScript_MaxieArchieLeave:: @ 81E654C +SootopolisCity_EventScript_MaxieArchieLeave:: setflag FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE setflag FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE setflag FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE @@ -1466,36 +1466,36 @@ SootopolisCity_EventScript_MaxieArchieLeave:: @ 81E654C end @ Unused -SootopolisCity_Movement_Levitate:: @ 81E656B +SootopolisCity_Movement_Levitate:: levitate step_end @ Unused -SootopolisCity_Movement_DestroyTask:: @ 81E656D +SootopolisCity_Movement_DestroyTask:: destroy_extra_task step_end -SootopolisCity_Text_GymSign: @ 81E656F +SootopolisCity_Text_GymSign: .string "SOOTOPOLIS CITY POKéMON GYM\n" .string "LEADER: JUAN\p" .string "“The GYM LEADER with the beauty\n" .string "of pure water!”$" -SootopolisCity_Text_CitySign: @ 81E65C8 +SootopolisCity_Text_CitySign: .string "SOOTOPOLIS CITY\p" .string "“The mystical city where history\n" .string "slumbers.”$" -SootopolisCity_Text_DoorIsClosed: @ 81E6604 +SootopolisCity_Text_DoorIsClosed: .string "The door is closed.$" -SootopolisCity_Text_PhysicallyFitLivingHere: @ 81E6618 +SootopolisCity_Text_PhysicallyFitLivingHere: .string "Diving in the sea. Climbing up and\n" .string "down stairs all the time…\p" .string "If you live in this town, you end up\n" .string "getting physically fit.$" -SootopolisCity_Text_GiantPokemonSuddenlyAppeared: @ 81E6692 +SootopolisCity_Text_GiantPokemonSuddenlyAppeared: .string "These giant POKéMON suddenly appeared\n" .string "in the middle of the city!\p" .string "And, I've never seen them before!\p" @@ -1504,56 +1504,56 @@ SootopolisCity_Text_GiantPokemonSuddenlyAppeared: @ 81E6692 .string "Why can't they be friends, those\n" .string "POKéMON?$" -SootopolisCity_Text_WhatIsThatGreenPokemon: @ 81E6750 +SootopolisCity_Text_WhatIsThatGreenPokemon: .string "What? What? What?\n" .string "What is that green POKéMON?!$" -SootopolisCity_Text_WhereDidLegendariesGo: @ 81E677F +SootopolisCity_Text_WhereDidLegendariesGo: .string "GROUDON and KYOGRE…\n" .string "Where did they go?\p" .string "Will they cause droughts or downpours\n" .string "somewhere else?$" -SootopolisCity_Text_TwoPokemonArentAngry: @ 81E67DC +SootopolisCity_Text_TwoPokemonArentAngry: .string "I just get this sense somehow that\n" .string "the two POKéMON aren't angry.\p" .string "I think… They probably can't control\n" .string "their own power…$" -SootopolisCity_Text_FlyingMonStoppedRampage: @ 81E6853 +SootopolisCity_Text_FlyingMonStoppedRampage: .string "That flying POKéMON came down from\n" .string "the sky and stopped the rampaging\l" .string "POKéMON…$" -SootopolisCity_Text_WonderWhatWorldIsLike: @ 81E68A1 +SootopolisCity_Text_WonderWhatWorldIsLike: .string "I… I've never been out of this city.\p" .string "I wonder what the world is like on\n" .string "the other side of this round sky?$" -SootopolisCity_Text_ThisIsWicked: @ 81E690B +SootopolisCity_Text_ThisIsWicked: .string "Wow!\n" .string "This is wicked!$" -SootopolisCity_Text_ThatWasWicked: @ 81E6920 +SootopolisCity_Text_ThatWasWicked: .string "Wow!\n" .string "That was wicked!$" -SootopolisCity_Text_GoRedAndBlueMon: @ 81E6936 +SootopolisCity_Text_GoRedAndBlueMon: .string "Go for it, red POKéMON!\n" .string "Don't back off, blue POKéMON!$" -SootopolisCity_Text_DoYouKnowMonNames: @ 81E696C +SootopolisCity_Text_DoYouKnowMonNames: .string "… … … … … …\p" .string "Hi, do you know the names of those\n" .string "POKéMON fighting over there?$" -SootopolisCity_Text_GreenOneSettlesThings: @ 81E69B8 +SootopolisCity_Text_GreenOneSettlesThings: .string "I was wondering which one would win,\n" .string "the red one or the blue one, but, oh no,\l" .string "it's the green one that settles things!\p" .string "Talk about a huge turn of events!$" -SootopolisCity_Text_SeeingLegendWithOwnEyes: @ 81E6A50 +SootopolisCity_Text_SeeingLegendWithOwnEyes: .string "There's an ancient legend that claims\n" .string "the land and sea were shaped by\l" .string "a colossal battle between POKéMON.\p" @@ -1562,7 +1562,7 @@ SootopolisCity_Text_SeeingLegendWithOwnEyes: @ 81E6A50 .string "Whoa! I never expected to be\n" .string "witness to something this huge!$" -SootopolisCity_Text_SawLegendWithOwnEyes: @ 81E6B2A +SootopolisCity_Text_SawLegendWithOwnEyes: .string "There's an ancient legend that claims\n" .string "the land and sea were shaped by\l" .string "a colossal battle between POKéMON.\p" @@ -1571,40 +1571,40 @@ SootopolisCity_Text_SawLegendWithOwnEyes: @ 81E6B2A .string "Whoa! I never expected to be\n" .string "witness to something this huge!$" -SootopolisCity_Text_BigPokemonFighting: @ 81E6BFF +SootopolisCity_Text_BigPokemonFighting: .string "A big POKéMON is fighting with\n" .string "another big POKéMON!\p" .string "Please, someone make them stop!$" -SootopolisCity_Text_PrettyMonCameFromSky: @ 81E6C53 +SootopolisCity_Text_PrettyMonCameFromSky: .string "A pretty POKéMON came down from\n" .string "the sky…$" -SootopolisCity_Text_SootopolisWillBeWrecked: @ 81E6C7C +SootopolisCity_Text_SootopolisWillBeWrecked: .string "Oh, no!\n" .string "SOOTOPOLIS CITY will get wrecked!$" -SootopolisCity_Text_SootopolisDidntGetWrecked: @ 81E6CA6 +SootopolisCity_Text_SootopolisDidntGetWrecked: .string "SOOTOPOLIS CITY didn't get wrecked!$" -SootopolisCity_Text_NoOrdinaryTourist: @ 81E6CCA +SootopolisCity_Text_NoOrdinaryTourist: .string "Hm!\n" .string "You've come all the way to SOOTOPOLIS?\l" .string "You're no ordinary tourist.\p" .string "But I suppose that doesn't make you\n" .string "an extraordinary tourist, either.$" -SootopolisCity_Text_CityRegainedCalm: @ 81E6D57 +SootopolisCity_Text_CityRegainedCalm: .string "The city has regained its calm…$" -SootopolisCity_Text_CaveOfOriginPleaseLeave: @ 81E6D77 +SootopolisCity_Text_CaveOfOriginPleaseLeave: .string "Who might you be?\p" .string "This is the CAVE OF ORIGIN.\p" .string "The spirits of POKéMON, becalmed at\n" .string "MT. PYRE, are said to be revived here.\p" .string "Please leave.$" -SootopolisCity_Text_LeadSuperiorTrainerToCave: @ 81E6DFE +SootopolisCity_Text_LeadSuperiorTrainerToCave: .string "A person with a strong will and\n" .string "superior talent…\p" .string "A TRAINER who has knowledge and\n" @@ -1613,18 +1613,18 @@ SootopolisCity_Text_LeadSuperiorTrainerToCave: @ 81E6DFE .string "instructed by WALLACE to lead that\l" .string "TRAINER to this CAVE.$" -SootopolisCity_Text_AwakenedPokemonClash: @ 81E6ED4 +SootopolisCity_Text_AwakenedPokemonClash: .string "Oh, my…\p" .string "The clash between the two awakened\n" .string "POKéMON was quelled by the awakening\l" .string "of a third POKéMON…$" -SootopolisCity_Text_CaveOfOriginSleepsToo: @ 81E6F38 +SootopolisCity_Text_CaveOfOriginSleepsToo: .string "This is the CAVE OF ORIGIN…\p" .string "With the passing of the crisis,\n" .string "the cave, too, shall sleep…$" -SootopolisCity_Text_SootopolisSkyBeautiful: @ 81E6F90 +SootopolisCity_Text_SootopolisSkyBeautiful: .string "SOOTOPOLIS sprang up as a town in\n" .string "the crater of a volcano.\p" .string "If you look up at the sky, the lip of\n" @@ -1633,23 +1633,23 @@ SootopolisCity_Text_SootopolisSkyBeautiful: @ 81E6F90 .string "But that's what makes the sky above\n" .string "SOOTOPOLIS the most beautiful.$" -SootopolisCity_Text_GiganticPokemonFight: @ 81E7078 +SootopolisCity_Text_GiganticPokemonFight: .string "When two POKéMON that gigantic\n" .string "are fighting that savagely, there's\l" .string "not much that we can do.$" -SootopolisCity_Text_FearedWorstWhenPokemonFlewDown: @ 81E70D4 +SootopolisCity_Text_FearedWorstWhenPokemonFlewDown: .string "When that third POKéMON flew down,\n" .string "I feared the worst.$" -SootopolisCity_Text_NightSkyFavoriteScenery: @ 81E710B +SootopolisCity_Text_NightSkyFavoriteScenery: .string "A circle of a night sky framed by\n" .string "the crater of a volcano…\p" .string "And in that ring, stars flicker and\n" .string "blink as if they were alive…\l" .string "It's my favorite scenery.$" -SootopolisCity_Text_WeatherWentWild: @ 81E71A1 +SootopolisCity_Text_WeatherWentWild: .string "The weather was clear this morning,\n" .string "but…\p" .string "All of a sudden, dark clouds brewed up,\n" @@ -1660,20 +1660,20 @@ SootopolisCity_Text_WeatherWentWild: @ 81E71A1 .string "Is all of this because of those\n" .string "POKéMON?$" -SootopolisCity_Text_YouBroughtFlyingMon: @ 81E728C +SootopolisCity_Text_YouBroughtFlyingMon: .string "Oh?\p" .string "It was you who brought that flying\n" .string "POKéMON here?\p" .string "Well, aren't you amazing!$" -SootopolisCity_Text_GroudonPleaseStop: @ 81E72DB +SootopolisCity_Text_GroudonPleaseStop: .string "MAXIE: G… GROUDON…\n" .string "Please! Stop what you're doing!\p" .string "I know the extent of your power now!\p" .string "If you keep going, all HOENN, not just\n" .string "SOOTOPOLIS, will be utterly ruined!$" -SootopolisCity_Text_AfterAllOurScheming: @ 81E737E +SootopolisCity_Text_AfterAllOurScheming: .string "MAXIE: So the super-ancient POKéMON\n" .string "weren't only GROUDON and KYOGRE…\p" .string "After all our fruitless scheming and\n" @@ -1683,7 +1683,7 @@ SootopolisCity_Text_AfterAllOurScheming: @ 81E737E .string "Fu…\n" .string "Fuhahaha…$" -SootopolisCity_Text_KyogreCalmDown: @ 81E7460 +SootopolisCity_Text_KyogreCalmDown: .string "ARCHIE: KYOGRE! What's wrong?!\n" .string "Look over here! It's the RED ORB!\l" .string "Calm down! KYOGRE!\p" @@ -1692,7 +1692,7 @@ SootopolisCity_Text_KyogreCalmDown: @ 81E7460 .string "It's no good!\n" .string "It's not responding at all!$" -SootopolisCity_Text_TryingMeaninglessToPokemon: @ 81E74F6 +SootopolisCity_Text_TryingMeaninglessToPokemon: .string "ARCHIE: KYOGRE and GROUDON both\n" .string "flew off to who knows where.\p" .string "The weather in HOENN has returned\n" @@ -1703,7 +1703,7 @@ SootopolisCity_Text_TryingMeaninglessToPokemon: @ 81E74F6 .string "something small, even meaningless,\l" .string "to POKéMON…$" -SootopolisCity_Text_InvolvedWithCrisisComeWithMe: @ 81E75CB +SootopolisCity_Text_InvolvedWithCrisisComeWithMe: .string "STEVEN: Those POKéMON fighting…\n" .string "GROUDON… And KYOGRE…\p" .string "The two super-ancient POKéMON\n" @@ -1718,7 +1718,7 @@ SootopolisCity_Text_InvolvedWithCrisisComeWithMe: @ 81E75CB .string "I'd like you to meet.\p" .string "Come with me, please.$" -SootopolisCity_Text_DoesThisMakeYourFearPokemon: @ 81E7737 +SootopolisCity_Text_DoesThisMakeYourFearPokemon: .string "STEVEN: Listen, {PLAYER}{KUN}.\p" .string "Does seeing GROUDON and KYOGRE make\n" .string "you think POKéMON are to be feared?\p" @@ -1727,34 +1727,34 @@ SootopolisCity_Text_DoesThisMakeYourFearPokemon: @ 81E7737 .string "…Why am I asking you this?\n" .string "You already know.$" -SootopolisCity_Text_HereWereAreHelpWallace: @ 81E77F0 +SootopolisCity_Text_HereWereAreHelpWallace: .string "STEVEN: Okay, here we are!\p" .string "Inside here you'll find someone named\n" .string "WALLACE.\p" .string "I think you have what's needed to\n" .string "help him…$" -SootopolisCity_Text_KnowWhatsNeededToHelpHim: @ 81E7866 +SootopolisCity_Text_KnowWhatsNeededToHelpHim: .string "STEVEN: I think you have what's\n" .string "needed to help him…$" -SootopolisCity_Text_NeverBeenToSkyPillar: @ 81E789A +SootopolisCity_Text_NeverBeenToSkyPillar: .string "STEVEN: The SKY PILLAR…\p" .string "I've never been there.\n" .string "I wonder where it could be?$" -SootopolisCity_Text_SoThatsRayquaza: @ 81E78E5 +SootopolisCity_Text_SoThatsRayquaza: .string "STEVEN: So that's RAYQUAZA…\p" .string "It's incredible how the two rampaging\n" .string "POKéMON would flee from it in fear…$" -SootopolisCity_Text_MaxieArchieLeft: @ 81E794B +SootopolisCity_Text_MaxieArchieLeft: .string "STEVEN: It looks like both MAXIE and\n" .string "ARCHIE have gone away somewhere.\p" .string "Perhaps they've gone to MT. PYRE to\n" .string "return those ORBS…$" -SootopolisCity_Text_HaventYouScaledSkyPillar: @ 81E79C8 +SootopolisCity_Text_HaventYouScaledSkyPillar: .string "WALLACE: Oh?\n" .string "{PLAYER}{KUN}?\p" .string "Haven't you scaled the SKY PILLAR\n" @@ -1762,14 +1762,14 @@ SootopolisCity_Text_HaventYouScaledSkyPillar: @ 81E79C8 .string "I'm sure that you can make it to\n" .string "the top of the SKY PILLAR…$" -SootopolisCity_Text_AquaMagmaDidntMeanHarm: @ 81E7A3E +SootopolisCity_Text_AquaMagmaDidntMeanHarm: .string "WALLACE: {PLAYER}{KUN}…\p" .string "The leaders of TEAM MAGMA and AQUA,\n" .string "I don't think they meant harm.\p" .string "It wouldn't hurt to hear what they\n" .string "have to say for themselves.$" -SootopolisCity_Text_ThankYouForHelpAcceptThis: @ 81E7ACF +SootopolisCity_Text_ThankYouForHelpAcceptThis: .string "WALLACE: {PLAYER}{KUN}…\n" .string "My eyes didn't deceive me.\p" .string "Thanks to your help, SOOTOPOLIS…\n" @@ -1778,7 +1778,7 @@ SootopolisCity_Text_ThankYouForHelpAcceptThis: @ 81E7ACF .string "This is a gift from me.\n" .string "Please accept it.$" -SootopolisCity_Text_ExplainWaterfallGoToGym: @ 81E7B86 +SootopolisCity_Text_ExplainWaterfallGoToGym: .string "That HIDDEN MACHINE contains\n" .string "WATERFALL.\p" .string "If you have the RAIN BADGE, a POKéMON\n" @@ -1791,7 +1791,7 @@ SootopolisCity_Text_ExplainWaterfallGoToGym: @ 81E7B86 .string "When you're all set to go, step through\n" .string "that door.$" -SootopolisCity_Text_DazzledByMentor: @ 81E7CBC +SootopolisCity_Text_DazzledByMentor: .string "WALLACE: I'm sure that you will be\n" .string "dazzled by my mentor's breathtakingly\l" .string "elegant battle style.$" diff --git a/data/maps/SootopolisCity_Gym_1F/scripts.inc b/data/maps/SootopolisCity_Gym_1F/scripts.inc index ae5bfd108480..b20cf788872f 100644 --- a/data/maps/SootopolisCity_Gym_1F/scripts.inc +++ b/data/maps/SootopolisCity_Gym_1F/scripts.inc @@ -1,24 +1,24 @@ -SootopolisCity_Gym_1F_MapScripts:: @ 8224E4C +SootopolisCity_Gym_1F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, SootopolisCity_Gym_1F_OnFrame map_script MAP_SCRIPT_ON_RESUME, SootopolisCity_Gym_1F_OnResume map_script MAP_SCRIPT_ON_LOAD, SootopolisCity_Gym_1F_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_Gym_1F_OnTransition .byte 0 -SootopolisCity_Gym_1F_OnTransition: @ 8224E61 +SootopolisCity_Gym_1F_OnTransition: setvar VAR_ICE_STEP_COUNT, 1 end -SootopolisCity_Gym_1F_OnResume: @ 8224E67 +SootopolisCity_Gym_1F_OnResume: setstepcallback STEP_CB_SOOTOPOLIS_ICE end -SootopolisCity_Gym_1F_OnLoad: @ 8224E6A +SootopolisCity_Gym_1F_OnLoad: call SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles special SetSootopolisGymCrackedIceMetatiles end -SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: @ 8224E73 +SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: compare VAR_ICE_STEP_COUNT, 8 goto_if_lt SootopolisCity_Gym_1F_EventScript_StopCheckingStairs @ All stairs ice compare VAR_ICE_STEP_COUNT, 28 @@ -27,23 +27,23 @@ SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: @ 8224E73 goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs setmetatile 8, 4, METATILE_SootopolisGym_Stairs, 0 setmetatile 8, 5, METATILE_SootopolisGym_Stairs, 0 -SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs:: @ 8224EA6 +SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs:: setmetatile 8, 10, METATILE_SootopolisGym_Stairs, 0 setmetatile 8, 11, METATILE_SootopolisGym_Stairs, 0 -SootopolisCity_Gym_1F_EventScript_OpenFirstStairs:: @ 8224EB8 +SootopolisCity_Gym_1F_EventScript_OpenFirstStairs:: setmetatile 8, 15, METATILE_SootopolisGym_Stairs, 0 setmetatile 8, 16, METATILE_SootopolisGym_Stairs, 0 -SootopolisCity_Gym_1F_EventScript_StopCheckingStairs:: @ 8224ECA +SootopolisCity_Gym_1F_EventScript_StopCheckingStairs:: return -SootopolisCity_Gym_1F_OnFrame: @ 8224ECB +SootopolisCity_Gym_1F_OnFrame: map_script_2 VAR_ICE_STEP_COUNT, 8, SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs map_script_2 VAR_ICE_STEP_COUNT, 28, SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs map_script_2 VAR_ICE_STEP_COUNT, 67, SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs map_script_2 VAR_ICE_STEP_COUNT, 0, SootopolisCity_Gym_1F_EventScript_FallThroughIce .2byte 0 -SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs:: @ 8224EED +SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs:: addvar VAR_ICE_STEP_COUNT, 1 delay 40 playse SE_ICE_STAIRS @@ -51,7 +51,7 @@ SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs:: @ 8224EED special DrawWholeMapView end -SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs:: @ 8224F01 +SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs:: addvar VAR_ICE_STEP_COUNT, 1 delay 40 playse SE_ICE_STAIRS @@ -59,7 +59,7 @@ SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs:: @ 8224F01 special DrawWholeMapView end -SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs:: @ 8224F15 +SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs:: addvar VAR_ICE_STEP_COUNT, 1 delay 40 playse SE_ICE_STAIRS @@ -67,7 +67,7 @@ SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs:: @ 8224F15 special DrawWholeMapView end -SootopolisCity_Gym_1F_EventScript_FallThroughIce:: @ 8224F29 +SootopolisCity_Gym_1F_EventScript_FallThroughIce:: lockall delay 20 applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Gym_1F_Movement_FallThroughIce @@ -78,11 +78,11 @@ SootopolisCity_Gym_1F_EventScript_FallThroughIce:: @ 8224F29 waitstate end -SootopolisCity_Gym_1F_Movement_FallThroughIce: @ 8224F42 +SootopolisCity_Gym_1F_Movement_FallThroughIce: set_invisible step_end -SootopolisCity_Gym_1F_EventScript_Juan:: @ 8224F44 +SootopolisCity_Gym_1F_EventScript_Juan:: trainerbattle_single TRAINER_JUAN_1, SootopolisCity_Gym_1F_Text_JuanIntro, SootopolisCity_Gym_1F_Text_JuanDefeat, SootopolisCity_Gym_1F_EventScript_JuanDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -93,7 +93,7 @@ SootopolisCity_Gym_1F_EventScript_Juan:: @ 8224F44 release end -SootopolisCity_Gym_1F_EventScript_JuanDefeated:: @ 8224F82 +SootopolisCity_Gym_1F_EventScript_JuanDefeated:: message SootopolisCity_Gym_1F_Text_ReceivedRainBadge waitmessage call Common_EventScript_PlayGymBadgeFanfare @@ -119,7 +119,7 @@ SootopolisCity_Gym_1F_EventScript_JuanDefeated:: @ 8224F82 release end -SootopolisCity_Gym_1F_EventScript_GiveWaterPulse:: @ 8224FD4 +SootopolisCity_Gym_1F_EventScript_GiveWaterPulse:: giveitem ITEM_TM03 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_BagIsFull @@ -127,7 +127,7 @@ SootopolisCity_Gym_1F_EventScript_GiveWaterPulse:: @ 8224FD4 setflag FLAG_RECEIVED_TM03 return -SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2:: @ 8224FF7 +SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2:: giveitem ITEM_TM03 compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull @@ -136,17 +136,17 @@ SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2:: @ 8224FF7 release end -SootopolisCity_Gym_1F_EventScript_GoGetFortreeBadge:: @ 822501B +SootopolisCity_Gym_1F_EventScript_GoGetFortreeBadge:: msgbox SootopolisCity_Gym_1F_Text_GoGetFortreeBadge, MSGBOX_DEFAULT release end -SootopolisCity_Gym_1F_EventScript_JuanRematch:: @ 8225025 +SootopolisCity_Gym_1F_EventScript_JuanRematch:: trainerbattle_rematch_double TRAINER_JUAN_1, SootopolisCity_Gym_1F_Text_JuanPreRematch, SootopolisCity_Gym_1F_Text_JuanRematchDefeat, SootopolisCity_Gym_1F_Text_JuanRematchNeedTwoMons msgbox SootopolisCity_Gym_1F_Text_JuanPostRematch, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_1F_EventScript_GymGuide:: @ 8225040 +SootopolisCity_Gym_1F_EventScript_GymGuide:: lock faceplayer goto_if_set FLAG_DEFEATED_SOOTOPOLIS_GYM, SootopolisCity_Gym_1F_EventScript_GymGuidePostVictory @@ -154,34 +154,34 @@ SootopolisCity_Gym_1F_EventScript_GymGuide:: @ 8225040 release end -SootopolisCity_Gym_1F_EventScript_GymGuidePostVictory:: @ 8225055 +SootopolisCity_Gym_1F_EventScript_GymGuidePostVictory:: msgbox SootopolisCity_Gym_1F_Text_GymGuidePostVictory, MSGBOX_DEFAULT release end -SootopolisCity_Gym_1F_EventScript_LeftGymStatue:: @ 822505F +SootopolisCity_Gym_1F_EventScript_LeftGymStatue:: lockall goto_if_set FLAG_BADGE08_GET, SootopolisCity_Gym_1F_EventScript_GymStatueCertified goto SootopolisCity_Gym_1F_EventScript_GymStatue end -SootopolisCity_Gym_1F_EventScript_RightGymStatue:: @ 822506F +SootopolisCity_Gym_1F_EventScript_RightGymStatue:: lockall goto_if_set FLAG_BADGE08_GET, SootopolisCity_Gym_1F_EventScript_GymStatueCertified goto SootopolisCity_Gym_1F_EventScript_GymStatue end -SootopolisCity_Gym_1F_EventScript_GymStatueCertified:: @ 822507F +SootopolisCity_Gym_1F_EventScript_GymStatueCertified:: msgbox SootopolisCity_Gym_1F_Text_GymStatueCertified, MSGBOX_DEFAULT releaseall end -SootopolisCity_Gym_1F_EventScript_GymStatue:: @ 8225089 +SootopolisCity_Gym_1F_EventScript_GymStatue:: msgbox SootopolisCity_Gym_1F_Text_GymStatue, MSGBOX_DEFAULT releaseall end -SootopolisCity_Gym_1F_Text_GymGuideAdvice: @ 8225093 +SootopolisCity_Gym_1F_Text_GymGuideAdvice: .string "Yo! How's it going, CHAMPION-\n" .string "bound {PLAYER}?\p" .string "SOOTOPOLIS's GYM LEADER JUAN is\n" @@ -193,14 +193,14 @@ SootopolisCity_Gym_1F_Text_GymGuideAdvice: @ 8225093 .string "The rest of the way, you have to\n" .string "go for it yourself!$" -SootopolisCity_Gym_1F_Text_GymGuidePostVictory: @ 82251AF +SootopolisCity_Gym_1F_Text_GymGuidePostVictory: .string "Yow! You've beaten even JUAN, who\n" .string "was supposedly the best in all HOENN!\p" .string "Okay! Check out your TRAINER CARD.\p" .string "If you've gotten all the BADGES, you're\n" .string "set for the POKéMON LEAGUE challenge!$" -SootopolisCity_Gym_1F_Text_JuanIntro: @ 8225268 +SootopolisCity_Gym_1F_Text_JuanIntro: .string "Let me ask you.\n" .string "Did you know?\l" .string "Ah, I should not be so coy.\p" @@ -223,7 +223,7 @@ SootopolisCity_Gym_1F_Text_JuanIntro: @ 8225268 @ the gDisplayedStringBattle buffer that it's put into, and it stomps all over the gBattleTextBuffs @ after, as well as the otherwise unused array after that. One wonders if that's the reason for @ the existence of that unused array of ints. -SootopolisCity_Gym_1F_Text_JuanDefeat: @ 8225432 +SootopolisCity_Gym_1F_Text_JuanDefeat: .string "Ahahaha, excellent!\n" .string "Very well, you are the winner.\p" .string "From you, I sense the brilliant shine\n" @@ -238,11 +238,11 @@ SootopolisCity_Gym_1F_Text_JuanDefeat: @ 8225432 .string "Rather than my clothes, I shall reward\n" .string "you with this, the RAIN BADGE!$" -SootopolisCity_Gym_1F_Text_ReceivedRainBadge: @ 8225598 +SootopolisCity_Gym_1F_Text_ReceivedRainBadge: .string "{PLAYER} received the RAIN BADGE\n" .string "from JUAN.$" -SootopolisCity_Gym_1F_Text_ExplainRainBadgeTakeThis: @ 82255BE +SootopolisCity_Gym_1F_Text_ExplainRainBadgeTakeThis: .string "Having the RAIN BADGE shall assure you\n" .string "the full obedience of all your POKéMON\l" .string "to your every command.\p" @@ -252,18 +252,18 @@ SootopolisCity_Gym_1F_Text_ExplainRainBadgeTakeThis: @ 82255BE .string "And, so that you never forget the\n" .string "battle we shared, take this…$" -SootopolisCity_Gym_1F_Text_ExplainWaterPulse: @ 82256C1 +SootopolisCity_Gym_1F_Text_ExplainWaterPulse: .string "The TECHNICAL MACHINE I handed you\n" .string "contains WATER PULSE.\p" .string "In use, it will occasionally confuse\n" .string "the target with ultrasonic waves.\p" .string "… … … … … …$" -SootopolisCity_Gym_1F_Text_RegisteredJuan: @ 822574D +SootopolisCity_Gym_1F_Text_RegisteredJuan: .string "Registered GYM LEADER JUAN\n" .string "in the POKéNAV.$" -SootopolisCity_Gym_1F_Text_JuanPostBattle: @ 8225778 +SootopolisCity_Gym_1F_Text_JuanPostBattle: .string "The TRAINERS who have gathered all\n" .string "the GYM BADGES of HOENN should make\l" .string "way to the ultimate destination.\p" @@ -273,22 +273,22 @@ SootopolisCity_Gym_1F_Text_JuanPostBattle: @ 8225778 .string "There, you shall find the POKéMON\n" .string "LEAGUE.$" -SootopolisCity_Gym_1F_Text_GoGetFortreeBadge: @ 8225865 +SootopolisCity_Gym_1F_Text_GoGetFortreeBadge: .string "There remains but one BADGE to\n" .string "obtain in HOENN.\p" .string "If you wish to challenge the POKéMON\n" .string "LEAGUE, you must obtain the last\l" .string "BADGE from the GYM in FORTREE.$" -SootopolisCity_Gym_1F_Text_GymStatue: @ 82258FA +SootopolisCity_Gym_1F_Text_GymStatue: .string "SOOTOPOLIS CITY POKéMON GYM$" -SootopolisCity_Gym_1F_Text_GymStatueCertified: @ 8225916 +SootopolisCity_Gym_1F_Text_GymStatueCertified: .string "SOOTOPOLIS CITY POKéMON GYM\p" .string "JUAN'S CERTIFIED TRAINERS:\n" .string "{PLAYER}$" -SootopolisCity_Gym_1F_Text_JuanPreRematch: @ 8225950 +SootopolisCity_Gym_1F_Text_JuanPreRematch: .string "JUAN: Ah, this GYM had returned to its\n" .string "usual state of serenity…\p" .string "But our young typhoon has returned\n" @@ -297,11 +297,11 @@ SootopolisCity_Gym_1F_Text_JuanPreRematch: @ 8225950 .string "I shall be delighted to dance with you\n" .string "as often as you wish!$" -SootopolisCity_Gym_1F_Text_JuanRematchDefeat: @ 8225A2E +SootopolisCity_Gym_1F_Text_JuanRematchDefeat: .string "Ahahaha, you are the winner!\n" .string "You have defeated me again!$" -SootopolisCity_Gym_1F_Text_JuanPostRematch: @ 8225A67 +SootopolisCity_Gym_1F_Text_JuanPostRematch: .string "JUAN: If I told you to become my\n" .string "apprentice, you will refuse, I am sure.\p" .string "I would like to make a gift of my coat\n" @@ -311,7 +311,7 @@ SootopolisCity_Gym_1F_Text_JuanPostRematch: @ 8225A67 .string "And that, my friend, is a certain sign\n" .string "of nobility!$" -SootopolisCity_Gym_1F_Text_JuanRematchNeedTwoMons: @ 8225B48 +SootopolisCity_Gym_1F_Text_JuanRematchNeedTwoMons: .string "JUAN: Ah, this GYM had returned to its\n" .string "usual state of serenity…\p" .string "But our young typhoon has returned\n" diff --git a/data/maps/SootopolisCity_Gym_B1F/scripts.inc b/data/maps/SootopolisCity_Gym_B1F/scripts.inc index 735722db5a2b..ae5a3ebc4aba 100644 --- a/data/maps/SootopolisCity_Gym_B1F/scripts.inc +++ b/data/maps/SootopolisCity_Gym_B1F/scripts.inc @@ -1,183 +1,183 @@ -SootopolisCity_Gym_B1F_MapScripts:: @ 8225C8A +SootopolisCity_Gym_B1F_MapScripts:: .byte 0 -SootopolisCity_Gym_B1F_EventScript_Andrea:: @ 8225C8B +SootopolisCity_Gym_B1F_EventScript_Andrea:: trainerbattle_single TRAINER_ANDREA, SootopolisCity_Gym_B1F_Text_AndreaIntro, SootopolisCity_Gym_B1F_Text_AndreaDefeat msgbox SootopolisCity_Gym_B1F_Text_AndreaPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Crissy:: @ 8225CA2 +SootopolisCity_Gym_B1F_EventScript_Crissy:: trainerbattle_single TRAINER_CRISSY, SootopolisCity_Gym_B1F_Text_CrissyIntro, SootopolisCity_Gym_B1F_Text_CrissyDefeat msgbox SootopolisCity_Gym_B1F_Text_CrissyPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Brianna:: @ 8225CB9 +SootopolisCity_Gym_B1F_EventScript_Brianna:: trainerbattle_single TRAINER_BRIANNA, SootopolisCity_Gym_B1F_Text_BriannaIntro, SootopolisCity_Gym_B1F_Text_BriannaDefeat msgbox SootopolisCity_Gym_B1F_Text_BriannaPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Connie:: @ 8225CD0 +SootopolisCity_Gym_B1F_EventScript_Connie:: trainerbattle_single TRAINER_CONNIE, SootopolisCity_Gym_B1F_Text_ConnieIntro, SootopolisCity_Gym_B1F_Text_ConnieDefeat msgbox SootopolisCity_Gym_B1F_Text_ConniePostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Bridget:: @ 8225CE7 +SootopolisCity_Gym_B1F_EventScript_Bridget:: trainerbattle_single TRAINER_BRIDGET, SootopolisCity_Gym_B1F_Text_BridgetIntro, SootopolisCity_Gym_B1F_Text_BridgetDefeat msgbox SootopolisCity_Gym_B1F_Text_BridgetPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Olivia:: @ 8225CFE +SootopolisCity_Gym_B1F_EventScript_Olivia:: trainerbattle_single TRAINER_OLIVIA, SootopolisCity_Gym_B1F_Text_OliviaIntro, SootopolisCity_Gym_B1F_Text_OliviaDefeat msgbox SootopolisCity_Gym_B1F_Text_OliviaPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Tiffany:: @ 8225D15 +SootopolisCity_Gym_B1F_EventScript_Tiffany:: trainerbattle_single TRAINER_TIFFANY, SootopolisCity_Gym_B1F_Text_TiffanyIntro, SootopolisCity_Gym_B1F_Text_TiffanyDefeat msgbox SootopolisCity_Gym_B1F_Text_TiffanyPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Bethany:: @ 8225D2C +SootopolisCity_Gym_B1F_EventScript_Bethany:: trainerbattle_single TRAINER_BETHANY, SootopolisCity_Gym_B1F_Text_BethanyIntro, SootopolisCity_Gym_B1F_Text_BethanyDefeat msgbox SootopolisCity_Gym_B1F_Text_BethanyPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Annika:: @ 8225D43 +SootopolisCity_Gym_B1F_EventScript_Annika:: trainerbattle_single TRAINER_ANNIKA, SootopolisCity_Gym_B1F_Text_AnnikaIntro, SootopolisCity_Gym_B1F_Text_AnnikaDefeat msgbox SootopolisCity_Gym_B1F_Text_AnnikaPostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_EventScript_Daphne:: @ 8225D5A +SootopolisCity_Gym_B1F_EventScript_Daphne:: trainerbattle_single TRAINER_DAPHNE, SootopolisCity_Gym_B1F_Text_DaphneIntro, SootopolisCity_Gym_B1F_Text_DaphneDefeat msgbox SootopolisCity_Gym_B1F_Text_DaphnePostBattle, MSGBOX_AUTOCLOSE end -SootopolisCity_Gym_B1F_Text_AndreaIntro: @ 8225D71 +SootopolisCity_Gym_B1F_Text_AndreaIntro: .string "I'll show you the sublime techniques\n" .string "I learned from our LEADER JUAN!$" -SootopolisCity_Gym_B1F_Text_AndreaDefeat: @ 8225DB6 +SootopolisCity_Gym_B1F_Text_AndreaDefeat: .string "Please forgive me, JUAN…$" -SootopolisCity_Gym_B1F_Text_AndreaPostBattle: @ 8225DCF +SootopolisCity_Gym_B1F_Text_AndreaPostBattle: .string "Watch what happens if you crack all\n" .string "the floor tiles.$" -SootopolisCity_Gym_B1F_Text_CrissyIntro: @ 8225E04 +SootopolisCity_Gym_B1F_Text_CrissyIntro: .string "You came all the way here, but you won't\n" .string "get to see JUAN.\p" .string "Not if you lose to me, you won't!$" -SootopolisCity_Gym_B1F_Text_CrissyDefeat: @ 8225E60 +SootopolisCity_Gym_B1F_Text_CrissyDefeat: .string "You're strong!\n" .string "I was fooled by your cute looks!$" -SootopolisCity_Gym_B1F_Text_CrissyPostBattle: @ 8225E90 +SootopolisCity_Gym_B1F_Text_CrissyPostBattle: .string "You might be good enough to avoid\n" .string "being wiped out in one hit by JUAN.$" -SootopolisCity_Gym_B1F_Text_DaphneIntro: @ 8225ED6 +SootopolisCity_Gym_B1F_Text_DaphneIntro: .string "The sight of JUAN conducting\n" .string "a battle…\p" .string "The very beauty of it compelled me to\n" .string "become a TRAINER.$" -SootopolisCity_Gym_B1F_Text_DaphneDefeat: @ 8225F35 +SootopolisCity_Gym_B1F_Text_DaphneDefeat: .string "You battled with more beauty than\n" .string "I could muster…$" -SootopolisCity_Gym_B1F_Text_DaphnePostBattle: @ 8225F67 +SootopolisCity_Gym_B1F_Text_DaphnePostBattle: .string "The grace you bring to battle is\n" .string "fabulous.\p" .string "Oh… I'm so fortunate to have found\n" .string "POKéMON.$" -SootopolisCity_Gym_B1F_Text_ConnieIntro: @ 8225FBE +SootopolisCity_Gym_B1F_Text_ConnieIntro: .string "I should teach you how harsh battles\n" .string "can be.$" -SootopolisCity_Gym_B1F_Text_ConnieDefeat: @ 8225FEB +SootopolisCity_Gym_B1F_Text_ConnieDefeat: .string "Oh.\n" .string "You're strong.$" -SootopolisCity_Gym_B1F_Text_ConniePostBattle: @ 8225FFE +SootopolisCity_Gym_B1F_Text_ConniePostBattle: .string "I'll tell you something good.\p" .string "If you want to reach JUAN, you\n" .string "need to walk on each floor tile once.$" -SootopolisCity_Gym_B1F_Text_BridgetIntro: @ 8226061 +SootopolisCity_Gym_B1F_Text_BridgetIntro: .string "The POKéMON GYM of the highest level\n" .string "in the HOENN region…\p" .string "That's the SOOTOPOLIS GYM.$" -SootopolisCity_Gym_B1F_Text_BridgetDefeat: @ 82260B6 +SootopolisCity_Gym_B1F_Text_BridgetDefeat: .string "What a high level you are!$" -SootopolisCity_Gym_B1F_Text_BridgetPostBattle: @ 82260D1 +SootopolisCity_Gym_B1F_Text_BridgetPostBattle: .string "Rather than being satisfied by being\n" .string "in a strong GYM, I imagine training in\l" .string "other places will make you stronger.\l" .string "But above all, it looks more fun.$" -SootopolisCity_Gym_B1F_Text_OliviaIntro: @ 8226164 +SootopolisCity_Gym_B1F_Text_OliviaIntro: .string "I train my POKéMON together with\n" .string "JUAN.\p" .string "Don't think I'm a pushover.$" -SootopolisCity_Gym_B1F_Text_OliviaDefeat: @ 82261A7 +SootopolisCity_Gym_B1F_Text_OliviaDefeat: .string "I was beaten…$" -SootopolisCity_Gym_B1F_Text_OliviaPostBattle: @ 82261B5 +SootopolisCity_Gym_B1F_Text_OliviaPostBattle: .string "I think you have potential.\n" .string "Why don't you stay and train with us?$" -SootopolisCity_Gym_B1F_Text_TiffanyIntro: @ 82261F7 +SootopolisCity_Gym_B1F_Text_TiffanyIntro: .string "A graceful glide across the ice while\n" .string "crossing no lines…\p" .string "A TRAINER putting on that performance\n" .string "would be elegantly beautiful!$" -SootopolisCity_Gym_B1F_Text_TiffanyDefeat: @ 8226274 +SootopolisCity_Gym_B1F_Text_TiffanyDefeat: .string "Well, excuse me?!$" -SootopolisCity_Gym_B1F_Text_TiffanyPostBattle: @ 8226286 +SootopolisCity_Gym_B1F_Text_TiffanyPostBattle: .string "This is really obvious, but how strong\n" .string "you are as a TRAINER has nothing to do\l" .string "with how young or old you are.$" -SootopolisCity_Gym_B1F_Text_BethanyIntro: @ 82262F3 +SootopolisCity_Gym_B1F_Text_BethanyIntro: .string "When I'm with my POKéMON, the time\n" .string "flies by before you can say, “Oops!”$" -SootopolisCity_Gym_B1F_Text_BethanyDefeat: @ 822633B +SootopolisCity_Gym_B1F_Text_BethanyDefeat: .string "Oops!$" -SootopolisCity_Gym_B1F_Text_BethanyPostBattle: @ 8226341 +SootopolisCity_Gym_B1F_Text_BethanyPostBattle: .string "I wish I could forget about lost causes\n" .string "before I can manage an “Oops!”$" -SootopolisCity_Gym_B1F_Text_AnnikaIntro: @ 8226388 +SootopolisCity_Gym_B1F_Text_AnnikaIntro: .string "I can battle with really rare POKéMON\n" .string "if you'd like.$" -SootopolisCity_Gym_B1F_Text_AnnikaDefeat: @ 82263BD +SootopolisCity_Gym_B1F_Text_AnnikaDefeat: .string "Oh, there now! Did you have a good look\n" .string "at my POKéMON?$" -SootopolisCity_Gym_B1F_Text_AnnikaPostBattle: @ 82263F4 +SootopolisCity_Gym_B1F_Text_AnnikaPostBattle: .string "I came to this GYM because JUAN\n" .string "praised me for my darling POKéMON.\p" .string "Oh, if only I'd met JUAN years ago\n" .string "when I was younger…$" -SootopolisCity_Gym_B1F_Text_BriannaIntro: @ 822646E +SootopolisCity_Gym_B1F_Text_BriannaIntro: .string "Giggle…\n" .string "Your grim look is so charming.$" -SootopolisCity_Gym_B1F_Text_BriannaDefeat: @ 8226495 +SootopolisCity_Gym_B1F_Text_BriannaDefeat: .string "Oh, dear.\n" .string "I went much too easy on you.$" -SootopolisCity_Gym_B1F_Text_BriannaPostBattle: @ 82264BC +SootopolisCity_Gym_B1F_Text_BriannaPostBattle: .string "You couldn't lay a finger on JUAN,\n" .string "I'm sure. Giggle…$" diff --git a/data/maps/SootopolisCity_House1/scripts.inc b/data/maps/SootopolisCity_House1/scripts.inc index 90a429c2c1ac..1cedf7c5799a 100644 --- a/data/maps/SootopolisCity_House1/scripts.inc +++ b/data/maps/SootopolisCity_House1/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_House1_MapScripts:: @ 822694C +SootopolisCity_House1_MapScripts:: .byte 0 -SootopolisCity_House1_EventScript_BrickBreakBlackBelt:: @ 822694D +SootopolisCity_House1_EventScript_BrickBreakBlackBelt:: lock faceplayer goto_if_set FLAG_RECEIVED_TM31, SootopolisCity_House1_EventScript_ReceivedBrickBreak @@ -14,12 +14,12 @@ SootopolisCity_House1_EventScript_BrickBreakBlackBelt:: @ 822694D release end -SootopolisCity_House1_EventScript_ReceivedBrickBreak:: @ 8226984 +SootopolisCity_House1_EventScript_ReceivedBrickBreak:: msgbox SootopolisCity_House1_Text_ExplainBrickBreak, MSGBOX_DEFAULT release end -SootopolisCity_House1_EventScript_Kecleon:: @ 822698E +SootopolisCity_House1_EventScript_Kecleon:: lock faceplayer waitse @@ -29,16 +29,16 @@ SootopolisCity_House1_EventScript_Kecleon:: @ 822698E release end -SootopolisCity_House1_Text_DevelopedThisTM: @ 82269A1 +SootopolisCity_House1_Text_DevelopedThisTM: .string "For thirty years I've remained in\n" .string "SOOTOPOLIS honing my skills.\p" .string "I developed a shattering TM.\n" .string "I bequeath it to you!$" -SootopolisCity_House1_Text_ExplainBrickBreak: @ 8226A13 +SootopolisCity_House1_Text_ExplainBrickBreak: .string "TM31 contains BRICK BREAK! It's a move\n" .string "so horrible that I can't describe it.$" -SootopolisCity_House1_Text_Kecleon: @ 8226A60 +SootopolisCity_House1_Text_Kecleon: .string "KECLEON: Puu puhyaah.$" diff --git a/data/maps/SootopolisCity_House2/scripts.inc b/data/maps/SootopolisCity_House2/scripts.inc index 31388cbb4aeb..a9c2ed255db4 100644 --- a/data/maps/SootopolisCity_House2/scripts.inc +++ b/data/maps/SootopolisCity_House2/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_House2_MapScripts:: @ 8226A76 +SootopolisCity_House2_MapScripts:: .byte 0 -SootopolisCity_House2_EventScript_ExpertF:: @ 8226A77 +SootopolisCity_House2_EventScript_ExpertF:: lock faceplayer msgbox SootopolisCity_House2_Text_DidYouKnowAboutMtPyreOrbs, MSGBOX_YESNO @@ -12,25 +12,25 @@ SootopolisCity_House2_EventScript_ExpertF:: @ 8226A77 release end -SootopolisCity_House2_EventScript_KnowAboutOrbs:: @ 8226A99 +SootopolisCity_House2_EventScript_KnowAboutOrbs:: msgbox SootopolisCity_House2_Text_YesTwoOrbsSideBySide, MSGBOX_DEFAULT return -SootopolisCity_House2_EventScript_DontKnowAboutOrbs:: @ 8226AA2 +SootopolisCity_House2_EventScript_DontKnowAboutOrbs:: msgbox SootopolisCity_House2_Text_OughtToVisitAndSee, MSGBOX_DEFAULT return -SootopolisCity_House2_Text_DidYouKnowAboutMtPyreOrbs: @ 8226AAB +SootopolisCity_House2_Text_DidYouKnowAboutMtPyreOrbs: .string "MT. PYRE…\p" .string "At its peak are two orbs placed side\n" .string "by side. Did you know?$" -SootopolisCity_House2_Text_YesTwoOrbsSideBySide: @ 8226AF1 +SootopolisCity_House2_Text_YesTwoOrbsSideBySide: .string "Yes, two orbs side by side…\p" .string "The sight of them together…\n" .string "It is somehow soothing…$" -SootopolisCity_House2_Text_OughtToVisitAndSee: @ 8226B41 +SootopolisCity_House2_Text_OughtToVisitAndSee: .string "Is that so?\n" .string "Perhaps you ought to visit and see…$" diff --git a/data/maps/SootopolisCity_House3/scripts.inc b/data/maps/SootopolisCity_House3/scripts.inc index c22a29a9424e..02546968b556 100644 --- a/data/maps/SootopolisCity_House3/scripts.inc +++ b/data/maps/SootopolisCity_House3/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_House3_MapScripts:: @ 8226B71 +SootopolisCity_House3_MapScripts:: .byte 0 -SootopolisCity_House3_EventScript_Woman:: @ 8226B72 +SootopolisCity_House3_EventScript_Woman:: lock faceplayer msgbox SootopolisCity_House3_Text_JuanHasManyFansDoYou, MSGBOX_YESNO @@ -11,31 +11,31 @@ SootopolisCity_House3_EventScript_Woman:: @ 8226B72 release end -SootopolisCity_House3_EventScript_HaveFans:: @ 8226B91 +SootopolisCity_House3_EventScript_HaveFans:: msgbox SootopolisCity_House3_Text_YouMustBePrettyStrong, MSGBOX_DEFAULT release end -SootopolisCity_House3_EventScript_Girl:: @ 8226B9B +SootopolisCity_House3_EventScript_Girl:: msgbox SootopolisCity_House3_Text_TrainerFanClubWasWild, MSGBOX_NPC end -SootopolisCity_House3_Text_JuanHasManyFansDoYou: @ 8226BA4 +SootopolisCity_House3_Text_JuanHasManyFansDoYou: .string "You're a POKéMON TRAINER, aren't you?\p" .string "SOOTOPOLIS's JUAN has many fans.\n" .string "Even more than his student WALLACE!\p" .string "Do you have any?$" -SootopolisCity_House3_Text_YouMustBePrettyStrong: @ 8226C20 +SootopolisCity_House3_Text_YouMustBePrettyStrong: .string "Oh, then you must be pretty strong.$" -SootopolisCity_House3_Text_LonesomeTryWorkingHarder: @ 8226C44 +SootopolisCity_House3_Text_LonesomeTryWorkingHarder: .string "Oh, dear…\n" .string "That's a little lonesome.\p" .string "Try working a little harder to get\n" .string "a fan following.$" -SootopolisCity_House3_Text_TrainerFanClubWasWild: @ 8226C9C +SootopolisCity_House3_Text_TrainerFanClubWasWild: .string "Dedicated fans come over from even\n" .string "outside of HOENN.\p" .string "It was really wild when I went to the\n" diff --git a/data/maps/SootopolisCity_House4/scripts.inc b/data/maps/SootopolisCity_House4/scripts.inc index 861da06d2000..a1102bdd9fb8 100644 --- a/data/maps/SootopolisCity_House4/scripts.inc +++ b/data/maps/SootopolisCity_House4/scripts.inc @@ -1,15 +1,15 @@ -SootopolisCity_House4_MapScripts:: @ 8226D15 +SootopolisCity_House4_MapScripts:: .byte 0 -SootopolisCity_House4_EventScript_Man:: @ 8226D16 +SootopolisCity_House4_EventScript_Man:: msgbox SootopolisCity_House4_Text_AncientTreasuresWaitingInSea, MSGBOX_NPC end -SootopolisCity_House4_EventScript_Woman:: @ 8226D1F +SootopolisCity_House4_EventScript_Woman:: msgbox SootopolisCity_House4_Text_StrollUnderwaterWithPokemon, MSGBOX_NPC end -SootopolisCity_House4_EventScript_Azumarill:: @ 8226D28 +SootopolisCity_House4_EventScript_Azumarill:: lock faceplayer waitse @@ -19,7 +19,7 @@ SootopolisCity_House4_EventScript_Azumarill:: @ 8226D28 release end -SootopolisCity_House4_Text_AncientTreasuresWaitingInSea: @ 8226D3B +SootopolisCity_House4_Text_AncientTreasuresWaitingInSea: .string "Listen up, and I'll tell you something\n" .string "good.\p" .string "There's supposed to be an ancient\n" @@ -27,13 +27,13 @@ SootopolisCity_House4_Text_AncientTreasuresWaitingInSea: @ 8226D3B .string "There could be treasures just waiting\n" .string "to be discovered down there.$" -SootopolisCity_House4_Text_StrollUnderwaterWithPokemon: @ 8226DEA +SootopolisCity_House4_Text_StrollUnderwaterWithPokemon: .string "Ancient treasures…\p" .string "It would be nice if they existed, but\n" .string "even if they didn't, it would be so\l" .string "beautiful to take an underwater\l" .string "stroll with my POKéMON.$" -SootopolisCity_House4_Text_Azumarill: @ 8226E7F +SootopolisCity_House4_Text_Azumarill: .string "AZUMARILL: Marurii.$" diff --git a/data/maps/SootopolisCity_House5/scripts.inc b/data/maps/SootopolisCity_House5/scripts.inc index 027a35bcf716..853fc1a1b3a0 100644 --- a/data/maps/SootopolisCity_House5/scripts.inc +++ b/data/maps/SootopolisCity_House5/scripts.inc @@ -1,20 +1,20 @@ -SootopolisCity_House5_MapScripts:: @ 8226E93 +SootopolisCity_House5_MapScripts:: .byte 0 -SootopolisCity_House5_EventScript_Maniac:: @ 8226E94 +SootopolisCity_House5_EventScript_Maniac:: msgbox SootopolisCity_House5_Text_SootopolisMtPyreConnection, MSGBOX_NPC end -SootopolisCity_House5_EventScript_Girl:: @ 8226E9D +SootopolisCity_House5_EventScript_Girl:: msgbox SootopolisCity_House5_Text_BrotherUsedToStudySea, MSGBOX_NPC end -SootopolisCity_House5_Text_SootopolisMtPyreConnection: @ 8226EA6 +SootopolisCity_House5_Text_SootopolisMtPyreConnection: .string "There appears to be some connection\n" .string "between SOOTOPOLIS and MT. PYRE.\p" .string "My friends and I did some research on\n" .string "it at the lab where I used to work.$" -SootopolisCity_House5_Text_BrotherUsedToStudySea: @ 8226F35 +SootopolisCity_House5_Text_BrotherUsedToStudySea: .string "My big brother used to study the sea.$" diff --git a/data/maps/SootopolisCity_House6/scripts.inc b/data/maps/SootopolisCity_House6/scripts.inc index d62273864584..be2dad11f26e 100644 --- a/data/maps/SootopolisCity_House6/scripts.inc +++ b/data/maps/SootopolisCity_House6/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_House6_MapScripts:: @ 8226F5B +SootopolisCity_House6_MapScripts:: .byte 0 -SootopolisCity_House6_EventScript_Woman:: @ 8226F5C +SootopolisCity_House6_EventScript_Woman:: lock faceplayer goto_if_set FLAG_RECEIVED_WAILMER_DOLL, SootopolisCity_House6_EventScript_ReceivedWailmerDoll @@ -16,40 +16,40 @@ SootopolisCity_House6_EventScript_Woman:: @ 8226F5C release end -SootopolisCity_House6_EventScript_DeclineWailmerDoll:: @ 8226F99 +SootopolisCity_House6_EventScript_DeclineWailmerDoll:: msgbox SootopolisCity_House6_Text_DontWantThisDoll, MSGBOX_DEFAULT release end -SootopolisCity_House6_EventScript_ReceivedWailmerDoll:: @ 8226FA3 +SootopolisCity_House6_EventScript_ReceivedWailmerDoll:: msgbox SootopolisCity_House6_Text_LovePlushDolls, MSGBOX_DEFAULT release end -SootopolisCity_House6_EventScript_NoRoomForWailmerDoll:: @ 8226FAD +SootopolisCity_House6_EventScript_NoRoomForWailmerDoll:: bufferdecorationname 1, DECOR_WAILMER_DOLL msgbox gText_NoRoomLeftForAnother, MSGBOX_DEFAULT msgbox SootopolisCity_House6_Text_IllHoldItForYou, MSGBOX_DEFAULT release end -SootopolisCity_House6_Text_FirstGuestInWhileTakeDoll: @ 8226FC3 +SootopolisCity_House6_Text_FirstGuestInWhileTakeDoll: .string "Hello! You're our first guest in\n" .string "a good while.\p" .string "You've brightened up my day, so I'll\n" .string "give you a big WAILMER DOLL.$" -SootopolisCity_House6_Text_TakeGoodCareOfIt: @ 8227034 +SootopolisCity_House6_Text_TakeGoodCareOfIt: .string "Take good care of it!$" -SootopolisCity_House6_Text_IllHoldItForYou: @ 822704A +SootopolisCity_House6_Text_IllHoldItForYou: .string "Oh, you want it, but not right now?\n" .string "Okay, then I'll hold it for you.$" -SootopolisCity_House6_Text_DontWantThisDoll: @ 822708F +SootopolisCity_House6_Text_DontWantThisDoll: .string "Are you sure?\n" .string "You don't want this DOLL?$" -SootopolisCity_House6_Text_LovePlushDolls: @ 82270B7 +SootopolisCity_House6_Text_LovePlushDolls: .string "I love plush DOLLS!$" diff --git a/data/maps/SootopolisCity_House7/scripts.inc b/data/maps/SootopolisCity_House7/scripts.inc index b7b11208ea58..dd6081f2495f 100644 --- a/data/maps/SootopolisCity_House7/scripts.inc +++ b/data/maps/SootopolisCity_House7/scripts.inc @@ -1,15 +1,15 @@ -SootopolisCity_House7_MapScripts:: @ 82270CB +SootopolisCity_House7_MapScripts:: .byte 0 -SootopolisCity_House7_EventScript_OldMan:: @ 82270CC +SootopolisCity_House7_EventScript_OldMan:: msgbox SootopolisCity_House7_Text_CityFromEruptedVolcano, MSGBOX_NPC end -SootopolisCity_House7_EventScript_PokefanF:: @ 82270D5 +SootopolisCity_House7_EventScript_PokefanF:: msgbox SootopolisCity_House7_Text_CaveMadeToKeepSomething, MSGBOX_NPC end -SootopolisCity_House7_Text_CityFromEruptedVolcano: @ 82270DE +SootopolisCity_House7_Text_CityFromEruptedVolcano: .string "An underwater volcano erupted and\n" .string "forced itself up from the depths.\p" .string "Its crater emerged from the sea and\n" @@ -17,7 +17,7 @@ SootopolisCity_House7_Text_CityFromEruptedVolcano: @ 82270DE .string "That's how SOOTOPOLIS CITY came into\n" .string "being.$" -SootopolisCity_House7_Text_CaveMadeToKeepSomething: @ 8227190 +SootopolisCity_House7_Text_CaveMadeToKeepSomething: .string "The cave that links SOOTOPOLIS and\n" .string "the outside world…\p" .string "It seems as if the cave was made to\n" diff --git a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc index 1951a33d55ad..ab087696e8cb 100644 --- a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc +++ b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_LotadAndSeedotHouse_MapScripts:: @ 822722A +SootopolisCity_LotadAndSeedotHouse_MapScripts:: .byte 0 -SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotBrother:: @ 822722B +SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotBrother:: special GetSeedotSizeRecordInfo lock faceplayer @@ -21,22 +21,22 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotBrother:: @ 822722B release end -SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowSeedot:: @ 8227272 +SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowSeedot:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigSeedot, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_NotSeedot:: @ 822727C +SootopolisCity_LotadAndSeedotHouse_EventScript_NotSeedot:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotSeedot, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_SmallSeedot:: @ 8227286 +SootopolisCity_LotadAndSeedotHouse_EventScript_SmallSeedot:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerSeedot, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot:: @ 8227290 +SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_GoshMightBeBiggerThanLotad, MSGBOX_DEFAULT giveitem ITEM_ELIXIR compare VAR_RESULT, FALSE @@ -45,12 +45,12 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot:: @ 8227290 release end -SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir1:: @ 82272B2 +SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir1:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull1, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_LotadBrother:: @ 82272BC +SootopolisCity_LotadAndSeedotHouse_EventScript_LotadBrother:: special GetLotadSizeRecordInfo lock faceplayer @@ -70,22 +70,22 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_LotadBrother:: @ 82272BC release end -SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowLotad:: @ 8227303 +SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowLotad:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigLotad, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_NotLotad:: @ 822730D +SootopolisCity_LotadAndSeedotHouse_EventScript_NotLotad:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotLotad, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_SmallLotad:: @ 8227317 +SootopolisCity_LotadAndSeedotHouse_EventScript_SmallLotad:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerLotad, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad:: @ 8227321 +SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_WowMightBeBiggerThanSeedot, MSGBOX_DEFAULT giveitem ITEM_ELIXIR compare VAR_RESULT, FALSE @@ -94,26 +94,26 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad:: @ 8227321 release end -SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir2:: @ 8227343 +SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir2:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull2, MSGBOX_DEFAULT release end -SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotSizeRecord:: @ 822734D +SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotSizeRecord:: special GetSeedotSizeRecordInfo lockall msgbox SootopolisCity_LotadAndSeedotHouse_Text_BiggestSeedotInHistory, MSGBOX_DEFAULT releaseall end -SootopolisCity_LotadAndSeedotHouse_EventScript_LotadSizeRecord:: @ 822735B +SootopolisCity_LotadAndSeedotHouse_EventScript_LotadSizeRecord:: special GetLotadSizeRecordInfo lockall msgbox SootopolisCity_LotadAndSeedotHouse_Text_BiggestLotadInHistory, MSGBOX_DEFAULT releaseall end -SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigSeedot: @ 8227369 +SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigSeedot: .string "Do you know the POKéMON SEEDOT?\n" .string "It's hardly ever seen in SOOTOPOLIS.\p" .string "Anyway, I love big SEEDOT.\n" @@ -125,7 +125,7 @@ SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigSeedot: @ 8227369 .string "Huh? Do you have a SEEDOT with you?\n" .string "P-p-please, show me!$" -SootopolisCity_LotadAndSeedotHouse_Text_GoshMightBeBiggerThanLotad: @ 8227480 +SootopolisCity_LotadAndSeedotHouse_Text_GoshMightBeBiggerThanLotad: .string "{STR_VAR_2} inches!\n" .string "Oh, my gosh, this is a big one!\p" .string "It might even beat the big LOTAD\n" @@ -134,35 +134,35 @@ SootopolisCity_LotadAndSeedotHouse_Text_GoshMightBeBiggerThanLotad: @ 8227480 .string "This is my thanks!$" @ Unused -SootopolisCity_LotadAndSeedotHouse_Text_ReceivedPotion1: @ 822750E +SootopolisCity_LotadAndSeedotHouse_Text_ReceivedPotion1: .string "{PLAYER} received a POTION.$" -SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull1: @ 8227524 +SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull1: .string "Hunh?\n" .string "Your BAG is crammed full.$" -SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerSeedot: @ 8227544 +SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerSeedot: .string "{STR_VAR_2} inches, is it?\p" .string "Hmm… I've seen a bigger SEEDOT\n" .string "than this one.$" -SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotSeedot: @ 8227584 +SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotSeedot: .string "Oh, now this is quite something…\n" .string "But it's not a SEEDOT!$" -SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigSeedot: @ 82275BC +SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigSeedot: .string "You don't have a big SEEDOT?\n" .string "That's too bad…\p" .string "If you get a big SEEDOT, please\n" .string "come show me.$" -SootopolisCity_LotadAndSeedotHouse_Text_BiggestSeedotInHistory: @ 8227617 +SootopolisCity_LotadAndSeedotHouse_Text_BiggestSeedotInHistory: .string "The biggest SEEDOT in history!\n" .string "{STR_VAR_2}'s {STR_VAR_3}-inch giant!\p" .string "A SEEDOT bigger than a LOTAD\n" .string "always wanted!$" -SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigLotad: @ 8227676 +SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigLotad: .string "Do you know the POKéMON LOTAD?\n" .string "It's rarely seen in SOOTOPOLIS.\p" .string "I love, I mean love, big LOTAD!\p" @@ -173,7 +173,7 @@ SootopolisCity_LotadAndSeedotHouse_Text_PleaseShowMeBigLotad: @ 8227676 .string "Hunh? Do you have a LOTAD?\n" .string "P-p-please show me!$" -SootopolisCity_LotadAndSeedotHouse_Text_WowMightBeBiggerThanSeedot: @ 822776C +SootopolisCity_LotadAndSeedotHouse_Text_WowMightBeBiggerThanSeedot: .string "{STR_VAR_2} inches!\n" .string "Wow, that is big!\p" .string "It might be even bigger than the huge\n" @@ -182,29 +182,29 @@ SootopolisCity_LotadAndSeedotHouse_Text_WowMightBeBiggerThanSeedot: @ 822776C .string "This is my thanks!$" @ Unused -SootopolisCity_LotadAndSeedotHouse_Text_ReceivedPotion2: @ 82277F4 +SootopolisCity_LotadAndSeedotHouse_Text_ReceivedPotion2: .string "{PLAYER} received a POTION.$" -SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull2: @ 822780A +SootopolisCity_LotadAndSeedotHouse_Text_BagCrammedFull2: .string "Hunh?\n" .string "Your BAG is crammed full.$" -SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerLotad: @ 822782A +SootopolisCity_LotadAndSeedotHouse_Text_SeenBiggerLotad: .string "{STR_VAR_2} inches?\p" .string "Hmm… I've seen a bigger LOTAD\n" .string "than this one here.$" -SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotLotad: @ 8227867 +SootopolisCity_LotadAndSeedotHouse_Text_ThatsNotLotad: .string "Well, isn't this something!\n" .string "But it's no LOTAD!$" -SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigLotad: @ 8227896 +SootopolisCity_LotadAndSeedotHouse_Text_DontHaveBigLotad: .string "Don't you have a big LOTAD?\n" .string "How disappointing…\p" .string "If you get a big LOTAD, please\n" .string "come show me!$" -SootopolisCity_LotadAndSeedotHouse_Text_BiggestLotadInHistory: @ 82278F2 +SootopolisCity_LotadAndSeedotHouse_Text_BiggestLotadInHistory: .string "The biggest LOTAD in history!\n" .string "{STR_VAR_2}'s {STR_VAR_3}-inch colossus!\p" .string "A LOTAD bigger than a SEEDOT\n" diff --git a/data/maps/SootopolisCity_Mart/scripts.inc b/data/maps/SootopolisCity_Mart/scripts.inc index f7856916cc84..69e5407cb8be 100644 --- a/data/maps/SootopolisCity_Mart/scripts.inc +++ b/data/maps/SootopolisCity_Mart/scripts.inc @@ -1,7 +1,7 @@ -SootopolisCity_Mart_MapScripts:: @ 8226794 +SootopolisCity_Mart_MapScripts:: .byte 0 -SootopolisCity_Mart_EventScript_Clerk:: @ 8226795 +SootopolisCity_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -11,7 +11,7 @@ SootopolisCity_Mart_EventScript_Clerk:: @ 8226795 release end -SootopolisCity_Mart_Pokemart: @ 82267AC +SootopolisCity_Mart_Pokemart: .2byte ITEM_ULTRA_BALL .2byte ITEM_HYPER_POTION .2byte ITEM_MAX_POTION @@ -25,7 +25,7 @@ SootopolisCity_Mart_Pokemart: @ 82267AC release end -SootopolisCity_Mart_EventScript_FatMan:: @ 82267C2 +SootopolisCity_Mart_EventScript_FatMan:: lock faceplayer compare VAR_SKY_PILLAR_STATE, 2 @@ -35,12 +35,12 @@ SootopolisCity_Mart_EventScript_FatMan:: @ 82267C2 release end -SootopolisCity_Mart_EventScript_FatManNoLegendaries:: @ 82267E2 +SootopolisCity_Mart_EventScript_FatManNoLegendaries:: msgbox SootopolisCity_Mart_Text_PPUpIsGreat, MSGBOX_DEFAULT release end -SootopolisCity_Mart_EventScript_Gentleman:: @ 82267EC +SootopolisCity_Mart_EventScript_Gentleman:: lock faceplayer compare VAR_SKY_PILLAR_STATE, 2 @@ -50,29 +50,29 @@ SootopolisCity_Mart_EventScript_Gentleman:: @ 82267EC release end -SootopolisCity_Mart_EventScript_GentlemanNoLegendaries:: @ 822680C +SootopolisCity_Mart_EventScript_GentlemanNoLegendaries:: msgbox SootopolisCity_Mart_Text_FullRestoreItemOfDreams, MSGBOX_DEFAULT release end -SootopolisCity_Mart_Text_PPUpIsGreat: @ 8226816 +SootopolisCity_Mart_Text_PPUpIsGreat: .string "PP UP is great!\p" .string "It raises the POWER POINTS, the PP,\n" .string "of a POKéMON move.$" -SootopolisCity_Mart_Text_TooScaryOutside: @ 822685D +SootopolisCity_Mart_Text_TooScaryOutside: .string "What…\n" .string "What is happening?\p" .string "I really want to know, but it's too\n" .string "scary to go outside.$" -SootopolisCity_Mart_Text_FullRestoreItemOfDreams: @ 82268AF +SootopolisCity_Mart_Text_FullRestoreItemOfDreams: .string "Do you know FULL RESTORE?\p" .string "Full restoration of HP!\n" .string "Eradication of all status problems!\p" .string "It's truly an item of your dreams!$" -SootopolisCity_Mart_Text_DidSomethingAwaken: @ 8226928 +SootopolisCity_Mart_Text_DidSomethingAwaken: .string "This weather…\n" .string "Did something awaken?$" diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc index 30a755a0f8c1..6b1bc0eb564c 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc @@ -1,11 +1,11 @@ .set LOCALID_OLD_MAN, 1 -SootopolisCity_MysteryEventsHouse_1F_MapScripts:: @ 8227953 +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 .byte 0 -SootopolisCity_MysteryEventsHouse_1F_OnTransition: @ 822795E +SootopolisCity_MysteryEventsHouse_1F_OnTransition: frontier_checkvisittrainer compare VAR_RESULT, 0 call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout @@ -13,25 +13,25 @@ SootopolisCity_MysteryEventsHouse_1F_OnTransition: @ 822795E call_if_ne SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor end -SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout:: @ 822797D +SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout:: setvar VAR_TEMP_1, 1 setobjectxyperm LOCALID_OLD_MAN, 3, 2 setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_DOWN setmaplayoutindex LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F_STAIRS_UNBLOCKED return -SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor:: @ 8227991 +SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor:: setobjectxyperm LOCALID_OLD_MAN, 2, 2 setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT return -SootopolisCity_MysteryEventsHouse_1F_OnFrame: @ 822799D +SootopolisCity_MysteryEventsHouse_1F_OnFrame: map_script_2 VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 1, SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle map_script_2 VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 2, SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle map_script_2 VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 3, SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle .2byte 0 -SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle:: @ 82279B7 +SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle:: lockall applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs waitmovement 0 @@ -51,28 +51,28 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle:: @ 82279 releaseall end -SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleWonComment:: @ 8227A04 +SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleWonComment:: msgbox SootopolisCity_MysteryEventsHouse_1F_Text_ThatWasSuperlative, MSGBOX_DEFAULT return -SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleLostComment:: @ 8227A0D +SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleLostComment:: msgbox SootopolisCity_MysteryEventsHouse_1F_Text_TooBadForYou, MSGBOX_DEFAULT return -SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleTiedComment:: @ 8227A16 +SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleTiedComment:: msgbox SootopolisCity_MysteryEventsHouse_1F_Text_BrilliantStandoff, MSGBOX_DEFAULT return -SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs: @ 8227A1F +SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs: walk_down step_end -SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer: @ 8227A21 +SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer: walk_right walk_in_place_fastest_down step_end -SootopolisCity_MysteryEventsHouse_1F_EventScript_OldMan:: @ 8227A24 +SootopolisCity_MysteryEventsHouse_1F_EventScript_OldMan:: lock faceplayer frontier_checkvisittrainer @@ -84,12 +84,12 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_OldMan:: @ 8227A24 release end -SootopolisCity_MysteryEventsHouse_1F_EventScript_InvalidVisitingTrainer:: @ 8227A4E +SootopolisCity_MysteryEventsHouse_1F_EventScript_InvalidVisitingTrainer:: msgbox SootopolisCity_MysteryEventsHouse_1F_Text_OnlyAmusementWatchingBattles, MSGBOX_DEFAULT release end -SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting:: @ 8227A58 +SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting:: special SavePlayerParty special BufferEReaderTrainerName msgbox SootopolisCity_MysteryEventsHouse_1F_Text_ChallengeVisitingTrainer, MSGBOX_YESNO @@ -120,124 +120,124 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting:: @ 8227A58 release end -SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle:: @ 8227AE2 +SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle:: special LoadPlayerParty msgbox SootopolisCity_MysteryEventsHouse_1F_Text_YouWontBattle, MSGBOX_DEFAULT release end -SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty:: @ 8227AEF +SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty:: msgbox SootopolisCity_MysteryEventsHouse_1F_Text_KeepItTo3On3, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate return -SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementNorth:: @ 8227AFE +SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementNorth:: applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementNorth waitmovement 0 return -SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast:: @ 8227B10 +SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast:: applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideRight applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementEast waitmovement 0 return -SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest:: @ 8227B22 +SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest:: applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest waitmovement 0 return -SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementNorth: @ 8227B34 +SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementNorth: delay_16 walk_up walk_up step_end -SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementEast: @ 8227B38 +SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementEast: delay_16 walk_right walk_up step_end -SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest: @ 8227B3C +SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest: delay_16 walk_left walk_up step_end -SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft: @ 8227B40 +SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft: walk_left walk_in_place_fastest_right step_end -SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideRight: @ 8227B43 +SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideRight: walk_right walk_in_place_fastest_left step_end -SootopolisCity_MysteryEventsHouse_1F_Text_OnlyAmusementWatchingBattles: @ 8227B46 +SootopolisCity_MysteryEventsHouse_1F_Text_OnlyAmusementWatchingBattles: .string "When I was young, I traveled the world\n" .string "as a POKéMON TRAINER.\p" .string "Now that I've become an old buzzard,\n" .string "my only amusement is watching young\l" .string "TRAINERS battle.$" -SootopolisCity_MysteryEventsHouse_1F_Text_DoorAppearsToBeLocked: @ 8227BDD +SootopolisCity_MysteryEventsHouse_1F_Text_DoorAppearsToBeLocked: .string "The door appears to be locked.$" -SootopolisCity_MysteryEventsHouse_1F_Text_ChallengeVisitingTrainer: @ 8227BFC +SootopolisCity_MysteryEventsHouse_1F_Text_ChallengeVisitingTrainer: .string "A TRAINER named {STR_VAR_1}\n" .string "is visiting my home.\p" .string "Would you like to challenge\n" .string "{STR_VAR_1}?$" -SootopolisCity_MysteryEventsHouse_1F_Text_YouWontBattle: @ 8227C44 +SootopolisCity_MysteryEventsHouse_1F_Text_YouWontBattle: .string "You won't battle? I'm disappointed\n" .string "that I can't see you battle…$" -SootopolisCity_MysteryEventsHouse_1F_Text_KeepItTo3On3: @ 8227C84 +SootopolisCity_MysteryEventsHouse_1F_Text_KeepItTo3On3: .string "Oh, good, good!\p" .string "But my house isn't all that sturdy.\p" .string "Could I ask you to keep it down to\n" .string "a 3-on-3 match?$" -SootopolisCity_MysteryEventsHouse_1F_Text_SaveProgressBeforeBattle: @ 8227CEB +SootopolisCity_MysteryEventsHouse_1F_Text_SaveProgressBeforeBattle: .string "Before you two battle, you should\n" .string "save your progress.$" -SootopolisCity_MysteryEventsHouse_1F_Text_HopeToSeeGoodMatch: @ 8227D21 +SootopolisCity_MysteryEventsHouse_1F_Text_HopeToSeeGoodMatch: .string "I hope to see a good match!$" @ Unused -SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Tie: @ 8227D3D +SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Tie: .string "{STR_VAR_1}$" -SootopolisCity_MysteryEventsHouse_B1F_Text_MatchEndedUpDraw: @ 8227D40 +SootopolisCity_MysteryEventsHouse_B1F_Text_MatchEndedUpDraw: .string "The match ended up a draw.$" -SootopolisCity_MysteryEventsHouse_1F_Text_BrilliantStandoff: @ 8227D5B +SootopolisCity_MysteryEventsHouse_1F_Text_BrilliantStandoff: .string "So, it became a standoff.\p" .string "It was a brilliant match in which\n" .string "neither side conceded a step!$" @ Unused -SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Won: @ 8227DB5 +SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Won: .string "{STR_VAR_1}$" -SootopolisCity_MysteryEventsHouse_1F_Text_ThatWasSuperlative: @ 8227DB8 +SootopolisCity_MysteryEventsHouse_1F_Text_ThatWasSuperlative: .string "That was superlative!\p" .string "Why, it was like seeing myself in\n" .string "my youth again!$" @ Unused -SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Lost: @ 8227E00 +SootopolisCity_MysteryEventsHouse_1F_Text_StrVar1Lost: .string "{STR_VAR_1}$" -SootopolisCity_MysteryEventsHouse_1F_Text_TooBadForYou: @ 8227E03 +SootopolisCity_MysteryEventsHouse_1F_Text_TooBadForYou: .string "Ah, too bad for you!\p" .string "But it was a good match.\n" .string "I hope you can win next time.$" diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc index 992cef5a3076..f0ebbf516fcc 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc @@ -1,17 +1,17 @@ -SootopolisCity_MysteryEventsHouse_B1F_MapScripts:: @ 8227E4F +SootopolisCity_MysteryEventsHouse_B1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_MysteryEventsHouse_B1F_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, SootopolisCity_MysteryEventsHouse_B1F_OnFrame .byte 0 -SootopolisCity_MysteryEventsHouse_B1F_OnTransition: @ 8227E5A +SootopolisCity_MysteryEventsHouse_B1F_OnTransition: special SetEReaderTrainerGfxId end -SootopolisCity_MysteryEventsHouse_B1F_OnFrame: @ 8227E5E +SootopolisCity_MysteryEventsHouse_B1F_OnFrame: map_script_2 VAR_TEMP_1, 0, SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer .2byte 0 -SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer:: @ 8227E68 +SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer:: lockall applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement waitmovement 0 @@ -39,26 +39,26 @@ SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer:: @ 8227 releaseall end -SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleTie:: @ 8227ECF +SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleTie:: setvar VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 3 msgbox SootopolisCity_MysteryEventsHouse_B1F_Text_MatchEndedUpDraw, MSGBOX_DEFAULT return -SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleWon:: @ 8227EDD +SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleWon:: setvar VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 1 special ShowFieldMessageStringVar4 waitmessage waitbuttonpress return -SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleLost:: @ 8227EE8 +SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleLost:: setvar VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 2 special ShowFieldMessageStringVar4 waitmessage waitbuttonpress return -SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement: @ 8227EF3 +SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement: walk_down walk_down walk_down @@ -66,7 +66,7 @@ SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement: @ 8227EF3 walk_right step_end -SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerExitBasement: @ 8227EF9 +SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerExitBasement: walk_left walk_left walk_up diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc index 712fd166b8bb..9e017861b75d 100644 --- a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_NURSE, 1 -SootopolisCity_PokemonCenter_1F_MapScripts:: @ 82264F1 +SootopolisCity_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -SootopolisCity_PokemonCenter_1F_OnTransition: @ 82264FC +SootopolisCity_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_SOOTOPOLIS_CITY end -SootopolisCity_PokemonCenter_1F_EventScript_Nurse:: @ 8226500 +SootopolisCity_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -17,7 +17,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_Nurse:: @ 8226500 release end -SootopolisCity_PokemonCenter_1F_EventScript_Gentleman:: @ 822650E +SootopolisCity_PokemonCenter_1F_EventScript_Gentleman:: lock faceplayer compare VAR_SKY_PILLAR_STATE, 2 @@ -27,12 +27,12 @@ SootopolisCity_PokemonCenter_1F_EventScript_Gentleman:: @ 822650E release end -SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries:: @ 822652E +SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries:: msgbox SootopolisCity_PokemonCenter_1F_Text_WallaceToughestInHoenn, MSGBOX_DEFAULT release end -SootopolisCity_PokemonCenter_1F_EventScript_Woman:: @ 8226538 +SootopolisCity_PokemonCenter_1F_EventScript_Woman:: lock faceplayer compare VAR_SKY_PILLAR_STATE, 2 @@ -42,12 +42,12 @@ SootopolisCity_PokemonCenter_1F_EventScript_Woman:: @ 8226538 release end -SootopolisCity_PokemonCenter_1F_EventScript_WomanNoLegendaries:: @ 8226558 +SootopolisCity_PokemonCenter_1F_EventScript_WomanNoLegendaries:: msgbox SootopolisCity_PokemonCenter_1F_Text_AlwaysBeFriendsWithPokemon, MSGBOX_DEFAULT release end -SootopolisCity_PokemonCenter_1F_Text_WallaceToughestInHoenn: @ 8226562 +SootopolisCity_PokemonCenter_1F_Text_WallaceToughestInHoenn: .string "WALLACE is rumored to be the toughest\n" .string "TRAINER in the whole HOENN region.\p" .string "This town's GYM is led by the TRAINER\n" @@ -56,19 +56,19 @@ SootopolisCity_PokemonCenter_1F_Text_WallaceToughestInHoenn: @ 8226562 .string "even stronger than WALLACE's mentor.\p" .string "How strong could they be?$" -SootopolisCity_PokemonCenter_1F_Text_EveryoneTakenRefuge: @ 822664B +SootopolisCity_PokemonCenter_1F_Text_EveryoneTakenRefuge: .string "Everyone in town has taken refuge\n" .string "and won't come out of their homes.\p" .string "Even I would rather not venture\n" .string "outside.$" -SootopolisCity_PokemonCenter_1F_Text_AlwaysBeFriendsWithPokemon: @ 82266B9 +SootopolisCity_PokemonCenter_1F_Text_AlwaysBeFriendsWithPokemon: .string "Whenever, wherever, and whatever\n" .string "happens, I will always be friends with\l" .string "POKéMON.\p" .string "Because it's fun to be with POKéMON!$" -SootopolisCity_PokemonCenter_1F_Text_ArentPokemonOurFriends: @ 822672F +SootopolisCity_PokemonCenter_1F_Text_ArentPokemonOurFriends: .string "Aren't POKéMON our friends?\p" .string "Why are they going wild this way?$" diff --git a/data/maps/SootopolisCity_PokemonCenter_2F/scripts.inc b/data/maps/SootopolisCity_PokemonCenter_2F/scripts.inc index 57d21cbb58be..fb88a863c12a 100644 --- a/data/maps/SootopolisCity_PokemonCenter_2F/scripts.inc +++ b/data/maps/SootopolisCity_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -SootopolisCity_PokemonCenter_2F_MapScripts:: @ 822676D +SootopolisCity_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ SootopolisCity_PokemonCenter_2F_MapScripts:: @ 822676D .byte 0 @ The below 3 are unused and leftover from RS -SootopolisCity_PokemonCenter_2F_EventScript_Colosseum:: @ 8226782 +SootopolisCity_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -SootopolisCity_PokemonCenter_2F_EventScript_TradeCenter:: @ 8226788 +SootopolisCity_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -SootopolisCity_PokemonCenter_2F_EventScript_RecordCorner:: @ 822678E +SootopolisCity_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc index 1ba4171206e3..3769f164ce5d 100644 --- a/data/maps/SouthernIsland_Exterior/scripts.inc +++ b/data/maps/SouthernIsland_Exterior/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_SAILOR, 1 .set LOCALID_SS_TIDAL, 2 -SouthernIsland_Exterior_MapScripts:: @ 82429C8 +SouthernIsland_Exterior_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, SouthernIsland_Exterior_OnTransition .byte 0 -SouthernIsland_Exterior_OnTransition: @ 82429CE +SouthernIsland_Exterior_OnTransition: setflag FLAG_LANDMARK_SOUTHERN_ISLAND end -SouthernIsland_Exterior_EventScript_Sailor:: @ 82429D2 +SouthernIsland_Exterior_EventScript_Sailor:: lock faceplayer msgbox EventTicket_Text_SouthernIslandSailBack, MSGBOX_YESNO @@ -28,31 +28,31 @@ SouthernIsland_Exterior_EventScript_Sailor:: @ 82429D2 release end -SouthernIsland_Exterior_EventScript_AsYouLike:: @ 8242A17 +SouthernIsland_Exterior_EventScript_AsYouLike:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT release end -Ferry_EventScript_DepartIslandSouth:: @ 8242A21 +Ferry_EventScript_DepartIslandSouth:: applymovement OBJ_EVENT_ID_PLAYER, Ferry_EventScript_DepartIslandBoardSouth waitmovement 0 return -Ferry_EventScript_DepartIslandWest:: @ 8242A2C +Ferry_EventScript_DepartIslandWest:: applymovement OBJ_EVENT_ID_PLAYER, Ferry_EventScript_DepartIslandBoardWest waitmovement 0 return -Ferry_EventScript_DepartIslandBoardSouth: @ 8242A37 +Ferry_EventScript_DepartIslandBoardSouth: walk_down step_end -Ferry_EventScript_DepartIslandBoardWest: @ 8242A39 +Ferry_EventScript_DepartIslandBoardWest: walk_left walk_in_place_fastest_down step_end -SouthernIsland_Exterior_EventScript_Sign:: @ 8242A3C +SouthernIsland_Exterior_EventScript_Sign:: msgbox SouthernIsland_Exterior_Text_Sign, MSGBOX_SIGN end diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index 2c2e6e00d243..20ed1e58d5f8 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -1,22 +1,22 @@ .set LOCALID_LATI, 2 -SouthernIsland_Interior_MapScripts:: @ 8242A45 +SouthernIsland_Interior_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, SouthernIsland_Interior_OnResume map_script MAP_SCRIPT_ON_TRANSITION, SouthernIsland_Interior_OnTransition .byte 0 -SouthernIsland_Interior_OnResume: @ 8242A50 +SouthernIsland_Interior_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, SouthernIsland_Interior_EventScript_TryRemoveLati end -SouthernIsland_Interior_EventScript_TryRemoveLati:: @ 8242A5A +SouthernIsland_Interior_EventScript_TryRemoveLati:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_LATI return -SouthernIsland_Interior_OnTransition: @ 8242A6E +SouthernIsland_Interior_OnTransition: compare VAR_ROAMER_POKEMON, 0 call_if_eq SouthernIsland_Interior_EventScript_SetUpLatios compare VAR_ROAMER_POKEMON, 0 @@ -24,17 +24,17 @@ SouthernIsland_Interior_OnTransition: @ 8242A6E call SouthernIsland_Interior_EventScript_SetUpPlayerGfx end -SouthernIsland_Interior_EventScript_SetUpLatios:: @ 8242A8A +SouthernIsland_Interior_EventScript_SetUpLatios:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_LATIOS setvar VAR_TEMP_4, SPECIES_LATIOS return -SouthernIsland_Interior_EventScript_SetUpLatias:: @ 8242A95 +SouthernIsland_Interior_EventScript_SetUpLatias:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_LATIAS setvar VAR_TEMP_4, SPECIES_LATIAS return -SouthernIsland_Interior_EventScript_SetUpPlayerGfx:: @ 8242AA0 +SouthernIsland_Interior_EventScript_SetUpPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq SouthernIsland_Interior_EventScript_SetBrendanGfx @@ -42,21 +42,21 @@ SouthernIsland_Interior_EventScript_SetUpPlayerGfx:: @ 8242AA0 goto_if_eq SouthernIsland_Interior_EventScript_SetMayGfx end -SouthernIsland_Interior_EventScript_SetBrendanGfx:: @ 8242AB8 +SouthernIsland_Interior_EventScript_SetBrendanGfx:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -SouthernIsland_Interior_EventScript_SetMayGfx:: @ 8242ABE +SouthernIsland_Interior_EventScript_SetMayGfx:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -SouthernIsland_Interior_EventScript_TryLatiEncounter:: @ 8242AC4 +SouthernIsland_Interior_EventScript_TryLatiEncounter:: lockall setvar VAR_0x8008, 12 goto SouthernIsland_Interior_EventScript_Lati end -SouthernIsland_Interior_EventScript_Lati:: @ 8242AD0 +SouthernIsland_Interior_EventScript_Lati:: goto_if_set FLAG_TEMP_2, SouthernIsland_Interior_EventScript_Sign goto_if_set FLAG_DEFEATED_LATIAS_OR_LATIOS, SouthernIsland_Interior_EventScript_Sign goto_if_set FLAG_CAUGHT_LATIAS_OR_LATIOS, SouthernIsland_Interior_EventScript_Sign @@ -98,43 +98,43 @@ SouthernIsland_Interior_EventScript_Lati:: @ 8242AD0 releaseall end -SouthernIsland_Interior_EventScript_LatiDefeated:: @ 8242B81 +SouthernIsland_Interior_EventScript_LatiDefeated:: setflag FLAG_DEFEATED_LATIAS_OR_LATIOS copyvar VAR_0x8004, VAR_TEMP_4 goto Common_EventScript_LegendaryFlewAway end -SouthernIsland_Interior_EventScript_RanFromLati:: @ 8242B8F +SouthernIsland_Interior_EventScript_RanFromLati:: copyvar VAR_0x8004, VAR_TEMP_4 goto Common_EventScript_LegendaryFlewAway end -SouthernIsland_Interior_EventScript_Sign:: @ 8242B9A +SouthernIsland_Interior_EventScript_Sign:: msgbox SouthernIsland_Interior_Text_Sign, MSGBOX_DEFAULT releaseall end -SouthernIsland_Interior_EventScript_SetLatiosBattleVars:: @ 8242BA4 +SouthernIsland_Interior_EventScript_SetLatiosBattleVars:: setvar VAR_0x8004, SPECIES_LATIOS setvar VAR_0x8005, 50 @ level setvar VAR_0x8006, ITEM_SOUL_DEW special CreateEventLegalEnemyMon return -SouthernIsland_Interior_EventScript_SetLatiasBattleVars:: @ 8242BB7 +SouthernIsland_Interior_EventScript_SetLatiasBattleVars:: setvar VAR_0x8004, SPECIES_LATIAS setvar VAR_0x8005, 50 @ level setvar VAR_0x8006, ITEM_SOUL_DEW special CreateEventLegalEnemyMon return -SouthernIsland_Interior_Movement_CameraPanUp: @ 8242BCA +SouthernIsland_Interior_Movement_CameraPanUp: walk_up walk_up walk_up step_end -SouthernIsland_Interior_Movement_CameraPanDown: @ 8242BCE +SouthernIsland_Interior_Movement_CameraPanDown: delay_16 delay_16 delay_16 @@ -148,7 +148,7 @@ SouthernIsland_Interior_Movement_CameraPanDown: @ 8242BCE walk_in_place_fastest_up step_end -SouthernIsland_Interior_Movement_LatiApproach: @ 8242BDA +SouthernIsland_Interior_Movement_LatiApproach: walk_down walk_down walk_down diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc index 9683ca60738b..2b35b3c51398 100644 --- a/data/maps/TerraCave_End/scripts.inc +++ b/data/maps/TerraCave_End/scripts.inc @@ -1,31 +1,31 @@ .set LOCALID_GROUDON, 1 -TerraCave_End_MapScripts:: @ 823B0B0 +TerraCave_End_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TerraCave_End_OnResume map_script MAP_SCRIPT_ON_TRANSITION, TerraCave_End_OnTransition .byte 0 -TerraCave_End_OnResume: @ 823B0BB +TerraCave_End_OnResume: call_if_set FLAG_SYS_CTRL_OBJ_DELETE, TerraCave_End_EventScript_TryRemoveGroudon end -TerraCave_End_EventScript_TryRemoveGroudon:: @ 823B0C5 +TerraCave_End_EventScript_TryRemoveGroudon:: specialvar VAR_RESULT, GetBattleOutcome compare VAR_RESULT, B_OUTCOME_CAUGHT goto_if_ne Common_EventScript_NopReturn removeobject LOCALID_GROUDON return -TerraCave_End_OnTransition: @ 823B0D9 +TerraCave_End_OnTransition: call_if_unset FLAG_DEFEATED_GROUDON, TerraCave_End_EventScript_ShowGroudon end -TerraCave_End_EventScript_ShowGroudon:: @ 823B0E3 +TerraCave_End_EventScript_ShowGroudon:: clearflag FLAG_HIDE_TERRA_CAVE_GROUDON setvar VAR_TEMP_1, 1 return -TerraCave_End_EventScript_Groudon:: @ 823B0EC +TerraCave_End_EventScript_Groudon:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 @@ -54,18 +54,18 @@ TerraCave_End_EventScript_Groudon:: @ 823B0EC releaseall end -TerraCave_End_EventScript_DefeatedGroudon:: @ 823B155 +TerraCave_End_EventScript_DefeatedGroudon:: setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 1 setflag FLAG_DEFEATED_GROUDON goto Common_EventScript_RemoveStaticPokemon end -TerraCave_End_EventScript_RanFromGroudon:: @ 823B163 +TerraCave_End_EventScript_RanFromGroudon:: setvar VAR_0x8004, SPECIES_GROUDON goto Common_EventScript_LegendaryFlewAway end -TerraCave_End_Movement_GroudonApproach: @ 823B16E +TerraCave_End_Movement_GroudonApproach: init_affine_anim walk_down_start_affine delay_16 diff --git a/data/maps/TerraCave_Entrance/scripts.inc b/data/maps/TerraCave_Entrance/scripts.inc index 70aa9cdfaafd..203d5fc02692 100644 --- a/data/maps/TerraCave_Entrance/scripts.inc +++ b/data/maps/TerraCave_Entrance/scripts.inc @@ -1,8 +1,8 @@ -TerraCave_Entrance_MapScripts:: @ 823B0A6 +TerraCave_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, TerraCave_Entrance_OnTransition .byte 0 -TerraCave_Entrance_OnTransition: @ 823B0AC +TerraCave_Entrance_OnTransition: setflag FLAG_ARRIVED_AT_TERRA_CAVE_ENTRANCE end diff --git a/data/maps/TradeCenter/scripts.inc b/data/maps/TradeCenter/scripts.inc index e0e0e7d1ec6e..972768219293 100644 --- a/data/maps/TradeCenter/scripts.inc +++ b/data/maps/TradeCenter/scripts.inc @@ -1,3 +1,3 @@ -TradeCenter_MapScripts:: @ 823B77E +TradeCenter_MapScripts:: .byte 0 diff --git a/data/maps/TrainerHill_1F/scripts.inc b/data/maps/TrainerHill_1F/scripts.inc index 59f90b8bd345..6fba7a3b8111 100644 --- a/data/maps/TrainerHill_1F/scripts.inc +++ b/data/maps/TrainerHill_1F/scripts.inc @@ -1,4 +1,4 @@ -TrainerHill_1F_MapScripts:: @ 8268F71 +TrainerHill_1F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_OnResume map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, TrainerHill_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_OnFrame diff --git a/data/maps/TrainerHill_2F/scripts.inc b/data/maps/TrainerHill_2F/scripts.inc index 0e8775cd588e..aa5e46db59cf 100644 --- a/data/maps/TrainerHill_2F/scripts.inc +++ b/data/maps/TrainerHill_2F/scripts.inc @@ -1,4 +1,4 @@ -TrainerHill_2F_MapScripts:: @ 8268F81 +TrainerHill_2F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_OnResume map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, TrainerHill_OnWarp map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_OnFrame diff --git a/data/maps/TrainerHill_3F/scripts.inc b/data/maps/TrainerHill_3F/scripts.inc index eee6bd99d96a..74d9da2f32a7 100644 --- a/data/maps/TrainerHill_3F/scripts.inc +++ b/data/maps/TrainerHill_3F/scripts.inc @@ -1,4 +1,4 @@ -TrainerHill_3F_MapScripts:: @ 8268F91 +TrainerHill_3F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_OnFrame .byte 0 diff --git a/data/maps/TrainerHill_4F/scripts.inc b/data/maps/TrainerHill_4F/scripts.inc index 74ce0bf082f7..74676e3b2f43 100644 --- a/data/maps/TrainerHill_4F/scripts.inc +++ b/data/maps/TrainerHill_4F/scripts.inc @@ -1,4 +1,4 @@ -TrainerHill_4F_MapScripts:: @ 8268F9C +TrainerHill_4F_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_OnFrame .byte 0 diff --git a/data/maps/TrainerHill_Elevator/scripts.inc b/data/maps/TrainerHill_Elevator/scripts.inc index 2b3400418a89..f4ebc7ea918c 100644 --- a/data/maps/TrainerHill_Elevator/scripts.inc +++ b/data/maps/TrainerHill_Elevator/scripts.inc @@ -1,17 +1,17 @@ .set LOCALID_ATTENDANT, 1 -TrainerHill_Elevator_MapScripts:: @ 826934F +TrainerHill_Elevator_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_Elevator_OnFrame .byte 0 -TrainerHill_Elevator_OnFrame: @ 8269355 +TrainerHill_Elevator_OnFrame: map_script_2 VAR_TEMP_4, 0, TrainerHill_Elevator_EventScript_EnterElevator .2byte 0 -TrainerHill_Elevator_EventScript_Attendant:: @ 826935F +TrainerHill_Elevator_EventScript_Attendant:: end -TrainerHill_Elevator_EventScript_ExitToRoof:: @ 8269360 +TrainerHill_Elevator_EventScript_ExitToRoof:: applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof waitmovement 0 releaseall @@ -19,7 +19,7 @@ TrainerHill_Elevator_EventScript_ExitToRoof:: @ 8269360 waitstate end -TrainerHill_Elevator_EventScript_EnterElevator:: @ 8269375 +TrainerHill_Elevator_EventScript_EnterElevator:: applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerApproachAttendant waitmovement 0 applymovement LOCALID_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFacePlayer @@ -42,50 +42,50 @@ TrainerHill_Elevator_EventScript_EnterElevator:: @ 8269375 end @ Unused -TrainerHill_Elevator_EventScript_ExitFloorSelect:: @ 82693CE +TrainerHill_Elevator_EventScript_ExitFloorSelect:: goto TrainerHill_Elevator_EventScript_CloseFloorSelect end @ Functionally unused -TrainerHill_Elevator_EventScript_CloseFloorSelect:: @ 82693D4 +TrainerHill_Elevator_EventScript_CloseFloorSelect:: special CloseDeptStoreElevatorWindow releaseall end -TrainerHill_Elevator_EventScript_MoveElevator:: @ 82693D9 +TrainerHill_Elevator_EventScript_MoveElevator:: waitse special MoveElevator waitstate return -TrainerHill_Elevator_Movement_PlayerMoveToCenterOfElevator: @ 82693DF +TrainerHill_Elevator_Movement_PlayerMoveToCenterOfElevator: walk_up walk_up walk_right face_down step_end -TrainerHill_Elevator_Movement_PlayerApproachAttendant: @ 82693E4 +TrainerHill_Elevator_Movement_PlayerApproachAttendant: delay_16 walk_left step_end -TrainerHill_Elevator_Movement_PlayerExitElevator: @ 82693E7 +TrainerHill_Elevator_Movement_PlayerExitElevator: delay_16 walk_down walk_down step_end -TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof: @ 82693EB +TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof: face_down delay_16 step_end -TrainerHill_Elevator_Movement_AttendantFacePlayer: @ 82693EE +TrainerHill_Elevator_Movement_AttendantFacePlayer: face_right step_end -TrainerHill_Elevator_Movement_AttendantFaceDown: @ 82693F0 +TrainerHill_Elevator_Movement_AttendantFaceDown: face_down step_end diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index 7f8178d007d2..af4a4c12352e 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -3,7 +3,7 @@ .set LOCALID_GIRL, 4 .set LOCALID_MAN, 5 -TrainerHill_Entrance_MapScripts:: @ 82680AC +TrainerHill_Entrance_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_Entrance_OnResume map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, TrainerHill_Entrance_OnReturn map_script MAP_SCRIPT_ON_TRANSITION, TrainerHill_Entrance_OnTransition @@ -11,16 +11,16 @@ TrainerHill_Entrance_MapScripts:: @ 82680AC map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_Entrance_OnFrame .byte 0 -TrainerHill_Entrance_OnTransition: @ 82680C6 +TrainerHill_Entrance_OnTransition: setflag FLAG_LANDMARK_TRAINER_HILL getplayerxy VAR_TEMP_D, VAR_RESULT end @ Unused -TrainerHill_Entrance_OnWarp: @ 82680CF +TrainerHill_Entrance_OnWarp: end -TrainerHill_Entrance_OnResume: @ 82680D0 +TrainerHill_Entrance_OnResume: trainerhill_resumetimer setvar VAR_TEMP_0, 0 trainerhill_getusingereader @@ -30,40 +30,40 @@ TrainerHill_Entrance_OnResume: @ 82680D0 applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant end -TrainerHill_Entrance_EventScript_TryFaceAttendant:: @ 82680FF +TrainerHill_Entrance_EventScript_TryFaceAttendant:: trainerhill_getwon compare VAR_RESULT, TRUE goto_if_eq TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant end -TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant:: @ 826811A +TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant:: end -TrainerHill_Entrance_OnReturn: @ 826811B +TrainerHill_Entrance_OnReturn: addobject LOCALID_NURSE addobject LOCALID_ATTENDANT addobject LOCALID_MAN addobject LOCALID_GIRL end -TrainerHill_Entrance_OnLoad: @ 8268128 +TrainerHill_Entrance_OnLoad: compare VAR_TEMP_D, 17 call_if_eq TrainerHill_Entrance_EventScript_OpenCounterDoor end -TrainerHill_Entrance_EventScript_OpenCounterDoor:: @ 8268134 +TrainerHill_Entrance_EventScript_OpenCounterDoor:: setmetatile 17, 10, METATILE_TrainerHill_GreenFloorTile, 0 return -TrainerHill_Entrance_OnFrame: @ 826813E +TrainerHill_Entrance_OnFrame: map_script_2 VAR_TEMP_0, 0, TrainerHill_Entrance_EventScript_ExitChallenge map_script_2 VAR_TEMP_D, 17, TrainerHill_Entrance_EventScript_ExitElevator map_script_2 VAR_TEMP_5, 1, TrainerHill_Entrance_EventScript_EntryTrigger map_script_2 VAR_TEMP_1, 1, TrainerHill_EventScript_WarpToEntranceCounter .2byte 0 -TrainerHill_Entrance_EventScript_ExitElevator:: @ 8268160 +TrainerHill_Entrance_EventScript_ExitElevator:: lockall applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerExitElevator waitmovement 0 @@ -75,7 +75,7 @@ TrainerHill_Entrance_EventScript_ExitElevator:: @ 8268160 releaseall end -TrainerHill_Entrance_EventScript_ExitChallenge:: @ 8268182 +TrainerHill_Entrance_EventScript_ExitChallenge:: setvar VAR_TEMP_0, 1 trainerhill_getstatus switch VAR_RESULT @@ -83,27 +83,27 @@ TrainerHill_Entrance_EventScript_ExitChallenge:: @ 8268182 case TRAINER_HILL_PLAYER_STATUS_ECARD_SCANNED, TrainerHill_Entrance_EventScript_ExitChallengeECard case TRAINER_HILL_PLAYER_STATUS_NORMAL, TrainerHill_Entrance_EventScript_EndExitChallenge -TrainerHill_Entrance_EventScript_ExitChallengeLost:: @ 82681B5 +TrainerHill_Entrance_EventScript_ExitChallengeLost:: lockall applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant msgbox TrainerHill_Entrance_Text_TooBadTremendousEffort, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_PlayerExitChallenge -TrainerHill_Entrance_EventScript_ExitChallengeECard:: @ 82681CA +TrainerHill_Entrance_EventScript_ExitChallengeECard:: lockall applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant msgbox TrainerHill_Entrance_Text_MovedReceptionHereForSwitch, MSGBOX_DEFAULT -TrainerHill_Entrance_EventScript_PlayerExitChallenge:: @ 82681DA +TrainerHill_Entrance_EventScript_PlayerExitChallenge:: closemessage applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter waitmovement 0 setvar VAR_TRAINER_HILL_IS_ACTIVE, 0 special HealPlayerParty releaseall -TrainerHill_Entrance_EventScript_EndExitChallenge:: @ 82681EE +TrainerHill_Entrance_EventScript_EndExitChallenge:: end -TrainerHill_Entrance_EventScript_Nurse:: @ 82681EF +TrainerHill_Entrance_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -111,7 +111,7 @@ TrainerHill_Entrance_EventScript_Nurse:: @ 82681EF release end -TrainerHill_Entrance_EventScript_Attendant:: @ 82681FD +TrainerHill_Entrance_EventScript_Attendant:: lock faceplayer trainerhill_inchallenge @@ -120,13 +120,13 @@ TrainerHill_Entrance_EventScript_Attendant:: @ 82681FD msgbox TrainerHill_Entrance_Text_HopeYouGiveItYourBest, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_AttendantEnd -TrainerHill_Entrance_EventScript_ThanksForPlaying:: @ 826821F +TrainerHill_Entrance_EventScript_ThanksForPlaying:: msgbox TrainerHill_Entrance_Text_ThankYouForPlaying, MSGBOX_DEFAULT -TrainerHill_Entrance_EventScript_AttendantEnd:: @ 8268227 +TrainerHill_Entrance_EventScript_AttendantEnd:: release end -TrainerHill_Entrance_EventScript_EntryTrigger:: @ 8268229 +TrainerHill_Entrance_EventScript_EntryTrigger:: lockall applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant goto_if_unset FLAG_SYS_GAME_CLEAR, TrainerHill_Entrance_EventScript_Closed @@ -140,9 +140,9 @@ TrainerHill_Entrance_EventScript_EntryTrigger:: @ 8268229 msgbox TrainerHill_Entrance_Text_TrainersUpToFloorX, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_AskChallengeTrainers -TrainerHill_Entrance_EventScript_AllFloorsUsed:: @ 8268275 +TrainerHill_Entrance_EventScript_AllFloorsUsed:: msgbox TrainerHill_Entrance_Text_TrainersInEveryRoom, MSGBOX_DEFAULT -TrainerHill_Entrance_EventScript_AskChallengeTrainers:: @ 826827D +TrainerHill_Entrance_EventScript_AskChallengeTrainers:: message TrainerHill_Entrance_Text_LikeToChallengeTrainers waitmessage multichoice 15, 6, MULTI_YESNOINFO, FALSE @@ -153,12 +153,12 @@ TrainerHill_Entrance_EventScript_AskChallengeTrainers:: @ 826827D case MULTI_B_PRESSED, TrainerHill_Entrance_EventScript_CancelEntry end -TrainerHill_Entrance_EventScript_Info:: @ 82682BA +TrainerHill_Entrance_EventScript_Info:: msgbox TrainerHill_Entrance_Text_ExplainTrainerHill, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_AskChallengeTrainers end -TrainerHill_Entrance_EventScript_ChooseChallenge:: @ 82682C8 +TrainerHill_Entrance_EventScript_ChooseChallenge:: multichoice 13, 2, MULTI_TAG_MATCH_TYPE, FALSE switch VAR_RESULT case 4, TrainerHill_Entrance_EventScript_CancelEntry @@ -172,7 +172,7 @@ TrainerHill_Entrance_EventScript_ChooseChallenge:: @ 82682C8 releaseall end -TrainerHill_Entrance_EventScript_CancelEntry:: @ 8268314 +TrainerHill_Entrance_EventScript_CancelEntry:: setvar VAR_TEMP_5, 0 msgbox TrainerHill_Entrance_Text_PleaseVisitUsAgain, MSGBOX_DEFAULT closemessage @@ -181,7 +181,7 @@ TrainerHill_Entrance_EventScript_CancelEntry:: @ 8268314 releaseall end -TrainerHill_Entrance_EventScript_SaveGame:: @ 826832E +TrainerHill_Entrance_EventScript_SaveGame:: msgbox TrainerHill_Entrance_Text_SaveGameBeforeEnter, MSGBOX_DEFAULT trainerhill_setsaved setvar VAR_TEMP_5, 1 @@ -191,12 +191,12 @@ TrainerHill_Entrance_EventScript_SaveGame:: @ 826832E trainerhill_setsaved return -TrainerHill_Entrance_EventScript_SaveFailed:: @ 826835C +TrainerHill_Entrance_EventScript_SaveFailed:: trainerhill_clearsaved goto TrainerHill_Entrance_EventScript_CancelEntry end -TrainerHill_Entrance_EventScript_Closed:: @ 826836A +TrainerHill_Entrance_EventScript_Closed:: msgbox TrainerHill_Entrance_Text_StillGettingReady, MSGBOX_DEFAULT closemessage applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter @@ -204,25 +204,25 @@ TrainerHill_Entrance_EventScript_Closed:: @ 826836A releaseall end -TrainerHill_Entrance_Movement_PlayerFaceAttendant: @ 826837F +TrainerHill_Entrance_Movement_PlayerFaceAttendant: face_right step_end -TrainerHill_Entrance_Movement_PushPlayerBackFromCounter: @ 8268381 +TrainerHill_Entrance_Movement_PushPlayerBackFromCounter: walk_down step_end @ Unused -TrainerHill_Entrance_Movement_FaceUp: @ 8268383 +TrainerHill_Entrance_Movement_FaceUp: face_up step_end -TrainerHill_Entrance_Movement_PlayerExitElevator: @ 8268385 +TrainerHill_Entrance_Movement_PlayerExitElevator: walk_down walk_down step_end -TrainerHill_Entrance_EventScript_Records:: @ 8268388 +TrainerHill_Entrance_EventScript_Records:: lockall fadescreen FADE_TO_BLACK special ShowTrainerHillRecords @@ -230,25 +230,25 @@ TrainerHill_Entrance_EventScript_Records:: @ 8268388 releaseall end -TrainerHill_Entrance_EventScript_Man:: @ 8268391 +TrainerHill_Entrance_EventScript_Man:: goto_if_unset FLAG_SYS_GAME_CLEAR, TrainerHill_Entrance_EventScript_ManTrainerHillClosed msgbox TrainerHill_Entrance_Text_WhatSortOfTrainersAreAhead, MSGBOX_NPC end -TrainerHill_Entrance_EventScript_ManTrainerHillClosed:: @ 82683A3 +TrainerHill_Entrance_EventScript_ManTrainerHillClosed:: msgbox TrainerHill_Entrance_Text_CantWaitToTestTheWaters, MSGBOX_NPC end -TrainerHill_Entrance_EventScript_Girl:: @ 82683AC +TrainerHill_Entrance_EventScript_Girl:: goto_if_unset FLAG_SYS_GAME_CLEAR, TrainerHill_Entrance_EventScript_GirlTrainerHillClosed msgbox TrainerHill_Entrance_Text_FriendsTryingToReachTimeBoardTop, MSGBOX_NPC end -TrainerHill_Entrance_EventScript_GirlTrainerHillClosed:: @ 82683BE +TrainerHill_Entrance_EventScript_GirlTrainerHillClosed:: msgbox TrainerHill_Entrance_Text_DoYouKnowWhenTheyOpen, MSGBOX_NPC end -TrainerHill_Entrance_EventScript_Clerk:: @ 82683C7 +TrainerHill_Entrance_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -260,7 +260,7 @@ TrainerHill_Entrance_EventScript_Clerk:: @ 82683C7 end .align 2 -TrainerHill_Entrance_Pokemart_Basic: @ 82683E8 +TrainerHill_Entrance_Pokemart_Basic: .2byte ITEM_SUPER_POTION .2byte ITEM_ANTIDOTE .2byte ITEM_PARALYZE_HEAL @@ -276,14 +276,14 @@ TrainerHill_Entrance_Pokemart_Basic: @ 82683E8 release end -TrainerHill_Entrance_EventScript_ExpandedPokemart:: @ 8268402 +TrainerHill_Entrance_EventScript_ExpandedPokemart:: pokemart TrainerHill_Entrance_Pokemart_Expanded msgbox gText_PleaseComeAgain, MSGBOX_DEFAULT release end .align 2 -TrainerHill_Entrance_Pokemart_Expanded: @ 8268414 +TrainerHill_Entrance_Pokemart_Expanded: .2byte ITEM_HYPER_POTION .2byte ITEM_MAX_POTION .2byte ITEM_FULL_RESTORE @@ -300,69 +300,69 @@ TrainerHill_Entrance_Pokemart_Expanded: @ 8268414 release end -TrainerHill_Entrance_Text_StillGettingReady: @ 8268430 +TrainerHill_Entrance_Text_StillGettingReady: .string "This is the TRAINER HILL where\n" .string "you may enjoy tag battles with many\l" .string "TRAINERS.\p" .string "Unfortunately, we're still getting\n" .string "things ready. Please come back later!$" -TrainerHill_Entrance_Text_WelcomeToTrainerHill: @ 82684C6 +TrainerHill_Entrance_Text_WelcomeToTrainerHill: .string "Welcome!\p" .string "This is the TRAINER HILL where\n" .string "you may enjoy tag battles with many\l" .string "TRAINERS!$" -TrainerHill_Entrance_Text_SaveGameBeforeEnter: @ 826851C +TrainerHill_Entrance_Text_SaveGameBeforeEnter: .string "Is this your first visit here?\p" .string "Before you enter, please save\n" .string "your game.$" -TrainerHill_Entrance_Text_TrainersUpToFloorX: @ 8268564 +TrainerHill_Entrance_Text_TrainersUpToFloorX: .string "Let's see…\n" .string "The TRAINERS here now are…\p" .string "Up to floor no. {STR_VAR_1}.$" -TrainerHill_Entrance_Text_TrainersInEveryRoom: @ 826859E +TrainerHill_Entrance_Text_TrainersInEveryRoom: .string "Let's see…\n" .string "The TRAINERS here now are…\p" .string "There appear to be TRAINERS gathered\n" .string "in every room.$" -TrainerHill_Entrance_Text_LikeToChallengeTrainers: @ 82685F8 +TrainerHill_Entrance_Text_LikeToChallengeTrainers: .string "Would you like to challenge the\n" .string "waiting TRAINERS?$" -TrainerHill_Entrance_Text_TimeProgessGetSetGo: @ 826862A +TrainerHill_Entrance_Text_TimeProgessGetSetGo: .string "I will time your progress.\n" .string "Best of luck!\p" .string "On your marks…\p" .string "Get set…\p" .string "Go!$" -TrainerHill_Entrance_Text_PleaseVisitUsAgain: @ 826866F +TrainerHill_Entrance_Text_PleaseVisitUsAgain: .string "Please do visit us again!$" -TrainerHill_Entrance_Text_TooBadTremendousEffort: @ 8268689 +TrainerHill_Entrance_Text_TooBadTremendousEffort: .string "That was too bad.\p" .string "I think you put in a tremendous\n" .string "effort in your battling.\p" .string "Please come back and try again!$" -TrainerHill_Entrance_Text_HopeYouGiveItYourBest: @ 82686F4 +TrainerHill_Entrance_Text_HopeYouGiveItYourBest: .string "I hope you give it your best.$" -TrainerHill_Entrance_Text_MovedReceptionHereForSwitch: @ 8268712 +TrainerHill_Entrance_Text_MovedReceptionHereForSwitch: .string "When the TRAINERS switch places,\n" .string "the movement can be hectic.\p" .string "To avoid the stampede, we moved\n" .string "the reception counter here.\p" .string "I'm sorry for the inconvenience.$" -TrainerHill_Entrance_Text_ThankYouForPlaying: @ 82687AC +TrainerHill_Entrance_Text_ThankYouForPlaying: .string "Thank you for playing!$" -TrainerHill_Entrance_Text_ExplainTrainerHill: @ 82687C3 +TrainerHill_Entrance_Text_ExplainTrainerHill: .string "Here at the TRAINER HILL, we conduct\n" .string "an event called the Time Attack.\p" .string "It is a race that measures how long\n" @@ -376,13 +376,13 @@ TrainerHill_Entrance_Text_ExplainTrainerHill: @ 82687C3 .string "be awarded.$" @ Unused -TrainerHill_Entrance_Text_NeedAtLeastTwoPokemon: @ 826890D +TrainerHill_Entrance_Text_NeedAtLeastTwoPokemon: .string "Oh, I'm sorry, but you appear to have\n" .string "only one POKéMON with you.\p" .string "You will need at least two POKéMON\n" .string "to enter this event.$" -TrainerHill_Roof_Text_YouFinallyCameBravo: @ 8268986 +TrainerHill_Roof_Text_YouFinallyCameBravo: .string "Hm! Hm!\p" .string "You finally came!\n" .string "Yes, you have arrived!\p" @@ -398,15 +398,15 @@ TrainerHill_Roof_Text_YouFinallyCameBravo: @ 8268986 .string "Anyway, I watched you on your way up.\n" .string "Marvelous battling! Bravo, indeed!$" -TrainerHill_Roof_Text_HaveTheMostMarvelousGift: @ 8268AC5 +TrainerHill_Roof_Text_HaveTheMostMarvelousGift: .string "For a marvelous someone like you,\n" .string "I have the most marvelous gift!$" -TrainerHill_Roof_Text_FullUpBeBackLaterForThis: @ 8268B07 +TrainerHill_Roof_Text_FullUpBeBackLaterForThis: .string "Oh, no, full up with things!\n" .string "You'll be back later for this!$" -TrainerHill_Roof_Text_GotHereMarvelouslyQuickly: @ 8268B43 +TrainerHill_Roof_Text_GotHereMarvelouslyQuickly: .string "Oh, hold on here! Did you possibly get\n" .string "here marvelously quickly?\p" .string "How splendid! You needn't have\n" @@ -414,11 +414,11 @@ TrainerHill_Roof_Text_GotHereMarvelouslyQuickly: @ 8268B43 .string "That is so delightful. I'll have the Time\n" .string "Board at the reception updated!$" -TrainerHill_Roof_Text_YouWerentVeryQuick: @ 8268C03 +TrainerHill_Roof_Text_YouWerentVeryQuick: .string "But, oh…\n" .string "You weren't very quick getting here.$" -TrainerHill_Roof_Text_ArriveZippierNextTime: @ 8268C31 +TrainerHill_Roof_Text_ArriveZippierNextTime: .string "Perhaps it would please me more if you\n" .string "arrived zippier next time.\p" .string "Then, I should be pleased to form\n" @@ -426,39 +426,39 @@ TrainerHill_Roof_Text_ArriveZippierNextTime: @ 8268C31 .string "Until we meet again, amigo!$" @ Unused -TrainerHill_Roof_Text_BuiltTrainerHillToFindPartner: @ 8268CC6 +TrainerHill_Roof_Text_BuiltTrainerHillToFindPartner: .string "I had the TRAINER HILL built for but\n" .string "one reason and one only!\p" .string "To find the most suitable partner\n" .string "with whom I may form a tag team!$" -TrainerHill_Entrance_Text_ChallengeTime: @ 8268D47 +TrainerHill_Entrance_Text_ChallengeTime: .string "{STR_VAR_1} min. {STR_VAR_2}.{STR_VAR_3} sec.$" -TrainerHill_Entrance_Text_WhatSortOfTrainersAreAhead: @ 8268D5A +TrainerHill_Entrance_Text_WhatSortOfTrainersAreAhead: .string "Who knows what sort of TRAINERS\n" .string "and POKéMON combos are ahead?\p" .string "All I know is that I'll knock aside\n" .string "anyone that stands in my way!$" -TrainerHill_Entrance_Text_CantWaitToTestTheWaters: @ 8268DDA +TrainerHill_Entrance_Text_CantWaitToTestTheWaters: .string "I heard tough TRAINERS come to this\n" .string "TRAINER HILL from all over.\p" .string "I can't wait to test the waters!\p" .string "I'll knock aside anyone that stands\n" .string "in my way!$" -TrainerHill_Entrance_Text_FriendsTryingToReachTimeBoardTop: @ 8268E6A +TrainerHill_Entrance_Text_FriendsTryingToReachTimeBoardTop: .string "Do you see the Time Board over there?\p" .string "My friends and I are trying to see who\n" .string "can reach the top in the least time.$" -TrainerHill_Entrance_Text_DoYouKnowWhenTheyOpen: @ 8268EDC +TrainerHill_Entrance_Text_DoYouKnowWhenTheyOpen: .string "Do you know when they're opening\n" .string "this place up?\p" .string "I'm waiting here to be the first\n" .string "challenger ever!$" -TrainerHill_Elevator_Text_ReturnToReception: @ 8268F3E +TrainerHill_Elevator_Text_ReturnToReception: .string "Would you like to return to\n" .string "the reception counter?$" diff --git a/data/maps/TrainerHill_Roof/scripts.inc b/data/maps/TrainerHill_Roof/scripts.inc index e239ed01056c..d0e63c38a7e3 100644 --- a/data/maps/TrainerHill_Roof/scripts.inc +++ b/data/maps/TrainerHill_Roof/scripts.inc @@ -1,9 +1,9 @@ -TrainerHill_Roof_MapScripts:: @ 8268FA7 +TrainerHill_Roof_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, TrainerHill_OnResume map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_OnFrame .byte 0 -TrainerHill_Roof_EventScript_Owner:: @ 8268FB2 +TrainerHill_Roof_EventScript_Owner:: trainerhill_settrainerflags lock faceplayer @@ -12,15 +12,15 @@ TrainerHill_Roof_EventScript_Owner:: @ 8268FB2 case 0, TrainerHill_Roof_EventScript_Arrived case 1, TrainerHill_Roof_EventScript_GivePrize case 2, TrainerHill_Roof_EventScript_AlreadyReceivedPrize -TrainerHill_Roof_EventScript_Arrived:: @ 8268FEA +TrainerHill_Roof_EventScript_Arrived:: msgbox TrainerHill_Roof_Text_YouFinallyCameBravo, MSGBOX_DEFAULT -TrainerHill_Roof_EventScript_GivePrize:: @ 8268FF2 +TrainerHill_Roof_EventScript_GivePrize:: trainerhill_giveprize switch VAR_RESULT case 0, TrainerHill_Roof_EventScript_ReceivePrize case 1, TrainerHill_Roof_EventScript_NoRoomForPrize case 2, TrainerHill_Roof_EventScript_CheckFinalTime -TrainerHill_Roof_EventScript_ReceivePrize:: @ 8269020 +TrainerHill_Roof_EventScript_ReceivePrize:: msgbox TrainerHill_Roof_Text_HaveTheMostMarvelousGift, MSGBOX_DEFAULT playfanfare MUS_LEVEL_UP message gText_ObtainedTheItem @@ -28,34 +28,34 @@ TrainerHill_Roof_EventScript_ReceivePrize:: @ 8269020 waitmessage goto TrainerHill_Roof_EventScript_CheckFinalTime -TrainerHill_Roof_EventScript_NoRoomForPrize:: @ 8269037 +TrainerHill_Roof_EventScript_NoRoomForPrize:: msgbox TrainerHill_Roof_Text_HaveTheMostMarvelousGift, MSGBOX_DEFAULT msgbox gText_TheBagIsFull, MSGBOX_DEFAULT msgbox TrainerHill_Roof_Text_FullUpBeBackLaterForThis, MSGBOX_DEFAULT goto TrainerHill_Roof_EventScript_CheckFinalTime -TrainerHill_Roof_EventScript_CheckFinalTime:: @ 8269054 +TrainerHill_Roof_EventScript_CheckFinalTime:: trainerhill_finaltime switch VAR_RESULT case 0, TrainerHill_Roof_EventScript_NewRecord case 1, TrainerHill_Roof_EventScript_NoNewRecord case 2, TrainerHill_Roof_EventScript_EndSpeakToOwner -TrainerHill_Roof_EventScript_NewRecord:: @ 8269082 +TrainerHill_Roof_EventScript_NewRecord:: msgbox TrainerHill_Roof_Text_GotHereMarvelouslyQuickly, MSGBOX_DEFAULT goto TrainerHill_Roof_EventScript_EndSpeakToOwner end -TrainerHill_Roof_EventScript_NoNewRecord:: @ 8269090 +TrainerHill_Roof_EventScript_NoNewRecord:: msgbox TrainerHill_Roof_Text_YouWerentVeryQuick, MSGBOX_DEFAULT goto TrainerHill_Roof_EventScript_EndSpeakToOwner end -TrainerHill_Roof_EventScript_EndSpeakToOwner:: @ 826909E +TrainerHill_Roof_EventScript_EndSpeakToOwner:: msgbox TrainerHill_Roof_Text_ArriveZippierNextTime, MSGBOX_DEFAULT release end -TrainerHill_Roof_EventScript_AlreadyReceivedPrize:: @ 82690A8 +TrainerHill_Roof_EventScript_AlreadyReceivedPrize:: msgbox TrainerHill_Roof_Text_ArriveZippierNextTime, MSGBOX_DEFAULT release end diff --git a/data/maps/Underwater_MarineCave/scripts.inc b/data/maps/Underwater_MarineCave/scripts.inc index b1cc353f037e..cbd158e27316 100644 --- a/data/maps/Underwater_MarineCave/scripts.inc +++ b/data/maps/Underwater_MarineCave/scripts.inc @@ -1,13 +1,13 @@ -Underwater_MarineCave_MapScripts:: @ 823AFB8 +Underwater_MarineCave_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_MarineCave_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Underwater_MarineCave_OnTransition .byte 0 -Underwater_MarineCave_OnTransition: @ 823AFC3 +Underwater_MarineCave_OnTransition: setflag FLAG_ARRIVED_AT_MARINE_CAVE_EMERGE_SPOT end -Underwater_MarineCave_OnResume: @ 823AFC7 +Underwater_MarineCave_OnResume: setdivewarp MAP_MARINE_CAVE_ENTRANCE, 255, 10, 17 end diff --git a/data/maps/Underwater_Route105/scripts.inc b/data/maps/Underwater_Route105/scripts.inc index 41cd8bfbe76b..af3f6769ec34 100644 --- a/data/maps/Underwater_Route105/scripts.inc +++ b/data/maps/Underwater_Route105/scripts.inc @@ -1,8 +1,8 @@ -Underwater_Route105_MapScripts:: @ 81F773D +Underwater_Route105_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_Route105_OnResume .byte 0 -Underwater_Route105_OnResume: @ 81F7743 +Underwater_Route105_OnResume: call AbnormalWeather_Underwater_SetupEscapeWarp end diff --git a/data/maps/Underwater_Route124/scripts.inc b/data/maps/Underwater_Route124/scripts.inc index 2a72dfb11398..f14d5824b600 100644 --- a/data/maps/Underwater_Route124/scripts.inc +++ b/data/maps/Underwater_Route124/scripts.inc @@ -1,3 +1,3 @@ -Underwater_Route124_MapScripts:: @ 81F7722 +Underwater_Route124_MapScripts:: .byte 0 diff --git a/data/maps/Underwater_Route125/scripts.inc b/data/maps/Underwater_Route125/scripts.inc index 662120e5e6ee..cc16edf7bc66 100644 --- a/data/maps/Underwater_Route125/scripts.inc +++ b/data/maps/Underwater_Route125/scripts.inc @@ -1,8 +1,8 @@ -Underwater_Route125_MapScripts:: @ 81F7749 +Underwater_Route125_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_Route125_OnResume .byte 0 -Underwater_Route125_OnResume: @ 81F774F +Underwater_Route125_OnResume: call AbnormalWeather_Underwater_SetupEscapeWarp end diff --git a/data/maps/Underwater_Route126/scripts.inc b/data/maps/Underwater_Route126/scripts.inc index 71d43e1417f5..6721e8a0fa4d 100644 --- a/data/maps/Underwater_Route126/scripts.inc +++ b/data/maps/Underwater_Route126/scripts.inc @@ -1,3 +1,3 @@ -Underwater_Route126_MapScripts:: @ 81F7723 +Underwater_Route126_MapScripts:: .byte 0 diff --git a/data/maps/Underwater_Route127/scripts.inc b/data/maps/Underwater_Route127/scripts.inc index 552b9aab8241..b6e21b030403 100644 --- a/data/maps/Underwater_Route127/scripts.inc +++ b/data/maps/Underwater_Route127/scripts.inc @@ -1,8 +1,8 @@ -Underwater_Route127_MapScripts:: @ 81F7724 +Underwater_Route127_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_Route127_OnResume .byte 0 -Underwater_Route127_OnResume: @ 81F772A +Underwater_Route127_OnResume: call AbnormalWeather_Underwater_SetupEscapeWarp end diff --git a/data/maps/Underwater_Route128/scripts.inc b/data/maps/Underwater_Route128/scripts.inc index a050afd93813..215268cf585c 100644 --- a/data/maps/Underwater_Route128/scripts.inc +++ b/data/maps/Underwater_Route128/scripts.inc @@ -1,3 +1,3 @@ -Underwater_Route128_MapScripts:: @ 81F7730 +Underwater_Route128_MapScripts:: .byte 0 diff --git a/data/maps/Underwater_Route129/scripts.inc b/data/maps/Underwater_Route129/scripts.inc index f9f84841e5db..3e2813d4d44f 100644 --- a/data/maps/Underwater_Route129/scripts.inc +++ b/data/maps/Underwater_Route129/scripts.inc @@ -1,8 +1,8 @@ -Underwater_Route129_MapScripts:: @ 81F7731 +Underwater_Route129_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_Route129_OnResume .byte 0 -Underwater_Route129_OnResume: @ 81F7737 +Underwater_Route129_OnResume: call AbnormalWeather_Underwater_SetupEscapeWarp end diff --git a/data/maps/Underwater_Route134/scripts.inc b/data/maps/Underwater_Route134/scripts.inc index ef62997de111..909b2f8b10d0 100644 --- a/data/maps/Underwater_Route134/scripts.inc +++ b/data/maps/Underwater_Route134/scripts.inc @@ -1,8 +1,8 @@ -Underwater_Route134_MapScripts:: @ 82390B5 +Underwater_Route134_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_Route134_OnResume .byte 0 -Underwater_Route134_OnResume: @ 82390BB +Underwater_Route134_OnResume: setdivewarp MAP_ROUTE134, 255, 60, 31 end diff --git a/data/maps/Underwater_SeafloorCavern/scripts.inc b/data/maps/Underwater_SeafloorCavern/scripts.inc index 11863246144b..2e0613c04cbd 100644 --- a/data/maps/Underwater_SeafloorCavern/scripts.inc +++ b/data/maps/Underwater_SeafloorCavern/scripts.inc @@ -1,23 +1,23 @@ -Underwater_SeafloorCavern_MapScripts:: @ 823433B +Underwater_SeafloorCavern_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_SeafloorCavern_OnResume map_script MAP_SCRIPT_ON_TRANSITION, Underwater_SeafloorCavern_OnTransition map_script MAP_SCRIPT_ON_LOAD, Underwater_SeafloorCavern_OnLoad .byte 0 -Underwater_SeafloorCavern_OnTransition: @ 823434B +Underwater_SeafloorCavern_OnTransition: setflag FLAG_LANDMARK_SEAFLOOR_CAVERN goto_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, Underwater_SeafloorCavern_EventScript_HideSubmarine end -Underwater_SeafloorCavern_EventScript_HideSubmarine:: @ 8234358 +Underwater_SeafloorCavern_EventScript_HideSubmarine:: setflag FLAG_HIDE_UNDERWATER_SEA_FLOOR_CAVERN_STOLEN_SUBMARINE end -Underwater_SeafloorCavern_OnLoad: @ 823435C +Underwater_SeafloorCavern_OnLoad: call_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles end -Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles:: @ 8234366 +Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles:: setmetatile 5, 3, METATILE_Underwater_RockWall, 1 setmetatile 6, 3, METATILE_Underwater_RockWall, 1 setmetatile 7, 3, METATILE_Underwater_RockWall, 1 @@ -32,15 +32,15 @@ Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles:: @ 8234366 setmetatile 8, 5, METATILE_Underwater_FloorShadow, 0 return -Underwater_SeafloorCavern_OnResume: @ 82343D3 +Underwater_SeafloorCavern_OnResume: setdivewarp MAP_SEAFLOOR_CAVERN_ENTRANCE, 255, 10, 17 end -Underwater_SeafloorCavern_EventScript_CheckStolenSub:: @ 82343DC +Underwater_SeafloorCavern_EventScript_CheckStolenSub:: msgbox Underwater_SeafloorCavern_Text_SubExplorer1, MSGBOX_SIGN end -Underwater_SeafloorCavern_Text_SubExplorer1: @ 82343E5 +Underwater_SeafloorCavern_Text_SubExplorer1: .string "“SUBMARINE EXPLORER 1” is painted\n" .string "on the hull.\p" .string "This is the submarine TEAM AQUA\n" diff --git a/data/maps/Underwater_SealedChamber/scripts.inc b/data/maps/Underwater_SealedChamber/scripts.inc index b1fb5e71a540..3d8aaf979fe6 100644 --- a/data/maps/Underwater_SealedChamber/scripts.inc +++ b/data/maps/Underwater_SealedChamber/scripts.inc @@ -1,8 +1,8 @@ -Underwater_SealedChamber_MapScripts:: @ 82390C4 +Underwater_SealedChamber_MapScripts:: map_script MAP_SCRIPT_ON_DIVE_WARP, Underwater_SealedChamber_OnDive .byte 0 -Underwater_SealedChamber_OnDive: @ 82390CA +Underwater_SealedChamber_OnDive: getplayerxy VAR_0x8004, VAR_0x8005 compare VAR_0x8004, 12 goto_if_ne Underwater_SealedChamber_EventScript_SurfaceRoute134 @@ -10,15 +10,15 @@ Underwater_SealedChamber_OnDive: @ 82390CA goto_if_ne Underwater_SealedChamber_EventScript_SurfaceRoute134 goto Underwater_SealedChamber_EventScript_SurfaceSealedChamber -Underwater_SealedChamber_EventScript_SurfaceRoute134:: @ 82390EA +Underwater_SealedChamber_EventScript_SurfaceRoute134:: setdivewarp MAP_ROUTE134, 255, 60, 31 end -Underwater_SealedChamber_EventScript_SurfaceSealedChamber:: @ 82390F3 +Underwater_SealedChamber_EventScript_SurfaceSealedChamber:: setdivewarp MAP_SEALED_CHAMBER_OUTER_ROOM, 255, 10, 19 end -Underwater_SealedChamber_EventScript_Braille:: @ 82390FC +Underwater_SealedChamber_EventScript_Braille:: lockall braillemessage Underwater_SealedChamber_Braille_GoUpHere waitbuttonpress diff --git a/data/maps/Underwater_SootopolisCity/scripts.inc b/data/maps/Underwater_SootopolisCity/scripts.inc index ec639604bec9..4346c284fac9 100644 --- a/data/maps/Underwater_SootopolisCity/scripts.inc +++ b/data/maps/Underwater_SootopolisCity/scripts.inc @@ -1,8 +1,8 @@ -Underwater_SootopolisCity_MapScripts:: @ 822D94C +Underwater_SootopolisCity_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, Underwater_SootopolisCity_OnResume .byte 0 -Underwater_SootopolisCity_OnResume: @ 822D952 +Underwater_SootopolisCity_OnResume: setdivewarp MAP_SOOTOPOLIS_CITY, 255, 29, 53 end diff --git a/data/maps/UnionRoom/scripts.inc b/data/maps/UnionRoom/scripts.inc index 13d7e1007900..8a9e7682a5d6 100644 --- a/data/maps/UnionRoom/scripts.inc +++ b/data/maps/UnionRoom/scripts.inc @@ -1,11 +1,11 @@ @ Note: LOCALID_UNION_ROOM_PLAYER_# are local ids for this map used elsewhere. They're defined in event_objects.h -UnionRoom_MapScripts:: @ 823D1A6 +UnionRoom_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, UnionRoom_OnResume map_script MAP_SCRIPT_ON_TRANSITION, UnionRoom_OnTransition .byte 0 -UnionRoom_OnResume: @ 823D1B1 +UnionRoom_OnResume: setflag FLAG_HIDE_UNION_ROOM_PLAYER_1 setflag FLAG_HIDE_UNION_ROOM_PLAYER_2 setflag FLAG_HIDE_UNION_ROOM_PLAYER_3 @@ -25,10 +25,10 @@ UnionRoom_OnResume: @ 823D1B1 special RunUnionRoom end -UnionRoom_OnTransition: @ 823D1E5 +UnionRoom_OnTransition: end -UnionRoom_EventScript_Player1:: @ 823D1E6 +UnionRoom_EventScript_Player1:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_1 @@ -36,7 +36,7 @@ UnionRoom_EventScript_Player1:: @ 823D1E6 release end -UnionRoom_EventScript_Player2:: @ 823D1F0 +UnionRoom_EventScript_Player2:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_2 @@ -44,7 +44,7 @@ UnionRoom_EventScript_Player2:: @ 823D1F0 release end -UnionRoom_EventScript_Player3:: @ 823D1FA +UnionRoom_EventScript_Player3:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_3 @@ -52,7 +52,7 @@ UnionRoom_EventScript_Player3:: @ 823D1FA release end -UnionRoom_EventScript_Player4:: @ 823D204 +UnionRoom_EventScript_Player4:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_4 @@ -60,7 +60,7 @@ UnionRoom_EventScript_Player4:: @ 823D204 release end -UnionRoom_EventScript_Player5:: @ 823D20E +UnionRoom_EventScript_Player5:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_5 @@ -68,7 +68,7 @@ UnionRoom_EventScript_Player5:: @ 823D20E release end -UnionRoom_EventScript_Player6:: @ 823D218 +UnionRoom_EventScript_Player6:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_6 @@ -76,7 +76,7 @@ UnionRoom_EventScript_Player6:: @ 823D218 release end -UnionRoom_EventScript_Player7:: @ 823D222 +UnionRoom_EventScript_Player7:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_7 @@ -84,7 +84,7 @@ UnionRoom_EventScript_Player7:: @ 823D222 release end -UnionRoom_EventScript_Player8:: @ 823D22C +UnionRoom_EventScript_Player8:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_PLAYER_8 @@ -92,7 +92,7 @@ UnionRoom_EventScript_Player8:: @ 823D22C release end -UnionRoom_EventScript_Attendant:: @ 823D236 +UnionRoom_EventScript_Attendant:: lock faceplayer setvar VAR_RESULT, UR_INTERACT_ATTENDANT @@ -100,7 +100,7 @@ UnionRoom_EventScript_Attendant:: @ 823D236 release end -UnionRoom_EventScript_Unused:: @ 823D240 +UnionRoom_EventScript_Unused:: lockall setvar VAR_RESULT, UR_INTERACT_UNUSED waitstate diff --git a/data/maps/VerdanturfTown/scripts.inc b/data/maps/VerdanturfTown/scripts.inc index a419c3319a53..133fd62865d2 100644 --- a/data/maps/VerdanturfTown/scripts.inc +++ b/data/maps/VerdanturfTown/scripts.inc @@ -1,15 +1,15 @@ .set LOCALID_TWIN, 2 -VerdanturfTown_MapScripts:: @ 81EB566 +VerdanturfTown_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_OnTransition .byte 0 -VerdanturfTown_OnTransition: @ 81EB56C +VerdanturfTown_OnTransition: setflag FLAG_VISITED_VERDANTURF_TOWN setvar VAR_CONTEST_HALL_STATE, 0 end -VerdanturfTown_EventScript_Twin:: @ 81EB575 +VerdanturfTown_EventScript_Twin:: lock faceplayer goto_if_set FLAG_RUSTURF_TUNNEL_OPENED, VerdanturfTown_EventScript_TwinTunnelOpen @@ -19,22 +19,22 @@ VerdanturfTown_EventScript_Twin:: @ 81EB575 release end -VerdanturfTown_EventScript_TwinTunnelOpen:: @ 81EB594 +VerdanturfTown_EventScript_TwinTunnelOpen:: msgbox VerdanturfTown_Text_ManDugTunnelForLove, MSGBOX_DEFAULT applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection waitmovement 0 release end -VerdanturfTown_EventScript_Man:: @ 81EB5A8 +VerdanturfTown_EventScript_Man:: msgbox VerdanturfTown_Text_AirCleanHere, MSGBOX_NPC end -VerdanturfTown_EventScript_Camper:: @ 81EB5B1 +VerdanturfTown_EventScript_Camper:: msgbox VerdanturfTown_Text_MakeBattleTentDebut, MSGBOX_NPC end -VerdanturfTown_EventScript_Boy:: @ 81EB5BA +VerdanturfTown_EventScript_Boy:: lock faceplayer goto_if_set FLAG_RUSTURF_TUNNEL_OPENED, VerdanturfTown_EventScript_BoyTunnelOpen @@ -42,28 +42,28 @@ VerdanturfTown_EventScript_Boy:: @ 81EB5BA release end -VerdanturfTown_EventScript_BoyTunnelOpen:: @ 81EB5CF +VerdanturfTown_EventScript_BoyTunnelOpen:: msgbox VerdanturfTown_Text_EasyToGetToRustboroNow, MSGBOX_DEFAULT release end -VerdanturfTown_EventScript_TownSign:: @ 81EB5D9 +VerdanturfTown_EventScript_TownSign:: msgbox VerdanturfTown_Text_TownSign, MSGBOX_SIGN end -VerdanturfTown_EventScript_WandasHouseSign:: @ 81EB5E2 +VerdanturfTown_EventScript_WandasHouseSign:: msgbox VerdanturfTown_Text_WandasHouse, MSGBOX_SIGN end -VerdanturfTown_EventScript_BattleTentSign:: @ 81EB5EB +VerdanturfTown_EventScript_BattleTentSign:: msgbox VerdanturfTown_Text_BattleTentSign, MSGBOX_SIGN end -VerdanturfTown_EventScript_RusturfTunnelSign:: @ 81EB5F4 +VerdanturfTown_EventScript_RusturfTunnelSign:: msgbox VerdanturfTown_Text_RusturfTunnelSign, MSGBOX_SIGN end -VerdanturfTown_Text_ManTryingToDigTunnel: @ 81EB5FD +VerdanturfTown_Text_ManTryingToDigTunnel: .string "My papa told me.\p" .string "He says this tunnel is full of\n" .string "timid POKéMON.\p" @@ -74,25 +74,25 @@ VerdanturfTown_Text_ManTryingToDigTunnel: @ 81EB5FD .string "But there's one man. He's trying to dig\n" .string "the tunnel by himself!$" -VerdanturfTown_Text_ManDugTunnelForLove: @ 81EB6E0 +VerdanturfTown_Text_ManDugTunnelForLove: .string "There was a man who dug a tunnel for\n" .string "a lady he loved.\p" .string "I don't really get it, but hey!$" -VerdanturfTown_Text_AirCleanHere: @ 81EB736 +VerdanturfTown_Text_AirCleanHere: .string "The way the winds blow, volcanic ash\n" .string "is never blown in this direction.\p" .string "The air is clean and delicious here.\n" .string "Living here should do wonders for even\l" .string "frail and sickly people.$" -VerdanturfTown_Text_MakeBattleTentDebut: @ 81EB7E2 +VerdanturfTown_Text_MakeBattleTentDebut: .string "My POKéMON and I, we've been riding\n" .string "a hot winning streak.\p" .string "So I decided to make my BATTLE TENT\n" .string "debut in this town.$" -VerdanturfTown_Text_GuyTryingToBustThroughCave: @ 81EB854 +VerdanturfTown_Text_GuyTryingToBustThroughCave: .string "Did you see the cave next to the\n" .string "POKéMON MART?\p" .string "There's a guy in there who's trying to\n" @@ -101,25 +101,25 @@ VerdanturfTown_Text_GuyTryingToBustThroughCave: @ 81EB854 .string "It'd be great if we could go through…\n" .string "It'll make it easy to visit RUSTBORO.$" -VerdanturfTown_Text_EasyToGetToRustboroNow: @ 81EB935 +VerdanturfTown_Text_EasyToGetToRustboroNow: .string "That cave next to the POKéMON MART\n" .string "is now a tunnel to the other side.\p" .string "It's great--it's easy to go shop for\n" .string "new DEVON products in RUSTBORO now.$" -VerdanturfTown_Text_TownSign: @ 81EB9C4 +VerdanturfTown_Text_TownSign: .string "VERDANTURF TOWN\p" .string "“The windswept highlands with the\n" .string "sweet fragrance of grass.”$" -VerdanturfTown_Text_WandasHouse: @ 81EBA11 +VerdanturfTown_Text_WandasHouse: .string "WANDA'S HOUSE$" -VerdanturfTown_Text_BattleTentSign: @ 81EBA1F +VerdanturfTown_Text_BattleTentSign: .string "BATTLE TENT VERDANTURF SITE\n" .string "“Feast Your Eyes on Battles!”$" -VerdanturfTown_Text_RusturfTunnelSign: @ 81EBA59 +VerdanturfTown_Text_RusturfTunnelSign: .string "RUSTURF TUNNEL\n" .string "“Linking RUSTBORO and VERDANTURF\p" .string "“The tunnel project has been\n" diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index f917db9ed442..755e6d8be724 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -2,7 +2,7 @@ .set LOCALID_OPPONENT, 2 .set LOCALID_ATTENDANT, 3 -VerdanturfTown_BattleTentBattleRoom_MapScripts:: @ 82022FA +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 @@ -12,11 +12,11 @@ VerdanturfTown_BattleTentBattleRoom_MapScripts:: @ 82022FA @ 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: @ 820230A +VerdanturfTown_BattleTentBattleRoom_OnTransition: call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx end -VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8202310 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender compare VAR_RESULT, MALE goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale @@ -24,28 +24,28 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8202310 goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return -VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 8202328 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8202333 +VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -VerdanturfTown_BattleTentBattleRoom_OnFrame: @ 820233E +VerdanturfTown_BattleTentBattleRoom_OnFrame: map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom .2byte 0 -VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 8202348 +VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom:: showobjectat LOCALID_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 0 goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820236F +VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT applymovement LOCALID_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter @@ -56,13 +56,13 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820236F call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle switch VAR_RESULT case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent -VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 82023AA +VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 82023C8 +VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT @@ -82,7 +82,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 82023C8 waitfanfare special HealPlayerParty -VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 820243C +VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: frontier_get FRONTIER_DATA_BATTLE_NUM compare VAR_RESULT, 1 call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent @@ -94,14 +94,14 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 820243C case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge case 2, VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 820248A +VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO switch VAR_RESULT case NO, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge case YES, VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 82024B8 +VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -110,20 +110,20 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 82024B8 case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge -VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 82024EA +VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestRight applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 closemessage goto VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter -VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8202501 +VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 waitstate -VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 820251F +VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: message BattleFrontier_BattlePalaceBattleRoom_Text_SavingData waitmessage verdanturftent_save CHALLENGE_STATUS_PAUSED @@ -133,11 +133,11 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 820251F frontier_reset end -VerdanturfTown_BattleTentBattleRoom_OnWarp: @ 8202541 +VerdanturfTown_BattleTentBattleRoom_OnWarp: map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects .2byte 0 -VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 820254B +VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects:: hideobjectat LOCALID_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx setvar VAR_TEMP_1, 1 @@ -145,21 +145,21 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 820254B removeobject LOCALID_OPPONENT end -VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8202565 +VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent waitmessage return -VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 820256C +VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent waitmessage return -VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible: @ 8202573 +VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible: set_invisible step_end -VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8202575 +VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter: set_visible walk_up walk_up @@ -167,7 +167,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8202575 face_right step_end -VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 820257B +VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down @@ -175,7 +175,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 820257B face_left step_end -VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8202581 +VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit: walk_up walk_up walk_up diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc index 24d047a2a8d2..c2e9dbd6a724 100644 --- a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc @@ -1,14 +1,14 @@ .set LOCALID_ATTENDANT, 1 -VerdanturfTown_BattleTentCorridor_MapScripts:: @ 820208A +VerdanturfTown_BattleTentCorridor_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_OnFrame .byte 0 -VerdanturfTown_BattleTentCorridor_OnFrame: @ 8202090 +VerdanturfTown_BattleTentCorridor_OnFrame: map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor .2byte 0 -VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 820209A +VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: lockall setvar VAR_TEMP_0, 1 applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor @@ -27,16 +27,16 @@ VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 820209A releaseall end -VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor: @ 82020DE +VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor: walk_up walk_up walk_up walk_up step_end -VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 82020E3 +VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor: walk_up -VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 82020E4 +VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor: walk_up set_invisible step_end @@ -44,7 +44,7 @@ VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 82020E4 @ Leftover text from when this was a Contest Hall in R/S @ Unused -VerdanturfTown_ContestHall_Text_WhichContestYouEntering: @ 82020E7 +VerdanturfTown_ContestHall_Text_WhichContestYouEntering: .string "Which CONTEST are you entering?\n" .string "Want a piece of advice?\p" .string "In any CONTEST, for example, a CUTE\n" @@ -54,7 +54,7 @@ VerdanturfTown_ContestHall_Text_WhichContestYouEntering: @ 82020E7 .string "POKéMON better.$" @ Unused -VerdanturfTown_ContestHall_Text_RaisedMonToBeCute: @ 82021C4 +VerdanturfTown_ContestHall_Text_RaisedMonToBeCute: .string "I raised my POKéMON to be cute.\p" .string "I found out you can put POKéMON in\n" .string "a CONTEST for cuteness!\p" @@ -62,7 +62,7 @@ VerdanturfTown_ContestHall_Text_RaisedMonToBeCute: @ 82021C4 .string "loving care…$" @ Unused -VerdanturfTown_ContestHall_Text_MyMonRules: @ 8202251 +VerdanturfTown_ContestHall_Text_MyMonRules: .string "My POKéMON rules!\p" .string "It's cool, tough yet beautiful, cute,\n" .string "and smart. It's complete!\p" @@ -70,7 +70,7 @@ VerdanturfTown_ContestHall_Text_MyMonRules: @ 8202251 .string "single CONTEST.$" @ Unused -VerdanturfTown_ContestHall_Text_NormalRankStage: @ 82022D6 +VerdanturfTown_ContestHall_Text_NormalRankStage: .string "POKéMON CONTESTS\n" .string "NORMAL RANK STAGE!$" diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc index ff2e6b12402b..dd8f0eaa4524 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc @@ -1,20 +1,20 @@ .set LOCALID_ATTENDANT, 1 -VerdanturfTown_BattleTentLobby_MapScripts:: @ 82016D0 +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 .byte 0 -VerdanturfTown_BattleTentLobby_OnWarp: @ 82016DB +VerdanturfTown_BattleTentLobby_OnWarp: map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth .2byte 0 -VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 82016E5 +VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -VerdanturfTown_BattleTentLobby_OnFrame: @ 82016EF +VerdanturfTown_BattleTentLobby_OnFrame: map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge @@ -22,11 +22,11 @@ VerdanturfTown_BattleTentLobby_OnFrame: @ 82016EF map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_LostChallenge .2byte 0 -VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8201719 +VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus:: frontier_getstatus end -VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8201722 +VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge, MSGBOX_DEFAULT closemessage @@ -36,7 +36,7 @@ VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8201722 releaseall end -VerdanturfTown_BattleTentLobby_EventScript_WonChallenge:: @ 8201757 +VerdanturfTown_BattleTentLobby_EventScript_WonChallenge:: lockall msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT message VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded @@ -47,7 +47,7 @@ VerdanturfTown_BattleTentLobby_EventScript_WonChallenge:: @ 8201757 playse SE_SAVE waitse -VerdanturfTown_BattleTentLobby_EventScript_GivePrize:: @ 8201791 +VerdanturfTown_BattleTentLobby_EventScript_GivePrize:: msgbox VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT verdanturftent_giveprize switch VAR_RESULT @@ -63,7 +63,7 @@ VerdanturfTown_BattleTentLobby_EventScript_GivePrize:: @ 8201791 releaseall end -VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 82017DD +VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize:: msgbox BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize, MSGBOX_DEFAULT waitmessage closemessage @@ -71,13 +71,13 @@ VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 82017DD releaseall end -VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 82017EE +VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting:: lockall msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_GivePrize end -VerdanturfTown_BattleTentLobby_EventScript_LostChallenge:: @ 82017FD +VerdanturfTown_BattleTentLobby_EventScript_LostChallenge:: lockall message VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded waitmessage @@ -91,7 +91,7 @@ VerdanturfTown_BattleTentLobby_EventScript_LostChallenge:: @ 82017FD releaseall end -VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 8201837 +VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge:: lockall msgbox BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting, MSGBOX_DEFAULT message BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge @@ -103,7 +103,7 @@ VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 8201837 setvar VAR_TEMP_0, 255 goto VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge -VerdanturfTown_BattleTentLobby_EventScript_Attendant:: @ 8201873 +VerdanturfTown_BattleTentLobby_EventScript_Attendant:: lock faceplayer verdanturftent_getprize @@ -111,7 +111,7 @@ VerdanturfTown_BattleTentLobby_EventScript_Attendant:: @ 8201873 goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty msgbox VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT -VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8201893 +VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: message VerdanturfTown_BattleTentLobby_Text_TakeChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE @@ -121,7 +121,7 @@ VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8201893 case 2, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 82018CF +VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PALACE setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 @@ -143,7 +143,7 @@ VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 82018CF case YES, VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8201954 +VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: setvar VAR_TEMP_0, 0 frontier_set FRONTIER_DATA_SELECTED_MON_ORDER verdanturftent_init @@ -156,7 +156,7 @@ VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8201954 setvar VAR_TEMP_0, 255 compare VAR_RESULT, 0 goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed -VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: @ 82019AE +VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox VerdanturfTown_BattleTentLobby_Text_NowFollowMe, MSGBOX_DEFAULT @@ -167,36 +167,36 @@ VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: @ 82019AE waitstate end -VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 82019DB +VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge:: msgbox VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge -VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 82019E8 +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons:: switch VAR_RESULT case FRONTIER_LVL_50, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50 case FRONTIER_LVL_OPEN, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen -VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8201A03 +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8201A10 +VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8201A1D +VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 goto VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge -VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8201A34 +VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: special LoadPlayerParty -VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge:: @ 8201A37 +VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge:: msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT -VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 8201A3F +VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge:: release end -VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor:: @ 8201A41 +VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor:: applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor waitmovement 0 @@ -209,24 +209,24 @@ VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor:: @ 8201A41 waitdooranim return -VerdanturfTown_BattleTentLobby_Movement_WalkToDoor: @ 8201A70 +VerdanturfTown_BattleTentLobby_Movement_WalkToDoor: walk_up walk_up walk_up step_end -VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8201A74 +VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor: walk_up set_invisible step_end -VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8201A77 +VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor: walk_up walk_up set_invisible step_end -VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: @ 8201A7B +VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: lock faceplayer goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract @@ -239,22 +239,22 @@ VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: @ 8201A7B release end -VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract:: @ 8201AB2 +VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract:: msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_Boy1:: @ 8201ABC +VerdanturfTown_BattleTentLobby_EventScript_Boy1:: msgbox VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves, MSGBOX_NPC end -VerdanturfTown_BattleTentLobby_EventScript_Boy2:: @ 8201AC5 +VerdanturfTown_BattleTentLobby_EventScript_Boy2:: lock msgbox VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_Scott:: @ 8201AD0 +VerdanturfTown_BattleTentLobby_EventScript_Scott:: lock faceplayer goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo @@ -264,24 +264,24 @@ VerdanturfTown_BattleTentLobby_EventScript_Scott:: @ 8201AD0 release end -VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8201AED +VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: msgbox VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_LittleBoy:: @ 8201AF7 +VerdanturfTown_BattleTentLobby_EventScript_LittleBoy:: lock msgbox VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry, MSGBOX_DEFAULT release end -VerdanturfTown_BattleTentLobby_EventScript_RulesBoard:: @ 8201B02 +VerdanturfTown_BattleTentLobby_EventScript_RulesBoard:: lockall msgbox VerdanturfTown_BattleTentLobby_Text_RulesAreListed, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8201B11 +VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard:: message BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading waitmessage setvar VAR_0x8004, SCROLL_MULTI_BATTLE_TENT_RULES @@ -298,41 +298,41 @@ VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8201B11 case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_ExitRules end -VerdanturfTown_BattleTentLobby_EventScript_RulesLevel:: @ 8201B7E +VerdanturfTown_BattleTentLobby_EventScript_RulesLevel:: msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_RulesBasics:: @ 8201B8C +VerdanturfTown_BattleTentLobby_EventScript_RulesBasics:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_RulesNature:: @ 8201B9A +VerdanturfTown_BattleTentLobby_EventScript_RulesNature:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_RulesMoves:: @ 8201BA8 +VerdanturfTown_BattleTentLobby_EventScript_RulesMoves:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered:: @ 8201BB6 +VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger:: @ 8201BC4 +VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger:: msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger, MSGBOX_DEFAULT goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard end -VerdanturfTown_BattleTentLobby_EventScript_ExitRules:: @ 8201BD2 +VerdanturfTown_BattleTentLobby_EventScript_ExitRules:: releaseall end -VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves: @ 8201BD4 +VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves: .string "If it doesn't like a certain move,\n" .string "a POKéMON will be reluctant to use it.\p" .string "It doesn't matter how strong it is,\n" @@ -344,14 +344,14 @@ VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves: @ 8201BD4 .string "potential, it's probably failing at\l" .string "using a disliked move against its will.$" -VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry: @ 8201D11 +VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry: .string "My big sister is gentle usually.\n" .string "But when she gets angry,\l" .string "she's really, really scary!\p" .string "I bet a gentle POKéMON will be scary\n" .string "if it gets angry!$" -VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep: @ 8201D9E +VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep: .string "My feelings toward my POKéMON…\n" .string "The attraction runs deep…\p" .string "Oh, hi, you didn't see that, did you?\n" @@ -359,20 +359,20 @@ VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep: @ 8201D9E .string "How would you like this TM for\n" .string "your POKéMON?$" -VerdanturfTown_BattleTentLobby_Text_AttractionMutual: @ 8201E43 +VerdanturfTown_BattleTentLobby_Text_AttractionMutual: .string "My feelings toward my POKéMON…\n" .string "I'm sure the attraction is mutual!\p" .string "They battle exactly the way I want\n" .string "them to!$" -VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves: @ 8201EB1 +VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves: .string "What kind of moves have you taught\n" .string "your POKéMON?\p" .string "I think you would give yourself\n" .string "an advantage if they knew how to\l" .string "heal or protect themselves.$" -VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers: @ 8201F3F +VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers: .string "SCOTT: Hey there, {PLAYER}{KUN}!\n" .string "I thought I might see you here.\p" .string "A BATTLE TENT's a place where\n" @@ -382,7 +382,7 @@ VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers: @ 8201F3F .string "{PLAYER}{KUN}, I expect you to do\n" .string "the best you can!$" -VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly: @ 8202025 +VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly: .string "SCOTT: I visit here regularly in hopes\n" .string "of seeing tough TRAINERS in action\l" .string "in whatever the situation.$" diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc index 993188cb2f22..9d0485a77622 100644 --- a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc +++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc @@ -1,7 +1,7 @@ -VerdanturfTown_FriendshipRatersHouse_MapScripts:: @ 8203030 +VerdanturfTown_FriendshipRatersHouse_MapScripts:: .byte 0 -VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater:: @ 8203031 +VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater:: lock faceplayer msgbox VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou, MSGBOX_DEFAULT @@ -17,42 +17,42 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater:: @ 8203031 release end -VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou:: @ 8203094 +VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_DetestsYou, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary:: @ 820309E +VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_VeryWary, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou:: @ 82030A8 +VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_NotUsedToYou, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou:: @ 82030B2 +VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_GettingUsedToYou, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot:: @ 82030BC +VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_LikesYouQuiteALot, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy:: @ 82030C6 +VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_VeryHappy, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou:: @ 82030D0 +VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_AdoresYou, MSGBOX_DEFAULT release end -VerdanturfTown_FriendshipRatersHouse_EventScript_Pikachu:: @ 82030DA +VerdanturfTown_FriendshipRatersHouse_EventScript_Pikachu:: lock faceplayer waitse @@ -62,43 +62,43 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_Pikachu:: @ 82030DA release end -VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou: @ 82030ED +VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou: .string "Let me see your POKéMON.\n" .string "I'll check to see how much it likes you.\p" .string "Oh.\n" .string "Your POKéMON…$" -VerdanturfTown_FriendshipRatersHouse_Text_AdoresYou: @ 8203141 +VerdanturfTown_FriendshipRatersHouse_Text_AdoresYou: .string "It adores you.\n" .string "It can't possibly love you any more.\l" .string "I even feel happy seeing it.$" -VerdanturfTown_FriendshipRatersHouse_Text_VeryHappy: @ 8203192 +VerdanturfTown_FriendshipRatersHouse_Text_VeryHappy: .string "It seems to be very happy.\n" .string "It obviously likes you a whole lot.$" -VerdanturfTown_FriendshipRatersHouse_Text_LikesYouQuiteALot: @ 82031D1 +VerdanturfTown_FriendshipRatersHouse_Text_LikesYouQuiteALot: .string "It likes you quite a lot.\n" .string "It seems to want to be babied a little.$" -VerdanturfTown_FriendshipRatersHouse_Text_GettingUsedToYou: @ 8203213 +VerdanturfTown_FriendshipRatersHouse_Text_GettingUsedToYou: .string "It's getting used to you.\n" .string "It seems to believe in you.$" -VerdanturfTown_FriendshipRatersHouse_Text_NotUsedToYou: @ 8203249 +VerdanturfTown_FriendshipRatersHouse_Text_NotUsedToYou: .string "It's not very used to you yet.\n" .string "It neither loves nor hates you.$" -VerdanturfTown_FriendshipRatersHouse_Text_VeryWary: @ 8203288 +VerdanturfTown_FriendshipRatersHouse_Text_VeryWary: .string "It's very wary.\n" .string "It has scary viciousness in its eyes.\l" .string "It doesn't like you much at all.$" -VerdanturfTown_FriendshipRatersHouse_Text_DetestsYou: @ 82032DF +VerdanturfTown_FriendshipRatersHouse_Text_DetestsYou: .string "This is a little hard for me to say…\p" .string "Your POKéMON simply detests you.\n" .string "Doesn't that make you uncomfortable?$" -VerdanturfTown_FriendshipRatersHouse_Text_Pikachu: @ 820334A +VerdanturfTown_FriendshipRatersHouse_Text_Pikachu: .string "PIKACHU: Pika pika!$" diff --git a/data/maps/VerdanturfTown_House/scripts.inc b/data/maps/VerdanturfTown_House/scripts.inc index 5f47e52fae45..c4dc922def5c 100644 --- a/data/maps/VerdanturfTown_House/scripts.inc +++ b/data/maps/VerdanturfTown_House/scripts.inc @@ -1,21 +1,21 @@ -VerdanturfTown_House_MapScripts:: @ 820335E +VerdanturfTown_House_MapScripts:: .byte 0 -VerdanturfTown_House_EventScript_Woman1:: @ 820335F +VerdanturfTown_House_EventScript_Woman1:: msgbox VerdanturfTown_House_Text_TrainersGatherAtPokemonLeague, MSGBOX_NPC end -VerdanturfTown_House_EventScript_Woman2:: @ 8203368 +VerdanturfTown_House_EventScript_Woman2:: msgbox VerdanturfTown_House_Text_DefeatEliteFourInARow, MSGBOX_NPC end -VerdanturfTown_House_Text_TrainersGatherAtPokemonLeague: @ 8203371 +VerdanturfTown_House_Text_TrainersGatherAtPokemonLeague: .string "Far away, deep in EVER GRANDE CITY,\n" .string "is the POKéMON LEAGUE.\p" .string "The TRAINERS who gather there are\n" .string "all frighteningly well skilled.$" -VerdanturfTown_House_Text_DefeatEliteFourInARow: @ 82033EE +VerdanturfTown_House_Text_DefeatEliteFourInARow: .string "In the POKéMON LEAGUE, I think the\n" .string "rules say that you have to battle the\l" .string "ELITE FOUR all in a row.\p" diff --git a/data/maps/VerdanturfTown_Mart/scripts.inc b/data/maps/VerdanturfTown_Mart/scripts.inc index cc4694fe1be1..7eb340df2ad3 100644 --- a/data/maps/VerdanturfTown_Mart/scripts.inc +++ b/data/maps/VerdanturfTown_Mart/scripts.inc @@ -1,7 +1,7 @@ -VerdanturfTown_Mart_MapScripts:: @ 8202586 +VerdanturfTown_Mart_MapScripts:: .byte 0 -VerdanturfTown_Mart_EventScript_Clerk:: @ 8202587 +VerdanturfTown_Mart_EventScript_Clerk:: lock faceplayer message gText_HowMayIServeYou @@ -12,7 +12,7 @@ VerdanturfTown_Mart_EventScript_Clerk:: @ 8202587 end .align 2 -VerdanturfTown_Mart_Pokemart: @ 82025A0 +VerdanturfTown_Mart_Pokemart: .2byte ITEM_GREAT_BALL .2byte ITEM_NEST_BALL .2byte ITEM_SUPER_POTION @@ -28,31 +28,31 @@ VerdanturfTown_Mart_Pokemart: @ 82025A0 release end -VerdanturfTown_Mart_EventScript_Boy:: @ 82025BA +VerdanturfTown_Mart_EventScript_Boy:: msgbox VerdanturfTown_Mart_Text_XSpecialIsCrucial, MSGBOX_NPC end -VerdanturfTown_Mart_EventScript_ExpertF:: @ 82025C3 +VerdanturfTown_Mart_EventScript_ExpertF:: msgbox VerdanturfTown_Mart_Text_NoStrategyGuidesForBattleTent, MSGBOX_NPC end -VerdanturfTown_Mart_EventScript_Lass:: @ 82025CC +VerdanturfTown_Mart_EventScript_Lass:: msgbox VerdanturfTown_Mart_Text_NestBallOnWeakenedPokemon, MSGBOX_NPC end -VerdanturfTown_Mart_Text_XSpecialIsCrucial: @ 82025D5 +VerdanturfTown_Mart_Text_XSpecialIsCrucial: .string "For any POKéMON match, X SPECIAL\n" .string "is crucial.\p" .string "It jacks up the power of some moves\n" .string "even though it's only for one battle.$" -VerdanturfTown_Mart_Text_NoStrategyGuidesForBattleTent: @ 820264C +VerdanturfTown_Mart_Text_NoStrategyGuidesForBattleTent: .string "They don't seem to sell any winning\n" .string "strategy guides for the BATTLE TENT…\p" .string "It seems one must rely on one's\n" .string "own wits after all…$" -VerdanturfTown_Mart_Text_NestBallOnWeakenedPokemon: @ 82026C9 +VerdanturfTown_Mart_Text_NestBallOnWeakenedPokemon: .string "The NEST BALL works better on\n" .string "weakened POKéMON.\p" .string "VERDANTURF is the only place you can\n" diff --git a/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc b/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc index f59d40456990..5fbdba42f42a 100644 --- a/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc +++ b/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc @@ -1,16 +1,16 @@ .set LOCALID_NURSE, 1 -VerdanturfTown_PokemonCenter_1F_MapScripts:: @ 8202726 +VerdanturfTown_PokemonCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_PokemonCenter_1F_OnTransition map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume .byte 0 -VerdanturfTown_PokemonCenter_1F_OnTransition: @ 8202731 +VerdanturfTown_PokemonCenter_1F_OnTransition: setrespawn HEAL_LOCATION_VERDANTURF_TOWN call Common_EventScript_UpdateBrineyLocation end -VerdanturfTown_PokemonCenter_1F_EventScript_Nurse:: @ 820273A +VerdanturfTown_PokemonCenter_1F_EventScript_Nurse:: setvar VAR_0x800B, LOCALID_NURSE call Common_EventScript_PkmnCenterNurse waitmessage @@ -18,15 +18,15 @@ VerdanturfTown_PokemonCenter_1F_EventScript_Nurse:: @ 820273A release end -VerdanturfTown_PokemonCenter_1F_EventScript_Gentleman:: @ 8202748 +VerdanturfTown_PokemonCenter_1F_EventScript_Gentleman:: msgbox VerdanturfTown_PokemonCenter_1F_Text_FaithInYourPokemon, MSGBOX_NPC end -VerdanturfTown_PokemonCenter_1F_EventScript_ExpertM:: @ 8202751 +VerdanturfTown_PokemonCenter_1F_EventScript_ExpertM:: msgbox VerdanturfTown_PokemonCenter_1F_Text_VisitForBattleTent, MSGBOX_NPC end -VerdanturfTown_PokemonCenter_1F_Text_FaithInYourPokemon: @ 820275A +VerdanturfTown_PokemonCenter_1F_Text_FaithInYourPokemon: .string "You can't consider yourself a real\n" .string "TRAINER if you don't have faith\l" .string "in your POKéMON.\p" @@ -34,7 +34,7 @@ VerdanturfTown_PokemonCenter_1F_Text_FaithInYourPokemon: @ 820275A .string "in their battling POKéMON can win\l" .string "through to the very end.$" -VerdanturfTown_PokemonCenter_1F_Text_VisitForBattleTent: @ 820280B +VerdanturfTown_PokemonCenter_1F_Text_VisitForBattleTent: .string "The reason why anyone would visit\n" .string "VERDANTURF…\p" .string "It's the BATTLE TENT. It goes without\n" diff --git a/data/maps/VerdanturfTown_PokemonCenter_2F/scripts.inc b/data/maps/VerdanturfTown_PokemonCenter_2F/scripts.inc index 7802f5b03243..4a6971ed1fa1 100644 --- a/data/maps/VerdanturfTown_PokemonCenter_2F/scripts.inc +++ b/data/maps/VerdanturfTown_PokemonCenter_2F/scripts.inc @@ -1,4 +1,4 @@ -VerdanturfTown_PokemonCenter_2F_MapScripts:: @ 8202897 +VerdanturfTown_PokemonCenter_2F_MapScripts:: map_script MAP_SCRIPT_ON_FRAME_TABLE, CableClub_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, CableClub_OnWarp map_script MAP_SCRIPT_ON_LOAD, CableClub_OnLoad @@ -6,15 +6,15 @@ VerdanturfTown_PokemonCenter_2F_MapScripts:: @ 8202897 .byte 0 @ The below 3 are unused and leftover from RS -VerdanturfTown_PokemonCenter_2F_EventScript_Colosseum:: @ 82028AC +VerdanturfTown_PokemonCenter_2F_EventScript_Colosseum:: call CableClub_EventScript_Colosseum end -VerdanturfTown_PokemonCenter_2F_EventScript_TradeCenter:: @ 82028B2 +VerdanturfTown_PokemonCenter_2F_EventScript_TradeCenter:: call CableClub_EventScript_TradeCenter end -VerdanturfTown_PokemonCenter_2F_EventScript_RecordCorner:: @ 82028B8 +VerdanturfTown_PokemonCenter_2F_EventScript_RecordCorner:: call CableClub_EventScript_RecordCorner end diff --git a/data/maps/VerdanturfTown_WandasHouse/scripts.inc b/data/maps/VerdanturfTown_WandasHouse/scripts.inc index 25d37a762675..e9f5a6ae0daf 100644 --- a/data/maps/VerdanturfTown_WandasHouse/scripts.inc +++ b/data/maps/VerdanturfTown_WandasHouse/scripts.inc @@ -1,7 +1,7 @@ -VerdanturfTown_WandasHouse_MapScripts:: @ 82028BE +VerdanturfTown_WandasHouse_MapScripts:: .byte 0 -VerdanturfTown_WandasHouse_EventScript_Wally:: @ 82028BF +VerdanturfTown_WandasHouse_EventScript_Wally:: lock faceplayer goto_if_set FLAG_WALLY_SPEECH, VerdanturfTown_WandasHouse_EventScript_WallyShortSpeech @@ -10,12 +10,12 @@ VerdanturfTown_WandasHouse_EventScript_Wally:: @ 82028BF release end -VerdanturfTown_WandasHouse_EventScript_WallyShortSpeech:: @ 82028D7 +VerdanturfTown_WandasHouse_EventScript_WallyShortSpeech:: msgbox VerdanturfTown_WandasHouse_Text_StrongerSpeechShort, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WallysUncle:: @ 82028E1 +VerdanturfTown_WandasHouse_EventScript_WallysUncle:: lock faceplayer goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, VerdanturfTown_WandasHouse_EventScript_WallysUncleEverGrande @@ -24,21 +24,21 @@ VerdanturfTown_WandasHouse_EventScript_WallysUncle:: @ 82028E1 release end -VerdanturfTown_WandasHouse_EventScript_WallysUncleSlippedOff:: @ 82028FF +VerdanturfTown_WandasHouse_EventScript_WallysUncleSlippedOff:: msgbox VerdanturfTown_WandasHouse_Text_WallySlippedOff, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WallysUncleEverGrande:: @ 8202909 +VerdanturfTown_WandasHouse_EventScript_WallysUncleEverGrande:: msgbox VerdanturfTown_WandasHouse_Text_WallyGoneThatFar, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WandasBoyfriend:: @ 8202913 +VerdanturfTown_WandasHouse_EventScript_WandasBoyfriend:: msgbox VerdanturfTown_WandasHouse_Text_CanSeeGirlfriendEveryDay, MSGBOX_NPC end -VerdanturfTown_WandasHouse_EventScript_Wanda:: @ 820291C +VerdanturfTown_WandasHouse_EventScript_Wanda:: lock faceplayer goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, VerdanturfTown_WandasHouse_EventScript_WandaDontWorry @@ -47,17 +47,17 @@ VerdanturfTown_WandasHouse_EventScript_Wanda:: @ 820291C release end -VerdanturfTown_WandasHouse_EventScript_MeetWanda:: @ 820293A +VerdanturfTown_WandasHouse_EventScript_MeetWanda:: msgbox VerdanturfTown_WandasHouse_Text_MeetWanda, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WandaDontWorry:: @ 8202944 +VerdanturfTown_WandasHouse_EventScript_WandaDontWorry:: msgbox VerdanturfTown_WandasHouse_Text_DontWorryAboutWally, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WallysAunt:: @ 820294E +VerdanturfTown_WandasHouse_EventScript_WallysAunt:: lock faceplayer goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, VerdanturfTown_WandasHouse_EventScript_WallysAuntEverGrande @@ -67,22 +67,22 @@ VerdanturfTown_WandasHouse_EventScript_WallysAunt:: @ 820294E release end -VerdanturfTown_WandasHouse_EventScript_WallysAuntTunnelOpen:: @ 8202975 +VerdanturfTown_WandasHouse_EventScript_WallysAuntTunnelOpen:: msgbox VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendWasDigging, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WallysAuntAnythingHappened:: @ 820297F +VerdanturfTown_WandasHouse_EventScript_WallysAuntAnythingHappened:: msgbox VerdanturfTown_WandasHouse_Text_IfAnythingHappenedToWally, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_EventScript_WallysAuntEverGrande:: @ 8202989 +VerdanturfTown_WandasHouse_EventScript_WallysAuntEverGrande:: msgbox VerdanturfTown_WandasHouse_Text_WallyWasInEverGrande, MSGBOX_DEFAULT release end -VerdanturfTown_WandasHouse_Text_StrongerSpeech: @ 8202993 +VerdanturfTown_WandasHouse_Text_StrongerSpeech: .string "WALLY: I lost to you, {PLAYER}, but I'm\n" .string "not feeling down anymore.\p" .string "Because I have a new purpose in life.\n" @@ -94,13 +94,13 @@ VerdanturfTown_WandasHouse_Text_StrongerSpeech: @ 8202993 .string "When I do, I'm going to challenge you\n" .string "to another battle.$" -VerdanturfTown_WandasHouse_Text_StrongerSpeechShort: @ 8202ABE +VerdanturfTown_WandasHouse_Text_StrongerSpeechShort: .string "WALLY: Please watch me, {PLAYER}.\n" .string "I'm going to get stronger than you.\p" .string "When I do, I'm going to challenge you\n" .string "to another battle.$" -VerdanturfTown_WandasHouse_Text_WallysNextDoor: @ 8202B37 +VerdanturfTown_WandasHouse_Text_WallysNextDoor: .string "UNCLE: Oh! {PLAYER}{KUN}!\n" .string "WALLY's next door.\p" .string "But, boy, there's something I have to\n" @@ -111,18 +111,18 @@ VerdanturfTown_WandasHouse_Text_WallysNextDoor: @ 8202B37 .string "It could be POKéMON that are giving\l" .string "the boy hope.$" -VerdanturfTown_WandasHouse_Text_WallySlippedOff: @ 8202C20 +VerdanturfTown_WandasHouse_Text_WallySlippedOff: .string "WALLY's gone away…\n" .string "He slipped off on his own…$" -VerdanturfTown_WandasHouse_Text_WallyGoneThatFar: @ 8202C4E +VerdanturfTown_WandasHouse_Text_WallyGoneThatFar: .string "UNCLE: Is that right?\n" .string "WALLY's gone away that far all by\l" .string "himself…\p" .string "Well, I have to give him credit--he is\n" .string "my little brother's son.$" -VerdanturfTown_WandasHouse_Text_MeetWanda: @ 8202CCF +VerdanturfTown_WandasHouse_Text_MeetWanda: .string "WANDA: You are?\n" .string "Oh, right, I get it!\p" .string "You're the {PLAYER} who WALLY was\n" @@ -132,18 +132,18 @@ VerdanturfTown_WandasHouse_Text_MeetWanda: @ 8202CCF .string "I think WALLY's become a lot more lively\n" .string "and healthy since he came here.$" -VerdanturfTown_WandasHouse_Text_DontWorryAboutWally: @ 8202D91 +VerdanturfTown_WandasHouse_Text_DontWorryAboutWally: .string "WANDA: Don't worry about WALLY.\n" .string "He'll be just fine.\p" .string "I know my little cousin, and he has\n" .string "POKéMON with him, too.$" -VerdanturfTown_WandasHouse_Text_CanSeeGirlfriendEveryDay: @ 8202E00 +VerdanturfTown_WandasHouse_Text_CanSeeGirlfriendEveryDay: .string "Thanks to you, I can see my girlfriend\n" .string "every day.\l" .string "Happy? You bet I am!$" -VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendDriven: @ 8202E47 +VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendDriven: .string "My daughter's boyfriend is a very\n" .string "driven and passionate sort of person.\p" .string "He's been digging a tunnel nonstop\n" @@ -151,17 +151,17 @@ VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendDriven: @ 8202E47 .string "My daughter's a little concerned,\n" .string "so she goes out to the tunnel a lot.$" -VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendWasDigging: @ 8202F19 +VerdanturfTown_WandasHouse_Text_DaughtersBoyfriendWasDigging: .string "It's amazing. My daughter's boyfriend\n" .string "was digging the tunnel by hand!\p" .string "It's so incredible!$" -VerdanturfTown_WandasHouse_Text_IfAnythingHappenedToWally: @ 8202F73 +VerdanturfTown_WandasHouse_Text_IfAnythingHappenedToWally: .string "If anything were to happen to WALLY,\n" .string "I would never be able to look his\l" .string "parents in PETALBURG in the eye…$" -VerdanturfTown_WandasHouse_Text_WallyWasInEverGrande: @ 8202FDB +VerdanturfTown_WandasHouse_Text_WallyWasInEverGrande: .string "WALLY was in EVER GRANDE?\p" .string "His parents in PETALBURG would be\n" .string "astonished to hear that!$" diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc index f7668d4a566a..a194e61e0cb3 100644 --- a/data/maps/VictoryRoad_1F/scripts.inc +++ b/data/maps/VictoryRoad_1F/scripts.inc @@ -1,27 +1,27 @@ .set LOCALID_WALLY_ENTRANCE, 4 -VictoryRoad_1F_MapScripts:: @ 8235D7A +VictoryRoad_1F_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, VictoryRoad_1F_OnTransition .byte 0 -VictoryRoad_1F_OnTransition: @ 8235D80 +VictoryRoad_1F_OnTransition: compare VAR_VICTORY_ROAD_1F_STATE, 1 call_if_eq VictoryRoad_1F_EventScript_SetEntranceWallyPos1 compare VAR_VICTORY_ROAD_1F_STATE, 2 call_if_eq VictoryRoad_1F_EventScript_SetEntranceWallyPos2 end -VictoryRoad_1F_EventScript_SetEntranceWallyPos1:: @ 8235D97 +VictoryRoad_1F_EventScript_SetEntranceWallyPos1:: setobjectxyperm LOCALID_WALLY_ENTRANCE, 2, 24 setobjectmovementtype LOCALID_WALLY_ENTRANCE, MOVEMENT_TYPE_FACE_DOWN return -VictoryRoad_1F_EventScript_SetEntranceWallyPos2:: @ 8235DA3 +VictoryRoad_1F_EventScript_SetEntranceWallyPos2:: setobjectxyperm LOCALID_WALLY_ENTRANCE, 3, 24 setobjectmovementtype LOCALID_WALLY_ENTRANCE, MOVEMENT_TYPE_FACE_DOWN return -VictoryRoad_1F_EventScript_WallyBattleTrigger1:: @ 8235DAF +VictoryRoad_1F_EventScript_WallyBattleTrigger1:: lockall setvar VAR_0x8008, 1 addobject LOCALID_WALLY_ENTRANCE @@ -30,7 +30,7 @@ VictoryRoad_1F_EventScript_WallyBattleTrigger1:: @ 8235DAF goto VictoryRoad_1F_EventScript_WallyEntranceBattle end -VictoryRoad_1F_EventScript_WallyBattleTrigger2:: @ 8235DC8 +VictoryRoad_1F_EventScript_WallyBattleTrigger2:: lockall setvar VAR_0x8008, 2 addobject LOCALID_WALLY_ENTRANCE @@ -39,7 +39,7 @@ VictoryRoad_1F_EventScript_WallyBattleTrigger2:: @ 8235DC8 goto VictoryRoad_1F_EventScript_WallyEntranceBattle end -VictoryRoad_1F_EventScript_WallyEntranceBattle:: @ 8235DE1 +VictoryRoad_1F_EventScript_WallyEntranceBattle:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown waitmovement 0 msgbox VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore, MSGBOX_DEFAULT @@ -52,7 +52,7 @@ VictoryRoad_1F_EventScript_WallyEntranceBattle:: @ 8235DE1 releaseall end -VictoryRoad_1F_Movement_WallyApproachPlayer1: @ 8235E15 +VictoryRoad_1F_Movement_WallyApproachPlayer1: walk_left walk_left walk_left @@ -66,7 +66,7 @@ VictoryRoad_1F_Movement_WallyApproachPlayer1: @ 8235E15 walk_up step_end -VictoryRoad_1F_Movement_WallyApproachPlayer2: @ 8235E21 +VictoryRoad_1F_Movement_WallyApproachPlayer2: walk_left walk_left walk_left @@ -80,12 +80,12 @@ VictoryRoad_1F_Movement_WallyApproachPlayer2: @ 8235E21 step_end @ This Wally appears near the entrance once his battle is triggered and remains there until the Hall of Fame is entered -VictoryRoad_1F_EventScript_EntranceWally:: @ 8235E2C +VictoryRoad_1F_EventScript_EntranceWally:: msgbox VictoryRoad_1F_Text_WallyPostEntranceBattle, MSGBOX_NPC end @ This Wally appears and remains at the exit after the Hall of Fame is entered -VictoryRoad_1F_EventScript_ExitWally:: @ 8235E35 +VictoryRoad_1F_EventScript_ExitWally:: trainerbattle_single TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat specialvar VAR_RESULT, ShouldTryRematchBattle compare VAR_RESULT, TRUE @@ -93,37 +93,37 @@ VictoryRoad_1F_EventScript_ExitWally:: @ 8235E35 msgbox VictoryRoad_1F_Text_WallyPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_RematchWally:: @ 8235E5C +VictoryRoad_1F_EventScript_RematchWally:: trainerbattle_rematch TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat msgbox VictoryRoad_1F_Text_WallyPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_Edgar:: @ 8235E73 +VictoryRoad_1F_EventScript_Edgar:: trainerbattle_single TRAINER_EDGAR, VictoryRoad_1F_Text_EdgarIntro, VictoryRoad_1F_Text_EdgarDefeat msgbox VictoryRoad_1F_Text_EdgarPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_Albert:: @ 8235E8A +VictoryRoad_1F_EventScript_Albert:: trainerbattle_single TRAINER_ALBERT, VictoryRoad_1F_Text_AlbertIntro, VictoryRoad_1F_Text_AlbertDefeat msgbox VictoryRoad_1F_Text_AlbertPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_Hope:: @ 8235EA1 +VictoryRoad_1F_EventScript_Hope:: trainerbattle_single TRAINER_HOPE, VictoryRoad_1F_Text_HopeIntro, VictoryRoad_1F_Text_HopeDefeat msgbox VictoryRoad_1F_Text_HopePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_Quincy:: @ 8235EB8 +VictoryRoad_1F_EventScript_Quincy:: trainerbattle_single TRAINER_QUINCY, VictoryRoad_1F_Text_QuincyIntro, VictoryRoad_1F_Text_QuincyDefeat msgbox VictoryRoad_1F_Text_QuincyPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_EventScript_Katelynn:: @ 8235ECF +VictoryRoad_1F_EventScript_Katelynn:: trainerbattle_single TRAINER_KATELYNN, VictoryRoad_1F_Text_KatelynnIntro, VictoryRoad_1F_Text_KatelynnDefeat msgbox VictoryRoad_1F_Text_KatelynnPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore: @ 8235EE6 +VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore: .string "WALLY: Hi! {PLAYER}!\p" .string "I bet you're surprised to see me here!\p" .string "I made it all the way here, and it's\n" @@ -135,89 +135,89 @@ VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore: @ 8235EE6 .string "gave me courage and strength!\p" .string "Okay… Here I come!$" -VictoryRoad_1F_Text_WallyEntranceDefeat: @ 8235FFC +VictoryRoad_1F_Text_WallyEntranceDefeat: .string "Wow!\n" .string "{PLAYER}, you are strong, after all!$" -VictoryRoad_1F_Text_WallyPostEntranceBattle: @ 8236020 +VictoryRoad_1F_Text_WallyPostEntranceBattle: .string "WALLY: I couldn't beat you today,\n" .string "{PLAYER}, but one of these days, I'll\l" .string "catch up to you!$" -VictoryRoad_1F_Text_WallyIntro: @ 8236073 +VictoryRoad_1F_Text_WallyIntro: .string "WALLY: Hi! {PLAYER}!\p" .string "I've gotten stronger since that last\n" .string "time! I wanted to show you, {PLAYER}!\p" .string "Okay… Here I come!$" -VictoryRoad_1F_Text_WallyDefeat: @ 82360DA +VictoryRoad_1F_Text_WallyDefeat: .string "Wow!\n" .string "{PLAYER}, you are strong, after all!$" -VictoryRoad_1F_Text_WallyPostBattle: @ 82360FE +VictoryRoad_1F_Text_WallyPostBattle: .string "WALLY: I couldn't beat you this time,\n" .string "too… But one of these days, {PLAYER},\l" .string "I'm going to catch up to you…\p" .string "And challenge the POKéMON LEAGUE!$" -VictoryRoad_1F_Text_EdgarIntro: @ 8236184 +VictoryRoad_1F_Text_EdgarIntro: .string "I've made it this far a couple times,\n" .string "but the last stretch is so long…$" -VictoryRoad_1F_Text_EdgarDefeat: @ 82361CB +VictoryRoad_1F_Text_EdgarDefeat: .string "My dream ends here again…$" -VictoryRoad_1F_Text_EdgarPostBattle: @ 82361E5 +VictoryRoad_1F_Text_EdgarPostBattle: .string "You've made it this far. Keep the\n" .string "momentum going and become the\l" .string "CHAMPION! If anyone can, it's you!$" -VictoryRoad_1F_Text_AlbertIntro: @ 8236248 +VictoryRoad_1F_Text_AlbertIntro: .string "I didn't come all this way to lose now.\n" .string "That possibility doesn't exist!$" -VictoryRoad_1F_Text_AlbertDefeat: @ 8236290 +VictoryRoad_1F_Text_AlbertDefeat: .string "Impossible…\n" .string "I lost?$" -VictoryRoad_1F_Text_AlbertPostBattle: @ 82362A4 +VictoryRoad_1F_Text_AlbertPostBattle: .string "I lost here…\p" .string "That means I lack the qualifications\n" .string "to become the CHAMPION…$" -VictoryRoad_1F_Text_HopeIntro: @ 82362EE +VictoryRoad_1F_Text_HopeIntro: .string "This seemingly infinite and harsh road\n" .string "lives up to its name of VICTORY.$" -VictoryRoad_1F_Text_HopeDefeat: @ 8236336 +VictoryRoad_1F_Text_HopeDefeat: .string "Your battle style is fantastic…$" -VictoryRoad_1F_Text_HopePostBattle: @ 8236356 +VictoryRoad_1F_Text_HopePostBattle: .string "You seem to have the potential for\n" .string "becoming the CHAMPION.$" -VictoryRoad_1F_Text_QuincyIntro: @ 8236390 +VictoryRoad_1F_Text_QuincyIntro: .string "What is the VICTORY ROAD?\n" .string "I'll tell you if you win!$" -VictoryRoad_1F_Text_QuincyDefeat: @ 82363C4 +VictoryRoad_1F_Text_QuincyDefeat: .string "Okay!\n" .string "Well done!$" -VictoryRoad_1F_Text_QuincyPostBattle: @ 82363D5 +VictoryRoad_1F_Text_QuincyPostBattle: .string "Getting through here safely--that's\n" .string "the final test for any TRAINER aiming\l" .string "to become the POKéMON CHAMPION.\p" .string "That's why it's called the VICTORY\n" .string "ROAD.$" -VictoryRoad_1F_Text_KatelynnIntro: @ 8236468 +VictoryRoad_1F_Text_KatelynnIntro: .string "I have nothing to say to anyone\n" .string "that's come this far. Come on!$" -VictoryRoad_1F_Text_KatelynnDefeat: @ 82364A7 +VictoryRoad_1F_Text_KatelynnDefeat: .string "This is a disgrace…$" -VictoryRoad_1F_Text_KatelynnPostBattle: @ 82364BB +VictoryRoad_1F_Text_KatelynnPostBattle: .string "Humph, go right on ahead.\n" .string "See if I care.$" diff --git a/data/maps/VictoryRoad_B1F/scripts.inc b/data/maps/VictoryRoad_B1F/scripts.inc index fd175599cb1d..b8ec69935351 100644 --- a/data/maps/VictoryRoad_B1F/scripts.inc +++ b/data/maps/VictoryRoad_B1F/scripts.inc @@ -1,88 +1,88 @@ -VictoryRoad_B1F_MapScripts:: @ 82364E4 +VictoryRoad_B1F_MapScripts:: .byte 0 -VictoryRoad_B1F_EventScript_Samuel:: @ 82364E5 +VictoryRoad_B1F_EventScript_Samuel:: trainerbattle_single TRAINER_SAMUEL, VictoryRoad_B1F_Text_SamuelIntro, VictoryRoad_B1F_Text_SamuelDefeat msgbox VictoryRoad_B1F_Text_SamuelPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B1F_EventScript_Shannon:: @ 82364FC +VictoryRoad_B1F_EventScript_Shannon:: trainerbattle_single TRAINER_SHANNON, VictoryRoad_B1F_Text_ShannonIntro, VictoryRoad_B1F_Text_ShannonDefeat msgbox VictoryRoad_B1F_Text_ShannonPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B1F_EventScript_Michelle:: @ 8236513 +VictoryRoad_B1F_EventScript_Michelle:: trainerbattle_single TRAINER_MICHELLE, VictoryRoad_B1F_Text_MichelleIntro, VictoryRoad_B1F_Text_MichelleDefeat msgbox VictoryRoad_B1F_Text_MichellePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B1F_EventScript_Mitchell:: @ 823652A +VictoryRoad_B1F_EventScript_Mitchell:: trainerbattle_single TRAINER_MITCHELL, VictoryRoad_B1F_Text_MitchellIntro, VictoryRoad_B1F_Text_MitchellDefeat msgbox VictoryRoad_B1F_Text_MitchellPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B1F_EventScript_Halle:: @ 8236541 +VictoryRoad_B1F_EventScript_Halle:: trainerbattle_single TRAINER_HALLE, VictoryRoad_B1F_Text_HalleIntro, VictoryRoad_B1F_Text_HalleDefeat msgbox VictoryRoad_B1F_Text_HallePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B1F_Text_SamuelIntro: @ 8236558 +VictoryRoad_B1F_Text_SamuelIntro: .string "The thought that I'm getting closer to\n" .string "the POKéMON LEAGUE…\p" .string "I'm getting stage fright…$" -VictoryRoad_B1F_Text_SamuelDefeat: @ 82365AD +VictoryRoad_B1F_Text_SamuelDefeat: .string "I couldn't do a thing…$" -VictoryRoad_B1F_Text_SamuelPostBattle: @ 82365C4 +VictoryRoad_B1F_Text_SamuelPostBattle: .string "The POKéMON LEAGUE became distant\n" .string "again… What a letdown…$" -VictoryRoad_B1F_Text_ShannonIntro: @ 82365FD +VictoryRoad_B1F_Text_ShannonIntro: .string "To win your way through the POKéMON\n" .string "LEAGUE, you need the trust of your\l" .string "POKéMON.$" -VictoryRoad_B1F_Text_ShannonDefeat: @ 823664D +VictoryRoad_B1F_Text_ShannonDefeat: .string "Your relationship is based on\n" .string "solid trust.$" -VictoryRoad_B1F_Text_ShannonPostBattle: @ 8236678 +VictoryRoad_B1F_Text_ShannonPostBattle: .string "By being together all the time, trust\n" .string "grows between POKéMON and TRAINERS.$" -VictoryRoad_B1F_Text_MichelleIntro: @ 82366C2 +VictoryRoad_B1F_Text_MichelleIntro: .string "This isn't the goal. It's only a place\n" .string "on the way to the POKéMON LEAGUE.$" -VictoryRoad_B1F_Text_MichelleDefeat: @ 823670B +VictoryRoad_B1F_Text_MichelleDefeat: .string "That's the way!$" -VictoryRoad_B1F_Text_MichellePostBattle: @ 823671B +VictoryRoad_B1F_Text_MichellePostBattle: .string "You'll do fine, for sure!\n" .string "Your POKéMON are all eager to go!$" -VictoryRoad_B1F_Text_MitchellIntro: @ 8236757 +VictoryRoad_B1F_Text_MitchellIntro: .string "My POKéMON are cosmically\n" .string "awe inspiring!$" -VictoryRoad_B1F_Text_MitchellDefeat: @ 8236780 +VictoryRoad_B1F_Text_MitchellDefeat: .string "I've never met anyone like you before.$" -VictoryRoad_B1F_Text_MitchellPostBattle: @ 82367A7 +VictoryRoad_B1F_Text_MitchellPostBattle: .string "Even outside of battle, I sense\n" .string "incredible power emanating from you\l" .string "and your POKéMON.$" -VictoryRoad_B1F_Text_HalleIntro: @ 82367FD +VictoryRoad_B1F_Text_HalleIntro: .string "Okay, no need to get your back up!\n" .string "Relax, let's take it easy!$" -VictoryRoad_B1F_Text_HalleDefeat: @ 823683B +VictoryRoad_B1F_Text_HalleDefeat: .string "Whoa!\n" .string "Wonderful!$" -VictoryRoad_B1F_Text_HallePostBattle: @ 823684C +VictoryRoad_B1F_Text_HallePostBattle: .string "Sure, this is VICTORY ROAD.\p" .string "But it's not all that different from\n" .string "the path you've taken so far.\p" diff --git a/data/maps/VictoryRoad_B2F/scripts.inc b/data/maps/VictoryRoad_B2F/scripts.inc index 9db635a858df..8b64157d3754 100644 --- a/data/maps/VictoryRoad_B2F/scripts.inc +++ b/data/maps/VictoryRoad_B2F/scripts.inc @@ -1,108 +1,108 @@ -VictoryRoad_B2F_MapScripts:: @ 82368D4 +VictoryRoad_B2F_MapScripts:: .byte 0 -VictoryRoad_B2F_EventScript_Vito:: @ 82368D5 +VictoryRoad_B2F_EventScript_Vito:: trainerbattle_single TRAINER_VITO, VictoryRoad_B2F_Text_VitoIntro, VictoryRoad_B2F_Text_VitoDefeat msgbox VictoryRoad_B2F_Text_VitoPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_EventScript_Owen:: @ 82368EC +VictoryRoad_B2F_EventScript_Owen:: trainerbattle_single TRAINER_OWEN, VictoryRoad_B2F_Text_OwenIntro, VictoryRoad_B2F_Text_OwenDefeat msgbox VictoryRoad_B2F_Text_OwenPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_EventScript_Caroline:: @ 8236903 +VictoryRoad_B2F_EventScript_Caroline:: trainerbattle_single TRAINER_CAROLINE, VictoryRoad_B2F_Text_CarolineIntro, VictoryRoad_B2F_Text_CarolineDefeat msgbox VictoryRoad_B2F_Text_CarolinePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_EventScript_Julie:: @ 823691A +VictoryRoad_B2F_EventScript_Julie:: trainerbattle_single TRAINER_JULIE, VictoryRoad_B2F_Text_JulieIntro, VictoryRoad_B2F_Text_JulieDefeat msgbox VictoryRoad_B2F_Text_JuliePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_EventScript_Felix:: @ 8236931 +VictoryRoad_B2F_EventScript_Felix:: trainerbattle_single TRAINER_FELIX, VictoryRoad_B2F_Text_FelixIntro, VictoryRoad_B2F_Text_FelixDefeat msgbox VictoryRoad_B2F_Text_FelixPostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_EventScript_Dianne:: @ 8236948 +VictoryRoad_B2F_EventScript_Dianne:: trainerbattle_single TRAINER_DIANNE, VictoryRoad_B2F_Text_DianneIntro, VictoryRoad_B2F_Text_DianneDefeat msgbox VictoryRoad_B2F_Text_DiannePostBattle, MSGBOX_AUTOCLOSE end -VictoryRoad_B2F_Text_VitoIntro: @ 823695F +VictoryRoad_B2F_Text_VitoIntro: .string "I trained together with my whole family,\n" .string "every one of us!\l" .string "I'm not losing to anyone!$" -VictoryRoad_B2F_Text_VitoDefeat: @ 82369B3 +VictoryRoad_B2F_Text_VitoDefeat: .string "Better than my family?!\n" .string "Is that possible?!$" -VictoryRoad_B2F_Text_VitoPostBattle: @ 82369DE +VictoryRoad_B2F_Text_VitoPostBattle: .string "I was better than everyone in my\n" .string "family. I've never lost before…\p" .string "I've lost my confidence…\n" .string "Maybe I'll go home…$" -VictoryRoad_B2F_Text_OwenIntro: @ 8236A4C +VictoryRoad_B2F_Text_OwenIntro: .string "I'd heard that there was a tough\n" .string "little kid around. Do they mean you?$" -VictoryRoad_B2F_Text_OwenDefeat: @ 8236A92 +VictoryRoad_B2F_Text_OwenDefeat: .string "The little shrimp is tough!$" -VictoryRoad_B2F_Text_OwenPostBattle: @ 8236AAE +VictoryRoad_B2F_Text_OwenPostBattle: .string "The rumors I heard, that tough little\n" .string "kid is from PETALBURG CITY.$" -VictoryRoad_B2F_Text_CarolineIntro: @ 8236AF0 +VictoryRoad_B2F_Text_CarolineIntro: .string "You must be getting a little tired.$" -VictoryRoad_B2F_Text_CarolineDefeat: @ 8236B14 +VictoryRoad_B2F_Text_CarolineDefeat: .string "No signs of tiring at all!$" -VictoryRoad_B2F_Text_CarolinePostBattle: @ 8236B2F +VictoryRoad_B2F_Text_CarolinePostBattle: .string "VICTORY ROAD and the POKéMON LEAGUE\n" .string "are long and grueling challenges.\l" .string "Beware of fatigue!$" -VictoryRoad_B2F_Text_JulieIntro: @ 8236B88 +VictoryRoad_B2F_Text_JulieIntro: .string "You shouldn't get complacent just\n" .string "because you have a lot of GYM BADGES.\p" .string "There's always going to be someone\n" .string "who's better than you!$" -VictoryRoad_B2F_Text_JulieDefeat: @ 8236C0A +VictoryRoad_B2F_Text_JulieDefeat: .string "You're better than me!$" -VictoryRoad_B2F_Text_JuliePostBattle: @ 8236C21 +VictoryRoad_B2F_Text_JuliePostBattle: .string "Gaze on your collected BADGES and\n" .string "remember the TRAINERS you've faced.$" -VictoryRoad_B2F_Text_FelixIntro: @ 8236C67 +VictoryRoad_B2F_Text_FelixIntro: .string "I've come this far, but the tension's\n" .string "giving me awful stomach pain…$" -VictoryRoad_B2F_Text_FelixDefeat: @ 8236CAB +VictoryRoad_B2F_Text_FelixDefeat: .string "Ooh…\n" .string "It hurts…$" -VictoryRoad_B2F_Text_FelixPostBattle: @ 8236CBA +VictoryRoad_B2F_Text_FelixPostBattle: .string "I can't help getting all tense knowing\n" .string "that I'm nearing the POKéMON LEAGUE.\p" .string "It's all I can do to feign calm.$" -VictoryRoad_B2F_Text_DianneIntro: @ 8236D27 +VictoryRoad_B2F_Text_DianneIntro: .string "The elite among the elite gather in\n" .string "this cave.\p" .string "How are you finding it?$" -VictoryRoad_B2F_Text_DianneDefeat: @ 8236D6E +VictoryRoad_B2F_Text_DianneDefeat: .string "Not rattled in the least bit!$" -VictoryRoad_B2F_Text_DiannePostBattle: @ 8236D8C +VictoryRoad_B2F_Text_DiannePostBattle: .string "You do have guts! I like that!\n" .string "Keep it going!$" diff --git a/data/multiboot_berry_glitch_fix.s b/data/multiboot_berry_glitch_fix.s index 57757090a1dd..7d65c0d4ded2 100644 --- a/data/multiboot_berry_glitch_fix.s +++ b/data/multiboot_berry_glitch_fix.s @@ -1,5 +1,5 @@ .section .rodata -gMultiBootProgram_BerryGlitchFix_Start:: @ 89A6550 +gMultiBootProgram_BerryGlitchFix_Start:: .incbin "berry_fix/berry_fix.gba" -gMultiBootProgram_BerryGlitchFix_End:: @ 89AA144 +gMultiBootProgram_BerryGlitchFix_End:: diff --git a/data/multiboot_pokemon_colosseum.s b/data/multiboot_pokemon_colosseum.s index 59d0b430d786..179f8a067128 100644 --- a/data/multiboot_pokemon_colosseum.s +++ b/data/multiboot_pokemon_colosseum.s @@ -1,5 +1,5 @@ .section .rodata -gMultiBootProgram_PokemonColosseum_Start:: @ 89AA144 +gMultiBootProgram_PokemonColosseum_Start:: .incbin "data/pokemon_colosseum.mb" gMultiBootProgram_PokemonColosseum_End:: diff --git a/data/mystery_event_script_cmd_table.s b/data/mystery_event_script_cmd_table.s index 6ebc7e962541..d0ab80c5ccad 100644 --- a/data/mystery_event_script_cmd_table.s +++ b/data/mystery_event_script_cmd_table.s @@ -1,7 +1,7 @@ .section script_data, "aw", %progbits .align 2 -gMysteryEventScriptCmdTable:: @ 82DED2C +gMysteryEventScriptCmdTable:: .4byte MEScrCmd_nop @ 0x00 .4byte MEScrCmd_checkcompat @ 0x01 .4byte MEScrCmd_end @ 0x02 diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 9e54ad52b00b..dcc0da9f7f6a 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -1,5 +1,5 @@ .align 2 -gScriptCmdTable:: @ 81DB67C +gScriptCmdTable:: .4byte ScrCmd_nop @ 0x00 .4byte ScrCmd_nop1 @ 0x01 .4byte ScrCmd_end @ 0x02 @@ -228,5 +228,5 @@ gScriptCmdTable:: @ 81DB67C .4byte ScrCmd_buffercontesttype @ 0xe1 .4byte ScrCmd_bufferitemnameplural @ 0xe2 -gScriptCmdTableEnd:: @ 81DBA08 +gScriptCmdTableEnd:: .4byte ScrCmd_nop diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc index 16f8af41f703..9af24c45d52f 100644 --- a/data/scripts/abnormal_weather.inc +++ b/data/scripts/abnormal_weather.inc @@ -1,44 +1,44 @@ -AbnormalWeather_EventScript_PlaceTilesRoute114North:: @ 8273913 +AbnormalWeather_EventScript_PlaceTilesRoute114North:: setmetatile 7, 3, METATILE_Fallarbor_RedCaveEntrance_Top, 1 setmetatile 7, 4, METATILE_Fallarbor_RedCaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute114South:: @ 8273926 +AbnormalWeather_EventScript_PlaceTilesRoute114South:: setmetatile 6, 45, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 setmetatile 6, 46, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute115West:: @ 8273939 +AbnormalWeather_EventScript_PlaceTilesRoute115West:: setmetatile 21, 5, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 setmetatile 21, 6, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute115East:: @ 827394C +AbnormalWeather_EventScript_PlaceTilesRoute115East:: setmetatile 36, 9, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 setmetatile 36, 10, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute116North:: @ 827395F +AbnormalWeather_EventScript_PlaceTilesRoute116North:: setmetatile 59, 12, METATILE_General_CaveEntrance_Top, 1 setmetatile 59, 13, METATILE_General_CaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute116South:: @ 8273972 +AbnormalWeather_EventScript_PlaceTilesRoute116South:: setmetatile 79, 5, METATILE_General_CaveEntrance_Top, 1 setmetatile 79, 6, METATILE_General_CaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute118East:: @ 8273985 +AbnormalWeather_EventScript_PlaceTilesRoute118East:: setmetatile 42, 5, METATILE_General_CaveEntrance_Top, 1 setmetatile 42, 6, METATILE_General_CaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute118West:: @ 8273998 +AbnormalWeather_EventScript_PlaceTilesRoute118West:: setmetatile 9, 5, METATILE_General_CaveEntrance_Top, 1 setmetatile 9, 6, METATILE_General_CaveEntrance_Bottom, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute105North:: @ 82739AB +AbnormalWeather_EventScript_PlaceTilesRoute105North:: setmetatile 10, 28, METATILE_General_RoughWater, 0 setmetatile 11, 28, METATILE_General_RoughWater, 0 setmetatile 9, 29, METATILE_General_RoughWater, 0 @@ -53,7 +53,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute105North:: @ 82739AB setmetatile 11, 31, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute105South:: @ 8273A18 +AbnormalWeather_EventScript_PlaceTilesRoute105South:: setmetatile 20, 53, METATILE_General_RoughWater, 0 setmetatile 21, 53, METATILE_General_RoughWater, 0 setmetatile 19, 54, METATILE_General_RoughWater, 0 @@ -68,7 +68,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute105South:: @ 8273A18 setmetatile 21, 56, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute125West:: @ 8273A85 +AbnormalWeather_EventScript_PlaceTilesRoute125West:: setmetatile 8, 16, METATILE_General_RoughWater, 0 setmetatile 9, 16, METATILE_General_RoughWater, 0 setmetatile 7, 17, METATILE_General_RoughWater, 0 @@ -83,7 +83,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute125West:: @ 8273A85 setmetatile 9, 19, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute125East:: @ 8273AF2 +AbnormalWeather_EventScript_PlaceTilesRoute125East:: setmetatile 53, 18, METATILE_General_RoughWater, 0 setmetatile 54, 18, METATILE_General_RoughWater, 0 setmetatile 52, 19, METATILE_General_RoughWater, 0 @@ -98,7 +98,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute125East:: @ 8273AF2 setmetatile 54, 21, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute127North:: @ 8273B5F +AbnormalWeather_EventScript_PlaceTilesRoute127North:: setmetatile 57, 9, METATILE_General_RoughWater, 0 setmetatile 58, 9, METATILE_General_RoughWater, 0 setmetatile 56, 10, METATILE_General_RoughWater, 0 @@ -113,7 +113,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute127North:: @ 8273B5F setmetatile 58, 12, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute127South:: @ 8273BCC +AbnormalWeather_EventScript_PlaceTilesRoute127South:: setmetatile 61, 30, METATILE_General_RoughWater, 0 setmetatile 62, 30, METATILE_General_RoughWater, 0 setmetatile 60, 31, METATILE_General_RoughWater, 0 @@ -128,7 +128,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute127South:: @ 8273BCC setmetatile 62, 33, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute129West:: @ 8273C39 +AbnormalWeather_EventScript_PlaceTilesRoute129West:: setmetatile 16, 14, METATILE_General_RoughWater, 0 setmetatile 17, 14, METATILE_General_RoughWater, 0 setmetatile 15, 15, METATILE_General_RoughWater, 0 @@ -143,7 +143,7 @@ AbnormalWeather_EventScript_PlaceTilesRoute129West:: @ 8273C39 setmetatile 17, 17, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_PlaceTilesRoute129East:: @ 8273CA6 +AbnormalWeather_EventScript_PlaceTilesRoute129East:: setmetatile 42, 19, METATILE_General_RoughWater, 0 setmetatile 43, 19, METATILE_General_RoughWater, 0 setmetatile 41, 20, METATILE_General_RoughWater, 0 @@ -158,26 +158,26 @@ AbnormalWeather_EventScript_PlaceTilesRoute129East:: @ 8273CA6 setmetatile 43, 22, METATILE_General_RoughWater, 0 return -AbnormalWeather_EventScript_HideMapNamePopup:: @ 8273D13 +AbnormalWeather_EventScript_HideMapNamePopup:: setflag FLAG_HIDE_MAP_NAME_POPUP return -AbnormalWeather_StartKyogreWeather:: @ 8273D17 +AbnormalWeather_StartKyogreWeather:: setweather WEATHER_DOWNPOUR return -AbnormalWeather_StartGroudonWeather:: @ 8273D1B +AbnormalWeather_StartGroudonWeather:: setweather WEATHER_DROUGHT return -AbnormalWeather_EventScript_EndEventAndCleanup_1:: @ 8273D1F +AbnormalWeather_EventScript_EndEventAndCleanup_1:: lockall compare VAR_ABNORMAL_WEATHER_LOCATION, MARINE_CAVE_LOCATIONS_START goto_if_ge AbnormalWeather_EventScript_ShowRainEndedMessage goto AbnormalWeather_EventScript_ShowSunEndedMessage end -AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31 +AbnormalWeather_EventScript_EndEventAndCleanup_2:: closemessage fadescreenswapbuffers FADE_TO_BLACK setweather WEATHER_SUNNY @@ -191,17 +191,17 @@ AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31 releaseall end -AbnormalWeather_EventScript_ShowRainEndedMessage:: @ 8273D51 +AbnormalWeather_EventScript_ShowRainEndedMessage:: msgbox gText_AbnormalWeatherEnded_Rain, MSGBOX_DEFAULT goto AbnormalWeather_EventScript_EndEventAndCleanup_2 end -AbnormalWeather_EventScript_ShowSunEndedMessage:: @ 8273D5F +AbnormalWeather_EventScript_ShowSunEndedMessage:: msgbox gText_AbnormalWeatherEnded_Sun, MSGBOX_DEFAULT goto AbnormalWeather_EventScript_EndEventAndCleanup_2 end -AbnormalWeather_EventScript_CleanupMapTiles:: @ 8273D6D +AbnormalWeather_EventScript_CleanupMapTiles:: switch VAR_ABNORMAL_WEATHER_LOCATION case ABNORMAL_WEATHER_ROUTE_114_NORTH, AbnormalWeather_EventScript_CleanupRoute114North case ABNORMAL_WEATHER_ROUTE_114_SOUTH, AbnormalWeather_EventScript_CleanupRoute114South @@ -221,47 +221,47 @@ AbnormalWeather_EventScript_CleanupMapTiles:: @ 8273D6D case ABNORMAL_WEATHER_ROUTE_129_EAST, AbnormalWeather_EventScript_CleanupRoute129East return -AbnormalWeather_EventScript_CleanupRoute114North:: @ 8273E23 +AbnormalWeather_EventScript_CleanupRoute114North:: setmetatile 7, 3, METATILE_Fallarbor_RedRockWall, 1 setmetatile 7, 4, METATILE_Fallarbor_RedRockWall, 1 return -AbnormalWeather_EventScript_CleanupRoute114South:: @ 8273E36 +AbnormalWeather_EventScript_CleanupRoute114South:: setmetatile 6, 45, METATILE_Fallarbor_BrownRockWall, 1 setmetatile 6, 46, METATILE_Fallarbor_BrownRockWall, 1 return -AbnormalWeather_EventScript_CleanupRoute115West:: @ 8273E49 +AbnormalWeather_EventScript_CleanupRoute115West:: setmetatile 21, 5, METATILE_Fallarbor_BrownRockWall, 1 setmetatile 21, 6, METATILE_Fallarbor_BrownRockWall, 1 return -AbnormalWeather_EventScript_CleanupRoute115East:: @ 8273E5C +AbnormalWeather_EventScript_CleanupRoute115East:: setmetatile 36, 9, METATILE_Fallarbor_BrownRockWall, 1 setmetatile 36, 10, METATILE_Fallarbor_BrownRockWall, 1 return -AbnormalWeather_EventScript_CleanupRoute116North:: @ 8273E6F +AbnormalWeather_EventScript_CleanupRoute116North:: setmetatile 59, 12, METATILE_General_RockWall_RockBase, 1 setmetatile 59, 13, METATILE_General_RockWall_RockBase, 1 return -AbnormalWeather_EventScript_CleanupRoute116South:: @ 8273E82 +AbnormalWeather_EventScript_CleanupRoute116South:: setmetatile 79, 5, METATILE_General_RockWall_RockBase, 1 setmetatile 79, 6, METATILE_General_RockWall_RockBase, 1 return -AbnormalWeather_EventScript_CleanupRoute118East:: @ 8273E95 +AbnormalWeather_EventScript_CleanupRoute118East:: setmetatile 42, 5, METATILE_General_RockWall_RockBase, 1 setmetatile 42, 6, METATILE_General_RockWall_GrassBase, 1 return -AbnormalWeather_EventScript_CleanupRoute118West:: @ 8273EA8 +AbnormalWeather_EventScript_CleanupRoute118West:: setmetatile 9, 5, METATILE_General_RockWall_RockBase, 1 setmetatile 9, 6, METATILE_General_RockWall_GrassBase, 1 return -AbnormalWeather_EventScript_CleanupRoute105North:: @ 8273EBB +AbnormalWeather_EventScript_CleanupRoute105North:: setmetatile 10, 28, METATILE_General_CalmWater, 0 setmetatile 11, 28, METATILE_General_CalmWater, 0 setmetatile 9, 29, METATILE_General_CalmWater, 0 @@ -276,7 +276,7 @@ AbnormalWeather_EventScript_CleanupRoute105North:: @ 8273EBB setmetatile 11, 31, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute105South:: @ 8273F28 +AbnormalWeather_EventScript_CleanupRoute105South:: setmetatile 20, 53, METATILE_General_CalmWater, 0 setmetatile 21, 53, METATILE_General_CalmWater, 0 setmetatile 19, 54, METATILE_General_CalmWater, 0 @@ -291,7 +291,7 @@ AbnormalWeather_EventScript_CleanupRoute105South:: @ 8273F28 setmetatile 21, 56, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute125West:: @ 8273F95 +AbnormalWeather_EventScript_CleanupRoute125West:: setmetatile 8, 16, METATILE_General_CalmWater, 0 setmetatile 9, 16, METATILE_General_CalmWater, 0 setmetatile 7, 17, METATILE_General_CalmWater, 0 @@ -306,7 +306,7 @@ AbnormalWeather_EventScript_CleanupRoute125West:: @ 8273F95 setmetatile 9, 19, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute125East:: @ 8274002 +AbnormalWeather_EventScript_CleanupRoute125East:: setmetatile 53, 18, METATILE_General_CalmWater, 0 setmetatile 54, 18, METATILE_General_CalmWater, 0 setmetatile 52, 19, METATILE_General_CalmWater, 0 @@ -321,7 +321,7 @@ AbnormalWeather_EventScript_CleanupRoute125East:: @ 8274002 setmetatile 54, 21, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute127North:: @ 827406F +AbnormalWeather_EventScript_CleanupRoute127North:: setmetatile 57, 9, METATILE_General_CalmWater, 0 setmetatile 58, 9, METATILE_General_CalmWater, 0 setmetatile 56, 10, METATILE_General_CalmWater, 0 @@ -336,7 +336,7 @@ AbnormalWeather_EventScript_CleanupRoute127North:: @ 827406F setmetatile 58, 12, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute127South:: @ 82740DC +AbnormalWeather_EventScript_CleanupRoute127South:: setmetatile 61, 30, METATILE_General_CalmWater, 0 setmetatile 62, 30, METATILE_General_CalmWater, 0 setmetatile 60, 31, METATILE_General_CalmWater, 0 @@ -351,7 +351,7 @@ AbnormalWeather_EventScript_CleanupRoute127South:: @ 82740DC setmetatile 62, 33, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute129West:: @ 8274149 +AbnormalWeather_EventScript_CleanupRoute129West:: setmetatile 16, 14, METATILE_General_CalmWater, 0 setmetatile 17, 14, METATILE_General_CalmWater, 0 setmetatile 15, 15, METATILE_General_CalmWater, 0 @@ -366,7 +366,7 @@ AbnormalWeather_EventScript_CleanupRoute129West:: @ 8274149 setmetatile 17, 17, METATILE_General_CalmWater, 0 return -AbnormalWeather_EventScript_CleanupRoute129East:: @ 82741B6 +AbnormalWeather_EventScript_CleanupRoute129East:: setmetatile 42, 19, METATILE_General_CalmWater, 0 setmetatile 43, 19, METATILE_General_CalmWater, 0 setmetatile 41, 20, METATILE_General_CalmWater, 0 @@ -381,7 +381,7 @@ AbnormalWeather_EventScript_CleanupRoute129East:: @ 82741B6 setmetatile 43, 22, METATILE_General_CalmWater, 0 return -AbnormalWeather_Underwater_SetupEscapeWarp:: @ 8274223 +AbnormalWeather_Underwater_SetupEscapeWarp:: switch VAR_ABNORMAL_WEATHER_LOCATION case ABNORMAL_WEATHER_ROUTE_105_NORTH, AbnormalWeather_Underwater_SetupEscapeWarpRoute105North case ABNORMAL_WEATHER_ROUTE_105_SOUTH, AbnormalWeather_Underwater_SetupEscapeWarpRoute105South @@ -393,34 +393,34 @@ AbnormalWeather_Underwater_SetupEscapeWarp:: @ 8274223 case ABNORMAL_WEATHER_ROUTE_129_EAST, AbnormalWeather_Underwater_SetupEscapeWarpRoute129East return -AbnormalWeather_Underwater_SetupEscapeWarpRoute105North:: @ 8274281 +AbnormalWeather_Underwater_SetupEscapeWarpRoute105North:: setescapewarp MAP_ROUTE105, 255, 11, 29 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute105South:: @ 827428A +AbnormalWeather_Underwater_SetupEscapeWarpRoute105South:: setescapewarp MAP_ROUTE105, 255, 21, 54 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute125West:: @ 8274293 +AbnormalWeather_Underwater_SetupEscapeWarpRoute125West:: setescapewarp MAP_ROUTE125, 255, 9, 17 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute125East:: @ 827429C +AbnormalWeather_Underwater_SetupEscapeWarpRoute125East:: setescapewarp MAP_ROUTE125, 255, 54, 19 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute127North:: @ 82742A5 +AbnormalWeather_Underwater_SetupEscapeWarpRoute127North:: setescapewarp MAP_ROUTE127, 255, 58, 10 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute127South:: @ 82742AE +AbnormalWeather_Underwater_SetupEscapeWarpRoute127South:: setescapewarp MAP_ROUTE127, 255, 62, 31 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute129West:: @ 82742B7 +AbnormalWeather_Underwater_SetupEscapeWarpRoute129West:: setescapewarp MAP_ROUTE129, 255, 17, 15 return -AbnormalWeather_Underwater_SetupEscapeWarpRoute129East:: @ 82742C0 +AbnormalWeather_Underwater_SetupEscapeWarpRoute129East:: setescapewarp MAP_ROUTE129, 255, 43, 20 return diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc index f5fa3aeeb7d9..2a6772a5dc2a 100644 --- a/data/scripts/apprentice.inc +++ b/data/scripts/apprentice.inc @@ -1,6 +1,6 @@ .set LOCALID_APPRENTICE, 6 -BattleFrontier_BattleTowerLobby_EventScript_Apprentice:: @ 82B688D +BattleFrontier_BattleTowerLobby_EventScript_Apprentice:: lock faceplayer apprentice_gavelvlmode @@ -10,7 +10,7 @@ BattleFrontier_BattleTowerLobby_EventScript_Apprentice:: @ 82B688D compare VAR_0x8004, FALSE @ Always TRUE here goto_if_eq Apprentice_EventScript_AskQuestion goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, Apprentice_EventScript_Gone -Apprentice_EventScript_AskQuestion: @ 82B68BE +Apprentice_EventScript_AskQuestion: apprentice_getquestion compare VAR_RESULT, APPRENTICE_QUESTION_WHICH_MON goto_if_eq Apprentice_EventScript_UseWhichMon @@ -26,10 +26,10 @@ Apprentice_EventScript_AskQuestion: @ 82B68BE releaseall end -Apprentice_EventScript_FirstMeeting: @ 82B6900 +Apprentice_EventScript_FirstMeeting: apprentice_buff 0, APPRENTICE_BUFF_NAME apprentice_msg FALSE, APPRENTICE_MSG_PLEASE_TEACH -Apprentice_EventScript_WhichLvlMode: @ 82B6925 +Apprentice_EventScript_WhichLvlMode: apprentice_menu APPRENTICE_ASK_YES_NO compare VAR_RESULT, 1 goto_if_eq Apprentice_EventScript_RejectTeach @@ -48,11 +48,11 @@ Apprentice_EventScript_WhichLvlMode: @ 82B6925 end @ Its impossible to fully reject an Apprentice, they just keep asking for you to teach them -Apprentice_EventScript_RejectTeach: @ 82B69BB +Apprentice_EventScript_RejectTeach: apprentice_msg FALSE, APPRENTICE_MSG_REJECT goto Apprentice_EventScript_WhichLvlMode -Apprentice_EventScript_UseWhichMon: @ 82B69D3 +Apprentice_EventScript_UseWhichMon: apprentice_initquestion APPRENTICE_QUESTION_WHICH_MON apprentice_buff 0, APPRENTICE_BUFF_SPECIES1 apprentice_buff 1, APPRENTICE_BUFF_SPECIES2 @@ -80,24 +80,24 @@ Apprentice_EventScript_UseWhichMon: @ 82B69D3 goto Apprentice_EventScript_Leave end -Apprentice_EventScript_ChoseFirstMon: @ 82B6ABA +Apprentice_EventScript_ChoseFirstMon: setvar VAR_0x8007, APPRENTICE_BUFF_SPECIES1 return -Apprentice_EventScript_ChoseSecondMon: @ 82B6AC0 +Apprentice_EventScript_ChoseSecondMon: setvar VAR_0x8007, APPRENTICE_BUFF_SPECIES2 return -Apprentice_EventScript_LastMonSelected: @ 82B6AC6 +Apprentice_EventScript_LastMonSelected: apprentice_randomizequestions return -Apprentice_EventScript_UseWhatHeldItem: @ 82B6ACF +Apprentice_EventScript_UseWhatHeldItem: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 apprentice_msg TRUE, APPRENTICE_MSG_WHAT_HELD_ITEM apprentice_freequestion -Apprentice_EventScript_ChooseHoldItem: @ 82B6B09 +Apprentice_EventScript_ChooseHoldItem: fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 apprentice_openbag @@ -117,7 +117,7 @@ Apprentice_EventScript_ChooseHoldItem: @ 82B6B09 goto Apprentice_EventScript_Leave end -Apprentice_EventScript_ConfirmHoldNothing: @ 82B6B81 +Apprentice_EventScript_ConfirmHoldNothing: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 apprentice_msg FALSE, APPRENTICE_MSG_HOLD_NOTHING @@ -125,7 +125,7 @@ Apprentice_EventScript_ConfirmHoldNothing: @ 82B6B81 apprentice_freequestion compare VAR_RESULT, 0 goto_if_eq Apprentice_EventScript_ChooseHoldItem -Apprentice_EventScript_HoldNothing: @ 82B6BD4 +Apprentice_EventScript_HoldNothing: apprentice_msg TRUE, APPRENTICE_MSG_THANKS_NO_HELD_ITEM apprentice_answeredquestion call Apprentice_EventScript_SetHideFlags @@ -138,7 +138,7 @@ Apprentice_EventScript_HoldNothing: @ 82B6BD4 @ Because Battle Tower mons may not hold the same item, the player must suggest a @ different item if theyve already told the Apprentice to use it for another mon -Apprentice_EventScript_AlreadySuggestedItem: @ 82B6C0C +Apprentice_EventScript_AlreadySuggestedItem: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM apprentice_buff 0, APPRENTICE_BUFF_ITEM apprentice_buff 1, APPRENTICE_BUFF_SPECIES3 @@ -150,7 +150,7 @@ Apprentice_EventScript_AlreadySuggestedItem: @ 82B6C0C goto Apprentice_EventScript_HoldNothing end -Apprentice_EventScript_UseWhichMove: @ 82B6C77 +Apprentice_EventScript_UseWhichMove: apprentice_initquestion APPRENTICE_QUESTION_WHICH_MOVE apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 apprentice_buff 1, APPRENTICE_BUFF_MOVE1 @@ -175,15 +175,15 @@ Apprentice_EventScript_UseWhichMove: @ 82B6C77 goto Apprentice_EventScript_Leave end -Apprentice_EventScript_ChoseMove1: @ 82B6D50 +Apprentice_EventScript_ChoseMove1: setvar VAR_0x8007, APPRENTICE_BUFF_MOVE1 return -Apprentice_EventScript_ChoseMove2: @ 82B6D56 +Apprentice_EventScript_ChoseMove2: setvar VAR_0x8007, APPRENTICE_BUFF_MOVE2 return -Apprentice_EventScript_PutWhichMonFirst: @ 82B6D5C +Apprentice_EventScript_PutWhichMonFirst: apprentice_msg FALSE, APPRENTICE_MSG_WHICH_MON_FIRST apprentice_menu APPRENTICE_ASK_3SPECIES apprentice_setleadmon VAR_RESULT @@ -199,7 +199,7 @@ Apprentice_EventScript_PutWhichMonFirst: @ 82B6D5C end @ Last question, after which the Apprentice leaves (and is saved) to be replaced by another -Apprentice_EventScript_PickWinSpeech: @ 82B6DD4 +Apprentice_EventScript_PickWinSpeech: apprentice_msg TRUE, APPRENTICE_MSG_PICK_WIN_SPEECH apprentice_shiftsaved setvar VAR_0x8004, EASY_CHAT_TYPE_APPRENTICE @@ -218,12 +218,12 @@ Apprentice_EventScript_PickWinSpeech: @ 82B6DD4 goto Apprentice_EventScript_Leave end -Apprentice_EventScript_SetHideFlags: @ 82B6E4D +Apprentice_EventScript_SetHideFlags: setflag FLAG_HIDE_APPRENTICE setflag FLAG_DAILY_APPRENTICE_LEAVES return -Apprentice_EventScript_LeaveNorth: @ 82B6E54 +Apprentice_EventScript_LeaveNorth: apprentice_shouldleave compare VAR_0x8004, FALSE @ Always TRUE here goto_if_eq Apprentice_EventScript_DontMove @@ -231,7 +231,7 @@ Apprentice_EventScript_LeaveNorth: @ 82B6E54 waitmovement 0 end -Apprentice_EventScript_Leave: @ 82B6E72 +Apprentice_EventScript_Leave: apprentice_shouldleave compare VAR_0x8004, FALSE @ Always TRUE here goto_if_eq Apprentice_EventScript_DontMove @@ -239,17 +239,17 @@ Apprentice_EventScript_Leave: @ 82B6E72 waitmovement 0 end -Apprentice_EventScript_Gone: @ 82B6E90 +Apprentice_EventScript_Gone: release releaseall end -Apprentice_EventScript_DontMove: @ 82B6E93 +Apprentice_EventScript_DontMove: end -Apprentice_Movement_LeaveNorth: @ 82B6E94 +Apprentice_Movement_LeaveNorth: walk_fast_right -Apprentice_Movement_Leave: @ 82B6E95 +Apprentice_Movement_Leave: walk_fast_down walk_fast_down walk_fast_right diff --git a/data/scripts/battle_pike.inc b/data/scripts/battle_pike.inc index 7ba25321dcc5..3260bcfd829f 100644 --- a/data/scripts/battle_pike.inc +++ b/data/scripts/battle_pike.inc @@ -1,9 +1,9 @@ @ Note: LOCALIDs shared with BattleFrontier_BattlePikeRoomNormal -BattleFrontier_BattlePikeRoom_MapScripts: @ 82C3E1B +BattleFrontier_BattlePikeRoom_MapScripts: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePikeRoom_OnTransition map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoom_OnWarp -BattleFrontier_BattlePikeRoom_OnTransition: @ 82C3E25 +BattleFrontier_BattlePikeRoom_OnTransition: pike_setroomobjects pike_getroomtype switch VAR_RESULT @@ -17,36 +17,36 @@ BattleFrontier_BattlePikeRoom_OnTransition: @ 82C3E25 case PIKE_ROOM_BRAIN, BattleFrontier_BattlePikeRoomNormal_EventScript_SetBrainRoomObjPos end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetDoubleBattleObjPos:: @ 82C3E93 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetDoubleBattleObjPos:: setobjectxyperm LOCALID_OBJ_0, 2, 5 setobjectxyperm LOCALID_OBJ_1, 6, 5 end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetTwoObjectRoomPos:: @ 82C3EA2 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetTwoObjectRoomPos:: setobjectxyperm LOCALID_OBJ_0, 4, 4 setobjectxyperm LOCALID_OBJ_1, 3, 4 end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetOneObjectRoomPos:: @ 82C3EB1 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetOneObjectRoomPos:: setobjectxyperm LOCALID_OBJ_0, 4, 4 setobjectxyperm LOCALID_OBJ_1, 0, 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetNPCRoomObjPos:: @ 82C3EC0 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetNPCRoomObjPos:: setobjectxyperm LOCALID_OBJ_0, 5, 5 setobjectxyperm LOCALID_OBJ_1, 0, 0 end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetBrainRoomObjPos:: @ 82C3ECF +BattleFrontier_BattlePikeRoomNormal_EventScript_SetBrainRoomObjPos:: setobjectxyperm LOCALID_OBJ_0, 4, 3 setobjectxyperm LOCALID_OBJ_1, 4, 4 end -BattleFrontier_BattlePikeRoom_OnWarp: @ 82C3EDE +BattleFrontier_BattlePikeRoom_OnWarp: map_script_2 VAR_TEMP_4, 0, BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects .2byte 0 -BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects:: @ 82C3EE8 +BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_LINK_RECEPTIONIST setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_LINK_RECEPTIONIST pike_getroomtype @@ -63,33 +63,33 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects:: @ 82C3EE8 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom:: @ 82C3F35 +BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom:: setvar VAR_TEMP_4, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH end -BattleFrontier_BattlePikeRoomNormal_EventScript_InitBrainRoomObjects:: @ 82C3F3F +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 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_LeftRoomWarp:: @ 82C3F4E +BattleFrontier_BattlePikeThreePathRoom_EventScript_LeftRoomWarp:: setvar VAR_0x8007, PIKE_ROOM_LEFT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp end -BattleFrontier_BattlePikeThreePathRoom_EventScript_CenterRoomWarp:: @ 82C3F59 +BattleFrontier_BattlePikeThreePathRoom_EventScript_CenterRoomWarp:: setvar VAR_0x8007, PIKE_ROOM_CENTER goto BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp end -BattleFrontier_BattlePikeThreePathRoom_EventScript_RightRoomWarp:: @ 82C3F64 +BattleFrontier_BattlePikeThreePathRoom_EventScript_RightRoomWarp:: setvar VAR_0x8007, PIKE_ROOM_RIGHT goto BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp end -BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp:: @ 82C3F6F +BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp:: pike_get PIKE_DATA_WIN_STREAK addvar VAR_RESULT, 1 pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT @@ -110,7 +110,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp:: @ 82C3F6F case PIKE_ROOM_BRAIN, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom end -BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom:: @ 82C4030 +BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain @@ -118,7 +118,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom:: @ 82C4030 waitstate end -BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpWildMonRoom:: @ 82C4049 +BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpWildMonRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain @@ -126,12 +126,12 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpWildMonRoom:: @ 82C4049 waitstate end -BattleFrontier_BattlePikeThreePathRoom_EventScript_SetEnteredRoom:: @ 82C4062 +BattleFrontier_BattlePikeThreePathRoom_EventScript_SetEnteredRoom:: setvar VAR_TEMP_3, 1 setvar VAR_TEMP_2, 1 end -BattleFrontier_BattlePikeThreePathRoom_EventScript_NoTurningBack:: @ 82C406D +BattleFrontier_BattlePikeThreePathRoom_EventScript_NoTurningBack:: setvar VAR_TEMP_3, 0 setvar VAR_TEMP_2, 0 lockall @@ -139,12 +139,12 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_NoTurningBack:: @ 82C406D closemessage end -BattleFrontier_BattlePikeRoomNormal_EventScript_SetEnteredRoom:: @ 82C4082 +BattleFrontier_BattlePikeRoomNormal_EventScript_SetEnteredRoom:: setvar VAR_TEMP_3, 1 setvar VAR_TEMP_2, 1 end -BattleFrontier_BattlePikeRoomNormal_EventScript_NoTurningBack:: @ 82C408D +BattleFrontier_BattlePikeRoomNormal_EventScript_NoTurningBack:: setvar VAR_TEMP_3, 0 setvar VAR_TEMP_2, 0 lockall @@ -152,7 +152,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_NoTurningBack:: @ 82C408D closemessage end -BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: @ 82C40A2 +BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: pike_ispartyfullhealth compare VAR_RESULT, TRUE call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing @@ -172,29 +172,29 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: @ 82C40A2 waitstate end -BattleFrontier_BattlePikeRoom_EventScript_DisableHealing:: @ 82C4128 +BattleFrontier_BattlePikeRoom_EventScript_DisableHealing:: pike_nohealing TRUE return -BattleFrontier_BattlePikeRoom_EventScript_EnableHealing:: @ 82C4136 +BattleFrontier_BattlePikeRoom_EventScript_EnableHealing:: pike_nohealing FALSE return -BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom:: @ 82C4144 +BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL, 255, 2, 7 return -BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom:: @ 82C415C +BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 255, 6, 10 return -BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: @ 82C4174 +BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: pike_exitwildmonroom pike_ispartyfullhealth compare VAR_RESULT, TRUE @@ -215,12 +215,12 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: @ 82C4174 waitstate end -BattleFrontier_BattlePikeRoomWildMons_EventScript_SetEnteredRoom:: @ 82C4202 +BattleFrontier_BattlePikeRoomWildMons_EventScript_SetEnteredRoom:: setvar VAR_TEMP_3, 1 setvar VAR_TEMP_2, 1 end -BattleFrontier_BattlePikeRoomWildMons_EventScript_NoTurningBack:: @ 82C420D +BattleFrontier_BattlePikeRoomWildMons_EventScript_NoTurningBack:: setvar VAR_TEMP_3, 0 setvar VAR_TEMP_2, 0 lockall @@ -228,13 +228,13 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_NoTurningBack:: @ 82C420D closemessage end -BattleFrontier_BattlePike_EventScript_Retire:: @ 82C4222 +BattleFrontier_BattlePike_EventScript_Retire:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS CHALLENGE_STATUS_LOST warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 waitstate end -BattleFrontier_BattlePikeRoom_OnResume: @ 82C423E +BattleFrontier_BattlePikeRoom_OnResume: setorcopyvar VAR_0x8006, VAR_RESULT @ Save VAR_RESULT from being overwritten frontier_get FRONTIER_DATA_CHALLENGE_STATUS compare VAR_RESULT, CHALLENGE_STATUS_PAUSED @@ -242,14 +242,14 @@ BattleFrontier_BattlePikeRoom_OnResume: @ 82C423E compare VAR_RESULT, CHALLENGE_STATUS_SAVING goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume call BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves -BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume:: @ 82C426B +BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume:: setorcopyvar VAR_RESULT, VAR_0x8006 end -BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves:: @ 82C4271 +BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves:: frontier_resetsketch return -BattleFrontier_BattlePikeRoom_Movement_HidePlayer: @ 82C427A +BattleFrontier_BattlePikeRoom_Movement_HidePlayer: set_invisible step_end diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index d8dbe80bdfd0..921fa9582c33 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -8,25 +8,25 @@ .set NUM_OPPONENTS, VAR_0x8009 -BerryBlender_Text_WantToMakePokeblocks: @ 8292DEE +BerryBlender_Text_WantToMakePokeblocks: .string "Oh? Did you want to make some {POKEBLOCK}S\n" .string "with this old-timer?$" -BerryBlender_Text_Excellent: @ 8292E28 +BerryBlender_Text_Excellent: .string "Excellent!$" -BerryBlender_Text_MadeOldTimerSad: @ 8292E33 +BerryBlender_Text_MadeOldTimerSad: .string "Oh…\n" .string "You've made this old-timer sad…$" -BerryBlender_Text_KnowHowToMakePokeblocks: @ 8292E57 +BerryBlender_Text_KnowHowToMakePokeblocks: .string "Do you know how to make a {POKEBLOCK}?$" -BerryBlender_Text_LetsBerryBlender: @ 8292E78 +BerryBlender_Text_LetsBerryBlender: .string "Let's get started, then!\p" .string "Let's BERRY BLENDER!$" -BerryBlender_Text_ExplainBerryBlending: @ 8292EA6 +BerryBlender_Text_ExplainBerryBlending: .string "Okay, a little explanation, then.\p" .string "Oh, don't worry, it's quite simple.\p" .string "When the BLENDER's arrow comes to\n" @@ -34,63 +34,63 @@ BerryBlender_Text_ExplainBerryBlending: @ 8292EA6 .string "That's all you have to do.\n" .string "You'll see how easy it is when you try.$" -BerryBlender_Text_DontHaveAnyBerries: @ 8292F77 +BerryBlender_Text_DontHaveAnyBerries: .string "Oh?\n" .string "You don't have any BERRIES?\p" .string "If you don't have any BERRIES,\n" .string "you can't make any {POKEBLOCK}S.$" -BerryBlender_Text_CanHaveOneOfMyBerries: @ 8292FD1 +BerryBlender_Text_CanHaveOneOfMyBerries: .string "Well, that won't do at all now, will it?\p" .string "If you don't mind leftovers, you can\n" .string "have one of my BERRIES.\p" .string "That way, we could make some {POKEBLOCK}S\n" .string "together using the BERRY BLENDER.$" -BerryBlender_Text_DontHaveAnyBerriesToSpare: @ 829307D +BerryBlender_Text_DontHaveAnyBerriesToSpare: .string "If I had some BERRIES left over,\n" .string "I'd gladly give you one…\p" .string "But, I don't have any to spare today.\n" .string "We'll have to do this another time.$" -BerryBlender_Text_PokeblockCaseIsFull: @ 8293101 +BerryBlender_Text_PokeblockCaseIsFull: .string "But your {POKEBLOCK} CASE is full.\p" .string "You should use some {POKEBLOCK}S before\n" .string "you come see me again.$" -BerryBlender_Text_DontHavePokeblockCase: @ 8293157 +BerryBlender_Text_DontHavePokeblockCase: .string "But you don't have a {POKEBLOCK} CASE.\p" .string "You should get a {POKEBLOCK} CASE and then\n" .string "come see me.$" -BerryBlender_Text_LetsGetBlendingAlready: @ 82931AA +BerryBlender_Text_LetsGetBlendingAlready: .string "Let's get blending already!$" -BerryBlender_Text_WhatKindOfPokeblockWillIGet: @ 82931C6 +BerryBlender_Text_WhatKindOfPokeblockWillIGet: .string "I wonder what kind of {POKEBLOCK} I'll get?\n" .string "This is so exciting!$" -BerryBlender_Text_WantToBlendPokeblocksWithUs: @ 8293201 +BerryBlender_Text_WantToBlendPokeblocksWithUs: .string "Hi, there! Did you want to blend some\n" .string "{POKEBLOCK}S with us?$" -BerryBlender_Text_Okay: @ 8293237 +BerryBlender_Text_Okay: .string "Okay!$" -BerryBlender_Text_ThatsTooBad: @ 829323D +BerryBlender_Text_ThatsTooBad: .string "That's too bad…\p" .string "But we'll always be around whenever\n" .string "you get the urge to blend!$" -BerryBlender_Text_KnowHowToMakePokeblocks2: @ 829328C +BerryBlender_Text_KnowHowToMakePokeblocks2: .string "Of course, you do know how to\n" .string "blend {POKEBLOCK}S, don't you?$" -BerryBlender_Text_LetsBerryBlender2: @ 82932C3 +BerryBlender_Text_LetsBerryBlender2: .string "Let's get started, then!\p" .string "Let's BERRY BLENDER!$" -BerryBlender_Text_ExplainBerryBlending2: @ 82932F1 +BerryBlender_Text_ExplainBerryBlending2: .string "Okay!\n" .string "Let me explain it to you!\p" .string "When the spinning BLENDER's arrow\n" @@ -99,7 +99,7 @@ BerryBlender_Text_ExplainBerryBlending2: @ 82932F1 .string "That's all it takes.\n" .string "Pretty easy, don't you think?$" -BerryBlender_Text_DontHaveAnyBerries2: @ 8293394 +BerryBlender_Text_DontHaveAnyBerries2: .string "Oh, but wait a second here…\n" .string "You don't have any BERRIES.\p" .string "You can't make any {POKEBLOCK}S without\n" @@ -107,40 +107,40 @@ BerryBlender_Text_DontHaveAnyBerries2: @ 8293394 .string "We'll always be around whenever you\n" .string "get hold of some BERRIES to blend.$" -BerryBlender_Text_PokeblockCaseIsFull2: @ 829343E +BerryBlender_Text_PokeblockCaseIsFull2: .string "Oh, but wait a second here…\n" .string "Your {POKEBLOCK} CASE is full.\p" .string "You should use some {POKEBLOCK}S and\n" .string "then come back.$" -BerryBlender_Text_DontHavePokeblockCase2: @ 82934A2 +BerryBlender_Text_DontHavePokeblockCase2: .string "Oh, but wait a second here…\n" .string "You don't have a {POKEBLOCK} CASE.\p" .string "You should get a {POKEBLOCK} CASE and\n" .string "then come back.$" @ Unused -BerryBlender_Text_MakePokeblocksWithOurGroup: @ 829350B +BerryBlender_Text_MakePokeblocksWithOurGroup: .string "Oh, hello! Did you want to make some\n" .string "{POKEBLOCK}S with our little group?$" -BerryBlender_Text_OhDear: @ 829354E +BerryBlender_Text_OhDear: .string "Oh, dear!$" -BerryBlender_Text_LeftUsInShock: @ 8293558 +BerryBlender_Text_LeftUsInShock: .string "Oh, dear me…\p" .string "You've left us in shock!$" -BerryBlender_Text_KnowHowToMakePokeblocks3: @ 829357E +BerryBlender_Text_KnowHowToMakePokeblocks3: .string "Naturally, you know how to make\n" .string "{POKEBLOCK}S, don't you?$" -BerryBlender_Text_LetsBerryBlender3: @ 82935B1 +BerryBlender_Text_LetsBerryBlender3: .string "Okay, dear!\n" .string "Let's get started!\p" .string "Let's BERRY BLENDER!$" -BerryBlender_Text_ExplainBerryBlending3: @ 82935E5 +BerryBlender_Text_ExplainBerryBlending3: .string "Oh, dear!\p" .string "Then, I'll explain it to you nicely.\p" .string "When the BLENDER's arrow spins to\n" @@ -148,7 +148,7 @@ BerryBlender_Text_ExplainBerryBlending3: @ 82935E5 .string "That's all it takes.\n" .string "Isn't it simple?$" -BerryBlender_Text_DontHaveAnyBerries3: @ 829367D +BerryBlender_Text_DontHaveAnyBerries3: .string "You don't have any BERRIES,\n" .string "do you?\p" .string "If you don't have any BERRIES,\n" @@ -157,84 +157,84 @@ BerryBlender_Text_DontHaveAnyBerries3: @ 829367D .string "so let's make some together when\l" .string "you get a BERRY or two.$" -BerryBlender_Text_PokeblockCaseIsFull3: @ 8293738 +BerryBlender_Text_PokeblockCaseIsFull3: .string "Your {POKEBLOCK} CASE is full,\n" .string "it looks like.\p" .string "You should use some {POKEBLOCK}S up\n" .string "and then come back.$" -BerryBlender_Text_DontHavePokeblockCase3: @ 8293792 +BerryBlender_Text_DontHavePokeblockCase3: .string "You haven't gotten a {POKEBLOCK} CASE\n" .string "yet, it looks like.\p" .string "You need to get a {POKEBLOCK} CASE before\n" .string "you come back.$" -BerryBlender_Text_SetNewBlenderRecord: @ 82937F9 +BerryBlender_Text_SetNewBlenderRecord: .string "Okay! Today's going to be the day that\n" .string "I set a new BLENDER speed record!$" -BerryBlender_Text_LookGoodAtBlendingJoinUs: @ 8293842 +BerryBlender_Text_LookGoodAtBlendingJoinUs: .string "Oh, dear!\n" .string "You look as if you're good at blending.\l" .string "Would you like to join us?$" -BerryBlender_Text_MakeDeliciousPokeblocks: @ 829388F +BerryBlender_Text_MakeDeliciousPokeblocks: .string "I'm going to make delicious {POKEBLOCK}S\n" .string "and make my POKéMON cuter.$" -BerryBlender_Text_SaveGameBeforeBerryBlenderLink: @ 82938CD +BerryBlender_Text_SaveGameBeforeBerryBlenderLink: .string "{POKEBLOCK}S will be made with your friends \n" .string "from BERRIES in the BERRY BLENDER.\p" .string "Is it okay to save the game before\n" .string "linking with your friends?$" -BerryBlender_Text_SearchingForFriends: @ 8293955 +BerryBlender_Text_SearchingForFriends: .string "Searching for your friends…\n" .string "… … B Button: Cancel$" -BerryBlender_Text_Player1Arrived: @ 8293986 +BerryBlender_Text_Player1Arrived: .string "{STR_VAR_1} arrived.$" -BerryBlender_Text_Player1And2Arrived: @ 8293992 +BerryBlender_Text_Player1And2Arrived: .string "{STR_VAR_1} and {STR_VAR_2} arrived.$" -BerryBlender_Text_AllPlayersArrived: @ 82939A5 +BerryBlender_Text_AllPlayersArrived: .string "{STR_VAR_1}, {STR_VAR_2}, and\n" .string "{STR_VAR_3} arrived.$" -BerryBlender_Text_NoBerriesLink: @ 82939BD +BerryBlender_Text_NoBerriesLink: .string "You have no BERRIES.\n" .string "The BERRY BLENDER can't be used.$" -BerryBlender_Text_PokeblockCaseIsFullLink: @ 82939F3 +BerryBlender_Text_PokeblockCaseIsFullLink: .string "Your {POKEBLOCK} CASE is full.\n" .string "The BERRY BLENDER can't be used.$" -BerryBlender_Text_DontHavePokeblockCaseLink: @ 8293A2D +BerryBlender_Text_DontHavePokeblockCaseLink: .string "You don't have a {POKEBLOCK} CASE.\n" .string "The BERRY BLENDER can't be used.$" -BerryBlender_Text_LoveMakingPokeblocks: @ 8293A6B +BerryBlender_Text_LoveMakingPokeblocks: .string "I love making {POKEBLOCK}S.\p" .string "I always have some BERRIES with me.$" -BerryBlender_Text_MakePokeblocksUsingBerryBlender: @ 8293AA5 +BerryBlender_Text_MakePokeblocksUsingBerryBlender: .string "If you'd like, we could make some\n" .string "{POKEBLOCK}S together using the\l" .string "BERRY BLENDER.$" -BerryBlender_Text_DontHaveAnyBerriesHaveOne: @ 8293AF0 +BerryBlender_Text_DontHaveAnyBerriesHaveOne: .string "Oh?\n" .string "You don't have any BERRIES?\p" .string "Well, that won't do at all now, will it?\p" .string "If you don't mind leftovers, you can\n" .string "have one of my BERRIES.$" -BerryBlender_Text_UseItToMakePokeblocksTogether: @ 8293B76 +BerryBlender_Text_UseItToMakePokeblocksTogether: .string "We'll use it to make {POKEBLOCK}S together\n" .string "using the BERRY BLENDER.$" -BerryBlender_Text_DontHaveAnyBerriesNoneToSpare: @ 8293BB4 +BerryBlender_Text_DontHaveAnyBerriesNoneToSpare: .string "Oh?\n" .string "You don't have any BERRIES?\p" .string "If I had some left over, I'd gladly\n" @@ -242,7 +242,7 @@ BerryBlender_Text_DontHaveAnyBerriesNoneToSpare: @ 8293BB4 .string "But, I don't have any to spare today.\n" .string "Sorry about that.$" -BerryBlender_EventScript_BerryBlender1:: @ 8293C3E +BerryBlender_EventScript_BerryBlender1:: lockall goto_if_unset FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER, BerryBlender_EventScript_BlendMasterPresent setvar NUM_OPPONENTS, 1 @@ -254,48 +254,48 @@ BerryBlender_EventScript_BerryBlender1:: @ 8293C3E goto BerryBlender_EventScript_DeclineBlender1 end -BerryBlender_EventScript_DeclineBlender1: @ 8293C70 +BerryBlender_EventScript_DeclineBlender1: msgbox BerryBlender_Text_MadeOldTimerSad, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender1NoBerries: @ 8293C7A +BerryBlender_EventScript_Blender1NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries, MSGBOX_DEFAULT dotimebasedevents goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, BerryBlender_EventScript_Blender1NoSpareBerries goto BerryBlender_EventScript_Blender1GiveSpareBerry end -BerryBlender_EventScript_Blender1NoSpareBerries: @ 8293C92 +BerryBlender_EventScript_Blender1NoSpareBerries: msgbox BerryBlender_Text_DontHaveAnyBerriesToSpare, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender1GiveSpareBerry: @ 8293C9C +BerryBlender_EventScript_Blender1GiveSpareBerry: msgbox BerryBlender_Text_CanHaveOneOfMyBerries, MSGBOX_DEFAULT giveitem ITEM_PECHA_BERRY setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY goto BerryBlender_EventScript_UseBerryBlender1 end -BerryBlender_EventScript_UseBerryBlender1: @ 8293CB9 +BerryBlender_EventScript_UseBerryBlender1: msgbox BerryBlender_Text_KnowHowToMakePokeblocks, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq BerryBlender_EventScript_StartBlender1 goto BerryBlender_EventScript_ExplainBlending1 end -BerryBlender_EventScript_StartBlender1: @ 8293CD2 +BerryBlender_EventScript_StartBlender1: msgbox BerryBlender_Text_LetsBerryBlender, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end -BerryBlender_EventScript_ExplainBlending1: @ 8293CE0 +BerryBlender_EventScript_ExplainBlending1: msgbox BerryBlender_Text_ExplainBerryBlending, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender1 end -BerryBlender_EventScript_TryUseBerryBlender1: @ 8293CEE +BerryBlender_EventScript_TryUseBerryBlender1: checkitem ITEM_POKEBLOCK_CASE, 1 compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender1NoCase @@ -309,7 +309,7 @@ BerryBlender_EventScript_TryUseBerryBlender1: @ 8293CEE goto BerryBlender_EventScript_UseBerryBlender1 end -BerryBlender_EventScript_DoBerryBlending: @ 8293D2C +BerryBlender_EventScript_DoBerryBlending: copyvar VAR_0x8004, NUM_OPPONENTS fadescreen FADE_TO_BLACK special DoBerryBlending @@ -317,17 +317,17 @@ BerryBlender_EventScript_DoBerryBlending: @ 8293D2C releaseall end -BerryBlender_EventScript_Blender1CaseFull: @ 8293D39 +BerryBlender_EventScript_Blender1CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender1NoCase: @ 8293D43 +BerryBlender_EventScript_Blender1NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_BerryBlender2:: @ 8293D4D +BerryBlender_EventScript_BerryBlender2:: lockall setvar NUM_OPPONENTS, 2 applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection @@ -339,34 +339,34 @@ BerryBlender_EventScript_BerryBlender2:: @ 8293D4D goto BerryBlender_EventScript_DeclineBlender2 end -BerryBlender_EventScript_DeclineBlender2: @ 8293D7D +BerryBlender_EventScript_DeclineBlender2: msgbox BerryBlender_Text_ThatsTooBad, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender2NoBerries: @ 8293D87 +BerryBlender_EventScript_Blender2NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries2, MSGBOX_DEFAULT release end -BerryBlender_EventScript_UseBerryBlender2: @ 8293D91 +BerryBlender_EventScript_UseBerryBlender2: msgbox BerryBlender_Text_KnowHowToMakePokeblocks2, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq BerryBlender_EventScript_StartBlender2 goto BerryBlender_EventScript_ExplainBlending2 end -BerryBlender_EventScript_StartBlender2: @ 8293DAA +BerryBlender_EventScript_StartBlender2: msgbox BerryBlender_Text_LetsBerryBlender2, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end -BerryBlender_EventScript_ExplainBlending2: @ 8293DB8 +BerryBlender_EventScript_ExplainBlending2: msgbox BerryBlender_Text_ExplainBerryBlending2, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender2 end -BerryBlender_EventScript_TryUseBerryBlender2: @ 8293DC6 +BerryBlender_EventScript_TryUseBerryBlender2: specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender2NoBerries @@ -381,17 +381,17 @@ BerryBlender_EventScript_TryUseBerryBlender2: @ 8293DC6 goto_if_eq BerryBlender_EventScript_Blender2CaseFull end -BerryBlender_EventScript_Blender2CaseFull: @ 8293E0A +BerryBlender_EventScript_Blender2CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull2, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender2NoCase: @ 8293E14 +BerryBlender_EventScript_Blender2NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase2, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_BerryBlender3:: @ 8293E1E +BerryBlender_EventScript_BerryBlender3:: lockall setvar VAR_0x8008, LOCALID_POKEFAN_F setvar NUM_OPPONENTS, 3 @@ -405,34 +405,34 @@ BerryBlender_EventScript_BerryBlender3:: @ 8293E1E goto BerryBlender_EventScript_DeclineBlender3 end -BerryBlender_EventScript_DeclineBlender3: @ 8293E5A +BerryBlender_EventScript_DeclineBlender3: msgbox BerryBlender_Text_LeftUsInShock, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender3NoBerries: @ 8293E64 +BerryBlender_EventScript_Blender3NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries3, MSGBOX_DEFAULT release end -BerryBlender_EventScript_UseBerryBlender3: @ 8293E6E +BerryBlender_EventScript_UseBerryBlender3: msgbox BerryBlender_Text_KnowHowToMakePokeblocks3, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq BerryBlender_EventScript_StartBlender3 goto BerryBlender_EventScript_ExplainBlending3 end -BerryBlender_EventScript_StartBlender3: @ 8293E87 +BerryBlender_EventScript_StartBlender3: msgbox BerryBlender_Text_LetsBerryBlender3, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end -BerryBlender_EventScript_ExplainBlending3: @ 8293E95 +BerryBlender_EventScript_ExplainBlending3: msgbox BerryBlender_Text_ExplainBerryBlending3, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender3 end -BerryBlender_EventScript_TryUseBlender3: @ 8293EA3 +BerryBlender_EventScript_TryUseBlender3: specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender3NoBerries @@ -447,17 +447,17 @@ BerryBlender_EventScript_TryUseBlender3: @ 8293EA3 goto_if_eq BerryBlender_EventScript_Blender3CaseFull end -BerryBlender_EventScript_Blender3CaseFull: @ 8293EE7 +BerryBlender_EventScript_Blender3CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull3, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender3NoCase: @ 8293EF1 +BerryBlender_EventScript_Blender3NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase3, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_BlendMasterPresent: @ 8293EFB +BerryBlender_EventScript_BlendMasterPresent: lockall setvar NUM_OPPONENTS, 1 msgbox BerryBlender_Text_SeeMyMasteryInAction, MSGBOX_YESNO @@ -467,12 +467,12 @@ BerryBlender_EventScript_BlendMasterPresent: @ 8293EFB releaseall end -BerryBlender_EventScript_BlendMasterNoBerries: @ 8293F1E +BerryBlender_EventScript_BlendMasterNoBerries: msgbox BerryBlender_Text_BlendMasterNoBerries, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_TryBlendWithBlendMaster: @ 8293F28 +BerryBlender_EventScript_TryBlendWithBlendMaster: checkitem ITEM_POKEBLOCK_CASE, 1 compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_BlendMasterNoCase @@ -486,7 +486,7 @@ BerryBlender_EventScript_TryBlendWithBlendMaster: @ 8293F28 goto_if_eq BerryBlender_EventScript_BlendMasterCaseFull end -BerryBlender_EventScript_BlendWithBlendMaster: @ 8293F64 +BerryBlender_EventScript_BlendWithBlendMaster: msgbox BerryBlender_Text_BlendMasterKnowHowToMakePokeblocks, MSGBOX_YESNO compare VAR_RESULT, NO call_if_eq BerryBlender_EventScript_BlendMasterExplainBlending @@ -494,38 +494,38 @@ BerryBlender_EventScript_BlendWithBlendMaster: @ 8293F64 goto BerryBlender_EventScript_DoBerryBlending end -BerryBlender_EventScript_BlendMasterExplainBlending: @ 8293F85 +BerryBlender_EventScript_BlendMasterExplainBlending: msgbox BerryBlender_Text_BlendMasterExplainBerryBlending, MSGBOX_DEFAULT return -BerryBlender_EventScript_BlendMasterNoCase: @ 8293F8E +BerryBlender_EventScript_BlendMasterNoCase: msgbox BerryBlender_Text_BlendMasterNoPokeblockCase, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_BlendMasterCaseFull: @ 8293F98 +BerryBlender_EventScript_BlendMasterCaseFull: msgbox BerryBlender_Text_BlendMasterPokeblockCaseFull, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_Blender2Man:: @ 8293FA2 +BerryBlender_EventScript_Blender2Man:: msgbox BerryBlender_Text_SetNewBlenderRecord, MSGBOX_NPC end -BerryBlender_EventScript_Blender3PokefanF:: @ 8293FAB +BerryBlender_EventScript_Blender3PokefanF:: msgbox BerryBlender_Text_LookGoodAtBlendingJoinUs, MSGBOX_NPC end -BerryBlender_EventScript_Blender2Twin:: @ 8293FB4 +BerryBlender_EventScript_Blender2Twin:: msgbox BerryBlender_Text_MakeDeliciousPokeblocks, MSGBOX_NPC end -BerryBlender_EventScript_Blender1ExpertM:: @ 8293FBD +BerryBlender_EventScript_Blender1ExpertM:: setvar VAR_0x8008, 15 goto BerryBlender_EventScript_ExpertMCheckGiveBerry end -BerryBlender_EventScript_ExpertMCheckGiveBerry: @ 8293FC8 +BerryBlender_EventScript_ExpertMCheckGiveBerry: lock faceplayer msgbox BerryBlender_Text_LoveMakingPokeblocks, MSGBOX_DEFAULT @@ -536,12 +536,12 @@ BerryBlender_EventScript_ExpertMCheckGiveBerry: @ 8293FC8 goto_if_eq BerryBlender_EventScript_ExpertMNoBerries end -BerryBlender_EventScript_ExpertMPlayerHasBerries: @ 8293FEE +BerryBlender_EventScript_ExpertMPlayerHasBerries: msgbox BerryBlender_Text_MakePokeblocksUsingBerryBlender, MSGBOX_DEFAULT release end -BerryBlender_EventScript_ExpertMNoBerries: @ 8293FF8 +BerryBlender_EventScript_ExpertMNoBerries: checkitem ITEM_POKEBLOCK_CASE, 1 compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_ExpertMNoSpareBerries @@ -553,12 +553,12 @@ BerryBlender_EventScript_ExpertMNoBerries: @ 8293FF8 goto BerryBlender_EventScript_ExpertMGiveBerry end -BerryBlender_EventScript_ExpertMNoSpareBerries: @ 8294028 +BerryBlender_EventScript_ExpertMNoSpareBerries: msgbox BerryBlender_Text_DontHaveAnyBerriesNoneToSpare, MSGBOX_DEFAULT release end -BerryBlender_EventScript_ExpertMGiveBerry: @ 8294032 +BerryBlender_EventScript_ExpertMGiveBerry: msgbox BerryBlender_Text_DontHaveAnyBerriesHaveOne, MSGBOX_DEFAULT giveitem ITEM_PECHA_BERRY setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY @@ -566,11 +566,11 @@ BerryBlender_EventScript_ExpertMGiveBerry: @ 8294032 release end -BerryBlender_Movement_BlendLeaderWalkInPlace: @ 8294053 +BerryBlender_Movement_BlendLeaderWalkInPlace: walk_in_place_fastest_right step_end -BerryBlender_EventScript_BerryBlenderLink:: @ 8294055 +BerryBlender_EventScript_BerryBlenderLink:: lockall specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE @@ -585,7 +585,7 @@ BerryBlender_EventScript_BerryBlenderLink:: @ 8294055 goto_if_eq BerryBlender_EventScript_LinkBlenderCaseFull end -BerryBlender_EventScript_LinkBlenderSaveGame: @ 8294092 +BerryBlender_EventScript_LinkBlenderSaveGame: msgbox BerryBlender_Text_SaveGameBeforeBerryBlenderLink, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq BerryBlender_EventScript_TryDoLinkBlender @@ -593,12 +593,12 @@ BerryBlender_EventScript_LinkBlenderSaveGame: @ 8294092 goto_if_eq BerryBlender_EventScript_CancelLinkBlender end -BerryBlender_EventScript_LinkBlenderNoBerries: @ 82940B1 +BerryBlender_EventScript_LinkBlenderNoBerries: msgbox BerryBlender_Text_NoBerriesLink, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_TryDoLinkBlender: @ 82940BB +BerryBlender_EventScript_TryDoLinkBlender: call Common_EventScript_SaveGame compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_CancelLinkBlender @@ -621,22 +621,22 @@ BerryBlender_EventScript_TryDoLinkBlender: @ 82940BB goto_if_eq BerryBlender_EventScript_LinkError end -BerryBlender_EventScript_TwoPlayerLink: @ 829411D +BerryBlender_EventScript_TwoPlayerLink: msgbox BerryBlender_Text_Player1Arrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end -BerryBlender_EventScript_ThreePlayerLink: @ 829412B +BerryBlender_EventScript_ThreePlayerLink: msgbox BerryBlender_Text_Player1And2Arrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end -BerryBlender_EventScript_FourPlayerLink: @ 8294139 +BerryBlender_EventScript_FourPlayerLink: msgbox BerryBlender_Text_AllPlayersArrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end -BerryBlender_EventScript_DoLinkBerryBlending: @ 8294147 +BerryBlender_EventScript_DoLinkBerryBlending: setvar VAR_0x8004, 0 @ number of opponents, 0 indicates Link fadescreen FADE_TO_BLACK removeobject 240 @ Unclear where these local IDs come from, @@ -648,45 +648,45 @@ BerryBlender_EventScript_DoLinkBerryBlending: @ 8294147 releaseall end -BerryBlender_EventScript_CancelLinkBlender: @ 8294160 +BerryBlender_EventScript_CancelLinkBlender: releaseall end -BerryBlender_EventScript_LinkBlenderCaseFull: @ 8294162 +BerryBlender_EventScript_LinkBlenderCaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFullLink, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_LinkBlenderNoCase: @ 829416C +BerryBlender_EventScript_LinkBlenderNoCase: msgbox BerryBlender_Text_DontHavePokeblockCaseLink, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_CloseLinkNotReady: @ 8294176 +BerryBlender_EventScript_CloseLinkNotReady: special CloseLink msgbox Text_SomeoneIsNotReadyToLink, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_CloseLinkDifferentSelections: @ 8294183 +BerryBlender_EventScript_CloseLinkDifferentSelections: special CloseLink msgbox Text_PlayersMadeDifferentSelections, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_CloseLink: @ 8294190 +BerryBlender_EventScript_CloseLink: special CloseLink msgbox gText_PokeblockLinkCanceled, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_LinkError: @ 829419D +BerryBlender_EventScript_LinkError: special CloseLink msgbox Text_LinkErrorPleaseReset, MSGBOX_DEFAULT releaseall end -BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA +BerryBlender_EventScript_SpawnLinkPartners: fadescreen FADE_TO_BLACK specialvar VAR_RESULT, GetLinkPartnerNames copyvar VAR_0x8008, VAR_RESULT @@ -695,7 +695,7 @@ BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA goto BerryBlender_EventScript_LinkPlayersArrived end -BerryBlender_EventScript_LinkPlayersArrived: @ 82941C4 +BerryBlender_EventScript_LinkPlayersArrived: fadescreen FADE_FROM_BLACK switch VAR_0x8008 case 2, BerryBlender_EventScript_TwoPlayerLink @@ -703,12 +703,12 @@ BerryBlender_EventScript_LinkPlayersArrived: @ 82941C4 case 4, BerryBlender_EventScript_FourPlayerLink end -BerryBlender_EventScript_StartDecideLinkLeader: @ 82941ED +BerryBlender_EventScript_StartDecideLinkLeader: setvar VAR_0x8004, LINK_GROUP_BERRY_BLENDER goto BerryBlender_EventScript_DecideLinkLeader end -BerryBlender_EventScript_DecideLinkLeader: @ 82941F8 +BerryBlender_EventScript_DecideLinkLeader: message LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -719,7 +719,7 @@ BerryBlender_EventScript_DecideLinkLeader: @ 82941F8 case MULTI_B_PRESSED, BerryBlender_EventScript_CloseLink end -BerryBlender_EventScript_TryLeadGroup: @ 8294235 +BerryBlender_EventScript_TryLeadGroup: call BerryBlender_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq BerryBlender_EventScript_LinkLeaderDecided @@ -730,7 +730,7 @@ BerryBlender_EventScript_TryLeadGroup: @ 8294235 release end -BerryBlender_EventScript_TryJoinGroup: @ 829425D +BerryBlender_EventScript_TryJoinGroup: call BerryBlender_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq BerryBlender_EventScript_LinkLeaderDecided @@ -741,16 +741,16 @@ BerryBlender_EventScript_TryJoinGroup: @ 829425D release end -BerryBlender_EventScript_TryBecomeLinkLeader: @ 8294285 +BerryBlender_EventScript_TryBecomeLinkLeader: special TryBecomeLinkLeader waitstate return -BerryBlender_EventScript_TryJoinLinkGroup: @ 829428A +BerryBlender_EventScript_TryJoinLinkGroup: special TryJoinLinkGroup waitstate return -BerryBlender_EventScript_LinkLeaderDecided: @ 829428F +BerryBlender_EventScript_LinkLeaderDecided: goto BerryBlender_EventScript_SpawnLinkPartners end diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index fe10af4b3d55..e415d0c657da 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -1,4 +1,4 @@ -BerryTreeScript:: @ 82742F9 +BerryTreeScript:: special ObjectEventInteractionGetBerryTreeData switch VAR_0x8004 case BERRY_STAGE_SPARKLING, BerryTree_EventScript_Sparkling @@ -10,7 +10,7 @@ BerryTreeScript:: @ 82742F9 case BERRY_STAGE_BERRIES, BerryTree_EventScript_CheckBerryFullyGrown end -BerryTree_EventScript_Sparkling:: @ 827434F +BerryTree_EventScript_Sparkling:: lockall message BerryTree_Text_ExclamationPoint waitmessage @@ -18,7 +18,7 @@ BerryTree_EventScript_Sparkling:: @ 827434F releaseall end -BerryTree_EventScript_CheckSoil:: @ 8274359 +BerryTree_EventScript_CheckSoil:: lock faceplayer specialvar VAR_RESULT, PlayerHasBerries @@ -30,7 +30,7 @@ BerryTree_EventScript_CheckSoil:: @ 8274359 release end -BerryTree_EventScript_WantToPlant:: @ 8274374 +BerryTree_EventScript_WantToPlant:: msgbox BerryTree_Text_WantToPlant, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq BerryTree_EventScript_ChooseBerryToPlant @@ -38,7 +38,7 @@ BerryTree_EventScript_WantToPlant:: @ 8274374 goto_if_eq BerryTree_EventScript_CancelPlanting end -BerryTree_EventScript_ChooseBerryToPlant:: @ 8274393 +BerryTree_EventScript_ChooseBerryToPlant:: fadescreen FADE_TO_BLACK closemessage special Bag_ChooseBerry @@ -48,11 +48,11 @@ BerryTree_EventScript_ChooseBerryToPlant:: @ 8274393 removeitem VAR_ITEM_ID call BerryTree_EventScript_PlantBerry -BerryTree_EventScript_CancelPlanting:: @ 82743AF +BerryTree_EventScript_CancelPlanting:: release end -BerryTree_EventScript_CheckBerryStage1:: @ 82743B1 +BerryTree_EventScript_CheckBerryStage1:: lockall special ObjectEventInteractionGetBerryCountString message BerryTree_Text_BerryGrowthStage1 @@ -60,7 +60,7 @@ BerryTree_EventScript_CheckBerryStage1:: @ 82743B1 waitbuttonpress goto BerryTree_EventScript_WantToWater -BerryTree_EventScript_CheckBerryStage2:: @ 82743C1 +BerryTree_EventScript_CheckBerryStage2:: lockall special ObjectEventInteractionGetBerryName message BerryTree_Text_BerryGrowthStage2 @@ -68,7 +68,7 @@ BerryTree_EventScript_CheckBerryStage2:: @ 82743C1 waitbuttonpress goto BerryTree_EventScript_WantToWater -BerryTree_EventScript_CheckBerryStage3:: @ 82743D1 +BerryTree_EventScript_CheckBerryStage3:: lockall special ObjectEventInteractionGetBerryName message BerryTree_Text_BerryGrowthStage3 @@ -76,7 +76,7 @@ BerryTree_EventScript_CheckBerryStage3:: @ 82743D1 waitbuttonpress goto BerryTree_EventScript_WantToWater -BerryTree_EventScript_CheckBerryStage4:: @ 82743E1 +BerryTree_EventScript_CheckBerryStage4:: call BerryTree_EventScript_GetCareAdverb lockall special ObjectEventInteractionGetBerryName @@ -87,7 +87,7 @@ BerryTree_EventScript_CheckBerryStage4:: @ 82743E1 @ VAR_0x8005 here is the number of times watered @ Buffered by ObjectEventInteractionGetBerryTreeData -BerryTree_EventScript_GetCareAdverb:: @ 82743F6 +BerryTree_EventScript_GetCareAdverb:: compare VAR_0x8005, 0 goto_if_eq BerryTree_EventScript_SetAdverbPoor compare VAR_0x8005, 4 @@ -95,16 +95,16 @@ BerryTree_EventScript_GetCareAdverb:: @ 82743F6 bufferstring 1, BerryTree_Text_CareAdverbGood return -BerryTree_EventScript_SetAdverbGreat:: @ 8274413 +BerryTree_EventScript_SetAdverbGreat:: bufferstring 1, BerryTree_Text_CareAdverbGreat return -BerryTree_EventScript_SetAdverbPoor:: @ 827441A +BerryTree_EventScript_SetAdverbPoor:: bufferstring 1, BerryTree_Text_CareAdverbPoor return @ VAR_0x8006 here is the number of berries -BerryTree_EventScript_CheckBerryFullyGrown:: @ 8274421 +BerryTree_EventScript_CheckBerryFullyGrown:: buffernumberstring 1, VAR_0x8006 lock faceplayer @@ -115,7 +115,7 @@ BerryTree_EventScript_CheckBerryFullyGrown:: @ 8274421 compare VAR_RESULT, NO goto_if_eq BerryTree_EventScript_CancelPickingBerry -BerryTree_EventScript_PickBerry:: @ 8274448 +BerryTree_EventScript_PickBerry:: special ObjectEventInteractionPickBerryTree compare VAR_0x8004, 0 goto_if_eq BerryTree_EventScript_BerryPocketFull @@ -132,28 +132,28 @@ BerryTree_EventScript_PickBerry:: @ 8274448 release end -BerryTree_EventScript_BerryPocketFull:: @ 8274470 +BerryTree_EventScript_BerryPocketFull:: message BerryTree_Text_BerryPocketFull waitmessage waitbuttonpress release end -BerryTree_EventScript_CancelPickingBerry:: @ 8274479 +BerryTree_EventScript_CancelPickingBerry:: message BerryTree_Text_BerryLeftUnpicked waitmessage waitbuttonpress release end -BerryTree_EventScript_ItemUsePlantBerry:: @ 8274482 +BerryTree_EventScript_ItemUsePlantBerry:: lockall special ObjectEventInteractionGetBerryTreeData call BerryTree_EventScript_PlantBerry releaseall end -BerryTree_EventScript_WantToWater:: @ 827448D +BerryTree_EventScript_WantToWater:: checkitem ITEM_WAILMER_PAIL, 1 compare VAR_RESULT, 0 goto_if_eq BerryTree_EventScript_DontWater @@ -164,14 +164,14 @@ BerryTree_EventScript_WantToWater:: @ 827448D compare VAR_RESULT, NO goto_if_eq BerryTree_EventScript_DontWater -BerryTree_EventScript_DontWater:: @ 82744BE +BerryTree_EventScript_DontWater:: releaseall end -BerryTree_EventScript_ItemUseWailmerPail:: @ 82744C0 +BerryTree_EventScript_ItemUseWailmerPail:: special ObjectEventInteractionGetBerryTreeData lockall -BerryTree_EventScript_WaterBerry:: @ 82744C4 +BerryTree_EventScript_WaterBerry:: special ObjectEventInteractionGetBerryName message BerryTree_Text_WateredTheBerry waitmessage @@ -184,7 +184,7 @@ BerryTree_EventScript_WaterBerry:: @ 82744C4 releaseall end -BerryTree_EventScript_PlantBerry:: @ 82744DD +BerryTree_EventScript_PlantBerry:: special ObjectEventInteractionPlantBerryTree incrementgamestat GAME_STAT_PLANTED_BERRIES special IncrementDailyPlantedBerries @@ -194,70 +194,70 @@ BerryTree_EventScript_PlantBerry:: @ 82744DD waitbuttonpress return -BerryTree_Text_ItsSoftLoamySoil: @ 82744F0 +BerryTree_Text_ItsSoftLoamySoil: .string "It's soft, loamy soil.$" -BerryTree_Text_WantToPlant: @ 8274507 +BerryTree_Text_WantToPlant: .string "It's soft, loamy soil.\n" .string "Want to plant a BERRY?$" -BerryTree_Text_PlantedOneBerry: @ 8274535 +BerryTree_Text_PlantedOneBerry: .string "{PLAYER} planted one {STR_VAR_1} in\n" .string "the soft, loamy soil.$" -BerryTree_Text_BerryGrowthStage1: @ 8274560 +BerryTree_Text_BerryGrowthStage1: .string "One {STR_VAR_1} was planted here.$" -BerryTree_Text_BerryGrowthStage2: @ 8274579 +BerryTree_Text_BerryGrowthStage2: .string "{STR_VAR_1} has sprouted.$" -BerryTree_Text_BerryGrowthStage3: @ 827458A +BerryTree_Text_BerryGrowthStage3: .string "This {STR_VAR_1} plant is growing taller.$" -BerryTree_Text_BerryGrowthStage4: @ 82745AB +BerryTree_Text_BerryGrowthStage4: .string "These {STR_VAR_1} flowers are blooming\n" .string "{STR_VAR_2}.$" -BerryTree_Text_CareAdverbGreat: @ 82745CD +BerryTree_Text_CareAdverbGreat: .string "very beautifully$" -BerryTree_Text_CareAdverbPoor: @ 82745DE +BerryTree_Text_CareAdverbPoor: .string "cutely$" -BerryTree_Text_CareAdverbGood: @ 82745E5 +BerryTree_Text_CareAdverbGood: .string "prettily$" -BerryTree_Text_WantToPick: @ 82745EE +BerryTree_Text_WantToPick: .string "You found {STR_VAR_2} {STR_VAR_1}!\p" .string "Do you want to pick the\n" .string "{STR_VAR_1}?$" -BerryTree_Text_PickedTheBerry: @ 827461B +BerryTree_Text_PickedTheBerry: .string "{PLAYER} picked the {STR_VAR_2} {STR_VAR_1}.$" -BerryTree_Text_PutAwayBerry: @ 8274630 +BerryTree_Text_PutAwayBerry: .string "{PLAYER} put away the {STR_VAR_1}\n" .string "in the BAG's BERRIES POCKET.\p" .string "The soil returned to its soft and\n" .string "loamy state.$" -BerryTree_Text_BerryPocketFull: @ 827468F +BerryTree_Text_BerryPocketFull: .string "The BAG's BERRIES POCKET is full.\p" .string "The {STR_VAR_1} couldn't be taken.$" -BerryTree_Text_BerryLeftUnpicked: @ 82746CB +BerryTree_Text_BerryLeftUnpicked: .string "{PLAYER} left the {STR_VAR_1}\n" .string "unpicked.$" -BerryTree_Text_WantToWater: @ 82746E4 +BerryTree_Text_WantToWater: .string "Want to water the {STR_VAR_1} with the\n" .string "WAILMER PAIL?$" -BerryTree_Text_WateredTheBerry: @ 8274710 +BerryTree_Text_WateredTheBerry: .string "{PLAYER} watered the {STR_VAR_1}.$" -BerryTree_Text_PlantIsDelighted: @ 8274723 +BerryTree_Text_PlantIsDelighted: .string "The plant seems to be delighted.$" -BerryTree_Text_ExclamationPoint: @ 8274744 +BerryTree_Text_ExclamationPoint: .string "!$" diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index c17f77c0a240..5cecb60d8109 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -1,8 +1,8 @@ -CableClub_OnTransition: @ 8276ACF +CableClub_OnTransition: call CableClub_EventScript_HideOrShowMysteryGiftMan end -CableClub_EventScript_HideOrShowMysteryGiftMan:: @ 8276AD5 +CableClub_EventScript_HideOrShowMysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_ShowMysteryGiftMan @@ -12,30 +12,30 @@ CableClub_EventScript_HideOrShowMysteryGiftMan:: @ 8276AD5 goto CableClub_EventScript_ShowMysteryGiftMan end -CableClub_EventScript_ShowMysteryGiftMan:: @ 8276AFB +CableClub_EventScript_ShowMysteryGiftMan:: clearflag FLAG_HIDE_POKEMON_CENTER_2F_MYSTERY_GIFT_MAN return -CableClub_EventScript_HideMysteryGiftMan:: @ 8276AFF +CableClub_EventScript_HideMysteryGiftMan:: setflag FLAG_HIDE_POKEMON_CENTER_2F_MYSTERY_GIFT_MAN return -CableClub_EventScript_MysteryGiftMan:: @ 8276B03 +CableClub_EventScript_MysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_DistributeEonTicket goto CableClub_EventScript_AlreadyGotEonTicket end -CableClub_EventScript_AlreadyGotEonTicket:: @ 8276B19 +CableClub_EventScript_AlreadyGotEonTicket:: gotoram @ Unused? -CableClub_EventScript_MysteryGiftThankYou:: @ 8276B1A +CableClub_EventScript_MysteryGiftThankYou:: msgbox gText_ThankYouForAccessingMysteryGift, MSGBOX_NPC end -CableClub_EventScript_DistributeEonTicket:: @ 8276B23 +CableClub_EventScript_DistributeEonTicket:: checkitem ITEM_EON_TICKET, 1 compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_AlreadyGotEonTicket @@ -49,12 +49,12 @@ CableClub_EventScript_DistributeEonTicket:: @ 8276B23 end @ Unused? -CableClub_EventScript_MysteryGiftThankYou2:: @ 8276B62 +CableClub_EventScript_MysteryGiftThankYou2:: msgbox gText_ThankYouForAccessingMysteryGift, MSGBOX_DEFAULT release end -CableClub_OnWarp: @ 8276B6C +CableClub_OnWarp: map_script_2 VAR_CABLE_CLUB_STATE, USING_SINGLE_BATTLE, CableClub_EventScript_CheckTurnAttendant map_script_2 VAR_CABLE_CLUB_STATE, USING_DOUBLE_BATTLE, CableClub_EventScript_CheckTurnAttendant map_script_2 VAR_CABLE_CLUB_STATE, USING_MULTI_BATTLE, CableClub_EventScript_CheckTurnAttendant @@ -65,14 +65,14 @@ CableClub_OnWarp: @ 8276B6C map_script_2 VAR_CABLE_CLUB_STATE, USING_MINIGAME, CableClub_EventScript_CheckTurnAttendant .2byte 0 -CableClub_EventScript_CheckTurnAttendant:: @ 8276BAE +CableClub_EventScript_CheckTurnAttendant:: compare VAR_0x8007, 0 goto_if_eq CableClub_EventScript_DontTurnAttendant turnobject VAR_0x8007, DIR_WEST -CableClub_EventScript_DontTurnAttendant:: @ 8276BBD +CableClub_EventScript_DontTurnAttendant:: end -CableClub_OnLoad: @ 8276BBE +CableClub_OnLoad: compare VAR_CABLE_CLUB_STATE, USING_SINGLE_BATTLE goto_if_eq CableClub_EventScript_OnLoadFromColosseum compare VAR_CABLE_CLUB_STATE, USING_DOUBLE_BATTLE @@ -91,31 +91,31 @@ CableClub_OnLoad: @ 8276BBE goto_if_eq CableClub_EventScript_OnLoadFromGameCorner end -CableClub_EventScript_OnLoadFromColosseum:: @ 8276C17 +CableClub_EventScript_OnLoadFromColosseum:: call CableClub_EventScript_OpenDirectCornerBarrier end -CableClub_EventScript_OnLoadFromTradeCenter:: @ 8276C1D +CableClub_EventScript_OnLoadFromTradeCenter:: call CableClub_EventScript_OpenDirectCornerBarrier end -CableClub_EventScript_OnLoadFromRecordCorner:: @ 8276C23 +CableClub_EventScript_OnLoadFromRecordCorner:: call CableClub_EventScript_OpenDirectCornerBarrier end -CableClub_EventScript_OnLoadFromUnionRoom:: @ 8276C29 +CableClub_EventScript_OnLoadFromUnionRoom:: call CableClub_EventScript_OpenUnionRoomBarrier end -CableClub_EventScript_OnLoadFromBerryCrush:: @ 8276C2F +CableClub_EventScript_OnLoadFromBerryCrush:: call CableClub_EventScript_OpenDirectCornerBarrier end -CableClub_EventScript_OnLoadFromGameCorner:: @ 8276C35 +CableClub_EventScript_OnLoadFromGameCorner:: call EventScript_OpenMossdeepGameCornerBarrier end -CableClub_OnFrame: @ 8276C3B +CableClub_OnFrame: map_script_2 VAR_CABLE_CLUB_TUTORIAL_STATE, 1, CableClub_EventScript_Tutorial map_script_2 VAR_CABLE_CLUB_STATE, USING_SINGLE_BATTLE, CableClub_EventScript_ExitLinkRoom map_script_2 VAR_CABLE_CLUB_STATE, USING_DOUBLE_BATTLE, CableClub_EventScript_ExitLinkRoom @@ -127,7 +127,7 @@ CableClub_OnFrame: @ 8276C3B map_script_2 VAR_CABLE_CLUB_STATE, USING_MINIGAME, CableClub_EventScript_ExitMinigameRoom .2byte 0 -CableClub_EventScript_ExitLinkRoom:: @ 8276C85 +CableClub_EventScript_ExitLinkRoom:: lockall call CableClub_EventScript_CloseLinkAndExitLinkRoom call CableClub_EventScript_CloseDirectCornerBarrier @@ -137,7 +137,7 @@ CableClub_EventScript_ExitLinkRoom:: @ 8276C85 releaseall end -CableClub_EventScript_ExitMinigameRoom:: @ 8276C9D +CableClub_EventScript_ExitMinigameRoom:: lockall call CableClub_EventScript_CloseLinkAndExitLinkRoom call EventScript_CloseMossdeepGameCornerBarrier @@ -147,7 +147,7 @@ CableClub_EventScript_ExitMinigameRoom:: @ 8276C9D releaseall end -CableClub_EventScript_CloseLinkAndExitLinkRoom:: @ 8276CB5 +CableClub_EventScript_CloseLinkAndExitLinkRoom:: special CloseLink setvar VAR_CABLE_CLUB_STATE, 0 compare VAR_0x8007, 0 @@ -160,7 +160,7 @@ CableClub_EventScript_CloseLinkAndExitLinkRoom:: @ 8276CB5 waitmovement 0 return -CableClub_EventScript_ExitTradeCenter:: @ 8276CE7 +CableClub_EventScript_ExitTradeCenter:: lockall call CableClub_EventScript_PlayerExitTradeCenter call CableClub_EventScript_CloseDirectCornerBarrier @@ -170,7 +170,7 @@ CableClub_EventScript_ExitTradeCenter:: @ 8276CE7 releaseall end -CableClub_EventScript_PlayerExitTradeCenter:: @ 8276CFF +CableClub_EventScript_PlayerExitTradeCenter:: special CloseLink setvar VAR_CABLE_CLUB_STATE, 0 compare VAR_0x8007, 0 @@ -182,7 +182,7 @@ CableClub_EventScript_PlayerExitTradeCenter:: @ 8276CFF call CableClub_EventScript_TrainerCardDataOverwritten return -CableClub_EventScript_ExitRecordCorner:: @ 8276D2C +CableClub_EventScript_ExitRecordCorner:: lockall call CableClub_EventScript_PlayerExitRecordCorner call CableClub_EventScript_CloseDirectCornerBarrier @@ -192,7 +192,7 @@ CableClub_EventScript_ExitRecordCorner:: @ 8276D2C releaseall end -CableClub_EventScript_PlayerExitRecordCorner:: @ 8276D44 +CableClub_EventScript_PlayerExitRecordCorner:: special CloseLink setvar VAR_CABLE_CLUB_STATE, 0 applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom @@ -201,10 +201,10 @@ CableClub_EventScript_PlayerExitRecordCorner:: @ 8276D44 goto_if_eq CableClub_EventScript_ExitRecordCornerRet applymovement VAR_0x8007, Movement_AttendantFaceDown waitmovement 0 -CableClub_EventScript_ExitRecordCornerRet:: @ 8276D6B +CableClub_EventScript_ExitRecordCornerRet:: return -CableClub_EventScript_ExitUnionRoom:: @ 8276D6C +CableClub_EventScript_ExitUnionRoom:: lockall call CableClub_EventScript_PlayerExitUnionRoom call CableClub_EventScript_CloseUnionRoomBarrier @@ -214,7 +214,7 @@ CableClub_EventScript_ExitUnionRoom:: @ 8276D6C releaseall end -CableClub_EventScript_PlayerExitUnionRoom:: @ 8276D84 +CableClub_EventScript_PlayerExitUnionRoom:: setvar VAR_CABLE_CLUB_STATE, 0 compare VAR_0x8007, 0 goto_if_eq CableClub_EventScript_PlayerExitLinkRoom @@ -225,7 +225,7 @@ CableClub_EventScript_PlayerExitUnionRoom:: @ 8276D84 call CableClub_EventScript_TrainerCardDataOverwritten return -CableClub_EventScript_TrainerCardDataOverwritten:: @ 8276DAE +CableClub_EventScript_TrainerCardDataOverwritten:: message CableClub_Text_TrainerCardDataOverwritten waitmessage playse SE_PIN @@ -238,12 +238,12 @@ CableClub_EventScript_TrainerCardDataOverwritten:: @ 8276DAE waitmovement 0 return -CableClub_EventScript_PlayerExitLinkRoom:: @ 8276DD5 +CableClub_EventScript_PlayerExitLinkRoom:: applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom waitmovement 0 return -CableClub_EventScript_Tutorial:: @ 8276DE0 +CableClub_EventScript_Tutorial:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 @@ -257,24 +257,24 @@ CableClub_EventScript_Tutorial:: @ 8276DE0 releaseall end -CableClub_Movement_PlayerApproachCounter: @ 8276E10 +CableClub_Movement_PlayerApproachCounter: walk_up walk_up step_end -CableClub_EventScript_WelcomeToCableClub:: @ 8276E13 +CableClub_EventScript_WelcomeToCableClub:: message CableClub_Text_WelcomeWhichCableClubService waitmessage delay 28 goto CableClub_EventScript_SelectCableClubRoom end -CableClub_EventScript_UnusedWelcomeToCableClub:: @ 8276E22 +CableClub_EventScript_UnusedWelcomeToCableClub:: msgbox CableClub_Text_WhichService, MSGBOX_DEFAULT goto CableClub_EventScript_SelectCableClubRoom end -CableClub_EventScript_SelectCableClubRoom:: @ 8276E30 +CableClub_EventScript_SelectCableClubRoom:: setvar VAR_0x8004, 0 goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_CableClubUnlockedRecordCorner multichoice 0, 0, MULTI_CABLE_CLUB_NO_RECORD_MIX, FALSE @@ -285,7 +285,7 @@ CableClub_EventScript_SelectCableClubRoom:: @ 8276E30 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_CableClubUnlockedRecordCorner:: @ 8276E75 +CableClub_EventScript_CableClubUnlockedRecordCorner:: multichoice 0, 0, MULTI_CABLE_CLUB_WITH_RECORD_MIX, FALSE switch VAR_RESULT case 0, CableClub_EventScript_TradeCenter @@ -295,12 +295,12 @@ CableClub_EventScript_CableClubUnlockedRecordCorner:: @ 8276E75 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_Colosseum:: @ 8276EB7 +CableClub_EventScript_Colosseum:: copyvar VAR_0x8007, VAR_LAST_TALKED goto CableClub_EventScript_SelectBattleMode end -CableClub_EventScript_SelectBattleMode:: @ 8276EC2 +CableClub_EventScript_SelectBattleMode:: message CableClub_Text_PlayWhichBattleMode waitmessage multichoice 0, 0, MULTI_BATTLE_MODE, FALSE @@ -313,17 +313,17 @@ CableClub_EventScript_SelectBattleMode:: @ 8276EC2 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_BattleModeInfo:: @ 8276F15 +CableClub_EventScript_BattleModeInfo:: msgbox CableClub_Text_ExplainBattleModes, MSGBOX_DEFAULT goto CableClub_EventScript_SelectBattleMode end -CableClub_EventScript_SingleBattleMode:: @ 8276F23 +CableClub_EventScript_SingleBattleMode:: setvar VAR_0x8004, USING_SINGLE_BATTLE goto CableClub_EventScript_TryEnterColosseum end -CableClub_EventScript_DoubleBattleMode:: @ 8276F2E +CableClub_EventScript_DoubleBattleMode:: special HasEnoughMonsForDoubleBattle compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS goto_if_ne CableClub_EventScript_NeedTwoMonsForDoubleBattle @@ -331,17 +331,17 @@ CableClub_EventScript_DoubleBattleMode:: @ 8276F2E goto CableClub_EventScript_TryEnterColosseum end -CableClub_EventScript_NeedTwoMonsForDoubleBattle:: @ 8276F47 +CableClub_EventScript_NeedTwoMonsForDoubleBattle:: msgbox CableClub_Text_NeedTwoMonsForDoubleBattle, MSGBOX_DEFAULT goto CableClub_EventScript_SelectBattleMode end -CableClub_EventScript_MultiBattleMode:: @ 8276F55 +CableClub_EventScript_MultiBattleMode:: setvar VAR_0x8004, USING_MULTI_BATTLE goto CableClub_EventScript_TryEnterColosseum end -CableClub_EventScript_TryEnterColosseum:: @ 8276F60 +CableClub_EventScript_TryEnterColosseum:: call Common_EventScript_SaveGame compare VAR_RESULT, 0 goto_if_eq CableClub_EventScript_AbortLink @@ -363,7 +363,7 @@ CableClub_EventScript_TryEnterColosseum:: @ 8276F60 goto_if_eq CableClub_EventScript_AbortLinkConnectionError end -CableClub_EventScript_EnterColosseum:: @ 8276FBD +CableClub_EventScript_EnterColosseum:: special HealPlayerParty special SavePlayerParty special LoadPlayerBag @@ -396,19 +396,19 @@ CableClub_EventScript_EnterColosseum:: @ 8276FBD end @ Unused -CableClub_EventScript_PlayerApproachLinkRoomRight:: @ 827702B +CableClub_EventScript_PlayerApproachLinkRoomRight:: applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomRight waitmovement 0 return -CableClub_EventScript_WarpTo4PColosseum:: @ 8277036 +CableClub_EventScript_WarpTo4PColosseum:: special SetCableClubWarp warp MAP_BATTLE_COLOSSEUM_4P, 255, 5, 8 special DoCableClubWarp waitstate end -CableClub_EventScript_AbortLinkIncorrectNumberOfBattlers:: @ 8277046 +CableClub_EventScript_AbortLinkIncorrectNumberOfBattlers:: switch VAR_0x8004 case USING_SINGLE_BATTLE, CableClub_EventScript_AbortLinkWrongNumberForSingleBattle case USING_DOUBLE_BATTLE, CableClub_EventScript_AbortLinkWrongNumberForDoubleBattle @@ -416,31 +416,31 @@ CableClub_EventScript_AbortLinkIncorrectNumberOfBattlers:: @ 8277046 goto CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants end -CableClub_EventScript_AbortLinkNeedFourPlayers:: @ 8277072 +CableClub_EventScript_AbortLinkNeedFourPlayers:: special CloseLink msgbox CableClub_Text_NeedFourPlayers, MSGBOX_DEFAULT goto CableClub_EventScript_ConfirmNumberAndRestart end -CableClub_EventScript_AbortLinkWrongNumberForDoubleBattle:: @ 8277083 +CableClub_EventScript_AbortLinkWrongNumberForDoubleBattle:: special CloseLink msgbox CableClub_Text_CantDoubleBattleWithXPlayers, MSGBOX_DEFAULT goto CableClub_EventScript_ConfirmNumberAndRestart end -CableClub_EventScript_AbortLinkWrongNumberForSingleBattle:: @ 8277094 +CableClub_EventScript_AbortLinkWrongNumberForSingleBattle:: special CloseLink msgbox CableClub_Text_CantSingleBattleWithXPlayers, MSGBOX_DEFAULT goto CableClub_EventScript_ConfirmNumberAndRestart end -CableClub_EventScript_ConfirmNumberAndRestart:: @ 82770A5 +CableClub_EventScript_ConfirmNumberAndRestart:: special CloseLink @ Redundant msgbox CableClub_Text_PleaseConfirmNumberAndRestart, MSGBOX_DEFAULT release end -CableClub_EventScript_TradeCenter:: @ 82770B2 +CableClub_EventScript_TradeCenter:: copyvar VAR_0x8007, VAR_LAST_TALKED call CableClub_EventScript_CheckPartyTradeRequirements compare VAR_RESULT, 0 @@ -470,7 +470,7 @@ CableClub_EventScript_TradeCenter:: @ 82770B2 goto_if_eq CableClub_EventScript_AbortLinkOtherTrainerNotReady end -CableClub_EventScript_EnterTradeCenter:: @ 827713A +CableClub_EventScript_EnterTradeCenter:: setvar VAR_0x8004, USING_TRADE_CENTER copyvar VAR_CABLE_CLUB_STATE, VAR_0x8004 messageautoscroll CableClub_Text_PleaseEnter @@ -498,7 +498,7 @@ CableClub_EventScript_EnterTradeCenter:: @ 827713A waitstate end -CableClub_EventScript_CheckPartyTradeRequirements:: @ 8277199 +CableClub_EventScript_CheckPartyTradeRequirements:: specialvar VAR_RESULT, CalculatePlayerPartyCount compare VAR_RESULT, 2 goto_if_lt CableClub_EventScript_NeedTwoMonsToTrade @@ -508,17 +508,17 @@ CableClub_EventScript_CheckPartyTradeRequirements:: @ 8277199 setvar VAR_RESULT, 1 return -CableClub_EventScript_NeedTwoMonsToTrade:: @ 82771BF +CableClub_EventScript_NeedTwoMonsToTrade:: msgbox CableClub_Text_NeedTwoMonsToTrade, MSGBOX_DEFAULT setvar VAR_RESULT, 0 return -CableClub_EventScript_CantTradeEnigmaBerry:: @ 82771CD +CableClub_EventScript_CantTradeEnigmaBerry:: msgbox CableClub_Text_CantTradeEnigmaBerry, MSGBOX_DEFAULT setvar VAR_RESULT, 0 return -CableClub_EventScript_RecordCorner:: @ 82771DB +CableClub_EventScript_RecordCorner:: copyvar VAR_0x8007, VAR_LAST_TALKED call Common_EventScript_SaveGame compare VAR_RESULT, 0 @@ -545,7 +545,7 @@ CableClub_EventScript_RecordCorner:: @ 82771DB goto_if_eq CableClub_EventScript_AbortLinkConnectionError end -CableClub_EventScript_EnterRecordCorner:: @ 827724C +CableClub_EventScript_EnterRecordCorner:: setvar VAR_0x8004, USING_RECORD_CORNER copyvar VAR_CABLE_CLUB_STATE, VAR_0x8004 messageautoscroll CableClub_Text_PleaseEnter @@ -573,135 +573,135 @@ CableClub_EventScript_EnterRecordCorner:: @ 827724C waitstate end -CableClub_EventScript_AbortLinkPlayerNotReady:: @ 82772AB +CableClub_EventScript_AbortLinkPlayerNotReady:: special CloseLink msgbox CableClub_Text_NotSetUpForFarAwayRegion, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkOtherTrainerNotReady:: @ 82772B8 +CableClub_EventScript_AbortLinkOtherTrainerNotReady:: special CloseLink msgbox CableClub_Text_OtherTrainerNotReady, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkConnectionError:: @ 82772C5 +CableClub_EventScript_AbortLinkConnectionError:: special CloseLink msgbox Text_LinkErrorPleaseReset, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkSomeoneNotReady:: @ 82772D2 +CableClub_EventScript_AbortLinkSomeoneNotReady:: special CloseLink msgbox Text_SomeoneIsNotReadyToLink, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkDifferentSelections:: @ 82772DF +CableClub_EventScript_AbortLinkDifferentSelections:: special CloseLink msgbox Text_PlayersMadeDifferentSelections, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLink:: @ 82772EC +CableClub_EventScript_AbortLink:: special CloseLink msgbox CableClub_Text_PleaseVisitAgain, MSGBOX_DEFAULT release end -MossdeepCity_GameCorner_1F_EventScript_AbortMinigame:: @ 82772F9 +MossdeepCity_GameCorner_1F_EventScript_AbortMinigame:: special CloseLink msgbox MossdeepCity_GameCorner_1F_Text_ComeAgain, MSGBOX_DEFAULT release end @ Unused -CableClub_EventScript_CableClubWarp:: @ 8277306 +CableClub_EventScript_CableClubWarp:: special SetCableClubWarp special DoCableClubWarp waitstate end -CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants:: @ 827730E +CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants:: special CloseLink msgbox CableClub_Text_IncorrectNumberOfParticipants, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkPlayerHasBadEgg:: @ 827731B +CableClub_EventScript_AbortLinkPlayerHasBadEgg:: special CloseLink msgbox CableClub_Text_YouHaveAMonThatCantBeTaken, MSGBOX_DEFAULT release end -CableClub_EventScript_AbortLinkForeignGame:: @ 8277328 +CableClub_EventScript_AbortLinkForeignGame:: special CloseLink msgbox CableClub_Text_CantMixWithJapaneseGame, MSGBOX_DEFAULT release end -CableClub_EventScript_WirelessClubAdjustements:: @ 8277335 +CableClub_EventScript_WirelessClubAdjustements:: msgbox gText_SorryWirelessClubAdjustments, MSGBOX_DEFAULT release end -CableClub_EventScript_NotReadyYet:: @ 827733F +CableClub_EventScript_NotReadyYet:: msgbox gText_UndergoingAdjustments, MSGBOX_DEFAULT releaseall end -Movement_AttendantFaceDown: @ 8277349 +Movement_AttendantFaceDown: face_down step_end @ Unused -Movement_AttendantFaceRight: @ 827734B +Movement_AttendantFaceRight: face_right step_end -Movement_AttendantFaceLeft: @ 827734D +Movement_AttendantFaceLeft: face_left step_end -Movement_PlayerExitLinkRoom: @ 827734F +Movement_PlayerExitLinkRoom: walk_down walk_down step_end @ Functionally unused -Movement_PlayerApproachLinkRoomRight: @ 8277352 +Movement_PlayerApproachLinkRoomRight: walk_right walk_up walk_up step_end -Movement_PlayerApproachLinkRoomLeft: @ 8277356 +Movement_PlayerApproachLinkRoomLeft: walk_left walk_up walk_up step_end -Movement_PlayerEnterLinkRoom: @ 827735A +Movement_PlayerEnterLinkRoom: walk_up step_end @ Unused -Movement_PlayerFaceAttendantLeft: @ 827735C +Movement_PlayerFaceAttendantLeft: face_left step_end -Movement_PlayerFaceAttendantRight: @ 827735E +Movement_PlayerFaceAttendantRight: face_right step_end -Movement_PlayerEnterMinigameRoom: @ 8277360 +Movement_PlayerEnterMinigameRoom: walk_left walk_up walk_up walk_up step_end -EventScript_CableBoxResults:: @ 8277365 +EventScript_CableBoxResults:: lockall setvar VAR_0x8004, 0 special ShowLinkBattleRecords @@ -710,19 +710,19 @@ EventScript_CableBoxResults:: @ 8277365 releaseall end -EventScript_BattleColosseum_2P_PlayerSpot0:: @ 8277374 +EventScript_BattleColosseum_2P_PlayerSpot0:: setvar VAR_0x8005, 0 special ColosseumPlayerSpotTriggered waitstate end -EventScript_BattleColosseum_2P_PlayerSpot1:: @ 827737E +EventScript_BattleColosseum_2P_PlayerSpot1:: setvar VAR_0x8005, 1 special ColosseumPlayerSpotTriggered waitstate end -EventScript_BattleColosseum_4P_PlayerSpot0:: @ 8277388 +EventScript_BattleColosseum_4P_PlayerSpot0:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate @@ -733,7 +733,7 @@ EventScript_BattleColosseum_4P_PlayerSpot0:: @ 8277388 waitstate end -EventScript_BattleColosseum_4P_PlayerSpot1:: @ 82773A3 +EventScript_BattleColosseum_4P_PlayerSpot1:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate @@ -744,7 +744,7 @@ EventScript_BattleColosseum_4P_PlayerSpot1:: @ 82773A3 waitstate end -EventScript_BattleColosseum_4P_PlayerSpot2:: @ 82773BE +EventScript_BattleColosseum_4P_PlayerSpot2:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate @@ -755,7 +755,7 @@ EventScript_BattleColosseum_4P_PlayerSpot2:: @ 82773BE waitstate end -EventScript_BattleColosseum_4P_PlayerSpot3:: @ 82773D9 +EventScript_BattleColosseum_4P_PlayerSpot3:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate @@ -766,37 +766,37 @@ EventScript_BattleColosseum_4P_PlayerSpot3:: @ 82773D9 waitstate end -EventScript_BattleColosseum_4P_CancelSpotTrigger:: @ 82773F4 +EventScript_BattleColosseum_4P_CancelSpotTrigger:: end -EventScript_TradeCenter_Chair0:: @ 82773F5 +EventScript_TradeCenter_Chair0:: setvar VAR_0x8005, 0 special PlayerEnteredTradeSeat waitstate end -EventScript_TradeCenter_Chair1:: @ 82773FF +EventScript_TradeCenter_Chair1:: setvar VAR_0x8005, 1 special PlayerEnteredTradeSeat waitstate end /* Never used */ -EventScript_TradeCenter_Chair2:: @ 8277409 +EventScript_TradeCenter_Chair2:: setvar VAR_0x8005, 2 special PlayerEnteredTradeSeat waitstate end /* Never used */ -EventScript_TradeCenter_Chair3:: @ 8277413 +EventScript_TradeCenter_Chair3:: setvar VAR_0x8005, 3 special PlayerEnteredTradeSeat waitstate end @ VAR_TEMP_1 for below scripts set by ReceiveGiftItem -EventScript_RecordCenter_Spot0:: @ 827741D +EventScript_RecordCenter_Spot0:: setvar VAR_0x8005, 0 special RecordMixingPlayerSpotTriggered waitstate @@ -804,7 +804,7 @@ EventScript_RecordCenter_Spot0:: @ 827741D goto_if_ne RecordCorner_EventScript_ReceivedGiftItem end -EventScript_RecordCenter_Spot1:: @ 8277432 +EventScript_RecordCenter_Spot1:: setvar VAR_0x8005, 1 special RecordMixingPlayerSpotTriggered waitstate @@ -812,7 +812,7 @@ EventScript_RecordCenter_Spot1:: @ 8277432 goto_if_ne RecordCorner_EventScript_ReceivedGiftItem end -EventScript_RecordCenter_Spot2:: @ 8277447 +EventScript_RecordCenter_Spot2:: setvar VAR_0x8005, 2 special RecordMixingPlayerSpotTriggered waitstate @@ -820,7 +820,7 @@ EventScript_RecordCenter_Spot2:: @ 8277447 goto_if_ne RecordCorner_EventScript_ReceivedGiftItem end -EventScript_RecordCenter_Spot3:: @ 827745C +EventScript_RecordCenter_Spot3:: setvar VAR_0x8005, 3 special RecordMixingPlayerSpotTriggered waitstate @@ -828,7 +828,7 @@ EventScript_RecordCenter_Spot3:: @ 827745C goto_if_ne RecordCorner_EventScript_ReceivedGiftItem end -RecordCorner_EventScript_ReceivedGiftItem:: @ 8277471 +RecordCorner_EventScript_ReceivedGiftItem:: bufferitemname 1, VAR_TEMP_1 message RecordCorner_Text_PlayerSentOverOneX waitmessage @@ -836,40 +836,40 @@ RecordCorner_EventScript_ReceivedGiftItem:: @ 8277471 releaseall end -CableClub_EventScript_ReadTrainerCard:: @ 827747E +CableClub_EventScript_ReadTrainerCard:: msgbox CableClub_Text_GotToLookAtTrainerCard, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK special Script_ShowLinkTrainerCard waitstate end -CableClub_EventScript_ReadTrainerCardColored:: @ 827748D +CableClub_EventScript_ReadTrainerCardColored:: msgbox CableClub_Text_GotToLookAtColoredTrainerCard, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK special Script_ShowLinkTrainerCard waitstate end -CableClub_EventScript_TooBusyToNotice:: @ 827749C +CableClub_EventScript_TooBusyToNotice:: msgbox CableClub_Text_TooBusyToNotice, MSGBOX_DEFAULT closemessage end -BattleColosseum_2P_EventScript_Attendant:: @ 82774A6 +BattleColosseum_2P_EventScript_Attendant:: special Script_FacePlayer msgbox BattleColosseum_2P_Text_TakePlaceStartBattle, MSGBOX_DEFAULT special Script_ClearHeldMovement closemessage end -TradeCenter_EventScript_Attendant:: @ 82774B6 +TradeCenter_EventScript_Attendant:: special Script_FacePlayer msgbox TradeCenter_Text_TakeSeatStartTrade, MSGBOX_DEFAULT special Script_ClearHeldMovement closemessage end -RecordCorner_EventScript_Attendant:: @ 82774C6 +RecordCorner_EventScript_Attendant:: compare VAR_TEMP_0, 0 goto_if_ne RecordCorner_EventScript_AlreadyMixed special Script_FacePlayer @@ -880,7 +880,7 @@ RecordCorner_EventScript_Attendant:: @ 82774C6 closemessage end -RecordCorner_EventScript_AlreadyMixed:: @ 82774E0 +RecordCorner_EventScript_AlreadyMixed:: special Script_FacePlayer message RecordCorner_Text_ThanksForComing waitmessage @@ -889,7 +889,7 @@ RecordCorner_EventScript_AlreadyMixed:: @ 82774E0 closemessage end -EventScript_ConfirmLeaveCableClubRoom:: @ 82774EF +EventScript_ConfirmLeaveCableClubRoom:: msgbox Text_TerminateLinkConfirmation, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq EventScript_TerminateLink @@ -897,19 +897,19 @@ EventScript_ConfirmLeaveCableClubRoom:: @ 82774EF releaseall end -EventScript_TerminateLink:: @ 8277509 +EventScript_TerminateLink:: messageautoscroll Text_TerminateLinkPleaseWait waitmessage special ExitLinkRoom end -EventScript_DoLinkRoomExit:: @ 8277513 +EventScript_DoLinkRoomExit:: special CleanupLinkRoomState special ReturnFromLinkRoom waitstate end -CableClub_EventScript_UnionRoomAttendant:: @ 827751B +CableClub_EventScript_UnionRoomAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FACILITY_UNION_ROOM @@ -926,7 +926,7 @@ CableClub_EventScript_UnionRoomAttendant:: @ 827751B goto CableClub_EventScript_UnionRoomSelect end -CableClub_EventScript_UnionRoomSelect:: @ 827755C +CableClub_EventScript_UnionRoomSelect:: multichoice 17, 6, MULTI_YESNOINFO, FALSE switch VAR_RESULT case 0, CableClub_EventScript_EnterUnionRoom @@ -935,13 +935,13 @@ CableClub_EventScript_UnionRoomSelect:: @ 827755C case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_UnionRoomInfo:: @ 8277593 +CableClub_EventScript_UnionRoomInfo:: message CableClub_Text_UnionRoomInfo waitmessage goto CableClub_EventScript_UnionRoomSelect end -CableClub_EventScript_EnterUnionRoom:: @ 827759F +CableClub_EventScript_EnterUnionRoom:: call CableClub_EventScript_CheckPartyUnionRoomRequirements compare VAR_RESULT, 0 goto_if_eq CableClub_EventScript_AbortLink @@ -976,7 +976,7 @@ CableClub_EventScript_EnterUnionRoom:: @ 827759F waitstate end -CableClub_EventScript_CheckPartyUnionRoomRequirements:: @ 8277626 +CableClub_EventScript_CheckPartyUnionRoomRequirements:: specialvar VAR_RESULT, CountPartyNonEggMons compare VAR_RESULT, 2 goto_if_lt CableClub_EventScript_NeedTwoMonsForUnionRoom @@ -986,22 +986,22 @@ CableClub_EventScript_CheckPartyUnionRoomRequirements:: @ 8277626 setvar VAR_RESULT, 1 return -CableClub_EventScript_NeedTwoMonsForUnionRoom:: @ 827764C +CableClub_EventScript_NeedTwoMonsForUnionRoom:: msgbox CableClub_Text_NeedTwoMonsForUnionRoom, MSGBOX_DEFAULT goto EventScript_CableClub_SetVarResult0 end -CableClub_EventScript_NoEnigmaBerryInUnionRoom:: @ 827765A +CableClub_EventScript_NoEnigmaBerryInUnionRoom:: msgbox CableClub_Text_NoEnigmaBerryInUnionRoom, MSGBOX_DEFAULT goto EventScript_CableClub_SetVarResult0 end -CableClub_EventScript_UnionRoomAdapterNotConnected:: @ 8277668 +CableClub_EventScript_UnionRoomAdapterNotConnected:: msgbox CableClub_Text_UnionRoomAdapterNotConnected, MSGBOX_DEFAULT release return -CableClub_EventScript_WirelessClubAttendant:: @ 8277672 +CableClub_EventScript_WirelessClubAttendant:: lock faceplayer goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_WirelessClubAdjustements @@ -1012,12 +1012,12 @@ CableClub_EventScript_WirelessClubAttendant:: @ 8277672 release return -CableClub_EventScript_DontAskAboutLinking:: @ 827769A +CableClub_EventScript_DontAskAboutLinking:: msgbox CableClub_Text_HopeYouEnjoyWirelessSystem, MSGBOX_DEFAULT release return -CableClub_EventScript_DirectCornerAttendant:: @ 82776A4 +CableClub_EventScript_DirectCornerAttendant:: lock faceplayer setvar VAR_FRONTIER_FACILITY, FACILITY_MULTI_OR_EREADER @ Set preemptively for multi battles, ignored otherwise @@ -1034,7 +1034,7 @@ CableClub_EventScript_DirectCornerAttendant:: @ 82776A4 goto CableClub_EventScript_DirectCornerSelectService end -CableClub_EventScript_DirectCornerSelectService:: @ 82776E3 +CableClub_EventScript_DirectCornerSelectService:: checkitem ITEM_POWDER_JAR, 1 compare VAR_RESULT, FALSE goto_if_eq CableClub_EventScript_DirectCornerNoBerry @@ -1048,7 +1048,7 @@ CableClub_EventScript_DirectCornerSelectService:: @ 82776E3 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_DirectCornerSelectAllServices:: @ 827773E +CableClub_EventScript_DirectCornerSelectAllServices:: multichoice 0, 0, MULTI_WIRELESS_ALL_SERVICES, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade @@ -1059,7 +1059,7 @@ CableClub_EventScript_DirectCornerSelectAllServices:: @ 827773E case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_DirectCornerNoBerry:: @ 827778B +CableClub_EventScript_DirectCornerNoBerry:: goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_DirectCornerHasRecordMix multichoice 0, 0, MULTI_WIRELESS_NO_RECORD_BERRY, FALSE switch VAR_RESULT @@ -1069,7 +1069,7 @@ CableClub_EventScript_DirectCornerNoBerry:: @ 827778B case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_DirectCornerHasRecordMix:: @ 82777CB +CableClub_EventScript_DirectCornerHasRecordMix:: multichoice 0, 0, MULTI_WIRELESS_NO_BERRY, FALSE switch VAR_RESULT case 0, CableClub_EventScript_WirelessTrade @@ -1079,7 +1079,7 @@ CableClub_EventScript_DirectCornerHasRecordMix:: @ 82777CB case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_WirelessTrade:: @ 827780D +CableClub_EventScript_WirelessTrade:: msgbox CableClub_Text_TradePokemon, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq CableClub_EventScript_AbortLink @@ -1090,7 +1090,7 @@ CableClub_EventScript_WirelessTrade:: @ 827780D goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_WirelessBattleSelect:: @ 827783B +CableClub_EventScript_WirelessBattleSelect:: message CableClub_Text_PlayWhichBattleMode waitmessage multichoice 0, 0, MULTI_BATTLE_MODE, FALSE @@ -1103,12 +1103,12 @@ CableClub_EventScript_WirelessBattleSelect:: @ 827783B case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_WirelessSingleBattle:: @ 827788E +CableClub_EventScript_WirelessSingleBattle:: setvar VAR_0x8004, LINK_GROUP_SINGLE_BATTLE goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_WirelessDoubleBattle:: @ 8277899 +CableClub_EventScript_WirelessDoubleBattle:: special HasEnoughMonsForDoubleBattle compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS goto_if_ne CableClub_EventScript_TwoMonsNeededForWirelessDoubleBattle @@ -1116,22 +1116,22 @@ CableClub_EventScript_WirelessDoubleBattle:: @ 8277899 goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_TwoMonsNeededForWirelessDoubleBattle:: @ 82778B2 +CableClub_EventScript_TwoMonsNeededForWirelessDoubleBattle:: msgbox CableClub_Text_NeedTwoMonsForDoubleBattle, MSGBOX_DEFAULT goto CableClub_EventScript_WirelessBattleSelect end -CableClub_EventScript_WirelessMultiBattle:: @ 82778C0 +CableClub_EventScript_WirelessMultiBattle:: setvar VAR_0x8004, LINK_GROUP_MULTI_BATTLE goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_WirelessBattleInfo:: @ 82778CB +CableClub_EventScript_WirelessBattleInfo:: msgbox CableClub_Text_ExplainBattleModes, MSGBOX_DEFAULT goto CableClub_EventScript_WirelessBattleSelect end -CableClub_EventScript_WirelessRecordMix:: @ 82778D9 +CableClub_EventScript_WirelessRecordMix:: msgbox CableClub_Text_AccessRecordCorner, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq CableClub_EventScript_AbortLink @@ -1139,7 +1139,7 @@ CableClub_EventScript_WirelessRecordMix:: @ 82778D9 goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_WirelessBerryCrush:: @ 82778F7 +CableClub_EventScript_WirelessBerryCrush:: msgbox CableClub_Text_UseBerryCrush, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq CableClub_EventScript_AbortLink @@ -1150,12 +1150,12 @@ CableClub_EventScript_WirelessBerryCrush:: @ 82778F7 goto CableClub_EventScript_SaveAndChooseLinkLeader end -CableClub_EventScript_NeedBerryForBerryCrush:: @ 8277923 +CableClub_EventScript_NeedBerryForBerryCrush:: msgbox CableClub_Text_NeedBerryForBerryCrush, MSGBOX_DEFAULT goto CableClub_EventScript_DirectCornerSelectService end -CableClub_EventScript_SaveAndChooseLinkLeader:: @ 8277931 +CableClub_EventScript_SaveAndChooseLinkLeader:: call Common_EventScript_SaveGame compare VAR_RESULT, 0 goto_if_eq CableClub_EventScript_AbortLink @@ -1168,7 +1168,7 @@ CableClub_EventScript_SaveAndChooseLinkLeader:: @ 8277931 case LINK_GROUP_RECORD_CORNER, CableClub_EventScript_ChooseLinkLeader end -CableClub_EventScript_ChooseLinkLeaderFrom2:: @ 8277989 +CableClub_EventScript_ChooseLinkLeaderFrom2:: message CableClub_Text_ChooseGroupLeaderOfTwo waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -1179,7 +1179,7 @@ CableClub_EventScript_ChooseLinkLeaderFrom2:: @ 8277989 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_TryLeadGroup2Players:: @ 82779C6 +CableClub_EventScript_TryLeadGroup2Players:: call CableClub_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1190,7 +1190,7 @@ CableClub_EventScript_TryLeadGroup2Players:: @ 82779C6 release return -CableClub_EventScript_TryJoinGroup2Players:: @ 82779EE +CableClub_EventScript_TryJoinGroup2Players:: call CableClub_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1201,7 +1201,7 @@ CableClub_EventScript_TryJoinGroup2Players:: @ 82779EE release return -CableClub_EventScript_ChooseLinkLeaderFrom4:: @ 8277A16 +CableClub_EventScript_ChooseLinkLeaderFrom4:: message CableClub_Text_ChooseGroupLeaderOfFour waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -1212,7 +1212,7 @@ CableClub_EventScript_ChooseLinkLeaderFrom4:: @ 8277A16 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_TryLeadGroup4Players:: @ 8277A53 +CableClub_EventScript_TryLeadGroup4Players:: call CableClub_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1223,7 +1223,7 @@ CableClub_EventScript_TryLeadGroup4Players:: @ 8277A53 release return -CableClub_EventScript_TryJoinGroup4Players:: @ 8277A7B +CableClub_EventScript_TryJoinGroup4Players:: call CableClub_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1234,7 +1234,7 @@ CableClub_EventScript_TryJoinGroup4Players:: @ 8277A7B release return -CableClub_EventScript_ChooseLinkLeader:: @ 8277AA3 +CableClub_EventScript_ChooseLinkLeader:: message CableClub_Text_ChooseGroupLeader waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -1245,7 +1245,7 @@ CableClub_EventScript_ChooseLinkLeader:: @ 8277AA3 case MULTI_B_PRESSED, CableClub_EventScript_AbortLink end -CableClub_EventScript_TryLeadGroupXPlayers:: @ 8277AE0 +CableClub_EventScript_TryLeadGroupXPlayers:: call CableClub_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1256,7 +1256,7 @@ CableClub_EventScript_TryLeadGroupXPlayers:: @ 8277AE0 release return -CableClub_EventScript_TryJoinGroupXPlayers:: @ 8277B08 +CableClub_EventScript_TryJoinGroupXPlayers:: call CableClub_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom @@ -1267,17 +1267,17 @@ CableClub_EventScript_TryJoinGroupXPlayers:: @ 8277B08 release return -CableClub_EventScript_TryBecomeLinkLeader:: @ 8277B30 +CableClub_EventScript_TryBecomeLinkLeader:: special TryBecomeLinkLeader waitstate return -CableClub_EventScript_TryJoinLinkGroup:: @ 8277B35 +CableClub_EventScript_TryJoinLinkGroup:: special TryJoinLinkGroup waitstate return -CableClub_EventScript_EnterWirelessLinkRoom:: @ 8277B3A +CableClub_EventScript_EnterWirelessLinkRoom:: messageautoscroll CableClub_Text_DirectYouToYourRoom waitmessage delay 60 @@ -1303,7 +1303,7 @@ CableClub_EventScript_EnterWirelessLinkRoom:: @ 8277B3A waitstate end -EventScript_WirelessBoxResults:: @ 8277B8A +EventScript_WirelessBoxResults:: lockall goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_NotReadyYet specialvar VAR_RESULT, IsWirelessAdapterConnected @@ -1316,46 +1316,46 @@ EventScript_WirelessBoxResults:: @ 8277B8A releaseall end -CableClub_EventScript_AdapterNotConnected:: @ 8277BB4 +CableClub_EventScript_AdapterNotConnected:: msgbox CableClub_Text_AdapterNotConnected, MSGBOX_DEFAULT releaseall end -CableClub_EventScript_OpenUnionRoomBarrier:: @ 8277BBE +CableClub_EventScript_OpenUnionRoomBarrier:: setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, 0 setmetatile 5, 3, METATILE_PokemonCenter_Floor_Plain_Alt, 0 return -CableClub_EventScript_CloseUnionRoomBarrier:: @ 8277BD1 +CableClub_EventScript_CloseUnionRoomBarrier:: setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop, 1 setmetatile 5, 3, METATILE_PokemonCenter_CounterBarrier, 1 return -CableClub_EventScript_OpenDirectCornerBarrier:: @ 8277BE4 +CableClub_EventScript_OpenDirectCornerBarrier:: setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, 0 setmetatile 9, 3, METATILE_PokemonCenter_Floor_Plain_Alt, 0 return -CableClub_EventScript_CloseDirectCornerBarrier:: @ 8277BF7 +CableClub_EventScript_CloseDirectCornerBarrier:: setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop, 1 setmetatile 9, 3, METATILE_PokemonCenter_CounterBarrier, 1 return -EventScript_OpenMossdeepGameCornerBarrier:: @ 8277C0A +EventScript_OpenMossdeepGameCornerBarrier:: setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterOpen_Top, 0 setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterOpen_Bottom, 0 return -EventScript_CloseMossdeepGameCornerBarrier:: @ 8277C1D +EventScript_CloseMossdeepGameCornerBarrier:: setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterClosed_Top, 1 setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterClosed_Bottom, 1 return -CableClub_OnResume: @ 8277C30 +CableClub_OnResume: special InitUnionRoom end -MossdeepCity_GameCorner_1F_EventScript_InfoMan2:: @ 8277C34 +MossdeepCity_GameCorner_1F_EventScript_InfoMan2:: lock faceplayer message MossdeepCity_GameCorner_1F_Text_DescribeWhichGame @@ -1368,22 +1368,22 @@ MossdeepCity_GameCorner_1F_EventScript_InfoMan2:: @ 8277C34 case MULTI_B_PRESSED, MossdeepCity_GameCorner_1F_EventScript_MinigameInfoExit end -MossdeepCity_GameCorner_1F_EventScript_PokemonJumpInfo:: @ 8277C73 +MossdeepCity_GameCorner_1F_EventScript_PokemonJumpInfo:: msgbox MossdeepCity_GameCorner_1F_Text_PokemonJumpInfo, MSGBOX_DEFAULT release end -MossdeepCity_GameCorner_1F_EventScript_DodrioBerryPickingInfo:: @ 8277C7D +MossdeepCity_GameCorner_1F_EventScript_DodrioBerryPickingInfo:: msgbox MossdeepCity_GameCorner_1F_Text_DodrioBerryPickingInfo, MSGBOX_DEFAULT release end -MossdeepCity_GameCorner_1F_EventScript_MinigameInfoExit:: @ 8277C87 +MossdeepCity_GameCorner_1F_EventScript_MinigameInfoExit:: msgbox MossdeepCity_GameCorner_1F_Text_TalkToOldManToPlay, MSGBOX_DEFAULT release end -MossdeepCity_GameCorner_1F_EventScript_OldMan2:: @ 8277C91 +MossdeepCity_GameCorner_1F_EventScript_OldMan2:: lock faceplayer message MossdeepCity_GameCorner_1F_Text_WelcomeCanYouWait @@ -1402,7 +1402,7 @@ MossdeepCity_GameCorner_1F_EventScript_OldMan2:: @ 8277C91 case MULTI_B_PRESSED, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame end -MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: @ 8277CE9 +MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: setvar VAR_0x8005, 0 special IsPokemonJumpSpeciesInParty compare VAR_RESULT, FALSE @@ -1421,7 +1421,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: @ 8277CE9 goto MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader end -MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: @ 8277D35 +MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: setvar VAR_0x8005, 1 special IsDodrioInParty compare VAR_RESULT, FALSE @@ -1440,7 +1440,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: @ 8277D35 goto MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader end -MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader:: @ 8277D81 +MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader:: message CableClub_Text_ChooseGroupLeader waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE @@ -1451,7 +1451,7 @@ MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader:: @ 8277D81 case MULTI_B_PRESSED, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame end -MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader:: @ 8277DBE +MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader:: call CableClub_EventScript_TryBecomeLinkLeader compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom @@ -1462,7 +1462,7 @@ MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader:: @ 8277DBE release return -MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup:: @ 8277DE6 +MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup:: call CableClub_EventScript_TryJoinLinkGroup compare VAR_RESULT, LINKUP_SUCCESS goto_if_eq MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom @@ -1473,7 +1473,7 @@ MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup:: @ 8277DE6 release return -MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom:: @ 8277E0E +MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom:: messageautoscroll MossdeepCity_GameCorner_1F_Text_AllGoodToGo waitmessage delay 60 @@ -1493,13 +1493,13 @@ MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom:: @ 8277E0E waitstate end -MossdeepCity_GameCorner_1F_EventScript_AdapterNotConnected:: @ 8277E48 +MossdeepCity_GameCorner_1F_EventScript_AdapterNotConnected:: delay 60 msgbox MossdeepCity_GameCorner_1F_Text_AdapterNotConnected, MSGBOX_DEFAULT release end -MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon:: @ 8277E55 +MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon:: msgbox MossdeepCity_GameCorner_1F_Text_ExplainRequiredMon, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MossdeepCity_GameCorner_1F_EventScript_AbortMinigame @@ -1510,22 +1510,22 @@ MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon:: @ 8277E55 goto MossdeepCity_GameCorner_1F_EventScript_AbortMinigame end -MossdeepCity_GameCorner_1F_EventScript_ExplainPokemonJumpRequirements:: @ 8277E84 +MossdeepCity_GameCorner_1F_EventScript_ExplainPokemonJumpRequirements:: msgbox MossdeepCity_GameCorner_1F_Text_ShortJumpingPokemonAllowed, MSGBOX_DEFAULT return -MossdeepCity_GameCorner_1F_EventScript_ExplainDodrioBerryPickingRequirements:: @ 8277E8D +MossdeepCity_GameCorner_1F_EventScript_ExplainDodrioBerryPickingRequirements:: msgbox MossdeepCity_GameCorner_1F_Text_OnlyDodrioAllowed, MSGBOX_DEFAULT return -MossdeepCity_GameCorner_1F_EventScript_PokemonJumpRecords:: @ 8277E96 +MossdeepCity_GameCorner_1F_EventScript_PokemonJumpRecords:: lockall special ShowPokemonJumpRecords waitstate releaseall end -MossdeepCity_GameCorner_1F_EventScript_DodrioBerryPickingRecords:: @ 8277E9D +MossdeepCity_GameCorner_1F_EventScript_DodrioBerryPickingRecords:: lockall special ShowDodrioBerryPickingRecords waitstate diff --git a/data/scripts/cave_hole.inc b/data/scripts/cave_hole.inc index 1cc33400495b..d7acf29d96cb 100644 --- a/data/scripts/cave_hole.inc +++ b/data/scripts/cave_hole.inc @@ -1,12 +1,12 @@ -CaveHole_CheckFallDownHole: @ 82A8327 +CaveHole_CheckFallDownHole: map_script_2 VAR_ICE_STEP_COUNT, 0, EventScript_FallDownHole .2byte 0 -CaveHole_FixCrackedGround: @ 82A8331 +CaveHole_FixCrackedGround: copyvar VAR_ICE_STEP_COUNT, 1 end -EventScript_FallDownHole:: @ 82A8337 +EventScript_FallDownHole:: lockall delay 20 applymovement OBJ_EVENT_ID_PLAYER, Movement_SetInvisible @@ -17,7 +17,7 @@ EventScript_FallDownHole:: @ 82A8337 waitstate end -EventScript_FallDownHoleMtPyre:: @ 82A8350 +EventScript_FallDownHoleMtPyre:: lockall delay 20 applymovement OBJ_EVENT_ID_PLAYER, Movement_SetInvisible @@ -28,6 +28,6 @@ EventScript_FallDownHoleMtPyre:: @ 82A8350 waitstate end -Movement_SetInvisible: @ 82A8369 +Movement_SetInvisible: set_invisible step_end diff --git a/data/scripts/cave_of_origin.inc b/data/scripts/cave_of_origin.inc index 579efdb89903..abffd07ff1cd 100644 --- a/data/scripts/cave_of_origin.inc +++ b/data/scripts/cave_of_origin.inc @@ -1,5 +1,5 @@ @ All unused / leftover scripts from RS -CaveOfOrigin_EventScript_LegendaryCry:: @ 8272274 +CaveOfOrigin_EventScript_LegendaryCry:: lockall waitse playmoncry SPECIES_KYOGRE, 2 @ SPECIES_GROUDON in Ruby @@ -8,25 +8,25 @@ CaveOfOrigin_EventScript_LegendaryCry:: @ 8272274 releaseall end -CaveOfOrigin_EventScript_Shake1:: @ 8272283 +CaveOfOrigin_EventScript_Shake1:: lockall setvar VAR_TEMP_1, 1 goto CaveOfOrigin_EventScript_Shake end -CaveOfOrigin_EventScript_Shake2:: @ 827228F +CaveOfOrigin_EventScript_Shake2:: lockall setvar VAR_TEMP_2, 1 goto CaveOfOrigin_EventScript_Shake end -CaveOfOrigin_EventScript_Shake3:: @ 827229B +CaveOfOrigin_EventScript_Shake3:: lockall setvar VAR_TEMP_3, 1 goto CaveOfOrigin_EventScript_Shake end -CaveOfOrigin_EventScript_Shake:: @ 82722A7 +CaveOfOrigin_EventScript_Shake:: setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes @@ -36,7 +36,7 @@ CaveOfOrigin_EventScript_Shake:: @ 82722A7 releaseall end -CaveOfOrigin_EventScript_DisableTriggers:: @ 82722C1 +CaveOfOrigin_EventScript_DisableTriggers:: setvar VAR_TEMP_1, 1 setvar VAR_TEMP_2, 1 setvar VAR_TEMP_3, 1 diff --git a/data/scripts/check_furniture.inc b/data/scripts/check_furniture.inc index 0a952f3c3545..920e88287991 100644 --- a/data/scripts/check_furniture.inc +++ b/data/scripts/check_furniture.inc @@ -1,27 +1,27 @@ -EventScript_PictureBookShelf:: @ 82725CE +EventScript_PictureBookShelf:: msgbox Text_PictureBookShelf, MSGBOX_SIGN end -EventScript_BookShelf:: @ 82725D7 +EventScript_BookShelf:: msgbox Text_BookShelf, MSGBOX_SIGN end -EventScript_PokemonCenterBookShelf:: @ 82725E0 +EventScript_PokemonCenterBookShelf:: msgbox Text_PokemonCenterBookShelf, MSGBOX_SIGN end -EventScript_Vase:: @ 82725E9 +EventScript_Vase:: msgbox Text_Vase, MSGBOX_SIGN end -EventScript_EmptyTrashCan:: @ 82725F2 +EventScript_EmptyTrashCan:: msgbox Text_EmptyTrashCan, MSGBOX_SIGN end -EventScript_ShopShelf:: @ 82725FB +EventScript_ShopShelf:: msgbox Text_ShopShelf, MSGBOX_SIGN end -EventScript_Blueprint:: @ 8272604 +EventScript_Blueprint:: msgbox Text_Blueprint, MSGBOX_SIGN end diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index db43dfdd0f5a..0d9e023371d2 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -15,7 +15,7 @@ .set LOCALID_ARTIST, 15 @ Either ends or returns to EventScript_ContestReceptionist after submitting a contest entry -LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist:: @ 8279CC5 +LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist:: lock faceplayer compare VAR_CONTEST_PRIZE_PICKUP, 0 @@ -25,24 +25,24 @@ LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist:: @ 8279CC5 goto LilycoveCity_ContestLobby_EventScript_AskEnterContest end -LilycoveCity_ContestLobby_EventScript_ReceptionWelcome:: @ 8279CEA +LilycoveCity_ContestLobby_EventScript_ReceptionWelcome:: msgbox LilycoveCity_ContestLobby_Text_ContestReception, MSGBOX_DEFAULT return -LilycoveCity_ContestLobby_EventScript_GivePokeblockCase:: @ 8279CF3 +LilycoveCity_ContestLobby_EventScript_GivePokeblockCase:: msgbox LilycoveCity_ContestLobby_Text_ReceptionDontHavePokeblockCase, MSGBOX_DEFAULT giveitem ITEM_POKEBLOCK_CASE setflag FLAG_RECEIVED_POKEBLOCK_CASE msgbox LilycoveCity_ContestLobby_Text_NowThatWeveClearedThatUp, MSGBOX_DEFAULT return -LilycoveCity_ContestLobby_EventScript_PickUpPrize:: @ 8279D13 +LilycoveCity_ContestLobby_EventScript_PickUpPrize:: msgbox LilycoveCity_ContestLobby_Text_PokemonWonWeHavePrize, MSGBOX_DEFAULT switch VAR_CONTEST_PRIZE_PICKUP case 4, LilycoveCity_ContestLobby_EventScript_GiveLuxuryBallAtCounter end -LilycoveCity_ContestLobby_EventScript_GiveLuxuryBallAtCounter:: @ 8279D2C +LilycoveCity_ContestLobby_EventScript_GiveLuxuryBallAtCounter:: giveitem ITEM_LUXURY_BALL compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter @@ -51,13 +51,13 @@ LilycoveCity_ContestLobby_EventScript_GiveLuxuryBallAtCounter:: @ 8279D2C release end -LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter:: @ 8279D4B +LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter:: call Common_EventScript_BagIsFull msgbox LilycoveCity_ContestLobby_Text_ComeBackForPrizeLater, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_AskEnterContest:: @ 8279D5A +LilycoveCity_ContestLobby_EventScript_AskEnterContest:: message LilycoveCity_ContestLobby_Text_EnterContest1 waitmessage multichoice 0, 0, MULTI_ENTERINFO, FALSE @@ -68,7 +68,7 @@ LilycoveCity_ContestLobby_EventScript_AskEnterContest:: @ 8279D5A case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelEnterContest end -LilycoveCity_ContestLobby_EventScript_ContestInfo:: @ 8279D97 +LilycoveCity_ContestLobby_EventScript_ContestInfo:: message LilycoveCity_ContestLobby_Text_WhichTopic1 waitmessage multichoice 0, 0, MULTI_CONTEST_INFO, FALSE @@ -80,27 +80,27 @@ LilycoveCity_ContestLobby_EventScript_ContestInfo:: @ 8279D97 case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_AskEnterContest end -LilycoveCity_ContestLobby_EventScript_ExplainContests:: @ 8279DDF +LilycoveCity_ContestLobby_EventScript_ExplainContests:: msgbox LilycoveCity_ContestLobby_Text_ExplainContests, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ContestInfo end -LilycoveCity_ContestLobby_EventScript_ExplainContestTypes:: @ 8279DED +LilycoveCity_ContestLobby_EventScript_ExplainContestTypes:: msgbox LilycoveCity_ContestLobby_Text_ExplainContestTypes, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ContestInfo end -LilycoveCity_ContestLobby_EventScript_ExplainContestRanks:: @ 8279DFB +LilycoveCity_ContestLobby_EventScript_ExplainContestRanks:: msgbox LilycoveCity_ContestLobby_Text_ExplainContestRanks, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ContestInfo end -LilycoveCity_ContestLobby_EventScript_CancelEnterContest:: @ 8279E09 +LilycoveCity_ContestLobby_EventScript_CancelEnterContest:: msgbox LilycoveCity_ContestLobby_Text_ParticipateAnotherTime, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: @ 8279E13 +LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon1, MSGBOX_DEFAULT choosecontestmon compare VAR_0x8004, 255 @@ -118,7 +118,7 @@ LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: @ 8279E13 goto_if_eq LilycoveCity_ContestLobby_EventScript_CantEnterFainted end -LilycoveCity_ContestLobby_EventScript_ChooseContestRank:: @ 8279E62 +LilycoveCity_ContestLobby_EventScript_ChooseContestRank:: message LilycoveCity_ContestLobby_Text_EnterWhichRank waitmessage multichoice 0, 0, MULTI_CONTEST_RANK, FALSE @@ -131,29 +131,29 @@ LilycoveCity_ContestLobby_EventScript_ChooseContestRank:: @ 8279E62 case MULTI_B_PRESSED, LilycoveCity_ContestLobby_EventScript_CancelEnterContest end -LilycoveCity_ContestLobby_EventScript_EnterNormalRank:: @ 8279EB5 +LilycoveCity_ContestLobby_EventScript_EnterNormalRank:: setvar VAR_CONTEST_RANK, CONTEST_RANK_NORMAL goto LilycoveCity_ContestLobby_EventScript_ChooseContestType end -LilycoveCity_ContestLobby_EventScript_EnterSuperRank:: @ 8279EC0 +LilycoveCity_ContestLobby_EventScript_EnterSuperRank:: setvar VAR_CONTEST_RANK, CONTEST_RANK_SUPER goto LilycoveCity_ContestLobby_EventScript_ChooseContestType end -LilycoveCity_ContestLobby_EventScript_EnterHyperRank:: @ 8279ECB +LilycoveCity_ContestLobby_EventScript_EnterHyperRank:: setvar VAR_CONTEST_RANK, CONTEST_RANK_HYPER goto LilycoveCity_ContestLobby_EventScript_ChooseContestType end -LilycoveCity_ContestLobby_EventScript_EnterMasterRank:: @ 8279ED6 +LilycoveCity_ContestLobby_EventScript_EnterMasterRank:: setvar VAR_CONTEST_RANK, CONTEST_RANK_MASTER goto LilycoveCity_ContestLobby_EventScript_ChooseContestType end @ The multichoice selection IDs are equal to the CATEGORY values @ So rather than list the cases they just copy VAR_RESULT for a valid selection into VAR_CONTEST_CATEGORY -LilycoveCity_ContestLobby_EventScript_ChooseContestType:: @ 8279EE1 +LilycoveCity_ContestLobby_EventScript_ChooseContestType:: message LilycoveCity_ContestLobby_Text_EnterWhichContest1 waitmessage multichoice 0, 0, MULTI_CONTEST_TYPE, FALSE @@ -164,48 +164,48 @@ LilycoveCity_ContestLobby_EventScript_ChooseContestType:: @ 8279EE1 goto LilycoveCity_ContestLobby_EventScript_ChooseContestMon end -LilycoveCity_ContestLobby_EventScript_CantEnterLowRank:: @ 8279F12 +LilycoveCity_ContestLobby_EventScript_CantEnterLowRank:: msgbox LilycoveCity_ContestLobby_Text_MonNotQualifiedForRank, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseContestMon release end @ Unused -LilycoveCity_ContestLobby_EventScript_ConfirmEntry:: @ 8279F21 +LilycoveCity_ContestLobby_EventScript_ConfirmEntry:: msgbox LilycoveCity_ContestLobby_Text_ConfirmContestMon, MSGBOX_YESNO switch VAR_RESULT case NO, LilycoveCity_ContestLobby_EventScript_ChooseContestMon case YES, LilycoveCity_ContestLobby_EventScript_EnterMon end -LilycoveCity_ContestLobby_EventScript_ConfirmEntryAlreadyWon:: @ 8279F45 +LilycoveCity_ContestLobby_EventScript_ConfirmEntryAlreadyWon:: msgbox LilycoveCity_ContestLobby_Text_AlreadyWonEnterAnyway, MSGBOX_YESNO switch VAR_RESULT case NO, LilycoveCity_ContestLobby_EventScript_ChooseContestMon case YES, LilycoveCity_ContestLobby_EventScript_EnterMon end -LilycoveCity_ContestLobby_EventScript_CantEnterEgg:: @ 8279F69 +LilycoveCity_ContestLobby_EventScript_CantEnterEgg:: msgbox LilycoveCity_ContestLobby_Text_EggCannotTakePart, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseContestMon release end -LilycoveCity_ContestLobby_EventScript_CantEnterFainted:: @ 8279F78 +LilycoveCity_ContestLobby_EventScript_CantEnterFainted:: msgbox LilycoveCity_ContestLobby_Text_MonInNoConditionForContest, MSGBOX_DEFAULT goto LilycoveCity_ContestLobby_EventScript_ChooseContestMon release end @ The return here is back to LilycoveCity_ContestLobby_EventScript_ContestReceptionist -LilycoveCity_ContestLobby_EventScript_EnterMon:: @ 8279F87 +LilycoveCity_ContestLobby_EventScript_EnterMon:: msgbox LilycoveCity_ContestLobby_Text_YourMonIsEntryNum4, MSGBOX_DEFAULT closemessage releaseall setvar VAR_CONTEST_HALL_STATE, 1 return -ContestHall_EventScript_DoContest:: @ 8279F97 +ContestHall_EventScript_DoContest:: special LinkContestTryShowWirelessIndicator setvar VAR_0x8006, 0 lockall @@ -228,7 +228,7 @@ ContestHall_EventScript_DoContest:: @ 8279F97 setvar VAR_CONTEST_HALL_STATE, 2 return -ContestHall_EventScript_GetContestRankStringId:: @ 8279FF2 +ContestHall_EventScript_GetContestRankStringId:: switch VAR_CONTEST_RANK case CONTEST_RANK_NORMAL, ContestHall_EventScript_GetNormalStringId case CONTEST_RANK_SUPER, ContestHall_EventScript_GetSuperStringId @@ -236,24 +236,24 @@ ContestHall_EventScript_GetContestRankStringId:: @ 8279FF2 case CONTEST_RANK_MASTER, ContestHall_EventScript_GetMasterStringId return -ContestHall_EventScript_GetNormalStringId:: @ 827A024 +ContestHall_EventScript_GetNormalStringId:: setvar VAR_0x8009, STDSTRING_NORMAL return -ContestHall_EventScript_GetSuperStringId:: @ 827A02A +ContestHall_EventScript_GetSuperStringId:: setvar VAR_0x8009, STDSTRING_SUPER return -ContestHall_EventScript_GetHyperStringId:: @ 827A030 +ContestHall_EventScript_GetHyperStringId:: setvar VAR_0x8009, STDSTRING_HYPER return -ContestHall_EventScript_GetMasterStringId:: @ 827A036 +ContestHall_EventScript_GetMasterStringId:: setvar VAR_0x8009, STDSTRING_MASTER return @ This whole switch is equivalent to copyvar VAR_0x8008, VAR_CONTEST_CATEGORY -ContestHall_EventScript_GetContestCategory:: @ 827A03C +ContestHall_EventScript_GetContestCategory:: switch VAR_CONTEST_CATEGORY case CONTEST_CATEGORY_COOL, ContestHall_EventScript_GetCategoryCool case CONTEST_CATEGORY_BEAUTY, ContestHall_EventScript_GetCategoryBeauty @@ -262,27 +262,27 @@ ContestHall_EventScript_GetContestCategory:: @ 827A03C case CONTEST_CATEGORY_TOUGH, ContestHall_EventScript_GetCategoryTough return -ContestHall_EventScript_GetCategoryCool:: @ 827A079 +ContestHall_EventScript_GetCategoryCool:: setvar VAR_0x8008, CONTEST_CATEGORY_COOL return -ContestHall_EventScript_GetCategoryBeauty:: @ 827A07F +ContestHall_EventScript_GetCategoryBeauty:: setvar VAR_0x8008, CONTEST_CATEGORY_BEAUTY return -ContestHall_EventScript_GetCategoryCute:: @ 827A085 +ContestHall_EventScript_GetCategoryCute:: setvar VAR_0x8008, CONTEST_CATEGORY_CUTE return -ContestHall_EventScript_GetCategorySmart:: @ 827A08B +ContestHall_EventScript_GetCategorySmart:: setvar VAR_0x8008, CONTEST_CATEGORY_SMART return -ContestHall_EventScript_GetCategoryTough:: @ 827A091 +ContestHall_EventScript_GetCategoryTough:: setvar VAR_0x8008, CONTEST_CATEGORY_TOUGH return -ContestHall_EventScript_ContestGettingStarted:: @ 827A097 +ContestHall_EventScript_ContestGettingStarted:: buffercontesttypestring 1, VAR_0x8008 bufferstdstring 2, VAR_0x8009 call ContestHall_EventScript_GettingStarted @@ -292,7 +292,7 @@ ContestHall_EventScript_ContestGettingStarted:: @ 827A097 releaseall return -ContestHall_EventScript_GettingStarted:: @ 827A0B1 +ContestHall_EventScript_GettingStarted:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_GettingStartedLink lockall @@ -300,7 +300,7 @@ ContestHall_EventScript_GettingStarted:: @ 827A0B1 releaseall return -ContestHall_EventScript_GettingStartedLink:: @ 827A0C7 +ContestHall_EventScript_GettingStartedLink:: specialvar VAR_RESULT, IsWirelessContest compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_GettingStartedWireless @@ -308,7 +308,7 @@ ContestHall_EventScript_GettingStartedLink:: @ 827A0C7 waitmessage return -ContestHall_EventScript_GettingStartedWireless:: @ 827A0DE +ContestHall_EventScript_GettingStartedWireless:: messageautoscroll ContestHall_Text_GettingStartedWireless waitmessage call ContestHall_EventScript_TryWaitForLink @@ -317,7 +317,7 @@ ContestHall_EventScript_GettingStartedWireless:: @ 827A0DE call ContestHall_EventScript_TryWaitForLink return -ContestHall_EventScript_ShowContestMons:: @ 827A0F5 +ContestHall_EventScript_ShowContestMons:: call ContestHall_EventScript_ContestantWalkToCenter call ContestHall_EventScript_ShowContestMonPic call ContestHall_EventScript_AudienceHeartEmotes @@ -332,18 +332,18 @@ ContestHall_EventScript_ShowContestMons:: @ 827A0F5 setvar VAR_TEMP_1, 6 return -ContestHall_EventScript_TryWaitForLink:: @ 827A133 +ContestHall_EventScript_TryWaitForLink:: specialvar VAR_RESULT, IsWirelessContest compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_WaitForLink return -ContestHall_EventScript_WaitForLink:: @ 827A144 +ContestHall_EventScript_WaitForLink:: special LinkContestWaitForConnection waitstate return -ContestHall_EventScript_ContestantWalkToCenter:: @ 827A149 +ContestHall_EventScript_ContestantWalkToCenter:: compare VAR_0x8006, 0 goto_if_eq ContestHall_EventScript_Player1WalkToCenter compare VAR_0x8006, 1 @@ -354,7 +354,7 @@ ContestHall_EventScript_ContestantWalkToCenter:: @ 827A149 goto_if_eq ContestHall_EventScript_Player4WalkToCenter return -ContestHall_EventScript_Player1WalkToCenter:: @ 827A176 +ContestHall_EventScript_Player1WalkToCenter:: call ContestHall_EventScript_TryWaitForLink lockall applymovement LOCALID_CONTESTANT_1, ContestHall_Movement_Player1WalkToCenter @@ -363,7 +363,7 @@ ContestHall_EventScript_Player1WalkToCenter:: @ 827A176 setvar VAR_0x800B, LOCALID_CONTESTANT_1 return -ContestHall_EventScript_Player2WalkToCenter:: @ 827A18D +ContestHall_EventScript_Player2WalkToCenter:: call ContestHall_EventScript_TryWaitForLink lockall applymovement LOCALID_CONTESTANT_2, ContestHall_Movement_Player2WalkToCenter @@ -372,7 +372,7 @@ ContestHall_EventScript_Player2WalkToCenter:: @ 827A18D setvar VAR_0x800B, LOCALID_CONTESTANT_2 return -ContestHall_EventScript_Player3WalkToCenter:: @ 827A1A4 +ContestHall_EventScript_Player3WalkToCenter:: call ContestHall_EventScript_TryWaitForLink lockall applymovement LOCALID_CONTESTANT_3, ContestHall_Movement_Player3WalkToCenter @@ -381,7 +381,7 @@ ContestHall_EventScript_Player3WalkToCenter:: @ 827A1A4 setvar VAR_0x800B, LOCALID_CONTESTANT_3 return -ContestHall_EventScript_Player4WalkToCenter:: @ 827A1BB +ContestHall_EventScript_Player4WalkToCenter:: call ContestHall_EventScript_TryWaitForLink lockall applymovement LOCALID_CONTESTANT_4, ContestHall_Movement_Player4WalkToCenter @@ -390,7 +390,7 @@ ContestHall_EventScript_Player4WalkToCenter:: @ 827A1BB setvar VAR_0x800B, LOCALID_CONTESTANT_4 return -ContestHall_EventScript_ShowContestMonPic:: @ 827A1D2 +ContestHall_EventScript_ShowContestMonPic:: special BufferContestTrainerAndMonNames addvar VAR_0x8006, 1 buffernumberstring 1, VAR_0x8006 @@ -412,19 +412,19 @@ ContestHall_EventScript_ShowContestMonPic:: @ 827A1D2 call ContestHall_EventScript_EntryXTrainersMon return -ContestHall_EventScript_EntryXTrainersMon:: @ 827A217 +ContestHall_EventScript_EntryXTrainersMon:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_EntryXTrainersMonLink message ContestHall_Text_EntryXTrainersMon waitmessage return -ContestHall_EventScript_EntryXTrainersMonLink:: @ 827A229 +ContestHall_EventScript_EntryXTrainersMonLink:: messageautoscroll ContestHall_Text_EntryXTrainersMon waitmessage return -ContestHall_EventScript_AudienceVote:: @ 827A230 +ContestHall_EventScript_AudienceVote:: call ContestHall_EventScript_AudienceWillVote call ContestHall_EventScript_VotingUnderWay playse SE_M_ENCORE2 @@ -440,13 +440,13 @@ ContestHall_EventScript_AudienceVote:: @ 827A230 waitmovement 0 return -ContestHall_EventScript_AudienceWillVote:: @ 827A26C +ContestHall_EventScript_AudienceWillVote:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_AudienceWillVoteLink msgbox ContestHall_Text_SeenContestantsAudienceWillVote, MSGBOX_DEFAULT return -ContestHall_EventScript_AudienceWillVoteLink:: @ 827A280 +ContestHall_EventScript_AudienceWillVoteLink:: specialvar VAR_RESULT, IsWirelessContest compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_AudienceWillVoteWireless @@ -454,7 +454,7 @@ ContestHall_EventScript_AudienceWillVoteLink:: @ 827A280 waitmessage return -ContestHall_EventScript_AudienceWillVoteWireless:: @ 827A297 +ContestHall_EventScript_AudienceWillVoteWireless:: messageautoscroll ContestHall_Text_WeveSeenContestants waitmessage call ContestHall_EventScript_TryWaitForLink @@ -466,18 +466,18 @@ ContestHall_EventScript_AudienceWillVoteWireless:: @ 827A297 call ContestHall_EventScript_TryWaitForLink return -ContestHall_EventScript_VotingUnderWay:: @ 827A2B9 +ContestHall_EventScript_VotingUnderWay:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_VotingUnderWayLink message ContestHall_Text_VotingUnderWay return -ContestHall_EventScript_VotingUnderWayLink:: @ 827A2CA +ContestHall_EventScript_VotingUnderWayLink:: messageautoscroll ContestHall_Text_VotingUnderWay call ContestHall_EventScript_TryWaitForLink return -ContestHall_EventScript_AudienceReactToContestant:: @ 827A2D5 +ContestHall_EventScript_AudienceReactToContestant:: call ContestHall_EventScript_TryWaitForLink applymovement LOCALID_MC, ContestHall_Movement_AudienceMemberLookLeft waitmovement 0 @@ -508,7 +508,7 @@ ContestHall_EventScript_AudienceReactToContestant:: @ 827A2D5 @ For each heart to display a random audience member is chosen, and a new one chosen if they already displayed a heart @ VAR_TEMP_1 through VAR_TEMP_8 represent each of the 8 audience members that are actual object events @ and are set to 9 if they havent displayed a heart yet, and 1 if they have -ContestHall_EventScript_AudienceHeartEmotes:: @ 827A34F +ContestHall_EventScript_AudienceHeartEmotes:: special GetContestMonCondition compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL call_if_eq ContestHall_EventScript_GetNumberOfHeartsNormal @@ -540,7 +540,7 @@ ContestHall_EventScript_AudienceHeartEmotes:: @ 827A34F setvar VAR_TEMP_8, 0 return -ContestHall_EventScript_DisplayHearts:: @ 827A3E5 +ContestHall_EventScript_DisplayHearts:: setvar VAR_RESULT, 8 special GenerateContestRand compare VAR_RESULT, 0 @@ -564,7 +564,7 @@ ContestHall_EventScript_DisplayHearts:: @ 827A3E5 waitmovement 0 return -ContestHall_EventScript_GetNumberOfHeartsNormal:: @ 827A454 +ContestHall_EventScript_GetNumberOfHeartsNormal:: compare VAR_0x8004, 80 goto_if_gt ContestHall_EventScript_Set8Hearts compare VAR_0x8004, 70 @@ -584,7 +584,7 @@ ContestHall_EventScript_GetNumberOfHeartsNormal:: @ 827A454 setvar VAR_TEMP_0, 0 return -ContestHall_EventScript_GetNumberOfHeartsSuper:: @ 827A4B2 +ContestHall_EventScript_GetNumberOfHeartsSuper:: compare VAR_0x8004, 230 goto_if_gt ContestHall_EventScript_Set8Hearts compare VAR_0x8004, 210 @@ -604,7 +604,7 @@ ContestHall_EventScript_GetNumberOfHeartsSuper:: @ 827A4B2 setvar VAR_TEMP_0, 0 return -ContestHall_EventScript_GetNumberOfHeartsHyper:: @ 827A510 +ContestHall_EventScript_GetNumberOfHeartsHyper:: compare VAR_0x8004, 380 goto_if_gt ContestHall_EventScript_Set8Hearts compare VAR_0x8004, 350 @@ -624,7 +624,7 @@ ContestHall_EventScript_GetNumberOfHeartsHyper:: @ 827A510 setvar VAR_TEMP_0, 0 return -ContestHall_EventScript_GetNumberOfHeartsMaster:: @ 827A56E +ContestHall_EventScript_GetNumberOfHeartsMaster:: compare VAR_0x8004, 600 goto_if_gt ContestHall_EventScript_Set8Hearts compare VAR_0x8004, 560 @@ -644,7 +644,7 @@ ContestHall_EventScript_GetNumberOfHeartsMaster:: @ 827A56E setvar VAR_TEMP_0, 0 return -ContestHall_EventScript_GetNumberOfHeartsLink:: @ 827A5CC +ContestHall_EventScript_GetNumberOfHeartsLink:: compare VAR_0x8004, 600 goto_if_gt ContestHall_EventScript_Set8Hearts compare VAR_0x8004, 550 @@ -664,39 +664,39 @@ ContestHall_EventScript_GetNumberOfHeartsLink:: @ 827A5CC setvar VAR_TEMP_0, 0 return -ContestHall_EventScript_Set1Heart:: @ 827A62A +ContestHall_EventScript_Set1Heart:: setvar VAR_TEMP_0, 1 return -ContestHall_EventScript_Set2Hearts:: @ 827A630 +ContestHall_EventScript_Set2Hearts:: setvar VAR_TEMP_0, 2 return -ContestHall_EventScript_Set3Hearts:: @ 827A636 +ContestHall_EventScript_Set3Hearts:: setvar VAR_TEMP_0, 3 return -ContestHall_EventScript_Set4Hearts:: @ 827A63C +ContestHall_EventScript_Set4Hearts:: setvar VAR_TEMP_0, 4 return -ContestHall_EventScript_Set5Hearts:: @ 827A642 +ContestHall_EventScript_Set5Hearts:: setvar VAR_TEMP_0, 5 return -ContestHall_EventScript_Set6Hearts:: @ 827A648 +ContestHall_EventScript_Set6Hearts:: setvar VAR_TEMP_0, 6 return -ContestHall_EventScript_Set7Hearts:: @ 827A64E +ContestHall_EventScript_Set7Hearts:: setvar VAR_TEMP_0, 7 return -ContestHall_EventScript_Set8Hearts:: @ 827A654 +ContestHall_EventScript_Set8Hearts:: setvar VAR_TEMP_0, 8 return -ContestHall_EventScript_TryDisplayHeartAudienceMember1:: @ 827A65A +ContestHall_EventScript_TryDisplayHeartAudienceMember1:: compare VAR_TEMP_1, 1 goto_if_eq ContestHall_EventScript_AudienceMember1AlreadyEmoted applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_Heart @@ -706,10 +706,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember1:: @ 827A65A addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember1AlreadyEmoted:: @ 827A67D +ContestHall_EventScript_AudienceMember1AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember2:: @ 827A67E +ContestHall_EventScript_TryDisplayHeartAudienceMember2:: compare VAR_TEMP_2, 1 goto_if_eq ContestHall_EventScript_AudienceMember2AlreadyEmoted applymovement LOCALID_AUDIENCE_2, ContestHall_Movement_Heart @@ -719,10 +719,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember2:: @ 827A67E addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember2AlreadyEmoted:: @ 827A6A1 +ContestHall_EventScript_AudienceMember2AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember3:: @ 827A6A2 +ContestHall_EventScript_TryDisplayHeartAudienceMember3:: compare VAR_TEMP_3, 1 goto_if_eq ContestHall_EventScript_AudienceMember3AlreadyEmoted applymovement LOCALID_AUDIENCE_3, ContestHall_Movement_Heart @@ -732,10 +732,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember3:: @ 827A6A2 addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember3AlreadyEmoted:: @ 827A6C5 +ContestHall_EventScript_AudienceMember3AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember4:: @ 827A6C6 +ContestHall_EventScript_TryDisplayHeartAudienceMember4:: compare VAR_TEMP_4, 1 goto_if_eq ContestHall_EventScript_Audience4MemberAlreadyEmoted applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_Heart @@ -745,10 +745,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember4:: @ 827A6C6 addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_Audience4MemberAlreadyEmoted:: @ 827A6E9 +ContestHall_EventScript_Audience4MemberAlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember5:: @ 827A6EA +ContestHall_EventScript_TryDisplayHeartAudienceMember5:: compare VAR_TEMP_5, 1 goto_if_eq ContestHall_EventScript_AudienceMember5AlreadyEmoted applymovement LOCALID_AUDIENCE_5, ContestHall_Movement_Heart @@ -758,10 +758,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember5:: @ 827A6EA addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember5AlreadyEmoted:: @ 827A70D +ContestHall_EventScript_AudienceMember5AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember6:: @ 827A70E +ContestHall_EventScript_TryDisplayHeartAudienceMember6:: compare VAR_TEMP_6, 1 goto_if_eq ContestHall_EventScript_AudienceMember6AlreadyEmoted applymovement LOCALID_AUDIENCE_6, ContestHall_Movement_Heart @@ -771,10 +771,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember6:: @ 827A70E addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember6AlreadyEmoted:: @ 827A731 +ContestHall_EventScript_AudienceMember6AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember7:: @ 827A732 +ContestHall_EventScript_TryDisplayHeartAudienceMember7:: compare VAR_TEMP_7, 1 goto_if_eq ContestHall_EventScript_AudienceMember7AlreadyEmoted applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_Heart @@ -784,10 +784,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember7:: @ 827A732 addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember7AlreadyEmoted:: @ 827A755 +ContestHall_EventScript_AudienceMember7AlreadyEmoted:: return -ContestHall_EventScript_TryDisplayHeartAudienceMember8:: @ 827A756 +ContestHall_EventScript_TryDisplayHeartAudienceMember8:: compare VAR_TEMP_8, 1 goto_if_eq ContestHall_EventScript_AudienceMember8AlreadyEmoted applymovement LOCALID_ARTIST, ContestHall_Movement_Heart @@ -797,10 +797,10 @@ ContestHall_EventScript_TryDisplayHeartAudienceMember8:: @ 827A756 addvar VAR_TEMP_0, -1 return -ContestHall_EventScript_AudienceMember8AlreadyEmoted:: @ 827A779 +ContestHall_EventScript_AudienceMember8AlreadyEmoted:: return -ContestHall_EventScript_ContestantReturn:: @ 827A77A +ContestHall_EventScript_ContestantReturn:: closemessage release removeobject LOCALID_POKEBALL @@ -813,7 +813,7 @@ ContestHall_EventScript_ContestantReturn:: @ 827A77A case 3, ContestHall_EventScript_Player4WalkBack return -ContestHall_EventScript_Player1WalkBack:: @ 827A7B9 +ContestHall_EventScript_Player1WalkBack:: call ContestHall_EventScript_TryWaitForLink lockall applymovement VAR_0x800B, ContestHall_Movement_Player1WalkBack @@ -821,7 +821,7 @@ ContestHall_EventScript_Player1WalkBack:: @ 827A7B9 releaseall return -ContestHall_EventScript_Player2WalkBack:: @ 827A7CB +ContestHall_EventScript_Player2WalkBack:: call ContestHall_EventScript_TryWaitForLink lockall applymovement VAR_0x800B, ContestHall_Movement_Player2WalkBack @@ -829,7 +829,7 @@ ContestHall_EventScript_Player2WalkBack:: @ 827A7CB releaseall return -ContestHall_EventScript_Player3WalkBack:: @ 827A7DD +ContestHall_EventScript_Player3WalkBack:: call ContestHall_EventScript_TryWaitForLink lockall applymovement VAR_0x800B, ContestHall_Movement_Player3WalkBack @@ -837,7 +837,7 @@ ContestHall_EventScript_Player3WalkBack:: @ 827A7DD releaseall return -ContestHall_EventScript_Player4WalkBack:: @ 827A7EF +ContestHall_EventScript_Player4WalkBack:: call ContestHall_EventScript_TryWaitForLink lockall applymovement VAR_0x800B, ContestHall_Movement_Player4WalkBack @@ -845,7 +845,7 @@ ContestHall_EventScript_Player4WalkBack:: @ 827A7EF releaseall return -ContestHall_EventScript_DoContestAppeals:: @ 827A801 +ContestHall_EventScript_DoContestAppeals:: lockall applymovement LOCALID_MC, ContestHall_Movement_FaceContestants2 waitmovement 0 @@ -869,13 +869,13 @@ ContestHall_EventScript_DoContestAppeals:: @ 827A801 releaseall return -ContestHall_EventScript_LetsAppeal:: @ 827A853 +ContestHall_EventScript_LetsAppeal:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_LetsAppealLink msgbox ContestHall_Text_VotingCompleteLetsAppeal, MSGBOX_DEFAULT return -ContestHall_EventScript_LetsAppealLink:: @ 827A867 +ContestHall_EventScript_LetsAppealLink:: specialvar VAR_RESULT, IsWirelessContest compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_LetsAppealWireless @@ -883,7 +883,7 @@ ContestHall_EventScript_LetsAppealLink:: @ 827A867 waitmessage return -ContestHall_EventScript_LetsAppealWireless:: @ 827A87E +ContestHall_EventScript_LetsAppealWireless:: call ContestHall_EventScript_TryWaitForLink messageautoscroll ContestHall_Text_VotingComplete waitmessage @@ -896,7 +896,7 @@ ContestHall_EventScript_LetsAppealWireless:: @ 827A87E call ContestHall_EventScript_TryWaitForLink return -ContestHall_EventScript_ContestResults:: @ 827A8A5 +ContestHall_EventScript_ContestResults:: call ContestHall_EventScript_TryWaitForLink call ContestHall_EventScript_ThatsItForJudging call ContestHall_EventScript_TryWaitForLink @@ -919,59 +919,59 @@ ContestHall_EventScript_ContestResults:: @ 827A8A5 playbgm MUS_CONTEST_WINNER, FALSE return -ContestHall_EventScript_ThatsItForJudging:: @ 827A8FB +ContestHall_EventScript_ThatsItForJudging:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_ThatsItForJudgingLink msgbox ContestHall_Text_ThatsItForJudging, MSGBOX_DEFAULT return -ContestHall_EventScript_ThatsItForJudgingLink:: @ 827A90F +ContestHall_EventScript_ThatsItForJudgingLink:: call ContestHall_EventScript_TryWaitForLink messageautoscroll ContestHall_Text_ThatsItForJudging waitmessage delay 30 return -ContestHall_EventScript_ThankYouForAppeals:: @ 827A91E +ContestHall_EventScript_ThankYouForAppeals:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_ThankYouForAppealsLink msgbox ContestHall_Text_ThankYouForAppeals, MSGBOX_DEFAULT return -ContestHall_EventScript_ThankYouForAppealsLink:: @ 827A932 +ContestHall_EventScript_ThankYouForAppealsLink:: call ContestHall_EventScript_TryWaitForLink messageautoscroll ContestHall_Text_ThankYouForAppeals waitmessage delay 30 return -ContestHall_EventScript_JudgeLooksReady:: @ 827A941 +ContestHall_EventScript_JudgeLooksReady:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_JudgeLooksReadyLink msgbox ContestHall_Text_JudgeLooksReady, MSGBOX_DEFAULT return -ContestHall_EventScript_JudgeLooksReadyLink:: @ 827A955 +ContestHall_EventScript_JudgeLooksReadyLink:: call ContestHall_EventScript_TryWaitForLink messageautoscroll ContestHall_Text_JudgeLooksReady waitmessage delay 30 return -ContestHall_EventScript_WeWillDeclareWinner:: @ 827A964 +ContestHall_EventScript_WeWillDeclareWinner:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_WeWillDeclareWinnerLink msgbox ContestHall_Text_WeWillNowDeclareWinner, MSGBOX_DEFAULT return -ContestHall_EventScript_WeWillDeclareWinnerLink:: @ 827A978 +ContestHall_EventScript_WeWillDeclareWinnerLink:: call ContestHall_EventScript_TryWaitForLink messageautoscroll ContestHall_Text_WeWillNowDeclareWinner waitmessage delay 30 return -ContestHall_EventScript_GetWinnerObjEventId:: @ 827A987 +ContestHall_EventScript_GetWinnerObjEventId:: special GetContestWinnerId switch VAR_0x8005 case 0, ContestHall_EventScript_GetPlayer1ObjEventId @@ -980,23 +980,23 @@ ContestHall_EventScript_GetWinnerObjEventId:: @ 827A987 case 3, ContestHall_EventScript_GetPlayer4ObjEventId return -ContestHall_EventScript_GetPlayer1ObjEventId:: @ 827A9BC +ContestHall_EventScript_GetPlayer1ObjEventId:: setvar VAR_TEMP_3, LOCALID_CONTESTANT_1 return -ContestHall_EventScript_GetPlayer2ObjEventId:: @ 827A9C2 +ContestHall_EventScript_GetPlayer2ObjEventId:: setvar VAR_TEMP_3, LOCALID_CONTESTANT_2 return -ContestHall_EventScript_GetPlayer3ObjEventId:: @ 827A9C8 +ContestHall_EventScript_GetPlayer3ObjEventId:: setvar VAR_TEMP_3, LOCALID_CONTESTANT_3 return -ContestHall_EventScript_GetPlayer4ObjEventId:: @ 827A9CE +ContestHall_EventScript_GetPlayer4ObjEventId:: setvar VAR_TEMP_3, LOCALID_CONTESTANT_4 return -ContestHall_EventScript_CongratulateWinner:: @ 827A9D4 +ContestHall_EventScript_CongratulateWinner:: special BufferContestWinnerTrainerName special BufferContestWinnerMonName addvar VAR_0x8005, 1 @@ -1009,18 +1009,18 @@ ContestHall_EventScript_CongratulateWinner:: @ 827A9D4 setvar VAR_TEMP_1, 0 return -ContestHall_EventScript_CongratsWinner:: @ 827AA00 +ContestHall_EventScript_CongratsWinner:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_CongratsWinnerLink msgbox ContestHall_Text_CongratsTrainerXandMon, MSGBOX_DEFAULT return -ContestHall_EventScript_CongratsWinnerLink:: @ 827AA14 +ContestHall_EventScript_CongratsWinnerLink:: messageautoscroll ContestHall_Text_CongratsTrainerXandMon waitmessage return -ContestHall_EventScript_AudienceLookAround:: @ 827AA1B +ContestHall_EventScript_AudienceLookAround:: addvar VAR_TEMP_1, 1 lockall compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL @@ -1038,7 +1038,7 @@ ContestHall_EventScript_AudienceLookAround:: @ 827AA1B delay 30 return -ContestHall_EventScript_VObjectAudienceLookAround:: @ 827AA6F +ContestHall_EventScript_VObjectAudienceLookAround:: turnvobject 0, DIR_SOUTH turnvobject 2, DIR_SOUTH turnvobject 4, DIR_EAST @@ -1107,7 +1107,7 @@ ContestHall_EventScript_VObjectAudienceLookAround:: @ 827AA6F delay 10 return -ContestHall_EventScript_GiveWinnerPrize:: @ 827AB36 +ContestHall_EventScript_GiveWinnerPrize:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK goto_if_eq ContestHall_EventScript_EndLinkContest call ContestHall_EventScript_CheckShouldSkipPrize @@ -1126,7 +1126,7 @@ ContestHall_EventScript_GiveWinnerPrize:: @ 827AB36 goto_if_eq ContestHall_EventScript_SetReadyForContestArtist return -ContestHall_EventScript_SkipPrize:: @ 827AB82 +ContestHall_EventScript_SkipPrize:: lockall msgbox ContestHall_Text_CongratsPleaseCompeteAgain, MSGBOX_DEFAULT releaseall @@ -1136,37 +1136,37 @@ ContestHall_EventScript_SkipPrize:: @ 827AB82 goto_if_eq ContestHall_EventScript_SetReadyForContestArtist return -ContestHall_EventScript_CheckShouldSkipPrize:: @ 827AB9E +ContestHall_EventScript_CheckShouldSkipPrize:: specialvar VAR_RESULT, HasMonWonThisContestBefore compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_CheckPlayerWon return -ContestHall_EventScript_CheckPlayerWon:: @ 827ABAF +ContestHall_EventScript_CheckPlayerWon:: special GetContestWinnerId compare VAR_0x8005, 3 goto_if_eq ContestHall_EventScript_CheckRankIsMaster return -ContestHall_EventScript_CheckRankIsMaster:: @ 827ABBE +ContestHall_EventScript_CheckRankIsMaster:: compare VAR_CONTEST_RANK, CONTEST_RANK_MASTER goto_if_eq ContestHall_EventScript_DontSkipPrize setflag FLAG_TEMP_2 return -ContestHall_EventScript_DontSkipPrize:: @ 827ABCD +ContestHall_EventScript_DontSkipPrize:: return @ This flag is never read -ContestHall_EventScript_SetSketchFlag:: @ 827ABCE +ContestHall_EventScript_SetSketchFlag:: setflag FLAG_CONTEST_SKETCH_CREATED return -ContestHall_EventScript_SetReadyForContestArtist:: @ 827ABD2 +ContestHall_EventScript_SetReadyForContestArtist:: setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 1 return -ContestHall_EventScript_EndLinkContest:: @ 827ABD8 +ContestHall_EventScript_EndLinkContest:: delay 60 special GetContestPlayerId special GetContestWinnerId @@ -1176,15 +1176,15 @@ ContestHall_EventScript_EndLinkContest:: @ 827ABD8 closemessage return -ContestHall_EventScript_SetReadyForLinkContestArtist:: @ 827ABF1 +ContestHall_EventScript_SetReadyForLinkContestArtist:: setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 2 return @ Unused -ContestHall_EventScript_Ret:: @ 827ABF7 +ContestHall_EventScript_Ret:: return -ContestHall_EventScript_WinnerApproachForPrize:: @ 827ABF8 +ContestHall_EventScript_WinnerApproachForPrize:: switch VAR_0x8005 case 0, ContestHall_EventScript_Player1ApproachForPrize case 1, ContestHall_EventScript_Player2ApproachForPrize @@ -1192,28 +1192,28 @@ ContestHall_EventScript_WinnerApproachForPrize:: @ 827ABF8 case 3, ContestHall_EventScript_Player4ApproachForPrize return -ContestHall_EventScript_Player1ApproachForPrize:: @ 827AC2A +ContestHall_EventScript_Player1ApproachForPrize:: lockall applymovement VAR_TEMP_3, ContestHall_Movement_Player1ApproachForPrize waitmovement 0 releaseall return -ContestHall_EventScript_Player2ApproachForPrize:: @ 827AC37 +ContestHall_EventScript_Player2ApproachForPrize:: lockall applymovement VAR_TEMP_3, ContestHall_Movement_Player2ApproachForPrize waitmovement 0 releaseall return -ContestHall_EventScript_Player3ApproachForPrize:: @ 827AC44 +ContestHall_EventScript_Player3ApproachForPrize:: lockall applymovement VAR_TEMP_3, ContestHall_Movement_Player3ApproachForPrize waitmovement 0 releaseall return -ContestHall_EventScript_Player4ApproachForPrize:: @ 827AC51 +ContestHall_EventScript_Player4ApproachForPrize:: lockall applymovement VAR_TEMP_3, ContestHall_Movement_Player4ApproachForPrize waitmovement 0 @@ -1221,7 +1221,7 @@ ContestHall_EventScript_Player4ApproachForPrize:: @ 827AC51 return @ In NPC Contests, the player is always entry 4 (id number 3) -ContestHall_EventScript_GivePrizeIfWinner:: @ 827AC5E +ContestHall_EventScript_GivePrizeIfWinner:: special GetContestWinnerId compare VAR_0x8005, 3 goto_if_eq ContestHall_EventScript_GiveContestPrizes @@ -1230,7 +1230,7 @@ ContestHall_EventScript_GivePrizeIfWinner:: @ 827AC5E releaseall return -ContestHall_EventScript_GiveContestPrizes:: @ 827AC77 +ContestHall_EventScript_GiveContestPrizes:: compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER call_if_eq ContestHall_EventScript_SetSketchFlag specialvar VAR_RESULT, HasMonWonThisContestBefore @@ -1243,7 +1243,7 @@ ContestHall_EventScript_GiveContestPrizes:: @ 827AC77 releaseall return -ContestHall_EventScript_NoRoomForLuxuryBall:: @ 827ACA8 +ContestHall_EventScript_NoRoomForLuxuryBall:: lockall call Common_EventScript_BagIsFull msgbox ContestHall_Text_PickUpPrizeAtCounterLater, MSGBOX_DEFAULT @@ -1251,7 +1251,7 @@ ContestHall_EventScript_NoRoomForLuxuryBall:: @ 827ACA8 setvar VAR_CONTEST_PRIZE_PICKUP, 4 return -ContestHall_EventScript_GiveLuxuryBall:: @ 827ACBD +ContestHall_EventScript_GiveLuxuryBall:: giveitem ITEM_LUXURY_BALL compare VAR_RESULT, FALSE goto_if_eq ContestHall_EventScript_NoRoomForLuxuryBall @@ -1260,7 +1260,7 @@ ContestHall_EventScript_GiveLuxuryBall:: @ 827ACBD releaseall return -ContestHall_EventScript_ReceiveContestRibbon:: @ 827ACDF +ContestHall_EventScript_ReceiveContestRibbon:: special GiveMonContestRibbon incrementgamestat GAME_STAT_RECEIVED_RIBBONS setflag FLAG_SYS_RIBBON_GET @@ -1274,69 +1274,69 @@ ContestHall_EventScript_ReceiveContestRibbon:: @ 827ACDF releaseall return -ContestHall_Movement_MCWalkDown: @ 827AD09 +ContestHall_Movement_MCWalkDown: walk_down step_end -ContestHall_Movement_MCBackUp: @ 827AD0B +ContestHall_Movement_MCBackUp: lock_facing_direction walk_up unlock_facing_direction step_end -ContestHall_Movement_MCFaceJudge: @ 827AD0F +ContestHall_Movement_MCFaceJudge: walk_in_place_fastest_right step_end -ContestHall_Movement_Heart: @ 827AD11 +ContestHall_Movement_Heart: emote_heart step_end -ContestHall_Movement_FaceContestants: @ 827AD13 +ContestHall_Movement_FaceContestants: walk_in_place_fastest_down step_end -ContestHall_Movement_WalkStageLeft: @ 827AD15 +ContestHall_Movement_WalkStageLeft: walk_left walk_left walk_in_place_fastest_down step_end -ContestHall_Movement_WalkStageRight: @ 827AD19 +ContestHall_Movement_WalkStageRight: walk_right walk_right walk_in_place_fastest_down step_end -ContestHall_Movement_WinningPlayerWalkUp: @ 827AD1D +ContestHall_Movement_WinningPlayerWalkUp: walk_up walk_in_place_fastest_down step_end -ContestHall_Movement_ContestantDelay32: @ 827AD20 +ContestHall_Movement_ContestantDelay32: delay_16 delay_16 step_end -ContestHall_Movement_MCFaceJudge2: @ 827AD23 +ContestHall_Movement_MCFaceJudge2: walk_in_place_fastest_right step_end -ContestHall_Movement_JudgeFaceMC: @ 827AD25 +ContestHall_Movement_JudgeFaceMC: walk_in_place_fastest_left step_end -ContestHall_Movement_FaceContestants2: @ 827AD27 +ContestHall_Movement_FaceContestants2: walk_in_place_fastest_down step_end -ContestHall_Movement_Player3ApproachForPrize: @ 827AD29 +ContestHall_Movement_Player3ApproachForPrize: walk_left walk_left walk_up step_end -ContestHall_Movement_Player4ApproachForPrize: @ 827AD2D +ContestHall_Movement_Player4ApproachForPrize: walk_left walk_left walk_left @@ -1344,54 +1344,54 @@ ContestHall_Movement_Player4ApproachForPrize: @ 827AD2D walk_up step_end -ContestHall_Movement_AudienceMemberLookLeft: @ 827AD33 +ContestHall_Movement_AudienceMemberLookLeft: face_left delay_16 face_original_direction step_end -ContestHall_Movement_AudienceMemberLookUp: @ 827AD37 +ContestHall_Movement_AudienceMemberLookUp: face_up delay_16 face_original_direction step_end -ContestHall_Movement_AudienceMemberLookRight: @ 827AD3B +ContestHall_Movement_AudienceMemberLookRight: face_right delay_16 face_original_direction step_end -ContestHall_Movement_AudienceMemberLookDown: @ 827AD3F +ContestHall_Movement_AudienceMemberLookDown: face_down delay_16 face_original_direction step_end -ContestHall_Movement_Player4FaceUp: @ 827AD43 +ContestHall_Movement_Player4FaceUp: face_up step_end -ContestHall_Movement_MCLookAtJudge: @ 827AD45 +ContestHall_Movement_MCLookAtJudge: face_up delay_16 walk_in_place_fastest_right step_end -ContestHall_Movement_JudgeLookAtMC: @ 827AD49 +ContestHall_Movement_JudgeLookAtMC: walk_in_place_fastest_left delay_16 delay_16 walk_in_place_fastest_down step_end -ContestHall_Movement_MCWalkInPlaceDown: @ 827AD4E +ContestHall_Movement_MCWalkInPlaceDown: delay_16 delay_16 walk_in_place_fastest_down step_end -ContestHall_Movement_Player1WalkToCenter: @ 827AD52 +ContestHall_Movement_Player1WalkToCenter: walk_up walk_right walk_right @@ -1399,7 +1399,7 @@ ContestHall_Movement_Player1WalkToCenter: @ 827AD52 walk_in_place_fastest_up step_end -ContestHall_Movement_Player1WalkBack: @ 827AD58 +ContestHall_Movement_Player1WalkBack: walk_fast_left walk_fast_left walk_fast_left @@ -1407,31 +1407,31 @@ ContestHall_Movement_Player1WalkBack: @ 827AD58 walk_in_place_fastest_up step_end -ContestHall_Movement_Player2WalkToCenter: @ 827AD5E +ContestHall_Movement_Player2WalkToCenter: walk_up walk_right walk_in_place_fastest_up step_end -ContestHall_Movement_Player2WalkBack: @ 827AD62 +ContestHall_Movement_Player2WalkBack: walk_fast_left walk_fast_down walk_in_place_fastest_up step_end -ContestHall_Movement_Player3WalkToCenter: @ 827AD66 +ContestHall_Movement_Player3WalkToCenter: walk_up walk_left walk_in_place_fastest_up step_end -ContestHall_Movement_Player3WalkBack: @ 827AD6A +ContestHall_Movement_Player3WalkBack: walk_fast_right walk_fast_down walk_in_place_fastest_up step_end -ContestHall_Movement_Player4WalkToCenter: @ 827AD6E +ContestHall_Movement_Player4WalkToCenter: walk_up walk_left walk_left @@ -1439,7 +1439,7 @@ ContestHall_Movement_Player4WalkToCenter: @ 827AD6E walk_in_place_fastest_up step_end -ContestHall_Movement_Player4WalkBack: @ 827AD74 +ContestHall_Movement_Player4WalkBack: walk_fast_right walk_fast_right walk_fast_right @@ -1447,37 +1447,37 @@ ContestHall_Movement_Player4WalkBack: @ 827AD74 walk_in_place_fastest_up step_end -ContestHall_Movement_Player1ApproachForPrize: @ 827AD7A +ContestHall_Movement_Player1ApproachForPrize: walk_right walk_right walk_up step_end -ContestHall_Movement_Player2ApproachForPrize: @ 827AD7E +ContestHall_Movement_Player2ApproachForPrize: walk_up step_end @ IsContestWithRSPlayer has no side effect, so this is nop -ContestHall_EventScript_CheckIfContestWithRSPlayer:: @ 827AD80 +ContestHall_EventScript_CheckIfContestWithRSPlayer:: specialvar VAR_RESULT, IsContestWithRSPlayer compare VAR_RESULT, TRUE goto_if_eq ContestHall_EventScript_RetRSPlayer return -ContestHall_EventScript_RetRSPlayer:: @ 827AD91 +ContestHall_EventScript_RetRSPlayer:: return -LilycoveCity_ContestLobby_EventScript_DelayIfContestWithRSPlayer:: @ 827AD92 +LilycoveCity_ContestLobby_EventScript_DelayIfContestWithRSPlayer:: specialvar VAR_RESULT, IsContestWithRSPlayer compare VAR_RESULT, TRUE goto_if_eq LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer return -LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer:: @ 827ADA3 +LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer:: delay 9 return -LilycoveCity_ContestLobby_Text_ReceptionDontHavePokeblockCase: @ 827ADA7 +LilycoveCity_ContestLobby_Text_ReceptionDontHavePokeblockCase: .string "Hello!\p" .string "This is the reception counter for\n" .string "POKéMON CONTESTS.\p" @@ -1486,32 +1486,32 @@ LilycoveCity_ContestLobby_Text_ReceptionDontHavePokeblockCase: @ 827ADA7 .string "In that case, we need to provide you\n" .string "with this!$" -LilycoveCity_ContestLobby_Text_NowThatWeveClearedThatUp: @ 827AE47 +LilycoveCity_ContestLobby_Text_NowThatWeveClearedThatUp: .string "Okay, now that we've cleared that\n" .string "up…\p" .string "Hello!\p" .string "This is the reception counter for\n" .string "POKéMON CONTESTS.$" -LilycoveCity_ContestLobby_Text_ContestReception: @ 827AEA8 +LilycoveCity_ContestLobby_Text_ContestReception: .string "Hello!\p" .string "This is the reception counter for\n" .string "POKéMON CONTESTS.$" @ Unused -LilycoveCity_ContestLobby_Text_CounterOnlyFor4PlayerContests: @ 827AEE3 +LilycoveCity_ContestLobby_Text_CounterOnlyFor4PlayerContests: .string "Hello!\p" .string "This reception counter is only\n" .string "for 4-player POKéMON CONTESTS.$" -LilycoveCity_ContestLobby_Text_EnterContest1: @ 827AF28 +LilycoveCity_ContestLobby_Text_EnterContest1: .string "Would you like to enter your POKéMON\n" .string "in our CONTESTS?$" -LilycoveCity_ContestLobby_Text_WhichTopic1: @ 827AF5E +LilycoveCity_ContestLobby_Text_WhichTopic1: .string "Which topic would you like?$" -LilycoveCity_ContestLobby_Text_ExplainContests: @ 827AF7A +LilycoveCity_ContestLobby_Text_ExplainContests: .string "A POKéMON CONTEST involves four\n" .string "TRAINERS entering one POKéMON each\l" .string "in competitive judging.\p" @@ -1530,14 +1530,14 @@ LilycoveCity_ContestLobby_Text_ExplainContests: @ 827AF7A .string "The POKéMON garnering the highest\n" .string "score is declared the winner.$" -LilycoveCity_ContestLobby_Text_ExplainContestTypes: @ 827B17D +LilycoveCity_ContestLobby_Text_ExplainContestTypes: .string "There are five kinds of CONTESTS.\p" .string "COOL, BEAUTY, CUTE, SMART, and\n" .string "TOUGH are the five categories.\p" .string "Choose the CONTEST that is right for\n" .string "the POKéMON you plan to enter.$" -LilycoveCity_ContestLobby_Text_ExplainContestRanks: @ 827B221 +LilycoveCity_ContestLobby_Text_ExplainContestRanks: .string "There are four ranks of POKéMON\n" .string "CONTESTS.\p" .string "NORMAL, SUPER, HYPER, and MASTER\n" @@ -1555,77 +1555,77 @@ LilycoveCity_ContestLobby_Text_ExplainContestRanks: @ 827B221 .string "may compete in the MASTER Rank as\l" .string "often as its TRAINER wants.$" -LilycoveCity_ContestLobby_Text_EnterWhichRank: @ 827B3FF +LilycoveCity_ContestLobby_Text_EnterWhichRank: .string "Which Rank would you like to enter?$" -LilycoveCity_ContestLobby_Text_EnterWhichContest1: @ 827B423 +LilycoveCity_ContestLobby_Text_EnterWhichContest1: .string "Which CONTEST would you like to enter?$" -LilycoveCity_ContestLobby_Text_EnterWhichPokemon1: @ 827B44A +LilycoveCity_ContestLobby_Text_EnterWhichPokemon1: .string "Which POKéMON would you like to enter?$" -LilycoveCity_ContestLobby_Text_MonNotQualifiedForRank: @ 827B471 +LilycoveCity_ContestLobby_Text_MonNotQualifiedForRank: .string "I'm terribly sorry, but your POKéMON\n" .string "is not qualified to compete at this\l" .string "Rank yet…$" -LilycoveCity_ContestLobby_Text_EggCannotTakePart: @ 827B4C4 +LilycoveCity_ContestLobby_Text_EggCannotTakePart: .string "I'm sorry, but an EGG cannot take part\n" .string "in a POKéMON CONTEST.$" -LilycoveCity_ContestLobby_Text_MonInNoConditionForContest: @ 827B501 +LilycoveCity_ContestLobby_Text_MonInNoConditionForContest: .string "Your POKéMON appears to be in no\n" .string "condition to take part in a CONTEST…$" -LilycoveCity_ContestLobby_Text_AlreadyWonEnterAnyway: @ 827B547 +LilycoveCity_ContestLobby_Text_AlreadyWonEnterAnyway: .string "Oh, but that RIBBON…\p" .string "Your POKéMON has won this CONTEST\n" .string "before, hasn't it?\p" .string "Would you like to enter it in this\n" .string "CONTEST anyway?$" -LilycoveCity_ContestLobby_Text_ConfirmContestMon: @ 827B5C4 +LilycoveCity_ContestLobby_Text_ConfirmContestMon: .string "Is that your CONTEST POKéMON?$" -LilycoveCity_ContestLobby_Text_YourMonIsEntryNum4: @ 827B5E2 +LilycoveCity_ContestLobby_Text_YourMonIsEntryNum4: .string "Okay, your POKéMON will be entered\n" .string "in this CONTEST.\p" .string "Your POKéMON is Entry No. 4.\n" .string "The CONTEST will begin shortly.$" -LilycoveCity_ContestLobby_Text_ComeThroughHere: @ 827B653 +LilycoveCity_ContestLobby_Text_ComeThroughHere: .string "Please come in through here.\n" .string "Good luck!$" -LilycoveCity_ContestLobby_Text_PokemonWonWeHavePrize: @ 827B67B +LilycoveCity_ContestLobby_Text_PokemonWonWeHavePrize: .string "Congratulations! Your POKéMON is the\n" .string "CONTEST winner!\p" .string "We have your prize right here.\n" .string "Please, right this way!$" -LilycoveCity_ContestLobby_Text_ComeBackForPrizeLater: @ 827B6E7 +LilycoveCity_ContestLobby_Text_ComeBackForPrizeLater: .string "Please come back for your prize\n" .string "later on.$" -ContestHall_Text_GettingStartedParticipantsAsFollows: @ 827B711 +ContestHall_Text_GettingStartedParticipantsAsFollows: .string "MC: Hello! We're just getting started\n" .string "with a {STR_VAR_3} Rank POKéMON\l" .string "{STR_VAR_2}!\p" .string "The participating TRAINERS and their\n" .string "POKéMON are as follows:$" -ContestHall_Text_GettingStartedParticipantsAsFollowsLink: @ 827B78F +ContestHall_Text_GettingStartedParticipantsAsFollowsLink: .string "MC: Hello! We're just getting started\n" .string "with a 4-player linked POKéMON\l" .string "{STR_VAR_2}!\p" .string "The participating TRAINERS and their\n" .string "POKéMON are as follows:$" -ContestHall_Text_EntryXTrainersMon: @ 827B815 +ContestHall_Text_EntryXTrainersMon: .string "MC: Entry No. {STR_VAR_2}!\n" .string "{STR_VAR_1}'s {STR_VAR_3}!$" -ContestHall_Text_SeenContestantsAudienceWillVote: @ 827B830 +ContestHall_Text_SeenContestantsAudienceWillVote: .string "MC: We've just seen the four POKéMON\n" .string "contestants.\p" .string "Now it's time for primary judging!\p" @@ -1634,10 +1634,10 @@ ContestHall_Text_SeenContestantsAudienceWillVote: @ 827B830 .string "Without any further ado, let the\n" .string "voting begin!$" -ContestHall_Text_VotingUnderWay: @ 827B8F2 +ContestHall_Text_VotingUnderWay: .string "Voting under way…$" -ContestHall_Text_VotingCompleteLetsAppeal: @ 827B904 +ContestHall_Text_VotingCompleteLetsAppeal: .string "Voting is now complete!\p" .string "While the votes are being tallied,\n" .string "let's move on to secondary judging!\p" @@ -1648,75 +1648,75 @@ ContestHall_Text_VotingCompleteLetsAppeal: @ 827B904 .string "Let's see a little enthusiasm!\n" .string "Let's appeal!$" -ContestHall_Text_ThatsItForJudging: @ 827BA15 +ContestHall_Text_ThatsItForJudging: .string "MC: That's it for judging!$" -ContestHall_Text_ThankYouForAppeals: @ 827BA30 +ContestHall_Text_ThankYouForAppeals: .string "Thank you all for a most wonderful\n" .string "display of quality appeals!\p" .string "This concludes all judging!\n" .string "Thank you for your fine efforts!$" -ContestHall_Text_JudgeLooksReady: @ 827BAAC +ContestHall_Text_JudgeLooksReady: .string "Now, all that remains is the pulse-\n" .string "pounding proclamation of the winner.\p" .string "The JUDGE looks ready to make\n" .string "the announcement!$" -ContestHall_Text_WeWillNowDeclareWinner: @ 827BB25 +ContestHall_Text_WeWillNowDeclareWinner: .string "JUDGE: We will now declare the winner!$" -ContestHall_Text_CongratsTrainerXandMon: @ 827BB4C +ContestHall_Text_CongratsTrainerXandMon: .string "MC: Entry No. {STR_VAR_2}!\p" .string "{STR_VAR_3} and {STR_VAR_1},\n" .string "congratulations!$" -ContestHall_Text_CongratsPleaseCompeteAgain: @ 827BB7A +ContestHall_Text_CongratsPleaseCompeteAgain: .string "MC: Congratulations!\n" .string "Please do compete again!$" -ContestHall_Text_AcceptYourPrize: @ 827BBA8 +ContestHall_Text_AcceptYourPrize: .string "MC: Here you are!\n" .string "Please accept your prize!$" -ContestHall_Text_ConferRibbonAsPrize: @ 827BBD4 +ContestHall_Text_ConferRibbonAsPrize: .string "We confer on you this RIBBON\n" .string "as your prize!$" -ContestHall_Text_ReceivedRibbon: @ 827BC00 +ContestHall_Text_ReceivedRibbon: .string "{PLAYER} received a RIBBON.$" -ContestHall_Text_PutRibbonOnMon: @ 827BC16 +ContestHall_Text_PutRibbonOnMon: .string "{PLAYER} put the RIBBON on\n" .string "{STR_VAR_1}.$" -ContestHall_Text_PickUpPrizeAtCounterLater: @ 827BC2F +ContestHall_Text_PickUpPrizeAtCounterLater: .string "Please pick up your prize at\n" .string "the reception counter later.\l" .string "Please do compete again!$" @ Unused -ContestHall_Text_OnlyRegister4Players: @ 827BC82 +ContestHall_Text_OnlyRegister4Players: .string "I only register four players for\n" .string "POKéMON CONTESTS.\p" .string "If three other players link up, all\n" .string "four may enter the same CONTEST.\p" .string "Would you like to take part?$" -LilycoveCity_ContestLobby_Text_ProgressWillBeSaved: @ 827BD17 +LilycoveCity_ContestLobby_Text_ProgressWillBeSaved: .string "Before entering a CONTEST, your\n" .string "progress will be saved.$" -LilycoveCity_ContestLobby_Text_ParticipateAnotherTime: @ 827BD4F +LilycoveCity_ContestLobby_Text_ParticipateAnotherTime: .string "We hope you will participate another\n" .string "time.$" @ Unused -LilycoveCity_ContestLobby_Text_EnterContest2: @ 827BD7A +LilycoveCity_ContestLobby_Text_EnterContest2: .string "Would you like to enter a CONTEST?$" @ Unused -LilycoveCity_ContestLobby_Text_Explain4PlayerContest: @ 827BD9D +LilycoveCity_ContestLobby_Text_Explain4PlayerContest: .string "When four players are ready, connect\n" .string "over a Game Link cable, and register\l" .string "with me, please.\p" @@ -1728,82 +1728,82 @@ LilycoveCity_ContestLobby_Text_Explain4PlayerContest: @ 827BD9D .string "apply.$" @ Unused -LilycoveCity_ContestLobby_Text_EnterWhichContest2: @ 827BE9E +LilycoveCity_ContestLobby_Text_EnterWhichContest2: .string "Which CONTEST would you like to enter?$" @ Unused -LilycoveCity_ContestLobby_Text_EnterWhichPokemon2: @ 827BEC5 +LilycoveCity_ContestLobby_Text_EnterWhichPokemon2: .string "Which POKéMON would you like to enter?$" -LilycoveCity_ContestLobby_Text_Transmitting: @ 827BEEC +LilycoveCity_ContestLobby_Text_Transmitting: .string "Transmitting…$" -LilycoveCity_ContestLobby_Text_TransmissionError: @ 827BEFA +LilycoveCity_ContestLobby_Text_TransmissionError: .string "Transmission error…$" -LilycoveCity_ContestLobby_Text_PlayersChoseDifferentContest: @ 827BF0E +LilycoveCity_ContestLobby_Text_PlayersChoseDifferentContest: .string "You may have chosen a different\n" .string "CONTEST than another player.$" -LilycoveCity_ContestLobby_Text_PlayersMadeDifferentChoice: @ 827BF4B +LilycoveCity_ContestLobby_Text_PlayersMadeDifferentChoice: .string "You may have made a different\n" .string "choice than another player.$" -LilycoveCity_ContestLobby_Text_PleaseWaitBButtonCancel: @ 827BF85 +LilycoveCity_ContestLobby_Text_PleaseWaitBButtonCancel: .string "Please wait.\n" .string "… … B Button: Cancel$" @ Unused -LilycoveCity_ContestLobby_Text_ParticipateAnotherTime2: @ 827BFA7 +LilycoveCity_ContestLobby_Text_ParticipateAnotherTime2: .string "We hope you will participate another\n" .string "time.$" @ Unused -LilycoveCity_ContestLobby_Text_TransmissionErrorTryAgain: @ 827BFD2 +LilycoveCity_ContestLobby_Text_TransmissionErrorTryAgain: .string "Transmission error.\n" .string "Please try again.$" -LilycoveCity_ContestLobby_Text_YourMonIsEntryNumX: @ 827BFF8 +LilycoveCity_ContestLobby_Text_YourMonIsEntryNumX: .string "Your POKéMON will be entered in\n" .string "the CONTEST.\p" .string "Your POKéMON is Entry No. {STR_VAR_2}.$" -LilycoveCity_ContestLobby_Text_ContestBeginShortly: @ 827C043 +LilycoveCity_ContestLobby_Text_ContestBeginShortly: .string "The CONTEST will begin shortly.$" -LilycoveCity_ContestLobby_Text_LinkContestReception: @ 827C063 +LilycoveCity_ContestLobby_Text_LinkContestReception: .string "Welcome! This is the POKéMON CONTEST\n" .string "link reception counter.\p" .string "You may enter CONTESTS together with\n" .string "one or more friends.$" -LilycoveCity_ContestLobby_Text_WhichTopic2: @ 827C0DA +LilycoveCity_ContestLobby_Text_WhichTopic2: .string "Which topic would you like?$" -LilycoveCity_ContestLobby_Text_EnterContest3: @ 827C0F6 +LilycoveCity_ContestLobby_Text_EnterContest3: .string "Would you like to enter a CONTEST?$" -LilycoveCity_ContestLobby_Text_EnterWhichContest3: @ 827C119 +LilycoveCity_ContestLobby_Text_EnterWhichContest3: .string "Which CONTEST would you like to enter?$" -LilycoveCity_ContestLobby_Text_MonInNoCondition2: @ 827C140 +LilycoveCity_ContestLobby_Text_MonInNoCondition2: .string "Your POKéMON appears to be in no\n" .string "condition to take part in a CONTEST…$" -LilycoveCity_ContestLobby_Text_EggCannotTakePart2: @ 827C186 +LilycoveCity_ContestLobby_Text_EggCannotTakePart2: .string "I'm sorry, but an EGG cannot take part\n" .string "in a POKéMON CONTEST.$" -LilycoveCity_ContestLobby_Text_EnterWhichPokemon3: @ 827C1C3 +LilycoveCity_ContestLobby_Text_EnterWhichPokemon3: .string "Which POKéMON would you like to enter?$" -LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader: @ 827C1EA +LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader: .string "Please decide which of you will\n" .string "become the GROUP LEADER.\p" .string "The other players must then choose\n" .string "“JOIN GROUP.”$" -LilycoveCity_ContestLobby_Text_PlayerAt4PCounterUseGMode: @ 827C254 +LilycoveCity_ContestLobby_Text_PlayerAt4PCounterUseGMode: .string "At least one player has entered using\n" .string "the 4-player reception counter.\p" .string "There must be four players connected\n" @@ -1812,7 +1812,7 @@ LilycoveCity_ContestLobby_Text_PlayerAt4PCounterUseGMode: @ 827C254 .string "select G-MODE (GLOBAL MODE),\l" .string "then register to enter again, please.$" -LilycoveCity_ContestLobby_Text_ExplainLinkContest: @ 827C340 +LilycoveCity_ContestLobby_Text_ExplainLinkContest: .string "This is a CONTEST for two to four\n" .string "players linked using a Wireless\l" .string "Adapter or a GBA Game Link cable.\p" @@ -1833,7 +1833,7 @@ LilycoveCity_ContestLobby_Text_ExplainLinkContest: @ 827C340 .string "After that, a CONTEST will start in\n" .string "the usual manner.$" -LilycoveCity_ContestLobby_Text_ExplainEMode: @ 827C5B1 +LilycoveCity_ContestLobby_Text_ExplainEMode: .string "In E-MODE (EMERALD MODE),\n" .string "a LINK CONTEST can be held with\l" .string "two to four players. Each player must\l" @@ -1847,7 +1847,7 @@ LilycoveCity_ContestLobby_Text_ExplainEMode: @ 827C5B1 .string "Please be aware that E-MODE is not\n" .string "available in POKéMON Ruby or Sapphire.$" -LilycoveCity_ContestLobby_Text_ExplainGMode: @ 827C742 +LilycoveCity_ContestLobby_Text_ExplainGMode: .string "G-MODE (GLOBAL MODE) is specifically\n" .string "for four players who are linked using\l" .string "GBA Game Link cables.\p" @@ -1858,50 +1858,50 @@ LilycoveCity_ContestLobby_Text_ExplainGMode: @ 827C742 .string "enter through the 4-player reception\l" .string "counter (POKéMON Ruby or Sapphire).$" -LilycoveCity_ContestLobby_Text_NoWirelessAdapterInGMode: @ 827C879 +LilycoveCity_ContestLobby_Text_NoWirelessAdapterInGMode: .string "I'm terribly sorry.\p" .string "G-MODE does not function\n" .string "with Wireless Adapters.\p" .string "Please select E-MODE or try\n" .string "again using a GBA Game Link cable.$" -LilycoveCity_ContestLobby_Text_WhichContestMode: @ 827C8FD +LilycoveCity_ContestLobby_Text_WhichContestMode: .string "Which CONTEST MODE would you like\n" .string "to enter?$" -ContestHall_Text_GettingStartedWireless: @ 827C929 +ContestHall_Text_GettingStartedWireless: .string "MC: Hello! We're just getting started\n" .string "with a 4-player linked POKéMON\l" .string "{STR_VAR_2}!$" -ContestHall_Text_ParticipantsAsFollows: @ 827C972 +ContestHall_Text_ParticipantsAsFollows: .string "The participating TRAINERS and their\n" .string "POKéMON are as follows:$" -ContestHall_Text_WeveSeenContestants: @ 827C9AF +ContestHall_Text_WeveSeenContestants: .string "MC: We've just seen the four POKéMON\n" .string "contestants.\p" .string "Now it's time for primary judging!$" -ContestHall_Text_AudienceWillVote: @ 827CA04 +ContestHall_Text_AudienceWillVote: .string "The audience will vote on their\n" .string "favorite POKéMON contestants.$" -ContestHall_Text_LetVotingBegin: @ 827CA42 +ContestHall_Text_LetVotingBegin: .string "Without any further ado,\n" .string "let the voting begin!$" -ContestHall_Text_VotingComplete: @ 827CA71 +ContestHall_Text_VotingComplete: .string "Voting is now complete!\p" .string "While the votes are being tallied,\n" .string "let's move on to secondary judging!$" -ContestHall_Text_SecondStageOfJudging: @ 827CAD0 +ContestHall_Text_SecondStageOfJudging: .string "The second stage of judging is\n" .string "the much-anticipated appeal time!\p" .string "May the contestants amaze us with\n" .string "superb appeals of dazzling moves!$" -ContestHall_Text_LetsAppeal: @ 827CB55 +ContestHall_Text_LetsAppeal: .string "Let's see a little enthusiasm!\n" .string "Let's appeal!$" diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index ea8552510575..f5c023147b05 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -1,6 +1,6 @@ .set LOCALID_DAYCARE_LADY, 1 -Route117_EventScript_DaycareMan:: @ 8291C18 +Route117_EventScript_DaycareMan:: lock faceplayer special GetDaycareMonNicknames @@ -15,7 +15,7 @@ Route117_EventScript_DaycareMan:: @ 8291C18 release end -Route117_EventScript_DaycareEggWaiting:: @ 8291C4D +Route117_EventScript_DaycareEggWaiting:: msgbox Route117_Text_DoYouWantEgg, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route117_EventScript_DaycareAcceptEgg @@ -28,7 +28,7 @@ Route117_EventScript_DaycareEggWaiting:: @ 8291C4D release end -Route117_EventScript_DaycareAcceptEgg:: @ 8291C83 +Route117_EventScript_DaycareAcceptEgg:: specialvar VAR_RESULT, CalculatePlayerPartyCount compare VAR_RESULT, PARTY_SIZE goto_if_ne Route117_EventScript_DaycareReceiveEgg @@ -36,7 +36,7 @@ Route117_EventScript_DaycareAcceptEgg:: @ 8291C83 release end -Route117_EventScript_DaycareReceiveEgg:: @ 8291C9D +Route117_EventScript_DaycareReceiveEgg:: message Route117_Text_ReceivedEgg playfanfare MUS_LEVEL_UP waitfanfare @@ -47,17 +47,17 @@ Route117_EventScript_DaycareReceiveEgg:: @ 8291C9D release end -Route117_EventScript_CheckMonReceivedMail:: @ 8291CB7 +Route117_EventScript_CheckMonReceivedMail:: specialvar VAR_RESULT, CheckDaycareMonReceivedMail compare VAR_RESULT, 1 call_if_eq Route117_EventScript_MonReceivedMail return -Route117_EventScript_MonReceivedMail:: @ 8291CC8 +Route117_EventScript_MonReceivedMail:: msgbox Route117_Text_FriendlyWithOtherTrainersMon, MSGBOX_DEFAULT return -Route117_EventScript_CheckOnOneMon:: @ 8291CD1 +Route117_EventScript_CheckOnOneMon:: special GetDaycareMonNicknames msgbox Route117_Text_YourMonIsDoingFine, MSGBOX_DEFAULT setvar VAR_0x8004, 0 @@ -65,7 +65,7 @@ Route117_EventScript_CheckOnOneMon:: @ 8291CD1 release end -Route117_EventScript_CheckOnTwoMons:: @ 8291CE8 +Route117_EventScript_CheckOnTwoMons:: special GetDaycareMonNicknames msgbox Route117_Text_YourMonsAreDoingFine, MSGBOX_DEFAULT special SetDaycareCompatibilityString @@ -79,7 +79,7 @@ Route117_EventScript_CheckOnTwoMons:: @ 8291CE8 release end -Route117_PokemonDayCare_EventScript_DaycareWoman:: @ 8291D11 +Route117_PokemonDayCare_EventScript_DaycareWoman:: lock faceplayer specialvar VAR_RESULT, GetDaycareState @@ -96,7 +96,7 @@ Route117_PokemonDayCare_EventScript_DaycareWoman:: @ 8291D11 release end -Route117_PokemonDayCare_EventScript_GiveMonToRaise:: @ 8291D56 +Route117_PokemonDayCare_EventScript_GiveMonToRaise:: specialvar VAR_RESULT, CountPartyNonEggMons compare VAR_RESULT, 1 goto_if_eq Route117_PokemonDayCare_EventScript_OnlyOneMon @@ -125,49 +125,49 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: @ 8291D56 release end -Route117_PokemonDayCare_EventScript_ComeAgain:: @ 8291DCA +Route117_PokemonDayCare_EventScript_ComeAgain:: msgbox Route117_PokemonDayCare_Text_ComeAgain, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_EventScript_CanRaiseOneMore:: @ 8291DD4 +Route117_PokemonDayCare_EventScript_CanRaiseOneMore:: msgbox Route117_PokemonDayCare_Text_WeCanRaiseOneMore, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route117_PokemonDayCare_EventScript_GiveMonToRaise goto Route117_PokemonDayCare_EventScript_ComeAgain end -Route117_PokemonDayCare_EventScript_OnlyOneMon:: @ 8291DED +Route117_PokemonDayCare_EventScript_OnlyOneMon:: msgbox Route117_PokemonDayCare_Text_YouHaveJustOneMon, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_EventScript_OnlyOneAliveMon:: @ 8291DF7 +Route117_PokemonDayCare_EventScript_OnlyOneAliveMon:: msgbox Route117_PokemonDayCare_Text_WhatWillYouBattleWith, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons:: @ 8291E01 +Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons:: msgbox Route117_PokemonDayCare_Text_YoullBeLeftWithJustOne, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_EventScript_EggWaiting:: @ 8291E0B +Route117_PokemonDayCare_EventScript_EggWaiting:: msgbox Route117_PokemonDayCare_Text_HusbandWasLookingForYou, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels:: @ 8291E15 +Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels:: msgbox Route117_PokemonDayCare_Text_YourMonHasGrownXLevels, MSGBOX_DEFAULT return -Route117_PokemonDayCare_EventScript_DisplayLevelsGained:: @ 8291E1E +Route117_PokemonDayCare_EventScript_DisplayLevelsGained:: specialvar VAR_RESULT, GetNumLevelsGainedFromDaycare compare VAR_RESULT, 0 call_if_ne Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels return -Route117_PokemonDayCare_EventScript_OneMonInDaycare:: @ 8291E2F +Route117_PokemonDayCare_EventScript_OneMonInDaycare:: msgbox Route117_PokemonDayCare_Text_GoodToSeeYou, MSGBOX_DEFAULT setvar VAR_0x8004, 0 call Route117_PokemonDayCare_EventScript_DisplayLevelsGained @@ -180,7 +180,7 @@ Route117_PokemonDayCare_EventScript_OneMonInDaycare:: @ 8291E2F goto Route117_PokemonDayCare_EventScript_ComeAgain end -Route117_PokemonDayCare_EventScript_TryRetrieveMon:: @ 8291E6D +Route117_PokemonDayCare_EventScript_TryRetrieveMon:: specialvar VAR_RESULT, CalculatePlayerPartyCount compare VAR_RESULT, PARTY_SIZE goto_if_eq Route117_PokemonDayCare_EventScript_NoRoom @@ -196,7 +196,7 @@ Route117_PokemonDayCare_EventScript_TryRetrieveMon:: @ 8291E6D goto Route117_PokemonDayCare_EventScript_CostPrompt end -Route117_PokemonDayCare_EventScript_CostPrompt:: @ 8291EAC +Route117_PokemonDayCare_EventScript_CostPrompt:: special GetDaycareCost msgbox Route117_PokemonDayCare_Text_ItWillCostX, MSGBOX_YESNO compare VAR_RESULT, YES @@ -204,7 +204,7 @@ Route117_PokemonDayCare_EventScript_CostPrompt:: @ 8291EAC goto Route117_PokemonDayCare_EventScript_ComeAgain end -Route117_PokemonDayCare_EventScript_CheckEnoughMoney:: @ 8291EC8 +Route117_PokemonDayCare_EventScript_CheckEnoughMoney:: specialvar VAR_RESULT, IsEnoughForCostInVar0x8005 compare VAR_RESULT, 1 goto_if_eq Route117_PokemonDayCare_EventScript_RetrieveMon @@ -212,7 +212,7 @@ Route117_PokemonDayCare_EventScript_CheckEnoughMoney:: @ 8291EC8 release end -Route117_PokemonDayCare_EventScript_RetrieveMon:: @ 8291EE2 +Route117_PokemonDayCare_EventScript_RetrieveMon:: applymovement LOCALID_DAYCARE_LADY, Route117_PokemonDayCare_Movement_RetrieveDaycareMon waitmovement 0 specialvar VAR_RESULT, TakePokemonFromDaycare @@ -229,19 +229,19 @@ Route117_PokemonDayCare_EventScript_RetrieveMon:: @ 8291EE2 goto Route117_PokemonDayCare_EventScript_ComeAgain end -Route117_PokemonDayCare_EventScript_AskRetrieveOtherMon:: @ 8291F24 +Route117_PokemonDayCare_EventScript_AskRetrieveOtherMon:: msgbox Route117_PokemonDayCare_Text_TakeOtherOneBackToo, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route117_PokemonDayCare_EventScript_TryRetrieveMon goto Route117_PokemonDayCare_EventScript_ComeAgain end -Route117_PokemonDayCare_EventScript_NoRoom:: @ 8291F3D +Route117_PokemonDayCare_EventScript_NoRoom:: msgbox Route117_PokemonDayCare_Text_YourTeamIsFull, MSGBOX_DEFAULT release end -Route117_PokemonDayCare_Movement_RetrieveDaycareMon: @ 8291F47 +Route117_PokemonDayCare_Movement_RetrieveDaycareMon: delay_16 delay_16 face_left @@ -264,10 +264,10 @@ Route117_PokemonDayCare_Movement_RetrieveDaycareMon: @ 8291F47 step_end @ Unused. Possibly a commented script, or a typo end added to the above Movement script -Route117_PokemonDayCare_EventScript_UnusedEnd:: @ 8291F5B +Route117_PokemonDayCare_EventScript_UnusedEnd:: end -Route117_PokemonDayCare_EventScript_TwoMonsInDaycare:: @ 8291F5C +Route117_PokemonDayCare_EventScript_TwoMonsInDaycare:: msgbox Route117_PokemonDayCare_Text_GoodToSeeYou, MSGBOX_DEFAULT setvar VAR_0x8004, 0 call Route117_PokemonDayCare_EventScript_DisplayLevelsGained @@ -281,7 +281,7 @@ Route117_PokemonDayCare_EventScript_TwoMonsInDaycare:: @ 8291F5C end @ Unused -Route117_PokemonDayCare_EventScript_UnusedRetrieveMon:: @ 8291F95 +Route117_PokemonDayCare_EventScript_UnusedRetrieveMon:: special ShowDaycareLevelMenu waitstate compare VAR_RESULT, 2 @@ -293,7 +293,7 @@ Route117_PokemonDayCare_EventScript_UnusedRetrieveMon:: @ 8291F95 release end -EventScript_EggHatch:: @ 8291FC0 +EventScript_EggHatch:: lockall msgbox Text_EggHatchHuh, MSGBOX_DEFAULT special EggHatch @@ -301,14 +301,14 @@ EventScript_EggHatch:: @ 8291FC0 releaseall end -Route117_Text_SeeWifeIfYoudLikeMeToRaiseMon: @ 8291FCF +Route117_Text_SeeWifeIfYoudLikeMeToRaiseMon: .string "I'm the DAY-CARE MAN.\p" .string "I help take care of the precious\n" .string "POKéMON of TRAINERS.\p" .string "If you'd like me to raise your POKéMON,\n" .string "have a word with my wife.$" -Route117_Text_DoYouWantEgg: @ 829205D +Route117_Text_DoYouWantEgg: .string "Ah, it's you!\p" .string "We were raising your POKéMON,\n" .string "and my goodness, were we surprised!\p" @@ -317,26 +317,26 @@ Route117_Text_DoYouWantEgg: @ 829205D .string "but your POKéMON had it.\p" .string "You do want it, yes?$" -Route117_Text_YourMonIsDoingFine: @ 8292114 +Route117_Text_YourMonIsDoingFine: .string "Ah, it's you! Good to see you.\n" .string "Your {STR_VAR_1}'s doing fine.$" -Route117_Text_IllKeepIt: @ 8292149 +Route117_Text_IllKeepIt: .string "Well then, I'll keep it.\n" .string "Thanks!$" -Route117_Text_YouHaveNoRoomForIt: @ 829216A +Route117_Text_YouHaveNoRoomForIt: .string "You have no room for it…\n" .string "Come back when you've made room.$" -Route117_Text_ReceivedEgg: @ 82921A4 +Route117_Text_ReceivedEgg: .string "{PLAYER} received the EGG from\n" .string "the DAY-CARE MAN.$" -Route117_Text_TakeGoodCareOfIt: @ 82921CF +Route117_Text_TakeGoodCareOfIt: .string "Take good care of it.$" -Route117_Text_FriendlyWithOtherTrainersMon: @ 82921E5 +Route117_Text_FriendlyWithOtherTrainersMon: .string "By the way, about your {STR_VAR_1},\n" .string "it seemed to be friendly with\l" .string "{STR_VAR_2}'s {STR_VAR_3}.\p" @@ -344,99 +344,99 @@ Route117_Text_FriendlyWithOtherTrainersMon: @ 82921E5 .string "a piece of MAIL.$" @ Unused -Route117_Text_SeeWifeIfYouWantToPickUpMon: @ 829225A +Route117_Text_SeeWifeIfYouWantToPickUpMon: .string "If you want to pick up your POKéMON,\n" .string "have a word with my wife.$" -Route117_Text_YourMonsAreDoingFine: @ 8292299 +Route117_Text_YourMonsAreDoingFine: .string "Ah, it's you! Your {STR_VAR_1} and\n" .string "{STR_VAR_2} are doing fine.$" -Route117_Text_IWillKeepDoYouWantIt: @ 82922C6 +Route117_Text_IWillKeepDoYouWantIt: .string "I really will keep it.\n" .string "You do want this, yes?$" -Route117_PokemonDayCare_Text_WouldYouLikeUsToRaiseAMon: @ 82922F4 +Route117_PokemonDayCare_Text_WouldYouLikeUsToRaiseAMon: .string "I'm the DAY-CARE LADY.\p" .string "We can raise POKéMON for you.\p" .string "Would you like us to raise one?$" -Route117_PokemonDayCare_Text_WhichMonShouldWeRaise: @ 8292349 +Route117_PokemonDayCare_Text_WhichMonShouldWeRaise: .string "Which POKéMON should we raise for\n" .string "you?$" -Route117_PokemonDayCare_Text_WellRaiseYourMon: @ 8292370 +Route117_PokemonDayCare_Text_WellRaiseYourMon: .string "Fine, we'll raise your {STR_VAR_1}\n" .string "for a while.\p" .string "Come back for it later.$" -Route117_PokemonDayCare_Text_WeCanRaiseOneMore: @ 82923AF +Route117_PokemonDayCare_Text_WeCanRaiseOneMore: .string "We can raise two of your POKéMON.\n" .string "Would you like us to raise one more?$" -Route117_PokemonDayCare_Text_HusbandWasLookingForYou: @ 82923F6 +Route117_PokemonDayCare_Text_HusbandWasLookingForYou: .string "My husband was looking for you.$" -Route117_PokemonDayCare_Text_FineThenComeAgain: @ 8292416 +Route117_PokemonDayCare_Text_FineThenComeAgain: .string "Oh, fine, then.\n" .string "Come again.$" -Route117_PokemonDayCare_Text_NotEnoughMoney: @ 8292432 +Route117_PokemonDayCare_Text_NotEnoughMoney: .string "You don't have enough money…$" -Route117_PokemonDayCare_Text_TakeOtherOneBackToo: @ 829244F +Route117_PokemonDayCare_Text_TakeOtherOneBackToo: .string "Will you take back the other one,\n" .string "too?$" -Route117_PokemonDayCare_Text_ComeAgain: @ 8292476 +Route117_PokemonDayCare_Text_ComeAgain: .string "Fine.\n" .string "Come again.$" -Route117_PokemonDayCare_Text_GoodToSeeYou: @ 8292488 +Route117_PokemonDayCare_Text_GoodToSeeYou: .string "Ah, it's you! Good to see you.\n" .string "Your POKéMON can only be doing good!$" -Route117_PokemonDayCare_Text_YourMonHasGrownXLevels: @ 82924CC +Route117_PokemonDayCare_Text_YourMonHasGrownXLevels: .string "By level, your {STR_VAR_1} has\n" .string "grown by {STR_VAR_2}.$" -Route117_PokemonDayCare_Text_YourTeamIsFull: @ 82924EF +Route117_PokemonDayCare_Text_YourTeamIsFull: .string "Your POKéMON team is full.\n" .string "Make room, then come see me.$" @ Unused -Route117_PokemonDayCare_Text_TakeBackWhichMon: @ 8292527 +Route117_PokemonDayCare_Text_TakeBackWhichMon: .string "Which POKéMON will you take back?$" -Route117_PokemonDayCare_Text_ItWillCostX: @ 8292549 +Route117_PokemonDayCare_Text_ItWillCostX: .string "If you want your {STR_VAR_1} back,\n" .string "it will cost ¥{STR_VAR_2}.$" -Route117_PokemonDayCare_Text_HeresYourMon: @ 8292575 +Route117_PokemonDayCare_Text_HeresYourMon: .string "Perfect!\n" .string "Here's your POKéMON.$" -Route117_PokemonDayCare_Text_TookBackMon: @ 8292593 +Route117_PokemonDayCare_Text_TookBackMon: .string "{PLAYER} took back {STR_VAR_1} from\n" .string "the DAY-CARE LADY.$" -Route117_PokemonDayCare_Text_YouHaveJustOneMon: @ 82925BB +Route117_PokemonDayCare_Text_YouHaveJustOneMon: .string "Oh? But you have just one\n" .string "POKéMON.\p" .string "Come back another time.$" -Route117_PokemonDayCare_Text_TakeYourMonBack: @ 82925F6 +Route117_PokemonDayCare_Text_TakeYourMonBack: .string "Will you take your POKéMON back?$" -Route117_PokemonDayCare_Text_WhatWillYouBattleWith: @ 8292617 +Route117_PokemonDayCare_Text_WhatWillYouBattleWith: .string "If you leave me that POKéMON,\n" .string "what will you battle with?\p" .string "Come back another time.$" -Text_EggHatchHuh: @ 8292668 +Text_EggHatchHuh: .string "Huh?$" -Route117_PokemonDayCare_Text_YoullBeLeftWithJustOne: @ 829266D +Route117_PokemonDayCare_Text_YoullBeLeftWithJustOne: .string "Huh?\n" .string "Now, now.\p" .string "If you leave that POKéMON with\n" diff --git a/data/scripts/elite_four.inc b/data/scripts/elite_four.inc index f4eb6393b847..0ae319061ab9 100644 --- a/data/scripts/elite_four.inc +++ b/data/scripts/elite_four.inc @@ -1,4 +1,4 @@ -PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles:: @ 82723F8 +PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay32 waitmovement 0 playse SE_DOOR @@ -17,7 +17,7 @@ PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles:: @ 82723F8 special DrawWholeMapView return -PokemonLeague_EliteFour_EventScript_WalkInCloseDoor:: @ 8272475 +PokemonLeague_EliteFour_EventScript_WalkInCloseDoor:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp6 waitmovement 0 playse SE_TRUCK_DOOR @@ -31,7 +31,7 @@ PokemonLeague_EliteFour_EventScript_WalkInCloseDoor:: @ 8272475 return @ Essentially unused, only necessary when re-entering an Elite Four room after defeating the member, which isnt normally possible -PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom:: @ 82724BC +PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom:: setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, 0 setmetatile 6, 2, METATILE_EliteFour_OpenDoor_Opening, 0 setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 @@ -52,7 +52,7 @@ PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom:: @ 82724BC setmetatile 12, 2, METATILE_EliteFour_LeftSpotlightOff, 1 return -PokemonLeague_EliteFour_EventScript_CloseDoor:: @ 827255F +PokemonLeague_EliteFour_EventScript_CloseDoor:: setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 diff --git a/data/scripts/field_move_scripts.inc b/data/scripts/field_move_scripts.inc index 2d689348b05c..b81ca21dd1ce 100644 --- a/data/scripts/field_move_scripts.inc +++ b/data/scripts/field_move_scripts.inc @@ -1,5 +1,5 @@ @ Interact with cuttable tree -EventScript_CutTree:: @ 82906BB +EventScript_CutTree:: lockall goto_if_unset FLAG_BADGE01_GET, EventScript_CheckTreeCantCut checkpartymove MOVE_CUT @@ -19,48 +19,48 @@ EventScript_CutTree:: @ 82906BB end @ Use cut from party menu -EventScript_UseCut:: @ 8290705 +EventScript_UseCut:: lockall dofieldeffect FLDEFF_USE_CUT_ON_TREE waitstate goto EventScript_CutTreeDown end -EventScript_CutTreeDown:: @ 8290710 +EventScript_CutTreeDown:: applymovement VAR_LAST_TALKED, Movement_CutTreeDown waitmovement 0 removeobject VAR_LAST_TALKED releaseall end -Movement_CutTreeDown: @ 829071F +Movement_CutTreeDown: cut_tree step_end -EventScript_CheckTreeCantCut:: @ 8290721 +EventScript_CheckTreeCantCut:: msgbox Text_CantCut, MSGBOX_DEFAULT releaseall end -EventScript_CancelCut:: @ 829072B +EventScript_CancelCut:: closemessage releaseall end -Text_WantToCut: @ 829072E +Text_WantToCut: .string "This tree looks like it can be\n" .string "CUT down!\p" .string "Would you like to CUT it?$" -Text_MonUsedFieldMove: @ 8290771 +Text_MonUsedFieldMove: .string "{STR_VAR_1} used {STR_VAR_2}!$" -Text_CantCut: @ 829077D +Text_CantCut: .string "This tree looks like it can be\n" .string "CUT down!$" @ Interact with smashable rock -EventScript_RockSmash:: @ 82907A6 +EventScript_RockSmash:: lockall goto_if_unset FLAG_BADGE03_GET, EventScript_CantSmashRock checkpartymove MOVE_ROCK_SMASH @@ -80,14 +80,14 @@ EventScript_RockSmash:: @ 82907A6 end @ Use rock smash from party menu -EventScript_UseRockSmash:: @ 82907F0 +EventScript_UseRockSmash:: lockall dofieldeffect FLDEFF_USE_ROCK_SMASH waitstate goto EventScript_SmashRock end -EventScript_SmashRock:: @ 82907FB +EventScript_SmashRock:: applymovement VAR_LAST_TALKED, Movement_SmashRock waitmovement 0 removeobject VAR_LAST_TALKED @@ -101,33 +101,33 @@ EventScript_SmashRock:: @ 82907FB releaseall end -EventScript_EndSmash:: @ 8290829 +EventScript_EndSmash:: releaseall end -Movement_SmashRock: @ 829082B +Movement_SmashRock: rock_smash_break step_end -EventScript_CantSmashRock:: @ 829082D +EventScript_CantSmashRock:: msgbox Text_CantSmash, MSGBOX_DEFAULT releaseall end -EventScript_CancelSmash:: @ 8290837 +EventScript_CancelSmash:: closemessage releaseall end -Text_WantToSmash: @ 829083A +Text_WantToSmash: .string "This rock appears to be breakable.\n" .string "Would you like to use ROCK SMASH?$" -Text_CantSmash: @ 829087F +Text_CantSmash: .string "It's a rugged rock, but a POKéMON\n" .string "may be able to smash it.$" -EventScript_StrengthBoulder:: @ 82908BA +EventScript_StrengthBoulder:: lockall goto_if_unset FLAG_BADGE04_GET, EventScript_CantStrength goto_if_set FLAG_SYS_USE_STRENGTH, EventScript_CheckActivatedBoulder @@ -144,53 +144,53 @@ EventScript_StrengthBoulder:: @ 82908BA goto EventScript_ActivateStrength end -EventScript_UseStrength:: @ 82908FD +EventScript_UseStrength:: lockall dofieldeffect FLDEFF_USE_STRENGTH waitstate goto EventScript_ActivateStrength end -EventScript_ActivateStrength:: @ 8290908 +EventScript_ActivateStrength:: setflag FLAG_SYS_USE_STRENGTH msgbox Text_MonUsedStrength, MSGBOX_DEFAULT releaseall end -EventScript_CantStrength:: @ 8290915 +EventScript_CantStrength:: msgbox Text_CantStrength, MSGBOX_DEFAULT releaseall end -EventScript_CheckActivatedBoulder:: @ 829091F +EventScript_CheckActivatedBoulder:: msgbox Text_StrengthActivated, MSGBOX_DEFAULT releaseall end -EventScript_CancelStrength:: @ 8290929 +EventScript_CancelStrength:: closemessage releaseall end -Text_WantToStrength: @ 829092C +Text_WantToStrength: .string "It's a big boulder, but a POKéMON\n" .string "may be able to push it aside.\p" .string "Would you like to use STRENGTH?$" -Text_MonUsedStrength: @ 829098C +Text_MonUsedStrength: .string "{STR_VAR_1} used STRENGTH!\p" .string "{STR_VAR_1}'s STRENGTH made it\n" .string "possible to move boulders around!$" -Text_CantStrength: @ 82909D6 +Text_CantStrength: .string "It's a big boulder, but a POKéMON\n" .string "may be able to push it aside.$" -Text_StrengthActivated: @ 8290A16 +Text_StrengthActivated: .string "STRENGTH made it possible to move\n" .string "boulders around.$" -EventScript_UseWaterfall:: @ 8290A49 +EventScript_UseWaterfall:: lockall checkpartymove MOVE_WATERFALL compare VAR_RESULT, PARTY_SIZE @@ -204,28 +204,28 @@ EventScript_UseWaterfall:: @ 8290A49 dofieldeffect FLDEFF_USE_WATERFALL goto EventScript_EndWaterfall -EventScript_CannotUseWaterfall:: @ 8290A83 +EventScript_CannotUseWaterfall:: lockall -EventScript_CantWaterfall:: @ 8290A84 +EventScript_CantWaterfall:: msgbox Text_CantWaterfall, MSGBOX_DEFAULT -EventScript_EndWaterfall:: @ 8290A8C +EventScript_EndWaterfall:: releaseall end -Text_CantWaterfall: @ 8290A8E +Text_CantWaterfall: .string "A wall of water is crashing down with\n" .string "a mighty roar.$" -Text_WantToWaterfall: @ 8290AC3 +Text_WantToWaterfall: .string "It's a large waterfall.\n" .string "Would you like to use WATERFALL?$" -Text_MonUsedWaterfall: @ 8290AFC +Text_MonUsedWaterfall: .string "{STR_VAR_1} used WATERFALL.$" -EventScript_UseDive:: @ 8290B0F +EventScript_UseDive:: lockall checkpartymove MOVE_DIVE compare VAR_RESULT, PARTY_SIZE @@ -241,16 +241,16 @@ EventScript_UseDive:: @ 8290B0F goto EventScript_EndDive end -EventScript_CantDive:: @ 8290B4E +EventScript_CantDive:: msgbox Text_CantDive, MSGBOX_DEFAULT releaseall end -EventScript_EndDive:: @ 8290B58 +EventScript_EndDive:: releaseall end -EventScript_UseDiveUnderwater:: @ 8290B5A +EventScript_UseDiveUnderwater:: lockall checkpartymove MOVE_DIVE compare VAR_RESULT, PARTY_SIZE @@ -266,38 +266,38 @@ EventScript_UseDiveUnderwater:: @ 8290B5A goto EventScript_EndSurface end -EventScript_CantSurface:: @ 8290B99 +EventScript_CantSurface:: lockall msgbox Text_CantSurface, MSGBOX_DEFAULT goto EventScript_EndSurface end -EventScript_EndSurface:: @ 8290BA8 +EventScript_EndSurface:: releaseall end -Text_CantDive: @ 8290BAA +Text_CantDive: .string "The sea is deep here. A POKéMON\n" .string "may be able to go underwater.$" -Text_WantToDive: @ 8290BE8 +Text_WantToDive: .string "The sea is deep here.\n" .string "Would you like to use DIVE?$" -Text_MonUsedDive: @ 8290C1A +Text_MonUsedDive: .string "{STR_VAR_1} used DIVE.$" -Text_CantSurface: @ 8290C28 +Text_CantSurface: .string "Light is filtering down from above.\n" .string "A POKéMON may be able to surface.$" -Text_WantToSurface: @ 8290C6E +Text_WantToSurface: .string "Light is filtering down from above.\n" .string "Would you like to use DIVE?$" -EventScript_FailSweetScent:: @ 8290CAE +EventScript_FailSweetScent:: msgbox Text_FailSweetScent, MSGBOX_SIGN end -Text_FailSweetScent: @ 8290CB7 +Text_FailSweetScent: .string "Looks like there's nothing here…$" diff --git a/data/scripts/field_poison.inc b/data/scripts/field_poison.inc index 3ce36b3843b1..a4f9b90b6b46 100644 --- a/data/scripts/field_poison.inc +++ b/data/scripts/field_poison.inc @@ -1,4 +1,4 @@ -EventScript_FieldPoison:: @ 82736BC +EventScript_FieldPoison:: lockall special TryFieldPoisonWhiteOut waitstate @@ -9,7 +9,7 @@ EventScript_FieldPoison:: @ 82736BC releaseall end -EventScript_FieldWhiteOut:: @ 82736D9 +EventScript_FieldWhiteOut:: message gText_PlayerWhitedOut waitmessage waitbuttonpress @@ -21,11 +21,11 @@ EventScript_FieldWhiteOut:: @ 82736D9 waitstate end -EventScript_SetRespawnLavaridgePkmnCenter:: @ 82736F4 +EventScript_SetRespawnLavaridgePkmnCenter:: setrespawn HEAL_LOCATION_LAVARIDGE_TOWN return -EventScript_FrontierFieldWhiteOut:: @ 82736F8 +EventScript_FrontierFieldWhiteOut:: message gText_PlayerWhitedOut waitmessage waitbuttonpress diff --git a/data/scripts/flash.inc b/data/scripts/flash.inc index bb4ae84eb5d9..a69975a16514 100644 --- a/data/scripts/flash.inc +++ b/data/scripts/flash.inc @@ -1,4 +1,4 @@ -EventScript_UseFlash:: @ 82926F8 +EventScript_UseFlash:: animateflash 1 setflashradius 1 end diff --git a/data/scripts/gabby_and_ty.inc b/data/scripts/gabby_and_ty.inc index 60854a8010b2..baee6c96fd74 100644 --- a/data/scripts/gabby_and_ty.inc +++ b/data/scripts/gabby_and_ty.inc @@ -1,7 +1,7 @@ @ 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 -GabbyAndTy_EventScript_UpdateLocation:: @ 828CCC7 +GabbyAndTy_EventScript_UpdateLocation:: cleartrainerflag TRAINER_GABBY_AND_TY_6 specialvar VAR_RESULT, GabbyAndTyGetBattleNum switch VAR_RESULT @@ -16,187 +16,187 @@ GabbyAndTy_EventScript_UpdateLocation:: @ 828CCC7 case 8, GabbyAndTy_EventScript_MoveForBattle9 end -GabbyAndTy_EventScript_MoveForBattle1:: @ 828CD38 +GabbyAndTy_EventScript_MoveForBattle1:: call GabbyAndTy_EventScript_ShowAtRoute111_1 return -GabbyAndTy_EventScript_MoveForBattle2:: @ 828CD3E +GabbyAndTy_EventScript_MoveForBattle2:: call GabbyAndTy_EventScript_ShowAtRoute118_1 call GabbyAndTy_EventScript_HideAtRoute111_1 return -GabbyAndTy_EventScript_MoveForBattle3:: @ 828CD49 +GabbyAndTy_EventScript_MoveForBattle3:: call GabbyAndTy_EventScript_ShowAtRoute120_1 call GabbyAndTy_EventScript_HideAtRoute118_1 return -GabbyAndTy_EventScript_MoveForBattle4:: @ 828CD54 +GabbyAndTy_EventScript_MoveForBattle4:: call GabbyAndTy_EventScript_ShowAtRoute111_3 call GabbyAndTy_EventScript_HideAtRoute120_1 return -GabbyAndTy_EventScript_MoveForBattle5:: @ 828CD5F +GabbyAndTy_EventScript_MoveForBattle5:: call GabbyAndTy_EventScript_ShowAtRoute118_2 call GabbyAndTy_EventScript_HideAtRoute111_3 return -GabbyAndTy_EventScript_MoveForBattle6:: @ 828CD6A +GabbyAndTy_EventScript_MoveForBattle6:: call GabbyAndTy_EventScript_ShowAtRoute120_2 call GabbyAndTy_EventScript_HideAtRoute118_2 return -GabbyAndTy_EventScript_MoveForBattle7:: @ 828CD75 +GabbyAndTy_EventScript_MoveForBattle7:: call GabbyAndTy_EventScript_ShowAtRoute111_2 call GabbyAndTy_EventScript_HideAtRoute120_2 return -GabbyAndTy_EventScript_MoveForBattle8:: @ 828CD80 +GabbyAndTy_EventScript_MoveForBattle8:: call GabbyAndTy_EventScript_ShowAtRoute118_3 call GabbyAndTy_EventScript_HideAtRoute111_2 return -GabbyAndTy_EventScript_MoveForBattle9:: @ 828CD8B +GabbyAndTy_EventScript_MoveForBattle9:: call GabbyAndTy_EventScript_ShowAtRoute120_2 call GabbyAndTy_EventScript_HideAtRoute118_3 return -GabbyAndTy_EventScript_HideAtRoute111_1:: @ 828CD96 +GabbyAndTy_EventScript_HideAtRoute111_1:: setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_ShowAtRoute111_1:: @ 828CD9A +GabbyAndTy_EventScript_ShowAtRoute111_1:: clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_HideAtRoute118_1:: @ 828CD9E +GabbyAndTy_EventScript_HideAtRoute118_1:: setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_ShowAtRoute118_1:: @ 828CDA2 +GabbyAndTy_EventScript_ShowAtRoute118_1:: clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_HideAtRoute120_1:: @ 828CDA6 +GabbyAndTy_EventScript_HideAtRoute120_1:: setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_ShowAtRoute120_1:: @ 828CDAA +GabbyAndTy_EventScript_ShowAtRoute120_1:: clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 return -GabbyAndTy_EventScript_HideAtRoute111_3:: @ 828CDAE +GabbyAndTy_EventScript_HideAtRoute111_3:: setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 return -GabbyAndTy_EventScript_ShowAtRoute111_3:: @ 828CDB2 +GabbyAndTy_EventScript_ShowAtRoute111_3:: clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 return -GabbyAndTy_EventScript_HideAtRoute118_2:: @ 828CDB6 +GabbyAndTy_EventScript_HideAtRoute118_2:: setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_ShowAtRoute118_2:: @ 828CDBA +GabbyAndTy_EventScript_ShowAtRoute118_2:: clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_HideAtRoute120_2:: @ 828CDBE +GabbyAndTy_EventScript_HideAtRoute120_2:: setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_ShowAtRoute120_2:: @ 828CDC2 +GabbyAndTy_EventScript_ShowAtRoute120_2:: clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_HideAtRoute111_2:: @ 828CDC6 +GabbyAndTy_EventScript_HideAtRoute111_2:: setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_ShowAtRoute111_2:: @ 828CDCA +GabbyAndTy_EventScript_ShowAtRoute111_2:: clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 return -GabbyAndTy_EventScript_HideAtRoute118_3:: @ 828CDCE +GabbyAndTy_EventScript_HideAtRoute118_3:: setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 return -GabbyAndTy_EventScript_ShowAtRoute118_3:: @ 828CDD2 +GabbyAndTy_EventScript_ShowAtRoute118_3:: clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 return -GabbyAndTy_EventScript_GabbyBattle1:: @ 828CDD6 +GabbyAndTy_EventScript_GabbyBattle1:: trainerbattle_double TRAINER_GABBY_AND_TY_1, GabbyAndTy_Text_GabbyPreFirstBattle, GabbyAndTy_Text_GabbyDefeatFirstTime, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_FirstInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle1:: @ 828CDF6 +GabbyAndTy_EventScript_TyBattle1:: trainerbattle_double TRAINER_GABBY_AND_TY_1, GabbyAndTy_Text_TyPreFirstBattle, GabbyAndTy_Text_TyDefeatFirstTime, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_FirstInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_GabbyBattle2:: @ 828CE16 +GabbyAndTy_EventScript_GabbyBattle2:: trainerbattle_double TRAINER_GABBY_AND_TY_2, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle2:: @ 828CE36 +GabbyAndTy_EventScript_TyBattle2:: trainerbattle_double TRAINER_GABBY_AND_TY_2, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_GabbyBattle3:: @ 828CE56 +GabbyAndTy_EventScript_GabbyBattle3:: trainerbattle_double TRAINER_GABBY_AND_TY_3, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle3:: @ 828CE76 +GabbyAndTy_EventScript_TyBattle3:: trainerbattle_double TRAINER_GABBY_AND_TY_3, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_GabbyBattle4:: @ 828CE96 +GabbyAndTy_EventScript_GabbyBattle4:: trainerbattle_double TRAINER_GABBY_AND_TY_4, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle4:: @ 828CEB6 +GabbyAndTy_EventScript_TyBattle4:: trainerbattle_double TRAINER_GABBY_AND_TY_4, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_GabbyBattle5:: @ 828CED6 +GabbyAndTy_EventScript_GabbyBattle5:: trainerbattle_double TRAINER_GABBY_AND_TY_5, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle5:: @ 828CEF6 +GabbyAndTy_EventScript_TyBattle5:: trainerbattle_double TRAINER_GABBY_AND_TY_5, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_GabbyBattle6:: @ 828CF16 +GabbyAndTy_EventScript_GabbyBattle6:: trainerbattle_double TRAINER_GABBY_AND_TY_6, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_TyBattle6:: @ 828CF36 +GabbyAndTy_EventScript_TyBattle6:: trainerbattle_double TRAINER_GABBY_AND_TY_6, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT release end -GabbyAndTy_EventScript_FirstInterview:: @ 828CF56 +GabbyAndTy_EventScript_FirstInterview:: special GabbyAndTyBeforeInterview special GetGabbyAndTyLocalIds compare VAR_FACING, DIR_NORTH @@ -210,24 +210,24 @@ GabbyAndTy_EventScript_FirstInterview:: @ 828CF56 goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_FacePlayerNorth:: @ 828CF94 +GabbyAndTy_EventScript_FacePlayerNorth:: applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceDown waitmovement 0 return -GabbyAndTy_EventScript_FacePlayerSouth:: @ 828CF9F +GabbyAndTy_EventScript_FacePlayerSouth:: applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceUp applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestUp waitmovement 0 return -GabbyAndTy_EventScript_FacePlayerEast:: @ 828CFB1 +GabbyAndTy_EventScript_FacePlayerEast:: applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceLeft applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -GabbyAndTy_EventScript_RequestInterview:: @ 828CFC3 +GabbyAndTy_EventScript_RequestInterview:: special GabbyAndTyBeforeInterview special GetGabbyAndTyLocalIds compare VAR_FACING, DIR_NORTH @@ -250,49 +250,49 @@ GabbyAndTy_EventScript_RequestInterview:: @ 828CFC3 case 4, GabbyAndTy_EventScript_RequestInterviewLostAMon end -GabbyAndTy_Movement_WalkInPlaceDown: @ 828D04D +GabbyAndTy_Movement_WalkInPlaceDown: walk_in_place_down step_end -GabbyAndTy_Movement_WalkInPlaceUp: @ 828D04F +GabbyAndTy_Movement_WalkInPlaceUp: walk_in_place_up step_end -GabbyAndTy_Movement_WalkInPlaceLeft: @ 828D051 +GabbyAndTy_Movement_WalkInPlaceLeft: walk_in_place_left step_end -GabbyAndTy_EventScript_DidntInterviewLastTime:: @ 828D053 +GabbyAndTy_EventScript_DidntInterviewLastTime:: msgbox GabbyAndTy_Text_GiveUsAnInterviewThisTime, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_RequestInterviewNoTrivia:: @ 828D061 +GabbyAndTy_EventScript_RequestInterviewNoTrivia:: msgbox GabbyAndTy_Text_InterviewAgain, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_RequestInterviewShortBattle:: @ 828D06F +GabbyAndTy_EventScript_RequestInterviewShortBattle:: msgbox GabbyAndTy_Text_YouStompedUsInterviewAgain, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_RequestInterviewThrewBall:: @ 828D07D +GabbyAndTy_EventScript_RequestInterviewThrewBall:: msgbox GabbyAndTy_Text_YouThrewABallAtUsInterviewAgain, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_RequestInterviewUsedItems:: @ 828D08B +GabbyAndTy_EventScript_RequestInterviewUsedItems:: msgbox GabbyAndTy_Text_CleverItemSkillsInterviewAgain, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_RequestInterviewLostAMon:: @ 828D099 +GabbyAndTy_EventScript_RequestInterviewLostAMon:: msgbox GabbyAndTy_Text_WeLookedRespectableInterviewAgain, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview end -GabbyAndTy_EventScript_Interview:: @ 828D0A7 +GabbyAndTy_EventScript_Interview:: compare VAR_RESULT, NO goto_if_eq GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut msgbox GabbyAndTy_Text_DescribeYourFeelings, MSGBOX_DEFAULT @@ -308,13 +308,13 @@ GabbyAndTy_EventScript_Interview:: @ 828D0A7 release end -GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut:: @ 828D0E1 +GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut:: msgbox GabbyAndTy_Text_DontGiveUpKeepingEyeOut, MSGBOX_DEFAULT setflag FLAG_TEMP_1 release end -GabbyAndTy_EventScript_KeepingAnEyeOutForYou:: @ 828D0EE +GabbyAndTy_EventScript_KeepingAnEyeOutForYou:: msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT release end diff --git a/data/scripts/hall_of_fame.inc b/data/scripts/hall_of_fame.inc index 021784f819d5..9b730de317fd 100644 --- a/data/scripts/hall_of_fame.inc +++ b/data/scripts/hall_of_fame.inc @@ -1,4 +1,4 @@ -EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags:: @ 82717C1 +EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags:: special SetChampionSaveWarp setflag FLAG_IS_CHAMPION call EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries @@ -26,7 +26,7 @@ EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags:: @ 82717C1 call_if_eq EverGrandeCity_HallOfFame_EventScript_ReadyDexUpgradeEvent return -EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries:: @ 8271829 +EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries:: clearflag FLAG_DEFEATED_MEW clearflag FLAG_DEFEATED_LATIAS_OR_LATIOS clearflag FLAG_DEFEATED_DEOXYS @@ -34,20 +34,20 @@ EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries:: @ 8271829 clearflag FLAG_DEFEATED_HO_OH return -EverGrandeCity_HallOfFame_EventScript_SetDesertUnderpassCommentReady:: @ 8271839 +EverGrandeCity_HallOfFame_EventScript_SetDesertUnderpassCommentReady:: setvar VAR_FOSSIL_MANIAC_STATE, 1 return -EverGrandeCity_HallOfFame_EventScript_ShowStevensHouseBeldum:: @ 827183F +EverGrandeCity_HallOfFame_EventScript_ShowStevensHouseBeldum:: clearflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL return -EverGrandeCity_HallOfFame_EventScript_ReadyReceiveSSTicketEvent:: @ 8271843 +EverGrandeCity_HallOfFame_EventScript_ReadyReceiveSSTicketEvent:: setvar VAR_LITTLEROOT_HOUSES_STATE_MAY, 3 setvar VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 3 clearflag FLAG_HIDE_PLAYERS_HOUSE_DAD return -EverGrandeCity_HallOfFame_EventScript_ReadyDexUpgradeEvent:: @ 8271851 +EverGrandeCity_HallOfFame_EventScript_ReadyDexUpgradeEvent:: setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1 return diff --git a/data/scripts/interview.inc b/data/scripts/interview.inc index 2d1c081967d8..90fceb9d187d 100644 --- a/data/scripts/interview.inc +++ b/data/scripts/interview.inc @@ -1,11 +1,11 @@ -Interview_EventScript_EndInterview:: @ 828C7E9 +Interview_EventScript_EndInterview:: special InterviewAfter incrementgamestat GAME_STAT_GOT_INTERVIEWED release end @ Shares reporter object with TVSHOW_PKMN_FAN_CLUB_OPINIONS -SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname:: @ 828C7F0 +SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname:: setvar VAR_0x8005, TVSHOW_FAN_CLUB_LETTER special InterviewBefore compare VAR_RESULT, TRUE @@ -18,7 +18,7 @@ SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname:: @ 828C7F0 goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 end -SlateportCity_PokemonFanClub_EventScript_AcceptInterview2:: @ 828C827 +SlateportCity_PokemonFanClub_EventScript_AcceptInterview2:: msgbox SlateportCity_PokemonFanClub_Text_TellMeAnythingAboutYourMon, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_INTERVIEW copyvar VAR_0x8005, VAR_0x8009 @@ -32,23 +32,23 @@ SlateportCity_PokemonFanClub_EventScript_AcceptInterview2:: @ 828C827 goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 end -SlateportCity_PokemonFanClub_EventScript_DeclineInterview2:: @ 828C85C +SlateportCity_PokemonFanClub_EventScript_DeclineInterview2:: msgbox SlateportCity_PokemonFanClub_Text_HereIfYouGetUrgeToTellMe, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_SubmitResponse2:: @ 828C866 +SlateportCity_PokemonFanClub_EventScript_SubmitResponse2:: msgbox SlateportCity_PokemonFanClub_Text_ThatsAllForInterview2, MSGBOX_DEFAULT setvar VAR_0x8005, TVSHOW_FAN_CLUB_LETTER goto Interview_EventScript_EndInterview end -SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed2:: @ 828C879 +SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed2:: msgbox SlateportCity_PokemonFanClub_Text_EnjoyDoingInterviews, MSGBOX_DEFAULT release end -SlateportCity_OceanicMuseum_1F_EventScript_Reporter:: @ 828C883 +SlateportCity_OceanicMuseum_1F_EventScript_Reporter:: lock faceplayer setvar VAR_0x8005, TVSHOW_RECENT_HAPPENINGS @@ -65,7 +65,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_Reporter:: @ 828C883 goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end -SlateportCity_OceanicMuseum_1F_EventScript_RequestInterviewShort:: @ 828C8C8 +SlateportCity_OceanicMuseum_1F_EventScript_RequestInterviewShort:: msgbox SlateportCity_OceanicMuseum_1F_Text_InterviewRequestShort, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview @@ -73,7 +73,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_RequestInterviewShort:: @ 828C8C8 goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end -SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview:: @ 828C8E7 +SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview:: msgbox SlateportCity_OceanicMuseum_1F_Text_TellMeExperienceInvolvingPokemon, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_INTERVIEW copyvar VAR_0x8005, VAR_0x8009 @@ -87,23 +87,23 @@ SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview:: @ 828C8E7 goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end -SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview:: @ 828C91C +SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview:: msgbox SlateportCity_OceanicMuseum_1F_Text_LetMeKnowIfYouHaveStory, MSGBOX_DEFAULT release end -SlateportCity_OceanicMuseum_1F_EventScript_SubmitResponse:: @ 828C926 +SlateportCity_OceanicMuseum_1F_EventScript_SubmitResponse:: msgbox SlateportCity_OceanicMuseum_1F_Text_ThatsAllForInterview, MSGBOX_DEFAULT setvar VAR_0x8005, TVSHOW_RECENT_HAPPENINGS goto Interview_EventScript_EndInterview end -SlateportCity_OceanicMuseum_1F_EventScript_AlreadyInterviewed:: @ 828C939 +SlateportCity_OceanicMuseum_1F_EventScript_AlreadyInterviewed:: msgbox SlateportCity_OceanicMuseum_1F_Text_BetterWriteUpStory, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_Reporter:: @ 828C943 +SlateportCity_PokemonFanClub_EventScript_Reporter:: lock faceplayer specialvar VAR_RESULT, IsLeadMonNicknamedOrNotEnglish @@ -121,7 +121,7 @@ SlateportCity_PokemonFanClub_EventScript_Reporter:: @ 828C943 goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview end -SlateportCity_PokemonFanClub_EventScript_AcceptInterview:: @ 828C98C +SlateportCity_PokemonFanClub_EventScript_AcceptInterview:: msgbox SlateportCity_PokemonFanClub_Text_HereGoesQuickAnswers, MSGBOX_DEFAULT random 3 copyvar VAR_0x800A, VAR_RESULT @@ -131,22 +131,22 @@ SlateportCity_PokemonFanClub_EventScript_AcceptInterview:: @ 828C98C case 2, SlateportCity_PokemonFanClub_EventScript_RandomQuestion3 end -SlateportCity_PokemonFanClub_EventScript_RandomQuestion1:: @ 828C9C3 +SlateportCity_PokemonFanClub_EventScript_RandomQuestion1:: msgbox SlateportCity_PokemonFanClub_Text_DescribeFeelingsFirstMetMon, MSGBOX_DEFAULT goto SlateportCity_PokemonFanClub_EventScript_ContinueInterview end -SlateportCity_PokemonFanClub_EventScript_RandomQuestion2:: @ 828C9D1 +SlateportCity_PokemonFanClub_EventScript_RandomQuestion2:: msgbox SlateportCity_PokemonFanClub_Text_LikenMonToSomethingYouLike, MSGBOX_DEFAULT goto SlateportCity_PokemonFanClub_EventScript_ContinueInterview end -SlateportCity_PokemonFanClub_EventScript_RandomQuestion3:: @ 828C9DF +SlateportCity_PokemonFanClub_EventScript_RandomQuestion3:: msgbox SlateportCity_PokemonFanClub_Text_WhatAttractedYouAboutMon, MSGBOX_DEFAULT goto SlateportCity_PokemonFanClub_EventScript_ContinueInterview end -SlateportCity_PokemonFanClub_EventScript_ContinueInterview:: @ 828C9ED +SlateportCity_PokemonFanClub_EventScript_ContinueInterview:: setvar VAR_0x8004, EASY_CHAT_TYPE_FAN_CLUB copyvar VAR_0x8005, VAR_0x8009 setvar VAR_0x8006, 0 @@ -168,17 +168,17 @@ SlateportCity_PokemonFanClub_EventScript_ContinueInterview:: @ 828C9ED goto Interview_EventScript_EndInterview end -SlateportCity_PokemonFanClub_EventScript_DeclineInterview:: @ 828CA45 +SlateportCity_PokemonFanClub_EventScript_DeclineInterview:: msgbox SlateportCity_PokemonFanClub_Text_HereIfYouGetUrgeToTellMe, MSGBOX_DEFAULT release end -SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed:: @ 828CA4F +SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed:: msgbox SlateportCity_PokemonFanClub_Text_EnjoyDoingInterviews, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_Reporter:: @ 828CA59 +LilycoveCity_ContestLobby_EventScript_Reporter:: lock faceplayer goto_if_set FLAG_TEMP_2, LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed @@ -194,7 +194,7 @@ LilycoveCity_ContestLobby_EventScript_Reporter:: @ 828CA59 goto_if_eq LilycoveCity_ContestLobby_EventScript_DeclineInterview end -LilycoveCity_ContestLobby_EventScript_AcceptInterview:: @ 828CA9B +LilycoveCity_ContestLobby_EventScript_AcceptInterview:: msgbox LilycoveCity_ContestLobby_Text_DescribeContest, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_CONTEST_INTERVIEW copyvar VAR_0x8005, VAR_0x8009 @@ -208,12 +208,12 @@ LilycoveCity_ContestLobby_EventScript_AcceptInterview:: @ 828CA9B goto_if_eq LilycoveCity_ContestLobby_EventScript_DeclineInterview end -LilycoveCity_ContestLobby_EventScript_DeclineInterview:: @ 828CAD0 +LilycoveCity_ContestLobby_EventScript_DeclineInterview:: msgbox LilycoveCity_ContestLobby_Text_PleaseDoShareStoryWithMe, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_SubmitResponse:: @ 828CADA +LilycoveCity_ContestLobby_EventScript_SubmitResponse:: setvar VAR_0x8004, 24 special SetContestCategoryStringVarForInterview msgbox LilycoveCity_ContestLobby_Text_WhatImageWhenYouHearX, MSGBOX_DEFAULT @@ -231,12 +231,12 @@ LilycoveCity_ContestLobby_EventScript_SubmitResponse:: @ 828CADA goto Interview_EventScript_EndInterview end -LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed:: @ 828CB21 +LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed:: msgbox LilycoveCity_ContestLobby_Text_LookingForwardToNextContest, MSGBOX_DEFAULT release end -LilycoveCity_ContestLobby_EventScript_TryShowContestReporter:: @ 828CB2B +LilycoveCity_ContestLobby_EventScript_TryShowContestReporter:: compare VAR_CONTEST_HALL_STATE, 2 goto_if_ne LilycoveCity_ContestLobby_EventScript_DontShowContestReporter setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE @@ -252,14 +252,14 @@ LilycoveCity_ContestLobby_EventScript_TryShowContestReporter:: @ 828CB2B case 5, LilycoveCity_ContestLobby_EventScript_DontShowContestReporter end -LilycoveCity_ContestLobby_EventScript_ShowContestReporter:: @ 828CB91 +LilycoveCity_ContestLobby_EventScript_ShowContestReporter:: clearflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER return -LilycoveCity_ContestLobby_EventScript_DontShowContestReporter:: @ 828CB95 +LilycoveCity_ContestLobby_EventScript_DontShowContestReporter:: return -BattleFrontier_BattleTowerLobby_EventScript_Reporter:: @ 828CB96 +BattleFrontier_BattleTowerLobby_EventScript_Reporter:: lock faceplayer goto_if_set FLAG_TEMP_2, BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed @@ -275,7 +275,7 @@ BattleFrontier_BattleTowerLobby_EventScript_Reporter:: @ 828CB96 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview end -BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: @ 828CBD8 +BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: message BattleFrontier_BattleTowerLobby_Text_HowDidBattleTowerTurnOut waitmessage multichoice 20, 8, MULTI_SATISFACTION, TRUE @@ -296,20 +296,20 @@ BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: @ 828CBD8 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelInterview end -BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview:: @ 828CC2E +BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview:: msgbox BattleFrontier_BattleTowerLobby_Text_SorryWeDisturbedYou, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_Satisfied:: @ 828CC38 +BattleFrontier_BattleTowerLobby_EventScript_Satisfied:: msgbox BattleFrontier_BattleTowerLobby_Text_ObviousYouHadGreatBattle, MSGBOX_DEFAULT return -BattleFrontier_BattleTowerLobby_EventScript_Dissatisfied:: @ 828CC41 +BattleFrontier_BattleTowerLobby_EventScript_Dissatisfied:: msgbox BattleFrontier_BattleTowerLobby_Text_DifficultToMakeBattleTurnOutAsPlanned, MSGBOX_DEFAULT return -BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse:: @ 828CC4A +BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse:: compare VAR_RESULT, 0 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelInterview msgbox BattleFrontier_BattleTowerLobby_Text_ThatsGreatLine, MSGBOX_DEFAULT @@ -319,17 +319,17 @@ BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse:: @ 828CC4A goto Interview_EventScript_EndInterview end -BattleFrontier_BattleTowerLobby_EventScript_CancelInterview:: @ 828CC70 +BattleFrontier_BattleTowerLobby_EventScript_CancelInterview:: msgbox BattleFrontier_BattleTowerLobby_Text_SilentType, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed:: @ 828CC7A +BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed:: msgbox BattleFrontier_BattleTowerLobby_Text_LookingForwardToNextBattle, MSGBOX_DEFAULT release end -BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter:: @ 828CC84 +BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter:: compare VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0 goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_HideReporter setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE @@ -339,12 +339,12 @@ BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter:: @ 828CC84 clearflag FLAG_HIDE_BATTLE_TOWER_REPORTER return -BattleFrontier_BattleTowerLobby_EventScript_HideReporter:: @ 828CCA6 +BattleFrontier_BattleTowerLobby_EventScript_HideReporter:: setflag FLAG_HIDE_BATTLE_TOWER_REPORTER return @ Unused -EventScript_ContestLiveInterview:: @ 828CCAA +EventScript_ContestLiveInterview:: setvar VAR_0x8005, TVSHOW_CONTEST_LIVE_UPDATES special InterviewBefore compare VAR_RESULT, TRUE @@ -353,5 +353,5 @@ EventScript_ContestLiveInterview:: @ 828CCAA special InterviewAfter return -EventScript_ContestLiveInterviewEnd:: @ 828CCC6 +EventScript_ContestLiveInterviewEnd:: return diff --git a/data/scripts/item_ball_scripts.inc b/data/scripts/item_ball_scripts.inc index f9228134c801..683c383df522 100644 --- a/data/scripts/item_ball_scripts.inc +++ b/data/scripts/item_ball_scripts.inc @@ -1,659 +1,659 @@ -Route102_EventScript_ItemPotion:: @ 8290CD8 +Route102_EventScript_ItemPotion:: finditem ITEM_POTION end -Route103_EventScript_ItemGuardSpec:: @ 8290CE5 +Route103_EventScript_ItemGuardSpec:: finditem ITEM_GUARD_SPEC end -Route103_EventScript_ItemPPUp:: @ 8290CF2 +Route103_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -Route104_EventScript_ItemPPUp:: @ 8290CFF +Route104_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -Route104_EventScript_ItemPokeBall:: @ 8290D0C +Route104_EventScript_ItemPokeBall:: finditem ITEM_POKE_BALL end -Route104_EventScript_ItemXAccuracy:: @ 8290D19 +Route104_EventScript_ItemXAccuracy:: finditem ITEM_X_ACCURACY end -Route104_EventScript_ItemPotion:: @ 8290D26 +Route104_EventScript_ItemPotion:: finditem ITEM_POTION end -Route105_EventScript_ItemIron:: @ 8290D33 +Route105_EventScript_ItemIron:: finditem ITEM_IRON end -Route106_EventScript_ItemProtein:: @ 8290D40 +Route106_EventScript_ItemProtein:: finditem ITEM_PROTEIN end -Route108_EventScript_ItemStarPiece:: @ 8290D4D +Route108_EventScript_ItemStarPiece:: finditem ITEM_STAR_PIECE end -Route109_EventScript_ItemPPUp:: @ 8290D5A +Route109_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -Route109_EventScript_ItemPotion:: @ 8290D67 +Route109_EventScript_ItemPotion:: finditem ITEM_POTION end -Route110_EventScript_ItemRareCandy:: @ 8290D74 +Route110_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -Route110_EventScript_ItemDireHit:: @ 8290D81 +Route110_EventScript_ItemDireHit:: finditem ITEM_DIRE_HIT end -Route110_EventScript_ItemElixir:: @ 8290D8E +Route110_EventScript_ItemElixir:: finditem ITEM_ELIXIR end -Route111_EventScript_ItemTM37:: @ 8290D9B +Route111_EventScript_ItemTM37:: finditem ITEM_TM37 end -Route111_EventScript_ItemStardust:: @ 8290DA8 +Route111_EventScript_ItemStardust:: finditem ITEM_STARDUST end -Route111_EventScript_ItemHPUp:: @ 8290DB5 +Route111_EventScript_ItemHPUp:: finditem ITEM_HP_UP end -Route111_EventScript_ItemElixir:: @ 8290DC2 +Route111_EventScript_ItemElixir:: finditem ITEM_ELIXIR end -Route112_EventScript_ItemNugget:: @ 8290DCF +Route112_EventScript_ItemNugget:: finditem ITEM_NUGGET end -Route113_EventScript_ItemMaxEther:: @ 8290DDC +Route113_EventScript_ItemMaxEther:: finditem ITEM_MAX_ETHER end -Route113_EventScript_ItemSuperRepel:: @ 8290DE9 +Route113_EventScript_ItemSuperRepel:: finditem ITEM_SUPER_REPEL end -Route113_EventScript_ItemHyperPotion:: @ 8290DF6 +Route113_EventScript_ItemHyperPotion:: finditem ITEM_HYPER_POTION end -Route114_EventScript_ItemRareCandy:: @ 8290E03 +Route114_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -Route114_EventScript_ItemProtein:: @ 8290E10 +Route114_EventScript_ItemProtein:: finditem ITEM_PROTEIN end -Route114_EventScript_ItemEnergyPowder:: @ 8290E1D +Route114_EventScript_ItemEnergyPowder:: finditem ITEM_ENERGY_POWDER end -Route115_EventScript_ItemSuperPotion:: @ 8290E2A +Route115_EventScript_ItemSuperPotion:: finditem ITEM_SUPER_POTION end -Route115_EventScript_ItemTM01:: @ 8290E37 +Route115_EventScript_ItemTM01:: finditem ITEM_TM01 end -Route115_EventScript_ItemIron:: @ 8290E44 +Route115_EventScript_ItemIron:: finditem ITEM_IRON end -Route115_EventScript_ItemGreatBall:: @ 8290E51 +Route115_EventScript_ItemGreatBall:: finditem ITEM_GREAT_BALL end -Route115_EventScript_ItemHealPowder:: @ 8290E5E +Route115_EventScript_ItemHealPowder:: finditem ITEM_HEAL_POWDER end -Route115_EventScript_ItemPPUp:: @ 8290E6B +Route115_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -Route116_EventScript_ItemXSpecial:: @ 8290E78 +Route116_EventScript_ItemXSpecial:: finditem ITEM_X_SPECIAL end -Route116_EventScript_ItemEther:: @ 8290E85 +Route116_EventScript_ItemEther:: finditem ITEM_ETHER end -Route116_EventScript_ItemRepel:: @ 8290E92 +Route116_EventScript_ItemRepel:: finditem ITEM_REPEL end -Route116_EventScript_ItemHPUp:: @ 8290E9F +Route116_EventScript_ItemHPUp:: finditem ITEM_HP_UP end -Route116_EventScript_ItemPotion:: @ 8290EAC +Route116_EventScript_ItemPotion:: finditem ITEM_POTION end -Route117_EventScript_ItemGreatBall:: @ 8290EB9 +Route117_EventScript_ItemGreatBall:: finditem ITEM_GREAT_BALL end -Route117_EventScript_ItemRevive:: @ 8290EC6 +Route117_EventScript_ItemRevive:: finditem ITEM_REVIVE end -Route118_EventScript_ItemHyperPotion:: @ 8290ED3 +Route118_EventScript_ItemHyperPotion:: finditem ITEM_HYPER_POTION end -Route119_EventScript_ItemSuperRepel:: @ 8290EE0 +Route119_EventScript_ItemSuperRepel:: finditem ITEM_SUPER_REPEL end -Route119_EventScript_ItemZinc:: @ 8290EED +Route119_EventScript_ItemZinc:: finditem ITEM_ZINC end -Route119_EventScript_ItemElixir:: @ 8290EFA +Route119_EventScript_ItemElixir:: finditem ITEM_ELIXIR end -Route119_EventScript_ItemLeafStone:: @ 8290F07 +Route119_EventScript_ItemLeafStone:: finditem ITEM_LEAF_STONE end -Route119_EventScript_ItemRareCandy:: @ 8290F14 +Route119_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -Route119_EventScript_ItemHyperPotion:: @ 8290F21 +Route119_EventScript_ItemHyperPotion:: finditem ITEM_HYPER_POTION end -Route119_EventScript_ItemHyperPotion2:: @ 8290F2E +Route119_EventScript_ItemHyperPotion2:: finditem ITEM_HYPER_POTION end -Route119_EventScript_ItemElixir2:: @ 8290F3B +Route119_EventScript_ItemElixir2:: finditem ITEM_ELIXIR end -Route120_EventScript_ItemNugget:: @ 8290F48 +Route120_EventScript_ItemNugget:: finditem ITEM_NUGGET end -Route120_EventScript_ItemFullHeal:: @ 8290F55 +Route120_EventScript_ItemFullHeal:: finditem ITEM_FULL_HEAL end -Route120_EventScript_ItemHyperPotion:: @ 8290F62 +Route120_EventScript_ItemHyperPotion:: finditem ITEM_HYPER_POTION end -Route120_EventScript_ItemNestBall:: @ 8290F6F +Route120_EventScript_ItemNestBall:: finditem ITEM_NEST_BALL end -Route120_EventScript_ItemRevive:: @ 8290F7C +Route120_EventScript_ItemRevive:: finditem ITEM_REVIVE end -Route121_EventScript_ItemCarbos:: @ 8290F89 +Route121_EventScript_ItemCarbos:: finditem ITEM_CARBOS end -Route121_EventScript_ItemRevive:: @ 8290F96 +Route121_EventScript_ItemRevive:: finditem ITEM_REVIVE end -Route121_EventScript_ItemZinc:: @ 8290FA3 +Route121_EventScript_ItemZinc:: finditem ITEM_ZINC end -Route123_EventScript_ItemCalcium:: @ 8290FB0 +Route123_EventScript_ItemCalcium:: finditem ITEM_CALCIUM end -Route123_EventScript_ItemUltraBall:: @ 8290FBD +Route123_EventScript_ItemUltraBall:: finditem ITEM_ULTRA_BALL end -Route123_EventScript_ItemElixir:: @ 8290FCA +Route123_EventScript_ItemElixir:: finditem ITEM_ELIXIR end -Route123_EventScript_ItemPPUp:: @ 8290FD7 +Route123_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -Route123_EventScript_ItemRevivalHerb:: @ 8290FE4 +Route123_EventScript_ItemRevivalHerb:: finditem ITEM_REVIVAL_HERB end -Route124_EventScript_ItemRedShard:: @ 8290FF1 +Route124_EventScript_ItemRedShard:: finditem ITEM_RED_SHARD end -Route124_EventScript_ItemBlueShard:: @ 8290FFE +Route124_EventScript_ItemBlueShard:: finditem ITEM_BLUE_SHARD end -Route124_EventScript_ItemYellowShard:: @ 829100B +Route124_EventScript_ItemYellowShard:: finditem ITEM_YELLOW_SHARD end -Route125_EventScript_ItemBigPearl:: @ 8291018 +Route125_EventScript_ItemBigPearl:: finditem ITEM_BIG_PEARL end -Route126_EventScript_ItemGreenShard:: @ 8291025 +Route126_EventScript_ItemGreenShard:: finditem ITEM_GREEN_SHARD end -Route127_EventScript_ItemZinc:: @ 8291032 +Route127_EventScript_ItemZinc:: finditem ITEM_ZINC end -Route127_EventScript_ItemCarbos:: @ 829103F +Route127_EventScript_ItemCarbos:: finditem ITEM_CARBOS end -Route127_EventScript_ItemRareCandy:: @ 829104C +Route127_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -Route132_EventScript_ItemRareCandy:: @ 8291059 +Route132_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -Route132_EventScript_ItemProtein:: @ 8291066 +Route132_EventScript_ItemProtein:: finditem ITEM_PROTEIN end -Route133_EventScript_ItemBigPearl:: @ 8291073 +Route133_EventScript_ItemBigPearl:: finditem ITEM_BIG_PEARL end -Route133_EventScript_ItemStarPiece:: @ 8291080 +Route133_EventScript_ItemStarPiece:: finditem ITEM_STAR_PIECE end -Route133_EventScript_ItemMaxRevive:: @ 829108D +Route133_EventScript_ItemMaxRevive:: finditem ITEM_MAX_REVIVE end -Route134_EventScript_ItemCarbos:: @ 829109A +Route134_EventScript_ItemCarbos:: finditem ITEM_CARBOS end -Route134_EventScript_ItemStarPiece:: @ 82910A7 +Route134_EventScript_ItemStarPiece:: finditem ITEM_STAR_PIECE end -PetalburgCity_EventScript_ItemMaxRevive:: @ 82910B4 +PetalburgCity_EventScript_ItemMaxRevive:: finditem ITEM_MAX_REVIVE end -PetalburgCity_EventScript_ItemEther:: @ 82910C1 +PetalburgCity_EventScript_ItemEther:: finditem ITEM_ETHER end -MauvilleCity_EventScript_ItemXSpeed:: @ 82910CE +MauvilleCity_EventScript_ItemXSpeed:: finditem ITEM_X_SPEED end -RustboroCity_EventScript_ItemXDefend:: @ 82910DB +RustboroCity_EventScript_ItemXDefend:: finditem ITEM_X_DEFEND end -LilycoveCity_EventScript_ItemMaxRepel:: @ 82910E8 +LilycoveCity_EventScript_ItemMaxRepel:: finditem ITEM_MAX_REPEL end -MossdeepCity_EventScript_ItemNetBall:: @ 82910F5 +MossdeepCity_EventScript_ItemNetBall:: finditem ITEM_NET_BALL end -PetalburgWoods_EventScript_ItemXAttack:: @ 8291102 +PetalburgWoods_EventScript_ItemXAttack:: finditem ITEM_X_ATTACK end -PetalburgWoods_EventScript_ItemGreatBall:: @ 829110F +PetalburgWoods_EventScript_ItemGreatBall:: finditem ITEM_GREAT_BALL end -PetalburgWoods_EventScript_ItemEther:: @ 829111C +PetalburgWoods_EventScript_ItemEther:: finditem ITEM_ETHER end -PetalburgWoods_EventScript_ItemParalyzeHeal:: @ 8291129 +PetalburgWoods_EventScript_ItemParalyzeHeal:: finditem ITEM_PARALYZE_HEAL end -RusturfTunnel_EventScript_ItemPokeBall:: @ 8291136 +RusturfTunnel_EventScript_ItemPokeBall:: finditem ITEM_POKE_BALL end -RusturfTunnel_EventScript_ItemMaxEther:: @ 8291143 +RusturfTunnel_EventScript_ItemMaxEther:: finditem ITEM_MAX_ETHER end -GraniteCave_1F_EventScript_ItemEscapeRope:: @ 8291150 +GraniteCave_1F_EventScript_ItemEscapeRope:: finditem ITEM_ESCAPE_ROPE end -GraniteCave_B1F_EventScript_ItemPokeBall:: @ 829115D +GraniteCave_B1F_EventScript_ItemPokeBall:: finditem ITEM_POKE_BALL end -GraniteCave_B2F_EventScript_ItemRepel:: @ 829116A +GraniteCave_B2F_EventScript_ItemRepel:: finditem ITEM_REPEL end -GraniteCave_B2F_EventScript_ItemRareCandy:: @ 8291177 +GraniteCave_B2F_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -JaggedPass_EventScript_ItemBurnHeal:: @ 8291184 +JaggedPass_EventScript_ItemBurnHeal:: finditem ITEM_BURN_HEAL end -FieryPath_EventScript_ItemFireStone:: @ 8291191 +FieryPath_EventScript_ItemFireStone:: finditem ITEM_FIRE_STONE end -FieryPath_EventScript_ItemTM06:: @ 829119E +FieryPath_EventScript_ItemTM06:: finditem ITEM_TM06 end -MeteorFalls_1F_1R_EventScript_ItemTM23:: @ 82911AB +MeteorFalls_1F_1R_EventScript_ItemTM23:: finditem ITEM_TM23 end -MeteorFalls_1F_1R_EventScript_ItemFullHeal:: @ 82911B8 +MeteorFalls_1F_1R_EventScript_ItemFullHeal:: finditem ITEM_FULL_HEAL end -MeteorFalls_1F_1R_EventScript_ItemMoonStone:: @ 82911C5 +MeteorFalls_1F_1R_EventScript_ItemMoonStone:: finditem ITEM_MOON_STONE end -MeteorFalls_1F_1R_EventScript_ItemPPUP:: @ 82911D2 +MeteorFalls_1F_1R_EventScript_ItemPPUP:: finditem ITEM_PP_UP end -MeteorFalls_B1F_2R_EventScript_ItemTM02:: @ 82911DF +MeteorFalls_B1F_2R_EventScript_ItemTM02:: finditem ITEM_TM02 end -NewMauville_Inside_EventScript_ItemUltraBall:: @ 82911EC +NewMauville_Inside_EventScript_ItemUltraBall:: finditem ITEM_ULTRA_BALL end -NewMauville_Inside_EventScript_ItemEscapeRope:: @ 82911F9 +NewMauville_Inside_EventScript_ItemEscapeRope:: finditem ITEM_ESCAPE_ROPE end -NewMauville_Inside_EventScript_ItemThunderStone:: @ 8291206 +NewMauville_Inside_EventScript_ItemThunderStone:: finditem ITEM_THUNDER_STONE end -NewMauville_Inside_EventScript_ItemFullHeal:: @ 8291213 +NewMauville_Inside_EventScript_ItemFullHeal:: finditem ITEM_FULL_HEAL end -NewMauville_Inside_EventScript_ItemParalyzeHeal:: @ 8291220 +NewMauville_Inside_EventScript_ItemParalyzeHeal:: finditem ITEM_PARALYZE_HEAL end -AbandonedShip_Rooms_1F_EventScript_ItemHarborMail:: @ 829122D +AbandonedShip_Rooms_1F_EventScript_ItemHarborMail:: finditem ITEM_HARBOR_MAIL end -AbandonedShip_Rooms_B1F_EventScript_ItemEscapeRope:: @ 829123A +AbandonedShip_Rooms_B1F_EventScript_ItemEscapeRope:: finditem ITEM_ESCAPE_ROPE end -AbandonedShip_Rooms2_B1F_EventScript_ItemDiveBall:: @ 8291247 +AbandonedShip_Rooms2_B1F_EventScript_ItemDiveBall:: finditem ITEM_DIVE_BALL end -AbandonedShip_Room_B1F_EventScript_ItemTM13:: @ 8291254 +AbandonedShip_Room_B1F_EventScript_ItemTM13:: finditem ITEM_TM13 end -AbandonedShip_Rooms2_1F_EventScript_ItemRevive:: @ 8291261 +AbandonedShip_Rooms2_1F_EventScript_ItemRevive:: finditem ITEM_REVIVE end -AbandonedShip_CaptainsOffice_EventScript_ItemStorageKey:: @ 829126E +AbandonedShip_CaptainsOffice_EventScript_ItemStorageKey:: finditem ITEM_STORAGE_KEY end -AbandonedShip_HiddenFloorRooms_EventScript_ItemLuxuryBall:: @ 829127B +AbandonedShip_HiddenFloorRooms_EventScript_ItemLuxuryBall:: finditem ITEM_LUXURY_BALL end -AbandonedShip_HiddenFloorRooms_EventScript_ItemScanner:: @ 8291288 +AbandonedShip_HiddenFloorRooms_EventScript_ItemScanner:: finditem ITEM_SCANNER end -AbandonedShip_HiddenFloorRooms_EventScript_ItemWaterStone:: @ 8291295 +AbandonedShip_HiddenFloorRooms_EventScript_ItemWaterStone:: finditem ITEM_WATER_STONE end -AbandonedShip_HiddenFloorRooms_EventScript_ItemTM18:: @ 82912A2 +AbandonedShip_HiddenFloorRooms_EventScript_ItemTM18:: finditem ITEM_TM18 end -ScorchedSlab_EventScript_ItemTM11:: @ 82912AF +ScorchedSlab_EventScript_ItemTM11:: finditem ITEM_TM11 end -SafariZone_Northwest_EventScript_ItemTM22:: @ 82912BC +SafariZone_Northwest_EventScript_ItemTM22:: finditem ITEM_TM22 end -SafariZone_North_EventScript_ItemCalcium:: @ 82912C9 +SafariZone_North_EventScript_ItemCalcium:: finditem ITEM_CALCIUM end -SafariZone_Southwest_EventScript_ItemMaxRevive:: @ 82912D6 +SafariZone_Southwest_EventScript_ItemMaxRevive:: finditem ITEM_MAX_REVIVE end -SafariZone_Northeast_EventScript_ItemNugget:: @ 82912E3 +SafariZone_Northeast_EventScript_ItemNugget:: finditem ITEM_NUGGET end -SafariZone_Southeast_EventScript_ItemBigPearl:: @ 82912F0 +SafariZone_Southeast_EventScript_ItemBigPearl:: finditem ITEM_BIG_PEARL end -MtPyre_2F_EventScript_ItemUltraBall:: @ 82912FD +MtPyre_2F_EventScript_ItemUltraBall:: finditem ITEM_ULTRA_BALL end -MtPyre_3F_EventScript_ItemSuperRepel:: @ 829130A +MtPyre_3F_EventScript_ItemSuperRepel:: finditem ITEM_SUPER_REPEL end -MtPyre_4F_EventScript_ItemSeaIncense:: @ 8291317 +MtPyre_4F_EventScript_ItemSeaIncense:: finditem ITEM_SEA_INCENSE end -MtPyre_5F_EventScript_ItemLaxIncense:: @ 8291324 +MtPyre_5F_EventScript_ItemLaxIncense:: finditem ITEM_LAX_INCENSE end -MtPyre_6F_EventScript_ItemTM30:: @ 8291331 +MtPyre_6F_EventScript_ItemTM30:: finditem ITEM_TM30 end -MtPyre_Exterior_EventScript_ItemMaxPotion:: @ 829133E +MtPyre_Exterior_EventScript_ItemMaxPotion:: finditem ITEM_MAX_POTION end -MtPyre_Exterior_EventScript_ItemTM48:: @ 829134B +MtPyre_Exterior_EventScript_ItemTM48:: finditem ITEM_TM48 end -AquaHideout_B1F_EventScript_ItemMasterBall:: @ 8291358 +AquaHideout_B1F_EventScript_ItemMasterBall:: finditem ITEM_MASTER_BALL end -AquaHideout_B1F_EventScript_ItemNugget:: @ 8291365 +AquaHideout_B1F_EventScript_ItemNugget:: finditem ITEM_NUGGET end -AquaHideout_B1F_EventScript_ItemMaxElixir:: @ 8291372 +AquaHideout_B1F_EventScript_ItemMaxElixir:: finditem ITEM_MAX_ELIXIR end -AquaHideout_B2F_EventScript_ItemNestBall:: @ 829137F +AquaHideout_B2F_EventScript_ItemNestBall:: finditem ITEM_NEST_BALL end -AquaHideout_B2F_EventScript_ItemMasterBall:: @ 829138C +AquaHideout_B2F_EventScript_ItemMasterBall:: finditem ITEM_MASTER_BALL // Unused end -Route119_EventScript_ItemNugget:: @ 8291399 +Route119_EventScript_ItemNugget:: finditem ITEM_NUGGET end -Route119_EventScript_ItemMaxElixir:: @ 82913A6 +Route119_EventScript_ItemMaxElixir:: finditem ITEM_MAX_ELIXIR end -Route119_EventScript_ItemNestBall:: @ 82913B3 +Route119_EventScript_ItemNestBall:: finditem ITEM_NEST_BALL end -ShoalCave_LowTideEntranceRoom_EventScript_ItemBigPearl:: @ 82913C0 +ShoalCave_LowTideEntranceRoom_EventScript_ItemBigPearl:: finditem ITEM_BIG_PEARL end -ShoalCave_LowTideInnerRoom_EventScript_ItemRareCandy:: @ 82913CD +ShoalCave_LowTideInnerRoom_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -ShoalCave_LowTideStairsRoom_EventScript_ItemIceHeal:: @ 82913DA +ShoalCave_LowTideStairsRoom_EventScript_ItemIceHeal:: finditem ITEM_ICE_HEAL end -ShoalCave_LowTideIceRoom_EventScript_ItemTM07:: @ 82913E7 +ShoalCave_LowTideIceRoom_EventScript_ItemTM07:: finditem ITEM_TM07 end -ShoalCave_LowTideIceRoom_EventScript_ItemNeverMeltIce:: @ 82913F4 +ShoalCave_LowTideIceRoom_EventScript_ItemNeverMeltIce:: finditem ITEM_NEVER_MELT_ICE end -SeafloorCavern_Room9_EventScript_ItemTM26:: @ 8291401 +SeafloorCavern_Room9_EventScript_ItemTM26:: finditem ITEM_TM26 end -Route110_TrickHousePuzzle1_EventScript_ItemOrangeMail:: @ 829140E +Route110_TrickHousePuzzle1_EventScript_ItemOrangeMail:: finditem ITEM_ORANGE_MAIL end -Route110_TrickHousePuzzle2_EventScript_ItemHarborMail:: @ 829141B +Route110_TrickHousePuzzle2_EventScript_ItemHarborMail:: finditem ITEM_HARBOR_MAIL end -Route110_TrickHousePuzzle2_EventScript_ItemWaveMail:: @ 8291428 +Route110_TrickHousePuzzle2_EventScript_ItemWaveMail:: finditem ITEM_WAVE_MAIL end -Route110_TrickHousePuzzle3_EventScript_ItemShadowMail:: @ 8291435 +Route110_TrickHousePuzzle3_EventScript_ItemShadowMail:: finditem ITEM_SHADOW_MAIL end -Route110_TrickHousePuzzle3_EventScript_ItemWoodMail:: @ 8291442 +Route110_TrickHousePuzzle3_EventScript_ItemWoodMail:: finditem ITEM_WOOD_MAIL end -Route110_TrickHousePuzzle4_EventScript_ItemMechMail:: @ 829144F +Route110_TrickHousePuzzle4_EventScript_ItemMechMail:: finditem ITEM_MECH_MAIL end -Route110_TrickHousePuzzle6_EventScript_ItemGlitterMail:: @ 829145C +Route110_TrickHousePuzzle6_EventScript_ItemGlitterMail:: finditem ITEM_GLITTER_MAIL end -Route110_TrickHousePuzzle7_EventScript_ItemTropicMail:: @ 8291469 +Route110_TrickHousePuzzle7_EventScript_ItemTropicMail:: finditem ITEM_TROPIC_MAIL end -Route110_TrickHousePuzzle8_EventScript_ItemBeadMail:: @ 8291476 +Route110_TrickHousePuzzle8_EventScript_ItemBeadMail:: finditem ITEM_BEAD_MAIL end -VictoryRoad_1F_EventScript_ItemMaxElixir:: @ 8291483 +VictoryRoad_1F_EventScript_ItemMaxElixir:: finditem ITEM_MAX_ELIXIR end -VictoryRoad_1F_EventScript_ItemPPUp:: @ 8291490 +VictoryRoad_1F_EventScript_ItemPPUp:: finditem ITEM_PP_UP end -VictoryRoad_B1F_EventScript_ItemTM29:: @ 829149D +VictoryRoad_B1F_EventScript_ItemTM29:: finditem ITEM_TM29 end -VictoryRoad_B1F_EventScript_ItemFullRestore:: @ 82914AA +VictoryRoad_B1F_EventScript_ItemFullRestore:: finditem ITEM_FULL_RESTORE end -VictoryRoad_B2F_EventScript_ItemFullHeal:: @ 82914B7 +VictoryRoad_B2F_EventScript_ItemFullHeal:: finditem ITEM_FULL_HEAL end -ArtisanCave_B1F_EventScript_ItemHPUp:: @ 82914C4 +ArtisanCave_B1F_EventScript_ItemHPUp:: finditem ITEM_HP_UP end -ArtisanCave_1F_EventScript_ItemCarbos:: @ 82914D1 +ArtisanCave_1F_EventScript_ItemCarbos:: finditem ITEM_CARBOS end -MagmaHideout_1F_EventScript_ItemRareCandy:: @ 82914DE +MagmaHideout_1F_EventScript_ItemRareCandy:: finditem ITEM_RARE_CANDY end -MagmaHideout_2F_2R_EventScript_ItemMaxElixir:: @ 82914EB +MagmaHideout_2F_2R_EventScript_ItemMaxElixir:: finditem ITEM_MAX_ELIXIR end -MagmaHideout_2F_2R_EventScript_ItemFullRestore:: @ 82914F8 +MagmaHideout_2F_2R_EventScript_ItemFullRestore:: finditem ITEM_FULL_RESTORE end -MagmaHideout_3F_1R_EventScript_ItemNugget:: @ 8291505 +MagmaHideout_3F_1R_EventScript_ItemNugget:: finditem ITEM_NUGGET end -MagmaHideout_3F_2R_EventScript_ItemPPMax:: @ 8291512 +MagmaHideout_3F_2R_EventScript_ItemPPMax:: finditem ITEM_PP_MAX end -MagmaHideout_4F_EventScript_ItemMaxRevive:: @ 829151F +MagmaHideout_4F_EventScript_ItemMaxRevive:: finditem ITEM_MAX_REVIVE end -MagmaHideout_3F_3R_EventScript_ItemEscapeRope:: @ 829152C +MagmaHideout_3F_3R_EventScript_ItemEscapeRope:: finditem ITEM_ESCAPE_ROPE end diff --git a/data/scripts/kecleon.inc b/data/scripts/kecleon.inc index 659cd027b967..414217499090 100644 --- a/data/scripts/kecleon.inc +++ b/data/scripts/kecleon.inc @@ -1,53 +1,53 @@ -Route120_EventScript_Kecleon1:: @ 82722DB +Route120_EventScript_Kecleon1:: lock faceplayer setvar VAR_0x8009, 1 goto EventScript_Kecleon end -Route120_EventScript_Kecleon2:: @ 82722E8 +Route120_EventScript_Kecleon2:: lock faceplayer setvar VAR_0x8009, 2 goto EventScript_Kecleon end -Route120_EventScript_Kecleon3:: @ 82722F5 +Route120_EventScript_Kecleon3:: lock faceplayer setvar VAR_0x8009, 3 goto EventScript_Kecleon end -Route120_EventScript_Kecleon4:: @ 8272302 +Route120_EventScript_Kecleon4:: lock faceplayer setvar VAR_0x8009, 4 goto EventScript_Kecleon end -Route120_EventScript_Kecleon5:: @ 827230F +Route120_EventScript_Kecleon5:: lock faceplayer setvar VAR_0x8009, 5 goto EventScript_Kecleon end -Route119_EventScript_Kecleon1:: @ 827231C +Route119_EventScript_Kecleon1:: lock faceplayer setvar VAR_0x8009, 6 goto EventScript_Kecleon end -Route119_EventScript_Kecleon2:: @ 8272329 +Route119_EventScript_Kecleon2:: lock faceplayer setvar VAR_0x8009, 7 goto EventScript_Kecleon end -EventScript_Kecleon:: @ 8272336 +EventScript_Kecleon:: checkitem ITEM_DEVON_SCOPE, 1 compare VAR_RESULT, 1 goto_if_eq EventScript_AskUseDevonScope @@ -55,14 +55,14 @@ EventScript_Kecleon:: @ 8272336 release end -EventScript_AskUseDevonScope:: @ 8272350 +EventScript_AskUseDevonScope:: msgbox Kecleon_Text_WantToUseDevonScope, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq EventScript_BattleKecleon release end -EventScript_BattleKecleon:: @ 8272365 +EventScript_BattleKecleon:: msgbox Kecleon_Text_UseDevonScopeMonAttacked, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer @@ -87,11 +87,11 @@ EventScript_BattleKecleon:: @ 8272365 release end -EventScript_RemoveKecleon:: @ 82723C1 +EventScript_RemoveKecleon:: goto Common_EventScript_RemoveStaticPokemon end -Movement_KecleonAppears: @ 82723C7 +Movement_KecleonAppears: set_visible delay_4 set_invisible diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index 40ead8e58512..137af87524dd 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -1,7 +1,7 @@ .set LOCALID_LILYCOVE_LADY, 4 .set LOCALID_LADYS_MON, 5 -LilycoveCity_PokemonCenter_1F_EventScript_LilycoveLady:: @ 82A836B +LilycoveCity_PokemonCenter_1F_EventScript_LilycoveLady:: special Script_GetLilycoveLadyId switch VAR_RESULT case LILYCOVE_LADY_QUIZ, LilycoveCity_PokemonCenter_1F_EventScript_QuizLady @@ -9,7 +9,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_LilycoveLady:: @ 82A836B case LILYCOVE_LADY_CONTEST, LilycoveCity_PokemonCenter_1F_EventScript_ContestLady end -LilycoveCity_PokemonCenter_1F_EventScript_FavorLady:: @ 82A8395 +LilycoveCity_PokemonCenter_1F_EventScript_FavorLady:: lock faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady, MSGBOX_DEFAULT @@ -22,12 +22,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLady:: @ 82A8395 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize end -LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted:: @ 82A83C6 +LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted:: msgbox LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady:: @ 82A83D0 +LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady:: special BufferFavorLadyRequest msgbox LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing, MSGBOX_DEFAULT specialvar VAR_RESULT, HasAnotherPlayerGivenFavorLadyItem @@ -37,7 +37,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady:: @ 82A83D0 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem end -LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem:: @ 82A83F7 +LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem:: special BufferFavorLadyItemName special BufferFavorLadyPlayerName specialvar VAR_RESULT, DidFavorLadyLikeItem @@ -47,17 +47,17 @@ LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem:: @ 82A83F7 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing end -LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing:: @ 82A8419 +LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing:: msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem end -LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing:: @ 82A8427 +LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing:: msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem end -LilycoveCity_PokemonCenter_1F_EventScript_RequestItem:: @ 82A8435 +LilycoveCity_PokemonCenter_1F_EventScript_RequestItem:: msgbox LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor @@ -65,17 +65,17 @@ LilycoveCity_PokemonCenter_1F_EventScript_RequestItem:: @ 82A8435 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor end -LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor:: @ 82A8454 +LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor:: msgbox LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor:: @ 82A845E +LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor:: msgbox LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem end -LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: @ 82A846C +LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 special Script_FavorLadyOpenBagMenu @@ -86,7 +86,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: @ 82A846C goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem end -LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem:: @ 82A848E +LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem:: msgbox LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor @@ -94,7 +94,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem:: @ 82A848E goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem end -LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem:: @ 82A84AD +LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem:: specialvar VAR_RESULT, Script_DoesFavorLadyLikeItem compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem @@ -102,13 +102,13 @@ LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem:: @ 82A84AD goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem end -LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem:: @ 82A84C9 +LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem:: special BufferFavorLadyRequest msgbox LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem:: @ 82A84D6 +LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem:: specialvar VAR_RESULT, IsFavorLadyThresholdMet compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem @@ -116,19 +116,19 @@ LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem:: @ 82A84D6 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem end -LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem:: @ 82A84F2 +LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem:: special BufferFavorLadyRequest msgbox LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem:: @ 82A84FF +LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem:: special BufferFavorLadyRequest msgbox LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize end -LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize:: @ 82A8510 +LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize:: setvar VAR_0x8004, 0 specialvar VAR_0x8004, FavorLadyGetPrize msgbox LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn, MSGBOX_DEFAULT @@ -139,17 +139,17 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize:: @ 82A8510 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize end -LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize:: @ 82A8545 +LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize:: msgbox LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize:: @ 82A854F +LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize:: special SetFavorLadyState_Complete release end -LilycoveCity_PokemonCenter_1F_EventScript_QuizLady:: @ 82A8554 +LilycoveCity_PokemonCenter_1F_EventScript_QuizLady:: lock faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady, MSGBOX_DEFAULT @@ -162,7 +162,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_QuizLady:: @ 82A8554 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize end -LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz:: @ 82A8585 +LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz:: specialvar VAR_RESULT, GetQuizAuthor compare VAR_RESULT, QUIZ_AUTHOR_PLAYER goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz @@ -172,7 +172,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz:: @ 82A8585 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady end -LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz:: @ 82A85AC +LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz:: specialvar VAR_RESULT, IsQuizLadyWaitingForChallenger compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz @@ -180,22 +180,22 @@ LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz:: @ 82A85AC goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz:: @ 82A85C8 +LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady:: @ 82A85D2 +LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady:: msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady:: @ 82A85E0 +LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady:: msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz:: @ 82A85EE +LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz:: setvar VAR_0x8004, 0 msgbox LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge, MSGBOX_YESNO compare VAR_RESULT, YES @@ -204,38 +204,38 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz:: @ 82A85EE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz:: @ 82A8612 +LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_HowBoringBye, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz:: @ 82A861C +LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz:: special ClearQuizLadyPlayerAnswer compare VAR_0x8004, 0 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion compare VAR_0x8004, EASY_CHAT_TYPE_QUIZ_ANSWER goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer -LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState:: @ 82A8635 +LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState:: compare VAR_RESULT, 0 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse end -LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion:: @ 82A864C +LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion:: special QuizLadyShowQuizQuestion waitstate goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState end -LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer:: @ 82A8656 +LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer:: special QuizLadyGetPlayerAnswer waitstate goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState end -LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz:: @ 82A8660 +LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz @@ -243,12 +243,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz:: @ 82A8660 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz:: @ 82A867F +LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse:: @ 82A8689 +LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse:: special SetQuizLadyState_Complete msgbox LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer, MSGBOX_DEFAULT specialvar VAR_RESULT, IsQuizAnswerCorrect @@ -258,7 +258,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse:: @ 82A8689 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse end -LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse:: @ 82A86B0 +LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse:: playse SE_SUCCESS delay 10 playse SE_SUCCESS @@ -266,7 +266,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse:: @ 82A86B0 goto LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize end -LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse:: @ 82A86C7 +LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse:: special BufferQuizCorrectAnswer special BufferQuizPrizeName playse SE_FAILURE @@ -278,7 +278,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse:: @ 82A86C7 end @ VAR_RESULT is essentially ignored, both jumps are identical -LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize:: @ 82A86EC +LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize:: specialvar VAR_RESULT, BufferQuizAuthorNameAndCheckIfLady compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1 @@ -286,17 +286,17 @@ LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize:: @ 82A86EC goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0 end -LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1:: @ 82A8708 +LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1:: msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize end -LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0:: @ 82A8716 +LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0:: msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize end -LilycoveCity_PokemonCenter_1F_EventScript_GivePrize:: @ 82A8724 +LilycoveCity_PokemonCenter_1F_EventScript_GivePrize:: setvar VAR_0x8005, 0 special BufferQuizPrizeItem special SetQuizLadyState_Complete @@ -306,13 +306,13 @@ LilycoveCity_PokemonCenter_1F_EventScript_GivePrize:: @ 82A8724 goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize:: @ 82A874C +LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize:: msgbox LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp, MSGBOX_DEFAULT special SetQuizLadyState_GivePrize release end -LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz:: @ 82A8759 +LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz @@ -320,15 +320,15 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz:: @ 82A8759 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: @ 82A8778 +LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: special QuizLadyPickNewQuestion msgbox LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz:: @ 82A8785 +LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_PickYourPrize, MSGBOX_DEFAULT -LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: @ 82A878D +LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 special Script_QuizLadyOpenBagMenu @@ -339,7 +339,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: @ 82A878D goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize:: @ 82A87AF +LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize:: msgbox LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz @@ -347,12 +347,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize:: @ 82A87AF goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PickPrize end -LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: @ 82A87CE +LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz, MSGBOX_DEFAULT special ClearQuizLadyQuestionAndAnswer special ClearQuizLadyPlayerAnswer setvar VAR_0x8004, EASY_CHAT_TYPE_QUIZ_QUESTION -LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: @ 82A87E1 +LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: fadescreen FADE_TO_BLACK special QuizLadySetCustomQuestion waitstate @@ -361,7 +361,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: @ 82A87E1 goto LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz end -LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion:: @ 82A87F8 +LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion:: msgbox LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz @@ -369,7 +369,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion:: @ 82A87F8 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion end -LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz:: @ 82A8817 +LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz:: special QuizLadyTakePrizeForCustomQuiz special QuizLadyRecordCustomQuizData special QuizLadySetWaitingForChallenger @@ -377,7 +377,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz:: @ 82A8817 release end -LilycoveCity_PokemonCenter_1F_EventScript_ContestLady:: @ 82A882A +LilycoveCity_PokemonCenter_1F_EventScript_ContestLady:: lock faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady, MSGBOX_DEFAULT @@ -389,7 +389,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_ContestLady:: @ 82A882A end @ Redundant with above script, VAR_RESULT will always be FALSE here -LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock:: @ 82A8850 +LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock:: specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock @@ -397,12 +397,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock:: @ 82A8850 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock end -LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock:: @ 82A886C +LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: @ 82A8876 +LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: special Script_BufferContestLadyCategoryAndMonName msgbox LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality, MSGBOX_DEFAULT checkitem ITEM_POKEBLOCK_CASE, 1 @@ -415,12 +415,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: @ 82A8876 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock end -LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: @ 82A88B0 +LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: @ 82A88BA +LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: fadescreen FADE_TO_BLACK special OpenPokeblockCaseForContestLady waitstate @@ -430,7 +430,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: @ 82A88BA goto_if_ne LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock end -LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock:: @ 82A88D7 +LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock @@ -438,7 +438,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock:: @ 82A88D7 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock end -LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock:: @ 82A88F6 +LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock, MSGBOX_DEFAULT special SetContestLadyGivenPokeblock special GetContestLadyMonSpecies @@ -446,7 +446,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock:: @ 82A88F6 end @ VAR_0x8004 here is the return value from GivePokeblockToContestLady -LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock:: @ 82A890A +LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock:: applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon waitmovement 0 delay 60 @@ -463,11 +463,11 @@ LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock:: @ 82A890A end @ VAR_0x8004 here is the return value from GivePokeblockToContestLady -LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock:: @ 82A893F +LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock:: applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonJump waitmovement 0 delay 60 -LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock:: @ 82A894C +LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock:: applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer waitmovement 0 delay 60 @@ -477,62 +477,62 @@ LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock:: @ 82A894C goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock end -LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock:: @ 82A8970 +LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow end -LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock:: @ 82A897E +LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock:: special Script_BufferContestLadyCategoryAndMonName msgbox LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks, MSGBOX_DEFAULT goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow end -LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow:: @ 82A898F +LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow:: specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir compare VAR_RESULT, 1 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow release end -LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow:: @ 82A89A1 +LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow:: msgbox LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests, MSGBOX_DEFAULT special PutLilycoveContestLadyShowOnTheAir release end -LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase:: @ 82A89AE +LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase:: msgbox LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase, MSGBOX_DEFAULT release end -LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon: @ 82A89B8 +LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon: face_right delay_8 step_end -LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady: @ 82A89BB +LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady: face_left delay_8 step_end @ Unused -LilycoveCity_PokemonCenter_1F_Movement_MonFaceDown: @ 82A89BE +LilycoveCity_PokemonCenter_1F_Movement_MonFaceDown: face_down step_end -LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer: @ 82A89C0 +LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer: face_player step_end -LilycoveCity_PokemonCenter_1F_Movement_MonJump: @ 82A89C2 +LilycoveCity_PokemonCenter_1F_Movement_MonJump: disable_jump_landing_ground_effect jump_in_place_left disable_jump_landing_ground_effect jump_in_place_left step_end -LilycoveCity_PokemonCenter_1F_EventScript_ContestLadyMon:: @ 82A89C7 +LilycoveCity_PokemonCenter_1F_EventScript_ContestLadyMon:: specialvar VAR_RESULT, GetContestLadyCategory special Script_BufferContestLadyCategoryAndMonName special GetContestLadyMonSpecies @@ -548,7 +548,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_ContestLadyMon:: @ 82A89C7 goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Pikachu end -LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: @ 82A8A0A +LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: lock faceplayer waitse @@ -558,7 +558,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: @ 82A8A0A release end -LilycoveCity_PokemonCenter_1F_EventScript_Skitty:: @ 82A8A1D +LilycoveCity_PokemonCenter_1F_EventScript_Skitty:: lock faceplayer waitse @@ -568,7 +568,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Skitty:: @ 82A8A1D release end -LilycoveCity_PokemonCenter_1F_EventScript_Poochyena:: @ 82A8A30 +LilycoveCity_PokemonCenter_1F_EventScript_Poochyena:: lock faceplayer waitse @@ -578,7 +578,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Poochyena:: @ 82A8A30 release end -LilycoveCity_PokemonCenter_1F_EventScript_Kecleon:: @ 82A8A43 +LilycoveCity_PokemonCenter_1F_EventScript_Kecleon:: lock faceplayer waitse @@ -588,7 +588,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Kecleon:: @ 82A8A43 release end -LilycoveCity_PokemonCenter_1F_EventScript_Pikachu:: @ 82A8A56 +LilycoveCity_PokemonCenter_1F_EventScript_Pikachu:: lock faceplayer waitse @@ -598,54 +598,54 @@ LilycoveCity_PokemonCenter_1F_EventScript_Pikachu:: @ 82A8A56 release end -LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady: @ 82A8A69 +LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady: .string "I'm the FAVOR LADY…$" -LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing: @ 82A8A7D +LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing: .string "I've recently developed an obsession\n" .string "for {STR_VAR_1} things…$" -LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime: @ 82A8AB1 +LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime: .string "Oh…\n" .string "Thank you for last time…$" -LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing: @ 82A8ACE +LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing: .string "Before, I think it was {STR_VAR_3}…\p" .string "{STR_VAR_3} gave me one {STR_VAR_2},\n" .string "saying it was {STR_VAR_1}.\p" .string "But it wasn't {STR_VAR_1}.\n" .string "Not in the least bit.$" -LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing: @ 82A8B36 +LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing: .string "Before, {STR_VAR_3} gave me a very\n" .string "{STR_VAR_1} {STR_VAR_2}.\p" .string "I cherish it now.$" -LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing: @ 82A8B69 +LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing: .string "Listen, if you have anything that\n" .string "is {STR_VAR_1}, will you share it\l" .string "with me?$" -LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe: @ 82A8BAD +LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe: .string "…Really?\n" .string "What will you give me?$" -LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye: @ 82A8BCD +LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye: .string "Is that so?\n" .string "Then, it's good-bye…$" -LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare: @ 82A8BEE +LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare: .string "Oh…\n" .string "You're not willing to share?$" -LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt: @ 82A8C0F +LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt: .string "Oh?\n" .string "That {STR_VAR_2} is {STR_VAR_1}?\p" .string "…Oh, is that right?\p" .string "Well, I owe you a thanks anyway.\n" .string "I'll try to cherish it…$" -LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis: @ 82A8C6F +LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis: .string "Oh…\p" .string "That's a quite {STR_VAR_1}\n" .string "{STR_VAR_2}…\p" @@ -654,7 +654,7 @@ LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis: @ 82A8C6F .string "Thank you…\n" .string "I will cherish this…$" -LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis: @ 82A8CC8 +LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis: .string "…Oh, oh, oh…\p" .string "This is amazing!\n" .string "This really is {STR_VAR_1}!\p" @@ -664,90 +664,90 @@ LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis: @ 82A8CC8 .string "I will treasure this for the rest\n" .string "of my life!$" -LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn: @ 82A8D5D +LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn: .string "I'll give you this wonderful item in\n" .string "return for your fabulous gift.\p" .string "I hope you will cherish it…$" -LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt: @ 82A8DBD +LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt: .string "Oh, you can't have it if you don't have\n" .string "the space for it.\p" .string "Please come see me when you get\n" .string "your BAG organized…$" -LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady: @ 82A8E2B +LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady: .string "I'm the QUIZ LADY!\n" .string "I love quizzes!$" -LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz: @ 82A8E4E +LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz: .string "Oh?\p" .string "I'm waiting for a challenger to answer\n" .string "the quiz you made.\p" .string "We can chat another time, okay?$" -LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger: @ 82A8EAC +LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger: .string "I'm waiting for someone to challenge\n" .string "a quiz this {STR_VAR_1} thought up!$" -LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge: @ 82A8EEC +LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge: .string "If you answer correctly, you can win\n" .string "fabulous prizes!\p" .string "Would you like to take the quiz\n" .string "challenge?$" -LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer: @ 82A8F4D +LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer: .string "… … … … … …\n" .string "… … … … … …$" -LilycoveCity_PokemonCenter_1F_Text_HowBoringBye: @ 82A8F65 +LilycoveCity_PokemonCenter_1F_Text_HowBoringBye: .string "Oh, how boring!\n" .string "Bye-bye!$" -LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit: @ 82A8F7E +LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit: .string "Awww!\n" .string "You're going to quit?$" -LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime: @ 82A8F9A +LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime: .string "Please take the quiz challenge\n" .string "another time!$" -LilycoveCity_PokemonCenter_1F_Text_YouGotItRight: @ 82A8FC7 +LilycoveCity_PokemonCenter_1F_Text_YouGotItRight: .string "You're amazing! You've got it right!\n" .string "You're one sharp customer!$" -LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize: @ 82A9007 +LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize: .string "Congratulations!\n" .string "You've got the quiz right!\p" .string "You've won a prize provided by\n" .string "{STR_VAR_1}!$" @ Unused -LilycoveCity_PokemonCenter_1F_Text_XReceivedOneY: @ 82A9056 +LilycoveCity_PokemonCenter_1F_Text_XReceivedOneY: .string "{STR_VAR_1} received\n" .string "one {STR_VAR_2}!$" -LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp: @ 82A906A +LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp: .string "Oh? Your BAG is filled up!\n" .string "Come see me when you have room.$" -LilycoveCity_PokemonCenter_1F_Text_WrongTheCorrectAnswerIs: @ 82A90A5 +LilycoveCity_PokemonCenter_1F_Text_WrongTheCorrectAnswerIs: .string "Hmm… Wrong!\n" .string "The correct answer is “{STR_VAR_3}”!$" -LilycoveCity_PokemonCenter_1F_Text_IGetToKeepPrize: @ 82A90CD +LilycoveCity_PokemonCenter_1F_Text_IGetToKeepPrize: .string "Too bad!\p" .string "I get to keep the quiz prize\n" .string "{STR_VAR_1} now!$" -LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz: @ 82A90FB +LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz: .string "Listen, listen!\n" .string "Would you like to make your own quiz?$" -LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime: @ 82A9131 +LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime: .string "Oh, I see…\n" .string "Well, maybe next time!$" -LilycoveCity_PokemonCenter_1F_Text_PickYourPrize: @ 82A9153 +LilycoveCity_PokemonCenter_1F_Text_PickYourPrize: .string "Okay, the first thing you have to do\n" .string "is pick the prize for the person that\l" .string "answers your quiz correctly.\p" @@ -755,47 +755,47 @@ LilycoveCity_PokemonCenter_1F_Text_PickYourPrize: @ 82A9153 .string "the quiz can't get it right, I get to\l" .string "keep the prize!$" -LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize: @ 82A9212 +LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize: .string "If you don't choose a prize,\n" .string "your quiz can't be made.\p" .string "Are you going to quit making\n" .string "your quiz?$" -LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz: @ 82A9270 +LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz: .string "Oh, how nice!\n" .string "That's a wonderful prize!\p" .string "Next, you need to write your quiz\n" .string "question and its answer.$" -LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion: @ 82A92D3 +LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion: .string "Are you going to quit writing\n" .string "your quiz question?$" @ Unused -LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizAnswer: @ 82A9305 +LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizAnswer: .string "Are you going to quit choosing\n" .string "your quiz answer?$" -LilycoveCity_PokemonCenter_1F_Text_IllLookForAChallenger: @ 82A9336 +LilycoveCity_PokemonCenter_1F_Text_IllLookForAChallenger: .string "Thank you!\n" .string "You've put together a nice quiz.\p" .string "I'll go look for someone who'll take\n" .string "your quiz challenge right away.$" -LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady: @ 82A93A7 +LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady: .string "I'm the CONTEST LADY!\n" .string "I sure do love CONTESTS!$" -LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock: @ 82A93D6 +LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock: .string "Thanks for your {POKEBLOCK} before!$" -LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality: @ 82A93F4 +LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality: .string "This is my friend {STR_VAR_1}!\n" .string "It's the epitome of {STR_VAR_2}!\p" .string "But I think that it will display\n" .string "even more {STR_VAR_2}!$" -LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase: @ 82A9451 +LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase: .string "So, I need your help!\p" .string "Please, may I have one {POKEBLOCK}?\n" .string "All I'm asking for is one!\p" @@ -803,57 +803,57 @@ LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase: @ 82A9451 .string "Don't you have a {POKEBLOCK} CASE?\l" .string "That's no good. Next time, then!$" -LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock: @ 82A94E8 +LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock: .string "So, I need your help!\p" .string "Please, may I have one {POKEBLOCK}?\n" .string "All I'm asking for is one!$" -LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock: @ 82A9537 +LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock: .string "Awww!\n" .string "I can't have one {POKEBLOCK}?!$" -LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate: @ 82A9556 +LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate: .string "Sheesh!\n" .string "What a cheapskate!$" -LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock: @ 82A9571 +LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock: .string "Yay!\n" .string "Thank you!\p" .string "I'll feed my POKéMON your {POKEBLOCK}\n" .string "right away.$" -LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks: @ 82A95AD +LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks: .string "…It doesn't seem to have changed\n" .string "in any way at all…\p" .string "Hmm…\p" .string "Oh, well!\n" .string "Thank you very much!$" -LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks: @ 82A9605 +LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks: .string "Oh, yay!\n" .string "It's really delighted!\p" .string "I think it really improved {STR_VAR_1}'s\n" .string "{STR_VAR_2} quality, too.\p" .string "Thank you so much!$" -LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests: @ 82A9669 +LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests: .string "Hmm…\p" .string "I think we may be ready to enter\n" .string "some CONTESTS.\p" .string "If you see us in one somewhere,\n" .string "I hope you'll cheer for us.$" -LilycoveCity_PokemonCenter_1F_Text_Zigzagoon: @ 82A96DA +LilycoveCity_PokemonCenter_1F_Text_Zigzagoon: .string "{STR_VAR_1}: Guguuh!$" -LilycoveCity_PokemonCenter_1F_Text_Kecleon: @ 82A96E6 +LilycoveCity_PokemonCenter_1F_Text_Kecleon: .string "{STR_VAR_1}: Igigigiiih!$" -LilycoveCity_PokemonCenter_1F_Text_Poochyena: @ 82A96F6 +LilycoveCity_PokemonCenter_1F_Text_Poochyena: .string "{STR_VAR_1}: Baaarun…$" -LilycoveCity_PokemonCenter_1F_Text_Pikachu: @ 82A9703 +LilycoveCity_PokemonCenter_1F_Text_Pikachu: .string "{STR_VAR_1}: Pikka!$" -LilycoveCity_PokemonCenter_1F_Text_Skitty: @ 82A970E +LilycoveCity_PokemonCenter_1F_Text_Skitty: .string "{STR_VAR_1}: Umyaaaan!$" diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc index a6585ca4d7e3..a9c008e5ecc3 100644 --- a/data/scripts/mauville_man.inc +++ b/data/scripts/mauville_man.inc @@ -1,4 +1,4 @@ -MauvilleCity_PokemonCenter_1F_EventScript_MauvilleOldMan:: @ 828E066 +MauvilleCity_PokemonCenter_1F_EventScript_MauvilleOldMan:: special ScrSpecial_GetCurrentMauvilleMan switch VAR_RESULT case MAUVILLE_MAN_BARD, MauvilleCity_PokemonCenter_1F_EventScript_Bard @@ -9,7 +9,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_MauvilleOldMan:: @ 828E066 end @ Bard -MauvilleCity_PokemonCenter_1F_EventScript_Bard:: @ 828E0A6 +MauvilleCity_PokemonCenter_1F_EventScript_Bard:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToHearMySong, MSGBOX_YESNO @@ -19,7 +19,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Bard:: @ 828E0A6 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong end -MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: @ 828E0C7 +MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: setvar VAR_0x8004, 0 special ScrSpecial_PlayBardSong delay 60 @@ -30,12 +30,12 @@ MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: @ 828E0C7 release end -MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong:: @ 828E0EA +MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong:: msgbox MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues1, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics:: @ 828E0F4 +MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics:: msgbox MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToWriteSomeLyrics, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics @@ -43,7 +43,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics:: @ 828E0F4 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics end -MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: @ 828E113 +MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: setvar VAR_0x8004, EASY_CHAT_TYPE_BARD_SONG call Common_ShowEasyChatScreen lock @@ -62,13 +62,13 @@ MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: @ 828E113 release end -MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics:: @ 828E15D +MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics:: msgbox MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues2, MSGBOX_DEFAULT release end @ Hipster -MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: @ 828E167 +MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: lock faceplayer setflag FLAG_SYS_HIPSTER_MEET @@ -80,7 +80,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: @ 828E167 release end -MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: @ 828E18C +MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: special ScrSpecial_HipsterTeachWord compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TeachWord @@ -88,73 +88,73 @@ MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: @ 828E18C release end -MauvilleCity_PokemonCenter_1F_EventScript_TeachWord:: @ 828E1A4 +MauvilleCity_PokemonCenter_1F_EventScript_TeachWord:: msgbox MauvilleCity_PokemonCenter_1F_Text_HaveYouHeardOfPhrase, MSGBOX_DEFAULT special ScrSpecial_SetHipsterSpokenFlag release end @ Trader -MauvilleCity_PokemonCenter_1F_Text_WantToTradeDecor: @ 828E1B1 +MauvilleCity_PokemonCenter_1F_Text_WantToTradeDecor: .string "Hi, I'm the TRADER.\n" .string "Want to trade decorations with me?$" -MauvilleCity_PokemonCenter_1F_Text_TraderFeelingTheBlues: @ 828E1E8 +MauvilleCity_PokemonCenter_1F_Text_TraderFeelingTheBlues: .string "Oh…\n" .string "You've left me feeling the blues…$" -MauvilleCity_PokemonCenter_1F_Text_WeveAlreadyTraded: @ 828E20E +MauvilleCity_PokemonCenter_1F_Text_WeveAlreadyTraded: .string "But we've traded decorations already,\n" .string "you and I.$" -MauvilleCity_PokemonCenter_1F_Text_PickADecorItem: @ 828E23F +MauvilleCity_PokemonCenter_1F_Text_PickADecorItem: .string "If you see any decorative item that\n" .string "you want of mine, speak up.$" -MauvilleCity_PokemonCenter_1F_Text_YouDontWantAnything: @ 828E27F +MauvilleCity_PokemonCenter_1F_Text_YouDontWantAnything: .string "You don't want anything?\n" .string "I feel unwanted…$" -MauvilleCity_PokemonCenter_1F_Text_OnceBelongedToPlayerDoYouWantIt: @ 828E2A9 +MauvilleCity_PokemonCenter_1F_Text_OnceBelongedToPlayerDoYouWantIt: .string "That decorative item once belonged\n" .string "to {STR_VAR_1}.\p" .string "Do you want it?$" -MauvilleCity_PokemonCenter_1F_Text_YouDontHaveAnyDecor: @ 828E2E3 +MauvilleCity_PokemonCenter_1F_Text_YouDontHaveAnyDecor: .string "Uh… Wait a second. You don't have a\n" .string "single piece of decoration!$" -MauvilleCity_PokemonCenter_1F_Text_PickTheDecorToTrade: @ 828E323 +MauvilleCity_PokemonCenter_1F_Text_PickTheDecorToTrade: .string "Okay, pick the decoration that you'll\n" .string "trade to me.$" -MauvilleCity_PokemonCenter_1F_Text_YouDontWantToTrade: @ 828E356 +MauvilleCity_PokemonCenter_1F_Text_YouDontWantToTrade: .string "You won't trade with me?\n" .string "I feel unwanted…$" -MauvilleCity_PokemonCenter_1F_Text_YouveNoRoomForThis: @ 828E380 +MauvilleCity_PokemonCenter_1F_Text_YouveNoRoomForThis: .string "You've got all the {STR_VAR_2}S that can\n" .string "be stored. You've no room for this.$" -MauvilleCity_PokemonCenter_1F_Text_SoWellTradeTheseDecor: @ 828E3C4 +MauvilleCity_PokemonCenter_1F_Text_SoWellTradeTheseDecor: .string "Okay, so we'll trade my {STR_VAR_3}\n" .string "for your {STR_VAR_2}?$" -MauvilleCity_PokemonCenter_1F_Text_ThatDecorIsInUse: @ 828E3EC +MauvilleCity_PokemonCenter_1F_Text_ThatDecorIsInUse: .string "That piece of decoration is in use.\n" .string "You can't trade it.$" -MauvilleCity_PokemonCenter_1F_Text_SendDecorToYourPC: @ 828E424 +MauvilleCity_PokemonCenter_1F_Text_SendDecorToYourPC: .string "Then we'll trade!\n" .string "I'll send my decoration to your PC.$" -MauvilleCity_PokemonCenter_1F_Text_CantTradeThatOne: @ 828E45A +MauvilleCity_PokemonCenter_1F_Text_CantTradeThatOne: .string "Oops! Sorry! That's a really rare\n" .string "piece of decoration.\l" .string "I can't trade that one away!\p" .string "Can I interest you in something else?$" -MauvilleCity_PokemonCenter_1F_EventScript_Trader:: @ 828E4D4 +MauvilleCity_PokemonCenter_1F_EventScript_Trader:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_WantToTradeDecor, MSGBOX_YESNO @@ -168,17 +168,17 @@ MauvilleCity_PokemonCenter_1F_EventScript_Trader:: @ 828E4D4 goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive end -MauvilleCity_PokemonCenter_1F_EventScript_DeclineTrade:: @ 828E503 +MauvilleCity_PokemonCenter_1F_EventScript_DeclineTrade:: msgbox MauvilleCity_PokemonCenter_1F_Text_TraderFeelingTheBlues, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded:: @ 828E50D +MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded:: msgbox MauvilleCity_PokemonCenter_1F_Text_WeveAlreadyTraded, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: @ 828E517 +MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: special ScrSpecial_TraderMenuGetDecoration waitstate compare VAR_0x8004, 0 @@ -194,29 +194,29 @@ MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: @ 828E517 goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive end -MauvilleCity_PokemonCenter_1F_EventScript_CancelPickDecor:: @ 828E558 +MauvilleCity_PokemonCenter_1F_EventScript_CancelPickDecor:: msgbox MauvilleCity_PokemonCenter_1F_Text_YouDontWantAnything, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_InvalidDecor:: @ 828E562 +MauvilleCity_PokemonCenter_1F_EventScript_InvalidDecor:: message MauvilleCity_PokemonCenter_1F_Text_CantTradeThatOne waitmessage goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive end -MauvilleCity_PokemonCenter_1F_EventScript_PickDifferentDecor:: @ 828E56E +MauvilleCity_PokemonCenter_1F_EventScript_PickDifferentDecor:: message MauvilleCity_PokemonCenter_1F_Text_PickADecorItem waitmessage goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive end -MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor:: @ 828E57A +MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor:: msgbox MauvilleCity_PokemonCenter_1F_Text_YouDontHaveAnyDecor, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive:: @ 828E584 +MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive:: msgbox MauvilleCity_PokemonCenter_1F_Text_PickTheDecorToTrade, MSGBOX_DEFAULT special ScrSpecial_TraderMenuGiveDecoration waitstate @@ -235,43 +235,43 @@ MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive:: @ 828E584 release end -MauvilleCity_PokemonCenter_1F_EventScript_CancelGiveDecor:: @ 828E5D4 +MauvilleCity_PokemonCenter_1F_EventScript_CancelGiveDecor:: msgbox MauvilleCity_PokemonCenter_1F_Text_YouDontWantToTrade, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_DecorInUse:: @ 828E5DE +MauvilleCity_PokemonCenter_1F_EventScript_DecorInUse:: msgbox MauvilleCity_PokemonCenter_1F_Text_ThatDecorIsInUse, MSGBOX_DEFAULT goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive end -MauvilleCity_PokemonCenter_1F_EventScript_NoRoomForDecor:: @ 828E5EC +MauvilleCity_PokemonCenter_1F_EventScript_NoRoomForDecor:: msgbox MauvilleCity_PokemonCenter_1F_Text_YouveNoRoomForThis, MSGBOX_DEFAULT release end @ Storyteller -MauvilleCity_PokemonCenter_1F_Text_WillYouHearMyTale: @ 828E5F6 +MauvilleCity_PokemonCenter_1F_Text_WillYouHearMyTale: .string "I'm the STORYTELLER.\n" .string "I'll tell you tales of legendary\l" .string "TRAINERS.\p" .string "Will you hear my tale?$" -MauvilleCity_PokemonCenter_1F_Text_StorytellerFeelingTheBlues: @ 828E64D +MauvilleCity_PokemonCenter_1F_Text_StorytellerFeelingTheBlues: .string "Oh…\n" .string "You've left me feeling the blues…$" -MauvilleCity_PokemonCenter_1F_Text_WhichTaleToTell: @ 828E673 +MauvilleCity_PokemonCenter_1F_Text_WhichTaleToTell: .string "I know of these legends.\n" .string "Which tale will you have me tell?$" -MauvilleCity_PokemonCenter_1F_Text_IKnowNoTales: @ 828E6AE +MauvilleCity_PokemonCenter_1F_Text_IKnowNoTales: .string "But, I know of no legendary TRAINERS.\n" .string "Hence, I know no tales.\p" .string "Where does one find a TRAINER worthy\n" .string "of a legendary tale?$" -MauvilleCity_PokemonCenter_1F_Text_YouDidStatXTimes: @ 828E726 +MauvilleCity_PokemonCenter_1F_Text_YouDidStatXTimes: .string "What's that?!\n" .string "You… You…\p" .string "{STR_VAR_2}\n" @@ -279,39 +279,39 @@ MauvilleCity_PokemonCenter_1F_Text_YouDidStatXTimes: @ 828E726 .string "That is indeed magnificent!\n" .string "It's the birth of a new legend!$" -MauvilleCity_PokemonCenter_1F_Text_CouldThereBeOtherLegends: @ 828E78A +MauvilleCity_PokemonCenter_1F_Text_CouldThereBeOtherLegends: .string "It gets me thinking, could there be\n" .string "other TRAINERS with more impressive\l" .string "legends awaiting discovery?$" -MauvilleCity_PokemonCenter_1F_Text_HaveYouAnyLegendaryTales: @ 828E7EE +MauvilleCity_PokemonCenter_1F_Text_HaveYouAnyLegendaryTales: .string "Are you a TRAINER?\p" .string "Then tell me, have you any tales that\n" .string "are even remotely legendary?$" @ Unused -MauvilleCity_PokemonCenter_1F_Text_HearAnotherLegendaryTale: @ 828E844 +MauvilleCity_PokemonCenter_1F_Text_HearAnotherLegendaryTale: .string "Incidentally… Would you care to hear\n" .string "another legendary tale?$" -MauvilleCity_PokemonCenter_1F_Text_NotWorthyOfLegend: @ 828E881 +MauvilleCity_PokemonCenter_1F_Text_NotWorthyOfLegend: .string "Hmm…\n" .string "I'm not satisfied…\p" .string "I wish you would bring me news worthy\n" .string "of being called a legend.$" -MauvilleCity_PokemonCenter_1F_Text_IWishMorePeopleWereInterested: @ 828E8D9 +MauvilleCity_PokemonCenter_1F_Text_IWishMorePeopleWereInterested: .string "I wish more people would be interested\n" .string "in hearing my epic tales of legendary\l" .string "TRAINERS.$" -MauvilleCity_PokemonCenter_1F_Text_SavedGameTitle:: @ 828E930 +MauvilleCity_PokemonCenter_1F_Text_SavedGameTitle:: .string "The Save-Happy TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_SavedGameAction:: @ 828E947 +MauvilleCity_PokemonCenter_1F_Text_SavedGameAction:: .string "Saved the game$" -MauvilleCity_PokemonCenter_1F_Text_SavedGameStory:: @ 828E956 +MauvilleCity_PokemonCenter_1F_Text_SavedGameStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER saved the game\n" @@ -319,13 +319,13 @@ MauvilleCity_PokemonCenter_1F_Text_SavedGameStory:: @ 828E956 .string "A more cautious TRAINER than\n" .string "{STR_VAR_3} one will never find!$" -MauvilleCity_PokemonCenter_1F_Text_TrendsStartedTitle:: @ 828E9D7 +MauvilleCity_PokemonCenter_1F_Text_TrendsStartedTitle:: .string "The Trendsetter TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_TrendsStartedAction:: @ 828E9EF +MauvilleCity_PokemonCenter_1F_Text_TrendsStartedAction:: .string "Started trends$" -MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory:: @ 828E9FE +MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER started new trends\n" @@ -333,13 +333,13 @@ MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory:: @ 828E9FE .string "{STR_VAR_3} is setting trends for all\n" .string "the HOENN region!$" -MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle:: @ 828EA7D +MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle:: .string "The BERRY-Planting TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction:: @ 828EA98 +MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction:: .string "Planted BERRIES$" -MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedStory:: @ 828EAA8 +MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER planted BERRIES\n" @@ -347,13 +347,13 @@ MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedStory:: @ 828EAA8 .string "{STR_VAR_3} is a legendary lover of\n" .string "BERRIES!$" -MauvilleCity_PokemonCenter_1F_Text_BikeTradesTitle:: @ 828EB19 +MauvilleCity_PokemonCenter_1F_Text_BikeTradesTitle:: .string "The BIKE-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_BikeTradesAction:: @ 828EB31 +MauvilleCity_PokemonCenter_1F_Text_BikeTradesAction:: .string "Traded BIKES$" -MauvilleCity_PokemonCenter_1F_Text_BikeTradesStory:: @ 828EB3E +MauvilleCity_PokemonCenter_1F_Text_BikeTradesStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER swapped BIKES\n" @@ -361,13 +361,13 @@ MauvilleCity_PokemonCenter_1F_Text_BikeTradesStory:: @ 828EB3E .string "{STR_VAR_3} must love BIKES deeply\n" .string "and passionately!$" -MauvilleCity_PokemonCenter_1F_Text_InterviewsTitle:: @ 828EBB5 +MauvilleCity_PokemonCenter_1F_Text_InterviewsTitle:: .string "The Interviewed TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_InterviewsAction:: @ 828EBCD +MauvilleCity_PokemonCenter_1F_Text_InterviewsAction:: .string "Got interviewed$" -MauvilleCity_PokemonCenter_1F_Text_InterviewsStory:: @ 828EBDD +MauvilleCity_PokemonCenter_1F_Text_InterviewsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER got interviewed\n" @@ -375,26 +375,26 @@ MauvilleCity_PokemonCenter_1F_Text_InterviewsStory:: @ 828EBDD .string "{STR_VAR_3} must be a TRAINER who's\n" .string "attracting much attention!$" -MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesTitle:: @ 828EC60 +MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesTitle:: .string "The Battle-Happy TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesAction:: @ 828EC79 +MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesAction:: .string "Battled$" -MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesStory:: @ 828EC81 +MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER battled {STR_VAR_1} times!\p" .string "{STR_VAR_3} must be a TRAINER who can\n" .string "never refuse a chance to battle!$" -MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtTitle:: @ 828ED04 +MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtTitle:: .string "The POKéMON-Catching TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtAction:: @ 828ED21 +MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtAction:: .string "Caught POKéMON$" -MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtStory:: @ 828ED30 +MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER caught\n" @@ -402,13 +402,13 @@ MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtStory:: @ 828ED30 .string "{STR_VAR_3} is a legendary catcher of\n" .string "wild POKéMON!$" -MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtTitle:: @ 828EDA1 +MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtTitle:: .string "The Fishing TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtAction:: @ 828EDB5 +MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtAction:: .string "Caught POKéMON with a ROD$" -MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtStory:: @ 828EDCF +MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER caught\n" @@ -416,13 +416,13 @@ MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtStory:: @ 828EDCF .string "{STR_VAR_3} is a legendary fishing\n" .string "expert!$" -MauvilleCity_PokemonCenter_1F_Text_EggsHatchedTitle:: @ 828EE45 +MauvilleCity_PokemonCenter_1F_Text_EggsHatchedTitle:: .string "The EGG-Warming TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_EggsHatchedAction:: @ 828EE5D +MauvilleCity_PokemonCenter_1F_Text_EggsHatchedAction:: .string "Hatched EGGS$" -MauvilleCity_PokemonCenter_1F_Text_EggsHatchedStory:: @ 828EE6A +MauvilleCity_PokemonCenter_1F_Text_EggsHatchedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER hatched {STR_VAR_1} POKéMON\n" @@ -430,13 +430,13 @@ MauvilleCity_PokemonCenter_1F_Text_EggsHatchedStory:: @ 828EE6A .string "{STR_VAR_3} is a legendary warmer\n" .string "of EGGS!$" -MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedTitle:: @ 828EEDD +MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedTitle:: .string "The Evolver TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedAction:: @ 828EEF1 +MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedAction:: .string "Evolved POKéMON$" -MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedStory:: @ 828EF01 +MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER made {STR_VAR_1} POKéMON\n" @@ -444,13 +444,13 @@ MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedStory:: @ 828EF01 .string "{STR_VAR_3} is the ultimate evolver\n" .string "of POKéMON!$" -MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterTitle:: @ 828EF73 +MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterTitle:: .string "The POKéMON CENTER-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterAction:: @ 828EF95 +MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterAction:: .string "Used POKéMON CENTERS$" -MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterStory:: @ 828EFAA +MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER healed POKéMON\n" @@ -458,13 +458,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterStory:: @ 828EFAA .string "There could be no greater lover of\n" .string "POKéMON CENTERS than {STR_VAR_3}!$" -MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeTitle:: @ 828F045 +MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeTitle:: .string "The Homebody TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeAction:: @ 828F05A +MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeAction:: .string "Rested POKéMON at home$" -MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeStory:: @ 828F071 +MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER healed POKéMON\n" @@ -472,13 +472,13 @@ MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeStory:: @ 828F071 .string "There could be no more of a homebody\n" .string "than {STR_VAR_3}!$" -MauvilleCity_PokemonCenter_1F_Text_SafariGamesTitle:: @ 828F0F3 +MauvilleCity_PokemonCenter_1F_Text_SafariGamesTitle:: .string "The SAFARI-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_SafariGamesAction:: @ 828F10D +MauvilleCity_PokemonCenter_1F_Text_SafariGamesAction:: .string "Entered the SAFARI ZONE$" -MauvilleCity_PokemonCenter_1F_Text_SafariGamesStory:: @ 828F125 +MauvilleCity_PokemonCenter_1F_Text_SafariGamesStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER went into the SAFARI ZONE\n" @@ -486,13 +486,13 @@ MauvilleCity_PokemonCenter_1F_Text_SafariGamesStory:: @ 828F125 .string "{STR_VAR_3} is a TRAINER whose wild side\n" .string "must come out in the SAFARI ZONE!$" -MauvilleCity_PokemonCenter_1F_Text_UsedCutTitle:: @ 828F1BE +MauvilleCity_PokemonCenter_1F_Text_UsedCutTitle:: .string "The CUT-Frenzy TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedCutAction:: @ 828F1D5 +MauvilleCity_PokemonCenter_1F_Text_UsedCutAction:: .string "Used CUT$" -MauvilleCity_PokemonCenter_1F_Text_UsedCutStory:: @ 828F1DE +MauvilleCity_PokemonCenter_1F_Text_UsedCutStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER used CUT\n" @@ -500,13 +500,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedCutStory:: @ 828F1DE .string "{STR_VAR_3} is a TRAINER who just must\n" .string "love to CUT!$" -MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashTitle:: @ 828F24F +MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashTitle:: .string "The ROCK-SMASHING TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashAction:: @ 828F269 +MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashAction:: .string "Smashed rocks$" -MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashStory:: @ 828F277 +MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER used ROCK SMASH\n" @@ -514,13 +514,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashStory:: @ 828F277 .string "{STR_VAR_3} must be a TRAINER who\n" .string "can't leave a stone unsmashed!$" -MauvilleCity_PokemonCenter_1F_Text_MovedBasesTitle:: @ 828F2FC +MauvilleCity_PokemonCenter_1F_Text_MovedBasesTitle:: .string "The Move-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_MovedBasesAction:: @ 828F314 +MauvilleCity_PokemonCenter_1F_Text_MovedBasesAction:: .string "Moved the SECRET BASE$" -MauvilleCity_PokemonCenter_1F_Text_MovedBasesStory:: @ 828F32A +MauvilleCity_PokemonCenter_1F_Text_MovedBasesStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER moved the SECRET BASE\n" @@ -528,13 +528,13 @@ MauvilleCity_PokemonCenter_1F_Text_MovedBasesStory:: @ 828F32A .string "{STR_VAR_3} is a TRAINER who loves\n" .string "to move houses often!$" -MauvilleCity_PokemonCenter_1F_Text_UsedSplashTitle:: @ 828F3AD +MauvilleCity_PokemonCenter_1F_Text_UsedSplashTitle:: .string "The SPLASH-Happy TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedSplashAction:: @ 828F3C6 +MauvilleCity_PokemonCenter_1F_Text_UsedSplashAction:: .string "Used SPLASH$" -MauvilleCity_PokemonCenter_1F_Text_UsedSplashStory:: @ 828F3D2 +MauvilleCity_PokemonCenter_1F_Text_UsedSplashStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER used SPLASH\n" @@ -542,13 +542,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedSplashStory:: @ 828F3D2 .string "{STR_VAR_3} is a TRAINER who must love\n" .string "SPLASHING around!$" -MauvilleCity_PokemonCenter_1F_Text_UsedStruggleTitle:: @ 828F44B +MauvilleCity_PokemonCenter_1F_Text_UsedStruggleTitle:: .string "The Tenacious TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedStruggleAction:: @ 828F461 +MauvilleCity_PokemonCenter_1F_Text_UsedStruggleAction:: .string "Resorted to using STRUGGLE$" -MauvilleCity_PokemonCenter_1F_Text_UsedStruggleStory:: @ 828F47C +MauvilleCity_PokemonCenter_1F_Text_UsedStruggleStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER had to rely on STRUGGLE\n" @@ -556,13 +556,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedStruggleStory:: @ 828F47C .string "{STR_VAR_3} is a tenacious TRAINER\n" .string "who never gives in to adversity!$" -MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsTitle:: @ 828F50C +MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsTitle:: .string "The SLOT Champ$" -MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsAction:: @ 828F51B +MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsAction:: .string "Won the jackpot on the SLOTS$" -MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsStory:: @ 828F538 +MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER won the jackpot on\n" @@ -570,13 +570,13 @@ MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsStory:: @ 828F538 .string "{STR_VAR_3} is a TRAINER who was lucky\n" .string "on the SLOTS!$" -MauvilleCity_PokemonCenter_1F_Text_RouletteWinsTitle:: @ 828F5BE +MauvilleCity_PokemonCenter_1F_Text_RouletteWinsTitle:: .string "The ROULETTE Champ$" -MauvilleCity_PokemonCenter_1F_Text_RouletteWinsAction:: @ 828F5D1 +MauvilleCity_PokemonCenter_1F_Text_RouletteWinsAction:: .string "Had consecutive ROULETTE wins of$" -MauvilleCity_PokemonCenter_1F_Text_RouletteWinsStory:: @ 828F5F2 +MauvilleCity_PokemonCenter_1F_Text_RouletteWinsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER won in ROULETTE\n" @@ -584,13 +584,13 @@ MauvilleCity_PokemonCenter_1F_Text_RouletteWinsStory:: @ 828F5F2 .string "{STR_VAR_3} was lucky when the ball\n" .string "bounced in ROULETTE!$" -MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesTitle:: @ 828F678 +MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesTitle:: .string "The BATTLE TOWER Challenger$" -MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesAction:: @ 828F694 +MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesAction:: .string "Took the BATTLE TOWER challenge$" -MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesStory:: @ 828F6B4 +MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER took the BATTLE TOWER\n" @@ -598,13 +598,13 @@ MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesStory:: @ 828F6B4 .string "{STR_VAR_3} is a TRAINER who aspires\n" .string "for excellence in the BATTLE TOWER!$" -MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksTitle:: @ 828F751 +MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksTitle:: .string "The Blend-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksAction:: @ 828F76A +MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksAction:: .string "Made {POKEBLOCK}S$" -MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksStory:: @ 828F776 +MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER made {POKEBLOCK}S\n" @@ -612,13 +612,13 @@ MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksStory:: @ 828F776 .string "There is none better at using a BERRY\n" .string "BLENDER than {STR_VAR_3}!$" -MauvilleCity_PokemonCenter_1F_Text_EnteredContestsTitle:: @ 828F7F6 +MauvilleCity_PokemonCenter_1F_Text_EnteredContestsTitle:: .string "The CONTEST-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_EnteredContestsAction:: @ 828F811 +MauvilleCity_PokemonCenter_1F_Text_EnteredContestsAction:: .string "Entered CONTESTS$" -MauvilleCity_PokemonCenter_1F_Text_EnteredContestsStory:: @ 828F822 +MauvilleCity_PokemonCenter_1F_Text_EnteredContestsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER entered CONTESTS\n" @@ -626,13 +626,13 @@ MauvilleCity_PokemonCenter_1F_Text_EnteredContestsStory:: @ 828F822 .string "{STR_VAR_3} must love showing off\n" .string "POKéMON to others!$" -MauvilleCity_PokemonCenter_1F_Text_WonContestsTitle:: @ 828F89C +MauvilleCity_PokemonCenter_1F_Text_WonContestsTitle:: .string "The CONTEST Master$" -MauvilleCity_PokemonCenter_1F_Text_WonContestsAction:: @ 828F8AF +MauvilleCity_PokemonCenter_1F_Text_WonContestsAction:: .string "Won CONTESTS$" -MauvilleCity_PokemonCenter_1F_Text_WonContestsStory:: @ 828F8BC +MauvilleCity_PokemonCenter_1F_Text_WonContestsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER won CONTESTS\n" @@ -640,13 +640,13 @@ MauvilleCity_PokemonCenter_1F_Text_WonContestsStory:: @ 828F8BC .string "{STR_VAR_3} must be an incredible\n" .string "CONTEST master!$" -MauvilleCity_PokemonCenter_1F_Text_TimesShoppedTitle:: @ 828F92F +MauvilleCity_PokemonCenter_1F_Text_TimesShoppedTitle:: .string "The Happy Shopper$" -MauvilleCity_PokemonCenter_1F_Text_TimesShoppedAction:: @ 828F941 +MauvilleCity_PokemonCenter_1F_Text_TimesShoppedAction:: .string "Shopped$" -MauvilleCity_PokemonCenter_1F_Text_TimesShoppedStory:: @ 828F949 +MauvilleCity_PokemonCenter_1F_Text_TimesShoppedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER bought items in shops\n" @@ -654,13 +654,13 @@ MauvilleCity_PokemonCenter_1F_Text_TimesShoppedStory:: @ 828F949 .string "{STR_VAR_3} must be one of those\n" .string "people who are born to shop.$" -MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderTitle:: @ 828F9D1 +MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderTitle:: .string "The Item-Finding TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderAction:: @ 828F9EA +MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderAction:: .string "Used an ITEMFINDER$" -MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderStory:: @ 828F9FD +MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER used an ITEMFINDER\n" @@ -668,13 +668,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderStory:: @ 828F9FD .string "{STR_VAR_3} must enjoy scouring the\n" .string "ground for hidden items!$" -MauvilleCity_PokemonCenter_1F_Text_TimesRainedTitle:: @ 828FA81 +MauvilleCity_PokemonCenter_1F_Text_TimesRainedTitle:: .string "The Rain-Soaked TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_TimesRainedAction:: @ 828FA99 +MauvilleCity_PokemonCenter_1F_Text_TimesRainedAction:: .string "Got rained on$" -MauvilleCity_PokemonCenter_1F_Text_TimesRainedStory:: @ 828FAA7 +MauvilleCity_PokemonCenter_1F_Text_TimesRainedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER got soaked by rain\n" @@ -682,13 +682,13 @@ MauvilleCity_PokemonCenter_1F_Text_TimesRainedStory:: @ 828FAA7 .string "{STR_VAR_3}'s charisma must even\n" .string "attract rain!$" -MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexTitle:: @ 828FB1D +MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexTitle:: .string "The Avid POKéDEX Reader$" -MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexAction:: @ 828FB35 +MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexAction:: .string "Checked a POKéDEX$" -MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexStory:: @ 828FB47 +MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER checked a POKéDEX\n" @@ -696,13 +696,13 @@ MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexStory:: @ 828FB47 .string "{STR_VAR_3} must love inspecting\n" .string "POKéMON in a POKéDEX!$" -MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsTitle:: @ 828FBC4 +MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsTitle:: .string "The RIBBON Collector$" -MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsAction:: @ 828FBD9 +MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsAction:: .string "Received RIBBONS$" -MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsStory:: @ 828FBEA +MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER received RIBBONS\n" @@ -710,13 +710,13 @@ MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsStory:: @ 828FBEA .string "{STR_VAR_3} must be a TRAINER who\n" .string "loves to collect RIBBONS!$" -MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedTitle:: @ 828FC6B +MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedTitle:: .string "The Ledge-Jumping TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedAction:: @ 828FC85 +MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedAction:: .string "Jumped down ledges$" -MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedStory:: @ 828FC98 +MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER jumped down ledges\n" @@ -724,26 +724,26 @@ MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedStory:: @ 828FC98 .string "If there's a ledge to be jumped,\n" .string "{STR_VAR_3} can't ignore it!$" -MauvilleCity_PokemonCenter_1F_Text_TVWatchedTitle:: @ 828FD1D +MauvilleCity_PokemonCenter_1F_Text_TVWatchedTitle:: .string "The Legendary TV Viewer$" -MauvilleCity_PokemonCenter_1F_Text_TVWatchedAction:: @ 828FD35 +MauvilleCity_PokemonCenter_1F_Text_TVWatchedAction:: .string "Watched TV$" -MauvilleCity_PokemonCenter_1F_Text_TVWatchedStory:: @ 828FD40 +MauvilleCity_PokemonCenter_1F_Text_TVWatchedStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER watched TV\n" .string "{STR_VAR_1} times!\p" .string "{STR_VAR_3} must love watching TV!$" -MauvilleCity_PokemonCenter_1F_Text_CheckedClockTitle:: @ 828FDA2 +MauvilleCity_PokemonCenter_1F_Text_CheckedClockTitle:: .string "The Time-Conscious TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_CheckedClockAction:: @ 828FDBD +MauvilleCity_PokemonCenter_1F_Text_CheckedClockAction:: .string "Checked the time$" -MauvilleCity_PokemonCenter_1F_Text_CheckedClockStory:: @ 828FDCE +MauvilleCity_PokemonCenter_1F_Text_CheckedClockStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER checked the time\n" @@ -751,13 +751,13 @@ MauvilleCity_PokemonCenter_1F_Text_CheckedClockStory:: @ 828FDCE .string "{STR_VAR_3} must be a punctual TRAINER\n" .string "who's conscious of the time.$" -MauvilleCity_PokemonCenter_1F_Text_WonLotteryTitle:: @ 828FE57 +MauvilleCity_PokemonCenter_1F_Text_WonLotteryTitle:: .string "The POKéMON LOTTERY Wizard$" -MauvilleCity_PokemonCenter_1F_Text_WonLotteryAction:: @ 828FE72 +MauvilleCity_PokemonCenter_1F_Text_WonLotteryAction:: .string "Won POKéMON LOTTERIES$" -MauvilleCity_PokemonCenter_1F_Text_WonLotteryStory:: @ 828FE88 +MauvilleCity_PokemonCenter_1F_Text_WonLotteryStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER won POKéMON LOTTERIES\n" @@ -765,13 +765,13 @@ MauvilleCity_PokemonCenter_1F_Text_WonLotteryStory:: @ 828FE88 .string "{STR_VAR_3} must have many friends\n" .string "to trade POKéMON with!$" -MauvilleCity_PokemonCenter_1F_Text_UsedDaycareTitle:: @ 828FF0C +MauvilleCity_PokemonCenter_1F_Text_UsedDaycareTitle:: .string "The DAY CARE-Using Trainer$" -MauvilleCity_PokemonCenter_1F_Text_UsedDaycareAction:: @ 828FF27 +MauvilleCity_PokemonCenter_1F_Text_UsedDaycareAction:: .string "Left POKéMON at the DAY CARE$" -MauvilleCity_PokemonCenter_1F_Text_UsedDaycareStory:: @ 828FF44 +MauvilleCity_PokemonCenter_1F_Text_UsedDaycareStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER left POKéMON with the\n" @@ -779,13 +779,13 @@ MauvilleCity_PokemonCenter_1F_Text_UsedDaycareStory:: @ 828FF44 .string "{STR_VAR_3} must be a real go-getter\n" .string "who raises POKéMON aggressively!$" -MauvilleCity_PokemonCenter_1F_Text_RodeCableCarTitle:: @ 828FFDD +MauvilleCity_PokemonCenter_1F_Text_RodeCableCarTitle:: .string "The CABLE CAR-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_RodeCableCarAction:: @ 828FFFA +MauvilleCity_PokemonCenter_1F_Text_RodeCableCarAction:: .string "Rode the CABLE CAR$" -MauvilleCity_PokemonCenter_1F_Text_RodeCableCarStory:: @ 829000D +MauvilleCity_PokemonCenter_1F_Text_RodeCableCarStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER rode the CABLE CAR\n" @@ -793,13 +793,13 @@ MauvilleCity_PokemonCenter_1F_Text_RodeCableCarStory:: @ 829000D .string "{STR_VAR_3} must be a busy TRAINER\n" .string "who's up and down all the time!$" -MauvilleCity_PokemonCenter_1F_Text_HotSpringsTitle:: @ 8290097 +MauvilleCity_PokemonCenter_1F_Text_HotSpringsTitle:: .string "The Hot Spring-Loving TRAINER$" -MauvilleCity_PokemonCenter_1F_Text_HotSpringsAction:: @ 82900B5 +MauvilleCity_PokemonCenter_1F_Text_HotSpringsAction:: .string "Bathed in hot springs$" -MauvilleCity_PokemonCenter_1F_Text_HotSpringsStory:: @ 82900CB +MauvilleCity_PokemonCenter_1F_Text_HotSpringsStory:: .string "This is a tale of a TRAINER\n" .string "named {STR_VAR_3}.\p" .string "This TRAINER bathed in hot springs\n" @@ -808,7 +808,7 @@ MauvilleCity_PokemonCenter_1F_Text_HotSpringsStory:: @ 82900CB .string "baby-smooth skin!$" -MauvilleCity_PokemonCenter_1F_EventScript_Storyteller:: @ 829014A +MauvilleCity_PokemonCenter_1F_EventScript_Storyteller:: lock faceplayer setvar VAR_0x8008, 0 @@ -836,20 +836,20 @@ MauvilleCity_PokemonCenter_1F_EventScript_Storyteller:: @ 829014A goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales goto MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale -MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection:: @ 82901B7 +MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection:: goto MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller end -MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales:: @ 82901BD +MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_CouldThereBeOtherLegends, MSGBOX_DEFAULT specialvar VAR_RESULT, ScrSpecial_HasStorytellerAlreadyRecorded compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd goto MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales -MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales:: @ 82901DA +MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_IKnowNoTales, MSGBOX_DEFAULT -MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales:: @ 82901E2 +MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_HaveYouAnyLegendaryTales, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller @@ -860,45 +860,45 @@ MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales:: @ 82901E2 release end -MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale:: @ 829020F +MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale:: msgbox MauvilleCity_PokemonCenter_1F_Text_YouDidStatXTimes, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller:: @ 8290219 +MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller:: msgbox MauvilleCity_PokemonCenter_1F_Text_StorytellerFeelingTheBlues, MSGBOX_DEFAULT release end @ Unused -MauvilleCity_PokemonCenter_1F_EventScript_WaitingForRecordMix:: @ 8290223 +MauvilleCity_PokemonCenter_1F_EventScript_WaitingForRecordMix:: msgbox MauvilleCity_PokemonCenter_1F_Text_IWishMorePeopleWereInterested, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd:: @ 829022D +MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd:: release end @ Giddy -MauvilleCity_PokemonCenter_1F_Text_HearMyStory: @ 829022F +MauvilleCity_PokemonCenter_1F_Text_HearMyStory: .string "I'm GIDDY!\n" .string "I have a scintillating story for you!\p" .string "Would you like to hear my story?$" -MauvilleCity_PokemonCenter_1F_Text_GiddyFeelingTheBlues: @ 8290281 +MauvilleCity_PokemonCenter_1F_Text_GiddyFeelingTheBlues: .string "Oh…\n" .string "You've left me feeling the blues…$" -MauvilleCity_PokemonCenter_1F_Text_AlsoIWasThinking: @ 82902A7 +MauvilleCity_PokemonCenter_1F_Text_AlsoIWasThinking: .string "Also, I was thinking…$" -MauvilleCity_PokemonCenter_1F_Text_WeShouldChatAgain: @ 82902BD +MauvilleCity_PokemonCenter_1F_Text_WeShouldChatAgain: .string "That's about it, I think…\p" .string "We should chat again!\n" .string "Bye-bye!$" -MauvilleCity_PokemonCenter_1F_EventScript_Giddy:: @ 82902F6 +MauvilleCity_PokemonCenter_1F_EventScript_Giddy:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_HearMyStory, MSGBOX_YESNO @@ -908,7 +908,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Giddy:: @ 82902F6 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy end -MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: @ 8290317 +MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: special ScrSpecial_GiddyShouldTellAnotherTale compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale @@ -916,7 +916,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: @ 8290317 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales end -MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale:: @ 8290331 +MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale:: special ScrSpecial_GiddyShouldTellAnotherTale compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale @@ -924,13 +924,13 @@ MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale:: @ 8290331 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales end -MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale:: @ 829034B +MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale:: msgbox MauvilleCity_PokemonCenter_1F_Text_AlsoIWasThinking, MSGBOX_DEFAULT goto MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale end @ Regardless of whether yes or no is selected below, Giddy will continue to tell stories until he's told 10 -MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale:: @ 8290359 +MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale:: special ScrSpecial_GenerateGiddyLine special ShowFieldMessageStringVar4 waitmessage @@ -941,29 +941,29 @@ MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale:: @ 8290359 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale end -MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy:: @ 829037A +MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy:: msgbox MauvilleCity_PokemonCenter_1F_Text_GiddyFeelingTheBlues, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales:: @ 8290384 +MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_WeShouldChatAgain, MSGBOX_DEFAULT release end -MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToHearMySong: @ 829038E +MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToHearMySong: .string "Hi, I'm the BARD.\n" .string "Would you like to hear my song?$" -MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues1: @ 82903C0 +MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues1: .string "Oh…\n" .string "You've left me feeling the blues…$" -MauvilleCity_PokemonCenter_1F_Text_WishICouldPlaySongForOthers: @ 82903E6 +MauvilleCity_PokemonCenter_1F_Text_WishICouldPlaySongForOthers: .string "Oh, what a moving song…\n" .string "I wish I could play it for others…$" -MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToWriteSomeLyrics: @ 8290421 +MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToWriteSomeLyrics: .string "So?\n" .string "How do you like my song?\p" .string "But I'm none too happy about\n" @@ -971,38 +971,38 @@ MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToWriteSomeLyrics: @ 8290421 .string "How would you like to write some\n" .string "new lyrics for me?$" -MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues2: @ 829049B +MauvilleCity_PokemonCenter_1F_Text_BardFeelingTheBlues2: .string "Oh…\n" .string "You've left me feeling the blues…$" -MauvilleCity_PokemonCenter_1F_Text_LetMeSingItForYou: @ 82904C1 +MauvilleCity_PokemonCenter_1F_Text_LetMeSingItForYou: .string "Thank you kindly!\n" .string "Let me sing it for you.$" -MauvilleCity_PokemonCenter_1F_Text_ThatHowYouWantedSongToGo: @ 82904EB +MauvilleCity_PokemonCenter_1F_Text_ThatHowYouWantedSongToGo: .string "Was that how you wanted your song\n" .string "to go?$" -MauvilleCity_PokemonCenter_1F_Text_IllSingThisSongForAWhile: @ 8290514 +MauvilleCity_PokemonCenter_1F_Text_IllSingThisSongForAWhile: .string "Okay! That's it, then.\n" .string "I'll sing this song for a while.$" -MauvilleCity_PokemonCenter_1F_Text_TeachWhatsHipAndHappening: @ 829054C +MauvilleCity_PokemonCenter_1F_Text_TeachWhatsHipAndHappening: .string "Hey, yo! They call me the HIPSTER.\n" .string "I'll teach you what's hip and happening.$" -MauvilleCity_PokemonCenter_1F_Text_IAlreadyTaughtYou: @ 8290598 +MauvilleCity_PokemonCenter_1F_Text_IAlreadyTaughtYou: .string "But, hey, I taught you what's hip and\n" .string "happening already.\p" .string "I'd like to spread the good word to\n" .string "other folks.$" -MauvilleCity_PokemonCenter_1F_Text_IveGotNothingNewToTeach: @ 8290602 +MauvilleCity_PokemonCenter_1F_Text_IveGotNothingNewToTeach: .string "But, hey, you already know a lot about\n" .string "what's hip and happening.\p" .string "I've got nothing new to teach you!$" -MauvilleCity_PokemonCenter_1F_Text_HaveYouHeardOfPhrase: @ 8290666 +MauvilleCity_PokemonCenter_1F_Text_HaveYouHeardOfPhrase: .string "Hey, have you heard about\n" .string "“{STR_VAR_1}”?\p" .string "What's it mean? Well…\n" diff --git a/data/scripts/mevent.inc b/data/scripts/mevent.inc index 731154315676..b33a332700c9 100644 --- a/data/scripts/mevent.inc +++ b/data/scripts/mevent.inc @@ -1,4 +1,4 @@ -EventScript_Questionnaire:: @ 827381B +EventScript_Questionnaire:: lockall msgbox Mevent_Text_FillOutQuestionnaire, MSGBOX_YESNO compare VAR_RESULT, NO @@ -18,7 +18,7 @@ EventScript_Questionnaire:: @ 827381B goto_if_eq Mevent_EventScript_QuestionnaireThankYou end -Mevent_EventScript_PlayerInputMysteryEventPhrase:: @ 827386D +Mevent_EventScript_PlayerInputMysteryEventPhrase:: goto_if_unset FLAG_SYS_POKEDEX_GET, Mevent_EventScript_QuestionnaireThankYou goto_if_set FLAG_SYS_MYSTERY_EVENT_ENABLE, Mevent_EventScript_QuestionnaireThankYou applymovement VAR_0x8008, Common_Movement_FaceDown @@ -34,7 +34,7 @@ Mevent_EventScript_PlayerInputMysteryEventPhrase:: @ 827386D releaseall end -Mevent_EventScript_PlayerInputMysteryGiftPhrase:: @ 82738B5 +Mevent_EventScript_PlayerInputMysteryGiftPhrase:: goto_if_unset FLAG_SYS_POKEDEX_GET, Mevent_EventScript_QuestionnaireThankYou goto_if_set FLAG_SYS_MYSTERY_GIFT_ENABLE, Mevent_EventScript_QuestionnaireThankYou applymovement VAR_0x8008, Common_Movement_FaceDown @@ -50,11 +50,11 @@ Mevent_EventScript_PlayerInputMysteryGiftPhrase:: @ 82738B5 releaseall end -Mevent_EventScript_Release:: @ 82738FD +Mevent_EventScript_Release:: releaseall end -Mevent_EventScript_QuestionnaireThankYou:: @ 82738FF +Mevent_EventScript_QuestionnaireThankYou:: applymovement VAR_0x8008, Common_Movement_FaceDown waitmovement 0 msgbox Mevent_Text_QuestionnaireThankYou, MSGBOX_DEFAULT diff --git a/data/scripts/mevent_altering_cave.inc b/data/scripts/mevent_altering_cave.inc index 499907edda68..7e9b0a758e2a 100644 --- a/data/scripts/mevent_altering_cave.inc +++ b/data/scripts/mevent_altering_cave.inc @@ -1,10 +1,10 @@ -MysteryEventScript_AlteringCave:: @ 86756E3 +MysteryEventScript_AlteringCave:: setvaddress MysteryEventScript_AlteringCave addvar VAR_ALTERING_CAVE_WILD_SET, 1 compare VAR_ALTERING_CAVE_WILD_SET, 10 vgoto_if_ne MysteryEventScript_AlteringCave_ setvar VAR_ALTERING_CAVE_WILD_SET, 0 -MysteryEventScript_AlteringCave_: @ 86756FD +MysteryEventScript_AlteringCave_: lock faceplayer vmessage sText_MysteryGiftAlteringCave diff --git a/data/scripts/mevent_aurora_ticket.inc b/data/scripts/mevent_aurora_ticket.inc index f26be068f3f2..9d733463814b 100644 --- a/data/scripts/mevent_aurora_ticket.inc +++ b/data/scripts/mevent_aurora_ticket.inc @@ -1,4 +1,4 @@ -MysteryEventScript_AuroraTicket:: @ 867533C +MysteryEventScript_AuroraTicket:: setvaddress MysteryEventScript_AuroraTicket lock faceplayer @@ -22,14 +22,14 @@ MysteryEventScript_AuroraTicket:: @ 867533C release end -AuroraTicket_NoBagSpace: @ 8675397 +AuroraTicket_NoBagSpace: vmessage sText_AuroraTicketBagFull waitmessage waitbuttonpress release end -AuroraTicket_Obtained: @ 86753A0 +AuroraTicket_Obtained: vmessage sText_AuroraTicketThankYou waitmessage waitbuttonpress diff --git a/data/scripts/mevent_battle_card.inc b/data/scripts/mevent_battle_card.inc index 70462bdd9e61..3a66297e13f2 100644 --- a/data/scripts/mevent_battle_card.inc +++ b/data/scripts/mevent_battle_card.inc @@ -1,4 +1,4 @@ -MysteryEventScript_BattleCard:: @ 867513C +MysteryEventScript_BattleCard:: setvaddress MysteryEventScript_BattleCard vgoto_if_set FLAG_MYSTERY_EVENT_DONE, MysteryEventScript_BattleCardInfo setorcopyvar VAR_RESULT, GET_CARD_BATTLES_WON @@ -15,7 +15,7 @@ MysteryEventScript_BattleCard:: @ 867513C setflag FLAG_MYSTERY_EVENT_DONE end -MysteryEventScript_BattleCardInfo: @ 8675179 +MysteryEventScript_BattleCardInfo: lock faceplayer vmessage sText_MysteryGiftBattleCountCard diff --git a/data/scripts/mevent_mystic_ticket.inc b/data/scripts/mevent_mystic_ticket.inc index 8f938dc33aeb..e085c5a59603 100644 --- a/data/scripts/mevent_mystic_ticket.inc +++ b/data/scripts/mevent_mystic_ticket.inc @@ -1,4 +1,4 @@ -MysteryEventScript_MysticTicket:: @ 867550B +MysteryEventScript_MysticTicket:: setvaddress MysteryEventScript_MysticTicket lock faceplayer @@ -23,14 +23,14 @@ MysteryEventScript_MysticTicket:: @ 867550B release end -MysticTicket_NoBagSpace: @ 867556F +MysticTicket_NoBagSpace: vmessage sText_MysticTicketBagFull waitmessage waitbuttonpress release end -MysticTicket_Obtained: @ 8675578 +MysticTicket_Obtained: vmessage sText_MysticTicketThankYou waitmessage waitbuttonpress diff --git a/data/scripts/mevent_old_sea_map.inc b/data/scripts/mevent_old_sea_map.inc index 0fb3c100283b..68714117b363 100644 --- a/data/scripts/mevent_old_sea_map.inc +++ b/data/scripts/mevent_old_sea_map.inc @@ -1,4 +1,4 @@ -MysteryEventScript_OldSeaMap:: @ 86757F4 +MysteryEventScript_OldSeaMap:: setvaddress MysteryEventScript_OldSeaMap lock faceplayer @@ -22,14 +22,14 @@ MysteryEventScript_OldSeaMap:: @ 86757F4 release end -OldSeaMap_NoBagSpace: @ 867584F +OldSeaMap_NoBagSpace: vmessage sText_MysteryGiftOldSeaMapBagFull waitmessage waitbuttonpress release end -OldSeaMap_Obtained: @ 8675858 +OldSeaMap_Obtained: vmessage sText_MysteryGiftOldSeaMapThankYou waitmessage waitbuttonpress diff --git a/data/scripts/mevent_pichu.inc b/data/scripts/mevent_pichu.inc index 2b9e09df9459..02b47b41f638 100644 --- a/data/scripts/mevent_pichu.inc +++ b/data/scripts/mevent_pichu.inc @@ -1,9 +1,9 @@ -MysteryEventScript_SurfPichu:: @ 8674D3D +MysteryEventScript_SurfPichu:: setvaddress MysteryEventScript_SurfPichu vgoto_if_unset FLAG_MYSTERY_EVENT_DONE, SurfPichu_GiveIfPossible returnram -SurfPichu_GiveIfPossible: @ 8674D4C +SurfPichu_GiveIfPossible: specialvar VAR_EVENT_PICHU_SLOT, CalculatePlayerPartyCount compare VAR_EVENT_PICHU_SLOT, PARTY_SIZE vgoto_if_eq SurfPichu_FullParty @@ -19,7 +19,7 @@ SurfPichu_GiveIfPossible: @ 8674D4C release end -SurfPichu_FullParty: @ 8674D73 +SurfPichu_FullParty: lock faceplayer vmessage sText_FullParty @@ -28,7 +28,7 @@ SurfPichu_FullParty: @ 8674D73 release end -SurfPichu_GiveEgg: @ 8674D7E +SurfPichu_GiveEgg: giveegg SPECIES_PICHU setmoneventlegal VAR_EVENT_PICHU_SLOT setmonmetlocation VAR_EVENT_PICHU_SLOT, METLOC_FATEFUL_ENCOUNTER @@ -44,23 +44,23 @@ SurfPichu_GiveEgg: @ 8674D7E vgoto_if_eq SurfPichu_Slot5 return -SurfPichu_Slot1: @ 8674DC0 +SurfPichu_Slot1: setmonmove 1, 2, MOVE_SURF return -SurfPichu_Slot2:: @ 8674DC6 +SurfPichu_Slot2:: setmonmove 2, 2, MOVE_SURF return -SurfPichu_Slot3: @ 8674DCC +SurfPichu_Slot3: setmonmove 3, 2, MOVE_SURF return -SurfPichu_Slot4: @ 8674DD2 +SurfPichu_Slot4: setmonmove 4, 2, MOVE_SURF return -SurfPichu_Slot5: @ 8674DD8 +SurfPichu_Slot5: setmonmove 5, 2, MOVE_SURF return diff --git a/data/scripts/mevent_stamp_card.inc b/data/scripts/mevent_stamp_card.inc index dcef80a5028c..eeb3618548fd 100644 --- a/data/scripts/mevent_stamp_card.inc +++ b/data/scripts/mevent_stamp_card.inc @@ -1,4 +1,4 @@ -MysteryEventScript_StampCard:: @ 8674CB0 +MysteryEventScript_StampCard:: setvaddress MysteryEventScript_StampCard setorcopyvar VAR_RESULT, GET_MAX_STAMPS specialvar VAR_0x8008, GetMysteryEventCardVal diff --git a/data/scripts/mevent_trainer.inc b/data/scripts/mevent_trainer.inc index 4114750d89aa..f4318408d2fc 100644 --- a/data/scripts/mevent_trainer.inc +++ b/data/scripts/mevent_trainer.inc @@ -1,4 +1,4 @@ -MysteryEventScript_VisitingTrainer:: @ 8674EC1 +MysteryEventScript_VisitingTrainer:: setvaddress MysteryEventScript_VisitingTrainer special ValidateEReaderTrainer compare VAR_RESULT, 0 @@ -11,7 +11,7 @@ MysteryEventScript_VisitingTrainer:: @ 8674EC1 release end -MysteryEventScript_VisitingTrainerArrived: @ 8674EDF +MysteryEventScript_VisitingTrainerArrived: lock faceplayer vmessage sText_MysteryGiftVisitingTrainerArrived diff --git a/data/scripts/move_tutors.inc b/data/scripts/move_tutors.inc index a7807ce51bf7..cc952749d421 100644 --- a/data/scripts/move_tutors.inc +++ b/data/scripts/move_tutors.inc @@ -1,4 +1,4 @@ -SlateportCity_PokemonFanClub_EventScript_SwaggerTutor:: @ 82C7F16 +SlateportCity_PokemonFanClub_EventScript_SwaggerTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SWAGGER, MoveTutor_EventScript_SwaggerTaught @@ -17,17 +17,17 @@ SlateportCity_PokemonFanClub_EventScript_SwaggerTutor:: @ 82C7F16 goto MoveTutor_EventScript_SwaggerTaught end -MoveTutor_EventScript_SwaggerDeclined:: @ 82C7F6A +MoveTutor_EventScript_SwaggerDeclined:: msgbox MoveTutor_Text_SwaggerDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_SwaggerTaught:: @ 82C7F74 +MoveTutor_EventScript_SwaggerTaught:: msgbox MoveTutor_Text_SwaggerTaught, MSGBOX_DEFAULT release end -MauvilleCity_EventScript_RolloutTutor:: @ 82C7F7E +MauvilleCity_EventScript_RolloutTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT, MoveTutor_EventScript_RolloutTaught @@ -46,17 +46,17 @@ MauvilleCity_EventScript_RolloutTutor:: @ 82C7F7E goto MoveTutor_EventScript_RolloutTaught end -MoveTutor_EventScript_RolloutDeclined:: @ 82C7FD2 +MoveTutor_EventScript_RolloutDeclined:: msgbox MoveTutor_Text_RolloutDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_RolloutTaught:: @ 82C7FDC +MoveTutor_EventScript_RolloutTaught:: msgbox MoveTutor_Text_RolloutTaught, MSGBOX_DEFAULT release end -VerdanturfTown_PokemonCenter_1F_EventScript_FuryCutterTutor:: @ 82C7FE6 +VerdanturfTown_PokemonCenter_1F_EventScript_FuryCutterTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER, MoveTutor_EventScript_FuryCutterTaught @@ -75,17 +75,17 @@ VerdanturfTown_PokemonCenter_1F_EventScript_FuryCutterTutor:: @ 82C7FE6 goto MoveTutor_EventScript_FuryCutterTaught end -MoveTutor_EventScript_FuryCutterDeclined:: @ 82C803A +MoveTutor_EventScript_FuryCutterDeclined:: msgbox MoveTutor_Text_FuryCutterDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_FuryCutterTaught:: @ 82C8044 +MoveTutor_EventScript_FuryCutterTaught:: msgbox MoveTutor_Text_FuryCutterTaught, MSGBOX_DEFAULT release end -LavaridgeTown_House_EventScript_MimicTutor:: @ 82C804E +LavaridgeTown_House_EventScript_MimicTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_MIMIC, MoveTutor_EventScript_MimicTaught @@ -104,17 +104,17 @@ LavaridgeTown_House_EventScript_MimicTutor:: @ 82C804E goto MoveTutor_EventScript_MimicTaught end -MoveTutor_EventScript_MimicDeclined:: @ 82C80A2 +MoveTutor_EventScript_MimicDeclined:: msgbox MoveTutor_MimicDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_MimicTaught:: @ 82C80AC +MoveTutor_EventScript_MimicTaught:: msgbox MoveTutor_Text_MimicTaught, MSGBOX_DEFAULT release end -FallarborTown_Mart_EventScript_MetronomeTutor:: @ 82C80B6 +FallarborTown_Mart_EventScript_MetronomeTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_METRONOME, MoveTutor_EventScript_MetronomeTaught @@ -133,17 +133,17 @@ FallarborTown_Mart_EventScript_MetronomeTutor:: @ 82C80B6 goto MoveTutor_EventScript_MetronomeTaught end -MoveTutor_EventScript_MetronomeDeclined:: @ 82C810A +MoveTutor_EventScript_MetronomeDeclined:: msgbox MoveTutor_Text_MetronomeDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_MetronomeTaught:: @ 82C8114 +MoveTutor_EventScript_MetronomeTaught:: msgbox MoveTutor_Text_MetronomeTaught, MSGBOX_DEFAULT release end -FortreeCity_House2_EventScript_SleepTalkTutor:: @ 82C811E +FortreeCity_House2_EventScript_SleepTalkTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK, MoveTutor_EventScript_SleepTalkTaught @@ -162,17 +162,17 @@ FortreeCity_House2_EventScript_SleepTalkTutor:: @ 82C811E goto MoveTutor_EventScript_SleepTalkTaught end -MoveTutor_EventScript_SleepTalkDeclined:: @ 82C8172 +MoveTutor_EventScript_SleepTalkDeclined:: msgbox MoveTutor_Text_SleepTalkDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_SleepTalkTaught:: @ 82C817C +MoveTutor_EventScript_SleepTalkTaught:: msgbox MoveTutor_Text_SleepTalkTaught, MSGBOX_DEFAULT release end -LilycoveCity_DepartmentStoreRooftop_EventScript_SubstituteTutor:: @ 82C8186 +LilycoveCity_DepartmentStoreRooftop_EventScript_SubstituteTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE, MoveTutor_EventScript_SubstituteTaught @@ -191,17 +191,17 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_SubstituteTutor:: @ 82C8186 goto MoveTutor_EventScript_SubstituteTaught end -MoveTutor_EventScript_SubstituteDeclined:: @ 82C81DA +MoveTutor_EventScript_SubstituteDeclined:: msgbox MoveTutor_Text_SubstituteDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_SubstituteTaught:: @ 82C81E4 +MoveTutor_EventScript_SubstituteTaught:: msgbox MoveTutor_Text_SubstituteTaught, MSGBOX_DEFAULT release end -MossdeepCity_EventScript_DynamicPunchTutor:: @ 82C81EE +MossdeepCity_EventScript_DynamicPunchTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH, MoveTutor_EventScript_DynamicPunchTaught @@ -220,17 +220,17 @@ MossdeepCity_EventScript_DynamicPunchTutor:: @ 82C81EE goto MoveTutor_EventScript_DynamicPunchTaught end -MoveTutor_EventScript_DynamicPunchDeclined:: @ 82C8242 +MoveTutor_EventScript_DynamicPunchDeclined:: msgbox MoveTutor_Text_DynamicPunchDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_DynamicPunchTaught:: @ 82C824C +MoveTutor_EventScript_DynamicPunchTaught:: msgbox MoveTutor_Text_DynamicPunchTaught, MSGBOX_DEFAULT release end -SootopolisCity_PokemonCenter_1F_EventScript_DoubleEdgeTutor:: @ 82C8256 +SootopolisCity_PokemonCenter_1F_EventScript_DoubleEdgeTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE, MoveTutor_EventScript_DoubleEdgeTaught @@ -249,17 +249,17 @@ SootopolisCity_PokemonCenter_1F_EventScript_DoubleEdgeTutor:: @ 82C8256 goto MoveTutor_EventScript_DoubleEdgeTaught end -MoveTutor_EventScript_DoubleEdgeDeclined:: @ 82C82AA +MoveTutor_EventScript_DoubleEdgeDeclined:: msgbox MoveTutor_Text_DoubleEdgeDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_DoubleEdgeTaught:: @ 82C82B4 +MoveTutor_EventScript_DoubleEdgeTaught:: msgbox MoveTutor_Text_DoubleEdgeTaught, MSGBOX_DEFAULT release end -PacifidlogTown_PokemonCenter_1F_EventScript_ExplosionTutor:: @ 82C82BE +PacifidlogTown_PokemonCenter_1F_EventScript_ExplosionTutor:: lock faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION, MoveTutor_EventScript_ExplosionTaught @@ -278,23 +278,23 @@ PacifidlogTown_PokemonCenter_1F_EventScript_ExplosionTutor:: @ 82C82BE goto MoveTutor_EventScript_ExplosionTaught end -MoveTutor_EventScript_ExplosionDeclined:: @ 82C8312 +MoveTutor_EventScript_ExplosionDeclined:: msgbox MoveTutor_Text_ExplosionDeclined, MSGBOX_DEFAULT release end -MoveTutor_EventScript_ExplosionTaught:: @ 82C831C +MoveTutor_EventScript_ExplosionTaught:: msgbox MoveTutor_Text_ExplosionTaught, MSGBOX_DEFAULT release end -MoveTutor_EventScript_OpenPartyMenu:: @ 82C8326 +MoveTutor_EventScript_OpenPartyMenu:: special ChooseMonForMoveTutor waitstate lock faceplayer return -MoveTutor_EventScript_CanOnlyBeLearnedOnce:: @ 82C832D +MoveTutor_EventScript_CanOnlyBeLearnedOnce:: msgbox MoveTutor_Text_ThisMoveCanOnlyBeLearnedOnce, MSGBOX_YESNO return diff --git a/data/scripts/movement.inc b/data/scripts/movement.inc index 3dd1a8144216..3f75d30dd4e0 100644 --- a/data/scripts/movement.inc +++ b/data/scripts/movement.inc @@ -1,74 +1,74 @@ -Common_Movement_QuestionMark: @ 8272596 +Common_Movement_QuestionMark: emote_question_mark step_end -Common_Movement_ExclamationMark: @ 8272598 +Common_Movement_ExclamationMark: emote_exclamation_mark step_end -Common_Movement_Delay48: @ 827259A +Common_Movement_Delay48: delay_16 delay_16 delay_16 step_end -Common_Movement_FacePlayer: @ 827259E +Common_Movement_FacePlayer: face_player step_end -Common_Movement_FaceAwayPlayer: @ 82725A0 +Common_Movement_FaceAwayPlayer: face_away_player step_end -Common_Movement_FaceOriginalDirection: @ 82725A2 +Common_Movement_FaceOriginalDirection: face_original_direction step_end -Common_Movement_WalkInPlaceFastestLeft: @ 82725A4 +Common_Movement_WalkInPlaceFastestLeft: walk_in_place_fastest_left step_end -Common_Movement_WalkInPlaceFastestUp: @ 82725A6 +Common_Movement_WalkInPlaceFastestUp: walk_in_place_fastest_up step_end -Common_Movement_WalkInPlaceFastestRight: @ 82725A8 +Common_Movement_WalkInPlaceFastestRight: walk_in_place_fastest_right step_end -Common_Movement_WalkInPlaceFastestDown: @ 82725AA +Common_Movement_WalkInPlaceFastestDown: walk_in_place_fastest_down step_end -Common_Movement_FaceRight: @ 82725AC +Common_Movement_FaceRight: face_right step_end -Common_Movement_FaceLeft: @ 82725AE +Common_Movement_FaceLeft: face_left step_end -Common_Movement_FaceDown: @ 82725B0 +Common_Movement_FaceDown: face_down step_end -Common_Movement_FaceUp: @ 82725B2 +Common_Movement_FaceUp: face_up step_end -Common_Movement_WalkInPlaceDown: @ 82725B4 +Common_Movement_WalkInPlaceDown: walk_in_place_down step_end -Common_Movement_WalkInPlaceLeft: @ 82725B6 +Common_Movement_WalkInPlaceLeft: walk_in_place_left step_end -Common_Movement_WalkInPlaceRight: @ 82725B8 +Common_Movement_WalkInPlaceRight: walk_in_place_right step_end -Common_Movement_WalkUp6: @ 82725BA +Common_Movement_WalkUp6: walk_up walk_up walk_up @@ -77,24 +77,24 @@ Common_Movement_WalkUp6: @ 82725BA walk_up step_end -Common_Movement_WalkUp4: @ 82725C1 +Common_Movement_WalkUp4: walk_up walk_up walk_up walk_up step_end -Common_Movement_Delay32: @ 82725C6 +Common_Movement_Delay32: delay_16 delay_16 step_end -Common_Movement_WalkUp: @ 82725C9 +Common_Movement_WalkUp: walk_up step_end @ Unused -Common_Movement_WalkUp2:: @ 82725CB +Common_Movement_WalkUp2:: walk_up walk_up step_end diff --git a/data/scripts/mystery_event_club.inc b/data/scripts/mystery_event_club.inc index 77d24adf6b5b..f0cb55998388 100644 --- a/data/scripts/mystery_event_club.inc +++ b/data/scripts/mystery_event_club.inc @@ -1,4 +1,4 @@ -MysteryEventClub_EventScript_Man:: @ 8291539 +MysteryEventClub_EventScript_Man:: lock faceplayer goto_if_set FLAG_SYS_CHAT_USED, MysteryEventClub_EventScript_GivenProfileBefore @@ -6,7 +6,7 @@ MysteryEventClub_EventScript_Man:: @ 8291539 goto MysteryEventClub_EventScript_AskToSeeProfile end -MysteryEventClub_EventScript_AskToSeeProfile:: @ 8291552 +MysteryEventClub_EventScript_AskToSeeProfile:: msgbox MysteryEventClub_Text_MayISeeYourProfile, MSGBOX_DEFAULT multichoice 17, 6, MULTI_YESNOINFO_2, FALSE switch VAR_RESULT @@ -16,12 +16,12 @@ MysteryEventClub_EventScript_AskToSeeProfile:: @ 8291552 case MULTI_B_PRESSED, MysteryEventClub_EventScript_DeclineShowProfile end -MysteryEventClub_EventScript_Info:: @ 8291591 +MysteryEventClub_EventScript_Info:: msgbox MysteryEventClub_Text_EasyChatExplanation, MSGBOX_DEFAULT goto MysteryEventClub_EventScript_AskToSeeProfile end -MysteryEventClub_EventScript_CreateProfile:: @ 829159F +MysteryEventClub_EventScript_CreateProfile:: msgbox MysteryEventClub_Text_LetsSeeItThen, MSGBOX_DEFAULT closemessage setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE @@ -34,12 +34,12 @@ MysteryEventClub_EventScript_CreateProfile:: @ 829159F goto_if_eq MysteryEventClub_EventScript_ShowProfile end -MysteryEventClub_EventScript_CancelShowProfile:: @ 82915CB +MysteryEventClub_EventScript_CancelShowProfile:: msgbox MysteryEventClub_Text_NotIntoItRightNow, MSGBOX_DEFAULT release end -MysteryEventClub_EventScript_ShowProfile:: @ 82915D5 +MysteryEventClub_EventScript_ShowProfile:: setvar VAR_0x8004, 0 special ShowEasyChatProfile waitmessage @@ -48,17 +48,17 @@ MysteryEventClub_EventScript_ShowProfile:: @ 82915D5 release end -MysteryEventClub_EventScript_DeclineShowProfile:: @ 82915EB +MysteryEventClub_EventScript_DeclineShowProfile:: msgbox MysteryEventClub_Text_ImagineYouWouldHaveWonderfulProfile, MSGBOX_DEFAULT release end -MysteryEventClub_EventScript_GivenProfileBefore:: @ 82915F5 +MysteryEventClub_EventScript_GivenProfileBefore:: msgbox MysteryEventClub_Text_YouHaveWonderfulSmile, MSGBOX_DEFAULT goto MysteryEventClub_EventScript_AskToSeeNewProfile end -MysteryEventClub_EventScript_AskToSeeNewProfile:: @ 8291603 +MysteryEventClub_EventScript_AskToSeeNewProfile:: msgbox MysteryEventClub_Text_MayISeeYourNewProfile, MSGBOX_DEFAULT multichoice 17, 6, MULTI_YESNOINFO_2, FALSE switch VAR_RESULT @@ -68,12 +68,12 @@ MysteryEventClub_EventScript_AskToSeeNewProfile:: @ 8291603 case MULTI_B_PRESSED, MysteryEventClub_EventScript_DeclineNewProfile end -MysteryEventClub_EventScript_InfoNewProfile:: @ 8291642 +MysteryEventClub_EventScript_InfoNewProfile:: msgbox MysteryEventClub_Text_EasyChatExplanation, MSGBOX_DEFAULT goto MysteryEventClub_EventScript_AskToSeeNewProfile end -MysteryEventClub_EventScript_CreateNewProfile:: @ 8291650 +MysteryEventClub_EventScript_CreateNewProfile:: msgbox MysteryEventClub_Text_EvenBetterThanLastProfile, MSGBOX_DEFAULT closemessage setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE @@ -86,26 +86,26 @@ MysteryEventClub_EventScript_CreateNewProfile:: @ 8291650 goto_if_eq MysteryEventClub_EventScript_ShowProfile end -MysteryEventClub_EventScript_DeclineNewProfile:: @ 829167C +MysteryEventClub_EventScript_DeclineNewProfile:: msgbox MysteryEventClub_Text_LikeProfileWayItIs, MSGBOX_DEFAULT release end @ Unused -MysteryEventClub_EventScript_Ret:: @ 8291686 +MysteryEventClub_EventScript_Ret:: return -MysteryEventClub_Text_CollectTrainerProfiles: @ 8291687 +MysteryEventClub_Text_CollectTrainerProfiles: .string "Hello there, TRAINER!\n" .string "You've got a wonderful smile, there.\p" .string "I have a hobby--collecting the profiles\n" .string "of POKéMON TRAINERS.$" -MysteryEventClub_Text_MayISeeYourProfile: @ 82916FF +MysteryEventClub_Text_MayISeeYourProfile: .string "So, how about it?\n" .string "May I see your profile?$" -MysteryEventClub_Text_EasyChatExplanation: @ 8291729 +MysteryEventClub_Text_EasyChatExplanation: .string "You make your own profile by putting\n" .string "together four words or phrases.\p" .string "Here, I'll show you an example of a\n" @@ -124,37 +124,37 @@ MysteryEventClub_Text_EasyChatExplanation: @ 8291729 .string "Repeat for the remaining text choices,\n" .string "and you'll have your very own profile.$" -MysteryEventClub_Text_LetsSeeItThen: @ 8291969 +MysteryEventClub_Text_LetsSeeItThen: .string "Yes! Thank you!\n" .string "So, let's see it, then.$" -MysteryEventClub_Text_ImagineYouWouldHaveWonderfulProfile: @ 8291991 +MysteryEventClub_Text_ImagineYouWouldHaveWonderfulProfile: .string "Oh, no, really?\p" .string "I imagine someone like you would have\n" .string "a wonderful profile…$" -MysteryEventClub_Text_NotIntoItRightNow: @ 82919DC +MysteryEventClub_Text_NotIntoItRightNow: .string "Oh? You're not into it right now?\p" .string "Well, anytime is good by me!$" -MysteryEventClub_Text_YouHaveWonderfulSmile: @ 8291A1B +MysteryEventClub_Text_YouHaveWonderfulSmile: .string "Hello there, TRAINER!\n" .string "You've got a wonderful smile.$" -MysteryEventClub_Text_MayISeeYourNewProfile: @ 8291A4F +MysteryEventClub_Text_MayISeeYourNewProfile: .string "May I see your new profile?$" -MysteryEventClub_Text_EvenBetterThanLastProfile: @ 8291A6B +MysteryEventClub_Text_EvenBetterThanLastProfile: .string "Yes! Thank you!\p" .string "I hope it's even better than the profile\n" .string "you showed me before.$" -MysteryEventClub_Text_LikeProfileWayItIs: @ 8291ABA +MysteryEventClub_Text_LikeProfileWayItIs: .string "Oh, you like your profile the way it is.\p" .string "I don't blame you--it's a wonderful\n" .string "profile the way it is now.$" -MysteryEventClub_Text_FantasticProfile: @ 8291B22 +MysteryEventClub_Text_FantasticProfile: .string "F-fantastic!\p" .string "Your profile, it's wonderful!\n" .string "It really says what you're about.\p" @@ -163,7 +163,7 @@ MysteryEventClub_Text_FantasticProfile: @ 8291B22 .string "Thank you!$" @ Unused -MysteryEventClub_Text_YouKnowSecretSaying: @ 8291BB7 +MysteryEventClub_Text_YouKnowSecretSaying: .string "Oh?\n" .string "You know the secret saying!\p" .string "That means you're now a fellow member\n" diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc index 2a314b3d13c3..f31cedc80eee 100644 --- a/data/scripts/new_game.inc +++ b/data/scripts/new_game.inc @@ -1,4 +1,4 @@ -EventScript_ResetAllBerries:: @ 827149D +EventScript_ResetAllBerries:: @ Route 102 setberrytree BERRY_TREE_ROUTE_102_ORAN, ITEM_TO_BERRY(ITEM_ORAN_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_102_PECHA, ITEM_TO_BERRY(ITEM_PECHA_BERRY), BERRY_STAGE_BERRIES @@ -112,7 +112,7 @@ EventScript_ResetAllBerries:: @ 827149D setberrytree BERRY_TREE_ROUTE_130_LIECHI, ITEM_TO_BERRY(ITEM_LIECHI_BERRY), BERRY_STAGE_BERRIES return -EventScript_ResetAllMapFlags:: @ 82715DE +EventScript_ResetAllMapFlags:: setflag FLAG_HIDE_CONTEST_POKE_BALL setflag FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE setflag FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE diff --git a/data/scripts/obtain_item.inc b/data/scripts/obtain_item.inc index 19f57d9d523a..382f5ce3206d 100644 --- a/data/scripts/obtain_item.inc +++ b/data/scripts/obtain_item.inc @@ -1,10 +1,10 @@ -Std_ObtainItem:: @ 8271AD3 +Std_ObtainItem:: additem VAR_0x8000, VAR_0x8001 copyvar VAR_0x8007, VAR_RESULT call EventScript_ObtainItemMessage return -EventScript_ObtainItemMessage:: @ 8271AE3 +EventScript_ObtainItemMessage:: bufferitemnameplural 1, VAR_0x8000, VAR_0x8001 checkitemtype VAR_0x8000 call EventScript_BufferPocketNameAndTryFanfare @@ -14,7 +14,7 @@ EventScript_ObtainItemMessage:: @ 8271AE3 call_if_eq EventScript_NoRoomForItem return -EventScript_BufferPocketNameAndTryFanfare:: @ 8271B08 +EventScript_BufferPocketNameAndTryFanfare:: switch VAR_RESULT case POCKET_ITEMS, EventScript_BufferItemsPocket case POCKET_KEY_ITEMS, EventScript_BufferKeyItemsPocket @@ -23,62 +23,62 @@ EventScript_BufferPocketNameAndTryFanfare:: @ 8271B08 case POCKET_BERRIES, EventScript_BufferBerriesPocket end -EventScript_BufferItemsPocket:: @ 8271B45 +EventScript_BufferItemsPocket:: bufferstdstring 2, STDSTRING_ITEMS compare VAR_0x8007, 1 call_if_eq EventScript_PlayFanfareObtainedItem return -EventScript_BufferKeyItemsPocket:: @ 8271B55 +EventScript_BufferKeyItemsPocket:: bufferstdstring 2, STDSTRING_KEYITEMS compare VAR_0x8007, 1 call_if_eq EventScript_PlayFanfareObtainedItem return -EventScript_BufferPokeballsPocket:: @ 8271B65 +EventScript_BufferPokeballsPocket:: bufferstdstring 2, STDSTRING_POKEBALLS compare VAR_0x8007, 1 call_if_eq EventScript_PlayFanfareObtainedItem return -EventScript_BufferTMHMsPocket:: @ 8271B75 +EventScript_BufferTMHMsPocket:: bufferstdstring 2, STDSTRING_TMHMS compare VAR_0x8007, 1 call_if_eq EventScript_PlayFanfareObtainedTMHM return -EventScript_BufferBerriesPocket:: @ 8271B85 +EventScript_BufferBerriesPocket:: bufferstdstring 2, STDSTRING_BERRIES compare VAR_0x8007, 1 call_if_eq EventScript_PlayFanfareObtainedItem return -EventScript_ObtainedItem:: @ 8271B95 +EventScript_ObtainedItem:: message gText_ObtainedTheItem waitfanfare msgbox gText_PutItemInPocket, MSGBOX_DEFAULT setvar VAR_RESULT, 1 return -EventScript_NoRoomForItem:: @ 8271BA9 +EventScript_NoRoomForItem:: setvar VAR_RESULT, 0 return -EventScript_PlayFanfareObtainedItem:: @ 8271BAF +EventScript_PlayFanfareObtainedItem:: playfanfare MUS_OBTAIN_ITEM return -EventScript_PlayFanfareObtainedTMHM:: @ 8271BB3 +EventScript_PlayFanfareObtainedTMHM:: playfanfare MUS_OBTAIN_TMHM return -Std_ObtainDecoration:: @ 8271BB7 +Std_ObtainDecoration:: adddecoration VAR_0x8000 copyvar VAR_0x8007, VAR_RESULT call EventScript_ObtainDecorationMessage return -EventScript_ObtainDecorationMessage:: @ 8271BC5 +EventScript_ObtainDecorationMessage:: bufferdecorationname 1, VAR_0x8000 compare VAR_0x8007, 1 call_if_eq EventScript_ObtainedDecor @@ -86,7 +86,7 @@ EventScript_ObtainDecorationMessage:: @ 8271BC5 call_if_eq EventScript_NoRoomForDecor return -EventScript_ObtainedDecor:: @ 8271BE0 +EventScript_ObtainedDecor:: playfanfare MUS_OBTAIN_ITEM message gText_ObtainedTheDecor waitfanfare @@ -94,11 +94,11 @@ EventScript_ObtainedDecor:: @ 8271BE0 setvar VAR_RESULT, 1 return -EventScript_NoRoomForDecor:: @ 8271BF7 +EventScript_NoRoomForDecor:: setvar VAR_RESULT, 0 return -Std_FindItem:: @ 8271BFD +Std_FindItem:: lock faceplayer waitse @@ -116,7 +116,7 @@ Std_FindItem:: @ 8271BFD release return -EventScript_PickUpItem:: @ 8271C3A +EventScript_PickUpItem:: removeobject VAR_LAST_TALKED additem VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName @@ -134,26 +134,26 @@ EventScript_PickUpItem:: @ 8271C3A msgbox gText_PutItemInPocket, MSGBOX_DEFAULT return -EventScript_PutBattlePyramidItemInBag:: @ 8271C86 +EventScript_PutBattlePyramidItemInBag:: msgbox gText_PlayerPutItemInBag, MSGBOX_DEFAULT return -EventScript_FoundTMHM:: @ 8271C8F +EventScript_FoundTMHM:: bufferitemnameplural 0, VAR_0x8004, VAR_0x8005 message gText_PlayerFoundOneTMHM return -EventScript_FoundItem:: @ 8271C9B +EventScript_FoundItem:: message gText_PlayerFoundOneItem return -EventScript_NoRoomToPickUpItem:: @ 8271CA1 +EventScript_NoRoomToPickUpItem:: msgbox gText_ObtainedTheItem, MSGBOX_DEFAULT msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT setvar VAR_RESULT, 0 return -EventScript_HiddenItemScript:: @ 8271CB7 +EventScript_HiddenItemScript:: lockall waitse additem VAR_0x8005 @@ -167,7 +167,7 @@ EventScript_HiddenItemScript:: @ 8271CB7 goto_if_eq EventScript_NoRoomForHiddenItem end -EventScript_PickUpHiddenItem:: @ 8271CE8 +EventScript_PickUpHiddenItem:: copyvar VAR_0x8008, VAR_0x8004 copyvar VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName @@ -177,18 +177,18 @@ EventScript_PickUpHiddenItem:: @ 8271CE8 goto_if_eq EventScript_FoundHiddenItem end -EventScript_FoundHiddenTMHM:: @ 8271D0E +EventScript_FoundHiddenTMHM:: bufferitemnameplural 0, VAR_0x8004, 1 message gText_PlayerFoundOneTMHM goto EventScript_PutHiddenItemInPocket end -EventScript_FoundHiddenItem:: @ 8271D1F +EventScript_FoundHiddenItem:: message gText_PlayerFoundOneItem goto EventScript_PutHiddenItemInPocket end -EventScript_PutHiddenItemInPocket:: @ 8271D2A +EventScript_PutHiddenItemInPocket:: waitmessage waitfanfare bufferitemnameplural 1, VAR_0x8004, 1 @@ -199,7 +199,7 @@ EventScript_PutHiddenItemInPocket:: @ 8271D2A releaseall end -EventScript_NoRoomForHiddenItem:: @ 8271D47 +EventScript_NoRoomForHiddenItem:: msgbox gText_PlayerFoundOneItem, MSGBOX_DEFAULT msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT setvar VAR_RESULT, 0 diff --git a/data/scripts/pc.inc b/data/scripts/pc.inc index b3602ee6f580..43c0bca0d7a9 100644 --- a/data/scripts/pc.inc +++ b/data/scripts/pc.inc @@ -1,4 +1,4 @@ -EventScript_PC:: @ 8271D92 +EventScript_PC:: lockall setvar VAR_0x8004, 0 special DoPCTurnOnEffect @@ -7,7 +7,7 @@ EventScript_PC:: @ 8271D92 goto EventScript_PCMainMenu end -EventScript_PCMainMenu:: @ 8271DAC +EventScript_PCMainMenu:: message gText_WhichPCShouldBeAccessed waitmessage special ScriptMenu_CreatePCMultichoice @@ -15,7 +15,7 @@ EventScript_PCMainMenu:: @ 8271DAC goto EventScript_AccessPC end -EventScript_AccessPC:: @ 8271DBC +EventScript_AccessPC:: switch VAR_RESULT case 0, EventScript_AccessPokemonStorage case 1, EventScript_AccessPlayersPC @@ -24,7 +24,7 @@ EventScript_AccessPC:: @ 8271DBC case MULTI_B_PRESSED, EventScript_TurnOffPC end -EventScript_AccessPlayersPC:: @ 8271DF9 +EventScript_AccessPlayersPC:: playse SE_PC_LOGIN msgbox gText_AccessedPlayersPC, MSGBOX_DEFAULT special PlayerPC @@ -32,7 +32,7 @@ EventScript_AccessPlayersPC:: @ 8271DF9 goto EventScript_PCMainMenu end -EventScript_AccessPokemonStorage:: @ 8271E0E +EventScript_AccessPokemonStorage:: playse SE_PC_LOGIN call_if_unset FLAG_SYS_PC_LANETTE, EventScript_AccessSomeonesPC call_if_set FLAG_SYS_PC_LANETTE, EventScript_AccessLanettesPC @@ -42,22 +42,22 @@ EventScript_AccessPokemonStorage:: @ 8271E0E goto EventScript_PCMainMenu end -EventScript_AccessSomeonesPC:: @ 8271E35 +EventScript_AccessSomeonesPC:: msgbox gText_AccessedSomeonesPC, MSGBOX_DEFAULT return -EventScript_AccessLanettesPC:: @ 8271E3E +EventScript_AccessLanettesPC:: msgbox gText_AccessedLanettesPC, MSGBOX_DEFAULT return -EventScript_TurnOffPC:: @ 8271E47 +EventScript_TurnOffPC:: setvar VAR_0x8004, 0 playse SE_PC_OFF special DoPCTurnOffEffect releaseall end -EventScript_AccessHallOfFame:: @ 8271E54 +EventScript_AccessHallOfFame:: goto_if_unset FLAG_SYS_GAME_CLEAR, EventScript_TurnOffPC playse SE_PC_LOGIN special AccessHallOfFamePC diff --git a/data/scripts/pc_transfer.inc b/data/scripts/pc_transfer.inc index ec58b26f182e..1fe575d55115 100644 --- a/data/scripts/pc_transfer.inc +++ b/data/scripts/pc_transfer.inc @@ -1,11 +1,11 @@ @ VAR_0x8004 here is used by ChangePokemonNickname -Common_EventScript_GetGiftMonPartySlot:: @ 827378B +Common_EventScript_GetGiftMonPartySlot:: getpartysize subvar VAR_RESULT, 1 copyvar VAR_0x8004, VAR_RESULT return -Common_EventScript_NameReceivedBoxMon:: @ 8273797 +Common_EventScript_NameReceivedBoxMon:: fadescreen FADE_TO_BLACK special ChangeBoxPokemonNickname waitstate @@ -13,40 +13,40 @@ Common_EventScript_NameReceivedBoxMon:: @ 8273797 faceplayer return -Common_EventScript_TransferredToPC:: @ 82737A0 +Common_EventScript_TransferredToPC:: bufferboxname 0, VAR_PC_BOX_TO_SEND_MON bufferspeciesname 1, VAR_TEMP_1 call_if_unset FLAG_SYS_PC_LANETTE, EventScript_TransferredSomeonesPC call_if_set FLAG_SYS_PC_LANETTE, EventScript_TransferredLanettesPC return -EventScript_TransferredSomeonesPC:: @ 82737BB +EventScript_TransferredSomeonesPC:: specialvar VAR_RESULT, ShouldShowBoxWasFullMessage compare VAR_RESULT, 1 goto_if_eq EventScript_SomeonesPCBoxFull msgbox gText_PkmnTransferredSomeonesPC, MSGBOX_DEFAULT return -EventScript_SomeonesPCBoxFull:: @ 82737D4 +EventScript_SomeonesPCBoxFull:: specialvar VAR_RESULT, GetPCBoxToSendMon bufferboxname 2, VAR_RESULT msgbox gText_PkmnTransferredSomeonesPCBoxFull, MSGBOX_DEFAULT return -EventScript_TransferredLanettesPC:: @ 82737E6 +EventScript_TransferredLanettesPC:: specialvar VAR_RESULT, ShouldShowBoxWasFullMessage compare VAR_RESULT, TRUE goto_if_eq EventScript_LanettesPCBoxFull msgbox gText_PkmnTransferredLanettesPC, MSGBOX_DEFAULT return -EventScript_LanettesPCBoxFull:: @ 82737FF +EventScript_LanettesPCBoxFull:: specialvar VAR_RESULT, GetPCBoxToSendMon bufferboxname 2, VAR_RESULT msgbox gText_PkmnTransferredLanettesPCBoxFull, MSGBOX_DEFAULT return -Common_EventScript_NoMoreRoomForPokemon:: @ 8273811 +Common_EventScript_NoMoreRoomForPokemon:: msgbox gText_NoMoreRoomForPokemon, MSGBOX_DEFAULT release end diff --git a/data/scripts/pkmn_center_nurse.inc b/data/scripts/pkmn_center_nurse.inc index 6b4bbe2ef5d0..7797b306154a 100644 --- a/data/scripts/pkmn_center_nurse.inc +++ b/data/scripts/pkmn_center_nurse.inc @@ -1,4 +1,4 @@ -Common_EventScript_PkmnCenterNurse:: @ 827191E +Common_EventScript_PkmnCenterNurse:: lock faceplayer setvar VAR_0x8004, 0 @@ -12,12 +12,12 @@ Common_EventScript_PkmnCenterNurse:: @ 827191E goto_if_eq EventScript_PkmnCenterNurse_Goodbye end -EventScript_PkmnCenterNurse_Goodbye:: @ 8271954 +EventScript_PkmnCenterNurse_Goodbye:: message gText_WeHopeToSeeYouAgain return @ VAR_0x8004 is 1 when player has Gold Card; jumps are identical -EventScript_PkmnCenterNurse_HealPkmn:: @ 827195A +EventScript_PkmnCenterNurse_HealPkmn:: incrementgamestat GAME_STAT_USED_POKECENTER compare VAR_0x8004, 0 call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn @@ -29,15 +29,15 @@ EventScript_PkmnCenterNurse_HealPkmn:: @ 827195A goto EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom end -EventScript_PkmnCenterNurse_IllTakeYourPkmn:: @ 8271987 +EventScript_PkmnCenterNurse_IllTakeYourPkmn:: message gText_IllTakeYourPkmn return -EventScript_PkmnCenterNurse_IllTakeYourPkmn2:: @ 827198D +EventScript_PkmnCenterNurse_IllTakeYourPkmn2:: message gText_IllTakeYourPkmn2 return -EventScript_PkmnCenterNurse_TakeAndHealPkmn:: @ 8271993 +EventScript_PkmnCenterNurse_TakeAndHealPkmn:: applymovement VAR_0x800B, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 dofieldeffect FLDEFF_POKECENTER_HEAL @@ -47,7 +47,7 @@ EventScript_PkmnCenterNurse_TakeAndHealPkmn:: @ 8271993 special HealPlayerParty return -EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom:: @ 82719B1 +EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom:: specialvar VAR_RESULT, PlayerNotAtTrainerHillEntrance compare VAR_RESULT, 0 goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn @@ -60,7 +60,7 @@ EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom:: @ 82719B1 end @ VAR_0x8004 is 1 when player has Gold Card -EventScript_PkmnCenterNurse_ReturnPkmn:: @ 82719E2 +EventScript_PkmnCenterNurse_ReturnPkmn:: compare VAR_0x8004, 1 goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn2 message gText_RestoredPkmnToFullHealth @@ -70,7 +70,7 @@ EventScript_PkmnCenterNurse_ReturnPkmn:: @ 82719E2 message gText_WeHopeToSeeYouAgain return -EventScript_PkmnCenterNurse_ReturnPkmn2:: @ 8271A03 +EventScript_PkmnCenterNurse_ReturnPkmn2:: message gText_ThankYouForWaiting waitmessage applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow @@ -78,7 +78,7 @@ EventScript_PkmnCenterNurse_ReturnPkmn2:: @ 8271A03 message gText_WeHopeToSeeYouAgain2 return -EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom:: @ 8271A19 +EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom:: goto_if_set FLAG_NURSE_UNION_ROOM_REMINDER, EventScript_PkmnCenterNurse_ReturnPkmn msgbox gText_RestoredPkmnToFullHealth, MSGBOX_DEFAULT setflag FLAG_NURSE_UNION_ROOM_REMINDER @@ -89,7 +89,7 @@ EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom:: @ 8271A19 message gText_WeHopeToSeeYouAgain return -EventScript_PkmnCenterNurse_CheckPokerus:: @ 8271A43 +EventScript_PkmnCenterNurse_CheckPokerus:: specialvar VAR_RESULT, IsPokerusInParty compare VAR_RESULT, TRUE goto_if_eq EventScript_PkmnCenterNurse_ExplainPokerus @@ -97,12 +97,12 @@ EventScript_PkmnCenterNurse_CheckPokerus:: @ 8271A43 goto_if_eq EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom end -EventScript_PkmnCenterNurse_ExplainPokerus:: @ 8271A5F +EventScript_PkmnCenterNurse_ExplainPokerus:: message gText_PokerusExplanation setflag FLAG_POKERUS_EXPLAINED return -EventScript_PkmnCenterNurse_GoldCard:: @ 8271A68 +EventScript_PkmnCenterNurse_GoldCard:: goto_if_set FLAG_NURSE_MENTIONS_GOLD_CARD, EventScript_PkmnCenterNurse_AskForUsual setflag FLAG_NURSE_MENTIONS_GOLD_CARD msgbox gText_WelcomeCutShort, MSGBOX_DEFAULT @@ -117,19 +117,19 @@ EventScript_PkmnCenterNurse_GoldCard:: @ 8271A68 message gText_WeHopeToSeeYouAgain2 return -EventScript_PkmnCenterNurse_AskForUsual:: @ 8271AAC +EventScript_PkmnCenterNurse_AskForUsual:: msgbox gText_YouWantTheUsual, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn message gText_WeHopeToSeeYouAgain2 return -EventScript_PkmnCenterNurse_GoldCardHealPkmn:: @ 8271AC5 +EventScript_PkmnCenterNurse_GoldCardHealPkmn:: setvar VAR_0x8004, 1 goto EventScript_PkmnCenterNurse_HealPkmn end -Movement_PkmnCenterNurse_Bow: @ 8271AD0 +Movement_PkmnCenterNurse_Bow: nurse_joy_bow delay_4 step_end diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index 427355332718..e7e862039ad0 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -3,11 +3,11 @@ .set LOCALID_DAD, 5 .set LOCALID_MOM_2F, 14 -PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet:: @ 82926FE +PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet:: setvar VAR_LITTLEROOT_INTRO_STATE, 5 return -PlayersHouse_1F_EventScript_EnterHouseMovingIn:: @ 8292704 +PlayersHouse_1F_EventScript_EnterHouseMovingIn:: msgbox PlayersHouse_1F_Text_IsntItNiceInHere, MSGBOX_DEFAULT applymovement VAR_0x8004, Common_Movement_FacePlayer waitmovement 0 @@ -24,21 +24,21 @@ PlayersHouse_1F_EventScript_EnterHouseMovingIn:: @ 8292704 releaseall end -PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale:: @ 829274D +PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale:: @ 8292758 +PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PlayersHouse_1F_Movement_PlayerWalkIn: @ 8292763 +PlayersHouse_1F_Movement_PlayerWalkIn: walk_up step_end -PlayersHouse_1F_EventScript_MomGoSeeRoom:: @ 8292765 +PlayersHouse_1F_EventScript_MomGoSeeRoom:: msgbox PlayersHouse_1F_Text_ArentYouInterestedInRoom, MSGBOX_DEFAULT closemessage applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestUp @@ -47,19 +47,19 @@ PlayersHouse_1F_EventScript_MomGoSeeRoom:: @ 8292765 releaseall end -LittlerootTown_BrendansHouse_2F_EventScript_WallClock:: @ 8292781 +LittlerootTown_BrendansHouse_2F_EventScript_WallClock:: lockall setvar VAR_0x8004, MALE goto PlayersHouse_2F_EventScript_WallClock end -LittlerootTown_MaysHouse_2F_EventScript_WallClock:: @ 829278D +LittlerootTown_MaysHouse_2F_EventScript_WallClock:: lockall setvar VAR_0x8004, FEMALE goto PlayersHouse_2F_EventScript_WallClock end -PlayersHouse_2F_EventScript_WallClock:: @ 8292799 +PlayersHouse_2F_EventScript_WallClock:: goto_if_set FLAG_SET_WALL_CLOCK, PlayersHouse_2F_EventScript_CheckWallClock msgbox PlayersHouse_2F_Text_ClockIsStopped, MSGBOX_DEFAULT call PlayersHouse_2F_EventScript_SetWallClock @@ -78,7 +78,7 @@ PlayersHouse_2F_EventScript_WallClock:: @ 8292799 releaseall end -PlayersHouse_2F_EventScript_MomComesUpstairsMale:: @ 82927DF +PlayersHouse_2F_EventScript_MomComesUpstairsMale:: setvar VAR_0x8008, LOCALID_MOM_2F addobject VAR_0x8008 applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersMale @@ -91,7 +91,7 @@ PlayersHouse_2F_EventScript_MomComesUpstairsMale:: @ 82927DF waitmovement 0 return -PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: @ 829280F +PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: setvar VAR_0x8008, LOCALID_MOM_2F addobject VAR_0x8008 applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersFemale @@ -104,7 +104,7 @@ PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: @ 829280F waitmovement 0 return -PlayersHouse_2F_EventScript_CheckWallClock:: @ 829283F +PlayersHouse_2F_EventScript_CheckWallClock:: incrementgamestat GAME_STAT_CHECKED_CLOCK fadescreen FADE_TO_BLACK special Special_ViewWallClock @@ -112,13 +112,13 @@ PlayersHouse_2F_EventScript_CheckWallClock:: @ 829283F releaseall end -PlayersHouse_2F_EventScript_SetWallClock:: @ 8292849 +PlayersHouse_2F_EventScript_SetWallClock:: fadescreen FADE_TO_BLACK special StartWallClock waitstate return -PlayersHouse_2F_Movement_MomEntersMale: @ 8292850 +PlayersHouse_2F_Movement_MomEntersMale: delay_8 walk_down walk_in_place_fastest_left @@ -127,13 +127,13 @@ PlayersHouse_2F_Movement_MomEntersMale: @ 8292850 walk_left step_end -PlayersHouse_2F_Movement_MomExitsMale: @ 8292857 +PlayersHouse_2F_Movement_MomExitsMale: walk_right walk_up delay_8 step_end -PlayersHouse_2F_Movement_MomEntersFemale: @ 829285B +PlayersHouse_2F_Movement_MomEntersFemale: delay_8 walk_down walk_in_place_fastest_right @@ -142,18 +142,18 @@ PlayersHouse_2F_Movement_MomEntersFemale: @ 829285B walk_right step_end -PlayersHouse_2F_Movement_MomExitsFemale: @ 8292862 +PlayersHouse_2F_Movement_MomExitsFemale: walk_left walk_up delay_8 step_end -PlayersHouse_1F_EventScript_SetWatchedBroadcast:: @ 8292866 +PlayersHouse_1F_EventScript_SetWatchedBroadcast:: setvar VAR_LITTLEROOT_INTRO_STATE, 7 releaseall end -PlayersHouse_1F_EventScript_PetalburgGymReportMale:: @ 829286D +PlayersHouse_1F_EventScript_PetalburgGymReportMale:: applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestRight waitmovement 0 call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast @@ -178,7 +178,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportMale:: @ 829286D goto PlayersHouse_1F_EventScript_SetWatchedBroadcast end -PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: @ 82928DC +PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast @@ -203,7 +203,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: @ 82928DC goto PlayersHouse_1F_EventScript_SetWatchedBroadcast end -PlayersHouse_1F_EventScript_MomNoticeGymBroadcast:: @ 829294B +PlayersHouse_1F_EventScript_MomNoticeGymBroadcast:: playse SE_PIN applymovement VAR_0x8005, Common_Movement_ExclamationMark waitmovement 0 @@ -213,7 +213,7 @@ PlayersHouse_1F_EventScript_MomNoticeGymBroadcast:: @ 829294B closemessage return -PlayersHouse_1F_EventScript_WatchGymBroadcast:: @ 829296C +PlayersHouse_1F_EventScript_WatchGymBroadcast:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp waitmovement 0 msgbox PlayersHouse_1F_Text_ReportFromPetalburgGym, MSGBOX_DEFAULT @@ -223,7 +223,7 @@ PlayersHouse_1F_EventScript_WatchGymBroadcast:: @ 829296C delay 35 return -PlayersHouse_1F_Movement_MomApproachDadMale: @ 8292989 +PlayersHouse_1F_Movement_MomApproachDadMale: walk_up walk_right walk_right @@ -233,7 +233,7 @@ PlayersHouse_1F_Movement_MomApproachDadMale: @ 8292989 walk_in_place_fastest_right step_end -PlayersHouse_1F_Movement_MomApproachDadFemale: @ 8292991 +PlayersHouse_1F_Movement_MomApproachDadFemale: walk_up walk_left walk_left @@ -243,15 +243,15 @@ PlayersHouse_1F_Movement_MomApproachDadFemale: @ 8292991 walk_in_place_fastest_left step_end -PlayersHouse_1F_Movement_MomApproachPlayerMale: @ 8292999 +PlayersHouse_1F_Movement_MomApproachPlayerMale: walk_right step_end -PlayersHouse_1F_Movement_MomApproachPlayerFemale: @ 829299B +PlayersHouse_1F_Movement_MomApproachPlayerFemale: walk_left step_end -PlayersHouse_1F_Movement_MomNoticesLatiBroadcastMale: @ 829299D +PlayersHouse_1F_Movement_MomNoticesLatiBroadcastMale: walk_in_place_fastest_left delay_16 delay_16 @@ -262,7 +262,7 @@ PlayersHouse_1F_Movement_MomNoticesLatiBroadcastMale: @ 829299D delay_16 step_end -PlayersHouse_1F_Movement_MomNoticesLatiBroadcastFemale: @ 82929A6 +PlayersHouse_1F_Movement_MomNoticesLatiBroadcastFemale: walk_in_place_fastest_right delay_16 delay_16 @@ -273,41 +273,41 @@ PlayersHouse_1F_Movement_MomNoticesLatiBroadcastFemale: @ 82929A6 delay_16 step_end -PlayersHouse_1F_Movement_MomApproachPlayerAfterTVMale: @ 82929AF +PlayersHouse_1F_Movement_MomApproachPlayerAfterTVMale: walk_up walk_left walk_left step_end -PlayersHouse_1F_Movement_MomApproachPlayerAfterTVFemale: @ 82929B3 +PlayersHouse_1F_Movement_MomApproachPlayerAfterTVFemale: walk_up walk_right walk_right step_end -PlayersHouse_1F_Movement_MomMakeRoomToSeeTVMale: @ 82929B7 +PlayersHouse_1F_Movement_MomMakeRoomToSeeTVMale: walk_left walk_in_place_fastest_right step_end -PlayersHouse_1F_Movement_MomMakeRoomToSeeTVFemale: @ 82929BA +PlayersHouse_1F_Movement_MomMakeRoomToSeeTVFemale: walk_right walk_in_place_fastest_left step_end -PlayersHouse_1F_Movement_MomReturnToSeatMale: @ 82929BD +PlayersHouse_1F_Movement_MomReturnToSeatMale: walk_left walk_down walk_in_place_fastest_right step_end -PlayersHouse_1F_Movement_MomReturnToSeatFemale: @ 82929C1 +PlayersHouse_1F_Movement_MomReturnToSeatFemale: walk_right walk_down walk_in_place_fastest_left step_end -PlayersHouse_1F_EventScript_Mom:: @ 82929C5 +PlayersHouse_1F_EventScript_Mom:: lock faceplayer compare VAR_LITTLEROOT_HOUSES_STATE_MAY, 4 @@ -324,12 +324,12 @@ PlayersHouse_1F_EventScript_Mom:: @ 82929C5 release end -PlayersHouse_1F_EventScript_DontPushYourselfTooHard:: @ 8292A0F +PlayersHouse_1F_EventScript_DontPushYourselfTooHard:: msgbox PlayersHouse_1F_Text_DontPushYourselfTooHard, MSGBOX_DEFAULT release end -PlayersHouse_1F_EventScript_TryRegisterMom:: @ 8292A19 +PlayersHouse_1F_EventScript_TryRegisterMom:: goto_if_set FLAG_ENABLE_MOM_MATCH_CALL, PlayersHouse_1F_EventScript_CheckGiveAmuletCoin msgbox PlayersHouse_1F_Text_IsThatAPokenav, MSGBOX_DEFAULT closemessage @@ -343,11 +343,11 @@ PlayersHouse_1F_EventScript_TryRegisterMom:: @ 8292A19 release end -PlayersHouse_1F_EventScript_CheckGiveAmuletCoin:: @ 8292A43 +PlayersHouse_1F_EventScript_CheckGiveAmuletCoin:: goto_if_set FLAG_BADGE05_GET, PlayersHouse_1F_EventScript_TryGiveAmuletCoin goto PlayersHouse_1F_EventScript_MomHealsParty -PlayersHouse_1F_EventScript_TryGiveAmuletCoin:: @ 8292A51 +PlayersHouse_1F_EventScript_TryGiveAmuletCoin:: goto_if_set FLAG_RECEIVED_AMULET_COIN, PlayersHouse_1F_EventScript_MomHealsParty msgbox PlayersHouse_1F_Text_GotDadsBadgeHeresSomethingFromMom, MSGBOX_DEFAULT giveitem ITEM_AMULET_COIN @@ -358,17 +358,17 @@ PlayersHouse_1F_EventScript_TryGiveAmuletCoin:: @ 8292A51 release end -PlayersHouse_1F_EventScript_MomHealsParty:: @ 8292A86 +PlayersHouse_1F_EventScript_MomHealsParty:: msgbox PlayersHouse_1F_Text_YouShouldRestABit, MSGBOX_DEFAULT goto PlayersHouse_1F_EventScript_HealParty end -PlayersHouse_1F_EventScript_SeeYouHoney:: @ 8292A94 +PlayersHouse_1F_EventScript_SeeYouHoney:: msgbox PlayersHouse_1F_Text_SeeYouHoney, MSGBOX_DEFAULT release end -PlayersHouse_1F_EventScript_HealParty:: @ 8292A9E +PlayersHouse_1F_EventScript_HealParty:: closemessage call Common_EventScript_OutOfCenterPartyHeal incrementgamestat GAME_STAT_RESTED_AT_HOME @@ -376,12 +376,12 @@ PlayersHouse_1F_EventScript_HealParty:: @ 8292A9E release end -PlayersHouse_1F_EventScript_DidYouMeetProfBirch:: @ 8292AB0 +PlayersHouse_1F_EventScript_DidYouMeetProfBirch:: msgbox PlayersHouse_1F_Text_DidYouMeetProfBirch, MSGBOX_DEFAULT release end -PlayersHouse_1F_EventScript_Vigoroth1:: @ 8292ABA +PlayersHouse_1F_EventScript_Vigoroth1:: lock faceplayer waitse @@ -391,7 +391,7 @@ PlayersHouse_1F_EventScript_Vigoroth1:: @ 8292ABA release end -PlayersHouse_1F_EventScript_Vigoroth2:: @ 8292ACD +PlayersHouse_1F_EventScript_Vigoroth2:: lock faceplayer waitse @@ -401,7 +401,7 @@ PlayersHouse_1F_EventScript_Vigoroth2:: @ 8292ACD release end -PlayersHouse_1F_Movement_PlayerApproachTVForGymMale: @ 8292AE0 +PlayersHouse_1F_Movement_PlayerApproachTVForGymMale: walk_down walk_down walk_left @@ -409,11 +409,11 @@ PlayersHouse_1F_Movement_PlayerApproachTVForGymMale: @ 8292AE0 walk_left step_end -PlayersHouse_1F_Movement_PlayerMoveToTVMale: @ 8292AE6 +PlayersHouse_1F_Movement_PlayerMoveToTVMale: walk_left step_end -PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale: @ 8292AE8 +PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale: walk_down walk_down walk_right @@ -421,15 +421,15 @@ PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale: @ 8292AE8 walk_right step_end -PlayersHouse_1F_Movement_PlayerMoveToTVFemale: @ 8292AEE +PlayersHouse_1F_Movement_PlayerMoveToTVFemale: walk_right step_end -PlayersHouse_1F_Movement_MovePlayerAwayFromDoor: @ 8292AF0 +PlayersHouse_1F_Movement_MovePlayerAwayFromDoor: walk_up step_end -PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: @ 8292AF2 +PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: lockall checkplayergender compare VAR_RESULT, MALE @@ -513,155 +513,155 @@ PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: @ 8292AF2 end @ Never called. -PlayersHouse_1F_EventScript_AirLatiBroadcast:: @ 8292C72 +PlayersHouse_1F_EventScript_AirLatiBroadcast:: setflag FLAG_SYS_TV_LATIAS_LATIOS return -PlayersHouse_1F_EventScript_SetUpObjectEventVarsMale:: @ 8292C76 +PlayersHouse_1F_EventScript_SetUpObjectEventVarsMale:: setvar VAR_0x8008, MALE setvar VAR_0x8009, LOCALID_DAD setvar VAR_0x800A, LOCALID_MOM return -PlayersHouse_1F_EventScript_SetUpObjectEventVarsFemale:: @ 8292C86 +PlayersHouse_1F_EventScript_SetUpObjectEventVarsFemale:: setvar VAR_0x8008, FEMALE setvar VAR_0x8009, LOCALID_DAD setvar VAR_0x800A, LOCALID_MOM return -PlayersHouse_1F_EventScript_DadApproachPlayerMale:: @ 8292C96 +PlayersHouse_1F_EventScript_DadApproachPlayerMale:: applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadApproachPlayerMale waitmovement 0 return -PlayersHouse_1F_EventScript_DadApproachPlayerFemale:: @ 8292CA1 +PlayersHouse_1F_EventScript_DadApproachPlayerFemale:: applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadApproachPlayerFemale waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachDadMale:: @ 8292CAC +PlayersHouse_1F_EventScript_MomApproachDadMale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachDadMale waitmovement 0 applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadFaceMomMale waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachDadFemale:: @ 8292CC1 +PlayersHouse_1F_EventScript_MomApproachDadFemale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachDadFemale waitmovement 0 applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadFaceMomFemale waitmovement 0 return -PlayersHouse_1F_EventScript_DadExitsMale:: @ 8292CD6 +PlayersHouse_1F_EventScript_DadExitsMale:: applymovement OBJ_EVENT_ID_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:: @ 8292CEF +PlayersHouse_1F_EventScript_DadExitsFemale:: applymovement OBJ_EVENT_ID_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:: @ 8292D08 +PlayersHouse_1F_EventScript_PlayerEnterRoomMale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomMale waitmovement 0 return -PlayersHouse_1F_EventScript_PlayerEnterRoomFemale:: @ 8292D13 +PlayersHouse_1F_EventScript_PlayerEnterRoomFemale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomFemale waitmovement 0 return -PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale:: @ 8292D1E +PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale waitmovement 0 applymovement VAR_0x800A, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale:: @ 8292D33 +PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale waitmovement 0 applymovement VAR_0x800A, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachPlayerMale:: @ 8292D48 +PlayersHouse_1F_EventScript_MomApproachPlayerMale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerMale waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachPlayerFemale:: @ 8292D5D +PlayersHouse_1F_EventScript_MomApproachPlayerFemale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerFemale waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastMale:: @ 8292D72 +PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastMale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomNoticesLatiBroadcastMale waitmovement 0 return -PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastFemale:: @ 8292D7D +PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastFemale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomNoticesLatiBroadcastFemale waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVMale:: @ 8292D88 +PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVMale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerAfterTVMale waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight waitmovement 0 return -PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale:: @ 8292D9D +PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerAfterTVFemale waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft waitmovement 0 return -PlayersHouse_1F_Movement_DadApproachPlayerMale: @ 8292DB2 +PlayersHouse_1F_Movement_DadApproachPlayerMale: walk_right walk_right step_end -PlayersHouse_1F_Movement_DadApproachPlayerFemale: @ 8292DB5 +PlayersHouse_1F_Movement_DadApproachPlayerFemale: walk_left walk_left step_end -PlayersHouse_1F_Movement_DadFaceMomMale: @ 8292DB8 +PlayersHouse_1F_Movement_DadFaceMomMale: face_left step_end -PlayersHouse_1F_Movement_DadFaceMomFemale: @ 8292DBA +PlayersHouse_1F_Movement_DadFaceMomFemale: face_right step_end -PlayersHouse_1F_Movement_DadExitsMale: @ 8292DBC +PlayersHouse_1F_Movement_DadExitsMale: walk_down walk_right walk_down delay_8 step_end -PlayersHouse_1F_Movement_DadExitsFemale: @ 8292DC1 +PlayersHouse_1F_Movement_DadExitsFemale: walk_down walk_left walk_down delay_8 step_end -PlayersHouse_1F_Movement_PlayerEnterRoomMale: @ 8292DC6 +PlayersHouse_1F_Movement_PlayerEnterRoomMale: delay_16 walk_down walk_down @@ -669,14 +669,14 @@ PlayersHouse_1F_Movement_PlayerEnterRoomMale: @ 8292DC6 walk_in_place_fastest_left step_end -PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit: @ 8292DCC +PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit: delay_8 delay_16 delay_16 walk_in_place_fastest_down step_end -PlayersHouse_1F_Movement_PlayerEnterRoomFemale: @ 8292DD1 +PlayersHouse_1F_Movement_PlayerEnterRoomFemale: delay_16 walk_down walk_down @@ -684,7 +684,7 @@ PlayersHouse_1F_Movement_PlayerEnterRoomFemale: @ 8292DD1 walk_in_place_fastest_right step_end -PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale: @ 8292DD7 +PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale: walk_up walk_left walk_left @@ -693,7 +693,7 @@ PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale: @ 8292DD7 walk_in_place_fastest_up step_end -PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale: @ 8292DDE +PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale: walk_up walk_right walk_right @@ -702,6 +702,6 @@ PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale: @ 8292DDE walk_in_place_fastest_up step_end -EventScript_RunningShoesManual:: @ 8292DE5 +EventScript_RunningShoesManual:: msgbox PlayersHouse_1F_Text_RunningShoesManual, MSGBOX_SIGN end diff --git a/data/scripts/prof_birch.inc b/data/scripts/prof_birch.inc index b89d2fbd0582..7eb1730fcdfc 100644 --- a/data/scripts/prof_birch.inc +++ b/data/scripts/prof_birch.inc @@ -1,4 +1,4 @@ -ProfBirch_EventScript_UpdateLocation:: @ 82720AD +ProfBirch_EventScript_UpdateLocation:: compare VAR_PETALBURG_GYM_STATE, 0 goto_if_eq Common_EventScript_NopReturn goto_if_set FLAG_SYS_GAME_CLEAR, ProfBirch_EventScript_MoveToLab @@ -20,34 +20,34 @@ ProfBirch_EventScript_UpdateLocation:: @ 82720AD call_if_eq ProfBirch_EventScript_MoveToLab return -ProfBirch_EventScript_MoveToLab:: @ 827211A +ProfBirch_EventScript_MoveToLab:: clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 setflag FLAG_HIDE_ROUTE_101_BIRCH setflag FLAG_HIDE_ROUTE_103_BIRCH return -ProfBirch_EventScript_MoveToRoute101:: @ 8272127 +ProfBirch_EventScript_MoveToRoute101:: clearflag FLAG_HIDE_ROUTE_101_BIRCH setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 setflag FLAG_HIDE_ROUTE_103_BIRCH return -ProfBirch_EventScript_MoveToRoute103:: @ 8272134 +ProfBirch_EventScript_MoveToRoute103:: clearflag FLAG_HIDE_ROUTE_103_BIRCH setflag FLAG_HIDE_ROUTE_101_BIRCH setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 return -ProfBirch_EventScript_RatePokedexOrRegister:: @ 8272141 +ProfBirch_EventScript_RatePokedexOrRegister:: lock faceplayer goto_if_unset FLAG_HAS_MATCH_CALL, ProfBirch_EventScript_AskRatePokedex goto_if_unset FLAG_ENABLE_PROF_BIRCH_MATCH_CALL, EventScript_RegisterProfBirch -ProfBirch_EventScript_AskRatePokedex:: @ 8272155 +ProfBirch_EventScript_AskRatePokedex:: msgbox gBirchDexRatingText_AreYouCurious, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq ProfBirch_EventScript_DeclineRating @@ -55,19 +55,19 @@ ProfBirch_EventScript_AskRatePokedex:: @ 8272155 release end -ProfBirch_EventScript_DeclineRating:: @ 827216F +ProfBirch_EventScript_DeclineRating:: msgbox gBirchDexRatingText_Cancel, MSGBOX_DEFAULT release end -ProfBirch_EventScript_ShowRatingMessage:: @ 8272179 +ProfBirch_EventScript_ShowRatingMessage:: copyvar VAR_0x8004, VAR_0x8009 special ShowPokedexRatingMessage waitmessage waitbuttonpress return -ProfBirch_EventScript_RatePokedex:: @ 8272184 +ProfBirch_EventScript_RatePokedex:: setvar VAR_0x8004, 0 specialvar VAR_RESULT, ScriptGetPokedexInfo copyvar VAR_0x8008, VAR_0x8005 diff --git a/data/scripts/record_mix.inc b/data/scripts/record_mix.inc index e058816ab3fc..d1ad84d3a748 100644 --- a/data/scripts/record_mix.inc +++ b/data/scripts/record_mix.inc @@ -1,5 +1,5 @@ @ Seems this was superseded by the Record Center, and the below scripts are now unused -EventScript_MixRecordsPrompt:: @ 8271D5E +EventScript_MixRecordsPrompt:: lock faceplayer msgbox Text_WouldYouLikeToMixRecords, MSGBOX_YESNO @@ -9,12 +9,12 @@ EventScript_MixRecordsPrompt:: @ 8271D5E goto_if_eq EventScript_EndMixRecords goto EventScript_EndMixRecords -EventScript_MixRecords:: @ 8271D83 +EventScript_MixRecords:: special RecordMixingPlayerSpotTriggered waitstate lock faceplayer -EventScript_EndMixRecords:: @ 8271D89 +EventScript_EndMixRecords:: message Text_WeHopeToSeeYouAgain waitmessage waitbuttonpress diff --git a/data/scripts/repel.inc b/data/scripts/repel.inc index 5deda57629fb..fc178603c0e8 100644 --- a/data/scripts/repel.inc +++ b/data/scripts/repel.inc @@ -1,6 +1,6 @@ -EventScript_RepelWoreOff:: @ 82A4B2A +EventScript_RepelWoreOff:: msgbox Text_RepelWoreOff, MSGBOX_SIGN end -Text_RepelWoreOff: @ 82A4B33 +Text_RepelWoreOff: .string "REPEL's effect wore off…$" diff --git a/data/scripts/rival_graphics.inc b/data/scripts/rival_graphics.inc index a8ead6497f65..a0fb15f0e4ab 100644 --- a/data/scripts/rival_graphics.inc +++ b/data/scripts/rival_graphics.inc @@ -1,4 +1,4 @@ -Common_EventScript_SetupRivalGfxId:: @ 8271ED7 +Common_EventScript_SetupRivalGfxId:: checkplayergender compare VAR_RESULT, MALE goto_if_eq EventScript_SetupRivalGfxIdFemale @@ -6,15 +6,15 @@ Common_EventScript_SetupRivalGfxId:: @ 8271ED7 goto_if_eq EventScript_SetupRivalGfxIdMale end -EventScript_SetupRivalGfxIdFemale:: @ 8271EEF +EventScript_SetupRivalGfxIdFemale:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return -EventScript_SetupRivalGfxIdMale:: @ 8271EF5 +EventScript_SetupRivalGfxIdMale:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -Common_EventScript_SetupRivalOnBikeGfxId:: @ 8271EFB +Common_EventScript_SetupRivalOnBikeGfxId:: checkplayergender compare VAR_RESULT, MALE goto_if_eq EventScript_SetupRivalOnBikeGfxIdFemale @@ -22,16 +22,16 @@ Common_EventScript_SetupRivalOnBikeGfxId:: @ 8271EFB goto_if_eq EventScript_SetupRivalOnBikeGfxIdMale end -EventScript_SetupRivalOnBikeGfxIdFemale:: @ 8271F13 +EventScript_SetupRivalOnBikeGfxIdFemale:: setvar VAR_OBJ_GFX_ID_3, OBJ_EVENT_GFX_RIVAL_MAY_MACH_BIKE return -EventScript_SetupRivalOnBikeGfxIdMale:: @ 8271F19 +EventScript_SetupRivalOnBikeGfxIdMale:: setvar VAR_OBJ_GFX_ID_3, OBJ_EVENT_GFX_RIVAL_BRENDAN_MACH_BIKE return @ Unused -Common_EventScript_SetupRivalGfxIdSameGender:: @ 8271F1F +Common_EventScript_SetupRivalGfxIdSameGender:: checkplayergender compare VAR_RESULT, MALE goto_if_eq EventScript_SetupRivalGfxIdMale2 @@ -39,10 +39,10 @@ Common_EventScript_SetupRivalGfxIdSameGender:: @ 8271F1F goto_if_eq EventScript_SetupRivalGfxIdFemale2 end -EventScript_SetupRivalGfxIdMale2:: @ 8271F37 +EventScript_SetupRivalGfxIdMale2:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL return -EventScript_SetupRivalGfxIdFemale2:: @ 8271F3D +EventScript_SetupRivalGfxIdFemale2:: setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL return diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index f590ca3585be..1167a765bdd7 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -1,4 +1,4 @@ -Roulette_EventScript_Table1:: @ 82A5AB1 +Roulette_EventScript_Table1:: checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase @@ -10,7 +10,7 @@ Roulette_EventScript_Table1:: @ 82A5AB1 goto Roulette_EventScript_Play end -Roulette_EventScript_Table2:: @ 82A5ADF +Roulette_EventScript_Table2:: checkitem ITEM_COIN_CASE, 1 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase @@ -22,50 +22,50 @@ Roulette_EventScript_Table2:: @ 82A5ADF goto Roulette_EventScript_Play end -Roulette_EventScript_Play:: @ 82A5B0D +Roulette_EventScript_Play:: special PlayRoulette waitstate end -Roulette_Text_PlayMinimumWagerIsX:: @ 82A5B12 +Roulette_Text_PlayMinimumWagerIsX:: .string "The minimum wager at this table\n" .string "is {STR_VAR_1}. Do you want to play?$" -Roulette_Text_NotEnoughCoins:: @ 82A5B4E +Roulette_Text_NotEnoughCoins:: .string "You don't have enough COINS.$" -Roulette_Text_SpecialRateTable:: @ 82A5B6B +Roulette_Text_SpecialRateTable:: .string "Special rate table right now!$" -Roulette_Text_ControlsInstruction:: @ 82A5B89 +Roulette_Text_ControlsInstruction:: .string "Place your wager with the + Control\n" .string "Pad, then press the A Button.$" -Roulette_Text_ItsAHit:: @ 82A5BCB +Roulette_Text_ItsAHit:: .string "It's a hit!$" -Roulette_Text_Jackpot:: @ 82A5BD7 +Roulette_Text_Jackpot:: .string "Jackpot!$" -Roulette_Text_NothingDoing:: @ 82A5BE0 +Roulette_Text_NothingDoing:: .string "Nothing doing!$" -Roulette_Text_YouveWonXCoins:: @ 82A5BEF +Roulette_Text_YouveWonXCoins:: .string "You've won {STR_VAR_1} COINS!$" -Roulette_Text_NoCoinsLeft:: @ 82A5C04 +Roulette_Text_NoCoinsLeft:: .string "No COINS left…$" -Roulette_Text_KeepPlaying:: @ 82A5C13 +Roulette_Text_KeepPlaying:: .string "Keep playing?$" -Roulette_Text_BoardWillBeCleared:: @ 82A5C21 +Roulette_Text_BoardWillBeCleared:: .string "The ROULETTE board will be cleared.$" @ Unused -Roulette_Text_YouDontHaveACoinCase:: @ 82A5C45 +Roulette_Text_YouDontHaveACoinCase:: .string "You don't have a COIN CASE.$" -Roulette_Text_CoinCaseIsFull:: @ 82A5C61 +Roulette_Text_CoinCaseIsFull:: .string "Your COIN CASE is full!\n" .string "Coins can be exchanged for prizes.$" diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc index d04a16b5875a..6dd0767f0cce 100644 --- a/data/scripts/safari_zone.inc +++ b/data/scripts/safari_zone.inc @@ -1,17 +1,17 @@ -SafariZone_EventScript_OutOfBallsMidBattle:: @ 82A4B4C +SafariZone_EventScript_OutOfBallsMidBattle:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode setwarp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 end -SafariZone_EventScript_Exit:: @ 82A4B5D +SafariZone_EventScript_Exit:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode warp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 waitstate end -SafariZone_EventScript_RetirePrompt:: @ 82A4B6F +SafariZone_EventScript_RetirePrompt:: lockall msgbox SafariZone_Text_WouldYouLikeToExit, MSGBOX_YESNO compare VAR_RESULT, YES @@ -19,10 +19,10 @@ SafariZone_EventScript_RetirePrompt:: @ 82A4B6F releaseall end -SafariZone_EventScript_Retire:: @ 82A4B85 +SafariZone_EventScript_Retire:: goto SafariZone_EventScript_Exit -SafariZone_EventScript_TimesUp:: @ 82A4B8A +SafariZone_EventScript_TimesUp:: lockall playse SE_DING_DONG message SafariZone_Text_TimesUp @@ -31,7 +31,7 @@ SafariZone_EventScript_TimesUp:: @ 82A4B8A releaseall goto SafariZone_EventScript_Exit -SafariZone_EventScript_OutOfBalls:: @ 82A4B9B +SafariZone_EventScript_OutOfBalls:: lockall playse SE_DING_DONG message SafariZone_Text_OutOfBalls @@ -40,7 +40,7 @@ SafariZone_EventScript_OutOfBalls:: @ 82A4B9B releaseall goto SafariZone_EventScript_Exit -EventScript_PokeBlockFeeder:: @ 82A4BAC +EventScript_PokeBlockFeeder:: lockall special GetPokeblockFeederInFront compare VAR_RESULT, 0xFFFF @@ -51,7 +51,7 @@ EventScript_PokeBlockFeeder:: @ 82A4BAC releaseall end -SafariZone_EventScript_ChoosePokeblock:: @ 82A4BD0 +SafariZone_EventScript_ChoosePokeblock:: fadescreen FADE_TO_BLACK special OpenPokeblockCaseOnFeeder waitstate @@ -59,45 +59,45 @@ SafariZone_EventScript_ChoosePokeblock:: @ 82A4BD0 goto_if_ne SafariZone_EventScript_PokeblockPlaced end -SafariZone_EventScript_PokeblockPlaced:: @ 82A4BE2 +SafariZone_EventScript_PokeblockPlaced:: message SafariZone_Text_PokeblockWasPlaced waitmessage waitbuttonpress releaseall end -SafariZone_EventScript_PokeblockPresent:: @ 82A4BEB +SafariZone_EventScript_PokeblockPresent:: message SafariZone_Text_PokeblockStillHere waitmessage waitbuttonpress releaseall end -SafariZone_Text_WouldYouLikeToExit: @ 82A4BF4 +SafariZone_Text_WouldYouLikeToExit: .string "Would you like to exit the SAFARI\n" .string "ZONE right now?$" -SafariZone_Text_TimesUp: @ 82A4C26 +SafariZone_Text_TimesUp: .string "Ding-dong! Time's up!\n" .string "Your SAFARI Game is over.$" -SafariZone_Text_OutOfBalls: @ 82A4C56 +SafariZone_Text_OutOfBalls: .string "You've run out of SAFARI BALLS.\n" .string "Your SAFARI Game is over.$" -SafariZone_Text_PlacePokeblockOnFeeder: @ 82A4C90 +SafariZone_Text_PlacePokeblockOnFeeder: .string "Would you like to place a {POKEBLOCK}\n" .string "on the {POKEBLOCK} FEEDER?$" -SafariZone_Text_PokeblockStillHere: @ 82A4CC5 +SafariZone_Text_PokeblockStillHere: .string "The {STR_VAR_1} you left\n" .string "before is still here.$" -SafariZone_Text_PokeblockWasPlaced: @ 82A4CEB +SafariZone_Text_PokeblockWasPlaced: .string "The {STR_VAR_1} was placed\n" .string "on the {POKEBLOCK} FEEDER.$" -Route121_SafariZoneEntrance_Text_WelcomeToSafariZone: @ 82A4D12 +Route121_SafariZoneEntrance_Text_WelcomeToSafariZone: .string "Welcome to the SAFARI ZONE!\p" .string "Here, you may witness many kinds of\n" .string "POKéMON rarely seen in HOENN.\p" @@ -109,14 +109,14 @@ Route121_SafariZoneEntrance_Text_WelcomeToSafariZone: @ 82A4D12 .string "for keeps!\p" .string "Come in and enjoy the SAFARI ZONE!$" -Route121_SafariZoneEntrance_Text_WelcomeFirstTime: @ 82A4E46 +Route121_SafariZoneEntrance_Text_WelcomeFirstTime: .string "Welcome to the SAFARI ZONE!\n" .string "Is it your first time here?$" -Route121_SafariZoneEntrance_Text_ComeInAndEnjoy: @ 82A4E7E +Route121_SafariZoneEntrance_Text_ComeInAndEnjoy: .string "Come in and enjoy the SAFARI ZONE!$" -Route121_SafariZoneEntrance_Text_FirstTimeInfo: @ 82A4EA1 +Route121_SafariZoneEntrance_Text_FirstTimeInfo: .string "When you enter the SAFARI ZONE, you\n" .string "start with 30 SAFARI BALLS for\l" .string "catching POKéMON.\p" @@ -125,39 +125,39 @@ Route121_SafariZoneEntrance_Text_FirstTimeInfo: @ 82A4EA1 .string "walked 500 steps.\p" .string "Come in and enjoy the SAFARI ZONE!$" -Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay: @ 82A4F74 +Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay: .string "Welcome to the SAFARI ZONE!\p" .string "All you can catch for just ¥500!\n" .string "Would you like to play a SAFARI Game?$" -Route121_SafariZoneEntrance_Text_PlayAnotherTime: @ 82A4FD7 +Route121_SafariZoneEntrance_Text_PlayAnotherTime: .string "Okay.\n" .string "Please play another time!$" -Route121_SafariZoneEntrance_Text_NotEnoughMoney: @ 82A4FF7 +Route121_SafariZoneEntrance_Text_NotEnoughMoney: .string "You don't have enough money.\n" .string "Sorry.$" -Route121_SafariZoneEntrance_Text_ThatWillBe500Please: @ 82A501B +Route121_SafariZoneEntrance_Text_ThatWillBe500Please: .string "That will be ¥500, please.$" -Route121_SafariZoneEntrance_Text_HereAreYourSafariBalls: @ 82A5036 +Route121_SafariZoneEntrance_Text_HereAreYourSafariBalls: .string "Here are your SAFARI BALLS.$" -Route121_SafariZoneEntrance_Text_Received30SafariBalls: @ 82A5052 +Route121_SafariZoneEntrance_Text_Received30SafariBalls: .string "{PLAYER} received 30 SAFARI BALLS.$" -Route121_SafariZoneEntrance_Text_PleaseEnjoyYourself: @ 82A506F +Route121_SafariZoneEntrance_Text_PleaseEnjoyYourself: .string "We'll let you know when your game\n" .string "is over.\p" .string "So, until then, enjoy yourself, please!\n" .string "Off you go on your wild excursion!$" -Route121_SafariZoneEntrance_Text_PCIsFull: @ 82A50E5 +Route121_SafariZoneEntrance_Text_PCIsFull: .string "Excuse me!\n" .string "Your PC BOX is full.$" -Route121_SafariZoneEntrance_Text_YouNeedPokeblockCase: @ 82A5105 +Route121_SafariZoneEntrance_Text_YouNeedPokeblockCase: .string "Excuse me!\n" .string "You seem to be without a {POKEBLOCK} CASE.\p" .string "Your SAFARI Game will be much more\n" @@ -166,129 +166,129 @@ Route121_SafariZoneEntrance_Text_YouNeedPokeblockCase: @ 82A5105 .string "You may obtain a {POKEBLOCK} CASE from\n" .string "the LILYCOVE CONTEST HALL.$" -SafariZone_South_Text_StillHaveTimeExit: @ 82A51D4 +SafariZone_South_Text_StillHaveTimeExit: .string "You still have time left. Would you like\n" .string "to exit the SAFARI ZONE now?$" -SafariZone_South_Text_EnjoyTheRestOfYourAdventure: @ 82A521A +SafariZone_South_Text_EnjoyTheRestOfYourAdventure: .string "Please enjoy the rest of your wild\n" .string "adventure!$" -SafariZone_South_Text_ExitEarlyThankYouForPlaying: @ 82A5248 +SafariZone_South_Text_ExitEarlyThankYouForPlaying: .string "Okay.\p" .string "I'll take back your remaining SAFARI\n" .string "BALLS.\p" .string "Thank you for playing.\n" .string "We hope to see you again.$" -SafariZone_South_Text_GoodLuck: @ 82A52AB +SafariZone_South_Text_GoodLuck: .string "Good luck!\p" .string "If you need anything, don't hesitate\n" .string "to tell me, please!$" -SafariZone_South_Text_Boy: @ 82A52EF +SafariZone_South_Text_Boy: .string "Did you know?\p" .string "If you put a {POKEBLOCK} in that square box,\n" .string "POKéMON gather around.$" -SafariZone_South_Text_Man: @ 82A533B +SafariZone_South_Text_Man: .string "I want to keep going deeper, but I\n" .string "forgot to bring a BIKE.\p" .string "Something tells me that rare POKéMON\n" .string "live in the outlying areas.$" -SafariZone_Southwest_Text_Woman: @ 82A53B7 +SafariZone_Southwest_Text_Woman: .string "Sometimes, when I toss a {POKEBLOCK} at \n" .string "POKéMON, it gets ignored.\p" .string "Do POKéMON have likes and dislikes\n" .string "about what they eat?$" -SafariZone_Northwest_Text_Man: @ 82A542C +SafariZone_Northwest_Text_Man: .string "Gasp… Gasp…\n" .string "I…made it out here…but…\p" .string "I'm exhausted… I don't have the\n" .string "energy to catch POKéMON…$" -SafariZone_North_Text_Fisherman: @ 82A5489 +SafariZone_North_Text_Fisherman: .string "I'm on a mission to find WATER POKéMON\n" .string "you don't see in HOENN.\p" .string "Do you have any idea where the lake is?$" -SafariZone_North_Text_Man: @ 82A54F0 +SafariZone_North_Text_Man: .string "I'm going to catch a lot of rare POKéMON\n" .string "here and trade them with my friends!$" -SafariZone_South_Text_Youngster: @ 82A553E +SafariZone_South_Text_Youngster: .string "I put a {POKEBLOCK} on the {POKEBLOCK} FEEDER.\n" .string "But it seems to have disappeared.\p" .string "I guess POKéMON must have eaten it\n" .string "without me noticing.$" -Route121_SafariZoneEntrance_Text_TrainerTip: @ 82A55BB +Route121_SafariZoneEntrance_Text_TrainerTip: .string "SAFARI ZONE TRAINER TIP!\p" .string "Throw {POKEBLOCK}S at wild POKéMON to make\n" .string "them less likely to flee.$" -SafariZone_Southwest_Text_RestHouseSign: @ 82A5613 +SafariZone_Southwest_Text_RestHouseSign: .string "“Relieve your tired feet.”\n" .string "REST HOUSE$" -SafariZone_RestHouse_Text_Youngster: @ 82A5639 +SafariZone_RestHouse_Text_Youngster: .string "I don't have any {POKEBLOCK}S, but I caught\n" .string "a good number of POKéMON.\p" .string "You can improve your chances of making\n" .string "a catch by getting closer to them\l" .string "before throwing a SAFARI BALL.$" -SafariZone_RestHouse_Text_PsychicM: @ 82A56E1 +SafariZone_RestHouse_Text_PsychicM: .string "If you use {POKEBLOCK}S, wild POKéMON won't\n" .string "be so quick to run away.\p" .string "It's not much use to give {POKEBLOCK}S to\n" .string "POKéMON that don't flee easily.$" -SafariZone_RestHouse_Text_FatMan: @ 82A5764 +SafariZone_RestHouse_Text_FatMan: .string "If you put a {POKEBLOCK} on the FEEDER,\n" .string "POKéMON are attracted to it.\p" .string "I think POKéMON with the same sort of\n" .string "nature are drawn by a certain {POKEBLOCK}.$" -SafariZone_South_Text_AreaOffLimits1: @ 82A57EE +SafariZone_South_Text_AreaOffLimits1: .string "This area is still under construction.\n" .string "It's off-limits, sorry!$" -SafariZone_Southeast_Text_ExpansionIsFinished: @ 82A582D +SafariZone_Southeast_Text_ExpansionIsFinished: .string "The SAFARI ZONE's expansion project\n" .string "is finished now.\p" .string "We hope you will enjoy the new area.$" -SafariZone_South_Text_AreaOffLimits2: @ 82A5887 +SafariZone_South_Text_AreaOffLimits2: .string "This area is still under construction.\n" .string "It's off-limits, sorry!$" -SafariZone_Southeast_Text_LittleGirl: @ 82A58C6 +SafariZone_Southeast_Text_LittleGirl: .string "Wow! Whee! I haven't seen any of\n" .string "these POKéMON before!$" -SafariZone_Southeast_Text_FatMan: @ 82A58FD +SafariZone_Southeast_Text_FatMan: .string "The POKéMON in this area are all\n" .string "new to me.\p" .string "And I'm allowed to catch these rare\n" .string "POKéMON! Too cool!$" -SafariZone_Southeast_Text_RichBoy: @ 82A5960 +SafariZone_Southeast_Text_RichBoy: .string "The POKéMON around here seem to be\n" .string "from somewhere other than HOENN.$" -SafariZone_Northeast_Text_Boy: @ 82A59A4 +SafariZone_Northeast_Text_Boy: .string "I only have a couple SAFARI BALLS left.\p" .string "I'm having a hard time trying to\n" .string "decide what I should catch.$" -SafariZone_Northeast_Text_Woman: @ 82A5A09 +SafariZone_Northeast_Text_Woman: .string "I heard that you can see PIKACHU here.\n" .string "Where might one be?$" -SafariZone_Northeast_Text_Girl: @ 82A5A44 +SafariZone_Northeast_Text_Girl: .string "Oh, boo!\n" .string "I can't seem to catch anything!\p" .string "I'll end up wasting the admission\n" diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc index 9e7a60e1527f..ae802cdfd2a2 100644 --- a/data/scripts/secret_base.inc +++ b/data/scripts/secret_base.inc @@ -1,30 +1,30 @@ -SecretBase_Text_TreeCanBeClimbed: @ 8274746 +SecretBase_Text_TreeCanBeClimbed: .string "If some vines drop down, this tree can\n" .string "be climbed.$" -SecretBase_Text_TreeUseSecretPower: @ 8274779 +SecretBase_Text_TreeUseSecretPower: .string "If some vines drop down, this tree can\n" .string "be climbed.\p" .string "Use the SECRET POWER?$" -SecretBase_Text_VineDroppedDown: @ 82747C2 +SecretBase_Text_VineDroppedDown: .string "A thick vine dropped down!$" -SecretBase_Text_ClumpOfGrass: @ 82747DD +SecretBase_Text_ClumpOfGrass: .string "If this clump of grass can be moved,\n" .string "it might be possible to go inside.$" -SecretBase_Text_ClumpUseSecretPower: @ 8274825 +SecretBase_Text_ClumpUseSecretPower: .string "If this clump of grass can be moved,\n" .string "it might be possible to go inside.\p" .string "Use the SECRET POWER?$" -SecretBase_Text_DiscoveredSmallEntrance: @ 8274883 +SecretBase_Text_DiscoveredSmallEntrance: .string "Discovered a small entrance!$" .include "data/text/secret_base_trainers.inc" -SecretBase_EventScript_CheckEntrance:: @ 82759F1 +SecretBase_EventScript_CheckEntrance:: special GetSecretBaseTypeInFrontOfPlayer special CheckPlayerHasSecretBase compare VAR_RESULT, TRUE @@ -46,7 +46,7 @@ SecretBase_EventScript_CheckEntrance:: @ 82759F1 goto_if_eq SecretBase_EventScript_Shrub end -SecretBase_EventScript_Cave:: @ 8275A50 +SecretBase_EventScript_Cave:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_CaveNoSecretPower @@ -61,24 +61,24 @@ SecretBase_EventScript_Cave:: @ 8275A50 goto SecretBase_EventScript_CaveEnter end -SecretBase_EventScript_CaveUseSecretPower:: @ 8275A86 +SecretBase_EventScript_CaveUseSecretPower:: lockall dofieldeffect FLDEFF_USE_SECRET_POWER_CAVE waitstate goto SecretBase_EventScript_CaveEnter end -SecretBase_EventScript_CaveNoSecretPower:: @ 8275A91 +SecretBase_EventScript_CaveNoSecretPower:: msgbox SecretBase_Text_SmallIndentInWall, MSGBOX_DEFAULT releaseall end -SecretBase_EventScript_CaveEnter:: @ 8275A9B +SecretBase_EventScript_CaveEnter:: msgbox SecretBase_Text_DiscoveredSmallCavern, MSGBOX_DEFAULT goto SecretBase_EventScript_InitSecretBase end -SecretBase_EventScript_Tree:: @ 8275AA9 +SecretBase_EventScript_Tree:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_TreeNoSecretPower @@ -93,24 +93,24 @@ SecretBase_EventScript_Tree:: @ 8275AA9 goto SecretBase_EventScript_TreeEnter end -SecretBase_EventScript_TreeUseSecretPower:: @ 8275ADF +SecretBase_EventScript_TreeUseSecretPower:: lockall dofieldeffect FLDEFF_USE_SECRET_POWER_TREE waitstate goto SecretBase_EventScript_TreeEnter end -SecretBase_EventScript_TreeNoSecretPower:: @ 8275AEA +SecretBase_EventScript_TreeNoSecretPower:: msgbox SecretBase_Text_TreeCanBeClimbed, MSGBOX_DEFAULT releaseall end -SecretBase_EventScript_TreeEnter:: @ 8275AF4 +SecretBase_EventScript_TreeEnter:: msgbox SecretBase_Text_VineDroppedDown, MSGBOX_DEFAULT goto SecretBase_EventScript_InitSecretBase end -SecretBase_EventScript_Shrub:: @ 8275B02 +SecretBase_EventScript_Shrub:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_ShrubNoSecretPower @@ -125,24 +125,24 @@ SecretBase_EventScript_Shrub:: @ 8275B02 goto SecretBase_EventScript_ShrubEnter end -SecretBase_EventScript_ShrubUseSecretPower:: @ 8275B38 +SecretBase_EventScript_ShrubUseSecretPower:: lockall dofieldeffect FLDEFF_USE_SECRET_POWER_SHRUB waitstate goto SecretBase_EventScript_ShrubEnter end -SecretBase_EventScript_ShrubNoSecretPower:: @ 8275B43 +SecretBase_EventScript_ShrubNoSecretPower:: msgbox SecretBase_Text_ClumpOfGrass, MSGBOX_DEFAULT releaseall end -SecretBase_EventScript_ShrubEnter:: @ 8275B4D +SecretBase_EventScript_ShrubEnter:: msgbox SecretBase_Text_DiscoveredSmallEntrance, MSGBOX_DEFAULT goto SecretBase_EventScript_InitSecretBase end -SecretBase_EventScript_InitSecretBase:: @ 8275B5B +SecretBase_EventScript_InitSecretBase:: closemessage playse SE_EXIT setvar VAR_INIT_SECRET_BASE, 0 @@ -156,7 +156,7 @@ SecretBase_EventScript_InitSecretBase:: @ 8275B5B waitstate end -SecretBase_EventScript_FirstEntrance:: @ 8275B81 +SecretBase_EventScript_FirstEntrance:: applymovement OBJ_EVENT_ID_PLAYER, SecretBase_Movement_EnterBase waitmovement 0 setvar VAR_INIT_SECRET_BASE, 1 @@ -168,19 +168,19 @@ SecretBase_EventScript_FirstEntrance:: @ 8275B81 special ClearAndLeaveSecretBase end -SecretBase_EventScript_SetAsBase:: @ 8275BAB +SecretBase_EventScript_SetAsBase:: closemessage setflag FLAG_RECEIVED_SECRET_POWER special EnterNewlyCreatedSecretBase waitstate end -SecretBase_Movement_EnterBase: @ 8275BB4 +SecretBase_Movement_EnterBase: walk_up walk_up step_end -SecretBase_EventScript_Enter:: @ 8275BB7 +SecretBase_EventScript_Enter:: lockall setvar VAR_INIT_SECRET_BASE, 1 playse SE_EXIT @@ -193,14 +193,14 @@ SecretBase_EventScript_Enter:: @ 8275BB7 waitstate end -SecretBase_EventScript_EnterPlayersBase:: @ 8275BDB +SecretBase_EventScript_EnterPlayersBase:: setflag FLAG_DECORATION_0 special EnterSecretBase setvar VAR_SECRET_BASE_INITIALIZED, 0 waitstate end -SecretBase_EventScript_AlreadyHasSecretBase:: @ 8275BE8 +SecretBase_EventScript_AlreadyHasSecretBase:: checkpartymove MOVE_SECRET_POWER compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_NoSecretPower @@ -241,7 +241,7 @@ SecretBase_EventScript_AlreadyHasSecretBase:: @ 8275BE8 releaseall end -SecretBase_EventScript_NoSecretPower:: @ 8275C9A +SecretBase_EventScript_NoSecretPower:: lockall compare VAR_0x8007, SECRET_BASE_RED_CAVE goto_if_eq SecretBase_EventScript_CaveNoSecretPower @@ -257,12 +257,12 @@ SecretBase_EventScript_NoSecretPower:: @ 8275C9A goto_if_eq SecretBase_EventScript_ShrubNoSecretPower end -SecretBase_EventScript_CancelOnEntrance:: @ 8275CDE +SecretBase_EventScript_CancelOnEntrance:: closemessage releaseall end -SecretBase_EventScript_SetDecorationFlags:: @ 8275CE1 +SecretBase_EventScript_SetDecorationFlags:: setflag FLAG_DECORATION_1 setflag FLAG_DECORATION_2 setflag FLAG_DECORATION_3 @@ -279,28 +279,28 @@ SecretBase_EventScript_SetDecorationFlags:: @ 8275CE1 setflag FLAG_DECORATION_14 return -SecretBase_EventScript_InitDecorations:: @ 8275D0C +SecretBase_EventScript_InitDecorations:: setvar VAR_0x8004, 0 setvar VAR_0x8005, 0 special InitSecretBaseDecorationSprites setvar VAR_SECRET_BASE_INITIALIZED, 1 end -SecretBase_EventScript_SetDecoration:: @ 8275D1F +SecretBase_EventScript_SetDecoration:: setvar VAR_0x8005, 0 goto SecretBase_EventScript_SetDecoration2 end -SecretBase_EventScript_SetDecoration2:: @ 8275D2A +SecretBase_EventScript_SetDecoration2:: special SetDecoration end -SecretBase_EventScript_PutAwayDecoration:: @ 8275D2E +SecretBase_EventScript_PutAwayDecoration:: setvar VAR_0x8004, 0 goto SecretBase_EventScript_PutAwayDecorationLoop end -SecretBase_EventScript_PutAwayDecorationLoop:: @ 8275D39 +SecretBase_EventScript_PutAwayDecorationLoop:: special PutAwayDecorationIteration compare VAR_RESULT, 1 goto_if_eq SecretBase_EventScript_PutAwayDecorationEnd @@ -312,10 +312,10 @@ SecretBase_EventScript_PutAwayDecorationLoop:: @ 8275D39 goto SecretBase_EventScript_PutAwayDecorationLoop end -SecretBase_EventScript_PutAwayDecorationEnd:: @ 8275D63 +SecretBase_EventScript_PutAwayDecorationEnd:: end -SecretBase_EventScript_RecordMixTrainer:: @ 8275D64 +SecretBase_EventScript_RecordMixTrainer:: special GetSecretBaseOwnerAndState compare VAR_0x8004, 0 goto_if_eq SecretBase_EventScript_Trainer0 @@ -340,7 +340,7 @@ SecretBase_EventScript_RecordMixTrainer:: @ 8275D64 end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer0:: @ 8275DD6 +SecretBase_EventScript_Trainer0:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer0PreChampion @@ -358,12 +358,12 @@ SecretBase_EventScript_Trainer0:: @ 8275DD6 goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer0PreChampion:: @ 8275E25 +SecretBase_EventScript_Trainer0PreChampion:: msgbox SecretBase_Text_Trainer0PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer0DeclineBattle:: @ 8275E2F +SecretBase_EventScript_Trainer0DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -371,13 +371,13 @@ SecretBase_EventScript_Trainer0DeclineBattle:: @ 8275E2F release end -SecretBase_EventScript_Trainer0PostBattle:: @ 8275E44 +SecretBase_EventScript_Trainer0PostBattle:: msgbox SecretBase_Text_Trainer0PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer1:: @ 8275E4E +SecretBase_EventScript_Trainer1:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer1PreChampion @@ -395,12 +395,12 @@ SecretBase_EventScript_Trainer1:: @ 8275E4E goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer1PreChampion:: @ 8275E9D +SecretBase_EventScript_Trainer1PreChampion:: msgbox SecretBase_Text_Trainer1PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer1DeclineBattle:: @ 8275EA7 +SecretBase_EventScript_Trainer1DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -408,13 +408,13 @@ SecretBase_EventScript_Trainer1DeclineBattle:: @ 8275EA7 release end -SecretBase_EventScript_Trainer1PostBattle:: @ 8275EBC +SecretBase_EventScript_Trainer1PostBattle:: msgbox SecretBase_Text_Trainer1PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer2:: @ 8275EC6 +SecretBase_EventScript_Trainer2:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer2PreChampion @@ -432,12 +432,12 @@ SecretBase_EventScript_Trainer2:: @ 8275EC6 goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer2PreChampion:: @ 8275F15 +SecretBase_EventScript_Trainer2PreChampion:: msgbox SecretBase_Text_Trainer2PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer2DeclineBattle:: @ 8275F1F +SecretBase_EventScript_Trainer2DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -445,13 +445,13 @@ SecretBase_EventScript_Trainer2DeclineBattle:: @ 8275F1F release end -SecretBase_EventScript_Trainer2PostBattle:: @ 8275F34 +SecretBase_EventScript_Trainer2PostBattle:: msgbox SecretBase_Text_Trainer2PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer3:: @ 8275F3E +SecretBase_EventScript_Trainer3:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer3PreChampion @@ -469,12 +469,12 @@ SecretBase_EventScript_Trainer3:: @ 8275F3E goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer3PreChampion:: @ 8275F8D +SecretBase_EventScript_Trainer3PreChampion:: msgbox SecretBase_Text_Trainer3PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer3DeclineBattle:: @ 8275F97 +SecretBase_EventScript_Trainer3DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -482,13 +482,13 @@ SecretBase_EventScript_Trainer3DeclineBattle:: @ 8275F97 release end -SecretBase_EventScript_Trainer3PostBattle:: @ 8275FAC +SecretBase_EventScript_Trainer3PostBattle:: msgbox SecretBase_Text_Trainer3PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer4:: @ 8275FB6 +SecretBase_EventScript_Trainer4:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer4PreChampion @@ -506,12 +506,12 @@ SecretBase_EventScript_Trainer4:: @ 8275FB6 goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer4PreChampion:: @ 8276005 +SecretBase_EventScript_Trainer4PreChampion:: msgbox SecretBase_Text_Trainer4PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer4DeclineBattle:: @ 827600F +SecretBase_EventScript_Trainer4DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -519,13 +519,13 @@ SecretBase_EventScript_Trainer4DeclineBattle:: @ 827600F release end -SecretBase_EventScript_Trainer4PostBattle:: @ 8276024 +SecretBase_EventScript_Trainer4PostBattle:: msgbox SecretBase_Text_Trainer4PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer5:: @ 827602E +SecretBase_EventScript_Trainer5:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer5PreChampion @@ -543,12 +543,12 @@ SecretBase_EventScript_Trainer5:: @ 827602E goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer5PreChampion:: @ 827607D +SecretBase_EventScript_Trainer5PreChampion:: msgbox SecretBase_Text_Trainer5PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer5DeclineBattle:: @ 8276087 +SecretBase_EventScript_Trainer5DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -556,13 +556,13 @@ SecretBase_EventScript_Trainer5DeclineBattle:: @ 8276087 release end -SecretBase_EventScript_Trainer5PostBattle:: @ 827609C +SecretBase_EventScript_Trainer5PostBattle:: msgbox SecretBase_Text_Trainer5PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer6:: @ 82760A6 +SecretBase_EventScript_Trainer6:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer6PreChampion @@ -580,12 +580,12 @@ SecretBase_EventScript_Trainer6:: @ 82760A6 goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer6PreChampion:: @ 82760F5 +SecretBase_EventScript_Trainer6PreChampion:: msgbox SecretBase_Text_Trainer6PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer6DeclineBattle:: @ 82760FF +SecretBase_EventScript_Trainer6DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -593,13 +593,13 @@ SecretBase_EventScript_Trainer6DeclineBattle:: @ 82760FF release end -SecretBase_EventScript_Trainer6PostBattle:: @ 8276114 +SecretBase_EventScript_Trainer6PostBattle:: msgbox SecretBase_Text_Trainer6PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer7:: @ 827611E +SecretBase_EventScript_Trainer7:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer7PreChampion @@ -617,12 +617,12 @@ SecretBase_EventScript_Trainer7:: @ 827611E goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer7PreChampion:: @ 827616D +SecretBase_EventScript_Trainer7PreChampion:: msgbox SecretBase_Text_Trainer7PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer7DeclineBattle:: @ 8276177 +SecretBase_EventScript_Trainer7DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -630,13 +630,13 @@ SecretBase_EventScript_Trainer7DeclineBattle:: @ 8276177 release end -SecretBase_EventScript_Trainer7PostBattle:: @ 827618C +SecretBase_EventScript_Trainer7PostBattle:: msgbox SecretBase_Text_Trainer7PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer8:: @ 8276196 +SecretBase_EventScript_Trainer8:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer8PreChampion @@ -654,12 +654,12 @@ SecretBase_EventScript_Trainer8:: @ 8276196 goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer8PreChampion:: @ 82761E5 +SecretBase_EventScript_Trainer8PreChampion:: msgbox SecretBase_Text_Trainer8PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer8DeclineBattle:: @ 82761EF +SecretBase_EventScript_Trainer8DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -667,13 +667,13 @@ SecretBase_EventScript_Trainer8DeclineBattle:: @ 82761EF release end -SecretBase_EventScript_Trainer8PostBattle:: @ 8276204 +SecretBase_EventScript_Trainer8PostBattle:: msgbox SecretBase_Text_Trainer8PostBattle, MSGBOX_DEFAULT release end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState -SecretBase_EventScript_Trainer9:: @ 827620E +SecretBase_EventScript_Trainer9:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer9PreChampion @@ -691,12 +691,12 @@ SecretBase_EventScript_Trainer9:: @ 827620E goto SecretBase_EventScript_BattleTrainer end -SecretBase_EventScript_Trainer9PreChampion:: @ 827625D +SecretBase_EventScript_Trainer9PreChampion:: msgbox SecretBase_Text_Trainer9PreChampion, MSGBOX_DEFAULT release end -SecretBase_EventScript_Trainer9DeclineBattle:: @ 8276267 +SecretBase_EventScript_Trainer9DeclineBattle:: special DeclinedSecretBaseBattle setvar VAR_RESULT, 0 special SetBattledOwnerFromResult @@ -704,12 +704,12 @@ SecretBase_EventScript_Trainer9DeclineBattle:: @ 8276267 release end -SecretBase_EventScript_Trainer9PostBattle:: @ 827627C +SecretBase_EventScript_Trainer9PostBattle:: msgbox SecretBase_Text_Trainer9PostBattle, MSGBOX_DEFAULT release end -SecretBase_EventScript_BattleTrainer:: @ 8276286 +SecretBase_EventScript_BattleTrainer:: special PrepSecretBaseBattleFlags setvar VAR_0x8004, SPECIAL_BATTLE_SECRET_BASE setvar VAR_0x8005, 0 @@ -725,59 +725,59 @@ SecretBase_EventScript_BattleTrainer:: @ 8276286 release end -SecretBase_EventScript_DrewSecretBaseBattle:: @ 82762BD +SecretBase_EventScript_DrewSecretBaseBattle:: special DrewSecretBaseBattle return -SecretBase_EventScript_WonSecretBaseBattle:: @ 82762C1 +SecretBase_EventScript_WonSecretBaseBattle:: special WonSecretBaseBattle return -SecretBase_EventScript_LostSecretBaseBattle:: @ 82762C5 +SecretBase_EventScript_LostSecretBaseBattle:: special LostSecretBaseBattle return .include "data/scripts/secret_power_tm.inc" -SecretBase_EventScript_DollInteract:: @ 82766A2 +SecretBase_EventScript_DollInteract:: special CheckInteractedWithFriendsDollDecor end -SecretBase_EventScript_CushionInteract:: @ 82766A6 +SecretBase_EventScript_CushionInteract:: special CheckInteractedWithFriendsCushionDecor end -SecretBase_Text_AllDecorationsWillBeReturned: @ 82766AA +SecretBase_Text_AllDecorationsWillBeReturned: .string "All decorations and furniture in your\n" .string "SECRET BASE will be returned to your PC.\p" .string "Is that okay?$" -SecretBase_Text_WantToRegisterSecretBase: @ 8276707 +SecretBase_Text_WantToRegisterSecretBase: .string "Do you want to register\n" .string "{STR_VAR_1}'s SECRET BASE?$" -SecretBase_Text_AlreadyRegisteredDelete: @ 8276731 +SecretBase_Text_AlreadyRegisteredDelete: .string "This data is already registered.\n" .string "Would you like to delete it?$" -SecretBase_Text_TooManyBasesDeleteSome: @ 827676F +SecretBase_Text_TooManyBasesDeleteSome: .string "Up to 10 locations can be registered.\p" .string "Delete a location if you want to\n" .string "register another location.$" -SecretBase_Text_RegistrationCompleted: @ 82767D1 +SecretBase_Text_RegistrationCompleted: .string "Registration completed.$" -SecretBase_Text_DataUnregistered: @ 82767E9 +SecretBase_Text_DataUnregistered: .string "Data has been unregistered.$" -SecretBase_Text_BootUpPC: @ 8276805 +SecretBase_Text_BootUpPC: .string "{PLAYER} booted up the PC.$" -SecretBase_Text_WhatWouldYouLikeToDo: @ 827681A +SecretBase_Text_WhatWouldYouLikeToDo: .string "What would you like to do?$" -SecretBase_Text_RegistryInfo: @ 8276835 +SecretBase_Text_RegistryInfo: .string "Once registered, a SECRET BASE will not\n" .string "disappear unless the other TRAINER\l" .string "moves it to a different location.\p" @@ -787,27 +787,27 @@ SecretBase_Text_RegistryInfo: @ 8276835 .string "Up to ten SECRET BASE locations\n" .string "may be registered.$" -SecretBase_Text_BattleTowerShield: @ 827692B +SecretBase_Text_BattleTowerShield: .string "A shield of {STR_VAR_2} that marks winning\n" .string "{STR_VAR_1} times in a row at the BATTLE TOWER.$" -SecretBase_Text_ToyTV: @ 8276974 +SecretBase_Text_ToyTV: .string "A realistic toy TV. It could be easily\n" .string "mistaken for the real thing.$" -SecretBase_Text_SeedotTV: @ 82769B8 +SecretBase_Text_SeedotTV: .string "A toy TV shaped like a SEEDOT.\n" .string "It looks ready to roll away on its own…$" -SecretBase_Text_SkittyTV: @ 82769FF +SecretBase_Text_SkittyTV: .string "A toy TV shaped like a SKITTY.\n" .string "It looks ready to stroll away…$" -SecretBase_Text_WouldYouLikeToMoveBases: @ 8276A3D +SecretBase_Text_WouldYouLikeToMoveBases: .string "You may only make one SECRET BASE.\p" .string "Would you like to move from the SECRET\n" .string "BASE near {STR_VAR_1}?$" -SecretBase_Text_MovingCompletedUseSecretPower: @ 8276A95 +SecretBase_Text_MovingCompletedUseSecretPower: .string "Moving completed.\p" .string "Would you like to use the SECRET POWER?$" diff --git a/data/scripts/secret_power_tm.inc b/data/scripts/secret_power_tm.inc index 6684ec98b16e..41c21e1004fc 100644 --- a/data/scripts/secret_power_tm.inc +++ b/data/scripts/secret_power_tm.inc @@ -1,4 +1,4 @@ -Route111_Text_MakingRoomUseTMToMakeYourOwn: @ 82762C9 +Route111_Text_MakingRoomUseTMToMakeYourOwn: .string "What's that?\n" .string "What am I doing?\p" .string "I'm thinking about making my own room\n" @@ -6,7 +6,7 @@ Route111_Text_MakingRoomUseTMToMakeYourOwn: @ 82762C9 .string "I know! I'll give you this TM.\n" .string "Will you use it to make your own room?$" -Route111_Text_ExplainSecretPower: @ 827636E +Route111_Text_ExplainSecretPower: .string "Find a big tree that looks like it might\n" .string "drop some vines.\p" .string "Use SECRET POWER in front of the tree.\n" @@ -24,16 +24,16 @@ Route111_Text_ExplainSecretPower: @ 827636E .string "I'm going to look for other places, too.\n" .string "Okay, bye!$" -Route111_Text_DontWantThis: @ 827655C +Route111_Text_DontWantThis: .string "Oh, you don't want this?\n" .string "If you change your mind, tell me, okay?$" -Route111_Text_DontHaveAnyRoom: @ 827659D +Route111_Text_DontHaveAnyRoom: .string "Oh, you don't have any room for this.\p" .string "I'll hold on to it, so come back for it\n" .string "another time, okay?$" -Route111_EventScript_SecretPowerMan:: @ 82765FF +Route111_EventScript_SecretPowerMan:: lock faceplayer msgbox Route111_Text_MakingRoomUseTMToMakeYourOwn, MSGBOX_YESNO @@ -43,7 +43,7 @@ Route111_EventScript_SecretPowerMan:: @ 82765FF release end -Route111_EventScript_GiveSecretPower:: @ 827661E +Route111_EventScript_GiveSecretPower:: giveitem ITEM_TM43 compare VAR_RESULT, FALSE goto_if_eq Route111_EventScript_NoRoomForSecretPower @@ -61,22 +61,22 @@ Route111_EventScript_GiveSecretPower:: @ 827661E release end -Route111_EventScript_SecretPowerManExit:: @ 827666A +Route111_EventScript_SecretPowerManExit:: applymovement VAR_LAST_TALKED, Route111_Movement_SecretPowerManExit waitmovement 0 return -Route111_EventScript_SecretPowerManExitNorth:: @ 8276675 +Route111_EventScript_SecretPowerManExitNorth:: applymovement VAR_LAST_TALKED, Route111_Movement_SecretPowerManExitNorth waitmovement 0 return -Route111_EventScript_NoRoomForSecretPower:: @ 8276680 +Route111_EventScript_NoRoomForSecretPower:: msgbox Route111_Text_DontHaveAnyRoom, MSGBOX_DEFAULT release end -Route111_Movement_SecretPowerManExit: @ 827668A +Route111_Movement_SecretPowerManExit: walk_down walk_down walk_down @@ -90,7 +90,7 @@ Route111_Movement_SecretPowerManExit: @ 827668A walk_down step_end -Route111_Movement_SecretPowerManExitNorth: @ 8276696 +Route111_Movement_SecretPowerManExitNorth: walk_left walk_down walk_down diff --git a/data/scripts/set_gym_trainers.inc b/data/scripts/set_gym_trainers.inc index c263e42d4fe1..1faa9f7d5bca 100644 --- a/data/scripts/set_gym_trainers.inc +++ b/data/scripts/set_gym_trainers.inc @@ -1,4 +1,4 @@ -Common_EventScript_SetGymTrainers:: @ 8271F43 +Common_EventScript_SetGymTrainers:: switch VAR_0x8008 case 1, RustboroCity_Gym_SetGymTrainers case 2, DewfordTown_Gym_SetGymTrainers @@ -10,13 +10,13 @@ Common_EventScript_SetGymTrainers:: @ 8271F43 case 8, SootopolisCity_Gym_SetGymTrainers end -RustboroCity_Gym_SetGymTrainers:: @ 8271FA1 +RustboroCity_Gym_SetGymTrainers:: settrainerflag TRAINER_JOSH settrainerflag TRAINER_TOMMY settrainerflag TRAINER_MARC return -DewfordTown_Gym_SetGymTrainers:: @ 8271FAB +DewfordTown_Gym_SetGymTrainers:: settrainerflag TRAINER_TAKAO settrainerflag TRAINER_JOCELYN settrainerflag TRAINER_LAURA @@ -25,7 +25,7 @@ DewfordTown_Gym_SetGymTrainers:: @ 8271FAB settrainerflag TRAINER_LILITH return -MauvilleCity_Gym_SetGymTrainers:: @ 8271FBE +MauvilleCity_Gym_SetGymTrainers:: settrainerflag TRAINER_KIRK settrainerflag TRAINER_SHAWN settrainerflag TRAINER_BEN @@ -33,7 +33,7 @@ MauvilleCity_Gym_SetGymTrainers:: @ 8271FBE settrainerflag TRAINER_ANGELO return -LavaridgeTown_Gym_SetGymTrainers:: @ 8271FCE +LavaridgeTown_Gym_SetGymTrainers:: settrainerflag TRAINER_COLE settrainerflag TRAINER_AXLE settrainerflag TRAINER_KEEGAN @@ -44,7 +44,7 @@ LavaridgeTown_Gym_SetGymTrainers:: @ 8271FCE settrainerflag TRAINER_ELI return -PetalburgCity_Gym_SetGymTrainers:: @ 8271FE7 +PetalburgCity_Gym_SetGymTrainers:: settrainerflag TRAINER_RANDALL settrainerflag TRAINER_PARKER settrainerflag TRAINER_GEORGE @@ -54,7 +54,7 @@ PetalburgCity_Gym_SetGymTrainers:: @ 8271FE7 settrainerflag TRAINER_JODY return -FortreeCity_Gym_SetGymTrainers:: @ 8271FFD +FortreeCity_Gym_SetGymTrainers:: settrainerflag TRAINER_JARED settrainerflag TRAINER_FLINT settrainerflag TRAINER_ASHLEY @@ -63,7 +63,7 @@ FortreeCity_Gym_SetGymTrainers:: @ 8271FFD settrainerflag TRAINER_DARIUS return -MossdeepCity_Gym_SetGymTrainers:: @ 8272010 +MossdeepCity_Gym_SetGymTrainers:: settrainerflag TRAINER_PRESTON settrainerflag TRAINER_VIRGIL settrainerflag TRAINER_BLAKE @@ -78,7 +78,7 @@ MossdeepCity_Gym_SetGymTrainers:: @ 8272010 settrainerflag TRAINER_NICHOLAS return -SootopolisCity_Gym_SetGymTrainers:: @ 8272035 +SootopolisCity_Gym_SetGymTrainers:: settrainerflag TRAINER_ANDREA settrainerflag TRAINER_CRISSY settrainerflag TRAINER_BRIANNA diff --git a/data/scripts/shared_secret_base.inc b/data/scripts/shared_secret_base.inc index 9e175987223e..ef389d3fce3d 100644 --- a/data/scripts/shared_secret_base.inc +++ b/data/scripts/shared_secret_base.inc @@ -5,25 +5,25 @@ SecretBase_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, SecretBase_OnResume .byte 0 -SecretBase_OnWarp: @ 823B498 +SecretBase_OnWarp: map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, SecretBase_EventScript_InitDecorations .2byte 0 -SecretBase_OnTransition: @ 823B4A2 +SecretBase_OnTransition: call SecretBase_EventScript_SetDecorationFlags special SetSecretBaseOwnerGfxId special InitSecretBaseVars end -SecretBase_OnFrame: @ 823B4AE +SecretBase_OnFrame: map_script_2 VAR_INIT_SECRET_BASE, 0, SecretBase_EventScript_FirstEntrance .2byte 0 -SecretBase_OnResume: @ 823B4B8 +SecretBase_OnResume: setstepcallback STEP_CB_SECRET_BASE end -SecretBase_EventScript_PC:: @ 823B4BB +SecretBase_EventScript_PC:: lockall playse SE_PC_LOGIN message SecretBase_Text_BootUpPC @@ -35,19 +35,19 @@ SecretBase_EventScript_PC:: @ 823B4BB goto SecretBase_EventScript_PCShowMainMenu end -SecretBase_EventScript_PCShowMainMenu:: @ 823B4D3 +SecretBase_EventScript_PCShowMainMenu:: message SecretBase_Text_WhatWouldYouLikeToDo waitmessage goto_if_set FLAG_SECRET_BASE_REGISTRY_ENABLED, SecretBase_EventScript_PCMainMenuWithRegister goto SecretBase_EventScript_PCMainMenuWithoutRegister end -SecretBase_EventScript_PCCancel:: @ 823B4E8 +SecretBase_EventScript_PCCancel:: lockall goto SecretBase_EventScript_PCShowMainMenu end -SecretBase_EventScript_PCMainMenuWithRegister:: @ 823B4EF +SecretBase_EventScript_PCMainMenuWithRegister:: multichoice 0, 0, MULTI_BASE_PC_WITH_REGISTRY, FALSE switch VAR_RESULT case 0, SecretBase_EventScript_PCDecorationMenu @@ -57,7 +57,7 @@ SecretBase_EventScript_PCMainMenuWithRegister:: @ 823B4EF case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff end -SecretBase_EventScript_PCMainMenuWithoutRegister:: @ 823B531 +SecretBase_EventScript_PCMainMenuWithoutRegister:: multichoice 0, 0, MULTI_BASE_PC_NO_REGISTRY, FALSE switch VAR_RESULT case 0, SecretBase_EventScript_PCDecorationMenu @@ -66,7 +66,7 @@ SecretBase_EventScript_PCMainMenuWithoutRegister:: @ 823B531 case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff end -SecretBase_EventScript_PCPackUp:: @ 823B568 +SecretBase_EventScript_PCPackUp:: msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_PCShowMainMenu @@ -75,15 +75,15 @@ SecretBase_EventScript_PCPackUp:: @ 823B568 releaseall end -SecretBase_EventScript_PCDecorationMenu:: @ 823B581 +SecretBase_EventScript_PCDecorationMenu:: special ShowSecretBaseDecorationMenu end -SecretBase_EventScript_PCRegistryMenu:: @ 823B585 +SecretBase_EventScript_PCRegistryMenu:: special ShowSecretBaseRegistryMenu end -SecretBase_EventScript_RecordMixingPC:: @ 823B589 +SecretBase_EventScript_RecordMixingPC:: lockall message SecretBase_Text_BootUpPC playse SE_PC_LOGIN @@ -95,7 +95,7 @@ SecretBase_EventScript_RecordMixingPC:: @ 823B589 goto SecretBase_EventScript_PCRegisterMenu end -SecretBase_EventScript_PCRegisterMenu:: @ 823B5A1 +SecretBase_EventScript_PCRegisterMenu:: message SecretBase_Text_WhatWouldYouLikeToDo waitmessage multichoice 0, 0, MULTI_REGISTER_MENU, FALSE @@ -107,12 +107,12 @@ SecretBase_EventScript_PCRegisterMenu:: @ 823B5A1 case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff end -SecretBase_EventScript_ShowRegisterMenu:: @ 823B5E9 +SecretBase_EventScript_ShowRegisterMenu:: lockall goto SecretBase_EventScript_PCRegisterMenu end -SecretBase_EventScript_PCRegister:: @ 823B5F0 +SecretBase_EventScript_PCRegister:: special GetCurSecretBaseRegistrationValidity compare VAR_RESULT, 1 goto_if_eq SecretBase_EventScript_AlreadyRegistered @@ -128,7 +128,7 @@ SecretBase_EventScript_PCRegister:: @ 823B5F0 releaseall end -SecretBase_EventScript_AlreadyRegistered:: @ 823B62F +SecretBase_EventScript_AlreadyRegistered:: msgbox SecretBase_Text_AlreadyRegisteredDelete, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_PCRegisterMenu @@ -138,51 +138,51 @@ SecretBase_EventScript_AlreadyRegistered:: @ 823B62F releaseall end -SecretBase_EventScript_CantRegisterTooManyBases:: @ 823B652 +SecretBase_EventScript_CantRegisterTooManyBases:: msgbox SecretBase_Text_TooManyBasesDeleteSome, MSGBOX_SIGN special DoSecretBasePCTurnOffEffect closemessage releaseall end -SecretBase_EventScript_PCRegistryInfo:: @ 823B660 +SecretBase_EventScript_PCRegistryInfo:: msgbox SecretBase_Text_RegistryInfo, MSGBOX_DEFAULT goto SecretBase_EventScript_PCRegisterMenu end -SecretBase_EventScript_PCTurnOff:: @ 823B66E +SecretBase_EventScript_PCTurnOff:: special DoSecretBasePCTurnOffEffect closemessage releaseall end @ Unused -SecretBase_EventScript_Poster:: @ 823B674 +SecretBase_EventScript_Poster:: special CheckInteractedWithFriendsPosterDecor end @ Unused -SecretBase_EventScript_FurnitureBottom:: @ 823B678 +SecretBase_EventScript_FurnitureBottom:: special CheckInteractedWithFriendsFurnitureBottom end @ Unused -SecretBase_EventScript_FurnitureMiddle:: @ 823B67C +SecretBase_EventScript_FurnitureMiddle:: special CheckInteractedWithFriendsFurnitureMiddle end @ Unused -SecretBase_EventScript_FurnitureTop:: @ 823B680 +SecretBase_EventScript_FurnitureTop:: special CheckInteractedWithFriendsFurnitureTop end -SecretBase_EventScript_SandOrnament:: @ 823B684 +SecretBase_EventScript_SandOrnament:: special CheckInteractedWithFriendsSandOrnament dofieldeffect FLDEFF_SAND_PILLAR waitstate end -SecretBase_EventScript_ShieldOrToyTV:: @ 823B68C +SecretBase_EventScript_ShieldOrToyTV:: special InteractWithShieldOrTVDecoration compare VAR_RESULT, 0 goto_if_eq SecretBase_EventScript_BattleTowerShield @@ -194,31 +194,31 @@ SecretBase_EventScript_ShieldOrToyTV:: @ 823B68C goto_if_eq SecretBase_EventScript_SkittyTV end -SecretBase_EventScript_BattleTowerShield:: @ 823B6BC +SecretBase_EventScript_BattleTowerShield:: msgbox SecretBase_Text_BattleTowerShield, MSGBOX_SIGN end -SecretBase_EventScript_ToyTV:: @ 823B6C5 +SecretBase_EventScript_ToyTV:: msgbox SecretBase_Text_ToyTV, MSGBOX_SIGN end -SecretBase_EventScript_SeedotTV:: @ 823B6CE +SecretBase_EventScript_SeedotTV:: msgbox SecretBase_Text_SeedotTV, MSGBOX_SIGN end -SecretBase_EventScript_SkittyTV:: @ 823B6D7 +SecretBase_EventScript_SkittyTV:: msgbox SecretBase_Text_SkittyTV, MSGBOX_SIGN end -SecretBase_Text_SmallIndentInWall:: @ 823B6E0 +SecretBase_Text_SmallIndentInWall:: .string "There's a small indent in the wall.$" -SecretBase_Text_IndentUseSecretPower:: @ 823B704 +SecretBase_Text_IndentUseSecretPower:: .string "There's a small indent in the wall.\p" .string "Use the SECRET POWER?$" -SecretBase_Text_DiscoveredSmallCavern:: @ 823B73E +SecretBase_Text_DiscoveredSmallCavern:: .string "Discovered a small cavern!$" -SecretBase_Text_WantToMakeYourSecretBaseHere: @ 823B759 +SecretBase_Text_WantToMakeYourSecretBaseHere: .string "Want to make your SECRET BASE here?$" diff --git a/data/scripts/std_msgbox.inc b/data/scripts/std_msgbox.inc index 10b46700e794..941cc0e96176 100644 --- a/data/scripts/std_msgbox.inc +++ b/data/scripts/std_msgbox.inc @@ -1,4 +1,4 @@ -Std_MsgboxNPC: @ 8271315 +Std_MsgboxNPC: lock faceplayer message 0x0 @@ -7,7 +7,7 @@ Std_MsgboxNPC: @ 8271315 release return -Std_MsgboxSign: @ 8271320 +Std_MsgboxSign: lockall message 0x0 waitmessage @@ -15,34 +15,34 @@ Std_MsgboxSign: @ 8271320 releaseall return -Std_MsgboxDefault: @ 827132A +Std_MsgboxDefault: message 0x0 waitmessage waitbuttonpress return -Std_MsgboxYesNo: @ 8271332 +Std_MsgboxYesNo: message 0x0 waitmessage yesnobox 20, 8 return -Std_MsgboxGetPoints: @ 827133C +Std_MsgboxGetPoints: message 0x0 playfanfare MUS_OBTAIN_B_POINTS waitfanfare waitmessage return -Std_10: @ 8271347 +Std_10: pokenavcall 0x0 waitmessage return -EventScript_UnusedReturn: @ 827134E +EventScript_UnusedReturn: return -Common_EventScript_SaveGame:: @ 827134F +Common_EventScript_SaveGame:: special SaveGame waitstate return diff --git a/data/scripts/surf.inc b/data/scripts/surf.inc index af6cac1dadd2..91580422e1cb 100644 --- a/data/scripts/surf.inc +++ b/data/scripts/surf.inc @@ -1,4 +1,4 @@ -EventScript_UseSurf:: @ 8271EA0 +EventScript_UseSurf:: checkpartymove MOVE_SURF compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_EndUseSurf @@ -10,7 +10,7 @@ EventScript_UseSurf:: @ 8271EA0 goto_if_eq EventScript_ReleaseUseSurf msgbox gText_PlayerUsedSurf, MSGBOX_DEFAULT dofieldeffect FLDEFF_USE_SURF -EventScript_ReleaseUseSurf:: @ 8271ED5 +EventScript_ReleaseUseSurf:: releaseall -EventScript_EndUseSurf:: @ 8271ED6 +EventScript_EndUseSurf:: end diff --git a/data/scripts/test_signpost.inc b/data/scripts/test_signpost.inc index 482fe18f2709..6a8be547baa8 100644 --- a/data/scripts/test_signpost.inc +++ b/data/scripts/test_signpost.inc @@ -1,7 +1,7 @@ -Text_ThisIsATestSignpostMsg:: @ 82C840A +Text_ThisIsATestSignpostMsg:: .string "This is a test message.\n" .string "This is a signpost.$" -EventScript_TestSignpostMsg:: @ 82C8436 +EventScript_TestSignpostMsg:: msgbox Text_ThisIsATestSignpostMsg, MSGBOX_SIGN end diff --git a/data/scripts/trainer_battle.inc b/data/scripts/trainer_battle.inc index 0b5c1118b2c4..a59b58a6f7f1 100644 --- a/data/scripts/trainer_battle.inc +++ b/data/scripts/trainer_battle.inc @@ -1,13 +1,13 @@ -EventScript_StartTrainerApproach:: @ 8271354 +EventScript_StartTrainerApproach:: selectapproachingtrainer lockfortrainer -EventScript_TrainerApproach:: @ 8271356 +EventScript_TrainerApproach:: special PlayTrainerEncounterMusic special DoTrainerApproach waitstate goto EventScript_ShowTrainerIntroMsg -EventScript_TryDoNormalTrainerBattle:: @ 8271362 +EventScript_TryDoNormalTrainerBattle:: lock faceplayer applymovement VAR_LAST_TALKED, Movement_RevealTrainer @@ -19,10 +19,10 @@ EventScript_TryDoNormalTrainerBattle:: @ 8271362 special SetTrainerFacingDirection goto EventScript_ShowTrainerIntroMsg -EventScript_NoNormalTrainerBattle:: @ 8271389 +EventScript_NoNormalTrainerBattle:: gotopostbattlescript -EventScript_TryDoDoubleTrainerBattle:: @ 827138A +EventScript_TryDoDoubleTrainerBattle:: lock faceplayer call EventScript_RevealTrainer @@ -36,24 +36,24 @@ EventScript_TryDoDoubleTrainerBattle:: @ 827138A special SetTrainerFacingDirection goto EventScript_ShowTrainerIntroMsg -EventScript_NotEnoughMonsForDoubleBattle:: @ 82713BA +EventScript_NotEnoughMonsForDoubleBattle:: special ShowTrainerCantBattleSpeech waitmessage waitbuttonpress release end -EventScript_NoDoubleTrainerBattle:: @ 82713C1 +EventScript_NoDoubleTrainerBattle:: gotopostbattlescript -EventScript_DoNoIntroTrainerBattle:: @ 82713C2 +EventScript_DoNoIntroTrainerBattle:: applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 special PlayTrainerEncounterMusic trainerbattlebegin gotopostbattlescript -EventScript_TryDoRematchBattle:: @ 82713D1 +EventScript_TryDoRematchBattle:: call EventScript_RevealTrainer specialvar VAR_RESULT, IsTrainerReadyForRematch compare VAR_RESULT, FALSE @@ -68,10 +68,10 @@ EventScript_TryDoRematchBattle:: @ 82713D1 releaseall end -EventScript_NoRematchTrainerBattle:: @ 82713F7 +EventScript_NoRematchTrainerBattle:: gotopostbattlescript -EventScript_TryDoDoubleRematchBattle:: @ 82713F8 +EventScript_TryDoDoubleRematchBattle:: specialvar VAR_RESULT, IsTrainerReadyForRematch compare VAR_RESULT, FALSE goto_if_eq EventScript_NoDoubleRematchTrainerBattle @@ -88,26 +88,26 @@ EventScript_TryDoDoubleRematchBattle:: @ 82713F8 releaseall end -EventScript_NoDoubleRematchTrainerBattle:: @ 8271427 +EventScript_NoDoubleRematchTrainerBattle:: gotopostbattlescript -EventScript_NotEnoughMonsForDoubleRematchBattle:: @ 8271428 +EventScript_NotEnoughMonsForDoubleRematchBattle:: special ShowTrainerCantBattleSpeech waitmessage waitbuttonpress release end -EventScript_RevealTrainer:: @ 827142F +EventScript_RevealTrainer:: applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 return -Movement_RevealTrainer: @ 827143A +Movement_RevealTrainer: reveal_trainer step_end -EventScript_ShowTrainerIntroMsg:: @ 827143C +EventScript_ShowTrainerIntroMsg:: special ShowTrainerIntroSpeech waitmessage waitbuttonpress @@ -116,7 +116,7 @@ EventScript_ShowTrainerIntroMsg:: @ 827143C goto_if_eq EventScript_TrainerApproach goto EventScript_DoTrainerBattle -EventScript_DoTrainerBattle:: @ 8271454 +EventScript_DoTrainerBattle:: trainerbattlebegin @ Below battle mode check only needed in FRLG specialvar VAR_RESULT, GetTrainerBattleMode @@ -130,12 +130,12 @@ EventScript_DoTrainerBattle:: @ 8271454 goto_if_eq EventScript_EndTrainerBattle compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC goto_if_eq EventScript_EndTrainerBattle -EventScript_EndTrainerBattle:: @ 8271491 +EventScript_EndTrainerBattle:: gotobeatenscript releaseall end -Std_MsgboxAutoclose:: @ 8271494 +Std_MsgboxAutoclose:: message 0x0 waitmessage waitbuttonpress diff --git a/data/scripts/trainer_hill.inc b/data/scripts/trainer_hill.inc index e4e453228a7b..f3ba5f035a2f 100644 --- a/data/scripts/trainer_hill.inc +++ b/data/scripts/trainer_hill.inc @@ -1,4 +1,4 @@ -TrainerHill_OnResume: @ 82C8336 +TrainerHill_OnResume: setvar VAR_TEMP_2, 0 trainerhill_resumetimer frontier_get FRONTIER_DATA_BATTLE_OUTCOME @@ -10,29 +10,29 @@ TrainerHill_OnResume: @ 82C8336 goto_if_eq TrainerHill_1F_EventScript_Lost end -TrainerHill_OnWarp: @ 82C8372 +TrainerHill_OnWarp: map_script_2 VAR_TEMP_3, 0, TrainerHill_1F_EventScript_DummyOnWarp .2byte 0 -TrainerHill_1F_EventScript_DummyOnWarp:: @ 82C837C +TrainerHill_1F_EventScript_DummyOnWarp:: setvar VAR_TEMP_3, 1 .ifdef BUGFIX end @ Missing end. By chance, the next byte (0x02 of VAR_TEMP_2) is also the id for the end cmd .endif -TrainerHill_OnFrame: @ 82C8381 +TrainerHill_OnFrame: map_script_2 VAR_TEMP_2, 0, TrainerHill_1F_EventScript_DummyWarpToEntranceCounter map_script_2 VAR_TEMP_1, 1, TrainerHill_EventScript_WarpToEntranceCounter .2byte 0 -EventScript_TrainerHillTimer:: @ 82C8393 +EventScript_TrainerHillTimer:: lockall trainerhill_gettime msgbox TrainerHill_Entrance_Text_ChallengeTime, MSGBOX_DEFAULT releaseall end -TrainerHill_1F_EventScript_DummyWarpToEntranceCounter:: @ 82C83A6 +TrainerHill_1F_EventScript_DummyWarpToEntranceCounter:: setvar VAR_TEMP_2, 1 trainerhill_getusingereader compare VAR_RESULT, TRUE @ VAR_RESULT always FALSE here @@ -40,30 +40,30 @@ TrainerHill_1F_EventScript_DummyWarpToEntranceCounter:: @ 82C83A6 end @ Never reached -TrainerHill_1F_EventScript_WarpSilentToEntranceCounter:: @ 82C83BF +TrainerHill_1F_EventScript_WarpSilentToEntranceCounter:: warpsilent MAP_TRAINER_HILL_ENTRANCE, 255, 9, 6 waitstate end -TrainerHill_1F_EventScript_Lost:: @ 82C83C9 +TrainerHill_1F_EventScript_Lost:: trainerhill_settrainerflags trainerhill_lost setvar VAR_TEMP_1, 1 end -TrainerHill_EventScript_WarpToEntranceCounter:: @ 82C83DF +TrainerHill_EventScript_WarpToEntranceCounter:: setvar VAR_TEMP_1, 0 warp MAP_TRAINER_HILL_ENTRANCE, 255, 9, 6 waitstate end @ Unused -TrainerHill_1F_Movement_SetInvisible:: @ 82C83EE +TrainerHill_1F_Movement_SetInvisible:: set_invisible step_end @ TRAINER_PHILLIP is an actual Trainer on the SS Tidal, but is used as a placeholder here -TrainerHill_EventScript_TrainerBattle:: @ 82C83F0 +TrainerHill_EventScript_TrainerBattle:: trainerbattle TRAINER_BATTLE_HILL, TRAINER_PHILLIP, 0, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText trainerhill_postbattletext waitmessage diff --git a/data/scripts/trainer_script.inc b/data/scripts/trainer_script.inc index c77e628ee5ec..2a2384c667f6 100644 --- a/data/scripts/trainer_script.inc +++ b/data/scripts/trainer_script.inc @@ -1,4 +1,4 @@ -Std_RegisteredInMatchCall:: @ 82742C9 +Std_RegisteredInMatchCall:: buffertrainerclassname 0, VAR_0x8000 buffertrainername 1, VAR_0x8000 closemessage @@ -10,14 +10,14 @@ Std_RegisteredInMatchCall:: @ 82742C9 delay 30 return -EventScript_TryGetTrainerScript:: @ 82742E6 +EventScript_TryGetTrainerScript:: special ShouldTryGetTrainerScript compare VAR_RESULT, 1 goto_if_eq EventScript_GotoTrainerScript releaseall end -EventScript_GotoTrainerScript:: @ 82742F6 +EventScript_GotoTrainerScript:: gotobeatenscript releaseall end diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc index 1dfc1884bf6b..14f3ade48d76 100644 --- a/data/scripts/tv.inc +++ b/data/scripts/tv.inc @@ -1,4 +1,4 @@ -EventScript_TV:: @ 827EE0B +EventScript_TV:: lockall incrementgamestat GAME_STAT_WATCHED_TV special ResetTVShowState @@ -15,7 +15,7 @@ EventScript_TV:: @ 827EE0B goto EventScript_TryDoPokeNews end -EventScript_TryDoTVShow:: @ 827EE54 +EventScript_TryDoTVShow:: specialvar VAR_0x8004, GetRandomActiveShowIdx compare VAR_0x8004, 255 goto_if_eq EventScript_MomDadMightLikeThis2 @@ -28,14 +28,14 @@ EventScript_TryDoTVShow:: @ 827EE54 goto_if_ne EventScript_DoTVShow end -EventScript_MomDadMightLikeThis1:: @ 827EE8A +EventScript_MomDadMightLikeThis1:: special GetMomOrDadStringForTVMessage msgbox gText_MomOrDadMightLikeThisProgram, MSGBOX_DEFAULT special TurnOffTVScreen releaseall end -EventScript_PlayersHouseMovie:: @ 827EE9A +EventScript_PlayersHouseMovie:: msgbox PlayersHouse_1F_Text_TheresAMovieOnTV, MSGBOX_DEFAULT releaseall end @@ -43,7 +43,7 @@ EventScript_PlayersHouseMovie:: @ 827EE9A @ special InitRoamer is a junk call. Its input var (VAR_0x8004) hasn't been set, and @ It's called again when Mom actually asks for the color, overwriting @ whatever it does here. -EventScript_PlayersHouseLatiNewsFlash:: @ 827EEA4 +EventScript_PlayersHouseLatiNewsFlash:: msgbox PlayersHouse_1F_Text_LatiEmergencyNewsFlash, MSGBOX_DEFAULT special InitRoamer clearflag FLAG_SYS_TV_LATIAS_LATIOS @@ -52,7 +52,7 @@ EventScript_PlayersHouseLatiNewsFlash:: @ 827EEA4 releaseall end -EventScript_DoTVShow:: @ 827EEBA +EventScript_DoTVShow:: special DoTVShow waitmessage waitbuttonpress @@ -61,19 +61,19 @@ EventScript_DoTVShow:: @ 827EEBA goto EventScript_TurnOffTV end -EventScript_TurnOffTV:: @ 827EED0 +EventScript_TurnOffTV:: special TurnOffTVScreen setflag FLAG_SYS_TV_WATCH releaseall end -EventScript_MomDadMightLikeThis2:: @ 827EED8 +EventScript_MomDadMightLikeThis2:: special GetMomOrDadStringForTVMessage msgbox gText_MomOrDadMightLikeThisProgram, MSGBOX_DEFAULT goto EventScript_TurnOffTV end -EventScript_TryDoPokeNews:: @ 827EEE9 +EventScript_TryDoPokeNews:: special DoPokeNews compare VAR_RESULT, FALSE goto_if_eq EventScript_TryDoTVShow @@ -82,7 +82,7 @@ EventScript_TryDoPokeNews:: @ 827EEE9 goto EventScript_TurnOffTV end -EventScript_DoInSearchOfTrainers:: @ 827EEFF +EventScript_DoInSearchOfTrainers:: special DoTVShowInSearchOfTrainers waitmessage waitbuttonpress diff --git a/data/specials.inc b/data/specials.inc index eacc6bf5e7ac..30276f0532be 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -7,7 +7,7 @@ .set __special__, 0 .align 2 -gSpecials:: @ 81DBA64 +gSpecials:: def_special HealPlayerParty def_special SetCableClubWarp def_special DoCableClubWarp diff --git a/data/text/abnormal_weather.inc b/data/text/abnormal_weather.inc index 42e61e68dbb2..f7193121e25d 100644 --- a/data/text/abnormal_weather.inc +++ b/data/text/abnormal_weather.inc @@ -1,7 +1,7 @@ -gText_AbnormalWeatherEnded_Rain:: @ 8273656 +gText_AbnormalWeatherEnded_Rain:: .string "The massive downpour appears to\n" .string "have stopped…$" -gText_AbnormalWeatherEnded_Sun:: @ 8273684 +gText_AbnormalWeatherEnded_Sun:: .string "The intense sunshine appears to\n" .string "have subsided…$" diff --git a/data/text/apprentice.inc b/data/text/apprentice.inc index 7d5bab198624..6688a0c697d8 100644 --- a/data/text/apprentice.inc +++ b/data/text/apprentice.inc @@ -1,68 +1,68 @@ -gText_ApprenticeChallenge0:: @ 82B6EA5 +gText_ApprenticeChallenge0:: .string "Um, I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "Snivel… This tension is getting to me…$" -gText_ApprenticeChallenge1:: @ 82B6EEC +gText_ApprenticeChallenge1:: .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!\n" .string "Here we come!$" -gText_ApprenticeChallenge2:: @ 82B6F16 +gText_ApprenticeChallenge2:: .string "I'm the no. {STR_VAR_2} apprentice of {STR_VAR_1}!\n" .string "Accept my challenge!$" -gText_ApprenticeChallenge3:: @ 82B6F4C +gText_ApprenticeChallenge3:: .string "Um… I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice…\n" .string "Do you think someone like me can win?$" -gText_ApprenticeChallenge4:: @ 82B6F92 +gText_ApprenticeChallenge4:: .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!\n" .string "I'll let you challenge me!$" -gText_ApprenticeChallenge5:: @ 82B6FC9 +gText_ApprenticeChallenge5:: .string "I'm horribly busy, but I also happen\n" .string "to be {STR_VAR_1}'s no. {STR_VAR_2} apprentice.$" -gText_ApprenticeChallenge6:: @ 82B700C +gText_ApprenticeChallenge6:: .string "I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "Glad to meet you!$" -gText_ApprenticeChallenge7:: @ 82B703A +gText_ApprenticeChallenge7:: .string "I serve as {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "May I begin?$" -gText_ApprenticeChallenge8:: @ 82B706A +gText_ApprenticeChallenge8:: .string "Eek! I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!\n" .string "I'll do my best!$" -gText_ApprenticeChallenge9:: @ 82B709C +gText_ApprenticeChallenge9:: .string "Yeehaw! I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!\n" .string "Put 'em up!$" -gText_ApprenticeChallenge10:: @ 82B70CC +gText_ApprenticeChallenge10:: .string "I'm {STR_VAR_1}'s 1,000th apprentice!\n" .string "Actually, I'm no. {STR_VAR_2}! Here goes!$" -gText_ApprenticeChallenge11:: @ 82B710A +gText_ApprenticeChallenge11:: .string "Yeah, I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice!\n" .string "Let's get rockin' and a-rollin'!$" -gText_ApprenticeChallenge12:: @ 82B714D +gText_ApprenticeChallenge12:: .string "Yippee-yahoo! I'm what you call\n" .string "{STR_VAR_1}'s no. {STR_VAR_2} apprentice!$" -gText_ApprenticeChallenge13:: @ 82B7185 +gText_ApprenticeChallenge13:: .string "Cough! I'm {STR_VAR_1}'s no. {STR_VAR_2} apprentice.\n" .string "Good to meet you! Cough!$" -gText_ApprenticeChallenge14:: @ 82B71C1 +gText_ApprenticeChallenge14:: .string "This is nerve-racking…\n" .string "I'm the no. {STR_VAR_2} apprentice of {STR_VAR_1}.$" -gText_ApprenticeChallenge15:: @ 82B71F9 +gText_ApprenticeChallenge15:: .string "I am {STR_VAR_1}'s no. {STR_VAR_2} apprentice,\n" .string "and that's no lie.$" -gText_ApprenticePleaseTeach0:: @ 82B7229 +gText_ApprenticePleaseTeach0:: .string "Are you… {PLAYER}?\n" .string "Oh! Sniff…sob…\p" .string "Oh! S-sorry…\n" @@ -74,13 +74,13 @@ gText_ApprenticePleaseTeach0:: @ 82B7229 .string "Please, please, {PLAYER}!\n" .string "Please teach me about POKéMON!$" -gText_ApprenticeRejectTeaching0:: @ 82B731C +gText_ApprenticeRejectTeaching0:: .string "Oh… B-but…\n" .string "Snivel… Waaaaaaah!\p" .string "Please!\n" .string "I'm begging you, please!$" -gText_ApprenticeWhichLevelMode0:: @ 82B735B +gText_ApprenticeWhichLevelMode0:: .string "Oh, really? You will?\n" .string "Awesome! Wicked! Awoooh!\p" .string "Oh… I'm sorry…\n" @@ -90,7 +90,7 @@ gText_ApprenticeWhichLevelMode0:: @ 82B735B .string "Which would be better for me: Level 50\n" .string "or the Open Level?$" -gText_ApprenticeLevelModeThanks0:: @ 82B7423 +gText_ApprenticeLevelModeThanks0:: .string "{STR_VAR_1}?\n" .string "Waaaaah!\p" .string "Oh! I'm so sorry!\n" @@ -100,7 +100,7 @@ gText_ApprenticeLevelModeThanks0:: @ 82B7423 .string "Thank you so much!\l" .string "Please talk with me again!$" -gText_ApprenticePleaseTeach1:: @ 82B74C1 +gText_ApprenticePleaseTeach1:: .string "Wowee! You're {PLAYER}, aren't you?\n" .string "You're awesomely strong, aren't you?\p" .string "I'm {STR_VAR_1}!\n" @@ -109,25 +109,25 @@ gText_ApprenticePleaseTeach1:: @ 82B74C1 .string "Can you be my teacher and tell me\l" .string "lots about being a TRAINER?$" -gText_ApprenticeRejectTeaching1:: @ 82B756F +gText_ApprenticeRejectTeaching1:: .string "Aww, why?\n" .string "Oh, please? Pretty please?\l" .string "Please be my teacher, please!$" -gText_ApprenticeWhichLevelMode1:: @ 82B75B2 +gText_ApprenticeWhichLevelMode1:: .string "Yay! Great!\p" .string "The first thing I wanted to ask you is\n" .string "about the BATTLE TOWER!\p" .string "The Level 50 and Open Level Rooms…\n" .string "Which would be perfect for me?$" -gText_ApprenticeLevelModeThanks1:: @ 82B763F +gText_ApprenticeLevelModeThanks1:: .string "{STR_VAR_1}, huh? That's true!\n" .string "I'll do my best there!\p" .string "If we meet here again, please teach\n" .string "me something else, teacher!$" -gText_ApprenticePleaseTeach2:: @ 82B76AC +gText_ApprenticePleaseTeach2:: .string "Um… Are you {PLAYER}?\n" .string "My name is {STR_VAR_1}.\p" .string "I want to become a POKéMON TRAINER,\n" @@ -136,13 +136,13 @@ gText_ApprenticePleaseTeach2:: @ 82B76AC .string "advice because you're so famous.\p" .string "{PLAYER}, could you give me advice?$" -gText_ApprenticeRejectTeaching2:: @ 82B7772 +gText_ApprenticeRejectTeaching2:: .string "Oh, but…\p" .string "I sincerely want to become a POKéMON\n" .string "TRAINER!\p" .string "Please, can you answer my questions?$" -gText_ApprenticeWhichLevelMode2:: @ 82B77CE +gText_ApprenticeWhichLevelMode2:: .string "Thank you!\n" .string "Here's my first question right away!\p" .string "The BATTLE TOWER has two levels,\n" @@ -150,13 +150,13 @@ gText_ApprenticeWhichLevelMode2:: @ 82B77CE .string "Which level do you think is more\n" .string "suitable for me?$" -gText_ApprenticeLevelModeThanks2:: @ 82B7871 +gText_ApprenticeLevelModeThanks2:: .string "Oh, the {STR_VAR_1} challenge?\n" .string "Understood!\p" .string "If I have another question, I'll come\n" .string "back here for your advice!$" -gText_ApprenticePleaseTeach3:: @ 82B78D4 +gText_ApprenticePleaseTeach3:: .string "Oh? Huh? You're…\n" .string "No, that can't be true.\p" .string "There isn't any way that someone\n" @@ -180,7 +180,7 @@ gText_ApprenticePleaseTeach3:: @ 82B78D4 .string "…Or will you be so kind as to give\n" .string "me advice?$" -gText_ApprenticeRejectTeaching3:: @ 82B7B1A +gText_ApprenticeRejectTeaching3:: .string "I knew it…\p" .string "It had to happen because I'm such\n" .string "a really boring nobody…\p" @@ -191,7 +191,7 @@ gText_ApprenticeRejectTeaching3:: @ 82B7B1A .string "Please, will you be so kind as to give\n" .string "me advice?$" -gText_ApprenticeWhichLevelMode3:: @ 82B7C13 +gText_ApprenticeWhichLevelMode3:: .string "Really? I can't believe it!\n" .string "I can't believe you'll advise me!\l" .string "I… I'm so happy…\p" @@ -202,7 +202,7 @@ gText_ApprenticeWhichLevelMode3:: @ 82B7C13 .string "Which course do you think even I may\n" .string "have a chance at?$" -gText_ApprenticeLevelModeThanks3:: @ 82B7D18 +gText_ApprenticeLevelModeThanks3:: .string "{STR_VAR_1}? Okay!\n" .string "But do you really think someone like\l" .string "me would have a chance?\p" @@ -211,7 +211,7 @@ gText_ApprenticeLevelModeThanks3:: @ 82B7D18 .string "Thank you very much for spending\n" .string "time with someone like me.$" -gText_ApprenticePleaseTeach4:: @ 82B7DD4 +gText_ApprenticePleaseTeach4:: .string "Oh! You're {PLAYER}{KUN}, aren't you?\p" .string "I've heard that you're tough at\n" .string "POKéMON!\p" @@ -224,12 +224,12 @@ gText_ApprenticePleaseTeach4:: @ 82B7DD4 .string "I'm willing to listen to your advice.\n" .string "You'll agree, of course?$" -gText_ApprenticeRejectTeaching4:: @ 82B7EE5 +gText_ApprenticeRejectTeaching4:: .string "Huh? Why are you refusing me?\n" .string "It's me who's asking you!\l" .string "You have to reconsider!$" -gText_ApprenticeWhichLevelMode4:: @ 82B7F35 +gText_ApprenticeWhichLevelMode4:: .string "Okay, so there is this something.\n" .string "I want you to decide it for me.\p" .string "You know that the BATTLE TOWER has\n" @@ -237,7 +237,7 @@ gText_ApprenticeWhichLevelMode4:: @ 82B7F35 .string "Which do you think would be good\n" .string "for me, {PLAYER}{KUN}?$" -gText_ApprenticeLevelModeThanks4:: @ 82B7FE8 +gText_ApprenticeLevelModeThanks4:: .string "Okay, {STR_VAR_1} is suitable for me?\n" .string "Thank you!\p" .string "Knowing that you made the decision,\n" @@ -246,7 +246,7 @@ gText_ApprenticeLevelModeThanks4:: @ 82B7FE8 .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticePleaseTeach5:: @ 82B8087 +gText_ApprenticePleaseTeach5:: .string "Oh, hi, there! {PLAYER}{KUN}!\n" .string "I know you because you're famous!\l" .string "Call me {STR_VAR_1}! Glad to meet you!\p" @@ -261,13 +261,13 @@ gText_ApprenticePleaseTeach5:: @ 82B8087 .string "So, {PLAYER}{KUN}, how about sharing your\l" .string "wisdom with me every so often?$" -gText_ApprenticeRejectTeaching5:: @ 82B822B +gText_ApprenticeRejectTeaching5:: .string "Oh, but, please?\n" .string "A guy like me needs someone like\l" .string "you, {PLAYER}{KUN}!\p" .string "Honestly, I need your advice!$" -gText_ApprenticeWhichLevelMode5:: @ 82B8286 +gText_ApprenticeWhichLevelMode5:: .string "Thank you! That's more like it!\n" .string "So, let's start with an easy one!\p" .string "You know about the BATTLE TOWER's\n" @@ -276,13 +276,13 @@ gText_ApprenticeWhichLevelMode5:: @ 82B8286 .string "Me being a busy guy, which one should\n" .string "I gear up for?$" -gText_ApprenticeLevelModeThanks5:: @ 82B8356 +gText_ApprenticeLevelModeThanks5:: .string "{STR_VAR_1}, huh? Okay, gotcha.\n" .string "I'll find time somehow and give it a go!\p" .string "…Whoops, I'd better go to work!\n" .string "Thanks! See you around!$" -gText_ApprenticePleaseTeach6:: @ 82B83CE +gText_ApprenticePleaseTeach6:: .string "No way! Uh-uh!\n" .string "Are you maybe the real {PLAYER}?\p" .string "A-hah! Awesome! I'm {STR_VAR_1},\n" @@ -296,12 +296,12 @@ gText_ApprenticePleaseTeach6:: @ 82B83CE .string "Isn't it a great idea?\n" .string "Please, I want your advice!$" -gText_ApprenticeRejectTeaching6:: @ 82B84FC +gText_ApprenticeRejectTeaching6:: .string "Ahahaha, you can pretend to be mean,\n" .string "but you can't fool me!\l" .string "You really mean okay, don't you?$" -gText_ApprenticeWhichLevelMode6:: @ 82B8559 +gText_ApprenticeWhichLevelMode6:: .string "Yay! I knew you'd have a big heart,\n" .string "{PLAYER}!\p" .string "What should I ask you first?\n" @@ -313,7 +313,7 @@ gText_ApprenticeWhichLevelMode6:: @ 82B8559 .string "Level 50 or Open Level?\n" .string "Which suits me more?$" -gText_ApprenticeLevelModeThanks6:: @ 82B8656 +gText_ApprenticeLevelModeThanks6:: .string "Oh-oh-oh!\n" .string "{STR_VAR_1}, you say!\l" .string "Thank you for a totally cool reply!\p" @@ -322,7 +322,7 @@ gText_ApprenticeLevelModeThanks6:: @ 82B8656 .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticePleaseTeach7:: @ 82B86EA +gText_ApprenticePleaseTeach7:: .string "I beg your pardon, but…\n" .string "Are you {PLAYER}?\p" .string "I'm {STR_VAR_1}, and I am delighted to\n" @@ -335,7 +335,7 @@ gText_ApprenticePleaseTeach7:: @ 82B86EA .string "May I become your apprentice,\n" .string "{PLAYER}?$" -gText_ApprenticeRejectTeaching7:: @ 82B87DA +gText_ApprenticeRejectTeaching7:: .string "Oh…!\p" .string "… … … … … …\n" .string "… … … … … …\p" @@ -344,7 +344,7 @@ gText_ApprenticeRejectTeaching7:: @ 82B87DA .string "Please! Please say that you will\n" .string "accept me as your apprentice!$" -gText_ApprenticeWhichLevelMode7:: @ 82B887C +gText_ApprenticeWhichLevelMode7:: .string "Oh… I'm delighted!\p" .string "I don't wish to waste your time,\n" .string "so please advise me on this.\p" @@ -354,14 +354,14 @@ gText_ApprenticeWhichLevelMode7:: @ 82B887C .string "Which would be most suitable for me?\n" .string "Level 50 or Open Level?$" -gText_ApprenticeLevelModeThanks7:: @ 82B8957 +gText_ApprenticeLevelModeThanks7:: .string "{STR_VAR_1} is your choice!\n" .string "I see. I will do my best!\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticePleaseTeach8:: @ 82B89C6 +gText_ApprenticePleaseTeach8:: .string "Eek! Eek! {PLAYER}!\n" .string "You spoke to me!\l" .string "I… I'm overjoyed!\p" @@ -374,7 +374,7 @@ gText_ApprenticePleaseTeach8:: @ 82B89C6 .string "Please take me in as your apprentice!\n" .string "I want to learn from you!$" -gText_ApprenticeRejectTeaching8:: @ 82B8ACF +gText_ApprenticeRejectTeaching8:: .string "Waaaah!\n" .string "{PLAYER} turned me down…\l" .string "It… It's an invaluable experience!\p" @@ -382,7 +382,7 @@ gText_ApprenticeRejectTeaching8:: @ 82B8ACF .string "an affirmative answer this time!\p" .string "I beg you for your guidance!$" -gText_ApprenticeWhichLevelMode8:: @ 82B8B66 +gText_ApprenticeWhichLevelMode8:: .string "Hieeeeh! {PLAYER} said yes!\n" .string "{PLAYER} said yes!\p" .string "I won't be able to sleep tonight…\n" @@ -391,14 +391,14 @@ gText_ApprenticeWhichLevelMode8:: @ 82B8B66 .string "At the BATTLE TOWER, what is right\n" .string "for me, Level 50 or Open Level?$" -gText_ApprenticeLevelModeThanks8:: @ 82B8C20 +gText_ApprenticeLevelModeThanks8:: .string "{STR_VAR_1}! Perfectly understood!\n" .string "I understand perfectly!\l" .string "I'm deliriously delighted!\p" .string "I hope you'll be willing to teach me\n" .string "some more another time.$" -gText_ApprenticePleaseTeach9:: @ 82B8CAA +gText_ApprenticePleaseTeach9:: .string "Whoa! Could you be…\n" .string "Might you be… {PLAYER}{KUN}?!\l" .string "That strong and famous TRAINER?\l" @@ -411,13 +411,13 @@ gText_ApprenticePleaseTeach9:: @ 82B8CAA .string "So, there you have it, {PLAYER}{KUN}!\n" .string "Let me apprentice under you!$" -gText_ApprenticeRejectTeaching9:: @ 82B8DD3 +gText_ApprenticeRejectTeaching9:: .string "Gwaaaah!\n" .string "You're quite cool and tough…\p" .string "Don't be that way, please.\n" .string "I'm asking you!$" -gText_ApprenticeWhichLevelMode9:: @ 82B8E24 +gText_ApprenticeWhichLevelMode9:: .string "Oh, yeah! That's a solid reply!\n" .string "Excellent, I might add!\p" .string "So how about a first piece of advice\n" @@ -425,14 +425,14 @@ gText_ApprenticeWhichLevelMode9:: @ 82B8E24 .string "If I were to go, what would be better?\n" .string "Level 50 or Open Level?$" -gText_ApprenticeLevelModeThanks9:: @ 82B8ED5 +gText_ApprenticeLevelModeThanks9:: .string "Uh-huh, {STR_VAR_1} it is!\n" .string "OK, A-OK!\l" .string "I'll go show my mettle, like, jam!\p" .string "All right, I'll look to you as my mentor!\n" .string "Adios!$" -gText_ApprenticePleaseTeach10:: @ 82B8F45 +gText_ApprenticePleaseTeach10:: .string "Oh, hey, {PLAYER}{KUN}, right?\n" .string "The police were looking for you!\p" .string "… … …\n" @@ -445,7 +445,7 @@ gText_ApprenticePleaseTeach10:: @ 82B8F45 .string "So, how about you becoming my master\n" .string "about all things POKéMON?$" -gText_ApprenticeRejectTeaching10:: @ 82B905F +gText_ApprenticeRejectTeaching10:: .string "If you're going to act cold like that,\n" .string "I'll show you what I'll do!\p" .string "Waaah! Waaah! Waaah!\n" @@ -454,7 +454,7 @@ gText_ApprenticeRejectTeaching10:: @ 82B905F .string "Come on, will you please be\n" .string "my POKéMON master?$" -gText_ApprenticeWhichLevelMode10:: @ 82B910E +gText_ApprenticeWhichLevelMode10:: .string "Yippee!\n" .string "I'll buy you a boat for that!\p" .string "Of course I'm lying again!\n" @@ -465,7 +465,7 @@ gText_ApprenticeWhichLevelMode10:: @ 82B910E .string "level I should challenge…\p" .string "Can you decide for me, master?$" -gText_ApprenticeLevelModeThanks10:: @ 82B9204 +gText_ApprenticeLevelModeThanks10:: .string "Okay, so {STR_VAR_1} is better!\n" .string "I'll go to the other level, then!\p" .string "Just kidding!\n" @@ -473,7 +473,7 @@ gText_ApprenticeLevelModeThanks10:: @ 82B9204 .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticePleaseTeach11:: @ 82B929C +gText_ApprenticePleaseTeach11:: .string "A-H-O-Y!\n" .string "And that spells ahoy, and it means hi!\p" .string "I'm {STR_VAR_1}, the rappin' SAILOR\n" @@ -491,13 +491,13 @@ gText_ApprenticePleaseTeach11:: @ 82B929C .string "Let's make that a celebration!\n" .string "Become my mentor for commemoration!$" -gText_ApprenticeRejectTeaching11:: @ 82B9438 +gText_ApprenticeRejectTeaching11:: .string "But!\n" .string "You have to work with me!\p" .string "Don't be such a tease!\n" .string "Become my mentor, please!$" -gText_ApprenticeWhichLevelMode11:: @ 82B9488 +gText_ApprenticeWhichLevelMode11:: .string "That's it!\n" .string "{PLAYER}, you've got the spirit!\p" .string "So here's my first question\n" @@ -507,13 +507,13 @@ gText_ApprenticeWhichLevelMode11:: @ 82B9488 .string "Level 50 and Open Level there be,\n" .string "which is the one that's good for me?$" -gText_ApprenticeLevelModeThanks11:: @ 82B9564 +gText_ApprenticeLevelModeThanks11:: .string "Okay, {STR_VAR_1} it is, you say!\n" .string "I'll go and take it on my way!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticePleaseTeach12:: @ 82B95D8 +gText_ApprenticePleaseTeach12:: .string "Say, hey, aren't you {PLAYER}?\n" .string "What should I do? Talk to you?\l" .string "Why not? I'm already talking to you!\p" @@ -529,13 +529,13 @@ gText_ApprenticePleaseTeach12:: @ 82B95D8 .string "{PLAYER}, let me be your underling!\n" .string "I want you to teach me everything!$" -gText_ApprenticeRejectTeaching12:: @ 82B9763 +gText_ApprenticeRejectTeaching12:: .string "You're turning me down, then?\n" .string "I'll just have to ask you again!\p" .string "{PLAYER}, I beg to be your underling!\n" .string "I need you to teach me everything!$" -gText_ApprenticeWhichLevelMode12:: @ 82B97E5 +gText_ApprenticeWhichLevelMode12:: .string "Lucky, yeah, woohoo!\n" .string "Should I pop a question to you?\p" .string "Since we're near the BATTLE TOWER,\n" @@ -543,14 +543,14 @@ gText_ApprenticeWhichLevelMode12:: @ 82B97E5 .string "Of the choices you see,\n" .string "which is the right one for me?$" -gText_ApprenticeLevelModeThanks12:: @ 82B989A +gText_ApprenticeLevelModeThanks12:: .string "If {STR_VAR_1} is what you suggest,\n" .string "it must be the very best!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticePleaseTeach13:: @ 82B992D +gText_ApprenticePleaseTeach13:: .string "Oh, hi! You there!\n" .string "Can I get you to massage my shoulder?\p" .string "…Yes, there! That's it!\n" @@ -565,12 +565,12 @@ gText_ApprenticePleaseTeach13:: @ 82B992D .string "Listen, can I get you to give me\n" .string "advice?$" -gText_ApprenticeRejectTeaching13:: @ 82B9A84 +gText_ApprenticeRejectTeaching13:: .string "Oh, why?\p" .string "I won't be a big bother, I promise!\n" .string "Please?$" -gText_ApprenticeWhichLevelMode13:: @ 82B9AB9 +gText_ApprenticeWhichLevelMode13:: .string "Thank you. Mighty good of you!\n" .string "…Cough! Cough!\p" .string "Oogh, I have to toughen up quick…\p" @@ -578,13 +578,13 @@ gText_ApprenticeWhichLevelMode13:: @ 82B9AB9 .string "right away, but what would be better\l" .string "for me? Level 50 or Open Level?$" -gText_ApprenticeLevelModeThanks13:: @ 82B9B76 +gText_ApprenticeLevelModeThanks13:: .string "Hm, all right. That's {STR_VAR_1}.\n" .string "I'll go there right away.\p" .string "I hope I can keep hitting you up for\n" .string "help--after all, you're my mentor!$" -gText_ApprenticePleaseTeach14:: @ 82B9BF2 +gText_ApprenticePleaseTeach14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}…?\p" .string "Please, don't look at me that way.\n" @@ -601,13 +601,13 @@ gText_ApprenticePleaseTeach14:: @ 82B9BF2 .string "Could you become my teacher and\n" .string "give me advice?$" -gText_ApprenticeRejectTeaching14:: @ 82B9D83 +gText_ApprenticeRejectTeaching14:: .string "Please don't brush me off like this!\n" .string "I can't live with the humiliation.\p" .string "Please become my teacher!\n" .string "I need your advice!$" -gText_ApprenticeWhichLevelMode14:: @ 82B9DF9 +gText_ApprenticeWhichLevelMode14:: .string "Th-thank you…\p" .string "But please don't look at me like that.\n" .string "It makes me all flustered.\p" @@ -616,7 +616,7 @@ gText_ApprenticeWhichLevelMode14:: @ 82B9DF9 .string "At the BATTLE TOWER…\n" .string "Which level should I attempt?$" -gText_ApprenticeLevelModeThanks14:: @ 82B9EAA +gText_ApprenticeLevelModeThanks14:: .string "Oh… Okay!\n" .string "I'll try my hand at that.\p" .string "I hope I can make a valiant challenge\n" @@ -625,7 +625,7 @@ gText_ApprenticeLevelModeThanks14:: @ 82B9EAA .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticePleaseTeach15:: @ 82B9F55 +gText_ApprenticePleaseTeach15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really real?\p" .string "You may call me {STR_VAR_1}.\p" @@ -637,7 +637,7 @@ gText_ApprenticePleaseTeach15:: @ 82B9F55 .string "I merely want you to recognize me\l" .string "as your apprentice.$" -gText_ApprenticeRejectTeaching15:: @ 82BA084 +gText_ApprenticeRejectTeaching15:: .string "Oh?\n" .string "But what would compel you to refuse?\p" .string "I apologize for being skeptical about\n" @@ -645,7 +645,7 @@ gText_ApprenticeRejectTeaching15:: @ 82BA084 .string "Please accept my apology and\n" .string "accept me as your apprentice.$" -gText_ApprenticeWhichLevelMode15:: @ 82BA11D +gText_ApprenticeWhichLevelMode15:: .string "You really are accepting me?\n" .string "I don't wish to celebrate prematurely.\p" .string "If it is true, I apologize.\n" @@ -654,7 +654,7 @@ gText_ApprenticeWhichLevelMode15:: @ 82BA11D .string "what would be worthy of me?\l" .string "Level 50 or Open Level?$" -gText_ApprenticeLevelModeThanks15:: @ 82BA1F3 +gText_ApprenticeLevelModeThanks15:: .string "{STR_VAR_1}?\n" .string "Are you certain?\p" .string "I see. If that's the case, that's fine.\n" @@ -663,7 +663,7 @@ gText_ApprenticeLevelModeThanks15:: @ 82BA1F3 .string "me that you have accepted me.\p" .string "Let us meet again!$" -gText_ApprenticeWhatHeldItem0:: @ 82BA2A3 +gText_ApprenticeWhatHeldItem0:: .string "Sigh… Sob…\n" .string "Oh, {PLAYER}!\p" .string "I'm all tangled up in a dilemma\n" @@ -673,30 +673,30 @@ gText_ApprenticeWhatHeldItem0:: @ 82BA2A3 .string "Please tell me, {PLAYER}.\n" .string "What item should I make it hold?$" -gText_ApprenticeHoldNothing0:: @ 82BA34E +gText_ApprenticeHoldNothing0:: .string "Oh, really? I shouldn't make\n" .string "my {STR_VAR_1} hold anything?$" -gText_ApprenticeThanksNoHeldItem0:: @ 82BA380 +gText_ApprenticeThanksNoHeldItem0:: .string "Oh, okay! I'm delighted it's settled!\n" .string "Awesome! Wicked! Awoooh!\p" .string "Thank you so much!$" -gText_ApprenticeThanksHeldItem0:: @ 82BA3D2 +gText_ApprenticeThanksHeldItem0:: .string "Oh, I'm so glad…\n" .string "I think I have that {STR_VAR_1}, too.\p" .string "I'm delighted it's settled!\n" .string "Awesome! Wicked! Awoooh!\p" .string "Thank you so much!$" -gText_ApprenticeItemAlreadyRecommended0:: @ 82BA448 +gText_ApprenticeItemAlreadyRecommended0:: .string "Waaaah! Please don't be mean!\p" .string "That item {STR_VAR_1} was already\n" .string "recommended to me before, sob…\p" .string "Or do you mean I shouldn't make\n" .string "my {STR_VAR_2} hold anything?$" -gText_ApprenticeWhatHeldItem1:: @ 82BA4D3 +gText_ApprenticeWhatHeldItem1:: .string "Yay! It's {PLAYER}!\n" .string "Great! I wanted to ask you something!\p" .string "Do you make your POKéMON hold items?\n" @@ -705,47 +705,47 @@ gText_ApprenticeWhatHeldItem1:: @ 82BA4D3 .string "{STR_VAR_1} to hold?\p" .string "What do you think?$" -gText_ApprenticeHoldNothing1:: @ 82BA58C +gText_ApprenticeHoldNothing1:: .string "Huh? You mean my {STR_VAR_1} doesn't\n" .string "have to hold anything?$" -gText_ApprenticeThanksNoHeldItem1:: @ 82BA5BF +gText_ApprenticeThanksNoHeldItem1:: .string "Oh, I get it! I'll do that!\n" .string "Thanks for teaching me!$" -gText_ApprenticeThanksHeldItem1:: @ 82BA5F3 +gText_ApprenticeThanksHeldItem1:: .string "Oh, wow! One {STR_VAR_1}, huh?\n" .string "Okay, I'll do that!\p" .string "Thanks for teaching me!$" -gText_ApprenticeItemAlreadyRecommended1:: @ 82BA635 +gText_ApprenticeItemAlreadyRecommended1:: .string "Oh, uh, no, that's not what I meant.\n" .string "I want to know about a different item\l" .string "than the ones I already know.\p" .string "Or do you mean that my POKéMON doesn't\n" .string "have to hold anything this time?$" -gText_ApprenticeWhatHeldItem2:: @ 82BA6E6 +gText_ApprenticeWhatHeldItem2:: .string "{PLAYER}, hello!\n" .string "It's about my {STR_VAR_1}…\p" .string "I want to make it hold a good item.\n" .string "What would be good for it?$" -gText_ApprenticeHoldNothing2:: @ 82BA742 +gText_ApprenticeHoldNothing2:: .string "Oh, then my {STR_VAR_1} doesn't have\n" .string "to hold anything?$" -gText_ApprenticeThanksNoHeldItem2:: @ 82BA770 +gText_ApprenticeThanksNoHeldItem2:: .string "Okay, I got it!\n" .string "See you again!$" -gText_ApprenticeThanksHeldItem2:: @ 82BA78F +gText_ApprenticeThanksHeldItem2:: .string "Oh, the item {STR_VAR_1}?\n" .string "Understood!\p" .string "I'll do my best to find one!\n" .string "See you again!$" -gText_ApprenticeItemAlreadyRecommended2:: @ 82BA7D8 +gText_ApprenticeItemAlreadyRecommended2:: .string "Somebody taught me about\n" .string "the {STR_VAR_1} already.\p" .string "I want my POKéMON to hold a different\n" @@ -753,7 +753,7 @@ gText_ApprenticeItemAlreadyRecommended2:: @ 82BA7D8 .string "Or do you think {STR_VAR_2} doesn't\n" .string "have to hold anything?$" -gText_ApprenticeWhatHeldItem3:: @ 82BA867 +gText_ApprenticeWhatHeldItem3:: .string "Hello, {PLAYER}…\n" .string "I'm sorry to disturb you, but I have\l" .string "something else I wanted to ask you.\p" @@ -764,23 +764,23 @@ gText_ApprenticeWhatHeldItem3:: @ 82BA867 .string "{PLAYER}, please, could you decide\n" .string "for me?$" -gText_ApprenticeHoldNothing3:: @ 82BA96B +gText_ApprenticeHoldNothing3:: .string "A POKéMON belonging to someone like me\n" .string "would be better off without an item?$" -gText_ApprenticeThanksNoHeldItem3:: @ 82BA9B7 +gText_ApprenticeThanksNoHeldItem3:: .string "I understand…\n" .string "You're saying I shouldn't rely on items.\l" .string "I'll do my best not to!\p" .string "Thank you very much!$" -gText_ApprenticeThanksHeldItem3:: @ 82BAA1B +gText_ApprenticeThanksHeldItem3:: .string "The item {STR_VAR_1}, okay.\n" .string "I'm not sure if I can get one…\l" .string "No! I'll do my best to get it.\p" .string "Thank you very much!$" -gText_ApprenticeItemAlreadyRecommended3:: @ 82BAA81 +gText_ApprenticeItemAlreadyRecommended3:: .string "Oh, but…\n" .string "I think I've heard about that before…\p" .string "Is it maybe because I haven't handled\n" @@ -788,7 +788,7 @@ gText_ApprenticeItemAlreadyRecommended3:: @ 82BAA81 .string "Or do you mean I shouldn't make\n" .string "my {STR_VAR_2} hold anything?$" -gText_ApprenticeWhatHeldItem4:: @ 82BAB22 +gText_ApprenticeWhatHeldItem4:: .string "Oh, {PLAYER}{KUN}.\n" .string "There's something I wanted to ask you.\p" .string "You know how you decided which\n" @@ -800,11 +800,11 @@ gText_ApprenticeWhatHeldItem4:: @ 82BAB22 .string "What would be good? I want to make\n" .string "my {STR_VAR_1} hold something.$" -gText_ApprenticeHoldNothing4:: @ 82BAC43 +gText_ApprenticeHoldNothing4:: .string "Oh! So my {STR_VAR_1} should do\n" .string "the best it can empty-handed?$" -gText_ApprenticeThanksNoHeldItem4:: @ 82BAC78 +gText_ApprenticeThanksNoHeldItem4:: .string "If you think that's best, I'll do that.\p" .string "Knowing that you made the decision,\n" .string "{PLAYER}{KUN}, I won't be so upset if\l" @@ -812,7 +812,7 @@ gText_ApprenticeThanksNoHeldItem4:: @ 82BAC78 .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticeThanksHeldItem4:: @ 82BAD17 +gText_ApprenticeThanksHeldItem4:: .string "The item {STR_VAR_1}, huh?\n" .string "Not bad. I'll use it!\p" .string "Knowing that you made the decision,\n" @@ -821,14 +821,14 @@ gText_ApprenticeThanksHeldItem4:: @ 82BAD17 .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticeItemAlreadyRecommended4:: @ 82BADB6 +gText_ApprenticeItemAlreadyRecommended4:: .string "Huh? What are you saying?\n" .string "You told me about the {STR_VAR_1}\l" .string "already before.\p" .string "Or do you mean my {STR_VAR_2} should\n" .string "do the best it can empty-handed?$" -gText_ApprenticeWhatHeldItem5:: @ 82BAE36 +gText_ApprenticeWhatHeldItem5:: .string "Yo, {PLAYER}{KUN}!\p" .string "We're both busy, but we seem to run\n" .string "into each other often anyway!\p" @@ -840,31 +840,31 @@ gText_ApprenticeWhatHeldItem5:: @ 82BAE36 .string "giving me advice on what I should make\l" .string "my {STR_VAR_1} hold?$" -gText_ApprenticeHoldNothing5:: @ 82BAF4E +gText_ApprenticeHoldNothing5:: .string "Oh, so me being a busy guy, you say\n" .string "my {STR_VAR_1} doesn't need anything?$" -gText_ApprenticeThanksNoHeldItem5:: @ 82BAF8F +gText_ApprenticeThanksNoHeldItem5:: .string "Okay, gotcha.\n" .string "I won't need any time for that.\p" .string "Thanks today!\n" .string "See you around!$" -gText_ApprenticeThanksHeldItem5:: @ 82BAFDB +gText_ApprenticeThanksHeldItem5:: .string "Okay, gotcha.\n" .string "I'll find time somehow and find\l" .string "that {STR_VAR_1} you recommended.\p" .string "I'm glad I met a good mentor in you.\n" .string "Thanks! See you around!$" -gText_ApprenticeItemAlreadyRecommended5:: @ 82BB05F +gText_ApprenticeItemAlreadyRecommended5:: .string "Huh? I already know about\n" .string "that {STR_VAR_1}.\p" .string "Oh, right, I get it.\n" .string "So me being a busy guy, you say\l" .string "my {STR_VAR_2} doesn't need anything?$" -gText_ApprenticeWhatHeldItem6:: @ 82BB0D4 +gText_ApprenticeWhatHeldItem6:: .string "Hiya, {PLAYER}! It's me!\n" .string "I need to tap your mind again today.\l" .string "Please, I need your advice!\p" @@ -873,18 +873,18 @@ gText_ApprenticeWhatHeldItem6:: @ 82BB0D4 .string "If I want to make my {STR_VAR_1} hold\n" .string "an item, what should it be?$" -gText_ApprenticeHoldNothing6:: @ 82BB18C +gText_ApprenticeHoldNothing6:: .string "Is that right? My {STR_VAR_1} doesn't\n" .string "need to hold an item, you're saying.$" -gText_ApprenticeThanksNoHeldItem6:: @ 82BB1CE +gText_ApprenticeThanksNoHeldItem6:: .string "Okay, that's what I'll do!\p" .string "I guess that's about all I wanted\n" .string "to ask you today.\p" .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticeThanksHeldItem6:: @ 82BB242 +gText_ApprenticeThanksHeldItem6:: .string "Uh-huh! One {STR_VAR_1}.\n" .string "What a cool choice!\l" .string "I'll definitely try that!\p" @@ -893,7 +893,7 @@ gText_ApprenticeThanksHeldItem6:: @ 82BB242 .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticeItemAlreadyRecommended6:: @ 82BB2D9 +gText_ApprenticeItemAlreadyRecommended6:: .string "Ahahah! That's silly!\n" .string "You already told me about that\l" .string "{STR_VAR_1} before!\p" @@ -901,7 +901,7 @@ gText_ApprenticeItemAlreadyRecommended6:: @ 82BB2D9 .string "Oh, wait! My {STR_VAR_2} doesn't\n" .string "need to hold an item, you're saying.$" -gText_ApprenticeWhatHeldItem7:: @ 82BB370 +gText_ApprenticeWhatHeldItem7:: .string "Hello, {PLAYER}. I hope you've been\n" .string "keeping well.\p" .string "May I approach you for advice?\p" @@ -915,31 +915,31 @@ gText_ApprenticeWhatHeldItem7:: @ 82BB370 .string "It would please me if you could decide\n" .string "what would be right for my POKéMON…$" -gText_ApprenticeHoldNothing7:: @ 82BB4C3 +gText_ApprenticeHoldNothing7:: .string "In other words… My POKéMON has\n" .string "no need to hold an item?$" -gText_ApprenticeThanksNoHeldItem7:: @ 82BB4FB +gText_ApprenticeThanksNoHeldItem7:: .string "I understand clearly now!\n" .string "I will keep trying like this.\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticeThanksHeldItem7:: @ 82BB575 +gText_ApprenticeThanksHeldItem7:: .string "One {STR_VAR_1} it is!\n" .string "I will order it right away.\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticeItemAlreadyRecommended7:: @ 82BB5E1 +gText_ApprenticeItemAlreadyRecommended7:: .string "You've already told me about that,\n" .string "and I already have it.\p" .string "Or are you saying… My POKéMON has\n" .string "no need to hold an item?$" -gText_ApprenticeWhatHeldItem8:: @ 82BB656 +gText_ApprenticeWhatHeldItem8:: .string "Eek! {PLAYER}!\n" .string "I… I'm overjoyed to see you again!\p" .string "Oh-oh-oh! There's something I just\n" @@ -947,17 +947,17 @@ gText_ApprenticeWhatHeldItem8:: @ 82BB656 .string "Please decide what my {STR_VAR_1}\n" .string "should be holding!$" -gText_ApprenticeHoldNothing8:: @ 82BB6E5 +gText_ApprenticeHoldNothing8:: .string "Oh, wow! I didn't expect that answer!\n" .string "So, a hold item isn't necessary?$" -gText_ApprenticeThanksNoHeldItem8:: @ 82BB72C +gText_ApprenticeThanksNoHeldItem8:: .string "Perfectly understood!\n" .string "I'll keep at this without an item!\p" .string "I hope you'll be willing to teach me\n" .string "some more another time.$" -gText_ApprenticeThanksHeldItem8:: @ 82BB7A2 +gText_ApprenticeThanksHeldItem8:: .string "{STR_VAR_1}! I'll use that!\p" .string "Um… Could it be, {PLAYER}, you also\n" .string "make your POKéMON hold that item?\p" @@ -965,14 +965,14 @@ gText_ApprenticeThanksHeldItem8:: @ 82BB7A2 .string "I hope you'll be willing to teach me\l" .string "some more another time.$" -gText_ApprenticeItemAlreadyRecommended8:: @ 82BB84A +gText_ApprenticeItemAlreadyRecommended8:: .string "Oh? You recommended that\n" .string "{STR_VAR_1} before, too.\p" .string "Or is it the best thing to hold?\n" .string "Or do you mean that my {STR_VAR_2}\l" .string "doesn't need anything to hold?$" -gText_ApprenticeWhatHeldItem9:: @ 82BB8CD +gText_ApprenticeWhatHeldItem9:: .string "Hola!\n" .string "My maestro, {PLAYER}{KUN}!\p" .string "I want to hit you up for advice on\n" @@ -982,31 +982,31 @@ gText_ApprenticeWhatHeldItem9:: @ 82BB8CD .string "Don't be shy now.\n" .string "Let's blurt it out!$" -gText_ApprenticeHoldNothing9:: @ 82BB970 +gText_ApprenticeHoldNothing9:: .string "Oh? So, you're saying my {STR_VAR_1}\n" .string "can win without holding any item?$" -gText_ApprenticeThanksNoHeldItem9:: @ 82BB9AE +gText_ApprenticeThanksNoHeldItem9:: .string "Si, bueno!\n" .string "I'll give it my best shot, like, slam!\p" .string "All right, thanks, as always!\n" .string "Adios!$" -gText_ApprenticeThanksHeldItem9:: @ 82BBA05 +gText_ApprenticeThanksHeldItem9:: .string "Uh-huh, that's one {STR_VAR_1}?\n" .string "Si, bueno!\l" .string "I'll go find me one, like, bam!\p" .string "All right, thanks, as always!\n" .string "Adios!$" -gText_ApprenticeItemAlreadyRecommended9:: @ 82BBA6C +gText_ApprenticeItemAlreadyRecommended9:: .string "No, no! You already told me about\n" .string "that {STR_VAR_1} thing before.\p" .string "Oh, now wait just one minute here…\n" .string "So, you're saying my {STR_VAR_2}\l" .string "can win without holding any item?$" -gText_ApprenticeWhatHeldItem10:: @ 82BBB01 +gText_ApprenticeWhatHeldItem10:: .string "{PLAYER}{KUN}, something unbelievable\n" .string "has happened!\p" .string "I woke up this morning, and my POKéMON\n" @@ -1019,11 +1019,11 @@ gText_ApprenticeWhatHeldItem10:: @ 82BBB01 .string "So, how about deciding for me what\n" .string "my {STR_VAR_1} should hold, master?$" -gText_ApprenticeHoldNothing10:: @ 82BBC1C +gText_ApprenticeHoldNothing10:: .string "What's that mean?\n" .string "Don't make it hold anything?$" -gText_ApprenticeThanksNoHeldItem10:: @ 82BBC4B +gText_ApprenticeThanksNoHeldItem10:: .string "Okay, so it shouldn't hold anything.\n" .string "Then, I'd better get something for it!\p" .string "Just kidding!\n" @@ -1031,7 +1031,7 @@ gText_ApprenticeThanksNoHeldItem10:: @ 82BBC4B .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticeThanksHeldItem10:: @ 82BBCF6 +gText_ApprenticeThanksHeldItem10:: .string "Okay, so it's one {STR_VAR_1}!\n" .string "I'll make it hold anything but that!\p" .string "Just kidding!\n" @@ -1039,14 +1039,14 @@ gText_ApprenticeThanksHeldItem10:: @ 82BBCF6 .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticeItemAlreadyRecommended10:: @ 82BBD90 +gText_ApprenticeItemAlreadyRecommended10:: .string "Um, you told me about that before,\n" .string "didn't you?\p" .string "Isn't there something else?\p" .string "Or do you mean, don't make\n" .string "my {STR_VAR_2} hold anything?$" -gText_ApprenticeWhatHeldItem11:: @ 82BBE0B +gText_ApprenticeWhatHeldItem11:: .string "A-H-O-Y!\n" .string "And that spells ahoy!\p" .string "The rappin' SAILOR am I!\n" @@ -1057,25 +1057,25 @@ gText_ApprenticeWhatHeldItem11:: @ 82BBE0B .string "My {STR_VAR_1} needs an item to hold,\n" .string "What should it be, if I may be bold?$" -gText_ApprenticeHoldNothing11:: @ 82BBEE5 +gText_ApprenticeHoldNothing11:: .string "Is that right?\n" .string "My {STR_VAR_1} doesn't need to be\l" .string "holding anything tight?$" -gText_ApprenticeThanksNoHeldItem11:: @ 82BBF25 +gText_ApprenticeThanksNoHeldItem11:: .string "Okay, I hear you, sure I do!\n" .string "My POKéMON will go empty-handed, too!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticeThanksHeldItem11:: @ 82BBFA4 +gText_ApprenticeThanksHeldItem11:: .string "Okay, one {STR_VAR_1},\n" .string "that's what I'll use.\l" .string "I was right to make you choose!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticeItemAlreadyRecommended11:: @ 82BC024 +gText_ApprenticeItemAlreadyRecommended11:: .string "Okay, one {STR_VAR_1}, you say?\n" .string "You told me that the other day.\l" .string "I need a new idea, a brand new way.\p" @@ -1083,7 +1083,7 @@ gText_ApprenticeItemAlreadyRecommended11:: @ 82BC024 .string "My POKéMON doesn't need to hold\l" .string "anything tight?$" -gText_ApprenticeWhatHeldItem12:: @ 82BC0C8 +gText_ApprenticeWhatHeldItem12:: .string "Say, hey, {PLAYER}!\n" .string "I found you again today!\p" .string "What should I do? Get your advice?\n" @@ -1097,25 +1097,25 @@ gText_ApprenticeWhatHeldItem12:: @ 82BC0C8 .string "my {STR_VAR_1} that'd be good.\l" .string "My indecision is making me brood.$" -gText_ApprenticeHoldNothing12:: @ 82BC213 +gText_ApprenticeHoldNothing12:: .string "My {STR_VAR_1} needs nothing?\n" .string "Doesn't need to hold anything?$" -gText_ApprenticeThanksNoHeldItem12:: @ 82BC247 +gText_ApprenticeThanksNoHeldItem12:: .string "If holding nothing is the best,\n" .string "I'll do as you suggest!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticeThanksHeldItem12:: @ 82BC2DD +gText_ApprenticeThanksHeldItem12:: .string "If holding that {STR_VAR_1} is\n" .string "the best, I'll do as you suggest!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticeItemAlreadyRecommended12:: @ 82BC373 +gText_ApprenticeItemAlreadyRecommended12:: .string "Haven't I heard about that\n" .string "{STR_VAR_1} before?\l" .string "I'm certain I have, that's for sure!\p" @@ -1123,7 +1123,7 @@ gText_ApprenticeItemAlreadyRecommended12:: @ 82BC373 .string "Or, my {STR_VAR_2} needs nothing?\l" .string "Doesn't need to hold anything?$" -gText_ApprenticeWhatHeldItem13:: @ 82BC40E +gText_ApprenticeWhatHeldItem13:: .string "Gwah! Ouch! {PLAYER}{KUN}, my arm's broken!\n" .string "Don't touch it, please!\p" .string "I must've broken it while I was trying\n" @@ -1134,25 +1134,25 @@ gText_ApprenticeWhatHeldItem13:: @ 82BC40E .string "{PLAYER}{KUN}, what do you think would be\n" .string "good for my {STR_VAR_1} to hold?$" -gText_ApprenticeHoldNothing13:: @ 82BC514 +gText_ApprenticeHoldNothing13:: .string "Ouch…\p" .string "So your suggestion is my {STR_VAR_1}\n" .string "doesn't have to hold anything?$" -gText_ApprenticeThanksNoHeldItem13:: @ 82BC555 +gText_ApprenticeThanksNoHeldItem13:: .string "Hm, all right. That would be easier\n" .string "for me, the way things are now.\p" .string "I hope I can keep hitting you up\n" .string "for help like this.$" -gText_ApprenticeThanksHeldItem13:: @ 82BC5CE +gText_ApprenticeThanksHeldItem13:: .string "Hm, all right. That's one {STR_VAR_1}.\n" .string "My POKéMON's arm is fine, so I'll make\l" .string "it hold that item right away.\p" .string "I hope I can keep hitting you up\n" .string "for help like this.$" -gText_ApprenticeItemAlreadyRecommended13:: @ 82BC666 +gText_ApprenticeItemAlreadyRecommended13:: .string "No, no, you told me about that\n" .string "{STR_VAR_1} before, remember?\p" .string "How about telling me something\n" @@ -1161,7 +1161,7 @@ gText_ApprenticeItemAlreadyRecommended13:: @ 82BC666 .string "So your suggestion is my {STR_VAR_2}\l" .string "doesn't have to hold anything?$" -gText_ApprenticeWhatHeldItem14:: @ 82BC714 +gText_ApprenticeWhatHeldItem14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}…\p" .string "Please, don't look at me that way.\n" @@ -1173,11 +1173,11 @@ gText_ApprenticeWhatHeldItem14:: @ 82BC714 .string "{PLAYER}{KUN}, what do you think would\n" .string "be good?$" -gText_ApprenticeHoldNothing14:: @ 82BC808 +gText_ApprenticeHoldNothing14:: .string "Oh… Then, you think it would be better\n" .string "if my {STR_VAR_1} didn't have an item?$" -gText_ApprenticeThanksNoHeldItem14:: @ 82BC84D +gText_ApprenticeThanksNoHeldItem14:: .string "Oh… Okay!\n" .string "I'll go without an item.\p" .string "This is nerve-racking, though.\n" @@ -1186,7 +1186,7 @@ gText_ApprenticeThanksNoHeldItem14:: @ 82BC84D .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticeThanksHeldItem14:: @ 82BC8EA +gText_ApprenticeThanksHeldItem14:: .string "Oh… Okay!\n" .string "I'll go with that {STR_VAR_1}.\p" .string "This is nerve-racking, though.\n" @@ -1195,7 +1195,7 @@ gText_ApprenticeThanksHeldItem14:: @ 82BC8EA .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticeItemAlreadyRecommended14:: @ 82BC984 +gText_ApprenticeItemAlreadyRecommended14:: .string "B-but I already heard about that.\p" .string "Please don't brush me off like this!\n" .string "I can't live with the humiliation.\p" @@ -1203,7 +1203,7 @@ gText_ApprenticeItemAlreadyRecommended14:: @ 82BC984 .string "Do you think it would be better if\l" .string "my {STR_VAR_2} didn't have an item?$" -gText_ApprenticeWhatHeldItem15:: @ 82BCA4D +gText_ApprenticeWhatHeldItem15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really?\l" .string "Perhaps you're a twin?\p" @@ -1216,16 +1216,16 @@ gText_ApprenticeWhatHeldItem15:: @ 82BCA4D .string "to make hold a convenient item.\p" .string "What would be worthy of it?$" -gText_ApprenticeHoldNothing15:: @ 82BCB75 +gText_ApprenticeHoldNothing15:: .string "It's better if it held nothing?\n" .string "Are you certain?$" -gText_ApprenticeThanksNoHeldItem15:: @ 82BCBA6 +gText_ApprenticeThanksNoHeldItem15:: .string "I see. If that's the case, that's fine.\n" .string "I thank you for your time.\p" .string "Let us meet again!$" -gText_ApprenticeThanksHeldItem15:: @ 82BCBFC +gText_ApprenticeThanksHeldItem15:: .string "One {STR_VAR_1}?\n" .string "Are you certain?\p" .string "I see. If that's the case, that's fine.\n" @@ -1234,7 +1234,7 @@ gText_ApprenticeThanksHeldItem15:: @ 82BCBFC .string "put it to good use.\p" .string "Let us meet again!$" -gText_ApprenticeItemAlreadyRecommended15:: @ 82BCCA4 +gText_ApprenticeItemAlreadyRecommended15:: .string "No, no, wait a minute.\n" .string "I believe you taught me that before.\p" .string "I would like you to recommend\n" @@ -1243,7 +1243,7 @@ gText_ApprenticeItemAlreadyRecommended15:: @ 82BCCA4 .string "my {STR_VAR_2} should hold nothing?\l" .string "Are you certain?$" -gText_ApprenticeWhichMonFirst0:: @ 82BCD68 +gText_ApprenticeWhichMonFirst0:: .string "Waah, {PLAYER}!\n" .string "I have a dilemma, sob…\p" .string "I want to begin battling other people,\n" @@ -1254,7 +1254,7 @@ gText_ApprenticeWhichMonFirst0:: @ 82BCD68 .string "If you were me, which of these POKéMON\l" .string "would you send out first?$" -gText_ApprenticeMonFirstThanks0:: @ 82BCE64 +gText_ApprenticeMonFirstThanks0:: .string "My {STR_VAR_1} should go first?\n" .string "Waaaaah!\p" .string "Oh! I'm so sorry!\n" @@ -1262,30 +1262,30 @@ gText_ApprenticeMonFirstThanks0:: @ 82BCE64 .string "my first POKéMON, and it's made me cry…\p" .string "Thank you so much!$" -gText_ApprenticeWhichMonFirst1:: @ 82BCEF2 +gText_ApprenticeWhichMonFirst1:: .string "Yay! It's {PLAYER}!\n" .string "Great! I wanted to ask you something!\p" .string "Um, of my POKéMON, which do you\n" .string "think should go out first?$" -gText_ApprenticeMonFirstThanks1:: @ 82BCF61 +gText_ApprenticeMonFirstThanks1:: .string "My {STR_VAR_1}? That's true.\n" .string "Okay, I'll do that!\p" .string "Thanks for teaching me!$" -gText_ApprenticeWhichMonFirst2:: @ 82BCFA1 +gText_ApprenticeWhichMonFirst2:: .string "{PLAYER}, hello!\p" .string "I think, in a battle, it's very important\n" .string "which POKéMON comes out first.\p" .string "Out of the POKéMON that I have,\n" .string "which would be good to send out first?$" -gText_ApprenticeMonFirstThanks2:: @ 82BD03C +gText_ApprenticeMonFirstThanks2:: .string "My {STR_VAR_1} goes first?\n" .string "Okay, I got it!\p" .string "See you again!$" -gText_ApprenticeWhichMonFirst3:: @ 82BD06D +gText_ApprenticeWhichMonFirst3:: .string "Hello, {PLAYER}…\n" .string "I'm sorry to disturb you again with\l" .string "another question.\p" @@ -1297,7 +1297,7 @@ gText_ApprenticeWhichMonFirst3:: @ 82BD06D .string "Which of my POKéMON should I send\n" .string "out first in a battle?$" -gText_ApprenticeMonFirstThanks3:: @ 82BD18A +gText_ApprenticeMonFirstThanks3:: .string "My {STR_VAR_1}?\n" .string "Understood!\p" .string "I can't believe that you would bother\n" @@ -1305,7 +1305,7 @@ gText_ApprenticeMonFirstThanks3:: @ 82BD18A .string "I'm so grateful that you would even\n" .string "speak with me… Thank you!$" -gText_ApprenticeWhichMonFirst4:: @ 82BD222 +gText_ApprenticeWhichMonFirst4:: .string "Oh, {PLAYER}{KUN}! It's me!\n" .string "I'm so glad to see you because I have\l" .string "this little problem.\p" @@ -1316,7 +1316,7 @@ gText_ApprenticeWhichMonFirst4:: @ 82BD222 .string "How about deciding just the first\n" .string "POKéMON for me?$" -gText_ApprenticeMonFirstThanks4:: @ 82BD325 +gText_ApprenticeMonFirstThanks4:: .string "My {STR_VAR_1}? That's great!\p" .string "Knowing that you made the decision,\n" .string "{PLAYER}{KUN}, I won't be so upset if\l" @@ -1324,7 +1324,7 @@ gText_ApprenticeMonFirstThanks4:: @ 82BD325 .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticeWhichMonFirst5:: @ 82BD3B1 +gText_ApprenticeWhichMonFirst5:: .string "Hi, my teacher {PLAYER}{KUN}!\n" .string "I'm busy again today!\p" .string "I have to do some cycling, shopping,\n" @@ -1334,14 +1334,14 @@ gText_ApprenticeWhichMonFirst5:: @ 82BD3B1 .string "So, how about checking out my team?\n" .string "Which one should go first?$" -gText_ApprenticeMonFirstThanks5:: @ 82BD493 +gText_ApprenticeMonFirstThanks5:: .string "Okay, gotcha.\n" .string "I have enough time at least to put\l" .string "my {STR_VAR_1} at the head of the line!\p" .string "Whoops, my girlfriend's waiting!\n" .string "Thanks! See you around!$" -gText_ApprenticeWhichMonFirst6:: @ 82BD51C +gText_ApprenticeWhichMonFirst6:: .string "Yoohoo! Hiya, {PLAYER}!\n" .string "You always walk around looking tough!\p" .string "Listen, I need something from you\n" @@ -1351,7 +1351,7 @@ gText_ApprenticeWhichMonFirst6:: @ 82BD51C .string "Which POKéMON of mine should be first\n" .string "to go out in a battle?$" -gText_ApprenticeMonFirstThanks6:: @ 82BD609 +gText_ApprenticeMonFirstThanks6:: .string "Hmhm!\n" .string "My {STR_VAR_1}, you say!\l" .string "Thanks for a most cool answer!\p" @@ -1360,7 +1360,7 @@ gText_ApprenticeMonFirstThanks6:: @ 82BD609 .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticeWhichMonFirst7:: @ 82BD697 +gText_ApprenticeWhichMonFirst7:: .string "Thank you so much for stopping to\n" .string "chat with me, {PLAYER}.\p" .string "I know I'm taking advantage of your\n" @@ -1370,14 +1370,14 @@ gText_ApprenticeWhichMonFirst7:: @ 82BD697 .string "It would please me if you could decide\n" .string "which POKéMON should come first.$" -gText_ApprenticeMonFirstThanks7:: @ 82BD797 +gText_ApprenticeMonFirstThanks7:: .string "My {STR_VAR_1} it is!\n" .string "I will put it first right away!\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticeWhichMonFirst8:: @ 82BD806 +gText_ApprenticeWhichMonFirst8:: .string "Eek! {PLAYER}!\n" .string "I… I'm overjoyed to see you again!\p" .string "My POKéMON have become much\n" @@ -1388,7 +1388,7 @@ gText_ApprenticeWhichMonFirst8:: @ 82BD806 .string "Please decide which of my POKéMON\n" .string "should go out first!$" -gText_ApprenticeMonFirstThanks8:: @ 82BD8F5 +gText_ApprenticeMonFirstThanks8:: .string "Sigh… I'm overwhelmed with happiness…\p" .string "It's like a dream having you decide\n" .string "for me, {PLAYER}.\p" @@ -1397,7 +1397,7 @@ gText_ApprenticeMonFirstThanks8:: @ 82BD8F5 .string "I hope you'll be willing to teach me\n" .string "some more another time.$" -gText_ApprenticeWhichMonFirst9:: @ 82BD9BE +gText_ApprenticeWhichMonFirst9:: .string "Hello, hello!\n" .string "My mentor, {PLAYER}{KUN}!\l" .string "Hit me with your sage advice today!\p" @@ -1410,14 +1410,14 @@ gText_ApprenticeWhichMonFirst9:: @ 82BD9BE .string "Don't be shy now.\n" .string "Let's blurt it out!$" -gText_ApprenticeMonFirstThanks9:: @ 82BDAE1 +gText_ApprenticeMonFirstThanks9:: .string "Uh-huh, my {STR_VAR_1} leads off!\n" .string "OK, A-OK!\l" .string "I'll reorder the lineup, like, wham!\p" .string "All right, thanks, as always!\n" .string "Adios!$" -gText_ApprenticeWhichMonFirst10:: @ 82BDB4E +gText_ApprenticeWhichMonFirst10:: .string "{PLAYER}{KUN}, listen!\n" .string "It's a crisis!\p" .string "My POKéMON, all three of them, go into\n" @@ -1430,7 +1430,7 @@ gText_ApprenticeWhichMonFirst10:: @ 82BDB4E .string "So, how about deciding for me which\n" .string "POKéMON should go first, master?$" -gText_ApprenticeMonFirstThanks10:: @ 82BDC6B +gText_ApprenticeMonFirstThanks10:: .string "Okay, so it's my {STR_VAR_1} you chose?\n" .string "I'll let any but that one go first!\p" .string "Just kidding!\n" @@ -1438,7 +1438,7 @@ gText_ApprenticeMonFirstThanks10:: @ 82BDC6B .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticeWhichMonFirst11:: @ 82BDD0D +gText_ApprenticeWhichMonFirst11:: .string "A-H-O-Y!\n" .string "And that spells ahoy!\p" .string "The rappin' SAILOR am I!\n" @@ -1449,13 +1449,13 @@ gText_ApprenticeWhichMonFirst11:: @ 82BDD0D .string "Out of this lot, which should go first\n" .string "as the first on the spot?$" -gText_ApprenticeMonFirstThanks11:: @ 82BDDEC +gText_ApprenticeMonFirstThanks11:: .string "Okay, I hear you, sure I do!\n" .string "I'll switch them up, that I'll do!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticeWhichMonFirst12:: @ 82BDE68 +gText_ApprenticeWhichMonFirst12:: .string "Yahoo, {PLAYER}!\n" .string "How do you do?\p" .string "What should I do? Go ahead and ask?\n" @@ -1466,14 +1466,14 @@ gText_ApprenticeWhichMonFirst12:: @ 82BDE68 .string "POKéMON is the first to ride!\l" .string "Into battle, I mean to say.$" -gText_ApprenticeMonFirstThanks12:: @ 82BDF4D +gText_ApprenticeMonFirstThanks12:: .string "My {STR_VAR_1}? Yes!\n" .string "That'll do, there's no distress!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticeWhichMonFirst13:: @ 82BDFD8 +gText_ApprenticeWhichMonFirst13:: .string "…Oof…ooch… {PLAYER}{KUN}…\n" .string "My stomach's hurting all of a sudden…\p" .string "…It's getting better now…\p" @@ -1485,7 +1485,7 @@ gText_ApprenticeWhichMonFirst13:: @ 82BDFD8 .string "{PLAYER}{KUN}, which of my POKéMON should\n" .string "go first? So I'd win, I mean.$" -gText_ApprenticeMonFirstThanks13:: @ 82BE0FD +gText_ApprenticeMonFirstThanks13:: .string "Hm, all right.\n" .string "My {STR_VAR_1} goes first.\p" .string "I'll fix the lineup like that after\n" @@ -1493,7 +1493,7 @@ gText_ApprenticeMonFirstThanks13:: @ 82BE0FD .string "I hope I can keep hitting you up\n" .string "for help like this.$" -gText_ApprenticeWhichMonFirst14:: @ 82BE189 +gText_ApprenticeWhichMonFirst14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}?\p" .string "Please, don't look at me that way.\n" @@ -1506,7 +1506,7 @@ gText_ApprenticeWhichMonFirst14:: @ 82BE189 .string "Which POKéMON should I send out first\n" .string "so I at least look capable?$" -gText_ApprenticeMonFirstThanks14:: @ 82BE2A5 +gText_ApprenticeMonFirstThanks14:: .string "Oh… Okay!\n" .string "I'll lead with my {STR_VAR_1}.\p" .string "I hope I can do my best without\n" @@ -1515,7 +1515,7 @@ gText_ApprenticeMonFirstThanks14:: @ 82BE2A5 .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticeWhichMonFirst15:: @ 82BE33E +gText_ApprenticeWhichMonFirst15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really?\l" .string "Perhaps you're a clever look-alike?\p" @@ -1527,7 +1527,7 @@ gText_ApprenticeWhichMonFirst15:: @ 82BE33E .string "I would like you to tell me which one\l" .string "should go first in a battle.$" -gText_ApprenticeMonFirstThanks15:: @ 82BE46C +gText_ApprenticeMonFirstThanks15:: .string "My {STR_VAR_1}…\n" .string "You aren't pulling my leg?\p" .string "I see. If that's the case, that's fine.\n" @@ -1536,7 +1536,7 @@ gText_ApprenticeMonFirstThanks15:: @ 82BE46C .string "my best.\p" .string "Let us meet again!$" -gText_ApprenticeWhichMon0:: @ 82BE50D +gText_ApprenticeWhichMon0:: .string "Snivel…\n" .string "Oh, {PLAYER}!\p" .string "What perfect timing!\n" @@ -1548,7 +1548,7 @@ gText_ApprenticeWhichMon0:: @ 82BE50D .string "{PLAYER}, which do you think will give\n" .string "even me a chance at winning?$" -gText_ApprenticeMonThanks0:: @ 82BE5F5 +gText_ApprenticeMonThanks0:: .string "Snivel… I… I understand!\n" .string "Oh! I'm so sorry!\l" .string "You've made me so happy, I'm crying…\p" @@ -1556,7 +1556,7 @@ gText_ApprenticeMonThanks0:: @ 82BE5F5 .string "{STR_VAR_1}!\p" .string "Thank you so much!$" -gText_ApprenticeWhichMon1:: @ 82BE679 +gText_ApprenticeWhichMon1:: .string "Yay! It's {PLAYER}!\n" .string "Yay, you came at the right time, too!\l" .string "I need your advice again!\p" @@ -1565,12 +1565,12 @@ gText_ApprenticeWhichMon1:: @ 82BE679 .string "Which do you think I should raise,\n" .string "{PLAYER}?$" -gText_ApprenticeMonThanks1:: @ 82BE71E +gText_ApprenticeMonThanks1:: .string "Oh, so my {STR_VAR_1} is better!\n" .string "Okay, I'll do that!\p" .string "Thanks for teaching me!$" -gText_ApprenticeWhichMon2:: @ 82BE762 +gText_ApprenticeWhichMon2:: .string "{PLAYER}, hello!\n" .string "I have a question I wanted to ask.\p" .string "I'm in a dilemma over whether I should\n" @@ -1578,14 +1578,14 @@ gText_ApprenticeWhichMon2:: @ 82BE762 .string "Which POKéMON do you think will\n" .string "be stronger?$" -gText_ApprenticeMonThanks2:: @ 82BE7F8 +gText_ApprenticeMonThanks2:: .string "{STR_VAR_1} is your choice?\n" .string "Okay, I got it!\p" .string "I'll go catch a strong {STR_VAR_1}\n" .string "right away!\p" .string "See you again!$" -gText_ApprenticeWhichMon3:: @ 82BE850 +gText_ApprenticeWhichMon3:: .string "Hello, {PLAYER}…\p" .string "Um, you've probably already forgotten\n" .string "about someone like me…\p" @@ -1599,7 +1599,7 @@ gText_ApprenticeWhichMon3:: @ 82BE850 .string "{PLAYER}, you probably don't want to\n" .string "bother, but please decide for me.$" -gText_ApprenticeMonThanks3:: @ 82BE99C +gText_ApprenticeMonThanks3:: .string "But will a wild {STR_VAR_1} even pay\n" .string "attention to me?\p" .string "I will try!\p" @@ -1607,7 +1607,7 @@ gText_ApprenticeMonThanks3:: @ 82BE99C .string "No! I'll do my best!\p" .string "Thank you!$" -gText_ApprenticeWhichMon4:: @ 82BEA1B +gText_ApprenticeWhichMon4:: .string "Oh, {PLAYER}{KUN}! I'm so glad to see you!\n" .string "I was about to go looking for you!\p" .string "Can you decide what kind of POKéMON\n" @@ -1618,7 +1618,7 @@ gText_ApprenticeWhichMon4:: @ 82BEA1B .string "Which one do you think would be\n" .string "better?$" -gText_ApprenticeMonThanks4:: @ 82BEAE9 +gText_ApprenticeMonThanks4:: .string "{STR_VAR_1}? That's great!\p" .string "Knowing that you made the decision,\n" .string "{PLAYER}{KUN}, I won't be so upset if\l" @@ -1626,7 +1626,7 @@ gText_ApprenticeMonThanks4:: @ 82BEAE9 .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticeWhichMon5:: @ 82BEB72 +gText_ApprenticeWhichMon5:: .string "If it isn't {PLAYER}{KUN}! How's it going?\n" .string "I'm busy again as always!\p" .string "I want to do good with POKéMON, too,\n" @@ -1637,14 +1637,14 @@ gText_ApprenticeWhichMon5:: @ 82BEB72 .string "{PLAYER}{KUN}, give me some of your good\n" .string "advice! Which one'd be good for me?$" -gText_ApprenticeMonThanks5:: @ 82BEC8E +gText_ApprenticeMonThanks5:: .string "Okay, gotcha.\n" .string "I'll find time somehow and catch me\l" .string "that {STR_VAR_1} you recommended.\p" .string "I'm glad I met a good mentor in you.\n" .string "Thanks! See you around!$" -gText_ApprenticeWhichMon6:: @ 82BED16 +gText_ApprenticeWhichMon6:: .string "Oh!\n" .string "Yay, it's {PLAYER}!\p" .string "I didn't waste any time boasting to\n" @@ -1657,7 +1657,7 @@ gText_ApprenticeWhichMon6:: @ 82BED16 .string "and the choices were one {STR_VAR_1}\l" .string "or {STR_VAR_2}, which should it be?$" -gText_ApprenticeMonThanks6:: @ 82BEE29 +gText_ApprenticeMonThanks6:: .string "Ahhh!\n" .string "{STR_VAR_1}, you say!\l" .string "Thanks for a most cool answer!\p" @@ -1666,7 +1666,7 @@ gText_ApprenticeMonThanks6:: @ 82BEE29 .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticeWhichMon7:: @ 82BEEB4 +gText_ApprenticeWhichMon7:: .string "Oh, is it you, {PLAYER}?\n" .string "I'm delighted to see you again!\p" .string "Ever since I became your apprentice,\n" @@ -1679,14 +1679,14 @@ gText_ApprenticeWhichMon7:: @ 82BEEB4 .string "{STR_VAR_1} or {STR_VAR_2}…\l" .string "Which POKéMON is right for me?$" -gText_ApprenticeMonThanks7:: @ 82BEFE2 +gText_ApprenticeMonThanks7:: .string "One {STR_VAR_1} it is!\n" .string "I will find one right away!\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticeWhichMon8:: @ 82BF04E +gText_ApprenticeWhichMon8:: .string "Eek! {PLAYER}! I met you again!\n" .string "I… I'm overjoyed!\p" .string "Oh-oh-oh, I know!\n" @@ -1696,14 +1696,14 @@ gText_ApprenticeWhichMon8:: @ 82BF04E .string "Please decide which would be better,\n" .string "{STR_VAR_1} or {STR_VAR_2}!$" -gText_ApprenticeMonThanks8:: @ 82BF11D +gText_ApprenticeMonThanks8:: .string "Wow! You decided for me!\n" .string "One {STR_VAR_1} is what I'll raise to\l" .string "the best of my ability.\p" .string "I hope you'll be willing to teach me\n" .string "some more another time.$" -gText_ApprenticeWhichMon9:: @ 82BF1A8 +gText_ApprenticeWhichMon9:: .string "Hey, hey!\n" .string "My mentor, {PLAYER}{KUN}!\p" .string "Hello, I've been looking for you\n" @@ -1713,14 +1713,14 @@ gText_ApprenticeWhichMon9:: @ 82BF1A8 .string "Don't be shy now.\n" .string "Let's blurt it out!$" -gText_ApprenticeMonThanks9:: @ 82BF268 +gText_ApprenticeMonThanks9:: .string "Uh-huh, one {STR_VAR_1} it is!\n" .string "OK, A-OK!\l" .string "I'll get one in a BALL, like, cram!\p" .string "All right, thanks, as always!\n" .string "Adios!$" -gText_ApprenticeWhichMon10:: @ 82BF2D1 +gText_ApprenticeWhichMon10:: .string "{PLAYER}{KUN}, listen! Big news!\n" .string "I caught a mirage POKéMON!\p" .string "Of course I'm lying!\n" @@ -1734,7 +1734,7 @@ gText_ApprenticeWhichMon10:: @ 82BF2D1 .string "Which would be better?\n" .string "{STR_VAR_1} or {STR_VAR_2}?$" -gText_ApprenticeMonThanks10:: @ 82BF3CF +gText_ApprenticeMonThanks10:: .string "Okay, so it's {STR_VAR_1} you chose?\n" .string "I'll grab the other kind, then!\p" .string "Just kidding!\n" @@ -1742,7 +1742,7 @@ gText_ApprenticeMonThanks10:: @ 82BF3CF .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticeWhichMon11:: @ 82BF46A +gText_ApprenticeWhichMon11:: .string "A-H-O-Y!\n" .string "And that spells ahoy!\p" .string "The rappin' SAILOR am I!\n" @@ -1753,13 +1753,13 @@ gText_ApprenticeWhichMon11:: @ 82BF46A .string "{STR_VAR_1} and {STR_VAR_2}, you see.\l" .string "Which is the one to catch for me?$" -gText_ApprenticeMonThanks11:: @ 82BF551 +gText_ApprenticeMonThanks11:: .string "{STR_VAR_1}, you say, hey, hey!\n" .string "I'll go get me one right away!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticeWhichMon12:: @ 82BF5C3 +gText_ApprenticeWhichMon12:: .string "Oh, wow, if it isn't {PLAYER}!\p" .string "What should I do? Get your advice?\n" .string "Why not? I'm already talking to you!\p" @@ -1771,14 +1771,14 @@ gText_ApprenticeWhichMon12:: @ 82BF5C3 .string "It's either {STR_VAR_1} or {STR_VAR_2}.\l" .string "Which do you choose?$" -gText_ApprenticeMonThanks12:: @ 82BF6E5 +gText_ApprenticeMonThanks12:: .string "If that {STR_VAR_1} is the best,\n" .string "I'll do as you suggest!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticeWhichMon13:: @ 82BF773 +gText_ApprenticeWhichMon13:: .string "Oh, hi, {PLAYER}{KUN}…\n" .string "I have this horrible headache…\p" .string "I must've worried too much about\n" @@ -1789,13 +1789,13 @@ gText_ApprenticeWhichMon13:: @ 82BF773 .string "the POKéMON {STR_VAR_1} and\l" .string "{STR_VAR_2}, which should it be?$" -gText_ApprenticeMonThanks13:: @ 82BF869 +gText_ApprenticeMonThanks13:: .string "Hm, one {STR_VAR_1}, all right.\n" .string "I'll go look for one when I get better.\p" .string "I hope I can keep hitting you up\n" .string "for help like this.$" -gText_ApprenticeWhichMon14:: @ 82BF8DD +gText_ApprenticeWhichMon14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}…?\p" .string "Please, don't look at me that way.\n" @@ -1806,7 +1806,7 @@ gText_ApprenticeWhichMon14:: @ 82BF8DD .string "If the choices were {STR_VAR_1} or\n" .string "{STR_VAR_2}, which would be better?$" -gText_ApprenticeMonThanks14:: @ 82BF9BA +gText_ApprenticeMonThanks14:: .string "Oh… Okay!\n" .string "I'll do my best with one {STR_VAR_1}.\p" .string "I hope I can do my best without\n" @@ -1815,7 +1815,7 @@ gText_ApprenticeMonThanks14:: @ 82BF9BA .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticeWhichMon15:: @ 82BFA5A +gText_ApprenticeWhichMon15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really real?\p" .string "No, no, if you are real, it's fine.\n" @@ -1826,7 +1826,7 @@ gText_ApprenticeWhichMon15:: @ 82BFA5A .string "{STR_VAR_1} and {STR_VAR_2}, which is\l" .string "more worthy of me?$" -gText_ApprenticeMonThanks15:: @ 82BFB4E +gText_ApprenticeMonThanks15:: .string "{STR_VAR_1}?\n" .string "Are you certain?\p" .string "I see. If that's the case, that's fine.\n" @@ -1835,7 +1835,7 @@ gText_ApprenticeMonThanks15:: @ 82BFB4E .string "handle with aplomb.\p" .string "Let us meet again!$" -gText_ApprenticeWhichMove0:: @ 82BFBF2 +gText_ApprenticeWhichMove0:: .string "Waaah! Oh, {PLAYER}!\n" .string "Snivel… Hiccup…\p" .string "I have a dilemma!\n" @@ -1847,7 +1847,7 @@ gText_ApprenticeWhichMove0:: @ 82BFBF2 .string "be the better choice: {STR_VAR_2}\l" .string "or {STR_VAR_3}?$" -gText_ApprenticeMoveThanks0:: @ 82BFCAE +gText_ApprenticeMoveThanks0:: .string "{STR_VAR_1}?\n" .string "Waaaaah!\p" .string "Oh! I'm so sorry, {PLAYER}!\n" @@ -1856,7 +1856,7 @@ gText_ApprenticeMoveThanks0:: @ 82BFCAE .string "Snivel…\n" .string "Thank you so much!$" -gText_ApprenticeWhichMove1:: @ 82BFD26 +gText_ApprenticeWhichMove1:: .string "Yay! Hi, {PLAYER}!\n" .string "I need your advice again!\p" .string "I want to teach my {STR_VAR_1}\n" @@ -1865,13 +1865,13 @@ gText_ApprenticeWhichMove1:: @ 82BFD26 .string "{STR_VAR_2} or {STR_VAR_3}.\l" .string "What's your recommendation?$" -gText_ApprenticeMoveThanks1:: @ 82BFDB1 +gText_ApprenticeMoveThanks1:: .string "{STR_VAR_1} is better? I guess so!\n" .string "Okay, I'll go with that!\p" .string "If we meet here again, please teach\n" .string "me something else, teacher!$" -gText_ApprenticeWhichMove2:: @ 82BFE24 +gText_ApprenticeWhichMove2:: .string "{PLAYER}, hello!\n" .string "It's about my {STR_VAR_1}, but I'm\l" .string "worried about its moves.\p" @@ -1880,14 +1880,14 @@ gText_ApprenticeWhichMove2:: @ 82BFE24 .string "Which is stronger and better for\n" .string "my {STR_VAR_1}?$" -gText_ApprenticeMoveThanks2:: @ 82BFEAD +gText_ApprenticeMoveThanks2:: .string "{STR_VAR_1} is your choice?\n" .string "Okay, I got it!\p" .string "I'll go teach {STR_VAR_1} to\n" .string "my POKéMON right away!\p" .string "See you again!$" -gText_ApprenticeWhichMove3:: @ 82BFF0A +gText_ApprenticeWhichMove3:: .string "Ohhh, {PLAYER}…\n" .string "I'm hopeless, no, really!\p" .string "I've decided to raise a POKéMON,\n" @@ -1901,14 +1901,14 @@ gText_ApprenticeWhichMove3:: @ 82BFF0A .string "If you could even choose between\n" .string "{STR_VAR_2} and {STR_VAR_3}…$" -gText_ApprenticeMoveThanks3:: @ 82C0032 +gText_ApprenticeMoveThanks3:: .string "I understand!\p" .string "But will it even be willing to learn\n" .string "{STR_VAR_1} for me…\l" .string "No! I'll do my best!\p" .string "Thank you!$" -gText_ApprenticeWhichMove4:: @ 82C0090 +gText_ApprenticeWhichMove4:: .string "Oh, {PLAYER}{KUN}!\n" .string "I was just hoping to see you, too!\p" .string "I was wondering what move would\n" @@ -1919,7 +1919,7 @@ gText_ApprenticeWhichMove4:: @ 82C0090 .string "{STR_VAR_2} and {STR_VAR_3}?\l" .string "Which one would be better?$" -gText_ApprenticeMoveThanks4:: @ 82C016E +gText_ApprenticeMoveThanks4:: .string "{STR_VAR_1}? That's great!\p" .string "Knowing that you made the decision,\n" .string "{PLAYER}{KUN}, I won't be so upset if\l" @@ -1927,7 +1927,7 @@ gText_ApprenticeMoveThanks4:: @ 82C016E .string "Okay, I'll look to you for advice again.\n" .string "Bye!$" -gText_ApprenticeWhichMove5:: @ 82C01F7 +gText_ApprenticeWhichMove5:: .string "How could things be this busy?\n" .string "Hey, if it isn't {PLAYER}{KUN}!\l" .string "How's it going?\p" @@ -1941,14 +1941,14 @@ gText_ApprenticeWhichMove5:: @ 82C01F7 .string "{PLAYER}{KUN}, give me some of your good\n" .string "advice! Which move'd be good for me?$" -gText_ApprenticeMoveThanks5:: @ 82C034C +gText_ApprenticeMoveThanks5:: .string "Okay, gotcha.\n" .string "I'll make room in my schedule and\l" .string "teach that move.\p" .string "I'm glad I met a good mentor in you.\n" .string "Thanks! See you around!$" -gText_ApprenticeWhichMove6:: @ 82C03CA +gText_ApprenticeWhichMove6:: .string "Oh! Lucky!\n" .string "I met you again, {PLAYER}!\l" .string "I need to tap your mind again today.\p" @@ -1958,7 +1958,7 @@ gText_ApprenticeWhichMove6:: @ 82C03CA .string "best suited, {STR_VAR_2} or\l" .string "{STR_VAR_3}?$" -gText_ApprenticeMoveThanks6:: @ 82C046E +gText_ApprenticeMoveThanks6:: .string "Ahhh!\n" .string "{STR_VAR_1}, you say!\l" .string "Thanks for a most cool answer!\p" @@ -1967,7 +1967,7 @@ gText_ApprenticeMoveThanks6:: @ 82C046E .string "Let's meet here again, okay?\n" .string "Thanks!$" -gText_ApprenticeWhichMove7:: @ 82C04F9 +gText_ApprenticeWhichMove7:: .string "Oh, hello, {PLAYER}.\n" .string "I trust you've been well?\p" .string "I have to seek your advice again.\n" @@ -1976,14 +1976,14 @@ gText_ApprenticeWhichMove7:: @ 82C04F9 .string "my lovable {STR_VAR_1}?\l" .string "{STR_VAR_2} or {STR_VAR_3}?$" -gText_ApprenticeMoveThanks7:: @ 82C0598 +gText_ApprenticeMoveThanks7:: .string "{STR_VAR_1} it is!\n" .string "I will teach that right away!\p" .string "Thank you, {PLAYER}.\n" .string "I hope I can count on you again.\l" .string "Please take care!$" -gText_ApprenticeWhichMove8:: @ 82C0602 +gText_ApprenticeWhichMove8:: .string "Eek! {PLAYER}! I met you again!\n" .string "I… I'm overjoyed!\p" .string "Whenever I'm in need, you're always\n" @@ -1995,14 +1995,14 @@ gText_ApprenticeWhichMove8:: @ 82C0602 .string "Which move would be better,\n" .string "{STR_VAR_2} or {STR_VAR_3}?$" -gText_ApprenticeMoveThanks8:: @ 82C06D8 +gText_ApprenticeMoveThanks8:: .string "Oh-oh-oh! Thank you!\n" .string "{STR_VAR_1} is it!\l" .string "Perfectly understood!\p" .string "I hope you'll be willing to teach me\n" .string "some more another time.$" -gText_ApprenticeWhichMove9:: @ 82C074A +gText_ApprenticeWhichMove9:: .string "Hola, {PLAYER}{KUN}, bueno!\n" .string "I'm hoping for some more of\l" .string "your sage advice today!\p" @@ -2013,14 +2013,14 @@ gText_ApprenticeWhichMove9:: @ 82C074A .string "Would it be {STR_VAR_2}?\n" .string "Or {STR_VAR_3}?$" -gText_ApprenticeMoveThanks9:: @ 82C0809 +gText_ApprenticeMoveThanks9:: .string "Uh-huh, {STR_VAR_1} it is!\n" .string "Si, bueno!\l" .string "I'll get it taught, like, ka-blam!\p" .string "All right, thanks, as always!\n" .string "Adios!$" -gText_ApprenticeWhichMove10:: @ 82C086E +gText_ApprenticeWhichMove10:: .string "{PLAYER}{KUN}, it's completely wild!\p" .string "My POKéMON!\n" .string "It learned six moves!\p" @@ -2034,7 +2034,7 @@ gText_ApprenticeWhichMove10:: @ 82C086E .string "{STR_VAR_2} or {STR_VAR_3}--which\n" .string "would go with my {STR_VAR_1} best?$" -gText_ApprenticeMoveThanks10:: @ 82C0982 +gText_ApprenticeMoveThanks10:: .string "Okay, so it's {STR_VAR_1} you chose?\n" .string "I'll choose another move, then!\p" .string "Just kidding!\n" @@ -2042,7 +2042,7 @@ gText_ApprenticeMoveThanks10:: @ 82C0982 .string "Thanks, master!\n" .string "I hope you'll keep teaching me!$" -gText_ApprenticeWhichMove11:: @ 82C0A1D +gText_ApprenticeWhichMove11:: .string "A-H-O-Y!\n" .string "And that spells ahoy!\p" .string "The rappin' SAILOR am I!\n" @@ -2053,13 +2053,13 @@ gText_ApprenticeWhichMove11:: @ 82C0A1D .string "the moves. What would be the best\l" .string "for my {STR_VAR_1} so it grooves?$" -gText_ApprenticeMoveThanks11:: @ 82C0AFD +gText_ApprenticeMoveThanks11:: .string "{STR_VAR_1}, you say, hey, hey!\n" .string "I'll go teach that right away!\p" .string "If it's advice I ever need,\n" .string "{PLAYER}, your word I'll always heed!$" -gText_ApprenticeWhichMove12:: @ 82C0B6F +gText_ApprenticeWhichMove12:: .string "Oh, yeahah, if it isn't {PLAYER}!\p" .string "What should I do? Get your advice?\n" .string "Why not? I'm already talking to you!\p" @@ -2071,14 +2071,14 @@ gText_ApprenticeWhichMove12:: @ 82C0B6F .string "It's {STR_VAR_2} or {STR_VAR_3},\l" .string "what do you choose?$" -gText_ApprenticeMoveThanks12:: @ 82C0C7D +gText_ApprenticeMoveThanks12:: .string "If that {STR_VAR_1} is the best,\n" .string "I'll do as you suggest!\p" .string "Well, {PLAYER}, I have to roam free,\n" .string "but don't you forget about me.\p" .string "See you again, my smart friend!$" -gText_ApprenticeWhichMove13:: @ 82C0D0B +gText_ApprenticeWhichMove13:: .string "Gahack! Gaah! Oh, {PLAYER}{KUN}…\n" .string "I have this lousy cold, I do…\p" .string "I want to pick a move for my POKéMON,\n" @@ -2089,13 +2089,13 @@ gText_ApprenticeWhichMove13:: @ 82C0D0B .string "{STR_VAR_2} and {STR_VAR_3} for\l" .string "my {STR_VAR_1}, which would it be?$" -gText_ApprenticeMoveThanks13:: @ 82C0DFE +gText_ApprenticeMoveThanks13:: .string "Hm, {STR_VAR_1}, all right. Cough!\n" .string "I'll go teach it when I get better.\p" .string "I hope I can keep hitting you up\n" .string "for help like this.$" -gText_ApprenticeWhichMove14:: @ 82C0E71 +gText_ApprenticeWhichMove14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}…?\p" .string "Please, don't look at me that way.\n" @@ -2108,7 +2108,7 @@ gText_ApprenticeWhichMove14:: @ 82C0E71 .string "If the choices were {STR_VAR_2} or\l" .string "{STR_VAR_3}, which would be better?$" -gText_ApprenticeMoveThanks14:: @ 82C0F6D +gText_ApprenticeMoveThanks14:: .string "Oh… Okay!\n" .string "I'll try that {STR_VAR_1}.\p" .string "I hope I can teach that move…\n" @@ -2117,7 +2117,7 @@ gText_ApprenticeMoveThanks14:: @ 82C0F6D .string "If we meet again, I hope you will be\l" .string "as helpful.$" -gText_ApprenticeWhichMove15:: @ 82C1003 +gText_ApprenticeWhichMove15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really real?\p" .string "Perhaps you're one of those popular\n" @@ -2130,7 +2130,7 @@ gText_ApprenticeWhichMove15:: @ 82C1003 .string "Which move would be better for it to\n" .string "use, {STR_VAR_2} or {STR_VAR_3}?$" -gText_ApprenticeMoveThanks15:: @ 82C1122 +gText_ApprenticeMoveThanks15:: .string "{STR_VAR_1}?\n" .string "There's no question about that?\p" .string "I see. If that's the case, that's fine.\n" @@ -2139,7 +2139,7 @@ gText_ApprenticeMoveThanks15:: @ 82C1122 .string "my POKéMON can learn.\p" .string "Let us meet again!$" -gText_ApprenticePickWinSpeech0:: @ 82C11D1 +gText_ApprenticePickWinSpeech0:: .string "Oh… {PLAYER}?\n" .string "It is {PLAYER}!\l" .string "Oh! Sniff…sob… Please, listen!\p" @@ -2151,7 +2151,7 @@ gText_ApprenticePickWinSpeech0:: @ 82C11D1 .string "Could you maybe teach me something\l" .string "cool to say when I win so I don't cry?$" -gText_ApprenticeWinSpeechThanks0:: @ 82C12D5 +gText_ApprenticeWinSpeechThanks0:: .string "{STR_VAR_1}\p" .string "Awesome! Wicked! Awoooh!\n" .string "It's really cool!\p" @@ -2164,7 +2164,7 @@ gText_ApprenticeWinSpeechThanks0:: @ 82C12D5 .string "{PLAYER}…\n" .string "Next time… We should battle!$" -gText_ApprenticePickWinSpeech1:: @ 82C13AB +gText_ApprenticePickWinSpeech1:: .string "Yay! It's {PLAYER}! Hello!\n" .string "I wanted to ask you something!\p" .string "I want to say something cool when\n" @@ -2172,7 +2172,7 @@ gText_ApprenticePickWinSpeech1:: @ 82C13AB .string "Do you have a cool saying that\n" .string "you could recommend?$" -gText_ApprenticeWinSpeechThanks1:: @ 82C1444 +gText_ApprenticeWinSpeechThanks1:: .string "{STR_VAR_1}\p" .string "Oh, wow! That is so cool!\n" .string "Okay, I'll say that!\p" @@ -2182,7 +2182,7 @@ gText_ApprenticeWinSpeechThanks1:: @ 82C1444 .string "When we meet again, it'll be for\n" .string "a battle!$" -gText_ApprenticePickWinSpeech2:: @ 82C1501 +gText_ApprenticePickWinSpeech2:: .string "{PLAYER}, hello!\p" .string "My POKéMON and I are ready for\n" .string "anything, except for one thing.\p" @@ -2191,7 +2191,7 @@ gText_ApprenticePickWinSpeech2:: @ 82C1501 .string "Could you think up something good\n" .string "to say?$" -gText_ApprenticeWinSpeechThanks2:: @ 82C15B6 +gText_ApprenticeWinSpeechThanks2:: .string "{STR_VAR_1}\p" .string "…Cool!\n" .string "I will use that!\p" @@ -2202,7 +2202,7 @@ gText_ApprenticeWinSpeechThanks2:: @ 82C15B6 .string "Next time, let's meet at a place\n" .string "of battle!$" -gText_ApprenticePickWinSpeech3:: @ 82C165E +gText_ApprenticePickWinSpeech3:: .string "Hello, {PLAYER}…\n" .string "I'm sorry to bug you, but I'm hopeless…\p" .string "Even when…\n" @@ -2214,7 +2214,7 @@ gText_ApprenticePickWinSpeech3:: @ 82C165E .string "Please, {PLAYER}, what should I say\n" .string "if I win a battle?$" -gText_ApprenticeWinSpeechThanks3:: @ 82C174F +gText_ApprenticeWinSpeechThanks3:: .string "{STR_VAR_1}\p" .string "That's inspired…\p" .string "Uh… Is it okay for someone like me\n" @@ -2227,7 +2227,7 @@ gText_ApprenticeWinSpeechThanks3:: @ 82C174F .string "someone like me, but let's meet\l" .string "somewhere again!$" -gText_ApprenticePickWinSpeech4:: @ 82C1862 +gText_ApprenticePickWinSpeech4:: .string "Oh, {PLAYER}{KUN}.\n" .string "There's something I want you to hear.\p" .string "I know that I don't always sound\n" @@ -2240,7 +2240,7 @@ gText_ApprenticePickWinSpeech4:: @ 82C1862 .string "But I can't think of anything good!\n" .string "Could you think something up for me?$" -gText_ApprenticeWinSpeechThanks4:: @ 82C19A0 +gText_ApprenticeWinSpeechThanks4:: .string "{STR_VAR_1}\p" .string "Not bad!\n" .string "Yup, that's what I'll go with!\p" @@ -2252,7 +2252,7 @@ gText_ApprenticeWinSpeechThanks4:: @ 82C19A0 .string "Next time, we battle, okay?\n" .string "See you!$" -gText_ApprenticePickWinSpeech5:: @ 82C1A76 +gText_ApprenticePickWinSpeech5:: .string "Oh, I can't get over how busy I am!\n" .string "Oh, hey, I was looking for you, {PLAYER}{KUN}.\p" .string "Are you well as usual?\n" @@ -2266,7 +2266,7 @@ gText_ApprenticePickWinSpeech5:: @ 82C1A76 .string "underline my coolness when I'm done\l" .string "and walking away? {PLAYER}{KUN}, help me!$" -gText_ApprenticeWinSpeechThanks5:: @ 82C1C16 +gText_ApprenticeWinSpeechThanks5:: .string "{STR_VAR_1}\p" .string "Okay, gotcha.\n" .string "I can find time to say that!\p" @@ -2277,7 +2277,7 @@ gText_ApprenticeWinSpeechThanks5:: @ 82C1C16 .string "Thanks for everything, {PLAYER}{KUN}!\n" .string "We have to battle, you and me, one day!$" -gText_ApprenticePickWinSpeech6:: @ 82C1CF5 +gText_ApprenticePickWinSpeech6:: .string "I lucked out again!\n" .string "{PLAYER}! Am I glad to see you!\l" .string "Like usual, I need your advice!\p" @@ -2287,7 +2287,7 @@ gText_ApprenticePickWinSpeech6:: @ 82C1CF5 .string "it with a cool flourish, what\l" .string "should I say?$" -gText_ApprenticeWinSpeechThanks6:: @ 82C1DC1 +gText_ApprenticeWinSpeechThanks6:: .string "{STR_VAR_1}\p" .string "That… That's fabulous!\n" .string "It's dignified and cool! I claim it!\p" @@ -2300,7 +2300,7 @@ gText_ApprenticeWinSpeechThanks6:: @ 82C1DC1 .string "we battle!\p" .string "Thank you for everything!$" -gText_ApprenticePickWinSpeech7:: @ 82C1EDC +gText_ApprenticePickWinSpeech7:: .string "Oh, {PLAYER}.\n" .string "I'm so glad I met you!\p" .string "I no longer have any concerns with\n" @@ -2313,7 +2313,7 @@ gText_ApprenticePickWinSpeech7:: @ 82C1EDC .string "Please, what should I say when\n" .string "I win a battle?$" -gText_ApprenticeWinSpeechThanks7:: @ 82C1FEC +gText_ApprenticeWinSpeechThanks7:: .string "{STR_VAR_1}\p" .string "Ah! That saying! It refreshes me\n" .string "and makes me feel reborn!\p" @@ -2325,7 +2325,7 @@ gText_ApprenticeWinSpeechThanks7:: @ 82C1FEC .string "Perhaps one day…\n" .string "Farewell!$" -gText_ApprenticePickWinSpeech8:: @ 82C20D1 +gText_ApprenticePickWinSpeech8:: .string "Eek! I spotted {PLAYER}!\n" .string "I… I'm overjoyed to see you!\p" .string "Oh-oh-oh! There's something I just\n" @@ -2337,7 +2337,7 @@ gText_ApprenticePickWinSpeech8:: @ 82C20D1 .string "So now, {PLAYER}, please, I want you to\n" .string "think up an exit line for when I win!$" -gText_ApprenticeWinSpeechThanks8:: @ 82C21FF +gText_ApprenticeWinSpeechThanks8:: .string "{STR_VAR_1}\p" .string "Waaaaah!\n" .string "I'm going to say that?!\l" @@ -2351,7 +2351,7 @@ gText_ApprenticeWinSpeechThanks8:: @ 82C21FF .string "I've got to go now, but let's meet\n" .string "in battle one day!$" -gText_ApprenticePickWinSpeech9:: @ 82C231C +gText_ApprenticePickWinSpeech9:: .string "Hola, bueno!\n" .string "{PLAYER}{KUN}!\p" .string "You know, I'm getting the itch to roam\n" @@ -2362,7 +2362,7 @@ gText_ApprenticePickWinSpeech9:: @ 82C231C .string "be a good boast I could say to my\l" .string "fallen TRAINER opponent?$" -gText_ApprenticeWinSpeechThanks9:: @ 82C2407 +gText_ApprenticeWinSpeechThanks9:: .string "{STR_VAR_1}\p" .string "Uh-huh, that's sweet!\n" .string "Si, bueno!\l" @@ -2372,7 +2372,7 @@ gText_ApprenticeWinSpeechThanks9:: @ 82C2407 .string "Give me a battle one day, OK?\n" .string "Adios!$" -gText_ApprenticePickWinSpeech10:: @ 82C24B5 +gText_ApprenticePickWinSpeech10:: .string "{PLAYER}{KUN}, there's big trouble!\p" .string "When I win a battle, I brag about it\n" .string "for an hour at least!\p" @@ -2384,7 +2384,7 @@ gText_ApprenticePickWinSpeech10:: @ 82C24B5 .string "I should say after winning a battle,\l" .string "master?$" -gText_ApprenticeWinSpeechThanks10:: @ 82C25B1 +gText_ApprenticeWinSpeechThanks10:: .string "{STR_VAR_1}\p" .string "That's what I should say, huh?\n" .string "Then, I'll stay away from that!\p" @@ -2400,7 +2400,7 @@ gText_ApprenticeWinSpeechThanks10:: @ 82C25B1 .string "That's all!\n" .string "Farewell, my master!$" -gText_ApprenticePickWinSpeech11:: @ 82C2707 +gText_ApprenticePickWinSpeech11:: .string "A-H-O-Y!\n" .string "And that spells ahoy!\p" .string "The rappin' SAILOR am I!\n" @@ -2411,7 +2411,7 @@ gText_ApprenticePickWinSpeech11:: @ 82C2707 .string "If I win a match, what can I say\n" .string "in a real cool way?$" -gText_ApprenticeWinSpeechThanks11:: @ 82C27D4 +gText_ApprenticeWinSpeechThanks11:: .string "{STR_VAR_1}\p" .string "Perfect! That's what I'll use.\n" .string "I was right to make you choose!\p" @@ -2423,7 +2423,7 @@ gText_ApprenticeWinSpeechThanks11:: @ 82C27D4 .string "And that spells bon voyage,\l" .string "to you this is my homage!$" -gText_ApprenticePickWinSpeech12:: @ 82C28D6 +gText_ApprenticePickWinSpeech12:: .string "Oh, yeah, {PLAYER}!\n" .string "I found you again today!\p" .string "What should I do? Ask you again?\n" @@ -2437,7 +2437,7 @@ gText_ApprenticePickWinSpeech12:: @ 82C28D6 .string "a battle ends well.\p" .string "Come on, I wanna hear you say it!$" -gText_ApprenticeWinSpeechThanks12:: @ 82C2A0B +gText_ApprenticeWinSpeechThanks12:: .string "{STR_VAR_1}\p" .string "All right, all right!\n" .string "I'll use that because it's so tight!\p" @@ -2451,7 +2451,7 @@ gText_ApprenticeWinSpeechThanks12:: @ 82C2A0B .string "Take care, {PLAYER}!\n" .string "Love ya!$" -gText_ApprenticePickWinSpeech13:: @ 82C2B50 +gText_ApprenticePickWinSpeech13:: .string "{PLAYER}{KUN}, I'm finished…\n" .string "My nose won't stop dripping…\p" .string "I was trying to think up something\n" @@ -2463,7 +2463,7 @@ gText_ApprenticePickWinSpeech13:: @ 82C2B50 .string "When I win a battle,\n" .string "what should I say?$" -gText_ApprenticeWinSpeechThanks13:: @ 82C2C77 +gText_ApprenticeWinSpeechThanks13:: .string "{STR_VAR_1}\p" .string "… … …That's good.\n" .string "No, it's awe inspiring!\l" @@ -2475,7 +2475,7 @@ gText_ApprenticeWinSpeechThanks13:: @ 82C2C77 .string "From now on, we're rivals!\n" .string "Thanks for everything!$" -gText_ApprenticePickWinSpeech14:: @ 82C2D67 +gText_ApprenticePickWinSpeech14:: .string "Er… Um…\n" .string "{PLAYER}{KUN}…\p" .string "Please, don't look at me that way.\n" @@ -2486,7 +2486,7 @@ gText_ApprenticePickWinSpeech14:: @ 82C2D67 .string "but what if I win a battle?\l" .string "What should I say?$" -gText_ApprenticeWinSpeechThanks14:: @ 82C2E41 +gText_ApprenticeWinSpeechThanks14:: .string "{STR_VAR_1}\p" .string "Oh… Okay!\n" .string "I'll try to say that!\l" @@ -2496,7 +2496,7 @@ gText_ApprenticeWinSpeechThanks14:: @ 82C2E41 .string "I'll obey all that you've taught me,\n" .string "{PLAYER}{KUN}, and do the best I can.$" -gText_ApprenticePickWinSpeech15:: @ 82C2EF5 +gText_ApprenticePickWinSpeech15:: .string "Hm? You appear to be {PLAYER}{KUN}…\n" .string "But are you really?\l" .string "Perhaps a clever {PLAYER} DOLL?\p" @@ -2509,7 +2509,7 @@ gText_ApprenticePickWinSpeech15:: @ 82C2EF5 .string "More precisely, what should I say\n" .string "if I win a battle?$" -gText_ApprenticeWinSpeechThanks15:: @ 82C3023 +gText_ApprenticeWinSpeechThanks15:: .string "{STR_VAR_1}\p" .string "… … … … … …\n" .string "When I win a match…\p" diff --git a/data/text/battle_tent.inc b/data/text/battle_tent.inc index 98aa689ce944..511ae8724de7 100644 --- a/data/text/battle_tent.inc +++ b/data/text/battle_tent.inc @@ -1,17 +1,17 @@ -FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C47EB +FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent: .string "I welcome you to the BATTLE TENT\n" .string "FALLARBOR SITE!\p" .string "I am your guide to the Set KO Tourney!$" -FallarborTown_BattleTentLobby_Text_TakeChallenge: @ 82C4843 +FallarborTown_BattleTentLobby_Text_TakeChallenge: .string "Now, do you wish to take the challenge\n" .string "of a Set KO Tourney?$" -FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge: @ 82C487F +FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge: .string "We await your challenge on\n" .string "another occasion!$" -FallarborTown_BattleTentLobby_Text_ExplainFallarborTent: @ 82C48AC +FallarborTown_BattleTentLobby_Text_ExplainFallarborTent: .string "In the FALLARBOR BATTLE TENT,\n" .string "we undertake the Set KO Tourney.\p" .string "All participants enter with a team of\n" @@ -32,21 +32,21 @@ FallarborTown_BattleTentLobby_Text_ExplainFallarborTent: @ 82C48AC .string "three TRAINERS in succession,\l" .string "we will present you with a fine prize.$" -FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C4B35 +FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge: .string "Before showing you to the BATTLE\n" .string "TENT, I must save. Is that okay?$" @ Unused -FallarborTown_BattleTentLobby_Text_WhichLevelMode: @ 82C4B77 +FallarborTown_BattleTentLobby_Text_WhichLevelMode: .string "We offer two levels of challenge,\n" .string "Level 50 and Open Level.\l" .string "Which is your choice?$" -FallarborTown_BattleTentLobby_Text_SelectThreeMons: @ 82C4BC8 +FallarborTown_BattleTentLobby_Text_SelectThreeMons: .string "Very well, now select your\n" .string "three POKéMON, please.$" -FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C4BFA +FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -56,7 +56,7 @@ FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C4BFA .string "When you have made your preparations,\n" .string "please do return.$" -FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C4CC0 +FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: .string "My dear challenger!\p" .string "You do not have the three POKéMON\n" .string "required for entry.\p" @@ -68,11 +68,11 @@ FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C4CC0 .string "When you have made your preparations,\n" .string "please do return.$" -FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent: @ 82C4DC3 +FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent: .string "I shall now guide you to\n" .string "the BATTLE TENT.$" -FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C4DED +FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting: .string "My dear challenger!\p" .string "You did not save the game before\n" .string "shutting down, did you?\p" @@ -82,52 +82,52 @@ FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C4DED .string "You may, of course, start with a fresh\n" .string "challenge.$" -FallarborTown_BattleTentLobby_Text_BeatThreeTrainers: @ 82C4EC3 +FallarborTown_BattleTentLobby_Text_BeatThreeTrainers: .string "How splendid! You have beaten\n" .string "three TRAINERS in succession!$" -FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame: @ 82C4EFF +FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame: .string "Please wait while I save the game.$" -FallarborTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C4F22 +FallarborTown_BattleTentLobby_Text_PresentYouWithPrize: .string "In commemoration of your 3-win streak,\n" .string "we present you with this prize.$" -FallarborTown_BattleTentLobby_Text_ReceivedPrize: @ 82C4F69 +FallarborTown_BattleTentLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" -FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize: @ 82C4F83 +FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize: .string "Oh?\n" .string "Your BAG seems to be full.\p" .string "I urge you to clear space and\n" .string "return for your prize.$" -FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving: @ 82C4FD7 +FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving: .string "Thank you so much for participating!\p" .string "Please wait while I save the game.$" -FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2: @ 82C501F +FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2: .string "We await your challenge on\n" .string "another occasion!$" -FallarborTown_BattleTentLobby_Text_LookingForwardToArrival: @ 82C504C +FallarborTown_BattleTentLobby_Text_LookingForwardToArrival: .string "We have been looking forward to\n" .string "your arrival.\p" .string "Before I show you to the BATTLE TENT,\n" .string "I must save the game. Please wait.$" -VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C50C3 +VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent: .string "I welcome you to the BATTLE TENT\n" .string "VERDANTURF SITE!\p" .string "Here, the TRAINER's trust toward\n" .string "POKéMON is tested.$" -VerdanturfTown_BattleTentLobby_Text_TakeChallenge: @ 82C5129 +VerdanturfTown_BattleTentLobby_Text_TakeChallenge: .string "Do you wish to take the VERDANTURF\n" .string "BATTLE TENT challenge?$" -VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent: @ 82C5163 +VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent: .string "In the VERDANTURF BATTLE TENT,\n" .string "there is one crucial rule that must\l" .string "be obeyed.\p" @@ -147,17 +147,17 @@ VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent: @ 82C5163 .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -VerdanturfTown_BattleTentLobby_Text_ReturnFortified: @ 82C539A +VerdanturfTown_BattleTentLobby_Text_ReturnFortified: .string "When you have fortified your heart\n" .string "and POKéMON, you must return.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_WhichLevelMode: @ 82C53DB +VerdanturfTown_BattleTentLobby_Text_WhichLevelMode: .string "There are two levels of difficulty,\n" .string "Level 50 and Open Level.\l" .string "Which is your choice of a challenge?$" -VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C543D +VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -169,7 +169,7 @@ VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C543D .string "Come back when you have made\n" .string "your preparations.$" -VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C5538 +VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: .string "Sigh…\p" .string "You do not have the three POKéMON\n" .string "required for the challenge.\p" @@ -181,48 +181,48 @@ VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C5538 .string "Come back when you have made\n" .string "your preparations.$" -VerdanturfTown_BattleTentLobby_Text_SelectThreeMons: @ 82C5633 +VerdanturfTown_BattleTentLobby_Text_SelectThreeMons: .string "Good. Now, you must select your\n" .string "three POKéMON.$" -VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5662 +VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge: .string "I must save before I show you to\n" .string "the BATTLE TENT. Is that okay?$" -VerdanturfTown_BattleTentLobby_Text_NowFollowMe: @ 82C56A2 +VerdanturfTown_BattleTentLobby_Text_NowFollowMe: .string "Good.\n" .string "Now, follow me.$" -VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded: @ 82C56B8 +VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded: .string "I feel privileged for having seen\n" .string "your POKéMON's exploits.\p" .string "The results will be recorded.\n" .string "I must ask you to briefly wait.$" -VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak: @ 82C5731 +VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak: .string "To achieve a 3-win streak…\p" .string "The bonds that bind your heart with\n" .string "your POKéMON seem firm and true.$" -VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded: @ 82C5791 +VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded: .string "Your feat will be recorded.\n" .string "I must ask you to briefly wait.$" -VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C57CD +VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize: .string "For the feat of your 3-win streak,\n" .string "we present you with this prize.$" -SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C5810 +SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent: .string "Welcome to the BATTLE TENT\n" .string "SLATEPORT SITE!\p" .string "I am your guide to the Battle Swap\n" .string "Tournament.$" -SlateportCity_BattleTentLobby_Text_TakeChallenge: @ 82C586A +SlateportCity_BattleTentLobby_Text_TakeChallenge: .string "Would you like to take the Battle\n" .string "Swap challenge?$" -SlateportCity_BattleTentLobby_Text_ExplainSlateportTent: @ 82C589C +SlateportCity_BattleTentLobby_Text_ExplainSlateportTent: .string "Here at the SLATEPORT BATTLE TENT,\n" .string "we hold Battle Swap events\l" .string "using rental POKéMON.\p" @@ -240,27 +240,27 @@ SlateportCity_BattleTentLobby_Text_ExplainSlateportTent: @ 82C589C .string "If you don't save before interrupting,\n" .string "you will be disqualified.$" -SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit: @ 82C5AA5 +SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit: .string "We look forward to your next visit.$" @ Unused -SlateportCity_BattleTentLobby_Text_WhichLevelMode: @ 82C5AC9 +SlateportCity_BattleTentLobby_Text_WhichLevelMode: .string "Which level do you wish to challenge?\n" .string "Level 50 or Level 100?$" -SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5B06 +SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge: .string "Before you begin your challenge,\n" .string "I need to save data. Is that okay?$" @ Unused -SlateportCity_BattleTentLobby_Text_HoldMonsForSafekeeping: @ 82C5B4A +SlateportCity_BattleTentLobby_Text_HoldMonsForSafekeeping: .string "Okay, I will hold your POKéMON for\n" .string "safekeeping while you compete.$" -SlateportCity_BattleTentLobby_Text_StepThisWay: @ 82C5B8C +SlateportCity_BattleTentLobby_Text_StepThisWay: .string "Please step this way.$" -SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults: @ 82C5BA2 +SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults: .string "Thank you for participating!\p" .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.\p" @@ -268,11 +268,11 @@ SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults: @ 82C5BA2 .string "Please wait.$" @ Unused -SlateportCity_BattleTentLobby_Text_ReturnMonsExchangeRentals: @ 82C5C30 +SlateportCity_BattleTentLobby_Text_ReturnMonsExchangeRentals: .string "I will return your POKéMON in exchange\n" .string "for our rental POKéMON.$" -SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons: @ 82C5C6F +SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons: .string "Congratulations!\n" .string "You've won three straight matches!\p" .string "I will return your POKéMON in exchange\n" @@ -280,65 +280,65 @@ SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons: @ 82C5C6F .string "I must also save your event results.\n" .string "Please wait.$" -SlateportCity_BattleTentLobby_Text_AwardYouThisPrize: @ 82C5D14 +SlateportCity_BattleTentLobby_Text_AwardYouThisPrize: .string "In recognition of your 3-win streak,\n" .string "we award you this prize.$" -SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom: @ 82C5D52 +SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom: .string "Oh?\n" .string "You seem to have no room for this.\p" .string "Please make room in your BAG and\n" .string "let me know.$" -SlateportCity_BattleTentLobby_Text_BeenWaitingForYou: @ 82C5DA7 +SlateportCity_BattleTentLobby_Text_BeenWaitingForYou: .string "We've been waiting for you!\p" .string "Before we resume your challenge,\n" .string "I must save the game.$" -SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C5DFA +SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting: .string "I'm sorry to say this, but you didn't\n" .string "save before you quit playing last time.\p" .string "As a result, you have been disqualified\n" .string "from your challenge.$" @ Unused -SlateportCity_BattleTentLobby_Text_ReturnPersonalMons: @ 82C5E85 +SlateportCity_BattleTentLobby_Text_ReturnPersonalMons: .string "We'll return your personal POKéMON.$" @ Unused -SlateportCity_BattleTentLobby_Text_ReceivedPrize: @ 82C5EA9 +SlateportCity_BattleTentLobby_Text_ReceivedPrize: .string "{PLAYER} received the prize\n" .string "{STR_VAR_1}.$" @ Unused -SlateportCity_BattleTentLobby_Text_RulesAreListed: @ 82C5EC3 +SlateportCity_BattleTentLobby_Text_RulesAreListed: .string "The Battle Swap rules are listed.$" @ Unused -SlateportCity_BattleTentLobby_Text_ReadWhichHeading: @ 82C5EE5 +SlateportCity_BattleTentLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" -SlateportCity_BattleTentLobby_Text_ExplainBasicRules: @ 82C5F08 +SlateportCity_BattleTentLobby_Text_ExplainBasicRules: .string "In a Battle Swap event, you may use\n" .string "only three POKéMON.\p" .string "Whether you are renting or swapping,\n" .string "your team may not have two or more\l" .string "of the same POKéMON.$" -SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules: @ 82C5F9D +SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules: .string "You may swap POKéMON only with\n" .string "the TRAINER you have just defeated.\p" .string "You may swap for only those POKéMON\n" .string "used by the beaten TRAINER.$" -SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules: @ 82C6020 +SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules: .string "After every battle you win, you may\n" .string "swap for one of your defeated\l" .string "opponent's POKéMON.\p" .string "You will not be able to swap POKéMON\n" .string "with the third TRAINER in the event.$" -SlateportCity_BattleTentLobby_Text_ExplainSwapNotes: @ 82C60C0 +SlateportCity_BattleTentLobby_Text_ExplainSwapNotes: .string "There are two key points to be aware\n" .string "of when swapping POKéMON.\p" .string "First, when swapping, you can't check\n" @@ -350,23 +350,23 @@ SlateportCity_BattleTentLobby_Text_ExplainSwapNotes: @ 82C60C0 .string "This sequence remains unchanged\n" .string "even when swaps are made.$" -SlateportCity_BattleTentLobby_Text_ExplainMonRules: @ 82C61FE +SlateportCity_BattleTentLobby_Text_ExplainMonRules: .string "The POKéMON of the SLATEPORT\n" .string "BATTLE TENT are all rentals.\p" .string "All rental POKéMON are kept at\n" .string "Level 30.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_RulesAreListed2: @ 82C6261 +VerdanturfTown_BattleTentLobby_Text_RulesAreListed2: .string "The VERDANTURF BATTLE TENT\n" .string "rules are listed.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ReadWhichHeading: @ 82C628E +VerdanturfTown_BattleTentLobby_Text_ReadWhichHeading: .string "Which heading do you want to read?$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ExplainBasicRules: @ 82C62B1 +VerdanturfTown_BattleTentLobby_Text_ExplainBasicRules: .string "Here at the VERDANTURF BATTLE TENT,\n" .string "POKéMON are required to think and\l" .string "battle by themselves.\p" @@ -375,7 +375,7 @@ VerdanturfTown_BattleTentLobby_Text_ExplainBasicRules: @ 82C62B1 .string "depending on their nature.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ExplainNatureRules: @ 82C636D +VerdanturfTown_BattleTentLobby_Text_ExplainNatureRules: .string "Depending on its nature, a POKéMON\n" .string "may prefer to attack no matter what.\p" .string "Another POKéMON may prefer to protect\n" @@ -389,7 +389,7 @@ VerdanturfTown_BattleTentLobby_Text_ExplainNatureRules: @ 82C636D .string "it has trouble using.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ExplainMoveRules: @ 82C64BA +VerdanturfTown_BattleTentLobby_Text_ExplainMoveRules: .string "There are offensive moves that inflict\n" .string "direct damage on the foe.\p" .string "There are defensive moves that are\n" @@ -403,7 +403,7 @@ VerdanturfTown_BattleTentLobby_Text_ExplainMoveRules: @ 82C64BA .string "these three categories.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ExplainUnderpoweredRules: @ 82C6612 +VerdanturfTown_BattleTentLobby_Text_ExplainUnderpoweredRules: .string "When not under command by its TRAINER,\n" .string "a POKéMON may be unable to effectively\l" .string "use certain moves.\p" @@ -414,20 +414,20 @@ VerdanturfTown_BattleTentLobby_Text_ExplainUnderpoweredRules: @ 82C6612 .string "be unable to live up to its potential.$" @ Unused -VerdanturfTown_BattleTentLobby_Text_ExplainWhenInDangerRules: @ 82C671E +VerdanturfTown_BattleTentLobby_Text_ExplainWhenInDangerRules: .string "Depending on its nature, a POKéMON may\n" .string "start using moves that don't match its\l" .string "nature when it is in trouble.\p" .string "If a POKéMON begins behaving oddly\n" .string "in a pinch, watch it carefully.$" -BattleTentLobby_Text_ExplainLevelRules: @ 82C67CD +BattleTentLobby_Text_ExplainLevelRules: .string "At this BATTLE TENT, the levels of\n" .string "your opponents will be adjusted to\l" .string "match the levels of your POKéMON.\p" .string "However, no TRAINER you face will\n" .string "have any POKéMON below Level 30.$" -VerdanturfTown_BattleTentLobby_Text_RulesAreListed: @ 82C6878 +VerdanturfTown_BattleTentLobby_Text_RulesAreListed: .string "The VERDANTURF BATTLE TENT\n" .string "rules are listed.$" diff --git a/data/text/berries.inc b/data/text/berries.inc index 152690e201ff..af4f0adbc39e 100644 --- a/data/text/berries.inc +++ b/data/text/berries.inc @@ -1,16 +1,16 @@ -PetalburgCity_Gym_Text_GiveEnigmaBerry: @ 82A6D3D +PetalburgCity_Gym_Text_GiveEnigmaBerry: .string "DAD: Hi, {PLAYER}!\p" .string "I just received a very rare BERRY.\n" .string "I'd like you to have it.$" -Route104_Text_PlantBerriesInSoilTakeThis: @ 82A6D86 +Route104_Text_PlantBerriesInSoilTakeThis: .string "If you see BERRIES growing in loamy\n" .string "soil, feel free to take them.\p" .string "But make sure you plant a BERRY in the\n" .string "same spot. That's common courtesy.\p" .string "Here, I'll share this with you.$" -Route104_Text_TrainersOftenMakeMonHoldBerries: @ 82A6E32 +Route104_Text_TrainersOftenMakeMonHoldBerries: .string "The way you look, you must be a\n" .string "TRAINER, no?\p" .string "TRAINERS often make POKéMON hold\n" @@ -18,139 +18,139 @@ Route104_Text_TrainersOftenMakeMonHoldBerries: @ 82A6E32 .string "It's up to you whether to grow BERRIES\n" .string "or use them.$" -Route111_Text_WateredPlantsEveryDayTakeBerry: @ 82A6EBD +Route111_Text_WateredPlantsEveryDayTakeBerry: .string "I watered the plants every day.\n" .string "They grew lots of flowers.\p" .string "And they gave me lots of BERRIES, too.\p" .string "Here you go!\n" .string "You can have it!$" -Route111_Text_GoingToTryToMakeDifferentColorBerries: @ 82A6F3D +Route111_Text_GoingToTryToMakeDifferentColorBerries: .string "I'm going to try really hard and make\n" .string "BERRIES in different colors.\p" .string "I hope you try hard, too!$" -Route111_Text_WhatColorBerriesToLookForToday: @ 82A6F9A +Route111_Text_WhatColorBerriesToLookForToday: .string "I wonder what color BERRIES I'll look\n" .string "for today?$" -Route114_Text_LoveUsingBerryCrushShareBerry: @ 82A6FCB +Route114_Text_LoveUsingBerryCrushShareBerry: .string "I love using the BERRY CRUSH machine,\n" .string "so I'm collecting BERRIES.\p" .string "I'll share one with you, if you'd like.$" -Route114_Text_TryBerryCrushWithFriends: @ 82A7034 +Route114_Text_TryBerryCrushWithFriends: .string "You should try the BERRY CRUSH\n" .string "machine with your friends.$" -Route114_Text_FunToThinkAboutBerries: @ 82A706E +Route114_Text_FunToThinkAboutBerries: .string "Which BERRY should be planted?\n" .string "Should you use or hoard BERRIES?\p" .string "It's fun to think about.$" -Route120_Text_BerriesExpressionOfLoveIsntIt: @ 82A70C7 +Route120_Text_BerriesExpressionOfLoveIsntIt: .string "BERRIES grow by soaking up sunlight.\p" .string "We help the BERRIES grow by watering\n" .string "them regularly.\p" .string "It's an expression of love, isn't it?$" -Route120_Text_YesYouUnderstand: @ 82A7147 +Route120_Text_YesYouUnderstand: .string "Yes, yes.\n" .string "You understand what I mean.\p" .string "You should take this.$" -Route120_Text_MakeYourOwnImpressions: @ 82A7183 +Route120_Text_MakeYourOwnImpressions: .string "Oh… But it is important to make your\n" .string "own impressions, I guess…\p" .string "You can have this.$" -Route120_Text_BerryIsRareRaiseItWithCare: @ 82A71D5 +Route120_Text_BerryIsRareRaiseItWithCare: .string "I think that BERRY is rare.\n" .string "I hope you raise it with loving care.$" -Route120_Text_IllGetMoreBerriesFromBerryMaster: @ 82A7217 +Route120_Text_IllGetMoreBerriesFromBerryMaster: .string "I'll get more BERRIES from\n" .string "the BERRY MASTER.$" -LilycoveCity_Text_BerrySuitsYou: @ 82A7244 +LilycoveCity_Text_BerrySuitsYou: .string "When it gets right down to it…\p" .string "The same way suits suit me perfectly,\n" .string "a crisp breeze suits the sea.\p" .string "And you, a BERRY suits you to a “T”…\p" .string "Why should that be so?$" -LilycoveCity_Text_BecauseYoureTrainer: @ 82A72E3 +LilycoveCity_Text_BecauseYoureTrainer: .string "When it gets right down to it…\p" .string "It's because you're a TRAINER!$" -LilycoveCity_Text_PokeblocksSuitPokemon: @ 82A7321 +LilycoveCity_Text_PokeblocksSuitPokemon: .string "When it gets right down to it…\p" .string "The way dignified simplicity suits me,\n" .string "{POKEBLOCK}S perfectly suit POKéMON.$" -Route123_BerryMastersHouse_Text_YoureDeservingOfBerry: @ 82A7386 +Route123_BerryMastersHouse_Text_YoureDeservingOfBerry: .string "You may call me the BERRY MASTER.\p" .string "I dream of filling the world with\n" .string "beautiful flowers, so I raise BERRIES\l" .string "and hand them out to everyone.\p" .string "You're deserving of one!$" -Route123_BerryMastersHouse_Text_WhyBeStingyTakeAnother: @ 82A7428 +Route123_BerryMastersHouse_Text_WhyBeStingyTakeAnother: .string "Why be stingy?\n" .string "Take another!$" -Route123_BerryMastersHouse_Text_VisitPrettyPetalFlowerShop: @ 82A7445 +Route123_BerryMastersHouse_Text_VisitPrettyPetalFlowerShop: .string "Be sure to visit the PRETTY PETAL\n" .string "flower shop near RUSTBORO.\p" .string "Let flowers fill the world!$" -Route123_BerryMastersHouse_Text_DoneForToday: @ 82A749E +Route123_BerryMastersHouse_Text_DoneForToday: .string "I'm done for today.\n" .string "Come again another day.\p" .string "Let flowers fill the world!$" -Route123_BerryMastersHouse_Text_HeardAGoodSayingLately: @ 82A74E6 +Route123_BerryMastersHouse_Text_HeardAGoodSayingLately: .string "The way my husband grows BERRIES,\n" .string "oh, he's the best in the world.\p" .string "He makes me proud, that he does.\p" .string "Incidentally, child, have you heard\n" .string "a good saying lately?$" -Route123_BerryMastersHouse_Text_InspirationalTakeThis: @ 82A7583 +Route123_BerryMastersHouse_Text_InspirationalTakeThis: .string "Ah! What a remarkable saying!\n" .string "Inspirational, it is!\p" .string "I want you to have this.$" -Route123_BerryMastersHouse_Text_GoodSayingTakeThis: @ 82A75D0 +Route123_BerryMastersHouse_Text_GoodSayingTakeThis: .string "Oh! A good saying it is.\n" .string "You're quite remarkable.\p" .string "I want you to have this.$" -Route123_BerryMastersHouse_Text_JoyNeverGoesOutOfMyLife: @ 82A761B +Route123_BerryMastersHouse_Text_JoyNeverGoesOutOfMyLife: .string "Our four grandchildren should become\n" .string "more accomplished than my husband.\p" .string "Joy never goes out of my life!$" -Route123_BerryMastersHouse_Text_Ah: @ 82A7682 +Route123_BerryMastersHouse_Text_Ah: .string "Ah…$" -Route104_PrettyPetalFlowerShop_Text_ThisIsPrettyPetalFlowerShop: @ 82A7686 +Route104_PrettyPetalFlowerShop_Text_ThisIsPrettyPetalFlowerShop: .string "Hello!\p" .string "This is the PRETTY PETAL flower shop.\n" .string "Spreading flowers all over the world!$" -Route104_PrettyPetalFlowerShop_Text_LearnAboutBerries: @ 82A76D9 +Route104_PrettyPetalFlowerShop_Text_LearnAboutBerries: .string "{PLAYER}{KUN}, would you like to learn about\n" .string "BERRIES?$" -Route104_PrettyPetalFlowerShop_Text_IntroLearnAboutBerries: @ 82A7706 +Route104_PrettyPetalFlowerShop_Text_IntroLearnAboutBerries: .string "Your name is?\p" .string "{PLAYER}{KUN}.\n" .string "That's a nice name.\p" .string "{PLAYER}{KUN}, would you like to learn about\n" .string "BERRIES?$" -Route104_PrettyPetalFlowerShop_Text_BerriesExplanation: @ 82A775B +Route104_PrettyPetalFlowerShop_Text_BerriesExplanation: .string "BERRIES grow on trees that thrive\n" .string "only in soft, loamy soil.\p" .string "If you take some BERRIES, be sure to\n" @@ -164,18 +164,18 @@ Route104_PrettyPetalFlowerShop_Text_BerriesExplanation: @ 82A775B .string "Please help me, {PLAYER}{KUN}. Plant BERRIES\n" .string "and bring more flowers into the world.$" -Route104_PrettyPetalFlowerShop_Text_FlowersBringHappiness: @ 82A78DF +Route104_PrettyPetalFlowerShop_Text_FlowersBringHappiness: .string "Flowers bring so much happiness to\n" .string "people, don't they?$" -Route104_PrettyPetalFlowerShop_Text_YouCanHaveThis: @ 82A7916 +Route104_PrettyPetalFlowerShop_Text_YouCanHaveThis: .string "Hello!\p" .string "The more attention you give to flowers,\n" .string "the more beautifully they bloom.\p" .string "You'll like tending flowers. I'm sure\n" .string "of it. You can have this.$" -Route104_PrettyPetalFlowerShop_Text_WailmerPailExplanation: @ 82A79A6 +Route104_PrettyPetalFlowerShop_Text_WailmerPailExplanation: .string "While BERRY plants are growing,\n" .string "water them with the WAILMER PAIL.\p" .string "Oh, another thing.\p" @@ -185,13 +185,13 @@ Route104_PrettyPetalFlowerShop_Text_WailmerPailExplanation: @ 82A79A6 .string "Isn't that awesome?\n" .string "It's like they have the will to live.$" -Route104_PrettyPetalFlowerShop_Text_ImGrowingFlowers: @ 82A7A98 +Route104_PrettyPetalFlowerShop_Text_ImGrowingFlowers: .string "I'm trying to be like my big sisters.\n" .string "I'm growing flowers, too!\p" .string "Here you go!\n" .string "It's for you!$" -Route104_PrettyPetalFlowerShop_Text_MachineMixesBerries: @ 82A7AF3 +Route104_PrettyPetalFlowerShop_Text_MachineMixesBerries: .string "You can plant a BERRY and grow it big,\n" .string "or you can make a POKéMON hold it.\p" .string "But now they have a machine that mixes\n" @@ -199,7 +199,7 @@ Route104_PrettyPetalFlowerShop_Text_MachineMixesBerries: @ 82A7AF3 .string "for POKéMON.\p" .string "I want some candy, too.$" -SootopolisCity_Text_NameIsKiriHaveOneOfThese: @ 82A7BB0 +SootopolisCity_Text_NameIsKiriHaveOneOfThese: .string "Hi, what's your name?\p" .string "… … … … … … … … …\n" .string "Okay. That's nice!\p" @@ -209,26 +209,26 @@ SootopolisCity_Text_NameIsKiriHaveOneOfThese: @ 82A7BB0 .string "That's what they wished.\p" .string "You can have one of these.$" -SootopolisCity_Text_GiveYouThisBerryToo: @ 82A7C7C +SootopolisCity_Text_GiveYouThisBerryToo: .string "KIRI will give you this BERRY, too!\n" .string "I really like it lots!$" -SootopolisCity_Text_WhatKindOfWishInYourName: @ 82A7CB7 +SootopolisCity_Text_WhatKindOfWishInYourName: .string "I wonder what kind of wish is included\n" .string "in your name.$" -SootopolisCity_Text_LikeSeasonBornIn: @ 82A7CEC +SootopolisCity_Text_LikeSeasonBornIn: .string "Spring, summer, autumn, and winter.\p" .string "If you're born in springtime, do you like\n" .string "the spring, and if you're born in the\l" .string "summer, do you like the summer?$" -SootopolisCity_Text_ThenILoveAutumn: @ 82A7D80 +SootopolisCity_Text_ThenILoveAutumn: .string "Then KIRI was born in the autumn,\n" .string "so I love the autumn!\p" .string "Which season do you like?$" -SootopolisCity_Text_OhDoesntMatter: @ 82A7DD2 +SootopolisCity_Text_OhDoesntMatter: .string "Oh…\n" .string "It doesn't matter…\p" .string "There's so much that I want to know…$" diff --git a/data/text/birch_speech.inc b/data/text/birch_speech.inc index abdbc89ef10d..7a9ea6a61185 100644 --- a/data/text/birch_speech.inc +++ b/data/text/birch_speech.inc @@ -1,4 +1,4 @@ -gText_Birch_Welcome:: @ 82C897B +gText_Birch_Welcome:: .string "Hi! Sorry to keep you waiting!\p" .string "Welcome to the world of POKéMON!\p" .string "My name is BIRCH.\p" @@ -6,12 +6,12 @@ gText_Birch_Welcome:: @ 82C897B .string "PROFESSOR.\p" .string "$" -gText_Birch_Pokemon:: @ 82C89FB +gText_Birch_Pokemon:: .string "This is what we call a “POKéMON.”\p" .string "\n" .string "$" -gText_Birch_MainSpeech:: @ 82C8A1F +gText_Birch_MainSpeech:: .string "This world is widely inhabited by\n" .string "creatures known as POKéMON.\p" .string "We humans live alongside POKéMON,\n" @@ -28,28 +28,28 @@ gText_Birch_MainSpeech:: @ 82C8A1F .string "That's what I do.\p" .string "$" -gText_Birch_AndYouAre:: @ 82C8BD0 +gText_Birch_AndYouAre:: .string "And you are?$" -gText_Birch_BoyOrGirl:: @ 82C8BDD +gText_Birch_BoyOrGirl:: .string "Are you a boy?\n" .string "Or are you a girl?$" -gText_Birch_WhatsYourName:: @ 82C8BFF +gText_Birch_WhatsYourName:: .string "All right.\n" .string "What's your name?$" -gText_Birch_SoItsPlayer:: @ 82C8C1C +gText_Birch_SoItsPlayer:: .string "So it's {PLAYER}{KUN}?$" -gText_Birch_YourePlayer:: @ 82C8C2A +gText_Birch_YourePlayer:: .string "Ah, okay!\p" .string "You're {PLAYER}{KUN} who's moving to my\n" .string "hometown of LITTLEROOT.\l" .string "I get it now!\p" .string "$" -gText_Birch_AreYouReady:: @ 82C8C7A +gText_Birch_AreYouReady:: .string "All right, are you ready?\p" .string "Your very own adventure is about\n" .string "to unfold.\p" diff --git a/data/text/blend_master.inc b/data/text/blend_master.inc index 31315bbd55d8..462d9c496c62 100644 --- a/data/text/blend_master.inc +++ b/data/text/blend_master.inc @@ -1,34 +1,34 @@ -BerryBlender_Text_BlendWithTheBlendMaster: @ 82C427C +BerryBlender_Text_BlendWithTheBlendMaster: .string "BLEND MASTER: Indeed I am!\n" .string "The BLEND MASTER am I!\p" .string "Blend with me, and you shall witness\n" .string "the mastery I bring to blending!$" -BerryBlender_Text_SeeMyMasteryInAction: @ 82C42F4 +BerryBlender_Text_SeeMyMasteryInAction: .string "BLEND MASTER: Hmmm! So, you wish to\n" .string "see my mastery in action?$" -BerryBlender_Text_TooBusyNowIsee: @ 82C4332 +BerryBlender_Text_TooBusyNowIsee: .string "Hmmm!\p" .string "So, you are too busy now, I see!\p" .string "But fear not!\n" .string "I shall be here all day!\l" .string "Hurry back from your errand!$" -BerryBlender_Text_BlendMasterNoBerries: @ 82C439D +BerryBlender_Text_BlendMasterNoBerries: .string "Hmmm!\p" .string "You haven't got a single BERRY!\p" .string "I shall be here all day!\n" .string "Hurry back with some BERRIES!$" -BerryBlender_Text_BlendMasterKnowHowToMakePokeblocks: @ 82C43FA +BerryBlender_Text_BlendMasterKnowHowToMakePokeblocks: .string "Of course!\n" .string "Of course!\p" .string "Incidentally…\n" .string "You do know how to blend {POKEBLOCK}S\l" .string "from BERRIES?$" -BerryBlender_Text_BlendMasterExplainBerryBlending: @ 82C444C +BerryBlender_Text_BlendMasterExplainBerryBlending: .string "Hmmm!\p" .string "Ah, but it is a simple process!\p" .string "When the BLENDER's arrow comes to\n" @@ -37,40 +37,40 @@ BerryBlender_Text_BlendMasterExplainBerryBlending: @ 82C444C .string "When you see how precisely I press\n" .string "the A Button, you will understand.$" -BerryBlender_Text_BlendMasterLetsBerryBlender: @ 82C451B +BerryBlender_Text_BlendMasterLetsBerryBlender: .string "Fine!\p" .string "Let's get started, then!\p" .string "All together with the BLEND MASTER,\n" .string "let's BERRY BLENDER!$" -BerryBlender_Text_BlendMasterNoPokeblockCase: @ 82C4573 +BerryBlender_Text_BlendMasterNoPokeblockCase: .string "Hmmm!\p" .string "You don't appear to have gotten\n" .string "the {POKEBLOCK} CASE!\p" .string "I shall be here all day!\n" .string "Obtain the {POKEBLOCK} CASE and hurry back!$" -BerryBlender_Text_BlendMasterPokeblockCaseFull: @ 82C45E8 +BerryBlender_Text_BlendMasterPokeblockCaseFull: .string "Hmmm!\p" .string "Your {POKEBLOCK} CASE appears to be full!\p" .string "I shall be here all day!\n" .string "Use some {POKEBLOCK}S and hurry back!$" -BerryBlender_Text_WhoaAwesome: @ 82C464B +BerryBlender_Text_WhoaAwesome: .string "Whoa!\n" .string "Awesome!$" -BerryBlender_Text_WickedlyFast: @ 82C465A +BerryBlender_Text_WickedlyFast: .string "Wickedly fast!$" -BerryBlender_Text_WhatAnExpert: @ 82C4669 +BerryBlender_Text_WhatAnExpert: .string "What an expert!$" -BerryBlender_Text_MadeAmazingPokeblocksWithMaster: @ 82C4679 +BerryBlender_Text_MadeAmazingPokeblocksWithMaster: .string "When I blended with the MASTER,\n" .string "we made amazing {POKEBLOCK}S!$" -BerryBlender_Text_QualitiesOfBlendMaster: @ 82C46B1 +BerryBlender_Text_QualitiesOfBlendMaster: .string "Eyes that track the arrow with\n" .string "machinelike intensity…\p" .string "A hand that taps the A Button\n" @@ -78,7 +78,7 @@ BerryBlender_Text_QualitiesOfBlendMaster: @ 82C46B1 .string "Possessing these qualities makes\n" .string "the BLEND MASTER truly great.$" -BerryBlender_Text_MasterWorksOnSkillsInMountains: @ 82C4763 +BerryBlender_Text_MasterWorksOnSkillsInMountains: .string "The BLEND MASTER's supposed to work\n" .string "on his skills deep in the mountains.\p" .string "Sometimes, he comes to LILYCOVE\n" diff --git a/data/text/braille.inc b/data/text/braille.inc index 57b77e393011..69f0a81e3851 100644 --- a/data/text/braille.inc +++ b/data/text/braille.inc @@ -1,111 +1,111 @@ -Underwater_SealedChamber_Braille_GoUpHere: @ 82A6B15 +Underwater_SealedChamber_Braille_GoUpHere: brailleformat 4, 6, 26, 13, 7, 9 .braille "GO UP HERE.$" -SealedChamber_OuterRoom_Braille_ABC: @ 82A6B27 +SealedChamber_OuterRoom_Braille_ABC: brailleformat 7, 6, 21, 13, 10, 9 .braille "ABC$" -SealedChamber_OuterRoom_Braille_GHI: @ 82A6B31 +SealedChamber_OuterRoom_Braille_GHI: brailleformat 7, 6, 21, 13, 10, 9 .braille "GHI$" -SealedChamber_OuterRoom_Braille_MNO: @ 82A6B3B +SealedChamber_OuterRoom_Braille_MNO: brailleformat 7, 6, 21, 13, 10, 9 .braille "MNO$" -SealedChamber_OuterRoom_Braille_TUV: @ 82A6B45 +SealedChamber_OuterRoom_Braille_TUV: brailleformat 7, 6, 21, 13, 10, 9 .braille "TUV$" -SealedChamber_OuterRoom_Braille_DEF: @ 82A6B4F +SealedChamber_OuterRoom_Braille_DEF: brailleformat 7, 6, 21, 13, 10, 9 .braille "DEF$" -SealedChamber_OuterRoom_Braille_JKL: @ 82A6B59 +SealedChamber_OuterRoom_Braille_JKL: brailleformat 7, 6, 21, 13, 10, 9 .braille "JKL$" -SealedChamber_OuterRoom_Braille_PQRS: @ 82A6B63 +SealedChamber_OuterRoom_Braille_PQRS: brailleformat 7, 6, 21, 13, 10, 9 .braille "PQRS$" -SealedChamber_OuterRoom_Braille_Period: @ 82A6B6E +SealedChamber_OuterRoom_Braille_Period: brailleformat 9, 6, 19, 13, 12, 9 .braille ".$" -SealedChamber_OuterRoom_Braille_WXYZ: @ 82A6B76 +SealedChamber_OuterRoom_Braille_WXYZ: brailleformat 7, 6, 21, 13, 10, 9 .braille "WXYZ$" -SealedChamber_OuterRoom_Braille_Comma: @ 82A6B81 +SealedChamber_OuterRoom_Braille_Comma: brailleformat 9, 6, 19, 13, 12, 9 .braille ",$" -SealedChamber_OuterRoom_Braille_DigHere: @ 82A6B89 +SealedChamber_OuterRoom_Braille_DigHere: brailleformat 7, 4, 23, 15, 10, 7 .braille "DIG HERE.$" -SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth: @ 82A6B99 +SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth: brailleformat 0, 0, 29, 19, 3, 3 .braille "FIRST COMES\n" .braille "WAILORD.\n" .braille "LAST COMES\n" .braille "RELICANTH.$" -SealedChamber_InnerRoom_Braille_InThisCaveWeHaveLived: @ 82A6BCA +SealedChamber_InnerRoom_Braille_InThisCaveWeHaveLived: brailleformat 2, 0, 26, 19, 5, 3 .braille "IN THIS\n" .braille "CAVE WE\n" .braille "HAVE\n" .braille "LIVED.$" -SealedChamber_InnerRoom_Braille_WeOweAllToThePokemon: @ 82A6BEC +SealedChamber_InnerRoom_Braille_WeOweAllToThePokemon: brailleformat 7, 2, 23, 17, 10, 5 .braille "WE OWE ALL\n" .braille "TO THE\n" .braille "POKEMON.$" -SealedChamber_InnerRoom_Braille_ButWeSealedThePokemonAway: @ 82A6C0D +SealedChamber_InnerRoom_Braille_ButWeSealedThePokemonAway: brailleformat 3, 0, 25, 19, 6, 3 .braille "BUT, WE\n" .braille "SEALED THE\n" .braille "POKEMON\n" .braille "AWAY.$" -SealedChamber_InnerRoom_Braille_WeFearedIt: @ 82A6C34 +SealedChamber_InnerRoom_Braille_WeFearedIt: brailleformat 5, 6, 25, 13, 8, 9 .braille "WE FEARED IT.$" -SealedChamber_InnerRoom_Braille_ThoseWithCourageHope: @ 82A6C48 +SealedChamber_InnerRoom_Braille_ThoseWithCourageHope: brailleformat 6, 0, 24, 19, 9, 3 .braille "THOSE WITH\n" .braille "COURAGE,\n" .braille "THOSE WITH\n" .braille "HOPE.$" -SealedChamber_InnerRoom_Braille_OpenDoorEternalPokemonWaits: @ 82A6C73 +SealedChamber_InnerRoom_Braille_OpenDoorEternalPokemonWaits: brailleformat 3, 2, 27, 17, 6, 5 .braille "OPEN A DOOR.\n" .braille "AN ETERNAL\n" .braille "POKEMON\n" .braille "WAITS.$" -DesertRuins_Braille_UseRockSmash: @ 82A6CA0 +DesertRuins_Braille_UseRockSmash: brailleformat 1, 0, 27, 19, 4, 3 .braille "LEFT, LEFT,\n" .braille "DOWN, DOWN.\n" .braille "THEN, USE\n" .braille "ROCK SMASH.$" -IslandCave_Braille_RunLapAroundWall: @ 82A6CD4 +IslandCave_Braille_RunLapAroundWall: brailleformat 5, 0, 25, 19, 8, 3 .braille "STAY CLOSE\n" .braille "TO THE WALL.\n" .braille "RUN AROUND\n" .braille "ONE LAP.$" -AncientTomb_Braille_ShineInTheMiddle: @ 82A6D06 +AncientTomb_Braille_ShineInTheMiddle: brailleformat 3, 0, 25, 19, 6, 3 .braille "THOSE WHO\n" .braille "INHERIT OUR\n" diff --git a/data/text/cable_club.inc b/data/text/cable_club.inc index b4f656a00470..fd760e1cdb9d 100644 --- a/data/text/cable_club.inc +++ b/data/text/cable_club.inc @@ -1,167 +1,167 @@ -CableClub_Text_WelcomeWhichCableClubService: @ 8277EA4 +CableClub_Text_WelcomeWhichCableClubService: .string "Welcome to the POKéMON CABLE\n" .string "CLUB.\p" .string "Which of our services do you wish\n" .string "to use?$" -CableClub_Text_WhichService: @ 8277EF1 +CableClub_Text_WhichService: .string "Which of our services do you wish\n" .string "to use?$" -CableClub_Text_TradeUsingLinkCable:: @ 8277F1B +CableClub_Text_TradeUsingLinkCable:: .string "Trade POKéMON with another player\n" .string "using a GBA Game Link cable.$" -CableClub_Text_BattleUsingLinkCable:: @ 8277F5A +CableClub_Text_BattleUsingLinkCable:: .string "You may battle another TRAINER\n" .string "using a GBA Game Link cable.$" -CableClub_Text_RecordCornerUsingLinkCable:: @ 8277F96 +CableClub_Text_RecordCornerUsingLinkCable:: .string "You can use the RECORD CORNER with\n" .string "others using a GBA Game Link cable.$" @ Unused -CableClub_Text_CloseThisMenu: @ 8277FDD +CableClub_Text_CloseThisMenu: .string "Close this menu.$" -CableClub_Text_NeedTwoMonsForDoubleBattle: @ 8277FEE +CableClub_Text_NeedTwoMonsForDoubleBattle: .string "For a DOUBLE BATTLE, you must\n" .string "have at least two POKéMON.$" -CableClub_Text_NeedTwoMonsToTrade: @ 8278027 +CableClub_Text_NeedTwoMonsToTrade: .string "For trading, you must have at\n" .string "least two POKéMON with you.$" -CableClub_Text_CantTradeEnigmaBerry: @ 8278061 +CableClub_Text_CantTradeEnigmaBerry: .string "A POKéMON holding the {STR_VAR_1}\n" .string "BERRY can't be traded.$" -gText_PleaseWaitForLink:: @ 8278091 +gText_PleaseWaitForLink:: .string "Please wait.\n" .string "… … B Button: Cancel$" -gText_ConfirmLinkWhenPlayersReady:: @ 82780B3 +gText_ConfirmLinkWhenPlayersReady:: .string "When all players are ready…\n" .string "A Button: Confirm\l" .string "B Button: Cancel$" -gText_ConfirmStartLinkWithXPlayers:: @ 82780F2 +gText_ConfirmStartLinkWithXPlayers:: .string "Start link with {STR_VAR_1} players.\n" .string "A Button: Confirm\l" .string "B Button: Cancel$" -gText_AwaitingLinkup:: @ 8278131 +gText_AwaitingLinkup:: .string "Awaiting linkup…\n" .string "… … B Button: Cancel$" @ Unused -CableClub_Text_OkayToSaveProgress:: @ 8278157 +CableClub_Text_OkayToSaveProgress:: .string "Your progress must be saved before\n" .string "linking. Is it okay to save?$" -CableClub_Text_PleaseEnter: @ 8278197 +CableClub_Text_PleaseEnter: .string "Please enter.$" -CableClub_Text_DirectYouToYourRoom: @ 82781A5 +CableClub_Text_DirectYouToYourRoom: .string "I'll direct you to your room now.$" -Text_SomeoneIsNotReadyToLink: @ 82781C7 +Text_SomeoneIsNotReadyToLink: .string "Someone is not ready to link.\p" .string "Please come back after everyone\n" .string "has made preparations.$" -Text_LinkErrorPleaseReset: @ 827821C +Text_LinkErrorPleaseReset: .string "Sorry, we have a link error…\n" .string "Please reset and try again.$" -Text_PlayersMadeDifferentSelections: @ 8278255 +Text_PlayersMadeDifferentSelections: .string "The link partners appear to have\n" .string "made different selections.$" -CableClub_Text_PleaseVisitAgain: @ 8278291 +CableClub_Text_PleaseVisitAgain: .string "Please do visit again.$" -CableClub_Text_IncorrectNumberOfParticipants: @ 82782A8 +CableClub_Text_IncorrectNumberOfParticipants: .string "The number of participants is\n" .string "incorrect.$" -CableClub_Text_CantSingleBattleWithXPlayers: @ 82782D1 +CableClub_Text_CantSingleBattleWithXPlayers: .string "The SINGLE BATTLE Mode can't be\n" .string "played by {STR_VAR_1} players.$" -CableClub_Text_CantDoubleBattleWithXPlayers: @ 8278307 +CableClub_Text_CantDoubleBattleWithXPlayers: .string "The DOUBLE BATTLE Mode can't be\n" .string "played by {STR_VAR_1} players.$" -CableClub_Text_NeedFourPlayers: @ 827833D +CableClub_Text_NeedFourPlayers: .string "There must be four players to play\n" .string "this Battle Mode.$" -CableClub_Text_PleaseConfirmNumberAndRestart: @ 8278372 +CableClub_Text_PleaseConfirmNumberAndRestart: .string "Please confirm the number of\n" .string "players and start again.$" -Text_TerminateLinkConfirmation: @ 82783A8 +Text_TerminateLinkConfirmation: .string "The link will be terminated if you\n" .string "leave the room. Is that okay?$" -Text_TerminateLinkPleaseWait: @ 82783E9 +Text_TerminateLinkPleaseWait: .string "Terminating link…\n" .string "You will be escorted out of\l" .string "the room. Please wait.$" -CableClub_Text_TooBusyToNotice: @ 827842E +CableClub_Text_TooBusyToNotice: .string "This TRAINER is too busy to\n" .string "notice…$" -CableClub_Text_GotToLookAtTrainerCard: @ 8278452 +CableClub_Text_GotToLookAtTrainerCard: .string "Score! Got to look at {STR_VAR_1}'s\n" .string "TRAINER CARD!$" -CableClub_Text_GotToLookAtColoredTrainerCard: @ 827847B +CableClub_Text_GotToLookAtColoredTrainerCard: .string "Score! Got to look at {STR_VAR_1}'s\n" .string "TRAINER CARD!\p" .string "It's a {STR_VAR_2} card!$" -BattleColosseum_2P_Text_TakePlaceStartBattle: @ 82784B4 +BattleColosseum_2P_Text_TakePlaceStartBattle: .string "Please take your place and start\n" .string "your battle.$" -TradeCenter_Text_TakeSeatStartTrade: @ 82784E2 +TradeCenter_Text_TakeSeatStartTrade: .string "Please take your seat and start\n" .string "your trade.$" -RecordCorner_Text_ThanksForComing: @ 827850E +RecordCorner_Text_ThanksForComing: .string "Thanks for coming.$" -CableClub_Text_TrainerCardDataOverwritten: @ 8278521 +CableClub_Text_TrainerCardDataOverwritten: .string "The TRAINER CARD data will\n" .string "be overwritten.$" -CableClub_Text_HopeToSeeYouAgain: @ 827854C +CableClub_Text_HopeToSeeYouAgain: .string "I hope to see you again!$" -CableClub_Text_NotSetUpForFarAwayRegion: @ 8278565 +CableClub_Text_NotSetUpForFarAwayRegion: .string "I'm awfully sorry.\p" .string "We're not set up to conduct trades\n" .string "with TRAINERS far away in another\l" .string "region yet…$" -CableClub_Text_OtherTrainerNotReady: @ 82785C9 +CableClub_Text_OtherTrainerNotReady: .string "The other TRAINER is not ready.$" -CableClub_Text_YouHaveAMonThatCantBeTaken: @ 82785E9 +CableClub_Text_YouHaveAMonThatCantBeTaken: .string "You have at least one POKéMON\n" .string "that can't be taken.$" -RecordCorner_Text_TakeSeatAndWait: @ 827861C +RecordCorner_Text_TakeSeatAndWait: .string "Please take your seat and wait.$" -RecordCorner_Text_PlayerSentOverOneX: @ 827863C +RecordCorner_Text_PlayerSentOverOneX: .string "{STR_VAR_1} sent over one\n" .string "{STR_VAR_2}.$" -CableClub_Text_CantMixWithJapaneseGame: @ 8278651 +CableClub_Text_CantMixWithJapaneseGame: .string "Sorry, there is a transmission error.\p" .string "You may not mix records with \n" .string "Japanese Ruby or Sapphire games.\p" @@ -169,67 +169,67 @@ CableClub_Text_CantMixWithJapaneseGame: @ 8278651 .string "Japanese Emerald and overseas Ruby\l" .string "or Sapphire games at the same time.$" -CableClub_Text_AdapterNotConnected: @ 827871F +CableClub_Text_AdapterNotConnected: .string "The Wireless Adapter is not\n" .string "connected properly.$" -CableClub_Text_ParticipantsStepUpToCounter: @ 827874F +CableClub_Text_ParticipantsStepUpToCounter: .string "Participants are asked to step up\n" .string "to the reception counter.$" @ Unused -CableClub_Text_Hello: @ 827878B +CableClub_Text_Hello: .string "Hello!$" @ Unused -CableClub_Text_PleaseWait: @ 8278792 +CableClub_Text_PleaseWait: .string "Please wait.$" -CableClub_Text_YouMayTradeHere:: @ 827879F +CableClub_Text_YouMayTradeHere:: .string "You may trade your POKéMON here\n" .string "with another TRAINER.$" -CableClub_Text_YouMayBattleHere:: @ 82787D5 +CableClub_Text_YouMayBattleHere:: .string "You may battle with your friends\n" .string "here.$" -CableClub_Text_CanMakeBerryPowder:: @ 82787FC +CableClub_Text_CanMakeBerryPowder:: .string "Two to five TRAINERS can make\n" .string "BERRY POWDER together.$" -CableClub_Text_CanMixRecords:: @ 8278831 +CableClub_Text_CanMixRecords:: .string "The records of two to four players\n" .string "can be mixed together.$" @ Unused -CableClub_Text_GuideToVariousServices: @ 827886B +CableClub_Text_GuideToVariousServices: .string "A guide to the WIRELESS CLUB's\n" .string "various services.$" -CableClub_Text_CancelSelectedItem:: @ 827889C +CableClub_Text_CancelSelectedItem:: .string "Cancels the selected MENU item.$" @ Unused -CableClub_Text_WhichBattleMode: @ 82788BC +CableClub_Text_WhichBattleMode: .string "Which battle mode would you like?$" @ Unused -CableClub_Text_ReturnsToPreviousStep: @ 82788DE +CableClub_Text_ReturnsToPreviousStep: .string "Returns to the previous step.$" -CableClub_Text_NeedBerryForBerryCrush: @ 82788FC +CableClub_Text_NeedBerryForBerryCrush: .string "To use the BERRY CRUSH service,\n" .string "you must have at least one BERRY.$" -CableClub_Text_NeedTwoMonsForUnionRoom: @ 827893E +CableClub_Text_NeedTwoMonsForUnionRoom: .string "To enter the UNION ROOM, you must\n" .string "have at least two POKéMON.$" -CableClub_Text_NoEnigmaBerryInUnionRoom: @ 827897B +CableClub_Text_NoEnigmaBerryInUnionRoom: .string "No POKéMON holding the {STR_VAR_1}\n" .string "BERRY may enter the UNION ROOM.$" -CableClub_Text_UnionRoomAdapterNotConnected: @ 82789B5 +CableClub_Text_UnionRoomAdapterNotConnected: .string "This is the POKéMON WIRELESS CLUB\n" .string "UNION ROOM.\p" .string "Unfortunately, your Wireless\n" @@ -237,21 +237,21 @@ CableClub_Text_UnionRoomAdapterNotConnected: @ 82789B5 .string "Please do come again.$" @ Unused -CableClub_Text_OhExcuseMe: @ 8278A39 +CableClub_Text_OhExcuseMe: .string "Oh…\n" .string "Excuse me!$" -CableClub_Text_PlayerIsWaiting: @ 8278A48 +CableClub_Text_PlayerIsWaiting: .string "It appears as if {STR_VAR_1} is playing\n" .string "right now.\l" .string "Go for it!$" -MossdeepCity_GameCorner_1F_Text_DescribeWhichGame: @ 8278A7D +MossdeepCity_GameCorner_1F_Text_DescribeWhichGame: .string "I can explain game rules to you,\n" .string "if you'd like.\p" .string "Which game should I describe?$" -MossdeepCity_GameCorner_1F_Text_PokemonJumpInfo: @ 8278ACB +MossdeepCity_GameCorner_1F_Text_PokemonJumpInfo: .string "“POKéMON JUMP”\p" .string "Make your POKéMON skip the VINE WHIP\n" .string "rope with the A Button.\p" @@ -264,7 +264,7 @@ MossdeepCity_GameCorner_1F_Text_PokemonJumpInfo: @ 8278ACB .string "Good things happen if everyone\n" .string "jumps in time.$" -MossdeepCity_GameCorner_1F_Text_DodrioBerryPickingInfo: @ 8278BF1 +MossdeepCity_GameCorner_1F_Text_DodrioBerryPickingInfo: .string "“DODRIO BERRY-PICKING”\p" .string "Command DODRIO's three heads to\n" .string "catch falling BERRIES.\p" @@ -273,47 +273,47 @@ MossdeepCity_GameCorner_1F_Text_DodrioBerryPickingInfo: @ 8278BF1 .string "To play this game, you must have\n" .string "a DODRIO.$" -MossdeepCity_GameCorner_1F_Text_TalkToOldManToPlay: @ 8278CAC +MossdeepCity_GameCorner_1F_Text_TalkToOldManToPlay: .string "If you want to play a game,\n" .string "please tell the old man beside me.$" -MossdeepCity_GameCorner_1F_Text_WelcomeCanYouWait: @ 8278CEB +MossdeepCity_GameCorner_1F_Text_WelcomeCanYouWait: .string "Hi, welcome!\n" .string "Are you here to play games using\l" .string "Wireless Communication?\p" .string "Can you wait just a little bit?$" -MossdeepCity_GameCorner_1F_Text_ComeAgain: @ 8278D51 +MossdeepCity_GameCorner_1F_Text_ComeAgain: .string "All right, come again!$" -MossdeepCity_GameCorner_1F_Text_AdapterNotConnected: @ 8278D68 +MossdeepCity_GameCorner_1F_Text_AdapterNotConnected: .string "The Wireless Adapter isn't connected.\n" .string "Come back when it's hooked up!$" -MossdeepCity_GameCorner_1F_Text_PlayWhichGame: @ 8278DAD +MossdeepCity_GameCorner_1F_Text_PlayWhichGame: .string "All right, which game did you want\n" .string "to play?$" -MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon: @ 8278DD9 +MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon: .string "Which POKéMON would you like to\n" .string "enter?$" -MossdeepCity_GameCorner_1F_Text_AllGoodToGo: @ 8278E00 +MossdeepCity_GameCorner_1F_Text_AllGoodToGo: .string "Okay, you're all good to go.\n" .string "Don't let the others beat you!$" @ Unused -MossdeepCity_GameCorner_1F_Text_LeavingDoComeAgain: @ 8278E3C +MossdeepCity_GameCorner_1F_Text_LeavingDoComeAgain: .string "Are you leaving now?\n" .string "Do come again!$" -MossdeepCity_GameCorner_1F_Text_ExplainRequiredMon: @ 8278E60 +MossdeepCity_GameCorner_1F_Text_ExplainRequiredMon: .string "It doesn't look like you have any\n" .string "POKéMON that you can enter…\p" .string "Would you like me to explain what\n" .string "kinds of POKéMON can enter?$" -MossdeepCity_GameCorner_1F_Text_ShortJumpingPokemonAllowed: @ 8278EDC +MossdeepCity_GameCorner_1F_Text_ShortJumpingPokemonAllowed: .string "“POKéMON JUMP” is open to POKéMON\n" .string "around 28 inches or less.\p" .string "What you can't enter are those\n" @@ -322,16 +322,16 @@ MossdeepCity_GameCorner_1F_Text_ShortJumpingPokemonAllowed: @ 8278EDC .string "swim, burrow, or fly.\p" .string "That's all you need to know.$" -MossdeepCity_GameCorner_1F_Text_OnlyDodrioAllowed: @ 8278FA4 +MossdeepCity_GameCorner_1F_Text_OnlyDodrioAllowed: .string "DODRIO BERRY-PICKING is a game that \n" .string "only DODRIO may enter.$" @ Unused -MossdeepCity_GameCorner_1F_Text_RetryPlease: @ 8278FE0 +MossdeepCity_GameCorner_1F_Text_RetryPlease: .string "Could you retry this from the start\n" .string "again, please?$" -CableClub_Text_WelcomeWhichDirectCornerRoom: @ 8279013 +CableClub_Text_WelcomeWhichDirectCornerRoom: .string "Welcome to the POKéMON WIRELESS\n" .string "CLUB DIRECT CORNER.\p" .string "You may interact directly with\n" @@ -339,22 +339,22 @@ CableClub_Text_WelcomeWhichDirectCornerRoom: @ 8279013 .string "Which room would you like to\n" .string "enter?$" -CableClub_Text_TradePokemon: @ 827909D +CableClub_Text_TradePokemon: .string "Would you like to trade POKéMON?$" -CableClub_Text_PlayWhichBattleMode: @ 82790BE +CableClub_Text_PlayWhichBattleMode: .string "Which Battle Mode would you like\n" .string "to play?$" -CableClub_Text_AccessRecordCorner: @ 82790E8 +CableClub_Text_AccessRecordCorner: .string "Would you like to access\n" .string "the RECORD CORNER?$" -CableClub_Text_UseBerryCrush: @ 8279114 +CableClub_Text_UseBerryCrush: .string "Would you like to use the\n" .string "BERRY CRUSH System?$" -CableClub_Text_ExplainBattleModes: @ 8279142 +CableClub_Text_ExplainBattleModes: .string "There are three Battle Modes.\p" .string "SINGLE BATTLE is for two TRAINERS\n" .string "with one or more POKéMON each.\p" @@ -369,25 +369,25 @@ CableClub_Text_ExplainBattleModes: @ 8279142 .string "Each TRAINER can have one POKéMON\n" .string "in battle at a time.$" -CableClub_Text_ChooseGroupLeaderOfTwo: @ 82792CD +CableClub_Text_ChooseGroupLeaderOfTwo: .string "Please decide which of you two\n" .string "will become the LEADER.\p" .string "The other player must then choose\n" .string "“JOIN GROUP.”$" -CableClub_Text_ChooseGroupLeaderOfFour: @ 8279334 +CableClub_Text_ChooseGroupLeaderOfFour: .string "Please decide which of you four\n" .string "will become the GROUP LEADER.\p" .string "The other players must then choose\n" .string "“JOIN GROUP.”$" -CableClub_Text_ChooseGroupLeader: @ 82793A3 +CableClub_Text_ChooseGroupLeader: .string "Please decide which of you will\n" .string "become the GROUP LEADER.\p" .string "The other players must then choose\n" .string "“JOIN GROUP.”$" -CableClub_Text_WelcomeUnionRoomEnter: @ 827940D +CableClub_Text_WelcomeUnionRoomEnter: .string "Welcome to the POKéMON WIRELESS\n" .string "CLUB UNION ROOM.\p" .string "You may interact directly with\n" @@ -395,7 +395,7 @@ CableClub_Text_WelcomeUnionRoomEnter: @ 827940D .string "whom you may not even know.\p" .string "Would you like to enter the ROOM?$" -CableClub_Text_UnionRoomInfo: @ 82794B8 +CableClub_Text_UnionRoomInfo: .string "The TRAINERS in the UNION ROOM\n" .string "will be those players around you\l" .string "who have also entered the ROOM.\p" @@ -409,11 +409,11 @@ CableClub_Text_UnionRoomInfo: @ 82794B8 .string "trade.\p" .string "Would you like to enter the ROOM?$" -CableClub_Text_EnjoyUnionRoom: @ 827961C +CableClub_Text_EnjoyUnionRoom: .string "I hope you enjoy your time in\n" .string "the UNION ROOM.$" -CableClub_Text_FirstTimeRightThisWay: @ 827964A +CableClub_Text_FirstTimeRightThisWay: .string "Hello!\n" .string "My name is TEALA.\p" .string "This must be your first time\n" @@ -424,7 +424,7 @@ CableClub_Text_FirstTimeRightThisWay: @ 827964A .string "floor of our POKéMON CENTER.\p" .string "Right this way, please.$" -CableClub_Text_ExplainWirelessClubFirstTime: @ 8279718 +CableClub_Text_ExplainWirelessClubFirstTime: .string "On the top floor, there are two\n" .string "rooms.\p" .string "First, the room on the left.\n" @@ -446,14 +446,14 @@ CableClub_Text_ExplainWirelessClubFirstTime: @ 8279718 .string "I hope you enjoy the Wireless \n" .string "Communication System.$" -CableClub_Text_AskAboutLinking: @ 8279937 +CableClub_Text_AskAboutLinking: .string "Hello, {PLAYER}!\p" .string "It's me, TEALA, the POKéMON\n" .string "CENTER 2F attendant.\p" .string "Is there something you needed to\n" .string "ask me about linking?$" -CableClub_Text_ExplainWirelessClub: @ 82799AA +CableClub_Text_ExplainWirelessClub: .string "Let me explain how the POKéMON\n" .string "WIRELESS CLUB works.\p" .string "On this, the top floor, there are\n" @@ -482,6 +482,6 @@ CableClub_Text_ExplainWirelessClub: @ 82799AA .string "I hope you enjoy the Wireless \n" .string "Communication System.$" -CableClub_Text_HopeYouEnjoyWirelessSystem: @ 8279C91 +CableClub_Text_HopeYouEnjoyWirelessSystem: .string "I hope you enjoy the Wireless\n" .string "Communication System.$" diff --git a/data/text/check_furniture.inc b/data/text/check_furniture.inc index 23f966bbdbf2..abf6cf48aba6 100644 --- a/data/text/check_furniture.inc +++ b/data/text/check_furniture.inc @@ -1,27 +1,27 @@ -Text_PictureBookShelf: @ 82A81E5 +Text_PictureBookShelf: .string "There's a set of POKéMON picture books.$" -Text_BookShelf: @ 82A820D +Text_BookShelf: .string "It's filled with all sorts of books.$" -Text_PokemonCenterBookShelf: @ 82A8232 +Text_PokemonCenterBookShelf: .string "POKéMON magazines!\n" .string "POKéMON PAL…\p" .string "POKéMON HANDBOOK…\n" .string "ADORABLE POKéMON…$" -Text_Vase: @ 82A8276 +Text_Vase: .string "This vase looks expensive…\n" .string "Peered inside…\p" .string "But, it was empty.$" -Text_EmptyTrashCan: @ 82A82B3 +Text_EmptyTrashCan: .string "It's empty.$" -Text_ShopShelf: @ 82A82BF +Text_ShopShelf: .string "The shelves brim with all sorts of\n" .string "POKéMON merchandise.$" -Text_Blueprint: @ 82A82F7 +Text_Blueprint: .string "A blueprint of some sort?\n" .string "It's too complicated!$" diff --git a/data/text/contest_link.inc b/data/text/contest_link.inc index d9873904f105..f2f1469e0f80 100644 --- a/data/text/contest_link.inc +++ b/data/text/contest_link.inc @@ -1,38 +1,38 @@ @ With the exception of Link standby, none of the below texts are used -gTest_MissedTurn:: @ 827E8CE +gTest_MissedTurn:: .string "Missed turn$" -gText_LinkStandby4:: @ 827E8DA +gText_LinkStandby4:: .string "Link standby!$" -gText_WinnerIsPlayersMonCongrats:: @ 827E8E8 +gText_WinnerIsPlayersMonCongrats:: .string "The winner is {STR_VAR_1}'s {STR_VAR_2}!\n" .string "Congratulations!$" -gText_WinnerIsPlayersMon:: @ 827E910 +gText_WinnerIsPlayersMon:: .string "The winner is {STR_VAR_1}'s {STR_VAR_2}!{PAUSE_UNTIL_PRESS}$" -gText_PrimaryJudgingNumX:: @ 827E929 +gText_PrimaryJudgingNumX:: .string "Primary judging: No. {STR_VAR_1}{PAUSE_UNTIL_PRESS}$" -gText_SecondaryJudgingNumX:: @ 827E943 +gText_SecondaryJudgingNumX:: .string "Secondary judging: No. {STR_VAR_1}{PAUSE_UNTIL_PRESS}$" -gText_SetEventNumX:: @ 827E95F +gText_SetEventNumX:: .string "Set event: No. {STR_VAR_1}{PAUSE_UNTIL_PRESS}$" -gText_MoveUsedMostOften:: @ 827E973 +gText_MoveUsedMostOften:: .string "The move used most often:\n" .string "{STR_VAR_1}{PAUSE_UNTIL_PRESS}$" -gText_MostImpressiveMon:: @ 827E992 +gText_MostImpressiveMon:: .string "The most impressive POKéMON:\n" .string "{STR_VAR_1}'s {STR_VAR_2}{PAUSE_UNTIL_PRESS}$" -gText_SetEventNumX2:: @ 827E9B9 +gText_SetEventNumX2:: .string "Set event: No. {STR_VAR_1}{PAUSE_UNTIL_PRESS}$" -gText_LinkTVProgramWillNotBeMadeTrainerLost:: @ 827E9CD +gText_LinkTVProgramWillNotBeMadeTrainerLost:: .string "A link TV program will not be made\n" .string "because the TRAINER lost.{PAUSE_UNTIL_PRESS}$" diff --git a/data/text/contest_painting.inc b/data/text/contest_painting.inc index b423fbb277e8..5152cb3bb8e9 100644 --- a/data/text/contest_painting.inc +++ b/data/text/contest_painting.inc @@ -1,9 +1,9 @@ -gContestHallPaintingCaption:: @ 827EA0C +gContestHallPaintingCaption:: .string "{STR_VAR_1}\n" .string "{STR_VAR_2}'s {STR_VAR_3}$" @ Unused -gContestPaintingContest:: @ 827EA17 +gContestPaintingContest:: .string "CONTEST$" gContestRankNormal:: diff --git a/data/text/contest_strings.inc b/data/text/contest_strings.inc index 3cebef526d3e..e57e76a52814 100644 --- a/data/text/contest_strings.inc +++ b/data/text/contest_strings.inc @@ -1,725 +1,725 @@ @ Contest move effect descriptions -gText_HighlyAppealingMove:: @ 827CB82 +gText_HighlyAppealingMove:: .string "A highly appealing move.$" -gText_UserMoreEasilyStartled:: @ 827CB9B +gText_UserMoreEasilyStartled:: .string "After this move, the user is\nmore easily startled.$" -gText_GreatAppealButNoMoreToEnd:: @ 827CBCE +gText_GreatAppealButNoMoreToEnd:: .string "Makes a great appeal, but\nallows no more to the end.$" -gText_UsedRepeatedlyWithoutBoringJudge:: @ 827CC03 +gText_UsedRepeatedlyWithoutBoringJudge:: .string "Can be repeatedly used\nwithout boring the JUDGE.$" -gText_AvoidStartledByOthersOnce:: @ 827CC34 +gText_AvoidStartledByOthersOnce:: .string "Can avoid being startled\nby others once.$" -gText_AvoidStartledByOthers:: @ 827CC5D +gText_AvoidStartledByOthers:: .string "Can avoid being startled\nby others.$" -gText_AvoidStartledByOthersLittle:: @ 827CC81 +gText_AvoidStartledByOthersLittle:: .string "Can avoid being startled\nby others a little.$" -gText_UserLessLikelyStartled:: @ 827CCAE +gText_UserLessLikelyStartled:: .string "After this move, the user is\nless likely to be startled.$" -gText_SlightlyStartleFrontMon:: @ 827CCE7 +gText_SlightlyStartleFrontMon:: .string "Slightly startles the\nPOKéMON in front.$" -gText_SlightlyStartleAppealed:: @ 827CD0F +gText_SlightlyStartleAppealed:: .string "Slightly startles those\nthat have made appeals.$" -gText_StartleAppealedBeforeUser:: @ 827CD3F +gText_StartleAppealedBeforeUser:: .string "Startles the POKéMON that\nappealed before the user.$" -gText_StartleAllAppealed:: @ 827CD73 +gText_StartleAllAppealed:: .string "Startles all POKéMON that\nhave done their appeals.$" -gText_BadlyStartleFrontMon:: @ 827CDA6 +gText_BadlyStartleFrontMon:: .string "Badly startles the\nPOKéMON in front.$" -gText_BadlyStartleAppealed:: @ 827CDCB +gText_BadlyStartleAppealed:: .string "Badly startles those that\nhave made appeals.$" -gText_StartleAppealedBeforeUser2:: @ 827CDF8 +gText_StartleAppealedBeforeUser2:: .string "Startles the POKéMON that\nappealed before the user.$" -gText_StartleAllAppealed2:: @ 827CE2C +gText_StartleAllAppealed2:: .string "Startles all POKéMON that\nhave done their appeals.$" -gText_ShiftJudgesAttentionFromOthers:: @ 827CE5F +gText_ShiftJudgesAttentionFromOthers:: .string "Shifts the JUDGE's\nattention from others.$" -gText_StartleMonHasJudgesAttention:: @ 827CE89 +gText_StartleMonHasJudgesAttention:: .string "Startles the POKéMON that\nhas the JUDGE's attention.$" -gText_JamOthersMissesTurn:: @ 827CEBE +gText_JamOthersMissesTurn:: .string "Jams the others, and misses\none turn of appeals.$" -gText_StartleMonsMadeSameTypeAppeal:: @ 827CEEF +gText_StartleMonsMadeSameTypeAppeal:: .string "Startles POKéMON that\nmade a same-type appeal.$" -gText_BadlyStartleCoolAppeals:: @ 827CF1E +gText_BadlyStartleCoolAppeals:: .string "Badly startles POKéMON\nthat made COOL appeals.$" -gText_BadlyStartleBeautyAppeals:: @ 827CF4D +gText_BadlyStartleBeautyAppeals:: .string "Badly startles POKéMON\nthat made BEAUTY appeals.$" -gText_BadlyStartleCuteAppeals:: @ 827CF7E +gText_BadlyStartleCuteAppeals:: .string "Badly startles POKéMON\nthat made CUTE appeals.$" -gText_BadlyStartleSmartAppeals:: @ 827CFAD +gText_BadlyStartleSmartAppeals:: .string "Badly startles POKéMON\nthat made SMART appeals.$" -gText_BadlyStartleToughAppeals:: @ 827CFDD +gText_BadlyStartleToughAppeals:: .string "Badly startles POKéMON\nthat made TOUGH appeals.$" -gText_MakeMonAfterUserNervous:: @ 827D00D +gText_MakeMonAfterUserNervous:: .string "Makes one POKéMON after\nthe user nervous.$" -gText_MakeAllMonsAfterUserNervous:: @ 827D037 +gText_MakeAllMonsAfterUserNervous:: .string "Makes all POKéMON after\nthe user nervous.$" -gText_WorsenConditionOfThoseMadeAppeals:: @ 827D061 +gText_WorsenConditionOfThoseMadeAppeals:: .string "Worsens the condition of\nthose that made appeals.$" -gText_BadlyStartleMonsGoodCondition:: @ 827D093 +gText_BadlyStartleMonsGoodCondition:: .string "Badly startles POKéMON in\ngood condition.$" -gText_AppealGreatIfPerformedFirst:: @ 827D0BD +gText_AppealGreatIfPerformedFirst:: .string "The appeal works great if\nperformed first.$" -gText_AppealGreatIfPerformedLast:: @ 827D0E8 +gText_AppealGreatIfPerformedLast:: .string "The appeal works great if\nperformed last.$" -gText_AppealAsGoodAsThoseBeforeIt:: @ 827D112 +gText_AppealAsGoodAsThoseBeforeIt:: .string "Makes the appeal as good\nas those before it.$" -gText_AppealAsGoodAsOneBeforeIt:: @ 827D13F +gText_AppealAsGoodAsOneBeforeIt:: .string "Makes the appeal as good\nas the one before it.$" -gText_AppealBetterLaterItsPerformed:: @ 827D16E +gText_AppealBetterLaterItsPerformed:: .string "The appeal works better\nthe later it is performed.$" -gText_AppealVariesDependingOnTiming:: @ 827D1A1 +gText_AppealVariesDependingOnTiming:: .string "The appeal's quality varies\ndepending on its timing.$" -gText_WorksWellIfSameTypeAsBefore:: @ 827D1D6 +gText_WorksWellIfSameTypeAsBefore:: .string "Works well if it's the same\ntype as the one before.$" -gText_WorksWellIfDifferentTypeAsBefore:: @ 827D20A +gText_WorksWellIfDifferentTypeAsBefore:: .string "Works well if different in\ntype than the one before.$" -gText_AffectedByAppealInFront:: @ 827D23F +gText_AffectedByAppealInFront:: .string "Affected by how well the\nappeal in front goes.$" -gText_UpsConditionHelpsPreventNervousness:: @ 827D26E +gText_UpsConditionHelpsPreventNervousness:: .string "Ups the user's condition.\nHelps prevent nervousness.$" -gText_AppealWorksWellIfConditionGood:: @ 827D2A3 +gText_AppealWorksWellIfConditionGood:: .string "The appeal works well if the\nuser's condition is good.$" -gText_NextAppealMadeEarlier:: @ 827D2DA +gText_NextAppealMadeEarlier:: .string "The next appeal can be\nmade earlier next turn.$" -gText_NextAppealMadeLater:: @ 827D309 +gText_NextAppealMadeLater:: .string "The next appeal can be\nmade later next turn.$" -gText_TurnOrderMoreEasilyScrambled:: @ 827D336 +gText_TurnOrderMoreEasilyScrambled:: .string "Makes the next turn's order\nmore easily scrambled.$" -gText_ScrambleOrderOfNextAppeals:: @ 827D369 +gText_ScrambleOrderOfNextAppeals:: .string "Scrambles the order of\nappeals on the next turn.$" -gText_AppealExcitesAudienceInAnyContest:: @ 827D39A +gText_AppealExcitesAudienceInAnyContest:: .string "An appeal that excites the\naudience in any CONTEST.$" -gText_BadlyStartlesMonsGoodAppeals:: @ 827D3CE +gText_BadlyStartlesMonsGoodAppeals:: .string "Badly startles all POKéMON\nthat made good appeals.$" -gText_AppealBestMoreCrowdExcited:: @ 827D401 +gText_AppealBestMoreCrowdExcited:: .string "The appeal works best the\nmore the crowd is excited.$" -gText_TemporarilyStopCrowdExcited:: @ 827D436 +gText_TemporarilyStopCrowdExcited:: .string "Temporarily stops the\ncrowd from growing excited.$" @ Unused move names -gText_RainDance:: @ 827D468 +gText_RainDance:: .string "RAIN DANCE$" -gText_Rage:: @ 827D473 +gText_Rage:: .string "RAGE$" -gText_FocusEnergy:: @ 827D478 +gText_FocusEnergy:: .string "FOCUS ENERGY$" -gText_Hypnosis:: @ 827D485 +gText_Hypnosis:: .string "HYPNOSIS$" -gText_Softboiled:: @ 827D48E +gText_Softboiled:: .string "SOFTBOILED$" -gText_HornAttack:: @ 827D499 +gText_HornAttack:: .string "HORN ATTACK$" -gText_SwordsDance:: @ 827D4A5 +gText_SwordsDance:: .string "SWORDS DANCE$" -gText_Conversion:: @ 827D4B2 +gText_Conversion:: .string "CONVERSION$" -gText_SunnyDay:: @ 827D4BD +gText_SunnyDay:: .string "SUNNY DAY$" -gText_Rest2:: @ 827D4C7 +gText_Rest2:: .string "REST$" -gText_Vicegrip:: @ 827D4CC +gText_Vicegrip:: .string "VICEGRIP$" -gText_DefenseCurl:: @ 827D4D5 +gText_DefenseCurl:: .string "DEFENSE CURL$" -gText_LockOn:: @ 827D4E2 +gText_LockOn:: .string "LOCK-ON$" @ Contest type names -gContestMoveTypeCoolText:: @ 827D4EA +gContestMoveTypeCoolText:: .string "COOL$" -gContestMoveTypeBeautyText:: @ 827D4EF +gContestMoveTypeBeautyText:: .string "BEAUTY$" -gContestMoveTypeCuteText:: @ 827D4F6 +gContestMoveTypeCuteText:: .string "CUTE$" -gContestMoveTypeSmartText:: @ 827D4FB +gContestMoveTypeSmartText:: .string "SMART$" -gContestMoveTypeToughText:: @ 827D501 +gContestMoveTypeToughText:: .string "TOUGH$" -gText_AppealNumWhichMoveWillBePlayed:: @ 827D507 +gText_AppealNumWhichMoveWillBePlayed:: .string "Appeal no. {STR_VAR_1}!\n" .string "Which move will be played?$" -gText_AppealNumButItCantParticipate:: @ 827D531 +gText_AppealNumButItCantParticipate:: .string "Appeal no. {STR_VAR_1}!\n" .string "But it can't participate!$" -gText_MonAppealedWithMove:: @ 827D55A +gText_MonAppealedWithMove:: .string "{STR_VAR_1} appealed with\n" .string "{STR_VAR_2}!$" -gText_MonWasWatchingOthers:: @ 827D56F +gText_MonWasWatchingOthers:: .string "{STR_VAR_1} was watching\n" .string "the others.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_AllOutOfAppealTime:: @ 827D597 +gText_AllOutOfAppealTime:: .string "We're all out of\n" .string "Appeal Time!{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" @ Unused appeal result texts -gText_ButAppealWasJammed:: @ 827D5C1 +gText_ButAppealWasJammed:: .string "But the appeal was\n" .string "jammed.$" -gText_FollowedAnotherMonsLead:: @ 827D5DC +gText_FollowedAnotherMonsLead:: .string "It followed another\n" .string "POKéMON's lead.$" -gText_ButItMessedUp:: @ 827D600 +gText_ButItMessedUp:: .string "But it messed up.$" -gText_WentBetterThanUsual:: @ 827D612 +gText_WentBetterThanUsual:: .string "It went better than\n" .string "usual.$" -gText_JudgeLookedAwayForSomeReason:: @ 827D62D +gText_JudgeLookedAwayForSomeReason:: .string "The JUDGE looked away\n" .string "for some reason.$" -gText_WorkedHardToBuildOnPastMistakes:: @ 827D654 +gText_WorkedHardToBuildOnPastMistakes:: .string "It worked hard to build on\n" .string "past mistakes.$" -gText_CantMakeAnyMoreMoves:: @ 827D67E +gText_CantMakeAnyMoreMoves:: .string "It can't make any more\n" .string "moves.$" -gText_WorkedFrighteninglyWell:: @ 827D69C +gText_WorkedFrighteninglyWell:: .string "It worked frighteningly\n" .string "well.$" -gText_WorkedHardAsStandoutMon:: @ 827D6BA +gText_WorkedHardAsStandoutMon:: .string "It worked as hard as the\n" .string "standout POKéMON.$" -gText_JudgedLookedOnExpectantly:: @ 827D6E5 +gText_JudgedLookedOnExpectantly:: .string "The JUDGE looked on\n" .string "expectantly.$" -gText_WorkedRatherWell:: @ 827D706 +gText_WorkedRatherWell:: .string "It worked rather well.$" -gText_WorkedLittleBetterThanUsual:: @ 827D71D +gText_WorkedLittleBetterThanUsual:: .string "It worked a little better\n" .string "than usual.$" @ Round result texts -gText_MonFailedToStandOutAtAll:: @ 827D743 +gText_MonFailedToStandOutAtAll:: .string "{STR_VAR_1} failed to\n" .string "stand out at all…{PAUSE_UNTIL_PRESS}$" -gText_MonDidntStandOutVeryMuch:: @ 827D764 +gText_MonDidntStandOutVeryMuch:: .string "{STR_VAR_1} didn't stand\n" .string "out very much…{PAUSE_UNTIL_PRESS}$" -gText_MonCaughtALittleAttention:: @ 827D785 +gText_MonCaughtALittleAttention:: .string "{STR_VAR_1} caught a\n" .string "little attention.{PAUSE_UNTIL_PRESS}$" -gText_MonAttractedALotOfAttention:: @ 827D7A5 +gText_MonAttractedALotOfAttention:: .string "{STR_VAR_1} attracted a\n" .string "lot of attention.{PAUSE_UNTIL_PRESS}$" -gText_MonCommandedTotalAttention:: @ 827D7C8 +gText_MonCommandedTotalAttention:: .string "{STR_VAR_1} commanded\n" .string "total attention.{PAUSE_UNTIL_PRESS}$" -gText_MonHasntMadeItsAppeal:: @ 827D7E8 +gText_MonHasntMadeItsAppeal:: .string "{STR_VAR_1} hasn't made\n" .string "its appeal.{PAUSE_UNTIL_PRESS}$" @ Unused -gText_AnticipationSwelledForMonsAppealNext2:: @ 827D805 +gText_AnticipationSwelledForMonsAppealNext2:: .string "Anticipation swelled for\n" .string "{STR_VAR_1}'s appeal next.$" -gText_EmptyContestString:: @ 827D830 +gText_EmptyContestString:: .string "$" -gText_JudgesViewsOnMonHeldFirm:: @ 827D831 +gText_JudgesViewsOnMonHeldFirm:: .string "The JUDGE 's views on\n" .string "{STR_VAR_1} held firm.$" -gText_MonsXChangedPerceptions:: @ 827D855 +gText_MonsXChangedPerceptions:: .string "{STR_VAR_1}'s {STR_VAR_3}\n" .string "changed perceptions.$" -gText_MonsAppealEffectWoreOff:: @ 827D872 +gText_MonsAppealEffectWoreOff:: .string "{STR_VAR_1}'s appeal\n" .string "effect wore off.$" -gText_SpecialAppealsEffectWoreOff:: @ 827D88F +gText_SpecialAppealsEffectWoreOff:: .string "The special appeal's\n" .string "effect wore off.$" -gText_EveryonesAppealsMadeToLookSame:: @ 827D8B5 +gText_EveryonesAppealsMadeToLookSame:: .string "Everyone's appeals were\n" .string "made to look the same.$" -gText_CheapenedMonsAppeal:: @ 827D8E4 +gText_CheapenedMonsAppeal:: .string "It cheapened\n" .string "{STR_VAR_2}'s appeal.$" -gText_CheapenedAppealOfThoseAhead:: @ 827D8FE +gText_CheapenedAppealOfThoseAhead:: .string "It cheapened the appeal\n" .string "of those ahead.$" -gText_StoleAttentionAwayFromMon:: @ 827D926 +gText_StoleAttentionAwayFromMon:: .string "It stole attention away\n" .string "from {STR_VAR_2}.$" -gText_CheapenedMonsAppeal2:: @ 827D947 +gText_CheapenedMonsAppeal2:: .string "It cheapened\n" .string "{STR_VAR_2}'s appeal.$" -gText_SeverelyCheapenedOtherAppeals:: @ 827D961 +gText_SeverelyCheapenedOtherAppeals:: .string "It severely cheapened\n" .string "other appeals.$" -gText_AnticipationSwelledForMonsAppealNext:: @ 827D986 +gText_AnticipationSwelledForMonsAppealNext:: .string "Anticipation swelled for\n" .string "{STR_VAR_1}'s appeal next.$" -gText_CheapenedAppealOfThoseAhead2:: @ 827D9B1 +gText_CheapenedAppealOfThoseAhead2:: .string "It cheapened the appeal\n" .string "of those ahead.$" -gText_CheapenedJudgesFavoriteAppeal:: @ 827D9D9 +gText_CheapenedJudgesFavoriteAppeal:: .string "It cheapened the JUDGE's\n" .string "favorite appeal.$" -gText_AppealsOfOthersCheapenedByHalf:: @ 827DA03 +gText_AppealsOfOthersCheapenedByHalf:: .string "The appeals of others\n" .string "were cheapened by half.$" -gText_StoodOutToMakeUpForBeingJammed:: @ 827DA31 +gText_StoodOutToMakeUpForBeingJammed:: .string "It stood out to make up\n" .string "for being jammed.$" -gText_CantParticipateInAppealsAnyMore:: @ 827DA5B +gText_CantParticipateInAppealsAnyMore:: .string "It can't participate in\n" .string "appeals any more.$" -gText_TouchedJudgeForFantasticAppeal:: @ 827DA85 +gText_TouchedJudgeForFantasticAppeal:: .string "It touched the JUDGE for\n" .string "a fantastic appeal.$" -gText_AnticipationRoseForUpcomingAppeals:: @ 827DAB2 +gText_AnticipationRoseForUpcomingAppeals:: .string "Anticipation rose for\n" .string "upcoming appeals.$" -gText_StoodOutAsMuchAsSpecialAppeals:: @ 827DADA +gText_StoodOutAsMuchAsSpecialAppeals:: .string "It stood out as much as\n" .string "special appeals.$" -gText_StoodOutAsMuchAsMon:: @ 827DB03 +gText_StoodOutAsMuchAsMon:: .string "It stood out as much as\n" .string "{STR_VAR_1}.$" -gText_JammedAppealsMadeEvenLessNoticeable:: @ 827DB1F +gText_JammedAppealsMadeEvenLessNoticeable:: .string "Jammed appeals were made\n" .string "even less noticeable.$" -gText_EveryonesAppealsMadeSame:: @ 827DB4E +gText_EveryonesAppealsMadeSame:: .string "Everyone's appeals were\n" .string "made the same.$" @ Appeal result texts -gText_BecameMoreConsciousOfOtherMons:: @ 827DB75 +gText_BecameMoreConsciousOfOtherMons:: .string "It became more conscious\n" .string "of the other POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonCantMakeAnAppealAfterThis:: @ 827DBB0 +gText_MonCantMakeAnAppealAfterThis:: .string "{STR_VAR_1} can't make an\n" .string "appeal after this.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_SettledDownJustLittleBit:: @ 827DBE0 +gText_SettledDownJustLittleBit:: .string "It settled down just a\n" .string "little bit.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_BecameObliviousToOtherMons:: @ 827DC0F +gText_BecameObliviousToOtherMons:: .string "It became oblivious to\n" .string "the other POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_BecameLessAwareOfOtherMons:: @ 827DC45 +gText_BecameLessAwareOfOtherMons:: .string "It became less aware of\n" .string "the other POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_StoppedCaringAboutOtherMons:: @ 827DC7C +gText_StoppedCaringAboutOtherMons:: .string "It stopped caring about\n" .string "other POKéMON much.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_TriedToStartleOtherMons:: @ 827DCB4 +gText_TriedToStartleOtherMons:: .string "It tried to startle the\n" .string "other POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_TriedToDazzleOthers:: @ 827DCE7 +gText_TriedToDazzleOthers:: .string "It tried to dazzle the\n" .string "others.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_JudgeLookedAwayFromMon:: @ 827DD12 +gText_JudgeLookedAwayFromMon:: .string "The JUDGE looked away\n" .string "from {STR_VAR_1}.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_TriedToUnnerveNextMon:: @ 827DD3D +gText_TriedToUnnerveNextMon:: .string "It tried to unnerve the\n" .string "next POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonBecameNervous:: @ 827DD6F +gText_MonBecameNervous:: .string "{STR_VAR_1} became\n" .string "nervous.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_AppealTriedToUnnerveWaitingMons:: @ 827DD8E +gText_AppealTriedToUnnerveWaitingMons:: .string "The appeal tried to\n" .string "unnerve waiting POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_TauntedMonsDoingWell:: @ 827DDC7 +gText_TauntedMonsDoingWell:: .string "It taunted POKéMON\n" .string "doing well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonRegainedItsForm:: @ 827DDF2 +gText_MonRegainedItsForm:: .string "{STR_VAR_1} regained its\n" .string "form.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_TriedToJamMonDoingWell:: @ 827DE14 +gText_TriedToJamMonDoingWell:: .string "It tried to jam POKéMON\n" .string "doing well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_StandoutMonHustledEvenMore:: @ 827DE44 +gText_StandoutMonHustledEvenMore:: .string "The standout {STR_VAR_1}\n" .string "hustled even more.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_LargelyUnnoticedMonWorkedHard:: @ 827DE73 +gText_LargelyUnnoticedMonWorkedHard:: .string "The largely unnoticed\n" .string "{STR_VAR_1} worked hard.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_WorkedAsMuchAsMonBefore:: @ 827DEA5 +gText_WorkedAsMuchAsMonBefore:: .string "It worked as much as\n" .string "POKéMON before it.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealDidNotGoWell:: @ 827DED9 +gText_MonsAppealDidNotGoWell:: .string "{STR_VAR_1}'s appeal did\n" .string "not go well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_WorkedAsMuchAsPrecedingMon:: @ 827DF02 +gText_WorkedAsMuchAsPrecedingMon:: .string "It worked as much as the\n" .string "preceding POKéMON.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealDidNotGoWell2:: @ 827DF3A +gText_MonsAppealDidNotGoWell2:: .string "{STR_VAR_1}'s appeal did\n" .string "not go well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealDidNotGoWell3:: @ 827DF63 +gText_MonsAppealDidNotGoWell3:: .string "{STR_VAR_1}'s appeal did\n" .string "not go well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentSlightlyWell:: @ 827DF8C +gText_MonsAppealWentSlightlyWell:: .string "{STR_VAR_1}'s appeal\n" .string "went slightly well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentPrettyWell:: @ 827DFB8 +gText_MonsAppealWentPrettyWell:: .string "{STR_VAR_1}'s appeal\n" .string "went pretty well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentExcellently:: @ 827DFE2 +gText_MonsAppealWentExcellently:: .string "{STR_VAR_1}'s appeal\n" .string "went excellently.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWasDud:: @ 827E00C +gText_MonsAppealWasDud:: .string "{STR_VAR_1}'s appeal was\n" .string "a dud.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealDidNotWorkVeryWell:: @ 827E02F +gText_MonsAppealDidNotWorkVeryWell:: .string "{STR_VAR_1}'s appeal did\n" .string "not work very well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentSlightlyWell2:: @ 827E05F +gText_MonsAppealWentSlightlyWell2:: .string "{STR_VAR_1}'s appeal\n" .string "went slightly well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentPrettyWell2:: @ 827E08B +gText_MonsAppealWentPrettyWell2:: .string "{STR_VAR_1}'s appeal\n" .string "went pretty well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentVeryWell:: @ 827E0B5 +gText_MonsAppealWentVeryWell:: .string "{STR_VAR_1}'s appeal\n" .string "went very well.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsAppealWentExcellently2:: @ 827E0DD +gText_MonsAppealWentExcellently2:: .string "{STR_VAR_1}'s appeal\n" .string "went excellently.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_SameTypeAsOneBeforeGood:: @ 827E107 +gText_SameTypeAsOneBeforeGood:: .string "It's the same type as the\n" .string "POKéMON before--good!{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_NotSameTypeAsOneBeforeGood:: @ 827E143 +gText_NotSameTypeAsOneBeforeGood:: .string "It's not the same type as\n" .string "the one before--good!{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_StoodOutMuchMoreThanMonBefore:: @ 827E17F +gText_StoodOutMuchMoreThanMonBefore:: .string "It stood out much more\n" .string "than the POKéMON before.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_DidntDoAsWellAsMonBefore:: @ 827E1BB +gText_DidntDoAsWellAsMonBefore:: .string "It didn't do as well as the\n" .string "POKéMON before.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsConditionRoseAboveUsual:: @ 827E1F3 +gText_MonsConditionRoseAboveUsual:: .string "{STR_VAR_1}'s condition\n" .string "rose above usual.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MonsHotStatusMadeGreatAppeal:: @ 827E220 +gText_MonsHotStatusMadeGreatAppeal:: .string "{STR_VAR_1}'s hot status\n" .string "made it a great appeal!{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MovedUpInLineForNextAppeal:: @ 827E254 +gText_MovedUpInLineForNextAppeal:: .string "It moved up in line for\n" .string "the next appeal.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_MovedBackInLineForNextAppeal:: @ 827E289 +gText_MovedBackInLineForNextAppeal:: .string "It moved back in line once\n" .string "for the next appeal.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_ScrambledUpOrderForNextTurn:: @ 827E2C5 +gText_ScrambledUpOrderForNextTurn:: .string "It scrambled up the\n" .string "order for the next turn.{PAUSE 15}{PAUSE 15}{PAUSE 15}{PAUSE 15}$" -gText_JudgeLookedAtMonExpectantly:: @ 827E2FE +gText_JudgeLookedAtMonExpectantly:: .string "The JUDGE looked at\n" .string "{STR_VAR_1} expectantly.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_AppealComboWentOverWell:: @ 827E32E +gText_AppealComboWentOverWell:: .string "The appeal combo went\n" .string "over well.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_AppealComboWentOverVeryWell:: @ 827E35B +gText_AppealComboWentOverVeryWell:: .string "The appeal combo went\n" .string "over very well.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_AppealComboWentOverExcellently:: @ 827E38D +gText_AppealComboWentOverExcellently:: .string "The appeal combo went\n" .string "over excellently.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonManagedToAvertGaze:: @ 827E3C1 +gText_MonManagedToAvertGaze:: .string "{STR_VAR_1} managed to\n" .string "avert its gaze.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonManagedToAvoidSeeingIt:: @ 827E3EB +gText_MonManagedToAvoidSeeingIt:: .string "{STR_VAR_1} managed to\n" .string "avoid seeing it.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonIsntFazedByThatSortOfThing:: @ 827E416 +gText_MonIsntFazedByThatSortOfThing:: .string "{STR_VAR_1} isn't fazed\n" .string "by that sort of thing.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonBecameALittleDistracted:: @ 827E448 +gText_MonBecameALittleDistracted:: .string "{STR_VAR_1} became a\n" .string "little distracted.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_TriedToStartleOtherPokemon:: @ 827E473 +gText_TriedToStartleOtherPokemon:: .string "It tried to startle the\n" .string "other POKéMON.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonLookedDownOutOfDistraction:: @ 827E4A6 +gText_MonLookedDownOutOfDistraction:: .string "{STR_VAR_1} looked down\n" .string "out of distraction.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonTurnedBackOutOfDistraction:: @ 827E4D5 +gText_MonTurnedBackOutOfDistraction:: .string "{STR_VAR_1} turned back\n" .string "out of distraction.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonCouldntHelpUtteringCry:: @ 827E504 +gText_MonCouldntHelpUtteringCry:: .string "{STR_VAR_1} couldn't help\n" .string "uttering a cry.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonCouldntHelpLeapingUp:: @ 827E531 +gText_MonCouldntHelpLeapingUp:: .string "{STR_VAR_1} couldn't help\n" .string "leaping up.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonTrippedOutOfDistraction:: @ 827E55A +gText_MonTrippedOutOfDistraction:: .string "{STR_VAR_1} tripped over\n" .string "out of distraction.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonWasTooNervousToMove:: @ 827E58A +gText_MonWasTooNervousToMove:: .string "{STR_VAR_1} was too\n" .string "nervous to move.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_ButItMessedUp2:: @ 827E5B2 +gText_ButItMessedUp2:: .string "But it messed up.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_ButItFailedToMakeTargetNervous:: @ 827E5D0 +gText_ButItFailedToMakeTargetNervous:: .string "But it failed to make\n" .string "the target nervous.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_ButItFailedToMakeAnyoneNervous:: @ 827E606 +gText_ButItFailedToMakeAnyoneNervous:: .string "But it failed to make\n" .string "anyone nervous.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_ButItWasIgnored:: @ 827E638 +gText_ButItWasIgnored:: .string "But it was ignored…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_CouldntImproveItsCondition:: @ 827E658 +gText_CouldntImproveItsCondition:: .string "But it couldn't improve\n" .string "its condition…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_BadConditionResultedInWeakAppeal:: @ 827E68B +gText_BadConditionResultedInWeakAppeal:: .string "Its bad condition\n" .string "resulted in a weak appeal.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonWasUnaffected:: @ 827E6C4 +gText_MonWasUnaffected:: .string "{STR_VAR_1} was\n" .string "unaffected.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_RepeatedAppeal:: @ 827E6E3 +gText_RepeatedAppeal:: .string "{STR_VAR_1} disappointed\n" .string "by repeating an appeal.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonsXWentOverGreat:: @ 827E717 +gText_MonsXWentOverGreat:: .string "{STR_VAR_1}'s {STR_VAR_3}\n" .string "went over great.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonsXDidntGoOverWell:: @ 827E73C +gText_MonsXDidntGoOverWell:: .string "{STR_VAR_1}'s {STR_VAR_3}\n" .string "didn't go over well here…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonsXGotTheCrowdGoing:: @ 827E76A +gText_MonsXGotTheCrowdGoing:: .string "{STR_VAR_1}'s {STR_VAR_3}\n" .string "got the crowd going.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonCantAppealNextTurn:: @ 827E793 +gText_MonCantAppealNextTurn:: .string "{STR_VAR_1} can't appeal\n" .string "next turn…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_AttractedCrowdsAttention:: @ 827E7BA +gText_AttractedCrowdsAttention:: .string "It attracted the crowd's\n" .string "attention.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_CrowdContinuesToWatchMon:: @ 827E7EA +gText_CrowdContinuesToWatchMon:: .string "The crowd continues to\n" .string "watch {STR_VAR_3}.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_MonsMoveIsIgnored:: @ 827E817 +gText_MonsMoveIsIgnored:: .string "{STR_VAR_1}'s\n" .string "{STR_VAR_2} is ignored.{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -gText_Contest_Shyness:: @ 827E837 +gText_Contest_Shyness:: .string "shyness$" -gText_Contest_Anxiety:: @ 827E83F +gText_Contest_Anxiety:: .string "anxiety$" -gText_Contest_Laziness:: @ 827E847 +gText_Contest_Laziness:: .string "laziness$" -gText_Contest_Hesitancy:: @ 827E850 +gText_Contest_Hesitancy:: .string "hesitancy$" -gText_Contest_Fear:: @ 827E85A +gText_Contest_Fear:: .string "fear$" -gText_Contest_Coolness:: @ 827E85F +gText_Contest_Coolness:: .string "coolness$" -gText_Contest_Beauty:: @ 827E868 +gText_Contest_Beauty:: .string "beauty$" -gText_Contest_Cuteness:: @ 827E86F +gText_Contest_Cuteness:: .string "cuteness$" -gText_Contest_Smartness:: @ 827E878 +gText_Contest_Smartness:: .string "smartness$" -gText_Contest_Toughness:: @ 827E882 +gText_Contest_Toughness:: .string "toughness$" @ Unused -gText_Tension:: @ 827E88C +gText_Tension:: .string "TENSION$" -gText_CoolMove:: @ 827E894 +gText_CoolMove:: .string "COOL Move$" -gText_BeautyMove:: @ 827E89E +gText_BeautyMove:: .string "BEAUTY Move$" -gText_CuteMove:: @ 827E8AA +gText_CuteMove:: .string "CUTE Move$" -gText_SmartMove:: @ 827E8B4 +gText_SmartMove:: .string "SMART Move$" -gText_ToughMove:: @ 827E8BF +gText_ToughMove:: .string "TOUGH Move$" -gText_3QuestionMarks:: @ 827E8CA +gText_3QuestionMarks:: .string "???$" diff --git a/data/text/event_ticket_1.inc b/data/text/event_ticket_1.inc index da4d525f648b..cd2b4219d787 100644 --- a/data/text/event_ticket_1.inc +++ b/data/text/event_ticket_1.inc @@ -1,16 +1,16 @@ -EventTicket_Text_ShowOldSeaMap: @ 82A6848 +EventTicket_Text_ShowOldSeaMap: .string "The ferry to SLATEPORT is…\p" .string "I beg your pardon?\n" .string "Can we sail to this place on the map?\p" .string "I know someone who will help you better.\n" .string "Please wait.$" -EventTicket_Text_ThatPass: @ 82A68D2 +EventTicket_Text_ThatPass: .string "The ferry to SLATEPORT is…\p" .string "Oh?\n" .string "That PASS…$" -EventTicket_Text_ShowEonTicket: @ 82A68FC +EventTicket_Text_ShowEonTicket: .string "Aye, mate, are you the one who brought\n" .string "that mighty odd PASS?\p" .string "I'll tell you, you're trying to reach a\n" @@ -20,22 +20,22 @@ EventTicket_Text_ShowEonTicket: @ 82A68FC .string "That shivers my timbers!\p" .string "All aboard!$" -EventTicket_Text_SouthernIslandSailBack: @ 82A69F1 +EventTicket_Text_SouthernIslandSailBack: .string "Aye, mate, there's nothing here to\n" .string "see or do on this forgettable island.\p" .string "What say we sail back to LILYCOVE?$" -EventTicket_Text_SailHome: @ 82A6A5D +EventTicket_Text_SailHome: .string "Aye, right, then!\n" .string "Sail home we will!$" -EventTicket_Text_AsYouLike: @ 82A6A82 +EventTicket_Text_AsYouLike: .string "Aye, right, as you like, then.$" -SouthernIsland_Interior_Text_Sign: @ 82A6AA1 +SouthernIsland_Interior_Text_Sign: .string "“All dreams are but another reality.\n" .string "Never forget…”$" -SouthernIsland_Exterior_Text_Sign: @ 82A6AD5 +SouthernIsland_Exterior_Text_Sign: .string "“Those whose memories fade seek to\n" .string "carve them in their hearts…”$" diff --git a/data/text/event_ticket_2.inc b/data/text/event_ticket_2.inc index e081edbd9567..0165b5fde9ec 100644 --- a/data/text/event_ticket_2.inc +++ b/data/text/event_ticket_2.inc @@ -1,4 +1,4 @@ -EventTicket_Text_OldSeaMapTooFar: @ 82C68A5 +EventTicket_Text_OldSeaMapTooFar: .string "What's up, youngster?\p" .string "What, it's you who's supposed to have\n" .string "a tattered old map?\p" @@ -7,12 +7,12 @@ EventTicket_Text_OldSeaMapTooFar: @ 82C68A5 .string "Boy, this is quite a ways away.\n" .string "I'm afraid I can't help you…$" -EventTicket_Text_BrineyHoldOnASecond: @ 82C6951 +EventTicket_Text_BrineyHoldOnASecond: .string "BRINEY: Hold on a second!\p" .string "What's the idea of turning down\n" .string "someone that I owe so much to?$" -EventTicket_Text_BrineyLetsSail: @ 82C69AA +EventTicket_Text_BrineyLetsSail: .string "{PLAYER}{KUN}, I'm terribly sorry.\p" .string "You came to me seeking my help,\n" .string "and we almost turned you away.\p" @@ -21,7 +21,7 @@ EventTicket_Text_BrineyLetsSail: @ 82C69AA .string "Let's find this island on\n" .string "this OLD SEA MAP!$" -EventTicket_Text_OddTicketGetOnBoard: @ 82C6A71 +EventTicket_Text_OddTicketGetOnBoard: .string "Is it you who brought that odd\n" .string "ticket?\p" .string "Where you're trying to go is an island\n" @@ -31,16 +31,16 @@ EventTicket_Text_OddTicketGetOnBoard: @ 82C6A71 .string "as a sailing man!\p" .string "Get on board, youngster!$" -FarawayIsland_Entrance_Text_SailorReturn: @ 82C6B42 +FarawayIsland_Entrance_Text_SailorReturn: .string "CAPT. BRINEY can be so maddeningly\n" .string "fickle…\p" .string "Do you want to return to LILYCOVE?$" -BirthIsland_Harbor_Text_SailorReturn: @ 82C6B90 +BirthIsland_Harbor_Text_SailorReturn: .string "What an oddly shaped island, eh?\n" .string "Do you want to return to LILYCOVE?$" -EventTicket_Text_OddTicketsWhereTo: @ 82C6BD4 +EventTicket_Text_OddTicketsWhereTo: .string "Is it you who brought those\n" .string "odd tickets?\p" .string "… … …Hm.\p" @@ -53,13 +53,13 @@ EventTicket_Text_OddTicketsWhereTo: @ 82C6BD4 .string "Get on board, youngster!\n" .string "Where shall we sail first?$" -NavelRock_Harbor_Text_SailorReturn: @ 82C6CE6 +NavelRock_Harbor_Text_SailorReturn: .string "Did… Did you hear that?\n" .string "That low growling from deep in there.\p" .string "Are you sure it's safe?\n" .string "Do you think we should leave?$" -FarawayIsland_Entrance_Text_Sign: @ 82C6D5A +FarawayIsland_Entrance_Text_Sign: .string "The writing is fading as if it was\n" .string "written a long time ago…\p" .string "“…ber, 6th day\n" @@ -67,5 +67,5 @@ FarawayIsland_Entrance_Text_Sign: @ 82C6D5A .string "again…et it be a kindhearted pers…\l" .string "…ith that hope, I depar…”$" -FarawayIsland_Interior_Text_Mew: @ 82C6DFF +FarawayIsland_Interior_Text_Mew: .string "Myuu…$" diff --git a/data/text/frontier_brain.inc b/data/text/frontier_brain.inc index 3bce8076ed3f..1292f2a564f5 100644 --- a/data/text/frontier_brain.inc +++ b/data/text/frontier_brain.inc @@ -1,108 +1,108 @@ @ Battle Tower -gText_AnabelWonSilver:: @ 82C843F +gText_AnabelWonSilver:: .string "It's very disappointing…$" -gText_AnabelDefeatSilver:: @ 82C8458 +gText_AnabelDefeatSilver:: .string "Okay, I understand…$" -gText_AnabelWonGold:: @ 82C846C +gText_AnabelWonGold:: .string "I'm terribly sorry…$" -gText_AnabelDefeatGold:: @ 82C8480 +gText_AnabelDefeatGold:: .string "Thank you…$" @ Battle Dome -gText_TuckerWonSilver:: @ 82C848B +gText_TuckerWonSilver:: .string "Ahahaha! Aren't you embarrassed?\n" .string "Everyone's watching!$" -gText_TuckerDefeatSilver:: @ 82C84C1 +gText_TuckerDefeatSilver:: .string "Grr…\n" .string "What the…$" -gText_TuckerWonGold:: @ 82C84D0 +gText_TuckerWonGold:: .string "My DOME ACE title isn't just for show!$" -gText_TuckerDefeatGold:: @ 82C84F7 +gText_TuckerDefeatGold:: .string "Ahahaha!\n" .string "You're inspiring!$" @ Battle Factory -gText_NolandWonSilver:: @ 82C8512 +gText_NolandWonSilver:: .string "Way to work!\n" .string "That was a good lesson, eh?$" -gText_NolandDefeatSilver:: @ 82C853B +gText_NolandDefeatSilver:: .string "Good job!\n" .string "You know what you're doing!$" -gText_NolandWonGold:: @ 82C8561 +gText_NolandWonGold:: .string "Hey, hey, hey!\n" .string "You're finished already?$" -gText_NolandDefeatGold:: @ 82C8589 +gText_NolandDefeatGold:: .string "What happened here?$" @ Battle Pike -gText_LucyWonSilver:: @ 82C859D +gText_LucyWonSilver:: .string "Humph…$" -gText_LucyDefeatSilver:: @ 82C85A4 +gText_LucyDefeatSilver:: .string "Urk…$" -gText_LucyWonGold:: @ 82C85A9 +gText_LucyWonGold:: .string "Hah!$" -gText_LucyDefeatGold:: @ 82C85AE +gText_LucyDefeatGold:: .string "Darn!$" @ Battle Arena -gText_GretaWonSilver:: @ 82C85B4 +gText_GretaWonSilver:: .string "Oh, come on!\n" .string "You have to try harder than that!$" -gText_GretaDefeatSilver:: @ 82C85E3 +gText_GretaDefeatSilver:: .string "No way!\n" .string "Good job!$" -gText_GretaWonGold:: @ 82C85F5 +gText_GretaWonGold:: .string "Heheh!\n" .string "What did you expect?$" -gText_GretaDefeatGold:: @ 82C8611 +gText_GretaDefeatGold:: .string "Huh?\n" .string "Are you serious?!$" @ Battle Palace -gText_SpenserWonSilver:: @ 82C8628 +gText_SpenserWonSilver:: .string "Your POKéMON are wimpy because\n" .string "you're wimpy as a TRAINER!$" -gText_SpenserDefeatSilver:: @ 82C8662 +gText_SpenserDefeatSilver:: .string "Ah…\n" .string "Now this is something else…$" -gText_SpenserWonGold:: @ 82C8682 +gText_SpenserWonGold:: .string "Gwahahaha!\n" .string "My brethren, we have nothing to fear!$" -gText_SpenserDefeatGold:: @ 82C86B3 +gText_SpenserDefeatGold:: .string "Gwah!\n" .string "Hahahaha!$" @ Battle Pyramid -gText_BrandonWonSilver:: @ 82C86C3 +gText_BrandonWonSilver:: .string "Hey! What's wrong with you!\n" .string "Let's see some effort! Get up!$" -gText_BrandonDefeatSilver:: @ 82C86FE +gText_BrandonDefeatSilver:: .string "That's it! You've done great!\n" .string "You've worked hard for this!$" -gText_BrandonWonGold:: @ 82C8739 +gText_BrandonWonGold:: .string "Hey! Don't you give up now!\n" .string "Get up! Don't lose faith in yourself!$" -gText_BrandonDefeatGold:: @ 82C877B +gText_BrandonDefeatGold:: .string "That's it! You've done it!\n" .string "You kept working for this!$" diff --git a/data/text/lottery_corner.inc b/data/text/lottery_corner.inc index 102e6b4a279f..44571ef5626e 100644 --- a/data/text/lottery_corner.inc +++ b/data/text/lottery_corner.inc @@ -1,4 +1,4 @@ -LilycoveCity_DepartmentStore_1F_Text_LotteryCornerDrawTicket: @ 82A6390 +LilycoveCity_DepartmentStore_1F_Text_LotteryCornerDrawTicket: .string "This is the POKéMON LOTTERY CORNER.\p" .string "All shoppers at our DEPARTMENT STORE\n" .string "get to draw a POKéMON LOTO TICKET.\p" @@ -8,70 +8,70 @@ LilycoveCity_DepartmentStore_1F_Text_LotteryCornerDrawTicket: @ 82A6390 .string "Would you like to draw a POKéMON\n" .string "LOTO TICKET?$" -LilycoveCity_DepartmentStore_1F_Text_ComeBackTomorrow: @ 82A6496 +LilycoveCity_DepartmentStore_1F_Text_ComeBackTomorrow: .string "Please come back tomorrow.$" -LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain: @ 82A64B1 +LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain: .string "Please do visit again.$" -LilycoveCity_DepartmentStore_1F_Text_PleasePickTicket: @ 82A64C8 +LilycoveCity_DepartmentStore_1F_Text_PleasePickTicket: .string "Please pick a LOTO TICKET.\n" .string "…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}…{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}{PAUSE 0x0F}$" -LilycoveCity_DepartmentStore_1F_Text_TicketNumberIsXPleaseWait: @ 82A650B +LilycoveCity_DepartmentStore_1F_Text_TicketNumberIsXPleaseWait: .string "The LOTO TICKET number is {STR_VAR_1}.\p" .string "I need to run a check on this number\n" .string "to see if it matches any of your\l" .string "POKéMON's ID numbers. Please wait.$" -LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPartyMon: @ 82A6592 +LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPartyMon: .string "Congratulations!\p" .string "The ID number of your team's\n" .string "{STR_VAR_1} matches your\l" .string "LOTO TICKET's number!$" -LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPCMon: @ 82A65E6 +LilycoveCity_DepartmentStore_1F_Text_TicketMatchesPCMon: .string "Congratulations!\p" .string "The ID number of your PC-boxed\n" .string "{STR_VAR_1} matches your\l" .string "LOTO TICKET's number!$" -LilycoveCity_DepartmentStore_1F_Text_NoNumbersMatched: @ 82A663C +LilycoveCity_DepartmentStore_1F_Text_NoNumbersMatched: .string "I'm sorry.\n" .string "None of the numbers matched.$" -LilycoveCity_DepartmentStore_1F_Text_TwoDigitsMatched: @ 82A6664 +LilycoveCity_DepartmentStore_1F_Text_TwoDigitsMatched: .string "Two digits matched, so you win the\n" .string "third prize!\l" .string "You've won the {STR_VAR_1}!$" -LilycoveCity_DepartmentStore_1F_Text_ThreeDigitsMatched: @ 82A66A7 +LilycoveCity_DepartmentStore_1F_Text_ThreeDigitsMatched: .string "Three digits matched, so you win the\n" .string "second prize!\l" .string "You've won the {STR_VAR_1}!$" -LilycoveCity_DepartmentStore_1F_Text_FourDigitsMatched: @ 82A66ED +LilycoveCity_DepartmentStore_1F_Text_FourDigitsMatched: .string "Four digits matched, so you win the\n" .string "first prize!\l" .string "You've won the {STR_VAR_1}!$" -LilycoveCity_DepartmentStore_1F_Text_AllFiveDigitsMatched: @ 82A6731 +LilycoveCity_DepartmentStore_1F_Text_AllFiveDigitsMatched: .string "Oh, my goodness, all five digits\n" .string "matched!\p" .string "You've won the jackpot prize!\n" .string "You've won the {STR_VAR_1}!$" -LilycoveCity_DepartmentStore_1F_Text_NoRoomForThis: @ 82A678C +LilycoveCity_DepartmentStore_1F_Text_NoRoomForThis: .string "Oh?\n" .string "You seem to have no room for this.\p" .string "Please make room in your BAG and\n" .string "let me know.$" -LilycoveCity_DepartmentStore_1F_Text_PrizeWeveBeenHolding: @ 82A67E1 +LilycoveCity_DepartmentStore_1F_Text_PrizeWeveBeenHolding: .string "{PLAYER}?\n" .string "Yes, I've been expecting you.\p" .string "This is the prize we've been holding\n" .string "for you.$" -LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain2: @ 82A6831 +LilycoveCity_DepartmentStore_1F_Text_PleaseVisitAgain2: .string "Please do visit again.$" diff --git a/data/text/mart_clerk.inc b/data/text/mart_clerk.inc index 2357963be82d..891fb937e00d 100644 --- a/data/text/mart_clerk.inc +++ b/data/text/mart_clerk.inc @@ -1,10 +1,10 @@ -gText_HowMayIServeYou:: @ 8272A21 +gText_HowMayIServeYou:: .string "Welcome!\p" .string "How may I serve you?$" -gText_PleaseComeAgain:: @ 8272A3F +gText_PleaseComeAgain:: .string "Please come again!$" -gText_PlayerWhatCanIDoForYou:: @ 8272A52 +gText_PlayerWhatCanIDoForYou:: .string "{PLAYER}{STRING 5}, welcome!\p" .string "What can I do for you?$" diff --git a/data/text/match_call.inc b/data/text/match_call.inc index 568ed2a8676b..63aac8aa8846 100644 --- a/data/text/match_call.inc +++ b/data/text/match_call.inc @@ -1,4 +1,4 @@ -MatchCall_WildBattleText1:: @ 82A971C +MatchCall_WildBattleText1:: .string "Hi! {PLAYER}{KUN}, hello!\n" .string "This is {STR_VAR_1}.\p" .string "I saw this {STR_VAR_2} a while back\n" @@ -6,7 +6,7 @@ MatchCall_WildBattleText1:: @ 82A971C .string "It was so close, too!\n" .string "Well, see you again!$" -MatchCall_WildBattleText2:: @ 82A9798 +MatchCall_WildBattleText2:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's {STR_VAR_1}.\p" .string "I tried to catch a nice {STR_VAR_2}\n" @@ -15,7 +15,7 @@ MatchCall_WildBattleText2:: @ 82A9798 .string "I was sure disappointed!\p" .string "Okay, bye!$" -MatchCall_WildBattleText3:: @ 82A9813 +MatchCall_WildBattleText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "I just took a shot at catching\n" @@ -24,7 +24,7 @@ MatchCall_WildBattleText3:: @ 82A9813 .string "It spoiled my day…\n" .string "All right, see you!$" -MatchCall_WildBattleText4:: @ 82A98A8 +MatchCall_WildBattleText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "You know the POKéMON {STR_VAR_2}?\n" @@ -35,7 +35,7 @@ MatchCall_WildBattleText4:: @ 82A98A8 .string "sure, though.\p" .string "Okay, catch you later.$" -MatchCall_WildBattleText5:: @ 82A9977 +MatchCall_WildBattleText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\l" .string "Catching any POKéMON lately?\p" @@ -43,7 +43,7 @@ MatchCall_WildBattleText5:: @ 82A9977 .string "nabbing one, but it got loose.\p" .string "Right, take care!$" -MatchCall_WildBattleText6:: @ 82A99FD +MatchCall_WildBattleText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\l" .string "Caught any POKéMON lately?\p" @@ -51,7 +51,7 @@ MatchCall_WildBattleText6:: @ 82A99FD .string "But it evaded me somehow.\p" .string "You take care.$" -MatchCall_WildBattleText7:: @ 82A9A78 +MatchCall_WildBattleText7:: .string "…Uh, {PLAYER}{KUN}?\n" .string "It's me, {STR_VAR_1}.\p" .string "Oh, wait! Wait!\n" @@ -59,7 +59,7 @@ MatchCall_WildBattleText7:: @ 82A9A78 .string "Aaarrrgh! It bolted loose!\n" .string "That wasn't just close!$" -MatchCall_WildBattleText8:: @ 82A9AE8 +MatchCall_WildBattleText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\p" .string "Have you had success catching\n" @@ -69,7 +69,7 @@ MatchCall_WildBattleText8:: @ 82A9AE8 .string "I need to try harder!\n" .string "See you again!$" -MatchCall_WildBattleText9:: @ 82A9BA7 +MatchCall_WildBattleText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "So? Are you getting more POKéMON\n" @@ -78,7 +78,7 @@ MatchCall_WildBattleText9:: @ 82A9BA7 .string "They all get away from me!\p" .string "See you!$" -MatchCall_WildBattleText10:: @ 82A9C36 +MatchCall_WildBattleText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "Listen, I came within a whisker of\n" @@ -87,7 +87,7 @@ MatchCall_WildBattleText10:: @ 82A9C36 .string "I need to try harder.\n" .string "See you around.$" -MatchCall_WildBattleText11:: @ 82A9CC8 +MatchCall_WildBattleText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "How are things with you?\p" @@ -95,7 +95,7 @@ MatchCall_WildBattleText11:: @ 82A9CC8 .string "earlier, but it managed to flee.\p" .string "I feel defeated…$" -MatchCall_WildBattleText12:: @ 82A9D44 +MatchCall_WildBattleText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you still catching POKéMON?\p" @@ -103,7 +103,7 @@ MatchCall_WildBattleText12:: @ 82A9D44 .string "myself, but it's not so easy.\p" .string "The way of POKéMON is deep!$" -MatchCall_WildBattleText13:: @ 82A9DD7 +MatchCall_WildBattleText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "Have you been catching POKéMON?\p" @@ -111,7 +111,7 @@ MatchCall_WildBattleText13:: @ 82A9DD7 .string "myself, but with little success.\p" .string "The way of POKéMON is deep!$" -MatchCall_WildBattleText14:: @ 82A9E70 +MatchCall_WildBattleText14:: .string "Oh, hi, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1}.\p" .string "Just now, I tried to catch a cute\n" @@ -120,7 +120,7 @@ MatchCall_WildBattleText14:: @ 82A9E70 .string "Oh, you bet I was disappointed!\p" .string "Bye-bye!$" -MatchCall_WildBattleText15:: @ 82A9EFD +MatchCall_WildBattleText15:: .string "Hey, {PLAYER}!\n" .string "This is {STR_VAR_1}!\p" .string "I've been thinking about trying\n" @@ -130,7 +130,7 @@ MatchCall_WildBattleText15:: @ 82A9EFD .string "I'm at my wit's end!\n" .string "See you around!$" -MatchCall_NegativeBattleText1:: @ 82A9FAB +MatchCall_NegativeBattleText1:: .string "Hi! {PLAYER}{KUN}, hello!\n" .string "This is {STR_VAR_1}.\p" .string "I tried battling another TRAINER,\n" @@ -138,7 +138,7 @@ MatchCall_NegativeBattleText1:: @ 82A9FAB .string "It was really disappointing.\n" .string "Well, see you again!$" -MatchCall_NegativeBattleText2:: @ 82AA028 +MatchCall_NegativeBattleText2:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's {STR_VAR_1}.\p" .string "I challenged someone else after\n" @@ -146,14 +146,14 @@ MatchCall_NegativeBattleText2:: @ 82AA028 .string "I came close, but I ended up\n" .string "losing. Oh, well!$" -MatchCall_NegativeBattleText3:: @ 82AA099 +MatchCall_NegativeBattleText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "I just got cleaned in a battle.\p" .string "I guess I need to raise my team\n" .string "some more!$" -MatchCall_NegativeBattleText4:: @ 82AA100 +MatchCall_NegativeBattleText4:: .string "Hey, {PLAYER}.\n" .string "{STR_VAR_1} here.\p" .string "I tried another battle yesterday,\n" @@ -161,7 +161,7 @@ MatchCall_NegativeBattleText4:: @ 82AA100 .string "My team needs more raising.\n" .string "Okay, catch you later.$" -MatchCall_NegativeBattleText5:: @ 82AA188 +MatchCall_NegativeBattleText5:: .string "Hiya, {PLAYER}!\n" .string "It's {STR_VAR_1}.\p" .string "How are things with you?\p" @@ -170,7 +170,7 @@ MatchCall_NegativeBattleText5:: @ 82AA188 .string "I can't get it together.\n" .string "Right, take care!$" -MatchCall_NegativeBattleText6:: @ 82AA214 +MatchCall_NegativeBattleText6:: .string "Hey, {PLAYER}.\n" .string "{STR_VAR_1} here.\p" .string "How's it going for you?\p" @@ -179,7 +179,7 @@ MatchCall_NegativeBattleText6:: @ 82AA214 .string "I can't get into the groove.\n" .string "You take care.$" -MatchCall_NegativeBattleText7:: @ 82AA2A1 +MatchCall_NegativeBattleText7:: .string "{STR_VAR_1} here.\n" .string "How's it going lately?\p" .string "I lost a battle yesterday,\n" @@ -187,7 +187,7 @@ MatchCall_NegativeBattleText7:: @ 82AA2A1 .string "I have to devise a plan…\n" .string "See you.$" -MatchCall_NegativeBattleText8:: @ 82AA31B +MatchCall_NegativeBattleText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\p" .string "How are your POKéMON doing?\n" @@ -195,7 +195,7 @@ MatchCall_NegativeBattleText8:: @ 82AA31B .string "I need to try harder!\n" .string "See you again!$" -MatchCall_NegativeBattleText9:: @ 82AA3A8 +MatchCall_NegativeBattleText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "Listen, listen, you have to hear\n" @@ -204,7 +204,7 @@ MatchCall_NegativeBattleText9:: @ 82AA3A8 .string "but I lost at the last second.\p" .string "Oh, it burns me up!$" -MatchCall_NegativeBattleText10:: @ 82AA442 +MatchCall_NegativeBattleText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "A little earlier, I was in a battle.\n" @@ -212,14 +212,14 @@ MatchCall_NegativeBattleText10:: @ 82AA442 .string "I need to raise my POKéMON more.\n" .string "See you around.$" -MatchCall_NegativeBattleText11:: @ 82AA4C5 +MatchCall_NegativeBattleText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "How are your POKéMON?\p" .string "I just lost yet another battle.\p" .string "Well, see you!$" -MatchCall_NegativeBattleText12:: @ 82AA520 +MatchCall_NegativeBattleText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you still battling hard?\p" @@ -227,7 +227,7 @@ MatchCall_NegativeBattleText12:: @ 82AA520 .string "been training my team all over.\p" .string "Let's meet again.$" -MatchCall_NegativeBattleText13:: @ 82AA5AD +MatchCall_NegativeBattleText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\p" .string "I hope you've been keeping well.\p" @@ -236,7 +236,7 @@ MatchCall_NegativeBattleText13:: @ 82AA5AD .string "{PLAYER}{KUN}, try to be active like me.\n" .string "See you again!$" -MatchCall_NegativeBattleText14:: @ 82AA64D +MatchCall_NegativeBattleText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "Are you doing good?\p" @@ -244,7 +244,7 @@ MatchCall_NegativeBattleText14:: @ 82AA64D .string "though.\p" .string "Bye-bye!$" -MatchCall_PositiveBattleText1:: @ 82AA6AF +MatchCall_PositiveBattleText1:: .string "Hi! {PLAYER}{KUN}, hello!\n" .string "This is {STR_VAR_1}!\p" .string "I battled another TRAINER earlier.\n" @@ -252,13 +252,13 @@ MatchCall_PositiveBattleText1:: @ 82AA6AF .string "My {STR_VAR_2} really worked hard\n" .string "for me. This is so great!$" -MatchCall_PositiveBattleText2:: @ 82AA730 +MatchCall_PositiveBattleText2:: .string "Hello, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}!\p" .string "I had a battle yesterday and\n" .string "I won! It's fantastic!$" -MatchCall_PositiveBattleText3:: @ 82AA77A +MatchCall_PositiveBattleText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}!\l" .string "How's your battling?\p" @@ -267,7 +267,7 @@ MatchCall_PositiveBattleText3:: @ 82AA77A .string "The next time I battle you,\n" .string "{PLAYER}, it won't be me losing!$" -MatchCall_PositiveBattleText4:: @ 82AA81C +MatchCall_PositiveBattleText4:: .string "Hey, {PLAYER}.\n" .string "{STR_VAR_1} here.\p" .string "I had a match earlier.\n" @@ -275,7 +275,7 @@ MatchCall_PositiveBattleText4:: @ 82AA81C .string "My {STR_VAR_2} put on one\n" .string "inspired showing.$" -MatchCall_PositiveBattleText5:: @ 82AA88C +MatchCall_PositiveBattleText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "How are things with you?\n" @@ -285,7 +285,7 @@ MatchCall_PositiveBattleText5:: @ 82AA88C .string "You wait. I'm going to beat you\n" .string "next time! Right, take care!$" -MatchCall_PositiveBattleText6:: @ 82AA934 +MatchCall_PositiveBattleText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "How's it going for you?\p" @@ -294,7 +294,7 @@ MatchCall_PositiveBattleText6:: @ 82AA934 .string "When we have our next battle,\n" .string "I'm sure not going to lose!$" -MatchCall_PositiveBattleText7:: @ 82AA9D3 +MatchCall_PositiveBattleText7:: .string "{PLAYER}{KUN}?\n" .string "{STR_VAR_1} here.\p" .string "My {STR_VAR_2} is a force!\n" @@ -302,7 +302,7 @@ MatchCall_PositiveBattleText7:: @ 82AA9D3 .string "I can't wait to have a rematch\n" .string "with you.$" -MatchCall_PositiveBattleText8:: @ 82AAA40 +MatchCall_PositiveBattleText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\p" .string "I hope you've been well.\n" @@ -311,7 +311,7 @@ MatchCall_PositiveBattleText8:: @ 82AAA40 .string "hard to get the win.\p" .string "See you again!$" -MatchCall_PositiveBattleText9:: @ 82AAAE4 +MatchCall_PositiveBattleText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "How are your POKéMON holding up?\n" @@ -321,7 +321,7 @@ MatchCall_PositiveBattleText9:: @ 82AAAE4 .string "I wish I could've shown you!\n" .string "See you again!$" -MatchCall_PositiveBattleText10:: @ 82AAB8C +MatchCall_PositiveBattleText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "How has life been treating you?\p" @@ -330,7 +330,7 @@ MatchCall_PositiveBattleText10:: @ 82AAB8C .string "I just won a battle with them.\n" .string "See you around.$" -MatchCall_PositiveBattleText11:: @ 82AAC25 +MatchCall_PositiveBattleText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "Been in any battles lately?\n" @@ -338,7 +338,7 @@ MatchCall_PositiveBattleText11:: @ 82AAC25 .string "I'm on a roll! Gahahaha!\n" .string "Well, see you!$" -MatchCall_PositiveBattleText12:: @ 82AAC9D +MatchCall_PositiveBattleText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\p" .string "I trust you've been well?\n" @@ -347,7 +347,7 @@ MatchCall_PositiveBattleText12:: @ 82AAC9D .string "I'm not stepping aside to you\l" .string "youngsters yet!$" -MatchCall_PositiveBattleText13:: @ 82AAD41 +MatchCall_PositiveBattleText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\p" .string "I hope you've been keeping well.\n" @@ -357,7 +357,7 @@ MatchCall_PositiveBattleText13:: @ 82AAD41 .string "quite yet!\p" .string "See you again!$" -MatchCall_PositiveBattleText14:: @ 82AAE00 +MatchCall_PositiveBattleText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I was in a battle recently, and my\n" @@ -365,7 +365,7 @@ MatchCall_PositiveBattleText14:: @ 82AAE00 .string "I wish you could have seen it,\n" .string "{PLAYER}{KUN}. Bye-bye!$" -MatchCall_SameRouteBattleRequestText1:: @ 82AAE7F +MatchCall_SameRouteBattleRequestText1:: .string "Hi! {PLAYER}, hello!\n" .string "This is {STR_VAR_1}.\p" .string "Huh? Wait, you're near\n" @@ -373,7 +373,7 @@ MatchCall_SameRouteBattleRequestText1:: @ 82AAE7F .string "Oh, wow, we have to battle, then!\n" .string "I'll be waiting! See you!$" -MatchCall_SameRouteBattleRequestText2:: @ 82AAEF1 +MatchCall_SameRouteBattleRequestText2:: .string "Hello, {PLAYER}!\n" .string "It's {STR_VAR_1}.\p" .string "Oh? You happen to be around\n" @@ -381,7 +381,7 @@ MatchCall_SameRouteBattleRequestText2:: @ 82AAEF1 .string "Would you like to battle now?\n" .string "I'll wait for you! See you!$" -MatchCall_SameRouteBattleRequestText3:: @ 82AAF69 +MatchCall_SameRouteBattleRequestText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "Oh, hey, are you near\n" @@ -391,7 +391,7 @@ MatchCall_SameRouteBattleRequestText3:: @ 82AAF69 .string "I'm not losing again!\n" .string "I'll be waiting! Catch you soon!$" -MatchCall_SameRouteBattleRequestText4:: @ 82AB010 +MatchCall_SameRouteBattleRequestText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "Whereabouts are you now?\n" @@ -399,7 +399,7 @@ MatchCall_SameRouteBattleRequestText4:: @ 82AB010 .string "Want to battle now?\n" .string "I'll wait for you. See you!$" -MatchCall_SameRouteBattleRequestText5:: @ 82AB076 +MatchCall_SameRouteBattleRequestText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\l" .string "How are things with you?\p" @@ -410,7 +410,7 @@ MatchCall_SameRouteBattleRequestText5:: @ 82AB076 .string "I'll keep an eye out for you.\n" .string "See you soon!$" -MatchCall_SameRouteBattleRequestText6:: @ 82AB11A +MatchCall_SameRouteBattleRequestText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\l" .string "How are your POKéMON keeping?\p" @@ -421,7 +421,7 @@ MatchCall_SameRouteBattleRequestText6:: @ 82AB11A .string "I can wait, sure.\n" .string "See you!$" -MatchCall_SameRouteBattleRequestText7:: @ 82AB1B4 +MatchCall_SameRouteBattleRequestText7:: .string "…Er, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here…\p" .string "Oh, you happen to be around\n" @@ -431,7 +431,7 @@ MatchCall_SameRouteBattleRequestText7:: @ 82AB1B4 .string "I'll show you my POKéMON.\n" .string "I'll wait for you.$" -MatchCall_SameRouteBattleRequestText8:: @ 82AB23D +MatchCall_SameRouteBattleRequestText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\p" .string "I hope you're doing well.\n" @@ -441,7 +441,7 @@ MatchCall_SameRouteBattleRequestText8:: @ 82AB23D .string "I'll wait for you.\n" .string "See you soon!$" -MatchCall_SameRouteBattleRequestText9:: @ 82AB2E9 +MatchCall_SameRouteBattleRequestText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "Are you keeping up?\n" @@ -450,7 +450,7 @@ MatchCall_SameRouteBattleRequestText9:: @ 82AB2E9 .string "should battle?\p" .string "Don't keep me waiting too long!$" -MatchCall_SameRouteBattleRequestText10:: @ 82AB382 +MatchCall_SameRouteBattleRequestText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "How are things with you?\n" @@ -459,7 +459,7 @@ MatchCall_SameRouteBattleRequestText10:: @ 82AB382 .string "I'm ready and waiting.\n" .string "Be quick!$" -MatchCall_SameRouteBattleRequestText11:: @ 82AB410 +MatchCall_SameRouteBattleRequestText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "Ah, so where you are now is\n" @@ -469,7 +469,7 @@ MatchCall_SameRouteBattleRequestText11:: @ 82AB410 .string "I'll wait around for you!\n" .string "See you real quick!$" -MatchCall_SameRouteBattleRequestText12:: @ 82AB4B0 +MatchCall_SameRouteBattleRequestText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Where might you be now?\p" @@ -480,7 +480,7 @@ MatchCall_SameRouteBattleRequestText12:: @ 82AB4B0 .string "I can wait.\n" .string "See you!$" -MatchCall_SameRouteBattleRequestText13:: @ 82AB538 +MatchCall_SameRouteBattleRequestText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\p" .string "I hope you've been keeping well.\n" @@ -490,7 +490,7 @@ MatchCall_SameRouteBattleRequestText13:: @ 82AB538 .string "I'll wait for you.\n" .string "Bye for now.$" -MatchCall_SameRouteBattleRequestText14:: @ 82AB5E4 +MatchCall_SameRouteBattleRequestText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "You're what? …{STR_VAR_2}?\n" @@ -500,14 +500,14 @@ MatchCall_SameRouteBattleRequestText14:: @ 82AB5E4 .string "I'll be looking for you!\n" .string "Bye-bye!$" -MatchCall_DifferentRouteBattleRequestText1:: @ 82AB670 +MatchCall_DifferentRouteBattleRequestText1:: .string "Hi! {PLAYER}, hello!\n" .string "This is {STR_VAR_1}.\p" .string "Want to have a battle with me?\p" .string "I'll be waiting for you around\n" .string "{STR_VAR_2}!$" -MatchCall_DifferentRouteBattleRequestText2:: @ 82AB6CD +MatchCall_DifferentRouteBattleRequestText2:: .string "Hello, {PLAYER}!\n" .string "It's {STR_VAR_1}.\p" .string "Would you like to have a battle\n" @@ -515,7 +515,7 @@ MatchCall_DifferentRouteBattleRequestText2:: @ 82AB6CD .string "You can find me around\n" .string "{STR_VAR_2}. I'll be waiting!$" -MatchCall_DifferentRouteBattleRequestText3:: @ 82AB73C +MatchCall_DifferentRouteBattleRequestText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "My POKéMON have grown a lot\n" @@ -526,7 +526,7 @@ MatchCall_DifferentRouteBattleRequestText3:: @ 82AB73C .string "I'll be waiting for you around\n" .string "{STR_VAR_2}.$" -MatchCall_DifferentRouteBattleRequestText4:: @ 82AB808 +MatchCall_DifferentRouteBattleRequestText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\l" .string "How are things with you?\p" @@ -537,7 +537,7 @@ MatchCall_DifferentRouteBattleRequestText4:: @ 82AB808 .string "Let's meet up around\n" .string "{STR_VAR_2}, okay?$" -MatchCall_DifferentRouteBattleRequestText5:: @ 82AB8B7 +MatchCall_DifferentRouteBattleRequestText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "My POKéMON are growing up in\n" @@ -547,7 +547,7 @@ MatchCall_DifferentRouteBattleRequestText5:: @ 82AB8B7 .string "I'll keep an eye out for you around\n" .string "{STR_VAR_2}. See you soon!$" -MatchCall_DifferentRouteBattleRequestText6:: @ 82AB95D +MatchCall_DifferentRouteBattleRequestText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\l" .string "I hope you're on top of things.\p" @@ -557,7 +557,7 @@ MatchCall_DifferentRouteBattleRequestText6:: @ 82AB95D .string "come to {STR_VAR_2}.\p" .string "See you!$" -MatchCall_DifferentRouteBattleRequestText7:: @ 82ABA03 +MatchCall_DifferentRouteBattleRequestText7:: .string "…Er, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here…\l" .string "So? Are your POKéMON growing?\p" @@ -567,7 +567,7 @@ MatchCall_DifferentRouteBattleRequestText7:: @ 82ABA03 .string "Come see me for a match.\p" .string "See you around.$" -MatchCall_DifferentRouteBattleRequestText8:: @ 82ABA9F +MatchCall_DifferentRouteBattleRequestText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\p" .string "I hope you're doing well.\n" @@ -577,7 +577,7 @@ MatchCall_DifferentRouteBattleRequestText8:: @ 82ABA9F .string "I'll be around {STR_VAR_2}.\n" .string "Until then, good-bye!$" -MatchCall_DifferentRouteBattleRequestText9:: @ 82ABB62 +MatchCall_DifferentRouteBattleRequestText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\l" .string "How are your POKéMON doing?\p" @@ -587,7 +587,7 @@ MatchCall_DifferentRouteBattleRequestText9:: @ 82ABB62 .string "so let's battle if you're close by.\p" .string "Hope I see you soon!$" -MatchCall_DifferentRouteBattleRequestText10:: @ 82ABC26 +MatchCall_DifferentRouteBattleRequestText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\l" .string "So, how are things with you?\p" @@ -598,7 +598,7 @@ MatchCall_DifferentRouteBattleRequestText10:: @ 82ABC26 .string "I'll be around {STR_VAR_2}.\n" .string "Come see me if you're close.$" -MatchCall_DifferentRouteBattleRequestText11:: @ 82ABCE9 +MatchCall_DifferentRouteBattleRequestText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "Where might you be now?\p" @@ -608,7 +608,7 @@ MatchCall_DifferentRouteBattleRequestText11:: @ 82ABCE9 .string "I'm around {STR_VAR_2} now.\n" .string "I hope you'll seek us out.$" -MatchCall_DifferentRouteBattleRequestText12:: @ 82ABDA2 +MatchCall_DifferentRouteBattleRequestText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\p" .string "I should tell you, my POKéMON have\n" @@ -618,7 +618,7 @@ MatchCall_DifferentRouteBattleRequestText12:: @ 82ABDA2 .string "We'll be around {STR_VAR_2}.\n" .string "Come see us anytime!$" -MatchCall_DifferentRouteBattleRequestText13:: @ 82ABE5E +MatchCall_DifferentRouteBattleRequestText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "Are your POKéMON keeping well?\p" @@ -629,7 +629,7 @@ MatchCall_DifferentRouteBattleRequestText13:: @ 82ABE5E .string "If you're near {STR_VAR_2},\n" .string "do come see us.$" -MatchCall_DifferentRouteBattleRequestText14:: @ 82ABF36 +MatchCall_DifferentRouteBattleRequestText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "Keeping well, I hope.\p" @@ -641,7 +641,7 @@ MatchCall_DifferentRouteBattleRequestText14:: @ 82ABF36 .string "{STR_VAR_2}.\p" .string "Come see us anytime, okay?$" -MatchCall_PersonalizedText1:: @ 82AC009 +MatchCall_PersonalizedText1:: .string "It's me, the mountain-loving\n" .string "{STR_VAR_1}!\p" .string "Well, since we met, have you grown\n" @@ -650,7 +650,7 @@ MatchCall_PersonalizedText1:: @ 82AC009 .string "Next time, we'll meet somewhere\n" .string "around {STR_VAR_2}.$" -MatchCall_PersonalizedText2:: @ 82AC0BD +MatchCall_PersonalizedText2:: .string "This is {STR_VAR_1}.\n" .string "Hello.\p" .string "I was just telling a new TRAINER\n" @@ -661,7 +661,7 @@ MatchCall_PersonalizedText2:: @ 82AC0BD .string "that everyone will admire.\p" .string "I hope we meet again!$" -MatchCall_PersonalizedText3:: @ 82AC18C +MatchCall_PersonalizedText3:: .string "Hello! It's {STR_VAR_1}.\p" .string "I love where I am now.\n" .string "It's pleasant with sweet aromas!\p" @@ -669,7 +669,7 @@ MatchCall_PersonalizedText3:: @ 82AC18C .string "and they burst into bloom.\p" .string "See you again sometime!$" -MatchCall_PersonalizedText4:: @ 82AC228 +MatchCall_PersonalizedText4:: .string "Hello! Thirty years of exploration,\n" .string "{STR_VAR_1} at your service!\p" .string "It seems that you're energetically\n" @@ -679,7 +679,7 @@ MatchCall_PersonalizedText4:: @ 82AC228 .string "Now, if you'll excuse me,\n" .string "I have ruins to explore.$" -MatchCall_PersonalizedText5:: @ 82AC30C +MatchCall_PersonalizedText5:: .string "It's {STR_VAR_1}!\p" .string "Know what I'm doing today?\n" .string "Looking at waves from the beach!\p" @@ -687,7 +687,7 @@ MatchCall_PersonalizedText5:: @ 82AC30C .string "The sea is the prettiest from here.\l" .string "I'm getting hungry, so bye-bye!$" -MatchCall_PersonalizedText6:: @ 82AC3B6 +MatchCall_PersonalizedText6:: .string "Munch-chew…\n" .string "Oh, hi, it's {STR_VAR_1}.\l" .string "I love eating on the beach.\p" @@ -695,7 +695,7 @@ MatchCall_PersonalizedText6:: @ 82AC3B6 .string "great. We're fully fueled!\l" .string "I'm going for a swim. Bye!$" -MatchCall_PersonalizedText7:: @ 82AC446 +MatchCall_PersonalizedText7:: .string "Hello, this is {STR_VAR_1}…\p" .string "I've grown a little jaded with this\n" .string "whole COOLTRAINER thing…\p" @@ -711,7 +711,7 @@ MatchCall_PersonalizedText7:: @ 82AC446 .string "But when I see you next,\n" .string "don't worry, I won't whine!$" -MatchCall_PersonalizedText8:: @ 82AC5C7 +MatchCall_PersonalizedText8:: .string "Yahoo, it's {STR_VAR_1}!\n" .string "How do you do?\p" .string "I've been raising my POKéMON with\n" @@ -721,7 +721,7 @@ MatchCall_PersonalizedText8:: @ 82AC5C7 .string "Isn't it great to have TRAINER\n" .string "friends? Let's meet again!$" -MatchCall_PersonalizedText9:: @ 82AC682 +MatchCall_PersonalizedText9:: .string "It's {STR_VAR_1}…\n" .string "Right now, behind you…\l" .string "Wasn't there something…?\p" @@ -733,7 +733,7 @@ MatchCall_PersonalizedText9:: @ 82AC682 .string "Giggle…\n" .string "Farewell…$" -MatchCall_PersonalizedText10:: @ 82AC755 +MatchCall_PersonalizedText10:: .string "This is {STR_VAR_1}.\n" .string "How do you do?\p" .string "Isn't it convenient that we can\n" @@ -744,7 +744,7 @@ MatchCall_PersonalizedText10:: @ 82AC755 .string "I should be going now.\n" .string "I'm glad we had this chat.$" -MatchCall_PersonalizedText11:: @ 82AC82C +MatchCall_PersonalizedText11:: .string "It's {STR_VAR_1}!\n" .string "Will you listen to this?\p" .string "I like the SAFARI ZONE a lot,\n" @@ -756,7 +756,7 @@ MatchCall_PersonalizedText11:: @ 82AC82C .string "I'm off to the SAFARI ZONE again!\n" .string "Catch you!$" -MatchCall_PersonalizedText12:: @ 82AC914 +MatchCall_PersonalizedText12:: .string "Hello, {STR_VAR_1} here.\n" .string "Yes, correct, I am rich, yes.\p" .string "I should tell you, my wealth has\n" @@ -770,7 +770,7 @@ MatchCall_PersonalizedText12:: @ 82AC914 .string "Oh, you must excuse me, I have this\n" .string "formal dinner to attend.$" -MatchCall_PersonalizedText13:: @ 82ACA59 +MatchCall_PersonalizedText13:: .string "Ufufufufu…\n" .string "It's me, {STR_VAR_1}…\p" .string "Can you guess what I'm seeing?\n" @@ -780,7 +780,7 @@ MatchCall_PersonalizedText13:: @ 82ACA59 .string "I… I'm kind of busy now.\n" .string "I have to go.$" -MatchCall_PersonalizedText14:: @ 82ACB02 +MatchCall_PersonalizedText14:: .string "Oh, it's {STR_VAR_1}!\p" .string "I was just thinking I'm getting\n" .string "bored of the ABANDONED SHIP.\p" @@ -794,7 +794,7 @@ MatchCall_PersonalizedText14:: @ 82ACB02 .string "door to a match.\p" .string "Be seeing you!$" -MatchCall_PersonalizedText15:: @ 82ACC3F +MatchCall_PersonalizedText15:: .string "I'm {STR_VAR_1}!\n" .string "The man of the sea!\p" .string "You know what I think?\p" @@ -806,7 +806,7 @@ MatchCall_PersonalizedText15:: @ 82ACC3F .string "It's a great training opportunity!\n" .string "Sorry, but I have to go!$" -MatchCall_PersonalizedText16:: @ 82ACD2F +MatchCall_PersonalizedText16:: .string "It's {STR_VAR_1}! Listen, I've been\n" .string "teaching karate to my POKéMON.\p" .string "But now they're better than me!\n" @@ -817,7 +817,7 @@ MatchCall_PersonalizedText16:: @ 82ACD2F .string "We have to battle again!\n" .string "Ugwaah!$" -MatchCall_PersonalizedText17:: @ 82ACE1E +MatchCall_PersonalizedText17:: .string "It's me, {STR_VAR_1}.\n" .string "How're your travels unwinding?\p" .string "…Whoa, is that right?\n" @@ -829,7 +829,7 @@ MatchCall_PersonalizedText17:: @ 82ACE1E .string "I'd better get this tune properly\n" .string "written, so I've got to fly! Later!$" -MatchCall_PersonalizedText18:: @ 82ACF32 +MatchCall_PersonalizedText18:: .string "This is {STR_VAR_1}…\n" .string "Hear my new song.\p" .string "Lalala, {STR_VAR_2}, {STR_VAR_2}!\n" @@ -839,7 +839,7 @@ MatchCall_PersonalizedText18:: @ 82ACF32 .string "{STR_VAR_1} and {STR_VAR_2}…\p" .string "Repeat chorus, fade…$" -MatchCall_PersonalizedText19:: @ 82ACFBE +MatchCall_PersonalizedText19:: .string "I'm {STR_VAR_1}, you know,\n" .string "the camping expert!\p" .string "When we battled, I couldn't help\n" @@ -851,7 +851,7 @@ MatchCall_PersonalizedText19:: @ 82ACFBE .string "Battle with us again, okay?\n" .string "Oh, and let's go camping, too!$" -MatchCall_PersonalizedText20:: @ 82AD0AC +MatchCall_PersonalizedText20:: .string "It's me, me, {STR_VAR_1}!\p" .string "I'd like to climb other mountains\n" .string "than this one, to be honest.\p" @@ -861,7 +861,7 @@ MatchCall_PersonalizedText20:: @ 82AD0AC .string "with ladies around, let me know!\p" .string "Ehehehe, see you around!$" -MatchCall_PersonalizedText21:: @ 82AD194 +MatchCall_PersonalizedText21:: .string "… … … … … …\n" .string "… … … … … …\l" .string "It's {STR_VAR_1}…\p" @@ -869,7 +869,7 @@ MatchCall_PersonalizedText21:: @ 82AD194 .string "… … … … … …\l" .string "That's all today…$" -MatchCall_PersonalizedText22:: @ 82AD1DF +MatchCall_PersonalizedText22:: .string "This is {STR_VAR_1}. Today, I had\n" .string "this feeling I would chat with you.\p" .string "My desire to defeat you builds\n" @@ -879,7 +879,7 @@ MatchCall_PersonalizedText22:: @ 82AD1DF .string "I'm glad you heard me out.\n" .string "See you!$" -MatchCall_PersonalizedText23:: @ 82AD2A8 +MatchCall_PersonalizedText23:: .string "It's {STR_VAR_1}.\p" .string "When there's a strong TRAINER\n" .string "nearby, I can sometimes sense that\l" @@ -889,7 +889,7 @@ MatchCall_PersonalizedText23:: @ 82AD2A8 .string "I'll be waiting for your visit.\n" .string "Bye!$" -MatchCall_PersonalizedText24:: @ 82AD34F +MatchCall_PersonalizedText24:: .string "Hello, this is {STR_VAR_1}.\n" .string "You sound well, {PLAYER}{KUN}.\p" .string "I've traveled around the world,\n" @@ -901,7 +901,7 @@ MatchCall_PersonalizedText24:: @ 82AD34F .string "techniques.\p" .string "I do hope for a rematch.$" -MatchCall_PersonalizedText25:: @ 82AD44E +MatchCall_PersonalizedText25:: .string "Snivel… It's… {STR_VAR_1}…\n" .string "…Sob…\p" .string "ROXANNE chewed me out in class\n" @@ -913,7 +913,7 @@ MatchCall_PersonalizedText25:: @ 82AD44E .string "the TRAINER'S SCHOOL tomorrow!\p" .string "See you later!$" -MatchCall_PersonalizedText26:: @ 82AD53A +MatchCall_PersonalizedText26:: .string "It's {STR_VAR_1}!\p" .string "ROXANNE let me battle with her\n" .string "yesterday.\p" @@ -926,7 +926,7 @@ MatchCall_PersonalizedText26:: @ 82AD53A .string "I'm going to really focus and work!\n" .string "I'd better go!$" -MatchCall_PersonalizedText27:: @ 82AD642 +MatchCall_PersonalizedText27:: .string "Hi, it's ANNA! I'm with my junior\n" .string "partner MEG again today.\p" .string "I really love caring for MEG and\n" @@ -944,7 +944,7 @@ MatchCall_PersonalizedText27:: @ 82AD642 .string "I have to go now.\n" .string "It's time for our snack!$" -MatchCall_PersonalizedText28:: @ 82AD801 +MatchCall_PersonalizedText28:: .string "I love POKéMON!\n" .string "It's {STR_VAR_1} from the FAN CLUB!\p" .string "You have to hear this!\n" @@ -958,7 +958,7 @@ MatchCall_PersonalizedText28:: @ 82AD801 .string "Sorry, but I can't talk now!\n" .string "You'll have to hear this next time!$" -MatchCall_PersonalizedText29:: @ 82AD92E +MatchCall_PersonalizedText29:: .string "Ohoho!\p" .string "This is {STR_VAR_1}! I can't wait to\n" .string "tell you about my darling POKéMON!\p" @@ -974,7 +974,7 @@ MatchCall_PersonalizedText29:: @ 82AD92E .string "Well, I must be going.\n" .string "Bye, now!$" -MatchCall_PersonalizedText30:: @ 82ADA8F +MatchCall_PersonalizedText30:: .string "I am… {STR_VAR_1}.\n" .string "People call me an EXPERT.\p" .string "But there is one thing I know.\n" @@ -986,7 +986,7 @@ MatchCall_PersonalizedText30:: @ 82ADA8F .string "something deep and profound!\p" .string "I shall leave you in good spirits!$" -MatchCall_PersonalizedText31:: @ 82ADB9B +MatchCall_PersonalizedText31:: .string "It's {STR_VAR_1}.\n" .string "I'm glad to chat with you!\p" .string "I am feeling alive and refreshed\n" @@ -997,7 +997,7 @@ MatchCall_PersonalizedText31:: @ 82ADB9B .string "I imagine you'll become an EXPERT\n" .string "in your old age! Ohohoho…$" -MatchCall_PersonalizedText32:: @ 82ADC92 +MatchCall_PersonalizedText32:: .string "Yay! This is {STR_VAR_1}!\n" .string "What's up?\p" .string "I might be imagining this, but when\n" @@ -1013,7 +1013,7 @@ MatchCall_PersonalizedText32:: @ 82ADC92 .string "You didn't really believe that?\l" .string "Ehehehe, that's all! Bye now!$" -MatchCall_PersonalizedText33:: @ 82ADE08 +MatchCall_PersonalizedText33:: .string "Ahoy!\n" .string "{STR_VAR_1} here!\p" .string "As always, I'm fishing with wild\n" @@ -1027,7 +1027,7 @@ MatchCall_PersonalizedText33:: @ 82ADE08 .string "Gotta go!\n" .string "Find me some new fishing spots!$" -MatchCall_PersonalizedText34:: @ 82ADF07 +MatchCall_PersonalizedText34:: .string "Hey, there! It's {STR_VAR_1}.\n" .string "Are you taking it casually?\p" .string "Ever since I was a kid, you know,\n" @@ -1045,7 +1045,7 @@ MatchCall_PersonalizedText34:: @ 82ADF07 .string "But, hey, be cool. Take it casual.\n" .string "See you around.$" -MatchCall_PersonalizedText35:: @ 82AE0D9 +MatchCall_PersonalizedText35:: .string "This is {STR_VAR_1}!\n" .string "I'm cycling right now.\p" .string "I love swimming and running,\n" @@ -1059,7 +1059,7 @@ MatchCall_PersonalizedText35:: @ 82AE0D9 .string "You should make the challenge, too!\n" .string "See you!$" -MatchCall_PersonalizedText36:: @ 82AE1FD +MatchCall_PersonalizedText36:: .string "Yo, this is {STR_VAR_1}! I'm smack\n" .string "in the middle of a triathlon!\p" .string "But, hey, I've always got time to\n" @@ -1073,7 +1073,7 @@ MatchCall_PersonalizedText36:: @ 82AE1FD .string "I'm getting run down…\l" .string "Gasp… Have…to…go…$" -MatchCall_PersonalizedText37:: @ 82AE327 +MatchCall_PersonalizedText37:: .string "Hi, it's {STR_VAR_1}.\n" .string "If you want to improve endurance,\l" .string "high-altitude training is it!\p" @@ -1082,7 +1082,7 @@ MatchCall_PersonalizedText37:: @ 82AE327 .string "I'm getting oxygen starved, too!\n" .string "See you!$" -MatchCall_PersonalizedText38:: @ 82AE3DA +MatchCall_PersonalizedText38:: .string "Oh, it's {STR_VAR_1}, hello.\p" .string "I've been swimming a lot but I still\n" .string "can't seem to reach EVERGRANDE.\p" @@ -1091,7 +1091,7 @@ MatchCall_PersonalizedText38:: @ 82AE3DA .string "Wahahaha.\l" .string "Take care!$" -MatchCall_PersonalizedText39:: @ 82AE489 +MatchCall_PersonalizedText39:: .string "Hey, it's {STR_VAR_1}…\n" .string "Whoops!\p" .string "Splash!\p" @@ -1107,7 +1107,7 @@ MatchCall_PersonalizedText39:: @ 82AE489 .string "Anyways, I'm busy sunbathing,\n" .string "so let's chat another time.$" -MatchCall_PersonalizedText40:: @ 82AE5CD +MatchCall_PersonalizedText40:: .string "Hello, this is {STR_VAR_1}.\p" .string "Out of the three triathlon events,\n" .string "I like swimming best.\p" @@ -1116,14 +1116,14 @@ MatchCall_PersonalizedText40:: @ 82AE5CD .string "Ooh, triathlon is such a grueling\n" .string "test of human endurance! Bye!$" -MatchCall_PersonalizedText41:: @ 82AE698 +MatchCall_PersonalizedText41:: .string "Hello, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "How are your POKéMON doing?\p" .string "My DRAGON POKéMON appear to be\n" .string "in peak form. Bye for now.$" -MatchCall_PersonalizedText42:: @ 82AE704 +MatchCall_PersonalizedText42:: .string "{STR_VAR_1} here.\p" .string "My {STR_VAR_2} has grown even more\n" .string "tough than that last time.\p" @@ -1131,7 +1131,7 @@ MatchCall_PersonalizedText42:: @ 82AE704 .string "You wait till next time!\p" .string "See you around!$" -MatchCall_PersonalizedText43:: @ 82AE78F +MatchCall_PersonalizedText43:: .string "It is {STR_VAR_1} here.\p" .string "I have continued with my studies\n" .string "in the art of concealment.\p" @@ -1141,7 +1141,7 @@ MatchCall_PersonalizedText43:: @ 82AE78F .string "Like smoke I disappear!\n" .string "Farewell!$" -MatchCall_PersonalizedText44:: @ 82AE859 +MatchCall_PersonalizedText44:: .string "This is {STR_VAR_1}.\n" .string "I kept up my training since we met.\p" .string "My {STR_VAR_2} is getting pretty\n" @@ -1149,7 +1149,7 @@ MatchCall_PersonalizedText44:: @ 82AE859 .string "Training on a beach is effective,\n" .string "just as I thought. Bye now!$" -MatchCall_PersonalizedText45:: @ 82AE8E6 +MatchCall_PersonalizedText45:: .string "How do you do?\n" .string "This is {STR_VAR_1}.\p" .string "I wonder when this yucky volcanic\n" @@ -1158,7 +1158,7 @@ MatchCall_PersonalizedText45:: @ 82AE8E6 .string "up the pattern on my parasol…\p" .string "Let's promise to meet again!$" -MatchCall_PersonalizedText46:: @ 82AE998 +MatchCall_PersonalizedText46:: .string "Hi, {STR_VAR_1} here.\p" .string "Did you know that it's easier to\n" .string "float in the sea than a pool?\p" @@ -1170,7 +1170,7 @@ MatchCall_PersonalizedText46:: @ 82AE998 .string "…Where am I, anyway?\n" .string "I'd better go!$" -MatchCall_PersonalizedText47:: @ 82AEA8F +MatchCall_PersonalizedText47:: .string "Oh, {PLAYER}{KUN}, hello!\n" .string "This is {STR_VAR_1}.\l" .string "I'm up in the mountains now.\p" @@ -1182,14 +1182,14 @@ MatchCall_PersonalizedText47:: @ 82AEA8F .string "I'm going to try that!\n" .string "Bye-bye!$" -MatchCall_PersonalizedText48:: @ 82AEB77 +MatchCall_PersonalizedText48:: .string "Oh, hi, hi, this is {STR_VAR_1}!\p" .string "I'm raising POKéMON with LIV!\n" .string "We're trying very hard!\p" .string "If we try harder, can we become\n" .string "number one? Bye-bye!$" -MatchCall_PersonalizedText49:: @ 82AEBFA +MatchCall_PersonalizedText49:: .string "{STR_VAR_1} here!\p" .string "I'm a SAILOR, but I'm not on a boat\n" .string "now.\p" @@ -1199,7 +1199,7 @@ MatchCall_PersonalizedText49:: @ 82AEBFA .string "while staring out across the waves.\p" .string "All right, next time!$" -MatchCall_PersonalizedText50:: @ 82AECC1 +MatchCall_PersonalizedText50:: .string "It's {STR_VAR_1}.\n" .string "So? Get any more POKéMON?\p" .string "If you catch a new POKéMON,\n" @@ -1207,7 +1207,7 @@ MatchCall_PersonalizedText50:: @ 82AECC1 .string "I won't whine for it, honest.\n" .string "I'll be waiting. See you.$" -MatchCall_PersonalizedText51:: @ 82AED52 +MatchCall_PersonalizedText51:: .string "This is {STR_VAR_1}.\p" .string "Are you raising your POKéMON\n" .string "in the optimal way?\p" @@ -1218,7 +1218,7 @@ MatchCall_PersonalizedText51:: @ 82AED52 .string "POKéMON, you should come out to\l" .string "{STR_VAR_2}. Take care now.$" -MatchCall_PersonalizedText52:: @ 82AEE35 +MatchCall_PersonalizedText52:: .string "Hi, this is {STR_VAR_1}.\p" .string "I gave a {POKEBLOCK} to my {STR_VAR_2}.\n" .string "It seemed to enjoy it very much.\p" @@ -1227,7 +1227,7 @@ MatchCall_PersonalizedText52:: @ 82AEE35 .string "I find that quite fascinating.\n" .string "Please do take care.$" -MatchCall_PersonalizedText53:: @ 82AEEF4 +MatchCall_PersonalizedText53:: .string "{STR_VAR_1} here.\p" .string "If you cooperate with POKéMON,\n" .string "one can be comfortable in the wild.\p" @@ -1238,7 +1238,7 @@ MatchCall_PersonalizedText53:: @ 82AEEF4 .string "I think you're on the right track!\n" .string "Catch you later!$" -MatchCall_PersonalizedText54:: @ 82AEFDA +MatchCall_PersonalizedText54:: .string "Hi, it's {STR_VAR_1}. You know,\n" .string "the TRAINER who's always prepared!\p" .string "{PLAYER}{KUN}, do you have enough items?\n" @@ -1249,7 +1249,7 @@ MatchCall_PersonalizedText54:: @ 82AEFDA .string "I'd better go check my own\n" .string "supplies! Be vigilant!$" -MatchCall_PersonalizedText55:: @ 82AF0E7 +MatchCall_PersonalizedText55:: .string "It's {STR_VAR_1}!\n" .string "It's {STR_VAR_1}!\p" .string "{STR_VAR_2} is a very busy\n" @@ -1260,7 +1260,7 @@ MatchCall_PersonalizedText55:: @ 82AF0E7 .string "How did you do today?\n" .string "Tell me about it next time, okay?$" -MatchCall_PersonalizedText56:: @ 82AF1B8 +MatchCall_PersonalizedText56:: .string "It's me, {STR_VAR_1}.\p" .string "I'm popular because I have lots\n" .string "of BUG POKéMON, right?\p" @@ -1273,7 +1273,7 @@ MatchCall_PersonalizedText56:: @ 82AF1B8 .string "Snivel…\n" .string "See you!$" -MatchCall_PersonalizedText57:: @ 82AF2C4 +MatchCall_PersonalizedText57:: .string "Hah! Hah! Hah! Hah!\p" .string "Hi! It's {STR_VAR_1}! Hah! Hah!\p" .string "Trying to chat…\n" @@ -1284,7 +1284,7 @@ MatchCall_PersonalizedText57:: @ 82AF2C4 .string "We'll chat…another time…\l" .string "Hah! Hah! Hah!$" -MatchCall_PersonalizedText58:: @ 82AF371 +MatchCall_PersonalizedText58:: .string "Oh, hi!\p" .string "I'm still searching for treasures\n" .string "with KIRA!\p" @@ -1298,7 +1298,7 @@ MatchCall_PersonalizedText58:: @ 82AF371 .string "You're my one and only!\p" .string "…{PLAYER}, I have to go, bye!$" -MatchCall_PersonalizedText59:: @ 82AF480 +MatchCall_PersonalizedText59:: .string "This is {STR_VAR_1}!\p" .string "I went to DEWFORD's GYM again\n" .string "for training.\p" @@ -1319,7 +1319,7 @@ MatchCall_PersonalizedText59:: @ 82AF480 .string "Forget this chat ever happened,\n" .string "how about it? So long!$" -MatchCall_PersonalizedText60:: @ 82AF671 +MatchCall_PersonalizedText60:: .string "It's a pleasure to chat with\n" .string "a young TRAINER like you.\p" .string "I imagine that you will continue to\n" @@ -1334,7 +1334,7 @@ MatchCall_PersonalizedText60:: @ 82AF671 .string "Hahaha!\n" .string "Never be discouraged!$" -MatchCall_PersonalizedText61:: @ 82AF7D8 +MatchCall_PersonalizedText61:: .string "Hi, this is {STR_VAR_1}!\n" .string "We just won a battle!\p" .string "We don't win often, but it was this\n" @@ -1348,7 +1348,7 @@ MatchCall_PersonalizedText61:: @ 82AF7D8 .string "to her next time?\p" .string "Okay, see you!$" -MatchCall_PersonalizedText62:: @ 82AF8F7 +MatchCall_PersonalizedText62:: .string "{STR_VAR_1} here, yes.\n" .string "I headed out to sea yesterday.\p" .string "I had been hoping to find a new\n" @@ -1363,7 +1363,7 @@ MatchCall_PersonalizedText62:: @ 82AF8F7 .string "That's all I have to say!\n" .string "Farewell for now!$" -MatchCall_PersonalizedText63:: @ 82AFA39 +MatchCall_PersonalizedText63:: .string "Ahoy there!\n" .string "It's me, {STR_VAR_1}!\l" .string "I'm out on ROUTE 108 now!\l" @@ -1375,7 +1375,7 @@ MatchCall_PersonalizedText63:: @ 82AFA39 .string "That's all from ROUTE 108!\n" .string "Brought to you by {STR_VAR_1}!$" -MatchCall_PersonalizedText64:: @ 82AFB26 +MatchCall_PersonalizedText64:: .string "It's {STR_VAR_1}!\p" .string "I'm kind of busy, but I figured\n" .string "I should let you know that I've\l" @@ -1385,7 +1385,7 @@ MatchCall_PersonalizedText64:: @ 82AFB26 .string "I think we'll be good rivals,\n" .string "you and I. Good-bye for now!$" -MatchCall_BattleFrontierStreakText1:: @ 82AFC07 +MatchCall_BattleFrontierStreakText1:: .string "Hi! This is {STR_VAR_1}.\n" .string "I heard the news!\p" .string "They say you did excellent at\n" @@ -1393,7 +1393,7 @@ MatchCall_BattleFrontierStreakText1:: @ 82AFC07 .string "It's awesome, {STR_VAR_3} straight wins?\n" .string "See you!$" -MatchCall_BattleFrontierStreakText2:: @ 82AFC78 +MatchCall_BattleFrontierStreakText2:: .string "Hello, it's {STR_VAR_1}!\n" .string "I heard about you!\p" .string "They said you won {STR_VAR_3} straight\n" @@ -1401,7 +1401,7 @@ MatchCall_BattleFrontierStreakText2:: @ 82AFC78 .string "That's special! I should try\n" .string "harder, too! See you!$" -MatchCall_BattleFrontierStreakText3:: @ 82AFCFF +MatchCall_BattleFrontierStreakText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "I heard you went on a tear at\n" @@ -1411,7 +1411,7 @@ MatchCall_BattleFrontierStreakText3:: @ 82AFCFF .string "I'd better get it together, too!\n" .string "Catch you soon!$" -MatchCall_BattleFrontierStreakText4:: @ 82AFDA7 +MatchCall_BattleFrontierStreakText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here. What's up?\p" .string "There's a rumor going around that\n" @@ -1420,7 +1420,7 @@ MatchCall_BattleFrontierStreakText4:: @ 82AFDA7 .string "I'd better step it up, too.\n" .string "See you!$" -MatchCall_BattleFrontierStreakText5:: @ 82AFE3D +MatchCall_BattleFrontierStreakText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "You were at the {STR_VAR_2}\n" @@ -1429,7 +1429,7 @@ MatchCall_BattleFrontierStreakText5:: @ 82AFE3D .string "I'd better work on my POKéMON more.\n" .string "See you soon!$" -MatchCall_BattleFrontierStreakText6:: @ 82AFECA +MatchCall_BattleFrontierStreakText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here. How are you?\p" .string "By the way, I heard you pulled off\n" @@ -1438,7 +1438,7 @@ MatchCall_BattleFrontierStreakText6:: @ 82AFECA .string "That inspires me to focus on\n" .string "raising my team.$" -MatchCall_BattleFrontierStreakText7:: @ 82AFF64 +MatchCall_BattleFrontierStreakText7:: .string "…Er, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here…\p" .string "Oh, yeah, you were over at\n" @@ -1447,7 +1447,7 @@ MatchCall_BattleFrontierStreakText7:: @ 82AFF64 .string "Oh, there goes a rare POKéMON!\n" .string "I have to go!$" -MatchCall_BattleFrontierStreakText8:: @ 82AFFF0 +MatchCall_BattleFrontierStreakText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\l" .string "I hope you're doing well.\p" @@ -1457,7 +1457,7 @@ MatchCall_BattleFrontierStreakText8:: @ 82AFFF0 .string "That's very impressive!\n" .string "I hope you stay successful.$" -MatchCall_BattleFrontierStreakText9:: @ 82B00B5 +MatchCall_BattleFrontierStreakText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "I heard! Your {STR_VAR_3}-win streak at\n" @@ -1465,7 +1465,7 @@ MatchCall_BattleFrontierStreakText9:: @ 82B00B5 .string "That is so cool!\n" .string "I'd better try harder, too!$" -MatchCall_BattleFrontierStreakText10:: @ 82B0129 +MatchCall_BattleFrontierStreakText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "You won {STR_VAR_3} straight battles at\n" @@ -1473,7 +1473,7 @@ MatchCall_BattleFrontierStreakText10:: @ 82B0129 .string "That's quite the accomplishment.\n" .string "I need to work harder.$" -MatchCall_BattleFrontierStreakText11:: @ 82B01A5 +MatchCall_BattleFrontierStreakText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I hear you're the terror of\n" @@ -1483,7 +1483,7 @@ MatchCall_BattleFrontierStreakText11:: @ 82B01A5 .string "You're good, you.\n" .string "I wonder how many I can win?$" -MatchCall_BattleFrontierStreakText12:: @ 82B0232 +MatchCall_BattleFrontierStreakText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you keeping well?\p" @@ -1493,7 +1493,7 @@ MatchCall_BattleFrontierStreakText12:: @ 82B0232 .string "That's quite the tale.\n" .string "See you!$" -MatchCall_BattleFrontierStreakText13:: @ 82B02D9 +MatchCall_BattleFrontierStreakText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "I hope you've been keeping well.\p" @@ -1502,7 +1502,7 @@ MatchCall_BattleFrontierStreakText13:: @ 82B02D9 .string "I admire your energy!\n" .string "Bye now.$" -MatchCall_BattleFrontierStreakText14:: @ 82B0366 +MatchCall_BattleFrontierStreakText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I heard about you!\n" @@ -1511,7 +1511,7 @@ MatchCall_BattleFrontierStreakText14:: @ 82B0366 .string "You're an inspiration!\n" .string "Bye-bye!$" -MatchCall_BattleFrontierRecordStreakText1:: @ 82B03E6 +MatchCall_BattleFrontierRecordStreakText1:: .string "Hi! This is {STR_VAR_1}.\n" .string "I heard the news!\p" .string "They say you did excellent at\n" @@ -1519,7 +1519,7 @@ MatchCall_BattleFrontierRecordStreakText1:: @ 82B03E6 .string "It's awesome--{STR_VAR_3} straight wins?\n" .string "See you!$" -MatchCall_BattleFrontierRecordStreakText2:: @ 82B0457 +MatchCall_BattleFrontierRecordStreakText2:: .string "Hello, it's {STR_VAR_1}!\n" .string "I heard about you!\p" .string "They said you won {STR_VAR_3} straight\n" @@ -1527,7 +1527,7 @@ MatchCall_BattleFrontierRecordStreakText2:: @ 82B0457 .string "That's special! I should try\n" .string "harder, too! See you!$" -MatchCall_BattleFrontierRecordStreakText3:: @ 82B04DE +MatchCall_BattleFrontierRecordStreakText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\p" .string "I heard you went on a tear at\n" @@ -1537,7 +1537,7 @@ MatchCall_BattleFrontierRecordStreakText3:: @ 82B04DE .string "I'd better get it together, too!\n" .string "Catch you soon!$" -MatchCall_BattleFrontierRecordStreakText4:: @ 82B0586 +MatchCall_BattleFrontierRecordStreakText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here. What's up?\p" .string "There's a rumor going around that\n" @@ -1546,7 +1546,7 @@ MatchCall_BattleFrontierRecordStreakText4:: @ 82B0586 .string "I'd better step it up, too.\n" .string "See you!$" -MatchCall_BattleFrontierRecordStreakText5:: @ 82B061C +MatchCall_BattleFrontierRecordStreakText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "You were at the {STR_VAR_2}\n" @@ -1555,7 +1555,7 @@ MatchCall_BattleFrontierRecordStreakText5:: @ 82B061C .string "Me? I'd say I'm coming along.\n" .string "See you soon!$" -MatchCall_BattleFrontierRecordStreakText6:: @ 82B06A3 +MatchCall_BattleFrontierRecordStreakText6:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here. How are you?\p" .string "By the way, I heard you pulled off\n" @@ -1564,7 +1564,7 @@ MatchCall_BattleFrontierRecordStreakText6:: @ 82B06A3 .string "I'd better try harder myself!\n" .string "See you soon!$" -MatchCall_BattleFrontierRecordStreakText7:: @ 82B073B +MatchCall_BattleFrontierRecordStreakText7:: .string "…Er, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here…\p" .string "Oh, yeah, you were over at\n" @@ -1573,7 +1573,7 @@ MatchCall_BattleFrontierRecordStreakText7:: @ 82B073B .string "Oh, there goes a rare POKéMON!\n" .string "I have to go!$" -MatchCall_BattleFrontierRecordStreakText8:: @ 82B07C7 +MatchCall_BattleFrontierRecordStreakText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\l" .string "I hope you're doing well.\p" @@ -1583,7 +1583,7 @@ MatchCall_BattleFrontierRecordStreakText8:: @ 82B07C7 .string "That's very impressive!\n" .string "I'd better work on my POKéMON, too!$" -MatchCall_BattleFrontierRecordStreakText9:: @ 82B0894 +MatchCall_BattleFrontierRecordStreakText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "I heard! Your {STR_VAR_3}-win streak at\n" @@ -1591,7 +1591,7 @@ MatchCall_BattleFrontierRecordStreakText9:: @ 82B0894 .string "That is so cool!\n" .string "I'd better try harder, too!$" -MatchCall_BattleFrontierRecordStreakText10:: @ 82B0908 +MatchCall_BattleFrontierRecordStreakText10:: .string "Oh, {PLAYER}{KUN}, hello…\n" .string "This is {STR_VAR_1}.\p" .string "You won {STR_VAR_3} straight battles at\n" @@ -1599,7 +1599,7 @@ MatchCall_BattleFrontierRecordStreakText10:: @ 82B0908 .string "That's quite the accomplishment.\n" .string "I need to work harder.$" -MatchCall_BattleFrontierRecordStreakText11:: @ 82B0984 +MatchCall_BattleFrontierRecordStreakText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I hear you're the terror of\n" @@ -1609,7 +1609,7 @@ MatchCall_BattleFrontierRecordStreakText11:: @ 82B0984 .string "You're good, you.\n" .string "I wonder how many I can win?$" -MatchCall_BattleFrontierRecordStreakText12:: @ 82B0A11 +MatchCall_BattleFrontierRecordStreakText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you keeping well?\p" @@ -1619,7 +1619,7 @@ MatchCall_BattleFrontierRecordStreakText12:: @ 82B0A11 .string "That's quite the tale.\n" .string "See you!$" -MatchCall_BattleFrontierRecordStreakText13:: @ 82B0AB8 +MatchCall_BattleFrontierRecordStreakText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "I hope you've been keeping well.\p" @@ -1628,7 +1628,7 @@ MatchCall_BattleFrontierRecordStreakText13:: @ 82B0AB8 .string "I admire your energy!\n" .string "Bye now.$" -MatchCall_BattleFrontierRecordStreakText14:: @ 82B0B45 +MatchCall_BattleFrontierRecordStreakText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "I heard about you!\p" @@ -1637,7 +1637,7 @@ MatchCall_BattleFrontierRecordStreakText14:: @ 82B0B45 .string "You're an inspiration!\n" .string "Bye-bye!$" -MatchCall_BattleDomeText1:: @ 82B0BC5 +MatchCall_BattleDomeText1:: .string "Hi! {PLAYER}?\n" .string "Hello, this is {STR_VAR_1}!\l" .string "I heard the news!\p" @@ -1646,7 +1646,7 @@ MatchCall_BattleDomeText1:: @ 82B0BC5 .string "It's awesome! I have to do better!\n" .string "See you!$" -MatchCall_BattleDomeText2:: @ 82B0C4A +MatchCall_BattleDomeText2:: .string "Hello, it's {STR_VAR_1}!\n" .string "I heard about you!\p" .string "They said you won {STR_VAR_3} titles\n" @@ -1654,7 +1654,7 @@ MatchCall_BattleDomeText2:: @ 82B0C4A .string "That's super! I wonder if I can\n" .string "become a champion?$" -MatchCall_BattleDomeText3:: @ 82B0CC7 +MatchCall_BattleDomeText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\l" .string "How's it going?\p" @@ -1663,7 +1663,7 @@ MatchCall_BattleDomeText3:: @ 82B0CC7 .string "Make it one more next time!\n" .string "Catch you soon!$" -MatchCall_BattleDomeText4:: @ 82B0D4A +MatchCall_BattleDomeText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "I heard you became the champion\n" @@ -1671,7 +1671,7 @@ MatchCall_BattleDomeText4:: @ 82B0D4A .string "Sounds like you're working hard.\n" .string "I'll try to keep up!$" -MatchCall_BattleDomeText5:: @ 82B0DC8 +MatchCall_BattleDomeText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "I heard you won {STR_VAR_3} times\n" @@ -1679,7 +1679,7 @@ MatchCall_BattleDomeText5:: @ 82B0DC8 .string "I'd better get with it, too!\n" .string "See you soon!$" -MatchCall_BattleDomeText6:: @ 82B0E35 +MatchCall_BattleDomeText6:: .string "Hey, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here. How are you?\p" .string "By the way, I heard you became\n" @@ -1688,7 +1688,7 @@ MatchCall_BattleDomeText6:: @ 82B0E35 .string "I'd better raise my POKéMON before\n" .string "you pull farther ahead.$" -MatchCall_BattleDomeText7:: @ 82B0ED1 +MatchCall_BattleDomeText7:: .string "{PLAYER}{KUN}?\n" .string "{STR_VAR_1} here.\p" .string "You were at the {STR_VAR_2}\n" @@ -1698,7 +1698,7 @@ MatchCall_BattleDomeText7:: @ 82B0ED1 .string "Oh, is that right.\n" .string "Okay, bye.$" -MatchCall_BattleDomeText8:: @ 82B0F72 +MatchCall_BattleDomeText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\l" .string "I hope you're doing well.\l" @@ -1708,7 +1708,7 @@ MatchCall_BattleDomeText8:: @ 82B0F72 .string "I must raise my POKéMON like you.\n" .string "See you again.$" -MatchCall_BattleDomeText9:: @ 82B102A +MatchCall_BattleDomeText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "I heard! You took the title\n" @@ -1716,7 +1716,7 @@ MatchCall_BattleDomeText9:: @ 82B102A .string "That is so cool!\n" .string "I'd better try harder, too!$" -MatchCall_BattleDomeText10:: @ 82B10A7 +MatchCall_BattleDomeText10:: .string "Oh, {PLAYER}{KUN}, hello.\n" .string "This is {STR_VAR_1}.\p" .string "You won {STR_VAR_3} straight times at\n" @@ -1724,7 +1724,7 @@ MatchCall_BattleDomeText10:: @ 82B10A7 .string "That's quite the accomplishment.\n" .string "I need to work harder.$" -MatchCall_BattleDomeText11:: @ 82B1121 +MatchCall_BattleDomeText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I hear you're the terror of\n" @@ -1736,7 +1736,7 @@ MatchCall_BattleDomeText11:: @ 82B1121 .string "…Pretty well impossible?\n" .string "Well, see you!$" -MatchCall_BattleDomeText12:: @ 82B11D3 +MatchCall_BattleDomeText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you keeping well?\p" @@ -1745,7 +1745,7 @@ MatchCall_BattleDomeText12:: @ 82B11D3 .string "That's quite the tale.\n" .string "See you!$" -MatchCall_BattleDomeText13:: @ 82B124D +MatchCall_BattleDomeText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "I hope you've been keeping well.\p" @@ -1754,7 +1754,7 @@ MatchCall_BattleDomeText13:: @ 82B124D .string "I admire your energy!\n" .string "Bye now.$" -MatchCall_BattleDomeText14:: @ 82B12D0 +MatchCall_BattleDomeText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "I heard about you!\p" @@ -1763,7 +1763,7 @@ MatchCall_BattleDomeText14:: @ 82B12D0 .string "You're an inspiration!\n" .string "See you again!$" -MatchCall_BattlePikeText1:: @ 82B1347 +MatchCall_BattlePikeText1:: .string "Hi! {PLAYER}?\n" .string "Hello, this is {STR_VAR_1}!\l" .string "I heard the news!\p" @@ -1772,7 +1772,7 @@ MatchCall_BattlePikeText1:: @ 82B1347 .string "That's awesome!\n" .string "See you!$" -MatchCall_BattlePikeText2:: @ 82B13B1 +MatchCall_BattlePikeText2:: .string "Hello, it's {STR_VAR_1}!\n" .string "I heard about you!\p" .string "They said you won your way through\n" @@ -1780,7 +1780,7 @@ MatchCall_BattlePikeText2:: @ 82B13B1 .string "I have to try much harder!\n" .string "Bye!$" -MatchCall_BattlePikeText3:: @ 82B142B +MatchCall_BattlePikeText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\l" .string "How's it going?\p" @@ -1789,7 +1789,7 @@ MatchCall_BattlePikeText3:: @ 82B142B .string "Try to do even better next time!\n" .string "Catch you soon!$" -MatchCall_BattlePikeText4:: @ 82B14B4 +MatchCall_BattlePikeText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "I heard you blew through {STR_VAR_3} rooms\n" @@ -1797,7 +1797,7 @@ MatchCall_BattlePikeText4:: @ 82B14B4 .string "I'd better train my POKéMON and\n" .string "try to keep up!$" -MatchCall_BattlePikeText5:: @ 82B1525 +MatchCall_BattlePikeText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "I heard you got past {STR_VAR_3} rooms\n" @@ -1805,7 +1805,7 @@ MatchCall_BattlePikeText5:: @ 82B1525 .string "I'd better get with it, too!\n" .string "See you soon!$" -MatchCall_BattlePikeText6:: @ 82B158E +MatchCall_BattlePikeText6:: .string "Hey, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here. How are you?\p" .string "By the way, I heard you got through\n" @@ -1813,7 +1813,7 @@ MatchCall_BattlePikeText6:: @ 82B158E .string "I'd better raise my POKéMON before\n" .string "you pull further ahead.$" -MatchCall_BattlePikeText7:: @ 82B1622 +MatchCall_BattlePikeText7:: .string "{PLAYER}{KUN}?\n" .string "{STR_VAR_1} here.\p" .string "You were at the {STR_VAR_2}\n" @@ -1822,7 +1822,7 @@ MatchCall_BattlePikeText7:: @ 82B1622 .string "Oh, there goes a rare POKéMON!\n" .string "Okay, bye.$" -MatchCall_BattlePikeText8:: @ 82B169D +MatchCall_BattlePikeText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\l" .string "I hope you're doing well.\l" @@ -1833,7 +1833,7 @@ MatchCall_BattlePikeText8:: @ 82B169D .string "I must raise my POKéMON like you.\l" .string "See you again.$" -MatchCall_BattlePikeText9:: @ 82B1775 +MatchCall_BattlePikeText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "I heard! You won your way through\n" @@ -1841,7 +1841,7 @@ MatchCall_BattlePikeText9:: @ 82B1775 .string "That is so cool!\n" .string "I'd better try harder, too!$" -MatchCall_BattlePikeText10:: @ 82B17F8 +MatchCall_BattlePikeText10:: .string "Oh, {PLAYER}{KUN}, hello.\n" .string "This is {STR_VAR_1}.\p" .string "You won your way past {STR_VAR_3} rooms\n" @@ -1849,7 +1849,7 @@ MatchCall_BattlePikeText10:: @ 82B17F8 .string "That's quite the accomplishment.\n" .string "I need to work harder.$" -MatchCall_BattlePikeText11:: @ 82B1877 +MatchCall_BattlePikeText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I hear you're the terror of\n" @@ -1861,7 +1861,7 @@ MatchCall_BattlePikeText11:: @ 82B1877 .string "…Pretty well impossible?\n" .string "Well, see you!$" -MatchCall_BattlePikeText12:: @ 82B1946 +MatchCall_BattlePikeText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you keeping well?\p" @@ -1870,7 +1870,7 @@ MatchCall_BattlePikeText12:: @ 82B1946 .string "That's quite the tale.\n" .string "See you!$" -MatchCall_BattlePikeText13:: @ 82B19C7 +MatchCall_BattlePikeText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "I hope you've been keeping well.\p" @@ -1879,7 +1879,7 @@ MatchCall_BattlePikeText13:: @ 82B19C7 .string "I admire your energy!\n" .string "Bye now.$" -MatchCall_BattlePikeText14:: @ 82B1A4C +MatchCall_BattlePikeText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "I heard about you!\p" @@ -1888,7 +1888,7 @@ MatchCall_BattlePikeText14:: @ 82B1A4C .string "You're an inspiration!\n" .string "See you again!$" -MatchCall_BattlePyramidText1:: @ 82B1ACA +MatchCall_BattlePyramidText1:: .string "Hi! {PLAYER}?\n" .string "Hello, this is {STR_VAR_1}!\l" .string "I heard the news!\p" @@ -1897,7 +1897,7 @@ MatchCall_BattlePyramidText1:: @ 82B1ACA .string "That's awesome!\n" .string "I should try that challenge.$" -MatchCall_BattlePyramidText2:: @ 82B1B50 +MatchCall_BattlePyramidText2:: .string "Hello, it's {STR_VAR_1}!\n" .string "I heard about you!\p" .string "They said you won your way through\n" @@ -1905,7 +1905,7 @@ MatchCall_BattlePyramidText2:: @ 82B1B50 .string "Wow, that's fantastic!\n" .string "I'd better raise my POKéMON, too!$" -MatchCall_BattlePyramidText3:: @ 82B1BE4 +MatchCall_BattlePyramidText3:: .string "Hey there, {PLAYER}!\n" .string "It's me, {STR_VAR_1}.\l" .string "How's it going?\p" @@ -1914,7 +1914,7 @@ MatchCall_BattlePyramidText3:: @ 82B1BE4 .string "Try to do even better next time!\n" .string "Catch you soon!$" -MatchCall_BattlePyramidText4:: @ 82B1C6A +MatchCall_BattlePyramidText4:: .string "Hey, {PLAYER}{KUN}.\n" .string "{STR_VAR_1} here.\p" .string "I heard you scaled {STR_VAR_3} floors\n" @@ -1922,7 +1922,7 @@ MatchCall_BattlePyramidText4:: @ 82B1C6A .string "I'd better work hard and try\n" .string "to keep up!$" -MatchCall_BattlePyramidText5:: @ 82B1CCF +MatchCall_BattlePyramidText5:: .string "Hiya, {PLAYER}{KUN}!\n" .string "It's {STR_VAR_1}.\p" .string "I heard you climbed {STR_VAR_3} floors\n" @@ -1930,7 +1930,7 @@ MatchCall_BattlePyramidText5:: @ 82B1CCF .string "I'd better get with it, too!\n" .string "See you soon!$" -MatchCall_BattlePyramidText6:: @ 82B1D38 +MatchCall_BattlePyramidText6:: .string "Hey, {PLAYER}{KUN}?\n" .string "{STR_VAR_1} here. How are you?\p" .string "By the way, I heard you got through\n" @@ -1938,7 +1938,7 @@ MatchCall_BattlePyramidText6:: @ 82B1D38 .string "I'd better raise my POKéMON before\n" .string "you pull further ahead.$" -MatchCall_BattlePyramidText7:: @ 82B1DCD +MatchCall_BattlePyramidText7:: .string "{PLAYER}{KUN}?\n" .string "{STR_VAR_1} here.\p" .string "You were at the {STR_VAR_2}\n" @@ -1948,7 +1948,7 @@ MatchCall_BattlePyramidText7:: @ 82B1DCD .string "No, huh?\n" .string "Okay, bye.$" -MatchCall_BattlePyramidText8:: @ 82B1E4B +MatchCall_BattlePyramidText8:: .string "Oh, {PLAYER}{KUN}, how do you do?\n" .string "This is {STR_VAR_1} speaking.\l" .string "I hope you're doing well.\l" @@ -1959,7 +1959,7 @@ MatchCall_BattlePyramidText8:: @ 82B1E4B .string "I must raise my POKéMON like you.\l" .string "See you again.$" -MatchCall_BattlePyramidText9:: @ 82B1F24 +MatchCall_BattlePyramidText9:: .string "Oh, {PLAYER}{KUN}, hi there!\n" .string "This is {STR_VAR_1}!\p" .string "I heard! You won your way through\n" @@ -1967,7 +1967,7 @@ MatchCall_BattlePyramidText9:: @ 82B1F24 .string "That is so cool!\n" .string "I'd better try harder, too!$" -MatchCall_BattlePyramidText10:: @ 82B1FA8 +MatchCall_BattlePyramidText10:: .string "Oh, {PLAYER}{KUN}, hello.\n" .string "This is {STR_VAR_1}.\p" .string "You climbed {STR_VAR_3} floors inside\n" @@ -1975,7 +1975,7 @@ MatchCall_BattlePyramidText10:: @ 82B1FA8 .string "That's quite the accomplishment.\n" .string "I need to work harder.$" -MatchCall_BattlePyramidText11:: @ 82B2022 +MatchCall_BattlePyramidText11:: .string "Ah, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\p" .string "I hear you're the terror of\n" @@ -1987,7 +1987,7 @@ MatchCall_BattlePyramidText11:: @ 82B2022 .string "…Pretty well impossible?\n" .string "Well, see you!$" -MatchCall_BattlePyramidText12:: @ 82B20F3 +MatchCall_BattlePyramidText12:: .string "Hello, {PLAYER}{KUN}.\n" .string "It's me, {STR_VAR_1}.\l" .string "Are you keeping well?\p" @@ -1996,7 +1996,7 @@ MatchCall_BattlePyramidText12:: @ 82B20F3 .string "That's quite the tale.\n" .string "See you!$" -MatchCall_BattlePyramidText13:: @ 82B2175 +MatchCall_BattlePyramidText13:: .string "Ah, hello, {PLAYER}{KUN}!\n" .string "This is {STR_VAR_1}!\l" .string "I hope you've been keeping well.\p" @@ -2005,7 +2005,7 @@ MatchCall_BattlePyramidText13:: @ 82B2175 .string "I admire your energy!\n" .string "Bye now.$" -MatchCall_BattlePyramidText14:: @ 82B21FC +MatchCall_BattlePyramidText14:: .string "Oh, hi, {PLAYER}{KUN}.\n" .string "This is {STR_VAR_1}.\l" .string "I heard about you!\p" @@ -2014,7 +2014,7 @@ MatchCall_BattlePyramidText14:: @ 82B21FC .string "You're an inspiration!\n" .string "See you again!$" -MatchCall_Text_Mom1:: @ 82B227B +MatchCall_Text_Mom1:: .string "MOM: Your father and you…\n" .string "Everyone is captivated by POKéMON.\p" .string "What is the charm of POKéMON?\p" @@ -2022,7 +2022,7 @@ MatchCall_Text_Mom1:: @ 82B227B .string "I adore POKéMON that help me with\l" .string "my everyday chores.$" -MatchCall_Text_Mom2:: @ 82B2310 +MatchCall_Text_Mom2:: .string "MOM: Hi, {PLAYER}!\n" .string "Your father keeps himself locked\l" .string "away in the PETALBURG GYM.\p" @@ -2032,13 +2032,13 @@ MatchCall_Text_Mom2:: @ 82B2310 .string "I'm guessing that losing to you\n" .string "was a big blow to his pride!$" -MatchCall_Text_Mom3:: @ 82B23F3 +MatchCall_Text_Mom3:: .string "MOM: {PLAYER}…\n" .string "Don't worry about me or the house.\p" .string "Wear those RUNNING SHOES until\n" .string "they fall apart, honey!$" -MatchCall_Text_Roxanne1:: @ 82B2456 +MatchCall_Text_Roxanne1:: .string "ROXANNE: Oh, hello, {PLAYER}!\p" .string "I've been hard at work retraining\n" .string "since we met.\p" @@ -2047,7 +2047,7 @@ MatchCall_Text_Roxanne1:: @ 82B2456 .string "But when I do, please visit my GYM\n" .string "for a rematch!$" -MatchCall_Text_Roxanne2:: @ 82B250E +MatchCall_Text_Roxanne2:: .string "ROXANNE: Is this {PLAYER}?\n" .string "Congratulations!\l" .string "I've been hearing about you!\p" @@ -2056,18 +2056,18 @@ MatchCall_Text_Roxanne2:: @ 82B250E .string "But when I do, please visit my GYM\n" .string "for a rematch!$" -MatchCall_Text_Roxanne3:: @ 82B25C1 +MatchCall_Text_Roxanne3:: .string "ROXANNE: {PLAYER}!\n" .string "My GYM is ready!\p" .string "Please visit RUSTBORO whenever\n" .string "you can!$" -MatchCall_Text_Roxanne4:: @ 82B2607 +MatchCall_Text_Roxanne4:: .string "ROXANNE: At the RUSTBORO GYM,\n" .string "the fact that we battled, {PLAYER},\l" .string "is a matter of pride.$" -MatchCall_Text_Brawly1:: @ 82B2659 +MatchCall_Text_Brawly1:: .string "BRAWLY: Hey, there, {PLAYER}{KUN}!\p" .string "I learned a lot from the battle we\n" .string "had together.\p" @@ -2078,7 +2078,7 @@ MatchCall_Text_Brawly1:: @ 82B2659 .string "But if I can reopen the GYM,\n" .string "I want you to challenge us again.$" -MatchCall_Text_Brawly2:: @ 82B275D +MatchCall_Text_Brawly2:: .string "BRAWLY: Hey, {PLAYER}{KUN}!\n" .string "Congratulations!\p" .string "Word about your exploits arrived\n" @@ -2090,17 +2090,17 @@ MatchCall_Text_Brawly2:: @ 82B275D .string "But if I can reopen the GYM,\n" .string "I want you to challenge us again.$" -MatchCall_Text_Brawly3:: @ 82B286F +MatchCall_Text_Brawly3:: .string "BRAWLY: Hey, {PLAYER}{KUN}!\n" .string "My GYM's ready for action!\p" .string "Come back to DEWFORD anytime\n" .string "for another challenge!$" -MatchCall_Text_Brawly4:: @ 82B28D1 +MatchCall_Text_Brawly4:: .string "BRAWLY: {PLAYER}{KUN}, I don't think\n" .string "I'll ever get bored of battling you!$" -MatchCall_Text_Wattson1:: @ 82B2912 +MatchCall_Text_Wattson1:: .string "WATTSON: Oh, it's you!\p" .string "After you left, I've been redoing\n" .string "my training from scratch.\p" @@ -2109,7 +2109,7 @@ MatchCall_Text_Wattson1:: @ 82B2912 .string "You'll have to wait till then!\n" .string "Wahahahaha!$" -MatchCall_Text_Wattson2:: @ 82B29CA +MatchCall_Text_Wattson2:: .string "WATTSON: Wahahahaha!\p" .string "You've really done it, haven't you?\n" .string "I've been getting word about you!\p" @@ -2120,18 +2120,18 @@ MatchCall_Text_Wattson2:: @ 82B29CA .string "You'll have to wait till then!\n" .string "Wahahahaha!$" -MatchCall_Text_Wattson3:: @ 82B2AB6 +MatchCall_Text_Wattson3:: .string "WATTSON: Oh, it's you!\n" .string "My GYM's ready!\p" .string "Visit MAUVILLE anytime!\n" .string "Wahahahaha!$" -MatchCall_Text_Wattson4:: @ 82B2B01 +MatchCall_Text_Wattson4:: .string "WATTSON: Wahahaha!\p" .string "A battle with you is always charged\n" .string "with shocking power!$" -MatchCall_Text_Flannery1:: @ 82B2B4D +MatchCall_Text_Flannery1:: .string "FLANNERY: {PLAYER}…\p" .string "When we battled, I learned exactly\n" .string "how immature I was.\p" @@ -2141,7 +2141,7 @@ MatchCall_Text_Flannery1:: @ 82B2B4D .string "When the time comes, {PLAYER},\n" .string "please challenge us again.$" -MatchCall_Text_Flannery2:: @ 82B2C0E +MatchCall_Text_Flannery2:: .string "FLANNERY: Hello, {PLAYER}?\n" .string "Congratulations!\p" .string "Word of your success has reached\n" @@ -2152,44 +2152,44 @@ MatchCall_Text_Flannery2:: @ 82B2C0E .string "appear beside my name in the\l" .string "MATCH CALL list.$" -MatchCall_Text_Flannery3:: @ 82B2CF1 +MatchCall_Text_Flannery3:: .string "FLANNERY: Oh, {PLAYER}?\n" .string "Our GYM's ready!\p" .string "Come to LAVARIDGE for a soak\n" .string "in the hot spring and a challenge!$" -MatchCall_Text_Flannery4:: @ 82B2D54 +MatchCall_Text_Flannery4:: .string "FLANNERY: {PLAYER}…\n" .string "I'm positive that you keep getting\l" .string "better at training every time.$" -MatchCall_Text_Winona1:: @ 82B2DA4 +MatchCall_Text_Winona1:: .string "WINONA: Hello, {PLAYER}!\p" .string "Thanks to our battle, I've come\n" .string "to understand my weak points!\p" .string "When I reopen the GYM, I won't go\n" .string "down in defeat again!$" -MatchCall_Text_Winona2:: @ 82B2E2B +MatchCall_Text_Winona2:: .string "WINONA: You've done it, {PLAYER}!\p" .string "News about the new CHAMPION\n" .string "has reached us in FORTREE!\p" .string "But… The next time we battle,\n" .string "it's not going to end the same way.$" -MatchCall_Text_Winona3:: @ 82B2EC2 +MatchCall_Text_Winona3:: .string "WINONA: Is this {PLAYER}?\n" .string "Our GYM is back in operation!\p" .string "We're waiting for you in FORTREE!$" -MatchCall_Text_Winona4:: @ 82B2F16 +MatchCall_Text_Winona4:: .string "WINONA: {PLAYER}…\n" .string "Though I have lost, my wings will\l" .string "never break.\p" .string "Yes, in exactly the same way that\n" .string "you never lost sight of your dream.$" -MatchCall_Text_TateLiza1:: @ 82B2F97 +MatchCall_Text_TateLiza1:: .string "TATE: Oh! You're…\n" .string "LIZA: {PLAYER}!\p" .string "TATE: We're in training again…\n" @@ -2199,7 +2199,7 @@ MatchCall_Text_TateLiza1:: @ 82B2F97 .string "TATE: A mark'll appear by our name…\n" .string "LIZA: On the MATCH CALL list.$" -MatchCall_Text_TateLiza2:: @ 82B306E +MatchCall_Text_TateLiza2:: .string "TATE: {PLAYER}, congratulations!\n" .string "LIZA: {PLAYER}, congratulations!\p" .string "TATE: The two of us are…\n" @@ -2209,7 +2209,7 @@ MatchCall_Text_TateLiza2:: @ 82B306E .string "TATE: A mark'll appear by our name…\n" .string "LIZA: On the MATCH CALL list.$" -MatchCall_Text_TateLiza3:: @ 82B3158 +MatchCall_Text_TateLiza3:: .string "TATE: {PLAYER}!\n" .string "LIZA: {PLAYER}!\p" .string "TATE: Our GYM is ready!\n" @@ -2217,13 +2217,13 @@ MatchCall_Text_TateLiza3:: @ 82B3158 .string "TATE: Please come visit…\n" .string "LIZA: MOSSDEEP anytime!$" -MatchCall_Text_TateLiza4:: @ 82B31CD +MatchCall_Text_TateLiza4:: .string "TATE: {PLAYER}, the battle we had…\n" .string "LIZA: Is an invaluable experience.\p" .string "TATE: It would be nice if…\n" .string "LIZA: We could all battle again!$" -MatchCall_Text_Juan1:: @ 82B3249 +MatchCall_Text_Juan1:: .string "JUAN: Hmm…\n" .string "{PLAYER}{KUN}… Was it?\p" .string "Our battle together--it brought\n" @@ -2232,7 +2232,7 @@ MatchCall_Text_Juan1:: @ 82B3249 .string "Perhaps you are a genius who may\n" .string "yet surpass WALLACE!$" -MatchCall_Text_Juan2:: @ 82B32EC +MatchCall_Text_Juan2:: .string "JUAN: Fufu… {PLAYER}{KUN}…\n" .string "You've finally achieved your goal.\p" .string "My eye for appraising talent wasn't\n" @@ -2241,14 +2241,14 @@ MatchCall_Text_Juan2:: @ 82B32EC .string "you, for you have scaled the peak\l" .string "of power and prestige.$" -MatchCall_Text_Juan3:: @ 82B33AA +MatchCall_Text_Juan3:: .string "JUAN: Hoho… {PLAYER}{KUN}…\p" .string "Our SOOTOPOLIS GYM has finally\n" .string "reopened.\p" .string "If you wish to see me, you are\n" .string "welcome to visit anytime.$" -MatchCall_Text_Juan4:: @ 82B341E +MatchCall_Text_Juan4:: .string "JUAN: {PLAYER}{KUN}…\p" .string "Like the finest music, the battles\n" .string "we wage together strike chords\l" @@ -2256,7 +2256,7 @@ MatchCall_Text_Juan4:: @ 82B341E .string "When I close my eyes, I see visions\n" .string "of you soaring with the melody…$" -MatchCall_Text_Sidney:: @ 82B34CC +MatchCall_Text_Sidney:: .string "SIDNEY: Yo, {PLAYER}!\p" .string "If you want to battle with me\n" .string "again, you come on back whenever\l" @@ -2264,7 +2264,7 @@ MatchCall_Text_Sidney:: @ 82B34CC .string "I'll always be here!\n" .string "I'll be waiting!$" -MatchCall_Text_Phoebe:: @ 82B3561 +MatchCall_Text_Phoebe:: .string "PHOEBE: Hi, {PLAYER}!\p" .string "How about coming back here again\n" .string "sometime?\p" @@ -2272,7 +2272,7 @@ MatchCall_Text_Phoebe:: @ 82B3561 .string "your bond has grown with your\l" .string "POKéMON.$" -MatchCall_Text_Glacia:: @ 82B35E4 +MatchCall_Text_Glacia:: .string "GLACIA: Hello, {PLAYER}.\p" .string "I trust you haven't become\n" .string "complacent with your power?\p" @@ -2280,7 +2280,7 @@ MatchCall_Text_Glacia:: @ 82B35E4 .string "hot emotions just a little, do come\l" .string "to the POKéMON LEAGUE…$" -MatchCall_Text_Drake:: @ 82B368B +MatchCall_Text_Drake:: .string "DRAKE: That voice… {PLAYER}, is it?\n" .string "You sound well…\p" .string "I understand that there is now\n" @@ -2292,7 +2292,7 @@ MatchCall_Text_Drake:: @ 82B368B .string "the POKéMON LEAGUE!\p" .string "Don't you agree, {PLAYER}?$" -MatchCall_Text_Wallace:: @ 82B3790 +MatchCall_Text_Wallace:: .string "WALLACE: Hello, {PLAYER}{KUN}.\n" .string "Have you met STEVEN?\p" .string "He is…\n" @@ -2306,7 +2306,7 @@ MatchCall_Text_Wallace:: @ 82B3790 .string "But what is a rare stone exactly?\n" .string "All I can think of is a METEORITE…$" -MatchCall_Text_MayRayquazaCall: @ 82B38C1 +MatchCall_Text_MayRayquazaCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "MAY: Hi, {PLAYER}{KUN}!\p" @@ -2321,7 +2321,7 @@ MatchCall_Text_MayRayquazaCall: @ 82B38C1 .string "… … … … … …\n" .string "… … … … … Click!$" -MatchCall_Text_BrendanRayquazaCall: @ 82B39C6 +MatchCall_Text_BrendanRayquazaCall: .string "… … … … … …\n" .string "… … … … … Beep!\p" .string "BRENDAN: Hey, {PLAYER}!\n" @@ -2335,14 +2335,14 @@ MatchCall_Text_BrendanRayquazaCall: @ 82B39C6 .string "… … … … … …\n" .string "… … … … … Click!$" -MatchCall_Text_May1:: @ 2B3AB3 +MatchCall_Text_May1:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "MR. BRINEY retired as a SAILOR,\n" .string "but I still see him out on the sea\l" .string "with his pet PEEKO sometimes.\p" .string "He must love the sea still.$" -MatchCall_Text_May2:: @ 2B3B3F +MatchCall_Text_May2:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "You know how little towns like\n" .string "PETALBURG and DEWFORD have GYMS?\p" @@ -2351,7 +2351,7 @@ MatchCall_Text_May2:: @ 2B3B3F .string "When they finally build a GYM there,\n" .string "I should apply to be the LEADER.$" -MatchCall_Text_May3:: @ 2B3C13 +MatchCall_Text_May3:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "Do you remember a man named\n" .string "the CUTTER in RUSTBORO?\l" @@ -2363,13 +2363,13 @@ MatchCall_Text_May3:: @ 2B3C13 .string "… … … … … …\p" .string "The ROCK SMASH GUY!$" -MatchCall_Text_May4:: @ 2B3CF3 +MatchCall_Text_May4:: .string "MAY: {PLAYER}{KUN}?\p" .string "RUSTURF TUNNEL…\n" .string "They named it that because it\l" .string "joins RUSTBORO and VERDANTURF.$" -MatchCall_Text_May5:: @ 2B3D4B +MatchCall_Text_May5:: .string "MAY: {PLAYER}{KUN}, how are you?\p" .string "I'm out on ROUTE 111 now.\p" .string "I'm going to get a rest at an old\n" @@ -2377,7 +2377,7 @@ MatchCall_Text_May5:: @ 2B3D4B .string "She lives just north of\n" .string "the desert.$" -MatchCall_Text_May6:: @ 2B3DD1 +MatchCall_Text_May6:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "Did you know about the MIRAGE\n" .string "TOWER in the desert?\p" @@ -2385,21 +2385,21 @@ MatchCall_Text_May6:: @ 2B3DD1 .string "to mysteriously come and go.\p" .string "I wish I could see it.$" -MatchCall_Text_May7:: @ 2B3E69 +MatchCall_Text_May7:: .string "MAY: {PLAYER}{KUN}, yahoo!\n" .string "I'm on ROUTE 119 now.\p" .string "There's a big river here, and\n" .string "it often rains.\p" .string "I got soaked!$" -MatchCall_Text_May8:: @ 2B3ECD +MatchCall_Text_May8:: .string "MAY: {PLAYER}{KUN}, hi.\p" .string "MT. PYRE is a memorial to POKéMON\n" .string "whose lives have ended.\p" .string "Maybe as a result, it's infested\n" .string "with many GHOST-type POKéMON!$" -MatchCall_Text_May9:: @ 2B3F2B +MatchCall_Text_May9:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "I was thinking of going to the hot\n" .string "spring in LAVARIDGE.\p" @@ -2407,14 +2407,14 @@ MatchCall_Text_May9:: @ 2B3F2B .string "PASS, I ran into some bad-looking\l" .string "characters. The mood was ugly!$" -MatchCall_Text_May10:: @ 2B3FFB +MatchCall_Text_May10:: .string "MAY: Hi, {PLAYER}{KUN}!\n" .string "Did you see the news?\p" .string "They say CAPT. STERN discovered\n" .string "the SEAFLOOR CAVERN while on his\l" .string "submarine expedition.$" -MatchCall_Text_May11:: @ 2B402B +MatchCall_Text_May11:: .string "MAY: Hi, {PLAYER}{KUN}!\n" .string "Don't you think it's neat?\p" .string "Even if you don't have a boat,\n" @@ -2424,7 +2424,7 @@ MatchCall_Text_May11:: @ 2B402B .string "There's a POKéMON move that lets\n" .string "you go to the bottom of the sea.$" -MatchCall_Text_May12:: @ 2B414B +MatchCall_Text_May12:: .string "MAY: Hi, {PLAYER}{KUN}!\n" .string "Hope things are okay!\p" .string "Have you been on the sea and\n" @@ -2435,7 +2435,7 @@ MatchCall_Text_May12:: @ 2B414B .string "When you get to the other side,\n" .string "come up to the surface. Easy!$" -MatchCall_Text_May13:: @ 2B4228 +MatchCall_Text_May13:: .string "MAY: Hi, {PLAYER}{KUN}!\p" .string "How's it going?\n" .string "Are you filling your POKéDEX?\p" @@ -2444,7 +2444,7 @@ MatchCall_Text_May13:: @ 2B4228 .string "And there are three of them!\p" .string "I would love to see even one…$" -MatchCall_Text_May14:: @ 2B42E0 +MatchCall_Text_May14:: .string "MAY: {PLAYER}{KUN}!\n" .string "I heard the rumors!\p" .string "You beat the SOOTOPOLIS GYM\n" @@ -2452,7 +2452,7 @@ MatchCall_Text_May14:: @ 2B42E0 .string "That means you don't have far\n" .string "to go, do you?$" -MatchCall_Text_May15:: @ 2B4350 +MatchCall_Text_May15:: .string "MAY: There isn't a single TRAINER\n" .string "left in HOENN who doesn't know who\l" .string "you are, {PLAYER}{KUN}!\p" @@ -2460,7 +2460,7 @@ MatchCall_Text_May15:: @ 2B4350 .string "with you, {PLAYER}{KUN}, they're all\l" .string "surprised!$" -MatchCall_Text_Brendan1:: @ 2B43EF +MatchCall_Text_Brendan1:: .string "BRENDAN: Hey, {PLAYER}!\p" .string "MR. BRINEY retired as a SAILOR,\n" .string "but I still see him out on the sea\l" @@ -2468,7 +2468,7 @@ MatchCall_Text_Brendan1:: @ 2B43EF .string "I guess he must love\n" .string "the sea still.$" -MatchCall_Text_Brendan2:: @ 2B4486 +MatchCall_Text_Brendan2:: .string "BRENDAN: Hey, {PLAYER}!\p" .string "I don't get how little towns like\n" .string "PETALBURG and DEWFORD have GYMS.\p" @@ -2477,7 +2477,7 @@ MatchCall_Text_Brendan2:: @ 2B4486 .string "When they finally build a GYM there,\n" .string "I should apply to be the LEADER.$" -MatchCall_Text_Brendan3:: @ 2B4560 +MatchCall_Text_Brendan3:: .string "BRENDAN: Yo, {PLAYER}!\p" .string "Do you remember a guy named\n" .string "the CUTTER in RUSTBORO?\l" @@ -2489,14 +2489,14 @@ MatchCall_Text_Brendan3:: @ 2B4560 .string "… … … … … …\p" .string "The ROCK SMASH GUY!$" -MatchCall_Text_Brendan4:: @ 2B463F +MatchCall_Text_Brendan4:: .string "BRENDAN: This voice… {PLAYER}?\p" .string "They gave RUSTURF TUNNEL its name\n" .string "because it joins RUSTBORO and\l" .string "VERDANTURF.\p" .string "Did you know that?$" -MatchCall_Text_Brendan5:: @ 2B46B7 +MatchCall_Text_Brendan5:: .string "BRENDAN: {PLAYER}, what's up?\p" .string "Hey, I'm out on ROUTE 111 now.\p" .string "I'm going to rest up at an old\n" @@ -2504,7 +2504,7 @@ MatchCall_Text_Brendan5:: @ 2B46B7 .string "If you're in the area, you should\n" .string "visit her, too.$" -MatchCall_Text_Brendan6:: @ 2B4761 +MatchCall_Text_Brendan6:: .string "BRENDAN: Hey, {PLAYER}!\p" .string "Did you know about the MIRAGE\n" .string "TOWER in the desert?\p" @@ -2512,21 +2512,21 @@ MatchCall_Text_Brendan6:: @ 2B4761 .string "seen only sometimes.\p" .string "I'd like to see that!$" -MatchCall_Text_Brendan7:: @ 2B47F4 +MatchCall_Text_Brendan7:: .string "BRENDAN: Who's this? Oh, {PLAYER}?\n" .string "Guess what? I'm on ROUTE 119 now.\p" .string "There's a big river here, and\n" .string "it rains all the time.\p" .string "I got soaked to the bone!$" -MatchCall_Text_Brendan8:: @ 2B4882 +MatchCall_Text_Brendan8:: .string "BRENDAN: {PLAYER}!\p" .string "MT. PYRE is a memorial to POKéMON\n" .string "whose lives have ended.\p" .string "That's probably why it's infested\n" .string "with many GHOST-type POKéMON!$" -MatchCall_Text_Brendan9:: @ 2B4909 +MatchCall_Text_Brendan9:: .string "BRENDAN: Hey there, {PLAYER}.\p" .string "I was on my way back to the hot\n" .string "spring in LAVARIDGE.\p" @@ -2535,14 +2535,14 @@ MatchCall_Text_Brendan9:: @ 2B4909 .string "Those creeps…\n" .string "I think they were TEAM MAGMA.$" -MatchCall_Text_Brendan10:: @ 2B49C4 +MatchCall_Text_Brendan10:: .string "BRENDAN: Hi, {PLAYER}!\n" .string "Did you catch the news?\p" .string "They say CAPT. STERN discovered\n" .string "the SEAFLOOR CAVERN while on his\l" .string "submarine expedition.$" -MatchCall_Text_Brendan11:: @ 2B4A44 +MatchCall_Text_Brendan11:: .string "BRENDAN: Hey there, {PLAYER}!\n" .string "Don't you think it's awesome?\p" .string "Even if you don't have a boat,\n" @@ -2552,7 +2552,7 @@ MatchCall_Text_Brendan11:: @ 2B4A44 .string "travel to the bottom of the sea.\p" .string "Man, POKéMON can do anything!$" -MatchCall_Text_Brendan12:: @ 2B4B28 +MatchCall_Text_Brendan12:: .string "BRENDAN: Howdy, {PLAYER}!\n" .string "How are you holding up?\p" .string "Ever found your way to the other\n" @@ -2562,7 +2562,7 @@ MatchCall_Text_Brendan12:: @ 2B4B28 .string "When you get to the other side,\n" .string "come up to the surface. Simple!$" -MatchCall_Text_Brendan13:: @ 2B4C15 +MatchCall_Text_Brendan13:: .string "BRENDAN: Hey there, {PLAYER}!\p" .string "How's it going? Filling up your\n" .string "POKéDEX successfully?\p" @@ -2571,14 +2571,14 @@ MatchCall_Text_Brendan13:: @ 2B4C15 .string "And not just one--three!\p" .string "I'd love to catch even one…$" -MatchCall_Text_Brendan14:: @ 2B4CD8 +MatchCall_Text_Brendan14:: .string "BRENDAN: {PLAYER}!\n" .string "I heard the rumors!\p" .string "You beat the SOOTOPOLIS GYM\n" .string "LEADER? Awesome!\p" .string "You're getting awful close now!$" -MatchCall_Text_Brendan15:: @ 2B4D46 +MatchCall_Text_Brendan15:: .string "BRENDAN: There isn't a TRAINER in\n" .string "all of HOENN who doesn't know who\l" .string "you are, {PLAYER}!\p" @@ -2586,19 +2586,19 @@ MatchCall_Text_Brendan15:: @ 2B4D46 .string "with you, {PLAYER}, they get pretty\l" .string "envious!$" -MatchCall_Text_Wally1:: @ 2B4DE2 +MatchCall_Text_Wally1:: .string "WALLY: Oh, {PLAYER}!\p" .string "I've been getting healthier and\n" .string "more physically fit.\p" .string "I hope I can become a TRAINER like\n" .string "you soon, {PLAYER}!$" -MatchCall_Text_Wally2:: @ 2B4E57 +MatchCall_Text_Wally2:: .string "WALLY: {PLAYER}, hello!\p" .string "After RUSTURF TUNNEL went\n" .string "through, WANDA's been very happy!$" -MatchCall_Text_Wally3:: @ 2B4EA5 +MatchCall_Text_Wally3:: .string "WALLY: Oh, {PLAYER}!\p" .string "I… I left my uncle's place in\n" .string "VERDANTURF without telling anyone.\p" @@ -2606,7 +2606,7 @@ MatchCall_Text_Wally3:: @ 2B4EA5 .string "{PLAYER}, you understand how\n" .string "I feel, don't you?$" -MatchCall_Text_Wally4:: @ 2B4F41 +MatchCall_Text_Wally4:: .string "WALLY: {PLAYER}?\n" .string "It's me, WALLY!\p" .string "The world of TRAINERS is amazing!\p" @@ -2615,7 +2615,7 @@ MatchCall_Text_Wally4:: @ 2B4F41 .string "It's as if everyone's getting\n" .string "connected through POKéMON!$" -MatchCall_Text_Wally5:: @ 2B4FF3 +MatchCall_Text_Wally5:: .string "WALLY: {PLAYER}? It's awesome!\n" .string "That RALTS we caught together?\l" .string "It evolved, {PLAYER}!\p" @@ -2625,13 +2625,13 @@ MatchCall_Text_Wally5:: @ 2B4FF3 .string "After all, it's the POKéMON that\n" .string "should be praised!$" -MatchCall_Text_Wally6:: @ 2B50B1 +MatchCall_Text_Wally6:: .string "… … … … … …\n" .string "… … … … … …\p" .string "WALLY appears to be out of\n" .string "the POKéNAV's service area…$" -MatchCall_Text_Wally7:: @ 2B5100 +MatchCall_Text_Wally7:: .string "WALLY: Oh, {PLAYER}!\p" .string "Before I met you, I hardly ever\n" .string "left my house…\p" @@ -2640,7 +2640,7 @@ MatchCall_Text_Wally7:: @ 2B5100 .string "{PLAYER}…\n" .string "Thank you…$" -MatchCall_Text_Scott1:: @ 2B5184 +MatchCall_Text_Scott1:: .string "SCOTT: Howdy, {PLAYER}{KUN}!\p" .string "You know how POKéMON can be found\n" .string "everywhere?\p" @@ -2651,7 +2651,7 @@ MatchCall_Text_Scott1:: @ 2B5184 .string "As a result, I have to hurry\n" .string "everywhere, too. Busy, busy!$" -MatchCall_Text_Scott2:: @ 2B5275 +MatchCall_Text_Scott2:: .string "SCOTT: I'm on ROUTE 119 right now.\n" .string "It's teeming with TRAINERS!\p" .string "It's also overgrown with tall grass\n" @@ -2659,7 +2659,7 @@ MatchCall_Text_Scott2:: @ 2B5275 .string "Walking around in shorts here\n" .string "makes me all ticklish!$" -MatchCall_Text_Scott3:: @ 2B5323 +MatchCall_Text_Scott3:: .string "SCOTT: Hi, hi, {PLAYER}{KUN}!\p" .string "Have you had the chance to climb\n" .string "MT. PYRE?\p" @@ -2668,7 +2668,7 @@ MatchCall_Text_Scott3:: @ 2B5323 .string "It's somewhere every TRAINER\n" .string "should climb to the top of once.$" -MatchCall_Text_Scott4:: @ 2B53DB +MatchCall_Text_Scott4:: .string "SCOTT: Hi, {PLAYER}{KUN}!\p" .string "I've been hearing about these odd\n" .string "gangs being a nuisance.\p" @@ -2678,7 +2678,7 @@ MatchCall_Text_Scott4:: @ 2B53DB .string "skilled TRAINERS among them.\p" .string "…But if they're thugs…$" -MatchCall_Text_Scott5:: @ 2B54A5 +MatchCall_Text_Scott5:: .string "SCOTT: Oh, hi, {PLAYER}{KUN}.\p" .string "Might there be tough TRAINERS\n" .string "at the bottom of the sea?\p" @@ -2686,7 +2686,7 @@ MatchCall_Text_Scott5:: @ 2B54A5 .string "I can't swim, for one.\l" .string "And I don't raise POKéMON…$" -MatchCall_Text_Scott6:: @ 2B5541 +MatchCall_Text_Scott6:: .string "SCOTT: Hi, hi, {PLAYER}{KUN}!\p" .string "You know that you can challenge\n" .string "the POKéMON LEAGUE when you've\l" @@ -2703,20 +2703,20 @@ MatchCall_Text_Scott6:: @ 2B5541 .string "the POKéMON LEAGUE into the HALL\l" .string "OF FAME!$" -MatchCall_Text_Scott7:: @ 2B56CA +MatchCall_Text_Scott7:: .string "… … … … … …\n" .string "… … … … … …\p" .string "SCOTT appears to be out of\n" .string "the POKéNAV's service area…$" -MatchCall_Text_Norman1:: @ 82B5719 +MatchCall_Text_Norman1:: .string "DAD: In RUSTBORO, there's a man\n" .string "that goes by the odd name of\l" .string "the CUTTER.\p" .string "If you're in the area, you should\n" .string "pay him a visit.$" -MatchCall_Text_Norman2:: @ 82B5795 +MatchCall_Text_Norman2:: .string "DAD: Hm… Little by little, but also\n" .string "very surely, you're getting\l" .string "tougher, {PLAYER}.\p" @@ -2725,7 +2725,7 @@ MatchCall_Text_Norman2:: @ 82B5795 .string "and me…\p" .string "This feeling is hard to explain.$" -MatchCall_Text_Norman3:: @ 82B584D +MatchCall_Text_Norman3:: .string "DAD: I see…\n" .string "You've collected four GYM BADGES…\p" .string "There's no avoiding it now.\n" @@ -2733,7 +2733,7 @@ MatchCall_Text_Norman3:: @ 82B584D .string "Come anytime.\n" .string "We'll all be waiting for you!$" -MatchCall_Text_Norman4:: @ 82B58E3 +MatchCall_Text_Norman4:: .string "DAD: {PLAYER}! You'd better go visit\n" .string "Mother every so often.\p" .string "I'm going to remain here and\n" @@ -2741,27 +2741,27 @@ MatchCall_Text_Norman4:: @ 82B58E3 .string "The way of battling is deep\n" .string "and unforgiving!$" -MatchCall_Text_Norman5:: @ 82B5979 +MatchCall_Text_Norman5:: .string "DAD: Oh, hi, {PLAYER}!\p" .string "What's that? MAGMA EMBLEM?\n" .string "I don't know what that's about.\p" .string "But with a name like that, it may\n" .string "be somehow linked to a volcano!$" -MatchCall_Text_Norman6:: @ 82B5A07 +MatchCall_Text_Norman6:: .string "DAD: Hiyah! Haah! Dwah!\p" .string "…Oh? {PLAYER}!\p" .string "You caught me right in the middle\n" .string "of a POKéMON training session!$" -MatchCall_Text_Norman7:: @ 82B5A69 +MatchCall_Text_Norman7:: .string "DAD: {PLAYER}!\p" .string "Who would've thought you'd become\n" .string "the POKéMON LEAGUE CHAMPION…\p" .string "Okay!\n" .string "I won't be left behind!$" -MatchCall_Text_Norman8:: @ 82B5ACF +MatchCall_Text_Norman8:: .string "DAD: Hm? {PLAYER}?\n" .string "What good timing!\p" .string "This time, I'm going to challenge\n" @@ -2769,11 +2769,11 @@ MatchCall_Text_Norman8:: @ 82B5ACF .string "I'm waiting in the PETALBURG GYM.\n" .string "Accept my challenge anytime!$" -MatchCall_Text_Norman9:: @ 82B5B5E +MatchCall_Text_Norman9:: .string "DAD: …You amaze me, {PLAYER}.\n" .string "How much higher will you soar?$" -MatchCall_Text_Steven1:: @ 82B5B95 +MatchCall_Text_Steven1:: .string "STEVEN: Hi, {PLAYER}{KUN}!\p" .string "Have you been to MAUVILLE\n" .string "already?\p" @@ -2784,14 +2784,14 @@ MatchCall_Text_Steven1:: @ 82B5B95 .string "You may make a new discovery\n" .string "there.$" -MatchCall_Text_Steven2:: @ 82B5C53 +MatchCall_Text_Steven2:: .string "STEVEN: Hi, {PLAYER}{KUN}!\p" .string "I've met a lot of different\n" .string "TRAINERS so far.\p" .string "But you're one of a kind.\n" .string "You're not like anyone else.$" -MatchCall_Text_Steven3:: @ 82B5CC9 +MatchCall_Text_Steven3:: .string "STEVEN: Hi, {PLAYER}{KUN}!\p" .string "When you're on an adventure with\n" .string "your POKéMON, what do you think?\p" @@ -2802,7 +2802,7 @@ MatchCall_Text_Steven3:: @ 82B5CC9 .string "Depending on how you think, your\n" .string "adventure's significance changes.$" -MatchCall_Text_Steven4:: @ 82B5DB4 +MatchCall_Text_Steven4:: .string "STEVEN: Hello?\n" .string "{PLAYER}{KUN}?\p" .string "I'm involved in a spot of trouble\n" @@ -2810,7 +2810,7 @@ MatchCall_Text_Steven4:: @ 82B5DB4 .string "I'm sorry, but I can't talk now.\n" .string "Bye!$" -MatchCall_Text_Steven5:: @ 82B5E26 +MatchCall_Text_Steven5:: .string "STEVEN: Oh!\n" .string "{PLAYER}{KUN}!\p" .string "There's no need to talk.\n" @@ -2818,12 +2818,12 @@ MatchCall_Text_Steven5:: @ 82B5E26 .string "You have to believe in yourself\n" .string "and do what's right.$" -MatchCall_Text_Steven6:: @ 82B5EA2 +MatchCall_Text_Steven6:: .string "… … … … … …\p" .string "STEVEN appears not to be getting\n" .string "the call…$" -MatchCall_Text_Steven7:: @ 82B5ED9 +MatchCall_Text_Steven7:: .string "STEVEN: {PLAYER}{KUN}… Congratulations\n" .string "for entering the HALL OF FAME.\p" .string "… … … … … …\n" @@ -2831,7 +2831,7 @@ MatchCall_Text_Steven7:: @ 82B5ED9 .string "I hope we can meet again\n" .string "somewhere!$" -MatchCall_Text_BirchRegisterCall: @ 82B5F52 +MatchCall_Text_BirchRegisterCall: .string "PROF. BIRCH: Oh, {PLAYER}{KUN}!\n" .string "I've already heard about you!\p" .string "It seems your POKéNAV's been\n" @@ -2842,7 +2842,7 @@ MatchCall_Text_BirchRegisterCall: @ 82B5F52 .string "out in the field.\p" .string "… … … … … …$" -MatchCall_Text_RegisteredBirch: @ 82B603A +MatchCall_Text_RegisteredBirch: .string "Registered PROF. BIRCH\n" .string "in the POKéNAV.$" @@ -2851,7 +2851,7 @@ MatchCall_Text_UnusedProfBirch: .string "the POKéDEX and POKéNAV, studying\l" .string "POKéMON becomes more fun, eh?$" -MatchCall_Text_MrStone1:: @ 82B60C0 +MatchCall_Text_MrStone1:: .string "MR. STONE: Oh? {PLAYER}{KUN}!\p" .string "Since you called me, the POKéNAV\n" .string "must be working properly!\p" @@ -2866,7 +2866,7 @@ MatchCall_Text_MrStone1:: @ 82B60C0 .string "Wahahaha!\n" .string "See you again!$" -MatchCall_Text_MrStone2:: @ 82B61E6 +MatchCall_Text_MrStone2:: .string "MR. STONE: Oh? {PLAYER}{KUN}!\p" .string "What's wrong? Have you forgotten\n" .string "about that little errand of mine?\p" @@ -2878,7 +2878,7 @@ MatchCall_Text_MrStone2:: @ 82B61E6 .string "Now, since I am a busy PRESIDENT,\n" .string "I have to go! Bye-bye!$" -MatchCall_Text_MrStone3:: @ 82B6302 +MatchCall_Text_MrStone3:: .string "MR. STONE: Oh! {PLAYER}{KUN}!\p" .string "Ah, so you've met STEVEN!\n" .string "I'd better reward you, then!\p" @@ -2886,7 +2886,7 @@ MatchCall_Text_MrStone3:: @ 82B6302 .string "come see me at my office.\p" .string "I'll be waiting for you!$" -MatchCall_Text_MrStone4:: @ 82B63A0 +MatchCall_Text_MrStone4:: .string "MR. STONE: Oh! {PLAYER}{KUN}!\p" .string "Did you know that DEVON was\n" .string "digging the RUSTURF TUNNEL?\p" @@ -2897,14 +2897,14 @@ MatchCall_Text_MrStone4:: @ 82B63A0 .string "live in peace than worry about our\l" .string "own convenience.$" -MatchCall_Text_MrStone5:: @ 82B64A2 +MatchCall_Text_MrStone5:: .string "MR. STONE: Hello, hello, {PLAYER}{KUN}!\p" .string "I heard from someone in PETALBURG\n" .string "that you're NORMAN's child!\p" .string "No wonder you're such a capable\n" .string "being!$" -MatchCall_Text_MrStone6:: @ 82B6526 +MatchCall_Text_MrStone6:: .string "MR. STONE: What's that?\p" .string "You battled your own father and\n" .string "defeated him?\p" @@ -2912,7 +2912,7 @@ MatchCall_Text_MrStone6:: @ 82B6526 .string "I had no idea that I befriended\n" .string "someone so special! Wahaha!$" -MatchCall_Text_MrStone7:: @ 82B65BB +MatchCall_Text_MrStone7:: .string "Hello!\n" .string "This is DEVON CORPORATI…\l" .string "Oh, hello, {PLAYER}!\p" @@ -2921,21 +2921,21 @@ MatchCall_Text_MrStone7:: @ 82B65BB .string "Our PRESIDENT is busy, but you\n" .string "seem to be just as busy, {PLAYER}.$" -MatchCall_Text_MrStone8:: @ 82B6664 +MatchCall_Text_MrStone8:: .string "…Huh? …What's that?\p" .string "GROU… Yes? …DON?\p" .string "You're breaking up…\n" .string "…can't hear…\p" .string "BZZZZ…$" -MatchCall_Text_MrStone9:: @ 82B66B1 +MatchCall_Text_MrStone9:: .string "…Huh? …What's that?\p" .string "Seaflo… Yes? …Caver…?\p" .string "You're breaking up…\n" .string "…can't hear…\p" .string "BZZZZ…$" -MatchCall_Text_MrStone10:: @ 82B6703 +MatchCall_Text_MrStone10:: .string "MR. STONE: {PLAYER}{KUN}! It's me!\p" .string "You were apparently involved in all\n" .string "sorts of things, but I, being busy,\l" @@ -2945,7 +2945,7 @@ MatchCall_Text_MrStone10:: @ 82B6703 .string "I'll always be in your corner!\n" .string "Take care!$" -MatchCall_Text_MrStone11:: @ 82B67ED +MatchCall_Text_MrStone11:: .string "MR. STONE: … … … … … …\n" .string "Is this maybe {PLAYER}{KUN}?\p" .string "Your voice is so full of confidence,\n" diff --git a/data/text/mauville_man.inc b/data/text/mauville_man.inc index 6326f5d8cdef..5d9954d9bc9d 100644 --- a/data/text/mauville_man.inc +++ b/data/text/mauville_man.inc @@ -1,63 +1,63 @@ @ Only contains a portion of the mauville_man text. The rest is in scripts/mauville_man.inc -gText_SoPretty:: @ 8294295 +gText_SoPretty:: .string " so pretty!$" -gText_SoDarling:: @ 82942A1 +gText_SoDarling:: .string " so darling!$" -gText_SoRelaxed:: @ 82942AE +gText_SoRelaxed:: .string " so relaxed!$" -gText_SoSunny:: @ 82942BB +gText_SoSunny:: .string " so sunny!$" -gText_SoDesirable:: @ 82942C6 +gText_SoDesirable:: .string " so desirable!$" -gText_SoExciting:: @ 82942D5 +gText_SoExciting:: .string " so exciting!$" -gText_SoAmusing:: @ 82942E3 +gText_SoAmusing:: .string " so amusing!$" -gText_SoMagical:: @ 82942F0 +gText_SoMagical:: .string " so magical!$" -gOtherText_Is:: @ 82942FD +gOtherText_Is:: .string " is$" -gOtherText_DontYouAgree:: @ 8294301 +gOtherText_DontYouAgree:: .string "\n" .string "Don't you agree?$" -gMauvilleManText_ISoWantToGoOnAVacation:: @ 8294313 +gMauvilleManText_ISoWantToGoOnAVacation:: .string "I so want to go on a vacation.\n" .string "Would you happen to know a nice place?$" -gMauvilleManText_IBoughtCrayonsWith120Colors:: @ 8294359 +gMauvilleManText_IBoughtCrayonsWith120Colors:: .string "I bought crayons with 120 colors!\n" .string "Don't you think that's nice?$" -gMauvilleManText_WouldntItBeNiceIfWeCouldFloat:: @ 8294398 +gMauvilleManText_WouldntItBeNiceIfWeCouldFloat:: .string "Wouldn't it be nice if we could float\n" .string "away on a cloud of bubbles?$" -gMauvilleManText_WhenYouWriteOnASandyBeach:: @ 82943DA +gMauvilleManText_WhenYouWriteOnASandyBeach:: .string "When you write on a sandy beach,\n" .string "they wash away. It makes me sad.$" -gMauvilleManText_WhatsTheBottomOfTheSeaLike:: @ 829441C +gMauvilleManText_WhatsTheBottomOfTheSeaLike:: .string "What's the bottom of the sea like?\n" .string "Just once I would so love to go!$" -gMauvilleManText_WhenYouSeeTheSettingSunDoesIt:: @ 8294460 +gMauvilleManText_WhenYouSeeTheSettingSunDoesIt:: .string "When you see the setting sun, does it\n" .string "make you want to go home?$" -gMauvilleManText_LyingBackInTheGreenGrass:: @ 82944A0 +gMauvilleManText_LyingBackInTheGreenGrass:: .string "Lying back in the green grass…\n" .string "Oh, it's so, so nice!$" -gMauvilleManText_SecretBasesAreSoWonderful:: @ 82944D5 +gMauvilleManText_SecretBasesAreSoWonderful:: .string "SECRET BASES are so wonderful!\n" .string "Can't you feel the excitement?$" diff --git a/data/text/mevent.inc b/data/text/mevent.inc index ae4032eb46ef..5fb00bc9705c 100644 --- a/data/text/mevent.inc +++ b/data/text/mevent.inc @@ -1,14 +1,14 @@ -Mevent_Text_FillOutQuestionnaire:: @ 827339F +Mevent_Text_FillOutQuestionnaire:: .string "There is a questionnaire.\n" .string "Would you like to fill it out?$" -Mevent_Text_QuestionnaireThankYou:: @ 82733D8 +Mevent_Text_QuestionnaireThankYou:: .string "Thank you for taking the time to\n" .string "fill out our questionnaire.\p" .string "Your feedback will be used for\n" .string "future reference.$" -Mevent_Text_YouKnowThoseWordsGift:: @ 8273446 +Mevent_Text_YouKnowThoseWordsGift:: .string "Oh, hello!\n" .string "You know those words?\p" .string "That means you must know about\n" @@ -16,27 +16,27 @@ Mevent_Text_YouKnowThoseWordsGift:: @ 8273446 .string "From now on, you should be\n" .string "receiving MYSTERY GIFTS!$" -Mevent_Text_YouCanAccessMysteryGift:: @ 82734CC +Mevent_Text_YouCanAccessMysteryGift:: .string "Once you save your game, you can\n" .string "access the MYSTERY GIFT.$" -Mevent_Text_YouKnowThoseWordsEvent:: @ 8273506 +Mevent_Text_YouKnowThoseWordsEvent:: .string "Oh, hello!\n" .string "You know those words?\p" .string "That means you must know about\n" .string "the MYSTERY EVENT.$" -Mevent_Text_YouCanAccessMysteryEvent:: @ 8273559 +Mevent_Text_YouCanAccessMysteryEvent:: .string "Once you save your game, you can\n" .string "access the MYSTERY EVENT.$" -Mevent_Text_TheresATicketForYou:: @ 8273594 +Mevent_Text_TheresATicketForYou:: .string "Thank you for using the MYSTERY\n" .string "EVENT System.\p" .string "You must be {PLAYER}.\n" .string "There is a ticket here for you.$" -Mevent_Text_TryUsingItAtLilycovePort:: @ 82735F2 +Mevent_Text_TryUsingItAtLilycovePort:: .string "It appears to be for use at\n" .string "the LILYCOVE CITY port.\p" .string "Why not give it a try and see what\n" diff --git a/data/text/move_tutors.inc b/data/text/move_tutors.inc index baadad73d2ff..591655640c40 100644 --- a/data/text/move_tutors.inc +++ b/data/text/move_tutors.inc @@ -1,8 +1,8 @@ -MoveTutor_Text_ThisMoveCanOnlyBeLearnedOnce: @ 82C6E05 +MoveTutor_Text_ThisMoveCanOnlyBeLearnedOnce: .string "This move can be learned only\n" .string "once. Is that okay?$" -MoveTutor_Text_SwaggerTeach: @ 82C6E37 +MoveTutor_Text_SwaggerTeach: .string "Heh! My POKéMON totally rules!\n" .string "It's cooler than any POKéMON!\p" .string "I was lipping off with a swagger in\n" @@ -12,19 +12,19 @@ MoveTutor_Text_SwaggerTeach: @ 82C6E37 .string "If you'd like, I'll teach the move\n" .string "SWAGGER to a POKéMON of yours.$" -MoveTutor_Text_SwaggerDeclined: @ 82C6F33 +MoveTutor_Text_SwaggerDeclined: .string "What, no? Can't you get into\n" .string "the spirit of things?$" -MoveTutor_Text_SwaggerWhichMon: @ 82C6F66 +MoveTutor_Text_SwaggerWhichMon: .string "All right, which POKéMON wants to\n" .string "learn how to SWAGGER?$" -MoveTutor_Text_SwaggerTaught: @ 82C6F9E +MoveTutor_Text_SwaggerTaught: .string "I'll just praise my POKéMON from now\n" .string "on without the swagger.$" -MoveTutor_Text_RolloutTeach: @ 82C6FDB +MoveTutor_Text_RolloutTeach: .string "Did you know that you can go from\n" .string "here a long way in that direction\l" .string "without changing direction?\p" @@ -35,19 +35,19 @@ MoveTutor_Text_RolloutTeach: @ 82C6FDB .string "I can teach one the move ROLLOUT\n" .string "if you'd like.$" -MoveTutor_Text_RolloutDeclined: @ 82C70C4 +MoveTutor_Text_RolloutDeclined: .string "You don't need to be shy about it.\n" .string "Let's roll!$" -MoveTutor_Text_RolloutWhichMon: @ 82C70F3 +MoveTutor_Text_RolloutWhichMon: .string "Ehehe, sure thing! It'd be great if\n" .string "the POKéMON looked like me.$" -MoveTutor_Text_RolloutTaught: @ 82C7133 +MoveTutor_Text_RolloutTaught: .string "Rolling around in the grass makes me\n" .string "happy. Come on, let's roll!$" -MoveTutor_Text_FuryCutterTeach: @ 82C7174 +MoveTutor_Text_FuryCutterTeach: .string "There's a move that gets stronger\n" .string "when you keep using it in a row.\p" .string "It's a BUG-type move, and it is\n" @@ -55,18 +55,18 @@ MoveTutor_Text_FuryCutterTeach: @ 82C7174 .string "It's called FURY CUTTER.\n" .string "Want me to teach it to a POKéMON?$" -MoveTutor_Text_FuryCutterDeclined: @ 82C7221 +MoveTutor_Text_FuryCutterDeclined: .string "We're not on the same wavelength.$" -MoveTutor_Text_FuryCutterWhichMon: @ 82C7243 +MoveTutor_Text_FuryCutterWhichMon: .string "Yay!\n" .string "Show me which POKéMON I should teach.$" -MoveTutor_Text_FuryCutterTaught: @ 82C726E +MoveTutor_Text_FuryCutterTaught: .string "I get a thrill watching to see if\n" .string "the move keeps hitting in succession!$" -MoveTutor_MimicTeach: @ 82C72B6 +MoveTutor_MimicTeach: .string "Ah, young one!\p" .string "I am also a young one, but I mimic\n" .string "the styles and speech of the elderly\l" @@ -75,21 +75,21 @@ MoveTutor_MimicTeach: @ 82C72B6 .string "Would you agree to it if I were to\l" .string "offer to teach the move MIMIC?$" -MoveTutor_MimicDeclined: @ 82C737F +MoveTutor_MimicDeclined: .string "Oh, boo! I wanted to teach MIMIC\n" .string "to your POKéMON!$" -MoveTutor_Text_MimicWhichMon: @ 82C73B1 +MoveTutor_Text_MimicWhichMon: .string "Fwofwo! And so I shall!\n" .string "Let me see the POKéMON\l" .string "you wish me to teach.$" -MoveTutor_Text_MimicTaught: @ 82C73F6 +MoveTutor_Text_MimicTaught: .string "MIMIC is a move of great depth.\p" .string "Could you execute it to perfection\n" .string "as well as me…?$" -MoveTutor_Text_MetronomeTeach: @ 82C7449 +MoveTutor_Text_MetronomeTeach: .string "I want all sorts of things!\n" .string "But I used up my allowance…\p" .string "Wouldn't it be nice if there were\n" @@ -100,22 +100,22 @@ MoveTutor_Text_MetronomeTeach: @ 82C7449 .string "Money won't appear, but your POKéMON\n" .string "will waggle a finger. Yes?$" -MoveTutor_Text_MetronomeDeclined: @ 82C7556 +MoveTutor_Text_MetronomeDeclined: .string "Okay. I'll be here if you change\n" .string "your mind.$" -MoveTutor_Text_MetronomeWhichMon: @ 82C7582 +MoveTutor_Text_MetronomeWhichMon: .string "Okay! I'll teach it!\n" .string "Which POKéMON should I teach?$" -MoveTutor_Text_MetronomeTaught: @ 82C75B5 +MoveTutor_Text_MetronomeTaught: .string "When a POKéMON waggles its finger\n" .string "like a METRONOME, all sorts of nice\l" .string "things happen.\p" .string "Wouldn't it be nice if we could\n" .string "use it, too?$" -MoveTutor_Text_SleepTalkTeach: @ 82C7637 +MoveTutor_Text_SleepTalkTeach: .string "Humph! My wife relies on HIDDEN\n" .string "POWER to stay awake.\p" .string "She should just take a nap like I do,\n" @@ -123,21 +123,21 @@ MoveTutor_Text_SleepTalkTeach: @ 82C7637 .string "I can teach your POKéMON how to\n" .string "SLEEP TALK instead. Interested?$" -MoveTutor_Text_SleepTalkDeclined: @ 82C76E2 +MoveTutor_Text_SleepTalkDeclined: .string "Oh, fine, fine. You want to stay awake\n" .string "with HIDDEN POWER, too…$" -MoveTutor_Text_SleepTalkWhichMon: @ 82C7721 +MoveTutor_Text_SleepTalkWhichMon: .string "Ah, an appreciative child!\n" .string "Which POKéMON should I teach?$" -MoveTutor_Text_SleepTalkTaught: @ 82C775A +MoveTutor_Text_SleepTalkTaught: .string "I've never once gotten my wife's\n" .string "coin trick right.\p" .string "I would be happy if I got it right\n" .string "even as I SLEEP TALK…$" -MoveTutor_Text_SubstituteTeach: @ 82C77C6 +MoveTutor_Text_SubstituteTeach: .string "When I see the wide world from up\n" .string "here on the roof…\p" .string "I think about how nice it would be\n" @@ -148,22 +148,22 @@ MoveTutor_Text_SubstituteTeach: @ 82C77C6 .string "I know! Would you be interested in\n" .string "having a POKéMON learn SUBSTITUTE?$" -MoveTutor_Text_SubstituteDeclined: @ 82C78D1 +MoveTutor_Text_SubstituteDeclined: .string "Oh, no?\p" .string "A POKéMON can make a copy of\n" .string "itself using it, you know.$" -MoveTutor_Text_SubstituteWhichMon: @ 82C7911 +MoveTutor_Text_SubstituteWhichMon: .string "Giggle…\n" .string "Which POKéMON do you want me to\l" .string "teach SUBSTITUTE?$" -MoveTutor_Text_SubstituteTaught: @ 82C794B +MoveTutor_Text_SubstituteTaught: .string "We human beings should enjoy our\n" .string "own lives to the utmost!\p" .string "I hope you'll get that way, too!$" -MoveTutor_Text_DynamicPunchTeach: @ 82C79A6 +MoveTutor_Text_DynamicPunchTeach: .string "I can't do this anymore!\p" .string "It's utterly hopeless!\p" .string "I'm a FIGHTING-type TRAINER,\n" @@ -176,19 +176,19 @@ MoveTutor_Text_DynamicPunchTeach: @ 82C79A6 .string "Or do you want me to teach your\n" .string "POKéMON DYNAMICPUNCH?$" -MoveTutor_Text_DynamicPunchDeclined: @ 82C7AD4 +MoveTutor_Text_DynamicPunchDeclined: .string "Darn! You're even making fun of me?\n" .string "Punch! Punch! Punch!$" -MoveTutor_Text_DynamicPunchWhichMon: @ 82C7B0D +MoveTutor_Text_DynamicPunchWhichMon: .string "What? You do? You're a good person!\n" .string "Which POKéMON should I teach?$" -MoveTutor_Text_DynamicPunchTaught: @ 82C7B4F +MoveTutor_Text_DynamicPunchTaught: .string "I want you to win at the MOSSDEEP GYM\n" .string "using that DYNAMICPUNCH!$" -MoveTutor_Text_DoubleEdgeTeach: @ 82C7B8E +MoveTutor_Text_DoubleEdgeTeach: .string "Sigh…\p" .string "SOOTOPOLIS's GYM LEADER is really\n" .string "lovably admirable.\p" @@ -199,19 +199,19 @@ MoveTutor_Text_DoubleEdgeTeach: @ 82C7B8E .string "Please, let me teach your POKéMON\n" .string "the move DOUBLE-EDGE!$" -MoveTutor_Text_DoubleEdgeDeclined: @ 82C7C7E +MoveTutor_Text_DoubleEdgeDeclined: .string "Oh…\n" .string "Even you rejected me…$" -MoveTutor_Text_DoubleEdgeWhichMon: @ 82C7C98 +MoveTutor_Text_DoubleEdgeWhichMon: .string "Okay, which POKéMON should I teach\n" .string "DOUBLE-EDGE?$" -MoveTutor_Text_DoubleEdgeTaught: @ 82C7CC8 +MoveTutor_Text_DoubleEdgeTaught: .string "I won't live for love anymore!\n" .string "I'll become tough!$" -MoveTutor_Text_ExplosionTeach: @ 82C7CFA +MoveTutor_Text_ExplosionTeach: .string "I don't intend to be going nowhere\n" .string "fast in the sticks like this forever.\p" .string "You watch me, I'll get out to the city\n" @@ -221,15 +221,15 @@ MoveTutor_Text_ExplosionTeach: @ 82C7CFA .string "If you overheard that, I'll happily\n" .string "teach EXPLOSION to your POKéMON!$" -MoveTutor_Text_ExplosionDeclined: @ 82C7E04 +MoveTutor_Text_ExplosionDeclined: .string "Gaah! You're turning me down because\n" .string "I live in the country?$" -MoveTutor_Text_ExplosionWhichMon: @ 82C7E40 +MoveTutor_Text_ExplosionWhichMon: .string "Fine! An EXPLOSION it is!\n" .string "Which POKéMON wants to blow up?$" -MoveTutor_Text_ExplosionTaught: @ 82C7E7A +MoveTutor_Text_ExplosionTaught: .string "For a long time, I've taught POKéMON\n" .string "how to use EXPLOSION, but I've yet\l" .string "to ignite my own EXPLOSION…\p" diff --git a/data/text/obtain_item.inc b/data/text/obtain_item.inc index d263388f5f74..37788a8ffe56 100644 --- a/data/text/obtain_item.inc +++ b/data/text/obtain_item.inc @@ -1,31 +1,31 @@ -gText_ObtainedTheItem:: @ 8272A78 +gText_ObtainedTheItem:: .string "Obtained the {STR_VAR_2}!$" -gText_TheBagIsFull:: @ 8272A89 +gText_TheBagIsFull:: .string "The BAG is full…$" -gText_PutItemInPocket:: @ 8272A9A +gText_PutItemInPocket:: .string "{PLAYER} put away the {STR_VAR_2}\n" .string "in the {STR_VAR_3} POCKET.$" -gText_PlayerFoundOneItem:: @ 8272ABF +gText_PlayerFoundOneItem:: .string "{PLAYER} found one {STR_VAR_2}!$" -gText_TooBadBagIsFull:: @ 8272AD0 +gText_TooBadBagIsFull:: .string "Too bad!\n" .string "The BAG is full…$" -gText_PlayerPutItemInBag:: @ 8272AEA +gText_PlayerPutItemInBag:: .string "{PLAYER} put away the {STR_VAR_2}\n" .string "in the BAG.$" -gText_ObtainedTheDecor:: @ 8272B09 +gText_ObtainedTheDecor:: .string "Obtained the {STR_VAR_2}!$" -gText_NoRoomLeftForAnother:: @ 8272B1A +gText_NoRoomLeftForAnother:: .string "Too bad! There's no room left for\n" .string "another {STR_VAR_2}…$" -gText_TheDecorWasTransferredToThePC:: @ 8272B48 +gText_TheDecorWasTransferredToThePC:: .string "The {STR_VAR_2} was transferred\n" .string "to the PC.$" diff --git a/data/text/pc.inc b/data/text/pc.inc index 5367632b598c..1c7bf5a32c63 100644 --- a/data/text/pc.inc +++ b/data/text/pc.inc @@ -1,17 +1,17 @@ -Text_BootUpPC: @ 827265A +Text_BootUpPC: .string "{PLAYER} booted up the PC.$" -gText_WhichPCShouldBeAccessed:: @ 827266F +gText_WhichPCShouldBeAccessed:: .string "Which PC should be accessed?$" -gText_AccessedSomeonesPC:: @ 827268C +gText_AccessedSomeonesPC:: .string "Accessed SOMEONE'S PC.$" -gText_StorageSystemOpened:: @ 82726A3 +gText_StorageSystemOpened:: .string "POKéMON Storage System opened.$" -gText_AccessedPlayersPC:: @ 82726C2 +gText_AccessedPlayersPC:: .string "Accessed {PLAYER}'s PC.$" -gText_AccessedLanettesPC:: @ 82726D4 +gText_AccessedLanettesPC:: .string "Accessed LANETTE's PC.$" diff --git a/data/text/pc_transfer.inc b/data/text/pc_transfer.inc index 216e0b570163..53a82c8f1f69 100644 --- a/data/text/pc_transfer.inc +++ b/data/text/pc_transfer.inc @@ -1,31 +1,31 @@ -gText_PkmnTransferredSomeonesPC:: @ 8273216 +gText_PkmnTransferredSomeonesPC:: .string "{STR_VAR_2} was transferred to\n" .string "SOMEONE'S PC.\p" .string "It was placed in \n" .string "BOX “{STR_VAR_1}.”$" -gText_PkmnTransferredLanettesPC:: @ 8273256 +gText_PkmnTransferredLanettesPC:: .string "{STR_VAR_2} was transferred to\nLANETTE'S PC.\p" .string "It was placed in \n" .string "BOX “{STR_VAR_1}.”$" -gText_PkmnTransferredSomeonesPCBoxFull:: @ 8273296 +gText_PkmnTransferredSomeonesPCBoxFull:: .string "BOX “{STR_VAR_3}” on\n" .string "SOMEONE'S PC was full.\p" .string "{STR_VAR_2} was transferred to\n" .string "BOX “{STR_VAR_1}.”$" -gText_PkmnTransferredLanettesPCBoxFull:: @ 82732D9 +gText_PkmnTransferredLanettesPCBoxFull:: .string "BOX “{STR_VAR_3}” on\n" .string "LANETTE'S PC was full.\p" .string "{STR_VAR_2} was transferred to\n" .string "BOX “{STR_VAR_1}.”$" -gText_NoMoreRoomForPokemon:: @ 827331C +gText_NoMoreRoomForPokemon:: .string "There's no more room for POKéMON!\p" .string "The POKéMON BOXES are full and\n" .string "can't accept any more!$" -gText_NicknameThisPokemon:: @ 8273374 +gText_NicknameThisPokemon:: .string "Do you want to give a nickname to\n" .string "this {STR_VAR_1}?$" diff --git a/data/text/pkmn_center_nurse.inc b/data/text/pkmn_center_nurse.inc index 1c28372035d2..05a186f2faf6 100644 --- a/data/text/pkmn_center_nurse.inc +++ b/data/text/pkmn_center_nurse.inc @@ -1,30 +1,30 @@ -gText_WouldYouLikeToRestYourPkmn:: @ 82726EB +gText_WouldYouLikeToRestYourPkmn:: .string "Hello, and welcome to\n" .string "the POKéMON CENTER.\p" .string "We restore your tired POKéMON\n" .string "to full health.\p" .string "Would you like to rest your POKéMON?$" -gText_IllTakeYourPkmn:: @ 8272768 +gText_IllTakeYourPkmn:: .string "Okay, I'll take your POKéMON\n" .string "for a few seconds.$" -gText_RestoredPkmnToFullHealth:: @ 8272798 +gText_RestoredPkmnToFullHealth:: .string "Thank you for waiting.\p" .string "We've restored your POKéMON\n" .string "to full health.$" -gText_WeHopeToSeeYouAgain:: @ 82727DB +gText_WeHopeToSeeYouAgain:: .string "We hope to see you again!$" -gText_WelcomeCutShort:: @ 82727F5 +gText_WelcomeCutShort:: .string "Hello, and welcome to\n" .string "the POKéMON CENTER.\p" .string "We restore your tired POKéMON\n" .string "to full health.\p" .string "Would you like to…$" -gText_NoticesGoldCard:: @ 8272860 +gText_NoticesGoldCard:: .string "Th-that card…\n" .string "Could it be… The GOLD CARD?!\p" .string "Oh, the gold color is brilliant!\n" @@ -36,16 +36,16 @@ gText_NoticesGoldCard:: @ 8272860 .string "Okay, {PLAYER}, please allow me\n" .string "the honor of resting your POKéMON!$" -gText_YouWantTheUsual:: @ 8272982 +gText_YouWantTheUsual:: .string "I'm delighted to see you, {PLAYER}!\n" .string "You want the usual, am I right?$" -gText_IllTakeYourPkmn2:: @ 82729C0 +gText_IllTakeYourPkmn2:: .string "Okay, I'll take your POKéMON\n" .string "for a few seconds.$" -gText_ThankYouForWaiting:: @ 82729F0 +gText_ThankYouForWaiting:: .string "Thank you for waiting.$" -gText_WeHopeToSeeYouAgain2:: @ 8272A07 +gText_WeHopeToSeeYouAgain2:: .string "We hope to see you again!$" diff --git a/data/text/pokedex_rating.inc b/data/text/pokedex_rating.inc index 4c6c3f2b638b..fcb26bc7d359 100644 --- a/data/text/pokedex_rating.inc +++ b/data/text/pokedex_rating.inc @@ -1,114 +1,114 @@ -gBirchDexRatingText_AreYouCurious:: @ 82A5C9C +gBirchDexRatingText_AreYouCurious:: .string "PROF. BIRCH: Ah, {PLAYER}{KUN}!\p" .string "Are you curious about how your\n" .string "POKéDEX is coming along?$" -gBirchDexRatingText_Cancel: @ 82A5CEB +gBirchDexRatingText_Cancel: .string "Hm? Oh, you haven't caught enough\n" .string "POKéMON to make it worthwhile.$" -gBirchDexRatingText_SoYouveSeenAndCaught:: @ 82A5D2C +gBirchDexRatingText_SoYouveSeenAndCaught:: .string "Hmhm…\p" .string "So, you've seen {STR_VAR_1} POKéMON,\n" .string "and you've caught {STR_VAR_2} POKéMON…$" -gBirchDexRatingText_LessThan10:: @ 82A5D6C +gBirchDexRatingText_LessThan10:: .string "Go into grassy areas more and look\n" .string "for POKéMON more carefully.$" -gBirchDexRatingText_LessThan20:: @ 82A5DAB +gBirchDexRatingText_LessThan20:: .string "I guess you're getting the hang\n" .string "of it. But, it gets harder from here.$" -gBirchDexRatingText_LessThan30:: @ 82A5DF1 +gBirchDexRatingText_LessThan30:: .string "Some POKéMON only appear in\n" .string "certain areas.\l" .string "You must be persistent.$" -gBirchDexRatingText_LessThan40:: @ 82A5E34 +gBirchDexRatingText_LessThan40:: .string "Well, it could use more quantity,\n" .string "but this is looking more like\l" .string "a POKéDEX now.$" -gBirchDexRatingText_LessThan50:: @ 82A5E83 +gBirchDexRatingText_LessThan50:: .string "This is coming along pretty good.\n" .string "Keep up the effort.$" -gBirchDexRatingText_LessThan60:: @ 82A5EB9 +gBirchDexRatingText_LessThan60:: .string "Are you using any RODS?\n" .string "There are many POKéMON in the sea.$" -gBirchDexRatingText_LessThan70:: @ 82A5EF4 +gBirchDexRatingText_LessThan70:: .string "Instead of just catching POKéMON,\n" .string "how about making them evolve, too?$" -gBirchDexRatingText_LessThan80:: @ 82A5F39 +gBirchDexRatingText_LessThan80:: .string "This is going to be a fantastic\n" .string "POKéDEX.\l" .string "That's the feeling I'm getting.$" -gBirchDexRatingText_LessThan90:: @ 82A5F82 +gBirchDexRatingText_LessThan90:: .string "You've collected this many…\n" .string "Your talent is remarkable!$" -gBirchDexRatingText_LessThan100:: @ 82A5FB9 +gBirchDexRatingText_LessThan100:: .string "Have you visited the SAFARI ZONE?\p" .string "I hear there are some POKéMON that\n" .string "can only be caught there.$" -gBirchDexRatingText_LessThan110:: @ 82A6018 +gBirchDexRatingText_LessThan110:: .string "You've finally reached\n" .string "the 100-kind mark.\p" .string "This is an impressive POKéDEX!$" -gBirchDexRatingText_LessThan120:: @ 82A6061 +gBirchDexRatingText_LessThan120:: .string "There might be POKéMON that can be\n" .string "found using ROCK SMASH.$" -gBirchDexRatingText_LessThan130:: @ 82A609C +gBirchDexRatingText_LessThan130:: .string "You should get some more POKéMON\n" .string "by trading with others.$" -gBirchDexRatingText_LessThan140:: @ 82A60D5 +gBirchDexRatingText_LessThan140:: .string "I've heard of POKéMON that evolve\n" .string "when they come to fully love their\l" .string "TRAINERS.$" -gBirchDexRatingText_LessThan150:: @ 82A6124 +gBirchDexRatingText_LessThan150:: .string "I had no idea that there were so\n" .string "many POKéMON species in the HOENN\l" .string "region.$" -gBirchDexRatingText_LessThan160:: @ 82A616F +gBirchDexRatingText_LessThan160:: .string "On occasion, some POKéMON appear\n" .string "in large numbers like outbreaks.\p" .string "Don't miss opportunities like\n" .string "those.$" -gBirchDexRatingText_LessThan170:: @ 82A61D6 +gBirchDexRatingText_LessThan170:: .string "One can get a very good idea about\n" .string "the POKéMON of the HOENN region\l" .string "by looking through your POKéDEX.$" -gBirchDexRatingText_LessThan180:: @ 82A623A +gBirchDexRatingText_LessThan180:: .string "I would say you already qualify as\n" .string "a POKéMON PROFESSOR, and a good\l" .string "one, too!$" -gBirchDexRatingText_LessThan190:: @ 82A6287 +gBirchDexRatingText_LessThan190:: .string "With a POKéDEX this complete,\n" .string "you're a real professional at this!$" -gBirchDexRatingText_LessThan200:: @ 82A62C9 +gBirchDexRatingText_LessThan200:: .string "You're very close to completing\n" .string "this POKéDEX.\l" .string "I can feel it in my bones!$" -gBirchDexRatingText_DexCompleted:: @ 82A6312 +gBirchDexRatingText_DexCompleted:: .string "Congratulations!\n" .string "Your POKéDEX is complete!$" -gBirchDexRatingText_OnANationwideBasis:: @ 82A633D +gBirchDexRatingText_OnANationwideBasis:: .string "Hmhm…\n" .string "On a nationwide basis…\p" .string "You've seen {STR_VAR_1} POKéMON,\n" diff --git a/data/text/pokemon_news.inc b/data/text/pokemon_news.inc index 3cac20c1817a..c91d9958ae9a 100644 --- a/data/text/pokemon_news.inc +++ b/data/text/pokemon_news.inc @@ -1,5 +1,5 @@ -gPokeNewsTextSlateport_Upcoming:: @ 0828D0F8 +gPokeNewsTextSlateport_Upcoming:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "SLATEPORT's most popular kind of guy,\n" @@ -14,7 +14,7 @@ gPokeNewsTextSlateport_Upcoming:: @ 0828D0F8 .string "would be well worth your while that day.\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextSlateport_Ongoing:: @ 0828D2A1 +gPokeNewsTextSlateport_Ongoing:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "This is the news you've all been\n" @@ -28,7 +28,7 @@ gPokeNewsTextSlateport_Ongoing:: @ 0828D2A1 .string "to your heart's content?\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextSlateport_Ending:: @ 0828D3F5 +gPokeNewsTextSlateport_Ending:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "This is the news you've all been\n" @@ -43,7 +43,7 @@ gPokeNewsTextSlateport_Ending:: @ 0828D3F5 .string "a most enjoyable shopping trip?\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextGameCorner_Upcoming:: @ 0828D571 +gPokeNewsTextGameCorner_Upcoming:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "It's approaching!\n" @@ -54,7 +54,7 @@ gPokeNewsTextGameCorner_Upcoming:: @ 0828D571 .string "may be lucky on this particular day!\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextGameCorner_Ongoing:: @ 0828D66F +gPokeNewsTextGameCorner_Ongoing:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "It's here!\n" @@ -67,7 +67,7 @@ gPokeNewsTextGameCorner_Ongoing:: @ 0828D66F .string "This is the place!\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextGameCorner_Ending:: @ 0828D768 +gPokeNewsTextGameCorner_Ending:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "It's here!\n" @@ -80,7 +80,7 @@ gPokeNewsTextGameCorner_Ending:: @ 0828D768 .string "The location is MAUVILLE CITY.\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextLilycove_Upcoming:: @ 0828D875 +gPokeNewsTextLilycove_Upcoming:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "We've just received wonderful news\n" @@ -91,7 +91,7 @@ gPokeNewsTextLilycove_Upcoming:: @ 0828D875 .string "you've always wanted could be yours!\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextLilycove_Ongoing:: @ 0828D994 +gPokeNewsTextLilycove_Ongoing:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "This is the news you've all been\n" @@ -104,7 +104,7 @@ gPokeNewsTextLilycove_Ongoing:: @ 0828D994 .string "with them all!\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextLilycove_Ending:: @ 0828DAC0 +gPokeNewsTextLilycove_Ending:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "This is the news you've all been\n" @@ -117,7 +117,7 @@ gPokeNewsTextLilycove_Ending:: @ 0828DAC0 .string "with them all!\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextBlendMaster_Upcoming:: @ 0828DBEC +gPokeNewsTextBlendMaster_Upcoming:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "We have big news for everyone\n" @@ -133,7 +133,7 @@ gPokeNewsTextBlendMaster_Upcoming:: @ 0828DBEC .string "are urged to save their BERRIES.\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextBlendMaster_Ongoing:: @ 0828DD9E +gPokeNewsTextBlendMaster_Ongoing:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "We have big news for everyone\n" @@ -148,7 +148,7 @@ gPokeNewsTextBlendMaster_Ongoing:: @ 0828DD9E .string "should hurry to LILYCOVE.\p" .string "That's the news on POKéMON NEWS.$" -gPokeNewsTextBlendMaster_Ending:: @ 0828DF05 +gPokeNewsTextBlendMaster_Ending:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "It's incredible!\n" diff --git a/data/text/record_mix.inc b/data/text/record_mix.inc index 1270c0c0a704..bebdfdd95451 100644 --- a/data/text/record_mix.inc +++ b/data/text/record_mix.inc @@ -1,6 +1,6 @@ -Text_WouldYouLikeToMixRecords: @ 827260D +Text_WouldYouLikeToMixRecords: .string "Would you like to mix records with\n" .string "other TRAINERS?$" -Text_WeHopeToSeeYouAgain: @ 8272640 +Text_WeHopeToSeeYouAgain: .string "We hope to see you again!$" diff --git a/data/text/save.inc b/data/text/save.inc index 4719f34d359b..4d17327c9bb6 100644 --- a/data/text/save.inc +++ b/data/text/save.inc @@ -1,19 +1,19 @@ .align 2 -gText_ConfirmSave:: @ 82C87B4 +gText_ConfirmSave:: .string "Would you like to save the game?$" -gText_AlreadySavedFile:: @ 82C87D5 +gText_AlreadySavedFile:: .string "There is already a saved file.\n" .string "Is it okay to overwrite it?$" -gText_SavingDontTurnOff:: @ 82C8810 +gText_SavingDontTurnOff:: .string "SAVING…\n" .string "DON'T TURN OFF THE POWER.$" -gText_PlayerSavedGame:: @ 82C8832 +gText_PlayerSavedGame:: .string "{PLAYER} saved the game.$" -gText_DifferentSaveFile:: @ 82C8845 +gText_DifferentSaveFile:: .string "WARNING!\p" .string "There is a different game file that\n" .string "is already saved.\p" @@ -23,11 +23,11 @@ gText_DifferentSaveFile:: @ 82C8845 .string "Are you sure you want to save now\n" .string "and overwrite the other save file?$" -gText_SaveError:: @ 82C892A +gText_SaveError:: .string "Save error.\p" .string "Please exchange the\n" .string "backup memory.$" -gText_SavingDontTurnOffPower:: @ 82C8959 +gText_SavingDontTurnOffPower:: .string "SAVING…\n" .string "DON'T TURN OFF THE POWER.$" diff --git a/data/text/secret_base_trainers.inc b/data/text/secret_base_trainers.inc index 979aa4ff3a8e..f1881533abed 100644 --- a/data/text/secret_base_trainers.inc +++ b/data/text/secret_base_trainers.inc @@ -1,62 +1,62 @@ -SecretBase_Text_Trainer0Intro: @ 82748A0 +SecretBase_Text_Trainer0Intro: .string "Have you made a SECRET BASE already?\p" .string "I went here, there, everywhere before\n" .string "choosing this place.\p" .string "Since you're already here, how would\n" .string "you like to battle?$" -SecretBase_Text_Trainer0AcceptBattle: @ 8274939 +SecretBase_Text_Trainer0AcceptBattle: .string "Okay!\n" .string "Here we come!$" -SecretBase_Text_Trainer0DeclineBattle: @ 827494D +SecretBase_Text_Trainer0DeclineBattle: .string "Hunh?\n" .string "Oh, you can't now…$" -SecretBase_Text_Trainer0Defeated:: @ 8274966 +SecretBase_Text_Trainer0Defeated:: .string "Waaargh! You're too strong!\n" .string "About me losing… Please keep it secret!$" -SecretBase_Text_Trainer0PostBattle: @ 82749AA +SecretBase_Text_Trainer0PostBattle: .string "What do you think of my SECRET BASE?\n" .string "Come visit me again tomorrow.$" -SecretBase_Text_Trainer0PreChampion: @ 82749ED +SecretBase_Text_Trainer0PreChampion: .string "Have you made a SECRET BASE already?\p" .string "I went here, there, everywhere before\n" .string "choosing this place.\p" .string "Feel free to hang out!$" -SecretBase_Text_Trainer5Intro: @ 8274A64 +SecretBase_Text_Trainer5Intro: .string "There're a lot of places where\n" .string "you can make a SECRET BASE.\p" .string "But I like this spot best.\n" .string "Don't you think it's nice?\p" .string "Oh, would you like to have a battle?$" -SecretBase_Text_Trainer5AcceptBattle: @ 8274AFA +SecretBase_Text_Trainer5AcceptBattle: .string "Okay, here goes!$" -SecretBase_Text_Trainer5DeclineBattle: @ 8274B0B +SecretBase_Text_Trainer5DeclineBattle: .string "Oh…\n" .string "You can't now, okay.$" -SecretBase_Text_Trainer5Defeated:: @ 8274B24 +SecretBase_Text_Trainer5Defeated:: .string "Hmmm… It's our loss…\n" .string "But don't tell anyone!\l" .string "It's a confidential secret!$" -SecretBase_Text_Trainer5PostBattle: @ 8274B6C +SecretBase_Text_Trainer5PostBattle: .string "If you're in this area again,\n" .string "I hope you'll visit me.$" -SecretBase_Text_Trainer5PreChampion: @ 8274BA2 +SecretBase_Text_Trainer5PreChampion: .string "There're a lot of places where you can\n" .string "make a SECRET BASE.\p" .string "But I like this spot best.\n" .string "Don't you think it's nice?$" -SecretBase_Text_Trainer1Intro: @ 8274C13 +SecretBase_Text_Trainer1Intro: .string "This is a popular spot.\n" .string "It's always taken.\p" .string "Oh! Were you thinking about\n" @@ -64,84 +64,84 @@ SecretBase_Text_Trainer1Intro: @ 8274C13 .string "I'll tell you what, you can have this\n" .string "spot if you can beat me.$" -SecretBase_Text_Trainer1AcceptBattle: @ 8274CB0 +SecretBase_Text_Trainer1AcceptBattle: .string "Okay!\n" .string "I'm going to defend my SECRET BASE!$" -SecretBase_Text_Trainer1DeclineBattle: @ 8274CDA +SecretBase_Text_Trainer1DeclineBattle: .string "Hunh? Is that right?\n" .string "You're not interested in this spot?$" -SecretBase_Text_Trainer1Defeated:: @ 8274D13 +SecretBase_Text_Trainer1Defeated:: .string "I can't keep going!\n" .string "I surrender!$" -SecretBase_Text_Trainer1PostBattle: @ 8274D34 +SecretBase_Text_Trainer1PostBattle: .string "Okay, when I move one day,\n" .string "this place will be yours!$" -SecretBase_Text_Trainer1PreChampion: @ 8274D69 +SecretBase_Text_Trainer1PreChampion: .string "This is a popular spot.\n" .string "It's always taken.\p" .string "I waited a long time for it to open.\n" .string "I finally got to use it!$" -SecretBase_Text_Trainer6Intro: @ 8274DD2 +SecretBase_Text_Trainer6Intro: .string "Welcome to my POKéMON LAB.\p" .string "I carry out research on battling in\n" .string "secrecy.\p" .string "Would you like to see how strong I am?$" -SecretBase_Text_Trainer6AcceptBattle: @ 8274E41 +SecretBase_Text_Trainer6AcceptBattle: .string "I'm going to go all out!$" -SecretBase_Text_Trainer6DeclineBattle: @ 8274E5A +SecretBase_Text_Trainer6DeclineBattle: .string "Oh.\n" .string "Some other time, then!$" -SecretBase_Text_Trainer6Defeated:: @ 8274E75 +SecretBase_Text_Trainer6Defeated:: .string "Hmm… I've still got lots to learn.\n" .string "I have to study some more.$" -SecretBase_Text_Trainer6PostBattle: @ 8274EB3 +SecretBase_Text_Trainer6PostBattle: .string "Thanks for battling with me.\n" .string "Please come back again tomorrow.$" -SecretBase_Text_Trainer6PreChampion: @ 8274EF1 +SecretBase_Text_Trainer6PreChampion: .string "Welcome to my POKéMON LAB.\p" .string "I carry out research on battling in\n" .string "secrecy.$" -SecretBase_Text_Trainer2Intro: @ 8274F39 +SecretBase_Text_Trainer2Intro: .string "A big mansion is nice, but I like this\n" .string "sort of place more.\p" .string "I like it because all kinds of people\n" .string "come visit me.\p" .string "So, how would you like a battle?$" -SecretBase_Text_Trainer2AcceptBattle: @ 8274FCA +SecretBase_Text_Trainer2AcceptBattle: .string "That's the way!$" -SecretBase_Text_Trainer2DeclineBattle: @ 8274FDA +SecretBase_Text_Trainer2DeclineBattle: .string "When you're ready, give me a shout!$" -SecretBase_Text_Trainer2Defeated:: @ 8274FFE +SecretBase_Text_Trainer2Defeated:: .string "Aww! Done in!\n" .string "But it's still fun to battle!$" -SecretBase_Text_Trainer2PostBattle: @ 827502A +SecretBase_Text_Trainer2PostBattle: .string "Well, anyway, I should go buy some\n" .string "decorations and furniture.\p" .string "I want my SECRET BASE to be a place\n" .string "other people can enjoy.$" -SecretBase_Text_Trainer2PreChampion: @ 82750A4 +SecretBase_Text_Trainer2PreChampion: .string "A big mansion is nice, but I like this\n" .string "sort of place more.\p" .string "I like it because all kinds of people\n" .string "come visit me.$" -SecretBase_Text_Trainer7Intro: @ 8275114 +SecretBase_Text_Trainer7Intro: .string "I simply adore shopping for decorations\n" .string "and furniture.\p" .string "I also love raising POKéMON just\n" @@ -149,82 +149,82 @@ SecretBase_Text_Trainer7Intro: @ 8275114 .string "If you would be so kind, will you battle\n" .string "with my POKéMON?$" -SecretBase_Text_Trainer7AcceptBattle: @ 82751AF +SecretBase_Text_Trainer7AcceptBattle: .string "Thank you.\n" .string "Shall we begin?$" -SecretBase_Text_Trainer7DeclineBattle: @ 82751CA +SecretBase_Text_Trainer7DeclineBattle: .string "Oh.\n" .string "How disappointing…$" -SecretBase_Text_Trainer7Defeated:: @ 82751E1 +SecretBase_Text_Trainer7Defeated:: .string "I concede…$" -SecretBase_Text_Trainer7PostBattle: @ 82751EC +SecretBase_Text_Trainer7PostBattle: .string "That was all in good fun!\n" .string "I should go enjoy shopping now.$" -SecretBase_Text_Trainer7PreChampion: @ 8275226 +SecretBase_Text_Trainer7PreChampion: .string "I simply adore shopping for decorations\n" .string "and furniture.\p" .string "I also love raising POKéMON just\n" .string "as much.$" -SecretBase_Text_Trainer3Intro: @ 8275287 +SecretBase_Text_Trainer3Intro: .string "Some people make their SECRET BASES in\n" .string "hard-to-find places.\l" .string "Do they want to just lie low?\p" .string "But since you found me, how about we\n" .string "have a battle?$" -SecretBase_Text_Trainer3AcceptBattle: @ 8275315 +SecretBase_Text_Trainer3AcceptBattle: .string "I'm not going down easily!$" -SecretBase_Text_Trainer3DeclineBattle: @ 8275330 +SecretBase_Text_Trainer3DeclineBattle: .string "Oh… Are you maybe tired from searching\n" .string "for this place?$" -SecretBase_Text_Trainer3Defeated:: @ 8275367 +SecretBase_Text_Trainer3Defeated:: .string "I went down…$" -SecretBase_Text_Trainer3PostBattle: @ 8275374 +SecretBase_Text_Trainer3PostBattle: .string "Where's your SECRET BASE?\n" .string "I should go visit you there.$" -SecretBase_Text_Trainer3PreChampion: @ 82753AB +SecretBase_Text_Trainer3PreChampion: .string "Some people make their SECRET BASES in\n" .string "hard-to-find places.\l" .string "Do they want to just lie low?$" -SecretBase_Text_Trainer8Intro: @ 8275405 +SecretBase_Text_Trainer8Intro: .string "People have told me that you can get\n" .string "decorations in several ways.\p" .string "We should have a race to see who can\n" .string "get nicer decorations and furniture!\p" .string "In the meantime, want to battle?$" -SecretBase_Text_Trainer8AcceptBattle: @ 82754B2 +SecretBase_Text_Trainer8AcceptBattle: .string "This is my SECRET BASE.\n" .string "I can't lose!$" -SecretBase_Text_Trainer8DeclineBattle: @ 82754D8 +SecretBase_Text_Trainer8DeclineBattle: .string "I'll battle with you anytime.$" -SecretBase_Text_Trainer8Defeated:: @ 82754F6 +SecretBase_Text_Trainer8Defeated:: .string "Huh?\n" .string "Did I just lose?$" -SecretBase_Text_Trainer8PostBattle: @ 827550C +SecretBase_Text_Trainer8PostBattle: .string "I won't lose at collecting decorations.\n" .string "Come visit again!$" -SecretBase_Text_Trainer8PreChampion: @ 8275546 +SecretBase_Text_Trainer8PreChampion: .string "People have told me that you can get\n" .string "decorations in several ways.\p" .string "We should have a race to see who can\n" .string "get nicer decorations and furniture!$" -SecretBase_Text_Trainer4Intro: @ 82755D2 +SecretBase_Text_Trainer4Intro: .string "I found a spot I liked, and I did it up\n" .string "with my favorite decorations.\p" .string "I raise my favorite POKéMON and grow\n" @@ -232,28 +232,28 @@ SecretBase_Text_Trainer4Intro: @ 82755D2 .string "That's what I do.\n" .string "Want to battle with me?$" -SecretBase_Text_Trainer4AcceptBattle: @ 8275679 +SecretBase_Text_Trainer4AcceptBattle: .string "Show me what you're made of!$" -SecretBase_Text_Trainer4DeclineBattle: @ 8275696 +SecretBase_Text_Trainer4DeclineBattle: .string "I guess there are times when you're not\n" .string "into it.$" -SecretBase_Text_Trainer4Defeated:: @ 82756C7 +SecretBase_Text_Trainer4Defeated:: .string "I know exactly what you're made of now.$" -SecretBase_Text_Trainer4PostBattle: @ 82756EF +SecretBase_Text_Trainer4PostBattle: .string "We can both become stronger.\n" .string "Let's keep at it!$" -SecretBase_Text_Trainer4PreChampion: @ 827571E +SecretBase_Text_Trainer4PreChampion: .string "I found a spot I liked, and I did it up\n" .string "with my favorite decorations.\p" .string "I raise my favorite POKéMON and grow\n" .string "stronger with it.\p" .string "Every day is a great day.$" -SecretBase_Text_Trainer9Intro: @ 82757B5 +SecretBase_Text_Trainer9Intro: .string "You can learn a lot about the taste\n" .string "and sense of people by the kinds of\l" .string "decorations they have, and how they\l" @@ -262,22 +262,22 @@ SecretBase_Text_Trainer9Intro: @ 82757B5 .string "Are you speechless?\p" .string "Want to see my taste in battling?$" -SecretBase_Text_Trainer9AcceptBattle: @ 8275884 +SecretBase_Text_Trainer9AcceptBattle: .string "There's no holding back!$" -SecretBase_Text_Trainer9DeclineBattle: @ 827589D +SecretBase_Text_Trainer9DeclineBattle: .string "I'll be happy to demonstrate my style\n" .string "anytime.$" -SecretBase_Text_Trainer9Defeated:: @ 82758CC +SecretBase_Text_Trainer9Defeated:: .string "You're supremely talented!\n" .string "Your power seems to be limitless…$" -SecretBase_Text_Trainer9PostBattle: @ 8275909 +SecretBase_Text_Trainer9PostBattle: .string "What did you think of my style?\n" .string "I'll keep on polishing it!$" -SecretBase_Text_Trainer9PreChampion: @ 8275944 +SecretBase_Text_Trainer9PreChampion: .string "You can learn a lot about the taste\n" .string "and sense of people by the kinds of\l" .string "decorations they have, and how they\l" diff --git a/data/text/shoal_cave.inc b/data/text/shoal_cave.inc index 4a15e74985e6..88d057b74aa5 100644 --- a/data/text/shoal_cave.inc +++ b/data/text/shoal_cave.inc @@ -1,4 +1,4 @@ -ShoalCave_LowTideEntranceRoom_Text_AreYouPlanningOnGoingInThere: @ 82A7E0E +ShoalCave_LowTideEntranceRoom_Text_AreYouPlanningOnGoingInThere: .string "Are you planning on going deep\n" .string "in there?\p" .string "How about bringing me back some\n" @@ -6,27 +6,27 @@ ShoalCave_LowTideEntranceRoom_Text_AreYouPlanningOnGoingInThere: @ 82A7E0E .string "I can make you something good if\n" .string "you bring me the ingredients.$" -ShoalCave_LowTideEntranceRoom_Text_BringMe4ShoalSaltAndShells: @ 82A7EB3 +ShoalCave_LowTideEntranceRoom_Text_BringMe4ShoalSaltAndShells: .string "If you bring me four each of the\n" .string "SHOAL SALT and SHOAL SHELLS,\l" .string "I can make you a SHELL BELL…\p" .string "You can get those ingredients\n" .string "every day.$" -ShoalCave_LowTideEntranceRoom_Text_WouldYouLikeShellBell: @ 82A7F37 +ShoalCave_LowTideEntranceRoom_Text_WouldYouLikeShellBell: .string "Oh, hey! SHOAL SALT and SHOAL SHELLS!\n" .string "And enough of them, too!\p" .string "Would you like me to make you\n" .string "a SHELL BELL with them?$" -ShoalCave_LowTideEntranceRoom_Text_MakeShellBellRightAway: @ 82A7FAC +ShoalCave_LowTideEntranceRoom_Text_MakeShellBellRightAway: .string "All righty, then! I'll make you\n" .string "a SHELL BELL right away.\p" .string "… … … … … … … …\n" .string "… … … … … … … …\p" .string "There! Done!$" -ShoalCave_LowTideEntranceRoom_Text_ExplainShellBell: @ 82A8012 +ShoalCave_LowTideEntranceRoom_Text_ExplainShellBell: .string "Have a POKéMON hold on to that.\n" .string "It'll love it, that's for certain.\p" .string "Why, the SHELL BELL's chime…\n" @@ -34,20 +34,20 @@ ShoalCave_LowTideEntranceRoom_Text_ExplainShellBell: @ 82A8012 .string "You can get its ingredients every day,\n" .string "so I can make you more.$" -ShoalCave_LowTideEntranceRoom_Text_WantedToMakeShellBell: @ 82A80C6 +ShoalCave_LowTideEntranceRoom_Text_WantedToMakeShellBell: .string "Oh… Is that so…\n" .string "I wanted to make a SHELL BELL…$" -ShoalCave_LowTideEntranceRoom_Text_NoSpaceInYourBag: @ 82A80F5 +ShoalCave_LowTideEntranceRoom_Text_NoSpaceInYourBag: .string "You don't have space in your BAG\n" .string "if I were to make it for you.\p" .string "You should make room and come back\n" .string "for a SHELL BELL.$" -ShoalCave_Text_WasShoalSaltNowNothing: @ 82A8169 +ShoalCave_Text_WasShoalSaltNowNothing: .string "There was some SHOAL SALT here.\n" .string "But, there's nothing here now.$" -ShoalCave_Text_WasShoallShellNowNothing: @ 82A81A8 +ShoalCave_Text_WasShoallShellNowNothing: .string "There was a SHOAL SHELL here.\n" .string "But, there's nothing here now.$" diff --git a/data/text/surf.inc b/data/text/surf.inc index 31c197222284..453a3d5b1450 100644 --- a/data/text/surf.inc +++ b/data/text/surf.inc @@ -1,5 +1,5 @@ -gText_WantToUseSurf:: @ 8272FD6 +gText_WantToUseSurf:: .string "The water is dyed a deep blue…\nWould you like to SURF?$" -gText_PlayerUsedSurf:: @ 827300D +gText_PlayerUsedSurf:: .string "{STR_VAR_1} used SURF!$" diff --git a/data/text/trainers.inc b/data/text/trainers.inc index 9e971b22347e..c3e85ef504e3 100644 --- a/data/text/trainers.inc +++ b/data/text/trainers.inc @@ -1,1322 +1,1322 @@ -Route102_Text_CalvinIntro: @ 8294513 +Route102_Text_CalvinIntro: .string "If you have POKéMON with you, then\n" .string "you're an official POKéMON TRAINER!\l" .string "You can't say no to my challenge!$" -Route102_Text_CalvinDefeated: @ 829457C +Route102_Text_CalvinDefeated: .string "Arrgh, I lost…\n" .string "I should have trained mine more…$" -Route102_Text_CalvinPostBattle: @ 82945AC +Route102_Text_CalvinPostBattle: .string "Listen, you. If you're strong,\n" .string "you should have told me before!$" -Route102_Text_CalvinRegister: @ 82945EB +Route102_Text_CalvinRegister: .string "I've been working hard at this since\n" .string "I saw you before.\p" .string "I'd like to battle you again, so can\n" .string "you register me in your POKéNAV?$" -Route102_Text_CalvinRegisterShort: @ 8294668 +Route102_Text_CalvinRegisterShort: .string "I'd like to battle you again, so can\n" .string "you register me in your POKéNAV?$" -Route102_Text_CalvinRematchIntro: @ 82946AE +Route102_Text_CalvinRematchIntro: .string "Ever since I lost to you, I desperately\n" .string "trained my POKéMON.\l" .string "You can't say no to my challenge!$" -Route102_Text_CalvinRematchDefeated: @ 829470C +Route102_Text_CalvinRematchDefeated: .string "Arrgh, I lost…\n" .string "Is my training method not right?$" -Route102_Text_CalvinRematchPostBattle: @ 829473C +Route102_Text_CalvinRematchPostBattle: .string "If you're going to get stronger,\n" .string "I'll get stronger, too.$" -Route102_Text_AllenIntro: @ 8294775 +Route102_Text_AllenIntro: .string "Did you just become a TRAINER?\n" .string "We're both beginners!$" -Route102_Text_AllenDefeated: @ 82947AA +Route102_Text_AllenDefeated: .string "I called you because I thought\n" .string "I could beat you…$" -Route102_Text_AllenPostBattle: @ 82947DB +Route102_Text_AllenPostBattle: .string "I haven't won once yet…\n" .string "I wish I would win soon…$" -Route102_Text_RickIntro: @ 829480C +Route102_Text_RickIntro: .string "Hahah! Our eyes met!\n" .string "I'll take you on with my BUG POKéMON!$" -Route102_Text_RickDefeated: @ 8294847 +Route102_Text_RickDefeated: .string "Ow! Down and out!$" -Route102_Text_RickPostBattle: @ 8294859 +Route102_Text_RickPostBattle: .string "If you lock eyes with a TRAINER,\n" .string "you have to challenge! It's a rule!$" -Route102_Text_TianaIntro: @ 829489E +Route102_Text_TianaIntro: .string "I'm going to keep winning and aim\n" .string "to be the best TRAINER.\p" .string "Help me further my career!$" -Route102_Text_TianaDefeated: @ 82948F3 +Route102_Text_TianaDefeated: .string "I ended up furthering your career…$" -Route102_Text_TianaPostBattle: @ 8294916 +Route102_Text_TianaPostBattle: .string "To keep winning my way up, I see that\n" .string "I have to catch more POKéMON.$" -Route103_Text_DaisyIntro: @ 829495A +Route103_Text_DaisyIntro: .string "Did you feel the tug of our\n" .string "soul-soothing fragrance?$" -Route103_Text_DaisyDefeated: @ 829498F +Route103_Text_DaisyDefeated: .string "You weren't led astray by our aroma…$" -Route103_Text_DaisyPostBattle: @ 82949B4 +Route103_Text_DaisyPostBattle: .string "Aromatherapy is a form of mental\n" .string "healing that works with fragrances.$" -Route103_Text_AmyIntro: @ 82949F9 +Route103_Text_AmyIntro: .string "AMY: I'm AMY.\n" .string "And this is my little sister LIV.\l" .string "We battle together!$" -Route103_Text_AmyDefeated: @ 8294A3D +Route103_Text_AmyDefeated: .string "AMY: Uh-oh, we lost.$" -Route103_Text_AmyPostBattle: @ 8294A52 +Route103_Text_AmyPostBattle: .string "AMY: You have to think about all\n" .string "kinds of things when you're battling\l" .string "against two TRAINERS.$" -Route103_Text_AmyNotEnoughPokemon: @ 8294AAE +Route103_Text_AmyNotEnoughPokemon: .string "AMY: Uh-oh, you have only one\n" .string "POKéMON with you.\l" .string "You can't battle us like that.$" -Route103_Text_LivIntro: @ 8294AFD +Route103_Text_LivIntro: .string "LIV: We battle together as one\n" .string "team.$" -Route103_Text_LivDefeated: @ 8294B22 +Route103_Text_LivDefeated: .string "LIV: Oh, we lost, big sister…$" -Route103_Text_LivPostBattle: @ 8294B40 +Route103_Text_LivPostBattle: .string "LIV: We work perfectly together,\n" .string "me and my big sister…\p" .string "But we still lost…$" -Route103_Text_AmyLivRegister: @ 8294B8A +Route103_Text_AmyLivRegister: .string "LIV: Really, we're a lot better…\n" .string "It's true! We'll show you next time!$" -Route103_Text_LivNotEnoughPokemon: @ 8294BD0 +Route103_Text_LivNotEnoughPokemon: .string "LIV: If you want to battle us,\n" .string "you have to have two POKéMON!\l" .string "It's not fair if you don't!$" -Route103_Text_AmyRematchIntro: @ 8294C29 +Route103_Text_AmyRematchIntro: .string "AMY: I'm AMY.\n" .string "And this is my little sister LIV.\l" .string "We battle together!$" -Route103_Text_AmyRematchDefeated: @ 8294C6D +Route103_Text_AmyRematchDefeated: .string "AMY: Aww, boo!\n" .string "We couldn't win again…$" -Route103_Text_AmyRematchPostBattle: @ 8294C93 +Route103_Text_AmyRematchPostBattle: .string "AMY: You have to think about all\n" .string "kinds of things when you're battling\l" .string "against two TRAINERS.$" -Route103_Text_AmyRematchNotEnoughPokemon: @ 8294CEF +Route103_Text_AmyRematchNotEnoughPokemon: .string "AMY: Uh-oh, you have only one\n" .string "POKéMON with you.\l" .string "You can't battle us like that.$" -Route103_Text_LivRematchIntro: @ 8294D3E +Route103_Text_LivRematchIntro: .string "LIV: We battle together as one\n" .string "team.$" -Route103_Text_LivRematchDefeated: @ 8294D63 +Route103_Text_LivRematchDefeated: .string "LIV: Awww, we lost again…\n" .string "Big sister…$" -Route103_Text_LivRematchPostBattle: @ 8294D89 +Route103_Text_LivRematchPostBattle: .string "LIV: We work perfectly together,\n" .string "me and my big sister…\p" .string "But why did we lose again?$" -Route103_Text_LivRematchNotEnoughPokemon: @ 8294DDB +Route103_Text_LivRematchNotEnoughPokemon: .string "LIV: If you want to battle us, you\n" .string "have to have two POKéMON!\l" .string "It's not fair if you don't!$" -Route103_Text_AndrewIntro: @ 8294E34 +Route103_Text_AndrewIntro: .string "Gah! My fishing line's all snarled up!\n" .string "I'm getting frustrated and mean!\l" .string "That's it! Battle me!$" -Route103_Text_AndrewDefeated: @ 8294E92 +Route103_Text_AndrewDefeated: .string "Gah! Lost it!\n" .string "I'm even more annoyed now!$" -Route103_Text_AndrewPostBattle: @ 8294EBB +Route103_Text_AndrewPostBattle: .string "Gah, I'm still boiling mad…\n" .string "Grrrrr…$" -Route103_Text_MiguelIntro: @ 8294EDF +Route103_Text_MiguelIntro: .string "My POKéMON is delightfully adorable!\n" .string "Don't be shy--I'll show you!$" -Route103_Text_MiguelDefeated: @ 8294F21 +Route103_Text_MiguelDefeated: .string "Oh, my gosh!\n" .string "My darling POKéMON!$" -Route103_Text_MiguelPostBattle: @ 8294F42 +Route103_Text_MiguelPostBattle: .string "My delightful POKéMON looks darling\n" .string "even when it's fainted!$" -Route103_Text_MiguelRegister: @ 8294F7E +Route103_Text_MiguelRegister: .string "I'll get you to come out and look in\n" .string "on my delightful POKéMON again!$" -Route103_Text_MiguelRematchIntro: @ 8294FC3 +Route103_Text_MiguelRematchIntro: .string "Hi, you! My delightfully adorable\n" .string "POKéMON has become more darling!$" -Route103_Text_MiguelRematchDefeated: @ 8295006 +Route103_Text_MiguelRematchDefeated: .string "Oh!\n" .string "My darling POKéMON!$" -Route103_Text_MiguelRematchPostBattle: @ 829501E +Route103_Text_MiguelRematchPostBattle: .string "The more I spend time with it,\n" .string "the more adorable my POKéMON becomes.$" -Route103_Text_PeteIntro: @ 8295063 +Route103_Text_PeteIntro: .string "This sort of distance…\n" .string "You should just swim it!$" -Route103_Text_PeteDefeated: @ 8295093 +Route103_Text_PeteDefeated: .string "Oh, that's good going!$" -Route103_Text_PetePostBattle: @ 82950AA +Route103_Text_PetePostBattle: .string "Oh, I understand where you're coming\n" .string "from now.\p" .string "If I had a POKéMON that trusty,\n" .string "I'd want to SURF on it, too!$" -Route103_Text_IsabelleIntro: @ 8295116 +Route103_Text_IsabelleIntro: .string "Watch where you're going!\n" .string "We're going to crash!$" -Route103_Text_IsabelleDefeated: @ 8295146 +Route103_Text_IsabelleDefeated: .string "Groan…$" -Route103_Text_IsabellePostBattle: @ 829514D +Route103_Text_IsabellePostBattle: .string "I'm a poor swimmer so I was practicing…\n" .string "Sorry for almost crashing into you.$" -Route103_Text_RhettIntro: @ 8295199 +Route103_Text_RhettIntro: .string "Whoa!\n" .string "How'd you get into a space this small?$" -Route103_Text_RhettDefeated: @ 82951C6 +Route103_Text_RhettDefeated: .string "Whoa!\n" .string "The kid can rock!$" -Route103_Text_RhettPostBattle: @ 82951DE +Route103_Text_RhettPostBattle: .string "Do you like cramped quarters\n" .string "like this?$" -Route103_Text_MarcosIntro: @ 8295206 +Route103_Text_MarcosIntro: .string "Did my guitar's wailing draw you in?$" -Route103_Text_MarcosDefeated: @ 829522B +Route103_Text_MarcosDefeated: .string "My one-man show is ruined…$" -Route103_Text_MarcosPostBattle: @ 8295246 +Route103_Text_MarcosPostBattle: .string "I was playing my guitar where few\n" .string "people were around, but a lot of fans\l" .string "have gathered.\p" .string "Heh, maybe I should turn pro.$" -Route104_Text_GinaIntro: @ 82952BB +Route104_Text_GinaIntro: .string "GINA: Okay, let's battle with our\n" .string "POKéMON!$" -Route104_Text_GinaDefeat: @ 82952E6 +Route104_Text_GinaDefeat: .string "GINA: Losing upsets me!$" -Route104_Text_GinaPostBattle: @ 82952FE +Route104_Text_GinaPostBattle: .string "GINA: You are strong!\n" .string "We have to train lots more!$" -Route104_Text_GinaNotEnoughMons: @ 8295330 +Route104_Text_GinaNotEnoughMons: .string "GINA: Oh? Only one POKéMON?\n" .string "Then, we don't battle with you.\p" .string "If there's only one POKéMON, it will\n" .string "be lonesome. That's not nice.$" -Route104_Text_MiaIntro: @ 82953AF +Route104_Text_MiaIntro: .string "MIA: We are twins, so we battle\n" .string "POKéMON together.$" -Route104_Text_MiaDefeat: @ 82953E1 +Route104_Text_MiaDefeat: .string "MIA: We battled together, but we\n" .string "both lost…$" -Route104_Text_MiaPostBattle: @ 829540D +Route104_Text_MiaPostBattle: .string "MIA: We will train our POKéMON more\n" .string "and be strong like you.$" -Route104_Text_MiaNotEnoughMons: @ 8295449 +Route104_Text_MiaNotEnoughMons: .string "MIA: You want to battle with us?\p" .string "It's a big no-no if you don't have two\n" .string "POKéMON with you.\l" .string "We're too strong for you!$" -Route104_Text_IvanIntro: @ 82954BD +Route104_Text_IvanIntro: .string "Why keep it a secret?\n" .string "I'm the WATER POKéMON expert!\p" .string "Huh?\n" .string "You don't know me?$" -Route104_Text_IvanDefeat: @ 8295509 +Route104_Text_IvanDefeat: .string "I thought I wasn't too bad, if I may\n" .string "say so, but I guess not… Bleah…$" -Route104_Text_IvanPostBattle: @ 829554E +Route104_Text_IvanPostBattle: .string "I got too into fishing.\n" .string "I forgot I had to raise my POKéMON…$" -Route104_Text_BillyIntro: @ 829558A +Route104_Text_BillyIntro: .string "Leaving footprints in the sand is\n" .string "so fun!$" -Route104_Text_BillyDefeat: @ 82955B4 +Route104_Text_BillyDefeat: .string "Waah! I got sand in my runners!\n" .string "They're all gritty!$" -Route104_Text_BillyPostBattle: @ 82955E8 +Route104_Text_BillyPostBattle: .string "I want to leave my footprints in\n" .string "the sand everywhere, but they\l" .string "disappear quickly…$" -Route104_Text_HaleyIntro: @ 829563A +Route104_Text_HaleyIntro: .string "Should I…\n" .string "Or shouldn't I?\p" .string "Okay, sure, I will battle!$" -Route104_Text_HaleyDefeat: @ 829566F +Route104_Text_HaleyDefeat: .string "I shouldn't have battled…$" -Route104_Text_HaleyPostBattle: @ 8295689 +Route104_Text_HaleyPostBattle: .string "If you're faced with a decision and\n" .string "you let someone else choose for you,\l" .string "you will regret it, however things\l" .string "turn out.$" -Route104_Text_HaleyRegister1: @ 82956FF +Route104_Text_HaleyRegister1: .string "You're strong, but should I register\n" .string "you in my POKéNAV?\l" .string "Maybe I shouldn't…\p" .string "Okay, sure, I will register you!$" -Route104_Text_HaleyRegister2: @ 829576B +Route104_Text_HaleyRegister2: .string "You're strong, but should I register\n" .string "you in my POKéNAV?\l" .string "Maybe I shouldn't…\p" .string "Okay, sure, I will register you!$" -Route104_Text_HaleyRematchIntro: @ 82957D7 +Route104_Text_HaleyRematchIntro: .string "Come on, battle with me!$" -Route104_Text_HaleyRematchDefeat: @ 82957F0 +Route104_Text_HaleyRematchDefeat: .string "Ohh…\n" .string "I thought I could win…$" -Route104_Text_HaleyPostRematch: @ 829580C +Route104_Text_HaleyPostRematch: .string "I made the decision to battle, so\n" .string "I can accept this loss with grace.\p" .string "I am still upset about losing!$" -Route104_Text_WinstonIntro: @ 8295870 +Route104_Text_WinstonIntro: .string "Oh, sure, I'll accept your challenge.\n" .string "I have a lot of money.$" -Route104_Text_WinstonDefeat: @ 82958AD +Route104_Text_WinstonDefeat: .string "Why couldn't I win?$" -Route104_Text_WinstonPostBattle: @ 82958C1 +Route104_Text_WinstonPostBattle: .string "There are some things money can't buy.\n" .string "That's POKéMON…$" -Route104_Text_WinstonRegister1: @ 82958F8 +Route104_Text_WinstonRegister1: .string "Hm?\n" .string "Ah, you've obtained a POKéNAV.\p" .string "I will gladly register you.\n" .string "After all, I have plenty of money.$" -Route104_Text_WinstonRegister2: @ 829595A +Route104_Text_WinstonRegister2: .string "Hm?\n" .string "Ah, you've obtained a POKéNAV.\p" .string "I will gladly register you.\n" .string "After all, I have plenty of money.$" -Route104_Text_WinstonRematchIntro: @ 82959BC +Route104_Text_WinstonRematchIntro: .string "After I lost to you, I learned a bunch\n" .string "of things about POKéMON.$" -Route104_Text_WinstonRematchDefeat: @ 82959FC +Route104_Text_WinstonRematchDefeat: .string "I lost again?\n" .string "Why couldn't I win?$" -Route104_Text_WinstonPostRematch: @ 8295A1E +Route104_Text_WinstonPostRematch: .string "I'm fabulously wealthy, but I can't\n" .string "seem to win at POKéMON…\p" .string "It's so deep, the world of POKéMON…$" -Route104_Text_CindyIntro: @ 8295A7E +Route104_Text_CindyIntro: .string "We must have been fated to meet.\n" .string "May I ask you for a battle?$" -Route104_Text_CindyDefeat: @ 8295ABB +Route104_Text_CindyDefeat: .string "Oh, my!$" -Route104_Text_CindyPostBattle: @ 8295AC3 +Route104_Text_CindyPostBattle: .string "“Hello” is the beginning of “good-bye.”\n" .string "I hope we meet again.$" -Route104_Text_CindyRegister1: @ 8295B01 +Route104_Text_CindyRegister1: .string "Hello, we meet again.\p" .string "We seem to be drawn together. Let's\n" .string "register each other in our POKéNAVS.$" -Route104_Text_CindyRegister2: @ 8295B60 +Route104_Text_CindyRegister2: .string "We should commemorate how we seem\n" .string "to be drawn to each other.\p" .string "Let's register each other in our\n" .string "POKéNAVS.$" -Route104_Text_CindyRematchIntro: @ 8295BC8 +Route104_Text_CindyRematchIntro: .string "Hello, we meet again.\n" .string "May I ask you for a battle?$" -Route104_Text_CindyRematchDefeat: @ 8295BFA +Route104_Text_CindyRematchDefeat: .string "Oh, my…\n" .string "I did the best that I could…$" -Route104_Text_CindyPostRematch: @ 8295C1F +Route104_Text_CindyPostRematch: .string "“Hello” is the beginning of “good-bye.”\n" .string "I hope we meet again.$" -Route104_Text_DarianIntro: @ 8295C5D +Route104_Text_DarianIntro: .string "I fished up a tough-looking POKéMON!\p" .string "It has this magical quality to it!\n" .string "It surely looks tough, yes it does!$" -Route104_Text_DarianDefeat: @ 8295CC9 +Route104_Text_DarianDefeat: .string "What the…$" -Route104_Text_DarianPostBattle: @ 8295CD3 +Route104_Text_DarianPostBattle: .string "Hey, MAGIKARP, you sure don't live up\n" .string "to your name, do you?$" -Route105_Text_FosterIntro: @ 8295D0F +Route105_Text_FosterIntro: .string "There's supposed to be a mystical\n" .string "rock around here.\l" .string "Do you know anything about it?$" -Route105_Text_FosterDefeated: @ 8295D62 +Route105_Text_FosterDefeated: .string "I was thinking too much about that\n" .string "rock, while my POKéMON remained weak…$" -Route105_Text_FosterPostBattle: @ 8295DAB +Route105_Text_FosterPostBattle: .string "I can spend hours and hours staring\n" .string "at a nice rock without growing bored.$" -Route105_Text_LuisIntro: @ 8295DF5 +Route105_Text_LuisIntro: .string "Whew! I was worried that a kid was\n" .string "drowning when I saw you.\p" .string "You seem to be okay, so what do you\n" .string "say to a battle?$" -Route105_Text_LuisDefeated: @ 8295E66 +Route105_Text_LuisDefeated: .string "Glub… Glub…$" -Route105_Text_LuisPostBattle: @ 8295E72 +Route105_Text_LuisPostBattle: .string "If you are drowning, the signal is to\n" .string "wave one arm toward the beach.$" -Route105_Text_DominikIntro: @ 8295EB7 +Route105_Text_DominikIntro: .string "Swimming the deep blue sea…\n" .string "It feels the greatest!$" -Route105_Text_DominikDefeated: @ 8295EEA +Route105_Text_DominikDefeated: .string "I lost…\n" .string "Now I'm feeling blue…$" -Route105_Text_DominikPostBattle: @ 8295F08 +Route105_Text_DominikPostBattle: .string "Why is the sea blue?\p" .string "I learned about that at the MUSEUM in\n" .string "SLATEPORT, but I forgot.$" -Route105_Text_BeverlyIntro: @ 8295F5C +Route105_Text_BeverlyIntro: .string "My body feels lighter in the water.\n" .string "It's as if I've gotten slimmer!$" -Route105_Text_BeverlyDefeated: @ 8295FA0 +Route105_Text_BeverlyDefeated: .string "I'm floating…$" -Route105_Text_PostBattle: @ 8295FAE +Route105_Text_PostBattle: .string "Your body weight is reduced to just\n" .string "one tenth in the water.\p" .string "That would make me…\n" .string "Whoops! I'm not telling you my weight!$" -Route105_Text_ImaniIntro: @ 8296025 +Route105_Text_ImaniIntro: .string "The blue, blue sky…\n" .string "The vast sea…\l" .string "It's so peaceful…$" -Route105_Text_ImaniDefeated: @ 8296059 +Route105_Text_ImaniDefeated: .string "I lost while I was lounging!$" -Route105_Text_ImaniPostBattle: @ 8296076 +Route105_Text_ImaniPostBattle: .string "I want to be told I'm relaxing to be\n" .string "with. Giggle.$" -Route105_Text_AndresIntro: @ 82960A9 +Route105_Text_AndresIntro: .string "I'm convinced that the sea keeps\n" .string "secrets from us.$" -Route105_Text_AndresDefeated: @ 82960DB +Route105_Text_AndresDefeated: .string "Yes…\n" .string "I am no good at battling…$" -Route105_Text_AndresPostBattle: @ 82960FA +Route105_Text_AndresPostBattle: .string "I'm sure there are many secrets to be\n" .string "discovered in the world's seas.\p" .string "I mean to find them all!$" -Route105_Text_AndresRegister: @ 8296159 +Route105_Text_AndresRegister: .string "Huh? I'm so weak, but you're willing\n" .string "to register me in your POKéNAV?$" -Route105_Text_AndresRematchIntro: @ 829619E +Route105_Text_AndresRematchIntro: .string "I've told you that I'm weak…\n" .string "Are you sure you want to do this?$" -Route105_Text_AndresRematchDefeated: @ 82961DD +Route105_Text_AndresRematchDefeated: .string "Yes…\n" .string "I didn't think I could win.$" -Route105_Text_AndresRematchPostBattle: @ 82961FE +Route105_Text_AndresRematchPostBattle: .string "I may be weak at battling, but my\n" .string "drive to explore can't be bested.\p" .string "I will travel the seas all around\n" .string "the world!$" -Route105_Text_JosueIntro: @ 829626F +Route105_Text_JosueIntro: .string "I'm exhausted from swimming.\n" .string "I'm just not used to it.\p" .string "I need a battle for a change of pace!$" -Route105_Text_JosueDefeated: @ 82962CB +Route105_Text_JosueDefeated: .string "I lost because I battled at sea.$" -Route105_Text_JosuePostBattle: @ 82962EC +Route105_Text_JosuePostBattle: .string "Yeah, for me, the sky is a much better\n" .string "match than the sea.$" -Route106_Text_ElliotIntro: @ 8296327 +Route106_Text_ElliotIntro: .string "Which do you prefer, fishing in the\n" .string "sea or a stream?$" -Route106_Text_ElliotDefeated: @ 829635C +Route106_Text_ElliotDefeated: .string "Like in deep-sea fishing, I lost\n" .string "spectacularly!$" -Route106_Text_ElliotPostBattle: @ 829638C +Route106_Text_ElliotPostBattle: .string "Fishing is the greatest whether it's\n" .string "in the sea or a stream.\l" .string "You agree with me, right?$" -Route106_Text_ElliotRegister: @ 82963E3 +Route106_Text_ElliotRegister: .string "Fishing's great, but so is battling.\n" .string "If you don't mind, can we meet again?$" -Route106_Text_ElliotRematchIntro: @ 829642E +Route106_Text_ElliotRematchIntro: .string "I caught a bunch of POKéMON fishing.\n" .string "I'll show you an impressive battle!$" -Route106_Text_ElliotRematchDefeated: @ 8296477 +Route106_Text_ElliotRematchDefeated: .string "I lost again spectacularly!$" -Route106_Text_ElliotRematchPostBattle: @ 8296493 +Route106_Text_ElliotRematchPostBattle: .string "Win or lose, POKéMON are the greatest!\n" .string "You agree with me, right?$" -Route106_Text_NedIntro: @ 82964D4 +Route106_Text_NedIntro: .string "What do people do if they need to go\n" .string "to a washroom?\p" .string "What if my ROD hooks a big one while\n" .string "I'm in the washroom? I just can't go…$" -Route106_Text_NedDefeated: @ 8296553 +Route106_Text_NedDefeated: .string "I lost because I'm trying to not go\n" .string "to the washroom…$" -Route106_Text_NedPostBattle: @ 8296588 +Route106_Text_NedPostBattle: .string "Oh, no! I've got this feeling I'll hook\n" .string "a big one!$" -Route106_Text_DouglasIntro: @ 82965BB +Route106_Text_DouglasIntro: .string "Hahahah! I'm a lousy runner, but in\n" .string "the water you can't catch me!$" -Route106_Text_DouglasDefeated: @ 82965FD +Route106_Text_DouglasDefeated: .string "I give up!$" -Route106_Text_DouglasPostBattle: @ 8296608 +Route106_Text_DouglasPostBattle: .string "I wouldn't lose in a swim race…$" -Route106_Text_KylaIntro: @ 8296628 +Route106_Text_KylaIntro: .string "The sea is my backyard. I'm not going\n" .string "to take it easy because you're a kid!$" -Route106_Text_KylaDefeated: @ 8296674 +Route106_Text_KylaDefeated: .string "Did you take it easy on me by any\n" .string "chance?$" -Route106_Text_KylaPostBattle: @ 829669E +Route106_Text_KylaPostBattle: .string "Drifting along with the waves…\n" .string "I love it! Why don't you give it a try?$" -Route107_Text_DarrinIntro: @ 82966E5 +Route107_Text_DarrinIntro: .string "Yawn…\p" .string "I must have drifted off to sleep while\n" .string "I was drifting in the waves.$" -Route107_Text_DarrinDefeated: @ 829672F +Route107_Text_DarrinDefeated: .string "Ahaha, I lost…\n" .string "I'll take a snooze, I think…$" -Route107_Text_DarrinPostBattle: @ 829675B +Route107_Text_DarrinPostBattle: .string "Floating and being rocked by\n" .string "the waves--it's like sleeping in\l" .string "a plush, comfy bed.$" -Route107_Text_TonyIntro: @ 82967AD +Route107_Text_TonyIntro: .string "The sea is like my backyard.\n" .string "Let's battle!$" -Route107_Text_TonyDefeated: @ 82967D8 +Route107_Text_TonyDefeated: .string "I lost on my home field…\n" .string "I'm in shock!$" -Route107_Text_TonyPostBattle: @ 82967FF +Route107_Text_TonyPostBattle: .string "I swim the seas with a heart full of\n" .string "dreams…\p" .string "It's a song!\n" .string "Anyways, I'm swimming some more.$" -Route107_Text_TonyRegister: @ 829685A +Route107_Text_TonyRegister: .string "You've shocked me to the bone!\n" .string "Well, so you won't forget me…$" -Route107_Text_TonyRematchIntro: @ 8296897 +Route107_Text_TonyRematchIntro: .string "Swimming in the big, wide sea,\n" .string "my POKéMON has grown stronger!$" -Route107_Text_TonyRematchDefeated: @ 82968D5 +Route107_Text_TonyRematchDefeated: .string "What a shock!\p" .string "My POKéMON has gotten stronger, but\n" .string "I stayed weak as a TRAINER!$" -Route107_Text_TonyRematchPostBattle: @ 8296923 +Route107_Text_TonyRematchPostBattle: .string "What you learn in battle makes you\n" .string "a stronger TRAINER.\l" .string "The waves taught me that.$" -Route107_Text_DeniseIntro: @ 8296974 +Route107_Text_DeniseIntro: .string "Do you know a little town called\n" .string "DEWFORD?$" -Route107_Text_DeniseDefeated: @ 829699E +Route107_Text_DeniseDefeated: .string "I hate this!$" -Route107_Text_DenisePostBattle: @ 82969AB +Route107_Text_DenisePostBattle: .string "A weird saying is getting really\n" .string "trendy at DEWFORD HALL.$" -Route107_Text_BethIntro: @ 82969E4 +Route107_Text_BethIntro: .string "Did you want to battle me?\n" .string "Sure, I'll go with you!$" -Route107_Text_BethDefeated: @ 8296A17 +Route107_Text_BethDefeated: .string "I wasn't good enough for you.$" -Route107_Text_BethPostBattle: @ 8296A35 +Route107_Text_BethPostBattle: .string "I think you're going to keep getting\n" .string "better. I'll go for it, too!$" -Route107_Text_LisaIntro: @ 8296A77 +Route107_Text_LisaIntro: .string "LISA: We challenge you as a sister\n" .string "and brother!$" -Route107_Text_LisaDefeated: @ 8296AA7 +Route107_Text_LisaDefeated: .string "LISA: Awesome.\n" .string "You're in a different class of tough.$" -Route107_Text_LisaPostBattle: @ 8296ADC +Route107_Text_LisaPostBattle: .string "LISA: Do you have any friends who\n" .string "would go to the beach with you?$" -Route107_Text_LisaNotEnoughPokemon: @ 8296B1E +Route107_Text_LisaNotEnoughPokemon: .string "LISA: If you want to battle with us,\n" .string "bring more POKéMON.$" -Route107_Text_RayIntro: @ 8296B57 +Route107_Text_RayIntro: .string "RAY: We always battle POKéMON,\n" .string "me and my sister.\p" .string "I always lose, but we can beat you\n" .string "2-on-2!$" -Route107_Text_RayDefeated: @ 8296BB3 +Route107_Text_RayDefeated: .string "RAY: Wowee, you're at a higher level\n" .string "than us!$" -Route107_Text_RayPostBattle: @ 8296BE1 +Route107_Text_RayPostBattle: .string "RAY: My sister gave me my POKéMON.\n" .string "I raised it, and now it's my important\l" .string "partner!$" -Route107_Text_RayNotEnoughPokemon: @ 8296C34 +Route107_Text_RayNotEnoughPokemon: .string "RAY: If you want to battle us,\n" .string "go bring some more POKéMON!$" -Route107_Text_CamronIntro: @ 8296C6F +Route107_Text_CamronIntro: .string "I'm in the middle of a triathlon,\n" .string "but I'm nowhere near tired!$" -Route107_Text_CamronDefeated: @ 8296CAD +Route107_Text_CamronDefeated: .string "That exhausted me…$" -Route107_Text_CamronPostBattle: @ 8296CC0 +Route107_Text_CamronPostBattle: .string "I still have swimming and running left\n" .string "to do after this.\p" .string "Am I going to be okay?$" -Route108_Text_JeromeIntro: @ 8296D10 +Route108_Text_JeromeIntro: .string "My dream is to swim the world's seven\n" .string "seas!$" -Route108_Text_JeromeDefeated: @ 8296D3C +Route108_Text_JeromeDefeated: .string "I won't be able to swim the seven seas\n" .string "like this…$" -Route108_Text_JeromePostBattle: @ 8296D6E +Route108_Text_JeromePostBattle: .string "Playing with marine POKéMON is one of\n" .string "the pleasures of swimming!$" -Route108_Text_MatthewIntro: @ 8296DAF +Route108_Text_MatthewIntro: .string "Ahoy, there! Are you going out to\n" .string "the ABANDONED SHIP, too?$" -Route108_Text_MatthewDefeated: @ 8296DEA +Route108_Text_MatthewDefeated: .string "I'm sinking!\n" .string "Glub… Glub…$" -Route108_Text_MatthewPostBattle: @ 8296E03 +Route108_Text_MatthewPostBattle: .string "Some people even go inside that\n" .string "ABANDONED SHIP.$" -Route108_Text_TaraIntro: @ 8296E33 +Route108_Text_TaraIntro: .string "My liar of a boyfriend told me that\n" .string "I look great in a bikini…$" -Route108_Text_TaraDefeated: @ 8296E71 +Route108_Text_TaraDefeated: .string "Oh, boo!$" -Route108_Text_TaraPostBattle: @ 8296E7A +Route108_Text_TaraPostBattle: .string "Even if it's a lie, I love being told\n" .string "I look great…\l" .string "We girls are so complex…$" -Route108_Text_MissyIntro: @ 8296EC7 +Route108_Text_MissyIntro: .string "I love the sea!\n" .string "I forget all my worries when I swim!$" -Route108_Text_MissyDefeated: @ 8296EFC +Route108_Text_MissyDefeated: .string "When I lose a battle, I get all\n" .string "stressed out!$" -Route108_Text_MissyPostBattle: @ 8296F2A +Route108_Text_MissyPostBattle: .string "Work off your stress by swimming!\n" .string "It's so healthy!$" -Route108_Text_CoryIntro: @ 8296F5D +Route108_Text_CoryIntro: .string "I love WATER-type POKéMON.\n" .string "I love other POKéMON, too!$" -Route108_Text_CoryDefeated: @ 8296F93 +Route108_Text_CoryDefeated: .string "Waaah! I lost!\n" .string "Waaah! Waaah!$" -Route108_Text_CoryPostBattle: @ 8296FB0 +Route108_Text_CoryPostBattle: .string "Shouting is good for me!\n" .string "It uplifts me!$" -Route108_Text_CoryRegister: @ 8296FD8 +Route108_Text_CoryRegister: .string "I love tough TRAINERS, too!\n" .string "Register me in your POKéNAV!$" -Route108_Text_CoryRematchIntro: @ 8297011 +Route108_Text_CoryRematchIntro: .string "Win or lose, I love battling at sea!$" -Route108_Text_CoryRematchDefeated: @ 8297036 +Route108_Text_CoryRematchDefeated: .string "Waaah! I lost again!\n" .string "Waaah! Waaah!$" -Route108_Text_CoryRematchPostBattle: @ 8297059 +Route108_Text_CoryRematchPostBattle: .string "If you're faced with a challenge,\n" .string "try shouting at the sea!$" -Route108_Text_CarolinaIntro: @ 8297094 +Route108_Text_CarolinaIntro: .string "I take huge pride in my POKéMON.\n" .string "We'll show you one speedy battle!$" -Route108_Text_CarolinaDefeated: @ 82970D7 +Route108_Text_CarolinaDefeated: .string "That wasn't cute at all.$" -Route108_Text_CarolinaPostBattle: @ 82970F0 +Route108_Text_CarolinaPostBattle: .string "Since I'm at sea like this, I wouldn't\n" .string "mind putting on a pink, frilly swimsuit…$" -Route109_Text_DavidIntro: @ 8297140 +Route109_Text_DavidIntro: .string "Hiyah! Look at my chiseled abs!\n" .string "This is what you call “cut”!$" -Route109_Text_DavidDefeated: @ 829717D +Route109_Text_DavidDefeated: .string "Aiyah!\n" .string "Flubbed out!$" -Route109_Text_DavidPostBattle: @ 8297191 +Route109_Text_DavidPostBattle: .string "Hiyah!\p" .string "My sculpted abs have nothing to do\n" .string "with POKéMON battles!$" -Route109_Text_AliceIntro: @ 82971D1 +Route109_Text_AliceIntro: .string "Are you properly protected against\n" .string "the sun?$" -Route109_Text_AliceDefeated: @ 82971FD +Route109_Text_AliceDefeated: .string "Ouch, ouch, ouch!$" -Route109_Text_AlicePostBattle: @ 829720F +Route109_Text_AlicePostBattle: .string "Cheeks are the most prone to burning!$" -Route109_Text_HueyIntro: @ 8297235 +Route109_Text_HueyIntro: .string "I've laid anchor in ports around\n" .string "the world, but SLATEPORT's the best.$" -Route109_Text_HueyDefeated: @ 829727B +Route109_Text_HueyDefeated: .string "You're the best!$" -Route109_Text_HueyPostBattle: @ 829728C +Route109_Text_HueyPostBattle: .string "In the best port was the best\n" .string "TRAINER…$" -Route109_Text_EdmondIntro: @ 82972B3 +Route109_Text_EdmondIntro: .string "Urrrrppp…\n" .string "Battle? With me?$" -Route109_Text_EdmondDefeated: @ 82972CE +Route109_Text_EdmondDefeated: .string "Urp… Ooooooohhhhhh…\n" .string "Urrrrpppp…$" -Route109_Text_EdmondPostBattle: @ 82972ED +Route109_Text_EdmondPostBattle: .string "I'm usually stronger than this!\n" .string "I'm just seasick as a dog!\p" .string "I'm a SAILOR, but…$" -Route109_Text_RickyIntro: @ 829733B +Route109_Text_RickyIntro: .string "I'm thirsty… I could go for a SODA POP\n" .string "at the SEASHORE HOUSE…$" -Route109_Text_RickyDefeated: @ 8297379 +Route109_Text_RickyDefeated: .string "Groan…$" -Route109_Text_RickyPostBattle: @ 8297380 +Route109_Text_RickyPostBattle: .string "I'm getting famished… My inner tube\n" .string "looks like a giant doughnut…$" -Route109_Text_RickyRegister: @ 82973C1 +Route109_Text_RickyRegister: .string "Will you have another match with me\n" .string "when I'm not all thirsty?$" -Route109_Text_RickyRematchIntro: @ 82973FF +Route109_Text_RickyRematchIntro: .string "I'm hungry, but I've got enough pep in\n" .string "me for a battle!$" -Route109_Text_RickyRematchDefeated: @ 8297437 +Route109_Text_RickyRematchDefeated: .string "I lost…\n" .string "It's because I'm hungry…$" -Route109_Text_RickyRematchPostBattle: @ 8297458 +Route109_Text_RickyRematchPostBattle: .string "When you eat on a beach, everything\n" .string "seems to taste a little better.$" -Route109_Text_LolaIntro: @ 829749C +Route109_Text_LolaIntro: .string "Doesn't a beach umbrella look like\n" .string "a giant flower?$" -Route109_Text_LolaDefeated: @ 82974CF +Route109_Text_LolaDefeated: .string "Mommy!$" -Route109_Text_LolaPostBattle: @ 82974D6 +Route109_Text_LolaPostBattle: .string "If you look at the beach from the sky,\n" .string "it looks like a big flower garden!$" -Route109_Text_LolaRegister: @ 8297520 +Route109_Text_LolaRegister: .string "Me?\n" .string "I'm here every day!$" -Route109_Text_LolaRematchIntro: @ 8297538 +Route109_Text_LolaRematchIntro: .string "I'm not losing to you again!\n" .string "That's why I have my inner tube!$" -Route109_Text_LolaRematchDefeated: @ 8297576 +Route109_Text_LolaRematchDefeated: .string "Mommy!$" -Route109_Text_LolaRematchPostBattle: @ 829757D +Route109_Text_LolaRematchPostBattle: .string "If I have an inner tube, me and my\n" .string "POKéMON's cuteness goes way up!$" -Route109_Text_AustinaIntro: @ 82975C0 +Route109_Text_AustinaIntro: .string "I can't swim without my inner tube,\n" .string "but I won't lose at POKéMON!$" -Route109_Text_AustinaDefeated: @ 8297601 +Route109_Text_AustinaDefeated: .string "Did I lose because I have an inner\n" .string "tube?$" -Route109_Text_AustinaPostBattle: @ 829762A +Route109_Text_AustinaPostBattle: .string "My inner tube is a fashion item.\n" .string "I can't be seen without it.$" -Route109_Text_GwenIntro: @ 8297667 +Route109_Text_GwenIntro: .string "Hi, big TRAINER.\n" .string "Will you battle with me?$" -Route109_Text_GwenDefeated: @ 8297691 +Route109_Text_GwenDefeated: .string "Oh, you're strong.$" -Route109_Text_GwenPostBattle: @ 82976A4 +Route109_Text_GwenPostBattle: .string "How did you get to be so strong?$" -Route109_Text_CarterIntro: @ 82976C5 +Route109_Text_CarterIntro: .string "Wahahah! This dude's going to catch\n" .string "himself a big one!$" -Route109_Text_CarterDefeated: @ 82976FC +Route109_Text_CarterDefeated: .string "This dude just lost one…$" -Route109_Text_CarterPostBattle: @ 8297715 +Route109_Text_CarterPostBattle: .string "This dude thinks you're a big one.\n" .string "No, you're a big-one-to-be!$" -Route109_Text_PaulIntro: @ 8297754 +Route109_Text_PaulIntro: .string "PAUL: Well, this is a mood-breaker.\p" .string "I wish you wouldn't disturb our\n" .string "precious time together.$" -Route109_Text_PaulDefeated: @ 82977B0 +Route109_Text_PaulDefeated: .string "PAUL: Well, I give up.$" -Route109_Text_PaulPostBattle: @ 82977C7 +Route109_Text_PaulPostBattle: .string "PAUL: Well, don't tell anyone that\n" .string "we're here.\l" .string "This is just our private world of two!$" -Route109_Text_PaulNotEnoughPokemon: @ 829781D +Route109_Text_PaulNotEnoughPokemon: .string "PAUL: We're totally, deeply in love.\n" .string "That's why we make our POKéMON battle\l" .string "together.$" -Route109_Text_MelIntro: @ 8297872 +Route109_Text_MelIntro: .string "MEL: We're, like, totally in love.\n" .string "Our romance is heating up all of HOENN!$" -Route109_Text_MelDefeated: @ 82978BD +Route109_Text_MelDefeated: .string "MEL: We lost, and it's my fault!\n" .string "PAUL will hate me!$" -Route109_Text_MelPostBattle: @ 82978F1 +Route109_Text_MelPostBattle: .string "MEL: Um, PAUL, are you angry with me?\n" .string "Please don't be angry.$" -Route109_Text_MelNotEnoughPokemon: @ 829792E +Route109_Text_MelNotEnoughPokemon: .string "MEL: We're, like, deeply and truly in love.\n" .string "That's why we make our POKéMON\l" .string "battle together.$" -Route109_Text_ChandlerIntro: @ 829798A +Route109_Text_ChandlerIntro: .string "Tadaah! See?\n" .string "My inner tube's round!$" -Route109_Text_ChandlerDefeated: @ 82979AE +Route109_Text_ChandlerDefeated: .string "Oh, oh!\n" .string "Too bad!$" -Route109_Text_ChandlerPostBattle: @ 82979BF +Route109_Text_ChandlerPostBattle: .string "After I showed you my round inner\n" .string "tube, too…$" -Route109_Text_HaileyIntro: @ 82979EC +Route109_Text_HaileyIntro: .string "I can't swim, so I'm pretending\n" .string "to swim.$" -Route109_Text_HaileyDefeated: @ 8297A15 +Route109_Text_HaileyDefeated: .string "I thought so!\n" .string "I didn't think we could win.$" -Route109_Text_HaileyPostBattle: @ 8297A40 +Route109_Text_HaileyPostBattle: .string "When I learn how to swim, I think\n" .string "my POKéMON will become tougher.$" -Route109_Text_ElijahIntro: @ 8297A82 +Route109_Text_ElijahIntro: .string "For a guy as macho as me, this kind\n" .string "of POKéMON is the perfect match!$" -Route109_Text_ElijahDefeated: @ 8297AC7 +Route109_Text_ElijahDefeated: .string "I'm cool even in defeat, hey?$" -Route109_Text_ElijahPostBattle: @ 8297AE5 +Route109_Text_ElijahPostBattle: .string "For a guy as macho as me, a port\n" .string "is the perfect setting!\p" .string "I guess I'll head for SLATEPORT.$" -Route110_Text_JacobIntro: @ 8297B3F +Route110_Text_JacobIntro: .string "Whoa! Watch it!\n" .string "I guess you're not used to BIKE racing.$" -Route110_Text_JacobDefeated: @ 8297B77 +Route110_Text_JacobDefeated: .string "Whoa!\n" .string "My brakes failed!$" -Route110_Text_JacobPostBattle: @ 8297B8F +Route110_Text_JacobPostBattle: .string "Flat tires and brake problems can\n" .string "cause serious injury!\l" .string "Inspect your BIKE for problems!$" -Route110_Text_AnthonyIntro: @ 8297BE7 +Route110_Text_AnthonyIntro: .string "Yo, you!\n" .string "Can you keep up with my speed?$" -Route110_Text_AnthonyDefeated: @ 8297C0F +Route110_Text_AnthonyDefeated: .string "Crash and burn!$" -Route110_Text_AnthonyPostBattle: @ 8297C1F +Route110_Text_AnthonyPostBattle: .string "Speed alone won't let me win at POKéMON.\n" .string "I need to reconsider this…$" -Route110_Text_BenjaminIntro: @ 8297C63 +Route110_Text_BenjaminIntro: .string "Don't panic if your BIKE's going fast!$" -Route110_Text_BenjaminDefeated: @ 8297C8A +Route110_Text_BenjaminDefeated: .string "I shouldn't panic during POKéMON\n" .string "battles…$" -Route110_Text_BenjaminPostBattle: @ 8297CB4 +Route110_Text_BenjaminPostBattle: .string "There's no need to panic or stress.\n" .string "Take it easy. There's plenty of time.$" -Route110_Text_BenjaminRegister: @ 8297CFE +Route110_Text_BenjaminRegister: .string "I'll keep chugging on without stressing.\n" .string "Give me a shout if you're up to it.$" -Route110_Text_BenjaminRematchIntro: @ 8297D4B +Route110_Text_BenjaminRematchIntro: .string "Aren't you going a little too fast?\n" .string "Take it easy and let's battle.$" -Route110_Text_BenjaminRematchDefeated: @ 8297D8E +Route110_Text_BenjaminRematchDefeated: .string "I didn't panic, but I still lost…$" -Route110_Text_BenjaminRematchPostBattle: @ 8297DB0 +Route110_Text_BenjaminRematchPostBattle: .string "There's no need to panic or stress.\n" .string "Take it easy. There's plenty of time.$" -Route110_Text_AbigailIntro: @ 8297DFA +Route110_Text_AbigailIntro: .string "The triathlon is hard in the extreme.\p" .string "You have to complete the three events\n" .string "of swimming, cycling, and running.$" -Route110_Text_AbigailDefeated: @ 8297E69 +Route110_Text_AbigailDefeated: .string "POKéMON battles are hard, too!$" -Route110_Text_AbigailPostBattle: @ 8297E88 +Route110_Text_AbigailPostBattle: .string "I'm exhausted, so I need a break.\n" .string "It's important to get proper rest.$" -Route110_Text_AbigailRegister: @ 8297ECD +Route110_Text_AbigailRegister: .string "You know, I like you!\n" .string "Let's have a rematch on CYCLING ROAD.$" -Route110_Text_AbigailRematchIntro: @ 8297F09 +Route110_Text_AbigailRematchIntro: .string "Isn't it neat to hold a battle while\n" .string "cycling?$" -Route110_Text_AbigailRematchDefeated: @ 8297F37 +Route110_Text_AbigailRematchDefeated: .string "Wow…\n" .string "How could you be so strong?$" -Route110_Text_AbigailRematchPostBattle: @ 8297F58 +Route110_Text_AbigailRematchPostBattle: .string "Were you going after a record?\p" .string "I'm sorry if I held you up!$" -Route110_Text_JasmineIntro: @ 8297F93 +Route110_Text_JasmineIntro: .string "I've been riding without stopping.\n" .string "My thighs are like rocks!$" -Route110_Text_JasmineDefeated: @ 8297FD0 +Route110_Text_JasmineDefeated: .string "I'm worried about muscle cramps…$" -Route110_Text_JasminePostBattle: @ 8297FF1 +Route110_Text_JasminePostBattle: .string "Oh, you have some GYM BADGES?\n" .string "No wonder you're so strong!$" -Route110_Text_EdwardIntro: @ 829802B +Route110_Text_EdwardIntro: .string "I have foreseen your intentions!\n" .string "I cannot possibly lose!$" -Route110_Text_EdwardDefeated: @ 8298064 +Route110_Text_EdwardDefeated: .string "I failed to prophesize my own demise!$" -Route110_Text_EdwardPostBattle: @ 829808A +Route110_Text_EdwardPostBattle: .string "I see your future…\p" .string "Hmm…\n" .string "I see a shining light…$" -Route110_Text_JaclynIntro: @ 82980B9 +Route110_Text_JaclynIntro: .string "Ahahahaha!\n" .string "I'll dazzle you with my wonders!$" -Route110_Text_JaclynDefeated: @ 82980E5 +Route110_Text_JaclynDefeated: .string "I wondrously lost!$" -Route110_Text_JaclynPostBattle: @ 82980F8 +Route110_Text_JaclynPostBattle: .string "You managed to win only because it was\n" .string "a wonder! Yes, a wonder!\l" .string "Don't think you can win all the time!$" -Route110_Text_EdwinIntro: @ 829815E +Route110_Text_EdwinIntro: .string "Could I see your POKéMON?\n" .string "Just one look, please?$" -Route110_Text_EdwinDefeated: @ 829818F +Route110_Text_EdwinDefeated: .string "I wanted to complete\n" .string "my collection…$" -Route110_Text_EdwinPostBattle: @ 82981B3 +Route110_Text_EdwinPostBattle: .string "When I see a POKéMON that I don't know,\n" .string "my passion as a collector is ignited!$" -Route110_Text_EdwinRegister: @ 8298201 +Route110_Text_EdwinRegister: .string "I like collecting MATCH CALL\n" .string "registrations, too…$" -Route110_Text_EdwinRematchIntro: @ 8298232 +Route110_Text_EdwinRematchIntro: .string "Hi, have you caught any new POKéMON?\p" .string "Could I see your POKéMON?\n" .string "Just one look, please?$" -Route110_Text_EdwinRematchDefeated: @ 8298288 +Route110_Text_EdwinRematchDefeated: .string "Your POKéMON…\n" .string "I envy you.$" -Route110_Text_EdwinRematchPostBattle: @ 82982A2 +Route110_Text_EdwinRematchPostBattle: .string "Oh, I long to make all rare POKéMON\n" .string "mine!$" -Route110_Text_DaleIntro: @ 82982CC +Route110_Text_DaleIntro: .string "Hey!\n" .string "Don't sneak up behind me like that!$" -Route110_Text_DaleDefeated: @ 82982F5 +Route110_Text_DaleDefeated: .string "I lost!\n" .string "Drat!$" -Route110_Text_DalePostBattle: @ 8298303 +Route110_Text_DalePostBattle: .string "Fishing is all about concentration.\n" .string "You have to focus on the floater.$" -Route110_Text_IsabelIntro: @ 8298349 +Route110_Text_IsabelIntro: .string "Ahahaha! I would go anywhere to show\n" .string "off my delightful POKéMON.$" -Route110_Text_IsabelDefeated: @ 8298389 +Route110_Text_IsabelDefeated: .string "Oh, dear, this won't do.$" -Route110_Text_IsabelPostBattle: @ 82983A2 +Route110_Text_IsabelPostBattle: .string "Rather than battling, perhaps I should\n" .string "show off my POKéMON at the FAN CLUB.$" -Route110_Text_IsabelRegister: @ 82983EE +Route110_Text_IsabelRegister: .string "That wasn't close to what I could\n" .string "do to show off my POKéMON.\p" .string "I'll have you as my captive audience\n" .string "as often as possible!$" -Route110_Text_IsabelRematchIntro: @ 8298466 +Route110_Text_IsabelRematchIntro: .string "Ahahahaha! I would be happy to show\n" .string "off my POKéMON as often as you like!$" -Route110_Text_IsabelRematchDefeated: @ 82984AF +Route110_Text_IsabelRematchDefeated: .string "Oh, dear, this won't do.$" -Route110_Text_IsabelRematchPostBattle: @ 82984C8 +Route110_Text_IsabelRematchPostBattle: .string "I don't think that I could ever stop\n" .string "from showing off my POKéMON.\p" .string "But I like to battle, too!$" -Route110_Text_TimmyIntro: @ 8298525 +Route110_Text_TimmyIntro: .string "I found some cool POKéMON in the grass\n" .string "around here!$" -Route110_Text_TimmyDefeated: @ 8298559 +Route110_Text_TimmyDefeated: .string "Being cool isn't enough to win…$" -Route110_Text_TimmyPostBattle: @ 8298579 +Route110_Text_TimmyPostBattle: .string "It's hard to battle with POKéMON you\n" .string "just caught.$" -Route110_Text_AlyssaIntro: @ 82985AB +Route110_Text_AlyssaIntro: .string "I fell off CYCLING ROAD…\p" .string "I'll get over my embarrassment by\n" .string "battling with you!$" -Route110_Text_AlyssaDefeated: @ 82985F9 +Route110_Text_AlyssaDefeated: .string "Oops!\n" .string "I ended up losing!$" -Route110_Text_AlyssaPostBattle: @ 8298612 +Route110_Text_AlyssaPostBattle: .string "Falling… Losing…\n" .string "This is so humiliating for me!$" -Route110_Text_JosephIntro: @ 8298642 +Route110_Text_JosephIntro: .string "Okay! Full-throttle time! If you can't\n" .string "groove, you get left behind!$" -Route110_Text_JosephDefeated: @ 8298686 +Route110_Text_JosephDefeated: .string "You got into the groove all right…$" -Route110_Text_JosephPostBattle: @ 82986A9 +Route110_Text_JosephPostBattle: .string "This isn't going to bring me down!\n" .string "Losing has made me a better man!$" -Route110_Text_KalebIntro: @ 82986ED +Route110_Text_KalebIntro: .string "When cute POKéMON help each other…\n" .string "You won't see a more adorable sight!$" -Route110_Text_KalebDefeated: @ 8298735 +Route110_Text_KalebDefeated: .string "Have you no compassion or pity?$" -Route110_Text_KalebPostBattle: @ 8298755 +Route110_Text_KalebPostBattle: .string "Okay, okay, you've done the best you\n" .string "could, my pretties.$" -Route111_Text_DrewIntro: @ 829878E +Route111_Text_DrewIntro: .string "Oh, hey! Those GO-GOGGLES suit you.\n" .string "But I think they look better on me.\p" .string "Let's decide who they look better on\n" .string "with a battle!$" -Route111_Text_DrewDefeat: @ 829880A +Route111_Text_DrewDefeat: .string "I couldn't see what was happening at\n" .string "my sides because of the GO-GOGGLES.$" -Route111_Text_DrewPostBattle: @ 8298853 +Route111_Text_DrewPostBattle: .string "The GO-GOGGLES make it possible to\n" .string "get through sandstorms.\l" .string "That makes me happy!$" -Route111_Text_HeidiIntro: @ 82988A3 +Route111_Text_HeidiIntro: .string "I'm having a picnic in the desert.\p" .string "You can always find a TRAINER,\n" .string "so I can enjoy a battle here, too!$" -Route111_Text_HeidiDefeat: @ 8298908 +Route111_Text_HeidiDefeat: .string "Ohhh! You're mean!$" -Route111_Text_HeidiPostBattle: @ 829891B +Route111_Text_HeidiPostBattle: .string "When you're battling in a sandstorm,\n" .string "watch out for your POKéMON's HP.\p" .string "It can faint if you don't keep\n" .string "an eye on it!$" -Route111_Text_BeauIntro: @ 829898E +Route111_Text_BeauIntro: .string "Wearing these GO-GOGGLES makes me\n" .string "feel like a superhero.\l" .string "Right now, nobody can beat me!$" -Route111_Text_BeauDefeat: @ 82989E6 +Route111_Text_BeauDefeat: .string "I can't win on spirit alone…$" -Route111_Text_BeauPostBattle: @ 8298A03 +Route111_Text_BeauPostBattle: .string "I'm going to be a real hero one day.\n" .string "I'm going to work harder to make me\l" .string "and my POKéMON stronger.$" -Route111_Text_BeckyIntro: @ 8298A65 +Route111_Text_BeckyIntro: .string "I heard there are fossils to be found\n" .string "in the desert. Where could they be?$" -Route111_Text_BeckyDefeat: @ 8298AAF +Route111_Text_BeckyDefeat: .string "I came up short…$" -Route111_Text_BeckyPostBattle: @ 8298AC0 +Route111_Text_BeckyPostBattle: .string "If they can find fossils in the desert,\n" .string "it must have been a sea before.$" -Route111_Text_DustyIntro: @ 8298B08 +Route111_Text_DustyIntro: .string "For thirty years I have searched for\n" .string "ancient ruins!\l" .string "I am to be challenged?$" -Route111_Text_DustyDefeat: @ 8298B53 +Route111_Text_DustyDefeat: .string "While I have searched for ruins,\n" .string "I've not searched for strong POKéMON.$" -Route111_Text_DustyPostBattle: @ 8298B9A +Route111_Text_DustyPostBattle: .string "For thirty years I have searched for\n" .string "ancient ruins!\p" .string "No, wait, was that forty years?\n" .string "Which was it now?$" -Route111_Text_DustyRegister: @ 8298C00 +Route111_Text_DustyRegister: .string "I haven't been searching for any\n" .string "tough POKéMON.\p" .string "But, for some reason, I sure do like\n" .string "POKéNAVS.$" -Route111_Text_DustyRematchIntro: @ 8298C5F +Route111_Text_DustyRematchIntro: .string "For thirty years I have searched for\n" .string "ancient ruins!\p" .string "No, wait, was that forty years?\n" .string "Anyway, am I to be challenged?$" -Route111_Text_DustyRematchDefeat: @ 8298CD2 +Route111_Text_DustyRematchDefeat: .string "I've found no ruins, nor have I found\n" .string "any strong POKéMON…$" -Route111_Text_DustyPostRematch: @ 8298D0C +Route111_Text_DustyPostRematch: .string "For thirty years I have searched for\n" .string "ancient ruins!\p" .string "No, wait, was that forty years\n" @@ -1324,215 +1324,215 @@ Route111_Text_DustyPostRematch: @ 8298D0C .string "Hmm… It could even be fifty…\n" .string "How long have I been at this?$" -Route111_Text_TravisIntro: @ 8298DA9 +Route111_Text_TravisIntro: .string "I'm full of pep!\n" .string "And my POKéMON is peppy, too!$" -Route111_Text_TravisDefeat: @ 8298DD8 +Route111_Text_TravisDefeat: .string "My POKéMON lost its pep…$" -Route111_Text_TravisPostBattle: @ 8298DF1 +Route111_Text_TravisPostBattle: .string "When I see a TRAINER with a lot of pep,\n" .string "I can't help looking.$" -Route111_Text_IreneIntro: @ 8298E2F +Route111_Text_IreneIntro: .string "I don't know where you're going,\n" .string "but would you like to battle?$" -Route111_Text_IreneDefeat: @ 8298E6E +Route111_Text_IreneDefeat: .string "Oh, you're disgustingly good!$" -Route111_Text_IrenePostBattle: @ 8298E8C +Route111_Text_IrenePostBattle: .string "I'm thinking that I should go to\n" .string "MT. CHIMNEY, but the view around\l" .string "here is very nice, too.$" -Route111_Text_DaisukeIntro: @ 8298EE6 +Route111_Text_DaisukeIntro: .string "To train myself, I challenge all\n" .string "whom I meet!$" -Route111_Text_DaisukeDefeat: @ 8298F14 +Route111_Text_DaisukeDefeat: .string "Uncle! I give up!$" -Route111_Text_DaisukePostBattle: @ 8298F26 +Route111_Text_DaisukePostBattle: .string "All I can do is keep training until\n" .string "I can defeat strong TRAINERS such\l" .string "as yourself.$" -Route111_Text_WiltonIntro: @ 8298F79 +Route111_Text_WiltonIntro: .string "Show me how much you've toughened\n" .string "your POKéMON.$" -Route111_Text_WiltonDefeat: @ 8298FA9 +Route111_Text_WiltonDefeat: .string "I see, you've toughened them\n" .string "considerably.$" -Route111_Text_WiltonPostBattle: @ 8298FD4 +Route111_Text_WiltonPostBattle: .string "POKéMON and TRAINERS learn much\n" .string "through battling.\p" .string "What's important is to never give up\n" .string "even if you lose.$" -Route111_Text_WiltonRegister: @ 829903D +Route111_Text_WiltonRegister: .string "There is much to be learned from\n" .string "your training style.\p" .string "I request a rematch if it\n" .string "behooves you.$" -Route111_Text_WiltonRematchIntro: @ 829909B +Route111_Text_WiltonRematchIntro: .string "We're training here to elevate our\n" .string "game to the next level.\l" .string "Stay and train with us!$" -Route111_Text_WiltonRematchDefeat: @ 82990EE +Route111_Text_WiltonRematchDefeat: .string "Ooh, you're decent!$" -Route111_Text_WiltonPostRematch: @ 8299102 +Route111_Text_WiltonPostRematch: .string "Since you're that strong, you should\n" .string "aim for the POKéMON LEAGUE.$" -Route111_Text_BrookeIntro: @ 8299143 +Route111_Text_BrookeIntro: .string "Oh, your POKéMON look like serious\n" .string "actors.\l" .string "I have to ask you for an engagement.$" -Route111_Text_BrookeDefeat: @ 8299193 +Route111_Text_BrookeDefeat: .string "They didn't just look strong,\n" .string "they are strong!$" -Route111_Text_BrookePostBattle: @ 82991C2 +Route111_Text_BrookePostBattle: .string "I thought I was raising my POKéMON\n" .string "diligently, but, oh no, there is still\l" .string "much to be done.$" -Route111_Text_BrookeRegister: @ 829921D +Route111_Text_BrookeRegister: .string "I wish I could become friends with\n" .string "more strong people like you!$" -Route111_Text_BrookeRematchIntro: @ 829925D +Route111_Text_BrookeRematchIntro: .string "You can make POKéMON stronger or\n" .string "weaker depending on the moves you\l" .string "teach them.\p" .string "What kinds of moves do your POKéMON\n" .string "know?$" -Route111_Text_BrookeRematchDefeat: @ 82992D6 +Route111_Text_BrookeRematchDefeat: .string "You've taught them good moves!$" -Route111_Text_BrookePostRematch: @ 82992F5 +Route111_Text_BrookePostRematch: .string "Maybe I should have stopped my\n" .string "POKéMON from evolving until they\l" .string "learned better moves…$" -Route111_Text_CeliaIntro: @ 829934B +Route111_Text_CeliaIntro: .string "I shouldn't have come to a place like\n" .string "this for a picnic!$" -Route111_Text_CeliaDefeat: @ 8299384 +Route111_Text_CeliaDefeat: .string "Aww!\n" .string "I really shouldn't have come!$" -Route111_Text_CeliaPostBattle: @ 82993A7 +Route111_Text_CeliaPostBattle: .string "In a sandstorm like this, I can't set\n" .string "the places for a picnic even with my\l" .string "GO-GOGGLES on…$" -Route111_Text_BryanIntro: @ 8299401 +Route111_Text_BryanIntro: .string "How tough are you?\n" .string "We shall expose that secret!$" -Route111_Text_BryanDefeat: @ 8299431 +Route111_Text_BryanDefeat: .string "Oh! Your strength!\n" .string "It is shrouded in mystery!$" -Route111_Text_BryanPostBattle: @ 829945F +Route111_Text_BryanPostBattle: .string "This desert hoards mysteries in\n" .string "its shifting sands!$" -Route111_Text_BrandenIntro: @ 8299493 +Route111_Text_BrandenIntro: .string "I'll give you some of my sandwich\n" .string "if you'll lose.$" -Route111_Text_BrandenDefeat: @ 82994C5 +Route111_Text_BrandenDefeat: .string "Tch! I thought a sandwich would be\n" .string "enough of a bribe…$" -Route111_Text_BrandenPostBattle: @ 82994FB +Route111_Text_BrandenPostBattle: .string "My SANDSHREW loves eating\n" .string "my sandwiches.$" -Route111_Text_TyronIntro: @ 8299524 +Route111_Text_TyronIntro: .string "This is my favorite kind of POKéMON!$" -Route111_Text_TyronDefeat: @ 8299549 +Route111_Text_TyronDefeat: .string "Wait!\n" .string "Did you get a good look at my POKéMON?$" -Route111_Text_TyronPostBattle: @ 8299576 +Route111_Text_TyronPostBattle: .string "When having a battle, I get a kick out\n" .string "of showing off my POKéMON.\p" .string "I bet everyone feels that way when\n" .string "they enter a battle!$" -Route111_Text_CelinaIntro: @ 82995F0 +Route111_Text_CelinaIntro: .string "Show me how to put a little excitement\n" .string "into my life.$" -Route111_Text_CelinaDefeat: @ 8299625 +Route111_Text_CelinaDefeat: .string "Oh… My…\n" .string "That was too much excitement.$" -Route111_Text_CelinaPostBattle: @ 829964B +Route111_Text_CelinaPostBattle: .string "My pulse is still racing.\n" .string "You're one fabulous TRAINER.$" -Route111_Text_HaydenIntro: @ 8299682 +Route111_Text_HaydenIntro: .string "When you're as famished as I am,\n" .string "there is no room for pity!$" -Route111_Text_HaydenDefeat: @ 82996BE +Route111_Text_HaydenDefeat: .string "Groan…$" -Route111_Text_HaydenPostBattle: @ 82996C5 +Route111_Text_HaydenPostBattle: .string "My stomach is grumbling!\n" .string "Maybe I can grill some BERRIES…$" -Route111_Text_BiancaIntro: @ 82996FE +Route111_Text_BiancaIntro: .string "Did you come from MAUVILLE?\n" .string "Then you should be full of energy!$" -Route111_Text_BiancaDefeat: @ 829973D +Route111_Text_BiancaDefeat: .string "Ooh lala!\n" .string "That's a lot to take!$" -Route111_Text_BiancaPostBattle: @ 829975D +Route111_Text_BiancaPostBattle: .string "This road here…\n" .string "You have quite a ways to travel.$" -Route112_Text_BriceIntro: @ 829978E +Route112_Text_BriceIntro: .string "Hahahaha!\n" .string "How about we have a battle?\l" .string "You and me!\l" .string "Hahahaha!$" -Route112_Text_BriceDefeat: @ 82997CA +Route112_Text_BriceDefeat: .string "I lost!\n" .string "Hahahaha!$" -Route112_Text_BricePostBattle: @ 82997DC +Route112_Text_BricePostBattle: .string "Hahahahaha! Something flew up my nose!\n" .string "Hahahaha-hatchoo!$" -Route112_Text_TrentIntro: @ 8299815 +Route112_Text_TrentIntro: .string "My legs are solid from pounding up\n" .string "and down the mountains.\p" .string "They're not going to buckle easily,\n" .string "friend!$" -Route112_Text_TrentDefeat: @ 829987C +Route112_Text_TrentDefeat: .string "Ouch! My legs cramped up!$" -Route112_Text_TrentPostBattle: @ 8299896 +Route112_Text_TrentPostBattle: .string "Try hiking, and I mean really\n" .string "pounding, on these mountain trails\l" .string "with a heavy pack weighing dozens of\l" @@ -1540,2318 +1540,2318 @@ Route112_Text_TrentPostBattle: @ 8299896 .string "That, my friend, will get your body\n" .string "into serious shape.$" -Route112_Text_TrentRegister: @ 829993C +Route112_Text_TrentRegister: .string "Ow, my legs have cramped up.\n" .string "Can you grab me some bandages from\l" .string "my backpack?\p" .string "No, that's my POKéNAV!\n" .string "Oh, fine, I'll register you.$" -Route112_Text_TrentRematchIntro: @ 82999BD +Route112_Text_TrentRematchIntro: .string "I've been keeping fit by hiking.\n" .string "Power, I have in spades!$" -Route112_Text_TrentRematchDefeat: @ 82999F7 +Route112_Text_TrentRematchDefeat: .string "I got trumped in power?$" -Route112_Text_TrentRematchPostBattle: @ 8299A0F +Route112_Text_TrentRematchPostBattle: .string "I hear there are some seriously tough\n" .string "TRAINERS on top of MT. CHIMNEY.\p" .string "I intend to get up there and give them\n" .string "a challenge!$" -Route112_Text_LarryIntro: @ 8299A89 +Route112_Text_LarryIntro: .string "I'm strong.\n" .string "I won't cry if I lose.$" -Route112_Text_LarryDefeat: @ 8299AAC +Route112_Text_LarryDefeat: .string "Waaaah!$" -Route112_Text_LarryPostBattle: @ 8299AB4 +Route112_Text_LarryPostBattle: .string "I'm not crying because I miss my mommy!\n" .string "Snivel…$" -Route112_Text_CarolIntro: @ 8299AE4 +Route112_Text_CarolIntro: .string "When you're out on a picnic, why,\n" .string "you simply have to sing!\l" .string "Come on, sing with me!$" -Route112_Text_CarolDefeat: @ 8299B36 +Route112_Text_CarolDefeat: .string "Oh, you're so strong!$" -Route112_Text_CarolPostBattle: @ 8299B4C +Route112_Text_CarolPostBattle: .string "It doesn't matter if you're good or bad\n" .string "at singing or POKéMON.\p" .string "If you have the most fun, you win!$" -Route112_Text_BryantIntro: @ 8299BAE +Route112_Text_BryantIntro: .string "I caught hot POKéMON in FIERY PATH!\n" .string "Take a look!$" -Route112_Text_BryantDefeat: @ 8299BDF +Route112_Text_BryantDefeat: .string "What a bumpy ride that was!$" -Route112_Text_BryantPostBattle: @ 8299BFB +Route112_Text_BryantPostBattle: .string "I like the way you battle.\n" .string "It has a certain flair to it.$" -Route112_Text_ShaylaIntro: @ 8299C34 +Route112_Text_ShaylaIntro: .string "Oh, aren't you an adorable TRAINER!\n" .string "Please, I need a romantic battle!\l" .string "I'm somewhat decent!$" -Route112_Text_ShaylaDefeat: @ 8299C8F +Route112_Text_ShaylaDefeat: .string "Oh, how strong you are!\n" .string "You've given me quite a shock!$" -Route112_Text_ShaylaPostBattle: @ 8299CC6 +Route112_Text_ShaylaPostBattle: .string "Are you busy right now?\n" .string "I was thinking that maybe we can have\l" .string "a rematch right now…\l" .string "But it's all right if you're busy.$" -Route113_Text_JaylenIntro: @ 8299D3C +Route113_Text_JaylenIntro: .string "Can you guess why it's so cool\n" .string "around here?$" -Route113_Text_JaylenDefeat: @ 8299D68 +Route113_Text_JaylenDefeat: .string "Peeuuw!\n" .string "That stinks!$" -Route113_Text_JaylenPostBattle: @ 8299D7D +Route113_Text_JaylenPostBattle: .string "The volcanic ash blocks the sun,\n" .string "so it doesn't get very warm.\p" .string "That's good for me--I can't stand heat!$" -Route113_Text_DillonIntro: @ 8299DE3 +Route113_Text_DillonIntro: .string "The volcano's eruption is proof that\n" .string "the earth is alive.$" -Route113_Text_DillonDefeat: @ 8299E1C +Route113_Text_DillonDefeat: .string "You're some kind of strong!$" -Route113_Text_DillonPostBattle: @ 8299E38 +Route113_Text_DillonPostBattle: .string "Ouch! Owww! I can't see!\n" .string "I got ashes in my eyelashes!\p" .string "Get it? Ashes and eyelashes?\p" .string "Okay, that was bad, sorry…$" -Route113_Text_MadelineIntro: @ 8299EA6 +Route113_Text_MadelineIntro: .string "I use this parasol to ward off this\n" .string "filthy, yucky volcanic ash from\l" .string "my dear NUMEL.$" -Route113_Text_MadelineDefeat: @ 8299EF9 +Route113_Text_MadelineDefeat: .string "Huff, huff…\n" .string "I am exhausted…$" -Route113_Text_MadelinePostBattle: @ 8299F15 +Route113_Text_MadelinePostBattle: .string "You're very good at this.\n" .string "I must say I'm impressed!$" -Route113_Text_MadelineRegister: @ 8299F49 +Route113_Text_MadelineRegister: .string "Here, slide under my parasol.\n" .string "Let me register you in my POKéNAV.$" -Route113_Text_MadelineRematchIntro: @ 8299F8A +Route113_Text_MadelineRematchIntro: .string "Oh, hello, hasn't it been a while?\n" .string "May I invite you to battle?$" -Route113_Text_MadelineRematchDefeat: @ 8299FC9 +Route113_Text_MadelineRematchDefeat: .string "Oh, how super!$" -Route113_Text_MadelinePostRematch: @ 8299FD8 +Route113_Text_MadelinePostRematch: .string "You've remained very good at this.\n" .string "I must say I'm impressed!$" -Route113_Text_LaoIntro: @ 829A015 +Route113_Text_LaoIntro: .string "From out of the ashes I leap! Hiyah!\n" .string "I challenge thee!$" -Route113_Text_LaoDefeat: @ 829A04C +Route113_Text_LaoDefeat: .string "With honor I admit defeat!$" -Route113_Text_LaoPostBattle: @ 829A067 +Route113_Text_LaoPostBattle: .string "I must refine the art of concealment.\n" .string "I bid thee farewell.$" -Route113_Text_LaoRegister: @ 829A0A2 +Route113_Text_LaoRegister: .string "Yiiyaah! Witness the ancient ninja\n" .string "technique of POKéNAV registration!$" -Route113_Text_LaoRematchIntro: @ 829A0E8 +Route113_Text_LaoRematchIntro: .string "From out of the ashes I leap! Hiyah!\n" .string "I challenge thee!$" -Route113_Text_LaoRematchDefeat: @ 829A11F +Route113_Text_LaoRematchDefeat: .string "With honor I admit defeat!$" -Route113_Text_LaoPostRematch: @ 829A13A +Route113_Text_LaoPostRematch: .string "My flawless concealment was let down\n" .string "by my immature battle skills…\p" .string "I bid thee farewell.$" -Route113_Text_LungIntro: @ 829A192 +Route113_Text_LungIntro: .string "Thanks for finding me!\n" .string "But we still have to battle!$" -Route113_Text_LungDefeat: @ 829A1C6 +Route113_Text_LungDefeat: .string "I'll use my ninjutsu on you…\n" .string "“VOLCANIC ASH SWIRL CLOAK”!\p" .string "…What?\n" .string "It's already over?$" -Route113_Text_LungPostBattle: @ 829A219 +Route113_Text_LungPostBattle: .string "You know what's crummy about hiding?\n" .string "It's lonely if no one comes along.$" -Route113_Text_ToriIntro: @ 829A261 +Route113_Text_ToriIntro: .string "TORI: Both of us, we collect ashes.\n" .string "We battle POKéMON, too.$" -Route113_Text_ToriDefeat: @ 829A29D +Route113_Text_ToriDefeat: .string "TORI: We lost… It's boring, so I'm going\n" .string "to get some more ashes.$" -Route113_Text_ToriPostBattle: @ 829A2DE +Route113_Text_ToriPostBattle: .string "TORI: How much ash do we have?\n" .string "Enough for a WHITE FLUTE, I hope.$" -Route113_Text_ToriNotEnoughMons: @ 829A31F +Route113_Text_ToriNotEnoughMons: .string "TORI: We want to battle 2-on-2.\n" .string "If we didn't, we would lose!$" -Route113_Text_TiaIntro: @ 829A35C +Route113_Text_TiaIntro: .string "TIA: Both of us, we collect ashes.\n" .string "We battle POKéMON, too.$" -Route113_Text_TiaDefeat: @ 829A397 +Route113_Text_TiaDefeat: .string "TIA: We couldn't win… It's boring,\n" .string "so I'm getting some more ashes.$" -Route113_Text_TiaPostBattle: @ 829A3DA +Route113_Text_TiaPostBattle: .string "TIA: We have a lot of ashes!\n" .string "I think enough for a WHITE FLUTE!$" -Route113_Text_TiaNotEnoughMons: @ 829A419 +Route113_Text_TiaNotEnoughMons: .string "TIA: We want to battle 2-on-2.\n" .string "If we don't, we won't win!$" -Route113_Text_CobyIntro: @ 829A453 +Route113_Text_CobyIntro: .string "Pfft, with these wings I can\n" .string "flick you away!$" -Route113_Text_CobyDefeat: @ 829A480 +Route113_Text_CobyDefeat: .string "A… What?$" -Route113_Text_CobyPostBattle: @ 829A489 +Route113_Text_CobyPostBattle: .string "I don't know what to say when I get\n" .string "beaten so easily…$" -Route113_Text_SophieIntro: @ 829A4BF +Route113_Text_SophieIntro: .string "The warmth here is making me drowsy.\n" .string "Battle with me so I can stay awake.$" -Route113_Text_SophieDefeat: @ 829A508 +Route113_Text_SophieDefeat: .string "This is a dream.\n" .string "I'm sure of it…$" -Route113_Text_SophiePostBattle: @ 829A529 +Route113_Text_SophiePostBattle: .string "Losing burns me up…\n" .string "I'm just going to sleep right here!\l" .string "Zzz!$" -Route113_Text_LawrenceIntro: @ 829A566 +Route113_Text_LawrenceIntro: .string "Were you maybe in the middle\n" .string "of gathering volcanic ashes?$" -Route113_Text_LawrenceDefeat: @ 829A5A0 +Route113_Text_LawrenceDefeat: .string "Ehehe.\n" .string "We got beaten cleanly.$" -Route113_Text_LawrencePostBattle: @ 829A5BE +Route113_Text_LawrencePostBattle: .string "I ought to hide under the ashes, too.$" -Route113_Text_WyattIntro: @ 829A5E4 +Route113_Text_WyattIntro: .string "Y-you want to battle with me?\n" .string "Even though I just caught my POKéMON?$" -Route113_Text_WyattDefeat: @ 829A628 +Route113_Text_WyattDefeat: .string "Y-you're all happy to win?\n" .string "Even though it's only me?$" -Route113_Text_WyattPostBattle: @ 829A65D +Route113_Text_WyattPostBattle: .string "Oh, so now you want to say a word to\n" .string "the loser?\p" .string "Aren't you just the coolest?\n" .string "Humph!$" -Route114_Text_LennyIntro: @ 829A6B1 +Route114_Text_LennyIntro: .string "Yodelayhihoo!\p" .string "… …\p" .string "You're supposed to shout\n" .string "“yodelayhihoo” since it doesn't\l" .string "echo here!$" -Route114_Text_LennyDefeat: @ 829A707 +Route114_Text_LennyDefeat: .string "Yodelayhihoo!$" -Route114_Text_LennyPostBattle: @ 829A715 +Route114_Text_LennyPostBattle: .string "When I was a wee tyke, I believed there\n" .string "was someone copying me and shouting\l" .string "back, “Yodelayhihoo.”$" -Route114_Text_LucasIntro: @ 829A777 +Route114_Text_LucasIntro: .string "If you're not prepared, you shouldn't\n" .string "be up in the mountains!$" -Route114_Text_LucasDefeat: @ 829A7B5 +Route114_Text_LucasDefeat: .string "The mountains are unforgiving…$" -Route114_Text_LucasPostBattle: @ 829A7D4 +Route114_Text_LucasPostBattle: .string "In the winter, mountains turn deadly\n" .string "with blizzards and avalanches.$" -Route114_Text_ShaneIntro: @ 829A818 +Route114_Text_ShaneIntro: .string "Camping's fun! You can fish, roast\n" .string "marshmallows, and tell spooky stories!\p" .string "But the best of all are the POKéMON\n" .string "battles!$" -Route114_Text_ShaneDefeat: @ 829A88F +Route114_Text_ShaneDefeat: .string "Way too strong!$" -Route114_Text_ShanePostBattle: @ 829A89F +Route114_Text_ShanePostBattle: .string "I think it's great that I can go\n" .string "camping with my POKéMON.$" -Route114_Text_NancyIntro: @ 829A8D9 +Route114_Text_NancyIntro: .string "I need to exercise after a meal.\n" .string "Let's have a match!$" -Route114_Text_NancyDefeat: @ 829A90E +Route114_Text_NancyDefeat: .string "Oh, no!$" -Route114_Text_NancyPostBattle: @ 829A916 +Route114_Text_NancyPostBattle: .string "I just had a tasty meal.\n" .string "I'm getting drowsy…$" -Route114_Text_SteveIntro: @ 829A943 +Route114_Text_SteveIntro: .string "Ufufufufufu…\n" .string "Want to battle against my POKéMON?$" -Route114_Text_SteveDefeat: @ 829A973 +Route114_Text_SteveDefeat: .string "M-My POKéMON…$" -Route114_Text_StevePostBattle: @ 829A981 +Route114_Text_StevePostBattle: .string "A big body that's all lumpy and hard,\n" .string "enormous horns, and vicious fangs…\p" .string "Ufufufufu…\n" .string "I wish I had a POKéMON like that…$" -Route114_Text_SteveRegister: @ 829A9F7 +Route114_Text_SteveRegister: .string "Don't forget what you've done to me!\n" .string "I'll make it so you can't forget!$" -Route114_Text_SteveRematchIntro: @ 829AA3E +Route114_Text_SteveRematchIntro: .string "Ufufufufufu…\n" .string "Come on, battle my POKéMON…$" -Route114_Text_SteveRematchDefeat: @ 829AA67 +Route114_Text_SteveRematchDefeat: .string "I feel so lucky getting to see your\n" .string "POKéMON…$" -Route114_Text_StevePostRematch: @ 829AA94 +Route114_Text_StevePostRematch: .string "Ufufufufufu…\p" .string "When I see POKéMON battling, I get all\n" .string "shivery and shaky…$" -Route114_Text_BernieIntro: @ 829AADB +Route114_Text_BernieIntro: .string "If you're lighting a campfire,\n" .string "make sure you have water handy.$" -Route114_Text_BernieDefeat: @ 829AB1A +Route114_Text_BernieDefeat: .string "Thanks for dousing my fire!$" -Route114_Text_BerniePostBattle: @ 829AB36 +Route114_Text_BerniePostBattle: .string "You really do have to be careful with\n" .string "any sort of fire in a forest.\p" .string "Don't ever underestimate the power\n" .string "of fire.$" -Route114_Text_BernieRegister: @ 829ABA6 +Route114_Text_BernieRegister: .string "You set my spirit on fire.\n" .string "Let's register each other!$" -Route114_Text_BernieRematchIntro: @ 829ABDC +Route114_Text_BernieRematchIntro: .string "Have you learned to keep water handy\n" .string "for campfires?$" -Route114_Text_BernieRematchDefeat: @ 829AC10 +Route114_Text_BernieRematchDefeat: .string "I got hosed down before I could\n" .string "flare up, I guess.$" -Route114_Text_BerniePostRematch: @ 829AC43 +Route114_Text_BerniePostRematch: .string "You really do have to be careful with\n" .string "any sort of fire in a forest.\p" .string "Don't ever underestimate the power\n" .string "of fire.$" -Route114_Text_ClaudeIntro: @ 829ACB3 +Route114_Text_ClaudeIntro: .string "If we were fishing, you wouldn't stand\n" .string "a chance against me.\l" .string "So, bring on your POKéMON!$" -Route114_Text_ClaudeDefeat: @ 829AD0A +Route114_Text_ClaudeDefeat: .string "If we were fishing, I would've won…$" -Route114_Text_ClaudePostBattle: @ 829AD2E +Route114_Text_ClaudePostBattle: .string "I think I'll try my luck at landing\n" .string "a big one at METEOR FALLS.\p" .string "There has to be something in there.\n" .string "I just know it.$" -Route114_Text_NolanIntro: @ 829ADA1 +Route114_Text_NolanIntro: .string "I like to fish. But I also like to\n" .string "battle!\p" .string "If anyone challenges me, I'm there,\n" .string "even if I'm fishing.$" -Route114_Text_NolanDefeat: @ 829AE05 +Route114_Text_NolanDefeat: .string "I like to battle, but that doesn't\n" .string "mean I'm good at it…$" -Route114_Text_NolanPostBattle: @ 829AE3D +Route114_Text_NolanPostBattle: .string "This time I'll do it!\p" .string "I always think that, so I can't walk\n" .string "away from fishing or POKéMON.$" -Route114_Text_TyraIntro: @ 829AE96 +Route114_Text_TyraIntro: .string "TYRA: Well, sure.\n" .string "I'm in the mood for it.\l" .string "I'll teach you a little about POKéMON.$" -Route114_Text_TyraDefeat: @ 829AEE7 +Route114_Text_TyraDefeat: .string "TYRA: What an amazing battle style!$" -Route114_Text_TyraPostBattle: @ 829AF0B +Route114_Text_TyraPostBattle: .string "TYRA: I was teaching my junior IVY\n" .string "about POKéMON.$" -Route114_Text_TyraNotEnoughMons: @ 829AF3D +Route114_Text_TyraNotEnoughMons: .string "TYRA: Giggle…\n" .string "If you want to battle with us, just one\l" .string "POKéMON isn't enough!$" -Route114_Text_IvyIntro: @ 829AF89 +Route114_Text_IvyIntro: .string "IVY: Who taught you about POKéMON?$" -Route114_Text_IvyDefeat: @ 829AFAC +Route114_Text_IvyDefeat: .string "IVY: What an amazing battle style!$" -Route114_Text_IvyPostBattle: @ 829AFCF +Route114_Text_IvyPostBattle: .string "IVY: I started training POKéMON\n" .string "because TYRA, my student mentor,\l" .string "taught me!$" -Route114_Text_IvyNotEnoughMons: @ 829B01B +Route114_Text_IvyNotEnoughMons: .string "IVY: Do you only have one POKéMON?\n" .string "I think it must feel lonesome.$" -Route114_Text_KaiIntro: @ 829B05D +Route114_Text_KaiIntro: .string "I landed a big one!\n" .string "A huge one, I tell you!$" -Route114_Text_KaiDefeat: @ 829B089 +Route114_Text_KaiDefeat: .string "What was that about?\n" .string "Did mine lose in size?$" -Route114_Text_KaiPostBattle: @ 829B0B5 +Route114_Text_KaiPostBattle: .string "Okay!\n" .string "I'll just fish me a bigger one!$" -Route114_Text_CharlotteIntro: @ 829B0DB +Route114_Text_CharlotteIntro: .string "Me!\n" .string "I'm not just a pretty face!$" -Route114_Text_CharlotteDefeat: @ 829B0FB +Route114_Text_CharlotteDefeat: .string "That wasn't cute in the least!$" -Route114_Text_CharlottePostBattle: @ 829B11A +Route114_Text_CharlottePostBattle: .string "I don't want a POKéMON that's\n" .string "just cute.\p" .string "I adore cute ones that have a quirk\n" .string "or two!$" -Route114_Text_AngelinaIntro: @ 829B16F +Route114_Text_AngelinaIntro: .string "Have you made your POKéMON evolve\n" .string "very much?$" -Route114_Text_AngelinaDefeat: @ 829B19C +Route114_Text_AngelinaDefeat: .string "Oh, I see.\n" .string "That's good to know.$" -Route114_Text_AngelinaPostBattle: @ 829B1BC +Route114_Text_AngelinaPostBattle: .string "Some POKéMON change so much when\n" .string "they evolve, it's startling!$" -Route115_Text_TimothyIntro: @ 829B1FA +Route115_Text_TimothyIntro: .string "Hm…\n" .string "You seem rather capable…\l" .string "Let me keep you company!$" -Route115_Text_TimothyDefeat: @ 829B230 +Route115_Text_TimothyDefeat: .string "You're much stronger than\n" .string "I'd imagined!$" -Route115_Text_TimothyPostBattle: @ 829B258 +Route115_Text_TimothyPostBattle: .string "There is no such thing as a born genius.\n" .string "It all depends on effort!\l" .string "That is what I believe…$" -Route115_Text_TimothyRegister: @ 829B2B3 +Route115_Text_TimothyRegister: .string "Hmm… A loss this thorough has been\n" .string "a distant memory.\p" .string "If you would allow it, I wish for\n" .string "another opportunity to do battle.$" -Route115_Text_TimothyRematchIntro: @ 829B32C +Route115_Text_TimothyRematchIntro: .string "Hm… As always, your agility speaks\n" .string "for itself.\l" .string "Come, keep me company!$" -Route115_Text_TimothyRematchDefeat: @ 829B372 +Route115_Text_TimothyRematchDefeat: .string "As strong as ever!$" -Route115_Text_TimothyPostRematch: @ 829B385 +Route115_Text_TimothyPostRematch: .string "All it takes is effort!\p" .string "I lost because I haven't put in enough\n" .string "effort!$" -Route115_Text_KoichiIntro: @ 829B3CC +Route115_Text_KoichiIntro: .string "You!\p" .string "My MACHOP!\p" .string "Demand a battle!$" -Route115_Text_KoichiDefeat: @ 829B3ED +Route115_Text_KoichiDefeat: .string "Ouch, ouch, ouch!$" -Route115_Text_KoichiPostBattle: @ 829B3FF +Route115_Text_KoichiPostBattle: .string "My MACHOP crew!\p" .string "So long as they seek power, I will\n" .string "grow strong with them!$" -Route115_Text_NobIntro: @ 829B449 +Route115_Text_NobIntro: .string "My strongest skill is busting bricks\n" .string "with my forehead!$" -Route115_Text_NobDefeat: @ 829B480 +Route115_Text_NobDefeat: .string "Ugwaaaah!\n" .string "My head is busted!$" -Route115_Text_NobPostBattle: @ 829B49D +Route115_Text_NobPostBattle: .string "I've been teaching my POKéMON karate.\p" .string "It looks like they'll get a lot better\n" .string "than me. I'm excited about that.$" -Route115_Text_NobRegister: @ 829B50B +Route115_Text_NobRegister: .string "You impress me! Give me a rematch\n" .string "after I redo my training!$" -Route115_Text_NobRematchIntro: @ 829B547 +Route115_Text_NobRematchIntro: .string "After you beat me, we trained hard to\n" .string "improve our skills.\l" .string "Come on, give us a rematch!$" -Route115_Text_NobRematchDefeat: @ 829B59D +Route115_Text_NobRematchDefeat: .string "Ugwaaah!\n" .string "We lost again!$" -Route115_Text_NobPostRematch: @ 829B5B5 +Route115_Text_NobPostRematch: .string "My POKéMON will grow stronger!\n" .string "I'll redouble my training!$" -Route115_Text_CyndyIntro: @ 829B5EF +Route115_Text_CyndyIntro: .string "This beach is my secret training spot!\n" .string "Don't come butting in!$" -Route115_Text_CyndyDefeat: @ 829B62D +Route115_Text_CyndyDefeat: .string "I haven't trained enough!$" -Route115_Text_CyndyPostBattle: @ 829B647 +Route115_Text_CyndyPostBattle: .string "The sand acts as a cushion to reduce\n" .string "impact and prevent injury.\l" .string "This is the perfect place to train.$" -Route115_Text_CyndyRegister: @ 829B6AB +Route115_Text_CyndyRegister: .string "Okay, fine, you're free to come here.\n" .string "In return, I'd like to battle you again.$" -Route115_Text_CyndyRematchIntro: @ 829B6FA +Route115_Text_CyndyRematchIntro: .string "Okay, let's get this battle on!$" -Route115_Text_CyndyRematchDefeat: @ 829B71A +Route115_Text_CyndyRematchDefeat: .string "I can battle but my POKéMON…$" -Route115_Text_CyndyPostRematch: @ 829B737 +Route115_Text_CyndyPostRematch: .string "Even when I lose, I still get some\n" .string "enjoyment out of it.\l" .string "It must be that I love POKéMON.$" -Route115_Text_HectorIntro: @ 829B78F +Route115_Text_HectorIntro: .string "I have a rare POKéMON!\n" .string "Would you like me to show you?$" -Route115_Text_HectorDefeat: @ 829B7C5 +Route115_Text_HectorDefeat: .string "You…\n" .string "You want my POKéMON, don't you?$" -Route115_Text_HectorPostBattle: @ 829B7EA +Route115_Text_HectorPostBattle: .string "I have this rare POKéMON.\n" .string "It's enough to keep me satisfied.$" -Route115_Text_KyraIntro: @ 829B826 +Route115_Text_KyraIntro: .string "I'll battle while I'm running!\n" .string "Try to keep up with me!$" -Route115_Text_KyraDefeat: @ 829B85D +Route115_Text_KyraDefeat: .string "Gasp, gasp…$" -Route115_Text_KyraPostBattle: @ 829B869 +Route115_Text_KyraPostBattle: .string "I made the mistake of trying to battle\n" .string "while running!\p" .string "I should take a run to calm down…$" -Route115_Text_JaidenIntro: @ 829B8C1 +Route115_Text_JaidenIntro: .string "Take that!\n" .string "Ultra POKéMON ninja attack!$" -Route115_Text_JaidenDefeat: @ 829B8E8 +Route115_Text_JaidenDefeat: .string "Waaah!\n" .string "Our strategy failed!$" -Route115_Text_JaidenPostBattle: @ 829B904 +Route115_Text_JaidenPostBattle: .string "But my POKéMON were ultra,\n" .string "weren't they?$" -Route115_Text_HeleneIntro: @ 829B92D +Route115_Text_HeleneIntro: .string "My POKéMON have black belt-level\n" .string "strength!$" -Route115_Text_HeleneDefeat: @ 829B958 +Route115_Text_HeleneDefeat: .string "This is too humiliating!$" -Route115_Text_HelenePostBattle: @ 829B971 +Route115_Text_HelenePostBattle: .string "I rarely meet anyone who's better\n" .string "than me…\p" .string "I get it now!\n" .string "You're a GYM LEADER, aren't you?$" -Route115_Text_AlixIntro: @ 829B9CB +Route115_Text_AlixIntro: .string "Our eyes met!\n" .string "There's no getting away now!$" -Route115_Text_AlixDefeat: @ 829B9F6 +Route115_Text_AlixDefeat: .string "Gah!\n" .string "Not bad!$" -Route115_Text_AlixPostBattle: @ 829BA04 +Route115_Text_AlixPostBattle: .string "Oh, well.\n" .string "I think I will TELEPORT home.$" -Route115_Text_MarleneIntro: @ 829BA2C +Route115_Text_MarleneIntro: .string "You've disturbed my meditation…\n" .string "You'll be punished for it.$" -Route115_Text_MarleneDefeat: @ 829BA67 +Route115_Text_MarleneDefeat: .string "You've broken my concentration!$" -Route115_Text_MarlenePostBattle: @ 829BA87 +Route115_Text_MarlenePostBattle: .string "I was meditating with my POKéMON.\n" .string "But this place isn't very peaceful…$" -Route116_Text_ClarkIntro: @ 829BACD +Route116_Text_ClarkIntro: .string "If the tunnel doesn't go through, then\n" .string "I'll just go over the top.$" -Route116_Text_ClarkDefeat: @ 829BB0F +Route116_Text_ClarkDefeat: .string "Gasp… Gasp…\n" .string "Losing made me tired…$" -Route116_Text_ClarkPostBattle: @ 829BB31 +Route116_Text_ClarkPostBattle: .string "It's no big deal if there's no tunnel.\n" .string "To a HIKER, mountains are roads!$" -Route116_Text_JoeyIntro: @ 829BB79 +Route116_Text_JoeyIntro: .string "My POKéMON rule!\n" .string "Check them out!$" -Route116_Text_JoeyDefeat: @ 829BB9A +Route116_Text_JoeyDefeat: .string "Ouch! A scrape!\n" .string "I have to put on a bandage!$" -Route116_Text_JoeyPostBattle: @ 829BBC6 +Route116_Text_JoeyPostBattle: .string "Bandages are signs of toughness!\n" .string "I've got another one!$" -Route116_Text_JoseIntro: @ 829BBFD +Route116_Text_JoseIntro: .string "My BUG POKéMON are tough!\n" .string "Let's battle!$" -Route116_Text_JoseDefeat: @ 829BC25 +Route116_Text_JoseDefeat: .string "I lost!\n" .string "I thought I had you!$" -Route116_Text_JosePostBattle: @ 829BC42 +Route116_Text_JosePostBattle: .string "BUG POKéMON evolve quickly.\n" .string "So they get strong quickly, too.$" -Route116_Text_JaniceIntro: @ 829BC7F +Route116_Text_JaniceIntro: .string "Let me teach you how strong my\n" .string "adorable POKéMON is!$" -Route116_Text_JaniceDefeat: @ 829BCB3 +Route116_Text_JaniceDefeat: .string "You're a notch above me…$" -Route116_Text_JanicePostBattle: @ 829BCCC +Route116_Text_JanicePostBattle: .string "POKéMON that possess cuteness and\n" .string "power, that's ideal, I think.$" -Route116_Text_JerryIntro: @ 829BD0C +Route116_Text_JerryIntro: .string "We learn all sorts of things at the\n" .string "TRAINER'S SCHOOL.\p" .string "I want to test things out for real!$" -Route116_Text_JerryDefeat: @ 829BD66 +Route116_Text_JerryDefeat: .string "I slacked off in school…\n" .string "That's why I lost.$" -Route116_Text_JerryPostBattle: @ 829BD92 +Route116_Text_JerryPostBattle: .string "I'll have to redo some courses at\n" .string "the TRAINER'S SCHOOL.\l" .string "If I don't, ROXANNE will be steamed.$" -Route116_Text_JerryRegister1: @ 829BDEF +Route116_Text_JerryRegister1: .string "I learned at the TRAINER'S SCHOOL\n" .string "that a POKéNAV can register TRAINERS.\p" .string "I don't really get what that means,\n" .string "so can I just try it?$" -Route116_Text_JerryRegister2: @ 829BE71 +Route116_Text_JerryRegister2: .string "I learned at the TRAINER'S SCHOOL\n" .string "that a POKéNAV can register TRAINERS.\p" .string "I don't really get what that means,\n" .string "so can I just try it?$" -Route116_Text_JerryRematchIntro: @ 829BEF3 +Route116_Text_JerryRematchIntro: .string "I've been studying seriously at the\n" .string "TRAINER'S SCHOOL.\l" .string "I won't lose like I did last time.$" -Route116_Text_JerryRematchDefeat: @ 829BF4C +Route116_Text_JerryRematchDefeat: .string "Hunh?\n" .string "I studied diligently.$" -Route116_Text_JerryPostRematch: @ 829BF68 +Route116_Text_JerryPostRematch: .string "I'll have to redo some courses at\n" .string "the TRAINER'S SCHOOL.\l" .string "If I don't, ROXANNE will be steamed.$" -Route116_Text_KarenIntro: @ 829BFC5 +Route116_Text_KarenIntro: .string "I study at school, and I study on\n" .string "the way home, too!$" -Route116_Text_KarenDefeat: @ 829BFFA +Route116_Text_KarenDefeat: .string "I'm in shock--I lost?$" -Route116_Text_KarenPostBattle: @ 829C010 +Route116_Text_KarenPostBattle: .string "Awww, I'll never become an elegant\n" .string "TRAINER like ROXANNE this way!$" -Route116_Text_KarenRegister1: @ 829C052 +Route116_Text_KarenRegister1: .string "Oh, wow! Isn't that a POKéNAV?\n" .string "I have one, too! Please register me!$" -Route116_Text_KarenRegister2: @ 829C096 +Route116_Text_KarenRegister2: .string "Oh, wow! Isn't that a POKéNAV?\n" .string "I have one, too! Please register me!$" -Route116_Text_KarenRematchIntro: @ 829C0DA +Route116_Text_KarenRematchIntro: .string "I studied a whole lot since I saw you.\n" .string "You must see my achievements!$" -Route116_Text_KarenRematchDefeat: @ 829C11F +Route116_Text_KarenRematchDefeat: .string "I'm in shock.\n" .string "I lost again?$" -Route116_Text_KarenPostRematch: @ 829C13B +Route116_Text_KarenPostRematch: .string "You've beaten ROXANNE?\n" .string "I can't beat you, then. Not yet.$" -Route116_Text_SarahIntro: @ 829C173 +Route116_Text_SarahIntro: .string "Just so you know, I've never once been\n" .string "bested by anyone at anything.$" -Route116_Text_SarahDefeat: @ 829C1B8 +Route116_Text_SarahDefeat: .string "Oh, my goodness.\n" .string "This is a new experience for me.$" -Route116_Text_SarahPostBattle: @ 829C1EA +Route116_Text_SarahPostBattle: .string "My life of luxury affords me all that\n" .string "I could possibly desire.\p" .string "However, when it comes to POKéMON,\n" .string "my wealth has no meaning.$" -Route116_Text_DawsonIntro: @ 829C266 +Route116_Text_DawsonIntro: .string "When you lay your eyes on my POKéMON's\n" .string "gorgeous fur, their beauty will render\l" .string "you helpless!$" -Route116_Text_DawsonDefeat: @ 829C2C2 +Route116_Text_DawsonDefeat: .string "Oh, baby, say it isn't so!$" -Route116_Text_DawsonPostBattle: @ 829C2DD +Route116_Text_DawsonPostBattle: .string "Oh, no, no, no!\n" .string "You've mussed up my POKéMON's fur!\l" .string "You've ruined my hairdo, too!\l" .string "I'll have to call my stylist now!$" -Route116_Text_DevanIntro: @ 829C350 +Route116_Text_DevanIntro: .string "We'll rock you hard!$" -Route116_Text_DevanDefeat: @ 829C365 +Route116_Text_DevanDefeat: .string "Aiyiyi!\n" .string "No contest at all!$" -Route116_Text_DevanPostBattle: @ 829C380 +Route116_Text_DevanPostBattle: .string "I should try different POKéMON\n" .string "types, that's what I ought to do.$" -Route116_Text_JohnsonIntro: @ 829C3C1 +Route116_Text_JohnsonIntro: .string "It's a dead end up here.\n" .string "I'm bored, so can we battle?$" -Route116_Text_JohnsonDefeat: @ 829C3F7 +Route116_Text_JohnsonDefeat: .string "That was fun even though I lost.$" -Route116_Text_JohnsonPostBattle: @ 829C418 +Route116_Text_JohnsonPostBattle: .string "Want to stay here and keep\n" .string "me company?$" -Route117_Text_IsaacIntro: @ 829C43F +Route117_Text_IsaacIntro: .string "Listen, could I get you to battle\n" .string "the POKéMON I'm raising?$" -Route117_Text_IsaacDefeat: @ 829C47A +Route117_Text_IsaacDefeat: .string "You've raised yours superbly…$" -Route117_Text_IsaacPostBattle: @ 829C498 +Route117_Text_IsaacPostBattle: .string "POKéMON isn't all about power.\p" .string "Polishing a unique aspect of one's\n" .string "character is another way of enjoying\l" .string "POKéMON.$" -Route117_Text_IsaacRegister: @ 829C508 +Route117_Text_IsaacRegister: .string "I'm going to redouble my training.\n" .string "Would you come look in on us?$" -Route117_Text_IsaacRematchIntro: @ 829C549 +Route117_Text_IsaacRematchIntro: .string "The POKéMON I've been raising are\n" .string "looking good, just like before.$" -Route117_Text_IsaacRematchDefeat: @ 829C58B +Route117_Text_IsaacRematchDefeat: .string "You know how to raise them properly.\n" .string "You might have DAY CARE skills…$" -Route117_Text_IsaacPostRematch: @ 829C5D0 +Route117_Text_IsaacPostRematch: .string "Your POKéMON are growing good!\n" .string "You should enter them in CONTESTS.$" -Route117_Text_LydiaIntro: @ 829C612 +Route117_Text_LydiaIntro: .string "Please, allow me to evaluate if you\n" .string "have raised your POKéMON properly.$" -Route117_Text_LydiaDefeat: @ 829C659 +Route117_Text_LydiaDefeat: .string "Yes, they are growing properly.$" -Route117_Text_LydiaPostBattle: @ 829C679 +Route117_Text_LydiaPostBattle: .string "Try raising POKéMON with more\n" .string "attention to their character traits.$" -Route117_Text_LydiaRegister: @ 829C6BC +Route117_Text_LydiaRegister: .string "I'm glad I met a superb TRAINER in you.\n" .string "I hope to see you again.$" -Route117_Text_LydiaRematchIntro: @ 829C6FD +Route117_Text_LydiaRematchIntro: .string "Allow me to reevaluate if you have\n" .string "raised your POKéMON properly.$" -Route117_Text_LydiaRematchDefeat: @ 829C73E +Route117_Text_LydiaRematchDefeat: .string "They are growing admirably.$" -Route117_Text_LydiaPostRematch: @ 829C75A +Route117_Text_LydiaPostRematch: .string "POKéMON seem to like different kinds\n" .string "of {POKEBLOCK}S, depending on their nature.$" -Route117_Text_DylanIntro: @ 829C7A5 +Route117_Text_DylanIntro: .string "I'm in the middle of a triathlon, but,\n" .string "whatever, let's have a battle!$" -Route117_Text_DylanDefeat: @ 829C7EB +Route117_Text_DylanDefeat: .string "I ran out of energy!$" -Route117_Text_DylanPostBattle: @ 829C800 +Route117_Text_DylanPostBattle: .string "I may have blown it…\p" .string "I might have dropped to last during\n" .string "that battle…$" -Route117_Text_DylanRegister: @ 829C846 +Route117_Text_DylanRegister: .string "POKéMON have to be strong, too?\n" .string "I'd like you to train me!$" -Route117_Text_DylanRematchIntro: @ 829C880 +Route117_Text_DylanRematchIntro: .string "I'm smack in the middle of a triathlon,\n" .string "but I'm comfortably ahead.\l" .string "Let's make this a quick battle!$" -Route117_Text_DylanRematchDefeat: @ 829C8E3 +Route117_Text_DylanRematchDefeat: .string "I ran out of energy again!$" -Route117_Text_DylanPostRematch: @ 829C8FE +Route117_Text_DylanPostRematch: .string "I was tops in swimming and cycling,\n" .string "but I'm not quite that confident with\l" .string "POKéMON yet.$" -Route117_Text_MariaIntro: @ 829C955 +Route117_Text_MariaIntro: .string "I do my triathlon training with POKéMON,\n" .string "so I'm pretty confident about my speed.$" -Route117_Text_MariaDefeat: @ 829C9A6 +Route117_Text_MariaDefeat: .string "I need to get more practices in,\n" .string "I guess.$" -Route117_Text_MariaPostBattle: @ 829C9D0 +Route117_Text_MariaPostBattle: .string "Training is meaningful only if you\n" .string "keep it up regularly.\p" .string "Okay! I'll resume my training!\n" .string "Tomorrow!$" -Route117_Text_MariaRegister: @ 829CA32 +Route117_Text_MariaRegister: .string "You appear to be training properly…\n" .string "If you'd like, I'll battle you later!$" -Route117_Text_MariaRematchIntro: @ 829CA7C +Route117_Text_MariaRematchIntro: .string "Are you keeping up with your training?\n" .string "I sure am!\l" .string "Let me show you the evidence!$" -Route117_Text_MariaRematchDefeat: @ 829CACC +Route117_Text_MariaRematchDefeat: .string "I need to get more practices in,\n" .string "I guess.$" -Route117_Text_MariaPostRematch: @ 829CAF6 +Route117_Text_MariaPostRematch: .string "I'll resume training tomorrow.\n" .string "Let's battle again sometime!$" -Route117_Text_DerekIntro: @ 829CB32 +Route117_Text_DerekIntro: .string "Once a BUG CATCHER!\n" .string "And now a BUG MANIAC!\p" .string "But my love for POKéMON remains\n" .string "unchanged!$" -Route117_Text_DerekDefeat: @ 829CB87 +Route117_Text_DerekDefeat: .string "My ineptitude also remains\n" .string "unchanged…$" -Route117_Text_DerekPostBattle: @ 829CBAD +Route117_Text_DerekPostBattle: .string "All I did was follow my heart, and now\n" .string "they call me a BUG MANIAC…\p" .string "Still, I am an expert on BUG POKéMON,\n" .string "so it's only natural that they call me\l" .string "a BUG MANIAC.$" -Route117_Text_AnnaIntro: @ 829CC4A +Route117_Text_AnnaIntro: .string "ANNA: I'm with my pretty junior student\n" .string "partner. I have to do good!$" -Route117_Text_AnnaDefeat: @ 829CC8E +Route117_Text_AnnaDefeat: .string "ANNA: I'm with my pretty junior student\n" .string "partner! Let me win!$" -Route117_Text_AnnaPostBattle: @ 829CCCB +Route117_Text_AnnaPostBattle: .string "ANNA: Your POKéMON have some good\n" .string "combinations.\p" .string "I'd say you're second only to us!$" -Route117_Text_AnnaAndMegRegister: @ 829CD1D +Route117_Text_AnnaAndMegRegister: .string "ANNA: We can't take this lying down!\n" .string "You will come back, won't you?$" -Route117_Text_AnnaNotEnoughMons: @ 829CD61 +Route117_Text_AnnaNotEnoughMons: .string "ANNA: If you want to battle us,\n" .string "bring two POKéMON with you.$" -Route117_Text_MegIntro: @ 829CD9D +Route117_Text_MegIntro: .string "MEG: I'm going to tag up with my super\n" .string "senior student partner and beat you!$" -Route117_Text_MegDefeat: @ 829CDE9 +Route117_Text_MegDefeat: .string "MEG: Oh, no!\n" .string "I'm sorry, ANNA! I let you down…$" -Route117_Text_MegPostBattle: @ 829CE17 +Route117_Text_MegPostBattle: .string "MEG: I dragged ANNA down…\n" .string "If I didn't, she would have won!$" -Route117_Text_MegNotEnoughMons: @ 829CE52 +Route117_Text_MegNotEnoughMons: .string "MEG: Do you only have one POKéMON?\n" .string "We can't battle with you, then.\p" .string "We want to have a 2-on-2 battle.$" -Route117_Text_AnnaRematchIntro: @ 829CEB6 +Route117_Text_AnnaRematchIntro: .string "ANNA: I can't keep losing in front of\n" .string "my junior partner, right?$" -Route117_Text_AnnaRematchDefeat: @ 829CEF6 +Route117_Text_AnnaRematchDefeat: .string "ANNA: I couldn't get into the groove.$" -Route117_Text_AnnaPostRematch: @ 829CF1C +Route117_Text_AnnaPostRematch: .string "ANNA: Your POKéMON have some good\n" .string "combinations.\p" .string "I'd say you're second only to us!$" -Route117_Text_AnnaRematchNotEnoughMons: @ 829CF6E +Route117_Text_AnnaRematchNotEnoughMons: .string "ANNA: If you want to battle us,\n" .string "bring two POKéMON with you.$" -Route117_Text_MegRematchIntro: @ 829CFAA +Route117_Text_MegRematchIntro: .string "MEG: I'm going to tag up with my\n" .string "senior partner and win this time!$" -Route117_Text_MegRematchDefeat: @ 829CFED +Route117_Text_MegRematchDefeat: .string "MEG: Too strong!$" -Route117_Text_MegPostRematch: @ 829CFFE +Route117_Text_MegPostRematch: .string "MEG: I battled together with my\n" .string "senior partner, but we lost…\p" .string "That's so discouraging…$" -Route117_Text_MegRematchNotEnoughMons: @ 829D053 +Route117_Text_MegRematchNotEnoughMons: .string "MEG: Do you only have one POKéMON?\n" .string "We can't battle with you, then.\p" .string "We want to have a 2-on-2 battle.$" -Route117_Text_MelinaIntro: @ 829D0B7 +Route117_Text_MelinaIntro: .string "Isn't it nice? To battle while looking\n" .string "at pretty flowers?$" -Route117_Text_MelinaDefeat: @ 829D0F1 +Route117_Text_MelinaDefeat: .string "Oh, that's quite impressive!$" -Route117_Text_MelinaPostBattle: @ 829D10E +Route117_Text_MelinaPostBattle: .string "It feels wonderful to go for a jog\n" .string "while looking at flowers.$" -Route117_Text_BrandiIntro: @ 829D14B +Route117_Text_BrandiIntro: .string "Let me demonstrate the power\n" .string "hidden within a PSYCHIC POKéMON!$" -Route117_Text_BrandiDefeat: @ 829D189 +Route117_Text_BrandiDefeat: .string "Astonishing!$" -Route117_Text_BrandiPostBattle: @ 829D196 +Route117_Text_BrandiPostBattle: .string "PSYCHIC POKéMON are complex.\n" .string "You should try catching some.$" -Route117_Text_AishaIntro: @ 829D1D1 +Route117_Text_AishaIntro: .string "Concentrate on getting the win.\n" .string "That's how I battle!$" -Route117_Text_AishaDefeat: @ 829D206 +Route117_Text_AishaDefeat: .string "I don't waste any time being angry\n" .string "over a loss--I would rather train.$" -Route117_Text_AishaPostBattle: @ 829D24C +Route117_Text_AishaPostBattle: .string "I think that if you worry about losing,\n" .string "you're more likely to lose.$" -Route118_Text_RoseIntro: @ 829D290 +Route118_Text_RoseIntro: .string "The aroma of flowers has a magical\n" .string "power. It cleanses us body and soul.$" -Route118_Text_RoseDefeat: @ 829D2D8 +Route118_Text_RoseDefeat: .string "Oh, dear me.\n" .string "I seem to have lost.$" -Route118_Text_RosePostBattle: @ 829D2FA +Route118_Text_RosePostBattle: .string "Flowers, POKéMON…\n" .string "I love whatever smells nice.\p" .string "Stinky things…\n" .string "I'll pass.$" -Route118_Text_RoseRegister: @ 829D343 +Route118_Text_RoseRegister: .string "Sniff… That odor--it's a POKéNAV!\n" .string "We must register each other!$" -Route118_Text_RoseRematchIntro: @ 829D382 +Route118_Text_RoseRematchIntro: .string "Were you drawn here by the sweet\n" .string "aroma?$" -Route118_Text_RoseRematchDefeat: @ 829D3AA +Route118_Text_RoseRematchDefeat: .string "The power of aroma…\n" .string "It didn't seem to do much.$" -Route118_Text_RosePostRematch: @ 829D3D9 +Route118_Text_RosePostRematch: .string "If you use a sweet aroma properly,\n" .string "POKéMON will be attracted by it.$" -Route118_Text_PerryIntro: @ 829D41D +Route118_Text_PerryIntro: .string "BIRD POKéMON that FLY elegantly in\n" .string "the sky… They're the best!$" -Route118_Text_PerryDefeat: @ 829D45B +Route118_Text_PerryDefeat: .string "Urgh…\n" .string "I crashed…$" -Route118_Text_PerryPostBattle: @ 829D46C +Route118_Text_PerryPostBattle: .string "You've got great POKéMON.\n" .string "I'll have to train mine better.$" -Route118_Text_ChesterIntro: @ 829D4A6 +Route118_Text_ChesterIntro: .string "Take flight!\n" .string "My BIRD POKéMON!$" -Route118_Text_ChesterDefeat: @ 829D4C4 +Route118_Text_ChesterDefeat: .string "They did take flight…$" -Route118_Text_ChesterPostBattle: @ 829D4DA +Route118_Text_ChesterPostBattle: .string "If they'd get stronger, they'd be able\n" .string "to fly more freely…$" -Route118_Text_BarnyIntro: @ 829D515 +Route118_Text_BarnyIntro: .string "I'm a FISHERMAN, but also a TRAINER.\n" .string "I'm raising the POKéMON I caught.$" -Route118_Text_BarnyDefeat: @ 829D55C +Route118_Text_BarnyDefeat: .string "I thought I was doing okay in my\n" .string "training…$" -Route118_Text_BarnyPostBattle: @ 829D587 +Route118_Text_BarnyPostBattle: .string "I couldn't win by training POKéMON\n" .string "while I fished…\p" .string "Was I doing things in half measures?$" -Route118_Text_WadeIntro: @ 829D5DF +Route118_Text_WadeIntro: .string "For FISHERMEN, equipment is the key.\p" .string "But for TRAINERS, the key ingredients\n" .string "are POKéMON and heart, of course!$" -Route118_Text_WadeDefeat: @ 829D64C +Route118_Text_WadeDefeat: .string "I was beaten in heart?$" -Route118_Text_WadePostBattle: @ 829D663 +Route118_Text_WadePostBattle: .string "Come to think of it, fishing is a battle\n" .string "between a FISHERMAN and a POKéMON.$" -Route118_Text_DaltonIntro: @ 829D6AF +Route118_Text_DaltonIntro: .string "Let my melody rock your soul!$" -Route118_Text_DaltonDefeat: @ 829D6CD +Route118_Text_DaltonDefeat: .string "La-lalala…$" -Route118_Text_DaltonPostBattle: @ 829D6D8 +Route118_Text_DaltonPostBattle: .string "An electric guitar doesn't always\n" .string "have to be noisy…\p" .string "It can be strummed to squeeze out\n" .string "this heart-stirring melody…$" -Route118_Text_DaltonRegister: @ 829D74A +Route118_Text_DaltonRegister: .string "When I compose better melodies,\n" .string "you have to come listen, okay?$" -Route118_Text_DaltonRematchIntro: @ 829D789 +Route118_Text_DaltonRematchIntro: .string "A melody from my POKéMON and me…\n" .string "Let us deliver it to your soul.$" -Route118_Text_DaltonRematchDefeat: @ 829D7CA +Route118_Text_DaltonRematchDefeat: .string "La-lalala…$" -Route118_Text_DaltonPostRematch: @ 829D7D5 +Route118_Text_DaltonPostRematch: .string "When I play, my emotions should reach\n" .string "you through my electric guitar…$" -Route118_Text_DeandreIntro: @ 829D81B +Route118_Text_DeandreIntro: .string "Go, go, go!\n" .string "POKéMON 1, 2, and 3!$" -Route118_Text_DeandreDefeat: @ 829D83C +Route118_Text_DeandreDefeat: .string "Come in, POKéMON! Are you okay?\n" .string "POKéMON 1, 2, and 3?!$" -Route118_Text_DeandrePostBattle: @ 829D872 +Route118_Text_DeandrePostBattle: .string "Isn't it cool that I have a POKéMON\n" .string "battle team?\p" .string "You can copy me--I don't mind!$" -Route119_Text_BrentIntro: @ 829D8C2 +Route119_Text_BrentIntro: .string "We're the MIMIC CIRCLE!\n" .string "We MIMIC what you do!$" -Route119_Text_BrentDefeat: @ 829D8F0 +Route119_Text_BrentDefeat: .string "Whoopsie!\n" .string "I lost!$" -Route119_Text_BrentPostBattle: @ 829D902 +Route119_Text_BrentPostBattle: .string "What's so good about mimicry?\p" .string "Fufufu…\n" .string "You'll never understand…$" -Route119_Text_DonaldIntro: @ 829D941 +Route119_Text_DonaldIntro: .string "So, we finally meet!\n" .string "My BUG POKéMON will keep you company!$" -Route119_Text_DonaldDefeat: @ 829D97C +Route119_Text_DonaldDefeat: .string "I wish we'd never met…$" -Route119_Text_DonaldPostBattle: @ 829D993 +Route119_Text_DonaldPostBattle: .string "I want to MIMIC you some more.\n" .string "Can you hurry up and move?$" -Route119_Text_TaylorIntro: @ 829D9CD +Route119_Text_TaylorIntro: .string "If you step forward, we step forward.\p" .string "If you turn right, we turn, too…$" -Route119_Text_TaylorDefeat: @ 829DA14 +Route119_Text_TaylorDefeat: .string "But if you win, I lose…$" -Route119_Text_TaylorPostBattle: @ 829DA2C +Route119_Text_TaylorPostBattle: .string "I can't MIMIC you winning the match.\n" .string "That's just impossible…\l" .string "It's burning me up…$" -Route119_Text_DougIntro: @ 829DA7D +Route119_Text_DougIntro: .string "Yep, you've finally caught me!\n" .string "Or were you trying to avoid me?$" -Route119_Text_DougDefeat: @ 829DABC +Route119_Text_DougDefeat: .string "Whoop, that was a great match!$" -Route119_Text_DougPostBattle: @ 829DADB +Route119_Text_DougPostBattle: .string "We're the MIMIC CIRCLE!\n" .string "I hope you enjoyed our performance.$" -Route119_Text_GregIntro: @ 829DB17 +Route119_Text_GregIntro: .string "You don't know who I am, do you?\p" .string "But, I also don't know you.\n" .string "So, we'll battle!$" -Route119_Text_GregDefeat: @ 829DB66 +Route119_Text_GregDefeat: .string "You're pretty strong!$" -Route119_Text_GregPostBattle: @ 829DB7C +Route119_Text_GregPostBattle: .string "Until you go away somewhere, we'll\n" .string "keep on mimicking your every move.$" -Route119_Text_KentIntro: @ 829DBC2 +Route119_Text_KentIntro: .string "The MIMIC CIRCLE was formed by people\n" .string "who like to MIMIC.\p" .string "A battle starts the instant we meet!$" -Route119_Text_KentDefeat: @ 829DC20 +Route119_Text_KentDefeat: .string "I give up!$" -Route119_Text_KentPostBattle: @ 829DC2B +Route119_Text_KentPostBattle: .string "Won't you join our MIMIC CIRCLE?$" -Route119_Text_JacksonIntro: @ 829DC4C +Route119_Text_JacksonIntro: .string "Who has the knowledge and\n" .string "the technique for survival?\p" .string "POKéMON RANGERS, that's who!$" -Route119_Text_JacksonDefeat: @ 829DC9F +Route119_Text_JacksonDefeat: .string "I didn't have enough POKéMON\n" .string "know-how…$" -Route119_Text_JacksonPostBattle: @ 829DCC6 +Route119_Text_JacksonPostBattle: .string "To break away from civilization and\n" .string "awaken the wild spirit within!\p" .string "That's our vision.$" -Route119_Text_JacksonRegister: @ 829DD1C +Route119_Text_JacksonRegister: .string "I hope you'll give me a rematch without\n" .string "mocking my lack of knowledge.$" -Route119_Text_JacksonRematchIntro: @ 829DD62 +Route119_Text_JacksonRematchIntro: .string "I'm going to regain my wild spirit by\n" .string "being together with POKéMON.$" -Route119_Text_JacksonRematchDefeat: @ 829DDA5 +Route119_Text_JacksonRematchDefeat: .string "You've remained strong!$" -Route119_Text_JacksonPostRematch: @ 829DDBD +Route119_Text_JacksonPostRematch: .string "Believe in your POKéMON.\n" .string "Believe in yourself.\p" .string "The road will reveal itself to you.$" -Route119_Text_CatherineIntro: @ 829DE0F +Route119_Text_CatherineIntro: .string "Oh? Look at you.\p" .string "For someone on an adventure,\n" .string "you're traveling awfully light.$" -Route119_Text_CatherineDefeat: @ 829DE5D +Route119_Text_CatherineDefeat: .string "Accidents happen when you're not\n" .string "prepared!$" -Route119_Text_CatherinePostBattle: @ 829DE88 +Route119_Text_CatherinePostBattle: .string "You're traveling light but you have\n" .string "everything you need.\p" .string "You're on top of things mentally and\n" .string "physically, too.$" -Route119_Text_CatherineRegister: @ 829DEF7 +Route119_Text_CatherineRegister: .string "Do you have a POKéNAV?\n" .string "It's a must-have tool for any TRAINER.\p" .string "Oh, you do have one!\n" .string "Let's register each other, then!$" -Route119_Text_CatherineRematchIntro: @ 829DF6B +Route119_Text_CatherineRematchIntro: .string "How's your journey with POKéMON\n" .string "going?$" -Route119_Text_CatherineRematchDefeat: @ 829DF92 +Route119_Text_CatherineRematchDefeat: .string "I'm still missing something…$" -Route119_Text_CatherinePostRematch: @ 829DFAF +Route119_Text_CatherinePostRematch: .string "In the same way that you, as a TRAINER,\n" .string "rely on your POKéMON, your POKéMON\l" .string "rely on you.$" -Route119_Text_HughIntro: @ 829E007 +Route119_Text_HughIntro: .string "The vast sky holds untold promise!\p" .string "Nothing can compare to the sheer\n" .string "exhilaration of flight!$" -Route119_Text_HughDefeat: @ 829E063 +Route119_Text_HughDefeat: .string "Down and out!$" -Route119_Text_HughPostBattle: @ 829E071 +Route119_Text_HughPostBattle: .string "My BIRD POKéMON made my dreams of\n" .string "flying come true!$" -Route119_Text_PhilIntro: @ 829E0A5 +Route119_Text_PhilIntro: .string "I'll show you the true potential of me\n" .string "and my BIRD POKéMON!$" -Route119_Text_PhilDefeat: @ 829E0E1 +Route119_Text_PhilDefeat: .string "We lacked potential…$" -Route119_Text_PhilPostBattle: @ 829E0F6 +Route119_Text_PhilPostBattle: .string "Ever since I was a little kid, I always\n" .string "admired BIRD POKéMON…$" -Route119_Text_YasuIntro: @ 829E134 +Route119_Text_YasuIntro: .string "To lurk in shadows, and live in\n" .string "darkness… That is my destiny.\p" .string "I emerge to challenge you!$" -Route119_Text_YasuDefeat: @ 829E18D +Route119_Text_YasuDefeat: .string "I admit defeat!$" -Route119_Text_YasuPostBattle: @ 829E19D +Route119_Text_YasuPostBattle: .string "Those defeated in battle withdraw\n" .string "quietly back into the shadows.\l" .string "That, too, is destiny…$" -Route119_Text_TakashiIntro: @ 829E1F5 +Route119_Text_TakashiIntro: .string "If you're not on your guard,\n" .string "you're in for some pain!$" -Route119_Text_TakashiDefeat: @ 829E22B +Route119_Text_TakashiDefeat: .string "You're surprisingly good!$" -Route119_Text_TakashiPostBattle: @ 829E245 +Route119_Text_TakashiPostBattle: .string "My surprise attack ended in\n" .string "failure…$" -Route119_Text_HideoIntro: @ 829E26A +Route119_Text_HideoIntro: .string "To hide a tree, use a forest!$" -Route119_Text_HideoDefeat: @ 829E288 +Route119_Text_HideoDefeat: .string "I bow to your superiority.$" -Route119_Text_HideoPostBattle: @ 829E2A3 +Route119_Text_HideoPostBattle: .string "To hide a tree, use a forest!\n" .string "To hide a POKéMON, use a POKéMON!\p" .string "There is no deep, hidden meaning\n" .string "to that.$" -Route119_Text_ChrisIntro: @ 829E30D +Route119_Text_ChrisIntro: .string "You spoke to me…\n" .string "So you want to challenge me!\p" .string "Sure! I'll try out the POKéMON I caught\n" .string "while SURFING!$" -Route119_Text_ChrisDefeat: @ 829E372 +Route119_Text_ChrisDefeat: .string "I don't have a clue about what it\n" .string "takes to win.$" -Route119_Text_ChrisPostBattle: @ 829E3A2 +Route119_Text_ChrisPostBattle: .string "Go for a SURF on my POKéMON…\p" .string "Then fish off its back…\p" .string "It's an indescribably luxuriant moment!$" -Route119_Text_FabianIntro: @ 829E3FF +Route119_Text_FabianIntro: .string "Hit me with a power chord!\n" .string "Victory is mine!\l" .string "It's our time to shine, whoa, yeah!$" -Route119_Text_FabianDefeat: @ 829E44F +Route119_Text_FabianDefeat: .string "You showed me who's the boss!\n" .string "We'll have to take the loss, oh, no!$" -Route119_Text_FabianPostBattle: @ 829E492 +Route119_Text_FabianPostBattle: .string "Hit me with another power chord!\n" .string "Leave me alone!\l" .string "Your win you have to atone!$" -Route119_Text_DaytonIntro: @ 829E4DF +Route119_Text_DaytonIntro: .string "Hohoho!\n" .string "I like kid TRAINERS!\l" .string "Let's have a good one!$" -Route119_Text_DaytonDefeat: @ 829E513 +Route119_Text_DaytonDefeat: .string "You're pretty amazing!\n" .string "Hohoho!$" -Route119_Text_DaytonPostBattle: @ 829E532 +Route119_Text_DaytonPostBattle: .string "Hohoho!\n" .string "I'll try emulating the pep of kid\l" .string "TRAINERS like you!$" -Route119_Text_RachelIntro: @ 829E56F +Route119_Text_RachelIntro: .string "Wherever and whenever I may be,\n" .string "I always have my parasol in hand.$" -Route119_Text_RachelDefeat: @ 829E5B1 +Route119_Text_RachelDefeat: .string "Oh, but…\n" .string "That's not fair.$" -Route119_Text_RachelPostBattle: @ 829E5CB +Route119_Text_RachelPostBattle: .string "You're asking if my parasol is heavy?\n" .string "Your BAG is filled with more junk than\l" .string "I ever carry around.$" -Route120_Text_ColinIntro: @ 829E62D +Route120_Text_ColinIntro: .string "Do you have any moves that can strike\n" .string "a flying POKéMON?$" -Route120_Text_ColinDefeat: @ 829E665 +Route120_Text_ColinDefeat: .string "You soared above me!$" -Route120_Text_ColinPostBattle: @ 829E67A +Route120_Text_ColinPostBattle: .string "The move FLY is convenient,\n" .string "don't you think?\p" .string "While the POKéMON is flying,\n" .string "almost no moves can strike it.$" -Route120_Text_RobertIntro: @ 829E6E3 +Route120_Text_RobertIntro: .string "My POKéMON is strong!\n" .string "How about yours?$" -Route120_Text_RobertDefeat: @ 829E70A +Route120_Text_RobertDefeat: .string "Your POKéMON were stronger…$" -Route120_Text_RobertPostBattle: @ 829E726 +Route120_Text_RobertPostBattle: .string "A POKéMON that grows steadily is one\n" .string "you can count on.$" -Route120_Text_RobertRegister: @ 829E75D +Route120_Text_RobertRegister: .string "You can be counted on to get better.\n" .string "I'd like to register you in my POKéNAV!$" -Route120_Text_RobertRematchIntro: @ 829E7AA +Route120_Text_RobertRematchIntro: .string "A POKéMON that grows steadily is one\n" .string "you can count on.$" -Route120_Text_RobertRematchDefeat: @ 829E7E1 +Route120_Text_RobertRematchDefeat: .string "Your POKéMON are seriously strong.$" -Route120_Text_RobertPostRematch: @ 829E804 +Route120_Text_RobertPostRematch: .string "My POKéMON are growing stronger.\n" .string "I have to grow stronger, too.$" -Route120_Text_LorenzoIntro: @ 829E843 +Route120_Text_LorenzoIntro: .string "I'll check your POKéMON and see if\n" .string "they're fit for the outdoors.$" -Route120_Text_LorenzoDefeat: @ 829E884 +Route120_Text_LorenzoDefeat: .string "With POKéMON that strong, you're in\n" .string "no danger of needing rescue!$" -Route120_Text_LorenzoPostBattle: @ 829E8C5 +Route120_Text_LorenzoPostBattle: .string "To travel wherever your heart desires\n" .string "with POKéMON…\l" .string "That's the joy of being a TRAINER.$" -Route120_Text_JennaIntro: @ 829E91C +Route120_Text_JennaIntro: .string "How's your physical fitness?\n" .string "If you're not fit, you could have a\l" .string "rough time in critical situations.$" -Route120_Text_JennaDefeat: @ 829E980 +Route120_Text_JennaDefeat: .string "I'm totally fit, but…$" -Route120_Text_JennaPostBattle: @ 829E996 +Route120_Text_JennaPostBattle: .string "Fitness training is in my routine.\n" .string "I always run with my POKéMON.$" -Route120_Text_JeffreyIntro: @ 829E9D7 +Route120_Text_JeffreyIntro: .string "… … … … … …\n" .string "… … … … … …\l" .string "Want to battle?$" -Route120_Text_JeffreyDefeat: @ 829E9FF +Route120_Text_JeffreyDefeat: .string "Lost it…$" -Route120_Text_JeffreyPostBattle: @ 829EA08 +Route120_Text_JeffreyPostBattle: .string "… … … … … …\n" .string "… … … … … …\l" .string "I'll try harder…$" -Route120_Text_JeffreyRegister: @ 829EA31 +Route120_Text_JeffreyRegister: .string "… … … … … …\n" .string "… … … … … …\l" .string "Do you have a POKéNAV…?$" -Route120_Text_JeffreyRematchIntro: @ 829EA61 +Route120_Text_JeffreyRematchIntro: .string "… … … … … …\n" .string "… … … … … …\l" .string "Want to battle again?$" -Route120_Text_JeffreyRematchDefeat: @ 829EA8F +Route120_Text_JeffreyRematchDefeat: .string "… … … … … …\n" .string "I lost again…$" -Route120_Text_JeffreyPostRematch: @ 829EAA9 +Route120_Text_JeffreyPostRematch: .string "… … … … … …\n" .string "… … … … … …\l" .string "I'll try harder…\l" .string "For my precious BUG POKéMON…$" -Route120_Text_JenniferIntro: @ 829EAEF +Route120_Text_JenniferIntro: .string "POKéMON have many special abilities.\n" .string "If you want to become a first-class\l" .string "TRAINER, learn about them.$" -Route120_Text_JenniferDefeat: @ 829EB53 +Route120_Text_JenniferDefeat: .string "You're obviously thinking.$" -Route120_Text_JenniferPostBattle: @ 829EB6E +Route120_Text_JenniferPostBattle: .string "The special abilities of POKéMON\n" .string "will make battle styles change.$" -Route120_Text_ChipIntro: @ 829EBAF +Route120_Text_ChipIntro: .string "Who might you be?\p" .string "Are you perhaps searching for ancient\n" .string "ruins that are rumored to possibly\l" .string "exist according to legend?$" -Route120_Text_ChipDefeat: @ 829EC25 +Route120_Text_ChipDefeat: .string "What a disgraceful setback…$" -Route120_Text_ChipPostBattle: @ 829EC41 +Route120_Text_ChipPostBattle: .string "That giant rock… I would like to\n" .string "believe it may indeed contain ancient\l" .string "ruins. But I see no entrance.$" -Route120_Text_ClarissaIntro: @ 829ECA6 +Route120_Text_ClarissaIntro: .string "Why am I carrying this parasol?\p" .string "I'll tell you if you can win against me.$" -Route120_Text_ClarissaDefeat: @ 829ECEF +Route120_Text_ClarissaDefeat: .string "A parasol can't ward off POKéMON\n" .string "attacks…$" -Route120_Text_ClarissaPostBattle: @ 829ED19 +Route120_Text_ClarissaPostBattle: .string "I don't think strong sunlight is good\n" .string "for my POKéMON.\l" .string "So I shield them with my parasol.$" -Route120_Text_AngelicaIntro: @ 829ED71 +Route120_Text_AngelicaIntro: .string "Me, POKéMON, and my parasol…\p" .string "If any one of them is missing,\n" .string "the picture of beauty will be ruined.$" -Route120_Text_AngelicaDefeat: @ 829EDD3 +Route120_Text_AngelicaDefeat: .string "You've completely ruined my beauty…$" -Route120_Text_AngelicaPostBattle: @ 829EDF7 +Route120_Text_AngelicaPostBattle: .string "A parasol wouldn't suit you at all.\p" .string "Why, something like this would only\n" .string "get in your way.$" -Route120_Text_KeigoIntro: @ 829EE50 +Route120_Text_KeigoIntro: .string "I will adopt the movements of POKéMON\n" .string "and create new ninja techniques.$" -Route120_Text_KeigoDefeat: @ 829EE97 +Route120_Text_KeigoDefeat: .string "The creation of new ninja techniques\n" .string "is but a distant dream…$" -Route120_Text_KeigoPostBattle: @ 829EED4 +Route120_Text_KeigoPostBattle: .string "Perhaps I ought to apprentice under\n" .string "a ninja sensei.$" -Route120_Text_RileyIntro: @ 829EF08 +Route120_Text_RileyIntro: .string "We ninja conceal ourselves under our\n" .string "camouflage cloaks.\l" .string "I bet you didn't know where I was!$" -Route120_Text_RileyDefeat: @ 829EF63 +Route120_Text_RileyDefeat: .string "I lost!\n" .string "I should camouflage my shame!$" -Route120_Text_RileyPostBattle: @ 829EF89 +Route120_Text_RileyPostBattle: .string "Our camouflage cloaks are all\n" .string "handmade.$" -Route120_Text_CallieIntro: @ 829EFB1 +Route120_Text_CallieIntro: .string "If you don't pay attention,\n" .string "you could get hurt!$" -Route120_Text_CallieDefeat: @ 829EFE1 +Route120_Text_CallieDefeat: .string "Ouch!\n" .string "I was the one to get hurt.$" -Route120_Text_CalliePostBattle: @ 829F002 +Route120_Text_CalliePostBattle: .string "I wonder… Should I evolve my POKéMON?\n" .string "They're cute the way they are, though.$" -Route120_Text_LeonelIntro: @ 829F04F +Route120_Text_LeonelIntro: .string "Your party POKéMON…\n" .string "Do you have different types?$" -Route120_Text_LeonelDefeat: @ 829F080 +Route120_Text_LeonelDefeat: .string "I've seen your policy in action!$" -Route120_Text_LeonelPostBattle: @ 829F0A1 +Route120_Text_LeonelPostBattle: .string "I think it's awesome you're so strong\n" .string "battling with your favorite POKéMON.$" -Route121_Text_VanessaIntro: @ 829F0EC +Route121_Text_VanessaIntro: .string "Will you play with my delightfully\n" .string "pretty POKéMON?$" -Route121_Text_VanessaDefeat: @ 829F11F +Route121_Text_VanessaDefeat: .string "This isn't what I meant!$" -Route121_Text_VanessaPostBattle: @ 829F138 +Route121_Text_VanessaPostBattle: .string "I'm going to a CONTEST in LILYCOVE.\p" .string "My POKéMON should have no problem\n" .string "sweeping the MASTER CLASS.$" -Route121_Text_WalterIntro: @ 829F199 +Route121_Text_WalterIntro: .string "With my POKéMON, I have traveled\n" .string "to the world's four corners.\p" .string "You might say I have some confidence\n" .string "in my abilities.$" -Route121_Text_WalterDefeat: @ 829F20D +Route121_Text_WalterDefeat: .string "Ah, well played.$" -Route121_Text_WalterPostBattle: @ 829F21E +Route121_Text_WalterPostBattle: .string "I would like to circle the globe once\n" .string "again with my POKéMON.$" -Route121_Text_WalterRegister: @ 829F25B +Route121_Text_WalterRegister: .string "Your POKéMON prowess is remarkable.\n" .string "Allow me to register you as a memento.$" -Route121_Text_WalterRematchIntro: @ 829F2A6 +Route121_Text_WalterRematchIntro: .string "With my POKéMON, I have traveled\n" .string "to the world's four corners.\p" .string "You might say I have some confidence\n" .string "in my abilities.$" -Route121_Text_WalterRematchDefeat: @ 829F31A +Route121_Text_WalterRematchDefeat: .string "Ah, well played.$" -Route121_Text_WalterPostRematch: @ 829F32B +Route121_Text_WalterPostRematch: .string "Your POKéMON and you…\p" .string "Your prowess together will be\n" .string "considered strong, even overseas.$" -Route121_Text_TammyIntro: @ 829F381 +Route121_Text_TammyIntro: .string "There are powers beyond our\n" .string "understanding in the world…$" -Route121_Text_TammyDefeat: @ 829F3B9 +Route121_Text_TammyDefeat: .string "I have lost…$" -Route121_Text_TammyPostBattle: @ 829F3C6 +Route121_Text_TammyPostBattle: .string "MT. PYRE…\n" .string "There is a mysterious power\l" .string "at work there…$" -Route121_Text_KateIntro: @ 829F3FB +Route121_Text_KateIntro: .string "KATE: Together, we're fearless!\n" .string "We'll demonstrate how tough we are!$" -Route121_Text_KateDefeat: @ 829F43F +Route121_Text_KateDefeat: .string "KATE: I blew it in front of my junior\n" .string "student partner…$" -Route121_Text_KatePostBattle: @ 829F476 +Route121_Text_KatePostBattle: .string "KATE: When someone's relying on me,\n" .string "I get this urge to look cool in front\l" .string "of them…$" -Route121_Text_KateNotEnoughMons: @ 829F4C9 +Route121_Text_KateNotEnoughMons: .string "KATE: If you've only got one POKéMON,\n" .string "we can't battle with you.\p" .string "That would be bullying.$" -Route121_Text_JoyIntro: @ 829F521 +Route121_Text_JoyIntro: .string "JOY: Together, we're fearless!\n" .string "We'll demonstrate how tough we are!$" -Route121_Text_JoyDefeat: @ 829F564 +Route121_Text_JoyDefeat: .string "JOY: Please forgive me, KATE!$" -Route121_Text_JoyPostBattle: @ 829F582 +Route121_Text_JoyPostBattle: .string "JOY: Ehehe, I'll have to train with KATE,\n" .string "my senior student partner, again.$" -Route121_Text_JoyNotEnoughMons: @ 829F5CE +Route121_Text_JoyNotEnoughMons: .string "JOY: You need at least two POKéMON\n" .string "if you're going to challenge us!$" -Route121_Text_JessicaIntro: @ 829F612 +Route121_Text_JessicaIntro: .string "Stop! Have a good look at my precious\n" .string "POKéMON!$" -Route121_Text_JessicaDefeat: @ 829F641 +Route121_Text_JessicaDefeat: .string "Oh, how dare you!\n" .string "Don't take it so seriously!$" -Route121_Text_JessicaPostBattle: @ 829F66F +Route121_Text_JessicaPostBattle: .string "Maybe I'll go catch more POKéMON at\n" .string "the SAFARI.$" -Route121_Text_JessicaRegister: @ 829F69F +Route121_Text_JessicaRegister: .string "I took it easy on you this time!\n" .string "It won't be that way the next time!$" -Route121_Text_JessicaRematchIntro: @ 829F6E4 +Route121_Text_JessicaRematchIntro: .string "My precious POKéMON grew!\n" .string "Have a good look!$" -Route121_Text_JessicaRematchDefeat: @ 829F710 +Route121_Text_JessicaRematchDefeat: .string "Oh, how dare you!\n" .string "You still won't take it easy!$" -Route121_Text_JessicaPostRematch: @ 829F740 +Route121_Text_JessicaPostRematch: .string "Maybe I'll go catch more POKéMON at\n" .string "the SAFARI.$" -Route121_Text_CristinIntro: @ 829F770 +Route121_Text_CristinIntro: .string "I have this routine.\n" .string "Defeat five TRAINERS a day.\l" .string "Guess what? You're number five!$" -Route121_Text_CristinDefeat: @ 829F7C1 +Route121_Text_CristinDefeat: .string "No!\n" .string "You're horrid!$" -Route121_Text_CristinPostBattle: @ 829F7D4 +Route121_Text_CristinPostBattle: .string "I didn't expect to lose this easily…\n" .string "I'll win next time!$" -Route121_Text_CristinRegister: @ 829F80D +Route121_Text_CristinRegister: .string "That was total humiliation!\n" .string "I won't forget you…\l" .string "Hand over your POKéNAV!$" -Route121_Text_CristinRematchIntro: @ 829F855 +Route121_Text_CristinRematchIntro: .string "I have this new routine.\n" .string "Defeat ten TRAINERS a day.\l" .string "Guess what? You're number ten!$" -Route121_Text_CristinRematchDefeat: @ 829F8A8 +Route121_Text_CristinRematchDefeat: .string "Wait! That's nasty!\n" .string "I demand a rematch!$" -Route121_Text_CristinPostRematch: @ 829F8D0 +Route121_Text_CristinPostRematch: .string "An opponent I just can't beat…\n" .string "Snivel…\l" .string "I can't believe this is happening…$" -Route121_Text_CaleIntro: @ 829F91A +Route121_Text_CaleIntro: .string "Can't you see that I have all this\n" .string "stuff with me?\p" .string "Despite that, you still insist that\n" .string "we battle?$" -Route121_Text_CaleDefeat: @ 829F97B +Route121_Text_CaleDefeat: .string "Of course I lost!\n" .string "I'm holding stuff in both hands!$" -Route121_Text_CalePostBattle: @ 829F9AE +Route121_Text_CalePostBattle: .string "I bought too much stuff at\n" .string "the LILYCOVE DEPT. STORE.\p" .string "It's up the road from here.\n" .string "I wish I had a BAG like yours.$" -Route121_Text_MylesIntro: @ 829FA1E +Route121_Text_MylesIntro: .string "There's nothing I love more than\n" .string "checking out other people's POKéMON!$" -Route121_Text_MylesDefeat: @ 829FA64 +Route121_Text_MylesDefeat: .string "Super awesome!$" -Route121_Text_MylesPostBattle: @ 829FA73 +Route121_Text_MylesPostBattle: .string "They're great, your POKéMON!\n" .string "How do you raise them?$" -Route121_Text_PatIntro: @ 829FAA7 +Route121_Text_PatIntro: .string "I want everybody to see the POKéMON\n" .string "I've raised!$" -Route121_Text_PatDefeat: @ 829FAD8 +Route121_Text_PatDefeat: .string "Wow!\n" .string "Spectacular!$" -Route121_Text_PatPostBattle: @ 829FAEA +Route121_Text_PatPostBattle: .string "I raise every POKéMON with the same\n" .string "love and care--I don't pick favorites.$" -Route121_Text_MarcelIntro: @ 829FB35 +Route121_Text_MarcelIntro: .string "My POKéMON have never tasted defeat!\n" .string "On their next win, I'm entering them\l" .string "in CONTESTS.$" -Route121_Text_MarcelDefeat: @ 829FB8C +Route121_Text_MarcelDefeat: .string "Oh, now what happened here?$" -Route121_Text_MarcelPostBattle: @ 829FBA8 +Route121_Text_MarcelPostBattle: .string "I may have to train my gang some more\n" .string "before entering any CONTEST.$" -Route123_Text_WendyIntro: @ 829FBEB +Route123_Text_WendyIntro: .string "Want to determine how strong you are?\n" .string "I'll be the test!$" -Route123_Text_WendyDefeat: @ 829FC23 +Route123_Text_WendyDefeat: .string "You passed with flying colors!$" -Route123_Text_WendyPostBattle: @ 829FC42 +Route123_Text_WendyPostBattle: .string "To best even me…\n" .string "Your strength is marvelous!$" -Route123_Text_BraxtonIntro: @ 829FC6F +Route123_Text_BraxtonIntro: .string "You seem to have a big collection\n" .string "of GYM BADGES.\p" .string "Let me see if you're actually worthy of\n" .string "those BADGES!$" -Route123_Text_BraxtonDefeat: @ 829FCD6 +Route123_Text_BraxtonDefeat: .string "Oh, you're worthy, all right!$" -Route123_Text_BraxtonPostBattle: @ 829FCF4 +Route123_Text_BraxtonPostBattle: .string "You did your BADGES proud in that\n" .string "match!$" -Route123_Text_VioletIntro: @ 829FD1D +Route123_Text_VioletIntro: .string "They say that good times are filled\n" .string "with good aromas.$" -Route123_Text_VioletDefeat: @ 829FD53 +Route123_Text_VioletDefeat: .string "Oh…\n" .string "I smell the bitter scent of misery…$" -Route123_Text_VioletPostBattle: @ 829FD7B +Route123_Text_VioletPostBattle: .string "The BERRY MASTER's garden is filled\n" .string "with uplifting fragrances.$" -Route123_Text_CameronIntro: @ 829FDBA +Route123_Text_CameronIntro: .string "Being a psychic is about willpower.\p" .string "I've willed myself not to lose to\n" .string "anyone. That makes me strong!$" -Route123_Text_CameronDefeat: @ 829FE1E +Route123_Text_CameronDefeat: .string "I feel sad…$" -Route123_Text_CameronPostBattle: @ 829FE2A +Route123_Text_CameronPostBattle: .string "Being a psychic is about willpower.\n" .string "I thought I wouldn't lose to you…$" -Route123_Text_CameronRegister: @ 829FE70 +Route123_Text_CameronRegister: .string "I sense it!\n" .string "You and I shall battle again!\l" .string "I can't tell if I'll win, though…\p" .string "Let's see your POKéNAV.$" -Route123_Text_CameronRematchIntro: @ 829FED4 +Route123_Text_CameronRematchIntro: .string "I've convinced myself that I won't\n" .string "lose anymore. That makes me strong!$" -Route123_Text_CameronRematchDefeat: @ 829FF1B +Route123_Text_CameronRematchDefeat: .string "I feel sad…$" -Route123_Text_CameronPostRematch: @ 829FF27 +Route123_Text_CameronPostRematch: .string "I should train at MT. PYRE…\n" .string "I'll never beat you this way…$" -Route123_Text_JackiIntro: @ 829FF61 +Route123_Text_JackiIntro: .string "Don't be too happy if your POKéMON\n" .string "develop psychic powers.\p" .string "You need to refine those powers to\n" .string "make them really useful.$" -Route123_Text_JackiDefeat: @ 829FFD8 +Route123_Text_JackiDefeat: .string "Overwhelmed!$" -Route123_Text_JackiPostBattle: @ 829FFE5 +Route123_Text_JackiPostBattle: .string "We all have psychic powers.\n" .string "We've just forgotten how to use them.$" -Route123_Text_JackiRegister: @ 82A0027 +Route123_Text_JackiRegister: .string "I would like to face you again.\n" .string "Is that okay with you?$" -Route123_Text_JackiRematchIntro: @ 82A005E +Route123_Text_JackiRematchIntro: .string "Have you awoken the psychic powers\n" .string "within you?$" -Route123_Text_JackiRematchDefeat: @ 82A008D +Route123_Text_JackiRematchDefeat: .string "Astounding!$" -Route123_Text_JackiPostRematch: @ 82A0099 +Route123_Text_JackiPostRematch: .string "Your power with POKéMON…\n" .string "That could be a psychic power, too.$" -Route123_Text_MiuIntro: @ 82A00D6 +Route123_Text_MiuIntro: .string "MIU: Hello, TRAINER. I hope your\n" .string "POKéMON won't cry when they lose.$" -Route123_Text_MiuDefeat: @ 82A0119 +Route123_Text_MiuDefeat: .string "MIU: Uh-oh, we lost.$" -Route123_Text_MiuPostBattle: @ 82A012E +Route123_Text_MiuPostBattle: .string "MIU: TRAINER, your POKéMON are\n" .string "strong because you are friends.$" -Route123_Text_MiuNotEnoughMons: @ 82A016D +Route123_Text_MiuNotEnoughMons: .string "MIU: It's no fun to battle if you\n" .string "don't have two POKéMON.$" -Route123_Text_YukiIntro: @ 82A01A7 +Route123_Text_YukiIntro: .string "YUKI: Okay!\n" .string "We're beating the TRAINER's POKéMON!$" -Route123_Text_YukiDefeat: @ 82A01D8 +Route123_Text_YukiDefeat: .string "YUKI: Uh-oh, we lost.$" -Route123_Text_YukiPostBattle: @ 82A01EE +Route123_Text_YukiPostBattle: .string "YUKI: Why are you so strong?\n" .string "We've never lost before.$" -Route123_Text_YukiNotEnoughMons: @ 82A0224 +Route123_Text_YukiNotEnoughMons: .string "YUKI: It's no fun to battle if you\n" .string "don't have two POKéMON.$" -Route123_Text_KindraIntro: @ 82A025F +Route123_Text_KindraIntro: .string "MT. PYRE…\n" .string "Where the spirits of POKéMON sleep…\l" .string "Will your POKéMON sleep?$" -Route123_Text_KindraDefeat: @ 82A02A6 +Route123_Text_KindraDefeat: .string "Overflowing with vitality…$" -Route123_Text_KindraPostBattle: @ 82A02C1 +Route123_Text_KindraPostBattle: .string "MT. PYRE…\n" .string "Where the spirits of POKéMON sleep…\p" .string "It must overflow with a power that\n" .string "soothes spirits…$" -Route123_Text_FernandoIntro: @ 82A0323 +Route123_Text_FernandoIntro: .string "I'll turn your lights out while\n" .string "I rip through this tune!$" -Route123_Text_FernandoDefeat: @ 82A035C +Route123_Text_FernandoDefeat: .string "Hey, hold it!\n" .string "I was still playing the intro!$" -Route123_Text_FernandoPostBattle: @ 82A0389 +Route123_Text_FernandoPostBattle: .string "You're rock steady.\n" .string "I'd like to write a tune about you.$" -Route123_Text_FernandoRegister: @ 82A03C1 +Route123_Text_FernandoRegister: .string "The next time, lend your ears to\n" .string "the full tune, will you?$" -Route123_Text_FernandoRematchIntro: @ 82A03FB +Route123_Text_FernandoRematchIntro: .string "Today's the day I'm going to do it!\n" .string "I'll turn out your lights before\l" .string "I finish singing my song!$" -Route123_Text_FernandoRematchDefeat: @ 82A045A +Route123_Text_FernandoRematchDefeat: .string "Hey, hold it!\n" .string "I haven't even hit the chorus!$" -Route123_Text_FernandoPostRematch: @ 82A0487 +Route123_Text_FernandoPostRematch: .string "I thought you'd be so enthralled\n" .string "by my tune, you'd lose.$" -Route123_Text_DavisIntro: @ 82A04C0 +Route123_Text_DavisIntro: .string "This is my awesome BUG POKéMON!\n" .string "My big brother got it for me.$" -Route123_Text_DavisDefeat: @ 82A04FE +Route123_Text_DavisDefeat: .string "Waaaah!\n" .string "You meanie!$" -Route123_Text_DavisPostBattle: @ 82A0512 +Route123_Text_DavisPostBattle: .string "Don't tell my brother I lost.\n" .string "You have to keep it a secret!$" -Route123_Text_JazmynIntro: @ 82A054E +Route123_Text_JazmynIntro: .string "My confidence will get a boost by\n" .string "beating someone obviously strong!$" -Route123_Text_JazmynDefeat: @ 82A0592 +Route123_Text_JazmynDefeat: .string "There goes my confidence…$" -Route123_Text_JazmynPostBattle: @ 82A05AC +Route123_Text_JazmynPostBattle: .string "They say that you can't judge a person\n" .string "by their appearance.\p" .string "But often, their looks don't lie…$" -Route123_Text_FrederickIntro: @ 82A060A +Route123_Text_FrederickIntro: .string "Hello, child!\n" .string "Can you spare some time?$" -Route123_Text_FrederickDefeat: @ 82A0631 +Route123_Text_FrederickDefeat: .string "Ah, a mighty capable child!\n" .string "Let me contribute to your allowance.$" -Route123_Text_FrederickPostBattle: @ 82A0672 +Route123_Text_FrederickPostBattle: .string "Contribute to your allowance?\n" .string "Wasn't the prize money enough?$" -Route123_Text_AlbertoIntro: @ 82A06AF +Route123_Text_AlbertoIntro: .string "I have to tell you, BIRD POKéMON\n" .string "are my obsession!\p" .string "Birds are cool!\n" .string "They're the best!$" -Route123_Text_AlbertoDefeat: @ 82A0704 +Route123_Text_AlbertoDefeat: .string "Even in defeat, BIRD POKéMON are cool!$" -Route123_Text_AlbertoPostBattle: @ 82A072B +Route123_Text_AlbertoPostBattle: .string "I gather BIRD POKéMON feathers that\n" .string "scatter during battles.\p" .string "I'm going to make a hat with\n" .string "BIRD POKéMON feathers.$" -Route123_Text_EdIntro: @ 82A079B +Route123_Text_EdIntro: .string "When there are no TRAINERS around,\n" .string "I let my POKéMON battle each other.\l" .string "I watch them.$" -Route123_Text_EdDefeat: @ 82A07F0 +Route123_Text_EdDefeat: .string "I kind of like your POKéMON.$" -Route123_Text_EdPostBattle: @ 82A080D +Route123_Text_EdPostBattle: .string "Hehe, I'm swiping your battling ideas!\n" .string "I think they'll make me better.$" -Route123_Text_JonasIntro: @ 82A0854 +Route123_Text_JonasIntro: .string "I lay in ambush, and a TRAINER has\n" .string "landed in my trap!$" -Route123_Text_JonasDefeat: @ 82A088A +Route123_Text_JonasDefeat: .string "If you don't lose, how am I supposed\n" .string "to have fun playing ninja?$" -Route123_Text_JonasPostBattle: @ 82A08CA +Route123_Text_JonasPostBattle: .string "I'm going to ambush a weaker-looking\n" .string "TRAINER next time.$" -Route123_Text_KayleyIntro: @ 82A0902 +Route123_Text_KayleyIntro: .string "I just bought this parasol.\n" .string "My cuteness should be up by a third!$" -Route123_Text_KayleyDefeat: @ 82A0943 +Route123_Text_KayleyDefeat: .string "You're better than me by about\n" .string "five times!$" -Route123_Text_KayleyPostBattle: @ 82A096E +Route123_Text_KayleyPostBattle: .string "Using accessories effectively is\n" .string "the secret behind fashion appeal.$" -Route124_Text_SpencerIntro: @ 82A09B1 +Route124_Text_SpencerIntro: .string "Hey, are you lost at sea?\p" .string "If you can beat my POKéMON,\n" .string "I can serve as your pilot.$" -Route124_Text_SpencerDefeat: @ 82A0A02 +Route124_Text_SpencerDefeat: .string "I lost my bearings in battle!$" -Route124_Text_SpencerPostBattle: @ 82A0A20 +Route124_Text_SpencerPostBattle: .string "Many people lose their bearings at sea.\p" .string "If you're that sort, you should refer\n" .string "to the POKéNAV's MAP.$" -Route124_Text_RolandIntro: @ 82A0A84 +Route124_Text_RolandIntro: .string "Hm! You're riding a POKéMON instead\n" .string "of swimming yourself…\p" .string "I am envious!$" -Route124_Text_RolandDefeat: @ 82A0ACC +Route124_Text_RolandDefeat: .string "Oh!\n" .string "I can't…$" -Route124_Text_RolandPostBattle: @ 82A0AD9 +Route124_Text_RolandPostBattle: .string "I'm getting chilled…\n" .string "I've been in the water too long…\p" .string "I wish I could ride a POKéMON like you…$" -Route124_Text_JennyIntro: @ 82A0B37 +Route124_Text_JennyIntro: .string "If you just float in the sea like\n" .string "this, POKéMON come around to play.$" -Route124_Text_JennyDefeat: @ 82A0B7C +Route124_Text_JennyDefeat: .string "Oh, darn.\n" .string "I've gone and lost.$" -Route124_Text_JennyPostBattle: @ 82A0B9A +Route124_Text_JennyPostBattle: .string "While swimming, I noticed that some\n" .string "POKéMON attack, and some just watch.\p" .string "I guess POKéMON have personalities\n" .string "of their own.$" -Route124_Text_JennyRegister: @ 82A0C14 +Route124_Text_JennyRegister: .string "It's only on a whim, but maybe I'll get\n" .string "you to register me in your POKéNAV.$" -Route124_Text_JennyRematchIntro: @ 82A0C60 +Route124_Text_JennyRematchIntro: .string "If you just float in the sea like this,\n" .string "TRAINERS challenge you!$" -Route124_Text_JennyRematchDefeat: @ 82A0CA0 +Route124_Text_JennyRematchDefeat: .string "That's strange…\n" .string "I lost again…$" -Route124_Text_JennyPostRematch: @ 82A0CBE +Route124_Text_JennyPostRematch: .string "This has nothing to do with anything,\n" .string "but maybe I'll visit the TRICK HOUSE.$" -Route124_Text_GraceIntro: @ 82A0D0A +Route124_Text_GraceIntro: .string "I'm growing bored of swimming…\n" .string "How about a battle?$" -Route124_Text_GraceDefeat: @ 82A0D3D +Route124_Text_GraceDefeat: .string "I had no idea that you were\n" .string "this strong!$" -Route124_Text_GracePostBattle: @ 82A0D66 +Route124_Text_GracePostBattle: .string "All the effort you put in must have\n" .string "made you this strong.$" -Route124_Text_ChadIntro: @ 82A0DA0 +Route124_Text_ChadIntro: .string "Fufufufu… I dive deep underwater\n" .string "to go deep under cover.\l" .string "Plumbing the depths is where I excel!$" -Route124_Text_ChadDefeat: @ 82A0DFF +Route124_Text_ChadDefeat: .string "Glub, glub, glub…\n" .string "I'm sinking…$" -Route124_Text_ChadPostBattle: @ 82A0E1E +Route124_Text_ChadPostBattle: .string "I have it on good authority that\n" .string "there's a DIVE spot around here.\p" .string "It gives me the urge to go deep\n" .string "again…$" -Route124_Text_LilaIntro: @ 82A0E87 +Route124_Text_LilaIntro: .string "LILA: Sigh…\p" .string "Here I am in the sea, but who's with me?\n" .string "My little brother!\p" .string "Let's battle so I won't have to dwell\n" .string "on that!$" -Route124_Text_LilaDefeat: @ 82A0EFE +Route124_Text_LilaDefeat: .string "LILA: ROY! It's your fault we lost!\n" .string "You're in for it later!$" -Route124_Text_LilaPostBattle: @ 82A0F3A +Route124_Text_LilaPostBattle: .string "LILA: Sigh…\p" .string "If only it wasn't my little brother\n" .string "next to me, but a nice boyfriend…$" -Route124_Text_LilaNotEnoughMons: @ 82A0F8C +Route124_Text_LilaNotEnoughMons: .string "LILA: You're planning to battle us?\n" .string "Not unless you have two POKéMON.$" -Route124_Text_RoyIntro: @ 82A0FD1 +Route124_Text_RoyIntro: .string "ROY: My big sister is tough at POKéMON!\p" .string "Don't cry when you lose!$" -Route124_Text_RoyDefeat: @ 82A1012 +Route124_Text_RoyDefeat: .string "ROY: Uh-oh…\n" .string "My big sister will chew me out…$" -Route124_Text_RoyPostBattle: @ 82A103E +Route124_Text_RoyPostBattle: .string "ROY: My big sister is really scary\n" .string "when she gets angry.\p" .string "That's why she doesn't have a\n" .string "boyfriend.$" -Route124_Text_LilaRoyRegister: @ 82A109F +Route124_Text_LilaRoyRegister: .string "ROY: Will you battle with us again?\n" .string "But take it easy next time, okay?$" -Route124_Text_RoyNotEnoughMons: @ 82A10E5 +Route124_Text_RoyNotEnoughMons: .string "ROY: Did you want to battle us?\n" .string "Bring two POKéMON, then.$" -Route124_Text_LilaRematchIntro: @ 82A111E +Route124_Text_LilaRematchIntro: .string "LILA: Sigh…\p" .string "Here I am in the sea, but who's with me?\n" .string "My little brother!\p" .string "Oh, hi, it's been a while. Let's battle\n" .string "so I won't have to dwell on things!$" -Route124_Text_LilaRematchDefeat: @ 82A11B2 +Route124_Text_LilaRematchDefeat: .string "LILA: ROY!\n" .string "It's your fault we lost again!\p" .string "We're having a training session later!$" -Route124_Text_LilaPostRematch: @ 82A1203 +Route124_Text_LilaPostRematch: .string "LILA: Sigh…\p" .string "If I had a nice boyfriend, we'd beat\n" .string "anyone with lovely combinations…$" -Route124_Text_LilaRematchNotEnoughMons: @ 82A1255 +Route124_Text_LilaRematchNotEnoughMons: .string "LILA: You're planning to battle us?\n" .string "Not unless you have two POKéMON.$" -Route124_Text_RoyRematchIntro: @ 82A129A +Route124_Text_RoyRematchIntro: .string "ROY: If we lose, I'll catch heck.\n" .string "I'm going to go totally all out!$" -Route124_Text_RoyRematchDefeat: @ 82A12DD +Route124_Text_RoyRematchDefeat: .string "ROY: Uh-oh…\n" .string "My big sister will chew me out again.$" -Route124_Text_RoyPostRematch: @ 82A130F +Route124_Text_RoyPostRematch: .string "ROY: My big sister is really scary\n" .string "when she gets angry.\p" .string "She's going to make me train really\n" .string "hard with POKéMON later…$" -Route124_Text_RoyRematchNotEnoughMons: @ 82A1384 +Route124_Text_RoyRematchNotEnoughMons: .string "ROY: Did you want to battle us?\n" .string "Bring two POKéMON, then.$" -Route124_Text_DeclanIntro: @ 82A13BD +Route124_Text_DeclanIntro: .string "Here I am swimming by my lonesome\n" .string "on this wide, beautiful sea.\p" .string "There's no other word for it.\n" .string "This is pathetic!$" -Route124_Text_DeclanDefeat: @ 82A142C +Route124_Text_DeclanDefeat: .string "I'm feeling blue.\n" .string "Blue as the sky…$" -Route124_Text_DeclanPostBattle: @ 82A144F +Route124_Text_DeclanPostBattle: .string "I should chat up lady SWIMMERS\n" .string "and invite them on a long swim.$" -Route124_Text_IsabellaIntro: @ 82A148E +Route124_Text_IsabellaIntro: .string "I'm not going to lose to some\n" .string "surfer TRAINER.$" -Route124_Text_IsabellaDefeat: @ 82A14BC +Route124_Text_IsabellaDefeat: .string "I've only got sweat in my eyes!\n" .string "I am not crying!$" -Route124_Text_IsabellaPostBattle: @ 82A14ED +Route124_Text_IsabellaPostBattle: .string "You can find pretty colored shards\n" .string "of things around here.$" -Route125_Text_NolenIntro: @ 82A1527 +Route125_Text_NolenIntro: .string "I heard you approaching, so I hung\n" .string "around for you!$" -Route125_Text_NolenDefeat: @ 82A155A +Route125_Text_NolenDefeat: .string "I surrender!$" -Route125_Text_NolenPostBattle: @ 82A1567 +Route125_Text_NolenPostBattle: .string "Sound travels faster in water than\n" .string "it does through air.$" -Route125_Text_StanIntro: @ 82A159F +Route125_Text_StanIntro: .string "Hey, there!\n" .string "Check out my sweet POKéMON!$" -Route125_Text_StanDefeat: @ 82A15C7 +Route125_Text_StanDefeat: .string "I floundered…$" -Route125_Text_StanPostBattle: @ 82A15D5 +Route125_Text_StanPostBattle: .string "I was blown away by HORSEA's charm,\n" .string "so I started swimming, too.$" -Route125_Text_TanyaIntro: @ 82A1615 +Route125_Text_TanyaIntro: .string "I'm tired of swimming.\n" .string "Are you up for a battle with me?$" -Route125_Text_TanyaDefeat: @ 82A164D +Route125_Text_TanyaDefeat: .string "You're too much!$" -Route125_Text_TanyaPostBattle: @ 82A165E +Route125_Text_TanyaPostBattle: .string "Whew…\n" .string "Which way is it to MOSSDEEP CITY?$" -Route125_Text_SharonIntro: @ 82A1686 +Route125_Text_SharonIntro: .string "How would you like to take on the\n" .string "WATER-type POKéMON I raised?$" -Route125_Text_SharonDefeat: @ 82A16C5 +Route125_Text_SharonDefeat: .string "Lost it…$" -Route125_Text_SharonPostBattle: @ 82A16CE +Route125_Text_SharonPostBattle: .string "Your power… You're the real deal.\n" .string "I'm amazed!$" -Route125_Text_ErnestIntro: @ 82A16FC +Route125_Text_ErnestIntro: .string "Ahoy! I'm a buff, tough SAILOR!\n" .string "I've braved the world's seas!$" -Route125_Text_ErnestDefeat: @ 82A173A +Route125_Text_ErnestDefeat: .string "Gwrroooar!\n" .string "I couldn't win!$" -Route125_Text_ErnestPostBattle: @ 82A1755 +Route125_Text_ErnestPostBattle: .string "The tide ebbs and flows inside the\n" .string "SHOAL CAVE.\p" .string "By the way, it's about six hours from\n" .string "high tide to low tide. Did you know?$" -Route125_Text_ErnestRegister: @ 82A17CF +Route125_Text_ErnestRegister: .string "Register me in your POKéNAV,\n" .string "and I'll tell you something good.$" -Route125_Text_ErnestRematchIntro: @ 82A180E +Route125_Text_ErnestRematchIntro: .string "It's high time I get my payback\n" .string "from you! Come on, we're battling!$" -Route125_Text_ErnestRematchDefeat: @ 82A1851 +Route125_Text_ErnestRematchDefeat: .string "I couldn't win!\n" .string "I flat out couldn't win!$" -Route125_Text_ErnestRematchPostBattle: @ 82A187A +Route125_Text_ErnestRematchPostBattle: .string "The SHOAL CAVE…\p" .string "There are places you can and can't\n" .string "get to depending on the rise and fall\l" @@ -3859,524 +3859,524 @@ Route125_Text_ErnestRematchPostBattle: @ 82A187A .string "By the way, it's about six hours from\n" .string "high tide to low tide. Don't forget!$" -Route125_Text_KimIntro: @ 82A192B +Route125_Text_KimIntro: .string "KIM: A funny old man lives in the\n" .string "SHOAL CAVE. Someone told me.\l" .string "Are you going to see him, too?$" -Route125_Text_KimDefeat: @ 82A1989 +Route125_Text_KimDefeat: .string "KIM: I thought we would win.$" -Route125_Text_KimPostBattle: @ 82A19A6 +Route125_Text_KimPostBattle: .string "KIM: A funny old man lives in the\n" .string "SHOAL CAVE, doesn't he?\p" .string "Let's go see him, IRIS!$" -Route125_Text_KimNotEnoughMons: @ 82A19F8 +Route125_Text_KimNotEnoughMons: .string "KIM: No, no, no! You need two POKéMON,\n" .string "or it's just no good!$" -Route125_Text_IrisIntro: @ 82A1A35 +Route125_Text_IrisIntro: .string "IRIS: KIM, can you tell me what we're\n" .string "looking for out here?$" -Route125_Text_IrisDefeat: @ 82A1A71 +Route125_Text_IrisDefeat: .string "IRIS: Oh, we came sort of close.$" -Route125_Text_IrisPostBattle: @ 82A1A92 +Route125_Text_IrisPostBattle: .string "IRIS: KIM, are we really going into\n" .string "the SHOAL CAVE?\l" .string "We'll get all wet.$" -Route125_Text_IrisNotEnoughMons: @ 82A1AD9 +Route125_Text_IrisNotEnoughMons: .string "IRIS: Oh, we could never, ever do\n" .string "anything like a 2-on-1 battle.$" -Route125_Text_PresleyIntro: @ 82A1B1A +Route125_Text_PresleyIntro: .string "Why would a BIRDKEEPER like me\n" .string "come out to the sea?$" -Route125_Text_PresleyDefeat: @ 82A1B4E +Route125_Text_PresleyDefeat: .string "Okay.\n" .string "I'll tell you why I'm here.$" -Route125_Text_PresleyPostBattle: @ 82A1B70 +Route125_Text_PresleyPostBattle: .string "I put a message in a bottle and put\n" .string "it out to sea.\p" .string "I'm sure that a girl SWIMMER will\n" .string "find it!$" -Route125_Text_AuronIntro: @ 82A1BCE +Route125_Text_AuronIntro: .string "Hey! Was it you throwing garbage\n" .string "into the sea?$" -Route125_Text_AuronDefeat: @ 82A1BFD +Route125_Text_AuronDefeat: .string "Oh, you weren't throwing trash into\n" .string "the sea.$" -Route125_Text_AuronPostBattle: @ 82A1C2A +Route125_Text_AuronPostBattle: .string "I found an unsightly bottle bobbing\n" .string "in the waves earlier.\p" .string "It angers me that someone would\n" .string "pollute the sea!$" -Route126_Text_BarryIntro: @ 82A1C95 +Route126_Text_BarryIntro: .string "Swimming is a full-body workout!\n" .string "You will get fit!$" -Route126_Text_BarryDefeat: @ 82A1CC8 +Route126_Text_BarryDefeat: .string "I admit it!\n" .string "You win!$" -Route126_Text_BarryPostBattle: @ 82A1CDD +Route126_Text_BarryPostBattle: .string "Thanks to my daily swimming routine…\n" .string "Look! Feast your eyes on this physique!$" -Route126_Text_DeanIntro: @ 82A1D2A +Route126_Text_DeanIntro: .string "This towering white mountain of rock\n" .string "is SOOTOPOLIS CITY.$" -Route126_Text_DeanDefeat: @ 82A1D63 +Route126_Text_DeanDefeat: .string "I was done in?$" -Route126_Text_DeanPostBattle: @ 82A1D72 +Route126_Text_DeanPostBattle: .string "I can't find the entrance to\n" .string "SOOTOPOLIS. Where could it be?$" -Route126_Text_NikkiIntro: @ 82A1DAE +Route126_Text_NikkiIntro: .string "Ufufufufu!\n" .string "I'm a mermaid!$" -Route126_Text_NikkiDefeat: @ 82A1DC8 +Route126_Text_NikkiDefeat: .string "My fantasy burst as if it were a bubble!\n" .string "Blub, blub, blub…$" -Route126_Text_NikkiPostBattle: @ 82A1E03 +Route126_Text_NikkiPostBattle: .string "You thrashed me… I want to\n" .string "disappear in a wave of despair…$" -Route126_Text_BrendaIntro: @ 82A1E3E +Route126_Text_BrendaIntro: .string "Hello, kiddo!\n" .string "Want a battle with me?$" -Route126_Text_BrendaDefeat: @ 82A1E63 +Route126_Text_BrendaDefeat: .string "Oh, noooooh!$" -Route126_Text_BrendaPostBattle: @ 82A1E70 +Route126_Text_BrendaPostBattle: .string "I love frolicking with POKéMON in\n" .string "the sea like this!$" -Route126_Text_PabloIntro: @ 82A1EA5 +Route126_Text_PabloIntro: .string "Check out this sculpted body!\n" .string "I'm more cut than a BLACK BELT!$" -Route126_Text_PabloDefeat: @ 82A1EE3 +Route126_Text_PabloDefeat: .string "Whoops! Too strong!\n" .string "Not bad! Not bad at all!$" -Route126_Text_PabloPostBattle: @ 82A1F10 +Route126_Text_PabloPostBattle: .string "Losing to you stimulated my senses!\n" .string "I'll train myself and POKéMON harder!$" -Route126_Text_PabloRegister: @ 82A1F5A +Route126_Text_PabloRegister: .string "Yep, you're not bad at all!\n" .string "I'd like to get to know you more!$" -Route126_Text_PabloRematchIntro: @ 82A1F98 +Route126_Text_PabloRematchIntro: .string "Check out this beautiful body!\n" .string "I'm more shapely than a SWIMMER!$" -Route126_Text_PabloRematchDefeat: @ 82A1FD8 +Route126_Text_PabloRematchDefeat: .string "Whoops! Really too strong!\n" .string "Not bad! Not bad at all!$" -Route126_Text_PabloPostRematch: @ 82A200C +Route126_Text_PabloPostRematch: .string "I'm going to train even harder!\n" .string "You're a great motivator!\l" .string "You have to come back again!$" -Route126_Text_LeonardoIntro: @ 82A2063 +Route126_Text_LeonardoIntro: .string "I couldn't even swim last year,\n" .string "but now I'm a decent SWIMMER.\p" .string "I think I'm capable of anything now.$" -Route126_Text_LeonardoDefeat: @ 82A20C6 +Route126_Text_LeonardoDefeat: .string "Sheesh, getting greedy didn't do\n" .string "a thing for me.$" -Route126_Text_LeonardoPostBattle: @ 82A20F7 +Route126_Text_LeonardoPostBattle: .string "If you practice at something,\n" .string "you will get better at it.\p" .string "You're young--don't be afraid to\n" .string "try all sorts of things!$" -Route126_Text_IsobelIntro: @ 82A216A +Route126_Text_IsobelIntro: .string "If seawater gets up your nose,\n" .string "doesn't it feel terrible?$" -Route126_Text_IsobelDefeat: @ 82A21A3 +Route126_Text_IsobelDefeat: .string "Ack! Why, you…\n" .string "Glub!$" -Route126_Text_IsobelPostBattle: @ 82A21B8 +Route126_Text_IsobelPostBattle: .string "Ooh, I choked on some water!\n" .string "It's bitter! It's salty!!$" -Route126_Text_SiennaIntro: @ 82A21EF +Route126_Text_SiennaIntro: .string "I'm throwing my whole heart\n" .string "into this!$" -Route126_Text_SiennaDefeat: @ 82A2216 +Route126_Text_SiennaDefeat: .string "You had more heart!$" -Route126_Text_SiennaPostBattle: @ 82A222A +Route126_Text_SiennaPostBattle: .string "I need to cool down now…\n" .string "I think I'll go for a dive.$" -Route127_Text_CamdenIntro: @ 82A225F +Route127_Text_CamdenIntro: .string "I can see it in your face.\n" .string "You want to challenge me.$" -Route127_Text_CamdenDefeat: @ 82A2294 +Route127_Text_CamdenDefeat: .string "Awawawawawa…$" -Route127_Text_CamdenPostBattle: @ 82A22A1 +Route127_Text_CamdenPostBattle: .string "A well-played match leaves me feeling\n" .string "refreshed and serene.$" -Route127_Text_DonnyIntro: @ 82A22DD +Route127_Text_DonnyIntro: .string "Do you have a rival whom you just\n" .string "hate to lose against?$" -Route127_Text_DonnyDefeat: @ 82A2315 +Route127_Text_DonnyDefeat: .string "Arrrgh!\n" .string "I hate losing!$" -Route127_Text_DonnyPostBattle: @ 82A232C +Route127_Text_DonnyPostBattle: .string "If you have a rival, don't you get the\n" .string "feeling that you have to keep getting\l" .string "better?$" -Route127_Text_JonahIntro: @ 82A2381 +Route127_Text_JonahIntro: .string "Through fishing, I have attained a\n" .string "state of becalmed serenity…\p" .string "Please, allow me to demonstrate…$" -Route127_Text_JonahDefeat: @ 82A23E1 +Route127_Text_JonahDefeat: .string "Though I have lost, my heart remains\n" .string "calm…$" -Route127_Text_JonahPostBattle: @ 82A240C +Route127_Text_JonahPostBattle: .string "It matters not that I catch nothing.\n" .string "The line remains in the water…$" -Route127_Text_HenryIntro: @ 82A2450 +Route127_Text_HenryIntro: .string "Whoops! Don't tell me I snagged\n" .string "a SURFING POKéMON?$" -Route127_Text_HenryDefeat: @ 82A2483 +Route127_Text_HenryDefeat: .string "I can't keep up!$" -Route127_Text_HenryPostBattle: @ 82A2494 +Route127_Text_HenryPostBattle: .string "It'd be a handful if I hooked\n" .string "your tough POKéMON!$" -Route127_Text_RogerIntro: @ 82A24C6 +Route127_Text_RogerIntro: .string "Well, hey! This is a match between\n" .string "a POKéMON fan and a fishing buff!$" -Route127_Text_RogerDefeat: @ 82A250B +Route127_Text_RogerDefeat: .string "No! My line's all tangled!\n" .string "The party's over!$" -Route127_Text_RogerPostBattle: @ 82A2538 +Route127_Text_RogerPostBattle: .string "My fishing line's doing a dance!\n" .string "The tangle tango! Hahaha, snarl!$" -Route127_Text_AidanIntro: @ 82A257A +Route127_Text_AidanIntro: .string "BIRD POKéMON have excellent vision.\n" .string "They spot prey from great heights.$" -Route127_Text_AidanDefeat: @ 82A25C1 +Route127_Text_AidanDefeat: .string "Whew… I give up.$" -Route127_Text_AidanPostBattle: @ 82A25D2 +Route127_Text_AidanPostBattle: .string "There're lots of diving spots in\n" .string "the sea around here.\p" .string "You can spot them easily from the sky\n" .string "because of their darker color.$" -Route127_Text_KojiIntro: @ 82A264D +Route127_Text_KojiIntro: .string "Run in your bare feet.\n" .string "That will toughen up your soles!$" -Route127_Text_KojiDefeat: @ 82A2685 +Route127_Text_KojiDefeat: .string "Yowch!\n" .string "I got a pebble under a toenail!$" -Route127_Text_KojiPostBattle: @ 82A26AC +Route127_Text_KojiPostBattle: .string "Going barefoot feels great.\n" .string "But your RUNNING SHOES are cool, too.$" -Route127_Text_KojiRegister: @ 82A26EE +Route127_Text_KojiRegister: .string "This is what I do to people who beat me!\n" .string "I hope we can do this again.$" -Route127_Text_KojiRematchIntro: @ 82A2734 +Route127_Text_KojiRematchIntro: .string "I still run in my bare feet daily.\n" .string "My soles are tough!$" -Route127_Text_KojiRematchDefeat: @ 82A276B +Route127_Text_KojiRematchDefeat: .string "Yowch!\n" .string "Pebbles dug into my arches!$" -Route127_Text_KojiPostRematch: @ 82A278E +Route127_Text_KojiPostRematch: .string "Want to go barefoot for a while?\n" .string "So I can try your RUNNING SHOES?$" -Route127_Text_AthenaIntro: @ 82A27D0 +Route127_Text_AthenaIntro: .string "We should have a slow and methodical\n" .string "match.$" -Route127_Text_AthenaDefeat: @ 82A27FC +Route127_Text_AthenaDefeat: .string "You didn't give me the chance to\n" .string "do any strategizing.$" -Route127_Text_AthenaPostBattle: @ 82A2832 +Route127_Text_AthenaPostBattle: .string "When I'm surrounded by the blue sea\n" .string "and sky, it feels as if time slows down.$" -Route128_Text_IsaiahIntro: @ 82A287F +Route128_Text_IsaiahIntro: .string "EVER GRANDE CITY is still a long ways\n" .string "away…$" -Route128_Text_IsaiahDefeat: @ 82A28AB +Route128_Text_IsaiahDefeat: .string "My first victory seems to be far\n" .string "away, too…$" -Route128_Text_IsaiahPostBattle: @ 82A28D7 +Route128_Text_IsaiahPostBattle: .string "My whole life has been about losing,\n" .string "but I will never give up!$" -Route128_Text_IsaiahRegister: @ 82A2916 +Route128_Text_IsaiahRegister: .string "I know I'm not good now, but I think\n" .string "I can win eventually.\p" .string "Please register me in your POKéNAV.$" -Route128_Text_IsaiahRematchIntro: @ 82A2975 +Route128_Text_IsaiahRematchIntro: .string "I'm still feeling good. I'll keep on\n" .string "swimming to EVER GRANDE CITY.$" -Route128_Text_IsaiahRematchDefeat: @ 82A29B8 +Route128_Text_IsaiahRematchDefeat: .string "I've yet to taste my first victory…$" -Route128_Text_IsaiahPostRematch: @ 82A29DC +Route128_Text_IsaiahPostRematch: .string "I'll eventually reach EVER GRANDE CITY\n" .string "where I can eventually win…$" -Route128_Text_KatelynIntro: @ 82A2A1F +Route128_Text_KatelynIntro: .string "You have to swim, cycle, and then run\n" .string "a marathon in a triathlon.\p" .string "It's a grueling race that consists\n" .string "of three events.$" -Route128_Text_KatelynDefeat: @ 82A2A94 +Route128_Text_KatelynDefeat: .string "A POKéMON battle is grueling, too…$" -Route128_Text_KatelynPostBattle: @ 82A2AB7 +Route128_Text_KatelynPostBattle: .string "I have to ride a BIKE next, but…\n" .string "I'm about to throw in the towel…$" -Route128_Text_KatelynRegister: @ 82A2AF9 +Route128_Text_KatelynRegister: .string "Well, I may as well make the best\n" .string "of this. I'd like a rematch sometime.$" -Route128_Text_KatelynRematchIntro: @ 82A2B41 +Route128_Text_KatelynRematchIntro: .string "A triathlon is long. But I guess the\n" .string "road to become the POKéMON CHAMPION\l" .string "is also a long and grueling one.$" -Route128_Text_KatelynRematchDefeat: @ 82A2BAB +Route128_Text_KatelynRematchDefeat: .string "A POKéMON battle really is harsh\n" .string "and unforgiving…$" -Route128_Text_KatelynPostRematch: @ 82A2BDD +Route128_Text_KatelynPostRematch: .string "You should give serious thought to\n" .string "challenges on VICTORY ROAD.$" -Route128_Text_AlexaIntro: @ 82A2C1C +Route128_Text_AlexaIntro: .string "We've been working so hard to mount\n" .string "a POKéMON LEAGUE challenge…\p" .string "We can't afford to lose now!$" -Route128_Text_AlexaDefeat: @ 82A2C79 +Route128_Text_AlexaDefeat: .string "Oh!\n" .string "How could this happen?!$" -Route128_Text_AlexaPostBattle: @ 82A2C95 +Route128_Text_AlexaPostBattle: .string "After all I've done to get here,\n" .string "I won't give up after one setback.$" -Route128_Text_RubenIntro: @ 82A2CD9 +Route128_Text_RubenIntro: .string "There is no stronger TRAINER than I!$" -Route128_Text_RubenDefeat: @ 82A2CFE +Route128_Text_RubenDefeat: .string "This can't be!$" -Route128_Text_RubenPostBattle: @ 82A2D0D +Route128_Text_RubenPostBattle: .string "There probably is no stronger TRAINER\n" .string "than you!$" -Route128_Text_WayneIntro: @ 82A2D3D +Route128_Text_WayneIntro: .string "I want to visit EVER GRANDE, so I\n" .string "caught myself a POKéMON that knows\l" .string "the move WATERFALL to crest the falls.$" -Route128_Text_WayneDefeat: @ 82A2DA9 +Route128_Text_WayneDefeat: .string "I'm crestfallen!$" -Route128_Text_WaynePostBattle: @ 82A2DBA +Route128_Text_WaynePostBattle: .string "Awww, phooey!\p" .string "My POKéMON knows WATERFALL, but\n" .string "I don't have the SOOTOPOLIS GYM BADGE!$" -Route128_Text_HarrisonIntro: @ 82A2E0F +Route128_Text_HarrisonIntro: .string "You're looking awfully tough.\n" .string "I wonder if I can win?$" -Route128_Text_HarrisonDefeat: @ 82A2E44 +Route128_Text_HarrisonDefeat: .string "Ouch!\n" .string "I guess it was impossible to win.$" -Route128_Text_HarrisonPostBattle: @ 82A2E6C +Route128_Text_HarrisonPostBattle: .string "There are tough TRAINERS galore\n" .string "around EVER GRANDE.\p" .string "Do you think I may be out\n" .string "of my league?$" -Route128_Text_CarleeIntro: @ 82A2EC8 +Route128_Text_CarleeIntro: .string "The sunlight seems to be more harsh\n" .string "in this area.$" -Route128_Text_CarleeDefeat: @ 82A2EFA +Route128_Text_CarleeDefeat: .string "I couldn't see very well because of\n" .string "the sun's glare.$" -Route128_Text_CarleePostBattle: @ 82A2F2F +Route128_Text_CarleePostBattle: .string "I should go back soon.\n" .string "I need to reapply my sunscreen.$" -Route129_Text_ChaseIntro: @ 82A2F66 +Route129_Text_ChaseIntro: .string "This is my first triathlon.\n" .string "I'm all tense and nervous!$" -Route129_Text_ChaseDefeat: @ 82A2F9D +Route129_Text_ChaseDefeat: .string "Wroooaaar!\n" .string "I failed to win!$" -Route129_Text_ChasePostBattle: @ 82A2FB9 +Route129_Text_ChasePostBattle: .string "If I'm all tensed up, I won't be able to\n" .string "give it my all.$" -Route129_Text_AllisonIntro: @ 82A2FF2 +Route129_Text_AllisonIntro: .string "I'm in the middle of a triathlon,\n" .string "but, sure, why don't we battle?$" -Route129_Text_AllisonDefeat: @ 82A3034 +Route129_Text_AllisonDefeat: .string "I was sure I'd win!$" -Route129_Text_AllisonPostBattle: @ 82A3048 +Route129_Text_AllisonPostBattle: .string "Do you know what's the greatest thing\n" .string "about triathlons?\p" .string "Testing the limits of your own\n" .string "strength and endurance against\l" .string "Mother Nature!$" -Route129_Text_ReedIntro: @ 82A30CD +Route129_Text_ReedIntro: .string "Say hey, hey!\n" .string "Let's get on with it!$" -Route129_Text_ReedDefeat: @ 82A30F1 +Route129_Text_ReedDefeat: .string "Beat, I'm beaten.\n" .string "That's it, done!$" -Route129_Text_ReedPostBattle: @ 82A3114 +Route129_Text_ReedPostBattle: .string "There's nothing for a loser.\n" .string "Time for me to beat it home.$" -Route129_Text_TishaIntro: @ 82A314E +Route129_Text_TishaIntro: .string "What's the hurry?\n" .string "Let's take it slow and easy.$" -Route129_Text_TishaDefeat: @ 82A317D +Route129_Text_TishaDefeat: .string "Oh, my.\n" .string "I wanted to relax a little more…$" -Route129_Text_TishaPostBattle: @ 82A31A6 +Route129_Text_TishaPostBattle: .string "Don't you hate making mistakes when\n" .string "you're in a rush?\p" .string "That's why I try to take things\n" .string "slowly.$" -Route129_Text_ClarenceIntro: @ 82A3204 +Route129_Text_ClarenceIntro: .string "Surfing isn't as easy as it seems,\n" .string "isn't that right?$" -Route129_Text_ClarenceDefeat: @ 82A3239 +Route129_Text_ClarenceDefeat: .string "Winning sure isn't easy.$" -Route129_Text_ClarencePostBattle: @ 82A3252 +Route129_Text_ClarencePostBattle: .string "You have your sights on the POKéMON\n" .string "LEAGUE? Keep at it!$" -Route130_Text_RodneyIntro: @ 82A328A +Route130_Text_RodneyIntro: .string "What a surprise! I didn't expect to\n" .string "see a TRAINER out in the sea.\p" .string "I think we should battle!$" -Route130_Text_RodneyDefeat: @ 82A32E6 +Route130_Text_RodneyDefeat: .string "This kid's awfully tough…$" -Route130_Text_RodneyPostBattle: @ 82A3300 +Route130_Text_RodneyPostBattle: .string "Your eyes have that look of someone\n" .string "who's experienced harsh challenges\l" .string "and won. It suits you well!$" -Route130_Text_KatieIntro: @ 82A3363 +Route130_Text_KatieIntro: .string "In the deep blue sea,\n" .string "my shattered blue heart finds\l" .string "comfort among waves.$" -Route130_Text_KatieDefeat: @ 82A33AC +Route130_Text_KatieDefeat: .string "Like the vast blue sea,\n" .string "the world of POKéMON spans\l" .string "depths beyond belief.$" -Route130_Text_KatiePostBattle: @ 82A33F5 +Route130_Text_KatiePostBattle: .string "The world's children dream\n" .string "of one day becoming\l" .string "the POKéMON CHAMPION.$" -Route130_Text_SantiagoIntro: @ 82A343A +Route130_Text_SantiagoIntro: .string "Floating on the open sea like this…\n" .string "It's peaceful.$" -Route130_Text_SantiagoDefeat: @ 82A346D +Route130_Text_SantiagoDefeat: .string "I needed to be a little less peaceful!$" -Route130_Text_SantiagoPostBattle: @ 82A3494 +Route130_Text_SantiagoPostBattle: .string "Swimming and battling like this…\n" .string "I'm one happy guy…$" -Route131_Text_RichardIntro: @ 82A34C8 +Route131_Text_RichardIntro: .string "The sea is teeming with POKéMON.\n" .string "It's not easy swimming, I tell you.$" -Route131_Text_RichardDefeat: @ 82A350D +Route131_Text_RichardDefeat: .string "POKéMON raised by TRAINERS are\n" .string "seriously tough…$" -Route131_Text_RichardPostBattle: @ 82A353D +Route131_Text_RichardPostBattle: .string "Gasp… Gasp…\n" .string "I'm wiped out…\p" .string "The going's easy. It's the leaving\n" @@ -4384,398 +4384,398 @@ Route131_Text_RichardPostBattle: @ 82A353D .string "Will I have any energy left to make\n" .string "the return trip?$" -Route131_Text_HermanIntro: @ 82A35C6 +Route131_Text_HermanIntro: .string "The sea… The sea… The sea…\n" .string "The sea as far as these eyes can see!\l" .string "I'm sick and tired of the sea!$" -Route131_Text_HermanDefeat: @ 82A3626 +Route131_Text_HermanDefeat: .string "Bleah!$" -Route131_Text_HermanPostBattle: @ 82A362D +Route131_Text_HermanPostBattle: .string "Bored I am by the sea, but swim I must.\p" .string "I'm a born swimmer!\n" .string "That's what I am.$" -Route131_Text_SusieIntro: @ 82A367B +Route131_Text_SusieIntro: .string "Hi, sweetie, wait!\n" .string "We should battle, you and I!$" -Route131_Text_SusieDefeat: @ 82A36AB +Route131_Text_SusieDefeat: .string "You're tough in spite of the way\n" .string "you look!$" -Route131_Text_SusiePostBattle: @ 82A36D6 +Route131_Text_SusiePostBattle: .string "Did you see a guy over there who whines\n" .string "that he's bored of the sea?\p" .string "That's all talk.\n" .string "He's hopelessly in love with the sea!$" -Route131_Text_KaraIntro: @ 82A3751 +Route131_Text_KaraIntro: .string "Why do men love bathing suits so much?\p" .string "They all ogle me!$" -Route131_Text_KaraDefeat: @ 82A378A +Route131_Text_KaraDefeat: .string "I'm out of my depth!$" -Route131_Text_KaraPostBattle: @ 82A379F +Route131_Text_KaraPostBattle: .string "Maybe it's not my bathing suit that\n" .string "makes men look. It must be my beauty!$" -Route131_Text_ReliIntro: @ 82A37E9 +Route131_Text_ReliIntro: .string "RELI: We'll work together as siblings\n" .string "to take you on!$" -Route131_Text_ReliDefeat: @ 82A381F +Route131_Text_ReliDefeat: .string "RELI: We couldn't win even though we\n" .string "worked together…$" -Route131_Text_ReliPostBattle: @ 82A3855 +Route131_Text_ReliPostBattle: .string "RELI: The people of PACIFIDLOG are\n" .string "together with the sea and POKéMON from\l" .string "the time they are born.$" -Route131_Text_ReliNotEnoughMons: @ 82A38B7 +Route131_Text_ReliNotEnoughMons: .string "RELI: You don't have two POKéMON?\n" .string "We can't enjoy a battle, then.$" -Route131_Text_IanIntro: @ 82A38F8 +Route131_Text_IanIntro: .string "IAN: I'm doing my best together with\n" .string "my sis!$" -Route131_Text_IanDefeat: @ 82A3925 +Route131_Text_IanDefeat: .string "IAN: I did my best with my sis,\n" .string "but we still couldn't win…$" -Route131_Text_IanPostBattle: @ 82A3960 +Route131_Text_IanPostBattle: .string "IAN: You know how PACIFIDLOG is\n" .string "a floating town?\p" .string "So, wherever there is the sea,\n" .string "that's a part of PACIFIDLOG!$" -Route131_Text_IanNotEnoughMons: @ 82A39CD +Route131_Text_IanNotEnoughMons: .string "IAN: If you have two POKéMON,\n" .string "we'll take you on!$" -Route131_Text_TaliaIntro: @ 82A39FE +Route131_Text_TaliaIntro: .string "If you can beat me, I'll give you some\n" .string "great information!$" -Route131_Text_TaliaDefeat: @ 82A3A38 +Route131_Text_TaliaDefeat: .string "Oh?\n" .string "Did I lose?$" -Route131_Text_TaliaPostBattle: @ 82A3A48 +Route131_Text_TaliaPostBattle: .string "There is an odd place nearby.\n" .string "There's a huge tower there.\l" .string "Why don't you go take a look?$" -Route131_Text_KevinIntro: @ 82A3AA0 +Route131_Text_KevinIntro: .string "The people of PACIFIDLOG are\n" .string "a peaceful bunch.\p" .string "They never get angry.\n" .string "That goes for me, too.$" -Route131_Text_KevinDefeat: @ 82A3AFC +Route131_Text_KevinDefeat: .string "Oops!$" -Route131_Text_KevinPostBattle: @ 82A3B02 +Route131_Text_KevinPostBattle: .string "Tch! …Oh, wait.\n" .string "I'm not angry. Honestly!\p" .string "But, boy, you're strong!\n" .string "Hahaha!$" -Route132_Text_GilbertIntro: @ 82A3B4C +Route132_Text_GilbertIntro: .string "I used to catch colds all the time as\n" .string "a kid, but I became totally fit after\l" .string "I started swimming.$" -Route132_Text_GilbertDefeat: @ 82A3BAC +Route132_Text_GilbertDefeat: .string "I crave more power…$" -Route132_Text_GilbertPostBattle: @ 82A3BC0 +Route132_Text_GilbertPostBattle: .string "TRAINERS travel the fields and\n" .string "mountains, so they must be fit, too.$" -Route132_Text_DanaIntro: @ 82A3C04 +Route132_Text_DanaIntro: .string "I try not to swim where the currents\n" .string "are too strong.$" -Route132_Text_DanaDefeat: @ 82A3C39 +Route132_Text_DanaDefeat: .string "Oh, please, no!$" -Route132_Text_DanaPostBattle: @ 82A3C49 +Route132_Text_DanaPostBattle: .string "If I get swept away, I'll lose all my\n" .string "sense of place…$" -Route132_Text_RonaldIntro: @ 82A3C7F +Route132_Text_RonaldIntro: .string "Win or lose, you'll never know until\n" .string "you try!$" -Route132_Text_RonaldDefeat: @ 82A3CAD +Route132_Text_RonaldDefeat: .string "Waah!\n" .string "I sank in defeat!$" -Route132_Text_RonaldPostBattle: @ 82A3CC5 +Route132_Text_RonaldPostBattle: .string "I never battle when I know I'll win.\n" .string "I like to battle at the razor's edge of\l" .string "victory and defeat!$" -Route132_Text_KiyoIntro: @ 82A3D26 +Route132_Text_KiyoIntro: .string "I contemplate POKéMON 24 hours a day.\n" .string "How could you possibly beat me?$" -Route132_Text_KiyoDefeat: @ 82A3D6C +Route132_Text_KiyoDefeat: .string "I lose.\n" .string "I will concede defeat.$" -Route132_Text_KiyoPostBattle: @ 82A3D8B +Route132_Text_KiyoPostBattle: .string "Urggh…\n" .string "You're a POKéMON fanatic, aren't you?\p" .string "You must contemplate POKéMON 24 hours\n" .string "a day, don't you?$" -Route132_Text_MakaylaIntro: @ 82A3DF0 +Route132_Text_MakaylaIntro: .string "I'm always with my husband,\n" .string "but I can win even without him.$" -Route132_Text_MakaylaDefeat: @ 82A3E2C +Route132_Text_MakaylaDefeat: .string "Oh, I guess I wasn't good enough.$" -Route132_Text_MakaylaPostBattle: @ 82A3E4E +Route132_Text_MakaylaPostBattle: .string "That young man over there looks just\n" .string "like my husband when he was young.\p" .string "He's making me blush!$" -Route132_Text_JonathanIntro: @ 82A3EAC +Route132_Text_JonathanIntro: .string "Someone's been watching me intently.\n" .string "Was it you?$" -Route132_Text_JonathanDefeat: @ 82A3EDD +Route132_Text_JonathanDefeat: .string "Wow!\n" .string "That's pretty strong, all right!$" -Route132_Text_JonathanPostBattle: @ 82A3F03 +Route132_Text_JonathanPostBattle: .string "I can't shake this feeling that\n" .string "someone's watching me.\p" .string "I can't concentrate!$" -Route132_Text_PaxtonIntro: @ 82A3F4F +Route132_Text_PaxtonIntro: .string "Now where could my wife have gone?\n" .string "I'm always with her.\l" .string "I wonder if I can win on my own.$" -Route132_Text_PaxtonDefeat: @ 82A3FA8 +Route132_Text_PaxtonDefeat: .string "Ah, I see that I couldn't manage\n" .string "to win on my own after all.$" -Route132_Text_PaxtonPostBattle: @ 82A3FE5 +Route132_Text_PaxtonPostBattle: .string "My wife must be looking for me.\n" .string "I'd best go find her right away.$" -Route132_Text_DarcyIntro: @ 82A4026 +Route132_Text_DarcyIntro: .string "I liked training here by myself.\n" .string "It's awful that all these people came!$" -Route132_Text_DarcyDefeat: @ 82A406E +Route132_Text_DarcyDefeat: .string "Okay! I won't complain about other\n" .string "people being here.$" -Route132_Text_DarcyPostBattle: @ 82A40A4 +Route132_Text_DarcyPostBattle: .string "I suppose I can partner up with that\n" .string "old man and challenge that other team.$" -Route133_Text_FranklinIntro: @ 82A40F0 +Route133_Text_FranklinIntro: .string "Did the currents carry you here, too?\n" .string "This must have been fated.\l" .string "Let's battle!$" -Route133_Text_FranklinDefeat: @ 82A413F +Route133_Text_FranklinDefeat: .string "Strong!\n" .string "Too much so!$" -Route133_Text_FranklinPostBattle: @ 82A4154 +Route133_Text_FranklinPostBattle: .string "It's just my luck that a tough TRAINER\n" .string "like you would drift here…\l" .string "I must be cursed…$" -Route133_Text_DebraIntro: @ 82A41A8 +Route133_Text_DebraIntro: .string "I've led a life of woe and misery…\n" .string "I've been cast away, and this is where\l" .string "I've drifted…$" -Route133_Text_DebraDefeat: @ 82A4200 +Route133_Text_DebraDefeat: .string "Another loss…$" -Route133_Text_DebraPostBattle: @ 82A420E +Route133_Text_DebraPostBattle: .string "A life adrift…\n" .string "I don't want it anymore!$" -Route133_Text_LindaIntro: @ 82A4236 +Route133_Text_LindaIntro: .string "Welcome!\n" .string "I've been expecting you!$" -Route133_Text_LindaDefeat: @ 82A4258 +Route133_Text_LindaDefeat: .string "No! Please!$" -Route133_Text_LindaPostBattle: @ 82A4264 +Route133_Text_LindaPostBattle: .string "A strong child TRAINER…\n" .string "That's so annoying!$" -Route133_Text_WarrenIntro: @ 82A4290 +Route133_Text_WarrenIntro: .string "I want to win like everyone else, but I\n" .string "won't raise POKéMON like everyone else.$" -Route133_Text_WarrenDefeat: @ 82A42E0 +Route133_Text_WarrenDefeat: .string "Darn it!\n" .string "My way is still too slack!$" -Route133_Text_WarrenPostBattle: @ 82A4304 +Route133_Text_WarrenPostBattle: .string "It's way more fun to do things the way\n" .string "I want than to be like everybody else.\l" .string "I mean, that's obvious!$" -Route133_Text_BeckIntro: @ 82A436A +Route133_Text_BeckIntro: .string "I came all the way out here with my\n" .string "BIRD POKéMON.$" -Route133_Text_BeckDefeat: @ 82A439C +Route133_Text_BeckDefeat: .string "You…\n" .string "You're stunningly cool!$" -Route133_Text_BeckPostBattle: @ 82A43B9 +Route133_Text_BeckPostBattle: .string "I'd like to go back to FORTREE,\n" .string "but I've grown to like this place, too.$" -Route133_Text_MollieIntro: @ 82A4401 +Route133_Text_MollieIntro: .string "I must have battled thousands\n" .string "of times. I've lost count.$" -Route133_Text_MollieDefeat: @ 82A443A +Route133_Text_MollieDefeat: .string "I may have lost thousands of times,\n" .string "but a loss still stings.$" -Route133_Text_MolliePostBattle: @ 82A4477 +Route133_Text_MolliePostBattle: .string "Keep at this, youngster. So you can\n" .string "become like my husband and me.$" -Route133_Text_ConorIntro: @ 82A44BA +Route133_Text_ConorIntro: .string "Young people are too happy to go with\n" .string "the flow. They're without direction.$" -Route133_Text_ConorDefeat: @ 82A4505 +Route133_Text_ConorDefeat: .string "You have a firm sense of purpose.$" -Route133_Text_ConorPostBattle: @ 82A4527 +Route133_Text_ConorPostBattle: .string "Don't let others lead you astray.\n" .string "Don't lose direction as you grow older.$" -Route134_Text_JackIntro: @ 82A4571 +Route134_Text_JackIntro: .string "Even those POKéMON that can swim are\n" .string "carried along by the rapid currents.$" -Route134_Text_JackDefeat: @ 82A45BB +Route134_Text_JackDefeat: .string "Aiyeeeeh!$" -Route134_Text_JackPostBattle: @ 82A45C5 +Route134_Text_JackPostBattle: .string "I think POKéMON enjoy the fast-running\n" .string "currents around these parts.$" -Route134_Text_LaurelIntro: @ 82A4609 +Route134_Text_LaurelIntro: .string "My LUVDISC are looking for a fun\n" .string "match. Will you join us?$" -Route134_Text_LaurelDefeat: @ 82A4643 +Route134_Text_LaurelDefeat: .string "Oopsie!$" -Route134_Text_LaurelPostBattle: @ 82A464B +Route134_Text_LaurelPostBattle: .string "There's a collector who's after\n" .string "the SCALES of LUVDISC.$" -Route134_Text_AlexIntro: @ 82A4682 +Route134_Text_AlexIntro: .string "Okeydokey! That's enough rest, gang!\n" .string "It's time for a match!$" -Route134_Text_AlexDefeat: @ 82A46BE +Route134_Text_AlexDefeat: .string "Tuckered out again…$" -Route134_Text_AlexPostBattle: @ 82A46D2 +Route134_Text_AlexPostBattle: .string "My BIRD POKéMON get tired quickly after\n" .string "a long flight…$" -Route134_Text_HitoshiIntro: @ 82A4709 +Route134_Text_HitoshiIntro: .string "You're a POKéMON TRAINER.\n" .string "No need for words. We battle now.$" -Route134_Text_HitoshiDefeat: @ 82A4745 +Route134_Text_HitoshiDefeat: .string "… … … … … …\n" .string "… … … … … …$" -Route134_Text_HitoshiPostBattle: @ 82A475D +Route134_Text_HitoshiPostBattle: .string "It was I who challenged you, and yet\n" .string "I lost. I am deeply shamed…$" -Route134_Text_AaronIntro: @ 82A479E +Route134_Text_AaronIntro: .string "The savage tide in this area serves to\n" .string "make us stronger than ever.$" -Route134_Text_AaronDefeat: @ 82A47E1 +Route134_Text_AaronDefeat: .string "I willingly concede defeat.$" -Route134_Text_AaronPostBattle: @ 82A47FD +Route134_Text_AaronPostBattle: .string "We will return for more training at\n" .string "METEOR FALLS.\p" .string "If you'd like, you should go, too.\n" .string "It will definitely toughen you up!$" -Route134_Text_KelvinIntro: @ 82A4875 +Route134_Text_KelvinIntro: .string "O-our boat!\n" .string "The tide carried it away!$" -Route134_Text_KelvinDefeat: @ 82A489B +Route134_Text_KelvinDefeat: .string "Awawawawah!\n" .string "Please, stop! Please!$" -Route134_Text_KelvinPostBattle: @ 82A48BD +Route134_Text_KelvinPostBattle: .string "If we can't SURF, how are we supposed\n" .string "to get home?\p" .string "Actually, I know a fainted POKéMON\n" .string "can still SURF, but it feels wrong.$" -Route134_Text_MarleyIntro: @ 82A4937 +Route134_Text_MarleyIntro: .string "Can your POKéMON dodge our\n" .string "lightning-quick attacks?$" -Route134_Text_MarleyDefeat: @ 82A496B +Route134_Text_MarleyDefeat: .string "I never knew such a technique existed!\n" .string "You've defeated us thoroughly.$" -Route134_Text_MarleyPostBattle: @ 82A49B1 +Route134_Text_MarleyPostBattle: .string "I haven't lost my passion for speed.\n" .string "I will try harder.$" -Route134_Text_ReynaIntro: @ 82A49E9 +Route134_Text_ReynaIntro: .string "My POKéMON can't be taken down\n" .string "easily!$" -Route134_Text_ReynaDefeat: @ 82A4A10 +Route134_Text_ReynaDefeat: .string "You're kidding!\n" .string "Explain how I lost!$" -Route134_Text_ReynaPostBattle: @ 82A4A34 +Route134_Text_ReynaPostBattle: .string "Haha!\n" .string "You won, all right!\p" .string "I'll work my way back up by taking on\n" .string "TRAINERS I happen to meet!$" -Route134_Text_HudsonIntro: @ 82A4A8F +Route134_Text_HudsonIntro: .string "Listen, have you seen another SAILOR\n" .string "around here?$" -Route134_Text_HudsonDefeat: @ 82A4AC1 +Route134_Text_HudsonDefeat: .string "Now, that's something!$" -Route134_Text_HudsonPostBattle: @ 82A4AD8 +Route134_Text_HudsonPostBattle: .string "Our boat drifted out to sea.\p" .string "My buddy's a timid fellow, so I'm\n" .string "worried about him.$" diff --git a/data/text/trick_house_mechadolls.inc b/data/text/trick_house_mechadolls.inc index 69d0118bd13a..7edd1f1beb43 100644 --- a/data/text/trick_house_mechadolls.inc +++ b/data/text/trick_house_mechadolls.inc @@ -1,134 +1,134 @@ -gTrickHouse_Mechadoll_Oddish:: @ 27ECBC +gTrickHouse_Mechadoll_Oddish:: .string "ODDISH$" -gTrickHouse_Mechadoll_Poochyena:: @ 27ECC3 +gTrickHouse_Mechadoll_Poochyena:: .string "POOCHYENA$" -gTrickHouse_Mechadoll_Taillow:: @ 27ECCD +gTrickHouse_Mechadoll_Taillow:: .string "TAILLOW$" -gTrickHouse_Mechadoll_Azurill:: @ 27ECD5 +gTrickHouse_Mechadoll_Azurill:: .string "AZURILL$" -gTrickHouse_Mechadoll_Lotad:: @ 27ECDD +gTrickHouse_Mechadoll_Lotad:: .string "LOTAD$" -gTrickHouse_Mechadoll_Wingull:: @ 27ECE3 +gTrickHouse_Mechadoll_Wingull:: .string "WINGULL$" -gTrickHouse_Mechadoll_Dustox:: @ 27ECEB +gTrickHouse_Mechadoll_Dustox:: .string "DUSTOX$" -gTrickHouse_Mechadoll_Zubat:: @ 27ECF2 +gTrickHouse_Mechadoll_Zubat:: .string "ZUBAT$" -gTrickHouse_Mechadoll_Nincada:: @ 27ECF8 +gTrickHouse_Mechadoll_Nincada:: .string "NINCADA$" -gTrickHouse_Mechadoll_Ralts:: @ 27ED00 +gTrickHouse_Mechadoll_Ralts:: .string "RALTS$" -gTrickHouse_Mechadoll_Zigzagoon:: @ 27ED06 +gTrickHouse_Mechadoll_Zigzagoon:: .string "ZIGZAGOON$" -gTrickHouse_Mechadoll_Slakoth:: @ 27ED10 +gTrickHouse_Mechadoll_Slakoth:: .string "SLAKOTH$" -gTrickHouse_Mechadoll_Poochyena2:: @ 27ED18 +gTrickHouse_Mechadoll_Poochyena2:: .string "POOCHYENA$" -gTrickHouse_Mechadoll_Shroomish:: @ 27ED22 +gTrickHouse_Mechadoll_Shroomish:: .string "SHROOMISH$" -gTrickHouse_Mechadoll_Zigzagoon2:: @ 27ED2C +gTrickHouse_Mechadoll_Zigzagoon2:: .string "ZIGZAGOON$" -gTrickHouse_Mechadoll_Poochyena3:: @ 27ED36 +gTrickHouse_Mechadoll_Poochyena3:: .string "POOCHYENA$" -gTrickHouse_Mechadoll_Zubat2:: @ 27ED40 +gTrickHouse_Mechadoll_Zubat2:: .string "ZUBAT$" -gTrickHouse_Mechadoll_Carvanha:: @ 27ED46 +gTrickHouse_Mechadoll_Carvanha:: .string "CARVANHA$" -gTrickHouse_Mechadoll_BurnHeal:: @ 27ED4F +gTrickHouse_Mechadoll_BurnHeal:: .string "BURN HEAL$" -gTrickHouse_Mechadoll_HarborMail:: @ 27ED59 +gTrickHouse_Mechadoll_HarborMail:: .string "HARBOR MAIL$" -gTrickHouse_Mechadoll_SamePrice:: @ 27ED65 +gTrickHouse_Mechadoll_SamePrice:: .string "Same price$" -gTrickHouse_Mechadoll_60Yen:: @ 27ED70 +gTrickHouse_Mechadoll_60Yen:: .string "¥60$" -gTrickHouse_Mechadoll_55Yen:: @ 27ED74 +gTrickHouse_Mechadoll_55Yen:: .string "¥55$" -gTrickHouse_Mechadoll_Nothing:: @ 27ED78 +gTrickHouse_Mechadoll_Nothing:: .string "Nothing$" -gTrickHouse_Mechadoll_CostMore:: @ 27ED80 +gTrickHouse_Mechadoll_CostMore:: .string "They will cost more.$" -gTrickHouse_Mechadoll_CostLess:: @ 27ED95 +gTrickHouse_Mechadoll_CostLess:: .string "They will cost less.$" -gTrickHouse_Mechadoll_SamePrice2:: @ 27EDAA +gTrickHouse_Mechadoll_SamePrice2:: .string "Same price$" -gTrickHouse_Mechadoll_Male:: @ 27EDB5 +gTrickHouse_Mechadoll_Male:: .string "Male$" -gTrickHouse_Mechadoll_Female:: @ 27EDBA +gTrickHouse_Mechadoll_Female:: .string "Female$" -gTrickHouse_Mechadoll_Neither:: @ 27EDC1 +gTrickHouse_Mechadoll_Neither:: .string "Neither$" -gTrickHouse_Mechadoll_ElderlyMen:: @ 27EDC9 +gTrickHouse_Mechadoll_ElderlyMen:: .string "Elderly men$" -gTrickHouse_Mechadoll_ElderlyLadies:: @ 27EDD5 +gTrickHouse_Mechadoll_ElderlyLadies:: .string "Elderly ladies$" -gTrickHouse_Mechadoll_SameNumber:: @ 27EDE4 +gTrickHouse_Mechadoll_SameNumber:: .string "Same number$" -gTrickHouse_Mechadoll_None:: @ 27EDF0 +gTrickHouse_Mechadoll_None:: .string "None$" -gTrickHouse_Mechadoll_One:: @ 27EDF5 +gTrickHouse_Mechadoll_One:: .string "1$" -gTrickHouse_Mechadoll_Two:: @ 27EDF7 +gTrickHouse_Mechadoll_Two:: .string "2$" -gTrickHouse_Mechadoll_Two2:: @ 27EDF9 +gTrickHouse_Mechadoll_Two2:: .string "2$" -gTrickHouse_Mechadoll_Three:: @ 27EDFB +gTrickHouse_Mechadoll_Three:: .string "3$" -gTrickHouse_Mechadoll_Four:: @ 27EDFD +gTrickHouse_Mechadoll_Four:: .string "4$" -gTrickHouse_Mechadoll_Six:: @ 27EDFF +gTrickHouse_Mechadoll_Six:: .string "6$" -gTrickHouse_Mechadoll_Seven:: @ 27EE01 +gTrickHouse_Mechadoll_Seven:: .string "7$" -gTrickHouse_Mechadoll_Eight:: @ 27EE03 +gTrickHouse_Mechadoll_Eight:: .string "8$" -gTrickHouse_Mechadoll_Six2:: @ 27EE05 +gTrickHouse_Mechadoll_Six2:: .string "6$" -gTrickHouse_Mechadoll_Seven2:: @ 27EE07 +gTrickHouse_Mechadoll_Seven2:: .string "7$" -gTrickHouse_Mechadoll_Eight2:: @ 27EE09 +gTrickHouse_Mechadoll_Eight2:: .string "8$" diff --git a/data/text/tv.inc b/data/text/tv.inc index 311f2ddd2b49..68b842158439 100644 --- a/data/text/tv.inc +++ b/data/text/tv.inc @@ -1,4 +1,4 @@ -LilycoveCity_ContestLobby_Text_InterviewRequest: @ 827EF15 +LilycoveCity_ContestLobby_Text_InterviewRequest: .string "Oh, hello! You were in a POKéMON\n" .string "CONTEST, weren't you?\l" .string "It's easy to tell from your POKéMON.\p" @@ -7,13 +7,13 @@ LilycoveCity_ContestLobby_Text_InterviewRequest: @ 827EF15 .string "If I may, would you be willing to answer\n" .string "a few questions?$" -LilycoveCity_ContestLobby_Text_DescribeContest: @ 827EFE7 +LilycoveCity_ContestLobby_Text_DescribeContest: .string "Oh, you will?\n" .string "Thank you.\p" .string "Briefly, how would you describe the\n" .string "CONTEST you just entered?$" -LilycoveCity_ContestLobby_Text_WhatImageWhenYouHearX: @ 827F03E +LilycoveCity_ContestLobby_Text_WhatImageWhenYouHearX: .string "Ah, I see.\n" .string "That's a very edifying comment.\p" .string "You get a good feel for what\n" @@ -22,7 +22,7 @@ LilycoveCity_ContestLobby_Text_WhatImageWhenYouHearX: @ 827F03E .string "When you hear the word “{STR_VAR_2},”\n" .string "what image do you get?$" -LilycoveCity_ContestLobby_Text_ThatsAllForInterview: @ 827F0EC +LilycoveCity_ContestLobby_Text_ThatsAllForInterview: .string "I see!\p" .string "So that's how you imagine the concept\n" .string "of “{STR_VAR_2}” to be.\p" @@ -34,16 +34,16 @@ LilycoveCity_ContestLobby_Text_ThatsAllForInterview: @ 827F0EC .string "make it to television.\l" .string "I hope you'll look forward to it!$" -LilycoveCity_ContestLobby_Text_PleaseDoShareStoryWithMe: @ 827F1EF +LilycoveCity_ContestLobby_Text_PleaseDoShareStoryWithMe: .string "Oh, too bad…\p" .string "Well, if you come across a good story,\n" .string "please do share it with me.$" -LilycoveCity_ContestLobby_Text_LookingForwardToNextContest: @ 827F23F +LilycoveCity_ContestLobby_Text_LookingForwardToNextContest: .string "I'll be looking forward to your next\n" .string "POKéMON CONTEST.$" -gTVBravoTrainerText00:: @ 0827F275 +gTVBravoTrainerText00:: .string "Yeah!\n" .string "It's BRAVO TRAINER time!\p" .string "Today, we're going to profile a POKéMON\n" @@ -51,20 +51,20 @@ gTVBravoTrainerText00:: @ 0827F275 .string "Now, this POKéMON boasts a {STR_VAR_3}\n" .string "Rank in the {STR_VAR_2} Category.$" -gTVBravoTrainerText01:: @ 0827F304 +gTVBravoTrainerText01:: .string "Introducing {STR_VAR_2} the\n" .string "{STR_VAR_1}!\p" .string "The nickname {STR_VAR_2}…\p" .string "Even the nickname exudes an air that\n" .string "proclaims “{STR_VAR_3}”!$" -gTVBravoTrainerText02:: @ 0827F361 +gTVBravoTrainerText02:: .string "Anyway, when the TRAINER {STR_VAR_1}\n" .string "entered the POKéMON in a CONTEST,\l" .string "we managed to get a few impassioned\l" .string "quotes about the trusty partner.$" -gTVBravoTrainerText03:: @ 0827F3E4 +gTVBravoTrainerText03:: .string "Asked about the CONTEST afterwards,\n" .string "{STR_VAR_1} happily replied with a huge\l" .string "grin, “{STR_VAR_2}!”\p" @@ -73,7 +73,7 @@ gTVBravoTrainerText03:: @ 0827F3E4 .string "That line perfectly suits {STR_VAR_1}\n" .string "right now, I'd say!$" -gTVBravoTrainerText04:: @ 0827F49F +gTVBravoTrainerText04:: .string "Asked about the CONTEST afterwards,\n" .string "{STR_VAR_1} replied with a tinge of\l" .string "bitterness, “{STR_VAR_2}.”\p" @@ -82,7 +82,7 @@ gTVBravoTrainerText04:: @ 0827F49F .string "{STR_VAR_1}'s disappointment comes across\n" .string "loud and clear, I'd say!$" -gTVBravoTrainerText05:: @ 0827F565 +gTVBravoTrainerText05:: .string "Wouldn't you also like to know what\n" .string "{STR_VAR_1} imagines {STR_VAR_2} to be?\p" .string "You bet we did!\n" @@ -92,12 +92,12 @@ gTVBravoTrainerText05:: @ 0827F565 .string "That's what the concept of {STR_VAR_2}\n" .string "represents to {STR_VAR_1}!$" -gTVBravoTrainerText06:: @ 0827F624 +gTVBravoTrainerText06:: .string "The last move {STR_VAR_2} used by\n" .string "the {STR_VAR_1} is entirely about\l" .string "“{STR_VAR_3}”!$" -gTVBravoTrainerText07:: @ 0827F65C +gTVBravoTrainerText07:: .string "Bravo, {STR_VAR_1}!\n" .string "Bravo, {STR_VAR_2}!\p" .string "I hope we can count on seeing\n" @@ -105,10 +105,10 @@ gTVBravoTrainerText07:: @ 0827F65C .string "That's all the time we have!\n" .string "Until next time, see you!$" -gTVBravoTrainerText08:: @ 0827F6E6 +gTVBravoTrainerText08:: .string "Introducing the TRAINER's {STR_VAR_1}!$" -BattleFrontier_BattleTowerLobby_Text_InterviewRequest:: @ 0827F704 +BattleFrontier_BattleTowerLobby_Text_InterviewRequest:: .string "Hello! You're the TRAINER who just had\n" .string "a battle, right?\p" .string "I'm gathering interviews with TRAINERS\n" @@ -116,7 +116,7 @@ BattleFrontier_BattleTowerLobby_Text_InterviewRequest:: @ 0827F704 .string "May I get a few words from you about\n" .string "your impressions on battling?$" -BattleFrontier_BattleTowerLobby_Text_HowDidBattleTowerTurnOut:: @ 0827F7BA +BattleFrontier_BattleTowerLobby_Text_HowDidBattleTowerTurnOut:: .string "You will? Really?\n" .string "Thank you!\l" .string "Then, uh…\p" @@ -125,48 +125,48 @@ BattleFrontier_BattleTowerLobby_Text_HowDidBattleTowerTurnOut:: @ 0827F7BA .string "Were you satisfied with the battle?\n" .string "Or are you unhappy?$" -BattleFrontier_BattleTowerLobby_Text_SorryWeDisturbedYou:: @ 0827F84C +BattleFrontier_BattleTowerLobby_Text_SorryWeDisturbedYou:: .string "Oh…\n" .string "Sorry we disturbed you.\p" .string "Please give us an interview the next\n" .string "time you visit the BATTLE TOWER.$" -BattleFrontier_BattleTowerLobby_Text_ObviousYouHadGreatBattle:: @ 0827F8AE +BattleFrontier_BattleTowerLobby_Text_ObviousYouHadGreatBattle:: .string "Well, of course!\p" .string "That unmistakable look of satisfaction\n" .string "on your face…\p" .string "It's obvious that you've had a great\n" .string "battle.$" -BattleFrontier_BattleTowerLobby_Text_DifficultToMakeBattleTurnOutAsPlanned:: @ 0827F921 +BattleFrontier_BattleTowerLobby_Text_DifficultToMakeBattleTurnOutAsPlanned:: .string "Oh, I see…\p" .string "Well, it certainly is difficult to make a\n" .string "battle turn out exactly as planned.$" -BattleFrontier_BattleTowerLobby_Text_DescribeYourBattle:: @ 0827F97A +BattleFrontier_BattleTowerLobby_Text_DescribeYourBattle:: .string "Oh, oh, may I ask one more question?\p" .string "If you were to describe your\n" .string "impressions about this battle with\l" .string "one saying, what would it be?$" -BattleFrontier_BattleTowerLobby_Text_ThatsGreatLine:: @ 0827F9FD +BattleFrontier_BattleTowerLobby_Text_ThatsGreatLine:: .string "Oh, that is stunningly cool!\p" .string "That's a great line!\n" .string "I hope you'll do great next time, too.\p" .string "I hope to see you again!$" -BattleFrontier_BattleTowerLobby_Text_SilentType:: @ 0827FA6F +BattleFrontier_BattleTowerLobby_Text_SilentType:: .string "Oh, I see…\p" .string "Still, being the silent type is also\n" .string "cool, isn't it?\p" .string "I hope you'll give me the opportunity\n" .string "to share your thoughts again!$" -BattleFrontier_BattleTowerLobby_Text_LookingForwardToNextBattle:: @ 0827FAF3 +BattleFrontier_BattleTowerLobby_Text_LookingForwardToNextBattle:: .string "I'll be looking forward to your\n" .string "next battle!$" -gTVBravoTrainerBattleTowerText00:: @ 0827FB20 +gTVBravoTrainerBattleTowerText00:: .string "Yeah!\n" .string "It's BRAVO TRAINER time!\p" .string "Today, we're going to profile {STR_VAR_1},\n" @@ -174,12 +174,12 @@ gTVBravoTrainerBattleTowerText00:: @ 0827FB20 .string "For the challenge, {STR_VAR_1} entered\n" .string "one wicked {STR_VAR_2}.$" -gTVBravoTrainerBattleTowerText01:: @ 0827FBB3 +gTVBravoTrainerBattleTowerText01:: .string "The pair set a new record of {STR_VAR_2} wins\n" .string "in a row in {STR_VAR_1} competition!\l" .string "Bravo, TRAINER!$" -gTVBravoTrainerBattleTowerText02:: @ 0827FC04 +gTVBravoTrainerBattleTowerText02:: .string "The twosome finally succumbed to\n" .string "{STR_VAR_1} in match number {STR_VAR_2}.\l" .string "Nice try, TRAINER!\p" @@ -188,7 +188,7 @@ gTVBravoTrainerBattleTowerText02:: @ 0827FC04 .string "We asked the TRAINER for impressions\n" .string "on the match with {STR_VAR_1}.$" -gTVBravoTrainerBattleTowerText03:: @ 0827FCD1 +gTVBravoTrainerBattleTowerText03:: .string "The twosome won it all by defeating\n" .string "{STR_VAR_1}'s {STR_VAR_2} thoroughly.\l" .string "Bravo, TRAINER!\p" @@ -197,7 +197,7 @@ gTVBravoTrainerBattleTowerText03:: @ 0827FCD1 .string "We asked the TRAINER for impressions\n" .string "on the moment of glory.$" -gTVBravoTrainerBattleTowerText04:: @ 0827FD91 +gTVBravoTrainerBattleTowerText04:: .string "After a string of wins, the pair finally\n" .string "succumbed to {STR_VAR_1}'s {STR_VAR_2},\l" .string "their final hurdle.\p" @@ -208,7 +208,7 @@ gTVBravoTrainerBattleTowerText04:: @ 0827FD91 .string "We asked the TRAINER for impressions\n" .string "on battling the celebrity pair.$" -gTVBravoTrainerBattleTowerText05:: @ 0827FE93 +gTVBravoTrainerBattleTowerText05:: .string "This is what the TRAINER had to say:\n" .string "“I'm satisfied!”\p" .string "Now isn't that a refreshing reply?\n" @@ -218,7 +218,7 @@ gTVBravoTrainerBattleTowerText05:: @ 0827FE93 .string "I found out exactly how satisfied\n" .string "when I heard the TRAINER say this:$" -gTVBravoTrainerBattleTowerText06:: @ 0827FF89 +gTVBravoTrainerBattleTowerText06:: .string "This is what the TRAINER had to say:\n" .string "“I'm not satisfied…”\p" .string "Our TRAINER was obviously a little down\n" @@ -228,22 +228,22 @@ gTVBravoTrainerBattleTowerText06:: @ 0827FF89 .string "Anyway, I found out how dissatisfied\n" .string "our TRAINER was when I heard this:$" -gTVBravoTrainerBattleTowerText07:: @ 0828009C +gTVBravoTrainerBattleTowerText07:: .string "None$" -gTVBravoTrainerBattleTowerText08:: @ 082800A1 +gTVBravoTrainerBattleTowerText08:: .string "None$" -gTVBravoTrainerBattleTowerText09:: @ 082800A6 +gTVBravoTrainerBattleTowerText09:: .string "None$" -gTVBravoTrainerBattleTowerText10:: @ 082800AB +gTVBravoTrainerBattleTowerText10:: .string "None$" -gTVBravoTrainerBattleTowerText11:: @ 082800B0 +gTVBravoTrainerBattleTowerText11:: .string "“{STR_VAR_1}.”$" -gTVBravoTrainerBattleTowerText12:: @ 082800B6 +gTVBravoTrainerBattleTowerText12:: .string "“{STR_VAR_1}.”\n" .string "Now isn't that great?\p" .string "It really expresses {STR_VAR_2}'s joy,\n" @@ -252,7 +252,7 @@ gTVBravoTrainerBattleTowerText12:: @ 082800B6 .string "end… It really was what you'd call\l" .string "“{STR_VAR_1}”!$" -gTVBravoTrainerBattleTowerText13:: @ 0828013D +gTVBravoTrainerBattleTowerText13:: .string "“{STR_VAR_1}.”\n" .string "Now isn't that fitting?\p" .string "That battle with {STR_VAR_3} at the\n" @@ -261,7 +261,7 @@ gTVBravoTrainerBattleTowerText13:: @ 0828013D .string "{STR_VAR_2}'s disappointment comes across\n" .string "loud and clear, I'd say!$" -gTVBravoTrainerBattleTowerText14:: @ 082801E6 +gTVBravoTrainerBattleTowerText14:: .string "Bravo, {STR_VAR_1}!\n" .string "Bravo, {STR_VAR_2}!\p" .string "I hope we can count on seeing\n" @@ -269,7 +269,7 @@ gTVBravoTrainerBattleTowerText14:: @ 082801E6 .string "That's all the time we have!\n" .string "Until next time, see you!$" -SlateportCity_PokemonFanClub_Text_InterviewRequestHasName: @ 08280270 +SlateportCity_PokemonFanClub_Text_InterviewRequestHasName: .string "Wow!\p" .string "It's plain to see that you lavish your\n" .string "love on your {STR_VAR_1}.\p" @@ -280,36 +280,36 @@ SlateportCity_PokemonFanClub_Text_InterviewRequestHasName: @ 08280270 .string "Would you be willing to answer a few\n" .string "simple questions for me?$" -SlateportCity_PokemonFanClub_Text_HereGoesQuickAnswers: @ 0828034F +SlateportCity_PokemonFanClub_Text_HereGoesQuickAnswers: .string "Great! Thank you!\p" .string "Okay, here goes.\n" .string "I just need quick answers, okay?$" -SlateportCity_PokemonFanClub_Text_DescribeFeelingsFirstMetMon: @ 08280393 +SlateportCity_PokemonFanClub_Text_DescribeFeelingsFirstMetMon: .string "When you first met {STR_VAR_1},\n" .string "what did you feel?\p" .string "How would you describe your feelings\n" .string "at the time?$" -SlateportCity_PokemonFanClub_Text_LikenMonToSomethingYouLike: @ 082803EF +SlateportCity_PokemonFanClub_Text_LikenMonToSomethingYouLike: .string "Your {STR_VAR_1} is cared for lovingly.\p" .string "If you were to liken it to something\n" .string "that you like, what would it be?$" -SlateportCity_PokemonFanClub_Text_WhatAttractedYouAboutMon: @ 08280454 +SlateportCity_PokemonFanClub_Text_WhatAttractedYouAboutMon: .string "This question also relates to your\n" .string "beloved {STR_VAR_1}.\p" .string "What was it about {STR_VAR_1} that\n" .string "attracted you?$" -SlateportCity_PokemonFanClub_Text_WhatDoPokemonMeanToYou: @ 082804AC +SlateportCity_PokemonFanClub_Text_WhatDoPokemonMeanToYou: .string "Okay, that makes sense.\p" .string "The next question might be a little\n" .string "on the tough side.\p" .string "Here goes…\p" .string "What do POKéMON mean to you?$" -SlateportCity_PokemonFanClub_Text_ThatsAllForInterview: @ 08280523 +SlateportCity_PokemonFanClub_Text_ThatsAllForInterview: .string "I see!\p" .string "Hmhm…\p" .string "Okay!\n" @@ -321,16 +321,16 @@ SlateportCity_PokemonFanClub_Text_ThatsAllForInterview: @ 08280523 .string "Okay, that's all.\n" .string "Bye-bye!$" -SlateportCity_PokemonFanClub_Text_HereIfYouGetUrgeToTellMe: @ 082805E2 +SlateportCity_PokemonFanClub_Text_HereIfYouGetUrgeToTellMe: .string "Oh, okay…\p" .string "Well, if you get the urge to tell me\n" .string "about POKéMON, I'll be here!$" -SlateportCity_PokemonFanClub_Text_EnjoyDoingInterviews: @ 0828062E +SlateportCity_PokemonFanClub_Text_EnjoyDoingInterviews: .string "I enjoy this job--you get to learn\n" .string "about POKéMON by doing interviews.$" -SlateportCity_PokemonFanClub_Text_InterviewRequest: @ 08280674 +SlateportCity_PokemonFanClub_Text_InterviewRequest: .string "Hi, you seem to be very close to your\n" .string "{STR_VAR_1}.\p" .string "Do you know what?\n" @@ -340,12 +340,12 @@ SlateportCity_PokemonFanClub_Text_InterviewRequest: @ 08280674 .string "I'm wondering if you'd be willing to tell\n" .string "me a little about your {STR_VAR_1}?$" -SlateportCity_PokemonFanClub_Text_TellMeAnythingAboutYourMon: @ 0828073B +SlateportCity_PokemonFanClub_Text_TellMeAnythingAboutYourMon: .string "Wow, thank you!\p" .string "Okay, then, please tell me anything\n" .string "you'd like about your {STR_VAR_1}.$" -SlateportCity_PokemonFanClub_Text_ThatsAllForInterview2: @ 08280789 +SlateportCity_PokemonFanClub_Text_ThatsAllForInterview2: .string "Wow…\n" .string "That's an interesting account.\p" .string "You really are tight with {STR_VAR_1},\n" @@ -358,7 +358,7 @@ SlateportCity_PokemonFanClub_Text_ThatsAllForInterview2: @ 08280789 .string "Okay, that's all.\n" .string "Bye-bye!$" -gTVFanClubOpinionsText00:: @ 08280886 +gTVFanClubOpinionsText00:: .string "WE ARE THE POKéMON FAN CLUB!\p" .string "We're on the air!\p" .string "On this program, we get your opinions,\n" @@ -378,7 +378,7 @@ gTVFanClubOpinionsText00:: @ 08280886 .string "Hoo-hah!\p" .string "Let's shout!$" -gTVFanClubOpinionsText01:: @ 08280A44 +gTVFanClubOpinionsText01:: .string "We asked {STR_VAR_1}, “When you first\n" .string "laid eyes on your {STR_VAR_2}, what was\l" .string "your initial thought?”\p" @@ -387,7 +387,7 @@ gTVFanClubOpinionsText01:: @ 08280A44 .string "Doesn't it bring back memories of those\n" .string "days long gone by?$" -gTVFanClubOpinionsText02:: @ 08280AFC +gTVFanClubOpinionsText02:: .string "We asked {STR_VAR_1}, “If you were to\n" .string "liken your {STR_VAR_2} to something,\l" .string "it would be…”\p" @@ -398,7 +398,7 @@ gTVFanClubOpinionsText02:: @ 08280AFC .string "feeling the TRAINER has for\l" .string "{STR_VAR_2}.$" -gTVFanClubOpinionsText03:: @ 08280BC4 +gTVFanClubOpinionsText03:: .string "And let's see…\n" .string "What was it about that {STR_VAR_2}\l" .string "that so attracted {STR_VAR_1}?\p" @@ -408,7 +408,7 @@ gTVFanClubOpinionsText03:: @ 08280BC4 .string "The TRAINER's love for the {STR_VAR_2}\n" .string "comes across loud and clear!$" -gTVFanClubOpinionsText04:: @ 08280C7A +gTVFanClubOpinionsText04:: .string "Hm? Oh, there's still more.\n" .string "Let's check it out!\p" .string "Let me see, now…\p" @@ -427,7 +427,7 @@ gTVFanClubOpinionsText04:: @ 08280C7A .string "All together now…\p" .string "“{STR_VAR_3}!”$" -gTVFanClubText00:: @ 08280DEE +gTVFanClubText00:: .string "WE ARE THE POKéMON FAN CLUB!\p" .string "We're on the air!\p" .string "Today, we'll get rolling with the\n" @@ -444,34 +444,34 @@ gTVFanClubText00:: @ 08280DEE .string "can express love for the {STR_VAR_2}!\l" .string "Hmhm…$" -gTVFanClubText01:: @ 08280F69 +gTVFanClubText01:: .string "Whoah!\n" .string "What an amazing letter!$" -gTVFanClubText02:: @ 08280F88 +gTVFanClubText02:: .string "I loved it, so here it is again!$" -gTVFanClubText03:: @ 08280FA9 +gTVFanClubText03:: .string "A great letter bears reading over\n" .string "and over!$" -gTVFanClubText04:: @ 08280FD5 +gTVFanClubText04:: .string "The bit “{STR_VAR_3},” that really\n" .string "accentuates emotional impact!\p" .string "It's a great letter that has real\n" .string "heartfelt depth!$" -gTVFanClubText05:: @ 08281040 +gTVFanClubText05:: .string "Especially that “{STR_VAR_3}” bit!\p" .string "I love how “{STR_VAR_3}” is used!$" -gTVFanClubText06:: @ 08281073 +gTVFanClubText06:: .string "By the way, and it's not important,\n" .string "but “{STR_VAR_3}” is a great saying.\p" .string "I've been using “{STR_VAR_3}” a lot\n" .string "in conversations lately.$" -gTVFanClubText07:: @ 082810E7 +gTVFanClubText07:: .string "If I had to score this letter,\n" .string "I'd give it {STR_VAR_3} points.\p" .string "Next time, I'll be expecting an even\n" @@ -479,7 +479,7 @@ gTVFanClubText07:: @ 082810E7 .string "A-whoops, will you look at the time?\n" .string "Time to say good-bye until next time!$" -SlateportCity_OceanicMuseum_1F_Text_InterviewRequest: @ 082811A0 +SlateportCity_OceanicMuseum_1F_Text_InterviewRequest: .string "Oh?\n" .string "Do you perhaps like POKéMON?\p" .string "I'm on assignment with the TV network.\p" @@ -488,37 +488,37 @@ SlateportCity_OceanicMuseum_1F_Text_InterviewRequest: @ 082811A0 .string "If you don't mind, could you tell me\n" .string "something about yourself?$" -SlateportCity_OceanicMuseum_1F_Text_InterviewRequestShort: @ 0828126D +SlateportCity_OceanicMuseum_1F_Text_InterviewRequestShort: .string "I'm gathering stories on POKéMON and\n" .string "TRAINERS that occurred recently.\p" .string "If you don't mind, could you tell me\n" .string "something about yourself?$" -SlateportCity_OceanicMuseum_1F_Text_TellMeExperienceInvolvingPokemon: @ 082812F2 +SlateportCity_OceanicMuseum_1F_Text_TellMeExperienceInvolvingPokemon: .string "Oh, you will?\n" .string "Thank you!\p" .string "Then, please, tell me anything of\n" .string "interest that you experienced recently\l" .string "involving POKéMON.$" -SlateportCity_OceanicMuseum_1F_Text_LetMeKnowIfYouHaveStory: @ 08281367 +SlateportCity_OceanicMuseum_1F_Text_LetMeKnowIfYouHaveStory: .string "Oh, I see…\p" .string "Well, if you do have an interesting\n" .string "story to tell, please let me know.$" -SlateportCity_OceanicMuseum_1F_Text_ThatsAllForInterview: @ 082813B9 +SlateportCity_OceanicMuseum_1F_Text_ThatsAllForInterview: .string "Oh, what an uplifting story!\p" .string "I'll be sure to get your story told\n" .string "on television.\p" .string "It should be aired sometime, I think,\n" .string "so please look forward to it.$" -SlateportCity_OceanicMuseum_1F_Text_BetterWriteUpStory: @ 0828144D +SlateportCity_OceanicMuseum_1F_Text_BetterWriteUpStory: .string "Hmmm…\n" .string "I've got a good story for a TV program.\p" .string "I'd better write it up in a hurry!$" -gTVRecentHappeningsText00:: @ 0828149E +gTVRecentHappeningsText00:: .string "Hello, it's time for RECENT HAPPENINGS.\p" .string "For POKéMON TRAINERS, every day\n" .string "is a storybook tale.\p" @@ -530,26 +530,26 @@ gTVRecentHappeningsText00:: @ 0828149E .string "Let's find out.\p" .string "Let's see…$" -gTVRecentHappeningsText01:: @ 082815AF +gTVRecentHappeningsText01:: .string "Wasn't that enlightening?\p" .string "The story gives you a clear idea of what\n" .string "{STR_VAR_1} has experienced recently.\l" .string "It's as if we were there as witnesses!$" -gTVRecentHappeningsText02:: @ 08281636 +gTVRecentHappeningsText02:: .string "“{STR_VAR_3}.” That\n" .string "accents the tale and gives it depth.$" -gTVRecentHappeningsText03:: @ 08281666 +gTVRecentHappeningsText03:: .string "“{STR_VAR_3}.”\n" .string "That gives the tale a sense of place.\l" .string "It lets us envision the tale's setting.$" -gTVRecentHappeningsText04:: @ 082816BA +gTVRecentHappeningsText04:: .string "The “{STR_VAR_3}”\n" .string "section of the tale is very expressive.$" -gTVRecentHappeningsText05:: @ 082816EB +gTVRecentHappeningsText05:: .string "{STR_VAR_1} has recounted a wonderful\n" .string "tale involving POKéMON.\p" .string "And now {STR_VAR_1}'s tale is indelibly\n" @@ -557,7 +557,7 @@ gTVRecentHappeningsText05:: @ 082816EB .string "That's it for today.\n" .string "Please tune in next time.$" -gTVMassOutbreakText00:: @ 0828178A +gTVMassOutbreakText00:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "We've just received word of a very\n" @@ -573,7 +573,7 @@ gTVMassOutbreakText00:: @ 0828178A .string "{STR_VAR_2} in the wild.\p" .string "That's the news on POKéMON NEWS.$" -gTV3CheersForPokeblocksText00:: @ 082818F4 +gTV3CheersForPokeblocksText00:: .string "MC: We hope you're in good cheer,\n" .string "“3 CHEERS FOR {POKEBLOCK}S” is here!\p" .string "Today, we examine the {POKEBLOCK} blended\n" @@ -583,78 +583,78 @@ gTV3CheersForPokeblocksText00:: @ 082818F4 .string "… … … … … …\n" .string "… … … … … …$" -gTV3CheersForPokeblocksText01:: @ 082819C7 +gTV3CheersForPokeblocksText01:: .string "GULPIN: Gubi! Gubii!\p" .string "MC: And the verdict is very {STR_VAR_1}!\n" .string "GULPIN says it tastes “{STR_VAR_2}!”\p" .string "Thank you so much, {STR_VAR_3}!$" -gTV3CheersForPokeblocksText02:: @ 08281A2F +gTV3CheersForPokeblocksText02:: .string "{STR_VAR_1}'s blending performance\n" .string "left something to be desired.\p" .string "If this TRAINER could blend better,\n" .string "the {POKEBLOCK} would be much tastier.$" -gTV3CheersForPokeblocksText03:: @ 08281AAC +gTV3CheersForPokeblocksText03:: .string "GULPIN: Gubi! Gubii!\p" .string "MC: Hmm… It's too {STR_VAR_1}.\n" .string "GULPIN says it tastes “{STR_VAR_2}!”\p" .string "It looks like {STR_VAR_3}'s errors\n" .string "hurt the blending quality…$" -gTV3CheersForPokeblocksText04:: @ 08281B28 +gTV3CheersForPokeblocksText04:: .string "It's too bad that {STR_VAR_1}'s\n" .string "leading effort went to waste.\p" .string "Let's hope {STR_VAR_2} can turn in\n" .string "a better showing next time!$" -gTV3CheersForPokeblocksText05:: @ 08281B93 +gTV3CheersForPokeblocksText05:: .string "Tune in next time!\n" .string "Our slogan is “3 CHEERS FOR {POKEBLOCK}S!”$" -LilycoveCity_PokemonTrainerFanClub_Text_WhatsYourOpinionOfTrainer:: @ 8281BCB +LilycoveCity_PokemonTrainerFanClub_Text_WhatsYourOpinionOfTrainer:: .string "Hi, there!\p" .string "I'm a big fan of {STR_VAR_1}.\n" .string "What's your opinion of {STR_VAR_1}?$" -LilycoveCity_PokemonTrainerFanClub_Text_ThatsWhatYouThink:: @ 8281C06 +LilycoveCity_PokemonTrainerFanClub_Text_ThatsWhatYouThink:: .string "I see, I see. That's what you think\n" .string "about the TRAINER.$" -LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer:: @ 8281C3D +LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer:: .string "Have you completely forgotten\n" .string "about {STR_VAR_1}?$" -LilycoveCity_PokemonTrainerFanClub_Text_WhatsYourOpinionOfTrainer2:: @ 8281C65 +LilycoveCity_PokemonTrainerFanClub_Text_WhatsYourOpinionOfTrainer2:: .string "I'm a big fan of {STR_VAR_1}.\n" .string "What's your opinion of {STR_VAR_1}?$" -LilycoveCity_PokemonTrainerFanClub_Text_HowStrongRateTrainer:: @ 8281C95 +LilycoveCity_PokemonTrainerFanClub_Text_HowStrongRateTrainer:: .string "How strong would you rate {STR_VAR_1}\n" .string "on a scale of one hundred?$" -LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer2:: @ 8281CCD +LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer2:: .string "Have you completely forgotten\n" .string "about {STR_VAR_1}?$" -LilycoveCity_PokemonTrainerFanClub_Text_YouShouldMeetTrainer:: @ 8281CF5 +LilycoveCity_PokemonTrainerFanClub_Text_YouShouldMeetTrainer:: .string "Oh, I see!\n" .string "You should meet {STR_VAR_1} sometime.\l" .string "I'm sure you'll become a fan, too!$" -LilycoveCity_PokemonTrainerFanClub_Text_ThankYouIllShareThisInfo:: @ 8281D40 +LilycoveCity_PokemonTrainerFanClub_Text_ThankYouIllShareThisInfo:: .string "I see, I see.\p" .string "Thank you!\n" .string "That's very useful to know.\p" .string "I'll share this information with other\n" .string "{STR_VAR_1} fans and discuss it.$" -LilycoveCity_PokemonTrainerFanClub_HopeYouCatchTVSpecial:: @ 8281DB4 +LilycoveCity_PokemonTrainerFanClub_HopeYouCatchTVSpecial:: .string "There's going to be a TV special on\n" .string "{STR_VAR_1} very soon.\p" .string "I hope you catch it!$" -gTVTrainerFanClubSpecialText00:: @ 08281DFB +gTVTrainerFanClubSpecialText00:: .string "TRAINER FAN CLUB\n" .string "{STR_VAR_1} SPECIAL!\p" .string "This is a special presentation for\n" @@ -673,31 +673,31 @@ gTVTrainerFanClubSpecialText00:: @ 08281DFB .string "{STR_VAR_2} also scored {STR_VAR_1}'s\n" .string "strength from 0 to 100.$" -gTVTrainerFanClubSpecialText01:: @ 08281F90 +gTVTrainerFanClubSpecialText01:: .string "The score was {STR_VAR_3} points!\n" .string "That is a very high score indeed!\p" .string "{STR_VAR_2} must obviously hold\n" .string "{STR_VAR_1} in very high esteem.$" -gTVTrainerFanClubSpecialText02:: @ 08281FFA +gTVTrainerFanClubSpecialText02:: .string "The score was {STR_VAR_3} points!\n" .string "That is quite a good score.\p" .string "{STR_VAR_2} must consider\n" .string "{STR_VAR_1} to be a rival.$" -gTVTrainerFanClubSpecialText03:: @ 08282052 +gTVTrainerFanClubSpecialText03:: .string "The score was {STR_VAR_3} points!\n" .string "That's a rather weak score.\p" .string "{STR_VAR_2} must consider\n" .string "{STR_VAR_1} to be a mere sidekick.$" -gTVTrainerFanClubSpecialText04:: @ 082820B2 +gTVTrainerFanClubSpecialText04:: .string "The score was {STR_VAR_3} point(s)!\n" .string "That's a terrible score.\p" .string "{STR_VAR_2} must consider\n" .string "{STR_VAR_1} to be an underling.$" -gTVTrainerFanClubSpecialText05:: @ 0828210E +gTVTrainerFanClubSpecialText05:: .string "There you have it, folks!\p" .string "I think we all learned something\n" .string "new about {STR_VAR_1}.\p" @@ -705,7 +705,7 @@ gTVTrainerFanClubSpecialText05:: @ 0828210E .string "{STR_VAR_2}'s words.\p" .string "{STR_VAR_3} {STR_VAR_1}!$" -gTVNameRaterText00:: @ 0828218A +gTVNameRaterText00:: .string "And now, it's time for…\n" .string "THE NAME RATER SHOW.\p" .string "I tell your POKéMON's fortune from\n" @@ -719,103 +719,103 @@ gTVNameRaterText00:: @ 0828218A .string "Hmm…\n" .string "This nickname is…$" -gTVNameRaterText01:: @ 0828229E +gTVNameRaterText01:: .string "A nickname that hints at talent in many\n" .string "different ways.\p" .string "I urge this TRAINER to take courage\n" .string "and take on many challenges.$" -gTVNameRaterText02:: @ 08282317 +gTVNameRaterText02:: .string "A nickname that perfectly complements\n" .string "{STR_VAR_1}, the TRAINER's name.\p" .string "It suggests that you will forge a fine\n" .string "partnership with precise timing.$" -gTVNameRaterText03:: @ 0828239D +gTVNameRaterText03:: .string "A nickname fit for a unique individual\n" .string "of a POKéMON!\p" .string "If raised properly, this POKéMON's\n" .string "uniqueness will bloom excessively!$" -gTVNameRaterText04:: @ 08282418 +gTVNameRaterText04:: .string "A nickname that will nurture the caring\n" .string "and compassionate side of POKéMON.\p" .string "If raised properly, this POKéMON will\n" .string "come to exhibit real warmth!$" -gTVNameRaterText05:: @ 082824A6 +gTVNameRaterText05:: .string "A very fine nickname that hints at\n" .string "greatness to come.\p" .string "I am intrigued about what the future\n" .string "holds in store for this POKéMON.$" -gTVNameRaterText06:: @ 08282522 +gTVNameRaterText06:: .string "A good nickname that should make the\n" .string "POKéMON hale and hearty!\p" .string "That POKéMON should remain fit and\n" .string "robust for a long, long time.$" -gTVNameRaterText07:: @ 082825A1 +gTVNameRaterText07:: .string "A good nickname that should make the\n" .string "POKéMON very active!\p" .string "I should think that this POKéMON will be\n" .string "a strong performer in battles.$" -gTVNameRaterText08:: @ 08282623 +gTVNameRaterText08:: .string "An appealing nickname that should make\n" .string "the POKéMON very charming!\p" .string "I don't doubt that this POKéMON will be\n" .string "quite the charmer in POKéMON CONTESTS.$" -gTVNameRaterText09:: @ 082826B4 +gTVNameRaterText09:: .string "The nickname {STR_VAR_1} is rooted by\n" .string "the letter “{STR_VAR_3}.”\p" .string "That letter is supported by the first\n" .string "letter “{STR_VAR_2},” which gives it a solid sense\l" .string "of presence as a nickname.$" -gTVNameRaterText10:: @ 0828274D +gTVNameRaterText10:: .string "The nickname {STR_VAR_1} is very\n" .string "shapely in a pleasing manner.\p" .string "The presence of the letters “{STR_VAR_2}” and\n" .string "“{STR_VAR_3}”--now that is remarkably good!$" -gTVNameRaterText11:: @ 082827CB +gTVNameRaterText11:: .string "The nickname {STR_VAR_1}--it has a\n" .string "sublime, flowing feel to it.\p" .string "The flow from the initial letter “{STR_VAR_2}” to\n" .string "“{STR_VAR_3}” is especially wonderful.$" -gTVNameRaterText12:: @ 08282849 +gTVNameRaterText12:: .string "Let's examine other examples of fine\n" .string "nicknames, shall we?$" -gTVNameRaterText13:: @ 08282883 +gTVNameRaterText13:: .string "Try this example. Take a part of the\n" .string "TRAINER name of {STR_VAR_1}, and end\l" .string "up with the fine nickname {STR_VAR_2}{STR_VAR_3}.$" -gTVNameRaterText14:: @ 082828E4 +gTVNameRaterText14:: .string "The nickname {STR_VAR_2}{STR_VAR_3} would also work\n" .string "quite well.$" -gTVNameRaterText15:: @ 08282912 +gTVNameRaterText15:: .string "The POKéMON's species name of\n" .string "{STR_VAR_2} could be used as the basis\l" .string "for making the nickname {STR_VAR_1}{STR_VAR_3}.$" -gTVNameRaterText16:: @ 0828296C +gTVNameRaterText16:: .string "{STR_VAR_1}{STR_VAR_3} would also be an effective\n" .string "nickname.$" -gTVNameRaterText17:: @ 08282996 +gTVNameRaterText17:: .string "What should always be avoided is using\n" .string "another POKéMON species name.\p" .string "For instance, avoid taking the name of\n" .string "{STR_VAR_2} to make the nickname {STR_VAR_1}{STR_VAR_3}.\l" .string "That is unacceptable.$" -gTVNameRaterText18:: @ 08282A36 +gTVNameRaterText18:: .string "I must say that {STR_VAR_1} is quite\n" .string "a good nickname.\p" .string "I hope that the TRAINER will continue\n" @@ -823,7 +823,7 @@ gTVNameRaterText18:: @ 08282A36 .string "That's it for today's show.\n" .string "May we meet again.$" -gTVPokemonAnglerText00:: @ 08282ACF +gTVPokemonAnglerText00:: .string "{STR_VAR_2} ANGLER\p" .string "ANNOUNCER: Hello! Today, we'll get tips\n" .string "on fishing for {STR_VAR_2}.\p" @@ -850,7 +850,7 @@ gTVPokemonAnglerText00:: @ 08282ACF .string "Until our next broadcast, farewell and\n" .string "good fishing to you all!$" -gTVPokemonAnglerText01:: @ 08282D7C +gTVPokemonAnglerText01:: .string "{STR_VAR_2} ANGLER\p" .string "ANNOUNCER: Hello! Today, we'll get tips\n" .string "on fishing for {STR_VAR_2}.\p" @@ -872,7 +872,7 @@ gTVPokemonAnglerText01:: @ 08282D7C .string "Until our next broadcast, farewell and\n" .string "good fishing to you all!$" -gTVPokemonTodayFailedText00:: @ 08282F9B +gTVPokemonTodayFailedText00:: .string "Hello!\p" .string "It's time for POKéMON TODAY!\p" .string "BIG SIS: Hi! Is everyone peachy and\n" @@ -882,7 +882,7 @@ gTVPokemonTodayFailedText00:: @ 08282F9B .string "BIG BRO: Yeah! That's what we're going\n" .string "to do!$" -gTVPokemonTodayFailedText01:: @ 0828304D +gTVPokemonTodayFailedText01:: .string "Oh!\n" .string "Speaking of {STR_VAR_1}…\p" .string "BIG SIS, I saw the TRAINER with my very\n" @@ -894,7 +894,7 @@ gTVPokemonTodayFailedText01:: @ 0828304D .string "{STR_VAR_1}, who was trying to catch the\l" .string "POKéMON {STR_VAR_3}, but…$" -gTVPokemonTodayFailedText02:: @ 08283135 +gTVPokemonTodayFailedText02:: .string "The POKéMON managed to get away!\p" .string "It ended up wasting this many\n" .string "POKé BALLS: {STR_VAR_2}!\p" @@ -902,7 +902,7 @@ gTVPokemonTodayFailedText02:: @ 08283135 .string "of frustration on {STR_VAR_1}'s face when\l" .string "the POKéMON took off!$" -gTVPokemonTodayFailedText03:: @ 082831DF +gTVPokemonTodayFailedText03:: .string "But {STR_VAR_1} goofed and made the\n" .string "POKéMON faint!\p" .string "It ended up wasting this many\n" @@ -911,7 +911,7 @@ gTVPokemonTodayFailedText03:: @ 082831DF .string "of stunned dismay on {STR_VAR_1}'s face\l" .string "when the POKéMON fainted!$" -gTVPokemonTodayFailedText04:: @ 08283294 +gTVPokemonTodayFailedText04:: .string "BIG SIS: Hey, there!\n" .string "That's not nice!\p" .string "You shouldn't be laughing at other\n" @@ -921,7 +921,7 @@ gTVPokemonTodayFailedText04:: @ 08283294 .string "BIG BRO: That's true!\n" .string "Sorry for laughing.$" -gTVPokemonTodayFailedText05:: @ 08283337 +gTVPokemonTodayFailedText05:: .string "BIG SIS: Bufufu…\p" .string "BIG BRO: Hey!\n" .string "You just laughed, too!\p" @@ -932,7 +932,7 @@ gTVPokemonTodayFailedText05:: @ 08283337 .string "What a shame!\p" .string "BIG BRO: …$" -gTVPokemonTodayFailedText06:: @ 082833C6 +gTVPokemonTodayFailedText06:: .string "BIG SIS: That's enough silliness!\n" .string "Let's look at today's POKéMON…\p" .string "Huh?\n" @@ -943,7 +943,7 @@ gTVPokemonTodayFailedText06:: @ 082833C6 .string "BIG SIS: Hey, don't end the show\n" .string "without me!$" -gTVPokemonTodaySuccessfulText00:: @ 082834A0 +gTVPokemonTodaySuccessfulText00:: .string "Hello!\p" .string "It's time for POKéMON TODAY!\p" .string "BIG SIS: Hi! Is everyone peachy and\n" @@ -953,30 +953,30 @@ gTVPokemonTodaySuccessfulText00:: @ 082834A0 .string "BIG BRO: Yeah! That's what we're going\n" .string "to do!$" -gTVPokemonTodaySuccessfulText01:: @ 08283552 +gTVPokemonTodaySuccessfulText01:: .string "BIG SIS: {STR_VAR_1} gave the nickname\n" .string "{STR_VAR_3} to the {STR_VAR_2}!\p" .string "It sounds like {STR_VAR_3} is getting\n" .string "good, loving care!$" -gTVPokemonTodaySuccessfulText02:: @ 082835AE +gTVPokemonTodaySuccessfulText02:: .string "BIG BRO: The TRAINER had to throw this\n" .string "many POKé BALLS to catch it: {STR_VAR_3}!\p" .string "It finally took a single {STR_VAR_2}\n" .string "to catch it!$" -gTVPokemonTodaySuccessfulText03:: @ 0828361F +gTVPokemonTodaySuccessfulText03:: .string "BIG SIS: If it was that easy to catch,\n" .string "it must have been destiny that brought\l" .string "{STR_VAR_1} and the {STR_VAR_2} together!$" -gTVPokemonTodaySuccessfulText04:: @ 08283685 +gTVPokemonTodaySuccessfulText04:: .string "BIG SIS: Wow! That's so neat!\p" .string "But you know what they say, a POKéMON\n" .string "that takes a lot of effort to catch\l" .string "earns the love of its TRAINER!$" -gTVPokemonTodaySuccessfulText05:: @ 0828370C +gTVPokemonTodaySuccessfulText05:: .string "BIG SIS: {STR_VAR_1}'s {STR_VAR_2} is a\n" .string "memorable POKéMON because it took an\l" .string "invaluable MASTER BALL to catch!\p" @@ -984,20 +984,20 @@ gTVPokemonTodaySuccessfulText05:: @ 0828370C .string "BIG SIS: {STR_VAR_1} must have really\n" .string "wanted that {STR_VAR_2}, for sure!$" -gTVPokemonTodaySuccessfulText06:: @ 082837C2 +gTVPokemonTodaySuccessfulText06:: .string "BIG BRO: Then to give the nickname\n" .string "{STR_VAR_3} to that {STR_VAR_2}…\p" .string "You really get a good idea about\n" .string "{STR_VAR_1}'s TRAINER sense.\p" .string "BIG SIS: I second that notion!$" -gTVPokemonTodaySuccessfulText07:: @ 08283848 +gTVPokemonTodaySuccessfulText07:: .string "If it were me, I'd give that nickname\n" .string "to something like this {STR_VAR_3}!\p" .string "BIG BRO: Whoa! That could be the start\n" .string "of something new!$" -gTVPokemonTodaySuccessfulText08:: @ 082838C2 +gTVPokemonTodaySuccessfulText08:: .string "{STR_VAR_2} the {STR_VAR_1}?\n" .string "Doesn't that sound perfect?\p" .string "The letters and everything--they\n" @@ -1005,7 +1005,7 @@ gTVPokemonTodaySuccessfulText08:: @ 082838C2 .string "{STR_VAR_1}!\p" .string "BIG BRO: Yeah, true, that!$" -gTVPokemonTodaySuccessfulText09:: @ 0828394A +gTVPokemonTodaySuccessfulText09:: .string "As far as I know, no TRAINER has ever\n" .string "given the nickname {STR_VAR_2} to their\l" .string "{STR_VAR_1}!\p" @@ -1013,13 +1013,13 @@ gTVPokemonTodaySuccessfulText09:: @ 0828394A .string "great taste the TRAINER has in picking\l" .string "nicknames!$" -gTVPokemonTodaySuccessfulText10:: @ 082839EA +gTVPokemonTodaySuccessfulText10:: .string "The next time I catch a POKéMON,\n" .string "I should give it the name {STR_VAR_2}.\p" .string "BIG BRO: Huh? Me, too!\n" .string "I'll use the nickname {STR_VAR_2}, too!$" -gTVPokemonTodaySuccessfulText11:: @ 08283A5F +gTVPokemonTodaySuccessfulText11:: .string "BIG SIS: Oh, no!\n" .string "Look at the time!\p" .string "Well, gang, this is it for today.\n" @@ -1027,7 +1027,7 @@ gTVPokemonTodaySuccessfulText11:: @ 08283A5F .string "BIG BRO: Remember, it could be your\n" .string "POKéMON in the spotlight next time!$" -SmartShopper_Text_Intro:: @ 08283B05 +SmartShopper_Text_Intro:: .string "Hello!\p" .string "It's time for TODAY'S SMART SHOPPER.\p" .string "INTERVIEWER: How are you, viewers?\p" @@ -1036,7 +1036,7 @@ SmartShopper_Text_Intro:: @ 08283B05 .string "Let's check on what the hot sellers\n" .string "have been recently.$" -SmartShopper_Text_ClerkNormal:: @ 08283BAF +SmartShopper_Text_ClerkNormal:: .string "Let's interview the clerk to get the\n" .string "lowdown.\p" .string "Hi, how's your business?\p" @@ -1046,7 +1046,7 @@ SmartShopper_Text_ClerkNormal:: @ 08283BAF .string "Why, just the other day a TRAINER\n" .string "named {STR_VAR_1} bought {STR_VAR_3}.$" -SmartShopper_Text_RandomComment1:: @ 08283C81 +SmartShopper_Text_RandomComment1:: .string "INTERVIEWER: The TRAINER bought\n" .string "{STR_VAR_3} {STR_VAR_2}S? That's a haul!\p" .string "If I may say so, {STR_VAR_1} must have\n" @@ -1055,13 +1055,13 @@ SmartShopper_Text_RandomComment1:: @ 08283C81 .string "For traveling, {STR_VAR_2}S are so\n" .string "important!$" -SmartShopper_Text_RandomComment2:: @ 08283D32 +SmartShopper_Text_RandomComment2:: .string "INTERVIEWER: Speaking of the item\n" .string "{STR_VAR_2}, I just bought {STR_VAR_3} of\l" .string "them recently.\p" .string "After all, {STR_VAR_2}'s a great item!$" -SmartShopper_Text_RandomComment3:: @ 08283D99 +SmartShopper_Text_RandomComment3:: .string "INTERVIEWER: {STR_VAR_2}?!\n" .string "But {STR_VAR_3} of them?!\p" .string "I didn't think there would be anyone\n" @@ -1069,7 +1069,7 @@ SmartShopper_Text_RandomComment3:: @ 08283D99 .string "My goodness, I can only afford one or\n" .string "two at a time…$" -SmartShopper_Text_RandomComment4:: @ 08283E28 +SmartShopper_Text_RandomComment4:: .string "INTERVIEWER: One time, I bought\n" .string "a whole lot of the item {STR_VAR_2}.\p" .string "But it turned out to be too many.\n" @@ -1079,21 +1079,21 @@ SmartShopper_Text_RandomComment4:: @ 08283E28 .string "Oops!\p" .string "There's no point talking about me!$" -SmartShopper_Text_SecondItem:: @ 08283F01 +SmartShopper_Text_SecondItem:: .string "CLERK: {STR_VAR_1} also bought the item\n" .string "{STR_VAR_2} in bulk, taking {STR_VAR_3}.\p" .string "INTERVIEWER: Oh, that's smart.\n" .string "{STR_VAR_2}'s a very good item, too.$" -SmartShopper_Text_ThirdItem:: @ 08283F72 +SmartShopper_Text_ThirdItem:: .string "CLERK: And, the TRAINER also bought\n" .string "{STR_VAR_3} of the item {STR_VAR_2}.$" -SmartShopper_Text_DuringSale:: @ 08283FA9 +SmartShopper_Text_DuringSale:: .string "CLERK: Plus, it was during a big sale.\n" .string "That's smart shopping.$" -SmartShopper_Text_OutroNormal:: @ 08283FE7 +SmartShopper_Text_OutroNormal:: .string "INTERVIEWER: Hmm… {STR_VAR_1} sounds like\n" .string "quite the shrewd bargain hunter!\p" .string "In total, {STR_VAR_1}'s purchases came to…\p" @@ -1102,11 +1102,11 @@ SmartShopper_Text_OutroNormal:: @ 08283FE7 .string "Oops! We're out of time!\n" .string "See you on our next broadcast!$" -SmartShopper_Text_IsVIP:: @ 0828409E +SmartShopper_Text_IsVIP:: .string "CLERK: {STR_VAR_1} is a VIP customer,\n" .string "no doubt about it.$" -SmartShopper_Text_ClerkMax:: @ 082840CE +SmartShopper_Text_ClerkMax:: .string "Let's interview the clerk to get the\n" .string "lowdown.\p" .string "Hi, how's your business?\p" @@ -1127,7 +1127,7 @@ SmartShopper_Text_ClerkMax:: @ 082840CE .string "CLERK: {STR_VAR_1} is a VIP customer,\n" .string "no doubt about it.$" -SmartShopper_Text_OutroMax:: @ 082842E6 +SmartShopper_Text_OutroMax:: .string "INTERVIEWER: Hmm…\n" .string "That is amazing.\p" .string "But why would the TRAINER need to buy\n" @@ -1138,7 +1138,7 @@ SmartShopper_Text_OutroMax:: @ 082842E6 .string "See you on our next broadcast!\p" .string "Still, {STR_VAR_1} is certainly an enigma…$" -gTVWorldOfMastersText00:: @ 082843BA +gTVWorldOfMastersText00:: .string "THE WORLD OF MASTERS\p" .string "Hello, viewers.\p" .string "Perhaps you are aware of a TRAINER\n" @@ -1152,12 +1152,12 @@ gTVWorldOfMastersText00:: @ 082843BA .string "The total number of POKéMON caught\n" .string "that day reached an impressive {STR_VAR_3}!$" -gTVWorldOfMastersText01:: @ 082844FD +gTVWorldOfMastersText01:: .string "That remarkable feat must have been\n" .string "possible because of the trust between\l" .string "the TRAINER and {STR_VAR_1}.$" -gTVWorldOfMastersText02:: @ 0828455B +gTVWorldOfMastersText02:: .string "The master caught the day's last\n" .string "{STR_VAR_3} near {STR_VAR_2}.\p" .string "That POKéMON apparently enjoys\n" @@ -1167,31 +1167,31 @@ gTVWorldOfMastersText02:: @ 0828455B .string "That's all for today.\n" .string "Please tune in next time.$" -gTVTodaysRivalTrainerText00:: @ 08284641 +gTVTodaysRivalTrainerText00:: .string "TODAY'S RIVAL TRAINER!\p" .string "Hello, fellow POKéMON TRAINERS!\n" .string "How are we all doing today?\p" .string "Today, like every other day,\n" .string "we'll examine one of our rivals!$" -gTVTodaysRivalTrainerText07:: @ 082846D2 +gTVTodaysRivalTrainerText07:: .string "Today's rival TRAINER is {STR_VAR_1},\n" .string "who's around {STR_VAR_3} now.\p" .string "{STR_VAR_1} has so far registered\n" .string "{STR_VAR_2} POKéMON in the POKéDEX.$" -gTVTodaysRivalTrainerText08:: @ 08284738 +gTVTodaysRivalTrainerText08:: .string "Today's rival TRAINER is {STR_VAR_1},\n" .string "who's in a SECRET BASE now.\p" .string "{STR_VAR_1} has so far registered\n" .string "{STR_VAR_2} POKéMON in the POKéDEX.$" -gTVTodaysRivalTrainerText09:: @ 082847A5 +gTVTodaysRivalTrainerText09:: .string "Today's rival TRAINER is {STR_VAR_1}.\p" .string "So far, {STR_VAR_1} has registered\n" .string "{STR_VAR_2} POKéMON in the POKéDEX.$" -gTVTodaysRivalTrainerText10:: @ 082847F7 +gTVTodaysRivalTrainerText10:: .string "Today's rival TRAINER is {STR_VAR_1},\n" .string "who's on a ferry now.\p" .string "{STR_VAR_1} has so far registered\n" @@ -1199,29 +1199,29 @@ gTVTodaysRivalTrainerText10:: @ 082847F7 .string "$" -gTVTodaysRivalTrainerText01:: @ 0828485F +gTVTodaysRivalTrainerText01:: .string "And how many BADGES does our rival\n" .string "have? The number is {STR_VAR_1}!$" -gTVTodaysRivalTrainerText02:: @ 0828489A +gTVTodaysRivalTrainerText02:: .string "But our rival hasn't obtained\n" .string "a single BADGE yet!$" -gTVTodaysRivalTrainerText03:: @ 082848CC +gTVTodaysRivalTrainerText03:: .string "Our rival hasn't obtained a single\n" .string "BATTLE FRONTIER Symbol yet.$" -gTVTodaysRivalTrainerText04:: @ 0828490B +gTVTodaysRivalTrainerText04:: .string "Let's see how many BATTLE FRONTIER\n" .string "Symbols our rival has.\p" .string "Gold Symbols: {STR_VAR_1}!\n" .string "Silver Symbols: {STR_VAR_2}!$" -gTVTodaysRivalTrainerText05:: @ 0828496B +gTVTodaysRivalTrainerText05:: .string "Our rival has collected {STR_VAR_1} Battle\n" .string "Point(s) at the BATTLE FRONTIER.$" -gTVTodaysRivalTrainerText06:: @ 082849AE +gTVTodaysRivalTrainerText06:: .string "So, how did you measure up in\n" .string "comparison to {STR_VAR_1}?\p" .string "The adventure rolls on!\p" @@ -1229,7 +1229,7 @@ gTVTodaysRivalTrainerText06:: @ 082849AE .string "Let's all keep moving forward\n" .string "and ahead of our rivals!$" -TrendWatcher_Text_Intro:: @ 08284A3E +TrendWatcher_Text_Intro:: .string "DEWFORD TREND-WATCHER NETWORK!\p" .string "MC: Wassup?\n" .string "We'll keep it real with the latest on\l" @@ -1252,17 +1252,17 @@ TrendWatcher_Text_Intro:: @ 08284A3E .string "what's the in thing of the moment…$" @ Identical to below, may have been different in other languages -TrendWatcher_Text_MaleTaughtMePhrase:: @ 08284C55 +TrendWatcher_Text_MaleTaughtMePhrase:: .string "Old man: {STR_VAR_1} {STR_VAR_2}\n" .string "was what {STR_VAR_3} from LITTLEROOT\l" .string "taught me as being trendy…$" -TrendWatcher_Text_FemaleTaughtMePhrase:: @ 08284C9B +TrendWatcher_Text_FemaleTaughtMePhrase:: .string "Old man: {STR_VAR_1} {STR_VAR_2}\n" .string "was what {STR_VAR_3} from LITTLEROOT\l" .string "taught me as being trendy…$" -TrendWatcher_Text_PhraseWasHopeless:: @ 08284CE1 +TrendWatcher_Text_PhraseWasHopeless:: .string "But it was utterly hopeless.\p" .string "{STR_VAR_1} {STR_VAR_2} festival!\p" .string "{STR_VAR_1} {STR_VAR_2} contest!\p" @@ -1274,17 +1274,17 @@ TrendWatcher_Text_PhraseWasHopeless:: @ 08284CE1 .string "to hear about what's in now…$" @ Identical to below, may have been different in other languages -TrendWatcher_Text_MaleTellMeBigger:: @ 08284DB6 +TrendWatcher_Text_MaleTellMeBigger:: .string "Old man: {STR_VAR_3}!\n" .string "Please, tell me something bigger than\l" .string "that {STR_VAR_1} {STR_VAR_2}!$" -TrendWatcher_Text_FemaleTellMeBigger:: @ 08284DF5 +TrendWatcher_Text_FemaleTellMeBigger:: .string "Old man: {STR_VAR_3}!\n" .string "Please, tell me something bigger than\l" .string "that {STR_VAR_1} {STR_VAR_2}!$" -TrendWatcher_Text_Outro:: @ 08284E34 +TrendWatcher_Text_Outro:: .string "MC: …Uh… So, there you have it,\n" .string "all you trendy, hep cats out there!\p" .string "{STR_VAR_1} {STR_VAR_2}…uh…\n" @@ -1292,7 +1292,7 @@ TrendWatcher_Text_Outro:: @ 08284E34 .string "My time is up. Catch you on the fly!\p" .string "Old man: {STR_VAR_1} {STR_VAR_2}!$" -gTVHoennTreasureInvestigatorsText00:: @ 08284EDF +gTVHoennTreasureInvestigatorsText00:: .string "HOENN TREASURE INVESTIGATORS!\p" .string "Hi, gang!\n" .string "Score any secret items lately?\p" @@ -1301,7 +1301,7 @@ gTVHoennTreasureInvestigatorsText00:: @ 08284EDF .string "Let's start with a letter.\n" .string "It says, “{STR_VAR_1} discovered!”$" -gTVHoennTreasureInvestigatorsText01:: @ 08284FA1 +gTVHoennTreasureInvestigatorsText01:: .string "Wow, we'd better check this letter\n" .string "out! Let me read it to you.\p" .string "…Dear INVESTIGATORS,\n" @@ -1316,7 +1316,7 @@ gTVHoennTreasureInvestigatorsText01:: @ 08284FA1 .string "I'll be waiting for exciting news\n" .string "from all of you!$" -gTVHoennTreasureInvestigatorsText02:: @ 082850F5 +gTVHoennTreasureInvestigatorsText02:: .string "Wow, we'd better check this letter\n" .string "out! Let me read it to you.\p" .string "…Dear INVESTIGATORS,\n" @@ -1330,7 +1330,7 @@ gTVHoennTreasureInvestigatorsText02:: @ 082850F5 .string "I'll be waiting for exciting news\n" .string "from all of you!$" -gTVFindThatGamerText00:: @ 08285240 +gTVFindThatGamerText00:: .string "FIND THAT GAMER!\p" .string "Hey, all you gamers!\n" .string "How's your {STR_VAR_2} spinning?\p" @@ -1340,7 +1340,7 @@ gTVFindThatGamerText00:: @ 08285240 .string "Today, our no. 1 gamer is…\n" .string "{STR_VAR_1}!$" -gTVFindThatGamerText01:: @ 082852F4 +gTVFindThatGamerText01:: .string "{STR_VAR_1} played the {STR_VAR_2} game\n" .string "and won a rare {STR_VAR_3} COINS.\p" .string "“When {STR_VAR_1} comes, we need to\n" @@ -1354,7 +1354,7 @@ gTVFindThatGamerText01:: @ 082852F4 .string "where you can feel the excitement!\p" .string "That's all for today!$" -gTVFindThatGamerText02:: @ 08285463 +gTVFindThatGamerText02:: .string "{STR_VAR_1} played the {STR_VAR_2} game\n" .string "and lost {STR_VAR_3} COINS.\p" .string "“When {STR_VAR_1} comes, our COIN\n" @@ -1362,7 +1362,7 @@ gTVFindThatGamerText02:: @ 08285463 .string "That's what the GAME CORNER clerks\n" .string "say when our gamer is in play!$" -gTVFindThatGamerText03:: @ 08285500 +gTVFindThatGamerText03:: .string "Viewers, it's best to watch your COINS\n" .string "like {STR_VAR_1} if you visit the GAME\l" .string "CORNER and play the {STR_VAR_2} game.\p" @@ -1370,10 +1370,10 @@ gTVFindThatGamerText03:: @ 08285500 .string "where you can feel the excitement!\p" .string "That's all for today!$" -gTVBreakingNewsText00:: @ 082855BF +gTVBreakingNewsText00:: .string "BREAKING NEWS TV!$" -gTVBreakingNewsText01:: @ 082855D1 +gTVBreakingNewsText01:: .string "Rare {STR_VAR_2} caught by\n" .string "{STR_VAR_1}!\p" .string "We're live from the vicinity of\n" @@ -1381,18 +1381,18 @@ gTVBreakingNewsText01:: @ 082855D1 .string "{STR_VAR_1} successfully captured\n" .string "a rare {STR_VAR_2} earlier here!$" -gTVBreakingNewsText02:: @ 0828563C +gTVBreakingNewsText02:: .string "When {STR_VAR_1} encountered the rare\n" .string "{STR_VAR_2}, the TRAINER sent out\l" .string "the POKéMON {STR_VAR_3}.$" -gTVBreakingNewsText03:: @ 08285682 +gTVBreakingNewsText03:: .string "In the battle, the number of POKé\n" .string "BALLS thrown by the TRAINER was {STR_VAR_1}.\p" .string "Ultimately, the rare POKéMON was\n" .string "caught by the {STR_VAR_2} used last.$" -gTVBreakingNewsText04:: @ 08285705 +gTVBreakingNewsText04:: .string "In that instant, {STR_VAR_2}\n" .string "echoed with {STR_VAR_1}'s roars of\l" .string "triumphant joy.\p" @@ -1401,7 +1401,7 @@ gTVBreakingNewsText04:: @ 08285705 .string "…That ends the live feed from\n" .string "the happy scene!$" -gTVBreakingNewsText05:: @ 082857B0 +gTVBreakingNewsText05:: .string "{STR_VAR_1} fails to capture a rare\n" .string "{STR_VAR_2}!\p" .string "We're live from the vicinity of\n" @@ -1409,18 +1409,18 @@ gTVBreakingNewsText05:: @ 082857B0 .string "It was here that {STR_VAR_1} failed\n" .string "to capture a rare {STR_VAR_2}!$" -gTVBreakingNewsText06:: @ 08285824 +gTVBreakingNewsText06:: .string "When {STR_VAR_1} encountered the rare\n" .string "{STR_VAR_2}, the TRAINER sent out\l" .string "the POKéMON {STR_VAR_3}.$" -gTVBreakingNewsText07:: @ 0828586A +gTVBreakingNewsText07:: .string "The TRAINER made the {STR_VAR_2}\n" .string "use the move {STR_VAR_1}.\p" .string "Without meaning to, the TRAINER\n" .string "made the rare POKéMON faint…$" -gTVBreakingNewsText12:: @ 082858D0 +gTVBreakingNewsText12:: .string "However, {STR_VAR_1} panicked at\n" .string "the sight of the rare {STR_VAR_2}.\p" .string "In confusion, the TRAINER ordered\n" @@ -1428,12 +1428,12 @@ gTVBreakingNewsText12:: @ 082858D0 .string "Without meaning to, the TRAINER\n" .string "made the rare POKéMON faint.$" -gTVBreakingNewsText08:: @ 0828596F +gTVBreakingNewsText08:: .string "In that instant, {STR_VAR_2}\n" .string "echoed with {STR_VAR_1}'s shrieks of\l" .string "frustration…$" -gTVBreakingNewsText09:: @ 082859AC +gTVBreakingNewsText09:: .string "However, {STR_VAR_1} seemed to run\n" .string "out of POKé BALLS.\p" .string "The TRAINER had to break off\n" @@ -1442,20 +1442,20 @@ gTVBreakingNewsText09:: @ 082859AC .string "echoed with {STR_VAR_1}'s shrieks of\l" .string "frustration…$" -gTVBreakingNewsText10:: @ 08285A50 +gTVBreakingNewsText10:: .string "However, the {STR_VAR_2} fled without\n" .string "warning.\p" .string "In that instant, {STR_VAR_3}\n" .string "echoed with {STR_VAR_1}'s shrieks of\l" .string "frustration…$" -gTVBreakingNewsText11:: @ 08285AB3 +gTVBreakingNewsText11:: .string "I must say I feel for {STR_VAR_1}.\n" .string "Why, it makes me want to shriek, too.\p" .string "…That ends the live feed from\n" .string "the melancholy scene!$" -gTVSecretBaseVisitText00:: @ 08285B27 +gTVSecretBaseVisitText00:: .string "Hello, folks!\n" .string "It's time again for\l" .string "a SECRET BASE VISIT.\p" @@ -1466,14 +1466,14 @@ gTVSecretBaseVisitText00:: @ 08285B27 .string "Let's find out!\n" .string "… … … … … …$" -gTVSecretBaseVisitText01:: @ 08285BCA +gTVSecretBaseVisitText01:: .string "Oh!\n" .string "How marvelous!\p" .string "This {STR_VAR_2}…\n" .string "It's not what one would expect to\l" .string "find here!$" -gTVSecretBaseVisitText02:: @ 08285C13 +gTVSecretBaseVisitText02:: .string "Oh!\n" .string "How remarkable!\p" .string "There isn't a single piece\n" @@ -1485,47 +1485,47 @@ gTVSecretBaseVisitText02:: @ 08285C13 .string "My hat's off to you, {STR_VAR_1}.\n" .string "It had to be you!$" -gTVSecretBaseVisitText03:: @ 08285CFF +gTVSecretBaseVisitText03:: .string "Oh! I see!\n" .string "With perfect clarity, I see it!\p" .string "This {STR_VAR_2} being here…\n" .string "It sends an effective message!$" -gTVSecretBaseVisitText04:: @ 08285D5D +gTVSecretBaseVisitText04:: .string "Oh! I see!\n" .string "With perfect clarity, I see it!\p" .string "This space is kept deliberately\n" .string "clear of interior items!\p" .string "It sends an effective message!$" -gTVSecretBaseVisitText05:: @ 08285DE0 +gTVSecretBaseVisitText05:: .string "Wheeew!\p" .string "The pairing of the {STR_VAR_2}\n" .string "with the {STR_VAR_3}!\p" .string "It's a dream combination if there\n" .string "ever was one!$" -gTVSecretBaseVisitText06:: @ 08285E3B +gTVSecretBaseVisitText06:: .string "Wheeew!\p" .string "The placement of this {STR_VAR_2}\n" .string "right here…\p" .string "It has a presence that fills\n" .string "the entire SECRET BASE!$" -gTVSecretBaseVisitText07:: @ 08285E9D +gTVSecretBaseVisitText07:: .string "Wheeew!\p" .string "There's nothing in place here.\p" .string "This empty space has an effect on\n" .string "the entire SECRET BASE.$" -gTVSecretBaseVisitText08:: @ 08285EFE +gTVSecretBaseVisitText08:: .string "Oh!\n" .string "Here comes {STR_VAR_1}!\l" .string "Let's challenge the TRAINER!\p" .string "… … … … … …\n" .string "… … … … … …$" -gTVSecretBaseVisitText09:: @ 08285F46 +gTVSecretBaseVisitText09:: .string "Sigh…\n" .string "I've got to hand it to {STR_VAR_1}.\p" .string "The TRAINER's POKéMON were truly\n" @@ -1538,7 +1538,7 @@ gTVSecretBaseVisitText09:: @ 08285F46 .string "{STR_VAR_1} is.\p" .string "Certainly, it was quite a lesson!$" -gTVSecretBaseVisitText10:: @ 08286049 +gTVSecretBaseVisitText10:: .string "Aiyeeh!\n" .string "I've got to hand it to {STR_VAR_1}.\p" .string "The TRAINER's POKéMON were\n" @@ -1551,7 +1551,7 @@ gTVSecretBaseVisitText10:: @ 08286049 .string "{STR_VAR_1} is.\p" .string "Certainly, it was quite a lesson!$" -gTVSecretBaseVisitText11:: @ 0828613A +gTVSecretBaseVisitText11:: .string "Wheeew!\n" .string "I've got to hand it to {STR_VAR_1}.\p" .string "The TRAINER's POKéMON were clearly\n" @@ -1564,7 +1564,7 @@ gTVSecretBaseVisitText11:: @ 0828613A .string "{STR_VAR_1} is.\p" .string "Certainly, it was quite a lesson!$" -gTVSecretBaseVisitText12:: @ 08286248 +gTVSecretBaseVisitText12:: .string "Well, well!\n" .string "I've got to hand it to {STR_VAR_1}.\p" .string "The TRAINER's POKéMON showed\n" @@ -1577,14 +1577,14 @@ gTVSecretBaseVisitText12:: @ 08286248 .string "{STR_VAR_1} is.\p" .string "Certainly, it was quite a lesson!$" -gTVSecretBaseVisitText13:: @ 08286340 +gTVSecretBaseVisitText13:: .string "I must say, what a superb SECRET BASE\n" .string "it was!\p" .string "Viewers, if you have the chance,\n" .string "do visit {STR_VAR_1}'s SECRET BASE.\p" .string "Until next time, I bid you adieu!$" -gTVPokemonLotteryWinnerFlashReportText00:: @ 082863CC +gTVPokemonLotteryWinnerFlashReportText00:: .string "It's exciting!\n" .string "It's dramatic!\p" .string "It's the POKéMON LOTTERY\n" @@ -1610,7 +1610,7 @@ gTVPokemonLotteryWinnerFlashReportText00:: @ 082863CC .string "offering you the greatest selection\l" .string "in all HOENN!$" -gTVThePokemonBattleSeminarText00:: @ 08286616 +gTVThePokemonBattleSeminarText00:: .string "THE POKéMON BATTLE SEMINAR!\p" .string "We examine battles to see what\n" .string "lessons we may learn from others.\p" @@ -1619,28 +1619,28 @@ gTVThePokemonBattleSeminarText00:: @ 08286616 .string "{STR_VAR_1}'s {STR_VAR_2} was\n" .string "battling one {STR_VAR_3}…$" -gTVThePokemonBattleSeminarText01:: @ 082866B6 +gTVThePokemonBattleSeminarText01:: .string "And it used the move {STR_VAR_3}\n" .string "on the {STR_VAR_2}…\p" .string "Hmm… {STR_VAR_1}!\n" .string "That's the wrong thing to do!$" -gTVThePokemonBattleSeminarText02:: @ 08286700 +gTVThePokemonBattleSeminarText02:: .string "In addition to the doomed move,\n" .string "the TRAINER's {STR_VAR_1} also knew$" -gTVThePokemonBattleSeminarText03:: @ 0828673B +gTVThePokemonBattleSeminarText03:: .string "the moves {STR_VAR_1}, {STR_VAR_2},\n" .string "and {STR_VAR_3}.$" -gTVThePokemonBattleSeminarText04:: @ 08286755 +gTVThePokemonBattleSeminarText04:: .string "the moves {STR_VAR_1} and\n" .string "{STR_VAR_2}.$" -gTVThePokemonBattleSeminarText05:: @ 0828676A +gTVThePokemonBattleSeminarText05:: .string "the move {STR_VAR_2}.$" -gTVThePokemonBattleSeminarText06:: @ 08286777 +gTVThePokemonBattleSeminarText06:: .string "So, in this situation, what should\n" .string "the TRAINER have used?\p" .string "… … … … … …\n" @@ -1651,7 +1651,7 @@ gTVThePokemonBattleSeminarText06:: @ 08286777 .string "case and battle with intelligence!\p" .string "Until next time, farewell!$" -gTVTrainerFanClubText00:: @ 08286866 +gTVTrainerFanClubText00:: .string "All together now!\n" .string "TRAINER FAN CLUB!\p" .string "MC: How's everyone groovin'?\n" @@ -1665,46 +1665,46 @@ gTVTrainerFanClubText00:: @ 08286866 .string "MC: What do you love about\n" .string "{STR_VAR_1}?!$" -gTVTrainerFanClubText01:: @ 0828695E +gTVTrainerFanClubText01:: .string "FANS: Their cool way of throwing\n" .string "POKé BALLS!$" -gTVTrainerFanClubText02:: @ 0828698B +gTVTrainerFanClubText02:: .string "FANS: Their adorable way of running!$" -gTVTrainerFanClubText03:: @ 082869B0 +gTVTrainerFanClubText03:: .string "FANS: How the TRAINER turns tough\n" .string "when the going gets tough!$" -gTVTrainerFanClubText04:: @ 082869ED +gTVTrainerFanClubText04:: .string "FANS: The TRAINER's knowledge of\n" .string "POKéMON!$" -gTVTrainerFanClubText05:: @ 08286A17 +gTVTrainerFanClubText05:: .string "FANS: The TRAINER's kindness toward\n" .string "all POKéMON!$" -gTVTrainerFanClubText06:: @ 08286A48 +gTVTrainerFanClubText06:: .string "FANS: The TRAINER's amazing\n" .string "BIKE-riding techniques!$" -gTVTrainerFanClubText07:: @ 08286A7C +gTVTrainerFanClubText07:: .string "FANS: The TRAINER's impressive\n" .string "item-buying style!$" -gTVTrainerFanClubText08:: @ 08286AAE +gTVTrainerFanClubText08:: .string "FANS: The TRAINER's charming way\n" .string "of nicknaming POKéMON!$" -gTVTrainerFanClubText09:: @ 08286AE6 +gTVTrainerFanClubText09:: .string "FANS: The TRAINER's nifty style of\n" .string "decorating a SECRET BASE!$" -gTVTrainerFanClubText10:: @ 08286B23 +gTVTrainerFanClubText10:: .string "FANS: The TRAINER's bold ways of\n" .string "using TMs!$" -gTVTrainerFanClubText11:: @ 08286B4F +gTVTrainerFanClubText11:: .string "MC: As you've just seen, {STR_VAR_1}\n" .string "is hot! Like, too hot to touch, yow!\p" .string "Among {STR_VAR_1}'s FANS\n" @@ -1738,7 +1738,7 @@ gTVTrainerFanClubText11:: @ 08286B4F .string "FANS: {STR_VAR_2}!\p" .string "FANS: {STR_VAR_3}!$" -TVSpotTheCuties_Text_Intro:: @ 08286D8F +TVSpotTheCuties_Text_Intro:: .string "SPOT THE CUTIES!\n" .string "POKéMON IN RIBBONS!\p" .string "Hello, my sweet viewers!\p" @@ -1750,29 +1750,29 @@ TVSpotTheCuties_Text_Intro:: @ 08286D8F .string "Today's featured pretty POKéMON\n" .string "is {STR_VAR_1}'s {STR_VAR_2}.$" -TVSpotTheCuties_Text_RibbonsLow:: @ 08286E9D +TVSpotTheCuties_Text_RibbonsLow:: .string "The number of RIBBONS that\n" .string "{STR_VAR_2} wears is {STR_VAR_3}.\p" .string "It says a lot about how much\n" .string "{STR_VAR_1} adores the POKéMON.$" -TVSpotTheCuties_Text_RibbonsMid:: @ 08286EFC +TVSpotTheCuties_Text_RibbonsMid:: .string "{STR_VAR_2} wears an amazing\n" .string "{STR_VAR_3} RIBBONS!\p" .string "It speaks volumes about {STR_VAR_1}'s\n" .string "commitment to the POKéMON!$" -TVSpotTheCuties_Text_RibbonsHigh:: @ 08286F54 +TVSpotTheCuties_Text_RibbonsHigh:: .string "{STR_VAR_2} wears an incredible\n" .string "{STR_VAR_3} RIBBONS!\p" .string "It shows you {STR_VAR_1}'s total\n" .string "dedication as a collector!$" -TVSpotTheCuties_Text_RibbonIntro:: @ 08286FAA +TVSpotTheCuties_Text_RibbonIntro:: .string "Let us take a closer look at the many\n" .string "RIBBONS worn by {STR_VAR_2}.$" -TVSpotTheCuties_Text_RibbonChampion:: @ 08286FE4 +TVSpotTheCuties_Text_RibbonChampion:: .string "The CHAMPION RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it upon entering\n" @@ -1782,7 +1782,7 @@ TVSpotTheCuties_Text_RibbonChampion:: @ 08286FE4 .string "{STR_VAR_2} and the CHAMP RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonCool:: @ 082870A3 +TVSpotTheCuties_Text_RibbonCool:: .string "The COOL RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for winning\n" @@ -1792,7 +1792,7 @@ TVSpotTheCuties_Text_RibbonCool:: @ 082870A3 .string "{STR_VAR_2} and the COOL RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonBeauty:: @ 0828715A +TVSpotTheCuties_Text_RibbonBeauty:: .string "The BEAUTY RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for winning\n" @@ -1802,7 +1802,7 @@ TVSpotTheCuties_Text_RibbonBeauty:: @ 0828715A .string "{STR_VAR_2} and the BEAUTY RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonCute:: @ 08287215 +TVSpotTheCuties_Text_RibbonCute:: .string "The CUTE RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for winning\n" @@ -1812,7 +1812,7 @@ TVSpotTheCuties_Text_RibbonCute:: @ 08287215 .string "{STR_VAR_2} and the CUTE RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonSmart:: @ 082872CC +TVSpotTheCuties_Text_RibbonSmart:: .string "The SMART RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for winning\n" @@ -1822,7 +1822,7 @@ TVSpotTheCuties_Text_RibbonSmart:: @ 082872CC .string "{STR_VAR_2} and the SMART RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonTough:: @ 08287387 +TVSpotTheCuties_Text_RibbonTough:: .string "The TOUGH RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for winning\n" @@ -1832,7 +1832,7 @@ TVSpotTheCuties_Text_RibbonTough:: @ 08287387 .string "{STR_VAR_2} and the TOUGH RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonWinning:: @ 08287442 +TVSpotTheCuties_Text_RibbonWinning:: .string "The WINNING RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for its feats\n" @@ -1842,7 +1842,7 @@ TVSpotTheCuties_Text_RibbonWinning:: @ 08287442 .string "{STR_VAR_2} and the WINNING RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonVictory:: @ 08287508 +TVSpotTheCuties_Text_RibbonVictory:: .string "The VICTORY RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for its feats\n" @@ -1852,7 +1852,7 @@ TVSpotTheCuties_Text_RibbonVictory:: @ 08287508 .string "{STR_VAR_2} and the VICTORY RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonArtist:: @ 082875D9 +TVSpotTheCuties_Text_RibbonArtist:: .string "The ARTIST RIBBON is especially\n" .string "fetching.\p" .string "{STR_VAR_2} received it for being\n" @@ -1862,7 +1862,7 @@ TVSpotTheCuties_Text_RibbonArtist:: @ 082875D9 .string "{STR_VAR_2} and the ARTIST RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_RibbonEffort:: @ 082876A1 +TVSpotTheCuties_Text_RibbonEffort:: .string "The Hard Worker RIBBON is\n" .string "especially fetching.\p" .string "{STR_VAR_2} received it for being\n" @@ -1872,139 +1872,139 @@ TVSpotTheCuties_Text_RibbonEffort:: @ 082876A1 .string "{STR_VAR_2} and the Hard Worker RIBBON!\n" .string "The combination is super effective!$" -TVSpotTheCuties_Text_Outro:: @ 08287779 +TVSpotTheCuties_Text_Outro:: .string "…Sigh…\p" .string "RIBBONS and POKéMON…\n" .string "They go so wonderfully together!\p" .string "Before I swoon,\n" .string "I bid you all farewell!$" -gTVPokemonNewsBattleFrontierText00:: @ 082877DE +gTVPokemonNewsBattleFrontierText00:: .string "Greetings!\n" .string "It's time for POKéMON NEWS.\p" .string "We've got some uplifting news from\n" .string "the BATTLE FRONTIER.$" -gTVPokemonNewsBattleFrontierText01:: @ 0828783D +gTVPokemonNewsBattleFrontierText01:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE TOWER's SINGLE BATTLE\l" .string "ROOM challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText02:: @ 082878B3 +gTVPokemonNewsBattleFrontierText02:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE TOWER's DOUBLE BATTLE\l" .string "ROOM challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText03:: @ 08287929 +gTVPokemonNewsBattleFrontierText03:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE TOWER's MULTI BATTLE\l" .string "ROOM challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText04:: @ 0828799E +gTVPokemonNewsBattleFrontierText04:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE TOWER's LINK MULTI BATTLE\l" .string "ROOM challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText05:: @ 08287A18 +gTVPokemonNewsBattleFrontierText05:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-championship-streak record\l" .string "competing in the BATTLE DOME's\l" .string "SINGLE BATTLE Tournaments.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText06:: @ 08287A97 +gTVPokemonNewsBattleFrontierText06:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-championship-streak record\l" .string "competing in the BATTLE DOME's\l" .string "DOUBLE BATTLE Tournaments.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText07:: @ 08287B16 +gTVPokemonNewsBattleFrontierText07:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE FACTORY's Battle\l" .string "Swap Single challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText08:: @ 08287B8E +gTVPokemonNewsBattleFrontierText08:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE FACTORY's Battle\l" .string "Swap Double challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText09:: @ 08287C06 +gTVPokemonNewsBattleFrontierText09:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "record of clearing {STR_VAR_2} rooms\l" .string "while on the BATTLE PIKE's Battle\l" .string "Choice challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText10:: @ 08287C7D +gTVPokemonNewsBattleFrontierText10:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while\l" .string "competing in the BATTLE ARENA's\l" .string "Set KO Tournaments.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText11:: @ 08287CF3 +gTVPokemonNewsBattleFrontierText11:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE PALACE's SINGLE BATTLE\l" .string "HALL challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText12:: @ 08287D6A +gTVPokemonNewsBattleFrontierText12:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "{STR_VAR_2}-win-streak record while on\l" .string "the BATTLE PALACE's DOUBLE BATTLE\l" .string "HALL challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText13:: @ 08287DE1 +gTVPokemonNewsBattleFrontierText13:: .string "The TRAINER {STR_VAR_1} set a new\n" .string "record of clearing {STR_VAR_2} floors\l" .string "while on the BATTLE PYRAMID's\l" .string "Battle Quest challenge.\p" .string "Here's to {STR_VAR_1}!$" -gTVPokemonNewsBattleFrontierText14:: @ 08287E5B +gTVPokemonNewsBattleFrontierText14:: .string "And to the three POKéMON, {STR_VAR_1},\n" .string "{STR_VAR_2}, and {STR_VAR_3}!\p" .string "Congratulations for your\n" .string "record-breaking performance!$" -gTVPokemonNewsBattleFrontierText15:: @ 08287EBB +gTVPokemonNewsBattleFrontierText15:: .string "And to the two POKéMON, {STR_VAR_1}\n" .string "and {STR_VAR_2}!\p" .string "Congratulations for your\n" .string "record-breaking performance!$" -gTVPokemonNewsBattleFrontierText16:: @ 08287F14 +gTVPokemonNewsBattleFrontierText16:: .string "And to the four POKéMON: {STR_VAR_1}!\p" .string "{STR_VAR_2}!\p" .string "{STR_VAR_3}!$" -gTVPokemonNewsBattleFrontierText17:: @ 08287F39 +gTVPokemonNewsBattleFrontierText17:: .string "And {STR_VAR_1}!\p" .string "Congratulations for your\n" .string "record-breaking performance!$" -gTVPokemonNewsBattleFrontierText18:: @ 08287F77 +gTVPokemonNewsBattleFrontierText18:: .string "Let's hope for more record-setting\n" .string "feats from {STR_VAR_1} and the loyal\l" .string "POKéMON!\p" .string "That's the news on POKéMON NEWS!$" -gTVWhatsNo1InHoennTodayText00:: @ 08287FE0 +gTVWhatsNo1InHoennTodayText00:: .string "WHAT'S NO. 1 IN HOENN TODAY?\n" .string "Yes, it's that time again!\p" .string "Hello, viewers! Are you giving your\n" @@ -2014,7 +2014,7 @@ gTVWhatsNo1InHoennTodayText00:: @ 08287FE0 .string "Today's no. 1 TRAINER is none other\n" .string "than {STR_VAR_1}!$" -gTVWhatsNo1InHoennTodayText01:: @ 082880C0 +gTVWhatsNo1InHoennTodayText01:: .string "In one day, {STR_VAR_1} spun the SLOTS\n" .string "at the GAME CORNER {STR_VAR_2} times.\p" .string "While playing, {STR_VAR_1} was heard\n" @@ -2022,7 +2022,7 @@ gTVWhatsNo1InHoennTodayText01:: @ 082880C0 .string "even move…”\l" .string "Isn't that interesting?$" -gTVWhatsNo1InHoennTodayText02:: @ 0828815F +gTVWhatsNo1InHoennTodayText02:: .string "In one day, {STR_VAR_1} played\n" .string "the ROULETTE game at the GAME\l" .string "CORNER {STR_VAR_2} times.\p" @@ -2031,7 +2031,7 @@ gTVWhatsNo1InHoennTodayText02:: @ 0828815F .string "The TRAINER's eyes were focused and\n" .string "the face showed concentration.$" -gTVWhatsNo1InHoennTodayText03:: @ 0828821A +gTVWhatsNo1InHoennTodayText03:: .string "In one day, {STR_VAR_1} battled\n" .string "wild POKéMON {STR_VAR_2} times!\p" .string "Apparently, {STR_VAR_1}'s POKéMON\n" @@ -2039,7 +2039,7 @@ gTVWhatsNo1InHoennTodayText03:: @ 0828821A .string "They appear eager to battle anywhere,\n" .string "anytime, and anyhow!$" -gTVWhatsNo1InHoennTodayText04:: @ 082882BE +gTVWhatsNo1InHoennTodayText04:: .string "In just one day, {STR_VAR_1} spun\n" .string "the BERRY BLENDER {STR_VAR_2} times!\p" .string "Toward the end, even {STR_VAR_1}\n" @@ -2047,7 +2047,7 @@ gTVWhatsNo1InHoennTodayText04:: @ 082882BE .string "The TRAINER appeared to totter\n" .string "around like a SPINDA!$" -gTVWhatsNo1InHoennTodayText05:: @ 08288355 +gTVWhatsNo1InHoennTodayText05:: .string "In just one day, {STR_VAR_1} planted\n" .string "{STR_VAR_2} BERRIES!\p" .string "As a result, {STR_VAR_1}'s clothes\n" @@ -2057,14 +2057,14 @@ gTVWhatsNo1InHoennTodayText05:: @ 08288355 .string "The flowers are said to soothe\n" .string "the emotions of people.$" -gTVWhatsNo1InHoennTodayText06:: @ 0828842B +gTVWhatsNo1InHoennTodayText06:: .string "In just one day, {STR_VAR_1} picked\n" .string "{STR_VAR_2} BERRIES!\p" .string "{STR_VAR_1}'s BAG became so filled\n" .string "with BERRIES, the TRAINER had trouble\l" .string "walking afterward!$" -gTVWhatsNo1InHoennTodayText07:: @ 082884A5 +gTVWhatsNo1InHoennTodayText07:: .string "In just one day, {STR_VAR_1} obtained\n" .string "{STR_VAR_2} Battle Points!\p" .string "{STR_VAR_1} was later seen wrestling\n" @@ -2074,14 +2074,14 @@ gTVWhatsNo1InHoennTodayText07:: @ 082884A5 .string "The TRAINER reportedly was grinning\n" .string "while mulling options.$" -gTVWhatsNo1InHoennTodayText08:: @ 0828858B +gTVWhatsNo1InHoennTodayText08:: .string "Well, isn't that something!\p" .string "{STR_VAR_1}!\n" .string "You're today's no. 1 TRAINER!\p" .string "Viewers, take heart from {STR_VAR_1}!\n" .string "You, too, can be no. 1 every day!$" -TVSecretBaseSecrets_Text_Intro:: @ 08288608 +TVSecretBaseSecrets_Text_Intro:: .string "SECRET BASE SECRETS!\p" .string "What do TRAINERS do in the secrecy\n" .string "of SECRET BASES?\p" @@ -2092,88 +2092,88 @@ TVSecretBaseSecrets_Text_Intro:: @ 08288608 .string "Let's have a peek!\p" .string "What will {STR_VAR_2} do?$" -TVSecretBaseSecrets_Text_WhatWillPlayerDoNext1:: @ 082886C8 +TVSecretBaseSecrets_Text_WhatWillPlayerDoNext1:: .string "What will {STR_VAR_2} do next?$" -TVSecretBaseSecrets_Text_WhatWillPlayerDoNext2:: @ 082886DE +TVSecretBaseSecrets_Text_WhatWillPlayerDoNext2:: .string "And now, what will {STR_VAR_2} do?$" -TVSecretBaseSecrets_Text_TookXStepsBeforeLeaving:: @ 082886F8 +TVSecretBaseSecrets_Text_TookXStepsBeforeLeaving:: .string "In the end, {STR_VAR_2} took {STR_VAR_3} steps\n" .string "in {STR_VAR_1}'s SECRET BASE before\l" .string "leaving.$" -TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer:: @ 08288739 +TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer:: .string "Hmm…\p" .string "It appears as if {STR_VAR_1}'s SECRET\n" .string "BASE failed to interest {STR_VAR_2}…$" -TVSecretBaseSecrets_Text_PlayerEnjoyedBase:: @ 08288777 +TVSecretBaseSecrets_Text_PlayerEnjoyedBase:: .string "{STR_VAR_2} appears to have enjoyed\n" .string "{STR_VAR_1}'s SECRET BASE thoroughly.$" -TVSecretBaseSecrets_Text_PlayerHugeFanOfBase:: @ 082887AF +TVSecretBaseSecrets_Text_PlayerHugeFanOfBase:: .string "{STR_VAR_2} appears to have become\n" .string "a huge fan of {STR_VAR_1}'s\l" .string "SECRET BASE.$" -TVSecretBaseSecrets_Text_Outro:: @ 082887E9 +TVSecretBaseSecrets_Text_Outro:: .string "Viewers may want to check out\n" .string "{STR_VAR_1}'s SECRET BASE, too.\p" .string "Tune in next time as we visit another\n" .string "SECRET BASE! Thanks for joining us!$" -TVSecretBaseSecrets_Text_StoppedMoving1:: @ 08288868 +TVSecretBaseSecrets_Text_StoppedMoving1:: .string "The visitor has stopped!\p" .string "The visitor isn't moving at all!\p" .string "Was {STR_VAR_1}'s SECRET BASE\n" .string "that unimpressive?$" -TVSecretBaseSecrets_Text_StoppedMoving2:: @ 082888CA +TVSecretBaseSecrets_Text_StoppedMoving2:: .string "The visitor has stopped!\p" .string "The visitor isn't moving at all!\p" .string "Is it fatigue?\n" .string "Has the visitor grown weary?$" -TVSecretBaseSecrets_Text_UsedChair:: @ 08288930 +TVSecretBaseSecrets_Text_UsedChair:: .string "The visitor sat down on a chair!\n" .string "The visitor is seated!\p" .string "Look at that look of delight!\p" .string "That chair must be very comfortable\n" .string "to get that response!$" -TVSecretBaseSecrets_Text_UsedBalloon:: @ 082889C0 +TVSecretBaseSecrets_Text_UsedBalloon:: .string "The visitor charged at a balloon!\p" .string "It burst!\n" .string "Oh, my goodness, it popped!\p" .string "The visitor appears startled by\n" .string "the sudden noise!$" -TVSecretBaseSecrets_Text_UsedTent:: @ 08288A3A +TVSecretBaseSecrets_Text_UsedTent:: .string "The visitor entered a TENT!\p" .string "The visitor is running around!\p" .string "Oh, my, the visitor is frolicking!\p" .string "The visitor appears surprised by\n" .string "the TENT's size!$" -TVSecretBaseSecrets_Text_UsedPlant:: @ 08288ACA +TVSecretBaseSecrets_Text_UsedPlant:: .string "The visitor is examining\n" .string "a potted plant!\p" .string "The visitor has surprisingly\n" .string "mature taste!$" -TVSecretBaseSecrets_Text_UsedGoldShield:: @ 08288B1E +TVSecretBaseSecrets_Text_UsedGoldShield:: .string "The visitor is examining\n" .string "a GOLD SHIELD!\p" .string "The visitor's eyes appear to be\n" .string "lit up with wonder!$" -TVSecretBaseSecrets_Text_UsedSilverShield:: @ 08288B7A +TVSecretBaseSecrets_Text_UsedSilverShield:: .string "The visitor is examining\n" .string "a SILVER SHIELD!\p" .string "The visitor appears to be wide-eyed!$" -TVSecretBaseSecrets_Text_UsedGlassOrnament:: @ 08288BC9 +TVSecretBaseSecrets_Text_UsedGlassOrnament:: .string "The visitor is examining\n" .string "a GLASS ORNAMENT!\p" .string "Oh, no!\p" @@ -2181,15 +2181,15 @@ TVSecretBaseSecrets_Text_UsedGlassOrnament:: @ 08288BC9 .string "It's getting covered with\n" .string "fingerprints…$" -TVSecretBaseSecrets_Text_UsedTV:: @ 08288C40 +TVSecretBaseSecrets_Text_UsedTV:: .string "The visitor is watching television!\p" .string "Looks like we have a big fan of TV!$" -TVSecretBaseSecrets_Text_UsedMudBall:: @ 08288C88 +TVSecretBaseSecrets_Text_UsedMudBall:: .string "The visitor stomped on a MUD BALL!\p" .string "The visitor looks delighted!$" -TVSecretBaseSecrets_Text_UsedBag:: @ 08288CC8 +TVSecretBaseSecrets_Text_UsedBag:: .string "…Oh?\p" .string "The visitor is reaching for their own\n" .string "BAG and rummaging about in it!\p" @@ -2199,19 +2199,19 @@ TVSecretBaseSecrets_Text_UsedBag:: @ 08288CC8 .string "holding up the {STR_VAR_2}!\p" .string "It's like a TV commercial!$" -TVSecretBaseSecrets_Text_UsedCushion:: @ 08288D7F +TVSecretBaseSecrets_Text_UsedCushion:: .string "The visitor grabs a cushion and…$" -TVSecretBaseSecrets_Text_HitCushion:: @ 08288DA0 +TVSecretBaseSecrets_Text_HitCushion:: .string "…begins hitting it!\p" .string "Is the visitor under a lot of stress?$" -TVSecretBaseSecrets_Text_HuggedCushion:: @ 08288DDA +TVSecretBaseSecrets_Text_HuggedCushion:: .string "…hugs it tight!\p" .string "Could the visitor be feeling happy\n" .string "about something?$" -TVSecretBaseSecrets_Text_BattledWon:: @ 08288E1E +TVSecretBaseSecrets_Text_BattledWon:: .string "The visitor is chatting with\n" .string "{STR_VAR_1}!\p" .string "It looks like they're going to\n" @@ -2222,7 +2222,7 @@ TVSecretBaseSecrets_Text_BattledWon:: @ 08288E1E .string "The visitor is doing\n" .string "a victory dance!$" -TVSecretBaseSecrets_Text_BattledLost:: @ 08288EC9 +TVSecretBaseSecrets_Text_BattledLost:: .string "The visitor is chatting with\n" .string "{STR_VAR_1}!\p" .string "It looks like they're going to\n" @@ -2232,7 +2232,7 @@ TVSecretBaseSecrets_Text_BattledLost:: @ 08288EC9 .string "The visitor has lost!\p" .string "The visitor looks dejected!$" -TVSecretBaseSecrets_Text_DeclinedBattle:: @ 08288F58 +TVSecretBaseSecrets_Text_DeclinedBattle:: .string "The visitor is chatting with\n" .string "{STR_VAR_1}!\p" .string "It looks like they're going to\n" @@ -2243,7 +2243,7 @@ TVSecretBaseSecrets_Text_DeclinedBattle:: @ 08288F58 .string "Did the visitor find {STR_VAR_1}\n" .string "unappealing?$" -TVSecretBaseSecrets_Text_UsedPoster:: @ 08289011 +TVSecretBaseSecrets_Text_UsedPoster:: .string "The visitor is staring intently\n" .string "at a poster!\p" .string "Is the poster to the visitor's\n" @@ -2251,12 +2251,12 @@ TVSecretBaseSecrets_Text_UsedPoster:: @ 08289011 .string "…But… There's something disturbing\n" .string "about the visitor's stares.$" -TVSecretBaseSecrets_Text_UsedNoteMat:: @ 082890A4 +TVSecretBaseSecrets_Text_UsedNoteMat:: .string "The visitor stepped on a NOTE MAT!\p" .string "…Hmm…\n" .string "The visitor composed a funny tune!$" -TVSecretBaseSecrets_Text_BattledDraw:: @ 082890F0 +TVSecretBaseSecrets_Text_BattledDraw:: .string "The visitor is chatting with\n" .string "{STR_VAR_1}!\p" .string "It looks like they're going to\n" @@ -2267,14 +2267,14 @@ TVSecretBaseSecrets_Text_BattledDraw:: @ 082890F0 .string "Both TRAINERS appear to be very\n" .string "disappointed!$" -TVSecretBaseSecrets_Text_UsedSpinMat:: @ 08289193 +TVSecretBaseSecrets_Text_UsedSpinMat:: .string "The visitor stepped on\n" .string "a SPIN MAT!\p" .string "It looks like the visitor is dizzy!\p" .string "The visitor is tottering about!\n" .string "Look out!$" -TVSecretBaseSecrets_Text_UsedSandOrnament:: @ 08289204 +TVSecretBaseSecrets_Text_UsedSandOrnament:: .string "The visitor is reaching for\n" .string "a SAND ORNAMENT!\p" .string "Oh!\p" @@ -2283,7 +2283,7 @@ TVSecretBaseSecrets_Text_UsedSandOrnament:: @ 08289204 .string "The visitor looks sheepish\n" .string "and guilty!$" -TVSecretBaseSecrets_Text_UsedDesk:: @ 0828927C +TVSecretBaseSecrets_Text_UsedDesk:: .string "The visitor is rubbing a desktop\n" .string "with their finger!\p" .string "Apparently, the visitor disapproves\n" @@ -2291,25 +2291,25 @@ TVSecretBaseSecrets_Text_UsedDesk:: @ 0828927C .string "The visitor is surprisingly concerned\n" .string "about neatness!$" -TVSecretBaseSecrets_Text_UsedBrick:: @ 08289313 +TVSecretBaseSecrets_Text_UsedBrick:: .string "The visitor is staring at a BRICK!\p" .string "Perhaps the visitor is thinking about\n" .string "the object on the BRICK.$" -TVSecretBaseSecrets_Text_UsedSolidBoard:: @ 08289375 +TVSecretBaseSecrets_Text_UsedSolidBoard:: .string "The visitor is walking across\n" .string "the SOLID BOARD.\p" .string "The visitor keeps looking down.\p" .string "The visitor appears to be surprisingly\n" .string "timid and cautious!$" -TVSecretBaseSecrets_Text_UsedFence:: @ 082893FF +TVSecretBaseSecrets_Text_UsedFence:: .string "The visitor is looking intently\n" .string "at a FENCE!\p" .string "Has a new idea for a trap popped\n" .string "into the visitor's head?$" -TVSecretBaseSecrets_Text_UsedGlitterMat:: @ 08289465 +TVSecretBaseSecrets_Text_UsedGlitterMat:: .string "The visitor stepped on\n" .string "a GLITTER MAT!\p" .string "The visitor is striking a variety\n" @@ -2317,13 +2317,13 @@ TVSecretBaseSecrets_Text_UsedGlitterMat:: @ 08289465 .string "The visitor appears to be fantasizing\n" .string "about being an idol!$" -TVSecretBaseSecrets_Text_UsedTire:: @ 082894F2 +TVSecretBaseSecrets_Text_UsedTire:: .string "The visitor is staring intently\n" .string "at a TIRE!\p" .string "Could the visitor be thinking about\n" .string "the kind of car that would use it?$" -TVSecretBaseSecrets_Text_UsedStand:: @ 08289564 +TVSecretBaseSecrets_Text_UsedStand:: .string "The visitor climbed a STAND!\p" .string "The visitor is looking out across\n" .string "{STR_VAR_1}'s BASE from high up!\p" @@ -2331,16 +2331,16 @@ TVSecretBaseSecrets_Text_UsedStand:: @ 08289564 .string "Lets loose a roar!\n" .string "The visitor is roaring!$" -TVSecretBaseSecrets_Text_BrokeDoor:: @ 082895EB +TVSecretBaseSecrets_Text_BrokeDoor:: .string "The visitor charged headlong into\n" .string "a BREAKABLE DOOR!\p" .string "The visitor is laughing uproariously!$" -TVSecretBaseSecrets_Text_UsedDoll:: @ 08289645 +TVSecretBaseSecrets_Text_UsedDoll:: .string "The visitor is talking to a DOLL!\p" .string "…It's a little creepy…$" -TVSecretBaseSecrets_Text_UsedSlide:: @ 0828967E +TVSecretBaseSecrets_Text_UsedSlide:: .string "The visitor is climbing the ladder\n" .string "on a SLIDE!\p" .string "And…\p" @@ -2348,7 +2348,7 @@ TVSecretBaseSecrets_Text_UsedSlide:: @ 0828967E .string "Looks like the visitor is having\n" .string "a grand old time!$" -TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown:: @ 082896FC +TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown:: .string "The visitor is climbing the ladder\n" .string "on a SLIDE!\p" .string "And…\p" @@ -2356,7 +2356,7 @@ TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown:: @ 082896FC .string "the ladder!\p" .string "Did the visitor suddenly chicken out?$" -TVSecretBaseSecrets_Text_UsedJumpMat:: @ 0828977D +TVSecretBaseSecrets_Text_UsedJumpMat:: .string "The visitor stepped on\n" .string "a JUMP MAT!\p" .string "The visitor jumped once!\p" @@ -2365,7 +2365,7 @@ TVSecretBaseSecrets_Text_UsedJumpMat:: @ 0828977D .string "The visitor is clapping!\n" .string "What a solo performance!$" -gTVSafariFanClubText00:: @ 08289813 +gTVSafariFanClubText00:: .string "SAFARI FAN CLUB!\p" .string "REPORTER: All right, mates!\n" .string "Tossing them SAFARI BALLS, are you?\p" @@ -2376,69 +2376,69 @@ gTVSafariFanClubText00:: @ 08289813 .string "All right, mate, how are the visiting\n" .string "TRAINERS looking?$" -gTVSafariFanClubText01:: @ 0828992F +gTVSafariFanClubText01:: .string "GUIDE: Everyone seems to be going\n" .string "hard at it.\p" .string "{STR_VAR_1} is doing especially well.\p" .string "Why, before, {STR_VAR_1} caught\n" .string "{STR_VAR_2} POKéMON.$" -gTVSafariFanClubText02:: @ 0828999D +gTVSafariFanClubText02:: .string "The TRAINER is clever with {POKEBLOCK}S.\n" .string "Used {STR_VAR_2} that time, I think.$" -gTVSafariFanClubText03:: @ 082899DC +gTVSafariFanClubText03:: .string "The TRAINER didn't use a single\n" .string "{POKEBLOCK}! Not a one!\p" .string "There's an expert for you.$" -gTVSafariFanClubText04:: @ 08289A29 +gTVSafariFanClubText04:: .string "REPORTER: Is that right, then?\p" .string "Sounds like our mate {STR_VAR_1}\n" .string "is a stout SAFARI master!\p" .string "GUIDE: I hope the TRAINER comes back\n" .string "and shows us that great technique.$" -gTVSafariFanClubText05:: @ 08289AC2 +gTVSafariFanClubText05:: .string "GUIDE: No one seems to be doing\n" .string "very well.\p" .string "{STR_VAR_1} had it especially bad.\p" .string "Why, before, the TRAINER only\n" .string "managed to catch {STR_VAR_2} POKéMON.$" -gTVSafariFanClubText06:: @ 08289B42 +gTVSafariFanClubText06:: .string "GUIDE: No one seems to be doing\n" .string "very well.\p" .string "{STR_VAR_1} had it especially bad.\p" .string "Why, before, the TRAINER didn't\n" .string "catch one POKéMON. Not a one!$" -gTVSafariFanClubText07:: @ 08289BC5 +gTVSafariFanClubText07:: .string "The TRAINER does use {POKEBLOCK}S.\n" .string "Used {STR_VAR_2} that time, I think.\p" .string "But, boy, I wish the TRAINER would\n" .string "get a bit better at this.$" -gTVSafariFanClubText08:: @ 08289C3B +gTVSafariFanClubText08:: .string "I think the TRAINER would have better\n" .string "luck using {POKEBLOCK}S, which weren't\l" .string "used at all that time.$" -gTVSafariFanClubText09:: @ 08289C99 +gTVSafariFanClubText09:: .string "REPORTER: Is that right, then?\p" .string "Sounds like our mate {STR_VAR_1}\n" .string "needs more SAFARI seasoning.\p" .string "GUIDE: I hope the TRAINER visits\n" .string "over and over to get the hang of it.$" -gTVSafariFanClubText10:: @ 08289D33 +gTVSafariFanClubText10:: .string "REPORTER: Quite right, it is!\n" .string "Facing up to challenges is important!\p" .string "Viewers, come on down to the SAFARI\n" .string "and make the challenge yourself!\p" .string "Until next time, cheerio!$" -ContestLiveUpdates_Text_Intro:: @ 08289DD6 +ContestLiveUpdates_Text_Intro:: .string "“POKéMON CONTEST LIVE UPDATES!”\p" .string "MC: Thanks for joining us!\p" .string "We're live from the just-ended\n" @@ -2457,117 +2457,117 @@ ContestLiveUpdates_Text_Intro:: @ 08289DD6 .string "MC: Let's hear what the fans have\n" .string "to say about this CONTEST.$" -ContestLiveUpdates_Text_WonBothRounds:: @ 08289F53 +ContestLiveUpdates_Text_WonBothRounds:: .string "Spectator: The {STR_VAR_2} was tops in\n" .string "both primary and secondary judging!\p" .string "That {STR_VAR_2} will keep winning!$" -ContestLiveUpdates_Text_BetterRound2:: @ 08289FB0 +ContestLiveUpdates_Text_BetterRound2:: .string "Spectator: The {STR_VAR_2} didn't do\n" .string "well in the primary judging, but it\l" .string "cleaned up in the secondary judging!\p" .string "It was a miraculous comeback\n" .string "for that {STR_VAR_2}. Yippee!$" -ContestLiveUpdates_Text_EqualRounds:: @ 0828A047 +ContestLiveUpdates_Text_EqualRounds:: .string "Spectator: The {STR_VAR_2} remained\n" .string "consistent throughout both primary\l" .string "and secondary judging.\p" .string "{STR_VAR_3} and the {STR_VAR_2},\n" .string "they're no ordinary combo!$" -ContestLiveUpdates_Text_BetterRound1:: @ 0828A0C6 +ContestLiveUpdates_Text_BetterRound1:: .string "Spectator: In terms of being {STR_VAR_1},\n" .string "that {STR_VAR_2} was outstanding.\p" .string "I hope it makes better appeals\n" .string "next time, though.$" -ContestLiveUpdates_Text_GotNervous:: @ 0828A132 +ContestLiveUpdates_Text_GotNervous:: .string "Spectator: When the {STR_VAR_2} got\n" .string "nervous, I couldn't stop myself from\l" .string "shouting encouragement.\p" .string "I'd like to say this to that\n" .string "{STR_VAR_2}, “Congratulations!”$" -ContestLiveUpdates_Text_StartledFoes:: @ 0828A1BE +ContestLiveUpdates_Text_StartledFoes:: .string "Spectator: That {STR_VAR_2}'s appeal\n" .string "startled even me!\p" .string "{STR_VAR_2}, you were awesome!$" -ContestLiveUpdates_Text_UsedCombo:: @ 0828A202 +ContestLiveUpdates_Text_UsedCombo:: .string "Spectator: That {STR_VAR_2}'s combo\n" .string "appeal was stunning!\p" .string "It's shaken me to the core!$" -ContestLiveUpdates_Text_ExcitingAppeal:: @ 0828A24E +ContestLiveUpdates_Text_ExcitingAppeal:: .string "Spectator: The winning {STR_VAR_2}'s\n" .string "appeal got my heart pounding!$" -ContestLiveUpdates_Text_WasCool:: @ 0828A288 +ContestLiveUpdates_Text_WasCool:: .string "{STR_VAR_2}!\n" .string "You were cool!$" -ContestLiveUpdates_Text_WasBeautiful:: @ 0828A29B +ContestLiveUpdates_Text_WasBeautiful:: .string "{STR_VAR_2}!\n" .string "You were beautiful!$" -ContestLiveUpdates_Text_WasCute:: @ 0828A2B3 +ContestLiveUpdates_Text_WasCute:: .string "{STR_VAR_2}!\n" .string "You were cute!$" -ContestLiveUpdates_Text_WasSmart:: @ 0828A2C6 +ContestLiveUpdates_Text_WasSmart:: .string "{STR_VAR_2}!\n" .string "You were smart!$" -ContestLiveUpdates_Text_WasTough:: @ 0828A2DA +ContestLiveUpdates_Text_WasTough:: .string "{STR_VAR_2}!\n" .string "You were tough!$" -ContestLiveUpdates_Text_VeryExcitingAppeal:: @ 0828A2EE +ContestLiveUpdates_Text_VeryExcitingAppeal:: .string "Spectator: The winning {STR_VAR_2}'s\n" .string "appeal still has my heart pounding!$" -ContestLiveUpdates_Text_VeryCool:: @ 0828A32E +ContestLiveUpdates_Text_VeryCool:: .string "{STR_VAR_2}!\n" .string "You're the last word in cool!$" -ContestLiveUpdates_Text_VeryBeautiful:: @ 0828A350 +ContestLiveUpdates_Text_VeryBeautiful:: .string "{STR_VAR_2}!\n" .string "You're the most beautiful!$" -ContestLiveUpdates_Text_VeryCute:: @ 0828A36F +ContestLiveUpdates_Text_VeryCute:: .string "{STR_VAR_2}!\n" .string "You're simply the cutest!$" -ContestLiveUpdates_Text_VerySmart:: @ 0828A38D +ContestLiveUpdates_Text_VerySmart:: .string "{STR_VAR_2}!\n" .string "You're the smartest among the smart!$" -ContestLiveUpdates_Text_VeryTough:: @ 0828A3B6 +ContestLiveUpdates_Text_VeryTough:: .string "{STR_VAR_2}!\n" .string "You're the toughest of the tough!$" -ContestLiveUpdates_Text_TookBreak:: @ 0828A3DC +ContestLiveUpdates_Text_TookBreak:: .string "Spectator: Even when the {STR_VAR_2}\n" .string "took a break from making appeals,\l" .string "I couldn't take my eyes off it.\p" .string "I'm captivated by that {STR_VAR_2}.$" -ContestLiveUpdates_Text_GotStartled:: @ 0828A455 +ContestLiveUpdates_Text_GotStartled:: .string "Spectator: When the {STR_VAR_2} was\n" .string "startled by another POKéMON's appeal,\l" .string "I was close to tears.\p" .string "{STR_VAR_2}, you were resilient!\n" .string "Way to go!$" -ContestLiveUpdates_Text_MoveWonderful:: @ 0828A4CF +ContestLiveUpdates_Text_MoveWonderful:: .string "Spectator: Oh…\n" .string "That {STR_VAR_2}'s {STR_VAR_3}!\l" .string "{STR_VAR_2}'s {STR_VAR_3}!\l" .string "{STR_VAR_2}'s {STR_VAR_3}!\l" .string "How could it be so wonderful?$" -ContestLiveUpdates_Text_TalkAboutAnotherMon:: @ 0828A51C +ContestLiveUpdates_Text_TalkAboutAnotherMon:: .string "MC: Well, there you have it. This place\n" .string "is full of the {STR_VAR_1}'s fans!\p" .string "I should also mention that another\n" @@ -2575,20 +2575,20 @@ ContestLiveUpdates_Text_TalkAboutAnotherMon:: @ 0828A51C .string "caught my eye.\p" .string "{STR_VAR_2}'s {STR_VAR_3}…$" -ContestLiveUpdates_Text_FailedToAppeal:: @ 0828A5AC +ContestLiveUpdates_Text_FailedToAppeal:: .string "It failed to make a single appeal during\n" .string "secondary judging out of nervousness.\p" .string "Next time, I would like to see this\n" .string "{STR_VAR_1} make even one appeal.$" -ContestLiveUpdates_Text_LastInBothRounds:: @ 0828A638 +ContestLiveUpdates_Text_LastInBothRounds:: .string "It came dead last in both primary\n" .string "and secondary judging.\p" .string "I hope that {STR_VAR_1} will retrain this\n" .string "{STR_VAR_2} and erase the shame of\l" .string "this undisputed last-place finish.$" -ContestLiveUpdates_Text_NotExcitingEnough:: @ 0828A6CF +ContestLiveUpdates_Text_NotExcitingEnough:: .string "It failed to take advantage of\n" .string "the audience's excitement and make\l" .string "an appropriate appeal.\p" @@ -2596,7 +2596,7 @@ ContestLiveUpdates_Text_NotExcitingEnough:: @ 0828A6CF .string "a feel for the audience and whip their\l" .string "excitement to a fever pitch next time.$" -ContestLiveUpdates_Text_LostAfterWinningRound1:: @ 0828A797 +ContestLiveUpdates_Text_LostAfterWinningRound1:: .string "While finishing first in the primary\n" .string "judging, its appeals in the secondary\l" .string "judging failed to click.\p" @@ -2605,14 +2605,14 @@ ContestLiveUpdates_Text_LostAfterWinningRound1:: @ 0828A797 .string "I'm sure {STR_VAR_1} is studying how to\n" .string "make more effective appeals now.$" -ContestLiveUpdates_Text_NeverExciting:: @ 0828A86D +ContestLiveUpdates_Text_NeverExciting:: .string "The audience never got excited by its\n" .string "appeals during the secondary judging.\p" .string "We hope it will stop worrying about\n" .string "other POKéMON and learn to pitch\l" .string "its appeals to the audience more.$" -ContestLiveUpdates_Text_LostBySmallMargin:: @ 0828A920 +ContestLiveUpdates_Text_LostBySmallMargin:: .string "It lost to {STR_VAR_1}'s {STR_VAR_2}\n" .string "by only a small margin.\p" .string "It must be heartbreaking to come\n" @@ -2620,7 +2620,7 @@ ContestLiveUpdates_Text_LostBySmallMargin:: @ 0828A920 .string "I wouldn't be surprised if {STR_VAR_3}\n" .string "were weeping over this outcome.$" -ContestLiveUpdates_Text_RepeatedAppeals:: @ 0828A9CC +ContestLiveUpdates_Text_RepeatedAppeals:: .string "It disappointed the JUDGE by\n" .string "repeating the same appeals.\p" .string "It's an unforgivable error in any\n" @@ -2628,14 +2628,14 @@ ContestLiveUpdates_Text_RepeatedAppeals:: @ 0828A9CC .string "{STR_VAR_1} should feel guilty for\n" .string "this sorry showing.$" -ContestLiveUpdates_Text_ValiantEffortButLost:: @ 0828AA74 +ContestLiveUpdates_Text_ValiantEffortButLost:: .string "{STR_VAR_1} turned in a valiant effort,\n" .string "but…\p" .string "It was all for naught, finishing last.\p" .string "{STR_VAR_1} should learn from this loss\n" .string "and put the knowledge to good use.$" -ContestLiveUpdates_Text_Outro:: @ 0828AB01 +ContestLiveUpdates_Text_Outro:: .string "I'd like to end this program with our\n" .string "usual farewell to the winners.\p" .string "This time, it's {STR_VAR_1} and\n" @@ -2646,28 +2646,28 @@ ContestLiveUpdates_Text_Outro:: @ 0828AB01 .string "Congratulations!\l" .string "You're the CONTEST winner!$" -gTVPokemonBattleUpdateText00:: @ 0828ABCC +gTVPokemonBattleUpdateText00:: .string "“POKéMON BATTLE UPDATE!”\p" .string "Bringing you the results of POKéMON\n" .string "battles as they come in!$" -gTVPokemonBattleUpdateText01:: @ 0828AC22 +gTVPokemonBattleUpdateText01:: .string "The TRAINERS {STR_VAR_1} and\n" .string "{STR_VAR_2} faced each other in\l" .string "a {STR_VAR_3} BATTLE.\p" .string "This match ended in victory for\n" .string "{STR_VAR_1}!$" -gTVPokemonBattleUpdateText02:: @ 0828AC7E +gTVPokemonBattleUpdateText02:: .string "In the battle, {STR_VAR_1}'s\n" .string "{STR_VAR_2} was a formidable force\l" .string "using {STR_VAR_3}!$" -gTVPokemonBattleUpdateText03:: @ 0828ACB6 +gTVPokemonBattleUpdateText03:: .string "{STR_VAR_1}'s {STR_VAR_2} had a weak\n" .string "showing that really hurt.$" -gTVPokemonBattleUpdateText04:: @ 0828ACE3 +gTVPokemonBattleUpdateText04:: .string "Congratulations on your victory,\n" .string "{STR_VAR_1}!\p" .string "And for the defeated {STR_VAR_2},\n" @@ -2675,18 +2675,18 @@ gTVPokemonBattleUpdateText04:: @ 0828ACE3 .string "This concludes this episode of\n" .string "“POKéMON BATTLE UPDATE!”$" -gTVPokemonBattleUpdateText05:: @ 0828AD80 +gTVPokemonBattleUpdateText05:: .string "The teams of TRAINERS {STR_VAR_1} and\n" .string "{STR_VAR_2} met in a MULTI BATTLE.\p" .string "This match ended in victory for\n" .string "{STR_VAR_1}'s team.$" -gTVPokemonBattleUpdateText06:: @ 0828ADE2 +gTVPokemonBattleUpdateText06:: .string "In the battle, the {STR_VAR_2} on\n" .string "{STR_VAR_1}'s team was a formidable\l" .string "force using {STR_VAR_3}.$" -gTVPokemonBattleUpdateText07:: @ 0828AE26 +gTVPokemonBattleUpdateText07:: .string "The weak showing by the {STR_VAR_3}\n" .string "on {STR_VAR_2}'s team really hurt.\p" .string "Congratulations on your team's\n" @@ -2696,23 +2696,23 @@ gTVPokemonBattleUpdateText07:: @ 0828AE26 .string "This concludes this episode of\n" .string "“POKéMON BATTLE UPDATE!”$" -GabbyAndTy_Text_GabbyPreFirstBattle: @ 0828AF05 +GabbyAndTy_Text_GabbyPreFirstBattle: .string "GABBY: Oh! We've just spotted a tough-\n" .string "looking TRAINER here of all places!\p" .string "Okay, roll camera!\n" .string "Let's get this interview.$" -GabbyAndTy_Text_GabbyIntro: @ 0828AF7D +GabbyAndTy_Text_GabbyIntro: .string "GABBY: Oh! You're {PLAYER}! Hi!\n" .string "Do you remember us from last time?\p" .string "Can you show us how much stronger\n" .string "you've become? Okay, cue interview!$" -GabbyAndTy_Text_GabbyDefeatFirstTime: @ 0828B000 +GabbyAndTy_Text_GabbyDefeatFirstTime: .string "GABBY: My eyes didn't lie!\n" .string "I did discover an astonishing TRAINER!$" -GabbyAndTy_Text_WhoAreYouInterview: @ 0828B042 +GabbyAndTy_Text_WhoAreYouInterview: .string "GABBY: Awesome! Awesome!\n" .string "Who are you?!\p" .string "I knew we were onto something wild\n" @@ -2723,19 +2723,19 @@ GabbyAndTy_Text_WhoAreYouInterview: @ 0828B042 .string "So, would you give us a bit of your time\n" .string "for an interview?$" -GabbyAndTy_Text_QuoteFromLastInterview: @ 0828B137 +GabbyAndTy_Text_QuoteFromLastInterview: .string "GABBY: “{STR_VAR_1}!”\p" .string "Remember? That's the quote you gave\n" .string "us as the battle clincher last time.\p" .string "I never, ever forget stuff like that!$" -GabbyAndTy_Text_YouStompedUsInterviewAgain: @ 0828B1B3 +GabbyAndTy_Text_YouStompedUsInterviewAgain: .string "The last time we battled, you stomped\n" .string "us before we could brace ourselves…\p" .string "Anyway, what do you think?\n" .string "Do you want to be interviewed again?$" -GabbyAndTy_Text_YouThrewABallAtUsInterviewAgain: @ 0828B23D +GabbyAndTy_Text_YouThrewABallAtUsInterviewAgain: .string "The last time we battled, didn't you\n" .string "throw a POKé BALL at us?\p" .string "We were shocked! So we told everyone,\n" @@ -2743,30 +2743,30 @@ GabbyAndTy_Text_YouThrewABallAtUsInterviewAgain: @ 0828B23D .string "Anyway, what do you think?\n" .string "Do you want to be interviewed again?$" -GabbyAndTy_Text_CleverItemSkillsInterviewAgain: @ 0828B2FA +GabbyAndTy_Text_CleverItemSkillsInterviewAgain: .string "The last time we battled, your item\n" .string "skills cleverly did us in.\p" .string "Anyway, what do you think?\n" .string "Do you want to be interviewed again?$" -GabbyAndTy_Text_WeLookedRespectableInterviewAgain: @ 0828B379 +GabbyAndTy_Text_WeLookedRespectableInterviewAgain: .string "The last time we battled, we managed\n" .string "to look respectable.\p" .string "Anyway, what do you think?\n" .string "Do you want to be interviewed again?$" -GabbyAndTy_Text_InterviewAgain: @ 0828B3F3 +GabbyAndTy_Text_InterviewAgain: .string "Anyway, what do you think?\n" .string "Do you want to be interviewed again?$" -GabbyAndTy_Text_DescribeYourFeelings: @ 0828B433 +GabbyAndTy_Text_DescribeYourFeelings: .string "You will?\n" .string "Thank you!\p" .string "Okay, I need you to describe your\n" .string "feelings about our battle, but it\l" .string "has to be short and sweet. Go!$" -GabbyAndTy_Text_PerfectWellBeSeeingYou: @ 0828B4AB +GabbyAndTy_Text_PerfectWellBeSeeingYou: .string "GABBY: Mmm, yeah!\n" .string "That's the perfect clincher!\p" .string "I get the feeling that this will make\n" @@ -2776,20 +2776,20 @@ GabbyAndTy_Text_PerfectWellBeSeeingYou: @ 0828B4AB .string "Okay!\n" .string "We'll be seeing you!$" -GabbyAndTy_Text_DontGiveUpKeepingEyeOut: @ 0828B577 +GabbyAndTy_Text_DontGiveUpKeepingEyeOut: .string "GABBY: Oh…\p" .string "Okay, but don't give up!\n" .string "We'll be keeping an eye out for you!$" -GabbyAndTy_Text_KeepingAnEyeOutForYou: @ 0828B5C0 +GabbyAndTy_Text_KeepingAnEyeOutForYou: .string "GABBY: We'll be keeping an eye out\n" .string "for you!$" -GabbyAndTy_Text_GabbyNotEnoughMons: @ 0828B5EC +GabbyAndTy_Text_GabbyNotEnoughMons: .string "GABBY: Is there a strong TRAINER\n" .string "anywhere with a lot of POKéMON?$" -GabbyAndTy_Text_GiveUsAnInterviewThisTime: @ 0828B62D +GabbyAndTy_Text_GiveUsAnInterviewThisTime: .string "GABBY: Wow, you are something!\p" .string "You've gotten a lot stronger--a lot--\n" .string "since we last battled.\p" @@ -2799,40 +2799,40 @@ GabbyAndTy_Text_GiveUsAnInterviewThisTime: @ 0828B62D .string "Are you willing to give us an interview\l" .string "this time?$" -GabbyAndTy_Text_GabbyDefeat: @ 0828B719 +GabbyAndTy_Text_GabbyDefeat: .string "GABBY: That was an intense battle!\n" .string "Did you get all that on camera?$" -GabbyAndTy_Text_TyPreFirstBattle: @ 0828B75C +GabbyAndTy_Text_TyPreFirstBattle: .string "TY: Hey, lookie here! A tough-looking\n" .string "TRAINER here, of all places!\l" .string "Camera's rolling!$" -GabbyAndTy_Text_TyIntro: @ 0828B7B1 +GabbyAndTy_Text_TyIntro: .string "TY: Hey, lookie here!\n" .string "I remember you!\p" .string "I'll get this battle all on this\n" .string "here camera!$" -GabbyAndTy_Text_TyPostBattle: @ 0828B805 +GabbyAndTy_Text_TyPostBattle: .string "TY: You're a natural!\n" .string "Got me some prime footage right here!$" -GabbyAndTy_Text_TyNotEnoughMons: @ 0828B841 +GabbyAndTy_Text_TyNotEnoughMons: .string "TY: Do you only have the one POKéMON\n" .string "and that's it?\p" .string "If you had more POKéMON, it'd make for\n" .string "better footage, but…$" -GabbyAndTy_Text_TyDefeatFirstTime: @ 0828B8B1 +GabbyAndTy_Text_TyDefeatFirstTime: .string "TY: Yep, we sure spotted a hot TRAINER.\n" .string "This is a huge scoop for us!$" -GabbyAndTy_Text_TyDefeat: @ 0828B8F6 +GabbyAndTy_Text_TyDefeat: .string "TY: Yep, I got it all.\n" .string "That whole battle's on camera.$" -gTVInSearchOfTrainersText00:: @ 0828B92C +gTVInSearchOfTrainersText00:: .string "IN SEARCH OF TRAINERS…\p" .string "GABBY: Hi! Today I'm visiting an area\n" .string "near {STR_VAR_1}.\p" @@ -2843,14 +2843,14 @@ gTVInSearchOfTrainersText00:: @ 0828B92C .string "There's something about this TRAINER\n" .string "that piqued our interest.$" -gTVInSearchOfTrainersText01:: @ 0828BA20 +gTVInSearchOfTrainersText01:: .string "We've battled {PLAYER} before, but we\n" .string "can attest that the TRAINER has most\l" .string "definitely improved from before.\p" .string "I knew we were onto someone special\n" .string "when we spotted this TRAINER!$" -gTVInSearchOfTrainersText02:: @ 0828BAC8 +gTVInSearchOfTrainersText02:: .string "The best way to determine how strong\n" .string "a TRAINER is…\p" .string "Well, the fastest way is to battle.\n" @@ -2864,7 +2864,7 @@ gTVInSearchOfTrainersText02:: @ 0828BAC8 .string "Here's our impressions after having\n" .string "battled our featured TRAINER.$" -gTVInSearchOfTrainersText03:: @ 0828BC18 +gTVInSearchOfTrainersText03:: .string "The combination of {STR_VAR_1} and\n" .string "{STR_VAR_3} was divine!\p" .string "The sight of them--{STR_VAR_1} and\n" @@ -2876,7 +2876,7 @@ gTVInSearchOfTrainersText03:: @ 0828BC18 .string "The move {STR_VAR_2} is {STR_VAR_1}\n" .string "and {STR_VAR_3}'s sign of friendship!$" -gTVInSearchOfTrainersText04:: @ 0828BD20 +gTVInSearchOfTrainersText04:: .string "…I lost confidence in myself as\n" .string "a result of our encounter.\p" .string "We were beaten before we could launch\n" @@ -2887,7 +2887,7 @@ gTVInSearchOfTrainersText04:: @ 0828BD20 .string "I recommend confident TRAINERS to\n" .string "challenge {PLAYER}.$" -gTVInSearchOfTrainersText05:: @ 0828BE01 +gTVInSearchOfTrainersText05:: .string "There's only one thing to be said.\n" .string "Don't you dare throw a POKé BALL during\l" .string "a TRAINER battle!\p" @@ -2897,13 +2897,13 @@ gTVInSearchOfTrainersText05:: @ 0828BE01 .string "If you see {PLAYER}, please caution\n" .string "the TRAINER!$" -gTVInSearchOfTrainersText06:: @ 0828BEEE +gTVInSearchOfTrainersText06:: .string "{PLAYER} is adept at reading the\n" .string "opponent's actions.\p" .string "The timing of item usage was remarkably\n" .string "effective!$" -gTVInSearchOfTrainersText07:: @ 0828BF50 +gTVInSearchOfTrainersText07:: .string "Honestly speaking, I thought that\n" .string "I might even be pretty good.\p" .string "While we did end up losing, we did have\n" @@ -2911,7 +2911,7 @@ gTVInSearchOfTrainersText07:: @ 0828BF50 .string "But if you're struggling against me,\n" .string "you have a ways to go, {PLAYER}!$" -gTVInSearchOfTrainersText08:: @ 0828C011 +gTVInSearchOfTrainersText08:: .string "After our battle, we asked {PLAYER} for\n" .string "a succinct summary.\p" .string "The TRAINER replied, “{STR_VAR_1}.”\p" @@ -2925,7 +2925,7 @@ gTVInSearchOfTrainersText08:: @ 0828C011 .string "That's all for today!\n" .string "See you again on our next broadcast!$" -ContestLadyShow_Text_Intro:: @ 0828C137 +ContestLadyShow_Text_Intro:: .string "“POKéMON CONTEST LIVE UPDATES!”\p" .string "MC: Sorry to interrupt the regular\n" .string "programming, and thanks for joining us!\p" @@ -2940,7 +2940,7 @@ ContestLadyShow_Text_Intro:: @ 0828C137 .string "Spectators: ?!!!!\n" .string "?!!!!$" -ContestLadyShow_Text_Won:: @ 0828C28C +ContestLadyShow_Text_Won:: .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "May I congratulate you on your win?\p" @@ -2959,7 +2959,7 @@ ContestLadyShow_Text_Won:: @ 0828C28C .string "We did it!\l" .string "Thank you!$" -ContestLadyShow_Text_Lost:: @ 0828C45B +ContestLadyShow_Text_Lost:: .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "You must be disappointed by that turn\n" @@ -2979,7 +2979,7 @@ ContestLadyShow_Text_Lost:: @ 0828C45B .string "Uh… That's all the time we have today!\n" .string "Thanks for tuning in!$" -ContestLadyShow_Text_LostBadly:: @ 0828C662 +ContestLadyShow_Text_LostBadly:: .string "MC: Excuse me!\n" .string "Thanks for joining us on live TV!\p" .string "How did your CONTEST appearance go?\p" diff --git a/data/tilesets/graphics.inc b/data/tilesets/graphics.inc index c7e6d15b0309..c85bd249e1cb 100644 --- a/data/tilesets/graphics.inc +++ b/data/tilesets/graphics.inc @@ -1,9 +1,9 @@ .align 2 -gTilesetTiles_Petalburg:: @ 8339E08 +gTilesetTiles_Petalburg:: .incbin "data/tilesets/secondary/petalburg/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Petalburg:: @ 833A704 +gTilesetPalettes_Petalburg:: .incbin "data/tilesets/secondary/petalburg/palettes/00.gbapal" .incbin "data/tilesets/secondary/petalburg/palettes/01.gbapal" .incbin "data/tilesets/secondary/petalburg/palettes/02.gbapal" @@ -22,11 +22,11 @@ gTilesetPalettes_Petalburg:: @ 833A704 .incbin "data/tilesets/secondary/petalburg/palettes/15.gbapal" .align 2 -gTilesetTiles_Rustboro:: @ 833A904 +gTilesetTiles_Rustboro:: .incbin "data/tilesets/secondary/rustboro/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Rustboro:: @ 833BEC0 +gTilesetPalettes_Rustboro:: .incbin "data/tilesets/secondary/rustboro/palettes/00.gbapal" .incbin "data/tilesets/secondary/rustboro/palettes/01.gbapal" .incbin "data/tilesets/secondary/rustboro/palettes/02.gbapal" @@ -45,11 +45,11 @@ gTilesetPalettes_Rustboro:: @ 833BEC0 .incbin "data/tilesets/secondary/rustboro/palettes/15.gbapal" .align 2 -gTilesetTiles_Dewford:: @ 833C0C0 +gTilesetTiles_Dewford:: .incbin "data/tilesets/secondary/dewford/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Dewford:: @ 833D540 +gTilesetPalettes_Dewford:: .incbin "data/tilesets/secondary/dewford/palettes/00.gbapal" .incbin "data/tilesets/secondary/dewford/palettes/01.gbapal" .incbin "data/tilesets/secondary/dewford/palettes/02.gbapal" @@ -68,11 +68,11 @@ gTilesetPalettes_Dewford:: @ 833D540 .incbin "data/tilesets/secondary/dewford/palettes/15.gbapal" .align 2 -gTilesetTiles_Slateport:: @ 833D740 +gTilesetTiles_Slateport:: .incbin "data/tilesets/secondary/slateport/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Slateport:: @ 833F708 +gTilesetPalettes_Slateport:: .incbin "data/tilesets/secondary/slateport/palettes/00.gbapal" .incbin "data/tilesets/secondary/slateport/palettes/01.gbapal" .incbin "data/tilesets/secondary/slateport/palettes/02.gbapal" @@ -91,11 +91,11 @@ gTilesetPalettes_Slateport:: @ 833F708 .incbin "data/tilesets/secondary/slateport/palettes/15.gbapal" .align 2 -gTilesetTiles_Mauville:: @ 833F908 +gTilesetTiles_Mauville:: .incbin "data/tilesets/secondary/mauville/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Mauville:: @ 834172C +gTilesetPalettes_Mauville:: .incbin "data/tilesets/secondary/mauville/palettes/00.gbapal" .incbin "data/tilesets/secondary/mauville/palettes/01.gbapal" .incbin "data/tilesets/secondary/mauville/palettes/02.gbapal" @@ -114,11 +114,11 @@ gTilesetPalettes_Mauville:: @ 834172C .incbin "data/tilesets/secondary/mauville/palettes/15.gbapal" .align 2 -gTilesetTiles_Lavaridge:: @ 834192C +gTilesetTiles_Lavaridge:: .incbin "data/tilesets/secondary/lavaridge/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Lavaridge:: @ 8342E28 +gTilesetPalettes_Lavaridge:: .incbin "data/tilesets/secondary/lavaridge/palettes/00.gbapal" .incbin "data/tilesets/secondary/lavaridge/palettes/01.gbapal" .incbin "data/tilesets/secondary/lavaridge/palettes/02.gbapal" @@ -137,11 +137,11 @@ gTilesetPalettes_Lavaridge:: @ 8342E28 .incbin "data/tilesets/secondary/lavaridge/palettes/15.gbapal" .align 2 -gTilesetTiles_Fallarbor:: @ 8343028 +gTilesetTiles_Fallarbor:: .incbin "data/tilesets/secondary/fallarbor/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Fallarbor:: @ 83447A0 +gTilesetPalettes_Fallarbor:: .incbin "data/tilesets/secondary/fallarbor/palettes/00.gbapal" .incbin "data/tilesets/secondary/fallarbor/palettes/01.gbapal" .incbin "data/tilesets/secondary/fallarbor/palettes/02.gbapal" @@ -160,11 +160,11 @@ gTilesetPalettes_Fallarbor:: @ 83447A0 .incbin "data/tilesets/secondary/fallarbor/palettes/15.gbapal" .align 2 -gTilesetTiles_Fortree:: @ 83449A0 +gTilesetTiles_Fortree:: .incbin "data/tilesets/secondary/fortree/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Fortree:: @ 8346020 +gTilesetPalettes_Fortree:: .incbin "data/tilesets/secondary/fortree/palettes/00.gbapal" .incbin "data/tilesets/secondary/fortree/palettes/01.gbapal" .incbin "data/tilesets/secondary/fortree/palettes/02.gbapal" @@ -183,11 +183,11 @@ gTilesetPalettes_Fortree:: @ 8346020 .incbin "data/tilesets/secondary/fortree/palettes/15.gbapal" .align 2 -gTilesetTiles_Lilycove:: @ 8346220 +gTilesetTiles_Lilycove:: .incbin "data/tilesets/secondary/lilycove/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Lilycove:: @ 83475C0 +gTilesetPalettes_Lilycove:: .incbin "data/tilesets/secondary/lilycove/palettes/00.gbapal" .incbin "data/tilesets/secondary/lilycove/palettes/01.gbapal" .incbin "data/tilesets/secondary/lilycove/palettes/02.gbapal" @@ -206,11 +206,11 @@ gTilesetPalettes_Lilycove:: @ 83475C0 .incbin "data/tilesets/secondary/lilycove/palettes/15.gbapal" .align 2 -gTilesetTiles_Mossdeep:: @ 83477C0 +gTilesetTiles_Mossdeep:: .incbin "data/tilesets/secondary/mossdeep/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Mossdeep:: @ 8348E10 +gTilesetPalettes_Mossdeep:: .incbin "data/tilesets/secondary/mossdeep/palettes/00.gbapal" .incbin "data/tilesets/secondary/mossdeep/palettes/01.gbapal" .incbin "data/tilesets/secondary/mossdeep/palettes/02.gbapal" @@ -229,11 +229,11 @@ gTilesetPalettes_Mossdeep:: @ 8348E10 .incbin "data/tilesets/secondary/mossdeep/palettes/15.gbapal" .align 2 -gTilesetTiles_EverGrande:: @ 8349010 +gTilesetTiles_EverGrande:: .incbin "data/tilesets/secondary/ever_grande/tiles.4bpp.lz" .align 2 -gTilesetPalettes_EverGrande:: @ 8349C28 +gTilesetPalettes_EverGrande:: .incbin "data/tilesets/secondary/ever_grande/palettes/00.gbapal" .incbin "data/tilesets/secondary/ever_grande/palettes/01.gbapal" .incbin "data/tilesets/secondary/ever_grande/palettes/02.gbapal" @@ -252,11 +252,11 @@ gTilesetPalettes_EverGrande:: @ 8349C28 .incbin "data/tilesets/secondary/ever_grande/palettes/15.gbapal" .align 2 -gTilesetTiles_Pacifidlog:: @ 8349E28 +gTilesetTiles_Pacifidlog:: .incbin "data/tilesets/secondary/pacifidlog/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Pacifidlog:: @ 834B5B4 +gTilesetPalettes_Pacifidlog:: .incbin "data/tilesets/secondary/pacifidlog/palettes/00.gbapal" .incbin "data/tilesets/secondary/pacifidlog/palettes/01.gbapal" .incbin "data/tilesets/secondary/pacifidlog/palettes/02.gbapal" @@ -275,11 +275,11 @@ gTilesetPalettes_Pacifidlog:: @ 834B5B4 .incbin "data/tilesets/secondary/pacifidlog/palettes/15.gbapal" .align 2 -gTilesetTiles_Sootopolis:: @ 834B7B4 +gTilesetTiles_Sootopolis:: .incbin "data/tilesets/secondary/sootopolis/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Sootopolis:: @ 834C6B4 +gTilesetPalettes_Sootopolis:: .incbin "data/tilesets/secondary/sootopolis/palettes/00.gbapal" .incbin "data/tilesets/secondary/sootopolis/palettes/01.gbapal" .incbin "data/tilesets/secondary/sootopolis/palettes/02.gbapal" @@ -298,11 +298,11 @@ gTilesetPalettes_Sootopolis:: @ 834C6B4 .incbin "data/tilesets/secondary/sootopolis/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleFrontierOutsideWest:: @ 834C8B4 +gTilesetTiles_BattleFrontierOutsideWest:: .incbin "data/tilesets/secondary/battle_frontier_outside_west/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleFrontierOutsideWest:: @ 834E3E4 +gTilesetPalettes_BattleFrontierOutsideWest:: .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/02.gbapal" @@ -321,11 +321,11 @@ gTilesetPalettes_BattleFrontierOutsideWest:: @ 834E3E4 .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleFrontierOutsideEast:: @ 834E5E4 +gTilesetTiles_BattleFrontierOutsideEast:: .incbin "data/tilesets/secondary/battle_frontier_outside_east/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleFrontierOutsideEast:: @ 834F984 +gTilesetPalettes_BattleFrontierOutsideEast:: .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/02.gbapal" @@ -344,11 +344,11 @@ gTilesetPalettes_BattleFrontierOutsideEast:: @ 834F984 .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/15.gbapal" .align 2 -gTilesetTiles_InsideBuilding:: @ 834FB84 +gTilesetTiles_InsideBuilding:: .incbin "data/tilesets/primary/building/tiles.4bpp.lz" .align 2 -gTilesetPalettes_InsideBuilding:: @ 83508BC +gTilesetPalettes_InsideBuilding:: .incbin "data/tilesets/primary/building/palettes/00.gbapal" .incbin "data/tilesets/primary/building/palettes/01.gbapal" .incbin "data/tilesets/primary/building/palettes/02.gbapal" @@ -367,11 +367,11 @@ gTilesetPalettes_InsideBuilding:: @ 83508BC .incbin "data/tilesets/primary/building/palettes/15.gbapal" .align 2 -gTilesetTiles_Shop:: @ 8350ABC +gTilesetTiles_Shop:: .incbin "data/tilesets/secondary/shop/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Shop:: @ 83520DC +gTilesetPalettes_Shop:: .incbin "data/tilesets/secondary/shop/palettes/00.gbapal" .incbin "data/tilesets/secondary/shop/palettes/01.gbapal" .incbin "data/tilesets/secondary/shop/palettes/02.gbapal" @@ -390,11 +390,11 @@ gTilesetPalettes_Shop:: @ 83520DC .incbin "data/tilesets/secondary/shop/palettes/15.gbapal" .align 2 -gTilesetTiles_PokemonCenter:: @ 83522DC +gTilesetTiles_PokemonCenter:: .incbin "data/tilesets/secondary/pokemon_center/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PokemonCenter:: @ 8353574 +gTilesetPalettes_PokemonCenter:: .incbin "data/tilesets/secondary/pokemon_center/palettes/00.gbapal" .incbin "data/tilesets/secondary/pokemon_center/palettes/01.gbapal" .incbin "data/tilesets/secondary/pokemon_center/palettes/02.gbapal" @@ -413,11 +413,11 @@ gTilesetPalettes_PokemonCenter:: @ 8353574 .incbin "data/tilesets/secondary/pokemon_center/palettes/15.gbapal" .align 2 -gTilesetTiles_Cave:: @ 8353774 +gTilesetTiles_Cave:: .incbin "data/tilesets/secondary/cave/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Cave:: @ 8355260 +gTilesetPalettes_Cave:: .incbin "data/tilesets/secondary/cave/palettes/00.gbapal" .incbin "data/tilesets/secondary/cave/palettes/01.gbapal" .incbin "data/tilesets/secondary/cave/palettes/02.gbapal" @@ -436,11 +436,11 @@ gTilesetPalettes_Cave:: @ 8355260 .incbin "data/tilesets/secondary/cave/palettes/15.gbapal" .align 2 -gTilesetTiles_PokemonSchool:: @ 8355460 +gTilesetTiles_PokemonSchool:: .incbin "data/tilesets/secondary/pokemon_school/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PokemonSchool:: @ 8355BA8 +gTilesetPalettes_PokemonSchool:: .incbin "data/tilesets/secondary/pokemon_school/palettes/00.gbapal" .incbin "data/tilesets/secondary/pokemon_school/palettes/01.gbapal" .incbin "data/tilesets/secondary/pokemon_school/palettes/02.gbapal" @@ -459,11 +459,11 @@ gTilesetPalettes_PokemonSchool:: @ 8355BA8 .incbin "data/tilesets/secondary/pokemon_school/palettes/15.gbapal" .align 2 -gTilesetTiles_PokemonFanClub:: @ 8355DA8 +gTilesetTiles_PokemonFanClub:: .incbin "data/tilesets/secondary/pokemon_fan_club/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PokemonFanClub:: @ 83566D4 +gTilesetPalettes_PokemonFanClub:: .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/00.gbapal" .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/01.gbapal" .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/02.gbapal" @@ -482,11 +482,11 @@ gTilesetPalettes_PokemonFanClub:: @ 83566D4 .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/15.gbapal" .align 2 -gTilesetTiles_Unused1:: @ 83568D4 +gTilesetTiles_Unused1:: .incbin "data/tilesets/secondary/unused_1/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Unused1:: @ 8356920 +gTilesetPalettes_Unused1:: .incbin "data/tilesets/secondary/unused_1/palettes/00.gbapal" .incbin "data/tilesets/secondary/unused_1/palettes/01.gbapal" .incbin "data/tilesets/secondary/unused_1/palettes/02.gbapal" @@ -505,11 +505,11 @@ gTilesetPalettes_Unused1:: @ 8356920 .incbin "data/tilesets/secondary/unused_1/palettes/15.gbapal" .align 2 -gTilesetTiles_MeteorFalls:: @ 8356B20 +gTilesetTiles_MeteorFalls:: .incbin "data/tilesets/secondary/meteor_falls/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MeteorFalls:: @ 8358840 +gTilesetPalettes_MeteorFalls:: .incbin "data/tilesets/secondary/meteor_falls/palettes/00.gbapal" .incbin "data/tilesets/secondary/meteor_falls/palettes/01.gbapal" .incbin "data/tilesets/secondary/meteor_falls/palettes/02.gbapal" @@ -528,11 +528,11 @@ gTilesetPalettes_MeteorFalls:: @ 8358840 .incbin "data/tilesets/secondary/meteor_falls/palettes/15.gbapal" .align 2 -gTilesetTiles_OceanicMuseum:: @ 8358A40 +gTilesetTiles_OceanicMuseum:: .incbin "data/tilesets/secondary/oceanic_museum/tiles.4bpp.lz" .align 2 -gTilesetPalettes_OceanicMuseum:: @ 83599CC +gTilesetPalettes_OceanicMuseum:: .incbin "data/tilesets/secondary/oceanic_museum/palettes/00.gbapal" .incbin "data/tilesets/secondary/oceanic_museum/palettes/01.gbapal" .incbin "data/tilesets/secondary/oceanic_museum/palettes/02.gbapal" @@ -551,14 +551,14 @@ gTilesetPalettes_OceanicMuseum:: @ 83599CC .incbin "data/tilesets/secondary/oceanic_museum/palettes/15.gbapal" .align 2 -gTilesetTiles_CableClub:: @ 8359BCC +gTilesetTiles_CableClub:: .incbin "data/tilesets/secondary/cable_club/tiles.4bpp" .align 2 .incbin "data/tilesets/secondary/cable_club/unknown_tiles.4bpp" .align 2 -gTilesetPalettes_CableClub:: @ 835EACC +gTilesetPalettes_CableClub:: .incbin "data/tilesets/secondary/cable_club/palettes/00.gbapal" .incbin "data/tilesets/secondary/cable_club/palettes/01.gbapal" .incbin "data/tilesets/secondary/cable_club/palettes/02.gbapal" @@ -577,11 +577,11 @@ gTilesetPalettes_CableClub:: @ 835EACC .incbin "data/tilesets/secondary/cable_club/palettes/15.gbapal" .align 2 -gTilesetTiles_SeashoreHouse:: @ 835ECCC +gTilesetTiles_SeashoreHouse:: .incbin "data/tilesets/secondary/seashore_house/tiles.4bpp.lz" .align 2 -gTilesetPalettes_SeashoreHouse:: @ 835F5A8 +gTilesetPalettes_SeashoreHouse:: .incbin "data/tilesets/secondary/seashore_house/palettes/00.gbapal" .incbin "data/tilesets/secondary/seashore_house/palettes/01.gbapal" .incbin "data/tilesets/secondary/seashore_house/palettes/02.gbapal" @@ -600,11 +600,11 @@ gTilesetPalettes_SeashoreHouse:: @ 835F5A8 .incbin "data/tilesets/secondary/seashore_house/palettes/15.gbapal" .align 2 -gTilesetTiles_PrettyPetalFlowerShop:: @ 835F7A8 +gTilesetTiles_PrettyPetalFlowerShop:: .incbin "data/tilesets/secondary/pretty_petal_flower_shop/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PrettyPetalFlowerShop:: @ 83603A0 +gTilesetPalettes_PrettyPetalFlowerShop:: .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/00.gbapal" .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/01.gbapal" .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/02.gbapal" @@ -623,11 +623,11 @@ gTilesetPalettes_PrettyPetalFlowerShop:: @ 83603A0 .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/15.gbapal" .align 2 -gTilesetTiles_PokemonDayCare:: @ 83605A0 +gTilesetTiles_PokemonDayCare:: .incbin "data/tilesets/secondary/pokemon_day_care/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PokemonDayCare:: @ 8360FDC +gTilesetPalettes_PokemonDayCare:: .incbin "data/tilesets/secondary/pokemon_day_care/palettes/00.gbapal" .incbin "data/tilesets/secondary/pokemon_day_care/palettes/01.gbapal" .incbin "data/tilesets/secondary/pokemon_day_care/palettes/02.gbapal" @@ -646,11 +646,11 @@ gTilesetPalettes_PokemonDayCare:: @ 8360FDC .incbin "data/tilesets/secondary/pokemon_day_care/palettes/15.gbapal" .align 2 -gTilesetTiles_Facility:: @ 83611DC +gTilesetTiles_Facility:: .incbin "data/tilesets/secondary/facility/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Facility:: @ 8362E90 +gTilesetPalettes_Facility:: .incbin "data/tilesets/secondary/facility/palettes/00.gbapal" .incbin "data/tilesets/secondary/facility/palettes/01.gbapal" .incbin "data/tilesets/secondary/facility/palettes/02.gbapal" @@ -669,11 +669,11 @@ gTilesetPalettes_Facility:: @ 8362E90 .incbin "data/tilesets/secondary/facility/palettes/15.gbapal" .align 2 -gTilesetTiles_BikeShop:: @ 8363090 +gTilesetTiles_BikeShop:: .incbin "data/tilesets/secondary/bike_shop/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BikeShop:: @ 83643C0 +gTilesetPalettes_BikeShop:: .incbin "data/tilesets/secondary/bike_shop/palettes/00.gbapal" .incbin "data/tilesets/secondary/bike_shop/palettes/01.gbapal" .incbin "data/tilesets/secondary/bike_shop/palettes/02.gbapal" @@ -692,11 +692,11 @@ gTilesetPalettes_BikeShop:: @ 83643C0 .incbin "data/tilesets/secondary/bike_shop/palettes/15.gbapal" .align 2 -gTilesetTiles_RusturfTunnel:: @ 83645C0 +gTilesetTiles_RusturfTunnel:: .incbin "data/tilesets/secondary/rusturf_tunnel/tiles.4bpp.lz" .align 2 -gTilesetPalettes_RusturfTunnel:: @ 8365008 +gTilesetPalettes_RusturfTunnel:: .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/00.gbapal" .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/01.gbapal" .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/02.gbapal" @@ -719,7 +719,7 @@ gTilesetPalettes_RusturfTunnel:: @ 8365008 .incbin "data/tilesets/secondary/secret_base/brown_cave/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseBrownCave:: @ 8365788 +gTilesetPalettes_SecretBaseBrownCave:: .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/02.gbapal" @@ -742,7 +742,7 @@ gTilesetPalettes_SecretBaseBrownCave:: @ 8365788 .incbin "data/tilesets/secondary/secret_base/tree/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseTree:: @ 8365EAC +gTilesetPalettes_SecretBaseTree:: .incbin "data/tilesets/secondary/secret_base/tree/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/tree/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/tree/palettes/02.gbapal" @@ -765,7 +765,7 @@ gTilesetPalettes_SecretBaseTree:: @ 8365EAC .incbin "data/tilesets/secondary/secret_base/shrub/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseShrub:: @ 8366614 +gTilesetPalettes_SecretBaseShrub:: .incbin "data/tilesets/secondary/secret_base/shrub/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/shrub/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/shrub/palettes/02.gbapal" @@ -788,7 +788,7 @@ gTilesetPalettes_SecretBaseShrub:: @ 8366614 .incbin "data/tilesets/secondary/secret_base/blue_cave/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseBlueCave:: @ 8366C30 +gTilesetPalettes_SecretBaseBlueCave:: .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/02.gbapal" @@ -811,7 +811,7 @@ gTilesetPalettes_SecretBaseBlueCave:: @ 8366C30 .incbin "data/tilesets/secondary/secret_base/yellow_cave/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseYellowCave:: @ 8367368 +gTilesetPalettes_SecretBaseYellowCave:: .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/02.gbapal" @@ -834,7 +834,7 @@ gTilesetPalettes_SecretBaseYellowCave:: @ 8367368 .incbin "data/tilesets/secondary/secret_base/red_cave/unused_tiles.4bpp.lz" .align 2 -gTilesetPalettes_SecretBaseRedCave:: @ 83679A0 +gTilesetPalettes_SecretBaseRedCave:: .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/00.gbapal" .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/01.gbapal" .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/02.gbapal" @@ -853,35 +853,35 @@ gTilesetPalettes_SecretBaseRedCave:: @ 83679A0 .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/15.gbapal" .align 2 -gTilesetTiles_SecretBaseBrownCave:: @ 8367BA0 +gTilesetTiles_SecretBaseBrownCave:: .incbin "data/tilesets/secondary/secret_base/brown_cave/tiles.4bpp" .align 2 -gTilesetTiles_SecretBaseTree:: @ 8368600 +gTilesetTiles_SecretBaseTree:: .incbin "data/tilesets/secondary/secret_base/tree/tiles.4bpp" .align 2 -gTilesetTiles_SecretBaseShrub:: @ 8369060 +gTilesetTiles_SecretBaseShrub:: .incbin "data/tilesets/secondary/secret_base/shrub/tiles.4bpp" .align 2 -gTilesetTiles_SecretBaseBlueCave:: @ 8369AC0 +gTilesetTiles_SecretBaseBlueCave:: .incbin "data/tilesets/secondary/secret_base/blue_cave/tiles.4bpp" .align 2 -gTilesetTiles_SecretBaseYellowCave:: @ 836A520 +gTilesetTiles_SecretBaseYellowCave:: .incbin "data/tilesets/secondary/secret_base/yellow_cave/tiles.4bpp" .align 2 -gTilesetTiles_SecretBaseRedCave:: @ 836AF80 +gTilesetTiles_SecretBaseRedCave:: .incbin "data/tilesets/secondary/secret_base/red_cave/tiles.4bpp" .align 2 -gTilesetTiles_InsideOfTruck:: @ 836B9E0 +gTilesetTiles_InsideOfTruck:: .incbin "data/tilesets/secondary/inside_of_truck/tiles.4bpp.lz" .align 2 -gTilesetPalettes_InsideOfTruck:: @ 836BC3C +gTilesetPalettes_InsideOfTruck:: .incbin "data/tilesets/secondary/inside_of_truck/palettes/00.gbapal" .incbin "data/tilesets/secondary/inside_of_truck/palettes/01.gbapal" .incbin "data/tilesets/secondary/inside_of_truck/palettes/02.gbapal" @@ -900,11 +900,11 @@ gTilesetPalettes_InsideOfTruck:: @ 836BC3C .incbin "data/tilesets/secondary/inside_of_truck/palettes/15.gbapal" .align 2 -gTilesetTiles_Contest:: @ 836BE3C +gTilesetTiles_Contest:: .incbin "data/tilesets/secondary/contest/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Contest:: @ 836C990 +gTilesetPalettes_Contest:: .incbin "data/tilesets/secondary/contest/palettes/00.gbapal" .incbin "data/tilesets/secondary/contest/palettes/01.gbapal" .incbin "data/tilesets/secondary/contest/palettes/02.gbapal" @@ -923,11 +923,11 @@ gTilesetPalettes_Contest:: @ 836C990 .incbin "data/tilesets/secondary/contest/palettes/15.gbapal" .align 2 -gTilesetTiles_LilycoveMuseum:: @ 836CB90 +gTilesetTiles_LilycoveMuseum:: .incbin "data/tilesets/secondary/lilycove_museum/tiles.4bpp.lz" .align 2 -gTilesetPalettes_LilycoveMuseum:: @ 836DEAC +gTilesetPalettes_LilycoveMuseum:: .incbin "data/tilesets/secondary/lilycove_museum/palettes/00.gbapal" .incbin "data/tilesets/secondary/lilycove_museum/palettes/01.gbapal" .incbin "data/tilesets/secondary/lilycove_museum/palettes/02.gbapal" @@ -946,11 +946,11 @@ gTilesetPalettes_LilycoveMuseum:: @ 836DEAC .incbin "data/tilesets/secondary/lilycove_museum/palettes/15.gbapal" .align 2 -gTilesetTiles_BrendansMaysHouse:: @ 836E0AC +gTilesetTiles_BrendansMaysHouse:: .incbin "data/tilesets/secondary/brendans_mays_house/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BrendansMaysHouse:: @ 836F178 +gTilesetPalettes_BrendansMaysHouse:: .incbin "data/tilesets/secondary/brendans_mays_house/palettes/00.gbapal" .incbin "data/tilesets/secondary/brendans_mays_house/palettes/01.gbapal" .incbin "data/tilesets/secondary/brendans_mays_house/palettes/02.gbapal" @@ -969,11 +969,11 @@ gTilesetPalettes_BrendansMaysHouse:: @ 836F178 .incbin "data/tilesets/secondary/brendans_mays_house/palettes/15.gbapal" .align 2 -gTilesetTiles_Lab:: @ 836F378 +gTilesetTiles_Lab:: .incbin "data/tilesets/secondary/lab/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Lab:: @ 83703DC +gTilesetPalettes_Lab:: .incbin "data/tilesets/secondary/lab/palettes/00.gbapal" .incbin "data/tilesets/secondary/lab/palettes/01.gbapal" .incbin "data/tilesets/secondary/lab/palettes/02.gbapal" @@ -992,11 +992,11 @@ gTilesetPalettes_Lab:: @ 83703DC .incbin "data/tilesets/secondary/lab/palettes/15.gbapal" .align 2 -gTilesetTiles_Underwater:: @ 83705DC +gTilesetTiles_Underwater:: .incbin "data/tilesets/secondary/underwater/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Underwater:: @ 8371798 +gTilesetPalettes_Underwater:: .incbin "data/tilesets/secondary/underwater/palettes/00.gbapal" .incbin "data/tilesets/secondary/underwater/palettes/01.gbapal" .incbin "data/tilesets/secondary/underwater/palettes/02.gbapal" @@ -1015,11 +1015,11 @@ gTilesetPalettes_Underwater:: @ 8371798 .incbin "data/tilesets/secondary/underwater/palettes/15.gbapal" .align 2 -gTilesetTiles_GenericBuilding:: @ 8371998 +gTilesetTiles_GenericBuilding:: .incbin "data/tilesets/secondary/generic_building/tiles.4bpp.lz" .align 2 -gTilesetPalettes_GenericBuilding:: @ 83733C4 +gTilesetPalettes_GenericBuilding:: .incbin "data/tilesets/secondary/generic_building/palettes/00.gbapal" .incbin "data/tilesets/secondary/generic_building/palettes/01.gbapal" .incbin "data/tilesets/secondary/generic_building/palettes/02.gbapal" @@ -1038,11 +1038,11 @@ gTilesetPalettes_GenericBuilding:: @ 83733C4 .incbin "data/tilesets/secondary/generic_building/palettes/15.gbapal" .align 2 -gTilesetTiles_MauvilleGameCorner:: @ 83735C4 +gTilesetTiles_MauvilleGameCorner:: .incbin "data/tilesets/secondary/mauville_game_corner/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MauvilleGameCorner:: @ 8374288 +gTilesetPalettes_MauvilleGameCorner:: .incbin "data/tilesets/secondary/mauville_game_corner/palettes/00.gbapal" .incbin "data/tilesets/secondary/mauville_game_corner/palettes/01.gbapal" .incbin "data/tilesets/secondary/mauville_game_corner/palettes/02.gbapal" @@ -1061,11 +1061,11 @@ gTilesetPalettes_MauvilleGameCorner:: @ 8374288 .incbin "data/tilesets/secondary/mauville_game_corner/palettes/15.gbapal" .align 2 -gTilesetTiles_Unused2:: @ 8374488 +gTilesetTiles_Unused2:: .incbin "data/tilesets/secondary/unused_2/tiles.4bpp.lz" .align 2 -gTilesetPalettes_Unused2:: @ 83749B0 +gTilesetPalettes_Unused2:: .incbin "data/tilesets/secondary/unused_2/palettes/00.gbapal" .incbin "data/tilesets/secondary/unused_2/palettes/01.gbapal" .incbin "data/tilesets/secondary/unused_2/palettes/02.gbapal" @@ -1084,11 +1084,11 @@ gTilesetPalettes_Unused2:: @ 83749B0 .incbin "data/tilesets/secondary/unused_2/palettes/15.gbapal" .align 2 -gTilesetTiles_RustboroGym:: @ 8374BB0 +gTilesetTiles_RustboroGym:: .incbin "data/tilesets/secondary/rustboro_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_RustboroGym:: @ 8374F34 +gTilesetPalettes_RustboroGym:: .incbin "data/tilesets/secondary/rustboro_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/rustboro_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/rustboro_gym/palettes/02.gbapal" @@ -1107,11 +1107,11 @@ gTilesetPalettes_RustboroGym:: @ 8374F34 .incbin "data/tilesets/secondary/rustboro_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_DewfordGym:: @ 8375134 +gTilesetTiles_DewfordGym:: .incbin "data/tilesets/secondary/dewford_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_DewfordGym:: @ 8375400 +gTilesetPalettes_DewfordGym:: .incbin "data/tilesets/secondary/dewford_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/dewford_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/dewford_gym/palettes/02.gbapal" @@ -1130,11 +1130,11 @@ gTilesetPalettes_DewfordGym:: @ 8375400 .incbin "data/tilesets/secondary/dewford_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_MauvilleGym:: @ 8375600 +gTilesetTiles_MauvilleGym:: .incbin "data/tilesets/secondary/mauville_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MauvilleGym:: @ 8375D84 +gTilesetPalettes_MauvilleGym:: .incbin "data/tilesets/secondary/mauville_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/mauville_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/mauville_gym/palettes/02.gbapal" @@ -1153,11 +1153,11 @@ gTilesetPalettes_MauvilleGym:: @ 8375D84 .incbin "data/tilesets/secondary/mauville_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_LavaridgeGym:: @ 8375F84 +gTilesetTiles_LavaridgeGym:: .incbin "data/tilesets/secondary/lavaridge_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_LavaridgeGym:: @ 83762AC +gTilesetPalettes_LavaridgeGym:: .incbin "data/tilesets/secondary/lavaridge_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/lavaridge_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/lavaridge_gym/palettes/02.gbapal" @@ -1176,11 +1176,11 @@ gTilesetPalettes_LavaridgeGym:: @ 83762AC .incbin "data/tilesets/secondary/lavaridge_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_PetalburgGym:: @ 83764AC +gTilesetTiles_PetalburgGym:: .incbin "data/tilesets/secondary/petalburg_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_PetalburgGym:: @ 8376B50 +gTilesetPalettes_PetalburgGym:: .incbin "data/tilesets/secondary/petalburg_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/petalburg_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/petalburg_gym/palettes/02.gbapal" @@ -1199,11 +1199,11 @@ gTilesetPalettes_PetalburgGym:: @ 8376B50 .incbin "data/tilesets/secondary/petalburg_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_FortreeGym:: @ 8376D50 +gTilesetTiles_FortreeGym:: .incbin "data/tilesets/secondary/fortree_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_FortreeGym:: @ 83770C4 +gTilesetPalettes_FortreeGym:: .incbin "data/tilesets/secondary/fortree_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/fortree_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/fortree_gym/palettes/02.gbapal" @@ -1222,11 +1222,11 @@ gTilesetPalettes_FortreeGym:: @ 83770C4 .incbin "data/tilesets/secondary/fortree_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_MossdeepGym:: @ 83772C4 +gTilesetTiles_MossdeepGym:: .incbin "data/tilesets/secondary/mossdeep_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MossdeepGym:: @ 8377730 +gTilesetPalettes_MossdeepGym:: .incbin "data/tilesets/secondary/mossdeep_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/mossdeep_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/mossdeep_gym/palettes/02.gbapal" @@ -1245,11 +1245,11 @@ gTilesetPalettes_MossdeepGym:: @ 8377730 .incbin "data/tilesets/secondary/mossdeep_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_SootopolisGym:: @ 8377930 +gTilesetTiles_SootopolisGym:: .incbin "data/tilesets/secondary/sootopolis_gym/tiles.4bpp.lz" .align 2 -gTilesetPalettes_SootopolisGym:: @ 8378AC4 +gTilesetPalettes_SootopolisGym:: .incbin "data/tilesets/secondary/sootopolis_gym/palettes/00.gbapal" .incbin "data/tilesets/secondary/sootopolis_gym/palettes/01.gbapal" .incbin "data/tilesets/secondary/sootopolis_gym/palettes/02.gbapal" @@ -1268,11 +1268,11 @@ gTilesetPalettes_SootopolisGym:: @ 8378AC4 .incbin "data/tilesets/secondary/sootopolis_gym/palettes/15.gbapal" .align 2 -gTilesetTiles_TrickHousePuzzle:: @ 8378CC4 +gTilesetTiles_TrickHousePuzzle:: .incbin "data/tilesets/secondary/trick_house_puzzle/tiles.4bpp.lz" .align 2 -gTilesetPalettes_TrickHousePuzzle:: @ 8379A78 +gTilesetPalettes_TrickHousePuzzle:: .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/00.gbapal" .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/01.gbapal" .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/02.gbapal" @@ -1291,11 +1291,11 @@ gTilesetPalettes_TrickHousePuzzle:: @ 8379A78 .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/15.gbapal" .align 2 -gTilesetTiles_InsideShip:: @ 8379C78 +gTilesetTiles_InsideShip:: .incbin "data/tilesets/secondary/inside_ship/tiles.4bpp.lz" .align 2 -gTilesetPalettes_InsideShip:: @ 837A848 +gTilesetPalettes_InsideShip:: .incbin "data/tilesets/secondary/inside_ship/palettes/00.gbapal" .incbin "data/tilesets/secondary/inside_ship/palettes/01.gbapal" .incbin "data/tilesets/secondary/inside_ship/palettes/02.gbapal" @@ -1314,14 +1314,14 @@ gTilesetPalettes_InsideShip:: @ 837A848 .incbin "data/tilesets/secondary/inside_ship/palettes/15.gbapal" .align 2 -gTilesetTiles_SecretBase:: @ 837AA48 +gTilesetTiles_SecretBase:: .incbin "data/tilesets/primary/secret_base/tiles.4bpp" .align 2 .incbin "data/tilesets/primary/secret_base/unknown_tiles.4bpp" .align 2 -gTilesetPalettes_SecretBase:: @ 8382A48 +gTilesetPalettes_SecretBase:: .incbin "data/tilesets/primary/secret_base/palettes/00.gbapal" .incbin "data/tilesets/primary/secret_base/palettes/01.gbapal" .incbin "data/tilesets/primary/secret_base/palettes/02.gbapal" @@ -1340,11 +1340,11 @@ gTilesetPalettes_SecretBase:: @ 8382A48 .incbin "data/tilesets/primary/secret_base/palettes/15.gbapal" .align 2 -gTilesetTiles_EliteFour:: @ 8382C48 +gTilesetTiles_EliteFour:: .incbin "data/tilesets/secondary/elite_four/tiles.4bpp.lz" .align 2 -gTilesetPalettes_EliteFour:: @ 8383CC4 +gTilesetPalettes_EliteFour:: .incbin "data/tilesets/secondary/elite_four/palettes/00.gbapal" .incbin "data/tilesets/secondary/elite_four/palettes/01.gbapal" .incbin "data/tilesets/secondary/elite_four/palettes/02.gbapal" @@ -1363,11 +1363,11 @@ gTilesetPalettes_EliteFour:: @ 8383CC4 .incbin "data/tilesets/secondary/elite_four/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleFrontier:: @ 8383EC4 +gTilesetTiles_BattleFrontier:: .incbin "data/tilesets/secondary/battle_frontier/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleFrontier:: @ 8384BC8 +gTilesetPalettes_BattleFrontier:: .incbin "data/tilesets/secondary/battle_frontier/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_frontier/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_frontier/palettes/02.gbapal" @@ -1386,11 +1386,11 @@ gTilesetPalettes_BattleFrontier:: @ 8384BC8 .incbin "data/tilesets/secondary/battle_frontier/palettes/15.gbapal" .align 2 -gTilesetTiles_BattlePalace:: @ 8384DC8 +gTilesetTiles_BattlePalace:: .incbin "data/tilesets/secondary/battle_palace/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattlePalace:: @ 8385540 +gTilesetPalettes_BattlePalace:: .incbin "data/tilesets/secondary/battle_palace/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_palace/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_palace/palettes/02.gbapal" @@ -1409,11 +1409,11 @@ gTilesetPalettes_BattlePalace:: @ 8385540 .incbin "data/tilesets/secondary/battle_palace/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleDome:: @ 8385740 +gTilesetTiles_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleDome:: @ 8386990 +gTilesetPalettes_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_dome/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_dome/palettes/02.gbapal" @@ -1432,11 +1432,11 @@ gTilesetPalettes_BattleDome:: @ 8386990 .incbin "data/tilesets/secondary/battle_dome/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleFactory:: @ 8386B90 +gTilesetTiles_BattleFactory:: .incbin "data/tilesets/secondary/battle_factory/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleFactory:: @ 8387D7C +gTilesetPalettes_BattleFactory:: .incbin "data/tilesets/secondary/battle_factory/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_factory/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_factory/palettes/02.gbapal" @@ -1455,11 +1455,11 @@ gTilesetPalettes_BattleFactory:: @ 8387D7C .incbin "data/tilesets/secondary/battle_factory/palettes/15.gbapal" .align 2 -gTilesetTiles_BattlePike:: @ 8387F7C +gTilesetTiles_BattlePike:: .incbin "data/tilesets/secondary/battle_pike/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattlePike:: @ 8389250 +gTilesetPalettes_BattlePike:: .incbin "data/tilesets/secondary/battle_pike/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_pike/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_pike/palettes/02.gbapal" @@ -1478,11 +1478,11 @@ gTilesetPalettes_BattlePike:: @ 8389250 .incbin "data/tilesets/secondary/battle_pike/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleArena:: @ 8389450 +gTilesetTiles_BattleArena:: .incbin "data/tilesets/secondary/battle_arena/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleArena:: @ 8389F8C +gTilesetPalettes_BattleArena:: .incbin "data/tilesets/secondary/battle_arena/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_arena/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_arena/palettes/02.gbapal" @@ -1501,11 +1501,11 @@ gTilesetPalettes_BattleArena:: @ 8389F8C .incbin "data/tilesets/secondary/battle_arena/palettes/15.gbapal" .align 2 -gTilesetTiles_BattlePyramid:: @ 838A18C +gTilesetTiles_BattlePyramid:: .incbin "data/tilesets/secondary/battle_pyramid/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattlePyramid:: @ 838B39C +gTilesetPalettes_BattlePyramid:: .incbin "data/tilesets/secondary/battle_pyramid/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_pyramid/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_pyramid/palettes/02.gbapal" @@ -1524,11 +1524,11 @@ gTilesetPalettes_BattlePyramid:: @ 838B39C .incbin "data/tilesets/secondary/battle_pyramid/palettes/15.gbapal" .align 2 -gTilesetTiles_MirageTower:: @ 838B59C +gTilesetTiles_MirageTower:: .incbin "data/tilesets/secondary/mirage_tower/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MirageTower:: @ 838CFE4 +gTilesetPalettes_MirageTower:: .incbin "data/tilesets/secondary/mirage_tower/palettes/00.gbapal" .incbin "data/tilesets/secondary/mirage_tower/palettes/01.gbapal" .incbin "data/tilesets/secondary/mirage_tower/palettes/02.gbapal" @@ -1547,11 +1547,11 @@ gTilesetPalettes_MirageTower:: @ 838CFE4 .incbin "data/tilesets/secondary/mirage_tower/palettes/15.gbapal" .align 2 -gTilesetTiles_MossdeepGameCorner:: @ 838D1E4 +gTilesetTiles_MossdeepGameCorner:: .incbin "data/tilesets/secondary/mossdeep_game_corner/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MossdeepGameCorner:: @ 838D604 +gTilesetPalettes_MossdeepGameCorner:: .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/00.gbapal" .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/01.gbapal" .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/02.gbapal" @@ -1570,11 +1570,11 @@ gTilesetPalettes_MossdeepGameCorner:: @ 838D604 .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/15.gbapal" .align 2 -gTilesetTiles_IslandHarbor:: @ 838D804 +gTilesetTiles_IslandHarbor:: .incbin "data/tilesets/secondary/island_harbor/tiles.4bpp.lz" .align 2 -gTilesetPalettes_IslandHarbor:: @ 838F1D4 +gTilesetPalettes_IslandHarbor:: .incbin "data/tilesets/secondary/island_harbor/palettes/00.gbapal" .incbin "data/tilesets/secondary/island_harbor/palettes/01.gbapal" .incbin "data/tilesets/secondary/island_harbor/palettes/02.gbapal" @@ -1593,11 +1593,11 @@ gTilesetPalettes_IslandHarbor:: @ 838F1D4 .incbin "data/tilesets/secondary/island_harbor/palettes/15.gbapal" .align 2 -gTilesetTiles_TrainerHill:: @ 838F3D4 +gTilesetTiles_TrainerHill:: .incbin "data/tilesets/secondary/trainer_hill/tiles.4bpp.lz" .align 2 -gTilesetPalettes_TrainerHill:: @ 83904C4 +gTilesetPalettes_TrainerHill:: .incbin "data/tilesets/secondary/trainer_hill/palettes/00.gbapal" .incbin "data/tilesets/secondary/trainer_hill/palettes/01.gbapal" .incbin "data/tilesets/secondary/trainer_hill/palettes/02.gbapal" @@ -1616,11 +1616,11 @@ gTilesetPalettes_TrainerHill:: @ 83904C4 .incbin "data/tilesets/secondary/trainer_hill/palettes/15.gbapal" .align 2 -gTilesetTiles_NavelRock:: @ 83906C4 +gTilesetTiles_NavelRock:: .incbin "data/tilesets/secondary/navel_rock/tiles.4bpp.lz" .align 2 -gTilesetPalettes_NavelRock:: @ 8392258 +gTilesetPalettes_NavelRock:: .incbin "data/tilesets/secondary/navel_rock/palettes/00.gbapal" .incbin "data/tilesets/secondary/navel_rock/palettes/01.gbapal" .incbin "data/tilesets/secondary/navel_rock/palettes/02.gbapal" @@ -1639,11 +1639,11 @@ gTilesetPalettes_NavelRock:: @ 8392258 .incbin "data/tilesets/secondary/navel_rock/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleFrontierRankingHall:: @ 8392458 +gTilesetTiles_BattleFrontierRankingHall:: .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleFrontierRankingHall:: @ 8392CAC +gTilesetPalettes_BattleFrontierRankingHall:: .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/02.gbapal" @@ -1662,11 +1662,11 @@ gTilesetPalettes_BattleFrontierRankingHall:: @ 8392CAC .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/15.gbapal" .align 2 -gTilesetTiles_BattleTent:: @ 8392EAC +gTilesetTiles_BattleTent:: .incbin "data/tilesets/secondary/battle_tent/tiles.4bpp.lz" .align 2 -gTilesetPalettes_BattleTent:: @ 8393910 +gTilesetPalettes_BattleTent:: .incbin "data/tilesets/secondary/battle_tent/palettes/00.gbapal" .incbin "data/tilesets/secondary/battle_tent/palettes/01.gbapal" .incbin "data/tilesets/secondary/battle_tent/palettes/02.gbapal" @@ -1685,11 +1685,11 @@ gTilesetPalettes_BattleTent:: @ 8393910 .incbin "data/tilesets/secondary/battle_tent/palettes/15.gbapal" .align 2 -gTilesetTiles_MysteryEventsHouse:: @ 8393B10 +gTilesetTiles_MysteryEventsHouse:: .incbin "data/tilesets/secondary/mystery_events_house/tiles.4bpp.lz" .align 2 -gTilesetPalettes_MysteryEventsHouse:: @ 8395478 +gTilesetPalettes_MysteryEventsHouse:: .incbin "data/tilesets/secondary/mystery_events_house/palettes/00.gbapal" .incbin "data/tilesets/secondary/mystery_events_house/palettes/01.gbapal" .incbin "data/tilesets/secondary/mystery_events_house/palettes/02.gbapal" @@ -1708,7 +1708,7 @@ gTilesetPalettes_MysteryEventsHouse:: @ 8395478 .incbin "data/tilesets/secondary/mystery_events_house/palettes/15.gbapal" .align 2 -gTilesetPalettes_UnionRoom:: @ 8395678 +gTilesetPalettes_UnionRoom:: .incbin "data/tilesets/secondary/union_room/palettes/00.gbapal" .incbin "data/tilesets/secondary/union_room/palettes/01.gbapal" .incbin "data/tilesets/secondary/union_room/palettes/02.gbapal" @@ -1727,5 +1727,5 @@ gTilesetPalettes_UnionRoom:: @ 8395678 .incbin "data/tilesets/secondary/union_room/palettes/15.gbapal" .align 2 -gTilesetTiles_UnionRoom:: @ 8395878 +gTilesetTiles_UnionRoom:: .incbin "data/tilesets/secondary/union_room/tiles.4bpp.lz" diff --git a/data/tilesets/headers.inc b/data/tilesets/headers.inc index c56234b13b6e..6324e943c7cc 100644 --- a/data/tilesets/headers.inc +++ b/data/tilesets/headers.inc @@ -1,5 +1,5 @@ .align 2 -gTileset_General:: @ 83DF704 +gTileset_General:: .byte TRUE @ is compressed .byte FALSE @ is secondary tileset .2byte 0 @ padding @@ -10,7 +10,7 @@ gTileset_General:: @ 83DF704 .4byte InitTilesetAnim_General .align 2 -gTileset_Petalburg:: @ 83DF71C +gTileset_Petalburg:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -21,7 +21,7 @@ gTileset_Petalburg:: @ 83DF71C .4byte InitTilesetAnim_Petalburg .align 2 -gTileset_Rustboro:: @ 83DF734 +gTileset_Rustboro:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -32,7 +32,7 @@ gTileset_Rustboro:: @ 83DF734 .4byte InitTilesetAnim_Rustboro .align 2 -gTileset_Dewford:: @ 83DF74C +gTileset_Dewford:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -43,7 +43,7 @@ gTileset_Dewford:: @ 83DF74C .4byte InitTilesetAnim_Dewford .align 2 -gTileset_Slateport:: @ 83DF764 +gTileset_Slateport:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -54,7 +54,7 @@ gTileset_Slateport:: @ 83DF764 .4byte InitTilesetAnim_Slateport .align 2 -gTileset_Mauville:: @ 83DF77C +gTileset_Mauville:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -65,7 +65,7 @@ gTileset_Mauville:: @ 83DF77C .4byte InitTilesetAnim_Mauville .align 2 -gTileset_Lavaridge:: @ 83DF794 +gTileset_Lavaridge:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -76,7 +76,7 @@ gTileset_Lavaridge:: @ 83DF794 .4byte InitTilesetAnim_Lavaridge .align 2 -gTileset_Fallarbor:: @ 83DF7AC +gTileset_Fallarbor:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -87,7 +87,7 @@ gTileset_Fallarbor:: @ 83DF7AC .4byte InitTilesetAnim_Fallarbor .align 2 -gTileset_Fortree:: @ 83DF7C4 +gTileset_Fortree:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -98,7 +98,7 @@ gTileset_Fortree:: @ 83DF7C4 .4byte InitTilesetAnim_Fortree .align 2 -gTileset_Lilycove:: @ 83DF7DC +gTileset_Lilycove:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -109,7 +109,7 @@ gTileset_Lilycove:: @ 83DF7DC .4byte InitTilesetAnim_Lilycove .align 2 -gTileset_Mossdeep:: @ 83DF7F4 +gTileset_Mossdeep:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -120,7 +120,7 @@ gTileset_Mossdeep:: @ 83DF7F4 .4byte InitTilesetAnim_Mossdeep .align 2 -gTileset_EverGrande:: @ 83DF80C +gTileset_EverGrande:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -131,7 +131,7 @@ gTileset_EverGrande:: @ 83DF80C .4byte InitTilesetAnim_EverGrande .align 2 -gTileset_Pacifidlog:: @ 83DF824 +gTileset_Pacifidlog:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -142,7 +142,7 @@ gTileset_Pacifidlog:: @ 83DF824 .4byte InitTilesetAnim_Pacifidlog .align 2 -gTileset_Sootopolis:: @ 83DF83C +gTileset_Sootopolis:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -153,7 +153,7 @@ gTileset_Sootopolis:: @ 83DF83C .4byte InitTilesetAnim_Sootopolis .align 2 -gTileset_BattleFrontierOutsideWest:: @ 83DF854 +gTileset_BattleFrontierOutsideWest:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -164,7 +164,7 @@ gTileset_BattleFrontierOutsideWest:: @ 83DF854 .4byte InitTilesetAnim_BattleFrontierOutsideWest .align 2 -gTileset_BattleFrontierOutsideEast:: @ 83DF86C +gTileset_BattleFrontierOutsideEast:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -175,7 +175,7 @@ gTileset_BattleFrontierOutsideEast:: @ 83DF86C .4byte InitTilesetAnim_BattleFrontierOutsideEast .align 2 -gTileset_Building:: @ 83DF884 +gTileset_Building:: .byte TRUE @ is compressed .byte FALSE @ is secondary tileset .2byte 0 @ padding @@ -186,7 +186,7 @@ gTileset_Building:: @ 83DF884 .4byte InitTilesetAnim_Building .align 2 -gTileset_Shop:: @ 83DF89C +gTileset_Shop:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -197,7 +197,7 @@ gTileset_Shop:: @ 83DF89C .4byte NULL @ animation callback .align 2 -gTileset_PokemonCenter:: @ 83DF8B4 +gTileset_PokemonCenter:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -208,7 +208,7 @@ gTileset_PokemonCenter:: @ 83DF8B4 .4byte NULL @ animation callback .align 2 -gTileset_Cave:: @ 83DF8CC +gTileset_Cave:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -219,7 +219,7 @@ gTileset_Cave:: @ 83DF8CC .4byte InitTilesetAnim_Cave .align 2 -gTileset_PokemonSchool:: @ 83DF8E4 +gTileset_PokemonSchool:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -230,7 +230,7 @@ gTileset_PokemonSchool:: @ 83DF8E4 .4byte NULL @ animation callback .align 2 -gTileset_PokemonFanClub:: @ 83DF8FC +gTileset_PokemonFanClub:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -241,7 +241,7 @@ gTileset_PokemonFanClub:: @ 83DF8FC .4byte NULL @ animation callback .align 2 -gTileset_Unused1:: @ 83DF914 +gTileset_Unused1:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -252,7 +252,7 @@ gTileset_Unused1:: @ 83DF914 .4byte NULL @ animation callback .align 2 -gTileset_MeteorFalls:: @ 83DF92C +gTileset_MeteorFalls:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -263,7 +263,7 @@ gTileset_MeteorFalls:: @ 83DF92C .4byte NULL @ animation callback .align 2 -gTileset_OceanicMuseum:: @ 83DF944 +gTileset_OceanicMuseum:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -274,7 +274,7 @@ gTileset_OceanicMuseum:: @ 83DF944 .4byte NULL @ animation callback .align 2 -gTileset_CableClub:: @ 83DF95C +gTileset_CableClub:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -285,7 +285,7 @@ gTileset_CableClub:: @ 83DF95C .4byte NULL @ animation callback .align 2 -gTileset_SeashoreHouse:: @ 83DF974 +gTileset_SeashoreHouse:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -296,7 +296,7 @@ gTileset_SeashoreHouse:: @ 83DF974 .4byte NULL @ animation callback .align 2 -gTileset_PrettyPetalFlowerShop:: @ 83DF98C +gTileset_PrettyPetalFlowerShop:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -307,7 +307,7 @@ gTileset_PrettyPetalFlowerShop:: @ 83DF98C .4byte NULL @ animation callback .align 2 -gTileset_PokemonDayCare:: @ 83DF9A4 +gTileset_PokemonDayCare:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -318,7 +318,7 @@ gTileset_PokemonDayCare:: @ 83DF9A4 .4byte NULL @ animation callback .align 2 -gTileset_Facility:: @ 83DF9BC +gTileset_Facility:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -329,7 +329,7 @@ gTileset_Facility:: @ 83DF9BC .4byte NULL @ animation callback .align 2 -gTileset_BikeShop:: @ 83DF9D4 +gTileset_BikeShop:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -340,7 +340,7 @@ gTileset_BikeShop:: @ 83DF9D4 .4byte InitTilesetAnim_BikeShop .align 2 -gTileset_RusturfTunnel:: @ 83DF9EC +gTileset_RusturfTunnel:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -351,7 +351,7 @@ gTileset_RusturfTunnel:: @ 83DF9EC .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseBrownCave:: @ 83DFA04 +gTileset_SecretBaseBrownCave:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -362,7 +362,7 @@ gTileset_SecretBaseBrownCave:: @ 83DFA04 .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseTree:: @ 83DFA1C +gTileset_SecretBaseTree:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -373,7 +373,7 @@ gTileset_SecretBaseTree:: @ 83DFA1C .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseShrub:: @ 83DFA34 +gTileset_SecretBaseShrub:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -384,7 +384,7 @@ gTileset_SecretBaseShrub:: @ 83DFA34 .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseBlueCave:: @ 83DFA4C +gTileset_SecretBaseBlueCave:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -395,7 +395,7 @@ gTileset_SecretBaseBlueCave:: @ 83DFA4C .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseYellowCave:: @ 83DFA64 +gTileset_SecretBaseYellowCave:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -406,7 +406,7 @@ gTileset_SecretBaseYellowCave:: @ 83DFA64 .4byte NULL @ animation callback .align 2 -gTileset_SecretBaseRedCave:: @ 83DFA7C +gTileset_SecretBaseRedCave:: .byte FALSE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -417,7 +417,7 @@ gTileset_SecretBaseRedCave:: @ 83DFA7C .4byte NULL @ animation callback .align 2 -gTileset_InsideOfTruck:: @ 83DFA94 +gTileset_InsideOfTruck:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -428,7 +428,7 @@ gTileset_InsideOfTruck:: @ 83DFA94 .4byte NULL @ animation callback .align 2 -gTileset_Unused2:: @ 83DFAAC +gTileset_Unused2:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -439,7 +439,7 @@ gTileset_Unused2:: @ 83DFAAC .4byte NULL @ animation callback .align 2 -gTileset_Contest:: @ 83DFAC4 +gTileset_Contest:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -450,7 +450,7 @@ gTileset_Contest:: @ 83DFAC4 .4byte NULL @ animation callback .align 2 -gTileset_LilycoveMuseum:: @ 83DFADC +gTileset_LilycoveMuseum:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -461,7 +461,7 @@ gTileset_LilycoveMuseum:: @ 83DFADC .4byte NULL @ animation callback .align 2 -gTileset_BrendansMaysHouse:: @ 83DFAF4 +gTileset_BrendansMaysHouse:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -472,7 +472,7 @@ gTileset_BrendansMaysHouse:: @ 83DFAF4 .4byte NULL @ animation callback .align 2 -gTileset_Lab:: @ 83DFB0C +gTileset_Lab:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -483,7 +483,7 @@ gTileset_Lab:: @ 83DFB0C .4byte NULL @ animation callback .align 2 -gTileset_Underwater:: @ 83DFB24 +gTileset_Underwater:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -494,7 +494,7 @@ gTileset_Underwater:: @ 83DFB24 .4byte InitTilesetAnim_Underwater .align 2 -gTileset_PetalburgGym:: @ 83DFB3C +gTileset_PetalburgGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -505,7 +505,7 @@ gTileset_PetalburgGym:: @ 83DFB3C .4byte NULL @ animation callback .align 2 -gTileset_SootopolisGym:: @ 83DFB54 +gTileset_SootopolisGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -516,7 +516,7 @@ gTileset_SootopolisGym:: @ 83DFB54 .4byte InitTilesetAnim_SootopolisGym .align 2 -gTileset_GenericBuilding:: @ 83DFB6C +gTileset_GenericBuilding:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -527,7 +527,7 @@ gTileset_GenericBuilding:: @ 83DFB6C .4byte NULL @ animation callback .align 2 -gTileset_MauvilleGameCorner:: @ 83DFB84 +gTileset_MauvilleGameCorner:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -538,7 +538,7 @@ gTileset_MauvilleGameCorner:: @ 83DFB84 .4byte NULL @ animation callback .align 2 -gTileset_RustboroGym:: @ 83DFB9C +gTileset_RustboroGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -549,7 +549,7 @@ gTileset_RustboroGym:: @ 83DFB9C .4byte NULL @ animation callback .align 2 -gTileset_DewfordGym:: @ 83DFBB4 +gTileset_DewfordGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -560,7 +560,7 @@ gTileset_DewfordGym:: @ 83DFBB4 .4byte NULL @ animation callback .align 2 -gTileset_MauvilleGym:: @ 83DFBCC +gTileset_MauvilleGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -571,7 +571,7 @@ gTileset_MauvilleGym:: @ 83DFBCC .4byte InitTilesetAnim_MauvilleGym .align 2 -gTileset_LavaridgeGym:: @ 83DFBE4 +gTileset_LavaridgeGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -582,7 +582,7 @@ gTileset_LavaridgeGym:: @ 83DFBE4 .4byte NULL @ animation callback .align 2 -gTileset_TrickHousePuzzle:: @ 83DFBFC +gTileset_TrickHousePuzzle:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -593,7 +593,7 @@ gTileset_TrickHousePuzzle:: @ 83DFBFC .4byte NULL @ animation callback .align 2 -gTileset_FortreeGym:: @ 83DFC14 +gTileset_FortreeGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -604,7 +604,7 @@ gTileset_FortreeGym:: @ 83DFC14 .4byte NULL @ animation callback .align 2 -gTileset_MossdeepGym:: @ 83DFC2C +gTileset_MossdeepGym:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -615,7 +615,7 @@ gTileset_MossdeepGym:: @ 83DFC2C .4byte NULL @ animation callback .align 2 -gTileset_InsideShip:: @ 83DFC44 +gTileset_InsideShip:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -626,7 +626,7 @@ gTileset_InsideShip:: @ 83DFC44 .4byte NULL @ animation callback .align 2 -gTileset_SecretBase:: @ 83DFC5C +gTileset_SecretBase:: .byte FALSE @ is compressed .byte FALSE @ is secondary tileset .2byte 0 @ padding @@ -637,15 +637,15 @@ gTileset_SecretBase:: @ 83DFC5C .4byte NULL @ animation callback .align 2 -gTilesetPointer_SecretBase:: @ 83DFC74 +gTilesetPointer_SecretBase:: .4byte gTileset_SecretBase .align 2 -gTilesetPointer_SecretBaseRedCave:: @ 83DFC78 +gTilesetPointer_SecretBaseRedCave:: .4byte gTileset_SecretBaseRedCave .align 2 -gTileset_EliteFour:: @ 83DFC7C +gTileset_EliteFour:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -656,7 +656,7 @@ gTileset_EliteFour:: @ 83DFC7C .4byte InitTilesetAnim_EliteFour .align 2 -gTileset_BattleFrontier:: @ 83DFC94 +gTileset_BattleFrontier:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -667,7 +667,7 @@ gTileset_BattleFrontier:: @ 83DFC94 .4byte NULL @ animation callback .align 2 -gTileset_BattlePalace:: @ 83DFCAC +gTileset_BattlePalace:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -678,7 +678,7 @@ gTileset_BattlePalace:: @ 83DFCAC .4byte NULL @ animation callback .align 2 -gTileset_BattleDome:: @ 83DFCC4 +gTileset_BattleDome:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -689,7 +689,7 @@ gTileset_BattleDome:: @ 83DFCC4 .4byte InitTilesetAnim_BattleDome .align 2 -gTileset_BattleFactory:: @ 83DFCDC +gTileset_BattleFactory:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -700,7 +700,7 @@ gTileset_BattleFactory:: @ 83DFCDC .4byte NULL @ animation callback .align 2 -gTileset_BattlePike:: @ 83DFCF4 +gTileset_BattlePike:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -711,7 +711,7 @@ gTileset_BattlePike:: @ 83DFCF4 .4byte NULL @ animation callback .align 2 -gTileset_BattleArena:: @ 83DFD0C +gTileset_BattleArena:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -722,7 +722,7 @@ gTileset_BattleArena:: @ 83DFD0C .4byte NULL @ animation callback .align 2 -gTileset_BattlePyramid:: @ 83DFD24 +gTileset_BattlePyramid:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -733,7 +733,7 @@ gTileset_BattlePyramid:: @ 83DFD24 .4byte InitTilesetAnim_BattlePyramid .align 2 -gTileset_MirageTower:: @ 83DFD3C +gTileset_MirageTower:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -744,7 +744,7 @@ gTileset_MirageTower:: @ 83DFD3C .4byte NULL @ animation callback .align 2 -gTileset_MossdeepGameCorner:: @ 83DFD54 +gTileset_MossdeepGameCorner:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -755,7 +755,7 @@ gTileset_MossdeepGameCorner:: @ 83DFD54 .4byte NULL @ animation callback .align 2 -gTileset_IslandHarbor:: @ 83DFD6C +gTileset_IslandHarbor:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -766,7 +766,7 @@ gTileset_IslandHarbor:: @ 83DFD6C .4byte NULL @ animation callback .align 2 -gTileset_TrainerHill:: @ 83DFD84 +gTileset_TrainerHill:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -777,7 +777,7 @@ gTileset_TrainerHill:: @ 83DFD84 .4byte NULL @ animation callback .align 2 -gTileset_NavelRock:: @ 83DFD9C +gTileset_NavelRock:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -788,7 +788,7 @@ gTileset_NavelRock:: @ 83DFD9C .4byte NULL @ animation callback .align 2 -gTileset_BattleFrontierRankingHall:: @ 83DFDB4 +gTileset_BattleFrontierRankingHall:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -799,7 +799,7 @@ gTileset_BattleFrontierRankingHall:: @ 83DFDB4 .4byte NULL @ animation callback .align 2 -gTileset_BattleTent:: @ 83DFDCC +gTileset_BattleTent:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -810,7 +810,7 @@ gTileset_BattleTent:: @ 83DFDCC .4byte NULL @ animation callback .align 2 -gTileset_MysteryEventsHouse:: @ 83DFDE4 +gTileset_MysteryEventsHouse:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding @@ -821,7 +821,7 @@ gTileset_MysteryEventsHouse:: @ 83DFDE4 .4byte NULL @ animation callback .align 2 -gTileset_UnionRoom:: @ 83DFDFC +gTileset_UnionRoom:: .byte TRUE @ is compressed .byte TRUE @ is secondary tileset .2byte 0 @ padding diff --git a/data/tilesets/metatiles.inc b/data/tilesets/metatiles.inc index 1d0875147fe4..5fbb529d0afd 100644 --- a/data/tilesets/metatiles.inc +++ b/data/tilesets/metatiles.inc @@ -1,559 +1,559 @@ .align 1 -gMetatiles_General:: @ 83960F0 +gMetatiles_General:: .incbin "data/tilesets/primary/general/metatiles.bin" .align 1 -gMetatileAttributes_General:: @ 83980F0 +gMetatileAttributes_General:: .incbin "data/tilesets/primary/general/metatile_attributes.bin" .align 1 -gMetatiles_Petalburg:: @ 83984F0 +gMetatiles_Petalburg:: .incbin "data/tilesets/secondary/petalburg/metatiles.bin" .align 1 -gMetatileAttributes_Petalburg:: @ 8398DF0 +gMetatileAttributes_Petalburg:: .incbin "data/tilesets/secondary/petalburg/metatile_attributes.bin" .align 1 -gMetatiles_Rustboro:: @ 8398F10 +gMetatiles_Rustboro:: .incbin "data/tilesets/secondary/rustboro/metatiles.bin" .align 1 -gMetatileAttributes_Rustboro:: @ 839A4F0 +gMetatileAttributes_Rustboro:: .incbin "data/tilesets/secondary/rustboro/metatile_attributes.bin" .align 1 -gMetatiles_Dewford:: @ 839A7AC +gMetatiles_Dewford:: .incbin "data/tilesets/secondary/dewford/metatiles.bin" .align 1 -gMetatileAttributes_Dewford:: @ 839BF5C +gMetatileAttributes_Dewford:: .incbin "data/tilesets/secondary/dewford/metatile_attributes.bin" .align 1 -gMetatiles_Slateport:: @ 839C252 +gMetatiles_Slateport:: .incbin "data/tilesets/secondary/slateport/metatiles.bin" .align 1 -gMetatileAttributes_Slateport:: @ 839DBB2 +gMetatileAttributes_Slateport:: .incbin "data/tilesets/secondary/slateport/metatile_attributes.bin" .align 1 -gMetatiles_Mauville:: @ 839DEDE +gMetatiles_Mauville:: .incbin "data/tilesets/secondary/mauville/metatiles.bin" .align 1 -gMetatileAttributes_Mauville:: @ 839FEBE +gMetatileAttributes_Mauville:: .incbin "data/tilesets/secondary/mauville/metatile_attributes.bin" .align 1 -gMetatiles_Lavaridge:: @ 83A02BA +gMetatiles_Lavaridge:: .incbin "data/tilesets/secondary/lavaridge/metatiles.bin" .align 1 -gMetatileAttributes_Lavaridge:: @ 83A1E4A +gMetatileAttributes_Lavaridge:: .incbin "data/tilesets/secondary/lavaridge/metatile_attributes.bin" .align 1 -gMetatiles_Fallarbor:: @ 83A21BC +gMetatiles_Fallarbor:: .incbin "data/tilesets/secondary/fallarbor/metatiles.bin" .align 1 -gMetatileAttributes_Fallarbor:: @ 83A38AC +gMetatileAttributes_Fallarbor:: .incbin "data/tilesets/secondary/fallarbor/metatile_attributes.bin" .align 1 -gMetatiles_Fortree:: @ 83A3B8A +gMetatiles_Fortree:: .incbin "data/tilesets/secondary/fortree/metatiles.bin" .align 1 -gMetatileAttributes_Fortree:: @ 83A4D0A +gMetatileAttributes_Fortree:: .incbin "data/tilesets/secondary/fortree/metatile_attributes.bin" .align 1 -gMetatiles_Lilycove:: @ 83A4F3A +gMetatiles_Lilycove:: .incbin "data/tilesets/secondary/lilycove/metatiles.bin" .align 1 -gMetatileAttributes_Lilycove:: @ 83A652A +gMetatileAttributes_Lilycove:: .incbin "data/tilesets/secondary/lilycove/metatile_attributes.bin" .align 1 -gMetatiles_Mossdeep:: @ 83A67E8 +gMetatiles_Mossdeep:: .incbin "data/tilesets/secondary/mossdeep/metatiles.bin" .align 1 -gMetatileAttributes_Mossdeep:: @ 83A8448 +gMetatileAttributes_Mossdeep:: .incbin "data/tilesets/secondary/mossdeep/metatile_attributes.bin" .align 1 -gMetatiles_EverGrande:: @ 83A87D4 +gMetatiles_EverGrande:: .incbin "data/tilesets/secondary/ever_grande/metatiles.bin" .align 1 -gMetatileAttributes_EverGrande:: @ 83A9254 +gMetatileAttributes_EverGrande:: .incbin "data/tilesets/secondary/ever_grande/metatile_attributes.bin" .align 1 -gMetatiles_Pacifidlog:: @ 83A93A4 +gMetatiles_Pacifidlog:: .incbin "data/tilesets/secondary/pacifidlog/metatiles.bin" .align 1 -gMetatileAttributes_Pacifidlog:: @ 83AA054 +gMetatileAttributes_Pacifidlog:: .incbin "data/tilesets/secondary/pacifidlog/metatile_attributes.bin" .align 1 -gMetatiles_Sootopolis:: @ 83AA1EA +gMetatiles_Sootopolis:: .incbin "data/tilesets/secondary/sootopolis/metatiles.bin" .align 1 -gMetatileAttributes_Sootopolis:: @ 83AB1CA +gMetatileAttributes_Sootopolis:: .incbin "data/tilesets/secondary/sootopolis/metatile_attributes.bin" .align 1 -gMetatiles_BattleFrontierOutsideWest:: @ 83AB3C6 +gMetatiles_BattleFrontierOutsideWest:: .incbin "data/tilesets/secondary/battle_frontier_outside_west/metatiles.bin" .align 1 -gMetatileAttributes_BattleFrontierOutsideWest:: @ 83AD3A6 +gMetatileAttributes_BattleFrontierOutsideWest:: .incbin "data/tilesets/secondary/battle_frontier_outside_west/metatile_attributes.bin" .align 1 -gMetatiles_BattleFrontierOutsideEast:: @ 83AD7A2 +gMetatiles_BattleFrontierOutsideEast:: .incbin "data/tilesets/secondary/battle_frontier_outside_east/metatiles.bin" .align 1 -gMetatileAttributes_BattleFrontierOutsideEast:: @ 83AF782 +gMetatileAttributes_BattleFrontierOutsideEast:: .incbin "data/tilesets/secondary/battle_frontier_outside_east/metatile_attributes.bin" .align 1 -gMetatiles_InsideBuilding:: @ 83AFB7E +gMetatiles_InsideBuilding:: .incbin "data/tilesets/primary/building/metatiles.bin" .align 1 -gMetatileAttributes_InsideBuilding:: @ 83AFBFE +gMetatileAttributes_InsideBuilding:: .incbin "data/tilesets/primary/building/metatile_attributes.bin" .align 1 -gMetatiles_Shop:: @ 83AFC0E +gMetatiles_Shop:: .incbin "data/tilesets/secondary/shop/metatiles.bin" .align 1 -gMetatileAttributes_Shop:: @ 83B0E1E +gMetatileAttributes_Shop:: .incbin "data/tilesets/secondary/shop/metatile_attributes.bin" .align 1 -gMetatiles_PokemonCenter:: @ 83B1060 +gMetatiles_PokemonCenter:: .incbin "data/tilesets/secondary/pokemon_center/metatiles.bin" .align 1 -gMetatileAttributes_PokemonCenter:: @ 83B1EE0 +gMetatileAttributes_PokemonCenter:: .incbin "data/tilesets/secondary/pokemon_center/metatile_attributes.bin" .align 1 -gMetatiles_Cave:: @ 83B20B0 +gMetatiles_Cave:: .incbin "data/tilesets/secondary/cave/metatiles.bin" .align 1 -gMetatileAttributes_Cave:: @ 83B3A90 +gMetatileAttributes_Cave:: .incbin "data/tilesets/secondary/cave/metatile_attributes.bin" .align 1 -gMetatiles_PokemonSchool:: @ 83B3DCC +gMetatiles_PokemonSchool:: .incbin "data/tilesets/secondary/pokemon_school/metatiles.bin" .align 1 -gMetatileAttributes_PokemonSchool:: @ 83B416C +gMetatileAttributes_PokemonSchool:: .incbin "data/tilesets/secondary/pokemon_school/metatile_attributes.bin" .align 1 -gMetatiles_PokemonFanClub:: @ 83B41E0 +gMetatiles_PokemonFanClub:: .incbin "data/tilesets/secondary/pokemon_fan_club/metatiles.bin" .align 1 -gMetatileAttributes_PokemonFanClub:: @ 83B4860 +gMetatileAttributes_PokemonFanClub:: .incbin "data/tilesets/secondary/pokemon_fan_club/metatile_attributes.bin" .align 1 -gMetatiles_Unused1:: @ 83B4930 +gMetatiles_Unused1:: .incbin "data/tilesets/secondary/unused_1/metatiles.bin" .align 1 -gMetatileAttributes_Unused1:: @ 83B4950 +gMetatileAttributes_Unused1:: .incbin "data/tilesets/secondary/unused_1/metatile_attributes.bin" .align 1 -gMetatiles_MeteorFalls:: @ 83B4954 +gMetatiles_MeteorFalls:: .incbin "data/tilesets/secondary/meteor_falls/metatiles.bin" .align 1 -gMetatileAttributes_MeteorFalls:: @ 83B5344 +gMetatileAttributes_MeteorFalls:: .incbin "data/tilesets/secondary/meteor_falls/metatile_attributes.bin" .align 1 -gMetatiles_OceanicMuseum:: @ 83B5482 +gMetatiles_OceanicMuseum:: .incbin "data/tilesets/secondary/oceanic_museum/metatiles.bin" .align 1 -gMetatileAttributes_OceanicMuseum:: @ 83B5C22 +gMetatileAttributes_OceanicMuseum:: .incbin "data/tilesets/secondary/oceanic_museum/metatile_attributes.bin" .align 1 -gMetatiles_CableClub:: @ 83B5D16 +gMetatiles_CableClub:: .incbin "data/tilesets/secondary/cable_club/metatiles.bin" .align 1 -gMetatileAttributes_CableClub:: @ 83B6D16 +gMetatileAttributes_CableClub:: .incbin "data/tilesets/secondary/cable_club/metatile_attributes.bin" .align 1 -gMetatiles_SeashoreHouse:: @ 83B6F16 +gMetatiles_SeashoreHouse:: .incbin "data/tilesets/secondary/seashore_house/metatiles.bin" .align 1 -gMetatileAttributes_SeashoreHouse:: @ 83B7296 +gMetatileAttributes_SeashoreHouse:: .incbin "data/tilesets/secondary/seashore_house/metatile_attributes.bin" .align 1 -gMetatiles_PrettyPetalFlowerShop:: @ 83B7306 +gMetatiles_PrettyPetalFlowerShop:: .incbin "data/tilesets/secondary/pretty_petal_flower_shop/metatiles.bin" .align 1 -gMetatileAttributes_PrettyPetalFlowerShop:: @ 83B7786 +gMetatileAttributes_PrettyPetalFlowerShop:: .incbin "data/tilesets/secondary/pretty_petal_flower_shop/metatile_attributes.bin" .align 1 -gMetatiles_PokemonDayCare:: @ 83B7816 +gMetatiles_PokemonDayCare:: .incbin "data/tilesets/secondary/pokemon_day_care/metatiles.bin" .align 1 -gMetatileAttributes_PokemonDayCare:: @ 83B7C56 +gMetatileAttributes_PokemonDayCare:: .incbin "data/tilesets/secondary/pokemon_day_care/metatile_attributes.bin" .align 1 -gMetatiles_Facility:: @ 83B7CDE +gMetatiles_Facility:: .incbin "data/tilesets/secondary/facility/metatiles.bin" .align 1 -gMetatileAttributes_Facility:: @ 83B9CCE +gMetatileAttributes_Facility:: .incbin "data/tilesets/secondary/facility/metatile_attributes.bin" .align 1 -gMetatiles_BikeShop:: @ 83BA0CC +gMetatiles_BikeShop:: .incbin "data/tilesets/secondary/bike_shop/metatiles.bin" .align 1 -gMetatileAttributes_BikeShop:: @ 83BB04C +gMetatileAttributes_BikeShop:: .incbin "data/tilesets/secondary/bike_shop/metatile_attributes.bin" .align 1 -gMetatiles_RusturfTunnel:: @ 83BB23C +gMetatiles_RusturfTunnel:: .incbin "data/tilesets/secondary/rusturf_tunnel/metatiles.bin" .align 1 -gMetatileAttributes_RusturfTunnel:: @ 83BB76C +gMetatileAttributes_RusturfTunnel:: .incbin "data/tilesets/secondary/rusturf_tunnel/metatile_attributes.bin" .align 1 -gMetatiles_SecretBaseSecondary:: @ 83BB812 +gMetatiles_SecretBaseSecondary:: .incbin "data/tilesets/secondary/secret_base/metatiles.bin" .align 1 -gMetatileAttributes_SecretBaseSecondary:: @ 83BCC52 +gMetatileAttributes_SecretBaseSecondary:: .incbin "data/tilesets/secondary/secret_base/metatile_attributes.bin" .align 1 -gMetatiles_InsideOfTruck:: @ 83BCEDA +gMetatiles_InsideOfTruck:: .incbin "data/tilesets/secondary/inside_of_truck/metatiles.bin" .align 1 -gMetatileAttributes_InsideOfTruck:: @ 83BD13A +gMetatileAttributes_InsideOfTruck:: .incbin "data/tilesets/secondary/inside_of_truck/metatile_attributes.bin" .align 1 -gMetatiles_Contest:: @ 83BD186 +gMetatiles_Contest:: .incbin "data/tilesets/secondary/contest/metatiles.bin" .align 1 -gMetatileAttributes_Contest:: @ 83BE016 +gMetatileAttributes_Contest:: .incbin "data/tilesets/secondary/contest/metatile_attributes.bin" .align 1 -gMetatiles_LilycoveMuseum:: @ 83BE1E8 +gMetatiles_LilycoveMuseum:: .incbin "data/tilesets/secondary/lilycove_museum/metatiles.bin" .align 1 -gMetatileAttributes_LilycoveMuseum:: @ 83BEAD8 +gMetatileAttributes_LilycoveMuseum:: .incbin "data/tilesets/secondary/lilycove_museum/metatile_attributes.bin" .align 1 -gMetatiles_BrendansMaysHouse:: @ 83BEBF6 +gMetatiles_BrendansMaysHouse:: .incbin "data/tilesets/secondary/brendans_mays_house/metatiles.bin" .align 1 -gMetatileAttributes_BrendansMaysHouse:: @ 83BF836 +gMetatileAttributes_BrendansMaysHouse:: .incbin "data/tilesets/secondary/brendans_mays_house/metatile_attributes.bin" .align 1 -gMetatiles_Lab:: @ 83BF9BE +gMetatiles_Lab:: .incbin "data/tilesets/secondary/lab/metatiles.bin" .align 1 -gMetatileAttributes_Lab:: @ 83C039E +gMetatileAttributes_Lab:: .incbin "data/tilesets/secondary/lab/metatile_attributes.bin" .align 1 -gMetatiles_Underwater:: @ 83C04DA +gMetatiles_Underwater:: .incbin "data/tilesets/secondary/underwater/metatiles.bin" .align 1 -gMetatileAttributes_Underwater:: @ 83C139A +gMetatileAttributes_Underwater:: .incbin "data/tilesets/secondary/underwater/metatile_attributes.bin" .align 1 -gMetatiles_GenericBuilding:: @ 83C1572 +gMetatiles_GenericBuilding:: .incbin "data/tilesets/secondary/generic_building/metatiles.bin" .align 1 -gMetatileAttributes_GenericBuilding:: @ 83C3572 +gMetatileAttributes_GenericBuilding:: .incbin "data/tilesets/secondary/generic_building/metatile_attributes.bin" .align 1 -gMetatiles_MauvilleGameCorner:: @ 83C3972 +gMetatiles_MauvilleGameCorner:: .incbin "data/tilesets/secondary/mauville_game_corner/metatiles.bin" .align 1 -gMetatileAttributes_MauvilleGameCorner:: @ 83C3F72 +gMetatileAttributes_MauvilleGameCorner:: .incbin "data/tilesets/secondary/mauville_game_corner/metatile_attributes.bin" .align 1 -gMetatiles_Unused2:: @ 83C4032 +gMetatiles_Unused2:: .incbin "data/tilesets/secondary/unused_2/metatiles.bin" .align 1 -gMetatileAttributes_Unused2:: @ 83C43D2 +gMetatileAttributes_Unused2:: .incbin "data/tilesets/secondary/unused_2/metatile_attributes.bin" .align 1 -gMetatiles_RustboroGym:: @ 83C4446 +gMetatiles_RustboroGym:: .incbin "data/tilesets/secondary/rustboro_gym/metatiles.bin" .align 1 -gMetatileAttributes_RustboroGym:: @ 83C47C6 +gMetatileAttributes_RustboroGym:: .incbin "data/tilesets/secondary/rustboro_gym/metatile_attributes.bin" .align 1 -gMetatiles_DewfordGym:: @ 83C4836 +gMetatiles_DewfordGym:: .incbin "data/tilesets/secondary/dewford_gym/metatiles.bin" .align 1 -gMetatileAttributes_DewfordGym:: @ 83C4C86 +gMetatileAttributes_DewfordGym:: .incbin "data/tilesets/secondary/dewford_gym/metatile_attributes.bin" .align 1 -gMetatiles_MauvilleGym:: @ 83C4D10 +gMetatiles_MauvilleGym:: .incbin "data/tilesets/secondary/mauville_gym/metatiles.bin" .align 1 -gMetatileAttributes_MauvilleGym:: @ 83C5460 +gMetatileAttributes_MauvilleGym:: .incbin "data/tilesets/secondary/mauville_gym/metatile_attributes.bin" .align 1 -gMetatiles_LavaridgeGym:: @ 83C554A +gMetatiles_LavaridgeGym:: .incbin "data/tilesets/secondary/lavaridge_gym/metatiles.bin" .align 1 -gMetatileAttributes_LavaridgeGym:: @ 83C591A +gMetatileAttributes_LavaridgeGym:: .incbin "data/tilesets/secondary/lavaridge_gym/metatile_attributes.bin" .align 1 -gMetatiles_PetalburgGym:: @ 83C5994 +gMetatiles_PetalburgGym:: .incbin "data/tilesets/secondary/petalburg_gym/metatiles.bin" .align 1 -gMetatileAttributes_PetalburgGym:: @ 83C6794 +gMetatileAttributes_PetalburgGym:: .incbin "data/tilesets/secondary/petalburg_gym/metatile_attributes.bin" .align 1 -gMetatiles_FortreeGym:: @ 83C6954 +gMetatiles_FortreeGym:: .incbin "data/tilesets/secondary/fortree_gym/metatiles.bin" .align 1 -gMetatileAttributes_FortreeGym:: @ 83C6E54 +gMetatileAttributes_FortreeGym:: .incbin "data/tilesets/secondary/fortree_gym/metatile_attributes.bin" .align 1 -gMetatiles_MossdeepGym:: @ 83C6EF4 +gMetatiles_MossdeepGym:: .incbin "data/tilesets/secondary/mossdeep_gym/metatiles.bin" .align 1 -gMetatileAttributes_MossdeepGym:: @ 83C7644 +gMetatileAttributes_MossdeepGym:: .incbin "data/tilesets/secondary/mossdeep_gym/metatile_attributes.bin" .align 1 -gMetatiles_SootopolisGym:: @ 83C772E +gMetatiles_SootopolisGym:: .incbin "data/tilesets/secondary/sootopolis_gym/metatiles.bin" .align 1 -gMetatileAttributes_SootopolisGym:: @ 83C7ECE +gMetatileAttributes_SootopolisGym:: .incbin "data/tilesets/secondary/sootopolis_gym/metatile_attributes.bin" .align 1 -gMetatiles_TrickHousePuzzle:: @ 83C7FC2 +gMetatiles_TrickHousePuzzle:: .incbin "data/tilesets/secondary/trick_house_puzzle/metatiles.bin" .align 1 -gMetatileAttributes_TrickHousePuzzle:: @ 83C8B92 +gMetatileAttributes_TrickHousePuzzle:: .incbin "data/tilesets/secondary/trick_house_puzzle/metatile_attributes.bin" .align 1 -gMetatiles_InsideShip:: @ 83C8D0C +gMetatiles_InsideShip:: .incbin "data/tilesets/secondary/inside_ship/metatiles.bin" .align 1 -gMetatileAttributes_InsideShip:: @ 83C9CCC +gMetatileAttributes_InsideShip:: .incbin "data/tilesets/secondary/inside_ship/metatile_attributes.bin" .align 1 -gMetatiles_SecretBasePrimary:: @ 83C9EC4 +gMetatiles_SecretBasePrimary:: .incbin "data/tilesets/primary/secret_base/metatiles.bin" .align 1 -gMetatileAttributes_SecretBasePrimary:: @ 83C9EE4 +gMetatileAttributes_SecretBasePrimary:: .incbin "data/tilesets/primary/secret_base/metatile_attributes.bin" .align 1 -gMetatiles_EliteFour:: @ 83C9EE8 +gMetatiles_EliteFour:: .incbin "data/tilesets/secondary/elite_four/metatiles.bin" .align 1 -gMetatileAttributes_EliteFour:: @ 83CB3A8 +gMetatileAttributes_EliteFour:: .incbin "data/tilesets/secondary/elite_four/metatile_attributes.bin" .align 1 -gMetatiles_BattleFrontier:: @ 83CB640 +gMetatiles_BattleFrontier:: .incbin "data/tilesets/secondary/battle_frontier/metatiles.bin" .align 1 -gMetatileAttributes_BattleFrontier:: @ 83CD610 +gMetatileAttributes_BattleFrontier:: .incbin "data/tilesets/secondary/battle_frontier/metatile_attributes.bin" .align 1 -gMetatiles_BattlePalace:: @ 83CDA0A +gMetatiles_BattlePalace:: .incbin "data/tilesets/secondary/battle_palace/metatiles.bin" .align 1 -gMetatileAttributes_BattlePalace:: @ 83CE4EA +gMetatileAttributes_BattlePalace:: .incbin "data/tilesets/secondary/battle_palace/metatile_attributes.bin" .align 1 -gMetatiles_BattleDome:: @ 83CE646 +gMetatiles_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/metatiles.bin" .align 1 -gMetatileAttributes_BattleDome:: @ 83D00F6 +gMetatileAttributes_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/metatile_attributes.bin" .align 1 -gMetatiles_BattleFactory:: @ 83D044C +gMetatiles_BattleFactory:: .incbin "data/tilesets/secondary/battle_factory/metatiles.bin" .align 1 -gMetatileAttributes_BattleFactory:: @ 83D1A6C +gMetatileAttributes_BattleFactory:: .incbin "data/tilesets/secondary/battle_factory/metatile_attributes.bin" .align 1 -gMetatiles_BattlePike:: @ 83D1D30 +gMetatiles_BattlePike:: .incbin "data/tilesets/secondary/battle_pike/metatiles.bin" .align 1 -gMetatileAttributes_BattlePike:: @ 83D32E0 +gMetatileAttributes_BattlePike:: .incbin "data/tilesets/secondary/battle_pike/metatile_attributes.bin" .align 1 -gMetatiles_BattleArena:: @ 83D3596 +gMetatiles_BattleArena:: .incbin "data/tilesets/secondary/battle_arena/metatiles.bin" .align 1 -gMetatileAttributes_BattleArena:: @ 83D40A6 +gMetatileAttributes_BattleArena:: .incbin "data/tilesets/secondary/battle_arena/metatile_attributes.bin" .align 1 -gMetatiles_BattlePyramid:: @ 83D4208 +gMetatiles_BattlePyramid:: .incbin "data/tilesets/secondary/battle_pyramid/metatiles.bin" .align 1 -gMetatileAttributes_BattlePyramid:: @ 83D4FD8 +gMetatileAttributes_BattlePyramid:: .incbin "data/tilesets/secondary/battle_pyramid/metatile_attributes.bin" .align 1 -gMetatiles_MirageTower:: @ 83D5192 +gMetatiles_MirageTower:: .incbin "data/tilesets/secondary/mirage_tower/metatiles.bin" .align 1 -gMetatileAttributes_MirageTower:: @ 83D6B72 +gMetatileAttributes_MirageTower:: .incbin "data/tilesets/secondary/mirage_tower/metatile_attributes.bin" .align 1 -gMetatiles_MossdeepGameCorner:: @ 83D6EAE +gMetatiles_MossdeepGameCorner:: .incbin "data/tilesets/secondary/mossdeep_game_corner/metatiles.bin" .align 1 -gMetatileAttributes_MossdeepGameCorner:: @ 83D71FE +gMetatileAttributes_MossdeepGameCorner:: .incbin "data/tilesets/secondary/mossdeep_game_corner/metatile_attributes.bin" .align 1 -gMetatiles_IslandHarbor:: @ 83D7268 +gMetatiles_IslandHarbor:: .incbin "data/tilesets/secondary/island_harbor/metatiles.bin" .align 1 -gMetatileAttributes_IslandHarbor:: @ 83D8FC8 +gMetatileAttributes_IslandHarbor:: .incbin "data/tilesets/secondary/island_harbor/metatile_attributes.bin" .align 1 -gMetatiles_TrainerHill:: @ 83D9374 +gMetatiles_TrainerHill:: .incbin "data/tilesets/secondary/trainer_hill/metatiles.bin" .align 1 -gMetatileAttributes_TrainerHill:: @ 83DB1D4 +gMetatileAttributes_TrainerHill:: .incbin "data/tilesets/secondary/trainer_hill/metatile_attributes.bin" .align 1 -gMetatiles_NavelRock:: @ 83DB5A0 +gMetatiles_NavelRock:: .incbin "data/tilesets/secondary/navel_rock/metatiles.bin" .align 1 -gMetatileAttributes_NavelRock:: @ 83DD1D0 +gMetatileAttributes_NavelRock:: .incbin "data/tilesets/secondary/navel_rock/metatile_attributes.bin" .align 1 -gMetatiles_BattleFrontierRankingHall:: @ 83DD556 +gMetatiles_BattleFrontierRankingHall:: .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/metatiles.bin" .align 1 -gMetatileAttributes_BattleFrontierRankingHall:: @ 83DDB36 +gMetatileAttributes_BattleFrontierRankingHall:: .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/metatile_attributes.bin" .align 1 -gMetatiles_BattleTent:: @ 83DDBF2 +gMetatiles_BattleTent:: .incbin "data/tilesets/secondary/battle_tent/metatiles.bin" .align 1 -gMetatileAttributes_BattleTent:: @ 83DECC2 +gMetatileAttributes_BattleTent:: .incbin "data/tilesets/secondary/battle_tent/metatile_attributes.bin" .align 1 -gMetatiles_MysteryEventsHouse:: @ 83DEEDC +gMetatiles_MysteryEventsHouse:: .incbin "data/tilesets/secondary/mystery_events_house/metatiles.bin" .align 1 -gMetatileAttributes_MysteryEventsHouse:: @ 83DF30C +gMetatileAttributes_MysteryEventsHouse:: .incbin "data/tilesets/secondary/mystery_events_house/metatile_attributes.bin" .align 1 -gMetatiles_UnionRoom:: @ 83DF392 +gMetatiles_UnionRoom:: .incbin "data/tilesets/secondary/union_room/metatiles.bin" .align 1 -gMetatileAttributes_UnionRoom:: @ 83DF6A2 +gMetatileAttributes_UnionRoom:: .incbin "data/tilesets/secondary/union_room/metatile_attributes.bin" diff --git a/data/unknown_serial_data.s b/data/unknown_serial_data.s index 42eb5c31e09e..2fb1ba42bbe1 100644 --- a/data/unknown_serial_data.s +++ b/data/unknown_serial_data.s @@ -1,5 +1,5 @@ .section .rodata .align 2 -gUnknown_089A3470:: @ 89A3470 +gUnknown_089A3470:: .incbin "data/unknown_serial_data.bin" From e67729f6473a485c18f3d96dd36d6496a30047c1 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 21 Jul 2021 00:56:04 -0400 Subject: [PATCH 242/762] Remove address comments in sound directory --- sound/cry_tables.inc | 1556 +++++++++++++-------------- sound/music_player_table.inc | 2 +- sound/programmable_wave_data.inc | 50 +- sound/song_table.inc | 4 +- sound/voicegroups/voicegroup000.inc | 126 +-- sound/voicegroups/voicegroup001.inc | 60 +- sound/voicegroups/voicegroup002.inc | 110 +- sound/voicegroups/voicegroup003.inc | 110 +- sound/voicegroups/voicegroup004.inc | 182 ++-- sound/voicegroups/voicegroup005.inc | 10 +- sound/voicegroups/voicegroup006.inc | 8 +- sound/voicegroups/voicegroup007.inc | 264 ++--- sound/voicegroups/voicegroup008.inc | 6 +- sound/voicegroups/voicegroup009.inc | 6 +- sound/voicegroups/voicegroup010.inc | 170 +-- sound/voicegroups/voicegroup011.inc | 258 ++--- sound/voicegroups/voicegroup012.inc | 206 ++-- sound/voicegroups/voicegroup013.inc | 182 ++-- sound/voicegroups/voicegroup014.inc | 172 +-- sound/voicegroups/voicegroup015.inc | 186 ++-- sound/voicegroups/voicegroup016.inc | 132 +-- sound/voicegroups/voicegroup017.inc | 184 ++-- sound/voicegroups/voicegroup018.inc | 258 ++--- sound/voicegroups/voicegroup019.inc | 172 +-- sound/voicegroups/voicegroup020.inc | 176 +-- sound/voicegroups/voicegroup021.inc | 104 +- sound/voicegroups/voicegroup022.inc | 132 +-- sound/voicegroups/voicegroup023.inc | 180 ++-- sound/voicegroups/voicegroup024.inc | 184 ++-- sound/voicegroups/voicegroup025.inc | 170 +-- sound/voicegroups/voicegroup026.inc | 172 +-- sound/voicegroups/voicegroup027.inc | 258 ++--- sound/voicegroups/voicegroup028.inc | 168 +-- sound/voicegroups/voicegroup029.inc | 178 +-- sound/voicegroups/voicegroup030.inc | 112 +- sound/voicegroups/voicegroup031.inc | 132 +-- sound/voicegroups/voicegroup032.inc | 258 ++--- sound/voicegroups/voicegroup033.inc | 168 +-- sound/voicegroups/voicegroup034.inc | 170 +-- sound/voicegroups/voicegroup035.inc | 172 +-- sound/voicegroups/voicegroup036.inc | 258 ++--- sound/voicegroups/voicegroup037.inc | 180 ++-- sound/voicegroups/voicegroup038.inc | 166 +-- sound/voicegroups/voicegroup039.inc | 258 ++--- sound/voicegroups/voicegroup040.inc | 258 ++--- sound/voicegroups/voicegroup041.inc | 258 ++--- sound/voicegroups/voicegroup042.inc | 258 ++--- sound/voicegroups/voicegroup043.inc | 164 +-- sound/voicegroups/voicegroup044.inc | 164 +-- sound/voicegroups/voicegroup045.inc | 258 ++--- sound/voicegroups/voicegroup046.inc | 258 ++--- sound/voicegroups/voicegroup047.inc | 258 ++--- sound/voicegroups/voicegroup048.inc | 178 +-- sound/voicegroups/voicegroup049.inc | 258 ++--- sound/voicegroups/voicegroup050.inc | 258 ++--- sound/voicegroups/voicegroup051.inc | 150 +-- sound/voicegroups/voicegroup052.inc | 258 ++--- sound/voicegroups/voicegroup053.inc | 258 ++--- sound/voicegroups/voicegroup054.inc | 258 ++--- sound/voicegroups/voicegroup055.inc | 258 ++--- sound/voicegroups/voicegroup056.inc | 258 ++--- sound/voicegroups/voicegroup057.inc | 258 ++--- sound/voicegroups/voicegroup058.inc | 258 ++--- sound/voicegroups/voicegroup059.inc | 180 ++-- sound/voicegroups/voicegroup060.inc | 258 ++--- sound/voicegroups/voicegroup061.inc | 258 ++--- sound/voicegroups/voicegroup062.inc | 258 ++--- sound/voicegroups/voicegroup063.inc | 258 ++--- sound/voicegroups/voicegroup064.inc | 258 ++--- sound/voicegroups/voicegroup065.inc | 258 ++--- sound/voicegroups/voicegroup066.inc | 258 ++--- sound/voicegroups/voicegroup067.inc | 258 ++--- sound/voicegroups/voicegroup068.inc | 258 ++--- sound/voicegroups/voicegroup069.inc | 258 ++--- sound/voicegroups/voicegroup070.inc | 258 ++--- sound/voicegroups/voicegroup071.inc | 258 ++--- sound/voicegroups/voicegroup072.inc | 258 ++--- sound/voicegroups/voicegroup073.inc | 258 ++--- sound/voicegroups/voicegroup074.inc | 258 ++--- sound/voicegroups/voicegroup075.inc | 258 ++--- sound/voicegroups/voicegroup076.inc | 258 ++--- sound/voicegroups/voicegroup077.inc | 258 ++--- sound/voicegroups/voicegroup078.inc | 258 ++--- sound/voicegroups/voicegroup079.inc | 258 ++--- sound/voicegroups/voicegroup080.inc | 258 ++--- sound/voicegroups/voicegroup081.inc | 6 +- sound/voicegroups/voicegroup082.inc | 258 ++--- sound/voicegroups/voicegroup083.inc | 170 +-- sound/voicegroups/voicegroup084.inc | 258 ++--- sound/voicegroups/voicegroup085.inc | 258 ++--- sound/voicegroups/voicegroup086.inc | 258 ++--- sound/voicegroups/voicegroup087.inc | 258 ++--- sound/voicegroups/voicegroup088.inc | 258 ++--- sound/voicegroups/voicegroup089.inc | 258 ++--- sound/voicegroups/voicegroup090.inc | 258 ++--- sound/voicegroups/voicegroup091.inc | 258 ++--- sound/voicegroups/voicegroup092.inc | 258 ++--- sound/voicegroups/voicegroup093.inc | 258 ++--- sound/voicegroups/voicegroup094.inc | 258 ++--- sound/voicegroups/voicegroup095.inc | 258 ++--- sound/voicegroups/voicegroup096.inc | 258 ++--- sound/voicegroups/voicegroup097.inc | 258 ++--- sound/voicegroups/voicegroup098.inc | 258 ++--- sound/voicegroups/voicegroup099.inc | 258 ++--- sound/voicegroups/voicegroup100.inc | 258 ++--- sound/voicegroups/voicegroup101.inc | 222 ++-- sound/voicegroups/voicegroup102.inc | 166 +-- sound/voicegroups/voicegroup103.inc | 258 ++--- sound/voicegroups/voicegroup104.inc | 218 ++-- sound/voicegroups/voicegroup105.inc | 168 +-- sound/voicegroups/voicegroup106.inc | 258 ++--- sound/voicegroups/voicegroup107.inc | 258 ++--- sound/voicegroups/voicegroup108.inc | 258 ++--- sound/voicegroups/voicegroup109.inc | 168 +-- sound/voicegroups/voicegroup110.inc | 258 ++--- sound/voicegroups/voicegroup111.inc | 258 ++--- sound/voicegroups/voicegroup112.inc | 258 ++--- sound/voicegroups/voicegroup113.inc | 258 ++--- sound/voicegroups/voicegroup114.inc | 258 ++--- sound/voicegroups/voicegroup115.inc | 258 ++--- sound/voicegroups/voicegroup116.inc | 258 ++--- sound/voicegroups/voicegroup117.inc | 166 +-- sound/voicegroups/voicegroup118.inc | 184 ++-- sound/voicegroups/voicegroup119.inc | 184 ++-- sound/voicegroups/voicegroup120.inc | 184 ++-- sound/voicegroups/voicegroup121.inc | 174 +-- sound/voicegroups/voicegroup122.inc | 170 +-- sound/voicegroups/voicegroup123.inc | 258 ++--- sound/voicegroups/voicegroup124.inc | 176 +-- sound/voicegroups/voicegroup125.inc | 170 +-- sound/voicegroups/voicegroup126.inc | 258 ++--- sound/voicegroups/voicegroup127.inc | 258 ++--- sound/voicegroups/voicegroup128.inc | 258 ++--- sound/voicegroups/voicegroup129.inc | 258 ++--- sound/voicegroups/voicegroup130.inc | 360 +++---- sound/voicegroups/voicegroup131.inc | 258 ++--- sound/voicegroups/voicegroup132.inc | 258 ++--- sound/voicegroups/voicegroup133.inc | 258 ++--- sound/voicegroups/voicegroup134.inc | 182 ++-- sound/voicegroups/voicegroup135.inc | 168 +-- sound/voicegroups/voicegroup136.inc | 258 ++--- sound/voicegroups/voicegroup137.inc | 258 ++--- sound/voicegroups/voicegroup138.inc | 258 ++--- sound/voicegroups/voicegroup139.inc | 258 ++--- sound/voicegroups/voicegroup140.inc | 10 +- sound/voicegroups/voicegroup141.inc | 258 ++--- sound/voicegroups/voicegroup142.inc | 170 +-- sound/voicegroups/voicegroup143.inc | 258 ++--- sound/voicegroups/voicegroup144.inc | 258 ++--- sound/voicegroups/voicegroup145.inc | 258 ++--- sound/voicegroups/voicegroup146.inc | 258 ++--- sound/voicegroups/voicegroup147.inc | 170 +-- sound/voicegroups/voicegroup148.inc | 258 ++--- sound/voicegroups/voicegroup149.inc | 188 ++-- sound/voicegroups/voicegroup150.inc | 258 ++--- sound/voicegroups/voicegroup151.inc | 178 +-- sound/voicegroups/voicegroup152.inc | 258 ++--- sound/voicegroups/voicegroup153.inc | 258 ++--- sound/voicegroups/voicegroup154.inc | 188 ++-- sound/voicegroups/voicegroup155.inc | 258 ++--- sound/voicegroups/voicegroup156.inc | 258 ++--- sound/voicegroups/voicegroup157.inc | 258 ++--- sound/voicegroups/voicegroup158.inc | 258 ++--- sound/voicegroups/voicegroup159.inc | 258 ++--- sound/voicegroups/voicegroup160.inc | 178 +-- sound/voicegroups/voicegroup161.inc | 258 ++--- sound/voicegroups/voicegroup162.inc | 188 ++-- sound/voicegroups/voicegroup163.inc | 258 ++--- sound/voicegroups/voicegroup164.inc | 258 ++--- sound/voicegroups/voicegroup165.inc | 258 ++--- sound/voicegroups/voicegroup166.inc | 258 ++--- sound/voicegroups/voicegroup167.inc | 258 ++--- sound/voicegroups/voicegroup168.inc | 258 ++--- sound/voicegroups/voicegroup169.inc | 258 ++--- sound/voicegroups/voicegroup170.inc | 170 +-- sound/voicegroups/voicegroup171.inc | 184 ++-- sound/voicegroups/voicegroup172.inc | 258 ++--- sound/voicegroups/voicegroup173.inc | 258 ++--- sound/voicegroups/voicegroup174.inc | 316 +++--- sound/voicegroups/voicegroup175.inc | 106 +- sound/voicegroups/voicegroup176.inc | 98 +- sound/voicegroups/voicegroup177.inc | 182 ++-- sound/voicegroups/voicegroup178.inc | 178 +-- sound/voicegroups/voicegroup179.inc | 178 +-- sound/voicegroups/voicegroup180.inc | 258 ++--- sound/voicegroups/voicegroup181.inc | 96 +- sound/voicegroups/voicegroup182.inc | 178 +-- sound/voicegroups/voicegroup183.inc | 258 ++--- sound/voicegroups/voicegroup184.inc | 174 +-- sound/voicegroups/voicegroup185.inc | 258 ++--- sound/voicegroups/voicegroup186.inc | 258 ++--- sound/voicegroups/voicegroup187.inc | 258 ++--- sound/voicegroups/voicegroup188.inc | 258 ++--- sound/voicegroups/voicegroup189.inc | 186 ++-- sound/voicegroups/voicegroup190.inc | 178 +-- 195 files changed, 21591 insertions(+), 21591 deletions(-) diff --git a/sound/cry_tables.inc b/sound/cry_tables.inc index 3eb3731a8fc0..56548567661a 100644 --- a/sound/cry_tables.inc +++ b/sound/cry_tables.inc @@ -1,781 +1,781 @@ .align 2 -gCryTable:: @ 869DCF4 - cry Cry_Bulbasaur @ 869DCF4 - cry Cry_Ivysaur @ 869DD00 - cry Cry_Venusaur @ 869DD0C - cry Cry_Charmander @ 869DD18 - cry Cry_Charmeleon @ 869DD24 - cry Cry_Charizard @ 869DD30 - cry Cry_Squirtle @ 869DD3C - cry Cry_Wartortle @ 869DD48 - cry Cry_Blastoise @ 869DD54 - cry Cry_Caterpie @ 869DD60 - cry Cry_Metapod @ 869DD6C - cry Cry_Butterfree @ 869DD78 - cry Cry_Weedle @ 869DD84 - cry Cry_Kakuna @ 869DD90 - cry Cry_Beedrill @ 869DD9C - cry Cry_Pidgey @ 869DDA8 - cry Cry_Pidgeotto @ 869DDB4 - cry Cry_Pidgeot @ 869DDC0 - cry Cry_Rattata @ 869DDCC - cry Cry_Raticate @ 869DDD8 - cry Cry_Spearow @ 869DDE4 - cry Cry_Fearow @ 869DDF0 - cry Cry_Ekans @ 869DDFC - cry Cry_Arbok @ 869DE08 - cry Cry_Pikachu @ 869DE14 - cry Cry_Raichu @ 869DE20 - cry Cry_Sandshrew @ 869DE2C - cry Cry_Sandslash @ 869DE38 - cry Cry_NidoranF @ 869DE44 - cry Cry_Nidorina @ 869DE50 - cry Cry_Nidoqueen @ 869DE5C - cry Cry_NidoranM @ 869DE68 - cry Cry_Nidorino @ 869DE74 - cry Cry_Nidoking @ 869DE80 - cry Cry_Clefairy @ 869DE8C - cry Cry_Clefable @ 869DE98 - cry Cry_Vulpix @ 869DEA4 - cry Cry_Ninetales @ 869DEB0 - cry Cry_Jigglypuff @ 869DEBC - cry Cry_Wigglytuff @ 869DEC8 - cry Cry_Zubat @ 869DED4 - cry Cry_Golbat @ 869DEE0 - cry Cry_Oddish @ 869DEEC - cry Cry_Gloom @ 869DEF8 - cry Cry_Vileplume @ 869DF04 - cry Cry_Paras @ 869DF10 - cry Cry_Parasect @ 869DF1C - cry Cry_Venonat @ 869DF28 - cry Cry_Venomoth @ 869DF34 - cry Cry_Diglett @ 869DF40 - cry Cry_Dugtrio @ 869DF4C - cry Cry_Meowth @ 869DF58 - cry Cry_Persian @ 869DF64 - cry Cry_Psyduck @ 869DF70 - cry Cry_Golduck @ 869DF7C - cry Cry_Mankey @ 869DF88 - cry Cry_Primeape @ 869DF94 - cry Cry_Growlithe @ 869DFA0 - cry Cry_Arcanine @ 869DFAC - cry Cry_Poliwag @ 869DFB8 - cry Cry_Poliwhirl @ 869DFC4 - cry Cry_Poliwrath @ 869DFD0 - cry Cry_Abra @ 869DFDC - cry Cry_Kadabra @ 869DFE8 - cry Cry_Alakazam @ 869DFF4 - cry Cry_Machop @ 869E000 - cry Cry_Machoke @ 869E00C - cry Cry_Machamp @ 869E018 - cry Cry_Bellsprout @ 869E024 - cry Cry_Weepinbell @ 869E030 - cry Cry_Victreebel @ 869E03C - cry Cry_Tentacool @ 869E048 - cry Cry_Tentacruel @ 869E054 - cry Cry_Geodude @ 869E060 - cry Cry_Graveler @ 869E06C - cry Cry_Golem @ 869E078 - cry Cry_Ponyta @ 869E084 - cry Cry_Rapidash @ 869E090 - cry Cry_Slowpoke @ 869E09C - cry Cry_Slowbro @ 869E0A8 - cry Cry_Magnemite @ 869E0B4 - cry Cry_Magneton @ 869E0C0 - cry Cry_Farfetchd @ 869E0CC - cry Cry_Doduo @ 869E0D8 - cry Cry_Dodrio @ 869E0E4 - cry Cry_Seel @ 869E0F0 - cry Cry_Dewgong @ 869E0FC - cry Cry_Grimer @ 869E108 - cry Cry_Muk @ 869E114 - cry Cry_Shellder @ 869E120 - cry Cry_Cloyster @ 869E12C - cry Cry_Gastly @ 869E138 - cry Cry_Haunter @ 869E144 - cry Cry_Gengar @ 869E150 - cry Cry_Onix @ 869E15C - cry Cry_Drowzee @ 869E168 - cry Cry_Hypno @ 869E174 - cry Cry_Krabby @ 869E180 - cry Cry_Kingler @ 869E18C - cry Cry_Voltorb @ 869E198 - cry Cry_Electrode @ 869E1A4 - cry Cry_Exeggcute @ 869E1B0 - cry Cry_Exeggutor @ 869E1BC - cry Cry_Cubone @ 869E1C8 - cry Cry_Marowak @ 869E1D4 - cry Cry_Hitmonlee @ 869E1E0 - cry Cry_Hitmonchan @ 869E1EC - cry Cry_Lickitung @ 869E1F8 - cry Cry_Koffing @ 869E204 - cry Cry_Weezing @ 869E210 - cry Cry_Rhyhorn @ 869E21C - cry Cry_Rhydon @ 869E228 - cry Cry_Chansey @ 869E234 - cry Cry_Tangela @ 869E240 - cry Cry_Kangaskhan @ 869E24C - cry Cry_Horsea @ 869E258 - cry Cry_Seadra @ 869E264 - cry Cry_Goldeen @ 869E270 - cry Cry_Seaking @ 869E27C - cry Cry_Staryu @ 869E288 - cry Cry_Starmie @ 869E294 - cry Cry_MrMime @ 869E2A0 - cry Cry_Scyther @ 869E2AC - cry Cry_Jynx @ 869E2B8 - cry Cry_Electabuzz @ 869E2C4 - cry Cry_Magmar @ 869E2D0 - cry Cry_Pinsir @ 869E2DC - cry Cry_Tauros @ 869E2E8 - cry Cry_Magikarp @ 869E2F4 - cry Cry_Gyarados @ 869E300 - cry Cry_Lapras @ 869E30C - cry Cry_Ditto @ 869E318 - cry Cry_Eevee @ 869E324 - cry Cry_Vaporeon @ 869E330 - cry Cry_Jolteon @ 869E33C - cry Cry_Flareon @ 869E348 - cry Cry_Porygon @ 869E354 - cry Cry_Omanyte @ 869E360 - cry Cry_Omastar @ 869E36C - cry Cry_Kabuto @ 869E378 - cry Cry_Kabutops @ 869E384 - cry Cry_Aerodactyl @ 869E390 - cry Cry_Snorlax @ 869E39C - cry Cry_Articuno @ 869E3A8 - cry Cry_Zapdos @ 869E3B4 - cry Cry_Moltres @ 869E3C0 - cry Cry_Dratini @ 869E3CC - cry Cry_Dragonair @ 869E3D8 - cry Cry_Dragonite @ 869E3E4 - cry Cry_Mewtwo @ 869E3F0 - cry Cry_Mew @ 869E3FC - cry Cry_Chikorita @ 869E408 - cry Cry_Bayleef @ 869E414 - cry Cry_Meganium @ 869E420 - cry Cry_Cyndaquil @ 869E42C - cry Cry_Quilava @ 869E438 - cry Cry_Typhlosion @ 869E444 - cry Cry_Totodile @ 869E450 - cry Cry_Croconaw @ 869E45C - cry Cry_Feraligatr @ 869E468 - cry Cry_Sentret @ 869E474 - cry Cry_Furret @ 869E480 - cry Cry_Hoothoot @ 869E48C - cry Cry_Noctowl @ 869E498 - cry Cry_Ledyba @ 869E4A4 - cry Cry_Ledian @ 869E4B0 - cry Cry_Spinarak @ 869E4BC - cry Cry_Ariados @ 869E4C8 - cry Cry_Crobat @ 869E4D4 - cry Cry_Chinchou @ 869E4E0 - cry Cry_Lanturn @ 869E4EC - cry Cry_Pichu @ 869E4F8 - cry Cry_Cleffa @ 869E504 - cry Cry_Igglybuff @ 869E510 - cry Cry_Togepi @ 869E51C - cry Cry_Togetic @ 869E528 - cry Cry_Natu @ 869E534 - cry Cry_Xatu @ 869E540 - cry Cry_Mareep @ 869E54C - cry Cry_Flaaffy @ 869E558 - cry Cry_Ampharos @ 869E564 - cry Cry_Bellossom @ 869E570 - cry Cry_Marill @ 869E57C - cry Cry_Azumarill @ 869E588 - cry Cry_Sudowoodo @ 869E594 - cry Cry_Politoed @ 869E5A0 - cry Cry_Hoppip @ 869E5AC - cry Cry_Skiploom @ 869E5B8 - cry Cry_Jumpluff @ 869E5C4 - cry Cry_Aipom @ 869E5D0 - cry Cry_Sunkern @ 869E5DC - cry Cry_Sunflora @ 869E5E8 - cry Cry_Yanma @ 869E5F4 - cry Cry_Wooper @ 869E600 - cry Cry_Quagsire @ 869E60C - cry Cry_Espeon @ 869E618 - cry Cry_Umbreon @ 869E624 - cry Cry_Murkrow @ 869E630 - cry Cry_Slowking @ 869E63C - cry Cry_Misdreavus @ 869E648 - cry Cry_Unown @ 869E654 - cry Cry_Wobbuffet @ 869E660 - cry Cry_Girafarig @ 869E66C - cry Cry_Pineco @ 869E678 - cry Cry_Forretress @ 869E684 - cry Cry_Dunsparce @ 869E690 - cry Cry_Gligar @ 869E69C - cry Cry_Steelix @ 869E6A8 - cry Cry_Snubbull @ 869E6B4 - cry Cry_Granbull @ 869E6C0 - cry Cry_Qwilfish @ 869E6CC - cry Cry_Scizor @ 869E6D8 - cry Cry_Shuckle @ 869E6E4 - cry Cry_Heracross @ 869E6F0 - cry Cry_Sneasel @ 869E6FC - cry Cry_Teddiursa @ 869E708 - cry Cry_Ursaring @ 869E714 - cry Cry_Slugma @ 869E720 - cry Cry_Magcargo @ 869E72C - cry Cry_Swinub @ 869E738 - cry Cry_Piloswine @ 869E744 - cry Cry_Corsola @ 869E750 - cry Cry_Remoraid @ 869E75C - cry Cry_Octillery @ 869E768 - cry Cry_Delibird @ 869E774 - cry Cry_Mantine @ 869E780 - cry Cry_Skarmory @ 869E78C - cry Cry_Houndour @ 869E798 - cry Cry_Houndoom @ 869E7A4 - cry Cry_Kingdra @ 869E7B0 - cry Cry_Phanpy @ 869E7BC - cry Cry_Donphan @ 869E7C8 - cry Cry_Porygon2 @ 869E7D4 - cry Cry_Stantler @ 869E7E0 - cry Cry_Smeargle @ 869E7EC - cry Cry_Tyrogue @ 869E7F8 - cry Cry_Hitmontop @ 869E804 - cry Cry_Smoochum @ 869E810 - cry Cry_Elekid @ 869E81C - cry Cry_Magby @ 869E828 - cry Cry_Miltank @ 869E834 - cry Cry_Blissey @ 869E840 - cry Cry_Raikou @ 869E84C - cry Cry_Entei @ 869E858 - cry Cry_Suicune @ 869E864 - cry Cry_Larvitar @ 869E870 - cry Cry_Pupitar @ 869E87C - cry Cry_Tyranitar @ 869E888 - cry Cry_Lugia @ 869E894 - cry Cry_HoOh @ 869E8A0 - cry Cry_Celebi @ 869E8AC - cry Cry_Kecleon @ 869E8B8 - cry Cry_Roselia @ 869E8C4 - cry Cry_Torkoal @ 869E8D0 - cry Cry_Electrike @ 869E8DC - cry Cry_Manectric @ 869E8E8 - cry Cry_Duskull @ 869E8F4 - cry Cry_Latias @ 869E900 - cry Cry_Wynaut @ 869E90C - cry Cry_Seviper @ 869E918 - cry Cry_Sharpedo @ 869E924 - cry Cry_Zangoose @ 869E930 - cry Cry_Azurill @ 869E93C - cry Cry_Swablu @ 869E948 - cry Cry_Altaria @ 869E954 - cry Cry_Unused265 @ 869E960 - cry Cry_Taillow @ 869E96C - cry Cry_Swellow @ 869E978 - cry Cry_Unused268 @ 869E984 - cry Cry_Spinda @ 869E990 - cry Cry_Torchic @ 869E99C - cry Cry_Combusken @ 869E9A8 - cry Cry_Blaziken @ 869E9B4 - cry Cry_Treecko @ 869E9C0 - cry Cry_Grovyle @ 869E9CC - cry Cry_Sceptile @ 869E9D8 - cry Cry_Mudkip @ 869E9E4 - cry Cry_Marshtomp @ 869E9F0 - cry Cry_Swampert @ 869E9FC - cry Cry_Pelipper @ 869EA08 - cry Cry_Wingull @ 869EA14 - cry Cry_Banette @ 869EA20 - cry Cry_Shuppet @ 869EA2C - cry Cry_Lotad @ 869EA38 - cry Cry_Lombre @ 869EA44 - cry Cry_Ludicolo @ 869EA50 - cry Cry_Seedot @ 869EA5C - cry Cry_Nuzleaf @ 869EA68 - cry Cry_Shiftry @ 869EA74 - cry Cry_Carvanha @ 869EA80 - cry Cry_Wurmple @ 869EA8C - cry Cry_Silcoon @ 869EA98 - cry Cry_Beautifly @ 869EAA4 - cry Cry_Cascoon @ 869EAB0 - cry Cry_Dustox @ 869EABC - cry Cry_Ralts @ 869EAC8 - cry Cry_Kirlia @ 869EAD4 - cry Cry_Gardevoir @ 869EAE0 - cry Cry_Slakoth @ 869EAEC - cry Cry_Vigoroth @ 869EAF8 - cry Cry_Slaking @ 869EB04 - cry Cry_Nincada @ 869EB10 - cry Cry_Ninjask @ 869EB1C - cry Cry_Shedinja @ 869EB28 - cry Cry_Makuhita @ 869EB34 - cry Cry_Hariyama @ 869EB40 - cry Cry_Nosepass @ 869EB4C - cry Cry_Glalie @ 869EB58 - cry Cry_Plusle @ 869EB64 - cry Cry_Minun @ 869EB70 - cry Cry_Surskit @ 869EB7C - cry Cry_Masquerain @ 869EB88 - cry Cry_Skitty @ 869EB94 - cry Cry_Delcatty @ 869EBA0 - cry Cry_Gulpin @ 869EBAC - cry Cry_Swalot @ 869EBB8 - cry Cry_Numel @ 869EBC4 - cry Cry_Camerupt @ 869EBD0 - cry Cry_Barboach @ 869EBDC - cry Cry_Whiscash @ 869EBE8 - cry Cry_Corphish @ 869EBF4 - cry Cry_Crawdaunt @ 869EC00 - cry Cry_Spoink @ 869EC0C - cry Cry_Grumpig @ 869EC18 - cry Cry_Trapinch @ 869EC24 - cry Cry_Vibrava @ 869EC30 - cry Cry_Flygon @ 869EC3C - cry Cry_Cacnea @ 869EC48 - cry Cry_Cacturne @ 869EC54 - cry Cry_Baltoy @ 869EC60 - cry Cry_Claydol @ 869EC6C - cry Cry_Lunatone @ 869EC78 - cry Cry_Solrock @ 869EC84 - cry Cry_Feebas @ 869EC90 - cry Cry_Milotic @ 869EC9C - cry Cry_Absol @ 869ECA8 - cry Cry_Meditite @ 869ECB4 - cry Cry_Medicham @ 869ECC0 - cry Cry_Spheal @ 869ECCC - cry Cry_Sealeo @ 869ECD8 - cry Cry_Walrein @ 869ECE4 - cry Cry_Clamperl @ 869ECF0 - cry Cry_Huntail @ 869ECFC - cry Cry_Gorebyss @ 869ED08 - cry Cry_Lileep @ 869ED14 - cry Cry_Cradily @ 869ED20 - cry Cry_Anorith @ 869ED2C - cry Cry_Armaldo @ 869ED38 - cry Cry_Beldum @ 869ED44 - cry Cry_Metang @ 869ED50 - cry Cry_Metagross @ 869ED5C - cry Cry_Bagon @ 869ED68 - cry Cry_Shelgon @ 869ED74 - cry Cry_Regirock @ 869ED80 - cry Cry_Regice @ 869ED8C - cry Cry_Registeel @ 869ED98 - cry Cry_Castform @ 869EDA4 - cry Cry_Volbeat @ 869EDB0 - cry Cry_Illumise @ 869EDBC - cry Cry_Poochyena @ 869EDC8 - cry Cry_Mightyena @ 869EDD4 - cry Cry_Dusclops @ 869EDE0 - cry Cry_Sableye @ 869EDEC - cry Cry_Mawile @ 869EDF8 - cry Cry_Aron @ 869EE04 - cry Cry_Lairon @ 869EE10 - cry Cry_Aggron @ 869EE1C - cry Cry_Relicanth @ 869EE28 - cry Cry_Luvdisc @ 869EE34 - cry Cry_Groudon @ 869EE40 - cry Cry_Kyogre @ 869EE4C - cry Cry_Rayquaza @ 869EE58 - cry Cry_Salamence @ 869EE64 - cry Cry_Breloom @ 869EE70 - cry Cry_Shroomish @ 869EE7C - cry Cry_Linoone @ 869EE88 - cry Cry_Tropius @ 869EE94 - cry Cry_Wailmer @ 869EEA0 - cry Cry_Zigzagoon @ 869EEAC - cry Cry_Exploud @ 869EEB8 - cry Cry_Loudred @ 869EEC4 - cry Cry_Wailord @ 869EED0 - cry Cry_Whismur @ 869EEDC - cry Cry_Snorunt @ 869EEE8 - cry Cry_Latios @ 869EEF4 - cry Cry_Jirachi @ 869EF00 - cry Cry_Deoxys @ 869EF0C - cry Cry_Chimecho @ 869EF18 +gCryTable:: + cry Cry_Bulbasaur + cry Cry_Ivysaur + cry Cry_Venusaur + cry Cry_Charmander + cry Cry_Charmeleon + cry Cry_Charizard + cry Cry_Squirtle + cry Cry_Wartortle + cry Cry_Blastoise + cry Cry_Caterpie + cry Cry_Metapod + cry Cry_Butterfree + cry Cry_Weedle + cry Cry_Kakuna + cry Cry_Beedrill + cry Cry_Pidgey + cry Cry_Pidgeotto + cry Cry_Pidgeot + cry Cry_Rattata + cry Cry_Raticate + cry Cry_Spearow + cry Cry_Fearow + cry Cry_Ekans + cry Cry_Arbok + cry Cry_Pikachu + cry Cry_Raichu + cry Cry_Sandshrew + cry Cry_Sandslash + cry Cry_NidoranF + cry Cry_Nidorina + cry Cry_Nidoqueen + cry Cry_NidoranM + cry Cry_Nidorino + cry Cry_Nidoking + cry Cry_Clefairy + cry Cry_Clefable + cry Cry_Vulpix + cry Cry_Ninetales + cry Cry_Jigglypuff + cry Cry_Wigglytuff + cry Cry_Zubat + cry Cry_Golbat + cry Cry_Oddish + cry Cry_Gloom + cry Cry_Vileplume + cry Cry_Paras + cry Cry_Parasect + cry Cry_Venonat + cry Cry_Venomoth + cry Cry_Diglett + cry Cry_Dugtrio + cry Cry_Meowth + cry Cry_Persian + cry Cry_Psyduck + cry Cry_Golduck + cry Cry_Mankey + cry Cry_Primeape + cry Cry_Growlithe + cry Cry_Arcanine + cry Cry_Poliwag + cry Cry_Poliwhirl + cry Cry_Poliwrath + cry Cry_Abra + cry Cry_Kadabra + cry Cry_Alakazam + cry Cry_Machop + cry Cry_Machoke + cry Cry_Machamp + cry Cry_Bellsprout + cry Cry_Weepinbell + cry Cry_Victreebel + cry Cry_Tentacool + cry Cry_Tentacruel + cry Cry_Geodude + cry Cry_Graveler + cry Cry_Golem + cry Cry_Ponyta + cry Cry_Rapidash + cry Cry_Slowpoke + cry Cry_Slowbro + cry Cry_Magnemite + cry Cry_Magneton + cry Cry_Farfetchd + cry Cry_Doduo + cry Cry_Dodrio + cry Cry_Seel + cry Cry_Dewgong + cry Cry_Grimer + cry Cry_Muk + cry Cry_Shellder + cry Cry_Cloyster + cry Cry_Gastly + cry Cry_Haunter + cry Cry_Gengar + cry Cry_Onix + cry Cry_Drowzee + cry Cry_Hypno + cry Cry_Krabby + cry Cry_Kingler + cry Cry_Voltorb + cry Cry_Electrode + cry Cry_Exeggcute + cry Cry_Exeggutor + cry Cry_Cubone + cry Cry_Marowak + cry Cry_Hitmonlee + cry Cry_Hitmonchan + cry Cry_Lickitung + cry Cry_Koffing + cry Cry_Weezing + cry Cry_Rhyhorn + cry Cry_Rhydon + cry Cry_Chansey + cry Cry_Tangela + cry Cry_Kangaskhan + cry Cry_Horsea + cry Cry_Seadra + cry Cry_Goldeen + cry Cry_Seaking + cry Cry_Staryu + cry Cry_Starmie + cry Cry_MrMime + cry Cry_Scyther + cry Cry_Jynx + cry Cry_Electabuzz + cry Cry_Magmar + cry Cry_Pinsir + cry Cry_Tauros + cry Cry_Magikarp + cry Cry_Gyarados + cry Cry_Lapras + cry Cry_Ditto + cry Cry_Eevee + cry Cry_Vaporeon + cry Cry_Jolteon + cry Cry_Flareon + cry Cry_Porygon + cry Cry_Omanyte + cry Cry_Omastar + cry Cry_Kabuto + cry Cry_Kabutops + cry Cry_Aerodactyl + cry Cry_Snorlax + cry Cry_Articuno + cry Cry_Zapdos + cry Cry_Moltres + cry Cry_Dratini + cry Cry_Dragonair + cry Cry_Dragonite + cry Cry_Mewtwo + cry Cry_Mew + cry Cry_Chikorita + cry Cry_Bayleef + cry Cry_Meganium + cry Cry_Cyndaquil + cry Cry_Quilava + cry Cry_Typhlosion + cry Cry_Totodile + cry Cry_Croconaw + cry Cry_Feraligatr + cry Cry_Sentret + cry Cry_Furret + cry Cry_Hoothoot + cry Cry_Noctowl + cry Cry_Ledyba + cry Cry_Ledian + cry Cry_Spinarak + cry Cry_Ariados + cry Cry_Crobat + cry Cry_Chinchou + cry Cry_Lanturn + cry Cry_Pichu + cry Cry_Cleffa + cry Cry_Igglybuff + cry Cry_Togepi + cry Cry_Togetic + cry Cry_Natu + cry Cry_Xatu + cry Cry_Mareep + cry Cry_Flaaffy + cry Cry_Ampharos + cry Cry_Bellossom + cry Cry_Marill + cry Cry_Azumarill + cry Cry_Sudowoodo + cry Cry_Politoed + cry Cry_Hoppip + cry Cry_Skiploom + cry Cry_Jumpluff + cry Cry_Aipom + cry Cry_Sunkern + cry Cry_Sunflora + cry Cry_Yanma + cry Cry_Wooper + cry Cry_Quagsire + cry Cry_Espeon + cry Cry_Umbreon + cry Cry_Murkrow + cry Cry_Slowking + cry Cry_Misdreavus + cry Cry_Unown + cry Cry_Wobbuffet + cry Cry_Girafarig + cry Cry_Pineco + cry Cry_Forretress + cry Cry_Dunsparce + cry Cry_Gligar + cry Cry_Steelix + cry Cry_Snubbull + cry Cry_Granbull + cry Cry_Qwilfish + cry Cry_Scizor + cry Cry_Shuckle + cry Cry_Heracross + cry Cry_Sneasel + cry Cry_Teddiursa + cry Cry_Ursaring + cry Cry_Slugma + cry Cry_Magcargo + cry Cry_Swinub + cry Cry_Piloswine + cry Cry_Corsola + cry Cry_Remoraid + cry Cry_Octillery + cry Cry_Delibird + cry Cry_Mantine + cry Cry_Skarmory + cry Cry_Houndour + cry Cry_Houndoom + cry Cry_Kingdra + cry Cry_Phanpy + cry Cry_Donphan + cry Cry_Porygon2 + cry Cry_Stantler + cry Cry_Smeargle + cry Cry_Tyrogue + cry Cry_Hitmontop + cry Cry_Smoochum + cry Cry_Elekid + cry Cry_Magby + cry Cry_Miltank + cry Cry_Blissey + cry Cry_Raikou + cry Cry_Entei + cry Cry_Suicune + cry Cry_Larvitar + cry Cry_Pupitar + cry Cry_Tyranitar + cry Cry_Lugia + cry Cry_HoOh + cry Cry_Celebi + cry Cry_Kecleon + cry Cry_Roselia + cry Cry_Torkoal + cry Cry_Electrike + cry Cry_Manectric + cry Cry_Duskull + cry Cry_Latias + cry Cry_Wynaut + cry Cry_Seviper + cry Cry_Sharpedo + cry Cry_Zangoose + cry Cry_Azurill + cry Cry_Swablu + cry Cry_Altaria + cry Cry_Unused265 + cry Cry_Taillow + cry Cry_Swellow + cry Cry_Unused268 + cry Cry_Spinda + cry Cry_Torchic + cry Cry_Combusken + cry Cry_Blaziken + cry Cry_Treecko + cry Cry_Grovyle + cry Cry_Sceptile + cry Cry_Mudkip + cry Cry_Marshtomp + cry Cry_Swampert + cry Cry_Pelipper + cry Cry_Wingull + cry Cry_Banette + cry Cry_Shuppet + cry Cry_Lotad + cry Cry_Lombre + cry Cry_Ludicolo + cry Cry_Seedot + cry Cry_Nuzleaf + cry Cry_Shiftry + cry Cry_Carvanha + cry Cry_Wurmple + cry Cry_Silcoon + cry Cry_Beautifly + cry Cry_Cascoon + cry Cry_Dustox + cry Cry_Ralts + cry Cry_Kirlia + cry Cry_Gardevoir + cry Cry_Slakoth + cry Cry_Vigoroth + cry Cry_Slaking + cry Cry_Nincada + cry Cry_Ninjask + cry Cry_Shedinja + cry Cry_Makuhita + cry Cry_Hariyama + cry Cry_Nosepass + cry Cry_Glalie + cry Cry_Plusle + cry Cry_Minun + cry Cry_Surskit + cry Cry_Masquerain + cry Cry_Skitty + cry Cry_Delcatty + cry Cry_Gulpin + cry Cry_Swalot + cry Cry_Numel + cry Cry_Camerupt + cry Cry_Barboach + cry Cry_Whiscash + cry Cry_Corphish + cry Cry_Crawdaunt + cry Cry_Spoink + cry Cry_Grumpig + cry Cry_Trapinch + cry Cry_Vibrava + cry Cry_Flygon + cry Cry_Cacnea + cry Cry_Cacturne + cry Cry_Baltoy + cry Cry_Claydol + cry Cry_Lunatone + cry Cry_Solrock + cry Cry_Feebas + cry Cry_Milotic + cry Cry_Absol + cry Cry_Meditite + cry Cry_Medicham + cry Cry_Spheal + cry Cry_Sealeo + cry Cry_Walrein + cry Cry_Clamperl + cry Cry_Huntail + cry Cry_Gorebyss + cry Cry_Lileep + cry Cry_Cradily + cry Cry_Anorith + cry Cry_Armaldo + cry Cry_Beldum + cry Cry_Metang + cry Cry_Metagross + cry Cry_Bagon + cry Cry_Shelgon + cry Cry_Regirock + cry Cry_Regice + cry Cry_Registeel + cry Cry_Castform + cry Cry_Volbeat + cry Cry_Illumise + cry Cry_Poochyena + cry Cry_Mightyena + cry Cry_Dusclops + cry Cry_Sableye + cry Cry_Mawile + cry Cry_Aron + cry Cry_Lairon + cry Cry_Aggron + cry Cry_Relicanth + cry Cry_Luvdisc + cry Cry_Groudon + cry Cry_Kyogre + cry Cry_Rayquaza + cry Cry_Salamence + cry Cry_Breloom + cry Cry_Shroomish + cry Cry_Linoone + cry Cry_Tropius + cry Cry_Wailmer + cry Cry_Zigzagoon + cry Cry_Exploud + cry Cry_Loudred + cry Cry_Wailord + cry Cry_Whismur + cry Cry_Snorunt + cry Cry_Latios + cry Cry_Jirachi + cry Cry_Deoxys + cry Cry_Chimecho .align 2 -gCryTable2:: @ 869EF24 - cry2 Cry_Bulbasaur @ 869EF24 - cry2 Cry_Ivysaur @ 869EF30 - cry2 Cry_Venusaur @ 869EF3C - cry2 Cry_Charmander @ 869EF48 - cry2 Cry_Charmeleon @ 869EF54 - cry2 Cry_Charizard @ 869EF60 - cry2 Cry_Squirtle @ 869EF6C - cry2 Cry_Wartortle @ 869EF78 - cry2 Cry_Blastoise @ 869EF84 - cry2 Cry_Caterpie @ 869EF90 - cry2 Cry_Metapod @ 869EF9C - cry2 Cry_Butterfree @ 869EFA8 - cry2 Cry_Weedle @ 869EFB4 - cry2 Cry_Kakuna @ 869EFC0 - cry2 Cry_Beedrill @ 869EFCC - cry2 Cry_Pidgey @ 869EFD8 - cry2 Cry_Pidgeotto @ 869EFE4 - cry2 Cry_Pidgeot @ 869EFF0 - cry2 Cry_Rattata @ 869EFFC - cry2 Cry_Raticate @ 869F008 - cry2 Cry_Spearow @ 869F014 - cry2 Cry_Fearow @ 869F020 - cry2 Cry_Ekans @ 869F02C - cry2 Cry_Arbok @ 869F038 - cry2 Cry_Pikachu @ 869F044 - cry2 Cry_Raichu @ 869F050 - cry2 Cry_Sandshrew @ 869F05C - cry2 Cry_Sandslash @ 869F068 - cry2 Cry_NidoranF @ 869F074 - cry2 Cry_Nidorina @ 869F080 - cry2 Cry_Nidoqueen @ 869F08C - cry2 Cry_NidoranM @ 869F098 - cry2 Cry_Nidorino @ 869F0A4 - cry2 Cry_Nidoking @ 869F0B0 - cry2 Cry_Clefairy @ 869F0BC - cry2 Cry_Clefable @ 869F0C8 - cry2 Cry_Vulpix @ 869F0D4 - cry2 Cry_Ninetales @ 869F0E0 - cry2 Cry_Jigglypuff @ 869F0EC - cry2 Cry_Wigglytuff @ 869F0F8 - cry2 Cry_Zubat @ 869F104 - cry2 Cry_Golbat @ 869F110 - cry2 Cry_Oddish @ 869F11C - cry2 Cry_Gloom @ 869F128 - cry2 Cry_Vileplume @ 869F134 - cry2 Cry_Paras @ 869F140 - cry2 Cry_Parasect @ 869F14C - cry2 Cry_Venonat @ 869F158 - cry2 Cry_Venomoth @ 869F164 - cry2 Cry_Diglett @ 869F170 - cry2 Cry_Dugtrio @ 869F17C - cry2 Cry_Meowth @ 869F188 - cry2 Cry_Persian @ 869F194 - cry2 Cry_Psyduck @ 869F1A0 - cry2 Cry_Golduck @ 869F1AC - cry2 Cry_Mankey @ 869F1B8 - cry2 Cry_Primeape @ 869F1C4 - cry2 Cry_Growlithe @ 869F1D0 - cry2 Cry_Arcanine @ 869F1DC - cry2 Cry_Poliwag @ 869F1E8 - cry2 Cry_Poliwhirl @ 869F1F4 - cry2 Cry_Poliwrath @ 869F200 - cry2 Cry_Abra @ 869F20C - cry2 Cry_Kadabra @ 869F218 - cry2 Cry_Alakazam @ 869F224 - cry2 Cry_Machop @ 869F230 - cry2 Cry_Machoke @ 869F23C - cry2 Cry_Machamp @ 869F248 - cry2 Cry_Bellsprout @ 869F254 - cry2 Cry_Weepinbell @ 869F260 - cry2 Cry_Victreebel @ 869F26C - cry2 Cry_Tentacool @ 869F278 - cry2 Cry_Tentacruel @ 869F284 - cry2 Cry_Geodude @ 869F290 - cry2 Cry_Graveler @ 869F29C - cry2 Cry_Golem @ 869F2A8 - cry2 Cry_Ponyta @ 869F2B4 - cry2 Cry_Rapidash @ 869F2C0 - cry2 Cry_Slowpoke @ 869F2CC - cry2 Cry_Slowbro @ 869F2D8 - cry2 Cry_Magnemite @ 869F2E4 - cry2 Cry_Magneton @ 869F2F0 - cry2 Cry_Farfetchd @ 869F2FC - cry2 Cry_Doduo @ 869F308 - cry2 Cry_Dodrio @ 869F314 - cry2 Cry_Seel @ 869F320 - cry2 Cry_Dewgong @ 869F32C - cry2 Cry_Grimer @ 869F338 - cry2 Cry_Muk @ 869F344 - cry2 Cry_Shellder @ 869F350 - cry2 Cry_Cloyster @ 869F35C - cry2 Cry_Gastly @ 869F368 - cry2 Cry_Haunter @ 869F374 - cry2 Cry_Gengar @ 869F380 - cry2 Cry_Onix @ 869F38C - cry2 Cry_Drowzee @ 869F398 - cry2 Cry_Hypno @ 869F3A4 - cry2 Cry_Krabby @ 869F3B0 - cry2 Cry_Kingler @ 869F3BC - cry2 Cry_Voltorb @ 869F3C8 - cry2 Cry_Electrode @ 869F3D4 - cry2 Cry_Exeggcute @ 869F3E0 - cry2 Cry_Exeggutor @ 869F3EC - cry2 Cry_Cubone @ 869F3F8 - cry2 Cry_Marowak @ 869F404 - cry2 Cry_Hitmonlee @ 869F410 - cry2 Cry_Hitmonchan @ 869F41C - cry2 Cry_Lickitung @ 869F428 - cry2 Cry_Koffing @ 869F434 - cry2 Cry_Weezing @ 869F440 - cry2 Cry_Rhyhorn @ 869F44C - cry2 Cry_Rhydon @ 869F458 - cry2 Cry_Chansey @ 869F464 - cry2 Cry_Tangela @ 869F470 - cry2 Cry_Kangaskhan @ 869F47C - cry2 Cry_Horsea @ 869F488 - cry2 Cry_Seadra @ 869F494 - cry2 Cry_Goldeen @ 869F4A0 - cry2 Cry_Seaking @ 869F4AC - cry2 Cry_Staryu @ 869F4B8 - cry2 Cry_Starmie @ 869F4C4 - cry2 Cry_MrMime @ 869F4D0 - cry2 Cry_Scyther @ 869F4DC - cry2 Cry_Jynx @ 869F4E8 - cry2 Cry_Electabuzz @ 869F4F4 - cry2 Cry_Magmar @ 869F500 - cry2 Cry_Pinsir @ 869F50C - cry2 Cry_Tauros @ 869F518 - cry2 Cry_Magikarp @ 869F524 - cry2 Cry_Gyarados @ 869F530 - cry2 Cry_Lapras @ 869F53C - cry2 Cry_Ditto @ 869F548 - cry2 Cry_Eevee @ 869F554 - cry2 Cry_Vaporeon @ 869F560 - cry2 Cry_Jolteon @ 869F56C - cry2 Cry_Flareon @ 869F578 - cry2 Cry_Porygon @ 869F584 - cry2 Cry_Omanyte @ 869F590 - cry2 Cry_Omastar @ 869F59C - cry2 Cry_Kabuto @ 869F5A8 - cry2 Cry_Kabutops @ 869F5B4 - cry2 Cry_Aerodactyl @ 869F5C0 - cry2 Cry_Snorlax @ 869F5CC - cry2 Cry_Articuno @ 869F5D8 - cry2 Cry_Zapdos @ 869F5E4 - cry2 Cry_Moltres @ 869F5F0 - cry2 Cry_Dratini @ 869F5FC - cry2 Cry_Dragonair @ 869F608 - cry2 Cry_Dragonite @ 869F614 - cry2 Cry_Mewtwo @ 869F620 - cry2 Cry_Mew @ 869F62C - cry2 Cry_Chikorita @ 869F638 - cry2 Cry_Bayleef @ 869F644 - cry2 Cry_Meganium @ 869F650 - cry2 Cry_Cyndaquil @ 869F65C - cry2 Cry_Quilava @ 869F668 - cry2 Cry_Typhlosion @ 869F674 - cry2 Cry_Totodile @ 869F680 - cry2 Cry_Croconaw @ 869F68C - cry2 Cry_Feraligatr @ 869F698 - cry2 Cry_Sentret @ 869F6A4 - cry2 Cry_Furret @ 869F6B0 - cry2 Cry_Hoothoot @ 869F6BC - cry2 Cry_Noctowl @ 869F6C8 - cry2 Cry_Ledyba @ 869F6D4 - cry2 Cry_Ledian @ 869F6E0 - cry2 Cry_Spinarak @ 869F6EC - cry2 Cry_Ariados @ 869F6F8 - cry2 Cry_Crobat @ 869F704 - cry2 Cry_Chinchou @ 869F710 - cry2 Cry_Lanturn @ 869F71C - cry2 Cry_Pichu @ 869F728 - cry2 Cry_Cleffa @ 869F734 - cry2 Cry_Igglybuff @ 869F740 - cry2 Cry_Togepi @ 869F74C - cry2 Cry_Togetic @ 869F758 - cry2 Cry_Natu @ 869F764 - cry2 Cry_Xatu @ 869F770 - cry2 Cry_Mareep @ 869F77C - cry2 Cry_Flaaffy @ 869F788 - cry2 Cry_Ampharos @ 869F794 - cry2 Cry_Bellossom @ 869F7A0 - cry2 Cry_Marill @ 869F7AC - cry2 Cry_Azumarill @ 869F7B8 - cry2 Cry_Sudowoodo @ 869F7C4 - cry2 Cry_Politoed @ 869F7D0 - cry2 Cry_Hoppip @ 869F7DC - cry2 Cry_Skiploom @ 869F7E8 - cry2 Cry_Jumpluff @ 869F7F4 - cry2 Cry_Aipom @ 869F800 - cry2 Cry_Sunkern @ 869F80C - cry2 Cry_Sunflora @ 869F818 - cry2 Cry_Yanma @ 869F824 - cry2 Cry_Wooper @ 869F830 - cry2 Cry_Quagsire @ 869F83C - cry2 Cry_Espeon @ 869F848 - cry2 Cry_Umbreon @ 869F854 - cry2 Cry_Murkrow @ 869F860 - cry2 Cry_Slowking @ 869F86C - cry2 Cry_Misdreavus @ 869F878 - cry2 Cry_Unown @ 869F884 - cry2 Cry_Wobbuffet @ 869F890 - cry2 Cry_Girafarig @ 869F89C - cry2 Cry_Pineco @ 869F8A8 - cry2 Cry_Forretress @ 869F8B4 - cry2 Cry_Dunsparce @ 869F8C0 - cry2 Cry_Gligar @ 869F8CC - cry2 Cry_Steelix @ 869F8D8 - cry2 Cry_Snubbull @ 869F8E4 - cry2 Cry_Granbull @ 869F8F0 - cry2 Cry_Qwilfish @ 869F8FC - cry2 Cry_Scizor @ 869F908 - cry2 Cry_Shuckle @ 869F914 - cry2 Cry_Heracross @ 869F920 - cry2 Cry_Sneasel @ 869F92C - cry2 Cry_Teddiursa @ 869F938 - cry2 Cry_Ursaring @ 869F944 - cry2 Cry_Slugma @ 869F950 - cry2 Cry_Magcargo @ 869F95C - cry2 Cry_Swinub @ 869F968 - cry2 Cry_Piloswine @ 869F974 - cry2 Cry_Corsola @ 869F980 - cry2 Cry_Remoraid @ 869F98C - cry2 Cry_Octillery @ 869F998 - cry2 Cry_Delibird @ 869F9A4 - cry2 Cry_Mantine @ 869F9B0 - cry2 Cry_Skarmory @ 869F9BC - cry2 Cry_Houndour @ 869F9C8 - cry2 Cry_Houndoom @ 869F9D4 - cry2 Cry_Kingdra @ 869F9E0 - cry2 Cry_Phanpy @ 869F9EC - cry2 Cry_Donphan @ 869F9F8 - cry2 Cry_Porygon2 @ 869FA04 - cry2 Cry_Stantler @ 869FA10 - cry2 Cry_Smeargle @ 869FA1C - cry2 Cry_Tyrogue @ 869FA28 - cry2 Cry_Hitmontop @ 869FA34 - cry2 Cry_Smoochum @ 869FA40 - cry2 Cry_Elekid @ 869FA4C - cry2 Cry_Magby @ 869FA58 - cry2 Cry_Miltank @ 869FA64 - cry2 Cry_Blissey @ 869FA70 - cry2 Cry_Raikou @ 869FA7C - cry2 Cry_Entei @ 869FA88 - cry2 Cry_Suicune @ 869FA94 - cry2 Cry_Larvitar @ 869FAA0 - cry2 Cry_Pupitar @ 869FAAC - cry2 Cry_Tyranitar @ 869FAB8 - cry2 Cry_Lugia @ 869FAC4 - cry2 Cry_HoOh @ 869FAD0 - cry2 Cry_Celebi @ 869FADC - cry2 Cry_Kecleon @ 869FAE8 - cry2 Cry_Roselia @ 869FAF4 - cry2 Cry_Torkoal @ 869FB00 - cry2 Cry_Electrike @ 869FB0C - cry2 Cry_Manectric @ 869FB18 - cry2 Cry_Duskull @ 869FB24 - cry2 Cry_Latias @ 869FB30 - cry2 Cry_Wynaut @ 869FB3C - cry2 Cry_Seviper @ 869FB48 - cry2 Cry_Sharpedo @ 869FB54 - cry2 Cry_Zangoose @ 869FB60 - cry2 Cry_Azurill @ 869FB6C - cry2 Cry_Swablu @ 869FB78 - cry2 Cry_Altaria @ 869FB84 - cry2 Cry_Unused265 @ 869FB90 - cry2 Cry_Taillow @ 869FB9C - cry2 Cry_Swellow @ 869FBA8 - cry2 Cry_Unused268 @ 869FBB4 - cry2 Cry_Spinda @ 869FBC0 - cry2 Cry_Torchic @ 869FBCC - cry2 Cry_Combusken @ 869FBD8 - cry2 Cry_Blaziken @ 869FBE4 - cry2 Cry_Treecko @ 869FBF0 - cry2 Cry_Grovyle @ 869FBFC - cry2 Cry_Sceptile @ 869FC08 - cry2 Cry_Mudkip @ 869FC14 - cry2 Cry_Marshtomp @ 869FC20 - cry2 Cry_Swampert @ 869FC2C - cry2 Cry_Pelipper @ 869FC38 - cry2 Cry_Wingull @ 869FC44 - cry2 Cry_Banette @ 869FC50 - cry2 Cry_Shuppet @ 869FC5C - cry2 Cry_Lotad @ 869FC68 - cry2 Cry_Lombre @ 869FC74 - cry2 Cry_Ludicolo @ 869FC80 - cry2 Cry_Seedot @ 869FC8C - cry2 Cry_Nuzleaf @ 869FC98 - cry2 Cry_Shiftry @ 869FCA4 - cry2 Cry_Carvanha @ 869FCB0 - cry2 Cry_Wurmple @ 869FCBC - cry2 Cry_Silcoon @ 869FCC8 - cry2 Cry_Beautifly @ 869FCD4 - cry2 Cry_Cascoon @ 869FCE0 - cry2 Cry_Dustox @ 869FCEC - cry2 Cry_Ralts @ 869FCF8 - cry2 Cry_Kirlia @ 869FD04 - cry2 Cry_Gardevoir @ 869FD10 - cry2 Cry_Slakoth @ 869FD1C - cry2 Cry_Vigoroth @ 869FD28 - cry2 Cry_Slaking @ 869FD34 - cry2 Cry_Nincada @ 869FD40 - cry2 Cry_Ninjask @ 869FD4C - cry2 Cry_Shedinja @ 869FD58 - cry2 Cry_Makuhita @ 869FD64 - cry2 Cry_Hariyama @ 869FD70 - cry2 Cry_Nosepass @ 869FD7C - cry2 Cry_Glalie @ 869FD88 - cry2 Cry_Plusle @ 869FD94 - cry2 Cry_Minun @ 869FDA0 - cry2 Cry_Surskit @ 869FDAC - cry2 Cry_Masquerain @ 869FDB8 - cry2 Cry_Skitty @ 869FDC4 - cry2 Cry_Delcatty @ 869FDD0 - cry2 Cry_Gulpin @ 869FDDC - cry2 Cry_Swalot @ 869FDE8 - cry2 Cry_Numel @ 869FDF4 - cry2 Cry_Camerupt @ 869FE00 - cry2 Cry_Barboach @ 869FE0C - cry2 Cry_Whiscash @ 869FE18 - cry2 Cry_Corphish @ 869FE24 - cry2 Cry_Crawdaunt @ 869FE30 - cry2 Cry_Spoink @ 869FE3C - cry2 Cry_Grumpig @ 869FE48 - cry2 Cry_Trapinch @ 869FE54 - cry2 Cry_Vibrava @ 869FE60 - cry2 Cry_Flygon @ 869FE6C - cry2 Cry_Cacnea @ 869FE78 - cry2 Cry_Cacturne @ 869FE84 - cry2 Cry_Baltoy @ 869FE90 - cry2 Cry_Claydol @ 869FE9C - cry2 Cry_Lunatone @ 869FEA8 - cry2 Cry_Solrock @ 869FEB4 - cry2 Cry_Feebas @ 869FEC0 - cry2 Cry_Milotic @ 869FECC - cry2 Cry_Absol @ 869FED8 - cry2 Cry_Meditite @ 869FEE4 - cry2 Cry_Medicham @ 869FEF0 - cry2 Cry_Spheal @ 869FEFC - cry2 Cry_Sealeo @ 869FF08 - cry2 Cry_Walrein @ 869FF14 - cry2 Cry_Clamperl @ 869FF20 - cry2 Cry_Huntail @ 869FF2C - cry2 Cry_Gorebyss @ 869FF38 - cry2 Cry_Lileep @ 869FF44 - cry2 Cry_Cradily @ 869FF50 - cry2 Cry_Anorith @ 869FF5C - cry2 Cry_Armaldo @ 869FF68 - cry2 Cry_Beldum @ 869FF74 - cry2 Cry_Metang @ 869FF80 - cry2 Cry_Metagross @ 869FF8C - cry2 Cry_Bagon @ 869FF98 - cry2 Cry_Shelgon @ 869FFA4 - cry2 Cry_Regirock @ 869FFB0 - cry2 Cry_Regice @ 869FFBC - cry2 Cry_Registeel @ 869FFC8 - cry2 Cry_Castform @ 869FFD4 - cry2 Cry_Volbeat @ 869FFE0 - cry2 Cry_Illumise @ 869FFEC - cry2 Cry_Poochyena @ 869FFF8 - cry2 Cry_Mightyena @ 86A0004 - cry2 Cry_Dusclops @ 86A0010 - cry2 Cry_Sableye @ 86A001C - cry2 Cry_Mawile @ 86A0028 - cry2 Cry_Aron @ 86A0034 - cry2 Cry_Lairon @ 86A0040 - cry2 Cry_Aggron @ 86A004C - cry2 Cry_Relicanth @ 86A0058 - cry2 Cry_Luvdisc @ 86A0064 - cry2 Cry_Groudon @ 86A0070 - cry2 Cry_Kyogre @ 86A007C - cry2 Cry_Rayquaza @ 86A0088 - cry2 Cry_Salamence @ 86A0094 - cry2 Cry_Breloom @ 86A00A0 - cry2 Cry_Shroomish @ 86A00AC - cry2 Cry_Linoone @ 86A00B8 - cry2 Cry_Tropius @ 86A00C4 - cry2 Cry_Wailmer @ 86A00D0 - cry2 Cry_Zigzagoon @ 86A00DC - cry2 Cry_Exploud @ 86A00E8 - cry2 Cry_Loudred @ 86A00F4 - cry2 Cry_Wailord @ 86A0100 - cry2 Cry_Whismur @ 86A010C - cry2 Cry_Snorunt @ 86A0118 - cry2 Cry_Latios @ 86A0124 - cry2 Cry_Jirachi @ 86A0130 - cry2 Cry_Deoxys @ 86A013C - cry2 Cry_Chimecho @ 86A0148 +gCryTable2:: + cry2 Cry_Bulbasaur + cry2 Cry_Ivysaur + cry2 Cry_Venusaur + cry2 Cry_Charmander + cry2 Cry_Charmeleon + cry2 Cry_Charizard + cry2 Cry_Squirtle + cry2 Cry_Wartortle + cry2 Cry_Blastoise + cry2 Cry_Caterpie + cry2 Cry_Metapod + cry2 Cry_Butterfree + cry2 Cry_Weedle + cry2 Cry_Kakuna + cry2 Cry_Beedrill + cry2 Cry_Pidgey + cry2 Cry_Pidgeotto + cry2 Cry_Pidgeot + cry2 Cry_Rattata + cry2 Cry_Raticate + cry2 Cry_Spearow + cry2 Cry_Fearow + cry2 Cry_Ekans + cry2 Cry_Arbok + cry2 Cry_Pikachu + cry2 Cry_Raichu + cry2 Cry_Sandshrew + cry2 Cry_Sandslash + cry2 Cry_NidoranF + cry2 Cry_Nidorina + cry2 Cry_Nidoqueen + cry2 Cry_NidoranM + cry2 Cry_Nidorino + cry2 Cry_Nidoking + cry2 Cry_Clefairy + cry2 Cry_Clefable + cry2 Cry_Vulpix + cry2 Cry_Ninetales + cry2 Cry_Jigglypuff + cry2 Cry_Wigglytuff + cry2 Cry_Zubat + cry2 Cry_Golbat + cry2 Cry_Oddish + cry2 Cry_Gloom + cry2 Cry_Vileplume + cry2 Cry_Paras + cry2 Cry_Parasect + cry2 Cry_Venonat + cry2 Cry_Venomoth + cry2 Cry_Diglett + cry2 Cry_Dugtrio + cry2 Cry_Meowth + cry2 Cry_Persian + cry2 Cry_Psyduck + cry2 Cry_Golduck + cry2 Cry_Mankey + cry2 Cry_Primeape + cry2 Cry_Growlithe + cry2 Cry_Arcanine + cry2 Cry_Poliwag + cry2 Cry_Poliwhirl + cry2 Cry_Poliwrath + cry2 Cry_Abra + cry2 Cry_Kadabra + cry2 Cry_Alakazam + cry2 Cry_Machop + cry2 Cry_Machoke + cry2 Cry_Machamp + cry2 Cry_Bellsprout + cry2 Cry_Weepinbell + cry2 Cry_Victreebel + cry2 Cry_Tentacool + cry2 Cry_Tentacruel + cry2 Cry_Geodude + cry2 Cry_Graveler + cry2 Cry_Golem + cry2 Cry_Ponyta + cry2 Cry_Rapidash + cry2 Cry_Slowpoke + cry2 Cry_Slowbro + cry2 Cry_Magnemite + cry2 Cry_Magneton + cry2 Cry_Farfetchd + cry2 Cry_Doduo + cry2 Cry_Dodrio + cry2 Cry_Seel + cry2 Cry_Dewgong + cry2 Cry_Grimer + cry2 Cry_Muk + cry2 Cry_Shellder + cry2 Cry_Cloyster + cry2 Cry_Gastly + cry2 Cry_Haunter + cry2 Cry_Gengar + cry2 Cry_Onix + cry2 Cry_Drowzee + cry2 Cry_Hypno + cry2 Cry_Krabby + cry2 Cry_Kingler + cry2 Cry_Voltorb + cry2 Cry_Electrode + cry2 Cry_Exeggcute + cry2 Cry_Exeggutor + cry2 Cry_Cubone + cry2 Cry_Marowak + cry2 Cry_Hitmonlee + cry2 Cry_Hitmonchan + cry2 Cry_Lickitung + cry2 Cry_Koffing + cry2 Cry_Weezing + cry2 Cry_Rhyhorn + cry2 Cry_Rhydon + cry2 Cry_Chansey + cry2 Cry_Tangela + cry2 Cry_Kangaskhan + cry2 Cry_Horsea + cry2 Cry_Seadra + cry2 Cry_Goldeen + cry2 Cry_Seaking + cry2 Cry_Staryu + cry2 Cry_Starmie + cry2 Cry_MrMime + cry2 Cry_Scyther + cry2 Cry_Jynx + cry2 Cry_Electabuzz + cry2 Cry_Magmar + cry2 Cry_Pinsir + cry2 Cry_Tauros + cry2 Cry_Magikarp + cry2 Cry_Gyarados + cry2 Cry_Lapras + cry2 Cry_Ditto + cry2 Cry_Eevee + cry2 Cry_Vaporeon + cry2 Cry_Jolteon + cry2 Cry_Flareon + cry2 Cry_Porygon + cry2 Cry_Omanyte + cry2 Cry_Omastar + cry2 Cry_Kabuto + cry2 Cry_Kabutops + cry2 Cry_Aerodactyl + cry2 Cry_Snorlax + cry2 Cry_Articuno + cry2 Cry_Zapdos + cry2 Cry_Moltres + cry2 Cry_Dratini + cry2 Cry_Dragonair + cry2 Cry_Dragonite + cry2 Cry_Mewtwo + cry2 Cry_Mew + cry2 Cry_Chikorita + cry2 Cry_Bayleef + cry2 Cry_Meganium + cry2 Cry_Cyndaquil + cry2 Cry_Quilava + cry2 Cry_Typhlosion + cry2 Cry_Totodile + cry2 Cry_Croconaw + cry2 Cry_Feraligatr + cry2 Cry_Sentret + cry2 Cry_Furret + cry2 Cry_Hoothoot + cry2 Cry_Noctowl + cry2 Cry_Ledyba + cry2 Cry_Ledian + cry2 Cry_Spinarak + cry2 Cry_Ariados + cry2 Cry_Crobat + cry2 Cry_Chinchou + cry2 Cry_Lanturn + cry2 Cry_Pichu + cry2 Cry_Cleffa + cry2 Cry_Igglybuff + cry2 Cry_Togepi + cry2 Cry_Togetic + cry2 Cry_Natu + cry2 Cry_Xatu + cry2 Cry_Mareep + cry2 Cry_Flaaffy + cry2 Cry_Ampharos + cry2 Cry_Bellossom + cry2 Cry_Marill + cry2 Cry_Azumarill + cry2 Cry_Sudowoodo + cry2 Cry_Politoed + cry2 Cry_Hoppip + cry2 Cry_Skiploom + cry2 Cry_Jumpluff + cry2 Cry_Aipom + cry2 Cry_Sunkern + cry2 Cry_Sunflora + cry2 Cry_Yanma + cry2 Cry_Wooper + cry2 Cry_Quagsire + cry2 Cry_Espeon + cry2 Cry_Umbreon + cry2 Cry_Murkrow + cry2 Cry_Slowking + cry2 Cry_Misdreavus + cry2 Cry_Unown + cry2 Cry_Wobbuffet + cry2 Cry_Girafarig + cry2 Cry_Pineco + cry2 Cry_Forretress + cry2 Cry_Dunsparce + cry2 Cry_Gligar + cry2 Cry_Steelix + cry2 Cry_Snubbull + cry2 Cry_Granbull + cry2 Cry_Qwilfish + cry2 Cry_Scizor + cry2 Cry_Shuckle + cry2 Cry_Heracross + cry2 Cry_Sneasel + cry2 Cry_Teddiursa + cry2 Cry_Ursaring + cry2 Cry_Slugma + cry2 Cry_Magcargo + cry2 Cry_Swinub + cry2 Cry_Piloswine + cry2 Cry_Corsola + cry2 Cry_Remoraid + cry2 Cry_Octillery + cry2 Cry_Delibird + cry2 Cry_Mantine + cry2 Cry_Skarmory + cry2 Cry_Houndour + cry2 Cry_Houndoom + cry2 Cry_Kingdra + cry2 Cry_Phanpy + cry2 Cry_Donphan + cry2 Cry_Porygon2 + cry2 Cry_Stantler + cry2 Cry_Smeargle + cry2 Cry_Tyrogue + cry2 Cry_Hitmontop + cry2 Cry_Smoochum + cry2 Cry_Elekid + cry2 Cry_Magby + cry2 Cry_Miltank + cry2 Cry_Blissey + cry2 Cry_Raikou + cry2 Cry_Entei + cry2 Cry_Suicune + cry2 Cry_Larvitar + cry2 Cry_Pupitar + cry2 Cry_Tyranitar + cry2 Cry_Lugia + cry2 Cry_HoOh + cry2 Cry_Celebi + cry2 Cry_Kecleon + cry2 Cry_Roselia + cry2 Cry_Torkoal + cry2 Cry_Electrike + cry2 Cry_Manectric + cry2 Cry_Duskull + cry2 Cry_Latias + cry2 Cry_Wynaut + cry2 Cry_Seviper + cry2 Cry_Sharpedo + cry2 Cry_Zangoose + cry2 Cry_Azurill + cry2 Cry_Swablu + cry2 Cry_Altaria + cry2 Cry_Unused265 + cry2 Cry_Taillow + cry2 Cry_Swellow + cry2 Cry_Unused268 + cry2 Cry_Spinda + cry2 Cry_Torchic + cry2 Cry_Combusken + cry2 Cry_Blaziken + cry2 Cry_Treecko + cry2 Cry_Grovyle + cry2 Cry_Sceptile + cry2 Cry_Mudkip + cry2 Cry_Marshtomp + cry2 Cry_Swampert + cry2 Cry_Pelipper + cry2 Cry_Wingull + cry2 Cry_Banette + cry2 Cry_Shuppet + cry2 Cry_Lotad + cry2 Cry_Lombre + cry2 Cry_Ludicolo + cry2 Cry_Seedot + cry2 Cry_Nuzleaf + cry2 Cry_Shiftry + cry2 Cry_Carvanha + cry2 Cry_Wurmple + cry2 Cry_Silcoon + cry2 Cry_Beautifly + cry2 Cry_Cascoon + cry2 Cry_Dustox + cry2 Cry_Ralts + cry2 Cry_Kirlia + cry2 Cry_Gardevoir + cry2 Cry_Slakoth + cry2 Cry_Vigoroth + cry2 Cry_Slaking + cry2 Cry_Nincada + cry2 Cry_Ninjask + cry2 Cry_Shedinja + cry2 Cry_Makuhita + cry2 Cry_Hariyama + cry2 Cry_Nosepass + cry2 Cry_Glalie + cry2 Cry_Plusle + cry2 Cry_Minun + cry2 Cry_Surskit + cry2 Cry_Masquerain + cry2 Cry_Skitty + cry2 Cry_Delcatty + cry2 Cry_Gulpin + cry2 Cry_Swalot + cry2 Cry_Numel + cry2 Cry_Camerupt + cry2 Cry_Barboach + cry2 Cry_Whiscash + cry2 Cry_Corphish + cry2 Cry_Crawdaunt + cry2 Cry_Spoink + cry2 Cry_Grumpig + cry2 Cry_Trapinch + cry2 Cry_Vibrava + cry2 Cry_Flygon + cry2 Cry_Cacnea + cry2 Cry_Cacturne + cry2 Cry_Baltoy + cry2 Cry_Claydol + cry2 Cry_Lunatone + cry2 Cry_Solrock + cry2 Cry_Feebas + cry2 Cry_Milotic + cry2 Cry_Absol + cry2 Cry_Meditite + cry2 Cry_Medicham + cry2 Cry_Spheal + cry2 Cry_Sealeo + cry2 Cry_Walrein + cry2 Cry_Clamperl + cry2 Cry_Huntail + cry2 Cry_Gorebyss + cry2 Cry_Lileep + cry2 Cry_Cradily + cry2 Cry_Anorith + cry2 Cry_Armaldo + cry2 Cry_Beldum + cry2 Cry_Metang + cry2 Cry_Metagross + cry2 Cry_Bagon + cry2 Cry_Shelgon + cry2 Cry_Regirock + cry2 Cry_Regice + cry2 Cry_Registeel + cry2 Cry_Castform + cry2 Cry_Volbeat + cry2 Cry_Illumise + cry2 Cry_Poochyena + cry2 Cry_Mightyena + cry2 Cry_Dusclops + cry2 Cry_Sableye + cry2 Cry_Mawile + cry2 Cry_Aron + cry2 Cry_Lairon + cry2 Cry_Aggron + cry2 Cry_Relicanth + cry2 Cry_Luvdisc + cry2 Cry_Groudon + cry2 Cry_Kyogre + cry2 Cry_Rayquaza + cry2 Cry_Salamence + cry2 Cry_Breloom + cry2 Cry_Shroomish + cry2 Cry_Linoone + cry2 Cry_Tropius + cry2 Cry_Wailmer + cry2 Cry_Zigzagoon + cry2 Cry_Exploud + cry2 Cry_Loudred + cry2 Cry_Wailord + cry2 Cry_Whismur + cry2 Cry_Snorunt + cry2 Cry_Latios + cry2 Cry_Jirachi + cry2 Cry_Deoxys + cry2 Cry_Chimecho diff --git a/sound/music_player_table.inc b/sound/music_player_table.inc index de987c978891..6c74a13528dd 100644 --- a/sound/music_player_table.inc +++ b/sound/music_player_table.inc @@ -1,5 +1,5 @@ .align 2 -gMPlayTable:: @ 86B49C0 +gMPlayTable:: music_player gMPlayInfo_BGM, gMPlayTrack_BGM, 10, 0 music_player gMPlayInfo_SE1, gMPlayTrack_SE1, 3, 1 music_player gMPlayInfo_SE2, gMPlayTrack_SE2, 9, 1 diff --git a/sound/programmable_wave_data.inc b/sound/programmable_wave_data.inc index d984f4fac80f..45da43b00148 100644 --- a/sound/programmable_wave_data.inc +++ b/sound/programmable_wave_data.inc @@ -1,74 +1,74 @@ -ProgrammableWaveData_86B4830:: @ 86B4830 +ProgrammableWaveData_86B4830:: .incbin "sound/programmable_wave_samples/86B4830.pcm" -ProgrammableWaveData_86B4840:: @ 86B4840 +ProgrammableWaveData_86B4840:: .incbin "sound/programmable_wave_samples/86B4840.pcm" -ProgrammableWaveData_86B4850:: @ 86B4850 +ProgrammableWaveData_86B4850:: .incbin "sound/programmable_wave_samples/86B4850.pcm" -ProgrammableWaveData_86B4860:: @ 86B4860 +ProgrammableWaveData_86B4860:: .incbin "sound/programmable_wave_samples/86B4860.pcm" -ProgrammableWaveData_86B4870:: @ 86B4870 +ProgrammableWaveData_86B4870:: .incbin "sound/programmable_wave_samples/86B4870.pcm" -ProgrammableWaveData_86B4880:: @ 86B4880 +ProgrammableWaveData_86B4880:: .incbin "sound/programmable_wave_samples/86B4880.pcm" -ProgrammableWaveData_86B4890:: @ 86B4890 +ProgrammableWaveData_86B4890:: .incbin "sound/programmable_wave_samples/86B4890.pcm" -ProgrammableWaveData_86B48A0:: @ 86B48A0 +ProgrammableWaveData_86B48A0:: .incbin "sound/programmable_wave_samples/86B48A0.pcm" -ProgrammableWaveData_86B48B0:: @ 86B48B0 +ProgrammableWaveData_86B48B0:: .incbin "sound/programmable_wave_samples/86B48B0.pcm" -ProgrammableWaveData_86B48C0:: @ 86B48C0 +ProgrammableWaveData_86B48C0:: .incbin "sound/programmable_wave_samples/86B48C0.pcm" -ProgrammableWaveData_86B48D0:: @ 86B48D0 +ProgrammableWaveData_86B48D0:: .incbin "sound/programmable_wave_samples/86B48D0.pcm" -ProgrammableWaveData_86B48E0:: @ 86B48E0 +ProgrammableWaveData_86B48E0:: .incbin "sound/programmable_wave_samples/86B48E0.pcm" -ProgrammableWaveData_86B48F0:: @ 86B48F0 +ProgrammableWaveData_86B48F0:: .incbin "sound/programmable_wave_samples/86B48F0.pcm" -ProgrammableWaveData_86B4900:: @ 86B4900 +ProgrammableWaveData_86B4900:: .incbin "sound/programmable_wave_samples/86B4900.pcm" -ProgrammableWaveData_86B4910:: @ 86B4910 +ProgrammableWaveData_86B4910:: .incbin "sound/programmable_wave_samples/86B4910.pcm" -ProgrammableWaveData_86B4920:: @ 86B4920 +ProgrammableWaveData_86B4920:: .incbin "sound/programmable_wave_samples/86B4920.pcm" -ProgrammableWaveData_Unused_86B4930:: @ 86B4930 +ProgrammableWaveData_Unused_86B4930:: .incbin "sound/programmable_wave_samples/unused_86B4930.pcm" -ProgrammableWaveData_Unused_86B4940:: @ 86B4940 +ProgrammableWaveData_Unused_86B4940:: .incbin "sound/programmable_wave_samples/unused_86B4940.pcm" -ProgrammableWaveData_Unused_86B4950:: @ 86B4950 +ProgrammableWaveData_Unused_86B4950:: .incbin "sound/programmable_wave_samples/unused_86B4950.pcm" -ProgrammableWaveData_Unused_86B4960:: @ 86B4960 +ProgrammableWaveData_Unused_86B4960:: .incbin "sound/programmable_wave_samples/unused_86B4960.pcm" -ProgrammableWaveData_86B4970:: @ 86B4970 +ProgrammableWaveData_86B4970:: .incbin "sound/programmable_wave_samples/86B4970.pcm" -ProgrammableWaveData_86B4980:: @ 86B4980 +ProgrammableWaveData_86B4980:: .incbin "sound/programmable_wave_samples/86B4980.pcm" -ProgrammableWaveData_86B4990:: @ 86B4990 +ProgrammableWaveData_86B4990:: .incbin "sound/programmable_wave_samples/86B4990.pcm" -ProgrammableWaveData_86B49A0:: @ 86B49A0 +ProgrammableWaveData_86B49A0:: .incbin "sound/programmable_wave_samples/86B49A0.pcm" -ProgrammableWaveData_86B49B0:: @ 86B49B0 +ProgrammableWaveData_86B49B0:: .incbin "sound/programmable_wave_samples/86B49B0.pcm" diff --git a/sound/song_table.inc b/sound/song_table.inc index ef5b4b48ecab..c551a656b9d4 100644 --- a/sound/song_table.inc +++ b/sound/song_table.inc @@ -1,6 +1,6 @@ .align 2 -gSongTable:: @ 86B49F0 +gSongTable:: song mus_dummy, 0, 0 song se_use_item, 1, 1 song se_pc_login, 1, 1 @@ -613,5 +613,5 @@ gSongTable:: @ 86B49F0 song ph_nurse_solo, 2, 2 .align 2 -dummy_song_header: @ 86B5D00 +dummy_song_header: .byte 0, 0, 0, 0 diff --git a/sound/voicegroups/voicegroup000.inc b/sound/voicegroups/voicegroup000.inc index 96dc02dfba5e..275b64993dab 100644 --- a/sound/voicegroups/voicegroup000.inc +++ b/sound/voicegroups/voicegroup000.inc @@ -1,65 +1,65 @@ .align 2 -voicegroup000:: @ 8675D04 - voice_keysplit_all voicegroup001 @ 8675D04 - voice_keysplit voicegroup005, KeySplitTable1 @ 8675D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D40 - voice_square_2 60, 0, 2, 0, 0, 9, 2 @ 8675D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D64 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 @ 8675D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DC4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 8675DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 8675E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675EA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 @ 8675EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675EC0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8675ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F2C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 @ 8675F38 - voice_keysplit voicegroup006, KeySplitTable2 @ 8675F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675F98 - voice_keysplit voicegroup007, KeySplitTable3 @ 8675FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FE0 +voicegroup000:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 0, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup001.inc b/sound/voicegroups/voicegroup001.inc index 1a2447e4168c..a22c5b6c5292 100644 --- a/sound/voicegroups/voicegroup001.inc +++ b/sound/voicegroups/voicegroup001.inc @@ -1,32 +1,32 @@ .align 2 -voicegroup001:: @ 8675FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8675FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867601C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676040 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 @ 867604C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676064 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 8676070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867607C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86760A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86760AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86760B8 - voice_square_2 60, 0, 2, 0, 1, 6, 0 @ 86760C4 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 @ 86760D0 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 @ 86760DC - voice_square_2 60, 0, 3, 0, 1, 6, 0 @ 86760E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86760F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867610C - voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 @ 8676118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676130 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 867613C +voicegroup001:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 6, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_2 60, 0, 3, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup002.inc b/sound/voicegroups/voicegroup002.inc index 4a727f8e05b3..3f5d846d4bb2 100644 --- a/sound/voicegroups/voicegroup002.inc +++ b/sound/voicegroups/voicegroup002.inc @@ -1,57 +1,57 @@ .align 2 -voicegroup002:: @ 8676148 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 @ 8676148 - voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 @ 8676154 - voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 @ 8676160 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 @ 867616C - voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 @ 8676178 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 @ 8676184 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 @ 8676190 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 @ 867619C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86761A8 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 86761B4 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 86761C0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 86761CC - voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 @ 86761D8 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 @ 86761E4 - voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 @ 86761F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86761FC - voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 @ 8676208 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 @ 8676214 - voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 @ 8676220 - voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 @ 867622C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676238 - voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 @ 8676244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867625C - voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 @ 8676268 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 8676274 - voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 @ 8676280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867628C - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 8676298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86762A4 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 86762B0 - voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86762BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86762C8 - voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 86762D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86762E0 - voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86762EC - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 @ 86762F8 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 8676304 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676310 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 867631C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 8676328 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676334 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 8676340 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867634C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 8676358 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676364 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 8676370 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867637C - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676388 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676394 - voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 @ 86763A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86763AC - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86763B8 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86763C4 +voicegroup002:: + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 + voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 + voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 diff --git a/sound/voicegroups/voicegroup003.inc b/sound/voicegroups/voicegroup003.inc index cef9cb57760d..6c6193e7d543 100644 --- a/sound/voicegroups/voicegroup003.inc +++ b/sound/voicegroups/voicegroup003.inc @@ -1,57 +1,57 @@ .align 2 -voicegroup003:: @ 86763D0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 86763D0 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86763DC - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @ 86763E8 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86763F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676400 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867640C - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 8676418 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 @ 8676424 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 8676430 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 867643C - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 8676448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867646C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867649C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86764FC - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 8676508 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 8676514 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 @ 8676520 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 867652C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676544 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 8676550 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 867655C - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 8676568 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 8676574 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 8676580 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 867658C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676598 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 86765A4 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 86765B0 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765BC - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 86765C8 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765D4 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 86765E0 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86765F8 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676604 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676610 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867661C - voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 @ 8676628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676634 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676640 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 867664C +voicegroup003:: + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 diff --git a/sound/voicegroups/voicegroup004.inc b/sound/voicegroups/voicegroup004.inc index 367aafa15568..786010cb0252 100644 --- a/sound/voicegroups/voicegroup004.inc +++ b/sound/voicegroups/voicegroup004.inc @@ -1,93 +1,93 @@ .align 2 -voicegroup004:: @ 8676658 - voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 8676658 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 8676664 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @ 8676670 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867667C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676688 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676694 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86766A0 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 @ 86766AC - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 86766B8 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86766C4 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86766D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86766DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86766E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86766F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867670C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867673C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676748 - voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 @ 8676754 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 @ 8676760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867676C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676784 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 8676790 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 867679C - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 @ 86767A8 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 86767B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86767C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86767CC - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86767D8 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 86767E4 - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 86767F0 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 86767FC - voice_directsound 62, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 @ 8676808 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 8676814 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676820 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 867682C - voice_directsound 65, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 8676838 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676844 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 8676850 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867685C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 8676868 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676880 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867688C - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676898 - voice_directsound 56, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86768A4 - voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 @ 86768B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86768BC - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86768C8 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86768D4 - voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 86768E0 - voice_directsound 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86768EC - voice_directsound 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @ 86768F8 - voice_directsound 60, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676910 - voice_directsound 58, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867691C - voice_directsound 62, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 8676928 - voice_directsound 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 @ 8676934 - voice_directsound 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 8676940 - voice_directsound 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 867694C - voice_directsound 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 8676958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867697C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769D0 - voice_directsound 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 @ 86769DC - voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 @ 86769E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86769F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676A0C - voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 8676A18 - voice_directsound 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 8676A24 - voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 @ 8676A30 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 8676A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676A54 - voice_directsound 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 8676A60 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 8676A6C - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 8676A78 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 8676A84 +voicegroup004:: + voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 62, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound 65, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 56, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound 60, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 58, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 62, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup005.inc b/sound/voicegroups/voicegroup005.inc index cd5c2d766854..efeab963b5d8 100644 --- a/sound/voicegroups/voicegroup005.inc +++ b/sound/voicegroups/voicegroup005.inc @@ -1,7 +1,7 @@ .align 2 -voicegroup005:: @ 8676A90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_48, 255, 252, 0, 239 @ 8676A90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_60, 255, 250, 0, 221 @ 8676A9C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_72, 255, 250, 0, 221 @ 8676AA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_84, 255, 247, 0, 221 @ 8676AB4 +voicegroup005:: + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_48, 255, 252, 0, 239 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_60, 255, 250, 0, 221 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_72, 255, 250, 0, 221 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_84, 255, 247, 0, 221 diff --git a/sound/voicegroups/voicegroup006.inc b/sound/voicegroups/voicegroup006.inc index fc030a26cfb5..156caa6b5d41 100644 --- a/sound/voicegroups/voicegroup006.inc +++ b/sound/voicegroups/voicegroup006.inc @@ -1,6 +1,6 @@ .align 2 -voicegroup006:: @ 8676AC0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_60, 255, 0, 255, 196 @ 8676AC0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 196 @ 8676ACC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_84, 255, 0, 255, 196 @ 8676AD8 +voicegroup006:: + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_60, 255, 0, 255, 196 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 196 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_84, 255, 0, 255, 196 diff --git a/sound/voicegroups/voicegroup007.inc b/sound/voicegroups/voicegroup007.inc index 1214ddd4ebbf..be49a69410b1 100644 --- a/sound/voicegroups/voicegroup007.inc +++ b/sound/voicegroups/voicegroup007.inc @@ -1,134 +1,134 @@ .align 2 -voicegroup007:: @ 8676AE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 @ 8676AE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 @ 8676AF0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 @ 8676AFC - voice_square_1_alt 60, 0, 38, 2, 1, 0, 0, 0 @ 8676B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8676FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867700C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867703C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867706C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867709C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86770E4 - voice_square_1_alt 60, 0, 36, 2, 0, 1, 4, 2 @ 86770F0 - voice_square_1_alt 60, 0, 21, 2, 0, 0, 15, 2 @ 86770FC +voicegroup007:: + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 + voice_square_1_alt 60, 0, 38, 2, 1, 0, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 36, 2, 0, 1, 4, 2 + voice_square_1_alt 60, 0, 21, 2, 0, 0, 15, 2 diff --git a/sound/voicegroups/voicegroup008.inc b/sound/voicegroups/voicegroup008.inc index c0d87ce5d158..ba9ba6b27c8e 100644 --- a/sound/voicegroups/voicegroup008.inc +++ b/sound/voicegroups/voicegroup008.inc @@ -1,5 +1,5 @@ .align 2 -voicegroup008:: @ 8677108 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_39, 255, 0, 255, 165 @ 8677108 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_51, 255, 0, 255, 165 @ 8677114 +voicegroup008:: + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_39, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_51, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup009.inc b/sound/voicegroups/voicegroup009.inc index ebf550a033e0..afa7a0f6ca71 100644 --- a/sound/voicegroups/voicegroup009.inc +++ b/sound/voicegroups/voicegroup009.inc @@ -1,5 +1,5 @@ .align 2 -voicegroup009:: @ 8677120 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_60, 255, 0, 224, 165 @ 8677120 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 255, 0, 218, 165 @ 867712C +voicegroup009:: + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_60, 255, 0, 224, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 255, 0, 218, 165 diff --git a/sound/voicegroups/voicegroup010.inc b/sound/voicegroups/voicegroup010.inc index f4fe73e93f8c..c92a030f2d95 100644 --- a/sound/voicegroups/voicegroup010.inc +++ b/sound/voicegroups/voicegroup010.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup010:: @ 8677138 - voice_keysplit_all voicegroup031 @ 8677138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867715C - voice_square_2 60, 0, 3, 0, 4, 0, 1 @ 8677168 - voice_square_1 60, 0, 0, 3, 0, 4, 0, 1 @ 8677174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867718C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 86771E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86771F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867721C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867724C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867727C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86772F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867730C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867733C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677354 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 @ 8677360 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867736C - voice_keysplit voicegroup006, KeySplitTable2 @ 8677378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867739C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773CC - voice_keysplit voicegroup007, KeySplitTable3 @ 86773D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773E4 - voice_keysplit voicegroup008, KeySplitTable4 @ 86773F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86773FC - voice_keysplit voicegroup009, KeySplitTable5 @ 8677408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867742C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867745C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867748C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86774EC - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 86774F8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 8677504 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 8677510 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 @ 867751C +voicegroup010:: + voice_keysplit_all voicegroup031 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 4, 0, 1 + voice_square_1 60, 0, 0, 3, 0, 4, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup011.inc b/sound/voicegroups/voicegroup011.inc index 8102d59f4d20..8c9b120c90ca 100644 --- a/sound/voicegroups/voicegroup011.inc +++ b/sound/voicegroups/voicegroup011.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup011:: @ 8677528 - voice_keysplit_all voicegroup022 @ 8677528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867754C - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 @ 8677558 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 @ 8677564 - voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 @ 8677570 - voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 @ 867757C - voice_square_1_alt 60, 0, 0, 2, 0, 3, 0, 0 @ 8677588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86775F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867760C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867763C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 @ 8677648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867766C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867769C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 86776CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86776FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867772C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867775C - voice_keysplit voicegroup006, KeySplitTable2 @ 8677768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867778C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86777F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867781C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867784C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867787C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677888 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8677894 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 86778A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86778AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86778B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86778C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86778D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86778DC - voice_square_2_alt 60, 0, 2, 1, 1, 7, 1 @ 86778E8 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 1 @ 86778F4 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 @ 8677900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867790C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867793C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867796C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867799C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86779FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B10 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8677B1C +voicegroup011:: + voice_keysplit_all voicegroup022 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 + voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup012.inc b/sound/voicegroups/voicegroup012.inc index 670ae65537a9..4f94f1b1d3c4 100644 --- a/sound/voicegroups/voicegroup012.inc +++ b/sound/voicegroups/voicegroup012.inc @@ -1,105 +1,105 @@ .align 2 -voicegroup012:: @ 8677B28 - voice_keysplit_all voicegroup001 @ 8677B28 - voice_keysplit voicegroup005, KeySplitTable1 @ 8677B34 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 178, 180, 165 @ 8677B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677B88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 @ 8677B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BB8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8677BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8677CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D44 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 @ 8677D50 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 8677D5C - voice_keysplit voicegroup006, KeySplitTable2 @ 8677D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677DBC - voice_keysplit voicegroup007, KeySplitTable3 @ 8677DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677DD4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8677DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677DEC - voice_keysplit voicegroup009, KeySplitTable5 @ 8677DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677E88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8677E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677EDC - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @ 8677EE8 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 @ 8677EF4 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @ 8677F00 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 @ 8677F0C - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8677F18 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8677F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F30 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 8677F3C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 8677F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F54 - voice_square_2 60, 0, 2, 0, 1, 4, 1 @ 8677F60 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 @ 8677F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677FCC - voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 @ 8677FD8 - voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 @ 8677FE4 +voicegroup012:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 178, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 diff --git a/sound/voicegroups/voicegroup013.inc b/sound/voicegroups/voicegroup013.inc index b8a05c59e122..4625bd9d8237 100644 --- a/sound/voicegroups/voicegroup013.inc +++ b/sound/voicegroups/voicegroup013.inc @@ -1,93 +1,93 @@ .align 2 -voicegroup013:: @ 8677FF0 - voice_keysplit_all voicegroup001 @ 8677FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8677FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867802C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867805C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867808C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86780F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867811C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867814C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867817C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86781F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867820C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678218 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 8678224 - voice_keysplit voicegroup006, KeySplitTable2 @ 8678230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867823C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867826C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678284 - voice_keysplit voicegroup007, KeySplitTable3 @ 8678290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867829C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782B4 - voice_keysplit voicegroup009, KeySplitTable5 @ 86782C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86782FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867832C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867835C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867838C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86783A4 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 @ 86783B0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 @ 86783BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86783C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86783D4 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @ 86783E0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 @ 86783EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86783F8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 8678404 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 @ 8678410 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 @ 867841C +voicegroup013:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup014.inc b/sound/voicegroups/voicegroup014.inc index 6506a7e487fe..d9cb8b079e4b 100644 --- a/sound/voicegroups/voicegroup014.inc +++ b/sound/voicegroups/voicegroup014.inc @@ -1,88 +1,88 @@ .align 2 -voicegroup014:: @ 8678428 - voice_keysplit_all voicegroup001 @ 8678428 - voice_keysplit voicegroup005, KeySplitTable1 @ 8678434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867844C - voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 @ 8678458 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 @ 8678464 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 8678470 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 @ 867847C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86784F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867850C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867853C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 @ 8678548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867856C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867859C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86785FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867862C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678644 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 8678650 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867865C - voice_keysplit voicegroup006, KeySplitTable2 @ 8678668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867868C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786BC - voice_keysplit voicegroup007, KeySplitTable3 @ 86786C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86786EC - voice_keysplit voicegroup009, KeySplitTable5 @ 86786F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867871C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867874C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867877C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678788 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8678794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86787DC - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @ 86787E8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 86787F4 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 @ 8678800 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 867880C - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 @ 8678818 +voicegroup014:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 diff --git a/sound/voicegroups/voicegroup015.inc b/sound/voicegroups/voicegroup015.inc index a1dc7899ce88..530e017cd033 100644 --- a/sound/voicegroups/voicegroup015.inc +++ b/sound/voicegroups/voicegroup015.inc @@ -1,95 +1,95 @@ .align 2 -voicegroup015:: @ 8678824 - voice_keysplit_all voicegroup016 @ 8678824 - voice_keysplit voicegroup005, KeySplitTable1 @ 8678830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867883C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867886C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867889C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86788FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867892C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678938 - voice_square_2 60, 0, 3, 0, 2, 0, 0 @ 8678944 - voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 @ 8678950 - voice_square_2 60, 0, 3, 0, 6, 0, 0 @ 867895C - voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 @ 8678968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867898C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789BC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 86789C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86789F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A58 - voice_keysplit voicegroup006, KeySplitTable2 @ 8678A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AB8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 8678AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678B84 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8678B90 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 8678B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BE4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 8678BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C68 +voicegroup015:: + voice_keysplit_all voicegroup016 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 + voice_square_2 60, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup016.inc b/sound/voicegroups/voicegroup016.inc index ca495e050d79..2013f888285d 100644 --- a/sound/voicegroups/voicegroup016.inc +++ b/sound/voicegroups/voicegroup016.inc @@ -1,68 +1,68 @@ .align 2 -voicegroup016:: @ 8678C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E00 - voice_noise_alt 60, 0, 0, 0, 2, 0, 2 @ 8678E0C - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 @ 8678E18 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 @ 8678E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E30 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 8678E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E48 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 8678E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678EF0 - voice_directsound_no_resample 32, 74, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 8678EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F50 - voice_directsound_no_resample 72, 66, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 8678F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678F68 - voice_directsound_no_resample 72, 62, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 8678F74 +voicegroup016:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 2 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 74, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 66, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 62, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup017.inc b/sound/voicegroups/voicegroup017.inc index 3064a4bd17a1..ac3768c10dd1 100644 --- a/sound/voicegroups/voicegroup017.inc +++ b/sound/voicegroups/voicegroup017.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup017:: @ 8678F80 - voice_keysplit_all voicegroup001 @ 8678F80 - voice_square_2_alt 60, 0, 2, 0, 3, 3, 1 @ 8678F8C - voice_square_1_alt 60, 0, 0, 2, 0, 3, 3, 1 @ 8678F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678FA4 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 2 @ 8678FB0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 2 @ 8678FBC - voice_square_2_alt 60, 0, 2, 1, 1, 0, 0 @ 8678FC8 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 0, 0 @ 8678FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8678FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867901C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867904C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867907C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86790F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867910C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867913C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867916C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679190 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 867919C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 @ 86791A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791B4 - voice_keysplit voicegroup006, KeySplitTable2 @ 86791C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86791FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867922C - voice_keysplit voicegroup008, KeySplitTable4 @ 8679238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679244 - voice_keysplit voicegroup009, KeySplitTable5 @ 8679250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867925C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867928C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86792E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86792EC - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86792F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867931C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679334 - voice_square_2_alt 60, 0, 2, 1, 1, 7, 2 @ 8679340 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 867934C - voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 2 @ 8679358 - voice_square_2_alt 60, 0, 3, 1, 1, 7, 2 @ 8679364 - voice_square_1_alt 60, 0, 0, 3, 1, 1, 7, 2 @ 8679370 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 @ 867937C - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 2 @ 8679388 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 2 @ 8679394 - voice_square_2_alt 60, 0, 1, 1, 2, 6, 2 @ 86793A0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 6, 2 @ 86793AC - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 @ 86793B8 +voicegroup017:: + voice_keysplit_all voicegroup001 + voice_square_2_alt 60, 0, 2, 0, 3, 3, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 2 + voice_square_2_alt 60, 0, 2, 1, 1, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 1, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 2 + voice_square_2_alt 60, 0, 3, 1, 1, 7, 2 + voice_square_1_alt 60, 0, 0, 3, 1, 1, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 2 + voice_square_2_alt 60, 0, 1, 1, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 diff --git a/sound/voicegroups/voicegroup018.inc b/sound/voicegroups/voicegroup018.inc index 58f9d1b48a09..466f4238561f 100644 --- a/sound/voicegroups/voicegroup018.inc +++ b/sound/voicegroups/voicegroup018.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup018:: @ 86793C4 - voice_keysplit_all voicegroup001 @ 86793C4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86793D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86793DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86793E8 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 @ 86793F4 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 @ 8679400 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 @ 867940C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867943C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867946C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867949C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86794FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867952C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867955C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867958C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 86795E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86795F8 - voice_keysplit voicegroup006, KeySplitTable2 @ 8679604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867961C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867964C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867967C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86796F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867970C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679724 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8679730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867973C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867976C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679778 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @ 8679784 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 8679790 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 @ 867979C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86797FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867982C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867985C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867988C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86798F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867991C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867994C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867997C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799AC - voice_noise_alt 60, 0, 1, 0, 1, 0, 3 @ 86799B8 +voicegroup018:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 1, 0, 1, 0, 3 diff --git a/sound/voicegroups/voicegroup019.inc b/sound/voicegroups/voicegroup019.inc index 31f17c73d762..5d18c1e692f7 100644 --- a/sound/voicegroups/voicegroup019.inc +++ b/sound/voicegroups/voicegroup019.inc @@ -1,88 +1,88 @@ .align 2 -voicegroup019:: @ 86799C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86799E8 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 @ 86799F4 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 @ 8679A00 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 1 @ 8679A0C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 1 @ 8679A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 8679BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679BF8 - voice_keysplit voicegroup006, KeySplitTable2 @ 8679C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C70 - voice_keysplit voicegroup008, KeySplitTable4 @ 8679C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679C88 - voice_keysplit voicegroup009, KeySplitTable5 @ 8679C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D24 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 8679D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679D78 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @ 8679D84 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 @ 8679D90 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 @ 8679D9C - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 @ 8679DA8 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 @ 8679DB4 +voicegroup019:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup020.inc b/sound/voicegroups/voicegroup020.inc index a0e51c67dec6..2c5494c79117 100644 --- a/sound/voicegroups/voicegroup020.inc +++ b/sound/voicegroups/voicegroup020.inc @@ -1,90 +1,90 @@ .align 2 -voicegroup020:: @ 8679DC0 - voice_keysplit voicegroup005, KeySplitTable1 @ 8679DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FD0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 8679FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8679FF4 - voice_keysplit voicegroup006, KeySplitTable2 @ 867A000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A00C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A03C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A06C - voice_keysplit voicegroup008, KeySplitTable4 @ 867A078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A12C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A174 - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 867A180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A18C - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 867A198 - voice_square_2_alt 60, 0, 1, 0, 1, 6, 2 @ 867A1A4 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 @ 867A1B0 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 @ 867A1BC - voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 @ 867A1C8 +voicegroup020:: + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup021.inc b/sound/voicegroups/voicegroup021.inc index 8ae95ef436cc..70698a668e08 100644 --- a/sound/voicegroups/voicegroup021.inc +++ b/sound/voicegroups/voicegroup021.inc @@ -1,54 +1,54 @@ .align 2 -voicegroup021:: @ 867A1D4 - voice_keysplit_all voicegroup001 @ 867A1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A1E0 - voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 @ 867A1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A1F8 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 @ 867A204 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 @ 867A210 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 @ 867A21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A24C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A3FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867A408 - voice_keysplit voicegroup006, KeySplitTable2 @ 867A414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A42C +voicegroup021:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup022.inc b/sound/voicegroups/voicegroup022.inc index c30a74351b2a..bd64fd856cd9 100644 --- a/sound/voicegroups/voicegroup022.inc +++ b/sound/voicegroups/voicegroup022.inc @@ -1,68 +1,68 @@ .align 2 -voicegroup022:: @ 867A438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A468 - voice_keysplit voicegroup007, KeySplitTable3 @ 867A474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A480 - voice_keysplit voicegroup008, KeySplitTable4 @ 867A48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A498 - voice_keysplit voicegroup009, KeySplitTable5 @ 867A4A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A4F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A51C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A534 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867A540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A588 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 @ 867A594 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 867A5A0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 @ 867A5AC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 867A5B8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 867A5C4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 1 @ 867A5D0 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 @ 867A5DC - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 @ 867A5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A5F4 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 867A600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A60C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 867A618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6B4 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 867A6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A714 - voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 867A720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A72C - voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 867A738 +voicegroup022:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup023.inc b/sound/voicegroups/voicegroup023.inc index 543ba17954c9..059999c8b853 100644 --- a/sound/voicegroups/voicegroup023.inc +++ b/sound/voicegroups/voicegroup023.inc @@ -1,92 +1,92 @@ .align 2 -voicegroup023:: @ 867A744 - voice_keysplit voicegroup005, KeySplitTable1 @ 867A744 - voice_keysplit_all voicegroup001 @ 867A750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A75C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 867A8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A93C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A960 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 867A96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A978 - voice_keysplit voicegroup006, KeySplitTable2 @ 867A984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9D8 - voice_keysplit voicegroup007, KeySplitTable3 @ 867A9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867A9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AA98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AAF8 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 @ 867AB04 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 867AB10 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 @ 867AB1C - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 867AB28 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 @ 867AB34 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @ 867AB40 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 @ 867AB4C - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 0 @ 867AB58 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 @ 867AB64 +voicegroup023:: + voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 diff --git a/sound/voicegroups/voicegroup024.inc b/sound/voicegroups/voicegroup024.inc index db85541cd50f..ca05a5916561 100644 --- a/sound/voicegroups/voicegroup024.inc +++ b/sound/voicegroups/voicegroup024.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup024:: @ 867AB70 - voice_keysplit_all voicegroup001 @ 867AB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ABF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ACFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD80 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 867AD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AD98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867ADA4 - voice_keysplit voicegroup006, KeySplitTable2 @ 867ADB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ADF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE04 - voice_keysplit voicegroup007, KeySplitTable3 @ 867AE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE34 - voice_keysplit voicegroup009, KeySplitTable5 @ 867AE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AED0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867AEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AF18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AF24 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 @ 867AF30 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 867AF3C - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 @ 867AF48 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 @ 867AF54 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @ 867AF60 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 @ 867AF6C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 @ 867AF78 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 @ 867AF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AF90 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 867AF9C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 867AFA8 +voicegroup024:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup025.inc b/sound/voicegroups/voicegroup025.inc index e9d68d30a00a..01716b47d979 100644 --- a/sound/voicegroups/voicegroup025.inc +++ b/sound/voicegroups/voicegroup025.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup025:: @ 867AFB4 - voice_keysplit_all voicegroup001 @ 867AFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867AFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B05C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867B1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B23C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B248 - voice_keysplit voicegroup007, KeySplitTable3 @ 867B254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B260 - voice_keysplit voicegroup008, KeySplitTable4 @ 867B26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B314 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867B320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B368 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 @ 867B374 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 867B380 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 @ 867B38C - voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 @ 867B398 +voicegroup025:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup026.inc b/sound/voicegroups/voicegroup026.inc index 77f308ed90c1..7911f04099da 100644 --- a/sound/voicegroups/voicegroup026.inc +++ b/sound/voicegroups/voicegroup026.inc @@ -1,88 +1,88 @@ .align 2 -voicegroup026:: @ 867B3A4 - voice_keysplit_all voicegroup001 @ 867B3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B44C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867B5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B65C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B668 - voice_keysplit voicegroup009, KeySplitTable5 @ 867B674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B6F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B758 - voice_square_2_alt 60, 0, 2, 0, 1, 9, 0 @ 867B764 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 867B770 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 9, 0 @ 867B77C - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @ 867B788 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 @ 867B794 +voicegroup026:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 9, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 diff --git a/sound/voicegroups/voicegroup027.inc b/sound/voicegroups/voicegroup027.inc index 1747fbe6723e..c350886569ae 100644 --- a/sound/voicegroups/voicegroup027.inc +++ b/sound/voicegroups/voicegroup027.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup027:: @ 867B7A0 - voice_keysplit_all voicegroup001 @ 867B7A0 - voice_keysplit voicegroup005, KeySplitTable1 @ 867B7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B830 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 867B83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B89C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B8A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B8B4 - voice_square_2 60, 0, 1, 0, 2, 0, 0 @ 867B8C0 - voice_square_1 60, 0, 0, 1, 0, 2, 0, 0 @ 867B8CC - voice_square_2 60, 0, 1, 0, 6, 0, 0 @ 867B8D8 - voice_square_1 60, 0, 0, 1, 0, 6, 0, 0 @ 867B8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B92C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B95C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 867B968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867B9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB00 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 867BB0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB60 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 867BB6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BCF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BD7C - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 @ 867BD88 - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 @ 867BD94 +voicegroup027:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 1, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 1, 0, 2, 0, 0 + voice_square_2 60, 0, 1, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 1, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup028.inc b/sound/voicegroups/voicegroup028.inc index 2b64c6b31289..73413c99e9b8 100644 --- a/sound/voicegroups/voicegroup028.inc +++ b/sound/voicegroups/voicegroup028.inc @@ -1,86 +1,86 @@ .align 2 -voicegroup028:: @ 867BDA0 - voice_keysplit_all voicegroup001 @ 867BDA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BDAC - voice_square_1 60, 0, 0, 3, 0, 1, 0, 0 @ 867BDB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BDDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BDE8 - voice_square_2 60, 0, 0, 0, 2, 0, 0 @ 867BDF4 - voice_square_1 60, 0, 0, 0, 0, 2, 0, 0 @ 867BE00 - voice_square_2 60, 0, 0, 0, 6, 0, 0 @ 867BE0C - voice_square_1 60, 0, 0, 0, 0, 6, 0, 0 @ 867BE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE60 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 867BE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF44 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 867BF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867BFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C034 - voice_keysplit voicegroup007, KeySplitTable3 @ 867C040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C04C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C154 - voice_square_2 60, 0, 2, 0, 2, 0, 0 @ 867C160 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 867C16C - voice_square_2 60, 0, 3, 0, 4, 0, 0 @ 867C178 +voicegroup028:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 0, 0, 2, 0, 0 + voice_square_2 60, 0, 0, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 0, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 0, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2 60, 0, 3, 0, 4, 0, 0 diff --git a/sound/voicegroups/voicegroup029.inc b/sound/voicegroups/voicegroup029.inc index e4130787300f..4b7704be04fb 100644 --- a/sound/voicegroups/voicegroup029.inc +++ b/sound/voicegroups/voicegroup029.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup029:: @ 867C184 - voice_keysplit_all voicegroup001 @ 867C184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1CC - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 867C1D8 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 0 @ 867C1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C208 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 @ 867C214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C220 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 867C22C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C394 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 867C3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C3AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867C3B8 - voice_keysplit voicegroup006, KeySplitTable2 @ 867C3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C418 - voice_keysplit voicegroup007, KeySplitTable3 @ 867C424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C448 - voice_keysplit voicegroup009, KeySplitTable5 @ 867C454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867C4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C52C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C538 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @ 867C544 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 867C550 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 @ 867C55C - voice_square_2_alt 60, 0, 3, 0, 1, 0, 0 @ 867C568 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 0 @ 867C574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C58C - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 @ 867C598 +voicegroup029:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 diff --git a/sound/voicegroups/voicegroup030.inc b/sound/voicegroups/voicegroup030.inc index ba7a8161256c..11856b6a6a3a 100644 --- a/sound/voicegroups/voicegroup030.inc +++ b/sound/voicegroups/voicegroup030.inc @@ -1,58 +1,58 @@ .align 2 -voicegroup030:: @ 867C5A4 - voice_keysplit_all voicegroup031 @ 867C5A4 - voice_keysplit voicegroup005, KeySplitTable1 @ 867C5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C5EC - voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 @ 867C5F8 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 @ 867C604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C640 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 867C64C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C664 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 @ 867C670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C67C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C76C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 867C7CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867C7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C82C +voicegroup030:: + voice_keysplit_all voicegroup031 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup031.inc b/sound/voicegroups/voicegroup031.inc index e0d8691dbb1b..f65481a9d116 100644 --- a/sound/voicegroups/voicegroup031.inc +++ b/sound/voicegroups/voicegroup031.inc @@ -1,68 +1,68 @@ .align 2 -voicegroup031:: @ 867C838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C85C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C868 - voice_keysplit voicegroup009, KeySplitTable5 @ 867C874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C964 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 @ 867C970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9D0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 @ 867C9DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867C9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA0C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 867CA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CAB4 - voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 867CAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CAD8 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 867CAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CAF0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 867CAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB14 - voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 867CB20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB2C - voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 867CB38 +voicegroup031:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup032.inc b/sound/voicegroups/voicegroup032.inc index 75e305f6e6f7..22919a9a0c07 100644 --- a/sound/voicegroups/voicegroup032.inc +++ b/sound/voicegroups/voicegroup032.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup032:: @ 867CB44 - voice_keysplit_all voicegroup016 @ 867CB44 - voice_keysplit voicegroup005, KeySplitTable1 @ 867CB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CB8C - voice_square_2_alt 60, 0, 3, 0, 3, 4, 0 @ 867CB98 - voice_square_1_alt 60, 0, 0, 3, 0, 3, 4, 0 @ 867CBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 250, 0, 149 @ 867CCE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CCF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CDFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CE98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CEA4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867CEB0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 867CEBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF04 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 867CF10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867CFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D00C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D03C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D114 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 867D120 - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 @ 867D12C - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 @ 867D138 +voicegroup032:: + voice_keysplit_all voicegroup016 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 3, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 250, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup033.inc b/sound/voicegroups/voicegroup033.inc index 21d1b108f20b..d414fa0bcb5f 100644 --- a/sound/voicegroups/voicegroup033.inc +++ b/sound/voicegroups/voicegroup033.inc @@ -1,86 +1,86 @@ .align 2 -voicegroup033:: @ 867D144 - voice_keysplit_all voicegroup001 @ 867D144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D1F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D24C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 867D2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D360 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 867D36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D378 - voice_keysplit voicegroup006, KeySplitTable2 @ 867D384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D408 - voice_keysplit voicegroup009, KeySplitTable5 @ 867D414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 867D4B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D4F8 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 867D504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D510 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 867D51C +voicegroup033:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 diff --git a/sound/voicegroups/voicegroup034.inc b/sound/voicegroups/voicegroup034.inc index 6ca2ded87442..43b2e67a99d8 100644 --- a/sound/voicegroups/voicegroup034.inc +++ b/sound/voicegroups/voicegroup034.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup034:: @ 867D528 - voice_keysplit_all voicegroup001 @ 867D528 - voice_keysplit voicegroup005, KeySplitTable1 @ 867D534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D54C - voice_square_2 60, 0, 2, 0, 1, 4, 2 @ 867D558 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 @ 867D564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D60C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 867D6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D72C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D738 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 867D744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D75C - voice_keysplit voicegroup006, KeySplitTable2 @ 867D768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D888 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 867D894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D900 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 2 @ 867D90C +voicegroup034:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup035.inc b/sound/voicegroups/voicegroup035.inc index ebcdf744f103..4afb126c3993 100644 --- a/sound/voicegroups/voicegroup035.inc +++ b/sound/voicegroups/voicegroup035.inc @@ -1,88 +1,88 @@ .align 2 -voicegroup035:: @ 867D918 - voice_keysplit_all voicegroup031 @ 867D918 - voice_keysplit voicegroup005, KeySplitTable1 @ 867D924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D93C - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @ 867D948 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 @ 867D954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867D9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DA98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DAF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB40 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867DB4C - voice_keysplit voicegroup006, KeySplitTable2 @ 867DB58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBAC - voice_keysplit voicegroup007, KeySplitTable3 @ 867DBB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBDC - voice_keysplit voicegroup009, KeySplitTable5 @ 867DBE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DBF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DCA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DCB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DCC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DCCC - voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 @ 867DCD8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 867DCE4 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 @ 867DCF0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 867DCFC - voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 1 @ 867DD08 +voicegroup035:: + voice_keysplit_all voicegroup031 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 1 diff --git a/sound/voicegroups/voicegroup036.inc b/sound/voicegroups/voicegroup036.inc index 8799f251c293..2161259d7e97 100644 --- a/sound/voicegroups/voicegroup036.inc +++ b/sound/voicegroups/voicegroup036.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup036:: @ 867DD14 - voice_keysplit_all voicegroup001 @ 867DD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD38 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 867DD44 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 @ 867DD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DDF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DE94 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 867DEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF24 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 867DF30 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 867DF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF48 - voice_keysplit voicegroup006, KeySplitTable2 @ 867DF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DF9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFD8 - voice_keysplit voicegroup009, KeySplitTable5 @ 867DFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867DFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E05C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E074 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 867E080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0C8 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 @ 867E0D4 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 @ 867E0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E23C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E2F0 - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 @ 867E2FC - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 @ 867E308 +voicegroup036:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup037.inc b/sound/voicegroups/voicegroup037.inc index 9e52dc02e174..29f33cbe7c41 100644 --- a/sound/voicegroups/voicegroup037.inc +++ b/sound/voicegroups/voicegroup037.inc @@ -1,92 +1,92 @@ .align 2 -voicegroup037:: @ 867E314 - voice_keysplit_all voicegroup031 @ 867E314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E338 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 @ 867E344 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 @ 867E350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3B0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 867E3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E44C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E530 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 867E53C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 867E548 - voice_keysplit voicegroup006, KeySplitTable2 @ 867E554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5C0 - voice_keysplit voicegroup008, KeySplitTable4 @ 867E5CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5D8 - voice_keysplit voicegroup009, KeySplitTable5 @ 867E5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E65C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E6C8 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 @ 867E6D4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 867E6E0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 @ 867E6EC - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 @ 867E6F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E728 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 867E734 +voicegroup037:: + voice_keysplit_all voicegroup031 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup038.inc b/sound/voicegroups/voicegroup038.inc index 2b7f62f95dd9..42c63281d55b 100644 --- a/sound/voicegroups/voicegroup038.inc +++ b/sound/voicegroups/voicegroup038.inc @@ -1,85 +1,85 @@ .align 2 -voicegroup038:: @ 867E740 - voice_keysplit_all voicegroup001 @ 867E740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E764 - voice_square_2 60, 0, 2, 0, 1, 4, 1 @ 867E770 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 @ 867E77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E800 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 867E80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E89C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E8FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 867E908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E92C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E95C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867E9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB00 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 @ 867EB0C +voicegroup038:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup039.inc b/sound/voicegroups/voicegroup039.inc index 580eb4fe77c8..c8597bb4791f 100644 --- a/sound/voicegroups/voicegroup039.inc +++ b/sound/voicegroups/voicegroup039.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup039:: @ 867EB18 - voice_keysplit_all voicegroup001 @ 867EB18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBD8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 867EBE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC2C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 867EC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECBC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 867ECC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ECF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED4C - voice_keysplit voicegroup006, KeySplitTable2 @ 867ED58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867ED94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDAC - voice_keysplit voicegroup007, KeySplitTable3 @ 867EDB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDDC - voice_keysplit voicegroup009, KeySplitTable5 @ 867EDE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EDF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 867EE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EEA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EEB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EEC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EECC - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 @ 867EED8 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 867EEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EEF0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 867EEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867EFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F04C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F0F4 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 867F100 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 867F10C +voicegroup039:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup040.inc b/sound/voicegroups/voicegroup040.inc index 78cc9167a409..4ee10e72fe72 100644 --- a/sound/voicegroups/voicegroup040.inc +++ b/sound/voicegroups/voicegroup040.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup040:: @ 867F118 - voice_keysplit_all voicegroup001 @ 867F118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F16C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1D8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 867F1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F22C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 867F238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2BC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 867F2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F34C - voice_keysplit voicegroup006, KeySplitTable2 @ 867F358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3AC - voice_keysplit voicegroup007, KeySplitTable3 @ 867F3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3DC - voice_keysplit voicegroup009, KeySplitTable5 @ 867F3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F478 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 867F484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F4CC - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 @ 867F4D8 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 867F4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F4F0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 867F4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F52C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F64C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F67C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F6F4 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 867F700 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 867F70C +voicegroup040:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup041.inc b/sound/voicegroups/voicegroup041.inc index f5a1d6d1681c..dc23fd7ad8f3 100644 --- a/sound/voicegroups/voicegroup041.inc +++ b/sound/voicegroups/voicegroup041.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup041:: @ 867F718 - voice_keysplit_all voicegroup001 @ 867F718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F76C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7D8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 867F7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F82C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 867F838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F85C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8BC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 867F8C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F94C - voice_keysplit voicegroup006, KeySplitTable2 @ 867F958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9AC - voice_keysplit voicegroup007, KeySplitTable3 @ 867F9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9DC - voice_keysplit voicegroup009, KeySplitTable5 @ 867F9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867F9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 867FA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FACC - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 @ 867FAD8 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 867FAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FAF0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 867FAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FCF4 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 867FD00 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 867FD0C +voicegroup041:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup042.inc b/sound/voicegroups/voicegroup042.inc index 764ce1c619ab..0166ef9e3c9e 100644 --- a/sound/voicegroups/voicegroup042.inc +++ b/sound/voicegroups/voicegroup042.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup042:: @ 867FD18 - voice_keysplit_all voicegroup001 @ 867FD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDD8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 867FDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FDFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE2C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 867FE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FE98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEBC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 867FEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF4C - voice_keysplit voicegroup006, KeySplitTable2 @ 867FF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFAC - voice_keysplit voicegroup007, KeySplitTable3 @ 867FFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFDC - voice_keysplit voicegroup009, KeySplitTable5 @ 867FFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 867FFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868000C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868003C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868006C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680078 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 8680084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868009C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86800A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86800B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86800C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86800CC - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 @ 86800D8 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 86800E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86800F0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 86800FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868012C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868015C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868018C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86801F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868021C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868024C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868027C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86802F4 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8680300 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868030C +voicegroup042:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup043.inc b/sound/voicegroups/voicegroup043.inc index 6e4c76dfcf3e..d2ca0101b23d 100644 --- a/sound/voicegroups/voicegroup043.inc +++ b/sound/voicegroups/voicegroup043.inc @@ -1,84 +1,84 @@ .align 2 -voicegroup043:: @ 8680318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680318 - voice_keysplit voicegroup005, KeySplitTable1 @ 8680324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868033C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868036C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868039C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86803FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868042C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868045C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868048C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 @ 8680498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86804F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868051C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868054C - voice_keysplit voicegroup006, KeySplitTable2 @ 8680558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868057C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805C4 - voice_keysplit voicegroup008, KeySplitTable4 @ 86805D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86805F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868060C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868063C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868066C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680678 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8680684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868069C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806CC - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 86806D8 +voicegroup043:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 diff --git a/sound/voicegroups/voicegroup044.inc b/sound/voicegroups/voicegroup044.inc index 5c848d94debd..4717b4273f3b 100644 --- a/sound/voicegroups/voicegroup044.inc +++ b/sound/voicegroups/voicegroup044.inc @@ -1,84 +1,84 @@ .align 2 -voicegroup044:: @ 86806E4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86806E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86806FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680708 - voice_square_1_alt 60, 0, 0, 2, 0, 5, 1, 7 @ 8680714 - voice_square_2_alt 60, 0, 3, 0, 4, 3, 6 @ 8680720 - voice_square_2_alt 60, 0, 2, 1, 1, 4, 0 @ 868072C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868075C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868078C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86807F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868081C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868084C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868087C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 224 @ 8680888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86808F4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8680900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868090C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680918 - voice_keysplit voicegroup006, KeySplitTable2 @ 8680924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868093C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868096C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868099C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86809FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A44 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8680A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680A98 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8680AA4 +voicegroup044:: + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 5, 1, 7 + voice_square_2_alt 60, 0, 3, 0, 4, 3, 6 + voice_square_2_alt 60, 0, 2, 1, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup045.inc b/sound/voicegroups/voicegroup045.inc index bb904e5ca0a1..f0bc78c58b89 100644 --- a/sound/voicegroups/voicegroup045.inc +++ b/sound/voicegroups/voicegroup045.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup045:: @ 8680AB0 - voice_keysplit_all voicegroup001 @ 8680AB0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 @ 8680ABC - voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 @ 8680AC8 - voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 @ 8680AD4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 8680AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680AEC - voice_square_2_alt 60, 0, 1, 0, 2, 0, 1 @ 8680AF8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 1, 7, 15, 1 @ 8680B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B1C - voice_keysplit voicegroup005, KeySplitTable1 @ 8680B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8680B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C6C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 @ 8680C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CE4 - voice_keysplit voicegroup006, KeySplitTable2 @ 8680CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8680E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8680FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868102C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868105C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868108C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681098 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86810A4 +voicegroup045:: + voice_keysplit_all voicegroup001 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 + voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 + voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 0, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 1, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup046.inc b/sound/voicegroups/voicegroup046.inc index 07889819ae27..e2ecb7610421 100644 --- a/sound/voicegroups/voicegroup046.inc +++ b/sound/voicegroups/voicegroup046.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup046:: @ 86810B0 - voice_keysplit voicegroup005, KeySplitTable1 @ 86810B0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 1, 12, 0 @ 86810BC - voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 @ 86810C8 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @ 86810D4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 @ 86810E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 @ 86810EC - voice_square_2_alt 60, 0, 1, 0, 2, 6, 3 @ 86810F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868111C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868114C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868117C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86811F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868120C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868123C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868126C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868129C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 165 @ 86812CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812E4 - voice_keysplit voicegroup006, KeySplitTable2 @ 86812F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86812FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868132C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868135C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868138C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86813F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681410 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 868141C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868144C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868147C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86814F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868150C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868153C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868156C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868159C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86815FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868162C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868165C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868168C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681698 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86816A4 +voicegroup046:: + voice_keysplit voicegroup005, KeySplitTable1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 1, 12, 0 + voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup047.inc b/sound/voicegroups/voicegroup047.inc index c045c1dd339f..403d53d42300 100644 --- a/sound/voicegroups/voicegroup047.inc +++ b/sound/voicegroups/voicegroup047.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup047:: @ 86816B0 - voice_keysplit_all voicegroup001 @ 86816B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86816F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868171C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868174C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868177C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86817F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868180C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868183C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868186C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8681878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868189C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86818A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86818B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86818C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86818CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 @ 86818D8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 @ 86818E4 - voice_keysplit voicegroup006, KeySplitTable2 @ 86818F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86818FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868192C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681944 - voice_keysplit voicegroup007, KeySplitTable3 @ 8681950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868195C - voice_keysplit voicegroup008, KeySplitTable4 @ 8681968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681974 - voice_keysplit voicegroup009, KeySplitTable5 @ 8681980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868198C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86819F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681A64 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 @ 8681A70 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 8681A7C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8681A88 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 1, 7, 15, 2 @ 8681A94 - voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 @ 8681AA0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 @ 8681AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681AB8 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 8681AC4 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 @ 8681AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681C98 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8681CA4 +voicegroup047:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 1, 7, 15, 2 + voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup048.inc b/sound/voicegroups/voicegroup048.inc index 151c725d1f0d..b819395a6a81 100644 --- a/sound/voicegroups/voicegroup048.inc +++ b/sound/voicegroups/voicegroup048.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup048:: @ 8681CB0 - voice_keysplit_all voicegroup001 @ 8681CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681CD4 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 @ 8681CE0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8681CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 @ 8681D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681ECC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 8681ED8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 239 @ 8681EE4 - voice_keysplit voicegroup006, KeySplitTable2 @ 8681EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F44 - voice_keysplit voicegroup007, KeySplitTable3 @ 8681F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F5C - voice_keysplit voicegroup008, KeySplitTable4 @ 8681F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F74 - voice_keysplit voicegroup009, KeySplitTable5 @ 8681F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8681FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682010 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 868201C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868204C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682064 - voice_square_2_alt 60, 0, 3, 0, 4, 4, 0 @ 8682070 - voice_square_1_alt 60, 0, 0, 3, 0, 3, 6, 0 @ 868207C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682088 - voice_square_1_alt 60, 0, 0, 0, 0, 3, 3, 0 @ 8682094 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 12, 1 @ 86820A0 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 3 @ 86820AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86820B8 - voice_square_2_alt 60, 0, 0, 0, 2, 4, 0 @ 86820C4 +voicegroup048:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 4, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 3, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 12, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 2, 4, 0 diff --git a/sound/voicegroups/voicegroup049.inc b/sound/voicegroups/voicegroup049.inc index a3700ecf365b..ed830a1a9cd0 100644 --- a/sound/voicegroups/voicegroup049.inc +++ b/sound/voicegroups/voicegroup049.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup049:: @ 86820D0 - voice_keysplit_all voicegroup001 @ 86820D0 - voice_keysplit voicegroup005, KeySplitTable1 @ 86820DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86820E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86820F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868210C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682130 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @ 868213C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868216C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868219C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86821FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868222C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868225C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682268 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8682274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868228C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86822E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 86822EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 86822F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 @ 8682304 - voice_keysplit voicegroup006, KeySplitTable2 @ 8682310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868231C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868234C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682364 - voice_keysplit voicegroup007, KeySplitTable3 @ 8682370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868237C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682394 - voice_keysplit voicegroup009, KeySplitTable5 @ 86823A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86823F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868240C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682430 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 868243C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868246C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682484 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 @ 8682490 - voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 @ 868249C - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 86824A8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 7, 15, 0 @ 86824B4 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 2 @ 86824C0 - voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 @ 86824CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86824D8 - voice_square_1_alt 60, 0, 0, 2, 1, 4, 4, 2 @ 86824E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86824F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86824FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868252C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868255C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868258C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86825F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868261C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868264C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868267C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86826A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86826AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86826B8 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86826C4 +voicegroup049:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 7, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 2 + voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 4, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup050.inc b/sound/voicegroups/voicegroup050.inc index dbbe02cfca0c..ed5f1ba71d57 100644 --- a/sound/voicegroups/voicegroup050.inc +++ b/sound/voicegroups/voicegroup050.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup050:: @ 86826D0 - voice_keysplit_all voicegroup001 @ 86826D0 - voice_keysplit voicegroup005, KeySplitTable1 @ 86826DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86826E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86826F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868270C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868273C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868276C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682790 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 868279C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86827FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868282C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868285C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682868 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8682874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868288C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86828EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 86828F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868291C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868294C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868297C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86829F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A84 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8682A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682AA8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8682AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682AD8 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 @ 8682AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682CB8 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8682CC4 +voicegroup050:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup051.inc b/sound/voicegroups/voicegroup051.inc index ceafb4d4dfc2..31b69cd8793c 100644 --- a/sound/voicegroups/voicegroup051.inc +++ b/sound/voicegroups/voicegroup051.inc @@ -1,77 +1,77 @@ .align 2 -voicegroup051:: @ 8682CD0 - voice_keysplit_all voicegroup001 @ 8682CD0 - voice_keysplit voicegroup005, KeySplitTable1 @ 8682CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682CF4 - voice_square_2_alt 60, 0, 2, 1, 4, 4, 2 @ 8682D00 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 @ 8682D0C - voice_square_2_alt 60, 0, 2, 1, 3, 4, 2 @ 8682D18 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 @ 8682D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E68 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8682E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EE0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 99 @ 8682EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F04 - voice_keysplit voicegroup006, KeySplitTable2 @ 8682F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8682FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868300C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683030 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 868303C +voicegroup051:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 4, 4, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 + voice_square_2_alt 60, 0, 2, 1, 3, 4, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup052.inc b/sound/voicegroups/voicegroup052.inc index efddac28a71a..b7020362dfbf 100644 --- a/sound/voicegroups/voicegroup052.inc +++ b/sound/voicegroups/voicegroup052.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup052:: @ 8683048 - voice_keysplit_all voicegroup001 @ 8683048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683054 - voice_square_1 60, 0, 0, 3, 1, 2, 6, 0 @ 8683060 - voice_square_2 60, 0, 3, 1, 2, 6, 0 @ 868306C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868309C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86830FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868312C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868315C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868318C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683198 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 0 @ 86831A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86831F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868321C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868324C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683270 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 @ 868327C - voice_keysplit voicegroup006, KeySplitTable2 @ 8683288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832DC - voice_keysplit voicegroup007, KeySplitTable3 @ 86832E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86832F4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8683300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868330C - voice_keysplit voicegroup009, KeySplitTable5 @ 8683318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868333C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868336C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868339C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86833FC - voice_square_2_alt 60, 0, 1, 0, 1, 6, 1 @ 8683408 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 @ 8683414 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 @ 8683420 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 2 @ 868342C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 8683438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683450 - voice_square_1_alt 60, 0, 0, 1, 0, 7, 6, 1 @ 868345C - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 8683468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868348C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86834F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868351C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868354C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868357C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86835F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868360C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683618 - voice_noise_alt 60, 0, 0, 0, 1, 9, 4 @ 8683624 - voice_noise_alt 60, 0, 0, 3, 1, 10, 0 @ 8683630 - voice_noise_alt 60, 0, 0, 0, 2, 0, 0 @ 868363C +voicegroup052:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 1, 2, 6, 0 + voice_square_2 60, 0, 3, 1, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 7, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 4 + voice_noise_alt 60, 0, 0, 3, 1, 10, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 0 diff --git a/sound/voicegroups/voicegroup053.inc b/sound/voicegroups/voicegroup053.inc index 559f7efa3775..3d3312b1d2b4 100644 --- a/sound/voicegroups/voicegroup053.inc +++ b/sound/voicegroups/voicegroup053.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup053:: @ 8683648 - voice_keysplit_all voicegroup001 @ 8683648 - voice_keysplit voicegroup005, KeySplitTable1 @ 8683654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868366C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868369C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86836FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868372C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868375C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868378C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86837EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86837F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868381C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868384C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683858 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8683864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868387C - voice_keysplit voicegroup006, KeySplitTable2 @ 8683888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86838F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868390C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868393C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868396C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868399C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839A8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86839B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86839FC - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 @ 8683A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A14 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 8683A20 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 12, 0 @ 8683A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C30 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8683C3C +voicegroup053:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup054.inc b/sound/voicegroups/voicegroup054.inc index 1a300444e96f..9d762c5616c4 100644 --- a/sound/voicegroups/voicegroup054.inc +++ b/sound/voicegroups/voicegroup054.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup054:: @ 8683C48 - voice_keysplit_all voicegroup001 @ 8683C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8683E64 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 8683E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E7C - voice_keysplit voicegroup006, KeySplitTable2 @ 8683E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683EF4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8683F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F0C - voice_keysplit voicegroup009, KeySplitTable5 @ 8683F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8683FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8683FFC - voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 @ 8684008 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 8684014 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8684020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868402C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868405C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868408C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86840F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868411C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868414C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868417C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86841F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868420C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684230 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868423C +voicegroup054:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup055.inc b/sound/voicegroups/voicegroup055.inc index 71556fc57bd3..90f10a26c8da 100644 --- a/sound/voicegroups/voicegroup055.inc +++ b/sound/voicegroups/voicegroup055.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup055:: @ 8684248 - voice_keysplit_all voicegroup001 @ 8684248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868426C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868429C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86842FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868432C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868435C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868438C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86843F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684404 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8684410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868441C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868444C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684464 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 @ 8684470 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 @ 868447C - voice_keysplit voicegroup006, KeySplitTable2 @ 8684488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844DC - voice_keysplit voicegroup007, KeySplitTable3 @ 86844E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86844F4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8684500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868450C - voice_keysplit voicegroup009, KeySplitTable5 @ 8684518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868453C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868456C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868459C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86845FC - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8684608 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 @ 8684614 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8684620 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 2 @ 868462C - voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 @ 8684638 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 @ 8684644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684650 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 @ 868465C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868468C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86846F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868471C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868474C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868477C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86847F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868480C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684830 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868483C +voicegroup055:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 2 + voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup056.inc b/sound/voicegroups/voicegroup056.inc index 56538a65b8be..5d945f366320 100644 --- a/sound/voicegroups/voicegroup056.inc +++ b/sound/voicegroups/voicegroup056.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup056:: @ 8684848 - voice_keysplit_all voicegroup001 @ 8684848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868486C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868489C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86848FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868492C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868495C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868498C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86849F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A04 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8684A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A7C - voice_keysplit voicegroup006, KeySplitTable2 @ 8684A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B0C - voice_keysplit voicegroup009, KeySplitTable5 @ 8684B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8684BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684BFC - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8684C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C14 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8684C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C50 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8684C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E30 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8684E3C +voicegroup056:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup057.inc b/sound/voicegroups/voicegroup057.inc index 0a8b037b4b60..dbdb059cee38 100644 --- a/sound/voicegroups/voicegroup057.inc +++ b/sound/voicegroups/voicegroup057.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup057:: @ 8684E48 - voice_keysplit_all voicegroup001 @ 8684E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684EA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 188, 51, 242 @ 8684EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684EE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 128, 165, 90, 216 @ 8684EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F50 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 @ 8684F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FE0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8684FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8684FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868501C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868504C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685058 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8685064 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 8685070 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 @ 868507C - voice_keysplit voicegroup006, KeySplitTable2 @ 8685088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86850F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868510C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868513C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868516C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868519C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851A8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86851B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86851FC - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8685208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685214 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 1, 4, 10, 1 @ 8685220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868522C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868525C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868528C - voice_square_2_alt 60, 0, 2, 1, 5, 9, 1 @ 8685298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86852F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868531C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868534C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868537C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86853F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868540C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685424 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8685430 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868543C +voicegroup057:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 188, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 128, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 1, 4, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 5, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup058.inc b/sound/voicegroups/voicegroup058.inc index 1e50a0b3a242..0af41d7890b4 100644 --- a/sound/voicegroups/voicegroup058.inc +++ b/sound/voicegroups/voicegroup058.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup058:: @ 8685448 - voice_keysplit_all voicegroup001 @ 8685448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868546C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868549C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86854FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685508 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8685514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868552C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868555C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868558C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86855EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86855F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868561C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868564C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868567C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856DC - voice_keysplit voicegroup007, KeySplitTable3 @ 86856E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86856F4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8685700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868570C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868573C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868576C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868579C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857C0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 86857CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86857FC - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8685808 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8685814 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8685820 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 868582C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868585C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868588C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86858F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868591C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868594C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868597C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86859F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A24 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 8685A30 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8685A3C +voicegroup058:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup059.inc b/sound/voicegroups/voicegroup059.inc index 20b91da5d5e0..4a9fccbc5dde 100644 --- a/sound/voicegroups/voicegroup059.inc +++ b/sound/voicegroups/voicegroup059.inc @@ -1,92 +1,92 @@ .align 2 -voicegroup059:: @ 8685A48 - voice_keysplit_all voicegroup001 @ 8685A48 - voice_keysplit voicegroup005, KeySplitTable1 @ 8685A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A6C - voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 @ 8685A78 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8685A84 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 8685A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685AA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @ 8685AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685AE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8685AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C64 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8685C70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 @ 8685C7C - voice_keysplit voicegroup006, KeySplitTable2 @ 8685C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CDC - voice_keysplit voicegroup007, KeySplitTable3 @ 8685CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685CF4 - voice_keysplit voicegroup008, KeySplitTable4 @ 8685D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D0C - voice_keysplit voicegroup009, KeySplitTable5 @ 8685D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8685DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685DFC - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 2 @ 8685E08 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 0 @ 8685E14 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8685E20 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8685E2C - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 0 @ 8685E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685E50 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8685E5C - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 @ 8685E68 +voicegroup059:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 2 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup060.inc b/sound/voicegroups/voicegroup060.inc index 02569e1ca8a7..e63327194d90 100644 --- a/sound/voicegroups/voicegroup060.inc +++ b/sound/voicegroups/voicegroup060.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup060:: @ 8685E74 - voice_keysplit_all voicegroup001 @ 8685E74 - voice_keysplit voicegroup005, KeySplitTable1 @ 8685E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F04 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8685F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8685FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868600C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868603C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868606C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686084 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 128, 226, 0, 38 @ 8686090 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868609C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86860A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 86860B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86860FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686108 - voice_keysplit voicegroup007, KeySplitTable3 @ 8686114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686120 - voice_keysplit voicegroup008, KeySplitTable4 @ 868612C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686138 - voice_keysplit voicegroup009, KeySplitTable5 @ 8686144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868615C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868618C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86861E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86861F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868621C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686228 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 1 @ 8686234 - voice_square_1_alt 60, 0, 0, 1, 0, 4, 4, 1 @ 8686240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868624C - voice_square_2_alt 60, 0, 2, 0, 7, 3, 3 @ 8686258 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 @ 8686264 - voice_square_1_alt 60, 0, 0, 3, 2, 2, 7, 0 @ 8686270 - voice_square_2_alt 60, 0, 1, 1, 2, 3, 0 @ 868627C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86862F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868630C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868633C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868636C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868639C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86863FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868642C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868645C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8686468 +voicegroup060:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 128, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 4, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 3, 2, 2, 7, 0 + voice_square_2_alt 60, 0, 1, 1, 2, 3, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup061.inc b/sound/voicegroups/voicegroup061.inc index d4b8a50b3da1..2775a7c2c508 100644 --- a/sound/voicegroups/voicegroup061.inc +++ b/sound/voicegroups/voicegroup061.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup061:: @ 8686474 - voice_keysplit_all voicegroup001 @ 8686474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868648C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86864F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868651C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686534 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8686540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868654C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868657C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86865F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868660C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686618 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 @ 8686624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868663C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868666C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868669C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86866FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686708 - voice_keysplit voicegroup007, KeySplitTable3 @ 8686714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868672C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868675C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868678C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86867E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86867F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868681C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686828 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8686834 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8686840 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868684C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8686858 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8686864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868687C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86868F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868690C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868693C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868696C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868699C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86869FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A50 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8686A5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8686A68 +voicegroup061:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup062.inc b/sound/voicegroups/voicegroup062.inc index 7415e7090d18..1687aa535a1a 100644 --- a/sound/voicegroups/voicegroup062.inc +++ b/sound/voicegroups/voicegroup062.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup062:: @ 8686A74 - voice_keysplit_all voicegroup001 @ 8686A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BC4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 8686BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C30 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8686C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D08 - voice_keysplit voicegroup007, KeySplitTable3 @ 8686D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E34 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8686E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E4C - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8686E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8686FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868702C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687050 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868705C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8687068 +voicegroup062:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup063.inc b/sound/voicegroups/voicegroup063.inc index 98ac82176997..6461b3aa21b0 100644 --- a/sound/voicegroups/voicegroup063.inc +++ b/sound/voicegroups/voicegroup063.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup063:: @ 8687074 - voice_keysplit_all voicegroup001 @ 8687074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868708C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86870F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868711C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687134 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 8687140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868714C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868717C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86871F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868720C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687218 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 8687224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868723C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868726C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868729C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86872FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687308 - voice_keysplit voicegroup007, KeySplitTable3 @ 8687314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868732C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868735C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868738C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86873F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868741C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687428 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8687434 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8687440 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868744C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8687458 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8687464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868747C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86874F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868750C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868753C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868756C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868759C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86875FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868762C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687650 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868765C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8687668 +voicegroup063:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup064.inc b/sound/voicegroups/voicegroup064.inc index f52f4569961d..919943400112 100644 --- a/sound/voicegroups/voicegroup064.inc +++ b/sound/voicegroups/voicegroup064.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup064:: @ 8687674 - voice_keysplit_all voicegroup001 @ 8687674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868768C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86876F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868771C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868774C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868777C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687788 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8687794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86877F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868780C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868783C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868786C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687890 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868789C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86878A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 86878B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86878FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868792C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687938 - voice_keysplit voicegroup009, KeySplitTable5 @ 8687944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868795C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868798C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86879E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86879F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A28 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8687A34 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8687A40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8687A4C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8687A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C50 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8687C5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8687C68 +voicegroup064:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup065.inc b/sound/voicegroups/voicegroup065.inc index d4a6048673ff..3ec97c6b6354 100644 --- a/sound/voicegroups/voicegroup065.inc +++ b/sound/voicegroups/voicegroup065.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup065:: @ 8687C74 - voice_keysplit_all voicegroup001 @ 8687C74 - voice_keysplit voicegroup005, KeySplitTable1 @ 8687C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 8687D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 8687E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F08 - voice_keysplit voicegroup007, KeySplitTable3 @ 8687F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8687FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868801C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688028 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8688034 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8688040 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868804C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 @ 8688058 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8688064 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8688070 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 868807C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 8688088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86880F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868810C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868813C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868816C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868819C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86881FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868822C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688250 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868825C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8688268 +voicegroup065:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup066.inc b/sound/voicegroups/voicegroup066.inc index ba3f167033db..fff4e5a6727c 100644 --- a/sound/voicegroups/voicegroup066.inc +++ b/sound/voicegroups/voicegroup066.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup066:: @ 8688274 - voice_keysplit_all voicegroup001 @ 8688274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868828C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86882F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868831C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868834C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868837C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688388 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8688394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86883F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868840C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8688418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688430 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868843C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868846C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688484 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8688490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868849C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86884FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868852C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868855C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868858C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86885E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86885F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868861C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688628 - voice_square_1 60, 0, 0, 1, 0, 1, 4, 1 @ 8688634 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8688640 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 @ 868864C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8688658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868867C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86886F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868870C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868873C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868876C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868879C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86887FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868882C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688850 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868885C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8688868 +voicegroup066:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup067.inc b/sound/voicegroups/voicegroup067.inc index b2ecd0927e36..6484d4479056 100644 --- a/sound/voicegroups/voicegroup067.inc +++ b/sound/voicegroups/voicegroup067.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup067:: @ 8688874 - voice_keysplit_all voicegroup001 @ 8688874 - voice_keysplit voicegroup005, KeySplitTable1 @ 8688880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868888C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86888F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868891C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688934 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8688940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868894C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868897C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688988 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8688994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86889F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A30 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8688A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B08 - voice_keysplit voicegroup007, KeySplitTable3 @ 8688B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 8688BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C28 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8688C34 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8688C40 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8688C4C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8688C58 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8688C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E50 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8688E5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8688E68 +voicegroup067:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup068.inc b/sound/voicegroups/voicegroup068.inc index 1d7f97cd59ef..3a7b4b034f73 100644 --- a/sound/voicegroups/voicegroup068.inc +++ b/sound/voicegroups/voicegroup068.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup068:: @ 8688E74 - voice_keysplit_all voicegroup001 @ 8688E74 - voice_keysplit voicegroup005, KeySplitTable1 @ 8688E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8688F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8688F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688F88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8688F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8688FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868900C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8689018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689030 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868903C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868906C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868909C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86890FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689108 - voice_keysplit voicegroup007, KeySplitTable3 @ 8689114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868912C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868915C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868918C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86891E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86891F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868921C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689228 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 @ 8689234 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 @ 8689240 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868924C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8689258 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8689264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868927C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86892F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868930C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868933C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868936C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868939C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86893FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868942C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689450 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868945C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8689468 +voicegroup068:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup069.inc b/sound/voicegroups/voicegroup069.inc index 952ebff66979..d2372c0cd7df 100644 --- a/sound/voicegroups/voicegroup069.inc +++ b/sound/voicegroups/voicegroup069.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup069:: @ 8689474 - voice_keysplit_all voicegroup001 @ 8689474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868948C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86894F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868951C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689534 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8689540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868954C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868957C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689588 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8689594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86895F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868960C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8689618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689630 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868963C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868966C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689684 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8689690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868969C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 86896B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86896FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689720 - voice_keysplit voicegroup008, KeySplitTable4 @ 868972C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868975C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868978C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86897E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86897F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868981C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689828 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8689834 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8689840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868984C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 3 @ 8689858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868987C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86898F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868990C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868993C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868996C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868999C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86899FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A50 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8689A5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8689A68 +voicegroup069:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup070.inc b/sound/voicegroups/voicegroup070.inc index 6d80b556a92b..965cf73a8890 100644 --- a/sound/voicegroups/voicegroup070.inc +++ b/sound/voicegroups/voicegroup070.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup070:: @ 8689A74 - voice_keysplit_all voicegroup001 @ 8689A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689B88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8689B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8689C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689C90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8689C9C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 8689CA8 - voice_keysplit voicegroup006, KeySplitTable2 @ 8689CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D08 - voice_keysplit voicegroup007, KeySplitTable3 @ 8689D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E28 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8689E34 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8689E40 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8689E4C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8689E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8689FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A050 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868A05C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868A068 +voicegroup070:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup071.inc b/sound/voicegroups/voicegroup071.inc index a1592a6e8098..0d247bb5e506 100644 --- a/sound/voicegroups/voicegroup071.inc +++ b/sound/voicegroups/voicegroup071.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup071:: @ 868A074 - voice_keysplit_all voicegroup001 @ 868A074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A23C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A308 - voice_keysplit voicegroup007, KeySplitTable3 @ 868A314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A320 - voice_keysplit voicegroup008, KeySplitTable4 @ 868A32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A338 - voice_keysplit voicegroup009, KeySplitTable5 @ 868A344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A428 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 868A434 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868A440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A44C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 868A458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A65C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868A668 +voicegroup071:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup072.inc b/sound/voicegroups/voicegroup072.inc index deb467dbf014..6c4c840ad29d 100644 --- a/sound/voicegroups/voicegroup072.inc +++ b/sound/voicegroups/voicegroup072.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup072:: @ 868A674 - voice_keysplit_all voicegroup001 @ 868A674 - voice_keysplit voicegroup005, KeySplitTable1 @ 868A680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A6F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A704 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 868A710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A734 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 868A740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A788 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868A794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A80C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868A818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A890 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868A89C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868A8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A908 - voice_keysplit voicegroup007, KeySplitTable3 @ 868A914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A92C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A938 - voice_keysplit voicegroup009, KeySplitTable5 @ 868A944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A95C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868A9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA28 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 868AA34 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 868AA40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868AA4C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 868AA58 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 @ 868AA64 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 @ 868AA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ABFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC50 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868AC5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868AC68 +voicegroup072:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup073.inc b/sound/voicegroups/voicegroup073.inc index 2701b5c79057..bc859f0e7583 100644 --- a/sound/voicegroups/voicegroup073.inc +++ b/sound/voicegroups/voicegroup073.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup073:: @ 868AC74 - voice_keysplit_all voicegroup001 @ 868AC74 - voice_keysplit voicegroup005, KeySplitTable1 @ 868AC80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ACF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD04 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 868AD10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 868AD40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AD88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868AD94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ADF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868AE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE30 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868AE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AE90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868AE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AEA8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868AEB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AEC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF08 - voice_keysplit voicegroup007, KeySplitTable3 @ 868AF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF38 - voice_keysplit voicegroup009, KeySplitTable5 @ 868AF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868AFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868AFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B028 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 @ 868B034 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 @ 868B040 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868B04C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 @ 868B058 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 @ 868B064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B16C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B22C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B250 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868B25C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868B268 +voicegroup073:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup074.inc b/sound/voicegroups/voicegroup074.inc index 6b9dcfb511cf..da9bbb03ce33 100644 --- a/sound/voicegroups/voicegroup074.inc +++ b/sound/voicegroups/voicegroup074.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup074:: @ 868B274 - voice_keysplit_all voicegroup001 @ 868B274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B304 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 868B310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B40C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868B418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B49C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 216 @ 868B4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B52C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B628 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 0 @ 868B634 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 0 @ 868B640 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 868B64C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868B658 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 868B664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B67C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868B688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B76C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B82C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B850 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868B85C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868B868 +voicegroup074:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup075.inc b/sound/voicegroups/voicegroup075.inc index cd8ed9250d0b..908ca57074e4 100644 --- a/sound/voicegroups/voicegroup075.inc +++ b/sound/voicegroups/voicegroup075.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup075:: @ 868B874 - voice_keysplit_all voicegroup001 @ 868B874 - voice_keysplit voicegroup005, KeySplitTable1 @ 868B880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B910 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868B91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868B9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868BA18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 868BA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BA9C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868BAA8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868BAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BAD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BAF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB08 - voice_keysplit voicegroup007, KeySplitTable3 @ 868BB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB20 - voice_keysplit voicegroup008, KeySplitTable4 @ 868BB2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB38 - voice_keysplit voicegroup009, KeySplitTable5 @ 868BB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868BBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC28 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 @ 868BC34 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 868BC40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868BC4C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 868BC58 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 868BC64 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 @ 868BC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC7C - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 @ 868BC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BCF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BDFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE50 - voice_noise_alt 60, 0, 0, 0, 3, 4, 0 @ 868BE5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868BE68 +voicegroup075:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup076.inc b/sound/voicegroups/voicegroup076.inc index 3148389b2cd6..c8faabe75c51 100644 --- a/sound/voicegroups/voicegroup076.inc +++ b/sound/voicegroups/voicegroup076.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup076:: @ 868BE74 - voice_keysplit_all voicegroup001 @ 868BE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BE98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 868BF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868BFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C00C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868C018 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 868C024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C03C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C108 - voice_keysplit voicegroup007, KeySplitTable3 @ 868C114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C12C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C1F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C228 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 868C234 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 868C240 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868C24C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 868C258 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 868C264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C450 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868C45C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868C468 +voicegroup076:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup077.inc b/sound/voicegroups/voicegroup077.inc index bc174e895555..3bf100be534c 100644 --- a/sound/voicegroups/voicegroup077.inc +++ b/sound/voicegroups/voicegroup077.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup077:: @ 868C474 - voice_keysplit_all voicegroup001 @ 868C474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C4F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C504 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 868C510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C51C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C534 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 868C540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C588 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868C594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C60C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 @ 868C618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C690 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868C69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868C6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C72C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C75C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868C7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C828 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 868C834 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 868C840 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 868C84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C93C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868C9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA50 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868CA5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868CA68 +voicegroup077:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup078.inc b/sound/voicegroups/voicegroup078.inc index 29fc345c8cdd..721b80430947 100644 --- a/sound/voicegroups/voicegroup078.inc +++ b/sound/voicegroups/voicegroup078.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup078:: @ 868CA74 - voice_keysplit_all voicegroup001 @ 868CA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CA98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CAF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868CB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CB88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868CB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CBF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 @ 868CC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC84 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 868CC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CC9C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868CCA8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868CCB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CCFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD38 - voice_keysplit voicegroup009, KeySplitTable5 @ 868CD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CDF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE28 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 868CE34 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 868CE40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 868CE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CF9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868CFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D050 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 868D05C - voice_noise_alt 60, 0, 0, 0, 2, 0, 2 @ 868D068 +voicegroup078:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 2 diff --git a/sound/voicegroups/voicegroup079.inc b/sound/voicegroups/voicegroup079.inc index 8aa13f41e829..7923d4d32d35 100644 --- a/sound/voicegroups/voicegroup079.inc +++ b/sound/voicegroups/voicegroup079.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup079:: @ 868D074 - voice_keysplit_all voicegroup001 @ 868D074 - voice_keysplit voicegroup005, KeySplitTable1 @ 868D080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0A4 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 1 @ 868D0B0 - voice_square_2_alt 60, 0, 0, 0, 1, 6, 2 @ 868D0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D110 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868D11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D134 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 868D140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868D194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D23C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 6, 2 @ 868D248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D284 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 868D290 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868D29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868D2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868D3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D428 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 @ 868D434 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 @ 868D440 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 868D44C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 5 @ 868D458 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 @ 868D464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D47C - voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 @ 868D488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D650 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868D65C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868D668 +voicegroup079:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup080.inc b/sound/voicegroups/voicegroup080.inc index 1d0a21b3266d..4db39381d495 100644 --- a/sound/voicegroups/voicegroup080.inc +++ b/sound/voicegroups/voicegroup080.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup080:: @ 868D674 - voice_keysplit_all voicegroup001 @ 868D674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D6F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D788 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868D794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D830 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868D83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D884 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 868D890 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868D89C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868D8A8 - voice_keysplit voicegroup006, KeySplitTable2 @ 868D8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D92C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D938 - voice_keysplit voicegroup009, KeySplitTable5 @ 868D944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D95C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868D9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868D9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA28 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 868DA34 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 868DA40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 868DA4C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 868DA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC50 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868DC5C - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868DC68 +voicegroup080:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup081.inc b/sound/voicegroups/voicegroup081.inc index 4ecddbf36db8..f47f89a8d401 100644 --- a/sound/voicegroups/voicegroup081.inc +++ b/sound/voicegroups/voicegroup081.inc @@ -1,5 +1,5 @@ .align 2 -voicegroup081:: @ 868DC74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DC74 - voice_keysplit voicegroup005, KeySplitTable1 @ 868DC80 +voicegroup081:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 diff --git a/sound/voicegroups/voicegroup082.inc b/sound/voicegroups/voicegroup082.inc index 0e3886eb1a35..676900e7f777 100644 --- a/sound/voicegroups/voicegroup082.inc +++ b/sound/voicegroups/voicegroup082.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup082:: @ 868DC8C - voice_keysplit_all voicegroup001 @ 868DC8C - voice_keysplit voicegroup005, KeySplitTable1 @ 868DC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DCF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD28 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868DD34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DD94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDA0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868DDAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DDF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DEA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DEB4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868DEC0 - voice_keysplit voicegroup006, KeySplitTable2 @ 868DECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF20 - voice_keysplit voicegroup007, KeySplitTable3 @ 868DF2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF50 - voice_keysplit voicegroup009, KeySplitTable5 @ 868DF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868DFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E040 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 @ 868E04C - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 @ 868E058 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868E064 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 @ 868E070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E16C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E22C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E268 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868E274 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868E280 +voicegroup082:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup083.inc b/sound/voicegroups/voicegroup083.inc index 4a7a6f942179..7a345fdb1b9a 100644 --- a/sound/voicegroups/voicegroup083.inc +++ b/sound/voicegroups/voicegroup083.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup083:: @ 868E28C - voice_keysplit_all voicegroup001 @ 868E28C - voice_keysplit voicegroup005, KeySplitTable1 @ 868E298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E2EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 @ 868E2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3A0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 868E3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E424 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868E430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E49C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 868E4A8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 868E4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E4C0 - voice_keysplit voicegroup006, KeySplitTable2 @ 868E4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E52C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E538 - voice_keysplit voicegroup008, KeySplitTable4 @ 868E544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E550 - voice_keysplit voicegroup009, KeySplitTable5 @ 868E55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E5EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 868E5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E640 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 868E64C - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 @ 868E658 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 6, 4 @ 868E664 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 @ 868E670 +voicegroup083:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 6, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup084.inc b/sound/voicegroups/voicegroup084.inc index ea44d4722e6a..8b30d812556a 100644 --- a/sound/voicegroups/voicegroup084.inc +++ b/sound/voicegroups/voicegroup084.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup084:: @ 868E67C - voice_keysplit_all voicegroup001 @ 868E67C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E718 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868E724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E76C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E790 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868E79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E82C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E85C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E898 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868E8A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868E8B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 868E8BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E8C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E940 - voice_keysplit voicegroup009, KeySplitTable5 @ 868E94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868E9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868E9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA30 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 0 @ 868EA3C - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 868EA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA84 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 868EA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868EC64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868EC70 +voicegroup084:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup085.inc b/sound/voicegroups/voicegroup085.inc index fee99d5fc755..0cd2dcc2f72b 100644 --- a/sound/voicegroups/voicegroup085.inc +++ b/sound/voicegroups/voicegroup085.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup085:: @ 868EC7C - voice_keysplit_all voicegroup001 @ 868EC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ECF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868ED90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868ED9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EDFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EE98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868EEA4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868EEB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EEBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF10 - voice_keysplit voicegroup007, KeySplitTable3 @ 868EF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868EFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868EFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F00C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F030 - voice_square_1_alt 60, 0, 0, 2, 1, 2, 4, 0 @ 868F03C - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 868F048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F054 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 868F060 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 13, 1 @ 868F06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F12C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F1F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F24C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F258 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868F264 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868F270 +voicegroup085:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 13, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup086.inc b/sound/voicegroups/voicegroup086.inc index 88e475777621..57069bf8afaf 100644 --- a/sound/voicegroups/voicegroup086.inc +++ b/sound/voicegroups/voicegroup086.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup086:: @ 868F27C - voice_keysplit_all voicegroup001 @ 868F27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F318 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868F324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F33C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 868F348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F390 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 868F39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F414 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 868F420 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 868F42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F498 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 868F4A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 868F4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F4F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F510 - voice_keysplit voicegroup007, KeySplitTable3 @ 868F51C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F540 - voice_keysplit voicegroup009, KeySplitTable5 @ 868F54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 868F5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F60C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F630 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 @ 868F63C - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 868F648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F654 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 868F660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F72C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F75C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F858 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868F864 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868F870 +voicegroup086:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup087.inc b/sound/voicegroups/voicegroup087.inc index f71016d5d144..59e24b7cce17 100644 --- a/sound/voicegroups/voicegroup087.inc +++ b/sound/voicegroups/voicegroup087.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup087:: @ 868F87C - voice_keysplit_all voicegroup001 @ 868F87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F93C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9CC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 868F9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868F9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA20 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 868FA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 868FA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FA98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAA4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 868FAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FAF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB10 - voice_keysplit voicegroup007, KeySplitTable3 @ 868FB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB40 - voice_keysplit voicegroup009, KeySplitTable5 @ 868FB4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FBF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC30 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 868FC3C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 868FC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 868FC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FCFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FDF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 868FE64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 868FE70 +voicegroup087:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup088.inc b/sound/voicegroups/voicegroup088.inc index 6b0ecee9823a..77fe56d2d8ae 100644 --- a/sound/voicegroups/voicegroup088.inc +++ b/sound/voicegroups/voicegroup088.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup088:: @ 868FE7C - voice_keysplit_all voicegroup001 @ 868FE7C - voice_keysplit voicegroup005, KeySplitTable1 @ 868FE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FEA0 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 @ 868FEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FEB8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 868FEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 868FF24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FF9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 868FFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869002C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869005C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869008C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690098 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 86900A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 @ 86900B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86900BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86900C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86900D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86900E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86900EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86900F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690110 - voice_keysplit voicegroup007, KeySplitTable3 @ 869011C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690128 - voice_keysplit voicegroup008, KeySplitTable4 @ 8690134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690140 - voice_keysplit voicegroup009, KeySplitTable5 @ 869014C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869017C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86901E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86901F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869020C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690230 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 @ 869023C - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 @ 8690248 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8690254 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8690260 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 @ 869026C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690284 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 @ 8690290 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 @ 869029C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86902FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869032C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869035C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869038C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86903F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869041C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869044C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690464 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8690470 +voicegroup088:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup089.inc b/sound/voicegroups/voicegroup089.inc index 82e565444981..531e5f543a30 100644 --- a/sound/voicegroups/voicegroup089.inc +++ b/sound/voicegroups/voicegroup089.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup089:: @ 869047C - voice_keysplit_all voicegroup001 @ 869047C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86904F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869050C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690518 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8690524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869053C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869056C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869059C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86905FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869062C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869065C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869068C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86906BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86906F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869071C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690740 - voice_keysplit voicegroup009, KeySplitTable5 @ 869074C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869077C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86907E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86907F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869080C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690830 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 3 @ 869083C - voice_square_2_alt 60, 0, 2, 0, 2, 4, 0 @ 8690848 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 8690854 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 8690860 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 869086C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869089C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86908FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869092C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869095C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869098C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86909F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8690A64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8690A70 +voicegroup089:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup090.inc b/sound/voicegroups/voicegroup090.inc index 68499a86b8fd..dd3301845f55 100644 --- a/sound/voicegroups/voicegroup090.inc +++ b/sound/voicegroups/voicegroup090.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup090:: @ 8690A7C - voice_keysplit_all voicegroup001 @ 8690A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E30 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 4, 1 @ 8690E3C - voice_square_2_alt 60, 0, 0, 0, 2, 4, 1 @ 8690E48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8690E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8690FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869101C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869104C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691058 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8691064 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8691070 +voicegroup090:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup091.inc b/sound/voicegroups/voicegroup091.inc index 399735e84695..59230282e56b 100644 --- a/sound/voicegroups/voicegroup091.inc +++ b/sound/voicegroups/voicegroup091.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup091:: @ 869107C - voice_keysplit_all voicegroup001 @ 869107C - voice_keysplit voicegroup005, KeySplitTable1 @ 8691088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 @ 86910E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86910F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869110C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8691118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869113C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 @ 8691148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869116C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691190 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 869119C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86911FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691214 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8691220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869122C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869125C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869128C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 @ 8691298 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 86912A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86912BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86912F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869131C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691328 - voice_keysplit voicegroup008, KeySplitTable4 @ 8691334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691340 - voice_keysplit voicegroup009, KeySplitTable5 @ 869134C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869137C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86913E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86913F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869140C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691430 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 5, 2 @ 869143C - voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 @ 8691448 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 @ 8691454 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 @ 8691460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869146C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869149C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86914FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869152C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869155C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869158C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86915F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869161C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869164C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691658 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8691664 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8691670 +voicegroup091:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 5, 2 + voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup092.inc b/sound/voicegroups/voicegroup092.inc index 2bafc4853d3e..0fff2f1214e1 100644 --- a/sound/voicegroups/voicegroup092.inc +++ b/sound/voicegroups/voicegroup092.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup092:: @ 869167C - voice_keysplit_all voicegroup001 @ 869167C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86916F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869170C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8691718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869173C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869176C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691790 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 869179C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86917FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869182C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691838 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8691844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869185C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869188C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691898 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 86918A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86918F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869191C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869194C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869197C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86919F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A30 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8691A3C - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 @ 8691A48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 7, 0 @ 8691A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8691C64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8691C70 +voicegroup092:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup093.inc b/sound/voicegroups/voicegroup093.inc index 35fd8ccf57ae..2d1b721dafc5 100644 --- a/sound/voicegroups/voicegroup093.inc +++ b/sound/voicegroups/voicegroup093.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup093:: @ 8691C7C - voice_keysplit_all voicegroup001 @ 8691C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8691D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691D90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 8691D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E20 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 8691E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8691E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691E98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 8691EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691EB0 - voice_keysplit voicegroup006, KeySplitTable2 @ 8691EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F28 - voice_keysplit voicegroup008, KeySplitTable4 @ 8691F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F40 - voice_keysplit voicegroup009, KeySplitTable5 @ 8691F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8691FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8691FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869200C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692030 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 869203C - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8692048 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 @ 8692054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869206C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869209C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86920FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869212C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869215C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869218C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86921F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869221C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869224C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692258 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8692264 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8692270 +voicegroup093:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup094.inc b/sound/voicegroups/voicegroup094.inc index 92f5d1f3d606..72bc1098c48e 100644 --- a/sound/voicegroups/voicegroup094.inc +++ b/sound/voicegroups/voicegroup094.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup094:: @ 869227C - voice_keysplit_all voicegroup001 @ 869227C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 @ 86922E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86922F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869230C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8692318 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8692324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869233C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8692348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869236C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 8692378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692390 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 869239C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86923FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869242C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869245C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869248C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86924B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86924BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86924F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692510 - voice_keysplit voicegroup007, KeySplitTable3 @ 869251C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692540 - voice_keysplit voicegroup009, KeySplitTable5 @ 869254C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869257C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86925E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86925F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869260C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692630 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 869263C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8692648 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 7, 0 @ 8692654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869266C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869269C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86926FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869272C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869275C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869278C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86927F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869281C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869284C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692858 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8692864 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8692870 +voicegroup094:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup095.inc b/sound/voicegroups/voicegroup095.inc index feec67d53d1a..83afb58b136b 100644 --- a/sound/voicegroups/voicegroup095.inc +++ b/sound/voicegroups/voicegroup095.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup095:: @ 869287C - voice_keysplit_all voicegroup001 @ 869287C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86928F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869290C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869293C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8692948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869296C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692990 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 869299C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86929FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8692A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 8692BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C30 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 @ 8692C3C - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8692C48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 @ 8692C54 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8692C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8692E64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8692E70 +voicegroup095:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup096.inc b/sound/voicegroups/voicegroup096.inc index 495b5b2f549e..bf0bd6badb53 100644 --- a/sound/voicegroups/voicegroup096.inc +++ b/sound/voicegroups/voicegroup096.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup096:: @ 8692E7C - voice_keysplit_all voicegroup001 @ 8692E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8692F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F3C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8692F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692F90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8692F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8692FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693020 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 869302C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693038 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8693044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869305C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869308C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86930B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86930F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693110 - voice_keysplit voicegroup007, KeySplitTable3 @ 869311C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869314C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869317C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86931F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869320C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869323C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8693248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693254 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8693260 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 869326C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869329C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86932FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869332C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869335C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869338C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86933F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869341C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869344C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693458 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8693464 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8693470 +voicegroup096:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup097.inc b/sound/voicegroups/voicegroup097.inc index dfb094bc76f7..8c4cea3b7b4b 100644 --- a/sound/voicegroups/voicegroup097.inc +++ b/sound/voicegroups/voicegroup097.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup097:: @ 869347C - voice_keysplit_all voicegroup001 @ 869347C - voice_keysplit voicegroup005, KeySplitTable1 @ 8693488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86934F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869350C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693518 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8693524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869353C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869356C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869359C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86935FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869362C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869365C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869368C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 249 @ 86936B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86936F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869371C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693728 - voice_keysplit voicegroup008, KeySplitTable4 @ 8693734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693740 - voice_keysplit voicegroup009, KeySplitTable5 @ 869374C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869377C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86937F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869380C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693830 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 869383C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8693848 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 @ 8693854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869386C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869389C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86938FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869392C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869395C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869398C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86939F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8693A64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8693A70 +voicegroup097:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup098.inc b/sound/voicegroups/voicegroup098.inc index 4814b93d013b..e49d32b42753 100644 --- a/sound/voicegroups/voicegroup098.inc +++ b/sound/voicegroups/voicegroup098.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup098:: @ 8693A7C - voice_keysplit_all voicegroup001 @ 8693A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D10 - voice_keysplit voicegroup007, KeySplitTable3 @ 8693D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D28 - voice_keysplit voicegroup008, KeySplitTable4 @ 8693D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 8693DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E30 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 @ 8693E3C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 @ 8693E48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 @ 8693E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8693FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869401C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869404C - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 @ 8694058 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 8694064 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8694070 +voicegroup098:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup099.inc b/sound/voicegroups/voicegroup099.inc index 87793e90e43d..60b93f615637 100644 --- a/sound/voicegroups/voicegroup099.inc +++ b/sound/voicegroups/voicegroup099.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup099:: @ 869407C - voice_keysplit_all voicegroup001 @ 869407C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86940F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869410C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8694118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869413C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869416C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869419C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86941FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694220 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 869422C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694238 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8694244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869425C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869428C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86942F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694310 - voice_keysplit voicegroup007, KeySplitTable3 @ 869431C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869434C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869437C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86943F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869440C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694430 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 @ 869443C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 @ 8694448 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 @ 8694454 - voice_square_1_alt 60, 0, 0, 1, 2, 1, 5, 0 @ 8694460 - voice_square_2_alt 60, 0, 1, 2, 1, 5, 0 @ 869446C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869449C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86944FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869452C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869455C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869458C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86945F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869461C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869464C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694658 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8694664 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8694670 +voicegroup099:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 1, 5, 0 + voice_square_2_alt 60, 0, 1, 2, 1, 5, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup100.inc b/sound/voicegroups/voicegroup100.inc index f39cc41ed9ff..f096a9d8a4e2 100644 --- a/sound/voicegroups/voicegroup100.inc +++ b/sound/voicegroups/voicegroup100.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup100:: @ 869467C - voice_keysplit_all voicegroup001 @ 869467C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86946F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869470C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8694718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869473C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8694748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869476C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694790 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 869479C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947CC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 86947D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86947FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694820 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 869482C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694838 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8694844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869485C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869488C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86948B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86948F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694910 - voice_keysplit voicegroup007, KeySplitTable3 @ 869491C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869494C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869497C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 86949E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86949F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A30 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8694A3C - voice_square_1_alt 60, 0, 0, 2, 1, 1, 4, 1 @ 8694A48 - voice_square_2_alt 60, 0, 2, 1, 1, 4, 1 @ 8694A54 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 @ 8694A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A6C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8694A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C58 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8694C64 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8694C70 +voicegroup100:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 1, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup101.inc b/sound/voicegroups/voicegroup101.inc index 1909e8ae3550..53f34ae29556 100644 --- a/sound/voicegroups/voicegroup101.inc +++ b/sound/voicegroups/voicegroup101.inc @@ -1,113 +1,113 @@ .align 2 -voicegroup101:: @ 8694C7C - voice_keysplit_all voicegroup001 @ 8694C7C - voice_keysplit voicegroup005, KeySplitTable1 @ 8694C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694CA0 - voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 @ 8694CAC - voice_square_2_alt 60, 0, 1, 1, 5, 2, 4 @ 8694CB8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8694CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8694D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694E98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8694EA4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 @ 8694EB0 - voice_keysplit voicegroup006, KeySplitTable2 @ 8694EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F10 - voice_keysplit voicegroup007, KeySplitTable3 @ 8694F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F28 - voice_keysplit voicegroup008, KeySplitTable4 @ 8694F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F40 - voice_keysplit voicegroup009, KeySplitTable5 @ 8694F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694FA0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 @ 8694FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8694FDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 8694FE8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8694FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869500C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695030 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 0 @ 869503C - voice_square_1_alt 60, 0, 0, 0, 0, 4, 6, 2 @ 8695048 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8695054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695060 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 @ 869506C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695078 - voice_square_2_alt 60, 0, 1, 1, 4, 6, 1 @ 8695084 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8695090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869509C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86950FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869512C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869515C - voice_square_2_alt 60, 0, 0, 1, 2, 4, 1 @ 8695168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869518C - voice_square_2_alt 60, 0, 0, 1, 1, 6, 1 @ 8695198 +voicegroup101:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 + voice_square_2_alt 60, 0, 1, 1, 5, 2, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 4, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 4, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 1, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup102.inc b/sound/voicegroups/voicegroup102.inc index 22aa8393a81e..2f1fbb667120 100644 --- a/sound/voicegroups/voicegroup102.inc +++ b/sound/voicegroups/voicegroup102.inc @@ -1,85 +1,85 @@ .align 2 -voicegroup102:: @ 86951A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86951F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869521C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869524C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869527C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952B8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 248 @ 86952C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86952F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869530C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869533C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869536C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869539C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 165 @ 86953CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86953FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869542C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869545C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869548C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86954F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869551C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869554C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695558 - voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 6 @ 8695564 - voice_square_2_alt 60, 0, 2, 0, 6, 0, 6 @ 8695570 +voicegroup102:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 248 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 6 + voice_square_2_alt 60, 0, 2, 0, 6, 0, 6 diff --git a/sound/voicegroups/voicegroup103.inc b/sound/voicegroups/voicegroup103.inc index 62780a9abba2..784b39ee2298 100644 --- a/sound/voicegroups/voicegroup103.inc +++ b/sound/voicegroups/voicegroup103.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup103:: @ 869557C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869557C - voice_keysplit_all voicegroup002 @ 8695588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86955F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869560C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695618 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8695624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869563C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869566C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695690 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 869569C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86956FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869572C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869575C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869578C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695798 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 86957A4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 @ 86957B0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86957BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86957C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86957D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86957E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86957EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86957F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695810 - voice_keysplit voicegroup007, KeySplitTable3 @ 869581C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695840 - voice_keysplit voicegroup009, KeySplitTable5 @ 869584C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869587C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86958F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869590C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695930 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 @ 869593C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695954 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8695960 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 @ 869596C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695984 - voice_square_2_alt 60, 0, 1, 0, 0, 10, 1 @ 8695990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869599C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959C0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 86959CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86959FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B64 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 @ 8695B70 +voicegroup103:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup104.inc b/sound/voicegroups/voicegroup104.inc index b13ff6594068..bd5991463551 100644 --- a/sound/voicegroups/voicegroup104.inc +++ b/sound/voicegroups/voicegroup104.inc @@ -1,111 +1,111 @@ .align 2 -voicegroup104:: @ 8695B7C - voice_keysplit_all voicegroup003 @ 8695B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695B94 - voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_high, 255, 0, 206, 242 @ 8695BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695D98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8695DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F0C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_shakuhachi, 255, 0, 255, 204 @ 8695F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F30 - voice_square_1_alt 60, 0, 0, 1, 2, 0, 12, 5 @ 8695F3C - voice_square_2_alt 60, 0, 0, 0, 0, 10, 4 @ 8695F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 15, 0 @ 8695F60 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 8695F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F84 - voice_square_2_alt 60, 0, 1, 2, 0, 12, 5 @ 8695F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FC0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 @ 8695FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8695FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869602C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869605C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696074 - voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_low, 255, 0, 206, 242 @ 8696080 +voicegroup104:: + voice_keysplit_all voicegroup003 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_high, 255, 0, 206, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_shakuhachi, 255, 0, 255, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 0, 12, 5 + voice_square_2_alt 60, 0, 0, 0, 0, 10, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 2, 0, 12, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_low, 255, 0, 206, 242 diff --git a/sound/voicegroups/voicegroup105.inc b/sound/voicegroups/voicegroup105.inc index 5acba78cc448..335529417819 100644 --- a/sound/voicegroups/voicegroup105.inc +++ b/sound/voicegroups/voicegroup105.inc @@ -1,86 +1,86 @@ .align 2 -voicegroup105:: @ 869608C - voice_keysplit_all voicegroup002 @ 869608C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86960F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869611C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 @ 8696128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869614C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869617C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86961F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869620C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869623C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869626C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869629C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86962FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869632C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869635C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869638C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86963F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869641C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696440 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 4 @ 869644C - voice_square_2_alt 60, 0, 2, 0, 2, 9, 4 @ 8696458 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 8696464 +voicegroup105:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup106.inc b/sound/voicegroups/voicegroup106.inc index 267921b62e38..b20862853f3d 100644 --- a/sound/voicegroups/voicegroup106.inc +++ b/sound/voicegroups/voicegroup106.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup106:: @ 8696470 - voice_keysplit_all voicegroup002 @ 8696470 - voice_keysplit voicegroup005, KeySplitTable1 @ 869647C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964AC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86964B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86964F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869650C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8696518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696530 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 38, 128, 226 @ 869653C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869656C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696584 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 8696590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869659C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965C0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86965CC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86965D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86965FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869662C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8696638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869665C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869668C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8696698 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 86966A4 - voice_keysplit voicegroup006, KeySplitTable2 @ 86966B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86966F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696704 - voice_keysplit voicegroup007, KeySplitTable3 @ 8696710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869671C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696734 - voice_keysplit voicegroup009, KeySplitTable5 @ 8696740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869674C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 8696758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869677C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86967DC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 86967E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86967F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869680C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696824 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8696830 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 869683C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8696848 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8696854 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 @ 8696860 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 869686C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8696878 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 8696884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869689C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86968FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869692C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869695C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869698C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86969F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A58 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8696A64 +voicegroup106:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 38, 128, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup107.inc b/sound/voicegroups/voicegroup107.inc index 527e2397103d..45f1cfdc9fa6 100644 --- a/sound/voicegroups/voicegroup107.inc +++ b/sound/voicegroups/voicegroup107.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup107:: @ 8696A70 - voice_keysplit_all voicegroup002 @ 8696A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AAC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8696AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8696B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B84 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 8696B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696C8C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8696C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CA4 - voice_keysplit voicegroup006, KeySplitTable2 @ 8696CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CE0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 8696CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D34 - voice_keysplit voicegroup009, KeySplitTable5 @ 8696D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DDC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 8696DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E24 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 8696E30 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 8696E3C - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 8696E48 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 8696E54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 @ 8696E60 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 @ 8696E6C - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 @ 8696E78 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 8696E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8696FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869701C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869704C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697058 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8697064 +voicegroup107:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup108.inc b/sound/voicegroups/voicegroup108.inc index d6bd6cf1f90e..1821dd6a1e91 100644 --- a/sound/voicegroups/voicegroup108.inc +++ b/sound/voicegroups/voicegroup108.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup108:: @ 8697070 - voice_keysplit_all voicegroup004 @ 8697070 - voice_keysplit voicegroup005, KeySplitTable1 @ 869707C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970DC - voice_directsound 60, 0, DirectSoundWaveData_heart_of_asia_gamelan, 255, 188, 139, 239 @ 86970E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86970F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869710C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869713C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869716C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697184 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 @ 8697190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869719C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86971FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697208 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8697214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869722C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869725C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869728C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8697298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86972F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869731C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869734C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869737C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86973F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869740C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697424 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 13, 4 @ 8697430 - voice_square_2_alt 60, 0, 0, 0, 0, 9, 2 @ 869743C - voice_square_2_alt 60, 0, 1, 0, 0, 7, 1 @ 8697448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697454 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 1 @ 8697460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869746C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697478 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 0, 15, 0 @ 8697484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869749C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974B4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 86974C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86974FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869752C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869755C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869758C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86975F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869761C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869764C - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 8697658 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 8697664 +voicegroup108:: + voice_keysplit_all voicegroup004 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_heart_of_asia_gamelan, 255, 188, 139, 239 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 13, 4 + voice_square_2_alt 60, 0, 0, 0, 0, 9, 2 + voice_square_2_alt 60, 0, 1, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup109.inc b/sound/voicegroups/voicegroup109.inc index 8dd614217539..984367a4e91b 100644 --- a/sound/voicegroups/voicegroup109.inc +++ b/sound/voicegroups/voicegroup109.inc @@ -1,86 +1,86 @@ .align 2 -voicegroup109:: @ 8697670 - voice_keysplit_all voicegroup004 @ 8697670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869767C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86976F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869770C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869773C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697748 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_low, 255, 76, 154, 188 @ 8697754 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_high, 255, 76, 154, 188 @ 8697760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869776C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869779C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86977FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697808 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8697814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869782C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869785C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869788C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86978F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869791C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869794C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869797C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86979F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A24 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 13, 1 @ 8697A30 - voice_square_2_alt 60, 0, 0, 0, 0, 12, 1 @ 8697A3C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 8697A48 +voicegroup109:: + voice_keysplit_all voicegroup004 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_low, 255, 76, 154, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_high, 255, 76, 154, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 13, 1 + voice_square_2_alt 60, 0, 0, 0, 0, 12, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup110.inc b/sound/voicegroups/voicegroup110.inc index f29928c5fcc4..dcd51d9eb153 100644 --- a/sound/voicegroups/voicegroup110.inc +++ b/sound/voicegroups/voicegroup110.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup110:: @ 8697A54 - voice_keysplit_all voicegroup002 @ 8697A54 - voice_keysplit voicegroup005, KeySplitTable1 @ 8697A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697AF0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8697AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697C70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8697C7C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 @ 8697C88 - voice_keysplit voicegroup006, KeySplitTable2 @ 8697C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697CE8 - voice_keysplit voicegroup007, KeySplitTable3 @ 8697CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D18 - voice_keysplit voicegroup009, KeySplitTable5 @ 8697D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E08 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 @ 8697E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E2C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8697E38 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 @ 8697E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E5C - voice_square_2_alt 60, 0, 3, 0, 0, 10, 1 @ 8697E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697E98 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 8697EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8697FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869800C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869803C - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 @ 8698048 +voicegroup110:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup111.inc b/sound/voicegroups/voicegroup111.inc index f4bf65fdca93..f05cda80697b 100644 --- a/sound/voicegroups/voicegroup111.inc +++ b/sound/voicegroups/voicegroup111.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup111:: @ 8698054 - voice_keysplit_all voicegroup002 @ 8698054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869806C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869809C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86980FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698114 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 8698120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869812C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869815C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869818C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86981A4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 226 @ 86981B0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 195 @ 86981BC - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 195 @ 86981C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86981D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86981E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86981EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86981F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869821C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869824C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869827C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86982F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869830C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698330 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 195 @ 869833C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869836C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869839C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86983FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698408 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 @ 8698414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869842C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 8698438 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 @ 8698444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869845C - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @ 8698468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869848C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698498 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 86984A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86984F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869851C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869854C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869857C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86985F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869860C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698630 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 869863C - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 @ 8698648 +voicegroup111:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 226 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 195 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup112.inc b/sound/voicegroups/voicegroup112.inc index 1bafa809f67f..bd58c332d750 100644 --- a/sound/voicegroups/voicegroup112.inc +++ b/sound/voicegroups/voicegroup112.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup112:: @ 8698654 - voice_keysplit_all voicegroup003 @ 8698654 - voice_keysplit voicegroup005, KeySplitTable1 @ 8698660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869866C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698678 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 @ 8698684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869869C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86986F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86986FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698714 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 8698720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869872C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869875C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698768 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 @ 8698774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869878C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86987EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86987F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698810 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 252, 0, 115 @ 869881C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869884C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698870 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 869887C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698888 - voice_keysplit voicegroup006, KeySplitTable2 @ 8698894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86988A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86988AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86988B8 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 128, 165, 128, 188 @ 86988C4 - voice_directsound 60, 0, DirectSoundWaveData_unknown_female_voice, 128, 165, 128, 204 @ 86988D0 - voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_male_voice, 128, 165, 128, 188 @ 86988DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86988E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86988F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869890C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698918 - voice_keysplit voicegroup009, KeySplitTable5 @ 8698924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869893C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869896C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869899C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86989FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A08 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 0 @ 8698A14 - voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 @ 8698A20 - voice_square_2_alt 60, 0, 3, 0, 0, 6, 0 @ 8698A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698C30 - voice_noise_alt 60, 0, 0, 0, 7, 10, 1 @ 8698C3C - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 @ 8698C48 +voicegroup112:: + voice_keysplit_all voicegroup003 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 128, 165, 128, 188 + voice_directsound 60, 0, DirectSoundWaveData_unknown_female_voice, 128, 165, 128, 204 + voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_male_voice, 128, 165, 128, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 7, 10, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup113.inc b/sound/voicegroups/voicegroup113.inc index d70870112b1c..309f1f39eb53 100644 --- a/sound/voicegroups/voicegroup113.inc +++ b/sound/voicegroups/voicegroup113.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup113:: @ 8698C54 - voice_keysplit_all voicegroup002 @ 8698C54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4990, 0, 7, 15, 1 @ 8698C60 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49B0, 0, 7, 15, 1 @ 8698C6C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49A0, 0, 7, 15, 1 @ 8698C78 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 @ 8698C84 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4980, 0, 7, 15, 1 @ 8698C90 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48B0, 0, 7, 15, 1 @ 8698C9C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48C0, 0, 7, 15, 1 @ 8698CA8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48D0, 0, 7, 15, 1 @ 8698CB4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48E0, 0, 7, 15, 1 @ 8698CC0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48F0, 0, 7, 15, 1 @ 8698CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698CD8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 8698CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698CF0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 8698CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DA4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 195 @ 8698DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698DEC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 8698DF8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 8698E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 8698E1C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 1 @ 8698E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E7C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 @ 8698E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698EE8 - voice_keysplit voicegroup007, KeySplitTable3 @ 8698EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F18 - voice_keysplit voicegroup009, KeySplitTable5 @ 8698F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FB4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 @ 8698FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8698FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699008 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 7, 0 @ 8699014 - voice_square_2_alt 60, 0, 2, 0, 7, 7, 0 @ 8699020 - voice_square_2_alt 60, 0, 1, 0, 7, 7, 0 @ 869902C - voice_square_2_alt 60, 0, 0, 0, 7, 7, 0 @ 8699038 - voice_square_2_alt 60, 0, 3, 0, 7, 7, 0 @ 8699044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869905C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 @ 8699068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869908C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699098 - voice_square_1_alt 60, 0, 0, 1, 0, 7, 7, 0 @ 86990A4 - voice_square_1_alt 60, 0, 0, 0, 0, 7, 7, 0 @ 86990B0 - voice_square_1_alt 60, 0, 0, 3, 0, 7, 7, 0 @ 86990BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86990C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86990D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86990E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86990EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86990F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869911C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869914C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869917C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86991F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869920C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699230 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 869923C - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 @ 8699248 +voicegroup113:: + voice_keysplit_all voicegroup002 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4990, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49B0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49A0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4980, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48B0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48C0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48D0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48E0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48F0, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 1, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 0, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 3, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup114.inc b/sound/voicegroups/voicegroup114.inc index 1c2eaa98e296..03ac0cdcfedc 100644 --- a/sound/voicegroups/voicegroup114.inc +++ b/sound/voicegroups/voicegroup114.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup114:: @ 8699254 - voice_keysplit_all voicegroup001 @ 8699254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869926C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869929C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86992F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 86992FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869932C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869935C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869938C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 86993E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86993F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869941C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869944C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869947C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 8699488 - voice_keysplit voicegroup006, KeySplitTable2 @ 8699494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86994E8 - voice_keysplit voicegroup007, KeySplitTable3 @ 86994F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869950C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699518 - voice_keysplit voicegroup009, KeySplitTable5 @ 8699524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869953C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869956C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869959C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995B4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86995C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86995FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699608 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 8699614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699620 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869962C - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 @ 8699638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869965C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869968C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86996F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869971C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869974C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869977C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86997F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869980C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869983C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 8699848 +voicegroup114:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup115.inc b/sound/voicegroups/voicegroup115.inc index caa33623799e..bb9c4f4ba935 100644 --- a/sound/voicegroups/voicegroup115.inc +++ b/sound/voicegroups/voicegroup115.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup115:: @ 8699854 - voice_keysplit_all voicegroup002 @ 8699854 - voice_keysplit voicegroup005, KeySplitTable1 @ 8699860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869986C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699878 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 @ 8699884 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 @ 8699890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869989C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86998F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86998FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699914 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 8699920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869992C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869995C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699968 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 204 @ 8699974 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 8699980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869998C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86999A4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86999B0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 @ 86999BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86999C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86999D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 86999E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86999EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 198 @ 86999F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 146 @ 8699A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699A64 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 8699A70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 8699A7C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 8699A88 - voice_keysplit voicegroup006, KeySplitTable2 @ 8699A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699AE8 - voice_keysplit voicegroup007, KeySplitTable3 @ 8699AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B18 - voice_keysplit voicegroup009, KeySplitTable5 @ 8699B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B30 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 @ 8699B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699C08 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 @ 8699C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699C20 - voice_square_2_alt 60, 0, 0, 0, 1, 6, 0 @ 8699C2C - voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 @ 8699C38 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 8699C44 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 @ 8699C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699C5C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 @ 8699C68 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 8699C74 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 @ 8699C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699C98 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @ 8699CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699DE8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 8699DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E30 - voice_noise_alt 60, 0, 0, 0, 2, 6, 2 @ 8699E3C - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 8699E48 +voicegroup115:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 198 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 146 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 6, 0 + voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup116.inc b/sound/voicegroups/voicegroup116.inc index b9cbd5833419..028bbc32bd57 100644 --- a/sound/voicegroups/voicegroup116.inc +++ b/sound/voicegroups/voicegroup116.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup116:: @ 8699E54 - voice_keysplit_all voicegroup002 @ 8699E54 - voice_keysplit voicegroup005, KeySplitTable1 @ 8699E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E78 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @ 8699E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F14 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 @ 8699F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F44 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 8699F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F68 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 216 @ 8699F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699FA4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 8699FB0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 8699FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699FD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 8699FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 8699FF8 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 @ 869A004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A010 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 869A01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A04C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A088 - voice_keysplit voicegroup006, KeySplitTable2 @ 869A094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A0E8 - voice_keysplit voicegroup007, KeySplitTable3 @ 869A0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A118 - voice_keysplit voicegroup009, KeySplitTable5 @ 869A124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A130 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 869A13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A16C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A208 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 @ 869A214 - voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 @ 869A220 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 3, 6, 5 @ 869A22C - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 @ 869A238 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 0 @ 869A244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A25C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 869A268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A298 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @ 869A2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A430 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 869A43C - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 869A448 +voicegroup116:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 3, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup117.inc b/sound/voicegroups/voicegroup117.inc index 014153021025..a149f727fa90 100644 --- a/sound/voicegroups/voicegroup117.inc +++ b/sound/voicegroups/voicegroup117.inc @@ -1,85 +1,85 @@ .align 2 -voicegroup117:: @ 869A454 - voice_keysplit_all voicegroup001 @ 869A454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A478 - voice_square_2 60, 0, 2, 0, 1, 1, 1 @ 869A484 - voice_square_1 60, 0, 0, 2, 0, 1, 1, 1 @ 869A490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A52C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869A5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A64C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A670 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 869A67C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869A688 - voice_keysplit voicegroup006, KeySplitTable2 @ 869A694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A6E8 - voice_keysplit voicegroup007, KeySplitTable3 @ 869A6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A700 - voice_keysplit voicegroup008, KeySplitTable4 @ 869A70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A718 - voice_keysplit voicegroup009, KeySplitTable5 @ 869A724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A76C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A808 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869A814 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869A820 +voicegroup117:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 1, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 1, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup118.inc b/sound/voicegroups/voicegroup118.inc index 1675cf1ee7d7..a4d62633090e 100644 --- a/sound/voicegroups/voicegroup118.inc +++ b/sound/voicegroups/voicegroup118.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup118:: @ 869A82C - voice_keysplit_all voicegroup001 @ 869A82C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A850 - voice_square_2 60, 0, 0, 0, 1, 7, 1 @ 869A85C - voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 @ 869A868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8C8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 250, 0, 242 @ 869A8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A8EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 869A8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A91C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 869A928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869A9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869A9E8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 869A9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA48 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 869AA54 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869AA60 - voice_keysplit voicegroup006, KeySplitTable2 @ 869AA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AAD8 - voice_keysplit voicegroup008, KeySplitTable4 @ 869AAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AAF0 - voice_keysplit voicegroup009, KeySplitTable5 @ 869AAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ABE0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 869ABEC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869ABF8 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 869AC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC10 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 @ 869AC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC58 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 @ 869AC64 +voicegroup118:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 250, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 diff --git a/sound/voicegroups/voicegroup119.inc b/sound/voicegroups/voicegroup119.inc index 0bba5d48b365..91051a672935 100644 --- a/sound/voicegroups/voicegroup119.inc +++ b/sound/voicegroups/voicegroup119.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup119:: @ 869AC70 - voice_keysplit_all voicegroup001 @ 869AC70 - voice_keysplit voicegroup005, KeySplitTable1 @ 869AC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AC94 - voice_square_2 60, 0, 0, 0, 2, 4, 1 @ 869ACA0 - voice_square_1 60, 0, 0, 0, 0, 2, 4, 1 @ 869ACAC - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869ACB8 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869ACC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ACD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ACDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ACE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ACF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD30 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 869AD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869ADF0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869ADFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AE8C - voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_timpani_with_snare, 255, 246, 0, 226 @ 869AE98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869AEA4 - voice_keysplit voicegroup006, KeySplitTable2 @ 869AEB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AEBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF04 - voice_keysplit voicegroup007, KeySplitTable3 @ 869AF10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF34 - voice_keysplit voicegroup009, KeySplitTable5 @ 869AF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869AFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B00C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B024 - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 869B030 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 @ 869B03C - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 869B048 - voice_square_2 60, 0, 1, 0, 1, 9, 1 @ 869B054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B09C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 869B0A8 +voicegroup119:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 0, 0, 2, 4, 1 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_timpani_with_snare, 255, 246, 0, 226 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 1, 0, 1, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup120.inc b/sound/voicegroups/voicegroup120.inc index eb1bb463ba06..5c65be3382f1 100644 --- a/sound/voicegroups/voicegroup120.inc +++ b/sound/voicegroups/voicegroup120.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup120:: @ 869B0B4 - voice_keysplit_all voicegroup001 @ 869B0B4 - voice_keysplit voicegroup005, KeySplitTable1 @ 869B0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B0D8 - voice_square_2 60, 0, 2, 0, 2, 6, 1 @ 869B0E4 - voice_square_1 60, 0, 0, 2, 0, 2, 6, 1 @ 869B0F0 - voice_square_2 60, 0, 3, 0, 2, 4, 1 @ 869B0FC - voice_square_1 60, 0, 0, 3, 0, 2, 4, 1 @ 869B108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B12C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B1F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B234 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869B240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B24C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B2C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 869B2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B2DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869B2E8 - voice_keysplit voicegroup006, KeySplitTable2 @ 869B2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B348 - voice_keysplit voicegroup007, KeySplitTable3 @ 869B354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B378 - voice_keysplit voicegroup009, KeySplitTable5 @ 869B384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B468 - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 869B474 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869B480 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 869B48C - voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 @ 869B498 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869B4A4 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869B4B0 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 @ 869B4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B4E0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 869B4EC +voicegroup120:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 2, 6, 1 + voice_square_2 60, 0, 3, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup121.inc b/sound/voicegroups/voicegroup121.inc index eca6ff4b6c28..d50d9eea3dcb 100644 --- a/sound/voicegroups/voicegroup121.inc +++ b/sound/voicegroups/voicegroup121.inc @@ -1,89 +1,89 @@ .align 2 -voicegroup121:: @ 869B4F8 - voice_keysplit_all voicegroup001 @ 869B4F8 - voice_keysplit voicegroup005, KeySplitTable1 @ 869B504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B51C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B60C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B678 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869B684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B708 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 869B714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B720 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869B72C - voice_keysplit voicegroup006, KeySplitTable2 @ 869B738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B75C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B78C - voice_keysplit voicegroup007, KeySplitTable3 @ 869B798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7BC - voice_keysplit voicegroup009, KeySplitTable5 @ 869B7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B858 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 869B864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B8AC - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 869B8B8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 @ 869B8C4 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 869B8D0 - voice_square_2 60, 0, 0, 0, 1, 7, 1 @ 869B8DC - voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 @ 869B8E8 - voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 @ 869B8F4 +voicegroup121:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup122.inc b/sound/voicegroups/voicegroup122.inc index 45c052cf18ae..a2241b6d217b 100644 --- a/sound/voicegroups/voicegroup122.inc +++ b/sound/voicegroups/voicegroup122.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup122:: @ 869B900 - voice_keysplit_all voicegroup001 @ 869B900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B924 - voice_square_2 60, 0, 1, 0, 1, 6, 1 @ 869B930 - voice_square_1 60, 0, 0, 1, 0, 1, 6, 1 @ 869B93C - voice_square_2 60, 0, 2, 0, 1, 6, 1 @ 869B948 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 1 @ 869B954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869B9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BA98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAA4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 869BAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BAF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 869BB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB28 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869BB34 - voice_keysplit voicegroup006, KeySplitTable2 @ 869BB40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BB94 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 @ 869BBA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBC4 - voice_keysplit voicegroup009, KeySplitTable5 @ 869BBD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BBF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BCA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BCB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BCC0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869BCCC - voice_square_1 60, 0, 0, 3, 0, 1, 9, 1 @ 869BCD8 - voice_square_1 60, 0, 0, 3, 0, 0, 9, 1 @ 869BCE4 +voicegroup122:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 1, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 1, 0, 1, 6, 1 + voice_square_2 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 9, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 9, 1 diff --git a/sound/voicegroups/voicegroup123.inc b/sound/voicegroups/voicegroup123.inc index ab048cac0726..cb2e39045c7e 100644 --- a/sound/voicegroups/voicegroup123.inc +++ b/sound/voicegroups/voicegroup123.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup123:: @ 869BCF0 - voice_keysplit_all voicegroup001 @ 869BCF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BCFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BD8C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 @ 869BD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BDF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869BE7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869BF24 - voice_keysplit voicegroup006, KeySplitTable2 @ 869BF30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF84 - voice_keysplit voicegroup007, KeySplitTable3 @ 869BF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BF9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFB4 - voice_keysplit voicegroup009, KeySplitTable5 @ 869BFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869BFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C050 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 869C05C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C0A4 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869C0B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C0BC - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869C0C8 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 @ 869C0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C23C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C2D8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 869C2E4 +voicegroup123:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup124.inc b/sound/voicegroups/voicegroup124.inc index 630ab4a15883..c7f9c475a38c 100644 --- a/sound/voicegroups/voicegroup124.inc +++ b/sound/voicegroups/voicegroup124.inc @@ -1,90 +1,90 @@ .align 2 -voicegroup124:: @ 869C2F0 - voice_keysplit_all voicegroup001 @ 869C2F0 - voice_keysplit voicegroup005, KeySplitTable1 @ 869C2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C314 - voice_square_2 60, 0, 2, 0, 2, 3, 1 @ 869C320 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 @ 869C32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C44C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C470 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 869C47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C50C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 869C518 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869C524 - voice_keysplit voicegroup006, KeySplitTable2 @ 869C530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C584 - voice_keysplit voicegroup007, KeySplitTable3 @ 869C590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5B4 - voice_keysplit voicegroup009, KeySplitTable5 @ 869C5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C65C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C6A4 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869C6B0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869C6BC - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869C6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C6D4 - voice_square_2 60, 0, 2, 0, 1, 7, 1 @ 869C6E0 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 @ 869C6EC - voice_square_2 60, 0, 3, 0, 2, 7, 1 @ 869C6F8 +voicegroup124:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 3, 0, 2, 7, 1 diff --git a/sound/voicegroups/voicegroup125.inc b/sound/voicegroups/voicegroup125.inc index 17a72153e6db..e5f2ddf3eb1e 100644 --- a/sound/voicegroups/voicegroup125.inc +++ b/sound/voicegroups/voicegroup125.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup125:: @ 869C704 - voice_keysplit_all voicegroup001 @ 869C704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C728 - voice_square_2 60, 0, 2, 0, 2, 3, 1 @ 869C734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C89C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 869C8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C92C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869C938 - voice_keysplit voicegroup006, KeySplitTable2 @ 869C944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C95C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C998 - voice_keysplit voicegroup007, KeySplitTable3 @ 869C9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9C8 - voice_keysplit voicegroup009, KeySplitTable5 @ 869C9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869C9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CAB8 - voice_square_2 60, 0, 3, 0, 1, 7, 1 @ 869CAC4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869CAD0 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 @ 869CADC - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 @ 869CAE8 +voicegroup125:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup126.inc b/sound/voicegroups/voicegroup126.inc index f169edb80374..53ff6eb193fb 100644 --- a/sound/voicegroups/voicegroup126.inc +++ b/sound/voicegroups/voicegroup126.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup126:: @ 869CAF4 - voice_keysplit_all voicegroup001 @ 869CAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB18 - voice_square_2 60, 0, 0, 1, 1, 7, 1 @ 869CB24 - voice_square_1 60, 0, 0, 0, 1, 1, 7, 1 @ 869CB30 - voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 @ 869CB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC74 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 @ 869CC80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CCF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD1C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869CD28 - voice_keysplit voicegroup006, KeySplitTable2 @ 869CD34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CD88 - voice_keysplit voicegroup007, KeySplitTable3 @ 869CD94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDB8 - voice_keysplit voicegroup009, KeySplitTable5 @ 869CDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CDF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CEA8 - voice_square_2 60, 0, 3, 1, 1, 6, 1 @ 869CEB4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 @ 869CEC0 - voice_square_1 60, 0, 0, 3, 1, 1, 6, 1 @ 869CECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869CFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D04C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D0D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 216 @ 869D0DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 @ 869D0E8 +voicegroup126:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 1, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 1, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 1, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 1, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 216 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup127.inc b/sound/voicegroups/voicegroup127.inc index ee83df628383..c812157da46a 100644 --- a/sound/voicegroups/voicegroup127.inc +++ b/sound/voicegroups/voicegroup127.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup127:: @ 869D0F4 - voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 249, 103, 165 @ 869D0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D118 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 @ 869D124 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 0, 1 @ 869D130 - voice_square_1_alt 60, 0, 0, 2, 0, 4, 0, 1 @ 869D13C - voice_square_1_alt 60, 0, 44, 2, 0, 4, 0, 0 @ 869D148 - voice_square_1_alt 60, 0, 38, 0, 0, 4, 0, 0 @ 869D154 - voice_square_1_alt 60, 0, 0, 0, 0, 7, 0, 0 @ 869D160 - voice_square_1_alt 60, 0, 0, 2, 2, 0, 15, 0 @ 869D16C - voice_square_1_alt 60, 0, 0, 1, 2, 0, 15, 0 @ 869D178 - voice_square_1_alt 60, 0, 23, 1, 0, 1, 9, 0 @ 869D184 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 165 @ 869D190 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 165 @ 869D19C - voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 1 @ 869D1A8 - voice_square_1_alt 60, 0, 36, 0, 0, 2, 0, 0 @ 869D1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D22C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D31C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 869D328 - voice_keysplit voicegroup006, KeySplitTable2 @ 869D334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D4A8 - voice_square_2_alt 60, 0, 3, 0, 1, 0, 1 @ 869D4B4 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 1 @ 869D4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D4E4 - voice_square_1_alt 60, 0, 46, 2, 0, 4, 0, 0 @ 869D4F0 - voice_square_1_alt 60, 0, 38, 2, 0, 4, 0, 0 @ 869D4FC - voice_square_1_alt 60, 0, 119, 2, 0, 0, 15, 1 @ 869D508 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 1 @ 869D514 - voice_square_1_alt 60, 0, 106, 2, 0, 2, 0, 0 @ 869D520 - voice_square_1_alt 60, 0, 23, 2, 0, 1, 9, 0 @ 869D52C - voice_square_1_alt 60, 0, 21, 2, 0, 1, 9, 0 @ 869D538 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 @ 869D544 - voice_square_1_alt 60, 0, 47, 2, 0, 2, 6, 0 @ 869D550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D64C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D67C - voice_noise 60, 0, 0, 0, 7, 15, 0 @ 869D688 - voice_noise 60, 0, 0, 2, 7, 15, 0 @ 869D694 - voice_noise_alt 60, 0, 0, 2, 0, 15, 0 @ 869D6A0 - voice_noise_alt 60, 0, 1, 0, 0, 15, 0 @ 869D6AC - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 @ 869D6B8 - voice_noise_alt 60, 0, 0, 0, 3, 0, 0 @ 869D6C4 - voice_noise_alt 60, 0, 0, 0, 2, 0, 0 @ 869D6D0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 869D6DC - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 @ 869D6E8 +voicegroup127:: + voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 249, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 0, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 0, 1 + voice_square_1_alt 60, 0, 44, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 38, 0, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 7, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 2, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 0, 15, 0 + voice_square_1_alt 60, 0, 23, 1, 0, 1, 9, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 165 + voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 1 + voice_square_1_alt 60, 0, 36, 0, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 0, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 46, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 38, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 119, 2, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 106, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 23, 2, 0, 1, 9, 0 + voice_square_1_alt 60, 0, 21, 2, 0, 1, 9, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 47, 2, 0, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise 60, 0, 0, 0, 7, 15, 0 + voice_noise 60, 0, 0, 2, 7, 15, 0 + voice_noise_alt 60, 0, 0, 2, 0, 15, 0 + voice_noise_alt 60, 0, 1, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 0, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup128.inc b/sound/voicegroups/voicegroup128.inc index ef4227e16c38..78e0bf43af2b 100644 --- a/sound/voicegroups/voicegroup128.inc +++ b/sound/voicegroups/voicegroup128.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup128:: @ 869D6F4 - voice_directsound_no_resample 60, 0, DirectSoundWaveData_bicycle_bell, 255, 249, 0, 165 @ 869D6F4 - voice_directsound_alt 60, 0, DirectSoundWaveData_bicycle_bell, 255, 0, 255, 165 @ 869D700 - voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 0, 255, 165 @ 869D70C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 242, 0, 127 @ 869D718 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 @ 869D724 - voice_noise_alt 60, 0, 1, 0, 1, 0, 1 @ 869D730 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 255, 165 @ 869D73C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 @ 869D748 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 @ 869D754 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 0, 255, 127 @ 869D760 - voice_directsound 60, 0, DirectSoundWaveData_872762C, 255, 0, 255, 127 @ 869D76C - voice_noise_alt 60, 0, 1, 0, 2, 0, 0 @ 869D778 - voice_square_1 60, 0, 103, 3, 2, 7, 0, 0 @ 869D784 - voice_square_2 60, 0, 3, 2, 7, 0, 0 @ 869D790 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 @ 869D79C - voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 @ 869D7A8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 @ 869D7B4 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 @ 869D7C0 - voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 @ 869D7CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 @ 869D7D8 - voice_square_1 60, 0, 103, 0, 0, 7, 0, 0 @ 869D7E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 127 @ 869D7F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_wind, 255, 0, 255, 127 @ 869D7FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 @ 869D808 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 127 @ 869D814 - voice_noise_alt 60, 0, 0, 0, 7, 15, 1 @ 869D820 - voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 @ 869D82C - voice_noise_alt 60, 0, 1, 0, 7, 15, 1 @ 869D838 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 246, 0, 127 @ 869D844 - voice_directsound 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 @ 869D850 - voice_square_1_alt 60, 0, 19, 2, 0, 2, 0, 0 @ 869D85C - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 0, 255, 127 @ 869D868 - voice_square_1 60, 0, 103, 0, 0, 0, 15, 0 @ 869D874 - voice_directsound_alt 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 @ 869D880 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 255, 255, 127 @ 869D88C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 0, 255, 127 @ 869D898 - voice_directsound 60, 0, DirectSoundWaveData_8734298, 255, 0, 255, 127 @ 869D8A4 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 242, 0, 0 @ 869D8B0 - voice_directsound 60, 0, DirectSoundWaveData_87364A8, 255, 0, 255, 0 @ 869D8BC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 869D8C8 - voice_directsound 60, 0, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 @ 869D8D4 - voice_directsound 60, 0, DirectSoundWaveData_87385E4, 255, 249, 0, 165 @ 869D8E0 - voice_square_1 60, 0, 0, 0, 4, 6, 0, 0 @ 869D8EC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 13, 0, 255, 127 @ 869D8F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 13, 0, 255, 127 @ 869D904 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 @ 869D910 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 @ 869D91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869D928 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 869D934 - voice_square_1 60, 0, 0, 0, 4, 0, 15, 0 @ 869D940 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 188, 0, 0 @ 869D94C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 226, 0, 127 @ 869D958 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 26, 0, 255, 127 @ 869D964 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 0, 0 @ 869D970 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 252, 0, 127 @ 869D97C - voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 0 @ 869D988 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 127, 0, 127 @ 869D994 - voice_noise_alt 60, 0, 0, 1, 6, 0, 0 @ 869D9A0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 255, 255, 127 @ 869D9AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 869D9B8 - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 @ 869D9C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 11, 242, 0, 127 @ 869D9D0 - voice_square_1_alt 60, 0, 0, 2, 4, 6, 0, 0 @ 869D9DC - voice_directsound 60, 0, DirectSoundWaveData_8740818, 255, 255, 255, 127 @ 869D9E8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 869D9F4 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc55_tom, 255, 0, 255, 165 @ 869DA00 - voice_noise_alt 60, 0, 0, 5, 7, 15, 1 @ 869DA0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 128, 242, 0, 165 @ 869DA18 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 165 @ 869DA24 - voice_square_1 60, 0, 0, 0, 1, 5, 0, 0 @ 869DA30 - voice_noise_alt 60, 0, 0, 6, 6, 0, 1 @ 869DA3C - voice_noise_alt 60, 0, 0, 3, 6, 0, 1 @ 869DA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA54 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 15, 127, 231, 127 @ 869DA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 869DCA0 - voice_directsound 60, 0, DirectSoundWaveData_87424B0, 255, 0, 255, 165 @ 869DCAC - voice_directsound 60, 0, DirectSoundWaveData_87430C0, 255, 0, 255, 165 @ 869DCB8 - voice_directsound 60, 0, DirectSoundWaveData_8743C50, 255, 0, 255, 165 @ 869DCC4 - voice_directsound 60, 0, DirectSoundWaveData_87446EC, 255, 0, 255, 165 @ 869DCD0 - voice_directsound 60, 0, DirectSoundWaveData_8745034, 255, 0, 255, 165 @ 869DCDC - voice_directsound 60, 0, DirectSoundWaveData_8745A7C, 255, 0, 255, 165 @ 869DCE8 +voicegroup128:: + voice_directsound_no_resample 60, 0, DirectSoundWaveData_bicycle_bell, 255, 249, 0, 165 + voice_directsound_alt 60, 0, DirectSoundWaveData_bicycle_bell, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 242, 0, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_noise_alt 60, 0, 1, 0, 1, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 255, 165 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_872762C, 255, 0, 255, 127 + voice_noise_alt 60, 0, 1, 0, 2, 0, 0 + voice_square_1 60, 0, 103, 3, 2, 7, 0, 0 + voice_square_2 60, 0, 3, 2, 7, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 103, 0, 0, 7, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_wind, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 127 + voice_noise_alt 60, 0, 0, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 + voice_noise_alt 60, 0, 1, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 246, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_square_1_alt 60, 0, 19, 2, 0, 2, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 0, 255, 127 + voice_square_1 60, 0, 103, 0, 0, 0, 15, 0 + voice_directsound_alt 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_8734298, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 242, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_87364A8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_directsound 60, 0, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_87385E4, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 0, 4, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 13, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 13, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 0, 4, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 188, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 26, 0, 255, 127 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 252, 0, 127 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 127, 0, 127 + voice_noise_alt 60, 0, 0, 1, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 11, 242, 0, 127 + voice_square_1_alt 60, 0, 0, 2, 4, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_8740818, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc55_tom, 255, 0, 255, 165 + voice_noise_alt 60, 0, 0, 5, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 128, 242, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 0, 1, 5, 0, 0 + voice_noise_alt 60, 0, 0, 6, 6, 0, 1 + voice_noise_alt 60, 0, 0, 3, 6, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 15, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_87424B0, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_87430C0, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8743C50, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_87446EC, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8745034, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8745A7C, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup129.inc b/sound/voicegroups/voicegroup129.inc index 3c3ce90c6713..89ba4a59b711 100644 --- a/sound/voicegroups/voicegroup129.inc +++ b/sound/voicegroups/voicegroup129.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup129:: @ 86A0154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0154 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 86A0160 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86A016C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 226, 25, 0 @ 86A0178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0184 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 @ 86A0190 - voice_directsound 60, 0, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86A019C - voice_directsound 60, 0, DirectSoundWaveData_sd90_open_triangle, 255, 204, 128, 249 @ 86A01A8 - voice_directsound 60, 0, DirectSoundWaveData_register_noise, 255, 0, 255, 76 @ 86A01B4 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 @ 86A01C0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 206, 38 @ 86A01CC - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 206, 0 @ 86A01D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A01E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 @ 86A01F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A01FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A022C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A025C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0268 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 86A0274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A028C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02BC - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A02C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A02F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0310 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86A031C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A034C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0370 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 @ 86A037C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 86A0388 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 @ 86A0394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03A0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A03F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0400 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A040C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A043C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A046C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A049C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A04FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0508 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 4 @ 86A0514 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 3 @ 86A0520 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 1 @ 86A052C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A055C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A058C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0598 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 @ 86A05A4 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 6 @ 86A05B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A05F8 - voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 @ 86A0604 - voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 @ 86A0610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A061C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A064C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A067C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06B8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 86A06C4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86A06D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A06F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A070C - voice_noise_alt 60, 0, 0, 0, 1, 9, 2 @ 86A0718 - voice_noise_alt 60, 0, 0, 0, 4, 3, 1 @ 86A0724 - voice_noise_alt 60, 0, 0, 0, 1, 12, 0 @ 86A0730 - voice_noise_alt 60, 0, 1, 0, 1, 9, 0 @ 86A073C - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A0748 +voicegroup129:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 226, 25, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound 60, 0, DirectSoundWaveData_sd90_open_triangle, 255, 204, 128, 249 + voice_directsound 60, 0, DirectSoundWaveData_register_noise, 255, 0, 255, 76 + voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 206, 38 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 206, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 4 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 2 + voice_noise_alt 60, 0, 0, 0, 4, 3, 1 + voice_noise_alt 60, 0, 0, 0, 1, 12, 0 + voice_noise_alt 60, 0, 1, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup130.inc b/sound/voicegroups/voicegroup130.inc index d322326e9f9f..63e42a489f81 100644 --- a/sound/voicegroups/voicegroup130.inc +++ b/sound/voicegroups/voicegroup130.inc @@ -1,182 +1,182 @@ .align 2 -voicegroup130:: @ 86A0754 - voice_directsound 60, 0, DirectSoundWaveData_88DBBC0, 255, 0, 255, 0 @ 86A0754 - voice_directsound 60, 0, DirectSoundWaveData_88DC220, 255, 0, 255, 0 @ 86A0760 - voice_directsound 60, 0, DirectSoundWaveData_88DC704, 255, 0, 255, 0 @ 86A076C - voice_directsound 60, 0, DirectSoundWaveData_88DD054, 255, 0, 255, 0 @ 86A0778 - voice_directsound 60, 0, DirectSoundWaveData_88DDAC4, 255, 0, 255, 0 @ 86A0784 - voice_directsound 60, 0, DirectSoundWaveData_88DDDE4, 255, 0, 255, 0 @ 86A0790 - voice_directsound 60, 0, DirectSoundWaveData_88DEA6C, 255, 0, 255, 0 @ 86A079C - voice_directsound 60, 0, DirectSoundWaveData_88DF08C, 255, 0, 255, 0 @ 86A07A8 - voice_directsound 60, 0, DirectSoundWaveData_88DF414, 255, 0, 255, 0 @ 86A07B4 - voice_directsound 60, 0, DirectSoundWaveData_88E01F8, 255, 0, 255, 0 @ 86A07C0 - voice_directsound 60, 0, DirectSoundWaveData_88E0B68, 255, 0, 255, 0 @ 86A07CC - voice_directsound 60, 0, DirectSoundWaveData_88E0F04, 255, 0, 255, 0 @ 86A07D8 - voice_directsound 60, 0, DirectSoundWaveData_88E16B8, 255, 0, 255, 0 @ 86A07E4 - voice_directsound 60, 0, DirectSoundWaveData_88E2414, 255, 0, 255, 0 @ 86A07F0 - voice_directsound 60, 0, DirectSoundWaveData_88E2658, 255, 0, 255, 0 @ 86A07FC - voice_directsound 60, 0, DirectSoundWaveData_88E3498, 255, 0, 255, 0 @ 86A0808 - voice_directsound 60, 0, DirectSoundWaveData_88E3DEC, 255, 0, 255, 0 @ 86A0814 - voice_directsound 60, 0, DirectSoundWaveData_88E4140, 255, 0, 255, 0 @ 86A0820 - voice_directsound 60, 0, DirectSoundWaveData_88E4774, 255, 0, 255, 0 @ 86A082C - voice_directsound 60, 0, DirectSoundWaveData_88E53E0, 255, 0, 255, 0 @ 86A0838 - voice_directsound 60, 0, DirectSoundWaveData_88E5978, 255, 0, 255, 0 @ 86A0844 - voice_directsound 60, 0, DirectSoundWaveData_88E647C, 255, 0, 255, 0 @ 86A0850 - voice_directsound 60, 0, DirectSoundWaveData_88E6A80, 255, 0, 255, 0 @ 86A085C - voice_directsound 60, 0, DirectSoundWaveData_88E6C78, 255, 0, 255, 0 @ 86A0868 - voice_directsound 60, 0, DirectSoundWaveData_88E75DC, 255, 0, 255, 0 @ 86A0874 - voice_directsound 60, 0, DirectSoundWaveData_88E8568, 255, 0, 255, 0 @ 86A0880 - voice_directsound 60, 0, DirectSoundWaveData_88E8BA0, 255, 0, 255, 0 @ 86A088C - voice_directsound 60, 0, DirectSoundWaveData_88E9674, 255, 0, 255, 0 @ 86A0898 - voice_directsound 60, 0, DirectSoundWaveData_88EA5B8, 255, 0, 255, 0 @ 86A08A4 - voice_directsound 60, 0, DirectSoundWaveData_88EAB30, 255, 0, 255, 0 @ 86A08B0 - voice_directsound 60, 0, DirectSoundWaveData_88EB97C, 255, 0, 255, 0 @ 86A08BC - voice_directsound 60, 0, DirectSoundWaveData_88EC884, 255, 0, 255, 0 @ 86A08C8 - voice_directsound 60, 0, DirectSoundWaveData_88ED358, 255, 0, 255, 0 @ 86A08D4 - voice_directsound 60, 0, DirectSoundWaveData_88EDEEC, 255, 0, 255, 0 @ 86A08E0 - voice_directsound 60, 0, DirectSoundWaveData_88EE8C4, 255, 0, 255, 0 @ 86A08EC - voice_directsound 60, 0, DirectSoundWaveData_88EEF04, 255, 0, 255, 0 @ 86A08F8 - voice_directsound 60, 0, DirectSoundWaveData_88EF9E4, 255, 0, 255, 0 @ 86A0904 - voice_directsound 60, 0, DirectSoundWaveData_88F0020, 255, 0, 255, 0 @ 86A0910 - voice_directsound 60, 0, DirectSoundWaveData_88F0738, 255, 0, 255, 0 @ 86A091C - voice_directsound 60, 0, DirectSoundWaveData_88F1074, 255, 0, 255, 0 @ 86A0928 - voice_directsound 60, 0, DirectSoundWaveData_88F1830, 255, 0, 255, 0 @ 86A0934 - voice_directsound 60, 0, DirectSoundWaveData_88F1D94, 255, 0, 255, 0 @ 86A0940 - voice_directsound 60, 0, DirectSoundWaveData_88F2B08, 255, 0, 255, 0 @ 86A094C - voice_directsound 60, 0, DirectSoundWaveData_88F2F84, 255, 0, 255, 0 @ 86A0958 - voice_directsound 60, 0, DirectSoundWaveData_88F3470, 255, 0, 255, 0 @ 86A0964 - voice_directsound 60, 0, DirectSoundWaveData_88F3C38, 255, 0, 255, 0 @ 86A0970 - voice_directsound 60, 0, DirectSoundWaveData_88F4834, 255, 0, 255, 0 @ 86A097C - voice_directsound 60, 0, DirectSoundWaveData_88F4BAC, 255, 0, 255, 0 @ 86A0988 - voice_directsound 60, 0, DirectSoundWaveData_88F5368, 255, 0, 255, 0 @ 86A0994 - voice_directsound 60, 0, DirectSoundWaveData_88F5FCC, 255, 0, 255, 0 @ 86A09A0 - voice_directsound 60, 0, DirectSoundWaveData_88F6498, 255, 0, 255, 0 @ 86A09AC - voice_keysplit_all voicegroup001 @ 86A09B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A09C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A09D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A09DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A09E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A09F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AA8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 @ 86A0AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0FA0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 @ 86A0FAC +voicegroup130:: + voice_directsound 60, 0, DirectSoundWaveData_88DBBC0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DC220, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DC704, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DD054, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DDAC4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DDDE4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DEA6C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DF08C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DF414, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E01F8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E0B68, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E0F04, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E16B8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E2414, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E2658, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E3498, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E3DEC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E4140, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E4774, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E53E0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E5978, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E647C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E6A80, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E6C78, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E75DC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E8568, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E8BA0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E9674, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EA5B8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EAB30, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EB97C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EC884, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88ED358, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EDEEC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EE8C4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EEF04, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EF9E4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F0020, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F0738, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1074, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1830, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1D94, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F2B08, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F2F84, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F3470, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F3C38, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F4834, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F4BAC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F5368, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F5FCC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F6498, 255, 0, 255, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 diff --git a/sound/voicegroups/voicegroup131.inc b/sound/voicegroups/voicegroup131.inc index ff98f6f8244a..3b0377b5e711 100644 --- a/sound/voicegroups/voicegroup131.inc +++ b/sound/voicegroups/voicegroup131.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup131:: @ 86A0FB8 - voice_keysplit_all voicegroup002 @ 86A0FB8 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A0FC4 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 128, 204, 51, 242 @ 86A0FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A0FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A100C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A103C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A106C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A109C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 @ 86A10D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A10FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A112C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A115C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A118C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A11F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A121C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A124C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A127C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A12F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A130C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A133C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A136C - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 5 @ 86A1378 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @ 86A1384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A139C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A13FC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 9, 1 @ 86A1408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A142C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A145C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A148C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A14F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A151C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A154C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A157C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15A0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 @ 86A15AC +voicegroup131:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 128, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 5 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup132.inc b/sound/voicegroups/voicegroup132.inc index 48247b4570e3..92e565468ef2 100644 --- a/sound/voicegroups/voicegroup132.inc +++ b/sound/voicegroups/voicegroup132.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup132:: @ 86A15B8 - voice_keysplit_all voicegroup002 @ 86A15B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A15F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A160C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A163C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1654 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 @ 86A1660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A166C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1678 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 118, 137 @ 86A1684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A169C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 @ 86A16D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A16FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A172C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A175C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A178C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A17E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 235 @ 86A17EC - voice_keysplit voicegroup006, KeySplitTable2 @ 86A17F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A181C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A184C - voice_keysplit voicegroup007, KeySplitTable3 @ 86A1858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1864 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A1870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A187C - voice_keysplit voicegroup009, KeySplitTable5 @ 86A1888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A18F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A190C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1918 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86A1924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A193C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A196C - voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 2 @ 86A1978 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 5 @ 86A1984 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 @ 86A1990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A199C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 @ 86A19A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19C0 - voice_square_1_alt 60, 0, 0, 0, 0, 4, 2, 2 @ 86A19CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A19FC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 @ 86A1A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1B94 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A1BA0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 @ 86A1BAC +voicegroup132:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 118, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 2 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 4, 2, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup133.inc b/sound/voicegroups/voicegroup133.inc index 766d7ef8f651..ff98e8ff2c2e 100644 --- a/sound/voicegroups/voicegroup133.inc +++ b/sound/voicegroups/voicegroup133.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup133:: @ 86A1BB8 - voice_keysplit_all voicegroup002 @ 86A1BB8 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A1BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C24 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86A1C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C54 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A1C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 @ 86A1C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CCC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 @ 86A1CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D08 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86A1D14 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86A1D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D74 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86A1D80 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 @ 86A1D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1DE0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 @ 86A1DEC - voice_keysplit voicegroup006, KeySplitTable2 @ 86A1DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E4C - voice_keysplit voicegroup007, KeySplitTable3 @ 86A1E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E7C - voice_keysplit voicegroup009, KeySplitTable5 @ 86A1E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1E94 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 86A1EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F54 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86A1F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F6C - voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 @ 86A1F78 - voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 @ 86A1F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1F90 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 @ 86A1F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FC0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A1FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A1FFC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 @ 86A2008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A202C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A205C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A208C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A20F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A211C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A214C - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A2158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A217C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2194 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A21A0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 @ 86A21AC +voicegroup133:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup134.inc b/sound/voicegroups/voicegroup134.inc index e689983d76ab..470a6613a371 100644 --- a/sound/voicegroups/voicegroup134.inc +++ b/sound/voicegroups/voicegroup134.inc @@ -1,93 +1,93 @@ .align 2 -voicegroup134:: @ 86A21B8 - voice_keysplit_all voicegroup001 @ 86A21B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A21C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A21D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A21DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A21E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A21F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A220C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A223C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A226C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A229C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A22FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A232C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A235C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A238C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A23E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 86A23EC - voice_keysplit voicegroup006, KeySplitTable2 @ 86A23F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A241C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A244C - voice_keysplit voicegroup007, KeySplitTable3 @ 86A2458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A247C - voice_keysplit voicegroup009, KeySplitTable5 @ 86A2488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A24F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A250C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A253C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A256C - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @ 86A2578 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 @ 86A2584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A259C - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @ 86A25A8 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 @ 86A25B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A25C0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 86A25CC - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 @ 86A25D8 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 @ 86A25E4 +voicegroup134:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup135.inc b/sound/voicegroups/voicegroup135.inc index 09b7843c9347..48ed76c036e5 100644 --- a/sound/voicegroups/voicegroup135.inc +++ b/sound/voicegroups/voicegroup135.inc @@ -1,86 +1,86 @@ .align 2 -voicegroup135:: @ 86A25F0 - voice_keysplit_all voicegroup002 @ 86A25F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A25FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A262C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A265C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A268C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 85, 137, 180, 204 @ 86A26EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A26F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A271C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A274C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A277C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A27F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A280C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A283C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A286C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A289C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A28FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A292C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A295C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A298C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A29A4 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 9, 0 @ 86A29B0 - voice_square_2_alt 60, 0, 2, 0, 0, 9, 0 @ 86A29BC - voice_square_1_alt 60, 0, 0, 0, 1, 2, 6, 0 @ 86A29C8 +voicegroup135:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 85, 137, 180, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 9, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 9, 0 + voice_square_1_alt 60, 0, 0, 0, 1, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup136.inc b/sound/voicegroups/voicegroup136.inc index 086956a96bcc..3b053ce2d96a 100644 --- a/sound/voicegroups/voicegroup136.inc +++ b/sound/voicegroups/voicegroup136.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup136:: @ 86A29D4 - voice_keysplit_all voicegroup002 @ 86A29D4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A29E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A29EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A29F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B24 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86A2B30 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86A2B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2B90 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86A2B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C08 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A2C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CB0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 86A2CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2D88 - voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 @ 86A2D94 - voice_square_1_alt 60, 0, 0, 0, 0, 5, 0, 0 @ 86A2DA0 - voice_square_1_alt 60, 0, 0, 2, 2, 4, 10, 0 @ 86A2DAC - voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 @ 86A2DB8 - voice_square_1_alt 60, 0, 0, 1, 0, 5, 0, 0 @ 86A2DC4 - voice_square_2_alt 60, 0, 3, 2, 4, 10, 0 @ 86A2DD0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 1, 5, 0, 3 @ 86A2DDC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 5, 0, 3 @ 86A2DE8 - voice_square_2_alt 60, 0, 1, 0, 1, 10, 2 @ 86A2DF4 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 10, 0 @ 86A2E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2FA4 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 @ 86A2FB0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86A2FBC - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86A2FC8 +voicegroup136:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 2, 4, 10, 0 + voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 5, 0, 0 + voice_square_2_alt 60, 0, 3, 2, 4, 10, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 1, 5, 0, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 5, 0, 3 + voice_square_2_alt 60, 0, 1, 0, 1, 10, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 10, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup137.inc b/sound/voicegroups/voicegroup137.inc index 17c92d591b76..8eb79103974a 100644 --- a/sound/voicegroups/voicegroup137.inc +++ b/sound/voicegroups/voicegroup137.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup137:: @ 86A2FD4 - voice_keysplit_all voicegroup002 @ 86A2FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A2FF8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 165, 180, 165 @ 86A3004 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 137, 154, 165 @ 86A3010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A301C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3034 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 @ 86A3040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A304C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3070 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A307C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A30F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A310C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A313C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A316C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A319C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A31F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 @ 86A31FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 @ 86A3208 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A3214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A322C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A325C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3268 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A3274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3280 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A328C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3298 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A32A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A32F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A331C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A334C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A337C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3388 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 @ 86A3394 - voice_square_2_alt 60, 0, 1, 1, 2, 3, 1 @ 86A33A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A33AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A33B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A33C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A33D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A33DC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 2, 4, 1 @ 86A33E8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 2, 4, 1 @ 86A33F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A340C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A343C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A346C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A349C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A34FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A352C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A355C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A358C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A35A4 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 @ 86A35B0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86A35BC - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 @ 86A35C8 +voicegroup137:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 165, 180, 165 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 137, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 1, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup138.inc b/sound/voicegroups/voicegroup138.inc index 21e849979059..0439e92f5f36 100644 --- a/sound/voicegroups/voicegroup138.inc +++ b/sound/voicegroups/voicegroup138.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup138:: @ 86A35D4 - voice_keysplit_all voicegroup002 @ 86A35D4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A35E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A35EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A35F8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86A3604 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86A3610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A361C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A364C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A367C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3694 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86A36A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A36AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A36B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A36C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86A36D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A36DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A36E8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86A36F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A370C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A373C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A376C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A379C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A37F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86A37FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3808 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A3814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A382C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A385C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3868 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A3874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A388C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A38F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A391C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3934 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86A3940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A394C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A397C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3988 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 @ 86A3994 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 3 @ 86A39A0 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86A39AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A39F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A18 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 @ 86A3A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3BB0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A3BBC - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A3BC8 +voicegroup138:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 3 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup139.inc b/sound/voicegroups/voicegroup139.inc index fc44fa188b33..5d222313608c 100644 --- a/sound/voicegroups/voicegroup139.inc +++ b/sound/voicegroups/voicegroup139.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup139:: @ 86A3BD4 - voice_keysplit_all voicegroup002 @ 86A3BD4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A3BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @ 86A3C40 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86A3C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C64 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86A3C70 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A3C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3C94 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 127, 103, 201 @ 86A3CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3CC4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 37, 127, 77, 165 @ 86A3CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3CE8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 @ 86A3CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3DF0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 @ 86A3DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E08 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A3E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E20 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 @ 86A3E2C - voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 @ 86A3E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E80 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A3E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3E98 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A3EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F34 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86A3F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F70 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86A3F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A3FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A400C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4018 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A4024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A403C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A406C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A409C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A40FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A412C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A415C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A418C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A41A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A41B0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86A41BC - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86A41C8 +voicegroup139:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 127, 103, 201 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 37, 127, 77, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup140.inc b/sound/voicegroups/voicegroup140.inc index b135831ca664..7dfc37f745b1 100644 --- a/sound/voicegroups/voicegroup140.inc +++ b/sound/voicegroups/voicegroup140.inc @@ -1,7 +1,7 @@ .align 2 -voicegroup140:: @ 86A41D4 - voice_keysplit_all voicegroup001 @ 86A41D4 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 @ 86A41E0 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 @ 86A41EC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A41F8 +voicegroup140:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup141.inc b/sound/voicegroups/voicegroup141.inc index 4923049b3551..7a866f991e06 100644 --- a/sound/voicegroups/voicegroup141.inc +++ b/sound/voicegroups/voicegroup141.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup141:: @ 86A4204 - voice_keysplit_all voicegroup002 @ 86A4204 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A4210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A421C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A424C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A427C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4294 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86A42A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86A42D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A42F4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86A4300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A430C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4318 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 @ 86A4324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A433C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A436C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A439C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A43FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A442C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4438 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A4444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A445C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A448C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4498 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A44A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A44F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A451C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A454C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4564 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86A4570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A457C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A45A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A45AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A45B8 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 @ 86A45C4 - voice_square_2_alt 60, 0, 3, 0, 2, 7, 3 @ 86A45D0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 @ 86A45DC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 @ 86A45E8 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 2 @ 86A45F4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 2, 9, 0 @ 86A4600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A460C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A463C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A466C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A469C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A46FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A472C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A475C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A478C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A47E0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A47EC - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A47F8 +voicegroup141:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 2, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup142.inc b/sound/voicegroups/voicegroup142.inc index f478d6dcafa9..aa7e8b204398 100644 --- a/sound/voicegroups/voicegroup142.inc +++ b/sound/voicegroups/voicegroup142.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup142:: @ 86A4804 - voice_keysplit_all voicegroup002 @ 86A4804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A481C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A484C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A487C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 188, 128, 201 @ 86A48D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A48F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A490C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4918 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 195, 103, 220 @ 86A4924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A493C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4954 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 195, 72, 127 @ 86A4960 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 85, 188, 103, 160 @ 86A496C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A499C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 188, 77, 115 @ 86A49CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A49FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AE0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 175, 154, 127 @ 86A4AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4BB8 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 @ 86A4BC4 - voice_square_2_alt 60, 0, 2, 0, 2, 5, 5 @ 86A4BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4BDC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 7, 15, 0 @ 86A4BE8 +voicegroup142:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 188, 128, 201 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 195, 103, 220 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 195, 72, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 85, 188, 103, 160 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 188, 77, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 175, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 5, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup143.inc b/sound/voicegroups/voicegroup143.inc index 0f528bd88c1f..d668337f8727 100644 --- a/sound/voicegroups/voicegroup143.inc +++ b/sound/voicegroups/voicegroup143.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup143:: @ 86A4BF4 - voice_keysplit_all voicegroup002 @ 86A4BF4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A4C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CB4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 123, 165 @ 86A4CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D08 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 0 @ 86A4D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E28 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A4E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4FA8 - voice_square_2_alt 60, 0, 3, 0, 2, 3, 2 @ 86A4FB4 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 @ 86A4FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4FCC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A4FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A4FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A502C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A505C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A508C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A50F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A511C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A514C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A517C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A51A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A51AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A51B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A51C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A51D0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 @ 86A51DC - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86A51E8 +voicegroup143:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 123, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 3, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup144.inc b/sound/voicegroups/voicegroup144.inc index 4a3209f06ff0..43ed4dbab23b 100644 --- a/sound/voicegroups/voicegroup144.inc +++ b/sound/voicegroups/voicegroup144.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup144:: @ 86A51F4 - voice_keysplit_all voicegroup002 @ 86A51F4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A5200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A520C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A523C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A526C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A529C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52B4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 188, 92, 165 @ 86A52C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 127, 180, 165 @ 86A52CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A52FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5308 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 @ 86A5314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A532C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A535C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A538C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 @ 86A5398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53B0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86A53BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A53F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A541C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5428 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A5434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A544C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A547C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A54F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A550C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A553C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A556C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A559C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A55A8 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 2 @ 86A55B4 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 3 @ 86A55C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A55CC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A55D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A55E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A55F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A55FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A562C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A565C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A568C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A56F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A571C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A574C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A577C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A57A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A57AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A57B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A57C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A57D0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 @ 86A57DC - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A57E8 +voicegroup144:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 188, 92, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 127, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 2 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup145.inc b/sound/voicegroups/voicegroup145.inc index d4cd030fbcb0..a14803a12c30 100644 --- a/sound/voicegroups/voicegroup145.inc +++ b/sound/voicegroups/voicegroup145.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup145:: @ 86A57F4 - voice_keysplit_all voicegroup002 @ 86A57F4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A5800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A580C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5818 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86A5824 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86A5830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A583C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A586C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A589C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58B4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86A58C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86A58F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A58FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5908 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86A5914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A592C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A595C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A598C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A59F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A10 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86A5A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A28 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A5A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5A88 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A5A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B54 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86A5B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5BA8 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 @ 86A5BB4 - voice_square_2_alt 60, 0, 3, 0, 0, 9, 0 @ 86A5BC0 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86A5BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C38 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 @ 86A5C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5DD0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A5DDC - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A5DE8 +voicegroup145:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 0, 9, 0 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup146.inc b/sound/voicegroups/voicegroup146.inc index ad15ef86a7f7..d78b991e33d0 100644 --- a/sound/voicegroups/voicegroup146.inc +++ b/sound/voicegroups/voicegroup146.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup146:: @ 86A5DF4 - voice_keysplit_all voicegroup002 @ 86A5DF4 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 @ 86A5E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E84 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86A5E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F08 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 226 @ 86A5F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A5FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A601C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6028 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A6034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A604C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A607C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A60F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A610C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A613C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A616C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6190 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 43, 76, 103, 216 @ 86A619C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61A8 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 4 @ 86A61B4 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61CC - voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 @ 86A61D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A61FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A622C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6238 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86A6244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A625C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A628C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A62F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A631C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A634C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A637C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A63A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A63AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A63B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A63C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A63D0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 @ 86A63DC - voice_noise_alt 60, 0, 0, 0, 1, 6, 2 @ 86A63E8 +voicegroup146:: + voice_keysplit_all voicegroup002 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 43, 76, 103, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 4 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup147.inc b/sound/voicegroups/voicegroup147.inc index 159b5df8074d..35fb9dc5b360 100644 --- a/sound/voicegroups/voicegroup147.inc +++ b/sound/voicegroups/voicegroup147.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup147:: @ 86A63F4 - voice_keysplit_all voicegroup001 @ 86A63F4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A6400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A640C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A643C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A646C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A649C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A64FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6508 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 249, 25, 226 @ 86A6514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A652C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A655C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A658C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A65F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A661C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6628 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A6634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A664C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A667C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A66F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A670C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A673C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A676C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A679C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A67A8 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 6, 1 @ 86A67B4 - voice_square_2_alt 60, 0, 2, 0, 0, 6, 1 @ 86A67C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A67CC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 4, 2 @ 86A67D8 +voicegroup147:: + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 249, 25, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 0, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 4, 2 diff --git a/sound/voicegroups/voicegroup148.inc b/sound/voicegroups/voicegroup148.inc index da14a098baba..1ada1b89c624 100644 --- a/sound/voicegroups/voicegroup148.inc +++ b/sound/voicegroups/voicegroup148.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup148:: @ 86A67E4 - voice_keysplit_all voicegroup002 @ 86A67E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A67F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A67FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A682C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A685C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6874 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 @ 86A6880 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A688C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A68F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A691C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A694C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A697C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 @ 86A69B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A69F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A18 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A6A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6A90 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A6A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6B98 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 @ 86A6BA4 - voice_square_2_alt 60, 0, 2, 0, 0, 12, 0 @ 86A6BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6BEC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A6BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6DC0 - voice_noise_alt 60, 0, 0, 0, 3, 5, 2 @ 86A6DCC - voice_noise_alt 60, 0, 0, 0, 1, 6, 5 @ 86A6DD8 +voicegroup148:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 5, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 5 diff --git a/sound/voicegroups/voicegroup149.inc b/sound/voicegroups/voicegroup149.inc index 2d009d7fe8aa..78c29fb840e7 100644 --- a/sound/voicegroups/voicegroup149.inc +++ b/sound/voicegroups/voicegroup149.inc @@ -1,96 +1,96 @@ .align 2 -voicegroup149:: @ 86A6DE4 - voice_keysplit_all voicegroup190 @ 86A6DE4 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A6DF0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 @ 86A6DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E44 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @ 86A6E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E74 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86A6E80 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A6E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A6FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7000 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86A700C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 153 @ 86A7018 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A7024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A703C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A706C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7078 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A7084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7090 - voice_keysplit voicegroup008, KeySplitTable4 @ 86A709C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70A8 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A70B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A70FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7108 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 43, 188, 103, 165 @ 86A7114 - voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 43, 165, 103, 165 @ 86A7120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A712C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7144 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86A7150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A715C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A718C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7198 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 @ 86A71A4 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 @ 86A71B0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 @ 86A71BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A71C8 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 @ 86A71D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A71E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A71EC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A71F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A721C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7228 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86A7234 +voicegroup149:: + voice_keysplit_all voicegroup190 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 43, 188, 103, 165 + voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 43, 165, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup150.inc b/sound/voicegroups/voicegroup150.inc index e07ad0b9752f..233981ebdfaf 100644 --- a/sound/voicegroups/voicegroup150.inc +++ b/sound/voicegroups/voicegroup150.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup150:: @ 86A7240 - voice_keysplit_all voicegroup002 @ 86A7240 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 @ 86A724C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A727C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A72F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A730C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A733C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A736C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A739C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A73FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A742C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A745C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A748C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A74F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A751C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A754C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A757C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75DC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 85, 204, 77, 127 @ 86A75E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A75F4 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 6 @ 86A7600 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 5 @ 86A760C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7618 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 86A7624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A763C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A766C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A769C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A76FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A772C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A775C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A778C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A77F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A781C - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86A7828 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86A7834 +voicegroup150:: + voice_keysplit_all voicegroup002 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 85, 204, 77, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 6 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup151.inc b/sound/voicegroups/voicegroup151.inc index ac5d1a8023c2..3688a2541d7e 100644 --- a/sound/voicegroups/voicegroup151.inc +++ b/sound/voicegroups/voicegroup151.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup151:: @ 86A7840 - voice_keysplit_all voicegroup002 @ 86A7840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A784C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A787C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78DC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A78E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A78F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A790C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A793C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A796C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A799C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A79FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A68 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 127 @ 86A7A74 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A7A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7AD4 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A7AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7AEC - voice_keysplit voicegroup008, KeySplitTable4 @ 86A7AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B04 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A7B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7BF4 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 @ 86A7C00 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 @ 86A7C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C24 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 @ 86A7C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A7C54 +voicegroup151:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 127 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup152.inc b/sound/voicegroups/voicegroup152.inc index 16cd4bb97d89..bf07b260ca5a 100644 --- a/sound/voicegroups/voicegroup152.inc +++ b/sound/voicegroups/voicegroup152.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup152:: @ 86A7C60 - voice_keysplit_all voicegroup002 @ 86A7C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7CFC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 @ 86A7D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D20 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 175, 165 @ 86A7D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D74 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 86A7D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7E88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 @ 86A7E94 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A7EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7EF4 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A7F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F0C - voice_keysplit voicegroup008, KeySplitTable4 @ 86A7F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F24 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A7F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A7FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8014 - voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 1 @ 86A8020 - voice_square_2_alt 60, 0, 3, 0, 1, 5, 2 @ 86A802C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 @ 86A8038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8044 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 @ 86A8050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A805C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8068 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 @ 86A8074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A808C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80A4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 @ 86A80B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A80F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A811C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A814C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A817C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A81F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A820C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A823C - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A8248 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86A8254 +voicegroup152:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 175, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 5, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup153.inc b/sound/voicegroups/voicegroup153.inc index 1dae15586aa1..90840698e413 100644 --- a/sound/voicegroups/voicegroup153.inc +++ b/sound/voicegroups/voicegroup153.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup153:: @ 86A8260 - voice_keysplit_all voicegroup002 @ 86A8260 - voice_keysplit voicegroup005, KeySplitTable1 @ 86A826C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A829C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A82FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 @ 86A8308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A832C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A835C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A838C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A83F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A841C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A844C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A847C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86A8488 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 @ 86A8494 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A84A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A84F4 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A8500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A850C - voice_keysplit voicegroup008, KeySplitTable4 @ 86A8518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8524 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A8530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A853C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A856C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A859C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85C0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86A85CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A85FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8614 - voice_square_1_alt 60, 0, 0, 1, 0, 3, 5, 2 @ 86A8620 - voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 @ 86A862C - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86A8638 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 2 @ 86A8644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A865C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A868C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86A4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48A0, 0, 1, 12, 0 @ 86A86B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A86F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A871C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A874C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A877C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A87F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A880C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A883C - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A8848 - voice_noise_alt 60, 0, 0, 0, 1, 6, 2 @ 86A8854 +voicegroup153:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 3, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48A0, 0, 1, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup154.inc b/sound/voicegroups/voicegroup154.inc index 77b8d3a1a89e..14cfd2dd9d8d 100644 --- a/sound/voicegroups/voicegroup154.inc +++ b/sound/voicegroups/voicegroup154.inc @@ -1,96 +1,96 @@ .align 2 -voicegroup154:: @ 86A8860 - voice_keysplit_all voicegroup002 @ 86A8860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A886C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8884 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A8890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A889C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A88FC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 @ 86A8908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A892C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A895C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A898C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A89F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8A88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 @ 86A8A94 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A8AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8AF4 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A8B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B0C - voice_keysplit voicegroup008, KeySplitTable4 @ 86A8B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B24 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A8B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C14 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 10, 0 @ 86A8C20 - voice_square_2_alt 60, 0, 1, 0, 0, 10, 0 @ 86A8C2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C68 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 0, 12, 0 @ 86A8C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8CA4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 12, 0 @ 86A8CB0 +voicegroup154:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 10, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 10, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 12, 0 diff --git a/sound/voicegroups/voicegroup155.inc b/sound/voicegroups/voicegroup155.inc index daefabb24611..7fcfdcfe66b2 100644 --- a/sound/voicegroups/voicegroup155.inc +++ b/sound/voicegroups/voicegroup155.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup155:: @ 86A8CBC - voice_keysplit_all voicegroup002 @ 86A8CBC - voice_keysplit voicegroup005, KeySplitTable1 @ 86A8CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8CE0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A8CEC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 @ 86A8CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A8D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D7C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 86A8D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DD0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86A8DDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 86A8DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E0C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86A8E18 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 @ 86A8E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8EE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 86A8EF0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A8EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F50 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A8F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F80 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A8F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8F98 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 @ 86A8FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A8FF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A901C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A904C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9070 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 @ 86A907C - voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 @ 86A9088 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @ 86A9094 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 @ 86A90A0 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86A90AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A90B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A90C4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 @ 86A90D0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86A90DC - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 @ 86A90E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A90F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9100 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @ 86A910C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A913C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A916C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A919C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A91FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A922C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9250 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A925C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A928C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9298 - voice_noise_alt 60, 0, 0, 0, 2, 6, 2 @ 86A92A4 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A92B0 +voicegroup155:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup156.inc b/sound/voicegroups/voicegroup156.inc index 52bebd5f7e3a..0d8ec69d9f22 100644 --- a/sound/voicegroups/voicegroup156.inc +++ b/sound/voicegroups/voicegroup156.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup156:: @ 86A92BC - voice_keysplit_all voicegroup002 @ 86A92BC - voice_keysplit voicegroup005, KeySplitTable1 @ 86A92C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A92D4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A92E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A92EC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A92F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A931C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A934C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A937C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 86A9388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 86A93B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 86A93DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A93F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A940C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86A9418 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86A9424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A943C - voice_square_2_alt 60, 0, 3, 0, 4, 4, 4 @ 86A9448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9460 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 @ 86A946C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9484 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 5 @ 86A9490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A949C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A94F0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A94FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A952C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9550 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A955C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9580 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A958C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9598 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 86A95A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A95F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A961C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A964C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9670 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 @ 86A967C - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 5 @ 86A9688 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 6, 5 @ 86A9694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A96F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A970C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A973C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A976C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A979C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A97FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A982C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9850 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A985C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A988C - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 @ 86A9898 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A98A4 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86A98B0 +voicegroup156:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 4, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 5 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup157.inc b/sound/voicegroups/voicegroup157.inc index 6469c4c4aca3..102702545ecc 100644 --- a/sound/voicegroups/voicegroup157.inc +++ b/sound/voicegroups/voicegroup157.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup157:: @ 86A98BC - voice_keysplit_all voicegroup002 @ 86A98BC - voice_keysplit voicegroup005, KeySplitTable1 @ 86A98C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A98D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A98E0 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @ 86A98EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A98F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A991C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A994C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A997C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 @ 86A9988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 86A99B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 @ 86A99DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A99F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A0C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86A9A18 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86A9A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A3C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 86A9A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A60 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 @ 86A9A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86A9A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9AF0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86A9AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B50 - voice_keysplit voicegroup007, KeySplitTable3 @ 86A9B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B80 - voice_keysplit voicegroup009, KeySplitTable5 @ 86A9B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9B98 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 @ 86A9BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9C70 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 @ 86A9C7C - voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 @ 86A9C88 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 @ 86A9C94 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 @ 86A9CA0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86A9CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9CC4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 86A9CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D00 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @ 86A9D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9E98 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86A9EA4 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86A9EB0 +voicegroup157:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup158.inc b/sound/voicegroups/voicegroup158.inc index efed45e18dcd..798a6f4d10d2 100644 --- a/sound/voicegroups/voicegroup158.inc +++ b/sound/voicegroups/voicegroup158.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup158:: @ 86A9EBC - voice_keysplit_all voicegroup002 @ 86A9EBC - voice_keysplit voicegroup005, KeySplitTable1 @ 86A9EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9EE0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A9EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F28 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86A9F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86A9F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F7C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 @ 86A9F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FD0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 @ 86A9FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86A9FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA00C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86AA018 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86AA024 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86AA030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA03C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA054 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86AA060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA078 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86AA084 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 @ 86AA090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA0E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 @ 86AA0F0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AA0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA12C - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 86AA138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA150 - voice_keysplit voicegroup007, KeySplitTable3 @ 86AA15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA180 - voice_keysplit voicegroup009, KeySplitTable5 @ 86AA18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA198 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 @ 86AA1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA1F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA24C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA258 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86AA264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA270 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 @ 86AA27C - voice_square_2_alt 60, 0, 3, 0, 1, 10, 1 @ 86AA288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA294 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 @ 86AA2A0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 86AA2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA2C4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AA2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA2DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA300 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 @ 86AA30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA498 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AA4A4 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 @ 86AA4B0 +voicegroup158:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup159.inc b/sound/voicegroups/voicegroup159.inc index 9b72cb505dbf..ce05bc70e21c 100644 --- a/sound/voicegroups/voicegroup159.inc +++ b/sound/voicegroups/voicegroup159.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup159:: @ 86AA4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA4E0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 @ 86AA4EC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 51, 249, 0, 165 @ 86AA4F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA51C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 @ 86AA5DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA60C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA6F0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AA6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA72C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA75C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA7F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA84C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA870 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 0, 6 @ 86AA87C - voice_square_2_alt 60, 0, 1, 1, 5, 1, 6 @ 86AA888 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 @ 86AA894 - voice_square_1_alt 60, 0, 0, 0, 1, 4, 3, 6 @ 86AA8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA93C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA96C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AA9FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAA98 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86AAAA4 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86AAAB0 +voicegroup159:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 51, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 0, 6 + voice_square_2_alt 60, 0, 1, 1, 5, 1, 6 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_square_1_alt 60, 0, 0, 0, 1, 4, 3, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup160.inc b/sound/voicegroups/voicegroup160.inc index 5bd5ec42d161..9198c7f127db 100644 --- a/sound/voicegroups/voicegroup160.inc +++ b/sound/voicegroups/voicegroup160.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup160:: @ 86AAABC - voice_keysplit_all voicegroup001 @ 86AAABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAAEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAAF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86AAB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABD0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86AABDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AABF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC54 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86AAC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AACF0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AACFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AADF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE70 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 @ 86AAE7C - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 @ 86AAE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAEC4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AAED0 +voicegroup160:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup161.inc b/sound/voicegroups/voicegroup161.inc index 72008eece695..8165b38e8d5f 100644 --- a/sound/voicegroups/voicegroup161.inc +++ b/sound/voicegroups/voicegroup161.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup161:: @ 86AAEDC - voice_keysplit_all voicegroup002 @ 86AAEDC - voice_keysplit voicegroup005, KeySplitTable1 @ 86AAEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF78 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86AAF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAF9C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 86AAFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFCC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 86AAFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AAFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB05C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB0F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB110 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AB11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB170 - voice_keysplit voicegroup007, KeySplitTable3 @ 86AB17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB188 - voice_keysplit voicegroup008, KeySplitTable4 @ 86AB194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB23C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86AB248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB290 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 @ 86AB29C - voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 @ 86AB2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB2B4 - voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 @ 86AB2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB2E4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AB2F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB32C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB44C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB4B8 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86AB4C4 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86AB4D0 +voicegroup161:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup162.inc b/sound/voicegroups/voicegroup162.inc index 0694dc883bf6..cf6d4294c63d 100644 --- a/sound/voicegroups/voicegroup162.inc +++ b/sound/voicegroups/voicegroup162.inc @@ -1,96 +1,96 @@ .align 2 -voicegroup162:: @ 86AB4DC - voice_keysplit_all voicegroup002 @ 86AB4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB500 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 64, 188, 108, 244 @ 86AB50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB578 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86AB584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB59C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 195, 92, 235 @ 86AB5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB5F0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86AB5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB65C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 64, 204, 113, 235 @ 86AB668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB6F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB710 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AB71C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB890 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 0 @ 86AB89C - voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 @ 86AB8A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB920 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AB92C +voicegroup162:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 64, 188, 108, 244 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 195, 92, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 64, 204, 113, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup163.inc b/sound/voicegroups/voicegroup163.inc index f221b761d290..6c6fc38033e6 100644 --- a/sound/voicegroups/voicegroup163.inc +++ b/sound/voicegroups/voicegroup163.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup163:: @ 86AB938 - voice_keysplit_all voicegroup002 @ 86AB938 - voice_keysplit voicegroup005, KeySplitTable1 @ 86AB944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB95C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AB968 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AB974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AB9F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86ABA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA28 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86ABA34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA4C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86ABA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABAF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB54 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86ABB60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB6C - voice_keysplit voicegroup006, KeySplitTable2 @ 86ABB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABB9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBCC - voice_keysplit voicegroup007, KeySplitTable3 @ 86ABBD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBE4 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 @ 86ABBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABC98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86ABCA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABCEC - voice_square_1_alt 60, 0, 0, 0, 0, 1, 5, 2 @ 86ABCF8 - voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 @ 86ABD04 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86ABD10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD7C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 @ 86ABD88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABD94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABDF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF14 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86ABF20 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86ABF2C +voicegroup163:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup164.inc b/sound/voicegroups/voicegroup164.inc index 67783f8f8477..b7f742114b7f 100644 --- a/sound/voicegroups/voicegroup164.inc +++ b/sound/voicegroups/voicegroup164.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup164:: @ 86ABF38 - voice_keysplit_all voicegroup002 @ 86ABF38 - voice_keysplit voicegroup005, KeySplitTable1 @ 86ABF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF5C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 @ 86ABF68 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 85, 204, 77, 246 @ 86ABF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFBC - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 6 @ 86ABFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ABFF8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86AC004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC028 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86AC034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC04C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86AC058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC154 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86AC160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC16C - voice_keysplit voicegroup006, KeySplitTable2 @ 86AC178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC19C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC22C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC28C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC298 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86AC2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC2EC - voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 @ 86AC2F8 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 4 @ 86AC304 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 0, 12, 0 @ 86AC310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC37C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 @ 86AC388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC514 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AC520 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86AC52C +voicegroup164:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 85, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup165.inc b/sound/voicegroups/voicegroup165.inc index 95042d7a7f26..4e480695688c 100644 --- a/sound/voicegroups/voicegroup165.inc +++ b/sound/voicegroups/voicegroup165.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup165:: @ 86AC538 - voice_keysplit_all voicegroup002 @ 86AC538 - voice_keysplit voicegroup005, KeySplitTable1 @ 86AC544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC598 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @ 86AC5A4 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86AC5B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC5C8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86AC5D4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86AC5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC5F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 103, 127 @ 86AC604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC64C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 204, 92, 226 @ 86AC658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC67C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC754 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 @ 86AC760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC76C - voice_keysplit voicegroup006, KeySplitTable2 @ 86AC778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC784 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 10, 1 @ 86AC790 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 6 @ 86AC79C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7E4 - voice_keysplit voicegroup008, KeySplitTable4 @ 86AC7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC7FC - voice_keysplit voicegroup009, KeySplitTable5 @ 86AC808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC82C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC85C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC898 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 @ 86AC8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC8B0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_enhanced_delay_shaku, 255, 191, 97, 165 @ 86AC8BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC8C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC8D4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86AC8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC928 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC97C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AC988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AC9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB14 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 @ 86ACB20 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86ACB2C +voicegroup165:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 103, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 10, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_enhanced_delay_shaku, 255, 191, 97, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup166.inc b/sound/voicegroups/voicegroup166.inc index a859f7f3ac06..7c23ebb01422 100644 --- a/sound/voicegroups/voicegroup166.inc +++ b/sound/voicegroups/voicegroup166.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup166:: @ 86ACB38 - voice_keysplit_all voicegroup002 @ 86ACB38 - voice_keysplit voicegroup005, KeySplitTable1 @ 86ACB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBA4 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86ACBB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBD4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86ACBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACBF8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 @ 86ACC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC4C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 @ 86ACC58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACC88 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86ACC94 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86ACCA0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86ACCAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACCB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACCC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACCD0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86ACCDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACCE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACCF4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86ACD00 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 @ 86ACD0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD60 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 @ 86ACD6C - voice_keysplit voicegroup006, KeySplitTable2 @ 86ACD78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDCC - voice_keysplit voicegroup007, KeySplitTable3 @ 86ACDD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACDFC - voice_keysplit voicegroup009, KeySplitTable5 @ 86ACE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE14 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 @ 86ACE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACE98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACEA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACEB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACEBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACED4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86ACEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACEEC - voice_square_1_alt 60, 0, 0, 3, 0, 1, 9, 0 @ 86ACEF8 - voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 @ 86ACF04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF10 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 @ 86ACF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF40 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86ACF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF7C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 @ 86ACF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ACFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD00C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD03C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD06C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD09C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD0FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD114 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AD120 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 @ 86AD12C +voicegroup166:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup167.inc b/sound/voicegroups/voicegroup167.inc index 2583623c375c..d4cf5a9f4d4d 100644 --- a/sound/voicegroups/voicegroup167.inc +++ b/sound/voicegroups/voicegroup167.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup167:: @ 86AD138 - voice_keysplit_all voicegroup002 @ 86AD138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD15C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD18C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD1F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86AD204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD21C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD228 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86AD234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD24C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86AD258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD27C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD2F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD30C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD33C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD36C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD39C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3CC - voice_keysplit voicegroup007, KeySplitTable3 @ 86AD3D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD3FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD42C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD45C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD48C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD4EC - voice_square_1_alt 60, 0, 0, 0, 0, 1, 10, 4 @ 86AD4F8 - voice_square_2_alt 60, 0, 3, 0, 2, 8, 3 @ 86AD504 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 @ 86AD510 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD51C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 6, 0 @ 86AD528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD54C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD57C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD5F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD600 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD60C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD618 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD63C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD66C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD69C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD6FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD714 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AD720 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86AD72C +voicegroup167:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 10, 4 + voice_square_2_alt 60, 0, 3, 0, 2, 8, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup168.inc b/sound/voicegroups/voicegroup168.inc index 8d4d77c20852..2bb2c3b21440 100644 --- a/sound/voicegroups/voicegroup168.inc +++ b/sound/voicegroups/voicegroup168.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup168:: @ 86AD738 - voice_keysplit_all voicegroup002 @ 86AD738 - voice_keysplit voicegroup005, KeySplitTable1 @ 86AD744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD75C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AD768 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AD774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD78C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD7F8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86AD804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD81C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD828 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86AD834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD840 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD84C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86AD858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD87C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD8F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD90C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD93C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD948 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 86AD954 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86AD960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD96C - voice_keysplit voicegroup006, KeySplitTable2 @ 86AD978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD99C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AD9FC - voice_keysplit voicegroup009, KeySplitTable5 @ 86ADA08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADA98 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86ADAA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADAB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADAC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADAD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADAE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADAEC - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 @ 86ADAF8 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 4 @ 86ADB04 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86ADB10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB7C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 @ 86ADB88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADB94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADBF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADC9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADCFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD14 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86ADD20 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86ADD2C +voicegroup168:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup169.inc b/sound/voicegroups/voicegroup169.inc index 37c24742e5c3..bac059cff457 100644 --- a/sound/voicegroups/voicegroup169.inc +++ b/sound/voicegroups/voicegroup169.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup169:: @ 86ADD38 - voice_keysplit_all voicegroup001 @ 86ADD38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADD98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADDF8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 @ 86ADE04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADE94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADED0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86ADEDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADEF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADF9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFCC - voice_keysplit voicegroup007, KeySplitTable3 @ 86ADFD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFE4 - voice_keysplit voicegroup008, KeySplitTable4 @ 86ADFF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86ADFFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE02C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE05C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE08C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0B0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 86AE0BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE0EC - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 @ 86AE0F8 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 @ 86AE104 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 @ 86AE110 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 @ 86AE11C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE14C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE17C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE1F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE20C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE23C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE26C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE29C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE2FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE314 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 @ 86AE320 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86AE32C +voicegroup169:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup170.inc b/sound/voicegroups/voicegroup170.inc index b230f32d73eb..01a33887433e 100644 --- a/sound/voicegroups/voicegroup170.inc +++ b/sound/voicegroups/voicegroup170.inc @@ -1,87 +1,87 @@ .align 2 -voicegroup170:: @ 86AE338 - voice_keysplit_all voicegroup001 @ 86AE338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE35C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE38C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE3F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE41C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE434 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE44C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE47C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE4F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE50C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE53C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE560 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 86AE56C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE59C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5CC - voice_keysplit voicegroup007, KeySplitTable3 @ 86AE5D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5E4 - voice_keysplit voicegroup008, KeySplitTable4 @ 86AE5F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE5FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE62C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE65C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE68C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE698 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86AE6A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE6EC - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 @ 86AE6F8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 @ 86AE704 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 @ 86AE710 - voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 @ 86AE71C +voicegroup170:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup171.inc b/sound/voicegroups/voicegroup171.inc index fe9cccdc7b95..2fc106983d2c 100644 --- a/sound/voicegroups/voicegroup171.inc +++ b/sound/voicegroups/voicegroup171.inc @@ -1,94 +1,94 @@ .align 2 -voicegroup171:: @ 86AE728 - voice_keysplit_all voicegroup001 @ 86AE728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE74C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE77C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE7F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE80C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE818 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE83C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE86C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE89C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE8FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE92C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE938 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 86AE944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE950 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 86AE95C - voice_keysplit voicegroup006, KeySplitTable2 @ 86AE968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE98C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9BC - voice_keysplit voicegroup007, KeySplitTable3 @ 86AE9C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AE9EC - voice_keysplit voicegroup009, KeySplitTable5 @ 86AE9F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEA88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86AEA94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEAA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEAAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEAB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEAC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEAD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEADC - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 @ 86AEAE8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 @ 86AEAF4 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 @ 86AEB00 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 @ 86AEB0C - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @ 86AEB18 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 @ 86AEB24 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 @ 86AEB30 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 @ 86AEB3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEB48 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 @ 86AEB54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 @ 86AEB60 +voicegroup171:: + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup172.inc b/sound/voicegroups/voicegroup172.inc index ee1db77156e2..af9c09334fa5 100644 --- a/sound/voicegroups/voicegroup172.inc +++ b/sound/voicegroups/voicegroup172.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup172:: @ 86AEB6C - voice_keysplit_all voicegroup002 @ 86AEB6C - voice_keysplit voicegroup005, KeySplitTable1 @ 86AEB78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEB84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEB90 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AEB9C - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AEBA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEBFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC2C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86AEC38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC5C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86AEC68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC80 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86AEC8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEC98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AECF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AED88 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86AED94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDA0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AEDAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEDF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE00 - voice_keysplit voicegroup007, KeySplitTable3 @ 86AEE0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEE9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEECC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86AEED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEEFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF20 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 5, 2 @ 86AEF2C - voice_square_2_alt 60, 0, 3, 0, 2, 6, 3 @ 86AEF38 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86AEF44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEF98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFB0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 @ 86AEFBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AEFF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF01C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF04C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF07C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF0F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF10C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF13C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF148 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AF154 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 @ 86AF160 +voicegroup172:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 3 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup173.inc b/sound/voicegroups/voicegroup173.inc index e75926269092..98a024ad298d 100644 --- a/sound/voicegroups/voicegroup173.inc +++ b/sound/voicegroups/voicegroup173.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup173:: @ 86AF16C - voice_keysplit_all voicegroup002 @ 86AF16C - voice_keysplit voicegroup005, KeySplitTable1 @ 86AF178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF190 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AF19C - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86AF1A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF1FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF208 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86AF214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF22C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 @ 86AF238 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF25C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF280 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86AF28C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 @ 86AF298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF2F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF304 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86AF310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF31C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF34C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF37C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3A0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AF3AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF3F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF400 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF40C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF43C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF46C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF49C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86AF4D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF4FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF520 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 4 @ 86AF52C - voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 @ 86AF538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF55C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF58C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5B0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AF5BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF5F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF604 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF61C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF634 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF640 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF64C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF67C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF6F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF70C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF73C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF748 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AF754 - voice_noise_alt 60, 0, 0, 0, 1, 3, 2 @ 86AF760 +voicegroup173:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 4 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 2 diff --git a/sound/voicegroups/voicegroup174.inc b/sound/voicegroups/voicegroup174.inc index face4c675da6..0a656661143a 100644 --- a/sound/voicegroups/voicegroup174.inc +++ b/sound/voicegroups/voicegroup174.inc @@ -1,160 +1,160 @@ .align 2 -voicegroup174:: @ 86AF76C - voice_keysplit_all voicegroup002 @ 86AF76C - voice_keysplit voicegroup005, KeySplitTable1 @ 86AF778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF79C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86AF7A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF7FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF808 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF82C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 @ 86AF838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF85C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 @ 86AF868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF874 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF880 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF88C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8BC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 @ 86AF8C8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 @ 86AF8D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF8F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF910 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF91C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF928 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 @ 86AF934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF94C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF97C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9A0 - voice_keysplit voicegroup006, KeySplitTable2 @ 86AF9AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AF9F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA00 - voice_keysplit voicegroup007, KeySplitTable3 @ 86AFA0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA30 - voice_keysplit voicegroup009, KeySplitTable5 @ 86AFA3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA48 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 @ 86AFA54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFA9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFAFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB20 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 @ 86AFB2C - voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 @ 86AFB38 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 @ 86AFB44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFB98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBB0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 @ 86AFBBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFBF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFC94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFCF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD00 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86AFD0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD48 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86AFD54 - voice_noise_alt 60, 0, 0, 0, 1, 3, 1 @ 86AFD60 - voice_keysplit_all voicegroup177 @ 86AFD6C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 @ 86AFD78 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 @ 86AFD84 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AFD90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFD9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFDFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFE80 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 @ 86AFE8C - voice_keysplit_all voicegroup002 @ 86AFE98 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 @ 86AFEA4 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 @ 86AFEB0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86AFEBC +voicegroup174:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 1 + voice_keysplit_all voicegroup177 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 + voice_keysplit_all voicegroup002 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup175.inc b/sound/voicegroups/voicegroup175.inc index dac5ee5beae1..6ba9fec3b4d3 100644 --- a/sound/voicegroups/voicegroup175.inc +++ b/sound/voicegroups/voicegroup175.inc @@ -1,55 +1,55 @@ .align 2 -voicegroup175:: @ 86AFEC8 - voice_keysplit_all voicegroup177 @ 86AFEC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFEE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFEEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFEF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86AFF64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFF94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 @ 86AFFE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86AFFF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B000C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B003C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B006C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B009C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B00FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B012C +voicegroup175:: + voice_keysplit_all voicegroup177 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup176.inc b/sound/voicegroups/voicegroup176.inc index 04a8b3fef65b..8b4c687b5b4f 100644 --- a/sound/voicegroups/voicegroup176.inc +++ b/sound/voicegroups/voicegroup176.inc @@ -1,51 +1,51 @@ .align 2 -voicegroup176:: @ 86B0138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B015C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B018C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B01F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B021C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0234 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0240 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B024C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B027C - voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 @ 86B0288 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 @ 86B0294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02D0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86B02DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B02F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B030C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B033C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0360 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B036C +voicegroup176:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup177.inc b/sound/voicegroups/voicegroup177.inc index 6d43470b8a69..12d57b389bdd 100644 --- a/sound/voicegroups/voicegroup177.inc +++ b/sound/voicegroups/voicegroup177.inc @@ -1,93 +1,93 @@ .align 2 -voicegroup177:: @ 86B0378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B039C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B03FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B042C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B045C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0468 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0480 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B048C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B04F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0510 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 86B051C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 @ 86B0528 - voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 86B0534 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 86B0540 - voice_directsound_no_resample 65, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 86B054C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 86B0558 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B0564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0570 - voice_directsound 68, 29, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B057C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 86B0588 - voice_directsound 72, 64, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B0594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B05A0 - voice_directsound 76, 39, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B05AC - voice_directsound 80, 89, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B05B8 - voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B05C4 - voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 @ 86B05D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B05DC - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B05E8 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86B05F4 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 86B0600 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86B060C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @ 86B0618 - voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B0624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0630 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B063C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86B0648 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 @ 86B0654 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 86B0660 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86B066C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86B0678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0690 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B069C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B06FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B072C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 86B0738 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 86B0744 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 @ 86B0750 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 86B075C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0774 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86B0780 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 86B078C - voice_directsound 50, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 86B0798 - voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 @ 86B07A4 +voicegroup177:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 65, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 68, 29, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 64, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 39, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 89, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup178.inc b/sound/voicegroups/voicegroup178.inc index ea0ee13e9e44..0062455af87d 100644 --- a/sound/voicegroups/voicegroup178.inc +++ b/sound/voicegroups/voicegroup178.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup178:: @ 86B07B0 - voice_keysplit_all voicegroup177 @ 86B07B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B07F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B081C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0828 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0834 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0840 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 204, 103, 165 @ 86B084C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0870 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B087C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08C4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 165 @ 86B08D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B08F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B090C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B093C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0960 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B096C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B099C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B09FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B64 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 @ 86B0B70 - voice_square_2_alt 60, 0, 2, 0, 2, 7, 1 @ 86B0B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0BAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0BB8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 15, 1 @ 86B0BC4 +voicegroup178:: + voice_keysplit_all voicegroup177 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 204, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 15, 1 diff --git a/sound/voicegroups/voicegroup179.inc b/sound/voicegroups/voicegroup179.inc index c98f76b033ff..f777dcb3a453 100644 --- a/sound/voicegroups/voicegroup179.inc +++ b/sound/voicegroups/voicegroup179.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup179:: @ 86B0BD0 - voice_keysplit_all voicegroup177 @ 86B0BD0 - voice_keysplit_all voicegroup176 @ 86B0BDC - voice_keysplit voicegroup005, KeySplitTable1 @ 86B0BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C60 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 @ 86B0C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 @ 86B0CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D50 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 86B0D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E04 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B0E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E64 - voice_keysplit voicegroup007, KeySplitTable3 @ 86B0E70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E7C - voice_keysplit voicegroup008, KeySplitTable4 @ 86B0E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0E94 - voice_keysplit voicegroup009, KeySplitTable5 @ 86B0EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0F84 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 0 @ 86B0F90 - voice_square_2_alt 60, 0, 0, 0, 1, 9, 0 @ 86B0F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0FA8 - voice_square_2_alt 60, 0, 3, 0, 1, 9, 0 @ 86B0FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0FD8 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 @ 86B0FE4 +voicegroup179:: + voice_keysplit_all voicegroup177 + voice_keysplit_all voicegroup176 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup180.inc b/sound/voicegroups/voicegroup180.inc index 6915bd8ddd78..1754c35de45e 100644 --- a/sound/voicegroups/voicegroup180.inc +++ b/sound/voicegroups/voicegroup180.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup180:: @ 86B0FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B0FF0 - voice_keysplit voicegroup005, KeySplitTable1 @ 86B0FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1014 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 @ 86B1020 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86B102C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B105C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1080 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B108C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B10F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B111C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B114C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B117C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B11F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1200 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B120C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1218 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B123C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B126C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1290 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B129C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B12FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B132C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B135C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B138C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13A4 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 @ 86B13B0 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 @ 86B13BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B13F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B141C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1428 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1434 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86B1440 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B144C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1458 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B147C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B14F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1500 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B150C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1518 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1524 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1530 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B153C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1554 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1560 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B156C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1578 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1584 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1590 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B159C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B15A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B15B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B15C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B15CC - voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 @ 86B15D8 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 @ 86B15E4 +voicegroup180:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup181.inc b/sound/voicegroups/voicegroup181.inc index 2b41b646c9ef..0b7e24583c03 100644 --- a/sound/voicegroups/voicegroup181.inc +++ b/sound/voicegroups/voicegroup181.inc @@ -1,50 +1,50 @@ .align 2 -voicegroup181:: @ 86B15F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B15F0 - voice_keysplit voicegroup005, KeySplitTable1 @ 86B15FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B162C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1650 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B165C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1668 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1674 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B168C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1698 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B16F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1704 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1710 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B171C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1728 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1734 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1740 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B174C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1758 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1764 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1770 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B177C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1788 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1794 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B17F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1800 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B180C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 @ 86B1818 +voicegroup181:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 diff --git a/sound/voicegroups/voicegroup182.inc b/sound/voicegroups/voicegroup182.inc index 0eb9a5f7b74a..a773b680a53f 100644 --- a/sound/voicegroups/voicegroup182.inc +++ b/sound/voicegroups/voicegroup182.inc @@ -1,91 +1,91 @@ .align 2 -voicegroup182:: @ 86B1824 - voice_keysplit_all voicegroup002 @ 86B1824 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1830 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B183C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1848 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1854 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1860 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B186C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1878 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1884 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1890 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B189C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B18FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1908 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1914 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1920 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B192C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1938 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1944 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1950 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B195C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1968 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1974 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1980 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B198C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1998 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B19F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A4C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 76 @ 86B1A58 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B1A64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1A94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1AA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1AAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1AB8 - voice_keysplit voicegroup007, KeySplitTable3 @ 86B1AC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1AD0 - voice_keysplit voicegroup008, KeySplitTable4 @ 86B1ADC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1AE8 - voice_keysplit voicegroup009, KeySplitTable5 @ 86B1AF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1B9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BD8 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 @ 86B1BE4 - voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 @ 86B1BF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1BFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C08 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 @ 86B1C14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C2C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86B1C38 +voicegroup182:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 76 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup183.inc b/sound/voicegroups/voicegroup183.inc index 29b8b05d92d3..f930e480a11c 100644 --- a/sound/voicegroups/voicegroup183.inc +++ b/sound/voicegroups/voicegroup183.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup183:: @ 86B1C44 - voice_keysplit_all voicegroup002 @ 86B1C44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1C98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1CF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D58 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86B1D64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1D94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DDC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86B1DE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1DF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1E9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1ECC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1ED8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1EFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1F98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B1FF8 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 @ 86B2004 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 @ 86B2010 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B201C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86B2028 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2034 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2040 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B204C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2058 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2064 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2070 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B207C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2088 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2094 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B20F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2100 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B210C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2118 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2124 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2130 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B213C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2148 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2154 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B216C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2178 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2184 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2190 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B219C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B21FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2208 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2214 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2220 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86B222C - voice_noise_alt 60, 0, 0, 0, 1, 3, 1 @ 86B2238 +voicegroup183:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 1 diff --git a/sound/voicegroups/voicegroup184.inc b/sound/voicegroups/voicegroup184.inc index 771c1e33a16b..d12cb031d154 100644 --- a/sound/voicegroups/voicegroup184.inc +++ b/sound/voicegroups/voicegroup184.inc @@ -1,89 +1,89 @@ .align 2 -voicegroup184:: @ 86B2244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2250 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B225C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86B2268 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2274 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2280 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B228C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2298 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22E0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86B22EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B22F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2304 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2310 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B231C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2328 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2334 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2340 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B234C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2358 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2364 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2370 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B237C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2388 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2394 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23AC - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86B23B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B23F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2400 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86B240C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2418 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2424 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2430 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B243C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2448 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2454 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2460 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B246C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2478 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2484 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2490 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B249C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B24FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2508 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2514 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2520 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B252C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2538 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2544 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2550 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B255C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2568 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2574 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2580 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B258C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2598 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B25F8 - voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 @ 86B2604 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2610 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B261C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2628 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2634 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 86B2640 +voicegroup184:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup185.inc b/sound/voicegroups/voicegroup185.inc index 3d4c08f7a79c..7b76f7ac7ba0 100644 --- a/sound/voicegroups/voicegroup185.inc +++ b/sound/voicegroups/voicegroup185.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup185:: @ 86B264C - voice_keysplit_all voicegroup002 @ 86B264C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2658 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2664 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2670 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B267C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2688 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2694 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B26E8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86B26F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2700 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B270C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2718 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2724 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2730 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B273C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2748 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2754 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2760 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B276C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2778 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2784 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2790 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B279C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 @ 86B27A8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 @ 86B27B4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86B27C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B27CC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 @ 86B27D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B27E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86B27F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B27FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2808 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 @ 86B2814 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2820 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B282C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2838 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2844 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2850 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B285C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 @ 86B2868 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2874 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 @ 86B2880 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B288C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2898 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28BC - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 @ 86B28C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28E0 - voice_keysplit voicegroup007, KeySplitTable3 @ 86B28EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B28F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2904 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2910 - voice_keysplit voicegroup009, KeySplitTable5 @ 86B291C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2928 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 @ 86B2934 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2940 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B294C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2958 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2964 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2970 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B297C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2988 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2994 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B29E8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 @ 86B29F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A00 - voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 @ 86B2A0C - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A30 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 @ 86B2A3C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 @ 86B2A48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A54 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86B2A60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2A9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2ACC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2AFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2B98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2BF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C28 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86B2C34 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86B2C40 +voicegroup185:: + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup186.inc b/sound/voicegroups/voicegroup186.inc index 82f4a680f03f..64f1460c75a2 100644 --- a/sound/voicegroups/voicegroup186.inc +++ b/sound/voicegroups/voicegroup186.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup186:: @ 86B2C4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C4C - voice_keysplit voicegroup005, KeySplitTable1 @ 86B2C58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2C94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2CF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D0C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2D9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2DFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2E98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2ED4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2EF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2F94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B2FF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3000 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B300C - voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 @ 86B3018 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3024 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3030 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B303C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3048 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3054 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3060 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B306C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3078 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3084 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3090 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B309C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B30FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3108 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3114 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3120 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B312C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3138 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3144 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3150 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B315C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3168 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3174 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3180 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B318C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B31F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B321C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3228 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3234 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86B3240 +voicegroup186:: + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup187.inc b/sound/voicegroups/voicegroup187.inc index 9afa51349ec9..c4b1af710aee 100644 --- a/sound/voicegroups/voicegroup187.inc +++ b/sound/voicegroups/voicegroup187.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup187:: @ 86B324C - voice_keysplit_all voicegroup002 @ 86B324C - voice_keysplit voicegroup005, KeySplitTable1 @ 86B3258 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3264 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3270 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B327C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3288 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3294 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B32F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3300 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B330C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 @ 86B3318 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3324 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3330 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B333C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 @ 86B3348 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3354 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3360 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 @ 86B336C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3378 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3384 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3390 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B339C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B33FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3408 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3414 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3420 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B342C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3438 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3444 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3450 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B345C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3468 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 @ 86B3474 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3480 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B348C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3498 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34E0 - voice_keysplit voicegroup007, KeySplitTable3 @ 86B34EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B34F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3504 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3510 - voice_keysplit voicegroup009, KeySplitTable5 @ 86B351C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3528 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3534 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3540 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B354C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3558 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3564 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3570 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B357C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3588 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3594 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86B35B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B35F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3600 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 @ 86B360C - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 @ 86B3618 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 @ 86B3624 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3630 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B363C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3648 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3654 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3660 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B366C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3678 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3684 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3690 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 @ 86B369C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B36FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3708 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3714 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3720 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B372C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3738 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3744 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3750 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B375C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3768 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3774 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3780 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B378C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3798 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B37F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3804 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3810 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B381C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3828 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 @ 86B3834 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 @ 86B3840 +voicegroup187:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup188.inc b/sound/voicegroups/voicegroup188.inc index a67df5a3af33..0f071fca5185 100644 --- a/sound/voicegroups/voicegroup188.inc +++ b/sound/voicegroups/voicegroup188.inc @@ -1,131 +1,131 @@ .align 2 -voicegroup188:: @ 86B384C - voice_keysplit_all voicegroup002 @ 86B384C - voice_keysplit voicegroup005, KeySplitTable1 @ 86B3858 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3864 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3870 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86B387C - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86B3888 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3894 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B38E8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86B38F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3900 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B390C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 @ 86B3918 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3924 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3930 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B393C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3948 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3954 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3960 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86B396C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 @ 86B3978 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3984 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3990 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B399C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86B39F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B39FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A80 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B3A8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3A98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3ABC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3AF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B28 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B34 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B40 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B4C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B70 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B7C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3B94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BAC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86B3BB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BD0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BE8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3BF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C00 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 @ 86B3C0C - voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 @ 86B3C18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C60 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C6C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3C90 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 @ 86B3C9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CE4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3CFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D08 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D14 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D20 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D2C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D44 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D50 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D5C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D68 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D74 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D80 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D8C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3D98 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DA4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DB0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DBC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DC8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DD4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DE0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DEC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3DF8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E04 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E10 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E1C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E28 - voice_noise_alt 60, 0, 0, 0, 2, 7, 0 @ 86B3E34 - voice_noise_alt 60, 0, 0, 0, 1, 9, 1 @ 86B3E40 +voicegroup188:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 7, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 1 diff --git a/sound/voicegroups/voicegroup189.inc b/sound/voicegroups/voicegroup189.inc index 4593c06f0b0d..462948118dee 100644 --- a/sound/voicegroups/voicegroup189.inc +++ b/sound/voicegroups/voicegroup189.inc @@ -1,95 +1,95 @@ .align 2 -voicegroup189:: @ 86B3E4C - voice_keysplit_all voicegroup002 @ 86B3E4C - voice_keysplit voicegroup005, KeySplitTable1 @ 86B3E58 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E64 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E70 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86B3E7C - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86B3E88 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3E94 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EA0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EAC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EB8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EC4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3ED0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EDC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3EE8 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 @ 86B3EF4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F00 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F0C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 @ 86B3F18 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F24 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F30 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F3C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F48 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F54 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F60 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 @ 86B3F6C - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 @ 86B3F78 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F84 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F90 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3F9C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FA8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FB4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FC0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FCC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FD8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FE4 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 @ 86B3FF0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B3FFC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4008 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4014 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4020 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B402C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4038 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4044 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4050 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B405C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4068 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4074 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4080 - voice_keysplit voicegroup006, KeySplitTable2 @ 86B408C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4098 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B40F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4104 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4110 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B411C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4128 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4134 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4140 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B414C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4158 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4164 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4170 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B417C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4194 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41A0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41AC - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 @ 86B41B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41DC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B41F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4200 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 @ 86B420C - voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 @ 86B4218 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 @ 86B4224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4230 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B423C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4254 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4260 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B426C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4278 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4284 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4290 +voicegroup189:: + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup190.inc b/sound/voicegroups/voicegroup190.inc index 9dc83deed2e6..f8dacda624f5 100644 --- a/sound/voicegroups/voicegroup190.inc +++ b/sound/voicegroups/voicegroup190.inc @@ -1,90 +1,90 @@ .align 2 -voicegroup190:: @ 86B429C - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 @ 86B429C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B42FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4308 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4314 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4320 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B432C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4338 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4344 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4350 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B435C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4368 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4374 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4380 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B438C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4398 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43A4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43B0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43BC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43C8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43D4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43E0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43EC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B43F8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4404 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4410 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B441C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4428 - voice_noise_alt 60, 0, 0, 0, 2, 7, 0 @ 86B4434 - voice_noise_alt 60, 0, 0, 0, 1, 9, 1 @ 86B4440 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 @ 86B444C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4458 - voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @ 86B4464 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4470 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B447C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4488 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4494 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44A0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 @ 86B44AC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44B8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44C4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44D0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44DC - voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B44E8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B44F4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4500 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B450C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4518 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 @ 86B4524 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86B4530 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @ 86B453C - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B4548 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4554 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B4560 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86B456C - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 @ 86B4578 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 @ 86B4584 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86B4590 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @ 86B459C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45A8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45B4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45C0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45CC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45D8 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45E4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45F0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B45FC - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4608 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4614 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4620 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B462C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4638 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4644 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4650 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 86B465C - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 @ 86B4668 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 @ 86B4674 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 @ 86B4680 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B468C - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @ 86B4698 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 @ 86B46A4 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 @ 86B46B0 +voicegroup190:: + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 7, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 1 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 From bfa824f76104404a6110aed65fe0b29b6697218f Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 23 Jul 2021 13:18:24 -0300 Subject: [PATCH 243/762] Removed unused status ailment constants --- include/constants/pokemon.h | 9 --------- 1 file changed, 9 deletions(-) diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 51ef0c015b0d..63c0318240d0 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -272,15 +272,6 @@ #define MAX_FRIENDSHIP 0xFF -#define STATUS_PRIMARY_NONE 0 -#define STATUS_PRIMARY_POISON 1 -#define STATUS_PRIMARY_PARALYSIS 2 -#define STATUS_PRIMARY_SLEEP 3 -#define STATUS_PRIMARY_FREEZE 4 -#define STATUS_PRIMARY_BURN 5 -#define STATUS_PRIMARY_POKERUS 6 -#define STATUS_PRIMARY_FAINTED 7 - #define MAX_PER_STAT_IVS 31 #define MAX_IV_MASK 31 #define USE_RANDOM_IVS (MAX_PER_STAT_IVS + 1) From 71de6ea93901b72a0dfb514d3e871407901c117c Mon Sep 17 00:00:00 2001 From: sphericalice Date: Sat, 24 Jul 2021 18:54:37 +0100 Subject: [PATCH 244/762] Use the correct constant for PSS page comparison --- src/pokemon_summary_screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 31505b7c9b3c..097cb30a456b 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3627,7 +3627,7 @@ static void PrintMoveDetails(u16 move) FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); if (move != MOVE_NONE) { - if (sMonSummaryScreen->currPageIndex == SUMMARY_MODE_BOX) + if (sMonSummaryScreen->currPageIndex == PSS_PAGE_BATTLE_MOVES) { PrintMovePowerAndAccuracy(move); PrintTextOnWindow(windowId, gMoveDescriptionPointers[move - 1], 6, 1, 0, 0); From 8012f4b25a5802bbfc0c10e2237b08f268fe114c Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 26 Jul 2021 20:14:19 -0300 Subject: [PATCH 245/762] Re-ordered the hidden item flags list Instead of sorting them by location, it makes more sense to sort them by their value. --- include/constants/flags.h | 140 +++++++++++++++++++------------------- 1 file changed, 70 insertions(+), 70 deletions(-) diff --git a/include/constants/flags.h b/include/constants/flags.h index 48606962a1cc..950fd28f1805 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -535,120 +535,120 @@ #define FLAG_MYSTERY_EVENT_14 0x1F2 #define FLAG_MYSTERY_EVENT_15 0x1F3 -// Hidden Items -- sorted by location +// Hidden Items #define FLAG_HIDDEN_ITEMS_START 0x1F4 +#define FLAG_HIDDEN_ITEM_LAVARIDGE_TOWN_ICE_HEAL (FLAG_HIDDEN_ITEMS_START + 0x00) #define FLAG_HIDDEN_ITEM_TRICK_HOUSE_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x01) +#define FLAG_HIDDEN_ITEM_ROUTE_111_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x02) +#define FLAG_HIDDEN_ITEM_ROUTE_113_ETHER (FLAG_HIDDEN_ITEMS_START + 0x03) +#define FLAG_HIDDEN_ITEM_ROUTE_114_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x04) +#define FLAG_HIDDEN_ITEM_ROUTE_119_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x05) +#define FLAG_HIDDEN_ITEM_ROUTE_119_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x06) +#define FLAG_HIDDEN_ITEM_ROUTE_123_SUPER_REPEL (FLAG_HIDDEN_ITEMS_START + 0x07) #define FLAG_HIDDEN_ITEM_UNDERWATER_124_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x08) #define FLAG_HIDDEN_ITEM_UNDERWATER_124_GREEN_SHARD (FLAG_HIDDEN_ITEMS_START + 0x09) #define FLAG_HIDDEN_ITEM_UNDERWATER_124_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0A) #define FLAG_HIDDEN_ITEM_UNDERWATER_124_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0B) +#define FLAG_HIDDEN_ITEM_UNDERWATER_126_BLUE_SHARD (FLAG_HIDDEN_ITEMS_START + 0x0C) #define FLAG_HIDDEN_ITEM_UNDERWATER_124_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x0D) -#define FLAG_HIDDEN_ITEM_UNDERWATER_124_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x24) -#define FLAG_HIDDEN_ITEM_UNDERWATER_124_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x26) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x0E) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x0F) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x10) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_PEARL (FLAG_HIDDEN_ITEMS_START + 0x11) -#define FLAG_HIDDEN_ITEM_UNDERWATER_126_IRON (FLAG_HIDDEN_ITEMS_START + 0x13) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_YELLOW_SHARD (FLAG_HIDDEN_ITEMS_START + 0x12) +#define FLAG_HIDDEN_ITEM_UNDERWATER_126_IRON (FLAG_HIDDEN_ITEMS_START + 0x13) #define FLAG_HIDDEN_ITEM_UNDERWATER_126_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x14) -#define FLAG_HIDDEN_ITEM_UNDERWATER_126_BLUE_SHARD (FLAG_HIDDEN_ITEMS_START + 0x0C) #define FLAG_HIDDEN_ITEM_UNDERWATER_127_STAR_PIECE (FLAG_HIDDEN_ITEMS_START + 0x15) #define FLAG_HIDDEN_ITEM_UNDERWATER_127_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x16) #define FLAG_HIDDEN_ITEM_UNDERWATER_127_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x17) #define FLAG_HIDDEN_ITEM_UNDERWATER_127_RED_SHARD (FLAG_HIDDEN_ITEMS_START + 0x18) #define FLAG_HIDDEN_ITEM_UNDERWATER_128_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x19) #define FLAG_HIDDEN_ITEM_UNDERWATER_128_PEARL (FLAG_HIDDEN_ITEMS_START + 0x1A) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B) #define FLAG_HIDDEN_ITEM_FALLARBOR_TOWN_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x1C) -#define FLAG_HIDDEN_ITEM_LAVARIDGE_TOWN_ICE_HEAL (FLAG_HIDDEN_ITEMS_START + 0x00) +#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D) +#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY (FLAG_HIDDEN_ITEMS_START + 0x1F) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY (FLAG_HIDDEN_ITEMS_START + 0x20) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY (FLAG_HIDDEN_ITEMS_START + 0x21) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY (FLAG_HIDDEN_ITEMS_START + 0x22) -#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x65) -#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_ZINC (FLAG_HIDDEN_ITEMS_START + 0x66) -#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x67) -#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_IRON (FLAG_HIDDEN_ITEMS_START + 0x68) -#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_1 (FLAG_HIDDEN_ITEMS_START + 0x30) -#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_2 (FLAG_HIDDEN_ITEMS_START + 0x31) -#define FLAG_HIDDEN_ITEM_JAGGED_PASS_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x4C) -#define FLAG_HIDDEN_ITEM_JAGGED_PASS_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x4D) -#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B) -#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x2B) -#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x4B) -#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D) -#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x4E) -#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_ZINC (FLAG_HIDDEN_ITEMS_START + 0x4F) -#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x50) -#define FLAG_HIDDEN_ITEM_NAVEL_ROCK_TOP_SACRED_ASH (FLAG_HIDDEN_ITEMS_START + 0x6D) -#define FLAG_HIDDEN_ITEM_PETALBURG_CITY_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x5F) -#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POTION (FLAG_HIDDEN_ITEMS_START + 0x3A) -#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_1 (FLAG_HIDDEN_ITEMS_START + 0x3B) -#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_2 (FLAG_HIDDEN_ITEMS_START + 0x3C) -#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3D) -#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_ELIXIR (FLAG_HIDDEN_ITEMS_START + 0x52) -#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_MAX_REPEL (FLAG_HIDDEN_ITEMS_START + 0x53) -#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6A) -#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_ZINC (FLAG_HIDDEN_ITEMS_START + 0x6B) -#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x6C) -#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_FULL_RESTORE (FLAG_HIDDEN_ITEMS_START + 0x69) #define FLAG_HIDDEN_ITEM_SS_TIDAL_LOWER_DECK_LEFTOVERS (FLAG_HIDDEN_ITEMS_START + 0x23) -#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_1F_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x51) -#define FLAG_HIDDEN_ITEM_ROUTE_104_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2C) -#define FLAG_HIDDEN_ITEM_ROUTE_104_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3E) +#define FLAG_HIDDEN_ITEM_UNDERWATER_124_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x24) #define FLAG_HIDDEN_ITEM_ROUTE_104_POTION (FLAG_HIDDEN_ITEMS_START + 0x25) -#define FLAG_HIDDEN_ITEM_ROUTE_104_ANTIDOTE (FLAG_HIDDEN_ITEMS_START + 0x55) -#define FLAG_HIDDEN_ITEM_ROUTE_104_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x58) -#define FLAG_HIDDEN_ITEM_ROUTE_105_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x59) -#define FLAG_HIDDEN_ITEM_ROUTE_105_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x6F) -#define FLAG_HIDDEN_ITEM_ROUTE_106_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3F) +#define FLAG_HIDDEN_ITEM_UNDERWATER_124_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x26) +#define FLAG_HIDDEN_ITEM_ROUTE_121_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x27) +#define FLAG_HIDDEN_ITEM_ROUTE_121_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x28) +#define FLAG_HIDDEN_ITEM_ROUTE_123_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x29) +#define FLAG_HIDDEN_ITEM_ROUTE_113_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x2A) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x2B) +#define FLAG_HIDDEN_ITEM_ROUTE_104_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2C) +#define FLAG_HIDDEN_ITEM_ROUTE_116_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2D) #define FLAG_HIDDEN_ITEM_ROUTE_106_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x2E) #define FLAG_HIDDEN_ITEM_ROUTE_106_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x2F) -#define FLAG_HIDDEN_ITEM_ROUTE_108_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x56) +#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_1 (FLAG_HIDDEN_ITEMS_START + 0x30) +#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_2 (FLAG_HIDDEN_ITEMS_START + 0x31) #define FLAG_HIDDEN_ITEM_ROUTE_109_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x32) -#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x34) #define FLAG_HIDDEN_ITEM_ROUTE_109_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x33) -#define FLAG_HIDDEN_ITEM_ROUTE_109_ETHER (FLAG_HIDDEN_ITEMS_START + 0x40) -#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5A) -#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5B) -#define FLAG_HIDDEN_ITEM_ROUTE_110_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x36) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x34) #define FLAG_HIDDEN_ITEM_ROUTE_110_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x35) -#define FLAG_HIDDEN_ITEM_ROUTE_110_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x41) +#define FLAG_HIDDEN_ITEM_ROUTE_110_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x36) #define FLAG_HIDDEN_ITEM_ROUTE_110_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x37) -#define FLAG_HIDDEN_ITEM_ROUTE_111_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x02) #define FLAG_HIDDEN_ITEM_ROUTE_111_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x38) #define FLAG_HIDDEN_ITEM_ROUTE_111_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x39) -#define FLAG_HIDDEN_ITEM_ROUTE_113_ETHER (FLAG_HIDDEN_ITEMS_START + 0x03) -#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E) -#define FLAG_HIDDEN_ITEM_ROUTE_113_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x62) -#define FLAG_HIDDEN_ITEM_ROUTE_114_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x04) -#define FLAG_HIDDEN_ITEM_ROUTE_113_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x2A) -#define FLAG_HIDDEN_ITEM_ROUTE_115_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x61) -#define FLAG_HIDDEN_ITEM_ROUTE_116_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2D) -#define FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES (FLAG_HIDDEN_ITEMS_START + 0x60) -#define FLAG_HIDDEN_ITEM_ROUTE_117_REPEL (FLAG_HIDDEN_ITEMS_START + 0x48) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POTION (FLAG_HIDDEN_ITEMS_START + 0x3A) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_1 (FLAG_HIDDEN_ITEMS_START + 0x3B) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_2 (FLAG_HIDDEN_ITEMS_START + 0x3C) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3D) +#define FLAG_HIDDEN_ITEM_ROUTE_104_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3E) +#define FLAG_HIDDEN_ITEM_ROUTE_106_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3F) +#define FLAG_HIDDEN_ITEM_ROUTE_109_ETHER (FLAG_HIDDEN_ITEMS_START + 0x40) +#define FLAG_HIDDEN_ITEM_ROUTE_110_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x41) #define FLAG_HIDDEN_ITEM_ROUTE_118_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x42) #define FLAG_HIDDEN_ITEM_ROUTE_118_IRON (FLAG_HIDDEN_ITEMS_START + 0x43) -#define FLAG_HIDDEN_ITEM_ROUTE_119_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x05) -#define FLAG_HIDDEN_ITEM_ROUTE_119_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x06) #define FLAG_HIDDEN_ITEM_ROUTE_119_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x44) -#define FLAG_HIDDEN_ITEM_ROUTE_119_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x57) -#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_1 (FLAG_HIDDEN_ITEMS_START + 0x47) -#define FLAG_HIDDEN_ITEM_ROUTE_120_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x54) #define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_2 (FLAG_HIDDEN_ITEMS_START + 0x45) #define FLAG_HIDDEN_ITEM_ROUTE_120_ZINC (FLAG_HIDDEN_ITEMS_START + 0x46) -#define FLAG_HIDDEN_ITEM_ROUTE_121_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x27) -#define FLAG_HIDDEN_ITEM_ROUTE_121_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x28) +#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_1 (FLAG_HIDDEN_ITEMS_START + 0x47) +#define FLAG_HIDDEN_ITEM_ROUTE_117_REPEL (FLAG_HIDDEN_ITEMS_START + 0x48) #define FLAG_HIDDEN_ITEM_ROUTE_121_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x49) -#define FLAG_HIDDEN_ITEM_ROUTE_121_MAX_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x64) -#define FLAG_HIDDEN_ITEM_ROUTE_123_SUPER_REPEL (FLAG_HIDDEN_ITEMS_START + 0x07) -#define FLAG_HIDDEN_ITEM_ROUTE_123_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x29) #define FLAG_HIDDEN_ITEM_ROUTE_123_HYPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x4A) -#define FLAG_HIDDEN_ITEM_ROUTE_123_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x63) -#define FLAG_HIDDEN_ITEM_ROUTE_123_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6E) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x4B) +#define FLAG_HIDDEN_ITEM_JAGGED_PASS_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x4C) +#define FLAG_HIDDEN_ITEM_JAGGED_PASS_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x4D) +#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x4E) +#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_ZINC (FLAG_HIDDEN_ITEMS_START + 0x4F) +#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x50) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_1F_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x51) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_ELIXIR (FLAG_HIDDEN_ITEMS_START + 0x52) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_MAX_REPEL (FLAG_HIDDEN_ITEMS_START + 0x53) +#define FLAG_HIDDEN_ITEM_ROUTE_120_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x54) +#define FLAG_HIDDEN_ITEM_ROUTE_104_ANTIDOTE (FLAG_HIDDEN_ITEMS_START + 0x55) +#define FLAG_HIDDEN_ITEM_ROUTE_108_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x56) +#define FLAG_HIDDEN_ITEM_ROUTE_119_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x57) +#define FLAG_HIDDEN_ITEM_ROUTE_104_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x58) +#define FLAG_HIDDEN_ITEM_ROUTE_105_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x59) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5A) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5B) #define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x5C) #define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5D) #define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5E) +#define FLAG_HIDDEN_ITEM_PETALBURG_CITY_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x5F) +#define FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES (FLAG_HIDDEN_ITEMS_START + 0x60) +#define FLAG_HIDDEN_ITEM_ROUTE_115_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x61) +#define FLAG_HIDDEN_ITEM_ROUTE_113_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x62) +#define FLAG_HIDDEN_ITEM_ROUTE_123_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x63) +#define FLAG_HIDDEN_ITEM_ROUTE_121_MAX_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x64) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x65) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_ZINC (FLAG_HIDDEN_ITEMS_START + 0x66) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x67) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_IRON (FLAG_HIDDEN_ITEMS_START + 0x68) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_FULL_RESTORE (FLAG_HIDDEN_ITEMS_START + 0x69) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6A) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_ZINC (FLAG_HIDDEN_ITEMS_START + 0x6B) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x6C) +#define FLAG_HIDDEN_ITEM_NAVEL_ROCK_TOP_SACRED_ASH (FLAG_HIDDEN_ITEMS_START + 0x6D) +#define FLAG_HIDDEN_ITEM_ROUTE_123_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6E) +#define FLAG_HIDDEN_ITEM_ROUTE_105_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x6F) #define FLAG_UNUSED_0x264 0x264 // Unused Flag #define FLAG_UNUSED_0x265 0x265 // Unused Flag From 602855ea99d8015ef5b7709f6fb1e9fd167239e2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 19 Jan 2021 04:03:51 -0500 Subject: [PATCH 246/762] Document frontier pass --- gflib/malloc.h | 2 + graphics/frontier_pass/{tiles.bin => bg.bin} | Bin graphics/frontier_pass/{tiles.pal => bg.pal} | 0 graphics/frontier_pass/{tiles.png => bg.png} | Bin .../{tilemap1.bin => cancel.bin} | Bin .../{tilemap2.bin => cancel_highlighted.bin} | Bin .../{tiles2.png => map_and_card.png} | Bin .../{unknown_571298.bin => unused.bin} | 0 include/graphics.h | 12 +- src/frontier_pass.c | 676 ++++++++++-------- src/graphics.c | 14 +- 11 files changed, 390 insertions(+), 314 deletions(-) rename graphics/frontier_pass/{tiles.bin => bg.bin} (100%) rename graphics/frontier_pass/{tiles.pal => bg.pal} (100%) rename graphics/frontier_pass/{tiles.png => bg.png} (100%) rename graphics/frontier_pass/{tilemap1.bin => cancel.bin} (100%) rename graphics/frontier_pass/{tilemap2.bin => cancel_highlighted.bin} (100%) rename graphics/frontier_pass/{tiles2.png => map_and_card.png} (100%) rename graphics/frontier_pass/{unknown_571298.bin => unused.bin} (100%) diff --git a/gflib/malloc.h b/gflib/malloc.h index f2dcf6d46e29..8d49e0be7df4 100644 --- a/gflib/malloc.h +++ b/gflib/malloc.h @@ -12,6 +12,8 @@ ptr = NULL; \ } +#define TRY_FREE_AND_SET_NULL(ptr) if (ptr != NULL) FREE_AND_SET_NULL(ptr) + extern u8 gHeap[]; void *Alloc(u32 size); diff --git a/graphics/frontier_pass/tiles.bin b/graphics/frontier_pass/bg.bin similarity index 100% rename from graphics/frontier_pass/tiles.bin rename to graphics/frontier_pass/bg.bin diff --git a/graphics/frontier_pass/tiles.pal b/graphics/frontier_pass/bg.pal similarity index 100% rename from graphics/frontier_pass/tiles.pal rename to graphics/frontier_pass/bg.pal diff --git a/graphics/frontier_pass/tiles.png b/graphics/frontier_pass/bg.png similarity index 100% rename from graphics/frontier_pass/tiles.png rename to graphics/frontier_pass/bg.png diff --git a/graphics/frontier_pass/tilemap1.bin b/graphics/frontier_pass/cancel.bin similarity index 100% rename from graphics/frontier_pass/tilemap1.bin rename to graphics/frontier_pass/cancel.bin diff --git a/graphics/frontier_pass/tilemap2.bin b/graphics/frontier_pass/cancel_highlighted.bin similarity index 100% rename from graphics/frontier_pass/tilemap2.bin rename to graphics/frontier_pass/cancel_highlighted.bin diff --git a/graphics/frontier_pass/tiles2.png b/graphics/frontier_pass/map_and_card.png similarity index 100% rename from graphics/frontier_pass/tiles2.png rename to graphics/frontier_pass/map_and_card.png diff --git a/graphics/frontier_pass/unknown_571298.bin b/graphics/frontier_pass/unused.bin similarity index 100% rename from graphics/frontier_pass/unknown_571298.bin rename to graphics/frontier_pass/unused.bin diff --git a/include/graphics.h b/include/graphics.h index 9be05f38eb18..f4ad5ed9e6c3 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4958,13 +4958,13 @@ extern const u32 gKantoTrainerCardFrontLink_Tilemap[]; extern const u32 gHoennTrainerCardBg_Tilemap[]; // Frontier Pass -extern const u32 gUnknown_08DE08C8[]; -extern const u32 gUnknown_08DE2084[]; -extern const u32 gUnknown_08DE3350[]; -extern const u32 gUnknown_08DE3374[]; -extern const u32 gUnknown_08DE3060[]; +extern const u32 gFrontierPassBg_Gfx[]; +extern const u32 gFrontierPassBg_Tilemap[]; +extern const u16 gFrontierPassBg_Pal[][16]; +extern const u32 gFrontierPassMapAndCard_Gfx[]; +extern const u32 gFrontierPassCancelButton_Tilemap[]; +extern const u32 gFrontierPassCancelButtonHighlighted_Tilemap[]; extern const u32 gFrontierPassMedals_Gfx[]; -extern const u16 gUnknown_08DE07C8[][16]; extern const u16 gFrontierPassCursor_Pal[]; extern const u16 gFrontierPassMedalsGold_Pal[]; extern const u16 gFrontierPassMedalsSilver_Pal[]; diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 2de27c36bd61..3be374fbda12 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -38,14 +38,14 @@ enum WINDOW_BATTLE_RECORD, WINDOW_BATTLE_POINTS, WINDOW_DESCRIPTION, - WINDOW_4, + WINDOW_DUMMY, WINDOW_COUNT }; // Windows displayed in the facilities map view. enum { - MAP_WINDOW_0, + MAP_WINDOW_UNUSED, // Overlaps the "Battle Frontier" title area of the map MAP_WINDOW_NAME, MAP_WINDOW_DESCRIPTION, MAP_WINDOW_COUNT @@ -59,9 +59,39 @@ enum CURSOR_AREA_RECORD, CURSOR_AREA_CANCEL, CURSOR_AREA_POINTS, - CURSOR_AREA_EARNED_SYMBOLS, // The window. - CURSOR_AREA_SYMBOL, // All 7 symbols. - CURSOR_AREA_COUNT = CURSOR_AREA_SYMBOL + NUM_FRONTIER_FACILITIES, + CURSOR_AREA_EARNED_SYMBOLS, // The window containing the symbols + CURSOR_AREA_SYMBOL_TOWER, + CURSOR_AREA_SYMBOL_DOME, + CURSOR_AREA_SYMBOL_PALACE, + CURSOR_AREA_SYMBOL_ARENA, + CURSOR_AREA_SYMBOL_FACTORY, + CURSOR_AREA_SYMBOL_PIKE, + CURSOR_AREA_SYMBOL_PYRAMID, + CURSOR_AREA_COUNT +}; + +// Start of symbol cursor areas +#define CURSOR_AREA_SYMBOL CURSOR_AREA_SYMBOL_TOWER + +enum { + MAP_INDICATOR_RECTANGLE, + MAP_INDICATOR_SQUARE, +}; + +enum { + TAG_CURSOR, + TAG_MAP_INDICATOR, + TAG_MEDAL_SILVER, + TAG_MEDAL_GOLD, + TAG_HEAD_MALE, + TAG_HEAD_FEMALE, +}; + +// Error return codes. Never read +enum { + SUCCESS, + ERR_ALREADY_DONE, + ERR_ALLOC_FAILED, }; struct FrontierPassData @@ -73,25 +103,26 @@ struct FrontierPassData s16 cursorY; u8 cursorArea; u8 previousCursorArea; - u8 hasBattleRecord:1; - u8 unkE:3; + bool8 hasBattleRecord:1; + u8 areaToShow:3; u8 trainerStars:4; - u8 facilitySymbols[NUM_FRONTIER_FACILITIES]; + u8 facilitySymbols[NUM_FRONTIER_FACILITIES]; // 0: no symbol, 1: silver, 2: gold }; struct FrontierPassGfx { struct Sprite *cursorSprite; struct Sprite *symbolSprites[NUM_FRONTIER_FACILITIES]; - u8 *unk20; - u8 *unk24; - u8 *unk28; - bool8 setAffine; - s16 unk2E; - s16 unk30; - u8 tilemapBuff1[0x1000]; - u8 tilemapBuff2[0x1000]; - u8 tilemapBuff3[0x400]; + // These 3 tilemaps are used to overwrite the respective area when highlighted + u8 *mapAndCardZoomTilemap; + u8 *mapAndCardTilemap; + u8 *battleRecordTilemap; + bool8 zooming; + s16 scaleX; + s16 scaleY; + u8 tilemapBuff1[BG_SCREEN_SIZE * 2]; + u8 tilemapBuff2[BG_SCREEN_SIZE * 2]; + u8 tilemapBuff3[BG_SCREEN_SIZE / 2]; }; struct FrontierPassSaved @@ -109,9 +140,9 @@ struct FrontierMapData struct Sprite *mapIndicatorSprite; u8 cursorPos; u8 unused; - u8 tilemapBuff0[0x1000]; - u8 tilemapBuff1[0x1000]; - u8 tilemapBuff2[0x1000]; + u8 tilemapBuff0[BG_SCREEN_SIZE * 2]; + u8 tilemapBuff1[BG_SCREEN_SIZE * 2]; + u8 tilemapBuff2[BG_SCREEN_SIZE * 2]; }; static EWRAM_DATA struct FrontierPassData *sPassData = NULL; @@ -119,37 +150,39 @@ static EWRAM_DATA struct FrontierPassGfx *sPassGfx = NULL; static EWRAM_DATA struct FrontierMapData *sMapData = NULL; static EWRAM_DATA struct FrontierPassSaved sSavedPassData = {0}; -// This file's functions. static u32 AllocateFrontierPassData(void (*callback)(void)); static void ShowFrontierMap(void (*callback)(void)); static void CB2_InitFrontierPass(void); -static void sub_80C629C(void); +static void DrawFrontierPassBg(void); static void FreeCursorAndSymbolSprites(void); static void LoadCursorAndSymbolSprites(void); static u32 FreeFrontierPassData(void); static bool32 InitFrontierPass(void); static bool32 HideFrontierPass(void); -static void Task_HandleFrontierPassInput(u8 taskId); -static void Task_DoFadeEffect(u8 taskId); -static void sub_80C6104(u8 cursorArea, u8 previousCursorArea); -static void PrintAreaDescription(u8 cursorArea); -static void sub_80C5F58(bool8 arg0, bool8 arg1); -static void SpriteCb_Dummy(struct Sprite *sprite); - -// Const rom data. -static const u16 sMaleHeadPalette[] = INCBIN_U16("graphics/frontier_pass/map_heads.gbapal"); -static const u16 sFemaleHeadPalette[] = INCBIN_U16("graphics/frontier_pass/map_heads_female.gbapal"); -static const u32 gUnknown_0856FBBC[] = INCBIN_U32("graphics/frontier_pass/map_screen.4bpp.lz"); -static const u32 sCursorGfx[] = INCBIN_U32("graphics/frontier_pass/cursor.4bpp.lz"); -static const u32 sHeadsGfx[] = INCBIN_U32("graphics/frontier_pass/map_heads.4bpp.lz"); -static const u32 sMapCursorGfx[] = INCBIN_U32("graphics/frontier_pass/map_cursor.4bpp.lz"); -static const u32 gUnknown_08570E00[] = INCBIN_U32("graphics/frontier_pass/map_screen.bin.lz"); -static const u32 gUnknown_08571060[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card.bin.lz"); -static const u32 gUnknown_08571298[] = INCBIN_U32("graphics/frontier_pass/unknown_571298.bin"); -static const u32 gUnknown_085712C0[] = INCBIN_U32("graphics/frontier_pass/record_frame.bin.lz"); -static const u32 gUnknown_085712F8[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card_affine.bin.lz"); - -static const s16 gUnknown_085713E0[][2] = {{216, 32}, {216, 128}}; +static void Task_HandleFrontierPassInput(u8); +static void Task_PassAreaZoom(u8); +static void UpdateAreaHighlight(u8, u8); +static void PrintAreaDescription(u8); +static void ShowHideZoomingArea(bool8, bool8); +static void SpriteCB_PlayerHead(struct Sprite *); + +static const u16 sMaleHead_Pal[] = INCBIN_U16("graphics/frontier_pass/map_heads.gbapal"); +static const u16 sFemaleHead_Pal[] = INCBIN_U16("graphics/frontier_pass/map_heads_female.gbapal"); +static const u32 sMapScreen_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_screen.4bpp.lz"); +static const u32 sCursor_Gfx[] = INCBIN_U32("graphics/frontier_pass/cursor.4bpp.lz"); +static const u32 sHeads_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_heads.4bpp.lz"); +static const u32 sMapCursor_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_cursor.4bpp.lz"); +static const u32 sMapScreen_Tilemap[] = INCBIN_U32("graphics/frontier_pass/map_screen.bin.lz"); +static const u32 sMapAndCard_ZoomedOut_Tilemap[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card.bin.lz"); +static const u32 sUnusedData[] = INCBIN_U32("graphics/frontier_pass/unused.bin"); +static const u32 sBattleRecord_Tilemap[] = INCBIN_U32("graphics/frontier_pass/record_frame.bin.lz"); +static const u32 sMapAndCard_Zooming_Tilemap[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card_affine.bin.lz"); + +static const s16 sBgAffineCoords[][2] = +{ + [CURSOR_AREA_MAP - 1] = {216, 32}, + [CURSOR_AREA_CARD - 1] = {216, 128} +}; static const struct BgTemplate sPassBgTemplates[] = { @@ -213,9 +246,9 @@ static const struct BgTemplate sMapBgTemplates[] = }, }; -static const struct WindowTemplate sPassWindowTemplates[] = +static const struct WindowTemplate sPassWindowTemplates[WINDOW_COUNT] = { - { + [WINDOW_EARNED_SYMBOLS] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 3, @@ -224,7 +257,7 @@ static const struct WindowTemplate sPassWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x1, }, - { + [WINDOW_BATTLE_RECORD] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 10, @@ -233,7 +266,7 @@ static const struct WindowTemplate sPassWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x26, }, - { + [WINDOW_BATTLE_POINTS] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 13, @@ -242,7 +275,7 @@ static const struct WindowTemplate sPassWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x4B, }, - { + [WINDOW_DESCRIPTION] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 18, @@ -256,7 +289,7 @@ static const struct WindowTemplate sPassWindowTemplates[] = static const struct WindowTemplate sMapWindowTemplates[] = { - { + [MAP_WINDOW_UNUSED] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 1, @@ -265,7 +298,7 @@ static const struct WindowTemplate sMapWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x1, }, - { + [MAP_WINDOW_NAME] = { .bg = 0, .tilemapLeft = 20, .tilemapTop = 1, @@ -274,7 +307,7 @@ static const struct WindowTemplate sMapWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x4D, }, - { + [MAP_WINDOW_DESCRIPTION] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 16, @@ -300,159 +333,162 @@ struct s16 xStart; s16 xEnd; } -static const sPassAreasLayout[] = -{ - {28, 76, 132, 220}, - {84, 132, 132, 220}, - {80, 102, 20, 108}, - {0, 16, 152, 240}, - {108, 134, 20, 108}, - {24, 48, 20, 108}, - {50, 66, 20, 36}, - {66, 82, 32, 48}, - {50, 66, 44, 60}, - {66, 82, 56, 72}, - {50, 66, 68, 84}, - {66, 82, 80, 96}, - {50, 66, 92, 108}, +static const sPassAreasLayout[CURSOR_AREA_COUNT - 1] = +{ + [CURSOR_AREA_MAP - 1] = { 28, 76, 132, 220}, + [CURSOR_AREA_CARD - 1] = { 84, 132, 132, 220}, + [CURSOR_AREA_RECORD - 1] = { 80, 102, 20, 108}, + [CURSOR_AREA_CANCEL - 1] = { 0, 16, 152, 240}, + [CURSOR_AREA_POINTS - 1] = {108, 134, 20, 108}, + [CURSOR_AREA_EARNED_SYMBOLS - 1] = { 24, 48, 20, 108}, + [CURSOR_AREA_SYMBOL_TOWER - 1] = { 50, 66, 20, 36}, + [CURSOR_AREA_SYMBOL_DOME - 1] = { 66, 82, 32, 48}, + [CURSOR_AREA_SYMBOL_PALACE - 1] = { 50, 66, 44, 60}, + [CURSOR_AREA_SYMBOL_ARENA - 1] = { 66, 82, 56, 72}, + [CURSOR_AREA_SYMBOL_FACTORY - 1] = { 50, 66, 68, 84}, + [CURSOR_AREA_SYMBOL_PIKE - 1] = { 66, 82, 80, 96}, + [CURSOR_AREA_SYMBOL_PYRAMID - 1] = { 50, 66, 92, 108}, }; static const struct CompressedSpriteSheet sCursorSpriteSheets[] = { - {sCursorGfx, 0x100, 0}, - {sMapCursorGfx, 0x400, 1}, - {gFrontierPassMedals_Gfx, 0x380, 2}, + {sCursor_Gfx, 0x100, TAG_CURSOR}, + {sMapCursor_Gfx, 0x400, TAG_MAP_INDICATOR}, + {gFrontierPassMedals_Gfx, 0x380, TAG_MEDAL_SILVER}, }; static const struct CompressedSpriteSheet sHeadsSpriteSheet[] = { - {sHeadsGfx, 0x100, 4}, + {sHeads_Gfx, 0x100, TAG_HEAD_MALE}, {} }; static const struct SpritePalette sSpritePalettes[] = { - {gFrontierPassCursor_Pal, 0}, - {gFrontierPassMapCursor_Pal, 1}, - {gFrontierPassMedalsSilver_Pal, 2}, - {gFrontierPassMedalsGold_Pal, 3}, - {sMaleHeadPalette, 4}, - {sFemaleHeadPalette, 5}, + {gFrontierPassCursor_Pal, TAG_CURSOR}, + {gFrontierPassMapCursor_Pal, TAG_MAP_INDICATOR}, + {gFrontierPassMedalsSilver_Pal, TAG_MEDAL_SILVER}, + {gFrontierPassMedalsGold_Pal, TAG_MEDAL_GOLD}, + {sMaleHead_Pal, TAG_HEAD_MALE}, + {sFemaleHead_Pal, TAG_HEAD_FEMALE}, {} }; -static const union AnimCmd sSpriteAnim_857151C[] = +static const union AnimCmd sAnim_Frame1_Unused[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571524[] = +static const union AnimCmd sAnim_Frame1[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_857152C[] = +static const union AnimCmd sAnim_Frame2[] = { ANIMCMD_FRAME(4, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571534[] = +static const union AnimCmd sAnim_Frame3[] = { ANIMCMD_FRAME(8, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_857153C[] = +static const union AnimCmd sAnim_Frame4[] = { ANIMCMD_FRAME(12, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571544[] = +static const union AnimCmd sAnim_Frame5[] = { ANIMCMD_FRAME(16, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_857154C[] = +static const union AnimCmd sAnim_Frame6[] = { ANIMCMD_FRAME(20, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_8571554[] = +static const union AnimCmd sAnim_Frame7[] = { ANIMCMD_FRAME(24, 0), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_857155C[] = +static const union AnimCmd sAnim_MapIndicatorCursor_Rectangle[] = { ANIMCMD_FRAME(0, 45), ANIMCMD_FRAME(8, 45), ANIMCMD_JUMP(0) }; -static const union AnimCmd sSpriteAnim_8571568[] = +static const union AnimCmd sAnim_MapIndicatorCursor_Square[] = { ANIMCMD_FRAME(16, 45), ANIMCMD_FRAME(24, 45), ANIMCMD_JUMP(0) }; -static const union AnimCmd *const sSpriteAnimTable_8571574[] = +// Used both by the cursor and the map head icons +static const union AnimCmd *const sAnims_TwoFrame[] = { - sSpriteAnim_8571524, - sSpriteAnim_857152C + sAnim_Frame1, + sAnim_Frame2 }; -static const union AnimCmd *const sSpriteAnimTable_857157C[] = +static const union AnimCmd *const sAnims_Medal[] = { - sSpriteAnim_8571524, - sSpriteAnim_857152C, - sSpriteAnim_8571534, - sSpriteAnim_857153C, - sSpriteAnim_8571544, - sSpriteAnim_857154C, - sSpriteAnim_8571554 + [CURSOR_AREA_SYMBOL_TOWER - CURSOR_AREA_SYMBOL] = sAnim_Frame1, + [CURSOR_AREA_SYMBOL_DOME - CURSOR_AREA_SYMBOL] = sAnim_Frame2, + [CURSOR_AREA_SYMBOL_PALACE - CURSOR_AREA_SYMBOL] = sAnim_Frame3, + [CURSOR_AREA_SYMBOL_ARENA - CURSOR_AREA_SYMBOL] = sAnim_Frame4, + [CURSOR_AREA_SYMBOL_FACTORY - CURSOR_AREA_SYMBOL] = sAnim_Frame5, + [CURSOR_AREA_SYMBOL_PIKE - CURSOR_AREA_SYMBOL] = sAnim_Frame6, + [CURSOR_AREA_SYMBOL_PYRAMID - CURSOR_AREA_SYMBOL] = sAnim_Frame7 }; -static const union AnimCmd *const sSpriteAnimTable_8571598[] = +static const union AnimCmd *const sAnims_MapIndicatorCursor[] = { - sSpriteAnim_857155C, - sSpriteAnim_8571568 + [MAP_INDICATOR_RECTANGLE] = sAnim_MapIndicatorCursor_Rectangle, + [MAP_INDICATOR_SQUARE] = sAnim_MapIndicatorCursor_Square }; -static const union AffineAnimCmd sSpriteAffineAnim_85715A0[] = +static const union AffineAnimCmd sAffineAnim_Unused[] = { AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSpriteAffineAnimTable_85715B0[] = +static const union AffineAnimCmd *const sAffineAnims_Unused[] = { - sSpriteAffineAnim_85715A0 + sAffineAnim_Unused }; static const struct SpriteTemplate sSpriteTemplates_Cursors[] = { + // Triangular cursor { - .tileTag = 0, - .paletteTag = 0, + .tileTag = TAG_CURSOR, + .paletteTag = TAG_CURSOR, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sSpriteAnimTable_8571574, + .anims = sAnims_TwoFrame, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }, + // Map indicator cursor { - .tileTag = 1, - .paletteTag = 1, + .tileTag = TAG_MAP_INDICATOR, + .paletteTag = TAG_MAP_INDICATOR, .oam = &gOamData_AffineOff_ObjNormal_32x16, - .anims = sSpriteAnimTable_8571598, + .anims = sAnims_MapIndicatorCursor, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -461,43 +497,43 @@ static const struct SpriteTemplate sSpriteTemplates_Cursors[] = static const struct SpriteTemplate sSpriteTemplate_Medal = { - .tileTag = 2, - .paletteTag = 2, + .tileTag = TAG_MEDAL_SILVER, + .paletteTag = TAG_MEDAL_SILVER, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sSpriteAnimTable_857157C, + .anims = sAnims_Medal, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; -static const struct SpriteTemplate sSpriteTemplate_Head = +static const struct SpriteTemplate sSpriteTemplate_PlayerHead = { - .tileTag = 4, - .paletteTag = 4, + .tileTag = TAG_HEAD_MALE, + .paletteTag = TAG_HEAD_MALE, .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sSpriteAnimTable_8571574, + .anims = sAnims_TwoFrame, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_Dummy, + .callback = SpriteCB_PlayerHead, }; -static const u8 *const sPassAreaDescriptions[] = -{ - gText_ThereIsNoBattleRecord, - gText_CheckFrontierMap, - gText_CheckTrainerCard, - gText_ViewRecordedBattle, - gText_PutAwayFrontierPass, - gText_CurrentBattlePoints, - gText_CollectedSymbols, - gText_BattleTowerAbilitySymbol, - gText_BattleDomeTacticsSymbol, - gText_BattlePalaceSpiritsSymbol, - gText_BattleArenaGutsSymbol, - gText_BattleFactoryKnowledgeSymbol, - gText_BattlePikeLuckSymbol, - gText_BattlePyramidBraveSymbol, - gText_EmptyString7, +static const u8 *const sPassAreaDescriptions[CURSOR_AREA_COUNT + 1] = +{ + [CURSOR_AREA_NOTHING] = gText_ThereIsNoBattleRecord, // NOTHING is re-used for CURSOR_AREA_RECORD when no Record is present + [CURSOR_AREA_MAP] = gText_CheckFrontierMap, + [CURSOR_AREA_CARD] = gText_CheckTrainerCard, + [CURSOR_AREA_RECORD] = gText_ViewRecordedBattle, + [CURSOR_AREA_CANCEL] = gText_PutAwayFrontierPass, + [CURSOR_AREA_POINTS] = gText_CurrentBattlePoints, + [CURSOR_AREA_EARNED_SYMBOLS] = gText_CollectedSymbols, + [CURSOR_AREA_SYMBOL_TOWER] = gText_BattleTowerAbilitySymbol, + [CURSOR_AREA_SYMBOL_DOME] = gText_BattleDomeTacticsSymbol, + [CURSOR_AREA_SYMBOL_PALACE] = gText_BattlePalaceSpiritsSymbol, + [CURSOR_AREA_SYMBOL_ARENA] = gText_BattleArenaGutsSymbol, + [CURSOR_AREA_SYMBOL_FACTORY] = gText_BattleFactoryKnowledgeSymbol, + [CURSOR_AREA_SYMBOL_PIKE] = gText_BattlePikeLuckSymbol, + [CURSOR_AREA_SYMBOL_PYRAMID] = gText_BattlePyramidBraveSymbol, + [CURSOR_AREA_COUNT] = gText_EmptyString7, }; struct @@ -507,18 +543,17 @@ struct s16 x; s16 y; u8 animNum; -} static const sMapLandmarks[] = -{ - {gText_BattleTower3, gText_BattleTowerDesc, 0x59, 0x28, 1}, - {gText_BattleDome2, gText_BattleDomeDesc, 0x21, 0x2A, 1}, - {gText_BattlePalace2, gText_BattlePalaceDesc, 0x78, 0x56, 0}, - {gText_BattleArena2, gText_BattleArenaDesc, 0x72, 0x3B, 0}, - {gText_BattleFactory2, gText_BattleFactoryDesc, 0x19, 0x43, 0}, - {gText_BattlePike2, gText_BattlePikeDesc, 0x39, 0x39, 1}, - {gText_BattlePyramid2, gText_BattlePyramidDesc, 0x86, 0x29, 1}, +} static const sMapLandmarks[NUM_FRONTIER_FACILITIES] = +{ + [FRONTIER_FACILITY_TOWER] = {gText_BattleTower3, gText_BattleTowerDesc, 89, 40, MAP_INDICATOR_SQUARE}, + [FRONTIER_FACILITY_DOME] = {gText_BattleDome2, gText_BattleDomeDesc, 33, 42, MAP_INDICATOR_SQUARE}, + [FRONTIER_FACILITY_PALACE] = {gText_BattlePalace2, gText_BattlePalaceDesc, 120, 86, MAP_INDICATOR_RECTANGLE}, + [FRONTIER_FACILITY_ARENA] = {gText_BattleArena2, gText_BattleArenaDesc, 114, 59, MAP_INDICATOR_RECTANGLE}, + [FRONTIER_FACILITY_FACTORY] = {gText_BattleFactory2, gText_BattleFactoryDesc, 25, 67, MAP_INDICATOR_RECTANGLE}, + [FRONTIER_FACILITY_PIKE] = {gText_BattlePike2, gText_BattlePikeDesc, 57, 57, MAP_INDICATOR_SQUARE}, + [FRONTIER_FACILITY_PYRAMID] = {gText_BattlePyramid2, gText_BattlePyramidDesc, 134, 41, MAP_INDICATOR_SQUARE}, }; -// code static void ResetGpuRegsAndBgs(void) { SetGpuReg(REG_OFFSET_DISPCNT, 0); @@ -564,30 +599,34 @@ static u32 AllocateFrontierPassData(void (*callback)(void)) u8 i; if (sPassData != NULL) - return 1; + return ERR_ALREADY_DONE; sPassData = AllocZeroed(sizeof(*sPassData)); if (sPassData == NULL) - return 2; + return ERR_ALLOC_FAILED; sPassData->callback = callback; i = GetCurrentRegionMapSectionId(); if (i != MAPSEC_BATTLE_FRONTIER && i != MAPSEC_ARTISAN_CAVE) { + // Player is not in the frontier, set + // cursor position to the Trainer Card sPassData->cursorX = 176; sPassData->cursorY = 104; } else { + // Player is in the frontier, set + // cursor position to the frontier map sPassData->cursorX = 176; sPassData->cursorY = 48; } sPassData->battlePoints = gSaveBlock2Ptr->frontier.battlePoints; sPassData->hasBattleRecord = CanCopyRecordedBattleSaveData(); - sPassData->unkE = 0; + sPassData->areaToShow = CURSOR_AREA_NOTHING; sPassData->trainerStars = CountPlayerTrainerStars(); - for (i = 0; i < 7; i++) + for (i = 0; i < NUM_FRONTIER_FACILITIES; i++) { if (FlagGet(FLAG_SYS_TOWER_SILVER + i * 2)) sPassData->facilitySymbols[i]++; @@ -595,60 +634,57 @@ static u32 AllocateFrontierPassData(void (*callback)(void)) sPassData->facilitySymbols[i]++; } - return 0; + return SUCCESS; } static u32 FreeFrontierPassData(void) { if (sPassData == NULL) - return 1; + return ERR_ALREADY_DONE; memset(sPassData, 0, sizeof(*sPassData)); // Why clear data, if it's going to be freed anyway? FREE_AND_SET_NULL(sPassData); - return 0; + return SUCCESS; } static u32 AllocateFrontierPassGfx(void) { if (sPassGfx != NULL) - return 1; + return ERR_ALREADY_DONE; sPassGfx = AllocZeroed(sizeof(*sPassGfx)); if (sPassGfx == NULL) - return 2; + return ERR_ALLOC_FAILED; - return 0; + return SUCCESS; } static u32 FreeFrontierPassGfx(void) { FreeAllWindowBuffers(); if (sPassGfx == NULL) - return 1; + return ERR_ALREADY_DONE; - if (sPassGfx->unk28 != NULL) - FREE_AND_SET_NULL(sPassGfx->unk28); - if (sPassGfx->unk24 != NULL) - FREE_AND_SET_NULL(sPassGfx->unk24); - if (sPassGfx->unk20 != NULL) - FREE_AND_SET_NULL(sPassGfx->unk20); + TRY_FREE_AND_SET_NULL(sPassGfx->battleRecordTilemap); + TRY_FREE_AND_SET_NULL(sPassGfx->mapAndCardTilemap); + TRY_FREE_AND_SET_NULL(sPassGfx->mapAndCardZoomTilemap); memset(sPassGfx, 0, sizeof(*sPassGfx)); // Why clear data, if it's going to be freed anyway? FREE_AND_SET_NULL(sPassGfx); - return 0; + return SUCCESS; } -static void VblankCb_FrontierPass(void) +static void VBlankCB_FrontierPass(void) { - if (sPassGfx->setAffine) + if (sPassGfx->zooming) { SetBgAffine(2, - gUnknown_085713E0[sPassData->unkE - 1][0] << 8, - gUnknown_085713E0[sPassData->unkE - 1][1] << 8, - gUnknown_085713E0[sPassData->unkE - 1][0], - gUnknown_085713E0[sPassData->unkE - 1][1], - sPassGfx->unk2E, - sPassGfx->unk30, + sBgAffineCoords[sPassData->areaToShow - 1][0] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][1] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][0], + sBgAffineCoords[sPassData->areaToShow - 1][1], + sPassGfx->scaleX, + sPassGfx->scaleY, 0); } LoadOam(); @@ -716,11 +752,11 @@ static bool32 InitFrontierPass(void) DeactivateAllTextPrinters(); break; case 6: - sPassGfx->unk20 = malloc_and_decompress(gUnknown_085712F8, &sizeOut); - sPassGfx->unk24 = malloc_and_decompress(gUnknown_08571060, &sizeOut); - sPassGfx->unk28 = malloc_and_decompress(gUnknown_085712C0, &sizeOut); - DecompressAndCopyTileDataToVram(1, gUnknown_08DE08C8, 0, 0, 0); - DecompressAndCopyTileDataToVram(2, gUnknown_08DE2084, 0, 0, 0); + sPassGfx->mapAndCardZoomTilemap = malloc_and_decompress(sMapAndCard_Zooming_Tilemap, &sizeOut); + sPassGfx->mapAndCardTilemap = malloc_and_decompress(sMapAndCard_ZoomedOut_Tilemap, &sizeOut); + sPassGfx->battleRecordTilemap = malloc_and_decompress(sBattleRecord_Tilemap, &sizeOut); + DecompressAndCopyTileDataToVram(1, gFrontierPassBg_Gfx, 0, 0, 0); + DecompressAndCopyTileDataToVram(2, gFrontierPassMapAndCard_Gfx, 0, 0, 0); break; case 7: if (FreeTempTileDataBuffersIfPossible()) @@ -733,12 +769,12 @@ static bool32 InitFrontierPass(void) CopyBgTilemapBufferToVram(2); break; case 8: - LoadPalette(gUnknown_08DE07C8[0], 0, 0x1A0); - LoadPalette(gUnknown_08DE07C8[1 + sPassData->trainerStars], 0x10, 0x20); + LoadPalette(gFrontierPassBg_Pal[0], 0, 0x1A0); + LoadPalette(gFrontierPassBg_Pal[1 + sPassData->trainerStars], 0x10, 0x20); LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); - sub_80C629C(); - sub_80C6104(sPassData->cursorArea, sPassData->previousCursorArea); - if (sPassData->unkE == 1 || sPassData->unkE == 2) + DrawFrontierPassBg(); + UpdateAreaHighlight(sPassData->cursorArea, sPassData->previousCursorArea); + if (sPassData->areaToShow == CURSOR_AREA_MAP || sPassData->areaToShow == CURSOR_AREA_CARD) { sPassData->state = 0; return TRUE; @@ -750,9 +786,9 @@ static bool32 InitFrontierPass(void) ShowBg(1); ShowBg(2); LoadCursorAndSymbolSprites(); - SetVBlankCallback(VblankCb_FrontierPass); - BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); + SetVBlankCallback(VBlankCB_FrontierPass); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); break; case 10: AnimateSprites(); @@ -773,9 +809,9 @@ static bool32 HideFrontierPass(void) switch (sPassData->state) { case 0: - if (sPassData->unkE != 1 && sPassData->unkE != 2) + if (sPassData->areaToShow != CURSOR_AREA_MAP && sPassData->areaToShow != CURSOR_AREA_CARD) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } else { @@ -822,11 +858,11 @@ static u8 GetCursorAreaFromCoords(s16 x, s16 y) { u8 i; - // Minus/Plus 1, because the table doesn't take into account the nothing field. + // Minus/Plus 1, because the table doesn't take CURSOR_AREA_NOTHING into account. for (i = 0; i < CURSOR_AREA_COUNT - 1; i++) { if (sPassAreasLayout[i].yStart <= y && sPassAreasLayout[i].yEnd >= y - && sPassAreasLayout[i].xStart <= x && sPassAreasLayout[i].xEnd >= x) + && sPassAreasLayout[i].xStart <= x && sPassAreasLayout[i].xEnd >= x) { if (i >= CURSOR_AREA_SYMBOL - 1 && sPassData->facilitySymbols[i - CURSOR_AREA_SYMBOL + 1] == 0) break; @@ -835,9 +871,12 @@ static u8 GetCursorAreaFromCoords(s16 x, s16 y) } } - return 0; + return CURSOR_AREA_NOTHING; } +// For Task_PassAreaZoom +#define tZoomOut data[0] + void CB2_ReshowFrontierPass(void) { u8 taskId; @@ -845,16 +884,16 @@ void CB2_ReshowFrontierPass(void) if (!InitFrontierPass()) return; - switch (sPassData->unkE) + switch (sPassData->areaToShow) { - case 1: - case 2: - taskId = CreateTask(Task_DoFadeEffect, 0); - gTasks[taskId].data[0] = TRUE; + case CURSOR_AREA_MAP: + case CURSOR_AREA_CARD: + taskId = CreateTask(Task_PassAreaZoom, 0); + gTasks[taskId].tZoomOut = TRUE; break; - case 3: + case CURSOR_AREA_RECORD: default: - sPassData->unkE = 0; + sPassData->areaToShow = CURSOR_AREA_NOTHING; taskId = CreateTask(Task_HandleFrontierPassInput, 0); break; } @@ -889,19 +928,19 @@ static void CB2_ShowFrontierPassFeature(void) if (!HideFrontierPass()) return; - switch (sPassData->unkE) + switch (sPassData->areaToShow) { - case 1: + case CURSOR_AREA_MAP: ShowFrontierMap(CB2_ReshowFrontierPass); break; - case 3: + case CURSOR_AREA_RECORD: sSavedPassData.callback = sPassData->callback; sSavedPassData.cursorX = sPassData->cursorX; sSavedPassData.cursorY = sPassData->cursorY; FreeFrontierPassData(); PlayRecordedBattle(CB2_ReturnFromRecord); break; - case 2: + case CURSOR_AREA_CARD: ShowPlayerTrainerCard(CB2_ReshowFrontierPass); break; } @@ -914,15 +953,15 @@ static bool32 TryCallPassAreaFunction(u8 taskId, u8 cursorArea) case CURSOR_AREA_RECORD: if (!sPassData->hasBattleRecord) return FALSE; - sPassData->unkE = 3; + sPassData->areaToShow = CURSOR_AREA_RECORD; DestroyTask(taskId); SetMainCallback2(CB2_ShowFrontierPassFeature); break; case CURSOR_AREA_MAP: case CURSOR_AREA_CARD: - sPassData->unkE = cursorArea; - gTasks[taskId].func = Task_DoFadeEffect; - gTasks[taskId].data[0] = FALSE; + sPassData->areaToShow = cursorArea; + gTasks[taskId].func = Task_PassAreaZoom; + gTasks[taskId].tZoomOut = FALSE; break; default: return FALSE; @@ -1004,77 +1043,92 @@ static void Task_HandleFrontierPassInput(u8 taskId) PrintAreaDescription(var); sPassData->previousCursorArea = sPassData->cursorArea; sPassData->cursorArea = var; - sub_80C6104(sPassData->cursorArea, sPassData->previousCursorArea); + UpdateAreaHighlight(sPassData->cursorArea, sPassData->previousCursorArea); } } } -static void Task_DoFadeEffect(u8 taskId) +#define tScaleX data[1] +#define tScaleY data[2] +#define tScaleSpeedX data[3] +#define tScaleSpeedY data[4] + +// Zoom in/out for the Frontier map or the trainer card +static void Task_PassAreaZoom(u8 taskId) { s16 *data = gTasks[taskId].data; switch (sPassData->state) { case 0: - if (!data[0]) + // Initialize the zoom, start fading in/out + if (!tZoomOut) { - sub_80C5F58(TRUE, FALSE); - data[1] = Q_8_8(1); - data[2] = Q_8_8(1); - data[3] = 0x15; - data[4] = 0x15; - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_WHITE); + // Zooming in to map/card screen + ShowHideZoomingArea(TRUE, FALSE); + tScaleX = Q_8_8(1); + tScaleY = Q_8_8(1); + tScaleSpeedX = 0x15; + tScaleSpeedY = 0x15; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE); } else { - data[1] = Q_8_8(1.984375); // 1 and 63/64 - data[2] = Q_8_8(1.984375); - data[3] = -0x15; - data[4] = -0x15; + // Zooming out of map/card screen back to frontier pass + tScaleX = Q_8_8(1.984375); // 1 and 63/64 + tScaleY = Q_8_8(1.984375); + tScaleSpeedX = -0x15; + tScaleSpeedY = -0x15; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); ShowBg(0); ShowBg(1); ShowBg(2); LoadCursorAndSymbolSprites(); - SetVBlankCallback(VblankCb_FrontierPass); - BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITE); + SetVBlankCallback(VBlankCB_FrontierPass); + BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITE); } - sPassGfx->setAffine = TRUE; - sPassGfx->unk2E = MathUtil_Inv16(data[1]); - sPassGfx->unk30 = MathUtil_Inv16(data[2]); + sPassGfx->zooming = TRUE; + sPassGfx->scaleX = MathUtil_Inv16(tScaleX); + sPassGfx->scaleY = MathUtil_Inv16(tScaleY); break; case 1: + // Update the fade and zoom UpdatePaletteFade(); - data[1] += data[3]; - data[2] += data[4]; - sPassGfx->unk2E = MathUtil_Inv16(data[1]); - sPassGfx->unk30 = MathUtil_Inv16(data[2]); - if (!data[0]) + tScaleX += tScaleSpeedX; + tScaleY += tScaleSpeedY; + sPassGfx->scaleX = MathUtil_Inv16(tScaleX); + sPassGfx->scaleY = MathUtil_Inv16(tScaleY); + + // Check if zoom hasn't reached target + if (!tZoomOut) { - if (data[1] <= Q_8_8(1.984375)) + if (tScaleX <= Q_8_8(1.984375)) return; } else { - if (data[1] != Q_8_8(1)) + if (tScaleX != Q_8_8(1)) return; } break; case 2: - if (sPassGfx->setAffine) // Nonsensical check. - sPassGfx->setAffine = FALSE; + if (sPassGfx->zooming) + sPassGfx->zooming = FALSE; if (UpdatePaletteFade()) return; - if (!data[0]) + + if (!tZoomOut) { + // Zoomed in and faded out, switch to map or trainer card DestroyTask(taskId); SetMainCallback2(CB2_ShowFrontierPassFeature); } else { - sub_80C5F58(FALSE, FALSE); - sPassData->unkE = 0; + // Zoomed out and faded in, return to frontier pass + ShowHideZoomingArea(FALSE, FALSE); + sPassData->areaToShow = CURSOR_AREA_NOTHING; gTasks[taskId].func = Task_HandleFrontierPassInput; } SetBgAttribute(2, BG_ATTR_WRAPAROUND, 0); @@ -1120,8 +1174,9 @@ static void ShowAndPrintWindows(void) static void PrintAreaDescription(u8 cursorArea) { FillWindowPixelBuffer(WINDOW_DESCRIPTION, PIXEL_FILL(0)); + if (cursorArea == CURSOR_AREA_RECORD && !sPassData->hasBattleRecord) - AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[0]); + AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[CURSOR_AREA_NOTHING]); else if (cursorArea != CURSOR_AREA_NOTHING) AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[cursorArea]); @@ -1129,19 +1184,19 @@ static void PrintAreaDescription(u8 cursorArea) CopyBgTilemapBufferToVram(0); } -static void sub_80C5F58(bool8 arg0, bool8 arg1) +static void ShowHideZoomingArea(bool8 show, bool8 zoomedIn) { - switch (sPassData->unkE) + switch (sPassData->areaToShow) { - case 1: - if (arg0) - CopyToBgTilemapBufferRect_ChangePalette(2, sPassGfx->unk20, 16, 3, 12, 7, 16); + case CURSOR_AREA_MAP: + if (show) + CopyToBgTilemapBufferRect_ChangePalette(2, sPassGfx->mapAndCardZoomTilemap, 16, 3, 12, 7, 16); else FillBgTilemapBufferRect(2, 0, 16, 3, 12, 7, 16); break; - case 2: - if (arg0) - CopyToBgTilemapBufferRect_ChangePalette(2, sPassGfx->unk20 + 84, 16, 10, 12, 7, 16); + case CURSOR_AREA_CARD: + if (show) + CopyToBgTilemapBufferRect_ChangePalette(2, sPassGfx->mapAndCardZoomTilemap + 84, 16, 10, 12, 7, 16); else FillBgTilemapBufferRect(2, 0, 16, 10, 12, 7, 16); break; @@ -1150,13 +1205,13 @@ static void sub_80C5F58(bool8 arg0, bool8 arg1) } CopyBgTilemapBufferToVram(2); - if (arg1) + if (zoomedIn) { SetBgAffine(2, - gUnknown_085713E0[sPassData->unkE - 1][0] << 8, - gUnknown_085713E0[sPassData->unkE - 1][1] << 8, - gUnknown_085713E0[sPassData->unkE - 1][0], - gUnknown_085713E0[sPassData->unkE - 1][1], + sBgAffineCoords[sPassData->areaToShow - 1][0] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][1] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][0], + sBgAffineCoords[sPassData->areaToShow - 1][1], MathUtil_Inv16(Q_8_8(1.984375)), // 1 and 63/64 MathUtil_Inv16(Q_8_8(1.984375)), 0); @@ -1164,71 +1219,75 @@ static void sub_80C5F58(bool8 arg0, bool8 arg1) else { SetBgAffine(2, - gUnknown_085713E0[sPassData->unkE - 1][0] << 8, - gUnknown_085713E0[sPassData->unkE - 1][1] << 8, - gUnknown_085713E0[sPassData->unkE - 1][0], - gUnknown_085713E0[sPassData->unkE - 1][1], + sBgAffineCoords[sPassData->areaToShow - 1][0] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][1] << 8, + sBgAffineCoords[sPassData->areaToShow - 1][0], + sBgAffineCoords[sPassData->areaToShow - 1][1], MathUtil_Inv16(Q_8_8(1)), MathUtil_Inv16(Q_8_8(1)), 0); } } -static void sub_80C6104(u8 cursorArea, u8 previousCursorArea) +static void UpdateAreaHighlight(u8 cursorArea, u8 previousCursorArea) { + #define NON_HIGHLIGHT_AREA(area)((area) == CURSOR_AREA_NOTHING || (area) > CURSOR_AREA_CANCEL) + + // If moving off highlightable area, unhighlight it switch (previousCursorArea) { case CURSOR_AREA_MAP: - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk24, 16, 3, 12, 7, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->mapAndCardTilemap, 16, 3, 12, 7, 17); break; case CURSOR_AREA_CARD: - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk24 + 336, 16, 10, 12, 7, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->mapAndCardTilemap + 336, 16, 10, 12, 7, 17); break; case CURSOR_AREA_RECORD: if (sPassData->hasBattleRecord) - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk28, 2, 10, 12, 3, 17); - else if (cursorArea == CURSOR_AREA_NOTHING || cursorArea > CURSOR_AREA_CANCEL) + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->battleRecordTilemap, 2, 10, 12, 3, 17); + else if (NON_HIGHLIGHT_AREA(cursorArea)) return; break; case CURSOR_AREA_CANCEL: - CopyToBgTilemapBufferRect_ChangePalette(1, gUnknown_08DE3350, 21, 0, 9, 2, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, gFrontierPassCancelButton_Tilemap, 21, 0, 9, 2, 17); break; default: - if (cursorArea == CURSOR_AREA_NOTHING || cursorArea > CURSOR_AREA_CANCEL) + if (NON_HIGHLIGHT_AREA(cursorArea)) return; break; } + // If moving on to highlightable area, highlight it switch (cursorArea) { case CURSOR_AREA_MAP: - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk24 + 168, 16, 3, 12, 7, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->mapAndCardTilemap + 168, 16, 3, 12, 7, 17); break; case CURSOR_AREA_CARD: - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk24 + 504, 16, 10, 12, 7, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->mapAndCardTilemap + 504, 16, 10, 12, 7, 17); break; case CURSOR_AREA_RECORD: if (sPassData->hasBattleRecord) - CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->unk28 + 72, 2, 10, 12, 3, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, sPassGfx->battleRecordTilemap + 72, 2, 10, 12, 3, 17); else return; - break; //needed to match + break; case CURSOR_AREA_CANCEL: - CopyToBgTilemapBufferRect_ChangePalette(1, gUnknown_08DE3374, 21, 0, 9, 2, 17); + CopyToBgTilemapBufferRect_ChangePalette(1, gFrontierPassCancelButtonHighlighted_Tilemap, 21, 0, 9, 2, 17); break; default: - if (previousCursorArea == CURSOR_AREA_NOTHING || previousCursorArea > CURSOR_AREA_CANCEL) + if (NON_HIGHLIGHT_AREA(previousCursorArea)) return; } CopyBgTilemapBufferToVram(1); } -static void sub_80C629C(void) +static void DrawFrontierPassBg(void) { - CopyToBgTilemapBuffer(1, gUnknown_08DE3060, 0, 0); - sub_80C6104(sPassData->cursorArea, sPassData->previousCursorArea); - sub_80C5F58(TRUE, sPassData->unkE); + CopyToBgTilemapBuffer(1, gFrontierPassBg_Tilemap, 0, 0); + UpdateAreaHighlight(sPassData->cursorArea, sPassData->previousCursorArea); + ShowHideZoomingArea(TRUE, sPassData->areaToShow); // If returning to frontier pass from map/card (areaToShow will be != 0) ShowAndPrintWindows(); CopyBgTilemapBufferToVram(1); } @@ -1253,7 +1312,7 @@ static void LoadCursorAndSymbolSprites(void) { struct SpriteTemplate sprite = sSpriteTemplate_Medal; - sprite.paletteTag += sPassData->facilitySymbols[i] - 1; + sprite.paletteTag += sPassData->facilitySymbols[i] - 1; // Adds 1 if gold for TAG_MEDAL_GOLD spriteId = CreateSprite(&sprite, sPassAreasLayout[i + CURSOR_AREA_SYMBOL - 1].xStart + 8, sPassAreasLayout[i + CURSOR_AREA_SYMBOL - 1].yStart + 6, i + 1); sPassGfx->symbolSprites[i] = &gSprites[spriteId]; sPassGfx->symbolSprites[i]->oam.priority = 2; @@ -1277,11 +1336,11 @@ static void FreeCursorAndSymbolSprites(void) } } FreeAllSpritePalettes(); - FreeSpriteTilesByTag(2); - FreeSpriteTilesByTag(0); + FreeSpriteTilesByTag(TAG_MEDAL_SILVER); + FreeSpriteTilesByTag(TAG_CURSOR); } -static void SpriteCb_Dummy(struct Sprite *sprite) +static void SpriteCB_PlayerHead(struct Sprite *sprite) { } @@ -1349,14 +1408,14 @@ static bool32 InitFrontierMap(void) InitWindows(sMapWindowTemplates); DeactivateAllTextPrinters(); PrintOnFrontierMap(); - DecompressAndCopyTileDataToVram(1, gUnknown_0856FBBC, 0, 0, 0); + DecompressAndCopyTileDataToVram(1, sMapScreen_Gfx, 0, 0, 0); break; case 5: if (FreeTempTileDataBuffersIfPossible()) return FALSE; - LoadPalette(gUnknown_08DE07C8[0], 0, 0x1A0); + LoadPalette(gFrontierPassBg_Pal[0], 0, 0x1A0); LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); - CopyToBgTilemapBuffer(2, gUnknown_08570E00, 0, 0); + CopyToBgTilemapBuffer(2, sMapScreen_Tilemap, 0, 0); CopyBgTilemapBufferToVram(2); break; case 6: @@ -1365,9 +1424,9 @@ static bool32 InitFrontierMap(void) ShowBg(1); ShowBg(2); InitFrontierMapSprites(); - SetVBlankCallback(VblankCb_FrontierPass); - BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITE); + SetVBlankCallback(VBlankCB_FrontierPass); + BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_WHITE); break; case 7: if (UpdatePaletteFade()) @@ -1385,7 +1444,7 @@ static bool32 ExitFrontierMap(void) switch (sPassData->state) { case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_WHITE); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE); break; case 1: if (UpdatePaletteFade()) @@ -1404,17 +1463,17 @@ static bool32 ExitFrontierMap(void) if (sMapData->cursorSprite != NULL) { DestroySprite(sMapData->cursorSprite); - FreeSpriteTilesByTag(0); + FreeSpriteTilesByTag(TAG_CURSOR); } if (sMapData->mapIndicatorSprite != NULL) { DestroySprite(sMapData->mapIndicatorSprite); - FreeSpriteTilesByTag(1); + FreeSpriteTilesByTag(TAG_MAP_INDICATOR); } if (sMapData->playerHeadSprite != NULL) { DestroySprite(sMapData->playerHeadSprite); - FreeSpriteTilesByTag(4); + FreeSpriteTilesByTag(TAG_HEAD_MALE); } FreeAllWindowBuffers(); break; @@ -1435,11 +1494,14 @@ static bool32 ExitFrontierMap(void) return FALSE; } +#define tState data[0] +#define tMoveSteps data[1] + static void Task_HandleFrontierMap(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: if (InitFrontierMap()) @@ -1449,47 +1511,47 @@ static void Task_HandleFrontierMap(u8 taskId) if (JOY_NEW(B_BUTTON)) { PlaySE(SE_PC_OFF); - data[0] = 4; + tState = 4; } else if (JOY_NEW(DPAD_DOWN)) { if (sMapData->cursorPos >= NUM_FRONTIER_FACILITIES - 1) HandleFrontierMapCursorMove(0); else - data[0] = 2; + tState = 2; } else if (JOY_NEW(DPAD_UP)) { if (sMapData->cursorPos == 0) HandleFrontierMapCursorMove(1); else - data[0] = 3; + tState = 3; } return; case 2: - if (data[1] > 3) + if (tMoveSteps > 3) { HandleFrontierMapCursorMove(0); - data[1] = 0; - data[0] = 1; + tMoveSteps = 0; + tState = 1; } else { sMapData->cursorSprite->pos1.y += 4; - data[1]++; + tMoveSteps++; } return; case 3: - if (data[1] > 3) + if (tMoveSteps > 3) { HandleFrontierMapCursorMove(1); - data[1] = 0; - data[0] = 1; + tMoveSteps = 0; + tState = 1; } else { sMapData->cursorSprite->pos1.y -= 4; - data[1]++; + tMoveSteps++; } return; case 4: @@ -1502,31 +1564,42 @@ static void Task_HandleFrontierMap(u8 taskId) return; } - data[0]++; + tState++; } 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))) + || (mapNum >= MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM) && mapNum <= MAP_NUM(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)) 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)) 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)) 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)) 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) @@ -1534,10 +1607,13 @@ static u8 MapNumToFrontierFacilityId(u16 mapNum) // id + 1, zero means not a fro || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL) || mapNum == MAP_NUM(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)) return FRONTIER_FACILITY_PYRAMID + 1; + else return 0; } @@ -1606,8 +1682,8 @@ static void InitFrontierMapSprites(void) } LoadCompressedSpriteSheet(sHeadsSpriteSheet); - sprite = sSpriteTemplate_Head; - sprite.paletteTag = gSaveBlock2Ptr->playerGender + 4; + sprite = sSpriteTemplate_PlayerHead; + sprite.paletteTag = gSaveBlock2Ptr->playerGender + TAG_HEAD_MALE; // TAG_HEAD_FEMALE if gender is FEMALE if (id != 0) { spriteId = CreateSprite(&sprite, x, y, 0); @@ -1678,7 +1754,7 @@ static void HandleFrontierMapCursorMove(u8 direction) FillWindowPixelBuffer(MAP_WINDOW_DESCRIPTION, PIXEL_FILL(0)); AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, 1, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); - for (i = 0; i < 3; i++) + for (i = 0; i < MAP_WINDOW_COUNT; i++) CopyWindowToVram(i, 3); CopyBgTilemapBufferToVram(0); diff --git a/src/graphics.c b/src/graphics.c index 7a7a11b2b95c..39abf69d8f83 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1533,14 +1533,12 @@ const u32 gTitleScreenPressStartGfx[] = INCBIN_U32("graphics/title_screen/press_ const u32 gUnknown_08DE0644[] = INCBIN_U32("graphics/title_screen/title_screen2.bin.lz"); -// more trainer card stuff - -const u16 gUnknown_08DE07C8[][16] = INCBIN_U16("graphics/frontier_pass/tiles.gbapal");// size in LoadPalette calls is reported as 0xD0 << 1, which is 0x1A0, but palette is only 0x100 bytes long so it loads garbage as well -const u32 gUnknown_08DE08C8[] = INCBIN_U32("graphics/frontier_pass/tiles.4bpp.lz"); -const u32 gUnknown_08DE2084[] = INCBIN_U32("graphics/frontier_pass/tiles2.8bpp.lz"); -const u32 gUnknown_08DE3060[] = INCBIN_U32("graphics/frontier_pass/tiles.bin.lz"); -const u16 gUnknown_08DE3350[] = INCBIN_U16("graphics/frontier_pass/tilemap1.bin"); -const u16 gUnknown_08DE3374[] = INCBIN_U16("graphics/frontier_pass/tilemap2.bin"); +const u16 gFrontierPassBg_Pal[][16] = INCBIN_U16("graphics/frontier_pass/bg.gbapal");// size in LoadPalette calls is reported as 0xD0 << 1, which is 0x1A0, but palette is only 0x100 bytes long so it loads garbage as well +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"); // Berry Crush const u16 gBerryCrush_Crusher_Pal[] = INCBIN_U16("graphics/berry_crush/crusher.gbapal"); From 06b909bcd80e5b3f882273a317ac957cd57f07a5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 25 Apr 2021 12:07:08 -0400 Subject: [PATCH 247/762] Document player pc --- include/menu_helpers.h | 4 +- include/menu_specialized.h | 20 +- include/player_pc.h | 71 +- src/decoration.c | 2 +- src/international_string_util.c | 4 +- src/item_menu.c | 4 +- src/menu_helpers.c | 30 +- src/menu_specialized.c | 92 +-- src/party_menu.c | 2 +- src/player_pc.c | 1182 ++++++++++++++++--------------- src/secret_base.c | 2 +- 11 files changed, 709 insertions(+), 704 deletions(-) diff --git a/include/menu_helpers.h b/include/menu_helpers.h index c4401354b728..fe223cfb4566 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -32,8 +32,8 @@ bool8 sub_8122148(u16 itemId); bool8 itemid_80BF6D8_mail_related(u16 itemId); bool8 MenuHelpers_LinkSomething(void); bool8 MenuHelpers_CallLinkSomething(void); -void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount); -void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItems); +void SetItemListPerPageCount(struct ItemSlot *slots, u8 slotsCount, u8 *pageItems, u8 *totalItems, u8 maxPerPage); +void SetCursorWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 totalItems); void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4); void LoadListMenuSwapLineGfx(void); void CreateSwapLineSprites(u8 *spriteIds, u8 count); diff --git a/include/menu_specialized.h b/include/menu_specialized.h index 987fca9fc290..c29110662be4 100644 --- a/include/menu_specialized.h +++ b/include/menu_specialized.h @@ -15,6 +15,14 @@ #define MAX_CONDITION_SPARKLES 10 +// Window IDs for the Player PC Mailbox +enum { + MAILBOXWIN_TITLE, + MAILBOXWIN_LIST, + MAILBOXWIN_OPTIONS, + MAILBOXWIN_COUNT +}; + struct UnknownSubStruct_81D1ED4 { u16 unk0; @@ -35,12 +43,12 @@ struct ConditionGraph /*0x355*/ u8 state; }; -bool8 sub_81D1C44(u8 count); -u8 sub_81D1C84(u8 a0); -u8 sub_81D1DC0(struct PlayerPCItemPageStruct *page); -void sub_81D1E90(struct PlayerPCItemPageStruct *page); -void sub_81D1EC0(void); -void sub_81D1D04(u8 a0); +bool8 MailboxMenu_Alloc(u8 count); +u8 MailboxMenu_AddWindow(u8 windowIdx); +u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page); +void MailboxMenu_AddScrollArrows(struct PlayerPCItemPageStruct *page); +void MailboxMenu_Free(void); +void MailboxMenu_RemoveWindow(u8 windowIdx); void InitConditionGraphData(struct ConditionGraph *graph); void sub_81D2108(struct ConditionGraph *graph); void SetConditionGraphIOWindows(u8 bg); diff --git a/include/player_pc.h b/include/player_pc.h index bdf4a4e0ef9f..2521eac13103 100644 --- a/include/player_pc.h +++ b/include/player_pc.h @@ -3,69 +3,6 @@ #include "menu.h" -// local task defines -#define PAGE_INDEX data[0] -#define ITEMS_ABOVE_TOP data[1] -#define NUM_ITEMS data[1] -#define NUM_QUANTITY_ROLLER data[3] -#define NUM_PAGE_ITEMS data[4] -// not used -#define CURRENT_ITEM_STORAGE_MENU data[3] -// not used -#define SWAP_ITEM_INDEX data[8] -#define SWITCH_MODE_ACTIVE data[9] - -// this is potentially an ewram access occuring in high ewram. TODO: investigate this further. -#define NEW_GAME_PC_ITEMS(i, type) ((u16)((u16 *)gNewGamePCItems + type)[i * 2]) - -// defined and used in the above macro -enum -{ - PC_ITEM_ID, - PC_QUANTITY -}; - -// player PC menu options -enum -{ - PLAYERPC_MENU_ITEMSTORAGE, - PLAYERPC_MENU_MAILBOX, - PLAYERPC_MENU_DECORATION, - PLAYERPC_MENU_TURNOFF -}; - -// item storage menus -enum -{ - ITEMPC_MENU_WITHDRAW, - ITEMPC_MENU_DEPOSIT, - ITEMPC_MENU_TOSS, - ITEMPC_MENU_EXIT -}; - -// mailbox mail options -enum -{ - MAILBOX_READ, - MAILBOX_MOVE_TO_BAG, - MAILBOX_GIVE, - MAILBOX_CANCEL, -}; - -// special item description handlers -enum -{ - ITEMPC_SWITCH_WHICH_ITEM = 0xFFF7, - ITEMPC_OKAY_TO_THROW_AWAY, - ITEMPC_TOO_IMPORTANT, - ITEMPC_NO_MORE_ROOM, - ITEMPC_THREW_AWAY_ITEM, - ITEMPC_HOW_MANY_TO_TOSS, - ITEMPC_WITHDREW_THING, - ITEMPC_HOW_MANY_TO_WITHDRAW, - ITEMPC_GO_BACK_TO_PREV -}; - struct PlayerPCItemPageStruct { u16 cursorPos; @@ -76,16 +13,12 @@ struct PlayerPCItemPageStruct u8 scrollIndicatorTaskId; }; -// Exported type declarations - -// Exported RAM declarations -extern struct PlayerPCItemPageStruct playerPCItemPageInfo; +extern struct PlayerPCItemPageStruct gPlayerPCItemPageInfo; -// Exported ROM declarations extern const struct MenuAction gMailboxMailOptions[]; void ReshowPlayerPC(u8 taskId); -void sub_816B31C(void); +void CB2_PlayerPCExitBagMenu(void); void Mailbox_ReturnToMailListAfterDeposit(void); void NewGameInitPCItems(void); diff --git a/src/decoration.c b/src/decoration.c index b9a24370888c..c0dd18bfebe7 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -862,7 +862,7 @@ static void InitDecorationItemsMenuLimits(void) static void InitDecorationItemsMenuScrollAndCursor(void) { - sub_812225C(&sDecorationsScrollOffset, &sDecorationsCursorPos, sDecorationItemsMenu->maxShownItems, sDecorationItemsMenu->numMenuItems); + SetCursorWithinListBounds(&sDecorationsScrollOffset, &sDecorationsCursorPos, sDecorationItemsMenu->maxShownItems, sDecorationItemsMenu->numMenuItems); } static void InitDecorationItemsMenuScrollAndCursor2(void) diff --git a/src/international_string_util.c b/src/international_string_util.c index ed1e178161a0..73d9907e5d23 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -34,11 +34,11 @@ int GetStringWidthDifference(int fontId, const u8 *str, int totalWidth, int lett return 0; } -int GetMaxWidthInMenuTable(const struct MenuAction *str, int arg1) +int GetMaxWidthInMenuTable(const struct MenuAction *str, int numActions) { int i, var; - for (var = 0, i = 0; i < arg1; i++) + for (var = 0, i = 0; i < numActions; i++) { int stringWidth = GetStringWidth(1, str[i].text, 0); if (stringWidth > var) diff --git a/src/item_menu.c b/src/item_menu.c index 865f8d8d1635..4634d035621f 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -552,7 +552,7 @@ void CB2_GoToSellMenu(void) void CB2_GoToItemDepositMenu(void) { - GoToBagMenu(ITEMMENULOCATION_ITEMPC, POCKETS_COUNT, sub_816B31C); + GoToBagMenu(ITEMMENULOCATION_ITEMPC, POCKETS_COUNT, CB2_PlayerPCExitBagMenu); } void ApprenticeOpenBagMenu(void) @@ -1078,7 +1078,7 @@ void All_CalculateNItemsAndMaxShowed(void) void SetInitialScrollAndCursorPositions(u8 pocketId) { - sub_812225C(&gBagPositionStruct.scrollPosition[pocketId], &gBagPositionStruct.cursorPosition[pocketId], gBagMenu->numShownItems[pocketId], gBagMenu->numItemStacks[pocketId]); + SetCursorWithinListBounds(&gBagPositionStruct.scrollPosition[pocketId], &gBagPositionStruct.cursorPosition[pocketId], gBagMenu->numShownItems[pocketId], gBagMenu->numItemStacks[pocketId]); } static void SetPocketListPositions(void) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 5a6ac8394731..7da4f939b8e7 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -323,36 +323,38 @@ bool8 MenuHelpers_CallLinkSomething(void) return TRUE; } -void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount) +void SetItemListPerPageCount(struct ItemSlot *slots, u8 slotsCount, u8 *pageItems, u8 *totalItems, u8 maxPerPage) { u16 i; struct ItemSlot *slots_ = slots; - (*usedSlotsCount) = 0; - for (i = 0; i < count; i++) + // Count the number of non-empty item slots + *totalItems = 0; + for (i = 0; i < slotsCount; i++) { if (slots_[i].itemId != ITEM_NONE) - (*usedSlotsCount)++; + (*totalItems)++; } + (*totalItems)++; // + 1 for 'Cancel' - (*usedSlotsCount)++; - if ((*usedSlotsCount) > maxUsedSlotsCount) - *arg2 = maxUsedSlotsCount; + // Set number of items per page + if (*totalItems > maxPerPage) + *pageItems = maxPerPage; else - *arg2 = (*usedSlotsCount); + *pageItems = *totalItems; } -void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItems) +void SetCursorWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 totalItems) { - if (*scrollOffset != 0 && *scrollOffset + maxShownItems > numItems) - *scrollOffset = numItems - maxShownItems; + if (*scrollOffset != 0 && *scrollOffset + maxShownItems > totalItems) + *scrollOffset = totalItems - maxShownItems; - if (*scrollOffset + *cursorPos >= numItems) + if (*scrollOffset + *cursorPos >= totalItems) { - if (numItems == 0) + if (totalItems == 0) *cursorPos = 0; else - *cursorPos = numItems - 1; + *cursorPos = totalItems - 1; } } diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 4c4be57f04fd..ab17c64a5e9f 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -28,10 +28,10 @@ extern const struct CompressedSpriteSheet gMonFrontPicTable[]; -EWRAM_DATA static u8 sUnknown_0203CF48[3] = {0}; -EWRAM_DATA static struct ListMenuItem *sUnknown_0203CF4C = NULL; +EWRAM_DATA static u8 sMailboxWindowIds[MAILBOXWIN_COUNT] = {0}; +EWRAM_DATA static struct ListMenuItem *sMailboxList = NULL; -static void sub_81D1E7C(s32 itemIndex, bool8 onInit, struct ListMenu *list); +static void MailboxMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list); static void sub_81D24A4(struct ConditionGraph *a0); static void sub_81D2634(struct ConditionGraph *a0); static void MoveRelearnerCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *list); @@ -40,33 +40,33 @@ static void SetNextConditionSparkle(struct Sprite *sprite); static void SpriteCB_ConditionSparkle(struct Sprite *sprite); static void ShowAllConditionSparkles(struct Sprite *sprite); -static const struct WindowTemplate sUnknown_086253E8[] = +static const struct WindowTemplate sWindowTemplates_MailboxMenu[MAILBOXWIN_COUNT] = { - { + [MAILBOXWIN_TITLE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, .width = 8, .height = 2, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x8 }, - { + [MAILBOXWIN_LIST] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 1, .width = 8, .height = 18, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x18 }, - { + [MAILBOXWIN_OPTIONS] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, .width = 11, .height = 8, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x18 } }; @@ -207,53 +207,55 @@ static const struct ListMenuTemplate sMoveRelearnerMovesListTemplate = .cursorKind = 0 }; -bool8 sub_81D1C44(u8 count) +bool8 MailboxMenu_Alloc(u8 count) { u8 i; - sUnknown_0203CF4C = Alloc(count * sizeof(*sUnknown_0203CF4C) + sizeof(*sUnknown_0203CF4C)); - if (sUnknown_0203CF4C == NULL) + // + 1 to count for 'Cancel' + sMailboxList = Alloc((count + 1) * sizeof(*sMailboxList)); + if (sMailboxList == NULL) return FALSE; - for (i = 0; i < ARRAY_COUNT(sUnknown_0203CF48); i++) - sUnknown_0203CF48[i] = WINDOW_NONE; + for (i = 0; i < ARRAY_COUNT(sMailboxWindowIds); i++) + sMailboxWindowIds[i] = WINDOW_NONE; return TRUE; } -u8 sub_81D1C84(u8 a0) +u8 MailboxMenu_AddWindow(u8 windowIdx) { - if (sUnknown_0203CF48[a0] == WINDOW_NONE) + if (sMailboxWindowIds[windowIdx] == WINDOW_NONE) { - if (a0 == 2) + if (windowIdx == MAILBOXWIN_OPTIONS) { - struct WindowTemplate template = sUnknown_086253E8[2]; + struct WindowTemplate template = sWindowTemplates_MailboxMenu[windowIdx]; template.width = GetMaxWidthInMenuTable(&gMailboxMailOptions[0], 4); - sUnknown_0203CF48[2] = AddWindow(&template); + sMailboxWindowIds[windowIdx] = AddWindow(&template); } - else + else // MAILBOXWIN_TITLE or MAILBOXWIN_LIST { - sUnknown_0203CF48[a0] = AddWindow(&sUnknown_086253E8[a0]); + sMailboxWindowIds[windowIdx] = AddWindow(&sWindowTemplates_MailboxMenu[windowIdx]); } - SetStandardWindowBorderStyle(sUnknown_0203CF48[a0], 0); + SetStandardWindowBorderStyle(sMailboxWindowIds[windowIdx], 0); } - return sUnknown_0203CF48[a0]; + return sMailboxWindowIds[windowIdx]; } -void sub_81D1D04(u8 a0) +void MailboxMenu_RemoveWindow(u8 windowIdx) { - ClearStdWindowAndFrameToTransparent(sUnknown_0203CF48[a0], 0); - ClearWindowTilemap(sUnknown_0203CF48[a0]); - RemoveWindow(sUnknown_0203CF48[a0]); - sUnknown_0203CF48[a0] = WINDOW_NONE; + ClearStdWindowAndFrameToTransparent(sMailboxWindowIds[windowIdx], 0); + ClearWindowTilemap(sMailboxWindowIds[windowIdx]); + RemoveWindow(sMailboxWindowIds[windowIdx]); + sMailboxWindowIds[windowIdx] = WINDOW_NONE; } -static u8 sub_81D1D34(u8 a0) +// Unused +static u8 MailboxMenu_GetWindowId(u8 windowIdx) { - return sUnknown_0203CF48[a0]; + return sMailboxWindowIds[windowIdx]; } -static void sub_81D1D44(u8 windowId, s32 itemId, u8 y) +static void MailboxMenu_ItemPrintFunc(u8 windowId, s32 itemId, u8 y) { u8 buffer[30]; u16 length; @@ -269,21 +271,21 @@ static void sub_81D1D44(u8 windowId, s32 itemId, u8 y) AddTextPrinterParameterized4(windowId, 1, 8, y, 0, 0, sPlayerNameTextColors, -1, buffer); } -u8 sub_81D1DC0(struct PlayerPCItemPageStruct *page) +u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page) { u16 i; for (i = 0; i < page->count; i++) { - sUnknown_0203CF4C[i].name = sEmptyItemName; - sUnknown_0203CF4C[i].id = i; + sMailboxList[i].name = sEmptyItemName; + sMailboxList[i].id = i; } - sUnknown_0203CF4C[i].name = gText_Cancel2; - sUnknown_0203CF4C[i].id = LIST_CANCEL; + sMailboxList[i].name = gText_Cancel2; + sMailboxList[i].id = LIST_CANCEL; - gMultiuseListMenuTemplate.items = sUnknown_0203CF4C; + gMultiuseListMenuTemplate.items = sMailboxList; gMultiuseListMenuTemplate.totalItems = page->count + 1; - gMultiuseListMenuTemplate.windowId = sUnknown_0203CF48[1]; + gMultiuseListMenuTemplate.windowId = sMailboxWindowIds[MAILBOXWIN_LIST]; gMultiuseListMenuTemplate.header_X = 0; gMultiuseListMenuTemplate.item_X = 8; gMultiuseListMenuTemplate.cursor_X = 0; @@ -292,8 +294,8 @@ u8 sub_81D1DC0(struct PlayerPCItemPageStruct *page) gMultiuseListMenuTemplate.cursorPal = 2; gMultiuseListMenuTemplate.fillValue = 1; gMultiuseListMenuTemplate.cursorShadowPal = 3; - gMultiuseListMenuTemplate.moveCursorFunc = sub_81D1E7C; - gMultiuseListMenuTemplate.itemPrintFunc = sub_81D1D44; + gMultiuseListMenuTemplate.moveCursorFunc = MailboxMenu_MoveCursorFunc; + gMultiuseListMenuTemplate.itemPrintFunc = MailboxMenu_ItemPrintFunc; gMultiuseListMenuTemplate.fontId = 1; gMultiuseListMenuTemplate.cursorKind = 0; gMultiuseListMenuTemplate.lettersSpacing = 0; @@ -302,20 +304,20 @@ u8 sub_81D1DC0(struct PlayerPCItemPageStruct *page) return ListMenuInit(&gMultiuseListMenuTemplate, page->itemsAbove, page->cursorPos); } -static void sub_81D1E7C(s32 itemIndex, bool8 onInit, struct ListMenu *list) +static void MailboxMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list) { if (onInit != TRUE) PlaySE(SE_SELECT); } -void sub_81D1E90(struct PlayerPCItemPageStruct *page) +void MailboxMenu_AddScrollArrows(struct PlayerPCItemPageStruct *page) { page->scrollIndicatorTaskId = AddScrollIndicatorArrowPairParameterized(2, 0xC8, 12, 0x94, page->count - page->pageItems + 1, 0x6E, 0x6E, &page->itemsAbove); } -void sub_81D1EC0(void) +void MailboxMenu_Free(void) { - Free(sUnknown_0203CF4C); + Free(sMailboxList); } void InitConditionGraphData(struct ConditionGraph *graph) diff --git a/src/party_menu.c b/src/party_menu.c index 81c39949bf9e..b59567ae8713 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -5471,7 +5471,7 @@ static void TryGiveMailToSelectedMon(u8 taskId) struct MailStruct *mail; gPartyMenuUseExitCallback = FALSE; - mail = &gSaveBlock1Ptr->mail[playerPCItemPageInfo.itemsAbove + 6 + playerPCItemPageInfo.cursorPos]; + mail = &gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos]; if (GetMonData(mon, MON_DATA_HELD_ITEM) != ITEM_NONE) { DisplayPartyMenuMessage(gText_PkmnHoldingItemCantHoldMail, TRUE); diff --git a/src/player_pc.c b/src/player_pc.c index e5c3c5a184e1..b880671c1826 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -30,24 +30,79 @@ #include "window.h" #include "menu_specialized.h" -// structures -struct Struct203BCC4 +// Top level PC menu options +enum { + MENU_ITEMSTORAGE, + MENU_MAILBOX, + MENU_DECORATION, + MENU_TURNOFF +}; + +// Item storage menu options +enum { + MENU_WITHDRAW, + MENU_DEPOSIT, + MENU_TOSS, + MENU_EXIT +}; + +// Windows for the main menus (top level menu, and item storage menu) +enum { + WIN_MAIN_MENU, + WIN_MAIN_MENU_BEDROOM, + WIN_ITEM_STORAGE_MENU, +}; + +// Windows for item storage (while viewing the PC's item inventory) +enum { + ITEMWIN_LIST, + ITEMWIN_MESSAGE, + ITEMWIN_ICON, + ITEMWIN_TITLE, + ITEMWIN_QUANTITY, + ITEMWIN_YESNO, + ITEMWIN_COUNT +}; + // When showing the main list, the first window to this window are drawn +#define ITEMWIN_LIST_END ITEMWIN_TITLE + +// Message IDs for Item Storage +enum { + MSG_SWITCH_WHICH_ITEM = 0xFFF7, + MSG_OKAY_TO_THROW_AWAY, + MSG_TOO_IMPORTANT, + MSG_NO_MORE_ROOM, + MSG_THREW_AWAY_ITEM, + MSG_HOW_MANY_TO_TOSS, + MSG_WITHDREW_ITEM, + MSG_HOW_MANY_TO_WITHDRAW, + MSG_GO_BACK_TO_PREV +}; + +#define TAG_ITEM_ICON 5110 +#define TAG_SCROLL_ARROW 5112 + +// Item list ID for toSwapPos to indicate an item is not currently being swapped +#define NOT_SWAPPING 0xFF + +#define SWAP_LINE_LENGTH 7 + +struct ItemStorageMenu { - struct ListMenuItem unk0[51]; - u8 unk198[51][0x18]; - u8 windowIds[6]; - u8 unk666; + struct ListMenuItem listItems[PC_ITEMS_COUNT + 1]; + u8 itemNames[PC_ITEMS_COUNT + 1][ITEM_NAME_LENGTH + 10]; + u8 windowIds[ITEMWIN_COUNT]; + u8 toSwapPos; u8 spriteId; - u8 spriteIds[7]; + u8 swapLineSpriteIds[SWAP_LINE_LENGTH]; }; -// static functions static void InitPlayerPCMenu(u8 taskId); static void PlayerPCProcessMenuInput(u8 taskId); static void InitItemStorageMenu(u8 taskId, u8 var); static u8 GetMailboxMailCount(void); -static void Mailbox_UpdateMailList(void); +static void Mailbox_CompactMailList(void); static void Mailbox_DrawMailboxMenu(u8 taskId); static void Mailbox_ProcessInput(u8 taskId); static void Mailbox_PrintWhatToDoWithPlayerMailText(u8 taskId); @@ -67,15 +122,14 @@ static void Mailbox_Give(u8 taskId); static void Mailbox_Cancel(u8 taskId); static void Mailbox_CancelMoveToBag(u8 taskId); -static void Mailbox_MoveToBagYesNoPrompt(u8 taskId); -static void Mailbox_DrawYesNoBeforeMove(u8 taskId); +static void Mailbox_HandleConfirmMoveToBag(u8 taskId); +static void Mailbox_AskConfirmMoveToBag(u8 taskId); static void Mailbox_DoGiveMailPokeMenu(u8 taskId); static void Mailbox_NoPokemonForMail(u8 taskId); static void Mailbox_FadeAndReadMail(u8 taskId); static void Mailbox_ReturnToFieldFromReadMail(void); -static void Mailbox_DoRedrawMailboxMenuAfterReturn(void); -static void pal_fill_for_maplights_or_black(void); +static void Mailbox_ReshowAfterMail(void); static void Mailbox_HandleReturnToProcessInput(u8 taskId); static void Mailbox_UpdateMailListAfterDeposit(void); @@ -83,91 +137,92 @@ static void ItemStorage_Withdraw(u8 taskId); static void ItemStorage_Deposit(u8 taskId); static void ItemStorage_Toss(u8 taskId); static void ItemStorage_Exit(u8 taskId); -static void ItemStorage_ResumeInputFromYesToss(u8 taskId); -static void ItemStorage_ResumeInputFromNoToss(u8 taskId); +static void ItemStorage_TossItemYes(u8 taskId); +static void ItemStorage_TossItemNo(u8 taskId); static void ItemStorageMenuPrint(const u8 *); static void ItemStorageMenuProcessInput(u8 taskId); -static void ItemStorage_ProcessWithdrawTossInput(u8 taskId); -static void ItemStorage_SetItemAndMailCount(u8); +static void SetPlayerPCListCount(u8); static void ItemStorage_HandleReturnToProcessInput(u8 taskId); -static void ItemStorage_WithdrawToss_Helper(u8 taskId, bool8 toss); +static void ItemStorage_Enter(u8 taskId, bool8 toss); +static void ItemStorage_CreateListMenu(u8 taskId); +static void ItemStorage_ProcessInput(u8 taskId); static void Task_ItemStorage_Deposit(u8 taskId); +static void ItemStorage_ReshowAfterBagMenu(void); static void ItemStorage_DoItemWithdraw(u8 taskId); static void ItemStorage_DoItemToss(u8 taskid); static void ItemStorage_HandleQuantityRolling(u8 taskid); -static void ItemStorage_GoBackToPlayerPCMenu(u8 taskId); -static void ItemStorage_ItemSwapChoosePrompt(u8 taskId); +static void ItemStorage_ExitItemList(u8 taskId); +static void ItemStorage_StartItemSwap(u8 taskId); static void ItemStorage_DoItemAction(u8 taskId); -static void ItemStorage_ProcessInput(u8 taskId); -static void ItemStorage_DoItemSwap(u8 taskId, bool8 a); +static void ItemStorage_FinishItemSwap(u8 taskId, bool8 a); static void ItemStorage_HandleRemoveItem(u8 taskId); -static void ItemStorage_WaitPressHandleResumeProcessInput(u8 taskId); -static void ItemStorage_StartScrollIndicatorAndProcessInput(u8 taskId); +static void ItemStorage_HandleErrorMessageInput(u8 taskId); +static void ItemStorage_ReturnToListInput(u8 taskId); -static const u8* ItemStorage_GetItemPcResponse(u16); +static const u8* ItemStorage_GetMessage(u16); static void CopyItemName_PlayerPC(u8 *string, u16 itemId); -static void sub_816BC14(void); -static void sub_816BFE0(u8 y, u8, u8 speed); -static void sub_816BCC4(u8); -static void UpdateSwapLinePos(u8); -static void sub_816C4FC(u8 taskId); -static void sub_816C0C8(void); -static void sub_816C060(u16 itemId); -static void sub_816BEF0(s32 id); -static void sub_816B4DC(u8 taskId); +static void ItemStorage_Init(void); +static void ItemStorage_DrawSwapArrow(u8 y, u8, u8 speed); +static void ItemStorage_RemoveWindow(u8); +static void ItemStorage_UpdateSwapLinePos(u8); +static void ItemStorage_ProcessItemSwapInput(u8 taskId); +static void ItemStorage_EraseItemIcon(void); +static void ItemStorage_DrawItemIcon(u16 itemId); +static void ItemStorage_PrintDescription(s32 id); +static void ItemStorage_EraseMainMenu(u8 taskId); static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu * thisMenu); -static void fish4_goto_x5_or_x6(u8 windowId, s32 id, u8 yOffset); +static void ItemStorage_PrintMenuItem(u8 windowId, s32 id, u8 yOffset); -// EWRAM -static EWRAM_DATA const u8 *gPcItemMenuOptionOrder = NULL; -static EWRAM_DATA u8 gPcItemMenuOptionsNum = 0; -EWRAM_DATA struct PlayerPCItemPageStruct playerPCItemPageInfo = {0, 0, 0, 0, {0, 0, 0}, 0}; -static EWRAM_DATA struct Struct203BCC4 *gUnknown_0203BCC4 = NULL; +static EWRAM_DATA const u8 *sTopMenuOptionOrder = NULL; +static EWRAM_DATA u8 sTopMenuNumOptions = 0; +EWRAM_DATA struct PlayerPCItemPageStruct gPlayerPCItemPageInfo = {}; +static EWRAM_DATA struct ItemStorageMenu *sItemStorageMenu = NULL; -// .rodata -static const u8 *const gPCText_OptionDescList[] = +static const u8 *const sItemStorage_OptionDescriptions[] = { - gText_TakeOutItemsFromPC, - gText_StoreItemsInPC, - gText_ThrowAwayItemsInPC, - gText_GoBackPrevMenu, + [MENU_WITHDRAW] = gText_TakeOutItemsFromPC, + [MENU_DEPOSIT] = gText_StoreItemsInPC, + [MENU_TOSS] = gText_ThrowAwayItemsInPC, + [MENU_EXIT] = gText_GoBackPrevMenu, }; static const struct MenuAction sPlayerPCMenuActions[] = { - { gText_ItemStorage, PlayerPC_ItemStorage }, - { gText_Mailbox, PlayerPC_Mailbox }, - { gText_Decoration, PlayerPC_Decoration }, - { gText_TurnOff, PlayerPC_TurnOff } + [MENU_ITEMSTORAGE] = { gText_ItemStorage, PlayerPC_ItemStorage }, + [MENU_MAILBOX] = { gText_Mailbox, PlayerPC_Mailbox }, + [MENU_DECORATION] = { gText_Decoration, PlayerPC_Decoration }, + [MENU_TURNOFF] = { gText_TurnOff, PlayerPC_TurnOff } }; -static const u8 gBedroomPC_OptionOrder[] = +static const u8 sBedroomPC_OptionOrder[] = { - PLAYERPC_MENU_ITEMSTORAGE, - PLAYERPC_MENU_MAILBOX, - PLAYERPC_MENU_DECORATION, - PLAYERPC_MENU_TURNOFF + MENU_ITEMSTORAGE, + MENU_MAILBOX, + MENU_DECORATION, + MENU_TURNOFF }; +#define NUM_BEDROOM_PC_OPTIONS ARRAY_COUNT(sBedroomPC_OptionOrder) -static const u8 gPlayerPC_OptionOrder[] = +static const u8 sPlayerPC_OptionOrder[] = { - PLAYERPC_MENU_ITEMSTORAGE, - PLAYERPC_MENU_MAILBOX, - PLAYERPC_MENU_TURNOFF + MENU_ITEMSTORAGE, + MENU_MAILBOX, + MENU_TURNOFF }; +#define NUM_PLAYER_PC_OPTIONS ARRAY_COUNT(sPlayerPC_OptionOrder) -static const struct MenuAction gPCText_ItemPCOptionsText[] = +static const struct MenuAction sItemStorage_MenuActions[] = { - { gText_WithdrawItem, ItemStorage_Withdraw }, - { gText_DepositItem, ItemStorage_Deposit }, - { gText_TossItem, ItemStorage_Toss }, - { gText_Cancel, ItemStorage_Exit } + [MENU_WITHDRAW] = { gText_WithdrawItem, ItemStorage_Withdraw }, + [MENU_DEPOSIT] = { gText_DepositItem, ItemStorage_Deposit }, + [MENU_TOSS] = { gText_TossItem, ItemStorage_Toss }, + [MENU_EXIT] = { gText_Cancel, ItemStorage_Exit } }; -static const struct ItemSlot gNewGamePCItems[] = +static const struct ItemSlot sNewGamePCItems[] = { { ITEM_POTION, 1 }, { ITEM_NONE, 0 } @@ -175,15 +230,15 @@ static const struct ItemSlot gNewGamePCItems[] = const struct MenuAction gMailboxMailOptions[] = { - { gText_Read, Mailbox_DoMailRead }, + { gText_Read, Mailbox_DoMailRead }, { gText_MoveToBag, Mailbox_MoveToBag }, - { gText_Give2, Mailbox_Give }, - { gText_Cancel2, Mailbox_Cancel } + { gText_Give2, Mailbox_Give }, + { gText_Cancel2, Mailbox_Cancel } }; -static const struct WindowTemplate gUnknown_085DFF24[3] = +static const struct WindowTemplate sWindowTemplates_MainMenus[] = { - { + [WIN_MAIN_MENU] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -192,7 +247,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] = .paletteNum = 15, .baseBlock = 1 }, - { + [WIN_MAIN_MENU_BEDROOM] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -201,7 +256,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] = .paletteNum = 15, .baseBlock = 1 }, - { + [WIN_ITEM_STORAGE_MENU] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -212,17 +267,17 @@ static const struct WindowTemplate gUnknown_085DFF24[3] = } }; -static const struct YesNoFuncTable ResumeFromWithdrawYesNoFuncList = // ResumeFromWithdrawYesNoFuncList +static const struct YesNoFuncTable ItemTossYesNoFuncs = { - ItemStorage_ResumeInputFromYesToss, - ItemStorage_ResumeInputFromNoToss + ItemStorage_TossItemYes, + ItemStorage_TossItemNo }; -static const struct ListMenuTemplate gUnknown_085DFF44 = +static const struct ListMenuTemplate sListMenuTemplate_ItemStorage = { .items = NULL, .moveCursorFunc = ItemStorage_MoveCursor, - .itemPrintFunc = fish4_goto_x5_or_x6, + .itemPrintFunc = ItemStorage_PrintMenuItem, .totalItems = 0, .maxShowed = 0, .windowId = 0, @@ -239,9 +294,9 @@ static const struct ListMenuTemplate gUnknown_085DFF44 = .fontId = 7 }; -static const struct WindowTemplate gUnknown_085DFF5C[5] = +static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = { - { + [ITEMWIN_LIST] = { .bg = 0, .tilemapLeft = 16, .tilemapTop = 1, @@ -250,7 +305,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] = .paletteNum = 15, .baseBlock = 0x0001 }, - { + [ITEMWIN_MESSAGE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 13, @@ -259,7 +314,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] = .paletteNum = 15, .baseBlock = 0x00EB }, - { + [ITEMWIN_ICON] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 8, @@ -268,7 +323,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] = .paletteNum = 15, .baseBlock = 0x0153 }, - { + [ITEMWIN_TITLE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -277,7 +332,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] = .paletteNum = 15, .baseBlock = 0x0139 }, - { + [ITEMWIN_QUANTITY] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 9, @@ -285,61 +340,67 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] = .height = 2, .paletteNum = 15, .baseBlock = 0x015C + }, + [ITEMWIN_YESNO] = { + .bg = 0, + .tilemapLeft = 9, + .tilemapTop = 7, + .width = 5, + .height = 4, + .paletteNum = 15, + .baseBlock = 0x0168 } }; -static const struct WindowTemplate gUnknown_085DFF84 = -{ - .bg = 0, - .tilemapLeft = 9, - .tilemapTop = 7, - .width = 5, - .height = 4, - .paletteNum = 15, - .baseBlock = 0x0168 -}; - -static const u8 gUnknown_085DFF8C[] = {0x01, 0x03, 0x02, 0x00}; +static const u8 sSwapArrowTextColors[] = {TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_DARK_GRAY}; -// text +// Macro below is likely a fakematch, equivalent to sNewGamePCItems[i].quantity +#define GET_QUANTITY(i) ((u16)((u16 *)sNewGamePCItems + 1)[i * 2]) void NewGameInitPCItems(void) { - u8 i; - - // because Game Freak don't know how to use a struct or a 2d array - for(i = 0, ClearItemSlots(gSaveBlock1Ptr->pcItems, ARRAY_COUNT(gSaveBlock1Ptr->pcItems)); NEW_GAME_PC_ITEMS(i, PC_ITEM_ID) && NEW_GAME_PC_ITEMS(i, PC_QUANTITY) && - AddPCItem(NEW_GAME_PC_ITEMS(i, PC_ITEM_ID), NEW_GAME_PC_ITEMS(i, PC_QUANTITY)) == TRUE; i++); + u8 i = 0; + ClearItemSlots(gSaveBlock1Ptr->pcItems, PC_ITEMS_COUNT); + for(; sNewGamePCItems[i].itemId != ITEM_NONE && GET_QUANTITY(i) && + AddPCItem(sNewGamePCItems[i].itemId, GET_QUANTITY(i)) == TRUE; i++); } +#undef GET_QUANTITY void BedroomPC(void) { - gPcItemMenuOptionOrder = gBedroomPC_OptionOrder; - gPcItemMenuOptionsNum = 4; + sTopMenuOptionOrder = sBedroomPC_OptionOrder; + sTopMenuNumOptions = NUM_BEDROOM_PC_OPTIONS; DisplayItemMessageOnField(CreateTask(TaskDummy, 0), gText_WhatWouldYouLike, InitPlayerPCMenu); } void PlayerPC(void) { - gPcItemMenuOptionOrder = gPlayerPC_OptionOrder; - gPcItemMenuOptionsNum = 3; + sTopMenuOptionOrder = sPlayerPC_OptionOrder; + sTopMenuNumOptions = NUM_PLAYER_PC_OPTIONS; DisplayItemMessageOnField(CreateTask(TaskDummy, 0), gText_WhatWouldYouLike, InitPlayerPCMenu); } +#define tUsedSlots data[1] +#define tQuantity data[2] +#define tInTossMenu data[3] +#define tWindowId data[4] +#define tListTaskId data[5] + static void InitPlayerPCMenu(u8 taskId) { u16 *data; struct WindowTemplate windowTemplate; - data = gTasks[taskId].data; - if (gPcItemMenuOptionsNum == 3) - windowTemplate = gUnknown_085DFF24[0]; - else - windowTemplate = gUnknown_085DFF24[1]; - windowTemplate.width = sub_81DB3D8(sPlayerPCMenuActions, gPcItemMenuOptionOrder, gPcItemMenuOptionsNum); - data[4] = AddWindow(&windowTemplate); - SetStandardWindowBorderStyle(data[4], 0); - sub_81995E4(data[4], gPcItemMenuOptionsNum, sPlayerPCMenuActions, gPcItemMenuOptionOrder); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[4], gPcItemMenuOptionsNum, 0); + + if (sTopMenuNumOptions == NUM_PLAYER_PC_OPTIONS) + windowTemplate = sWindowTemplates_MainMenus[WIN_MAIN_MENU]; + else // Bedroom PC + windowTemplate = sWindowTemplates_MainMenus[WIN_MAIN_MENU_BEDROOM]; + + windowTemplate.width = sub_81DB3D8(sPlayerPCMenuActions, sTopMenuOptionOrder, sTopMenuNumOptions); + tWindowId = AddWindow(&windowTemplate); + SetStandardWindowBorderStyle(tWindowId, 0); + sub_81995E4(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, sTopMenuNumOptions, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = PlayerPCProcessMenuInput; } @@ -350,30 +411,30 @@ static void PlayerPCProcessMenuInput(u8 taskId) s8 inputOptionId; data = gTasks[taskId].data; - if (gPcItemMenuOptionsNum > 3) + if (sTopMenuNumOptions > 3) inputOptionId = Menu_ProcessInput(); else inputOptionId = Menu_ProcessInputNoWrap(); switch (inputOptionId) { - case MENU_NOTHING_CHOSEN: - break; - case MENU_B_PRESSED: - PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(data[4], FALSE); - ClearWindowTilemap(data[4]); - RemoveWindow(data[4]); - ScheduleBgCopyTilemapToVram(0); - gTasks[taskId].func = PlayerPC_TurnOff; - break; - default: - ClearStdWindowAndFrameToTransparent(data[4], FALSE); - ClearWindowTilemap(data[4]); - RemoveWindow(data[4]); - ScheduleBgCopyTilemapToVram(0); - gTasks[taskId].func = sPlayerPCMenuActions[gPcItemMenuOptionOrder[inputOptionId]].func.void_u8; - break; + case MENU_NOTHING_CHOSEN: + break; + case MENU_B_PRESSED: + PlaySE(SE_SELECT); + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); + ClearWindowTilemap(tWindowId); + RemoveWindow(tWindowId); + ScheduleBgCopyTilemapToVram(0); + gTasks[taskId].func = PlayerPC_TurnOff; + break; + default: + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); + ClearWindowTilemap(tWindowId); + RemoveWindow(tWindowId); + ScheduleBgCopyTilemapToVram(0); + gTasks[taskId].func = sPlayerPCMenuActions[sTopMenuOptionOrder[inputOptionId]].func.void_u8; + break; } } @@ -384,31 +445,37 @@ void ReshowPlayerPC(u8 var) static void PlayerPC_ItemStorage(u8 taskId) { - InitItemStorageMenu(taskId, ITEMPC_MENU_WITHDRAW); + InitItemStorageMenu(taskId, MENU_WITHDRAW); gTasks[taskId].func = ItemStorageMenuProcessInput; } static void PlayerPC_Mailbox(u8 taskId) { - playerPCItemPageInfo.count = GetMailboxMailCount(); + gPlayerPCItemPageInfo.count = GetMailboxMailCount(); - if (playerPCItemPageInfo.count == 0) + if (gPlayerPCItemPageInfo.count == 0) + { + // Mailbox cannot be opened if no mail is in PC DisplayItemMessageOnField(taskId, gText_NoMailHere, ReshowPlayerPC); + } else { - playerPCItemPageInfo.cursorPos = 0; - playerPCItemPageInfo.itemsAbove = 0; - playerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; - Mailbox_UpdateMailList(); - ItemStorage_SetItemAndMailCount(taskId); - if (sub_81D1C44(playerPCItemPageInfo.count) == TRUE) + gPlayerPCItemPageInfo.cursorPos = 0; + gPlayerPCItemPageInfo.itemsAbove = 0; + gPlayerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; + Mailbox_CompactMailList(); + SetPlayerPCListCount(taskId); + if (MailboxMenu_Alloc(gPlayerPCItemPageInfo.count) == TRUE) { ClearDialogWindowAndFrame(0, 0); Mailbox_DrawMailboxMenu(taskId); gTasks[taskId].func = Mailbox_ProcessInput; } - else + else + { + // Alloc failed, exit Mailbox DisplayItemMessageOnField(taskId, gText_NoMailHere, ReshowPlayerPC); + } } } @@ -419,7 +486,7 @@ static void PlayerPC_Decoration(u8 taskId) static void PlayerPC_TurnOff(u8 taskId) { - if (gPcItemMenuOptionsNum == 4) // if the option count is 4, we are at the bedroom PC, so do gender specific handling. + if (sTopMenuNumOptions == NUM_BEDROOM_PC_OPTIONS) // Flimsy way to determine if Bedroom PC is in use { if (gSaveBlock2Ptr->playerGender == MALE) ScriptContext1_SetupScript(LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC); @@ -439,14 +506,14 @@ static void InitItemStorageMenu(u8 taskId, u8 var) struct WindowTemplate windowTemplate; data = gTasks[taskId].data; - windowTemplate = gUnknown_085DFF24[2]; - windowTemplate.width = GetMaxWidthInMenuTable(gPCText_ItemPCOptionsText, 4); - data[4] = AddWindow(&windowTemplate); - SetStandardWindowBorderStyle(data[4], 0); - PrintMenuTable(data[4], ARRAY_COUNT(gPCText_ItemPCOptionsText), gPCText_ItemPCOptionsText); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[4], 4, var); + windowTemplate = sWindowTemplates_MainMenus[WIN_ITEM_STORAGE_MENU]; + windowTemplate.width = GetMaxWidthInMenuTable(sItemStorage_MenuActions, ARRAY_COUNT(sItemStorage_MenuActions)); + tWindowId = AddWindow(&windowTemplate); + SetStandardWindowBorderStyle(tWindowId, 0); + PrintMenuTable(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), sItemStorage_MenuActions); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, 4, var); ScheduleBgCopyTilemapToVram(0); - ItemStorageMenuPrint(gPCText_OptionDescList[var]); + ItemStorageMenuPrint(sItemStorage_OptionDescriptions[var]); } static void ItemStorageMenuPrint(const u8 *textPtr) @@ -457,27 +524,26 @@ static void ItemStorageMenuPrint(const u8 *textPtr) static void ItemStorageMenuProcessInput(u8 taskId) { - s8 r5; - s8 r2; + s8 oldPos, newPos; s8 inputOptionId; - r5 = Menu_GetCursorPos(); + oldPos = Menu_GetCursorPos(); inputOptionId = Menu_ProcessInput(); - r2 = Menu_GetCursorPos(); + newPos = Menu_GetCursorPos(); switch (inputOptionId) { - case MENU_NOTHING_CHOSEN: - if (r5 != r2) - ItemStorageMenuPrint(gPCText_OptionDescList[r2]); - break; - case MENU_B_PRESSED: - PlaySE(SE_SELECT); - ItemStorage_Exit(taskId); - break; - default: - PlaySE(SE_SELECT); - gPCText_ItemPCOptionsText[inputOptionId].func.void_u8(taskId); - break; + case MENU_NOTHING_CHOSEN: + if (oldPos != newPos) + ItemStorageMenuPrint(sItemStorage_OptionDescriptions[newPos]); + break; + case MENU_B_PRESSED: + PlaySE(SE_SELECT); + ItemStorage_Exit(taskId); + break; + default: + PlaySE(SE_SELECT); + sItemStorage_MenuActions[inputOptionId].func.void_u8(taskId); + break; } } @@ -497,13 +563,13 @@ static void Task_ItemStorage_Deposit(u8 taskId) } } -void sub_816B31C(void) +void CB2_PlayerPCExitBagMenu(void) { - gFieldCallback = Mailbox_DoRedrawMailboxMenuAfterReturn; + gFieldCallback = ItemStorage_ReshowAfterBagMenu; SetMainCallback2(CB2_ReturnToField); } -void Mailbox_DoRedrawMailboxMenuAfterReturn(void) +static void ItemStorage_ReshowAfterBagMenu(void) { LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 1); @@ -521,12 +587,15 @@ static void ItemStorage_Withdraw(u8 taskId) { s16 *data = gTasks[taskId].data; - NUM_ITEMS = CountUsedPCItemSlots(); - if (NUM_ITEMS != 0) - ItemStorage_WithdrawToss_Helper(taskId, FALSE); + tUsedSlots = CountUsedPCItemSlots(); + if (tUsedSlots != 0) + { + ItemStorage_Enter(taskId, FALSE); + } else { - sub_816B4DC(taskId); + // Can't withdraw, no items in PC + ItemStorage_EraseMainMenu(taskId); DisplayItemMessageOnField(taskId, gText_NoItems, PlayerPC_ItemStorage); } @@ -536,136 +605,133 @@ static void ItemStorage_Toss(u8 taskId) { s16 *data = gTasks[taskId].data; - NUM_ITEMS = CountUsedPCItemSlots(); - if (NUM_ITEMS != 0) - ItemStorage_WithdrawToss_Helper(taskId, TRUE); + tUsedSlots = CountUsedPCItemSlots(); + if (tUsedSlots != 0) + { + ItemStorage_Enter(taskId, TRUE); + } else { - sub_816B4DC(taskId); + // Can't toss, no items in PC + ItemStorage_EraseMainMenu(taskId); DisplayItemMessageOnField(taskId, gText_NoItems, PlayerPC_ItemStorage); } } -static void ItemStorage_WithdrawToss_Helper(u8 taskId, bool8 toss) +static void ItemStorage_Enter(u8 taskId, bool8 toss) { u16 *data = gTasks[taskId].data; - data[3] = toss; - sub_816B4DC(taskId); - playerPCItemPageInfo.cursorPos = 0; - playerPCItemPageInfo.itemsAbove = 0; - playerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; - ItemStorage_SetItemAndMailCount(taskId); - sub_816BC14(); + tInTossMenu = toss; + ItemStorage_EraseMainMenu(taskId); + gPlayerPCItemPageInfo.cursorPos = 0; + gPlayerPCItemPageInfo.itemsAbove = 0; + gPlayerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; + SetPlayerPCListCount(taskId); + ItemStorage_Init(); FreeAndReserveObjectSpritePalettes(); LoadListMenuSwapLineGfx(); - CreateSwapLineSprites(gUnknown_0203BCC4->spriteIds, 7); + CreateSwapLineSprites(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH); ClearDialogWindowAndFrame(0,0); - gTasks[taskId].func = ItemStorage_ProcessWithdrawTossInput; + gTasks[taskId].func = ItemStorage_CreateListMenu; } static void ItemStorage_Exit(u8 taskId) { - sub_816B4DC(taskId); + ItemStorage_EraseMainMenu(taskId); ReshowPlayerPC(taskId); } - -static void ItemStorage_SetItemAndMailCount(u8 taskId) +// Used by Item Storage and the Mailbox +static void SetPlayerPCListCount(u8 taskId) { - if (playerPCItemPageInfo.count > 7) - playerPCItemPageInfo.pageItems = 8; + if (gPlayerPCItemPageInfo.count > 7) + gPlayerPCItemPageInfo.pageItems = 8; else - playerPCItemPageInfo.pageItems = playerPCItemPageInfo.count + 1; + gPlayerPCItemPageInfo.pageItems = gPlayerPCItemPageInfo.count + 1; } -static void sub_816B4DC(u8 taskId) +static void ItemStorage_EraseMainMenu(u8 taskId) { u16 *data = gTasks[taskId].data; - - ClearStdWindowAndFrameToTransparent(data[4], FALSE); - ClearWindowTilemap(data[4]); - RemoveWindow(data[4]); + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); + ClearWindowTilemap(tWindowId); + RemoveWindow(tWindowId); ScheduleBgCopyTilemapToVram(0); } static u8 GetMailboxMailCount(void) { - u8 i, j; + u8 mailInPC, i; - for(i = 0, j = PARTY_SIZE; j < MAIL_COUNT; j++) - if (gSaveBlock1Ptr->mail[j].itemId != ITEM_NONE) - i++; + // Count mail in PC (by first skipping over mail in party) + for (mailInPC = 0, i = PARTY_SIZE; i < MAIL_COUNT; i++) + if (gSaveBlock1Ptr->mail[i].itemId != ITEM_NONE) + mailInPC++; - return i; + return mailInPC; } -static void Mailbox_UpdateMailList(void) +static void Mailbox_CompactMailList(void) { - struct MailStruct mailBuffer; + struct MailStruct temp; u8 i, j; for (i = PARTY_SIZE; i < MAIL_COUNT - 1; i++) { for (j = i + 1; j < MAIL_COUNT; j++) { - if (gSaveBlock1Ptr->mail[i].itemId == 0) - { - mailBuffer = gSaveBlock1Ptr->mail[i]; - gSaveBlock1Ptr->mail[i] = gSaveBlock1Ptr->mail[j]; - gSaveBlock1Ptr->mail[j] = mailBuffer; - } + if (gSaveBlock1Ptr->mail[i].itemId == ITEM_NONE) + SWAP(gSaveBlock1Ptr->mail[i], gSaveBlock1Ptr->mail[j], temp); } } } static void Mailbox_DrawMailboxMenu(u8 taskId) { - u8 windowId; - - windowId = sub_81D1C84(0); - sub_81D1C84(1); + u8 windowId = MailboxMenu_AddWindow(MAILBOXWIN_TITLE); + MailboxMenu_AddWindow(MAILBOXWIN_LIST); AddTextPrinterParameterized(windowId, 1, gText_Mailbox, GetStringCenterAlignXOffset(1, gText_Mailbox, 0x40), 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); - gTasks[taskId].data[5] = sub_81D1DC0(&playerPCItemPageInfo); - sub_81D1E90(&playerPCItemPageInfo); + gTasks[taskId].tListTaskId = MailboxMenu_CreateList(&gPlayerPCItemPageInfo); + MailboxMenu_AddScrollArrows(&gPlayerPCItemPageInfo); } static void Mailbox_ProcessInput(u8 taskId) { u16 *data = gTasks[taskId].data; - s32 inputOptionId; if (!gPaletteFade.active) { - inputOptionId = ListMenu_ProcessInput(data[5]); - ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); + s32 inputOptionId = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); switch (inputOptionId) { - case LIST_NOTHING_CHOSEN: - break; - case LIST_CANCEL: - PlaySE(SE_SELECT); - RemoveScrollIndicatorArrowPair(playerPCItemPageInfo.scrollIndicatorTaskId); - Mailbox_ReturnToPlayerPC(taskId); - break; - default: - PlaySE(SE_SELECT); - sub_81D1D04(0); - sub_81D1D04(1); - DestroyListMenuTask(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - ScheduleBgCopyTilemapToVram(0); - RemoveScrollIndicatorArrowPair(playerPCItemPageInfo.scrollIndicatorTaskId); - gTasks[taskId].func = Mailbox_PrintWhatToDoWithPlayerMailText; - break; + case LIST_NOTHING_CHOSEN: + break; + case LIST_CANCEL: + PlaySE(SE_SELECT); + RemoveScrollIndicatorArrowPair(gPlayerPCItemPageInfo.scrollIndicatorTaskId); + Mailbox_ReturnToPlayerPC(taskId); + break; + default: + // Selected mail, ask what to do with it + PlaySE(SE_SELECT); + MailboxMenu_RemoveWindow(MAILBOXWIN_TITLE); + MailboxMenu_RemoveWindow(MAILBOXWIN_LIST); + DestroyListMenuTask(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + ScheduleBgCopyTilemapToVram(0); + RemoveScrollIndicatorArrowPair(gPlayerPCItemPageInfo.scrollIndicatorTaskId); + gTasks[taskId].func = Mailbox_PrintWhatToDoWithPlayerMailText; + break; } } } static void Mailbox_PrintWhatToDoWithPlayerMailText(u8 taskId) { - StringCopy(gStringVar1, gSaveBlock1Ptr->mail[playerPCItemPageInfo.itemsAbove + PARTY_SIZE + playerPCItemPageInfo.cursorPos].playerName); + StringCopy(gStringVar1, gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos].playerName); ConvertInternationalPlayerNameStripChar(gStringVar1, CHAR_SPACE); StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithVar1sMail); DisplayItemMessageOnField(taskId, gStringVar4, Mailbox_PrintMailOptions); @@ -675,19 +741,19 @@ static void Mailbox_ReturnToPlayerPC(u8 taskId) { s16 *data = gTasks[taskId].data; - sub_81D1D04(0); - sub_81D1D04(1); - DestroyListMenuTask(data[5], NULL, NULL); + MailboxMenu_RemoveWindow(MAILBOXWIN_TITLE); + MailboxMenu_RemoveWindow(MAILBOXWIN_LIST); + DestroyListMenuTask(tListTaskId, NULL, NULL); ScheduleBgCopyTilemapToVram(0); - sub_81D1EC0(); + MailboxMenu_Free(); ReshowPlayerPC(taskId); } static void Mailbox_PrintMailOptions(u8 taskId) { - u8 r4 = sub_81D1C84(2); - PrintMenuTable(r4, ARRAY_COUNT(gMailboxMailOptions), gMailboxMailOptions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(r4, 4, 0); + u8 windowId = MailboxMenu_AddWindow(MAILBOXWIN_OPTIONS); + PrintMenuTable(windowId, ARRAY_COUNT(gMailboxMailOptions), gMailboxMailOptions); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, 4, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Mailbox_MailOptionsProcessInput; } @@ -696,19 +762,18 @@ static void Mailbox_MailOptionsProcessInput(u8 taskId) { s8 inputOptionId = ProcessMenuInput_other(); - switch(inputOptionId) + switch (inputOptionId) { - case -2: - break; - case -1: - PlaySE(SE_SELECT); - Mailbox_Cancel(taskId); - break; - - default: - PlaySE(SE_SELECT); - gMailboxMailOptions[inputOptionId].func.void_u8(taskId); - break; + case MENU_NOTHING_CHOSEN: + break; + case MENU_B_PRESSED: + PlaySE(SE_SELECT); + Mailbox_Cancel(taskId); + break; + default: + PlaySE(SE_SELECT); + gMailboxMailOptions[inputOptionId].func.void_u8(taskId); + break; } } @@ -722,26 +787,26 @@ static void Mailbox_FadeAndReadMail(u8 taskId) { if (!gPaletteFade.active) { - sub_81D1EC0(); + MailboxMenu_Free(); CleanupOverworldWindowsAndTilemaps(); - ReadMail(&(gSaveBlock1Ptr->mail[playerPCItemPageInfo.itemsAbove + PARTY_SIZE + playerPCItemPageInfo.cursorPos]), Mailbox_ReturnToFieldFromReadMail, TRUE); + ReadMail(&gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos], Mailbox_ReturnToFieldFromReadMail, TRUE); DestroyTask(taskId); } } static void Mailbox_ReturnToFieldFromReadMail(void) { - gFieldCallback = pal_fill_for_maplights_or_black; + gFieldCallback = Mailbox_ReshowAfterMail; SetMainCallback2(CB2_ReturnToField); } -static void pal_fill_for_maplights_or_black(void) +static void Mailbox_ReshowAfterMail(void) { u8 taskId; LoadMessageBoxAndBorderGfx(); taskId = CreateTask(Mailbox_HandleReturnToProcessInput, 0); - if (sub_81D1C44(playerPCItemPageInfo.count) == TRUE) + if (MailboxMenu_Alloc(gPlayerPCItemPageInfo.count) == TRUE) Mailbox_DrawMailboxMenu(taskId); else DestroyTask(taskId); @@ -756,49 +821,49 @@ static void Mailbox_HandleReturnToProcessInput(u8 taskId) static void Mailbox_MoveToBag(u8 taskId) { - DisplayItemMessageOnField(taskId, gText_MessageWillBeLost, Mailbox_DrawYesNoBeforeMove); + DisplayItemMessageOnField(taskId, gText_MessageWillBeLost, Mailbox_AskConfirmMoveToBag); } -static void Mailbox_DrawYesNoBeforeMove(u8 taskId) +static void Mailbox_AskConfirmMoveToBag(u8 taskId) { DisplayYesNoMenuDefaultYes(); - gTasks[taskId].func = Mailbox_MoveToBagYesNoPrompt; + gTasks[taskId].func = Mailbox_HandleConfirmMoveToBag; } -static void Mailbox_MoveToBagYesNoPrompt(u8 taskId) +static void Mailbox_HandleConfirmMoveToBag(u8 taskId) { - switch(Menu_ProcessInputNoWrapClearOnChoose()) + switch (Menu_ProcessInputNoWrapClearOnChoose()) { - case 0: - Mailbox_DoMailMoveToBag(taskId); - break; - case -1: - PlaySE(SE_SELECT); - case 1: - Mailbox_CancelMoveToBag(taskId); - break; - case -2: - default: - break; + case 0: // Yes + Mailbox_DoMailMoveToBag(taskId); + break; + case MENU_B_PRESSED: + PlaySE(SE_SELECT); + case 1: // No + Mailbox_CancelMoveToBag(taskId); + break; + case MENU_NOTHING_CHOSEN: + default: + break; } } static void Mailbox_DoMailMoveToBag(u8 taskId) { - struct MailStruct *mailStruct = &(gSaveBlock1Ptr->mail[playerPCItemPageInfo.itemsAbove + PARTY_SIZE + playerPCItemPageInfo.cursorPos]); - if (!AddBagItem(mailStruct->itemId, 1)) + struct MailStruct *mail = &gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos]; + if (!AddBagItem(mail->itemId, 1)) { DisplayItemMessageOnField(taskId, gText_BagIsFull, Mailbox_Cancel); } else { DisplayItemMessageOnField(taskId, gText_MailToBagMessageErased, Mailbox_Cancel); - ClearMailStruct(mailStruct); - Mailbox_UpdateMailList(); - playerPCItemPageInfo.count--; - if (playerPCItemPageInfo.count < (playerPCItemPageInfo.pageItems + playerPCItemPageInfo.itemsAbove) && playerPCItemPageInfo.itemsAbove != 0) - playerPCItemPageInfo.itemsAbove--; - ItemStorage_SetItemAndMailCount(taskId); + ClearMailStruct(mail); + Mailbox_CompactMailList(); + gPlayerPCItemPageInfo.count--; + if (gPlayerPCItemPageInfo.count < (gPlayerPCItemPageInfo.pageItems + gPlayerPCItemPageInfo.itemsAbove) && gPlayerPCItemPageInfo.itemsAbove != 0) + gPlayerPCItemPageInfo.itemsAbove--; + SetPlayerPCListCount(taskId); } } @@ -822,7 +887,7 @@ static void Mailbox_DoGiveMailPokeMenu(u8 taskId) { if (!gPaletteFade.active) { - sub_81D1EC0(); + MailboxMenu_Free(); CleanupOverworldWindowsAndTilemaps(); ChooseMonToGiveMailFromMailbox(); DestroyTask(taskId); @@ -840,15 +905,15 @@ static void Mailbox_UpdateMailListAfterDeposit(void) u8 taskId; u8 prevCount; taskId = CreateTask(Mailbox_HandleReturnToProcessInput, 0); - prevCount = playerPCItemPageInfo.count; - playerPCItemPageInfo.count = GetMailboxMailCount(); - Mailbox_UpdateMailList(); - if (prevCount != playerPCItemPageInfo.count && (playerPCItemPageInfo.count < (playerPCItemPageInfo.pageItems + playerPCItemPageInfo.itemsAbove)) - && playerPCItemPageInfo.itemsAbove != 0) - playerPCItemPageInfo.itemsAbove--; - ItemStorage_SetItemAndMailCount(taskId); + prevCount = gPlayerPCItemPageInfo.count; + gPlayerPCItemPageInfo.count = GetMailboxMailCount(); + Mailbox_CompactMailList(); + if (prevCount != gPlayerPCItemPageInfo.count && (gPlayerPCItemPageInfo.count < (gPlayerPCItemPageInfo.pageItems + gPlayerPCItemPageInfo.itemsAbove)) + && gPlayerPCItemPageInfo.itemsAbove != 0) + gPlayerPCItemPageInfo.itemsAbove--; + SetPlayerPCListCount(taskId); LoadMessageBoxAndBorderGfx(); - if (sub_81D1C44(playerPCItemPageInfo.count) == TRUE) + if (MailboxMenu_Alloc(gPlayerPCItemPageInfo.count) == TRUE) Mailbox_DrawMailboxMenu(taskId); else DestroyTask(taskId); @@ -862,45 +927,44 @@ static void Mailbox_NoPokemonForMail(u8 taskId) static void Mailbox_Cancel(u8 taskId) { - sub_81D1D04(2); + MailboxMenu_RemoveWindow(MAILBOXWIN_OPTIONS); ClearDialogWindowAndFrame(0, 0); Mailbox_DrawMailboxMenu(taskId); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Mailbox_ProcessInput; } -static void sub_816BC14(void) +static void ItemStorage_Init(void) { - gUnknown_0203BCC4 = AllocZeroed(sizeof(struct Struct203BCC4)); - memset(gUnknown_0203BCC4->windowIds, 0xFF, 0x6); - gUnknown_0203BCC4->unk666 = 0xFF; - gUnknown_0203BCC4->spriteId = SPRITE_NONE; + sItemStorageMenu = AllocZeroed(sizeof(*sItemStorageMenu)); + memset(sItemStorageMenu->windowIds, WINDOW_NONE, ITEMWIN_COUNT); + sItemStorageMenu->toSwapPos = NOT_SWAPPING; + sItemStorageMenu->spriteId = SPRITE_NONE; } -static void sub_816BC58(void) +static void ItemStorage_Free(void) { u32 i; - - for(i = 0; i < 6; i++) - sub_816BCC4(i); - Free(gUnknown_0203BCC4); + for (i = 0; i < ITEMWIN_COUNT; i++) + ItemStorage_RemoveWindow(i); + Free(sItemStorageMenu); } -static u8 sub_816BC7C(u8 a) +static u8 ItemStorage_AddWindow(u8 i) { - u8 *windowIdLoc = &(gUnknown_0203BCC4->windowIds[a]); + u8 *windowIdLoc = &sItemStorageMenu->windowIds[i]; if (*windowIdLoc == WINDOW_NONE) { - *windowIdLoc = AddWindow(&gUnknown_085DFF5C[a]); + *windowIdLoc = AddWindow(&sWindowTemplates_ItemStorage[i]); DrawStdFrameWithCustomTileAndPalette(*windowIdLoc, FALSE, 0x214, 0xE); ScheduleBgCopyTilemapToVram(0); } return *windowIdLoc; } -static void sub_816BCC4(u8 a) +static void ItemStorage_RemoveWindow(u8 i) { - u8 *windowIdLoc = &(gUnknown_0203BCC4->windowIds[a]); + u8 *windowIdLoc = &sItemStorageMenu->windowIds[i]; if (*windowIdLoc != WINDOW_NONE) { ClearStdWindowAndFrameToTransparent(*windowIdLoc, FALSE); @@ -915,20 +979,25 @@ void ItemStorage_RefreshListMenu(void) { u16 i; - for(i = 0; i < playerPCItemPageInfo.count - 1; i++) + // Copy item names for all entries but the last (which is Cancel) + for(i = 0; i < gPlayerPCItemPageInfo.count - 1; i++) { - CopyItemName_PlayerPC(&(gUnknown_0203BCC4->unk198[i][0]), gSaveBlock1Ptr->pcItems[i].itemId); - gUnknown_0203BCC4->unk0[i].name = &(gUnknown_0203BCC4->unk198[i][0]); - gUnknown_0203BCC4->unk0[i].id = i; + CopyItemName_PlayerPC(&sItemStorageMenu->itemNames[i][0], gSaveBlock1Ptr->pcItems[i].itemId); + sItemStorageMenu->listItems[i].name = &sItemStorageMenu->itemNames[i][0]; + sItemStorageMenu->listItems[i].id = i; } - StringCopy(&(gUnknown_0203BCC4->unk198[i][0]) ,gText_Cancel2); - gUnknown_0203BCC4->unk0[i].name = &(gUnknown_0203BCC4->unk198[i][0]); - gUnknown_0203BCC4->unk0[i].id = -2; - gMultiuseListMenuTemplate = gUnknown_085DFF44; - gMultiuseListMenuTemplate.windowId = sub_816BC7C(0); - gMultiuseListMenuTemplate.totalItems = playerPCItemPageInfo.count; - gMultiuseListMenuTemplate.items = gUnknown_0203BCC4->unk0; - gMultiuseListMenuTemplate.maxShowed = playerPCItemPageInfo.pageItems; + + // Set up Cancel entry + StringCopy(&sItemStorageMenu->itemNames[i][0], gText_Cancel2); + sItemStorageMenu->listItems[i].name = &sItemStorageMenu->itemNames[i][0]; + sItemStorageMenu->listItems[i].id = LIST_CANCEL; + + // Set list menu data + gMultiuseListMenuTemplate = sListMenuTemplate_ItemStorage; + gMultiuseListMenuTemplate.windowId = ItemStorage_AddWindow(ITEMWIN_LIST); + gMultiuseListMenuTemplate.totalItems = gPlayerPCItemPageInfo.count; + gMultiuseListMenuTemplate.items = sItemStorageMenu->listItems; + gMultiuseListMenuTemplate.maxShowed = gPlayerPCItemPageInfo.pageItems; } void CopyItemName_PlayerPC(u8 *string, u16 itemId) @@ -936,31 +1005,31 @@ void CopyItemName_PlayerPC(u8 *string, u16 itemId) CopyItemName(itemId, string); } -static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu *thisMenu) +static void ItemStorage_MoveCursor(s32 id, bool8 onInit, struct ListMenu *list) { - if (b != TRUE) + if (onInit != TRUE) PlaySE(SE_SELECT); - if (gUnknown_0203BCC4->unk666 == 0xFF) + if (sItemStorageMenu->toSwapPos == NOT_SWAPPING) { - sub_816C0C8(); - if (id != -2) - sub_816C060(gSaveBlock1Ptr->pcItems[id].itemId); + ItemStorage_EraseItemIcon(); + if (id != LIST_CANCEL) + ItemStorage_DrawItemIcon(gSaveBlock1Ptr->pcItems[id].itemId); else - sub_816C060(ITEMPC_GO_BACK_TO_PREV); - sub_816BEF0(id); + ItemStorage_DrawItemIcon(MSG_GO_BACK_TO_PREV); + ItemStorage_PrintDescription(id); } } -static void fish4_goto_x5_or_x6(u8 windowId, s32 id, u8 yOffset) +static void ItemStorage_PrintMenuItem(u8 windowId, s32 id, u8 yOffset) { - if (id != -2) + if (id != LIST_CANCEL) { - if (gUnknown_0203BCC4->unk666 != 0xFF) + if (sItemStorageMenu->toSwapPos != NOT_SWAPPING) { - if (gUnknown_0203BCC4->unk666 == (u8)id) - sub_816BFE0(yOffset, 0, 0xFF); + if (sItemStorageMenu->toSwapPos == (u8)id) + ItemStorage_DrawSwapArrow(yOffset, 0, TEXT_SPEED_FF); else - sub_816BFE0(yOffset, 0xFF, 0xFF); + ItemStorage_DrawSwapArrow(yOffset, 0xFF, TEXT_SPEED_FF); } ConvertIntToDecimalStringN(gStringVar1, gSaveBlock1Ptr->pcItems[id].quantity, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_xVar1); @@ -968,58 +1037,64 @@ static void fish4_goto_x5_or_x6(u8 windowId, s32 id, u8 yOffset) } } -static void sub_816BEF0(s32 id) +static void ItemStorage_PrintDescription(s32 id) { const u8* description; - u8 windowId = gUnknown_0203BCC4->windowIds[1]; + u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_MESSAGE]; - if (id != -2) + // Get item description (or Cancel text) + if (id != LIST_CANCEL) description = (u8 *)ItemId_GetDescription(gSaveBlock1Ptr->pcItems[id].itemId); else - description = ItemStorage_GetItemPcResponse(ITEMPC_GO_BACK_TO_PREV); + description = ItemStorage_GetMessage(MSG_GO_BACK_TO_PREV); + FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); AddTextPrinterParameterized(windowId, 1, description, 0, 1, 0, NULL); } -static void ItemStorage_StartScrollIndicator(void) +static void ItemStorage_AddScrollIndicator(void) { - if (playerPCItemPageInfo.scrollIndicatorTaskId == TASK_NONE) - playerPCItemPageInfo.scrollIndicatorTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 0xB0, 0xC, 0x94, playerPCItemPageInfo.count - playerPCItemPageInfo.pageItems, 0x13F8, 0x13F8, &(playerPCItemPageInfo.itemsAbove)); + if (gPlayerPCItemPageInfo.scrollIndicatorTaskId == TASK_NONE) + gPlayerPCItemPageInfo.scrollIndicatorTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 176, 12, 148, + gPlayerPCItemPageInfo.count - gPlayerPCItemPageInfo.pageItems, + TAG_SCROLL_ARROW, + TAG_SCROLL_ARROW, + &gPlayerPCItemPageInfo.itemsAbove); } static void ItemStorage_RemoveScrollIndicator(void) { - if (playerPCItemPageInfo.scrollIndicatorTaskId != TASK_NONE) + if (gPlayerPCItemPageInfo.scrollIndicatorTaskId != TASK_NONE) { - RemoveScrollIndicatorArrowPair(playerPCItemPageInfo.scrollIndicatorTaskId); - playerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; + RemoveScrollIndicatorArrowPair(gPlayerPCItemPageInfo.scrollIndicatorTaskId); + gPlayerPCItemPageInfo.scrollIndicatorTaskId = TASK_NONE; } } -static void sub_816BFB8(u8 a, u8 b, u8 speed) +static void ItemStorage_SetSwapArrow(u8 listTaskId, u8 b, u8 speed) { - sub_816BFE0(ListMenuGetYCoordForPrintingArrowCursor(a), b, speed); + ItemStorage_DrawSwapArrow(ListMenuGetYCoordForPrintingArrowCursor(listTaskId), b, speed); } -static void sub_816BFE0(u8 y, u8 b, u8 speed) +static void ItemStorage_DrawSwapArrow(u8 y, u8 b, u8 speed) { - u8 windowId = gUnknown_0203BCC4->windowIds[0]; + u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_LIST]; if (b == 0xFF) FillWindowPixelRect(windowId, PIXEL_FILL(1), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); else - AddTextPrinterParameterized4(windowId, 1, 0, y, 0, 0, gUnknown_085DFF8C, speed, gText_SelectorArrow2); + AddTextPrinterParameterized4(windowId, 1, 0, y, 0, 0, sSwapArrowTextColors, speed, gText_SelectorArrow2); } -static void sub_816C060(u16 itemId) +static void ItemStorage_DrawItemIcon(u16 itemId) { u8 spriteId; - u8* spriteIdLoc = &(gUnknown_0203BCC4->spriteId); + u8* spriteIdLoc = &sItemStorageMenu->spriteId; if (*spriteIdLoc == SPRITE_NONE) { - FreeSpriteTilesByTag(0x13F6); - FreeSpritePaletteByTag(0x13F6); - spriteId = AddItemIconSprite(0x13F6, 0x13F6, itemId); + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + spriteId = AddItemIconSprite(TAG_ITEM_ICON, TAG_ITEM_ICON, itemId); if (spriteId != MAX_SPRITES) { *spriteIdLoc = spriteId; @@ -1030,30 +1105,30 @@ static void sub_816C060(u16 itemId) } } -static void sub_816C0C8(void) +static void ItemStorage_EraseItemIcon(void) { - u8* spriteIdLoc = &(gUnknown_0203BCC4->spriteId); + u8* spriteIdLoc = &sItemStorageMenu->spriteId; if (*spriteIdLoc != SPRITE_NONE) { - FreeSpriteTilesByTag(0x13F6); - FreeSpritePaletteByTag(0x13F6); - DestroySprite(&(gSprites[*spriteIdLoc])); + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + DestroySprite(&gSprites[*spriteIdLoc]); *spriteIdLoc = SPRITE_NONE; } } -static void sub_816C110(void) +static void ItemStorage_CompactList(void) { CompactPCItems(); - sub_812220C(gSaveBlock1Ptr->pcItems, 50, &(playerPCItemPageInfo.pageItems), &(playerPCItemPageInfo.count), 0x8); + SetItemListPerPageCount(gSaveBlock1Ptr->pcItems, PC_ITEMS_COUNT, &gPlayerPCItemPageInfo.pageItems, &gPlayerPCItemPageInfo.count, 8); } -static void sub_816C140(void) +static void ItemStorage_CompactCursor(void) { - sub_812225C(&(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos), playerPCItemPageInfo.pageItems, playerPCItemPageInfo.count); + SetCursorWithinListBounds(&gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos, gPlayerPCItemPageInfo.pageItems, gPlayerPCItemPageInfo.count); } -static void ItemStorage_ProcessWithdrawTossInput(u8 taskId) +static void ItemStorage_CreateListMenu(u8 taskId) { s16 *data; bool32 toss; @@ -1061,98 +1136,97 @@ static void ItemStorage_ProcessWithdrawTossInput(u8 taskId) const u8* text; data = gTasks[taskId].data; - for(i = 0; i <=3; i++) - sub_816BC7C(i); - toss = data[3]; + for (i = 0; i <= ITEMWIN_LIST_END; i++) + ItemStorage_AddWindow(i); + toss = tInTossMenu; text = gText_TossItem; if (!toss) text = gText_WithdrawItem; x = GetStringCenterAlignXOffset(1, text, 104); - AddTextPrinterParameterized(gUnknown_0203BCC4->windowIds[3], 1, text, x, 1, 0, NULL); - CopyWindowToVram(gUnknown_0203BCC4->windowIds[2], 2); - sub_816C110(); - sub_816C140(); + AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMWIN_TITLE], 1, text, x, 1, 0, NULL); + CopyWindowToVram(sItemStorageMenu->windowIds[ITEMWIN_ICON], 2); + ItemStorage_CompactList(); + ItemStorage_CompactCursor(); ItemStorage_RefreshListMenu(); - data[5] = ListMenuInit(&gMultiuseListMenuTemplate, playerPCItemPageInfo.itemsAbove, playerPCItemPageInfo.cursorPos); - ItemStorage_StartScrollIndicator(); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gPlayerPCItemPageInfo.itemsAbove, gPlayerPCItemPageInfo.cursorPos); + ItemStorage_AddScrollIndicator(); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = ItemStorage_ProcessInput; } -static const u8* ItemStorage_GetItemPcResponse(u16 itemId) +static const u8* ItemStorage_GetMessage(u16 itemId) { const u8 *string; switch(itemId) { - case ITEMPC_GO_BACK_TO_PREV: - string = gText_GoBackPrevMenu; - break; - case ITEMPC_HOW_MANY_TO_WITHDRAW: - string = gText_WithdrawHowManyItems; - break; - case ITEMPC_WITHDREW_THING: - string = gText_WithdrawXItems; - break; - case ITEMPC_HOW_MANY_TO_TOSS: - string = gText_TossHowManyVar1s; - break; - case ITEMPC_THREW_AWAY_ITEM: - string = gText_ThrewAwayVar2Var1s; - break; - case ITEMPC_NO_MORE_ROOM: - string = gText_NoRoomInBag; - break; - case ITEMPC_TOO_IMPORTANT: - string = gText_TooImportantToToss; - break; - case ITEMPC_OKAY_TO_THROW_AWAY: - string = gText_ConfirmTossItems; - break; - case ITEMPC_SWITCH_WHICH_ITEM: - string = gText_MoveVar1Where; - break; - default: - string = ItemId_GetDescription(itemId); - break; + case MSG_GO_BACK_TO_PREV: + string = gText_GoBackPrevMenu; + break; + case MSG_HOW_MANY_TO_WITHDRAW: + string = gText_WithdrawHowManyItems; + break; + case MSG_WITHDREW_ITEM: + string = gText_WithdrawXItems; + break; + case MSG_HOW_MANY_TO_TOSS: + string = gText_TossHowManyVar1s; + break; + case MSG_THREW_AWAY_ITEM: + string = gText_ThrewAwayVar2Var1s; + break; + case MSG_NO_MORE_ROOM: + string = gText_NoRoomInBag; + break; + case MSG_TOO_IMPORTANT: + string = gText_TooImportantToToss; + break; + case MSG_OKAY_TO_THROW_AWAY: + string = gText_ConfirmTossItems; + break; + case MSG_SWITCH_WHICH_ITEM: + string = gText_MoveVar1Where; + break; + default: + string = ItemId_GetDescription(itemId); + break; } return string; } -static void ItemStorage_PrintItemPcResponse(const u8 *string) +static void ItemStorage_PrintMessage(const u8 *string) { - u8 windowId = gUnknown_0203BCC4->windowIds[1]; + u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_MESSAGE]; FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, string); AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, 0, NULL); } +// Process input while on the item storage's item list static void ItemStorage_ProcessInput(u8 taskId) { - s16 *data; - s32 id; - - data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (JOY_NEW(SELECT_BUTTON)) { - ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - if ((playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos) != (playerPCItemPageInfo.count - 1)) + // 'Select' starts input for swapping items if not on Cancel + ListMenuGetScrollAndRow(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + if (gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos != gPlayerPCItemPageInfo.count - 1) { PlaySE(SE_SELECT); - ItemStorage_ItemSwapChoosePrompt(taskId); + ItemStorage_StartItemSwap(taskId); } } else { - id = ListMenu_ProcessInput(data[5]); - ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - switch(id) + s32 id = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + switch (id) { case LIST_NOTHING_CHOSEN: break; case LIST_CANCEL: PlaySE(SE_SELECT); - ItemStorage_GoBackToPlayerPCMenu(taskId); + ItemStorage_ExitItemList(taskId); break; default: PlaySE(SE_SELECT); @@ -1162,50 +1236,46 @@ static void ItemStorage_ProcessInput(u8 taskId) } } -static void ItemStorage_GoBackToPlayerPCMenu_InitStorage(u8 taskId) +static void ItemStorage_ReturnToMenuSelect(u8 taskId) { - s16 *data; - - data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!IsDma3ManagerBusyWithBgCopy()) { DrawDialogueFrame(0, 0); - if (!data[3]) - InitItemStorageMenu(taskId, ITEMPC_MENU_WITHDRAW); + + // Select Withdraw/Toss by default depending on which was just exited + if (!tInTossMenu) + InitItemStorageMenu(taskId, MENU_WITHDRAW); else - InitItemStorageMenu(taskId, ITEMPC_MENU_TOSS); + InitItemStorageMenu(taskId, MENU_TOSS); gTasks[taskId].func = ItemStorageMenuProcessInput; } } -static void ItemStorage_GoBackToPlayerPCMenu(u8 taskId) +static void ItemStorage_ExitItemList(u8 taskId) { - s16 *data; - - data = gTasks[taskId].data; - sub_816C0C8(); + s16 *data = gTasks[taskId].data; + ItemStorage_EraseItemIcon(); ItemStorage_RemoveScrollIndicator(); - DestroyListMenuTask(data[5], NULL, NULL); - DestroySwapLineSprites(gUnknown_0203BCC4->spriteIds, 7); - sub_816BC58(); - gTasks[taskId].func = ItemStorage_GoBackToPlayerPCMenu_InitStorage; + DestroyListMenuTask(tListTaskId, NULL, NULL); + DestroySwapLineSprites(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH); + ItemStorage_Free(); + gTasks[taskId].func = ItemStorage_ReturnToMenuSelect; } -static void ItemStorage_ItemSwapChoosePrompt(u8 taskId) +static void ItemStorage_StartItemSwap(u8 taskId) { - s16 *data; - - data = gTasks[taskId].data; - ListMenuSetUnkIndicatorsStructField(data[5], 16, 1); - gUnknown_0203BCC4->unk666 = (playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos); - sub_816BFB8(data[5], 0, 0); - UpdateSwapLinePos(gUnknown_0203BCC4->unk666); - CopyItemName(gSaveBlock1Ptr->pcItems[gUnknown_0203BCC4->unk666].itemId, gStringVar1); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_SWITCH_WHICH_ITEM)); - gTasks[taskId].func = sub_816C4FC; + s16 *data = gTasks[taskId].data; + ListMenuSetUnkIndicatorsStructField(tListTaskId, 16, 1); + sItemStorageMenu->toSwapPos = gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos; + ItemStorage_SetSwapArrow(tListTaskId, 0, 0); + ItemStorage_UpdateSwapLinePos(sItemStorageMenu->toSwapPos); + CopyItemName(gSaveBlock1Ptr->pcItems[sItemStorageMenu->toSwapPos].itemId, gStringVar1); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_SWITCH_WHICH_ITEM)); + gTasks[taskId].func = ItemStorage_ProcessItemSwapInput; } -static void sub_816C4FC(u8 taskId) +static void ItemStorage_ProcessItemSwapInput(u8 taskId) { s16 *data; s32 id; @@ -1213,230 +1283,220 @@ static void sub_816C4FC(u8 taskId) data = gTasks[taskId].data; if (JOY_NEW(SELECT_BUTTON)) { - ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - ItemStorage_DoItemSwap(taskId, FALSE); + ListMenuGetScrollAndRow(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + ItemStorage_FinishItemSwap(taskId, FALSE); return; } - id = ListMenu_ProcessInput(data[5]); - ListMenuGetScrollAndRow(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - SetSwapLineSpritesInvisibility(gUnknown_0203BCC4->spriteIds, 7, FALSE); - UpdateSwapLinePos(playerPCItemPageInfo.cursorPos); - switch(id) + id = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + SetSwapLineSpritesInvisibility(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH, FALSE); + ItemStorage_UpdateSwapLinePos(gPlayerPCItemPageInfo.cursorPos); + switch (id) { case LIST_NOTHING_CHOSEN: break; case LIST_CANCEL: if (JOY_NEW(A_BUTTON)) - { - ItemStorage_DoItemSwap(taskId, FALSE); - } + ItemStorage_FinishItemSwap(taskId, FALSE); else - { - ItemStorage_DoItemSwap(taskId, TRUE); - } + ItemStorage_FinishItemSwap(taskId, TRUE); break; default: - ItemStorage_DoItemSwap(taskId, FALSE); + ItemStorage_FinishItemSwap(taskId, FALSE); break; } } -static void ItemStorage_DoItemSwap(u8 taskId, bool8 a) +static void ItemStorage_FinishItemSwap(u8 taskId, bool8 canceled) { - s16 *data; - u16 b; - u8 c; - - data = gTasks[taskId].data; - b = (playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos); + s16 *data = gTasks[taskId].data; + u16 newPos = gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos; PlaySE(SE_SELECT); - DestroyListMenuTask(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - if (!a) + DestroyListMenuTask(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + + if (!canceled && sItemStorageMenu->toSwapPos != newPos && sItemStorageMenu->toSwapPos != newPos - 1) { - c = gUnknown_0203BCC4->unk666; - if (c != b) - { - if (c != b - 1) - { - MoveItemSlotInList(gSaveBlock1Ptr->pcItems, c, b); - ItemStorage_RefreshListMenu(); - } - } - else - goto LABEL_SKIP_CURSOR_DECREMENT; + MoveItemSlotInList(gSaveBlock1Ptr->pcItems, sItemStorageMenu->toSwapPos, newPos); + ItemStorage_RefreshListMenu(); } - if (gUnknown_0203BCC4->unk666 < b) - playerPCItemPageInfo.cursorPos--; - LABEL_SKIP_CURSOR_DECREMENT: - SetSwapLineSpritesInvisibility(gUnknown_0203BCC4->spriteIds, 7, TRUE); - gUnknown_0203BCC4->unk666 = 0xFF; - data[5] = ListMenuInit(&gMultiuseListMenuTemplate, playerPCItemPageInfo.itemsAbove, playerPCItemPageInfo.cursorPos); + if (sItemStorageMenu->toSwapPos < newPos) + gPlayerPCItemPageInfo.cursorPos--; + + SetSwapLineSpritesInvisibility(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH, TRUE); + sItemStorageMenu->toSwapPos = NOT_SWAPPING; + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gPlayerPCItemPageInfo.itemsAbove, gPlayerPCItemPageInfo.cursorPos); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = ItemStorage_ProcessInput; } -static void UpdateSwapLinePos(u8 y) +static void ItemStorage_UpdateSwapLinePos(u8 y) { - UpdateSwapLineSpritesPos(gUnknown_0203BCC4->spriteIds, 7, 128, ((y+1) * 16)); + UpdateSwapLineSpritesPos(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH, 128, (y+1) * 16); } -static void sub_816C6BC(u8 windowId, u16 value, u32 mode, u8 x, u8 y, u8 n) +static void ItemStorage_PrintItemQuantity(u8 windowId, u16 value, u32 mode, u8 x, u8 y, u8 n) { ConvertIntToDecimalStringN(gStringVar1, value, mode, n); StringExpandPlaceholders(gStringVar4, gText_xVar1); AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 48), y, 0, NULL); } +// Start an item Withdraw/Toss static void ItemStorage_DoItemAction(u8 taskId) { - s16 *data; - u16 b; - - data = gTasks[taskId].data; - b = (playerPCItemPageInfo.cursorPos + playerPCItemPageInfo.itemsAbove); + s16 *data = gTasks[taskId].data; + u16 pos = gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove; ItemStorage_RemoveScrollIndicator(); - data[2] = 1; - if (!data[3]) + tQuantity = 1; + + if (!tInTossMenu) { - if (gSaveBlock1Ptr->pcItems[b].quantity == 1) + if (gSaveBlock1Ptr->pcItems[pos].quantity == 1) { + // Withdrawing 1 item, do it automatically ItemStorage_DoItemWithdraw(taskId); return; } - CopyItemName(gSaveBlock1Ptr->pcItems[b].itemId, gStringVar1); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_HOW_MANY_TO_WITHDRAW)); + + // Withdrawing multiple items, show "how many" message + CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_HOW_MANY_TO_WITHDRAW)); } else { - if (gSaveBlock1Ptr->pcItems[b].quantity == 1) + if (gSaveBlock1Ptr->pcItems[pos].quantity == 1) { + // Tossing 1 item, do it automatically ItemStorage_DoItemToss(taskId); return; } - CopyItemName(gSaveBlock1Ptr->pcItems[b].itemId, gStringVar1); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_HOW_MANY_TO_TOSS)); + + // Tossing multiple items, show "how many" message + CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_HOW_MANY_TO_TOSS)); } - sub_816C6BC(sub_816BC7C(4), data[2], STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); + + // Set up "how many" prompt + ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMWIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); gTasks[taskId].func = ItemStorage_HandleQuantityRolling; } static void ItemStorage_HandleQuantityRolling(u8 taskId) { - s16 *data; - u16 b; + s16 *data = gTasks[taskId].data; + u16 pos = gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove; - data = gTasks[taskId].data; - b = (playerPCItemPageInfo.cursorPos + playerPCItemPageInfo.itemsAbove); - if (AdjustQuantityAccordingToDPadInput(&(data[2]), gSaveBlock1Ptr->pcItems[b].quantity) == TRUE) - sub_816C6BC(sub_816BC7C(4), data[2], STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); + if (AdjustQuantityAccordingToDPadInput(&tQuantity, gSaveBlock1Ptr->pcItems[pos].quantity) == TRUE) + { + ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMWIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); + } else { if (JOY_NEW(A_BUTTON)) { + // Quantity confirmed, perform action PlaySE(SE_SELECT); - sub_816BCC4(4); - if (!data[3]) + ItemStorage_RemoveWindow(ITEMWIN_QUANTITY); + if (!tInTossMenu) ItemStorage_DoItemWithdraw(taskId); else ItemStorage_DoItemToss(taskId); } else if (JOY_NEW(B_BUTTON)) { + // Canceled action PlaySE(SE_SELECT); - sub_816BCC4(4); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(gSaveBlock1Ptr->pcItems[b].itemId)); - ItemStorage_StartScrollIndicatorAndProcessInput(taskId); + ItemStorage_RemoveWindow(ITEMWIN_QUANTITY); + ItemStorage_PrintMessage(ItemStorage_GetMessage(gSaveBlock1Ptr->pcItems[pos].itemId)); + ItemStorage_ReturnToListInput(taskId); } } } static void ItemStorage_DoItemWithdraw(u8 taskId) { - s16 *data; - u16 b; + s16 *data = gTasks[taskId].data; + u16 pos = gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove; - data = gTasks[taskId].data; - b = (playerPCItemPageInfo.cursorPos + playerPCItemPageInfo.itemsAbove); - if (AddBagItem(gSaveBlock1Ptr->pcItems[b].itemId, data[2]) == TRUE) + if (AddBagItem(gSaveBlock1Ptr->pcItems[pos].itemId, tQuantity) == TRUE) { - CopyItemName(gSaveBlock1Ptr->pcItems[b].itemId, gStringVar1); - ConvertIntToDecimalStringN(gStringVar2, data[2], STR_CONV_MODE_LEFT_ALIGN, 3); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_WITHDREW_THING)); + // Item withdrawn + CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); + ConvertIntToDecimalStringN(gStringVar2, tQuantity, STR_CONV_MODE_LEFT_ALIGN, 3); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_WITHDREW_ITEM)); gTasks[taskId].func = ItemStorage_HandleRemoveItem; } else { - data[2] = 0; - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_NO_MORE_ROOM)); - gTasks[taskId].func = ItemStorage_WaitPressHandleResumeProcessInput; + // No room to withdraw items + tQuantity = 0; + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_NO_MORE_ROOM)); + gTasks[taskId].func = ItemStorage_HandleErrorMessageInput; } } static void ItemStorage_DoItemToss(u8 taskId) { - s16 *data; - u16 b; + s16 *data = gTasks[taskId].data; + u16 pos = gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove; - data = gTasks[taskId].data; - b = (playerPCItemPageInfo.cursorPos + playerPCItemPageInfo.itemsAbove); - if (!ItemId_GetImportance(gSaveBlock1Ptr->pcItems[b].itemId)) + if (!ItemId_GetImportance(gSaveBlock1Ptr->pcItems[pos].itemId)) { - CopyItemName(gSaveBlock1Ptr->pcItems[b].itemId, gStringVar1); - ConvertIntToDecimalStringN(gStringVar2, data[2], STR_CONV_MODE_LEFT_ALIGN, 3); - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_OKAY_TO_THROW_AWAY)); - CreateYesNoMenuWithCallbacks(taskId, &gUnknown_085DFF84, 1, 0, 1, 0x214, 0xE, &ResumeFromWithdrawYesNoFuncList); + // Show toss confirmation prompt + CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); + ConvertIntToDecimalStringN(gStringVar2, tQuantity, STR_CONV_MODE_LEFT_ALIGN, 3); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_OKAY_TO_THROW_AWAY)); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_ItemStorage[ITEMWIN_YESNO], 1, 0, 1, 0x214, 0xE, &ItemTossYesNoFuncs); } else { - data[2] = 0; - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_TOO_IMPORTANT)); - gTasks[taskId].func = ItemStorage_WaitPressHandleResumeProcessInput; + // Can't toss important items + tQuantity = 0; + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_TOO_IMPORTANT)); + gTasks[taskId].func = ItemStorage_HandleErrorMessageInput; } } -static void ItemStorage_ResumeInputFromYesToss(u8 taskId) +static void ItemStorage_TossItemYes(u8 taskId) { - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(ITEMPC_THREW_AWAY_ITEM)); + ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_THREW_AWAY_ITEM)); gTasks[taskId].func = ItemStorage_HandleRemoveItem; } -static void ItemStorage_ResumeInputFromNoToss(u8 taskId) +static void ItemStorage_TossItemNo(u8 taskId) { - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(gSaveBlock1Ptr->pcItems[(playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos)].itemId)); - ItemStorage_StartScrollIndicatorAndProcessInput(taskId); + ItemStorage_PrintMessage(ItemStorage_GetMessage(gSaveBlock1Ptr->pcItems[gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos].itemId)); + ItemStorage_ReturnToListInput(taskId); } +// Remove item from PC (was either Tossed or Withdrawn) static void ItemStorage_HandleRemoveItem(u8 taskId) { - s16 *data; - - data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (JOY_NEW(A_BUTTON | B_BUTTON)) { - RemovePCItem((playerPCItemPageInfo.cursorPos + playerPCItemPageInfo.itemsAbove), data[2]); - DestroyListMenuTask(data[5], &(playerPCItemPageInfo.itemsAbove), &(playerPCItemPageInfo.cursorPos)); - sub_816C110(); - sub_816C140(); + RemovePCItem(gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove, tQuantity); + DestroyListMenuTask(tListTaskId, &gPlayerPCItemPageInfo.itemsAbove, &gPlayerPCItemPageInfo.cursorPos); + ItemStorage_CompactList(); + ItemStorage_CompactCursor(); ItemStorage_RefreshListMenu(); - data[5] = ListMenuInit(&gMultiuseListMenuTemplate, playerPCItemPageInfo.itemsAbove, playerPCItemPageInfo.cursorPos); - ItemStorage_StartScrollIndicatorAndProcessInput(taskId); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gPlayerPCItemPageInfo.itemsAbove, gPlayerPCItemPageInfo.cursorPos); + ItemStorage_ReturnToListInput(taskId); } } -static void ItemStorage_WaitPressHandleResumeProcessInput(u8 taskId) +static void ItemStorage_HandleErrorMessageInput(u8 taskId) { - s16 *data; - - data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (JOY_NEW(A_BUTTON | B_BUTTON)) { - ItemStorage_PrintItemPcResponse(ItemStorage_GetItemPcResponse(gSaveBlock1Ptr->pcItems[(playerPCItemPageInfo.itemsAbove + playerPCItemPageInfo.cursorPos)].itemId)); - ItemStorage_StartScrollIndicatorAndProcessInput(taskId); + ItemStorage_PrintMessage(ItemStorage_GetMessage(gSaveBlock1Ptr->pcItems[gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos].itemId)); + ItemStorage_ReturnToListInput(taskId); } } -static void ItemStorage_StartScrollIndicatorAndProcessInput(u8 taskId) +static void ItemStorage_ReturnToListInput(u8 taskId) { - ItemStorage_StartScrollIndicator(); + ItemStorage_AddScrollIndicator(); gTasks[taskId].func = ItemStorage_ProcessInput; } diff --git a/src/secret_base.c b/src/secret_base.c index ddc051dca710..a3ac84649f36 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1075,7 +1075,7 @@ void DeleteRegistry_Yes_Callback(u8 taskId) DestroyListMenuTask(tListTaskId, &tScrollOffset, &tSelectedRow); gSaveBlock1Ptr->secretBases[tSelectedBaseId].registryStatus = UNREGISTERED; BuildRegistryMenuItems(taskId); - sub_812225C(&tScrollOffset, &tSelectedRow, tMaxShownItems, tNumBases); + SetCursorWithinListBounds(&tScrollOffset, &tSelectedRow, tMaxShownItems, tNumBases); FinalizeRegistryMenu(taskId); gTasks[taskId].func = HandleRegistryMenuInput; } From 44cd9eed6baa8e40d6409f385b6da8c9fe88d706 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 4 Aug 2021 11:50:33 -0400 Subject: [PATCH 248/762] Add align directives to all marts --- data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc | 1 + data/maps/OldaleTown_Mart/scripts.inc | 1 + data/maps/RustboroCity_Mart/scripts.inc | 1 + data/maps/SlateportCity/scripts.inc | 2 ++ data/maps/SlateportCity_Mart/scripts.inc | 1 + data/maps/SootopolisCity_Mart/scripts.inc | 1 + 6 files changed, 7 insertions(+) diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc index ddb92751934b..20480068b8a2 100644 --- a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc @@ -11,6 +11,7 @@ LilycoveCity_DepartmentStore_3F_EventScript_ClerkLeft:: release end + .align 2 LilycoveCity_DepartmentStore_3F_Pokemart_Vitamins: .2byte ITEM_PROTEIN .2byte ITEM_CALCIUM diff --git a/data/maps/OldaleTown_Mart/scripts.inc b/data/maps/OldaleTown_Mart/scripts.inc index fa97dfe8d7fa..0b3c7b1a3441 100644 --- a/data/maps/OldaleTown_Mart/scripts.inc +++ b/data/maps/OldaleTown_Mart/scripts.inc @@ -12,6 +12,7 @@ OldaleTown_Mart_EventScript_Clerk:: release end + .align 2 OldaleTown_Mart_Pokemart_Basic: .2byte ITEM_POTION .2byte ITEM_ANTIDOTE diff --git a/data/maps/RustboroCity_Mart/scripts.inc b/data/maps/RustboroCity_Mart/scripts.inc index 91ffafdda9e0..18120cb4def8 100644 --- a/data/maps/RustboroCity_Mart/scripts.inc +++ b/data/maps/RustboroCity_Mart/scripts.inc @@ -16,6 +16,7 @@ RustboroCity_Mart_EventScript_PokemartBasic:: release end + .align 2 RustboroCity_Mart_Pokemart_Basic: .2byte ITEM_POKE_BALL .2byte ITEM_POTION diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 0f705735959b..4a567171493a 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -147,6 +147,7 @@ SlateportCity_EventScript_EnergyGuru:: release end + .align 2 SlateportCity_Pokemart_EnergyGuru: .2byte ITEM_PROTEIN .2byte ITEM_IRON @@ -543,6 +544,7 @@ SlateportCity_EventScript_DecorClerk:: release end + .align 2 SlateportCity_PokemartDecor: .2byte DECOR_RED_BRICK .2byte DECOR_BLUE_BRICK diff --git a/data/maps/SlateportCity_Mart/scripts.inc b/data/maps/SlateportCity_Mart/scripts.inc index bd5fc3b55176..a0c0a8612e39 100644 --- a/data/maps/SlateportCity_Mart/scripts.inc +++ b/data/maps/SlateportCity_Mart/scripts.inc @@ -11,6 +11,7 @@ SlateportCity_Mart_EventScript_Clerk:: release end + .align 2 SlateportCity_Mart_Pokemart: .2byte ITEM_POKE_BALL .2byte ITEM_GREAT_BALL diff --git a/data/maps/SootopolisCity_Mart/scripts.inc b/data/maps/SootopolisCity_Mart/scripts.inc index 69e5407cb8be..0975abd2b032 100644 --- a/data/maps/SootopolisCity_Mart/scripts.inc +++ b/data/maps/SootopolisCity_Mart/scripts.inc @@ -11,6 +11,7 @@ SootopolisCity_Mart_EventScript_Clerk:: release end + .align 2 SootopolisCity_Mart_Pokemart: .2byte ITEM_ULTRA_BALL .2byte ITEM_HYPER_POTION From b4c46501869ff07018f402c60d00ae014b0dce5c Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 5 Aug 2021 17:26:03 -0300 Subject: [PATCH 249/762] Corrected inconsistent flag label spelling --- data/maps/LittlerootTown_BrendansHouse_2F/map.json | 2 +- data/maps/LittlerootTown_MaysHouse_2F/map.json | 2 +- data/scripts/new_game.inc | 2 +- include/constants/flags.h | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/map.json b/data/maps/LittlerootTown_BrendansHouse_2F/map.json index 03e2dcd82923..c938aaae2156 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/map.json +++ b/data/maps/LittlerootTown_BrendansHouse_2F/map.json @@ -194,7 +194,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM" + "flag": "FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_BEDROOM_MOM" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/LittlerootTown_MaysHouse_2F/map.json b/data/maps/LittlerootTown_MaysHouse_2F/map.json index 1fa2ff01d9ea..080eb0fe5ac9 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/map.json +++ b/data/maps/LittlerootTown_MaysHouse_2F/map.json @@ -194,7 +194,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "0x0", - "flag": "FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM" + "flag": "FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_BEDROOM_MOM" }, { "graphics_id": "OBJ_EVENT_GFX_PICHU_DOLL", diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc index f31cedc80eee..7c5c3fc7deb3 100644 --- a/data/scripts/new_game.inc +++ b/data/scripts/new_game.inc @@ -209,7 +209,7 @@ EventScript_ResetAllMapFlags:: setflag FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION setflag FLAG_HIDE_BATTLE_TOWER_OPPONENT setflag FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE - setflag FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM + setflag FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_BEDROOM_MOM setflag FLAG_HIDE_LITTLEROOT_TOWN_RIVAL setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCH setflag FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS diff --git a/include/constants/flags.h b/include/constants/flags.h index 950fd28f1805..6702fa5eece3 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -799,7 +799,7 @@ #define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1 0x2F2 #define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2 0x2F3 #define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA 0x2F4 -#define FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM 0x2F5 +#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_BEDROOM_MOM 0x2F5 #define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_MOM 0x2F6 #define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MOM 0x2F7 #define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM 0x2F8 From b51d025f1c7342bad03777a1bb74ae7d8eb9e827 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 8 Aug 2021 20:33:21 -0400 Subject: [PATCH 250/762] port cgb fakematching fixes (thanks to revo) --- src/m4a.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/m4a.c b/src/m4a.c index 105312a40caa..ef4c2a537a89 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -906,7 +906,6 @@ void CgbSound(void) { s32 ch; struct CgbChannel *channels; - s32 envelopeStepTimeAndDir; s32 prevC15; struct SoundInfo *soundInfo = SOUND_INFO_PTR; vu8 *nrx0ptr; @@ -914,6 +913,7 @@ void CgbSound(void) vu8 *nrx2ptr; vu8 *nrx3ptr; vu8 *nrx4ptr; + s32 envelopeStepTimeAndDir; // Most comparision operations that cast to s8 perform 'and' by 0xFF. int mask = 0xff; @@ -1198,8 +1198,8 @@ void CgbSound(void) } else { - envelopeStepTimeAndDir &= 0xf; - *nrx2ptr = (channels->envelopeVolume << 4) + envelopeStepTimeAndDir; + unsigned int newMask = 0xF; + *nrx2ptr = (envelopeStepTimeAndDir & newMask) + (channels->envelopeVolume << 4); *nrx4ptr = channels->n4 | 0x80; if (ch == 1 && !(*nrx0ptr & 0x08)) *nrx4ptr = channels->n4 | 0x80; From 0bceaab046b677b28e188e25a90cf2a7b02067df Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 8 Aug 2021 20:34:16 -0400 Subject: [PATCH 251/762] rename variable --- src/m4a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/m4a.c b/src/m4a.c index ef4c2a537a89..0c68c6bddd13 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1198,7 +1198,7 @@ void CgbSound(void) } else { - unsigned int newMask = 0xF; + unsigned int envMask = 0xF; *nrx2ptr = (envelopeStepTimeAndDir & newMask) + (channels->envelopeVolume << 4); *nrx4ptr = channels->n4 | 0x80; if (ch == 1 && !(*nrx0ptr & 0x08)) From ddb3911d0df42b424840dbe12e73b011b3be46b7 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 8 Aug 2021 20:49:29 -0400 Subject: [PATCH 252/762] oops --- src/m4a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/m4a.c b/src/m4a.c index 0c68c6bddd13..9877ad740170 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1199,7 +1199,7 @@ void CgbSound(void) else { unsigned int envMask = 0xF; - *nrx2ptr = (envelopeStepTimeAndDir & newMask) + (channels->envelopeVolume << 4); + *nrx2ptr = (envelopeStepTimeAndDir & envMask) + (channels->envelopeVolume << 4); *nrx4ptr = channels->n4 | 0x80; if (ch == 1 && !(*nrx0ptr & 0x08)) *nrx4ptr = channels->n4 | 0x80; From 2e892c6961d646244b6cf0397181ba3051fffb80 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sun, 8 Aug 2021 22:22:50 -0400 Subject: [PATCH 253/762] unsigned int -> u32 --- src/m4a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/m4a.c b/src/m4a.c index 9877ad740170..b159e3873d1e 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1198,7 +1198,7 @@ void CgbSound(void) } else { - unsigned int envMask = 0xF; + u32 envMask = 0xF; *nrx2ptr = (envelopeStepTimeAndDir & envMask) + (channels->envelopeVolume << 4); *nrx4ptr = channels->n4 | 0x80; if (ch == 1 && !(*nrx0ptr & 0x08)) From 28a8fe191af71a71d45afb93480dc59f98e790cf Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 3 Aug 2021 02:17:01 -0400 Subject: [PATCH 254/762] Document item menu --- include/battle_pyramid_bag.h | 6 +- include/constants/item.h | 5 - include/constants/items.h | 10 +- include/event_scripts.h | 8 +- include/item_menu.h | 118 +- include/item_menu_icons.h | 6 - include/menu_helpers.h | 4 +- include/strings.h | 5 +- src/battle_pyramid_bag.c | 23 +- src/berry_tag_screen.c | 8 +- src/data/item_icon_table.h | 7 +- src/data/items.h | 6 +- .../berry_tree_graphics_tables.h | 6 +- src/decoration.c | 2 +- src/item_menu.c | 1963 +++++++++-------- src/item_menu_icons.c | 62 +- src/item_use.c | 36 +- src/menu.c | 52 +- src/menu_helpers.c | 60 +- src/party_menu.c | 2 +- src/strings.c | 39 +- 21 files changed, 1269 insertions(+), 1159 deletions(-) diff --git a/include/battle_pyramid_bag.h b/include/battle_pyramid_bag.h index de571714c5d9..b8b3eb20fb08 100644 --- a/include/battle_pyramid_bag.h +++ b/include/battle_pyramid_bag.h @@ -29,7 +29,7 @@ enum { struct PyramidBagMenu { - void (*exitCallback)(void); + void (*newScreenCallback)(void); u8 tilemapBuffer[BG_SCREEN_SIZE]; u8 spriteIds[PBAG_SPRITE_COUNT]; u8 windowIds[5]; @@ -49,7 +49,7 @@ struct PyramidBagMenu struct PyramidBagMenuState { - void (*callback)(void); + void (*exitCallback)(void); u8 location; u16 cursorPosition; u16 scrollPosition; @@ -64,7 +64,7 @@ void CB2_ReturnToPyramidBagMenu(void); void UpdatePyramidBagList(void); void UpdatePyramidBagCursorPos(void); void sub_81C4EFC(void); -void GoToBattlePyramidBagMenu(u8 a0, void (*callback)(void)); +void GoToBattlePyramidBagMenu(u8 location, void (*exitCallback)(void)); void Task_CloseBattlePyramidBagMessage(u8 taskId); void TryStoreHeldItemsInPyramidBag(void); void ChooseItemsToTossFromPyramidBag(void); diff --git a/include/constants/item.h b/include/constants/item.h index 3277f23790f9..a224291faf86 100644 --- a/include/constants/item.h +++ b/include/constants/item.h @@ -16,9 +16,4 @@ #define KEYITEMS_POCKET 4 #define POCKETS_COUNT 5 -// The TM/HM pocket is the largest pocket, so the maximum amount of items -// in a pocket is its count + 1 for the cancel option -#define MAX_POCKET_ITEMS (BAG_TMHM_COUNT + 1) - - #endif // GUARD_ITEM_CONSTANTS_H diff --git a/include/constants/items.h b/include/constants/items.h index 8f77e80de930..c596dd3b8dec 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -199,9 +199,11 @@ #define FIRST_BERRY_INDEX ITEM_CHERI_BERRY #define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY -#define ITEM_0B0 176 -#define ITEM_0B1 177 -#define ITEM_0B2 178 +#define ITEM_UNUSED_BERRY_1 176 +#define ITEM_UNUSED_BERRY_2 177 +#define ITEM_UNUSED_BERRY_3 178 + +#define MAX_BERRY_INDEX ITEM_UNUSED_BERRY_3 // Battle Held items #define ITEM_BRIGHT_POWDER 179 @@ -531,6 +533,6 @@ #define ITEM_B_USE_OTHER 2 // Check if the item is one that can be used on a Pokemon. -#define ITEM_HAS_EFFECT(item) ((item) >= ITEM_POTION && (item) <= ITEM_0B2) +#define ITEM_HAS_EFFECT(item) ((item) >= ITEM_POTION && (item) <= MAX_BERRY_INDEX) #endif // GUARD_CONSTANTS_ITEMS_H diff --git a/include/event_scripts.h b/include/event_scripts.h index 3340da6f57f0..c478f41f83be 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -584,9 +584,11 @@ extern const u8 SecretBase_EventScript_ShrubUseSecretPower[]; extern const u8 TrainerHill_EventScript_TrainerBattle[]; // Item Use -extern u8 BerryTree_EventScript_ItemUsePlantBerry[]; -extern u8 BerryTree_EventScript_ItemUseWailmerPail[]; -extern u8 BattleFrontier_OutsideEast_EventScript_WaterSudowoodo[]; +extern const u8 BerryTree_EventScript_ItemUsePlantBerry[]; +extern const u8 BerryTree_EventScript_ItemUseWailmerPail[]; +extern const u8 BattleFrontier_OutsideEast_EventScript_WaterSudowoodo[]; + +extern const u8 EventScript_SelectWithoutRegisteredItem[]; // overworld extern const u8 EventScript_WhiteOut[]; diff --git a/include/item_menu.h b/include/item_menu.h index a99272b0cafe..fd576c3b5a2b 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -1,107 +1,111 @@ -#ifndef GUARD_item_menu_H -#define GUARD_item_menu_H +#ifndef GUARD_ITEM_MENU_H +#define GUARD_ITEM_MENU_H #include "item.h" #include "menu_helpers.h" -#define ITEMMENULOCATION_FIELD 0 -#define ITEMMENULOCATION_BATTLE 1 -#define ITEMMENULOCATION_PARTY 2 -#define ITEMMENULOCATION_SHOP 3 -#define ITEMMENULOCATION_BERRY_TREE 4 -#define ITEMMENULOCATION_BERRY_BLENDER_CRUSH 5 -#define ITEMMENULOCATION_ITEMPC 6 -#define ITEMMENULOCATION_FAVOR_LADY 7 -#define ITEMMENULOCATION_QUIZ_LADY 8 -#define ITEMMENULOCATION_APPRENTICE 9 -#define ITEMMENULOCATION_WALLY 10 -#define ITEMMENULOCATION_PCBOX 11 -#define ITEMMENULOCATION_LAST 12 +enum { + ITEMMENULOCATION_FIELD, + ITEMMENULOCATION_BATTLE, + ITEMMENULOCATION_PARTY, + ITEMMENULOCATION_SHOP, + ITEMMENULOCATION_BERRY_TREE, + ITEMMENULOCATION_BERRY_BLENDER_CRUSH, + ITEMMENULOCATION_ITEMPC, + ITEMMENULOCATION_FAVOR_LADY, + ITEMMENULOCATION_QUIZ_LADY, + ITEMMENULOCATION_APPRENTICE, + ITEMMENULOCATION_WALLY, + ITEMMENULOCATION_PCBOX, + ITEMMENULOCATION_LAST, +}; -#define ITEMMENUACTION_USE 0 -#define ITEMMENUACTION_TOSS 1 -#define ITEMMENUACTION_REGISTER 2 -#define ITEMMENUACTION_GIVE 3 -#define ITEMMENUACTION_CANCEL 4 -#define ITEMMENUACTION_BATTLE_USE 5 -#define ITEMMENUACTION_CHECK 6 -#define ITEMMENUACTION_WALK 7 -#define ITEMMENUACTION_DESELECT 8 -#define ITEMMENUACTION_CHECK_TAG 9 -#define ITEMMENUACTION_CONFIRM 10 -#define ITEMMENUACTION_SHOW 11 -#define ITEMMENUACTION_GIVE_2 12 -#define ITEMMENUACTION_CONFIRM_2 13 -#define ITEMMENUACTION_DUMMY 14 +// Window IDs for the item menu +enum { + ITEMWIN_1x1, + ITEMWIN_1x2, + ITEMWIN_2x2, + ITEMWIN_2x3, + ITEMWIN_MESSAGE, + ITEMWIN_YESNO_LOW, + ITEMWIN_YESNO_HIGH, + ITEMWIN_QUANTITY, + ITEMWIN_QUANTITY_WIDE, + ITEMWIN_MONEY, + ITEMWIN_COUNT +}; -// Exported type declarations -struct BagStruct +#define ITEMMENU_SWAP_LINE_LENGTH 8 // Swap line is 8 sprites long +enum { + ITEMMENUSPRITE_BAG, + ITEMMENUSPRITE_BALL, + ITEMMENUSPRITE_ITEM, + ITEMMENUSPRITE_ITEM_ALT, // Need two when selecting new item + ITEMMENUSPRITE_SWAP_LINE, + ITEMMENUSPRITE_COUNT = ITEMMENUSPRITE_SWAP_LINE + ITEMMENU_SWAP_LINE_LENGTH, +}; + +struct BagPosition { - void (*bagCallback)(void); + void (*exitCallback)(void); u8 location; u8 pocket; - u16 unk6; + u16 pocketSwitchArrowPos; u16 cursorPosition[POCKETS_COUNT]; u16 scrollPosition[POCKETS_COUNT]; }; -extern struct BagStruct gBagPositionStruct; +extern struct BagPosition gBagPosition; -struct BagMenuStruct +struct BagMenu { - void (*exitCallback)(void); - u8 tilemapBuffer[0x800]; - u8 spriteId[12]; - u8 windowPointers[10]; - u8 itemOriginalLocation; + void (*newScreenCallback)(void); + u8 tilemapBuffer[BG_SCREEN_SIZE]; + u8 spriteIds[ITEMMENUSPRITE_COUNT]; + u8 windowIds[ITEMWIN_COUNT]; + u8 toSwapPos; u8 pocketSwitchDisabled:4; u8 itemIconSlot:2; u8 inhibitItemDescriptionPrint:1; u8 hideCloseBagText:1; - u8 filler3[2]; + u8 unused1[2]; u8 pocketScrollArrowsTask; u8 pocketSwitchArrowsTask; const u8* contextMenuItemsPtr; u8 contextMenuItemsBuffer[4]; u8 contextMenuNumItems; u8 numItemStacks[POCKETS_COUNT]; - u8 numShownItems[6]; + u8 numShownItems[POCKETS_COUNT]; s16 graphicsLoadState; - u8 filler4[0xE]; + u8 unused2[14]; u8 pocketNameBuffer[32][32]; - u8 filler2[4]; + u8 unused3[4]; }; -extern struct BagMenuStruct *gBagMenu; - -// Exported RAM declarations - +extern struct BagMenu *gBagMenu; extern u16 gSpecialVar_ItemId; -// Exported ROM declarations void CB2_GoToItemDepositMenu(void); void FavorLadyOpenBagMenu(void); void QuizLadyOpenBagMenu(void); void ApprenticeOpenBagMenu(void); void CB2_BagMenuFromBattle(void); -void SetInitialScrollAndCursorPositions(u8 pocketId); +void UpdatePocketListPosition(u8 pocketId); void CB2_ReturnToBagMenuPocket(void); void CB2_BagMenuFromStartMenu(void); u8 GetItemListPosition(u8 pocketId); bool8 UseRegisteredKeyItemOnField(void); void CB2_GoToSellMenu(void); -void GoToBagMenu(u8 bagMenuType, u8 pocketId, void ( *postExitMenuMainCallback2)()); +void GoToBagMenu(u8 bagMenuType, u8 pocketId, 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, u8, const struct YesNoFuncTable*); -void BagMenu_InitListsMenu(u8 taskId); +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 CloseItemMessage(u8 taskId); - - -#endif //GUARD_item_menu_H +#endif //GUARD_ITEM_MENU_H diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index 50e11dfd9dfa..d01dcccf5f26 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -22,10 +22,4 @@ void FreeBerryTagSpritePalette(void); u8 CreateSpinningBerrySprite(u8 berryId, u8 x, u8 y, bool8 startAffine); u8 CreateBerryFlavorCircleSprite(s16 x); -#define TAG_BAG_GFX 100 -#define TAG_ROTATING_BALL_GFX 101 -#define TAG_BERRY_CHECK_CIRCLE_GFX 10000 -#define TAG_BERRY_PIC_TILE 0xFFFF -#define TAG_BERRY_PIC_PAL 0x7544 - #endif // GUARD_ITEM_MENU_ICONS_H diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 9909437a24cf..b9b9e2d80330 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -28,13 +28,13 @@ void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *templa bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1); u8 GetLRKeysPressed(void); u8 GetLRKeysPressedAndHeld(void); -bool8 sub_8122148(u16 itemId); +bool8 IsHoldingItemAllowed(u16 itemId); bool8 IsWritingMailAllowed(u16 itemId); bool8 MenuHelpers_LinkSomething(void); bool8 MenuHelpers_CallLinkSomething(void); void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount); void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItems); -void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4); +void SetCursorScrollWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 shownItems, u8 totalItems, u8 maxShownItems); void LoadListMenuSwapLineGfx(void); void CreateSwapLineSprites(u8 *spriteIds, u8 count); void DestroySwapLineSprites(u8 *spriteIds, u8 count); diff --git a/include/strings.h b/include/strings.h index 9b3be0538b94..2357e37771e2 100644 --- a/include/strings.h +++ b/include/strings.h @@ -419,8 +419,8 @@ extern const u8 gText_FirmSlash[]; // item menu screen text extern const u8 gText_CloseBag[]; -extern const u8 gText_ClearTo11Var1Clear5Var2[]; -extern const u8 gText_NumberVar1Clear7Var2[]; +extern const u8 gText_NumberItem_HM[]; +extern const u8 gText_NumberItem_TMBerry[]; extern const u8 gText_xVar1[]; extern const u8 gText_ReturnToVar1[]; extern const u8 gText_SelectorArrow2[]; @@ -442,6 +442,7 @@ extern const u8 gText_CantStoreImportantItems[]; extern const u8 gText_DepositedVar2Var1s[]; extern const u8 gText_NoRoomForItems[]; extern const u8 gText_ThreeDashes[]; +extern const u8 *const gPocketNamesStringsTable[]; // party menu text extern const u8 gText_PkmnHPRestoredByVar2[]; diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 266b8541550f..83bf35090b79 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -411,20 +411,20 @@ static void Task_ChooseItemsToTossFromPyramidBag(u8 taskId) void CB2_ReturnToPyramidBagMenu(void) { - GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.callback); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback); } -void GoToBattlePyramidBagMenu(u8 location, void (*callback)(void)) +void GoToBattlePyramidBagMenu(u8 location, void (*exitCallback)(void)) { gPyramidBagMenu = AllocZeroed(sizeof(*gPyramidBagMenu)); if (location != PYRAMIDBAG_LOC_PREV) gPyramidBagMenuState.location = location; - if (callback != NULL) - gPyramidBagMenuState.callback = callback; + if (exitCallback != NULL) + gPyramidBagMenuState.exitCallback = exitCallback; - gPyramidBagMenu->exitCallback = NULL; + gPyramidBagMenu->newScreenCallback = NULL; gPyramidBagMenu->toSwapPos = POS_NONE; gPyramidBagMenu->scrollIndicatorsTaskId = TASK_NONE; @@ -624,7 +624,7 @@ static void CopyBagItemName(u8 *dst, u16 itemId) { ConvertIntToDecimalStringN(gStringVar1, ITEM_TO_BERRY(itemId), STR_CONV_MODE_LEADING_ZEROS, 2); CopyItemName(itemId, gStringVar2); - StringExpandPlaceholders(dst, gText_NumberVar1Clear7Var2); + StringExpandPlaceholders(dst, gText_NumberItem_TMBerry); } else { @@ -866,10 +866,13 @@ static void Task_ClosePyramidBag(u8 taskId) if (!gPaletteFade.active) { DestroyListMenuTask(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); - if (gPyramidBagMenu->exitCallback != NULL) - SetMainCallback2(gPyramidBagMenu->exitCallback); + + // If ready for a new screen (e.g. party menu for giving an item) go to that screen + // Otherwise exit the bag and use callback set up when the bag was first opened + if (gPyramidBagMenu->newScreenCallback != NULL) + SetMainCallback2(gPyramidBagMenu->newScreenCallback); else - SetMainCallback2(gPyramidBagMenuState.callback); + SetMainCallback2(gPyramidBagMenuState.exitCallback); RemoveScrollArrow(); ResetSpriteData(); FreeAllSpritePalettes(); @@ -1249,7 +1252,7 @@ static void BagAction_Give(u8 taskId) } else if (!ItemId_GetImportance(gSpecialVar_ItemId)) { - gPyramidBagMenu->exitCallback = CB2_ChooseMonToGiveItem; + gPyramidBagMenu->newScreenCallback = CB2_ChooseMonToGiveItem; CloseBattlePyramidBag(taskId); } else diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index 4632f6dc0472..babbbb3eb2ce 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -548,9 +548,9 @@ static void Task_HandleInput(u8 taskId) static void TryChangeDisplayedBerry(u8 taskId, s8 toMove) { s16 *data = gTasks[taskId].data; - s16 currPocketPosition = gBagPositionStruct.scrollPosition[3] + gBagPositionStruct.cursorPosition[3]; + s16 currPocketPosition = gBagPosition.scrollPosition[BERRIES_POCKET] + gBagPosition.cursorPosition[BERRIES_POCKET]; u32 newPocketPosition = currPocketPosition + toMove; - if (newPocketPosition < 46 && BagGetItemIdByPocketPosition(POCKET_BERRIES, newPocketPosition) != 0) + if (newPocketPosition < ITEM_TO_BERRY(MAX_BERRY_INDEX) && BagGetItemIdByPocketPosition(POCKET_BERRIES, newPocketPosition) != ITEM_NONE) { if (toMove < 0) data[1] = 2; @@ -566,8 +566,8 @@ static void TryChangeDisplayedBerry(u8 taskId, s8 toMove) static void HandleBagCursorPositionChange(s8 toMove) { - u16 *scrollPos = &gBagPositionStruct.scrollPosition[3]; - u16 *cursorPos = &gBagPositionStruct.cursorPosition[3]; + u16 *scrollPos = &gBagPosition.scrollPosition[BERRIES_POCKET]; + u16 *cursorPos = &gBagPosition.cursorPosition[BERRIES_POCKET]; if (toMove > 0) { if (*cursorPos < 4 || BagGetItemIdByPocketPosition(POCKET_BERRIES, *scrollPos + 8) == 0) diff --git a/src/data/item_icon_table.h b/src/data/item_icon_table.h index c36969ab54ec..ea8315e76091 100644 --- a/src/data/item_icon_table.h +++ b/src/data/item_icon_table.h @@ -192,10 +192,9 @@ const u32 *const gItemIconTable[][2] = [ITEM_LANSAT_BERRY] = {gItemIcon_LansatBerry, gItemIconPalette_LansatBerry}, [ITEM_STARF_BERRY] = {gItemIcon_StarfBerry, gItemIconPalette_StarfBerry}, [ITEM_ENIGMA_BERRY] = {gItemIcon_EnigmaBerry, gItemIconPalette_EnigmaBerry}, - // ???????? - [ITEM_0B0] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, - [ITEM_0B1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, - [ITEM_0B2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_UNUSED_BERRY_1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_UNUSED_BERRY_2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_UNUSED_BERRY_3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // Hold items [ITEM_BRIGHT_POWDER] = {gItemIcon_BrightPowder, gItemIconPalette_BrightPowder}, [ITEM_WHITE_HERB] = {gItemIcon_InBattleHerb, gItemIconPalette_WhiteHerb}, diff --git a/src/data/items.h b/src/data/items.h index fc7792186013..370cd2022c88 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -2148,7 +2148,7 @@ const struct Item gItems[] = .battleUseFunc = ItemUseInBattle_EnigmaBerry, }, - [ITEM_0B0] = + [ITEM_UNUSED_BERRY_1] = { .name = _("????????"), .itemId = ITEM_NONE, @@ -2159,7 +2159,7 @@ const struct Item gItems[] = .fieldUseFunc = ItemUseOutOfBattle_CannotUse, }, - [ITEM_0B1] = + [ITEM_UNUSED_BERRY_2] = { .name = _("????????"), .itemId = ITEM_NONE, @@ -2170,7 +2170,7 @@ const struct Item gItems[] = .fieldUseFunc = ItemUseOutOfBattle_CannotUse, }, - [ITEM_0B2] = + [ITEM_UNUSED_BERRY_3] = { .name = _("????????"), .itemId = ITEM_NONE, diff --git a/src/data/object_events/berry_tree_graphics_tables.h b/src/data/object_events/berry_tree_graphics_tables.h index 390c82f95507..fe41bda3b107 100755 --- a/src/data/object_events/berry_tree_graphics_tables.h +++ b/src/data/object_events/berry_tree_graphics_tables.h @@ -559,7 +559,7 @@ const u8 *const gBerryTreeObjectEventGraphicsIdTablePointers[] = { [ITEM_STARF_BERRY - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, [ITEM_ENIGMA_BERRY - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, // 3 unused berries. - [ITEM_0B0 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, - [ITEM_0B1 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, - [ITEM_0B2 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, + [ITEM_UNUSED_BERRY_1 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, + [ITEM_UNUSED_BERRY_2 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, + [ITEM_UNUSED_BERRY_3 - FIRST_BERRY_INDEX] = gBerryTreeObjectEventGraphicsIdTable, }; diff --git a/src/decoration.c b/src/decoration.c index 62d1966bfa56..caaf1f635540 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -867,7 +867,7 @@ static void InitDecorationItemsMenuScrollAndCursor(void) static void InitDecorationItemsMenuScrollAndCursor2(void) { - sub_8122298(&sDecorationsScrollOffset, &sDecorationsCursorPos, sDecorationItemsMenu->maxShownItems, sDecorationItemsMenu->numMenuItems, 8); + SetCursorScrollWithinListBounds(&sDecorationsScrollOffset, &sDecorationsCursorPos, sDecorationItemsMenu->maxShownItems, sDecorationItemsMenu->numMenuItems, 8); } static void PrintDecorationItemMenuItems(u8 taskId) diff --git a/src/item_menu.c b/src/item_menu.c index 39abf883a76d..a1ae10570a11 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -7,12 +7,11 @@ #include "battle_pyramid_bag.h" #include "berry_tag_screen.h" #include "bg.h" -#include "constants/items.h" -#include "constants/songs.h" #include "data.h" #include "decompress.h" #include "event_data.h" #include "event_object_movement.h" +#include "event_scripts.h" #include "field_player_avatar.h" #include "field_specials.h" #include "graphics.h" @@ -49,113 +48,168 @@ #include "window.h" #include "apprentice.h" #include "battle_pike.h" +#include "constants/items.h" #include "constants/rgb.h" +#include "constants/songs.h" -enum -{ +#define TAG_POCKET_SCROLL_ARROW 110 +#define TAG_BAG_SCROLL_ARROW 111 + +// The buffer for the bag item list needs to be large enough to hold the maximum +// number of item slots that could fit in a single pocket, + 1 for Cancel. +// This constant picks the max of the existing pocket sizes. +// By default, the largest pocket is BAG_TMHM_COUNT at 64. +#define MAX_POCKET_ITEMS ((max(BAG_TMHM_COUNT, \ + max(BAG_BERRIES_COUNT, \ + max(BAG_ITEMS_COUNT, \ + max(BAG_KEYITEMS_COUNT, \ + BAG_POKEBALLS_COUNT))))) + 1) + +// Up to 8 item slots can be visible at a time +#define MAX_ITEMS_SHOWN 8 + +enum { SWITCH_POCKET_NONE, SWITCH_POCKET_LEFT, SWITCH_POCKET_RIGHT }; -void GoToBagMenu(u8 bagMenuType, u8 pocketId, void (*postExitMenuMainCallback2)()); -void CB2_Bag(void); -bool8 SetupBagMenu(void); -void BagMenu_InitBGs(void); -bool8 LoadBagMenu_Graphics(void); -void SetupBagMenu_Textboxes(void); -void AllocateBagItemListBuffers(void); -void LoadBagItemListBuffers(u8); -void BagMenu_PrintPocketNames(const u8*, const u8*); -void BagMenu_CopyPocketNameToWindow(u32); -static void DrawPocketIndicatorSquare(u8 x, bool8 isCurrentPocket); -void CreatePocketScrollArrowPair(void); -void CreatePocketSwitchArrowPair(void); -void BagMenu_PrepareTMHMMoveWindow(void); -bool8 IsWallysBag(void); -void Task_WallyTutorialBagMenu(u8); -void Task_BagMenu_HandleInput(u8); -void GetItemName(s8*, u16); -u16 ItemIdToBattleMoveId(u16); -u16 BagGetItemIdByPocketPosition(u8, u16); -void BagMenu_PrintDescription(int); -void BagMenu_PrintCursor(u8, u8); -void BagMenu_Print(u8, u8, const u8*, u8, u8, u8, u8, u8, u8); -bool8 ItemId_GetImportance(u16); -u16 BagGetQuantityByPocketPosition(u8, u16); -void BagDestroyPocketSwitchArrowPair(void); -void TaskCloseBagMenu_2(u8); -u8 AddItemMessageWindow(u8); -void BagMenu_RemoveBagItemMessageWindow(u8); -void set_callback3_to_bag(u8); -void PrintItemDepositAmount(u8, s16); +enum { + ACTION_USE, + ACTION_TOSS, + ACTION_REGISTER, + ACTION_GIVE, + ACTION_CANCEL, + ACTION_BATTLE_USE, + ACTION_CHECK, + ACTION_WALK, + ACTION_DESELECT, + ACTION_CHECK_TAG, + ACTION_CONFIRM, + ACTION_SHOW, + ACTION_GIVE_FAVOR_LADY, + ACTION_CONFIRM_QUIZ_LADY, + ACTION_DUMMY, +}; + +enum { + WIN_ITEM_LIST, + WIN_DESCRIPTION, + WIN_POCKET_NAME, + WIN_TMHM_INFO_ICONS, + WIN_TMHM_INFO, + WIN_MESSAGE, // Identical to ITEMWIN_MESSAGE. Unused? +}; + +// Item list ID for toSwapPos to indicate an item is not currently being swapped +#define NOT_SWAPPING 0xFF + +struct ListBuffer1 { + struct ListMenuItem subBuffers[MAX_POCKET_ITEMS]; +}; + +struct ListBuffer2 { + s8 name[MAX_POCKET_ITEMS][ITEM_NAME_LENGTH + 10]; +}; + +struct TempWallyBag { + struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; + struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; + u16 cursorPosition[POCKETS_COUNT]; + u16 scrollPosition[POCKETS_COUNT]; + u16 unused; + u16 pocket; +}; + +static void CB2_Bag(void); +static bool8 SetupBagMenu(void); +static void BagMenu_InitBGs(void); +static bool8 LoadBagMenu_Graphics(void); +static void LoadBagMenuTextWindows(void); +static void AllocateBagItemListBuffers(void); +static void LoadBagItemListBuffers(u8); +static void PrintPocketNames(const u8*, const u8*); +static void CopyPocketNameToWindow(u32); +static void DrawPocketIndicatorSquare(u8, bool8); +static void CreatePocketScrollArrowPair(void); +static void CreatePocketSwitchArrowPair(void); +static void DestroyPocketSwitchArrowPair(void); +static void PrepareTMHMMoveWindow(void); +static bool8 IsWallysBag(void); +static void Task_WallyTutorialBagMenu(u8); +static void Task_BagMenu_HandleInput(u8); +static void GetItemName(s8*, 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); +static void Task_CloseBagMenu(u8); +static u8 AddItemMessageWindow(u8); +static void RemoveItemMessageWindow(u8); +static void ReturnToItemList(u8); +static void PrintItemQuantity(u8, s16); static u8 BagMenu_AddWindow(u8); static u8 GetSwitchBagPocketDirection(void); -static void SwitchBagPocket(u8, s16, u16); +static void SwitchBagPocket(u8, s16, bool16); static bool8 CanSwapItems(void); -static void BagMenu_SwapItems(u8 taskId); -static void sub_81AC10C(u8); +static void StartItemSwap(u8 taskId); +static void Task_SwitchBagPocket(u8); static void Task_HandleSwappingItemsInput(u8); -void sub_81AC498(u8); -void sub_81AC590(u8); -void PrintTMHMMoveData(u16); -void sub_81ACAF8(u8); -void sub_81ACB54(u8, u8, u8); -void Task_HandleInBattleItemMenuInput(u8); -void Task_HandleOutOfBattleItemMenuInput(u8); -bool8 sub_81ACDFC(s8); -void BagMenu_RemoveWindow(u8); -void BagMenu_PrintThereIsNoPokemon(u8); -void Task_ChooseHowManyToToss(u8); -void BagMenu_TossItems(u8); -void BagMenu_YesNo(u8, u8, const struct YesNoFuncTable*); -void Task_ActuallyToss(u8); -void ItemMenu_Cancel(u8); -void sub_81AD350(u8); -static void BagMenu_PrintItemCantBeHeld(u8); +static void DoItemSwap(u8); +static void CancelItemSwap(u8); +static void PrintTMHMMoveData(u16); +static void PrintContextMenuItems(u8); +static void PrintContextMenuItemGrid(u8, u8, u8); +static void Task_ItemContext_SingleRow(u8); +static void Task_ItemContext_MultipleRows(u8); +static bool8 IsValidContextMenuPos(s8); +static void BagMenu_RemoveWindow(u8); +static void PrintThereIsNoPokemon(u8); +static void Task_ChooseHowManyToToss(u8); +static void AskTossItems(u8); +static void Task_RemoveItemFromBag(u8); +static void ItemMenu_Cancel(u8); +static void HandleErrorMessage(u8); +static void PrintItemCantBeHeld(u8); static void DisplayCurrentMoneyWindow(void); static void DisplaySellItemPriceAndConfirm(u8); -void sub_81AD730(u8); -void sub_81AD6E4(u8); +static void InitSellHowManyInput(u8); +static void AskSellItems(u8); static void RemoveMoneyWindow(void); -static void Task_SellHowManyDialogueHandleInput(u8); -static void BagMenu_Sell_UpdateItemListAndMoney(u8); -static void BagMenu_Sell_WaitForABPress(u8); -static void BagMenu_TryDepositItem(u8); +static void Task_ChooseHowManyToSell(u8); +static void SellItem(u8); +static void WaitAfterItemSell(u8); +static void TryDepositItem(u8); static void Task_ChooseHowManyToDeposit(u8 taskId); -static void BagMenu_Deposit_WaitForABPress(u8); -void CB2_ApprenticeExitBagMenu(void); -void CB2_FavorLadyExitBagMenu(void); -void CB2_QuizLadyExitBagMenu(void); -void All_CalculateNItemsAndMaxShowed(void); -static void SetPocketListPositions(void); -void UpdatePocketScrollPositions(void); -u8 CreateBagInputHandlerTask(u8); -void sub_81AC23C(u8); -void BagMenu_MoveCursorCallback(s32 a, bool8 b, struct ListMenu*); -void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 a); -void ItemMenu_UseOutOfBattle(u8 taskId); -void ItemMenu_Toss(u8 taskId); -void ItemMenu_Register(u8 taskId); -void ItemMenu_Give(u8 taskId); -void ItemMenu_Cancel(u8 taskId); -void ItemMenu_UseInBattle(u8 taskId); -void ItemMenu_CheckTag(u8 taskId); -void Task_FadeAndCloseBagMenu(u8 taskId); -void unknown_ItemMenu_Show(u8 taskId); -void unknown_ItemMenu_Give2(u8 taskId); -void unknown_ItemMenu_Confirm2(u8 taskId); -void Task_ItemContext_FieldOrBattle(u8 taskId); -void Task_ItemContext_FieldGive(u8 taskId); -void Task_ItemContext_Sell(u8 taskId); -void Task_ItemContext_Deposit(u8 taskId); -void Task_ItemContext_ItemPC_2(u8 taskId); -void BagMenu_ConfirmToss(u8 taskId); -void BagMenu_CancelToss(u8 taskId); -void BagMenu_ConfirmSell(u8 taskId); -void BagMenu_CancelSell(u8 taskId); - -// .rodata +static void WaitDepositErrorMessage(u8); +static void CB2_ApprenticeExitBagMenu(void); +static void CB2_FavorLadyExitBagMenu(void); +static void CB2_QuizLadyExitBagMenu(void); +static void UpdatePocketItemLists(void); +static void InitPocketListPositions(void); +static void InitPocketScrollPositions(void); +static u8 CreateBagInputHandlerTask(u8); +static void DrawItemListBgRow(u8); +static void BagMenu_MoveCursorCallback(s32, bool8, struct ListMenu*); +static void BagMenu_ItemPrintCallback(u8, u32, u8); +static void ItemMenu_UseOutOfBattle(u8); +static void ItemMenu_Toss(u8); +static void ItemMenu_Register(u8); +static void ItemMenu_Give(u8); +static void ItemMenu_Cancel(u8); +static void ItemMenu_UseInBattle(u8); +static void ItemMenu_CheckTag(u8); +static void ItemMenu_Show(u8); +static void ItemMenu_GiveFavorLady(u8); +static void ItemMenu_ConfirmQuizLady(u8); +static void Task_ItemContext_Normal(u8); +static void Task_ItemContext_GiveToParty(u8); +static void Task_ItemContext_Sell(u8); +static void Task_ItemContext_Deposit(u8); +static void Task_ItemContext_GiveToPC(u8); +static void ConfirmToss(u8); +static void CancelToss(u8); +static void ConfirmSell(u8); +static void CancelSell(u8); static const struct BgTemplate sBgTemplates_ItemMenu[] = { @@ -211,98 +265,98 @@ static const struct ListMenuTemplate sItemListMenu = }; static const struct MenuAction sItemMenuActions[] = { - [ITEMMENUACTION_USE] = {gMenuText_Use, ItemMenu_UseOutOfBattle}, - [ITEMMENUACTION_TOSS] = {gMenuText_Toss, ItemMenu_Toss}, - [ITEMMENUACTION_REGISTER] = {gMenuText_Register, ItemMenu_Register}, - [ITEMMENUACTION_GIVE] = {gMenuText_Give, ItemMenu_Give}, - [ITEMMENUACTION_CANCEL] = {gText_Cancel2, ItemMenu_Cancel}, - [ITEMMENUACTION_BATTLE_USE] = {gMenuText_Use, ItemMenu_UseInBattle}, - [ITEMMENUACTION_CHECK] = {gMenuText_Check, ItemMenu_UseOutOfBattle}, - [ITEMMENUACTION_WALK] = {gMenuText_Walk, ItemMenu_UseOutOfBattle}, - [ITEMMENUACTION_DESELECT] = {gMenuText_Deselect, ItemMenu_Register}, - [ITEMMENUACTION_CHECK_TAG] = {gMenuText_CheckTag, ItemMenu_CheckTag}, - [ITEMMENUACTION_CONFIRM] = {gMenuText_Confirm, Task_FadeAndCloseBagMenu}, - [ITEMMENUACTION_SHOW] = {gMenuText_Show, unknown_ItemMenu_Show}, - [ITEMMENUACTION_GIVE_2] = {gMenuText_Give2, unknown_ItemMenu_Give2}, - [ITEMMENUACTION_CONFIRM_2] = {gMenuText_Confirm, unknown_ItemMenu_Confirm2}, - [ITEMMENUACTION_DUMMY] = {gText_EmptyString2, NULL} + [ACTION_USE] = {gMenuText_Use, ItemMenu_UseOutOfBattle}, + [ACTION_TOSS] = {gMenuText_Toss, ItemMenu_Toss}, + [ACTION_REGISTER] = {gMenuText_Register, ItemMenu_Register}, + [ACTION_GIVE] = {gMenuText_Give, ItemMenu_Give}, + [ACTION_CANCEL] = {gText_Cancel2, ItemMenu_Cancel}, + [ACTION_BATTLE_USE] = {gMenuText_Use, ItemMenu_UseInBattle}, + [ACTION_CHECK] = {gMenuText_Check, ItemMenu_UseOutOfBattle}, + [ACTION_WALK] = {gMenuText_Walk, ItemMenu_UseOutOfBattle}, + [ACTION_DESELECT] = {gMenuText_Deselect, ItemMenu_Register}, + [ACTION_CHECK_TAG] = {gMenuText_CheckTag, ItemMenu_CheckTag}, + [ACTION_CONFIRM] = {gMenuText_Confirm, Task_FadeAndCloseBagMenu}, + [ACTION_SHOW] = {gMenuText_Show, ItemMenu_Show}, + [ACTION_GIVE_FAVOR_LADY] = {gMenuText_Give2, ItemMenu_GiveFavorLady}, + [ACTION_CONFIRM_QUIZ_LADY] = {gMenuText_Confirm, ItemMenu_ConfirmQuizLady}, + [ACTION_DUMMY] = {gText_EmptyString2, NULL} }; // these are all 2D arrays with a width of 2 but are represented as 1D arrays -// ITEMMENUACTION_DUMMY is used to represent blank spaces +// ACTION_DUMMY is used to represent blank spaces static const u8 sContextMenuItems_ItemsPocket[] = { - ITEMMENUACTION_USE, ITEMMENUACTION_GIVE, - ITEMMENUACTION_TOSS, ITEMMENUACTION_CANCEL + ACTION_USE, ACTION_GIVE, + ACTION_TOSS, ACTION_CANCEL }; static const u8 sContextMenuItems_KeyItemsPocket[] = { - ITEMMENUACTION_USE, ITEMMENUACTION_REGISTER, - ITEMMENUACTION_DUMMY, ITEMMENUACTION_CANCEL + ACTION_USE, ACTION_REGISTER, + ACTION_DUMMY, ACTION_CANCEL }; static const u8 sContextMenuItems_BallsPocket[] = { - ITEMMENUACTION_GIVE, ITEMMENUACTION_DUMMY, - ITEMMENUACTION_TOSS, ITEMMENUACTION_CANCEL + ACTION_GIVE, ACTION_DUMMY, + ACTION_TOSS, ACTION_CANCEL }; static const u8 sContextMenuItems_TmHmPocket[] = { - ITEMMENUACTION_USE, ITEMMENUACTION_GIVE, - ITEMMENUACTION_DUMMY, ITEMMENUACTION_CANCEL + ACTION_USE, ACTION_GIVE, + ACTION_DUMMY, ACTION_CANCEL }; static const u8 sContextMenuItems_BerriesPocket[] = { - ITEMMENUACTION_CHECK_TAG, ITEMMENUACTION_DUMMY, - ITEMMENUACTION_USE, ITEMMENUACTION_GIVE, - ITEMMENUACTION_TOSS, ITEMMENUACTION_CANCEL + ACTION_CHECK_TAG, ACTION_DUMMY, + ACTION_USE, ACTION_GIVE, + ACTION_TOSS, ACTION_CANCEL }; static const u8 sContextMenuItems_BattleUse[] = { - ITEMMENUACTION_BATTLE_USE, ITEMMENUACTION_CANCEL + ACTION_BATTLE_USE, ACTION_CANCEL }; static const u8 sContextMenuItems_Give[] = { - ITEMMENUACTION_GIVE, ITEMMENUACTION_CANCEL + ACTION_GIVE, ACTION_CANCEL }; static const u8 sContextMenuItems_Cancel[] = { - ITEMMENUACTION_CANCEL + ACTION_CANCEL }; static const u8 sContextMenuItems_BerryBlenderCrush[] = { - ITEMMENUACTION_CONFIRM, ITEMMENUACTION_CHECK_TAG, - ITEMMENUACTION_DUMMY, ITEMMENUACTION_CANCEL + ACTION_CONFIRM, ACTION_CHECK_TAG, + ACTION_DUMMY, ACTION_CANCEL }; static const u8 sContextMenuItems_Apprentice[] = { - ITEMMENUACTION_SHOW, ITEMMENUACTION_CANCEL + ACTION_SHOW, ACTION_CANCEL }; static const u8 sContextMenuItems_FavorLady[] = { - ITEMMENUACTION_GIVE_2, ITEMMENUACTION_CANCEL + ACTION_GIVE_FAVOR_LADY, ACTION_CANCEL }; static const u8 sContextMenuItems_QuizLady[] = { - ITEMMENUACTION_CONFIRM_2, ITEMMENUACTION_CANCEL + ACTION_CONFIRM_QUIZ_LADY, ACTION_CANCEL }; -static const TaskFunc gUnknown_08614054[] = { - [ITEMMENULOCATION_FIELD] = Task_ItemContext_FieldOrBattle, - [ITEMMENULOCATION_BATTLE] = Task_ItemContext_FieldOrBattle, - [ITEMMENULOCATION_PARTY] = Task_ItemContext_FieldGive, +static const TaskFunc sContextMenuFuncs[] = { + [ITEMMENULOCATION_FIELD] = Task_ItemContext_Normal, + [ITEMMENULOCATION_BATTLE] = Task_ItemContext_Normal, + [ITEMMENULOCATION_PARTY] = Task_ItemContext_GiveToParty, [ITEMMENULOCATION_SHOP] = Task_ItemContext_Sell, [ITEMMENULOCATION_BERRY_TREE] = Task_FadeAndCloseBagMenu, - [ITEMMENULOCATION_BERRY_BLENDER_CRUSH] = Task_ItemContext_FieldOrBattle, + [ITEMMENULOCATION_BERRY_BLENDER_CRUSH] = Task_ItemContext_Normal, [ITEMMENULOCATION_ITEMPC] = Task_ItemContext_Deposit, - [ITEMMENULOCATION_FAVOR_LADY] = Task_ItemContext_FieldOrBattle, - [ITEMMENULOCATION_QUIZ_LADY] = Task_ItemContext_FieldOrBattle, - [ITEMMENULOCATION_APPRENTICE] = Task_ItemContext_FieldOrBattle, + [ITEMMENULOCATION_FAVOR_LADY] = Task_ItemContext_Normal, + [ITEMMENULOCATION_QUIZ_LADY] = Task_ItemContext_Normal, + [ITEMMENULOCATION_APPRENTICE] = Task_ItemContext_Normal, [ITEMMENULOCATION_WALLY] = NULL, - [ITEMMENULOCATION_PCBOX] = Task_ItemContext_ItemPC_2 + [ITEMMENULOCATION_PCBOX] = Task_ItemContext_GiveToPC }; -static const struct YesNoFuncTable sYesNoTossFunctions = {BagMenu_ConfirmToss, BagMenu_CancelToss}; +static const struct YesNoFuncTable sYesNoTossFunctions = {ConfirmToss, CancelToss}; -static const struct YesNoFuncTable sYesNoSellItemFunctions = {BagMenu_ConfirmSell, BagMenu_CancelSell}; +static const struct YesNoFuncTable sYesNoSellItemFunctions = {ConfirmSell, CancelSell}; static const struct ScrollArrowsTemplate sBagScrollArrowsTemplate = { .firstArrowType = SCROLL_ARROW_LEFT, @@ -313,25 +367,33 @@ static const struct ScrollArrowsTemplate sBagScrollArrowsTemplate = { .secondY = 16, .fullyUpThreshold = -1, .fullyDownThreshold = -1, - .tileTag = 111, - .palTag = 111, + .tileTag = TAG_BAG_SCROLL_ARROW, + .palTag = TAG_BAG_SCROLL_ARROW, .palNum = 0, }; static const u8 sRegisteredSelect_Gfx[] = INCBIN_U8("graphics/interface/select_button.4bpp"); +enum { + COLORID_NORMAL, + COLORID_POCKET_NAME, + COLORID_GRAY_CURSOR, + COLORID_UNUSED, + COLORID_TMHM_INFO, + COLORID_NONE = 0xFF +}; static const u8 sFontColorTable[][3] = { -// bgColor, textColor, shadowColor - {0, 1, 3}, - {0, 1, 4}, - {0, 3, 6}, - {2, 1, 3}, - {0, 14, 10} + // bgColor, textColor, shadowColor + [COLORID_NORMAL] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY}, + [COLORID_POCKET_NAME] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_RED}, + [COLORID_GRAY_CURSOR] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_GREEN}, + [COLORID_UNUSED] = {TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY}, + [COLORID_TMHM_INFO] = {TEXT_COLOR_TRANSPARENT, TEXT_DYNAMIC_COLOR_5, TEXT_DYNAMIC_COLOR_1} }; -const struct WindowTemplate sDefaultBagWindows[] = +static const struct WindowTemplate sDefaultBagWindows[] = { - { // Item names + [WIN_ITEM_LIST] = { .bg = 0, .tilemapLeft = 14, .tilemapTop = 2, @@ -340,7 +402,7 @@ const struct WindowTemplate sDefaultBagWindows[] = .paletteNum = 1, .baseBlock = 0x27, }, - { // Description + [WIN_DESCRIPTION] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, @@ -349,7 +411,7 @@ const struct WindowTemplate sDefaultBagWindows[] = .paletteNum = 1, .baseBlock = 0x117, }, - { // Pocket name + [WIN_POCKET_NAME] = { .bg = 0, .tilemapLeft = 4, .tilemapTop = 1, @@ -358,7 +420,7 @@ const struct WindowTemplate sDefaultBagWindows[] = .paletteNum = 1, .baseBlock = 0x1A1, }, - { // TM/HM info icons + [WIN_TMHM_INFO_ICONS] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 13, @@ -367,7 +429,7 @@ const struct WindowTemplate sDefaultBagWindows[] = .paletteNum = 12, .baseBlock = 0x16B, }, - {// TM/HM info + [WIN_TMHM_INFO] = { .bg = 0, .tilemapLeft = 7, .tilemapTop = 13, @@ -376,7 +438,7 @@ const struct WindowTemplate sDefaultBagWindows[] = .paletteNum = 12, .baseBlock = 0x189, }, - { // Field message box + [WIN_MESSAGE] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 15, @@ -388,9 +450,9 @@ const struct WindowTemplate sDefaultBagWindows[] = DUMMY_WIN_TEMPLATE, }; -const struct WindowTemplate sContextMenuWindowTemplates[] = +static const struct WindowTemplate sContextMenuWindowTemplates[] = { - { + [ITEMWIN_1x1] = { .bg = 1, .tilemapLeft = 22, .tilemapTop = 17, @@ -399,7 +461,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_1x2] = { .bg = 1, .tilemapLeft = 22, .tilemapTop = 15, @@ -408,7 +470,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_2x2] = { .bg = 1, .tilemapLeft = 15, .tilemapTop = 15, @@ -417,7 +479,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_2x3] = { .bg = 1, .tilemapLeft = 15, .tilemapTop = 13, @@ -426,7 +488,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_MESSAGE] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 15, @@ -435,7 +497,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x1B1, }, - { + [ITEMWIN_YESNO_LOW] = { // Yes/No tucked in corner, for toss confirm .bg = 1, .tilemapLeft = 24, .tilemapTop = 15, @@ -444,7 +506,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_YESNO_HIGH] = { // Yes/No higher up, positioned above a lower message box .bg = 1, .tilemapLeft = 21, .tilemapTop = 9, @@ -453,7 +515,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_QUANTITY] = { // Used for quantity of items to Toss/Deposit .bg = 1, .tilemapLeft = 24, .tilemapTop = 17, @@ -462,7 +524,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x21D, }, - { + [ITEMWIN_QUANTITY_WIDE] = { // Used for quantity and price of items to Sell .bg = 1, .tilemapLeft = 18, .tilemapTop = 11, @@ -471,7 +533,7 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x245, }, - { + [ITEMWIN_MONEY] = { .bg = 1, .tilemapLeft = 1, .tilemapTop = 1, @@ -482,41 +544,18 @@ const struct WindowTemplate sContextMenuWindowTemplates[] = }, }; -// .text - -struct ListBuffer1 { - struct ListMenuItem subBuffers[MAX_POCKET_ITEMS]; -}; - -struct ListBuffer2 { - s8 name[MAX_POCKET_ITEMS][24]; -}; - -struct TempWallyStruct { - struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; - struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; - u16 cursorPosition[POCKETS_COUNT]; - u16 scrollPosition[POCKETS_COUNT]; - u8 filler[2]; - u16 pocket; -}; - -EWRAM_DATA struct BagMenuStruct *gBagMenu = 0; -EWRAM_DATA struct BagStruct gBagPositionStruct = {0}; +EWRAM_DATA struct BagMenu *gBagMenu = 0; +EWRAM_DATA struct BagPosition gBagPosition = {0}; static EWRAM_DATA struct ListBuffer1 *sListBuffer1 = 0; static EWRAM_DATA struct ListBuffer2 *sListBuffer2 = 0; EWRAM_DATA u16 gSpecialVar_ItemId = 0; -static EWRAM_DATA struct TempWallyStruct *sTempWallyBag = 0; - -extern u8 *const gPocketNamesStringsTable[]; -extern const u8 EventScript_SelectWithoutRegisteredItem[]; -extern const u16 gUnknown_0860F074[]; +static EWRAM_DATA struct TempWallyBag *sTempWallyBag = 0; void ResetBagScrollPositions(void) { - gBagPositionStruct.pocket = ITEMS_POCKET; - memset(gBagPositionStruct.cursorPosition, 0, 10); - memset(gBagPositionStruct.scrollPosition, 0, 10); + gBagPosition.pocket = ITEMS_POCKET; + memset(gBagPosition.cursorPosition, 0, sizeof(gBagPosition.cursorPosition)); + memset(gBagPosition.scrollPosition, 0, sizeof(gBagPosition.scrollPosition)); } void CB2_BagMenuFromStartMenu(void) @@ -573,30 +612,31 @@ void QuizLadyOpenBagMenu(void) gSpecialVar_Result = FALSE; } -void GoToBagMenu(u8 location, u8 pocket, void ( *postExitMenuMainCallback2)()) +void GoToBagMenu(u8 location, u8 pocket, void ( *exitCallback)()) { - gBagMenu = AllocZeroed(sizeof(struct BagMenuStruct)); + gBagMenu = AllocZeroed(sizeof(*gBagMenu)); if (gBagMenu == NULL) { - SetMainCallback2(postExitMenuMainCallback2); + // Alloc failed, exit + SetMainCallback2(exitCallback); } else { if (location != ITEMMENULOCATION_LAST) - gBagPositionStruct.location = location; - if (postExitMenuMainCallback2) - gBagPositionStruct.bagCallback = postExitMenuMainCallback2; + gBagPosition.location = location; + if (exitCallback) + gBagPosition.exitCallback = exitCallback; if (pocket < POCKETS_COUNT) - gBagPositionStruct.pocket = pocket; - if (gBagPositionStruct.location == ITEMMENULOCATION_BERRY_TREE || - gBagPositionStruct.location == ITEMMENULOCATION_BERRY_BLENDER_CRUSH) + gBagPosition.pocket = pocket; + if (gBagPosition.location == ITEMMENULOCATION_BERRY_TREE || + gBagPosition.location == ITEMMENULOCATION_BERRY_BLENDER_CRUSH) gBagMenu->pocketSwitchDisabled = TRUE; - gBagMenu->exitCallback = NULL; - gBagMenu->itemOriginalLocation = 0xFF; + gBagMenu->newScreenCallback = NULL; + gBagMenu->toSwapPos = NOT_SWAPPING; gBagMenu->pocketScrollArrowsTask = TASK_NONE; gBagMenu->pocketSwitchArrowsTask = TASK_NONE; - memset(gBagMenu->spriteId, 0xFF, sizeof(gBagMenu->spriteId)); - memset(gBagMenu->windowPointers, 0xFF, 10); + memset(gBagMenu->spriteIds, SPRITE_NONE, sizeof(gBagMenu->spriteIds)); + memset(gBagMenu->windowIds, WINDOW_NONE, sizeof(gBagMenu->windowIds)); SetMainCallback2(CB2_Bag); } } @@ -617,14 +657,23 @@ void VBlankCB_BagMenuRun(void) TransferPlttBuffer(); } -#define tItemCount data[8] +#define tListTaskId data[0] +#define tListPosition data[1] +#define tQuantity data[2] +#define tNeverRead data[3] +#define tItemCount data[8] +#define tMsgWindowId data[10] +#define tPocketSwitchDir data[11] +#define tPocketSwitchTimer data[12] +#define tPocketSwitchState data[13] -void CB2_Bag(void) +static void CB2_Bag(void) { - while(MenuHelpers_CallLinkSomething() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE) {}; + while(MenuHelpers_CallLinkSomething() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE) + {}; } -bool8 SetupBagMenu(void) +static bool8 SetupBagMenu(void) { u8 taskId; @@ -671,13 +720,13 @@ bool8 SetupBagMenu(void) gMain.state++; break; case 9: - SetupBagMenu_Textboxes(); + LoadBagMenuTextWindows(); gMain.state++; break; case 10: - All_CalculateNItemsAndMaxShowed(); - SetPocketListPositions(); - UpdatePocketScrollPositions(); + UpdatePocketItemLists(); + InitPocketListPositions(); + InitPocketScrollPositions(); gMain.state++; break; case 11: @@ -685,24 +734,24 @@ bool8 SetupBagMenu(void) gMain.state++; break; case 12: - LoadBagItemListBuffers(gBagPositionStruct.pocket); + LoadBagItemListBuffers(gBagPosition.pocket); gMain.state++; break; case 13: - BagMenu_PrintPocketNames(gPocketNamesStringsTable[gBagPositionStruct.pocket], 0); - BagMenu_CopyPocketNameToWindow(0); - DrawPocketIndicatorSquare(gBagPositionStruct.pocket, TRUE); + PrintPocketNames(gPocketNamesStringsTable[gBagPosition.pocket], 0); + CopyPocketNameToWindow(0); + DrawPocketIndicatorSquare(gBagPosition.pocket, TRUE); gMain.state++; break; case 14: - taskId = CreateBagInputHandlerTask(gBagPositionStruct.location); - gTasks[taskId].data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); - gTasks[taskId].data[3] = 0; + taskId = CreateBagInputHandlerTask(gBagPosition.location); + gTasks[taskId].tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gBagPosition.scrollPosition[gBagPosition.pocket], gBagPosition.cursorPosition[gBagPosition.pocket]); + gTasks[taskId].tNeverRead = 0; gTasks[taskId].tItemCount = 0; gMain.state++; break; case 15: - AddBagVisualSprite(gBagPositionStruct.pocket); + AddBagVisualSprite(gBagPosition.pocket); gMain.state++; break; case 16: @@ -715,7 +764,7 @@ bool8 SetupBagMenu(void) gMain.state++; break; case 18: - BagMenu_PrepareTMHMMoveWindow(); + PrepareTMHMMoveWindow(); gMain.state++; break; case 19: @@ -735,10 +784,10 @@ bool8 SetupBagMenu(void) return FALSE; } -void BagMenu_InitBGs(void) +static void BagMenu_InitBGs(void) { ResetVramOamAndBgCntRegs(); - memset(gBagMenu->tilemapBuffer, 0, 0x800); + memset(gBagMenu->tilemapBuffer, 0, sizeof(gBagMenu->tilemapBuffer)); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates_ItemMenu, ARRAY_COUNT(sBgTemplates_ItemMenu)); SetBgTilemapBuffer(2, gBagMenu->tilemapBuffer); @@ -751,49 +800,49 @@ void BagMenu_InitBGs(void) SetGpuReg(REG_OFFSET_BLDCNT, 0); } -bool8 LoadBagMenu_Graphics(void) +static bool8 LoadBagMenu_Graphics(void) { switch (gBagMenu->graphicsLoadState) { - case 0: - ResetTempTileDataBuffers(); - DecompressAndCopyTileDataToVram(2, gBagScreen_Gfx, 0, 0, 0); - gBagMenu->graphicsLoadState++; - break; - case 1: - if (FreeTempTileDataBuffersIfPossible() != TRUE) - { - LZDecompressWram(gBagScreen_GfxTileMap, gBagMenu->tilemapBuffer); - gBagMenu->graphicsLoadState++; - } - break; - case 2: - if (!IsWallysBag() && gSaveBlock2Ptr->playerGender != MALE) - LoadCompressedPalette(gBagScreenFemale_Pal, 0, 0x40); - else - LoadCompressedPalette(gBagScreenMale_Pal, 0, 0x40); - gBagMenu->graphicsLoadState++; - break; - case 3: - if (IsWallysBag() == TRUE || gSaveBlock2Ptr->playerGender == MALE) - LoadCompressedSpriteSheet(&gBagMaleSpriteSheet); - else - LoadCompressedSpriteSheet(&gBagFemaleSpriteSheet); - gBagMenu->graphicsLoadState++; - break; - case 4: - LoadCompressedSpritePalette(&gBagPaletteTable); + case 0: + ResetTempTileDataBuffers(); + DecompressAndCopyTileDataToVram(2, gBagScreen_Gfx, 0, 0, 0); + gBagMenu->graphicsLoadState++; + break; + case 1: + if (FreeTempTileDataBuffersIfPossible() != TRUE) + { + LZDecompressWram(gBagScreen_GfxTileMap, gBagMenu->tilemapBuffer); gBagMenu->graphicsLoadState++; - break; - default: - LoadListMenuSwapLineGfx(); - gBagMenu->graphicsLoadState = 0; - return TRUE; + } + break; + case 2: + if (!IsWallysBag() && gSaveBlock2Ptr->playerGender != MALE) + LoadCompressedPalette(gBagScreenFemale_Pal, 0, 0x40); + else + LoadCompressedPalette(gBagScreenMale_Pal, 0, 0x40); + gBagMenu->graphicsLoadState++; + break; + case 3: + if (IsWallysBag() == TRUE || gSaveBlock2Ptr->playerGender == MALE) + LoadCompressedSpriteSheet(&gBagMaleSpriteSheet); + else + LoadCompressedSpriteSheet(&gBagFemaleSpriteSheet); + gBagMenu->graphicsLoadState++; + break; + case 4: + LoadCompressedSpritePalette(&gBagPaletteTable); + gBagMenu->graphicsLoadState++; + break; + default: + LoadListMenuSwapLineGfx(); + gBagMenu->graphicsLoadState = 0; + return TRUE; } return FALSE; } -u8 CreateBagInputHandlerTask(u8 location) +static u8 CreateBagInputHandlerTask(u8 location) { u8 taskId; if (location == ITEMMENULOCATION_WALLY) @@ -803,13 +852,13 @@ u8 CreateBagInputHandlerTask(u8 location) return taskId; } -void AllocateBagItemListBuffers(void) +static void AllocateBagItemListBuffers(void) { - sListBuffer1 = Alloc(sizeof(struct ListBuffer1)); - sListBuffer2 = Alloc(sizeof(struct ListBuffer2)); + sListBuffer1 = Alloc(sizeof(*sListBuffer1)); + sListBuffer2 = Alloc(sizeof(*sListBuffer2)); } -void LoadBagItemListBuffers(u8 pocketId) +static void LoadBagItemListBuffers(u8 pocketId) { u16 i; struct BagPocket *pocket = &gBagPockets[pocketId]; @@ -845,55 +894,57 @@ void LoadBagItemListBuffers(u8 pocketId) gMultiuseListMenuTemplate.maxShowed = gBagMenu->numShownItems[pocketId]; } -void GetItemName(s8 *dest, u16 itemId) +static void GetItemName(s8 *dest, u16 itemId) { - switch (gBagPositionStruct.pocket) + switch (gBagPosition.pocket) { - case TMHM_POCKET: - StringCopy(gStringVar2, gMoveNames[ItemIdToBattleMoveId(itemId)]); - if (itemId >= ITEM_HM01) - { - ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_HM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 1); - StringExpandPlaceholders(dest, gText_ClearTo11Var1Clear5Var2); - } - else - { - ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_TM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 2); - StringExpandPlaceholders(dest, gText_NumberVar1Clear7Var2); - } - break; - case BERRIES_POCKET: - ConvertIntToDecimalStringN(gStringVar1, itemId - FIRST_BERRY_INDEX + 1, STR_CONV_MODE_LEADING_ZEROS, 2); - CopyItemName(itemId, gStringVar2); - StringExpandPlaceholders(dest, gText_NumberVar1Clear7Var2); - break; - default: - CopyItemName(itemId, dest); - break; + case TMHM_POCKET: + StringCopy(gStringVar2, gMoveNames[ItemIdToBattleMoveId(itemId)]); + if (itemId >= ITEM_HM01) + { + // Get HM number + ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_HM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 1); + StringExpandPlaceholders(dest, gText_NumberItem_HM); + } + else + { + // Get TM number + ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_TM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 2); + StringExpandPlaceholders(dest, gText_NumberItem_TMBerry); + } + break; + case BERRIES_POCKET: + ConvertIntToDecimalStringN(gStringVar1, itemId - FIRST_BERRY_INDEX + 1, STR_CONV_MODE_LEADING_ZEROS, 2); + CopyItemName(itemId, gStringVar2); + StringExpandPlaceholders(dest, gText_NumberItem_TMBerry); + break; + default: + CopyItemName(itemId, dest); + break; } } -void BagMenu_MoveCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *list) +static void BagMenu_MoveCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *list) { if (onInit != TRUE) { PlaySE(SE_SELECT); ShakeBagSprite(); } - if (gBagMenu->itemOriginalLocation == 0xFF) + if (gBagMenu->toSwapPos == NOT_SWAPPING) { RemoveBagItemIconSprite(gBagMenu->itemIconSlot ^ 1); if (itemIndex != LIST_CANCEL) - AddBagItemIconSprite(BagGetItemIdByPocketPosition(gBagPositionStruct.pocket + 1, itemIndex), gBagMenu->itemIconSlot); + AddBagItemIconSprite(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex), gBagMenu->itemIconSlot); else AddBagItemIconSprite(-1, gBagMenu->itemIconSlot); gBagMenu->itemIconSlot ^= 1; if (!gBagMenu->inhibitItemDescriptionPrint) - BagMenu_PrintDescription(itemIndex); + PrintItemDescription(itemIndex); } } -void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) +static void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) { u16 itemId; u16 itemQuantity; @@ -901,74 +952,80 @@ void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) if (itemIndex != LIST_CANCEL) { - if (gBagMenu->itemOriginalLocation != 0xFF) + if (gBagMenu->toSwapPos != NOT_SWAPPING) { - if (gBagMenu->itemOriginalLocation == (u8)itemIndex) - BagMenu_PrintCursor(y, 2); + // Swapping items, draw cursor at original item's location + if (gBagMenu->toSwapPos == (u8)itemIndex) + BagMenu_PrintCursorAtPos(y, COLORID_GRAY_CURSOR); else - BagMenu_PrintCursor(y, 0xFF); + BagMenu_PrintCursorAtPos(y, COLORID_NONE); } - itemId = BagGetItemIdByPocketPosition(gBagPositionStruct.pocket + 1, itemIndex); - itemQuantity = BagGetQuantityByPocketPosition(gBagPositionStruct.pocket + 1, itemIndex); + itemId = BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex); + itemQuantity = BagGetQuantityByPocketPosition(gBagPosition.pocket + 1, itemIndex); + // Draw HM icon if (itemId >= ITEM_HM01 && itemId <= ITEM_HM08) BlitBitmapToWindow(windowId, gBagMenuHMIcon_Gfx, 8, y - 1, 16, 16); - if (gBagPositionStruct.pocket == BERRIES_POCKET) + if (gBagPosition.pocket == BERRIES_POCKET) { + // Print berry quantity ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BERRY_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); offset = GetStringRightAlignXOffset(7, gStringVar4, 119); - BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, -1, 0); + BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); } - else if (gBagPositionStruct.pocket != KEYITEMS_POCKET && ItemId_GetImportance(itemId) == FALSE) + else if (gBagPosition.pocket != KEYITEMS_POCKET && ItemId_GetImportance(itemId) == FALSE) { + // Print item quantity ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); offset = GetStringRightAlignXOffset(7, gStringVar4, 119); - BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, -1, 0); + BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); } else { + // Print registered icon if (gSaveBlock1Ptr->registeredItem && gSaveBlock1Ptr->registeredItem == itemId) BlitBitmapToWindow(windowId, sRegisteredSelect_Gfx, 96, y - 1, 24, 16); } } } -void BagMenu_PrintDescription(int itemIndex) +static void PrintItemDescription(int itemIndex) { const u8 *str; if (itemIndex != LIST_CANCEL) { - str = ItemId_GetDescription(BagGetItemIdByPocketPosition(gBagPositionStruct.pocket + 1, itemIndex)); + str = ItemId_GetDescription(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex)); } else { - StringCopy(gStringVar1, gBagMenu_ReturnToStrings[gBagPositionStruct.location]); + // Print 'Cancel' description + StringCopy(gStringVar1, gBagMenu_ReturnToStrings[gBagPosition.location]); StringExpandPlaceholders(gStringVar4, gText_ReturnToVar1); str = gStringVar4; } - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, str, 3, 1, 0, 0, 0, 0); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, str, 3, 1, 0, 0, 0, COLORID_NORMAL); } -void BagMenu_PrintCursor_(u8 listTaskId, u8 colorIndex) +static void BagMenu_PrintCursor(u8 listTaskId, u8 colorIndex) { - BagMenu_PrintCursor(ListMenuGetYCoordForPrintingArrowCursor(listTaskId), colorIndex); + BagMenu_PrintCursorAtPos(ListMenuGetYCoordForPrintingArrowCursor(listTaskId), colorIndex); } -void BagMenu_PrintCursor(u8 y, u8 colorIndex) +static void BagMenu_PrintCursorAtPos(u8 y, u8 colorIndex) { - if (colorIndex == 0xFF) - FillWindowPixelRect(0, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); + if (colorIndex == COLORID_NONE) + FillWindowPixelRect(WIN_ITEM_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); else - BagMenu_Print(0, 1, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIndex); + BagMenu_Print(WIN_ITEM_LIST, 1, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIndex); } -void CreatePocketScrollArrowPair(void) +static void CreatePocketScrollArrowPair(void) { if (gBagMenu->pocketScrollArrowsTask == TASK_NONE) gBagMenu->pocketScrollArrowsTask = AddScrollIndicatorArrowPairParameterized( @@ -976,10 +1033,10 @@ void CreatePocketScrollArrowPair(void) 172, 12, 148, - gBagMenu->numItemStacks[gBagPositionStruct.pocket] - gBagMenu->numShownItems[gBagPositionStruct.pocket], - 110, - 110, - &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]); + gBagMenu->numItemStacks[gBagPosition.pocket] - gBagMenu->numShownItems[gBagPosition.pocket], + TAG_POCKET_SCROLL_ARROW, + TAG_POCKET_SCROLL_ARROW, + &gBagPosition.scrollPosition[gBagPosition.pocket]); } void BagDestroyPocketScrollArrowPair(void) @@ -989,16 +1046,16 @@ void BagDestroyPocketScrollArrowPair(void) RemoveScrollIndicatorArrowPair(gBagMenu->pocketScrollArrowsTask); gBagMenu->pocketScrollArrowsTask = TASK_NONE; } - BagDestroyPocketSwitchArrowPair(); + DestroyPocketSwitchArrowPair(); } -void CreatePocketSwitchArrowPair(void) +static void CreatePocketSwitchArrowPair(void) { if (gBagMenu->pocketSwitchDisabled != TRUE && gBagMenu->pocketSwitchArrowsTask == TASK_NONE) - gBagMenu->pocketSwitchArrowsTask = AddScrollIndicatorArrowPair(&sBagScrollArrowsTemplate, &gBagPositionStruct.unk6); + gBagMenu->pocketSwitchArrowsTask = AddScrollIndicatorArrowPair(&sBagScrollArrowsTemplate, &gBagPosition.pocketSwitchArrowPos); } -void BagDestroyPocketSwitchArrowPair(void) +static void DestroyPocketSwitchArrowPair(void) { if (gBagMenu->pocketSwitchArrowsTask != TASK_NONE) { @@ -1007,7 +1064,7 @@ void BagDestroyPocketSwitchArrowPair(void) } } -void FreeBagItemListBuffers(void) +static void FreeBagMenu(void) { Free(sListBuffer2); Free(sListBuffer1); @@ -1018,23 +1075,27 @@ void FreeBagItemListBuffers(void) void Task_FadeAndCloseBagMenu(u8 taskId) { BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - gTasks[taskId].func = TaskCloseBagMenu_2; + gTasks[taskId].func = Task_CloseBagMenu; } -void TaskCloseBagMenu_2(u8 taskId) +static void Task_CloseBagMenu(u8 taskId) { s16* data = gTasks[taskId].data; if (!gPaletteFade.active) { - DestroyListMenuTask(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); - if (gBagMenu->exitCallback != NULL) - SetMainCallback2(gBagMenu->exitCallback); + DestroyListMenuTask(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); + + // If ready for a new screen (e.g. party menu for giving an item) go to that screen + // Otherwise exit the bag and use callback set up when the bag was first opened + if (gBagMenu->newScreenCallback != NULL) + SetMainCallback2(gBagMenu->newScreenCallback); else - SetMainCallback2(gBagPositionStruct.bagCallback); + SetMainCallback2(gBagPosition.exitCallback); + BagDestroyPocketScrollArrowPair(); ResetSpriteData(); FreeAllSpritePalettes(); - FreeBagItemListBuffers(); + FreeBagMenu(); DestroyTask(taskId); } } @@ -1045,13 +1106,13 @@ void UpdatePocketItemList(u8 pocketId) struct BagPocket *pocket = &gBagPockets[pocketId]; switch (pocketId) { - case TMHM_POCKET: - case BERRIES_POCKET: - SortBerriesOrTMHMs(pocket); - break; - default: - CompactItemsInBagPocket(pocket); - break; + case TMHM_POCKET: + case BERRIES_POCKET: + SortBerriesOrTMHMs(pocket); + break; + default: + CompactItemsInBagPocket(pocket); + break; } gBagMenu->numItemStacks[pocketId] = 0; @@ -1062,160 +1123,161 @@ void UpdatePocketItemList(u8 pocketId) if (!gBagMenu->hideCloseBagText) gBagMenu->numItemStacks[pocketId]++; - if (gBagMenu->numItemStacks[pocketId] > 8) - gBagMenu->numShownItems[pocketId] = 8; + if (gBagMenu->numItemStacks[pocketId] > MAX_ITEMS_SHOWN) + gBagMenu->numShownItems[pocketId] = MAX_ITEMS_SHOWN; else gBagMenu->numShownItems[pocketId] = gBagMenu->numItemStacks[pocketId]; } -void All_CalculateNItemsAndMaxShowed(void) +static void UpdatePocketItemLists(void) { u8 i; for (i = 0; i < POCKETS_COUNT; i++) UpdatePocketItemList(i); } -void SetInitialScrollAndCursorPositions(u8 pocketId) +void UpdatePocketListPosition(u8 pocketId) { - sub_812225C(&gBagPositionStruct.scrollPosition[pocketId], &gBagPositionStruct.cursorPosition[pocketId], gBagMenu->numShownItems[pocketId], gBagMenu->numItemStacks[pocketId]); + sub_812225C(&gBagPosition.scrollPosition[pocketId], &gBagPosition.cursorPosition[pocketId], gBagMenu->numShownItems[pocketId], gBagMenu->numItemStacks[pocketId]); } -static void SetPocketListPositions(void) +static void InitPocketListPositions(void) { u8 i; for (i = 0; i < POCKETS_COUNT; i++) - SetInitialScrollAndCursorPositions(i); + UpdatePocketListPosition(i); } -void UpdatePocketScrollPositions(void) +static void InitPocketScrollPositions(void) { u8 i; for (i = 0; i < POCKETS_COUNT; i++) - sub_8122298(&gBagPositionStruct.scrollPosition[i], &gBagPositionStruct.cursorPosition[i], gBagMenu->numShownItems[i], gBagMenu->numItemStacks[i], 8); + SetCursorScrollWithinListBounds(&gBagPosition.scrollPosition[i], &gBagPosition.cursorPosition[i], gBagMenu->numShownItems[i], gBagMenu->numItemStacks[i], MAX_ITEMS_SHOWN); } u8 GetItemListPosition(u8 pocketId) { - return gBagPositionStruct.scrollPosition[pocketId] + gBagPositionStruct.cursorPosition[pocketId]; + return gBagPosition.scrollPosition[pocketId] + gBagPosition.cursorPosition[pocketId]; } void DisplayItemMessage(u8 taskId, u8 fontId, const u8 *str, void (*callback)(u8 taskId)) { s16* data = gTasks[taskId].data; - data[10] = AddItemMessageWindow(4); - FillWindowPixelBuffer(data[10], PIXEL_FILL(1)); - DisplayMessageAndContinueTask(taskId, data[10], 10, 13, fontId, GetPlayerTextSpeedDelay(), str, callback); + tMsgWindowId = AddItemMessageWindow(ITEMWIN_MESSAGE); + FillWindowPixelBuffer(tMsgWindowId, PIXEL_FILL(1)); + DisplayMessageAndContinueTask(taskId, tMsgWindowId, 10, 13, fontId, GetPlayerTextSpeedDelay(), str, callback); ScheduleBgCopyTilemapToVram(1); } -void BagMenu_InitListsMenu(u8 taskId) +void CloseItemMessage(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; - BagMenu_RemoveBagItemMessageWindow(4); - DestroyListMenuTask(data[0], scrollPos, cursorPos); - UpdatePocketItemList(gBagPositionStruct.pocket); - SetInitialScrollAndCursorPositions(gBagPositionStruct.pocket); - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + RemoveItemMessageWindow(ITEMWIN_MESSAGE); + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + UpdatePocketItemList(gBagPosition.pocket); + UpdatePocketListPosition(gBagPosition.pocket); + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); ScheduleBgCopyTilemapToVram(0); - set_callback3_to_bag(taskId); + ReturnToItemList(taskId); } -void sub_81ABC3C(u8 a) +static void AddItemQuantityWindow(u8 windowType) { - PrintItemDepositAmount(BagMenu_AddWindow(a), 1); + PrintItemQuantity(BagMenu_AddWindow(windowType), 1); } -void PrintItemDepositAmount(u8 windowId, s16 numDeposited) +static void PrintItemQuantity(u8 windowId, s16 quantity) { - u8 numDigits = (gBagPositionStruct.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; - ConvertIntToDecimalStringN(gStringVar1, numDeposited, STR_CONV_MODE_LEADING_ZEROS, numDigits); + u8 numDigits = (gBagPosition.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; + ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_LEADING_ZEROS, numDigits); StringExpandPlaceholders(gStringVar4, gText_xVar1); AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 0x28), 2, 0, 0); } -void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned) +// Prints the quantity of items to be sold and the amount that would be earned +static void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned) { - u8 numDigits = (gBagPositionStruct.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; + u8 numDigits = (gBagPosition.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; ConvertIntToDecimalStringN(gStringVar1, numSold, STR_CONV_MODE_LEADING_ZEROS, numDigits); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, -1, 0); + AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, 0); PrintMoneyAmount(windowId, 38, 1, moneyEarned, 0); } -void Task_BagMenu_HandleInput(u8 taskId) +static void Task_BagMenu_HandleInput(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; s32 listPosition; if (MenuHelpers_CallLinkSomething() != TRUE && !gPaletteFade.active) { switch (GetSwitchBagPocketDirection()) { - case SWITCH_POCKET_LEFT: - SwitchBagPocket(taskId, MENU_CURSOR_DELTA_LEFT, 0); - return; - case SWITCH_POCKET_RIGHT: - SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, 0); - return; - default: - if (JOY_NEW(SELECT_BUTTON)) + case SWITCH_POCKET_LEFT: + SwitchBagPocket(taskId, MENU_CURSOR_DELTA_LEFT, FALSE); + return; + case SWITCH_POCKET_RIGHT: + SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, FALSE); + return; + default: + if (JOY_NEW(SELECT_BUTTON)) + { + if (CanSwapItems() == TRUE) { - if (CanSwapItems() == TRUE) + ListMenuGetScrollAndRow(tListTaskId, scrollPos, cursorPos); + if ((*scrollPos + *cursorPos) != gBagMenu->numItemStacks[gBagPosition.pocket] - 1) { - ListMenuGetScrollAndRow(data[0], scrollPos, cursorPos); - if ((*scrollPos + *cursorPos) != gBagMenu->numItemStacks[gBagPositionStruct.pocket] - 1) - { - PlaySE(SE_SELECT); - BagMenu_SwapItems(taskId); - } + PlaySE(SE_SELECT); + StartItemSwap(taskId); } - return; } - break; + return; + } + break; } - listPosition = ListMenu_ProcessInput(data[0]); - ListMenuGetScrollAndRow(data[0], scrollPos, cursorPos); + listPosition = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, scrollPos, cursorPos); switch (listPosition) { - case LIST_NOTHING_CHOSEN: - break; - case LIST_CANCEL: - if (gBagPositionStruct.location == ITEMMENULOCATION_BERRY_BLENDER_CRUSH) - { - PlaySE(SE_FAILURE); - break; - } - PlaySE(SE_SELECT); - gSpecialVar_ItemId = ITEM_NONE; - gTasks[taskId].func = Task_FadeAndCloseBagMenu; - break; - default: // A_BUTTON - PlaySE(SE_SELECT); - BagDestroyPocketScrollArrowPair(); - BagMenu_PrintCursor_(data[0], 2); - data[1] = listPosition; - data[2] = BagGetQuantityByPocketPosition(gBagPositionStruct.pocket + 1, listPosition); - gSpecialVar_ItemId = BagGetItemIdByPocketPosition(gBagPositionStruct.pocket + 1, listPosition); - gUnknown_08614054[gBagPositionStruct.location](taskId); + case LIST_NOTHING_CHOSEN: + break; + case LIST_CANCEL: + if (gBagPosition.location == ITEMMENULOCATION_BERRY_BLENDER_CRUSH) + { + PlaySE(SE_FAILURE); break; + } + PlaySE(SE_SELECT); + gSpecialVar_ItemId = ITEM_NONE; + gTasks[taskId].func = Task_FadeAndCloseBagMenu; + break; + default: // A_BUTTON + PlaySE(SE_SELECT); + BagDestroyPocketScrollArrowPair(); + BagMenu_PrintCursor(tListTaskId, COLORID_GRAY_CURSOR); + tListPosition = listPosition; + tQuantity = BagGetQuantityByPocketPosition(gBagPosition.pocket + 1, listPosition); + gSpecialVar_ItemId = BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, listPosition); + sContextMenuFuncs[gBagPosition.location](taskId); + break; } } } -void set_callback3_to_bag(u8 taskId) +static void ReturnToItemList(u8 taskId) { CreatePocketScrollArrowPair(); CreatePocketSwitchArrowPair(); - ClearWindowTilemap(3); - ClearWindowTilemap(4); - PutWindowTilemap(1); + ClearWindowTilemap(WIN_TMHM_INFO_ICONS); + ClearWindowTilemap(WIN_TMHM_INFO); + PutWindowTilemap(WIN_DESCRIPTION); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Task_BagMenu_HandleInput; } @@ -1226,12 +1288,12 @@ static u8 GetSwitchBagPocketDirection(void) if (gBagMenu->pocketSwitchDisabled) return SWITCH_POCKET_NONE; LRKeys = GetLRKeysPressed(); - if ((JOY_NEW(DPAD_LEFT)) || LRKeys == MENU_L_PRESSED) + if (JOY_NEW(DPAD_LEFT) || LRKeys == MENU_L_PRESSED) { PlaySE(SE_SELECT); return SWITCH_POCKET_LEFT; } - if ((JOY_NEW(DPAD_RIGHT)) || LRKeys == MENU_R_PRESSED) + if (JOY_NEW(DPAD_RIGHT) || LRKeys == MENU_R_PRESSED) { PlaySE(SE_SELECT); return SWITCH_POCKET_RIGHT; @@ -1241,54 +1303,54 @@ static u8 GetSwitchBagPocketDirection(void) static void ChangeBagPocketId(u8 *bagPocketId, s8 deltaBagPocketId) { - if (deltaBagPocketId == 1 && *bagPocketId == POCKETS_COUNT - 1) + if (deltaBagPocketId == MENU_CURSOR_DELTA_RIGHT && *bagPocketId == POCKETS_COUNT - 1) *bagPocketId = 0; - else if (deltaBagPocketId == -1 && *bagPocketId == 0) + else if (deltaBagPocketId == MENU_CURSOR_DELTA_LEFT && *bagPocketId == 0) *bagPocketId = POCKETS_COUNT - 1; else *bagPocketId += deltaBagPocketId; } -static void SwitchBagPocket(u8 taskId, s16 deltaBagPocketId, u16 a3) +static void SwitchBagPocket(u8 taskId, s16 deltaBagPocketId, bool16 skipEraseList) { s16* data = gTasks[taskId].data; - u8 pocketId; + u8 newPocket; - data[13] = 0; - data[12] = 0; - data[11] = deltaBagPocketId; - if (a3 == 0) + tPocketSwitchState = 0; + tPocketSwitchTimer = 0; + tPocketSwitchDir = deltaBagPocketId; + if (!skipEraseList) { - ClearWindowTilemap(0); - ClearWindowTilemap(1); - DestroyListMenuTask(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); + ClearWindowTilemap(WIN_ITEM_LIST); + ClearWindowTilemap(WIN_DESCRIPTION); + DestroyListMenuTask(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); ScheduleBgCopyTilemapToVram(0); - gSprites[gBagMenu->spriteId[2 + (gBagMenu->itemIconSlot ^ 1)]].invisible = TRUE; + gSprites[gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM + (gBagMenu->itemIconSlot ^ 1)]].invisible = TRUE; BagDestroyPocketScrollArrowPair(); } - pocketId = gBagPositionStruct.pocket; - ChangeBagPocketId(&pocketId, deltaBagPocketId); + newPocket = gBagPosition.pocket; + ChangeBagPocketId(&newPocket, deltaBagPocketId); if (deltaBagPocketId == MENU_CURSOR_DELTA_RIGHT) { - BagMenu_PrintPocketNames(gPocketNamesStringsTable[gBagPositionStruct.pocket], gPocketNamesStringsTable[pocketId]); - BagMenu_CopyPocketNameToWindow(0); + PrintPocketNames(gPocketNamesStringsTable[gBagPosition.pocket], gPocketNamesStringsTable[newPocket]); + CopyPocketNameToWindow(0); } else { - BagMenu_PrintPocketNames(gPocketNamesStringsTable[pocketId], gPocketNamesStringsTable[gBagPositionStruct.pocket]); - BagMenu_CopyPocketNameToWindow(8); + PrintPocketNames(gPocketNamesStringsTable[newPocket], gPocketNamesStringsTable[gBagPosition.pocket]); + CopyPocketNameToWindow(8); } - DrawPocketIndicatorSquare(gBagPositionStruct.pocket, FALSE); - DrawPocketIndicatorSquare(pocketId, TRUE); + DrawPocketIndicatorSquare(gBagPosition.pocket, FALSE); + DrawPocketIndicatorSquare(newPocket, TRUE); FillBgTilemapBufferRect_Palette0(2, 11, 14, 2, 15, 16); ScheduleBgCopyTilemapToVram(2); - SetBagVisualPocketId(pocketId, 1); - RemoveBagSprite(1); + SetBagVisualPocketId(newPocket, 1); + RemoveBagSprite(ITEMMENUSPRITE_BALL); AddSwitchPocketRotatingBallSprite(deltaBagPocketId); - SetTaskFuncWithFollowupFunc(taskId, sub_81AC10C, gTasks[taskId].func); + SetTaskFuncWithFollowupFunc(taskId, Task_SwitchBagPocket, gTasks[taskId].func); } -void sub_81AC10C(u8 taskId) +static void Task_SwitchBagPocket(u8 taskId) { s16* data = gTasks[taskId].data; @@ -1296,48 +1358,50 @@ void sub_81AC10C(u8 taskId) { switch (GetSwitchBagPocketDirection()) { - case SWITCH_POCKET_LEFT: - ChangeBagPocketId(&gBagPositionStruct.pocket, data[11]); - SwitchTaskToFollowupFunc(taskId); - SwitchBagPocket(taskId, MENU_CURSOR_DELTA_LEFT, 1); - return; - case SWITCH_POCKET_RIGHT: - ChangeBagPocketId(&gBagPositionStruct.pocket, data[11]); - SwitchTaskToFollowupFunc(taskId); - SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, 1); - return; + case SWITCH_POCKET_LEFT: + ChangeBagPocketId(&gBagPosition.pocket, tPocketSwitchDir); + SwitchTaskToFollowupFunc(taskId); + SwitchBagPocket(taskId, MENU_CURSOR_DELTA_LEFT, TRUE); + return; + case SWITCH_POCKET_RIGHT: + ChangeBagPocketId(&gBagPosition.pocket, tPocketSwitchDir); + SwitchTaskToFollowupFunc(taskId); + SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, TRUE); + return; } } - switch (data[13]) + switch (tPocketSwitchState) { - case 0: - sub_81AC23C(data[12]); - if (!(++data[12] & 1)) - { - if (data[11] == 1) - BagMenu_CopyPocketNameToWindow((u8)(data[12] >> 1)); - else - BagMenu_CopyPocketNameToWindow((u8)(8 - (data[12] >> 1))); - } - if (data[12] == 16) - data[13]++; - break; - case 1: - ChangeBagPocketId(&gBagPositionStruct.pocket, data[11]); - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); - PutWindowTilemap(1); - PutWindowTilemap(2); - ScheduleBgCopyTilemapToVram(0); - CreatePocketScrollArrowPair(); - CreatePocketSwitchArrowPair(); - SwitchTaskToFollowupFunc(taskId); + case 0: + DrawItemListBgRow(tPocketSwitchTimer); + if (!(++tPocketSwitchTimer & 1)) + { + if (tPocketSwitchDir == MENU_CURSOR_DELTA_RIGHT) + CopyPocketNameToWindow((u8)(tPocketSwitchTimer >> 1)); + else + CopyPocketNameToWindow((u8)(8 - (tPocketSwitchTimer >> 1))); + } + if (tPocketSwitchTimer == 16) + tPocketSwitchState++; + break; + case 1: + ChangeBagPocketId(&gBagPosition.pocket, tPocketSwitchDir); + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, gBagPosition.scrollPosition[gBagPosition.pocket], gBagPosition.cursorPosition[gBagPosition.pocket]); + PutWindowTilemap(WIN_DESCRIPTION); + PutWindowTilemap(WIN_POCKET_NAME); + ScheduleBgCopyTilemapToVram(0); + CreatePocketScrollArrowPair(); + CreatePocketSwitchArrowPair(); + SwitchTaskToFollowupFunc(taskId); } } -void sub_81AC23C(u8 a) +// The background of the item list is a lighter color than the surrounding menu +// When the pocket is switched this lighter background is redrawn row by row +static void DrawItemListBgRow(u8 y) { - FillBgTilemapBufferRect_Palette0(2, 17, 14, a + 2, 15, 1); + FillBgTilemapBufferRect_Palette0(2, 17, 14, y + 2, 15, 1); ScheduleBgCopyTilemapToVram(2); } @@ -1352,299 +1416,308 @@ static void DrawPocketIndicatorSquare(u8 x, bool8 isCurrentPocket) static bool8 CanSwapItems(void) { - if (gBagPositionStruct.location <= ITEMMENULOCATION_BATTLE) + // Swaps can only be done from the field or in battle (as opposed to while selling items, for example) + if (gBagPosition.location == ITEMMENULOCATION_FIELD + || gBagPosition.location == ITEMMENULOCATION_BATTLE) { - u8 temp = gBagPositionStruct.pocket - 2; - if (temp > 1) + // TMHMs and berries are numbered, and so may not be swapped + if (gBagPosition.pocket != TMHM_POCKET + && gBagPosition.pocket != BERRIES_POCKET) return TRUE; } return FALSE; } -void BagMenu_SwapItems(u8 taskId) +static void StartItemSwap(u8 taskId) { s16* data = gTasks[taskId].data; - ListMenuSetUnkIndicatorsStructField(data[0], 16, 1); - data[1] = gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket] + gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; - gBagMenu->itemOriginalLocation = data[1]; - CopyItemName(BagGetItemIdByPocketPosition(gBagPositionStruct.pocket + 1, data[1]), gStringVar1); + ListMenuSetUnkIndicatorsStructField(tListTaskId, 16, 1); + tListPosition = gBagPosition.scrollPosition[gBagPosition.pocket] + gBagPosition.cursorPosition[gBagPosition.pocket]; + gBagMenu->toSwapPos = tListPosition; + CopyItemName(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, tListPosition), gStringVar1); StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - UpdateItemMenuSwapLinePos(data[1]); - BagDestroyPocketSwitchArrowPair(); - BagMenu_PrintCursor_(data[0], 2); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + UpdateItemMenuSwapLinePos(tListPosition); + DestroyPocketSwitchArrowPair(); + BagMenu_PrintCursor(tListTaskId, COLORID_GRAY_CURSOR); gTasks[taskId].func = Task_HandleSwappingItemsInput; } static void Task_HandleSwappingItemsInput(u8 taskId) { s16* data = gTasks[taskId].data; - int input; if (MenuHelpers_CallLinkSomething() != TRUE) { if (JOY_NEW(SELECT_BUTTON)) { PlaySE(SE_SELECT); - ListMenuGetScrollAndRow(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); - sub_81AC498(taskId); + ListMenuGetScrollAndRow(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); + DoItemSwap(taskId); } else { - input = ListMenu_ProcessInput(data[0]); - ListMenuGetScrollAndRow(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); + s32 input = ListMenu_ProcessInput(tListTaskId); + ListMenuGetScrollAndRow(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); SetItemMenuSwapLineInvisibility(FALSE); - UpdateItemMenuSwapLinePos(gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]); + UpdateItemMenuSwapLinePos(gBagPosition.cursorPosition[gBagPosition.pocket]); switch (input) { - case LIST_NOTHING_CHOSEN: - break; - case LIST_CANCEL: - PlaySE(SE_SELECT); - if (JOY_NEW(A_BUTTON)) - sub_81AC498(taskId); - else - sub_81AC590(taskId); - break; - default: - PlaySE(SE_SELECT); - sub_81AC498(taskId); + case LIST_NOTHING_CHOSEN: + break; + case LIST_CANCEL: + PlaySE(SE_SELECT); + if (JOY_NEW(A_BUTTON)) + DoItemSwap(taskId); + else + CancelItemSwap(taskId); + break; + default: + PlaySE(SE_SELECT); + DoItemSwap(taskId); + break; } } } } -void sub_81AC498(u8 taskId) +static void DoItemSwap(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; u16 realPos = (*scrollPos + *cursorPos); - if (data[1] == realPos || data[1] == (realPos - 1)) - sub_81AC590(taskId); + if (tListPosition == realPos || tListPosition == realPos - 1) + { + // Position is the same as the original, cancel + CancelItemSwap(taskId); + } else { - MoveItemSlotInList(gBagPockets[gBagPositionStruct.pocket].itemSlots, data[1], realPos); - gBagMenu->itemOriginalLocation = -1; - DestroyListMenuTask(data[0], scrollPos, cursorPos); - if (data[1] < realPos) - gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--; - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + MoveItemSlotInList(gBagPockets[gBagPosition.pocket].itemSlots, tListPosition, realPos); + gBagMenu->toSwapPos = NOT_SWAPPING; + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + if (tListPosition < realPos) + gBagPosition.cursorPosition[gBagPosition.pocket]--; + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); SetItemMenuSwapLineInvisibility(TRUE); CreatePocketSwitchArrowPair(); gTasks[taskId].func = Task_BagMenu_HandleInput; } } -void sub_81AC590(u8 taskId) +static void CancelItemSwap(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; - - gBagMenu->itemOriginalLocation = -1; - DestroyListMenuTask(data[0], scrollPos, cursorPos); - if (data[1] < (*scrollPos + *cursorPos)) - gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--; - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + + gBagMenu->toSwapPos = NOT_SWAPPING; + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + if (tListPosition < *scrollPos + *cursorPos) + gBagPosition.cursorPosition[gBagPosition.pocket]--; + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); SetItemMenuSwapLineInvisibility(TRUE); CreatePocketSwitchArrowPair(); gTasks[taskId].func = Task_BagMenu_HandleInput; } -static void OpenContextMenu(u8 unused) +static void OpenContextMenu(u8 taskId) { - switch (gBagPositionStruct.location) + switch (gBagPosition.location) { - case ITEMMENULOCATION_BATTLE: - case ITEMMENULOCATION_WALLY: - if (ItemId_GetBattleUsage(gSpecialVar_ItemId)) - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_BattleUse; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BattleUse); - } - else - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); - } - break; - case ITEMMENULOCATION_BERRY_BLENDER_CRUSH: - gBagMenu->contextMenuItemsPtr = sContextMenuItems_BerryBlenderCrush; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BerryBlenderCrush); - break; - case ITEMMENULOCATION_APPRENTICE: - if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Apprentice; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Apprentice); - } - else - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); - } - break; - case ITEMMENULOCATION_FAVOR_LADY: - if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_FavorLady; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_FavorLady); - } - else + case ITEMMENULOCATION_BATTLE: + case ITEMMENULOCATION_WALLY: + if (ItemId_GetBattleUsage(gSpecialVar_ItemId)) + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_BattleUse; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BattleUse); + } + else + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); + } + break; + case ITEMMENULOCATION_BERRY_BLENDER_CRUSH: + gBagMenu->contextMenuItemsPtr = sContextMenuItems_BerryBlenderCrush; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BerryBlenderCrush); + break; + case ITEMMENULOCATION_APPRENTICE: + if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Apprentice; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Apprentice); + } + else + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); + } + break; + case ITEMMENULOCATION_FAVOR_LADY: + if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_FavorLady; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_FavorLady); + } + else + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); + } + break; + case ITEMMENULOCATION_QUIZ_LADY: + if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_QuizLady; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_QuizLady); + } + else + { + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); + } + break; + case ITEMMENULOCATION_PARTY: + case ITEMMENULOCATION_SHOP: + case ITEMMENULOCATION_BERRY_TREE: + case ITEMMENULOCATION_ITEMPC: + default: + if (MenuHelpers_LinkSomething() == TRUE || InUnionRoom() == TRUE) + { + if (gBagPosition.pocket == KEYITEMS_POCKET || !IsHoldingItemAllowed(gSpecialVar_ItemId)) { gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); } - break; - case ITEMMENULOCATION_QUIZ_LADY: - if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY) - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_QuizLady; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_QuizLady); - } else { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); - } - break; - case ITEMMENULOCATION_PARTY: - case ITEMMENULOCATION_SHOP: - case ITEMMENULOCATION_BERRY_TREE: - case ITEMMENULOCATION_ITEMPC: - default: - if (MenuHelpers_LinkSomething() == TRUE || InUnionRoom() == TRUE) - { - if (gBagPositionStruct.pocket == KEYITEMS_POCKET || !sub_8122148(gSpecialVar_ItemId)) - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Cancel; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Cancel); - } - else - { - gBagMenu->contextMenuItemsPtr = sContextMenuItems_Give; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Give); - } + gBagMenu->contextMenuItemsPtr = sContextMenuItems_Give; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Give); } - else + } + else + { + switch (gBagPosition.pocket) { - switch (gBagPositionStruct.pocket) + case ITEMS_POCKET: + gBagMenu->contextMenuItemsPtr = gBagMenu->contextMenuItemsBuffer; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_ItemsPocket); + memcpy(&gBagMenu->contextMenuItemsBuffer, &sContextMenuItems_ItemsPocket, sizeof(sContextMenuItems_ItemsPocket)); + if (ItemIsMail(gSpecialVar_ItemId) == TRUE) + gBagMenu->contextMenuItemsBuffer[0] = ACTION_CHECK; + break; + case KEYITEMS_POCKET: + gBagMenu->contextMenuItemsPtr = gBagMenu->contextMenuItemsBuffer; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_KeyItemsPocket); + memcpy(&gBagMenu->contextMenuItemsBuffer, &sContextMenuItems_KeyItemsPocket, sizeof(sContextMenuItems_KeyItemsPocket)); + if (gSaveBlock1Ptr->registeredItem == gSpecialVar_ItemId) + gBagMenu->contextMenuItemsBuffer[1] = ACTION_DESELECT; + if (gSpecialVar_ItemId == ITEM_MACH_BIKE || gSpecialVar_ItemId == ITEM_ACRO_BIKE) { - case ITEMS_POCKET: - gBagMenu->contextMenuItemsPtr = gBagMenu->contextMenuItemsBuffer; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_ItemsPocket); - memcpy(&gBagMenu->contextMenuItemsBuffer, &sContextMenuItems_ItemsPocket, sizeof(sContextMenuItems_ItemsPocket)); - if (ItemIsMail(gSpecialVar_ItemId) == TRUE) - gBagMenu->contextMenuItemsBuffer[0] = ITEMMENUACTION_CHECK; - break; - case KEYITEMS_POCKET: - gBagMenu->contextMenuItemsPtr = gBagMenu->contextMenuItemsBuffer; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_KeyItemsPocket); - memcpy(&gBagMenu->contextMenuItemsBuffer, &sContextMenuItems_KeyItemsPocket, sizeof(sContextMenuItems_KeyItemsPocket)); - if (gSaveBlock1Ptr->registeredItem == gSpecialVar_ItemId) - gBagMenu->contextMenuItemsBuffer[1] = ITEMMENUACTION_DESELECT; - if (gSpecialVar_ItemId == ITEM_MACH_BIKE || gSpecialVar_ItemId == ITEM_ACRO_BIKE) - { - if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_MACH_BIKE | PLAYER_AVATAR_FLAG_ACRO_BIKE)) - gBagMenu->contextMenuItemsBuffer[0] = ITEMMENUACTION_WALK; - } - break; - case BALLS_POCKET: - gBagMenu->contextMenuItemsPtr = sContextMenuItems_BallsPocket; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BallsPocket); - break; - case TMHM_POCKET: - gBagMenu->contextMenuItemsPtr = sContextMenuItems_TmHmPocket; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_TmHmPocket); - break; - case BERRIES_POCKET: - gBagMenu->contextMenuItemsPtr = sContextMenuItems_BerriesPocket; - gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BerriesPocket); - break; + if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_MACH_BIKE | PLAYER_AVATAR_FLAG_ACRO_BIKE)) + gBagMenu->contextMenuItemsBuffer[0] = ACTION_WALK; } + break; + case BALLS_POCKET: + gBagMenu->contextMenuItemsPtr = sContextMenuItems_BallsPocket; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BallsPocket); + break; + case TMHM_POCKET: + gBagMenu->contextMenuItemsPtr = sContextMenuItems_TmHmPocket; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_TmHmPocket); + break; + case BERRIES_POCKET: + gBagMenu->contextMenuItemsPtr = sContextMenuItems_BerriesPocket; + gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BerriesPocket); + break; } + } } - if (gBagPositionStruct.pocket == TMHM_POCKET) + if (gBagPosition.pocket == TMHM_POCKET) { - ClearWindowTilemap(1); + ClearWindowTilemap(WIN_DESCRIPTION); PrintTMHMMoveData(gSpecialVar_ItemId); - PutWindowTilemap(3); - PutWindowTilemap(4); + PutWindowTilemap(WIN_TMHM_INFO_ICONS); + PutWindowTilemap(WIN_TMHM_INFO); ScheduleBgCopyTilemapToVram(0); } else { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); } if (gBagMenu->contextMenuNumItems == 1) - sub_81ACAF8(BagMenu_AddWindow(0)); + PrintContextMenuItems(BagMenu_AddWindow(ITEMWIN_1x1)); else if (gBagMenu->contextMenuNumItems == 2) - sub_81ACAF8(BagMenu_AddWindow(1)); + PrintContextMenuItems(BagMenu_AddWindow(ITEMWIN_1x2)); else if (gBagMenu->contextMenuNumItems == 4) - sub_81ACB54(BagMenu_AddWindow(2), 2, 2); + PrintContextMenuItemGrid(BagMenu_AddWindow(ITEMWIN_2x2), 2, 2); else - sub_81ACB54(BagMenu_AddWindow(3), 2, 3); + PrintContextMenuItemGrid(BagMenu_AddWindow(ITEMWIN_2x3), 2, 3); } -void sub_81ACAF8(u8 a) +static void PrintContextMenuItems(u8 windowId) { - AddItemMenuActionTextPrinters(a, 7, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(a, gBagMenu->contextMenuNumItems, 0); + AddItemMenuActionTextPrinters(windowId, 7, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gBagMenu->contextMenuNumItems, 0); } -void sub_81ACB54(u8 a, u8 b, u8 c) +static void PrintContextMenuItemGrid(u8 windowId, u8 columns, u8 rows) { - PrintMenuActionGrid(a, 7, 8, 1, 0x38, b, c, sItemMenuActions, gBagMenu->contextMenuItemsPtr); - InitMenuActionGrid(a, 0x38, b, c, 0); + PrintMenuActionGrid(windowId, 7, 8, 1, 56, columns, rows, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + InitMenuActionGrid(windowId, 56, columns, rows, 0); } -void Task_ItemContext_FieldOrBattle(u8 taskId) +static void Task_ItemContext_Normal(u8 taskId) { OpenContextMenu(taskId); + + // Context menu width is never greater than 2 columns, so if + // there are more than 2 items then there are multiple rows if (gBagMenu->contextMenuNumItems <= 2) - gTasks[taskId].func = Task_HandleInBattleItemMenuInput; + gTasks[taskId].func = Task_ItemContext_SingleRow; else - gTasks[taskId].func = Task_HandleOutOfBattleItemMenuInput; + gTasks[taskId].func = Task_ItemContext_MultipleRows; } -void Task_HandleInBattleItemMenuInput(u8 taskId) +static void Task_ItemContext_SingleRow(u8 taskId) { if (MenuHelpers_CallLinkSomething() != TRUE) { s8 selection = Menu_ProcessInputNoWrap(); switch (selection) { - case MENU_NOTHING_CHOSEN: - break; - case MENU_B_PRESSED: - PlaySE(SE_SELECT); - sItemMenuActions[ITEMMENUACTION_CANCEL].func.void_u8(taskId); - break; - default: - PlaySE(SE_SELECT); - sItemMenuActions[gBagMenu->contextMenuItemsPtr[selection]].func.void_u8(taskId); - break; + case MENU_NOTHING_CHOSEN: + break; + case MENU_B_PRESSED: + PlaySE(SE_SELECT); + sItemMenuActions[ACTION_CANCEL].func.void_u8(taskId); + break; + default: + PlaySE(SE_SELECT); + sItemMenuActions[gBagMenu->contextMenuItemsPtr[selection]].func.void_u8(taskId); + break; } } } -void Task_HandleOutOfBattleItemMenuInput(u8 taskId) +static void Task_ItemContext_MultipleRows(u8 taskId) { if (MenuHelpers_CallLinkSomething() != TRUE) { s8 cursorPos = Menu_GetCursorPos(); if (JOY_NEW(DPAD_UP)) { - if (cursorPos > 0 && sub_81ACDFC(cursorPos - 2)) + if (cursorPos > 0 && IsValidContextMenuPos(cursorPos - 2)) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); @@ -1652,23 +1725,23 @@ void Task_HandleOutOfBattleItemMenuInput(u8 taskId) } else if (JOY_NEW(DPAD_DOWN)) { - if (cursorPos < (gBagMenu->contextMenuNumItems - 2) && sub_81ACDFC(cursorPos + 2)) + if (cursorPos < (gBagMenu->contextMenuNumItems - 2) && IsValidContextMenuPos(cursorPos + 2)) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); } } - else if ((JOY_NEW(DPAD_LEFT)) || GetLRKeysPressed() == MENU_L_PRESSED) + else if (JOY_NEW(DPAD_LEFT) || GetLRKeysPressed() == MENU_L_PRESSED) { - if ((cursorPos & 1) && sub_81ACDFC(cursorPos - 1)) + if ((cursorPos & 1) && IsValidContextMenuPos(cursorPos - 1)) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); } } - else if ((JOY_NEW(DPAD_RIGHT)) || GetLRKeysPressed() == MENU_R_PRESSED) + else if (JOY_NEW(DPAD_RIGHT) || GetLRKeysPressed() == MENU_R_PRESSED) { - if (!(cursorPos & 1) && sub_81ACDFC(cursorPos + 1)) + if (!(cursorPos & 1) && IsValidContextMenuPos(cursorPos + 1)) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); @@ -1682,50 +1755,48 @@ void Task_HandleOutOfBattleItemMenuInput(u8 taskId) else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - sItemMenuActions[ITEMMENUACTION_CANCEL].func.void_u8(taskId); + sItemMenuActions[ACTION_CANCEL].func.void_u8(taskId); } } } -bool8 sub_81ACDFC(s8 a) +static bool8 IsValidContextMenuPos(s8 cursorPos) { - if (a < 0) + if (cursorPos < 0) return FALSE; - if (a > gBagMenu->contextMenuNumItems) + if (cursorPos > gBagMenu->contextMenuNumItems) return FALSE; - if (gBagMenu->contextMenuItemsPtr[a] == 14) + if (gBagMenu->contextMenuItemsPtr[cursorPos] == ACTION_DUMMY) return FALSE; return TRUE; } -void BagMenu_RemoveSomeWindow(void) +static void RemoveContextWindow(void) { if (gBagMenu->contextMenuNumItems == 1) - BagMenu_RemoveWindow(0); + BagMenu_RemoveWindow(ITEMWIN_1x1); else if (gBagMenu->contextMenuNumItems == 2) - { - BagMenu_RemoveWindow(1); - } + BagMenu_RemoveWindow(ITEMWIN_1x2); else if (gBagMenu->contextMenuNumItems == 4) - { - BagMenu_RemoveWindow(2); - } + BagMenu_RemoveWindow(ITEMWIN_2x2); else - BagMenu_RemoveWindow(3); + BagMenu_RemoveWindow(ITEMWIN_2x3); } -void ItemMenu_UseOutOfBattle(u8 taskId) +static void ItemMenu_UseOutOfBattle(u8 taskId) { if (ItemId_GetFieldFunc(gSpecialVar_ItemId)) { - BagMenu_RemoveSomeWindow(); + RemoveContextWindow(); if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gSpecialVar_ItemId) == ITEM_USE_PARTY_MENU) - BagMenu_PrintThereIsNoPokemon(taskId); + { + PrintThereIsNoPokemon(taskId); + } else { - FillWindowPixelBuffer(1, PIXEL_FILL(0)); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); ScheduleBgCopyTilemapToVram(0); - if (gBagPositionStruct.pocket != BERRIES_POCKET) + if (gBagPosition.pocket != BERRIES_POCKET) ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId); else ItemUseOutOfBattle_Berry(taskId); @@ -1733,186 +1804,190 @@ void ItemMenu_UseOutOfBattle(u8 taskId) } } -void ItemMenu_Toss(u8 taskId) +static void ItemMenu_Toss(u8 taskId) { s16* data = gTasks[taskId].data; - BagMenu_RemoveSomeWindow(); + RemoveContextWindow(); tItemCount = 1; - if (data[2] == 1) + if (tQuantity == 1) { - BagMenu_TossItems(taskId); + AskTossItems(taskId); } else { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_TossHowManyVar1s); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - sub_81ABC3C(7); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + AddItemQuantityWindow(ITEMWIN_QUANTITY); gTasks[taskId].func = Task_ChooseHowManyToToss; } } -void BagMenu_TossItems(u8 taskId) +static void AskTossItems(u8 taskId) { s16* data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_ConfirmTossItems); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - BagMenu_YesNo(taskId, 5, &sYesNoTossFunctions); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_YesNo(taskId, ITEMWIN_YESNO_LOW, &sYesNoTossFunctions); } -void BagMenu_CancelToss(u8 taskId) +static void CancelToss(u8 taskId) { s16* data = gTasks[taskId].data; - BagMenu_PrintDescription(data[1]); - BagMenu_PrintCursor_(data[0], 0); - set_callback3_to_bag(taskId); + PrintItemDescription(tListPosition); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); + ReturnToItemList(taskId); } -void Task_ChooseHowManyToToss(u8 taskId) +static void Task_ChooseHowManyToToss(u8 taskId) { s16* data = gTasks[taskId].data; - if (AdjustQuantityAccordingToDPadInput(&tItemCount, data[2]) == TRUE) + if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { - PrintItemDepositAmount(gBagMenu->windowPointers[7], tItemCount); + PrintItemQuantity(gBagMenu->windowIds[ITEMWIN_QUANTITY], tItemCount); } else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_RemoveWindow(7); - BagMenu_TossItems(taskId); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY); + AskTossItems(taskId); } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_RemoveWindow(7); - BagMenu_CancelToss(taskId); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY); + CancelToss(taskId); } } -void BagMenu_ConfirmToss(u8 taskId) +static void ConfirmToss(u8 taskId) { s16* data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_ThrewAwayVar2Var1s); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - gTasks[taskId].func = Task_ActuallyToss; + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + gTasks[taskId].func = Task_RemoveItemFromBag; } -void Task_ActuallyToss(u8 taskId) +// Remove selected item(s) from the bag and update list +// For when items are tossed or deposited +static void Task_RemoveItemFromBag(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; if (JOY_NEW(A_BUTTON | B_BUTTON)) { PlaySE(SE_SELECT); RemoveBagItem(gSpecialVar_ItemId, tItemCount); - DestroyListMenuTask(data[0], scrollPos, cursorPos); - UpdatePocketItemList(gBagPositionStruct.pocket); - SetInitialScrollAndCursorPositions(gBagPositionStruct.pocket); - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + UpdatePocketItemList(gBagPosition.pocket); + UpdatePocketListPosition(gBagPosition.pocket); + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); ScheduleBgCopyTilemapToVram(0); - set_callback3_to_bag(taskId); + ReturnToItemList(taskId); } } -void ItemMenu_Register(u8 taskId) +static void ItemMenu_Register(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; if (gSaveBlock1Ptr->registeredItem == gSpecialVar_ItemId) gSaveBlock1Ptr->registeredItem = 0; else gSaveBlock1Ptr->registeredItem = gSpecialVar_ItemId; - DestroyListMenuTask(data[0], scrollPos, cursorPos); - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); ScheduleBgCopyTilemapToVram(0); ItemMenu_Cancel(taskId); } -void ItemMenu_Give(u8 taskId) +static void ItemMenu_Give(u8 taskId) { - BagMenu_RemoveSomeWindow(); + RemoveContextWindow(); if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { - DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350); + DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); } else if (!ItemId_GetImportance(gSpecialVar_ItemId)) { if (CalculatePlayerPartyCount() == 0) - BagMenu_PrintThereIsNoPokemon(taskId); + { + PrintThereIsNoPokemon(taskId); + } else { - gBagMenu->exitCallback = CB2_ChooseMonToGiveItem; + gBagMenu->newScreenCallback = CB2_ChooseMonToGiveItem; Task_FadeAndCloseBagMenu(taskId); } } else { - BagMenu_PrintItemCantBeHeld(taskId); + PrintItemCantBeHeld(taskId); } } -void BagMenu_PrintThereIsNoPokemon(u8 taskId) +static void PrintThereIsNoPokemon(u8 taskId) { - DisplayItemMessage(taskId, 1, gText_NoPokemon, sub_81AD350); + DisplayItemMessage(taskId, 1, gText_NoPokemon, HandleErrorMessage); } -static void BagMenu_PrintItemCantBeHeld(u8 taskId) +static void PrintItemCantBeHeld(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeld); - DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD350); + DisplayItemMessage(taskId, 1, gStringVar4, HandleErrorMessage); } -void sub_81AD350(u8 taskId) +static void HandleErrorMessage(u8 taskId) { if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_InitListsMenu(taskId); + CloseItemMessage(taskId); } } -void ItemMenu_CheckTag(u8 taskId) +static void ItemMenu_CheckTag(u8 taskId) { - gBagMenu->exitCallback = DoBerryTagScreen; + gBagMenu->newScreenCallback = DoBerryTagScreen; Task_FadeAndCloseBagMenu(taskId); } -void ItemMenu_Cancel(u8 taskId) +static void ItemMenu_Cancel(u8 taskId) { s16* data = gTasks[taskId].data; - BagMenu_RemoveSomeWindow(); - BagMenu_PrintDescription(data[1]); + RemoveContextWindow(); + PrintItemDescription(tListPosition); ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); - BagMenu_PrintCursor_(data[0], 0); - set_callback3_to_bag(taskId); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); + ReturnToItemList(taskId); } -void ItemMenu_UseInBattle(u8 taskId) +static void ItemMenu_UseInBattle(u8 taskId) { if (ItemId_GetBattleFunc(gSpecialVar_ItemId)) { - BagMenu_RemoveSomeWindow(); + RemoveContextWindow(); ItemId_GetBattleFunc(gSpecialVar_ItemId)(taskId); } } @@ -1922,39 +1997,40 @@ void CB2_ReturnToBagMenuPocket(void) GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL); } -void Task_ItemContext_FieldGive(u8 taskId) +static void Task_ItemContext_GiveToParty(u8 taskId) { if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { - DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350); + DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); } - else if (!sub_8122148(gSpecialVar_ItemId)) + else if (!IsHoldingItemAllowed(gSpecialVar_ItemId)) { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeldHere); - DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD350); + DisplayItemMessage(taskId, 1, gStringVar4, HandleErrorMessage); } - else if (gBagPositionStruct.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) + else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) { Task_FadeAndCloseBagMenu(taskId); } else { - BagMenu_PrintItemCantBeHeld(taskId); + PrintItemCantBeHeld(taskId); } } -void Task_ItemContext_ItemPC_2(u8 taskId) +// Selected item to give to a Pokémon in PC storage +static void Task_ItemContext_GiveToPC(u8 taskId) { if (ItemIsMail(gSpecialVar_ItemId) == TRUE) - DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350); - else if (gBagPositionStruct.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) + DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); + else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) gTasks[taskId].func = Task_FadeAndCloseBagMenu; else - BagMenu_PrintItemCantBeHeld(taskId); + PrintItemCantBeHeld(taskId); } -#define tUsingRegisteredKeyItem data[3] +#define tUsingRegisteredKeyItem data[3] // See usage in item_use.c bool8 UseRegisteredKeyItemOnField(void) { @@ -1988,7 +2064,7 @@ bool8 UseRegisteredKeyItemOnField(void) #undef tUsingRegisteredKeyItem -void Task_ItemContext_Sell(u8 taskId) +static void Task_ItemContext_Sell(u8 taskId) { s16* data = gTasks[taskId].data; @@ -1996,12 +2072,12 @@ void Task_ItemContext_Sell(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gText_CantBuyKeyItem); - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); } else { tItemCount = 1; - if (data[2] == 1) + if (tQuantity == 1) { DisplayCurrentMoneyWindow(); DisplaySellItemPriceAndConfirm(taskId); @@ -2010,7 +2086,7 @@ void Task_ItemContext_Sell(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gText_HowManyToSell); - DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD730); + DisplayItemMessage(taskId, 1, gStringVar4, InitSellHowManyInput); } } } @@ -2021,114 +2097,114 @@ static void DisplaySellItemPriceAndConfirm(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_ICanPayVar1); - DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD6E4); + DisplayItemMessage(taskId, 1, gStringVar4, AskSellItems); } -void sub_81AD6E4(u8 taskId) +static void AskSellItems(u8 taskId) { - BagMenu_YesNo(taskId, 6, &sYesNoSellItemFunctions); + BagMenu_YesNo(taskId, ITEMWIN_YESNO_HIGH, &sYesNoSellItemFunctions); } -void BagMenu_CancelSell(u8 taskId) +static void CancelSell(u8 taskId) { s16* data = gTasks[taskId].data; RemoveMoneyWindow(); - BagMenu_RemoveBagItemMessageWindow(4); - BagMenu_PrintCursor_(data[0], 0); - set_callback3_to_bag(taskId); + RemoveItemMessageWindow(ITEMWIN_MESSAGE); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); + ReturnToItemList(taskId); } -void sub_81AD730(u8 taskId) +static void InitSellHowManyInput(u8 taskId) { s16* data = gTasks[taskId].data; - u8 windowId = BagMenu_AddWindow(8); + u8 windowId = BagMenu_AddWindow(ITEMWIN_QUANTITY_WIDE); PrintItemSoldAmount(windowId, 1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount); DisplayCurrentMoneyWindow(); - gTasks[taskId].func = Task_SellHowManyDialogueHandleInput; + gTasks[taskId].func = Task_ChooseHowManyToSell; } -static void Task_SellHowManyDialogueHandleInput(u8 taskId) +static void Task_ChooseHowManyToSell(u8 taskId) { s16* data = gTasks[taskId].data; - if (AdjustQuantityAccordingToDPadInput(&tItemCount, data[2]) == TRUE) + if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { - PrintItemSoldAmount(gBagMenu->windowPointers[8], tItemCount, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount); + PrintItemSoldAmount(gBagMenu->windowIds[ITEMWIN_QUANTITY_WIDE], tItemCount, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount); } else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_RemoveWindow(8); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY_WIDE); DisplaySellItemPriceAndConfirm(taskId); } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_PrintCursor_(data[0], 0); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); RemoveMoneyWindow(); - BagMenu_RemoveWindow(8); - BagMenu_RemoveBagItemMessageWindow(4); - set_callback3_to_bag(taskId); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY_WIDE); + RemoveItemMessageWindow(ITEMWIN_MESSAGE); + ReturnToItemList(taskId); } } -void BagMenu_ConfirmSell(u8 taskId) +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); StringExpandPlaceholders(gStringVar4, gText_TurnedOverVar1ForVar2); - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_Sell_UpdateItemListAndMoney); + DisplayItemMessage(taskId, 1, gStringVar4, SellItem); } -static void BagMenu_Sell_UpdateItemListAndMoney(u8 taskId) +static void SellItem(u8 taskId) { s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket]; - u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]; + u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; PlaySE(SE_SHOP); RemoveBagItem(gSpecialVar_ItemId, tItemCount); AddMoney(&gSaveBlock1Ptr->money, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount); - DestroyListMenuTask(data[0], scrollPos, cursorPos); - UpdatePocketItemList(gBagPositionStruct.pocket); - SetInitialScrollAndCursorPositions(gBagPositionStruct.pocket); - LoadBagItemListBuffers(gBagPositionStruct.pocket); - data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); - BagMenu_PrintCursor_(data[0], 2); - PrintMoneyAmountInMoneyBox(gBagMenu->windowPointers[9], GetMoney(&gSaveBlock1Ptr->money), 0); - gTasks[taskId].func = BagMenu_Sell_WaitForABPress; + DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); + UpdatePocketItemList(gBagPosition.pocket); + UpdatePocketListPosition(gBagPosition.pocket); + LoadBagItemListBuffers(gBagPosition.pocket); + tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos); + BagMenu_PrintCursor(tListTaskId, COLORID_GRAY_CURSOR); + PrintMoneyAmountInMoneyBox(gBagMenu->windowIds[ITEMWIN_MONEY], GetMoney(&gSaveBlock1Ptr->money), 0); + gTasks[taskId].func = WaitAfterItemSell; } -static void BagMenu_Sell_WaitForABPress(u8 taskId) +static void WaitAfterItemSell(u8 taskId) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { PlaySE(SE_SELECT); RemoveMoneyWindow(); - BagMenu_InitListsMenu(taskId); + CloseItemMessage(taskId); } } -void Task_ItemContext_Deposit(u8 taskId) +static void Task_ItemContext_Deposit(u8 taskId) { s16* data = gTasks[taskId].data; tItemCount = 1; - if (data[2] == 1) + if (tQuantity == 1) { - BagMenu_TryDepositItem(taskId); + TryDepositItem(taskId); } else { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_DepositHowManyVar1); - FillWindowPixelBuffer(1, PIXEL_FILL(0)); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - sub_81ABC3C(7); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + AddItemQuantityWindow(ITEMWIN_QUANTITY); gTasks[taskId].func = Task_ChooseHowManyToDeposit; } } @@ -2137,100 +2213,103 @@ static void Task_ChooseHowManyToDeposit(u8 taskId) { s16* data = gTasks[taskId].data; - if (AdjustQuantityAccordingToDPadInput(&tItemCount, data[2]) == TRUE) + if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { - PrintItemDepositAmount(gBagMenu->windowPointers[7], tItemCount); + PrintItemQuantity(gBagMenu->windowIds[ITEMWIN_QUANTITY], tItemCount); } else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_RemoveWindow(7); - BagMenu_TryDepositItem(taskId); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY); + TryDepositItem(taskId); } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_PrintDescription(data[1]); - BagMenu_PrintCursor_(data[0], 0); - BagMenu_RemoveWindow(7); - set_callback3_to_bag(taskId); + PrintItemDescription(tListPosition); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); + BagMenu_RemoveWindow(ITEMWIN_QUANTITY); + ReturnToItemList(taskId); } } -static void BagMenu_TryDepositItem(u8 taskId) +static void TryDepositItem(u8 taskId) { s16* data = gTasks[taskId].data; - FillWindowPixelBuffer(1, PIXEL_FILL(0)); + FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); if (ItemId_GetImportance(gSpecialVar_ItemId)) { - BagMenu_Print(1, 1, gText_CantStoreImportantItems, 3, 1, 0, 0, 0, 0); - gTasks[taskId].func = BagMenu_Deposit_WaitForABPress; + // Can't deposit important items + BagMenu_Print(WIN_DESCRIPTION, 1, gText_CantStoreImportantItems, 3, 1, 0, 0, 0, COLORID_NORMAL); + gTasks[taskId].func = WaitDepositErrorMessage; } else if (AddPCItem(gSpecialVar_ItemId, tItemCount) == TRUE) { + // Successfully deposited CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_DepositedVar2Var1s); - BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0); - gTasks[taskId].func = Task_ActuallyToss; + BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + gTasks[taskId].func = Task_RemoveItemFromBag; } else { - BagMenu_Print(1, 1, gText_NoRoomForItems, 3, 1, 0, 0, 0, 0); - gTasks[taskId].func = BagMenu_Deposit_WaitForABPress; + // No room to deposit + BagMenu_Print(WIN_DESCRIPTION, 1, gText_NoRoomForItems, 3, 1, 0, 0, 0, COLORID_NORMAL); + gTasks[taskId].func = WaitDepositErrorMessage; } } -static void BagMenu_Deposit_WaitForABPress(u8 taskId) +static void WaitDepositErrorMessage(u8 taskId) { s16* data = gTasks[taskId].data; if (JOY_NEW(A_BUTTON | B_BUTTON)) { PlaySE(SE_SELECT); - BagMenu_PrintDescription(data[1]); - BagMenu_PrintCursor_(data[0], 0); - set_callback3_to_bag(taskId); + PrintItemDescription(tListPosition); + BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); + ReturnToItemList(taskId); } } -bool8 IsWallysBag(void) +static bool8 IsWallysBag(void) { - if (gBagPositionStruct.location == 10) + if (gBagPosition.location == ITEMMENULOCATION_WALLY) return TRUE; return FALSE; } -void PrepareBagForWallyTutorial(void) +static void PrepareBagForWallyTutorial(void) { u32 i; - sTempWallyBag = AllocZeroed(sizeof(struct TempWallyStruct)); + sTempWallyBag = AllocZeroed(sizeof(*sTempWallyBag)); memcpy(sTempWallyBag->bagPocket_Items, gSaveBlock1Ptr->bagPocket_Items, sizeof(gSaveBlock1Ptr->bagPocket_Items)); memcpy(sTempWallyBag->bagPocket_PokeBalls, gSaveBlock1Ptr->bagPocket_PokeBalls, sizeof(gSaveBlock1Ptr->bagPocket_PokeBalls)); - sTempWallyBag->pocket = gBagPositionStruct.pocket; - for (i = 0; i <= 4; i++) + sTempWallyBag->pocket = gBagPosition.pocket; + for (i = 0; i < POCKETS_COUNT; i++) { - sTempWallyBag->cursorPosition[i] = gBagPositionStruct.cursorPosition[i]; - sTempWallyBag->scrollPosition[i] = gBagPositionStruct.scrollPosition[i]; + sTempWallyBag->cursorPosition[i] = gBagPosition.cursorPosition[i]; + sTempWallyBag->scrollPosition[i] = gBagPosition.scrollPosition[i]; } ClearItemSlots(gSaveBlock1Ptr->bagPocket_Items, BAG_ITEMS_COUNT); ClearItemSlots(gSaveBlock1Ptr->bagPocket_PokeBalls, BAG_POKEBALLS_COUNT); ResetBagScrollPositions(); } -void RestoreBagAfterWallyTutorial(void) +static void RestoreBagAfterWallyTutorial(void) { u32 i; memcpy(gSaveBlock1Ptr->bagPocket_Items, sTempWallyBag->bagPocket_Items, sizeof(sTempWallyBag->bagPocket_Items)); memcpy(gSaveBlock1Ptr->bagPocket_PokeBalls, sTempWallyBag->bagPocket_PokeBalls, sizeof(sTempWallyBag->bagPocket_PokeBalls)); - gBagPositionStruct.pocket = sTempWallyBag->pocket; - for (i = 0; i <= 4; i++) + gBagPosition.pocket = sTempWallyBag->pocket; + for (i = 0; i < POCKETS_COUNT; i++) { - gBagPositionStruct.cursorPosition[i] = sTempWallyBag->cursorPosition[i]; - gBagPositionStruct.scrollPosition[i] = sTempWallyBag->scrollPosition[i]; + gBagPosition.cursorPosition[i] = sTempWallyBag->cursorPosition[i]; + gBagPosition.scrollPosition[i] = sTempWallyBag->scrollPosition[i]; } Free(sTempWallyBag); } @@ -2243,86 +2322,93 @@ void DoWallyTutorialBagMenu(void) GoToBagMenu(ITEMMENULOCATION_WALLY, ITEMS_POCKET, CB2_SetUpReshowBattleScreenAfterMenu2); } -void Task_WallyTutorialBagMenu(u8 taskId) +#define tTimer data[8] +#define WALLY_BAG_DELAY 102 // The number of frames between each action Wally takes in the bag + +static void Task_WallyTutorialBagMenu(u8 taskId) { s16* data = gTasks[taskId].data; if (!gPaletteFade.active) { - switch (data[8]) + switch (tTimer) { - case 0x66: - PlaySE(SE_SELECT); - SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, 0); - data[8]++; - break; - case 0xCC: - PlaySE(SE_SELECT); - BagMenu_PrintCursor_(data[0], 2); - gSpecialVar_ItemId = ITEM_POKE_BALL; - OpenContextMenu(taskId); - data[8]++; - break; - case 0x132: - PlaySE(SE_SELECT); - BagMenu_RemoveSomeWindow(); - DestroyListMenuTask(data[0], 0, 0); - RestoreBagAfterWallyTutorial(); - Task_FadeAndCloseBagMenu(taskId); - break; - default: - data[8]++; - break; + case WALLY_BAG_DELAY * 1: + PlaySE(SE_SELECT); + SwitchBagPocket(taskId, MENU_CURSOR_DELTA_RIGHT, FALSE); + tTimer++; + break; + case WALLY_BAG_DELAY * 2: + PlaySE(SE_SELECT); + BagMenu_PrintCursor(tListTaskId, COLORID_GRAY_CURSOR); + gSpecialVar_ItemId = ITEM_POKE_BALL; + OpenContextMenu(taskId); + tTimer++; + break; + case WALLY_BAG_DELAY * 3: + PlaySE(SE_SELECT); + RemoveContextWindow(); + DestroyListMenuTask(tListTaskId, 0, 0); + RestoreBagAfterWallyTutorial(); + Task_FadeAndCloseBagMenu(taskId); + break; + default: + tTimer++; + break; } } } -#undef tItemCount +#undef tTimer -void unknown_ItemMenu_Show(u8 taskId) +// This action is used to show the Apprentice an item when +// they ask what item they should make their Pokémon hold +static void ItemMenu_Show(u8 taskId) { gSpecialVar_0x8005 = gSpecialVar_ItemId; - gSpecialVar_Result = 1; - BagMenu_RemoveSomeWindow(); + gSpecialVar_Result = TRUE; + RemoveContextWindow(); Task_FadeAndCloseBagMenu(taskId); } -void CB2_ApprenticeExitBagMenu(void) +static void CB2_ApprenticeExitBagMenu(void) { gFieldCallback = Apprentice_EnableBothScriptContexts; SetMainCallback2(CB2_ReturnToField); } -void unknown_ItemMenu_Give2(u8 taskId) +static void ItemMenu_GiveFavorLady(u8 taskId) { RemoveBagItem(gSpecialVar_ItemId, 1); - gSpecialVar_Result = 1; - BagMenu_RemoveSomeWindow(); + gSpecialVar_Result = TRUE; + RemoveContextWindow(); Task_FadeAndCloseBagMenu(taskId); } -void CB2_FavorLadyExitBagMenu(void) +static void CB2_FavorLadyExitBagMenu(void) { gFieldCallback = FieldCallback_FavorLadyEnableScriptContexts; SetMainCallback2(CB2_ReturnToField); } -void unknown_ItemMenu_Confirm2(u8 taskId) +// This action is used to confirm which item to use as +// a prize for a custom quiz with the Lilycove Quiz Lady +static void ItemMenu_ConfirmQuizLady(u8 taskId) { - gSpecialVar_Result = 1; - BagMenu_RemoveSomeWindow(); + gSpecialVar_Result = TRUE; + RemoveContextWindow(); Task_FadeAndCloseBagMenu(taskId); } -void CB2_QuizLadyExitBagMenu(void) +static void CB2_QuizLadyExitBagMenu(void) { gFieldCallback = FieldCallback_QuizLadyEnableScriptContexts; SetMainCallback2(CB2_ReturnToField); } -void BagMenu_PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) +static void PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) { - struct WindowTemplate window = {0, 0, 0, 0, 0, 0, 0}; + struct WindowTemplate window = {0}; u16 windowId; int offset; @@ -2331,32 +2417,32 @@ void BagMenu_PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) windowId = AddWindow(&window); FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); offset = GetStringCenterAlignXOffset(1, pocketName1, 0x40); - BagMenu_Print(windowId, 1, pocketName1, offset, 1, 0, 0, -1, 1); + BagMenu_Print(windowId, 1, pocketName1, offset, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); if (pocketName2) { offset = GetStringCenterAlignXOffset(1, pocketName2, 0x40); - BagMenu_Print(windowId, 1, pocketName2, offset + 0x40, 1, 0, 0, -1, 1); + BagMenu_Print(windowId, 1, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); } - CpuCopy32((u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, 0x400); + CpuCopy32((u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, sizeof(gBagMenu->pocketNameBuffer)); RemoveWindow(windowId); } -void BagMenu_CopyPocketNameToWindow(u32 a) +static void CopyPocketNameToWindow(u32 a) { - u8 (* r4)[32][32]; - u8* windowAttribute; + u8 (* tileDataBuffer)[32][32]; + u8* windowTileData; int b; if (a > 8) a = 8; - r4 = &gBagMenu->pocketNameBuffer; - windowAttribute = (u8*)GetWindowAttribute(2, WINDOW_TILE_DATA); - CpuCopy32(r4[0][a], windowAttribute, 0x100); + tileDataBuffer = &gBagMenu->pocketNameBuffer; + windowTileData = (u8*)GetWindowAttribute(2, WINDOW_TILE_DATA); + CpuCopy32(tileDataBuffer[0][a], windowTileData, 0x100); // Top half of pocket name b = a + 16; - CpuCopy32(r4[0][b], windowAttribute + 0x100, 0x100); - CopyWindowToVram(2, 2); + CpuCopy32(tileDataBuffer[0][b], windowTileData + 0x100, 0x100); // Bottom half of pocket name + CopyWindowToVram(WIN_POCKET_NAME, 2); } -void SetupBagMenu_Textboxes(void) +static void LoadBagMenuTextWindows(void) { u8 i; @@ -2366,7 +2452,7 @@ void SetupBagMenu_Textboxes(void) LoadMessageBoxGfx(0, 10, 0xD0); ListMenuLoadStdPalAt(0xC0, 1); LoadPalette(&gUnknown_0860F074, 0xF0, 0x20); - for (i = 0; i < 3; i++) + for (i = 0; i <= WIN_POCKET_NAME; i++) { FillWindowPixelBuffer(i, PIXEL_FILL(0)); PutWindowTilemap(i); @@ -2375,109 +2461,111 @@ void SetupBagMenu_Textboxes(void) ScheduleBgCopyTilemapToVram(1); } -void BagMenu_Print(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIndex) +static void BagMenu_Print(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIndex) { AddTextPrinterParameterized4(windowId, fontId, left, top, letterSpacing, lineSpacing, sFontColorTable[colorIndex], speed, str); } -//Unused -u8 sub_81AE124(u8 which) +// Unused +static u8 BagMenu_GetWindowId(u8 windowType) { - return gBagMenu->windowPointers[which]; + return gBagMenu->windowIds[windowType]; } -u8 BagMenu_AddWindow(u8 which) +static u8 BagMenu_AddWindow(u8 windowType) { - u8 *ptr = &gBagMenu->windowPointers[which]; - if (*ptr == WINDOW_NONE) + u8 *windowId = &gBagMenu->windowIds[windowType]; + if (*windowId == WINDOW_NONE) { - *ptr = AddWindow(&sContextMenuWindowTemplates[which]); - DrawStdFrameWithCustomTileAndPalette(*ptr, 0, 1, 14); + *windowId = AddWindow(&sContextMenuWindowTemplates[windowType]); + DrawStdFrameWithCustomTileAndPalette(*windowId, 0, 1, 14); ScheduleBgCopyTilemapToVram(1); } - return *ptr; + return *windowId; } -void BagMenu_RemoveWindow(u8 which) +static void BagMenu_RemoveWindow(u8 windowType) { - u8 *ptr = &gBagMenu->windowPointers[which]; - if (*ptr != WINDOW_NONE) + u8 *windowId = &gBagMenu->windowIds[windowType]; + if (*windowId != WINDOW_NONE) { - ClearStdWindowAndFrameToTransparent(*ptr, FALSE); - ClearWindowTilemap(*ptr); - RemoveWindow(*ptr); + ClearStdWindowAndFrameToTransparent(*windowId, FALSE); + ClearWindowTilemap(*windowId); + RemoveWindow(*windowId); ScheduleBgCopyTilemapToVram(1); - *ptr = WINDOW_NONE; + *windowId = WINDOW_NONE; } } -u8 AddItemMessageWindow(u8 which) +static u8 AddItemMessageWindow(u8 windowType) { - u8 *ptr = &gBagMenu->windowPointers[which]; - if (*ptr == WINDOW_NONE) - *ptr = AddWindow(&sContextMenuWindowTemplates[which]); - return *ptr; + u8 *windowId = &gBagMenu->windowIds[windowType]; + if (*windowId == WINDOW_NONE) + *windowId = AddWindow(&sContextMenuWindowTemplates[windowType]); + return *windowId; } -void BagMenu_RemoveBagItemMessageWindow(u8 which) +static void RemoveItemMessageWindow(u8 windowType) { - u8 *ptr = &gBagMenu->windowPointers[which]; - if (*ptr != WINDOW_NONE) + u8 *windowId = &gBagMenu->windowIds[windowType]; + if (*windowId != WINDOW_NONE) { - ClearDialogWindowAndFrameToTransparent(*ptr, FALSE); + ClearDialogWindowAndFrameToTransparent(*windowId, FALSE); // This ClearWindowTilemap call is redundant, since ClearDialogWindowAndFrameToTransparent already calls it. - ClearWindowTilemap(*ptr); - RemoveWindow(*ptr); + ClearWindowTilemap(*windowId); + RemoveWindow(*windowId); ScheduleBgCopyTilemapToVram(1); - *ptr = WINDOW_NONE; + *windowId = WINDOW_NONE; } } -void BagMenu_YesNo(u8 a, u8 b, const struct YesNoFuncTable *funcTable) +void BagMenu_YesNo(u8 taskId, u8 windowType, const struct YesNoFuncTable *funcTable) { - CreateYesNoMenuWithCallbacks(a, &sContextMenuWindowTemplates[b], 1, 0, 2, 1, 14, funcTable); + CreateYesNoMenuWithCallbacks(taskId, &sContextMenuWindowTemplates[windowType], 1, 0, 2, 1, 14, funcTable); } static void DisplayCurrentMoneyWindow(void) { - u8 windowId = BagMenu_AddWindow(9); + u8 windowId = BagMenu_AddWindow(ITEMWIN_MONEY); PrintMoneyAmountInMoneyBoxWithBorder(windowId, 1, 14, GetMoney(&gSaveBlock1Ptr->money)); AddMoneyLabelObject(19, 11); } static void RemoveMoneyWindow(void) { - BagMenu_RemoveWindow(9); + BagMenu_RemoveWindow(ITEMWIN_MONEY); RemoveMoneyLabelObject(); } -void BagMenu_PrepareTMHMMoveWindow(void) +static void PrepareTMHMMoveWindow(void) { - FillWindowPixelBuffer(3, PIXEL_FILL(0)); - BlitMenuInfoIcon(3, MENU_INFO_ICON_TYPE, 0, 0); - BlitMenuInfoIcon(3, MENU_INFO_ICON_POWER, 0, 12); - BlitMenuInfoIcon(3, MENU_INFO_ICON_ACCURACY, 0, 24); - BlitMenuInfoIcon(3, MENU_INFO_ICON_PP, 0, 36); - CopyWindowToVram(3, 2); + FillWindowPixelBuffer(WIN_TMHM_INFO_ICONS, PIXEL_FILL(0)); + BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_TYPE, 0, 0); + BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_POWER, 0, 12); + BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_ACCURACY, 0, 24); + BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_PP, 0, 36); + CopyWindowToVram(WIN_TMHM_INFO_ICONS, 2); } -void PrintTMHMMoveData(u16 itemId) +static void PrintTMHMMoveData(u16 itemId) { u8 i; u16 moveId; const u8* text; - FillWindowPixelBuffer(4, PIXEL_FILL(0)); + FillWindowPixelBuffer(WIN_TMHM_INFO, PIXEL_FILL(0)); if (itemId == ITEM_NONE) { for (i = 0; i < 4; i++) - BagMenu_Print(4, 1, gText_ThreeDashes, 7, i * 12, 0, 0, -1, 4); - CopyWindowToVram(4, 2); + BagMenu_Print(WIN_TMHM_INFO, 1, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + CopyWindowToVram(WIN_TMHM_INFO, 2); } else { moveId = ItemIdToBattleMoveId(itemId); - BlitMenuInfoIcon(4, gBattleMoves[moveId].type + 1, 0, 0); + BlitMenuInfoIcon(WIN_TMHM_INFO, gBattleMoves[moveId].type + 1, 0, 0); + + // Print TMHM power if (gBattleMoves[moveId].power <= 1) { text = gText_ThreeDashes; @@ -2487,7 +2575,9 @@ void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(4, 1, text, 7, 12, 0, 0, -1, 4); + BagMenu_Print(WIN_TMHM_INFO, 1, text, 7, 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + + // Print TMHM accuracy if (gBattleMoves[moveId].accuracy == 0) { text = gText_ThreeDashes; @@ -2497,9 +2587,12 @@ void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(4, 1, text, 7, 24, 0, 0, -1, 4); + BagMenu_Print(WIN_TMHM_INFO, 1, text, 7, 24, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + + // Print TMHM pp ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, STR_CONV_MODE_RIGHT_ALIGN, 3); - BagMenu_Print(4, 1, gStringVar1, 7, 36, 0, 0, -1, 4); - CopyWindowToVram(4, 2); + BagMenu_Print(WIN_TMHM_INFO, 1, gStringVar1, 7, 36, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + + CopyWindowToVram(WIN_TMHM_INFO, 2); } } diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 5c0849eef399..c8d1cd8d0888 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -11,6 +11,15 @@ #include "window.h" #include "constants/items.h" +enum { + TAG_BAG_GFX = 100, + TAG_ROTATING_BALL_GFX, + TAG_ITEM_ICON, + TAG_ITEM_ICON_ALT, +}; +#define TAG_BERRY_CHECK_CIRCLE_GFX 10000 +#define TAG_BERRY_PIC_PAL 30020 + struct CompressedTilesPal { const u32 *tiles; @@ -128,7 +137,7 @@ const struct CompressedSpritePalette gBagPaletteTable = gBagPalette, TAG_BAG_GFX }; -static const struct SpriteTemplate gBagSpriteTemplate = +static const struct SpriteTemplate sBagSpriteTemplate = { .tileTag = TAG_BAG_GFX, .paletteTag = TAG_BAG_GFX, @@ -189,17 +198,17 @@ static const union AffineAnimCmd *const sRotatingBallAnimCmds_FullRotation[] = sSpriteAffineAnim_RotatingBallRotation2, }; -static const struct SpriteSheet gRotatingBallTable = +static const struct SpriteSheet sRotatingBallTable = { gRotatingBall, 0x80, TAG_ROTATING_BALL_GFX }; -static const struct SpritePalette gRotatingBallPaletteTable = +static const struct SpritePalette sRotatingBallPaletteTable = { gRotatingBall_Pal, TAG_ROTATING_BALL_GFX }; -static const struct SpriteTemplate gRotatingBallSpriteTemplate = +static const struct SpriteTemplate sRotatingBallSpriteTemplate = { .tileTag = TAG_ROTATING_BALL_GFX, .paletteTag = TAG_ROTATING_BALL_GFX, @@ -262,7 +271,7 @@ static const struct SpriteFrameImage sBerryPicSpriteImageTable[] = static const struct SpriteTemplate gBerryPicSpriteTemplate = { - .tileTag = TAG_BERRY_PIC_TILE, + .tileTag = 0xFFFF, .paletteTag = TAG_BERRY_PIC_PAL, .oam = &sBerryPicOamData, .anims = sBerryPicSpriteAnimTable, @@ -301,7 +310,7 @@ static const union AffineAnimCmd *const sBerryPicRotatingAnimCmds[] = static const struct SpriteTemplate gBerryPicRotatingSpriteTemplate = { - .tileTag = TAG_BERRY_PIC_TILE, + .tileTag = 0xFFFF, .paletteTag = TAG_BERRY_PIC_PAL, .oam = &sBerryPicRotatingOamData, .anims = sBerryPicSpriteAnimTable, @@ -409,11 +418,11 @@ static const struct SpriteTemplate gBerryCheckCircleSpriteTemplate = // code void RemoveBagSprite(u8 id) { - u8 *spriteId = &gBagMenu->spriteId[id]; + u8 *spriteId = &gBagMenu->spriteIds[id]; if (*spriteId != SPRITE_NONE) { - FreeSpriteTilesByTag(id + 100); - FreeSpritePaletteByTag(id + 100); + FreeSpriteTilesByTag(id + TAG_BAG_GFX); + FreeSpritePaletteByTag(id + TAG_BAG_GFX); FreeSpriteOamMatrix(&gSprites[*spriteId]); DestroySprite(&gSprites[*spriteId]); *spriteId = SPRITE_NONE; @@ -422,14 +431,14 @@ void RemoveBagSprite(u8 id) void AddBagVisualSprite(u8 bagPocketId) { - u8 *spriteId = &gBagMenu->spriteId[0]; - *spriteId = CreateSprite(&gBagSpriteTemplate, 68, 66, 0); + u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_BAG]; + *spriteId = CreateSprite(&sBagSpriteTemplate, 68, 66, 0); SetBagVisualPocketId(bagPocketId, FALSE); } void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets) { - struct Sprite *sprite = &gSprites[gBagMenu->spriteId[0]]; + struct Sprite *sprite = &gSprites[gBagMenu->spriteIds[ITEMMENUSPRITE_BAG]]; if (isSwitchingPockets) { sprite->y2 = -5; @@ -458,7 +467,7 @@ static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite) void ShakeBagSprite(void) { - struct Sprite *sprite = &gSprites[gBagMenu->spriteId[0]]; + struct Sprite *sprite = &gSprites[gBagMenu->spriteIds[ITEMMENUSPRITE_BAG]]; if (sprite->affineAnimEnded) { StartSpriteAffineAnim(sprite, 1); @@ -477,10 +486,10 @@ static void SpriteCB_ShakeBagSprite(struct Sprite *sprite) void AddSwitchPocketRotatingBallSprite(s16 rotationDirection) { - u8 *spriteId = &gBagMenu->spriteId[1]; - LoadSpriteSheet(&gRotatingBallTable); - LoadSpritePalette(&gRotatingBallPaletteTable); - *spriteId = CreateSprite(&gRotatingBallSpriteTemplate, 16, 16, 0); + u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_BALL]; + LoadSpriteSheet(&sRotatingBallTable); + LoadSpritePalette(&sRotatingBallPaletteTable); + *spriteId = CreateSprite(&sRotatingBallSpriteTemplate, 16, 16, 0); gSprites[*spriteId].data[0] = rotationDirection; } @@ -510,19 +519,20 @@ static void SpriteCB_SwitchPocketRotatingBallContinue(struct Sprite *sprite) sprite->data[3]++; UpdateSwitchPocketRotatingBallCoords(sprite); if (sprite->data[3] == 16) - RemoveBagSprite(1); + RemoveBagSprite(ITEMMENUSPRITE_BALL); } void AddBagItemIconSprite(u16 itemId, u8 id) { - u8 *spriteId = &gBagMenu->spriteId[id + 2]; + u8 *spriteId = &gBagMenu->spriteIds[id + ITEMMENUSPRITE_ITEM]; if (*spriteId == SPRITE_NONE) { u8 iconSpriteId; - FreeSpriteTilesByTag(id + 102); - FreeSpritePaletteByTag(id + 102); - iconSpriteId = AddItemIconSprite(id + 102, id + 102, itemId); + // Either TAG_ITEM_ICON or TAG_ITEM_ICON_ALT + FreeSpriteTilesByTag(id + TAG_ITEM_ICON); + FreeSpritePaletteByTag(id + TAG_ITEM_ICON); + iconSpriteId = AddItemIconSprite(id + TAG_ITEM_ICON, id + TAG_ITEM_ICON, itemId); if (iconSpriteId != MAX_SPRITES) { *spriteId = iconSpriteId; @@ -534,22 +544,22 @@ void AddBagItemIconSprite(u16 itemId, u8 id) void RemoveBagItemIconSprite(u8 id) { - RemoveBagSprite(id + 2); + RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); } void CreateItemMenuSwapLine(void) { - CreateSwapLineSprites(&gBagMenu->spriteId[4], 8); + CreateSwapLineSprites(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH); } void SetItemMenuSwapLineInvisibility(bool8 invisible) { - SetSwapLineSpritesInvisibility(&gBagMenu->spriteId[4], 8, invisible); + SetSwapLineSpritesInvisibility(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH, invisible); } void UpdateItemMenuSwapLinePos(u8 y) { - UpdateSwapLineSpritesPos(&gBagMenu->spriteId[4], 136, 120, (y + 1) * 16); + UpdateSwapLineSpritesPos(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH | 0x80, 120, (y + 1) * 16); } static void sub_80D5018(void *mem0, void *mem1) diff --git a/src/item_use.c b/src/item_use.c index c9087e929051..4b4c6e1b9ddb 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -91,7 +91,7 @@ static const u8 sClockwiseDirections[] = {DIR_NORTH, DIR_EAST, DIR_SOUTH, DIR_WE static const struct YesNoFuncTable sUseTMHMYesNoFuncTable = { .yesFunc = UseTMHM, - .noFunc = BagMenu_InitListsMenu, + .noFunc = CloseItemMessage, }; #define tEnigmaBerryType data[4] @@ -104,12 +104,12 @@ static void SetUpItemUseCallback(u8 taskId) type = ItemId_GetType(gSpecialVar_ItemId) - 1; if (!InBattlePyramid()) { - gBagMenu->exitCallback = sItemUseCallbacks[type]; + gBagMenu->newScreenCallback = sItemUseCallbacks[type]; Task_FadeAndCloseBagMenu(taskId); } else { - gPyramidBagMenu->exitCallback = sItemUseCallbacks[type]; + gPyramidBagMenu->newScreenCallback = sItemUseCallbacks[type]; CloseBattlePyramidBag(taskId); } } @@ -143,7 +143,7 @@ static void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyIte if (!isUsingRegisteredKeyItemOnField) { if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage); } @@ -189,7 +189,7 @@ static void CB2_CheckMail(void) void ItemUseOutOfBattle_Mail(u8 taskId) { - gBagMenu->exitCallback = CB2_CheckMail; + gBagMenu->newScreenCallback = CB2_CheckMail; Task_FadeAndCloseBagMenu(taskId); } @@ -614,7 +614,7 @@ void ItemUseOutOfBattle_PokeblockCase(u8 taskId) } else if (gTasks[taskId].tUsingRegisteredKeyItem != TRUE) { - gBagMenu->exitCallback = CB2_OpenPokeblockFromBag; + gBagMenu->newScreenCallback = CB2_OpenPokeblockFromBag; Task_FadeAndCloseBagMenu(taskId); } else @@ -647,7 +647,7 @@ void ItemUseOutOfBattle_CoinCase(u8 taskId) if (!gTasks[taskId].tUsingRegisteredKeyItem) { - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); } else { @@ -662,7 +662,7 @@ void ItemUseOutOfBattle_PowderJar(u8 taskId) if (!gTasks[taskId].tUsingRegisteredKeyItem) { - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); } else { @@ -676,7 +676,7 @@ void ItemUseOutOfBattle_Berry(u8 taskId) { sItemUseOnFieldCB = ItemUseOnFieldCB_Berry; gFieldCallback = FieldCB_UseItemOnField; - gBagMenu->exitCallback = CB2_ReturnToField; + gBagMenu->newScreenCallback = CB2_ReturnToField; Task_FadeAndCloseBagMenu(taskId); } else @@ -801,7 +801,7 @@ static void Task_ShowTMHMContainedMessage(u8 taskId) static void UseTMHMYesNo(u8 taskId) { - BagMenu_YesNo(taskId, 6, &sUseTMHMYesNoFuncTable); + BagMenu_YesNo(taskId, ITEMWIN_YESNO_HIGH, &sUseTMHMYesNoFuncTable); } static void UseTMHM(u8 taskId) @@ -818,7 +818,7 @@ static void RemoveUsedItem(void) if (!InBattlePyramid()) { UpdatePocketItemList(ItemId_GetPocket(gSpecialVar_ItemId)); - SetInitialScrollAndCursorPositions(ItemId_GetPocket(gSpecialVar_ItemId)); + UpdatePocketListPosition(ItemId_GetPocket(gSpecialVar_ItemId)); } else { @@ -832,7 +832,7 @@ void ItemUseOutOfBattle_Repel(u8 taskId) if (VarGet(VAR_REPEL_STEP_COUNT) == 0) gTasks[taskId].func = Task_StartUseRepel; else if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gText_RepelEffectsLingered, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gText_RepelEffectsLingered, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_RepelEffectsLingered, Task_CloseBattlePyramidBagMessage); } @@ -856,7 +856,7 @@ static void Task_UseRepel(u8 taskId) VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId)); RemoveUsedItem(); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage); } @@ -868,7 +868,7 @@ static void Task_UsedBlackWhiteFlute(u8 taskId) { PlaySE(SE_GLASS_FLUTE); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage); } @@ -947,7 +947,7 @@ void ItemUseInBattle_PokeBall(u8 taskId) } else if (!InBattlePyramid()) { - DisplayItemMessage(taskId, 1, gText_BoxFull, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gText_BoxFull, CloseItemMessage); } else DisplayItemMessageInBattlePyramid(taskId, gText_BoxFull, Task_CloseBattlePyramidBagMessage); @@ -985,7 +985,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId) if (ExecuteTableBasedItemEffect(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE) { if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gText_WontHaveEffect, BagMenu_InitListsMenu); + DisplayItemMessage(taskId, 1, gText_WontHaveEffect, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_WontHaveEffect, Task_CloseBattlePyramidBagMessage); } @@ -1000,12 +1000,12 @@ static void ItemUseInBattle_ShowPartyMenu(u8 taskId) { if (!InBattlePyramid()) { - gBagMenu->exitCallback = ChooseMonForInBattleItem; + gBagMenu->newScreenCallback = ChooseMonForInBattleItem; Task_FadeAndCloseBagMenu(taskId); } else { - gPyramidBagMenu->exitCallback = ChooseMonForInBattleItem; + gPyramidBagMenu->newScreenCallback = ChooseMonForInBattleItem; CloseBattlePyramidBag(taskId); } } diff --git a/src/menu.c b/src/menu.c index 90e7d8c75ea4..d289bb93268e 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1097,32 +1097,32 @@ s8 Menu_ProcessInputNoWrapAround_other(void) return MENU_NOTHING_CHOSEN; } -void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs) +void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) { u8 i; for (i = 0; i < itemCount; i++) { - AddTextPrinterParameterized(windowId, fontId, strs[i].text, left, (lineHeight * i) + top, 0xFF, NULL); + AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL); } CopyWindowToVram(windowId, 2); } -void sub_81987BC(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, u8 a6, u8 a7) +void sub_81987BC(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, u8 a6, u8 a7) { u8 i; for (i = 0; i < itemCount; i++) { - AddTextPrinterParameterized5(windowId, fontId, strs[i].text, left, (lineHeight * i) + top, 0xFF, NULL, a6, a7); + AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL, a6, a7); } CopyWindowToVram(windowId, 2); } -void sub_8198854(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *strs) +void sub_8198854(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) { - PrintTextArray(windowId, fontId, GetFontAttribute(fontId, 0), 1, lineHeight, itemCount, strs); + PrintTextArray(windowId, fontId, GetFontAttribute(fontId, 0), 1, lineHeight, itemCount, menuActions); } -void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8) +void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; struct TextPrinterTemplate printer; @@ -1140,7 +1140,7 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l for (i = 0; i < itemCount; i++) { - printer.currentChar = strs[a8[i]].text; + printer.currentChar = menuActions[actionIds[i]].text; printer.y = (lineHeight * i) + top; printer.currentY = printer.y; AddTextPrinter(&printer, 0xFF, NULL); @@ -1149,9 +1149,9 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l CopyWindowToVram(windowId, 2); } -void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a5) +void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { - AddItemMenuActionTextPrinters(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, GetFontAttribute(fontId, FONTATTR_LETTER_SPACING), lineHeight, itemCount, strs, a5); + AddItemMenuActionTextPrinters(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, GetFontAttribute(fontId, FONTATTR_LETTER_SPACING), lineHeight, itemCount, menuActions, actionIds); } void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock) @@ -1224,7 +1224,7 @@ void sub_8198C78(void) RemoveWindow(sYesNoWindowId); } -void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *strs) +void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *menuActions) { u8 i; u8 j; @@ -1232,18 +1232,18 @@ void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u { for (j = 0; j < a6; j++) { - AddTextPrinterParameterized(windowId, fontId, strs[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, 0xFF, NULL); + AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, 0xFF, NULL); } } CopyWindowToVram(windowId, 2); } -void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *strs) +void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) { - sub_8198C94(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a3, a4, a5, strs); + sub_8198C94(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a3, a4, a5, menuActions); } -void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *strs, const u8 *strIds) +void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; u8 j; @@ -1262,7 +1262,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth { for (j = 0; j < horizontalCount; j++) { - printer.currentChar = strs[strIds[(horizontalCount * i) + j]].text; + printer.currentChar = menuActions[actionIds[(horizontalCount * i) + j]].text; printer.x = (optionWidth * j) + left; printer.y = (GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT) * i) + top; printer.currentX = printer.x; @@ -1275,9 +1275,9 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth } // Unused -static void PrintMenuActionGrid_TopLeft(u8 windowId, u8 fontId, u8 optionWidth, u8 unused, u8 horizontalCount, u8 verticalCount, const struct MenuAction *strs, const u8 *strIds) +static void PrintMenuActionGrid_TopLeft(u8 windowId, u8 fontId, u8 optionWidth, u8 unused, u8 horizontalCount, u8 verticalCount, const struct MenuAction *menuActions, const u8 *actionIds) { - PrintMenuActionGrid(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, optionWidth, horizontalCount, verticalCount, strs, strIds); + PrintMenuActionGrid(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, optionWidth, horizontalCount, verticalCount, menuActions, actionIds); } u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight, u8 a6, u8 a7, u8 numChoices, u8 a9) @@ -1597,19 +1597,19 @@ u8 InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 windowId, u8 itemCount, u8 return InitMenuInUpperLeftCorner(windowId, itemCount, initialCursorPos, FALSE); } -void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *strs) +void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActions) { u32 i; for (i = 0; i < itemCount; i++) { - AddTextPrinterParameterized(windowId, 1, strs[i].text, 8, (i * 16) + 1, 0xFF, NULL); + AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, 0xFF, NULL); } CopyWindowToVram(windowId, 2); } -void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *strs, const u8 *a8) +void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; struct TextPrinterTemplate printer; @@ -1627,7 +1627,7 @@ void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *strs, const for (i = 0; i < itemCount; i++) { - printer.currentChar = strs[a8[i]].text; + printer.currentChar = menuActions[actionIds[i]].text; printer.y = (i * 16) + 1; printer.currentY = (i * 16) + 1; AddTextPrinter(&printer, 0xFF, NULL); @@ -1661,19 +1661,19 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sYesNoWindowId, 2, initialCursorPos); } -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) { u32 i, j; for (i = 0; i < rows; i++) { for (j = 0; j < columns; j++) - AddTextPrinterParameterized(windowId, 1, strs[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, 0xFF, NULL); + AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, 0xFF, NULL); } CopyWindowToVram(windowId, 2); } -void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8) +void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; u8 j; @@ -1692,7 +1692,7 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M { for (j = 0; j < itemCount; j++) { - printer.currentChar = strs[a8[(itemCount * i) + j]].text; + printer.currentChar = menuActions[actionIds[(itemCount * i) + j]].text; printer.x = (a4 * j) + 8; printer.y = (16 * i) + 1; printer.currentX = printer.x; diff --git a/src/menu_helpers.c b/src/menu_helpers.c index dce00e51e3f4..1a257ae8f64f 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -23,10 +23,10 @@ static void Task_ContinueTaskAfterMessagePrints(u8 taskId); static void Task_CallYesOrNoCallback(u8 taskId); -EWRAM_DATA static struct YesNoFuncTable gUnknown_0203A138 = {0}; -EWRAM_DATA static u8 gUnknown_0203A140 = 0; +EWRAM_DATA static struct YesNoFuncTable sYesNo = {0}; +EWRAM_DATA static u8 sMessageWindowId = 0; -static TaskFunc gUnknown_0300117C; +static TaskFunc sMessageNextTask; static const struct OamData sOamData_SwapLine = { @@ -122,17 +122,17 @@ void SetVBlankHBlankCallbacksToNull(void) SetHBlankCallback(NULL); } -void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc) +void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 tileNum, u8 paletteNum, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc) { - gUnknown_0203A140 = windowId; - DrawDialogFrameWithCustomTileAndPalette(windowId, TRUE, arg2, arg3); + sMessageWindowId = windowId; + DrawDialogFrameWithCustomTileAndPalette(windowId, TRUE, tileNum, paletteNum); if (string != gStringVar4) StringExpandPlaceholders(gStringVar4, string); gTextFlags.canABSpeedUpPrint = 1; AddTextPrinterParameterized2(windowId, fontId, gStringVar4, textSpeed, NULL, 2, 1, 3); - gUnknown_0300117C = taskFunc; + sMessageNextTask = taskFunc; gTasks[taskId].func = Task_ContinueTaskAfterMessagePrints; } @@ -144,20 +144,20 @@ bool16 RunTextPrintersRetIsActive(u8 textPrinterId) static void Task_ContinueTaskAfterMessagePrints(u8 taskId) { - if (!RunTextPrintersRetIsActive(gUnknown_0203A140)) - gUnknown_0300117C(taskId); + if (!RunTextPrintersRetIsActive(sMessageWindowId)) + sMessageNextTask(taskId); } void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data) { - gUnknown_0203A138 = *data; + sYesNo = *data; gTasks[taskId].func = Task_CallYesOrNoCallback; } void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo) { CreateYesNoMenu(template, tileStart, palette, 0); - gUnknown_0203A138 = *yesNo; + sYesNo = *yesNo; gTasks[taskId].func = Task_CallYesOrNoCallback; } @@ -167,12 +167,12 @@ static void Task_CallYesOrNoCallback(u8 taskId) { case 0: PlaySE(SE_SELECT); - gUnknown_0203A138.yesFunc(taskId); + sYesNo.yesFunc(taskId); break; case 1: case MENU_B_PRESSED: PlaySE(SE_SELECT); - gUnknown_0203A138.noFunc(taskId); + sYesNo.noFunc(taskId); break; } } @@ -275,11 +275,13 @@ u8 GetLRKeysPressedAndHeld(void) return 0; } -bool8 sub_8122148(u16 itemId) +bool8 IsHoldingItemAllowed(u16 itemId) { + // Enigma Berry can't be held in link areas if (itemId != ITEM_ENIGMA_BERRY) return TRUE; - else if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER)) + else if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER)) return FALSE; else if (InUnionRoom() != TRUE) return TRUE; @@ -356,33 +358,37 @@ void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItem } } -void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4) +void SetCursorScrollWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 shownItems, u8 totalItems, u8 maxShownItems) { u8 i; - if (arg4 % 2 != 0) + if (maxShownItems % 2 != 0) { - if ((*arg1) >= arg4 / 2) + // Is cursor at least halfway down visible list + if (*cursorPos >= maxShownItems / 2) { - for (i = 0; i < (*arg1) - (arg4 / 2); i++) + for (i = 0; i < *cursorPos - (maxShownItems / 2); i++) { - if ((*arg0) + arg2 == arg3) + // Stop if reached end of list + if (*scrollOffset + shownItems == totalItems) break; - (*arg1)--; - (*arg0)++; + (*cursorPos)--; + (*scrollOffset)++; } } } else { - if ((*arg1) >= (arg4 / 2) + 1) + // Is cursor at least halfway down visible list + if (*cursorPos >= (maxShownItems / 2) + 1) { - for (i = 0; i <= (*arg1) - (arg4 / 2); i++) + for (i = 0; i <= *cursorPos - (maxShownItems / 2); i++) { - if ((*arg0) + arg2 == arg3) + // Stop if reached end of list + if (*scrollOffset + shownItems == totalItems) break; - (*arg1)--; - (*arg0)++; + (*cursorPos)--; + (*scrollOffset)++; } } } diff --git a/src/party_menu.c b/src/party_menu.c index f77703328c39..757f72d53fd7 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -4203,7 +4203,7 @@ static void CB2_ReturnToBagMenu(void) if (InBattlePyramid() == FALSE) GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL); else - GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.callback); + GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback); } static void Task_SetSacredAshCB(u8 taskId) diff --git a/src/strings.c b/src/strings.c index 4987e32d2f1a..e1a6d2efbc05 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1,6 +1,7 @@ #include "global.h" #include "strings.h" #include "battle_pyramid_bag.h" +#include "item_menu.h" ALIGNED(4) const u8 gText_ExpandedPlaceholder_Empty[] = _(""); @@ -255,18 +256,18 @@ const u8 gText_ThePC[] = _("the PC"); const u8 *const gBagMenu_ReturnToStrings[] = { - gText_TheField, - gText_TheBattle, - gText_ThePokemonList, - gText_TheShop, - gText_TheField, - gText_TheField, - gText_ThePC, - gText_TheField, - gText_TheField, - gText_TheField, - gText_TheBattle, - gText_ThePC + [ITEMMENULOCATION_FIELD] = gText_TheField, + [ITEMMENULOCATION_BATTLE] = gText_TheBattle, + [ITEMMENULOCATION_PARTY] = gText_ThePokemonList, + [ITEMMENULOCATION_SHOP] = gText_TheShop, + [ITEMMENULOCATION_BERRY_TREE] = gText_TheField, + [ITEMMENULOCATION_BERRY_BLENDER_CRUSH] = gText_TheField, + [ITEMMENULOCATION_ITEMPC] = gText_ThePC, + [ITEMMENULOCATION_FAVOR_LADY] = gText_TheField, + [ITEMMENULOCATION_QUIZ_LADY] = gText_TheField, + [ITEMMENULOCATION_APPRENTICE] = gText_TheField, + [ITEMMENULOCATION_WALLY] = gText_TheBattle, + [ITEMMENULOCATION_PCBOX] = gText_ThePC }; const u8 *const gPyramidBagMenu_ReturnToStrings[] = @@ -286,15 +287,15 @@ const u8 gText_KeyItemsPocket[] = _("KEY ITEMS"); const u8 *const gPocketNamesStringsTable[] = { - gText_ItemsPocket, - gText_PokeBallsPocket, - gText_TMHMPocket, - gText_BerriesPocket, - gText_KeyItemsPocket + [ITEMS_POCKET] = gText_ItemsPocket, + [BALLS_POCKET] = gText_PokeBallsPocket, + [TMHM_POCKET] = gText_TMHMPocket, + [BERRIES_POCKET] = gText_BerriesPocket, + [KEYITEMS_POCKET] = gText_KeyItemsPocket }; -const u8 gText_NumberVar1Clear7Var2[] = _("{NO}{STR_VAR_1}{CLEAR 0x07}{STR_VAR_2}"); -const u8 gText_ClearTo11Var1Clear5Var2[] = _("{CLEAR_TO 0x11}{STR_VAR_1}{CLEAR 0x05}{STR_VAR_2}"); +const u8 gText_NumberItem_TMBerry[] = _("{NO}{STR_VAR_1}{CLEAR 0x07}{STR_VAR_2}"); +const u8 gText_NumberItem_HM[] = _("{CLEAR_TO 0x11}{STR_VAR_1}{CLEAR 0x05}{STR_VAR_2}"); const u8 gText_SizeSlash[] = _("SIZE /"); const u8 gText_FirmSlash[] = _("FIRM /"); const u8 gText_Var1DotVar2[] = _("{STR_VAR_1}.{STR_VAR_2}”"); From d951d7c36354abe5518d07c57bda43efe645bc02 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 11 Aug 2021 09:31:20 -0400 Subject: [PATCH 255/762] Use tag constants in region_map.c --- src/region_map.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/src/region_map.c b/src/region_map.c index 1a25d140caa9..4e547b5fb354 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -48,6 +48,12 @@ #define FLYDESTICON_RED_OUTLINE 6 +enum { + TAG_CURSOR, + TAG_PLAYER_ICON, + TAG_FLY_ICON, +}; + // Static type declarations struct MultiNameFlyDest @@ -237,13 +243,13 @@ static const union AnimCmd *const sRegionMapCursorAnimTable[] = static const struct SpritePalette sRegionMapCursorSpritePalette = { .data = sRegionMapCursorPal, - .tag = 0 + .tag = TAG_CURSOR }; static const struct SpriteTemplate sRegionMapCursorSpriteTemplate = { - .tileTag = 0, - .paletteTag = 0, + .tileTag = TAG_CURSOR, + .paletteTag = TAG_CURSOR, .oam = &sRegionMapCursorOam, .anims = sRegionMapCursorAnimTable, .images = NULL, @@ -419,7 +425,7 @@ static const struct WindowTemplate sFlyMapWindowTemplates[] = static const struct SpritePalette sFlyTargetIconsSpritePalette = { .data = sFlyTargetIcons_Pal, - .tag = 2 + .tag = TAG_FLY_ICON }; static const u16 sRedOutlineFlyDestinations[][2] = @@ -497,8 +503,8 @@ static const union AnimCmd *const sFlyDestIcon_Anims[] = static const struct SpriteTemplate sFlyDestIconSpriteTemplate = { - .tileTag = 2, - .paletteTag = 2, + .tileTag = TAG_FLY_ICON, + .paletteTag = TAG_FLY_ICON, .oam = &sFlyDestIcon_OamData, .anims = sFlyDestIcon_Anims, .images = NULL, @@ -1692,8 +1698,8 @@ void CB2_OpenFlyMap(void) break; case 4: InitRegionMap(&sFlyMap->regionMap, FALSE); - CreateRegionMapCursor(0, 0); - CreateRegionMapPlayerIcon(1, 1); + CreateRegionMapCursor(TAG_CURSOR, TAG_CURSOR); + CreateRegionMapPlayerIcon(TAG_PLAYER_ICON, TAG_PLAYER_ICON); sFlyMap->mapSecId = sFlyMap->regionMap.mapSecId; StringFill(sFlyMap->nameBuffer, CHAR_SPACE, MAP_NAME_LENGTH); sDrawFlyDestTextWindow = TRUE; @@ -1827,7 +1833,7 @@ static void LoadFlyDestIcons(void) LZ77UnCompWram(sFlyTargetIcons_Gfx, sFlyMap->tileBuffer); sheet.data = sFlyMap->tileBuffer; sheet.size = sizeof(sFlyMap->tileBuffer); - sheet.tag = 2; + sheet.tag = TAG_FLY_ICON; LoadSpriteSheet(&sheet); LoadSpritePalette(&sFlyTargetIconsSpritePalette); CreateFlyDestIcons(); From 5098fbf7bbd107a58106dac1426cf960dc58a1a0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 11 Aug 2021 17:09:03 -0400 Subject: [PATCH 256/762] Fix symbols branch commit message, limit to upstream --- .github/workflows/build.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5b904ae9f354..f7ef4f3891c0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,6 +19,7 @@ jobs: uses: actions/checkout@master - name: Checkout syms + if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} uses: actions/checkout@master with: path: symbols @@ -52,7 +53,7 @@ jobs: run: make -j${nproc} all - name: Webhook - if: ${{ github.event_name == 'push' }} + if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} env: CALCROM_DISCORD_WEBHOOK_USERNAME: OK CALCROM_DISCORD_WEBHOOK_AVATAR_URL: https://i.imgur.com/38BQHdd.png @@ -60,16 +61,16 @@ jobs: run: sh .github/calcrom/webhook.sh pokeemerald - name: Move symfiles - if: ${{ github.event_name == 'push' }} + if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} run: | cp -v *.sym symbols/ - export GITHUB_COMMIT_MSG="$( git log --format=%s ${GITHUB_SHA} )" + echo "SYMBOLS_COMMIT_MSG=$( git log --format=%s ${GITHUB_SHA} )" >> $GITHUB_ENV - name: Update symfiles - if: ${{ github.event_name == 'push' }} + if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} uses: EndBug/add-and-commit@v7 with: branch: symbols cwd: "./symbols" add: "*.sym" - message: $GITHUB_COMMIT_MSG + message: ${{ env.SYMBOLS_COMMIT_MSG }} From 1860b7682fbea2d6aa0b0b8355b29c208289c33a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 11 Aug 2021 17:19:21 -0400 Subject: [PATCH 257/762] Allow symbols branch on forks --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f7ef4f3891c0..1dfb5763e0c5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,7 +19,7 @@ jobs: uses: actions/checkout@master - name: Checkout syms - if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} + if: ${{ github.event_name == 'push' }} uses: actions/checkout@master with: path: symbols @@ -61,13 +61,13 @@ jobs: run: sh .github/calcrom/webhook.sh pokeemerald - name: Move symfiles - if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} + if: ${{ github.event_name == 'push' }} run: | cp -v *.sym symbols/ echo "SYMBOLS_COMMIT_MSG=$( git log --format=%s ${GITHUB_SHA} )" >> $GITHUB_ENV - name: Update symfiles - if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} + if: ${{ github.event_name == 'push' }} uses: EndBug/add-and-commit@v7 with: branch: symbols From 034b7f051338a45823a239ee2628ae58f9c96eb2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 11 Aug 2021 19:14:50 -0400 Subject: [PATCH 258/762] Fix conflicting PC window names --- src/player_pc.c | 60 ++++++++++++++++++++++++------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/src/player_pc.c b/src/player_pc.c index 228c3ae1058b..301b8c36206d 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -55,16 +55,16 @@ enum { // Windows for item storage (while viewing the PC's item inventory) enum { - ITEMWIN_LIST, - ITEMWIN_MESSAGE, - ITEMWIN_ICON, - ITEMWIN_TITLE, - ITEMWIN_QUANTITY, - ITEMWIN_YESNO, - ITEMWIN_COUNT + ITEMPC_WIN_LIST, + ITEMPC_WIN_MESSAGE, + ITEMPC_WIN_ICON, + ITEMPC_WIN_TITLE, + ITEMPC_WIN_QUANTITY, + ITEMPC_WIN_YESNO, + ITEMPC_WIN_COUNT }; // When showing the main list, the first window to this window are drawn -#define ITEMWIN_LIST_END ITEMWIN_TITLE +#define ITEMPC_WIN_LIST_END ITEMPC_WIN_TITLE // Message IDs for Item Storage enum { @@ -91,7 +91,7 @@ struct ItemStorageMenu { struct ListMenuItem listItems[PC_ITEMS_COUNT + 1]; u8 itemNames[PC_ITEMS_COUNT + 1][ITEM_NAME_LENGTH + 10]; - u8 windowIds[ITEMWIN_COUNT]; + u8 windowIds[ITEMPC_WIN_COUNT]; u8 toSwapPos; u8 spriteId; u8 swapLineSpriteIds[SWAP_LINE_LENGTH]; @@ -294,9 +294,9 @@ static const struct ListMenuTemplate sListMenuTemplate_ItemStorage = .fontId = 7 }; -static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = +static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMPC_WIN_COUNT] = { - [ITEMWIN_LIST] = { + [ITEMPC_WIN_LIST] = { .bg = 0, .tilemapLeft = 16, .tilemapTop = 1, @@ -305,7 +305,7 @@ static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = .paletteNum = 15, .baseBlock = 0x0001 }, - [ITEMWIN_MESSAGE] = { + [ITEMPC_WIN_MESSAGE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 13, @@ -314,7 +314,7 @@ static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = .paletteNum = 15, .baseBlock = 0x00EB }, - [ITEMWIN_ICON] = { + [ITEMPC_WIN_ICON] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 8, @@ -323,7 +323,7 @@ static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = .paletteNum = 15, .baseBlock = 0x0153 }, - [ITEMWIN_TITLE] = { + [ITEMPC_WIN_TITLE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -332,7 +332,7 @@ static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = .paletteNum = 15, .baseBlock = 0x0139 }, - [ITEMWIN_QUANTITY] = { + [ITEMPC_WIN_QUANTITY] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 9, @@ -341,7 +341,7 @@ static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMWIN_COUNT] = .paletteNum = 15, .baseBlock = 0x015C }, - [ITEMWIN_YESNO] = { + [ITEMPC_WIN_YESNO] = { .bg = 0, .tilemapLeft = 9, .tilemapTop = 7, @@ -937,7 +937,7 @@ static void Mailbox_Cancel(u8 taskId) static void ItemStorage_Init(void) { sItemStorageMenu = AllocZeroed(sizeof(*sItemStorageMenu)); - memset(sItemStorageMenu->windowIds, WINDOW_NONE, ITEMWIN_COUNT); + memset(sItemStorageMenu->windowIds, WINDOW_NONE, ITEMPC_WIN_COUNT); sItemStorageMenu->toSwapPos = NOT_SWAPPING; sItemStorageMenu->spriteId = SPRITE_NONE; } @@ -945,7 +945,7 @@ static void ItemStorage_Init(void) static void ItemStorage_Free(void) { u32 i; - for (i = 0; i < ITEMWIN_COUNT; i++) + for (i = 0; i < ITEMPC_WIN_COUNT; i++) ItemStorage_RemoveWindow(i); Free(sItemStorageMenu); } @@ -994,7 +994,7 @@ void ItemStorage_RefreshListMenu(void) // Set list menu data gMultiuseListMenuTemplate = sListMenuTemplate_ItemStorage; - gMultiuseListMenuTemplate.windowId = ItemStorage_AddWindow(ITEMWIN_LIST); + gMultiuseListMenuTemplate.windowId = ItemStorage_AddWindow(ITEMPC_WIN_LIST); gMultiuseListMenuTemplate.totalItems = gPlayerPCItemPageInfo.count; gMultiuseListMenuTemplate.items = sItemStorageMenu->listItems; gMultiuseListMenuTemplate.maxShowed = gPlayerPCItemPageInfo.pageItems; @@ -1040,7 +1040,7 @@ static void ItemStorage_PrintMenuItem(u8 windowId, u32 id, u8 yOffset) static void ItemStorage_PrintDescription(s32 id) { const u8* description; - u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_MESSAGE]; + u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_MESSAGE]; // Get item description (or Cancel text) if (id != LIST_CANCEL) @@ -1078,7 +1078,7 @@ static void ItemStorage_SetSwapArrow(u8 listTaskId, u8 b, u8 speed) static void ItemStorage_DrawSwapArrow(u8 y, u8 b, u8 speed) { - u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_LIST]; + u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_LIST]; if (b == 0xFF) FillWindowPixelRect(windowId, PIXEL_FILL(1), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); else @@ -1136,15 +1136,15 @@ static void ItemStorage_CreateListMenu(u8 taskId) const u8* text; data = gTasks[taskId].data; - for (i = 0; i <= ITEMWIN_LIST_END; i++) + for (i = 0; i <= ITEMPC_WIN_LIST_END; i++) ItemStorage_AddWindow(i); toss = tInTossMenu; text = gText_TossItem; if (!toss) text = gText_WithdrawItem; x = GetStringCenterAlignXOffset(1, text, 104); - AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMWIN_TITLE], 1, text, x, 1, 0, NULL); - CopyWindowToVram(sItemStorageMenu->windowIds[ITEMWIN_ICON], 2); + AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMPC_WIN_TITLE], 1, text, x, 1, 0, NULL); + CopyWindowToVram(sItemStorageMenu->windowIds[ITEMPC_WIN_ICON], 2); ItemStorage_CompactList(); ItemStorage_CompactCursor(); ItemStorage_RefreshListMenu(); @@ -1196,7 +1196,7 @@ static const u8* ItemStorage_GetMessage(u16 itemId) static void ItemStorage_PrintMessage(const u8 *string) { - u8 windowId = sItemStorageMenu->windowIds[ITEMWIN_MESSAGE]; + u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_MESSAGE]; FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, string); AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, 0, NULL); @@ -1377,7 +1377,7 @@ static void ItemStorage_DoItemAction(u8 taskId) } // Set up "how many" prompt - ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMWIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); + ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMPC_WIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); gTasks[taskId].func = ItemStorage_HandleQuantityRolling; } @@ -1388,7 +1388,7 @@ static void ItemStorage_HandleQuantityRolling(u8 taskId) if (AdjustQuantityAccordingToDPadInput(&tQuantity, gSaveBlock1Ptr->pcItems[pos].quantity) == TRUE) { - ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMWIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); + ItemStorage_PrintItemQuantity(ItemStorage_AddWindow(ITEMPC_WIN_QUANTITY), tQuantity, STR_CONV_MODE_LEADING_ZEROS, 8, 1, 3); } else { @@ -1396,7 +1396,7 @@ static void ItemStorage_HandleQuantityRolling(u8 taskId) { // Quantity confirmed, perform action PlaySE(SE_SELECT); - ItemStorage_RemoveWindow(ITEMWIN_QUANTITY); + ItemStorage_RemoveWindow(ITEMPC_WIN_QUANTITY); if (!tInTossMenu) ItemStorage_DoItemWithdraw(taskId); else @@ -1406,7 +1406,7 @@ static void ItemStorage_HandleQuantityRolling(u8 taskId) { // Canceled action PlaySE(SE_SELECT); - ItemStorage_RemoveWindow(ITEMWIN_QUANTITY); + ItemStorage_RemoveWindow(ITEMPC_WIN_QUANTITY); ItemStorage_PrintMessage(ItemStorage_GetMessage(gSaveBlock1Ptr->pcItems[pos].itemId)); ItemStorage_ReturnToListInput(taskId); } @@ -1446,7 +1446,7 @@ static void ItemStorage_DoItemToss(u8 taskId) CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tQuantity, STR_CONV_MODE_LEFT_ALIGN, 3); ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_OKAY_TO_THROW_AWAY)); - CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_ItemStorage[ITEMWIN_YESNO], 1, 0, 1, 0x214, 0xE, &ItemTossYesNoFuncs); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_ItemStorage[ITEMPC_WIN_YESNO], 1, 0, 1, 0x214, 0xE, &ItemTossYesNoFuncs); } else { From e01ae55c13f9717f6b0f781846d9ceaeeb2a250d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 11 Jul 2021 20:42:05 -0400 Subject: [PATCH 259/762] Start more link_rfu_2 documentation --- include/link_rfu.h | 12 +-- src/data/union_room.h | 2 +- src/link.c | 20 +--- src/link_rfu_2.c | 211 ++++++++++++++++++++++++------------------ src/union_room.c | 23 +++-- 5 files changed, 144 insertions(+), 124 deletions(-) diff --git a/include/link_rfu.h b/include/link_rfu.h index e1c3a6fba160..da13fe539f93 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -41,8 +41,8 @@ #define RFU_STATUS_WAIT_ACK_JOIN_GROUP 7 #define RFU_STATUS_LEAVE_GROUP_NOTICE 8 #define RFU_STATUS_LEAVE_GROUP 9 -#define RFU_STATUS_10 10 -#define RFU_STATUS_11 11 +#define RFU_STATUS_CHILD_LEAVE_READY 10 +#define RFU_STATUS_CHILD_LEAVE 11 #define RFU_STATUS_ACK_JOIN_GROUP 12 // RfuTgtData.gname is read as these structs. @@ -213,8 +213,8 @@ void Rfu_SetLinkStandbyCallback(void); void ResetLinkRfuGFLayer(void); void UpdateWirelessStatusIndicatorSprite(void); void InitRFU(void); -bool32 sub_8010EC0(void); -bool32 sub_8010F1C(void); +bool32 RfuMain1(void); +bool32 RfuMain2(void); bool32 RfuHasErrored(void); bool32 IsRfuRecvQueueEmpty(void); u32 GetRfuRecvQueueLength(void); @@ -229,9 +229,9 @@ u8 sub_801048C(bool32 a0); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *buff1, u8 *buff2); void SetHostRFUtgtGname(u8 activity, u32 child_sprite_genders, bool32 started); void InitializeRfuLinkManager_LinkLeader(u32 a0); -bool32 sub_8012240(void); +bool32 IsRfuCommunicatingWithAllChildren(void); void LinkRfu_StopManagerAndFinalizeSlots(void); -bool32 sub_80105EC(void); +bool32 RfuTryDisconnectLeavingChildren(void); bool32 HasTrainerLeftPartnersList(u16 trainerId, const u8 *name); void SendRfuStatusToPartner(u8 status, u16 trainerId, const u8 *name); u32 WaitSendRfuStatusToPartner(u16 trainerId, const u8 *name); diff --git a/src/data/union_room.h b/src/data/union_room.h index be7bfae71ef2..a13068146715 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -986,7 +986,7 @@ static const struct ListMenuItem sEmptyListMenuItems[] = { static const struct ListMenuTemplate sUnknownListMenuTemplate = { .items = sEmptyListMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = nullsub_14, + .itemPrintFunc = ItemPrintFunc_EmptyList, .totalItems = ARRAY_COUNT(sEmptyListMenuItems), .maxShowed = 4, .windowId = 0, diff --git a/src/link.c b/src/link.c index 8a04b53e5890..c32ee07d26d4 100644 --- a/src/link.c +++ b/src/link.c @@ -485,21 +485,17 @@ u16 LinkMain2(const u16 *heldKeys) u8 i; if (!sLinkOpen) - { return 0; - } + for (i = 0; i < CMD_LENGTH; i++) - { gSendCmd[i] = 0; - } + gLinkHeldKeys = *heldKeys; if (gLinkStatus & LINK_STAT_CONN_ESTABLISHED) { ProcessRecvCmds(SIO_MULTI_CNT->id); if (gLinkCallback != NULL) - { gLinkCallback(); - } CheckErrorStatus(); } return gLinkStatus; @@ -1796,8 +1792,8 @@ bool8 HandleLinkConnection(void) } else { - r4 = sub_8010EC0(); - r5 = sub_8010F1C(); + r4 = RfuMain1(); + r5 = RfuMain2(); if (IsSendingKeysOverCable() == TRUE) { if (r4 == TRUE || IsRfuRecvQueueEmpty() || r5) @@ -1916,9 +1912,7 @@ u32 LinkMain1(u8 *shouldAdvanceLinkState, u16 *sendCmd, u16 (*recvCmds)[CMD_LENG break; case 1: if (gLink.isMaster == LINK_MASTER && gLink.playerCount > 1) - { gLink.handshakeAsMaster = TRUE; - } break; case 2: gLink.state = LINK_STATE_START0; @@ -1974,20 +1968,14 @@ u32 LinkMain1(u8 *shouldAdvanceLinkState, u16 *sendCmd, u16 (*recvCmds)[CMD_LENG } if (gLink.lag == LAG_MASTER) - { retVal |= LINK_STAT_ERROR_LAG_MASTER; - } if (gLink.localId >= MAX_LINK_PLAYERS) - { retVal |= LINK_STAT_ERROR_INVALID_ID; - } retVal2 = retVal; if (gLink.lag == LAG_SLAVE) - { retVal2 |= LINK_STAT_ERROR_LAG_SLAVE; - } return retVal2; } diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 6366b97047f3..b27694960c48 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -18,6 +18,35 @@ #include "save.h" #include "mystery_gift.h" +enum { + RFUSTATE_INIT, + RFUSTATE_INIT_END, + RFUSTATE_PARENT_CONNECT, + RFUSTATE_PARENT_CONNECT_END, + RFUSTATE_STOP_MANAGER, + RFUSTATE_STOP_MANAGER_END, + RFUSTATE_CHILD_CONNECT, + RFUSTATE_CHILD_CONNECT_END, + RFUSTATE_8, // Unused + RFUSTATE_RECONNECTED, + RFUSTATE_10, + RFUSTATE_CHILD_TRY_JOIN, + RFUSTATE_CHILD_JOINED, + RFUSTATE_13, + RFUSTATE_14, + RFUSTATE_15, + RFUSTATE_UR_FINALIZE, +}; +// These states are re-used for different purposes +#define RFUSTATE_17 17 +#define RFUSTATE_18 18 + +#define RFUSTATE_PARENT_FINALIZE_START 17 +#define RFUSTATE_PARENT_FINALIZE 18 +#define RFUSTATE_UR_CONNECT 17 +#define RFUSTATE_UR_CONNECT_END 18 +#define RFUSTATE_20 20 + struct SioInfo { char magic[15]; // PokemonSioInfo @@ -193,9 +222,9 @@ static const TaskFunc sUnknown_082ED7E0[] = { static const char sASCII_PokemonSioInfo[] = "PokemonSioInfo"; static const char sASCII_LinkLossDisconnect[] = "LINK LOSS DISCONNECT!"; static const char sASCII_LinkLossRecoveryNow[] = "LINK LOSS RECOVERY NOW"; -ALIGNED(4) static const char sASCII_30Commas[31] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; -static const char sASCII_15Commas[16] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; -static const char sASCII_8Commas[9] = {' ',' ',' ',' ',' ',' ',' ',' ','\0'}; +ALIGNED(4) static const char sASCII_30Spaces[31] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; +static const char sASCII_15Spaces[16] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; +static const char sASCII_8Spaces[9] = {' ',' ',' ',' ',' ',' ',' ',' ','\0'}; ALIGNED(4) static const char sASCII_Space[2] = {' ','\0'}; static const char sASCII_Asterisk[2] = {'*','\0'}; static const char sASCII_NowSlot[8] = "NOWSLOT"; @@ -277,32 +306,32 @@ static void Task_LinkLeaderSearchForChildren(u8 taskId) UpdateChildStatuses(); switch (Rfu.state) { - case 0: + case RFUSTATE_INIT: rfu_LMAN_initializeRFU(&sRfuReqConfig); - Rfu.state = 1; + Rfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; - case 1: + case RFUSTATE_INIT_END: break; - case 2: + case RFUSTATE_PARENT_CONNECT: rfu_LMAN_establishConnection(Rfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); - Rfu.state = 3; + Rfu.state = RFUSTATE_PARENT_CONNECT_END; gTasks[taskId].data[1] = 6; break; - case 3: + case RFUSTATE_PARENT_CONNECT_END: break; - case 4: + case RFUSTATE_STOP_MANAGER: rfu_LMAN_stopManager(FALSE); - Rfu.state = 5; + Rfu.state = RFUSTATE_STOP_MANAGER_END; break; - case 5: + case RFUSTATE_STOP_MANAGER_END: break; - case 18: + case RFUSTATE_PARENT_FINALIZE: Rfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); sub_800EAB4(); sub_800EAFC(); - Rfu.state = 20; + Rfu.state = RFUSTATE_20; gTasks[taskId].data[1] = 8; CreateTask(sub_801084C, 5); DestroyTask(taskId); @@ -363,28 +392,28 @@ static void Task_JoinGroupSearchForParent(u8 taskId) { switch (Rfu.state) { - case 0: + case RFUSTATE_INIT: rfu_LMAN_initializeRFU((INIT_PARAM *)&sRfuReqConfigTemplate); - Rfu.state = 1; + Rfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; - case 1: + case RFUSTATE_INIT_END: break; - case 6: + case RFUSTATE_CHILD_CONNECT: rfu_LMAN_establishConnection(Rfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); - Rfu.state = 7; + Rfu.state = RFUSTATE_CHILD_CONNECT_END; gTasks[taskId].data[1] = 7; break; - case 7: + case RFUSTATE_CHILD_CONNECT_END: break; - case 9: + case RFUSTATE_RECONNECTED: gTasks[taskId].data[1] = 10; break; - case 11: + case RFUSTATE_CHILD_TRY_JOIN: switch (sub_80107A0()) { case RFU_STATUS_JOIN_GROUP_OK: - Rfu.state = 12; + Rfu.state = RFUSTATE_CHILD_JOINED; break; case RFU_STATUS_JOIN_GROUP_NO: case RFU_STATUS_LEAVE_GROUP: @@ -394,7 +423,7 @@ static void Task_JoinGroupSearchForParent(u8 taskId) break; } break; - case 12: + case RFUSTATE_CHILD_JOINED: { u8 bmChildSlot = 1 << Rfu.childSlot; rfu_clearSlot(TYPE_NI_SEND | TYPE_NI_RECV, Rfu.childSlot); @@ -448,48 +477,44 @@ static void Task_LinkRfu_UnionRoomListen(u8 taskId) } switch (Rfu.state) { - case 0: + case RFUSTATE_INIT: rfu_LMAN_initializeRFU(&sRfuReqConfig); - Rfu.state = 1; + Rfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; - case 1: + case RFUSTATE_INIT_END: break; - case 17: + case RFUSTATE_UR_CONNECT: rfu_LMAN_establishConnection(2, 0, 240, (u16 *)sAcceptedSerialNos); rfu_LMAN_setMSCCallback(sub_800ED34); - Rfu.state = 18; + Rfu.state = RFUSTATE_UR_CONNECT_END; break; - case 18: + case RFUSTATE_UR_CONNECT_END: break; - case 13: + case RFUSTATE_13: if (rfu_UNI_setSendData(1 << Rfu.childSlot, Rfu.unk_4c, sizeof(Rfu.unk_4c)) == 0) { Rfu.parentChild = MODE_CHILD; DestroyTask(taskId); if (gTasks[taskId].data[7]) - { CreateTask(sub_8010D0C, 1); - } else - { CreateTask(sub_801084C, 5); - } } break; - case 14: + case RFUSTATE_14: rfu_LMAN_stopManager(0); - Rfu.state = 15; + Rfu.state = RFUSTATE_15; break; - case 15: + case RFUSTATE_15: break; - case 16: + case RFUSTATE_UR_FINALIZE: Rfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); UpdateGameData_GroupLockedIn(TRUE); sub_800EAB4(); sub_800EAFC(); - Rfu.state = 20; + Rfu.state = RFUSTATE_20; gTasks[taskId].data[1] = 8; Rfu.parentChild = MODE_PARENT; CreateTask(sub_801084C, 5); @@ -557,7 +582,7 @@ void LinkRfu_Shutdown(void) ResetLinkRfuGFLayer(); } } - else if (Rfu.parentChild == 2) + else if (Rfu.parentChild == MODE_P_C_SWITCH) { if (FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) { @@ -581,7 +606,7 @@ static void CreateTask_LinkLeaderSearchForChildren(void) static bool8 sub_800EE94(void) { - if (Rfu.state == 7 && Rfu.parentId) + if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && Rfu.parentId) { return TRUE; } @@ -590,9 +615,9 @@ static bool8 sub_800EE94(void) static bool32 IsParentSuccessfullyReconnected(void) { - if (Rfu.state == 7 && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[Rfu.unk_c3d].id, 240)) + if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[Rfu.unk_c3d].id, 240)) { - Rfu.state = 9; + Rfu.state = RFUSTATE_RECONNECTED; return TRUE; } return FALSE; @@ -614,15 +639,15 @@ bool8 LmanAcceptSlotFlagIsNotZero(void) void LinkRfu_StopManagerAndFinalizeSlots(void) { - Rfu.state = 4; + Rfu.state = RFUSTATE_STOP_MANAGER; Rfu.acceptSlot_flag = lman.acceptSlot_flag; } bool32 WaitRfuState(bool32 force) { - if (Rfu.state == 17 || force) + if (Rfu.state == RFUSTATE_PARENT_FINALIZE_START || force) { - Rfu.state = 18; + Rfu.state = RFUSTATE_PARENT_FINALIZE; return TRUE; } return FALSE; @@ -630,7 +655,7 @@ bool32 WaitRfuState(bool32 force) void sub_800EF7C(void) { - Rfu.state = 14; + Rfu.state = RFUSTATE_14; } static void sub_800EF88(u8 a0) @@ -720,7 +745,7 @@ bool32 IsRfuRecvQueueEmpty(void) static bool32 sub_800F0F8(void) { - if (Rfu.state < 20) + if (Rfu.state < RFUSTATE_20) { rfu_REQ_recvData(); rfu_waitREQComplete(); @@ -772,15 +797,13 @@ static bool32 sub_800F1E0(void) u16 j; u8 retval; - if (Rfu.state >= 20 && Rfu.unk_0e == TRUE) + if (Rfu.state >= RFUSTATE_20 && Rfu.unk_0e == TRUE) { rfu_waitREQComplete(); while (Rfu.unk_cdb == FALSE) { if (Rfu.errorState != 0) - { return FALSE; - } } rfu_REQ_recvData(); rfu_waitREQComplete(); @@ -885,9 +908,7 @@ static bool32 RfuProcessEnqueuedRecvBlock(void) for (i = 0; i < MAX_RFU_PLAYERS; i++) { for (j = 0; j < CMD_LENGTH - 1; j++) - { gRecvCmds[i][j] = (sp00[i * 14 + (j << 1) + 1] << 8) | sp00[i * 14 + (j << 1) + 0]; - } } RfuHandleReceiveCommand(0); if (lman.childClockSlave_flag == 0 && Rfu.unk_ce4) @@ -1563,7 +1584,7 @@ static bool8 CheckForLeavingGroupMembers(void) if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_LEAVE_GROUP_NOTICE) { Rfu.partnerSendStatuses[i] = RFU_STATUS_LEAVE_GROUP; - Rfu.partnerRecvStatuses[i] = RFU_STATUS_10; + Rfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE_READY; rfu_clearSlot(TYPE_NI_RECV, i); rfu_NI_setSendData(1 << i, 8, &Rfu.partnerSendStatuses[i], 1); memberLeft = TRUE; @@ -1580,27 +1601,33 @@ static bool8 CheckForLeavingGroupMembers(void) return memberLeft; } -bool32 sub_80105EC(void) +bool32 RfuTryDisconnectLeavingChildren(void) { - u8 flags = 0; + u8 childrenLeaving = 0; s32 i; + + // Check all children, get those waiting to be disconnected for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_11) + if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) { - flags |= (1 << i); + childrenLeaving |= (1 << i); Rfu.partnerRecvStatuses[i] = RFU_STATUS_OK; } } - if (flags) + + // Disconnect any leaving children + if (childrenLeaving) { - rfu_REQ_disconnect(flags); + rfu_REQ_disconnect(childrenLeaving); rfu_waitREQComplete(); } + + // Return true if any children have left or are still waiting to leave for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_10 - || Rfu.partnerRecvStatuses[i] == RFU_STATUS_11) + if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY + || Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) return TRUE; } return FALSE; @@ -1651,8 +1678,8 @@ static void UpdateChildStatuses(void) if (gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_SUCCESS || gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_FAILED) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_10) - Rfu.partnerRecvStatuses[i] = RFU_STATUS_11; + if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY) + Rfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE; rfu_clearSlot(TYPE_NI_SEND, i); } } @@ -1939,7 +1966,8 @@ static void rfu_REQ_recvData_then_sendData(void) } } -bool32 sub_8010EC0(void) +// Rfu equivalent of LinkMain1 +bool32 RfuMain1(void) { bool32 retval = FALSE; Rfu.parentId = 0; @@ -1954,7 +1982,7 @@ bool32 sub_8010EC0(void) case MODE_CHILD: retval = RfuProcessEnqueuedRecvBlock(); break; - case 2: + case MODE_P_C_SWITCH: rfu_REQ_recvData_then_sendData(); break; } @@ -1962,7 +1990,8 @@ bool32 sub_8010EC0(void) return retval; } -bool32 sub_8010F1C(void) +// Rfu equivalent of LinkMain2 +bool32 RfuMain2(void) { bool32 retval = FALSE; if (!Rfu.isShuttingDown) @@ -2101,7 +2130,7 @@ static void sub_801120C(u8 msg, u8 paramCount) switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = 2; + Rfu.state = RFUSTATE_PARENT_CONNECT; break; case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: break; @@ -2140,7 +2169,7 @@ static void sub_801120C(u8 msg, u8 paramCount) rfu_REQ_disconnect(Rfu.acceptSlot_flag ^ lman.acceptSlot_flag); rfu_waitREQComplete(); } - Rfu.state = 17; + Rfu.state = RFUSTATE_PARENT_FINALIZE_START; break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_START_RECOVERY: Rfu.linkLossRecoveryState = 1; @@ -2161,8 +2190,7 @@ static void sub_801120C(u8 msg, u8 paramCount) } RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; - case 0x34: - break; + case 0x34: // ? Not a valid LMAN_MSG value case LMAN_MSG_RFU_POWER_DOWN: case LMAN_MSG_MANAGER_STOPPED: case LMAN_MSG_MANAGER_FORCED_STOPPED_AND_RFU_RESET: @@ -2188,7 +2216,7 @@ void sub_8011404(u8 msg, u8 unused1) switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = 6; + Rfu.state = RFUSTATE_CHILD_CONNECT; break; case LMAN_MSG_PARENT_FOUND: Rfu.parentId = lman.param[0]; @@ -2202,7 +2230,7 @@ void sub_8011404(u8 msg, u8 unused1) RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: - Rfu.state = 11; + Rfu.state = RFUSTATE_CHILD_TRY_JOIN; Rfu.unk_c85 = 0; Rfu.recvStatus = RFU_STATUS_OK; rfu_setRecvBuffer(TYPE_NI, Rfu.childSlot, &Rfu.recvStatus, 1); @@ -2293,7 +2321,7 @@ static void sub_8011674(u8 msg, u8 paramCount) switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = 17; + Rfu.state = RFUSTATE_17; break; case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: RfuSetStatus(RFU_STATUS_NEW_CHILD_DETECTED, 0); @@ -2340,8 +2368,8 @@ static void sub_8011674(u8 msg, u8 paramCount) rfu_REQ_disconnect(lman.acceptSlot_flag ^ r1); rfu_waitREQComplete(); } - if (Rfu.state == 15) - Rfu.state = 16; + if (Rfu.state == RFUSTATE_15) + Rfu.state = RFUSTATE_UR_FINALIZE; break; break; case LMAN_MSG_PARENT_FOUND: @@ -2353,7 +2381,7 @@ static void sub_8011674(u8 msg, u8 paramCount) Rfu.childSlot = lman.param[0]; break; case LMAN_MSG_CONNECT_PARENT_FAILED: - Rfu.state = 18; + Rfu.state = RFUSTATE_18; if (Rfu.unk_ccf < 2) { Rfu.unk_ccf++; @@ -2365,7 +2393,7 @@ static void sub_8011674(u8 msg, u8 paramCount) } break; case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: - Rfu.state = 13; + Rfu.state = RFUSTATE_13; RfuSetStatus(RFU_STATUS_CHILD_SEND_COMPLETE, 0); rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, 70); break; @@ -2403,8 +2431,10 @@ static void sub_8011674(u8 msg, u8 paramCount) rfu_LMAN_stopManager(0); } - if (gRfuLinkStatus->parentChild == MODE_NEUTRAL && lman.pcswitch_flag == 0 && FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) - Rfu.state = 17; + if (gRfuLinkStatus->parentChild == MODE_NEUTRAL + && lman.pcswitch_flag == 0 + && FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) + Rfu.state = RFUSTATE_17; RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; @@ -2557,7 +2587,7 @@ void InitializeRfuLinkManager_JoinGroup(void) void InitializeRfuLinkManager_EnterUnionRoom(void) { - Rfu.parentChild = 2; + Rfu.parentChild = MODE_P_C_SWITCH; CopyPlayerNameToUnameBuffer(); rfu_LMAN_initializeManager(sub_8011674, NULL); sRfuReqConfig = sRfuReqConfigTemplate; @@ -2765,7 +2795,7 @@ static void sub_801209C(u8 taskId) { if (gRfuLinkStatus->partner[id].slot != 0xFF && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[id].id, 0x5A)) { - Rfu.state = 0xA; + Rfu.state = RFUSTATE_10; DestroyTask(taskId); } } @@ -2810,12 +2840,15 @@ bool8 IsRfuRecoveringFromLinkLoss(void) return FALSE; } -bool32 sub_8012240(void) +bool32 IsRfuCommunicatingWithAllChildren(void) { s32 i; for (i = 0; i < RFU_CHILD_MAX; i++) { + // RFU_STATUS_OK is the default status. + // If any connected child is receiving a status other + // than OK, then the parent is communicating with them if ((lman.acceptSlot_flag >> i) & 1 && Rfu.partnerSendStatuses[i] == RFU_STATUS_OK) return FALSE; } @@ -2828,7 +2861,7 @@ static void Debug_PrintEmpty(void) s32 i; for (i = 0; i < 20; i++) - Debug_PrintString(sASCII_30Commas, 0, i); + Debug_PrintString(sASCII_30Spaces, 0, i); } static void Debug_PrintStatus(void) @@ -2863,8 +2896,8 @@ static void Debug_PrintStatus(void) for (i = 0; i < RFU_CHILD_MAX; i++) { Debug_PrintNum(0, 1, i + 3, 4); - Debug_PrintString(sASCII_15Commas, 6, i + 3); - Debug_PrintString(sASCII_8Commas, 0x16, i + 3); + Debug_PrintString(sASCII_15Spaces, 6, i + 3); + Debug_PrintString(sASCII_8Spaces, 0x16, i + 3); } Debug_PrintNum(gRfuLinkStatus->partner[Rfu.childSlot].serialNo, 1, 3, 4); Debug_PrintString((void*)gRfuLinkStatus->partner[Rfu.childSlot].gname, 6, 3); @@ -2884,8 +2917,8 @@ static void Debug_PrintStatus(void) for (; i < RFU_CHILD_MAX; i++) { Debug_PrintNum(0, 1, i + 3, 4); - Debug_PrintString(sASCII_15Commas, 6, i + 3); - Debug_PrintString(sASCII_8Commas, 0x16, i + 3); + Debug_PrintString(sASCII_15Spaces, 6, i + 3); + Debug_PrintString(sASCII_8Spaces, 0x16, i + 3); } } } diff --git a/src/union_room.c b/src/union_room.c index 8d02a260d93a..d9242bf9c184 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -129,7 +129,7 @@ enum { LL_STATE_PRINT_AWAITING_PLAYERS, LL_STATE_AWAIT_PLAYERS, LL_STATE_ACCEPT_NEW_MEMBER_PROMPT, - LL_STATE_9 = 9, + LL_STATE_WAIT_DISCONNECT_CHILD = 9, LL_STATE_MEMBER_LEFT, LL_STATE_ACCEPT_NEW_MEMBER_PROMPT_HANDLE_INPUT, LL_STATE_UPDATE_AFTER_JOIN_REQUEST, @@ -184,12 +184,10 @@ EWRAM_DATA u16 gUnionRoomOfferedSpecies = 0; EWRAM_DATA u8 gUnionRoomRequestedMonType = 0; static EWRAM_DATA struct UnionRoomTrade sUnionRoomTrade = {}; -// IWRAM vars static struct WirelessLink_Leader *sLeader; static struct WirelessLink_Group *sGroup; static struct WirelessLink_URoom *sURoom; -// this file's functions static void UR_AddTextPrinterParameterized(u8, u8, const u8 *, u8, u8, u8); static u16 ReadAsU16(const u8 *); static void Task_TryBecomeLinkLeader(u8); @@ -256,11 +254,10 @@ static bool8 AreGnameUnameDifferent(struct WirelessGnameUnamePair*, const struct static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y); static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, u32 id, u8 y); static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 id, u8 y); -static void nullsub_14(u8 windowId, u32 id, u8 y); +static void ItemPrintFunc_EmptyList(u8 windowId, u32 id, u8 y); #include "data/union_room.h" -// code static void PrintNumPlayersWaitingForMsg(u8 windowId, u8 capacityCode, u8 stringId) { FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); @@ -461,19 +458,21 @@ static void Task_TryBecomeLinkLeader(u8 taskId) if (GROUP_MIN(sPlayerActivityGroupSize) != 0 && data->playerCount > GROUP_MIN(sPlayerActivityGroupSize) - 1 && GROUP_MAX(sPlayerActivityGroupSize) != 0 - && sub_8012240() + && IsRfuCommunicatingWithAllChildren() && JOY_NEW(START_BUTTON)) { data->state = LL_STATE_MEMBERS_OK_PROMPT; LinkRfu_StopManagerAndFinalizeSlots(); } - if (data->state == LL_STATE_AWAIT_PLAYERS && sub_80105EC()) + if (data->state == LL_STATE_AWAIT_PLAYERS && RfuTryDisconnectLeavingChildren()) { - data->state = LL_STATE_9; + // At least 1 group member has left or is trying to leave + data->state = LL_STATE_WAIT_DISCONNECT_CHILD; } break; - case LL_STATE_9: - if (!sub_80105EC()) + case LL_STATE_WAIT_DISCONNECT_CHILD: + // Resume after ensuring all members trying to leave have left + if (!RfuTryDisconnectLeavingChildren()) { data->state = LL_STATE_AWAIT_PLAYERS; data->playerCount = sub_8013398(data->field_0); @@ -525,7 +524,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->state = LL_STATE_UPDATE_AFTER_JOIN_REQUEST; break; case -3: - data->state = LL_STATE_9; + data->state = LL_STATE_WAIT_DISCONNECT_CHILD; break; } break; @@ -4074,7 +4073,7 @@ static s32 UnionRoomGetPlayerInteractionResponse(struct UnkStruct_Main0 *main0, } } -void nullsub_14(u8 windowId, u32 itemId, u8 y) +void ItemPrintFunc_EmptyList(u8 windowId, u32 itemId, u8 y) { } From dfdcfc1568ad8d3c4efbe36f06c1b883b677abd2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 15 Aug 2021 16:11:30 -0400 Subject: [PATCH 260/762] Document remaining functions in cable_club --- data/specials.inc | 2 +- include/link.h | 34 +++++++++++----------------------- src/battle_controllers.c | 2 +- src/battle_main.c | 34 +++++++++++++++++----------------- src/battle_tower.c | 4 ++-- src/berry_blender.c | 2 +- src/cable_club.c | 28 +++++++++++++++------------- src/contest_link.c | 8 ++++---- src/field_specials.c | 4 ++-- src/link.c | 16 ++++++++-------- src/link_rfu_2.c | 12 ++++++------ src/record_mixing.c | 2 +- src/trade.c | 24 +++++++----------------- src/union_room.c | 2 +- 14 files changed, 77 insertions(+), 97 deletions(-) diff --git a/data/specials.inc b/data/specials.inc index eacc6bf5e7ac..e9eadac4c0be 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -43,7 +43,7 @@ gSpecials:: @ 81DBA64 def_special CloseLink def_special ColosseumPlayerSpotTriggered def_special PlayerEnteredTradeSeat - def_special nullsub_37 + def_special Script_StartWiredTrade def_special CableClubSaveGame def_special TryBerryBlenderLinkup def_special GetLinkPartnerNames diff --git a/include/link.h b/include/link.h index 407dbabb9cf0..8dd2328d08aa 100644 --- a/include/link.h +++ b/include/link.h @@ -104,6 +104,14 @@ #define LINKTYPE_CONTEST_GMODE 0x6601 #define LINKTYPE_CONTEST_EMODE 0x6602 +enum { + BLOCK_REQ_SIZE_NONE, // Identical to 200 + BLOCK_REQ_SIZE_200, + BLOCK_REQ_SIZE_100, + BLOCK_REQ_SIZE_220, + BLOCK_REQ_SIZE_40, +}; + struct LinkStatus { u32 localId:2; @@ -227,8 +235,6 @@ struct BlockRequest u32 size; }; -extern const struct BlockRequest sBlockRequestLookupTable[5]; - extern struct Link gLink; extern u16 gRecvCmds[MAX_RFU_PLAYERS][CMD_LENGTH]; extern u8 gBlockSendBuffer[BLOCK_BUFFER_SIZE]; @@ -236,8 +242,7 @@ extern u16 gLinkType; extern u32 gLinkStatus; extern u16 gBlockRecvBuffer[MAX_RFU_PLAYERS][BLOCK_BUFFER_SIZE / 2]; extern u16 gSendCmd[CMD_LENGTH]; -extern struct LinkPlayer gLinkPlayers[5]; -extern u16 word_3002910[]; +extern struct LinkPlayer gLinkPlayers[MAX_RFU_PLAYERS]; extern bool8 gReceivedRemoteLinkPlayers; extern u32 gBerryBlenderKeySendAttempts; extern bool8 gLinkVSyncDisabled; @@ -249,8 +254,6 @@ void Task_DestroySelf(u8 taskId); void OpenLink(void); void CloseLink(void); u16 LinkMain2(const u16 *); -void sub_8007B14(void); -bool32 sub_8007B24(void); void ClearLinkCallback(void); void ClearLinkCallback_2(void); u8 GetLinkPlayerCount(void); @@ -259,10 +262,8 @@ u8 GetLinkPlayerDataExchangeStatusTimed(int lower, int upper); bool8 IsLinkPlayerDataExchangeComplete(void); u32 GetLinkPlayerTrainerId(u8); void ResetLinkPlayers(void); -void sub_8007E24(void); -void sub_8007E4C(void); u8 GetMultiplayerId(void); -u8 bitmask_all_link_players_but_self(void); +u8 BitmaskAllOtherLinkPlayers(void); bool8 SendBlock(u8, const void *, u16); u8 GetBlockReceivedStatus(void); void ResetBlockReceivedFlags(void); @@ -270,7 +271,7 @@ void ResetBlockReceivedFlag(u8); u8 GetLinkPlayerCount_2(void); bool8 IsLinkMaster(void); void CB2_LinkError(void); -u8 GetSioMultiSI(void); +bool8 GetSioMultiSI(void); bool8 IsLinkConnectionEstablished(void); bool8 HasLinkErrorOccurred(void); void ResetSerial(void); @@ -285,14 +286,12 @@ void CreateWirelessStatusIndicatorSprite(u8, u8); void SetLinkStandbyCallback(void); void SetWirelessCommType1(void); void CheckShouldAdvanceLinkState(void); -u8 IsLinkMaster(void); void SetCloseLinkCallback(void); bool8 HandleLinkConnection(void); void SetLinkDebugValues(u32 seed, u32 flags); void SetBerryBlenderLinkCallback(void); void SetSuppressLinkErrorMessage(bool8 flag); void ConvertLinkPlayerName(struct LinkPlayer *linkPlayer); -u8 GetSioMultiSI(void); void ClearSavedLinkPlayers(void); void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected); void LocalLinkPlayerToBlock(void); @@ -312,8 +311,6 @@ extern bool8 gRemoteLinkPlayersNotReceived[MAX_LINK_PLAYERS]; extern u8 gBlockReceivedStatus[MAX_LINK_PLAYERS]; extern u16 gLinkHeldKeys; extern u32 gLinkStatus; -extern u8 gUnknown_030030E4; -extern u8 gUnknown_030030E8; extern bool8 gReadyToExitStandby[MAX_LINK_PLAYERS]; extern bool8 gReadyToCloseLink[MAX_LINK_PLAYERS]; extern u16 gReadyCloseLinkType; @@ -329,23 +326,14 @@ extern u8 gBlockRequestType; extern u8 gLastSendQueueCount; extern u8 gLastRecvQueueCount; extern u16 gLinkSavedIme; -extern u32 gFiller_03003074; -extern u32 gFiller_03003154; -extern u32 gFiller_03003158; -extern u32 gFiller_0300315c; -extern u32 gFiller_03004138; -extern u32 gFiller_0300413C; -extern u32 gFiller_03003080; extern struct LinkPlayer gLocalLinkPlayer; bool32 Link_AnyPartnersPlayingRubyOrSapphire(void); bool32 LinkDummy_Return2(void); void SetLocalLinkPlayerId(u8); u8 GetSavedPlayerCount(void); -void sub_8009FAC(void); bool8 SendBlockRequest(u8 type); u8 GetLinkPlayerCountAsBitFlags(void); -u8 sub_800A0C8(s32, s32); u8 GetSavedLinkPlayerCountAsBitFlags(void); void SetCloseLinkCallbackHandleJP(void); void CheckLinkPlayersMatchSaved(void); diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 0f32345791ce..0a8ecac02105 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -789,7 +789,7 @@ static void Task_HandleSendLinkBuffersData(u8 taskId) gTasks[taskId].data[15] = 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(bitmask_all_link_players_but_self(), &gLinkBattleSendBuffer[gTasks[taskId].data[15]], blockSize); + SendBlock(BitmaskAllOtherLinkPlayers(), &gLinkBattleSendBuffer[gTasks[taskId].data[15]], blockSize); gTasks[taskId].data[11]++; } else diff --git a/src/battle_main.c b/src/battle_main.c index 977bcbd9c1b9..7a728371402e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -986,7 +986,7 @@ static void CB2_HandleStartBattle(void) gLinkPlayers[1].id = 1; } - SendBlock(bitmask_all_link_players_but_self(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); gBattleCommunication[MULTIUSE_STATE] = 2; } if (gWirelessCommType) @@ -1024,7 +1024,7 @@ static void CB2_HandleStartBattle(void) case 3: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1039,7 +1039,7 @@ static void CB2_HandleStartBattle(void) case 7: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 2, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty + 2, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1054,7 +1054,7 @@ static void CB2_HandleStartBattle(void) case 11: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 4, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty + 4, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1096,7 +1096,7 @@ static void CB2_HandleStartBattle(void) case 16: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1188,7 +1188,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) *(&gBattleStruct->multiBuffer.linkBattlerHeader.versionSignatureHi) = 3; BufferPartyVsScreenHealth_AtStart(); SetPlayerBerryDataInBattleStruct(); - SendBlock(bitmask_all_link_players_but_self(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); gBattleCommunication[MULTIUSE_STATE] = 2; } @@ -1224,7 +1224,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 3: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1248,7 +1248,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 5: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 2, sizeof(struct Pokemon)); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty + 2, sizeof(struct Pokemon)); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1272,7 +1272,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 7: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gEnemyParty, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gEnemyParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1290,7 +1290,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 9: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gEnemyParty + 2, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gEnemyParty + 2, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1308,7 +1308,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 11: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gEnemyParty + 4, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gEnemyParty + 4, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1350,7 +1350,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 14: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1432,7 +1432,7 @@ static void CB2_PreInitMultiBattle(void) { sMultiPartnerPartyBuffer = Alloc(sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); sub_80379F8(0); - SendBlock(bitmask_all_link_players_but_self(), sMultiPartnerPartyBuffer, sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); + SendBlock(BitmaskAllOtherLinkPlayers(), sMultiPartnerPartyBuffer, sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1577,7 +1577,7 @@ static void CB2_HandleStartMultiBattle(void) BufferPartyVsScreenHealth_AtStart(); SetPlayerBerryDataInBattleStruct(); - SendBlock(bitmask_all_link_players_but_self(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gBattleStruct->multiBuffer.linkBattlerHeader, sizeof(gBattleStruct->multiBuffer.linkBattlerHeader)); gBattleCommunication[MULTIUSE_STATE]++; } if (gWirelessCommType) @@ -1634,7 +1634,7 @@ static void CB2_HandleStartMultiBattle(void) case 3: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty, sizeof(struct Pokemon) * 2); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1697,7 +1697,7 @@ static void CB2_HandleStartMultiBattle(void) case 5: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 2, sizeof(struct Pokemon)); + SendBlock(BitmaskAllOtherLinkPlayers(), gPlayerParty + 2, sizeof(struct Pokemon)); gBattleCommunication[MULTIUSE_STATE]++; } break; @@ -1796,7 +1796,7 @@ static void CB2_HandleStartMultiBattle(void) u32* ptr = gBattleStruct->multiBuffer.battleVideo; ptr[0] = gBattleTypeFlags; ptr[1] = gRecordedBattleRngSeed; // UB: overwrites berry data - SendBlock(bitmask_all_link_players_but_self(), ptr, sizeof(gBattleStruct->multiBuffer.battleVideo)); + SendBlock(BitmaskAllOtherLinkPlayers(), ptr, sizeof(gBattleStruct->multiBuffer.battleVideo)); gBattleCommunication[MULTIUSE_STATE]++; } break; diff --git a/src/battle_tower.c b/src/battle_tower.c index 082ea6822f5a..f2ffd97a64b5 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -2575,7 +2575,7 @@ static void LoadLinkMultiOpponentsData(void) challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / 7; if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), &challengeNum, sizeof(challengeNum)); + SendBlock(BitmaskAllOtherLinkPlayers(), &challengeNum, sizeof(challengeNum)); gSpecialVar_Result = 1; } } @@ -2612,7 +2612,7 @@ static void LoadLinkMultiOpponentsData(void) case 2: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), &gSaveBlock2Ptr->frontier.trainerIds, sizeof(gSaveBlock2Ptr->frontier.trainerIds)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gSaveBlock2Ptr->frontier.trainerIds, sizeof(gSaveBlock2Ptr->frontier.trainerIds)); gSpecialVar_Result = 3; } break; diff --git a/src/berry_blender.c b/src/berry_blender.c index d47aa707ddf7..e84c2d5b30b4 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1355,7 +1355,7 @@ static void CB2_StartBlenderLink(void) { ResetBlockReceivedFlags(); if (GetMultiplayerId() == 0) - SendBlockRequest(4); + SendBlockRequest(BLOCK_REQ_SIZE_40); sBerryBlender->mainState++; } break; diff --git a/src/cable_club.c b/src/cable_club.c index abe1d5d4dd83..2fbe55f88ae4 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -185,9 +185,9 @@ static bool32 CheckLinkCanceled(u8 taskId) return FALSE; } -static bool32 sub_80B25CC(u8 taskId) +static bool32 CheckSioErrored(u8 taskId) { - if (GetSioMultiSI() == 1) + if (GetSioMultiSI() == TRUE) { gTasks[taskId].func = Task_LinkupConnectionError; return TRUE; @@ -196,12 +196,12 @@ static bool32 sub_80B25CC(u8 taskId) } // Unused -static void sub_80B2600(u8 taskId) +static void Task_DelayedBlockRequest(u8 taskId) { gTasks[taskId].data[0]++; if (gTasks[taskId].data[0] == 10) { - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); DestroyTask(taskId); } } @@ -252,7 +252,7 @@ static void Task_LinkupAwaitConnection(u8 taskId) static void Task_LinkupConfirmWhenReady(u8 taskId) { if (CheckLinkCanceledBeforeConnection(taskId) == TRUE - || sub_80B25CC(taskId) == TRUE + || CheckSioErrored(taskId) == TRUE || CheckLinkErrored(taskId) == TRUE) return; @@ -269,7 +269,7 @@ static void Task_LinkupAwaitConfirmation(u8 taskId) s32 linkPlayerCount = GetLinkPlayerCount_2(); if (CheckLinkCanceledBeforeConnection(taskId) == TRUE - || sub_80B25CC(taskId) == TRUE + || CheckSioErrored(taskId) == TRUE || CheckLinkErrored(taskId) == TRUE) return; @@ -291,7 +291,7 @@ static void Task_LinkupAwaitConfirmation(u8 taskId) static void Task_LinkupTryConfirmation(u8 taskId) { if (CheckLinkCanceledBeforeConnection(taskId) == TRUE - || sub_80B25CC(taskId) == TRUE + || CheckSioErrored(taskId) == TRUE || CheckLinkErrored(taskId) == TRUE) return; @@ -424,7 +424,7 @@ static void Task_LinkupCheckStatusAfterConfirm(u8 taskId) card->monSpecies[0] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[0] - 1], MON_DATA_SPECIES, NULL); card->monSpecies[1] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[1] - 1], MON_DATA_SPECIES, NULL); gTasks[taskId].func = Task_LinkupAwaitTrainerCardData; - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); } } @@ -1172,9 +1172,11 @@ static void CreateTask_StartWiredTrade(void) CreateTask(Task_StartWiredTrade, 80); } -void nullsub_37(void) +// Unused, implemented in Ruby/Sapphire +void Script_StartWiredTrade(void) { - + // CreateTask_StartWiredTrade(); + // ScriptContext1_Stop(); } void ColosseumPlayerSpotTriggered(void) @@ -1251,7 +1253,7 @@ void Task_WaitForLinkPlayerConnection(u8 taskId) #undef tTimer -static void sub_80B3AAC(u8 taskId) +static void Task_WaitExitToScript(u8 taskId) { if (!gReceivedRemoteLinkPlayers) { @@ -1261,10 +1263,10 @@ static void sub_80B3AAC(u8 taskId) } // Unused -static void sub_80B3AD0(u8 taskId) +static void ExitLinkToScript(u8 taskId) { SetCloseLinkCallback(); - gTasks[taskId].func = sub_80B3AAC; + gTasks[taskId].func = Task_WaitExitToScript; } #define tTimer data[1] diff --git a/src/contest_link.c b/src/contest_link.c index ae6975268f28..4905fb8daf93 100644 --- a/src/contest_link.c +++ b/src/contest_link.c @@ -22,7 +22,7 @@ static void Task_LinkContest_InitFlags(u8); bool32 LinkContest_SendBlock(void *src, u16 size) { memcpy(gDecompressionBuffer, src, size); - if (SendBlock(bitmask_all_link_players_but_self(), gDecompressionBuffer, size)) + if (SendBlock(BitmaskAllOtherLinkPlayers(), gDecompressionBuffer, size)) return TRUE; else return FALSE; @@ -162,7 +162,7 @@ void Task_LinkContest_CommunicateMonsRS(u8 taskId) // Only if leader. Request other players data if (++gTasks[taskId].tTimer > 300) { - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); gTasks[taskId].tState = 1; } break; @@ -238,7 +238,7 @@ void Task_LinkContest_CommunicateCategoryRS(u8 taskId) case 10: if (++gTasks[taskId].tTimer > 10) { - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); gTasks[taskId].tState = 1; } break; @@ -491,7 +491,7 @@ void Task_LinkContest_CommunicateLeaderIdsRS(u8 taskId) case 10: if (++gTasks[taskId].tTimer > 10) { - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); gTasks[taskId].tState = 1; } break; diff --git a/src/field_specials.c b/src/field_specials.c index 83857e1ffea4..fd5760c3b0ee 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3779,7 +3779,7 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) { // Send value of gSpecialVar_0x8004 to leader // Will either be BATTLE_TOWER_LINK_CONTINUE or BATTLE_TOWER_LINK_RETIRE - SendBlock(bitmask_all_link_players_but_self(), &gSpecialVar_0x8004, sizeof(gSpecialVar_0x8004)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gSpecialVar_0x8004, sizeof(gSpecialVar_0x8004)); gTasks[taskId].tState++; } } @@ -3828,7 +3828,7 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) else { // Send whether or not play should continue - SendBlock(bitmask_all_link_players_but_self(), &gSpecialVar_Result, sizeof(gSpecialVar_Result)); + SendBlock(BitmaskAllOtherLinkPlayers(), &gSpecialVar_Result, sizeof(gSpecialVar_Result)); gTasks[taskId].tState++; } } diff --git a/src/link.c b/src/link.c index c32ee07d26d4..39f6568de364 100644 --- a/src/link.c +++ b/src/link.c @@ -166,11 +166,11 @@ static const u16 sLinkTestDigitsGfx[] = INCBIN_U16("graphics/interface/link_test static const u8 sUnusedTransparentWhite[] = _("{HIGHLIGHT TRANSPARENT}{COLOR WHITE}"); static const u16 sCommErrorBg_Gfx[] = INCBIN_U16("graphics/interface/comm_error_bg.4bpp"); static const struct BlockRequest sBlockRequests[] = { - {gBlockSendBuffer, 200}, - {gBlockSendBuffer, 200}, - {gBlockSendBuffer, 100}, - {gBlockSendBuffer, 220}, - {gBlockSendBuffer, 40} + [BLOCK_REQ_SIZE_NONE] = {gBlockSendBuffer, 200}, + [BLOCK_REQ_SIZE_200] = {gBlockSendBuffer, 200}, + [BLOCK_REQ_SIZE_100] = {gBlockSendBuffer, 100}, + [BLOCK_REQ_SIZE_220] = {gBlockSendBuffer, 220}, + [BLOCK_REQ_SIZE_40] = {gBlockSendBuffer, 40} }; static const u8 sBGControlRegs[] = { REG_OFFSET_BG0CNT, @@ -1025,7 +1025,7 @@ u8 GetMultiplayerId(void) return SIO_MULTI_CNT->id; } -u8 bitmask_all_link_players_but_self(void) +u8 BitmaskAllOtherLinkPlayers(void) { u8 mpId; @@ -1727,12 +1727,12 @@ static void CB2_PrintErrorMessage(void) bool8 GetSioMultiSI(void) { - return (REG_SIOCNT & 0x04) != 0; + return (REG_SIOCNT & SIO_MULTI_SI) != 0; } static bool8 IsSioMultiMaster(void) { - return (REG_SIOCNT & 0x8) && !(REG_SIOCNT & 0x04); + return (REG_SIOCNT & SIO_MULTI_SD) && (REG_SIOCNT & SIO_MULTI_SI) == 0; } bool8 IsLinkConnectionEstablished(void) diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index b27694960c48..ffa78b21d58b 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -177,11 +177,11 @@ static const u8 sUnknown_082ED6A5[] = { }; static const struct BlockRequest sBlockRequests[] = { - { gBlockSendBuffer, 200 }, - { gBlockSendBuffer, 200 }, - { gBlockSendBuffer, 100 }, - { gBlockSendBuffer, 220 }, - { gBlockSendBuffer, 40 } + [BLOCK_REQ_SIZE_NONE] = { gBlockSendBuffer, 200 }, + [BLOCK_REQ_SIZE_200] = { gBlockSendBuffer, 200 }, + [BLOCK_REQ_SIZE_100] = { gBlockSendBuffer, 100 }, + [BLOCK_REQ_SIZE_220] = { gBlockSendBuffer, 220 }, + [BLOCK_REQ_SIZE_40] = { gBlockSendBuffer, 40 } }; static const u16 sAcceptedSerialNos[] = { @@ -1753,7 +1753,7 @@ static void sub_801084C(u8 taskId) { if (AreNoPlayersReceiving()) { - Rfu.blockRequestType = 0; + Rfu.blockRequestType = BLOCK_REQ_SIZE_NONE; RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_REQ); gTasks[taskId].data[0]++; } diff --git a/src/record_mixing.c b/src/record_mixing.c index aa6e4eef2aac..2f551436e007 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -499,7 +499,7 @@ static void Task_SendPacket(u8 taskId) break; case 1: if (GetMultiplayerId() == 0) - SendBlockRequest(1); + SendBlockRequest(BLOCK_REQ_SIZE_200); task->data[0]++; break; case 2: diff --git a/src/trade.c b/src/trade.c index 78d7399fa3e8..da994011b781 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1008,9 +1008,7 @@ static bool8 BufferTradeParties(void) break; case 3: if (id == 0) - { - RequestLinkData(1); - } + RequestLinkData(BLOCK_REQ_SIZE_200); sTradeMenuData->bufferPartyState++; break; case 4: @@ -1027,9 +1025,7 @@ static bool8 BufferTradeParties(void) break; case 7: if (id == 0) - { - RequestLinkData(1); - } + RequestLinkData(BLOCK_REQ_SIZE_200); sTradeMenuData->bufferPartyState++; break; case 8: @@ -1046,9 +1042,7 @@ static bool8 BufferTradeParties(void) break; case 11: if (id == 0) - { - RequestLinkData(1); - } + RequestLinkData(BLOCK_REQ_SIZE_200); sTradeMenuData->bufferPartyState++; break; case 12: @@ -1065,9 +1059,7 @@ static bool8 BufferTradeParties(void) break; case 15: if (id == 0) - { - RequestLinkData(3); - } + RequestLinkData(BLOCK_REQ_SIZE_220); sTradeMenuData->bufferPartyState++; break; case 16: @@ -1084,9 +1076,7 @@ static bool8 BufferTradeParties(void) break; case 19: if (id == 0) - { - RequestLinkData(4); - } + RequestLinkData(BLOCK_REQ_SIZE_40); sTradeMenuData->bufferPartyState++; break; case 20: @@ -3096,7 +3086,7 @@ static void TrySendTradeFinishData(void) case 1: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), sTradeData->linkData, sizeof(sTradeData->linkData)); + SendBlock(BitmaskAllOtherLinkPlayers(), sTradeData->linkData, sizeof(sTradeData->linkData)); sTradeData->sendTradeFinishState++; } // fallthrough @@ -4632,7 +4622,7 @@ static void CB2_TryFinishTrade(void) && sTradeData->partnerLinkFlagFinishTrade == READY_FINISH_TRADE) { sTradeData->linkData[0] = LINKCMD_CONFIRM_FINISH_TRADE; - SendBlock(bitmask_all_link_players_but_self(), sTradeData->linkData, sizeof(sTradeData->linkData)); + SendBlock(BitmaskAllOtherLinkPlayers(), sTradeData->linkData, sizeof(sTradeData->linkData)); sTradeData->playerLinkFlagFinishTrade = FINISH_TRADE; sTradeData->partnerLinkFlagFinishTrade = FINISH_TRADE; } diff --git a/src/union_room.c b/src/union_room.c index d9242bf9c184..c2bc47aa4c45 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1494,7 +1494,7 @@ static void Task_ExchangeCards(u8 taskId) { case 0: if (GetMultiplayerId() == 0) - SendBlockRequest(2); + SendBlockRequest(BLOCK_REQ_SIZE_100); gTasks[taskId].data[0]++; break; case 1: From 8f5e2bbebaae3857cbe95b40b0d889f73f7d80f0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 21 Aug 2021 11:04:28 -0400 Subject: [PATCH 261/762] Label swap line margin flag --- include/menu_helpers.h | 5 +---- src/battle_pyramid_bag.c | 2 +- src/item_menu_icons.c | 2 +- src/menu_helpers.c | 10 +++++++--- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 1434efcf3ddc..df71ce25213a 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -7,7 +7,7 @@ #define MENU_L_PRESSED 1 #define MENU_R_PRESSED 2 -// Exported type declarations +#define SWAP_LINE_HAS_MARGIN (1 << 7) struct YesNoFuncTable { @@ -15,9 +15,6 @@ struct YesNoFuncTable TaskFunc noFunc; }; -// Exported RAM declarations - -// Exported ROM declarations void ResetVramOamAndBgCntRegs(void); void ResetAllBgsCoordinates(void); void SetVBlankHBlankCallbacksToNull(void); diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 83bf35090b79..9cc65e14d6b0 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -1608,5 +1608,5 @@ static void SetSwapLineInvisibility(bool8 invisible) static void UpdateSwapLinePos(u8 y) { - UpdateSwapLineSpritesPos(&gPyramidBagMenu->spriteIds[PBAG_SPRITE_SWAP_LINE_START], NUM_SWAP_LINE_SPRITES | 0x80, 120, (y + 1) * 16); + UpdateSwapLineSpritesPos(&gPyramidBagMenu->spriteIds[PBAG_SPRITE_SWAP_LINE_START], NUM_SWAP_LINE_SPRITES | SWAP_LINE_HAS_MARGIN, 120, (y + 1) * 16); } diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index c8d1cd8d0888..8bcf506fbfee 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -559,7 +559,7 @@ void SetItemMenuSwapLineInvisibility(bool8 invisible) void UpdateItemMenuSwapLinePos(u8 y) { - UpdateSwapLineSpritesPos(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH | 0x80, 120, (y + 1) * 16); + UpdateSwapLineSpritesPos(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH | SWAP_LINE_HAS_MARGIN, 120, (y + 1) * 16); } static void sub_80D5018(void *mem0, void *mem1) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 3e8148a42b3e..95b67f78c340 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -440,12 +440,16 @@ void SetSwapLineSpritesInvisibility(u8 *spriteIds, u8 count, bool8 invisible) void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y) { u8 i; - bool8 unknownBit = count & 0x80; - count &= ~(0x80); + bool8 hasMargin = count & SWAP_LINE_HAS_MARGIN; + count &= ~SWAP_LINE_HAS_MARGIN; for (i = 0; i < count; i++) { - if (i == count - 1 && unknownBit) + // If the list menu has a right margin, the swap line + // shouldn't extend all the way to the edge of the screen. + // If this is the last sprite in the line, move it a bit + // to the left to keep it out of the margin. + if (i == count - 1 && hasMargin) gSprites[spriteIds[i]].x2 = x - 8; else gSprites[spriteIds[i]].x2 = x; From 554210c5e315e786ddc6eef888e9ff6065ad73f8 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Tue, 24 Aug 2021 19:59:32 -0300 Subject: [PATCH 262/762] Removed trailing spaces in the most relevant files Command used for the job: egrep -rl ' $' --include *.c --include *.h --include *.s --include *.inc --include *.txt * | xargs sed -i 's/\s\+$//g' Credits to Grant Murphy from Stack Overflow. --- asm/macros/battle_frontier/apprentice.inc | 6 +- asm/macros/battle_frontier/battle_factory.inc | 2 +- asm/macros/battle_frontier/battle_palace.inc | 2 +- asm/macros/battle_frontier/battle_pyramid.inc | 12 +- asm/macros/battle_tent.inc | 18 +- asm/macros/event.inc | 60 +- data/contest_ai_scripts.s | 6 +- data/maps/BattleFrontier_Lounge2/scripts.inc | 2 +- data/maps/DewfordTown/scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/LilycoveCity_Harbor/scripts.inc | 2 +- data/maps/Route104/scripts.inc | 2 +- data/maps/Route109/scripts.inc | 2 +- data/maps/VictoryRoad_1F/scripts.inc | 2 +- data/scripts/berry_blender.inc | 2 +- gflib/io_reg.c | 4 +- gflib/sprite.c | 8 +- gflib/string_util.c | 22 +- gflib/text.h | 4 +- include/constants/battle_dome.h | 2 +- include/constants/battle_frontier_trainers.h | 2 +- include/constants/battle_pyramid.h | 2 +- include/constants/field_effects.h | 2 +- include/constants/flags.h | 26 +- include/constants/item_effects.h | 2 +- include/constants/lilycove_lady.h | 4 +- include/constants/map_scripts.h | 2 +- include/constants/metatile_labels.h | 4 +- include/constants/party_menu.h | 16 +- include/constants/pokemon.h | 2 +- include/constants/script_menu.h | 6 +- include/constants/songs.h | 2 +- include/constants/tv.h | 2 +- include/constants/vars.h | 2 +- include/constants/weather.h | 2 +- include/event_scripts.h | 74 +- include/global.fieldmap.h | 2 +- include/global.h | 4 +- include/librfu.h | 14 +- include/link.h | 4 +- include/overworld.h | 2 +- include/pokeball.h | 2 +- include/pokemon_storage_system.h | 4 +- include/strings.h | 72 +- include/trainer_hill.h | 10 +- sound/cry_tables.inc | 1552 +++++++-------- sound/songs/se_m_absorb.s | 2 +- sound/songs/se_m_absorb_2.s | 20 +- sound/songs/se_m_acid_armor.s | 30 +- sound/songs/se_m_attract2.s | 6 +- sound/songs/se_m_bite.s | 6 +- sound/songs/se_m_bonemerang.s | 10 +- sound/songs/se_m_brick_break.s | 10 +- sound/songs/se_m_bubble.s | 2 +- sound/songs/se_m_bubble3.s | 2 +- sound/songs/se_m_charm.s | 2 +- sound/songs/se_m_confuse_ray.s | 4 +- sound/songs/se_m_cosmic_power.s | 20 +- sound/songs/se_m_detect.s | 8 +- sound/songs/se_m_dig.s | 2 +- sound/songs/se_m_dive.s | 4 +- sound/songs/se_m_dizzy_punch.s | 2 +- sound/songs/se_m_dragon_rage.s | 10 +- sound/songs/se_m_earthquake.s | 36 +- sound/songs/se_m_encore2.s | 2 +- sound/songs/se_m_explosion.s | 12 +- sound/songs/se_m_flamethrower.s | 2 +- sound/songs/se_m_flatter.s | 4 +- sound/songs/se_m_grasswhistle.s | 12 +- sound/songs/se_m_hail.s | 14 +- sound/songs/se_m_haze.s | 18 +- sound/songs/se_m_heal_bell.s | 4 +- sound/songs/se_m_heat_wave.s | 2 +- sound/songs/se_m_hydro_pump.s | 2 +- sound/songs/se_m_hyper_beam.s | 18 +- sound/songs/se_m_hyper_beam2.s | 18 +- sound/songs/se_m_icy_wind.s | 6 +- sound/songs/se_m_lock_on.s | 2 +- sound/songs/se_m_milk_drink.s | 2 +- sound/songs/se_m_minimize.s | 2 +- sound/songs/se_m_moonlight.s | 50 +- sound/songs/se_m_morning_sun.s | 2 +- sound/songs/se_m_nightmare.s | 34 +- sound/songs/se_m_petal_dance.s | 8 +- sound/songs/se_m_rain_dance.s | 2 +- sound/songs/se_m_reversal.s | 22 +- sound/songs/se_m_sacred_fire.s | 6 +- sound/songs/se_m_sand_tomb.s | 14 +- sound/songs/se_m_sandstorm.s | 20 +- sound/songs/se_m_self_destruct.s | 4 +- sound/songs/se_m_sing.s | 4 +- sound/songs/se_m_sketch.s | 4 +- sound/songs/se_m_sky_uppercut.s | 6 +- sound/songs/se_m_snore.s | 18 +- sound/songs/se_m_solar_beam.s | 2 +- sound/songs/se_m_spit_up.s | 4 +- sound/songs/se_m_stat_decrease.s | 82 +- sound/songs/se_m_stat_increase.s | 82 +- sound/songs/se_m_strength.s | 4 +- sound/songs/se_m_string_shot2.s | 12 +- sound/songs/se_m_supersonic.s | 2 +- sound/songs/se_m_sweet_scent.s | 4 +- sound/songs/se_m_swift.s | 2 +- sound/songs/se_m_teleport.s | 2 +- sound/songs/se_m_thunder_wave.s | 8 +- sound/songs/se_m_toxic.s | 14 +- sound/songs/se_m_tri_attack.s | 12 +- sound/songs/se_m_tri_attack2.s | 2 +- sound/songs/se_m_twister.s | 4 +- sound/songs/se_m_vital_throw.s | 6 +- sound/songs/se_m_vital_throw2.s | 8 +- sound/songs/se_m_waterfall.s | 8 +- sound/songs/se_m_whirlpool.s | 2 +- sound/songs/se_win_open.s | 2 +- sound/voicegroups/voicegroup000.inc | 124 +- sound/voicegroups/voicegroup001.inc | 58 +- sound/voicegroups/voicegroup002.inc | 108 +- sound/voicegroups/voicegroup003.inc | 108 +- sound/voicegroups/voicegroup004.inc | 180 +- sound/voicegroups/voicegroup005.inc | 8 +- sound/voicegroups/voicegroup006.inc | 6 +- sound/voicegroups/voicegroup007.inc | 262 +-- sound/voicegroups/voicegroup008.inc | 4 +- sound/voicegroups/voicegroup009.inc | 4 +- sound/voicegroups/voicegroup010.inc | 168 +- sound/voicegroups/voicegroup011.inc | 256 +-- sound/voicegroups/voicegroup012.inc | 204 +- sound/voicegroups/voicegroup013.inc | 180 +- sound/voicegroups/voicegroup014.inc | 170 +- sound/voicegroups/voicegroup015.inc | 184 +- sound/voicegroups/voicegroup016.inc | 130 +- sound/voicegroups/voicegroup017.inc | 182 +- sound/voicegroups/voicegroup018.inc | 256 +-- sound/voicegroups/voicegroup019.inc | 170 +- sound/voicegroups/voicegroup020.inc | 174 +- sound/voicegroups/voicegroup021.inc | 102 +- sound/voicegroups/voicegroup022.inc | 130 +- sound/voicegroups/voicegroup023.inc | 178 +- sound/voicegroups/voicegroup024.inc | 182 +- sound/voicegroups/voicegroup025.inc | 168 +- sound/voicegroups/voicegroup026.inc | 170 +- sound/voicegroups/voicegroup027.inc | 256 +-- sound/voicegroups/voicegroup028.inc | 166 +- sound/voicegroups/voicegroup029.inc | 176 +- sound/voicegroups/voicegroup030.inc | 110 +- sound/voicegroups/voicegroup031.inc | 130 +- sound/voicegroups/voicegroup032.inc | 256 +-- sound/voicegroups/voicegroup033.inc | 166 +- sound/voicegroups/voicegroup034.inc | 168 +- sound/voicegroups/voicegroup035.inc | 170 +- sound/voicegroups/voicegroup036.inc | 256 +-- sound/voicegroups/voicegroup037.inc | 178 +- sound/voicegroups/voicegroup038.inc | 164 +- sound/voicegroups/voicegroup039.inc | 256 +-- sound/voicegroups/voicegroup040.inc | 256 +-- sound/voicegroups/voicegroup041.inc | 256 +-- sound/voicegroups/voicegroup042.inc | 256 +-- sound/voicegroups/voicegroup043.inc | 162 +- sound/voicegroups/voicegroup044.inc | 162 +- sound/voicegroups/voicegroup045.inc | 256 +-- sound/voicegroups/voicegroup046.inc | 256 +-- sound/voicegroups/voicegroup047.inc | 256 +-- sound/voicegroups/voicegroup048.inc | 176 +- sound/voicegroups/voicegroup049.inc | 256 +-- sound/voicegroups/voicegroup050.inc | 256 +-- sound/voicegroups/voicegroup051.inc | 148 +- sound/voicegroups/voicegroup052.inc | 256 +-- sound/voicegroups/voicegroup053.inc | 256 +-- sound/voicegroups/voicegroup054.inc | 256 +-- sound/voicegroups/voicegroup055.inc | 256 +-- sound/voicegroups/voicegroup056.inc | 256 +-- sound/voicegroups/voicegroup057.inc | 256 +-- sound/voicegroups/voicegroup058.inc | 256 +-- sound/voicegroups/voicegroup059.inc | 178 +- sound/voicegroups/voicegroup060.inc | 256 +-- sound/voicegroups/voicegroup061.inc | 256 +-- sound/voicegroups/voicegroup062.inc | 256 +-- sound/voicegroups/voicegroup063.inc | 256 +-- sound/voicegroups/voicegroup064.inc | 256 +-- sound/voicegroups/voicegroup065.inc | 256 +-- sound/voicegroups/voicegroup066.inc | 256 +-- sound/voicegroups/voicegroup067.inc | 256 +-- sound/voicegroups/voicegroup068.inc | 256 +-- sound/voicegroups/voicegroup069.inc | 256 +-- sound/voicegroups/voicegroup070.inc | 256 +-- sound/voicegroups/voicegroup071.inc | 256 +-- sound/voicegroups/voicegroup072.inc | 256 +-- sound/voicegroups/voicegroup073.inc | 256 +-- sound/voicegroups/voicegroup074.inc | 256 +-- sound/voicegroups/voicegroup075.inc | 256 +-- sound/voicegroups/voicegroup076.inc | 256 +-- sound/voicegroups/voicegroup077.inc | 256 +-- sound/voicegroups/voicegroup078.inc | 256 +-- sound/voicegroups/voicegroup079.inc | 256 +-- sound/voicegroups/voicegroup080.inc | 256 +-- sound/voicegroups/voicegroup081.inc | 4 +- sound/voicegroups/voicegroup082.inc | 256 +-- sound/voicegroups/voicegroup083.inc | 168 +- sound/voicegroups/voicegroup084.inc | 256 +-- sound/voicegroups/voicegroup085.inc | 256 +-- sound/voicegroups/voicegroup086.inc | 256 +-- sound/voicegroups/voicegroup087.inc | 256 +-- sound/voicegroups/voicegroup088.inc | 256 +-- sound/voicegroups/voicegroup089.inc | 256 +-- sound/voicegroups/voicegroup090.inc | 256 +-- sound/voicegroups/voicegroup091.inc | 256 +-- sound/voicegroups/voicegroup092.inc | 256 +-- sound/voicegroups/voicegroup093.inc | 256 +-- sound/voicegroups/voicegroup094.inc | 256 +-- sound/voicegroups/voicegroup095.inc | 256 +-- sound/voicegroups/voicegroup096.inc | 256 +-- sound/voicegroups/voicegroup097.inc | 256 +-- sound/voicegroups/voicegroup098.inc | 256 +-- sound/voicegroups/voicegroup099.inc | 256 +-- sound/voicegroups/voicegroup100.inc | 256 +-- sound/voicegroups/voicegroup101.inc | 220 +-- sound/voicegroups/voicegroup102.inc | 164 +- sound/voicegroups/voicegroup103.inc | 256 +-- sound/voicegroups/voicegroup104.inc | 216 +- sound/voicegroups/voicegroup105.inc | 166 +- sound/voicegroups/voicegroup106.inc | 256 +-- sound/voicegroups/voicegroup107.inc | 256 +-- sound/voicegroups/voicegroup108.inc | 256 +-- sound/voicegroups/voicegroup109.inc | 166 +- sound/voicegroups/voicegroup110.inc | 256 +-- sound/voicegroups/voicegroup111.inc | 256 +-- sound/voicegroups/voicegroup112.inc | 256 +-- sound/voicegroups/voicegroup113.inc | 256 +-- sound/voicegroups/voicegroup114.inc | 256 +-- sound/voicegroups/voicegroup115.inc | 256 +-- sound/voicegroups/voicegroup116.inc | 256 +-- sound/voicegroups/voicegroup117.inc | 164 +- sound/voicegroups/voicegroup118.inc | 182 +- sound/voicegroups/voicegroup119.inc | 182 +- sound/voicegroups/voicegroup120.inc | 182 +- sound/voicegroups/voicegroup121.inc | 172 +- sound/voicegroups/voicegroup122.inc | 168 +- sound/voicegroups/voicegroup123.inc | 256 +-- sound/voicegroups/voicegroup124.inc | 174 +- sound/voicegroups/voicegroup125.inc | 168 +- sound/voicegroups/voicegroup126.inc | 256 +-- sound/voicegroups/voicegroup127.inc | 256 +-- sound/voicegroups/voicegroup128.inc | 258 +-- sound/voicegroups/voicegroup129.inc | 256 +-- sound/voicegroups/voicegroup130.inc | 358 ++-- sound/voicegroups/voicegroup131.inc | 256 +-- sound/voicegroups/voicegroup132.inc | 256 +-- sound/voicegroups/voicegroup133.inc | 256 +-- sound/voicegroups/voicegroup134.inc | 180 +- sound/voicegroups/voicegroup135.inc | 166 +- sound/voicegroups/voicegroup136.inc | 256 +-- sound/voicegroups/voicegroup137.inc | 256 +-- sound/voicegroups/voicegroup138.inc | 256 +-- sound/voicegroups/voicegroup139.inc | 256 +-- sound/voicegroups/voicegroup140.inc | 8 +- sound/voicegroups/voicegroup141.inc | 256 +-- sound/voicegroups/voicegroup142.inc | 168 +- sound/voicegroups/voicegroup143.inc | 256 +-- sound/voicegroups/voicegroup144.inc | 256 +-- sound/voicegroups/voicegroup145.inc | 256 +-- sound/voicegroups/voicegroup146.inc | 256 +-- sound/voicegroups/voicegroup147.inc | 168 +- sound/voicegroups/voicegroup148.inc | 256 +-- sound/voicegroups/voicegroup149.inc | 186 +- sound/voicegroups/voicegroup150.inc | 256 +-- sound/voicegroups/voicegroup151.inc | 176 +- sound/voicegroups/voicegroup152.inc | 256 +-- sound/voicegroups/voicegroup153.inc | 256 +-- sound/voicegroups/voicegroup154.inc | 186 +- sound/voicegroups/voicegroup155.inc | 256 +-- sound/voicegroups/voicegroup156.inc | 256 +-- sound/voicegroups/voicegroup157.inc | 256 +-- sound/voicegroups/voicegroup158.inc | 256 +-- sound/voicegroups/voicegroup159.inc | 256 +-- sound/voicegroups/voicegroup160.inc | 176 +- sound/voicegroups/voicegroup161.inc | 256 +-- sound/voicegroups/voicegroup162.inc | 186 +- sound/voicegroups/voicegroup163.inc | 256 +-- sound/voicegroups/voicegroup164.inc | 256 +-- sound/voicegroups/voicegroup165.inc | 256 +-- sound/voicegroups/voicegroup166.inc | 256 +-- sound/voicegroups/voicegroup167.inc | 256 +-- sound/voicegroups/voicegroup168.inc | 256 +-- sound/voicegroups/voicegroup169.inc | 256 +-- sound/voicegroups/voicegroup170.inc | 168 +- sound/voicegroups/voicegroup171.inc | 182 +- sound/voicegroups/voicegroup172.inc | 256 +-- sound/voicegroups/voicegroup173.inc | 256 +-- sound/voicegroups/voicegroup174.inc | 314 +-- sound/voicegroups/voicegroup175.inc | 104 +- sound/voicegroups/voicegroup176.inc | 96 +- sound/voicegroups/voicegroup177.inc | 180 +- sound/voicegroups/voicegroup178.inc | 176 +- sound/voicegroups/voicegroup179.inc | 176 +- sound/voicegroups/voicegroup180.inc | 256 +-- sound/voicegroups/voicegroup181.inc | 94 +- sound/voicegroups/voicegroup182.inc | 176 +- sound/voicegroups/voicegroup183.inc | 256 +-- sound/voicegroups/voicegroup184.inc | 172 +- sound/voicegroups/voicegroup185.inc | 256 +-- sound/voicegroups/voicegroup186.inc | 256 +-- sound/voicegroups/voicegroup187.inc | 256 +-- sound/voicegroups/voicegroup188.inc | 256 +-- sound/voicegroups/voicegroup189.inc | 184 +- sound/voicegroups/voicegroup190.inc | 176 +- src/apprentice.c | 10 +- src/battle_ai_switch_items.c | 2 +- src/battle_anim_effects_2.c | 2 +- src/battle_anim_electric.c | 2 +- src/battle_anim_fire.c | 6 +- src/battle_anim_flying.c | 2 +- src/battle_anim_ground.c | 2 +- src/battle_anim_normal.c | 6 +- src/battle_anim_psychic.c | 6 +- src/battle_anim_smokescreen.c | 58 +- src/battle_anim_sound_tasks.c | 4 +- src/battle_anim_status_effects.c | 38 +- src/battle_anim_throw.c | 8 +- src/battle_anim_water.c | 2 +- src/battle_controller_opponent.c | 30 +- src/battle_controller_player.c | 8 +- src/battle_controller_recorded_opponent.c | 4 +- src/battle_controller_wally.c | 4 +- src/battle_dome.c | 2 +- src/battle_factory.c | 12 +- src/battle_factory_screen.c | 10 +- src/battle_gfx_sfx_util.c | 4 +- src/battle_interface.c | 288 +-- src/battle_main.c | 6 +- src/battle_message.c | 4 +- src/battle_palace.c | 30 +- src/battle_pyramid_bag.c | 14 +- src/battle_script_commands.c | 14 +- src/battle_setup.c | 28 +- src/battle_tower.c | 6 +- src/battle_tv.c | 580 +++--- src/battle_util.c | 12 +- src/berry_blender.c | 62 +- src/berry_crush.c | 304 +-- src/berry_fix_program.c | 94 +- src/berry_powder.c | 84 +- src/bike.c | 2 +- src/cable_car.c | 4 +- src/cable_club.c | 12 +- src/contest.c | 22 +- src/contest_ai.c | 4 +- src/contest_effect.c | 6 +- src/contest_link.c | 4 +- src/contest_link_util.c | 10 +- src/contest_util.c | 8 +- src/credits.c | 14 +- src/crt0.s | 2 +- src/data/battle_frontier/apprentice.h | 18 +- .../battle_frontier_exchange_corner.h | 82 +- .../battle_frontier_trainer_mons.h | 772 ++++---- src/data/battle_frontier/battle_tent.h | 192 +- src/data/battle_frontier/trainer_hill.h | 544 ++--- src/data/contest_opponents.h | 8 +- src/data/contest_text_tables.h | 2 +- src/data/decoration/header.h | 240 +-- src/data/decoration/icon.h | 2 +- src/data/field_effects/field_effect_objects.h | 30 +- src/data/graphics/rayquaza_scene.h | 2 +- src/data/lilycove_lady.h | 4 +- src/data/object_events/object_event_anims.h | 2 +- .../object_events/object_event_subsprites.h | 1742 ++++++++--------- src/data/party_menu.h | 36 +- src/data/region_map/city_map_entries.h | 2 +- src/data/script_menu.h | 42 +- src/data/text/gift_ribbon_descriptions.h | 2 +- src/data/text/match_call_messages.h | 2 +- src/data/text/nature_names.h | 2 +- src/data/text/ribbon_descriptions.h | 2 +- src/data/trade.h | 58 +- src/data/union_room.h | 96 +- src/daycare.c | 2 +- src/dewford_trend.c | 28 +- src/dodrio_berry_picking.c | 258 +-- src/easy_chat.c | 26 +- src/ereader_helpers.c | 2 +- src/ereader_screen.c | 2 +- src/event_object_movement.c | 6 +- src/evolution_scene.c | 2 +- src/field_door.c | 6 +- src/field_effect.c | 88 +- src/field_effect_helpers.c | 28 +- src/field_message_box.c | 2 +- src/field_player_avatar.c | 16 +- src/field_special_scene.c | 8 +- src/field_specials.c | 330 ++-- src/field_weather.c | 4 +- src/fldeff_escalator.c | 4 +- src/frontier_pass.c | 12 +- src/frontier_util.c | 2 +- src/hall_of_fame.c | 50 +- src/image_processing_effects.c | 6 +- src/intro.c | 22 +- src/intro_credits_graphics.c | 4 +- src/item_menu.c | 36 +- src/item_use.c | 2 +- src/librfu_rfu.c | 2 +- src/librfu_stwi.c | 6 +- src/lilycove_lady.c | 8 +- src/link.c | 8 +- src/link_rfu_2.c | 20 +- src/link_rfu_3.c | 296 +-- src/mail.c | 164 +- src/main_menu.c | 36 +- src/match_call.c | 14 +- src/mauville_old_man.c | 216 +- src/menu.c | 10 +- src/menu_helpers.c | 2 +- src/metatile_behavior.c | 6 +- src/minigame_countdown.c | 2 +- src/mirage_tower.c | 8 +- src/move_relearner.c | 24 +- src/naming_screen.c | 236 +-- src/overworld.c | 8 +- src/palette.c | 8 +- src/palette_util.c | 6 +- src/player_pc.c | 18 +- src/pokeblock.c | 6 +- src/pokeblock_feed.c | 10 +- src/pokedex.c | 2 +- src/pokedex_area_screen.c | 2 +- src/pokedex_cry_screen.c | 6 +- src/pokemon.c | 8 +- src/pokemon_animation.c | 4 +- src/pokemon_icon.c | 6 +- src/pokemon_jump.c | 82 +- src/pokemon_storage_system.c | 34 +- src/pokenav.c | 30 +- src/pokenav_conditions_1.c | 2 +- src/pokenav_conditions_2.c | 10 +- src/pokenav_conditions_3.c | 6 +- src/pokenav_match_call_1.c | 10 +- src/pokenav_match_call_2.c | 24 +- src/pokenav_match_call_data.c | 60 +- src/pokenav_match_call_ui.c | 8 +- src/pokenav_menu_handler_2.c | 14 +- src/pokenav_region_map.c | 14 +- src/pokenav_ribbons_2.c | 6 +- src/post_battle_event_funcs.c | 2 +- src/rayquaza_scene.c | 2 +- src/record_mixing.c | 2 +- src/reset_rtc_screen.c | 40 +- src/rotating_tile_puzzle.c | 6 +- src/roulette.c | 30 +- src/scrcmd.c | 4 +- src/script_movement.c | 2 +- src/secret_base.c | 28 +- src/slot_machine.c | 1112 +++++------ src/start_menu.c | 12 +- src/strings.c | 2 +- src/title_screen.c | 2 +- src/trade.c | 20 +- src/trainer_card.c | 28 +- src/trainer_hill.c | 12 +- src/tv.c | 130 +- src/union_room.c | 44 +- src/union_room_battle.c | 2 +- src/union_room_chat.c | 236 +-- src/union_room_player_avatar.c | 50 +- src/use_pokeblock.c | 14 +- src/wireless_communication_status_screen.c | 6 +- tools/gbagfx/rl.c | 2 +- 466 files changed, 26907 insertions(+), 26907 deletions(-) diff --git a/asm/macros/battle_frontier/apprentice.inc b/asm/macros/battle_frontier/apprentice.inc index 5d9ab8e3b91b..83871880b636 100644 --- a/asm/macros/battle_frontier/apprentice.inc +++ b/asm/macros/battle_frontier/apprentice.inc @@ -53,7 +53,7 @@ special CallApprenticeFunction .endm - @ Always returns TRUE. No side effect. May have been for debug or dummied for some other reason + @ Always returns TRUE. No side effect. May have been for debug or dummied for some other reason .macro apprentice_shouldcheckgone setvar VAR_0x8004, APPRENTICE_FUNC_CHECK_GONE special CallApprenticeFunction @@ -109,7 +109,7 @@ special CallApprenticeFunction .endm - @ Set which mon the Apprentice should lead with + @ Set which mon the Apprentice should lead with .macro apprentice_setleadmon monId:req copyvar VAR_0x8005, \monId setvar VAR_0x8004, APPRENTICE_FUNC_SET_LEAD_MON @@ -141,7 +141,7 @@ special CallApprenticeFunction .endm - @ Always returns TRUE. No side effect. May have been for debug or dummied for some other reason + @ Always returns TRUE. No side effect. May have been for debug or dummied for some other reason .macro apprentice_shouldleave setvar VAR_0x8004, APPRENTICE_FUNC_SHOULD_LEAVE special CallApprenticeFunction diff --git a/asm/macros/battle_frontier/battle_factory.inc b/asm/macros/battle_frontier/battle_factory.inc index 684eeb98dc81..2d49d446683b 100644 --- a/asm/macros/battle_frontier/battle_factory.inc +++ b/asm/macros/battle_frontier/battle_factory.inc @@ -88,7 +88,7 @@ .endm @ Return the FACTORY_STYLE_* dependent on what types of moves the opponents team has, or FACTORY_NUM_STYLES if multiple styles tie for the same amount of moves - .macro factory_getopponentstyle + .macro factory_getopponentstyle setvar VAR_0x8004, BATTLE_FACTORY_FUNC_GET_OPPONENT_STYLE special CallBattleFactoryFunction .endm diff --git a/asm/macros/battle_frontier/battle_palace.inc b/asm/macros/battle_frontier/battle_palace.inc index f326c115464d..37c80467a798 100644 --- a/asm/macros/battle_frontier/battle_palace.inc +++ b/asm/macros/battle_frontier/battle_palace.inc @@ -31,7 +31,7 @@ special CallBattlePalaceFunction .endm - @ Buffer the opponents intro speech to gStringVar4. Also used by Battle Arena and Factory + @ Buffer the opponents intro speech to gStringVar4. Also used by Battle Arena and Factory .macro palace_getopponentintro setvar VAR_0x8004, BATTLE_PALACE_FUNC_GET_OPPONENT_INTRO special CallBattlePalaceFunction diff --git a/asm/macros/battle_frontier/battle_pyramid.inc b/asm/macros/battle_frontier/battle_pyramid.inc index f8141e2dd60f..bb5069f18a2c 100644 --- a/asm/macros/battle_frontier/battle_pyramid.inc +++ b/asm/macros/battle_frontier/battle_pyramid.inc @@ -1,7 +1,7 @@ @ Initialize the Battle Pyramid challenge .macro pyramid_init setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_INIT - special CallBattlePyramidFunction + special CallBattlePyramidFunction .endm @ Get the value of some PYRAMID_DATA_*. See GetBattlePyramidData for the data types that can be retrieved @@ -59,7 +59,7 @@ @ Set the facility trainers to gBattleFrontierTrainers .macro pyramid_settrainers setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_SET_TRAINERS - special CallBattlePyramidFunction + special CallBattlePyramidFunction .endm @ Show the post-battle hint text @@ -68,11 +68,11 @@ special CallBattlePyramidFunction .endm - @ VAR_RESULT is 1 if player is on a Pyramid floor, 2 if on the Pyramid peak, 0 otherwise + @ 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 special CallBattlePyramidFunction - .endm + .endm @ Update the light around the player. 2 different modes, for setting or incrementing light. See PYRAMID_LIGHT_* .macro pyramid_updatelight radius:req, mode:req, sound=0xFFFF @@ -83,7 +83,7 @@ setvar VAR_0x8007, \sound .endif special CallBattlePyramidFunction - .endm + .endm @ Reset the held items to what they were at the start of the challenge .macro pyramid_clearhelditems @@ -100,5 +100,5 @@ @ Reset sketched moves and update the party order in the saveblock .macro pyramid_resetparty setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_RESTORE_PARTY - special CallBattlePyramidFunction + special CallBattlePyramidFunction .endm diff --git a/asm/macros/battle_tent.inc b/asm/macros/battle_tent.inc index 663d1d344d21..142457ed984b 100644 --- a/asm/macros/battle_tent.inc +++ b/asm/macros/battle_tent.inc @@ -26,7 +26,7 @@ special CallVerdanturfTentFunction .endm - @ Buffers the opponents intro speech to STR_VAR_4. Despite being a Verdanturf Tent function, it serves the same purpose for all 3 tents. + @ Buffers the opponents intro speech to STR_VAR_4. Despite being a Verdanturf Tent function, it serves the same purpose for all 3 tents. .macro battletent_getopponentintro setvar VAR_0x8004, VERDANTURF_TENT_FUNC_GET_OPPONENT_INTRO special CallVerdanturfTentFunction @@ -36,7 +36,7 @@ .macro verdanturftent_save challengeStatus:req setvar VAR_0x8004, VERDANTURF_TENT_FUNC_SAVE setvar VAR_0x8005, \challengeStatus - special CallVerdanturfTentFunction + special CallVerdanturfTentFunction .endm @ Set the prize item as randomly selected from a list. Randomness unnecessary, as the list is only 1 item @@ -49,7 +49,7 @@ .macro verdanturftent_giveprize setvar VAR_0x8004, VERDANTURF_TENT_FUNC_GIVE_PRIZE special CallVerdanturfTentFunction - .endm + .endm @ Fallarbor Tent @@ -79,7 +79,7 @@ setvar VAR_0x8004, FALLARBOR_TENT_FUNC_SAVE setvar VAR_0x8005, \challengeStatus special CallFallarborTentFunction - .endm + .endm @ Set the prize item as randomly selected from a list. Randomness unnecessary, as the list is only 1 item .macro fallarbortent_setrandomprize @@ -97,7 +97,7 @@ .macro fallarbortent_getopponentname setvar VAR_0x8004, FALLARBOR_TENT_FUNC_GET_OPPONENT_NAME special CallFallarborTentFunction - .endm + .endm @ Slateport Tent @@ -127,15 +127,15 @@ setvar VAR_0x8004, SLATEPORT_TENT_FUNC_SAVE setvar VAR_0x8005, \challengeStatus special CallSlateportTentFunction - .endm + .endm - @ Set the prize item as randomly selected from a list. Randomness unnecessary, as the list is only 1 item + @ Set the prize item as randomly selected from a list. Randomness unnecessary, as the list is only 1 item .macro slateporttent_setrandomprize setvar VAR_0x8004, SLATEPORT_TENT_FUNC_SET_RANDOM_PRIZE special CallSlateportTentFunction .endm - @ Give the current prize item. FALSE if no room for prize + @ Give the current prize item. FALSE if no room for prize .macro slateporttent_giveprize setvar VAR_0x8004, SLATEPORT_TENT_FUNC_GIVE_PRIZE special CallSlateportTentFunction @@ -157,7 +157,7 @@ .macro slateporttent_generateopponentmons setvar VAR_0x8004, SLATEPORT_TENT_FUNC_GENERATE_OPPONENT_MONS special CallSlateportTentFunction - .endm + .endm @ Slateport Tent's version of factory_generaterentalmons .macro slateporttent_generaterentalmons diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 73aef33b58e7..480684ef6e9d 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -274,8 +274,8 @@ .2byte \functionId .endm - @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific - @ commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock + @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific + @ commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock @ state, the script will remain blocked indefinitely (essentially a hang). .macro waitstate .byte 0x27 @@ -317,7 +317,7 @@ .byte 0x2d .endm - @ Sets the values of variables 0x8000, 0x8001, and 0x8002 to the current hour, minute, and second. In FRLG, + @ Sets the values of variables 0x8000, 0x8001, and 0x8002 to the current hour, minute, and second. In FRLG, @ this command sets those variables to zero. .macro gettime .byte 0x2e @@ -382,7 +382,7 @@ .byte \speed .endm - @ Sends the player to Warp warp on Map bank.map. If the specified warp is 0xFF, + @ Sends the player to Warp warp on Map bank.map. If the specified warp is 0xFF, @ then the player will instead be sent to (X, Y) on the map. .macro warp map:req, warp:req, X:req, Y:req .byte 0x39 @@ -434,7 +434,7 @@ .2byte \Y .endm - @ Sets the warp destination that a warp to Warp 127 on Map 127.127 will connect to. + @ Sets the warp destination that a warp to Warp 127 on Map 127.127 will connect to. @ Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). .macro setdynamicwarp map:req, warp:req, X:req, Y:req .byte 0x3f @@ -474,7 +474,7 @@ .byte 0x43 .endm - @ Attempts to add quantity of item index to the player's Bag. If the player has enough room, the item will be added and + @ Attempts to add quantity of item index 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 index:req, quantity=1 .byte 0x44 @@ -489,7 +489,7 @@ .2byte \quantity .endm - @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets VAR_RESULT to + @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets VAR_RESULT to @ TRUE if there is room, or FALSE is there is no room. .macro checkitemspace index:req, quantity:req .byte 0x46 @@ -505,7 +505,7 @@ .2byte \quantity .endm - @ Checks which Bag pocket the specified item belongs in, and writes the pocket value (POCKET_*) to VAR_RESULT. + @ Checks which Bag pocket the specified item belongs in, and writes the pocket value (POCKET_*) to VAR_RESULT. @ This script is used to show the name of the proper Bag pocket when the player receives an item via callstd (simplified to giveitem in XSE). .macro checkitemtype index:req .byte 0x48 @@ -544,7 +544,7 @@ .2byte \decoration .endm - @ Checks if the player has enough space in their PC to hold decoration. Sets VAR_RESULT to TRUE if there is room, or + @ Checks if the player has enough space in their PC to hold decoration. Sets VAR_RESULT to TRUE if there is room, or @ FALSE is there is no room. In FireRed, this command is a nop. (The argument is read, but not used for anything.) .macro checkdecorspace decoration:req .byte 0x4e @@ -567,9 +567,9 @@ .endif .endm - @ Blocks script execution until the movements being applied to the specified (index) Object finish. - @ If the specified Object is 0x0000, then the command will block script execution until all Objects - @ affected by applymovement finish their movements. If the specified Object is not currently being + @ Blocks script execution until the movements being applied to the specified (index) Object finish. + @ If the specified Object is 0x0000, then the command will block script execution until all Objects + @ affected by applymovement finish their movements. 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 index:req, map @@ -583,8 +583,8 @@ .endif .endm - @ Attempts to hide the specified (index) Object on the specified (map_group, map_num) map, - @ by setting its visibility flag if it has a valid one. If the Object does not have a valid + @ Attempts to hide the specified (index) Object on the specified (map_group, map_num) map, + @ by setting its visibility flag if it has a valid one. If the Object does not have a valid @ visibility flag, this command does nothing. @ If no map is specified, then the current map is used. .macro removeobject index:req, map @@ -598,7 +598,7 @@ .endif .endm - @ Unsets the specified (index) Object's visibility flag on the specified (map_group, map_num) map if it has a valid one. + @ Unsets the specified (index) Object's visibility flag on the specified (map_group, map_num) map if it has a valid one. @ If the Object does not have a valid visibility flag, this command does nothing. @ If no map is specified, then the current map is used. .macro addobject index:req, map @@ -740,7 +740,7 @@ .endm - @ Starts a trainer battle using the battle information stored in RAM (usually by trainerbattle, which actually calls this + @ Starts a trainer battle using the battle information stored in RAM (usually by trainerbattle, which actually calls this @ command behind-the-scenes), and blocks script execution until the battle finishes. .macro trainerbattlebegin .byte 0x5d @@ -781,7 +781,7 @@ .2byte \y .endm - @ Copies a live object event's xy position to its template, so that if the sprite goes off screen, + @ 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 index:req .byte 0x64 @@ -794,14 +794,14 @@ .byte \byte .endm - @ If a standard message box (or its text) is being drawn on-screen, this command blocks script execution until the + @ 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 .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 script bank 0, then the value of script bank 0 will be treated as + @ 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 script bank 0, then the value of script bank 0 will be treated as @ a pointer to the text. (You can use loadpointer to place a string pointer in a script bank.) .macro message text:req .byte 0x67 @@ -846,7 +846,7 @@ .byte \y .endm - @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. + @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. @ 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 @@ -859,7 +859,7 @@ @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with multichoiceId. - @ 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 0x00. + @ 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 0x00. @ 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 @@ -925,8 +925,8 @@ .byte \winnerId .endm - @ Displays the string at pointer as braille text in a standard message box. The string must be formatted to use braille - @ characters and needs to provide six extra starting characters that are skipped (in RS, these characters determined the + @ Displays the string at pointer as braille text in a standard message box. The string must be formatted to use braille + @ characters and needs to provide six extra starting characters that are skipped (in RS, these characters determined the @ box's size and position, but in Emerald these are calculated automatically). .macro braillemessage text:req .byte 0x78 @@ -996,7 +996,7 @@ .2byte \slot .endm - @ Writes the name of the item at index item to the specified buffer. If the specified index is larger than + @ Writes the name of the item at index item to the specified buffer. If the specified index is larger than @ the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. .macro bufferitemname out:req, item:req .byte 0x80 @@ -1112,7 +1112,7 @@ .byte \check .endm - @ If check is 0x00, this command will check if the player has money >= value; VAR_RESULT is set to TRUE if the player + @ If check is 0x00, this command will check if the player has money >= value; VAR_RESULT is set to TRUE if the player @ has enough money, or FALSE if they do not. .macro checkmoney value:req, check:req .byte 0x92 @@ -1446,7 +1446,7 @@ .2byte \box .endm - @ Sets the color of the text in standard message boxes. 0x00 produces blue (male) text, 0x01 produces red (female) text, + @ Sets the color of the text in standard message boxes. 0x00 produces blue (male) text, 0x01 produces red (female) text, @ 0xFF resets the color to the default for the current OW's gender, and all other values produce black text. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro textcolor color:req @@ -1454,7 +1454,7 @@ .byte \color .endm - @ The exact purpose of this command is unknown, but it is related to the blue help-text box that appears on the bottom + @ The exact purpose of this command is unknown, but it is related to the blue help-text box that appears on the bottom @ of the screen when the Main Menu is opened. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro loadhelp pointer:req @@ -1643,7 +1643,7 @@ .macro goto_if_lt dest:req @ LESS THAN goto_if 0, \dest - .endm + .endm .macro goto_if_eq dest:req @ EQUAL goto_if 1, \dest @@ -1677,7 +1677,7 @@ .macro call_if_lt dest:req @ LESS THAN call_if 0, \dest - .endm + .endm .macro call_if_eq dest:req @ EQUAL call_if 1, \dest diff --git a/data/contest_ai_scripts.s b/data/contest_ai_scripts.s index f0972264f021..ef4feb25ffd8 100644 --- a/data/contest_ai_scripts.s +++ b/data/contest_ai_scripts.s @@ -48,7 +48,7 @@ gContestAI_ScriptsTable:: .4byte AI_Nothing @ CONTEST_AI_DUMMY_25 -@ Unused. Encourages improving condition on the 1st appeal, or startling mons if the users turn is later +@ Unused. Encourages improving condition on the 1st appeal, or startling mons if the users turn is later AI_CheckTiming: if_appeal_num_not_eq 0, AI_CheckTiming_SkipCondition if_effect_not_eq CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, AI_CheckTiming_SkipCondition @@ -388,7 +388,7 @@ AI_CGM_AppealAsGoodAsPrevOnes_Last: score +20 end -@ Encourages move more for each opponent who will have a turn before the user +@ Encourages move more for each opponent who will have a turn before the user AI_CGM_AppealAsGoodAsPrevOne: if_user_order_eq MON_1, AI_CGM_AppealAsGoodAsPrevOne_1stUp if_user_order_eq MON_2, AI_CGM_AppealAsGoodAsPrevOne_2ndUp @@ -456,7 +456,7 @@ AI_CGM_BetterWhenAudienceExcited_Not1stUp: score +10 end -@ Encourage move more for each condition star the prev mons have +@ Encourage move more for each condition star the prev mons have AI_CGM_WorsenConditionOfPrevMons: if_user_order_eq MON_1, AI_CGM_End goto AI_CGM_WorsenConditionOfPrevMons_CheckMon1 diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc index 106d1d1793a8..d98a9f64e128 100644 --- a/data/maps/BattleFrontier_Lounge2/scripts.inc +++ b/data/maps/BattleFrontier_Lounge2/scripts.inc @@ -2,7 +2,7 @@ BattleFrontier_Lounge2_MapScripts:: .byte 0 @ This NPC gives hints about a random facility or battle mode. -@ For battle modes he gives generic advice +@ For battle modes he gives generic advice @ For facilities, depending on how far the player has progressed he will say either @ The name of the Frontier Brain there @ The type and description of the 3 pokemon they use in their silver battle diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index fdf8c785ef9e..52b9be26423c 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -4,7 +4,7 @@ .equ LOCALID_BRINEY_DEWFORD, 2 .equ LOCALID_BOAT_DEWFORD, 4 -.equ LOCALID_BOAT_R109, 1 +.equ LOCALID_BOAT_R109, 1 .equ LOCALID_BRINEY_R109, 2 .equ LOCALID_BOAT_R104, 7 diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc index 374bd8df736e..185d49551ce4 100644 --- a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc @@ -33,7 +33,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Dolls: .2byte DECOR_PIKACHU_DOLL .2byte DECOR_MARILL_DOLL .2byte DECOR_JIGGLYPUFF_DOLL - .2byte DECOR_DUSKULL_DOLL + .2byte DECOR_DUSKULL_DOLL .2byte DECOR_WYNAUT_DOLL .2byte DECOR_BALTOY_DOLL .2byte DECOR_KECLEON_DOLL diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index 8f7f7d15cae4..0e15c204866b 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -29,7 +29,7 @@ LilycoveCity_Harbor_EventScript_FerryAttendant:: goto_if_eq LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime compare VAR_TEMP_B, 4 goto_if_eq LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime - compare VAR_TEMP_B, 8 + compare VAR_TEMP_B, 8 goto_if_eq LilycoveCity_Harbor_EventScript_MysticTicketFirstTime compare VAR_TEMP_B, 0 goto_if_ne LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index 87880ab59b48..e527c055e3a8 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -1,4 +1,4 @@ -@ NOTE: Route 104's sail to Dewford script references local IDs from Dewford's map. +@ 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 diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index ff1ac4ac05a7..6c38a8bd7623 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -1,4 +1,4 @@ -@ NOTE: Route 109's sail to Dewford script references local IDs from Dewford's map. +@ NOTE: Route 109's sail to Dewford script references local IDs from Dewford's map. @ These are labeled in DewfordTown/scripts.inc Route109_MapScripts:: diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc index a194e61e0cb3..7f6669f7bd7f 100644 --- a/data/maps/VictoryRoad_1F/scripts.inc +++ b/data/maps/VictoryRoad_1F/scripts.inc @@ -84,7 +84,7 @@ VictoryRoad_1F_EventScript_EntranceWally:: msgbox VictoryRoad_1F_Text_WallyPostEntranceBattle, MSGBOX_NPC end -@ This Wally appears and remains at the exit after the Hall of Fame is entered +@ This Wally appears and remains at the exit after the Hall of Fame is entered VictoryRoad_1F_EventScript_ExitWally:: trainerbattle_single TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat specialvar VAR_RESULT, ShouldTryRematchBattle diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index 921fa9582c33..1e4f551690bb 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -641,7 +641,7 @@ BerryBlender_EventScript_DoLinkBerryBlending: fadescreen FADE_TO_BLACK removeobject 240 @ Unclear where these local IDs come from, removeobject 239 @ but presumably they'd be the 4 link players - removeobject 238 + removeobject 238 removeobject 237 special DoBerryBlending waitstate diff --git a/gflib/io_reg.c b/gflib/io_reg.c index 44364349d96e..66b8dbe64c5f 100644 --- a/gflib/io_reg.c +++ b/gflib/io_reg.c @@ -17,8 +17,8 @@ static const u32 sUnused[] = { (1 << 26) | (1 << 4) | (1 << 2) | (1 << 1), (1 << 26) | (1 << 4) | (1 << 3) | (1 << 1), (1 << 26) | (1 << 4) | (1 << 3) | (1 << 2) | (1 << 1), - (1 << 25) | (1 << 8), - (1 << 27) | (1 << 10), + (1 << 25) | (1 << 8), + (1 << 27) | (1 << 10), }; const u16 gOverworldBackgroundLayerFlags[] = { diff --git a/gflib/sprite.c b/gflib/sprite.c index 408daf6f9159..43432cf3a37e 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -248,7 +248,7 @@ static const AffineAnimCmdFunc sAffineAnimCmdFuncs[] = static const struct OamDimensions32 sOamDimensions32[3][4] = { - [ST_OAM_SQUARE] = + [ST_OAM_SQUARE] = { [SPRITE_SIZE(8x8)] = { 8, 8 }, [SPRITE_SIZE(16x16)] = { 16, 16 }, @@ -262,7 +262,7 @@ static const struct OamDimensions32 sOamDimensions32[3][4] = [SPRITE_SIZE(32x16)] = { 32, 16 }, [SPRITE_SIZE(64x32)] = { 64, 32 }, }, - [ST_OAM_V_RECTANGLE] = + [ST_OAM_V_RECTANGLE] = { [SPRITE_SIZE(8x16)] = { 8, 16 }, [SPRITE_SIZE(8x32)] = { 8, 32 }, @@ -273,7 +273,7 @@ static const struct OamDimensions32 sOamDimensions32[3][4] = static const struct OamDimensions sOamDimensions[3][4] = { - [ST_OAM_SQUARE] = + [ST_OAM_SQUARE] = { [SPRITE_SIZE(8x8)] = { 8, 8 }, [SPRITE_SIZE(16x16)] = { 16, 16 }, @@ -287,7 +287,7 @@ static const struct OamDimensions sOamDimensions[3][4] = [SPRITE_SIZE(32x16)] = { 32, 16 }, [SPRITE_SIZE(64x32)] = { 64, 32 }, }, - [ST_OAM_V_RECTANGLE] = + [ST_OAM_V_RECTANGLE] = { [SPRITE_SIZE(8x16)] = { 8, 16 }, [SPRITE_SIZE(8x32)] = { 8, 32 }, diff --git a/gflib/string_util.c b/gflib/string_util.c index 92f8eea5af28..addc7e4f28d2 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -384,18 +384,18 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src) u8 *StringBraille(u8 *dest, const u8 *src) { - const u8 setBrailleFont[] = { - EXT_CTRL_CODE_BEGIN, - EXT_CTRL_CODE_SIZE, - 6, - EOS + const u8 setBrailleFont[] = { + EXT_CTRL_CODE_BEGIN, + EXT_CTRL_CODE_SIZE, + 6, + EOS }; - const u8 gotoLine2[] = { - CHAR_NEWLINE, - EXT_CTRL_CODE_BEGIN, - EXT_CTRL_CODE_SHIFT_DOWN, - 2, - EOS + const u8 gotoLine2[] = { + CHAR_NEWLINE, + EXT_CTRL_CODE_BEGIN, + EXT_CTRL_CODE_SHIFT_DOWN, + 2, + EOS }; dest = StringCopy(dest, setBrailleFont); diff --git a/gflib/text.h b/gflib/text.h index 3edd0fc62452..f660eb8d1d02 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -18,7 +18,7 @@ #define CHAR_O_ACUTE 0x0E #define CHAR_O_CIRCUMFLEX 0x0F #define CHAR_OE 0x10 -#define CHAR_U_GRAVE 0x11 +#define CHAR_U_GRAVE 0x11 #define CHAR_U_ACUTE 0x12 #define CHAR_U_CIRCUMFLEX 0x13 #define CHAR_N_TILDE 0x14 @@ -258,7 +258,7 @@ #define PLACEHOLDER_ID_VERSION 0x7 #define PLACEHOLDER_ID_AQUA 0x8 #define PLACEHOLDER_ID_MAGMA 0x9 -#define PLACEHOLDER_ID_ARCHIE 0xA +#define PLACEHOLDER_ID_ARCHIE 0xA #define PLACEHOLDER_ID_MAXIE 0xB #define PLACEHOLDER_ID_KYOGRE 0xC #define PLACEHOLDER_ID_GROUDON 0xD diff --git a/include/constants/battle_dome.h b/include/constants/battle_dome.h index ea7310e559d9..adac0a938da3 100644 --- a/include/constants/battle_dome.h +++ b/include/constants/battle_dome.h @@ -118,7 +118,7 @@ #define MOVE_POINTS_ACCURATE 9 #define MOVE_POINTS_POWERFUL 10 // Most of the moves that are >= 100 power #define MOVE_POINTS_POPULAR 11 // Group seems arbitrary. All using it are TM/HMs, but its only 11/58 -#define MOVE_POINTS_LUCK 12 +#define MOVE_POINTS_LUCK 12 #define MOVE_POINTS_STRONG 13 // Most of the moves that are >= 90 power #define MOVE_POINTS_LOW_PP 14 #define MOVE_POINTS_EFFECT 15 // Moves with additional effects diff --git a/include/constants/battle_frontier_trainers.h b/include/constants/battle_frontier_trainers.h index 2914b153fac0..af530a7597bc 100644 --- a/include/constants/battle_frontier_trainers.h +++ b/include/constants/battle_frontier_trainers.h @@ -2,7 +2,7 @@ #define GUARD_CONSTANTS_BATTLE_FRONTIER_TRAINERS_H #define FRONTIER_TRAINER_BRADY 0 -#define FRONTIER_TRAINER_CONNER 1 +#define FRONTIER_TRAINER_CONNER 1 #define FRONTIER_TRAINER_BRADLEY 2 #define FRONTIER_TRAINER_CYBIL 3 #define FRONTIER_TRAINER_RODETTE 4 diff --git a/include/constants/battle_pyramid.h b/include/constants/battle_pyramid.h index 004df71552df..1be3c1115723 100644 --- a/include/constants/battle_pyramid.h +++ b/include/constants/battle_pyramid.h @@ -23,7 +23,7 @@ #define OBJ_POSITIONS_UNIFORM 0 #define OBJ_POSITIONS_IN_AND_NEAR_ENTRANCE 1 #define OBJ_POSITIONS_IN_AND_NEAR_EXIT 2 -#define OBJ_POSITIONS_NEAR_ENTRANCE 3 +#define OBJ_POSITIONS_NEAR_ENTRANCE 3 #define OBJ_POSITIONS_NEAR_EXIT 4 // Functions IDs for sBattlePyramidFunctions / CallBattlePyramidFunction diff --git a/include/constants/field_effects.h b/include/constants/field_effects.h index dc1085f7ca83..e02e01efbf5b 100644 --- a/include/constants/field_effects.h +++ b/include/constants/field_effects.h @@ -1,7 +1,7 @@ #ifndef GUARD_FIELD_EFFECT_CONSTANTS_H #define GUARD_FIELD_EFFECT_CONSTANTS_H -#define FLDEFF_EXCLAMATION_MARK_ICON 0 +#define FLDEFF_EXCLAMATION_MARK_ICON 0 #define FLDEFF_USE_CUT_ON_GRASS 1 #define FLDEFF_USE_CUT_ON_TREE 2 #define FLDEFF_SHADOW 3 diff --git a/include/constants/flags.h b/include/constants/flags.h index 6702fa5eece3..ef5a9a75e6e0 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -337,7 +337,7 @@ #define FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS 0x139 #define FLAG_RECEIVED_AURORA_TICKET 0x13A #define FLAG_RECEIVED_MYSTIC_TICKET 0x13B -#define FLAG_RECEIVED_OLD_SEA_MAP 0x13C +#define FLAG_RECEIVED_OLD_SEA_MAP 0x13C #define FLAG_UNUSED_MYSTERY_GIFT_0x13D 0x13D #define FLAG_UNUSED_MYSTERY_GIFT_0x13E 0x13E #define FLAG_UNUSED_MYSTERY_GIFT_0x13F 0x13F @@ -1135,18 +1135,18 @@ #define FLAG_ITEM_VICTORY_ROAD_B2F_FULL_HEAL 0x440 #define FLAG_ITEM_MT_PYRE_6F_TM_30 0x441 #define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26 0x442 -#define FLAG_ITEM_FIERY_PATH_TM06 0x443 -#define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444 -#define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445 -#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446 -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447 -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448 -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449 -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B -#define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C -#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D -#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E +#define FLAG_ITEM_FIERY_PATH_TM06 0x443 +#define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444 +#define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445 +#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B +#define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E #define FLAG_ITEM_ROUTE_121_CARBOS 0x44F #define FLAG_ITEM_ROUTE_123_ULTRA_BALL 0x450 #define FLAG_ITEM_ROUTE_126_GREEN_SHARD 0x451 diff --git a/include/constants/item_effects.h b/include/constants/item_effects.h index 9a6bcd05ecda..f08b17ee9a8b 100644 --- a/include/constants/item_effects.h +++ b/include/constants/item_effects.h @@ -23,7 +23,7 @@ #define ITEM3_POISON 0x10 #define ITEM3_SLEEP 0x20 #define ITEM3_LEVEL_UP 0x40 -#define ITEM3_GUARD_SPEC 0x80 // Works the same way as the move Mist. +#define ITEM3_GUARD_SPEC 0x80 // Works the same way as the move Mist. #define ITEM3_STATUS_ALL (ITEM3_CONFUSION | ITEM3_PARALYSIS | ITEM3_FREEZE | ITEM3_BURN | ITEM3_POISON | ITEM3_SLEEP) diff --git a/include/constants/lilycove_lady.h b/include/constants/lilycove_lady.h index 11b9b31e93d3..9c494823eab4 100644 --- a/include/constants/lilycove_lady.h +++ b/include/constants/lilycove_lady.h @@ -10,7 +10,7 @@ #define LILYCOVE_LADY_STATE_COMPLETED 1 #define LILYCOVE_LADY_STATE_PRIZE 2 -#define LILYCOVE_LADY_GIFT_THRESHOLD 5 +#define LILYCOVE_LADY_GIFT_THRESHOLD 5 #define QUIZ_AUTHOR_PLAYER 0 #define QUIZ_AUTHOR_OTHER_PLAYER 1 @@ -20,7 +20,7 @@ #define QUIZ_AUTHOR_NAME_LADY 0 #define QUIZ_AUTHOR_NAME_PLAYER 1 #define QUIZ_AUTHOR_NAME_OTHER_PLAYER 2 - + #define QUIZ_QUESTION_LEN 9 // Constants for how many good Pokéblocks the Contest Lady was given diff --git a/include/constants/map_scripts.h b/include/constants/map_scripts.h index 68d360955147..7a56cc9085df 100644 --- a/include/constants/map_scripts.h +++ b/include/constants/map_scripts.h @@ -9,7 +9,7 @@ They are numbered in the order that they will be called when entering a map (from a warp or camera transition). NOTE: These descriptions are just of what they generally do, not what they always or have to do - 3. ON_LOAD: Run after the layout is loaded (but not drawn yet). + 3. ON_LOAD: Run after the layout is loaded (but not drawn yet). Almost exclusively used to set metatiles on the map before it's first drawn 6. ON_FRAME_TABLE: Run every frame after the map has faded in, before player input is processed. diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index b5ef690469fd..6159bf6cb4e7 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -16,7 +16,7 @@ #define METATILE_General_MuddySlope_Frame2 0x0EA #define METATILE_General_MuddySlope_Frame3 0x0EB #define METATILE_General_SandPit_Center 0x121 -#define METATILE_General_Door 0x021 +#define METATILE_General_Door 0x021 #define METATILE_General_Door_PokeMart 0x041 #define METATILE_General_Door_PokeCenter 0x061 #define METATILE_General_Door_Gym 0x1CD @@ -35,7 +35,7 @@ #define METATILE_General_SecretBase_VineLeft 0x036 #define METATILE_General_SecretBase_VineRight 0x037 #define METATILE_General_RedCaveIndent 0x1A0 -#define METATILE_General_RedCaveOpen 0x1A1 +#define METATILE_General_RedCaveOpen 0x1A1 #define METATILE_General_YellowCaveIndent 0x1A8 #define METATILE_General_YellowCaveOpen 0x1A9 #define METATILE_General_BlueCaveIndent 0x1B0 diff --git a/include/constants/party_menu.h b/include/constants/party_menu.h index 7953967ed732..e31debb49be0 100644 --- a/include/constants/party_menu.h +++ b/include/constants/party_menu.h @@ -49,14 +49,14 @@ #define PARTY_LAYOUT_COUNT 4 #define KEEP_PARTY_LAYOUT 0xFF -#define PARTY_MENU_TYPE_FIELD 0 -#define PARTY_MENU_TYPE_IN_BATTLE 1 -#define PARTY_MENU_TYPE_CONTEST 2 -#define PARTY_MENU_TYPE_CHOOSE_MON 3 +#define PARTY_MENU_TYPE_FIELD 0 +#define PARTY_MENU_TYPE_IN_BATTLE 1 +#define PARTY_MENU_TYPE_CONTEST 2 +#define PARTY_MENU_TYPE_CHOOSE_MON 3 #define PARTY_MENU_TYPE_CHOOSE_HALF 4 // multi battles, eReader battles, and some battle facilities #define PARTY_MENU_TYPE_MULTI_SHOWCASE 5 -#define PARTY_MENU_TYPE_DAYCARE 6 -#define PARTY_MENU_TYPE_MOVE_RELEARNER 7 +#define PARTY_MENU_TYPE_DAYCARE 6 +#define PARTY_MENU_TYPE_MOVE_RELEARNER 7 #define PARTY_MENU_TYPE_UNION_ROOM_REGISTER 8 // trading board #define PARTY_MENU_TYPE_UNION_ROOM_TRADE 9 // trading board #define PARTY_MENU_TYPE_SPIN_TRADE 10 // Unused beta for Gen IV's Spin Trade @@ -68,7 +68,7 @@ #define PARTY_ACTION_CANT_SWITCH 2 #define PARTY_ACTION_USE_ITEM 3 #define PARTY_ACTION_ABILITY_PREVENTS 4 -#define PARTY_ACTION_GIVE_ITEM 5 +#define PARTY_ACTION_GIVE_ITEM 5 #define PARTY_ACTION_GIVE_PC_ITEM 6 // Unused. Not possible to give non-mail items directly from PC #define PARTY_ACTION_GIVE_MAILBOX_MAIL 7 #define PARTY_ACTION_SWITCH 8 @@ -83,7 +83,7 @@ #define PARTY_MSG_CHOOSE_MON 0 #define PARTY_MSG_CHOOSE_MON_OR_CANCEL 1 #define PARTY_MSG_CHOOSE_MON_AND_CONFIRM 2 -#define PARTY_MSG_MOVE_TO_WHERE 3 +#define PARTY_MSG_MOVE_TO_WHERE 3 #define PARTY_MSG_TEACH_WHICH_MON 4 #define PARTY_MSG_USE_ON_WHICH_MON 5 #define PARTY_MSG_GIVE_TO_WHICH_MON 6 diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 63c0318240d0..9bafa0a0bddf 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -225,7 +225,7 @@ // 1 bit each in the Pokémon struct. Gen 4 hard-codes // each of these to the given name. In Gen 3 they're // used to get an index into giftRibbons in the save block, -// which can have a value 0-64 (0 is 'no ribbon') that +// which can have a value 0-64 (0 is 'no ribbon') that // corresponds to one of the special ribbons listed // in gGiftRibbonDescriptionPointers. Most of these were // never distributed diff --git a/include/constants/script_menu.h b/include/constants/script_menu.h index 928ca00e0625..c58df7335f96 100644 --- a/include/constants/script_menu.h +++ b/include/constants/script_menu.h @@ -65,7 +65,7 @@ #define MULTI_RIGHTLEFT 54 #define MULTI_GAME_CORNER_TMS 55 #define MULTI_SSTIDAL_SLATEPORT_NO_BF 56 -#define MULTI_FLOORS 57 +#define MULTI_FLOORS 57 #define MULTI_SHARDS_R 58 #define MULTI_SHARDS_Y 59 #define MULTI_SHARDS_RY 60 @@ -82,9 +82,9 @@ #define MULTI_SHARDS_YBG 71 #define MULTI_SHARDS_RYBG 72 #define MULTI_TOURNEY_WITH_RECORD 73 -#define MULTI_CABLE_CLUB_NO_RECORD_MIX 74 +#define MULTI_CABLE_CLUB_NO_RECORD_MIX 74 #define MULTI_WIRELESS_NO_RECORD_BERRY 75 -#define MULTI_CABLE_CLUB_WITH_RECORD_MIX 76 +#define MULTI_CABLE_CLUB_WITH_RECORD_MIX 76 #define MULTI_WIRELESS_NO_BERRY 77 #define MULTI_WIRELESS_NO_RECORD 78 #define MULTI_WIRELESS_ALL_SERVICES 79 diff --git a/include/constants/songs.h b/include/constants/songs.h index a78ee6fafedd..d6a4184959cd 100644 --- a/include/constants/songs.h +++ b/include/constants/songs.h @@ -267,7 +267,7 @@ #define SE_RG_HELP_ERROR 259 // SE_RG_HELP_NG #define SE_RG_DEOXYS_MOVE 260 // SE_RG_DEOMOV #define SE_RG_POKE_JUMP_SUCCESS 261 // SE_RG_EXCELLENT -#define SE_RG_POKE_JUMP_FAILURE 262 // SE_RG_NAWAMISS +#define SE_RG_POKE_JUMP_FAILURE 262 // SE_RG_NAWAMISS // New Emerald SFX #define SE_POKENAV_CALL 263 // SE_TOREEYE #define SE_POKENAV_HANG_UP 264 // SE_TOREOFF diff --git a/include/constants/tv.h b/include/constants/tv.h index 095a6ddca733..3fe6c57b24e0 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -35,7 +35,7 @@ // TVGROUP_RECORD_MIX #define TVGROUP_RECORD_MIX_START 21 -#define TVSHOW_POKEMON_TODAY_CAUGHT 21 +#define TVSHOW_POKEMON_TODAY_CAUGHT 21 #define TVSHOW_SMART_SHOPPER 22 #define TVSHOW_POKEMON_TODAY_FAILED 23 #define TVSHOW_FISHING_ADVICE 24 diff --git a/include/constants/vars.h b/include/constants/vars.h index d3d1aba87daa..2cbe3e9b80bb 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -149,7 +149,7 @@ #define VAR_LITTLEROOT_HOUSES_STATE_MAY 0x4082 #define VAR_UNUSED_0x4083 0x4083 // Unused Var #define VAR_BIRCH_LAB_STATE 0x4084 -#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman +#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman #define VAR_CONTEST_HALL_STATE 0x4086 #define VAR_CABLE_CLUB_STATE 0x4087 #define VAR_CONTEST_TYPE 0x4088 diff --git a/include/constants/weather.h b/include/constants/weather.h index becbdda87753..c4a23a18bc77 100644 --- a/include/constants/weather.h +++ b/include/constants/weather.h @@ -16,7 +16,7 @@ #define WEATHER_DROUGHT 12 #define WEATHER_DOWNPOUR 13 #define WEATHER_UNDERWATER_BUBBLES 14 -#define WEATHER_ABNORMAL 15 // The alternating weather during Groudon/Kyogre conflict +#define WEATHER_ABNORMAL 15 // The alternating weather during Groudon/Kyogre conflict #define WEATHER_ROUTE119_CYCLE 20 #define WEATHER_ROUTE123_CYCLE 21 diff --git a/include/event_scripts.h b/include/event_scripts.h index c478f41f83be..1a24aa59d398 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -240,48 +240,48 @@ extern const u8 gTVWhatsNo1InHoennTodayText05[]; extern const u8 gTVWhatsNo1InHoennTodayText06[]; extern const u8 gTVWhatsNo1InHoennTodayText07[]; extern const u8 gTVWhatsNo1InHoennTodayText08[]; -extern const u8 TVSecretBaseSecrets_Text_Intro[]; +extern const u8 TVSecretBaseSecrets_Text_Intro[]; extern const u8 TVSecretBaseSecrets_Text_WhatWillPlayerDoNext1[]; extern const u8 TVSecretBaseSecrets_Text_WhatWillPlayerDoNext2[]; extern const u8 TVSecretBaseSecrets_Text_TookXStepsBeforeLeaving[]; -extern const u8 TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer[]; -extern const u8 TVSecretBaseSecrets_Text_PlayerEnjoyedBase[]; +extern const u8 TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer[]; +extern const u8 TVSecretBaseSecrets_Text_PlayerEnjoyedBase[]; extern const u8 TVSecretBaseSecrets_Text_PlayerHugeFanOfBase[]; -extern const u8 TVSecretBaseSecrets_Text_Outro[]; -extern const u8 TVSecretBaseSecrets_Text_StoppedMoving1[]; -extern const u8 TVSecretBaseSecrets_Text_StoppedMoving2[]; -extern const u8 TVSecretBaseSecrets_Text_UsedChair[]; -extern const u8 TVSecretBaseSecrets_Text_UsedBalloon[]; -extern const u8 TVSecretBaseSecrets_Text_UsedTent[]; -extern const u8 TVSecretBaseSecrets_Text_UsedPlant[]; -extern const u8 TVSecretBaseSecrets_Text_UsedGoldShield[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSilverShield[]; -extern const u8 TVSecretBaseSecrets_Text_UsedGlassOrnament[]; -extern const u8 TVSecretBaseSecrets_Text_UsedTV[]; -extern const u8 TVSecretBaseSecrets_Text_UsedMudBall[]; -extern const u8 TVSecretBaseSecrets_Text_UsedBag[]; -extern const u8 TVSecretBaseSecrets_Text_UsedCushion[]; -extern const u8 TVSecretBaseSecrets_Text_HitCushion[]; -extern const u8 TVSecretBaseSecrets_Text_HuggedCushion[]; -extern const u8 TVSecretBaseSecrets_Text_BattledWon[]; -extern const u8 TVSecretBaseSecrets_Text_BattledLost[]; -extern const u8 TVSecretBaseSecrets_Text_DeclinedBattle[]; -extern const u8 TVSecretBaseSecrets_Text_UsedPoster[]; -extern const u8 TVSecretBaseSecrets_Text_UsedNoteMat[]; -extern const u8 TVSecretBaseSecrets_Text_BattledDraw[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSpinMat[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSandOrnament[]; -extern const u8 TVSecretBaseSecrets_Text_UsedDesk[]; -extern const u8 TVSecretBaseSecrets_Text_UsedBrick[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSolidBoard[]; -extern const u8 TVSecretBaseSecrets_Text_UsedFence[]; -extern const u8 TVSecretBaseSecrets_Text_UsedGlitterMat[]; -extern const u8 TVSecretBaseSecrets_Text_UsedTire[]; -extern const u8 TVSecretBaseSecrets_Text_UsedStand[]; +extern const u8 TVSecretBaseSecrets_Text_Outro[]; +extern const u8 TVSecretBaseSecrets_Text_StoppedMoving1[]; +extern const u8 TVSecretBaseSecrets_Text_StoppedMoving2[]; +extern const u8 TVSecretBaseSecrets_Text_UsedChair[]; +extern const u8 TVSecretBaseSecrets_Text_UsedBalloon[]; +extern const u8 TVSecretBaseSecrets_Text_UsedTent[]; +extern const u8 TVSecretBaseSecrets_Text_UsedPlant[]; +extern const u8 TVSecretBaseSecrets_Text_UsedGoldShield[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSilverShield[]; +extern const u8 TVSecretBaseSecrets_Text_UsedGlassOrnament[]; +extern const u8 TVSecretBaseSecrets_Text_UsedTV[]; +extern const u8 TVSecretBaseSecrets_Text_UsedMudBall[]; +extern const u8 TVSecretBaseSecrets_Text_UsedBag[]; +extern const u8 TVSecretBaseSecrets_Text_UsedCushion[]; +extern const u8 TVSecretBaseSecrets_Text_HitCushion[]; +extern const u8 TVSecretBaseSecrets_Text_HuggedCushion[]; +extern const u8 TVSecretBaseSecrets_Text_BattledWon[]; +extern const u8 TVSecretBaseSecrets_Text_BattledLost[]; +extern const u8 TVSecretBaseSecrets_Text_DeclinedBattle[]; +extern const u8 TVSecretBaseSecrets_Text_UsedPoster[]; +extern const u8 TVSecretBaseSecrets_Text_UsedNoteMat[]; +extern const u8 TVSecretBaseSecrets_Text_BattledDraw[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSpinMat[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSandOrnament[]; +extern const u8 TVSecretBaseSecrets_Text_UsedDesk[]; +extern const u8 TVSecretBaseSecrets_Text_UsedBrick[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSolidBoard[]; +extern const u8 TVSecretBaseSecrets_Text_UsedFence[]; +extern const u8 TVSecretBaseSecrets_Text_UsedGlitterMat[]; +extern const u8 TVSecretBaseSecrets_Text_UsedTire[]; +extern const u8 TVSecretBaseSecrets_Text_UsedStand[]; extern const u8 TVSecretBaseSecrets_Text_BrokeDoor[]; -extern const u8 TVSecretBaseSecrets_Text_UsedDoll[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSlide[]; -extern const u8 TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown[]; +extern const u8 TVSecretBaseSecrets_Text_UsedDoll[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSlide[]; +extern const u8 TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown[]; extern const u8 TVSecretBaseSecrets_Text_UsedJumpMat[]; extern const u8 gTVSafariFanClubText00[]; extern const u8 gTVSafariFanClubText01[]; diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 6bafa97479cb..41b8539ffdea 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -146,7 +146,7 @@ struct MapHeader /* 0x1A */ bool8 allowCycling:1; bool8 allowEscaping:1; // Escape Rope and Dig bool8 allowRunning:1; - bool8 showMapName:5; // the last 4 bits are unused + bool8 showMapName:5; // the last 4 bits are unused // but the 5 bit sized bitfield is required to match /* 0x1B */ u8 battleType; }; diff --git a/include/global.h b/include/global.h index e4c11f9ef263..4719df40b7dd 100644 --- a/include/global.h +++ b/include/global.h @@ -312,7 +312,7 @@ struct BattleTowerEReaderTrainer /*0xB8*/ u32 checksum; }; -// For displaying party information on the player's Battle Dome tourney page +// For displaying party information on the player's Battle Dome tourney page struct DomeMonData { u16 moves[MAX_MON_MOVES]; @@ -436,7 +436,7 @@ struct PlayersApprentice /*0xB1*/ u8 questionsAnswered:4; /*0xB1*/ u8 leadMonId:2; /*0xB2*/ u8 party:3; - /*0xB2*/ u8 saveId:2; + /*0xB2*/ u8 saveId:2; /*0xB3*/ u8 unused; /*0xB4*/ u8 speciesIds[MULTI_PARTY_SIZE]; /*0xB8*/ struct ApprenticeQuestion questions[APPRENTICE_MAX_QUESTIONS]; diff --git a/include/librfu.h b/include/librfu.h index 69c696172981..0026adecea7c 100644 --- a/include/librfu.h +++ b/include/librfu.h @@ -30,12 +30,12 @@ Calculate the number of the transferable DMA count based on this 42 cycles and the access cycles of the destination and source. For example, if both the CPU internal RAM --> VRAM have a one cycle access, then a 21 count DMA can occur. - - If RFU is used outside of these restrictions, problems, such as the loss of data caused by the failure of the AGB, as a clock slave, + + If RFU is used outside of these restrictions, problems, such as the loss of data caused by the failure of the AGB, as a clock slave, to notify that data has been received from the RFU, will occur. When this problem occurs, the REQ callback will send a REQ_commandID=ID_CLOCK_SLAVE_MS_CHANGE_ERROR_BY_DMA_REQ notification. (When using Link Manager, the LMAN call back will send a LMAN_msg=LMAN_MSG_CLOCK_SLAVE_MS_CHANGE_ERROR_BY_DMA notification.) - + */ // REQ-COMMAND (STWI) ID CODE LIST @@ -137,7 +137,7 @@ // Definition Data Returned by Return Values for Library Functions // ******************************************************* -// The function doesn't have return value. +// The function doesn't have return value. // Value of u8 *status for rfu_REQ_pollConnectParent (Connection Trial Status) // #define CP_STATUS_DONE 0x00 // Connection successful // #define CP_STATUS_IN_PROCESS 0x01 // Connecting @@ -145,7 +145,7 @@ // #define CP_STATUS_DISCONNECTED 0x03 // Disconnected by parent device while connecting // #define CP_STATUS_UNKNOWN 0xff // Cannot read status due to REQ-API execution error -// The function doesn't exist. +// The function doesn't exist. // Value of u8 *status argument for rfu_REQ_pollRecoveryConnect (Link Restore Status) // #define RC_STATUS_DONE 0x00 // Connection restore successful // #define RC_STATUS_FAILED 0x01 // Connection restore failure (meaningless to try anymore) @@ -324,7 +324,7 @@ struct STWIStatus vu8 sending; }; -// This struct is used as u8 array in SDK. +// This struct is used as u8 array in SDK. struct RfuIntrStruct { union RfuPacket rxPacketAlloc; @@ -475,7 +475,7 @@ extern struct RfuSlotStatusUNI *gRfuSlotStatusUNI[RFU_CHILD_MAX]; // librfu_sio32id s32 AgbRFU_checkID(u8 maxTries); -// Arguments with "bm..." specify slots of the form (0x01 << slot number) that are the object of a function operation. +// Arguments with "bm..." specify slots of the form (0x01 << slot number) that are the object of a function operation. // librfu_rfu // API Initialization and Initial Settings diff --git a/include/link.h b/include/link.h index 407dbabb9cf0..5479d77d4f84 100644 --- a/include/link.h +++ b/include/link.h @@ -75,7 +75,7 @@ #define LINKCMD_SEND_BLOCK_REQ 0xCCCC #define LINKCMD_START_TRADE 0xCCDD #define LINKCMD_CONFIRM_FINISH_TRADE 0xDCBA -#define LINKCMD_SET_MONS_TO_TRADE 0xDDDD +#define LINKCMD_SET_MONS_TO_TRADE 0xDDDD #define LINKCMD_PLAYER_CANCEL_TRADE 0xDDEE #define LINKCMD_REQUEST_CANCEL 0xEEAA #define LINKCMD_BOTH_CANCEL_TRADE 0xEEBB @@ -92,7 +92,7 @@ #define LINKTYPE_DOUBLE_BATTLE 0x2244 #define LINKTYPE_MULTI_BATTLE 0x2255 #define LINKTYPE_BATTLE_TOWER_50 0x2266 -#define LINKTYPE_BATTLE_TOWER_OPEN 0x2277 +#define LINKTYPE_BATTLE_TOWER_OPEN 0x2277 #define LINKTYPE_BATTLE_TOWER 0x2288 #define LINKTYPE_RECORD_MIX_BEFORE 0x3311 #define LINKTYPE_RECORD_MIX_AFTER 0x3322 diff --git a/include/overworld.h b/include/overworld.h index 16c75861cfe7..8005a22228e2 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -15,7 +15,7 @@ // These two are a hack to stop user input until link stuff can be // resolved. -#define LINK_KEY_CODE_HANDLE_RECV_QUEUE 0x1B +#define LINK_KEY_CODE_HANDLE_RECV_QUEUE 0x1B #define LINK_KEY_CODE_HANDLE_SEND_QUEUE 0x1C #define LINK_KEY_CODE_EXIT_SEAT 0x1D #define LINK_KEY_CODE_UNK_8 0x1E diff --git a/include/pokeball.h b/include/pokeball.h index 8ea675ce4a2b..d88e80173beb 100644 --- a/include/pokeball.h +++ b/include/pokeball.h @@ -21,7 +21,7 @@ enum enum { BALL_AFFINE_ANIM_0, BALL_ROTATE_RIGHT, - BALL_ROTATE_LEFT, + BALL_ROTATE_LEFT, BALL_AFFINE_ANIM_3, BALL_AFFINE_ANIM_4 }; diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 73a7833ee4b8..a0e4f89478de 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -6,8 +6,8 @@ #define IN_BOX_COLUMNS 6 // Number of columns, 5 Pokémon per column #define IN_BOX_COUNT (IN_BOX_ROWS * IN_BOX_COLUMNS) -/* - COLUMNS +/* + COLUMNS ROWS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 diff --git a/include/strings.h b/include/strings.h index 2357e37771e2..7317f8aac8e5 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1607,10 +1607,10 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon1[] extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BirdKeeperReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_NinjaBoyReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyMon1[]; @@ -1620,8 +1620,8 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_ParasolLadyRejec extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_BugManiacReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SailorMon2Ask[]; @@ -1634,13 +1634,13 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorAccept[ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CollectorReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerMReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnRangerFReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyMon1[]; @@ -1649,20 +1649,20 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyAccept[ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_AromaLadyReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_RuinManiacReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerMReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CoolTrainerFReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokemaniacAccept[]; @@ -1673,28 +1673,28 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerMon2Ask[] extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_KindlerReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_CamperReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PicnickerReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicMReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PsychicFReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SchoolKidFReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PkmnBreederFIntro[]; @@ -1706,27 +1706,27 @@ extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_PokefanFReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerFReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMMon2Ask[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMAccept[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteMReject[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFIntro[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon1[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFIntro[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon1[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFAccept[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmingTriathleteFReject[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMIntro[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon1[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon2Ask[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMMon2Ask[]; extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMAccept[]; -extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMReject[]; +extern const u8 BattleFrontier_BattleTowerMultiPartnerRoom_Text_SwimmerMReject[]; // Battle Dome. extern const u8 BattleDome_Text_Potential1[]; diff --git a/include/trainer_hill.h b/include/trainer_hill.h index acf8faccaa26..647ba964706b 100644 --- a/include/trainer_hill.h +++ b/include/trainer_hill.h @@ -23,19 +23,19 @@ struct TrHillRoomTrainers struct TrHillDisplay { - // Metatile data. Add 0x200 to the values in this array to get metatiles. + // Metatile data. Add 0x200 to the values in this array to get metatiles. // This data then overwrites the metatiles in the map starting at (0,5) - u8 metatileData[0x100]; - // Collision data. One bit for each tile in column-major order, + u8 metatileData[0x100]; + // Collision data. One bit for each tile in column-major order, // so every array entry is one row. 1 = impassable, 0 = passable u16 collisionData[16]; // Trainer coordinates, starting at (0,6). Format is 0bYYYYXXXX. u8 coords[2]; - // Trainer facing directions. Same as (DIR_* - 1). + // Trainer facing directions. Same as (DIR_* - 1). // Effectively an array of nibbles, one for each trainer. u8 direction; // Trainer sight ranges. Effectively an array of nibbles, one for each trainer. - u8 range; + u8 range; }; struct TrHillFloor diff --git a/sound/cry_tables.inc b/sound/cry_tables.inc index 56548567661a..bceb1ccb49f0 100644 --- a/sound/cry_tables.inc +++ b/sound/cry_tables.inc @@ -1,781 +1,781 @@ .align 2 gCryTable:: - cry Cry_Bulbasaur - cry Cry_Ivysaur - cry Cry_Venusaur - cry Cry_Charmander - cry Cry_Charmeleon - cry Cry_Charizard - cry Cry_Squirtle - cry Cry_Wartortle - cry Cry_Blastoise - cry Cry_Caterpie - cry Cry_Metapod - cry Cry_Butterfree - cry Cry_Weedle - cry Cry_Kakuna - cry Cry_Beedrill - cry Cry_Pidgey - cry Cry_Pidgeotto - cry Cry_Pidgeot - cry Cry_Rattata - cry Cry_Raticate - cry Cry_Spearow - cry Cry_Fearow - cry Cry_Ekans - cry Cry_Arbok - cry Cry_Pikachu - cry Cry_Raichu - cry Cry_Sandshrew - cry Cry_Sandslash - cry Cry_NidoranF - cry Cry_Nidorina - cry Cry_Nidoqueen - cry Cry_NidoranM - cry Cry_Nidorino - cry Cry_Nidoking - cry Cry_Clefairy - cry Cry_Clefable - cry Cry_Vulpix - cry Cry_Ninetales - cry Cry_Jigglypuff - cry Cry_Wigglytuff - cry Cry_Zubat - cry Cry_Golbat - cry Cry_Oddish - cry Cry_Gloom - cry Cry_Vileplume - cry Cry_Paras - cry Cry_Parasect - cry Cry_Venonat - cry Cry_Venomoth - cry Cry_Diglett - cry Cry_Dugtrio - cry Cry_Meowth - cry Cry_Persian - cry Cry_Psyduck - cry Cry_Golduck - cry Cry_Mankey - cry Cry_Primeape - cry Cry_Growlithe - cry Cry_Arcanine - cry Cry_Poliwag - cry Cry_Poliwhirl - cry Cry_Poliwrath - cry Cry_Abra - cry Cry_Kadabra - cry Cry_Alakazam - cry Cry_Machop - cry Cry_Machoke - cry Cry_Machamp - cry Cry_Bellsprout - cry Cry_Weepinbell - cry Cry_Victreebel - cry Cry_Tentacool - cry Cry_Tentacruel - cry Cry_Geodude - cry Cry_Graveler - cry Cry_Golem - cry Cry_Ponyta - cry Cry_Rapidash - cry Cry_Slowpoke - cry Cry_Slowbro - cry Cry_Magnemite - cry Cry_Magneton - cry Cry_Farfetchd - cry Cry_Doduo - cry Cry_Dodrio - cry Cry_Seel - cry Cry_Dewgong - cry Cry_Grimer - cry Cry_Muk - cry Cry_Shellder - cry Cry_Cloyster - cry Cry_Gastly - cry Cry_Haunter - cry Cry_Gengar - cry Cry_Onix - cry Cry_Drowzee - cry Cry_Hypno - cry Cry_Krabby - cry Cry_Kingler - cry Cry_Voltorb - cry Cry_Electrode - cry Cry_Exeggcute - cry Cry_Exeggutor - cry Cry_Cubone - cry Cry_Marowak - cry Cry_Hitmonlee - cry Cry_Hitmonchan - cry Cry_Lickitung - cry Cry_Koffing - cry Cry_Weezing - cry Cry_Rhyhorn - cry Cry_Rhydon - cry Cry_Chansey - cry Cry_Tangela - cry Cry_Kangaskhan - cry Cry_Horsea - cry Cry_Seadra - cry Cry_Goldeen - cry Cry_Seaking - cry Cry_Staryu - cry Cry_Starmie - cry Cry_MrMime - cry Cry_Scyther - cry Cry_Jynx - cry Cry_Electabuzz - cry Cry_Magmar - cry Cry_Pinsir - cry Cry_Tauros - cry Cry_Magikarp - cry Cry_Gyarados - cry Cry_Lapras - cry Cry_Ditto - cry Cry_Eevee - cry Cry_Vaporeon - cry Cry_Jolteon - cry Cry_Flareon - cry Cry_Porygon - cry Cry_Omanyte - cry Cry_Omastar - cry Cry_Kabuto - cry Cry_Kabutops - cry Cry_Aerodactyl - cry Cry_Snorlax - cry Cry_Articuno - cry Cry_Zapdos - cry Cry_Moltres - cry Cry_Dratini - cry Cry_Dragonair - cry Cry_Dragonite - cry Cry_Mewtwo - cry Cry_Mew - cry Cry_Chikorita - cry Cry_Bayleef - cry Cry_Meganium - cry Cry_Cyndaquil - cry Cry_Quilava - cry Cry_Typhlosion - cry Cry_Totodile - cry Cry_Croconaw - cry Cry_Feraligatr - cry Cry_Sentret - cry Cry_Furret - cry Cry_Hoothoot - cry Cry_Noctowl - cry Cry_Ledyba - cry Cry_Ledian - cry Cry_Spinarak - cry Cry_Ariados - cry Cry_Crobat - cry Cry_Chinchou - cry Cry_Lanturn - cry Cry_Pichu - cry Cry_Cleffa - cry Cry_Igglybuff - cry Cry_Togepi - cry Cry_Togetic - cry Cry_Natu - cry Cry_Xatu - cry Cry_Mareep - cry Cry_Flaaffy - cry Cry_Ampharos - cry Cry_Bellossom - cry Cry_Marill - cry Cry_Azumarill - cry Cry_Sudowoodo - cry Cry_Politoed - cry Cry_Hoppip - cry Cry_Skiploom - cry Cry_Jumpluff - cry Cry_Aipom - cry Cry_Sunkern - cry Cry_Sunflora - cry Cry_Yanma - cry Cry_Wooper - cry Cry_Quagsire - cry Cry_Espeon - cry Cry_Umbreon - cry Cry_Murkrow - cry Cry_Slowking - cry Cry_Misdreavus - cry Cry_Unown - cry Cry_Wobbuffet - cry Cry_Girafarig - cry Cry_Pineco - cry Cry_Forretress - cry Cry_Dunsparce - cry Cry_Gligar - cry Cry_Steelix - cry Cry_Snubbull - cry Cry_Granbull - cry Cry_Qwilfish - cry Cry_Scizor - cry Cry_Shuckle - cry Cry_Heracross - cry Cry_Sneasel - cry Cry_Teddiursa - cry Cry_Ursaring - cry Cry_Slugma - cry Cry_Magcargo - cry Cry_Swinub - cry Cry_Piloswine - cry Cry_Corsola - cry Cry_Remoraid - cry Cry_Octillery - cry Cry_Delibird - cry Cry_Mantine - cry Cry_Skarmory - cry Cry_Houndour - cry Cry_Houndoom - cry Cry_Kingdra - cry Cry_Phanpy - cry Cry_Donphan - cry Cry_Porygon2 - cry Cry_Stantler - cry Cry_Smeargle - cry Cry_Tyrogue - cry Cry_Hitmontop - cry Cry_Smoochum - cry Cry_Elekid - cry Cry_Magby - cry Cry_Miltank - cry Cry_Blissey - cry Cry_Raikou - cry Cry_Entei - cry Cry_Suicune - cry Cry_Larvitar - cry Cry_Pupitar - cry Cry_Tyranitar - cry Cry_Lugia - cry Cry_HoOh - cry Cry_Celebi - cry Cry_Kecleon - cry Cry_Roselia - cry Cry_Torkoal - cry Cry_Electrike - cry Cry_Manectric - cry Cry_Duskull - cry Cry_Latias - cry Cry_Wynaut - cry Cry_Seviper - cry Cry_Sharpedo - cry Cry_Zangoose - cry Cry_Azurill - cry Cry_Swablu - cry Cry_Altaria - cry Cry_Unused265 - cry Cry_Taillow - cry Cry_Swellow - cry Cry_Unused268 - cry Cry_Spinda - cry Cry_Torchic - cry Cry_Combusken - cry Cry_Blaziken - cry Cry_Treecko - cry Cry_Grovyle - cry Cry_Sceptile - cry Cry_Mudkip - cry Cry_Marshtomp - cry Cry_Swampert - cry Cry_Pelipper - cry Cry_Wingull - cry Cry_Banette - cry Cry_Shuppet - cry Cry_Lotad - cry Cry_Lombre - cry Cry_Ludicolo - cry Cry_Seedot - cry Cry_Nuzleaf - cry Cry_Shiftry - cry Cry_Carvanha - cry Cry_Wurmple - cry Cry_Silcoon - cry Cry_Beautifly - cry Cry_Cascoon - cry Cry_Dustox - cry Cry_Ralts - cry Cry_Kirlia - cry Cry_Gardevoir - cry Cry_Slakoth - cry Cry_Vigoroth - cry Cry_Slaking - cry Cry_Nincada - cry Cry_Ninjask - cry Cry_Shedinja - cry Cry_Makuhita - cry Cry_Hariyama - cry Cry_Nosepass - cry Cry_Glalie - cry Cry_Plusle - cry Cry_Minun - cry Cry_Surskit - cry Cry_Masquerain - cry Cry_Skitty - cry Cry_Delcatty - cry Cry_Gulpin - cry Cry_Swalot - cry Cry_Numel - cry Cry_Camerupt - cry Cry_Barboach - cry Cry_Whiscash - cry Cry_Corphish - cry Cry_Crawdaunt - cry Cry_Spoink - cry Cry_Grumpig - cry Cry_Trapinch - cry Cry_Vibrava - cry Cry_Flygon - cry Cry_Cacnea - cry Cry_Cacturne - cry Cry_Baltoy - cry Cry_Claydol - cry Cry_Lunatone - cry Cry_Solrock - cry Cry_Feebas - cry Cry_Milotic - cry Cry_Absol - cry Cry_Meditite - cry Cry_Medicham - cry Cry_Spheal - cry Cry_Sealeo - cry Cry_Walrein - cry Cry_Clamperl - cry Cry_Huntail - cry Cry_Gorebyss - cry Cry_Lileep - cry Cry_Cradily - cry Cry_Anorith - cry Cry_Armaldo - cry Cry_Beldum - cry Cry_Metang - cry Cry_Metagross - cry Cry_Bagon - cry Cry_Shelgon - cry Cry_Regirock - cry Cry_Regice - cry Cry_Registeel - cry Cry_Castform - cry Cry_Volbeat - cry Cry_Illumise - cry Cry_Poochyena - cry Cry_Mightyena - cry Cry_Dusclops - cry Cry_Sableye - cry Cry_Mawile - cry Cry_Aron - cry Cry_Lairon - cry Cry_Aggron - cry Cry_Relicanth - cry Cry_Luvdisc - cry Cry_Groudon - cry Cry_Kyogre - cry Cry_Rayquaza - cry Cry_Salamence - cry Cry_Breloom - cry Cry_Shroomish - cry Cry_Linoone - cry Cry_Tropius - cry Cry_Wailmer - cry Cry_Zigzagoon - cry Cry_Exploud - cry Cry_Loudred - cry Cry_Wailord - cry Cry_Whismur - cry Cry_Snorunt - cry Cry_Latios - cry Cry_Jirachi - cry Cry_Deoxys - cry Cry_Chimecho + cry Cry_Bulbasaur + cry Cry_Ivysaur + cry Cry_Venusaur + cry Cry_Charmander + cry Cry_Charmeleon + cry Cry_Charizard + cry Cry_Squirtle + cry Cry_Wartortle + cry Cry_Blastoise + cry Cry_Caterpie + cry Cry_Metapod + cry Cry_Butterfree + cry Cry_Weedle + cry Cry_Kakuna + cry Cry_Beedrill + cry Cry_Pidgey + cry Cry_Pidgeotto + cry Cry_Pidgeot + cry Cry_Rattata + cry Cry_Raticate + cry Cry_Spearow + cry Cry_Fearow + cry Cry_Ekans + cry Cry_Arbok + cry Cry_Pikachu + cry Cry_Raichu + cry Cry_Sandshrew + cry Cry_Sandslash + cry Cry_NidoranF + cry Cry_Nidorina + cry Cry_Nidoqueen + cry Cry_NidoranM + cry Cry_Nidorino + cry Cry_Nidoking + cry Cry_Clefairy + cry Cry_Clefable + cry Cry_Vulpix + cry Cry_Ninetales + cry Cry_Jigglypuff + cry Cry_Wigglytuff + cry Cry_Zubat + cry Cry_Golbat + cry Cry_Oddish + cry Cry_Gloom + cry Cry_Vileplume + cry Cry_Paras + cry Cry_Parasect + cry Cry_Venonat + cry Cry_Venomoth + cry Cry_Diglett + cry Cry_Dugtrio + cry Cry_Meowth + cry Cry_Persian + cry Cry_Psyduck + cry Cry_Golduck + cry Cry_Mankey + cry Cry_Primeape + cry Cry_Growlithe + cry Cry_Arcanine + cry Cry_Poliwag + cry Cry_Poliwhirl + cry Cry_Poliwrath + cry Cry_Abra + cry Cry_Kadabra + cry Cry_Alakazam + cry Cry_Machop + cry Cry_Machoke + cry Cry_Machamp + cry Cry_Bellsprout + cry Cry_Weepinbell + cry Cry_Victreebel + cry Cry_Tentacool + cry Cry_Tentacruel + cry Cry_Geodude + cry Cry_Graveler + cry Cry_Golem + cry Cry_Ponyta + cry Cry_Rapidash + cry Cry_Slowpoke + cry Cry_Slowbro + cry Cry_Magnemite + cry Cry_Magneton + cry Cry_Farfetchd + cry Cry_Doduo + cry Cry_Dodrio + cry Cry_Seel + cry Cry_Dewgong + cry Cry_Grimer + cry Cry_Muk + cry Cry_Shellder + cry Cry_Cloyster + cry Cry_Gastly + cry Cry_Haunter + cry Cry_Gengar + cry Cry_Onix + cry Cry_Drowzee + cry Cry_Hypno + cry Cry_Krabby + cry Cry_Kingler + cry Cry_Voltorb + cry Cry_Electrode + cry Cry_Exeggcute + cry Cry_Exeggutor + cry Cry_Cubone + cry Cry_Marowak + cry Cry_Hitmonlee + cry Cry_Hitmonchan + cry Cry_Lickitung + cry Cry_Koffing + cry Cry_Weezing + cry Cry_Rhyhorn + cry Cry_Rhydon + cry Cry_Chansey + cry Cry_Tangela + cry Cry_Kangaskhan + cry Cry_Horsea + cry Cry_Seadra + cry Cry_Goldeen + cry Cry_Seaking + cry Cry_Staryu + cry Cry_Starmie + cry Cry_MrMime + cry Cry_Scyther + cry Cry_Jynx + cry Cry_Electabuzz + cry Cry_Magmar + cry Cry_Pinsir + cry Cry_Tauros + cry Cry_Magikarp + cry Cry_Gyarados + cry Cry_Lapras + cry Cry_Ditto + cry Cry_Eevee + cry Cry_Vaporeon + cry Cry_Jolteon + cry Cry_Flareon + cry Cry_Porygon + cry Cry_Omanyte + cry Cry_Omastar + cry Cry_Kabuto + cry Cry_Kabutops + cry Cry_Aerodactyl + cry Cry_Snorlax + cry Cry_Articuno + cry Cry_Zapdos + cry Cry_Moltres + cry Cry_Dratini + cry Cry_Dragonair + cry Cry_Dragonite + cry Cry_Mewtwo + cry Cry_Mew + cry Cry_Chikorita + cry Cry_Bayleef + cry Cry_Meganium + cry Cry_Cyndaquil + cry Cry_Quilava + cry Cry_Typhlosion + cry Cry_Totodile + cry Cry_Croconaw + cry Cry_Feraligatr + cry Cry_Sentret + cry Cry_Furret + cry Cry_Hoothoot + cry Cry_Noctowl + cry Cry_Ledyba + cry Cry_Ledian + cry Cry_Spinarak + cry Cry_Ariados + cry Cry_Crobat + cry Cry_Chinchou + cry Cry_Lanturn + cry Cry_Pichu + cry Cry_Cleffa + cry Cry_Igglybuff + cry Cry_Togepi + cry Cry_Togetic + cry Cry_Natu + cry Cry_Xatu + cry Cry_Mareep + cry Cry_Flaaffy + cry Cry_Ampharos + cry Cry_Bellossom + cry Cry_Marill + cry Cry_Azumarill + cry Cry_Sudowoodo + cry Cry_Politoed + cry Cry_Hoppip + cry Cry_Skiploom + cry Cry_Jumpluff + cry Cry_Aipom + cry Cry_Sunkern + cry Cry_Sunflora + cry Cry_Yanma + cry Cry_Wooper + cry Cry_Quagsire + cry Cry_Espeon + cry Cry_Umbreon + cry Cry_Murkrow + cry Cry_Slowking + cry Cry_Misdreavus + cry Cry_Unown + cry Cry_Wobbuffet + cry Cry_Girafarig + cry Cry_Pineco + cry Cry_Forretress + cry Cry_Dunsparce + cry Cry_Gligar + cry Cry_Steelix + cry Cry_Snubbull + cry Cry_Granbull + cry Cry_Qwilfish + cry Cry_Scizor + cry Cry_Shuckle + cry Cry_Heracross + cry Cry_Sneasel + cry Cry_Teddiursa + cry Cry_Ursaring + cry Cry_Slugma + cry Cry_Magcargo + cry Cry_Swinub + cry Cry_Piloswine + cry Cry_Corsola + cry Cry_Remoraid + cry Cry_Octillery + cry Cry_Delibird + cry Cry_Mantine + cry Cry_Skarmory + cry Cry_Houndour + cry Cry_Houndoom + cry Cry_Kingdra + cry Cry_Phanpy + cry Cry_Donphan + cry Cry_Porygon2 + cry Cry_Stantler + cry Cry_Smeargle + cry Cry_Tyrogue + cry Cry_Hitmontop + cry Cry_Smoochum + cry Cry_Elekid + cry Cry_Magby + cry Cry_Miltank + cry Cry_Blissey + cry Cry_Raikou + cry Cry_Entei + cry Cry_Suicune + cry Cry_Larvitar + cry Cry_Pupitar + cry Cry_Tyranitar + cry Cry_Lugia + cry Cry_HoOh + cry Cry_Celebi + cry Cry_Kecleon + cry Cry_Roselia + cry Cry_Torkoal + cry Cry_Electrike + cry Cry_Manectric + cry Cry_Duskull + cry Cry_Latias + cry Cry_Wynaut + cry Cry_Seviper + cry Cry_Sharpedo + cry Cry_Zangoose + cry Cry_Azurill + cry Cry_Swablu + cry Cry_Altaria + cry Cry_Unused265 + cry Cry_Taillow + cry Cry_Swellow + cry Cry_Unused268 + cry Cry_Spinda + cry Cry_Torchic + cry Cry_Combusken + cry Cry_Blaziken + cry Cry_Treecko + cry Cry_Grovyle + cry Cry_Sceptile + cry Cry_Mudkip + cry Cry_Marshtomp + cry Cry_Swampert + cry Cry_Pelipper + cry Cry_Wingull + cry Cry_Banette + cry Cry_Shuppet + cry Cry_Lotad + cry Cry_Lombre + cry Cry_Ludicolo + cry Cry_Seedot + cry Cry_Nuzleaf + cry Cry_Shiftry + cry Cry_Carvanha + cry Cry_Wurmple + cry Cry_Silcoon + cry Cry_Beautifly + cry Cry_Cascoon + cry Cry_Dustox + cry Cry_Ralts + cry Cry_Kirlia + cry Cry_Gardevoir + cry Cry_Slakoth + cry Cry_Vigoroth + cry Cry_Slaking + cry Cry_Nincada + cry Cry_Ninjask + cry Cry_Shedinja + cry Cry_Makuhita + cry Cry_Hariyama + cry Cry_Nosepass + cry Cry_Glalie + cry Cry_Plusle + cry Cry_Minun + cry Cry_Surskit + cry Cry_Masquerain + cry Cry_Skitty + cry Cry_Delcatty + cry Cry_Gulpin + cry Cry_Swalot + cry Cry_Numel + cry Cry_Camerupt + cry Cry_Barboach + cry Cry_Whiscash + cry Cry_Corphish + cry Cry_Crawdaunt + cry Cry_Spoink + cry Cry_Grumpig + cry Cry_Trapinch + cry Cry_Vibrava + cry Cry_Flygon + cry Cry_Cacnea + cry Cry_Cacturne + cry Cry_Baltoy + cry Cry_Claydol + cry Cry_Lunatone + cry Cry_Solrock + cry Cry_Feebas + cry Cry_Milotic + cry Cry_Absol + cry Cry_Meditite + cry Cry_Medicham + cry Cry_Spheal + cry Cry_Sealeo + cry Cry_Walrein + cry Cry_Clamperl + cry Cry_Huntail + cry Cry_Gorebyss + cry Cry_Lileep + cry Cry_Cradily + cry Cry_Anorith + cry Cry_Armaldo + cry Cry_Beldum + cry Cry_Metang + cry Cry_Metagross + cry Cry_Bagon + cry Cry_Shelgon + cry Cry_Regirock + cry Cry_Regice + cry Cry_Registeel + cry Cry_Castform + cry Cry_Volbeat + cry Cry_Illumise + cry Cry_Poochyena + cry Cry_Mightyena + cry Cry_Dusclops + cry Cry_Sableye + cry Cry_Mawile + cry Cry_Aron + cry Cry_Lairon + cry Cry_Aggron + cry Cry_Relicanth + cry Cry_Luvdisc + cry Cry_Groudon + cry Cry_Kyogre + cry Cry_Rayquaza + cry Cry_Salamence + cry Cry_Breloom + cry Cry_Shroomish + cry Cry_Linoone + cry Cry_Tropius + cry Cry_Wailmer + cry Cry_Zigzagoon + cry Cry_Exploud + cry Cry_Loudred + cry Cry_Wailord + cry Cry_Whismur + cry Cry_Snorunt + cry Cry_Latios + cry Cry_Jirachi + cry Cry_Deoxys + cry Cry_Chimecho .align 2 gCryTable2:: - cry2 Cry_Bulbasaur - cry2 Cry_Ivysaur - cry2 Cry_Venusaur - cry2 Cry_Charmander - cry2 Cry_Charmeleon - cry2 Cry_Charizard - cry2 Cry_Squirtle - cry2 Cry_Wartortle - cry2 Cry_Blastoise - cry2 Cry_Caterpie - cry2 Cry_Metapod - cry2 Cry_Butterfree - cry2 Cry_Weedle - cry2 Cry_Kakuna - cry2 Cry_Beedrill - cry2 Cry_Pidgey - cry2 Cry_Pidgeotto - cry2 Cry_Pidgeot - cry2 Cry_Rattata - cry2 Cry_Raticate - cry2 Cry_Spearow - cry2 Cry_Fearow - cry2 Cry_Ekans - cry2 Cry_Arbok - cry2 Cry_Pikachu - cry2 Cry_Raichu - cry2 Cry_Sandshrew - cry2 Cry_Sandslash - cry2 Cry_NidoranF - cry2 Cry_Nidorina - cry2 Cry_Nidoqueen - cry2 Cry_NidoranM - cry2 Cry_Nidorino - cry2 Cry_Nidoking - cry2 Cry_Clefairy - cry2 Cry_Clefable - cry2 Cry_Vulpix - cry2 Cry_Ninetales - cry2 Cry_Jigglypuff - cry2 Cry_Wigglytuff - cry2 Cry_Zubat - cry2 Cry_Golbat - cry2 Cry_Oddish - cry2 Cry_Gloom - cry2 Cry_Vileplume - cry2 Cry_Paras - cry2 Cry_Parasect - cry2 Cry_Venonat - cry2 Cry_Venomoth - cry2 Cry_Diglett - cry2 Cry_Dugtrio - cry2 Cry_Meowth - cry2 Cry_Persian - cry2 Cry_Psyduck - cry2 Cry_Golduck - cry2 Cry_Mankey - cry2 Cry_Primeape - cry2 Cry_Growlithe - cry2 Cry_Arcanine - cry2 Cry_Poliwag - cry2 Cry_Poliwhirl - cry2 Cry_Poliwrath - cry2 Cry_Abra - cry2 Cry_Kadabra - cry2 Cry_Alakazam - cry2 Cry_Machop - cry2 Cry_Machoke - cry2 Cry_Machamp - cry2 Cry_Bellsprout - cry2 Cry_Weepinbell - cry2 Cry_Victreebel - cry2 Cry_Tentacool - cry2 Cry_Tentacruel - cry2 Cry_Geodude - cry2 Cry_Graveler - cry2 Cry_Golem - cry2 Cry_Ponyta - cry2 Cry_Rapidash - cry2 Cry_Slowpoke - cry2 Cry_Slowbro - cry2 Cry_Magnemite - cry2 Cry_Magneton - cry2 Cry_Farfetchd - cry2 Cry_Doduo - cry2 Cry_Dodrio - cry2 Cry_Seel - cry2 Cry_Dewgong - cry2 Cry_Grimer - cry2 Cry_Muk - cry2 Cry_Shellder - cry2 Cry_Cloyster - cry2 Cry_Gastly - cry2 Cry_Haunter - cry2 Cry_Gengar - cry2 Cry_Onix - cry2 Cry_Drowzee - cry2 Cry_Hypno - cry2 Cry_Krabby - cry2 Cry_Kingler - cry2 Cry_Voltorb - cry2 Cry_Electrode - cry2 Cry_Exeggcute - cry2 Cry_Exeggutor - cry2 Cry_Cubone - cry2 Cry_Marowak - cry2 Cry_Hitmonlee - cry2 Cry_Hitmonchan - cry2 Cry_Lickitung - cry2 Cry_Koffing - cry2 Cry_Weezing - cry2 Cry_Rhyhorn - cry2 Cry_Rhydon - cry2 Cry_Chansey - cry2 Cry_Tangela - cry2 Cry_Kangaskhan - cry2 Cry_Horsea - cry2 Cry_Seadra - cry2 Cry_Goldeen - cry2 Cry_Seaking - cry2 Cry_Staryu - cry2 Cry_Starmie - cry2 Cry_MrMime - cry2 Cry_Scyther - cry2 Cry_Jynx - cry2 Cry_Electabuzz - cry2 Cry_Magmar - cry2 Cry_Pinsir - cry2 Cry_Tauros - cry2 Cry_Magikarp - cry2 Cry_Gyarados - cry2 Cry_Lapras - cry2 Cry_Ditto - cry2 Cry_Eevee - cry2 Cry_Vaporeon - cry2 Cry_Jolteon - cry2 Cry_Flareon - cry2 Cry_Porygon - cry2 Cry_Omanyte - cry2 Cry_Omastar - cry2 Cry_Kabuto - cry2 Cry_Kabutops - cry2 Cry_Aerodactyl - cry2 Cry_Snorlax - cry2 Cry_Articuno - cry2 Cry_Zapdos - cry2 Cry_Moltres - cry2 Cry_Dratini - cry2 Cry_Dragonair - cry2 Cry_Dragonite - cry2 Cry_Mewtwo - cry2 Cry_Mew - cry2 Cry_Chikorita - cry2 Cry_Bayleef - cry2 Cry_Meganium - cry2 Cry_Cyndaquil - cry2 Cry_Quilava - cry2 Cry_Typhlosion - cry2 Cry_Totodile - cry2 Cry_Croconaw - cry2 Cry_Feraligatr - cry2 Cry_Sentret - cry2 Cry_Furret - cry2 Cry_Hoothoot - cry2 Cry_Noctowl - cry2 Cry_Ledyba - cry2 Cry_Ledian - cry2 Cry_Spinarak - cry2 Cry_Ariados - cry2 Cry_Crobat - cry2 Cry_Chinchou - cry2 Cry_Lanturn - cry2 Cry_Pichu - cry2 Cry_Cleffa - cry2 Cry_Igglybuff - cry2 Cry_Togepi - cry2 Cry_Togetic - cry2 Cry_Natu - cry2 Cry_Xatu - cry2 Cry_Mareep - cry2 Cry_Flaaffy - cry2 Cry_Ampharos - cry2 Cry_Bellossom - cry2 Cry_Marill - cry2 Cry_Azumarill - cry2 Cry_Sudowoodo - cry2 Cry_Politoed - cry2 Cry_Hoppip - cry2 Cry_Skiploom - cry2 Cry_Jumpluff - cry2 Cry_Aipom - cry2 Cry_Sunkern - cry2 Cry_Sunflora - cry2 Cry_Yanma - cry2 Cry_Wooper - cry2 Cry_Quagsire - cry2 Cry_Espeon - cry2 Cry_Umbreon - cry2 Cry_Murkrow - cry2 Cry_Slowking - cry2 Cry_Misdreavus - cry2 Cry_Unown - cry2 Cry_Wobbuffet - cry2 Cry_Girafarig - cry2 Cry_Pineco - cry2 Cry_Forretress - cry2 Cry_Dunsparce - cry2 Cry_Gligar - cry2 Cry_Steelix - cry2 Cry_Snubbull - cry2 Cry_Granbull - cry2 Cry_Qwilfish - cry2 Cry_Scizor - cry2 Cry_Shuckle - cry2 Cry_Heracross - cry2 Cry_Sneasel - cry2 Cry_Teddiursa - cry2 Cry_Ursaring - cry2 Cry_Slugma - cry2 Cry_Magcargo - cry2 Cry_Swinub - cry2 Cry_Piloswine - cry2 Cry_Corsola - cry2 Cry_Remoraid - cry2 Cry_Octillery - cry2 Cry_Delibird - cry2 Cry_Mantine - cry2 Cry_Skarmory - cry2 Cry_Houndour - cry2 Cry_Houndoom - cry2 Cry_Kingdra - cry2 Cry_Phanpy - cry2 Cry_Donphan - cry2 Cry_Porygon2 - cry2 Cry_Stantler - cry2 Cry_Smeargle - cry2 Cry_Tyrogue - cry2 Cry_Hitmontop - cry2 Cry_Smoochum - cry2 Cry_Elekid - cry2 Cry_Magby - cry2 Cry_Miltank - cry2 Cry_Blissey - cry2 Cry_Raikou - cry2 Cry_Entei - cry2 Cry_Suicune - cry2 Cry_Larvitar - cry2 Cry_Pupitar - cry2 Cry_Tyranitar - cry2 Cry_Lugia - cry2 Cry_HoOh - cry2 Cry_Celebi - cry2 Cry_Kecleon - cry2 Cry_Roselia - cry2 Cry_Torkoal - cry2 Cry_Electrike - cry2 Cry_Manectric - cry2 Cry_Duskull - cry2 Cry_Latias - cry2 Cry_Wynaut - cry2 Cry_Seviper - cry2 Cry_Sharpedo - cry2 Cry_Zangoose - cry2 Cry_Azurill - cry2 Cry_Swablu - cry2 Cry_Altaria - cry2 Cry_Unused265 - cry2 Cry_Taillow - cry2 Cry_Swellow - cry2 Cry_Unused268 - cry2 Cry_Spinda - cry2 Cry_Torchic - cry2 Cry_Combusken - cry2 Cry_Blaziken - cry2 Cry_Treecko - cry2 Cry_Grovyle - cry2 Cry_Sceptile - cry2 Cry_Mudkip - cry2 Cry_Marshtomp - cry2 Cry_Swampert - cry2 Cry_Pelipper - cry2 Cry_Wingull - cry2 Cry_Banette - cry2 Cry_Shuppet - cry2 Cry_Lotad - cry2 Cry_Lombre - cry2 Cry_Ludicolo - cry2 Cry_Seedot - cry2 Cry_Nuzleaf - cry2 Cry_Shiftry - cry2 Cry_Carvanha - cry2 Cry_Wurmple - cry2 Cry_Silcoon - cry2 Cry_Beautifly - cry2 Cry_Cascoon - cry2 Cry_Dustox - cry2 Cry_Ralts - cry2 Cry_Kirlia - cry2 Cry_Gardevoir - cry2 Cry_Slakoth - cry2 Cry_Vigoroth - cry2 Cry_Slaking - cry2 Cry_Nincada - cry2 Cry_Ninjask - cry2 Cry_Shedinja - cry2 Cry_Makuhita - cry2 Cry_Hariyama - cry2 Cry_Nosepass - cry2 Cry_Glalie - cry2 Cry_Plusle - cry2 Cry_Minun - cry2 Cry_Surskit - cry2 Cry_Masquerain - cry2 Cry_Skitty - cry2 Cry_Delcatty - cry2 Cry_Gulpin - cry2 Cry_Swalot - cry2 Cry_Numel - cry2 Cry_Camerupt - cry2 Cry_Barboach - cry2 Cry_Whiscash - cry2 Cry_Corphish - cry2 Cry_Crawdaunt - cry2 Cry_Spoink - cry2 Cry_Grumpig - cry2 Cry_Trapinch - cry2 Cry_Vibrava - cry2 Cry_Flygon - cry2 Cry_Cacnea - cry2 Cry_Cacturne - cry2 Cry_Baltoy - cry2 Cry_Claydol - cry2 Cry_Lunatone - cry2 Cry_Solrock - cry2 Cry_Feebas - cry2 Cry_Milotic - cry2 Cry_Absol - cry2 Cry_Meditite - cry2 Cry_Medicham - cry2 Cry_Spheal - cry2 Cry_Sealeo - cry2 Cry_Walrein - cry2 Cry_Clamperl - cry2 Cry_Huntail - cry2 Cry_Gorebyss - cry2 Cry_Lileep - cry2 Cry_Cradily - cry2 Cry_Anorith - cry2 Cry_Armaldo - cry2 Cry_Beldum - cry2 Cry_Metang - cry2 Cry_Metagross - cry2 Cry_Bagon - cry2 Cry_Shelgon - cry2 Cry_Regirock - cry2 Cry_Regice - cry2 Cry_Registeel - cry2 Cry_Castform - cry2 Cry_Volbeat - cry2 Cry_Illumise - cry2 Cry_Poochyena - cry2 Cry_Mightyena - cry2 Cry_Dusclops - cry2 Cry_Sableye - cry2 Cry_Mawile - cry2 Cry_Aron - cry2 Cry_Lairon - cry2 Cry_Aggron - cry2 Cry_Relicanth - cry2 Cry_Luvdisc - cry2 Cry_Groudon - cry2 Cry_Kyogre - cry2 Cry_Rayquaza - cry2 Cry_Salamence - cry2 Cry_Breloom - cry2 Cry_Shroomish - cry2 Cry_Linoone - cry2 Cry_Tropius - cry2 Cry_Wailmer - cry2 Cry_Zigzagoon - cry2 Cry_Exploud - cry2 Cry_Loudred - cry2 Cry_Wailord - cry2 Cry_Whismur - cry2 Cry_Snorunt - cry2 Cry_Latios - cry2 Cry_Jirachi - cry2 Cry_Deoxys - cry2 Cry_Chimecho + cry2 Cry_Bulbasaur + cry2 Cry_Ivysaur + cry2 Cry_Venusaur + cry2 Cry_Charmander + cry2 Cry_Charmeleon + cry2 Cry_Charizard + cry2 Cry_Squirtle + cry2 Cry_Wartortle + cry2 Cry_Blastoise + cry2 Cry_Caterpie + cry2 Cry_Metapod + cry2 Cry_Butterfree + cry2 Cry_Weedle + cry2 Cry_Kakuna + cry2 Cry_Beedrill + cry2 Cry_Pidgey + cry2 Cry_Pidgeotto + cry2 Cry_Pidgeot + cry2 Cry_Rattata + cry2 Cry_Raticate + cry2 Cry_Spearow + cry2 Cry_Fearow + cry2 Cry_Ekans + cry2 Cry_Arbok + cry2 Cry_Pikachu + cry2 Cry_Raichu + cry2 Cry_Sandshrew + cry2 Cry_Sandslash + cry2 Cry_NidoranF + cry2 Cry_Nidorina + cry2 Cry_Nidoqueen + cry2 Cry_NidoranM + cry2 Cry_Nidorino + cry2 Cry_Nidoking + cry2 Cry_Clefairy + cry2 Cry_Clefable + cry2 Cry_Vulpix + cry2 Cry_Ninetales + cry2 Cry_Jigglypuff + cry2 Cry_Wigglytuff + cry2 Cry_Zubat + cry2 Cry_Golbat + cry2 Cry_Oddish + cry2 Cry_Gloom + cry2 Cry_Vileplume + cry2 Cry_Paras + cry2 Cry_Parasect + cry2 Cry_Venonat + cry2 Cry_Venomoth + cry2 Cry_Diglett + cry2 Cry_Dugtrio + cry2 Cry_Meowth + cry2 Cry_Persian + cry2 Cry_Psyduck + cry2 Cry_Golduck + cry2 Cry_Mankey + cry2 Cry_Primeape + cry2 Cry_Growlithe + cry2 Cry_Arcanine + cry2 Cry_Poliwag + cry2 Cry_Poliwhirl + cry2 Cry_Poliwrath + cry2 Cry_Abra + cry2 Cry_Kadabra + cry2 Cry_Alakazam + cry2 Cry_Machop + cry2 Cry_Machoke + cry2 Cry_Machamp + cry2 Cry_Bellsprout + cry2 Cry_Weepinbell + cry2 Cry_Victreebel + cry2 Cry_Tentacool + cry2 Cry_Tentacruel + cry2 Cry_Geodude + cry2 Cry_Graveler + cry2 Cry_Golem + cry2 Cry_Ponyta + cry2 Cry_Rapidash + cry2 Cry_Slowpoke + cry2 Cry_Slowbro + cry2 Cry_Magnemite + cry2 Cry_Magneton + cry2 Cry_Farfetchd + cry2 Cry_Doduo + cry2 Cry_Dodrio + cry2 Cry_Seel + cry2 Cry_Dewgong + cry2 Cry_Grimer + cry2 Cry_Muk + cry2 Cry_Shellder + cry2 Cry_Cloyster + cry2 Cry_Gastly + cry2 Cry_Haunter + cry2 Cry_Gengar + cry2 Cry_Onix + cry2 Cry_Drowzee + cry2 Cry_Hypno + cry2 Cry_Krabby + cry2 Cry_Kingler + cry2 Cry_Voltorb + cry2 Cry_Electrode + cry2 Cry_Exeggcute + cry2 Cry_Exeggutor + cry2 Cry_Cubone + cry2 Cry_Marowak + cry2 Cry_Hitmonlee + cry2 Cry_Hitmonchan + cry2 Cry_Lickitung + cry2 Cry_Koffing + cry2 Cry_Weezing + cry2 Cry_Rhyhorn + cry2 Cry_Rhydon + cry2 Cry_Chansey + cry2 Cry_Tangela + cry2 Cry_Kangaskhan + cry2 Cry_Horsea + cry2 Cry_Seadra + cry2 Cry_Goldeen + cry2 Cry_Seaking + cry2 Cry_Staryu + cry2 Cry_Starmie + cry2 Cry_MrMime + cry2 Cry_Scyther + cry2 Cry_Jynx + cry2 Cry_Electabuzz + cry2 Cry_Magmar + cry2 Cry_Pinsir + cry2 Cry_Tauros + cry2 Cry_Magikarp + cry2 Cry_Gyarados + cry2 Cry_Lapras + cry2 Cry_Ditto + cry2 Cry_Eevee + cry2 Cry_Vaporeon + cry2 Cry_Jolteon + cry2 Cry_Flareon + cry2 Cry_Porygon + cry2 Cry_Omanyte + cry2 Cry_Omastar + cry2 Cry_Kabuto + cry2 Cry_Kabutops + cry2 Cry_Aerodactyl + cry2 Cry_Snorlax + cry2 Cry_Articuno + cry2 Cry_Zapdos + cry2 Cry_Moltres + cry2 Cry_Dratini + cry2 Cry_Dragonair + cry2 Cry_Dragonite + cry2 Cry_Mewtwo + cry2 Cry_Mew + cry2 Cry_Chikorita + cry2 Cry_Bayleef + cry2 Cry_Meganium + cry2 Cry_Cyndaquil + cry2 Cry_Quilava + cry2 Cry_Typhlosion + cry2 Cry_Totodile + cry2 Cry_Croconaw + cry2 Cry_Feraligatr + cry2 Cry_Sentret + cry2 Cry_Furret + cry2 Cry_Hoothoot + cry2 Cry_Noctowl + cry2 Cry_Ledyba + cry2 Cry_Ledian + cry2 Cry_Spinarak + cry2 Cry_Ariados + cry2 Cry_Crobat + cry2 Cry_Chinchou + cry2 Cry_Lanturn + cry2 Cry_Pichu + cry2 Cry_Cleffa + cry2 Cry_Igglybuff + cry2 Cry_Togepi + cry2 Cry_Togetic + cry2 Cry_Natu + cry2 Cry_Xatu + cry2 Cry_Mareep + cry2 Cry_Flaaffy + cry2 Cry_Ampharos + cry2 Cry_Bellossom + cry2 Cry_Marill + cry2 Cry_Azumarill + cry2 Cry_Sudowoodo + cry2 Cry_Politoed + cry2 Cry_Hoppip + cry2 Cry_Skiploom + cry2 Cry_Jumpluff + cry2 Cry_Aipom + cry2 Cry_Sunkern + cry2 Cry_Sunflora + cry2 Cry_Yanma + cry2 Cry_Wooper + cry2 Cry_Quagsire + cry2 Cry_Espeon + cry2 Cry_Umbreon + cry2 Cry_Murkrow + cry2 Cry_Slowking + cry2 Cry_Misdreavus + cry2 Cry_Unown + cry2 Cry_Wobbuffet + cry2 Cry_Girafarig + cry2 Cry_Pineco + cry2 Cry_Forretress + cry2 Cry_Dunsparce + cry2 Cry_Gligar + cry2 Cry_Steelix + cry2 Cry_Snubbull + cry2 Cry_Granbull + cry2 Cry_Qwilfish + cry2 Cry_Scizor + cry2 Cry_Shuckle + cry2 Cry_Heracross + cry2 Cry_Sneasel + cry2 Cry_Teddiursa + cry2 Cry_Ursaring + cry2 Cry_Slugma + cry2 Cry_Magcargo + cry2 Cry_Swinub + cry2 Cry_Piloswine + cry2 Cry_Corsola + cry2 Cry_Remoraid + cry2 Cry_Octillery + cry2 Cry_Delibird + cry2 Cry_Mantine + cry2 Cry_Skarmory + cry2 Cry_Houndour + cry2 Cry_Houndoom + cry2 Cry_Kingdra + cry2 Cry_Phanpy + cry2 Cry_Donphan + cry2 Cry_Porygon2 + cry2 Cry_Stantler + cry2 Cry_Smeargle + cry2 Cry_Tyrogue + cry2 Cry_Hitmontop + cry2 Cry_Smoochum + cry2 Cry_Elekid + cry2 Cry_Magby + cry2 Cry_Miltank + cry2 Cry_Blissey + cry2 Cry_Raikou + cry2 Cry_Entei + cry2 Cry_Suicune + cry2 Cry_Larvitar + cry2 Cry_Pupitar + cry2 Cry_Tyranitar + cry2 Cry_Lugia + cry2 Cry_HoOh + cry2 Cry_Celebi + cry2 Cry_Kecleon + cry2 Cry_Roselia + cry2 Cry_Torkoal + cry2 Cry_Electrike + cry2 Cry_Manectric + cry2 Cry_Duskull + cry2 Cry_Latias + cry2 Cry_Wynaut + cry2 Cry_Seviper + cry2 Cry_Sharpedo + cry2 Cry_Zangoose + cry2 Cry_Azurill + cry2 Cry_Swablu + cry2 Cry_Altaria + cry2 Cry_Unused265 + cry2 Cry_Taillow + cry2 Cry_Swellow + cry2 Cry_Unused268 + cry2 Cry_Spinda + cry2 Cry_Torchic + cry2 Cry_Combusken + cry2 Cry_Blaziken + cry2 Cry_Treecko + cry2 Cry_Grovyle + cry2 Cry_Sceptile + cry2 Cry_Mudkip + cry2 Cry_Marshtomp + cry2 Cry_Swampert + cry2 Cry_Pelipper + cry2 Cry_Wingull + cry2 Cry_Banette + cry2 Cry_Shuppet + cry2 Cry_Lotad + cry2 Cry_Lombre + cry2 Cry_Ludicolo + cry2 Cry_Seedot + cry2 Cry_Nuzleaf + cry2 Cry_Shiftry + cry2 Cry_Carvanha + cry2 Cry_Wurmple + cry2 Cry_Silcoon + cry2 Cry_Beautifly + cry2 Cry_Cascoon + cry2 Cry_Dustox + cry2 Cry_Ralts + cry2 Cry_Kirlia + cry2 Cry_Gardevoir + cry2 Cry_Slakoth + cry2 Cry_Vigoroth + cry2 Cry_Slaking + cry2 Cry_Nincada + cry2 Cry_Ninjask + cry2 Cry_Shedinja + cry2 Cry_Makuhita + cry2 Cry_Hariyama + cry2 Cry_Nosepass + cry2 Cry_Glalie + cry2 Cry_Plusle + cry2 Cry_Minun + cry2 Cry_Surskit + cry2 Cry_Masquerain + cry2 Cry_Skitty + cry2 Cry_Delcatty + cry2 Cry_Gulpin + cry2 Cry_Swalot + cry2 Cry_Numel + cry2 Cry_Camerupt + cry2 Cry_Barboach + cry2 Cry_Whiscash + cry2 Cry_Corphish + cry2 Cry_Crawdaunt + cry2 Cry_Spoink + cry2 Cry_Grumpig + cry2 Cry_Trapinch + cry2 Cry_Vibrava + cry2 Cry_Flygon + cry2 Cry_Cacnea + cry2 Cry_Cacturne + cry2 Cry_Baltoy + cry2 Cry_Claydol + cry2 Cry_Lunatone + cry2 Cry_Solrock + cry2 Cry_Feebas + cry2 Cry_Milotic + cry2 Cry_Absol + cry2 Cry_Meditite + cry2 Cry_Medicham + cry2 Cry_Spheal + cry2 Cry_Sealeo + cry2 Cry_Walrein + cry2 Cry_Clamperl + cry2 Cry_Huntail + cry2 Cry_Gorebyss + cry2 Cry_Lileep + cry2 Cry_Cradily + cry2 Cry_Anorith + cry2 Cry_Armaldo + cry2 Cry_Beldum + cry2 Cry_Metang + cry2 Cry_Metagross + cry2 Cry_Bagon + cry2 Cry_Shelgon + cry2 Cry_Regirock + cry2 Cry_Regice + cry2 Cry_Registeel + cry2 Cry_Castform + cry2 Cry_Volbeat + cry2 Cry_Illumise + cry2 Cry_Poochyena + cry2 Cry_Mightyena + cry2 Cry_Dusclops + cry2 Cry_Sableye + cry2 Cry_Mawile + cry2 Cry_Aron + cry2 Cry_Lairon + cry2 Cry_Aggron + cry2 Cry_Relicanth + cry2 Cry_Luvdisc + cry2 Cry_Groudon + cry2 Cry_Kyogre + cry2 Cry_Rayquaza + cry2 Cry_Salamence + cry2 Cry_Breloom + cry2 Cry_Shroomish + cry2 Cry_Linoone + cry2 Cry_Tropius + cry2 Cry_Wailmer + cry2 Cry_Zigzagoon + cry2 Cry_Exploud + cry2 Cry_Loudred + cry2 Cry_Wailord + cry2 Cry_Whismur + cry2 Cry_Snorunt + cry2 Cry_Latios + cry2 Cry_Jirachi + cry2 Cry_Deoxys + cry2 Cry_Chimecho diff --git a/sound/songs/se_m_absorb.s b/sound/songs/se_m_absorb.s index 35213fdaa9ef..6cd622366478 100644 --- a/sound/songs/se_m_absorb.s +++ b/sound/songs/se_m_absorb.s @@ -29,7 +29,7 @@ se_m_absorb_1: .byte W01 .byte VOICE , 38 .byte VOL , 58*se_m_absorb_mvl/mxv - .byte N08 , Gn4 + .byte N08 , Gn4 .byte W01 .byte VOL , 68*se_m_absorb_mvl/mxv .byte PAN , c_v+8 diff --git a/sound/songs/se_m_absorb_2.s b/sound/songs/se_m_absorb_2.s index 3f9df6dc404c..61920133382c 100644 --- a/sound/songs/se_m_absorb_2.s +++ b/sound/songs/se_m_absorb_2.s @@ -26,15 +26,15 @@ se_m_absorb_2_1: .byte W01 .byte N02 , Dn6 , v112 .byte W02 - .byte Cs6 + .byte Cs6 .byte W03 .byte PAN , c_v+8 - .byte N02 , An5 + .byte N02 , An5 .byte W02 - .byte Fs5 + .byte Fs5 .byte W01 .byte W01 - .byte Dn5 + .byte Dn5 .byte W02 .byte PAN , c_v-7 .byte W01 @@ -52,7 +52,7 @@ se_m_absorb_2_1: .byte W02 .byte PAN , c_v+15 .byte W01 - .byte N02 , Dn6 + .byte N02 , Dn6 .byte W02 .byte Cs6 , v084 .byte W03 @@ -89,17 +89,17 @@ se_m_absorb_2_2: .byte BEND , c_v+15 .byte N02 , An6 , v112 .byte W02 - .byte Fs6 + .byte Fs6 .byte W01 .byte W01 - .byte Dn6 + .byte Dn6 .byte W02 .byte W01 - .byte Cs6 + .byte Cs6 .byte W02 - .byte An5 + .byte An5 .byte W03 - .byte N02 + .byte N02 .byte W02 .byte Fs5 , v104 .byte W01 diff --git a/sound/songs/se_m_acid_armor.s b/sound/songs/se_m_acid_armor.s index c7f350a9b5fd..346c76604760 100644 --- a/sound/songs/se_m_acid_armor.s +++ b/sound/songs/se_m_acid_armor.s @@ -35,15 +35,15 @@ se_m_acid_armor_1: .byte W02 .byte VOICE , 23 .byte PAN , c_v+11 - .byte N01 , Cn1 + .byte N01 , Cn1 .byte W01 .byte PAN , c_v-10 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+6 .byte BEND , c_v-37 - .byte N06 , Dn1 + .byte N06 , Dn1 .byte W01 .byte BEND , c_v-16 .byte W01 @@ -55,15 +55,15 @@ se_m_acid_armor_1: .byte W01 .byte VOICE , 23 .byte PAN , c_v-1 - .byte N01 , Fn1 + .byte N01 , Fn1 .byte W01 .byte PAN , c_v-10 - .byte N01 , Fn2 + .byte N01 , Fn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+0 .byte BEND , c_v-37 - .byte N02 , Gn0 + .byte N02 , Gn0 .byte W02 .byte BEND , c_v-16 .byte W01 @@ -71,21 +71,21 @@ se_m_acid_armor_1: .byte W01 .byte PAN , c_v+5 .byte BEND , c_v+27 - .byte N02 + .byte N02 .byte W01 .byte BEND , c_v+46 .byte W01 .byte VOICE , 23 .byte PAN , c_v+10 - .byte N01 , Cn1 + .byte N01 , Cn1 .byte W02 .byte PAN , c_v-9 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+0 .byte BEND , c_v-37 - .byte N06 , Dn1 + .byte N06 , Dn1 .byte W01 .byte BEND , c_v-16 .byte W01 @@ -97,10 +97,10 @@ se_m_acid_armor_1: .byte W01 .byte VOICE , 23 .byte PAN , c_v+5 - .byte N01 , Cn1 + .byte N01 , Cn1 .byte W01 .byte PAN , c_v-8 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+0 @@ -125,7 +125,7 @@ se_m_acid_armor_1: .byte VOICE , 31 .byte PAN , c_v+6 .byte BEND , c_v-37 - .byte N06 , Dn1 + .byte N06 , Dn1 .byte W01 .byte BEND , c_v-16 .byte W01 @@ -140,7 +140,7 @@ se_m_acid_armor_1: .byte N01 , Fn1 , v084 .byte W01 .byte PAN , c_v-10 - .byte N01 , Fn2 + .byte N01 , Fn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+0 @@ -162,7 +162,7 @@ se_m_acid_armor_1: .byte N01 , Cn1 , v068 .byte W01 .byte PAN , c_v-9 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+0 diff --git a/sound/songs/se_m_attract2.s b/sound/songs/se_m_attract2.s index 7d3d6f3c555b..9b846f13e473 100644 --- a/sound/songs/se_m_attract2.s +++ b/sound/songs/se_m_attract2.s @@ -34,7 +34,7 @@ se_m_attract2_1: .byte W12 .byte c_v+0 .byte W06 - .byte N54 , Cn4 + .byte N54 , Cn4 .byte W06 .byte PAN , c_v+6 .byte W12 @@ -45,7 +45,7 @@ se_m_attract2_1: .byte c_v+0 .byte W12 .byte c_v-4 - .byte N54 , Dn4 + .byte N54 , Dn4 .byte W12 .byte PAN , c_v-10 .byte W12 @@ -55,7 +55,7 @@ se_m_attract2_1: .byte W12 .byte c_v+6 .byte W06 - .byte N54 , Cn4 + .byte N54 , Cn4 .byte W06 .byte PAN , c_v+9 .byte W12 diff --git a/sound/songs/se_m_bite.s b/sound/songs/se_m_bite.s index 3c51a8f2ff84..15d690e2e817 100644 --- a/sound/songs/se_m_bite.s +++ b/sound/songs/se_m_bite.s @@ -25,11 +25,11 @@ se_m_bite_1: .byte BEND , c_v+0 .byte N02 , Gn3 , v112 .byte W02 - .byte Gs3 + .byte Gs3 .byte W01 .byte PAN , c_v-7 .byte W01 - .byte N02 , An3 + .byte N02 , An3 .byte W02 .byte PAN , c_v+7 .byte W02 @@ -79,7 +79,7 @@ se_m_bite_2: .byte W10 .byte N01 , Gn2 , v040 .byte W08 - .byte N01 + .byte N01 .byte W06 .byte FINE diff --git a/sound/songs/se_m_bonemerang.s b/sound/songs/se_m_bonemerang.s index 11f035347e87..933980936442 100644 --- a/sound/songs/se_m_bonemerang.s +++ b/sound/songs/se_m_bonemerang.s @@ -26,18 +26,18 @@ se_m_bonemerang_1: .byte N01 , Cn5 , v127 .byte W01 .byte PAN , c_v+10 - .byte N01 , Cn6 + .byte N01 , Cn6 .byte W01 .byte PAN , c_v+0 - .byte N01 , Cn5 + .byte N01 , Cn5 .byte W04 - .byte N01 + .byte N01 .byte W01 .byte PAN , c_v-11 - .byte N01 , Cn6 + .byte N01 , Cn6 .byte W01 .byte PAN , c_v+0 - .byte N01 , Cn5 + .byte N01 , Cn5 .byte W04 .byte FINE diff --git a/sound/songs/se_m_brick_break.s b/sound/songs/se_m_brick_break.s index 08058089f035..ce13218d2455 100644 --- a/sound/songs/se_m_brick_break.s +++ b/sound/songs/se_m_brick_break.s @@ -23,7 +23,7 @@ se_m_brick_break_1: .byte PAN , c_v+0 .byte N01 , Cn4 , v127 .byte W01 - .byte N03 , Cn5 + .byte N03 , Cn5 .byte W01 .byte PAN , c_v+5 .byte W01 @@ -63,23 +63,23 @@ se_m_brick_break_2: .byte PAN , c_v+0 .byte N01 , Cn3 , v064 .byte W01 - .byte N03 , Gn3 + .byte N03 , Gn3 .byte W05 .byte W01 .byte N02 , En4 , v040 .byte W05 - .byte Gn3 + .byte Gn3 .byte W04 .byte En4 , v032 .byte W02 .byte W03 - .byte Gn3 + .byte Gn3 .byte W03 .byte W02 .byte En4 , v020 .byte W04 .byte W01 - .byte Gn3 + .byte Gn3 .byte W05 .byte FINE diff --git a/sound/songs/se_m_bubble.s b/sound/songs/se_m_bubble.s index ee31a176b184..4e1b988d59f8 100644 --- a/sound/songs/se_m_bubble.s +++ b/sound/songs/se_m_bubble.s @@ -37,7 +37,7 @@ se_m_bubble_1: .byte W02 .byte PAN , c_v+0 .byte BEND , c_v-1 - .byte N03 , En3 + .byte N03 , En3 .byte W15 .byte FINE diff --git a/sound/songs/se_m_bubble3.s b/sound/songs/se_m_bubble3.s index c14badb5a976..d9a7f1e82b99 100644 --- a/sound/songs/se_m_bubble3.s +++ b/sound/songs/se_m_bubble3.s @@ -38,7 +38,7 @@ se_m_bubble3_1: .byte PAN , c_v+0 .byte BEND , c_v-1 .byte W03 - .byte N06 + .byte N06 .byte W03 .byte BEND , c_v+6 .byte W01 diff --git a/sound/songs/se_m_charm.s b/sound/songs/se_m_charm.s index ef10cb3e3fa8..2bb2e0ef3714 100644 --- a/sound/songs/se_m_charm.s +++ b/sound/songs/se_m_charm.s @@ -32,7 +32,7 @@ se_m_charm_1: .byte VOL , 62*se_m_charm_mvl/mxv .byte PAN , c_v-4 .byte BEND , c_v+0 - .byte N15 + .byte N15 .byte W01 .byte VOL , 77*se_m_charm_mvl/mxv .byte PAN , c_v+0 diff --git a/sound/songs/se_m_confuse_ray.s b/sound/songs/se_m_confuse_ray.s index 12aea8ab8d2f..78407b8c113e 100644 --- a/sound/songs/se_m_confuse_ray.s +++ b/sound/songs/se_m_confuse_ray.s @@ -56,7 +56,7 @@ se_m_confuse_ray_1: .byte c_v-17 .byte W01 .byte c_v-1 - .byte N12 , As2 + .byte N12 , As2 .byte W02 .byte PAN , c_v+4 .byte BEND , c_v+8 @@ -82,7 +82,7 @@ se_m_confuse_ray_1: .byte c_v-16 .byte W01 .byte c_v-1 - .byte N12 , As2 + .byte N12 , As2 .byte W03 .byte PAN , c_v+4 .byte BEND , c_v+8 diff --git a/sound/songs/se_m_cosmic_power.s b/sound/songs/se_m_cosmic_power.s index 76812478b3d2..3e3f53c5ec76 100644 --- a/sound/songs/se_m_cosmic_power.s +++ b/sound/songs/se_m_cosmic_power.s @@ -27,24 +27,24 @@ se_m_cosmic_power_1: .byte W06 .byte W03 .byte PAN , c_v-5 - .byte N08 , Cn5 + .byte N08 , Cn5 .byte W03 .byte W06 .byte PAN , c_v-9 - .byte N10 , Gn5 + .byte N10 , Gn5 .byte W06 .byte W04 .byte PAN , c_v-5 - .byte N09 , Fn6 + .byte N09 , Fn6 .byte W02 .byte W06 .byte W02 .byte PAN , c_v+0 - .byte N09 , An5 + .byte N09 , An5 .byte W04 .byte W06 .byte PAN , c_v+4 - .byte N09 , As5 + .byte N09 , As5 .byte W06 .byte W03 .byte PAN , c_v+9 @@ -129,19 +129,19 @@ se_m_cosmic_power_2: .byte W02 .byte W06 .byte W01 - .byte N10 , Ds5 + .byte N10 , Ds5 .byte W05 .byte W06 - .byte N09 , As6 + .byte N09 , As6 .byte W06 .byte W03 - .byte Cn6 + .byte Cn6 .byte W03 .byte W06 - .byte N10 , Fn5 + .byte N10 , Fn5 .byte W06 .byte W04 - .byte N08 + .byte N08 .byte W02 .byte W06 .byte W01 diff --git a/sound/songs/se_m_detect.s b/sound/songs/se_m_detect.s index 181fb4079a9c..f06802802aea 100644 --- a/sound/songs/se_m_detect.s +++ b/sound/songs/se_m_detect.s @@ -31,7 +31,7 @@ se_m_detect_1: .byte c_v+4 .byte W01 .byte c_v+1 - .byte N06 , Bn5 + .byte N06 , Bn5 .byte W01 .byte PAN , c_v+0 .byte W02 @@ -45,7 +45,7 @@ se_m_detect_1: .byte c_v+4 .byte W01 .byte c_v+1 - .byte N06 , Bn5 + .byte N06 , Bn5 .byte W01 .byte PAN , c_v+0 .byte W04 @@ -59,7 +59,7 @@ se_m_detect_1: .byte c_v+4 .byte W01 .byte c_v+1 - .byte N06 , Bn5 + .byte N06 , Bn5 .byte W02 .byte PAN , c_v+0 .byte W04 @@ -72,7 +72,7 @@ se_m_detect_1: .byte c_v+4 .byte W01 .byte c_v+1 - .byte N06 , Bn5 + .byte N06 , Bn5 .byte W01 .byte PAN , c_v+0 .byte W03 diff --git a/sound/songs/se_m_dig.s b/sound/songs/se_m_dig.s index 42fed8ab5672..f8d3597d95bf 100644 --- a/sound/songs/se_m_dig.s +++ b/sound/songs/se_m_dig.s @@ -32,7 +32,7 @@ se_m_dig_1: .byte BEND , c_v+4 .byte W01 .byte c_v+16 - .byte N03 + .byte N03 .byte W01 .byte PAN , c_v-8 .byte BEND , c_v+28 diff --git a/sound/songs/se_m_dive.s b/sound/songs/se_m_dive.s index 2313667fcbbf..83cc42356410 100644 --- a/sound/songs/se_m_dive.s +++ b/sound/songs/se_m_dive.s @@ -30,7 +30,7 @@ se_m_dive_1: .byte W04 .byte PAN , c_v+6 .byte BEND , c_v-14 - .byte N04 + .byte N04 .byte W03 .byte PAN , c_v+3 .byte BEND , c_v-11 @@ -90,7 +90,7 @@ se_m_dive_2: .byte VOL , 105*se_m_dive_mvl/mxv .byte N06 , An2 , v040 .byte W06 - .byte Gn2 + .byte Gn2 .byte W06 .byte Gs3 , v044 .byte W07 diff --git a/sound/songs/se_m_dizzy_punch.s b/sound/songs/se_m_dizzy_punch.s index 886a4bc4e4b9..31ab74a77f8a 100644 --- a/sound/songs/se_m_dizzy_punch.s +++ b/sound/songs/se_m_dizzy_punch.s @@ -46,7 +46,7 @@ se_m_dizzy_punch_1: .byte W01 .byte PAN , c_v-13 .byte BEND , c_v+0 - .byte N04 , Cn6 + .byte N04 , Cn6 .byte W01 .byte VOL , 66*se_m_dizzy_punch_mvl/mxv .byte PAN , c_v+0 diff --git a/sound/songs/se_m_dragon_rage.s b/sound/songs/se_m_dragon_rage.s index e9eaefca0b98..608d9261156c 100644 --- a/sound/songs/se_m_dragon_rage.s +++ b/sound/songs/se_m_dragon_rage.s @@ -39,7 +39,7 @@ se_m_dragon_rage_1: .byte W01 .byte VOL , 21*se_m_dragon_rage_mvl/mxv .byte BEND , c_v+10 - .byte N10 , Bn2 + .byte N10 , Bn2 .byte W02 .byte PAN , c_v+5 .byte W01 @@ -54,7 +54,7 @@ se_m_dragon_rage_1: .byte PAN , c_v-2 .byte VOL , 21*se_m_dragon_rage_mvl/mxv .byte BEND , c_v+18 - .byte N10 , Cs3 + .byte N10 , Cs3 .byte W03 .byte PAN , c_v+5 .byte VOL , 47*se_m_dragon_rage_mvl/mxv @@ -69,7 +69,7 @@ se_m_dragon_rage_1: .byte W02 .byte VOL , 20*se_m_dragon_rage_mvl/mxv .byte BEND , c_v+29 - .byte N10 , Dn3 + .byte N10 , Dn3 .byte W01 .byte PAN , c_v+0 .byte W01 @@ -86,7 +86,7 @@ se_m_dragon_rage_1: .byte W01 .byte VOL , 21*se_m_dragon_rage_mvl/mxv .byte BEND , c_v+37 - .byte N10 , En3 + .byte N10 , En3 .byte W02 .byte PAN , c_v-2 .byte VOL , 46*se_m_dragon_rage_mvl/mxv @@ -101,7 +101,7 @@ se_m_dragon_rage_1: .byte c_v-5 .byte VOL , 20*se_m_dragon_rage_mvl/mxv .byte BEND , c_v+42 - .byte N20 , Fs3 + .byte N20 , Fs3 .byte W02 .byte VOL , 47*se_m_dragon_rage_mvl/mxv .byte W01 diff --git a/sound/songs/se_m_earthquake.s b/sound/songs/se_m_earthquake.s index 104eb1befa18..928ddfacd8d0 100644 --- a/sound/songs/se_m_earthquake.s +++ b/sound/songs/se_m_earthquake.s @@ -209,9 +209,9 @@ se_m_earthquake_2: .byte VOL , 110*se_m_earthquake_mvl/mxv .byte N02 , Fn2 , v072 .byte W02 - .byte N01 + .byte N01 .byte W01 - .byte N02 , Gn2 + .byte N02 , Gn2 .byte W03 .byte N01 , Gs2 , v060 .byte W06 @@ -223,87 +223,87 @@ se_m_earthquake_2_000: .byte N06 , Bn1 , v080 .byte W06 .byte PEND - .byte N06 + .byte N06 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte PATT .word se_m_earthquake_2_000 .byte N06 , Bn1 , v080 .byte W06 - .byte N06 + .byte N06 .byte W06 .byte VOL , 106*se_m_earthquake_mvl/mxv .byte PAN , c_v+0 - .byte N06 + .byte N06 .byte W03 .byte VOL , 103*se_m_earthquake_mvl/mxv .byte W03 - .byte N06 + .byte N06 .byte W01 .byte VOL , 97*se_m_earthquake_mvl/mxv .byte W03 .byte 89*se_m_earthquake_mvl/mxv .byte W02 - .byte N06 + .byte N06 .byte W02 .byte VOL , 85*se_m_earthquake_mvl/mxv .byte W04 .byte 78*se_m_earthquake_mvl/mxv .byte PAN , c_v+0 - .byte N06 + .byte N06 .byte W03 .byte VOL , 72*se_m_earthquake_mvl/mxv .byte W03 - .byte N06 + .byte N06 .byte W01 .byte VOL , 66*se_m_earthquake_mvl/mxv .byte W03 .byte 58*se_m_earthquake_mvl/mxv .byte W02 - .byte N06 + .byte N06 .byte W02 .byte VOL , 46*se_m_earthquake_mvl/mxv .byte W04 .byte 30*se_m_earthquake_mvl/mxv .byte PAN , c_v+0 - .byte N06 + .byte N06 .byte W03 .byte VOL , 12*se_m_earthquake_mvl/mxv .byte W03 diff --git a/sound/songs/se_m_encore2.s b/sound/songs/se_m_encore2.s index 9c53cdfe3c94..61e522acac52 100644 --- a/sound/songs/se_m_encore2.s +++ b/sound/songs/se_m_encore2.s @@ -154,7 +154,7 @@ se_m_encore2_1_000: .byte 12*se_m_encore2_mvl/mxv .byte PAN , c_v-2 .byte W02 - .byte EOT , Cn3 + .byte EOT , Cn3 .byte FINE @******************************************************@ diff --git a/sound/songs/se_m_explosion.s b/sound/songs/se_m_explosion.s index c93f485b8887..039c563f7869 100644 --- a/sound/songs/se_m_explosion.s +++ b/sound/songs/se_m_explosion.s @@ -25,19 +25,19 @@ se_m_explosion_1: .byte BEND , c_v+0 .byte N01 , Ds3 , v127 .byte W01 - .byte As2 + .byte As2 .byte W02 .byte PAN , c_v-8 - .byte N02 , Gn3 + .byte N02 , Gn3 .byte W01 .byte PAN , c_v+7 .byte W03 .byte c_v+0 - .byte N01 , Ds3 + .byte N01 , Ds3 .byte W01 - .byte As2 + .byte As2 .byte W02 - .byte N54 , Fn3 + .byte N54 , Fn3 .byte W11 .byte BEND , c_v+3 .byte W03 @@ -93,7 +93,7 @@ se_m_explosion_2: .byte VOL , 74*se_m_explosion_mvl/mxv .byte W06 .byte 125*se_m_explosion_mvl/mxv - .byte N02 + .byte N02 .byte W01 .byte VOL , 74*se_m_explosion_mvl/mxv .byte W16 diff --git a/sound/songs/se_m_flamethrower.s b/sound/songs/se_m_flamethrower.s index 29438337ff18..4c0c892c1ee3 100644 --- a/sound/songs/se_m_flamethrower.s +++ b/sound/songs/se_m_flamethrower.s @@ -129,7 +129,7 @@ se_m_flamethrower_1_000: .byte W03 .byte c_v+0 .byte W03 - .byte EOT , Cn3 + .byte EOT , Cn3 .byte FINE @********************** Track 2 **********************@ diff --git a/sound/songs/se_m_flatter.s b/sound/songs/se_m_flatter.s index e3746c990aab..799fdba91299 100644 --- a/sound/songs/se_m_flatter.s +++ b/sound/songs/se_m_flatter.s @@ -25,9 +25,9 @@ se_m_flatter_1: .byte BEND , c_v+0 .byte N01 , Dn5 , v127 .byte W01 - .byte Gn4 + .byte Gn4 .byte W01 - .byte N09 , En5 + .byte N09 , En5 .byte W02 .byte PAN , c_v+6 .byte W02 diff --git a/sound/songs/se_m_grasswhistle.s b/sound/songs/se_m_grasswhistle.s index 111bc2166d93..10c7447873a2 100644 --- a/sound/songs/se_m_grasswhistle.s +++ b/sound/songs/se_m_grasswhistle.s @@ -35,12 +35,12 @@ se_m_grasswhistle_1: .byte W09 .byte 0 .byte W03 - .byte N09 , An5 + .byte N09 , An5 .byte W12 - .byte En5 + .byte En5 .byte W12 .byte BEND , c_v-14 - .byte N66 , Gn5 + .byte N66 , Gn5 .byte W06 .byte BEND , c_v-8 .byte W06 @@ -85,14 +85,14 @@ se_m_grasswhistle_2: .byte 0 .byte W03 .byte PAN , c_v-12 - .byte N09 , An5 + .byte N09 , An5 .byte W12 .byte PAN , c_v+14 - .byte N09 , En5 + .byte N09 , En5 .byte W12 .byte PAN , c_v-15 .byte BEND , c_v-14 - .byte N66 , Gn5 + .byte N66 , Gn5 .byte W06 .byte BEND , c_v-8 .byte W06 diff --git a/sound/songs/se_m_hail.s b/sound/songs/se_m_hail.s index 0c04af2125a1..7f1d1c67da99 100644 --- a/sound/songs/se_m_hail.s +++ b/sound/songs/se_m_hail.s @@ -31,7 +31,7 @@ se_m_hail_1: .byte N01 , Gn4 , v112 .byte W01 .byte PAN , c_v+0 - .byte N01 , Ds5 + .byte N01 , Ds5 .byte W03 .byte W01 .byte PAN , c_v+6 @@ -41,7 +41,7 @@ se_m_hail_1: .byte N01 , Gn4 , v064 .byte W02 .byte PAN , c_v+0 - .byte N01 , Ds5 + .byte N01 , Ds5 .byte W03 .byte PAN , c_v+11 .byte N02 , Ds5 , v020 @@ -51,7 +51,7 @@ se_m_hail_1: .byte N01 , Gn4 , v064 .byte W01 .byte PAN , c_v+0 - .byte N01 , Ds5 + .byte N01 , Ds5 .byte W04 .byte FINE @@ -64,20 +64,20 @@ se_m_hail_2: .byte PAN , c_v+0 .byte N01 , Dn4 , v040 .byte W04 - .byte Bn3 + .byte Bn3 .byte W02 .byte W03 - .byte Dn4 + .byte Dn4 .byte W03 .byte W01 .byte Bn3 , v032 .byte W05 - .byte Dn4 + .byte Dn4 .byte W03 .byte Bn3 , v012 .byte W03 .byte W02 - .byte Dn4 + .byte Dn4 .byte W04 .byte FINE diff --git a/sound/songs/se_m_haze.s b/sound/songs/se_m_haze.s index 4bf61faa693d..11497c846536 100644 --- a/sound/songs/se_m_haze.s +++ b/sound/songs/se_m_haze.s @@ -175,7 +175,7 @@ se_m_haze_1: .byte W03 .byte 6*se_m_haze_mvl/mxv .byte W02 - .byte EOT + .byte EOT .byte FINE @********************** Track 2 **********************@ @@ -192,42 +192,42 @@ se_m_haze_2: .byte W06 .byte W06 .byte W06 - .byte Fs4 + .byte Fs4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte Gn4 + .byte Gn4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte Gs4 + .byte Gs4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte Gn4 + .byte Gn4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte Fs4 + .byte Fs4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte Fn4 + .byte Fn4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte En4 + .byte En4 .byte W06 .byte W06 .byte W06 .byte W06 - .byte N18 , Ds4 + .byte N18 , Ds4 .byte W06 .byte W06 .byte W06 diff --git a/sound/songs/se_m_heal_bell.s b/sound/songs/se_m_heal_bell.s index b2b17f7d84ac..fbe315c8788d 100644 --- a/sound/songs/se_m_heal_bell.s +++ b/sound/songs/se_m_heal_bell.s @@ -30,10 +30,10 @@ se_m_heal_bell_1: .byte c_v+11 .byte W01 .byte c_v+1 - .byte N01 , An5 + .byte N01 , An5 .byte W01 .byte MOD , 7 - .byte N18 , Bn5 + .byte N18 , Bn5 .byte W02 .byte PAN , c_v+11 .byte W01 diff --git a/sound/songs/se_m_heat_wave.s b/sound/songs/se_m_heat_wave.s index a4b5cc896246..da5842f8f8e0 100644 --- a/sound/songs/se_m_heat_wave.s +++ b/sound/songs/se_m_heat_wave.s @@ -145,7 +145,7 @@ se_m_heat_wave_1: .byte W02 .byte VOL , 17*se_m_heat_wave_mvl/mxv .byte W03 - .byte EOT + .byte EOT .byte FINE @********************** Track 2 **********************@ diff --git a/sound/songs/se_m_hydro_pump.s b/sound/songs/se_m_hydro_pump.s index 050f6281be9d..c214985e4718 100644 --- a/sound/songs/se_m_hydro_pump.s +++ b/sound/songs/se_m_hydro_pump.s @@ -76,7 +76,7 @@ se_m_hydro_pump_1: .byte W01 .byte VOL , 6*se_m_hydro_pump_mvl/mxv .byte W05 - .byte EOT + .byte EOT .byte FINE @********************** Track 2 **********************@ diff --git a/sound/songs/se_m_hyper_beam.s b/sound/songs/se_m_hyper_beam.s index bce85a21a2e3..b6ffcfc2f787 100644 --- a/sound/songs/se_m_hyper_beam.s +++ b/sound/songs/se_m_hyper_beam.s @@ -25,21 +25,21 @@ se_m_hyper_beam_1: .byte BEND , c_v+0 .byte N02 , En3 , v127 .byte W03 - .byte N01 , As3 + .byte N01 , As3 .byte W03 - .byte N02 , Gn3 + .byte N02 , Gn3 .byte W03 - .byte N01 , Cs4 + .byte N01 , Cs4 .byte W03 .byte PAN , c_v+7 .byte N02 , En3 , v072 .byte W03 - .byte N01 , As3 + .byte N01 , As3 .byte W03 .byte PAN , c_v-7 .byte N02 , Gn3 , v040 .byte W03 - .byte N01 , Cs4 + .byte N01 , Cs4 .byte W03 .byte FINE @@ -51,16 +51,16 @@ se_m_hyper_beam_2: .byte VOL , 110*se_m_hyper_beam_mvl/mxv .byte N01 , Cn3 , v040 .byte W02 - .byte N01 + .byte N01 .byte W04 - .byte N01 + .byte N01 .byte W02 - .byte N01 + .byte N01 .byte W04 se_m_hyper_beam_2_000: .byte N01 , Cn3 , v020 .byte W02 - .byte N01 + .byte N01 .byte W04 .byte PEND .byte PATT diff --git a/sound/songs/se_m_hyper_beam2.s b/sound/songs/se_m_hyper_beam2.s index 304fa7b3f2a4..fb2183422232 100644 --- a/sound/songs/se_m_hyper_beam2.s +++ b/sound/songs/se_m_hyper_beam2.s @@ -30,19 +30,19 @@ se_m_hyper_beam2_1: .byte c_v+28 .byte W01 .byte c_v+0 - .byte N02 , Cs4 + .byte N02 , Cs4 .byte W01 .byte BEND , c_v+30 .byte W02 .byte c_v+0 - .byte N03 , As3 + .byte N03 , As3 .byte W01 .byte BEND , c_v+11 .byte W01 .byte c_v+28 .byte W01 .byte c_v+0 - .byte N02 , En4 + .byte N02 , En4 .byte W01 .byte BEND , c_v+30 .byte W02 @@ -55,7 +55,7 @@ se_m_hyper_beam2_1: .byte c_v+28 .byte W01 .byte c_v+0 - .byte N02 , Cs4 + .byte N02 , Cs4 .byte W01 .byte BEND , c_v+30 .byte W02 @@ -68,7 +68,7 @@ se_m_hyper_beam2_1: .byte c_v+28 .byte W01 .byte c_v+0 - .byte N02 , En4 + .byte N02 , En4 .byte W01 .byte BEND , c_v+30 .byte W02 @@ -82,16 +82,16 @@ se_m_hyper_beam2_2: .byte VOL , 110*se_m_hyper_beam2_mvl/mxv .byte N01 , Cn3 , v032 .byte W02 - .byte N01 + .byte N01 .byte W04 - .byte N01 + .byte N01 .byte W02 - .byte N01 + .byte N01 .byte W04 se_m_hyper_beam2_2_000: .byte N01 , Cn3 , v020 .byte W02 - .byte N01 + .byte N01 .byte W04 .byte PEND .byte PATT diff --git a/sound/songs/se_m_icy_wind.s b/sound/songs/se_m_icy_wind.s index d15350525ecd..b7e83e0321a5 100644 --- a/sound/songs/se_m_icy_wind.s +++ b/sound/songs/se_m_icy_wind.s @@ -30,7 +30,7 @@ se_m_icy_wind_1: .byte N01 , Ds4 , v112 .byte W01 .byte PAN , c_v+0 - .byte N01 , Bn4 + .byte N01 , Bn4 .byte W03 .byte FINE @@ -43,13 +43,13 @@ se_m_icy_wind_2: .byte PAN , c_v+0 .byte N01 , Dn4 , v040 .byte W04 - .byte Bn3 + .byte Bn3 .byte W02 .byte PAN , c_v-7 .byte W02 .byte c_v+9 .byte W01 - .byte N01 , Dn4 + .byte N01 , Dn4 .byte W01 .byte PAN , c_v-7 .byte W02 diff --git a/sound/songs/se_m_lock_on.s b/sound/songs/se_m_lock_on.s index d8e1de5b0f48..9c9576d97c34 100644 --- a/sound/songs/se_m_lock_on.s +++ b/sound/songs/se_m_lock_on.s @@ -37,7 +37,7 @@ se_m_lock_on_1: .byte W02 .byte PAN , c_v+6 .byte BEND , c_v+6 - .byte N01 , Cn4 + .byte N01 , Cn4 .byte W01 .byte Gn3 , v064 .byte W02 diff --git a/sound/songs/se_m_milk_drink.s b/sound/songs/se_m_milk_drink.s index 30a051540c5d..57e3a581d6fd 100644 --- a/sound/songs/se_m_milk_drink.s +++ b/sound/songs/se_m_milk_drink.s @@ -103,7 +103,7 @@ se_m_milk_drink_2: .byte N06 , Fs6 , v040 .byte W04 .byte W04 - .byte N06 + .byte N06 .byte W02 .byte W06 .byte W01 diff --git a/sound/songs/se_m_minimize.s b/sound/songs/se_m_minimize.s index 565450b2b46a..778e0ec7c99c 100644 --- a/sound/songs/se_m_minimize.s +++ b/sound/songs/se_m_minimize.s @@ -68,7 +68,7 @@ se_m_minimize_1: .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+28 - .byte N06 , An3 + .byte N06 , An3 .byte W01 .byte BEND , c_v+20 .byte W01 diff --git a/sound/songs/se_m_moonlight.s b/sound/songs/se_m_moonlight.s index bd4410b32331..f76181a8746f 100644 --- a/sound/songs/se_m_moonlight.s +++ b/sound/songs/se_m_moonlight.s @@ -26,18 +26,18 @@ se_m_moonlight_1: .byte BEND , c_v+3 .byte N01 , Ds6 , v092 .byte W01 - .byte Dn6 + .byte Dn6 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 .byte N20 , Gn6 , v100 .byte W21 se_m_moonlight_1_000: .byte N01 , Ds6 , v056 .byte W01 - .byte Dn6 + .byte Dn6 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 .byte N20 , Gn6 , v064 .byte W03 @@ -54,9 +54,9 @@ se_m_moonlight_1_001: .byte PAN , c_v+0 .byte N01 , Gs5 , v092 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte Cn5 + .byte Cn5 .byte W01 .byte N20 , Cn6 , v100 .byte W21 @@ -65,9 +65,9 @@ se_m_moonlight_1_002: .byte PAN , c_v+16 .byte N01 , Gs5 , v056 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte Cn5 + .byte Cn5 .byte W01 .byte N20 , Cn6 , v064 .byte W21 @@ -76,31 +76,31 @@ se_m_moonlight_1_003: .byte PAN , c_v-16 .byte N01 , Gs5 , v040 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte Cn5 + .byte Cn5 .byte W01 - .byte N20 , Cn6 + .byte N20 , Cn6 .byte W21 .byte PEND se_m_moonlight_1_004: .byte PAN , c_v+32 .byte N01 , Gs5 , v020 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte Cn5 + .byte Cn5 .byte W01 .byte PAN , c_v-32 - .byte N20 , Cn6 + .byte N20 , Cn6 .byte W21 .byte PEND .byte PAN , c_v+0 .byte N01 , Ds6 , v092 .byte W01 - .byte Dn6 + .byte Dn6 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 .byte N20 , Gn6 , v100 .byte W21 @@ -127,11 +127,11 @@ se_m_moonlight_2: .byte W10 .byte N01 , Ds6 , v112 .byte W02 - .byte Dn6 + .byte Dn6 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte N04 , Gn6 + .byte N04 , Gn6 .byte W05 .byte Gn6 , v096 .byte W05 @@ -154,11 +154,11 @@ se_m_moonlight_2_001: .byte W10 .byte N01 , Gs5 , v112 .byte W02 - .byte Gn5 + .byte Gn5 .byte W01 - .byte Cn5 + .byte Cn5 .byte W01 - .byte N04 , Cn6 + .byte N04 , Cn6 .byte W05 .byte Cn6 , v096 .byte W05 @@ -183,11 +183,11 @@ se_m_moonlight_2_002: .byte W10 .byte N01 , Ds6 , v112 .byte W02 - .byte Dn6 + .byte Dn6 .byte W01 - .byte Gn5 + .byte Gn5 .byte W01 - .byte N04 , Gn6 + .byte N04 , Gn6 .byte W05 .byte Gn6 , v096 .byte W05 diff --git a/sound/songs/se_m_morning_sun.s b/sound/songs/se_m_morning_sun.s index ac7667246f28..227098da1f42 100644 --- a/sound/songs/se_m_morning_sun.s +++ b/sound/songs/se_m_morning_sun.s @@ -82,7 +82,7 @@ se_m_morning_sun_2: .byte N06 , Gs6 , v108 .byte W03 .byte W03 - .byte Bn5 + .byte Bn5 .byte W03 .byte W03 .byte Gs6 , v100 diff --git a/sound/songs/se_m_nightmare.s b/sound/songs/se_m_nightmare.s index 825bfaea209d..f995d1310399 100644 --- a/sound/songs/se_m_nightmare.s +++ b/sound/songs/se_m_nightmare.s @@ -37,10 +37,10 @@ se_m_nightmare_1: .byte N03 , Fs3 , v088 .byte W06 .byte PAN , c_v+0 - .byte N03 , Ds3 + .byte N03 , Ds3 .byte W06 .byte PAN , c_v-16 - .byte N03 + .byte N03 .byte W09 .byte PAN , c_v-1 .byte N03 , An2 , v096 @@ -56,10 +56,10 @@ se_m_nightmare_1: .byte W03 .byte W03 .byte PAN , c_v-1 - .byte N03 , Fn3 + .byte N03 , Fn3 .byte W06 .byte PAN , c_v+16 - .byte N03 + .byte N03 .byte W15 .byte FINE @@ -77,55 +77,55 @@ se_m_nightmare_2: .byte W06 .byte PAN , c_v+6 .byte BEND , c_v+36 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v+17 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v+2 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v-8 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v+12 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v+6 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v+0 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v-6 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v-19 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v-31 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v-44 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v-7 .byte BEND , c_v-55 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+6 .byte BEND , c_v-64 - .byte N03 + .byte N03 .byte W18 .byte FINE diff --git a/sound/songs/se_m_petal_dance.s b/sound/songs/se_m_petal_dance.s index c8ad2810d97c..df5752e4bd4a 100644 --- a/sound/songs/se_m_petal_dance.s +++ b/sound/songs/se_m_petal_dance.s @@ -33,7 +33,7 @@ se_m_petal_dance_1: .byte Dn6 , v100 .byte W03 .byte W03 - .byte An5 + .byte An5 .byte W03 .byte W03 .byte PAN , c_v-4 @@ -61,7 +61,7 @@ se_m_petal_dance_1: .byte W03 .byte W03 .byte PAN , c_v+4 - .byte N06 , Dn6 + .byte N06 , Dn6 .byte W03 .byte W03 .byte PAN , c_v+0 @@ -137,7 +137,7 @@ se_m_petal_dance_2: .byte Bn5 , v088 .byte W03 .byte W03 - .byte En6 + .byte En6 .byte W03 .byte W03 .byte Bn5 , v084 @@ -158,7 +158,7 @@ se_m_petal_dance_2: .byte En6 , v064 .byte W03 .byte W03 - .byte Bn5 + .byte Bn5 .byte W03 .byte W03 .byte En6 , v060 diff --git a/sound/songs/se_m_rain_dance.s b/sound/songs/se_m_rain_dance.s index 810be0663326..bba4dc2b05ad 100644 --- a/sound/songs/se_m_rain_dance.s +++ b/sound/songs/se_m_rain_dance.s @@ -97,7 +97,7 @@ se_m_rain_dance_1: .byte 1*se_m_rain_dance_mvl/mxv .byte PAN , c_v+4 .byte W06 - .byte EOT + .byte EOT .byte FINE @******************************************************@ diff --git a/sound/songs/se_m_reversal.s b/sound/songs/se_m_reversal.s index 609c399f502b..5b62d7156eac 100644 --- a/sound/songs/se_m_reversal.s +++ b/sound/songs/se_m_reversal.s @@ -232,35 +232,35 @@ se_m_reversal_2: .byte W02 .byte W01 .byte c_v+31 - .byte N03 , Cs5 + .byte N03 , Cs5 .byte W01 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W03 .byte c_v+31 - .byte N03 , Dn5 + .byte N03 , Dn5 .byte W01 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , Ds5 + .byte N03 , Ds5 .byte W02 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , En5 + .byte N03 , En5 .byte W01 .byte BEND , c_v+0 .byte W02 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , Fn5 + .byte N03 , Fn5 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -268,35 +268,35 @@ se_m_reversal_2: .byte W02 .byte W01 .byte c_v+31 - .byte N03 , Fs5 + .byte N03 , Fs5 .byte W01 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W03 .byte c_v+31 - .byte N03 , Gn5 + .byte N03 , Gn5 .byte W01 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , Gs5 + .byte N03 , Gs5 .byte W02 .byte BEND , c_v+0 .byte W01 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , An5 + .byte N03 , An5 .byte W01 .byte BEND , c_v+0 .byte W02 .byte c_v-33 .byte W02 .byte c_v+31 - .byte N03 , As5 + .byte N03 , As5 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -304,7 +304,7 @@ se_m_reversal_2: .byte W02 .byte W01 .byte c_v+31 - .byte N03 , Bn5 + .byte N03 , Bn5 .byte W01 .byte BEND , c_v+0 .byte W01 diff --git a/sound/songs/se_m_sacred_fire.s b/sound/songs/se_m_sacred_fire.s index 5e6c864e20c6..0fda9c757ab2 100644 --- a/sound/songs/se_m_sacred_fire.s +++ b/sound/songs/se_m_sacred_fire.s @@ -27,7 +27,7 @@ se_m_sacred_fire_1: .byte W03 .byte PAN , c_v+0 .byte W01 - .byte N18 , Gn4 + .byte N18 , Gn4 .byte W02 .byte PAN , c_v-5 .byte W01 @@ -70,9 +70,9 @@ se_m_sacred_fire_2: .byte VOL , 110*se_m_sacred_fire_mvl/mxv .byte N01 , Gn2 , v032 .byte W02 - .byte N01 + .byte N01 .byte W02 - .byte N18 + .byte N18 .byte W03 .byte VOL , 98*se_m_sacred_fire_mvl/mxv .byte W03 diff --git a/sound/songs/se_m_sand_tomb.s b/sound/songs/se_m_sand_tomb.s index 8edf0abf8813..4c14aabcc4a6 100644 --- a/sound/songs/se_m_sand_tomb.s +++ b/sound/songs/se_m_sand_tomb.s @@ -126,45 +126,45 @@ se_m_sand_tomb_2: .byte W03 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W03 .byte W01 .byte En3 , v080 .byte W03 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W03 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W03 .byte En3 , v080 .byte W02 .byte W02 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W03 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v092 .byte W04 diff --git a/sound/songs/se_m_sandstorm.s b/sound/songs/se_m_sandstorm.s index 9674cd043fc5..4cb12a38920c 100644 --- a/sound/songs/se_m_sandstorm.s +++ b/sound/songs/se_m_sandstorm.s @@ -161,7 +161,7 @@ se_m_sandstorm_1: .byte 13*se_m_sandstorm_mvl/mxv .byte BEND , c_v-6 .byte W03 - .byte EOT + .byte EOT .byte FINE @********************** Track 2 **********************@ @@ -175,13 +175,13 @@ se_m_sandstorm_2: .byte W03 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W03 @@ -189,13 +189,13 @@ se_m_sandstorm_2_000: .byte W01 .byte N03 , En3 , v080 .byte W03 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W03 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W03 @@ -203,13 +203,13 @@ se_m_sandstorm_2_000: .byte W02 .byte PEND .byte W02 - .byte Dn3 + .byte Dn3 .byte W04 .byte Cn3 , v100 .byte W03 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W04 @@ -219,13 +219,13 @@ se_m_sandstorm_2_000: .byte W03 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W04 .byte En3 , v080 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v100 .byte W03 @@ -254,7 +254,7 @@ se_m_sandstorm_2_000: .byte W04 .byte En3 , v032 .byte W04 - .byte Dn3 + .byte Dn3 .byte W03 .byte Cn3 , v048 .byte W03 diff --git a/sound/songs/se_m_self_destruct.s b/sound/songs/se_m_self_destruct.s index f2ab617ca89d..645085e1e5ed 100644 --- a/sound/songs/se_m_self_destruct.s +++ b/sound/songs/se_m_self_destruct.s @@ -25,9 +25,9 @@ se_m_self_destruct_1: .byte BEND , c_v+0 .byte N01 , Gn3 , v127 .byte W01 - .byte Cn3 + .byte Cn3 .byte W01 - .byte N24 , An3 + .byte N24 , An3 .byte W06 .byte PAN , c_v+6 .byte W04 diff --git a/sound/songs/se_m_sing.s b/sound/songs/se_m_sing.s index f12509f56e5a..8c48c822473f 100644 --- a/sound/songs/se_m_sing.s +++ b/sound/songs/se_m_sing.s @@ -46,7 +46,7 @@ se_m_sing_1: .byte MOD , 0 .byte W03 .byte VOL , 95*se_m_sing_mvl/mxv - .byte N21 , Fn5 + .byte N21 , Fn5 .byte W06 .byte W06 se_m_sing_1_000: @@ -128,7 +128,7 @@ se_m_sing_2: .byte W03 .byte VOL , 95*se_m_sing_mvl/mxv .byte PAN , c_v-12 - .byte N21 , Fn5 + .byte N21 , Fn5 .byte W06 .byte W06 se_m_sing_2_000: diff --git a/sound/songs/se_m_sketch.s b/sound/songs/se_m_sketch.s index 3657d200925f..c17c4056f2ee 100644 --- a/sound/songs/se_m_sketch.s +++ b/sound/songs/se_m_sketch.s @@ -31,7 +31,7 @@ se_m_sketch_1: .byte VOICE , 31 .byte VOL , 40*se_m_sketch_mvl/mxv .byte BEND , c_v-1 - .byte N03 , Cs5 + .byte N03 , Cs5 .byte W01 .byte VOL , 64*se_m_sketch_mvl/mxv .byte PAN , c_v-6 @@ -44,7 +44,7 @@ se_m_sketch_1: .byte VOL , 110*se_m_sketch_mvl/mxv .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , As5 + .byte N02 , As5 .byte W01 .byte BEND , c_v+12 .byte W01 diff --git a/sound/songs/se_m_sky_uppercut.s b/sound/songs/se_m_sky_uppercut.s index 66a791f96ca5..bed6c19c5f75 100644 --- a/sound/songs/se_m_sky_uppercut.s +++ b/sound/songs/se_m_sky_uppercut.s @@ -29,7 +29,7 @@ se_m_sky_uppercut_1: .byte W03 .byte 93*se_m_sky_uppercut_mvl/mxv .byte PAN , c_v-6 - .byte N02 , Cn5 + .byte N02 , Cn5 .byte W03 .byte VOL , 110*se_m_sky_uppercut_mvl/mxv .byte W01 @@ -74,9 +74,9 @@ se_m_sky_uppercut_2: .byte VOL , 110*se_m_sky_uppercut_mvl/mxv .byte N02 , Cn3 , v060 .byte W03 - .byte Gn2 + .byte Gn2 .byte W03 - .byte Gs4 + .byte Gs4 .byte W04 .byte Gs4 , v020 .byte W02 diff --git a/sound/songs/se_m_snore.s b/sound/songs/se_m_snore.s index aff9ef5e37ba..13e2f6f52b2a 100644 --- a/sound/songs/se_m_snore.s +++ b/sound/songs/se_m_snore.s @@ -63,28 +63,28 @@ se_m_snore_2: .byte VOICE , 27 .byte N01 , En2 , v052 .byte W02 - .byte Dn2 + .byte Dn2 .byte W02 - .byte En2 + .byte En2 .byte W02 .byte W01 - .byte Dn2 + .byte Dn2 .byte W02 - .byte En2 + .byte En2 .byte W03 .byte W01 .byte En2 , v064 .byte W02 - .byte Gs2 + .byte Gs2 .byte W03 - .byte Dn3 + .byte Dn3 .byte W02 - .byte En2 + .byte En2 .byte W02 - .byte Gs2 + .byte Gs2 .byte W02 .byte W01 - .byte Dn3 + .byte Dn3 .byte W05 .byte FINE diff --git a/sound/songs/se_m_solar_beam.s b/sound/songs/se_m_solar_beam.s index c260c332ab54..6a12b4a10ea8 100644 --- a/sound/songs/se_m_solar_beam.s +++ b/sound/songs/se_m_solar_beam.s @@ -145,7 +145,7 @@ se_m_solar_beam_1: .byte W02 .byte VOL , 5*se_m_solar_beam_mvl/mxv .byte W04 - .byte EOT + .byte EOT .byte FINE @******************************************************@ diff --git a/sound/songs/se_m_spit_up.s b/sound/songs/se_m_spit_up.s index 5d96c7b86981..1073ad01fc97 100644 --- a/sound/songs/se_m_spit_up.s +++ b/sound/songs/se_m_spit_up.s @@ -34,7 +34,7 @@ se_m_spit_up_1: .byte W01 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N03 , Gn4 + .byte N03 , Gn4 .byte W02 .byte PAN , c_v-7 .byte BEND , c_v+15 @@ -63,7 +63,7 @@ se_m_spit_up_2: .byte N03 , En3 , v052 .byte W03 .byte W01 - .byte N03 + .byte N03 .byte W02 .byte W03 .byte En3 , v032 diff --git a/sound/songs/se_m_stat_decrease.s b/sound/songs/se_m_stat_decrease.s index 5cdf8ac36df4..51218db1e755 100644 --- a/sound/songs/se_m_stat_decrease.s +++ b/sound/songs/se_m_stat_decrease.s @@ -30,13 +30,13 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+16 - .byte N02 , Cs5 + .byte N02 , Cs5 .byte W01 .byte BEND , c_v+12 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+8 - .byte N02 , Fs5 + .byte N02 , Fs5 .byte W01 .byte BEND , c_v+5 .byte W01 @@ -44,11 +44,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+0 - .byte N02 , Fs4 + .byte N02 , Fs4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , Cn6 + .byte N02 , Cn6 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -56,13 +56,13 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+16 - .byte N02 , Cn5 + .byte N02 , Cn5 .byte W01 .byte BEND , c_v+12 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+8 - .byte N02 , Fn5 + .byte N02 , Fn5 .byte W01 .byte BEND , c_v+5 .byte W01 @@ -70,11 +70,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+0 - .byte N02 , Fn4 + .byte N02 , Fn4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , Bn5 + .byte N02 , Bn5 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -82,13 +82,13 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+16 - .byte N02 , Bn4 + .byte N02 , Bn4 .byte W01 .byte BEND , c_v+12 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+8 - .byte N02 , En5 + .byte N02 , En5 .byte W01 .byte BEND , c_v+5 .byte W01 @@ -96,11 +96,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+0 - .byte N02 , En4 + .byte N02 , En4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , As5 + .byte N02 , As5 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -108,13 +108,13 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+16 - .byte N02 , As4 + .byte N02 , As4 .byte W01 .byte BEND , c_v+12 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+8 - .byte N02 , Ds5 + .byte N02 , Ds5 .byte W01 .byte BEND , c_v+5 .byte W01 @@ -122,11 +122,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+0 - .byte N02 , Ds4 + .byte N02 , Ds4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , An5 + .byte N02 , An5 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -134,7 +134,7 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+16 - .byte N02 , An4 + .byte N02 , An4 .byte W01 .byte BEND , c_v+12 .byte W02 @@ -148,11 +148,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-12 .byte BEND , c_v+0 - .byte N02 , Cs4 + .byte N02 , Cs4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , An5 + .byte N02 , An5 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -160,7 +160,7 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+12 .byte BEND , c_v+16 - .byte N02 , An4 + .byte N02 , An4 .byte W01 .byte BEND , c_v+12 .byte W02 @@ -174,11 +174,11 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v-16 .byte BEND , c_v+0 - .byte N02 , Cs4 + .byte N02 , Cs4 .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+42 - .byte N02 , An5 + .byte N02 , An5 .byte W01 .byte BEND , c_v+31 .byte W01 @@ -186,7 +186,7 @@ se_m_stat_decrease_1: .byte W01 .byte PAN , c_v+16 .byte BEND , c_v+16 - .byte N02 , An4 + .byte N02 , An4 .byte W01 .byte BEND , c_v+12 .byte W02 @@ -202,55 +202,55 @@ se_m_stat_decrease_2: .byte VOL , 70*se_m_stat_decrease_mvl/mxv .byte N02 , As3 , v052 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte W01 - .byte An3 + .byte An3 .byte W03 - .byte N02 + .byte N02 .byte W02 .byte W02 - .byte Gs3 + .byte Gs3 .byte W04 - .byte N02 + .byte N02 .byte W03 - .byte Gn3 + .byte Gn3 .byte W03 .byte W01 - .byte N02 + .byte N02 .byte W03 - .byte Fs3 + .byte Fs3 .byte W02 .byte W02 - .byte N02 + .byte N02 .byte W04 - .byte Fn3 + .byte Fn3 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte W01 - .byte En3 + .byte En3 .byte W03 - .byte N02 + .byte N02 .byte W02 .byte W02 - .byte Ds3 + .byte Ds3 .byte W04 .byte Ds3 , v032 .byte W03 - .byte Dn3 + .byte Dn3 .byte W03 .byte W01 - .byte N02 + .byte N02 .byte W03 .byte Cs3 , v020 .byte W02 .byte W02 - .byte N02 + .byte N02 .byte W04 .byte Cn3 , v012 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte FINE diff --git a/sound/songs/se_m_stat_increase.s b/sound/songs/se_m_stat_increase.s index e9eea563a03d..2556b6afa78e 100644 --- a/sound/songs/se_m_stat_increase.s +++ b/sound/songs/se_m_stat_increase.s @@ -30,13 +30,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+5 - .byte N02 , An4 + .byte N02 , An4 .byte W01 .byte BEND , c_v+8 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+12 - .byte N02 , Dn5 + .byte N02 , Dn5 .byte W01 .byte BEND , c_v+16 .byte W01 @@ -44,13 +44,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+32 - .byte N02 , Dn4 + .byte N02 , Dn4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , As5 + .byte N02 , As5 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -58,13 +58,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+5 - .byte N02 , As4 + .byte N02 , As4 .byte W01 .byte BEND , c_v+8 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+12 - .byte N02 , Ds5 + .byte N02 , Ds5 .byte W01 .byte BEND , c_v+16 .byte W01 @@ -72,13 +72,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+32 - .byte N02 , Ds4 + .byte N02 , Ds4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Bn5 + .byte N02 , Bn5 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -86,13 +86,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+5 - .byte N02 , Bn4 + .byte N02 , Bn4 .byte W01 .byte BEND , c_v+8 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+12 - .byte N02 , En5 + .byte N02 , En5 .byte W01 .byte BEND , c_v+16 .byte W01 @@ -100,13 +100,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+32 - .byte N02 , En4 + .byte N02 , En4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Cn6 + .byte N02 , Cn6 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -114,13 +114,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+5 - .byte N02 , Cn5 + .byte N02 , Cn5 .byte W01 .byte BEND , c_v+8 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+12 - .byte N02 , Fn5 + .byte N02 , Fn5 .byte W01 .byte BEND , c_v+16 .byte W01 @@ -128,13 +128,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-6 .byte BEND , c_v+32 - .byte N02 , Fn4 + .byte N02 , Fn4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Cs6 + .byte N02 , Cs6 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -142,7 +142,7 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+6 .byte BEND , c_v+5 - .byte N02 , Cs5 + .byte N02 , Cs5 .byte W01 .byte BEND , c_v+8 .byte W02 @@ -156,13 +156,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-12 .byte BEND , c_v+32 - .byte N02 , Fn4 + .byte N02 , Fn4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Cs6 + .byte N02 , Cs6 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -170,7 +170,7 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+12 .byte BEND , c_v+5 - .byte N02 , Cs5 + .byte N02 , Cs5 .byte W01 .byte BEND , c_v+8 .byte W02 @@ -184,13 +184,13 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v-16 .byte BEND , c_v+32 - .byte N02 , Fn4 + .byte N02 , Fn4 .byte W01 .byte BEND , c_v+42 .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Cs6 + .byte N02 , Cs6 .byte W01 .byte BEND , c_v+0 .byte W01 @@ -198,7 +198,7 @@ se_m_stat_increase_1: .byte W01 .byte PAN , c_v+16 .byte BEND , c_v+5 - .byte N02 , Cs5 + .byte N02 , Cs5 .byte W01 .byte BEND , c_v+8 .byte W02 @@ -214,55 +214,55 @@ se_m_stat_increase_2: .byte VOL , 70*se_m_stat_increase_mvl/mxv .byte N02 , Cn3 , v052 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte W01 - .byte Cs3 + .byte Cs3 .byte W03 - .byte N02 + .byte N02 .byte W02 .byte W02 - .byte Dn3 + .byte Dn3 .byte W04 - .byte N02 + .byte N02 .byte W03 - .byte Ds3 + .byte Ds3 .byte W03 .byte W01 - .byte N02 + .byte N02 .byte W03 - .byte En3 + .byte En3 .byte W02 .byte W02 - .byte N02 + .byte N02 .byte W04 - .byte Fn3 + .byte Fn3 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte W01 - .byte Fs3 + .byte Fs3 .byte W03 - .byte N02 + .byte N02 .byte W02 .byte W02 - .byte Gn3 + .byte Gn3 .byte W04 .byte Gn3 , v032 .byte W03 - .byte Gs3 + .byte Gs3 .byte W03 .byte W01 - .byte N02 + .byte N02 .byte W03 .byte An3 , v020 .byte W02 .byte W02 - .byte N02 + .byte N02 .byte W04 .byte As3 , v012 .byte W03 - .byte N02 + .byte N02 .byte W03 .byte FINE diff --git a/sound/songs/se_m_strength.s b/sound/songs/se_m_strength.s index 0fca48906f51..bda5fc61e5e8 100644 --- a/sound/songs/se_m_strength.s +++ b/sound/songs/se_m_strength.s @@ -51,9 +51,9 @@ se_m_strength_2: .byte VOL , 110*se_m_strength_mvl/mxv .byte N02 , Fn2 , v072 .byte W02 - .byte N01 + .byte N01 .byte W01 - .byte N02 , Gn2 + .byte N02 , Gn2 .byte W03 .byte N01 , Gs2 , v060 .byte W01 diff --git a/sound/songs/se_m_string_shot2.s b/sound/songs/se_m_string_shot2.s index 7bd0a74275df..b885a7d1a8c0 100644 --- a/sound/songs/se_m_string_shot2.s +++ b/sound/songs/se_m_string_shot2.s @@ -32,7 +32,7 @@ se_m_string_shot2_1: .byte c_v+8 .byte W01 .byte PAN , c_v+16 - .byte N09 , Gn4 + .byte N09 , Gn4 .byte W03 .byte BEND , c_v-8 .byte W03 @@ -40,7 +40,7 @@ se_m_string_shot2_1: .byte W06 .byte PAN , c_v+0 .byte BEND , c_v-11 - .byte N09 , En4 + .byte N09 , En4 .byte W03 .byte BEND , c_v-5 .byte W03 @@ -49,7 +49,7 @@ se_m_string_shot2_1: .byte c_v-3 .byte W01 .byte PAN , c_v-16 - .byte N09 , Gn4 + .byte N09 , Gn4 .byte W03 .byte BEND , c_v-19 .byte W03 @@ -57,7 +57,7 @@ se_m_string_shot2_1: .byte W06 .byte PAN , c_v+0 .byte BEND , c_v-19 - .byte N09 , En4 + .byte N09 , En4 .byte W03 .byte BEND , c_v-13 .byte W03 @@ -101,14 +101,14 @@ se_m_string_shot2_2: .byte N09 , Cn3 , v052 .byte W12 .byte PAN , c_v-7 - .byte N09 , Gn2 + .byte N09 , Gn2 .byte W12 se_m_string_shot2_2_000: .byte PAN , c_v+9 .byte N09 , Cn3 , v052 .byte W12 .byte PAN , c_v-6 - .byte N09 , Gn2 + .byte N09 , Gn2 .byte W12 .byte PEND .byte PATT diff --git a/sound/songs/se_m_supersonic.s b/sound/songs/se_m_supersonic.s index f791c9b15cdf..c975dad4b645 100644 --- a/sound/songs/se_m_supersonic.s +++ b/sound/songs/se_m_supersonic.s @@ -44,7 +44,7 @@ se_m_supersonic_1: .byte VOL , 0*se_m_supersonic_mvl/mxv .byte PAN , c_v+0 .byte BEND , c_v-4 - .byte N32 + .byte N32 .byte W01 .byte PAN , c_v+6 .byte BEND , c_v-1 diff --git a/sound/songs/se_m_sweet_scent.s b/sound/songs/se_m_sweet_scent.s index 0abf858d27ec..3b9bd527c86a 100644 --- a/sound/songs/se_m_sweet_scent.s +++ b/sound/songs/se_m_sweet_scent.s @@ -33,7 +33,7 @@ se_m_sweet_scent_1: .byte W12 .byte PAN , c_v-4 .byte BEND , c_v+5 - .byte N36 , Fn3 + .byte N36 , Fn3 .byte W12 .byte PAN , c_v+0 .byte BEND , c_v+6 @@ -172,7 +172,7 @@ se_m_sweet_scent_2: .byte W02 .byte VOL , 12*se_m_sweet_scent_mvl/mxv .byte W03 - .byte EOT + .byte EOT .byte FINE @******************************************************@ diff --git a/sound/songs/se_m_swift.s b/sound/songs/se_m_swift.s index 10649a80e588..c87cbea41989 100644 --- a/sound/songs/se_m_swift.s +++ b/sound/songs/se_m_swift.s @@ -41,7 +41,7 @@ se_m_swift_1: .byte W02 .byte VOL , 100*se_m_swift_mvl/mxv .byte BEND , c_v+0 - .byte N06 + .byte N06 .byte W01 .byte PAN , c_v+5 .byte BEND , c_v-11 diff --git a/sound/songs/se_m_teleport.s b/sound/songs/se_m_teleport.s index 2c4ad40e8a0c..60f7945d7bb0 100644 --- a/sound/songs/se_m_teleport.s +++ b/sound/songs/se_m_teleport.s @@ -68,7 +68,7 @@ se_m_teleport_1: .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+6 - .byte N06 , Fn3 + .byte N06 , Fn3 .byte W01 .byte BEND , c_v+11 .byte W01 diff --git a/sound/songs/se_m_thunder_wave.s b/sound/songs/se_m_thunder_wave.s index c265355006ed..a0b06cb5deb5 100644 --- a/sound/songs/se_m_thunder_wave.s +++ b/sound/songs/se_m_thunder_wave.s @@ -31,7 +31,7 @@ se_m_thunder_wave_1: .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+32 - .byte N04 , Cn3 + .byte N04 , Cn3 .byte W02 .byte PAN , c_v+9 .byte W01 @@ -39,11 +39,11 @@ se_m_thunder_wave_1: .byte W03 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N01 , Gn3 + .byte N01 , Gn3 .byte W02 - .byte Bn2 + .byte Bn2 .byte W02 - .byte N13 , Gn3 + .byte N13 , Gn3 .byte W02 .byte VOL , 96*se_m_thunder_wave_mvl/mxv .byte W01 diff --git a/sound/songs/se_m_toxic.s b/sound/songs/se_m_toxic.s index 0e3ebe22049e..ae460ad7735c 100644 --- a/sound/songs/se_m_toxic.s +++ b/sound/songs/se_m_toxic.s @@ -36,7 +36,7 @@ se_m_toxic_1: .byte W01 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N02 , Cn2 + .byte N02 , Cn2 .byte W02 .byte PAN , c_v-7 .byte BEND , c_v+16 @@ -44,18 +44,18 @@ se_m_toxic_1: .byte PAN , c_v+0 .byte BEND , c_v+0 .byte W01 - .byte N01 + .byte N01 .byte W01 .byte PAN , c_v+8 - .byte N01 , Cn3 + .byte N01 , Cn3 .byte W01 .byte VOICE , 31 .byte PAN , c_v-16 - .byte N01 , Dn2 + .byte N01 , Dn2 .byte W02 .byte VOICE , 23 .byte PAN , c_v+0 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W01 .byte VOICE , 31 .byte PAN , c_v+16 @@ -64,10 +64,10 @@ se_m_toxic_1: .byte VOICE , 23 .byte PAN , c_v-8 .byte BEND , c_v+16 - .byte N01 , Cn3 + .byte N01 , Cn3 .byte W02 .byte PAN , c_v+8 - .byte N01 , Cn2 + .byte N01 , Cn2 .byte W08 .byte FINE diff --git a/sound/songs/se_m_tri_attack.s b/sound/songs/se_m_tri_attack.s index 448998e779f1..13947e6f1a59 100644 --- a/sound/songs/se_m_tri_attack.s +++ b/sound/songs/se_m_tri_attack.s @@ -68,17 +68,17 @@ se_m_tri_attack_2: .byte VOL , 110*se_m_tri_attack_mvl/mxv .byte N02 , Gs3 , v032 .byte W02 - .byte Gn3 + .byte Gn3 .byte W02 - .byte Fn3 + .byte Fn3 .byte W03 - .byte En3 + .byte En3 .byte W02 - .byte Dn3 + .byte Dn3 .byte W03 - .byte Cn3 + .byte Cn3 .byte W02 - .byte Gs2 + .byte Gs2 .byte W10 .byte FINE diff --git a/sound/songs/se_m_tri_attack2.s b/sound/songs/se_m_tri_attack2.s index 0afade13c6c8..61f11c39677d 100644 --- a/sound/songs/se_m_tri_attack2.s +++ b/sound/songs/se_m_tri_attack2.s @@ -100,7 +100,7 @@ se_m_tri_attack2_2: .byte VOL , 110*se_m_tri_attack2_mvl/mxv .byte N06 , Cn3 , v060 .byte W09 - .byte N15 + .byte N15 .byte W15 .byte W24 .byte W24 diff --git a/sound/songs/se_m_twister.s b/sound/songs/se_m_twister.s index e95e9b3224d0..bbb4f1ec0381 100644 --- a/sound/songs/se_m_twister.s +++ b/sound/songs/se_m_twister.s @@ -147,7 +147,7 @@ se_m_twister_1: .byte W02 .byte PAN , c_v-11 .byte W03 - .byte EOT + .byte EOT .byte FINE @********************** Track 2 **********************@ @@ -190,7 +190,7 @@ se_m_twister_2: .byte W05 .byte 18*se_m_twister_mvl/mxv .byte W05 - .byte EOT + .byte EOT .byte FINE @******************************************************@ diff --git a/sound/songs/se_m_vital_throw.s b/sound/songs/se_m_vital_throw.s index c89d003b6e5d..3e04b43e5b28 100644 --- a/sound/songs/se_m_vital_throw.s +++ b/sound/songs/se_m_vital_throw.s @@ -36,10 +36,10 @@ se_m_vital_throw_1: .byte VOICE , 21 .byte VOL , 110*se_m_vital_throw_mvl/mxv .byte BEND , c_v+0 - .byte N03 , Gn4 + .byte N03 , Gn4 .byte W06 .byte PAN , c_v+16 - .byte N03 , Cn5 + .byte N03 , Cn5 .byte W09 .byte FINE @@ -54,7 +54,7 @@ se_m_vital_throw_2: .byte N03 , Cn3 , v052 .byte W06 .byte PAN , c_v-7 - .byte N03 + .byte N03 .byte W09 .byte FINE diff --git a/sound/songs/se_m_vital_throw2.s b/sound/songs/se_m_vital_throw2.s index 3bffdeb2589b..0d1e64ecb5c7 100644 --- a/sound/songs/se_m_vital_throw2.s +++ b/sound/songs/se_m_vital_throw2.s @@ -36,7 +36,7 @@ se_m_vital_throw2_1: .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N06 , En3 + .byte N06 , En3 .byte W01 .byte BEND , c_v-9 .byte W01 @@ -49,7 +49,7 @@ se_m_vital_throw2_1: .byte W02 .byte PAN , c_v+0 .byte BEND , c_v+0 - .byte N09 , An2 + .byte N09 , An2 .byte W01 .byte BEND , c_v-9 .byte W01 @@ -84,10 +84,10 @@ se_m_vital_throw2_2: .byte N03 , Gs2 , v052 .byte W06 .byte PAN , c_v-7 - .byte N03 + .byte N03 .byte W06 .byte PAN , c_v+0 - .byte N03 + .byte N03 .byte W12 .byte FINE diff --git a/sound/songs/se_m_waterfall.s b/sound/songs/se_m_waterfall.s index a07e7e9713b4..9e16b9ee760c 100644 --- a/sound/songs/se_m_waterfall.s +++ b/sound/songs/se_m_waterfall.s @@ -100,23 +100,23 @@ se_m_waterfall_2: .byte VOL , 115*se_m_waterfall_mvl/mxv .byte N06 , Cn3 , v040 .byte W06 - .byte Gn2 + .byte Gn2 .byte W06 se_m_waterfall_2_000: .byte N06 , Cn3 , v040 .byte W06 - .byte Gn2 + .byte Gn2 .byte W06 .byte PEND .byte PATT .word se_m_waterfall_2_000 .byte N06 , Cn3 , v032 .byte W06 - .byte Gn2 + .byte Gn2 .byte W06 .byte Cn3 , v012 .byte W06 - .byte Gn2 + .byte Gn2 .byte W06 .byte FINE diff --git a/sound/songs/se_m_whirlpool.s b/sound/songs/se_m_whirlpool.s index bac3fa5bcf00..bf0b9cc7224a 100644 --- a/sound/songs/se_m_whirlpool.s +++ b/sound/songs/se_m_whirlpool.s @@ -106,7 +106,7 @@ se_m_whirlpool_1: .byte W01 .byte BEND , c_v-28 .byte W04 - .byte EOT + .byte EOT .byte FINE @******************************************************@ diff --git a/sound/songs/se_win_open.s b/sound/songs/se_win_open.s index 74656e9c0f8b..b5d582a8d913 100644 --- a/sound/songs/se_win_open.s +++ b/sound/songs/se_win_open.s @@ -22,7 +22,7 @@ se_win_open_1: .byte VOL , 110*se_win_open_mvl/mxv .byte N03 , Ds3 , v127 .byte W03 - .byte N15 , Gn4 + .byte N15 , Gn4 .byte W21 .byte FINE diff --git a/sound/voicegroups/voicegroup000.inc b/sound/voicegroups/voicegroup000.inc index 275b64993dab..7a2c5772f9c4 100644 --- a/sound/voicegroups/voicegroup000.inc +++ b/sound/voicegroups/voicegroup000.inc @@ -1,65 +1,65 @@ .align 2 voicegroup000:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 0, 9, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 0, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup001.inc b/sound/voicegroups/voicegroup001.inc index a22c5b6c5292..9960daf4a91a 100644 --- a/sound/voicegroups/voicegroup001.inc +++ b/sound/voicegroups/voicegroup001.inc @@ -1,32 +1,32 @@ .align 2 voicegroup001:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 6, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 - voice_square_2 60, 0, 3, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 6, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_2 60, 0, 3, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup002.inc b/sound/voicegroups/voicegroup002.inc index 3f5d846d4bb2..bd6f080aa44a 100644 --- a/sound/voicegroups/voicegroup002.inc +++ b/sound/voicegroups/voicegroup002.inc @@ -1,57 +1,57 @@ .align 2 voicegroup002:: - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 - voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 - voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 - voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 - voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 + voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 + voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 diff --git a/sound/voicegroups/voicegroup003.inc b/sound/voicegroups/voicegroup003.inc index 6c6193e7d543..d77150fc1248 100644 --- a/sound/voicegroups/voicegroup003.inc +++ b/sound/voicegroups/voicegroup003.inc @@ -1,57 +1,57 @@ .align 2 voicegroup003:: - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 diff --git a/sound/voicegroups/voicegroup004.inc b/sound/voicegroups/voicegroup004.inc index 786010cb0252..6aa28d6a9f11 100644 --- a/sound/voicegroups/voicegroup004.inc +++ b/sound/voicegroups/voicegroup004.inc @@ -1,93 +1,93 @@ .align 2 voicegroup004:: - voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 62, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound 65, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 56, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 - voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound 60, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 58, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 62, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 - voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 62, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound 65, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 56, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound 60, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 58, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 62, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup005.inc b/sound/voicegroups/voicegroup005.inc index efeab963b5d8..584451a62fc3 100644 --- a/sound/voicegroups/voicegroup005.inc +++ b/sound/voicegroups/voicegroup005.inc @@ -1,7 +1,7 @@ .align 2 voicegroup005:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_48, 255, 252, 0, 239 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_60, 255, 250, 0, 221 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_72, 255, 250, 0, 221 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_84, 255, 247, 0, 221 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_48, 255, 252, 0, 239 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_60, 255, 250, 0, 221 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_72, 255, 250, 0, 221 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_84, 255, 247, 0, 221 diff --git a/sound/voicegroups/voicegroup006.inc b/sound/voicegroups/voicegroup006.inc index 156caa6b5d41..52b2b335f256 100644 --- a/sound/voicegroups/voicegroup006.inc +++ b/sound/voicegroups/voicegroup006.inc @@ -1,6 +1,6 @@ .align 2 voicegroup006:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_60, 255, 0, 255, 196 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 196 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_84, 255, 0, 255, 196 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_60, 255, 0, 255, 196 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 196 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_84, 255, 0, 255, 196 diff --git a/sound/voicegroups/voicegroup007.inc b/sound/voicegroups/voicegroup007.inc index be49a69410b1..66bcd3fa6c32 100644 --- a/sound/voicegroups/voicegroup007.inc +++ b/sound/voicegroups/voicegroup007.inc @@ -1,134 +1,134 @@ .align 2 voicegroup007:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 - voice_square_1_alt 60, 0, 38, 2, 1, 0, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 36, 2, 0, 1, 4, 2 - voice_square_1_alt 60, 0, 21, 2, 0, 0, 15, 2 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 + voice_square_1_alt 60, 0, 38, 2, 1, 0, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 36, 2, 0, 1, 4, 2 + voice_square_1_alt 60, 0, 21, 2, 0, 0, 15, 2 diff --git a/sound/voicegroups/voicegroup008.inc b/sound/voicegroups/voicegroup008.inc index ba9ba6b27c8e..7fc874e87aad 100644 --- a/sound/voicegroups/voicegroup008.inc +++ b/sound/voicegroups/voicegroup008.inc @@ -1,5 +1,5 @@ .align 2 voicegroup008:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_39, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_51, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_39, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_51, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup009.inc b/sound/voicegroups/voicegroup009.inc index afa7a0f6ca71..4a51a02ca37d 100644 --- a/sound/voicegroups/voicegroup009.inc +++ b/sound/voicegroups/voicegroup009.inc @@ -1,5 +1,5 @@ .align 2 voicegroup009:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_60, 255, 0, 224, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 255, 0, 218, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_60, 255, 0, 224, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 255, 0, 218, 165 diff --git a/sound/voicegroups/voicegroup010.inc b/sound/voicegroups/voicegroup010.inc index c92a030f2d95..e2b38fcbd232 100644 --- a/sound/voicegroups/voicegroup010.inc +++ b/sound/voicegroups/voicegroup010.inc @@ -1,87 +1,87 @@ .align 2 voicegroup010:: - voice_keysplit_all voicegroup031 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 4, 0, 1 - voice_square_1 60, 0, 0, 3, 0, 4, 0, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_keysplit_all voicegroup031 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 4, 0, 1 + voice_square_1 60, 0, 0, 3, 0, 4, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup011.inc b/sound/voicegroups/voicegroup011.inc index 8c9b120c90ca..a8655cb8c915 100644 --- a/sound/voicegroups/voicegroup011.inc +++ b/sound/voicegroups/voicegroup011.inc @@ -1,131 +1,131 @@ .align 2 voicegroup011:: - voice_keysplit_all voicegroup022 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 - voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup022 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 + voice_square_2_alt 60, 0, 2, 0, 3, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup012.inc b/sound/voicegroups/voicegroup012.inc index 4f94f1b1d3c4..d92c270cbb56 100644 --- a/sound/voicegroups/voicegroup012.inc +++ b/sound/voicegroups/voicegroup012.inc @@ -1,105 +1,105 @@ .align 2 voicegroup012:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 178, 180, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 178, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 diff --git a/sound/voicegroups/voicegroup013.inc b/sound/voicegroups/voicegroup013.inc index 4625bd9d8237..f17ad599a01f 100644 --- a/sound/voicegroups/voicegroup013.inc +++ b/sound/voicegroups/voicegroup013.inc @@ -1,93 +1,93 @@ .align 2 voicegroup013:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup014.inc b/sound/voicegroups/voicegroup014.inc index d9cb8b079e4b..c3136f2fd2a9 100644 --- a/sound/voicegroups/voicegroup014.inc +++ b/sound/voicegroups/voicegroup014.inc @@ -1,88 +1,88 @@ .align 2 voicegroup014:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 diff --git a/sound/voicegroups/voicegroup015.inc b/sound/voicegroups/voicegroup015.inc index 530e017cd033..81e200180e31 100644 --- a/sound/voicegroups/voicegroup015.inc +++ b/sound/voicegroups/voicegroup015.inc @@ -1,95 +1,95 @@ .align 2 voicegroup015:: - voice_keysplit_all voicegroup016 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 - voice_square_2 60, 0, 3, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup016 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 + voice_square_2 60, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup016.inc b/sound/voicegroups/voicegroup016.inc index 2013f888285d..1b17ac49c777 100644 --- a/sound/voicegroups/voicegroup016.inc +++ b/sound/voicegroups/voicegroup016.inc @@ -1,68 +1,68 @@ .align 2 voicegroup016:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 0, 2 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 32, 74, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 66, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 62, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 2 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 74, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 66, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 62, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup017.inc b/sound/voicegroups/voicegroup017.inc index ac3768c10dd1..f963fb77e835 100644 --- a/sound/voicegroups/voicegroup017.inc +++ b/sound/voicegroups/voicegroup017.inc @@ -1,94 +1,94 @@ .align 2 voicegroup017:: - voice_keysplit_all voicegroup001 - voice_square_2_alt 60, 0, 2, 0, 3, 3, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 2 - voice_square_2_alt 60, 0, 2, 1, 1, 0, 0 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 1, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 2 - voice_square_2_alt 60, 0, 3, 1, 1, 7, 2 - voice_square_1_alt 60, 0, 0, 3, 1, 1, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 2 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 2 - voice_square_2_alt 60, 0, 1, 1, 2, 6, 2 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 6, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 + voice_keysplit_all voicegroup001 + voice_square_2_alt 60, 0, 2, 0, 3, 3, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 2 + voice_square_2_alt 60, 0, 2, 1, 1, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 1, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 2 + voice_square_2_alt 60, 0, 3, 1, 1, 7, 2 + voice_square_1_alt 60, 0, 0, 3, 1, 1, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 2 + voice_square_2_alt 60, 0, 1, 1, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 diff --git a/sound/voicegroups/voicegroup018.inc b/sound/voicegroups/voicegroup018.inc index 466f4238561f..0364349f04a0 100644 --- a/sound/voicegroups/voicegroup018.inc +++ b/sound/voicegroups/voicegroup018.inc @@ -1,131 +1,131 @@ .align 2 voicegroup018:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 1, 0, 1, 0, 3 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 1, 0, 1, 0, 3 diff --git a/sound/voicegroups/voicegroup019.inc b/sound/voicegroups/voicegroup019.inc index 5d18c1e692f7..d15be40a14e7 100644 --- a/sound/voicegroups/voicegroup019.inc +++ b/sound/voicegroups/voicegroup019.inc @@ -1,88 +1,88 @@ .align 2 voicegroup019:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup020.inc b/sound/voicegroups/voicegroup020.inc index 2c5494c79117..8449fbdd60b3 100644 --- a/sound/voicegroups/voicegroup020.inc +++ b/sound/voicegroups/voicegroup020.inc @@ -1,90 +1,90 @@ .align 2 voicegroup020:: - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 6, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup021.inc b/sound/voicegroups/voicegroup021.inc index 70698a668e08..43aa9150eede 100644 --- a/sound/voicegroups/voicegroup021.inc +++ b/sound/voicegroups/voicegroup021.inc @@ -1,54 +1,54 @@ .align 2 voicegroup021:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup022.inc b/sound/voicegroups/voicegroup022.inc index bd64fd856cd9..2a1bba75d47f 100644 --- a/sound/voicegroups/voicegroup022.inc +++ b/sound/voicegroups/voicegroup022.inc @@ -1,68 +1,68 @@ .align 2 voicegroup022:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup023.inc b/sound/voicegroups/voicegroup023.inc index 059999c8b853..df0f663a79fe 100644 --- a/sound/voicegroups/voicegroup023.inc +++ b/sound/voicegroups/voicegroup023.inc @@ -1,92 +1,92 @@ .align 2 voicegroup023:: - voice_keysplit voicegroup005, KeySplitTable1 - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 diff --git a/sound/voicegroups/voicegroup024.inc b/sound/voicegroups/voicegroup024.inc index ca05a5916561..d4e139704668 100644 --- a/sound/voicegroups/voicegroup024.inc +++ b/sound/voicegroups/voicegroup024.inc @@ -1,94 +1,94 @@ .align 2 voicegroup024:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup025.inc b/sound/voicegroups/voicegroup025.inc index 01716b47d979..1be1beea6b98 100644 --- a/sound/voicegroups/voicegroup025.inc +++ b/sound/voicegroups/voicegroup025.inc @@ -1,87 +1,87 @@ .align 2 voicegroup025:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup026.inc b/sound/voicegroups/voicegroup026.inc index 7911f04099da..5012411663fc 100644 --- a/sound/voicegroups/voicegroup026.inc +++ b/sound/voicegroups/voicegroup026.inc @@ -1,88 +1,88 @@ .align 2 voicegroup026:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 9, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 9, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 9, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 diff --git a/sound/voicegroups/voicegroup027.inc b/sound/voicegroups/voicegroup027.inc index c350886569ae..ef84f846ec19 100644 --- a/sound/voicegroups/voicegroup027.inc +++ b/sound/voicegroups/voicegroup027.inc @@ -1,131 +1,131 @@ .align 2 voicegroup027:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 1, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 1, 0, 2, 0, 0 - voice_square_2 60, 0, 1, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 1, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 1, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 1, 0, 2, 0, 0 + voice_square_2 60, 0, 1, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 1, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup028.inc b/sound/voicegroups/voicegroup028.inc index 73413c99e9b8..6d1071850d15 100644 --- a/sound/voicegroups/voicegroup028.inc +++ b/sound/voicegroups/voicegroup028.inc @@ -1,86 +1,86 @@ .align 2 voicegroup028:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 3, 0, 1, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 0, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 0, 0, 2, 0, 0 - voice_square_2 60, 0, 0, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 0, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 2, 0, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_2 60, 0, 3, 0, 4, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 0, 0, 2, 0, 0 + voice_square_2 60, 0, 0, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 0, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 0, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2 60, 0, 3, 0, 4, 0, 0 diff --git a/sound/voicegroups/voicegroup029.inc b/sound/voicegroups/voicegroup029.inc index 4b7704be04fb..e65818f90f48 100644 --- a/sound/voicegroups/voicegroup029.inc +++ b/sound/voicegroups/voicegroup029.inc @@ -1,91 +1,91 @@ .align 2 voicegroup029:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 0, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 diff --git a/sound/voicegroups/voicegroup030.inc b/sound/voicegroups/voicegroup030.inc index 11856b6a6a3a..1e1b5088dd5b 100644 --- a/sound/voicegroups/voicegroup030.inc +++ b/sound/voicegroups/voicegroup030.inc @@ -1,58 +1,58 @@ .align 2 voicegroup030:: - voice_keysplit_all voicegroup031 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup031 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup031.inc b/sound/voicegroups/voicegroup031.inc index f65481a9d116..a24251c78c35 100644 --- a/sound/voicegroups/voicegroup031.inc +++ b/sound/voicegroups/voicegroup031.inc @@ -1,68 +1,68 @@ .align 2 voicegroup031:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup032.inc b/sound/voicegroups/voicegroup032.inc index 22919a9a0c07..f50eb844bab2 100644 --- a/sound/voicegroups/voicegroup032.inc +++ b/sound/voicegroups/voicegroup032.inc @@ -1,131 +1,131 @@ .align 2 voicegroup032:: - voice_keysplit_all voicegroup016 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 3, 4, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 3, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 250, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 + voice_keysplit_all voicegroup016 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 3, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 250, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup033.inc b/sound/voicegroups/voicegroup033.inc index d414fa0bcb5f..34e7e43b712d 100644 --- a/sound/voicegroups/voicegroup033.inc +++ b/sound/voicegroups/voicegroup033.inc @@ -1,86 +1,86 @@ .align 2 voicegroup033:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 diff --git a/sound/voicegroups/voicegroup034.inc b/sound/voicegroups/voicegroup034.inc index 43b2e67a99d8..6dc04e97a69d 100644 --- a/sound/voicegroups/voicegroup034.inc +++ b/sound/voicegroups/voicegroup034.inc @@ -1,87 +1,87 @@ .align 2 voicegroup034:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup035.inc b/sound/voicegroups/voicegroup035.inc index 4afb126c3993..359a43a8c986 100644 --- a/sound/voicegroups/voicegroup035.inc +++ b/sound/voicegroups/voicegroup035.inc @@ -1,88 +1,88 @@ .align 2 voicegroup035:: - voice_keysplit_all voicegroup031 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 1 + voice_keysplit_all voicegroup031 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 1 diff --git a/sound/voicegroups/voicegroup036.inc b/sound/voicegroups/voicegroup036.inc index 2161259d7e97..b3ef9cfbc7eb 100644 --- a/sound/voicegroups/voicegroup036.inc +++ b/sound/voicegroups/voicegroup036.inc @@ -1,131 +1,131 @@ .align 2 voicegroup036:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 4, 1, 4 - voice_noise_alt 60, 0, 0, 0, 1, 0, 2 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 4, 1, 4 + voice_noise_alt 60, 0, 0, 0, 1, 0, 2 diff --git a/sound/voicegroups/voicegroup037.inc b/sound/voicegroups/voicegroup037.inc index 29f33cbe7c41..d05a4c6e241c 100644 --- a/sound/voicegroups/voicegroup037.inc +++ b/sound/voicegroups/voicegroup037.inc @@ -1,92 +1,92 @@ .align 2 voicegroup037:: - voice_keysplit_all voicegroup031 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_keysplit_all voicegroup031 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup038.inc b/sound/voicegroups/voicegroup038.inc index 42c63281d55b..61ecc67460a5 100644 --- a/sound/voicegroups/voicegroup038.inc +++ b/sound/voicegroups/voicegroup038.inc @@ -1,85 +1,85 @@ .align 2 voicegroup038:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup039.inc b/sound/voicegroups/voicegroup039.inc index c8597bb4791f..887f238dc8d0 100644 --- a/sound/voicegroups/voicegroup039.inc +++ b/sound/voicegroups/voicegroup039.inc @@ -1,131 +1,131 @@ .align 2 voicegroup039:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup040.inc b/sound/voicegroups/voicegroup040.inc index 4ee10e72fe72..4e523072a7db 100644 --- a/sound/voicegroups/voicegroup040.inc +++ b/sound/voicegroups/voicegroup040.inc @@ -1,131 +1,131 @@ .align 2 voicegroup040:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup041.inc b/sound/voicegroups/voicegroup041.inc index dc23fd7ad8f3..101a6ddb7bef 100644 --- a/sound/voicegroups/voicegroup041.inc +++ b/sound/voicegroups/voicegroup041.inc @@ -1,131 +1,131 @@ .align 2 voicegroup041:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup042.inc b/sound/voicegroups/voicegroup042.inc index 0166ef9e3c9e..55fa84d60d67 100644 --- a/sound/voicegroups/voicegroup042.inc +++ b/sound/voicegroups/voicegroup042.inc @@ -1,131 +1,131 @@ .align 2 voicegroup042:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup043.inc b/sound/voicegroups/voicegroup043.inc index d2ca0101b23d..d6bd30bcbaea 100644 --- a/sound/voicegroups/voicegroup043.inc +++ b/sound/voicegroups/voicegroup043.inc @@ -1,84 +1,84 @@ .align 2 voicegroup043:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 diff --git a/sound/voicegroups/voicegroup044.inc b/sound/voicegroups/voicegroup044.inc index 4717b4273f3b..838f58fbded0 100644 --- a/sound/voicegroups/voicegroup044.inc +++ b/sound/voicegroups/voicegroup044.inc @@ -1,84 +1,84 @@ .align 2 voicegroup044:: - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 5, 1, 7 - voice_square_2_alt 60, 0, 3, 0, 4, 3, 6 - voice_square_2_alt 60, 0, 2, 1, 1, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 5, 1, 7 + voice_square_2_alt 60, 0, 3, 0, 4, 3, 6 + voice_square_2_alt 60, 0, 2, 1, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup045.inc b/sound/voicegroups/voicegroup045.inc index f0bc78c58b89..9647f7e4575b 100644 --- a/sound/voicegroups/voicegroup045.inc +++ b/sound/voicegroups/voicegroup045.inc @@ -1,131 +1,131 @@ .align 2 voicegroup045:: - voice_keysplit_all voicegroup001 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 - voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 - voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 0, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 1, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 + voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 + voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 0, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 1, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup046.inc b/sound/voicegroups/voicegroup046.inc index e2ecb7610421..e8165dcc6e94 100644 --- a/sound/voicegroups/voicegroup046.inc +++ b/sound/voicegroups/voicegroup046.inc @@ -1,131 +1,131 @@ .align 2 voicegroup046:: - voice_keysplit voicegroup005, KeySplitTable1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 1, 12, 0 - voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 - voice_square_2_alt 60, 0, 1, 0, 2, 6, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 1, 12, 0 + voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup047.inc b/sound/voicegroups/voicegroup047.inc index 403d53d42300..80faa09c3c08 100644 --- a/sound/voicegroups/voicegroup047.inc +++ b/sound/voicegroups/voicegroup047.inc @@ -1,131 +1,131 @@ .align 2 voicegroup047:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 1, 7, 15, 2 - voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 1, 7, 15, 2 + voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup048.inc b/sound/voicegroups/voicegroup048.inc index b819395a6a81..c81ebf39ff48 100644 --- a/sound/voicegroups/voicegroup048.inc +++ b/sound/voicegroups/voicegroup048.inc @@ -1,91 +1,91 @@ .align 2 voicegroup048:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 4, 4, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 3, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 12, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 2, 4, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 4, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 3, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 12, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 2, 4, 0 diff --git a/sound/voicegroups/voicegroup049.inc b/sound/voicegroups/voicegroup049.inc index ed830a1a9cd0..4ece4cb76abe 100644 --- a/sound/voicegroups/voicegroup049.inc +++ b/sound/voicegroups/voicegroup049.inc @@ -1,131 +1,131 @@ .align 2 voicegroup049:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 7, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 2 - voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 1, 4, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 7, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 2 + voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 4, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup050.inc b/sound/voicegroups/voicegroup050.inc index ed5f1ba71d57..6f401b9593c8 100644 --- a/sound/voicegroups/voicegroup050.inc +++ b/sound/voicegroups/voicegroup050.inc @@ -1,131 +1,131 @@ .align 2 voicegroup050:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup051.inc b/sound/voicegroups/voicegroup051.inc index 31b69cd8793c..d3a144622aa6 100644 --- a/sound/voicegroups/voicegroup051.inc +++ b/sound/voicegroups/voicegroup051.inc @@ -1,77 +1,77 @@ .align 2 voicegroup051:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 4, 4, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 - voice_square_2_alt 60, 0, 2, 1, 3, 4, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 4, 4, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 + voice_square_2_alt 60, 0, 2, 1, 3, 4, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 3, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup052.inc b/sound/voicegroups/voicegroup052.inc index b7020362dfbf..ce6c19e3a027 100644 --- a/sound/voicegroups/voicegroup052.inc +++ b/sound/voicegroups/voicegroup052.inc @@ -1,131 +1,131 @@ .align 2 voicegroup052:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 3, 1, 2, 6, 0 - voice_square_2 60, 0, 3, 1, 2, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 7, 6, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 4 - voice_noise_alt 60, 0, 0, 3, 1, 10, 0 - voice_noise_alt 60, 0, 0, 0, 2, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 1, 2, 6, 0 + voice_square_2 60, 0, 3, 1, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 7, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 4 + voice_noise_alt 60, 0, 0, 3, 1, 10, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 0 diff --git a/sound/voicegroups/voicegroup053.inc b/sound/voicegroups/voicegroup053.inc index 3d3312b1d2b4..f9c21afe3a21 100644 --- a/sound/voicegroups/voicegroup053.inc +++ b/sound/voicegroups/voicegroup053.inc @@ -1,131 +1,131 @@ .align 2 voicegroup053:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup054.inc b/sound/voicegroups/voicegroup054.inc index 9d762c5616c4..4cd90843c486 100644 --- a/sound/voicegroups/voicegroup054.inc +++ b/sound/voicegroups/voicegroup054.inc @@ -1,131 +1,131 @@ .align 2 voicegroup054:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup055.inc b/sound/voicegroups/voicegroup055.inc index 90f10a26c8da..aa9f7d113918 100644 --- a/sound/voicegroups/voicegroup055.inc +++ b/sound/voicegroups/voicegroup055.inc @@ -1,131 +1,131 @@ .align 2 voicegroup055:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 2 - voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 2 + voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup056.inc b/sound/voicegroups/voicegroup056.inc index 5d945f366320..42f779100135 100644 --- a/sound/voicegroups/voicegroup056.inc +++ b/sound/voicegroups/voicegroup056.inc @@ -1,131 +1,131 @@ .align 2 voicegroup056:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup057.inc b/sound/voicegroups/voicegroup057.inc index dbdb059cee38..6bd58e87ebe6 100644 --- a/sound/voicegroups/voicegroup057.inc +++ b/sound/voicegroups/voicegroup057.inc @@ -1,131 +1,131 @@ .align 2 voicegroup057:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 188, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 128, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 1, 4, 10, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 5, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 188, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 128, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 1, 4, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 5, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup058.inc b/sound/voicegroups/voicegroup058.inc index 0af41d7890b4..af043d943e1b 100644 --- a/sound/voicegroups/voicegroup058.inc +++ b/sound/voicegroups/voicegroup058.inc @@ -1,131 +1,131 @@ .align 2 voicegroup058:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup059.inc b/sound/voicegroups/voicegroup059.inc index 4a9fccbc5dde..f0c4d3415d31 100644 --- a/sound/voicegroups/voicegroup059.inc +++ b/sound/voicegroups/voicegroup059.inc @@ -1,92 +1,92 @@ .align 2 voicegroup059:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 2 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 2 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup060.inc b/sound/voicegroups/voicegroup060.inc index e63327194d90..448841e625f0 100644 --- a/sound/voicegroups/voicegroup060.inc +++ b/sound/voicegroups/voicegroup060.inc @@ -1,131 +1,131 @@ .align 2 voicegroup060:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 128, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 4, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 7, 3, 3 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 - voice_square_1_alt 60, 0, 0, 3, 2, 2, 7, 0 - voice_square_2_alt 60, 0, 1, 1, 2, 3, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 128, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 4, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 3, 3 + voice_square_1_alt 60, 0, 0, 3, 2, 2, 7, 0 + voice_square_2_alt 60, 0, 1, 1, 2, 3, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup061.inc b/sound/voicegroups/voicegroup061.inc index 2775a7c2c508..af46400940c9 100644 --- a/sound/voicegroups/voicegroup061.inc +++ b/sound/voicegroups/voicegroup061.inc @@ -1,131 +1,131 @@ .align 2 voicegroup061:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup062.inc b/sound/voicegroups/voicegroup062.inc index 1687aa535a1a..d3745820e977 100644 --- a/sound/voicegroups/voicegroup062.inc +++ b/sound/voicegroups/voicegroup062.inc @@ -1,131 +1,131 @@ .align 2 voicegroup062:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup063.inc b/sound/voicegroups/voicegroup063.inc index 6461b3aa21b0..bd316ea2c55d 100644 --- a/sound/voicegroups/voicegroup063.inc +++ b/sound/voicegroups/voicegroup063.inc @@ -1,131 +1,131 @@ .align 2 voicegroup063:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup064.inc b/sound/voicegroups/voicegroup064.inc index 919943400112..e617f0ffd224 100644 --- a/sound/voicegroups/voicegroup064.inc +++ b/sound/voicegroups/voicegroup064.inc @@ -1,131 +1,131 @@ .align 2 voicegroup064:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup065.inc b/sound/voicegroups/voicegroup065.inc index 3ec97c6b6354..d435a0a3063c 100644 --- a/sound/voicegroups/voicegroup065.inc +++ b/sound/voicegroups/voicegroup065.inc @@ -1,131 +1,131 @@ .align 2 voicegroup065:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup066.inc b/sound/voicegroups/voicegroup066.inc index fff4e5a6727c..d5bffde63eab 100644 --- a/sound/voicegroups/voicegroup066.inc +++ b/sound/voicegroups/voicegroup066.inc @@ -1,131 +1,131 @@ .align 2 voicegroup066:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup067.inc b/sound/voicegroups/voicegroup067.inc index 6484d4479056..dffd21a7060b 100644 --- a/sound/voicegroups/voicegroup067.inc +++ b/sound/voicegroups/voicegroup067.inc @@ -1,131 +1,131 @@ .align 2 voicegroup067:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup068.inc b/sound/voicegroups/voicegroup068.inc index 3a7b4b034f73..fc3f7246d84f 100644 --- a/sound/voicegroups/voicegroup068.inc +++ b/sound/voicegroups/voicegroup068.inc @@ -1,131 +1,131 @@ .align 2 voicegroup068:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup069.inc b/sound/voicegroups/voicegroup069.inc index d2372c0cd7df..477fd538b4bf 100644 --- a/sound/voicegroups/voicegroup069.inc +++ b/sound/voicegroups/voicegroup069.inc @@ -1,131 +1,131 @@ .align 2 voicegroup069:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup070.inc b/sound/voicegroups/voicegroup070.inc index 965cf73a8890..aaa40780283f 100644 --- a/sound/voicegroups/voicegroup070.inc +++ b/sound/voicegroups/voicegroup070.inc @@ -1,131 +1,131 @@ .align 2 voicegroup070:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup071.inc b/sound/voicegroups/voicegroup071.inc index 0d247bb5e506..c6c7414e3f32 100644 --- a/sound/voicegroups/voicegroup071.inc +++ b/sound/voicegroups/voicegroup071.inc @@ -1,131 +1,131 @@ .align 2 voicegroup071:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup072.inc b/sound/voicegroups/voicegroup072.inc index 6c4c840ad29d..7c040a3e77ca 100644 --- a/sound/voicegroups/voicegroup072.inc +++ b/sound/voicegroups/voicegroup072.inc @@ -1,131 +1,131 @@ .align 2 voicegroup072:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup073.inc b/sound/voicegroups/voicegroup073.inc index bc859f0e7583..9692cc87db81 100644 --- a/sound/voicegroups/voicegroup073.inc +++ b/sound/voicegroups/voicegroup073.inc @@ -1,131 +1,131 @@ .align 2 voicegroup073:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup074.inc b/sound/voicegroups/voicegroup074.inc index da9bbb03ce33..5be06711b55f 100644 --- a/sound/voicegroups/voicegroup074.inc +++ b/sound/voicegroups/voicegroup074.inc @@ -1,131 +1,131 @@ .align 2 voicegroup074:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup075.inc b/sound/voicegroups/voicegroup075.inc index 908ca57074e4..72b144a13a2f 100644 --- a/sound/voicegroups/voicegroup075.inc +++ b/sound/voicegroups/voicegroup075.inc @@ -1,131 +1,131 @@ .align 2 voicegroup075:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 3, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup076.inc b/sound/voicegroups/voicegroup076.inc index c8faabe75c51..a4eadcef3f66 100644 --- a/sound/voicegroups/voicegroup076.inc +++ b/sound/voicegroups/voicegroup076.inc @@ -1,131 +1,131 @@ .align 2 voicegroup076:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup077.inc b/sound/voicegroups/voicegroup077.inc index 3bf100be534c..08f0e5e389fe 100644 --- a/sound/voicegroups/voicegroup077.inc +++ b/sound/voicegroups/voicegroup077.inc @@ -1,131 +1,131 @@ .align 2 voicegroup077:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup078.inc b/sound/voicegroups/voicegroup078.inc index 721b80430947..b6dba9dca12e 100644 --- a/sound/voicegroups/voicegroup078.inc +++ b/sound/voicegroups/voicegroup078.inc @@ -1,131 +1,131 @@ .align 2 voicegroup078:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 2, 0, 2 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 196 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 2 diff --git a/sound/voicegroups/voicegroup079.inc b/sound/voicegroups/voicegroup079.inc index 7923d4d32d35..ecea4eca18ab 100644 --- a/sound/voicegroups/voicegroup079.inc +++ b/sound/voicegroups/voicegroup079.inc @@ -1,131 +1,131 @@ .align 2 voicegroup079:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup080.inc b/sound/voicegroups/voicegroup080.inc index 4db39381d495..a6827083c61a 100644 --- a/sound/voicegroups/voicegroup080.inc +++ b/sound/voicegroups/voicegroup080.inc @@ -1,131 +1,131 @@ .align 2 voicegroup080:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup081.inc b/sound/voicegroups/voicegroup081.inc index f47f89a8d401..e9c2011e40a7 100644 --- a/sound/voicegroups/voicegroup081.inc +++ b/sound/voicegroups/voicegroup081.inc @@ -1,5 +1,5 @@ .align 2 voicegroup081:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 diff --git a/sound/voicegroups/voicegroup082.inc b/sound/voicegroups/voicegroup082.inc index 676900e7f777..9aa1d7c5b470 100644 --- a/sound/voicegroups/voicegroup082.inc +++ b/sound/voicegroups/voicegroup082.inc @@ -1,131 +1,131 @@ .align 2 voicegroup082:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup083.inc b/sound/voicegroups/voicegroup083.inc index 7a345fdb1b9a..09cee33e1511 100644 --- a/sound/voicegroups/voicegroup083.inc +++ b/sound/voicegroups/voicegroup083.inc @@ -1,87 +1,87 @@ .align 2 voicegroup083:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 6, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 6, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup084.inc b/sound/voicegroups/voicegroup084.inc index 8b30d812556a..ee994d84d37c 100644 --- a/sound/voicegroups/voicegroup084.inc +++ b/sound/voicegroups/voicegroup084.inc @@ -1,131 +1,131 @@ .align 2 voicegroup084:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup085.inc b/sound/voicegroups/voicegroup085.inc index 0cd2dcc2f72b..bd2cc348f032 100644 --- a/sound/voicegroups/voicegroup085.inc +++ b/sound/voicegroups/voicegroup085.inc @@ -1,131 +1,131 @@ .align 2 voicegroup085:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 1, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 13, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 1, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 13, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup086.inc b/sound/voicegroups/voicegroup086.inc index 57069bf8afaf..482a7729e38b 100644 --- a/sound/voicegroups/voicegroup086.inc +++ b/sound/voicegroups/voicegroup086.inc @@ -1,131 +1,131 @@ .align 2 voicegroup086:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup087.inc b/sound/voicegroups/voicegroup087.inc index 59e24b7cce17..d9295b3fe716 100644 --- a/sound/voicegroups/voicegroup087.inc +++ b/sound/voicegroups/voicegroup087.inc @@ -1,131 +1,131 @@ .align 2 voicegroup087:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup088.inc b/sound/voicegroups/voicegroup088.inc index 77fe56d2d8ae..82afd10f6311 100644 --- a/sound/voicegroups/voicegroup088.inc +++ b/sound/voicegroups/voicegroup088.inc @@ -1,131 +1,131 @@ .align 2 voicegroup088:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup089.inc b/sound/voicegroups/voicegroup089.inc index 531e5f543a30..7d71119ba3ff 100644 --- a/sound/voicegroups/voicegroup089.inc +++ b/sound/voicegroups/voicegroup089.inc @@ -1,131 +1,131 @@ .align 2 voicegroup089:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 3 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup090.inc b/sound/voicegroups/voicegroup090.inc index dd3301845f55..f66d09b65c49 100644 --- a/sound/voicegroups/voicegroup090.inc +++ b/sound/voicegroups/voicegroup090.inc @@ -1,131 +1,131 @@ .align 2 voicegroup090:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup091.inc b/sound/voicegroups/voicegroup091.inc index 59230282e56b..df866235edf7 100644 --- a/sound/voicegroups/voicegroup091.inc +++ b/sound/voicegroups/voicegroup091.inc @@ -1,131 +1,131 @@ .align 2 voicegroup091:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 5, 2 - voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 5, 2 + voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup092.inc b/sound/voicegroups/voicegroup092.inc index 0fff2f1214e1..9b91a44aa295 100644 --- a/sound/voicegroups/voicegroup092.inc +++ b/sound/voicegroups/voicegroup092.inc @@ -1,131 +1,131 @@ .align 2 voicegroup092:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup093.inc b/sound/voicegroups/voicegroup093.inc index 2d1b721dafc5..44149b083c82 100644 --- a/sound/voicegroups/voicegroup093.inc +++ b/sound/voicegroups/voicegroup093.inc @@ -1,131 +1,131 @@ .align 2 voicegroup093:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup094.inc b/sound/voicegroups/voicegroup094.inc index 72bc1098c48e..21cab6cd2a61 100644 --- a/sound/voicegroups/voicegroup094.inc +++ b/sound/voicegroups/voicegroup094.inc @@ -1,131 +1,131 @@ .align 2 voicegroup094:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 72, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup095.inc b/sound/voicegroups/voicegroup095.inc index 83afb58b136b..0c791dc9ebd7 100644 --- a/sound/voicegroups/voicegroup095.inc +++ b/sound/voicegroups/voicegroup095.inc @@ -1,131 +1,131 @@ .align 2 voicegroup095:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup096.inc b/sound/voicegroups/voicegroup096.inc index bf0bd6badb53..8fe0892e6992 100644 --- a/sound/voicegroups/voicegroup096.inc +++ b/sound/voicegroups/voicegroup096.inc @@ -1,131 +1,131 @@ .align 2 voicegroup096:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup097.inc b/sound/voicegroups/voicegroup097.inc index 8c4cea3b7b4b..e18409347941 100644 --- a/sound/voicegroups/voicegroup097.inc +++ b/sound/voicegroups/voicegroup097.inc @@ -1,131 +1,131 @@ .align 2 voicegroup097:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 249 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 249 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup098.inc b/sound/voicegroups/voicegroup098.inc index e49d32b42753..001bd5222a2d 100644 --- a/sound/voicegroups/voicegroup098.inc +++ b/sound/voicegroups/voicegroup098.inc @@ -1,131 +1,131 @@ .align 2 voicegroup098:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup099.inc b/sound/voicegroups/voicegroup099.inc index 60b93f615637..f4031beebbec 100644 --- a/sound/voicegroups/voicegroup099.inc +++ b/sound/voicegroups/voicegroup099.inc @@ -1,131 +1,131 @@ .align 2 voicegroup099:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 - voice_square_1_alt 60, 0, 0, 1, 2, 1, 5, 0 - voice_square_2_alt 60, 0, 1, 2, 1, 5, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 1, 5, 0 + voice_square_2_alt 60, 0, 1, 2, 1, 5, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup100.inc b/sound/voicegroups/voicegroup100.inc index f096a9d8a4e2..fa936e9590ae 100644 --- a/sound/voicegroups/voicegroup100.inc +++ b/sound/voicegroups/voicegroup100.inc @@ -1,131 +1,131 @@ .align 2 voicegroup100:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 2, 1, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 1, 1, 4, 1 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 2, 1, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 1, 1, 4, 1 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup101.inc b/sound/voicegroups/voicegroup101.inc index 53f34ae29556..5527ec79647a 100644 --- a/sound/voicegroups/voicegroup101.inc +++ b/sound/voicegroups/voicegroup101.inc @@ -1,113 +1,113 @@ .align 2 voicegroup101:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 - voice_square_2_alt 60, 0, 1, 1, 5, 2, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 1, 1, 6, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 4, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 1, 4, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 1, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 1, 1, 6, 1 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 + voice_square_2_alt 60, 0, 1, 1, 5, 2, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 4, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 1, 4, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 1, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 1, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup102.inc b/sound/voicegroups/voicegroup102.inc index 2f1fbb667120..197ed891be8e 100644 --- a/sound/voicegroups/voicegroup102.inc +++ b/sound/voicegroups/voicegroup102.inc @@ -1,85 +1,85 @@ .align 2 voicegroup102:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 6 - voice_square_2_alt 60, 0, 2, 0, 6, 0, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 248 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 6 + voice_square_2_alt 60, 0, 2, 0, 6, 0, 6 diff --git a/sound/voicegroups/voicegroup103.inc b/sound/voicegroups/voicegroup103.inc index 784b39ee2298..e60c3c1aae69 100644 --- a/sound/voicegroups/voicegroup103.inc +++ b/sound/voicegroups/voicegroup103.inc @@ -1,131 +1,131 @@ .align 2 voicegroup103:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 0, 10, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup104.inc b/sound/voicegroups/voicegroup104.inc index bd5991463551..9ca1a88484ae 100644 --- a/sound/voicegroups/voicegroup104.inc +++ b/sound/voicegroups/voicegroup104.inc @@ -1,111 +1,111 @@ .align 2 voicegroup104:: - voice_keysplit_all voicegroup003 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_high, 255, 0, 206, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_shakuhachi, 255, 0, 255, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 2, 0, 12, 5 - voice_square_2_alt 60, 0, 0, 0, 0, 10, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 2, 0, 12, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_low, 255, 0, 206, 242 + voice_keysplit_all voicegroup003 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_high, 255, 0, 206, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_shakuhachi, 255, 0, 255, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 0, 12, 5 + voice_square_2_alt 60, 0, 0, 0, 0, 10, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 2, 0, 12, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_low, 255, 0, 206, 242 diff --git a/sound/voicegroups/voicegroup105.inc b/sound/voicegroups/voicegroup105.inc index 335529417819..c3bfdec9aa78 100644 --- a/sound/voicegroups/voicegroup105.inc +++ b/sound/voicegroups/voicegroup105.inc @@ -1,86 +1,86 @@ .align 2 voicegroup105:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 4 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup106.inc b/sound/voicegroups/voicegroup106.inc index b20862853f3d..834b9a8a268e 100644 --- a/sound/voicegroups/voicegroup106.inc +++ b/sound/voicegroups/voicegroup106.inc @@ -1,131 +1,131 @@ .align 2 voicegroup106:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 38, 128, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 38, 128, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup107.inc b/sound/voicegroups/voicegroup107.inc index 45f1cfdc9fa6..e2945809e6c3 100644 --- a/sound/voicegroups/voicegroup107.inc +++ b/sound/voicegroups/voicegroup107.inc @@ -1,131 +1,131 @@ .align 2 voicegroup107:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup108.inc b/sound/voicegroups/voicegroup108.inc index 1821dd6a1e91..b539070109b2 100644 --- a/sound/voicegroups/voicegroup108.inc +++ b/sound/voicegroups/voicegroup108.inc @@ -1,131 +1,131 @@ .align 2 voicegroup108:: - voice_keysplit_all voicegroup004 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_heart_of_asia_gamelan, 255, 188, 139, 239 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 13, 4 - voice_square_2_alt 60, 0, 0, 0, 0, 9, 2 - voice_square_2_alt 60, 0, 1, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup004 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_heart_of_asia_gamelan, 255, 188, 139, 239 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 13, 4 + voice_square_2_alt 60, 0, 0, 0, 0, 9, 2 + voice_square_2_alt 60, 0, 1, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup109.inc b/sound/voicegroups/voicegroup109.inc index 984367a4e91b..52942e9ecf92 100644 --- a/sound/voicegroups/voicegroup109.inc +++ b/sound/voicegroups/voicegroup109.inc @@ -1,86 +1,86 @@ .align 2 voicegroup109:: - voice_keysplit_all voicegroup004 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_low, 255, 76, 154, 188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_high, 255, 76, 154, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 13, 1 - voice_square_2_alt 60, 0, 0, 0, 0, 12, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_keysplit_all voicegroup004 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_low, 255, 76, 154, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_church_organ3_high, 255, 76, 154, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 13, 1 + voice_square_2_alt 60, 0, 0, 0, 0, 12, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup110.inc b/sound/voicegroups/voicegroup110.inc index dcd51d9eb153..a13facb2cf04 100644 --- a/sound/voicegroups/voicegroup110.inc +++ b/sound/voicegroups/voicegroup110.inc @@ -1,131 +1,131 @@ .align 2 voicegroup110:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 0, 10, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup111.inc b/sound/voicegroups/voicegroup111.inc index f05cda80697b..546ed3a465a2 100644 --- a/sound/voicegroups/voicegroup111.inc +++ b/sound/voicegroups/voicegroup111.inc @@ -1,131 +1,131 @@ .align 2 voicegroup111:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 226 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 195 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 195 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 195 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 226 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 195 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup112.inc b/sound/voicegroups/voicegroup112.inc index bd58c332d750..ad1c4a1b7d5c 100644 --- a/sound/voicegroups/voicegroup112.inc +++ b/sound/voicegroups/voicegroup112.inc @@ -1,131 +1,131 @@ .align 2 voicegroup112:: - voice_keysplit_all voicegroup003 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 128, 165, 128, 188 - voice_directsound 60, 0, DirectSoundWaveData_unknown_female_voice, 128, 165, 128, 204 - voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_male_voice, 128, 165, 128, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 0 - voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 - voice_square_2_alt 60, 0, 3, 0, 0, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 7, 10, 1 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 + voice_keysplit_all voicegroup003 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 76 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 128, 165, 128, 188 + voice_directsound 60, 0, DirectSoundWaveData_unknown_female_voice, 128, 165, 128, 204 + voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_male_voice, 128, 165, 128, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 7, 10, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup113.inc b/sound/voicegroups/voicegroup113.inc index 309f1f39eb53..cfe06aa97b2b 100644 --- a/sound/voicegroups/voicegroup113.inc +++ b/sound/voicegroups/voicegroup113.inc @@ -1,131 +1,131 @@ .align 2 voicegroup113:: - voice_keysplit_all voicegroup002 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4990, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49B0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49A0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4980, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48B0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48C0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48D0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48E0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48F0, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 195 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 7, 0 - voice_square_2_alt 60, 0, 2, 0, 7, 7, 0 - voice_square_2_alt 60, 0, 1, 0, 7, 7, 0 - voice_square_2_alt 60, 0, 0, 0, 7, 7, 0 - voice_square_2_alt 60, 0, 3, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 7, 7, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 7, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 7, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - voice_noise_alt 60, 0, 0, 0, 2, 6, 1 + voice_keysplit_all voicegroup002 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4990, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49B0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49A0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4980, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48B0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48C0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48D0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48E0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48F0, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 195 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 1, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 0, 0, 7, 7, 0 + voice_square_2_alt 60, 0, 3, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 7, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 7, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_noise_alt 60, 0, 0, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup114.inc b/sound/voicegroups/voicegroup114.inc index 03ac0cdcfedc..cb078d24c3a1 100644 --- a/sound/voicegroups/voicegroup114.inc +++ b/sound/voicegroups/voicegroup114.inc @@ -1,131 +1,131 @@ .align 2 voicegroup114:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup115.inc b/sound/voicegroups/voicegroup115.inc index bb9c4f4ba935..afdfebaf7b81 100644 --- a/sound/voicegroups/voicegroup115.inc +++ b/sound/voicegroups/voicegroup115.inc @@ -1,131 +1,131 @@ .align 2 voicegroup115:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 198 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 146 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 6, 0 - voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 2 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 198 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 146 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 6, 0 + voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup116.inc b/sound/voicegroups/voicegroup116.inc index 028bbc32bd57..c5b16797ae1d 100644 --- a/sound/voicegroups/voicegroup116.inc +++ b/sound/voicegroups/voicegroup116.inc @@ -1,131 +1,131 @@ .align 2 voicegroup116:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 - voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 3, 6, 5 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 3, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup117.inc b/sound/voicegroups/voicegroup117.inc index a149f727fa90..da6a16d7afec 100644 --- a/sound/voicegroups/voicegroup117.inc +++ b/sound/voicegroups/voicegroup117.inc @@ -1,85 +1,85 @@ .align 2 voicegroup117:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 1, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 1, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 1, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 1, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup118.inc b/sound/voicegroups/voicegroup118.inc index a4d62633090e..129831d75e32 100644 --- a/sound/voicegroups/voicegroup118.inc +++ b/sound/voicegroups/voicegroup118.inc @@ -1,94 +1,94 @@ .align 2 voicegroup118:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 0, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 250, 0, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 250, 0, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 diff --git a/sound/voicegroups/voicegroup119.inc b/sound/voicegroups/voicegroup119.inc index 91051a672935..063ed24b96d1 100644 --- a/sound/voicegroups/voicegroup119.inc +++ b/sound/voicegroups/voicegroup119.inc @@ -1,94 +1,94 @@ .align 2 voicegroup119:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 0, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 0, 0, 2, 4, 1 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_timpani_with_snare, 255, 246, 0, 226 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_2 60, 0, 1, 0, 1, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 0, 0, 2, 4, 1 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_timpani_with_snare, 255, 246, 0, 226 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 1, 0, 1, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup120.inc b/sound/voicegroups/voicegroup120.inc index 5c65be3382f1..f80380fc48f8 100644 --- a/sound/voicegroups/voicegroup120.inc +++ b/sound/voicegroups/voicegroup120.inc @@ -1,94 +1,94 @@ .align 2 voicegroup120:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 2, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 2, 6, 1 - voice_square_2 60, 0, 3, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 3, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 2, 6, 1 + voice_square_2 60, 0, 3, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 3, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup121.inc b/sound/voicegroups/voicegroup121.inc index d50d9eea3dcb..2c9e9fa3e6b9 100644 --- a/sound/voicegroups/voicegroup121.inc +++ b/sound/voicegroups/voicegroup121.inc @@ -1,89 +1,89 @@ .align 2 voicegroup121:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_2 60, 0, 0, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup122.inc b/sound/voicegroups/voicegroup122.inc index a2241b6d217b..ca64a7c009e0 100644 --- a/sound/voicegroups/voicegroup122.inc +++ b/sound/voicegroups/voicegroup122.inc @@ -1,87 +1,87 @@ .align 2 voicegroup122:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 1, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 1, 0, 1, 6, 1 - voice_square_2 60, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 3, 0, 1, 9, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 9, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 1, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 1, 0, 1, 6, 1 + voice_square_2 60, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 9, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 9, 1 diff --git a/sound/voicegroups/voicegroup123.inc b/sound/voicegroups/voicegroup123.inc index cb2e39045c7e..6178994ccaef 100644 --- a/sound/voicegroups/voicegroup123.inc +++ b/sound/voicegroups/voicegroup123.inc @@ -1,131 +1,131 @@ .align 2 voicegroup123:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup124.inc b/sound/voicegroups/voicegroup124.inc index c7f9c475a38c..6f5d263b3db4 100644 --- a/sound/voicegroups/voicegroup124.inc +++ b/sound/voicegroups/voicegroup124.inc @@ -1,90 +1,90 @@ .align 2 voicegroup124:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_2 60, 0, 3, 0, 2, 7, 1 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_2 60, 0, 3, 0, 2, 7, 1 diff --git a/sound/voicegroups/voicegroup125.inc b/sound/voicegroups/voicegroup125.inc index e5f2ddf3eb1e..afe16b0b0f30 100644 --- a/sound/voicegroups/voicegroup125.inc +++ b/sound/voicegroups/voicegroup125.inc @@ -1,87 +1,87 @@ .align 2 voicegroup125:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup126.inc b/sound/voicegroups/voicegroup126.inc index 53ff6eb193fb..a2e663cf12f7 100644 --- a/sound/voicegroups/voicegroup126.inc +++ b/sound/voicegroups/voicegroup126.inc @@ -1,131 +1,131 @@ .align 2 voicegroup126:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 0, 1, 1, 7, 1 - voice_square_1 60, 0, 0, 0, 1, 1, 7, 1 - voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 1, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 3, 1, 1, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 216 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 0, 1, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 1, 1, 7, 1 + voice_square_1 60, 0, 0, 0, 0, 0, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 1, 1, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 3, 1, 1, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 216 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 diff --git a/sound/voicegroups/voicegroup127.inc b/sound/voicegroups/voicegroup127.inc index c812157da46a..476d3f48f6e2 100644 --- a/sound/voicegroups/voicegroup127.inc +++ b/sound/voicegroups/voicegroup127.inc @@ -1,131 +1,131 @@ .align 2 voicegroup127:: - voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 249, 103, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 0, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 4, 0, 1 - voice_square_1_alt 60, 0, 44, 2, 0, 4, 0, 0 - voice_square_1_alt 60, 0, 38, 0, 0, 4, 0, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 7, 0, 0 - voice_square_1_alt 60, 0, 0, 2, 2, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 2, 0, 15, 0 - voice_square_1_alt 60, 0, 23, 1, 0, 1, 9, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 165 - voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 1 - voice_square_1_alt 60, 0, 36, 0, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 0, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 46, 2, 0, 4, 0, 0 - voice_square_1_alt 60, 0, 38, 2, 0, 4, 0, 0 - voice_square_1_alt 60, 0, 119, 2, 0, 0, 15, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 1 - voice_square_1_alt 60, 0, 106, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 23, 2, 0, 1, 9, 0 - voice_square_1_alt 60, 0, 21, 2, 0, 1, 9, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 - voice_square_1_alt 60, 0, 47, 2, 0, 2, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise 60, 0, 0, 0, 7, 15, 0 - voice_noise 60, 0, 0, 2, 7, 15, 0 - voice_noise_alt 60, 0, 0, 2, 0, 15, 0 - voice_noise_alt 60, 0, 1, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 3, 0, 0 - voice_noise_alt 60, 0, 0, 0, 2, 0, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 249, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 0, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 0, 1 + voice_square_1_alt 60, 0, 44, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 38, 0, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 7, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 2, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 2, 0, 15, 0 + voice_square_1_alt 60, 0, 23, 1, 0, 1, 9, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 165 + voice_square_1_alt 60, 0, 0, 2, 0, 6, 0, 1 + voice_square_1_alt 60, 0, 36, 0, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 0, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 46, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 38, 2, 0, 4, 0, 0 + voice_square_1_alt 60, 0, 119, 2, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 106, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 23, 2, 0, 1, 9, 0 + voice_square_1_alt 60, 0, 21, 2, 0, 1, 9, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 47, 2, 0, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise 60, 0, 0, 0, 7, 15, 0 + voice_noise 60, 0, 0, 2, 7, 15, 0 + voice_noise_alt 60, 0, 0, 2, 0, 15, 0 + voice_noise_alt 60, 0, 1, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 0, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup128.inc b/sound/voicegroups/voicegroup128.inc index 78e0bf43af2b..ce4904626ab0 100644 --- a/sound/voicegroups/voicegroup128.inc +++ b/sound/voicegroups/voicegroup128.inc @@ -1,131 +1,131 @@ .align 2 voicegroup128:: - voice_directsound_no_resample 60, 0, DirectSoundWaveData_bicycle_bell, 255, 249, 0, 165 - voice_directsound_alt 60, 0, DirectSoundWaveData_bicycle_bell, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 242, 0, 127 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 - voice_noise_alt 60, 0, 1, 0, 1, 0, 1 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 255, 165 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_872762C, 255, 0, 255, 127 - voice_noise_alt 60, 0, 1, 0, 2, 0, 0 - voice_square_1 60, 0, 103, 3, 2, 7, 0, 0 - voice_square_2 60, 0, 3, 2, 7, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 - voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 - voice_square_1 60, 0, 103, 0, 0, 7, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_wind, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 127 - voice_noise_alt 60, 0, 0, 0, 7, 15, 1 - voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 - voice_noise_alt 60, 0, 1, 0, 7, 15, 1 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 246, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 - voice_square_1_alt 60, 0, 19, 2, 0, 2, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 0, 255, 127 - voice_square_1 60, 0, 103, 0, 0, 0, 15, 0 - voice_directsound_alt 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_8734298, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 242, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_87364A8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_directsound 60, 0, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_87385E4, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 0, 4, 6, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 13, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 13, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 0, 4, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 188, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 226, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 26, 0, 255, 127 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 252, 0, 127 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 127, 0, 127 - voice_noise_alt 60, 0, 0, 1, 6, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 11, 242, 0, 127 - voice_square_1_alt 60, 0, 0, 2, 4, 6, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_8740818, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc55_tom, 255, 0, 255, 165 - voice_noise_alt 60, 0, 0, 5, 7, 15, 1 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 128, 242, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 0, 1, 5, 0, 0 - voice_noise_alt 60, 0, 0, 6, 6, 0, 1 - voice_noise_alt 60, 0, 0, 3, 6, 0, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 15, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_87424B0, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_87430C0, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8743C50, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_87446EC, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8745034, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8745A7C, 255, 0, 255, 165 - + voice_directsound_no_resample 60, 0, DirectSoundWaveData_bicycle_bell, 255, 249, 0, 165 + voice_directsound_alt 60, 0, DirectSoundWaveData_bicycle_bell, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 242, 0, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_noise_alt 60, 0, 1, 0, 1, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 255, 165 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_872762C, 255, 0, 255, 127 + voice_noise_alt 60, 0, 1, 0, 2, 0, 0 + voice_square_1 60, 0, 103, 3, 2, 7, 0, 0 + voice_square_2 60, 0, 3, 2, 7, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 + voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 103, 0, 0, 7, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_wind, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 127 + voice_noise_alt 60, 0, 0, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 + voice_noise_alt 60, 0, 1, 0, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 246, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_square_1_alt 60, 0, 19, 2, 0, 2, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 0, 255, 127 + voice_square_1 60, 0, 103, 0, 0, 0, 15, 0 + voice_directsound_alt 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_8734298, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 242, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_87364A8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_directsound 60, 0, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_87385E4, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 0, 4, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 13, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 13, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 0, 4, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 188, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 26, 0, 255, 127 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 252, 0, 127 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 127, 0, 127 + voice_noise_alt 60, 0, 0, 1, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 11, 242, 0, 127 + voice_square_1_alt 60, 0, 0, 2, 4, 6, 0, 0 + voice_directsound 60, 0, DirectSoundWaveData_8740818, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc55_tom, 255, 0, 255, 165 + voice_noise_alt 60, 0, 0, 5, 7, 15, 1 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 128, 242, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 0, 1, 5, 0, 0 + voice_noise_alt 60, 0, 0, 6, 6, 0, 1 + voice_noise_alt 60, 0, 0, 3, 6, 0, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 15, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_87424B0, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_87430C0, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8743C50, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_87446EC, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8745034, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_8745A7C, 255, 0, 255, 165 + diff --git a/sound/voicegroups/voicegroup129.inc b/sound/voicegroups/voicegroup129.inc index 89ba4a59b711..ad94d1f70417 100644 --- a/sound/voicegroups/voicegroup129.inc +++ b/sound/voicegroups/voicegroup129.inc @@ -1,131 +1,131 @@ .align 2 voicegroup129:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 226, 25, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 - voice_directsound 60, 0, DirectSoundWaveData_sd90_open_triangle, 255, 204, 128, 249 - voice_directsound 60, 0, DirectSoundWaveData_register_noise, 255, 0, 255, 76 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 206, 38 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 206, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 4 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 3 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 6 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 2 - voice_noise_alt 60, 0, 0, 0, 4, 3, 1 - voice_noise_alt 60, 0, 0, 0, 1, 12, 0 - voice_noise_alt 60, 0, 1, 0, 1, 9, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 226, 25, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound 60, 0, DirectSoundWaveData_sd90_open_triangle, 255, 204, 128, 249 + voice_directsound 60, 0, DirectSoundWaveData_register_noise, 255, 0, 255, 76 + voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 206, 38 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 206, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 252, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 4 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 3 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 29, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 22, 2, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 2 + voice_noise_alt 60, 0, 0, 0, 4, 3, 1 + voice_noise_alt 60, 0, 0, 0, 1, 12, 0 + voice_noise_alt 60, 0, 1, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup130.inc b/sound/voicegroups/voicegroup130.inc index 63e42a489f81..6f06938aae7a 100644 --- a/sound/voicegroups/voicegroup130.inc +++ b/sound/voicegroups/voicegroup130.inc @@ -1,182 +1,182 @@ .align 2 voicegroup130:: - voice_directsound 60, 0, DirectSoundWaveData_88DBBC0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DC220, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DC704, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DD054, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DDAC4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DDDE4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DEA6C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DF08C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DF414, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E01F8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E0B68, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E0F04, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E16B8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E2414, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E2658, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E3498, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E3DEC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E4140, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E4774, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E53E0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E5978, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E647C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E6A80, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E6C78, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E75DC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E8568, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E8BA0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E9674, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EA5B8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EAB30, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EB97C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EC884, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88ED358, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EDEEC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EE8C4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EEF04, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EF9E4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F0020, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F0738, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1074, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1830, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1D94, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F2B08, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F2F84, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F3470, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F3C38, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F4834, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F4BAC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F5368, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F5FCC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F6498, 255, 0, 255, 0 - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + voice_directsound 60, 0, DirectSoundWaveData_88DBBC0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DC220, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DC704, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DD054, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DDAC4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DDDE4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DEA6C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DF08C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88DF414, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E01F8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E0B68, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E0F04, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E16B8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E2414, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E2658, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E3498, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E3DEC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E4140, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E4774, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E53E0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E5978, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E647C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E6A80, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E6C78, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E75DC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E8568, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E8BA0, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88E9674, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EA5B8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EAB30, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EB97C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EC884, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88ED358, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EDEEC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EE8C4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EEF04, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88EF9E4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F0020, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F0738, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1074, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1830, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F1D94, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F2B08, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F2F84, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F3470, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F3C38, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F4834, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F4BAC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F5368, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F5FCC, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_88F6498, 255, 0, 255, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 diff --git a/sound/voicegroups/voicegroup131.inc b/sound/voicegroups/voicegroup131.inc index 3b0377b5e711..e0e8c6ceed8d 100644 --- a/sound/voicegroups/voicegroup131.inc +++ b/sound/voicegroups/voicegroup131.inc @@ -1,131 +1,131 @@ .align 2 voicegroup131:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 128, 204, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 5 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 128, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 5 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup132.inc b/sound/voicegroups/voicegroup132.inc index 92e565468ef2..2e7dbc825ad1 100644 --- a/sound/voicegroups/voicegroup132.inc +++ b/sound/voicegroups/voicegroup132.inc @@ -1,131 +1,131 @@ .align 2 voicegroup132:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 118, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 2 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 4, 2, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 118, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 2 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 4, 2, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup133.inc b/sound/voicegroups/voicegroup133.inc index ff98e8ff2c2e..23bfa9249567 100644 --- a/sound/voicegroups/voicegroup133.inc +++ b/sound/voicegroups/voicegroup133.inc @@ -1,131 +1,131 @@ .align 2 voicegroup133:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup134.inc b/sound/voicegroups/voicegroup134.inc index 470a6613a371..2266c55dee91 100644 --- a/sound/voicegroups/voicegroup134.inc +++ b/sound/voicegroups/voicegroup134.inc @@ -1,93 +1,93 @@ .align 2 voicegroup134:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup135.inc b/sound/voicegroups/voicegroup135.inc index 48ed76c036e5..2ea22bf96903 100644 --- a/sound/voicegroups/voicegroup135.inc +++ b/sound/voicegroups/voicegroup135.inc @@ -1,86 +1,86 @@ .align 2 voicegroup135:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 85, 137, 180, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 9, 0 - voice_square_2_alt 60, 0, 2, 0, 0, 9, 0 - voice_square_1_alt 60, 0, 0, 0, 1, 2, 6, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 85, 137, 180, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 9, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 9, 0 + voice_square_1_alt 60, 0, 0, 0, 1, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup136.inc b/sound/voicegroups/voicegroup136.inc index 3b053ce2d96a..672c9435c3cc 100644 --- a/sound/voicegroups/voicegroup136.inc +++ b/sound/voicegroups/voicegroup136.inc @@ -1,131 +1,131 @@ .align 2 voicegroup136:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 5, 0, 0 - voice_square_1_alt 60, 0, 0, 2, 2, 4, 10, 0 - voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 5, 0, 0 - voice_square_2_alt 60, 0, 3, 2, 4, 10, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 1, 5, 0, 3 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 5, 0, 3 - voice_square_2_alt 60, 0, 1, 0, 1, 10, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 10, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 2, 2, 4, 10, 0 + voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 5, 0, 0 + voice_square_2_alt 60, 0, 3, 2, 4, 10, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 1, 5, 0, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 5, 0, 3 + voice_square_2_alt 60, 0, 1, 0, 1, 10, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 10, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup137.inc b/sound/voicegroups/voicegroup137.inc index 8eb79103974a..494b82d375b8 100644 --- a/sound/voicegroups/voicegroup137.inc +++ b/sound/voicegroups/voicegroup137.inc @@ -1,131 +1,131 @@ .align 2 voicegroup137:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 165, 180, 165 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 137, 154, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 - voice_square_2_alt 60, 0, 1, 1, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 165, 180, 165 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 137, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 204, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 1, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 diff --git a/sound/voicegroups/voicegroup138.inc b/sound/voicegroups/voicegroup138.inc index 0439e92f5f36..599dd92fffe9 100644 --- a/sound/voicegroups/voicegroup138.inc +++ b/sound/voicegroups/voicegroup138.inc @@ -1,131 +1,131 @@ .align 2 voicegroup138:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 3 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 3 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup139.inc b/sound/voicegroups/voicegroup139.inc index 5d222313608c..32250fd92e36 100644 --- a/sound/voicegroups/voicegroup139.inc +++ b/sound/voicegroups/voicegroup139.inc @@ -1,131 +1,131 @@ .align 2 voicegroup139:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 127, 103, 201 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 37, 127, 77, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 127, 103, 201 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 37, 127, 77, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup140.inc b/sound/voicegroups/voicegroup140.inc index 7dfc37f745b1..a12a9f30a863 100644 --- a/sound/voicegroups/voicegroup140.inc +++ b/sound/voicegroups/voicegroup140.inc @@ -1,7 +1,7 @@ .align 2 voicegroup140:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup141.inc b/sound/voicegroups/voicegroup141.inc index 7a866f991e06..6373309ed50b 100644 --- a/sound/voicegroups/voicegroup141.inc +++ b/sound/voicegroups/voicegroup141.inc @@ -1,131 +1,131 @@ .align 2 voicegroup141:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 2, 7, 3 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 2, 9, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 2, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup142.inc b/sound/voicegroups/voicegroup142.inc index aa7e8b204398..3764a327f30b 100644 --- a/sound/voicegroups/voicegroup142.inc +++ b/sound/voicegroups/voicegroup142.inc @@ -1,87 +1,87 @@ .align 2 voicegroup142:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 188, 128, 201 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 195, 103, 220 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 195, 72, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 85, 188, 103, 160 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 188, 77, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 175, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 - voice_square_2_alt 60, 0, 2, 0, 2, 5, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 7, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 188, 128, 201 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 195, 103, 220 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 195, 72, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 85, 188, 103, 160 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 128, 188, 77, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 175, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 5, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup143.inc b/sound/voicegroups/voicegroup143.inc index d668337f8727..346c644d80a8 100644 --- a/sound/voicegroups/voicegroup143.inc +++ b/sound/voicegroups/voicegroup143.inc @@ -1,131 +1,131 @@ .align 2 voicegroup143:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 123, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 3, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 123, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 3, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup144.inc b/sound/voicegroups/voicegroup144.inc index 43ed4dbab23b..60bd142adedc 100644 --- a/sound/voicegroups/voicegroup144.inc +++ b/sound/voicegroups/voicegroup144.inc @@ -1,131 +1,131 @@ .align 2 voicegroup144:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 188, 92, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 127, 180, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 2 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 188, 92, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 85, 127, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 51, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 2 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup145.inc b/sound/voicegroups/voicegroup145.inc index a14803a12c30..374987162b81 100644 --- a/sound/voicegroups/voicegroup145.inc +++ b/sound/voicegroups/voicegroup145.inc @@ -1,131 +1,131 @@ .align 2 voicegroup145:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 0, 9, 0 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 0, 9, 0 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup146.inc b/sound/voicegroups/voicegroup146.inc index d78b991e33d0..fcbfedcfedd2 100644 --- a/sound/voicegroups/voicegroup146.inc +++ b/sound/voicegroups/voicegroup146.inc @@ -1,131 +1,131 @@ .align 2 voicegroup146:: - voice_keysplit_all voicegroup002 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 43, 76, 103, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 4 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 2 + voice_keysplit_all voicegroup002 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 43, 76, 103, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 4 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup147.inc b/sound/voicegroups/voicegroup147.inc index 35fb9dc5b360..de4c5a02fffe 100644 --- a/sound/voicegroups/voicegroup147.inc +++ b/sound/voicegroups/voicegroup147.inc @@ -1,87 +1,87 @@ .align 2 voicegroup147:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 249, 25, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 6, 1 - voice_square_2_alt 60, 0, 2, 0, 0, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 4, 2 + voice_keysplit_all voicegroup001 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 249, 25, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 6, 1 + voice_square_2_alt 60, 0, 2, 0, 0, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 4, 2 diff --git a/sound/voicegroups/voicegroup148.inc b/sound/voicegroups/voicegroup148.inc index 1ada1b89c624..ba25340f0dcf 100644 --- a/sound/voicegroups/voicegroup148.inc +++ b/sound/voicegroups/voicegroup148.inc @@ -1,131 +1,131 @@ .align 2 voicegroup148:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 - voice_square_2_alt 60, 0, 2, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 3, 5, 2 - voice_noise_alt 60, 0, 0, 0, 1, 6, 5 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 3, 5, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 5 diff --git a/sound/voicegroups/voicegroup149.inc b/sound/voicegroups/voicegroup149.inc index 78c29fb840e7..50c47bc35654 100644 --- a/sound/voicegroups/voicegroup149.inc +++ b/sound/voicegroups/voicegroup149.inc @@ -1,96 +1,96 @@ .align 2 voicegroup149:: - voice_keysplit_all voicegroup190 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 153 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 43, 188, 103, 165 - voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 43, 165, 103, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_keysplit_all voicegroup190 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 43, 188, 103, 165 + voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 43, 165, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup150.inc b/sound/voicegroups/voicegroup150.inc index 233981ebdfaf..97de70ac6479 100644 --- a/sound/voicegroups/voicegroup150.inc +++ b/sound/voicegroups/voicegroup150.inc @@ -1,131 +1,131 @@ .align 2 voicegroup150:: - voice_keysplit_all voicegroup002 - voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 85, 204, 77, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 4, 6 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup002 + voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 85, 204, 77, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 4, 6 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup151.inc b/sound/voicegroups/voicegroup151.inc index 3688a2541d7e..c7e150baf295 100644 --- a/sound/voicegroups/voicegroup151.inc +++ b/sound/voicegroups/voicegroup151.inc @@ -1,91 +1,91 @@ .align 2 voicegroup151:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 127 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 127 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup152.inc b/sound/voicegroups/voicegroup152.inc index bf07b260ca5a..19340b82c3d1 100644 --- a/sound/voicegroups/voicegroup152.inc +++ b/sound/voicegroups/voicegroup152.inc @@ -1,131 +1,131 @@ .align 2 voicegroup152:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 175, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 1 - voice_square_2_alt 60, 0, 3, 0, 1, 5, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 160, 175, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 1 + voice_square_2_alt 60, 0, 3, 0, 1, 5, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup153.inc b/sound/voicegroups/voicegroup153.inc index 90840698e413..4284b8991331 100644 --- a/sound/voicegroups/voicegroup153.inc +++ b/sound/voicegroups/voicegroup153.inc @@ -1,131 +1,131 @@ .align 2 voicegroup153:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 3, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48A0, 0, 1, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 2 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 3, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48A0, 0, 1, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup154.inc b/sound/voicegroups/voicegroup154.inc index 14cfd2dd9d8d..e38e7a44831f 100644 --- a/sound/voicegroups/voicegroup154.inc +++ b/sound/voicegroups/voicegroup154.inc @@ -1,96 +1,96 @@ .align 2 voicegroup154:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 10, 0 - voice_square_2_alt 60, 0, 1, 0, 0, 10, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 12, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 97, 236 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 10, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 10, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 12, 0 diff --git a/sound/voicegroups/voicegroup155.inc b/sound/voicegroups/voicegroup155.inc index 7fcfdcfe66b2..87cd504986a4 100644 --- a/sound/voicegroups/voicegroup155.inc +++ b/sound/voicegroups/voicegroup155.inc @@ -1,131 +1,131 @@ .align 2 voicegroup155:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 - voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 2 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 2 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup156.inc b/sound/voicegroups/voicegroup156.inc index 0d8ec69d9f22..76291c1e6a2e 100644 --- a/sound/voicegroups/voicegroup156.inc +++ b/sound/voicegroups/voicegroup156.inc @@ -1,131 +1,131 @@ .align 2 voicegroup156:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 4, 4, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 5 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 4, 4, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 5 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup157.inc b/sound/voicegroups/voicegroup157.inc index 102702545ecc..66cd6ff1cd4d 100644 --- a/sound/voicegroups/voicegroup157.inc +++ b/sound/voicegroups/voicegroup157.inc @@ -1,131 +1,131 @@ .align 2 voicegroup157:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 - voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 190, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 128, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 180, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup158.inc b/sound/voicegroups/voicegroup158.inc index 798a6f4d10d2..6a8ca184b4d9 100644 --- a/sound/voicegroups/voicegroup158.inc +++ b/sound/voicegroups/voicegroup158.inc @@ -1,131 +1,131 @@ .align 2 voicegroup158:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 10, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 10, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup159.inc b/sound/voicegroups/voicegroup159.inc index ce05bc70e21c..7ee1e3a56ec6 100644 --- a/sound/voicegroups/voicegroup159.inc +++ b/sound/voicegroups/voicegroup159.inc @@ -1,131 +1,131 @@ .align 2 voicegroup159:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 51, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 7, 0, 6 - voice_square_2_alt 60, 0, 1, 1, 5, 1, 6 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 - voice_square_1_alt 60, 0, 0, 0, 1, 4, 3, 6 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 51, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 7, 0, 6 + voice_square_2_alt 60, 0, 1, 1, 5, 1, 6 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_square_1_alt 60, 0, 0, 0, 1, 4, 3, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup160.inc b/sound/voicegroups/voicegroup160.inc index 9198c7f127db..faff8109589e 100644 --- a/sound/voicegroups/voicegroup160.inc +++ b/sound/voicegroups/voicegroup160.inc @@ -1,91 +1,91 @@ .align 2 voicegroup160:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 4, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup161.inc b/sound/voicegroups/voicegroup161.inc index 8165b38e8d5f..71374e1a06d7 100644 --- a/sound/voicegroups/voicegroup161.inc +++ b/sound/voicegroups/voicegroup161.inc @@ -1,131 +1,131 @@ .align 2 voicegroup161:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup162.inc b/sound/voicegroups/voicegroup162.inc index cf6d4294c63d..53edb3b0e886 100644 --- a/sound/voicegroups/voicegroup162.inc +++ b/sound/voicegroups/voicegroup162.inc @@ -1,96 +1,96 @@ .align 2 voicegroup162:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 64, 188, 108, 244 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 195, 92, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 64, 204, 113, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 0 - voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 64, 188, 108, 244 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 64, 195, 92, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 64, 204, 113, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 0, 6, 0 + voice_square_2_alt 60, 0, 1, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup163.inc b/sound/voicegroups/voicegroup163.inc index 6c6fc38033e6..86ff86ef941f 100644 --- a/sound/voicegroups/voicegroup163.inc +++ b/sound/voicegroups/voicegroup163.inc @@ -1,131 +1,131 @@ .align 2 voicegroup163:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 3, 4, 2 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup164.inc b/sound/voicegroups/voicegroup164.inc index b7f742114b7f..fe48fbfb99fe 100644 --- a/sound/voicegroups/voicegroup164.inc +++ b/sound/voicegroups/voicegroup164.inc @@ -1,131 +1,131 @@ .align 2 voicegroup164:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 85, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 6 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 85, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 10, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup165.inc b/sound/voicegroups/voicegroup165.inc index 4e480695688c..e633e5671a3d 100644 --- a/sound/voicegroups/voicegroup165.inc +++ b/sound/voicegroups/voicegroup165.inc @@ -1,131 +1,131 @@ .align 2 voicegroup165:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 103, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 204, 92, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 10, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 6 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_enhanced_delay_shaku, 255, 191, 97, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 103, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 204, 92, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 10, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 6 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_enhanced_delay_shaku, 255, 191, 97, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup166.inc b/sound/voicegroups/voicegroup166.inc index 7c23ebb01422..e4ac4a28e71d 100644 --- a/sound/voicegroups/voicegroup166.inc +++ b/sound/voicegroups/voicegroup166.inc @@ -1,131 +1,131 @@ .align 2 voicegroup166:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 9, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 8, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 128, 146, 108, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 204, 103, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 9, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 8, 1 diff --git a/sound/voicegroups/voicegroup167.inc b/sound/voicegroups/voicegroup167.inc index d4cf5a9f4d4d..307379eb9192 100644 --- a/sound/voicegroups/voicegroup167.inc +++ b/sound/voicegroups/voicegroup167.inc @@ -1,131 +1,131 @@ .align 2 voicegroup167:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 10, 4 - voice_square_2_alt 60, 0, 3, 0, 2, 8, 3 - voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 10, 4 + voice_square_2_alt 60, 0, 3, 0, 2, 8, 3 + voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup168.inc b/sound/voicegroups/voicegroup168.inc index 2bb2c3b21440..05dbf3954a55 100644 --- a/sound/voicegroups/voicegroup168.inc +++ b/sound/voicegroups/voicegroup168.inc @@ -1,131 +1,131 @@ .align 2 voicegroup168:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 4 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 4 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup169.inc b/sound/voicegroups/voicegroup169.inc index bac059cff457..220425ff015c 100644 --- a/sound/voicegroups/voicegroup169.inc +++ b/sound/voicegroups/voicegroup169.inc @@ -1,131 +1,131 @@ .align 2 voicegroup169:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 4, 0 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 210 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 + voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 4, 0 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup170.inc b/sound/voicegroups/voicegroup170.inc index 01a33887433e..68c29a6c9dba 100644 --- a/sound/voicegroups/voicegroup170.inc +++ b/sound/voicegroups/voicegroup170.inc @@ -1,87 +1,87 @@ .align 2 voicegroup170:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup171.inc b/sound/voicegroups/voicegroup171.inc index 2fc106983d2c..76eee5f8a32d 100644 --- a/sound/voicegroups/voicegroup171.inc +++ b/sound/voicegroups/voicegroup171.inc @@ -1,94 +1,94 @@ .align 2 voicegroup171:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 - voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_keysplit_all voicegroup001 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 + voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup172.inc b/sound/voicegroups/voicegroup172.inc index af9c09334fa5..3e04a358c4b1 100644 --- a/sound/voicegroups/voicegroup172.inc +++ b/sound/voicegroups/voicegroup172.inc @@ -1,131 +1,131 @@ .align 2 voicegroup172:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 5, 2 - voice_square_2_alt 60, 0, 3, 0, 2, 6, 3 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 3, 0, 2, 6, 3 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 0 diff --git a/sound/voicegroups/voicegroup173.inc b/sound/voicegroups/voicegroup173.inc index 98a024ad298d..ee4a2c866256 100644 --- a/sound/voicegroups/voicegroup173.inc +++ b/sound/voicegroups/voicegroup173.inc @@ -1,131 +1,131 @@ .align 2 voicegroup173:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 4 - voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 3, 2 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 4 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 2 diff --git a/sound/voicegroups/voicegroup174.inc b/sound/voicegroups/voicegroup174.inc index 0a656661143a..82be8ccf9b28 100644 --- a/sound/voicegroups/voicegroup174.inc +++ b/sound/voicegroups/voicegroup174.inc @@ -1,160 +1,160 @@ .align 2 voicegroup174:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 - voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 3, 1 - voice_keysplit_all voicegroup177 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 - voice_keysplit_all voicegroup002 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 1 + voice_keysplit_all voicegroup177 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 + voice_keysplit_all voicegroup002 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup175.inc b/sound/voicegroups/voicegroup175.inc index 6ba9fec3b4d3..a074f216dd78 100644 --- a/sound/voicegroups/voicegroup175.inc +++ b/sound/voicegroups/voicegroup175.inc @@ -1,55 +1,55 @@ .align 2 voicegroup175:: - voice_keysplit_all voicegroup177 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup177 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup176.inc b/sound/voicegroups/voicegroup176.inc index 8b4c687b5b4f..9743d50e20f0 100644 --- a/sound/voicegroups/voicegroup176.inc +++ b/sound/voicegroups/voicegroup176.inc @@ -1,51 +1,51 @@ .align 2 voicegroup176:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup177.inc b/sound/voicegroups/voicegroup177.inc index 12d57b389bdd..bd0e738fd482 100644 --- a/sound/voicegroups/voicegroup177.inc +++ b/sound/voicegroups/voicegroup177.inc @@ -1,93 +1,93 @@ .align 2 voicegroup177:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 - voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 65, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 68, 29, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 64, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 76, 39, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 89, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 50, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 65, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 68, 29, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 64, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 39, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 89, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 64, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup178.inc b/sound/voicegroups/voicegroup178.inc index 0062455af87d..1dc6971d7570 100644 --- a/sound/voicegroups/voicegroup178.inc +++ b/sound/voicegroups/voicegroup178.inc @@ -1,91 +1,91 @@ .align 2 voicegroup178:: - voice_keysplit_all voicegroup177 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 204, 103, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 7, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 15, 1 + voice_keysplit_all voicegroup177 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 204, 103, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 7, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 15, 1 diff --git a/sound/voicegroups/voicegroup179.inc b/sound/voicegroups/voicegroup179.inc index f777dcb3a453..b7df91e68c6d 100644 --- a/sound/voicegroups/voicegroup179.inc +++ b/sound/voicegroups/voicegroup179.inc @@ -1,91 +1,91 @@ .align 2 voicegroup179:: - voice_keysplit_all voicegroup177 - voice_keysplit_all voicegroup176 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 9, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 9, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_keysplit_all voicegroup177 + voice_keysplit_all voicegroup176 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 10, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 9, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup180.inc b/sound/voicegroups/voicegroup180.inc index 1754c35de45e..82e98196d3ae 100644 --- a/sound/voicegroups/voicegroup180.inc +++ b/sound/voicegroups/voicegroup180.inc @@ -1,131 +1,131 @@ .align 2 voicegroup180:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_noise_alt 60, 0, 0, 0, 1, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup181.inc b/sound/voicegroups/voicegroup181.inc index 0b7e24583c03..92df8710a809 100644 --- a/sound/voicegroups/voicegroup181.inc +++ b/sound/voicegroups/voicegroup181.inc @@ -1,50 +1,50 @@ .align 2 voicegroup181:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 diff --git a/sound/voicegroups/voicegroup182.inc b/sound/voicegroups/voicegroup182.inc index a773b680a53f..1fb444fec6c0 100644 --- a/sound/voicegroups/voicegroup182.inc +++ b/sound/voicegroups/voicegroup182.inc @@ -1,91 +1,91 @@ .align 2 voicegroup182:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 76 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 - voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 76 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup008, KeySplitTable4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 1, 2, 3, 1 + voice_square_2_alt 60, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup183.inc b/sound/voicegroups/voicegroup183.inc index f930e480a11c..92b953fc4c58 100644 --- a/sound/voicegroups/voicegroup183.inc +++ b/sound/voicegroups/voicegroup183.inc @@ -1,131 +1,131 @@ .align 2 voicegroup183:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 3, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 1 diff --git a/sound/voicegroups/voicegroup184.inc b/sound/voicegroups/voicegroup184.inc index d12cb031d154..e0d1c958d7d6 100644 --- a/sound/voicegroups/voicegroup184.inc +++ b/sound/voicegroups/voicegroup184.inc @@ -1,89 +1,89 @@ .align 2 voicegroup184:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup185.inc b/sound/voicegroups/voicegroup185.inc index 7b76f7ac7ba0..8417a2407b1c 100644 --- a/sound/voicegroups/voicegroup185.inc +++ b/sound/voicegroups/voicegroup185.inc @@ -1,131 +1,131 @@ .align 2 voicegroup185:: - voice_keysplit_all voicegroup002 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fingered_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_whistle, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup186.inc b/sound/voicegroups/voicegroup186.inc index 64f1460c75a2..18dc71d70d1b 100644 --- a/sound/voicegroups/voicegroup186.inc +++ b/sound/voicegroups/voicegroup186.inc @@ -1,131 +1,131 @@ .align 2 voicegroup186:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 diff --git a/sound/voicegroups/voicegroup187.inc b/sound/voicegroups/voicegroup187.inc index c4b1af710aee..46c5c1f9da98 100644 --- a/sound/voicegroups/voicegroup187.inc +++ b/sound/voicegroups/voicegroup187.inc @@ -1,131 +1,131 @@ .align 2 voicegroup187:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 - voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 6, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 76, 133, 137 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 64, 188, 108, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 249, 25, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup007, KeySplitTable3 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup009, KeySplitTable5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 + voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 + voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup188.inc b/sound/voicegroups/voicegroup188.inc index 0f071fca5185..c6afe243b32a 100644 --- a/sound/voicegroups/voicegroup188.inc +++ b/sound/voicegroups/voicegroup188.inc @@ -1,131 +1,131 @@ .align 2 voicegroup188:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 - voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 7, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 1 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 1 + voice_square_2_alt 60, 0, 3, 0, 3, 3, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 7, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 1 diff --git a/sound/voicegroups/voicegroup189.inc b/sound/voicegroups/voicegroup189.inc index 462948118dee..6c04cd832073 100644 --- a/sound/voicegroups/voicegroup189.inc +++ b/sound/voicegroups/voicegroup189.inc @@ -1,95 +1,95 @@ .align 2 voicegroup189:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 - voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit_all voicegroup002 + voice_keysplit voicegroup005, KeySplitTable1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup006, KeySplitTable2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup190.inc b/sound/voicegroups/voicegroup190.inc index f8dacda624f5..6faa27c6208c 100644 --- a/sound/voicegroups/voicegroup190.inc +++ b/sound/voicegroups/voicegroup190.inc @@ -1,90 +1,90 @@ .align 2 voicegroup190:: - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 7, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 1 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 7, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 1 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 diff --git a/src/apprentice.c b/src/apprentice.c index 00157dc1ac3c..f881c3bef623 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -48,7 +48,7 @@ * - Asking which move a mon should use, which they will ask at most 5 times * - Asking what held item to give to a mon, which they will ask at most 3 times (once for each mon) * - Asking what they should say when they win a battle, which will always be their final question before departing - * + * * ## After departing * After telling them what they should say when they win a battle they will leave the lobby for a final time * They will then be replaced by a new random Apprentice (they can repeat) @@ -274,7 +274,7 @@ static void SetRandomQuestionData(void) for (i = 0; i < ARRAY_COUNT(questionOrder); i++) questionOrder[i] = sQuestionPossibilities[i]; - + // Shuffle the questions an arbitrary 50 times for (i = 0; i < 50; i++) { @@ -788,7 +788,7 @@ static void GetNumApprenticePartyMonsAssigned(void) static void IsFinalQuestion(void) { s32 questionNum = CURRENT_QUESTION_NUM; - + if (questionNum < 0) { // Not finished asking initial questions @@ -941,7 +941,7 @@ static void ApprenticeGetQuestion(void) gSpecialVar_Result = APPRENTICE_QUESTION_WHICH_FIRST; break; default: - //case QUESTION_ID_WIN_SPEECH: + //case QUESTION_ID_WIN_SPEECH: gSpecialVar_Result = APPRENTICE_QUESTION_WIN_SPEECH; break; } @@ -1107,7 +1107,7 @@ static void TrySetApprenticeHeldItem(void) if (PLAYER_APPRENTICE.questionsAnswered < NUM_WHICH_MON_QUESTIONS) return; - + count = 0; for (j = 0; j < APPRENTICE_MAX_QUESTIONS; j++) { diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 04122b17d1a8..426dc5d157c9 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -866,7 +866,7 @@ static bool8 ShouldUseItem(void) *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_SLEEP); shouldUse = TRUE; } - if (itemEffects[3] & ITEM3_POISON && (gBattleMons[gActiveBattler].status1 & STATUS1_POISON + if (itemEffects[3] & ITEM3_POISON && (gBattleMons[gActiveBattler].status1 & STATUS1_POISON || gBattleMons[gActiveBattler].status1 & STATUS1_TOXIC_POISON)) { *(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_HEAL_POISON); diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 315d6108979e..2f4343e73cf6 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3464,7 +3464,7 @@ static void AnimOrbitScatter_Step(struct Sprite *sprite) { sprite->x2 += sprite->data[0]; sprite->y2 += sprite->data[1]; - if (sprite->x + sprite->x2 + 16 > ((u32)DISPLAY_WIDTH + 32) + if (sprite->x + sprite->x2 + 16 > ((u32)DISPLAY_WIDTH + 32) || sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 8a2469d09b01..a9a876920f11 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -1305,7 +1305,7 @@ void AnimTask_ShockWaveLightning(u8 taskId) static bool8 CreateShockWaveLightningSprite(struct Task *task, u8 taskId) { u8 spriteId = CreateSprite(&gLightningSpriteTemplate, task->data[13], task->data[14], task->data[12]); - + if (spriteId != MAX_SPRITES) { gSprites[spriteId].callback = AnimShockWaveLightning; diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index e70f31449712..9123912801f0 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -658,7 +658,7 @@ void AnimFireRing(struct Sprite *sprite) } static void AnimFireRing_Step1(struct Sprite *sprite) -{ +{ UpdateFireRingCircleOffset(sprite); if (++sprite->data[0] == 0x12) @@ -718,7 +718,7 @@ static void UpdateFireRingCircleOffset(struct Sprite *sprite) // arg 1: initial y pixel offset // arg 2: duration // arg 3: x delta -// arg 4: y delta +// arg 4: y delta // AnimFireCross(struct Sprite *sprite) static void AnimFireCross(struct Sprite *sprite) { @@ -1091,7 +1091,7 @@ static void AnimWillOWispOrb(struct Sprite *sprite) case 2: sprite->x2 = Sin(sprite->data[2], sprite->data[4]); sprite->data[2] = (sprite->data[2] + 4) & 0xFF; - + if (++sprite->data[3] == 31) { sprite->x += sprite->x2; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 1e9b3b56f2c4..b1098ad807c9 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -661,7 +661,7 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) { switch (data->unk2 / 64) { - case 0: + case 0: if ((u8)data->unk0_1 == 1) //casts to u8 here are necessary for matching { data->unk0_0d = 1; diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index 2cd1351471c7..81b3d160f02a 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -186,7 +186,7 @@ static void AnimBoneHitProjectile(struct Sprite *sprite) InitSpritePosToAnimTarget(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; - + sprite->data[0] = gBattleAnimArgs[4]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index abd5d5478281..15a1452e4d70 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -425,7 +425,7 @@ static void AnimCirclingSparkle(struct Sprite *sprite) #define tPalSelectorHi data[9] #define tPalSelectorLo data[10] -// Blends mon/screen to designated color or back alternately tNumBlends times +// Blends mon/screen to designated color or back alternately tNumBlends times // Many uses of this task only set a tNumBlends of 2, which has the effect of blending to a color and back once void AnimTask_BlendColorCycle(u8 taskId) { @@ -763,7 +763,7 @@ void UnusedAnimTask_8115F94(u8 taskId) paletteIndex = IndexOfSpritePaletteTag(gSprites[gHealthboxSpriteIds[attackerBattler]].template->paletteTag); selectedPalettes |= (1 << paletteIndex) << 16; } - + if (gTasks[taskId].data[3] & 0x100) selectedPalettes |= (1 << attackerBattler) << 16; @@ -956,7 +956,7 @@ static void AnimHitSplatHandleInvert(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER && !IsContest()) gBattleAnimArgs[1] = -gBattleAnimArgs[1]; - + AnimHitSplatBasic(sprite); } diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index 6c81467dcb19..b3c7b4ce8e77 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -493,7 +493,7 @@ static void AnimDefensiveWall_Step1(struct Sprite *sprite) if (IsBattlerSpriteVisible(battler)) gSprites[gBattlerSpriteIds[battler]].invisible = TRUE; - + battler = BATTLE_PARTNER(battler); if (IsBattlerSpriteVisible(battler)) gSprites[gBattlerSpriteIds[battler]].invisible = TRUE; @@ -957,7 +957,7 @@ void AnimTask_ExtrasensoryDistortion(u8 taskId) u8 yOffset; struct ScanlineEffectParams scanlineParams; struct Task *task = &gTasks[taskId]; - + yOffset = GetBattlerYCoordWithElevation(gBattleAnimTarget); task->data[14] = yOffset - 32; @@ -1056,7 +1056,7 @@ void AnimTask_TransparentCloneGrowAndShrink(u8 taskId) s16 spriteId; s16 matrixNum; struct Task *task = &gTasks[taskId]; - + matrixNum = AllocOamMatrix(); if (matrixNum == 0xFF) { diff --git a/src/battle_anim_smokescreen.c b/src/battle_anim_smokescreen.c index ea7f94843454..9844f500771b 100644 --- a/src/battle_anim_smokescreen.c +++ b/src/battle_anim_smokescreen.c @@ -13,7 +13,7 @@ static void SpriteCB_DestroySprite(struct Sprite *sprite); // The below data for smokescreen starts and ends with some data that belongs to battle_gfx_sfx_util.c -const u8 gBattlePalaceNatureToMoveTarget[NUM_NATURES] = +const u8 gBattlePalaceNatureToMoveTarget[NUM_NATURES] = { [NATURE_HARDY] = PALACE_TARGET_STRONGER, [NATURE_LONELY] = PALACE_TARGET_STRONGER, @@ -21,7 +21,7 @@ const u8 gBattlePalaceNatureToMoveTarget[NUM_NATURES] = [NATURE_ADAMANT] = PALACE_TARGET_STRONGER, [NATURE_NAUGHTY] = PALACE_TARGET_WEAKER, [NATURE_BOLD] = PALACE_TARGET_WEAKER, - [NATURE_DOCILE] = PALACE_TARGET_RANDOM, + [NATURE_DOCILE] = PALACE_TARGET_RANDOM, [NATURE_RELAXED] = PALACE_TARGET_STRONGER, [NATURE_IMPISH] = PALACE_TARGET_STRONGER, [NATURE_LAX] = PALACE_TARGET_STRONGER, @@ -29,7 +29,7 @@ const u8 gBattlePalaceNatureToMoveTarget[NUM_NATURES] = [NATURE_HASTY] = PALACE_TARGET_WEAKER, [NATURE_SERIOUS] = PALACE_TARGET_WEAKER, [NATURE_JOLLY] = PALACE_TARGET_STRONGER, - [NATURE_NAIVE] = PALACE_TARGET_RANDOM, + [NATURE_NAIVE] = PALACE_TARGET_RANDOM, [NATURE_MODEST] = PALACE_TARGET_WEAKER, [NATURE_MILD] = PALACE_TARGET_STRONGER, [NATURE_QUIET] = PALACE_TARGET_WEAKER, @@ -54,7 +54,7 @@ static const struct CompressedSpritePalette sSmokescreenImpactSpritePalette = static const struct OamData sOamData_SmokescreenImpact = { - .y = 0, + .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -71,33 +71,33 @@ static const struct OamData sOamData_SmokescreenImpact = static const union AnimCmd sAnim_SmokescreenImpact_0[] = { - ANIMCMD_FRAME(0, 4), - ANIMCMD_FRAME(4, 4), - ANIMCMD_FRAME(8, 4), + ANIMCMD_FRAME(0, 4), + ANIMCMD_FRAME(4, 4), + ANIMCMD_FRAME(8, 4), ANIMCMD_END }; static const union AnimCmd sAnim_SmokescreenImpact_1[] = { - ANIMCMD_FRAME(0, 4, .hFlip = TRUE), - ANIMCMD_FRAME(4, 4, .hFlip = TRUE), - ANIMCMD_FRAME(8, 4, .hFlip = TRUE), + ANIMCMD_FRAME(0, 4, .hFlip = TRUE), + ANIMCMD_FRAME(4, 4, .hFlip = TRUE), + ANIMCMD_FRAME(8, 4, .hFlip = TRUE), ANIMCMD_END }; static const union AnimCmd sAnim_SmokescreenImpact_2[] = { - ANIMCMD_FRAME(0, 4, .vFlip = TRUE), - ANIMCMD_FRAME(4, 4, .vFlip = TRUE), - ANIMCMD_FRAME(8, 4, .vFlip = TRUE), + ANIMCMD_FRAME(0, 4, .vFlip = TRUE), + ANIMCMD_FRAME(4, 4, .vFlip = TRUE), + ANIMCMD_FRAME(8, 4, .vFlip = TRUE), ANIMCMD_END }; static const union AnimCmd sAnim_SmokescreenImpact_3[] = { - ANIMCMD_FRAME(0, 4, .hFlip = TRUE, .vFlip = TRUE), - ANIMCMD_FRAME(4, 4, .hFlip = TRUE, .vFlip = TRUE), - ANIMCMD_FRAME(8, 4, .hFlip = TRUE, .vFlip = TRUE), + ANIMCMD_FRAME(0, 4, .hFlip = TRUE, .vFlip = TRUE), + ANIMCMD_FRAME(4, 4, .hFlip = TRUE, .vFlip = TRUE), + ANIMCMD_FRAME(8, 4, .hFlip = TRUE, .vFlip = TRUE), ANIMCMD_END }; @@ -111,12 +111,12 @@ static const union AnimCmd *const sAnims_SmokescreenImpact[] = static const struct SpriteTemplate sSmokescreenImpactSpriteTemplate = { - .tileTag = 55019, - .paletteTag = 55019, - .oam = &sOamData_SmokescreenImpact, - .anims = sAnims_SmokescreenImpact, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 55019, + .paletteTag = 55019, + .oam = &sOamData_SmokescreenImpact, + .anims = sAnims_SmokescreenImpact, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_DestroySprite }; @@ -127,7 +127,7 @@ const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow = static const struct OamData sOamData_EnemyShadow = { - .y = 0, + .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, .mosaic = 0, @@ -144,12 +144,12 @@ static const struct OamData sOamData_EnemyShadow = const struct SpriteTemplate gSpriteTemplate_EnemyShadow = { - .tileTag = 55129, - .paletteTag = 55039, - .oam = &sOamData_EnemyShadow, - .anims = gDummySpriteAnimTable, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 55129, + .paletteTag = 55039, + .oam = &sOamData_EnemyShadow, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_SetInvisible }; diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 39d6729e8dd6..6068b0f33a05 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -349,7 +349,7 @@ void SoundTask_PlaySE2WithPanning(u8 taskId) DestroyAnimVisualTask(taskId); } -// Adjusts panning and assigns it to gAnimCustomPanning. Doesnt play sound. +// Adjusts panning and assigns it to gAnimCustomPanning. Doesnt play sound. // Used by Confuse Ray and Will-O-Wisp (see uses of gAnimCustomPanning) void SoundTask_AdjustPanningVar(u8 taskId) { @@ -381,7 +381,7 @@ static void SoundTask_AdjustPanningVar_Step(u8 taskId) u16 oldPan; gTasks[taskId].data[10] = 0; oldPan = gTasks[taskId].data[11]; - gTasks[taskId].data[11] = panIncrement + oldPan; + gTasks[taskId].data[11] = panIncrement + oldPan; gTasks[taskId].data[11] = KeepPanInRange(gTasks[taskId].data[11], oldPan); } diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 4893abd585f7..9be3d65dc422 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -210,35 +210,35 @@ static const struct SpriteTemplate sFlickeringShrinkOrbSpriteTemplate = static const struct Subsprite sFrozenIceCubeSubsprites[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(64x64), - .size = SPRITE_SIZE(64x64), - .tileOffset = 0, + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(64x64), + .size = SPRITE_SIZE(64x64), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = 48, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 64, + .x = -16, + .y = 48, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 64, .priority = 2 }, { - .x = 48, - .y = -16, - .shape = SPRITE_SHAPE(32x64), + .x = 48, + .y = -16, + .shape = SPRITE_SHAPE(32x64), .size = SPRITE_SIZE(32x64), - .tileOffset = 96, + .tileOffset = 96, .priority = 2 }, { - .x = 48, - .y = 48, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 128, + .x = 48, + .y = 48, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 128, .priority = 2 }, }; diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 23e031b64659..0a81a6ecab67 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -1139,8 +1139,8 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite) switch (STATE(sprite->sState)) { - case BALL_ROLL_1: - // Rolling effect: every frame in the rotation, the sprite shifts 176/256 of a pixel. + case BALL_ROLL_1: + // Rolling effect: every frame in the rotation, the sprite shifts 176/256 of a pixel. if (gBattleSpritesDataPtr->animationData->ballSubpx > 255) { sprite->x2 += sprite->sDirection; @@ -2268,7 +2268,7 @@ static void Task_ShinyStars(u8 taskId) } // Wait until the ball particles have despawned - if (gBattleSpritesDataPtr->animationData->numBallParticles) + if (gBattleSpritesDataPtr->animationData->numBallParticles) return; timer = gTasks[taskId].tStarTimer++; @@ -2440,7 +2440,7 @@ static void SpriteCB_PokeBlock_Arc(struct Sprite *sprite) } // Destroy after end of player animation -static void SpriteCB_ThrowPokeBlock_Free(struct Sprite *sprite) +static void SpriteCB_ThrowPokeBlock_Free(struct Sprite *sprite) { if (gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].animEnded) { diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index e0a78acf5d2e..4ee09f386470 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -1549,7 +1549,7 @@ static void CreateWaterPulseRingBubbles(struct Sprite *sprite, int xDiff, int yD s16 randomSomethingY; s16 randomSomethingX; u8 spriteId; - + something = sprite->data[0] / 2; combinedX = sprite->x + sprite->x2; combinedY = sprite->y + sprite->y2; diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 68f4907f0bba..87bef43025ba 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -249,7 +249,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) { if (twoMons == TRUE) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim + if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; @@ -266,7 +266,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) { if (GetBattlerPosition(gActiveBattler) == 3) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) { FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); @@ -291,16 +291,16 @@ static void Intro_TryShinyAnimShowHealthbox(void) bool32 bgmRestored = FALSE; bool32 battlerAnimsDone = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) - && !(gBattleTypeFlags & BATTLE_TYPE_MULTI) - && IsDoubleBattle() - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive + if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) + && !(gBattleTypeFlags & BATTLE_TYPE_MULTI) + && IsDoubleBattle() + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); @@ -379,12 +379,12 @@ static void Intro_TryShinyAnimShowHealthbox(void) static void TryShinyAnimAfterMonAnim(void) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0 + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); - if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy + if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; @@ -467,7 +467,7 @@ static void SwitchIn_HandleSoundAndEnd(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive && !IsCryPlayingOrClearCrySongs()) { - if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy + if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy || gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy_2) { m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); @@ -478,7 +478,7 @@ static void SwitchIn_HandleSoundAndEnd(void) static void SwitchIn_ShowHealthbox(void) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim + if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; @@ -496,7 +496,7 @@ static void SwitchIn_ShowHealthbox(void) static void SwitchIn_TryShinyAnim(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index a8528374541c..8e7bc9a9f429 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -985,17 +985,17 @@ static void Intro_TryShinyAnimShowHealthbox(void) bool32 battlerAnimsDone = FALSE; // Start shiny animation if applicable for 1st pokemon - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]); // Start shiny animation if applicable for 2nd pokemon - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); // Show healthbox after ball anim - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted) @@ -1072,7 +1072,7 @@ static void SwitchIn_CleanShinyAnimShowSubstitute(void) && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy) { CopyBattleSpriteInvisibility(gActiveBattler); - + // Reset shiny anim (even if it didn't occur) gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index c84f9a0de0ae..adac43961f2c 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -262,11 +262,11 @@ static void Intro_TryShinyAnimShowHealthbox(void) bool32 bgmRestored = FALSE; bool32 battlerAnimsDone = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index cbf739ae390e..048600d9a5b0 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -285,11 +285,11 @@ static void CompleteOnChosenItem(void) static void Intro_TryShinyAnimShowHealthbox(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); diff --git a/src/battle_dome.c b/src/battle_dome.c index edd7bf950221..29874651d337 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5800,7 +5800,7 @@ static void InitRandomTourneyTreeResults(void) gSaveBlock2Ptr->frontier.lvlMode = FRONTIER_LVL_50; zero1 = 0; zero2 = 0; - + gSaveBlock2Ptr->frontier.domeLvlMode = zero1 + 1; gSaveBlock2Ptr->frontier.domeBattleMode = zero2 + 1; diff --git a/src/battle_factory.c b/src/battle_factory.c index e0bfdfdd0b72..8f1001e9cac8 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -43,12 +43,12 @@ static u8 GetMoveBattleStyle(u16 move); // Number of moves needed on the team to be considered using a certain battle style static const u8 sRequiredMoveCounts[FACTORY_NUM_STYLES - 1] = { - [FACTORY_STYLE_PREPARATION - 1] = 3, - [FACTORY_STYLE_SLOW_STEADY - 1] = 3, - [FACTORY_STYLE_ENDURANCE - 1] = 3, - [FACTORY_STYLE_HIGH_RISK - 1] = 2, - [FACTORY_STYLE_WEAKENING - 1] = 2, - [FACTORY_STYLE_UNPREDICTABLE - 1] = 2, + [FACTORY_STYLE_PREPARATION - 1] = 3, + [FACTORY_STYLE_SLOW_STEADY - 1] = 3, + [FACTORY_STYLE_ENDURANCE - 1] = 3, + [FACTORY_STYLE_HIGH_RISK - 1] = 2, + [FACTORY_STYLE_WEAKENING - 1] = 2, + [FACTORY_STYLE_UNPREDICTABLE - 1] = 2, [FACTORY_STYLE_WEATHER - 1] = 2 }; diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 3fb65d498da8..e6365aace262 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1404,7 +1404,7 @@ static void Select_HandleMonSelectionChange(void) if (sFactorySelectScreen->mons[cursorPos].selectedId) // Deselect a mon. { paletteNum = IndexOfSpritePaletteTag(PALTAG_BALL_GRAY); - if (sFactorySelectScreen->selectingMonsState == FRONTIER_PARTY_SIZE + if (sFactorySelectScreen->selectingMonsState == FRONTIER_PARTY_SIZE && sFactorySelectScreen->mons[cursorPos].selectedId == 1) { for (i = 0; i < SELECTABLE_MONS_COUNT; i++) @@ -3057,7 +3057,7 @@ static void Swap_Task_ScreenInfoTransitionOut(u8 taskId) } break; case 5: - if (gTasks[taskId].tSlideFinishedPkmn == TRUE + if (gTasks[taskId].tSlideFinishedPkmn == TRUE && gTasks[taskId].tSlideFinishedCancel == TRUE) { gTasks[taskId].tState = gTasks[taskId].tFollowUpTaskState; @@ -3123,7 +3123,7 @@ static void Swap_Task_ScreenInfoTransitionIn(u8 taskId) } break; case 2: - if (gTasks[taskId].tSlideFinishedPkmn == TRUE + if (gTasks[taskId].tSlideFinishedPkmn == TRUE && gTasks[taskId].tSlideFinishedCancel == TRUE) { gPlttBufferFaded[226] = sPokeballGray_Pal[37]; @@ -3205,7 +3205,7 @@ static void Swap_Task_SwitchPartyScreen(u8 taskId) gTasks[taskId].tState++; break; case 3: - if (!FuncIsActiveTask(Swap_Task_SlideCycleBalls) + if (!FuncIsActiveTask(Swap_Task_SlideCycleBalls) && gTasks[sFactorySwapScreen->fadeSpeciesNameTaskId].tFadeOutFinished == TRUE) { Swap_EraseSpeciesWindow(); @@ -3679,7 +3679,7 @@ static void Swap_HideActionButtonHighlights(void) { // Hide button highlight on "Pkmn for Swap" gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[1][i]].invisible = TRUE; - + // Hide button highlight on Cancel if (i < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds[0])) gSprites[sFactorySwapScreen->cancelButtonSpriteIds[1][i]].invisible = TRUE; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 41e34bf33554..184d630b5a91 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -139,7 +139,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) // Each nature has a different percent chance to select a move from one of 3 move groups // If percent is less than 1st check, use move from "Attack" group // If percent is less than 2nd check, use move from "Defense" group - // Otherwise use move from "Support" group + // Otherwise use move from "Support" group for (; i < maxGroupNum; i++) { if (gBattlePalaceNatureToMoveGroupLikelihood[GetNatureFromPersonality(gBattleMons[gActiveBattler].personality)][i] > percent) @@ -196,7 +196,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) if ((validMoveFlags & 0xF0) > 0x1FF) numValidMoveGroups++; - + // If more than 1 possible move group, or no possible move groups // then choose move randomly if (numValidMoveGroups > 1 || numValidMoveGroups == 0) diff --git a/src/battle_interface.c b/src/battle_interface.c index 83bdf0cb710b..c1b7787fda35 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -330,43 +330,43 @@ static const struct SpriteTemplate sHealthbarSpriteTemplates[MAX_BATTLERS_COUNT] static const struct Subsprite sUnknown_0832C220[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 0, .priority = 1 }, { - .x = 48, - .y = 0, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 32, + .x = 48, + .y = 0, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 32, .priority = 1 }, { - .x = DISPLAY_WIDTH, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 48, + .x = DISPLAY_WIDTH, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 48, .priority = 1 }, { - .x = 16, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 52, + .x = 16, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 52, .priority = 1 }, { - .x = 48, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 56, + .x = 48, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 56, .priority = 1 } }; @@ -374,43 +374,43 @@ static const struct Subsprite sUnknown_0832C220[] = static const struct Subsprite sUnknown_0832C234[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 64, + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 64, .priority = 1 }, { - .x = 48, - .y = 0, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 96, + .x = 48, + .y = 0, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 96, .priority = 1 }, { - .x = DISPLAY_WIDTH, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 112, + .x = DISPLAY_WIDTH, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 112, .priority = 1 }, { - .x = 16, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 116, + .x = 16, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 116, .priority = 1 }, { - .x = 48, - .y = 32, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 120, + .x = 48, + .y = 32, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 120, .priority = 1 } }; @@ -418,19 +418,19 @@ static const struct Subsprite sUnknown_0832C234[] = static const struct Subsprite sUnknown_0832C248[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(64x32), + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 }, { - .x = 48, - .y = 0, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 32, + .x = 48, + .y = 0, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 32, .priority = 1 } }; @@ -438,19 +438,19 @@ static const struct Subsprite sUnknown_0832C248[] = static const struct Subsprite sUnknown_0832C250[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(64x32), + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 }, { - .x = 48, - .y = 0, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 32, + .x = 48, + .y = 0, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 32, .priority = 1 } }; @@ -458,19 +458,19 @@ static const struct Subsprite sUnknown_0832C250[] = static const struct Subsprite sUnknown_0832C258[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = 16, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = 16, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 } }; @@ -478,27 +478,27 @@ static const struct Subsprite sUnknown_0832C258[] = static const struct Subsprite sUnknown_0832C260[] = { { - .x = DISPLAY_WIDTH, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = DISPLAY_WIDTH, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = 16, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = 16, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = DISPLAY_WIDTH - 16, - .y = 0, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 8, + .x = DISPLAY_WIDTH - 16, + .y = 0, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 8, .priority = 1 } }; @@ -521,35 +521,35 @@ static const struct SubspriteTable sUnknown_0832C28C[] = static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = { { - .x = 160, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = 160, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = 192, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = 192, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 224, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 224, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = 0, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = 0, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 1 } }; @@ -557,51 +557,51 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = static const struct Subsprite sUnknown_0832C2AC[] = { { - .x = 160, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = 160, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = 192, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = 192, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 224, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 224, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = 0, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 0, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = 32, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 32, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = 64, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = 64, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 1 } }; @@ -1101,7 +1101,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) u8 text[16]; u32 xPos; u8 *objVram; - + text[0] = CHAR_EXTRA_SYMBOL; text[1] = CHAR_LV_2; diff --git a/src/battle_main.c b/src/battle_main.c index 37ab6109c65e..19505b385f4e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -4374,10 +4374,10 @@ static void HandleTurnActionSelectionState(void) } break; case STATE_WAIT_ACTION_CONFIRMED_STANDBY: - if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) + if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) - | (gBitTable[gActiveBattler] << 4) - | (gBitTable[gActiveBattler] << 8) + | (gBitTable[gActiveBattler] << 4) + | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12)))) { if (AllAtActionConfirmed()) diff --git a/src/battle_message.c b/src/battle_message.c index ae30a2a62928..1f4bd893fa4e 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1390,9 +1390,9 @@ static const u8 sText_PkmnEagerForMore[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is const u16 gBattlePalaceFlavorTextTable[] = { - [B_MSG_GLINT_IN_EYE] = STRINGID_GLINTAPPEARSINEYE, + [B_MSG_GLINT_IN_EYE] = STRINGID_GLINTAPPEARSINEYE, [B_MSG_GETTING_IN_POS] = STRINGID_PKMNGETTINGINTOPOSITION, - [B_MSG_GROWL_DEEPLY] = STRINGID_PKMNBEGANGROWLINGDEEPLY, + [B_MSG_GROWL_DEEPLY] = STRINGID_PKMNBEGANGROWLINGDEEPLY, [B_MSG_EAGER_FOR_MORE] = STRINGID_PKMNEAGERFORMORE, }; diff --git a/src/battle_palace.c b/src/battle_palace.c index 6336662546a2..c4e48a4b2b7c 100644 --- a/src/battle_palace.c +++ b/src/battle_palace.c @@ -40,26 +40,26 @@ static void (* const sBattlePalaceFunctions[])(void) = [BATTLE_PALACE_FUNC_GIVE_PRIZE] = GivePalacePrize, }; -static const u16 sBattlePalaceEarlyPrizes[] = +static const u16 sBattlePalaceEarlyPrizes[] = { - ITEM_HP_UP, - ITEM_PROTEIN, - ITEM_IRON, - ITEM_CALCIUM, - ITEM_CARBOS, + ITEM_HP_UP, + ITEM_PROTEIN, + ITEM_IRON, + ITEM_CALCIUM, + ITEM_CARBOS, ITEM_ZINC }; -static const u16 sBattlePalaceLatePrizes[] = +static const u16 sBattlePalaceLatePrizes[] = { - ITEM_BRIGHT_POWDER, - ITEM_WHITE_HERB, - ITEM_QUICK_CLAW, - ITEM_LEFTOVERS, - ITEM_MENTAL_HERB, - ITEM_KINGS_ROCK, - ITEM_FOCUS_BAND, - ITEM_SCOPE_LENS, + ITEM_BRIGHT_POWDER, + ITEM_WHITE_HERB, + ITEM_QUICK_CLAW, + ITEM_LEFTOVERS, + ITEM_MENTAL_HERB, + ITEM_KINGS_ROCK, + ITEM_FOCUS_BAND, + ITEM_SCOPE_LENS, ITEM_CHOICE_BAND }; diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 9cc65e14d6b0..179f4dc65493 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -452,8 +452,8 @@ static void VBlankCB_PyramidBag(void) static void CB2_LoadPyramidBagMenu(void) { - while (MenuHelpers_CallLinkSomething() != TRUE - && LoadPyramidBagMenu() != TRUE + while (MenuHelpers_CallLinkSomething() != TRUE + && LoadPyramidBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE); } @@ -696,9 +696,9 @@ static void PrintItemDescription(s32 listMenuId) static void AddScrollArrows(void) { if (gPyramidBagMenu->scrollIndicatorsTaskId == TASK_NONE) - gPyramidBagMenu->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 172, 12, 148, - gPyramidBagMenu->listMenuCount - gPyramidBagMenu->listMenuMaxShown, - TAG_SCROLL_ARROW, TAG_SCROLL_ARROW, + gPyramidBagMenu->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 172, 12, 148, + gPyramidBagMenu->listMenuCount - gPyramidBagMenu->listMenuMaxShown, + TAG_SCROLL_ARROW, TAG_SCROLL_ARROW, &gPyramidBagMenuState.scrollPosition); } @@ -866,7 +866,7 @@ static void Task_ClosePyramidBag(u8 taskId) if (!gPaletteFade.active) { DestroyListMenuTask(tListTaskId, &gPyramidBagMenuState.scrollPosition, &gPyramidBagMenuState.cursorPosition); - + // If ready for a new screen (e.g. party menu for giving an item) go to that screen // Otherwise exit the bag and use callback set up when the bag was first opened if (gPyramidBagMenu->newScreenCallback != NULL) @@ -937,7 +937,7 @@ static void OpenContextMenu(u8 taskId) { default: // case PYRAMIDBAG_LOC_FIELD: -// case PYRAMIDBAG_LOC_PARTY: +// case PYRAMIDBAG_LOC_PARTY: gPyramidBagMenu->menuActionIds = sMenuActionIds_Field; gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_Field); break; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index cea30bb21750..2a5b4c112bbe 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -833,9 +833,9 @@ static const u8 sTerrainToType[] = // - ITEM_ULTRA_BALL skips Master Ball and ITEM_NONE static const u8 sBallCatchBonuses[] = { - [ITEM_ULTRA_BALL - ITEM_ULTRA_BALL] = 20, - [ITEM_GREAT_BALL - ITEM_ULTRA_BALL] = 15, - [ITEM_POKE_BALL - ITEM_ULTRA_BALL] = 10, + [ITEM_ULTRA_BALL - ITEM_ULTRA_BALL] = 20, + [ITEM_GREAT_BALL - ITEM_ULTRA_BALL] = 15, + [ITEM_POKE_BALL - ITEM_ULTRA_BALL] = 10, [ITEM_SAFARI_BALL - ITEM_ULTRA_BALL] = 15 }; @@ -3519,7 +3519,7 @@ static void Cmd_unknown_24(void) if (HP_count == 0) gBattleOutcome |= B_OUTCOME_LOST; - + HP_count = 0; for (i = 0; i < PARTY_SIZE; i++) @@ -3544,7 +3544,7 @@ static void Cmd_unknown_24(void) if ((gHitMarker & HITMARKER_FAINTED2(i)) && (!gSpecialStatuses[i].flag40)) foundPlayer++; } - + foundOpponent = 0; for (i = 1; i < gBattlersCount; i += 2) @@ -4610,9 +4610,9 @@ static void Cmd_switchindataupdate(void) SwitchInClearSetData(); - if (gBattleTypeFlags & BATTLE_TYPE_PALACE + if (gBattleTypeFlags & BATTLE_TYPE_PALACE && gBattleMons[gActiveBattler].maxHP / 2 >= gBattleMons[gActiveBattler].hp - && gBattleMons[gActiveBattler].hp != 0 + && gBattleMons[gActiveBattler].hp != 0 && !(gBattleMons[gActiveBattler].status1 & STATUS1_SLEEP)) { gBattleStruct->palaceFlags |= gBitTable[gActiveBattler]; diff --git a/src/battle_setup.c b/src/battle_setup.c index cb65d25d6c3a..4337ec29cf35 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -126,32 +126,32 @@ static const u8 sBattleTransitionTable_Trainer[][2] = // Battle Frontier (excluding Pyramid and Dome, which have their own tables below) static const u8 sBattleTransitionTable_BattleFrontier[] = { - B_TRANSITION_FRONTIER_LOGO_WIGGLE, - B_TRANSITION_FRONTIER_LOGO_WAVE, - B_TRANSITION_FRONTIER_SQUARES, + B_TRANSITION_FRONTIER_LOGO_WIGGLE, + B_TRANSITION_FRONTIER_LOGO_WAVE, + B_TRANSITION_FRONTIER_SQUARES, B_TRANSITION_FRONTIER_SQUARES_SCROLL, - B_TRANSITION_FRONTIER_CIRCLES_MEET, - B_TRANSITION_FRONTIER_CIRCLES_CROSS, - B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL, + B_TRANSITION_FRONTIER_CIRCLES_MEET, + B_TRANSITION_FRONTIER_CIRCLES_CROSS, + B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL, B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL, - B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ, - B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ, - B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ, B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL_IN_SEQ }; static const u8 sBattleTransitionTable_BattlePyramid[] = { - B_TRANSITION_FRONTIER_SQUARES, - B_TRANSITION_FRONTIER_SQUARES_SCROLL, + B_TRANSITION_FRONTIER_SQUARES, + B_TRANSITION_FRONTIER_SQUARES_SCROLL, B_TRANSITION_FRONTIER_SQUARES_SPIRAL }; static const u8 sBattleTransitionTable_BattleDome[] = { - B_TRANSITION_FRONTIER_LOGO_WIGGLE, - B_TRANSITION_FRONTIER_SQUARES, - B_TRANSITION_FRONTIER_SQUARES_SCROLL, + B_TRANSITION_FRONTIER_LOGO_WIGGLE, + B_TRANSITION_FRONTIER_SQUARES, + B_TRANSITION_FRONTIER_SQUARES_SCROLL, B_TRANSITION_FRONTIER_SQUARES_SPIRAL }; diff --git a/src/battle_tower.c b/src/battle_tower.c index 082ea6822f5a..27defc1fa3e3 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1339,7 +1339,7 @@ void PutNewBattleTowerRecord(struct EmeraldBattleTowerRecord *newRecordEm) if (gSaveBlock2Ptr->frontier.towerRecords[i].name[j] != newRecord->name[j]) break; if (newRecord->name[j] == EOS) - #endif + #endif { k = PLAYER_NAME_LENGTH; break; @@ -2655,7 +2655,7 @@ static void TowerTryCloseLink(void) static void SetMultiPartnerGfx(void) { // 0xF below means use VAR_OBJ_GFX_ID_E - SetBattleFacilityTrainerGfxId(gSaveBlock2Ptr->frontier.trainerIds[17], 0xF); + SetBattleFacilityTrainerGfxId(gSaveBlock2Ptr->frontier.trainerIds[17], 0xF); } static void SetTowerInterviewData(void) @@ -2968,7 +2968,7 @@ static void FillPartnerParty(u16 trainerId) sStevenMons[i].species, sStevenMons[i].level, sStevenMons[i].fixedIV, - TRUE, + TRUE, #ifdef BUGFIX j, #else diff --git a/src/battle_tv.c b/src/battle_tv.c index 8c1f8044a55f..2c6c1b0a3403 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -86,219 +86,219 @@ static const u16 sVariableDmgMoves[] = static const u16 sPoints_MoveEffect[NUM_BATTLE_MOVE_EFFECTS] = { - [EFFECT_HIT] = 1, - [EFFECT_SLEEP] = 1, - [EFFECT_POISON_HIT] = 1, - [EFFECT_ABSORB] = 4, - [EFFECT_BURN_HIT] = 1, - [EFFECT_FREEZE_HIT] = 1, - [EFFECT_PARALYZE_HIT] = 1, - [EFFECT_EXPLOSION] = 0, - [EFFECT_DREAM_EATER] = 5, - [EFFECT_MIRROR_MOVE] = 1, - [EFFECT_ATTACK_UP] = 1, - [EFFECT_DEFENSE_UP] = 1, - [EFFECT_SPEED_UP] = 1, - [EFFECT_SPECIAL_ATTACK_UP] = 1, - [EFFECT_SPECIAL_DEFENSE_UP] = 1, + [EFFECT_HIT] = 1, + [EFFECT_SLEEP] = 1, + [EFFECT_POISON_HIT] = 1, + [EFFECT_ABSORB] = 4, + [EFFECT_BURN_HIT] = 1, + [EFFECT_FREEZE_HIT] = 1, + [EFFECT_PARALYZE_HIT] = 1, + [EFFECT_EXPLOSION] = 0, + [EFFECT_DREAM_EATER] = 5, + [EFFECT_MIRROR_MOVE] = 1, + [EFFECT_ATTACK_UP] = 1, + [EFFECT_DEFENSE_UP] = 1, + [EFFECT_SPEED_UP] = 1, + [EFFECT_SPECIAL_ATTACK_UP] = 1, + [EFFECT_SPECIAL_DEFENSE_UP] = 1, [EFFECT_ACCURACY_UP] = 1, - [EFFECT_EVASION_UP] = 1, - [EFFECT_ALWAYS_HIT] = 2, - [EFFECT_ATTACK_DOWN] = 1, - [EFFECT_DEFENSE_DOWN] = 1, - [EFFECT_SPEED_DOWN] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN] = 1, - [EFFECT_ACCURACY_DOWN] = 1, - [EFFECT_EVASION_DOWN] = 1, - [EFFECT_HAZE] = 5, - [EFFECT_BIDE] = 5, - [EFFECT_RAMPAGE] = 4, - [EFFECT_ROAR] = 5, - [EFFECT_MULTI_HIT] = 1, - [EFFECT_CONVERSION] = 3, + [EFFECT_EVASION_UP] = 1, + [EFFECT_ALWAYS_HIT] = 2, + [EFFECT_ATTACK_DOWN] = 1, + [EFFECT_DEFENSE_DOWN] = 1, + [EFFECT_SPEED_DOWN] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN] = 1, + [EFFECT_ACCURACY_DOWN] = 1, + [EFFECT_EVASION_DOWN] = 1, + [EFFECT_HAZE] = 5, + [EFFECT_BIDE] = 5, + [EFFECT_RAMPAGE] = 4, + [EFFECT_ROAR] = 5, + [EFFECT_MULTI_HIT] = 1, + [EFFECT_CONVERSION] = 3, [EFFECT_FLINCH_HIT] = 1, - [EFFECT_RESTORE_HP] = 3, - [EFFECT_TOXIC] = 5, - [EFFECT_PAY_DAY] = 1, - [EFFECT_LIGHT_SCREEN] = 7, - [EFFECT_TRI_ATTACK] = 1, - [EFFECT_REST] = 7, - [EFFECT_OHKO] = 7, - [EFFECT_RAZOR_WIND] = 1, - [EFFECT_SUPER_FANG] = 5, - [EFFECT_DRAGON_RAGE] = 2, - [EFFECT_TRAP] = 4, - [EFFECT_HIGH_CRITICAL] = 1, - [EFFECT_DOUBLE_HIT] = 1, - [EFFECT_RECOIL_IF_MISS] = 1, - [EFFECT_MIST] = 5, + [EFFECT_RESTORE_HP] = 3, + [EFFECT_TOXIC] = 5, + [EFFECT_PAY_DAY] = 1, + [EFFECT_LIGHT_SCREEN] = 7, + [EFFECT_TRI_ATTACK] = 1, + [EFFECT_REST] = 7, + [EFFECT_OHKO] = 7, + [EFFECT_RAZOR_WIND] = 1, + [EFFECT_SUPER_FANG] = 5, + [EFFECT_DRAGON_RAGE] = 2, + [EFFECT_TRAP] = 4, + [EFFECT_HIGH_CRITICAL] = 1, + [EFFECT_DOUBLE_HIT] = 1, + [EFFECT_RECOIL_IF_MISS] = 1, + [EFFECT_MIST] = 5, [EFFECT_FOCUS_ENERGY] = 1, - [EFFECT_RECOIL] = 2, - [EFFECT_CONFUSE] = 4, - [EFFECT_ATTACK_UP_2] = 1, - [EFFECT_DEFENSE_UP_2] = 1, - [EFFECT_SPEED_UP_2] = 1, - [EFFECT_SPECIAL_ATTACK_UP_2] = 1, - [EFFECT_SPECIAL_DEFENSE_UP_2] = 1, - [EFFECT_ACCURACY_UP_2] = 1, - [EFFECT_EVASION_UP_2] = 1, - [EFFECT_TRANSFORM] = 0, - [EFFECT_ATTACK_DOWN_2] = 1, - [EFFECT_DEFENSE_DOWN_2] = 1, - [EFFECT_SPEED_DOWN_2] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN_2] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN_2] = 1, + [EFFECT_RECOIL] = 2, + [EFFECT_CONFUSE] = 4, + [EFFECT_ATTACK_UP_2] = 1, + [EFFECT_DEFENSE_UP_2] = 1, + [EFFECT_SPEED_UP_2] = 1, + [EFFECT_SPECIAL_ATTACK_UP_2] = 1, + [EFFECT_SPECIAL_DEFENSE_UP_2] = 1, + [EFFECT_ACCURACY_UP_2] = 1, + [EFFECT_EVASION_UP_2] = 1, + [EFFECT_TRANSFORM] = 0, + [EFFECT_ATTACK_DOWN_2] = 1, + [EFFECT_DEFENSE_DOWN_2] = 1, + [EFFECT_SPEED_DOWN_2] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN_2] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN_2] = 1, [EFFECT_ACCURACY_DOWN_2] = 1, - [EFFECT_EVASION_DOWN_2] = 1, - [EFFECT_REFLECT] = 7, - [EFFECT_POISON] = 4, - [EFFECT_PARALYZE] = 4, - [EFFECT_ATTACK_DOWN_HIT] = 1, - [EFFECT_DEFENSE_DOWN_HIT] = 1, - [EFFECT_SPEED_DOWN_HIT] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN_HIT] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN_HIT] = 1, - [EFFECT_ACCURACY_DOWN_HIT] = 1, - [EFFECT_EVASION_DOWN_HIT] = 1, - [EFFECT_SKY_ATTACK] = 4, - [EFFECT_CONFUSE_HIT] = 1, - [EFFECT_TWINEEDLE] = 1, - [EFFECT_VITAL_THROW] = 1, + [EFFECT_EVASION_DOWN_2] = 1, + [EFFECT_REFLECT] = 7, + [EFFECT_POISON] = 4, + [EFFECT_PARALYZE] = 4, + [EFFECT_ATTACK_DOWN_HIT] = 1, + [EFFECT_DEFENSE_DOWN_HIT] = 1, + [EFFECT_SPEED_DOWN_HIT] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN_HIT] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN_HIT] = 1, + [EFFECT_ACCURACY_DOWN_HIT] = 1, + [EFFECT_EVASION_DOWN_HIT] = 1, + [EFFECT_SKY_ATTACK] = 4, + [EFFECT_CONFUSE_HIT] = 1, + [EFFECT_TWINEEDLE] = 1, + [EFFECT_VITAL_THROW] = 1, [EFFECT_SUBSTITUTE] = 4, - [EFFECT_RECHARGE] = 5, - [EFFECT_RAGE] = 2, - [EFFECT_MIMIC] = 4, - [EFFECT_METRONOME] = 1, - [EFFECT_LEECH_SEED] = 4, - [EFFECT_SPLASH] = 1, - [EFFECT_DISABLE] = 7, - [EFFECT_LEVEL_DAMAGE] = 2, - [EFFECT_PSYWAVE] = 1, - [EFFECT_COUNTER] = 5, - [EFFECT_ENCORE] = 7, - [EFFECT_PAIN_SPLIT] = 3, - [EFFECT_SNORE] = 3, - [EFFECT_CONVERSION_2] = 4, - [EFFECT_LOCK_ON] = 3, + [EFFECT_RECHARGE] = 5, + [EFFECT_RAGE] = 2, + [EFFECT_MIMIC] = 4, + [EFFECT_METRONOME] = 1, + [EFFECT_LEECH_SEED] = 4, + [EFFECT_SPLASH] = 1, + [EFFECT_DISABLE] = 7, + [EFFECT_LEVEL_DAMAGE] = 2, + [EFFECT_PSYWAVE] = 1, + [EFFECT_COUNTER] = 5, + [EFFECT_ENCORE] = 7, + [EFFECT_PAIN_SPLIT] = 3, + [EFFECT_SNORE] = 3, + [EFFECT_CONVERSION_2] = 4, + [EFFECT_LOCK_ON] = 3, [EFFECT_SKETCH] = 3, - [EFFECT_UNUSED_60] = 3, - [EFFECT_SLEEP_TALK] = 3, - [EFFECT_DESTINY_BOND] = 3, - [EFFECT_FLAIL] = 2, - [EFFECT_SPITE] = 4, - [EFFECT_FALSE_SWIPE] = 1, - [EFFECT_HEAL_BELL] = 5, - [EFFECT_QUICK_ATTACK] = 1, - [EFFECT_TRIPLE_KICK] = 1, - [EFFECT_THIEF] = 4, - [EFFECT_MEAN_LOOK] = 5, - [EFFECT_NIGHTMARE] = 3, - [EFFECT_MINIMIZE] = 1, - [EFFECT_CURSE] = 2, - [EFFECT_UNUSED_6E] = 1, + [EFFECT_UNUSED_60] = 3, + [EFFECT_SLEEP_TALK] = 3, + [EFFECT_DESTINY_BOND] = 3, + [EFFECT_FLAIL] = 2, + [EFFECT_SPITE] = 4, + [EFFECT_FALSE_SWIPE] = 1, + [EFFECT_HEAL_BELL] = 5, + [EFFECT_QUICK_ATTACK] = 1, + [EFFECT_TRIPLE_KICK] = 1, + [EFFECT_THIEF] = 4, + [EFFECT_MEAN_LOOK] = 5, + [EFFECT_NIGHTMARE] = 3, + [EFFECT_MINIMIZE] = 1, + [EFFECT_CURSE] = 2, + [EFFECT_UNUSED_6E] = 1, [EFFECT_PROTECT] = 5, - [EFFECT_SPIKES] = 4, - [EFFECT_FORESIGHT] = 3, - [EFFECT_PERISH_SONG] = 6, - [EFFECT_SANDSTORM] = 4, - [EFFECT_ENDURE] = 3, - [EFFECT_ROLLOUT] = 3, - [EFFECT_SWAGGER] = 3, - [EFFECT_FURY_CUTTER] = 2, - [EFFECT_ATTRACT] = 4, - [EFFECT_RETURN] = 1, - [EFFECT_PRESENT] = 1, - [EFFECT_FRUSTRATION] = 1, - [EFFECT_SAFEGUARD] = 5, - [EFFECT_THAW_HIT] = 1, - [EFFECT_MAGNITUDE] = 1, + [EFFECT_SPIKES] = 4, + [EFFECT_FORESIGHT] = 3, + [EFFECT_PERISH_SONG] = 6, + [EFFECT_SANDSTORM] = 4, + [EFFECT_ENDURE] = 3, + [EFFECT_ROLLOUT] = 3, + [EFFECT_SWAGGER] = 3, + [EFFECT_FURY_CUTTER] = 2, + [EFFECT_ATTRACT] = 4, + [EFFECT_RETURN] = 1, + [EFFECT_PRESENT] = 1, + [EFFECT_FRUSTRATION] = 1, + [EFFECT_SAFEGUARD] = 5, + [EFFECT_THAW_HIT] = 1, + [EFFECT_MAGNITUDE] = 1, [EFFECT_BATON_PASS] = 7, - [EFFECT_PURSUIT] = 2, - [EFFECT_RAPID_SPIN] = 2, - [EFFECT_SONICBOOM] = 1, - [EFFECT_UNUSED_83] = 1, - [EFFECT_MORNING_SUN] = 4, - [EFFECT_SYNTHESIS] = 4, - [EFFECT_MOONLIGHT] = 4, - [EFFECT_HIDDEN_POWER] = 1, - [EFFECT_RAIN_DANCE] = 4, - [EFFECT_SUNNY_DAY] = 4, - [EFFECT_DEFENSE_UP_HIT] = 1, - [EFFECT_ATTACK_UP_HIT] = 1, - [EFFECT_ALL_STATS_UP_HIT] = 1, - [EFFECT_UNUSED_8D] = 1, - [EFFECT_BELLY_DRUM] = 7, + [EFFECT_PURSUIT] = 2, + [EFFECT_RAPID_SPIN] = 2, + [EFFECT_SONICBOOM] = 1, + [EFFECT_UNUSED_83] = 1, + [EFFECT_MORNING_SUN] = 4, + [EFFECT_SYNTHESIS] = 4, + [EFFECT_MOONLIGHT] = 4, + [EFFECT_HIDDEN_POWER] = 1, + [EFFECT_RAIN_DANCE] = 4, + [EFFECT_SUNNY_DAY] = 4, + [EFFECT_DEFENSE_UP_HIT] = 1, + [EFFECT_ATTACK_UP_HIT] = 1, + [EFFECT_ALL_STATS_UP_HIT] = 1, + [EFFECT_UNUSED_8D] = 1, + [EFFECT_BELLY_DRUM] = 7, [EFFECT_PSYCH_UP] = 7, - [EFFECT_MIRROR_COAT] = 6, - [EFFECT_SKULL_BASH] = 3, - [EFFECT_TWISTER] = 1, + [EFFECT_MIRROR_COAT] = 6, + [EFFECT_SKULL_BASH] = 3, + [EFFECT_TWISTER] = 1, [EFFECT_EARTHQUAKE] = 1, - [EFFECT_FUTURE_SIGHT] = 1, - [EFFECT_GUST] = 1, - [EFFECT_FLINCH_MINIMIZE_HIT] = 1, - [EFFECT_SOLARBEAM] = 1, - [EFFECT_THUNDER] = 1, - [EFFECT_TELEPORT] = 1, - [EFFECT_BEAT_UP] = 2, - [EFFECT_SEMI_INVULNERABLE] = 3, - [EFFECT_DEFENSE_CURL] = 1, - [EFFECT_SOFTBOILED] = 1, - [EFFECT_FAKE_OUT] = 4, + [EFFECT_FUTURE_SIGHT] = 1, + [EFFECT_GUST] = 1, + [EFFECT_FLINCH_MINIMIZE_HIT] = 1, + [EFFECT_SOLARBEAM] = 1, + [EFFECT_THUNDER] = 1, + [EFFECT_TELEPORT] = 1, + [EFFECT_BEAT_UP] = 2, + [EFFECT_SEMI_INVULNERABLE] = 3, + [EFFECT_DEFENSE_CURL] = 1, + [EFFECT_SOFTBOILED] = 1, + [EFFECT_FAKE_OUT] = 4, [EFFECT_UPROAR] = 4, - [EFFECT_STOCKPILE] = 3, - [EFFECT_SPIT_UP] = 3, - [EFFECT_SWALLOW] = 3, - [EFFECT_UNUSED_A3] = 1, - [EFFECT_HAIL] = 4, - [EFFECT_TORMENT] = 7, - [EFFECT_FLATTER] = 7, - [EFFECT_WILL_O_WISP] = 5, - [EFFECT_MEMENTO] = 7, - [EFFECT_FACADE] = 1, - [EFFECT_FOCUS_PUNCH] = 7, - [EFFECT_SMELLINGSALT] = 1, - [EFFECT_FOLLOW_ME] = 5, - [EFFECT_NATURE_POWER] = 0, - [EFFECT_CHARGE] = 4, + [EFFECT_STOCKPILE] = 3, + [EFFECT_SPIT_UP] = 3, + [EFFECT_SWALLOW] = 3, + [EFFECT_UNUSED_A3] = 1, + [EFFECT_HAIL] = 4, + [EFFECT_TORMENT] = 7, + [EFFECT_FLATTER] = 7, + [EFFECT_WILL_O_WISP] = 5, + [EFFECT_MEMENTO] = 7, + [EFFECT_FACADE] = 1, + [EFFECT_FOCUS_PUNCH] = 7, + [EFFECT_SMELLINGSALT] = 1, + [EFFECT_FOLLOW_ME] = 5, + [EFFECT_NATURE_POWER] = 0, + [EFFECT_CHARGE] = 4, [EFFECT_TAUNT] = 4, - [EFFECT_HELPING_HAND] = 4, - [EFFECT_TRICK] = 4, - [EFFECT_ROLE_PLAY] = 4, - [EFFECT_WISH] = 2, - [EFFECT_ASSIST] = 2, - [EFFECT_INGRAIN] = 6, - [EFFECT_SUPERPOWER] = 3, - [EFFECT_MAGIC_COAT] = 6, - [EFFECT_RECYCLE] = 4, - [EFFECT_REVENGE] = 4, - [EFFECT_BRICK_BREAK] = 2, - [EFFECT_YAWN] = 5, - [EFFECT_KNOCK_OFF] = 2, - [EFFECT_ENDEAVOR] = 1, - [EFFECT_ERUPTION] = 1, + [EFFECT_HELPING_HAND] = 4, + [EFFECT_TRICK] = 4, + [EFFECT_ROLE_PLAY] = 4, + [EFFECT_WISH] = 2, + [EFFECT_ASSIST] = 2, + [EFFECT_INGRAIN] = 6, + [EFFECT_SUPERPOWER] = 3, + [EFFECT_MAGIC_COAT] = 6, + [EFFECT_RECYCLE] = 4, + [EFFECT_REVENGE] = 4, + [EFFECT_BRICK_BREAK] = 2, + [EFFECT_YAWN] = 5, + [EFFECT_KNOCK_OFF] = 2, + [EFFECT_ENDEAVOR] = 1, + [EFFECT_ERUPTION] = 1, [EFFECT_SKILL_SWAP] = 6, - [EFFECT_IMPRISON] = 6, - [EFFECT_REFRESH] = 6, - [EFFECT_GRUDGE] = 1, - [EFFECT_SNATCH] = 1, - [EFFECT_LOW_KICK] = 1, - [EFFECT_SECRET_POWER] = 1, - [EFFECT_DOUBLE_EDGE] = 2, - [EFFECT_TEETER_DANCE] = 6, - [EFFECT_BLAZE_KICK] = 1, - [EFFECT_MUD_SPORT] = 4, - [EFFECT_POISON_FANG] = 1, - [EFFECT_WEATHER_BALL] = 1, - [EFFECT_OVERHEAT] = 3, - [EFFECT_TICKLE] = 1, - [EFFECT_COSMIC_POWER] = 1, + [EFFECT_IMPRISON] = 6, + [EFFECT_REFRESH] = 6, + [EFFECT_GRUDGE] = 1, + [EFFECT_SNATCH] = 1, + [EFFECT_LOW_KICK] = 1, + [EFFECT_SECRET_POWER] = 1, + [EFFECT_DOUBLE_EDGE] = 2, + [EFFECT_TEETER_DANCE] = 6, + [EFFECT_BLAZE_KICK] = 1, + [EFFECT_MUD_SPORT] = 4, + [EFFECT_POISON_FANG] = 1, + [EFFECT_WEATHER_BALL] = 1, + [EFFECT_OVERHEAT] = 3, + [EFFECT_TICKLE] = 1, + [EFFECT_COSMIC_POWER] = 1, [EFFECT_SKY_UPPERCUT] = 1, - [EFFECT_BULK_UP] = 1, - [EFFECT_POISON_TAIL] = 1, - [EFFECT_WATER_SPORT] = 4, - [EFFECT_CALM_MIND] = 1, - [EFFECT_DRAGON_DANCE] = 1, + [EFFECT_BULK_UP] = 1, + [EFFECT_POISON_TAIL] = 1, + [EFFECT_WATER_SPORT] = 4, + [EFFECT_CALM_MIND] = 1, + [EFFECT_DRAGON_DANCE] = 1, [EFFECT_CAMOUFLAGE] = 3 }; @@ -312,93 +312,93 @@ static const u16 sPoints_SetUp[] = { 4, // Future Sight 4, // Doom Desire - 6, + 6, 6, // Wish 7, // Grudge - 6, + 6, 2 // Ingrain }; static const u16 sPoints_RainMoves[] = { - MOVE_BUBBLE, 3, - MOVE_WHIRLPOOL, 3, - MOVE_OCTAZOOKA, 3, - MOVE_CLAMP, 3, - MOVE_WITHDRAW, 3, - MOVE_CRABHAMMER, 3, - MOVE_WATER_SPOUT, 3, + MOVE_BUBBLE, 3, + MOVE_WHIRLPOOL, 3, + MOVE_OCTAZOOKA, 3, + MOVE_CLAMP, 3, + MOVE_WITHDRAW, 3, + MOVE_CRABHAMMER, 3, + MOVE_WATER_SPOUT, 3, MOVE_DIVE, 3, - MOVE_WATERFALL, 3, - MOVE_MUDDY_WATER, 3, - MOVE_SURF, 3, - MOVE_HYDRO_CANNON, 3, - MOVE_HYDRO_PUMP, 3, - MOVE_BUBBLE_BEAM, 3, + MOVE_WATERFALL, 3, + MOVE_MUDDY_WATER, 3, + MOVE_SURF, 3, + MOVE_HYDRO_CANNON, 3, + MOVE_HYDRO_PUMP, 3, + MOVE_BUBBLE_BEAM, 3, MOVE_WATER_SPORT, 0, // Unnecessary, unlisted moves are already given 0 points MOVE_WATER_GUN, 3, - MOVE_WATER_PULSE, 3, - MOVE_WEATHER_BALL, 3, - MOVE_THUNDER, 3, - MOVE_SOLAR_BEAM, -4, - MOVE_OVERHEAT, -4, - MOVE_FLAME_WHEEL, -4, - MOVE_FLAMETHROWER, -4, + MOVE_WATER_PULSE, 3, + MOVE_WEATHER_BALL, 3, + MOVE_THUNDER, 3, + MOVE_SOLAR_BEAM, -4, + MOVE_OVERHEAT, -4, + MOVE_FLAME_WHEEL, -4, + MOVE_FLAMETHROWER, -4, MOVE_SACRED_FIRE, -4, - MOVE_FIRE_BLAST, -4, - MOVE_HEAT_WAVE, -4, - MOVE_EMBER, -4, - MOVE_BLAST_BURN, -4, - MOVE_BLAZE_KICK, -4, - MOVE_ERUPTION, -4, - MOVE_FIRE_SPIN, -4, + MOVE_FIRE_BLAST, -4, + MOVE_HEAT_WAVE, -4, + MOVE_EMBER, -4, + MOVE_BLAST_BURN, -4, + MOVE_BLAZE_KICK, -4, + MOVE_ERUPTION, -4, + MOVE_FIRE_SPIN, -4, MOVE_FIRE_PUNCH, -4, MOVE_SOLAR_BEAM, -4, // Repeated TABLE_END, 0 }; static const u16 sPoints_SunMoves[] = { - MOVE_OVERHEAT, 3, - MOVE_FLAME_WHEEL, 3, - MOVE_FLAMETHROWER, 3, - MOVE_SACRED_FIRE, 3, - MOVE_FIRE_BLAST, 3, - MOVE_HEAT_WAVE, 3, - MOVE_EMBER, 3, + MOVE_OVERHEAT, 3, + MOVE_FLAME_WHEEL, 3, + MOVE_FLAMETHROWER, 3, + MOVE_SACRED_FIRE, 3, + MOVE_FIRE_BLAST, 3, + MOVE_HEAT_WAVE, 3, + MOVE_EMBER, 3, MOVE_BLAST_BURN, 3, - MOVE_BLAZE_KICK, 3, - MOVE_ERUPTION, 3, - MOVE_FIRE_SPIN, 3, - MOVE_FIRE_PUNCH, 3, - MOVE_SOLAR_BEAM, 5, - MOVE_SYNTHESIS, 3, - MOVE_MORNING_SUN, 3, + MOVE_BLAZE_KICK, 3, + MOVE_ERUPTION, 3, + MOVE_FIRE_SPIN, 3, + MOVE_FIRE_PUNCH, 3, + MOVE_SOLAR_BEAM, 5, + MOVE_SYNTHESIS, 3, + MOVE_MORNING_SUN, 3, MOVE_MOONLIGHT, 3, - MOVE_WEATHER_BALL, 3, + MOVE_WEATHER_BALL, 3, TABLE_END, 0 }; static const u16 sPoints_SandstormMoves[] = { - MOVE_WEATHER_BALL, 3, - MOVE_SOLAR_BEAM, -3, + MOVE_WEATHER_BALL, 3, + MOVE_SOLAR_BEAM, -3, TABLE_END, 0 }; static const u16 sPoints_HailMoves[] = { - MOVE_WEATHER_BALL, 3, - MOVE_SOLAR_BEAM, -3, + MOVE_WEATHER_BALL, 3, + MOVE_SOLAR_BEAM, -3, TABLE_END, 0 }; static const u16 sPoints_ElectricMoves[] = { - MOVE_THUNDERBOLT, 3, - MOVE_THUNDER_PUNCH, 3, - MOVE_SPARK, 3, - MOVE_THUNDER_SHOCK, 3, - MOVE_ZAP_CANNON, 3, - MOVE_SHOCK_WAVE, 3, + MOVE_THUNDERBOLT, 3, + MOVE_THUNDER_PUNCH, 3, + MOVE_SPARK, 3, + MOVE_THUNDER_SHOCK, 3, + MOVE_ZAP_CANNON, 3, + MOVE_SHOCK_WAVE, 3, MOVE_THUNDER_WAVE, 0, // Unnecessary, unlisted moves are already given 0 points MOVE_THUNDER, 3, - MOVE_VOLT_TACKLE, 3, + MOVE_VOLT_TACKLE, 3, TABLE_END, 0 }; static const u16 sPoints_StatusDmg[] = @@ -407,7 +407,7 @@ static const u16 sPoints_StatusDmg[] = 3, // Leech Seed 3, // Poison 3, // Toxic - 3, // Burn + 3, // Burn 3, // Nightmare 3 // Wrap (Trapping move) }; @@ -434,62 +434,62 @@ static const u16 sPoints_Flinched[] = { 4 }; static const u16 sPoints_StatIncrease1[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = 2, - [STAT_DEF - 1] = 2, - [STAT_SPEED - 1] = 2, - [STAT_SPATK - 1] = 2, - [STAT_SPDEF - 1] = 2, - [STAT_ACC - 1] = 2, + [STAT_ATK - 1] = 2, + [STAT_DEF - 1] = 2, + [STAT_SPEED - 1] = 2, + [STAT_SPATK - 1] = 2, + [STAT_SPDEF - 1] = 2, + [STAT_ACC - 1] = 2, [STAT_EVASION - 1] = 2 }; static const u16 sPoints_StatIncrease2[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = 4, - [STAT_DEF - 1] = 4, - [STAT_SPEED - 1] = 4, - [STAT_SPATK - 1] = 4, - [STAT_SPDEF - 1] = 4, - [STAT_ACC - 1] = 4, + [STAT_ATK - 1] = 4, + [STAT_DEF - 1] = 4, + [STAT_SPEED - 1] = 4, + [STAT_SPATK - 1] = 4, + [STAT_SPDEF - 1] = 4, + [STAT_ACC - 1] = 4, [STAT_EVASION - 1] = 4 }; static const u16 sPoints_StatDecreaseSelf[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = -1, - [STAT_DEF - 1] = -1, - [STAT_SPEED - 1] = -1, - [STAT_SPATK - 1] = -1, - [STAT_SPDEF - 1] = -1, - [STAT_ACC - 1] = -1, + [STAT_ATK - 1] = -1, + [STAT_DEF - 1] = -1, + [STAT_SPEED - 1] = -1, + [STAT_SPATK - 1] = -1, + [STAT_SPDEF - 1] = -1, + [STAT_ACC - 1] = -1, [STAT_EVASION - 1] = -1 }; static const u16 sPoints_StatDecrease1[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = 2, - [STAT_DEF - 1] = 2, - [STAT_SPEED - 1] = 2, - [STAT_SPATK - 1] = 2, - [STAT_SPDEF - 1] = 2, - [STAT_ACC - 1] = 2, + [STAT_ATK - 1] = 2, + [STAT_DEF - 1] = 2, + [STAT_SPEED - 1] = 2, + [STAT_SPATK - 1] = 2, + [STAT_SPDEF - 1] = 2, + [STAT_ACC - 1] = 2, [STAT_EVASION - 1] = 2 }; static const u16 sPoints_StatDecrease2[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = 4, - [STAT_DEF - 1] = 4, - [STAT_SPEED - 1] = 4, - [STAT_SPATK - 1] = 4, - [STAT_SPDEF - 1] = 4, - [STAT_ACC - 1] = 4, + [STAT_ATK - 1] = 4, + [STAT_DEF - 1] = 4, + [STAT_SPEED - 1] = 4, + [STAT_SPATK - 1] = 4, + [STAT_SPDEF - 1] = 4, + [STAT_ACC - 1] = 4, [STAT_EVASION - 1] = 4 }; static const u16 sPoints_StatIncreaseNotSelf[NUM_BATTLE_STATS - 1] = { - [STAT_ATK - 1] = -2, - [STAT_DEF - 1] = -2, - [STAT_SPEED - 1] = -2, + [STAT_ATK - 1] = -2, + [STAT_DEF - 1] = -2, + [STAT_SPEED - 1] = -2, [STAT_SPATK - 1] = -2, - [STAT_SPDEF - 1] = -2, - [STAT_ACC - 1] = -2, + [STAT_SPDEF - 1] = -2, + [STAT_ACC - 1] = -2, [STAT_EVASION - 1] = -2 }; diff --git a/src/battle_util.c b/src/battle_util.c index cbcd445b7ee2..9af456449177 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3458,7 +3458,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) break; // copy/paste again, smh case HOLD_EFFECT_ATTACK_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && gBattleMons[battlerId].statStages[STAT_ATK] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_ATK); @@ -3473,7 +3473,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_DEFENSE_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && gBattleMons[battlerId].statStages[STAT_DEF] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_DEF); @@ -3487,7 +3487,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_SPEED_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && gBattleMons[battlerId].statStages[STAT_SPEED] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPEED); @@ -3501,7 +3501,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_SP_ATTACK_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && gBattleMons[battlerId].statStages[STAT_SPATK] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPATK); @@ -3515,7 +3515,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_SP_DEFENSE_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && gBattleMons[battlerId].statStages[STAT_SPDEF] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPDEF); @@ -3529,7 +3529,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_CRITICAL_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn && !(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY)) { gBattleMons[battlerId].status2 |= STATUS2_FOCUS_ENERGY; diff --git a/src/berry_blender.c b/src/berry_blender.c index 8e8d392db5ec..aa9bf2f87b44 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -402,17 +402,17 @@ static const struct WindowTemplate sYesNoWindowTemplate_ContinuePlaying = static const s8 sPlayerArrowQuadrant[BLENDER_MAX_PLAYERS][2] = { - {-1, -1}, - { 1, -1}, - {-1, 1}, + {-1, -1}, + { 1, -1}, + {-1, 1}, { 1, 1} }; static const u8 sPlayerArrowPos[BLENDER_MAX_PLAYERS][2] = { - { 72, 32}, - {168, 32}, - { 72, 128}, + { 72, 32}, + {168, 32}, + { 72, 128}, {168, 128} }; @@ -427,16 +427,16 @@ static const u8 sPlayerIdMap[BLENDER_MAX_PLAYERS - 1][BLENDER_MAX_PLAYERS] = // Blender arrow positions: // // 0x0000 (limit 0x10000) -// . . +// . . // . . // 0x4000 . . 0xC000 // . . // . . -// . . +// . . // 0x8000 -// +// static const u16 sArrowStartPos[] = { - 0, + 0, MAX_ARROW_POS / 4 * 3, // 0xC000 MAX_ARROW_POS / 4, // 0x4000 MAX_ARROW_POS / 4 * 2 // 0x8000 @@ -446,8 +446,8 @@ static const u8 sArrowHitRangeStart[BLENDER_MAX_PLAYERS] = {32, 224, 96, 160}; static const TaskFunc sLocalOpponentTasks[] = { - Task_HandleOpponent1, - Task_HandleOpponent2, + Task_HandleOpponent1, + Task_HandleOpponent2, Task_HandleOpponent3 }; @@ -873,7 +873,7 @@ static const u8 sOpponentBerrySets[NUM_NPC_BERRIES * 2][3] = {ITEM_TO_BERRY(ITEM_CHESTO_BERRY) - 1, ITEM_TO_BERRY(ITEM_CHERI_BERRY) - 1, ITEM_TO_BERRY(ITEM_ASPEAR_BERRY) - 1}, // player chose Pecha Berry {ITEM_TO_BERRY(ITEM_PECHA_BERRY) - 1, ITEM_TO_BERRY(ITEM_CHESTO_BERRY) - 1, ITEM_TO_BERRY(ITEM_CHERI_BERRY) - 1}, // player chose Rawst Berry {ITEM_TO_BERRY(ITEM_RAWST_BERRY) - 1, ITEM_TO_BERRY(ITEM_PECHA_BERRY) - 1, ITEM_TO_BERRY(ITEM_CHESTO_BERRY) - 1}, // player chose Aspear Berry - + // These sets are used if the player chose a different berry (set is selected by player's berry % 5) {ITEM_TO_BERRY(ITEM_CHERI_BERRY) - 1, ITEM_TO_BERRY(ITEM_PECHA_BERRY) - 1, ITEM_TO_BERRY(ITEM_RAWST_BERRY) - 1}, // player chose Leppa, Figy, ... {ITEM_TO_BERRY(ITEM_CHESTO_BERRY) - 1, ITEM_TO_BERRY(ITEM_RAWST_BERRY) - 1, ITEM_TO_BERRY(ITEM_ASPEAR_BERRY) - 1}, // player chose Oran, Wiki, ... @@ -885,14 +885,14 @@ static const u8 sOpponentBerrySets[NUM_NPC_BERRIES * 2][3] = // Berry master's berries follow the same rules as above, but instead of explicitly listing // the alternate sets if the player chooses one of these berries, it implicitly uses these berries - 5, i.e. Tamato - Nomel static const u8 sBerryMasterBerries[] = { - ITEM_TO_BERRY(ITEM_SPELON_BERRY) - 1, - ITEM_TO_BERRY(ITEM_PAMTRE_BERRY) - 1, - ITEM_TO_BERRY(ITEM_WATMEL_BERRY) - 1, - ITEM_TO_BERRY(ITEM_DURIN_BERRY) - 1, + ITEM_TO_BERRY(ITEM_SPELON_BERRY) - 1, + ITEM_TO_BERRY(ITEM_PAMTRE_BERRY) - 1, + ITEM_TO_BERRY(ITEM_WATMEL_BERRY) - 1, + ITEM_TO_BERRY(ITEM_DURIN_BERRY) - 1, ITEM_TO_BERRY(ITEM_BELUE_BERRY) - 1 }; -// "0 players" is link +// "0 players" is link static const u8 sNumPlayersToSpeedDivisor[] = {1, 1, 2, 3, 4}; // Black pokeblocks will use one of these random combinations of flavors @@ -1191,11 +1191,11 @@ static void SetBerrySpriteData(struct Sprite* sprite, s16 x, s16 y, s16 bounceSp static void CreateBerrySprite(u16 a0, u8 playerId) { u8 spriteId = CreateSpinningBerrySprite(a0 + FIRST_BERRY_INDEX - 10, 0, 80, playerId & 1); - SetBerrySpriteData(&gSprites[spriteId], - sBerrySpriteData[playerId][0], - sBerrySpriteData[playerId][1], - sBerrySpriteData[playerId][2], - sBerrySpriteData[playerId][3], + SetBerrySpriteData(&gSprites[spriteId], + sBerrySpriteData[playerId][0], + sBerrySpriteData[playerId][1], + sBerrySpriteData[playerId][2], + sBerrySpriteData[playerId][3], sBerrySpriteData[playerId][4]); } @@ -2135,12 +2135,12 @@ static void UpdateOpponentScores(void) // BUG: Should be [i][BLENDER_COMM_SCORE] below, not [BLENDER_COMM_SCORE][i] // As a result the music tempo updates if any player misses, but only if 1 specific player hits #ifdef BUGFIX - if (gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_MISS - || gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_BEST + if (gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_MISS + || gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_BEST || gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_GOOD) #else - if (gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_MISS - || gRecvCmds[BLENDER_COMM_SCORE][i] == LINKCMD_BLENDER_SCORE_BEST + if (gRecvCmds[i][BLENDER_COMM_SCORE] == LINKCMD_BLENDER_SCORE_MISS + || gRecvCmds[BLENDER_COMM_SCORE][i] == LINKCMD_BLENDER_SCORE_BEST || gRecvCmds[BLENDER_COMM_SCORE][i] == LINKCMD_BLENDER_SCORE_GOOD) #endif { @@ -2204,7 +2204,7 @@ static void HandlePlayerInput(void) sBerryBlender->speed--; sBerryBlender->slowdownTimer = 0; } - + if (gEnableContestDebugging && JOY_NEW(L_BUTTON)) sBerryBlender->perfectOpponents ^= 1; } @@ -3030,10 +3030,10 @@ static void ProcessLinkPlayerCmds(void) sBerryBlender->playerContinueResponses[0] = LINKCMD_SEND_LINK_TYPE; } } - + // If player is link leader, check for responses to the "Continue playing" prompt (even if it's not up yet) - if (GetMultiplayerId() == 0 - && sBerryBlender->playerContinueResponses[0] != LINKCMD_BLENDER_STOP + if (GetMultiplayerId() == 0 + && sBerryBlender->playerContinueResponses[0] != LINKCMD_BLENDER_STOP && sBerryBlender->playerContinueResponses[0] != LINKCMD_SEND_LINK_TYPE) { u8 i; diff --git a/src/berry_crush.c b/src/berry_crush.c index 5504d05d6e14..5c571778f087 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -171,7 +171,7 @@ enum { #define INPUT_FLAG_MASK ((1 << INPUT_FLAGS_PER_PLAYER) - 1) // Values for the inputState field -enum { +enum { INPUT_STATE_NONE, INPUT_STATE_HIT, // Hit the crusher INPUT_STATE_HIT_SYNC, // Hit the crusher at same time as another player @@ -241,7 +241,7 @@ struct BerryCrushGame_Results }; // playerIdsRanked above has 3 additional elements after the players. -// Only 1 of these 2*3 is ever used, and it stores the id for which +// Only 1 of these 2*3 is ever used, and it stores the id for which // random results page to show. Its define below is for readability. #define randomPageId playerIdsRanked[0][7] @@ -369,33 +369,33 @@ static u32 Cmd_Quit(struct BerryCrushGame *, u8 *); static EWRAM_DATA struct BerryCrushGame *sGame = NULL; -static const u8 sBitTable[] = { - 1 << 0, - 1 << 1, - 1 << 2, - 1 << 3, - 1 << 4, - 1 << 5, - 1 << 6, - 1 << 7 +static const u8 sBitTable[] = { + 1 << 0, + 1 << 1, + 1 << 2, + 1 << 3, + 1 << 4, + 1 << 5, + 1 << 6, + 1 << 7 }; // Additional A presses are counted depending on the number of players // The bonus of 5 is unobtainable static const u8 sSyncPressBonus[MAX_RFU_PLAYERS] = { 0, 1, 2, 3, 5 }; ALIGNED(4) -static const s8 sIntroOutroVibrationData[][7] = +static const s8 sIntroOutroVibrationData[][7] = { - { 4, 1, 0, -1, 0, 0, 0}, - { 4, 2, 0, -1, 0, 0, 0}, - { 4, 2, 0, -2, 0, 0, 0}, - { 6, 3, 1, -1, -3, -1, 0}, + { 4, 1, 0, -1, 0, 0, 0}, + { 4, 2, 0, -1, 0, 0, 0}, + { 4, 2, 0, -2, 0, 0, 0}, + { 6, 3, 1, -1, -3, -1, 0}, { 6, 4, 1, -2, -4, -2, 0}, }; ALIGNED(4) -static const u8 sVibrationData[MAX_RFU_PLAYERS][4] = +static const u8 sVibrationData[MAX_RFU_PLAYERS][4] = { - {3, 2, 1, 0}, + {3, 2, 1, 0}, {3, 3, 1, 0}, {3, 3, 2, 0}, {3, 4, 2, 0}, @@ -433,7 +433,7 @@ static const struct BgTemplate sBgTemplates[4] = .screenSize = 2, .paletteMode = 0, .priority = 1, - .baseTile = 0, + .baseTile = 0, }, { .bg = 2, @@ -442,7 +442,7 @@ static const struct BgTemplate sBgTemplates[4] = .screenSize = 0, .paletteMode = 0, .priority = 2, - .baseTile = 0, + .baseTile = 0, }, { .bg = 3, @@ -451,7 +451,7 @@ static const struct BgTemplate sBgTemplates[4] = .screenSize = 0, .paletteMode = 0, .priority = 3, - .baseTile = 0, + .baseTile = 0, }, }; @@ -468,11 +468,11 @@ static const u8 sTextColorTable[][3] = static const struct WindowTemplate sWindowTemplate_Rankings = { - .bg = 0, - .tilemapLeft = 3, - .tilemapTop = 4, - .width = 24, - .height = 13, + .bg = 0, + .tilemapLeft = 3, + .tilemapTop = 4, + .width = 24, + .height = 13, .paletteNum = 15, .baseBlock = 1 }; @@ -480,48 +480,48 @@ static const struct WindowTemplate sWindowTemplate_Rankings = static const struct WindowTemplate sWindowTemplates_PlayerNames[MAX_RFU_PLAYERS + 1] = { { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 0, - .width = 9, - .height = 2, - .paletteNum = 8, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 9, + .height = 2, + .paletteNum = 8, .baseBlock = 1005 }, { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 3, - .width = 9, - .height = 2, - .paletteNum = 8, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 3, + .width = 9, + .height = 2, + .paletteNum = 8, .baseBlock = 987 }, { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 6, - .width = 9, - .height = 2, - .paletteNum = 8, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 6, + .width = 9, + .height = 2, + .paletteNum = 8, .baseBlock = 969 }, { - .bg = 0, - .tilemapLeft = 21, - .tilemapTop = 3, - .width = 9, - .height = 2, - .paletteNum = 8, + .bg = 0, + .tilemapLeft = 21, + .tilemapTop = 3, + .width = 9, + .height = 2, + .paletteNum = 8, .baseBlock = 951 }, { - .bg = 0, - .tilemapLeft = 21, - .tilemapTop = 6, - .width = 9, - .height = 2, - .paletteNum = 8, + .bg = 0, + .tilemapLeft = 21, + .tilemapTop = 6, + .width = 9, + .height = 2, + .paletteNum = 8, .baseBlock = 933 }, DUMMY_WIN_TEMPLATE, @@ -530,30 +530,30 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[MAX_RFU_PLAYERS static const struct WindowTemplate sWindowTemplates_Results[] = { [STATE_RESULTS_PRESSES - RESULTS_STATE_START] = { - .bg = 0, - .tilemapLeft = 5, - .tilemapTop = 2, - .width = 20, - .height = 16, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 5, + .tilemapTop = 2, + .width = 20, + .height = 16, + .paletteNum = 15, .baseBlock = 1 }, [STATE_RESULTS_RANDOM - RESULTS_STATE_START] = { - .bg = 0, - .tilemapLeft = 5, - .tilemapTop = 2, - .width = 20, - .height = 16, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 5, + .tilemapTop = 2, + .width = 20, + .height = 16, + .paletteNum = 15, .baseBlock = 1 }, [STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = { - .bg = 0, - .tilemapLeft = 4, - .tilemapTop = 2, - .width = 22, - .height = 16, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 4, + .tilemapTop = 2, + .width = 22, + .height = 16, + .paletteNum = 15, .baseBlock = 1 }, DUMMY_WIN_TEMPLATE, @@ -567,7 +567,7 @@ static const u8 sResultsWindowHeights[][MAX_RFU_PLAYERS - 1] = {12, 14, 15, 16}, // "Crushing" page }; -static const u32 sPressingSpeedConversionTable[] = +static const u32 sPressingSpeedConversionTable[] = { 50000000, // 50 25000000, // 25 @@ -590,9 +590,9 @@ static const u8 sCrusherTop_Tilemap[] = INCBIN_U8("graphics/berry_crush/crushe static const u8 sContainerCap_Tilemap[] = INCBIN_U8("graphics/berry_crush/container_cap.bin.lz"); static const u8 sBg_Tilemap[] = INCBIN_U8("graphics/berry_crush/bg.bin.lz"); -// Takes the number of players - 2 and a player id and returns the +// Takes the number of players - 2 and a player id and returns the // index into sPlayerCoords where that player should be seated -static const u8 sPlayerIdToPosId[MAX_RFU_PLAYERS - 1][MAX_RFU_PLAYERS] = +static const u8 sPlayerIdToPosId[MAX_RFU_PLAYERS - 1][MAX_RFU_PLAYERS] = { {1, 3}, {0, 1, 3}, @@ -672,18 +672,18 @@ static const s8 sSparkleCoords[][2] = { 40, -16}, }; -static const u16 sPlayerBerrySpriteTags[MAX_RFU_PLAYERS] = +static const u16 sPlayerBerrySpriteTags[MAX_RFU_PLAYERS] = { - TAG_PLAYER1_BERRY, - TAG_PLAYER2_BERRY, - TAG_PLAYER3_BERRY, - TAG_PLAYER4_BERRY, + TAG_PLAYER1_BERRY, + TAG_PLAYER2_BERRY, + TAG_PLAYER3_BERRY, + TAG_PLAYER4_BERRY, TAG_PLAYER5_BERRY }; // sTimerDigits_Gfx is part of this array but is (apparently) uncompressed // It gets cast to raw uncompressed data when used in sDigitObjTemplates -static const struct CompressedSpriteSheet sSpriteSheets[] = +static const struct CompressedSpriteSheet sSpriteSheets[] = { { .data = sCrusherBase_Gfx, .size = 0x800, .tag = TAG_CRUSHER_BASE }, { .data = sImpact_Gfx, .size = 0xE00, .tag = GFXTAG_IMPACT }, @@ -727,23 +727,23 @@ static const union AnimCmd sAnim_Impact_Big[] = static const union AnimCmd sAnim_Sparkle_Small[] = { ANIMCMD_FRAME(0, 2), - ANIMCMD_FRAME(4, 2), + ANIMCMD_FRAME(4, 2), ANIMCMD_FRAME(8, 2), ANIMCMD_FRAME(12, 2), - ANIMCMD_FRAME(16, 2), - ANIMCMD_FRAME(20, 2), + ANIMCMD_FRAME(16, 2), + ANIMCMD_FRAME(20, 2), ANIMCMD_JUMP(0) }; static const union AnimCmd sAnim_Sparkle_Big[] = { - ANIMCMD_FRAME(24, 4), - ANIMCMD_FRAME(28, 4), - ANIMCMD_FRAME(32, 4), + ANIMCMD_FRAME(24, 4), + ANIMCMD_FRAME(28, 4), + ANIMCMD_FRAME(32, 4), ANIMCMD_FRAME(36, 4), - ANIMCMD_FRAME(40, 4), - ANIMCMD_FRAME(44, 4), - ANIMCMD_FRAME(48, 4), + ANIMCMD_FRAME(40, 4), + ANIMCMD_FRAME(44, 4), + ANIMCMD_FRAME(48, 4), ANIMCMD_FRAME(52, 4), ANIMCMD_JUMP(0) }; @@ -756,7 +756,7 @@ static const union AnimCmd sAnim_Timer[] = static const union AnimCmd sAnim_PlayerBerry[] = { - ANIMCMD_FRAME(0, 0), + ANIMCMD_FRAME(0, 0), ANIMCMD_END }; @@ -810,68 +810,68 @@ static const union AffineAnimCmd *const sAffineAnims_PlayerBerry[] = static const struct SpriteTemplate sSpriteTemplate_CrusherBase = { - .tileTag = TAG_CRUSHER_BASE, - .paletteTag = TAG_CRUSHER_BASE, - .oam = &gOamData_AffineOff_ObjNormal_64x64, - .anims = sAnims_CrusherBase, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = TAG_CRUSHER_BASE, + .paletteTag = TAG_CRUSHER_BASE, + .oam = &gOamData_AffineOff_ObjNormal_64x64, + .anims = sAnims_CrusherBase, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_Impact = { .tileTag = GFXTAG_IMPACT, - .paletteTag = PALTAG_EFFECT, - .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = sAnims_Impact, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .paletteTag = PALTAG_EFFECT, + .oam = &gOamData_AffineOff_ObjNormal_32x32, + .anims = sAnims_Impact, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_Impact }; static const struct SpriteTemplate sSpriteTemplate_Sparkle = { - .tileTag = GFXTAG_SPARKLE, - .paletteTag = PALTAG_EFFECT, - .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = sAnims_Sparkle, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = GFXTAG_SPARKLE, + .paletteTag = PALTAG_EFFECT, + .oam = &gOamData_AffineOff_ObjNormal_16x16, + .anims = sAnims_Sparkle, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_Timer = { - .tileTag = TAG_TIMER_DIGITS, - .paletteTag = TAG_TIMER_DIGITS, - .oam = &gOamData_AffineOff_ObjNormal_8x16, - .anims = sAnims_Timer, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = TAG_TIMER_DIGITS, + .paletteTag = TAG_TIMER_DIGITS, + .oam = &gOamData_AffineOff_ObjNormal_8x16, + .anims = sAnims_Timer, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_PlayerBerry = { - .tileTag = TAG_PLAYER1_BERRY, - .paletteTag = TAG_PLAYER1_BERRY, - .oam = &gOamData_AffineDouble_ObjNormal_32x32, - .anims = sAnims_PlayerBerry, - .images = NULL, - .affineAnims = sAffineAnims_PlayerBerry, + .tileTag = TAG_PLAYER1_BERRY, + .paletteTag = TAG_PLAYER1_BERRY, + .oam = &gOamData_AffineDouble_ObjNormal_32x32, + .anims = sAnims_PlayerBerry, + .images = NULL, + .affineAnims = sAffineAnims_PlayerBerry, .callback = SpriteCallbackDummy }; -static const struct DigitObjUtilTemplate sDigitObjTemplates[] = +static const struct DigitObjUtilTemplate sDigitObjTemplates[] = { { // Minutes .strConvMode = 1, .shape = 2, .size = 0, .priority = 0, - .oamCount = 2, - .xDelta = 8, + .oamCount = 2, + .xDelta = 8, .x = 156, .y = 0, .spriteSheet = (void*) &sSpriteSheets[3], @@ -882,8 +882,8 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .shape = 2, .size = 0, .priority = 0, - .oamCount = 2, - .xDelta = 8, + .oamCount = 2, + .xDelta = 8, .x = 180, .y = 0, .spriteSheet = (void*) &sSpriteSheets[3], @@ -894,8 +894,8 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .shape = 2, .size = 0, .priority = 0, - .oamCount = 2, - .xDelta = 8, + .oamCount = 2, + .xDelta = 8, .x = 204, .y = 0, .spriteSheet = (void*) &sSpriteSheets[3], @@ -944,7 +944,7 @@ static u32 (*const sBerryCrushCommands[])(struct BerryCrushGame * game, u8 * dat [CMD_QUIT] = Cmd_Quit, }; -// Per group size, the number of A presses required to increase the number of sparkles. +// Per group size, the number of A presses required to increase the number of sparkles. static const u8 sSparkleThresholds[MAX_RFU_PLAYERS - 1][4] = { {2, 4, 6, 7}, // 2 players @@ -1472,7 +1472,7 @@ static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGam numPlayersPressed = 0; linkState = (struct BerryCrushGame_LinkState *)game->recvCmd; - + // Read inputs and update impact effects for (i = 0; i < game->playerCount; i++) { @@ -1698,13 +1698,13 @@ static void PrintCrushingResults(struct BerryCrushGame *game) StringExpandPlaceholders(gStringVar4, gText_StrVar1); x -= GetStringWidth(2, gStringVar4, -1); AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); - + // Print pressing speed text y += 14; AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed); x = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); - + // Print pressing speed value for (i = 0; i < 8; i++) if (((u8)game->pressingSpeed >> (7 - i)) & 1) @@ -1802,7 +1802,7 @@ static void Task_ShowRankings(u8 taskId) u8 i = 0, j, xPos, yPos; u32 score = 0; s16 *data = gTasks[taskId].data; - + switch (tState) { case 0: @@ -1818,7 +1818,7 @@ static void Task_ShowRankings(u8 taskId) AddTextPrinterParameterized3(tWindowId, 1, xPos, 1, sTextColorTable[COLORID_BLUE], 0, gText_BerryCrush2); xPos = 96 - GetStringWidth(1, gText_PressingSpeedRankings, -1) / 2u; AddTextPrinterParameterized3(tWindowId, 1, xPos, 17, sTextColorTable[COLORID_BLUE], 0, gText_PressingSpeedRankings); - + // Print pressing speed record for each group size, ranked yPos = 41; for (i = 0; i < MAX_RFU_PLAYERS - 1; i++) @@ -1977,7 +1977,7 @@ static void CreateGameSprites(struct BerryCrushGame *game) for (i = 0; i < ARRAY_COUNT(sSpriteSheets) - 1; i++) LoadCompressedSpriteSheet(&sSpriteSheets[i]); LoadSpritePalettes(sSpritePals); - + // Create sprite for crusher base spriteId = CreateSprite(&sSpriteTemplate_CrusherBase, 120, 88, 5); game->gfx.coreSprite = &gSprites[spriteId]; @@ -2372,7 +2372,7 @@ static u32 Cmd_WaitForOthersToPickBerries(struct BerryCrushGame *game, u8 *args) case 2: if (!IsLinkTaskFinished()) return 0; - + // Send player's chosen berry to partners memset(game->sendCmd, 0, sizeof(game->sendCmd)); game->sendCmd[0] = game->players[game->localId].berryId; @@ -2563,13 +2563,13 @@ static void HandlePartnerInput(struct BerryCrushGame *game) for (i = 0; i < game->playerCount; i++) { linkState = (struct BerryCrushGame_LinkState *)gRecvCmds[i]; - + // Skip player if we have not received a packet from them if ((linkState->rfuCmd & 0xFF00) != RFUCMD_SEND_PACKET) continue; if (linkState->sendFlag != SEND_GAME_STATE) continue; - + if (linkState->pushedAButton) { game->localState.playerPressedAFlags |= sBitTable[i]; @@ -2577,10 +2577,10 @@ static void HandlePartnerInput(struct BerryCrushGame *game) game->players[i].numAPresses++; numPlayersPressed++; timeDiff = game->timer - game->players[i].inputTime; - + // If the interval between inputs is regular, the input is considered "neat" // This counts toward the player's neatness score - if (timeDiff >= game->players[i].timeSincePrevInput - 1 + if (timeDiff >= game->players[i].timeSincePrevInput - 1 && timeDiff <= game->players[i].timeSincePrevInput + 1) { // On neat input streak @@ -2595,7 +2595,7 @@ static void HandlePartnerInput(struct BerryCrushGame *game) game->players[i].neatInputStreak = 0; game->players[i].timeSincePrevInput = timeDiff; } - + game->players[i].inputTime = game->timer; game->players[i].inputFlags++; if (game->players[i].inputFlags > F_INPUT_HIT_B) @@ -2637,7 +2637,7 @@ static void HandlePartnerInput(struct BerryCrushGame *game) // Target number of A presses has been reached, game is complete game->newDepth = 32; - game->localState.endGame = TRUE; + game->localState.endGame = TRUE; } // Updates the crusher, input flags, and timer to send to group members @@ -2648,7 +2648,7 @@ static void UpdateLeaderGameState(struct BerryCrushGame *game) u16 flags = 0; u16 temp = 0; u8 i = 0; - + for (i = 0; i < game->playerCount; i++) { if (game->players[i].inputState != INPUT_STATE_NONE) @@ -2727,7 +2727,7 @@ static void HandlePlayerInput(struct BerryCrushGame *game) if (game->localId != 0 && !game->localState.pushedAButton) return; game->localState.sendFlag = SEND_GAME_STATE; - + // Every 30 frames, check whether the sparkles produced should be big, // depending on how many A presses there were in that time if (game->timer % 30 == 0) @@ -2744,7 +2744,7 @@ static void HandlePlayerInput(struct BerryCrushGame *game) game->bigSparkleCounter = 0; game->numBigSparkleChecks++; } - + // Every 15 frames, update the amount of sparkles that should be produced, // depending on how many A presses there were in that time (including the bonus) if (game->timer % 15 == 0) @@ -2787,7 +2787,7 @@ static void HandlePlayerInput(struct BerryCrushGame *game) game->cmdTimer = 0; } } - + } if (game->timer >= MAX_TIME) game->localState.endGame = TRUE; @@ -3056,14 +3056,14 @@ static u32 Cmd_TabulateResults(struct BerryCrushGame *game, u8 *args) game->results.playerIdsRanked[RESULTS_PAGE_RANDOM][i] = i; game->results.stats[RESULTS_PAGE_PRESSES][i] = game->players[i].numAPresses; game->results.totalAPresses += game->results.stats[RESULTS_PAGE_PRESSES][i]; - + // Calculate value for random second results page switch (game->results.randomPageId) { case RESULTS_PAGE_NEATNESS: if (game->players[i].numAPresses != 0) { - // Calculate percentage of inputs that were in largest "neat" streak + // Calculate percentage of inputs that were in largest "neat" streak // "Neat" inputs are those done at a regular interval temp1 = game->players[i].maxNeatInputStreak; temp1 = Q_24_8(temp1); @@ -3129,7 +3129,7 @@ static u32 Cmd_TabulateResults(struct BerryCrushGame *game, u8 *args) // Calculate player rankings for "Number of Presses" by sorting arrays if (game->results.stats[RESULTS_PAGE_PRESSES][j - 1] < game->results.stats[RESULTS_PAGE_PRESSES][j]) { - SWAP(game->results.stats[RESULTS_PAGE_PRESSES][j], + SWAP(game->results.stats[RESULTS_PAGE_PRESSES][j], game->results.stats[RESULTS_PAGE_PRESSES][j - 1], tempStat); SWAP(game->results.playerIdsRanked[RESULTS_PAGE_PRESSES][j], @@ -3139,7 +3139,7 @@ static u32 Cmd_TabulateResults(struct BerryCrushGame *game, u8 *args) // Calculate player rankings for random second results page by sorting arrays if (game->results.stats[RESULTS_PAGE_RANDOM][j - 1] < game->results.stats[RESULTS_PAGE_RANDOM][j]) { - SWAP(game->results.stats[RESULTS_PAGE_RANDOM][j], + SWAP(game->results.stats[RESULTS_PAGE_RANDOM][j], game->results.stats[RESULTS_PAGE_RANDOM][j - 1], tempStat); SWAP(game->results.playerIdsRanked[RESULTS_PAGE_RANDOM][j], @@ -3319,7 +3319,7 @@ static u32 Cmd_CommunicatePlayAgainResponses(struct BerryCrushGame *game, u8 *ar case 1: if (!IsLinkTaskFinished()) return 0; - + // Send player's Yes/No response to partners game->sendCmd[0] = game->playAgainState; game->recvCmd[0] = 0; diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index 31caf79cc058..dc025c0a4925 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -51,20 +51,20 @@ static const u8 sText_TransmissionFailureTryAgain[] = _("Transmission failure.\n static const struct BgTemplate sBerryFixBgTemplates[] = { { - .bg = 0, - .charBaseIndex = 0, - .mapBaseIndex = 30, - .screenSize = 0, - .paletteMode = 0, + .bg = 0, + .charBaseIndex = 0, + .mapBaseIndex = 30, + .screenSize = 0, + .paletteMode = 0, .priority = 0, .baseTile = 0 - }, + }, { - .bg = 1, - .charBaseIndex = 1, - .mapBaseIndex = 31, - .screenSize = 0, - .paletteMode = 0, + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 31, + .screenSize = 0, + .paletteMode = 0, .priority = 1, .baseTile = 0 } @@ -72,39 +72,39 @@ static const struct BgTemplate sBerryFixBgTemplates[] = { static const struct WindowTemplate sBerryFixWindowTemplates[] = { { - .bg = 0, - .tilemapLeft = 2, - .tilemapTop = 4, - .width = 26, - .height = 2, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 4, + .width = 26, + .height = 2, + .paletteNum = 15, .baseBlock = 1 }, { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 11, - .width = 28, - .height = 8, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 11, + .width = 28, + .height = 8, + .paletteNum = 15, .baseBlock = 53 }, { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 8, - .width = 30, - .height = 2, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 8, + .width = 30, + .height = 2, + .paletteNum = 15, .baseBlock = 277 }, { - .bg = 0, - .tilemapLeft = 8, - .tilemapTop = 0, - .width = 14, - .height = 2, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 8, + .tilemapTop = 0, + .width = 14, + .height = 2, + .paletteNum = 15, .baseBlock = 337 }, DUMMY_WIN_TEMPLATE @@ -148,27 +148,27 @@ static const struct { gBerryFixGameboy_Gfx, gBerryFixGameboy_Tilemap, gBerryFixGameboy_Pal - }, + }, [SCENE_TURN_OFF_POWER] = { gBerryFixGameboyLogo_Gfx, gBerryFixGameboyLogo_Tilemap, gBerryFixGameboyLogo_Pal - }, + }, [SCENE_TRANSMITTING] = { gBerryFixGbaTransfer_Gfx, gBerryFixGbaTransfer_Tilemap, gBerryFixGbaTransfer_Pal - }, + }, [SCENE_FOLLOW_INSTRUCT] = { gBerryFixGbaTransferHighlight_Gfx, gBerryFixGbaTransferHighlight_Tilemap, gBerryFixGbaTransferHighlight_Pal - }, + }, [SCENE_TRANSMIT_FAILED] = { gBerryFixGbaTransferError_Gfx, gBerryFixGbaTransferError_Tilemap, gBerryFixGbaTransferError_Pal - }, + }, [SCENE_BEGIN] = { gBerryFixWindow_Gfx, gBerryFixWindow_Tilemap, @@ -242,22 +242,22 @@ static void BerryFix_Main(void) } else if (++sBerryFix->timer > 180) { - MultiBootStartMaster(&sBerryFix->mb, - gMultiBootProgram_BerryGlitchFix_Start + ROM_HEADER_SIZE, - (u32)(gMultiBootProgram_BerryGlitchFix_End - (gMultiBootProgram_BerryGlitchFix_Start + ROM_HEADER_SIZE)), - 4, + MultiBootStartMaster(&sBerryFix->mb, + gMultiBootProgram_BerryGlitchFix_Start + ROM_HEADER_SIZE, + (u32)(gMultiBootProgram_BerryGlitchFix_End - (gMultiBootProgram_BerryGlitchFix_Start + ROM_HEADER_SIZE)), + 4, 1); sBerryFix->state = MAINSTATE_TRANSMIT; } break; case MAINSTATE_TRANSMIT: - if (TryScene(SCENE_TRANSMITTING)) + if (TryScene(SCENE_TRANSMITTING)) { MultiBootMain(&sBerryFix->mb); - if (MultiBootCheckComplete(&sBerryFix->mb)) + if (MultiBootCheckComplete(&sBerryFix->mb)) sBerryFix->state = MAINSTATE_EXIT; - else if (!(sBerryFix->mb.client_bit & 2)) + else if (!(sBerryFix->mb.client_bit & 2)) sBerryFix->state = MAINSTATE_FAILED; } break; diff --git a/src/berry_powder.c b/src/berry_powder.c index 50d280f0a6e4..f77265412fb7 100755 --- a/src/berry_powder.c +++ b/src/berry_powder.c @@ -62,66 +62,66 @@ static const u32 sUnknown[] = {0xFF, 0x00}; static const struct WindowTemplate sBerryPowderWindowTemplates[] = { { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 1, - .width = 28, - .height = 2, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 28, + .height = 2, + .paletteNum = 13, .baseBlock = 19 }, { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 5, - .width = 28, - .height = 14, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 5, + .width = 28, + .height = 14, + .paletteNum = 13, .baseBlock = 75 }, { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 5, - .width = 28, - .height = 7, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 5, + .width = 28, + .height = 7, + .paletteNum = 13, .baseBlock = 75 }, { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 8, - .width = 19, - .height = 3, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 8, + .width = 19, + .height = 3, + .paletteNum = 13, .baseBlock = 19 }, { - .bg = 0, - .tilemapLeft = 22, - .tilemapTop = 7, - .width = 6, - .height = 4, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 7, + .width = 6, + .height = 4, + .paletteNum = 13, .baseBlock = 76 }, { - .bg = 0, - .tilemapLeft = 4, - .tilemapTop = 6, - .width = 22, - .height = 5, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 4, + .tilemapTop = 6, + .width = 22, + .height = 5, + .paletteNum = 13, .baseBlock = 19 }, { - .bg = 0, - .tilemapLeft = 5, - .tilemapTop = 8, - .width = 19, - .height = 3, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 5, + .tilemapTop = 8, + .width = 19, + .height = 3, + .paletteNum = 13, .baseBlock = 19 }, }; diff --git a/src/bike.c b/src/bike.c index e97a5e04e4ad..39433522ec22 100644 --- a/src/bike.c +++ b/src/bike.c @@ -962,7 +962,7 @@ bool8 IsBikingDisallowedByPlayer(void) bool8 IsPlayerNotUsingAcroBikeOnBumpySlope(void) { - if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_ACRO_BIKE) + if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_ACRO_BIKE) && MetatileBehavior_IsBumpySlope(gObjectEvents[gPlayerAvatar.objectEventId].currentMetatileBehavior)) return FALSE; else diff --git a/src/cable_car.c b/src/cable_car.c index 32d4325352f9..39154cd1d8ed 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -896,7 +896,7 @@ static void CreateCableCarSprites(void) gSprites[spriteId].oam.priority = 2; gSprites[spriteId].x2 = -gSprites[spriteId].centerToCornerVecX; gSprites[spriteId].y2 = -gSprites[spriteId].centerToCornerVecY; - + // Randomly choose which direction the NPC is going if (!GOING_DOWN) { @@ -1024,7 +1024,7 @@ static void DrawNextGroundSegmentGoingDown(void) sCableCar->groundSegmentXStart = (sCableCar->groundSegmentXStart + 2) % 32; sCableCar->groundTileIdx += 2; sGroundSegmentY_Down = sCableCar->groundSegmentYStart; - + // Draw next segment for (i = 0; i < ARRAY_COUNT(sCableCar->groundTileBuffer); i++) { diff --git a/src/cable_club.c b/src/cable_club.c index abe1d5d4dd83..1b61023ec3b4 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -352,14 +352,14 @@ static void Task_LinkupExchangeDataWithLeader(u8 taskId) gSpecialVar_Result = ExchangeDataAndGetLinkupStatus(minPlayers, maxPlayers); if (gSpecialVar_Result == LINKUP_ONGOING) return; - if (gSpecialVar_Result == LINKUP_DIFF_SELECTIONS + if (gSpecialVar_Result == LINKUP_DIFF_SELECTIONS || gSpecialVar_Result == LINKUP_WRONG_NUM_PLAYERS) { SetCloseLinkCallback(); HideFieldMessageBox(); gTasks[taskId].func = Task_StopLinkup; } - else if (gSpecialVar_Result == LINKUP_PLAYER_NOT_READY + else if (gSpecialVar_Result == LINKUP_PLAYER_NOT_READY || gSpecialVar_Result == LINKUP_PARTNER_NOT_READY) { CloseLink(); @@ -407,7 +407,7 @@ static void Task_LinkupCheckStatusAfterConfirm(u8 taskId) HideFieldMessageBox(); gTasks[taskId].func = Task_StopLinkup; } - else if (gSpecialVar_Result == LINKUP_PLAYER_NOT_READY + else if (gSpecialVar_Result == LINKUP_PLAYER_NOT_READY || gSpecialVar_Result == LINKUP_PARTNER_NOT_READY) { CloseLink(); @@ -1023,9 +1023,9 @@ void CB2_ReturnFromCableClubBattle(void) void CleanupLinkRoomState(void) { - if (gSpecialVar_0x8004 == USING_SINGLE_BATTLE - || gSpecialVar_0x8004 == USING_DOUBLE_BATTLE - || gSpecialVar_0x8004 == USING_MULTI_BATTLE + if (gSpecialVar_0x8004 == USING_SINGLE_BATTLE + || gSpecialVar_0x8004 == USING_DOUBLE_BATTLE + || gSpecialVar_0x8004 == USING_MULTI_BATTLE || gSpecialVar_0x8004 == USING_BATTLE_TOWER) { LoadPlayerParty(); diff --git a/src/contest.c b/src/contest.c index 46fa0efedb0d..886f2b95dc9b 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1103,10 +1103,10 @@ static void InitContestResources(void) eContestAI = (struct ContestAIInfo){}; *gContestResources->excitement = (struct ContestExcitement){}; memset(eContestGfxState, 0, CONTESTANT_COUNT * sizeof(struct ContestGraphicsState)); - + if (!(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)) SortContestants(FALSE); - + for (i = 0; i < CONTESTANT_COUNT; i++) { eContestantStatus[i].nextTurnOrder = 0xFF; @@ -3342,9 +3342,9 @@ static bool8 DrawStatusSymbol(u8 contestant) u16 symbolOffset = 0; u8 contestantOffset = gContestantTurnOrder[contestant] * 5 + 2; - if (eContestantStatus[contestant].resistant - || eContestantStatus[contestant].immune - || eContestantStatus[contestant].jamSafetyCount != 0 + if (eContestantStatus[contestant].resistant + || eContestantStatus[contestant].immune + || eContestantStatus[contestant].jamSafetyCount != 0 || eContestantStatus[contestant].jamReduction != 0) symbolOffset = GetStatusSymbolTileOffset(STAT_SYMBOL_CIRCLE); else if (eContestantStatus[contestant].nervous) @@ -4336,7 +4336,7 @@ void SortContestants(bool8 useRanking) s32 j; for (j = i; j > v3; j--) gContestantTurnOrder[j] = gContestantTurnOrder[j - 1]; - + // Insert into the new spot. gContestantTurnOrder[v3] = i; break; @@ -4351,7 +4351,7 @@ void SortContestants(bool8 useRanking) } // Invert gContestantTurnOrder; above, it was a list of contestant IDs. Now it's a list of turn orderings. - // + // // For example, if contestant 3 had the first turn, then `gContestantTurnOrder[1] = 3`. The turn is the index, // the contestant is the data. After inverting the list, `gContestantTurnOrder[3] = 1`. The contestant is the index, // and the turn is the data. @@ -4386,7 +4386,7 @@ void SortContestants(bool8 useRanking) } // Randomize the order of contestants with tied rankings using Selection Sort. - // + // // Look through the array for tied ranks, and use randomOrdering to break the tie. // This ensures that contestants with the same rank will be randomly ordered. This // uses an in-place slection sort, which involves a lot of extra swapping. @@ -4762,13 +4762,13 @@ static void Task_ApplauseOverflowAnimation(u8 taskId) if (++gTasks[taskId].data[0] == 1) { gTasks[taskId].data[0] = 0; - + // Alternate between normal colors and white. if (gTasks[taskId].data[3] == 0) gTasks[taskId].data[4]++; else gTasks[taskId].data[4]--; - + BlendPalette(264 + gTasks[taskId].data[2] * 16, 1, gTasks[taskId].data[4], RGB_WHITE); // At the maximum or minimum blending, switch directions. @@ -5956,7 +5956,7 @@ static void ContestDebugPrintBitStrings(void) if (!gEnableContestDebugging) return; - + if (eContestDebugMode != CONTEST_DEBUG_MODE_PRINT_WINNER_FLAGS && eContestDebugMode != CONTEST_DEBUG_MODE_PRINT_LOSER_FLAGS) return; diff --git a/src/contest_ai.c b/src/contest_ai.c index 8fe339790a05..7aeba828a62f 100644 --- a/src/contest_ai.c +++ b/src/contest_ai.c @@ -1732,7 +1732,7 @@ static void ContestAICmd_if_user_doesnt_have_exciting_move(void) // BUG: This is checking if the user has a specific move, but when it's used in the AI script // they're checking for an effect. Checking for a specific effect would make more sense, -// but given that effects are normally read as a single byte and this reads 2 bytes, it +// but given that effects are normally read as a single byte and this reads 2 bytes, it // seems reading a move was intended and the AI script is using it incorrectly. // The fix below aligns the function with how it's used by the script, rather than the apparent // intention of its usage @@ -1750,7 +1750,7 @@ static void ContestAICmd_check_user_has_move(void) #else u16 move = gContestMons[eContestAI.contestantId].moves[i]; #endif - + if (move == targetMove) { hasMove = TRUE; diff --git a/src/contest_effect.c b/src/contest_effect.c index 1fe21daaba97..864805a54f85 100644 --- a/src/contest_effect.c +++ b/src/contest_effect.c @@ -68,9 +68,9 @@ bool8 AreMovesContestCombo(u16 lastMove, u16 nextMove) if (lastMoveComboStarterId == 0) return FALSE; - else if (lastMoveComboStarterId == nextMoveComboMoves[0] - || lastMoveComboStarterId == nextMoveComboMoves[1] - || lastMoveComboStarterId == nextMoveComboMoves[2] + else if (lastMoveComboStarterId == nextMoveComboMoves[0] + || lastMoveComboStarterId == nextMoveComboMoves[1] + || lastMoveComboStarterId == nextMoveComboMoves[2] || lastMoveComboStarterId == nextMoveComboMoves[3]) return gComboStarterLookupTable[lastMoveComboStarterId]; else diff --git a/src/contest_link.c b/src/contest_link.c index ae6975268f28..42a320721662 100644 --- a/src/contest_link.c +++ b/src/contest_link.c @@ -61,7 +61,7 @@ void Task_LinkContest_Init(u8 taskId) for (i = 0; i < CONTESTANT_COUNT; i++) gBlockRecvBuffer[i][0] = 0xFF; - + gTasks[taskId].tState = 0; gTasks[taskId].func = Task_LinkContest_StartInitFlags; } @@ -99,7 +99,7 @@ bool32 LinkContest_TryLinkStandby(s16 *state) // Skip standby for RS cabled links if (gLinkContestFlags & LINK_CONTEST_FLAG_HAS_RS_PLAYER) return TRUE; - + switch (*state) { case 0: diff --git a/src/contest_link_util.c b/src/contest_link_util.c index 31ffb5fdb3cf..28dec198925e 100644 --- a/src/contest_link_util.c +++ b/src/contest_link_util.c @@ -88,7 +88,7 @@ static void Task_LinkContest_SetUpContestEm(u8 taskId) for (i = 0; i < gNumLinkContestPlayers; i++) categories[i] = gTasks[taskId].data[i + 1]; - + // Ensure all players are doing the same category for (i = 0; i < gNumLinkContestPlayers && categories[0] == categories[i]; i++) ; @@ -100,7 +100,7 @@ static void Task_LinkContest_SetUpContestEm(u8 taskId) for (i = 0; i < gNumLinkContestPlayers; i++) leaderIds[i] = gTasks[taskId].data[i + 5]; - + // If < 4 players and player is leader, set AI contestants based on rank and game clear if (gNumLinkContestPlayers != CONTESTANT_COUNT && GetMultiplayerId() == 0) { @@ -113,7 +113,7 @@ static void Task_LinkContest_SetUpContestEm(u8 taskId) if (rank) rank--; - + gameCleared = TRUE; for (i = 0; i < gNumLinkContestPlayers; i++) { @@ -202,7 +202,7 @@ static void Task_LinkContest_CommunicateRngEm(u8 taskId) // Only the leader sends the RNG seed if (!IsLinkTaskFinished()) return; - + if (LinkContest_SendBlock(&gRngValue, sizeof(gRngValue)) == 1) gTasks[taskId].data[0]++; } @@ -321,7 +321,7 @@ static void Task_LinkContest_CommunicateAIMonsEm(u8 taskId) { if (!IsLinkTaskFinished()) return; - + if (LinkContest_SendBlock(&gContestMons[gNumLinkContestPlayers], (CONTESTANT_COUNT - gNumLinkContestPlayers) * sizeof(struct ContestPokemon)) == 1) gTasks[taskId].data[0]++; } diff --git a/src/contest_util.c b/src/contest_util.c index aae05d531d17..66a666264c20 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1194,16 +1194,16 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) for (i = 1; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) spriteTilePtrs[i] = (void*)(gSprites[sprite->data[i - 1]].oam.tileNum * 32 + OBJ_VRAM0); - + for (i = 0; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) CpuFill32(0, spriteTilePtrs[i], 0x400); - + dst = spriteTilePtrs[0]; CpuCopy32(src, dst, 0x20); CpuCopy32(src + 128, dst + 0x100, 0x20); CpuCopy32(src + 128, dst + 0x200, 0x20); CpuCopy32(src + 64, dst + 0x300, 0x20); - + for (i = 0; i < strWidth; i++) { dst = &spriteTilePtrs[(i + 1) / 8][((i + 1) % 8) * 32]; @@ -1236,7 +1236,7 @@ static void CreateResultsTextWindowSprites(void) LoadSpriteSheet(&sSpriteSheets_ResultsTextWindow[i]); LoadSpritePalette(&sSpritePalette_ResultsTextWindow); - + // Create sprites for the two window types, each made up of 4 sprites for (i = 0; i < (int)ARRAY_COUNT(sSpriteSheets_ResultsTextWindow); i++) { diff --git a/src/credits.c b/src/credits.c index 3ea51f743e8b..519cfe39e369 100644 --- a/src/credits.c +++ b/src/credits.c @@ -759,7 +759,7 @@ static void Task_UpdatePage(u8 taskId) for (i = 0; i < ENTRIES_PER_PAGE; i++) PrintCreditsText( sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->text, - 5 + i * 16, + 5 + i * 16, sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->isTitle); CopyWindowToVram(0, 2); @@ -911,9 +911,9 @@ static void Task_ShowMons(u8 taskId) case 2: if (sCreditsData->imgCounter == NUM_MON_SLIDES || gTasks[gTasks[taskId].tMainTaskId].func != Task_CreditsMain) break; - spriteId = CreateCreditsMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], - sMonSpritePos[sCreditsData->nextImgPos][0], - sMonSpritePos[sCreditsData->nextImgPos][1], + spriteId = CreateCreditsMonSprite(sCreditsData->monToShow[sCreditsData->currShownMon], + sMonSpritePos[sCreditsData->nextImgPos][0], + sMonSpritePos[sCreditsData->nextImgPos][1], sCreditsData->nextImgPos); if (sCreditsData->currShownMon < sCreditsData->numMonToShow - 1) { @@ -1532,7 +1532,7 @@ static u8 CreateCreditsMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position) static void SpriteCB_CreditsMonBg(struct Sprite *sprite) { - if (gSprites[sprite->sMonSpriteId].data[0] == 10 + if (gSprites[sprite->sMonSpriteId].data[0] == 10 || gIntroCredits_MovingSceneryState != INTROCRED_SCENERY_NORMAL) { DestroySprite(sprite); @@ -1554,7 +1554,7 @@ static void DeterminePokemonToShow(void) u16 page; 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 for (dexNum = 1, j = 0; dexNum < NATIONAL_DEX_COUNT; dexNum++) @@ -1584,7 +1584,7 @@ static void DeterminePokemonToShow(void) // Select a random mon, insert into array page = Random() % sCreditsData->numCaughtMon; sCreditsData->monToShow[j] = sCreditsData->caughtMonIds[page]; - + // Remove the select mon from the array, and condense array entries j++; sCreditsData->caughtMonIds[page] = 0; diff --git a/src/crt0.s b/src/crt0.s index 385e340a578d..835522589c1a 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -52,7 +52,7 @@ GPIOPortReadEnable: @ 80000C8 .4byte gMoveNames .4byte gDecorations - .4byte 0x00001270 @ offsetof(struct SaveBlock1, flags) + .4byte 0x00001270 @ offsetof(struct SaveBlock1, flags) .4byte 0x0000139c @ offsetof(struct SaveBlock1, vars) .4byte 0x00000018 @ offsetof(struct SaveBlock2, pokedex) .4byte 0x00000988 @ offsetof(struct SaveBlock1, seen1) diff --git a/src/data/battle_frontier/apprentice.h b/src/data/battle_frontier/apprentice.h index 144129743e1f..c190ea09b52e 100644 --- a/src/data/battle_frontier/apprentice.h +++ b/src/data/battle_frontier/apprentice.h @@ -934,18 +934,18 @@ static const bool8 sValidApprenticeMoves[MOVES_COUNT] = // WHICH_MOVE has max 5 occurrences, defined as NUM_WHICH_MOVE_QUESTIONS // WHICH_FIRST has max 1 occurrence, lead mon should only be chosen once // WHICH_SPEECH has max 1 occurrence, as the apprentice leaves after its asked -static const u8 sQuestionPossibilities[MAX_APPRENTICE_QUESTIONS] = +static const u8 sQuestionPossibilities[MAX_APPRENTICE_QUESTIONS] = { QUESTION_ID_WHAT_ITEM, - QUESTION_ID_WHAT_ITEM, - QUESTION_ID_WHAT_ITEM, + QUESTION_ID_WHAT_ITEM, + QUESTION_ID_WHAT_ITEM, + QUESTION_ID_WHICH_MOVE, + QUESTION_ID_WHICH_MOVE, + QUESTION_ID_WHICH_MOVE, + QUESTION_ID_WHICH_MOVE, QUESTION_ID_WHICH_MOVE, - QUESTION_ID_WHICH_MOVE, - QUESTION_ID_WHICH_MOVE, - QUESTION_ID_WHICH_MOVE, - QUESTION_ID_WHICH_MOVE, - QUESTION_ID_WHICH_FIRST, - QUESTION_ID_WIN_SPEECH + QUESTION_ID_WHICH_FIRST, + QUESTION_ID_WIN_SPEECH }; static void (* const sApprenticeFunctions[])(void) = diff --git a/src/data/battle_frontier/battle_frontier_exchange_corner.h b/src/data/battle_frontier/battle_frontier_exchange_corner.h index d29dbdc4454a..426285e92ede 100644 --- a/src/data/battle_frontier/battle_frontier_exchange_corner.h +++ b/src/data/battle_frontier/battle_frontier_exchange_corner.h @@ -1,51 +1,51 @@ static const u16 sFrontierExchangeCorner_Decor1[] = -{ - DECOR_KISS_POSTER, - DECOR_KISS_CUSHION, - DECOR_SMOOCHUM_DOLL, - DECOR_TOGEPI_DOLL, - DECOR_MEOWTH_DOLL, - DECOR_CLEFAIRY_DOLL, - DECOR_DITTO_DOLL, - DECOR_CYNDAQUIL_DOLL, - DECOR_CHIKORITA_DOLL, - DECOR_TOTODILE_DOLL, - 0xFFFF +{ + DECOR_KISS_POSTER, + DECOR_KISS_CUSHION, + DECOR_SMOOCHUM_DOLL, + DECOR_TOGEPI_DOLL, + DECOR_MEOWTH_DOLL, + DECOR_CLEFAIRY_DOLL, + DECOR_DITTO_DOLL, + DECOR_CYNDAQUIL_DOLL, + DECOR_CHIKORITA_DOLL, + DECOR_TOTODILE_DOLL, + 0xFFFF }; static const u16 sFrontierExchangeCorner_Decor2[] = -{ - DECOR_LAPRAS_DOLL, - DECOR_SNORLAX_DOLL, - DECOR_VENUSAUR_DOLL, - DECOR_CHARIZARD_DOLL, - DECOR_BLASTOISE_DOLL, - 0xFFFF +{ + DECOR_LAPRAS_DOLL, + DECOR_SNORLAX_DOLL, + DECOR_VENUSAUR_DOLL, + DECOR_CHARIZARD_DOLL, + DECOR_BLASTOISE_DOLL, + 0xFFFF }; static const u16 sFrontierExchangeCorner_Vitamins[] = -{ - ITEM_PROTEIN, - ITEM_CALCIUM, - ITEM_IRON, - ITEM_ZINC, - ITEM_CARBOS, - ITEM_HP_UP, - 0xFFFF +{ + ITEM_PROTEIN, + ITEM_CALCIUM, + ITEM_IRON, + ITEM_ZINC, + ITEM_CARBOS, + ITEM_HP_UP, + 0xFFFF }; static const u16 sFrontierExchangeCorner_HoldItems[] = -{ - ITEM_LEFTOVERS, - ITEM_WHITE_HERB, - ITEM_QUICK_CLAW, - ITEM_MENTAL_HERB, - ITEM_BRIGHT_POWDER, - ITEM_CHOICE_BAND, - ITEM_KINGS_ROCK, - ITEM_FOCUS_BAND, - ITEM_SCOPE_LENS, - 0xFFFF +{ + ITEM_LEFTOVERS, + ITEM_WHITE_HERB, + ITEM_QUICK_CLAW, + ITEM_MENTAL_HERB, + ITEM_BRIGHT_POWDER, + ITEM_CHOICE_BAND, + ITEM_KINGS_ROCK, + ITEM_FOCUS_BAND, + ITEM_SCOPE_LENS, + 0xFFFF }; static const u8 *const sFrontierExchangeCorner_Decor1Descriptions[] = @@ -63,7 +63,7 @@ static const u8 *const sFrontierExchangeCorner_Decor1Descriptions[] = gText_Exit, }; -static const u8 *const sFrontierExchangeCorner_Decor2Descriptions[] = +static const u8 *const sFrontierExchangeCorner_Decor2Descriptions[] = { BattleFrontier_ExchangeServiceCorner_Text_LargeDollDesc, BattleFrontier_ExchangeServiceCorner_Text_LargeDollDesc, @@ -73,7 +73,7 @@ static const u8 *const sFrontierExchangeCorner_Decor2Descriptions[] = gText_Exit }; -static const u8 *const sFrontierExchangeCorner_VitaminsDescriptions[] = +static const u8 *const sFrontierExchangeCorner_VitaminsDescriptions[] = { BattleFrontier_ExchangeServiceCorner_Text_ProteinDesc, BattleFrontier_ExchangeServiceCorner_Text_CalciumDesc, @@ -84,7 +84,7 @@ static const u8 *const sFrontierExchangeCorner_VitaminsDescriptions[] = gText_Exit }; -static const u8 *const sFrontierExchangeCorner_HoldItemsDescriptions[] = +static const u8 *const sFrontierExchangeCorner_HoldItemsDescriptions[] = { BattleFrontier_ExchangeServiceCorner_Text_LeftoversDesc, BattleFrontier_ExchangeServiceCorner_Text_WhiteHerbDesc, diff --git a/src/data/battle_frontier/battle_frontier_trainer_mons.h b/src/data/battle_frontier/battle_frontier_trainer_mons.h index 183964f2d9ca..efd9ef84dd66 100644 --- a/src/data/battle_frontier/battle_frontier_trainer_mons.h +++ b/src/data/battle_frontier/battle_frontier_trainer_mons.h @@ -343,7 +343,7 @@ FRONTIER_MON_SPINDA, \ FRONTIER_MON_CORSOLA, \ FRONTIER_MON_POLIWHIRL, \ - -1 + -1 #define FRONTIER_MONS_POKEFAN_M_1 \ FRONTIER_MON_SMOOCHUM, \ @@ -532,7 +532,7 @@ FRONTIER_MON_LEDIAN, \ FRONTIER_MON_ARIADOS, \ FRONTIER_MON_YANMA, \ - -1 + -1 #define FRONTIER_MONS_BUG_MANIAC_1 \ FRONTIER_MON_SHEDINJA, \ @@ -565,7 +565,7 @@ FRONTIER_MON_LEDIAN, \ FRONTIER_MON_ARIADOS, \ FRONTIER_MON_YANMA, \ - -1 + -1 #define FRONTIER_MONS_FISHERMAN_1 \ FRONTIER_MON_MAGIKARP, \ @@ -612,7 +612,7 @@ FRONTIER_MON_CORSOLA, \ FRONTIER_MON_MAWILE, \ FRONTIER_MON_ONIX, \ - -1 + -1 #define FRONTIER_MONS_PARASOL_LADY_1 \ FRONTIER_MON_SUNKERN, \ @@ -697,7 +697,7 @@ FRONTIER_MON_ELEKID, \ FRONTIER_MON_FLAAFFY, \ FRONTIER_MON_MAWILE, \ - -1 + -1 #define FRONTIER_MONS_BIRD_KEEPER_1 \ FRONTIER_MON_AZURILL, \ @@ -769,7 +769,7 @@ FRONTIER_MON_CORSOLA, \ FRONTIER_MON_POLIWHIRL, \ FRONTIER_MON_ONIX, \ - -1 + -1 #define FRONTIER_MONS_HIKER_1 \ FRONTIER_MON_TYROGUE, \ @@ -799,7 +799,7 @@ FRONTIER_MON_LOUDRED, \ FRONTIER_MON_NOSEPASS, \ FRONTIER_MON_ONIX, \ - -1 + -1 #define FRONTIER_MONS_KINDLER_1 \ FRONTIER_MON_SLUGMA, \ @@ -823,7 +823,7 @@ FRONTIER_MON_NOSEPASS, \ FRONTIER_MON_MAWILE, \ FRONTIER_MON_ONIX, \ - -1 + -1 #define FRONTIER_MONS_RUNNING_TRIATHLETE_1 \ FRONTIER_MON_AZURILL, \ @@ -870,7 +870,7 @@ FRONTIER_MON_LOUDRED, \ FRONTIER_MON_SPINDA, \ FRONTIER_MON_ONIX, \ - -1 + -1 #define FRONTIER_MONS_SWIMMING_TRIATHLETE_1 \ FRONTIER_MON_TYROGUE, \ @@ -905,7 +905,7 @@ FRONTIER_MON_SPINDA, \ FRONTIER_MON_CORSOLA, \ FRONTIER_MON_POLIWHIRL, \ - -1 + -1 #define FRONTIER_MONS_CYCLING_TRIATHLETE_1 \ FRONTIER_MON_PICHU, \ @@ -937,7 +937,7 @@ FRONTIER_MON_SPINDA, \ FRONTIER_MON_FLAAFFY, \ FRONTIER_MON_MAWILE, \ - -1 + -1 #define FRONTIER_MONS_RUNNING_TRIATHLETE_2 \ FRONTIER_MON_DELCATTY_1, \ @@ -974,7 +974,7 @@ FRONTIER_MON_STANTLER_1, \ FRONTIER_MON_PIDGEOT_1, \ FRONTIER_MON_SCYTHER_1, \ - -1 + -1 #define FRONTIER_MONS_SWIMMING_TRIATHLETE_2 \ FRONTIER_MON_WAILMER_1, \ @@ -1008,7 +1008,7 @@ FRONTIER_MON_POLIWRATH_1, \ FRONTIER_MON_POLITOED_1, \ FRONTIER_MON_CLOYSTER_1, \ - -1 + -1 #define FRONTIER_MONS_CYCLING_TRIATHLETE_2 \ FRONTIER_MON_DELCATTY_1, \ @@ -1042,7 +1042,7 @@ FRONTIER_MON_MAGNETON_1, \ FRONTIER_MON_STANTLER_1, \ FRONTIER_MON_PIDGEOT_1, \ - -1 + -1 #define FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 \ FRONTIER_MON_LICKITUNG_1, \ @@ -1085,7 +1085,7 @@ FRONTIER_MON_TORKOAL_1, \ FRONTIER_MON_CACTURNE_1, \ FRONTIER_MON_POLIWRATH_1, \ - -1 + -1 #define FRONTIER_MONS_EXPERT_1A \ FRONTIER_MON_DELCATTY_1, \ @@ -1126,7 +1126,7 @@ FRONTIER_MON_RATICATE_1, \ FRONTIER_MON_MASQUERAIN_1, \ FRONTIER_MON_FURRET_1, \ - -1 + -1 #define FRONTIER_MONS_EXPERT_1B \ FRONTIER_MON_DUNSPARCE_1, \ @@ -1166,7 +1166,7 @@ FRONTIER_MON_HITMONCHAN_1, \ FRONTIER_MON_GIRAFARIG_1, \ FRONTIER_MON_HITMONTOP_1, \ - -1 + -1 #define FRONTIER_MONS_EXPERT_1C \ FRONTIER_MON_BANETTE_1, \ @@ -1199,7 +1199,7 @@ FRONTIER_MON_PINSIR_1, \ FRONTIER_MON_POLITOED_1, \ FRONTIER_MON_CLOYSTER_1, \ - -1 + -1 #define FRONTIER_MONS_PSYCHIC_1 \ FRONTIER_MON_DELCATTY_2, \ @@ -1235,7 +1235,7 @@ FRONTIER_MON_CACTURNE_2, \ FRONTIER_MON_GOREBYSS_2, \ FRONTIER_MON_POLITOED_2, \ - -1 + -1 #define FRONTIER_MONS_HEX_MANIAC_1 \ FRONTIER_MON_SABLEYE_2, \ @@ -1265,7 +1265,7 @@ FRONTIER_MON_CRAWDAUNT_2, \ FRONTIER_MON_GRUMPIG_2, \ FRONTIER_MON_CACTURNE_2, \ - -1 + -1 #define FRONTIER_MONS_POKEMANIAC_1 \ FRONTIER_MON_LICKITUNG_2, \ @@ -1299,7 +1299,7 @@ FRONTIER_MON_MANTINE_2, \ FRONTIER_MON_SWALOT_2, \ FRONTIER_MON_TORKOAL_2, \ - -1 + -1 #define FRONTIER_MONS_GENTLEMAN_1A \ FRONTIER_MON_DELCATTY_2, \ @@ -1340,7 +1340,7 @@ FRONTIER_MON_RATICATE_2, \ FRONTIER_MON_MASQUERAIN_2, \ FRONTIER_MON_FURRET_2, \ - -1 + -1 #define FRONTIER_MONS_GENTLEMAN_1B \ FRONTIER_MON_DUNSPARCE_2, \ @@ -1380,7 +1380,7 @@ FRONTIER_MON_HITMONCHAN_2, \ FRONTIER_MON_GIRAFARIG_2, \ FRONTIER_MON_HITMONTOP_2, \ - -1 + -1 #define FRONTIER_MONS_BUG_MANIAC_2 \ FRONTIER_MON_LEDIAN, \ @@ -1402,7 +1402,7 @@ FRONTIER_MON_NINJASK_2, \ FRONTIER_MON_SCYTHER_2, \ FRONTIER_MON_PINSIR_2, \ - -1 + -1 #define FRONTIER_MONS_RUIN_MANIAC_2 \ FRONTIER_MON_GRAVELER_2, \ @@ -1427,7 +1427,7 @@ FRONTIER_MON_RELICANTH_2, \ FRONTIER_MON_OMASTAR_2, \ FRONTIER_MON_KABUTOPS_2, \ - -1 + -1 #define FRONTIER_MONS_COLLECTOR_1 \ FRONTIER_MON_BANETTE_2, \ @@ -1460,7 +1460,7 @@ FRONTIER_MON_PINSIR_2, \ FRONTIER_MON_POLITOED_2, \ FRONTIER_MON_CLOYSTER_2, \ - -1 + -1 #define FRONTIER_MONS_PARASOL_LADY_2 \ FRONTIER_MON_GLOOM_2, \ @@ -1475,7 +1475,7 @@ FRONTIER_MON_HUNTAIL_2, \ FRONTIER_MON_GOREBYSS_2, \ FRONTIER_MON_OMASTAR_2, \ - -1 + -1 #define FRONTIER_MONS_BEAUTY_1 \ FRONTIER_MON_DELCATTY_2, \ @@ -1509,7 +1509,7 @@ FRONTIER_MON_STANTLER_2, \ FRONTIER_MON_SWALOT_2, \ FRONTIER_MON_PIDGEOT_2, \ - -1 + -1 #define FRONTIER_MONS_AROMA_LADY_2 \ FRONTIER_MON_WEEPINBELL_2, \ @@ -1530,7 +1530,7 @@ FRONTIER_MON_GRUMPIG_2, \ FRONTIER_MON_CACTURNE_2, \ FRONTIER_MON_BELLOSSOM_2, \ - -1 + -1 #define FRONTIER_MONS_COOLTRAINER_1A \ FRONTIER_MON_DUGTRIO_1, \ @@ -1566,7 +1566,7 @@ FRONTIER_MON_GOLEM_1, \ FRONTIER_MON_RHYDON_1, \ FRONTIER_MON_ALAKAZAM_1, \ - -1 + -1 #define FRONTIER_MONS_COOLTRAINER_1B \ FRONTIER_MON_WEEZING_1, \ @@ -1602,7 +1602,7 @@ FRONTIER_MON_AERODACTYL_1, \ FRONTIER_MON_PORYGON2_1, \ FRONTIER_MON_GARDEVOIR_1, \ - -1 + -1 #define FRONTIER_MONS_COOLTRAINER_1C \ FRONTIER_MON_EXEGGUTOR_1, \ @@ -1635,7 +1635,7 @@ FRONTIER_MON_SALAMENCE_1, \ FRONTIER_MON_METAGROSS_1, \ FRONTIER_MON_SLAKING_1, \ - -1 + -1 #define FRONTIER_MONS_PKMN_RANGER_1 \ FRONTIER_MON_NINJASK_1, \ @@ -1767,7 +1767,7 @@ FRONTIER_MON_SALAMENCE_1, \ FRONTIER_MON_METAGROSS_1, \ FRONTIER_MON_SLAKING_1, \ - -1 + -1 #define FRONTIER_MONS_PKMN_BREEDER_F_1 \ FRONTIER_MON_DUGTRIO_1, \ @@ -1818,7 +1818,7 @@ FRONTIER_MON_ARMALDO_1, \ FRONTIER_MON_GOLDUCK_1, \ FRONTIER_MON_RAPIDASH_1, \ - -1 + -1 // Odd, all the other Youngster/Lass trainers of this group have Dugtrio, but one does not #define FRONTIER_MONS_YOUNGSTER_LASS_2_NO_DUGTRIO \ @@ -1854,7 +1854,7 @@ FRONTIER_MON_GOLEM_2, \ FRONTIER_MON_RHYDON_2, \ FRONTIER_MON_ALAKAZAM_2, \ - -1 + -1 #define FRONTIER_MONS_YOUNGSTER_LASS_2 \ FRONTIER_MON_DUGTRIO_2, \ @@ -1927,7 +1927,7 @@ FRONTIER_MON_SALAMENCE_2, \ FRONTIER_MON_METAGROSS_2, \ FRONTIER_MON_SLAKING_2, \ - -1 + -1 #define FRONTIER_MONS_BUG_CATCHER_2 \ FRONTIER_MON_NINJASK_2, \ @@ -1953,7 +1953,7 @@ FRONTIER_MON_VENUSAUR_2, \ FRONTIER_MON_MEGANIUM_2, \ FRONTIER_MON_SCEPTILE_2, \ - -1 + -1 #define FRONTIER_MONS_NINJA_BOY_2 \ FRONTIER_MON_PARASECT_2, \ @@ -1988,7 +1988,7 @@ FRONTIER_MON_VENUSAUR_2, \ FRONTIER_MON_ESPEON_2, \ FRONTIER_MON_CROBAT_2, \ - -1 + -1 #define FRONTIER_MONS_TUBER_2 \ FRONTIER_MON_QUAGSIRE_2, \ @@ -2068,7 +2068,7 @@ FRONTIER_MON_WAILORD_3, \ FRONTIER_MON_TENTACRUEL_3, \ FRONTIER_MON_STARMIE_3, \ - -1 + -1 #define FRONTIER_MONS_RUIN_MANIAC_3 \ FRONTIER_MON_DUGTRIO_3, \ @@ -2093,7 +2093,7 @@ FRONTIER_MON_AGGRON_3, \ FRONTIER_MON_SWAMPERT_3, \ FRONTIER_MON_METAGROSS_3, \ - -1 + -1 #define FRONTIER_MONS_COLLECTOR_2 \ FRONTIER_MON_DUGTRIO_3, \ @@ -2144,7 +2144,7 @@ FRONTIER_MON_ARMALDO_3, \ FRONTIER_MON_GOLDUCK_3, \ FRONTIER_MON_RAPIDASH_3, \ - -1 + -1 #define FRONTIER_MONS_GUITARIST_2 \ FRONTIER_MON_SABLEYE_2, \ @@ -2162,7 +2162,7 @@ FRONTIER_MON_HOUNDOOM_3, \ FRONTIER_MON_JOLTEON_3, \ FRONTIER_MON_UMBREON_3, \ - -1 + -1 #define FRONTIER_MONS_BIRD_KEEPER_2 \ FRONTIER_MON_MURKROW_2, \ @@ -2234,7 +2234,7 @@ FRONTIER_MON_AERODACTYL_3, \ FRONTIER_MON_AGGRON_3, \ FRONTIER_MON_BLAZIKEN_3, \ - -1 + -1 #define FRONTIER_MONS_KINDLER_2 \ FRONTIER_MON_GRANBULL_3, \ @@ -2256,7 +2256,7 @@ FRONTIER_MON_BLISSEY_3, \ FRONTIER_MON_ARCANINE_3, \ FRONTIER_MON_SLAKING_3, \ - -1 + -1 #define FRONTIER_MONS_GENTLEMAN_2 \ FRONTIER_MON_MUK_3, \ @@ -2307,7 +2307,7 @@ FRONTIER_MON_SALAMENCE_3, \ FRONTIER_MON_METAGROSS_3, \ FRONTIER_MON_SLAKING_3, \ - -1 + -1 #define FRONTIER_MONS_YOUNGSTER_LASS_3 \ FRONTIER_MON_DUGTRIO_4, \ @@ -2343,7 +2343,7 @@ FRONTIER_MON_GOLEM_4, \ FRONTIER_MON_RHYDON_4, \ FRONTIER_MON_ALAKAZAM_4, \ - -1 + -1 #define FRONTIER_MONS_CAMPER_PICNICKER_2 \ FRONTIER_MON_WEEZING_4, \ @@ -2417,7 +2417,7 @@ FRONTIER_MON_BLISSEY_4, \ FRONTIER_MON_MILOTIC_4, \ FRONTIER_MON_SLAKING_4, \ - -1 + -1 #define FRONTIER_MONS_SWIMMER_F_2 \ FRONTIER_MON_GRANBULL_4, \ @@ -3017,7 +3017,7 @@ FRONTIER_MON_MANECTRIC_4, \ FRONTIER_MON_VILEPLUME_4, \ FRONTIER_MON_VICTREEBEL_4, \ - -1 + -1 #define FRONTIER_MONS_COOLTRAINER_F_2B \ FRONTIER_MON_ELECTRODE_1, \ @@ -3418,7 +3418,7 @@ FRONTIER_MON_SALAMENCE_2, \ FRONTIER_MON_METAGROSS_2, \ FRONTIER_MON_SLAKING_2, \ - -1 + -1 // Similar to FRONTIER_MONS_GENERAL_C but _1 (would be identical if not for re-ordering) // Used by Pkmn Ranger, Running Triathlete, Cycling Triathlete @@ -4066,7 +4066,7 @@ FRONTIER_MON_TYRANITAR_8, \ FRONTIER_MON_TYRANITAR_9, \ FRONTIER_MON_TYRANITAR_10, \ - -1 + -1 // For this group, Expert M uses Tyranitar, Expert F uses Dragonite #define FRONTIER_MONS_EXPERT_2C(lastmon) \ @@ -4170,7 +4170,7 @@ FRONTIER_MON_##lastmon##_8, \ FRONTIER_MON_##lastmon##_9, \ FRONTIER_MON_##lastmon##_10,\ - -1 + -1 // The strong Psychic M/F trainers all use the below pokemon // Additionally they use 1 of 3 legendary trios, and Latios or Latias depending on gender @@ -4270,7 +4270,7 @@ FRONTIER_MON_ZAPDOS_6, \ FRONTIER_MON_MOLTRES_5, \ FRONTIER_MON_MOLTRES_6, \ - -1 + -1 #define FRONTIER_MONS_PSYCHIC_2B(lati) \ FRONTIER_MONS_PSYCHIC_2(lati, RAIKOU, ENTEI, SUICUNE) \ @@ -4284,7 +4284,7 @@ FRONTIER_MON_ENTEI_6, \ FRONTIER_MON_SUICUNE_5, \ FRONTIER_MON_SUICUNE_6, \ - -1 + -1 // Because the regis/latis are swapped here they cant all be merged into the same macro and match #define FRONTIER_MONS_PSYCHIC_2C(lati) \ @@ -4299,7 +4299,7 @@ FRONTIER_MON_##lati##_6, \ FRONTIER_MON_##lati##_7, \ FRONTIER_MON_##lati##_8, \ - -1 + -1 #define FRONTIER_MONS_HEX_MANIAC_2A \ FRONTIER_MON_SHARPEDO_2, \ @@ -4332,7 +4332,7 @@ FRONTIER_MON_GENGAR_6, \ FRONTIER_MON_GENGAR_7, \ FRONTIER_MON_GENGAR_8, \ - -1 + -1 #define FRONTIER_MONS_HEX_MANIAC_2B \ FRONTIER_MON_SEVIPER_2, \ @@ -4388,7 +4388,7 @@ FRONTIER_MON_GENGAR_6, \ FRONTIER_MON_GENGAR_7, \ FRONTIER_MON_GENGAR_8, \ - -1 + -1 #define FRONTIER_MONS_HEX_MANIAC_2C \ FRONTIER_MON_SEVIPER_2, \ @@ -4450,7 +4450,7 @@ FRONTIER_MON_GENGAR_6, \ FRONTIER_MON_GENGAR_7, \ FRONTIER_MON_GENGAR_8, \ - -1 + -1 // For whatever reason FRONTIER_MON_MAROWAK_2 is in a different order than _1 _3 and _4 // This order change is the only difference btween FRONITER_MONS_POKEMANIAC_2A and FRONTIER_MONS_POKEMANIAC_2B other than the numbered suffixes @@ -4542,7 +4542,7 @@ FRONTIER_MON_TYRANITAR_8, \ FRONTIER_MON_TYRANITAR_9, \ FRONTIER_MON_TYRANITAR_10, \ - -1 + -1 #define FRONTIER_MONS_POKEMANIAC_2B \ FRONTIER_MON_ZANGOOSE_2, \ @@ -4828,7 +4828,7 @@ FRONTIER_MON_TYRANITAR_8, \ FRONTIER_MON_TYRANITAR_9, \ FRONTIER_MON_TYRANITAR_10, \ - -1 + -1 // Identical to FRONTIER_MONS_COOLTRAINER_2D but with both latias and latios #define FRONTIER_MONS_GENTLEMAN_3B \ @@ -4922,7 +4922,7 @@ FRONTIER_MON_ENTEI_6, \ FRONTIER_MON_SUICUNE_5, \ FRONTIER_MON_SUICUNE_6, \ - -1 + -1 #define FRONTIER_MONS_SWIMMING_TRIATHLETE_M_3 \ FRONTIER_MON_SNEASEL_2, \ @@ -5005,7 +5005,7 @@ FRONTIER_MON_LAPRAS_6, \ FRONTIER_MON_LAPRAS_7, \ FRONTIER_MON_LAPRAS_8, \ - -1 + -1 #define FRONTIER_MONS_SWIMMING_TRIATHLETE_F_3 \ FRONTIER_MON_SNEASEL_2, \ @@ -5119,7 +5119,7 @@ FRONTIER_MON_SCIZOR_4, \ FRONTIER_MON_HERACROSS_4, \ FRONTIER_MON_SHUCKLE_4, \ - -1 + -1 #define FRONTIER_MONS_FISHERMAN_3 \ FRONTIER_MON_SEAKING_2, \ @@ -5229,7 +5229,7 @@ FRONTIER_MON_REGICE_6, \ FRONTIER_MON_REGISTEEL_5, \ FRONTIER_MON_REGISTEEL_6, \ - -1 + -1 #define FRONTIER_MONS_COLLECTOR_3 \ FRONTIER_MON_VENUSAUR_1, \ @@ -5268,7 +5268,7 @@ FRONTIER_MON_CHARIZARD_4, \ FRONTIER_MON_TYPHLOSION_4, \ FRONTIER_MON_SWAMPERT_4, \ - -1 + -1 #define FRONTIER_MONS_GUITARIST_3A \ FRONTIER_MON_ABSOL_2, \ @@ -5330,7 +5330,7 @@ FRONTIER_MON_ZAPDOS_6, \ FRONTIER_MON_MOLTRES_5, \ FRONTIER_MON_MOLTRES_6, \ - -1 + -1 #define FRONTIER_MONS_GUITARIST_3B \ FRONTIER_MON_MISDREAVUS_1, \ @@ -5368,7 +5368,7 @@ FRONTIER_MON_LATIAS_6, \ FRONTIER_MON_LATIOS_5, \ FRONTIER_MON_LATIOS_6, \ - -1 + -1 #define FRONTIER_MONS_BIRD_KEEPER_3 \ FRONTIER_MON_PIDGEOT_2, \ @@ -5432,7 +5432,7 @@ FRONTIER_MON_SALAMENCE_6, \ FRONTIER_MON_SALAMENCE_7, \ FRONTIER_MON_SALAMENCE_8, \ - -1 + -1 #define FRONTIER_MONS_SAILOR_3 \ FRONTIER_MON_MEDICHAM_1, \ @@ -5515,7 +5515,7 @@ FRONTIER_MON_LAPRAS_6, \ FRONTIER_MON_LAPRAS_7, \ FRONTIER_MON_LAPRAS_8, \ - -1 + -1 #define FRONTIER_MONS_HIKER_3 \ FRONTIER_MON_DUGTRIO_1, \ @@ -5596,7 +5596,7 @@ FRONTIER_MON_TYRANITAR_8, \ FRONTIER_MON_TYRANITAR_9, \ FRONTIER_MON_TYRANITAR_10, \ - -1 + -1 #define FRONTIER_MONS_KINDLER_3 \ FRONTIER_MON_MISDREAVUS_1, \ @@ -5661,7 +5661,7 @@ FRONTIER_MON_DRAGONITE_8, \ FRONTIER_MON_DRAGONITE_9, \ FRONTIER_MON_DRAGONITE_10, \ - -1 + -1 #define FRONTIER_MONS_PARASOL_LADY_3 \ FRONTIER_MON_GLALIE_1, \ @@ -5699,7 +5699,7 @@ FRONTIER_MON_HOUNDOOM_4, \ FRONTIER_MON_VENUSAUR_4, \ FRONTIER_MON_FLAREON_4, \ - -1 + -1 // Only used by one Beauty #define FRONTIER_MONS_EEVEELUTIONS \ @@ -5723,7 +5723,7 @@ FRONTIER_MON_FLAREON_4, \ FRONTIER_MON_ESPEON_4, \ FRONTIER_MON_UMBREON_4, \ - -1 + -1 #define FRONTIER_MONS_BEAUTY_2 \ FRONTIER_MON_JYNX_1, \ @@ -5765,7 +5765,7 @@ FRONTIER_MON_LAPRAS_8, \ FRONTIER_MON_SALAMENCE_8, \ FRONTIER_MON_LATIAS_6, \ - -1 + -1 #define FRONTIER_MONS_AROMA_LADY_3 \ FRONTIER_MON_WOBBUFFET_1, \ @@ -5863,1507 +5863,1507 @@ FRONTIER_MON_STARMIE_6, \ FRONTIER_MON_STARMIE_7, \ FRONTIER_MON_STARMIE_8, \ - -1 + -1 -const u16 gBattleFrontierTrainerMons_Brady[] = +const u16 gBattleFrontierTrainerMons_Brady[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Conner[] = +const u16 gBattleFrontierTrainerMons_Conner[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Bradley[] = +const u16 gBattleFrontierTrainerMons_Bradley[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Cybil[] = +const u16 gBattleFrontierTrainerMons_Cybil[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Rodette[] = +const u16 gBattleFrontierTrainerMons_Rodette[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Peggy[] = +const u16 gBattleFrontierTrainerMons_Peggy[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Keith[] = +const u16 gBattleFrontierTrainerMons_Keith[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Grayson[] = +const u16 gBattleFrontierTrainerMons_Grayson[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Glenn[] = +const u16 gBattleFrontierTrainerMons_Glenn[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Liliana[] = +const u16 gBattleFrontierTrainerMons_Liliana[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Elise[] = +const u16 gBattleFrontierTrainerMons_Elise[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Zoey[] = +const u16 gBattleFrontierTrainerMons_Zoey[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Manuel[] = +const u16 gBattleFrontierTrainerMons_Manuel[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Russ[] = +const u16 gBattleFrontierTrainerMons_Russ[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Dustin[] = +const u16 gBattleFrontierTrainerMons_Dustin[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Tina[] = +const u16 gBattleFrontierTrainerMons_Tina[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Gillian[] = +const u16 gBattleFrontierTrainerMons_Gillian[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Zoe[] = +const u16 gBattleFrontierTrainerMons_Zoe[] = { FRONTIER_MONS_RICH_BOY_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Chen[] = +const u16 gBattleFrontierTrainerMons_Chen[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Al[] = +const u16 gBattleFrontierTrainerMons_Al[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Mitch[] = +const u16 gBattleFrontierTrainerMons_Mitch[] = { - FRONTIER_MONS_CAMPER_PICNICKER_1 + FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Anne[] = +const u16 gBattleFrontierTrainerMons_Anne[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Alize[] = +const u16 gBattleFrontierTrainerMons_Alize[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Lauren[] = +const u16 gBattleFrontierTrainerMons_Lauren[] = { - FRONTIER_MONS_CAMPER_PICNICKER_1 + FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Kipp[] = +const u16 gBattleFrontierTrainerMons_Kipp[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_Jason[] = +const u16 gBattleFrontierTrainerMons_Jason[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_John[] = +const u16 gBattleFrontierTrainerMons_John[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_Ann[] = +const u16 gBattleFrontierTrainerMons_Ann[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_Eileen[] = +const u16 gBattleFrontierTrainerMons_Eileen[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_Carlie[] = +const u16 gBattleFrontierTrainerMons_Carlie[] = { FRONTIER_MONS_TUBER_1 }; -const u16 gBattleFrontierTrainerMons_Gordon[] = +const u16 gBattleFrontierTrainerMons_Gordon[] = { FRONTIER_MONS_SWIMMER_M_1 }; -const u16 gBattleFrontierTrainerMons_Ayden[] = +const u16 gBattleFrontierTrainerMons_Ayden[] = { FRONTIER_MONS_SWIMMER_M_1 }; -const u16 gBattleFrontierTrainerMons_Marco[] = +const u16 gBattleFrontierTrainerMons_Marco[] = { FRONTIER_MONS_SWIMMER_M_1 }; -const u16 gBattleFrontierTrainerMons_Cierra[] = +const u16 gBattleFrontierTrainerMons_Cierra[] = { FRONTIER_MONS_SWIMMER_F_1 }; -const u16 gBattleFrontierTrainerMons_Marcy[] = +const u16 gBattleFrontierTrainerMons_Marcy[] = { FRONTIER_MONS_SWIMMER_F_1 }; -const u16 gBattleFrontierTrainerMons_Kathy[] = +const u16 gBattleFrontierTrainerMons_Kathy[] = { FRONTIER_MONS_SWIMMER_F_1 }; -const u16 gBattleFrontierTrainerMons_Peyton[] = +const u16 gBattleFrontierTrainerMons_Peyton[] = { FRONTIER_MONS_POKEFAN_M_1 }; -const u16 gBattleFrontierTrainerMons_Julian[] = +const u16 gBattleFrontierTrainerMons_Julian[] = { FRONTIER_MONS_POKEFAN_M_1 }; -const u16 gBattleFrontierTrainerMons_Quinn[] = +const u16 gBattleFrontierTrainerMons_Quinn[] = { FRONTIER_MONS_POKEFAN_M_1 }; -const u16 gBattleFrontierTrainerMons_Haylee[] = +const u16 gBattleFrontierTrainerMons_Haylee[] = { - FRONTIER_MONS_POKEFAN_F_1 + FRONTIER_MONS_POKEFAN_F_1 }; -const u16 gBattleFrontierTrainerMons_Amanda[] = +const u16 gBattleFrontierTrainerMons_Amanda[] = { - FRONTIER_MONS_POKEFAN_F_1 + FRONTIER_MONS_POKEFAN_F_1 }; -const u16 gBattleFrontierTrainerMons_Stacy[] = +const u16 gBattleFrontierTrainerMons_Stacy[] = { FRONTIER_MONS_POKEFAN_F_1 }; // The below 6 are the early Pkmn Breeder class trainers, which use groups from other general classes -const u16 gBattleFrontierTrainerMons_Rafael[] = +const u16 gBattleFrontierTrainerMons_Rafael[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Oliver[] = +const u16 gBattleFrontierTrainerMons_Oliver[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Payton[] = +const u16 gBattleFrontierTrainerMons_Payton[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Pamela[] = +const u16 gBattleFrontierTrainerMons_Pamela[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Eliza[] = +const u16 gBattleFrontierTrainerMons_Eliza[] = { - FRONTIER_MONS_SCHOOL_KID_1 + FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Marisa[] = +const u16 gBattleFrontierTrainerMons_Marisa[] = { - FRONTIER_MONS_CAMPER_PICNICKER_1 + FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Lewis[] = +const u16 gBattleFrontierTrainerMons_Lewis[] = { FRONTIER_MONS_BUG_CATCHER_1_EXTRA(METAPOD, KAKUNA) }; -const u16 gBattleFrontierTrainerMons_Yoshi[] = +const u16 gBattleFrontierTrainerMons_Yoshi[] = { - FRONTIER_MONS_BUG_CATCHER_1_EXTRA(SILCOON, CASCOON) + FRONTIER_MONS_BUG_CATCHER_1_EXTRA(SILCOON, CASCOON) }; -const u16 gBattleFrontierTrainerMons_Destin[] = +const u16 gBattleFrontierTrainerMons_Destin[] = { FRONTIER_MONS_BUG_CATCHER_1 }; -const u16 gBattleFrontierTrainerMons_Keon[] = +const u16 gBattleFrontierTrainerMons_Keon[] = { FRONTIER_MONS_NINJA_BOY_1 }; -const u16 gBattleFrontierTrainerMons_Stuart[] = +const u16 gBattleFrontierTrainerMons_Stuart[] = { FRONTIER_MONS_NINJA_BOY_1 }; -const u16 gBattleFrontierTrainerMons_Nestor[] = +const u16 gBattleFrontierTrainerMons_Nestor[] = { - FRONTIER_MONS_NINJA_BOY_1 + FRONTIER_MONS_NINJA_BOY_1 }; -const u16 gBattleFrontierTrainerMons_Derrick[] = +const u16 gBattleFrontierTrainerMons_Derrick[] = { FRONTIER_MONS_BUG_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Bryson[] = +const u16 gBattleFrontierTrainerMons_Bryson[] = { FRONTIER_MONS_BUG_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Clayton[] = +const u16 gBattleFrontierTrainerMons_Clayton[] = { FRONTIER_MONS_BUG_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Trenton[] = +const u16 gBattleFrontierTrainerMons_Trenton[] = { - FRONTIER_MONS_FISHERMAN_1 + FRONTIER_MONS_FISHERMAN_1 }; -const u16 gBattleFrontierTrainerMons_Jenson[] = +const u16 gBattleFrontierTrainerMons_Jenson[] = { FRONTIER_MONS_FISHERMAN_1 }; -const u16 gBattleFrontierTrainerMons_Wesley[] = +const u16 gBattleFrontierTrainerMons_Wesley[] = { FRONTIER_MONS_FISHERMAN_1 }; -const u16 gBattleFrontierTrainerMons_Anton[] = +const u16 gBattleFrontierTrainerMons_Anton[] = { FRONTIER_MONS_RUIN_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Lawson[] = +const u16 gBattleFrontierTrainerMons_Lawson[] = { FRONTIER_MONS_RUIN_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Sammy[] = +const u16 gBattleFrontierTrainerMons_Sammy[] = { FRONTIER_MONS_RUIN_MANIAC_1 }; // The below 3 are the early Collector class trainers, which use groups from other general classes -const u16 gBattleFrontierTrainerMons_Arnie[] = +const u16 gBattleFrontierTrainerMons_Arnie[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Adrian[] = +const u16 gBattleFrontierTrainerMons_Adrian[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Tristan[] = +const u16 gBattleFrontierTrainerMons_Tristan[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Juliana[] = +const u16 gBattleFrontierTrainerMons_Juliana[] = { FRONTIER_MONS_PARASOL_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Rylee[] = +const u16 gBattleFrontierTrainerMons_Rylee[] = { FRONTIER_MONS_PARASOL_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Chelsea[] = +const u16 gBattleFrontierTrainerMons_Chelsea[] = { FRONTIER_MONS_PARASOL_LADY_1 }; // The below 3 are the early Beauty class trainers, which use groups from other general classes -const u16 gBattleFrontierTrainerMons_Danela[] = +const u16 gBattleFrontierTrainerMons_Danela[] = { FRONTIER_MONS_YOUNGSTER_LASS_1 }; -const u16 gBattleFrontierTrainerMons_Lizbeth[] = +const u16 gBattleFrontierTrainerMons_Lizbeth[] = { FRONTIER_MONS_SCHOOL_KID_1 }; -const u16 gBattleFrontierTrainerMons_Amelia[] = +const u16 gBattleFrontierTrainerMons_Amelia[] = { FRONTIER_MONS_CAMPER_PICNICKER_1 }; -const u16 gBattleFrontierTrainerMons_Jillian[] = +const u16 gBattleFrontierTrainerMons_Jillian[] = { - FRONTIER_MONS_AROMA_LADY_1 + FRONTIER_MONS_AROMA_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Abbie[] = +const u16 gBattleFrontierTrainerMons_Abbie[] = { - FRONTIER_MONS_AROMA_LADY_1 + FRONTIER_MONS_AROMA_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Briana[] = +const u16 gBattleFrontierTrainerMons_Briana[] = { FRONTIER_MONS_AROMA_LADY_1 }; -const u16 gBattleFrontierTrainerMons_Antonio[] = +const u16 gBattleFrontierTrainerMons_Antonio[] = { FRONTIER_MONS_GUITARIST_1 }; -const u16 gBattleFrontierTrainerMons_Jaden[] = +const u16 gBattleFrontierTrainerMons_Jaden[] = { FRONTIER_MONS_GUITARIST_1 }; -const u16 gBattleFrontierTrainerMons_Dakota[] = +const u16 gBattleFrontierTrainerMons_Dakota[] = { - FRONTIER_MONS_GUITARIST_1 + FRONTIER_MONS_GUITARIST_1 }; -const u16 gBattleFrontierTrainerMons_Brayden[] = +const u16 gBattleFrontierTrainerMons_Brayden[] = { FRONTIER_MONS_BIRD_KEEPER_1 }; -const u16 gBattleFrontierTrainerMons_Corson[] = +const u16 gBattleFrontierTrainerMons_Corson[] = { FRONTIER_MONS_BIRD_KEEPER_1 }; -const u16 gBattleFrontierTrainerMons_Trevin[] = +const u16 gBattleFrontierTrainerMons_Trevin[] = { FRONTIER_MONS_BIRD_KEEPER_1 }; -const u16 gBattleFrontierTrainerMons_Patrick[] = +const u16 gBattleFrontierTrainerMons_Patrick[] = { FRONTIER_MONS_SAILOR_1 }; -const u16 gBattleFrontierTrainerMons_Kaden[] = +const u16 gBattleFrontierTrainerMons_Kaden[] = { FRONTIER_MONS_SAILOR_1 }; -const u16 gBattleFrontierTrainerMons_Maxwell[] = +const u16 gBattleFrontierTrainerMons_Maxwell[] = { FRONTIER_MONS_SAILOR_1 }; -const u16 gBattleFrontierTrainerMons_Daryl[] = +const u16 gBattleFrontierTrainerMons_Daryl[] = { FRONTIER_MONS_HIKER_1 }; -const u16 gBattleFrontierTrainerMons_Kenneth[] = +const u16 gBattleFrontierTrainerMons_Kenneth[] = { FRONTIER_MONS_HIKER_1 }; -const u16 gBattleFrontierTrainerMons_Rich[] = +const u16 gBattleFrontierTrainerMons_Rich[] = { FRONTIER_MONS_HIKER_1 }; -const u16 gBattleFrontierTrainerMons_Caden[] = +const u16 gBattleFrontierTrainerMons_Caden[] = { FRONTIER_MONS_KINDLER_1 }; -const u16 gBattleFrontierTrainerMons_Marlon[] = +const u16 gBattleFrontierTrainerMons_Marlon[] = { FRONTIER_MONS_KINDLER_1 }; -const u16 gBattleFrontierTrainerMons_Nash[] = +const u16 gBattleFrontierTrainerMons_Nash[] = { FRONTIER_MONS_KINDLER_1 }; -const u16 gBattleFrontierTrainerMons_Robby[] = +const u16 gBattleFrontierTrainerMons_Robby[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Reece[] = +const u16 gBattleFrontierTrainerMons_Reece[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Kathryn[] = +const u16 gBattleFrontierTrainerMons_Kathryn[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Ellen[] = +const u16 gBattleFrontierTrainerMons_Ellen[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Ramon[] = +const u16 gBattleFrontierTrainerMons_Ramon[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Arthur[] = +const u16 gBattleFrontierTrainerMons_Arthur[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Alondra[] = +const u16 gBattleFrontierTrainerMons_Alondra[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Adriana[] = +const u16 gBattleFrontierTrainerMons_Adriana[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Malik[] = +const u16 gBattleFrontierTrainerMons_Malik[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Jill[] = +const u16 gBattleFrontierTrainerMons_Jill[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_1 }; -const u16 gBattleFrontierTrainerMons_Erik[] = +const u16 gBattleFrontierTrainerMons_Erik[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Yazmin[] = +const u16 gBattleFrontierTrainerMons_Yazmin[] = { FRONTIER_MONS_RUNNING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Jamal[] = +const u16 gBattleFrontierTrainerMons_Jamal[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Leslie[] = +const u16 gBattleFrontierTrainerMons_Leslie[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Dave[] = +const u16 gBattleFrontierTrainerMons_Dave[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Carlo[] = +const u16 gBattleFrontierTrainerMons_Carlo[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Emilia[] = +const u16 gBattleFrontierTrainerMons_Emilia[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Dalia[] = +const u16 gBattleFrontierTrainerMons_Dalia[] = { FRONTIER_MONS_CYCLING_TRIATHLETE_2 }; -const u16 gBattleFrontierTrainerMons_Hitomi[] = +const u16 gBattleFrontierTrainerMons_Hitomi[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Ricardo[] = +const u16 gBattleFrontierTrainerMons_Ricardo[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Shizuka[] = +const u16 gBattleFrontierTrainerMons_Shizuka[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Joana[] = +const u16 gBattleFrontierTrainerMons_Joana[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Kelly[] = +const u16 gBattleFrontierTrainerMons_Kelly[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Rayna[] = +const u16 gBattleFrontierTrainerMons_Rayna[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_1 }; -const u16 gBattleFrontierTrainerMons_Evan[] = +const u16 gBattleFrontierTrainerMons_Evan[] = { FRONTIER_MONS_EXPERT_1A }; -const u16 gBattleFrontierTrainerMons_Jordan[] = +const u16 gBattleFrontierTrainerMons_Jordan[] = { FRONTIER_MONS_EXPERT_1B }; -const u16 gBattleFrontierTrainerMons_Joel[] = +const u16 gBattleFrontierTrainerMons_Joel[] = { FRONTIER_MONS_EXPERT_1C }; -const u16 gBattleFrontierTrainerMons_Kristen[] = +const u16 gBattleFrontierTrainerMons_Kristen[] = { FRONTIER_MONS_EXPERT_1A }; -const u16 gBattleFrontierTrainerMons_Selphy[] = +const u16 gBattleFrontierTrainerMons_Selphy[] = { FRONTIER_MONS_EXPERT_1B }; -const u16 gBattleFrontierTrainerMons_Chloe[] = +const u16 gBattleFrontierTrainerMons_Chloe[] = { FRONTIER_MONS_EXPERT_1C }; -const u16 gBattleFrontierTrainerMons_Norton[] = +const u16 gBattleFrontierTrainerMons_Norton[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Lukas[] = +const u16 gBattleFrontierTrainerMons_Lukas[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Zach[] = +const u16 gBattleFrontierTrainerMons_Zach[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Kaitlyn[] = +const u16 gBattleFrontierTrainerMons_Kaitlyn[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Breanna[] = +const u16 gBattleFrontierTrainerMons_Breanna[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Kendra[] = +const u16 gBattleFrontierTrainerMons_Kendra[] = { FRONTIER_MONS_PSYCHIC_1 }; -const u16 gBattleFrontierTrainerMons_Molly[] = +const u16 gBattleFrontierTrainerMons_Molly[] = { FRONTIER_MONS_HEX_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Jazmin[] = +const u16 gBattleFrontierTrainerMons_Jazmin[] = { FRONTIER_MONS_HEX_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Kelsey[] = +const u16 gBattleFrontierTrainerMons_Kelsey[] = { FRONTIER_MONS_HEX_MANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Jalen[] = +const u16 gBattleFrontierTrainerMons_Jalen[] = { FRONTIER_MONS_POKEMANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Griffen[] = +const u16 gBattleFrontierTrainerMons_Griffen[] = { FRONTIER_MONS_POKEMANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Xander[] = +const u16 gBattleFrontierTrainerMons_Xander[] = { FRONTIER_MONS_POKEMANIAC_1 }; -const u16 gBattleFrontierTrainerMons_Marvin[] = +const u16 gBattleFrontierTrainerMons_Marvin[] = { FRONTIER_MONS_GENTLEMAN_1A }; -const u16 gBattleFrontierTrainerMons_Brennan[] = +const u16 gBattleFrontierTrainerMons_Brennan[] = { FRONTIER_MONS_GENTLEMAN_1B }; -const u16 gBattleFrontierTrainerMons_Baley[] = +const u16 gBattleFrontierTrainerMons_Baley[] = { FRONTIER_MONS_BUG_MANIAC_2 }; -const u16 gBattleFrontierTrainerMons_Zackary[] = +const u16 gBattleFrontierTrainerMons_Zackary[] = { FRONTIER_MONS_RUIN_MANIAC_2 }; -const u16 gBattleFrontierTrainerMons_Gabriel[] = +const u16 gBattleFrontierTrainerMons_Gabriel[] = { FRONTIER_MONS_COLLECTOR_1 }; -const u16 gBattleFrontierTrainerMons_Emily[] = +const u16 gBattleFrontierTrainerMons_Emily[] = { FRONTIER_MONS_PARASOL_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Jordyn[] = +const u16 gBattleFrontierTrainerMons_Jordyn[] = { FRONTIER_MONS_BEAUTY_1 }; -const u16 gBattleFrontierTrainerMons_Sofia[] = +const u16 gBattleFrontierTrainerMons_Sofia[] = { FRONTIER_MONS_AROMA_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Braden[] = +const u16 gBattleFrontierTrainerMons_Braden[] = { FRONTIER_MONS_COOLTRAINER_1A }; -const u16 gBattleFrontierTrainerMons_Kayden[] = +const u16 gBattleFrontierTrainerMons_Kayden[] = { FRONTIER_MONS_COOLTRAINER_1B }; -const u16 gBattleFrontierTrainerMons_Cooper[] = +const u16 gBattleFrontierTrainerMons_Cooper[] = { FRONTIER_MONS_COOLTRAINER_1C }; -const u16 gBattleFrontierTrainerMons_Julia[] = +const u16 gBattleFrontierTrainerMons_Julia[] = { FRONTIER_MONS_COOLTRAINER_1A }; -const u16 gBattleFrontierTrainerMons_Amara[] = +const u16 gBattleFrontierTrainerMons_Amara[] = { FRONTIER_MONS_COOLTRAINER_1B }; -const u16 gBattleFrontierTrainerMons_Lynn[] = +const u16 gBattleFrontierTrainerMons_Lynn[] = { FRONTIER_MONS_COOLTRAINER_1C }; -const u16 gBattleFrontierTrainerMons_Jovan[] = +const u16 gBattleFrontierTrainerMons_Jovan[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Dominic[] = +const u16 gBattleFrontierTrainerMons_Dominic[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Nikolas[] = +const u16 gBattleFrontierTrainerMons_Nikolas[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Valeria[] = +const u16 gBattleFrontierTrainerMons_Valeria[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Delaney[] = +const u16 gBattleFrontierTrainerMons_Delaney[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Meghan[] = +const u16 gBattleFrontierTrainerMons_Meghan[] = { FRONTIER_MONS_PKMN_RANGER_1 }; -const u16 gBattleFrontierTrainerMons_Roberto[] = +const u16 gBattleFrontierTrainerMons_Roberto[] = { FRONTIER_MONS_DRAGON_TAMER_1 }; -const u16 gBattleFrontierTrainerMons_Damian[] = +const u16 gBattleFrontierTrainerMons_Damian[] = { FRONTIER_MONS_DRAGON_TAMER_1 }; -const u16 gBattleFrontierTrainerMons_Brody[] = +const u16 gBattleFrontierTrainerMons_Brody[] = { FRONTIER_MONS_DRAGON_TAMER_1 }; -const u16 gBattleFrontierTrainerMons_Graham[] = +const u16 gBattleFrontierTrainerMons_Graham[] = { FRONTIER_MONS_DRAGON_TAMER_1 }; -const u16 gBattleFrontierTrainerMons_Tylor[] = +const u16 gBattleFrontierTrainerMons_Tylor[] = { FRONTIER_MONS_POKEFAN_2 }; -const u16 gBattleFrontierTrainerMons_Jaren[] = +const u16 gBattleFrontierTrainerMons_Jaren[] = { FRONTIER_MONS_POKEFAN_2 }; -const u16 gBattleFrontierTrainerMons_Cordell[] = +const u16 gBattleFrontierTrainerMons_Cordell[] = { FRONTIER_MONS_PKMN_BREEDER_M_1 }; -const u16 gBattleFrontierTrainerMons_Jazlyn[] = +const u16 gBattleFrontierTrainerMons_Jazlyn[] = { FRONTIER_MONS_PKMN_BREEDER_F_1 }; -const u16 gBattleFrontierTrainerMons_Zachery[] = +const u16 gBattleFrontierTrainerMons_Zachery[] = { FRONTIER_MONS_YOUNGSTER_LASS_2 }; -const u16 gBattleFrontierTrainerMons_Johan[] = +const u16 gBattleFrontierTrainerMons_Johan[] = { FRONTIER_MONS_YOUNGSTER_LASS_2_NO_DUGTRIO }; -const u16 gBattleFrontierTrainerMons_Shea[] = +const u16 gBattleFrontierTrainerMons_Shea[] = { FRONTIER_MONS_YOUNGSTER_LASS_2 }; -const u16 gBattleFrontierTrainerMons_Kaila[] = +const u16 gBattleFrontierTrainerMons_Kaila[] = { FRONTIER_MONS_YOUNGSTER_LASS_2 }; -const u16 gBattleFrontierTrainerMons_Isiah[] = +const u16 gBattleFrontierTrainerMons_Isiah[] = { FRONTIER_MONS_SCHOOL_KID_2 }; -const u16 gBattleFrontierTrainerMons_Garrett[] = +const u16 gBattleFrontierTrainerMons_Garrett[] = { FRONTIER_MONS_SCHOOL_KID_2 }; -const u16 gBattleFrontierTrainerMons_Haylie[] = +const u16 gBattleFrontierTrainerMons_Haylie[] = { FRONTIER_MONS_SCHOOL_KID_2 }; -const u16 gBattleFrontierTrainerMons_Megan[] = +const u16 gBattleFrontierTrainerMons_Megan[] = { FRONTIER_MONS_SCHOOL_KID_2 }; -const u16 gBattleFrontierTrainerMons_Issac[] = +const u16 gBattleFrontierTrainerMons_Issac[] = { FRONTIER_MONS_RICH_BOY_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Quinton[] = +const u16 gBattleFrontierTrainerMons_Quinton[] = { FRONTIER_MONS_RICH_BOY_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Salma[] = +const u16 gBattleFrontierTrainerMons_Salma[] = { FRONTIER_MONS_RICH_BOY_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Ansley[] = +const u16 gBattleFrontierTrainerMons_Ansley[] = { FRONTIER_MONS_RICH_BOY_LADY_2 }; -const u16 gBattleFrontierTrainerMons_Holden[] = +const u16 gBattleFrontierTrainerMons_Holden[] = { FRONTIER_MONS_BUG_CATCHER_2 }; -const u16 gBattleFrontierTrainerMons_Luca[] = +const u16 gBattleFrontierTrainerMons_Luca[] = { FRONTIER_MONS_BUG_CATCHER_2 }; -const u16 gBattleFrontierTrainerMons_Jamison[] = +const u16 gBattleFrontierTrainerMons_Jamison[] = { FRONTIER_MONS_NINJA_BOY_2 }; -const u16 gBattleFrontierTrainerMons_Gunnar[] = +const u16 gBattleFrontierTrainerMons_Gunnar[] = { FRONTIER_MONS_NINJA_BOY_2 }; -const u16 gBattleFrontierTrainerMons_Craig[] = +const u16 gBattleFrontierTrainerMons_Craig[] = { FRONTIER_MONS_TUBER_2 }; -const u16 gBattleFrontierTrainerMons_Pierce[] = +const u16 gBattleFrontierTrainerMons_Pierce[] = { FRONTIER_MONS_TUBER_2 }; -const u16 gBattleFrontierTrainerMons_Regina[] = +const u16 gBattleFrontierTrainerMons_Regina[] = { FRONTIER_MONS_TUBER_2 }; -const u16 gBattleFrontierTrainerMons_Alison[] = +const u16 gBattleFrontierTrainerMons_Alison[] = { FRONTIER_MONS_TUBER_2 }; -const u16 gBattleFrontierTrainerMons_Hank[] = +const u16 gBattleFrontierTrainerMons_Hank[] = { FRONTIER_MONS_BUG_MANIAC_3 }; -const u16 gBattleFrontierTrainerMons_Earl[] = +const u16 gBattleFrontierTrainerMons_Earl[] = { FRONTIER_MONS_BUG_MANIAC_3 }; -const u16 gBattleFrontierTrainerMons_Ramiro[] = +const u16 gBattleFrontierTrainerMons_Ramiro[] = { FRONTIER_MONS_FISHERMAN_2 }; -const u16 gBattleFrontierTrainerMons_Hunter[] = +const u16 gBattleFrontierTrainerMons_Hunter[] = { FRONTIER_MONS_FISHERMAN_2 }; -const u16 gBattleFrontierTrainerMons_Aiden[] = +const u16 gBattleFrontierTrainerMons_Aiden[] = { FRONTIER_MONS_RUIN_MANIAC_3 }; -const u16 gBattleFrontierTrainerMons_Xavier[] = +const u16 gBattleFrontierTrainerMons_Xavier[] = { FRONTIER_MONS_RUIN_MANIAC_3 }; -const u16 gBattleFrontierTrainerMons_Clinton[] = +const u16 gBattleFrontierTrainerMons_Clinton[] = { FRONTIER_MONS_COLLECTOR_2 }; -const u16 gBattleFrontierTrainerMons_Jesse[] = +const u16 gBattleFrontierTrainerMons_Jesse[] = { FRONTIER_MONS_COLLECTOR_2 }; -const u16 gBattleFrontierTrainerMons_Eduardo[] = +const u16 gBattleFrontierTrainerMons_Eduardo[] = { FRONTIER_MONS_GUITARIST_2 }; -const u16 gBattleFrontierTrainerMons_Hal[] = +const u16 gBattleFrontierTrainerMons_Hal[] = { FRONTIER_MONS_GUITARIST_2 }; -const u16 gBattleFrontierTrainerMons_Gage[] = +const u16 gBattleFrontierTrainerMons_Gage[] = { FRONTIER_MONS_BIRD_KEEPER_2 }; -const u16 gBattleFrontierTrainerMons_Arnold[] = +const u16 gBattleFrontierTrainerMons_Arnold[] = { FRONTIER_MONS_BIRD_KEEPER_2 }; -const u16 gBattleFrontierTrainerMons_Jarrett[] = +const u16 gBattleFrontierTrainerMons_Jarrett[] = { FRONTIER_MONS_SAILOR_2 }; -const u16 gBattleFrontierTrainerMons_Garett[] = +const u16 gBattleFrontierTrainerMons_Garett[] = { FRONTIER_MONS_SAILOR_2 }; -const u16 gBattleFrontierTrainerMons_Emanuel[] = +const u16 gBattleFrontierTrainerMons_Emanuel[] = { FRONTIER_MONS_HIKER_2 }; -const u16 gBattleFrontierTrainerMons_Gustavo[] = +const u16 gBattleFrontierTrainerMons_Gustavo[] = { FRONTIER_MONS_HIKER_2 }; -const u16 gBattleFrontierTrainerMons_Kameron[] = +const u16 gBattleFrontierTrainerMons_Kameron[] = { FRONTIER_MONS_KINDLER_2 }; -const u16 gBattleFrontierTrainerMons_Alfredo[] = +const u16 gBattleFrontierTrainerMons_Alfredo[] = { FRONTIER_MONS_KINDLER_2 }; -const u16 gBattleFrontierTrainerMons_Ruben[] = +const u16 gBattleFrontierTrainerMons_Ruben[] = { FRONTIER_MONS_GENTLEMAN_2 }; -const u16 gBattleFrontierTrainerMons_Lamar[] = +const u16 gBattleFrontierTrainerMons_Lamar[] = { FRONTIER_MONS_GENTLEMAN_2 }; -const u16 gBattleFrontierTrainerMons_Jaxon[] = +const u16 gBattleFrontierTrainerMons_Jaxon[] = { FRONTIER_MONS_YOUNGSTER_LASS_3 }; -const u16 gBattleFrontierTrainerMons_Logan[] = +const u16 gBattleFrontierTrainerMons_Logan[] = { FRONTIER_MONS_YOUNGSTER_LASS_3 }; -const u16 gBattleFrontierTrainerMons_Emilee[] = +const u16 gBattleFrontierTrainerMons_Emilee[] = { FRONTIER_MONS_YOUNGSTER_LASS_3 }; -const u16 gBattleFrontierTrainerMons_Josie[] = +const u16 gBattleFrontierTrainerMons_Josie[] = { FRONTIER_MONS_YOUNGSTER_LASS_3 }; -const u16 gBattleFrontierTrainerMons_Armando[] = +const u16 gBattleFrontierTrainerMons_Armando[] = { FRONTIER_MONS_CAMPER_PICNICKER_2 }; -const u16 gBattleFrontierTrainerMons_Skyler[] = +const u16 gBattleFrontierTrainerMons_Skyler[] = { FRONTIER_MONS_CAMPER_PICNICKER_2 }; -const u16 gBattleFrontierTrainerMons_Ruth[] = +const u16 gBattleFrontierTrainerMons_Ruth[] = { FRONTIER_MONS_CAMPER_PICNICKER_2 }; -const u16 gBattleFrontierTrainerMons_Melody[] = +const u16 gBattleFrontierTrainerMons_Melody[] = { FRONTIER_MONS_CAMPER_PICNICKER_2 }; -const u16 gBattleFrontierTrainerMons_Pedro[] = +const u16 gBattleFrontierTrainerMons_Pedro[] = { FRONTIER_MONS_SWIMMER_M_2 }; -const u16 gBattleFrontierTrainerMons_Erick[] = +const u16 gBattleFrontierTrainerMons_Erick[] = { FRONTIER_MONS_SWIMMER_M_2 }; -const u16 gBattleFrontierTrainerMons_Elaine[] = +const u16 gBattleFrontierTrainerMons_Elaine[] = { FRONTIER_MONS_SWIMMER_F_2 }; -const u16 gBattleFrontierTrainerMons_Joyce[] = +const u16 gBattleFrontierTrainerMons_Joyce[] = { FRONTIER_MONS_SWIMMER_F_2 }; -const u16 gBattleFrontierTrainerMons_Todd[] = +const u16 gBattleFrontierTrainerMons_Todd[] = { FRONTIER_MONS_POKEFAN_3 }; -const u16 gBattleFrontierTrainerMons_Gavin[] = +const u16 gBattleFrontierTrainerMons_Gavin[] = { FRONTIER_MONS_POKEFAN_3 }; -const u16 gBattleFrontierTrainerMons_Malory[] = +const u16 gBattleFrontierTrainerMons_Malory[] = { FRONTIER_MONS_POKEFAN_3 }; -const u16 gBattleFrontierTrainerMons_Esther[] = +const u16 gBattleFrontierTrainerMons_Esther[] = { FRONTIER_MONS_POKEFAN_3 }; -const u16 gBattleFrontierTrainerMons_Oscar[] = +const u16 gBattleFrontierTrainerMons_Oscar[] = { FRONTIER_MONS_PKMN_BREEDER_2 }; -const u16 gBattleFrontierTrainerMons_Wilson[] = +const u16 gBattleFrontierTrainerMons_Wilson[] = { FRONTIER_MONS_PKMN_BREEDER_2 }; -const u16 gBattleFrontierTrainerMons_Clare[] = +const u16 gBattleFrontierTrainerMons_Clare[] = { FRONTIER_MONS_PKMN_BREEDER_2 }; -const u16 gBattleFrontierTrainerMons_Tess[] = +const u16 gBattleFrontierTrainerMons_Tess[] = { FRONTIER_MONS_PKMN_BREEDER_2 }; -const u16 gBattleFrontierTrainerMons_Leon[] = +const u16 gBattleFrontierTrainerMons_Leon[] = { FRONTIER_MONS_COOLTRAINER_M_2A }; -const u16 gBattleFrontierTrainerMons_Alonzo[] = +const u16 gBattleFrontierTrainerMons_Alonzo[] = { FRONTIER_MONS_COOLTRAINER_M_2B }; -const u16 gBattleFrontierTrainerMons_Vince[] = +const u16 gBattleFrontierTrainerMons_Vince[] = { FRONTIER_MONS_COOLTRAINER_2C(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Bryon[] = +const u16 gBattleFrontierTrainerMons_Bryon[] = { FRONTIER_MONS_COOLTRAINER_2D(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Ava[] = +const u16 gBattleFrontierTrainerMons_Ava[] = { FRONTIER_MONS_COOLTRAINER_F_2A }; -const u16 gBattleFrontierTrainerMons_Miriam[] = +const u16 gBattleFrontierTrainerMons_Miriam[] = { FRONTIER_MONS_COOLTRAINER_F_2B }; -const u16 gBattleFrontierTrainerMons_Carrie[] = +const u16 gBattleFrontierTrainerMons_Carrie[] = { FRONTIER_MONS_COOLTRAINER_2C(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Gillian2[] = +const u16 gBattleFrontierTrainerMons_Gillian2[] = { FRONTIER_MONS_COOLTRAINER_2D(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Tyler[] = +const u16 gBattleFrontierTrainerMons_Tyler[] = { FRONTIER_MONS_GENERAL_A }; -const u16 gBattleFrontierTrainerMons_Chaz[] = +const u16 gBattleFrontierTrainerMons_Chaz[] = { FRONTIER_MONS_GENERAL_B }; -const u16 gBattleFrontierTrainerMons_Nelson[] = +const u16 gBattleFrontierTrainerMons_Nelson[] = { FRONTIER_MONS_COOLTRAINER_2D(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Shania[] = +const u16 gBattleFrontierTrainerMons_Shania[] = { FRONTIER_MONS_GENERAL_C }; -const u16 gBattleFrontierTrainerMons_Stella[] = +const u16 gBattleFrontierTrainerMons_Stella[] = { FRONTIER_MONS_GENERAL_D }; -const u16 gBattleFrontierTrainerMons_Dorine[] = +const u16 gBattleFrontierTrainerMons_Dorine[] = { FRONTIER_MONS_COOLTRAINER_2D(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Maddox[] = +const u16 gBattleFrontierTrainerMons_Maddox[] = { FRONTIER_MONS_DRAGON_TAMER_2 }; -const u16 gBattleFrontierTrainerMons_Davin[] = +const u16 gBattleFrontierTrainerMons_Davin[] = { FRONTIER_MONS_DRAGON_TAMER_2 }; -const u16 gBattleFrontierTrainerMons_Trevon[] = +const u16 gBattleFrontierTrainerMons_Trevon[] = { FRONTIER_MONS_DRAGON_TAMER_2 }; -const u16 gBattleFrontierTrainerMons_Mateo[] = +const u16 gBattleFrontierTrainerMons_Mateo[] = { FRONTIER_MONS_BLACK_BELT_2A }; -const u16 gBattleFrontierTrainerMons_Bret[] = +const u16 gBattleFrontierTrainerMons_Bret[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_2B }; -const u16 gBattleFrontierTrainerMons_Raul[] = +const u16 gBattleFrontierTrainerMons_Raul[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_2C }; -const u16 gBattleFrontierTrainerMons_Kay[] = +const u16 gBattleFrontierTrainerMons_Kay[] = { FRONTIER_MONS_BATTLE_GIRL_2A }; -const u16 gBattleFrontierTrainerMons_Elena[] = +const u16 gBattleFrontierTrainerMons_Elena[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_2B }; -const u16 gBattleFrontierTrainerMons_Alana[] = +const u16 gBattleFrontierTrainerMons_Alana[] = { FRONTIER_MONS_BLACK_BELT_BATTLE_GIRL_2C }; -const u16 gBattleFrontierTrainerMons_Alexas[] = +const u16 gBattleFrontierTrainerMons_Alexas[] = { FRONTIER_MONS_EXPERT_2A(TYRANITAR) }; -const u16 gBattleFrontierTrainerMons_Weston[] = +const u16 gBattleFrontierTrainerMons_Weston[] = { FRONTIER_MONS_EXPERT_2B(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Jasper[] = +const u16 gBattleFrontierTrainerMons_Jasper[] = { FRONTIER_MONS_EXPERT_2C(TYRANITAR) }; -const u16 gBattleFrontierTrainerMons_Nadia[] = +const u16 gBattleFrontierTrainerMons_Nadia[] = { FRONTIER_MONS_EXPERT_2A(DRAGONITE) }; -const u16 gBattleFrontierTrainerMons_Miranda[] = +const u16 gBattleFrontierTrainerMons_Miranda[] = { FRONTIER_MONS_EXPERT_2B(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Emma[] = +const u16 gBattleFrontierTrainerMons_Emma[] = { FRONTIER_MONS_EXPERT_2C(DRAGONITE) }; -const u16 gBattleFrontierTrainerMons_Rolando[] = +const u16 gBattleFrontierTrainerMons_Rolando[] = { FRONTIER_MONS_PSYCHIC_2A(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Stanly[] = +const u16 gBattleFrontierTrainerMons_Stanly[] = { FRONTIER_MONS_PSYCHIC_2B(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Dario[] = +const u16 gBattleFrontierTrainerMons_Dario[] = { FRONTIER_MONS_PSYCHIC_2C(LATIOS) }; -const u16 gBattleFrontierTrainerMons_Karlee[] = +const u16 gBattleFrontierTrainerMons_Karlee[] = { FRONTIER_MONS_PSYCHIC_2A(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Jaylin[] = +const u16 gBattleFrontierTrainerMons_Jaylin[] = { FRONTIER_MONS_PSYCHIC_2B(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Ingrid[] = +const u16 gBattleFrontierTrainerMons_Ingrid[] = { FRONTIER_MONS_PSYCHIC_2C(LATIAS) }; -const u16 gBattleFrontierTrainerMons_Delilah[] = +const u16 gBattleFrontierTrainerMons_Delilah[] = { FRONTIER_MONS_HEX_MANIAC_2A }; -const u16 gBattleFrontierTrainerMons_Carly[] = +const u16 gBattleFrontierTrainerMons_Carly[] = { FRONTIER_MONS_HEX_MANIAC_2B }; -const u16 gBattleFrontierTrainerMons_Lexie[] = +const u16 gBattleFrontierTrainerMons_Lexie[] = { FRONTIER_MONS_HEX_MANIAC_2C }; -const u16 gBattleFrontierTrainerMons_Miller[] = +const u16 gBattleFrontierTrainerMons_Miller[] = { FRONTIER_MONS_POKEMANIAC_2A }; -const u16 gBattleFrontierTrainerMons_Marv[] = +const u16 gBattleFrontierTrainerMons_Marv[] = { FRONTIER_MONS_POKEMANIAC_2B }; -const u16 gBattleFrontierTrainerMons_Layton[] = +const u16 gBattleFrontierTrainerMons_Layton[] = { FRONTIER_MONS_POKEMANIAC_2C }; -const u16 gBattleFrontierTrainerMons_Brooks[] = +const u16 gBattleFrontierTrainerMons_Brooks[] = { FRONTIER_MONS_GENERAL_A }; -const u16 gBattleFrontierTrainerMons_Gregory[] = +const u16 gBattleFrontierTrainerMons_Gregory[] = { FRONTIER_MONS_GENTLEMAN_3A }; -const u16 gBattleFrontierTrainerMons_Reese[] = +const u16 gBattleFrontierTrainerMons_Reese[] = { FRONTIER_MONS_GENTLEMAN_3B }; -const u16 gBattleFrontierTrainerMons_Mason[] = +const u16 gBattleFrontierTrainerMons_Mason[] = { FRONTIER_MONS_GENERAL_A }; -const u16 gBattleFrontierTrainerMons_Toby[] = +const u16 gBattleFrontierTrainerMons_Toby[] = { FRONTIER_MONS_GENERAL_B }; -const u16 gBattleFrontierTrainerMons_Dorothy[] = +const u16 gBattleFrontierTrainerMons_Dorothy[] = { FRONTIER_MONS_GENERAL_C }; -const u16 gBattleFrontierTrainerMons_Piper[] = +const u16 gBattleFrontierTrainerMons_Piper[] = { FRONTIER_MONS_GENERAL_D }; -const u16 gBattleFrontierTrainerMons_Finn[] = +const u16 gBattleFrontierTrainerMons_Finn[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_M_3 }; -const u16 gBattleFrontierTrainerMons_Samir[] = +const u16 gBattleFrontierTrainerMons_Samir[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_M_3 }; -const u16 gBattleFrontierTrainerMons_Fiona[] = +const u16 gBattleFrontierTrainerMons_Fiona[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_F_3 }; -const u16 gBattleFrontierTrainerMons_Gloria[] = +const u16 gBattleFrontierTrainerMons_Gloria[] = { FRONTIER_MONS_SWIMMING_TRIATHLETE_F_3 }; -const u16 gBattleFrontierTrainerMons_Nico[] = +const u16 gBattleFrontierTrainerMons_Nico[] = { FRONTIER_MONS_GENERAL_A }; -const u16 gBattleFrontierTrainerMons_Jeremy[] = +const u16 gBattleFrontierTrainerMons_Jeremy[] = { FRONTIER_MONS_GENERAL_B }; -const u16 gBattleFrontierTrainerMons_Caitlin[] = +const u16 gBattleFrontierTrainerMons_Caitlin[] = { FRONTIER_MONS_GENERAL_C }; -const u16 gBattleFrontierTrainerMons_Reena[] = +const u16 gBattleFrontierTrainerMons_Reena[] = { FRONTIER_MONS_GENERAL_D }; -const u16 gBattleFrontierTrainerMons_Avery[] = +const u16 gBattleFrontierTrainerMons_Avery[] = { FRONTIER_MONS_BUG_MANIAC_4 }; -const u16 gBattleFrontierTrainerMons_Liam[] = +const u16 gBattleFrontierTrainerMons_Liam[] = { FRONTIER_MONS_BUG_MANIAC_4 }; -const u16 gBattleFrontierTrainerMons_Theo[] = +const u16 gBattleFrontierTrainerMons_Theo[] = { FRONTIER_MONS_FISHERMAN_3 }; -const u16 gBattleFrontierTrainerMons_Bailey[] = +const u16 gBattleFrontierTrainerMons_Bailey[] = { FRONTIER_MONS_FISHERMAN_3 }; -const u16 gBattleFrontierTrainerMons_Hugo[] = +const u16 gBattleFrontierTrainerMons_Hugo[] = { FRONTIER_MONS_RUIN_MANIAC_4 }; -const u16 gBattleFrontierTrainerMons_Bryce[] = +const u16 gBattleFrontierTrainerMons_Bryce[] = { FRONTIER_MONS_RUIN_MANIAC_4 }; -const u16 gBattleFrontierTrainerMons_Gideon[] = +const u16 gBattleFrontierTrainerMons_Gideon[] = { FRONTIER_MONS_COLLECTOR_3 }; -const u16 gBattleFrontierTrainerMons_Triston[] = +const u16 gBattleFrontierTrainerMons_Triston[] = { FRONTIER_MONS_COLLECTOR_3 }; -const u16 gBattleFrontierTrainerMons_Charles[] = +const u16 gBattleFrontierTrainerMons_Charles[] = { FRONTIER_MONS_GUITARIST_3A }; -const u16 gBattleFrontierTrainerMons_Raymond[] = +const u16 gBattleFrontierTrainerMons_Raymond[] = { FRONTIER_MONS_GUITARIST_3B }; -const u16 gBattleFrontierTrainerMons_Dirk[] = +const u16 gBattleFrontierTrainerMons_Dirk[] = { FRONTIER_MONS_BIRD_KEEPER_3 }; -const u16 gBattleFrontierTrainerMons_Harold[] = +const u16 gBattleFrontierTrainerMons_Harold[] = { FRONTIER_MONS_BIRD_KEEPER_3 }; -const u16 gBattleFrontierTrainerMons_Omar[] = +const u16 gBattleFrontierTrainerMons_Omar[] = { FRONTIER_MONS_SAILOR_3 }; -const u16 gBattleFrontierTrainerMons_Peter[] = +const u16 gBattleFrontierTrainerMons_Peter[] = { FRONTIER_MONS_SAILOR_3 }; -const u16 gBattleFrontierTrainerMons_Dev[] = +const u16 gBattleFrontierTrainerMons_Dev[] = { FRONTIER_MONS_HIKER_3 }; -const u16 gBattleFrontierTrainerMons_Corey[] = +const u16 gBattleFrontierTrainerMons_Corey[] = { FRONTIER_MONS_HIKER_3 }; -const u16 gBattleFrontierTrainerMons_Andre[] = +const u16 gBattleFrontierTrainerMons_Andre[] = { FRONTIER_MONS_KINDLER_3 }; -const u16 gBattleFrontierTrainerMons_Ferris[] = +const u16 gBattleFrontierTrainerMons_Ferris[] = { FRONTIER_MONS_KINDLER_3 }; -const u16 gBattleFrontierTrainerMons_Alivia[] = +const u16 gBattleFrontierTrainerMons_Alivia[] = { FRONTIER_MONS_PARASOL_LADY_3 }; -const u16 gBattleFrontierTrainerMons_Paige[] = +const u16 gBattleFrontierTrainerMons_Paige[] = { FRONTIER_MONS_PARASOL_LADY_3 }; -const u16 gBattleFrontierTrainerMons_Anya[] = +const u16 gBattleFrontierTrainerMons_Anya[] = { FRONTIER_MONS_EEVEELUTIONS }; -const u16 gBattleFrontierTrainerMons_Dawn[] = +const u16 gBattleFrontierTrainerMons_Dawn[] = { FRONTIER_MONS_BEAUTY_2 }; -const u16 gBattleFrontierTrainerMons_Abby[] = +const u16 gBattleFrontierTrainerMons_Abby[] = { FRONTIER_MONS_AROMA_LADY_3 }; -const u16 gBattleFrontierTrainerMons_Gretel[] = +const u16 gBattleFrontierTrainerMons_Gretel[] = { FRONTIER_MONS_AROMA_LADY_3 }; diff --git a/src/data/battle_frontier/battle_tent.h b/src/data/battle_frontier/battle_tent.h index e1c3750bf8a9..de08dcfd6317 100644 --- a/src/data/battle_frontier/battle_tent.h +++ b/src/data/battle_frontier/battle_tent.h @@ -1,5 +1,5 @@ // Slateport Battle Tent. -const u16 gSlateportBattleTentTrainerMons_Jolie[] = +const u16 gSlateportBattleTentTrainerMons_Jolie[] = { SLATEPORT_TENT_MON_CACNEA_1, SLATEPORT_TENT_MON_LOMBRE_1, @@ -15,7 +15,7 @@ const u16 gSlateportBattleTentTrainerMons_Jolie[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Malachi[] = +const u16 gSlateportBattleTentTrainerMons_Malachi[] = { SLATEPORT_TENT_MON_CACNEA_1, SLATEPORT_TENT_MON_GRAVELER, @@ -31,7 +31,7 @@ const u16 gSlateportBattleTentTrainerMons_Malachi[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Kelsie[] = +const u16 gSlateportBattleTentTrainerMons_Kelsie[] = { SLATEPORT_TENT_MON_WAILMER_1, SLATEPORT_TENT_MON_WAILMER_2, @@ -47,7 +47,7 @@ const u16 gSlateportBattleTentTrainerMons_Kelsie[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Davon[] = +const u16 gSlateportBattleTentTrainerMons_Davon[] = { SLATEPORT_TENT_MON_WAILMER_1, SLATEPORT_TENT_MON_WAILMER_2, @@ -64,7 +64,7 @@ const u16 gSlateportBattleTentTrainerMons_Davon[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Glenda[] = +const u16 gSlateportBattleTentTrainerMons_Glenda[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_ZIGZAGOON_2, @@ -82,7 +82,7 @@ const u16 gSlateportBattleTentTrainerMons_Glenda[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Helena[] = +const u16 gSlateportBattleTentTrainerMons_Helena[] = { SLATEPORT_TENT_MON_MIGHTYENA_1, SLATEPORT_TENT_MON_MIGHTYENA_2, @@ -98,7 +98,7 @@ const u16 gSlateportBattleTentTrainerMons_Helena[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Rodolfo[] = +const u16 gSlateportBattleTentTrainerMons_Rodolfo[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_ZIGZAGOON_2, @@ -116,7 +116,7 @@ const u16 gSlateportBattleTentTrainerMons_Rodolfo[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Davion[] = +const u16 gSlateportBattleTentTrainerMons_Davion[] = { SLATEPORT_TENT_MON_BALTOY, SLATEPORT_TENT_MON_VOLTORB, @@ -135,7 +135,7 @@ const u16 gSlateportBattleTentTrainerMons_Davion[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Kendall[] = +const u16 gSlateportBattleTentTrainerMons_Kendall[] = { SLATEPORT_TENT_MON_WAILMER_1, SLATEPORT_TENT_MON_WINGULL_1, @@ -154,7 +154,7 @@ const u16 gSlateportBattleTentTrainerMons_Kendall[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Colten[] = +const u16 gSlateportBattleTentTrainerMons_Colten[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_BEAUTIFLY, @@ -171,7 +171,7 @@ const u16 gSlateportBattleTentTrainerMons_Colten[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Irvin[] = +const u16 gSlateportBattleTentTrainerMons_Irvin[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_ZIGZAGOON_2, @@ -189,7 +189,7 @@ const u16 gSlateportBattleTentTrainerMons_Irvin[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Shaun[] = +const u16 gSlateportBattleTentTrainerMons_Shaun[] = { SLATEPORT_TENT_MON_BALTOY, SLATEPORT_TENT_MON_MIGHTYENA_1, @@ -207,7 +207,7 @@ const u16 gSlateportBattleTentTrainerMons_Shaun[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Kyler[] = +const u16 gSlateportBattleTentTrainerMons_Kyler[] = { SLATEPORT_TENT_MON_ELECTRIKE_1, SLATEPORT_TENT_MON_VOLTORB, @@ -224,7 +224,7 @@ const u16 gSlateportBattleTentTrainerMons_Kyler[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Maggie[] = +const u16 gSlateportBattleTentTrainerMons_Maggie[] = { SLATEPORT_TENT_MON_LOMBRE_1, SLATEPORT_TENT_MON_NUZLEAF, @@ -240,7 +240,7 @@ const u16 gSlateportBattleTentTrainerMons_Maggie[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Stephon[] = +const u16 gSlateportBattleTentTrainerMons_Stephon[] = { SLATEPORT_TENT_MON_PELIPPER_1, SLATEPORT_TENT_MON_LOMBRE_1, @@ -256,7 +256,7 @@ const u16 gSlateportBattleTentTrainerMons_Stephon[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Rebecca[] = +const u16 gSlateportBattleTentTrainerMons_Rebecca[] = { SLATEPORT_TENT_MON_PELIPPER_1, SLATEPORT_TENT_MON_NUZLEAF, @@ -272,7 +272,7 @@ const u16 gSlateportBattleTentTrainerMons_Rebecca[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Reggie[] = +const u16 gSlateportBattleTentTrainerMons_Reggie[] = { SLATEPORT_TENT_MON_MARILL_1, SLATEPORT_TENT_MON_WINGULL_1, @@ -289,7 +289,7 @@ const u16 gSlateportBattleTentTrainerMons_Reggie[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Janae[] = +const u16 gSlateportBattleTentTrainerMons_Janae[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_ZIGZAGOON_2, @@ -306,7 +306,7 @@ const u16 gSlateportBattleTentTrainerMons_Janae[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Caiden[] = +const u16 gSlateportBattleTentTrainerMons_Caiden[] = { SLATEPORT_TENT_MON_LOMBRE_1, SLATEPORT_TENT_MON_NINJASK_1, @@ -324,7 +324,7 @@ const u16 gSlateportBattleTentTrainerMons_Caiden[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Kirsten[] = +const u16 gSlateportBattleTentTrainerMons_Kirsten[] = { SLATEPORT_TENT_MON_LOMBRE_1, SLATEPORT_TENT_MON_GRAVELER, @@ -342,7 +342,7 @@ const u16 gSlateportBattleTentTrainerMons_Kirsten[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Kurtis[] = +const u16 gSlateportBattleTentTrainerMons_Kurtis[] = { SLATEPORT_TENT_MON_ZIGZAGOON_1, SLATEPORT_TENT_MON_ZIGZAGOON_2, @@ -358,7 +358,7 @@ const u16 gSlateportBattleTentTrainerMons_Kurtis[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Stefan[] = +const u16 gSlateportBattleTentTrainerMons_Stefan[] = { SLATEPORT_TENT_MON_WAILMER_1, SLATEPORT_TENT_MON_WAILMER_2, @@ -374,7 +374,7 @@ const u16 gSlateportBattleTentTrainerMons_Stefan[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Avery[] = +const u16 gSlateportBattleTentTrainerMons_Avery[] = { SLATEPORT_TENT_MON_BEAUTIFLY, SLATEPORT_TENT_MON_DUSTOX, @@ -390,7 +390,7 @@ const u16 gSlateportBattleTentTrainerMons_Avery[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Dwane[] = +const u16 gSlateportBattleTentTrainerMons_Dwane[] = { SLATEPORT_TENT_MON_NINJASK_1, SLATEPORT_TENT_MON_NINJASK_2, @@ -406,7 +406,7 @@ const u16 gSlateportBattleTentTrainerMons_Dwane[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Mckenna[] = +const u16 gSlateportBattleTentTrainerMons_Mckenna[] = { SLATEPORT_TENT_MON_CACNEA_2, SLATEPORT_TENT_MON_SWELLOW, @@ -422,7 +422,7 @@ const u16 gSlateportBattleTentTrainerMons_Mckenna[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Camryn[] = +const u16 gSlateportBattleTentTrainerMons_Camryn[] = { SLATEPORT_TENT_MON_WAILMER_2, SLATEPORT_TENT_MON_MARILL_1, @@ -439,7 +439,7 @@ const u16 gSlateportBattleTentTrainerMons_Camryn[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Natasha[] = +const u16 gSlateportBattleTentTrainerMons_Natasha[] = { SLATEPORT_TENT_MON_ZIGZAGOON_2, SLATEPORT_TENT_MON_DUSTOX, @@ -455,7 +455,7 @@ const u16 gSlateportBattleTentTrainerMons_Natasha[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Austyn[] = +const u16 gSlateportBattleTentTrainerMons_Austyn[] = { SLATEPORT_TENT_MON_ARON_2, SLATEPORT_TENT_MON_LOUDRED, @@ -472,7 +472,7 @@ const u16 gSlateportBattleTentTrainerMons_Austyn[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Donovan[] = +const u16 gSlateportBattleTentTrainerMons_Donovan[] = { SLATEPORT_TENT_MON_LOMBRE_1, SLATEPORT_TENT_MON_GRAVELER, @@ -491,7 +491,7 @@ const u16 gSlateportBattleTentTrainerMons_Donovan[] = -1 }; -const u16 gSlateportBattleTentTrainerMons_Tamia[] = +const u16 gSlateportBattleTentTrainerMons_Tamia[] = { SLATEPORT_TENT_MON_BEAUTIFLY, SLATEPORT_TENT_MON_MARILL_1, @@ -507,7 +507,7 @@ const u16 gSlateportBattleTentTrainerMons_Tamia[] = -1 }; -const struct BattleFrontierTrainer gSlateportBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = +const struct BattleFrontierTrainer gSlateportBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = { [SLATEPORT_TENT_TRAINER_JOLIE] = { .facilityClass = FACILITY_CLASS_AROMA_LADY, @@ -751,7 +751,7 @@ const struct BattleFrontierTrainer gSlateportBattleTentTrainers[NUM_BATTLE_TENT_ } }; -const struct FacilityMon gSlateportBattleTentMons[NUM_SLATEPORT_TENT_MONS] = +const struct FacilityMon gSlateportBattleTentMons[NUM_SLATEPORT_TENT_MONS] = { [SLATEPORT_TENT_MON_ZIGZAGOON_1] = { .species = SPECIES_ZIGZAGOON, @@ -1246,7 +1246,7 @@ const struct FacilityMon gSlateportBattleTentMons[NUM_SLATEPORT_TENT_MONS] = }; // Verdanturf Battle Tent. -const u16 gVerdanturfBattleTentTrainerMons_Brenna[] = +const u16 gVerdanturfBattleTentTrainerMons_Brenna[] = { VERDANTURF_TENT_MON_SHROOMISH, VERDANTURF_TENT_MON_SWALOT, @@ -1256,7 +1256,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Brenna[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Dilan[] = +const u16 gVerdanturfBattleTentTrainerMons_Dilan[] = { VERDANTURF_TENT_MON_GRAVELER, VERDANTURF_TENT_MON_TRAPINCH, @@ -1266,7 +1266,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Dilan[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Eliana[] = +const u16 gVerdanturfBattleTentTrainerMons_Eliana[] = { VERDANTURF_TENT_MON_MAGIKARP, VERDANTURF_TENT_MON_BARBOACH, @@ -1276,7 +1276,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Eliana[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Markus[] = +const u16 gVerdanturfBattleTentTrainerMons_Markus[] = { VERDANTURF_TENT_MON_MAGIKARP, VERDANTURF_TENT_MON_BARBOACH, @@ -1286,7 +1286,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Markus[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Caitlyn[] = +const u16 gVerdanturfBattleTentTrainerMons_Caitlyn[] = { VERDANTURF_TENT_MON_POOCHYENA, VERDANTURF_TENT_MON_KECLEON, @@ -1297,7 +1297,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Caitlyn[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Desiree[] = +const u16 gVerdanturfBattleTentTrainerMons_Desiree[] = { VERDANTURF_TENT_MON_WINGULL, VERDANTURF_TENT_MON_KECLEON, @@ -1307,7 +1307,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Desiree[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Ronald[] = +const u16 gVerdanturfBattleTentTrainerMons_Ronald[] = { VERDANTURF_TENT_MON_ZIGZAGOON, VERDANTURF_TENT_MON_LINOONE, @@ -1317,7 +1317,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Ronald[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Ashten[] = +const u16 gVerdanturfBattleTentTrainerMons_Ashten[] = { VERDANTURF_TENT_MON_ARON_1, VERDANTURF_TENT_MON_KECLEON, @@ -1327,7 +1327,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Ashten[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Gerard[] = +const u16 gVerdanturfBattleTentTrainerMons_Gerard[] = { VERDANTURF_TENT_MON_MARILL, VERDANTURF_TENT_MON_BARBOACH, @@ -1337,7 +1337,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Gerard[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Bradly[] = +const u16 gVerdanturfBattleTentTrainerMons_Bradly[] = { VERDANTURF_TENT_MON_NUZLEAF, VERDANTURF_TENT_MON_TAILLOW, @@ -1347,7 +1347,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Bradly[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Dennis[] = +const u16 gVerdanturfBattleTentTrainerMons_Dennis[] = { VERDANTURF_TENT_MON_NINJASK, VERDANTURF_TENT_MON_TRAPINCH, @@ -1357,7 +1357,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Dennis[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Prestin[] = +const u16 gVerdanturfBattleTentTrainerMons_Prestin[] = { VERDANTURF_TENT_MON_KADABRA, VERDANTURF_TENT_MON_MIGHTYENA, @@ -1369,7 +1369,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Prestin[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Ernesto[] = +const u16 gVerdanturfBattleTentTrainerMons_Ernesto[] = { VERDANTURF_TENT_MON_MAGNEMITE, VERDANTURF_TENT_MON_VOLTORB, @@ -1379,7 +1379,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Ernesto[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Nala[] = +const u16 gVerdanturfBattleTentTrainerMons_Nala[] = { VERDANTURF_TENT_MON_ZIGZAGOON, VERDANTURF_TENT_MON_SHROOMISH, @@ -1391,7 +1391,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Nala[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Darnell[] = +const u16 gVerdanturfBattleTentTrainerMons_Darnell[] = { VERDANTURF_TENT_MON_POOCHYENA, VERDANTURF_TENT_MON_SOLROCK, @@ -1402,7 +1402,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Darnell[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Ashlyn[] = +const u16 gVerdanturfBattleTentTrainerMons_Ashlyn[] = { VERDANTURF_TENT_MON_SOLROCK, VERDANTURF_TENT_MON_MARILL, @@ -1414,7 +1414,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Ashlyn[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Addison[] = +const u16 gVerdanturfBattleTentTrainerMons_Addison[] = { VERDANTURF_TENT_MON_POOCHYENA, VERDANTURF_TENT_MON_ZIGZAGOON, @@ -1424,7 +1424,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Addison[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Justine[] = +const u16 gVerdanturfBattleTentTrainerMons_Justine[] = { VERDANTURF_TENT_MON_POOCHYENA, VERDANTURF_TENT_MON_ZIGZAGOON, @@ -1434,7 +1434,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Justine[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Tyson[] = +const u16 gVerdanturfBattleTentTrainerMons_Tyson[] = { VERDANTURF_TENT_MON_MACHOP, VERDANTURF_TENT_MON_MAKUHITA, @@ -1446,7 +1446,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Tyson[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Laila[] = +const u16 gVerdanturfBattleTentTrainerMons_Laila[] = { VERDANTURF_TENT_MON_MACHOP, VERDANTURF_TENT_MON_MAKUHITA, @@ -1457,7 +1457,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Laila[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Waren[] = +const u16 gVerdanturfBattleTentTrainerMons_Waren[] = { VERDANTURF_TENT_MON_POOCHYENA, VERDANTURF_TENT_MON_ARON_1, @@ -1467,7 +1467,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Waren[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Tobias[] = +const u16 gVerdanturfBattleTentTrainerMons_Tobias[] = { VERDANTURF_TENT_MON_MAGIKARP, VERDANTURF_TENT_MON_BARBOACH, @@ -1477,7 +1477,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Tobias[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Josiah[] = +const u16 gVerdanturfBattleTentTrainerMons_Josiah[] = { VERDANTURF_TENT_MON_WINGULL, VERDANTURF_TENT_MON_SWABLU, @@ -1487,7 +1487,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Josiah[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Dion[] = +const u16 gVerdanturfBattleTentTrainerMons_Dion[] = { VERDANTURF_TENT_MON_NINJASK, VERDANTURF_TENT_MON_DUSTOX, @@ -1498,7 +1498,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Dion[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Kenzie[] = +const u16 gVerdanturfBattleTentTrainerMons_Kenzie[] = { VERDANTURF_TENT_MON_LOTAD, VERDANTURF_TENT_MON_NUMEL_1, @@ -1509,7 +1509,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Kenzie[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Lillian[] = +const u16 gVerdanturfBattleTentTrainerMons_Lillian[] = { VERDANTURF_TENT_MON_GOLDEEN_2, VERDANTURF_TENT_MON_PELIPPER, @@ -1519,7 +1519,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Lillian[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Lesley[] = +const u16 gVerdanturfBattleTentTrainerMons_Lesley[] = { VERDANTURF_TENT_MON_NUZLEAF, VERDANTURF_TENT_MON_POOCHYENA, @@ -1529,7 +1529,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Lesley[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Marquis[] = +const u16 gVerdanturfBattleTentTrainerMons_Marquis[] = { VERDANTURF_TENT_MON_GOLDEEN_2, VERDANTURF_TENT_MON_PELIPPER, @@ -1540,7 +1540,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Marquis[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Freddy[] = +const u16 gVerdanturfBattleTentTrainerMons_Freddy[] = { VERDANTURF_TENT_MON_LOTAD, VERDANTURF_TENT_MON_SEVIPER, @@ -1550,7 +1550,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Freddy[] = -1 }; -const u16 gVerdanturfBattleTentTrainerMons_Cecilia[] = +const u16 gVerdanturfBattleTentTrainerMons_Cecilia[] = { VERDANTURF_TENT_MON_SWELLOW, VERDANTURF_TENT_MON_NUZLEAF, @@ -1560,7 +1560,7 @@ const u16 gVerdanturfBattleTentTrainerMons_Cecilia[] = -1 }; -const struct BattleFrontierTrainer gVerdanturfBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = +const struct BattleFrontierTrainer gVerdanturfBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = { [VERDANTURF_TENT_TRAINER_BRENNA] = { .facilityClass = FACILITY_CLASS_AROMA_LADY, @@ -1804,7 +1804,7 @@ const struct BattleFrontierTrainer gVerdanturfBattleTentTrainers[NUM_BATTLE_TENT } }; -const struct FacilityMon gVerdanturfBattleTentMons[NUM_VERDANTURF_TENT_MONS] = +const struct FacilityMon gVerdanturfBattleTentMons[NUM_VERDANTURF_TENT_MONS] = { [VERDANTURF_TENT_MON_POOCHYENA] = { .species = SPECIES_POOCHYENA, @@ -2124,7 +2124,7 @@ const struct FacilityMon gVerdanturfBattleTentMons[NUM_VERDANTURF_TENT_MONS] = }; // Fallarbor Battle Tent. -const u16 gFallarborBattleTentTrainerMons_Amber[] = +const u16 gFallarborBattleTentTrainerMons_Amber[] = { FALLARBOR_TENT_MON_SWALOT, FALLARBOR_TENT_MON_SHROOMISH, @@ -2135,7 +2135,7 @@ const u16 gFallarborBattleTentTrainerMons_Amber[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Javier[] = +const u16 gFallarborBattleTentTrainerMons_Javier[] = { FALLARBOR_TENT_MON_SOLROCK, FALLARBOR_TENT_MON_TRAPINCH, @@ -2146,7 +2146,7 @@ const u16 gFallarborBattleTentTrainerMons_Javier[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Natalie[] = +const u16 gFallarborBattleTentTrainerMons_Natalie[] = { FALLARBOR_TENT_MON_MAGIKARP, FALLARBOR_TENT_MON_PELIPPER, @@ -2156,7 +2156,7 @@ const u16 gFallarborBattleTentTrainerMons_Natalie[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Treve[] = +const u16 gFallarborBattleTentTrainerMons_Treve[] = { FALLARBOR_TENT_MON_WINGULL, FALLARBOR_TENT_MON_PELIPPER, @@ -2166,7 +2166,7 @@ const u16 gFallarborBattleTentTrainerMons_Treve[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Arianna[] = +const u16 gFallarborBattleTentTrainerMons_Arianna[] = { FALLARBOR_TENT_MON_ELECTRIKE, FALLARBOR_TENT_MON_LINOONE_2, @@ -2176,7 +2176,7 @@ const u16 gFallarborBattleTentTrainerMons_Arianna[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Jadyn[] = +const u16 gFallarborBattleTentTrainerMons_Jadyn[] = { FALLARBOR_TENT_MON_NUMEL, FALLARBOR_TENT_MON_LOUDRED, @@ -2187,7 +2187,7 @@ const u16 gFallarborBattleTentTrainerMons_Jadyn[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Gerardo[] = +const u16 gFallarborBattleTentTrainerMons_Gerardo[] = { FALLARBOR_TENT_MON_SOLROCK, FALLARBOR_TENT_MON_ELECTRIKE, @@ -2197,7 +2197,7 @@ const u16 gFallarborBattleTentTrainerMons_Gerardo[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Jonn[] = +const u16 gFallarborBattleTentTrainerMons_Jonn[] = { FALLARBOR_TENT_MON_ARON_1, FALLARBOR_TENT_MON_ARON_2, @@ -2207,7 +2207,7 @@ const u16 gFallarborBattleTentTrainerMons_Jonn[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Esteban[] = +const u16 gFallarborBattleTentTrainerMons_Esteban[] = { FALLARBOR_TENT_MON_MAGIKARP, FALLARBOR_TENT_MON_WINGULL, @@ -2217,7 +2217,7 @@ const u16 gFallarborBattleTentTrainerMons_Esteban[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Jameson[] = +const u16 gFallarborBattleTentTrainerMons_Jameson[] = { FALLARBOR_TENT_MON_LINOONE_1, FALLARBOR_TENT_MON_PLUSLE, @@ -2227,7 +2227,7 @@ const u16 gFallarborBattleTentTrainerMons_Jameson[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Alanzo[] = +const u16 gFallarborBattleTentTrainerMons_Alanzo[] = { FALLARBOR_TENT_MON_NINCADA, FALLARBOR_TENT_MON_BEAUTIFLY, @@ -2239,7 +2239,7 @@ const u16 gFallarborBattleTentTrainerMons_Alanzo[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Howard[] = +const u16 gFallarborBattleTentTrainerMons_Howard[] = { FALLARBOR_TENT_MON_ELECTRIKE, FALLARBOR_TENT_MON_LINOONE_2, @@ -2249,7 +2249,7 @@ const u16 gFallarborBattleTentTrainerMons_Howard[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Conrad[] = +const u16 gFallarborBattleTentTrainerMons_Conrad[] = { FALLARBOR_TENT_MON_ELECTRIKE, FALLARBOR_TENT_MON_MAGNEMITE, @@ -2259,7 +2259,7 @@ const u16 gFallarborBattleTentTrainerMons_Conrad[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Makenna[] = +const u16 gFallarborBattleTentTrainerMons_Makenna[] = { FALLARBOR_TENT_MON_KECLEON, FALLARBOR_TENT_MON_WHISMUR, @@ -2269,7 +2269,7 @@ const u16 gFallarborBattleTentTrainerMons_Makenna[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Brayan[] = +const u16 gFallarborBattleTentTrainerMons_Brayan[] = { FALLARBOR_TENT_MON_NUMEL, FALLARBOR_TENT_MON_KECLEON, @@ -2281,7 +2281,7 @@ const u16 gFallarborBattleTentTrainerMons_Brayan[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Mariana[] = +const u16 gFallarborBattleTentTrainerMons_Mariana[] = { FALLARBOR_TENT_MON_NUMEL, FALLARBOR_TENT_MON_KECLEON, @@ -2293,7 +2293,7 @@ const u16 gFallarborBattleTentTrainerMons_Mariana[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Sheldon[] = +const u16 gFallarborBattleTentTrainerMons_Sheldon[] = { FALLARBOR_TENT_MON_PLUSLE, FALLARBOR_TENT_MON_POOCHYENA, @@ -2303,7 +2303,7 @@ const u16 gFallarborBattleTentTrainerMons_Sheldon[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Gianna[] = +const u16 gFallarborBattleTentTrainerMons_Gianna[] = { FALLARBOR_TENT_MON_LINOONE_1, FALLARBOR_TENT_MON_PLUSLE, @@ -2313,7 +2313,7 @@ const u16 gFallarborBattleTentTrainerMons_Gianna[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Yahir[] = +const u16 gFallarborBattleTentTrainerMons_Yahir[] = { FALLARBOR_TENT_MON_KECLEON, FALLARBOR_TENT_MON_MACHOKE, @@ -2324,7 +2324,7 @@ const u16 gFallarborBattleTentTrainerMons_Yahir[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Britney[] = +const u16 gFallarborBattleTentTrainerMons_Britney[] = { FALLARBOR_TENT_MON_KECLEON, FALLARBOR_TENT_MON_MAKUHITA, @@ -2335,7 +2335,7 @@ const u16 gFallarborBattleTentTrainerMons_Britney[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Hecter[] = +const u16 gFallarborBattleTentTrainerMons_Hecter[] = { FALLARBOR_TENT_MON_NUMEL, FALLARBOR_TENT_MON_LINOONE_1, @@ -2346,7 +2346,7 @@ const u16 gFallarborBattleTentTrainerMons_Hecter[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Tannor[] = +const u16 gFallarborBattleTentTrainerMons_Tannor[] = { FALLARBOR_TENT_MON_MAGIKARP, FALLARBOR_TENT_MON_BARBOACH, @@ -2356,7 +2356,7 @@ const u16 gFallarborBattleTentTrainerMons_Tannor[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Benji[] = +const u16 gFallarborBattleTentTrainerMons_Benji[] = { FALLARBOR_TENT_MON_SWABLU, FALLARBOR_TENT_MON_SKARMORY, @@ -2366,7 +2366,7 @@ const u16 gFallarborBattleTentTrainerMons_Benji[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Rory[] = +const u16 gFallarborBattleTentTrainerMons_Rory[] = { FALLARBOR_TENT_MON_NINCADA, FALLARBOR_TENT_MON_DUSTOX, @@ -2377,7 +2377,7 @@ const u16 gFallarborBattleTentTrainerMons_Rory[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Eleanor[] = +const u16 gFallarborBattleTentTrainerMons_Eleanor[] = { FALLARBOR_TENT_MON_LINOONE_2, FALLARBOR_TENT_MON_WINGULL, @@ -2389,7 +2389,7 @@ const u16 gFallarborBattleTentTrainerMons_Eleanor[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Evelyn[] = +const u16 gFallarborBattleTentTrainerMons_Evelyn[] = { FALLARBOR_TENT_MON_PELIPPER, FALLARBOR_TENT_MON_WAILMER, @@ -2399,7 +2399,7 @@ const u16 gFallarborBattleTentTrainerMons_Evelyn[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Arielle[] = +const u16 gFallarborBattleTentTrainerMons_Arielle[] = { FALLARBOR_TENT_MON_LINOONE_1, FALLARBOR_TENT_MON_POOCHYENA, @@ -2409,7 +2409,7 @@ const u16 gFallarborBattleTentTrainerMons_Arielle[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Connar[] = +const u16 gFallarborBattleTentTrainerMons_Connar[] = { FALLARBOR_TENT_MON_MAKUHITA, FALLARBOR_TENT_MON_MACHOKE, @@ -2420,7 +2420,7 @@ const u16 gFallarborBattleTentTrainerMons_Connar[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Maurice[] = +const u16 gFallarborBattleTentTrainerMons_Maurice[] = { FALLARBOR_TENT_MON_KECLEON, FALLARBOR_TENT_MON_MAGIKARP, @@ -2430,7 +2430,7 @@ const u16 gFallarborBattleTentTrainerMons_Maurice[] = -1 }; -const u16 gFallarborBattleTentTrainerMons_Kianna[] = +const u16 gFallarborBattleTentTrainerMons_Kianna[] = { FALLARBOR_TENT_MON_LOUDRED, FALLARBOR_TENT_MON_MIGHTYENA, @@ -2441,7 +2441,7 @@ const u16 gFallarborBattleTentTrainerMons_Kianna[] = -1 }; -const struct BattleFrontierTrainer gFallarborBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = +const struct BattleFrontierTrainer gFallarborBattleTentTrainers[NUM_BATTLE_TENT_TRAINERS] = { [FALLARBOR_TENT_TRAINER_AMBER] = { .facilityClass = FACILITY_CLASS_AROMA_LADY, @@ -2685,7 +2685,7 @@ const struct BattleFrontierTrainer gFallarborBattleTentTrainers[NUM_BATTLE_TENT_ } }; -const struct FacilityMon gFallarborBattleTentMons[NUM_FALLARBOR_TENT_MONS] = +const struct FacilityMon gFallarborBattleTentMons[NUM_FALLARBOR_TENT_MONS] = { [FALLARBOR_TENT_MON_NUMEL] = { .species = SPECIES_NUMEL, diff --git a/src/data/battle_frontier/trainer_hill.h b/src/data/battle_frontier/trainer_hill.h index 127eb8ed4d43..75785b258946 100644 --- a/src/data/battle_frontier/trainer_hill.h +++ b/src/data/battle_frontier/trainer_hill.h @@ -194,22 +194,22 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x35, 0x35, 0x3b, 0x26, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x3b, 0x3b, 0x08, - 0x31, 0x2b, 0x2b, 0x3b, 0x34, 0x34, 0x2b, 0x2b, 0x34, 0x33, 0x3f, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, - 0x31, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x34, 0x34, 0x3b, 0x33, 0x3f, 0x3f, 0x3f, 0x3b, 0x3b, 0x08, - 0x31, 0x2b, 0x2b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x3b, 0x33, 0x3f, 0x3f, 0x3f, 0x3b, 0x3f, 0x08, - 0x31, 0x2b, 0x34, 0x34, 0x34, 0x2b, 0x34, 0x34, 0x3b, 0x2c, 0x3f, 0x3f, 0x3f, 0x3b, 0x3b, 0x08, - 0x31, 0x2b, 0x3b, 0x35, 0x3b, 0x2b, 0x3b, 0x35, 0x3b, 0x35, 0x3b, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, - 0x31, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, - 0x31, 0x34, 0x3b, 0x2b, 0x3b, 0x34, 0x3b, 0x2b, 0x35, 0x2b, 0x3b, 0x3b, 0x3f, 0x3b, 0x3b, 0x08, - 0x31, 0x3b, 0x3b, 0x34, 0x3b, 0x3b, 0x3b, 0x34, 0x34, 0x34, 0x3f, 0x3b, 0x3b, 0x3b, 0x3f, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x31, 0x35, 0x35, 0x3b, 0x26, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x3b, 0x3b, 0x08, + 0x31, 0x2b, 0x2b, 0x3b, 0x34, 0x34, 0x2b, 0x2b, 0x34, 0x33, 0x3f, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, + 0x31, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x34, 0x34, 0x3b, 0x33, 0x3f, 0x3f, 0x3f, 0x3b, 0x3b, 0x08, + 0x31, 0x2b, 0x2b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x3b, 0x33, 0x3f, 0x3f, 0x3f, 0x3b, 0x3f, 0x08, + 0x31, 0x2b, 0x34, 0x34, 0x34, 0x2b, 0x34, 0x34, 0x3b, 0x2c, 0x3f, 0x3f, 0x3f, 0x3b, 0x3b, 0x08, + 0x31, 0x2b, 0x3b, 0x35, 0x3b, 0x2b, 0x3b, 0x35, 0x3b, 0x35, 0x3b, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, + 0x31, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x2b, 0x3b, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, + 0x31, 0x34, 0x3b, 0x2b, 0x3b, 0x34, 0x3b, 0x2b, 0x35, 0x2b, 0x3b, 0x3b, 0x3f, 0x3b, 0x3b, 0x08, + 0x31, 0x3b, 0x3b, 0x34, 0x3b, 0x3b, 0x3b, 0x34, 0x34, 0x34, 0x3f, 0x3b, 0x3b, 0x3b, 0x3f, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = { 0x0381, 0x6fc1, 0x6341, 0x6041, 0x7f41, 0x4401, 0x5541, 0x5541, 0x11c1, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff }, .coords = { COORDS_XY(8,2), COORDS_XY(8,7) }, @@ -396,22 +396,22 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3b, 0x35, 0x3b, 0x39, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x35, 0x3b, 0x08, - 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, - 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3e, 0x3e, 0x3b, 0x2b, 0x3b, 0x08, - 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, - 0x3f, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3e, 0x3e, 0x2b, 0x3b, 0x08, - 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2c, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, - 0x31, 0x3f, 0x2b, 0x3b, 0x3b, 0x2c, 0x2c, 0x3b, 0x2c, 0x2c, 0x3e, 0x3e, 0x3b, 0x2b, 0x3b, 0x08, - 0x31, 0x3b, 0x2b, 0x35, 0x35, 0x35, 0x35, 0x3b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x2b, 0x3b, 0x08, - 0x3f, 0x3b, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x3b, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x3b, 0x08, - 0x31, 0x3b, 0x3f, 0x3f, 0x3b, 0x35, 0x35, 0x3b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x08, - 0x31, 0x3f, 0x3f, 0x3f, 0x3b, 0x2b, 0x2b, 0x35, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x08, - 0x31, 0x3f, 0x3f, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x08, - 0x31, 0x3b, 0x3b, 0x3b, 0x3f, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x31, 0x3b, 0x35, 0x3b, 0x39, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x35, 0x3b, 0x08, + 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, + 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3e, 0x3e, 0x3b, 0x2b, 0x3b, 0x08, + 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, + 0x3f, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3e, 0x3e, 0x2b, 0x3b, 0x08, + 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2c, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, + 0x31, 0x3f, 0x2b, 0x3b, 0x3b, 0x2c, 0x2c, 0x3b, 0x2c, 0x2c, 0x3e, 0x3e, 0x3b, 0x2b, 0x3b, 0x08, + 0x31, 0x3b, 0x2b, 0x35, 0x35, 0x35, 0x35, 0x3b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x2b, 0x3b, 0x08, + 0x3f, 0x3b, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x3b, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x3b, 0x08, + 0x31, 0x3b, 0x3f, 0x3f, 0x3b, 0x35, 0x35, 0x3b, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x35, 0x08, + 0x31, 0x3f, 0x3f, 0x3f, 0x3b, 0x2b, 0x2b, 0x35, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x08, + 0x31, 0x3f, 0x3f, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x08, + 0x31, 0x3b, 0x3b, 0x3b, 0x3f, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = { 0x0381, 0x27c5, 0x27c5, 0x27c5, 0x27c5, 0x27c5, 0x26c5, 0x2005, 0x3efd, 0x1, 0x6ff, 0x7ff, 0x7ff, 0xffff, 0xffff, 0xffff }, .coords = { COORDS_XY(7,6), COORDS_XY(7,10) }, @@ -727,21 +727,21 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = }, .display = { .metatileData = { - 0x31, 0x3B, 0x35, 0x35, 0x26, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x26, 0x3A, 0x3B, 0x35, 0x3B, 0x08, - 0x31, 0x3B, 0x2C, 0x2C, 0x2C, 0x2B, 0x24, 0x24, 0x24, 0x24, 0x2C, 0x3B, 0x3B, 0x2C, 0x3B, 0x08, - 0x2D, 0x3B, 0x3B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x3B, 0x3B, 0x35, 0x3B, 0x35, 0x35, 0x3B, 0x08, - 0x33, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x3B, 0x2C, 0x2B, 0x3B, 0x08, - 0x33, 0x35, 0x3B, 0x3B, 0x3B, 0x2C, 0x35, 0x3B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x08, - 0x34, 0x2C, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x32, 0x30, 0x3B, 0x2B, 0x32, 0x30, 0x2C, 0x3B, 0x08, - 0x31, 0x35, 0x3B, 0x3B, 0x35, 0x3B, 0x2C, 0x3B, 0x3B, 0x35, 0x2C, 0x3B, 0x3B, 0x35, 0x35, 0x08, - 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x35, 0x3B, 0x2B, 0x32, 0x21, 0x30, 0x2C, 0x2C, 0x08, - 0x31, 0x35, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x2C, 0x3B, 0x35, 0x3B, 0x3B, 0x3B, 0x08, - 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x2B, 0x3B, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x3B, 0x08, - 0x31, 0x35, 0x35, 0x35, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x35, 0x2B, 0x3B, 0x35, 0x35, 0x08, - 0x31, 0x2B, 0x2C, 0x2C, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x2C, 0x2C, 0x3B, 0x2C, 0x2C, 0x08, - 0x31, 0x2B, 0x3B, 0x3B, 0x35, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x35, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, - 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x3B, 0x3B, 0x2C, 0x32, 0x30, 0x2C, 0x32, 0x30, 0x3B, 0x35, 0x08, - 0x31, 0x3B, 0x3B, 0x3B, 0x2C, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x2C, 0x08, + 0x31, 0x3B, 0x35, 0x35, 0x26, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x26, 0x3A, 0x3B, 0x35, 0x3B, 0x08, + 0x31, 0x3B, 0x2C, 0x2C, 0x2C, 0x2B, 0x24, 0x24, 0x24, 0x24, 0x2C, 0x3B, 0x3B, 0x2C, 0x3B, 0x08, + 0x2D, 0x3B, 0x3B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x3B, 0x3B, 0x35, 0x3B, 0x35, 0x35, 0x3B, 0x08, + 0x33, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x3B, 0x2C, 0x2B, 0x3B, 0x08, + 0x33, 0x35, 0x3B, 0x3B, 0x3B, 0x2C, 0x35, 0x3B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x08, + 0x34, 0x2C, 0x3B, 0x32, 0x21, 0x30, 0x2B, 0x32, 0x30, 0x3B, 0x2B, 0x32, 0x30, 0x2C, 0x3B, 0x08, + 0x31, 0x35, 0x3B, 0x3B, 0x35, 0x3B, 0x2C, 0x3B, 0x3B, 0x35, 0x2C, 0x3B, 0x3B, 0x35, 0x35, 0x08, + 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x35, 0x3B, 0x2B, 0x32, 0x21, 0x30, 0x2C, 0x2C, 0x08, + 0x31, 0x35, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x2C, 0x3B, 0x35, 0x3B, 0x3B, 0x3B, 0x08, + 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x2B, 0x3B, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x3B, 0x08, + 0x31, 0x35, 0x35, 0x35, 0x2B, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x35, 0x2B, 0x3B, 0x35, 0x35, 0x08, + 0x31, 0x2B, 0x2C, 0x2C, 0x2C, 0x32, 0x30, 0x2B, 0x32, 0x30, 0x2C, 0x2C, 0x3B, 0x2C, 0x2C, 0x08, + 0x31, 0x2B, 0x3B, 0x3B, 0x35, 0x3B, 0x3B, 0x2B, 0x3B, 0x3B, 0x35, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, + 0x31, 0x2C, 0x32, 0x30, 0x2B, 0x3B, 0x3B, 0x2C, 0x32, 0x30, 0x2C, 0x32, 0x30, 0x3B, 0x35, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x2C, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x2C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x3FE5, 0x0401, 0xBDED, 0x8425, 0xDFBD, 0x0221, 0x7E7F, 0x0941, 0x7F7D, 0x0911, 0x7FF7, 0x4101, 0x79F9, 0x0803, 0xFFFF}, @@ -1049,21 +1049,21 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = }, .display = { .metatileData = { - 0xD1, 0xD5, 0xD5, 0xD5, 0xD9, 0xD9, 0x1B, 0x1C, 0x1D, 0xC5, 0xC6, 0xCE, 0xD5, 0xDB, 0xD5, 0x08, - 0xD1, 0xCB, 0xC4, 0xC4, 0xDB, 0xDB, 0xC4, 0xC4, 0xC4, 0xCC, 0xCC, 0xCC, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xDB, 0x17, 0x17, 0x17, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xD5, 0x17, 0x17, 0x17, 0xD5, 0xD5, 0xD5, 0xD5, 0xDF, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0x17, 0x17, 0x1F, 0xCB, 0xCB, 0xC4, 0xC4, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xC4, 0xCB, 0xCB, 0xDF, 0xD5, 0xD5, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xDB, 0xC4, 0xC4, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xD5, 0xD5, 0xDF, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xC4, 0xC4, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xDF, 0xD5, 0xD5, 0xCB, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xC4, 0xC4, 0xDB, 0xC4, 0xC4, 0xC4, 0xDB, 0xCB, 0x08, - 0xD1, 0xCB, 0xDB, 0xCB, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0xDB, 0xD5, 0xD5, 0xD5, 0xCB, 0x08, - 0xD1, 0xC4, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0x08, - 0xD1, 0xDB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0x08, - 0xD1, 0xDB, 0xDB, 0xC4, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xC4, 0xC4, 0xC4, 0xC4, 0x08, + 0xD1, 0xD5, 0xD5, 0xD5, 0xD9, 0xD9, 0x1B, 0x1C, 0x1D, 0xC5, 0xC6, 0xCE, 0xD5, 0xDB, 0xD5, 0x08, + 0xD1, 0xCB, 0xC4, 0xC4, 0xDB, 0xDB, 0xC4, 0xC4, 0xC4, 0xCC, 0xCC, 0xCC, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xDB, 0x17, 0x17, 0x17, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xD5, 0x17, 0x17, 0x17, 0xD5, 0xD5, 0xD5, 0xD5, 0xDF, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0x17, 0x17, 0x1F, 0xCB, 0xCB, 0xC4, 0xC4, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xC4, 0xCB, 0xCB, 0xDF, 0xD5, 0xD5, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xDB, 0xC4, 0xC4, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xD5, 0xD5, 0xDF, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xC4, 0xC4, 0xDB, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xCB, 0xCB, 0xDF, 0xD5, 0xD5, 0xCB, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xC4, 0xC4, 0xDB, 0xC4, 0xC4, 0xC4, 0xDB, 0xCB, 0x08, + 0xD1, 0xCB, 0xDB, 0xCB, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0xDB, 0xD5, 0xD5, 0xD5, 0xCB, 0x08, + 0xD1, 0xC4, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0x08, + 0xD1, 0xDB, 0xDB, 0xCB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0x08, + 0xD1, 0xDB, 0xDB, 0xC4, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xC4, 0xC4, 0xC4, 0xC4, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x73FB, 0x400B, 0x400B, 0x51EB, 0x538B, 0x51BB, 0x518B, 0x51EB, 0x518B, 0x51BB, 0x5003, 0x501F, 0x101F, 0x101F, 0xFFFF}, @@ -1370,21 +1370,21 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = }, .display = { .metatileData = { - 0x31, 0x35, 0x35, 0x35, 0x26, 0x26, 0x13, 0x14, 0x15, 0x38, 0x26, 0x2E, 0x35, 0x35, 0x3B, 0x08, - 0x69, 0x63, 0x64, 0x64, 0x64, 0x64, 0x71, 0x71, 0x71, 0x72, 0x64, 0x64, 0x64, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x43, 0x41, 0x40, 0x41, 0x42, 0x41, 0x41, 0x4A, 0x42, 0x41, 0x41, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x41, 0x43, 0x4B, 0x43, 0x43, 0x41, 0x42, 0x42, 0x40, 0x41, 0x40, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x41, 0x40, 0x42, 0x42, 0x41, 0x41, 0x42, 0x4A, 0x42, 0x41, 0x42, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x41, 0x42, 0x41, 0x43, 0x4B, 0x41, 0x41, 0x41, 0x40, 0x43, 0x41, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, - 0x69, 0x63, 0x41, 0x40, 0x43, 0x41, 0x42, 0x42, 0x41, 0x4A, 0x42, 0x41, 0x42, 0x63, 0x73, 0x08, - 0x69, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x64, 0x73, 0x08, - 0x69, 0x43, 0x43, 0x41, 0x42, 0x42, 0x41, 0x43, 0x41, 0x41, 0x40, 0x42, 0x41, 0x42, 0x73, 0x08, + 0x31, 0x35, 0x35, 0x35, 0x26, 0x26, 0x13, 0x14, 0x15, 0x38, 0x26, 0x2E, 0x35, 0x35, 0x3B, 0x08, + 0x69, 0x63, 0x64, 0x64, 0x64, 0x64, 0x71, 0x71, 0x71, 0x72, 0x64, 0x64, 0x64, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x43, 0x41, 0x40, 0x41, 0x42, 0x41, 0x41, 0x4A, 0x42, 0x41, 0x41, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x41, 0x43, 0x4B, 0x43, 0x43, 0x41, 0x42, 0x42, 0x40, 0x41, 0x40, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x41, 0x40, 0x42, 0x42, 0x41, 0x41, 0x42, 0x4A, 0x42, 0x41, 0x42, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x41, 0x42, 0x41, 0x43, 0x4B, 0x41, 0x41, 0x41, 0x40, 0x43, 0x41, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x63, 0x73, 0x08, + 0x69, 0x63, 0x41, 0x40, 0x43, 0x41, 0x42, 0x42, 0x41, 0x4A, 0x42, 0x41, 0x42, 0x63, 0x73, 0x08, + 0x69, 0x64, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x64, 0x73, 0x73, 0x73, 0x64, 0x73, 0x08, + 0x69, 0x43, 0x43, 0x41, 0x42, 0x42, 0x41, 0x43, 0x41, 0x41, 0x40, 0x42, 0x41, 0x42, 0x73, 0x08, 0x69, 0x42, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x42, 0x73, 0x08, }, .collisionData = {0x0381, 0x7C3D, 0x4005, 0x4005, 0x4005, 0x4045, 0x4005, 0x4805, 0x4005, 0x4045, 0x4005, 0x4205, 0x4005, 0x4045, 0x1, 0x1}, @@ -1684,21 +1684,21 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x1F, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x24, 0x24, 0x24, 0x2B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, - 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x35, 0x35, 0x3B, 0x35, 0x35, 0x08, - 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x2C, 0x2C, 0x3B, 0x2C, 0x2C, 0x08, - 0x33, 0x17, 0x1F, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x34, 0x17, 0x2C, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2C, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x17, 0x17, 0x17, 0x17, 0x17, 0x2C, 0x3B, 0x3B, 0x3B, 0x3B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x1F, 0x17, 0x17, 0x17, 0x17, 0x1F, 0x17, 0x3B, 0x3B, 0x3B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x35, 0x1F, 0x17, 0x17, 0x1F, 0x17, 0x08, - 0x34, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x2C, 0x3B, 0x3B, 0x2B, 0x17, 0x08, - 0x17, 0x17, 0x17, 0x1F, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x17, 0x17, 0x2C, 0x17, 0x08, - 0x1F, 0x17, 0x17, 0x2C, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x3B, 0x1F, 0x3B, 0x17, 0x08, - 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x3B, 0x2B, 0x3B, 0x17, 0x08, - 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x35, 0x35, 0x35, 0x2B, 0x17, 0x3B, 0x2C, 0x3B, 0x17, 0x08, - 0x34, 0x17, 0x17, 0x17, 0x17, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x1F, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x24, 0x24, 0x24, 0x2B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, + 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x35, 0x35, 0x3B, 0x35, 0x35, 0x08, + 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x2C, 0x2C, 0x3B, 0x2C, 0x2C, 0x08, + 0x33, 0x17, 0x1F, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x34, 0x17, 0x2C, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2C, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x17, 0x17, 0x17, 0x17, 0x17, 0x2C, 0x3B, 0x3B, 0x3B, 0x3B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x1F, 0x17, 0x17, 0x17, 0x17, 0x1F, 0x17, 0x3B, 0x3B, 0x3B, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x35, 0x1F, 0x17, 0x17, 0x1F, 0x17, 0x08, + 0x34, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x2C, 0x3B, 0x3B, 0x2B, 0x17, 0x08, + 0x17, 0x17, 0x17, 0x1F, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x17, 0x17, 0x2C, 0x17, 0x08, + 0x1F, 0x17, 0x17, 0x2C, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x3B, 0x1F, 0x3B, 0x17, 0x08, + 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x3B, 0x3B, 0x3B, 0x2B, 0x17, 0x3B, 0x2B, 0x3B, 0x17, 0x08, + 0x33, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x35, 0x35, 0x35, 0x2B, 0x17, 0x3B, 0x2C, 0x3B, 0x17, 0x08, + 0x34, 0x17, 0x17, 0x17, 0x17, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7C1, 0x8441, 0x8477, 0x8441, 0xA441, 0x0401, 0x1, 0x8401, 0x8465, 0x0445, 0x1441, 0x8449, 0x8449, 0x87C1, 0xFFFF}, @@ -2005,21 +2005,21 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x42, 0x43, 0x43, 0x43, 0x43, 0x43, 0x40, 0x41, 0x41, 0x08, - 0x40, 0xFB, 0x43, 0x41, 0x41, 0x41, 0x42, 0x40, 0x43, 0x41, 0x42, 0x42, 0x42, 0xFB, 0x41, 0x08, - 0x40, 0x41, 0xFB, 0x41, 0x41, 0x41, 0x42, 0x40, 0x43, 0x41, 0x43, 0x43, 0xFB, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0xFB, 0x43, 0x41, 0x42, 0x40, 0x43, 0x43, 0x43, 0xFB, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0x41, 0x42, 0x42, 0x42, 0x40, 0x43, 0x43, 0x43, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x42, 0x41, 0xFE, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x42, 0x41, 0x43, 0x43, 0x43, 0x41, 0x40, 0x42, 0x42, 0x42, 0x42, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x40, 0x41, 0xFB, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0xFB, 0x41, 0x40, 0x41, 0x08, - 0x40, 0x40, 0xFB, 0x43, 0x43, 0x41, 0x41, 0x41, 0x42, 0x42, 0x42, 0x42, 0xFB, 0x40, 0x41, 0x08, - 0x40, 0xFB, 0x43, 0x43, 0x41, 0x41, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0xFB, 0x41, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x42, 0x43, 0x43, 0x43, 0x43, 0x43, 0x40, 0x41, 0x41, 0x08, + 0x40, 0xFB, 0x43, 0x41, 0x41, 0x41, 0x42, 0x40, 0x43, 0x41, 0x42, 0x42, 0x42, 0xFB, 0x41, 0x08, + 0x40, 0x41, 0xFB, 0x41, 0x41, 0x41, 0x42, 0x40, 0x43, 0x41, 0x43, 0x43, 0xFB, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0xFB, 0x43, 0x41, 0x42, 0x40, 0x43, 0x43, 0x43, 0xFB, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0x41, 0x42, 0x42, 0x42, 0x40, 0x43, 0x43, 0x43, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x42, 0x41, 0xFE, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x41, 0x41, 0x41, 0xFE, 0xFE, 0xFE, 0xFB, 0xFE, 0xFE, 0xFE, 0x41, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x42, 0x41, 0x43, 0x43, 0x43, 0x41, 0x40, 0x42, 0x42, 0x42, 0x42, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x40, 0x41, 0xFB, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0xFB, 0x41, 0x40, 0x41, 0x08, + 0x40, 0x40, 0xFB, 0x43, 0x43, 0x41, 0x41, 0x41, 0x42, 0x42, 0x42, 0x42, 0xFB, 0x40, 0x41, 0x08, + 0x40, 0xFB, 0x43, 0x43, 0x41, 0x41, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0xFB, 0x41, 0x08, 0x40, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x08, }, .collisionData = {0x0381, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1}, @@ -2345,21 +2345,21 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x91, 0x9B, 0x9C, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x9C, 0x9B, 0x08, - 0x9C, 0x9B, 0x96, 0x40, 0xDB, 0xDB, 0x40, 0x96, 0x40, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x08, - 0x91, 0x96, 0x40, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x42, 0x96, 0x9C, 0x08, - 0x91, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x9B, 0x08, - 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, - 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, - 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, - 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x08, - 0x91, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x08, - 0x91, 0x9B, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9C, 0x08, - 0x9C, 0x9B, 0x9B, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9B, 0x08, - 0x96, 0x9B, 0x9B, 0x9B, 0x96, 0x41, 0xDB, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9C, 0x96, 0x08, - 0xD6, 0x96, 0x9C, 0x9B, 0x9B, 0x96, 0x41, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9B, 0x96, 0xD6, 0x08, - 0x9C, 0xD6, 0x96, 0x9B, 0x9C, 0x9B, 0x96, 0x40, 0x96, 0x9B, 0x9C, 0x9B, 0x96, 0xD6, 0x9C, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x91, 0x9B, 0x9C, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x9C, 0x9B, 0x08, + 0x9C, 0x9B, 0x96, 0x40, 0xDB, 0xDB, 0x40, 0x96, 0x40, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x08, + 0x91, 0x96, 0x40, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x42, 0x96, 0x9C, 0x08, + 0x91, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x9B, 0x08, + 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, + 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, + 0x96, 0x42, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0x42, 0x96, 0x08, + 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x08, + 0x91, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x08, + 0x91, 0x9B, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9C, 0x08, + 0x9C, 0x9B, 0x9B, 0x96, 0x42, 0xDB, 0xDB, 0xD6, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9B, 0x08, + 0x96, 0x9B, 0x9B, 0x9B, 0x96, 0x41, 0xDB, 0xDB, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9C, 0x96, 0x08, + 0xD6, 0x96, 0x9C, 0x9B, 0x9B, 0x96, 0x41, 0xDB, 0x42, 0x96, 0x9B, 0x9B, 0x9B, 0x96, 0xD6, 0x08, + 0x9C, 0xD6, 0x96, 0x9B, 0x9C, 0x9B, 0x96, 0x40, 0x96, 0x9B, 0x9C, 0x9B, 0x96, 0xD6, 0x9C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xFFFF}, @@ -2666,21 +2666,21 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x1C, 0x1D, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x91, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x84, 0x84, 0x84, 0x9A, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, - 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, - 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x1C, 0x1D, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x91, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x84, 0x84, 0x84, 0x9A, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, + 0x17, 0x17, 0x17, 0x17, 0xBB, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x08, + 0x17, 0xB2, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xA1, 0xB0, 0x17, 0xB2, 0xA1, 0x08, 0x17, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0x17, 0xBB, 0xBB, 0x08, }, .collisionData = {0x0381, 0x0381, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1}, @@ -2978,21 +2978,21 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x69, 0x40, 0x6D, 0x41, 0x73, 0x41, 0x5E, 0x41, 0x71, 0x42, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, - 0x43, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x41, 0x73, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, - 0x65, 0x40, 0x73, 0x42, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x42, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, - 0x6C, 0x73, 0x41, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x42, 0x73, 0x41, 0x08, - 0x69, 0x40, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x43, 0x73, 0x43, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x08, - 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x08, - 0x65, 0x42, 0x73, 0x42, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x42, 0x73, 0x41, 0x6D, 0x42, 0x73, 0x08, - 0x6C, 0x73, 0x41, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x08, - 0x69, 0x40, 0x6D, 0x41, 0x73, 0x41, 0x6D, 0x42, 0x73, 0x43, 0x6D, 0x41, 0x73, 0x43, 0x6D, 0x08, - 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x08, - 0x65, 0x42, 0x73, 0x42, 0x6D, 0x43, 0x73, 0x42, 0x6D, 0x42, 0x73, 0x41, 0x6D, 0x40, 0x73, 0x08, - 0x6C, 0x73, 0x40, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x08, - 0x69, 0x40, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x43, 0x73, 0x40, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x08, - 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x69, 0x40, 0x6D, 0x41, 0x73, 0x41, 0x5E, 0x41, 0x71, 0x42, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, + 0x43, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x41, 0x73, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, + 0x65, 0x40, 0x73, 0x42, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x42, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, + 0x6C, 0x73, 0x41, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x42, 0x73, 0x41, 0x08, + 0x69, 0x40, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x43, 0x73, 0x43, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x08, + 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x08, + 0x65, 0x42, 0x73, 0x42, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x42, 0x73, 0x41, 0x6D, 0x42, 0x73, 0x08, + 0x6C, 0x73, 0x41, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x08, + 0x69, 0x40, 0x6D, 0x41, 0x73, 0x41, 0x6D, 0x42, 0x73, 0x43, 0x6D, 0x41, 0x73, 0x43, 0x6D, 0x08, + 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x08, + 0x65, 0x42, 0x73, 0x42, 0x6D, 0x43, 0x73, 0x42, 0x6D, 0x42, 0x73, 0x41, 0x6D, 0x40, 0x73, 0x08, + 0x6C, 0x73, 0x40, 0x73, 0x64, 0x73, 0x41, 0x73, 0x64, 0x73, 0x42, 0x73, 0x64, 0x73, 0x42, 0x08, + 0x69, 0x40, 0x6D, 0x42, 0x73, 0x42, 0x6D, 0x43, 0x73, 0x40, 0x6D, 0x41, 0x73, 0x40, 0x6D, 0x08, + 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x40, 0x73, 0x64, 0x73, 0x43, 0x73, 0x64, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x1, 0x2201, 0x1, 0x8881, 0x1, 0x2223, 0x1, 0x8889, 0x1, 0x2223, 0x1, 0x8889, 0x1, 0x2223, 0xFFFF}, @@ -3304,21 +3304,21 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { }, .display = { .metatileData = { - 0xF1, 0xF5, 0xFB, 0xF5, 0xE6, 0xE6, 0x1B, 0x14, 0x15, 0xF8, 0xF9, 0xFA, 0xFB, 0xFB, 0xFB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xF9, 0xE6, 0xEE, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0x9B, 0x9B, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0x9B, 0xDB, 0xDB, 0x9B, 0xEC, 0xFB, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xF5, 0x95, 0x95, 0xF5, 0xF5, 0xF5, 0xEB, 0xEC, 0xEB, 0xFB, 0xEB, 0x08, - 0xED, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0x08, - 0xF4, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xF5, 0xFB, 0x08, - 0xF1, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0x08, - 0xF1, 0xF5, 0xF5, 0xEB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0xFB, 0x08, - 0xF1, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0xEB, 0xFB, 0x08, - 0xF1, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xFB, 0xEB, 0xFB, 0x08, - 0xF1, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0xEC, 0xFB, 0x08, - 0xF1, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xF5, 0xFB, 0xF5, 0xE6, 0xE6, 0x1B, 0x14, 0x15, 0xF8, 0xF9, 0xFA, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xF9, 0xE6, 0xEE, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0x9B, 0x9B, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0x9B, 0xDB, 0xDB, 0x9B, 0xEC, 0xFB, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xF5, 0x95, 0x95, 0xF5, 0xF5, 0xF5, 0xEB, 0xEC, 0xEB, 0xFB, 0xEB, 0x08, + 0xED, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0x08, + 0xF4, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xF5, 0xFB, 0x08, + 0xF1, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0x08, + 0xF1, 0xF5, 0xF5, 0xEB, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0xFB, 0x08, + 0xF1, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEB, 0xFB, 0xEB, 0xFB, 0x08, + 0xF1, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xEB, 0xFB, 0xEB, 0xFB, 0x08, + 0xF1, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0xEC, 0xFB, 0x08, + 0xF1, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x5E01, 0x50FF, 0x5083, 0x503B, 0x5FEB, 0xC02B, 0x5FEB, 0x5009, 0x57FD, 0x1005, 0x7FF5, 0x15, 0x7FF5, 0x1, 0xFFFF}, @@ -3625,21 +3625,21 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x2D, 0x3B, 0x3B, 0x3B, 0x35, 0x2C, 0x23, 0x24, 0x23, 0x2C, 0x35, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, - 0x94, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x8C, 0x87, 0x8C, 0x87, 0x95, 0x87, 0x9B, 0x08, - 0x91, 0x8F, 0x9B, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x95, 0x08, - 0x8D, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x95, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x8C, 0x08, - 0x94, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x9B, 0x9B, 0x9B, 0x87, 0x9B, 0x08, - 0x91, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x95, 0x9B, 0x95, 0x8F, 0x9B, 0x08, - 0x91, 0x97, 0x95, 0x97, 0x8C, 0x97, 0x95, 0x97, 0x95, 0x97, 0x8C, 0x9B, 0x8C, 0x97, 0x95, 0x08, - 0x91, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x9B, 0x87, 0x95, 0x87, 0x8C, 0x08, - 0x8D, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x08, - 0x94, 0x97, 0x95, 0x97, 0x8C, 0x97, 0x9B, 0x97, 0x95, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x9B, 0x08, - 0x91, 0x87, 0x8C, 0x87, 0x95, 0x87, 0x95, 0x87, 0x8B, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x9B, 0x08, - 0x91, 0x8F, 0x95, 0x8F, 0x8B, 0x8F, 0x8C, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x08, - 0x91, 0x97, 0x8C, 0x97, 0x8C, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x8B, 0x97, 0x9B, 0x08, - 0x91, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x8C, 0x9B, 0x9B, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x2D, 0x3B, 0x3B, 0x3B, 0x35, 0x2C, 0x23, 0x24, 0x23, 0x2C, 0x35, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, + 0x94, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x8C, 0x87, 0x8C, 0x87, 0x95, 0x87, 0x9B, 0x08, + 0x91, 0x8F, 0x9B, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x95, 0x08, + 0x8D, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x95, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x8C, 0x08, + 0x94, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x9B, 0x9B, 0x9B, 0x87, 0x9B, 0x08, + 0x91, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x95, 0x9B, 0x95, 0x8F, 0x9B, 0x08, + 0x91, 0x97, 0x95, 0x97, 0x8C, 0x97, 0x95, 0x97, 0x95, 0x97, 0x8C, 0x9B, 0x8C, 0x97, 0x95, 0x08, + 0x91, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x8C, 0x87, 0x8B, 0x87, 0x9B, 0x87, 0x95, 0x87, 0x8C, 0x08, + 0x8D, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x8C, 0x8F, 0x9B, 0x08, + 0x94, 0x97, 0x95, 0x97, 0x8C, 0x97, 0x9B, 0x97, 0x95, 0x97, 0x95, 0x97, 0x9B, 0x97, 0x9B, 0x08, + 0x91, 0x87, 0x8C, 0x87, 0x95, 0x87, 0x95, 0x87, 0x8B, 0x87, 0x8C, 0x87, 0x9B, 0x87, 0x9B, 0x08, + 0x91, 0x8F, 0x95, 0x8F, 0x8B, 0x8F, 0x8C, 0x8F, 0x8C, 0x8F, 0x9B, 0x8F, 0x95, 0x8F, 0x9B, 0x08, + 0x91, 0x97, 0x8C, 0x97, 0x8C, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x9B, 0x97, 0x8B, 0x97, 0x9B, 0x08, + 0x91, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x8C, 0x9B, 0x9B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7C1, 0x8AA1, 0x0209, 0x5557, 0xA281, 0x81, 0x5D6D, 0x2283, 0x89, 0xDD55, 0x20A1, 0xA81, 0x7D5D, 0x9, 0xFFFF}, @@ -3946,21 +3946,21 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7C, 0x46, 0x08, - 0x69, 0x46, 0x7A, 0x73, 0x73, 0x73, 0x79, 0x73, 0x73, 0x73, 0x7D, 0x73, 0x73, 0x73, 0x46, 0x08, - 0x69, 0x46, 0x73, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, - 0x69, 0x46, 0x73, 0x73, 0x7B, 0x73, 0x7C, 0x73, 0x7B, 0x73, 0x7A, 0x73, 0x73, 0x73, 0x46, 0x08, - 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7A, 0x46, 0x08, - 0x69, 0x46, 0x73, 0x73, 0x73, 0x73, 0x73, 0x7D, 0x7C, 0x73, 0x7C, 0x73, 0x7B, 0x73, 0x46, 0x08, - 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7C, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, - 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, - 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, - 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, - 0xF1, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, - 0xF1, 0x46, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x7A, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x7C, 0x08, - 0xF1, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0xFB, 0x08, - 0x7C, 0xFB, 0x7B, 0xFB, 0x7A, 0xFB, 0x79, 0xFB, 0xB3, 0xFB, 0x7D, 0xFB, 0x7E, 0xFB, 0x7D, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7C, 0x46, 0x08, + 0x69, 0x46, 0x7A, 0x73, 0x73, 0x73, 0x79, 0x73, 0x73, 0x73, 0x7D, 0x73, 0x73, 0x73, 0x46, 0x08, + 0x69, 0x46, 0x73, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, + 0x69, 0x46, 0x73, 0x73, 0x7B, 0x73, 0x7C, 0x73, 0x7B, 0x73, 0x7A, 0x73, 0x73, 0x73, 0x46, 0x08, + 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7A, 0x46, 0x08, + 0x69, 0x46, 0x73, 0x73, 0x73, 0x73, 0x73, 0x7D, 0x7C, 0x73, 0x7C, 0x73, 0x7B, 0x73, 0x46, 0x08, + 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7C, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, + 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, + 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, + 0x91, 0x46, 0x9B, 0x9B, 0x9B, 0x46, 0x3B, 0x3B, 0x3B, 0x46, 0x9B, 0x9B, 0x9B, 0x9B, 0x46, 0x08, + 0xF1, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x78, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, + 0xF1, 0x46, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x7A, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x7C, 0x08, + 0xF1, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0xFB, 0x08, + 0x7C, 0xFB, 0x7B, 0xFB, 0x7A, 0xFB, 0x79, 0xFB, 0xB3, 0xFB, 0x7D, 0xFB, 0x7E, 0xFB, 0x7D, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7FFB, 0x4003, 0x5FFF, 0x4003, 0x7FFB, 0x4003, 0x7EFF, 0x4443, 0x4443, 0x4443, 0x7EFF, 0x4001, 0x7FFD, 0x1, 0xFFFF}, @@ -4257,21 +4257,21 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { }, .display = { .metatileData = { - 0xF1, 0xFB, 0xFB, 0xFB, 0xF9, 0xF9, 0x1B, 0x1C, 0x1D, 0xE5, 0xE6, 0xEE, 0xF5, 0xFB, 0xFB, 0x08, - 0xED, 0xF5, 0xF5, 0xF5, 0xFB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEB, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0x08, - 0xF4, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, - 0xF1, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, - 0xF1, 0xEB, 0xEC, 0xEC, 0xEC, 0xEB, 0xEC, 0xEC, 0xFB, 0xEC, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0x08, - 0xF1, 0xEB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xF5, 0xFB, 0xF5, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, - 0xF1, 0xEB, 0xFB, 0xF5, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xF5, 0xF5, 0xF5, 0xFB, 0xFB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, - 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0x08, - 0xF1, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0x08, - 0xF1, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, - 0xF1, 0xFB, 0xFB, 0xEC, 0xFB, 0xFB, 0xFB, 0xEC, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xFB, 0xFB, 0xFB, 0xF9, 0xF9, 0x1B, 0x1C, 0x1D, 0xE5, 0xE6, 0xEE, 0xF5, 0xFB, 0xFB, 0x08, + 0xED, 0xF5, 0xF5, 0xF5, 0xFB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEB, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0x08, + 0xF4, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, + 0xF1, 0xEB, 0xEC, 0xEC, 0xEC, 0xEB, 0xEC, 0xEC, 0xFB, 0xEC, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0x08, + 0xF1, 0xEB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xF5, 0xFB, 0xF5, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xEB, 0xFB, 0xF5, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xF5, 0xF5, 0xF5, 0xFB, 0xFB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xFB, 0xEB, 0xF5, 0xF5, 0xF5, 0xF5, 0xFB, 0x08, + 0xF1, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xFB, 0xEB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEC, 0xEC, 0xFB, 0x08, + 0xF1, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xEB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, + 0xF1, 0xFB, 0xFB, 0xEC, 0xFB, 0xFB, 0xFB, 0xEC, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x3F9, 0xF041, 0x41, 0x7F5F, 0x4401, 0x4541, 0x5579, 0x5541, 0x555F, 0x5541, 0x5541, 0x557D, 0x1101, 0x1101, 0xFFFF}, @@ -4590,21 +4590,21 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x31, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x2C, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, - 0x31, 0x3B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x3B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x3B, 0x3B, 0x08, - 0x69, 0x73, 0x08, 0x4D, 0x4D, 0x4D, 0x4D, 0xD1, 0x4D, 0x4D, 0x4D, 0x4D, 0x08, 0x69, 0x73, 0x08, - 0x40, 0x3B, 0x08, 0x55, 0x55, 0x55, 0x55, 0xD1, 0x55, 0x55, 0x55, 0x55, 0x08, 0x31, 0x41, 0x08, - 0x69, 0x41, 0x08, 0xC5, 0xD9, 0xD9, 0xD9, 0x9A, 0xD9, 0xD9, 0xD9, 0xC6, 0x08, 0x41, 0x73, 0x08, - 0x69, 0x3B, 0x08, 0xD4, 0xDB, 0x9B, 0x73, 0x73, 0x73, 0x9B, 0xDB, 0xCC, 0x08, 0x31, 0x73, 0x08, - 0x69, 0x3B, 0x08, 0xCD, 0x9B, 0x73, 0x73, 0x44, 0x73, 0x73, 0x9B, 0xD5, 0x08, 0x31, 0x73, 0x08, - 0x69, 0x3B, 0x08, 0xD4, 0xDB, 0x9B, 0x73, 0x73, 0x73, 0x9B, 0xDB, 0xCC, 0x08, 0x31, 0x73, 0x08, - 0x69, 0x41, 0x08, 0xD1, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xDB, 0xDB, 0xDB, 0x08, 0x41, 0x73, 0x08, - 0x40, 0x3B, 0x08, 0x08, 0xC7, 0xC7, 0xDB, 0xDB, 0xDB, 0xC7, 0xC7, 0x08, 0x08, 0x31, 0x41, 0x08, - 0x69, 0x3B, 0x4D, 0x4D, 0x67, 0x67, 0xDB, 0xDB, 0xDB, 0x67, 0x67, 0x4D, 0x4D, 0x31, 0x73, 0x08, - 0x69, 0x3B, 0x55, 0x55, 0xD7, 0xD7, 0xD1, 0xDB, 0xDB, 0xD7, 0xD7, 0x55, 0x55, 0x31, 0x73, 0x08, - 0x69, 0x3B, 0x39, 0x39, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x39, 0x39, 0x39, 0x39, 0x3A, 0x73, 0x08, - 0x69, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x2C, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, + 0x31, 0x3B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x3B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x3B, 0x3B, 0x08, + 0x69, 0x73, 0x08, 0x4D, 0x4D, 0x4D, 0x4D, 0xD1, 0x4D, 0x4D, 0x4D, 0x4D, 0x08, 0x69, 0x73, 0x08, + 0x40, 0x3B, 0x08, 0x55, 0x55, 0x55, 0x55, 0xD1, 0x55, 0x55, 0x55, 0x55, 0x08, 0x31, 0x41, 0x08, + 0x69, 0x41, 0x08, 0xC5, 0xD9, 0xD9, 0xD9, 0x9A, 0xD9, 0xD9, 0xD9, 0xC6, 0x08, 0x41, 0x73, 0x08, + 0x69, 0x3B, 0x08, 0xD4, 0xDB, 0x9B, 0x73, 0x73, 0x73, 0x9B, 0xDB, 0xCC, 0x08, 0x31, 0x73, 0x08, + 0x69, 0x3B, 0x08, 0xCD, 0x9B, 0x73, 0x73, 0x44, 0x73, 0x73, 0x9B, 0xD5, 0x08, 0x31, 0x73, 0x08, + 0x69, 0x3B, 0x08, 0xD4, 0xDB, 0x9B, 0x73, 0x73, 0x73, 0x9B, 0xDB, 0xCC, 0x08, 0x31, 0x73, 0x08, + 0x69, 0x41, 0x08, 0xD1, 0xDB, 0xDB, 0xDB, 0x9B, 0xDB, 0xDB, 0xDB, 0xDB, 0x08, 0x41, 0x73, 0x08, + 0x40, 0x3B, 0x08, 0x08, 0xC7, 0xC7, 0xDB, 0xDB, 0xDB, 0xC7, 0xC7, 0x08, 0x08, 0x31, 0x41, 0x08, + 0x69, 0x3B, 0x4D, 0x4D, 0x67, 0x67, 0xDB, 0xDB, 0xDB, 0x67, 0x67, 0x4D, 0x4D, 0x31, 0x73, 0x08, + 0x69, 0x3B, 0x55, 0x55, 0xD7, 0xD7, 0xD1, 0xDB, 0xDB, 0xD7, 0xD7, 0x55, 0x55, 0x31, 0x73, 0x08, + 0x69, 0x3B, 0x39, 0x39, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x39, 0x39, 0x39, 0x39, 0x3A, 0x73, 0x08, + 0x69, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x0201, 0x3EF9, 0x3EF9, 0x3EF9, 0x2009, 0x3019, 0x2009, 0x3019, 0x2009, 0x3019, 0x3019, 0x3C79, 0x1, 0x1, 0xFFFF}, @@ -4912,21 +4912,21 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x78, 0x08, - 0x91, 0x46, 0x9B, 0x7C, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7C, 0x9B, 0x7B, 0x9B, 0x7A, 0x9B, 0x08, - 0x91, 0x46, 0x7D, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, - 0x91, 0x46, 0x9B, 0x7E, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0xB3, 0x9B, 0x9B, 0x9B, 0x08, - 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x9B, 0x08, - 0x91, 0x46, 0x9B, 0x7D, 0x9B, 0x7C, 0x9B, 0x7B, 0x9B, 0x7A, 0x9B, 0x7C, 0x9B, 0x9B, 0x9B, 0x08, - 0x91, 0x46, 0x9B, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, - 0x91, 0x46, 0x9B, 0x7C, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0x08, - 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0xB3, 0x08, - 0x91, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x9B, 0x08, - 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x08, - 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0x08, - 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x08, - 0x91, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x9B, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x78, 0x08, + 0x91, 0x46, 0x9B, 0x7C, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7C, 0x9B, 0x7B, 0x9B, 0x7A, 0x9B, 0x08, + 0x91, 0x46, 0x7D, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, + 0x91, 0x46, 0x9B, 0x7E, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0xB3, 0x9B, 0x9B, 0x9B, 0x08, + 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x9B, 0x08, + 0x91, 0x46, 0x9B, 0x7D, 0x9B, 0x7C, 0x9B, 0x7B, 0x9B, 0x7A, 0x9B, 0x7C, 0x9B, 0x9B, 0x9B, 0x08, + 0x91, 0x46, 0x9B, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x08, + 0x91, 0x46, 0x9B, 0x7C, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0x9B, 0x9B, 0x7D, 0x9B, 0x7E, 0x9B, 0x08, + 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0xB3, 0x08, + 0x91, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x9B, 0x08, + 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x08, + 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0x08, + 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xDB, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x08, + 0x91, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0xDB, 0xD6, 0x96, 0x9B, 0x9B, 0x96, 0xD6, 0x9B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7FFD, 0x4001, 0x5FFF, 0x4001, 0x7FFD, 0x4001, 0x5FFF, 0x4001, 0x7FFD, 0x1, 0x1, 0x1, 0x1, 0x1, 0xFFFF}, @@ -5234,21 +5234,21 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { }, .display = { .metatileData = { - 0xD1, 0xDB, 0xDB, 0xDB, 0xD9, 0xD9, 0x1B, 0x14, 0x15, 0x98, 0x99, 0x9A, 0x9B, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xDB, 0xDB, 0xD5, 0xD5, 0xC3, 0xF9, 0x86, 0x8E, 0x95, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xDB, 0xD5, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xD5, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x9B, 0x08, - 0xD1, 0xD5, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8C, 0x8B, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x08, - 0xD1, 0xCB, 0xCB, 0xCB, 0xCB, 0xCC, 0xCC, 0xFB, 0xFB, 0x8C, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, - 0xD1, 0xCC, 0xCC, 0xCC, 0xCC, 0xFB, 0xF5, 0xFB, 0xF5, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, - 0xD1, 0xD5, 0xD5, 0xD5, 0xD5, 0xFB, 0xEC, 0xFB, 0xEC, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, - 0xD1, 0xCB, 0xCB, 0xCB, 0xCB, 0xF5, 0xF5, 0xFB, 0xFB, 0xF5, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, - 0xD1, 0xCC, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x08, - 0xD1, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0xF5, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xCC, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xDB, 0xCC, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x9B, 0x9B, 0x08, - 0xD1, 0xDB, 0xDB, 0xDB, 0xCC, 0xCC, 0xCB, 0xFB, 0x8C, 0x8C, 0x8C, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xDB, 0xDB, 0xD9, 0xD9, 0x1B, 0x14, 0x15, 0x98, 0x99, 0x9A, 0x9B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xDB, 0xDB, 0xD5, 0xD5, 0xC3, 0xF9, 0x86, 0x8E, 0x95, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xDB, 0xD5, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xD5, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x9B, 0x08, + 0xD1, 0xD5, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8C, 0x8B, 0x8B, 0x8B, 0x8B, 0x95, 0x9B, 0x08, + 0xD1, 0xCB, 0xCB, 0xCB, 0xCB, 0xCC, 0xCC, 0xFB, 0xFB, 0x8C, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, + 0xD1, 0xCC, 0xCC, 0xCC, 0xCC, 0xFB, 0xF5, 0xFB, 0xF5, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, + 0xD1, 0xD5, 0xD5, 0xD5, 0xD5, 0xFB, 0xEC, 0xFB, 0xEC, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, + 0xD1, 0xCB, 0xCB, 0xCB, 0xCB, 0xF5, 0xF5, 0xFB, 0xFB, 0xF5, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x08, + 0xD1, 0xCC, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x08, + 0xD1, 0xDB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0xF5, 0x8B, 0x8B, 0x8B, 0x8B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xCC, 0xCB, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xDB, 0xCC, 0xCB, 0xCB, 0xCB, 0xFB, 0x8B, 0x8B, 0x8B, 0x8C, 0x9B, 0x9B, 0x9B, 0x08, + 0xD1, 0xDB, 0xDB, 0xDB, 0xCC, 0xCC, 0xCB, 0xFB, 0x8C, 0x8C, 0x8C, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, 0xD1, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xCC, 0xFB, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, }, .collisionData = {0x0381, 0x0201, 0xEE1, 0x1EF1, 0x3EF9, 0x3EF9, 0x7E7D, 0x783D, 0x2BD, 0x783D, 0x7E7D, 0x3E79, 0x3EF9, 0x1EF1, 0xEE1, 0x201}, @@ -5548,21 +5548,21 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { }, .display = { .metatileData = { - 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, - 0x96, 0xFB, 0xF6, 0xFD, 0xF6, 0xF6, 0xFB, 0x46, 0xFB, 0xF6, 0xF6, 0xFD, 0xF6, 0xFB, 0x9B, 0x08, - 0xFB, 0x9B, 0xFB, 0xF6, 0xFB, 0xFB, 0xFB, 0x46, 0xFB, 0xFB, 0xFB, 0xF6, 0xFB, 0x9B, 0xFB, 0x08, - 0xF6, 0xFB, 0x9B, 0xFB, 0xFB, 0x46, 0x46, 0x9B, 0x46, 0x46, 0xFB, 0xFB, 0x9B, 0xFB, 0xF6, 0x08, - 0xFD, 0xF6, 0xFB, 0x9B, 0x46, 0x36, 0x36, 0x9B, 0x36, 0x36, 0x46, 0x9B, 0xFB, 0xF6, 0xFD, 0x08, - 0xF6, 0xFB, 0xFB, 0x46, 0x9B, 0x46, 0x46, 0xDB, 0x46, 0x46, 0x9B, 0x46, 0xFB, 0xFB, 0xF6, 0x08, - 0xF6, 0xFB, 0x46, 0x36, 0x46, 0x9B, 0xDB, 0xD6, 0xDB, 0x9B, 0x46, 0x36, 0x46, 0xFB, 0xF6, 0x08, - 0xFB, 0xFB, 0x46, 0x36, 0x9B, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0x9B, 0x36, 0x46, 0xFB, 0xFB, 0x08, - 0x96, 0x9B, 0x9B, 0x9B, 0x9B, 0xD6, 0xD6, 0x96, 0xD6, 0xD6, 0xDB, 0x9B, 0x9B, 0x9B, 0x96, 0x08, - 0xFB, 0xFB, 0x46, 0x36, 0x9B, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0x9B, 0x36, 0x46, 0xFB, 0xFB, 0x08, - 0xF6, 0xFB, 0x46, 0x36, 0x46, 0x9B, 0xDB, 0xD6, 0xDB, 0x9B, 0x46, 0x36, 0x46, 0xFB, 0xF6, 0x08, - 0xF6, 0xFB, 0xFB, 0x46, 0x9B, 0x46, 0x46, 0xDB, 0x46, 0x46, 0x9B, 0x46, 0xFB, 0xFB, 0xF6, 0x08, - 0xFD, 0xF6, 0xFB, 0x9B, 0x46, 0x36, 0x36, 0x9B, 0x36, 0x36, 0x46, 0x9B, 0xFB, 0xF6, 0xFD, 0x08, - 0xF6, 0xFB, 0x9B, 0xFB, 0xFB, 0x46, 0x46, 0x9B, 0x46, 0x46, 0xFB, 0xFB, 0x9B, 0xFB, 0xF6, 0x08, - 0xFB, 0x9B, 0xFB, 0xF6, 0xFB, 0xFB, 0xFB, 0x46, 0xFB, 0xFB, 0xFB, 0xF6, 0xFB, 0x9B, 0xFB, 0x08, + 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, + 0x96, 0xFB, 0xF6, 0xFD, 0xF6, 0xF6, 0xFB, 0x46, 0xFB, 0xF6, 0xF6, 0xFD, 0xF6, 0xFB, 0x9B, 0x08, + 0xFB, 0x9B, 0xFB, 0xF6, 0xFB, 0xFB, 0xFB, 0x46, 0xFB, 0xFB, 0xFB, 0xF6, 0xFB, 0x9B, 0xFB, 0x08, + 0xF6, 0xFB, 0x9B, 0xFB, 0xFB, 0x46, 0x46, 0x9B, 0x46, 0x46, 0xFB, 0xFB, 0x9B, 0xFB, 0xF6, 0x08, + 0xFD, 0xF6, 0xFB, 0x9B, 0x46, 0x36, 0x36, 0x9B, 0x36, 0x36, 0x46, 0x9B, 0xFB, 0xF6, 0xFD, 0x08, + 0xF6, 0xFB, 0xFB, 0x46, 0x9B, 0x46, 0x46, 0xDB, 0x46, 0x46, 0x9B, 0x46, 0xFB, 0xFB, 0xF6, 0x08, + 0xF6, 0xFB, 0x46, 0x36, 0x46, 0x9B, 0xDB, 0xD6, 0xDB, 0x9B, 0x46, 0x36, 0x46, 0xFB, 0xF6, 0x08, + 0xFB, 0xFB, 0x46, 0x36, 0x9B, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0x9B, 0x36, 0x46, 0xFB, 0xFB, 0x08, + 0x96, 0x9B, 0x9B, 0x9B, 0x9B, 0xD6, 0xD6, 0x96, 0xD6, 0xD6, 0xDB, 0x9B, 0x9B, 0x9B, 0x96, 0x08, + 0xFB, 0xFB, 0x46, 0x36, 0x9B, 0xDB, 0xD6, 0xD6, 0xD6, 0xDB, 0x9B, 0x36, 0x46, 0xFB, 0xFB, 0x08, + 0xF6, 0xFB, 0x46, 0x36, 0x46, 0x9B, 0xDB, 0xD6, 0xDB, 0x9B, 0x46, 0x36, 0x46, 0xFB, 0xF6, 0x08, + 0xF6, 0xFB, 0xFB, 0x46, 0x9B, 0x46, 0x46, 0xDB, 0x46, 0x46, 0x9B, 0x46, 0xFB, 0xFB, 0xF6, 0x08, + 0xFD, 0xF6, 0xFB, 0x9B, 0x46, 0x36, 0x36, 0x9B, 0x36, 0x36, 0x46, 0x9B, 0xFB, 0xF6, 0xFD, 0x08, + 0xF6, 0xFB, 0x9B, 0xFB, 0xFB, 0x46, 0x46, 0x9B, 0x46, 0x46, 0xFB, 0xFB, 0x9B, 0xFB, 0xF6, 0x08, + 0xFB, 0x9B, 0xFB, 0xF6, 0xFB, 0xFB, 0xFB, 0x46, 0xFB, 0xFB, 0xFB, 0xF6, 0xFB, 0x9B, 0xFB, 0x08, 0x96, 0xFB, 0xF6, 0xFD, 0xF6, 0xF6, 0xFB, 0x46, 0xFB, 0xF6, 0xF6, 0xFD, 0xF6, 0xFB, 0x9B, 0x08, }, .collisionData = {0x0381, 0x0101, 0x0101, 0x6C1, 0x0821, 0x16D1, 0x2829, 0x2009, 0x1, 0x2009, 0x2829, 0x16D1, 0x0821, 0x6C1, 0x0101, 0x101}, diff --git a/src/data/contest_opponents.h b/src/data/contest_opponents.h index b5466904b13d..19019be91819 100644 --- a/src/data/contest_opponents.h +++ b/src/data/contest_opponents.h @@ -99,8 +99,8 @@ #define CONTEST_OPPONENT_TREY 94 #define CONTEST_OPPONENT_LANE 95 -// All contest opponents have a common set of AI flags (which contains all of the actually -// useful AI scripts, as well as some dummys) and a random combination of 2-3 dummy flags. +// All contest opponents have a common set of AI flags (which contains all of the actually +// useful AI scripts, as well as some dummys) and a random combination of 2-3 dummy flags. // Seems that like the battle AI they had more plans for this than what ended up in the final game #define CONTEST_AI_SET_1 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21) #define CONTEST_AI_SET_2 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25) @@ -1166,7 +1166,7 @@ const struct ContestPokemon gContestOpponents[] = .personality = 0, .otId = 0xFFFF }, - [CONTEST_OPPONENT_ARIANA] = { + [CONTEST_OPPONENT_ARIANA] = { .species = SPECIES_KECLEON, .nickname = _("KECON"), .trainerName = _("ARIANA"), @@ -2010,7 +2010,7 @@ const struct ContestPokemon gContestOpponents[] = .species = SPECIES_CUBONE, .nickname = _("CUBIN"), .trainerName = _("COLTIN"), - .trainerGfxId = OBJ_EVENT_GFX_MAN_4, + .trainerGfxId = OBJ_EVENT_GFX_MAN_4, .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, diff --git a/src/data/contest_text_tables.h b/src/data/contest_text_tables.h index f893bc66a614..64ad704a5916 100644 --- a/src/data/contest_text_tables.h +++ b/src/data/contest_text_tables.h @@ -181,7 +181,7 @@ extern const u8 gText_CouldntImproveItsCondition[]; extern const u8 gText_BadConditionResultedInWeakAppeal[]; extern const u8 gText_MonWasUnaffected[]; extern const u8 gText_AttractedCrowdsAttention[]; - + // sContestConditions extern const u8 gText_Contest_Coolness[]; extern const u8 gText_Contest_Beauty[]; diff --git a/src/data/decoration/header.h b/src/data/decoration/header.h index c57498828180..7a151808d36c 100644 --- a/src/data/decoration/header.h +++ b/src/data/decoration/header.h @@ -11,7 +11,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SMALL_DESK, .tiles = DecorGfx_SMALL_DESK, }, - + [DECOR_SMALL_DESK] = { .id = DECOR_SMALL_DESK, @@ -23,7 +23,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SMALL_DESK, .tiles = DecorGfx_SMALL_DESK, }, - + [DECOR_POKEMON_DESK] = { .id = DECOR_POKEMON_DESK, @@ -35,7 +35,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_POKEMON_DESK, .tiles = DecorGfx_POKEMON_DESK, }, - + [DECOR_HEAVY_DESK] = { .id = DECOR_HEAVY_DESK, @@ -47,7 +47,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_HEAVY_DESK, .tiles = DecorGfx_HEAVY_DESK, }, - + [DECOR_RAGGED_DESK] = { .id = DECOR_RAGGED_DESK, @@ -59,7 +59,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RAGGED_DESK, .tiles = DecorGfx_RAGGED_DESK, }, - + [DECOR_COMFORT_DESK] = { .id = DECOR_COMFORT_DESK, @@ -71,7 +71,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_COMFORT_DESK, .tiles = DecorGfx_COMFORT_DESK, }, - + [DECOR_PRETTY_DESK] = { .id = DECOR_PRETTY_DESK, @@ -83,7 +83,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PRETTY_DESK, .tiles = DecorGfx_PRETTY_DESK, }, - + [DECOR_BRICK_DESK] = { .id = DECOR_BRICK_DESK, @@ -95,7 +95,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BRICK_DESK, .tiles = DecorGfx_BRICK_DESK, }, - + [DECOR_CAMP_DESK] = { .id = DECOR_CAMP_DESK, @@ -107,7 +107,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CAMP_DESK, .tiles = DecorGfx_CAMP_DESK, }, - + [DECOR_HARD_DESK] = { .id = DECOR_HARD_DESK, @@ -119,7 +119,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_HARD_DESK, .tiles = DecorGfx_HARD_DESK, }, - + [DECOR_SMALL_CHAIR] = { .id = DECOR_SMALL_CHAIR, @@ -131,7 +131,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SMALL_CHAIR, .tiles = DecorGfx_SMALL_CHAIR, }, - + [DECOR_POKEMON_CHAIR] = { .id = DECOR_POKEMON_CHAIR, @@ -143,7 +143,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_POKEMON_CHAIR, .tiles = DecorGfx_POKEMON_CHAIR, }, - + [DECOR_HEAVY_CHAIR] = { .id = DECOR_HEAVY_CHAIR, @@ -155,7 +155,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_HEAVY_CHAIR, .tiles = DecorGfx_HEAVY_CHAIR, }, - + [DECOR_PRETTY_CHAIR] = { .id = DECOR_PRETTY_CHAIR, @@ -167,7 +167,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PRETTY_CHAIR, .tiles = DecorGfx_PRETTY_CHAIR, }, - + [DECOR_COMFORT_CHAIR] = { .id = DECOR_COMFORT_CHAIR, @@ -179,7 +179,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_COMFORT_CHAIR, .tiles = DecorGfx_COMFORT_CHAIR, }, - + [DECOR_RAGGED_CHAIR] = { .id = DECOR_RAGGED_CHAIR, @@ -191,7 +191,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RAGGED_CHAIR, .tiles = DecorGfx_RAGGED_CHAIR, }, - + [DECOR_BRICK_CHAIR] = { .id = DECOR_BRICK_CHAIR, @@ -203,7 +203,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BRICK_CHAIR, .tiles = DecorGfx_BRICK_CHAIR, }, - + [DECOR_CAMP_CHAIR] = { .id = DECOR_CAMP_CHAIR, @@ -215,7 +215,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CAMP_CHAIR, .tiles = DecorGfx_CAMP_CHAIR, }, - + [DECOR_HARD_CHAIR] = { .id = DECOR_HARD_CHAIR, @@ -227,7 +227,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_HARD_CHAIR, .tiles = DecorGfx_HARD_CHAIR, }, - + [DECOR_RED_PLANT] = { .id = DECOR_RED_PLANT, @@ -239,7 +239,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RED_PLANT, .tiles = DecorGfx_RED_PLANT, }, - + [DECOR_TROPICAL_PLANT] = { .id = DECOR_TROPICAL_PLANT, @@ -251,7 +251,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TROPICAL_PLANT, .tiles = DecorGfx_TROPICAL_PLANT, }, - + [DECOR_PRETTY_FLOWERS] = { .id = DECOR_PRETTY_FLOWERS, @@ -263,7 +263,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PRETTY_FLOWERS, .tiles = DecorGfx_PRETTY_FLOWERS, }, - + [DECOR_COLORFUL_PLANT] = { .id = DECOR_COLORFUL_PLANT, @@ -275,7 +275,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_COLORFUL_PLANT, .tiles = DecorGfx_COLORFUL_PLANT, }, - + [DECOR_BIG_PLANT] = { .id = DECOR_BIG_PLANT, @@ -287,7 +287,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BIG_PLANT, .tiles = DecorGfx_BIG_PLANT, }, - + [DECOR_GORGEOUS_PLANT] = { .id = DECOR_GORGEOUS_PLANT, @@ -299,7 +299,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GORGEOUS_PLANT, .tiles = DecorGfx_GORGEOUS_PLANT, }, - + [DECOR_RED_BRICK] = { .id = DECOR_RED_BRICK, @@ -311,7 +311,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RED_BRICK, .tiles = DecorGfx_RED_BRICK, }, - + [DECOR_YELLOW_BRICK] = { .id = DECOR_YELLOW_BRICK, @@ -323,7 +323,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_YELLOW_BRICK, .tiles = DecorGfx_YELLOW_BRICK, }, - + [DECOR_BLUE_BRICK] = { .id = DECOR_BLUE_BRICK, @@ -335,7 +335,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BLUE_BRICK, .tiles = DecorGfx_BLUE_BRICK, }, - + [DECOR_RED_BALLOON] = { .id = DECOR_RED_BALLOON, @@ -347,7 +347,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RED_BALLOON, .tiles = DecorGfx_RED_BALLOON, }, - + [DECOR_BLUE_BALLOON] = { .id = DECOR_BLUE_BALLOON, @@ -359,7 +359,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BLUE_BALLOON, .tiles = DecorGfx_BLUE_BALLOON, }, - + [DECOR_YELLOW_BALLOON] = { .id = DECOR_YELLOW_BALLOON, @@ -371,7 +371,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_YELLOW_BALLOON, .tiles = DecorGfx_YELLOW_BALLOON, }, - + [DECOR_RED_TENT] = { .id = DECOR_RED_TENT, @@ -383,7 +383,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RED_TENT, .tiles = DecorGfx_RED_TENT, }, - + [DECOR_BLUE_TENT] = { .id = DECOR_BLUE_TENT, @@ -395,7 +395,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BLUE_TENT, .tiles = DecorGfx_BLUE_TENT, }, - + [DECOR_SOLID_BOARD] = { .id = DECOR_SOLID_BOARD, @@ -407,7 +407,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SOLID_BOARD, .tiles = DecorGfx_SOLID_BOARD, }, - + [DECOR_SLIDE] = { .id = DECOR_SLIDE, @@ -419,7 +419,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SLIDE, .tiles = DecorGfx_SLIDE, }, - + [DECOR_FENCE_LENGTH] = { .id = DECOR_FENCE_LENGTH, @@ -431,7 +431,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_FENCE_LENGTH, .tiles = DecorGfx_FENCE_LENGTH, }, - + [DECOR_FENCE_WIDTH] = { .id = DECOR_FENCE_WIDTH, @@ -443,7 +443,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_FENCE_WIDTH, .tiles = DecorGfx_FENCE_WIDTH, }, - + [DECOR_TIRE] = { .id = DECOR_TIRE, @@ -455,7 +455,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TIRE, .tiles = DecorGfx_TIRE, }, - + [DECOR_STAND] = { .id = DECOR_STAND, @@ -467,7 +467,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_STAND, .tiles = DecorGfx_STAND, }, - + [DECOR_MUD_BALL] = { .id = DECOR_MUD_BALL, @@ -479,7 +479,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_MUD_BALL, .tiles = DecorGfx_MUD_BALL, }, - + [DECOR_BREAKABLE_DOOR] = { .id = DECOR_BREAKABLE_DOOR, @@ -491,7 +491,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BREAKABLE_DOOR, .tiles = DecorGfx_BREAKABLE_DOOR, }, - + [DECOR_SAND_ORNAMENT] = { .id = DECOR_SAND_ORNAMENT, @@ -503,7 +503,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SAND_ORNAMENT, .tiles = DecorGfx_SAND_ORNAMENT, }, - + [DECOR_SILVER_SHIELD] = { .id = DECOR_SILVER_SHIELD, @@ -515,7 +515,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SILVER_SHIELD, .tiles = DecorGfx_SILVER_SHIELD, }, - + [DECOR_GOLD_SHIELD] = { .id = DECOR_GOLD_SHIELD, @@ -527,7 +527,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GOLD_SHIELD, .tiles = DecorGfx_GOLD_SHIELD, }, - + [DECOR_GLASS_ORNAMENT] = { .id = DECOR_GLASS_ORNAMENT, @@ -539,7 +539,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GLASS_ORNAMENT, .tiles = DecorGfx_GLASS_ORNAMENT, }, - + [DECOR_TV] = { .id = DECOR_TV, @@ -551,7 +551,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TV, .tiles = DecorGfx_TV, }, - + [DECOR_ROUND_TV] = { .id = DECOR_ROUND_TV, @@ -563,7 +563,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_ROUND_TV, .tiles = DecorGfx_ROUND_TV, }, - + [DECOR_CUTE_TV] = { .id = DECOR_CUTE_TV, @@ -575,7 +575,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CUTE_TV, .tiles = DecorGfx_CUTE_TV, }, - + [DECOR_GLITTER_MAT] = { .id = DECOR_GLITTER_MAT, @@ -587,7 +587,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GLITTER_MAT, .tiles = DecorGfx_GLITTER_MAT, }, - + [DECOR_JUMP_MAT] = { .id = DECOR_JUMP_MAT, @@ -599,7 +599,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_JUMP_MAT, .tiles = DecorGfx_JUMP_MAT, }, - + [DECOR_SPIN_MAT] = { .id = DECOR_SPIN_MAT, @@ -611,7 +611,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SPIN_MAT, .tiles = DecorGfx_SPIN_MAT, }, - + [DECOR_C_LOW_NOTE_MAT] = { .id = DECOR_C_LOW_NOTE_MAT, @@ -623,7 +623,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_C_LOW_NOTE_MAT, .tiles = DecorGfx_C_LOW_NOTE_MAT, }, - + [DECOR_D_NOTE_MAT] = { .id = DECOR_D_NOTE_MAT, @@ -635,7 +635,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_D_NOTE_MAT, .tiles = DecorGfx_D_NOTE_MAT, }, - + [DECOR_E_NOTE_MAT] = { .id = DECOR_E_NOTE_MAT, @@ -647,7 +647,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_E_NOTE_MAT, .tiles = DecorGfx_E_NOTE_MAT, }, - + [DECOR_F_NOTE_MAT] = { .id = DECOR_F_NOTE_MAT, @@ -659,7 +659,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_F_NOTE_MAT, .tiles = DecorGfx_F_NOTE_MAT, }, - + [DECOR_G_NOTE_MAT] = { .id = DECOR_G_NOTE_MAT, @@ -671,7 +671,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_G_NOTE_MAT, .tiles = DecorGfx_G_NOTE_MAT, }, - + [DECOR_A_NOTE_MAT] = { .id = DECOR_A_NOTE_MAT, @@ -683,7 +683,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_A_NOTE_MAT, .tiles = DecorGfx_A_NOTE_MAT, }, - + [DECOR_B_NOTE_MAT] = { .id = DECOR_B_NOTE_MAT, @@ -695,7 +695,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_B_NOTE_MAT, .tiles = DecorGfx_B_NOTE_MAT, }, - + [DECOR_C_HIGH_NOTE_MAT] = { .id = DECOR_C_HIGH_NOTE_MAT, @@ -707,7 +707,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_C_HIGH_NOTE_MAT, .tiles = DecorGfx_C_HIGH_NOTE_MAT, }, - + [DECOR_SURF_MAT] = { .id = DECOR_SURF_MAT, @@ -719,7 +719,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SURF_MAT, .tiles = DecorGfx_SURF_MAT, }, - + [DECOR_THUNDER_MAT] = { .id = DECOR_THUNDER_MAT, @@ -731,7 +731,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_THUNDER_MAT, .tiles = DecorGfx_THUNDER_MAT, }, - + [DECOR_FIRE_BLAST_MAT] = { .id = DECOR_FIRE_BLAST_MAT, @@ -743,7 +743,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_FIRE_BLAST_MAT, .tiles = DecorGfx_FIRE_BLAST_MAT, }, - + [DECOR_POWDER_SNOW_MAT] = { .id = DECOR_POWDER_SNOW_MAT, @@ -755,7 +755,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_POWDER_SNOW_MAT, .tiles = DecorGfx_POWDER_SNOW_MAT, }, - + [DECOR_ATTRACT_MAT] = { .id = DECOR_ATTRACT_MAT, @@ -767,7 +767,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_ATTRACT_MAT, .tiles = DecorGfx_ATTRACT_MAT, }, - + [DECOR_FISSURE_MAT] = { .id = DECOR_FISSURE_MAT, @@ -779,7 +779,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_FISSURE_MAT, .tiles = DecorGfx_FISSURE_MAT, }, - + [DECOR_SPIKES_MAT] = { .id = DECOR_SPIKES_MAT, @@ -791,7 +791,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SPIKES_MAT, .tiles = DecorGfx_SPIKES_MAT, }, - + [DECOR_BALL_POSTER] = { .id = DECOR_BALL_POSTER, @@ -803,7 +803,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BALL_POSTER, .tiles = DecorGfx_BALL_POSTER, }, - + [DECOR_GREEN_POSTER] = { .id = DECOR_GREEN_POSTER, @@ -815,7 +815,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GREEN_POSTER, .tiles = DecorGfx_GREEN_POSTER, }, - + [DECOR_RED_POSTER] = { .id = DECOR_RED_POSTER, @@ -827,7 +827,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RED_POSTER, .tiles = DecorGfx_RED_POSTER, }, - + [DECOR_BLUE_POSTER] = { .id = DECOR_BLUE_POSTER, @@ -839,7 +839,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BLUE_POSTER, .tiles = DecorGfx_BLUE_POSTER, }, - + [DECOR_CUTE_POSTER] = { .id = DECOR_CUTE_POSTER, @@ -851,7 +851,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CUTE_POSTER, .tiles = DecorGfx_CUTE_POSTER, }, - + [DECOR_PIKA_POSTER] = { .id = DECOR_PIKA_POSTER, @@ -863,7 +863,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PIKA_POSTER, .tiles = DecorGfx_PIKA_POSTER, }, - + [DECOR_LONG_POSTER] = { .id = DECOR_LONG_POSTER, @@ -875,7 +875,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_LONG_POSTER, .tiles = DecorGfx_LONG_POSTER, }, - + [DECOR_SEA_POSTER] = { .id = DECOR_SEA_POSTER, @@ -887,7 +887,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SEA_POSTER, .tiles = DecorGfx_SEA_POSTER, }, - + [DECOR_SKY_POSTER] = { .id = DECOR_SKY_POSTER, @@ -899,7 +899,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SKY_POSTER, .tiles = DecorGfx_SKY_POSTER, }, - + [DECOR_KISS_POSTER] = { .id = DECOR_KISS_POSTER, @@ -911,7 +911,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_KISS_POSTER, .tiles = DecorGfx_KISS_POSTER, }, - + [DECOR_PICHU_DOLL] = { .id = DECOR_PICHU_DOLL, @@ -923,7 +923,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PICHU_DOLL, .tiles = DecorGfx_PICHU_DOLL, }, - + [DECOR_PIKACHU_DOLL] = { .id = DECOR_PIKACHU_DOLL, @@ -935,7 +935,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PIKACHU_DOLL, .tiles = DecorGfx_PIKACHU_DOLL, }, - + [DECOR_MARILL_DOLL] = { .id = DECOR_MARILL_DOLL, @@ -947,7 +947,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_MARILL_DOLL, .tiles = DecorGfx_MARILL_DOLL, }, - + [DECOR_TOGEPI_DOLL] = { .id = DECOR_TOGEPI_DOLL, @@ -959,7 +959,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TOGEPI_DOLL, .tiles = DecorGfx_TOGEPI_DOLL, }, - + [DECOR_CYNDAQUIL_DOLL] = { .id = DECOR_CYNDAQUIL_DOLL, @@ -971,7 +971,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CYNDAQUIL_DOLL, .tiles = DecorGfx_CYNDAQUIL_DOLL, }, - + [DECOR_CHIKORITA_DOLL] = { .id = DECOR_CHIKORITA_DOLL, @@ -983,7 +983,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CHIKORITA_DOLL, .tiles = DecorGfx_CHIKORITA_DOLL, }, - + [DECOR_TOTODILE_DOLL] = { .id = DECOR_TOTODILE_DOLL, @@ -995,7 +995,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TOTODILE_DOLL, .tiles = DecorGfx_TOTODILE_DOLL, }, - + [DECOR_JIGGLYPUFF_DOLL] = { .id = DECOR_JIGGLYPUFF_DOLL, @@ -1007,7 +1007,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_JIGGLYPUFF_DOLL, .tiles = DecorGfx_JIGGLYPUFF_DOLL, }, - + [DECOR_MEOWTH_DOLL] = { .id = DECOR_MEOWTH_DOLL, @@ -1019,7 +1019,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_MEOWTH_DOLL, .tiles = DecorGfx_MEOWTH_DOLL, }, - + [DECOR_CLEFAIRY_DOLL] = { .id = DECOR_CLEFAIRY_DOLL, @@ -1031,7 +1031,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CLEFAIRY_DOLL, .tiles = DecorGfx_CLEFAIRY_DOLL, }, - + [DECOR_DITTO_DOLL] = { .id = DECOR_DITTO_DOLL, @@ -1043,7 +1043,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_DITTO_DOLL, .tiles = DecorGfx_DITTO_DOLL, }, - + [DECOR_SMOOCHUM_DOLL] = { .id = DECOR_SMOOCHUM_DOLL, @@ -1055,7 +1055,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SMOOCHUM_DOLL, .tiles = DecorGfx_SMOOCHUM_DOLL, }, - + [DECOR_TREECKO_DOLL] = { .id = DECOR_TREECKO_DOLL, @@ -1067,7 +1067,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TREECKO_DOLL, .tiles = DecorGfx_TREECKO_DOLL, }, - + [DECOR_TORCHIC_DOLL] = { .id = DECOR_TORCHIC_DOLL, @@ -1079,7 +1079,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_TORCHIC_DOLL, .tiles = DecorGfx_TORCHIC_DOLL, }, - + [DECOR_MUDKIP_DOLL] = { .id = DECOR_MUDKIP_DOLL, @@ -1091,7 +1091,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_MUDKIP_DOLL, .tiles = DecorGfx_MUDKIP_DOLL, }, - + [DECOR_DUSKULL_DOLL] = { .id = DECOR_DUSKULL_DOLL, @@ -1103,7 +1103,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_DUSKULL_DOLL, .tiles = DecorGfx_DUSKULL_DOLL, }, - + [DECOR_WYNAUT_DOLL] = { .id = DECOR_WYNAUT_DOLL, @@ -1115,7 +1115,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_WYNAUT_DOLL, .tiles = DecorGfx_WYNAUT_DOLL, }, - + [DECOR_BALTOY_DOLL] = { .id = DECOR_BALTOY_DOLL, @@ -1127,7 +1127,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BALTOY_DOLL, .tiles = DecorGfx_BALTOY_DOLL, }, - + [DECOR_KECLEON_DOLL] = { .id = DECOR_KECLEON_DOLL, @@ -1139,7 +1139,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_KECLEON_DOLL, .tiles = DecorGfx_KECLEON_DOLL, }, - + [DECOR_AZURILL_DOLL] = { .id = DECOR_AZURILL_DOLL, @@ -1151,7 +1151,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_AZURILL_DOLL, .tiles = DecorGfx_AZURILL_DOLL, }, - + [DECOR_SKITTY_DOLL] = { .id = DECOR_SKITTY_DOLL, @@ -1163,7 +1163,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SKITTY_DOLL, .tiles = DecorGfx_SKITTY_DOLL, }, - + [DECOR_SWABLU_DOLL] = { .id = DECOR_SWABLU_DOLL, @@ -1175,7 +1175,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SWABLU_DOLL, .tiles = DecorGfx_SWABLU_DOLL, }, - + [DECOR_GULPIN_DOLL] = { .id = DECOR_GULPIN_DOLL, @@ -1187,7 +1187,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GULPIN_DOLL, .tiles = DecorGfx_GULPIN_DOLL, }, - + [DECOR_LOTAD_DOLL] = { .id = DECOR_LOTAD_DOLL, @@ -1199,7 +1199,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_LOTAD_DOLL, .tiles = DecorGfx_LOTAD_DOLL, }, - + [DECOR_SEEDOT_DOLL] = { .id = DECOR_SEEDOT_DOLL, @@ -1211,7 +1211,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SEEDOT_DOLL, .tiles = DecorGfx_SEEDOT_DOLL, }, - + [DECOR_PIKA_CUSHION] = { .id = DECOR_PIKA_CUSHION, @@ -1223,7 +1223,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_PIKA_CUSHION, .tiles = DecorGfx_PIKA_CUSHION, }, - + [DECOR_ROUND_CUSHION] = { .id = DECOR_ROUND_CUSHION, @@ -1235,7 +1235,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_ROUND_CUSHION, .tiles = DecorGfx_ROUND_CUSHION, }, - + [DECOR_KISS_CUSHION] = { .id = DECOR_KISS_CUSHION, @@ -1247,7 +1247,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_KISS_CUSHION, .tiles = DecorGfx_KISS_CUSHION, }, - + [DECOR_ZIGZAG_CUSHION] = { .id = DECOR_ZIGZAG_CUSHION, @@ -1259,7 +1259,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_ZIGZAG_CUSHION, .tiles = DecorGfx_ZIGZAG_CUSHION, }, - + [DECOR_SPIN_CUSHION] = { .id = DECOR_SPIN_CUSHION, @@ -1271,7 +1271,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SPIN_CUSHION, .tiles = DecorGfx_SPIN_CUSHION, }, - + [DECOR_DIAMOND_CUSHION] = { .id = DECOR_DIAMOND_CUSHION, @@ -1283,7 +1283,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_DIAMOND_CUSHION, .tiles = DecorGfx_DIAMOND_CUSHION, }, - + [DECOR_BALL_CUSHION] = { .id = DECOR_BALL_CUSHION, @@ -1295,7 +1295,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BALL_CUSHION, .tiles = DecorGfx_BALL_CUSHION, }, - + [DECOR_GRASS_CUSHION] = { .id = DECOR_GRASS_CUSHION, @@ -1307,7 +1307,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_GRASS_CUSHION, .tiles = DecorGfx_GRASS_CUSHION, }, - + [DECOR_FIRE_CUSHION] = { .id = DECOR_FIRE_CUSHION, @@ -1319,7 +1319,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_FIRE_CUSHION, .tiles = DecorGfx_FIRE_CUSHION, }, - + [DECOR_WATER_CUSHION] = { .id = DECOR_WATER_CUSHION, @@ -1331,7 +1331,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_WATER_CUSHION, .tiles = DecorGfx_WATER_CUSHION, }, - + [DECOR_SNORLAX_DOLL] = { .id = DECOR_SNORLAX_DOLL, @@ -1343,7 +1343,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_SNORLAX_DOLL, .tiles = DecorGfx_SNORLAX_DOLL, }, - + [DECOR_RHYDON_DOLL] = { .id = DECOR_RHYDON_DOLL, @@ -1355,7 +1355,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_RHYDON_DOLL, .tiles = DecorGfx_RHYDON_DOLL, }, - + [DECOR_LAPRAS_DOLL] = { .id = DECOR_LAPRAS_DOLL, @@ -1367,7 +1367,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_LAPRAS_DOLL, .tiles = DecorGfx_LAPRAS_DOLL, }, - + [DECOR_VENUSAUR_DOLL] = { .id = DECOR_VENUSAUR_DOLL, @@ -1379,7 +1379,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_VENUSAUR_DOLL, .tiles = DecorGfx_VENUSAUR_DOLL, }, - + [DECOR_CHARIZARD_DOLL] = { .id = DECOR_CHARIZARD_DOLL, @@ -1391,7 +1391,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_CHARIZARD_DOLL, .tiles = DecorGfx_CHARIZARD_DOLL, }, - + [DECOR_BLASTOISE_DOLL] = { .id = DECOR_BLASTOISE_DOLL, @@ -1403,7 +1403,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_BLASTOISE_DOLL, .tiles = DecorGfx_BLASTOISE_DOLL, }, - + [DECOR_WAILMER_DOLL] = { .id = DECOR_WAILMER_DOLL, @@ -1415,7 +1415,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_WAILMER_DOLL, .tiles = DecorGfx_WAILMER_DOLL, }, - + [DECOR_REGIROCK_DOLL] = { .id = DECOR_REGIROCK_DOLL, @@ -1427,7 +1427,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_REGIROCK_DOLL, .tiles = DecorGfx_REGIROCK_DOLL, }, - + [DECOR_REGICE_DOLL] = { .id = DECOR_REGICE_DOLL, @@ -1439,7 +1439,7 @@ const struct Decoration gDecorations[] = .description = DecorDesc_REGICE_DOLL, .tiles = DecorGfx_REGICE_DOLL, }, - + [DECOR_REGISTEEL_DOLL] = { .id = DECOR_REGISTEEL_DOLL, diff --git a/src/data/decoration/icon.h b/src/data/decoration/icon.h index b29dab20f3ce..03a0e06695bd 100644 --- a/src/data/decoration/icon.h +++ b/src/data/decoration/icon.h @@ -1,4 +1,4 @@ -const u32 *const gDecorIconTable[][2] = +const u32 *const gDecorIconTable[][2] = { [DECOR_NONE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, [DECOR_SMALL_DESK] = {NULL, NULL}, diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 54145efbcc5f..ae8743869a7d 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1147,14 +1147,14 @@ static const union AnimCmd *const sAnimTable_AshPuff[] = sAnim_AshPuff, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = -{ - .tileTag = 0xFFFF, - .paletteTag = FLDEFF_PAL_TAG_ASH, - .oam = &gObjectEventBaseOam_16x16, - .anims = sAnimTable_AshPuff, - .images = sPicTable_AshPuff, - .affineAnims = gDummySpriteAffineAnimTable, +const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = +{ + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_ASH, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_AshPuff, + .images = sPicTable_AshPuff, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_AshPuff }; @@ -1183,14 +1183,14 @@ static const union AnimCmd *const sAnimTable_AshLaunch[] = sAnim_AshLaunch, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch = +const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch = { - .tileTag = 0xFFFF, - .paletteTag = FLDEFF_PAL_TAG_ASH, - .oam = &gObjectEventBaseOam_16x16, - .anims = sAnimTable_AshLaunch, - .images = sPicTable_AshLaunch, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_ASH, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_AshLaunch, + .images = sPicTable_AshLaunch, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_AshLaunch }; diff --git a/src/data/graphics/rayquaza_scene.h b/src/data/graphics/rayquaza_scene.h index 633213db873d..660f07416cb5 100644 --- a/src/data/graphics/rayquaza_scene.h +++ b/src/data/graphics/rayquaza_scene.h @@ -24,7 +24,7 @@ const u32 gRaySceneTakesFlight_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaz // Scene 3 (RAY_ANIM_DESCENDS) const u32 gRaySceneDescends_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/rayquaza.4bpp.lz"); -// for some reason there are an extra 0xC bytes at the end of the original rayquaza_tail.4bpp, so in order to produce the correct lz, +// for some reason there are an extra 0xC bytes at the end of the original rayquaza_tail.4bpp, so in order to produce the correct lz, // we have to cat the bytes at the end with a make rule. not sure why those bytes are there, it may have been a bug in Game Freak's software. const u32 gRaySceneDescends_RayquazaTail_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/rayquaza_tail_fix.4bpp.lz"); const u32 gRaySceneDescends_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/bg.4bpp.lz"); diff --git a/src/data/lilycove_lady.h b/src/data/lilycove_lady.h index 818a5fd5f382..b1a6ddfe5e97 100644 --- a/src/data/lilycove_lady.h +++ b/src/data/lilycove_lady.h @@ -35,7 +35,7 @@ static const u16 sQuizLadyQuestion1[] = static const u16 sQuizLadyQuestion2[] = { - EC_WORD_WHICH, + EC_WORD_WHICH, EC_WORD_ISN_T, EC_WORD_A, EC_WORD_GAME, @@ -118,7 +118,7 @@ static const u16 sQuizLadyQuestion8[] = EC_MOVE2(BLOCK), EC_WORD_ESCAPE, EC_WORD_QUES, - EC_EMPTY_WORD, + EC_EMPTY_WORD, EC_WORD_RUN_AWAY, EC_WORD_SHADOW_TAG, EC_WORD_WONDER_GUARD diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index 93f40225834a..a66d634b0764 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -950,7 +950,7 @@ static const union AnimCmd sAnim_RayquazaFaceEast[] = }; // Though they correspond to facing/walking movements, Rayquaza doesn't have -// equivalent images aside from flying up. Its other frames aside from the 'normal' +// equivalent images aside from flying up. Its other frames aside from the 'normal' // frame are for the sequence where it awakens on Sky Pillar. // The corresponding facing/walking movements are commented alongside static const union AnimCmd *const sAnimTable_Rayquaza[] = { diff --git a/src/data/object_events/object_event_subsprites.h b/src/data/object_events/object_event_subsprites.h index 0d55c2df28a9..b508509cad81 100755 --- a/src/data/object_events/object_event_subsprites.h +++ b/src/data/object_events/object_event_subsprites.h @@ -1,78 +1,78 @@ static const struct Subsprite sOamTable_16x16_0[] = { - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_16x16_1[] = { - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 } }; static const struct Subsprite sOamTable_16x16_2[] = { - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 0, - .priority = 2 - }, - { - .x = -8, - .y = 0, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 2, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 0, + .priority = 2 + }, + { + .x = -8, + .y = 0, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 2, .priority = 3 } }; static const struct Subsprite sOamTable_16x16_3[] = { - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, - .priority = 2 - }, - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, + .priority = 2 + }, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, .priority = 3 } }; static const struct Subsprite sOamTable_16x16_4[] = { - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, .priority = 1 }, - { - .x = -8, - .y = -8, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + { + .x = -8, + .y = -8, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, .priority = 3 } }; @@ -87,88 +87,88 @@ static const struct SubspriteTable sOamTables_16x16[] = { }; static const struct Subsprite sOamTable_16x32_0[] = { - { - .x = -8, - .y = -16, - .shape = SPRITE_SHAPE(16x32), - .size = SPRITE_SIZE(16x32), - .tileOffset = 0, + { + .x = -8, + .y = -16, + .shape = SPRITE_SHAPE(16x32), + .size = SPRITE_SIZE(16x32), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_16x32_1[] = { - { - .x = -8, - .y = -16, - .shape = SPRITE_SHAPE(16x32), + { + .x = -8, + .y = -16, + .shape = SPRITE_SHAPE(16x32), .size = SPRITE_SIZE(16x32), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 } }; static const struct Subsprite sOamTable_16x32_2[] = { - { - .x = -8, - .y = -16, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, - .priority = 2 - }, - { - .x = -8, - .y = 0, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 4, - .priority = 2 - }, - { - .x = -8, - .y = 8, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 6, + { + .x = -8, + .y = -16, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, + .priority = 2 + }, + { + .x = -8, + .y = 0, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 4, + .priority = 2 + }, + { + .x = -8, + .y = 8, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 6, .priority = 3 } }; static const struct Subsprite sOamTable_16x32_3[] = { - { - .x = -8, - .y = -16, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, - .priority = 2 - }, - { - .x = -8, - .y = 0, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 4, + { + .x = -8, + .y = -16, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, + .priority = 2 + }, + { + .x = -8, + .y = 0, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 4, .priority = 3 } }; static const struct Subsprite sOamTable_16x32_4[] = { - { - .x = -8, - .y = -16, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 0, + { + .x = -8, + .y = -16, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 0, .priority = 1 }, - { - .x = -8, - .y = 0, - .shape = SPRITE_SHAPE(16x16), - .size = SPRITE_SIZE(16x16), - .tileOffset = 4, + { + .x = -8, + .y = 0, + .shape = SPRITE_SHAPE(16x16), + .size = SPRITE_SIZE(16x16), + .tileOffset = 4, .priority = 3 } }; @@ -184,87 +184,87 @@ static const struct SubspriteTable sOamTables_16x32[] = { static const struct Subsprite sOamTable_32x32_0[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .tileOffset = 0, + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_32x32_1[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(32x32), + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(32x32), .size = SPRITE_SIZE(32x32), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 } }; static const struct Subsprite sOamTable_32x32_2[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(32x16), - .size = SPRITE_SIZE(32x16), - .tileOffset = 0, + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(32x16), + .size = SPRITE_SIZE(32x16), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = -16, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 2 }, { - .x = -16, - .y = 8, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -16, + .y = 8, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 3 } }; static const struct Subsprite sOamTable_32x32_3[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(32x16), - .size = SPRITE_SIZE(32x16), - .tileOffset = 0, + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(32x16), + .size = SPRITE_SIZE(32x16), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = 0, - .shape = SPRITE_SHAPE(32x16), + .x = -16, + .y = 0, + .shape = SPRITE_SHAPE(32x16), .size = SPRITE_SIZE(32x16), - .tileOffset = 8, + .tileOffset = 8, .priority = 3 } }; static const struct Subsprite sOamTable_32x32_4[] = { { - .x = -16, - .y = -16, - .shape = SPRITE_SHAPE(32x16), + .x = -16, + .y = -16, + .shape = SPRITE_SHAPE(32x16), .size = SPRITE_SIZE(32x16), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 }, { - .x = -16, - .y = 0, - .shape = SPRITE_SHAPE(32x16), + .x = -16, + .y = 0, + .shape = SPRITE_SHAPE(32x16), .size = SPRITE_SIZE(32x16), - .tileOffset = 8, + .tileOffset = 8, .priority = 3 } }; @@ -280,99 +280,99 @@ static const struct SubspriteTable sOamTables_32x32[] = { static const struct Subsprite sOamTable_48x48[] = { { - .x = -24, - .y = -24, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -24, + .y = -24, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 2 }, { - .x = 8, - .y = -24, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 4, + .x = 8, + .y = -24, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 4, .priority = 2 }, { - .x = -24, - .y = -16, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 6, + .x = -24, + .y = -16, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 6, .priority = 2 }, { - .x = 8, - .y = -16, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 10, + .x = 8, + .y = -16, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 10, .priority = 2 }, { - .x = -24, - .y = -8, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -24, + .y = -8, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 2 }, { - .x = 8, - .y = -8, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 16, + .x = 8, + .y = -8, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 16, .priority = 2 }, { - .x = -24, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 18, + .x = -24, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 18, .priority = 2 }, { - .x = 8, - .y = 0, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 22, + .x = 8, + .y = 0, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 22, .priority = 2 }, { - .x = -24, - .y = 8, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 24, + .x = -24, + .y = 8, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 24, .priority = 2 }, { - .x = 8, - .y = 8, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 28, + .x = 8, + .y = 8, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 28, .priority = 2 }, { - .x = -24, - .y = 16, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 30, + .x = -24, + .y = 16, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 30, .priority = 2 }, { - .x = 8, - .y = 16, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 34, + .x = 8, + .y = 16, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 34, .priority = 2 } }; @@ -388,44 +388,44 @@ static const struct SubspriteTable sOamTables_48x48[] = { static const struct Subsprite sOamTable_64x32_0[] = { { - .x = -32, - .y = -16, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .x = -32, + .y = -16, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_64x32_1[] = { { - .x = -32, - .y = -16, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .x = -32, + .y = -16, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 0, .priority = 1 } }; static const struct Subsprite sOamTable_64x32_2[] = { { - .x = -32, - .y = -16, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .x = -32, + .y = -16, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_64x32_3[] = { { - .x = -32, - .y = -16, - .shape = SPRITE_SHAPE(64x32), - .size = SPRITE_SIZE(64x32), - .tileOffset = 0, + .x = -32, + .y = -16, + .shape = SPRITE_SHAPE(64x32), + .size = SPRITE_SIZE(64x32), + .tileOffset = 0, .priority = 2 } }; @@ -442,44 +442,44 @@ static const struct SubspriteTable sOamTables_64x32[] = { static const struct Subsprite sOamTable_64x64_0[] = { { - .x = -32, - .y = -32, - .shape = SPRITE_SHAPE(64x64), - .size = SPRITE_SIZE(64x64), - .tileOffset = 0, + .x = -32, + .y = -32, + .shape = SPRITE_SHAPE(64x64), + .size = SPRITE_SIZE(64x64), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_64x64_1[] = { { - .x = -32, - .y = -32, - .shape = SPRITE_SHAPE(64x64), - .size = SPRITE_SIZE(64x64), - .tileOffset = 0, + .x = -32, + .y = -32, + .shape = SPRITE_SHAPE(64x64), + .size = SPRITE_SIZE(64x64), + .tileOffset = 0, .priority = 1 } }; static const struct Subsprite sOamTable_64x64_2[] = { { - .x = -32, - .y = -32, - .shape = SPRITE_SHAPE(64x64), - .size = SPRITE_SIZE(64x64), - .tileOffset = 0, + .x = -32, + .y = -32, + .shape = SPRITE_SHAPE(64x64), + .size = SPRITE_SIZE(64x64), + .tileOffset = 0, .priority = 2 } }; static const struct Subsprite sOamTable_64x64_3[] = { { - .x = -32, - .y = -32, - .shape = SPRITE_SHAPE(64x64), - .size = SPRITE_SIZE(64x64), - .tileOffset = 0, + .x = -32, + .y = -32, + .shape = SPRITE_SHAPE(64x64), + .size = SPRITE_SIZE(64x64), + .tileOffset = 0, .priority = 2 } }; @@ -495,492 +495,492 @@ static const struct SubspriteTable sOamTables_64x64[] = { static const struct Subsprite sOamTable_96x40_0[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 2 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 2 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 2 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 16, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 16, .priority = 2 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 20, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 20, .priority = 2 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 24, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 24, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 28, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 28, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 32, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 36, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 36, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 40, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 40, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 44, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 44, .priority = 2 }, { - .x = -48, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 48, + .x = -48, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 48, .priority = 2 }, { - .x = -16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 52, + .x = -16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 52, .priority = 2 }, { - .x = 16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 56, + .x = 16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 56, .priority = 2 } }; static const struct Subsprite sOamTable_96x40_1[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 1 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 16, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 16, .priority = 1 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 20, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 20, .priority = 1 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 24, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 24, .priority = 1 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 28, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 28, .priority = 1 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 32, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 32, .priority = 1 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 36, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 36, .priority = 1 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 40, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 40, .priority = 1 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 44, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 44, .priority = 1 }, { - .x = -48, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 48, + .x = -48, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 48, .priority = 1 }, { - .x = -16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 52, + .x = -16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 52, .priority = 1 }, { - .x = 16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 56, + .x = 16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 56, .priority = 1 } }; static const struct Subsprite sOamTable_96x40_2[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 2 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 2 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 2 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 16, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 16, .priority = 2 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 20, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 20, .priority = 2 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 24, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 24, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 28, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 28, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 32, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 36, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 36, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 40, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 40, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 44, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 44, .priority = 2 }, { - .x = -48, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 48, + .x = -48, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 48, .priority = 2 }, { - .x = -16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 52, + .x = -16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 52, .priority = 2 }, { - .x = 16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 56, + .x = 16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 56, .priority = 2 } }; static const struct Subsprite sOamTable_96x40_3[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 8, .priority = 1 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 12, .priority = 1 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 16, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 16, .priority = 1 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 20, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 20, .priority = 1 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 24, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 24, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 28, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 28, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 32, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 36, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 36, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 40, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 40, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 44, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 44, .priority = 2 }, { - .x = -48, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 48, + .x = -48, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 48, .priority = 2 }, { - .x = -16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 52, + .x = -16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 52, .priority = 2 }, { - .x = 16, - .y = 12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 56, + .x = 16, + .y = 12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 56, .priority = 2 } }; @@ -997,524 +997,524 @@ static const struct SubspriteTable sOamTables_96x40[] = { static const struct Subsprite sOamTable_88x32_0[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 2 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 8, .priority = 2 }, { - .x = 32, - .y = -20, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 10, + .x = 32, + .y = -20, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 10, .priority = 2 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 11, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 11, .priority = 2 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 15, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 15, .priority = 2 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 19, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 19, .priority = 2 }, { - .x = 32, - .y = -12, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 21, + .x = 32, + .y = -12, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 21, .priority = 2 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 22, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 22, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 26, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 26, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 30, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 30, .priority = 2 }, { - .x = 32, - .y = -4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 32, + .x = 32, + .y = -4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 33, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 33, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 37, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 37, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 41, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 41, .priority = 2 }, { - .x = 32, - .y = 4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 43, + .x = 32, + .y = 4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 43, .priority = 2 } }; static const struct Subsprite sOamTable_88x32_1[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 8, .priority = 1 }, { - .x = 32, - .y = -20, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 10, + .x = 32, + .y = -20, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 10, .priority = 1 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 11, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 11, .priority = 1 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 15, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 15, .priority = 1 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 19, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 19, .priority = 1 }, { - .x = 32, - .y = -12, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 21, + .x = 32, + .y = -12, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 21, .priority = 1 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 22, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 22, .priority = 1 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 26, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 26, .priority = 1 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 30, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 30, .priority = 1 }, { - .x = 32, - .y = -4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 32, + .x = 32, + .y = -4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 32, .priority = 1 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 33, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 33, .priority = 1 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 37, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 37, .priority = 1 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 41, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 41, .priority = 1 }, { - .x = 32, - .y = 4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 43, + .x = 32, + .y = 4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 43, .priority = 1 } }; static const struct Subsprite sOamTable_88x32_2[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 2 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 2 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 8, .priority = 2 }, { - .x = 32, - .y = -20, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 10, + .x = 32, + .y = -20, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 10, .priority = 2 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 11, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 11, .priority = 2 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 15, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 15, .priority = 2 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 19, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 19, .priority = 2 }, { - .x = 32, - .y = -12, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 21, + .x = 32, + .y = -12, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 21, .priority = 2 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 22, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 22, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 26, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 26, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 30, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 30, .priority = 2 }, { - .x = 32, - .y = -4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 32, + .x = 32, + .y = -4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 33, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 33, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 37, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 37, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 41, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 41, .priority = 2 }, { - .x = 32, - .y = 4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 43, + .x = 32, + .y = 4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 43, .priority = 2 } }; static const struct Subsprite sOamTable_88x32_3[] = { { - .x = -48, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -48, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = -16, - .y = -20, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .x = -16, + .y = -20, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 4, .priority = 1 }, { - .x = 16, - .y = -20, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 8, + .x = 16, + .y = -20, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 8, .priority = 1 }, { - .x = 32, - .y = -20, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 10, + .x = 32, + .y = -20, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 10, .priority = 1 }, { - .x = -48, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 11, + .x = -48, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 11, .priority = 1 }, { - .x = -16, - .y = -12, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 15, + .x = -16, + .y = -12, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 15, .priority = 1 }, { - .x = 16, - .y = -12, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 19, + .x = 16, + .y = -12, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 19, .priority = 1 }, { - .x = 32, - .y = -12, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 21, + .x = 32, + .y = -12, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 21, .priority = 1 }, { - .x = -48, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 22, + .x = -48, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 22, .priority = 2 }, { - .x = -16, - .y = -4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 26, + .x = -16, + .y = -4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 26, .priority = 2 }, { - .x = 16, - .y = -4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 30, + .x = 16, + .y = -4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 30, .priority = 2 }, { - .x = 32, - .y = -4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 32, + .x = 32, + .y = -4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 32, .priority = 2 }, { - .x = -48, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 33, + .x = -48, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 33, .priority = 2 }, { - .x = -16, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 37, + .x = -16, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 37, .priority = 2 }, { - .x = 16, - .y = 4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 41, + .x = 16, + .y = 4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 41, .priority = 2 }, { - .x = 32, - .y = 4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 43, + .x = 32, + .y = 4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 43, .priority = 2 } }; diff --git a/src/data/party_menu.h b/src/data/party_menu.h index 570ef738eb10..f3a8a50ec0af 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -37,9 +37,9 @@ enum static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] = { - [PARTY_BOX_LEFT_COLUMN] = + [PARTY_BOX_LEFT_COLUMN] = { - BlitBitmapToPartyWindow_LeftColumn, + BlitBitmapToPartyWindow_LeftColumn, { //The below are the x, y, width, and height for each of the following info 24, 11, 40, 13, // Nickname @@ -48,12 +48,12 @@ static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] = 38, 37, 24, 8, // HP 53, 37, 24, 8, // Max HP 24, 35, 48, 3 // HP bar - }, + }, 12, 34, 64, 16 // Description text (e.g. NO USE) }, - [PARTY_BOX_RIGHT_COLUMN] = + [PARTY_BOX_RIGHT_COLUMN] = { - BlitBitmapToPartyWindow_RightColumn, + BlitBitmapToPartyWindow_RightColumn, { // See above comment 22, 3, 40, 13, // Nickname @@ -62,7 +62,7 @@ static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] = 102, 12, 24, 8, // HP 117, 12, 24, 8, // Max HP 88, 10, 48, 3 // HP bar - }, + }, 77, 4, 64, 16 // Description text }, }; @@ -73,7 +73,7 @@ static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] = // Pokemon icon (x, y), held item (x, y), status condition (x, y), menu pokeball (x, y) static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] = { - [PARTY_LAYOUT_SINGLE] = + [PARTY_LAYOUT_SINGLE] = { { 16, 40, 20, 50, 50, 52, 16, 34}, {104, 18, 108, 28, 136, 27, 102, 25}, @@ -82,7 +82,7 @@ static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] = {104, 90, 108, 100, 136, 99, 102, 97}, {104, 114, 108, 124, 136, 123, 102, 121}, }, - [PARTY_LAYOUT_DOUBLE] = + [PARTY_LAYOUT_DOUBLE] = { {16, 24, 20, 34, 50, 36, 16, 18}, {16, 80, 20, 90, 50, 92, 16, 74}, @@ -91,7 +91,7 @@ static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] = {104, 82, 108, 92, 136, 91, 102, 89}, {104, 114, 108, 124, 136, 123, 102, 121}, }, - [PARTY_LAYOUT_MULTI] = + [PARTY_LAYOUT_MULTI] = { {16, 24, 20, 34, 50, 36, 16, 18}, {16, 80, 20, 90, 50, 92, 16, 74}, @@ -100,7 +100,7 @@ static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] = {104, 82, 106, 92, 136, 91, 102, 89}, {104, 106, 106, 116, 136, 115, 102, 113}, }, - [PARTY_LAYOUT_MULTI_SHOWCASE] = + [PARTY_LAYOUT_MULTI_SHOWCASE] = { {16, 32, 20, 42, 50, 44, 16, 26}, {104, 34, 106, 44, 136, 43, 102, 41}, @@ -1171,14 +1171,14 @@ static const struct SpriteTemplate sSpriteTemplate_StatusIcons = // Mask for the partners party in a multi battle. TRUE if in the partners party, FALSE otherwise // The 7th slot is Cancel, and the 8th slot is unreachable // Used only to determine whether or not to show the Deoxys form icon sprite -static const bool8 sMultiBattlePartnersPartyMask[PARTY_SIZE + 2] = -{ - FALSE, - TRUE, - FALSE, - FALSE, - TRUE, - TRUE, +static const bool8 sMultiBattlePartnersPartyMask[PARTY_SIZE + 2] = +{ + FALSE, + TRUE, + FALSE, + FALSE, + TRUE, + TRUE, FALSE }; diff --git a/src/data/region_map/city_map_entries.h b/src/data/region_map/city_map_entries.h index d5478c7b49b4..8ff45305931e 100644 --- a/src/data/region_map/city_map_entries.h +++ b/src/data/region_map/city_map_entries.h @@ -1,4 +1,4 @@ -static const struct CityMapEntry sPokenavCityMaps[NUM_CITY_MAPS] = +static const struct CityMapEntry sPokenavCityMaps[NUM_CITY_MAPS] = { { .mapSecId = MAPSEC_LITTLEROOT_TOWN, diff --git a/src/data/script_menu.h b/src/data/script_menu.h index 3880c3c0c8e6..79355748c706 100644 --- a/src/data/script_menu.h +++ b/src/data/script_menu.h @@ -110,35 +110,35 @@ static const struct MenuAction MultichoiceList_Mechadoll1_Q1[] = {gTrickHouse_Mechadoll_Taillow}, }; -static const struct MenuAction MultichoiceList_Mechadoll1_Q2[] = +static const struct MenuAction MultichoiceList_Mechadoll1_Q2[] = { {gTrickHouse_Mechadoll_Azurill}, {gTrickHouse_Mechadoll_Lotad}, {gTrickHouse_Mechadoll_Wingull}, }; -static const struct MenuAction MultichoiceList_Mechadoll1_Q3[] = +static const struct MenuAction MultichoiceList_Mechadoll1_Q3[] = { {gTrickHouse_Mechadoll_Dustox}, {gTrickHouse_Mechadoll_Zubat}, {gTrickHouse_Mechadoll_Nincada}, }; -static const struct MenuAction MultichoiceList_Mechadoll2_Q1[] = +static const struct MenuAction MultichoiceList_Mechadoll2_Q1[] = { {gTrickHouse_Mechadoll_Ralts}, {gTrickHouse_Mechadoll_Zigzagoon}, {gTrickHouse_Mechadoll_Slakoth}, }; -static const struct MenuAction MultichoiceList_Mechadoll2_Q2[] = +static const struct MenuAction MultichoiceList_Mechadoll2_Q2[] = { {gTrickHouse_Mechadoll_Poochyena2}, {gTrickHouse_Mechadoll_Shroomish}, {gTrickHouse_Mechadoll_Zigzagoon2}, }; -static const struct MenuAction MultichoiceList_Mechadoll2_Q3[] = +static const struct MenuAction MultichoiceList_Mechadoll2_Q3[] = { {gTrickHouse_Mechadoll_Poochyena3}, {gTrickHouse_Mechadoll_Zubat2}, @@ -152,56 +152,56 @@ static const struct MenuAction MultichoiceList_Mechadoll3_Q1[] = {gTrickHouse_Mechadoll_SamePrice}, }; -static const struct MenuAction MultichoiceList_Mechadoll3_Q2[] = +static const struct MenuAction MultichoiceList_Mechadoll3_Q2[] = { {gTrickHouse_Mechadoll_60Yen}, {gTrickHouse_Mechadoll_55Yen}, {gTrickHouse_Mechadoll_Nothing}, }; -static const struct MenuAction MultichoiceList_Mechadoll3_Q3[] = +static const struct MenuAction MultichoiceList_Mechadoll3_Q3[] = { {gTrickHouse_Mechadoll_CostMore}, {gTrickHouse_Mechadoll_CostLess}, {gTrickHouse_Mechadoll_SamePrice2}, }; -static const struct MenuAction MultichoiceList_Mechadoll4_Q1[] = +static const struct MenuAction MultichoiceList_Mechadoll4_Q1[] = { {gTrickHouse_Mechadoll_Male}, {gTrickHouse_Mechadoll_Female}, {gTrickHouse_Mechadoll_Neither}, }; -static const struct MenuAction MultichoiceList_Mechadoll4_Q2[] = +static const struct MenuAction MultichoiceList_Mechadoll4_Q2[] = { {gTrickHouse_Mechadoll_ElderlyMen}, {gTrickHouse_Mechadoll_ElderlyLadies}, {gTrickHouse_Mechadoll_SameNumber}, }; -static const struct MenuAction MultichoiceList_Mechadoll4_Q3[] = +static const struct MenuAction MultichoiceList_Mechadoll4_Q3[] = { {gTrickHouse_Mechadoll_None}, {gTrickHouse_Mechadoll_One}, {gTrickHouse_Mechadoll_Two}, }; -static const struct MenuAction MultichoiceList_Mechadoll5_Q1[] = +static const struct MenuAction MultichoiceList_Mechadoll5_Q1[] = { {gTrickHouse_Mechadoll_Two2}, {gTrickHouse_Mechadoll_Three}, {gTrickHouse_Mechadoll_Four}, }; -static const struct MenuAction MultichoiceList_Mechadoll5_Q2[] = +static const struct MenuAction MultichoiceList_Mechadoll5_Q2[] = { {gTrickHouse_Mechadoll_Six}, {gTrickHouse_Mechadoll_Seven}, {gTrickHouse_Mechadoll_Eight}, }; -static const struct MenuAction MultichoiceList_Mechadoll5_Q3[] = +static const struct MenuAction MultichoiceList_Mechadoll5_Q3[] = { {gTrickHouse_Mechadoll_Six2}, {gTrickHouse_Mechadoll_Seven2}, @@ -934,14 +934,14 @@ const u8 *const gStdStrings[] = [STDSTRING_BATTLE_PYRAMID] = gText_BattlePyramid, }; -static const u8 sLinkServicesMultichoiceIds[] = -{ - MULTI_CABLE_CLUB_NO_RECORD_MIX, - MULTI_WIRELESS_NO_RECORD_BERRY, - MULTI_CABLE_CLUB_WITH_RECORD_MIX, - MULTI_WIRELESS_NO_BERRY, - MULTI_WIRELESS_NO_RECORD, - MULTI_WIRELESS_ALL_SERVICES +static const u8 sLinkServicesMultichoiceIds[] = +{ + MULTI_CABLE_CLUB_NO_RECORD_MIX, + MULTI_WIRELESS_NO_RECORD_BERRY, + MULTI_CABLE_CLUB_WITH_RECORD_MIX, + MULTI_WIRELESS_NO_BERRY, + MULTI_WIRELESS_NO_RECORD, + MULTI_WIRELESS_ALL_SERVICES }; static const u8 *const sPCNameStrings[] = diff --git a/src/data/text/gift_ribbon_descriptions.h b/src/data/text/gift_ribbon_descriptions.h index a95f9729d98f..0ba7a33d5080 100644 --- a/src/data/text/gift_ribbon_descriptions.h +++ b/src/data/text/gift_ribbon_descriptions.h @@ -46,7 +46,7 @@ const u8 gGiftRibbonDescriptionPart2_LovedPokemon[] = _("for a loved POKĂ©MON.") const u8 gGiftRibbonDescriptionPart1_LoveForPokemon[] = _("RIBBON that shows"); const u8 gGiftRibbonDescriptionPart2_LoveForPokemon[] = _("love for POKĂ©MON."); -const u8 *const gGiftRibbonDescriptionPointers[MAX_GIFT_RIBBON][2] = +const u8 *const gGiftRibbonDescriptionPointers[MAX_GIFT_RIBBON][2] = { {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Champion}, {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Champion}, diff --git a/src/data/text/match_call_messages.h b/src/data/text/match_call_messages.h index 6ea3b549f0b0..c86329ee2fa6 100644 --- a/src/data/text/match_call_messages.h +++ b/src/data/text/match_call_messages.h @@ -388,7 +388,7 @@ const u8 gText_MatchCallChampion_Wallace_Pokemon[] = _("I prefer POKĂ©MON of gra const u8 gText_MatchCallChampion_Wallace_Intro1[] = _("I represent beauty as"); const u8 gText_MatchCallChampion_Wallace_Intro2[] = _("well as intelligence."); -const u8 *const gMatchCallFlavorTexts[REMATCH_TABLE_ENTRIES][CHECK_PAGE_ENTRY_COUNT] = +const u8 *const gMatchCallFlavorTexts[REMATCH_TABLE_ENTRIES][CHECK_PAGE_ENTRY_COUNT] = { [REMATCH_ROSE] = MCFLAVOR(AromaLady_Rose), [REMATCH_ANDRES] = MCFLAVOR(RuinManiac_Andres), diff --git a/src/data/text/nature_names.h b/src/data/text/nature_names.h index 60189844592d..d15243b09119 100644 --- a/src/data/text/nature_names.h +++ b/src/data/text/nature_names.h @@ -24,7 +24,7 @@ static const u8 sSassyNatureName[] = _("SASSY"); static const u8 sCarefulNatureName[] = _("CAREFUL"); static const u8 sQuirkyNatureName[] = _("QUIRKY"); -const u8 *const gNatureNamePointers[NUM_NATURES] = +const u8 *const gNatureNamePointers[NUM_NATURES] = { [NATURE_HARDY] = sHardyNatureName, [NATURE_LONELY] = sLonelyNatureName, diff --git a/src/data/text/ribbon_descriptions.h b/src/data/text/ribbon_descriptions.h index 5db52dcedf52..4de90d2e46f7 100644 --- a/src/data/text/ribbon_descriptions.h +++ b/src/data/text/ribbon_descriptions.h @@ -18,7 +18,7 @@ const u8 gRibbonDescriptionPart2_Artist[] = _("as a super sketch model."); const u8 gRibbonDescriptionPart1_Effort[] = _("RIBBON awarded for"); const u8 gRibbonDescriptionPart2_Effort[] = _("being a hard worker."); -const u8 *const gRibbonDescriptionPointers[][2] = +const u8 *const gRibbonDescriptionPointers[][2] = { [CHAMPION_RIBBON] = {gRibbonDescriptionPart1_Champion, gRibbonDescriptionPart2_Champion}, [COOL_RIBBON_NORMAL] = {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_NormalRank}, diff --git a/src/data/trade.h b/src/data/trade.h index 752971c11284..7088633a80b1 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -1,4 +1,4 @@ -#define GFXTAG_MENU_TEXT 200 // Used as a base tag in CB2_CreateTradeMenu and CB2_ReturnToTradeMenu +#define GFXTAG_MENU_TEXT 200 // Used as a base tag in CB2_CreateTradeMenu and CB2_ReturnToTradeMenu #define GFXTAG_CURSOR 300 #define GFXTAG_LINK_MON_GLOW 5550 #define GFXTAG_LINK_MON_SHADOW 5552 @@ -395,7 +395,7 @@ static const struct MenuAction sSelectTradeMonActions[] = {sText_Trade2, Task_DrawSelectionTrade} }; -static const u8 *const sTradeMessages[] = +static const u8 *const sTradeMessages[] = { [TRADE_MSG_STANDBY] = sText_CommunicationStandby, [TRADE_MSG_CANCELED] = sText_TheTradeHasBeenCanceled, @@ -408,8 +408,8 @@ static const u8 *const sTradeMessages[] = [TRADE_MSG_FRIENDS_MON_CANT_BE_TRADED] = gText_OtherTrainersPkmnCantBeTraded }; -static const u8 sTradeTextColors[] = -{ +static const u8 sTradeTextColors[] = +{ TEXT_COLOR_TRANSPARENT, //bg color TEXT_COLOR_WHITE, //fg color TEXT_COLOR_DARK_GRAY //shadow color @@ -1003,67 +1003,67 @@ static const union AffineAnimCmd *const sAffineAnims_CrossingMonPics[] = static const struct InGameTrade sIngameTrades[] = { - [INGAME_TRADE_SEEDOT] = + [INGAME_TRADE_SEEDOT] = { - .nickname = _("DOTS"), + .nickname = _("DOTS"), .species = SPECIES_SEEDOT, .ivs = {5, 4, 5, 4, 4, 4}, - .abilityNum = 1, + .abilityNum = 1, .otId = 38726, .conditions = {30, 5, 5, 5, 5}, .personality = 0x84, - .heldItem = ITEM_CHESTO_BERRY, + .heldItem = ITEM_CHESTO_BERRY, .mailNum = -1, - .otName = _("KOBE"), - .otGender = MALE, + .otName = _("KOBE"), + .otGender = MALE, .sheen = 10, .requestedSpecies = SPECIES_RALTS - }, - [INGAME_TRADE_PLUSLE] = + }, + [INGAME_TRADE_PLUSLE] = { - .nickname = _("PLUSES"), + .nickname = _("PLUSES"), .species = SPECIES_PLUSLE, .ivs = {4, 4, 4, 5, 5, 4}, - .abilityNum = 0, + .abilityNum = 0, .otId = 73996, .conditions = {5, 5, 30, 5, 5}, .personality = 0x6F, - .heldItem = ITEM_WOOD_MAIL, + .heldItem = ITEM_WOOD_MAIL, .mailNum = 0, - .otName = _("ROMAN"), - .otGender = MALE, + .otName = _("ROMAN"), + .otGender = MALE, .sheen = 10, .requestedSpecies = SPECIES_VOLBEAT - }, - [INGAME_TRADE_HORSEA] = + }, + [INGAME_TRADE_HORSEA] = { .nickname = _("SEASOR"), .species = SPECIES_HORSEA, .ivs = {5, 4, 4, 4, 5, 4}, - .abilityNum = 0, + .abilityNum = 0, .otId = 46285, .conditions = {5, 5, 5, 5, 30}, .personality = 0x7F, - .heldItem = ITEM_WAVE_MAIL, + .heldItem = ITEM_WAVE_MAIL, .mailNum = 1, - .otName = _("SKYLAR"), - .otGender = MALE, + .otName = _("SKYLAR"), + .otGender = MALE, .sheen = 10, .requestedSpecies = SPECIES_BAGON - }, - [INGAME_TRADE_MEOWTH] = + }, + [INGAME_TRADE_MEOWTH] = { .nickname = _("MEOWOW"), .species = SPECIES_MEOWTH, .ivs = {4, 5, 4, 5, 4, 4}, - .abilityNum = 0, + .abilityNum = 0, .otId = 91481, .conditions = {5, 5, 5, 30, 5}, .personality = 0x8B, - .heldItem = ITEM_RETRO_MAIL, + .heldItem = ITEM_RETRO_MAIL, .mailNum = 2, - .otName = _("ISIS"), - .otGender = FEMALE, + .otName = _("ISIS"), + .otGender = FEMALE, .sheen = 10, .requestedSpecies = SPECIES_SKITTY } diff --git a/src/data/union_room.h b/src/data/union_room.h index be7bfae71ef2..902853ddbc5c 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -54,14 +54,14 @@ static const u8 *const sPlayersNeededOrModeTexts[][5] = { { sText_1PlayerNeeded, sText_2PlayerMode - }, + }, // 4 players required { sText_3PlayersNeeded, sText_2PlayersNeeded, sText_1PlayerNeeded, sText_4PlayerMode - }, + }, // 2-5 players required { sText_1PlayerNeeded, @@ -69,7 +69,7 @@ static const u8 *const sPlayersNeededOrModeTexts[][5] = { sText_3PlayerMode, sText_4PlayerMode, sText_5PlayerMode - }, + }, // 3-5 players required { sText_2PlayersNeeded, @@ -77,7 +77,7 @@ static const u8 *const sPlayersNeededOrModeTexts[][5] = { sText_3PlayerMode, sText_4PlayerMode, sText_5PlayerMode - }, + }, // 2-4 players required { sText_1PlayerNeeded, @@ -368,7 +368,7 @@ const u8 *const sBattleReactionTexts[GENDER_COUNT][4] = { sText_UsedGoodMoveMale, sText_BattleSurpriseMale, sText_SwitchedMonsMale - }, + }, { sText_YoureToughFemale, sText_UsedGoodMoveFemale, @@ -392,7 +392,7 @@ const u8 *const sChatReactionTexts[GENDER_COUNT][4] = { sText_ThatsFunnyMale, sText_RandomChatMale1, sText_RandomChatMale2 - }, + }, { sText_LearnedSomethingFemale, sText_ThatsFunnyFemale, @@ -410,7 +410,7 @@ const u8 *const sTrainerCardReactionTexts[GENDER_COUNT][2] = { { sText_ShowedTrainerCardMale1, sText_ShowedTrainerCardMale2 - }, + }, { sText_ShowedTrainerCardFemale1, sText_ShowedTrainerCardFemale2 @@ -426,7 +426,7 @@ const u8 *const sTradeReactionTexts[GENDER_COUNT][4] = { { sText_MaleTraded1, sText_MaleTraded2 - }, + }, { sText_FemaleTraded1, sText_FemaleTraded2 @@ -485,7 +485,7 @@ ALIGNED(4) const u8 sText_ChooseLeaderToughContest[] = _("TOUGHNESS CONTEST!\nPl ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerLv50[] = _("BATTLE TOWER LEVEL 50!\nPlease choose the LEADER."); ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL!\nPlease choose the LEADER."); -static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] = +static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] = { [LINK_GROUP_SINGLE_BATTLE] = sText_ChooseTrainerSingleBattle, [LINK_GROUP_DOUBLE_BATTLE] = sText_ChooseTrainerDoubleBattle, @@ -1016,29 +1016,29 @@ ALIGNED(4) const u8 sAcceptedActivityIds_BerryPicking[] = {ACTIVITY_BERRY_PIC ALIGNED(4) const u8 sAcceptedActivityIds_WonderCard[] = {ACTIVITY_WONDER_CARD2, 0xff}; ALIGNED(4) const u8 sAcceptedActivityIds_WonderNews[] = {ACTIVITY_WONDER_NEWS2, 0xff}; ALIGNED(4) const u8 sAcceptedActivityIds_Resume[] = { - IN_UNION_ROOM | ACTIVITY_NONE, - IN_UNION_ROOM | ACTIVITY_BATTLE_SINGLE, - IN_UNION_ROOM | ACTIVITY_TRADE, - IN_UNION_ROOM | ACTIVITY_CHAT, - IN_UNION_ROOM | ACTIVITY_CARD, - IN_UNION_ROOM | ACTIVITY_ACCEPT, - IN_UNION_ROOM | ACTIVITY_DECLINE, - IN_UNION_ROOM | ACTIVITY_NPCTALK, - IN_UNION_ROOM | ACTIVITY_PLYRTALK, + IN_UNION_ROOM | ACTIVITY_NONE, + IN_UNION_ROOM | ACTIVITY_BATTLE_SINGLE, + IN_UNION_ROOM | ACTIVITY_TRADE, + IN_UNION_ROOM | ACTIVITY_CHAT, + IN_UNION_ROOM | ACTIVITY_CARD, + IN_UNION_ROOM | ACTIVITY_ACCEPT, + IN_UNION_ROOM | ACTIVITY_DECLINE, + IN_UNION_ROOM | ACTIVITY_NPCTALK, + IN_UNION_ROOM | ACTIVITY_PLYRTALK, 0xff }; ALIGNED(4) const u8 sAcceptedActivityIds_Init[] = {ACTIVITY_SEARCH, 0xff}; ALIGNED(4) const u8 sAcceptedActivityIds_Unk11[] = { - ACTIVITY_BATTLE_SINGLE, - ACTIVITY_BATTLE_DOUBLE, - ACTIVITY_BATTLE_MULTI, - ACTIVITY_TRADE, - ACTIVITY_POKEMON_JUMP, - ACTIVITY_BERRY_CRUSH, - ACTIVITY_BERRY_PICK, - ACTIVITY_WONDER_CARD2, - ACTIVITY_WONDER_NEWS2, - ACTIVITY_SPIN_TRADE, + ACTIVITY_BATTLE_SINGLE, + ACTIVITY_BATTLE_DOUBLE, + ACTIVITY_BATTLE_MULTI, + ACTIVITY_TRADE, + ACTIVITY_POKEMON_JUMP, + ACTIVITY_BERRY_CRUSH, + ACTIVITY_BERRY_PICK, + ACTIVITY_WONDER_CARD2, + ACTIVITY_WONDER_NEWS2, + ACTIVITY_SPIN_TRADE, 0xff }; ALIGNED(4) const u8 sAcceptedActivityIds_RecordCorner[] = {ACTIVITY_RECORD_CORNER, 0xff}; @@ -1076,28 +1076,28 @@ const u8 *const sAcceptedActivityIds[NUM_LINK_GROUP_TYPES] = { [LINK_GROUP_BATTLE_TOWER_OPEN] = sAcceptedActivityIds_BattleTowerOpen }; -static const u8 sLinkGroupToURoomActivity[NUM_LINK_GROUP_TYPES + 2] = +static const u8 sLinkGroupToURoomActivity[NUM_LINK_GROUP_TYPES + 2] = { - [LINK_GROUP_SINGLE_BATTLE] = ACTIVITY_BATTLE_SINGLE, - [LINK_GROUP_DOUBLE_BATTLE] = ACTIVITY_BATTLE_DOUBLE, - [LINK_GROUP_MULTI_BATTLE] = ACTIVITY_BATTLE_MULTI, - [LINK_GROUP_TRADE] = ACTIVITY_TRADE, - [LINK_GROUP_POKEMON_JUMP] = ACTIVITY_POKEMON_JUMP, - [LINK_GROUP_BERRY_CRUSH] = ACTIVITY_BERRY_CRUSH, - [LINK_GROUP_BERRY_PICKING] = ACTIVITY_BERRY_PICK, + [LINK_GROUP_SINGLE_BATTLE] = ACTIVITY_BATTLE_SINGLE, + [LINK_GROUP_DOUBLE_BATTLE] = ACTIVITY_BATTLE_DOUBLE, + [LINK_GROUP_MULTI_BATTLE] = ACTIVITY_BATTLE_MULTI, + [LINK_GROUP_TRADE] = ACTIVITY_TRADE, + [LINK_GROUP_POKEMON_JUMP] = ACTIVITY_POKEMON_JUMP, + [LINK_GROUP_BERRY_CRUSH] = ACTIVITY_BERRY_CRUSH, + [LINK_GROUP_BERRY_PICKING] = ACTIVITY_BERRY_PICK, [LINK_GROUP_WONDER_CARD] = ACTIVITY_WONDER_CARD2, - [LINK_GROUP_WONDER_NEWS] = ACTIVITY_WONDER_NEWS2, - [LINK_GROUP_UNION_ROOM_RESUME] = ACTIVITY_NONE, - [LINK_GROUP_UNION_ROOM_INIT] = ACTIVITY_NONE, - [LINK_GROUP_UNK_11] = ACTIVITY_NONE, - [LINK_GROUP_RECORD_CORNER] = ACTIVITY_RECORD_CORNER, - [LINK_GROUP_BERRY_BLENDER] = ACTIVITY_BERRY_BLENDER, - [LINK_GROUP_UNK_14] = ACTIVITY_NONE, + [LINK_GROUP_WONDER_NEWS] = ACTIVITY_WONDER_NEWS2, + [LINK_GROUP_UNION_ROOM_RESUME] = ACTIVITY_NONE, + [LINK_GROUP_UNION_ROOM_INIT] = ACTIVITY_NONE, + [LINK_GROUP_UNK_11] = ACTIVITY_NONE, + [LINK_GROUP_RECORD_CORNER] = ACTIVITY_RECORD_CORNER, + [LINK_GROUP_BERRY_BLENDER] = ACTIVITY_BERRY_BLENDER, + [LINK_GROUP_UNK_14] = ACTIVITY_NONE, [LINK_GROUP_COOL_CONTEST] = ACTIVITY_CONTEST_COOL, - [LINK_GROUP_BEAUTY_CONTEST] = ACTIVITY_CONTEST_BEAUTY, - [LINK_GROUP_CUTE_CONTEST] = ACTIVITY_CONTEST_CUTE, - [LINK_GROUP_SMART_CONTEST] = ACTIVITY_CONTEST_SMART, - [LINK_GROUP_TOUGH_CONTEST] = ACTIVITY_CONTEST_TOUGH, - [LINK_GROUP_BATTLE_TOWER] = ACTIVITY_BATTLE_TOWER, + [LINK_GROUP_BEAUTY_CONTEST] = ACTIVITY_CONTEST_BEAUTY, + [LINK_GROUP_CUTE_CONTEST] = ACTIVITY_CONTEST_CUTE, + [LINK_GROUP_SMART_CONTEST] = ACTIVITY_CONTEST_SMART, + [LINK_GROUP_TOUGH_CONTEST] = ACTIVITY_CONTEST_TOUGH, + [LINK_GROUP_BATTLE_TOWER] = ACTIVITY_BATTLE_TOWER, [LINK_GROUP_BATTLE_TOWER_OPEN] = ACTIVITY_BATTLE_TOWER_OPEN }; diff --git a/src/daycare.c b/src/daycare.c index 6a17150490e2..8dd751531911 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -920,7 +920,7 @@ static bool8 TryProduceOrHatchEgg(struct DayCare *daycare) SetMonData(&gPlayerParty[i], MON_DATA_FRIENDSHIP, &eggCycles); } - else + else { gSpecialVar_0x8004 = i; return TRUE; diff --git a/src/dewford_trend.c b/src/dewford_trend.c index 09a8d2afe919..d193ef1f5b89 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -24,29 +24,29 @@ Information about a Dewford trend is stored in a struct DewfordTrend. In addition to the two easy chat words that make up the trend's phrase, each trend has a few randomly generated values associated with it. - - rand: + - rand: This is a 16 bit value generated once when the phrase is created. It's used in calculations for Feebas tiles, Slot Machines, and Match Call. - - trendiness / maxTrendiness: + - trendiness / maxTrendiness: Initialized as a random value between 30-127 inclusive. This is used to compare how trendy one phrase is vs another. If a submitted phrase is less trendy than the current one it won't be accepted. If the trend is - "boring" (see below) it will lose trendiness over time until it reaches 0, + "boring" (see below) it will lose trendiness over time until it reaches 0, at which point it will stop being boring and gain trendiness until it reaches maxTrendiness (then it becomes boring again and the cycle repeats). - - gainingTrendiness: + - gainingTrendiness: This is a flag that determines whether a phrase should be gaining or losing trendiness. An NPC in Dewford Hall will comment on whether the current phrase is "boring" or not, and if it is gaining trendiness (or if it is still trendier - than the last phrase) it is not boring. This field will always be TRUE for any + than the last phrase) it is not boring. This field will always be TRUE for any new phrase submitted after the 1st submission. ## Saving trends ## - Each time a potential trendy phrase is submitted, it is saved in gSaveBlock1Ptr->dewfordTrends[]. - Up to SAVED_TRENDS_COUNT (5) trends may be saved at one time. The trends in this array are kept - in sorted order from most trendy to least trendy. The current trendy phrase is always at - gSaveBlock1Ptr->dewfordTrends[0]. If the player mixes records with another player, their own - trends are replaced with their mixing partner's, unless the phrase is the same, in which case + Each time a potential trendy phrase is submitted, it is saved in gSaveBlock1Ptr->dewfordTrends[]. + Up to SAVED_TRENDS_COUNT (5) trends may be saved at one time. The trends in this array are kept + in sorted order from most trendy to least trendy. The current trendy phrase is always at + gSaveBlock1Ptr->dewfordTrends[0]. If the player mixes records with another player, their own + trends are replaced with their mixing partner's, unless the phrase is the same, in which case the version with a higher trendiness value is used (see ReceiveDewfordTrendData). ## TV Show ## @@ -247,7 +247,7 @@ void ReceiveDewfordTrendData(struct DewfordTrend *linkedTrends, size_t size, u8 players = GetLinkPlayerCount(); for (i = 0; i < players; i++) memcpy(&linkedTrendsBuffer[i * SAVED_TRENDS_COUNT], (u8 *)linkedTrends + i * size, SAVED_TRENDS_SIZE); - + // Determine which of the received trends should be saved. // savedTrendsBuffer starts empty, and when finished will contain // which of the linked trends to save in the saveblock. @@ -279,7 +279,7 @@ void ReceiveDewfordTrendData(struct DewfordTrend *linkedTrends, size_t size, u8 } } SortTrends(savedTrendsBuffer, numTrends, SORT_MODE_FULL); - + // Overwrite current saved trends with new saved trends src = savedTrendsBuffer; dst = gSaveBlock1Ptr->dewfordTrends; @@ -301,7 +301,7 @@ void BufferTrendyPhraseString(void) void IsTrendyPhraseBoring(void) { bool16 result = FALSE; - + do { if (gSaveBlock1Ptr->dewfordTrends[0].trendiness - gSaveBlock1Ptr->dewfordTrends[1].trendiness > 1) @@ -312,7 +312,7 @@ void IsTrendyPhraseBoring(void) break; result = TRUE; } while (0); - + gSpecialVar_Result = result; } diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 7a642968bb7c..c69ef9267687 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -139,7 +139,7 @@ enum { #define NUM_STATUS_SQUARES 10 -// Berries fall in predefined columns. +// Berries fall in predefined columns. // A total of 10 are available, though fewer will be used with < 5 players // The 11th column is a repeat of the 1st column wrapped around, so only // the values 0-9 are unique 'valid' columns @@ -342,20 +342,20 @@ static void HandleWaitPlayAgainInput(void); static void ResetPickState(void); static u32 GetHighestScore(void); static void SendPacket_ReadyToStart(bool32); -static void SendPacket_GameState(struct DodrioGame_Player *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, +static void SendPacket_GameState(struct DodrioGame_Player *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, u8 , bool32 , bool32 ); -static bool32 RecvPacket_GameState(u32, - struct DodrioGame_Player *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, - struct DodrioGame_PlayerCommData *, +static bool32 RecvPacket_GameState(u32, + struct DodrioGame_Player *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, + struct DodrioGame_PlayerCommData *, u8 *, bool32 *, bool32 *); static void SendPacket_PickState(u8); static bool32 RecvPacket_PickState(u32, u8 *); @@ -422,11 +422,11 @@ static void StopGfxFuncs(void); static void GfxIdle(void); // For each player, the array is a list of all the columns starting with the column to their left -// Only the range of active columns is read from the array (dependent on the number of players), +// Only the range of active columns is read from the array (dependent on the number of players), // so the arrays are spaced such that the numbers in the center are where the data that's read starts and end. static const u8 sActiveColumnMap[MAX_RFU_PLAYERS][MAX_RFU_PLAYERS][NUM_BERRY_COLUMNS] = { - { // 1 player (never used), columns 4-6. + { // 1 player (never used), columns 4-6. // Sometimes read to get default order regardless of the current number of players {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0}, }, @@ -526,7 +526,7 @@ static const u8 sPlayerIdAtColumn[MAX_RFU_PLAYERS][NUM_BERRY_COLUMNS] = { {__, __, __, __, 1, 1, 1, __, __, __, __}, // 1 player {__, __, __, 0, 0, 1, 1, 0, __, __, __}, // 2 players - {__, __, 2, 2, 0, 0, 1, 1, 1, __, __}, // 3 players + {__, __, 2, 2, 0, 0, 1, 1, 1, __, __}, // 3 players {__, 3, 3, 0, 0, 1, 1, 2, 2, 3, __}, // 4 players { 3, 3, 4, 4, 0, 0, 1, 1, 2, 2, 3}, // 5 players }; @@ -592,15 +592,15 @@ ALIGNED(4) static const u8 sPrizeBerryIds[][10] = { { // Possible prizes with 3 players - ITEM_TO_BERRY(ITEM_RAZZ_BERRY) - 1, - ITEM_TO_BERRY(ITEM_BLUK_BERRY) - 1, - ITEM_TO_BERRY(ITEM_NANAB_BERRY) - 1, - ITEM_TO_BERRY(ITEM_WEPEAR_BERRY) - 1, - ITEM_TO_BERRY(ITEM_PINAP_BERRY) - 1, - ITEM_TO_BERRY(ITEM_PINAP_BERRY) - 1, - ITEM_TO_BERRY(ITEM_WEPEAR_BERRY) - 1, - ITEM_TO_BERRY(ITEM_NANAB_BERRY) - 1, - ITEM_TO_BERRY(ITEM_BLUK_BERRY) - 1, + ITEM_TO_BERRY(ITEM_RAZZ_BERRY) - 1, + ITEM_TO_BERRY(ITEM_BLUK_BERRY) - 1, + ITEM_TO_BERRY(ITEM_NANAB_BERRY) - 1, + ITEM_TO_BERRY(ITEM_WEPEAR_BERRY) - 1, + ITEM_TO_BERRY(ITEM_PINAP_BERRY) - 1, + ITEM_TO_BERRY(ITEM_PINAP_BERRY) - 1, + ITEM_TO_BERRY(ITEM_WEPEAR_BERRY) - 1, + ITEM_TO_BERRY(ITEM_NANAB_BERRY) - 1, + ITEM_TO_BERRY(ITEM_BLUK_BERRY) - 1, ITEM_TO_BERRY(ITEM_RAZZ_BERRY) - 1 }, { // Possible prizes with 4 players @@ -864,7 +864,7 @@ static void InitCountdown(void) default: sGame->startCountdown = TRUE; SetGameFunc(FUNC_COUNTDOWN); - break; + break; } } @@ -912,7 +912,7 @@ static void WaitGameStart(void) case 0: if (sGame->startGame) SetGameFunc(FUNC_PLAY_GAME); - break; + break; } } @@ -1468,15 +1468,15 @@ static void RecvLinkData_Gameplay(void) u8 i; u8 numPlayers = sGame->numPlayers; - sGame->players[0].receivedGameStatePacket = RecvPacket_GameState(0, - &sGame->players[0], - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - &sGame->numGraySquares, - &sGame->berriesFalling, + sGame->players[0].receivedGameStatePacket = RecvPacket_GameState(0, + &sGame->players[0], + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + &sGame->numGraySquares, + &sGame->berriesFalling, &sGame->allReadyToEnd); sGame->clearRecvCmds = TRUE; @@ -1545,15 +1545,15 @@ static void RecvLinkData_ReadyToEnd(void) u8 i; u8 numPlayers = sGame->numPlayers; - sGame->players[0].receivedGameStatePacket = RecvPacket_GameState(0, - &sGame->players[0], - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - &sGame->numGraySquares, - &sGame->berriesFalling, + sGame->players[0].receivedGameStatePacket = RecvPacket_GameState(0, + &sGame->players[0], + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + &sGame->numGraySquares, + &sGame->berriesFalling, &sGame->allReadyToEnd); sGame->clearRecvCmds = TRUE; @@ -1605,25 +1605,25 @@ static void SendLinkData_Leader(void) switch (sGame->funcId) { case FUNC_PLAY_GAME: - SendPacket_GameState(&sGame->player, - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - sGame->numGraySquares, - sGame->berriesFalling, + SendPacket_GameState(&sGame->player, + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + sGame->numGraySquares, + sGame->berriesFalling, sGame->allReadyToEnd); break; case FUNC_WAIT_END_GAME: - SendPacket_GameState(&sGame->player, - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - sGame->numGraySquares, - sGame->berriesFalling, + SendPacket_GameState(&sGame->player, + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + sGame->numGraySquares, + sGame->berriesFalling, sGame->allReadyToEnd); break; } @@ -1634,27 +1634,27 @@ static void RecvLinkData_Member(void) switch (sGame->funcId) { case FUNC_PLAY_GAME: - RecvPacket_GameState(sGame->multiplayerId, - &sGame->players[sGame->multiplayerId], - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - &sGame->numGraySquares, - &sGame->berriesFalling, + RecvPacket_GameState(sGame->multiplayerId, + &sGame->players[sGame->multiplayerId], + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + &sGame->numGraySquares, + &sGame->berriesFalling, &sGame->allReadyToEnd); break; case FUNC_WAIT_END_GAME: - RecvPacket_GameState(sGame->multiplayerId, - &sGame->players[sGame->multiplayerId], - &sGame->players[0].comm, - &sGame->players[1].comm, - &sGame->players[2].comm, - &sGame->players[3].comm, - &sGame->players[4].comm, - &sGame->numGraySquares, - &sGame->berriesFalling, + RecvPacket_GameState(sGame->multiplayerId, + &sGame->players[sGame->multiplayerId], + &sGame->players[0].comm, + &sGame->players[1].comm, + &sGame->players[2].comm, + &sGame->players[3].comm, + &sGame->players[4].comm, + &sGame->numGraySquares, + &sGame->berriesFalling, &sGame->allReadyToEnd); break; } @@ -1728,7 +1728,7 @@ static void HandleSound_Member(void) u8 i; if (sGame->players[sGame->multiplayerId].comm.pickState == PICK_NONE) { - if (sGame->players[sGame->multiplayerId].comm.ateBerry != TRUE + if (sGame->players[sGame->multiplayerId].comm.ateBerry != TRUE && sGame->players[sGame->multiplayerId].comm.missedBerry != TRUE) sGame->playingPickSound = 0; } @@ -1885,7 +1885,7 @@ static void HandlePickBerries(void) column = sActiveColumnMap[0][0][j]; // Attempt has already been checked - if (sGame->playersAttemptingPick[column][0] == i + if (sGame->playersAttemptingPick[column][0] == i || sGame->playersAttemptingPick[column][1] == i) break; @@ -1929,14 +1929,14 @@ static void HandlePickBerries(void) if (++sGame->eatTimer[column] >= 6) { sGame->eatTimer[column] = 0; - - if (sGame->playersAttemptingPick[column][0] == PLAYER_NONE + + if (sGame->playersAttemptingPick[column][0] == PLAYER_NONE && sGame->playersAttemptingPick[column][1] == PLAYER_NONE) { // No players attempting to pick this berry continue; } - else if (sGame->playersAttemptingPick[column][0] != PLAYER_NONE + else if (sGame->playersAttemptingPick[column][0] != PLAYER_NONE && sGame->playersAttemptingPick[column][1] == PLAYER_NONE) { // One player attempting to pick this berry @@ -2003,7 +2003,7 @@ static bool32 TryPickBerry(u8 playerId, u8 pickState, u8 column) pick = 2; break; } - + // Check if berry is within range to be picked if (berries->fallDist[column] == EAT_FALL_DIST - 1 || berries->fallDist[column] == EAT_FALL_DIST) { @@ -2054,7 +2054,7 @@ static void UpdateFallingBerries(void) if (sGame->berryState[i] == BERRYSTATE_NONE || sGame->berryState[i] == BERRYSTATE_PICKED) { sGame->berriesFalling = TRUE; - + if (game->player.berries.fallDist[i] >= MAX_FALL_DIST) { // Berry hit the ground @@ -2591,9 +2591,9 @@ static void ResetForPlayAgainPrompt(void) } static const s16 sBerryScoreMultipliers[] = { - [BERRY_BLUE] = 10, - [BERRY_GREEN] = 30, - [BERRY_GOLD] = 50, + [BERRY_BLUE] = 10, + [BERRY_GREEN] = 30, + [BERRY_GOLD] = 50, [BERRY_MISSED] = 50 // Subtracted }; @@ -2788,7 +2788,7 @@ static u32 SetScoreResults(void) u8 numPlayers = sGame->numPlayers; GetHighestScore(); // Useless call - + if (GetHighestScore() == 0) { // No one scored any points, put everyone in last place with a score of 0. @@ -2810,7 +2810,7 @@ static u32 SetScoreResults(void) { u32 score = GetScoreByRanking(ranking); u8 curRanking = nextRanking; - + // Find all players with the score for this ranking. // Increment nextRanking but not curRanking to allow // for ties @@ -3028,19 +3028,19 @@ static const u16 sDebug_BerryResults[MAX_RFU_PLAYERS][4] = [BERRY_GREEN] = 0, [BERRY_GOLD] = 90, [BERRY_MISSED] = MAX_BERRIES - }, + }, { [BERRY_BLUE] = MAX_BERRIES, [BERRY_GREEN] = MAX_BERRIES, [BERRY_GOLD] = 70, [BERRY_MISSED] = MAX_BERRIES - }, + }, { [BERRY_BLUE] = MAX_BERRIES, [BERRY_GREEN] = 0, [BERRY_GOLD] = MAX_BERRIES, [BERRY_MISSED] = 0 - }, + }, { [BERRY_BLUE] = MAX_BERRIES, [BERRY_GREEN] = MAX_BERRIES, @@ -3048,7 +3048,7 @@ static const u16 sDebug_BerryResults[MAX_RFU_PLAYERS][4] = [BERRY_MISSED] = 0 }, { - [BERRY_BLUE] = MAX_BERRIES, + [BERRY_BLUE] = MAX_BERRIES, [BERRY_GREEN] = MAX_BERRIES, [BERRY_GOLD] = MAX_BERRIES, [BERRY_MISSED] = 0 @@ -3159,14 +3159,14 @@ struct GameStatePacket bool8 missedBerry_Player5:1; }; -static void SendPacket_GameState(struct DodrioGame_Player *player, - struct DodrioGame_PlayerCommData *player1, - struct DodrioGame_PlayerCommData *player2, - struct DodrioGame_PlayerCommData *player3, - struct DodrioGame_PlayerCommData *player4, - struct DodrioGame_PlayerCommData *player5, - u8 numGraySquares, - bool32 berriesFalling, +static void SendPacket_GameState(struct DodrioGame_Player *player, + struct DodrioGame_PlayerCommData *player1, + struct DodrioGame_PlayerCommData *player2, + struct DodrioGame_PlayerCommData *player3, + struct DodrioGame_PlayerCommData *player4, + struct DodrioGame_PlayerCommData *player5, + u8 numGraySquares, + bool32 berriesFalling, bool32 allReadyToEnd) { struct GameStatePacket packet; @@ -3219,15 +3219,15 @@ static void SendPacket_GameState(struct DodrioGame_Player *player, Rfu_SendPacket(&packet); } -static bool32 RecvPacket_GameState(u32 playerId, - struct DodrioGame_Player *player, - struct DodrioGame_PlayerCommData *player1, - struct DodrioGame_PlayerCommData *player2, - struct DodrioGame_PlayerCommData *player3, - struct DodrioGame_PlayerCommData *player4, - struct DodrioGame_PlayerCommData *player5, - u8 *numGraySquares, - bool32 *berriesFalling, +static bool32 RecvPacket_GameState(u32 playerId, + struct DodrioGame_Player *player, + struct DodrioGame_PlayerCommData *player1, + struct DodrioGame_PlayerCommData *player2, + struct DodrioGame_PlayerCommData *player3, + struct DodrioGame_PlayerCommData *player4, + struct DodrioGame_PlayerCommData *player5, + u8 *numGraySquares, + bool32 *berriesFalling, bool32 *allReadyToEnd) { struct GameStatePacket *packet; @@ -3503,7 +3503,7 @@ static const u8 sActiveColumnMap_Duplicate[MAX_RFU_PLAYERS][MAX_RFU_PLAYERS][NUM {6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6}, {8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8}, }, -}; +}; // Unused duplicate of sDodrioHeadToColumnMap static const u8 sDodrioHeadToColumnMap_Duplicate[MAX_RFU_PLAYERS][MAX_RFU_PLAYERS][3] = @@ -4117,7 +4117,7 @@ static void UpdateStatusBarAnim(u8 numEmpty) StartSpriteAnim(&gSprites[sStatusBar->spriteIds[i]], STATUS_YELLOW); } } - + // Set remaining squares gray for (; i < NUM_STATUS_SQUARES; i++) StartSpriteAnim(&gSprites[sStatusBar->spriteIds[i]], STATUS_GRAY); @@ -4132,15 +4132,15 @@ static void SetStatusBarInvisibility(bool8 invisible) } static const u8 sUnusedSounds[] = { - SE_M_CHARM, - SE_NOTE_C, - SE_NOTE_D, - SE_NOTE_E, - SE_NOTE_F, - SE_NOTE_G, - SE_NOTE_A, - SE_NOTE_B, - SE_NOTE_C_HIGH, + SE_M_CHARM, + SE_NOTE_C, + SE_NOTE_D, + SE_NOTE_E, + SE_NOTE_F, + SE_NOTE_G, + SE_NOTE_A, + SE_NOTE_B, + SE_NOTE_C_HIGH, SE_RG_CARD_OPEN }; @@ -4286,9 +4286,9 @@ static void SpriteCB_Cloud(struct Sprite *sprite) } } -static const s16 sCloudStartCoords[NUM_CLOUDS][2] = +static const s16 sCloudStartCoords[NUM_CLOUDS][2] = { - {230, 55}, + {230, 55}, { 30, 74} }; @@ -4790,8 +4790,8 @@ static void ShowResults(void) ConvertIntToDecimalStringN(gStringVar4, berriesPicked, STR_CONV_MODE_LEFT_ALIGN, 4); width = GetStringWidth(1, gStringVar4, -1); - - // If player got the most of a berry type, highlight their number in red + + // If player got the most of a berry type, highlight their number in red if (maxBerriesPicked == berriesPicked && maxBerriesPicked != 0) AddTextPrinterParameterized3(sGfx->windowIds[1], 1, sResultsXCoords[j] - width, sResultsYCoords[i], sTextColorTable[COLORID_RED], -1, gStringVar4); else @@ -4974,7 +4974,7 @@ static void Msg_WantToPlayAgain(void) AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_No, 8, 17, -1, NULL); AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, -1, NULL); CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], 3); - + // Increment state only if A or B button have been pressed. if (JOY_NEW(A_BUTTON)) { diff --git a/src/easy_chat.c b/src/easy_chat.c index ad583839d7c4..79300bd520e1 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -857,7 +857,7 @@ static const struct WindowTemplate sEasyChatYesNoWindowTemplate = { static const u8 sText_Clear17[] = _("{CLEAR 17}"); -static const u8 *const sEasyChatKeyboardAlphabet[NUM_ALPHABET_ROWS] = +static const u8 *const sEasyChatKeyboardAlphabet[NUM_ALPHABET_ROWS] = { gText_EasyChatKeyboard_ABCDEFothers, gText_EasyChatKeyboard_GHIJKL, @@ -2908,7 +2908,7 @@ static void GetQuizTitle(u8 *dst) u8 name[32]; struct SaveBlock1 *saveBlock1 = gSaveBlock1Ptr; DynamicPlaceholderTextUtil_Reset(); - + // Buffer author's name if (StringLength(saveBlock1->lilycoveLady.quiz.playerName) != 0) { @@ -4118,7 +4118,7 @@ static void BufferFrameTilemap(u16 *tilemap) // These frames fill the screen, no need to draw top/bottom edges right = sPhraseFrameDimensions[frameId].left + sPhraseFrameDimensions[frameId].width; bottom = sPhraseFrameDimensions[frameId].top + sPhraseFrameDimensions[frameId].height; - + // Draw middle section for (y = sPhraseFrameDimensions[frameId].top; y < bottom; y++) { @@ -4516,7 +4516,7 @@ static void BufferLowerWindowFrame(int left, int top, int width, int height) bottom = top + height - 1; x = left; y = top; - + // Draw top edge tilemap[y * 32 + x] = FRAME_OFFSET_GREEN + FRAME_TILE_TOP_L_CORNER; x++; @@ -4688,7 +4688,7 @@ static void UpdateRectangleCursorPos(void) s8 column; s8 row; - if (sScreenControl->rectangleCursorSpriteRight + if (sScreenControl->rectangleCursorSpriteRight && sScreenControl->rectangleCursorSpriteLeft) { GetKeyboardCursorColAndRow(&column, &row); @@ -5532,16 +5532,16 @@ void InitEasyChatPhrases(void) for (i = 0; i < ARRAY_COUNT(sDefaultProfileWords); i++) gSaveBlock1Ptr->easyChatProfile[i] = sDefaultProfileWords[i]; - + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) gSaveBlock1Ptr->easyChatBattleStart[i] = sDefaultBattleStartWords[i]; - + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) gSaveBlock1Ptr->easyChatBattleWon[i] = sDefaultBattleWonWords[i]; - + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) gSaveBlock1Ptr->easyChatBattleLost[i] = sDefaultBattleLostWords[i]; - + for (i = 0; i < MAIL_COUNT; i++) { for (j = 0; j < MAIL_WORDS_COUNT; j++) @@ -5585,11 +5585,11 @@ static void SetUnlockedEasyChatGroups(void) sWordData->numUnlockedGroups = 0; if (GetNationalPokedexCount(FLAG_GET_SEEN)) sWordData->unlockedGroupIds[sWordData->numUnlockedGroups++] = EC_GROUP_POKEMON; - + // These groups are unlocked automatically for (i = EC_GROUP_TRAINER; i <= EC_GROUP_ADJECTIVES; i++) sWordData->unlockedGroupIds[sWordData->numUnlockedGroups++] = i; - + if (FlagGet(FLAG_SYS_GAME_CLEAR)) { sWordData->unlockedGroupIds[sWordData->numUnlockedGroups++] = EC_GROUP_EVENTS; @@ -5627,7 +5627,7 @@ static u8 *BufferEasyChatWordGroupName(u8 *dest, u8 groupId, u16 totalChars) *str = CHAR_SPACE; str++; } - + *str = EOS; return str; } @@ -5646,7 +5646,7 @@ static u8 *CopyEasyChatWordPadded(u8 *dest, u16 easyChatWord, u16 totalChars) *str = CHAR_SPACE; str++; } - + *str = EOS; return str; } diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index eef2a15d8e07..9f265143ccd5 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -745,7 +745,7 @@ int EReaderHandleTransfer(u8 mode, size_t size, const void * data, void * recvBu } return (sSendRecvMgr.xferState << EREADER_XFER_SHIFT) - | (sSendRecvMgr.cancellationReason << EREADER_CANCEL_SHIFT) + | (sSendRecvMgr.cancellationReason << EREADER_CANCEL_SHIFT) | (sSendRecvMgr.checksumResult << EREADER_CHECKSUM_SHIFT); } diff --git a/src/ereader_screen.c b/src/ereader_screen.c index 438c4bec9d9b..f5edbc628ad1 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -240,7 +240,7 @@ static bool32 sub_81D5064(u16 *arg0, u16 arg1) *arg0 = 0; return TRUE; } - + return FALSE; } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 36f7f0a3efdf..e1b706e86676 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1891,7 +1891,7 @@ const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId) { graphicsId = OBJ_EVENT_GFX_NINJA_BOY; } - + return gObjectEventGraphicsInfoPointers[graphicsId]; } @@ -7497,7 +7497,7 @@ static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent *objEvent) static void GetGroundEffectFlags_Reflection(struct ObjectEvent *objEvent, u32 *flags) { - u32 reflectionFlags[NUM_REFLECTION_TYPES - 1] = { + u32 reflectionFlags[NUM_REFLECTION_TYPES - 1] = { [REFL_TYPE_ICE - 1] = GROUND_EFFECT_FLAG_ICE_REFLECTION, [REFL_TYPE_WATER - 1] = GROUND_EFFECT_FLAG_WATER_REFLECTION }; @@ -7715,7 +7715,7 @@ static u8 ObjectEventGetNearbyReflectionType(struct ObjectEvent *objEvent) RETURN_REFLECTION_TYPE_AT(objEvent->previousCoords.x - j, objEvent->previousCoords.y + one + i) } } - + return REFL_TYPE_NONE; } diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 08f816f4feeb..bd76993dc421 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -82,7 +82,7 @@ static const u8 sText_ShedinjaJapaneseName[] = _("ăŚă‚±ă‹ăł"); // The below table is used by Task_UpdateBgPalette to control the speed at which the bg color updates. // The first two values are indexes into sBgAnim_PalIndexes (indirectly, via sBgAnimPal), and are // the start and end of the range of colors in sBgAnim_PalIndexes it will move through incrementally -// before starting over. It will repeat this cycle x number of times, where x = the 3rd value, +// before starting over. It will repeat this cycle x number of times, where x = the 3rd value, // delaying each increment by y, where y = the 4th value. // Once it has cycled x number of times, it will move to the next array in this table. static const u8 sBgAnim_PaletteControl[][4] = diff --git a/src/field_door.c b/src/field_door.c index 8aeb1d491498..3f2034ea6c57 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -307,7 +307,7 @@ static void door_build_blockdef(u16 *a, u16 b, const u8 *c) static void DrawCurrentDoorAnimFrame(const struct DoorGraphics *gfx, u32 x, u32 y, const u8 *pal) { u16 arr[24]; - + if (gfx->size == 2) { door_build_blockdef(&arr[8], 0x3F0, pal); @@ -524,7 +524,7 @@ bool8 FieldIsDoorAnimationRunning(void) u32 GetDoorSoundEffect(u32 x, u32 y) { int sound = GetDoorSoundType(sDoorAnimGraphicsTable, x, y); - + if (sound == DOOR_SOUND_NORMAL) return SE_DOOR; else if (sound == DOOR_SOUND_SLIDING) @@ -540,7 +540,7 @@ static bool8 ShouldUseMultiCorridorDoor(void) { if (FlagGet(FLAG_ENABLE_MULTI_CORRIDOR_DOOR)) { - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR)) { return TRUE; diff --git a/src/field_effect.c b/src/field_effect.c index 0d61b35f1da0..47a3f63a040c 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -407,35 +407,35 @@ static const struct SpriteFrameImage sPicTable_HofMonitorSmall[] = static const struct Subsprite sSubsprites_PokecenterMonitor[] = { { - .x = -12, - .y = -8, - .shape = SPRITE_SHAPE(16x8), + .x = -12, + .y = -8, + .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), - .tileOffset = 0, + .tileOffset = 0, .priority = 2 }, { - .x = 4, + .x = 4, .y = -8, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 2, - .priority = 2 + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 2, + .priority = 2 }, { - .x = -12, - .y = 0, - .shape = SPRITE_SHAPE(16x8), + .x = -12, + .y = 0, + .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), - .tileOffset = 3, + .tileOffset = 3, .priority = 2 }, { - .x = 4, - .y = 0, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 5, + .x = 4, + .y = 0, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 5, .priority = 2 } }; @@ -445,35 +445,35 @@ static const struct SubspriteTable sSubspriteTable_PokecenterMonitor = subsprite static const struct Subsprite sSubsprites_HofMonitorBig[] = { { - .x = -32, - .y = -8, - .shape = SPRITE_SHAPE(32x8), + .x = -32, + .y = -8, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .tileOffset = 0, .priority = 2 }, { - .x = 0, - .y = -8, - .shape = SPRITE_SHAPE(32x8), + .x = 0, + .y = -8, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 4, + .tileOffset = 4, .priority = 2 }, { - .x = -32, - .y = 0, - .shape = SPRITE_SHAPE(32x8), + .x = -32, + .y = 0, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .tileOffset = 8, .priority = 2 }, { - .x = 0, - .y = 0, - .shape = SPRITE_SHAPE(32x8), + .x = 0, + .y = 0, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 12, + .tileOffset = 12, .priority = 2 } }; @@ -937,19 +937,19 @@ void MultiplyInvertedPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b) { int curRed, curGreen, curBlue; u16 color = gPlttBufferUnfaded[i]; - + curRed = (color & RGB_RED); curGreen = (color & RGB_GREEN) >> 5; curBlue = (color & RGB_BLUE) >> 10; - + curRed += (((0x1F - curRed) * r) >> 4); curGreen += (((0x1F - curGreen) * g) >> 4); curBlue += (((0x1F - curBlue) * b) >> 4); - + color = curRed; color |= (curGreen << 5); color |= (curBlue << 10); - + gPlttBufferFaded[i] = color; } @@ -958,19 +958,19 @@ void MultiplyPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b) { int curRed, curGreen, curBlue; u16 color = gPlttBufferUnfaded[i]; - + curRed = (color & RGB_RED); curGreen = (color & RGB_GREEN) >> 5; curBlue = (color & RGB_BLUE) >> 10; - + curRed -= ((curRed * r) >> 4); curGreen -= ((curGreen * g) >> 4); curBlue -= ((curBlue * b) >> 4); - + color = curRed; color |= (curGreen << 5); color |= (curBlue << 10); - + gPlttBufferFaded[i] = color; } @@ -1715,7 +1715,7 @@ static bool8 EscalatorWarpIn_Init(struct Task *task) // If dest is down escalator tile, player is riding up behavior = TRUE; task->tState = 3; // jump to EscalatorWarpIn_Up_Init - } + } else // MB_UP_ESCALATOR { // If dest is up escalator tile, player is riding down @@ -2265,7 +2265,7 @@ static void EscapeRopeWarpOutEffect_Spin(struct Task *task) gFieldCallback = FieldCallback_EscapeRopeWarpIn; SetMainCallback2(CB2_LoadMap); DestroyTask(FindTaskIdByFunc(Task_EscapeRopeWarpOut)); - } + } else if (task->tSpinDelay == 0 || (--task->tSpinDelay) == 0) { ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(spinDirections[objectEvent->facingDirection])); diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index eab7d85ef07f..bcc02efe9693 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -37,7 +37,7 @@ static u32 ShowDisguiseFieldEffect(u8, u8, u8); #define sReflectionObjEventId data[0] #define sReflectionObjEventLocalId data[1] -#define sReflectionVerticalOffset data[2] +#define sReflectionVerticalOffset data[2] #define sIsStillReflection data[7] void SetUpReflection(struct ObjectEvent *objectEvent, struct Sprite *sprite, bool8 stillReflection) @@ -337,8 +337,8 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite) mapGroup = sprite->sMapGroup; metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->sX, sprite->sY); - if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) - || !MetatileBehavior_IsTallGrass(metatileBehavior) + if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) + || !MetatileBehavior_IsTallGrass(metatileBehavior) || (sprite->sObjectMoved && sprite->animEnded)) { FieldEffectStop(sprite, FLDEFF_TALL_GRASS); @@ -347,8 +347,8 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite) { // Check if the object that triggered the effect has moved away objectEvent = &gObjectEvents[objectEventId]; - if ((objectEvent->currentCoords.x != sprite->sX - || objectEvent->currentCoords.y != sprite->sY) + if ((objectEvent->currentCoords.x != sprite->sX + || objectEvent->currentCoords.y != sprite->sY) && (objectEvent->previousCoords.x != sprite->sX || objectEvent->previousCoords.y != sprite->sY)) sprite->sObjectMoved = TRUE; @@ -391,10 +391,10 @@ u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s if (gSprites[i].inUse) { sprite = &gSprites[i]; - if (sprite->callback == UpdateTallGrassFieldEffect - && (x == sprite->sX && y == sprite->sY) - && localId == (u8)(sprite->sLocalId) - && mapNum == (sprite->sMapNum & 0xFF) + if (sprite->callback == UpdateTallGrassFieldEffect + && (x == sprite->sX && y == sprite->sY) + && localId == (u8)(sprite->sLocalId) + && mapNum == (sprite->sMapNum & 0xFF) && mapGroup == sprite->sMapGroup) return i; } @@ -452,8 +452,8 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite) mapNum = sprite->sMapNum; mapGroup = sprite->sMapGroup; metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->data[1], sprite->data[2]); - if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) - || !MetatileBehavior_IsLongGrass(metatileBehavior) + if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) + || !MetatileBehavior_IsLongGrass(metatileBehavior) || (sprite->sObjectMoved && sprite->animEnded)) { FieldEffectStop(sprite, FLDEFF_LONG_GRASS); @@ -462,9 +462,9 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite) { // Check if the object that triggered the effect has moved away objectEvent = &gObjectEvents[objectEventId]; - if ((objectEvent->currentCoords.x != sprite->data[1] - || objectEvent->currentCoords.y != sprite->data[2]) - && (objectEvent->previousCoords.x != sprite->data[1] + if ((objectEvent->currentCoords.x != sprite->data[1] + || objectEvent->currentCoords.y != sprite->data[2]) + && (objectEvent->previousCoords.x != sprite->data[1] || objectEvent->previousCoords.y != sprite->data[2])) sprite->sObjectMoved = TRUE; diff --git a/src/field_message_box.c b/src/field_message_box.c index 69d470b84e94..74afb567769f 100755 --- a/src/field_message_box.c +++ b/src/field_message_box.c @@ -105,7 +105,7 @@ static bool8 ForceShowFieldAutoScrollMessage(const u8 *str) return TRUE; } -// Same as ShowFieldMessage, but instead of accepting a +// Same as ShowFieldMessage, but instead of accepting a // string arg it just prints whats already in gStringVar4 bool8 ShowFieldMessageFromBuffer(void) { diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index e5f6007b5cb6..617dd8ea3e52 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1687,7 +1687,7 @@ static bool8 (*const sFishingStateFuncs[])(struct Task *) = { Fishing_Init, Fishing_GetRodOut, - Fishing_WaitBeforeDots, + Fishing_WaitBeforeDots, Fishing_InitDots, // FISHING_START_ROUND Fishing_ShowDots, Fishing_CheckForBite, @@ -1729,13 +1729,13 @@ static bool8 Fishing_GetRodOut(struct Task *task) { struct ObjectEvent *playerObjEvent; const s16 minRounds1[] = { - [OLD_ROD] = 1, - [GOOD_ROD] = 1, + [OLD_ROD] = 1, + [GOOD_ROD] = 1, [SUPER_ROD] = 1 }; const s16 minRounds2[] = { - [OLD_ROD] = 1, - [GOOD_ROD] = 3, + [OLD_ROD] = 1, + [GOOD_ROD] = 3, [SUPER_ROD] = 6 }; @@ -1865,8 +1865,8 @@ static bool8 Fishing_GotBite(struct Task *task) static bool8 Fishing_WaitForA(struct Task *task) { const s16 reelTimeouts[3] = { - [OLD_ROD] = 36, - [GOOD_ROD] = 33, + [OLD_ROD] = 36, + [GOOD_ROD] = 33, [SUPER_ROD] = 30 }; @@ -2100,7 +2100,7 @@ static void Task_DoPlayerSpinExit(u8 taskId) tState++; case 1: // Spin while rising TrySpinPlayerForWarp(object, &tSpinDelayTimer); - + // Rise and accelerate tCurY -= tSpeed; tSpeed += 3; diff --git a/src/field_special_scene.c b/src/field_special_scene.c index 3c7016bd1b6e..cb2d0e9016fa 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -33,15 +33,15 @@ enum //. rodata static const s8 gTruckCamera_HorizontalTable[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, -1, -1, -1, 0}; -static const u8 sSSTidalSailEastMovementScript[] = +static const u8 sSSTidalSailEastMovementScript[] = { - MOVEMENT_ACTION_WALK_FAST_RIGHT, + MOVEMENT_ACTION_WALK_FAST_RIGHT, MOVEMENT_ACTION_STEP_END }; -static const u8 sSSTidalSailWestMovementScript[] = +static const u8 sSSTidalSailWestMovementScript[] = { - MOVEMENT_ACTION_WALK_FAST_LEFT, + MOVEMENT_ACTION_WALK_FAST_LEFT, MOVEMENT_ACTION_STEP_END }; diff --git a/src/field_specials.c b/src/field_specials.c index 46f8e7fe89ec..e19f02c09e9e 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -521,9 +521,9 @@ void SpawnLinkPartnerObjectEvent(void) s16 x = 0; s16 y = 0; u8 movementTypes[] = { - MOVEMENT_TYPE_FACE_UP, - MOVEMENT_TYPE_FACE_LEFT, - MOVEMENT_TYPE_FACE_DOWN, + MOVEMENT_TYPE_FACE_UP, + MOVEMENT_TYPE_FACE_LEFT, + MOVEMENT_TYPE_FACE_DOWN, MOVEMENT_TYPE_FACE_RIGHT }; s8 coordOffsets[][2] = { @@ -1422,8 +1422,8 @@ bool8 Special_AreLeadMonEVsMaxedOut(void) u8 TryUpdateRusturfTunnelState(void) { - if (!FlagGet(FLAG_RUSTURF_TUNNEL_OPENED) - && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(RUSTURF_TUNNEL) + if (!FlagGet(FLAG_RUSTURF_TUNNEL_OPENED) + && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(RUSTURF_TUNNEL) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(RUSTURF_TUNNEL)) { if (FlagGet(FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1)) @@ -1710,7 +1710,7 @@ void OffsetCameraForBattle(void) SetCameraPanning(8, 0); } -const struct WindowTemplate gElevatorFloor_WindowTemplate = +const struct WindowTemplate gElevatorFloor_WindowTemplate = { .bg = 0, .tilemapLeft = 21, @@ -2020,27 +2020,27 @@ void BufferVarsForIVRater(void) bool8 UsedPokemonCenterWarp(void) { - static const u16 sPokemonCenters[] = - { - MAP_OLDALE_TOWN_POKEMON_CENTER_1F, - MAP_DEWFORD_TOWN_POKEMON_CENTER_1F, - MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F, - MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F, - MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F, - MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F, - MAP_PETALBURG_CITY_POKEMON_CENTER_1F, - MAP_SLATEPORT_CITY_POKEMON_CENTER_1F, - MAP_MAUVILLE_CITY_POKEMON_CENTER_1F, - MAP_RUSTBORO_CITY_POKEMON_CENTER_1F, - MAP_FORTREE_CITY_POKEMON_CENTER_1F, - MAP_LILYCOVE_CITY_POKEMON_CENTER_1F, - MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F, - MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F, - MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F, - MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F, - MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F, - MAP_UNION_ROOM, - 0xFFFF + static const u16 sPokemonCenters[] = + { + MAP_OLDALE_TOWN_POKEMON_CENTER_1F, + MAP_DEWFORD_TOWN_POKEMON_CENTER_1F, + MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F, + MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F, + MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F, + MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F, + MAP_PETALBURG_CITY_POKEMON_CENTER_1F, + MAP_SLATEPORT_CITY_POKEMON_CENTER_1F, + MAP_MAUVILLE_CITY_POKEMON_CENTER_1F, + MAP_RUSTBORO_CITY_POKEMON_CENTER_1F, + MAP_FORTREE_CITY_POKEMON_CENTER_1F, + MAP_LILYCOVE_CITY_POKEMON_CENTER_1F, + MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F, + MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F, + MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F, + MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F, + MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F, + MAP_UNION_ROOM, + 0xFFFF }; int i; @@ -2073,71 +2073,71 @@ void UpdateFrontierManiac(u16 daysSince) void ShowFrontierManiacMessage(void) { - static const u8 *const sFrontierManiacMessages[][FRONTIER_MANIAC_MESSAGE_COUNT] = + static const u8 *const sFrontierManiacMessages[][FRONTIER_MANIAC_MESSAGE_COUNT] = { [FRONTIER_MANIAC_BATTLE_TOWER_SINGLES] = - { - BattleFrontier_Lounge2_Text_SalonMaidenIsThere, - BattleFrontier_Lounge2_Text_SalonMaidenSilverMons, - BattleFrontier_Lounge2_Text_SalonMaidenGoldMons + { + BattleFrontier_Lounge2_Text_SalonMaidenIsThere, + BattleFrontier_Lounge2_Text_SalonMaidenSilverMons, + BattleFrontier_Lounge2_Text_SalonMaidenGoldMons }, [FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES] = - { - BattleFrontier_Lounge2_Text_DoubleBattleAdvice1, - BattleFrontier_Lounge2_Text_DoubleBattleAdvice2, - BattleFrontier_Lounge2_Text_DoubleBattleAdvice3 + { + BattleFrontier_Lounge2_Text_DoubleBattleAdvice1, + BattleFrontier_Lounge2_Text_DoubleBattleAdvice2, + BattleFrontier_Lounge2_Text_DoubleBattleAdvice3 }, - [FRONTIER_MANIAC_BATTLE_TOWER_MULTIS] = - { - BattleFrontier_Lounge2_Text_MultiBattleAdvice, - BattleFrontier_Lounge2_Text_MultiBattleAdvice, - BattleFrontier_Lounge2_Text_MultiBattleAdvice + [FRONTIER_MANIAC_BATTLE_TOWER_MULTIS] = + { + BattleFrontier_Lounge2_Text_MultiBattleAdvice, + BattleFrontier_Lounge2_Text_MultiBattleAdvice, + BattleFrontier_Lounge2_Text_MultiBattleAdvice }, [FRONTIER_MANIAC_BATTLE_TOWER_LINK] = - { - BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, - BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, - BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice + { + BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, + BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, + BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice }, [FRONTIER_MANIAC_BATTLE_DOME] = - { - BattleFrontier_Lounge2_Text_DomeAceIsThere, - BattleFrontier_Lounge2_Text_DomeAceSilverMons, - BattleFrontier_Lounge2_Text_DomeAceGoldMons + { + BattleFrontier_Lounge2_Text_DomeAceIsThere, + BattleFrontier_Lounge2_Text_DomeAceSilverMons, + BattleFrontier_Lounge2_Text_DomeAceGoldMons }, [FRONTIER_MANIAC_BATTLE_FACTORY] = - { - BattleFrontier_Lounge2_Text_FactoryHeadIsThere, - BattleFrontier_Lounge2_Text_FactoryHeadSilverMons, - BattleFrontier_Lounge2_Text_FactoryHeadGoldMons + { + BattleFrontier_Lounge2_Text_FactoryHeadIsThere, + BattleFrontier_Lounge2_Text_FactoryHeadSilverMons, + BattleFrontier_Lounge2_Text_FactoryHeadGoldMons }, [FRONTIER_MANIAC_BATTLE_PALACE] = - { - BattleFrontier_Lounge2_Text_PalaceMavenIsThere, - BattleFrontier_Lounge2_Text_PalaceMavenSilverMons, - BattleFrontier_Lounge2_Text_PalaceMavenGoldMons + { + BattleFrontier_Lounge2_Text_PalaceMavenIsThere, + BattleFrontier_Lounge2_Text_PalaceMavenSilverMons, + BattleFrontier_Lounge2_Text_PalaceMavenGoldMons }, [FRONTIER_MANIAC_BATTLE_ARENA] = - { - BattleFrontier_Lounge2_Text_ArenaTycoonIsThere, - BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons, - BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons + { + BattleFrontier_Lounge2_Text_ArenaTycoonIsThere, + BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons, + BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons }, - [FRONTIER_MANIAC_BATTLE_PIKE] = - { - BattleFrontier_Lounge2_Text_PikeQueenIsThere, - BattleFrontier_Lounge2_Text_PikeQueenSilverMons, - BattleFrontier_Lounge2_Text_PikeQueenGoldMons + [FRONTIER_MANIAC_BATTLE_PIKE] = + { + BattleFrontier_Lounge2_Text_PikeQueenIsThere, + BattleFrontier_Lounge2_Text_PikeQueenSilverMons, + BattleFrontier_Lounge2_Text_PikeQueenGoldMons }, [FRONTIER_MANIAC_BATTLE_PYRAMID] = - { - BattleFrontier_Lounge2_Text_PyramidKingIsThere, - BattleFrontier_Lounge2_Text_PyramidKingSilverMons, - BattleFrontier_Lounge2_Text_PyramidKingGoldMons + { + BattleFrontier_Lounge2_Text_PyramidKingIsThere, + BattleFrontier_Lounge2_Text_PyramidKingSilverMons, + BattleFrontier_Lounge2_Text_PyramidKingGoldMons }, }; - static const u8 sFrontierManiacStreakThresholds[][FRONTIER_MANIAC_MESSAGE_COUNT - 1] = + static const u8 sFrontierManiacStreakThresholds[][FRONTIER_MANIAC_MESSAGE_COUNT - 1] = { [FRONTIER_MANIAC_BATTLE_TOWER_SINGLES] = { 21, 56 }, [FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES] = { 21, 35 }, @@ -2161,7 +2161,7 @@ void ShowFrontierManiacMessage(void) case FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES: case FRONTIER_MANIAC_BATTLE_TOWER_MULTIS: case FRONTIER_MANIAC_BATTLE_TOWER_LINK: - if (gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50]; @@ -2172,7 +2172,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_DOME: - if (gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; @@ -2183,7 +2183,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_FACTORY: - if (gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; @@ -2194,7 +2194,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_PALACE: - if (gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; @@ -2205,7 +2205,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_ARENA: - if (gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50]; @@ -2216,7 +2216,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_PIKE: - if (gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50]; @@ -2227,7 +2227,7 @@ void ShowFrontierManiacMessage(void) } break; case FRONTIER_MANIAC_BATTLE_PYRAMID: - if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50] + if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]) { winStreak = gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50]; @@ -2429,13 +2429,13 @@ void ShowScrollableMultichoice(void) } } -static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] = +static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] = { - [SCROLL_MULTI_NONE] = + [SCROLL_MULTI_NONE] = { gText_Exit }, - [SCROLL_MULTI_GLASS_WORKSHOP_VENDOR] = + [SCROLL_MULTI_GLASS_WORKSHOP_VENDOR] = { gText_BlueFlute, gText_YellowFlute, @@ -2446,7 +2446,7 @@ static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] gText_PrettyDesk, gText_Exit }, - [SCROLL_MULTI_POKEMON_FAN_CLUB_RATER] = + [SCROLL_MULTI_POKEMON_FAN_CLUB_RATER] = { gText_0Pts, gText_10Pts, @@ -2461,7 +2461,7 @@ static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] gText_100Pts, gText_QuestionMark }, - [SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1] = + [SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1] = { gText_KissPoster16BP, gText_KissCushion32BP, @@ -2535,7 +2535,7 @@ static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] gText_ExchangeService, gText_Exit }, - [SCROLL_MULTI_BF_MOVE_TUTOR_1] = + [SCROLL_MULTI_BF_MOVE_TUTOR_1] = { gText_Softboiled16BP, gText_SeismicToss24BP, @@ -2549,7 +2549,7 @@ static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH] gText_SwordsDance48BP, gText_Exit }, - [SCROLL_MULTI_BF_MOVE_TUTOR_2] = + [SCROLL_MULTI_BF_MOVE_TUTOR_2] = { gText_DefenseCurl16BP, gText_Snore24BP, @@ -2896,7 +2896,7 @@ void UpdateFrontierGambler(u16 daysSince) void ShowFrontierGamblerLookingMessage(void) { - static const u8 *const sFrontierGamblerLookingMessages[] = + static const u8 *const sFrontierGamblerLookingMessages[] = { BattleFrontier_Lounge3_Text_ChallengeBattleTowerSingle, BattleFrontier_Lounge3_Text_ChallengeBattleTowerDouble, @@ -2919,7 +2919,7 @@ void ShowFrontierGamblerLookingMessage(void) void ShowFrontierGamblerGoMessage(void) { - static const u8 *const sFrontierGamblerGoMessages[] = + static const u8 *const sFrontierGamblerGoMessages[] = { BattleFrontier_Lounge3_Text_GetToBattleTowerSingle, BattleFrontier_Lounge3_Text_GetToBattleTowerDouble, @@ -2940,19 +2940,19 @@ void ShowFrontierGamblerGoMessage(void) void FrontierGamblerSetWonOrLost(bool8 won) { - static const u16 sFrontierChallenges[] = + static const u16 sFrontierChallenges[] = { FRONTIER_CHALLENGE(FRONTIER_FACILITY_TOWER, FRONTIER_MODE_SINGLES), FRONTIER_CHALLENGE(FRONTIER_FACILITY_TOWER, FRONTIER_MODE_DOUBLES), FRONTIER_CHALLENGE(FRONTIER_FACILITY_TOWER, FRONTIER_MODE_MULTIS), FRONTIER_CHALLENGE(FRONTIER_FACILITY_DOME, FRONTIER_MODE_SINGLES), FRONTIER_CHALLENGE(FRONTIER_FACILITY_DOME, FRONTIER_MODE_DOUBLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_SINGLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_DOUBLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_PALACE, FRONTIER_MODE_SINGLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_PALACE, FRONTIER_MODE_DOUBLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_ARENA, FRONTIER_MODE_SINGLES), - FRONTIER_CHALLENGE(FRONTIER_FACILITY_PIKE, FRONTIER_MODE_SINGLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_SINGLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_FACTORY, FRONTIER_MODE_DOUBLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_PALACE, FRONTIER_MODE_SINGLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_PALACE, FRONTIER_MODE_DOUBLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_ARENA, FRONTIER_MODE_SINGLES), + FRONTIER_CHALLENGE(FRONTIER_FACILITY_PIKE, FRONTIER_MODE_SINGLES), FRONTIER_CHALLENGE(FRONTIER_FACILITY_PYRAMID, FRONTIER_MODE_SINGLES) }; @@ -3140,31 +3140,31 @@ static void HideFrontierExchangeCornerItemIcon(u16 menu, u16 unused) } static const u16 sBattleFrontier_TutorMoves1[] = -{ - MOVE_SOFT_BOILED, - MOVE_SEISMIC_TOSS, - MOVE_DREAM_EATER, - MOVE_MEGA_PUNCH, - MOVE_MEGA_KICK, - MOVE_BODY_SLAM, - MOVE_ROCK_SLIDE, - MOVE_COUNTER, - MOVE_THUNDER_WAVE, - MOVE_SWORDS_DANCE +{ + MOVE_SOFT_BOILED, + MOVE_SEISMIC_TOSS, + MOVE_DREAM_EATER, + MOVE_MEGA_PUNCH, + MOVE_MEGA_KICK, + MOVE_BODY_SLAM, + MOVE_ROCK_SLIDE, + MOVE_COUNTER, + MOVE_THUNDER_WAVE, + MOVE_SWORDS_DANCE }; static const u16 sBattleFrontier_TutorMoves2[] = -{ - MOVE_DEFENSE_CURL, - MOVE_SNORE, - MOVE_MUD_SLAP, - MOVE_SWIFT, - MOVE_ICY_WIND, - MOVE_ENDURE, - MOVE_PSYCH_UP, - MOVE_ICE_PUNCH, - MOVE_THUNDER_PUNCH, - MOVE_FIRE_PUNCH +{ + MOVE_DEFENSE_CURL, + MOVE_SNORE, + MOVE_MUD_SLAP, + MOVE_SWIFT, + MOVE_ICY_WIND, + MOVE_ENDURE, + MOVE_PSYCH_UP, + MOVE_ICE_PUNCH, + MOVE_THUNDER_PUNCH, + MOVE_FIRE_PUNCH }; void BufferBattleFrontierTutorMoveName(void) @@ -3181,7 +3181,7 @@ void BufferBattleFrontierTutorMoveName(void) static void ShowBattleFrontierTutorWindow(u8 menu, u16 selection) { - static const struct WindowTemplate sBattleFrontierTutor_WindowTemplate = + static const struct WindowTemplate sBattleFrontierTutor_WindowTemplate = { .bg = 0, .tilemapLeft = 1, @@ -3205,7 +3205,7 @@ static void ShowBattleFrontierTutorWindow(u8 menu, u16 selection) static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection) { - static const u8 *const sBattleFrontier_TutorMoveDescriptions1[] = + static const u8 *const sBattleFrontier_TutorMoveDescriptions1[] = { BattleFrontier_Lounge7_Text_SoftboiledDesc, BattleFrontier_Lounge7_Text_SeismicTossDesc, @@ -3220,7 +3220,7 @@ static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection) gText_Exit, }; - static const u8 *const sBattleFrontier_TutorMoveDescriptions2[] = + static const u8 *const sBattleFrontier_TutorMoveDescriptions2[] = { BattleFrontier_Lounge7_Text_DefenseCurlDesc, BattleFrontier_Lounge7_Text_SnoreDesc, @@ -3335,20 +3335,20 @@ void sub_813AF48(void) } // Undefine Scrollable Multichoice task data macros -#undef tMaxItemsOnScreen -#undef tNumItems -#undef tLeft -#undef tTop -#undef tWidth -#undef tHeight -#undef tKeepOpenAfterSelect -#undef tScrollOffset -#undef tSelectedRow -#undef tScrollMultiId -#undef tScrollArrowId -#undef tWindowId -#undef tListTaskId -#undef tTaskId +#undef tMaxItemsOnScreen +#undef tNumItems +#undef tLeft +#undef tTop +#undef tWidth +#undef tHeight +#undef tKeepOpenAfterSelect +#undef tScrollOffset +#undef tSelectedRow +#undef tScrollMultiId +#undef tScrollArrowId +#undef tWindowId +#undef tListTaskId +#undef tTaskId void DoDeoxysRockInteraction(void) { @@ -3730,7 +3730,7 @@ bool32 ShouldDistributeEonTicket(void) { if (!VarGet(VAR_DISTRIBUTE_EON_TICKET)) return FALSE; - + return TRUE; } @@ -3794,17 +3794,17 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) gSpecialVar_0x8005 = gBlockRecvBuffer[1][0]; ResetBlockReceivedFlag(1); - if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE + if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_RETIRE) { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_BOTH_RETIRE; } - else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_CONTINUE + else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_CONTINUE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_RETIRE) { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_MEMBER_RETIRE; } - else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE + else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_CONTINUE) { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_LEADER_RETIRE; @@ -4026,13 +4026,13 @@ bool8 InPokemonCenter(void) } /* Summary of the Lilycove Trainer Fan Club, because it's a little messy - + ## The Fan Club room itself There are initially 4 members of the Fan Club (+ an interviewer), none of whom are fans of the player After becoming the champion there will be 8 members of the Fan Club, 3 of whom are automatically fans of the player After this point, if a club member is a fan of the player they will sit at the front table and comment on the player If they are not fans of the player, they will sit at the far table and can make comments about a different trainer (see BufferFanClubTrainerName) - + ## Gaining/losing fans After every link battle the player will gain a fan if they won, or lose a fan if they lost If the player has at least 3 fans, this is the only way to gain fans @@ -4101,16 +4101,16 @@ void UpdateTrainerFanClubGameClear(void) } // If the player has < 3 fans, gain a new fan whenever the counter reaches 20+ -// Defeating Drake or participating in a Contest increments the counter by 2 +// Defeating Drake or participating in a Contest increments the counter by 2 // Participating at Battle Tower or in a Secret Base battle increments the counter by 1 u8 TryGainNewFanFromCounter(u8 incrementId) { - static const u8 sCounterIncrements[] = - { - [FANCOUNTER_DEFEATED_DRAKE] = 2, - [FANCOUNTER_BATTLED_AT_BASE] = 1, - [FANCOUNTER_FINISHED_CONTEST] = 2, - [FANCOUNTER_USED_BATTLE_TOWER] = 1 + static const u8 sCounterIncrements[] = + { + [FANCOUNTER_DEFEATED_DRAKE] = 2, + [FANCOUNTER_BATTLED_AT_BASE] = 1, + [FANCOUNTER_FINISHED_CONTEST] = 2, + [FANCOUNTER_USED_BATTLE_TOWER] = 1 }; if (VarGet(VAR_LILYCOVE_FAN_CLUB_STATE) == 2) @@ -4143,16 +4143,16 @@ u8 TryGainNewFanFromCounter(u8 incrementId) // If all the members are already fans of the player then this redundantly sets the first fan in the list to be a fan static u16 PlayerGainRandomTrainerFan(void) { - static const u8 sFanClubMemberIds[NUM_TRAINER_FAN_CLUB_MEMBERS] = - { - FANCLUB_MEMBER1, - FANCLUB_MEMBER2, - FANCLUB_MEMBER3, - FANCLUB_MEMBER4, - FANCLUB_MEMBER5, + static const u8 sFanClubMemberIds[NUM_TRAINER_FAN_CLUB_MEMBERS] = + { + FANCLUB_MEMBER1, + FANCLUB_MEMBER2, + FANCLUB_MEMBER3, + FANCLUB_MEMBER4, + FANCLUB_MEMBER5, FANCLUB_MEMBER6, - FANCLUB_MEMBER7, - FANCLUB_MEMBER8 + FANCLUB_MEMBER7, + FANCLUB_MEMBER8 }; u8 i; @@ -4179,16 +4179,16 @@ static u16 PlayerGainRandomTrainerFan(void) // If no fan was lost while looping, the last current fan in the list will stop being a fan static u16 PlayerLoseRandomTrainerFan(void) { - static const u8 sFanClubMemberIds[NUM_TRAINER_FAN_CLUB_MEMBERS] = - { - FANCLUB_MEMBER1, - FANCLUB_MEMBER6, - FANCLUB_MEMBER7, - FANCLUB_MEMBER4, - FANCLUB_MEMBER3, - FANCLUB_MEMBER5, - FANCLUB_MEMBER8, - FANCLUB_MEMBER2 + static const u8 sFanClubMemberIds[NUM_TRAINER_FAN_CLUB_MEMBERS] = + { + FANCLUB_MEMBER1, + FANCLUB_MEMBER6, + FANCLUB_MEMBER7, + FANCLUB_MEMBER4, + FANCLUB_MEMBER3, + FANCLUB_MEMBER5, + FANCLUB_MEMBER8, + FANCLUB_MEMBER2 }; u8 i; diff --git a/src/field_weather.c b/src/field_weather.c index 4b9c6a863021..c067e8ebd734 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -110,8 +110,8 @@ void (*const gWeatherPalStateFuncs[])(void) = { [WEATHER_PAL_STATE_CHANGING_WEATHER] = UpdateWeatherGammaShift, [WEATHER_PAL_STATE_SCREEN_FADING_IN] = FadeInScreenWithWeather, - [WEATHER_PAL_STATE_SCREEN_FADING_OUT] = DoNothing, - [WEATHER_PAL_STATE_IDLE] = DoNothing, + [WEATHER_PAL_STATE_SCREEN_FADING_OUT] = DoNothing, + [WEATHER_PAL_STATE_IDLE] = DoNothing, }; // This table specifies which of the gamma shift tables should be diff --git a/src/fldeff_escalator.c b/src/fldeff_escalator.c index 733dca722eb6..769e7356231b 100644 --- a/src/fldeff_escalator.c +++ b/src/fldeff_escalator.c @@ -71,7 +71,7 @@ static void SetEscalatorMetatile(u8 taskId, const s16 *metatileIds, u16 metatile s16 i; s16 j; - // Check all the escalator sections and only progress the selected one to the next stage + // Check all the escalator sections and only progress the selected one to the next stage if (!gTasks[taskId].tGoingUp) { for (i = 0; i < 3; i++) @@ -178,7 +178,7 @@ void StopEscalator(void) bool8 IsEscalatorMoving(void) { - if (gTasks[sEscalatorAnim_TaskId].tDrawingEscalator == FALSE + if (gTasks[sEscalatorAnim_TaskId].tDrawingEscalator == FALSE && gTasks[sEscalatorAnim_TaskId].tTransitionStage == LAST_ESCALATOR_STAGE) return FALSE; else diff --git a/src/frontier_pass.c b/src/frontier_pass.c index e3e5ee1f24a1..53bd68eac241 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -178,9 +178,9 @@ static const u32 sUnusedData[] = INCBIN_U32("graphics/frontier static const u32 sBattleRecord_Tilemap[] = INCBIN_U32("graphics/frontier_pass/record_frame.bin.lz"); static const u32 sMapAndCard_Zooming_Tilemap[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card_affine.bin.lz"); -static const s16 sBgAffineCoords[][2] = +static const s16 sBgAffineCoords[][2] = { - [CURSOR_AREA_MAP - 1] = {216, 32}, + [CURSOR_AREA_MAP - 1] = {216, 32}, [CURSOR_AREA_CARD - 1] = {216, 128} }; @@ -1099,7 +1099,7 @@ static void Task_PassAreaZoom(u8 taskId) tScaleY += tScaleSpeedY; sPassGfx->scaleX = MathUtil_Inv16(tScaleX); sPassGfx->scaleY = MathUtil_Inv16(tScaleY); - + // Check if zoom hasn't reached target if (!tZoomOut) { @@ -1117,7 +1117,7 @@ static void Task_PassAreaZoom(u8 taskId) sPassGfx->zooming = FALSE; if (UpdatePaletteFade()) return; - + if (!tZoomOut) { // Zoomed in and faded out, switch to map or trainer card @@ -1174,7 +1174,7 @@ static void ShowAndPrintWindows(void) static void PrintAreaDescription(u8 cursorArea) { FillWindowPixelBuffer(WINDOW_DESCRIPTION, PIXEL_FILL(0)); - + if (cursorArea == CURSOR_AREA_RECORD && !sPassData->hasBattleRecord) AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[CURSOR_AREA_NOTHING]); else if (cursorArea != CURSOR_AREA_NOTHING) @@ -1256,7 +1256,7 @@ static void UpdateAreaHighlight(u8 cursorArea, u8 previousCursorArea) return; break; } - + // If moving on to highlightable area, highlight it switch (cursorArea) { diff --git a/src/frontier_util.c b/src/frontier_util.c index 4aec27944d09..352c14b01a51 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -2397,7 +2397,7 @@ void ClearRankingHallRecords(void) { for (k = 0; k < 3; k++) { - CopyTrainerId(gSaveBlock2Ptr->hallRecords1P[i][j][k].id, ZERO); + CopyTrainerId(gSaveBlock2Ptr->hallRecords1P[i][j][k].id, ZERO); gSaveBlock2Ptr->hallRecords1P[i][j][k].name[0] = EOS; gSaveBlock2Ptr->hallRecords1P[i][j][k].winStreak = 0; } diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 590c0d01dad8..e9d6b6070e37 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -298,21 +298,21 @@ static const union AnimCmd sAnim_WhiteConfettiC[] = static const union AnimCmd * const sAnims_Confetti[] = { - sAnim_PinkConfettiA, - sAnim_RedConfettiA, - sAnim_BlueConfettiA, + sAnim_PinkConfettiA, + sAnim_RedConfettiA, + sAnim_BlueConfettiA, sAnim_RedConfettiB, - sAnim_BlueConfettiB, - sAnim_YellowConfettiA, - sAnim_WhiteConfettiA, + sAnim_BlueConfettiB, + sAnim_YellowConfettiA, + sAnim_WhiteConfettiA, sAnim_GreenConfettiA, - sAnim_PinkConfettiB, - sAnim_BlueConfettiC, - sAnim_YellowConfettiB, + sAnim_PinkConfettiB, + sAnim_BlueConfettiC, + sAnim_YellowConfettiB, sAnim_WhiteConfettiB, - sAnim_GreenConfettiB, - sAnim_PinkConfettiC, - sAnim_RedConfettiC, + sAnim_GreenConfettiB, + sAnim_PinkConfettiC, + sAnim_RedConfettiC, sAnim_YellowConfettiC, sAnim_WhiteConfettiC }; @@ -334,17 +334,17 @@ static const u32 sHallOfFame_Gfx[] = INCBIN_U32("graphics/misc/japanese_hof.4bpp static const struct HallofFameMon sDummyFameMon = { - .tid = 0x3EA03EA, - .personality = 0, - .species = SPECIES_NONE, - .lvl = 0, + .tid = 0x3EA03EA, + .personality = 0, + .species = SPECIES_NONE, + .lvl = 0, .nick = {0} }; // Unused, order of party slots on Hall of Fame screen static const u8 sHallOfFame_SlotOrder[] = { - 2, 1, 3, - 6, 4, 5, + 2, 1, 3, + 6, 4, 5, 0, 0 }; @@ -662,7 +662,7 @@ static void Task_Hof_DoConfetti(u8 taskId) if (gTasks[taskId].tFrameCount != 0) { gTasks[taskId].tFrameCount--; - + // Create new confetti every 4th frame for the first 290 frames // For the last 110 frames wait for the existing confetti to fall offscreen if ((gTasks[taskId].tFrameCount & 3) == 0 && gTasks[taskId].tFrameCount > 110) @@ -1507,12 +1507,12 @@ static void Task_DoDomeConfetti(u8 taskId) if (tTimer != 0 && tTimer % 3 == 0) { // Create new confetti every 3 frames - id = ConfettiUtil_AddNew(&sOamData_Confetti, - TAG_CONFETTI, - TAG_CONFETTI, - Random() % DISPLAY_WIDTH, - -(Random() % 8), - Random() % ARRAY_COUNT(sAnims_Confetti), + id = ConfettiUtil_AddNew(&sOamData_Confetti, + TAG_CONFETTI, + TAG_CONFETTI, + Random() % DISPLAY_WIDTH, + -(Random() % 8), + Random() % ARRAY_COUNT(sAnims_Confetti), id); if (id != 0xFF) { diff --git a/src/image_processing_effects.c b/src/image_processing_effects.c index fa6867f2c52b..60b105163ed7 100644 --- a/src/image_processing_effects.c +++ b/src/image_processing_effects.c @@ -733,11 +733,11 @@ static u16 QuantizePixel_BlurHard(u16 *prevPixel, u16 *curPixel, u16 *nextPixel) red = GET_R(*curPixel); green = GET_G(*curPixel); blue = GET_B(*curPixel); - + prevAvg = (GET_R(*prevPixel) + GET_G(*prevPixel) + GET_B(*prevPixel)) / 3; curAvg = (GET_R(*curPixel) + GET_G(*curPixel) + GET_B(*curPixel)) / 3; nextAvg = (GET_R(*nextPixel) + GET_G(*nextPixel) + GET_B(*nextPixel)) / 3; - + if (prevAvg == curAvg && nextAvg == curAvg) return *curPixel; @@ -1096,7 +1096,7 @@ static u16 QuantizePixel_PrimaryColors(u16* color) u16 red = GET_R(*color); u16 green = GET_G(*color); u16 blue = GET_B(*color); - + if (red < 12 && green < 11 && blue < 11) return 1; diff --git a/src/intro.c b/src/intro.c index 9fe9169da858..d027c723056c 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1421,7 +1421,7 @@ static void Task_Scene2_BikeRide(u8 taskId) gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_FROZEN; DestroyTask(gTasks[taskId].tBgAnimTaskId); } - + if (gIntroFrameCounter > TIMER_END_SCENE_2) { // Fade out to next scene @@ -1671,7 +1671,7 @@ static void SpriteCB_Manectric(struct Sprite *sprite) sprite->x -= 2; if (gIntroFrameCounter != TIMER_MANECTRIC_RUN_CIRCULAR) break; - + // Initialize circular pattern running sprite->y -= 12; sprite->sSinIdx = 0x80; @@ -2205,7 +2205,7 @@ static void Task_Scene3_Kyogre(u8 taskId) } } -#undef tScreenX +#undef tScreenX #undef tScreenY #undef tZoom #undef tDelay @@ -2219,7 +2219,7 @@ static void Task_Scene3_Kyogre(u8 taskId) #define sUnk data[7] // Never read // taskId is used inconsistently for these two functions. -// The sprite callback for the bubbles will always read it, unless delay is 0 to +// The sprite callback for the bubbles will always read it, unless delay is 0 to // start (it never is), but the first function is often passed 0 instead of a // taskId, and the second function doesn't take/assign a taskId at all. // The only time an actual taskId is given is when it actually needs the @@ -2233,9 +2233,9 @@ static void CreateKyogreBubbleSprites_Body(u8 taskId) for (i = 0; i < NUM_BUBBLES_IN_SET; i++) { - spriteId = CreateSprite(&sSpriteTemplate_Bubbles, - sKyogreBubbleData[i][0], - sKyogreBubbleData[i][1], + spriteId = CreateSprite(&sSpriteTemplate_Bubbles, + sKyogreBubbleData[i][0], + sKyogreBubbleData[i][1], i); gSprites[spriteId].invisible = TRUE; gSprites[spriteId].sTaskId = taskId; @@ -2252,14 +2252,14 @@ static void CreateKyogreBubbleSprites_Fins(void) for (i = 0; i < NUM_BUBBLES_IN_SET; i++) { - spriteId = CreateSprite(&sSpriteTemplate_Bubbles, - sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][0], - sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][1], + spriteId = CreateSprite(&sSpriteTemplate_Bubbles, + sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][0], + sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][1], i); gSprites[spriteId].invisible = TRUE; #ifdef BUGFIX gSprites[spriteId].sDelay = sKyogreBubbleData[i + NUM_BUBBLES_IN_SET][2]; -#else +#else gSprites[spriteId].sDelay = sKyogreBubbleData[i][2]; // Using the wrong set of delays here #endif gSprites[spriteId].sUnk = 64; diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index bceddd9b7043..ebc3d38eb155 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -13,7 +13,7 @@ and the credit sequence, where the player bikes along a grassy path. These graphics are placed in graphics/intro/scene_2 to keep - all of the intro graphics files together, though it includes + all of the intro graphics files together, though it includes the related graphics that are used only by the credits. */ @@ -1039,7 +1039,7 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite) { s32 x; s16 state = gIntroCredits_MovingSceneryState; - + if (state != INTROCRED_SCENERY_FROZEN) { switch (state) diff --git a/src/item_menu.c b/src/item_menu.c index 9cc02e8cc454..8ada7ff62dfa 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -76,20 +76,20 @@ enum { enum { ACTION_USE, - ACTION_TOSS, - ACTION_REGISTER, - ACTION_GIVE, - ACTION_CANCEL, + ACTION_TOSS, + ACTION_REGISTER, + ACTION_GIVE, + ACTION_CANCEL, ACTION_BATTLE_USE, - ACTION_CHECK, - ACTION_WALK, - ACTION_DESELECT, - ACTION_CHECK_TAG, - ACTION_CONFIRM, - ACTION_SHOW, - ACTION_GIVE_FAVOR_LADY, - ACTION_CONFIRM_QUIZ_LADY, - ACTION_DUMMY, + ACTION_CHECK, + ACTION_WALK, + ACTION_DESELECT, + ACTION_CHECK_TAG, + ACTION_CONFIRM, + ACTION_SHOW, + ACTION_GIVE_FAVOR_LADY, + ACTION_CONFIRM_QUIZ_LADY, + ACTION_DUMMY, }; enum { @@ -669,7 +669,7 @@ void VBlankCB_BagMenuRun(void) static void CB2_Bag(void) { - while(MenuHelpers_CallLinkSomething() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE) + while(MenuHelpers_CallLinkSomething() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE) {}; } @@ -1084,7 +1084,7 @@ static void Task_CloseBagMenu(u8 taskId) if (!gPaletteFade.active) { DestroyListMenuTask(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); - + // If ready for a new screen (e.g. party menu for giving an item) go to that screen // Otherwise exit the bag and use callback set up when the bag was first opened if (gBagMenu->newScreenCallback != NULL) @@ -1417,11 +1417,11 @@ static void DrawPocketIndicatorSquare(u8 x, bool8 isCurrentPocket) static bool8 CanSwapItems(void) { // Swaps can only be done from the field or in battle (as opposed to while selling items, for example) - if (gBagPosition.location == ITEMMENULOCATION_FIELD + if (gBagPosition.location == ITEMMENULOCATION_FIELD || gBagPosition.location == ITEMMENULOCATION_BATTLE) { // TMHMs and berries are numbered, and so may not be swapped - if (gBagPosition.pocket != TMHM_POCKET + if (gBagPosition.pocket != TMHM_POCKET && gBagPosition.pocket != BERRIES_POCKET) return TRUE; } @@ -2564,7 +2564,7 @@ static void PrintTMHMMoveData(u16 itemId) { moveId = ItemIdToBattleMoveId(itemId); BlitMenuInfoIcon(WIN_TMHM_INFO, gBattleMoves[moveId].type + 1, 0, 0); - + // Print TMHM power if (gBattleMoves[moveId].power <= 1) { diff --git a/src/item_use.c b/src/item_use.c index 4b4c6e1b9ddb..c350d9d0b81d 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -509,7 +509,7 @@ static void SetDistanceOfClosestHiddenItem(u8 taskId, s16 itemDistanceX, s16 ite } else { - if (oldItemAbsX + oldItemAbsY == newItemAbsX + newItemAbsY + if (oldItemAbsX + oldItemAbsY == newItemAbsX + newItemAbsY && (oldItemAbsY > newItemAbsY || (oldItemAbsY == newItemAbsY && tItemDistanceY < itemDistanceY))) { // If items are equal distance, use whichever is closer on the Y axis or further south diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 309fc4eadb05..de00564641cf 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -161,7 +161,7 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p gRfuSlotStatusNI[i] = &gRfuSlotStatusNI[i - 1][1]; gRfuSlotStatusUNI[i] = &gRfuSlotStatusUNI[i - 1][1]; } - // remaining space in API buffer is used for `struct RfuIntrStruct`. + // remaining space in API buffer is used for `struct RfuIntrStruct`. gRfuFixed->STWIBuffer = (struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1]; STWI_init_all((struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1], sioIntrTable_p, copyInterruptToRam); rfu_STC_clearAPIVariables(); diff --git a/src/librfu_stwi.c b/src/librfu_stwi.c index 0287b358a7ec..8d8d10c4068d 100644 --- a/src/librfu_stwi.c +++ b/src/librfu_stwi.c @@ -40,7 +40,7 @@ void STWI_init_all(struct RfuIntrStruct *interruptStruct, IntrFunc *interrupt, b gSTWIStatus->error = 0; gSTWIStatus->recoveryCount = 0; gSTWIStatus->sending = 0; - REG_RCNT = 0x100; // TODO: mystery bit? + REG_RCNT = 0x100; // TODO: mystery bit? REG_SIOCNT = SIO_INTR_ENABLE | SIO_32BIT_MODE | SIO_115200_BPS; STWI_init_Callback_M(); STWI_init_Callback_S(); @@ -118,7 +118,7 @@ void STWI_init_Callback_S(void) STWI_set_Callback_S(NULL); } -// The callback can take 2 or 3 arguments. +// The callback can take 2 or 3 arguments. void STWI_set_Callback_M(void *callbackM) { gSTWIStatus->callbackM = callbackM; @@ -594,7 +594,7 @@ static s32 STWI_start_Command(void) { u16 imeTemp; - // equivalent to gSTWIStatus->txPacket->rfuPacket32.command, + // equivalent to gSTWIStatus->txPacket->rfuPacket32.command, // but the cast here is required to avoid register issue *(u32 *)gSTWIStatus->txPacket->rfuPacket8.data = 0x99660000 | (gSTWIStatus->reqLength << 8) | gSTWIStatus->reqActiveCommand; REG_SIODATA32 = gSTWIStatus->txPacket->rfuPacket32.command; diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 6fa8ba4eb4a6..f6a4b60987c1 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -517,7 +517,7 @@ void BufferQuizPrizeItem(void) gSpecialVar_0x8005 = sQuizLadyPtr->prize; } -void SetQuizLadyState_Complete(void) +void SetQuizLadyState_Complete(void) { sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; sQuizLadyPtr->state = LILYCOVE_LADY_STATE_COMPLETED; @@ -614,7 +614,7 @@ void QuizLadyClearQuestionForRecordMix(const LilycoveLady *lilycoveLady) u8 i; sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; - if (lilycoveLady->quiz.prevQuestionId < ARRAY_COUNT(sQuizLadyQuizQuestions) + if (lilycoveLady->quiz.prevQuestionId < ARRAY_COUNT(sQuizLadyQuizQuestions) && sQuizLadyPtr->id == LILYCOVE_LADY_QUIZ) { for (i = 0; i < 4; i ++) @@ -656,7 +656,7 @@ static void ResetContestLadyForRecordMix(void) sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; sContestLadyPtr->id = LILYCOVE_LADY_CONTEST; sContestLadyPtr->givenPokeblock = FALSE; - if (sContestLadyPtr->numGoodPokeblocksGiven == LILYCOVE_LADY_GIFT_THRESHOLD + if (sContestLadyPtr->numGoodPokeblocksGiven == LILYCOVE_LADY_GIFT_THRESHOLD || sContestLadyPtr->numOtherPokeblocksGiven == LILYCOVE_LADY_GIFT_THRESHOLD) { ResetContestLadyContestData(); @@ -790,7 +790,7 @@ bool8 ShouldContestLadyShowGoOnAir(void) bool8 putOnAir = FALSE; sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; - if (sContestLadyPtr->numGoodPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD + if (sContestLadyPtr->numGoodPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD || sContestLadyPtr->numOtherPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD) { putOnAir = TRUE; diff --git a/src/link.c b/src/link.c index 8a04b53e5890..97b3dfe910f6 100644 --- a/src/link.c +++ b/src/link.c @@ -764,7 +764,7 @@ static int AreAnyLinkPlayersUsingVersions(u32 version1, u32 version2) nPlayers = GetLinkPlayerCount(); for (i = 0; i < nPlayers; i++) { - if ((gLinkPlayers[i].version & 0xFF) == version1 + if ((gLinkPlayers[i].version & 0xFF) == version1 || (gLinkPlayers[i].version & 0xFF) == version2) return 1; } @@ -873,7 +873,7 @@ u8 GetLinkPlayerDataExchangeStatusTimed(int minPlayers, int maxPlayers) sPlayerDataExchangeStatus = EXCHANGE_DIFF_SELECTIONS; linkType1 = gLinkPlayers[GetMultiplayerId()].linkType; linkType2 = gLinkPlayers[GetMultiplayerId() ^ 1].linkType; - if ((linkType1 == LINKTYPE_BATTLE_TOWER_50 && linkType2 == LINKTYPE_BATTLE_TOWER_OPEN) + if ((linkType1 == LINKTYPE_BATTLE_TOWER_50 && linkType2 == LINKTYPE_BATTLE_TOWER_OPEN) || (linkType1 == LINKTYPE_BATTLE_TOWER_OPEN && linkType2 == LINKTYPE_BATTLE_TOWER_50)) { // 3 below indicates partner made different level mode selection @@ -1350,7 +1350,7 @@ void CheckLinkPlayersMatchSaved(void) for (i = 0; i < gSavedLinkPlayerCount; i++) { - if (sSavedLinkPlayers[i].trainerId != gLinkPlayers[i].trainerId + if (sSavedLinkPlayers[i].trainerId != gLinkPlayers[i].trainerId || StringCompare(sSavedLinkPlayers[i].name, gLinkPlayers[i].name) != 0) { gLinkErrorOccurred = TRUE; @@ -1777,7 +1777,7 @@ void LinkPlayerFromBlock(u32 who) *player = block->linkPlayer; ConvertLinkPlayerName(player); - if (strcmp(block->magic1, sASCIIGameFreakInc) != 0 + if (strcmp(block->magic1, sASCIIGameFreakInc) != 0 || strcmp(block->magic2, sASCIIGameFreakInc) != 0) SetMainCallback2(CB2_LinkError); } diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 6366b97047f3..2d85bb81a07a 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -82,7 +82,7 @@ static void Debug_PrintEmpty(void); static void Task_Idle(u8); static const INIT_PARAM sRfuReqConfigTemplate = { - .maxMFrame = 4, + .maxMFrame = 4, .MC_TimerCount = 32, .availSlot_flag = 0, .mboot_flag = 0, @@ -91,7 +91,7 @@ static const INIT_PARAM sRfuReqConfigTemplate = { .userName = gHostRFUtgtUnameBuffer, .fastSearchParent_flag = TRUE, .linkRecovery_enable = FALSE, - .linkRecovery_period = 600, + .linkRecovery_period = 600, .NI_failCounter_limit = 0x12c }; @@ -157,8 +157,8 @@ static const struct BlockRequest sBlockRequests[] = { static const u16 sAcceptedSerialNos[] = { 0x0002, - RFU_SERIAL_7F7D, - 0x0000, + RFU_SERIAL_7F7D, + 0x0000, 0xFFFF }; @@ -1554,10 +1554,10 @@ static bool8 CheckForLeavingGroupMembers(void) bool8 memberLeft = FALSE; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerSendStatuses[i] < RFU_STATUS_JOIN_GROUP_OK + if (Rfu.partnerSendStatuses[i] < RFU_STATUS_JOIN_GROUP_OK || Rfu.partnerSendStatuses[i] > RFU_STATUS_JOIN_GROUP_NO) { - if (gRfuSlotStatusNI[i]->recv.state == SLOT_STATE_RECV_SUCCESS + if (gRfuSlotStatusNI[i]->recv.state == SLOT_STATE_RECV_SUCCESS || gRfuSlotStatusNI[i]->recv.state == SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN) { if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_LEAVE_GROUP_NOTICE) @@ -1599,7 +1599,7 @@ bool32 sub_80105EC(void) } for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_10 + if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_10 || Rfu.partnerRecvStatuses[i] == RFU_STATUS_11) return TRUE; } @@ -1648,7 +1648,7 @@ static void UpdateChildStatuses(void) CheckForLeavingGroupMembers(); for (i = 0; i < RFU_CHILD_MAX; i++) { - if (gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_SUCCESS + if (gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_SUCCESS || gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_FAILED) { if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_10) @@ -1663,7 +1663,7 @@ static s32 sub_80107A0(void) s32 status = RFU_STATUS_OK; if (Rfu.unk_c85 == 8) { - if (gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_SUCCESS + if (gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_SUCCESS || gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_FAILED) rfu_clearSlot(TYPE_NI_SEND, Rfu.childSlot); } @@ -2671,7 +2671,7 @@ static void Task_RfuReconnectWithParent(u8 taskId) if (IsParentSuccessfullyReconnected()) DestroyTask(taskId); } - else if (GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_CARD2 + else if (GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_CARD2 || GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_NEWS2) { data[15]++; diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 251b4792ddf2..50828f6560ad 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -36,82 +36,82 @@ static const u32 sWirelessLinkIconPic[] = INCBIN_U32("graphics/interface/wireles // Most of the below two tables won't make sense with ASCII encoding. static const u8 sWireless_ASCIItoRSETable[256] = { - EOS, + EOS, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, - [' '] = CHAR_SPACE, - ['!'] = CHAR_EXCL_MARK, + [' '] = CHAR_SPACE, + ['!'] = CHAR_EXCL_MARK, 0xb5, 0xb6, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb2, 0xf1, 0x00, - ['-'] = CHAR_HYPHEN, - ['.'] = CHAR_PERIOD, + ['-'] = CHAR_HYPHEN, + ['.'] = CHAR_PERIOD, ['/'] = CHAR_SLASH, ['0'] = CHAR_0, - ['1'] = CHAR_1, - ['2'] = CHAR_2, - ['3'] = CHAR_3, - ['4'] = CHAR_4, - ['5'] = CHAR_5, - ['6'] = CHAR_6, + ['1'] = CHAR_1, + ['2'] = CHAR_2, + ['3'] = CHAR_3, + ['4'] = CHAR_4, + ['5'] = CHAR_5, + ['6'] = CHAR_6, ['7'] = CHAR_7, - ['8'] = CHAR_8, - ['9'] = CHAR_9, - 0x00, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0x00, - ['A'] = CHAR_A, - ['B'] = CHAR_B, - ['C'] = CHAR_C, - ['D'] = CHAR_D, - ['E'] = CHAR_E, - ['F'] = CHAR_F, + ['8'] = CHAR_8, + ['9'] = CHAR_9, + 0x00, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0x00, + ['A'] = CHAR_A, + ['B'] = CHAR_B, + ['C'] = CHAR_C, + ['D'] = CHAR_D, + ['E'] = CHAR_E, + ['F'] = CHAR_F, ['G'] = CHAR_G, - ['H'] = CHAR_H, - ['I'] = CHAR_I, - ['J'] = CHAR_J, - ['K'] = CHAR_K, - ['L'] = CHAR_L, - ['M'] = CHAR_M, - ['N'] = CHAR_N, + ['H'] = CHAR_H, + ['I'] = CHAR_I, + ['J'] = CHAR_J, + ['K'] = CHAR_K, + ['L'] = CHAR_L, + ['M'] = CHAR_M, + ['N'] = CHAR_N, ['O'] = CHAR_O, - ['P'] = CHAR_P, - ['Q'] = CHAR_Q, - ['R'] = CHAR_R, - ['S'] = CHAR_S, - ['T'] = CHAR_T, - ['U'] = CHAR_U, + ['P'] = CHAR_P, + ['Q'] = CHAR_Q, + ['R'] = CHAR_R, + ['S'] = CHAR_S, + ['T'] = CHAR_T, + ['U'] = CHAR_U, ['V'] = CHAR_V, ['W'] = CHAR_W, - ['X'] = CHAR_X, - ['Y'] = CHAR_Y, - ['Z'] = CHAR_Z, - 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, - ['a'] = CHAR_a, - ['b'] = CHAR_b, - ['c'] = CHAR_c, - ['d'] = CHAR_d, - ['e'] = CHAR_e, - ['f'] = CHAR_f, + ['X'] = CHAR_X, + ['Y'] = CHAR_Y, + ['Z'] = CHAR_Z, + 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, + ['a'] = CHAR_a, + ['b'] = CHAR_b, + ['c'] = CHAR_c, + ['d'] = CHAR_d, + ['e'] = CHAR_e, + ['f'] = CHAR_f, ['g'] = CHAR_g, - ['h'] = CHAR_h, - ['i'] = CHAR_i, - ['j'] = CHAR_j, - ['k'] = CHAR_k, - ['l'] = CHAR_l, - ['m'] = CHAR_m, - ['n'] = CHAR_n, + ['h'] = CHAR_h, + ['i'] = CHAR_i, + ['j'] = CHAR_j, + ['k'] = CHAR_k, + ['l'] = CHAR_l, + ['m'] = CHAR_m, + ['n'] = CHAR_n, ['o'] = CHAR_o, - ['p'] = CHAR_p, - ['q'] = CHAR_q, - ['r'] = CHAR_r, - ['s'] = CHAR_s, - ['t'] = CHAR_t, - ['u'] = CHAR_u, - ['v'] = CHAR_v, + ['p'] = CHAR_p, + ['q'] = CHAR_q, + ['r'] = CHAR_r, + ['s'] = CHAR_s, + ['t'] = CHAR_t, + ['u'] = CHAR_u, + ['v'] = CHAR_v, ['w'] = CHAR_w, - ['x'] = CHAR_x, - ['y'] = CHAR_y, - ['z'] = CHAR_z, + ['x'] = CHAR_x, + ['y'] = CHAR_y, + ['z'] = CHAR_z, 0x2d, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x50, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, @@ -132,102 +132,102 @@ static const u8 sWireless_ASCIItoRSETable[256] = { }; static const u8 sWireless_RSEtoASCIITable[256] = { - [CHAR_SPACE] = ' ', - 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, - 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, - 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, - 0x9e, 0x9f, 0xa0, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, - 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, - 0xed, 0xee, 0xef, 0xf0, 0x7b, 0xf1, 0x7c, 0x7d, - 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x07, 0x08, - 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, - 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, - 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x84, - 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, - 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, - 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, - 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, - 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, - 0xd9, 0xda, 0xdb, 0xdc, 0xa6, 0xdd, 0xa7, 0xa8, - 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xf2, 0xf3, - 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, - 0xfc, 0xfd, 0xfe, 0xff, 0x01, 0x02, 0x03, 0x04, - 0x05, 0x06, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0xaf, - [CHAR_0] = '0', - [CHAR_1] = '1', - [CHAR_2] = '2', - [CHAR_3] = '3', - [CHAR_4] = '4', - [CHAR_5] = '5', + [CHAR_SPACE] = ' ', + 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, + 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, + 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, + 0x9e, 0x9f, 0xa0, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, + 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, + 0xed, 0xee, 0xef, 0xf0, 0x7b, 0xf1, 0x7c, 0x7d, + 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x07, 0x08, + 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, + 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x84, + 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, + 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, + 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, + 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, + 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, + 0xd9, 0xda, 0xdb, 0xdc, 0xa6, 0xdd, 0xa7, 0xa8, + 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xf2, 0xf3, + 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, + 0xfc, 0xfd, 0xfe, 0xff, 0x01, 0x02, 0x03, 0x04, + 0x05, 0x06, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0xaf, + [CHAR_0] = '0', + [CHAR_1] = '1', + [CHAR_2] = '2', + [CHAR_3] = '3', + [CHAR_4] = '4', + [CHAR_5] = '5', [CHAR_6] = '6', - [CHAR_7] = '7', - [CHAR_8] = '8', - [CHAR_9] = '9', - [CHAR_EXCL_MARK] = '!', - 0xdf, 0xa1, 0xb0, 0xa5, 0xde, 0x24, 0x2a, - 0xa2, 0xa3, 0x22, 0x23, 0x20, 0xa4, 0x20, - [CHAR_SLASH] = '/', - [CHAR_A] = 'A', - [CHAR_B] = 'B', - [CHAR_C] = 'C', - [CHAR_D] = 'D', + [CHAR_7] = '7', + [CHAR_8] = '8', + [CHAR_9] = '9', + [CHAR_EXCL_MARK] = '!', + 0xdf, 0xa1, 0xb0, 0xa5, 0xde, 0x24, 0x2a, + 0xa2, 0xa3, 0x22, 0x23, 0x20, 0xa4, 0x20, + [CHAR_SLASH] = '/', + [CHAR_A] = 'A', + [CHAR_B] = 'B', + [CHAR_C] = 'C', + [CHAR_D] = 'D', [CHAR_E] = 'E', - [CHAR_F] = 'F', - [CHAR_G] = 'G', - [CHAR_H] = 'H', - [CHAR_I] = 'I', - [CHAR_J] = 'J', - [CHAR_K] = 'K', - [CHAR_L] = 'L', + [CHAR_F] = 'F', + [CHAR_G] = 'G', + [CHAR_H] = 'H', + [CHAR_I] = 'I', + [CHAR_J] = 'J', + [CHAR_K] = 'K', + [CHAR_L] = 'L', [CHAR_M] = 'M', - [CHAR_N] = 'N', - [CHAR_O] = 'O', - [CHAR_P] = 'P', - [CHAR_Q] = 'Q', - [CHAR_R] = 'R', - [CHAR_S] = 'S', - [CHAR_T] = 'T', + [CHAR_N] = 'N', + [CHAR_O] = 'O', + [CHAR_P] = 'P', + [CHAR_Q] = 'Q', + [CHAR_R] = 'R', + [CHAR_S] = 'S', + [CHAR_T] = 'T', [CHAR_U] = 'U', - [CHAR_V] = 'V', - [CHAR_W] = 'W', - [CHAR_X] = 'X', - [CHAR_Y] = 'Y', - [CHAR_Z] = 'Z', - [CHAR_a] = 'a', - [CHAR_b] = 'b', + [CHAR_V] = 'V', + [CHAR_W] = 'W', + [CHAR_X] = 'X', + [CHAR_Y] = 'Y', + [CHAR_Z] = 'Z', + [CHAR_a] = 'a', + [CHAR_b] = 'b', [CHAR_c] = 'c', - [CHAR_d] = 'd', - [CHAR_e] = 'e', - [CHAR_f] = 'f', - [CHAR_g] = 'g', - [CHAR_h] = 'h', - [CHAR_i] = 'i', - [CHAR_j] = 'j', + [CHAR_d] = 'd', + [CHAR_e] = 'e', + [CHAR_f] = 'f', + [CHAR_g] = 'g', + [CHAR_h] = 'h', + [CHAR_i] = 'i', + [CHAR_j] = 'j', [CHAR_k] = 'k', - [CHAR_l] = 'l', - [CHAR_m] = 'm', - [CHAR_n] = 'n', - [CHAR_o] = 'o', - [CHAR_p] = 'p', - [CHAR_q] = 'q', - [CHAR_r] = 'r', + [CHAR_l] = 'l', + [CHAR_m] = 'm', + [CHAR_n] = 'n', + [CHAR_o] = 'o', + [CHAR_p] = 'p', + [CHAR_q] = 'q', + [CHAR_r] = 'r', [CHAR_s] = 's', - [CHAR_t] = 't', - [CHAR_u] = 'u', - [CHAR_v] = 'v', - [CHAR_w] = 'w', - [CHAR_x] = 'x', - [CHAR_y] = 'y', - [CHAR_z] = 'z', - 0x20, 0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, + [CHAR_t] = 't', + [CHAR_u] = 'u', + [CHAR_v] = 'v', + [CHAR_w] = 'w', + [CHAR_x] = 'x', + [CHAR_y] = 'y', + [CHAR_z] = 'z', + 0x20, 0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, [CHAR_DYNAMIC] = ' ', - [CHAR_KEYPAD_ICON] = ' ', - [CHAR_EXTRA_SYMBOL] = ' ', - [CHAR_PROMPT_SCROLL] = ' ', - [CHAR_PROMPT_CLEAR] = ' ', - [EXT_CTRL_CODE_BEGIN] = ' ', - [PLACEHOLDER_BEGIN] = ' ', - [CHAR_NEWLINE] = ' ', + [CHAR_KEYPAD_ICON] = ' ', + [CHAR_EXTRA_SYMBOL] = ' ', + [CHAR_PROMPT_SCROLL] = ' ', + [CHAR_PROMPT_CLEAR] = ' ', + [EXT_CTRL_CODE_BEGIN] = ' ', + [PLACEHOLDER_BEGIN] = ' ', + [CHAR_NEWLINE] = ' ', [EOS] = 0 }; diff --git a/src/mail.c b/src/mail.c index 0ee294787cf8..50ff553aa348 100644 --- a/src/mail.c +++ b/src/mail.c @@ -134,98 +134,98 @@ static const u16 sBgColors[GENDER_COUNT][2] = { static const struct MailGraphics sMailGraphics[] = { [ITEM_TO_MAIL(ITEM_ORANGE_MAIL)] = { - .palette = gMailPalette_Orange, - .tiles = gMailTiles_Orange, - .tileMap = gMailTilemap_Orange, - .unused = 0x2C0, + .palette = gMailPalette_Orange, + .tiles = gMailTiles_Orange, + .tileMap = gMailTilemap_Orange, + .unused = 0x2C0, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_HARBOR_MAIL)] = { - .palette = gMailPalette_Harbor, - .tiles = gMailTiles_Harbor, - .tileMap = gMailTilemap_Harbor, - .unused = 0x2E0, + .palette = gMailPalette_Harbor, + .tiles = gMailTiles_Harbor, + .tileMap = gMailTilemap_Harbor, + .unused = 0x2E0, .textColor = RGB_WHITE, .textShadow = RGB(17, 17, 17), }, [ITEM_TO_MAIL(ITEM_GLITTER_MAIL)] = { - .palette = gMailPalette_Glitter, - .tiles = gMailTiles_Glitter, - .tileMap = gMailTilemap_Glitter, - .unused = 0x400, + .palette = gMailPalette_Glitter, + .tiles = gMailTiles_Glitter, + .tileMap = gMailTilemap_Glitter, + .unused = 0x400, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_MECH_MAIL)] = { - .palette = gMailPalette_Mech, - .tiles = gMailTiles_Mech, - .tileMap = gMailTilemap_Mech, - .unused = 0x1E0, + .palette = gMailPalette_Mech, + .tiles = gMailTiles_Mech, + .tileMap = gMailTilemap_Mech, + .unused = 0x1E0, .textColor = RGB_WHITE, .textShadow = RGB(17, 17, 17), - }, + }, [ITEM_TO_MAIL(ITEM_WOOD_MAIL)] = { - .palette = gMailPalette_Wood, - .tiles = gMailTiles_Wood, - .tileMap = gMailTilemap_Wood, - .unused = 0x2E0, + .palette = gMailPalette_Wood, + .tiles = gMailTiles_Wood, + .tileMap = gMailTilemap_Wood, + .unused = 0x2E0, .textColor = RGB_WHITE, .textShadow = RGB(17, 17, 17), - }, + }, [ITEM_TO_MAIL(ITEM_WAVE_MAIL)] = { - .palette = gMailPalette_Wave, - .tiles = gMailTiles_Wave, - .tileMap = gMailTilemap_Wave, - .unused = 0x300, + .palette = gMailPalette_Wave, + .tiles = gMailTiles_Wave, + .tileMap = gMailTilemap_Wave, + .unused = 0x300, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_BEAD_MAIL)] = { - .palette = gMailPalette_Bead, - .tiles = gMailTiles_Bead, - .tileMap = gMailTilemap_Bead, - .unused = 0x140, + .palette = gMailPalette_Bead, + .tiles = gMailTiles_Bead, + .tileMap = gMailTilemap_Bead, + .unused = 0x140, .textColor = RGB_WHITE, .textShadow = RGB(17, 17, 17), - }, + }, [ITEM_TO_MAIL(ITEM_SHADOW_MAIL)] = { - .palette = gMailPalette_Shadow, - .tiles = gMailTiles_Shadow, - .tileMap = gMailTilemap_Shadow, - .unused = 0x300, + .palette = gMailPalette_Shadow, + .tiles = gMailTiles_Shadow, + .tileMap = gMailTilemap_Shadow, + .unused = 0x300, .textColor = RGB_WHITE, .textShadow = RGB(17, 17, 17), - }, + }, [ITEM_TO_MAIL(ITEM_TROPIC_MAIL)] = { - .palette = gMailPalette_Tropic, - .tiles = gMailTiles_Tropic, - .tileMap = gMailTilemap_Tropic, - .unused = 0x220, + .palette = gMailPalette_Tropic, + .tiles = gMailTiles_Tropic, + .tileMap = gMailTilemap_Tropic, + .unused = 0x220, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_DREAM_MAIL)] = { - .palette = gMailPalette_Dream, - .tiles = gMailTiles_Dream, - .tileMap = gMailTilemap_Dream, - .unused = 0x340, + .palette = gMailPalette_Dream, + .tiles = gMailTiles_Dream, + .tileMap = gMailTilemap_Dream, + .unused = 0x340, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_FAB_MAIL)] = { - .palette = gMailPalette_Fab, - .tiles = gMailTiles_Fab, - .tileMap = gMailTilemap_Fab, - .unused = 0x2a0, + .palette = gMailPalette_Fab, + .tiles = gMailTiles_Fab, + .tileMap = gMailTilemap_Fab, + .unused = 0x2a0, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), - }, + }, [ITEM_TO_MAIL(ITEM_RETRO_MAIL)] = { - .palette = gMailPalette_Retro, - .tiles = gMailTiles_Retro, - .tileMap = gMailTilemap_Retro, - .unused = 0x520, + .palette = gMailPalette_Retro, + .tiles = gMailTiles_Retro, + .tileMap = gMailTilemap_Retro, + .unused = 0x520, .textColor = RGB(10, 10, 10), .textShadow = RGB(25, 25, 25), } @@ -238,7 +238,7 @@ static const struct MailLineLayout sLineLayouts_Wide[] = { }; static const struct MailLayout sMailLayouts_Wide[] = { - [ITEM_TO_MAIL(ITEM_ORANGE_MAIL)] = { + [ITEM_TO_MAIL(ITEM_ORANGE_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -246,7 +246,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_HARBOR_MAIL)] = { + [ITEM_TO_MAIL(ITEM_HARBOR_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -254,7 +254,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_GLITTER_MAIL)] = { + [ITEM_TO_MAIL(ITEM_GLITTER_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -262,7 +262,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_MECH_MAIL)] = { + [ITEM_TO_MAIL(ITEM_MECH_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -270,7 +270,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_WOOD_MAIL)] = { + [ITEM_TO_MAIL(ITEM_WOOD_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -278,7 +278,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_WAVE_MAIL)] = { + [ITEM_TO_MAIL(ITEM_WAVE_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -286,7 +286,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_BEAD_MAIL)] = { + [ITEM_TO_MAIL(ITEM_BEAD_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -294,7 +294,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_SHADOW_MAIL)] = { + [ITEM_TO_MAIL(ITEM_SHADOW_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -302,7 +302,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_TROPIC_MAIL)] = { + [ITEM_TO_MAIL(ITEM_TROPIC_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -310,7 +310,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_DREAM_MAIL)] = { + [ITEM_TO_MAIL(ITEM_DREAM_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -318,7 +318,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_FAB_MAIL)] = { + [ITEM_TO_MAIL(ITEM_FAB_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 8, .signatureWidth = 0, @@ -326,7 +326,7 @@ static const struct MailLayout sMailLayouts_Wide[] = { .wordsXPos = 4, .lines = sLineLayouts_Wide, }, - [ITEM_TO_MAIL(ITEM_RETRO_MAIL)] = { + [ITEM_TO_MAIL(ITEM_RETRO_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Wide), .signatureYPos = 0, .signatureWidth = 0, @@ -345,7 +345,7 @@ static const struct MailLineLayout sLineLayouts_Tall[] = { }; static const struct MailLayout sMailLayouts_Tall[] = { - [ITEM_TO_MAIL(ITEM_ORANGE_MAIL)] = { + [ITEM_TO_MAIL(ITEM_ORANGE_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 7, .signatureWidth = 88, @@ -353,7 +353,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_HARBOR_MAIL)] = { + [ITEM_TO_MAIL(ITEM_HARBOR_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 10, .signatureWidth = 96, @@ -361,7 +361,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_GLITTER_MAIL)] = { + [ITEM_TO_MAIL(ITEM_GLITTER_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 12, .signatureWidth = 104, @@ -369,7 +369,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_MECH_MAIL)] = { + [ITEM_TO_MAIL(ITEM_MECH_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 5, .signatureWidth = 96, @@ -377,7 +377,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_WOOD_MAIL)] = { + [ITEM_TO_MAIL(ITEM_WOOD_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 10, .signatureWidth = 96, @@ -385,7 +385,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_WAVE_MAIL)] = { + [ITEM_TO_MAIL(ITEM_WAVE_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 9, .signatureWidth = 112, @@ -393,7 +393,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_BEAD_MAIL)] = { + [ITEM_TO_MAIL(ITEM_BEAD_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 12, .signatureWidth = 104, @@ -401,7 +401,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_SHADOW_MAIL)] = { + [ITEM_TO_MAIL(ITEM_SHADOW_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 13, .signatureWidth = 104, @@ -409,7 +409,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_TROPIC_MAIL)] = { + [ITEM_TO_MAIL(ITEM_TROPIC_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 9, .signatureWidth = 96, @@ -417,7 +417,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_DREAM_MAIL)] = { + [ITEM_TO_MAIL(ITEM_DREAM_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 9, .signatureWidth = 96, @@ -425,7 +425,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_FAB_MAIL)] = { + [ITEM_TO_MAIL(ITEM_FAB_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 17, .signatureWidth = 104, @@ -433,7 +433,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { .wordsXPos = 30, .lines = sLineLayouts_Tall, }, - [ITEM_TO_MAIL(ITEM_RETRO_MAIL)] = { + [ITEM_TO_MAIL(ITEM_RETRO_MAIL)] = { .numLines = ARRAY_COUNT(sLineLayouts_Tall), .signatureYPos = 9, .signatureWidth = 96, diff --git a/src/main_menu.c b/src/main_menu.c index ec5a3785fda0..3248c189fe3d 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -40,17 +40,17 @@ /* * Main menu state machine * ----------------------- - * + * * Entry point: CB2_InitMainMenu - * + * * Note: States advance sequentially unless otherwise stated. - * + * * CB2_InitMainMenu / CB2_ReinitMainMenu * - Both of these states call InitMainMenu, which does all the work. * - In the Reinit case, the init code will check if the user came from * the options screen. If they did, then the options menu item is * pre-selected. - * + * * Task_MainMenuCheckSaveFile * - Determines how many menu options to show based on whether * the save file is Ok, empty, corrupted, etc. @@ -59,33 +59,33 @@ * - If there were no errors, advance to Task_MainMenuCheckBattery. * - Note that the check to enable Mystery Events would normally happen * here, but this version of Emerald has them disabled. - * + * * Task_WaitForSaveFileErrorWindow * - Wait for the text to finish printing and then for the A button * to be pressed. - * + * * Task_MainMenuCheckBattery * - If the battery is OK, advance to Task_DisplayMainMenu. * - If the battery is dry, advance to Task_WaitForBatteryDryErrorWindow. - * + * * Task_WaitForBatteryDryErrorWindow * - Wait for the text to finish printing and then for the A button * to be pressed. - * + * * Task_DisplayMainWindow * - Display the buttons to the user. If the menu is in HAS_MYSTERY_EVENTS * mode, there are too many buttons for one screen and a scrollbar is added, * and the scrollbar task is spawned (Task_ScrollIndicatorArrowPairOnMainMenu). - * + * * Task_HighlightSelectedMainMenuItem * - Update the UI to match the currently selected item. - * + * * Task_HandleMainMenuInput * - If A is pressed, advance to Task_HandleMainMenuAPressed. * - If B is pressed, return to the title screen via CB2_InitTitleScreen. * - If Up or Down is pressed, handle scrolling if there is a scroll bar, change * the selection, then go back to Task_HighlightSelectedMainMenuItem. - * + * * Task_HandleMainMenuAPressed * - If the user selected New Game, advance to Task_NewGameBirchSpeech_Init. * - If the user selected Continue, advance to CB2_ContinueSavedGame. @@ -95,15 +95,15 @@ * Task_DisplayMainMenuInvalidActionError. * - Code to start a Mystery Event is present here, but is unreachable in this * version. - * + * * Task_HandleMainMenuBPressed * - Clean up the main menu and go back to CB2_InitTitleScreen. - * + * * Task_DisplayMainMenuInvalidActionError * - Print one of three different error messages, wait for the text to stop * printing, and then wait for A or B to be pressed. * - Then advance to Task_HandleMainMenuBPressed. - * + * * Task_NewGameBirchSpeechInit * - Load the sprites for the intro speech, start playing music * Task_NewGameBirchSpeech_WaitToShowBirch @@ -126,11 +126,11 @@ * - Animates by advancing to Task_NewGameBirchSpeech_SlideOutOldGenderSprite * whenever the player's selection changes. * - Advances to Task_NewGameBirchSpeech_WhatsYourName when done. - * + * * Task_NewGameBirchSpeech_SlideOutOldGenderSprite * Task_NewGameBirchSpeech_SlideInNewGenderSprite * - Returns back to Task_NewGameBirchSpeech_ChooseGender. - * + * * Task_NewGameBirchSpeech_WhatsYourName * Task_NewGameBirchSpeech_WaitForWhatsYourNameToPrint * Task_NewGameBirchSpeech_WaitPressBeforeNameChoice @@ -144,7 +144,7 @@ * Task_NewGameBirchSpeech_ProcessNameYesNoMenu * - If confirmed, advance to Task_NewGameBirchSpeech_SlidePlatformAway2. * - Otherwise, return to Task_NewGameBirchSpeech_BoyOrGirl. - * + * * Task_NewGameBirchSpeech_SlidePlatformAway2 * Task_NewGameBirchSpeech_ReshowBirchLotad * Task_NewGameBirchSpeech_WaitForSpriteFadeInAndTextPrinter @@ -154,7 +154,7 @@ * Task_NewGameBirchSpeech_FadePlayerToWhite * Task_NewGameBirchSpeech_Cleanup * - Advances to CB2_NewGame. - * + * * Task_NewGameBirchSpeechSub_InitPokeball * - Advances to Task_NewGameBirchSpeechSub_WaitForLotad * Task_NewGameBirchSpeechSub_WaitForLotad diff --git a/src/match_call.c b/src/match_call.c index fd0db630c4ec..b71fc832201d 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1051,8 +1051,8 @@ static bool32 CheckMatchCallChance(void) int callChance = 1; if (!GetMonData(&gPlayerParty[0], MON_DATA_SANITY_IS_EGG) && GetMonAbility(&gPlayerParty[0]) == ABILITY_LIGHTNING_ROD) callChance = 2; - - if (Random() % 10 < callChance * 3) + + if (Random() % 10 < callChance * 3) return TRUE; else return FALSE; @@ -1062,7 +1062,7 @@ static bool32 MapAllowsMatchCall(void) { if (!Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType) || gMapHeader.regionMapSectionId == MAPSEC_SAFARI_ZONE) return FALSE; - + if (gMapHeader.regionMapSectionId == MAPSEC_SOOTOPOLIS_CITY && FlagGet(FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA) == TRUE && FlagGet(FLAG_NEVER_SET_0x0DC) == FALSE) @@ -1312,7 +1312,7 @@ static bool32 MatchCall_PrintIntro(u8 taskId) if (!RunMatchCallTextPrinter(tWindowId)) { FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); - + // Ready the message if (!sMatchCallState.triggeredFromScript) SelectMatchCallMessage(sMatchCallState.trainerId, gStringVar4); @@ -1569,7 +1569,7 @@ static const struct MatchCallText *GetBattleMatchCallText(int matchCallId, u8 *s { int mask; u32 textId, topic, id; - + topic = Random() % 3; textId = sMatchCallTrainers[matchCallId].battleTopicTextIds[topic]; if (!textId) @@ -1833,7 +1833,7 @@ static void PopulateBattleFrontierStreak(int matchCallId, u8 *destStr) streak /= 10; i++; } - + ConvertIntToDecimalStringN(destStr, sBattleFrontierStreakInfo.streak, STR_CONV_MODE_LEFT_ALIGN, i); } @@ -2022,7 +2022,7 @@ static u8 GetPokedexRatingLevel(u16 numSeen) return 18; if (numSeen < 200) return 19; - + if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_DEOXYS), FLAG_GET_CAUGHT)) numSeen--; if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_JIRACHI), FLAG_GET_CAUGHT)) diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 239639e0b601..8de9fc3c9a28 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -914,219 +914,219 @@ struct Story static const struct Story sStorytellerStories[] = { // The 50 below is replaced with GAME_STAT_SAVED_GAME { - 50, 1, - MauvilleCity_PokemonCenter_1F_Text_SavedGameTitle, - MauvilleCity_PokemonCenter_1F_Text_SavedGameAction, + 50, 1, + MauvilleCity_PokemonCenter_1F_Text_SavedGameTitle, + MauvilleCity_PokemonCenter_1F_Text_SavedGameAction, MauvilleCity_PokemonCenter_1F_Text_SavedGameStory }, { - GAME_STAT_STARTED_TRENDS, 1, - MauvilleCity_PokemonCenter_1F_Text_TrendsStartedTitle, - MauvilleCity_PokemonCenter_1F_Text_TrendsStartedAction, + GAME_STAT_STARTED_TRENDS, 1, + MauvilleCity_PokemonCenter_1F_Text_TrendsStartedTitle, + MauvilleCity_PokemonCenter_1F_Text_TrendsStartedAction, MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory }, { - GAME_STAT_PLANTED_BERRIES, 1, - MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle, - MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction, + GAME_STAT_PLANTED_BERRIES, 1, + MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle, + MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction, MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedStory }, { - GAME_STAT_TRADED_BIKES, 1, - MauvilleCity_PokemonCenter_1F_Text_BikeTradesTitle, - MauvilleCity_PokemonCenter_1F_Text_BikeTradesAction, + GAME_STAT_TRADED_BIKES, 1, + MauvilleCity_PokemonCenter_1F_Text_BikeTradesTitle, + MauvilleCity_PokemonCenter_1F_Text_BikeTradesAction, MauvilleCity_PokemonCenter_1F_Text_BikeTradesStory }, { - GAME_STAT_GOT_INTERVIEWED, 1, - MauvilleCity_PokemonCenter_1F_Text_InterviewsTitle, - MauvilleCity_PokemonCenter_1F_Text_InterviewsAction, + GAME_STAT_GOT_INTERVIEWED, 1, + MauvilleCity_PokemonCenter_1F_Text_InterviewsTitle, + MauvilleCity_PokemonCenter_1F_Text_InterviewsAction, MauvilleCity_PokemonCenter_1F_Text_InterviewsStory }, { - GAME_STAT_TRAINER_BATTLES, 1, - MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesTitle, - MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesAction, + GAME_STAT_TRAINER_BATTLES, 1, + MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesTitle, + MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesAction, MauvilleCity_PokemonCenter_1F_Text_TrainerBattlesStory }, { - GAME_STAT_POKEMON_CAPTURES, 1, - MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtTitle, - MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtAction, + GAME_STAT_POKEMON_CAPTURES, 1, + MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtTitle, + MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtAction, MauvilleCity_PokemonCenter_1F_Text_PokemonCaughtStory }, { - GAME_STAT_FISHING_CAPTURES, 1, - MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtTitle, - MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtAction, + GAME_STAT_FISHING_CAPTURES, 1, + MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtTitle, + MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtAction, MauvilleCity_PokemonCenter_1F_Text_FishingPokemonCaughtStory }, { - GAME_STAT_HATCHED_EGGS, 1, - MauvilleCity_PokemonCenter_1F_Text_EggsHatchedTitle, - MauvilleCity_PokemonCenter_1F_Text_EggsHatchedAction, + GAME_STAT_HATCHED_EGGS, 1, + MauvilleCity_PokemonCenter_1F_Text_EggsHatchedTitle, + MauvilleCity_PokemonCenter_1F_Text_EggsHatchedAction, MauvilleCity_PokemonCenter_1F_Text_EggsHatchedStory }, { - GAME_STAT_EVOLVED_POKEMON, 1, - MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedTitle, - MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedAction, + GAME_STAT_EVOLVED_POKEMON, 1, + MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedTitle, + MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedAction, MauvilleCity_PokemonCenter_1F_Text_PokemonEvolvedStory }, { - GAME_STAT_USED_POKECENTER, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterAction, + GAME_STAT_USED_POKECENTER, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterAction, MauvilleCity_PokemonCenter_1F_Text_UsedPokemonCenterStory }, { - GAME_STAT_RESTED_AT_HOME, 1, - MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeTitle, - MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeAction, + GAME_STAT_RESTED_AT_HOME, 1, + MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeTitle, + MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeAction, MauvilleCity_PokemonCenter_1F_Text_RestedAtHomeStory }, { - GAME_STAT_ENTERED_SAFARI_ZONE, 1, - MauvilleCity_PokemonCenter_1F_Text_SafariGamesTitle, - MauvilleCity_PokemonCenter_1F_Text_SafariGamesAction, + GAME_STAT_ENTERED_SAFARI_ZONE, 1, + MauvilleCity_PokemonCenter_1F_Text_SafariGamesTitle, + MauvilleCity_PokemonCenter_1F_Text_SafariGamesAction, MauvilleCity_PokemonCenter_1F_Text_SafariGamesStory }, { - GAME_STAT_USED_CUT, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedCutTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedCutAction, + GAME_STAT_USED_CUT, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedCutTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedCutAction, MauvilleCity_PokemonCenter_1F_Text_UsedCutStory }, { - GAME_STAT_USED_ROCK_SMASH, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashAction, + GAME_STAT_USED_ROCK_SMASH, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashAction, MauvilleCity_PokemonCenter_1F_Text_UsedRockSmashStory }, { - GAME_STAT_MOVED_SECRET_BASE, 1, - MauvilleCity_PokemonCenter_1F_Text_MovedBasesTitle, - MauvilleCity_PokemonCenter_1F_Text_MovedBasesAction, + GAME_STAT_MOVED_SECRET_BASE, 1, + MauvilleCity_PokemonCenter_1F_Text_MovedBasesTitle, + MauvilleCity_PokemonCenter_1F_Text_MovedBasesAction, MauvilleCity_PokemonCenter_1F_Text_MovedBasesStory }, { - GAME_STAT_USED_SPLASH, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedSplashTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedSplashAction, + GAME_STAT_USED_SPLASH, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedSplashTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedSplashAction, MauvilleCity_PokemonCenter_1F_Text_UsedSplashStory }, { - GAME_STAT_USED_STRUGGLE, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedStruggleTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedStruggleAction, + GAME_STAT_USED_STRUGGLE, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedStruggleTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedStruggleAction, MauvilleCity_PokemonCenter_1F_Text_UsedStruggleStory }, { - GAME_STAT_SLOT_JACKPOTS, 1, - MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsTitle, - MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsAction, + GAME_STAT_SLOT_JACKPOTS, 1, + MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsTitle, + MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsAction, MauvilleCity_PokemonCenter_1F_Text_SlotJackpotsStory }, { - GAME_STAT_CONSECUTIVE_ROULETTE_WINS, 2, - MauvilleCity_PokemonCenter_1F_Text_RouletteWinsTitle, - MauvilleCity_PokemonCenter_1F_Text_RouletteWinsAction, + GAME_STAT_CONSECUTIVE_ROULETTE_WINS, 2, + MauvilleCity_PokemonCenter_1F_Text_RouletteWinsTitle, + MauvilleCity_PokemonCenter_1F_Text_RouletteWinsAction, MauvilleCity_PokemonCenter_1F_Text_RouletteWinsStory }, { - GAME_STAT_ENTERED_BATTLE_TOWER, 1, - MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesTitle, - MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesAction, + GAME_STAT_ENTERED_BATTLE_TOWER, 1, + MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesTitle, + MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesAction, MauvilleCity_PokemonCenter_1F_Text_BattleTowerChallengesStory }, { - GAME_STAT_POKEBLOCKS, 1, - MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksTitle, - MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksAction, + GAME_STAT_POKEBLOCKS, 1, + MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksTitle, + MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksAction, MauvilleCity_PokemonCenter_1F_Text_MadePokeblocksStory }, { - GAME_STAT_ENTERED_CONTEST, 1, - MauvilleCity_PokemonCenter_1F_Text_EnteredContestsTitle, - MauvilleCity_PokemonCenter_1F_Text_EnteredContestsAction, + GAME_STAT_ENTERED_CONTEST, 1, + MauvilleCity_PokemonCenter_1F_Text_EnteredContestsTitle, + MauvilleCity_PokemonCenter_1F_Text_EnteredContestsAction, MauvilleCity_PokemonCenter_1F_Text_EnteredContestsStory }, { - GAME_STAT_WON_CONTEST, 1, - MauvilleCity_PokemonCenter_1F_Text_WonContestsTitle, - MauvilleCity_PokemonCenter_1F_Text_WonContestsAction, + GAME_STAT_WON_CONTEST, 1, + MauvilleCity_PokemonCenter_1F_Text_WonContestsTitle, + MauvilleCity_PokemonCenter_1F_Text_WonContestsAction, MauvilleCity_PokemonCenter_1F_Text_WonContestsStory }, { - GAME_STAT_SHOPPED, 1, - MauvilleCity_PokemonCenter_1F_Text_TimesShoppedTitle, - MauvilleCity_PokemonCenter_1F_Text_TimesShoppedAction, + GAME_STAT_SHOPPED, 1, + MauvilleCity_PokemonCenter_1F_Text_TimesShoppedTitle, + MauvilleCity_PokemonCenter_1F_Text_TimesShoppedAction, MauvilleCity_PokemonCenter_1F_Text_TimesShoppedStory }, { - GAME_STAT_USED_ITEMFINDER, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderAction, + GAME_STAT_USED_ITEMFINDER, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderAction, MauvilleCity_PokemonCenter_1F_Text_UsedItemFinderStory }, { - GAME_STAT_GOT_RAINED_ON, 1, - MauvilleCity_PokemonCenter_1F_Text_TimesRainedTitle, - MauvilleCity_PokemonCenter_1F_Text_TimesRainedAction, + GAME_STAT_GOT_RAINED_ON, 1, + MauvilleCity_PokemonCenter_1F_Text_TimesRainedTitle, + MauvilleCity_PokemonCenter_1F_Text_TimesRainedAction, MauvilleCity_PokemonCenter_1F_Text_TimesRainedStory }, { - GAME_STAT_CHECKED_POKEDEX, 1, - MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexTitle, - MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexAction, + GAME_STAT_CHECKED_POKEDEX, 1, + MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexTitle, + MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexAction, MauvilleCity_PokemonCenter_1F_Text_CheckedPokedexStory }, { - GAME_STAT_RECEIVED_RIBBONS, 1, - MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsTitle, - MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsAction, + GAME_STAT_RECEIVED_RIBBONS, 1, + MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsTitle, + MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsAction, MauvilleCity_PokemonCenter_1F_Text_ReceivedRibbonsStory }, { - GAME_STAT_JUMPED_DOWN_LEDGES, 1, - MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedTitle, - MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedAction, + GAME_STAT_JUMPED_DOWN_LEDGES, 1, + MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedTitle, + MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedAction, MauvilleCity_PokemonCenter_1F_Text_LedgesJumpedStory }, { - GAME_STAT_WATCHED_TV, 1, - MauvilleCity_PokemonCenter_1F_Text_TVWatchedTitle, - MauvilleCity_PokemonCenter_1F_Text_TVWatchedAction, + GAME_STAT_WATCHED_TV, 1, + MauvilleCity_PokemonCenter_1F_Text_TVWatchedTitle, + MauvilleCity_PokemonCenter_1F_Text_TVWatchedAction, MauvilleCity_PokemonCenter_1F_Text_TVWatchedStory }, { - GAME_STAT_CHECKED_CLOCK, 1, - MauvilleCity_PokemonCenter_1F_Text_CheckedClockTitle, - MauvilleCity_PokemonCenter_1F_Text_CheckedClockAction, + GAME_STAT_CHECKED_CLOCK, 1, + MauvilleCity_PokemonCenter_1F_Text_CheckedClockTitle, + MauvilleCity_PokemonCenter_1F_Text_CheckedClockAction, MauvilleCity_PokemonCenter_1F_Text_CheckedClockStory }, { - GAME_STAT_WON_POKEMON_LOTTERY, 1, - MauvilleCity_PokemonCenter_1F_Text_WonLotteryTitle, - MauvilleCity_PokemonCenter_1F_Text_WonLotteryAction, + GAME_STAT_WON_POKEMON_LOTTERY, 1, + MauvilleCity_PokemonCenter_1F_Text_WonLotteryTitle, + MauvilleCity_PokemonCenter_1F_Text_WonLotteryAction, MauvilleCity_PokemonCenter_1F_Text_WonLotteryStory }, { - GAME_STAT_USED_DAYCARE, 1, - MauvilleCity_PokemonCenter_1F_Text_UsedDaycareTitle, - MauvilleCity_PokemonCenter_1F_Text_UsedDaycareAction, + GAME_STAT_USED_DAYCARE, 1, + MauvilleCity_PokemonCenter_1F_Text_UsedDaycareTitle, + MauvilleCity_PokemonCenter_1F_Text_UsedDaycareAction, MauvilleCity_PokemonCenter_1F_Text_UsedDaycareStory }, { - GAME_STAT_RODE_CABLE_CAR, 1, - MauvilleCity_PokemonCenter_1F_Text_RodeCableCarTitle, - MauvilleCity_PokemonCenter_1F_Text_RodeCableCarAction, + GAME_STAT_RODE_CABLE_CAR, 1, + MauvilleCity_PokemonCenter_1F_Text_RodeCableCarTitle, + MauvilleCity_PokemonCenter_1F_Text_RodeCableCarAction, MauvilleCity_PokemonCenter_1F_Text_RodeCableCarStory }, { - GAME_STAT_ENTERED_HOT_SPRINGS, 1, - MauvilleCity_PokemonCenter_1F_Text_HotSpringsTitle, - MauvilleCity_PokemonCenter_1F_Text_HotSpringsAction, + GAME_STAT_ENTERED_HOT_SPRINGS, 1, + MauvilleCity_PokemonCenter_1F_Text_HotSpringsTitle, + MauvilleCity_PokemonCenter_1F_Text_HotSpringsAction, MauvilleCity_PokemonCenter_1F_Text_HotSpringsStory } }; diff --git a/src/menu.c b/src/menu.c index d289bb93268e..de1468e3b60a 100644 --- a/src/menu.c +++ b/src/menu.c @@ -62,11 +62,11 @@ static EWRAM_DATA void *sTempTileDataBuffer[0x20] = {NULL}; const u16 gUnknown_0860F074[] = INCBIN_U16("graphics/interface/860F074.gbapal"); -static const u8 sTextSpeedFrameDelays[] = -{ - [OPTIONS_TEXT_SPEED_SLOW] = 8, - [OPTIONS_TEXT_SPEED_MID] = 4, - [OPTIONS_TEXT_SPEED_FAST] = 1 +static const u8 sTextSpeedFrameDelays[] = +{ + [OPTIONS_TEXT_SPEED_SLOW] = 8, + [OPTIONS_TEXT_SPEED_MID] = 4, + [OPTIONS_TEXT_SPEED_FAST] = 1 }; static const struct WindowTemplate sStandardTextBox_WindowTemplates[] = diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 95b67f78c340..33175559080a 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -280,7 +280,7 @@ bool8 IsHoldingItemAllowed(u16 itemId) // Enigma Berry can't be held in link areas if (itemId != ITEM_ENIGMA_BERRY) return TRUE; - else if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) + else if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER)) return FALSE; else if (InUnionRoom() != TRUE) diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 2a9304a4d8e5..5c8b8ec5128c 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -631,11 +631,11 @@ bool8 MetatileBehavior_IsCableBoxResults1(u8 metatileBehavior) bool8 MetatileBehavior_IsOpenSecretBaseDoor(u8 metatileBehavior) { - if (metatileBehavior == MB_SECRET_BASE_SPOT_RED_CAVE_OPEN + if (metatileBehavior == MB_SECRET_BASE_SPOT_RED_CAVE_OPEN || metatileBehavior == MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN - || metatileBehavior == MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN + || metatileBehavior == MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN || metatileBehavior == MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN - || metatileBehavior == MB_SECRET_BASE_SPOT_SHRUB_OPEN + || metatileBehavior == MB_SECRET_BASE_SPOT_SHRUB_OPEN || metatileBehavior == MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN || metatileBehavior == MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN) return TRUE; diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 8e546afc9a0c..cd29717321a4 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -453,7 +453,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId) case 1: if (sprite->sTimer == 0) PlaySE(SE_BALL_BOUNCE_2); - + if (++sprite->sTimer >= 20) { // Ready for jump diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 9b6d0d887b13..5fbe328ac97b 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -20,7 +20,7 @@ #include "constants/songs.h" #include "constants/metatile_labels.h" -struct MirageTowerPulseBlend +struct MirageTowerPulseBlend { u8 taskId; struct PulseBlend pulseBlend; @@ -764,7 +764,7 @@ static void UpdateDisintegrationEffect(u8* tiles, u16 randId, u8 c, u8 size, u8 col = width & 7; sDebug_DisintegrationData[2] = height & 7; sDebug_DisintegrationData[3] = width & 7; - + widthTiles = width / 8; heightTiles = height / 8; sDebug_DisintegrationData[4] = width / 8; @@ -772,11 +772,11 @@ static void UpdateDisintegrationEffect(u8* tiles, u16 randId, u8 c, u8 size, u8 var = (size / 8) * (heightTiles * 64) + (widthTiles * 64); sDebug_DisintegrationData[6] = var; - + baseOffset = var + ((row * 8) + col); baseOffset /= 2; sDebug_DisintegrationData[7] = var + ((row * 8) + col); - + flag = ((randId % 2) ^ 1); tileMask = (c << (flag << 2)) | 15 << (((flag ^ 1) << 2)); tiles[baseOffset + (offset * 32)] &= tileMask; diff --git a/src/move_relearner.c b/src/move_relearner.c index 9fa7bf11c0c9..1fa947eba537 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -28,9 +28,9 @@ /* * Move relearner state machine * ------------------------ - * + * * Entry point: TeachMoveRelearnerMove - * + * * TeachMoveRelearnerMove * Task_WaitForFadeOut * CB2_InitLearnMove @@ -45,21 +45,21 @@ * DoMoveRelearnerMain: MENU_STATE_FADE_TO_BLACK * DoMoveRelearnerMain: MENU_STATE_WAIT_FOR_FADE * - Go to MENU_STATE_IDLE_BATTLE_MODE - * + * * DoMoveRelearnerMain: MENU_STATE_SETUP_BATTLE_MODE * DoMoveRelearnerMain: MENU_STATE_IDLE_BATTLE_MODE * - If the player selected a move (pressed A), go to MENU_STATE_PRINT_TEACH_MOVE_PROMPT. * - If the player cancelled (pressed B), go to MENU_STATE_PRINT_GIVE_UP_PROMPT. * - If the player pressed left or right, swap the move display window to contest mode, * and go to MENU_STATE_SETUP_CONTEST_MODE. - * + * * DoMoveRelearnerMain: MENU_STATE_SETUP_CONTEST_MODE * DoMoveRelearnerMain: MENU_STATE_IDLE_CONTEST_MODE * - If the player selected a move, go to MENU_STATE_PRINT_TEACH_MOVE_PROMPT. * - If the player cancelled, go to MENU_STATE_PRINT_GIVE_UP_PROMPT * - If the player pressed left or right, swap the move display window to battle mode, * and go to MENU_STATE_SETUP_BATTLE_MODE. - * + * * DoMoveRelearnerMain: MENU_STATE_PRINT_TEACH_MOVE_PROMPT * DoMoveRelearnerMain: MENU_STATE_TEACH_MOVE_CONFIRM * - Wait for the player to confirm. @@ -68,24 +68,24 @@ * MENU_STATE_PRINT_TEXT_THEN_FANFARE. * - If confirmed and the pokemon doesn't have an empty move slot, go to * MENU_STATE_PRINT_TRYING_TO_LEARN_PROMPT. - * + * * DoMoveRelearnerMain: MENU_STATE_PRINT_TRYING_TO_LEARN_PROMPT * DoMoveRelearnerMain: MENU_STATE_WAIT_FOR_TRYING_TO_LEARN * DoMoveRelearnerMain: MENU_STATE_CONFIRM_DELETE_OLD_MOVE * - If the player confirms, go to MENU_STATE_PRINT_WHICH_MOVE_PROMPT. * - If the player cancels, go to MENU_STATE_PRINT_STOP_TEACHING - * + * * DoMoveRelearnerMain: MENU_STATE_PRINT_STOP_TEACHING * DoMoveRelearnerMain: MENU_STATE_WAIT_FOR_STOP_TEACHING * DoMoveRelearnerMain: MENU_STATE_CONFIRM_STOP_TEACHING * - If the player confirms, go to MENU_STATE_CHOOSE_SETUP_STATE. * - If the player cancels, go back to MENU_STATE_PRINT_TRYING_TO_LEARN_PROMPT. - * + * * DoMoveRelearnerMain: MENU_STATE_PRINT_WHICH_MOVE_PROMPT * DoMoveRelearnerMain: MENU_STATE_SHOW_MOVE_SUMMARY_SCREEN * - Go to ShowSelectMovePokemonSummaryScreen. When done, control returns to * CB2_InitLearnMoveReturnFromSelectMove. - * + * * DoMoveRelearnerMain: MENU_STATE_DOUBLE_FANFARE_FORGOT_MOVE * DoMoveRelearnerMain: MENU_STATE_PRINT_TEXT_THEN_FANFARE * DoMoveRelearnerMain: MENU_STATE_WAIT_FOR_FANFARE @@ -93,13 +93,13 @@ * DoMoveRelearnerMain: MENU_STATE_FADE_AND_RETURN * DoMoveRelearnerMain: MENU_STATE_RETURN_TO_FIELD * - Clean up and go to CB2_ReturnToField. - * + * * DoMoveRelearnerMain: MENU_STATE_PRINT_GIVE_UP_PROMPT * DoMoveRelearnerMain: MENU_STATE_GIVE_UP_CONFIRM * - If the player confirms, go to MENU_STATE_FADE_AND_RETURN, and set VAR_0x8004 to FALSE. * - If the player cancels, go to either MENU_STATE_SETUP_BATTLE_MODE or * MENU_STATE_SETUP_CONTEST_MODE. - * + * * CB2_InitLearnMoveReturnFromSelectMove: * - Do most of the same stuff as CB2_InitLearnMove. * DoMoveRelearnerMain: MENU_STATE_FADE_FROM_SUMMARY_SCREEN @@ -108,7 +108,7 @@ * go to MENU_STATE_DOUBLE_FANFARE_FORGOT_MOVE and set VAR_0x8004 to TRUE. * - If the chosen move is the one the player selected before the summary screen, * go to MENU_STATE_PRINT_STOP_TEACHING. - * + * */ #define MENU_STATE_FADE_TO_BLACK 0 diff --git a/src/naming_screen.c b/src/naming_screen.c index fc7fb82fe793..5a297789a0ed 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -149,7 +149,7 @@ struct NamingScreenTemplate const u8 *title; }; -struct NamingScreenData +struct NamingScreenData { u8 tilemapBuffer1[0x800]; u8 tilemapBuffer2[0x800]; @@ -299,12 +299,12 @@ static const u8 sKeyboardChars[KBPAGE_COUNT * KBROW_COUNT * KBCOL_COUNT] = __( "!?♂♀/- " "…“”â€' "); -static const u8 sPageColumnCounts[KBPAGE_COUNT] = { - [KEYBOARD_LETTERS_LOWER] = KBCOL_COUNT, - [KEYBOARD_LETTERS_UPPER] = KBCOL_COUNT, - [KEYBOARD_SYMBOLS] = 6 +static const u8 sPageColumnCounts[KBPAGE_COUNT] = { + [KEYBOARD_LETTERS_LOWER] = KBCOL_COUNT, + [KEYBOARD_LETTERS_UPPER] = KBCOL_COUNT, + [KEYBOARD_SYMBOLS] = 6 }; -static const u8 sPageColumnXPos[KBPAGE_COUNT * KBCOL_COUNT] = { +static const u8 sPageColumnXPos[KBPAGE_COUNT * KBCOL_COUNT] = { 0, 12, 24, 56, 68, 80, 92, 123, // KEYBOARD_LETTERS_LOWER 0, 12, 24, 56, 68, 80, 92, 123, // KEYBOARD_LETTERS_UPPER 0, 22, 44, 66, 88, 110 // KEYBOARD_SYMBOLS @@ -583,25 +583,25 @@ static void Task_NamingScreen(u8 taskId) } // Which gfx/pal to load for the swap page button -static const u8 sPageToNextGfxId[KBPAGE_COUNT] = -{ - [KBPAGE_SYMBOLS] = PAGE_SWAP_UPPER, - [KBPAGE_LETTERS_UPPER] = PAGE_SWAP_LOWER, - [KBPAGE_LETTERS_LOWER] = PAGE_SWAP_OTHERS +static const u8 sPageToNextGfxId[KBPAGE_COUNT] = +{ + [KBPAGE_SYMBOLS] = PAGE_SWAP_UPPER, + [KBPAGE_LETTERS_UPPER] = PAGE_SWAP_LOWER, + [KBPAGE_LETTERS_LOWER] = PAGE_SWAP_OTHERS }; -static const u8 sPageToNextKeyboardId[KBPAGE_COUNT] = -{ - [KBPAGE_SYMBOLS] = KEYBOARD_LETTERS_UPPER, - [KBPAGE_LETTERS_UPPER] = KEYBOARD_LETTERS_LOWER, - [KBPAGE_LETTERS_LOWER] = KEYBOARD_SYMBOLS +static const u8 sPageToNextKeyboardId[KBPAGE_COUNT] = +{ + [KBPAGE_SYMBOLS] = KEYBOARD_LETTERS_UPPER, + [KBPAGE_LETTERS_UPPER] = KEYBOARD_LETTERS_LOWER, + [KBPAGE_LETTERS_LOWER] = KEYBOARD_SYMBOLS }; -static const u8 sPageToKeyboardId[KBPAGE_COUNT] = -{ - [KBPAGE_SYMBOLS] = KEYBOARD_SYMBOLS, - [KBPAGE_LETTERS_UPPER] = KEYBOARD_LETTERS_UPPER, - [KBPAGE_LETTERS_LOWER] = KEYBOARD_LETTERS_LOWER +static const u8 sPageToKeyboardId[KBPAGE_COUNT] = +{ + [KBPAGE_SYMBOLS] = KEYBOARD_SYMBOLS, + [KBPAGE_LETTERS_UPPER] = KEYBOARD_LETTERS_UPPER, + [KBPAGE_LETTERS_LOWER] = KEYBOARD_LETTERS_LOWER }; static u8 PageToNextGfxId(u8 page) @@ -674,7 +674,7 @@ static bool8 MainState_PressedOKButton(void) SetInputState(INPUT_STATE_DISABLED); SetCursorFlashing(FALSE); TryStartButtonFlash(BUTTON_COUNT, FALSE, TRUE); - if (sNamingScreen->templateNum == NAMING_SCREEN_CAUGHT_MON + if (sNamingScreen->templateNum == NAMING_SCREEN_CAUGHT_MON && CalculatePlayerPartyCount() >= PARTY_SIZE) { DisplaySentToPCMessage(); @@ -1030,9 +1030,9 @@ static void SpriteCB_Cursor(struct Sprite *sprite) if (sprite->sX == GetCurrentPageColumnCount()) sprite->invisible = TRUE; - if (sprite->invisible + if (sprite->invisible || !(sprite->sFlashing) - || sprite->sX != sprite->sPrevX + || sprite->sX != sprite->sPrevX || sprite->sY != sprite->sPrevY) { sprite->sColor = 0; @@ -1310,14 +1310,14 @@ static bool8 PageSwapSprite_SlideOn(struct Sprite *sprite) } static const u16 sPageSwapPalTags[] = { - [PAGE_SWAP_UPPER] = PALTAG_PAGE_SWAP_UPPER, - [PAGE_SWAP_OTHERS] = PALTAG_PAGE_SWAP_OTHERS, + [PAGE_SWAP_UPPER] = PALTAG_PAGE_SWAP_UPPER, + [PAGE_SWAP_OTHERS] = PALTAG_PAGE_SWAP_OTHERS, [PAGE_SWAP_LOWER] = PALTAG_PAGE_SWAP_LOWER }; static const u16 sPageSwapGfxTags[] = { - [PAGE_SWAP_UPPER] = GFXTAG_PAGE_SWAP_UPPER, - [PAGE_SWAP_OTHERS] = GFXTAG_PAGE_SWAP_OTHERS, + [PAGE_SWAP_UPPER] = GFXTAG_PAGE_SWAP_UPPER, + [PAGE_SWAP_OTHERS] = GFXTAG_PAGE_SWAP_OTHERS, [PAGE_SWAP_LOWER] = GFXTAG_PAGE_SWAP_LOWER }; @@ -1651,7 +1651,7 @@ static void HandleDpadMovement(struct Task *task) if (cursorX > GetCurrentPageColumnCount()) cursorX = 0; - + // Handle moving on/off the button column if (sDpadDeltaX[input] != 0) { @@ -2184,67 +2184,67 @@ static const struct OamData sOam_32x16 = static const struct Subsprite sSubsprites_PageSwapFrame[] = { { - .x = -20, - .y = -16, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .x = -20, + .y = -16, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 0, .priority = 1 }, { - .x = 12, - .y = -16, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 4, + .x = 12, + .y = -16, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 4, .priority = 1 }, { - .x = -20, - .y = -8, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 5, + .x = -20, + .y = -8, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 5, .priority = 1 }, { - .x = 12, - .y = -8, - .shape = SPRITE_SHAPE(8x8), + .x = 12, + .y = -8, + .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), - .tileOffset = 9, + .tileOffset = 9, .priority = 1 }, { - .x = -20, - .y = 0, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 10, + .x = -20, + .y = 0, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 10, .priority = 1 }, { - .x = 12, - .y = 0, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 14, + .x = 12, + .y = 0, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 14, .priority = 1 }, { - .x = -20, - .y = 8, - .shape = SPRITE_SHAPE(32x8), + .x = -20, + .y = 8, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 15, + .tileOffset = 15, .priority = 1 }, { - .x = 12, - .y = 8, - .shape = SPRITE_SHAPE(8x8), + .x = 12, + .y = 8, + .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), - .tileOffset = 19, + .tileOffset = 19, .priority = 1 } }; @@ -2252,19 +2252,19 @@ static const struct Subsprite sSubsprites_PageSwapFrame[] = static const struct Subsprite sSubsprites_PageSwapText[] = { { - .x = -12, - .y = -4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 0, + .x = -12, + .y = -4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 0, .priority = 1 }, { - .x = 4, - .y = -4, - .shape = SPRITE_SHAPE(8x8), - .size = SPRITE_SIZE(8x8), - .tileOffset = 2, + .x = 4, + .y = -4, + .shape = SPRITE_SHAPE(8x8), + .size = SPRITE_SIZE(8x8), + .tileOffset = 2, .priority = 1 } }; @@ -2272,51 +2272,51 @@ static const struct Subsprite sSubsprites_PageSwapText[] = static const struct Subsprite sSubsprites_Button[] = { { - .x = -20, - .y = -12, - .shape = SPRITE_SHAPE(32x8), + .x = -20, + .y = -12, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .tileOffset = 0, .priority = 1 }, { - .x = 12, - .y = -12, - .shape = SPRITE_SHAPE(8x8), + .x = 12, + .y = -12, + .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), - .tileOffset = 4, + .tileOffset = 4, .priority = 1 }, { - .x = -20, - .y = -4, - .shape = SPRITE_SHAPE(32x8), + .x = -20, + .y = -4, + .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 5, + .tileOffset = 5, .priority = 1 }, { - .x = 12, - .y = -4, - .shape = SPRITE_SHAPE(8x8), + .x = 12, + .y = -4, + .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), - .tileOffset = 9, + .tileOffset = 9, .priority = 1 }, { - .x = -20, - .y = 4, - .shape = SPRITE_SHAPE(32x8), - .size = SPRITE_SIZE(32x8), - .tileOffset = 10, + .x = -20, + .y = 4, + .shape = SPRITE_SHAPE(32x8), + .size = SPRITE_SIZE(32x8), + .tileOffset = 10, .priority = 1 }, { - .x = 12, - .y = 4, - .shape = SPRITE_SHAPE(8x8), + .x = 12, + .y = 4, + .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), - .tileOffset = 14, + .tileOffset = 14, .priority = 1 } }; @@ -2324,27 +2324,27 @@ static const struct Subsprite sSubsprites_Button[] = static const struct Subsprite sSubsprites_PCIcon[] = { { - .x = -8, - .y = -12, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 0, + .x = -8, + .y = -12, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 0, .priority = 3 }, { - .x = -8, - .y = -4, - .shape = SPRITE_SHAPE(16x8), + .x = -8, + .y = -4, + .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), - .tileOffset = 2, + .tileOffset = 2, .priority = 3 }, { - .x = -8, - .y = 4, - .shape = SPRITE_SHAPE(16x8), - .size = SPRITE_SIZE(16x8), - .tileOffset = 4, + .x = -8, + .y = 4, + .shape = SPRITE_SHAPE(16x8), + .size = SPRITE_SIZE(16x8), + .tileOffset = 4, .priority = 3 } }; @@ -2514,21 +2514,21 @@ static const struct SpriteTemplate sSpriteTemplate_PCIcon = static const u8* const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT] = { - [KEYBOARD_LETTERS_LOWER] = + [KEYBOARD_LETTERS_LOWER] = { gText_NamingScreenKeyboard_abcdef, gText_NamingScreenKeyboard_ghijkl, gText_NamingScreenKeyboard_mnopqrs, gText_NamingScreenKeyboard_tuvwxyz }, - [KEYBOARD_LETTERS_UPPER] = + [KEYBOARD_LETTERS_UPPER] = { gText_NamingScreenKeyboard_ABCDEF, gText_NamingScreenKeyboard_GHIJKL, gText_NamingScreenKeyboard_MNOPQRS, gText_NamingScreenKeyboard_TUVWXYZ }, - [KEYBOARD_SYMBOLS] = + [KEYBOARD_SYMBOLS] = { gText_NamingScreenKeyboard_01234, gText_NamingScreenKeyboard_56789, diff --git a/src/overworld.c b/src/overworld.c index a2f38c864dc2..844716985e4e 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -823,7 +823,7 @@ void LoadMapFromCameraTransition(u8 mapGroup, u8 mapNum) ResetFieldTasksArgs(); RunOnResumeMapScript(); - if (gMapHeader.regionMapSectionId != MAPSEC_BATTLE_FRONTIER + if (gMapHeader.regionMapSectionId != MAPSEC_BATTLE_FRONTIER || gMapHeader.regionMapSectionId != sLastMapSectionId) ShowMapNamePopup(); } @@ -2235,10 +2235,10 @@ static void CB1_UpdateLinkState(void) // Note: Because guestId is between 0 and 4, while the smallest key code is // LINK_KEY_CODE_EMPTY, this is functionally equivalent to `sPlayerKeyInterceptCallback(0)`. - // It is expecting the callback to be KeyInterCB_SelfIdle, and that will + // It is expecting the callback to be KeyInterCB_SelfIdle, and that will // completely ignore any input parameters. // - // UpdateHeldKeyCode performs a sanity check on its input; if + // UpdateHeldKeyCode performs a sanity check on its input; if // sPlayerKeyInterceptCallback echoes back the argument, which is selfId, then // it'll use LINK_KEY_CODE_EMPTY instead. // @@ -3051,7 +3051,7 @@ static void SetPlayerFacingDirection(u8 linkPlayerId, u8 facing) #define TEMP gLinkPlayerMovementModes[linkPlayerObjEvent->movementMode](linkPlayerObjEvent, objEvent, facing) gMovementStatusHandler[TEMP](linkPlayerObjEvent, objEvent); - + // Clean up the hack. #undef TEMP } diff --git a/src/palette.c b/src/palette.c index cbaae8da28c0..e106ce685877 100644 --- a/src/palette.c +++ b/src/palette.c @@ -586,7 +586,7 @@ static u8 UpdateFastPaletteFade(void) if (IsSoftwarePaletteFadeFinishing()) return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE; - + if (gPaletteFade.objPaletteToggle) { @@ -721,7 +721,7 @@ static u8 UpdateFastPaletteFade(void) gPaletteFade.mode = NORMAL_FADE; gPaletteFade.softwareFadeFinishing = 1; } - + // gPaletteFade.active cannot change since the last time it was checked. So this // is equivalent to `return PALETTE_FADE_STATUS_ACTIVE;` return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE; @@ -986,8 +986,8 @@ static bool32 IsBlendPalettesGraduallyTaskActive(u8 id) int i; for (i = 0; i < NUM_TASKS; i++) - if ((gTasks[i].isActive == TRUE) - && (gTasks[i].func == Task_BlendPalettesGradually) + if ((gTasks[i].isActive == TRUE) + && (gTasks[i].func == Task_BlendPalettesGradually) && (gTasks[i].tId == id)) return TRUE; diff --git a/src/palette_util.c b/src/palette_util.c index 5364ff6d9835..3fbde9284e4c 100755 --- a/src/palette_util.c +++ b/src/palette_util.c @@ -247,7 +247,7 @@ int InitPulseBlendPaletteSettings(struct PulseBlend *pulseBlend, const struct Pu if (pulseBlendPalette == NULL) return 0xFF; - + pulseBlendPalette->blendCoeff = 0; pulseBlendPalette->fadeDirection = 0; pulseBlendPalette->available = 1; @@ -322,7 +322,7 @@ void MarkUsedPulseBlendPalettes(struct PulseBlend *pulseBlend, u16 pulseBlendPal pulseBlend->usedPulseBlendPalettes |= 1 << i; } } - } + } } void UnmarkUsedPulseBlendPalettes(struct PulseBlend *pulseBlend, u16 pulseBlendPaletteSelector, u8 multiSelection) @@ -423,7 +423,7 @@ void UpdatePulseBlend(struct PulseBlend *pulseBlend) pulseBlendPalette->blendCoeff = 0; else pulseBlendPalette->blendCoeff = pulseBlendPalette->pulseBlendSettings.maxBlendCoeff & 0xF; - + pulseBlendPalette->fadeDirection ^= 1; pulseBlendPalette->fadeCycleCounter++; break; diff --git a/src/player_pc.c b/src/player_pc.c index 301b8c36206d..507fc6558214 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -471,7 +471,7 @@ static void PlayerPC_Mailbox(u8 taskId) Mailbox_DrawMailboxMenu(taskId); gTasks[taskId].func = Mailbox_ProcessInput; } - else + else { // Alloc failed, exit Mailbox DisplayItemMessageOnField(taskId, gText_NoMailHere, ReshowPlayerPC); @@ -588,7 +588,7 @@ static void ItemStorage_Withdraw(u8 taskId) s16 *data = gTasks[taskId].data; tUsedSlots = CountUsedPCItemSlots(); - if (tUsedSlots != 0) + if (tUsedSlots != 0) { ItemStorage_Enter(taskId, FALSE); } @@ -986,7 +986,7 @@ void ItemStorage_RefreshListMenu(void) sItemStorageMenu->listItems[i].name = &sItemStorageMenu->itemNames[i][0]; sItemStorageMenu->listItems[i].id = i; } - + // Set up Cancel entry StringCopy(&sItemStorageMenu->itemNames[i][0], gText_Cancel2); sItemStorageMenu->listItems[i].name = &sItemStorageMenu->itemNames[i][0]; @@ -1055,10 +1055,10 @@ static void ItemStorage_PrintDescription(s32 id) static void ItemStorage_AddScrollIndicator(void) { if (gPlayerPCItemPageInfo.scrollIndicatorTaskId == TASK_NONE) - gPlayerPCItemPageInfo.scrollIndicatorTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 176, 12, 148, - gPlayerPCItemPageInfo.count - gPlayerPCItemPageInfo.pageItems, - TAG_SCROLL_ARROW, - TAG_SCROLL_ARROW, + gPlayerPCItemPageInfo.scrollIndicatorTaskId = AddScrollIndicatorArrowPairParameterized(SCROLL_ARROW_UP, 176, 12, 148, + gPlayerPCItemPageInfo.count - gPlayerPCItemPageInfo.pageItems, + TAG_SCROLL_ARROW, + TAG_SCROLL_ARROW, &gPlayerPCItemPageInfo.itemsAbove); } @@ -1242,7 +1242,7 @@ static void ItemStorage_ReturnToMenuSelect(u8 taskId) if (!IsDma3ManagerBusyWithBgCopy()) { DrawDialogueFrame(0, 0); - + // Select Withdraw/Toss by default depending on which was just exited if (!tInTossMenu) InitItemStorageMenu(taskId, MENU_WITHDRAW); @@ -1370,7 +1370,7 @@ static void ItemStorage_DoItemAction(u8 taskId) ItemStorage_DoItemToss(taskId); return; } - + // Tossing multiple items, show "how many" message CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1); ItemStorage_PrintMessage(ItemStorage_GetMessage(MSG_HOW_MANY_TO_TOSS)); diff --git a/src/pokeblock.c b/src/pokeblock.c index fad6858ecc95..89c2bc962277 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -36,8 +36,8 @@ #define MAX_MENU_ITEMS 9 #define MENU_MIDPOINT (MAX_MENU_ITEMS / 2) -#define TILE_HIGHLIGHT_NONE 0x0005 // Tile number for the bg of an unselected menu item -#define TILE_HIGHLIGHT_BLUE 0x1005 // Tile number for the bg of a selected menu item +#define TILE_HIGHLIGHT_NONE 0x0005 // Tile number for the bg of an unselected menu item +#define TILE_HIGHLIGHT_BLUE 0x1005 // Tile number for the bg of a selected menu item #define TILE_HIGHLIGHT_RED 0x2005 // Tile number for the bg of a menu item to swap #define TAG_POKEBLOCK_CASE 14800 @@ -792,7 +792,7 @@ static void DrawPokeblockInfo(s32 pkblId) } CopyToBgTilemapBufferRect(2, rectTilemapSrc, (i / 3 * 6) + 1, (i % 3 * 2) + 13, 1, 2); } - + // Print the PokĂ©block's feel ConvertIntToDecimalStringN(gStringVar1, GetPokeblocksFeel(pokeblock), STR_CONV_MODE_RIGHT_ALIGN, 2); PrintOnPokeblockWindow(WIN_FEEL, gStringVar1, 4); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 748d988a4ee8..b123e6031828 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -1003,7 +1003,7 @@ static void CalculateMonAnimLength(void) pokeblockFeed = sPokeblockFeed; pokeblockFeed->monAnimLength = 1; animId = sNatureToMonPokeblockAnim[pokeblockFeed->nature][0]; - + // Add up the time each stage of the animation will take for (i = 0; i < 8; i++, animId++) { @@ -1177,16 +1177,16 @@ static void CalculateMonAnimMovement(void) if (!negative) { - pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE] + amplitude / 0x100) + x; - pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE] + amplitude / 0x100) + y; } else { - pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->monAnimX[time] = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE] - amplitude / 0x100) + x; - pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], + pokeblockFeed->monAnimY[time] = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE] - amplitude / 0x100) + y; } diff --git a/src/pokedex.c b/src/pokedex.c index cc469b32f819..2161c214fc88 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -5235,7 +5235,7 @@ void SetSearchRectHighlight(u8 flags, u8 x, u8 y, u8 width) temp &= 0x0fff; temp |= (flags << 12); *(u16 *)(ptr + (y + 0) * 64 + (x + i) * 2) = temp; - + temp = *(u16 *)(ptr + (y + 1) * 64 + (x + i) * 2); temp &= 0x0fff; temp |= (flags << 12); diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index f9cf4230924c..12f0e0d9edf9 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -527,7 +527,7 @@ static void BuildAreaGlowTilemap(void) sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH] |= GLOW_TILE_BOTTOM; if (y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] != GLOW_TILE_FULL) sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] |= GLOW_TILE_TOP; - + // Diagonals if (x != 0 && y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] != GLOW_TILE_FULL) sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] |= GLOW_TILE_BOTTOM_RIGHT; diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index e1d1776b1374..350946f3b2c6 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -19,7 +19,7 @@ // . . // 96 . . -96 // 127 -// +// #define MIN_NEEDLE_POS 32 #define MAX_NEEDLE_POS -32 @@ -253,7 +253,7 @@ bool8 LoadCryWaveformWindow(struct CryScreenWindow *window, u8 windowId) case 1: for (i = 0; i < sDexCryScreen->playStartPos * 8; i++) DrawWaveformSegment(i, 0); - + gDexCryScreenState++; break; case 2: @@ -295,7 +295,7 @@ void UpdateCryWaveformWindow(u8 windowId) DrawWaveformFlatline(); return; } - + // Cry playing, buffer waveform if (sDexCryScreen->cryState == 1) { diff --git a/src/pokemon.c b/src/pokemon.c index 28b402216552..ef1bae00b8fd 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -4879,7 +4879,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov temp2 = itemEffect[itemEffectParam]; dataSigned = GetMonData(mon, sGetMonDataEVConstants[temp1], NULL); evChange = temp2; - + if (evChange > 0) // Increasing EV (HP or Atk) { // Has EV increase limit already been reached? @@ -4977,7 +4977,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov { if (!usedByAI) { - // Restore HP + // Restore HP dataUnsigned = GetMonData(mon, MON_DATA_HP, NULL) + dataUnsigned; if (dataUnsigned > GetMonData(mon, MON_DATA_MAX_HP, NULL)) dataUnsigned = GetMonData(mon, MON_DATA_MAX_HP, NULL); @@ -5056,7 +5056,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov dataUnsigned = CalculatePPWithBonus(moveId, 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 && !(gBattleMons[battlerId].status2 & STATUS2_TRANSFORMED) @@ -5093,7 +5093,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov case 5: effectFlags = itemEffect[i]; temp1 = 0; - + // Loop through and try each of the ITEM5 effects while (effectFlags != 0) { diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index 8e90caeb85ec..9a95edf4b30b 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -10,7 +10,7 @@ #include "constants/battle_anim.h" #include "constants/rgb.h" -/* +/* This file handles the movements of the PokĂ©mon intro animations. Each animation type is identified by an ANIM_* constant that @@ -26,7 +26,7 @@ The table linking species to a BACK_ANIM is in this file (sSpeciesToBackAnimSet) while the table linking species to an ANIM for their front animation is in - pokemon.c (sMonFrontAnimIdsTable). + pokemon.c (sMonFrontAnimIdsTable). These are the functions that will start an animation: - LaunchAnimationTaskForFrontSprite diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 42330b6a5c21..39ce1d6ba8ae 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1005,21 +1005,21 @@ const union AffineAnimCmd *const sMonIconAffineAnims[] = const u16 sSpriteImageSizes[3][4] = { - [ST_OAM_SQUARE] = + [ST_OAM_SQUARE] = { [SPRITE_SIZE(8x8)] = 0x20, [SPRITE_SIZE(16x16)] = 0x80, [SPRITE_SIZE(32x32)] = 0x200, [SPRITE_SIZE(64x64)] = 0x800, }, - [ST_OAM_H_RECTANGLE] = + [ST_OAM_H_RECTANGLE] = { [SPRITE_SIZE(16x8)] = 0x40, [SPRITE_SIZE(32x8)] = 0x80, [SPRITE_SIZE(32x16)] = 0x100, [SPRITE_SIZE(64x32)] = 0x400, }, - [ST_OAM_V_RECTANGLE] = + [ST_OAM_V_RECTANGLE] = { [SPRITE_SIZE(8x16)] = 0x40, [SPRITE_SIZE(8x32)] = 0x80, diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 8fe590a0cdd9..57f1d6e9307b 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -126,7 +126,7 @@ enum { #define PLAY_AGAIN_YES 2 #define TAG_MON1 0 -#define TAG_MON2 1 // MON2-5 used implicitly by adding multiplayer id to tag +#define TAG_MON2 1 // MON2-5 used implicitly by adding multiplayer id to tag #define TAG_MON3 2 #define TAG_MON4 3 #define TAG_MON5 4 @@ -1723,7 +1723,7 @@ static void UpdateVineState(void) sPokemonJump->prevVineState = sPokemonJump->vineState; sPokemonJump->vineState = sPokemonJump->vineStateTimer >> 8; - + // If beginning upswing if (sPokemonJump->vineState > VINE_UPSWING_LOWER && sPokemonJump->prevVineState < VINE_UPSWING_LOW) { @@ -1960,23 +1960,23 @@ static void HandleMonState(void) static const s8 sJumpOffsets[][48] = { - [JUMP_TYPE_NORMAL] = { -3, -6, -8, -10, -13, -15, -17, -19, - -21, -23, -25, -27, -28, -29, - JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, - -28, -27, -26, -25, -23, -22, -20, -18, + [JUMP_TYPE_NORMAL] = { -3, -6, -8, -10, -13, -15, -17, -19, + -21, -23, -25, -27, -28, -29, + JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, + -28, -27, -26, -25, -23, -22, -20, -18, -17, -15, -13, -11, -8, -6, -4, -1}, - [JUMP_TYPE_FAST] = { -3, -6, -9, -11, -14, -16, -18, -20, - -22, -24, -26, -28, -29, - JUMP_PEAK, JUMP_PEAK, - -28, -26, -24, -22, -20, -18, -16, -14, + [JUMP_TYPE_FAST] = { -3, -6, -9, -11, -14, -16, -18, -20, + -22, -24, -26, -28, -29, + JUMP_PEAK, JUMP_PEAK, + -28, -26, -24, -22, -20, -18, -16, -14, -11, -9, -6, -4, -1}, - [JUMP_TYPE_SLOW] = { -3, -6, -9, -11, -13, -15, -17, -19, - -21, -23, -25, -27, -28, -29, - JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, - -29, -29, -28, -28, -27, -27, -26, -25, - -24, -22, -20, -18, -16, -14, -12, -11, + [JUMP_TYPE_SLOW] = { -3, -6, -9, -11, -13, -15, -17, -19, + -21, -23, -25, -27, -28, -29, + JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, JUMP_PEAK, + -29, -29, -28, -28, -27, -27, -26, -25, + -24, -22, -20, -18, -16, -14, -12, -11, -9, -6, -4, -1}, }; @@ -2248,13 +2248,13 @@ static void TryUpdateExcellentsRecord(u16 excellentsInRow) } static const u16 sPrizeItems[] = { - ITEM_LEPPA_BERRY, - ITEM_LUM_BERRY, - ITEM_SITRUS_BERRY, - ITEM_FIGY_BERRY, - ITEM_WIKI_BERRY, - ITEM_MAGO_BERRY, - ITEM_AGUAV_BERRY, + ITEM_LEPPA_BERRY, + ITEM_LUM_BERRY, + ITEM_SITRUS_BERRY, + ITEM_FIGY_BERRY, + ITEM_WIKI_BERRY, + ITEM_MAGO_BERRY, + ITEM_AGUAV_BERRY, ITEM_IAPAPA_BERRY }; @@ -3649,15 +3649,15 @@ enum { }; static const u8 sVenusaurStates[] = { - [VINE_HIGHEST] = VENUSAUR_UP, - [VINE_DOWNSWING_HIGHER] = VENUSAUR_UP, - [VINE_DOWNSWING_HIGH] = VENUSAUR_NEUTRAL, - [VINE_DOWNSWING_LOW] = VENUSAUR_NEUTRAL, - [VINE_DOWNSWING_LOWER] = VENUSAUR_DOWN, - [VINE_LOWEST] = VENUSAUR_DOWN, - [VINE_UPSWING_LOWER] = VENUSAUR_DOWN, - [VINE_UPSWING_LOW] = VENUSAUR_NEUTRAL, - [VINE_UPSWING_HIGH] = VENUSAUR_NEUTRAL, + [VINE_HIGHEST] = VENUSAUR_UP, + [VINE_DOWNSWING_HIGHER] = VENUSAUR_UP, + [VINE_DOWNSWING_HIGH] = VENUSAUR_NEUTRAL, + [VINE_DOWNSWING_LOW] = VENUSAUR_NEUTRAL, + [VINE_DOWNSWING_LOWER] = VENUSAUR_DOWN, + [VINE_LOWEST] = VENUSAUR_DOWN, + [VINE_UPSWING_LOWER] = VENUSAUR_DOWN, + [VINE_UPSWING_LOW] = VENUSAUR_NEUTRAL, + [VINE_UPSWING_HIGH] = VENUSAUR_NEUTRAL, [VINE_UPSWING_HIGHER] = VENUSAUR_UP, }; @@ -3665,25 +3665,25 @@ static const struct CompressedSpriteSheet sSpriteSheet_Digits = {gMinigameDigits static const struct SpritePalette sSpritePalette_Digits = {gMinigameDigits_Pal, TAG_DIGITS}; static const u16 sPlayerNameWindowCoords_2Players[] = { - 6, 8, + 6, 8, 16, 8 }; static const u16 sPlayerNameWindowCoords_3Players[] = { - 6, 8, - 11, 6, + 6, 8, + 11, 6, 16, 8 }; static const u16 sPlayerNameWindowCoords_4Players[] = { - 2, 6, - 6, 8, - 16, 8, + 2, 6, + 6, 8, + 16, 8, 20, 6 }; static const u16 sPlayerNameWindowCoords_5Players[] = { - 2, 6, - 6, 8, - 11, 6, - 16, 8, + 2, 6, + 6, 8, + 11, 6, + 16, 8, 20, 6 }; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 87180ad1e9c9..a58187d8b330 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -4687,7 +4687,7 @@ static bool8 UpdateBoxMonIconScroll(void) // Create the new incoming column of icons sStorage->iconScrollPos += sStorage->iconScrollSpeed; sStorage->iconScrollNumIncoming += CreateBoxMonIconsInColumn(sStorage->iconScrollCurColumn, sStorage->iconScrollDistance, sStorage->iconScrollSpeed); - + if ((sStorage->iconScrollDirection > 0 && sStorage->iconScrollCurColumn == IN_BOX_COLUMNS - 1) || (sStorage->iconScrollDirection < 0 && sStorage->iconScrollCurColumn == 0)) { @@ -5050,7 +5050,7 @@ static void SetReleaseMon(u8 mode, u8 position) static bool8 TryHideReleaseMonSprite(void) { - if (*sStorage->releaseMonSpritePtr == NULL + if (*sStorage->releaseMonSpritePtr == NULL || (*sStorage->releaseMonSpritePtr)->invisible) return FALSE; @@ -5903,7 +5903,7 @@ static bool8 UpdateCursorPos(void) sStorage->cursorNewY += sStorage->cursorSpeedY; sStorage->cursorSprite->x = sStorage->cursorNewX >> 8; sStorage->cursorSprite->y = sStorage->cursorNewY >> 8; - + // Limit cursor on right if (sStorage->cursorSprite->x > DISPLAY_WIDTH + 16) { @@ -6525,7 +6525,7 @@ static void GetRestrictedReleaseMoves(u16 *moves) for (i = 0; i < ARRAY_COUNT(sRestrictedReleaseMoves); i++) { if (sRestrictedReleaseMoves[i].mapGroup == MAP_GROUPS_COUNT - || (sRestrictedReleaseMoves[i].mapGroup == gSaveBlock1Ptr->location.mapGroup + || (sRestrictedReleaseMoves[i].mapGroup == gSaveBlock1Ptr->location.mapGroup && sRestrictedReleaseMoves[i].mapNum == gSaveBlock1Ptr->location.mapNum)) { *moves = sRestrictedReleaseMoves[i].move; @@ -6589,7 +6589,7 @@ static bool32 AtLeastThreeUsableMons(void) { s32 i, j; s32 count = (sIsMonBeingMoved != FALSE); - + // Check party for usable PokĂ©mon for (j = 0; j < PARTY_SIZE; j++) { @@ -6660,7 +6660,7 @@ static s8 RunCanReleaseMon(void) for (i = 0; i < IN_BOX_COUNT; i++) { knownMoves = GetAndCopyBoxMonDataAt(sStorage->releaseCheckBoxId, sStorage->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); - if (knownMoves != 0 && !(sStorage->releaseBoxId == sStorage->releaseCheckBoxId + if (knownMoves != 0 && !(sStorage->releaseBoxId == sStorage->releaseCheckBoxId && sStorage->releaseBoxPos == sStorage->releaseCheckBoxPos)) { // Found PC PokĂ©mon with restricted move, clear move from list @@ -7537,7 +7537,7 @@ static u8 HandleInput_OnButtons(void) sStorage->cursorVerticalWrap = -1; if (sCursorPosition == 0) cursorPosition = IN_BOX_COUNT - 1 - 5; - else + else cursorPosition = IN_BOX_COUNT - 1; sStorage->cursorFlipTimer = 1; break; @@ -7570,7 +7570,7 @@ static u8 HandleInput_OnButtons(void) // Button was pressed, determine which if (JOY_NEW(A_BUTTON)) return (cursorPosition == 0) ? INPUT_SHOW_PARTY : INPUT_CLOSE_BOX; - + if (JOY_NEW(B_BUTTON)) return INPUT_PRESSED_B; @@ -8084,9 +8084,9 @@ static void RemoveMenu(void) //------------------------------------------------------------------------------ // SECTION: MultiMove -// +// // The functions below handle moving and selecting multiple PokĂ©mon at once. -// The icon sprites are moved to bg 0, and this bg is manipulated to move +// The icon sprites are moved to bg 0, and this bg is manipulated to move // them as a group. //------------------------------------------------------------------------------ @@ -8644,7 +8644,7 @@ static bool8 MultiMove_CanPlaceSelection(void) //------------------------------------------------------------------------------ // SECTION: Item mode -// +// // The functions below handle the Move Items mode //------------------------------------------------------------------------------ @@ -8950,7 +8950,7 @@ static void MoveItemFromCursorToBag(void) // The party menu is being closed, if the cursor is on // a PokĂ©mon that has a held item make sure it slides -// up along with the closing menu. +// up along with the closing menu. static void MoveHeldItemWithPartyMenu(void) { s32 i; @@ -8960,7 +8960,7 @@ static void MoveHeldItemWithPartyMenu(void) for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sStorage->itemIcons[i].active + if (sStorage->itemIcons[i].active && sStorage->itemIcons[i].area == CURSOR_AREA_IN_PARTY) SetItemIconCallback(i, ITEM_CB_HIDE_PARTY, CURSOR_AREA_IN_HAND, 0); } @@ -8974,10 +8974,10 @@ static bool8 IsItemIconAnimActive(void) { if (sStorage->itemIcons[i].active) { - if (!sStorage->itemIcons[i].sprite->affineAnimEnded + if (!sStorage->itemIcons[i].sprite->affineAnimEnded && sStorage->itemIcons[i].sprite->affineAnimBeginning) return TRUE; - if (sStorage->itemIcons[i].sprite->callback != SpriteCallbackDummy + if (sStorage->itemIcons[i].sprite->callback != SpriteCallbackDummy && sStorage->itemIcons[i].sprite->callback != SpriteCB_ItemIcon_SetPosToCursor) return TRUE; } @@ -8993,7 +8993,7 @@ static bool8 IsMovingItem(void) { for (i = 0; i < MAX_ITEM_ICONS; i++) { - if (sStorage->itemIcons[i].active + if (sStorage->itemIcons[i].active && sStorage->itemIcons[i].area == CURSOR_AREA_IN_HAND) return TRUE; } @@ -9988,7 +9988,7 @@ static void TilemapUtil_Draw(u8 id) //------------------------------------------------------------------------------ // SECTION: UnkUtil -// +// // Some data transfer utility that goes functionally unused. // It gets initialized with UnkUtil_Init, and run every vblank in PokĂ©mon // Storage with UnkUtil_Run, but neither of the Add functions are ever used, diff --git a/src/pokenav.c b/src/pokenav.c index 881411b9ecb1..925560543b51 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -52,7 +52,7 @@ static void CB2_InitPokenavForTutorial(void); // TODO: Use MENU ids const struct PokenavCallbacks PokenavMenuCallbacks[15] = { - [POKENAV_MAIN_MENU - POKENAV_MENU_IDS_START] = + [POKENAV_MAIN_MENU - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MainMenuCursorOnMap, .callback = GetMenuHandlerCallback, @@ -62,7 +62,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_MAIN_MENU_CURSOR_ON_MAP - POKENAV_MENU_IDS_START] = + [POKENAV_MAIN_MENU_CURSOR_ON_MAP - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MainMenuCursorOnMap, .callback = GetMenuHandlerCallback, @@ -72,7 +72,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_CONDITION_MENU - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_MENU - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_ConditionMenu, .callback = GetMenuHandlerCallback, @@ -82,7 +82,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_CONDITION_SEARCH_MENU - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_SEARCH_MENU - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_ConditionSearchMenu, .callback = GetMenuHandlerCallback, @@ -92,7 +92,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL - POKENAV_MENU_IDS_START] = + [POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MainMenuCursorOnMatchCall, .callback = GetMenuHandlerCallback, @@ -102,7 +102,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS - POKENAV_MENU_IDS_START] = + [POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MainMenuCursorOnRibbons, .callback = GetMenuHandlerCallback, @@ -112,7 +112,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMenuHandlerSubstruct1, .free2 = FreeMenuHandlerSubstruct2, }, - [POKENAV_REGION_MAP - POKENAV_MENU_IDS_START] = + [POKENAV_REGION_MAP - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_RegionMap, .callback = GetRegionMapCallback, @@ -122,7 +122,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeRegionMapSubstruct1, .free2 = FreeRegionMapSubstruct2, }, - [POKENAV_CONDITION_PARTY - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_PARTY - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_PartyCondition, .callback = GetPartyConditionCallback, @@ -132,7 +132,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreePartyConditionSubstruct1, .free2 = FreePartyConditionSubstruct2, }, - [POKENAV_CONDITION_SEARCH_RESULTS - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_SEARCH_RESULTS - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_ConditionSearch, .callback = GetConditionSearchResultsCallback, @@ -142,7 +142,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeSearchResultSubstruct1, .free2 = FreeSearchResultSubstruct2, }, - [POKENAV_CONDITION_GRAPH_FROM_SEARCH - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_GRAPH_FROM_SEARCH - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_ConditionGraphFromSearch, .callback = GetPartyConditionCallback, @@ -152,7 +152,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreePartyConditionSubstruct1, .free2 = FreePartyConditionSubstruct2, }, - [POKENAV_RETURN_CONDITION_SEARCH - POKENAV_MENU_IDS_START] = + [POKENAV_RETURN_CONDITION_SEARCH - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_ReturnToMonSearchList, .callback = GetConditionSearchResultsCallback, @@ -162,7 +162,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeSearchResultSubstruct1, .free2 = FreeSearchResultSubstruct2, }, - [POKENAV_MATCH_CALL - POKENAV_MENU_IDS_START] = + [POKENAV_MATCH_CALL - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MatchCall, .callback = GetMatchCallCallback, @@ -172,7 +172,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeMatchCallSubstruct1, .free2 = FreeMatchCallSubstruct2, }, - [POKENAV_RIBBONS_MON_LIST - POKENAV_MENU_IDS_START] = + [POKENAV_RIBBONS_MON_LIST - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_MonRibbonList, .callback = GetRibbonsMonListCallback, @@ -182,7 +182,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeRibbonsMonList1, .free2 = FreeRibbonsMonList2, }, - [POKENAV_RIBBONS_SUMMARY_SCREEN - POKENAV_MENU_IDS_START] = + [POKENAV_RIBBONS_SUMMARY_SCREEN - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_RibbonsSummaryMenu, .callback = GetRibbonsSummaryMenuCallback, @@ -192,7 +192,7 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeRibbonsSummaryScreen1, .free2 = FreeRibbonsSummaryScreen2, }, - [POKENAV_RIBBONS_RETURN_TO_MON_LIST - POKENAV_MENU_IDS_START] = + [POKENAV_RIBBONS_RETURN_TO_MON_LIST - POKENAV_MENU_IDS_START] = { .init = PokenavCallback_Init_RibbonsMonListFromSummary, .callback = GetRibbonsMonListCallback, diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index 61b289ae1f9c..c415de1aced9 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -217,7 +217,7 @@ u8 SwitchConditionSummaryIndex(u8 moveUp) } isNotLastMon = (monListPtr->currIndex != ((IsConditionMenuSearchMode() != 0) ? monListPtr->listCount : monListPtr->listCount - 1)); - + if (!wasNotLastMon) return PARTY_CONDITION_FUNC_NO_TRANSITION; else if (!isNotLastMon) diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index c882befc4f0c..ef3792063fdb 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -30,7 +30,7 @@ const u32 gUnknown_08623228[] = INCBIN_U32("graphics/pokenav/8623228.4bpp.lz"); const u32 sConditionGraph_Tilemap[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz"); const u16 sConditionGraphMonMarkingsPal[] = INCBIN_U16("graphics/pokenav/8623338.gbapal"); -const struct BgTemplate sPartyConditionBgTemplates[3] = +const struct BgTemplate sPartyConditionBgTemplates[3] = { { .bg = 1, @@ -61,7 +61,7 @@ const struct BgTemplate sPartyConditionBgTemplates[3] = } }; -const struct WindowTemplate sMonNameGenderWindowTemplate = +const struct WindowTemplate sMonNameGenderWindowTemplate = { .bg = 1, .tilemapLeft = 13, @@ -72,7 +72,7 @@ const struct WindowTemplate sMonNameGenderWindowTemplate = .baseBlock = 2 }; -const struct WindowTemplate sConditionGraphListIdWindowTemplate = +const struct WindowTemplate sConditionGraphListIdWindowTemplate = { .bg = 1, .tilemapLeft = 1, @@ -83,7 +83,7 @@ const struct WindowTemplate sConditionGraphListIdWindowTemplate = .baseBlock = 0x36 }; -const struct WindowTemplate sUnusedWindowTemplate1 = +const struct WindowTemplate sUnusedWindowTemplate1 = { .bg = 1, .tilemapLeft = 1, @@ -94,7 +94,7 @@ const struct WindowTemplate sUnusedWindowTemplate1 = .baseBlock = 0x44 }; -const struct WindowTemplate sUnusedWindowTemplate2 = +const struct WindowTemplate sUnusedWindowTemplate2 = { .bg = 1, .tilemapLeft = 13, diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 712be6f695bc..219bb5a0731c 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -102,7 +102,7 @@ static const struct BgTemplate sConditionSearchResultBgTemplates[] = } }; -static const LoopedTask sSearchResultLoopTaskFuncs[] = +static const LoopedTask sSearchResultLoopTaskFuncs[] = { [CONDITION_SEARCH_FUNC_NONE] = NULL, [CONDITION_SEARCH_FUNC_MOVE_UP] = LoopedTask_MoveSearchListCursorUp, @@ -113,7 +113,7 @@ static const LoopedTask sSearchResultLoopTaskFuncs[] = [CONDITION_SEARCH_FUNC_SELECT_MON] = LoopedTask_SelectSearchResult }; -static const struct WindowTemplate sSearchResultListMenuWindowTemplate = +static const struct WindowTemplate sSearchResultListMenuWindowTemplate = { .bg = 1, .tilemapLeft = 1, @@ -664,7 +664,7 @@ static void PrintSearchResultListMenuItems(struct PokenavSub8 *searchList) static void InitConditionSearchListMenuTemplate(void) { struct PokenavListTemplate template; - + template.list.monList = GetSearchResultsMonDataList(); template.count = GetSearchResultsMonListCount(); template.unk8 = 4; diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index fb44aaa87646..e9d4c0b6739b 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -38,16 +38,16 @@ static bool32 sub_81CB1D0(void); #include "data/text/match_call_messages.h" -static const u8 sMatchCallOptionsNoCheckPage[] = +static const u8 sMatchCallOptionsNoCheckPage[] = { - MATCH_CALL_OPTION_CALL, + MATCH_CALL_OPTION_CALL, MATCH_CALL_OPTION_CANCEL }; -static const u8 sMatchCallOptionsHasCheckPage[] = +static const u8 sMatchCallOptionsHasCheckPage[] = { - MATCH_CALL_OPTION_CALL, - MATCH_CALL_OPTION_CHECK, + MATCH_CALL_OPTION_CALL, + MATCH_CALL_OPTION_CHECK, MATCH_CALL_OPTION_CANCEL }; diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 846171efd8f5..e3f0bb6efce5 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -119,7 +119,7 @@ static const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/8622700.gbap static const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/pokeball_matchcall.gbapal"); static const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/pokeball_matchcall.4bpp.lz"); -const struct BgTemplate sMatchCallBgTemplates[3] = +const struct BgTemplate sMatchCallBgTemplates[3] = { { .bg = 1, @@ -150,7 +150,7 @@ const struct BgTemplate sMatchCallBgTemplates[3] = } }; -static const LoopedTask sMatchCallLoopTaskFuncs[] = +static const LoopedTask sMatchCallLoopTaskFuncs[] = { [POKENAV_MC_FUNC_NONE] = NULL, [POKENAV_MC_FUNC_DOWN] = MatchCallListCursorDown, @@ -170,7 +170,7 @@ static const LoopedTask sMatchCallLoopTaskFuncs[] = [POKENAV_MC_FUNC_EXIT] = ExitMatchCall }; -static const struct WindowTemplate sMatchCallLocationWindowTemplate = +static const struct WindowTemplate sMatchCallLocationWindowTemplate = { .bg = 2, .tilemapLeft = 0, @@ -181,7 +181,7 @@ static const struct WindowTemplate sMatchCallLocationWindowTemplate = .baseBlock = 16 }; -static const struct WindowTemplate sMatchCallInfoBoxWindowTemplate = +static const struct WindowTemplate sMatchCallInfoBoxWindowTemplate = { .bg = 2, .tilemapLeft = 0, @@ -192,7 +192,7 @@ static const struct WindowTemplate sMatchCallInfoBoxWindowTemplate = .baseBlock = 38 }; -static const u8 *const sMatchCallOptionTexts[MATCH_CALL_OPTION_COUNT] = +static const u8 *const sMatchCallOptionTexts[MATCH_CALL_OPTION_COUNT] = { [MATCH_CALL_OPTION_CALL] = gText_Call, [MATCH_CALL_OPTION_CHECK] = gText_Check, @@ -202,7 +202,7 @@ static const u8 *const sMatchCallOptionTexts[MATCH_CALL_OPTION_COUNT] = // The series of 5 dots that appear when someone is called with Match Call static const u8 sText_CallingDots[] = _("·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p"); -static const struct WindowTemplate sCallMsgBoxWindowTemplate = +static const struct WindowTemplate sCallMsgBoxWindowTemplate = { .bg = 1, .tilemapLeft = 1, @@ -213,17 +213,17 @@ static const struct WindowTemplate sCallMsgBoxWindowTemplate = .baseBlock = 10 }; -const struct CompressedSpriteSheet gUnknown_08622810[1] = +const struct CompressedSpriteSheet gUnknown_08622810[1] = { {gUnknown_086226B8, 0x40, 7} }; -const struct SpritePalette gUnknown_08622818[2] = +const struct SpritePalette gUnknown_08622818[2] = { {gUnknown_08622698, 12} }; -static const struct OamData sOptionsCursorOamData = +static const struct OamData sOptionsCursorOamData = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -235,7 +235,7 @@ static const struct OamData sOptionsCursorOamData = .tileNum = 0, .priority = 1, .paletteNum = 0, -}; +}; static const struct SpriteTemplate sOptionsCursorSpriteTemplate = { @@ -248,7 +248,7 @@ static const struct SpriteTemplate sOptionsCursorSpriteTemplate = .callback = SpriteCB_OptionsCursor, }; -static const struct OamData sTrainerPicOamData = +static const struct OamData sTrainerPicOamData = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1006,7 +1006,7 @@ static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) GetMapName(mapName, mapSec, 0); else StringCopy(mapName, gText_Unknown); - + x = GetStringCenterAlignXOffset(7, mapName, 88); FillWindowPixelBuffer(state->locWindowId, PIXEL_FILL(1)); AddTextPrinterParameterized(state->locWindowId, 7, mapName, x, 1, 0, NULL); diff --git a/src/pokenav_match_call_data.c b/src/pokenav_match_call_data.c index 6610dcb8031f..46ce43d4c198 100644 --- a/src/pokenav_match_call_data.c +++ b/src/pokenav_match_call_data.c @@ -658,38 +658,38 @@ static void (*const sMatchCall_GetNameAndDescFunctions[])(match_call_t, const u8 }; static const struct MatchCallCheckPageOverride sCheckPageOverrides[] = { - { - .idx = MC_HEADER_STEVEN, - .facilityClass = FACILITY_CLASS_STEVEN, - .flag = 0xFFFF, - .flavorTexts = { - [CHECK_PAGE_STRATEGY] = gText_MatchCallSteven_Strategy, - [CHECK_PAGE_POKEMON] = gText_MatchCallSteven_Pokemon, - [CHECK_PAGE_INTRO_1] = gText_MatchCallSteven_Intro1_BeforeMeteorFallsBattle, - [CHECK_PAGE_INTRO_2] = gText_MatchCallSteven_Intro2_BeforeMeteorFallsBattle - } + { + .idx = MC_HEADER_STEVEN, + .facilityClass = FACILITY_CLASS_STEVEN, + .flag = 0xFFFF, + .flavorTexts = { + [CHECK_PAGE_STRATEGY] = gText_MatchCallSteven_Strategy, + [CHECK_PAGE_POKEMON] = gText_MatchCallSteven_Pokemon, + [CHECK_PAGE_INTRO_1] = gText_MatchCallSteven_Intro1_BeforeMeteorFallsBattle, + [CHECK_PAGE_INTRO_2] = gText_MatchCallSteven_Intro2_BeforeMeteorFallsBattle + } }, - { - .idx = MC_HEADER_STEVEN, - .facilityClass = FACILITY_CLASS_STEVEN, - .flag = FLAG_DEFEATED_MOSSDEEP_GYM, - .flavorTexts = { - [CHECK_PAGE_STRATEGY] = gText_MatchCallSteven_Strategy, - [CHECK_PAGE_POKEMON] = gText_MatchCallSteven_Pokemon, - [CHECK_PAGE_INTRO_1] = gText_MatchCallSteven_Intro1_AfterMeteorFallsBattle, - [CHECK_PAGE_INTRO_2] = gText_MatchCallSteven_Intro2_AfterMeteorFallsBattle - } + { + .idx = MC_HEADER_STEVEN, + .facilityClass = FACILITY_CLASS_STEVEN, + .flag = FLAG_DEFEATED_MOSSDEEP_GYM, + .flavorTexts = { + [CHECK_PAGE_STRATEGY] = gText_MatchCallSteven_Strategy, + [CHECK_PAGE_POKEMON] = gText_MatchCallSteven_Pokemon, + [CHECK_PAGE_INTRO_1] = gText_MatchCallSteven_Intro1_AfterMeteorFallsBattle, + [CHECK_PAGE_INTRO_2] = gText_MatchCallSteven_Intro2_AfterMeteorFallsBattle + } }, - { - .idx = MC_HEADER_BRENDAN, - .facilityClass = FACILITY_CLASS_BRENDAN, - .flag = 0xFFFF, + { + .idx = MC_HEADER_BRENDAN, + .facilityClass = FACILITY_CLASS_BRENDAN, + .flag = 0xFFFF, .flavorTexts = MCFLAVOR(Brendan) }, - { - .idx = MC_HEADER_MAY, - .facilityClass = FACILITY_CLASS_MAY, - .flag = 0xFFFF, + { + .idx = MC_HEADER_MAY, + .facilityClass = FACILITY_CLASS_MAY, + .flag = 0xFFFF, .flavorTexts = MCFLAVOR(May) } }; @@ -896,12 +896,12 @@ static bool32 MatchCall_HasCheckPage_Wally(match_call_t matchCall) return TRUE; } -static bool32 MatchCall_HasCheckPage_Rival(match_call_t matchCall) +static bool32 MatchCall_HasCheckPage_Rival(match_call_t matchCall) { return FALSE; } -static bool32 MatchCall_HasCheckPage_Birch(match_call_t matchCall) +static bool32 MatchCall_HasCheckPage_Birch(match_call_t matchCall) { return FALSE; } diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 7e70a50c889b..ba495245b65d 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -741,11 +741,11 @@ void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) { // lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames - static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = + static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = { - [CHECK_PAGE_STRATEGY] = 2, - [CHECK_PAGE_POKEMON] = 4, - [CHECK_PAGE_INTRO_1] = 6, + [CHECK_PAGE_STRATEGY] = 2, + [CHECK_PAGE_POKEMON] = 4, + [CHECK_PAGE_INTRO_1] = 6, [CHECK_PAGE_INTRO_2] = 7 }; diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index ff219b71e312..5f6c4460a478 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -118,7 +118,7 @@ static const struct BgTemplate sPokenavMainMenuBgTemplates[] = { } }; -static const LoopedTask sMenuHandlerLoopTaskFuncs[] = +static const LoopedTask sMenuHandlerLoopTaskFuncs[] = { [POKENAV_MENU_FUNC_NONE] = NULL, [POKENAV_MENU_FUNC_MOVE_CURSOR] = LoopedTask_MoveMenuCursor, @@ -179,31 +179,31 @@ struct OptionsLabelGfx static const struct OptionsLabelGfx sPokenavMenuOptionLabelGfx[POKENAV_MENU_TYPE_COUNT] = { - [POKENAV_MENU_TYPE_DEFAULT] = + [POKENAV_MENU_TYPE_DEFAULT] = { .yStart = 42, .deltaY = 20, {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_SwitchOff} }, - [POKENAV_MENU_TYPE_UNLOCK_MC] = + [POKENAV_MENU_TYPE_UNLOCK_MC] = { .yStart = 42, .deltaY = 20, {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_MatchCall, sOptionsLabelGfx_SwitchOff} }, - [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = + [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = { .yStart = 42, .deltaY = 20, {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_MatchCall, sOptionsLabelGfx_Ribbons, sOptionsLabelGfx_SwitchOff} }, - [POKENAV_MENU_TYPE_CONDITION] = + [POKENAV_MENU_TYPE_CONDITION] = { .yStart = 56, .deltaY = 20, {sOptionsLabelGfx_Party, sOptionsLabelGfx_Search, sOptionsLabelGfx_Cancel} }, - [POKENAV_MENU_TYPE_CONDITION_SEARCH] = + [POKENAV_MENU_TYPE_CONDITION_SEARCH] = { .yStart = 40, .deltaY = 16, @@ -341,7 +341,7 @@ bool32 OpenPokenavMenuInitial(void) if (state == NULL) return FALSE; - + state->pokenavAlreadyOpen = FALSE; return TRUE; } diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 3c210ed97a04..13a7030da2ee 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -79,7 +79,7 @@ static const u32 sRegionMapCityZoomTiles_Gfx[] = INCBIN_U32("graphics/pokenav/zo #include "data/region_map/city_map_tilemaps.h" -static const struct BgTemplate sRegionMapBgTemplates[3] = +static const struct BgTemplate sRegionMapBgTemplates[3] = { { .bg = 1, @@ -110,7 +110,7 @@ static const struct BgTemplate sRegionMapBgTemplates[3] = }, }; -static const LoopedTask sRegionMapLoopTaskFuncs[] = +static const LoopedTask sRegionMapLoopTaskFuncs[] = { [POKENAV_MAP_FUNC_NONE] = NULL, [POKENAV_MAP_FUNC_CURSOR_MOVED] = LoopedTask_UpdateInfoAfterCursorMove, @@ -119,18 +119,18 @@ static const LoopedTask sRegionMapLoopTaskFuncs[] = [POKENAV_MAP_FUNC_EXIT] = LoopedTask_ExitRegionMap }; -static const struct CompressedSpriteSheet sCityZoomTextSpriteSheet[1] = +static const struct CompressedSpriteSheet sCityZoomTextSpriteSheet[1] = { {gRegionMapCityZoomText_Gfx, 0x800, 6} }; -static const struct SpritePalette sCityZoomTilesSpritePalette[] = +static const struct SpritePalette sCityZoomTilesSpritePalette[] = { {gRegionMapCityZoomTiles_Pal, 11}, {} }; -static const struct WindowTemplate sMapSecInfoWindowTemplate = +static const struct WindowTemplate sMapSecInfoWindowTemplate = { .bg = 1, .tilemapLeft = 17, @@ -143,7 +143,7 @@ static const struct WindowTemplate sMapSecInfoWindowTemplate = #include "data/region_map/city_map_entries.h" -const struct OamData sCityZoomTextSprite_OamData = +const struct OamData sCityZoomTextSprite_OamData = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -592,7 +592,7 @@ static void Task_ChangeBgYForZoom(u8 taskId) ChangeBgY(1, 0, 0); DestroyTask(taskId); } - + UpdateCityZoomTextPosition(); } else diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index a7644fdaaf7d..92b1a489547f 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -32,7 +32,7 @@ enum #define PALTAG_RIBBON_ICONS_5 19 #define RIBBONS_PER_ROW 9 -#define GIFT_RIBBON_ROW (1 + (FIRST_GIFT_RIBBON / RIBBONS_PER_ROW)) // Gift ribbons start on a new row after the normal ribbons. +#define GIFT_RIBBON_ROW (1 + (FIRST_GIFT_RIBBON / RIBBONS_PER_ROW)) // Gift ribbons start on a new row after the normal ribbons. #define GIFT_RIBBON_START_POS (RIBBONS_PER_ROW * GIFT_RIBBON_ROW) #define MON_SPRITE_X_ON 40 @@ -828,11 +828,11 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) } else { - // ribbonId here is one of the 'gift' ribbon slots, used to read + // ribbonId here is one of the 'gift' ribbon slots, used to read // its actual value from giftRibbons to determine which specific // gift ribbon it is ribbonId = gSaveBlock1Ptr->giftRibbons[ribbonId - FIRST_GIFT_RIBBON]; - + // If 0, this gift ribbon slot is unoccupied if (ribbonId == 0) return; diff --git a/src/post_battle_event_funcs.c b/src/post_battle_event_funcs.c index 081a40218833..8c209f908276 100644 --- a/src/post_battle_event_funcs.c +++ b/src/post_battle_event_funcs.c @@ -64,7 +64,7 @@ int GameClear(void) { IncrementGameStat(GAME_STAT_RECEIVED_RIBBONS); FlagSet(FLAG_SYS_RIBBON_GET); - + for (i = 1; i < 6; i++) { if (ribbonCounts[i].count > ribbonCounts[0].count) diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index f2c5a319c4e2..642fe6233b26 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -2392,7 +2392,7 @@ static void SpriteCB_Descends_Rayquaza(struct Sprite *sprite) { s16 *data = sprite->data; s16 frame = sTimer; - + // Updates to Rayquaza's coords occur more frequently // as time goes on (it accelerates as it emerges) if (frame == 0) diff --git a/src/record_mixing.c b/src/record_mixing.c index aa6e4eef2aac..6b538eaf4fca 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -952,7 +952,7 @@ static void Task_DoRecordMixing(u8 taskId) else task->data[0] = 6; break; - + // Mixing Ruby/Sapphire records. case 2: SetContinueGameWarpStatusToDynamicWarp(); diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index 528a0e52d2fb..f451bfce34bc 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -80,33 +80,33 @@ static const struct BgTemplate sBgTemplates[] = static const struct WindowTemplate sWindowTemplates[] = { { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 1, - .width = 19, - .height = 9, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 19, + .height = 9, + .paletteNum = 15, .baseBlock = 0x155 }, { - .bg = 0, - .tilemapLeft = 2, - .tilemapTop = 15, - .width = 27, - .height = 4, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 27, + .height = 4, + .paletteNum = 15, .baseBlock = 0xE9 }, DUMMY_WIN_TEMPLATE }; static const struct WindowTemplate sInputTimeWindow = { - .bg = 0, - .tilemapLeft = 4, - .tilemapTop = 9, - .width = 21, - .height = 2, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 4, + .tilemapTop = 9, + .width = 21, + .height = 2, + .paletteNum = 15, .baseBlock = 0xBF }; @@ -362,7 +362,7 @@ static void PrintTime(u8 windowId, u8 x, u8 y, u16 days, u8 hours, u8 minutes, u { u8 *dest = gStringVar4; - // Print days + // Print days ConvertIntToDecimalStringN(gStringVar1, days, STR_CONV_MODE_RIGHT_ALIGN, 4); dest = StringCopy(dest, gStringVar1); dest = StringCopy(dest, gText_Day); @@ -648,7 +648,7 @@ static void Task_ResetRtcScreen(u8 taskId) case MAINSTATE_CHECK_SAVE: if (!gPaletteFade.active) { - if (gSaveFileStatus == SAVE_STATUS_EMPTY + if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_CORRUPT) { ShowMessage(gText_NoSaveFileCantSetTime); diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index fd26361dd75d..a3bee41808fb 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -10,7 +10,7 @@ #define ROTATE_COUNTERCLOCKWISE 0 #define ROTATE_CLOCKWISE 1 -#define ROTATE_NONE 2 +#define ROTATE_NONE 2 struct RotatingTileObject { @@ -129,7 +129,7 @@ u16 MoveRotatingTileObjects(u8 puzzleNumber) puzzleTileStart = METATILE_TrickHousePuzzle_Arrow_YellowOnWhite_Right; // Object is on a metatile before the puzzle tile section - // UB: Because this is not if (metatile < puzzleTileStart), for the trick house (metatile - puzzleTileStart) below can result in casting a negative value to u8 + // UB: Because this is not if (metatile < puzzleTileStart), for the trick house (metatile - puzzleTileStart) below can result in casting a negative value to u8 if (metatile < METATILE_MossdeepGym_YellowArrow_Right) continue; @@ -223,7 +223,7 @@ void TurnRotatingTileObjects(void) // Which means tileDifference will always either be -1 or 3 after the below subtraction, and rotation will always be ROTATE_COUNTERCLOCKWISE after the following conditionals tileDifference = (u8)((metatile - puzzleTileStart) % 8); tileDifference -= (sRotatingTilePuzzle->objects[i].prevPuzzleTileNum); - + // Always true, see above if (tileDifference < 0 || tileDifference == 3) { diff --git a/src/roulette.c b/src/roulette.c index 14ae16556707..9b494d75276a 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -148,7 +148,7 @@ #define GFXTAG_SHADOW 14 // 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 +// & 1 gets which table, >> 7 gets if ROULETTE_SPECIAL_RATE is set #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 @@ -1448,7 +1448,7 @@ static void ProcessBetGridInput(u8 taskId) RouletteFlash_Stop(&sRoulette->flashUtil, 0xFFFF); sRoulette->flashUtil.palettes[FLASH_ICON].available = sRoulette->flashUtil.palettes[FLASH_ICON_2].available = sRoulette->flashUtil.palettes[FLASH_ICON_3].available = FALSE; FlashSelectionOnWheel(gTasks[taskId].tSelectionId); - + // Switch all the poke (column) headers to gray outlines for (i = 0; i < NUM_BOARD_POKES; i++) { @@ -1568,11 +1568,11 @@ static u8 GetRandomForBallTravelDistance(u16 ballNum, u16 rand) else return 1; } - else if (!(rand & 3)) + else if (!(rand & 3)) { return sRouletteTables[sRoulette->tableId].randDistanceLow / 2; } - else + else { return sRouletteTables[sRoulette->tableId].randDistanceLow; } @@ -1586,11 +1586,11 @@ static u8 GetRandomForBallTravelDistance(u16 ballNum, u16 rand) else return 1; } - else if ((rand & 1) && ballNum > BALLS_PER_ROUND) + else if ((rand & 1) && ballNum > BALLS_PER_ROUND) { return sRouletteTables[sRoulette->tableId].randDistanceLow / 4; } - else + else { return sRouletteTables[sRoulette->tableId].randDistanceLow / 2; } @@ -2060,14 +2060,14 @@ static u8 RecordHit(u8 taskId, u8 slotId) { u8 i, j; u32 columnFlags[NUM_BOARD_POKES] = { - F_WYNAUT_COL | F_ORANGE_WYNAUT | F_GREEN_WYNAUT | F_PURPLE_WYNAUT, - F_AZURILL_COL | F_ORANGE_AZURILL | F_GREEN_AZURILL | F_PURPLE_AZURILL, - F_SKITTY_COL | F_ORANGE_SKITTY | F_GREEN_SKITTY | F_PURPLE_SKITTY, + F_WYNAUT_COL | F_ORANGE_WYNAUT | F_GREEN_WYNAUT | F_PURPLE_WYNAUT, + F_AZURILL_COL | F_ORANGE_AZURILL | F_GREEN_AZURILL | F_PURPLE_AZURILL, + F_SKITTY_COL | F_ORANGE_SKITTY | F_GREEN_SKITTY | F_PURPLE_SKITTY, F_MAKUHITA_COL | F_ORANGE_MAKUHITA | F_GREEN_MAKUHITA | F_PURPLE_MAKUHITA }; u32 rowFlags[NUM_BOARD_COLORS] = { - F_ORANGE_ROW | F_ORANGE_WYNAUT | F_ORANGE_AZURILL | F_ORANGE_SKITTY | F_ORANGE_MAKUHITA, - F_GREEN_ROW | F_GREEN_WYNAUT | F_GREEN_AZURILL | F_GREEN_SKITTY | F_GREEN_MAKUHITA, + F_ORANGE_ROW | F_ORANGE_WYNAUT | F_ORANGE_AZURILL | F_ORANGE_SKITTY | F_ORANGE_MAKUHITA, + F_GREEN_ROW | F_GREEN_WYNAUT | F_GREEN_AZURILL | F_GREEN_SKITTY | F_GREEN_MAKUHITA, F_PURPLE_ROW | F_PURPLE_WYNAUT | F_PURPLE_AZURILL | F_PURPLE_SKITTY | F_PURPLE_MAKUHITA }; @@ -2109,15 +2109,15 @@ static bool8 IsHitInBetSelection(u8 gridSquare, u8 betSelection) case COL_AZURILL: case COL_SKITTY: case COL_MAKUHITA: - if (hit == betSelection + ROW_ORANGE - || hit == betSelection + ROW_GREEN + if (hit == betSelection + ROW_ORANGE + || hit == betSelection + ROW_GREEN || hit == betSelection + ROW_PURPLE) return TRUE; break; case ROW_ORANGE: case ROW_GREEN: case ROW_PURPLE: - if (hit >= (betSelection + COL_WYNAUT) + if (hit >= (betSelection + COL_WYNAUT) && hit <= (betSelection + COL_MAKUHITA)) return TRUE; break; @@ -3438,7 +3438,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) PrintCoinsString(gTasks[taskId].tCoins); minBet = sTableMinBets[GET_MIN_BET_ID(gSpecialVar_0x8004)]; ConvertIntToDecimalStringN(gStringVar1, minBet, STR_CONV_MODE_LEADING_ZEROS, 1); - + if (gTasks[taskId].tCoins >= minBet) { if ((gSpecialVar_0x8004 & ROULETTE_SPECIAL_RATE) && (gSpecialVar_0x8004 & 1)) diff --git a/src/scrcmd.c b/src/scrcmd.c index f53483978bfe..dfda7b3a2dfb 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -459,7 +459,7 @@ bool8 ScrCmd_compare_var_to_var(struct ScriptContext *ctx) return FALSE; } -// Note: addvar doesn't support adding from a variable in vanilla. If you were to +// Note: addvar doesn't support adding from a variable in vanilla. If you were to // add a VarGet() to the above, make sure you change the `addvar VAR_*, -1` // in the contest scripts to `subvar VAR_*, 1`, else contests will break. bool8 ScrCmd_addvar(struct ScriptContext *ctx) @@ -649,7 +649,7 @@ bool8 ScrCmd_fadescreenswapbuffers(struct ScriptContext *ctx) switch (mode) { case FADE_TO_BLACK: - case FADE_TO_WHITE: + case FADE_TO_WHITE: default: CpuCopy32(gPlttBufferUnfaded, gPaletteDecompressionBuffer, PLTT_DECOMP_BUFFER_SIZE); FadeScreen(mode, 0); diff --git a/src/script_movement.c b/src/script_movement.c index 013270697feb..92f36e92d946 100644 --- a/src/script_movement.c +++ b/src/script_movement.c @@ -66,7 +66,7 @@ static void ScriptMovement_StartMoveObjects(u8 priority) taskId = CreateTask(ScriptMovement_MoveObjects, priority); - for (i = 1; i < NUM_TASK_DATA; i++) + for (i = 1; i < NUM_TASK_DATA; i++) gTasks[taskId].data[i] = 0xFFFF; } diff --git a/src/secret_base.c b/src/secret_base.c index ce455642b1df..0a1472e311b4 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -325,7 +325,7 @@ void ToggleSecretBaseEntranceMetatile(void) GetXYCoordsOneStepInFrontOfPlayer(&x, &y); metatileId = MapGridGetMetatileIdAt(x, y); - + // Look for entrance metatiles to open for (i = 0; i < ARRAY_COUNT(sSecretBaseEntranceMetatiles); i++) { @@ -1226,28 +1226,28 @@ void SecretBasePerStepCallback(u8 taskId) VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SOLID_BOARD); } } - else if (tileId == METATILE_SecretBase_SmallChair - || tileId == METATILE_SecretBase_PokemonChair - || tileId == METATILE_SecretBase_HeavyChair - || tileId == METATILE_SecretBase_PrettyChair - || tileId == METATILE_SecretBase_ComfortChair - || tileId == METATILE_SecretBase_RaggedChair - || tileId == METATILE_SecretBase_BrickChair - || tileId == METATILE_SecretBase_CampChair + else if (tileId == METATILE_SecretBase_SmallChair + || tileId == METATILE_SecretBase_PokemonChair + || tileId == METATILE_SecretBase_HeavyChair + || tileId == METATILE_SecretBase_PrettyChair + || tileId == METATILE_SecretBase_ComfortChair + || tileId == METATILE_SecretBase_RaggedChair + || tileId == METATILE_SecretBase_BrickChair + || tileId == METATILE_SecretBase_CampChair || tileId == METATILE_SecretBase_HardChair) { if (sInFriendSecretBase == TRUE) VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_CHAIR); } - else if (tileId == METATILE_SecretBase_RedTent_DoorTop - || tileId == METATILE_SecretBase_RedTent_Door - || tileId == METATILE_SecretBase_BlueTent_DoorTop + else if (tileId == METATILE_SecretBase_RedTent_DoorTop + || tileId == METATILE_SecretBase_RedTent_Door + || tileId == METATILE_SecretBase_BlueTent_DoorTop || tileId == METATILE_SecretBase_BlueTent_Door) { if (sInFriendSecretBase == TRUE) VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_TENT); } - else if ((behavior == MB_IMPASSABLE_NORTHEAST && tileId == METATILE_SecretBase_Stand_CornerRight) + else if ((behavior == MB_IMPASSABLE_NORTHEAST && tileId == METATILE_SecretBase_Stand_CornerRight) || (behavior == MB_IMPASSABLE_NORTHWEST && MapGridGetMetatileIdAt(x, y) == METATILE_SecretBase_Stand_CornerLeft)) { if (sInFriendSecretBase == TRUE) @@ -1490,7 +1490,7 @@ static void SortSecretBasesByRegistryStatus(void) { for (j = i + 1; j < SECRET_BASES_COUNT; j++) { - if ((secretBases[i].registryStatus == UNREGISTERED && secretBases[j].registryStatus == REGISTERED) + if ((secretBases[i].registryStatus == UNREGISTERED && secretBases[j].registryStatus == REGISTERED) || (secretBases[i].registryStatus == NEW && secretBases[j].registryStatus != NEW)) { struct SecretBase temp; diff --git a/src/slot_machine.c b/src/slot_machine.c index 157f3625e4f0..301384be32d9 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -660,12 +660,12 @@ static const struct BgTemplate sBgTemplates[] = static const struct WindowTemplate sWindowTemplates[] = { { - .bg = 0, - .tilemapLeft = 2, - .tilemapTop = 15, - .width = 27, - .height = 4, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 27, + .height = 4, + .paletteNum = 15, .baseBlock = 0x194 }, DUMMY_WIN_TEMPLATE @@ -673,12 +673,12 @@ static const struct WindowTemplate sWindowTemplates[] = static const struct WindowTemplate sWindowTemplate_InfoBox = { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 3, - .width = 20, - .height = 13, - .paletteNum = 13, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 20, + .height = 13, + .paletteNum = 13, .baseBlock = 1 }; @@ -2184,8 +2184,8 @@ static bool8 AreTagsAtPosition_Reel1(s16 pos, u8 tag1, u8 tag2) static bool8 AreCherriesOnScreen_Reel1(s16 offsetFromCenter) { - if (GetTag(LEFT_REEL, 1 - offsetFromCenter) == GFXTAG_CHERRY - || GetTag(LEFT_REEL, 2 - offsetFromCenter) == GFXTAG_CHERRY + if (GetTag(LEFT_REEL, 1 - offsetFromCenter) == GFXTAG_CHERRY + || GetTag(LEFT_REEL, 2 - offsetFromCenter) == GFXTAG_CHERRY || GetTag(LEFT_REEL, 3 - offsetFromCenter) == GFXTAG_CHERRY) return TRUE; else @@ -4900,14 +4900,14 @@ static const u16 sSlotMatchFlags[] = { }; static const u16 sSlotPayouts[] = { - [MATCHED_1CHERRY] = 2, - [MATCHED_2CHERRY] = 4, - [MATCHED_REPLAY] = 0, - [MATCHED_LOTAD] = 6, - [MATCHED_AZURILL] = 12, - [MATCHED_POWER] = 3, - [MATCHED_777_MIXED] = 90, - [MATCHED_777_RED] = 300, + [MATCHED_1CHERRY] = 2, + [MATCHED_2CHERRY] = 4, + [MATCHED_REPLAY] = 0, + [MATCHED_LOTAD] = 6, + [MATCHED_AZURILL] = 12, + [MATCHED_POWER] = 3, + [MATCHED_777_MIXED] = 90, + [MATCHED_777_RED] = 300, [MATCHED_777_BLUE] = 300 }; @@ -5072,7 +5072,7 @@ static void (*const sDigitalDisplaySceneExitCallbacks[])(void) = { [DIG_DISPLAY_BONUS_BIG] = EndDigitalDisplayScene_Win }; -static const struct OamData sOam_8x8 = +static const struct OamData sOam_8x8 = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -5221,7 +5221,7 @@ static const struct SpriteFrameImage sImageTable_ReelTimeNumbers[] = static const struct SpriteFrameImage sImageTable_ReelTimeShadow[] = { gSlotMachineReelTimeShadow, 0x200 }; static const struct SpriteFrameImage sImageTable_ReelTimeNumberGap[] = { gSlotMachineReelTimeNumberGap_Gfx, 0x40 }; -static const struct SpriteFrameImage sImageTable_ReelTimeBolt[] = +static const struct SpriteFrameImage sImageTable_ReelTimeBolt[] = { { gSlotMachineReelTimeBolt0, 0x100 }, { gSlotMachineReelTimeBolt1, 0x100 }, @@ -5229,8 +5229,8 @@ static const struct SpriteFrameImage sImageTable_ReelTimeBolt[] = static const struct SpriteFrameImage sImageTable_ReelTimePikachuAura[] = { gSlotMachineReelTimePikaAura, 0x400 }; -static const struct SpriteFrameImage sImageTable_ReelTimeExplosion[] = -{ +static const struct SpriteFrameImage sImageTable_ReelTimeExplosion[] = +{ { gSlotMachineReelTimeExplosion0, 0x200 }, { gSlotMachineReelTimeExplosion1, 0x200 }, }; @@ -5239,13 +5239,13 @@ static const struct SpriteFrameImage sImageTable_ReelTimeDuck[] = { gSlotMachine static const struct SpriteFrameImage sImageTable_ReelTimeSmoke[] = { gSlotMachineReelTimeSmoke, 0x80}; static const struct SpriteFrameImage sImageTable_PikaPowerBolt[] = { gSlotMachinePikaPowerBolt, 0x20}; -static const union AnimCmd sAnim_SingleFrame[] = +static const union AnimCmd sAnim_SingleFrame[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sAnim_ReelTimeDuck[] = +static const union AnimCmd sAnim_ReelTimeDuck[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0) @@ -5510,367 +5510,367 @@ static const union AffineAnimCmd *const sAffineAnims_PikaPowerBolt[] = static const struct SpriteTemplate sSpriteTemplate_ReelSymbol = { - .tileTag = GFXTAG_SYMBOLS_START, - .paletteTag = PALTAG_REEL, - .oam = &sOam_32x32, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = GFXTAG_SYMBOLS_START, + .paletteTag = PALTAG_REEL, + .oam = &sOam_32x32, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelSymbol }; static const struct SpriteTemplate sSpriteTemplate_CoinNumber = { - .tileTag = GFXTAG_NUMBERS_START, - .paletteTag = PALTAG_MISC, - .oam = &sOam_8x16, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = GFXTAG_NUMBERS_START, + .paletteTag = PALTAG_MISC, + .oam = &sOam_8x16, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_CoinNumber }; static const struct SpriteTemplate sSpriteTemplate_ReelBackground = { - .tileTag = GFXTAG_REEL_BG, - .paletteTag = PALTAG_REEL, - .oam = &sOam_64x64, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = GFXTAG_REEL_BG, + .paletteTag = PALTAG_REEL, + .oam = &sOam_64x64, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachu = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_REEL_TIME_PIKACHU, - .oam = &sOam_64x64, - .anims = sAnims_ReelTimePikachu, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_REEL_TIME_PIKACHU, + .oam = &sOam_64x64, + .anims = sAnims_ReelTimePikachu, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimePikachu }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachineAntennae = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_REEL_TIME_MISC, - .oam = &sOam_8x16, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_REEL_TIME_MISC, + .oam = &sOam_8x16, .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachine = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_REEL_TIME_MACHINE, - .oam = &sOam_8x16, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_REEL_TIME_MACHINE, + .oam = &sOam_8x16, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_BrokenReelTimeMachine = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_REEL_TIME_MACHINE, - .oam = &sOam_8x16, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_REEL_TIME_MACHINE, + .oam = &sOam_8x16, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumbers = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_16x16, - .anims = sAnims_ReelTimeNumbers, - .images = sImageTable_ReelTimeNumbers, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_16x16, + .anims = sAnims_ReelTimeNumbers, + .images = sImageTable_ReelTimeNumbers, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimeNumbers }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeShadow = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_16x16, - .anims = sAnims_SingleFrame, - .images = sImageTable_ReelTimeShadow, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_16x16, + .anims = sAnims_SingleFrame, + .images = sImageTable_ReelTimeShadow, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumberGap = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_16x16, - .anims = sAnims_SingleFrame, - .images = sImageTable_ReelTimeNumberGap, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_16x16, + .anims = sAnims_SingleFrame, + .images = sImageTable_ReelTimeNumberGap, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeBolt = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_16x32, - .anims = sAnims_ReelTimeBolt, - .images = sImageTable_ReelTimeBolt, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_16x32, + .anims = sAnims_ReelTimeBolt, + .images = sImageTable_ReelTimeBolt, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimeBolt }; static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachuAura = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_PIKA_AURA, - .oam = &sOam_32x64, - .anims = sAnims_SingleFrame, - .images = sImageTable_ReelTimePikachuAura, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_PIKA_AURA, + .oam = &sOam_32x64, + .anims = sAnims_SingleFrame, + .images = sImageTable_ReelTimePikachuAura, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimePikachuAura }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeExplosion = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_EXPLOSION, - .oam = &sOam_32x32, - .anims = sAnims_ReelTimeExplosion, - .images = sImageTable_ReelTimeExplosion, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_EXPLOSION, + .oam = &sOam_32x32, + .anims = sAnims_ReelTimeExplosion, + .images = sImageTable_ReelTimeExplosion, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimeExplosion }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeDuck = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_8x8, - .anims = sAnims_ReelTimeDuck, - .images = sImageTable_ReelTimeDuck, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_8x8, + .anims = sAnims_ReelTimeDuck, + .images = sImageTable_ReelTimeDuck, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_ReelTimeDuck }; static const struct SpriteTemplate sSpriteTemplate_ReelTimeSmoke = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_16x16, - .anims = sAnims_SingleFrame, - .images = sImageTable_ReelTimeSmoke, - .affineAnims = sAffineAnims_ReelTimeSmoke, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_16x16, + .anims = sAnims_SingleFrame, + .images = sImageTable_ReelTimeSmoke, + .affineAnims = sAffineAnims_ReelTimeSmoke, .callback = SpriteCB_ReelTimeSmoke }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reel = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Time = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Insert = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Stop = { - .tileTag = 18, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 18, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Win = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_64x32, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_64x32, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Lose = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_64x32, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_64x32, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Bonus = { - .tileTag = 19, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 19, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Big = { - .tileTag = 20, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 20, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reg = { - .tileTag = 21, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 21, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_AButton = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_32x32, - .anims = sAnims_DigitalDisplay_AButton, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_32x32, + .anims = sAnims_DigitalDisplay_AButton, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Smoke = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Number = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_16x16, - .anims = sAnims_DigitalDisplay_Number, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_16x16, + .anims = sAnims_DigitalDisplay_Number, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Pokeball = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_DigitalDisplay_Pokeball, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_DigitalDisplay_Pokeball, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_DPad = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_DIG_DISPLAY, - .oam = &sOam_8x8, - .anims = sAnims_DigitalDisplay_DPad, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_DIG_DISPLAY, + .oam = &sOam_8x8, + .anims = sAnims_DigitalDisplay_DPad, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; static const struct SpriteTemplate sSpriteTemplate_PikaPowerBolt = { - .tileTag = 0xFFFF, - .paletteTag = PALTAG_MISC, - .oam = &sOam_8x8, - .anims = sAnims_SingleFrame, - .images = sImageTable_PikaPowerBolt, - .affineAnims = sAffineAnims_PikaPowerBolt, + .tileTag = 0xFFFF, + .paletteTag = PALTAG_MISC, + .oam = &sOam_8x8, + .anims = sAnims_SingleFrame, + .images = sImageTable_PikaPowerBolt, + .affineAnims = sAffineAnims_PikaPowerBolt, .callback = SpriteCB_PikaPowerBolt }; static const struct Subsprite sSubsprites_ReelBackground[] = { { - .x = -64, - .y = -64, + .x = -64, + .y = -64, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), - .tileOffset = 0, - .priority = 3, + .tileOffset = 0, + .priority = 3, }, { - .x = 0, - .y = -64, + .x = 0, + .y = -64, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), - .tileOffset = 0, - .priority = 3, + .tileOffset = 0, + .priority = 3, }, { .x = -64, - .y = 0, + .y = 0, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), - .tileOffset = 0, - .priority = 3, + .tileOffset = 0, + .priority = 3, }, { - .x = 0, - .y = 0, + .x = 0, + .y = 0, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64), - .tileOffset = 0, - .priority = 3, + .tileOffset = 0, + .priority = 3, } }; @@ -5881,52 +5881,52 @@ static const struct SubspriteTable sSubspriteTable_ReelBackground[] = static const struct Subsprite sSubsprites_ReelTimeMachineAntennae[] = { - { - .x = -32, - .y = -12, + { + .x = -32, + .y = -12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 0, + .tileOffset = 0, .priority = 1, }, - { - .x = 0, - .y = -12, + { + .x = 0, + .y = -12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 1, }, - { - .x = -32, - .y = -4, + { + .x = -32, + .y = -4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 8, + .tileOffset = 8, .priority = 1, }, - { - .x = 0, - .y = -4, + { + .x = 0, + .y = -4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, .priority = 1, }, - { - .x = -32, - .y = 4, + { + .x = -32, + .y = 4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 16, .priority = 1, }, - { - .x = 0, - .y = 4, + { + .x = 0, + .y = 4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), - .tileOffset = 20, + .tileOffset = 20, .priority = 1 } }; @@ -5938,25 +5938,25 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeMachineAntennae[] = static const struct Subsprite sSubsprites_ReelTimeMachine[] = { - { - .x = -32, - .y = -20, + { + .x = -32, + .y = -20, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .tileOffset = 0, .priority = 1, }, - { - .x = -32, - .y = 12, + { + .x = -32, + .y = 12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 32, .priority = 1, }, - { - .x = 0, - .y = 12, + { + .x = 0, + .y = 12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 36, @@ -5971,41 +5971,41 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeMachine[] = static const struct Subsprite sSubsprites_BrokenReelTimeMachine[] = { - { - .x = -32, - .y = -24, + { + .x = -32, + .y = -24, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .tileOffset = 0, .priority = 1, }, - { - .x = -32, - .y = 8, + { + .x = -32, + .y = 8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 32, .priority = 1, }, - { - .x = 0, - .y = 8, + { + .x = 0, + .y = 8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 36, .priority = 1, }, - { - .x = -32, - .y = 16, + { + .x = -32, + .y = 16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 40, .priority = 1, }, - { - .x = 0, - .y = 16, + { + .x = 0, + .y = 16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 44, @@ -6020,33 +6020,33 @@ static const struct SubspriteTable sSubspriteTable_BrokenReelTimeMachine[] = static const struct Subsprite sSubsprites_ReelTimeShadow[] = { - { - .x = -32, - .y = -8, + { + .x = -32, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 1, }, - { - .x = 0, - .y = -8, + { + .x = 0, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 1, }, - { - .x = -32, - .y = 0, + { + .x = -32, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 8, .priority = 1, }, - { - .x = 0, - .y = 0, + { + .x = 0, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, @@ -6061,25 +6061,25 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeShadow[] = static const struct Subsprite sSubsprites_ReelTimeNumberGap[] = { - { - .x = -8, - .y = -12, + { + .x = -8, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 1, }, - { - .x = -8, - .y = -4, + { + .x = -8, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 1, }, - { - .x = -8, - .y = 4, + { + .x = -8, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, @@ -6094,41 +6094,41 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeNumberGap[] = static const struct Subsprite sSubsprites_DigitalDisplay_Reel[] = { - { - .x = -32, - .y = -24, + { + .x = -32, + .y = -24, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), .tileOffset = 0, .priority = 3, }, - { - .x = -32, - .y = 8, + { + .x = -32, + .y = 8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 32, .priority = 3, }, - { - .x = 0, - .y = 8, + { + .x = 0, + .y = 8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 36, .priority = 3, }, - { - .x = -32, - .y = 16, + { + .x = -32, + .y = 16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 40, .priority = 3, }, - { - .x = 0, - .y = 16, + { + .x = 0, + .y = 16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 44, @@ -6143,33 +6143,33 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Reel[] = static const struct Subsprite sSubsprites_DigitalDisplay_Time[] = { - { - .x = -32, - .y = -8, + { + .x = -32, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 3, }, - { - .x = 0, - .y = -8, + { + .x = 0, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 3, }, - { - .x = -32, - .y = 0, + { + .x = -32, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 8, .priority = 3, }, - { - .x = 0, - .y = 0, + { + .x = 0, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, @@ -6184,33 +6184,33 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Time[] = static const struct Subsprite sSubsprites_DigitalDisplay_Insert[] = { - { - .x = -32, - .y = -8, + { + .x = -32, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 3, }, - { - .x = 0, - .y = -8, + { + .x = 0, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 3, }, - { - .x = -32, - .y = 0, + { + .x = -32, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 8, .priority = 3, }, - { - .x = 0, - .y = 0, + { + .x = 0, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, @@ -6225,33 +6225,33 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Insert[] = static const struct Subsprite sSubsprites_DigitalDisplay_Unused1[] = { - { - .x = -32, - .y = -8, + { + .x = -32, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 3, }, - { - .x = 0, - .y = -8, + { + .x = 0, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 3, }, - { - .x = -32, - .y = 0, + { + .x = -32, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 8, .priority = 3, }, - { - .x = 0, - .y = 0, + { + .x = 0, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, @@ -6266,49 +6266,49 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Unused1[] = static const struct Subsprite sSubsprites_DigitalDisplay_Win[] = { - { - .x = -32, - .y = -12, + { + .x = -32, + .y = -12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 3, }, - { - .x = 0, - .y = -12, + { + .x = 0, + .y = -12, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 4, .priority = 3, }, - { - .x = -32, - .y = -4, + { + .x = -32, + .y = -4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 8, .priority = 3, }, - { - .x = 0, - .y = -4, + { + .x = 0, + .y = -4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, .priority = 3, }, - { - .x = -32, - .y = 4, + { + .x = -32, + .y = 4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 16, .priority = 3, }, - { - .x = 0, - .y = 4, + { + .x = 0, + .y = 4, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 20, @@ -6324,8 +6324,8 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Win[] = static const struct Subsprite sSubsprites_DigitalDisplay_Smoke[] = { { - .x = -16, - .y = -16, + .x = -16, + .y = -16, .shape = SPRITE_SHAPE(32x32), .size = SPRITE_SIZE(32x32), .tileOffset = 0, @@ -6336,8 +6336,8 @@ static const struct Subsprite sSubsprites_DigitalDisplay_Smoke[] = static const struct Subsprite sSubsprites_DigitalDisplay_Unused2[] = { { - .x = -8, - .y = -8, + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x16), .size = SPRITE_SIZE(16x16), .tileOffset = 16, @@ -6357,97 +6357,97 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Unused2[] = static const struct Subsprite sSubsprites_DigitalDisplay_Pokeball[] = { - { - .x = -24, - .y = -24, + { + .x = -24, + .y = -24, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 0, .priority = 3, }, - { - .x = 8, - -24, + { + .x = 8, + -24, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 4, .priority = 3, }, - { - .x = -24, - .y = -16, + { + .x = -24, + .y = -16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 6, .priority = 3, }, - { - .x = 8, - .y = -16, + { + .x = 8, + .y = -16, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 10, .priority = 3, }, - { - .x = -24, - .y = -8, + { + .x = -24, + .y = -8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 12, .priority = 3, }, - { - .x = 8, - .y = -8, + { + .x = 8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 16, .priority = 3, }, - { - .x = -24, - .y = 0, + { + .x = -24, + .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 18, .priority = 3, }, - { - .x = 8, - .y = 0, + { + .x = 8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 22, .priority = 3, }, - { - .x = -24, - .y = 8, + { + .x = -24, + .y = 8, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 24, .priority = 3, }, - { - .x = 8, - .y = 8, + { + .x = 8, + .y = 8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 28, .priority = 3, }, - { - .x = -24, - .y = 16, + { + .x = -24, + .y = 16, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), .tileOffset = 30, .priority = 3, }, - { - .x = 8, - .y = 16, + { + .x = 8, + .y = 16, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 34, @@ -6462,25 +6462,25 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Pokeball[] = static const struct Subsprite sSubsprites_DigitalDisplay_DPad[] = { - { - .x = -16, - .y = -12, + { + .x = -16, + .y = -12, .shape = SPRITE_SHAPE(32x16), .size = SPRITE_SIZE(32x16), .tileOffset = 0, .priority = 3, }, - { - .x = -16, - .y = 4, + { + .x = -16, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 8, .priority = 3, }, - { - .x = 0, - .y = 4, + { + .x = 0, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 10, @@ -6495,17 +6495,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_DPad[] = static const struct Subsprite sSubsprites_DigitalDisplay_StopS[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 8, @@ -6520,17 +6520,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopS[] = static const struct Subsprite sSubsprites_DigitalDisplay_StopT[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 2, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 10, @@ -6545,17 +6545,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopT[] = static const struct Subsprite sSubsprites_DigitalDisplay_StopO[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 4, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 12, @@ -6570,17 +6570,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopO[] = static const struct Subsprite sSubsprites_DigitalDisplay_StopP[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 6, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 14, @@ -6595,17 +6595,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopP[] = static const struct Subsprite sSubsprites_DigitalDisplay_BonusB[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 8, @@ -6620,17 +6620,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusB[] = static const struct Subsprite sSubsprites_DigitalDisplay_BonusO[] = { - { - .x = -4, - .y = -8, + { + .x = -4, + .y = -8, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 2, .priority = 3, }, - { - .x = -4, - .y = 0, + { + .x = -4, + .y = 0, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 10, @@ -6645,17 +6645,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusO[] = static const struct Subsprite sSubsprites_DigitalDisplay_BonusN[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), - .tileOffset = 3, - .priority = 3, + .tileOffset = 3, + .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 11, @@ -6670,17 +6670,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusN[] = static const struct Subsprite sSubsprites_DigitalDisplay_BonusU[] = { - { - .x = -4, - .y = -8, + { + .x = -4, + .y = -8, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 5, .priority = 3, }, - { - .x = -4, - .y = 0, + { + .x = -4, + .y = 0, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 13, @@ -6695,17 +6695,17 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusU[] = static const struct Subsprite sSubsprites_DigitalDisplay_BonusS[] = { - { - .x = -8, - .y = -8, + { + .x = -8, + .y = -8, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 6, .priority = 3, }, - { - .x = -8, - .y = 0, + { + .x = -8, + .y = 0, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 14, @@ -6720,49 +6720,49 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusS[] = static const struct Subsprite sSubsprites_DigitalDisplay_BigB[] = { - { - .x = -12, - .y = -12, + { + .x = -12, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 3, }, - { - .x = 4, - .y = -12, + { + .x = 4, + .y = -12, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 2, .priority = 3, }, - { - .x = -12, - .y = -4, + { + .x = -12, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 8, .priority = 3, }, - { - .x = 4, - .y = -4, + { + .x = 4, + .y = -4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 10, .priority = 3, }, - { - .x = -12, - .y = 4, + { + .x = -12, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 16, .priority = 3, }, - { - .x = 4, - .y = 4, + { + .x = 4, + .y = 4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 18, @@ -6777,25 +6777,25 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigB[] = static const struct Subsprite sSubsprites_DigitalDisplay_BigI[] = { - { - .x = -8, - .y = -12, + { + .x = -8, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 3, .priority = 3, }, - { - .x = -8, - .y = -4, + { + .x = -8, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 11, .priority = 3, }, - { - .x = -8, - .y = 4, + { + .x = -8, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 19, @@ -6810,49 +6810,49 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigI[] = static const struct Subsprite sSubsprites_DigitalDisplay_BigG[] = { - { - .x = -12, - .y = -12, + { + .x = -12, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 5, .priority = 3, }, - { - .x = 4, - .y = -12, + { + .x = 4, + .y = -12, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 7, .priority = 3, }, - { - .x = -12, - .y = -4, + { + .x = -12, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 13, .priority = 3, }, - { - .x = 4, - .y = -4, + { + .x = 4, + .y = -4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 15, .priority = 3, }, - { - .x = -12, - .y = 4, + { + .x = -12, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 21, .priority = 3, }, - { - .x = 4, - .y = 4, + { + .x = 4, + .y = 4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 23, @@ -6867,49 +6867,49 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigG[] = static const struct Subsprite sSubsprites_DigitalDisplay_RegR[] = { - { - .x = -12, - .y = -12, + { + .x = -12, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 0, .priority = 3, }, - { - .x = 4, - .y = -12, + { + .x = 4, + .y = -12, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 2, .priority = 3, }, - { - .x = -12, - .y = -4, + { + .x = -12, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 8, .priority = 3, }, - { - .x = 4, - .y = -4, + { + .x = 4, + .y = -4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 10, .priority = 3, }, - { - .x = -12, - .y = 4, + { + .x = -12, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 16, .priority = 3, }, - { - .x = 4, - .y = 4, + { + .x = 4, + .y = 4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 18, @@ -6924,25 +6924,25 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_RegR[] = static const struct Subsprite sSubsprites_DigitalDisplay_RegE[] = { - { - .x = -8, - .y = -12, + { + .x = -8, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 3, .priority = 3, }, - { - .x = -8, - .y = -4, + { + .x = -8, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 11, .priority = 3, }, - { - .x = -8, - .y = 4, + { + .x = -8, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 19, @@ -6957,49 +6957,49 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_RegE[] = static const struct Subsprite sSubsprites_DigitalDisplay_RegG[] = { - { - .x = -12, - .y = -12, + { + .x = -12, + .y = -12, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 5, .priority = 3, }, - { - .x = 4, - .y = -12, + { + .x = 4, + .y = -12, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 7, .priority = 3, }, - { - .x = -12, - .y = -4, + { + .x = -12, + .y = -4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 13, .priority = 3, }, - { - .x = 4, - .y = -4, + { + .x = 4, + .y = -4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 15, .priority = 3, }, - { - .x = -12, - .y = 4, + { + .x = -12, + .y = 4, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 21, .priority = 3, }, - { - .x = 4, - .y = 4, + { + .x = 4, + .y = 4, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), .tileOffset = 23, @@ -7102,7 +7102,7 @@ static const struct SpriteSheet sSlotMachineSpriteSheets[22] = static const u8 *const sReelBackground_Tilemap = gSlotMachineReelBackground_Tilemap; -static const u16 sUnused[] = +static const u16 sUnused[] = { 0x6F7B, 0x6968, @@ -7141,9 +7141,9 @@ static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES] = }; static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES] = { - [MATCH_MIDDLE_ROW] = 74, - [MATCH_TOP_ROW] = 75, - [MATCH_BOTTOM_ROW] = 76, + [MATCH_MIDDLE_ROW] = 74, + [MATCH_TOP_ROW] = 75, + [MATCH_BOTTOM_ROW] = 76, [MATCH_NWSE_DIAG] = 78, // Diag colors flipped for some reason [MATCH_NESW_DIAG] = 77 // Doesn't matter as both are identical }; diff --git a/src/start_menu.c b/src/start_menu.c index 3fcb5aa7bf8a..9f271b890a05 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -198,12 +198,12 @@ static const struct WindowTemplate sWindowTemplates_LinkBattleSave[] = }; static const struct WindowTemplate sSaveInfoWindowTemplate = { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 1, - .width = 14, - .height = 10, - .paletteNum = 15, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 14, + .height = 10, + .paletteNum = 15, .baseBlock = 8 }; diff --git a/src/strings.c b/src/strings.c index e1a6d2efbc05..bebe8901103f 100644 --- a/src/strings.c +++ b/src/strings.c @@ -658,7 +658,7 @@ const u8 gText_Satisfied[] = _("Satisfied"); const u8 gText_Dissatisfied[] = _("Dissatisfied"); const u8 gText_DeepSeaTooth[] = _("DEEPSEATOOTH"); const u8 gText_DeepSeaScale[] = _("DEEPSEASCALE"); -const u8 gText_BlueFlute2[] = _("BLUE FLUTE"); +const u8 gText_BlueFlute2[] = _("BLUE FLUTE"); const u8 gText_YellowFlute2[] = _("YELLOW FLUTE"); const u8 gText_RedFlute2[] = _("RED FLUTE"); const u8 gText_WhiteFlute2[] = _("WHITE FLUTE"); diff --git a/src/title_screen.c b/src/title_screen.c index ef0f3a0da32c..3b60146b976b 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -751,7 +751,7 @@ static void Task_TitleScreenPhase3(u8 taskId) FadeOutBGM(4); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); SetMainCallback2(CB2_GoToBerryFixScreen); - } + } else { SetGpuReg(REG_OFFSET_BG2Y_L, 0); diff --git a/src/trade.c b/src/trade.c index 1305b4336a98..1ed0b93e91d1 100644 --- a/src/trade.c +++ b/src/trade.c @@ -773,8 +773,8 @@ static void CB2_ReturnToTradeMenu(void) else sTradeMenuData->cursorPosition = gLastViewedMonIndex + PARTY_SIZE; - sTradeMenuData->cursorSpriteId = CreateSprite(&sSpriteTemplate_Cursor, - sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][0] * 8 + 32, + sTradeMenuData->cursorSpriteId = CreateSprite(&sSpriteTemplate_Cursor, + sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][0] * 8 + 32, sTradeMonSpriteCoords[sTradeMenuData->cursorPosition][1] * 8, 2); gMain.state = 16; break; @@ -1545,8 +1545,8 @@ static bool32 CheckMonsBeforeTrade(void) aliveMons[i] = sTradeMenuData->isLiveMon[TRADE_PLAYER][i]; } - switch (CheckValidityOfTradeMons(aliveMons, sTradeMenuData->partyCounts[TRADE_PLAYER], - sTradeMenuData->cursorPosition, + switch (CheckValidityOfTradeMons(aliveMons, sTradeMenuData->partyCounts[TRADE_PLAYER], + sTradeMenuData->cursorPosition, sTradeMenuData->partnerCursorPosition)) { case PLAYER_MON_INVALID: @@ -1588,7 +1588,7 @@ static void ConfirmOrCancelTrade(void) } } -// Only when choosing Yes to cancel, when No is chosen all are redrawn anyway +// Only when choosing Yes to cancel, when No is chosen all are redrawn anyway static void RestoreNicknamesCoveredByYesNo(void) { int i; @@ -3612,7 +3612,7 @@ static bool8 AnimateTradeSequenceCable(void) case TS_STATE_CROSSING_MON_PICS_MOVE: gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 -= 3; gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 += 3; - if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -DISPLAY_HEIGHT + if (gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 < -DISPLAY_HEIGHT && gSprites[sTradeData->monSpriteIds[TRADE_PLAYER]].y2 >= -DISPLAY_HEIGHT - 3) { PlaySE(SE_WARP_IN); @@ -3979,7 +3979,7 @@ static bool8 AnimateTradeSequenceWireless(void) BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG2); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 4)); - + // Start wireless signal effect CreateTask(Task_AnimateWirelessSignal, 5); sTradeData->state++; @@ -4264,9 +4264,9 @@ static bool8 AnimateTradeSequenceWireless(void) case TS_STATE_POKEBALL_ARRIVE_WAIT: if (gSprites[sTradeData->bouncingPokeballSpriteId].callback == SpriteCallbackDummy) { - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], - gMonSpritesGfxPtr->sprites.ptr[3], - sTradeData->monSpecies[TRADE_PARTNER], + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], + gMonSpritesGfxPtr->sprites.ptr[3], + sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); sTradeData->state++; } diff --git a/src/trainer_card.c b/src/trainer_card.c index 1ec519c90edb..c11ee83c034a 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -281,31 +281,31 @@ static const u8 sTrainerPicOffset[2][GENDER_COUNT][2] = { // Kanto { - [MALE] = {13, 4}, + [MALE] = {13, 4}, [FEMALE] = {13, 4} }, // Hoenn { - [MALE] = {1, 0}, + [MALE] = {1, 0}, [FEMALE] = {1, 0} }, }; -static const u8 sTrainerPicFacilityClass[][GENDER_COUNT] = +static const u8 sTrainerPicFacilityClass[][GENDER_COUNT] = { - [CARD_TYPE_FRLG] = + [CARD_TYPE_FRLG] = { - [MALE] = FACILITY_CLASS_RED, + [MALE] = FACILITY_CLASS_RED, [FEMALE] = FACILITY_CLASS_LEAF - }, - [CARD_TYPE_RS] = + }, + [CARD_TYPE_RS] = { - [MALE] = FACILITY_CLASS_RS_BRENDAN, + [MALE] = FACILITY_CLASS_RS_BRENDAN, [FEMALE] = FACILITY_CLASS_RS_MAY - }, - [CARD_TYPE_EMERALD] = + }, + [CARD_TYPE_EMERALD] = { - [MALE] = FACILITY_CLASS_BRENDAN, + [MALE] = FACILITY_CLASS_BRENDAN, [FEMALE] = FACILITY_CLASS_MAY } }; @@ -1201,10 +1201,10 @@ static void PrintHofDebutTimeOnCard(void) PrintStatOnBackOfCard(0, gText_HallOfFameDebut, sData->textHofTime, sTrainerCardStatColors); } -static const u8 *const sLinkBattleTexts[] = +static const u8 *const sLinkBattleTexts[] = { - [CARD_TYPE_FRLG] = gText_LinkBattles, - [CARD_TYPE_RS] = gText_LinkCableBattles, + [CARD_TYPE_FRLG] = gText_LinkBattles, + [CARD_TYPE_RS] = gText_LinkCableBattles, [CARD_TYPE_EMERALD] = gText_LinkBattles }; diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 3ce90c430992..70c2dd9d5d10 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -261,16 +261,16 @@ static const struct ObjectEventTemplate sTrainerObjectEventTemplate = .trainerType = TRAINER_TYPE_NORMAL, }; -static const u32 sNextFloorMapNum[NUM_TRAINER_HILL_FLOORS] = +static const u32 sNextFloorMapNum[NUM_TRAINER_HILL_FLOORS] = { - MAP_NUM(TRAINER_HILL_2F), - MAP_NUM(TRAINER_HILL_3F), - MAP_NUM(TRAINER_HILL_4F), + MAP_NUM(TRAINER_HILL_2F), + MAP_NUM(TRAINER_HILL_3F), + MAP_NUM(TRAINER_HILL_4F), MAP_NUM(TRAINER_HILL_ROOF) }; -static const u8 sTrainerPartySlots[][PARTY_SIZE / 2] = +static const u8 sTrainerPartySlots[][PARTY_SIZE / 2] = { - {0, 1, 2}, + {0, 1, 2}, {3, 4, 5} }; diff --git a/src/tv.c b/src/tv.c index 14a0dc53ff0a..45292393385f 100644 --- a/src/tv.c +++ b/src/tv.c @@ -199,31 +199,31 @@ static const struct { { .species = SPECIES_SEEDOT, .moves = {MOVE_BIDE, MOVE_HARDEN, MOVE_LEECH_SEED}, - .level = 3, + .level = 3, .location = MAP_NUM(ROUTE102) }, { .species = SPECIES_NUZLEAF, .moves = {MOVE_HARDEN, MOVE_GROWTH, MOVE_NATURE_POWER, MOVE_LEECH_SEED}, - .level = 15, + .level = 15, .location = MAP_NUM(ROUTE114), }, { .species = SPECIES_SEEDOT, .moves = {MOVE_HARDEN, MOVE_GROWTH, MOVE_NATURE_POWER, MOVE_LEECH_SEED}, - .level = 13, + .level = 13, .location = MAP_NUM(ROUTE117), }, { .species = SPECIES_SEEDOT, .moves = {MOVE_GIGA_DRAIN, MOVE_FRUSTRATION, MOVE_SOLAR_BEAM, MOVE_LEECH_SEED}, - .level = 25, + .level = 25, .location = MAP_NUM(ROUTE120), }, { .species = SPECIES_SKITTY, .moves = {MOVE_GROWL, MOVE_TACKLE, MOVE_TAIL_WHIP, MOVE_ATTRACT}, - .level = 8, + .level = 8, .location = MAP_NUM(ROUTE116), } }; @@ -648,50 +648,50 @@ static const u8 *const sTVWhatsNo1InHoennTodayTextGroup[] = { gTVWhatsNo1InHoennTodayText08 }; -static const u8 *const sTVSecretBaseSecretsTextGroup[SBSECRETS_NUM_STATES] = +static const u8 *const sTVSecretBaseSecretsTextGroup[SBSECRETS_NUM_STATES] = { - [SBSECRETS_STATE_INTRO] = TVSecretBaseSecrets_Text_Intro, + [SBSECRETS_STATE_INTRO] = TVSecretBaseSecrets_Text_Intro, [SBSECRETS_STATE_DO_NEXT1] = TVSecretBaseSecrets_Text_WhatWillPlayerDoNext1, [SBSECRETS_STATE_DO_NEXT2] = TVSecretBaseSecrets_Text_WhatWillPlayerDoNext2, [SBSECRETS_STATE_TOOK_X_STEPS] = TVSecretBaseSecrets_Text_TookXStepsBeforeLeaving, - [SBSECRETS_STATE_BASE_INTEREST_LOW] = TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer, - [SBSECRETS_STATE_BASE_INTEREST_MED] = TVSecretBaseSecrets_Text_PlayerEnjoyedBase, + [SBSECRETS_STATE_BASE_INTEREST_LOW] = TVSecretBaseSecrets_Text_BaseFailedToInterestPlayer, + [SBSECRETS_STATE_BASE_INTEREST_MED] = TVSecretBaseSecrets_Text_PlayerEnjoyedBase, [SBSECRETS_STATE_BASE_INTEREST_HIGH] = TVSecretBaseSecrets_Text_PlayerHugeFanOfBase, - [SBSECRETS_STATE_OUTRO] = TVSecretBaseSecrets_Text_Outro, - [SBSECRETS_STATE_NOTHING_USED1] = TVSecretBaseSecrets_Text_StoppedMoving1, - [SBSECRETS_STATE_NOTHING_USED2] = TVSecretBaseSecrets_Text_StoppedMoving2, - [SBSECRETS_STATE_USED_CHAIR] = TVSecretBaseSecrets_Text_UsedChair, - [SBSECRETS_STATE_USED_BALLOON] = TVSecretBaseSecrets_Text_UsedBalloon, - [SBSECRETS_STATE_USED_TENT] = TVSecretBaseSecrets_Text_UsedTent, - [SBSECRETS_STATE_USED_PLANT] = TVSecretBaseSecrets_Text_UsedPlant, - [SBSECRETS_STATE_USED_GOLD_SHIELD] = TVSecretBaseSecrets_Text_UsedGoldShield, - [SBSECRETS_STATE_USED_SILVER_SHIELD] = TVSecretBaseSecrets_Text_UsedSilverShield, - [SBSECRETS_STATE_USED_GLASS_ORNAMENT] = TVSecretBaseSecrets_Text_UsedGlassOrnament, - [SBSECRETS_STATE_USED_TV] = TVSecretBaseSecrets_Text_UsedTV, - [SBSECRETS_STATE_USED_MUD_BALL] = TVSecretBaseSecrets_Text_UsedMudBall, - [SBSECRETS_STATE_USED_BAG] = TVSecretBaseSecrets_Text_UsedBag, - [SBSECRETS_STATE_USED_CUSHION] = TVSecretBaseSecrets_Text_UsedCushion, - [SBSECRETS_STATE_HIT_CUSHION] = TVSecretBaseSecrets_Text_HitCushion, - [SBSECRETS_STATE_HUGGED_CUSHION] = TVSecretBaseSecrets_Text_HuggedCushion, - [SBSECRETS_STATE_BATTLED_WON] = TVSecretBaseSecrets_Text_BattledWon, - [SBSECRETS_STATE_BATTLED_LOST] = TVSecretBaseSecrets_Text_BattledLost, - [SBSECRETS_STATE_DECLINED_BATTLE] = TVSecretBaseSecrets_Text_DeclinedBattle, - [SBSECRETS_STATE_USED_POSTER] = TVSecretBaseSecrets_Text_UsedPoster, - [SBSECRETS_STATE_USED_NOTE_MAT] = TVSecretBaseSecrets_Text_UsedNoteMat, - [SBSECRETS_STATE_BATTLED_DRAW] = TVSecretBaseSecrets_Text_BattledDraw, - [SBSECRETS_STATE_USED_SPIN_MAT] = TVSecretBaseSecrets_Text_UsedSpinMat, - [SBSECRETS_STATE_USED_SAND_ORNAMENT] = TVSecretBaseSecrets_Text_UsedSandOrnament, - [SBSECRETS_STATE_USED_DESK] = TVSecretBaseSecrets_Text_UsedDesk, - [SBSECRETS_STATE_USED_BRICK] = TVSecretBaseSecrets_Text_UsedBrick, - [SBSECRETS_STATE_USED_SOLID_BOARD] = TVSecretBaseSecrets_Text_UsedSolidBoard, - [SBSECRETS_STATE_USED_FENCE] = TVSecretBaseSecrets_Text_UsedFence, - [SBSECRETS_STATE_USED_GLITTER_MAT] = TVSecretBaseSecrets_Text_UsedGlitterMat, - [SBSECRETS_STATE_USED_TIRE] = TVSecretBaseSecrets_Text_UsedTire, - [SBSECRETS_STATE_USED_STAND] = TVSecretBaseSecrets_Text_UsedStand, + [SBSECRETS_STATE_OUTRO] = TVSecretBaseSecrets_Text_Outro, + [SBSECRETS_STATE_NOTHING_USED1] = TVSecretBaseSecrets_Text_StoppedMoving1, + [SBSECRETS_STATE_NOTHING_USED2] = TVSecretBaseSecrets_Text_StoppedMoving2, + [SBSECRETS_STATE_USED_CHAIR] = TVSecretBaseSecrets_Text_UsedChair, + [SBSECRETS_STATE_USED_BALLOON] = TVSecretBaseSecrets_Text_UsedBalloon, + [SBSECRETS_STATE_USED_TENT] = TVSecretBaseSecrets_Text_UsedTent, + [SBSECRETS_STATE_USED_PLANT] = TVSecretBaseSecrets_Text_UsedPlant, + [SBSECRETS_STATE_USED_GOLD_SHIELD] = TVSecretBaseSecrets_Text_UsedGoldShield, + [SBSECRETS_STATE_USED_SILVER_SHIELD] = TVSecretBaseSecrets_Text_UsedSilverShield, + [SBSECRETS_STATE_USED_GLASS_ORNAMENT] = TVSecretBaseSecrets_Text_UsedGlassOrnament, + [SBSECRETS_STATE_USED_TV] = TVSecretBaseSecrets_Text_UsedTV, + [SBSECRETS_STATE_USED_MUD_BALL] = TVSecretBaseSecrets_Text_UsedMudBall, + [SBSECRETS_STATE_USED_BAG] = TVSecretBaseSecrets_Text_UsedBag, + [SBSECRETS_STATE_USED_CUSHION] = TVSecretBaseSecrets_Text_UsedCushion, + [SBSECRETS_STATE_HIT_CUSHION] = TVSecretBaseSecrets_Text_HitCushion, + [SBSECRETS_STATE_HUGGED_CUSHION] = TVSecretBaseSecrets_Text_HuggedCushion, + [SBSECRETS_STATE_BATTLED_WON] = TVSecretBaseSecrets_Text_BattledWon, + [SBSECRETS_STATE_BATTLED_LOST] = TVSecretBaseSecrets_Text_BattledLost, + [SBSECRETS_STATE_DECLINED_BATTLE] = TVSecretBaseSecrets_Text_DeclinedBattle, + [SBSECRETS_STATE_USED_POSTER] = TVSecretBaseSecrets_Text_UsedPoster, + [SBSECRETS_STATE_USED_NOTE_MAT] = TVSecretBaseSecrets_Text_UsedNoteMat, + [SBSECRETS_STATE_BATTLED_DRAW] = TVSecretBaseSecrets_Text_BattledDraw, + [SBSECRETS_STATE_USED_SPIN_MAT] = TVSecretBaseSecrets_Text_UsedSpinMat, + [SBSECRETS_STATE_USED_SAND_ORNAMENT] = TVSecretBaseSecrets_Text_UsedSandOrnament, + [SBSECRETS_STATE_USED_DESK] = TVSecretBaseSecrets_Text_UsedDesk, + [SBSECRETS_STATE_USED_BRICK] = TVSecretBaseSecrets_Text_UsedBrick, + [SBSECRETS_STATE_USED_SOLID_BOARD] = TVSecretBaseSecrets_Text_UsedSolidBoard, + [SBSECRETS_STATE_USED_FENCE] = TVSecretBaseSecrets_Text_UsedFence, + [SBSECRETS_STATE_USED_GLITTER_MAT] = TVSecretBaseSecrets_Text_UsedGlitterMat, + [SBSECRETS_STATE_USED_TIRE] = TVSecretBaseSecrets_Text_UsedTire, + [SBSECRETS_STATE_USED_STAND] = TVSecretBaseSecrets_Text_UsedStand, [SBSECRETS_STATE_USED_BREAKABLE_DOOR] = TVSecretBaseSecrets_Text_BrokeDoor, - [SBSECRETS_STATE_USED_DOLL] = TVSecretBaseSecrets_Text_UsedDoll, - [SBSECRETS_STATE_USED_SLIDE] = TVSecretBaseSecrets_Text_UsedSlide, - [SBSECRETS_STATE_DECLINED_SLIDE] = TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown, + [SBSECRETS_STATE_USED_DOLL] = TVSecretBaseSecrets_Text_UsedDoll, + [SBSECRETS_STATE_USED_SLIDE] = TVSecretBaseSecrets_Text_UsedSlide, + [SBSECRETS_STATE_DECLINED_SLIDE] = TVSecretBaseSecrets_Text_UsedSlideButDidntGoDown, [SBSECRETS_STATE_USED_JUMP_MAT] = TVSecretBaseSecrets_Text_UsedJumpMat }; @@ -722,8 +722,8 @@ static const u8 *const sTVInSearchOfTrainersTextGroup[] = { }; // Secret Base Secrets TV Show states for actions that can be taken in a secret base -// The flags that determine whether or not the action was taken are commented -const u8 sTVSecretBaseSecretsActions[NUM_SECRET_BASE_FLAGS] = +// The flags that determine whether or not the action was taken are commented +const u8 sTVSecretBaseSecretsActions[NUM_SECRET_BASE_FLAGS] = { SBSECRETS_STATE_USED_CHAIR, // SECRET_BASE_USED_CHAIR SBSECRETS_STATE_USED_BALLOON, // SECRET_BASE_USED_BALLOON @@ -817,7 +817,7 @@ u8 FindAnyTVShowOnTheAir(void) if (slot == 0xFF) return 0xFF; - if (gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE + if (gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE && gSaveBlock1Ptr->tvShows[slot].common.kind == TVSHOW_MASS_OUTBREAK) return FindFirstActiveTVShowThatIsNotAMassOutbreak(); @@ -837,7 +837,7 @@ 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) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_COVE_LILY_MOTEL_1F) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_COVE_LILY_MOTEL_1F)) { // NPC in Lilycove Hotel is always watching TV @@ -891,8 +891,8 @@ static u8 FindFirstActiveTVShowThatIsNotAMassOutbreak(void) for (i = 0; i < ARRAY_COUNT(gSaveBlock1Ptr->tvShows) - 1; i++) { - if (gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_OFF_AIR - && gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_MASS_OUTBREAK + if (gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_OFF_AIR + && gSaveBlock1Ptr->tvShows[i].common.kind != TVSHOW_MASS_OUTBREAK && gSaveBlock1Ptr->tvShows[i].common.active == TRUE) return i; } @@ -945,7 +945,7 @@ void GabbyAndTyBeforeInterview(void) gSaveBlock1Ptr->gabbyAndTyData.battleNum++; } gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn = gBattleResults.playerMonWasDamaged; - + if (gBattleResults.playerFaintCounter != 0) gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon = TRUE; else @@ -2344,7 +2344,7 @@ bool8 ShouldHideFanClubInterviewer(void) if (gSaveBlock1Ptr->linkBattleRecords.entries[0].name[0] == EOS) return TRUE; - + return FALSE; } @@ -2603,8 +2603,8 @@ static u8 FindAnyPokeNewsOnTheAir(void) for (i = 0; i < POKE_NEWS_COUNT; i++) { - if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE - && gSaveBlock1Ptr->pokeNews[i].state == 1 + if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE + && gSaveBlock1Ptr->pokeNews[i].state == 1 && gSaveBlock1Ptr->pokeNews[i].days < 3) return i; } @@ -2814,8 +2814,8 @@ static bool8 IsRecordMixShowAlreadySpawned(u8 kind, bool8 delete) playerId = GetPlayerIDAsU32(); for (i = NUM_NORMAL_TVSHOW_SLOTS; i < LAST_TVSHOW_IDX; i++) { - if (shows[i].common.kind == kind - && (playerId & 0xFF) == shows[i].common.trainerIdLo + if (shows[i].common.kind == kind + && (playerId & 0xFF) == shows[i].common.trainerIdLo && ((playerId >> 8) & 0xFF) == shows[i].common.trainerIdHi) { if (delete == TRUE) @@ -3139,7 +3139,7 @@ static void GetRandomWordFromShow(TVShow *show) u8 i; i = Random() % ARRAY_COUNT(show->fanclubLetter.words); - + // From random point, get first non-empty word while (TRUE) { @@ -3448,7 +3448,7 @@ void ReceiveTvShowsData(void *src, u32 size, u8 playersLinkId) else if (version == VERSION_EMERALD && gLinkPlayers[i].language == LANGUAGE_JAPANESE) TranslateJapaneseEmeraldShows((*rmBuffer)[i]); } - + // Position player's TV shows in argument list depending on link id switch (playersLinkId) { @@ -3537,7 +3537,7 @@ static bool8 TryMixTVShow(TVShow *dest[TV_SHOWS_COUNT], TVShow *src[TV_SHOWS_COU success = TryMixOutbreakTVShow(&tv1[sCurTVShowSlot], &tv2[sTVShowMixingCurSlot], idx); break; } - + // Show was mixed, delete from array if (success == TRUE) { @@ -3551,7 +3551,7 @@ static bool8 TryMixNormalTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; @@ -3568,11 +3568,11 @@ static bool8 TryMixRecordMixTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == src->common.srcTrainerIdLo + if ((linkTrainerId & 0xFF) == src->common.srcTrainerIdLo && ((linkTrainerId >> 8) & 0xFF) == src->common.srcTrainerIdHi) return FALSE; - if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; @@ -3589,7 +3589,7 @@ static bool8 TryMixOutbreakTVShow(TVShow *dest, TVShow *src, u8 idx) { u32 linkTrainerId = GetLinkPlayerTrainerId(idx); - if ((linkTrainerId & 0xFF) == src->common.trainerIdLo + if ((linkTrainerId & 0xFF) == src->common.trainerIdLo && ((linkTrainerId >> 8) & 0xFF) == src->common.trainerIdHi) return FALSE; @@ -3825,7 +3825,7 @@ void ReceivePokeNewsData(void *src, u32 size, u8 playersLinkId) memcpy((*rmBuffer2)[i], src + i * size, sizeof((*rmBuffer2)[i])); rmBuffer = rmBuffer2; - + // Position player's PokeNews in argument list depending on link id switch (playersLinkId) { @@ -4018,7 +4018,7 @@ void SanitizeTVShowsForRuby(TVShow *shows) { if (curShow->bravoTrainerTower.kind == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE) { - if ((curShow->bravoTrainerTower.language == LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage != LANGUAGE_JAPANESE) + if ((curShow->bravoTrainerTower.language == LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage != LANGUAGE_JAPANESE) || (curShow->bravoTrainerTower.language != LANGUAGE_JAPANESE && curShow->bravoTrainerTower.pokemonNameLanguage == LANGUAGE_JAPANESE)) memset(curShow, 0, sizeof(TVShow)); } @@ -4887,7 +4887,7 @@ static void DoTVShowPokemonNewsMassOutbreak(void) ShowFieldMessage(sTVMassOutbreakTextGroup[sTVShowState]); } -// TV Show that plays after a Link Contest. +// TV Show that plays after a Link Contest. // First talks about the winner and something they did, then about a losing player and something they did // The show is only generated when the player wins, but can be record mixed to other games // Each state buffers any needed data for a message to print from sTVContestLiveUpdatesTextGroup diff --git a/src/union_room.c b/src/union_room.c index 8d02a260d93a..03f7fc02b51e 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -61,13 +61,13 @@ enum { UR_STATE_CHECK_SELECTING_MON, UR_STATE_MAIN, UR_STATE_DO_SOMETHING_PROMPT, - UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT, + UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT, UR_STATE_DO_SOMETHING_PROMPT_2, UR_STATE_PRINT_MSG, UR_STATE_HANDLE_ACTIVITY_REQUEST, - UR_STATE_DECLINE_ACTIVITY_REQUEST, + UR_STATE_DECLINE_ACTIVITY_REQUEST, UR_STATE_PLAYER_CONTACTED_YOU, - UR_STATE_RECV_CONTACT_DATA, + UR_STATE_RECV_CONTACT_DATA, UR_STATE_PRINT_START_ACTIVITY_MSG, UR_STATE_START_ACTIVITY_LINK, UR_STATE_START_ACTIVITY_WAIT_FOR_LINK, @@ -80,7 +80,7 @@ enum { UR_STATE_ACCEPT_CHAT_REQUEST, UR_STATE_WAIT_FOR_START_MENU, UR_STATE_INTERACT_WITH_PLAYER, - UR_STATE_TRY_COMMUNICATING, + UR_STATE_TRY_COMMUNICATING, UR_STATE_PRINT_AND_EXIT, UR_STATE_SEND_ACTIVITY_REQUEST, UR_STATE_TRAINER_APPEARS_BUSY, @@ -94,15 +94,15 @@ enum { UR_STATE_CANCEL_REQUEST_PRINT_MSG, UR_STATE_CANCEL_REQUEST_RESTART_LINK, UR_STATE_COMMUNICATING_WAIT_FOR_DATA, - UR_STATE_WAIT_FOR_CONTACT_DATA, + UR_STATE_WAIT_FOR_CONTACT_DATA, UR_STATE_PRINT_CARD_INFO, UR_STATE_WAIT_FINISH_READING_CARD, UR_STATE_INTERACT_WITH_ATTENDANT, - UR_STATE_REGISTER_PROMPT, + UR_STATE_REGISTER_PROMPT, UR_STATE_CANCEL_REGISTRATION_PROMPT, UR_STATE_CHECK_TRADING_BOARD, UR_STATE_TRADING_BOARD_LOAD, - UR_STATE_REGISTER_PROMPT_HANDLE_INPUT, + UR_STATE_REGISTER_PROMPT_HANDLE_INPUT, UR_STATE_TRADING_BOARD_HANDLE_INPUT, UR_STATE_TRADE_PROMPT, UR_STATE_TRADE_SELECT_MON, @@ -110,7 +110,7 @@ enum { UR_STATE_REGISTER_REQUEST_TYPE, UR_STATE_REGISTER_SELECT_MON_FADE, UR_STATE_REGISTER_SELECT_MON, - UR_STATE_REGISTER_COMPLETE, + UR_STATE_REGISTER_COMPLETE, UR_STATE_CANCEL_REGISTRATION, }; @@ -2485,8 +2485,8 @@ static void Task_RunUnionRoom(u8 taskId) uroom->state = UR_STATE_CHECK_SELECTING_MON; break; case UR_STATE_CHECK_SELECTING_MON: - if ((GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_REGISTER - || GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_TRADE) + if ((GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_REGISTER + || GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_TRADE) && sUnionRoomTrade.state != URTRADE_STATE_NONE) { id = GetCursorSelectionMonId(); @@ -2671,10 +2671,10 @@ static void Task_RunUnionRoom(u8 taskId) ScheduleFieldMessageWithFollowupState(UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT, sHiDoSomethingTexts[id][playerGender]); break; case UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT: - input = ListMenuHandler_AllItemsAvailable(&uroom->textState, - &uroom->topListMenuWindowId, - &uroom->topListMenuId, - &sWindowTemplate_InviteToActivity, + input = ListMenuHandler_AllItemsAvailable(&uroom->textState, + &uroom->topListMenuWindowId, + &uroom->topListMenuId, + &sWindowTemplate_InviteToActivity, &sListMenuTemplate_InviteToActivity); if (input != -1) { @@ -3028,10 +3028,10 @@ static void Task_RunUnionRoom(u8 taskId) uroom->state = UR_STATE_REGISTER_PROMPT_HANDLE_INPUT; break; case UR_STATE_REGISTER_PROMPT_HANDLE_INPUT: - input = ListMenuHandler_AllItemsAvailable(&uroom->textState, - &uroom->tradeBoardSelectWindowId, - &uroom->tradeBoardDetailsWindowId, - &sWindowTemplate_RegisterForTrade, + input = ListMenuHandler_AllItemsAvailable(&uroom->textState, + &uroom->tradeBoardSelectWindowId, + &uroom->tradeBoardDetailsWindowId, + &sWindowTemplate_RegisterForTrade, &sListMenuTemplate_RegisterForTrade); if (input != -1) { @@ -3067,10 +3067,10 @@ static void Task_RunUnionRoom(u8 taskId) } break; case UR_STATE_REGISTER_REQUEST_TYPE: - input = ListMenuHandler_AllItemsAvailable(&uroom->textState, - &uroom->tradeBoardSelectWindowId, - &uroom->tradeBoardDetailsWindowId, - &gUnknown_082F0294, + input = ListMenuHandler_AllItemsAvailable(&uroom->textState, + &uroom->tradeBoardSelectWindowId, + &uroom->tradeBoardDetailsWindowId, + &gUnknown_082F0294, &sMenuTemplate_TradingBoardRequestType); if (input != -1) { diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 2d1274f6ee22..1ca414d7975c 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -166,7 +166,7 @@ void CB2_UnionRoomBattle(void) case 4: if (GetBlockReceivedStatus() == 3) { - if (gBlockRecvBuffer[0][0] == (ACTIVITY_ACCEPT | IN_UNION_ROOM) + if (gBlockRecvBuffer[0][0] == (ACTIVITY_ACCEPT | IN_UNION_ROOM) && gBlockRecvBuffer[1][0] == (ACTIVITY_ACCEPT | IN_UNION_ROOM)) { BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 3167563adeb4..577784300229 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -310,11 +310,11 @@ static void (*const sChatMainFunctions[])(void) = { [CHAT_FUNC_SAVE_AND_EXIT] = Chat_SaveAndExit }; -static const u8 sKeyboardPageMaxRow[UNION_ROOM_KB_PAGE_COUNT] = +static const u8 sKeyboardPageMaxRow[UNION_ROOM_KB_PAGE_COUNT] = { - [UNION_ROOM_KB_PAGE_UPPER] = 9, - [UNION_ROOM_KB_PAGE_LOWER] = 9, - [UNION_ROOM_KB_PAGE_EMOJI] = 9, + [UNION_ROOM_KB_PAGE_UPPER] = 9, + [UNION_ROOM_KB_PAGE_LOWER] = 9, + [UNION_ROOM_KB_PAGE_EMOJI] = 9, [UNION_ROOM_KB_PAGE_REGISTER] = 9 }; @@ -466,45 +466,45 @@ static const u8 sCaseToggleTable[256] = { }; // Excludes UNION_ROOM_KB_PAGE_REGISTER, the text for which is chosen by the player -static const u8 *const sUnionRoomKeyboardText[UNION_ROOM_KB_PAGE_COUNT - 1][UNION_ROOM_KB_ROW_COUNT] = -{ - [UNION_ROOM_KB_PAGE_UPPER] = - { - gText_UnionRoomChatKeyboard_ABCDE, - gText_UnionRoomChatKeyboard_FGHIJ, - gText_UnionRoomChatKeyboard_KLMNO, - gText_UnionRoomChatKeyboard_PQRST, - gText_UnionRoomChatKeyboard_UVWXY, - gText_UnionRoomChatKeyboard_Z, - gText_UnionRoomChatKeyboard_01234Upper, - gText_UnionRoomChatKeyboard_56789Upper, - gText_UnionRoomChatKeyboard_PunctuationUpper, +static const u8 *const sUnionRoomKeyboardText[UNION_ROOM_KB_PAGE_COUNT - 1][UNION_ROOM_KB_ROW_COUNT] = +{ + [UNION_ROOM_KB_PAGE_UPPER] = + { + gText_UnionRoomChatKeyboard_ABCDE, + gText_UnionRoomChatKeyboard_FGHIJ, + gText_UnionRoomChatKeyboard_KLMNO, + gText_UnionRoomChatKeyboard_PQRST, + gText_UnionRoomChatKeyboard_UVWXY, + gText_UnionRoomChatKeyboard_Z, + gText_UnionRoomChatKeyboard_01234Upper, + gText_UnionRoomChatKeyboard_56789Upper, + gText_UnionRoomChatKeyboard_PunctuationUpper, gText_UnionRoomChatKeyboard_SymbolsUpper }, - [UNION_ROOM_KB_PAGE_LOWER] = - { - gText_UnionRoomChatKeyboard_abcde, - gText_UnionRoomChatKeyboard_fghij, - gText_UnionRoomChatKeyboard_klmno, - gText_UnionRoomChatKeyboard_pqrst, - gText_UnionRoomChatKeyboard_uvwxy, - gText_UnionRoomChatKeyboard_z, - gText_UnionRoomChatKeyboard_01234Lower, - gText_UnionRoomChatKeyboard_56789Lower, - gText_UnionRoomChatKeyboard_PunctuationLower, + [UNION_ROOM_KB_PAGE_LOWER] = + { + gText_UnionRoomChatKeyboard_abcde, + gText_UnionRoomChatKeyboard_fghij, + gText_UnionRoomChatKeyboard_klmno, + gText_UnionRoomChatKeyboard_pqrst, + gText_UnionRoomChatKeyboard_uvwxy, + gText_UnionRoomChatKeyboard_z, + gText_UnionRoomChatKeyboard_01234Lower, + gText_UnionRoomChatKeyboard_56789Lower, + gText_UnionRoomChatKeyboard_PunctuationLower, gText_UnionRoomChatKeyboard_SymbolsLower }, - [UNION_ROOM_KB_PAGE_EMOJI] = - { - gText_UnionRoomChatKeyboard_Emoji1, - gText_UnionRoomChatKeyboard_Emoji2, - gText_UnionRoomChatKeyboard_Emoji3, - gText_UnionRoomChatKeyboard_Emoji4, - gText_UnionRoomChatKeyboard_Emoji5, - gText_UnionRoomChatKeyboard_Emoji6, - gText_UnionRoomChatKeyboard_Emoji7, - gText_UnionRoomChatKeyboard_Emoji8, - gText_UnionRoomChatKeyboard_Emoji9, + [UNION_ROOM_KB_PAGE_EMOJI] = + { + gText_UnionRoomChatKeyboard_Emoji1, + gText_UnionRoomChatKeyboard_Emoji2, + gText_UnionRoomChatKeyboard_Emoji3, + gText_UnionRoomChatKeyboard_Emoji4, + gText_UnionRoomChatKeyboard_Emoji5, + gText_UnionRoomChatKeyboard_Emoji6, + gText_UnionRoomChatKeyboard_Emoji7, + gText_UnionRoomChatKeyboard_Emoji8, + gText_UnionRoomChatKeyboard_Emoji9, gText_UnionRoomChatKeyboard_Emoji10 } }; @@ -610,113 +610,113 @@ static const struct SubtaskInfo sDisplaySubtasks[] = { static const struct MessageWindowInfo sDisplayStdMessages[] = { [STDMESSAGE_QUIT_CHATTING] = { - .text = gText_QuitChatting, - .boxType = 1, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_QuitChatting, + .boxType = 1, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = FALSE }, [STDMESSAGE_REGISTER_WHERE] = { - .text = gText_RegisterTextWhere, - .boxType = 1, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_RegisterTextWhere, + .boxType = 1, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = FALSE }, [STDMESSAGE_REGISTER_HERE] = { - .text = gText_RegisterTextHere, - .boxType = 1, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_RegisterTextHere, + .boxType = 1, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = FALSE }, [STDMESSAGE_INPUT_TEXT] = { - .text = gText_InputText, - .boxType = 1, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_InputText, + .boxType = 1, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = FALSE }, [STDMESSAGE_EXITING_CHAT] = { - .text = gText_ExitingChat, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_ExitingChat, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = FALSE }, [STDMESSAGE_LEADER_LEFT] = { - .text = gText_LeaderLeftEndingChat, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = TRUE, + .text = gText_LeaderLeftEndingChat, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = TRUE, .useWiderBox = FALSE }, [STDMESSAGE_ASK_SAVE] = { - .text = gText_RegisteredTextChangedOKToSave, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_RegisteredTextChangedOKToSave, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = TRUE }, [STDMESSAGE_ASK_OVERWRITE] = { - .text = gText_AlreadySavedFile_Chat, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_AlreadySavedFile_Chat, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = TRUE }, [STDMESSAGE_SAVING_NO_OFF] = { - .text = gText_SavingDontTurnOff_Chat, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_SavingDontTurnOff_Chat, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = TRUE }, [STDMESSAGE_SAVED_THE_GAME] = { - .text = gText_PlayerSavedGame_Chat, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = TRUE, + .text = gText_PlayerSavedGame_Chat, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = TRUE, .useWiderBox = TRUE }, [STDMESSAGE_WARN_LEADER_LEAVE] = { - .text = gText_IfLeaderLeavesChatEnds, - .boxType = 2, - .x = 0, - .y = 1, - .letterSpacing = 0, - .lineSpacing = 0, - .hasPlaceholders = FALSE, + .text = gText_IfLeaderLeavesChatEnds, + .boxType = 2, + .x = 0, + .y = 1, + .letterSpacing = 0, + .lineSpacing = 0, + .hasPlaceholders = FALSE, .useWiderBox = TRUE } }; @@ -1629,7 +1629,7 @@ static bool32 HandleDPadInput(void) return FALSE; } while (0); - return TRUE; + return TRUE; } static void AppendTextToMessage(void) @@ -1642,7 +1642,7 @@ static void AppendTextToMessage(void) if (sChat->currentPage != UNION_ROOM_KB_PAGE_REGISTER) { - // Going to append a single character + // Going to append a single character charsStr = sUnionRoomKeyboardText[sChat->currentPage][sChat->currentRow]; for (i = 0; i < sChat->currentCol; i++) { diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 671290e21e1c..ff6c90b25522 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -21,23 +21,23 @@ static void SetUnionRoomObjectFacingDirection(s32, s32, u8); static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_PLAYERS + 2] = { [MALE] = { - OBJ_EVENT_GFX_MAN_3, - OBJ_EVENT_GFX_BLACK_BELT, - OBJ_EVENT_GFX_CAMPER, - OBJ_EVENT_GFX_YOUNGSTER, - OBJ_EVENT_GFX_PSYCHIC_M, - OBJ_EVENT_GFX_BUG_CATCHER, - OBJ_EVENT_GFX_MAN_4, + OBJ_EVENT_GFX_MAN_3, + OBJ_EVENT_GFX_BLACK_BELT, + OBJ_EVENT_GFX_CAMPER, + OBJ_EVENT_GFX_YOUNGSTER, + OBJ_EVENT_GFX_PSYCHIC_M, + OBJ_EVENT_GFX_BUG_CATCHER, + OBJ_EVENT_GFX_MAN_4, OBJ_EVENT_GFX_MAN_5 }, [FEMALE] = { - OBJ_EVENT_GFX_WOMAN_5, - OBJ_EVENT_GFX_HEX_MANIAC, - OBJ_EVENT_GFX_PICNICKER, - OBJ_EVENT_GFX_LASS, - OBJ_EVENT_GFX_LASS, - OBJ_EVENT_GFX_GIRL_3, - OBJ_EVENT_GFX_WOMAN_2, + OBJ_EVENT_GFX_WOMAN_5, + OBJ_EVENT_GFX_HEX_MANIAC, + OBJ_EVENT_GFX_PICNICKER, + OBJ_EVENT_GFX_LASS, + OBJ_EVENT_GFX_LASS, + OBJ_EVENT_GFX_GIRL_3, + OBJ_EVENT_GFX_WOMAN_2, OBJ_EVENT_GFX_BEAUTY } }; @@ -90,13 +90,13 @@ static const u8 sUnionRoomLocalIds[] = { // Unused static const u16 sHidePlayerFlags[] = { - FLAG_HIDE_UNION_ROOM_PLAYER_1, - FLAG_HIDE_UNION_ROOM_PLAYER_2, - FLAG_HIDE_UNION_ROOM_PLAYER_3, - FLAG_HIDE_UNION_ROOM_PLAYER_4, - FLAG_HIDE_UNION_ROOM_PLAYER_5, - FLAG_HIDE_UNION_ROOM_PLAYER_6, - FLAG_HIDE_UNION_ROOM_PLAYER_7, + FLAG_HIDE_UNION_ROOM_PLAYER_1, + FLAG_HIDE_UNION_ROOM_PLAYER_2, + FLAG_HIDE_UNION_ROOM_PLAYER_3, + FLAG_HIDE_UNION_ROOM_PLAYER_4, + FLAG_HIDE_UNION_ROOM_PLAYER_5, + FLAG_HIDE_UNION_ROOM_PLAYER_6, + FLAG_HIDE_UNION_ROOM_PLAYER_7, FLAG_HIDE_UNION_ROOM_PLAYER_8 }; @@ -413,10 +413,10 @@ void CreateGroupMemberSpritesInvisible(u8 * spriteIds, s32 playerIdx) for (direction = DIR_NONE; direction <= DIR_EAST; direction++) { s32 id = UR_PLAYER_SPRITE_ID(playerIdx, direction); - spriteIds[id] = CreateObjectSprite(OBJ_EVENT_GFX_MAN_4, - id - UR_SPRITE_START_ID, - sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0], - sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1], + spriteIds[id] = CreateObjectSprite(OBJ_EVENT_GFX_MAN_4, + id - UR_SPRITE_START_ID, + sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0], + sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1], 3, 1); SetObjectEventSpriteInvisibility(id - UR_SPRITE_START_ID, TRUE); } diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index cdcdfc5da643..6ebc707e54b1 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -29,7 +29,7 @@ This file handles the screen where the player chooses which pokemon to give a pokeblock to. The subsequent scene of feeding the pokeblock to the pokemon is handled by - pokeblock_feed.c, and the rest of the pokeblock menu (and + pokeblock_feed.c, and the rest of the pokeblock menu (and other pokeblock-related functions) are in pokeblock.c */ @@ -243,7 +243,7 @@ static const struct BgTemplate sBgTemplates[4] = } }; -static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = +static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = { [WIN_NAME] = { .bg = 0, @@ -275,7 +275,7 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = DUMMY_WIN_TEMPLATE }; -static const struct WindowTemplate sUsePokeblockYesNoWinTemplate = +static const struct WindowTemplate sUsePokeblockYesNoWinTemplate = { .bg = 0, .tilemapLeft = 24, @@ -295,7 +295,7 @@ static const u8 *const sContestStatNames[] = gText_Beauty3 }; -static const struct SpriteSheet sSpriteSheet_UpDown = +static const struct SpriteSheet sSpriteSheet_UpDown = { gUsePokeblockUpDown_Gfx, 0x200, TAG_UP_DOWN }; @@ -314,7 +314,7 @@ static const s16 sUpDownCoordsOnGraph[FLAVOR_COUNT][2] = {197, 59} }; -static const struct OamData sOam_UpDown = +static const struct OamData sOam_UpDown = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -357,7 +357,7 @@ static const struct SpriteTemplate sSpriteTemplate_UpDown = .callback = SpriteCallbackDummy, }; -static const struct OamData sOam_Condition = +static const struct OamData sOam_Condition = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -1594,7 +1594,7 @@ static void SpriteCB_SelectionIconCancel(struct Sprite *sprite) } // 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 +// All pokemon 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/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index dbc71d6345d5..a58444f36277 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -423,9 +423,9 @@ static bool32 UpdateCommunicationCounts(u32 * groupCounts, u32 * prevGroupCounts memcpy(groupCounts, groupCountBuffer, sizeof(groupCountBuffer)); memcpy(prevGroupCounts, groupCountBuffer, sizeof(groupCountBuffer)); - groupCounts[GROUPTYPE_TOTAL] = groupCounts[GROUPTYPE_TRADE] - + groupCounts[GROUPTYPE_BATTLE] - + groupCounts[GROUPTYPE_UNION] + groupCounts[GROUPTYPE_TOTAL] = groupCounts[GROUPTYPE_TRADE] + + groupCounts[GROUPTYPE_BATTLE] + + groupCounts[GROUPTYPE_UNION] + groupCounts[GROUPTYPE_TOTAL]; return TRUE; } diff --git a/tools/gbagfx/rl.c b/tools/gbagfx/rl.c index 968c9347eb3e..993ac644977d 100644 --- a/tools/gbagfx/rl.c +++ b/tools/gbagfx/rl.c @@ -101,7 +101,7 @@ unsigned char *RLCompress(unsigned char *src, int srcSize, int *compressedSize) srcPos++; uncompressedLength++; } - + if (uncompressedLength > 0) { dest[destPos++] = uncompressedLength - 1; From f8a24cdd6f26ee6b549fd44ec08316edf7c1bd34 Mon Sep 17 00:00:00 2001 From: froggestspirit Date: Mon, 6 Sep 2021 10:42:05 -0400 Subject: [PATCH 263/762] Identify unknown healthbox GFX --- .../healthbox_doubles_frameend.png | Bin 0 -> 5681 bytes .../healthbox_doubles_frameend_bar.png | Bin 0 -> 5762 bytes graphics/unknown/unknown_D12FEC.png | Bin 84 -> 0 bytes graphics/unknown/unknown_D1300C.png | Bin 92 -> 0 bytes src/battle_interface.c | 4 ++-- src/graphics.c | 4 ++-- 6 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 graphics/battle_interface/healthbox_doubles_frameend.png create mode 100644 graphics/battle_interface/healthbox_doubles_frameend_bar.png delete mode 100644 graphics/unknown/unknown_D12FEC.png delete mode 100644 graphics/unknown/unknown_D1300C.png diff --git a/graphics/battle_interface/healthbox_doubles_frameend.png b/graphics/battle_interface/healthbox_doubles_frameend.png new file mode 100644 index 0000000000000000000000000000000000000000..812a6c2c454741232c8aabd4babbf964d245a2e7 GIT binary patch literal 5681 zcmeHKX;_n277mN3pnzJJvSD7+6tqfZtAkaGm?ExFw=!tN4Xq;J2o*)i+ysO$b?o>&(|^K~<=*?A_niCQbI#4T zCNwx;q^*-J3WXZU3*>}>&tb-wwH0`$P2P75g|hZfiilK)K^n9|DHn;Q2wI(}K+uR* zEJC5Q|2#ZDKI@jph}Xs8Eu$PQt!wU-#>s!ExosnjX+E(eE_Y2W*=e#J@77uSPD77t zhXd}se&cf|KijG%Wv%0jx*eakeH8y6uIqoj6W9{nRPC!5Z{L`|GH7oHd(!2$hK1`3a;+`T1TE!E59l_`Jnr zePQkA#A@o-MMIHUPadRxo!wP^DXe&x_wR?vuXbE|>Aa8Yw6CqD#Lh!Z&tis0jUHh) z2lwRYs=Zx_XDj_rXITF+&qp6b9kNd;$Xx5N^d|jz)5+#@V<$5k4+|weyc<(2FW72_ELf&HExBD*ameN95;$@}I(c_QUShZNz3cT8Hvj9w)adfr zUoOpZgo5rjyUs(U*3`P4vR%IZhUD&apSogFz?2+*18(iZl!coEN>+`VkaVH@`=b@r z7IRWhu#+JR%c(zT?WI>2ApWjy?X`+e4$~K+ESAZg^ULg~SvPTJzW9ZF?)>$nA@A+v@K$8|X-r#HMVSf&Dc z2+nYF(|w{U;nlgUu;qmZc|KUjC$nN$yP%D#qujNholMPl&yG+IS#j{t$@GKNFh13* zasS?svbr)|_JY=%z6V+>+xAK}usc~k<&&#NdY`Tv72x!8_P65dSG1EGoc0tpq+O+4 zwWG2QCRH{y1iwBrA|tBC=gVo9=(1fo+s|H#+EK^95L7}RtH;dot`f6GStTDS?M%V9 ztepH}xRL#*Vr-Bk#w~)}-8=DO;3xy}7Z#X>VE`E4{SPU-3FUTMAdW=OZ(Q z^V^Z^PquCGS^n^u!|HjXE@sUwOe`pn9@|QDzpWyzE~@`++i2|NU6qo8`MQ^(&XpYM zje<7+k^>C{aazW5RQ+g4%O7*{9tD>qcHFp<)fk<|L@u#u;#RV-eR*;KcSQ0 z&bjZieIKbh+x^v<&gm)XM>k(+_=?)nRJCBKcQU+U0`W?6Ikf&au3rmU+o zCt6)yT+@;7ypmlo{#K;%t^En{#G|P0%J0UrC5v8k zF0TBVQRTHD-(c}D$555{YQ%69$|6nd=NHQJ^LyJ-Kp)9nv56g6?c<_bw6J{o7eg~M z=$yjfaU8Boxh=QQF)nSMYY^^@;||IcPu%)sNmbPb-NBU1(j)dqlF?ljcbl8{Kf<{8 z;62MSo;4kt)Yi&w)m!w$Z7LF-pO6=qy=h%ds#?Syb~4{8{?RXvucn9|m*(fJde~LD zdPA{h?(PRGS})fh5b|xhtnYqW;5_ab^V!vc11kMA`_kn7j(f&za8mo;4LEWhcWTL{ znJo{uLvCAh-R#HMy_}l8GiU6Gt=cSlexcKY?kl*@a(|>B(vc3`-h7I%6Umd`nguKOeHt$E_(68 zYSu<&R>F%;(DNNK#h}GU@`ISLJRS!LS|B zVbEeB8#ABEC-4=1NUS(8Nr{9f1xLV15||;xc+awBX_C{cmfGeB4Ggnt4frqAuU#>ax+r&a&Qn8tQ0HMVz~@$wP3Q(fpKi2SE+?~9vD!-egFVZA`s|U0triE;LYv9DxcqPEmQTW2=v5j zAqAd@BjDrX2U)1p+@%Bl-f5wV05>f@3{lAwlrX|wipbP%=1vvT1eLkZ1QlYOGQ}+w zitr#PlV@|A03JWI-^M6oj5uClvM{2}kwUm1r$|srO&B4JN2EwR2t);#iG%QJv1s6c z2JOeV@~1$6yMF#b=(l>AVlnB;iFA^PVnz|76oX2Dq~=i>sf2*ai$tL^$TSKTMqnCRL8dck zUNpKFl|dZ<%|nzbkmN>AA^}GtnO1}_(;qNGAlbz6Pz-`s$YM+j#$#cE%>ZE`V{HIt z(>&M<(@%*&YPm8(E|;<~##qrtN>fRpS$)OA43fhpLlYPg8tbjE;$}lJc+-%De;@cy zOyRL|jqHEp8G!b)_$t*Jxl$6M3=za3u=@Qx?*jKTg@InDQY#aAf3d0mz_EJMH4xa! zm5FBl!;vMuquz!j6`Q0&qfJeK3BkSctDvQb&~yYq$KEA47LvsvpxgG9+S_^YJJOg; z5|J5R6c{U{ktkS-NJPg%WEvGq5z^>X3Irh_l?St{y<3+RZ#)kTKdn{wi;q#g10dS=v+qmFzcM$6^;-MM6^Wo|W7Q!V*?Zl;1K7(DB!&^0O8&mk%^|(AnB6-d=H5AQ zpMmQU-+w>$rG>F_{>Hz)bo(1U0P2rUK1kn>a($HRgB186@W<@>DAxxm@Il~@+4X;u z%XZ)i8P$;`G#+LRIx?M%X=>n$VOfu0mTJeP;nQu zfYe$+T%c7^Q9waQ8MJD_1;!;>QBbrhMT#iM+yulhb?o^2P5%>qS?;;t`OdlDJ?GxM zRpFsQW+t{KI2_K58|)teK8-amLj&;6nEFE{4rjO_Jt|re0V(k^xl|w&p?F1_48@}= zp#XNg~)qJizvFdW^GRuf%mg4J+2U5E% zrns1$?Jb?UJg&3y-uQUq#OBTITlW{-?zYDi`@Gr>{hV#kqZU>D-|xO$XG?WjoV*MD zu0=9!(~bT|+Z|)GayI%Qilm5L)p?{3eO^ds~;lc9P>n4nuE!|N$ z%CoRFlGE#5WB=SDo9sQCr99DSa8&i(#m+}Hdmq-6Jw7;g3GFd=@}7_}E9_z#VyvG9 z_Ek?VuP=DE*SFg`JXU_6eTYEr=vj> zr?^_9@nK6v$U6VpFY3ZpIHJkbOZ9&*n!Xd6#w2dctyf1|39lb)FAltTRp$P%|+=m<~bfp$WYCUUu%9%MWvgzHrVE!RaNe2 z4DGvPnsdOBGG(-ZYr>SmdCu)ErX5D{jLrw~Ij;Tq-A!?(rpE&xdvCv);h{WTko;tB zb!T1Sq$~YqZ9ngLG74K?&4J3+-6)Cn*!+F6>FClqvcB}2)TB0EBei6ii^}WsCO78^ zC%Rs&^s^gxVT;}sW~ASdsH1GB+wy}|d)8hr8Be@4`8Y=FSq*>jTk`70qJkN=4VwZ_ z(>(p}8LTdeuIT)>)_U%yt3RBak{8unVR|vo+yOHVt3T1}oa)vcV{~)(gqy4U-2|)B zPq|-M`H9h*MP+44;-1Pp^YfW^^Dh%`Olq{6GbK9lDzT@yRl=!AD=uo9*fRI#BEy2T z%o__@V!kRe9Q|vQfH7Se19$Uc9cl$dcm9|v%5Bb%$e&r4S5kk>^;XTrM|4r!A^EG4 z>tETeTe6`>?mYeOk@+~i{IJ^U%=p*49;lZJ%I`g|f4y{Fg*?Ejs`hu|J-ySXrP^PY zQu=IWb(yVj@JpCMuI;hRA2f7Pt2s4o;<|rT_XH`qF6ZPwv7TSB^6lE^UX4$XTzdBP zev_xXgR$qo-ya;ZFXE-enrG~MhgiGqr;qz4MK^a;20Zr2$ftMrC?TQnR=sV1O@C4l z2RSKuyzR)3Nio;f&VSypk+C&>p{T^Wzu9`;*662`=!+M+o?En~s)amZ0o8lKNta6t z)wvGr)sH*#GS4?JjO=xo_K+bUmte=a`c*PrhjRuwSR#9VUvJT%f#h#CWnyvE%RwkZlraYNp*GW z&+N@wbEw?BJQM#y?`~V$t_K9?*JQVf?9Mxt4o{zOo~ZR+CvMy$IB&BfF>hl|{W66h z!1%;Y1M!2imM@(I9fx*qThjjG_{#M^D!(YYpYh~UV==-rdSQ5XQi+{)C%f}XNin9L zW_~Dhm*sa>>unXjcZ15$lTIdI^nTp_E##P6=xA;=w$~-EVB06AxvEXfou#(-UtK0m zFFeZJcZRy}_U4n6Em!llR)%7h$)CoJBN+bE6*dTn&TiVfkx$^h@~{|K(mJuhd2^CM zj(wM_@A7*u>IUv8j|wFGn>>>0heNz4mPD-rDEW z9_FsFX6dINS-R%Y3YVvPTfILU*i4$V$#GP|ON@1=Kj(y-!E?3#_I(m*cShk1oLh%` zvVpz5zGK?C*e;cF0VW+N+SAixFk^#!Q%X-axIHY^2*G6$%?n|}QZWfaqG;lVBD?m^s75 zN5uvNVpIX)Rbr6@W2-m>EiW5<*O>J3X){aA%VvP)wR4htYsk zRHAUy4Js3*V7f6=FjQmG<}E@5WRR3LvaU}MmlrAVkOu=6gX1olf@@=umMbm;#c(sD=uVlZ1c= zLRctZfrxwx6(Z93DDZ{_Od`{Z3emuuC!I;vp$L-;K_@^W-K;cJ2%w_VJp^7X4;m4n zdwKyXghga|F#r{V&S$|0jZbHKX{j{(!1fL2atKrs<*g-L1StekxtK!;5lT{2ZzrOJ zVl+|#X+-m2cv4uNOcs^K1j*5K_~xK;3>3MB(}O~y4knGj>_ET>fnpPip?H)mlf-Lz zHQT}livhwyn%)4+T02+^+fR-{3aLCwDiv`Enq2W3N^MKweTJHa9U_Ibj#@B^X!>oa z<7PqeWbM$0{66rXm?9ITO3DAm^AQ6>>$u;`!@U=Jdb%7BS{CQK2~J!vq^fJU-oQh`DV$x+{U zPy=9}L2GIE8SkpCKDUu*WdaIngh-*WDHOus_TqiWngjLC@_aN$4v)vy6~ISxB(b@g z%8N{q$wWd_K2n%Bh4No;I{rgN`B(0`ut9G>sVogNZGs|9DS2=BcK`<&LWD3X!KCj? zT^BMai_X0RavrpS`wU!<wbH!waQTHcz&KjL zsB<YFa4JZ-r>mdKI;Vst02iGY5dZ)H diff --git a/graphics/unknown/unknown_D1300C.png b/graphics/unknown/unknown_D1300C.png deleted file mode 100644 index 0c077dd0b67ae1412ef5b10b165038dfcd681944..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^93adBBp6ht@Pq*=WltB!5RRG2JF1iZ)wgX{Sj6TM o(=Kdk?I85@^?&0#@BaLkXZU0(@iR?>y&j~^)78&qol`;+0M$$yi~s-t diff --git a/src/battle_interface.c b/src/battle_interface.c index 83bdf0cb710b..51dd82c37fc6 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -153,8 +153,8 @@ enum HEALTHBOX_GFX_STATUS_BRN_BATTLER3, //status4 "BRN" HEALTHBOX_GFX_114, HEALTHBOX_GFX_115, - HEALTHBOX_GFX_116, //unknown_D12FEC - HEALTHBOX_GFX_117, //unknown_D1300C + HEALTHBOX_GFX_116, //gBattleInterfaceGfx_frameend + HEALTHBOX_GFX_117, //gBattleInterfaceGfx_frameend_bar }; // strings diff --git a/src/graphics.c b/src/graphics.c index 37d953313526..5dfdbad687be 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -374,8 +374,8 @@ const u8 gUnknown_08C1249C[] = INCBIN_U8("graphics/battle_interface/ball_display const u8 gBattleInterfaceGfx_Status2[] = INCBIN_U8("graphics/battle_interface/status2.4bpp"); // these three duplicate sets of graphics are for the opponent pokemon const u8 gBattleInterfaceGfx_Status3[] = INCBIN_U8("graphics/battle_interface/status3.4bpp"); // and are also for use in double battles. they use dynamic palettes so const u8 gBattleInterfaceGfx_Status4[] = INCBIN_U8("graphics/battle_interface/status4.4bpp"); // coloring them is an extreme headache and wont be done for now -const u8 gUnknown_D12FEC[] = INCBIN_U8("graphics/unknown/unknown_D12FEC.4bpp"); -const u8 gUnknown_D1300C[] = INCBIN_U8("graphics/unknown/unknown_D1300C.4bpp"); +const u8 gBattleInterfaceGfx_frameend[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend.4bpp"); +const u8 gBattleInterfaceGfx_frameend_bar[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend_bar.4bpp"); const u32 gBattleInterfaceGfx_UnusedWindow3[] = INCBIN_U32("graphics/battle_interface/unused_window3.4bpp.lz"); const u32 gBattleInterfaceGfx_UnusedWindow4[] = INCBIN_U32("graphics/battle_interface/unused_window4.4bpp.lz"); From 5f755757f9e04e972ebc6d129fd5495d00d6fc2e Mon Sep 17 00:00:00 2001 From: froggestspirit Date: Mon, 6 Sep 2021 11:40:40 -0400 Subject: [PATCH 264/762] Const rename --- src/battle_interface.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index 51dd82c37fc6..78364e264aa9 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -153,8 +153,8 @@ enum HEALTHBOX_GFX_STATUS_BRN_BATTLER3, //status4 "BRN" HEALTHBOX_GFX_114, HEALTHBOX_GFX_115, - HEALTHBOX_GFX_116, //gBattleInterfaceGfx_frameend - HEALTHBOX_GFX_117, //gBattleInterfaceGfx_frameend_bar + HEALTHBOX_GFX_FRAME_END, + HEALTHBOX_GFX_FRAME_END_BAR, }; // strings @@ -1225,7 +1225,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 0, 5, 0, &windowId); HpTextIntoHealthboxObject((void*)(OBJ_VRAM0) + spriteTileNum + 0xC0, windowTileData, 2); RemoveWindowOnHealthbox(windowId); - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_116), + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END), (void*)(OBJ_VRAM0 + 0x680) + (gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x20); } @@ -1291,7 +1291,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) // Impossible to reach part, because the battlerId is from the opponent's side. { - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_116), + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END), (void*)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP), 0x20); } @@ -1399,7 +1399,7 @@ void SwapHpBarsWithHpText(void) { UpdateStatusIconInHealthbox(gHealthboxSpriteIds[i]); UpdateHealthboxAttribute(gHealthboxSpriteIds[i], &gPlayerParty[gBattlerPartyIndexes[i]], HEALTHBOX_HEALTH_BAR); - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_117), (void*)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32); + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END_BAR), (void*)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32); } } else From 71da126dbbfb553bf15eb6323289b2bb06a8f1df Mon Sep 17 00:00:00 2001 From: froggestspirit Date: Mon, 6 Sep 2021 16:41:59 -0400 Subject: [PATCH 265/762] case --- src/graphics.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/graphics.c b/src/graphics.c index 5dfdbad687be..f0a118bc7305 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -374,8 +374,8 @@ const u8 gUnknown_08C1249C[] = INCBIN_U8("graphics/battle_interface/ball_display const u8 gBattleInterfaceGfx_Status2[] = INCBIN_U8("graphics/battle_interface/status2.4bpp"); // these three duplicate sets of graphics are for the opponent pokemon const u8 gBattleInterfaceGfx_Status3[] = INCBIN_U8("graphics/battle_interface/status3.4bpp"); // and are also for use in double battles. they use dynamic palettes so const u8 gBattleInterfaceGfx_Status4[] = INCBIN_U8("graphics/battle_interface/status4.4bpp"); // coloring them is an extreme headache and wont be done for now -const u8 gBattleInterfaceGfx_frameend[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend.4bpp"); -const u8 gBattleInterfaceGfx_frameend_bar[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend_bar.4bpp"); +const u8 gBattleInterfaceGfx_FrameEnd[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend.4bpp"); +const u8 gBattleInterfaceGfx_FrameEnd_Bar[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend_bar.4bpp"); const u32 gBattleInterfaceGfx_UnusedWindow3[] = INCBIN_U32("graphics/battle_interface/unused_window3.4bpp.lz"); const u32 gBattleInterfaceGfx_UnusedWindow4[] = INCBIN_U32("graphics/battle_interface/unused_window4.4bpp.lz"); From b183a793a19ac6e50ea682de23a2637319c87336 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 6 Sep 2021 17:39:21 -0400 Subject: [PATCH 266/762] Move more gfx symbols into gHealthboxElementsGfxTable --- src/battle_interface.c | 14 +++++++------- src/graphics.c | 20 ++++++++------------ 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index 78364e264aa9..bcb97947cfc4 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -103,11 +103,11 @@ enum HEALTHBOX_GFX_63, //hp bar red [7 pixels] HEALTHBOX_GFX_64, //hp bar red [8 pixels] HEALTHBOX_GFX_65, //hp bar frame end - HEALTHBOX_GFX_66, //status ball [full] - HEALTHBOX_GFX_67, //status ball [empty] - HEALTHBOX_GFX_68, //status ball [fainted] - HEALTHBOX_GFX_69, //status ball [statused] - HEALTHBOX_GFX_70, //status ball [unused extra] + HEALTHBOX_GFX_STATUS_BALL, // Full + HEALTHBOX_GFX_STATUS_BALL_EMPTY, + HEALTHBOX_GFX_STATUS_BALL_FAINTED, + HEALTHBOX_GFX_STATUS_BALL_STATUSED, + HEALTHBOX_GFX_STATUS_BALL_CAUGHT, HEALTHBOX_GFX_STATUS_PSN_BATTLER1, //status2 "PSN" HEALTHBOX_GFX_72, HEALTHBOX_GFX_73, @@ -636,7 +636,7 @@ static const struct SpritePalette sStatusSummaryBallsSpritePal = static const struct SpriteSheet sStatusSummaryBallsSpriteSheet = { - gBattleInterface_BallDisplayGfx, 0x80, TAG_STATUS_SUMMARY_BALLS_TILE + &gHealthboxElementsGfxTable[HEALTHBOX_GFX_STATUS_BALL], 0x80, TAG_STATUS_SUMMARY_BALLS_TILE }; // unused oam data @@ -1962,7 +1962,7 @@ static void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus) healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId; if (noStatus) - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_70), (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_STATUS_BALL_CAUGHT), (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); else CpuFill32(0, (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); } diff --git a/src/graphics.c b/src/graphics.c index f0a118bc7305..4e820caec7eb 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -355,7 +355,6 @@ const u16 gBattleInterface_BallStatusBarPal[] = INCBIN_U16("graphics/battle_inte const u16 gBattleInterface_BallDisplayPal[] = INCBIN_U16("graphics/battle_interface/ball_display.gbapal"); -//Originally an array? const u8 gHealthboxElementsGfxTable[] = INCBIN_U8("graphics/battle_interface/hpbar.4bpp", "graphics/battle_interface/expbar.4bpp", "graphics/battle_interface/status_psn.4bpp", @@ -365,17 +364,14 @@ const u8 gHealthboxElementsGfxTable[] = INCBIN_U8("graphics/battle_interface/hpb "graphics/battle_interface/status_brn.4bpp", "graphics/battle_interface/misc.4bpp", "graphics/battle_interface/hpbar_anim.4bpp", - "graphics/battle_interface/misc_frameend.4bpp"); - -const u8 gBattleInterface_BallDisplayGfx[] = INCBIN_U8("graphics/battle_interface/ball_display.4bpp"); - -//Originally an array? -const u8 gUnknown_08C1249C[] = INCBIN_U8("graphics/battle_interface/ball_display_unused_extra.4bpp"); -const u8 gBattleInterfaceGfx_Status2[] = INCBIN_U8("graphics/battle_interface/status2.4bpp"); // these three duplicate sets of graphics are for the opponent pokemon -const u8 gBattleInterfaceGfx_Status3[] = INCBIN_U8("graphics/battle_interface/status3.4bpp"); // and are also for use in double battles. they use dynamic palettes so -const u8 gBattleInterfaceGfx_Status4[] = INCBIN_U8("graphics/battle_interface/status4.4bpp"); // coloring them is an extreme headache and wont be done for now -const u8 gBattleInterfaceGfx_FrameEnd[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend.4bpp"); -const u8 gBattleInterfaceGfx_FrameEnd_Bar[] = INCBIN_U8("graphics/battle_interface/healthbox_doubles_frameend_bar.4bpp"); + "graphics/battle_interface/misc_frameend.4bpp", + "graphics/battle_interface/ball_display.4bpp", + "graphics/battle_interface/ball_display_unused_extra.4bpp", + "graphics/battle_interface/status2.4bpp", // these three duplicate sets of graphics are for the opponent pokemon + "graphics/battle_interface/status3.4bpp", // and are also for use in double battles. they use dynamic palettes so + "graphics/battle_interface/status4.4bpp", // coloring them is an extreme headache and wont be done for now + "graphics/battle_interface/healthbox_doubles_frameend.4bpp", + "graphics/battle_interface/healthbox_doubles_frameend_bar.4bpp"); const u32 gBattleInterfaceGfx_UnusedWindow3[] = INCBIN_U32("graphics/battle_interface/unused_window3.4bpp.lz"); const u32 gBattleInterfaceGfx_UnusedWindow4[] = INCBIN_U32("graphics/battle_interface/unused_window4.4bpp.lz"); From cbf8863e5bdae68d851e940660ac9d4c948498df Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 9 Sep 2021 15:24:34 -0400 Subject: [PATCH 267/762] Clean up Lilycove Lady --- include/constants/global.h | 1 + include/constants/lilycove_lady.h | 2 - include/global.h | 2 +- src/data/lilycove_lady.h | 32 ++-- src/lilycove_lady.c | 238 ++++++++++++------------------ 5 files changed, 116 insertions(+), 159 deletions(-) diff --git a/include/constants/global.h b/include/constants/global.h index 9b0c46ce400b..1cece79753b8 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -86,6 +86,7 @@ #define EASY_CHAT_BATTLE_WORDS_COUNT 6 #define MOVE_NAME_LENGTH 12 #define NUM_QUESTIONNAIRE_WORDS 4 +#define QUIZ_QUESTION_LEN 9 #define MALE 0 #define FEMALE 1 diff --git a/include/constants/lilycove_lady.h b/include/constants/lilycove_lady.h index 11b9b31e93d3..e6327904d347 100644 --- a/include/constants/lilycove_lady.h +++ b/include/constants/lilycove_lady.h @@ -20,8 +20,6 @@ #define QUIZ_AUTHOR_NAME_LADY 0 #define QUIZ_AUTHOR_NAME_PLAYER 1 #define QUIZ_AUTHOR_NAME_OTHER_PLAYER 2 - -#define QUIZ_QUESTION_LEN 9 // Constants for how many good PokĂ©blocks the Contest Lady was given // This determines how her performance is described when her TV show comes on diff --git a/include/global.h b/include/global.h index e4c11f9ef263..db4a17f1be79 100644 --- a/include/global.h +++ b/include/global.h @@ -761,7 +761,7 @@ struct LilycoveLadyQuiz { /*0x000*/ u8 id; /*0x001*/ u8 state; - /*0x002*/ u16 question[9]; + /*0x002*/ u16 question[QUIZ_QUESTION_LEN]; /*0x014*/ u16 correctAnswer; /*0x016*/ u16 playerAnswer; /*0x018*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; diff --git a/src/data/lilycove_lady.h b/src/data/lilycove_lady.h index 818a5fd5f382..74c049059f04 100644 --- a/src/data/lilycove_lady.h +++ b/src/data/lilycove_lady.h @@ -20,7 +20,7 @@ static const u16 sLilycoveLadyGfxId[] = }; // Quiz Lady data -static const u16 sQuizLadyQuestion1[] = +static const u16 sQuizLadyQuestion1[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_STORES, @@ -33,7 +33,7 @@ static const u16 sQuizLadyQuestion1[] = EC_WORD_POKENAV }; -static const u16 sQuizLadyQuestion2[] = +static const u16 sQuizLadyQuestion2[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_ISN_T, @@ -46,7 +46,7 @@ static const u16 sQuizLadyQuestion2[] = EC_WORD_DARK }; -static const u16 sQuizLadyQuestion3[] = +static const u16 sQuizLadyQuestion3[QUIZ_QUESTION_LEN] = { EC_WORD_HOW, EC_WORD_DO, @@ -59,7 +59,7 @@ static const u16 sQuizLadyQuestion3[] = EC_WORD_CUTE_CHARM }; -static const u16 sQuizLadyQuestion4[] = +static const u16 sQuizLadyQuestion4[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_IS, @@ -72,7 +72,7 @@ static const u16 sQuizLadyQuestion4[] = EC_WORD_MACHINE }; -static const u16 sQuizLadyQuestion5[] = +static const u16 sQuizLadyQuestion5[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_ITEM, @@ -85,7 +85,7 @@ static const u16 sQuizLadyQuestion5[] = EC_WORD_PHONE }; -static const u16 sQuizLadyQuestion6[] = +static const u16 sQuizLadyQuestion6[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_WILL, @@ -98,7 +98,7 @@ static const u16 sQuizLadyQuestion6[] = EC_WORD_SWIFT_SWIM }; -static const u16 sQuizLadyQuestion7[] = +static const u16 sQuizLadyQuestion7[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_OF, @@ -111,7 +111,7 @@ static const u16 sQuizLadyQuestion7[] = EC_WORD_ROCK }; -static const u16 sQuizLadyQuestion8[] = +static const u16 sQuizLadyQuestion8[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_WILL, @@ -124,7 +124,7 @@ static const u16 sQuizLadyQuestion8[] = EC_WORD_WONDER_GUARD }; -static const u16 sQuizLadyQuestion9[] = +static const u16 sQuizLadyQuestion9[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_WILL, @@ -137,7 +137,7 @@ static const u16 sQuizLadyQuestion9[] = EC_WORD_SHED_SKIN }; -static const u16 sQuizLadyQuestion10[] = +static const u16 sQuizLadyQuestion10[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_GOES, @@ -150,7 +150,7 @@ static const u16 sQuizLadyQuestion10[] = EC_WORD_POKENAV }; -static const u16 sQuizLadyQuestion11[] = +static const u16 sQuizLadyQuestion11[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_STORES, @@ -163,7 +163,7 @@ static const u16 sQuizLadyQuestion11[] = EC_WORD_TELEVISION }; -static const u16 sQuizLadyQuestion12[] = +static const u16 sQuizLadyQuestion12[QUIZ_QUESTION_LEN] = { EC_WORD_WHICH, EC_WORD_MACHINE, @@ -176,7 +176,7 @@ static const u16 sQuizLadyQuestion12[] = EC_WORD_TELEVISION }; -static const u16 sQuizLadyQuestion13[] = +static const u16 sQuizLadyQuestion13[QUIZ_QUESTION_LEN] = { EC_WORD_A, EC_WORD_POKEMON, @@ -189,7 +189,7 @@ static const u16 sQuizLadyQuestion13[] = EC_WORD_LETTER }; -static const u16 sQuizLadyQuestion14[] = +static const u16 sQuizLadyQuestion14[QUIZ_QUESTION_LEN] = { EC_WORD_STEEL, EC_WORD_IS, @@ -202,7 +202,7 @@ static const u16 sQuizLadyQuestion14[] = EC_EMPTY_WORD }; -static const u16 sQuizLadyQuestion15[] = +static const u16 sQuizLadyQuestion15[QUIZ_QUESTION_LEN] = { EC_WORD_DARK, EC_WORD_IS, @@ -215,7 +215,7 @@ static const u16 sQuizLadyQuestion15[] = EC_EMPTY_WORD }; -static const u16 sQuizLadyQuestion16[] = +static const u16 sQuizLadyQuestion16[QUIZ_QUESTION_LEN] = { EC_WORD_GHOST, EC_WORD_IS, diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 6fa8ba4eb4a6..d65502eb43ba 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -65,15 +65,15 @@ void InitLilycoveLady(void) id >>= 1; switch (id) { - case LILYCOVE_LADY_QUIZ: - InitLilycoveQuizLady(); - break; - case LILYCOVE_LADY_FAVOR: - InitLilycoveFavorLady(); - break; - case LILYCOVE_LADY_CONTEST: - InitLilycoveContestLady(); - break; + case LILYCOVE_LADY_QUIZ: + InitLilycoveQuizLady(); + break; + case LILYCOVE_LADY_FAVOR: + InitLilycoveFavorLady(); + break; + case LILYCOVE_LADY_CONTEST: + InitLilycoveContestLady(); + break; } } @@ -81,15 +81,15 @@ void ResetLilycoveLadyForRecordMix(void) { switch (GetLilycoveLadyId()) { - case LILYCOVE_LADY_QUIZ: - ResetQuizLadyForRecordMix(); - break; - case LILYCOVE_LADY_FAVOR: - ResetFavorLadyForRecordMix(); - break; - case LILYCOVE_LADY_CONTEST: - ResetContestLadyForRecordMix(); - break; + case LILYCOVE_LADY_QUIZ: + ResetQuizLadyForRecordMix(); + break; + case LILYCOVE_LADY_FAVOR: + ResetFavorLadyForRecordMix(); + break; + case LILYCOVE_LADY_CONTEST: + ResetContestLadyForRecordMix(); + break; } } @@ -100,15 +100,15 @@ void InitLilycoveLadyRandomly(void) switch (lady) { - case LILYCOVE_LADY_QUIZ: - InitLilycoveQuizLady(); - break; - case LILYCOVE_LADY_FAVOR: - InitLilycoveFavorLady(); - break; - case LILYCOVE_LADY_CONTEST: - InitLilycoveContestLady(); - break; + case LILYCOVE_LADY_QUIZ: + InitLilycoveQuizLady(); + break; + case LILYCOVE_LADY_FAVOR: + InitLilycoveFavorLady(); + break; + case LILYCOVE_LADY_CONTEST: + InitLilycoveContestLady(); + break; } } @@ -119,10 +119,10 @@ void Script_GetLilycoveLadyId(void) static u8 GetNumAcceptedItems(const u16 *itemsArray) { - u8 items; + u8 numItems; - for (items = 0; *itemsArray != ITEM_NONE; items ++, itemsArray ++); - return items; + for (numItems = 0; *itemsArray != ITEM_NONE; numItems++, itemsArray++); + return numItems; } static void FavorLadyPickFavorAndBestItem(void) @@ -160,17 +160,11 @@ u8 GetFavorLadyState(void) { sFavorLadyPtr = &gSaveBlock1Ptr->lilycoveLady.favor; if (sFavorLadyPtr->state == LILYCOVE_LADY_STATE_PRIZE) - { return LILYCOVE_LADY_STATE_PRIZE; - } else if (sFavorLadyPtr->state == LILYCOVE_LADY_STATE_COMPLETED) - { return LILYCOVE_LADY_STATE_COMPLETED; - } else - { return LILYCOVE_LADY_STATE_READY; - } } static const u8 *GetFavorLadyRequest(u8 idx) @@ -209,7 +203,7 @@ void BufferFavorLadyItemName(void) static void SetFavorLadyPlayerName(const u8 *src, u8 *dest) { - memset(dest, 0xFF, 8); + memset(dest, EOS, PLAYER_NAME_LENGTH + 1); StringCopy7(dest, src); } @@ -254,9 +248,7 @@ static bool8 DoesFavorLadyLikeItem(u16 itemId) sFavorLadyPtr->numItemsGiven++; sFavorLadyPtr->likedItem = TRUE; if (sFavorLadyPtr->bestItem == itemId) - { sFavorLadyPtr->numItemsGiven = LILYCOVE_LADY_GIFT_THRESHOLD; - } break; } sFavorLadyPtr->likedItem = FALSE; @@ -312,9 +304,7 @@ static void QuizLadyPickQuestion(void) questionId = Random() % ARRAY_COUNT(sQuizLadyQuizQuestions); for (i = 0; i < QUIZ_QUESTION_LEN; i ++) - { sQuizLadyPtr->question[i] = sQuizLadyQuizQuestions[questionId][i]; - } sQuizLadyPtr->correctAnswer = sQuizLadyQuizAnswers[questionId]; sQuizLadyPtr->prize = sQuizLadyPrizes[questionId]; sQuizLadyPtr->questionId = questionId; @@ -328,16 +318,16 @@ static void InitLilycoveQuizLady(void) sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; sQuizLadyPtr->id = LILYCOVE_LADY_QUIZ; sQuizLadyPtr->state = LILYCOVE_LADY_STATE_READY; + for (i = 0; i < QUIZ_QUESTION_LEN; i ++) - { - sQuizLadyPtr->question[i] = -1; - } - sQuizLadyPtr->correctAnswer = -1; - sQuizLadyPtr->playerAnswer = -1; + sQuizLadyPtr->question[i] = EC_EMPTY_WORD; + + sQuizLadyPtr->correctAnswer = EC_EMPTY_WORD; + sQuizLadyPtr->playerAnswer = EC_EMPTY_WORD; + for (i = 0; i < TRAINER_ID_LENGTH; i ++) - { sQuizLadyPtr->playerTrainerId[i] = 0; - } + sQuizLadyPtr->prize = ITEM_NONE; sQuizLadyPtr->waitingForChallenger = FALSE; sQuizLadyPtr->prevQuestionId = ARRAY_COUNT(sQuizLadyQuizQuestions); @@ -351,48 +341,37 @@ static void ResetQuizLadyForRecordMix(void) sQuizLadyPtr->id = LILYCOVE_LADY_QUIZ; sQuizLadyPtr->state = LILYCOVE_LADY_STATE_READY; sQuizLadyPtr->waitingForChallenger = FALSE; - sQuizLadyPtr->playerAnswer = -1; + sQuizLadyPtr->playerAnswer = EC_EMPTY_WORD; } u8 GetQuizLadyState(void) { sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; if (sQuizLadyPtr->state == LILYCOVE_LADY_STATE_PRIZE) - { return LILYCOVE_LADY_STATE_PRIZE; - } else if (sQuizLadyPtr->state == LILYCOVE_LADY_STATE_COMPLETED) - { return LILYCOVE_LADY_STATE_COMPLETED; - } else - { return LILYCOVE_LADY_STATE_READY; - } } u8 GetQuizAuthor(void) { - int i; - int j; + s32 i, j; u8 authorNameId; - struct LilycoveLadyQuiz *quiz; + struct LilycoveLadyQuiz *quiz = &gSaveBlock1Ptr->lilycoveLady.quiz; - quiz = &gSaveBlock1Ptr->lilycoveLady.quiz; if (IsEasyChatAnswerUnlocked(quiz->correctAnswer) == FALSE) { i = quiz->questionId; do { - if (++ i >= (int)(ARRAY_COUNT(sQuizLadyQuizQuestions))) - { + if (++i >= (int)ARRAY_COUNT(sQuizLadyQuizQuestions)) i = 0; - } } while (IsEasyChatAnswerUnlocked(sQuizLadyQuizAnswers[i]) == FALSE); - for (j = 0; j < QUIZ_QUESTION_LEN; j ++) - { + + for (j = 0; j < QUIZ_QUESTION_LEN; j++) quiz->question[j] = sQuizLadyQuizQuestions[i][j]; - } quiz->correctAnswer = sQuizLadyQuizAnswers[i]; quiz->prize = sQuizLadyPrizes[i]; quiz->questionId = i; @@ -400,17 +379,11 @@ u8 GetQuizAuthor(void) } authorNameId = BufferQuizAuthorName(); if (authorNameId == QUIZ_AUTHOR_NAME_LADY) - { return QUIZ_AUTHOR_LADY; - } else if (authorNameId == QUIZ_AUTHOR_NAME_OTHER_PLAYER || IsQuizTrainerIdNotPlayer()) - { return QUIZ_AUTHOR_OTHER_PLAYER; - } else - { return QUIZ_AUTHOR_PLAYER; - } } static u8 BufferQuizAuthorName(void) @@ -434,7 +407,7 @@ static u8 BufferQuizAuthorName(void) if (nameLen == GetPlayerNameLength(gSaveBlock2Ptr->playerName)) { u8 *name = sQuizLadyPtr->playerName; - for (i = 0; i < nameLen; i ++) + for (i = 0; i < nameLen; i++) { name = sQuizLadyPtr->playerName; if (name[i] != gSaveBlock2Ptr->playerName[i]) @@ -456,7 +429,7 @@ static bool8 IsQuizTrainerIdNotPlayer(void) sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; notPlayer = FALSE; - for (i = 0; i < TRAINER_ID_LENGTH; i ++) + for (i = 0; i < TRAINER_ID_LENGTH; i++) { if (sQuizLadyPtr->playerTrainerId[i] != gSaveBlock2Ptr->playerTrainerId[i]) { @@ -472,7 +445,7 @@ static u8 GetPlayerNameLength(const u8 *playerName) u8 len; const u8 *ptr; - for (len = 0, ptr = playerName; *ptr != EOS; len ++, ptr ++); + for (len = 0, ptr = playerName; *ptr != EOS; len++, ptr++); return len; } @@ -532,7 +505,7 @@ void SetQuizLadyState_GivePrize(void) void ClearQuizLadyPlayerAnswer(void) { sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; - sQuizLadyPtr->playerAnswer = -1; + sQuizLadyPtr->playerAnswer = EC_EMPTY_WORD; } void Script_QuizLadyOpenBagMenu(void) @@ -544,13 +517,9 @@ void QuizLadyPickNewQuestion(void) { sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; if (BufferQuizAuthorNameAndCheckIfLady()) - { sQuizLadyPtr->prevQuestionId = sQuizLadyPtr->questionId; - } else - { sQuizLadyPtr->prevQuestionId = ARRAY_COUNT(sQuizLadyQuizQuestions); - } QuizLadyPickQuestion(); } @@ -559,11 +528,9 @@ void ClearQuizLadyQuestionAndAnswer(void) u8 i; sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; - for (i = 0; i < QUIZ_QUESTION_LEN; i ++) - { - sQuizLadyPtr->question[i] = -1; - } - sQuizLadyPtr->correctAnswer = -1; + for (i = 0; i < QUIZ_QUESTION_LEN; i++) + sQuizLadyPtr->question[i] = EC_EMPTY_WORD; + sQuizLadyPtr->correctAnswer = EC_EMPTY_WORD; } void QuizLadySetCustomQuestion(void) @@ -583,10 +550,8 @@ void QuizLadyRecordCustomQuizData(void) sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; sQuizLadyPtr->prize = gSpecialVar_ItemId; - for (i = 0; i < TRAINER_ID_LENGTH; i ++) - { + for (i = 0; i < TRAINER_ID_LENGTH; i++) sQuizLadyPtr->playerTrainerId[i] = gSaveBlock2Ptr->playerTrainerId[i]; - } StringCopy7(sQuizLadyPtr->playerName, gSaveBlock2Ptr->playerName); sQuizLadyPtr->language = gGameLanguage; } @@ -617,18 +582,15 @@ void QuizLadyClearQuestionForRecordMix(const LilycoveLady *lilycoveLady) if (lilycoveLady->quiz.prevQuestionId < ARRAY_COUNT(sQuizLadyQuizQuestions) && sQuizLadyPtr->id == LILYCOVE_LADY_QUIZ) { - for (i = 0; i < 4; i ++) + for (i = 0; i < 4; i++) { if (lilycoveLady->quiz.prevQuestionId != sQuizLadyPtr->questionId) - { break; - } sQuizLadyPtr->questionId = Random() % ARRAY_COUNT(sQuizLadyQuizQuestions); } if (lilycoveLady->quiz.prevQuestionId == sQuizLadyPtr->questionId) - { - sQuizLadyPtr->questionId = (sQuizLadyPtr->questionId + 1) % (int)(ARRAY_COUNT(sQuizLadyQuizQuestions)); - } + sQuizLadyPtr->questionId = (sQuizLadyPtr->questionId + 1) % (int)ARRAY_COUNT(sQuizLadyQuizQuestions); + sQuizLadyPtr->prevQuestionId = lilycoveLady->quiz.prevQuestionId; } } @@ -656,11 +618,10 @@ static void ResetContestLadyForRecordMix(void) sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; sContestLadyPtr->id = LILYCOVE_LADY_CONTEST; sContestLadyPtr->givenPokeblock = FALSE; + if (sContestLadyPtr->numGoodPokeblocksGiven == LILYCOVE_LADY_GIFT_THRESHOLD || sContestLadyPtr->numOtherPokeblocksGiven == LILYCOVE_LADY_GIFT_THRESHOLD) - { ResetContestLadyContestData(); - } } static void ContestLadySavePlayerNameIfHighSheen(u8 sheen) @@ -683,41 +644,41 @@ bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock) sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; switch (sContestLadyPtr->category) { - case CONTEST_CATEGORY_COOL: - if (pokeblock->spicy != 0) - { - sheen = pokeblock->spicy; - correctFlavor = TRUE; - } - break; - case CONTEST_CATEGORY_BEAUTY: - if (pokeblock->dry != 0) - { - sheen = pokeblock->dry; - correctFlavor = TRUE; - } - break; - case CONTEST_CATEGORY_CUTE: - if (pokeblock->sweet != 0) - { - sheen = pokeblock->sweet; - correctFlavor = TRUE; - } - break; - case CONTEST_CATEGORY_SMART: - if (pokeblock->bitter != 0) - { - sheen = pokeblock->bitter; - correctFlavor = TRUE; - } - break; - case CONTEST_CATEGORY_TOUGH: - if (pokeblock->sour != 0) - { - sheen = pokeblock->sour; - correctFlavor = TRUE; - } - break; + case CONTEST_CATEGORY_COOL: + if (pokeblock->spicy != 0) + { + sheen = pokeblock->spicy; + correctFlavor = TRUE; + } + break; + case CONTEST_CATEGORY_BEAUTY: + if (pokeblock->dry != 0) + { + sheen = pokeblock->dry; + correctFlavor = TRUE; + } + break; + case CONTEST_CATEGORY_CUTE: + if (pokeblock->sweet != 0) + { + sheen = pokeblock->sweet; + correctFlavor = TRUE; + } + break; + case CONTEST_CATEGORY_SMART: + if (pokeblock->bitter != 0) + { + sheen = pokeblock->bitter; + correctFlavor = TRUE; + } + break; + case CONTEST_CATEGORY_TOUGH: + if (pokeblock->sour != 0) + { + sheen = pokeblock->sour; + correctFlavor = TRUE; + } + break; } if (correctFlavor == TRUE) { @@ -731,18 +692,18 @@ bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock) return correctFlavor; } -static void BufferContestLadyCategoryAndMonName(u8 *dest1, u8 *dest2) +static void BufferContestLadyCategoryAndMonName(u8 *category, u8 *nickname) { sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; - StringCopy(dest1, sContestLadyCategoryNames[sContestLadyPtr->category]); - StringCopy10(dest2, sContestLadyMonNames[sContestLadyPtr->category]); + StringCopy(category, sContestLadyCategoryNames[sContestLadyPtr->category]); + StringCopy10(nickname, sContestLadyMonNames[sContestLadyPtr->category]); } -void BufferContestLadyMonName(u8 *dest1, u8 *dest2) +void BufferContestLadyMonName(u8 *category, u8 *nickname) { sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; - *dest1 = sContestLadyPtr->category; - StringCopy(dest2, sContestLadyMonNames[sContestLadyPtr->category]); + *category = sContestLadyPtr->category; + StringCopy(nickname, sContestLadyMonNames[sContestLadyPtr->category]); } void BufferContestLadyPlayerName(u8 *dest) @@ -779,9 +740,7 @@ bool8 HasPlayerGivenContestLadyPokeblock(void) { sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; if (sContestLadyPtr->givenPokeblock == TRUE) - { return TRUE; - } return FALSE; } @@ -792,9 +751,8 @@ bool8 ShouldContestLadyShowGoOnAir(void) sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; if (sContestLadyPtr->numGoodPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD || sContestLadyPtr->numOtherPokeblocksGiven >= LILYCOVE_LADY_GIFT_THRESHOLD) - { putOnAir = TRUE; - } + return putOnAir; } From f8f7617946e150514313267ba52a35ebd9052936 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 14 Sep 2021 13:14:14 -0400 Subject: [PATCH 268/762] Add TAG_NONE --- gflib/sprite.c | 26 +- gflib/sprite.h | 2 +- src/battle_arena.c | 2 +- src/battle_dome.c | 28 +- src/battle_factory_screen.c | 12 +- src/battle_transition.c | 6 +- src/data/field_effects/field_effect_objects.h | 98 ++-- .../object_event_graphics_info.h | 490 +++++++++--------- src/decoration.c | 4 +- src/event_object_movement.c | 12 +- src/field_effect.c | 16 +- src/field_weather_effect.c | 2 +- src/fldeff_cut.c | 2 +- src/fldeff_misc.c | 10 +- src/hall_of_fame.c | 6 +- src/intro_credits_graphics.c | 2 +- src/item_menu_icons.c | 4 +- src/list_menu.c | 26 +- src/mirage_tower.c | 8 +- src/naming_screen.c | 2 +- src/overworld.c | 2 +- src/pokedex.c | 4 +- src/pokemon.c | 28 +- src/pokemon_icon.c | 2 +- src/pokenav_ribbons_2.c | 2 +- src/reset_rtc_screen.c | 2 +- src/rotating_gate.c | 4 +- src/slot_machine.c | 46 +- src/starter_choose.c | 2 +- src/trainer_pokemon_sprites.c | 18 +- src/trainer_see.c | 6 +- 31 files changed, 437 insertions(+), 437 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 408daf6f9159..62e15f74ca36 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -210,7 +210,7 @@ const union AffineAnimCmd * const gDummySpriteAffineAnimTable[] = { &sDummyAffin const struct SpriteTemplate gDummySpriteTemplate = { .tileTag = 0, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &gDummyOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -588,7 +588,7 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y, CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); - if (template->tileTag == 0xFFFF) + if (template->tileTag == TAG_NONE) { s16 tileNum; sprite->images = template->images; @@ -611,7 +611,7 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y, if (sprite->oam.affineMode & ST_OAM_AFFINE_ON_MASK) InitSpriteAffineAnim(sprite); - if (template->paletteTag != 0xFFFF) + if (template->paletteTag != TAG_NONE) sprite->oam.paletteNum = IndexOfSpritePaletteTag(template->paletteTag); return index; @@ -893,7 +893,7 @@ void ResetAllSprites(void) // UB: template pointer may point to freed temporary storage void FreeSpriteTiles(struct Sprite *sprite) { - if (sprite->template->tileTag != 0xFFFF) + if (sprite->template->tileTag != TAG_NONE) FreeSpriteTilesByTag(sprite->template->tileTag); } @@ -1540,7 +1540,7 @@ void FreeSpriteTilesByTag(u16 tag) for (i = start; i < start + count; i++) FREE_SPRITE_TILE(i); - sSpriteTileRangeTags[index] = 0xFFFF; + sSpriteTileRangeTags[index] = TAG_NONE; } } @@ -1550,7 +1550,7 @@ void FreeSpriteTileRanges(void) for (i = 0; i < MAX_SPRITES; i++) { - sSpriteTileRangeTags[i] = 0xFFFF; + sSpriteTileRangeTags[i] = TAG_NONE; SET_SPRITE_TILE_RANGE(i, 0, 0); } } @@ -1580,16 +1580,16 @@ u16 GetSpriteTileTagByTileStart(u16 start) for (i = 0; i < MAX_SPRITES; i++) { - if (sSpriteTileRangeTags[i] != 0xFFFF && sSpriteTileRanges[i * 2] == start) + if (sSpriteTileRangeTags[i] != TAG_NONE && sSpriteTileRanges[i * 2] == start) return sSpriteTileRangeTags[i]; } - return 0xFFFF; + return TAG_NONE; } void AllocSpriteTileRange(u16 tag, u16 start, u16 count) { - u8 freeIndex = IndexOfSpriteTileTag(0xFFFF); + u8 freeIndex = IndexOfSpriteTileTag(TAG_NONE); sSpriteTileRangeTags[freeIndex] = tag; SET_SPRITE_TILE_RANGE(freeIndex, start, count); } @@ -1599,7 +1599,7 @@ void FreeAllSpritePalettes(void) u8 i; gReservedSpritePaletteCount = 0; for (i = 0; i < 16; i++) - sSpritePaletteTags[i] = 0xFFFF; + sSpritePaletteTags[i] = TAG_NONE; } u8 LoadSpritePalette(const struct SpritePalette *palette) @@ -1609,7 +1609,7 @@ u8 LoadSpritePalette(const struct SpritePalette *palette) if (index != 0xFF) return index; - index = IndexOfSpritePaletteTag(0xFFFF); + index = IndexOfSpritePaletteTag(TAG_NONE); if (index == 0xFF) { @@ -1638,7 +1638,7 @@ void DoLoadSpritePalette(const u16 *src, u16 paletteOffset) u8 AllocSpritePalette(u16 tag) { - u8 index = IndexOfSpritePaletteTag(0xFFFF); + u8 index = IndexOfSpritePaletteTag(TAG_NONE); if (index == 0xFF) { return 0xFF; @@ -1669,7 +1669,7 @@ void FreeSpritePaletteByTag(u16 tag) { u8 index = IndexOfSpritePaletteTag(tag); if (index != 0xFF) - sSpritePaletteTags[index] = 0xFFFF; + sSpritePaletteTags[index] = TAG_NONE; } void SetSubspriteTables(struct Sprite *sprite, const struct SubspriteTable *subspriteTables) diff --git a/gflib/sprite.h b/gflib/sprite.h index 02bc0748b4cb..89299d43ed04 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -3,7 +3,7 @@ #define MAX_SPRITES 64 #define SPRITE_NONE 0xFF -#define SPRITE_INVALID_TAG 0xFFFF +#define TAG_NONE 0xFFFF struct SpriteSheet { diff --git a/src/battle_arena.c b/src/battle_arena.c index 11c918225a4d..13e610b9eec5 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -453,7 +453,7 @@ static const union AnimCmd *const sJudgementIconAnimCmds[] = static const struct SpriteTemplate sSpriteTemplate_JudgmentIcon = { .tileTag = TAG_JUDGEMENT_ICON, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &sJudgementIconOamData, .anims = sJudgementIconAnimCmds, .images = NULL, diff --git a/src/battle_dome.c b/src/battle_dome.c index edd7bf950221..665819bb96df 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -978,7 +978,7 @@ static const union AnimCmd * const sSpriteAnimTable_TourneyTreePokeball[] = static const struct SpriteTemplate sTourneyTreePokeballSpriteTemplate = { .tileTag = 0x0000, - .paletteTag = 0xffff, + .paletteTag = TAG_NONE, .oam = &sOamData_TourneyTreePokeball, .anims = sSpriteAnimTable_TourneyTreePokeball, .images = NULL, @@ -1007,7 +1007,7 @@ static const union AnimCmd * const sSpriteAnimTable_TourneyTreeCancelButton[] = static const struct SpriteTemplate sCancelButtonSpriteTemplate = { .tileTag = 0x0000, - .paletteTag = 0xffff, + .paletteTag = TAG_NONE, .oam = &sOamData_TourneyTreeCloseButton, .anims = sSpriteAnimTable_TourneyTreeCancelButton, .images = NULL, @@ -1036,7 +1036,7 @@ static const union AnimCmd * const sSpriteAnimTable_TourneyTreeExitButton[] = static const struct SpriteTemplate sExitButtonSpriteTemplate = { .tileTag = 0x0000, - .paletteTag = 0xffff, + .paletteTag = TAG_NONE, .oam = &sOamData_TourneyTreeCloseButton, .anims = sSpriteAnimTable_TourneyTreeExitButton, .images = NULL, @@ -1083,7 +1083,7 @@ static const union AnimCmd * const sSpriteAnimTable_HorizontalScrollArrow[] = static const struct SpriteTemplate sHorizontalScrollArrowSpriteTemplate = { .tileTag = 0x0000, - .paletteTag = 0xffff, + .paletteTag = TAG_NONE, .oam = &sOamData_HorizontalScrollArrow, .anims = sSpriteAnimTable_HorizontalScrollArrow, .images = NULL, @@ -1094,7 +1094,7 @@ static const struct SpriteTemplate sHorizontalScrollArrowSpriteTemplate = static const struct SpriteTemplate sVerticalScrollArrowSpriteTemplate = { .tileTag = 0x0000, - .paletteTag = 0xffff, + .paletteTag = TAG_NONE, .oam = &sOamData_VerticalScrollArrow, .anims = sSpriteAnimTable_VerticalScrollArrow, .images = NULL, @@ -4267,11 +4267,11 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) // Create trainer pic sprite if (trainerId == TRAINER_PLAYER) - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 48, y + 64, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 48, y + 64, palSlot + 12, TAG_NONE); else if (trainerId == TRAINER_FRONTIER_BRAIN) - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 48, y + 64, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 48, y + 64, palSlot + 12, TAG_NONE); else - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerId), TRUE, x + 48, y + 64, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerId), TRUE, x + 48, y + 64, palSlot + 12, TAG_NONE); if (flags & MOVE_CARD) gSprites[sInfoCard->spriteIds[arrId]].invisible = TRUE; @@ -4741,11 +4741,11 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) // Draw left trainer sprite. if (trainerIds[0] == TRAINER_PLAYER) - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 48, y + 88, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 48, y + 88, palSlot + 12, TAG_NONE); else if (trainerIds[0] == TRAINER_FRONTIER_BRAIN) - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 48, y + 88, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 48, y + 88, palSlot + 12, TAG_NONE); else - sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerIds[0]), TRUE, x + 48, y + 88, palSlot + 12, 0xFFFF); + sInfoCard->spriteIds[arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerIds[0]), TRUE, x + 48, y + 88, palSlot + 12, TAG_NONE); if (flags & MOVE_CARD) gSprites[sInfoCard->spriteIds[arrId]].invisible = TRUE; @@ -4754,11 +4754,11 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) // Draw right trainer sprite. if (trainerIds[1] == TRAINER_PLAYER) - sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 192, y + 88, palSlot + 13, 0xFFFF); + sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), TRUE, x + 192, y + 88, palSlot + 13, TAG_NONE); else if (trainerIds[1] == TRAINER_FRONTIER_BRAIN) - sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 192, y + 88, palSlot + 13, 0xFFFF); + sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(GetDomeBrainTrainerPicId(), TRUE, x + 192, y + 88, palSlot + 13, TAG_NONE); else - sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerIds[1]), TRUE, x + 192, y + 88, palSlot + 13, 0xFFFF); + sInfoCard->spriteIds[1 + arrId] = CreateTrainerPicSprite(GetFrontierTrainerFrontSpriteId(trainerIds[1]), TRUE, x + 192, y + 88, palSlot + 13, TAG_NONE); if (flags & MOVE_CARD) gSprites[sInfoCard->spriteIds[1 + arrId]].invisible = TRUE; diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 3fb65d498da8..4a48eeb30648 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -2008,7 +2008,7 @@ static void Select_CreateMonSprite(void) u32 personality = GetMonData(mon, MON_DATA_PERSONALITY, NULL); u32 otId = GetMonData(mon, MON_DATA_OT_ID, NULL); - sFactorySelectScreen->monPics[1].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, 0xFFFF); + sFactorySelectScreen->monPics[1].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, TAG_NONE); gSprites[sFactorySelectScreen->monPics[1].monSpriteId].centerToCornerVecX = 0; gSprites[sFactorySelectScreen->monPics[1].monSpriteId].centerToCornerVecY = 0; @@ -2034,7 +2034,7 @@ static void Select_ReshowMonSprite(void) personality = GetMonData(mon, MON_DATA_PERSONALITY, NULL); otId = GetMonData(mon, MON_DATA_OT_ID, NULL); - sFactorySelectScreen->monPics[1].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, 0xFFFF); + sFactorySelectScreen->monPics[1].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, TAG_NONE); gSprites[sFactorySelectScreen->monPics[1].monSpriteId].centerToCornerVecX = 0; gSprites[sFactorySelectScreen->monPics[1].monSpriteId].centerToCornerVecY = 0; @@ -2056,7 +2056,7 @@ static void Select_CreateChosenMonsSprites(void) u32 personality = GetMonData(mon, MON_DATA_PERSONALITY, NULL); u32 otId = GetMonData(mon, MON_DATA_OT_ID, NULL); - sFactorySelectScreen->monPics[i].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, (i * 72) + 16, 32, i + 13, 0xFFFF); + sFactorySelectScreen->monPics[i].monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, (i * 72) + 16, 32, i + 13, TAG_NONE); gSprites[sFactorySelectScreen->monPics[i].monSpriteId].centerToCornerVecX = 0; gSprites[sFactorySelectScreen->monPics[i].monSpriteId].centerToCornerVecY = 0; break; @@ -4072,9 +4072,9 @@ static void Swap_ShowSummaryMonSprite(void) otId = GetMonData(mon, MON_DATA_OT_ID, NULL); #ifdef BUGFIX - sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, 0xFFFF); + sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, TAG_NONE); #else - sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, personality, otId, TRUE, 88, 32, 15, 0xFFFF); + sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, personality, otId, TRUE, 88, 32, 15, TAG_NONE); #endif gSprites[sFactorySwapScreen->monPic.monSpriteId].centerToCornerVecX = 0; gSprites[sFactorySwapScreen->monPic.monSpriteId].centerToCornerVecY = 0; @@ -4296,7 +4296,7 @@ static void Swap_CreateMonSprite(void) personality = GetMonData(mon, MON_DATA_PERSONALITY, NULL); otId = GetMonData(mon, MON_DATA_OT_ID, NULL); - sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, 0xFFFF); + sFactorySwapScreen->monPic.monSpriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, 88, 32, 15, TAG_NONE); gSprites[sFactorySwapScreen->monPic.monSpriteId].centerToCornerVecX = 0; gSprites[sFactorySwapScreen->monPic.monSpriteId].centerToCornerVecY = 0; diff --git a/src/battle_transition.c b/src/battle_transition.c index 4d446b3df138..2fc4c685443b 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -748,7 +748,7 @@ static const union AffineAnimCmd *const sSpriteAffineAnimTable_Pokeball[] = static const struct SpriteTemplate sSpriteTemplate_Pokeball = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_POKEBALL, .oam = &gObjectEventBaseOam_32x32, .anims = sSpriteAnimTable_Pokeball, @@ -797,7 +797,7 @@ static const union AnimCmd *const sSpriteAnimTable_UnusedBrendanLass[] = static const struct SpriteTemplate sSpriteTemplate_UnusedBrendan = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0x100A, .oam = &sOam_UnusedBrendanLass, .anims = sSpriteAnimTable_UnusedBrendanLass, @@ -808,7 +808,7 @@ static const struct SpriteTemplate sSpriteTemplate_UnusedBrendan = static const struct SpriteTemplate sSpriteTemplate_UnusedLass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0x100A, .oam = &sOam_UnusedBrendanLass, .anims = sSpriteAnimTable_UnusedBrendanLass, diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 54145efbcc5f..a8573eb52792 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -29,8 +29,8 @@ static const struct SpriteFrameImage sPicTable_ShadowExtraLarge[] = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_8x8, .anims = sAnimTable_Shadow, .images = sPicTable_ShadowSmall, @@ -39,8 +39,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_Shadow, .images = sPicTable_ShadowMedium, @@ -49,8 +49,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_32x8, .anims = sAnimTable_Shadow, .images = sPicTable_ShadowLarge, @@ -59,8 +59,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_64x32, .anims = sAnimTable_Shadow, .images = sPicTable_ShadowExtraLarge, @@ -92,7 +92,7 @@ static const union AnimCmd *const sAnimTable_TallGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_TallGrass, @@ -128,7 +128,7 @@ static const union AnimCmd *const sAnimTable_Ripple[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_Ripple, @@ -161,7 +161,7 @@ static const union AnimCmd *const sAnimTable_Ash[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Ash = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_Ash, @@ -209,8 +209,8 @@ static const union AnimCmd *const sAnimTable_SurfBlob[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_32x32, .anims = sAnimTable_SurfBlob, .images = sPicTable_SurfBlob, @@ -266,8 +266,8 @@ static const union AnimCmd *const sAnimTable_Arrow[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_Arrow, .images = sPicTable_Arrow, @@ -295,7 +295,7 @@ static const union AnimCmd *const sAnimTable_GroundImpactDust[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_GroundImpactDust, @@ -326,7 +326,7 @@ static const union AnimCmd *const sAnimTable_JumpTallGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_JumpTallGrass, @@ -374,7 +374,7 @@ static const union AnimCmd *const sAnimTable_SandFootprints[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_SandFootprints, @@ -422,7 +422,7 @@ static const union AnimCmd *const sAnimTable_DeepSandFootprints[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_DeepSandFootprints, @@ -500,7 +500,7 @@ static const union AnimCmd *const sAnimTable_BikeTireTracks[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_BikeTireTracks, @@ -531,7 +531,7 @@ static const union AnimCmd *const sAnimTable_JumpBigSplash[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_JumpBigSplash, @@ -572,7 +572,7 @@ static const union AnimCmd *const sAnimTable_Splash[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Splash = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_Splash, @@ -601,7 +601,7 @@ static const union AnimCmd *const sAnimTable_JumpSmallSplash[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_JumpSmallSplash, @@ -635,7 +635,7 @@ static const union AnimCmd *const sAnimTable_LongGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_LongGrass, @@ -670,7 +670,7 @@ static const union AnimCmd *const sAnimTable_JumpLongGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_JumpLongGrass, @@ -711,7 +711,7 @@ static const union AnimCmd *const sAnimTable_UnusedGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_UnusedGrass, @@ -744,7 +744,7 @@ static const union AnimCmd *const sAnimTable_UnusedGrass2[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2 = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_UnusedGrass2, @@ -775,7 +775,7 @@ static const union AnimCmd *const sAnimTable_UnusedSand[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_UnusedSand, @@ -804,7 +804,7 @@ static const union AnimCmd *const sAnimTable_SandPile[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x8, .anims = sAnimTable_SandPile, @@ -837,7 +837,7 @@ static const union AnimCmd *const sAnimTable_WaterSurfacing[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_WaterSurfacing, @@ -882,7 +882,7 @@ static const union AffineAnimCmd *const sAffineAnims_ReflectionDistortion[] = const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion = { .tileTag = 0x0, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &gDummyOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -930,8 +930,8 @@ static const union AnimCmd *const sAnimTable_Sparkle[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_Sparkle, .images = sPicTable_Sparkle, @@ -974,8 +974,8 @@ static const union AnimCmd *const sAnimTable_TreeDisguise[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x32, .anims = sAnimTable_TreeDisguise, .images = sPicTable_TreeDisguise, @@ -1018,8 +1018,8 @@ static const union AnimCmd *const sAnimTable_MountainDisguise[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x32, .anims = sAnimTable_MountainDisguise, .images = sPicTable_MountainDisguise, @@ -1038,8 +1038,8 @@ static const struct SpriteFrameImage sPicTable_SandDisguisePlaceholder[] = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_16x32, .anims = sAnimTable_TreeDisguise, .images = sPicTable_SandDisguisePlaceholder, @@ -1063,8 +1063,8 @@ static const union AnimCmd *const sAnimTable_Bird[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Bird = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_32x32, .anims = sAnimTable_Bird, .images = sPicTable_Bird, @@ -1090,7 +1090,7 @@ static const union AnimCmd *const sAnimTable_ShortGrass[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_ShortGrass, @@ -1115,7 +1115,7 @@ static const union AnimCmd *const sAnimTable_HotSpringsWater[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_HotSpringsWater, @@ -1149,7 +1149,7 @@ static const union AnimCmd *const sAnimTable_AshPuff[] = const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_ASH, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_AshPuff, @@ -1185,7 +1185,7 @@ static const union AnimCmd *const sAnimTable_AshLaunch[] = const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_ASH, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_AshLaunch, @@ -1224,7 +1224,7 @@ static const union AnimCmd *const sAnimTable_Bubbles[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &gObjectEventBaseOam_16x32, .anims = sAnimTable_Bubbles, @@ -1252,7 +1252,7 @@ static const union AnimCmd *const sAnimTable_SmallSparkle[] = }; const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_SMALL_SPARKLE, .oam = &gObjectEventBaseOam_16x16, .anims = sAnimTable_SmallSparkle, @@ -1277,8 +1277,8 @@ const struct SpriteFrameImage sPicTable_RayquazaSpotlightEffect[] = { }; const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &gObjectEventBaseOam_32x32, .anims = sAnimTable_RayquazaSpotlightEffect, .images = sPicTable_RayquazaSpotlightEffect, diff --git a/src/data/object_events/object_event_graphics_info.h b/src/data/object_events/object_event_graphics_info.h index ddc6a1cad38a..ea424090a5f9 100755 --- a/src/data/object_events/object_event_graphics_info.h +++ b/src/data/object_events/object_event_graphics_info.h @@ -1,245 +1,245 @@ -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = {0xFFFF, OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_QuintyPlump, sPicTable_QuintyPlump, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_NinjaBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Twin, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleGirl, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RichBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_FatMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cook, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_LinkReceptionist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Camper, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Picnicker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Youngster, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BugCatcher, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PsychicM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maniac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HexManiac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BlackBelt, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Beauty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lass, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Gentleman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sailor, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Fisherman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Hiker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Nurse, sPicTable_Nurse, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ItemBall, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, NULL, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ProfBirch, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedNatuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedMagnemiteDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedSquirtleDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedWooperDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPorygon2Doll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_CuttableTree, sPicTable_CuttableTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MartEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RooftopSaleWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Teala, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BreakableRock, sPicTable_BreakableRock, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PushableBoulder, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MrBrineysBoat, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = {0xFFFF, OBJ_EVENT_PAL_TAG_TRUCK, OBJ_EVENT_PAL_TAG_NONE, 1152, 48, 48, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_48x48, sAnimTable_Inanimate, sPicTable_Truck, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothCarryingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = {0xFFFF, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothFacingAway, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BirchsBag, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_ZIGZAGOON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_EnemyZigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = {0xFFFF, OBJ_EVENT_PAL_TAG_POOCHYENA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Poochyena, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Artist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cameraman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = {0xFFFF, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = {0xFFFF, OBJ_EVENT_PAL_TAG_MOVING_BOX, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MovingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = {0xFFFF, OBJ_EVENT_PAL_TAG_CABLE_CAR, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Inanimate, sPicTable_CableCar, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_DevonEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sidney, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Phoebe, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Glacia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Drake, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Roxanne, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brawly, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wattson, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Flannery, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Norman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Winona, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Liza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tate, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wallace, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Steven, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wally, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_RubySapphireLittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_BrendanFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_MayFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HotSpringsOldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = {0xFFFF, OBJ_EVENT_PAL_TAG_SSTIDAL, OBJ_EVENT_PAL_TAG_NONE, 1920, 96, 40, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_96x40, sAnimTable_Standard, sPicTable_SSTidal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, OBJ_EVENT_PAL_TAG_NONE, 1408, 88, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_88x32, sAnimTable_Standard, sPicTable_SubmarineShadow, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PichuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MarillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TogepiDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_CyndaquilDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ChikoritaDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TotodileDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_JigglypuffDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MeowthDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ClefairyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DittoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SmoochumDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TreeckoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TorchicDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MudkipDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DuskullDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WynautDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BaltoyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KecleonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_AzurillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SkittyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SwabluDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GulpinDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_LotadDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SeedotDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikaCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_RoundCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KissCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ZigzagCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SpinCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DiamondCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BallCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GrassCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_FireCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WaterCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigSnorlaxDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRhydonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigLaprasDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigVenusaurDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigCharizardDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigBlastoiseDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigWailmerDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegirockDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegiceDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_GameboyKid, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ContestJudge, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_BrendanDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_MayDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Archie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maxie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_Fossil, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Skitty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep = {0xFFFF, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep = {0xFFFF, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Pikachu, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azumarill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Wingull, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 128, 16, 16, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberMSwimming, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azurill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mom, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = {0xFFFF, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Juan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scott, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MysteryEventDeliveryman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_Statue, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_S, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Kirlia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Dusclops, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_UnionRoomAttendant, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Red, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = {0xFFFF, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Leaf, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sudowoodo, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mew, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = {0xFFFF, OBJ_EVENT_PAL_TAG_DEOXYS, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Deoxys, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = {0xFFFF, OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BirthIslandStone, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Anabel, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tucker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Greta, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Spenser, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Noland, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lucy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = {0xFFFF, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brandon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireBrendan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = {0xFFFF, OBJ_EVENT_PAL_TAG_RS_MAY, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireMay, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = {0xFFFF, OBJ_EVENT_PAL_TAG_LUGIA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Lugia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = {0xFFFF, OBJ_EVENT_PAL_TAG_HO_OH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_HoOh, sPicTable_HoOh, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = {TAG_NONE, OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_QuintyPlump, sPicTable_QuintyPlump, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_NinjaBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Twin, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleGirl, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RichBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_FatMan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman4, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cook, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_LinkReceptionist, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldMan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Camper, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Picnicker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man3, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman5, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Youngster, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BugCatcher, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PsychicM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maniac, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HexManiac, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BlackBelt, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Beauty, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lass, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Gentleman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sailor, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Fisherman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Hiker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Nurse, sPicTable_Nurse, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ItemBall, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, NULL, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ProfBirch, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man4, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man5, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedNatuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedMagnemiteDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedSquirtleDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedWooperDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPikachuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPorygon2Doll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_CuttableTree, sPicTable_CuttableTree, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MartEmployee, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RooftopSaleWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Teala, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BreakableRock, sPicTable_BreakableRock, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PushableBoulder, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MrBrineysBoat, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = {TAG_NONE, OBJ_EVENT_PAL_TAG_TRUCK, OBJ_EVENT_PAL_TAG_NONE, 1152, 48, 48, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_48x48, sAnimTable_Inanimate, sPicTable_Truck, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = {TAG_NONE, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothCarryingBox, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = {TAG_NONE, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothFacingAway, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BirchsBag, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = {TAG_NONE, OBJ_EVENT_PAL_TAG_ZIGZAGOON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_EnemyZigzagoon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = {TAG_NONE, OBJ_EVENT_PAL_TAG_POOCHYENA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Poochyena, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Artist, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cameraman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = {TAG_NONE, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanUnderwater, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = {TAG_NONE, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayUnderwater, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = {TAG_NONE, OBJ_EVENT_PAL_TAG_MOVING_BOX, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MovingBox, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = {TAG_NONE, OBJ_EVENT_PAL_TAG_CABLE_CAR, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Inanimate, sPicTable_CableCar, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist2, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_DevonEmployee, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberM, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberF, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sidney, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Phoebe, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Glacia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Drake, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Roxanne, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brawly, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wattson, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Flannery, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Norman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Winona, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Liza, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tate, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wallace, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Steven, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wally, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_RubySapphireLittleBoy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_BrendanFishing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_MayFishing, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HotSpringsOldWoman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = {TAG_NONE, OBJ_EVENT_PAL_TAG_SSTIDAL, OBJ_EVENT_PAL_TAG_NONE, 1920, 96, 40, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_96x40, sAnimTable_Standard, sPicTable_SSTidal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = {TAG_NONE, OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, OBJ_EVENT_PAL_TAG_NONE, 1408, 88, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_88x32, sAnimTable_Standard, sPicTable_SubmarineShadow, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PichuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikachuDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MarillDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TogepiDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_CyndaquilDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ChikoritaDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TotodileDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_JigglypuffDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MeowthDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ClefairyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DittoDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SmoochumDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TreeckoDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TorchicDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MudkipDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DuskullDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WynautDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BaltoyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KecleonDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_AzurillDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SkittyDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SwabluDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GulpinDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_LotadDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SeedotDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikaCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_RoundCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KissCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ZigzagCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SpinCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DiamondCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BallCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GrassCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_FireCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WaterCushion, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigSnorlaxDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRhydonDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigLaprasDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigVenusaurDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigCharizardDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigBlastoiseDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigWailmerDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegirockDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegiceDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_GameboyKid, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ContestJudge, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanWatering, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayWatering, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_BrendanDecorating, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_MayDecorating, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Archie, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maxie, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_Fossil, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Skitty, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep = {TAG_NONE, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep = {TAG_NONE, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Pikachu, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azumarill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Wingull, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 128, 16, 16, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberMSwimming, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azurill, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mom, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Juan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scott, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MysteryEventDeliveryman, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_Statue, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_S, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Kirlia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Dusclops, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_UnionRoomAttendant, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = {TAG_NONE, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Red, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = {TAG_NONE, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Leaf, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sudowoodo, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mew, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = {TAG_NONE, OBJ_EVENT_PAL_TAG_DEOXYS, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Deoxys, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = {TAG_NONE, OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BirthIslandStone, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Anabel, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tucker, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Greta, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Spenser, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Noland, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lucy, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brandon, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = {TAG_NONE, OBJ_EVENT_PAL_TAG_RS_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireBrendan, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = {TAG_NONE, OBJ_EVENT_PAL_TAG_RS_MAY, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireMay, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = {TAG_NONE, OBJ_EVENT_PAL_TAG_LUGIA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Lugia, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = {TAG_NONE, OBJ_EVENT_PAL_TAG_HO_OH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_HoOh, sPicTable_HoOh, gDummySpriteAffineAnimTable}; diff --git a/src/decoration.c b/src/decoration.c index 39858e95783a..131f6e502d5a 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -356,7 +356,7 @@ static const struct SpriteFrameImage sDecorSelectorSpriteFrameImages = static const struct SpriteTemplate sDecorationSelectorSpriteTemplate = { - 0xFFFF, + TAG_NONE, PLACE_DECORATION_SELECTOR_TAG, &sDecorSelectorOam, sDecorSelectorAnimCmds, @@ -487,7 +487,7 @@ static const struct SpriteFrameImage sPuttingAwayCursorPicTable = static const struct SpriteTemplate sPuttingAwayCursorSpriteTemplate = { - 0xFFFF, + TAG_NONE, PLACE_DECORATION_PLAYER_TAG, &sPuttingAwayCursorOamData, sPuttingAwayCursorAnimCmds, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 36f7f0a3efdf..df6c4633c773 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -157,7 +157,7 @@ const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, static const struct SpriteTemplate sCameraSpriteTemplate = { .tileTag = 0, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &gDummyOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -1406,7 +1406,7 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl if (objectEvent->movementType == MOVEMENT_TYPE_INVISIBLE) objectEvent->invisible = TRUE; - *(u16 *)&spriteTemplate->paletteTag = 0xFFFF; + *(u16 *)&spriteTemplate->paletteTag = TAG_NONE; spriteId = CreateSprite(spriteTemplate, 0, 0, 0); if (spriteId == MAX_SPRITES) { @@ -1531,7 +1531,7 @@ u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x spriteTemplate = malloc(sizeof(struct SpriteTemplate)); MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, callback, spriteTemplate, &subspriteTables); - if (spriteTemplate->paletteTag != 0xFFFF) + if (spriteTemplate->paletteTag != TAG_NONE) { LoadObjectEventPalette(spriteTemplate->paletteTag); } @@ -1559,7 +1559,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di graphicsInfo = GetObjectEventGraphicsInfo(graphicsId); MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, UpdateObjectEventSprite, &spriteTemplate, &subspriteTables); - *(u16 *)&spriteTemplate.paletteTag = 0xFFFF; + *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; x += 7; y += 7; SetSpritePosToOffsetMapCoords(&x, &y, 8, 16); @@ -1705,7 +1705,7 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(objectEvent->graphicsId, objectEvent->movementType, &spriteTemplate, &subspriteTables); spriteTemplate.images = &spriteFrameImage; - *(u16 *)&spriteTemplate.paletteTag = 0xFFFF; + *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; paletteSlot = graphicsInfo->paletteSlot; if (paletteSlot == 0) { @@ -1720,7 +1720,7 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) paletteSlot -= 16; _PatchObjectPalette(graphicsInfo->paletteTag, paletteSlot); } - *(u16 *)&spriteTemplate.paletteTag = 0xFFFF; + *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; i = CreateSprite(&spriteTemplate, 0, 0, 0); if (i != MAX_SPRITES) diff --git a/src/field_effect.c b/src/field_effect.c index 0d61b35f1da0..f01be2f2c380 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -348,7 +348,7 @@ static const union AnimCmd *const sAnimTable_NewGameBirch[] = static const struct SpriteTemplate sSpriteTemplate_NewGameBirch = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0x1006, .oam = &sOam_64x64, .anims = sAnimTable_NewGameBirch, @@ -513,7 +513,7 @@ static const union AnimCmd *const sAnims_HofMonitor[] = static const struct SpriteTemplate sSpriteTemplate_PokeballGlow = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_POKEBALL_GLOW, .oam = &sOam_8x8, .anims = sAnims_Flicker, @@ -524,7 +524,7 @@ static const struct SpriteTemplate sSpriteTemplate_PokeballGlow = static const struct SpriteTemplate sSpriteTemplate_PokecenterMonitor = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &sOam_16x16, .anims = sAnims_Flicker, @@ -535,7 +535,7 @@ static const struct SpriteTemplate sSpriteTemplate_PokecenterMonitor = static const struct SpriteTemplate sSpriteTemplate_HofMonitorBig = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_HOF_MONITOR, .oam = &sOam_16x16, .anims = sAnims_HofMonitor, @@ -546,7 +546,7 @@ static const struct SpriteTemplate sSpriteTemplate_HofMonitorBig = static const struct SpriteTemplate sSpriteTemplate_HofMonitorSmall = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_HOF_MONITOR, .oam = &sOam_32x16, .anims = sAnims_HofMonitor, @@ -809,7 +809,7 @@ void FieldEffectFreeTilesIfUnused(u16 tileStart) u8 i; u16 tag = GetSpriteTileTagByTileStart(tileStart); - if (tag != 0xFFFF) + if (tag != TAG_NONE) { for (i = 0; i < MAX_SPRITES; i++) if (gSprites[i].inUse && gSprites[i].usingSheet && tileStart == gSprites[i].sheetTileStart) @@ -823,7 +823,7 @@ void FieldEffectFreePaletteIfUnused(u8 paletteNum) u8 i; u16 tag = GetSpritePaletteTagByPaletteNum(paletteNum); - if (tag != 0xFFFF) + if (tag != TAG_NONE) { for (i = 0; i < MAX_SPRITES; i++) if (gSprites[i].inUse && gSprites[i].oam.paletteNum == paletteNum) @@ -3768,7 +3768,7 @@ static const union AnimCmd *const sAnims_DeoxysRockFragment[] = { }; static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 4378, .oam = &sOam_8x8, .anims = sAnims_DeoxysRockFragment, diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 0c3256ab754e..73215873395d 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -878,7 +878,7 @@ static const union AnimCmd *const sSnowflakeAnimCmds[] = static const struct SpriteTemplate sSnowflakeSpriteTemplate = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_WEATHER, .oam = &sSnowflakeSpriteOamData, .anims = sSnowflakeAnimCmds, diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 164f9507b5c3..daa46ad76592 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -125,7 +125,7 @@ const struct SpritePalette gSpritePalette_CutGrass = {gFieldEffectPal_CutGrass, static const struct SpriteTemplate sSpriteTemplate_CutGrass = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_CUT_GRASS, .oam = &sOamData_CutGrass, .anims = sSpriteAnimTable_CutGrass, diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index 9a76ed744053..c01babb68adf 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -193,7 +193,7 @@ static const struct SpriteFrameImage sPicTable_SecretPowerShrub[] = static const struct SpriteTemplate sSpriteTemplate_SecretPowerCave = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_SECRET_POWER_TREE, .oam = &sOam_SecretPower, .anims = sAnimTable_SecretPowerCave, @@ -204,7 +204,7 @@ static const struct SpriteTemplate sSpriteTemplate_SecretPowerCave = static const struct SpriteTemplate sSpriteTemplate_SecretPowerTree = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_SECRET_POWER_PLANT, .oam = &sOam_SecretPower, .anims = sAnimTable_SecretPowerTree, @@ -215,7 +215,7 @@ static const struct SpriteTemplate sSpriteTemplate_SecretPowerTree = static const struct SpriteTemplate sSpriteTemplate_SecretPowerShrub = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_SECRET_POWER_PLANT, .oam = &sOam_SecretPower, .anims = sAnimTable_SecretPowerShrub, @@ -261,7 +261,7 @@ static const struct SpriteFrameImage sPicTable_SandPillar[] = static const struct SpriteTemplate sSpriteTemplate_SandPillar = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_SAND_PILLAR, .oam = &sOam_SandPillar, .anims = sAnimTable_SandPillar, @@ -299,7 +299,7 @@ static const union AnimCmd *const sAnimTable_RecordMixLights[] = static const struct SpriteTemplate sSpriteTemplate_RecordMixLights = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0x1000, .oam = &gObjectEventBaseOam_32x8, .anims = sAnimTable_RecordMixLights, diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 590c0d01dad8..929e019f1ca2 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -588,7 +588,7 @@ static void Task_Hof_DisplayMon(u8 taskId) if (currMon->species == SPECIES_EGG) destY += 10; - spriteId = CreatePicSprite2(currMon->species, currMon->tid, currMon->personality, 1, startX, startY, currMonId, 0xFFFF); + spriteId = CreatePicSprite2(currMon->species, currMon->tid, currMon->personality, 1, startX, startY, currMonId, TAG_NONE); gSprites[spriteId].tDestinationX = destX; gSprites[spriteId].tDestinationY = destY; gSprites[spriteId].data[0] = 0; @@ -703,7 +703,7 @@ static void Task_Hof_DisplayPlayer(u8 taskId) ShowBg(0); ShowBg(1); ShowBg(3); - gTasks[taskId].tPlayerSpriteID = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), 1, 120, 72, 6, 0xFFFF); + gTasks[taskId].tPlayerSpriteID = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), 1, 120, 72, 6, TAG_NONE); AddWindow(&sHof_WindowTemplate); LoadWindowGfx(1, gSaveBlock2Ptr->optionsWindowFrameType, 0x21D, 0xD0); LoadPalette(GetTextWindowPalette(1), 0xE0, 0x20); @@ -936,7 +936,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId) if (currMon->species == SPECIES_EGG) posY += 10; - spriteId = CreateMonPicSprite_HandleDeoxys(currMon->species, currMon->tid, currMon->personality, 1, posX, posY, i, 0xFFFF); + spriteId = CreateMonPicSprite_HandleDeoxys(currMon->species, currMon->tid, currMon->personality, 1, posX, posY, i, TAG_NONE); gSprites[spriteId].oam.priority = 1; gTasks[taskId].tMonSpriteId(i) = spriteId; } diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index bceddd9b7043..38a74bdb9091 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -79,7 +79,7 @@ static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite); static const struct SpriteTemplate sSpriteTemplate_MovingScenery = { .tileTag = TAG_MOVING_SCENERY, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &gDummyOamData, .anims = gDummySpriteAnimTable, .images = NULL, diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 8bcf506fbfee..335cdee9635c 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -271,7 +271,7 @@ static const struct SpriteFrameImage sBerryPicSpriteImageTable[] = static const struct SpriteTemplate gBerryPicSpriteTemplate = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = TAG_BERRY_PIC_PAL, .oam = &sBerryPicOamData, .anims = sBerryPicSpriteAnimTable, @@ -310,7 +310,7 @@ static const union AffineAnimCmd *const sBerryPicRotatingAnimCmds[] = static const struct SpriteTemplate gBerryPicRotatingSpriteTemplate = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = TAG_BERRY_PIC_PAL, .oam = &sBerryPicRotatingOamData, .anims = sBerryPicSpriteAnimTable, diff --git a/src/list_menu.c b/src/list_menu.c index 83c9acd669b0..84b917eecc52 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -683,7 +683,7 @@ static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind) cursor.rowWidth = GetWindowAttribute(list->template.windowId, WINDOW_WIDTH) * 8 + 2; cursor.rowHeight = GetFontAttribute(list->template.fontId, FONTATTR_MAX_LETTER_HEIGHT) + 2; cursor.tileTag = 0x4000; - cursor.palTag = SPRITE_INVALID_TAG; + cursor.palTag = TAG_NONE; cursor.palNum = 15; return ListMenuAddCursorObjectInternal(&cursor, cursorKind); @@ -1076,7 +1076,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 spriteSheet.tag = arrowInfo->tileTag; LoadCompressedSpriteSheet(&spriteSheet); - if (arrowInfo->palTag == SPRITE_INVALID_TAG) + if (arrowInfo->palTag == TAG_NONE) { LoadPalette(sRedArrowPal, (16 * arrowInfo->palNum) + 0x100, 0x20); } @@ -1099,7 +1099,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 data->topSpriteId = AddScrollIndicatorArrowObject(arrowInfo->firstArrowType, arrowInfo->firstX, arrowInfo->firstY, arrowInfo->tileTag, arrowInfo->palTag); data->bottomSpriteId = AddScrollIndicatorArrowObject(arrowInfo->secondArrowType, arrowInfo->secondX, arrowInfo->secondY, arrowInfo->tileTag, arrowInfo->palTag); - if (arrowInfo->palTag == SPRITE_INVALID_TAG) + if (arrowInfo->palTag == TAG_NONE) { gSprites[data->topSpriteId].oam.paletteNum = arrowInfo->palNum; gSprites[data->bottomSpriteId].oam.paletteNum = arrowInfo->palNum; @@ -1179,9 +1179,9 @@ void RemoveScrollIndicatorArrowPair(u8 taskId) { struct ScrollIndicatorPair *data = (void*) gTasks[taskId].data; - if (data->tileTag != SPRITE_INVALID_TAG) + if (data->tileTag != TAG_NONE) FreeSpriteTilesByTag(data->tileTag); - if (data->palTag != SPRITE_INVALID_TAG) + if (data->palTag != TAG_NONE) FreeSpritePaletteByTag(data->palTag); DestroySprite(&gSprites[data->topSpriteId]); @@ -1322,7 +1322,7 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor) spriteSheet.tag = cursor->tileTag; LoadCompressedSpriteSheet(&spriteSheet); - if (cursor->palTag == SPRITE_INVALID_TAG) + if (cursor->palTag == TAG_NONE) { LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); } @@ -1352,7 +1352,7 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor) gSprites[data->spriteId].subpriority = 0; gSprites[data->spriteId].subspriteTableNum = 0; - if (cursor->palTag == SPRITE_INVALID_TAG) + if (cursor->palTag == TAG_NONE) { gSprites[data->spriteId].oam.paletteNum = cursor->palNum; } @@ -1374,9 +1374,9 @@ static void ListMenuRemoveRedOutlineCursorObject(u8 taskId) Free(data->subspritesPtr); - if (data->tileTag != SPRITE_INVALID_TAG) + if (data->tileTag != TAG_NONE) FreeSpriteTilesByTag(data->tileTag); - if (data->palTag != SPRITE_INVALID_TAG) + if (data->palTag != TAG_NONE) FreeSpritePaletteByTag(data->palTag); DestroySprite(&gSprites[data->spriteId]); @@ -1407,7 +1407,7 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) spriteSheet.tag = cursor->tileTag; LoadCompressedSpriteSheet(&spriteSheet); - if (cursor->palTag == SPRITE_INVALID_TAG) + if (cursor->palTag == TAG_NONE) { LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); } @@ -1432,7 +1432,7 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) gSprites[data->spriteId].x2 = 8; gSprites[data->spriteId].y2 = 8; - if (cursor->palTag == SPRITE_INVALID_TAG) + if (cursor->palTag == TAG_NONE) { gSprites[data->spriteId].oam.paletteNum = cursor->palNum; } @@ -1452,9 +1452,9 @@ static void ListMenuRemoveRedArrowCursorObject(u8 taskId) { struct RedArrowCursor *data = (void*) gTasks[taskId].data; - if (data->tileTag != SPRITE_INVALID_TAG) + if (data->tileTag != TAG_NONE) FreeSpriteTilesByTag(data->tileTag); - if (data->palTag != SPRITE_INVALID_TAG) + if (data->palTag != TAG_NONE) FreeSpritePaletteByTag(data->palTag); DestroySprite(&gSprites[data->spriteId]); diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 9b6d0d887b13..cd2c7f4d22be 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -153,8 +153,8 @@ static const union AnimCmd *const sAnims_FallingFossil[] = static const struct SpriteTemplate sSpriteTemplate_FallingFossil = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &sOamData_FallingFossil, .anims = sAnims_FallingFossil, .images = NULL, @@ -204,7 +204,7 @@ static const struct OamData sOamData_CeilingCrumbleSmall = static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleSmall = { .tileTag = TAG_CEILING_CRUMBLE, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &sOamData_CeilingCrumbleSmall, .anims = sAnims_CeilingCrumbleSmall, .images = NULL, @@ -242,7 +242,7 @@ static const struct OamData sOamData_CeilingCrumbleLarge = static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleLarge = { .tileTag = TAG_CEILING_CRUMBLE, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &sOamData_CeilingCrumbleLarge, .anims = sAnims_CeilingCrumbleLarge, .images = NULL, diff --git a/src/naming_screen.c b/src/naming_screen.c index fc7fb82fe793..f702f52a0dda 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -2503,7 +2503,7 @@ static const struct SpriteTemplate sSpriteTemplate_Underscore = static const struct SpriteTemplate sSpriteTemplate_PCIcon = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_PC_ICON, .oam = &sOam_8x8, .anims = sAnims_PCIcon, diff --git a/src/overworld.c b/src/overworld.c index a2f38c864dc2..41990a81e979 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -1082,7 +1082,7 @@ static bool16 IsInflitratedSpaceCenter(struct WarpData *warp) u16 GetLocationMusic(struct WarpData *warp) { if (NoMusicInSotopolisWithLegendaries(warp) == TRUE) - return 0xFFFF; + return MUS_NONE; else if (ShouldLegendaryMusicPlayAtLocation(warp) == TRUE) return MUS_ABNORMAL_WEATHER; else if (IsInflitratedSpaceCenter(warp) == TRUE) diff --git a/src/pokedex.c b/src/pokedex.c index cc469b32f819..7096499bec8d 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -4633,12 +4633,12 @@ static u32 GetPokedexMonPersonality(u16 species) u16 CreateMonSpriteFromNationalDexNumber(u16 nationalNum, s16 x, s16 y, u16 paletteSlot) { nationalNum = NationalPokedexNumToSpecies(nationalNum); - return CreateMonPicSprite_HandleDeoxys(nationalNum, SHINY_ODDS, GetPokedexMonPersonality(nationalNum), TRUE, x, y, paletteSlot, 0xFFFF); + return CreateMonPicSprite_HandleDeoxys(nationalNum, SHINY_ODDS, GetPokedexMonPersonality(nationalNum), TRUE, x, y, paletteSlot, TAG_NONE); } static u16 CreateSizeScreenTrainerPic(u16 species, s16 x, s16 y, s8 paletteSlot) { - return CreateTrainerPicSprite(species, TRUE, x, y, paletteSlot, 0xFFFF); + return CreateTrainerPicSprite(species, TRUE, x, y, paletteSlot, TAG_NONE); } static int DoPokedexSearch(u8 dexMode, u8 order, u8 abcGroup, u8 bodyColor, u8 type1, u8 type2) diff --git a/src/pokemon.c b/src/pokemon.c index 28b402216552..840d3770a74c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1915,7 +1915,7 @@ static const u8 sHoldEffectToType[][2] = const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = { [B_POSITION_PLAYER_LEFT] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1924,7 +1924,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [B_POSITION_OPPONENT_LEFT] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpriteOpponentSide, .anims = NULL, @@ -1933,7 +1933,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = .callback = SpriteCb_WildMon, }, [B_POSITION_PLAYER_RIGHT] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1942,7 +1942,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [B_POSITION_OPPONENT_RIGHT] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpriteOpponentSide, .anims = NULL, @@ -1955,7 +1955,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = { [TRAINER_BACK_PIC_BRENDAN] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1964,7 +1964,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_MAY] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1973,7 +1973,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_RED] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1982,7 +1982,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_LEAF] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -1991,7 +1991,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -2000,7 +2000,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_RUBY_SAPPHIRE_MAY] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -2009,7 +2009,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_WALLY] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -2018,7 +2018,7 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = .callback = SpriteCB_BattleSpriteStartSlideLeft, }, [TRAINER_BACK_PIC_STEVEN] = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = 0, .oam = &gOamData_BattleSpritePlayerSide, .anims = NULL, @@ -2103,8 +2103,8 @@ static const struct OamData sOamData_8329F20 = static const struct SpriteTemplate gUnknown_08329F28 = { - .tileTag = 0xFFFF, - .paletteTag = 0xFFFF, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &sOamData_8329F20, .anims = gDummySpriteAnimTable, .images = NULL, diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 42330b6a5c21..8d59a27c83ce 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1278,7 +1278,7 @@ static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *iconTemplate, s16 x, struct SpriteTemplate spriteTemplate = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = iconTemplate->paletteTag, .oam = iconTemplate->oam, .anims = iconTemplate->anims, diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index a7644fdaaf7d..38602302616d 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -962,7 +962,7 @@ static u16 DrawRibbonsMonFrontPic(s32 x, s32 y) u32 personality, otId; GetMonSpeciesPersonalityOtId(&species, &personality, &otId); - spriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, MON_SPRITE_X_ON, MON_SPRITE_Y, 15, 0xFFFF); + spriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, MON_SPRITE_X_ON, MON_SPRITE_Y, 15, TAG_NONE); gSprites[spriteId].oam.priority = 0; return spriteId; } diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index 528a0e52d2fb..2ec0acde4764 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -219,7 +219,7 @@ static const union AnimCmd *const sAnims_Arrow[] = static const struct SpriteTemplate sSpriteTemplate_Arrow = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_ARROW, .oam = &sOamData_Arrow, .anims = sAnims_Arrow, diff --git a/src/rotating_gate.c b/src/rotating_gate.c index a185d9a14563..997404c27188 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -461,7 +461,7 @@ static const union AffineAnimCmd *const sSpriteAffineAnimTable_RotatingGate[] = static const struct SpriteTemplate sSpriteTemplate_RotatingGateLarge = { .tileTag = ROTATING_GATE_TILE_TAG, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &sOamData_RotatingGateLarge, .anims = sSpriteAnimTable_RotatingGateLarge, .images = NULL, @@ -472,7 +472,7 @@ static const struct SpriteTemplate sSpriteTemplate_RotatingGateLarge = static const struct SpriteTemplate sSpriteTemplate_RotatingGateRegular = { .tileTag = ROTATING_GATE_TILE_TAG, - .paletteTag = 0xFFFF, + .paletteTag = TAG_NONE, .oam = &sOamData_RotatingGateRegular, .anims = sSpriteAnimTable_RotatingGateRegular, .images = NULL, diff --git a/src/slot_machine.c b/src/slot_machine.c index 157f3625e4f0..ab05124d01ec 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -5543,7 +5543,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelBackground = static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachu = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_REEL_TIME_PIKACHU, .oam = &sOam_64x64, .anims = sAnims_ReelTimePikachu, @@ -5554,7 +5554,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachu = static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachineAntennae = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_REEL_TIME_MISC, .oam = &sOam_8x16, .anims = sAnims_SingleFrame, @@ -5565,7 +5565,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachineAntennae = static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachine = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_REEL_TIME_MACHINE, .oam = &sOam_8x16, .anims = sAnims_SingleFrame, @@ -5576,7 +5576,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeMachine = static const struct SpriteTemplate sSpriteTemplate_BrokenReelTimeMachine = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_REEL_TIME_MACHINE, .oam = &sOam_8x16, .anims = sAnims_SingleFrame, @@ -5587,7 +5587,7 @@ static const struct SpriteTemplate sSpriteTemplate_BrokenReelTimeMachine = static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumbers = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_16x16, .anims = sAnims_ReelTimeNumbers, @@ -5598,7 +5598,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumbers = static const struct SpriteTemplate sSpriteTemplate_ReelTimeShadow = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_16x16, .anims = sAnims_SingleFrame, @@ -5609,7 +5609,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeShadow = static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumberGap = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_16x16, .anims = sAnims_SingleFrame, @@ -5620,7 +5620,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeNumberGap = static const struct SpriteTemplate sSpriteTemplate_ReelTimeBolt = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_16x32, .anims = sAnims_ReelTimeBolt, @@ -5631,7 +5631,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeBolt = static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachuAura = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_PIKA_AURA, .oam = &sOam_32x64, .anims = sAnims_SingleFrame, @@ -5642,7 +5642,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachuAura = static const struct SpriteTemplate sSpriteTemplate_ReelTimeExplosion = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_EXPLOSION, .oam = &sOam_32x32, .anims = sAnims_ReelTimeExplosion, @@ -5653,7 +5653,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeExplosion = static const struct SpriteTemplate sSpriteTemplate_ReelTimeDuck = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_8x8, .anims = sAnims_ReelTimeDuck, @@ -5664,7 +5664,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeDuck = static const struct SpriteTemplate sSpriteTemplate_ReelTimeSmoke = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_16x16, .anims = sAnims_SingleFrame, @@ -5675,7 +5675,7 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeSmoke = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reel = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5686,7 +5686,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reel = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Time = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5697,7 +5697,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Time = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Insert = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5719,7 +5719,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Stop = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Win = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_64x32, .anims = sAnims_SingleFrame, @@ -5730,7 +5730,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Win = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Lose = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_64x32, .anims = sAnims_SingleFrame, @@ -5774,7 +5774,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reg = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_AButton = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_32x32, .anims = sAnims_DigitalDisplay_AButton, @@ -5785,7 +5785,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_AButton = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Smoke = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5796,7 +5796,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Smoke = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Number = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_16x16, .anims = sAnims_DigitalDisplay_Number, @@ -5807,7 +5807,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Number = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Pokeball = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_DigitalDisplay_Pokeball, @@ -5818,7 +5818,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Pokeball = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_DPad = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_DigitalDisplay_DPad, @@ -5829,7 +5829,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_DPad = static const struct SpriteTemplate sSpriteTemplate_PikaPowerBolt = { - .tileTag = 0xFFFF, + .tileTag = TAG_NONE, .paletteTag = PALTAG_MISC, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, diff --git a/src/starter_choose.c b/src/starter_choose.c index b327816e6ad3..37c3346809aa 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -635,7 +635,7 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y) { u8 spriteId; - spriteId = CreatePicSprite2(species, SHINY_ODDS, 0, 1, x, y, 0xE, 0xFFFF); + spriteId = CreatePicSprite2(species, SHINY_ODDS, 0, 1, x, y, 0xE, TAG_NONE); gSprites[spriteId].oam.priority = 0; return spriteId; } diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c index 477c11faf8f3..9e30f636eb9d 100644 --- a/src/trainer_pokemon_sprites.c +++ b/src/trainer_pokemon_sprites.c @@ -100,9 +100,9 @@ static void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8 { if (!isTrainer) { - if (paletteTag == 0xFFFF) + if (paletteTag == TAG_NONE) { - sCreatingSpriteTemplate.paletteTag = 0xFFFF; + sCreatingSpriteTemplate.paletteTag = TAG_NONE; LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), 0x100 + paletteSlot * 0x10, 0x20); } else @@ -113,9 +113,9 @@ static void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8 } else { - if (paletteTag == 0xFFFF) + if (paletteTag == TAG_NONE) { - sCreatingSpriteTemplate.paletteTag = 0xFFFF; + sCreatingSpriteTemplate.paletteTag = TAG_NONE; LoadCompressedPalette(gTrainerFrontPicPaletteTable[species].data, 0x100 + paletteSlot * 0x10, 0x20); } else @@ -182,7 +182,7 @@ static u16 CreatePicSprite(u16 species, u32 otId, u32 personality, bool8 isFront images[j].data = framePics + 0x800 * j; images[j].size = 0x800; } - sCreatingSpriteTemplate.tileTag = 0xFFFF; + sCreatingSpriteTemplate.tileTag = TAG_NONE; sCreatingSpriteTemplate.oam = &gUnknown_0860B064; AssignSpriteAnimsTable(isTrainer); sCreatingSpriteTemplate.images = images; @@ -190,7 +190,7 @@ static u16 CreatePicSprite(u16 species, u32 otId, u32 personality, bool8 isFront sCreatingSpriteTemplate.callback = DummyPicSpriteCallback; LoadPicPaletteByTagOrSlot(species, otId, personality, paletteSlot, paletteTag, isTrainer); spriteId = CreateSprite(&sCreatingSpriteTemplate, x, y, 0); - if (paletteTag == 0xFFFF) + if (paletteTag == TAG_NONE) { gSprites[spriteId].oam.paletteNum = paletteSlot; } @@ -257,7 +257,7 @@ u16 CreatePicSprite2(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s1 images[j].data = framePics + 0x800 * j; images[j].size = 0x800; } - sCreatingSpriteTemplate.tileTag = 0xFFFF; + sCreatingSpriteTemplate.tileTag = TAG_NONE; sCreatingSpriteTemplate.anims = gMonFrontAnimsPtrTable[species]; sCreatingSpriteTemplate.images = images; if (flags2 == 0x01) @@ -278,7 +278,7 @@ u16 CreatePicSprite2(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s1 sCreatingSpriteTemplate.callback = DummyPicSpriteCallback; LoadPicPaletteByTagOrSlot(species, otId, personality, paletteSlot, paletteTag, FALSE); spriteId = CreateSprite(&sCreatingSpriteTemplate, x, y, 0); - if (paletteTag == 0xFFFF) + if (paletteTag == TAG_NONE) { gSprites[spriteId].oam.paletteNum = paletteSlot; } @@ -309,7 +309,7 @@ static u16 FreeAndDestroyPicSpriteInternal(u16 spriteId) } framePics = sSpritePics[i].frames; images = sSpritePics[i].images; - if (sSpritePics[i].paletteTag != 0xFFFF) + if (sSpritePics[i].paletteTag != TAG_NONE) { FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[spriteId].oam.paletteNum)); } diff --git a/src/trainer_see.c b/src/trainer_see.c index ea052fb0ced5..ec3dc8123e3e 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -167,8 +167,8 @@ static const union AnimCmd *const sSpriteAnimTable_Icons[] = static const struct SpriteTemplate sSpriteTemplate_ExclamationQuestionMark = { - .tileTag = 0xffff, - .paletteTag = 0xffff, + .tileTag = TAG_NONE, + .paletteTag = TAG_NONE, .oam = &sOamData_Icons, .anims = sSpriteAnimTable_Icons, .images = sSpriteImageTable_ExclamationQuestionMark, @@ -178,7 +178,7 @@ static const struct SpriteTemplate sSpriteTemplate_ExclamationQuestionMark = static const struct SpriteTemplate sSpriteTemplate_HeartIcon = { - .tileTag = 0xffff, + .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, .oam = &sOamData_Icons, .anims = sSpriteAnimTable_Icons, From ac599589ec8e04b788885cbcfae5c8abe7036f7f Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 23 Sep 2021 23:36:37 -0300 Subject: [PATCH 269/762] gRegionMapSectionId_To_PopUpThemeIdMapping -> sRegionMapSectionId_To_PopUpThemeIdMapping --- src/map_name_popup.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/map_name_popup.c b/src/map_name_popup.c index cd92bbac1854..97b02acf63a3 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -68,7 +68,7 @@ static const u16 sMapPopUp_PaletteTable[][16] = static const u16 sMapPopUp_Palette_Underwater[16] = INCBIN_U16("graphics/interface/map_popup/underwater.gbapal"); -static const u8 gRegionMapSectionId_To_PopUpThemeIdMapping[] = +static const u8 sRegionMapSectionId_To_PopUpThemeIdMapping[] = { [MAPSEC_LITTLEROOT_TOWN] = MAPPOPUP_THEME_WOOD, [MAPSEC_OLDALE_TOWN] = MAPPOPUP_THEME_WOOD, @@ -378,7 +378,7 @@ static void LoadMapNamePopUpWindowBg(void) else regionMapSectionId = 0; // Discard kanto region sections; } - popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId]; + popUpThemeId = sRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId]; LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), sMapPopUp_OutlineTable[popUpThemeId], 0x400, 0x21D); CallWindowFunction(popupWindowId, DrawMapNamePopUpFrame); From a66d7e1b438f84bc04eb3f7d3da286882ba55019 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 24 Sep 2021 14:30:15 -0400 Subject: [PATCH 270/762] Document some single-remaining symbols --- asm/macros/battle_script.inc | 18 +-- common_syms/bg.txt | 2 +- data/battle_anim_scripts.s | 2 +- data/battle_scripts_1.s | 57 +++---- gflib/bg.c | 53 +++---- gflib/bg.h | 9 +- gflib/string_util.c | 6 +- gflib/string_util.h | 2 +- gflib/text.h | 4 + gflib/window.c | 32 ++-- include/battle_arena.h | 2 +- include/battle_gfx_sfx_util.h | 2 +- include/battle_util2.h | 2 +- include/constants/battle.h | 14 +- include/constants/battle_script_commands.h | 4 + include/pokedex_area_region_map.h | 2 +- src/battle_anim_dark.c | 2 +- src/battle_anim_normal.c | 51 ++++--- src/battle_arena.c | 2 +- src/battle_gfx_sfx_util.c | 3 +- src/battle_main.c | 48 +++--- src/battle_script_commands.c | 168 ++++++++++----------- src/battle_util.c | 22 +-- src/battle_util2.c | 12 +- src/contest.c | 6 +- src/hall_of_fame.c | 2 +- src/item_menu_icons.c | 26 ++-- src/main.c | 4 +- src/main_menu.c | 24 +-- src/menu.c | 4 - src/pokedex_area_region_map.c | 10 +- src/pokedex_area_screen.c | 10 +- src/pokemon_storage_system.c | 6 +- src/reshow_battle_screen.c | 2 +- sym_common.txt | 2 +- 35 files changed, 329 insertions(+), 286 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 0f51061e8580..c5bede3f5dfd 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1275,8 +1275,8 @@ various \battler, VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP .endm - .macro various7 battler:req - various \battler, 7 + .macro resetplayerfainted + various BS_ATTACKER, VARIOUS_RESET_PLAYER_FAINTED .endm .macro palaceflavortext battler:req @@ -1303,12 +1303,12 @@ various \battler, VARIOUS_EMIT_YESNOBOX .endm - .macro various14 battler:req - various \battler, 14 + .macro arenadrawreftextbox + various BS_ATTACKER, VARIOUS_DRAW_ARENA_REF_TEXT_BOX .endm - .macro various15 battler:req - various \battler, 15 + .macro arenaerasereftextbox + various BS_ATTACKER, VARIOUS_ERASE_ARENA_REF_TEXT_BOX .endm .macro arenajudgmentstring id:req @@ -1340,11 +1340,11 @@ .endm .macro setalreadystatusedmoveattempt battler:req - various \battler, 23 + various \battler, VARIOUS_SET_ALREADY_STATUS_MOVE_ATTEMPT .endm - .macro various24 battler:req - various \battler, 24 + .macro palacetryescapestatus battler:req + various \battler, VARIOUS_PALACE_TRY_ESCAPE_STATUS .endm .macro setoutcomeonteleport battler:req diff --git a/common_syms/bg.txt b/common_syms/bg.txt index 2495d1646b21..0a3c3aecca31 100644 --- a/common_syms/bg.txt +++ b/common_syms/bg.txt @@ -1 +1 @@ -gUnneededFireRedVariable +gWindowTileAutoAllocEnabled diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index e7aad6a93175..83b1f3cea0e4 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -3514,7 +3514,7 @@ Move_MEMENTO: delay 48 playsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask sub_8114470, 2 + createvisualtask AnimTask_MementoHandleBg, 2 delay 12 setalpha 0, 16 delay 1 diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 74efef7acb5b..30ca1b22016c 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -2828,7 +2828,7 @@ BattleScript_HandleFaintedMon:: atk24 BattleScript_HandleFaintedMonMultiple jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother - jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonTryChooseAnother + jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother printstring STRINGID_USENEXTPKMN setbyte gBattleCommunication, 0 yesnobox @@ -2843,7 +2843,7 @@ BattleScript_FaintedMonTryChooseAnother:: jumpifbattletype BATTLE_TYPE_RECORDED_LINK, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_FaintedMonChooseAnother jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonChooseAnother - jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonChooseAnother + jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonChooseAnother jumpifbyte CMP_EQUAL, sBATTLE_STYLE, OPTIONS_BATTLE_STYLE_SET, BattleScript_FaintedMonChooseAnother jumpifcantswitch BS_PLAYER1, BattleScript_FaintedMonChooseAnother printstring STRINGID_ENEMYABOUTTOSWITCHPKMN @@ -2881,7 +2881,7 @@ BattleScript_FaintedMonChooseAnother:: hidepartystatussummary BS_FAINTED switchinanim BS_FAINTED, FALSE waitstate - various7 BS_ATTACKER + resetplayerfainted switchineffects BS_FAINTED jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonEnd cancelallactions @@ -3200,7 +3200,7 @@ BattleScript_DamagingWeatherLoop:: jumpifword CMP_EQUAL, gBattleMoveDamage, 0, BattleScript_DamagingWeatherLoopIncrement printfromtable gSandStormHailDmgStringIds waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE + orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE effectivenesssound hitanimation BS_ATTACKER healthbarupdate BS_ATTACKER @@ -3212,7 +3212,7 @@ BattleScript_DamagingWeatherLoopIncrement:: addbyte gBattleCommunication, 1 jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop BattleScript_DamagingWeatherContinuesEnd:: - bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE + bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE end2 BattleScript_SandStormHailEnds:: @@ -3256,7 +3256,7 @@ BattleScript_SafeguardEnds:: BattleScript_LeechSeedTurnDrain:: playanimation BS_ATTACKER, B_ANIM_LEECH_SEED_DRAIN, sB_ANIM_ARG1 - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER copyword gBattleMoveDamage, gHpDealt @@ -3267,7 +3267,7 @@ BattleScript_LeechSeedTurnDrain:: BattleScript_LeechSeedTurnPrintLiquidOoze:: setbyte cMULTISTRING_CHOOSER, B_MSG_LEECH_SEED_OOZE BattleScript_LeechSeedTurnPrintAndUpdateHp:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_TARGET datahpupdate BS_TARGET printfromtable gLeechSeedStringIds @@ -3371,14 +3371,14 @@ BattleScript_EncoredNoMore:: BattleScript_DestinyBondTakesLife:: printstring STRINGID_PKMNTOOKFOE waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER, FALSE, NULL return BattleScript_SpikesOnAttacker:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER call BattleScript_PrintHurtBySpikes @@ -3393,7 +3393,7 @@ BattleScript_SpikesOnAttackerFainted:: goto BattleScript_HandleFaintedMon BattleScript_SpikesOnTarget:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_TARGET datahpupdate BS_TARGET call BattleScript_PrintHurtBySpikes @@ -3408,7 +3408,7 @@ BattleScript_SpikesOnTargetFainted:: goto BattleScript_HandleFaintedMon BattleScript_SpikesOnFaintedBattler:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_FAINTED datahpupdate BS_FAINTED call BattleScript_PrintHurtBySpikes @@ -3430,7 +3430,7 @@ BattleScript_PrintHurtBySpikes:: BattleScript_PerishSongTakesLife:: printstring STRINGID_PKMNPERISHCOUNTFELL waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER, FALSE, NULL @@ -3662,7 +3662,7 @@ BattleScript_MagicCoatBounce:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNMOVEBOUNCED waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 + orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_ALLOW_NO_PP setmagiccoattarget BS_ATTACKER return @@ -3673,7 +3673,7 @@ BattleScript_SnatchedMove:: playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL printstring STRINGID_PKMNSNATCHEDMOVE waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 + orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_ALLOW_NO_PP swapattackerwithtarget return @@ -3713,7 +3713,7 @@ BattleScript_MoveUsedIsAsleep:: goto BattleScript_MoveEnd BattleScript_MoveUsedWokeUp:: - bicword gHitMarker, HITMARKER_x10 + bicword gHitMarker, HITMARKER_WAKE_UP_CLEAR printfromtable gWokeUpStringIds waitmessage B_WAIT_TIME_LONG updatestatusicon BS_ATTACKER @@ -3731,7 +3731,7 @@ BattleScript_PoisonTurnDmg:: BattleScript_DoStatusTurnDmg:: statusanimation BS_ATTACKER BattleScript_DoTurnDmg:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER, FALSE, NULL @@ -3798,7 +3798,7 @@ BattleScript_DoSelfConfusionDmg:: effectivenesssound hitanimation BS_ATTACKER waitstate - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER resultmessage @@ -3931,7 +3931,7 @@ BattleScript_MoveEffectRecoil:: jumpifmove MOVE_STRUGGLE, BattleScript_DoRecoil jumpifability BS_ATTACKER, ABILITY_ROCK_HEAD, BattleScript_RecoilEnd BattleScript_DoRecoil:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHITWITHRECOIL @@ -4174,7 +4174,7 @@ BattleScript_ColorChangeActivates:: return BattleScript_RoughSkinActivates:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHURTSWITH @@ -4222,9 +4222,10 @@ BattleScript_IgnoresAndUsesRandomMove:: jumptocalledmove FALSE BattleScript_MoveUsedLoafingAround:: + @ Skip ahead if not the Battle Palace message jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_INCAPABLE_OF_POWER, BattleScript_MoveUsedLoafingAroundMsg setbyte gBattleCommunication, 0 - various24 BS_ATTACKER + palacetryescapestatus BS_ATTACKER setbyte cMULTISTRING_CHOOSER, B_MSG_INCAPABLE_OF_POWER BattleScript_MoveUsedLoafingAroundMsg:: printfromtable gInobedientStringIds @@ -4442,22 +4443,22 @@ BattleScript_ArenaTurnBeginning:: playse SE_ARENA_TIMEUP1 pause 8 playse SE_ARENA_TIMEUP1 - various14 BS_ATTACKER + arenadrawreftextbox arenajudgmentstring B_MSG_REF_COMMENCE_BATTLE arenawaitmessage B_MSG_REF_COMMENCE_BATTLE pause B_WAIT_TIME_LONG - various15 BS_ATTACKER + arenaerasereftextbox volumeup end2 @ Unused BattleScript_ArenaNothingDecided:: playse SE_DING_DONG - various14 BS_ATTACKER + arenadrawreftextbox arenajudgmentstring B_MSG_REF_NOTHING_IS_DECIDED arenawaitmessage B_MSG_REF_NOTHING_IS_DECIDED pause B_WAIT_TIME_LONG - various15 BS_ATTACKER + arenaerasereftextbox end2 BattleScript_ArenaDoJudgment:: @@ -4470,7 +4471,7 @@ BattleScript_ArenaDoJudgment:: pause 8 playse SE_ARENA_TIMEUP1 pause B_WAIT_TIME_LONG - various14 BS_ATTACKER + arenadrawreftextbox arenajudgmentstring B_MSG_REF_THATS_IT arenawaitmessage B_MSG_REF_THATS_IT pause B_WAIT_TIME_LONG @@ -4492,7 +4493,7 @@ BattleScript_ArenaDoJudgment:: arenajudgmentstring B_MSG_REF_PLAYER_WON arenawaitmessage B_MSG_REF_PLAYER_WON arenajudgmentwindow - various15 BS_ATTACKER + arenaerasereftextbox printstring STRINGID_DEFEATEDOPPONENTBYREFEREE waitmessage B_WAIT_TIME_LONG playfaintcry BS_OPPONENT1 @@ -4506,7 +4507,7 @@ BattleScript_ArenaJudgmentPlayerLoses: arenajudgmentstring B_MSG_REF_OPPONENT_WON arenawaitmessage B_MSG_REF_OPPONENT_WON arenajudgmentwindow - various15 BS_ATTACKER + arenaerasereftextbox printstring STRINGID_LOSTTOOPPONENTBYREFEREE waitmessage B_WAIT_TIME_LONG playfaintcry BS_PLAYER1 @@ -4520,7 +4521,7 @@ BattleScript_ArenaJudgmentDraw: arenajudgmentstring B_MSG_REF_DRAW arenawaitmessage B_MSG_REF_DRAW arenajudgmentwindow - various15 BS_ATTACKER + arenaerasereftextbox printstring STRINGID_TIEDOPPONENTBYREFEREE waitmessage B_WAIT_TIME_LONG playfaintcry BS_PLAYER1 diff --git a/gflib/bg.c b/gflib/bg.c index ec7c2113b1f2..283a87ce05e4 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -42,10 +42,12 @@ static struct BgControl sGpuBgConfigs; static struct BgConfig2 sGpuBgConfigs2[NUM_BACKGROUNDS]; static u32 sDmaBusyBitfield[NUM_BACKGROUNDS]; -u32 gUnneededFireRedVariable; +u32 gWindowTileAutoAllocEnabled; static const struct BgConfig sZeroedBgControlStruct = { 0 }; +static u32 GetBgType(u8 bg); + void ResetBgs(void) { ResetBgControlStructs(); @@ -288,7 +290,8 @@ bool8 IsInvalidBg(u8 bg) return FALSE; } -int DummiedOutFireRedLeafGreenTileAllocFunc(int a1, int a2, int a3, int a4) +// From FRLG. Dummied out. +int BgTileAllocOp(int bg, int offset, int count, int mode) { return 0; } @@ -303,7 +306,7 @@ void ResetBgsAndClearDma3BusyFlags(u32 leftoverFireRedLeafGreenVariable) sDmaBusyBitfield[i] = 0; } - gUnneededFireRedVariable = leftoverFireRedLeafGreenVariable; + gWindowTileAutoAllocEnabled = leftoverFireRedLeafGreenVariable; } void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates) @@ -392,10 +395,8 @@ u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset) sDmaBusyBitfield[cursor / 0x20] |= (1 << (cursor % 0x20)); - if (gUnneededFireRedVariable == 1) - { - DummiedOutFireRedLeafGreenTileAllocFunc(bg, tileOffset / 0x20, size / 0x20, 1); - } + if (gWindowTileAutoAllocEnabled == TRUE) + BgTileAllocOp(bg, tileOffset / 0x20, size / 0x20, 1); return cursor; } @@ -523,9 +524,9 @@ u16 GetBgAttribute(u8 bg, u8 attributeId) case BG_ATTR_METRIC: switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: return GetBgMetricTextMode(bg, 0) * 0x800; - case 1: + case BG_TYPE_AFFINE: return GetBgMetricAffineMode(bg, 0) * 0x100; default: return 0; @@ -891,10 +892,10 @@ void CopyBgTilemapBufferToVram(u8 bg) { switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: sizeToLoad = GetBgMetricTextMode(bg, 0) * 0x800; break; - case 1: + case BG_TYPE_AFFINE: sizeToLoad = GetBgMetricAffineMode(bg, 0) * 0x100; break; default: @@ -915,7 +916,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi { switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: { const u16 * srcCopy = src; for (destY16 = destY; destY16 < (destY + height); destY16++) @@ -927,7 +928,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi } break; } - case 1: + case BG_TYPE_AFFINE: { const u8 * srcCopy = src; mode = GetBgMetricAffineMode(bg, 0x1); @@ -963,7 +964,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 screenHeight = GetBgMetricTextMode(bg, 0x2) * 0x20; switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: srcPtr = src + ((srcY * srcWidth) + srcX) * 2; for (i = destX; i < (destX + rectWidth); i++) { @@ -976,7 +977,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcPtr += (srcWidth - destY) * 2; } break; - case 1: + case BG_TYPE_AFFINE: srcPtr = src + ((srcY * srcWidth) + srcX); var = GetBgMetricAffineMode(bg, 0x1); for (i = destX; i < (destX + rectWidth); i++) @@ -1003,7 +1004,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, { switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: for (y16 = y; y16 < (y + height); y16++) { for (x16 = x; x16 < (x + width); x16++) @@ -1012,7 +1013,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, } } break; - case 1: + case BG_TYPE_AFFINE: mode = GetBgMetricAffineMode(bg, 0x1); for (y16 = y; y16 < (y + height); y16++) { @@ -1046,7 +1047,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt mode2 = GetBgMetricTextMode(bg, 0x2) * 0x20; switch (GetBgType(bg)) { - case 0: + case BG_TYPE_NORMAL: for (y16 = y; y16 < (y + height); y16++) { for (x16 = x; x16 < (x + width); x16++) @@ -1056,7 +1057,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt } } break; - case 1: + case BG_TYPE_AFFINE: mode3 = GetBgMetricAffineMode(bg, 0x1); for (y16 = y; y16 < (y + height); y16++) { @@ -1190,7 +1191,7 @@ void CopyTileMapEntry(const u16 *src, u16 *dest, s32 palette1, s32 tileOffset, s *dest = var; } -u32 GetBgType(u8 bg) +static u32 GetBgType(u8 bg) { u8 mode = GetBgMode(); @@ -1202,31 +1203,31 @@ u32 GetBgType(u8 bg) { case 0: case 1: - return 0; + return BG_TYPE_NORMAL; } break; case 2: switch (mode) { case 0: - return 0; + return BG_TYPE_NORMAL; case 1: case 2: - return 1; + return BG_TYPE_AFFINE; } break; case 3: switch (mode) { case 0: - return 0; + return BG_TYPE_NORMAL; case 2: - return 1; + return BG_TYPE_AFFINE; } break; } - return 0xFFFF; + return BG_TYPE_NONE; } bool32 IsInvalidBg32(u8 bg) diff --git a/gflib/bg.h b/gflib/bg.h index 58fd1282c0ae..60327eab3a64 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -25,6 +25,12 @@ enum BG_ATTR_BASETILE, }; +enum { + BG_TYPE_NORMAL, + BG_TYPE_AFFINE, + BG_TYPE_NONE = 0xFFFF +}; + struct BgTemplate { u16 bg:2; // 0x1, 0x2 -> 0x3 @@ -43,7 +49,7 @@ void Unused_ResetBgControlStruct(u8 bg); u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode); void SetTextModeAndHideBgs(void); bool8 IsInvalidBg(u8 bg); -int DummiedOutFireRedLeafGreenTileAllocFunc(int a1, int a2, int a3, int a4); +int BgTileAllocOp(int bg, int offset, int count, int mode); void ResetBgsAndClearDma3BusyFlags(u32 leftoverFireRedLeafGreenVariable); void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates); void InitBgFromTemplate(const struct BgTemplate *template); @@ -78,7 +84,6 @@ u16 GetBgMetricTextMode(u8 bg, u8 whichMetric); u32 GetBgMetricAffineMode(u8 bg, u8 whichMetric); u32 GetTileMapIndexFromCoords(s32 x, s32 y, s32 screenSize, u32 screenWidth, u32 screenHeight); void CopyTileMapEntry(const u16 *src, u16 *dest, s32 palette1, s32 tileOffset, s32 palette2); -u32 GetBgType(u8 bg); bool32 IsInvalidBg32(u8 bg); bool32 IsTileMapOutsideWram(u8 bg); diff --git a/gflib/string_util.c b/gflib/string_util.c index addc7e4f28d2..b7485184addd 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -630,7 +630,7 @@ bool32 IsStringJapanese(u8 *str) { while (*str != EOS) { - if (*str < CHAR_0) + if (*str <= JAPANESE_CHAR_END) if (*str != CHAR_SPACE) return TRUE; str++; @@ -639,13 +639,13 @@ bool32 IsStringJapanese(u8 *str) return FALSE; } -bool32 sub_800924C(u8 *str, s32 n) +bool32 IsStringNJapanese(u8 *str, s32 n) { s32 i; for (i = 0; *str != EOS && i < n; i++) { - if (*str < CHAR_0) + if (*str <= JAPANESE_CHAR_END) if (*str != CHAR_SPACE) return TRUE; str++; diff --git a/gflib/string_util.h b/gflib/string_util.h index 229193d52d7e..7f3b64add81c 100644 --- a/gflib/string_util.h +++ b/gflib/string_util.h @@ -37,7 +37,7 @@ u8 *StringCopyN_Multibyte(u8 *dest, u8 *src, u32 n); u32 StringLength_Multibyte(const u8 *str); u8 *WriteColorChangeControlCode(u8 *dest, u32 colorType, u8 color); bool32 IsStringJapanese(u8 *str); -bool32 sub_800924C(u8 *str, s32 n); +bool32 IsStringNJapanese(u8 *str, s32 n); u8 GetExtCtrlCodeLength(u8 code); s32 StringCompareWithoutExtCtrlCodes(const u8 *str1, const u8 *str2); void ConvertInternationalString(u8 *s, u8 language); diff --git a/gflib/text.h b/gflib/text.h index f660eb8d1d02..a08d0a0fff20 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -263,6 +263,10 @@ #define PLACEHOLDER_ID_KYOGRE 0xC #define PLACEHOLDER_ID_GROUDON 0xD +// Hiragana from 0x1-0x50, Katakana from 0x51-0xA0. +// This excludes Japanese punctuation, which end at 0xB0 +#define JAPANESE_CHAR_END 0xA0 + // battle placeholders are located in battle_message.h #define NUM_TEXT_PRINTERS 32 diff --git a/gflib/window.c b/gflib/window.c index b03b513dac7c..c7b8c8917b10 100644 --- a/gflib/window.c +++ b/gflib/window.c @@ -10,7 +10,7 @@ u32 gUnusedWindowVar2; u8 gTransparentTileNumber; u32 gUnusedWindowVar3; void *gWindowBgTilemapBuffers[NUM_BACKGROUNDS]; -extern u32 gUnneededFireRedVariable; +extern u32 gWindowTileAutoAllocEnabled; #define WINDOWS_MAX 32 @@ -55,9 +55,9 @@ bool16 InitWindows(const struct WindowTemplate *templates) for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].bg; bgLayer != 0xFF && i < WINDOWS_MAX; ++i, bgLayer = templates[i].bg) { - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { - allocatedBaseBlock = DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, 0, templates[i].width * templates[i].height, 0); + allocatedBaseBlock = BgTileAllocOp(bgLayer, 0, templates[i].width * templates[i].height, 0); if (allocatedBaseBlock == -1) return FALSE; } @@ -100,10 +100,10 @@ bool16 InitWindows(const struct WindowTemplate *templates) gWindows[i].tileData = allocatedTilemapBuffer; gWindows[i].window = templates[i]; - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { gWindows[i].window.baseBlock = allocatedBaseBlock; - DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, allocatedBaseBlock, templates[i].width * templates[i].height, 1); + BgTileAllocOp(bgLayer, allocatedBaseBlock, templates[i].width * templates[i].height, 1); } } @@ -132,9 +132,9 @@ u16 AddWindow(const struct WindowTemplate *template) bgLayer = template->bg; allocatedBaseBlock = 0; - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { - allocatedBaseBlock = DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, 0, template->width * template->height, 0); + allocatedBaseBlock = BgTileAllocOp(bgLayer, 0, template->width * template->height, 0); if (allocatedBaseBlock == -1) return WINDOW_NONE; @@ -174,10 +174,10 @@ u16 AddWindow(const struct WindowTemplate *template) gWindows[win].tileData = allocatedTilemapBuffer; gWindows[win].window = *template; - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { gWindows[win].window.baseBlock = allocatedBaseBlock; - DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, allocatedBaseBlock, gWindows[win].window.width * gWindows[win].window.height, 1); + BgTileAllocOp(bgLayer, allocatedBaseBlock, gWindows[win].window.width * gWindows[win].window.height, 1); } return win; @@ -201,9 +201,9 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template) bgLayer = template->bg; allocatedBaseBlock = 0; - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { - allocatedBaseBlock = DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, 0, template->width * template->height, 0); + allocatedBaseBlock = BgTileAllocOp(bgLayer, 0, template->width * template->height, 0); if (allocatedBaseBlock == -1) return WINDOW_NONE; @@ -211,10 +211,10 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template) gWindows[win].window = *template; - if (gUnneededFireRedVariable == 1) + if (gWindowTileAutoAllocEnabled == TRUE) { gWindows[win].window.baseBlock = allocatedBaseBlock; - DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, allocatedBaseBlock, gWindows[win].window.width * gWindows[win].window.height, 1); + BgTileAllocOp(bgLayer, allocatedBaseBlock, gWindows[win].window.width * gWindows[win].window.height, 1); } return win; @@ -224,10 +224,8 @@ void RemoveWindow(u8 windowId) { u8 bgLayer = gWindows[windowId].window.bg; - if (gUnneededFireRedVariable == 1) - { - DummiedOutFireRedLeafGreenTileAllocFunc(bgLayer, gWindows[windowId].window.baseBlock, gWindows[windowId].window.width * gWindows[windowId].window.height, 2); - } + if (gWindowTileAutoAllocEnabled == TRUE) + BgTileAllocOp(bgLayer, gWindows[windowId].window.baseBlock, gWindows[windowId].window.width * gWindows[windowId].window.height, 2); gWindows[windowId].window = sDummyWindowTemplate; diff --git a/include/battle_arena.h b/include/battle_arena.h index c3bdd4ea79eb..b55fc39b0039 100644 --- a/include/battle_arena.h +++ b/include/battle_arena.h @@ -9,6 +9,6 @@ void BattleArena_AddSkillPoints(u8 battler); void BattleArena_DeductMindPoints(u8 battler, u16 stringId); void sub_81A586C(u8 battler); void DrawArenaRefereeTextBox(void); -void RemoveArenaRefereeTextBox(void); +void EraseArenaRefereeTextBox(void); #endif //GUARD_BATTLE_ARENA_H diff --git a/include/battle_gfx_sfx_util.h b/include/battle_gfx_sfx_util.h index 3288204d121c..a367bc043ac4 100644 --- a/include/battle_gfx_sfx_util.h +++ b/include/battle_gfx_sfx_util.h @@ -39,7 +39,7 @@ void LoadAndCreateEnemyShadowSprites(void); void SpriteCB_SetInvisible(struct Sprite *sprite); void SetBattlerShadowSpriteCallback(u8 battlerId, u16 species); void HideBattlerShadowSprite(u8 battlerId); -void sub_805EF14(void); +void FillAroundBattleWindows(void); void ClearTemporarySpeciesSpriteData(u8 battlerId, bool8 dontClearSubstitute); void AllocateMonSpritesGfx(void); void FreeMonSpritesGfx(void); diff --git a/include/battle_util2.h b/include/battle_util2.h index fe767ea4bfe1..51c9c03630a8 100644 --- a/include/battle_util2.h +++ b/include/battle_util2.h @@ -5,6 +5,6 @@ void AllocateBattleResources(void); void FreeBattleResources(void); void AdjustFriendshipOnBattleFaint(u8 battler); void SwitchPartyOrderInGameMulti(u8 battler, u8 arg1); -u32 sub_805725C(u8 battler); +u32 BattlePalace_TryEscapeStatus(u8 battler); #endif // GUARD_BATTLE_UTIL_H diff --git a/include/constants/battle.h b/include/constants/battle.h index 3dbd8325592d..a848146eb088 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -161,8 +161,8 @@ #define STATUS3_SEMI_INVULNERABLE (STATUS3_UNDERGROUND | STATUS3_ON_AIR | STATUS3_UNDERWATER) // Not really sure what a "hitmarker" is. -#define HITMARKER_x10 (1 << 4) -#define HITMARKER_x20 (1 << 5) +#define HITMARKER_WAKE_UP_CLEAR (1 << 4) // Cleared when waking up. Never set or checked. +#define HITMARKER_SKIP_DMG_TRACK (1 << 5) #define HITMARKER_DESTINYBOND (1 << 6) #define HITMARKER_NO_ANIMATIONS (1 << 7) #define HITMARKER_IGNORE_SUBSTITUTE (1 << 8) @@ -177,13 +177,13 @@ #define HITMARKER_IGNORE_UNDERGROUND (1 << 17) #define HITMARKER_IGNORE_UNDERWATER (1 << 18) #define HITMARKER_UNABLE_TO_USE_MOVE (1 << 19) -#define HITMARKER_x100000 (1 << 20) -#define HITMARKER_x200000 (1 << 21) -#define HITMARKER_x400000 (1 << 22) -#define HITMARKER_x800000 (1 << 23) +#define HITMARKER_PASSIVE_DAMAGE (1 << 20) +#define HITMARKER_DISOBEDIENT_MOVE (1 << 21) +#define HITMARKER_PLAYER_FAINTED (1 << 22) +#define HITMARKER_ALLOW_NO_PP (1 << 23) #define HITMARKER_GRUDGE (1 << 24) #define HITMARKER_OBEYS (1 << 25) -#define HITMARKER_x4000000 (1 << 26) +#define HITMARKER_NEVER_SET (1 << 26) // Cleared as part of a large group. Never set or checked #define HITMARKER_CHARGING (1 << 27) #define HITMARKER_FAINTED(battler) (gBitTable[battler] << 28) #define HITMARKER_FAINTED2(battler) ((1 << 28) << battler) diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index 9794589af2fe..d5e3eb7bbfdf 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -72,12 +72,15 @@ #define VARIOUS_GET_BATTLER_FAINTED 4 #define VARIOUS_RESET_INTIMIDATE_TRACE_BITS 5 #define VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP 6 +#define VARIOUS_RESET_PLAYER_FAINTED 7 #define VARIOUS_PALACE_FLAVOR_TEXT 8 #define VARIOUS_ARENA_JUDGMENT_WINDOW 9 #define VARIOUS_ARENA_OPPONENT_MON_LOST 10 #define VARIOUS_ARENA_PLAYER_MON_LOST 11 #define VARIOUS_ARENA_BOTH_MONS_LOST 12 #define VARIOUS_EMIT_YESNOBOX 13 +#define VARIOUS_DRAW_ARENA_REF_TEXT_BOX 14 +#define VARIOUS_ERASE_ARENA_REF_TEXT_BOX 15 #define VARIOUS_ARENA_JUDGMENT_STRING 16 #define VARIOUS_ARENA_WAIT_STRING 17 #define VARIOUS_WAIT_CRY 18 @@ -86,6 +89,7 @@ #define VARIOUS_VOLUME_DOWN 21 #define VARIOUS_VOLUME_UP 22 #define VARIOUS_SET_ALREADY_STATUS_MOVE_ATTEMPT 23 +#define VARIOUS_PALACE_TRY_ESCAPE_STATUS 24 #define VARIOUS_SET_TELEPORT_OUTCOME 25 #define VARIOUS_PLAY_TRAINER_DEFEATED_MUSIC 26 diff --git a/include/pokedex_area_region_map.h b/include/pokedex_area_region_map.h index 175f60c743c0..6526d7b458f0 100755 --- a/include/pokedex_area_region_map.h +++ b/include/pokedex_area_region_map.h @@ -10,7 +10,7 @@ struct PokedexAreaMapTemplate }; void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *); -bool32 sub_81C4E90(void); +bool32 TryShowPokedexAreaMap(void); void PokedexAreaMapChangeBgY(u32); void FreePokedexAreaMapBgNum(void); diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index fdde347699a8..fe8b181052b1 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -784,7 +784,7 @@ void AnimTask_InitMementoShadow(u8 taskId) DestroyAnimVisualTask(taskId); } -void sub_8114470(u8 taskId) +void AnimTask_MementoHandleBg(u8 taskId) { u8 toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) ^ 1 ? 1 : 0; ResetBattleAnimBg(toBG2); diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 15a1452e4d70..d79f344edf6c 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -733,50 +733,67 @@ void AnimTask_InvertScreenColor(u8 taskId) DestroyAnimVisualTask(taskId); } -void UnusedAnimTask_8115F94(u8 taskId) +// Unused +#define tTimer data[0] +#define tLength data[1] +#define tFlagsScenery data[2] +#define tFlagsAttacker data[3] +#define tFlagsTarget data[4] +#define tColorR data[5] +#define tColorG data[6] +#define tColorB data[7] +void AnimTask_TintPalettes(u8 taskId) { u8 attackerBattler; u8 targetBattler; u8 paletteIndex; u32 selectedPalettes = 0; - if (gTasks[taskId].data[0] == 0) + if (gTasks[taskId].tTimer == 0) { - gTasks[taskId].data[2] = gBattleAnimArgs[0]; - gTasks[taskId].data[3] = gBattleAnimArgs[1]; - gTasks[taskId].data[4] = gBattleAnimArgs[2]; - gTasks[taskId].data[1] = gBattleAnimArgs[3]; - gTasks[taskId].data[5] = gBattleAnimArgs[4]; - gTasks[taskId].data[6] = gBattleAnimArgs[5]; - gTasks[taskId].data[7] = gBattleAnimArgs[6]; + gTasks[taskId].tFlagsScenery = gBattleAnimArgs[0]; + gTasks[taskId].tFlagsAttacker = gBattleAnimArgs[1]; + gTasks[taskId].tFlagsTarget = gBattleAnimArgs[2]; + gTasks[taskId].tLength = gBattleAnimArgs[3]; + gTasks[taskId].tColorR = gBattleAnimArgs[4]; + gTasks[taskId].tColorG = gBattleAnimArgs[5]; + gTasks[taskId].tColorB = gBattleAnimArgs[6]; } - gTasks[taskId].data[0]++; + gTasks[taskId].tTimer++; attackerBattler = gBattleAnimAttacker; targetBattler = gBattleAnimTarget; - if (gTasks[taskId].data[2] & 0x100) - selectedPalettes = 0x0000FFFF; + if (gTasks[taskId].tFlagsScenery & (1 << 8)) + selectedPalettes = PALETTES_BG; - if (gTasks[taskId].data[2] & 0x1) + if (gTasks[taskId].tFlagsScenery & 1) { paletteIndex = IndexOfSpritePaletteTag(gSprites[gHealthboxSpriteIds[attackerBattler]].template->paletteTag); selectedPalettes |= (1 << paletteIndex) << 16; } - if (gTasks[taskId].data[3] & 0x100) + if (gTasks[taskId].tFlagsAttacker & (1 << 8)) selectedPalettes |= (1 << attackerBattler) << 16; - if (gTasks[taskId].data[4] & 0x100) + if (gTasks[taskId].tFlagsTarget & (1 << 8)) selectedPalettes |= (1 << targetBattler) << 16; - TintPlttBuffer(selectedPalettes, gTasks[taskId].data[5], gTasks[taskId].data[6], gTasks[taskId].data[7]); - if (gTasks[taskId].data[0] == gTasks[taskId].data[1]) + TintPlttBuffer(selectedPalettes, gTasks[taskId].tColorR, gTasks[taskId].tColorG, gTasks[taskId].tColorB); + if (gTasks[taskId].tTimer == gTasks[taskId].tLength) { UnfadePlttBuffer(selectedPalettes); DestroyAnimVisualTask(taskId); } } +#undef tTimer +#undef tLength +#undef tFlagsScenery +#undef tFlagsAttacker +#undef tFlagsTarget +#undef tColorR +#undef tColorG +#undef tColorB static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite) { diff --git a/src/battle_arena.c b/src/battle_arena.c index 11c918225a4d..e216e72d31c3 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -917,7 +917,7 @@ void DrawArenaRefereeTextBox(void) FillBgTilemapBufferRect(0, 0x836, 29, 19, 1, 1, palNum); } -void RemoveArenaRefereeTextBox(void) +void EraseArenaRefereeTextBox(void) { u8 width; u8 height; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 184d630b5a91..77755775e353 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1213,7 +1213,8 @@ void HideBattlerShadowSprite(u8 battlerId) gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].callback = SpriteCB_SetInvisible; } -void sub_805EF14(void) +// Color the background tiles surrounding the action selection and move windows +void FillAroundBattleWindows(void) { u16 *vramPtr = (u16*)(VRAM + 0x240); s32 i; diff --git a/src/battle_main.c b/src/battle_main.c index 19505b385f4e..f4e1c4d3de76 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -961,7 +961,7 @@ static void CB2_HandleStartBattle(void) ShowBg(1); ShowBg(2); ShowBg(3); - sub_805EF14(); + FillAroundBattleWindows(); gBattleCommunication[MULTIUSE_STATE] = 1; } if (gWirelessCommType) @@ -1157,7 +1157,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) ShowBg(1); ShowBg(2); ShowBg(3); - sub_805EF14(); + FillAroundBattleWindows(); gBattleCommunication[MULTIUSE_STATE] = 1; } if (gWirelessCommType) @@ -1558,7 +1558,7 @@ static void CB2_HandleStartMultiBattle(void) ShowBg(1); ShowBg(2); ShowBg(3); - sub_805EF14(); + FillAroundBattleWindows(); gBattleCommunication[MULTIUSE_STATE] = 1; } if (gWirelessCommType) @@ -2150,7 +2150,7 @@ void CB2_InitEndLinkBattle(void) SetHBlankCallback(NULL); SetVBlankCallback(NULL); - gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_IN_BATTLE); + gBattleTypeFlags &= ~BATTLE_TYPE_LINK_IN_BATTLE; if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) { @@ -3116,7 +3116,7 @@ void SwitchInClearSetData(void) && (gStatuses3[i] & STATUS3_ALWAYS_HITS) != 0 && (gDisableStructs[i].battlerWithSureHit == gActiveBattler)) { - gStatuses3[i] &= ~(STATUS3_ALWAYS_HITS); + gStatuses3[i] &= ~STATUS3_ALWAYS_HITS; gStatuses3[i] |= STATUS3_ALWAYS_HITS_TURN(2); } } @@ -3130,9 +3130,9 @@ void SwitchInClearSetData(void) for (i = 0; i < gBattlersCount; i++) { if (gBattleMons[i].status2 & STATUS2_INFATUATED_WITH(gActiveBattler)) - gBattleMons[i].status2 &= ~(STATUS2_INFATUATED_WITH(gActiveBattler)); + gBattleMons[i].status2 &= ~STATUS2_INFATUATED_WITH(gActiveBattler); if ((gBattleMons[i].status2 & STATUS2_WRAPPED) && *(gBattleStruct->wrappedBy + i) == gActiveBattler) - gBattleMons[i].status2 &= ~(STATUS2_WRAPPED); + gBattleMons[i].status2 &= ~STATUS2_WRAPPED; } gActionSelectionCursor[gActiveBattler] = 0; @@ -3212,9 +3212,9 @@ void FaintClearSetData(void) if ((gBattleMons[i].status2 & STATUS2_ESCAPE_PREVENTION) && gDisableStructs[i].battlerPreventingEscape == gActiveBattler) gBattleMons[i].status2 &= ~STATUS2_ESCAPE_PREVENTION; if (gBattleMons[i].status2 & STATUS2_INFATUATED_WITH(gActiveBattler)) - gBattleMons[i].status2 &= ~(STATUS2_INFATUATED_WITH(gActiveBattler)); + gBattleMons[i].status2 &= ~STATUS2_INFATUATED_WITH(gActiveBattler); if ((gBattleMons[i].status2 & STATUS2_WRAPPED) && *(gBattleStruct->wrappedBy + i) == gActiveBattler) - gBattleMons[i].status2 &= ~(STATUS2_WRAPPED); + gBattleMons[i].status2 &= ~STATUS2_WRAPPED; } gActionSelectionCursor[gActiveBattler] = 0; @@ -3821,7 +3821,7 @@ static void TryDoEventsBeforeFirstTurn(void) gBattleCommunication[i] = 0; for (i = 0; i < gBattlersCount; i++) - gBattleMons[i].status2 &= ~(STATUS2_FLINCHED); + gBattleMons[i].status2 &= ~STATUS2_FLINCHED; *(&gBattleStruct->turnEffectsTracker) = 0; *(&gBattleStruct->turnEffectsBattlerId) = 0; @@ -3852,7 +3852,7 @@ static void HandleEndTurn_ContinueBattle(void) gBattleCommunication[i] = 0; for (i = 0; i < gBattlersCount; i++) { - gBattleMons[i].status2 &= ~(STATUS2_FLINCHED); + gBattleMons[i].status2 &= ~STATUS2_FLINCHED; if ((gBattleMons[i].status1 & STATUS1_SLEEP) && (gBattleMons[i].status2 & STATUS2_MULTIPLETURNS)) CancelMultiTurnMoves(i); } @@ -3884,10 +3884,10 @@ void BattleTurnPassed(void) return; TurnValuesCleanUp(FALSE); - gHitMarker &= ~(HITMARKER_NO_ATTACKSTRING); - gHitMarker &= ~(HITMARKER_UNABLE_TO_USE_MOVE); - gHitMarker &= ~(HITMARKER_x400000); - gHitMarker &= ~(HITMARKER_x100000); + gHitMarker &= ~HITMARKER_NO_ATTACKSTRING; + gHitMarker &= ~HITMARKER_UNABLE_TO_USE_MOVE; + gHitMarker &= ~HITMARKER_PLAYER_FAINTED; + gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; gBattleScripting.animTurn = 0; gBattleScripting.animTargetsHit = 0; gBattleScripting.moveendState = 0; @@ -4795,12 +4795,12 @@ static void TurnValuesCleanUp(bool8 var0) { gDisableStructs[gActiveBattler].rechargeTimer--; if (gDisableStructs[gActiveBattler].rechargeTimer == 0) - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_RECHARGE); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_RECHARGE; } } if (gDisableStructs[gActiveBattler].substituteHP == 0) - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_SUBSTITUTE); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_SUBSTITUTE; } gSideTimers[0].followmeTimer = 0; @@ -4860,15 +4860,15 @@ static void RunTurnActionsFunctions(void) if (gCurrentTurnActionNumber >= gBattlersCount) // everyone did their actions, turn finished { - gHitMarker &= ~(HITMARKER_x100000); + gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; gBattleMainFunc = sEndTurnFuncsTable[gBattleOutcome & 0x7F]; } else { if (gBattleStruct->savedTurnActionNumber != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another battlerId { - gHitMarker &= ~(HITMARKER_NO_ATTACKSTRING); - gHitMarker &= ~(HITMARKER_UNABLE_TO_USE_MOVE); + gHitMarker &= ~HITMARKER_NO_ATTACKSTRING; + gHitMarker &= ~HITMARKER_UNABLE_TO_USE_MOVE; } } } @@ -4883,7 +4883,7 @@ static void HandleEndTurn_BattleWon(void) gBattleTextBuff1[0] = gBattleOutcome; gBattlerAttacker = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); + gBattleOutcome &= ~B_OUTCOME_LINK_BATTLE_RAN; } else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_EREADER_TRAINER)) @@ -4942,13 +4942,13 @@ static void HandleEndTurn_BattleLost(void) if (gBattleOutcome & B_OUTCOME_LINK_BATTLE_RAN) { gBattlescriptCurrInstr = BattleScript_PrintPlayerForfeitedLinkBattle; - gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); + gBattleOutcome &= ~B_OUTCOME_LINK_BATTLE_RAN; gSaveBlock2Ptr->frontier.disableRecordBattle = TRUE; } else { gBattlescriptCurrInstr = BattleScript_FrontierLinkBattleLost; - gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); + gBattleOutcome &= ~B_OUTCOME_LINK_BATTLE_RAN; } } else @@ -4956,7 +4956,7 @@ static void HandleEndTurn_BattleLost(void) gBattleTextBuff1[0] = gBattleOutcome; gBattlerAttacker = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); + gBattleOutcome &= ~B_OUTCOME_LINK_BATTLE_RAN; } } else diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 2a5b4c112bbe..e33e31796309 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -924,7 +924,7 @@ static void Cmd_attackcanceler(void) return; if (AbilityBattleEffects(ABILITYEFFECT_MOVES_BLOCK, gBattlerTarget, 0, 0, 0)) return; - if (!gBattleMons[gBattlerAttacker].pp[gCurrMovePos] && gCurrentMove != MOVE_STRUGGLE && !(gHitMarker & (HITMARKER_x800000 | HITMARKER_NO_ATTACKSTRING)) + if (!gBattleMons[gBattlerAttacker].pp[gCurrMovePos] && gCurrentMove != MOVE_STRUGGLE && !(gHitMarker & (HITMARKER_ALLOW_NO_PP | HITMARKER_NO_ATTACKSTRING)) && !(gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS)) { gBattlescriptCurrInstr = BattleScript_NoPPForMove; @@ -932,7 +932,7 @@ static void Cmd_attackcanceler(void) return; } - gHitMarker &= ~(HITMARKER_x800000); + gHitMarker &= ~HITMARKER_ALLOW_NO_PP; if (!(gHitMarker & HITMARKER_OBEYS) && !(gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS)) { @@ -1237,7 +1237,7 @@ static void Cmd_ppreduce(void) } } - gHitMarker &= ~(HITMARKER_NO_PPDEDUCT); + gHitMarker &= ~HITMARKER_NO_PPDEDUCT; gBattlescriptCurrInstr++; } @@ -1869,7 +1869,7 @@ static void Cmd_datahpupdate(void) } else { - gHitMarker &= ~(HITMARKER_IGNORE_SUBSTITUTE); + gHitMarker &= ~HITMARKER_IGNORE_SUBSTITUTE; if (gBattleMoveDamage < 0) // hp goes up { gBattleMons[gActiveBattler].hp -= gBattleMoveDamage; @@ -1879,9 +1879,9 @@ static void Cmd_datahpupdate(void) } else // hp goes down { - if (gHitMarker & HITMARKER_x20) + if (gHitMarker & HITMARKER_SKIP_DMG_TRACK) { - gHitMarker &= ~(HITMARKER_x20); + gHitMarker &= ~HITMARKER_SKIP_DMG_TRACK; } else { @@ -1903,10 +1903,10 @@ static void Cmd_datahpupdate(void) gBattleMons[gActiveBattler].hp = 0; } - if (!gSpecialStatuses[gActiveBattler].dmg && !(gHitMarker & HITMARKER_x100000)) + if (!gSpecialStatuses[gActiveBattler].dmg && !(gHitMarker & HITMARKER_PASSIVE_DAMAGE)) gSpecialStatuses[gActiveBattler].dmg = gHpDealt; - if (IS_TYPE_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_x100000) && gCurrentMove != MOVE_PAIN_SPLIT) + if (IS_TYPE_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_PASSIVE_DAMAGE) && gCurrentMove != MOVE_PAIN_SPLIT) { gProtectStructs[gActiveBattler].physicalDmg = gHpDealt; gSpecialStatuses[gActiveBattler].physicalDmg = gHpDealt; @@ -1921,7 +1921,7 @@ static void Cmd_datahpupdate(void) gSpecialStatuses[gActiveBattler].physicalBattlerId = gBattlerTarget; } } - else if (!IS_TYPE_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_x100000)) + else if (!IS_TYPE_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_PASSIVE_DAMAGE)) { gProtectStructs[gActiveBattler].specialDmg = gHpDealt; gSpecialStatuses[gActiveBattler].specialDmg = gHpDealt; @@ -1937,7 +1937,7 @@ static void Cmd_datahpupdate(void) } } } - gHitMarker &= ~(HITMARKER_x100000); + gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; BtlController_EmitSetMonData(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBattler].hp); MarkBattlerForControllerExec(gActiveBattler); } @@ -1972,7 +1972,7 @@ static void Cmd_effectivenesssound(void) gActiveBattler = gBattlerTarget; if (!(gMoveResultFlags & MOVE_RESULT_MISSED)) { - switch (gMoveResultFlags & (u8)(~(MOVE_RESULT_MISSED))) + switch (gMoveResultFlags & (u8)(~MOVE_RESULT_MISSED)) { case MOVE_RESULT_SUPER_EFFECTIVE: BtlController_EmitPlaySE(0, SE_SUPER_EFFECTIVE); @@ -2026,7 +2026,7 @@ static void Cmd_resultmessage(void) else { gBattleCommunication[MSG_DISPLAY] = 1; - switch (gMoveResultFlags & (u8)(~(MOVE_RESULT_MISSED))) + switch (gMoveResultFlags & (u8)(~MOVE_RESULT_MISSED)) { case MOVE_RESULT_SUPER_EFFECTIVE: stringId = STRINGID_SUPEREFFECTIVE; @@ -2060,9 +2060,9 @@ static void Cmd_resultmessage(void) } else if (gMoveResultFlags & MOVE_RESULT_ONE_HIT_KO) { - gMoveResultFlags &= ~(MOVE_RESULT_ONE_HIT_KO); - gMoveResultFlags &= ~(MOVE_RESULT_SUPER_EFFECTIVE); - gMoveResultFlags &= ~(MOVE_RESULT_NOT_VERY_EFFECTIVE); + gMoveResultFlags &= ~MOVE_RESULT_ONE_HIT_KO; + gMoveResultFlags &= ~MOVE_RESULT_SUPER_EFFECTIVE; + gMoveResultFlags &= ~MOVE_RESULT_NOT_VERY_EFFECTIVE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_OneHitKOMsg; return; @@ -2206,7 +2206,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gBattleCommunication[MOVE_EFFECT_BYTE] & MOVE_EFFECT_AFFECTS_USER) { gEffectBattler = gBattlerAttacker; // battlerId that effects get applied on - gBattleCommunication[MOVE_EFFECT_BYTE] &= ~(MOVE_EFFECT_AFFECTS_USER); + gBattleCommunication[MOVE_EFFECT_BYTE] &= ~MOVE_EFFECT_AFFECTS_USER; affectsUser = MOVE_EFFECT_AFFECTS_USER; gBattleScripting.battler = gBattlerTarget; // theoretically the attacker } @@ -2273,7 +2273,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; - gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); + gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD; } else { @@ -2314,7 +2314,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; - gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); + gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD; } else { @@ -2370,7 +2370,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; - gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); + gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD; } else { @@ -2398,7 +2398,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS; - gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); + gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD; } else { @@ -2424,8 +2424,8 @@ void SetMoveEffect(bool8 primary, u8 certain) break; // It's redundant, because at this point we know the status1 value is 0. - gBattleMons[gEffectBattler].status1 &= ~(STATUS1_TOXIC_POISON); - gBattleMons[gEffectBattler].status1 &= ~(STATUS1_POISON); + gBattleMons[gEffectBattler].status1 &= ~STATUS1_TOXIC_POISON; + gBattleMons[gEffectBattler].status1 &= ~STATUS1_POISON; statusChanged = TRUE; break; } @@ -2453,7 +2453,7 @@ void SetMoveEffect(bool8 primary, u8 certain) if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUSED_BY_ABILITY; - gHitMarker &= ~(HITMARKER_IGNORE_SAFEGUARD); + gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD; } else { @@ -2790,7 +2790,7 @@ void SetMoveEffect(bool8 primary, u8 certain) } else { - gBattleMons[gBattlerTarget].status1 &= ~(STATUS1_PARALYSIS); + gBattleMons[gBattlerTarget].status1 &= ~STATUS1_PARALYSIS; gActiveBattler = gBattlerTarget; BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); @@ -2881,7 +2881,7 @@ static void Cmd_seteffectwithchance(void) if (gBattleCommunication[MOVE_EFFECT_BYTE] & MOVE_EFFECT_CERTAIN && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)) { - gBattleCommunication[MOVE_EFFECT_BYTE] &= ~(MOVE_EFFECT_CERTAIN); + gBattleCommunication[MOVE_EFFECT_BYTE] &= ~MOVE_EFFECT_CERTAIN; SetMoveEffect(FALSE, MOVE_EFFECT_CERTAIN); } else if (Random() % 100 < percentChance @@ -2939,7 +2939,7 @@ static void Cmd_tryfaintmon(void) BattleScriptPop(); gBattlescriptCurrInstr = BS_ptr; - gSideStatuses[GetBattlerSide(gActiveBattler)] &= ~(SIDE_STATUS_SPIKES_DAMAGED); + gSideStatuses[GetBattlerSide(gActiveBattler)] &= ~SIDE_STATUS_SPIKES_DAMAGED; } else { @@ -2970,7 +2970,7 @@ static void Cmd_tryfaintmon(void) gBattlescriptCurrInstr = BS_ptr; if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { - gHitMarker |= HITMARKER_x400000; + gHitMarker |= HITMARKER_PLAYER_FAINTED; if (gBattleResults.playerFaintCounter < 0xFF) gBattleResults.playerFaintCounter++; AdjustFriendshipOnBattleFaint(gActiveBattler); @@ -2983,7 +2983,7 @@ static void Cmd_tryfaintmon(void) } if ((gHitMarker & HITMARKER_DESTINYBOND) && gBattleMons[gBattlerAttacker].hp != 0) { - gHitMarker &= ~(HITMARKER_DESTINYBOND); + gHitMarker &= ~HITMARKER_DESTINYBOND; BattleScriptPush(gBattlescriptCurrInstr); gBattleMoveDamage = gBattleMons[battlerId].hp; gBattlescriptCurrInstr = BattleScript_DestinyBondTakesLife; @@ -3581,8 +3581,8 @@ static void MoveValuesCleanUp(void) gCritMultiplier = 1; gBattleCommunication[MOVE_EFFECT_BYTE] = 0; gBattleCommunication[MISS_TYPE] = 0; - gHitMarker &= ~(HITMARKER_DESTINYBOND); - gHitMarker &= ~(HITMARKER_SYNCHRONISE_EFFECT); + gHitMarker &= ~HITMARKER_DESTINYBOND; + gHitMarker &= ~HITMARKER_SYNCHRONISE_EFFECT; } static void Cmd_movevaluescleanup(void) @@ -4217,7 +4217,7 @@ static void Cmd_moveend(void) && gSpecialStatuses[gBattlerTarget].specialDmg && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) && moveType == TYPE_FIRE) { - gBattleMons[gBattlerTarget].status1 &= ~(STATUS1_FREEZE); + gBattleMons[gBattlerTarget].status1 &= ~STATUS1_FREEZE; gActiveBattler = gBattlerTarget; BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBattlerTarget].status1); MarkBattlerForControllerExec(gActiveBattler); @@ -4313,7 +4313,7 @@ static void Cmd_moveend(void) gActiveBattler = gBattlerAttacker; BtlController_EmitSpriteInvisibility(0, FALSE); MarkBattlerForControllerExec(gActiveBattler); - gStatuses3[gBattlerAttacker] &= ~(STATUS3_SEMI_INVULNERABLE); + gStatuses3[gBattlerAttacker] &= ~STATUS3_SEMI_INVULNERABLE; gSpecialStatuses[gBattlerAttacker].restoredBattlerSprite = 1; gBattleScripting.moveendState++; return; @@ -4327,7 +4327,7 @@ static void Cmd_moveend(void) gActiveBattler = gBattlerTarget; BtlController_EmitSpriteInvisibility(0, FALSE); MarkBattlerForControllerExec(gActiveBattler); - gStatuses3[gBattlerTarget] &= ~(STATUS3_SEMI_INVULNERABLE); + gStatuses3[gBattlerTarget] &= ~STATUS3_SEMI_INVULNERABLE; gBattleScripting.moveendState++; return; } @@ -4337,7 +4337,7 @@ static void Cmd_moveend(void) for (i = 0; i < gBattlersCount; i++) { if (gDisableStructs[i].substituteHP == 0) - gBattleMons[i].status2 &= ~(STATUS2_SUBSTITUTE); + gBattleMons[i].status2 &= ~STATUS2_SUBSTITUTE; } gBattleScripting.moveendState++; break; @@ -4347,7 +4347,7 @@ static void Cmd_moveend(void) gActiveBattler = gBattlerAttacker; gBattlerAttacker = gBattlerTarget; gBattlerTarget = gActiveBattler; - gHitMarker &= ~(HITMARKER_SWAP_ATTACKER_TARGET); + gHitMarker &= ~HITMARKER_SWAP_ATTACKER_TARGET; } if (gHitMarker & HITMARKER_ATTACKSTRING_PRINTED) { @@ -4657,7 +4657,7 @@ static void Cmd_jumpifcantswitch(void) s32 lastMonId; struct Pokemon *party; - gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~(SWITCH_IGNORE_ESCAPE_PREVENTION)); + gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~SWITCH_IGNORE_ESCAPE_PREVENTION); if (!(gBattlescriptCurrInstr[1] & SWITCH_IGNORE_ESCAPE_PREVENTION) && ((gBattleMons[gActiveBattler].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION)) @@ -4837,7 +4837,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitLinkStandbyMsg(0, 2, FALSE); MarkBattlerForControllerExec(gActiveBattler); } @@ -4866,7 +4866,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(0, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -4888,7 +4888,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(2, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -4909,7 +4909,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(1, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -4931,7 +4931,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(3, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -4994,7 +4994,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(2, gBattleBufferB[0][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -5010,7 +5010,7 @@ static void Cmd_openpartyscreen(void) if (HasNoMonsToSwitch(3, gBattleBufferB[1][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); BtlController_EmitCantSwitch(0); MarkBattlerForControllerExec(gActiveBattler); } @@ -5049,7 +5049,7 @@ static void Cmd_openpartyscreen(void) else hitmarkerFaintBits = PARTY_ACTION_SEND_OUT; - battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~(PARTY_SCREEN_OPTIONAL)); + battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~PARTY_SCREEN_OPTIONAL); if (gSpecialStatuses[battlerId].flag40) { gBattlescriptCurrInstr += 6; @@ -5058,7 +5058,7 @@ static void Cmd_openpartyscreen(void) { gActiveBattler = battlerId; gAbsentBattlerFlags |= gBitTable[gActiveBattler]; - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); gBattlescriptCurrInstr = jumpPtr; } else @@ -5174,7 +5174,7 @@ static void Cmd_switchineffects(void) gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); UpdateSentPokesToOpponentValue(gActiveBattler); - gHitMarker &= ~(HITMARKER_FAINTED(gActiveBattler)); + gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); gSpecialStatuses[gActiveBattler].flag40 = 0; if (!(gSideStatuses[GetBattlerSide(gActiveBattler)] & SIDE_STATUS_SPIKES_DAMAGED) @@ -5186,8 +5186,8 @@ static void Cmd_switchineffects(void) gSideStatuses[GetBattlerSide(gActiveBattler)] |= SIDE_STATUS_SPIKES_DAMAGED; - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_DESTINY_BOND); - gHitMarker &= ~(HITMARKER_DESTINYBOND); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_DESTINY_BOND; + gHitMarker &= ~HITMARKER_DESTINYBOND; spikesDmg = (5 - gSideTimers[GetBattlerSide(gActiveBattler)].spikesAmount) * 2; gBattleMoveDamage = gBattleMons[gActiveBattler].maxHP / (spikesDmg); @@ -5216,7 +5216,7 @@ static void Cmd_switchineffects(void) if (!AbilityBattleEffects(ABILITYEFFECT_ON_SWITCHIN, gActiveBattler, 0, 0, 0) && !ItemBattleEffects(ITEMEFFECT_ON_SWITCH_IN, gActiveBattler, FALSE)) { - gSideStatuses[GetBattlerSide(gActiveBattler)] &= ~(SIDE_STATUS_SPIKES_DAMAGED); + gSideStatuses[GetBattlerSide(gActiveBattler)] &= ~SIDE_STATUS_SPIKES_DAMAGED; for (i = 0; i < gBattlersCount; i++) { @@ -5632,7 +5632,7 @@ static void Cmd_swapattackerwithtarget(void) gBattlerTarget = gActiveBattler; if (gHitMarker & HITMARKER_SWAP_ATTACKER_TARGET) - gHitMarker &= ~(HITMARKER_SWAP_ATTACKER_TARGET); + gHitMarker &= ~HITMARKER_SWAP_ATTACKER_TARGET; else gHitMarker |= HITMARKER_SWAP_ATTACKER_TARGET; @@ -6315,13 +6315,13 @@ static void Cmd_various(void) *choicedMove = 0; } break; - case 7: + case VARIOUS_RESET_PLAYER_FAINTED: if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_DOUBLE)) && gBattleTypeFlags & BATTLE_TYPE_TRAINER && gBattleMons[0].hp != 0 && gBattleMons[1].hp != 0) { - gHitMarker &= ~(HITMARKER_x400000); + gHitMarker &= ~HITMARKER_PLAYER_FAINTED; } break; case VARIOUS_PALACE_FLAVOR_TEXT: @@ -6355,7 +6355,7 @@ static void Cmd_various(void) case VARIOUS_ARENA_PLAYER_MON_LOST: gBattleMons[0].hp = 0; gHitMarker |= HITMARKER_FAINTED(0); - gHitMarker |= HITMARKER_x400000; + gHitMarker |= HITMARKER_PLAYER_FAINTED; gBattleStruct->arenaLostPlayerMons |= gBitTable[gBattlerPartyIndexes[0]]; gDisableStructs[0].truantSwitchInHack = 1; break; @@ -6364,7 +6364,7 @@ static void Cmd_various(void) gBattleMons[1].hp = 0; gHitMarker |= HITMARKER_FAINTED(0); gHitMarker |= HITMARKER_FAINTED(1); - gHitMarker |= HITMARKER_x400000; + gHitMarker |= HITMARKER_PLAYER_FAINTED; gBattleStruct->arenaLostPlayerMons |= gBitTable[gBattlerPartyIndexes[0]]; gBattleStruct->arenaLostOpponentMons |= gBitTable[gBattlerPartyIndexes[1]]; gDisableStructs[0].truantSwitchInHack = 1; @@ -6374,11 +6374,11 @@ static void Cmd_various(void) BtlController_EmitYesNoBox(0); MarkBattlerForControllerExec(gActiveBattler); break; - case 14: + case VARIOUS_DRAW_ARENA_REF_TEXT_BOX: DrawArenaRefereeTextBox(); break; - case 15: - RemoveArenaRefereeTextBox(); + case VARIOUS_ERASE_ARENA_REF_TEXT_BOX: + EraseArenaRefereeTextBox(); break; case VARIOUS_ARENA_JUDGMENT_STRING: BattleStringExpandPlaceholdersToDisplayedString(gRefereeStringsTable[gBattlescriptCurrInstr[1]]); @@ -6420,8 +6420,8 @@ static void Cmd_various(void) case VARIOUS_SET_ALREADY_STATUS_MOVE_ATTEMPT: gBattleStruct->alreadyStatusedMoveAttempt |= gBitTable[gActiveBattler]; break; - case 24: - if (sub_805725C(gActiveBattler)) + case VARIOUS_PALACE_TRY_ESCAPE_STATUS: + if (BattlePalace_TryEscapeStatus(gActiveBattler)) return; break; case VARIOUS_SET_TELEPORT_OUTCOME: @@ -6595,14 +6595,14 @@ static void Cmd_trymirrormove(void) if (move != 0 && move != 0xFFFF) { - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = move; gBattlerTarget = GetMoveTarget(gCurrentMove, 0); gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; } else if (validMovesCount) { - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; i = Random() % validMovesCount; gCurrentMove = movesArray[i]; gBattlerTarget = GetMoveTarget(gCurrentMove, 0); @@ -6882,15 +6882,15 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) else gActiveBattler = gBattlerTarget; - flags &= ~(MOVE_EFFECT_AFFECTS_USER); + flags &= ~MOVE_EFFECT_AFFECTS_USER; if (flags & MOVE_EFFECT_CERTAIN) certain++; - flags &= ~(MOVE_EFFECT_CERTAIN); + flags &= ~MOVE_EFFECT_CERTAIN; if (flags & STAT_BUFF_NOT_PROTECT_AFFECTED) notProtectAffected++; - flags &= ~(STAT_BUFF_NOT_PROTECT_AFFECTED); + flags &= ~STAT_BUFF_NOT_PROTECT_AFFECTED; PREPARE_STAT_BUFFER(gBattleTextBuff1, statId) @@ -7719,7 +7719,7 @@ static void Cmd_setsubstitute(void) gBattleMoveDamage = 1; gBattleMons[gBattlerAttacker].status2 |= STATUS2_SUBSTITUTE; - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_WRAPPED); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_WRAPPED; gDisableStructs[gBattlerAttacker].substituteHP = gBattleMoveDamage; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SET_SUBSTITUTE; gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE; @@ -7803,7 +7803,7 @@ static void Cmd_metronome(void) if (sMovesForbiddenToCopy[i] == METRONOME_FORBIDDEN_END) { - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; gBattlerTarget = GetMoveTarget(gCurrentMove, 0); return; @@ -8019,7 +8019,7 @@ static void Cmd_settypetorandomresistance(void) // conversion 2 static void Cmd_setalwayshitflag(void) { - gStatuses3[gBattlerTarget] &= ~(STATUS3_ALWAYS_HITS); + gStatuses3[gBattlerTarget] &= ~STATUS3_ALWAYS_HITS; gStatuses3[gBattlerTarget] |= STATUS3_ALWAYS_HITS_TURN(2); gDisableStructs[gBattlerTarget].battlerWithSureHit = gBattlerAttacker; gBattlescriptCurrInstr++; @@ -8137,7 +8137,7 @@ static void Cmd_trychoosesleeptalkmove(void) } - unusableMovesBits = CheckMoveLimitations(gBattlerAttacker, unusableMovesBits, ~(MOVE_LIMITATION_PP)); + unusableMovesBits = CheckMoveLimitations(gBattlerAttacker, unusableMovesBits, ~MOVE_LIMITATION_PP); if (unusableMovesBits == 0xF) // all 4 moves cannot be chosen { gBattlescriptCurrInstr += 5; @@ -8153,7 +8153,7 @@ static void Cmd_trychoosesleeptalkmove(void) gCalledMove = gBattleMons[gBattlerAttacker].moves[movePosition]; gCurrMovePos = movePosition; - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gBattlerTarget = GetMoveTarget(gCalledMove, 0); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -8269,7 +8269,7 @@ static void Cmd_healpartystatus(void) if (gBattleMons[gBattlerAttacker].ability != ABILITY_SOUNDPROOF) { gBattleMons[gBattlerAttacker].status1 = 0; - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; } else { @@ -8285,7 +8285,7 @@ static void Cmd_healpartystatus(void) if (gBattleMons[gActiveBattler].ability != ABILITY_SOUNDPROOF) { gBattleMons[gActiveBattler].status1 = 0; - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_NIGHTMARE; } else { @@ -8325,14 +8325,14 @@ static void Cmd_healpartystatus(void) toHeal = 0x3F; gBattleMons[gBattlerAttacker].status1 = 0; - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBattlerFlags & gBitTable[gActiveBattler])) { gBattleMons[gActiveBattler].status1 = 0; - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_NIGHTMARE; } } @@ -8435,7 +8435,7 @@ static void Cmd_rolloutdamagecalculation(void) } if (--gDisableStructs[gBattlerAttacker].rolloutTimer == 0) // last hit { - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_MULTIPLETURNS); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_MULTIPLETURNS; } gDynamicBasePower = gBattleMoves[gCurrentMove].power; @@ -8515,7 +8515,7 @@ static void Cmd_presentdamagecalculation(void) gBattlescriptCurrInstr = BattleScript_AlreadyAtFullHp; else { - gMoveResultFlags &= ~(MOVE_RESULT_DOESNT_AFFECT_FOE); + gMoveResultFlags &= ~MOVE_RESULT_DOESNT_AFFECT_FOE; gBattlescriptCurrInstr = BattleScript_PresentHealTarget; } } @@ -8628,7 +8628,7 @@ static void Cmd_jumpifnopursuitswitchdmg(void) gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerTarget); gBattlescriptCurrInstr += 5; gBattleScripting.animTurn = 1; - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; } else { @@ -8693,7 +8693,7 @@ static void Cmd_rapidspinfree(void) if (gBattleMons[gBattlerAttacker].status2 & STATUS2_WRAPPED) { gBattleScripting.battler = gBattlerTarget; - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_WRAPPED); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_WRAPPED; gBattlerTarget = *(gBattleStruct->wrappedBy + gBattlerAttacker); gBattleTextBuff1[0] = B_BUFF_PLACEHOLDER_BEGIN; @@ -8707,14 +8707,14 @@ static void Cmd_rapidspinfree(void) } else if (gStatuses3[gBattlerAttacker] & STATUS3_LEECHSEED) { - gStatuses3[gBattlerAttacker] &= ~(STATUS3_LEECHSEED); - gStatuses3[gBattlerAttacker] &= ~(STATUS3_LEECHSEED_BATTLER); + gStatuses3[gBattlerAttacker] &= ~STATUS3_LEECHSEED; + gStatuses3[gBattlerAttacker] &= ~STATUS3_LEECHSEED_BATTLER; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_LeechSeedFree; } else if (gSideStatuses[GetBattlerSide(gBattlerAttacker)] & SIDE_STATUS_SPIKES) { - gSideStatuses[GetBattlerSide(gBattlerAttacker)] &= ~(SIDE_STATUS_SPIKES); + gSideStatuses[GetBattlerSide(gBattlerAttacker)] &= ~SIDE_STATUS_SPIKES; gSideTimers[GetBattlerSide(gBattlerAttacker)].spikesAmount = 0; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SpikesFree; @@ -8970,7 +8970,7 @@ static void Cmd_setcharge(void) static void Cmd_callterrainattack(void) // nature power { - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = sNaturePowerMoves[gBattleTerrain]; gBattlerTarget = GetMoveTarget(gCurrentMove, 0); BattleScriptPush(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]); @@ -9380,7 +9380,7 @@ static void Cmd_assistattackselect(void) } if (chooseableMovesNo) { - gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED); + gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCalledMove = movesArray[((Random() & 0xFF) * chooseableMovesNo) >> 8]; gBattlerTarget = GetMoveTarget(gCalledMove, 0); gBattlescriptCurrInstr += 5; @@ -9736,8 +9736,8 @@ static void Cmd_removelightscreenreflect(void) // brick break if (gSideTimers[opposingSide].reflectTimer || gSideTimers[opposingSide].lightscreenTimer) { - gSideStatuses[opposingSide] &= ~(SIDE_STATUS_REFLECT); - gSideStatuses[opposingSide] &= ~(SIDE_STATUS_LIGHTSCREEN); + gSideStatuses[opposingSide] &= ~SIDE_STATUS_REFLECT; + gSideStatuses[opposingSide] &= ~SIDE_STATUS_LIGHTSCREEN; gSideTimers[opposingSide].reflectTimer = 0; gSideTimers[opposingSide].lightscreenTimer = 0; gBattleScripting.animTurn = 1; diff --git a/src/battle_util.c b/src/battle_util.c index 9af456449177..62f7897c6744 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -646,9 +646,9 @@ void HandleAction_NothingIsFainted(void) gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR - | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 - | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT - | HITMARKER_CHARGING | HITMARKER_x4000000); + | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE + | HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT + | HITMARKER_CHARGING | HITMARKER_NEVER_SET); } void HandleAction_ActionFinished(void) @@ -659,9 +659,9 @@ void HandleAction_ActionFinished(void) SpecialStatusesClear(); gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR - | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 - | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT - | HITMARKER_CHARGING | HITMARKER_x4000000); + | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE + | HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT + | HITMARKER_CHARGING | HITMARKER_NEVER_SET); gCurrentMove = 0; gBattleMoveDamage = 0; @@ -1443,7 +1443,7 @@ u8 DoBattlerEndTurnEffects(void) { u8 effect = 0; - gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20); + gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK); while (gBattleStruct->turnEffectsBattlerId < gBattlersCount && gBattleStruct->turnEffectsTracker <= ENDTURN_BATTLER_COUNT) { gActiveBattler = gBattlerAttacker = gBattlerByTurnOrder[gBattleStruct->turnEffectsBattlerId]; @@ -1756,13 +1756,13 @@ u8 DoBattlerEndTurnEffects(void) return effect; } } - gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20); + gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK); return 0; } bool8 HandleWishPerishSongOnTurnEnd(void) { - gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20); + gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK); switch (gBattleStruct->wishPerishSongState) { @@ -1862,7 +1862,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void) break; } - gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20); + gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK); return FALSE; } @@ -4067,7 +4067,7 @@ u8 IsMonDisobedient(void) gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove; gBattlerTarget = GetMoveTarget(gCalledMove, 0); - gHitMarker |= HITMARKER_x200000; + gHitMarker |= HITMARKER_DISOBEDIENT_MOVE; return 2; } } diff --git a/src/battle_util2.c b/src/battle_util2.c index def7302d38e5..3838f22bbafe 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -121,7 +121,9 @@ void SwitchPartyOrderInGameMulti(u8 battlerId, u8 arg1) } } -u32 sub_805725C(u8 battlerId) +// 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 effect = 0; @@ -134,6 +136,7 @@ u32 sub_805725C(u8 battlerId) { if (UproarWakeUpCheck(battlerId)) { + // Wake up from Uproar gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP); gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); @@ -150,6 +153,7 @@ u32 sub_805725C(u8 battlerId) else toSub = 1; + // Reduce number of sleep turns if ((gBattleMons[battlerId].status1 & STATUS1_SLEEP) < toSub) gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP); else @@ -157,11 +161,13 @@ u32 sub_805725C(u8 battlerId) if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) { + // Still asleep gBattlescriptCurrInstr = BattleScript_MoveUsedIsAsleep; effect = 2; } else { + // Wake up gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP; @@ -177,10 +183,12 @@ u32 sub_805725C(u8 battlerId) { if (Random() % 5 != 0) { + // Still frozen gBattlescriptCurrInstr = BattleScript_MoveUsedIsFrozen; } else { + // Unfreeze gBattleMons[battlerId].status1 &= ~(STATUS1_FREEZE); BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; @@ -193,7 +201,7 @@ u32 sub_805725C(u8 battlerId) case 2: break; } - + // Loop until reaching the final state, or stop early if PokĂ©mon was Asleep/Frozen } while (gBattleCommunication[MULTIUSE_STATE] != 2 && effect == 0); if (effect == 2) diff --git a/src/contest.c b/src/contest.c index 886f2b95dc9b..68cad859d941 100644 --- a/src/contest.c +++ b/src/contest.c @@ -75,7 +75,7 @@ static void Task_FinishRoundOfAppeals(u8); static void Task_ReadyUpdateHeartSliders(u8); static void Task_UpdateHeartSliders(u8); static void Task_WaitForHeartSliders(u8); -static void sub_80DA348(u8); +static void Task_RestorePlttBufferUnfaded(u8); static void Task_WaitPrintRoundResult(u8); static void Task_PrintRoundResultText(u8); static void Task_ReUpdateHeartSliders(u8); @@ -2553,10 +2553,10 @@ static void Task_UpdateHeartSliders(u8 taskId) static void Task_WaitForHeartSliders(u8 taskId) { if (SlidersDoneUpdating()) - gTasks[taskId].func = sub_80DA348; + gTasks[taskId].func = Task_RestorePlttBufferUnfaded; } -static void sub_80DA348(u8 taskId) +static void Task_RestorePlttBufferUnfaded(u8 taskId) { DmaCopy32Defvars(3, eContestTempSave.cachedPlttBufferUnfaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * 2); gTasks[taskId].data[0] = 0; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index e9d6b6070e37..0e85e37f23ac 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -978,7 +978,7 @@ static void Task_HofPC_PrintMonInfo(u8 taskId) currMonID = gTasks[taskId].tMonSpriteId(gTasks[taskId].tCurrMonId); gSprites[currMonID].oam.priority = 0; - sHofFadePalettes = (0x10000 << gSprites[currMonID].oam.paletteNum) ^ 0xFFFF0000; + sHofFadePalettes = (0x10000 << gSprites[currMonID].oam.paletteNum) ^ PALETTES_OBJECTS; BlendPalettesUnfaded(sHofFadePalettes, 0xC, RGB(16, 29, 24)); currMon = &savedTeams->mon[gTasks[taskId].tCurrMonId]; diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 8bcf506fbfee..1751fd59d9ff 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -562,23 +562,31 @@ void UpdateItemMenuSwapLinePos(u8 y) UpdateSwapLineSpritesPos(&gBagMenu->spriteIds[ITEMMENUSPRITE_SWAP_LINE], ITEMMENU_SWAP_LINE_LENGTH | SWAP_LINE_HAS_MARGIN, 120, (y + 1) * 16); } -static void sub_80D5018(void *mem0, void *mem1) +static void ArrangeBerryGfx(void *src, void *dest) { u8 i, j; - memset(mem1, 0, 0x800); - mem1 += 0x100; + memset(dest, 0, 0x800); + + // Create top margin + dest += 0x100; + for (i = 0; i < 6; i++) { - mem1 += 0x20; + // Create left margin + dest += 0x20; + + // Copy one row of berry's icon for (j = 0; j < 6; j++) { - memcpy(mem1, mem0, 0x20); - mem1 += 0x20; - mem0 += 0x20; + memcpy(dest, src, 0x20); + dest += 0x20; + src += 0x20; } + + // Create right margin if (i != 5) - mem1 += 0x20; + dest += 0x20; } } @@ -595,7 +603,7 @@ static void LoadBerryGfx(u8 berryId) pal.tag = TAG_BERRY_PIC_PAL; LoadCompressedSpritePalette(&pal); LZDecompressWram(sBerryPicTable[berryId].tiles, &gDecompressionBuffer[0x1000]); - sub_80D5018(&gDecompressionBuffer[0x1000], &gDecompressionBuffer[0]); + ArrangeBerryGfx(&gDecompressionBuffer[0x1000], &gDecompressionBuffer[0]); } u8 CreateBerryTagSprite(u8 id, s16 x, s16 y) diff --git a/src/main.c b/src/main.c index 3125716e2542..215f85c468cb 100644 --- a/src/main.c +++ b/src/main.c @@ -57,7 +57,7 @@ const IntrFunc gIntrTableTemplate[] = #define INTR_COUNT ((int)(sizeof(gIntrTableTemplate)/sizeof(IntrFunc))) -static u16 gUnknown_03000000; +static u16 sUnusedVar; // Never read u16 gKeyRepeatStartDelay; bool8 gLinkTransferringData; @@ -117,7 +117,7 @@ void AgbMain() SetMainCallback2(NULL); gLinkTransferringData = FALSE; - gUnknown_03000000 = 0xFC0; + sUnusedVar = 0xFC0; for (;;) { diff --git a/src/main_menu.c b/src/main_menu.c index 3248c189fe3d..a60cf1a2835e 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -170,7 +170,7 @@ // Static RAM declarations -static EWRAM_DATA u8 gUnknown_02022D04 = 0; +static EWRAM_DATA bool8 sStartedPokeBallTask = 0; static EWRAM_DATA u16 sCurrItemAndOptionMenuCheck = 0; static u8 sBirchSpeechMainTaskId; @@ -201,7 +201,7 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8, u8); static void NewGameBirchSpeech_ClearWindow(u8); static void Task_NewGameBirchSpeech_ThisIsAPokemon(u8); static void Task_NewGameBirchSpeech_MainSpeech(u8); -static void NewGameBirchSpeech_ShowPokeBallPrinterCallback(struct TextPrinterTemplate *printer, u16 a); +static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 a); static void Task_NewGameBirchSpeech_AndYouAre(u8); static void Task_NewGameBirchSpeechSub_WaitForLotad(u8); static void Task_NewGameBirchSpeech_StartBirchLotadPlatformFade(u8); @@ -1348,7 +1348,7 @@ static void Task_NewGameBirchSpeech_ThisIsAPokemon(u8 taskId) { gTasks[taskId].func = Task_NewGameBirchSpeech_MainSpeech; StringExpandPlaceholders(gStringVar4, gText_ThisIsAPokemon); - AddTextPrinterWithCallbackForMessage(1, NewGameBirchSpeech_ShowPokeBallPrinterCallback); + AddTextPrinterWithCallbackForMessage(1, NewGameBirchSpeech_WaitForThisIsPokemonText); sBirchSpeechMainTaskId = taskId; } } @@ -1411,7 +1411,7 @@ static void Task_NewGameBirchSpeech_AndYouAre(u8 taskId) { if (!RunTextPrintersAndIsPrinter0Active()) { - gUnknown_02022D04 = 0; + sStartedPokeBallTask = FALSE; StringExpandPlaceholders(gStringVar4, gText_Birch_AndYouAre); AddTextPrinterForMessage(1); gTasks[taskId].func = Task_NewGameBirchSpeech_StartBirchLotadPlatformFade; @@ -2250,21 +2250,21 @@ static void NewGameBirchSpeech_ClearWindow(u8 windowId) CopyWindowToVram(windowId, 2); } -static void NewGameBirchSpeech_ShowPokeBallPrinterCallback(struct TextPrinterTemplate *printer, u16 a) +static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 a) { - if (*(printer->currentChar - 2) == 8 && gUnknown_02022D04 == 0) + // Wait for Birch's "This is a PokĂ©mon" text to reach the pause + // Then start the PokĂ©Ball release (if it hasn't been started already) + if (*(printer->currentChar - 2) == EXT_CTRL_CODE_PAUSE && !sStartedPokeBallTask) { - gUnknown_02022D04 = 1; + sStartedPokeBallTask = TRUE; CreateTask(Task_NewGameBirchSpeechSub_InitPokeBall, 0); } } -void CreateYesNoMenuParameterized(u8 a, u8 b, u16 c, u16 d, u8 e, u8 f) +void CreateYesNoMenuParameterized(u8 x, u8 y, u16 baseTileNum, u16 baseBlock, u8 yesNoPalNum, u8 winPalNum) { - struct WindowTemplate sp; - - sp = CreateWindowTemplate(0, a + 1, b + 1, 5, 4, f, d); - CreateYesNoMenu(&sp, c, e, 0); + struct WindowTemplate template = CreateWindowTemplate(0, x + 1, y + 1, 5, 4, winPalNum, baseBlock); + CreateYesNoMenu(&template, baseTileNum, yesNoPalNum, 0); } static void NewGameBirchSpeech_ShowDialogueWindow(u8 windowId, u8 copyToVram) diff --git a/src/menu.c b/src/menu.c index de1468e3b60a..dcc32319e972 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1769,9 +1769,7 @@ void ResetTempTileDataBuffers(void) { int i; for (i = 0; i < (int)ARRAY_COUNT(sTempTileDataBuffer); i++) - { sTempTileDataBuffer[i] = NULL; - } sTempTileDataBufferIdx = 0; } @@ -1784,9 +1782,7 @@ bool8 FreeTempTileDataBuffersIfPossible(void) if (sTempTileDataBufferIdx) { for (i = 0; i < sTempTileDataBufferIdx; i++) - { FREE_AND_SET_NULL(sTempTileDataBuffer[i]); - } sTempTileDataBufferIdx = 0; } return FALSE; diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c index 82d5e50e5143..1ee5ca988d9e 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/interfac void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) { u8 mode; - sPokedexAreaMapBgNum = Alloc(4); + sPokedexAreaMapBgNum = Alloc(sizeof(sPokedexAreaMapBgNum)); mode = template->mode; if (mode == 0) @@ -28,8 +28,9 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) } else { + // This is never reached, only a mode of 0 is given SetBgAttribute(template->bg, BG_ATTR_METRIC, 2); - SetBgAttribute(template->bg, BG_ATTR_TYPE, 1); + SetBgAttribute(template->bg, BG_ATTR_TYPE, BG_TYPE_AFFINE); // This does nothing. BG_ATTR_TYPE can't be set with this function DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMapAffine_Gfx, 0, template->offset, 0); sub_8199D3C(DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMapAffine_Tilemap, 0, 0, 1), template->offset, 64, 64, TRUE); } @@ -41,7 +42,7 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) *sPokedexAreaMapBgNum = template->bg; } -bool32 sub_81C4E90(void) +bool32 TryShowPokedexAreaMap(void) { if (!FreeTempTileDataBuffersIfPossible()) { @@ -56,8 +57,7 @@ bool32 sub_81C4E90(void) void FreePokedexAreaMapBgNum(void) { - if (sPokedexAreaMapBgNum != NULL) - FREE_AND_SET_NULL(sPokedexAreaMapBgNum); + TRY_FREE_AND_SET_NULL(sPokedexAreaMapBgNum); } void PokedexAreaMapChangeBgY(u32 a0) diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index 12f0e0d9edf9..2f0d676cbe9a 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -86,7 +86,7 @@ static void CreateAreaMarkerSprites(void); static void LoadAreaUnknownGraphics(void); static void CreateAreaUnknownSprites(void); static void Task_HandlePokedexAreaScreenInput(u8); -static void sub_813D6B4(void); +static void ResetPokedexAreaMapBg(void); static void DestroyAreaMarkerSprites(void); static const u32 sAreaGlow_Pal[] = INCBIN_U32("graphics/pokedex/area_glow.gbapal"); @@ -665,7 +665,7 @@ static void Task_ShowPokedexAreaScreen(u8 taskId) StringFill(sPokedexAreaScreen->charBuffer, CHAR_SPACE, 16); break; case 2: - if (sub_81C4E90() == TRUE) + if (TryShowPokedexAreaMap() == TRUE) return; PokedexAreaMapChangeBgY(-8); break; @@ -697,7 +697,7 @@ static void Task_ShowPokedexAreaScreen(u8 taskId) SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG0 | BLDCNT_TGT2_ALL); StartAreaGlow(); ShowBg(2); - ShowBg(3); + ShowBg(3); // TryShowPokedexAreaMap will have done this already SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON); break; case 11: @@ -743,7 +743,7 @@ static void Task_HandlePokedexAreaScreenInput(u8 taskId) return; DestroyAreaMarkerSprites(); sPokedexAreaScreen->screenSwitchState[0] = gTasks[taskId].data[1]; - sub_813D6B4(); + ResetPokedexAreaMapBg(); DestroyTask(taskId); FreePokedexAreaMapBgNum(); FREE_AND_SET_NULL(sPokedexAreaScreen); @@ -753,7 +753,7 @@ static void Task_HandlePokedexAreaScreenInput(u8 taskId) gTasks[taskId].tState++; } -static void sub_813D6B4(void) +static void ResetPokedexAreaMapBg(void) { SetBgAttribute(3, BG_ATTR_CHARBASEINDEX, 0); SetBgAttribute(3, BG_ATTR_PALETTEMODE, 0); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index a58187d8b330..801041c530eb 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -9822,13 +9822,13 @@ struct u16 height; } static const sTilemapDimensions[][4] = { - { + [BG_TYPE_NORMAL] = { { 256, 256}, { 512, 256}, { 256, 512}, { 512, 512}, }, - { + [BG_TYPE_AFFINE] = { { 128, 128}, { 256, 256}, { 512, 512}, @@ -9853,7 +9853,7 @@ static void TilemapUtil_SetMap(u8 id, u8 bg, const void *tilemap, u16 width, u16 bgType = GetBgAttribute(bg, BG_ATTR_TYPE); sTilemapUtil[id].altWidth = sTilemapDimensions[bgType][bgScreenSize].width; sTilemapUtil[id].altHeight = sTilemapDimensions[bgType][bgScreenSize].height; - if (bgType != 0) + if (bgType != BG_TYPE_NORMAL) sTilemapUtil[id].tileSize = 1; else sTilemapUtil[id].tileSize = 2; diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 58de22f05620..6bc0e175bb9c 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -162,7 +162,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) BeginHardwarePaletteFade(0xFF, 0, 0x10, 0, 1); gPaletteFade.bufferTransferDisabled = 0; SetMainCallback2(BattleMainCB2); - sub_805EF14(); + FillAroundBattleWindows(); break; } diff --git a/sym_common.txt b/sym_common.txt index 1525d8aec8cd..938b78fbe4d3 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -2,7 +2,7 @@ .include "main.o" @ ../gflib/bg.o .align 2 -gUnneededFireRedVariable: +gWindowTileAutoAllocEnabled: .space 4 @ ../gflib/window.o .align 4 From db057eb86b46f5ed152798af50f7858d786d2733 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 24 Sep 2021 17:33:18 -0400 Subject: [PATCH 271/762] Relocate battle_message comment --- gflib/text.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gflib/text.h b/gflib/text.h index a08d0a0fff20..f71cd557faae 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -263,12 +263,12 @@ #define PLACEHOLDER_ID_KYOGRE 0xC #define PLACEHOLDER_ID_GROUDON 0xD +// battle placeholders are located in battle_message.h + // Hiragana from 0x1-0x50, Katakana from 0x51-0xA0. // This excludes Japanese punctuation, which end at 0xB0 #define JAPANESE_CHAR_END 0xA0 -// battle placeholders are located in battle_message.h - #define NUM_TEXT_PRINTERS 32 #define TEXT_SPEED_FF 0xFF From 8a79ca3818d23c27d94a2919b2fc99caa38034cc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 26 Sep 2021 16:20:39 -0400 Subject: [PATCH 272/762] Document walda_phrase --- include/pokemon_storage_system.h | 3 +- include/walda_phrase.h | 2 + src/menu_specialized.c | 2 +- src/naming_screen.c | 9 +- src/pokemon_storage_system.c | 4 +- src/pokenav_conditions_1.c | 2 +- src/walda_phrase.c | 182 ++++++++++++++++++------------- 7 files changed, 120 insertions(+), 84 deletions(-) diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index a0e4f89478de..b7fca23311d9 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -5,6 +5,7 @@ #define IN_BOX_ROWS 5 // Number of rows, 6 PokĂ©mon per row #define IN_BOX_COLUMNS 6 // Number of columns, 5 PokĂ©mon per column #define IN_BOX_COUNT (IN_BOX_ROWS * IN_BOX_COLUMNS) +#define BOX_NAME_LENGTH 8 /* COLUMNS @@ -19,7 +20,7 @@ struct PokemonStorage { /*0x0000*/ u8 currentBox; /*0x0001*/ struct BoxPokemon boxes[TOTAL_BOXES_COUNT][IN_BOX_COUNT]; - /*0x8344*/ u8 boxNames[TOTAL_BOXES_COUNT][9]; + /*0x8344*/ u8 boxNames[TOTAL_BOXES_COUNT][BOX_NAME_LENGTH + 1]; /*0x83C2*/ u8 boxWallpapers[TOTAL_BOXES_COUNT]; }; diff --git a/include/walda_phrase.h b/include/walda_phrase.h index 3d7701123557..1cfd8af48a46 100644 --- a/include/walda_phrase.h +++ b/include/walda_phrase.h @@ -1,6 +1,8 @@ #ifndef GUARD_WALDA_PHRASE_H #define GUARD_WALDA_PHRASE_H +#define WALDA_PHRASE_LENGTH 15 + u16 TryBufferWaldaPhrase(void); void DoWaldaNamingScreen(void); u16 TryGetWallpaperWithWaldaPhrase(void); diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 2fd12f2fd31d..c9d895e19310 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -997,7 +997,7 @@ void GetConditionMenuMonNameAndLocString(u8 *locationDst, u8 *nameDst, u16 boxId if (box == TOTAL_BOXES_COUNT) // Party mon. BufferConditionMenuSpacedStringN(&locationDst[5], gText_InParty, 8); else - BufferConditionMenuSpacedStringN(&locationDst[5], GetBoxNamePtr(box), 8); + BufferConditionMenuSpacedStringN(&locationDst[5], GetBoxNamePtr(box), BOX_NAME_LENGTH); } else { diff --git a/src/naming_screen.c b/src/naming_screen.c index 5a297789a0ed..0d0ec7fcabeb 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -25,6 +25,7 @@ #include "menu.h" #include "text_window.h" #include "overworld.h" +#include "walda_phrase.h" #include "constants/event_objects.h" #include "constants/rgb.h" @@ -2089,7 +2090,7 @@ static void Debug_NamingScreenNickname(void) static const struct NamingScreenTemplate sPlayerNamingScreenTemplate = { .copyExistingString = FALSE, - .maxChars = 7, + .maxChars = PLAYER_NAME_LENGTH, .iconFunction = 1, .addGenderIcon = FALSE, .initialPage = KBPAGE_LETTERS_UPPER, @@ -2100,7 +2101,7 @@ static const struct NamingScreenTemplate sPlayerNamingScreenTemplate = static const struct NamingScreenTemplate sPCBoxNamingTemplate = { .copyExistingString = FALSE, - .maxChars = 8, + .maxChars = BOX_NAME_LENGTH, .iconFunction = 2, .addGenderIcon = FALSE, .initialPage = KBPAGE_LETTERS_UPPER, @@ -2111,7 +2112,7 @@ static const struct NamingScreenTemplate sPCBoxNamingTemplate = static const struct NamingScreenTemplate sMonNamingScreenTemplate = { .copyExistingString = FALSE, - .maxChars = 10, + .maxChars = POKEMON_NAME_LENGTH, .iconFunction = 3, .addGenderIcon = TRUE, .initialPage = KBPAGE_LETTERS_UPPER, @@ -2122,7 +2123,7 @@ static const struct NamingScreenTemplate sMonNamingScreenTemplate = static const struct NamingScreenTemplate sWaldaWordsScreenTemplate = { .copyExistingString = TRUE, - .maxChars = 15, + .maxChars = WALDA_PHRASE_LENGTH, .iconFunction = 4, .addGenderIcon = FALSE, .initialPage = KBPAGE_LETTERS_UPPER, diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index a58187d8b330..cf5beb4feeb1 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -5512,7 +5512,7 @@ static void InitBoxTitle(u8 boxId) sStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; sStorage->wallpaperPalBits |= 0x10000 << tagIndex; - StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, BOX_NAME_LENGTH); DrawTextWindowAndBufferTiles(sStorage->boxTitleText, sStorage->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); x = GetBoxTitleBaseX(GetBoxNamePtr(boxId)); @@ -5557,7 +5557,7 @@ static void CreateIncomingBoxTitle(u8 boxId, s8 direction) template.paletteTag = PALTAG_BOX_TITLE; } - StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); + StringCopyPadded(sStorage->boxTitleText, GetBoxNamePtr(boxId), 0, BOX_NAME_LENGTH); DrawTextWindowAndBufferTiles(sStorage->boxTitleText, sStorage->boxTitleTiles, 0, 0, 2); LoadSpriteSheet(&spriteSheet); LoadPalette(sBoxTitleColors[GetBoxWallpaper(boxId)], palOffset, sizeof(sBoxTitleColors[0])); diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index c415de1aced9..d2424629a216 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -435,7 +435,7 @@ void CopyMonNameGenderLocation(s16 id, u8 arg1) if (boxId == TOTAL_BOXES_COUNT) CopyStringLeftAlignedToConditionData(&structPtr->searchLocBuffer[arg1][5], gText_InParty, 8); else - CopyStringLeftAlignedToConditionData(&structPtr->searchLocBuffer[arg1][5], GetBoxNamePtr(boxId), 8); + CopyStringLeftAlignedToConditionData(&structPtr->searchLocBuffer[arg1][5], GetBoxNamePtr(boxId), BOX_NAME_LENGTH); } else { diff --git a/src/walda_phrase.c b/src/walda_phrase.c index 18fb2791b2a8..aa85c0d60bef 100644 --- a/src/walda_phrase.c +++ b/src/walda_phrase.c @@ -12,17 +12,20 @@ extern const u8 gText_Peekaboo[]; -// this file's functions static void CB2_HandleGivenWaldaPhrase(void); -static u32 GetWaldaPhraseInputCase(u8 *inputPtr); -static bool32 TryCalculateWallpaper(u16* backgroundClr, u16 *foregroundClr, u8 *iconId, u8 *patternId, u16 trainerId, u8 *phrase); -static void sub_81D9D5C(u8 *array, u8 *letterTableIds, u32 arg2, u32 arg3, u32 loopCount); -static u32 sub_81D9DAC(u8 *array, u32 arg1, u32 loopCount); -static void sub_81D9C90(u8 *array, s32 arg1, s32 arg2); -static void sub_81D9CDC(u8 *array, u32 loopCount, u8 arg2); - -// only consonants are allowed, no vowels, some lowercase letters are missing -static const u8 sWaldaLettersTable[] = +static u32 GetWaldaPhraseInputCase(u8 *); +static bool32 TryCalculateWallpaper(u16 *, u16 *, u8 *, u8 *, u16, u8 *); +static void SetWallpaperDataFromLetter(u8 *, u8 *, u32, u32, u32); +static u32 GetWallpaperDataBits(u8 *, u32, u32); +static void RotateWallpaperDataLeft(u8 *, s32, s32); +static void MaskWallpaperData(u8 *, u32, u8); + +// There are 32 (2^5) unique letters allowed in a successful phrase for Walda. +#define BITS_PER_LETTER 5 + +// The letters allowed in a successful phrase for Walda +// All vowels are excluded, as well as X/x, Y/y, l, r, t, v, w, and z. +static const u8 sWaldaLettersTable[1 << BITS_PER_LETTER] = { CHAR_B, CHAR_C, CHAR_D, CHAR_F, CHAR_G, CHAR_H, CHAR_J, CHAR_K, CHAR_L, CHAR_M, CHAR_N, CHAR_P, CHAR_Q, CHAR_R, CHAR_S, CHAR_T, CHAR_V, CHAR_W, CHAR_Z, CHAR_b, CHAR_c, CHAR_d, CHAR_f, CHAR_g, CHAR_h, CHAR_j, CHAR_k, CHAR_m, CHAR_n, CHAR_p, CHAR_q, CHAR_s @@ -30,9 +33,9 @@ static const u8 sWaldaLettersTable[] = enum { - PHRASE_GIVEN_NEW, + PHRASE_CHANGED, PHRASE_NO_CHANGE, - PHRASE_FIRST_ATTEMPT + PHRASE_EMPTY }; u16 TryBufferWaldaPhrase(void) @@ -56,13 +59,15 @@ static void CB2_HandleGivenWaldaPhrase(void) switch (gSpecialVar_0x8004) { - case PHRASE_FIRST_ATTEMPT: + case PHRASE_EMPTY: + // If saved phrase is also empty, set default phrase + // Otherwise keep saved phrase if (IsWaldaPhraseEmpty()) SetWaldaPhrase(gText_Peekaboo); else gSpecialVar_0x8004 = PHRASE_NO_CHANGE; break; - case PHRASE_GIVEN_NEW: + case PHRASE_CHANGED: SetWaldaPhrase(gStringVar2); break; case PHRASE_NO_CHANGE: @@ -76,12 +81,16 @@ static void CB2_HandleGivenWaldaPhrase(void) static u32 GetWaldaPhraseInputCase(u8 *inputPtr) { + // No input given if (inputPtr[0] == EOS) - return PHRASE_FIRST_ATTEMPT; + return PHRASE_EMPTY; + + // Input given is the same as saved phrase if (StringCompare(inputPtr, GetWaldaPhrasePtr()) == 0) return PHRASE_NO_CHANGE; - return PHRASE_GIVEN_NEW; + // Input is new phrase + return PHRASE_CHANGED; } u16 TryGetWallpaperWithWaldaPhrase(void) @@ -99,7 +108,7 @@ u16 TryGetWallpaperWithWaldaPhrase(void) } SetWaldaWallpaperLockedOrUnlocked(gSpecialVar_Result); - return (bool8)(gSpecialVar_Result); + return (bool8)gSpecialVar_Result; } static u8 GetLetterTableId(u8 letter) @@ -115,132 +124,155 @@ static u8 GetLetterTableId(u8 letter) return ARRAY_COUNT(sWaldaLettersTable); } +// Attempts to generate a wallpaper based on the given trainer id and phrase. +// Returns TRUE if successful and sets the wallpaper results to the given pointers. +// Returns FALSE if no wallpaper was generated (Walda "didn't like" the phrase). +// A 9-byte array is used to calculate the wallpaper's data. +// The elements of this array are defined below. +#define BG_COLOR_LO data[0] +#define BG_COLOR_HI data[1] +#define FG_COLOR_LO data[2] +#define FG_COLOR_HI data[3] +#define ICON_ID data[4] +#define PATTERN_ID data[5] +#define TID_CHECK_HI data[6] +#define TID_CHECK_LO data[7] +#define KEY data[8] +#define NUM_WALLPAPER_DATA_BYTES 9 +#define TO_BIT_OFFSET(i) (3 + (8 * (i))) // Convert a position in the phrase to a bit number into the wallpaper data array static bool32 TryCalculateWallpaper(u16* backgroundClr, u16 *foregroundClr, u8 *iconId, u8 *patternId, u16 trainerId, u8 *phrase) { s32 i; - ALIGNED(2) u8 array[12]; - u8 charsByTableId[16]; + ALIGNED(2) u8 data[NUM_WALLPAPER_DATA_BYTES]; + u8 charsByTableId[WALDA_PHRASE_LENGTH]; u16 *ptr; - if (StringLength(phrase) != 15) + // Reject any phrase that does not use the full length + if (StringLength(phrase) != WALDA_PHRASE_LENGTH) return FALSE; - for (i = 0; i < 15; i++) + // Reject any phrase that uses characters not in sWaldaLettersTable + for (i = 0; i < WALDA_PHRASE_LENGTH; i++) { charsByTableId[i] = GetLetterTableId(phrase[i]); if (charsByTableId[i] == ARRAY_COUNT(sWaldaLettersTable)) return FALSE; } - for (i = 0; i < 14; i++) - { - sub_81D9D5C(array, charsByTableId, (5 * i), 3 + (8 * i), 5); - } + // Use the given phrase to populate the wallpaper data array + // The data array is 9 bytes (72 bits) long, and each letter contributes to 5 bits of the array + // Because the phrase is 15 letters long there are 75 bits from the phrase to distribute + // Therefore the last letter contributes to the last 2 bits of the array, and the remaining 3 bits wrap around + for (i = 0; i < WALDA_PHRASE_LENGTH - 1; i++) + SetWallpaperDataFromLetter(data, charsByTableId, BITS_PER_LETTER * i, TO_BIT_OFFSET(i), BITS_PER_LETTER); - sub_81D9D5C(array, charsByTableId, 70, 115, 2); + // Do first 2 bits of the last letter + SetWallpaperDataFromLetter(data, charsByTableId, BITS_PER_LETTER * (WALDA_PHRASE_LENGTH - 1), TO_BIT_OFFSET(WALDA_PHRASE_LENGTH - 1), 2); - if (sub_81D9DAC(array, 0, 3) != sub_81D9DAC(charsByTableId, 117, 3)) + // Check the first 3 bits of the data array against the remaining 3 bits of the last letter + // Reject the phrase if they are not already the same + if (GetWallpaperDataBits(data, 0, 3) != GetWallpaperDataBits(charsByTableId, TO_BIT_OFFSET(WALDA_PHRASE_LENGTH - 1) + 2, 3)) return FALSE; - sub_81D9C90(array, 9, 21); - sub_81D9C90(array, 8, array[8] & 0xF); - sub_81D9CDC(array, 8, array[8] >> 4); + // Perform some relatively arbitrary changes to the wallpaper data using the last byte (KEY) + RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES, 21); + RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY & 0xF); + MaskWallpaperData(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY >> 4); - if (array[6] != (array[0] ^ array[2] ^ array[4] ^ (trainerId >> 8))) + // Reject the results of any phrase that are 'incompatible' with the player's trainer id + if (TID_CHECK_HI != (BG_COLOR_LO ^ FG_COLOR_LO ^ ICON_ID ^ (trainerId >> 8))) return FALSE; - - if (array[7] != (array[1] ^ array[3] ^ array[5] ^ (trainerId & 0xFF))) + if (TID_CHECK_LO != (BG_COLOR_HI ^ FG_COLOR_HI ^ PATTERN_ID ^ (trainerId & 0xFF))) return FALSE; - ptr = (u16*)(&array[0]); + // Successful phrase, save resulting wallpaper + ptr = (u16*) &BG_COLOR_LO; *backgroundClr = *ptr; - ptr = (u16*)(&array[2]); + ptr = (u16*) &FG_COLOR_LO; *foregroundClr = *ptr; - *iconId = array[4]; - *patternId = array[5]; + *iconId = ICON_ID; + *patternId = PATTERN_ID; return TRUE; } -static void sub_81D9C90(u8 *array, s32 arg1, s32 arg2) +static void RotateWallpaperDataLeft(u8 *data, s32 size, s32 numShifts) { s32 i, j; - u8 var1, var2; + u8 temp1, temp2; - for (i = arg2 - 1; i != -1; i--) + for (i = numShifts - 1; i != -1; i--) { - var1 = (array[0] & 0x80) >> 7; + temp1 = (data[0] & (1 << 7)) >> 7; - for (j = arg1 - 1; j >= 0; j--) + for (j = size - 1; j >= 0; j--) { - var2 = (array[j] & 0x80) >> 7; - array[j] <<= 1; - array[j] |= var1; - var1 = var2; + temp2 = (data[j] & (1 << 7)) >> 7; + data[j] <<= 1; + data[j] |= temp1; + temp1 = temp2; } } } -static void sub_81D9CDC(u8 *array, u32 loopCount, u8 arg2) +static void MaskWallpaperData(u8 *data, u32 size, u8 mask) { u32 i; - arg2 |= (arg2 << 4); + mask |= (mask << 4); - for (i = 0; i < loopCount; i++) - { - array[i] ^= arg2; - } + for (i = 0; i < size; i++) + data[i] ^= mask; } -static bool8 sub_81D9D0C(u8 *array, u32 arg1) +static bool8 GetWallpaperDataBit(u8 *data, u32 bitNum) { - u32 arrayId = arg1 >> 3; - u32 bits = 0x80 >> (7 & arg1); + u32 i = bitNum / 8; + u32 flag = (1 << 7) >> (bitNum % 8); - return ((array[arrayId] & bits) != 0); + return (data[i] & flag) != 0; } -static void sub_81D9D28(u8 *array, u32 arg1) +static void SetWallpaperDataBit(u8 *data, u32 bitNum) { - u32 arrayId = arg1 >> 3; - u8 bits = 0x80 >> (7 & arg1); + u32 i = bitNum / 8; + u8 flag = (1 << 7) >> (bitNum % 8); - array[arrayId] |= bits; + data[i] |= flag; } -static void sub_81D9D40(u8 *array, u32 arg1) +static void ClearWallpaperDataBit(u8 *data, u32 bitNum) { - u32 arrayId = arg1 >> 3; - u8 bits = ~(0x80 >> (7 & arg1)); + u32 i = bitNum / 8; + u8 mask = ~((1 << 7) >> (bitNum % 8)); - array[arrayId] &= bits; + data[i] &= mask; } -static void sub_81D9D5C(u8 *array, u8 *letterTableIds, u32 arg2, u32 arg3, u32 loopCount) +static void SetWallpaperDataFromLetter(u8 *data, u8 *letterTableIds, u32 setOffset, u32 getOffset, u32 numBits) { u32 i; - for (i = 0; i < loopCount; i++) + for (i = 0; i < numBits; i++) { - if (sub_81D9D0C(letterTableIds, arg3 + i)) - sub_81D9D28(array, arg2 + i); + if (GetWallpaperDataBit(letterTableIds, getOffset + i)) + SetWallpaperDataBit(data, setOffset + i); else - sub_81D9D40(array, arg2 + i); + ClearWallpaperDataBit(data, setOffset + i); } } -static u32 sub_81D9DAC(u8 *array, u32 arg1, u32 loopCount) +static u32 GetWallpaperDataBits(u8 *data, u32 offset, u32 numBits) { - u32 ret, i; + u32 bits, i; - for (ret = 0, i = 0; i < loopCount; i++) + for (bits = 0, i = 0; i < numBits; i++) { - ret <<= 1; - ret |= sub_81D9D0C(array, arg1 + i); + bits <<= 1; + bits |= GetWallpaperDataBit(data, offset + i); } - return ret; + return bits; } From e6999653323a4a7a424e9d7d39fd3168dd84b355 Mon Sep 17 00:00:00 2001 From: Pokestia Date: Wed, 29 Sep 2021 17:45:39 +0200 Subject: [PATCH 273/762] Use compact weather macros --- data/battle_scripts_1.s | 2 +- src/battle_util.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 30ca1b22016c..7a65573e6b58 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1901,7 +1901,7 @@ BattleScript_EffectStomp:: BattleScript_EffectSolarbeam:: jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn - jumpifhalfword CMP_COMMON_BITS, gBattleWeather, WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT, BattleScript_SolarbeamOnFirstTurn + jumpifhalfword CMP_COMMON_BITS, gBattleWeather, WEATHER_SUN_ANY, BattleScript_SolarbeamOnFirstTurn BattleScript_SolarbeamDecideTurn:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn diff --git a/src/battle_util.c b/src/battle_util.c index 62f7897c6744..fa85151b3aed 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2491,7 +2491,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case WEATHER_SANDSTORM: if (!(gBattleWeather & WEATHER_SANDSTORM_ANY)) { - gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY); + gBattleWeather = WEATHER_SANDSTORM_ANY; gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES; gBattleScripting.battler = battler; effect++; @@ -2500,7 +2500,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case WEATHER_DROUGHT: if (!(gBattleWeather & WEATHER_SUN_ANY)) { - gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY); + gBattleWeather = WEATHER_SUN_ANY; gBattleScripting.animArg1 = B_ANIM_SUN_CONTINUES; gBattleScripting.battler = battler; effect++; @@ -2526,7 +2526,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITY_SAND_STREAM: if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT)) { - gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY); + gBattleWeather = WEATHER_SANDSTORM_ANY; BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates); gBattleScripting.battler = battler; effect++; @@ -2535,7 +2535,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITY_DROUGHT: if (!(gBattleWeather & WEATHER_SUN_PERMANENT)) { - gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY); + gBattleWeather = WEATHER_SUN_ANY; BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates); gBattleScripting.battler = battler; effect++; From 38a4dea402aee2d038d81fa5bde60687caf9cfb6 Mon Sep 17 00:00:00 2001 From: Pokestia Date: Thu, 30 Sep 2021 12:08:20 +0200 Subject: [PATCH 274/762] Rename Battle Weather flags --- data/battle_scripts_1.s | 2 +- include/constants/battle.h | 26 +++++++------- src/battle_ai_script_commands.c | 8 ++--- src/battle_anim_effects_3.c | 8 ++--- src/battle_main.c | 8 ++--- src/battle_script_commands.c | 42 +++++++++++----------- src/battle_tv.c | 8 ++--- src/battle_util.c | 62 ++++++++++++++++----------------- src/pokemon.c | 6 ++-- 9 files changed, 85 insertions(+), 85 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 7a65573e6b58..951558234b05 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1901,7 +1901,7 @@ BattleScript_EffectStomp:: BattleScript_EffectSolarbeam:: jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn - jumpifhalfword CMP_COMMON_BITS, gBattleWeather, WEATHER_SUN_ANY, BattleScript_SolarbeamOnFirstTurn + jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN, BattleScript_SolarbeamOnFirstTurn BattleScript_SolarbeamDecideTurn:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn diff --git a/include/constants/battle.h b/include/constants/battle.h index a848146eb088..f1ce757e749d 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -210,19 +210,19 @@ #define MOVE_RESULT_NO_EFFECT (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED) // Battle Weather flags -#define WEATHER_RAIN_TEMPORARY (1 << 0) -#define WEATHER_RAIN_DOWNPOUR (1 << 1) // unused -#define WEATHER_RAIN_PERMANENT (1 << 2) -#define WEATHER_RAIN_ANY (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_DOWNPOUR | WEATHER_RAIN_PERMANENT) -#define WEATHER_SANDSTORM_TEMPORARY (1 << 3) -#define WEATHER_SANDSTORM_PERMANENT (1 << 4) -#define WEATHER_SANDSTORM_ANY (WEATHER_SANDSTORM_TEMPORARY | WEATHER_SANDSTORM_PERMANENT) -#define WEATHER_SUN_TEMPORARY (1 << 5) -#define WEATHER_SUN_PERMANENT (1 << 6) -#define WEATHER_SUN_ANY (WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT) -#define WEATHER_HAIL (1 << 7) -#define WEATHER_HAIL_ANY (WEATHER_HAIL) -#define WEATHER_ANY (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY) +#define B_WEATHER_RAIN_TEMPORARY (1 << 0) +#define B_WEATHER_RAIN_DOWNPOUR (1 << 1) // unused +#define B_WEATHER_RAIN_PERMANENT (1 << 2) +#define B_WEATHER_RAIN (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_DOWNPOUR | B_WEATHER_RAIN_PERMANENT) +#define B_WEATHER_SANDSTORM_TEMPORARY (1 << 3) +#define B_WEATHER_SANDSTORM_PERMANENT (1 << 4) +#define B_WEATHER_SANDSTORM (B_WEATHER_SANDSTORM_TEMPORARY | B_WEATHER_SANDSTORM_PERMANENT) +#define B_WEATHER_SUN_TEMPORARY (1 << 5) +#define B_WEATHER_SUN_PERMANENT (1 << 6) +#define B_WEATHER_SUN (B_WEATHER_SUN_TEMPORARY | B_WEATHER_SUN_PERMANENT) +#define B_WEATHER_HAIL_TEMPORARY (1 << 7) +#define B_WEATHER_HAIL (B_WEATHER_HAIL_TEMPORARY) +#define B_WEATHER_ANY (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_SUN | B_WEATHER_HAIL) // Move Effects #define MOVE_EFFECT_SLEEP 1 diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index bb615e4972c1..b1b62fd5b47f 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -1632,13 +1632,13 @@ static void Cmd_if_status_not_in_party(void) static void Cmd_get_weather(void) { - if (gBattleWeather & WEATHER_RAIN_ANY) + if (gBattleWeather & B_WEATHER_RAIN) AI_THINKING_STRUCT->funcResult = AI_WEATHER_RAIN; - if (gBattleWeather & WEATHER_SANDSTORM_ANY) + if (gBattleWeather & B_WEATHER_SANDSTORM) AI_THINKING_STRUCT->funcResult = AI_WEATHER_SANDSTORM; - if (gBattleWeather & WEATHER_SUN_ANY) + if (gBattleWeather & B_WEATHER_SUN) AI_THINKING_STRUCT->funcResult = AI_WEATHER_SUN; - if (gBattleWeather & WEATHER_HAIL_ANY) + if (gBattleWeather & B_WEATHER_HAIL) AI_THINKING_STRUCT->funcResult = AI_WEATHER_HAIL; gAIScriptPtr += 1; diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index f5c2c7ee6583..c827aaaa6395 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -5421,13 +5421,13 @@ static void AnimRecycle_Step(struct Sprite *sprite) void AnimTask_GetWeather(u8 taskId) { gBattleAnimArgs[ARG_RET_ID] = ANIM_WEATHER_NONE; - if (gWeatherMoveAnim & WEATHER_SUN_ANY) + if (gWeatherMoveAnim & B_WEATHER_SUN) gBattleAnimArgs[ARG_RET_ID] = ANIM_WEATHER_SUN; - else if (gWeatherMoveAnim & WEATHER_RAIN_ANY) + else if (gWeatherMoveAnim & B_WEATHER_RAIN) gBattleAnimArgs[ARG_RET_ID] = ANIM_WEATHER_RAIN; - else if (gWeatherMoveAnim & WEATHER_SANDSTORM_ANY) + else if (gWeatherMoveAnim & B_WEATHER_SANDSTORM) gBattleAnimArgs[ARG_RET_ID] = ANIM_WEATHER_SANDSTORM; - else if (gWeatherMoveAnim & WEATHER_HAIL_ANY) + else if (gWeatherMoveAnim & B_WEATHER_HAIL) gBattleAnimArgs[ARG_RET_ID] = ANIM_WEATHER_HAIL; DestroyAnimVisualTask(taskId); diff --git a/src/battle_main.c b/src/battle_main.c index f4e1c4d3de76..9fda5acbc466 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -4525,14 +4525,14 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves) if (WEATHER_HAS_EFFECT) { - if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY) - || (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY)) + if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN) + || (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN)) speedMultiplierBattler1 = 2; else speedMultiplierBattler1 = 1; - if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY) - || (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY)) + if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN) + || (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN)) speedMultiplierBattler2 = 2; else speedMultiplierBattler2 = 1; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e33e31796309..e7520b1ee7d8 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1079,7 +1079,7 @@ static bool8 AccuracyCalcHelper(u16 move) gHitMarker &= ~HITMARKER_IGNORE_UNDERWATER; - if ((WEATHER_HAS_EFFECT && (gBattleWeather & WEATHER_RAIN_ANY) && gBattleMoves[move].effect == EFFECT_THUNDER) + if ((WEATHER_HAS_EFFECT && (gBattleWeather & B_WEATHER_RAIN) && gBattleMoves[move].effect == EFFECT_THUNDER) || (gBattleMoves[move].effect == EFFECT_ALWAYS_HIT || gBattleMoves[move].effect == EFFECT_VITAL_THROW)) { JumpIfMoveFailed(7, move); @@ -1136,7 +1136,7 @@ static void Cmd_accuracycheck(void) moveAcc = gBattleMoves[move].accuracy; // check Thunder on sunny weather - if (WEATHER_HAS_EFFECT && gBattleWeather & WEATHER_SUN_ANY && gBattleMoves[move].effect == EFFECT_THUNDER) + if (WEATHER_HAS_EFFECT && gBattleWeather & B_WEATHER_SUN && gBattleMoves[move].effect == EFFECT_THUNDER) moveAcc = 50; calc = sAccuracyStageRatios[buff].dividend * moveAcc; @@ -1144,7 +1144,7 @@ static void Cmd_accuracycheck(void) if (gBattleMons[gBattlerAttacker].ability == ABILITY_COMPOUND_EYES) calc = (calc * 130) / 100; // 1.3 compound eyes boost - if (WEATHER_HAS_EFFECT && gBattleMons[gBattlerTarget].ability == ABILITY_SAND_VEIL && gBattleWeather & WEATHER_SANDSTORM_ANY) + if (WEATHER_HAS_EFFECT && gBattleMons[gBattlerTarget].ability == ABILITY_SAND_VEIL && gBattleWeather & B_WEATHER_SANDSTORM) calc = (calc * 80) / 100; // 1.2 sand veil loss if (gBattleMons[gBattlerAttacker].ability == ABILITY_HUSTLE && IS_TYPE_PHYSICAL(type)) calc = (calc * 80) / 100; // 1.2 hustle loss @@ -2342,7 +2342,7 @@ void SetMoveEffect(bool8 primary, u8 certain) statusChanged = TRUE; break; case STATUS1_FREEZE: - if (WEATHER_HAS_EFFECT && gBattleWeather & WEATHER_SUN_ANY) + if (WEATHER_HAS_EFFECT && gBattleWeather & B_WEATHER_SUN) noSunCanFreeze = FALSE; if (IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_ICE)) break; @@ -6617,14 +6617,14 @@ static void Cmd_trymirrormove(void) static void Cmd_setrain(void) { - if (gBattleWeather & WEATHER_RAIN_ANY) + if (gBattleWeather & B_WEATHER_RAIN) { gMoveResultFlags |= MOVE_RESULT_MISSED; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { - gBattleWeather = WEATHER_RAIN_TEMPORARY; + gBattleWeather = B_WEATHER_RAIN_TEMPORARY; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_RAIN; gWishFutureKnock.weatherDuration = 5; } @@ -7481,14 +7481,14 @@ static void Cmd_damagetohalftargethp(void) // super fang static void Cmd_setsandstorm(void) { - if (gBattleWeather & WEATHER_SANDSTORM_ANY) + if (gBattleWeather & B_WEATHER_SANDSTORM) { gMoveResultFlags |= MOVE_RESULT_MISSED; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { - gBattleWeather = WEATHER_SANDSTORM_TEMPORARY; + gBattleWeather = B_WEATHER_SANDSTORM_TEMPORARY; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_SANDSTORM; gWishFutureKnock.weatherDuration = 5; } @@ -7499,7 +7499,7 @@ static void Cmd_weatherdamage(void) { if (WEATHER_HAS_EFFECT) { - if (gBattleWeather & WEATHER_SANDSTORM_ANY) + if (gBattleWeather & B_WEATHER_SANDSTORM) { if (gBattleMons[gBattlerAttacker].type1 != TYPE_ROCK && gBattleMons[gBattlerAttacker].type1 != TYPE_STEEL @@ -7520,7 +7520,7 @@ static void Cmd_weatherdamage(void) gBattleMoveDamage = 0; } } - if (gBattleWeather & WEATHER_HAIL_ANY) + if (gBattleWeather & B_WEATHER_HAIL) { if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, TYPE_ICE) && !(gStatuses3[gBattlerAttacker] & STATUS3_UNDERGROUND) @@ -8104,7 +8104,7 @@ static u8 AttacksThisTurn(u8 battlerId, u16 move) // Note: returns 1 if it's a c { // first argument is unused if (gBattleMoves[move].effect == EFFECT_SOLARBEAM - && (gBattleWeather & WEATHER_SUN_ANY)) + && (gBattleWeather & B_WEATHER_SUN)) return 2; if (gBattleMoves[move].effect == EFFECT_SKULL_BASH @@ -8638,14 +8638,14 @@ static void Cmd_jumpifnopursuitswitchdmg(void) static void Cmd_setsunny(void) { - if (gBattleWeather & WEATHER_SUN_ANY) + if (gBattleWeather & B_WEATHER_SUN) { gMoveResultFlags |= MOVE_RESULT_MISSED; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { - gBattleWeather = WEATHER_SUN_TEMPORARY; + gBattleWeather = B_WEATHER_SUN_TEMPORARY; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_SUNLIGHT; gWishFutureKnock.weatherDuration = 5; } @@ -8739,7 +8739,7 @@ static void Cmd_recoverbasedonsunlight(void) { if (gBattleWeather == 0 || !WEATHER_HAS_EFFECT) gBattleMoveDamage = gBattleMons[gBattlerAttacker].maxHP / 2; - else if (gBattleWeather & WEATHER_SUN_ANY) + else if (gBattleWeather & B_WEATHER_SUN) gBattleMoveDamage = 20 * gBattleMons[gBattlerAttacker].maxHP / 30; else // not sunny weather gBattleMoveDamage = gBattleMons[gBattlerAttacker].maxHP / 4; @@ -8920,14 +8920,14 @@ static void Cmd_setminimize(void) static void Cmd_sethail(void) { - if (gBattleWeather & WEATHER_HAIL_ANY) + if (gBattleWeather & B_WEATHER_HAIL) { gMoveResultFlags |= MOVE_RESULT_MISSED; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WEATHER_FAILED; } else { - gBattleWeather = WEATHER_HAIL; + gBattleWeather = B_WEATHER_HAIL_TEMPORARY; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STARTED_HAIL; gWishFutureKnock.weatherDuration = 5; } @@ -9640,15 +9640,15 @@ static void Cmd_setweatherballtype(void) { if (WEATHER_HAS_EFFECT) { - if (gBattleWeather & WEATHER_ANY) + if (gBattleWeather & B_WEATHER_ANY) gBattleScripting.dmgMultiplier = 2; - if (gBattleWeather & WEATHER_RAIN_ANY) + if (gBattleWeather & B_WEATHER_RAIN) *(&gBattleStruct->dynamicMoveType) = TYPE_WATER | 0x80; - else if (gBattleWeather & WEATHER_SANDSTORM_ANY) + else if (gBattleWeather & B_WEATHER_SANDSTORM) *(&gBattleStruct->dynamicMoveType) = TYPE_ROCK | 0x80; - else if (gBattleWeather & WEATHER_SUN_ANY) + else if (gBattleWeather & B_WEATHER_SUN) *(&gBattleStruct->dynamicMoveType) = TYPE_FIRE | 0x80; - else if (gBattleWeather & WEATHER_HAIL_ANY) + else if (gBattleWeather & B_WEATHER_HAIL) *(&gBattleStruct->dynamicMoveType) = TYPE_ICE | 0x80; else *(&gBattleStruct->dynamicMoveType) = TYPE_NORMAL | 0x80; diff --git a/src/battle_tv.c b/src/battle_tv.c index 2c6c1b0a3403..ffdadb697f3a 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -1593,12 +1593,12 @@ u8 GetBattlerMoveSlotId(u8 battlerId, u16 moveId) static void AddPointsBasedOnWeather(u16 weatherFlags, u16 moveId, u8 moveSlot) { - if (weatherFlags & WEATHER_RAIN_ANY) + if (weatherFlags & B_WEATHER_RAIN) AddMovePoints(PTS_RAIN, moveId, moveSlot, 0); - else if (weatherFlags & WEATHER_SUN_ANY) + else if (weatherFlags & B_WEATHER_SUN) AddMovePoints(PTS_SUN, moveId, moveSlot, 0); - else if (weatherFlags & WEATHER_SANDSTORM_ANY) + else if (weatherFlags & B_WEATHER_SANDSTORM) AddMovePoints(PTS_SANDSTORM, moveId, moveSlot, 0); - else if (weatherFlags & WEATHER_HAIL_ANY) + else if (weatherFlags & B_WEATHER_HAIL) AddMovePoints(PTS_HAIL, moveId, moveSlot, 0); } diff --git a/src/battle_util.c b/src/battle_util.c index fa85151b3aed..8617134dc9b2 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1320,22 +1320,22 @@ u8 DoFieldEndTurnEffects(void) } break; case ENDTURN_RAIN: - if (gBattleWeather & WEATHER_RAIN_ANY) + if (gBattleWeather & B_WEATHER_RAIN) { - if (!(gBattleWeather & WEATHER_RAIN_PERMANENT)) + if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT)) { if (--gWishFutureKnock.weatherDuration == 0) { - gBattleWeather &= ~WEATHER_RAIN_TEMPORARY; - gBattleWeather &= ~WEATHER_RAIN_DOWNPOUR; + gBattleWeather &= ~B_WEATHER_RAIN_TEMPORARY; + gBattleWeather &= ~B_WEATHER_RAIN_DOWNPOUR; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_STOPPED; } - else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR) + 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 & WEATHER_RAIN_DOWNPOUR) + else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOWNPOUR_CONTINUES; } @@ -1350,11 +1350,11 @@ u8 DoFieldEndTurnEffects(void) gBattleStruct->turnCountersTracker++; break; case ENDTURN_SANDSTORM: - if (gBattleWeather & WEATHER_SANDSTORM_ANY) + if (gBattleWeather & B_WEATHER_SANDSTORM) { - if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) + if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) { - gBattleWeather &= ~WEATHER_SANDSTORM_TEMPORARY; + gBattleWeather &= ~B_WEATHER_SANDSTORM_TEMPORARY; gBattlescriptCurrInstr = BattleScript_SandStormHailEnds; } else @@ -1370,11 +1370,11 @@ u8 DoFieldEndTurnEffects(void) gBattleStruct->turnCountersTracker++; break; case ENDTURN_SUN: - if (gBattleWeather & WEATHER_SUN_ANY) + if (gBattleWeather & B_WEATHER_SUN) { - if (!(gBattleWeather & WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) + if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) { - gBattleWeather &= ~WEATHER_SUN_TEMPORARY; + gBattleWeather &= ~B_WEATHER_SUN_TEMPORARY; gBattlescriptCurrInstr = BattleScript_SunlightFaded; } else @@ -1388,11 +1388,11 @@ u8 DoFieldEndTurnEffects(void) gBattleStruct->turnCountersTracker++; break; case ENDTURN_HAIL: - if (gBattleWeather & WEATHER_HAIL_ANY) + if (gBattleWeather & B_WEATHER_HAIL) { if (--gWishFutureKnock.weatherDuration == 0) { - gBattleWeather &= ~WEATHER_HAIL; + gBattleWeather &= ~B_WEATHER_HAIL_TEMPORARY; gBattlescriptCurrInstr = BattleScript_SandStormHailEnds; } else @@ -2389,22 +2389,22 @@ u8 CastformDataTypeChange(u8 battler) } if (!WEATHER_HAS_EFFECT) return CASTFORM_NO_CHANGE; - if (!(gBattleWeather & (WEATHER_RAIN_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL)) + if (!(gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SUN | B_WEATHER_HAIL)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL)) { SET_BATTLER_TYPE(battler, TYPE_NORMAL); formChange = CASTFORM_TO_NORMAL; } - if (gBattleWeather & WEATHER_SUN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE)) + if (gBattleWeather & B_WEATHER_SUN && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE)) { SET_BATTLER_TYPE(battler, TYPE_FIRE); formChange = CASTFORM_TO_FIRE; } - if (gBattleWeather & WEATHER_RAIN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER)) + if (gBattleWeather & B_WEATHER_RAIN && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER)) { SET_BATTLER_TYPE(battler, TYPE_WATER); formChange = CASTFORM_TO_WATER; } - if (gBattleWeather & WEATHER_HAIL_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE)) + if (gBattleWeather & B_WEATHER_HAIL && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE)) { SET_BATTLER_TYPE(battler, TYPE_ICE); formChange = CASTFORM_TO_ICE; @@ -2480,27 +2480,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case WEATHER_RAIN: case WEATHER_RAIN_THUNDERSTORM: case WEATHER_DOWNPOUR: - if (!(gBattleWeather & WEATHER_RAIN_ANY)) + if (!(gBattleWeather & B_WEATHER_RAIN)) { - gBattleWeather = (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_PERMANENT); + gBattleWeather = (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_PERMANENT); gBattleScripting.animArg1 = B_ANIM_RAIN_CONTINUES; gBattleScripting.battler = battler; effect++; } break; case WEATHER_SANDSTORM: - if (!(gBattleWeather & WEATHER_SANDSTORM_ANY)) + if (!(gBattleWeather & B_WEATHER_SANDSTORM)) { - gBattleWeather = WEATHER_SANDSTORM_ANY; + gBattleWeather = B_WEATHER_SANDSTORM; gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES; gBattleScripting.battler = battler; effect++; } break; case WEATHER_DROUGHT: - if (!(gBattleWeather & WEATHER_SUN_ANY)) + if (!(gBattleWeather & B_WEATHER_SUN)) { - gBattleWeather = WEATHER_SUN_ANY; + gBattleWeather = B_WEATHER_SUN; gBattleScripting.animArg1 = B_ANIM_SUN_CONTINUES; gBattleScripting.battler = battler; effect++; @@ -2515,27 +2515,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA } break; case ABILITY_DRIZZLE: - if (!(gBattleWeather & WEATHER_RAIN_PERMANENT)) + if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT)) { - gBattleWeather = (WEATHER_RAIN_PERMANENT | WEATHER_RAIN_TEMPORARY); + gBattleWeather = (B_WEATHER_RAIN_PERMANENT | B_WEATHER_RAIN_TEMPORARY); BattleScriptPushCursorAndCallback(BattleScript_DrizzleActivates); gBattleScripting.battler = battler; effect++; } break; case ABILITY_SAND_STREAM: - if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT)) + if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT)) { - gBattleWeather = WEATHER_SANDSTORM_ANY; + gBattleWeather = B_WEATHER_SANDSTORM; BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates); gBattleScripting.battler = battler; effect++; } break; case ABILITY_DROUGHT: - if (!(gBattleWeather & WEATHER_SUN_PERMANENT)) + if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT)) { - gBattleWeather = WEATHER_SUN_ANY; + gBattleWeather = B_WEATHER_SUN; BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates); gBattleScripting.battler = battler; effect++; @@ -2590,7 +2590,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA switch (gLastUsedAbility) { case ABILITY_RAIN_DISH: - if (WEATHER_HAS_EFFECT && (gBattleWeather & WEATHER_RAIN_ANY) + if (WEATHER_HAS_EFFECT && (gBattleWeather & B_WEATHER_RAIN) && gBattleMons[battler].maxHP > gBattleMons[battler].hp) { gLastUsedAbility = ABILITY_RAIN_DISH; // why diff --git a/src/pokemon.c b/src/pokemon.c index 9e1e84aee7d0..aca68d53c3f4 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -3268,7 +3268,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de // are effects of weather negated with cloud nine or air lock if (WEATHER_HAS_EFFECT2) { - if (gBattleWeather & WEATHER_RAIN_TEMPORARY) + if (gBattleWeather & B_WEATHER_RAIN_TEMPORARY) { switch (type) { @@ -3282,11 +3282,11 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de } // any weather except sun weakens solar beam - if ((gBattleWeather & (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_HAIL_ANY)) && gCurrentMove == MOVE_SOLAR_BEAM) + if ((gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_HAIL)) && gCurrentMove == MOVE_SOLAR_BEAM) damage /= 2; // sunny - if (gBattleWeather & WEATHER_SUN_ANY) + if (gBattleWeather & B_WEATHER_SUN) { switch (type) { From 739e7d3c31f02ef4ea91b402c176f17a9bc27911 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 2 Oct 2021 23:47:59 -0400 Subject: [PATCH 275/762] Document summary screen sprite manager --- include/battle.h | 17 ++- include/data.h | 4 +- include/pokemon.h | 36 ++++-- src/battle_ai_switch_items.c | 1 + src/battle_anim_effects_3.c | 2 +- src/battle_gfx_sfx_util.c | 27 ++-- src/contest.c | 6 +- src/contest_painting.c | 14 +-- src/contest_util.c | 10 +- src/egg_hatch.c | 21 ++-- src/evolution_scene.c | 20 +-- src/main_menu.c | 7 +- src/pokeblock_feed.c | 4 +- src/pokemon.c | 234 +++++++++++++++++++---------------- src/pokemon_summary_screen.c | 36 ++++-- src/trade.c | 8 +- 16 files changed, 243 insertions(+), 204 deletions(-) diff --git a/include/battle.h b/include/battle.h index 14ecfbdd3431..e32e621cc47f 100644 --- a/include/battle.h +++ b/include/battle.h @@ -37,8 +37,6 @@ #define B_ACTION_NOTHING_FAINTED 13 // when choosing an action #define B_ACTION_NONE 0xFF -#define MAX_TRAINER_ITEMS 4 - // array entries for battle communication #define MULTIUSE_STATE 0 #define CURSOR_POSITION 1 @@ -594,16 +592,15 @@ struct BattleSpriteData struct MonSpritesGfx { void* firstDecompressed; // ptr to the decompressed sprite of the first pokemon - union - { - void* ptr[4]; - u8* byte[4]; + union { + void* ptr[MAX_BATTLERS_COUNT]; + u8* byte[MAX_BATTLERS_COUNT]; } sprites; - struct SpriteTemplate templates[4]; - struct SpriteFrameImage field_74[4][4]; - u8 field_F4[0x80]; + struct SpriteTemplate templates[MAX_BATTLERS_COUNT]; + struct SpriteFrameImage frameImages[MAX_BATTLERS_COUNT][4]; + u8 unusedArr[0x80]; u8 *barFontGfx; - void *field_178; + void *unusedPtr; u16 *buffer; }; diff --git a/include/data.h b/include/data.h index f94f55a8f369..374435cbab7f 100644 --- a/include/data.h +++ b/include/data.h @@ -5,6 +5,8 @@ #define SPECIES_SHINY_TAG 500 +#define MAX_TRAINER_ITEMS 4 + enum { BATTLER_AFFINE_NORMAL, BATTLER_AFFINE_EMERGE, @@ -66,7 +68,7 @@ struct Trainer /*0x02*/ u8 encounterMusic_gender; // last bit is gender /*0x03*/ u8 trainerPic; /*0x04*/ u8 trainerName[12]; - /*0x10*/ u16 items[4]; + /*0x10*/ u16 items[MAX_TRAINER_ITEMS]; /*0x18*/ bool8 doubleBattle; /*0x1C*/ u32 aiFlags; /*0x20*/ u8 partySize; diff --git a/include/pokemon.h b/include/pokemon.h index 3565bd9669f5..e656b2f040f1 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -122,20 +122,32 @@ struct Pokemon u16 spDefense; }; -struct Unknown_806F160_Struct +struct MonSpritesGfxManager { - u32 field_0_0:4; - u32 field_0_1:4; - u32 field_1:8; - u16 magic:8; - u32 field_3_0:4; - u32 field_3_1:4; - void *bytes; - u8 **byteArrays; + u32 numSprites:4; + u32 numSprites2:4; // Never read + u32 numFrames:8; + u32 active:8; + u32 dataSize:4; + u32 mode:4; // MON_SPR_GFX_MODE_* + void *spriteBuffer; + u8 **spritePointers; struct SpriteTemplate *templates; struct SpriteFrameImage *frameImages; }; +enum { + MON_SPR_GFX_MODE_NORMAL, + MON_SPR_GFX_MODE_BATTLE, + MON_SPR_GFX_MODE_FULL_PARTY, +}; + +enum { + MON_SPR_GFX_MANAGER_A, + MON_SPR_GFX_MANAGER_B, // Nothing ever sets up this manager. + MON_SPR_GFX_MANAGERS_COUNT +}; + struct BattlePokemon { /*0x00*/ u16 species; @@ -422,8 +434,8 @@ void HandleSetPokedexFlag(u16 nationalNum, u8 caseId, u32 personality); const u8 *GetTrainerClassNameFromId(u16 trainerId); const u8 *GetTrainerNameFromId(u16 trainerId); bool8 HasTwoFramesAnimation(u16 species); -struct Unknown_806F160_Struct *sub_806F2AC(u8 id, u8 arg1); -void sub_806F47C(u8 id); -u8 *sub_806F4F8(u8 id, u8 arg1); +struct MonSpritesGfxManager *CreateMonSpritesGfxManager(u8 managerId, u8 mode); +void DestroyMonSpritesGfxManager(u8 managerId); +u8 *MonSpritesGfxManager_GetSpritePtr(u8 managerId, u8 spriteNum); #endif // GUARD_POKEMON_H diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 426dc5d157c9..537005d30996 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2,6 +2,7 @@ #include "battle.h" #include "battle_anim.h" #include "battle_controllers.h" +#include "data.h" #include "pokemon.h" #include "random.h" #include "util.h" diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index c827aaaa6395..2a649dd8b2b5 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2286,7 +2286,7 @@ void AnimTask_TransformMon(u8 taskId) sub_80A6BFC(&animBg, gBattleAnimAttacker); if (IsContest()) - position = 0; + position = B_POSITION_PLAYER_LEFT; else position = GetBattlerPosition(gBattleAnimAttacker); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 77755775e353..da15c07a0728 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -924,13 +924,13 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform if (IsContest()) { - position = 0; + position = B_POSITION_PLAYER_LEFT; targetSpecies = gContestResources->moveAnim->targetSpecies; personalityValue = gContestResources->moveAnim->personality; otId = gContestResources->moveAnim->otId; HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[targetSpecies], - gMonSpritesGfxPtr->sprites.ptr[0], + gMonSpritesGfxPtr->sprites.ptr[position], targetSpecies, gContestResources->moveAnim->targetPersonality); } @@ -1001,7 +1001,7 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite) if (!loadMonSprite) { if (IsContest()) - position = 0; + position = B_POSITION_PLAYER_LEFT; else position = GetBattlerPosition(battlerId); @@ -1260,11 +1260,11 @@ void AllocateMonSpritesGfx(void) for (j = 0; j < 4; j++) { - gMonSpritesGfxPtr->field_74[i][j].data = gMonSpritesGfxPtr->sprites.ptr[i] + (j * MON_PIC_SIZE); - gMonSpritesGfxPtr->field_74[i][j].size = MON_PIC_SIZE; + gMonSpritesGfxPtr->frameImages[i][j].data = gMonSpritesGfxPtr->sprites.ptr[i] + (j * MON_PIC_SIZE); + gMonSpritesGfxPtr->frameImages[i][j].size = MON_PIC_SIZE; } - gMonSpritesGfxPtr->templates[i].images = gMonSpritesGfxPtr->field_74[i]; + gMonSpritesGfxPtr->templates[i].images = gMonSpritesGfxPtr->frameImages[i]; } gMonSpritesGfxPtr->barFontGfx = AllocZeroed(0x1000); @@ -1275,17 +1275,14 @@ void FreeMonSpritesGfx(void) if (gMonSpritesGfxPtr == NULL) return; - if (gMonSpritesGfxPtr->buffer != NULL) - FREE_AND_SET_NULL(gMonSpritesGfxPtr->buffer); - if (gMonSpritesGfxPtr->field_178 != NULL) - FREE_AND_SET_NULL(gMonSpritesGfxPtr->field_178); - + TRY_FREE_AND_SET_NULL(gMonSpritesGfxPtr->buffer); + TRY_FREE_AND_SET_NULL(gMonSpritesGfxPtr->unusedPtr); FREE_AND_SET_NULL(gMonSpritesGfxPtr->barFontGfx); FREE_AND_SET_NULL(gMonSpritesGfxPtr->firstDecompressed); - gMonSpritesGfxPtr->sprites.ptr[0] = NULL; - gMonSpritesGfxPtr->sprites.ptr[1] = NULL; - gMonSpritesGfxPtr->sprites.ptr[2] = NULL; - gMonSpritesGfxPtr->sprites.ptr[3] = NULL; + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT] = NULL; + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT] = NULL; + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_RIGHT] = NULL; + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT] = NULL; FREE_AND_SET_NULL(gMonSpritesGfxPtr); } diff --git a/src/contest.c b/src/contest.c index 68cad859d941..a87e8f28b9c1 100644 --- a/src/contest.c +++ b/src/contest.c @@ -3122,12 +3122,12 @@ static u8 CreateContestantSprite(u16 species, u32 otId, u32 personality, u32 ind species = SanitizeSpecies(species); if (index == gContestPlayerMonIndex) - HandleLoadSpecialPokePic_2(&gMonBackPicTable[species], gMonSpritesGfxPtr->sprites.ptr[0], species, personality); + HandleLoadSpecialPokePic_2(&gMonBackPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT], species, personality); else - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species], gMonSpritesGfxPtr->sprites.ptr[0], species, personality); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT], species, personality); LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), 0x120, 0x20); - SetMultiuseSpriteTemplateToPokemon(species, 0); + SetMultiuseSpriteTemplateToPokemon(species, B_POSITION_PLAYER_LEFT); spriteId = CreateSprite(&gMultiuseSpriteTemplate, 0x70, GetBattlerSpriteFinal_Y(2, species, FALSE), 30); gSprites[spriteId].oam.paletteNum = 2; diff --git a/src/contest_painting.c b/src/contest_painting.c index d4bc8ca04e0c..c591fc9efe8d 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -361,27 +361,27 @@ static void VBlankCB_ContestPainting(void) TransferPlttBuffer(); } -static void InitContestMonPixels(u16 species, u8 whichSprite) +static void InitContestMonPixels(u16 species, bool8 backPic) { const void *pal = GetMonSpritePalFromSpeciesAndPersonality(species, gContestPaintingWinner->trainerId, gContestPaintingWinner->personality); LZDecompressVram(pal, gContestPaintingMonPalette); - if (whichSprite == 0) + if (!backPic) { HandleLoadSpecialPokePic_DontHandleDeoxys( &gMonFrontPicTable[species], - gMonSpritesGfxPtr->sprites.ptr[1], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, gContestPaintingWinner->personality); - _InitContestMonPixels(gMonSpritesGfxPtr->sprites.ptr[1], gContestPaintingMonPalette, (void *)gContestMonPixels); + _InitContestMonPixels(gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], gContestPaintingMonPalette, (void *)gContestMonPixels); } else { HandleLoadSpecialPokePic_DontHandleDeoxys( &gMonBackPicTable[species], - gMonSpritesGfxPtr->sprites.ptr[0], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT], species, gContestPaintingWinner->personality); - _InitContestMonPixels(gMonSpritesGfxPtr->sprites.ptr[0], gContestPaintingMonPalette, (void *)gContestMonPixels); + _InitContestMonPixels(gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT], gContestPaintingMonPalette, (void *)gContestMonPixels); } } @@ -592,7 +592,7 @@ static void DoContestPaintingImageProcessing(u8 imageEffect) static void CreateContestPaintingPicture(u8 contestWinnerId, bool8 isForArtist) { AllocPaintingResources(); - InitContestMonPixels(gContestPaintingWinner->species, 0); + InitContestMonPixels(gContestPaintingWinner->species, FALSE); DoContestPaintingImageProcessing(GetImageEffectForContestWinner(contestWinnerId)); InitPaintingMonOamData(contestWinnerId); LoadContestPaintingFrame(contestWinnerId, isForArtist); diff --git a/src/contest_util.c b/src/contest_util.c index 66a666264c20..d3e1a600e807 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -893,7 +893,7 @@ static void Task_ShowWinnerMonBanner(u8 taskId) { HandleLoadSpecialPokePic_2( &gMonFrontPicTable[species], - gMonSpritesGfxPtr->sprites.ptr[1], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); } @@ -901,7 +901,7 @@ static void Task_ShowWinnerMonBanner(u8 taskId) { HandleLoadSpecialPokePic_DontHandleDeoxys( &gMonFrontPicTable[species], - gMonSpritesGfxPtr->sprites.ptr[1], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); } @@ -2581,13 +2581,13 @@ void ShowContestEntryMonPic(void) gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = species; if (gSpecialVar_0x8006 == gContestPlayerMonIndex) - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[1], species, personality); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); else - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[1], species, personality); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); palette = GetMonSpritePalStructFromOtIdPersonality(species, otId, personality); LoadCompressedSpritePalette(palette); - SetMultiuseSpriteTemplateToPokemon(species, 1); + SetMultiuseSpriteTemplateToPokemon(species, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.paletteTag = palette->tag; spriteId = CreateSprite(&gMultiuseSpriteTemplate, (left + 1) * 8 + 32, (top * 8) + 40, 0); diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 4b668881a949..b8ab1b91e0b1 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -411,21 +411,22 @@ bool8 CheckDaycareMonReceivedMail(void) return _CheckDaycareMonReceivedMail(&gSaveBlock1Ptr->daycare, gSpecialVar_0x8004); } -static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID, u16* speciesLoc) +static u8 EggHatchCreateMonSprite(u8 useAlt, u8 switchID, u8 pokeID, u16* speciesLoc) { - u8 r5 = 0; + u8 position = 0; u8 spriteID = 0; struct Pokemon* mon = NULL; - if (a0 == 0) + if (useAlt == FALSE) { mon = &gPlayerParty[pokeID]; - r5 = 1; + position = B_POSITION_OPPONENT_LEFT; } - if (a0 == 1) + if (useAlt == TRUE) { + // Alternate sprite allocation position. Never reached. mon = &gPlayerParty[pokeID]; - r5 = 3; + position = B_POSITION_OPPONENT_RIGHT; } switch (switchID) { @@ -434,14 +435,14 @@ static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID, u16* speciesLoc u16 species = GetMonData(mon, MON_DATA_SPECIES); u32 pid = GetMonData(mon, MON_DATA_PERSONALITY); HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], - gMonSpritesGfxPtr->sprites.ptr [(a0 * 2) + 1], + gMonSpritesGfxPtr->sprites.ptr[(useAlt * 2) + B_POSITION_OPPONENT_LEFT], species, pid); LoadCompressedSpritePalette(GetMonSpritePalStruct(mon)); *speciesLoc = species; } break; case 1: - SetMultiuseSpriteTemplateToPokemon(GetMonSpritePalStruct(mon)->tag, r5); + SetMultiuseSpriteTemplateToPokemon(GetMonSpritePalStruct(mon)->tag, position); spriteID = CreateSprite(&gMultiuseSpriteTemplate, 120, 75, 6); gSprites[spriteID].invisible = TRUE; gSprites[spriteID].callback = SpriteCallbackDummy; @@ -535,11 +536,11 @@ static void CB2_EggHatch_0(void) gMain.state++; break; case 5: - EggHatchCreateMonSprite(0, 0, sEggHatchData->eggPartyID, &sEggHatchData->species); + EggHatchCreateMonSprite(FALSE, 0, sEggHatchData->eggPartyID, &sEggHatchData->species); gMain.state++; break; case 6: - sEggHatchData->pokeSpriteID = EggHatchCreateMonSprite(0, 1, sEggHatchData->eggPartyID, &sEggHatchData->species); + sEggHatchData->pokeSpriteID = EggHatchCreateMonSprite(FALSE, 1, sEggHatchData->eggPartyID, &sEggHatchData->species); gMain.state++; break; case 7: diff --git a/src/evolution_scene.c b/src/evolution_scene.c index bd76993dc421..91834876ff56 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -260,12 +260,12 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u trainerId = GetMonData(mon, MON_DATA_OT_ID); personality = GetMonData(mon, MON_DATA_PERSONALITY); DecompressPicFromTable_2(&gMonFrontPicTable[currSpecies], - gMonSpritesGfxPtr->sprites.ptr[1], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], currSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(currSpecies, trainerId, personality); LoadCompressedPalette(pokePal->data, 0x110, 0x20); - SetMultiuseSpriteTemplateToPokemon(currSpecies, 1); + SetMultiuseSpriteTemplateToPokemon(currSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; sEvoStructPtr->preEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); @@ -275,12 +275,12 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u // postEvo sprite DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies], - gMonSpritesGfxPtr->sprites.ptr[3], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); LoadCompressedPalette(pokePal->data, 0x120, 0x20); - SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, 3); + SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); gSprites[ID].callback = SpriteCallbackDummy_2; @@ -352,13 +352,13 @@ static void CB2_EvolutionSceneLoadGraphics(void) gReservedSpritePaletteCount = 4; DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies], - gMonSpritesGfxPtr->sprites.ptr[3], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); LoadCompressedPalette(pokePal->data, 0x120, 0x20); - SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, 3); + SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); @@ -424,7 +424,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) u32 trainerId = GetMonData(mon, MON_DATA_OT_ID); u32 personality = GetMonData(mon, MON_DATA_PERSONALITY); DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies], - gMonSpritesGfxPtr->sprites.ptr[3], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); LoadCompressedPalette(pokePal->data, 0x120, 0x20); @@ -435,7 +435,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) { u8 ID; - SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, 1); + SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); @@ -488,13 +488,13 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit sEvoStructPtr->preEvoSpriteId = preEvoSpriteId; DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies], - gMonSpritesGfxPtr->sprites.ptr[1], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); LoadCompressedPalette(pokePal->data, 0x120, 0x20); - SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, 1); + SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); diff --git a/src/main_menu.c b/src/main_menu.c index a60cf1a2835e..f6dff3d44570 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -161,10 +161,7 @@ * - Destroys itself when done. */ -// These two defines are used with the sCurrItemAndOptionsMenuCheck, -// to distinguish between its two parts. -#define OPTION_MENU_FLAG 0x8000 -#define CURRENT_ITEM_MASK 0x7FFF +#define OPTION_MENU_FLAG (1 << 15) // Static type declarations @@ -685,7 +682,7 @@ static void Task_MainMenuCheckSaveFile(u8 taskId) break; } } - sCurrItemAndOptionMenuCheck &= CURRENT_ITEM_MASK; // turn off the "returning from options menu" flag + sCurrItemAndOptionMenuCheck &= ~OPTION_MENU_FLAG; // turn off the "returning from options menu" flag tCurrItem = sCurrItemAndOptionMenuCheck; tItemCount = tMenuType + 2; } diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index b123e6031828..4eb60f3d04b5 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -731,7 +731,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) // Load mon gfx species = GetMonData(mon, MON_DATA_SPECIES2); personality = GetMonData(mon, MON_DATA_PERSONALITY); - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[1], species, personality); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); sPokeblockFeed->loadGfxState++; break; case 1: @@ -742,7 +742,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) palette = GetMonSpritePalStructFromOtIdPersonality(species, trainerId, personality); LoadCompressedSpritePalette(palette); - SetMultiuseSpriteTemplateToPokemon(palette->tag, 1); + SetMultiuseSpriteTemplateToPokemon(palette->tag, B_POSITION_OPPONENT_LEFT); sPokeblockFeed->loadGfxState++; break; case 2: diff --git a/src/pokemon.c b/src/pokemon.c index aca68d53c3f4..dc53da88c8a7 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -69,7 +69,7 @@ EWRAM_DATA u8 gEnemyPartyCount = 0; EWRAM_DATA struct Pokemon gPlayerParty[PARTY_SIZE] = {0}; EWRAM_DATA struct Pokemon gEnemyParty[PARTY_SIZE] = {0}; EWRAM_DATA struct SpriteTemplate gMultiuseSpriteTemplate = {0}; -EWRAM_DATA struct Unknown_806F160_Struct *gUnknown_020249B4[2] = {NULL}; +EWRAM_DATA static struct MonSpritesGfxManager *sMonSpritesGfxManagers[MON_SPR_GFX_MANAGERS_COUNT] = {NULL}; // const rom data #include "data/battle_moves.h" @@ -2084,7 +2084,7 @@ static const struct SpeciesItem sAlteringCaveWildMonHeldItems[] = {SPECIES_SMEARGLE, ITEM_SALAC_BERRY}, }; -static const struct OamData sOamData_8329F20 = +static const struct OamData sOamData_64x64 = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -2101,11 +2101,11 @@ static const struct OamData sOamData_8329F20 = .affineParam = 0 }; -static const struct SpriteTemplate gUnknown_08329F28 = +static const struct SpriteTemplate sSpriteTemplate_64x64 = { .tileTag = TAG_NONE, .paletteTag = TAG_NONE, - .oam = &sOamData_8329F20, + .oam = &sOamData_64x64, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -3425,10 +3425,10 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition) { if (gMonSpritesGfxPtr != NULL) gMultiuseSpriteTemplate = gMonSpritesGfxPtr->templates[battlerPosition]; - else if (gUnknown_020249B4[0]) - gMultiuseSpriteTemplate = gUnknown_020249B4[0]->templates[battlerPosition]; - else if (gUnknown_020249B4[1]) - gMultiuseSpriteTemplate = gUnknown_020249B4[1]->templates[battlerPosition]; + else if (sMonSpritesGfxManagers[MON_SPR_GFX_MANAGER_A]) + gMultiuseSpriteTemplate = sMonSpritesGfxManagers[MON_SPR_GFX_MANAGER_A]->templates[battlerPosition]; + else if (sMonSpritesGfxManagers[MON_SPR_GFX_MANAGER_B]) + gMultiuseSpriteTemplate = sMonSpritesGfxManagers[MON_SPR_GFX_MANAGER_B]->templates[battlerPosition]; else gMultiuseSpriteTemplate = gBattlerSpriteTemplates[battlerPosition]; @@ -5655,11 +5655,13 @@ u16 SpeciesToCryId(u16 species) } \ } +// Same as DrawSpindaSpots but attempts to discern for itself whether or +// not it's the front pic. static void DrawSpindaSpotsUnused(u16 species, u32 personality, u8 *dest) { if (species == SPECIES_SPINDA - && dest != gMonSpritesGfxPtr->sprites.ptr[0] - && dest != gMonSpritesGfxPtr->sprites.ptr[2]) + && dest != gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT] + && dest != gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_RIGHT]) DRAW_SPINDA_SPOTS; } @@ -6788,9 +6790,9 @@ const u8 *GetTrainerNameFromId(u16 trainerId) bool8 HasTwoFramesAnimation(u16 species) { return (species != SPECIES_CASTFORM - && species != SPECIES_DEOXYS - && species != SPECIES_SPINDA - && species != SPECIES_UNOWN); + && species != SPECIES_DEOXYS + && species != SPECIES_SPINDA + && species != SPECIES_UNOWN); } static bool8 ShouldSkipFriendshipChange(void) @@ -6802,174 +6804,186 @@ static bool8 ShouldSkipFriendshipChange(void) return FALSE; } -static void sub_806F160(struct Unknown_806F160_Struct* structPtr) +// The below functions are for the 'MonSpritesGfxManager', a method of allocating +// space for PokĂ©mon sprites. These are only used for the summary screen PokĂ©mon +// sprites (unless gMonSpritesGfxPtr is in use), but were set up for more general use. +// Only the 'default' mode (MON_SPR_GFX_MODE_NORMAL) is used, which is set +// up to allocate 4 sprites using the battler sprite templates (gBattlerSpriteTemplates). +// MON_SPR_GFX_MODE_BATTLE is identical but never used. +// MON_SPR_GFX_MODE_FULL_PARTY is set up to allocate 7 sprites (party + trainer?) +// using a generic 64x64 template, and is also never used. + +// Between the unnecessarily large sizes below, a mistake allocating the spritePointers +// field, and the fact that ultimately only 1 of the 4 sprite positions is used, this +// system wastes a good deal of memory. + +#define ALLOC_FAIL_BUFFER (1 << 0) +#define ALLOC_FAIL_STRUCT (1 << 1) +#define GFX_MANAGER_ACTIVE 0xA3 // Arbitrary value +#define GFX_MANAGER_SPR_SIZE (MON_PIC_SIZE * 4) // * 4 is unnecessary, MON_PIC_SIZE is sufficient +#define GFX_MANAGER_NUM_FRAMES 4 // Only 2 frames are needed + +static void InitMonSpritesGfx_Battle(struct MonSpritesGfxManager* gfx) { u16 i, j; - for (i = 0; i < structPtr->field_0_0; i++) + for (i = 0; i < gfx->numSprites; i++) { - structPtr->templates[i] = gBattlerSpriteTemplates[i]; - for (j = 0; j < structPtr->field_1; j++) - { - structPtr->frameImages[i * structPtr->field_1 + j].data = &structPtr->byteArrays[i][j * 0x800]; - } - structPtr->templates[i].images = &structPtr->frameImages[i * structPtr->field_1]; + gfx->templates[i] = gBattlerSpriteTemplates[i]; + for (j = 0; j < gfx->numFrames; j++) + gfx->frameImages[i * gfx->numFrames + j].data = &gfx->spritePointers[i][j * MON_PIC_SIZE]; + + gfx->templates[i].images = &gfx->frameImages[i * gfx->numFrames]; } } -static void sub_806F1FC(struct Unknown_806F160_Struct* structPtr) +static void InitMonSpritesGfx_FullParty(struct MonSpritesGfxManager* gfx) { u16 i, j; - for (i = 0; i < structPtr->field_0_0; i++) + for (i = 0; i < gfx->numSprites; i++) { - structPtr->templates[i] = gUnknown_08329F28; - for (j = 0; j < structPtr->field_1; j++) - { - structPtr->frameImages[i * structPtr->field_0_0 + j].data = &structPtr->byteArrays[i][j * 0x800]; - } - structPtr->templates[i].images = &structPtr->frameImages[i * structPtr->field_0_0]; - structPtr->templates[i].anims = gAnims_MonPic; - structPtr->templates[i].paletteTag = i; + gfx->templates[i] = sSpriteTemplate_64x64; + for (j = 0; j < gfx->numFrames; j++) + gfx->frameImages[i * gfx->numSprites + j].data = &gfx->spritePointers[i][j * MON_PIC_SIZE]; + + gfx->templates[i].images = &gfx->frameImages[i * gfx->numSprites]; + gfx->templates[i].anims = gAnims_MonPic; + gfx->templates[i].paletteTag = i; } } -struct Unknown_806F160_Struct *sub_806F2AC(u8 id, u8 arg1) +struct MonSpritesGfxManager *CreateMonSpritesGfxManager(u8 managerId, u8 mode) { u8 i; - u8 flags; - struct Unknown_806F160_Struct *structPtr; + u8 failureFlags; + struct MonSpritesGfxManager *gfx; - flags = 0; - id %= 2; - structPtr = AllocZeroed(sizeof(*structPtr)); - if (structPtr == NULL) + failureFlags = 0; + managerId %= MON_SPR_GFX_MANAGERS_COUNT; + gfx = AllocZeroed(sizeof(*gfx)); + if (gfx == NULL) return NULL; - switch (arg1) + switch (mode) { - case 2: - structPtr->field_0_0 = 7; - structPtr->field_0_1 = 7; - structPtr->field_1 = 4; - structPtr->field_3_0 = 1; - structPtr->field_3_1 = 2; + case MON_SPR_GFX_MODE_FULL_PARTY: + gfx->numSprites = PARTY_SIZE + 1; + gfx->numSprites2 = PARTY_SIZE + 1; + gfx->numFrames = GFX_MANAGER_NUM_FRAMES; + gfx->dataSize = 1; + gfx->mode = MON_SPR_GFX_MODE_FULL_PARTY; break; - case 0: + // case MON_SPR_GFX_MODE_BATTLE: + case MON_SPR_GFX_MODE_NORMAL: default: - structPtr->field_0_0 = 4; - structPtr->field_0_1 = 4; - structPtr->field_1 = 4; - structPtr->field_3_0 = 1; - structPtr->field_3_1 = 0; + gfx->numSprites = MAX_BATTLERS_COUNT; + gfx->numSprites2 = MAX_BATTLERS_COUNT; + gfx->numFrames = GFX_MANAGER_NUM_FRAMES; + gfx->dataSize = 1; + gfx->mode = MON_SPR_GFX_MODE_NORMAL; break; } - structPtr->bytes = AllocZeroed(structPtr->field_3_0 * 0x800 * 4 * structPtr->field_0_0); - structPtr->byteArrays = AllocZeroed(structPtr->field_0_0 * 32); - if (structPtr->bytes == NULL || structPtr->byteArrays == NULL) + // Set up sprite / sprite pointer buffers + gfx->spriteBuffer = AllocZeroed(gfx->dataSize * GFX_MANAGER_SPR_SIZE * gfx->numSprites); + gfx->spritePointers = AllocZeroed(gfx->numSprites * 32); // ? Only * 4 is necessary, perhaps they were thinking bits. + if (gfx->spriteBuffer == NULL || gfx->spritePointers == NULL) { - flags |= 1; + failureFlags |= ALLOC_FAIL_BUFFER; } else { - for (i = 0; i < structPtr->field_0_0; i++) - structPtr->byteArrays[i] = structPtr->bytes + (structPtr->field_3_0 * (i << 13)); + for (i = 0; i < gfx->numSprites; i++) + gfx->spritePointers[i] = gfx->spriteBuffer + (gfx->dataSize * GFX_MANAGER_SPR_SIZE * i); } - structPtr->templates = AllocZeroed(sizeof(struct SpriteTemplate) * structPtr->field_0_0); - structPtr->frameImages = AllocZeroed(sizeof(struct SpriteFrameImage) * structPtr->field_0_0 * structPtr->field_1); - if (structPtr->templates == NULL || structPtr->frameImages == NULL) + // Set up sprite structs + gfx->templates = AllocZeroed(sizeof(struct SpriteTemplate) * gfx->numSprites); + gfx->frameImages = AllocZeroed(sizeof(struct SpriteFrameImage) * gfx->numSprites * gfx->numFrames); + if (gfx->templates == NULL || gfx->frameImages == NULL) { - flags |= 2; + failureFlags |= ALLOC_FAIL_STRUCT; } else { - for (i = 0; i < structPtr->field_1 * structPtr->field_0_0; i++) - structPtr->frameImages[i].size = 0x800; + for (i = 0; i < gfx->numFrames * gfx->numSprites; i++) + gfx->frameImages[i].size = MON_PIC_SIZE; - switch (structPtr->field_3_1) + switch (gfx->mode) { - case 2: - sub_806F1FC(structPtr); + case MON_SPR_GFX_MODE_FULL_PARTY: + InitMonSpritesGfx_FullParty(gfx); break; - case 0: - case 1: + case MON_SPR_GFX_MODE_NORMAL: + case MON_SPR_GFX_MODE_BATTLE: default: - sub_806F160(structPtr); + InitMonSpritesGfx_Battle(gfx); break; } } - if (flags & 2) + // If either of the allocations failed free their respective members + if (failureFlags & ALLOC_FAIL_STRUCT) { - if (structPtr->frameImages != NULL) - FREE_AND_SET_NULL(structPtr->frameImages); - if (structPtr->templates != NULL) - FREE_AND_SET_NULL(structPtr->templates); + TRY_FREE_AND_SET_NULL(gfx->frameImages); + TRY_FREE_AND_SET_NULL(gfx->templates); } - if (flags & 1) + if (failureFlags & ALLOC_FAIL_BUFFER) { - if (structPtr->byteArrays != NULL) - FREE_AND_SET_NULL(structPtr->byteArrays); - if (structPtr->bytes != NULL) - FREE_AND_SET_NULL(structPtr->bytes); + TRY_FREE_AND_SET_NULL(gfx->spritePointers); + TRY_FREE_AND_SET_NULL(gfx->spriteBuffer); } - if (flags) + if (failureFlags) { - memset(structPtr, 0, sizeof(*structPtr)); - Free(structPtr); + // Clear, something failed to allocate + memset(gfx, 0, sizeof(*gfx)); + Free(gfx); } else { - structPtr->magic = 0xA3; - gUnknown_020249B4[id] = structPtr; + gfx->active = GFX_MANAGER_ACTIVE; + sMonSpritesGfxManagers[managerId] = gfx; } - return gUnknown_020249B4[id]; + return sMonSpritesGfxManagers[managerId]; } -void sub_806F47C(u8 id) +void DestroyMonSpritesGfxManager(u8 managerId) { - struct Unknown_806F160_Struct *structPtr; + struct MonSpritesGfxManager *gfx; - id %= 2; - structPtr = gUnknown_020249B4[id]; - if (structPtr == NULL) + managerId %= MON_SPR_GFX_MANAGERS_COUNT; + gfx = sMonSpritesGfxManagers[managerId]; + if (gfx == NULL) return; - if (structPtr->magic != 0xA3) + if (gfx->active != GFX_MANAGER_ACTIVE) { - memset(structPtr, 0, sizeof(struct Unknown_806F160_Struct)); + memset(gfx, 0, sizeof(*gfx)); } else { - - if (structPtr->frameImages != NULL) - FREE_AND_SET_NULL(structPtr->frameImages); - if (structPtr->templates != NULL) - FREE_AND_SET_NULL(structPtr->templates); - if (structPtr->byteArrays != NULL) - FREE_AND_SET_NULL(structPtr->byteArrays); - if (structPtr->bytes != NULL) - FREE_AND_SET_NULL(structPtr->bytes); - - memset(structPtr, 0, sizeof(struct Unknown_806F160_Struct)); - Free(structPtr); + TRY_FREE_AND_SET_NULL(gfx->frameImages); + TRY_FREE_AND_SET_NULL(gfx->templates); + TRY_FREE_AND_SET_NULL(gfx->spritePointers); + TRY_FREE_AND_SET_NULL(gfx->spriteBuffer); + memset(gfx, 0, sizeof(*gfx)); + Free(gfx); } } -u8 *sub_806F4F8(u8 id, u8 arg1) +u8 *MonSpritesGfxManager_GetSpritePtr(u8 managerId, u8 spriteNum) { - struct Unknown_806F160_Struct *structPtr = gUnknown_020249B4[id % 2]; - if (structPtr->magic != 0xA3) + struct MonSpritesGfxManager *gfx = sMonSpritesGfxManagers[managerId % MON_SPR_GFX_MANAGERS_COUNT]; + if (gfx->active != GFX_MANAGER_ACTIVE) { return NULL; } else { - if (arg1 >= structPtr->field_0_0) - arg1 = 0; + if (spriteNum >= gfx->numSprites) + spriteNum = 0; - return structPtr->byteArrays[arg1]; + return gfx->spritePointers[spriteNum]; } } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index dc009bbff78f..5c4b19bc44a1 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1111,7 +1111,7 @@ void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, SummaryScreen_SetAnimDelayTaskId(TASK_NONE); if (gMonSpritesGfxPtr == NULL) - sub_806F2AC(0, 0); + CreateMonSpritesGfxManager(MON_SPR_GFX_MANAGER_A, MON_SPR_GFX_MODE_NORMAL); SetMainCallback2(CB2_InitSummaryScreen); } @@ -1500,7 +1500,7 @@ static void CloseSummaryScreen(u8 taskId) StopCryAndClearCrySongs(); m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); if (gMonSpritesGfxPtr == NULL) - sub_806F47C(0); + DestroyMonSpritesGfxManager(MON_SPR_GFX_MANAGER_A); FreeSummaryScreen(); DestroyTask(taskId); } @@ -3873,25 +3873,43 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) if (gMain.inBattle) { if (ShouldIgnoreDeoxysForm(3, sMonSummaryScreen->curMonIndex)) - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], + summary->species2, + summary->pid); else - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], + summary->species2, + summary->pid); } else { if (gMonSpritesGfxPtr != NULL) { if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], + summary->species2, + summary->pid); else - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[1], summary->species2, summary->pid); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], + summary->species2, + summary->pid); } else { if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], sub_806F4F8(0, 1), summary->species2, summary->pid); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], + MonSpritesGfxManager_GetSpritePtr(MON_SPR_GFX_MANAGER_A, B_POSITION_OPPONENT_LEFT), + summary->species2, + summary->pid); else - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], sub_806F4F8(0, 1), summary->species2, summary->pid); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], + MonSpritesGfxManager_GetSpritePtr(MON_SPR_GFX_MANAGER_A, B_POSITION_OPPONENT_LEFT), + summary->species2, + summary->pid); } } (*state)++; @@ -3899,7 +3917,7 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) case 1: pal = GetMonSpritePalStructFromOtIdPersonality(summary->species2, summary->OTID, summary->pid); LoadCompressedSpritePalette(pal); - SetMultiuseSpriteTemplateToPokemon(pal->tag, 1); + SetMultiuseSpriteTemplateToPokemon(pal->tag, B_POSITION_OPPONENT_LEFT); (*state)++; return 0xFF; } diff --git a/src/trade.c b/src/trade.c index 1ed0b93e91d1..526a9ac3913e 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2770,9 +2770,9 @@ static void LoadTradeMonPic(u8 whichParty, u8 state) personality = GetMonData(mon, MON_DATA_PERSONALITY); if (whichParty == TRADE_PLAYER) - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[1], species, personality); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], species, personality); else - HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[whichParty * 2 + 1], species, personality); + HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites.ptr[whichParty * 2 + B_POSITION_OPPONENT_LEFT], species, personality); LoadCompressedSpritePalette(GetMonSpritePalStruct(mon)); sTradeData->monSpecies[whichParty] = species; @@ -3767,7 +3767,7 @@ static bool8 AnimateTradeSequenceCable(void) case TS_STATE_POKEBALL_ARRIVE_WAIT: if (gSprites[sTradeData->bouncingPokeballSpriteId].callback == SpriteCallbackDummy) { - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], gMonSpritesGfxPtr->sprites.ptr[3], sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT], sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); sTradeData->state++; } break; @@ -4265,7 +4265,7 @@ static bool8 AnimateTradeSequenceWireless(void) if (gSprites[sTradeData->bouncingPokeballSpriteId].callback == SpriteCallbackDummy) { HandleLoadSpecialPokePic_2(&gMonFrontPicTable[sTradeData->monSpecies[TRADE_PARTNER]], - gMonSpritesGfxPtr->sprites.ptr[3], + gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_RIGHT], sTradeData->monSpecies[TRADE_PARTNER], sTradeData->monPersonalities[TRADE_PARTNER]); sTradeData->state++; From 6e62c057f5123b458ebc7d74e60c7ce8fb32e980 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 2 Oct 2021 23:48:12 -0400 Subject: [PATCH 276/762] Document remaining symbols in pokemon.c --- include/battle_util.h | 2 + include/constants/pokemon.h | 6 + include/constants/trainers.h | 3 +- include/pokemon.h | 19 +- src/battle_anim_throw.c | 2 +- src/battle_main.c | 2 +- src/battle_pyramid.c | 2 +- src/battle_tower.c | 4 +- src/battle_tv.c | 8 +- src/battle_util.c | 4 +- src/data/pokemon/trainer_class_lookups.h | 20 +- src/data/text/trainer_class_names.h | 2 +- src/data/trainers.h | 78 ++--- src/pokemon.c | 355 +++++++++++++---------- src/script_pokemon_util.c | 7 +- src/trainer_hill.c | 2 +- 16 files changed, 287 insertions(+), 229 deletions(-) diff --git a/include/battle_util.h b/include/battle_util.h index e4ef99e0bdc4..d4e2a23f8792 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -28,6 +28,8 @@ #define ABILITYEFFECT_COUNT_BATTLER_SIDE 0x11 #define ABILITYEFFECT_COUNT_ON_FIELD 0x12 #define ABILITYEFFECT_CHECK_ON_FIELD 0x13 +#define ABILITYEFFECT_MUD_SPORT 0xFD +#define ABILITYEFFECT_WATER_SPORT 0xFE #define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF #define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0)) diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 9bafa0a0bddf..827725fc2923 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -339,4 +339,10 @@ #define MON_PIC_SIZE (64 * 64 / 2) +#define BATTLE_ALIVE_EXCEPT_ACTIVE 0 +#define BATTLE_ALIVE_ATK_SIDE 1 +#define BATTLE_ALIVE_DEF_SIDE 2 + +#define SKIP_FRONT_ANIM (1 << 7) + #endif // GUARD_CONSTANTS_POKEMON_H diff --git a/include/constants/trainers.h b/include/constants/trainers.h index 3f22c7cef549..31bad25df8df 100644 --- a/include/constants/trainers.h +++ b/include/constants/trainers.h @@ -110,6 +110,7 @@ #define TRAINER_PIC_RS_BRENDAN 91 #define TRAINER_PIC_RS_MAY 92 +// The player back pics are assumed to alternate according to the gender values (MALE/FEMALE) #define TRAINER_BACK_PIC_BRENDAN 0 #define TRAINER_BACK_PIC_MAY 1 #define TRAINER_BACK_PIC_RED 2 @@ -334,7 +335,7 @@ #define TRAINER_CLASS_SAILOR 0x2f #define TRAINER_CLASS_COOLTRAINER_2 0x30 // Used for only one trainer. #define TRAINER_CLASS_MAGMA_ADMIN 0x31 -#define TRAINER_CLASS_PKMN_TRAINER_3 0x32 +#define TRAINER_CLASS_RIVAL 0x32 #define TRAINER_CLASS_BUG_CATCHER 0x33 #define TRAINER_CLASS_PKMN_RANGER 0x34 #define TRAINER_CLASS_MAGMA_LEADER 0x35 diff --git a/include/pokemon.h b/include/pokemon.h index e656b2f040f1..229898d711d8 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -259,6 +259,8 @@ struct Evolution | (((personality) & 0x00000003) >> 0) \ ) % NUM_UNOWN_FORMS) +#define GET_SHINY_VALUE(otId, personality)HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality) + extern u8 gPlayerPartyCount; extern struct Pokemon gPlayerParty[PARTY_SIZE]; extern u8 gEnemyPartyCount; @@ -273,8 +275,8 @@ extern const u8 *const gItemEffectTable[]; extern const u32 gExperienceTables[][MAX_LEVEL + 1]; extern const u16 *const gLevelUpLearnsets[]; extern const u8 gPPUpGetMask[]; -extern const u8 gPPUpSetMask[]; -extern const u8 gPPUpAddMask[]; +extern const u8 gPPUpClearMask[]; +extern const u8 gPPUpAddValues[]; extern const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2]; extern const u16 gLinkPlayerFacilityClasses[]; extern const struct SpriteTemplate gBattlerSpriteTemplates[]; @@ -293,7 +295,7 @@ void CreateMonWithIVsPersonality(struct Pokemon *mon, u16 species, u8 level, u32 void CreateMonWithIVsOTID(struct Pokemon *mon, u16 species, u8 level, u8 *ivs, u32 otId); void CreateMonWithEVSpread(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 evSpread); void CreateBattleTowerMon(struct Pokemon *mon, struct BattleTowerPokemon *src); -void CreateBattleTowerMon2(struct Pokemon *mon, struct BattleTowerPokemon *src, bool8 lvl50); +void CreateBattleTowerMon_HandleLevel(struct Pokemon *mon, struct BattleTowerPokemon *src, bool8 lvl50); 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); @@ -317,12 +319,7 @@ 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); - u8 CountAliveMonsInBattle(u8 caseId); -#define BATTLE_ALIVE_EXCEPT_ACTIVE 0 -#define BATTLE_ALIVE_ATK_SIDE 1 -#define BATTLE_ALIVE_DEF_SIDE 2 - u8 GetDefaultMoveTarget(u8 battlerId); u8 GetMonGender(struct Pokemon *mon); u8 GetBoxMonGender(struct BoxPokemon *boxMon); @@ -342,7 +339,6 @@ void SetMonData(struct Pokemon *mon, s32 field, const void *dataArg); void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg); void CopyMon(void *dest, void *src, size_t size); u8 GiveMonToPlayer(struct Pokemon *mon); -u8 SendMonToPC(struct Pokemon* mon); u8 CalculatePlayerPartyCount(void); u8 CalculateEnemyPartyCount(void); u8 GetMonsStateToDoubles(void); @@ -374,7 +370,6 @@ u16 SpeciesToNationalPokedexNum(u16 species); u16 SpeciesToHoennPokedexNum(u16 species); u16 HoennToNationalOrder(u16 hoennNum); u16 SpeciesToCryId(u16 species); -void sub_806D544(u16 species, u32 personality, u8 *dest); void DrawSpindaSpots(u16 species, u32 personality, u8 *dest, u8 a4); void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies); u8 GetPlayerFlankId(void); @@ -425,9 +420,7 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneFrame); void StopPokemonAnimationDelayTask(void); void BattleAnimateBackSprite(struct Sprite* sprite, u16 species); -u8 sub_806EF08(u8 arg0); -u8 sub_806EF84(u8 arg0, u8 arg1); -u16 sub_806EFF0(u16 arg0); +u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId); u16 FacilityClassToPicIndex(u16 facilityClass); u16 PlayerGenderToFrontTrainerPicId(u8 playerGender); void HandleSetPokedexFlag(u16 nationalNum, u8 caseId, u32 personality); diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 0a81a6ecab67..bf95a319c342 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -2227,7 +2227,7 @@ void TryShinyAnimation(u8 battler, struct Pokemon *mon) if (IsBattlerSpriteVisible(battler)) { - shinyValue = HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality); + shinyValue = GET_SHINY_VALUE(otId, personality); if (shinyValue < SHINY_ODDS) isShiny = TRUE; diff --git a/src/battle_main.c b/src/battle_main.c index 9fda5acbc466..8481a108a39a 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -501,7 +501,7 @@ const struct TrainerMoney gTrainerMoneyTable[] = {TRAINER_CLASS_TWINS, 3}, {TRAINER_CLASS_SAILOR, 8}, {TRAINER_CLASS_COLLECTOR, 15}, - {TRAINER_CLASS_PKMN_TRAINER_3, 15}, + {TRAINER_CLASS_RIVAL, 15}, {TRAINER_CLASS_PKMN_BREEDER, 10}, {TRAINER_CLASS_PKMN_RANGER, 12}, {TRAINER_CLASS_TEAM_MAGMA, 5}, diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 50efeecb4d40..169dc69c5d78 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -449,7 +449,7 @@ static const struct PyramidTrainerEncounterMusic sTrainerClassEncounterMusic[54] {TRAINER_CLASS_PKMN_BREEDER, TRAINER_ENCOUNTER_MUSIC_FEMALE}, {TRAINER_CLASS_COLLECTOR, TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS}, {TRAINER_CLASS_PKMN_RANGER, TRAINER_ENCOUNTER_MUSIC_COOL}, - {TRAINER_CLASS_PKMN_TRAINER_3, TRAINER_ENCOUNTER_MUSIC_MALE}, + {TRAINER_CLASS_RIVAL, TRAINER_ENCOUNTER_MUSIC_MALE}, {TRAINER_CLASS_YOUNG_COUPLE, TRAINER_ENCOUNTER_MUSIC_GIRL}, {TRAINER_CLASS_PSYCHIC, TRAINER_ENCOUNTER_MUSIC_INTENSE}, {TRAINER_CLASS_SR_AND_JR, TRAINER_ENCOUNTER_MUSIC_TWINS}, diff --git a/src/battle_tower.c b/src/battle_tower.c index 27defc1fa3e3..daf63d016cde 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1668,7 +1668,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) if (gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j].species != 0 && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j].level <= level) { - CreateBattleTowerMon2(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j], FALSE); + CreateBattleTowerMon_HandleLevel(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j], FALSE); } } return; @@ -3042,7 +3042,7 @@ static void FillPartnerParty(u16 trainerId) if (monData.nickname[0] == EXT_CTRL_CODE_BEGIN && monData.nickname[1] == EXT_CTRL_CODE_JPN) trainerName[5] = EOS; } - CreateBattleTowerMon2(&gPlayerParty[MULTI_PARTY_SIZE + i], &monData, TRUE); + CreateBattleTowerMon_HandleLevel(&gPlayerParty[MULTI_PARTY_SIZE + i], &monData, TRUE); SetMonData(&gPlayerParty[MULTI_PARTY_SIZE + i], MON_DATA_OT_NAME, trainerName); j = IsFrontierTrainerFemale(trainerId + TRAINER_RECORD_MIXING_FRIEND); SetMonData(&gPlayerParty[MULTI_PARTY_SIZE + i], MON_DATA_OT_GENDER, &j); diff --git a/src/battle_tv.c b/src/battle_tv.c index ffdadb697f3a..c78f1bff4439 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -1130,11 +1130,11 @@ void TryPutLinkBattleTvShowOnAir(void) if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { - if ((playerBestMonId < 3 && !GetLinkTrainerFlankId(gBattleScripting.multiplayerId)) - || (playerBestMonId >= 3 && GetLinkTrainerFlankId(gBattleScripting.multiplayerId))) + if ((playerBestMonId < MULTI_PARTY_SIZE && !GetLinkTrainerFlankId(gBattleScripting.multiplayerId)) + || (playerBestMonId >= MULTI_PARTY_SIZE && GetLinkTrainerFlankId(gBattleScripting.multiplayerId))) { - j = (opponentBestMonId < 3) ? 0 : 1; - PutBattleUpdateOnTheAir(sub_806EF84(j, gBattleScripting.multiplayerId), moveId, playerBestSpecies, opponentBestSpecies); + j = (opponentBestMonId < MULTI_PARTY_SIZE) ? FALSE : TRUE; + PutBattleUpdateOnTheAir(GetOpposingLinkMultiBattlerId(j, gBattleScripting.multiplayerId), moveId, playerBestSpecies, opponentBestSpecies); } } else diff --git a/src/battle_util.c b/src/battle_util.c index 8617134dc9b2..7b47bc994ae3 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3095,14 +3095,14 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITYEFFECT_FIELD_SPORT: // 14 switch (gLastUsedAbility) { - case 0xFD: + case ABILITYEFFECT_MUD_SPORT: for (i = 0; i < gBattlersCount; i++) { if (gStatuses3[i] & STATUS3_MUDSPORT) effect = i + 1; } break; - case 0xFE: + case ABILITYEFFECT_WATER_SPORT: for (i = 0; i < gBattlersCount; i++) { if (gStatuses3[i] & STATUS3_WATERSPORT) diff --git a/src/data/pokemon/trainer_class_lookups.h b/src/data/pokemon/trainer_class_lookups.h index 2edefb274cf3..909d3d7dcbb9 100644 --- a/src/data/pokemon/trainer_class_lookups.h +++ b/src/data/pokemon/trainer_class_lookups.h @@ -145,13 +145,13 @@ const u8 gFacilityClassToTrainerClass[] = [FACILITY_CLASS_SWIMMER_F] = TRAINER_CLASS_SWIMMER_F, [FACILITY_CLASS_TWINS] = TRAINER_CLASS_TWINS, [FACILITY_CLASS_SAILOR] = TRAINER_CLASS_SAILOR, - [FACILITY_CLASS_WALLY] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_BRENDAN] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_BRENDAN_2] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_BRENDAN_3] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_MAY] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_MAY_2] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_MAY_3] = TRAINER_CLASS_PKMN_TRAINER_3, + [FACILITY_CLASS_WALLY] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_BRENDAN] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_BRENDAN_2] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_BRENDAN_3] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_MAY] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_MAY_2] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_MAY_3] = TRAINER_CLASS_RIVAL, [FACILITY_CLASS_PKMN_BREEDER_M] = TRAINER_CLASS_PKMN_BREEDER, [FACILITY_CLASS_BUG_CATCHER] = TRAINER_CLASS_BUG_CATCHER, [FACILITY_CLASS_PKMN_RANGER_M] = TRAINER_CLASS_PKMN_RANGER, @@ -161,11 +161,11 @@ const u8 gFacilityClassToTrainerClass[] = [FACILITY_CLASS_YOUNG_COUPLE] = TRAINER_CLASS_YOUNG_COUPLE, [FACILITY_CLASS_OLD_COUPLE] = TRAINER_CLASS_OLD_COUPLE, [FACILITY_CLASS_SIS_AND_BRO] = TRAINER_CLASS_SIS_AND_BRO, - [FACILITY_CLASS_STEVEN] = TRAINER_CLASS_PKMN_TRAINER_3, + [FACILITY_CLASS_STEVEN] = TRAINER_CLASS_RIVAL, [FACILITY_CLASS_SALON_MAIDEN_ANABEL] = TRAINER_CLASS_SALON_MAIDEN, [FACILITY_CLASS_DOME_ACE_TUCKER] = TRAINER_CLASS_DOME_ACE, - [FACILITY_CLASS_RED] = TRAINER_CLASS_PKMN_TRAINER_3, - [FACILITY_CLASS_LEAF] = TRAINER_CLASS_PKMN_TRAINER_3, + [FACILITY_CLASS_RED] = TRAINER_CLASS_RIVAL, + [FACILITY_CLASS_LEAF] = TRAINER_CLASS_RIVAL, [FACILITY_CLASS_RS_BRENDAN] = TRAINER_CLASS_RS_PROTAG, [FACILITY_CLASS_RS_MAY] = TRAINER_CLASS_RS_PROTAG, }; diff --git a/src/data/text/trainer_class_names.h b/src/data/text/trainer_class_names.h index f012e877b63c..63cc356b236f 100644 --- a/src/data/text/trainer_class_names.h +++ b/src/data/text/trainer_class_names.h @@ -49,7 +49,7 @@ const u8 gTrainerClassNames[][13] = { [TRAINER_CLASS_SAILOR] = _("SAILOR"), [TRAINER_CLASS_COOLTRAINER_2] = _("COOLTRAINER"), [TRAINER_CLASS_MAGMA_ADMIN] = _("MAGMA ADMIN"), - [TRAINER_CLASS_PKMN_TRAINER_3] = _("{PKMN} TRAINER"), + [TRAINER_CLASS_RIVAL] = _("{PKMN} TRAINER"), [TRAINER_CLASS_BUG_CATCHER] = _("BUG CATCHER"), [TRAINER_CLASS_PKMN_RANGER] = _("{PKMN} RANGER"), [TRAINER_CLASS_MAGMA_LEADER] = _("MAGMA LEADER"), diff --git a/src/data/trainers.h b/src/data/trainers.h index 163a8296dbe8..01cf0259afaf 100644 --- a/src/data/trainers.h +++ b/src/data/trainers.h @@ -7268,7 +7268,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_VR_1] = { .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -7282,7 +7282,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_103_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7296,7 +7296,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_110_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7310,7 +7310,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_119_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7324,7 +7324,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_103_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7338,7 +7338,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_110_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7352,7 +7352,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_119_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7366,7 +7366,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_103_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7380,7 +7380,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_110_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7394,7 +7394,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_ROUTE_119_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -7408,7 +7408,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_103_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7422,7 +7422,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_110_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7436,7 +7436,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_119_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7450,7 +7450,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_103_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7464,7 +7464,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_110_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7478,7 +7478,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_119_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7492,7 +7492,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_103_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7506,7 +7506,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_110_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -7520,7 +7520,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_ROUTE_119_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -8290,7 +8290,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_RUSTBORO_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -8304,7 +8304,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_RUSTBORO_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -8388,7 +8388,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_RUSTBORO_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -8402,7 +8402,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_RUSTBORO_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -9186,7 +9186,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_MAUVILLE] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -9200,7 +9200,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_VR_2] = { .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -9214,7 +9214,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_VR_3] = { .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -9228,7 +9228,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_VR_4] = { .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -9242,7 +9242,7 @@ const struct Trainer gTrainers[] = { [TRAINER_WALLY_VR_5] = { .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, .trainerName = _("WALLY"), @@ -9256,7 +9256,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_LILYCOVE_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -9270,7 +9270,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_LILYCOVE_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -9284,7 +9284,7 @@ const struct Trainer gTrainers[] = { [TRAINER_BRENDAN_LILYCOVE_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, .trainerName = _("BRENDAN"), @@ -9298,7 +9298,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_LILYCOVE_MUDKIP] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -9312,7 +9312,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_LILYCOVE_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -9326,7 +9326,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_LILYCOVE_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -10754,7 +10754,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_RUSTBORO_TREECKO] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -10768,7 +10768,7 @@ const struct Trainer gTrainers[] = { [TRAINER_MAY_RUSTBORO_TORCHIC] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, .trainerName = _("MAY"), @@ -11258,7 +11258,7 @@ const struct Trainer gTrainers[] = { [TRAINER_STEVEN] = { .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_STEVEN, .trainerName = _("STEVEN"), @@ -11916,7 +11916,7 @@ const struct Trainer gTrainers[] = { [TRAINER_RED] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RED, .trainerName = _("RED"), @@ -11930,7 +11930,7 @@ const struct Trainer gTrainers[] = { [TRAINER_LEAF] = { .partyFlags = 0, - .trainerClass = TRAINER_CLASS_PKMN_TRAINER_3, + .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEAF, .trainerName = _("LEAF"), diff --git a/src/pokemon.c b/src/pokemon.c index dc53da88c8a7..62c4441217ae 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -52,7 +52,6 @@ struct SpeciesItem u16 item; }; -// this file's functions static u16 CalculateBoxMonChecksum(struct BoxPokemon *boxMon); static union PokemonSubstruct *GetSubstruct(struct BoxPokemon *boxMon, u32 personality, u8 substructType); static void EncryptBoxMon(struct BoxPokemon *boxMon); @@ -61,8 +60,8 @@ static void Task_PlayMapChosenOrBattleBGM(u8 taskId); static bool8 ShouldGetStatBadgeBoost(u16 flagId, u8 battlerId); static u16 GiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move); static bool8 ShouldSkipFriendshipChange(void); +static u8 SendMonToPC(struct Pokemon* mon); -// EWRAM vars EWRAM_DATA static u8 sLearningMoveTableID = 0; EWRAM_DATA u8 gPlayerPartyCount = 0; EWRAM_DATA u8 gEnemyPartyCount = 0; @@ -71,7 +70,6 @@ EWRAM_DATA struct Pokemon gEnemyParty[PARTY_SIZE] = {0}; EWRAM_DATA struct SpriteTemplate gMultiuseSpriteTemplate = {0}; EWRAM_DATA static struct MonSpritesGfxManager *sMonSpritesGfxManagers[MON_SPR_GFX_MANAGERS_COUNT] = {NULL}; -// const rom data #include "data/battle_moves.h" // Used in an unreferenced function in RS. @@ -93,7 +91,8 @@ static const struct CombinedMove sCombinedMoves[2] = #define SPECIES_TO_NATIONAL(name) [SPECIES_##name - 1] = NATIONAL_DEX_##name #define HOENN_TO_NATIONAL(name) [HOENN_DEX_##name - 1] = NATIONAL_DEX_##name -const u16 gSpeciesToHoennPokedexNum[] = // Assigns all species to the Hoenn Dex Index (Summary No. for Hoenn Dex) + // Assigns all species to the Hoenn Dex Index (Summary No. for Hoenn Dex) +static const u16 sSpeciesToHoennPokedexNum[NUM_SPECIES - 1] = { SPECIES_TO_HOENN(BULBASAUR), SPECIES_TO_HOENN(IVYSAUR), @@ -508,7 +507,8 @@ const u16 gSpeciesToHoennPokedexNum[] = // Assigns all species to the Hoenn Dex SPECIES_TO_HOENN(CHIMECHO), }; -const u16 gSpeciesToNationalPokedexNum[] = // Assigns all species to the National Dex Index (Summary No. for National Dex) + // Assigns all species to the National Dex Index (Summary No. for National Dex) +static const u16 sSpeciesToNationalPokedexNum[NUM_SPECIES - 1] = { SPECIES_TO_NATIONAL(BULBASAUR), SPECIES_TO_NATIONAL(IVYSAUR), @@ -923,7 +923,8 @@ const u16 gSpeciesToNationalPokedexNum[] = // Assigns all species to the Nationa SPECIES_TO_NATIONAL(CHIMECHO), }; -const u16 gHoennToNationalOrder[] = // Assigns Hoenn Dex PokĂ©mon (Using National Dex Index) + // Assigns all Hoenn Dex Indexes to a National Dex Index +static const u16 sHoennToNationalOrder[NUM_SPECIES - 1] = { HOENN_TO_NATIONAL(TREECKO), HOENN_TO_NATIONAL(GROVYLE), @@ -1389,7 +1390,7 @@ const s8 gNatureStatTable[NUM_NATURES][NUM_NATURE_STATS] = // SPECIES_NONE are ignored in the following two tables, so decrement before accessing these arrays to get the right result -static const u8 sMonFrontAnimIdsTable[] = +static const u8 sMonFrontAnimIdsTable[NUM_SPECIES - 1] = { [SPECIES_BULBASAUR - 1] = ANIM_V_JUMPS_H_JUMPS, [SPECIES_IVYSAUR - 1] = ANIM_V_STRETCH, @@ -1838,9 +1839,19 @@ static const u8 sMonAnimationDelayTable[NUM_SPECIES - 1] = [SPECIES_RAYQUAZA - 1] = 60, }; -const u8 gPPUpGetMask[] = {0x03, 0x0c, 0x30, 0xc0}; // Masks for getting PP Up count, also PP Max values -const u8 gPPUpSetMask[] = {0xfc, 0xf3, 0xcf, 0x3f}; // Masks for setting PP Up count -const u8 gPPUpAddMask[] = {0x01, 0x04, 0x10, 0x40}; // Values added to PP Up count +#define PP_UP_SHIFTS(val) val, (val) << 2, (val) << 4, (val) << 6 +#define PP_UP_SHIFTS_INV(val) (u8)~(val), (u8)~((val) << 2), (u8)~((val) << 4), (u8)~((val) << 6) + +// PP Up bonuses are stored for a PokĂ©mon as a single byte. +// There are 2 bits (a value 0-3) for each move slot that +// represent how many PP Ups have been applied. +// The following arrays take a move slot id and return: +// gPPUpGetMask - A mask to get the number of PP Ups applied to that move slot +// gPPUpClearMask - A mask to clear the number of PP Ups applied to that move slot +// gPPUpAddValues - A value to add to the PP Bonuses byte to apply 1 PP Up to that move slot +const u8 gPPUpGetMask[MAX_MON_MOVES] = {PP_UP_SHIFTS(3)}; +const u8 gPPUpClearMask[MAX_MON_MOVES] = {PP_UP_SHIFTS_INV(3)}; +const u8 gPPUpAddValues[MAX_MON_MOVES] = {PP_UP_SHIFTS(1)}; const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2] = { @@ -2028,10 +2039,23 @@ static const struct SpriteTemplate sTrainerBackSpriteTemplates[] = }, }; -static const u8 sSecretBaseFacilityClasses[2][5] = +#define NUM_SECRET_BASE_CLASSES 5 +static const u8 sSecretBaseFacilityClasses[GENDER_COUNT][NUM_SECRET_BASE_CLASSES] = { - {FACILITY_CLASS_YOUNGSTER, FACILITY_CLASS_BUG_CATCHER, FACILITY_CLASS_RICH_BOY, FACILITY_CLASS_CAMPER, FACILITY_CLASS_COOLTRAINER_M}, - {FACILITY_CLASS_LASS, FACILITY_CLASS_SCHOOL_KID_F, FACILITY_CLASS_LADY, FACILITY_CLASS_PICNICKER, FACILITY_CLASS_COOLTRAINER_F} + [MALE] = { + FACILITY_CLASS_YOUNGSTER, + FACILITY_CLASS_BUG_CATCHER, + FACILITY_CLASS_RICH_BOY, + FACILITY_CLASS_CAMPER, + FACILITY_CLASS_COOLTRAINER_M + }, + [FEMALE] = { + FACILITY_CLASS_LASS, + FACILITY_CLASS_SCHOOL_KID_F, + FACILITY_CLASS_LADY, + FACILITY_CLASS_PICNICKER, + FACILITY_CLASS_COOLTRAINER_F + } }; static const u8 sGetMonDataEVConstants[] = @@ -2112,7 +2136,6 @@ static const struct SpriteTemplate sSpriteTemplate_64x64 = .callback = SpriteCallbackDummy, }; -// code void ZeroBoxMonData(struct BoxPokemon *boxMon) { u8 *raw = (u8 *)boxMon; @@ -2135,7 +2158,7 @@ void ZeroMonData(struct Pokemon *mon) SetMonData(mon, MON_DATA_SPEED, &arg); SetMonData(mon, MON_DATA_SPATK, &arg); SetMonData(mon, MON_DATA_SPDEF, &arg); - arg = 255; + arg = MAIL_NONE; SetMonData(mon, MON_DATA_MAIL, &arg); } @@ -2155,12 +2178,12 @@ void ZeroEnemyPartyMons(void) void CreateMon(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 hasFixedPersonality, u32 fixedPersonality, u8 otIdType, u32 fixedOtId) { - u32 arg; + u32 mail; ZeroMonData(mon); CreateBoxMon(&mon->box, species, level, fixedIV, hasFixedPersonality, fixedPersonality, otIdType, fixedOtId); SetMonData(mon, MON_DATA_LEVEL, &level); - arg = 255; - SetMonData(mon, MON_DATA_MAIL, &arg); + mail = MAIL_NONE; + SetMonData(mon, MON_DATA_MAIL, &mail); CalculateMonStats(mon); } @@ -2180,21 +2203,22 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, SetBoxMonData(boxMon, MON_DATA_PERSONALITY, &personality); - //Determine original trainer ID - if (otIdType == OT_ID_RANDOM_NO_SHINY) //Pokemon cannot be shiny + // Determine original trainer ID + if (otIdType == OT_ID_RANDOM_NO_SHINY) { u32 shinyValue; do { + // Choose random OT IDs until one that results in a non-shiny PokĂ©mon value = Random32(); - shinyValue = HIHALF(value) ^ LOHALF(value) ^ HIHALF(personality) ^ LOHALF(personality); + shinyValue = GET_SHINY_VALUE(value, personality); } while (shinyValue < SHINY_ODDS); } - else if (otIdType == OT_ID_PRESET) //Pokemon has a preset OT ID + else if (otIdType == OT_ID_PRESET) { value = fixedOtId; } - else //Player is the OT + else // Player is the OT { value = gSaveBlock2Ptr->playerTrainerId[0] | (gSaveBlock2Ptr->playerTrainerId[1] << 8) @@ -2272,7 +2296,7 @@ void CreateMonWithNature(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, } while (nature != GetNatureFromPersonality(personality)); - CreateMon(mon, species, level, fixedIV, 1, personality, OT_ID_PLAYER_ID, 0); + CreateMon(mon, species, level, fixedIV, TRUE, personality, OT_ID_PLAYER_ID, 0); } void CreateMonWithGenderNatureLetter(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 gender, u8 nature, u8 unownLetter) @@ -2302,7 +2326,7 @@ void CreateMonWithGenderNatureLetter(struct Pokemon *mon, u16 species, u8 level, || gender != GetGenderFromSpeciesAndPersonality(species, personality)); } - CreateMon(mon, species, level, fixedIV, 1, personality, OT_ID_PLAYER_ID, 0); + CreateMon(mon, species, level, fixedIV, TRUE, personality, OT_ID_PLAYER_ID, 0); } // This is only used to create Wally's Ralts. @@ -2317,25 +2341,25 @@ void CreateMaleMon(struct Pokemon *mon, u16 species, u8 level) personality = Random32(); } while (GetGenderFromSpeciesAndPersonality(species, personality) != MON_MALE); - CreateMon(mon, species, level, USE_RANDOM_IVS, 1, personality, OT_ID_PRESET, otId); + CreateMon(mon, species, level, USE_RANDOM_IVS, TRUE, personality, OT_ID_PRESET, otId); } void CreateMonWithIVsPersonality(struct Pokemon *mon, u16 species, u8 level, u32 ivs, u32 personality) { - CreateMon(mon, species, level, 0, 1, personality, OT_ID_PLAYER_ID, 0); + CreateMon(mon, species, level, 0, TRUE, personality, OT_ID_PLAYER_ID, 0); SetMonData(mon, MON_DATA_IVS, &ivs); CalculateMonStats(mon); } void CreateMonWithIVsOTID(struct Pokemon *mon, u16 species, u8 level, u8 *ivs, u32 otId) { - CreateMon(mon, species, level, 0, 0, 0, OT_ID_PRESET, otId); - SetMonData(mon, MON_DATA_HP_IV, &ivs[0]); - SetMonData(mon, MON_DATA_ATK_IV, &ivs[1]); - SetMonData(mon, MON_DATA_DEF_IV, &ivs[2]); - SetMonData(mon, MON_DATA_SPEED_IV, &ivs[3]); - SetMonData(mon, MON_DATA_SPATK_IV, &ivs[4]); - SetMonData(mon, MON_DATA_SPDEF_IV, &ivs[5]); + CreateMon(mon, species, level, 0, FALSE, 0, OT_ID_PRESET, otId); + SetMonData(mon, MON_DATA_HP_IV, &ivs[STAT_HP]); + SetMonData(mon, MON_DATA_ATK_IV, &ivs[STAT_ATK]); + SetMonData(mon, MON_DATA_DEF_IV, &ivs[STAT_DEF]); + SetMonData(mon, MON_DATA_SPEED_IV, &ivs[STAT_SPEED]); + SetMonData(mon, MON_DATA_SPATK_IV, &ivs[STAT_SPATK]); + SetMonData(mon, MON_DATA_SPDEF_IV, &ivs[STAT_SPDEF]); CalculateMonStats(mon); } @@ -2346,7 +2370,7 @@ void CreateMonWithEVSpread(struct Pokemon *mon, u16 species, u8 level, u8 fixedI u16 evAmount; u8 evsBits; - CreateMon(mon, species, level, fixedIV, 0, 0, OT_ID_PLAYER_ID, 0); + CreateMon(mon, species, level, fixedIV, FALSE, 0, OT_ID_PLAYER_ID, 0); evsBits = evSpread; @@ -2378,7 +2402,7 @@ void CreateBattleTowerMon(struct Pokemon *mon, struct BattleTowerPokemon *src) u8 language; u8 value; - CreateMon(mon, src->species, src->level, 0, 1, src->personality, OT_ID_PRESET, src->otId); + CreateMon(mon, src->species, src->level, 0, TRUE, src->personality, OT_ID_PRESET, src->otId); for (i = 0; i < MAX_MON_MOVES; i++) SetMonMoveSlot(mon, src->moves[i], i); @@ -2425,7 +2449,7 @@ void CreateBattleTowerMon(struct Pokemon *mon, struct BattleTowerPokemon *src) CalculateMonStats(mon); } -void CreateBattleTowerMon2(struct Pokemon *mon, struct BattleTowerPokemon *src, bool8 lvl50) +void CreateBattleTowerMon_HandleLevel(struct Pokemon *mon, struct BattleTowerPokemon *src, bool8 lvl50) { s32 i; u8 nickname[30]; @@ -2440,7 +2464,7 @@ void CreateBattleTowerMon2(struct Pokemon *mon, struct BattleTowerPokemon *src, else level = src->level; - CreateMon(mon, src->species, level, 0, 1, src->personality, OT_ID_PRESET, src->otId); + CreateMon(mon, src->species, level, 0, TRUE, src->personality, OT_ID_PRESET, src->otId); for (i = 0; i < MAX_MON_MOVES; i++) SetMonMoveSlot(mon, src->moves[i], i); @@ -2737,7 +2761,7 @@ void CreateEventLegalEnemyMon(void) s32 itemId = gSpecialVar_0x8006; ZeroEnemyPartyMons(); - CreateEventLegalMon(&gEnemyParty[0], species, level, USE_RANDOM_IVS, 0, 0, 0, 0); + CreateEventLegalMon(&gEnemyParty[0], species, level, USE_RANDOM_IVS, FALSE, 0, OT_ID_PLAYER_ID, 0); if (itemId) { u8 heldItem[2]; @@ -2756,16 +2780,16 @@ static u16 CalculateBoxMonChecksum(struct BoxPokemon *boxMon) union PokemonSubstruct *substruct3 = GetSubstruct(boxMon, boxMon->personality, 3); s32 i; - for (i = 0; i < 6; i++) + for (i = 0; i < (s32)ARRAY_COUNT(substruct0->raw); i++) checksum += substruct0->raw[i]; - for (i = 0; i < 6; i++) + for (i = 0; i < (s32)ARRAY_COUNT(substruct1->raw); i++) checksum += substruct1->raw[i]; - for (i = 0; i < 6; i++) + for (i = 0; i < (s32)ARRAY_COUNT(substruct2->raw); i++) checksum += substruct2->raw[i]; - for (i = 0; i < 6; i++) + for (i = 0; i < (s32)ARRAY_COUNT(substruct3->raw); i++) checksum += substruct3->raw[i]; return checksum; @@ -2857,7 +2881,7 @@ void BoxMonToMon(const struct BoxPokemon *src, struct Pokemon *dest) SetMonData(dest, MON_DATA_STATUS, &value); SetMonData(dest, MON_DATA_HP, &value); SetMonData(dest, MON_DATA_MAX_HP, &value); - value = 255; + value = MAIL_NONE; SetMonData(dest, MON_DATA_MAIL, &value); CalculateMonStats(dest); } @@ -2915,7 +2939,7 @@ u16 GiveMoveToBattleMon(struct BattlePokemon *mon, u16 move) for (i = 0; i < MAX_MON_MOVES; i++) { - if (!mon->moves[i]) + if (mon->moves[i] == MOVE_NONE) { mon->moves[i] = move; mon->pp[i] = gBattleMoves[move].pp; @@ -2923,7 +2947,7 @@ u16 GiveMoveToBattleMon(struct BattlePokemon *mon, u16 move) } } - return 0xFFFF; + return MON_HAS_MAX_MOVES; } void SetMonMoveSlot(struct Pokemon *mon, u16 move, u8 slot) @@ -3013,8 +3037,8 @@ void DeleteFirstMoveAndGiveMoveToMon(struct Pokemon *mon, u16 move) ppBonuses = GetMonData(mon, MON_DATA_PP_BONUSES, NULL); ppBonuses >>= 2; - moves[3] = move; - pp[3] = gBattleMoves[move].pp; + moves[MAX_MON_MOVES - 1] = move; + pp[MAX_MON_MOVES - 1] = gBattleMoves[move].pp; for (i = 0; i < MAX_MON_MOVES; i++) { @@ -3040,8 +3064,8 @@ void DeleteFirstMoveAndGiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move) ppBonuses = GetBoxMonData(boxMon, MON_DATA_PP_BONUSES, NULL); ppBonuses >>= 2; - moves[3] = move; - pp[3] = gBattleMoves[move].pp; + moves[MAX_MON_MOVES - 1] = move; + pp[MAX_MON_MOVES - 1] = gBattleMoves[move].pp; for (i = 0; i < MAX_MON_MOVES; i++) { @@ -3086,6 +3110,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de spAttack = attacker->spAttack; spDefense = defender->spDefense; + // Get attacker hold item info if (attacker->item == ITEM_ENIGMA_BERRY) { attackerHoldEffect = gEnigmaBerries[battlerIdAtk].holdEffect; @@ -3097,6 +3122,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de attackerHoldEffectParam = ItemId_GetHoldEffectParam(attacker->item); } + // Get defender hold item info if (defender->item == ITEM_ENIGMA_BERRY) { defenderHoldEffect = gEnigmaBerries[battlerIdDef].holdEffect; @@ -3120,6 +3146,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de if (ShouldGetStatBadgeBoost(FLAG_BADGE07_GET, battlerIdDef)) spDefense = (110 * spDefense) / 100; + // Apply type-bonus hold item for (i = 0; i < ARRAY_COUNT(sHoldEffectToType); i++) { if (attackerHoldEffect == sHoldEffectToType[i][0] @@ -3133,6 +3160,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de } } + // Apply boosts from hold items if (attackerHoldEffect == HOLD_EFFECT_CHOICE_BAND) attack = (150 * attack) / 100; if (attackerHoldEffect == HOLD_EFFECT_SOUL_DEW && !(gBattleTypeFlags & (BATTLE_TYPE_FRONTIER)) && (attacker->species == SPECIES_LATIAS || attacker->species == SPECIES_LATIOS)) @@ -3149,6 +3177,8 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de defense *= 2; if (attackerHoldEffect == HOLD_EFFECT_THICK_CLUB && (attacker->species == SPECIES_CUBONE || attacker->species == SPECIES_MAROWAK)) attack *= 2; + + // Apply abilities / field sports if (defender->ability == ABILITY_THICK_FAT && (type == TYPE_FIRE || type == TYPE_ICE)) spAttack /= 2; if (attacker->ability == ABILITY_HUSTLE) @@ -3161,9 +3191,9 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de attack = (150 * attack) / 100; if (defender->ability == ABILITY_MARVEL_SCALE && defender->status1) defense = (150 * defense) / 100; - if (type == TYPE_ELECTRIC && AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, 0, 0xFD, 0)) + if (type == TYPE_ELECTRIC && AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, 0, ABILITYEFFECT_MUD_SPORT, 0)) gBattleMovePower /= 2; - if (type == TYPE_FIRE && AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, 0, 0xFE, 0)) + if (type == TYPE_FIRE && AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, 0, ABILITYEFFECT_WATER_SPORT, 0)) gBattleMovePower /= 2; if (type == TYPE_GRASS && attacker->ability == ABILITY_OVERGROW && attacker->hp <= (attacker->maxHP / 3)) gBattleMovePower = (150 * gBattleMovePower) / 100; @@ -3173,6 +3203,8 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de gBattleMovePower = (150 * gBattleMovePower) / 100; if (type == TYPE_BUG && attacker->ability == ABILITY_SWARM && attacker->hp <= (attacker->maxHP / 3)) gBattleMovePower = (150 * gBattleMovePower) / 100; + + // Self-destruct / Explosion cut defense in half if (gBattleMoves[gCurrentMove].effect == EFFECT_EXPLOSION) defense /= 2; @@ -3180,6 +3212,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de { if (gCritMultiplier == 2) { + // Critical hit, if attacker has lost attack stat stages then ignore stat drop if (attacker->statStages[STAT_ATK] > DEFAULT_STAT_STAGE) APPLY_STAT_MOD(damage, attacker, attack, STAT_ATK) else @@ -3193,6 +3226,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de if (gCritMultiplier == 2) { + // Critical hit, if defender has gained defense stat stages then ignore stat increase if (defender->statStages[STAT_DEF] < DEFAULT_STAT_STAGE) APPLY_STAT_MOD(damageHelper, defender, defense, STAT_DEF) else @@ -3204,9 +3238,11 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de damage = damage / damageHelper; damage /= 50; + // Burn cuts attack in half if ((attacker->status1 & STATUS1_BURN) && attacker->ability != ABILITY_GUTS) damage /= 2; + // Apply Reflect if ((sideStatus & SIDE_STATUS_REFLECT) && gCritMultiplier == 1) { if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && CountAliveMonsInBattle(BATTLE_ALIVE_DEF_SIDE) == 2) @@ -3215,10 +3251,11 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de damage /= 2; } + // Moves hitting both targets do half damage in double battles if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && gBattleMoves[move].target == MOVE_TARGET_BOTH && CountAliveMonsInBattle(BATTLE_ALIVE_DEF_SIDE) == 2) damage /= 2; - // moves always do at least 1 damage. + // Moves always do at least 1 damage. if (damage == 0) damage = 1; } @@ -3230,6 +3267,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de { if (gCritMultiplier == 2) { + // Critical hit, if attacker has lost sp. attack stat stages then ignore stat drop if (attacker->statStages[STAT_SPATK] > DEFAULT_STAT_STAGE) APPLY_STAT_MOD(damage, attacker, spAttack, STAT_SPATK) else @@ -3243,6 +3281,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de if (gCritMultiplier == 2) { + // Critical hit, if defender has gained sp. defense stat stages then ignore stat increase if (defender->statStages[STAT_SPDEF] < DEFAULT_STAT_STAGE) APPLY_STAT_MOD(damageHelper, defender, spDefense, STAT_SPDEF) else @@ -3254,6 +3293,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de damage = (damage / damageHelper); damage /= 50; + // Apply Lightscreen if ((sideStatus & SIDE_STATUS_LIGHTSCREEN) && gCritMultiplier == 1) { if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && CountAliveMonsInBattle(BATTLE_ALIVE_DEF_SIDE) == 2) @@ -3262,12 +3302,14 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de damage /= 2; } + // Moves hitting both targets do half damage in double battles if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && gBattleMoves[move].target == MOVE_TARGET_BOTH && CountAliveMonsInBattle(BATTLE_ALIVE_DEF_SIDE) == 2) damage /= 2; - // are effects of weather negated with cloud nine or air lock + // Are effects of weather negated with cloud nine or air lock if (WEATHER_HAS_EFFECT2) { + // Rain weakens Fire, boosts Water if (gBattleWeather & B_WEATHER_RAIN_TEMPORARY) { switch (type) @@ -3281,11 +3323,11 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de } } - // any weather except sun weakens solar beam + // Any weather except sun weakens solar beam if ((gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_HAIL)) && gCurrentMove == MOVE_SOLAR_BEAM) damage /= 2; - // sunny + // Sun boosts Fire, weakens Water if (gBattleWeather & B_WEATHER_SUN) { switch (type) @@ -3300,7 +3342,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de } } - // flash fire triggered + // Flash fire triggered if ((gBattleResources->flags->flags[battlerIdAtk] & RESOURCE_FLAG_FLASH_FIRE) && type == TYPE_FIRE) damage = (15 * damage) / 10; } @@ -3441,13 +3483,13 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition) gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag]; } -void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerSpriteId, u8 battlerPosition) +void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition) { - gMultiuseSpriteTemplate.paletteTag = trainerSpriteId; + gMultiuseSpriteTemplate.paletteTag = trainerPicId; if (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_PLAYER_RIGHT) { - gMultiuseSpriteTemplate = sTrainerBackSpriteTemplates[trainerSpriteId]; - gMultiuseSpriteTemplate.anims = gTrainerBackAnimsPtrTable[trainerSpriteId]; + gMultiuseSpriteTemplate = sTrainerBackSpriteTemplates[trainerPicId]; + gMultiuseSpriteTemplate.anims = gTrainerBackAnimsPtrTable[trainerPicId]; } else { @@ -3455,25 +3497,25 @@ void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerSpriteId, u8 battlerPosit gMultiuseSpriteTemplate = gMonSpritesGfxPtr->templates[battlerPosition]; else gMultiuseSpriteTemplate = gBattlerSpriteTemplates[battlerPosition]; - gMultiuseSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[trainerSpriteId]; + gMultiuseSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[trainerPicId]; } } -void SetMultiuseSpriteTemplateToTrainerFront(u16 arg0, u8 battlerPosition) +void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPosition) { if (gMonSpritesGfxPtr != NULL) gMultiuseSpriteTemplate = gMonSpritesGfxPtr->templates[battlerPosition]; else gMultiuseSpriteTemplate = gBattlerSpriteTemplates[battlerPosition]; - gMultiuseSpriteTemplate.paletteTag = arg0; - gMultiuseSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[arg0]; + gMultiuseSpriteTemplate.paletteTag = trainerPicId; + gMultiuseSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[trainerPicId]; } static void EncryptBoxMon(struct BoxPokemon *boxMon) { u32 i; - for (i = 0; i < 12; i++) + for (i = 0; i < ARRAY_COUNT(boxMon->secure.raw); i++) { boxMon->secure.raw[i] ^= boxMon->personality; boxMon->secure.raw[i] ^= boxMon->otId; @@ -3483,7 +3525,7 @@ static void EncryptBoxMon(struct BoxPokemon *boxMon) static void DecryptBoxMon(struct BoxPokemon *boxMon) { u32 i; - for (i = 0; i < 12; i++) + for (i = 0; i < ARRAY_COUNT(boxMon->secure.raw); i++) { boxMon->secure.raw[i] ^= boxMon->otId; boxMon->secure.raw[i] ^= boxMon->personality; @@ -3661,9 +3703,9 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data) if (CalculateBoxMonChecksum(boxMon) != boxMon->checksum) { - boxMon->isBadEgg = 1; - boxMon->isEgg = 1; - substruct3->isEgg = 1; + boxMon->isBadEgg = TRUE; + boxMon->isEgg = TRUE; + substruct3->isEgg = TRUE; } } @@ -3915,7 +3957,12 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data) retVal = SPECIES_EGG; break; case MON_DATA_IVS: - retVal = substruct3->hpIV | (substruct3->attackIV << 5) | (substruct3->defenseIV << 10) | (substruct3->speedIV << 15) | (substruct3->spAttackIV << 20) | (substruct3->spDefenseIV << 25); + retVal = substruct3->hpIV + | (substruct3->attackIV << 5) + | (substruct3->defenseIV << 10) + | (substruct3->speedIV << 15) + | (substruct3->spAttackIV << 20) + | (substruct3->spDefenseIV << 25); break; case MON_DATA_KNOWN_MOVES: if (substruct0->species && !substruct3->isEgg) @@ -4059,9 +4106,9 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg) if (CalculateBoxMonChecksum(boxMon) != boxMon->checksum) { - boxMon->isBadEgg = 1; - boxMon->isEgg = 1; - substruct3->isEgg = 1; + boxMon->isBadEgg = TRUE; + boxMon->isEgg = TRUE; + substruct3->isEgg = TRUE; EncryptBoxMon(boxMon); return; } @@ -4114,9 +4161,9 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg) { SET16(substruct0->species); if (substruct0->species) - boxMon->hasSpecies = 1; + boxMon->hasSpecies = TRUE; else - boxMon->hasSpecies = 0; + boxMon->hasSpecies = FALSE; break; } case MON_DATA_HELD_ITEM: @@ -4224,9 +4271,9 @@ void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg) case MON_DATA_IS_EGG: SET8(substruct3->isEgg); if (substruct3->isEgg) - boxMon->isEgg = 1; + boxMon->isEgg = TRUE; else - boxMon->isEgg = 0; + boxMon->isEgg = FALSE; break; case MON_DATA_ABILITY_NUM: SET8(substruct3->abilityNum); @@ -4337,7 +4384,7 @@ u8 GiveMonToPlayer(struct Pokemon *mon) return MON_GIVEN_TO_PARTY; } -u8 SendMonToPC(struct Pokemon* mon) +static u8 SendMonToPC(struct Pokemon* mon) { s32 boxNo, boxPos; @@ -4468,7 +4515,7 @@ void CreateSecretBaseEnemyParty(struct SecretBase *secretBaseRecord) gBattleResources->secretBase->party.species[i], gBattleResources->secretBase->party.levels[i], 15, - 1, + TRUE, gBattleResources->secretBase->party.personality[i], OT_ID_RANDOM_NO_SHINY, 0); @@ -4489,13 +4536,13 @@ void CreateSecretBaseEnemyParty(struct SecretBase *secretBaseRecord) u8 GetSecretBaseTrainerPicIndex(void) { - u8 facilityClass = sSecretBaseFacilityClasses[gBattleResources->secretBase->gender][gBattleResources->secretBase->trainerId[0] % 5]; + u8 facilityClass = sSecretBaseFacilityClasses[gBattleResources->secretBase->gender][gBattleResources->secretBase->trainerId[0] % NUM_SECRET_BASE_CLASSES]; return gFacilityClassToPicIndex[facilityClass]; } u8 GetSecretBaseTrainerClass(void) { - u8 facilityClass = sSecretBaseFacilityClasses[gBattleResources->secretBase->gender][gBattleResources->secretBase->trainerId[0] % 5]; + u8 facilityClass = sSecretBaseFacilityClasses[gBattleResources->secretBase->gender][gBattleResources->secretBase->trainerId[0] % NUM_SECRET_BASE_CLASSES]; return gFacilityClassToTrainerClass[facilityClass]; } @@ -4529,7 +4576,7 @@ void GetSpeciesName(u8 *name, u16 species) for (i = 0; i <= POKEMON_NAME_LENGTH; i++) { if (species > NUM_SPECIES) - name[i] = gSpeciesNames[0][i]; + name[i] = gSpeciesNames[SPECIES_NONE][i]; else name[i] = gSpeciesNames[species][i]; @@ -4549,13 +4596,13 @@ u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex) void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex) { u8 ppBonuses = GetMonData(mon, MON_DATA_PP_BONUSES, NULL); - ppBonuses &= gPPUpSetMask[moveIndex]; + ppBonuses &= gPPUpClearMask[moveIndex]; SetMonData(mon, MON_DATA_PP_BONUSES, &ppBonuses); } void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex) { - mon->ppBonuses &= gPPUpSetMask[moveIndex]; + mon->ppBonuses &= gPPUpClearMask[moveIndex]; } void CopyPlayerPartyMonToBattleData(u8 battlerId, u8 partyIndex) @@ -4618,7 +4665,7 @@ bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, return PokemonUseItemEffects(mon, item, partyIndex, moveIndex, FALSE); } -#define UPDATE_FRIENDSHIP_FROM_ITEM \ +#define UPDATE_FRIENDSHIP_FROM_ITEM() \ { \ if ((retVal == 0 || friendshipOnly) && !ShouldSkipFriendshipChange() && friendshipChange == 0) \ { \ @@ -4855,7 +4902,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov temp1 = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex); if (dataUnsigned <= 2 && temp1 > 4) { - dataUnsigned = GetMonData(mon, MON_DATA_PP_BONUSES, NULL) + gPPUpAddMask[moveIndex]; + dataUnsigned = GetMonData(mon, MON_DATA_PP_BONUSES, NULL) + gPPUpAddValues[moveIndex]; SetMonData(mon, MON_DATA_PP_BONUSES, &dataUnsigned); dataUnsigned = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), dataUnsigned, moveIndex) - temp1; @@ -5152,11 +5199,13 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov case 4: // ITEM5_PP_MAX dataUnsigned = (GetMonData(mon, MON_DATA_PP_BONUSES, NULL) & gPPUpGetMask[moveIndex]) >> (moveIndex * 2); temp2 = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex); - if (dataUnsigned < 3 && temp2 > 4) + + // Check if 3 PP Ups have been applied already, and that the move has a total PP of at least 5 (excludes Sketch) + if (dataUnsigned < 3 && temp2 >= 5) { dataUnsigned = GetMonData(mon, MON_DATA_PP_BONUSES, NULL); - dataUnsigned &= gPPUpSetMask[moveIndex]; - dataUnsigned += gPPUpAddMask[moveIndex] * 3; + dataUnsigned &= gPPUpClearMask[moveIndex]; + dataUnsigned += gPPUpAddValues[moveIndex] * 3; // Apply 3 PP Ups (max) SetMonData(mon, MON_DATA_PP_BONUSES, &dataUnsigned); dataUnsigned = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), dataUnsigned, moveIndex) - temp2; @@ -5172,25 +5221,19 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov // In general, PokĂ©mon with lower friendship receive more, // and PokĂ©mon with higher friendship receive less. if (GetMonData(mon, MON_DATA_FRIENDSHIP, NULL) < 100) - { - UPDATE_FRIENDSHIP_FROM_ITEM; - } + UPDATE_FRIENDSHIP_FROM_ITEM(); itemEffectParam++; break; case 6: // ITEM5_FRIENDSHIP_MID if (GetMonData(mon, MON_DATA_FRIENDSHIP, NULL) >= 100 && GetMonData(mon, MON_DATA_FRIENDSHIP, NULL) < 200) - { - UPDATE_FRIENDSHIP_FROM_ITEM; - } + UPDATE_FRIENDSHIP_FROM_ITEM(); itemEffectParam++; break; case 7: // ITEM5_FRIENDSHIP_HIGH if (GetMonData(mon, MON_DATA_FRIENDSHIP, NULL) >= 200) - { - UPDATE_FRIENDSHIP_FROM_ITEM; - } + UPDATE_FRIENDSHIP_FROM_ITEM(); itemEffectParam++; break; } @@ -5496,7 +5539,7 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem) case EVO_TRADE_ITEM: if (gEvolutionTable[species][i].param == heldItem) { - heldItem = 0; + heldItem = ITEM_NONE; SetMonData(mon, MON_DATA_HELD_ITEM, &heldItem); targetSpecies = gEvolutionTable[species][i].targetSpecies; } @@ -5530,7 +5573,7 @@ u16 HoennPokedexNumToSpecies(u16 hoennNum) species = 0; - while (species < (NUM_SPECIES - 1) && gSpeciesToHoennPokedexNum[species] != hoennNum) + while (species < (NUM_SPECIES - 1) && sSpeciesToHoennPokedexNum[species] != hoennNum) species++; if (species == NUM_SPECIES - 1) @@ -5548,7 +5591,7 @@ u16 NationalPokedexNumToSpecies(u16 nationalNum) species = 0; - while (species < (NUM_SPECIES - 1) && gSpeciesToNationalPokedexNum[species] != nationalNum) + while (species < (NUM_SPECIES - 1) && sSpeciesToNationalPokedexNum[species] != nationalNum) species++; if (species == NUM_SPECIES - 1) @@ -5566,7 +5609,7 @@ u16 NationalToHoennOrder(u16 nationalNum) hoennNum = 0; - while (hoennNum < (NUM_SPECIES - 1) && gHoennToNationalOrder[hoennNum] != nationalNum) + while (hoennNum < (NUM_SPECIES - 1) && sHoennToNationalOrder[hoennNum] != nationalNum) hoennNum++; if (hoennNum == NUM_SPECIES - 1) @@ -5580,7 +5623,7 @@ u16 SpeciesToNationalPokedexNum(u16 species) if (!species) return 0; - return gSpeciesToNationalPokedexNum[species - 1]; + return sSpeciesToNationalPokedexNum[species - 1]; } u16 SpeciesToHoennPokedexNum(u16 species) @@ -5588,7 +5631,7 @@ u16 SpeciesToHoennPokedexNum(u16 species) if (!species) return 0; - return gSpeciesToHoennPokedexNum[species - 1]; + return sSpeciesToHoennPokedexNum[species - 1]; } u16 HoennToNationalOrder(u16 hoennNum) @@ -5596,7 +5639,7 @@ u16 HoennToNationalOrder(u16 hoennNum) if (!hoennNum) return 0; - return gHoennToNationalOrder[hoennNum - 1]; + return sHoennToNationalOrder[hoennNum - 1]; } u16 SpeciesToCryId(u16 species) @@ -6278,7 +6321,7 @@ u16 GetBattleBGM(void) return MUS_VS_GYM_LEADER; case TRAINER_CLASS_CHAMPION: return MUS_VS_CHAMPION; - case TRAINER_CLASS_PKMN_TRAINER_3: + case TRAINER_CLASS_RIVAL: if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) return MUS_VS_RIVAL; if (!StringCompare(gTrainers[gTrainerBattleOpponent_A].trainerName, gText_BattleWallyName)) @@ -6357,9 +6400,9 @@ const u32 *GetMonSpritePalFromSpeciesAndPersonality(u16 species, u32 otId, u32 p u32 shinyValue; if (species > NUM_SPECIES) - return gMonPaletteTable[0].data; + return gMonPaletteTable[SPECIES_NONE].data; - shinyValue = HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality); + shinyValue = GET_SHINY_VALUE(otId, personality); if (shinyValue < SHINY_ODDS) return gMonShinyPaletteTable[species].data; else @@ -6378,7 +6421,7 @@ const struct CompressedSpritePalette *GetMonSpritePalStructFromOtIdPersonality(u { u32 shinyValue; - shinyValue = HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality); + shinyValue = GET_SHINY_VALUE(otId, personality); if (shinyValue < SHINY_ODDS) return &gMonShinyPaletteTable[species]; else @@ -6426,12 +6469,11 @@ bool8 IsOtherTrainer(u32 otId, u8 *otName) { if (otId == (gSaveBlock2Ptr->playerTrainerId[0] - | (gSaveBlock2Ptr->playerTrainerId[1] << 8) - | (gSaveBlock2Ptr->playerTrainerId[2] << 16) - | (gSaveBlock2Ptr->playerTrainerId[3] << 24))) + | (gSaveBlock2Ptr->playerTrainerId[1] << 8) + | (gSaveBlock2Ptr->playerTrainerId[2] << 16) + | (gSaveBlock2Ptr->playerTrainerId[3] << 24))) { int i; - for (i = 0; otName[i] != EOS; i++) if (otName[i] != gSaveBlock2Ptr->playerName[i]) return TRUE; @@ -6496,28 +6538,30 @@ void SetWildMonHeldItem(void) { u16 rnd = Random() % 100; u16 species = GetMonData(&gEnemyParty[0], MON_DATA_SPECIES, 0); - u16 var1 = 45; - u16 var2 = 95; + u16 chanceNoItem = 45; + u16 chanceCommon = 95; if (!GetMonData(&gPlayerParty[0], MON_DATA_SANITY_IS_EGG, 0) && GetMonAbility(&gPlayerParty[0]) == ABILITY_COMPOUND_EYES) { - var1 = 20; - var2 = 80; + chanceNoItem = 20; + chanceCommon = 80; } if (gMapHeader.mapLayoutId == LAYOUT_ALTERING_CAVE) { s32 alteringCaveId = GetWildMonTableIdInAlteringCave(species); if (alteringCaveId != 0) { - if (rnd < var2) + // In active Altering Cave, use special item list + if (rnd < chanceCommon) return; SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &sAlteringCaveWildMonHeldItems[alteringCaveId].item); } else { - if (rnd < var1) + // In inactive Altering Cave, use normal items + if (rnd < chanceNoItem) return; - if (rnd < var2) + if (rnd < chanceCommon) SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); else SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item2); @@ -6525,15 +6569,16 @@ void SetWildMonHeldItem(void) } else { - if (gBaseStats[species].item1 == gBaseStats[species].item2 && gBaseStats[species].item1 != 0) + if (gBaseStats[species].item1 == gBaseStats[species].item2 && gBaseStats[species].item1 != ITEM_NONE) { + // Both held items are the same, 100% chance to hold item SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); } else { - if (rnd < var1) + if (rnd < chanceNoItem) return; - if (rnd < var2) + if (rnd < chanceCommon) SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); else SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item2); @@ -6552,7 +6597,7 @@ bool8 IsMonShiny(struct Pokemon *mon) bool8 IsShinyOtIdPersonality(u32 otId, u32 personality) { bool8 retVal = FALSE; - u32 shinyValue = HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality); + u32 shinyValue = GET_SHINY_VALUE(otId, personality); if (shinyValue < SHINY_ODDS) retVal = TRUE; return retVal; @@ -6590,37 +6635,40 @@ const u8 *GetTrainerPartnerName(void) gTasks[taskId].data[dataId + 1] = (u32)(ptr) >> 16; \ } +#define sAnimId data[2] +#define sAnimDelay data[3] + static void Task_AnimateAfterDelay(u8 taskId) { - if (--gTasks[taskId].data[3] == 0) + if (--gTasks[taskId].sAnimDelay == 0) { - LaunchAnimationTaskForFrontSprite(READ_PTR_FROM_TASK(taskId, 0), gTasks[taskId].data[2]); + LaunchAnimationTaskForFrontSprite(READ_PTR_FROM_TASK(taskId, 0), gTasks[taskId].sAnimId); DestroyTask(taskId); } } static void Task_PokemonSummaryAnimateAfterDelay(u8 taskId) { - if (--gTasks[taskId].data[3] == 0) + if (--gTasks[taskId].sAnimDelay == 0) { - StartMonSummaryAnimation(READ_PTR_FROM_TASK(taskId, 0), gTasks[taskId].data[2]); + StartMonSummaryAnimation(READ_PTR_FROM_TASK(taskId, 0), gTasks[taskId].sAnimId); SummaryScreen_SetAnimDelayTaskId(TASK_NONE); DestroyTask(taskId); } } -void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3) +void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 panMode) { if (gHitMarker & HITMARKER_NO_ANIMATIONS && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))) - DoMonFrontSpriteAnimation(sprite, species, noCry, arg3 | 0x80); + DoMonFrontSpriteAnimation(sprite, species, noCry, panMode | SKIP_FRONT_ANIM); else - DoMonFrontSpriteAnimation(sprite, species, noCry, arg3); + DoMonFrontSpriteAnimation(sprite, species, noCry, panMode); } -void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3) +void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 panModeAnimFlag) { s8 pan; - switch (arg3 & 0x7F) + switch (panModeAnimFlag & (u8)~SKIP_FRONT_ANIM) // Exclude anim flag to get pan mode { case 0: pan = -25; @@ -6632,8 +6680,9 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, pan = 0; break; } - if (arg3 & 0x80) + if (panModeAnimFlag & SKIP_FRONT_ANIM) { + // No animation, only check if cry needs to be played if (!noCry) PlayCry1(species, pan); sprite->callback = SpriteCallbackDummy; @@ -6648,13 +6697,15 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, } if (sMonAnimationDelayTable[species - 1] != 0) { + // Animation has delay, start delay task u8 taskId = CreateTask(Task_AnimateAfterDelay, 0); STORE_PTR_IN_TASK(sprite, taskId, 0); - gTasks[taskId].data[2] = sMonFrontAnimIdsTable[species - 1]; - gTasks[taskId].data[3] = sMonAnimationDelayTable[species - 1]; + gTasks[taskId].sAnimId = sMonFrontAnimIdsTable[species - 1]; + gTasks[taskId].sAnimDelay = sMonAnimationDelayTable[species - 1]; } else { + // No delay, start animation LaunchAnimationTaskForFrontSprite(sprite, sMonFrontAnimIdsTable[species - 1]); } sprite->callback = SpriteCallbackDummy_2; @@ -6667,15 +6718,17 @@ void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneF StartSpriteAnim(sprite, 1); if (sMonAnimationDelayTable[species - 1] != 0) { + // Animation has delay, start delay task u8 taskId = CreateTask(Task_PokemonSummaryAnimateAfterDelay, 0); STORE_PTR_IN_TASK(sprite, taskId, 0); - gTasks[taskId].data[2] = sMonFrontAnimIdsTable[species - 1]; - gTasks[taskId].data[3] = sMonAnimationDelayTable[species - 1]; + gTasks[taskId].sAnimId = sMonFrontAnimIdsTable[species - 1]; + gTasks[taskId].sAnimDelay = sMonAnimationDelayTable[species - 1]; SummaryScreen_SetAnimDelayTaskId(taskId); SetSpriteCB_MonAnimDummy(sprite); } else { + // No delay, start animation StartMonSummaryAnimation(sprite, sMonFrontAnimIdsTable[species - 1]); } } @@ -6700,48 +6753,50 @@ void BattleAnimateBackSprite(struct Sprite* sprite, u16 species) } } -u8 sub_806EF08(u8 arg0) +// Unused, identical to GetOpposingLinkMultiBattlerId but for the player +// "rightSide" from that team's perspective, i.e. B_POSITION_*_RIGHT +static u8 GetOwnOpposingLinkMultiBattlerId(bool8 rightSide) { s32 i; - s32 var = 0; + s32 battlerId = 0; u8 multiplayerId = GetMultiplayerId(); switch (gLinkPlayers[multiplayerId].id) { case 0: case 2: - var = (arg0 != 0) ? 1 : 3; + battlerId = rightSide ? 1 : 3; break; case 1: case 3: - var = (arg0 != 0) ? 2 : 0; + battlerId = rightSide ? 2 : 0; break; } for (i = 0; i < MAX_LINK_PLAYERS; i++) { - if (gLinkPlayers[i].id == (s16)(var)) + if (gLinkPlayers[i].id == (s16)battlerId) break; } return i; } -u8 sub_806EF84(u8 arg0, u8 arg1) +u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId) { s32 i; - s32 var = 0; - switch (gLinkPlayers[arg1].id) + s32 battlerId = 0; + switch (gLinkPlayers[multiplayerId].id) { case 0: case 2: - var = (arg0 != 0) ? 1 : 3; + battlerId = rightSide ? 1 : 3; break; case 1: case 3: - var = (arg0 != 0) ? 2 : 0; + battlerId = rightSide ? 2 : 0; break; } for (i = 0; i < MAX_LINK_PLAYERS; i++) { - if (gLinkPlayers[i].id == (s16)(var)) + if (gLinkPlayers[i].id == (s16)battlerId) break; } return i; diff --git a/src/script_pokemon_util.c b/src/script_pokemon_util.c index 93a747772034..07e86656e020 100755 --- a/src/script_pokemon_util.c +++ b/src/script_pokemon_util.c @@ -65,17 +65,18 @@ u8 ScriptGiveMon(u16 species, u8 level, u16 item, u32 unused1, u32 unused2, u8 u u8 heldItem[2]; struct Pokemon mon; - CreateMon(&mon, species, level, USE_RANDOM_IVS, 0, 0, OT_ID_PLAYER_ID, 0); + CreateMon(&mon, species, level, USE_RANDOM_IVS, FALSE, 0, OT_ID_PLAYER_ID, 0); heldItem[0] = item; heldItem[1] = item >> 8; SetMonData(&mon, MON_DATA_HELD_ITEM, heldItem); sentToPc = GiveMonToPlayer(&mon); nationalDexNum = SpeciesToNationalPokedexNum(species); + // Don't set PokĂ©dex flag for MON_CANT_GIVE switch(sentToPc) { - case 0: - case 1: + case MON_GIVEN_TO_PARTY: + case MON_GIVEN_TO_PC: GetSetPokedexFlag(nationalDexNum, FLAG_SET_SEEN); GetSetPokedexFlag(nationalDexNum, FLAG_SET_CAUGHT); break; diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 70c2dd9d5d10..34fa24f74775 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -126,7 +126,7 @@ struct {TRAINER_CLASS_PKMN_BREEDER, TRAINER_ENCOUNTER_MUSIC_FEMALE}, {TRAINER_CLASS_COLLECTOR, TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS}, {TRAINER_CLASS_PKMN_RANGER, TRAINER_ENCOUNTER_MUSIC_COOL}, - {TRAINER_CLASS_PKMN_TRAINER_3, TRAINER_ENCOUNTER_MUSIC_MALE}, + {TRAINER_CLASS_RIVAL, TRAINER_ENCOUNTER_MUSIC_MALE}, {TRAINER_CLASS_YOUNG_COUPLE, TRAINER_ENCOUNTER_MUSIC_GIRL}, {TRAINER_CLASS_PSYCHIC, TRAINER_ENCOUNTER_MUSIC_INTENSE}, {TRAINER_CLASS_SR_AND_JR, TRAINER_ENCOUNTER_MUSIC_TWINS}, From 394c52a7be02aaeb708974ab5217bac3d8e5f644 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 4 Oct 2021 17:33:51 -0400 Subject: [PATCH 277/762] Clean up roamer.c --- src/roamer.c | 167 +++++++++++++++++++++++++++++---------------------- 1 file changed, 94 insertions(+), 73 deletions(-) diff --git a/src/roamer.c b/src/roamer.c index d053e5b255f1..3a41452fa9a3 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -5,51 +5,74 @@ #include "roamer.h" #include "constants/maps.h" +// Despite having a variable to track it, the roamer is +// hard-coded to only ever be in map group 0 +#define ROAMER_MAP_GROUP 0 + enum { - MAP_GRP = 0, // map group - MAP_NUM = 1, // map number + MAP_GRP, // map group + MAP_NUM, // map number }; +#define ROAMER (&gSaveBlock1Ptr->roamer) 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 + +// 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: +// - There must be at least 2 location sets that start with a different map, +// i.e. every location set cannot start with the same map. This is because of +// the while loop in RoamerMoveToOtherLocationSet. +// - Each location set must have at least 3 unique maps. This is because of +// the while loop in RoamerMove. In this loop the first map in the set is +// ignored, and an additional map is ignored if the roamer was there recently. +// - Additionally, while not a softlock, it's worth noting that if for any +// map in the location table there is not a location set that starts with +// that map then the roamer will be significantly less likely to move away +// 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), 0xFF }, - { MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE117), MAP_NUM(ROUTE118), 0xFF, 0xFF }, - { MAP_NUM(ROUTE117), MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE118), 0xFF, 0xFF }, + { 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), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE120), MAP_NUM(ROUTE119), MAP_NUM(ROUTE121), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE121), MAP_NUM(ROUTE120), MAP_NUM(ROUTE122), MAP_NUM(ROUTE123), 0xFF, 0xFF }, - { MAP_NUM(ROUTE122), MAP_NUM(ROUTE121), MAP_NUM(ROUTE123), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE123), MAP_NUM(ROUTE122), MAP_NUM(ROUTE118), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE124), MAP_NUM(ROUTE121), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), 0xFF, 0xFF }, - { MAP_NUM(ROUTE125), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE126), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE127), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), MAP_NUM(ROUTE128), 0xFF, 0xFF }, - { MAP_NUM(ROUTE128), MAP_NUM(ROUTE127), MAP_NUM(ROUTE129), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE129), MAP_NUM(ROUTE128), MAP_NUM(ROUTE130), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE130), MAP_NUM(ROUTE129), MAP_NUM(ROUTE131), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE131), MAP_NUM(ROUTE130), MAP_NUM(ROUTE132), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE132), MAP_NUM(ROUTE131), MAP_NUM(ROUTE133), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE133), MAP_NUM(ROUTE132), MAP_NUM(ROUTE134), 0xFF, 0xFF, 0xFF }, - { MAP_NUM(ROUTE134), MAP_NUM(ROUTE133), MAP_NUM(ROUTE110), 0xFF, 0xFF, 0xFF }, - { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }, + { 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), __, __, __ }, + { __, __, __, __, __, __ }, }; +#undef __ +#define NUM_LOCATION_SETS (ARRAY_COUNT(sRoamerLocations) - 1) +#define NUM_LOCATIONS_PER_SET (ARRAY_COUNT(sRoamerLocations[0])) + void ClearRoamerData(void) { - memset(&gSaveBlock1Ptr->roamer, 0, sizeof(struct Roamer)); - (&gSaveBlock1Ptr->roamer)->species = SPECIES_LATIAS; + memset(ROAMER, 0, sizeof(*ROAMER)); + ROAMER->species = SPECIES_LATIAS; } void ClearRoamerLocationData(void) { u8 i; - for (i = 0; i < 3; i++) + for (i = 0; i < ARRAY_COUNT(sLocationHistory); i++) { sLocationHistory[i][MAP_GRP] = 0; sLocationHistory[i][MAP_NUM] = 0; @@ -62,26 +85,27 @@ void ClearRoamerLocationData(void) static void CreateInitialRoamerMon(bool16 createLatios) { if (!createLatios) - (&gSaveBlock1Ptr->roamer)->species = SPECIES_LATIAS; + ROAMER->species = SPECIES_LATIAS; else - (&gSaveBlock1Ptr->roamer)->species = SPECIES_LATIOS; - - CreateMon(&gEnemyParty[0], (&gSaveBlock1Ptr->roamer)->species, 40, 0x20, 0, 0, OT_ID_PLAYER_ID, 0); - (&gSaveBlock1Ptr->roamer)->level = 40; - (&gSaveBlock1Ptr->roamer)->status = 0; - (&gSaveBlock1Ptr->roamer)->active = TRUE; - (&gSaveBlock1Ptr->roamer)->ivs = GetMonData(&gEnemyParty[0], MON_DATA_IVS); - (&gSaveBlock1Ptr->roamer)->personality = GetMonData(&gEnemyParty[0], MON_DATA_PERSONALITY); - (&gSaveBlock1Ptr->roamer)->hp = GetMonData(&gEnemyParty[0], MON_DATA_MAX_HP); - (&gSaveBlock1Ptr->roamer)->cool = GetMonData(&gEnemyParty[0], MON_DATA_COOL); - (&gSaveBlock1Ptr->roamer)->beauty = GetMonData(&gEnemyParty[0], MON_DATA_BEAUTY); - (&gSaveBlock1Ptr->roamer)->cute = GetMonData(&gEnemyParty[0], MON_DATA_CUTE); - (&gSaveBlock1Ptr->roamer)->smart = GetMonData(&gEnemyParty[0], MON_DATA_SMART); - (&gSaveBlock1Ptr->roamer)->tough = GetMonData(&gEnemyParty[0], MON_DATA_TOUGH); - sRoamerLocation[MAP_GRP] = 0; - sRoamerLocation[MAP_NUM] = sRoamerLocations[Random() % (ARRAY_COUNT(sRoamerLocations) - 1)][0]; + ROAMER->species = SPECIES_LATIOS; + + CreateMon(&gEnemyParty[0], ROAMER->species, 40, USE_RANDOM_IVS, FALSE, 0, OT_ID_PLAYER_ID, 0); + ROAMER->level = 40; + ROAMER->status = 0; + ROAMER->active = TRUE; + ROAMER->ivs = GetMonData(&gEnemyParty[0], MON_DATA_IVS); + ROAMER->personality = GetMonData(&gEnemyParty[0], MON_DATA_PERSONALITY); + ROAMER->hp = GetMonData(&gEnemyParty[0], MON_DATA_MAX_HP); + ROAMER->cool = GetMonData(&gEnemyParty[0], MON_DATA_COOL); + ROAMER->beauty = GetMonData(&gEnemyParty[0], MON_DATA_BEAUTY); + ROAMER->cute = GetMonData(&gEnemyParty[0], MON_DATA_CUTE); + ROAMER->smart = GetMonData(&gEnemyParty[0], MON_DATA_SMART); + ROAMER->tough = GetMonData(&gEnemyParty[0], MON_DATA_TOUGH); + sRoamerLocation[MAP_GRP] = ROAMER_MAP_GROUP; + sRoamerLocation[MAP_NUM] = sRoamerLocations[Random() % NUM_LOCATION_SETS][0]; } +// gSpecialVar_0x8004 here corresponds to the options in the multichoice MULTI_TV_LATI (0 for 'Red', 1 for 'Blue') void InitRoamer(void) { ClearRoamerData(); @@ -104,16 +128,17 @@ void UpdateLocationHistoryForRoamer(void) void RoamerMoveToOtherLocationSet(void) { u8 mapNum = 0; - struct Roamer *roamer = &gSaveBlock1Ptr->roamer; - - if (!roamer->active) + + if (!ROAMER->active) return; - sRoamerLocation[MAP_GRP] = 0; + sRoamerLocation[MAP_GRP] = ROAMER_MAP_GROUP; + // Choose a location set that starts with a map + // different from the roamer's current map while (1) { - mapNum = sRoamerLocations[Random() % (ARRAY_COUNT(sRoamerLocations) - 1)][0]; + mapNum = sRoamerLocations[Random() % NUM_LOCATION_SETS][0]; if (sRoamerLocation[MAP_NUM] != mapNum) { sRoamerLocation[MAP_NUM] = mapNum; @@ -132,20 +157,23 @@ void RoamerMove(void) } else { - struct Roamer *roamer = &gSaveBlock1Ptr->roamer; - - if (!roamer->active) + if (!ROAMER->active) return; - while (locSet < (ARRAY_COUNT(sRoamerLocations) - 1)) + while (locSet < NUM_LOCATION_SETS) { + // Find the location set that starts with the roamer's current map if (sRoamerLocation[MAP_NUM] == sRoamerLocations[locSet][0]) { u8 mapNum; while (1) { - mapNum = sRoamerLocations[locSet][(Random() % 5) + 1]; - if (!(sLocationHistory[2][MAP_GRP] == 0 && sLocationHistory[2][MAP_NUM] == mapNum) && mapNum != 0xFF) + // Choose a new map (excluding the first) within this set + // Also exclude a map if the roamer was there 2 moves ago + 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)) break; } sRoamerLocation[MAP_NUM] = mapNum; @@ -158,9 +186,7 @@ void RoamerMove(void) bool8 IsRoamerAt(u8 mapGroup, u8 mapNum) { - struct Roamer *roamer = &gSaveBlock1Ptr->roamer; - - if (roamer->active && mapGroup == sRoamerLocation[MAP_GRP] && mapNum == sRoamerLocation[MAP_NUM]) + if (ROAMER->active && mapGroup == sRoamerLocation[MAP_GRP] && mapNum == sRoamerLocation[MAP_NUM]) return TRUE; else return FALSE; @@ -168,20 +194,16 @@ bool8 IsRoamerAt(u8 mapGroup, u8 mapNum) void CreateRoamerMonInstance(void) { - struct Pokemon *mon; - struct Roamer *roamer; - - mon = &gEnemyParty[0]; + struct Pokemon *mon = &gEnemyParty[0]; ZeroEnemyPartyMons(); - roamer = &gSaveBlock1Ptr->roamer; - CreateMonWithIVsPersonality(mon, roamer->species, roamer->level, roamer->ivs, roamer->personality); - SetMonData(mon, MON_DATA_STATUS, &gSaveBlock1Ptr->roamer.status); - SetMonData(mon, MON_DATA_HP, &gSaveBlock1Ptr->roamer.hp); - SetMonData(mon, MON_DATA_COOL, &gSaveBlock1Ptr->roamer.cool); - SetMonData(mon, MON_DATA_BEAUTY, &gSaveBlock1Ptr->roamer.beauty); - SetMonData(mon, MON_DATA_CUTE, &gSaveBlock1Ptr->roamer.cute); - SetMonData(mon, MON_DATA_SMART, &gSaveBlock1Ptr->roamer.smart); - SetMonData(mon, MON_DATA_TOUGH, &gSaveBlock1Ptr->roamer.tough); + CreateMonWithIVsPersonality(mon, ROAMER->species, ROAMER->level, ROAMER->ivs, ROAMER->personality); + SetMonData(mon, MON_DATA_STATUS, &ROAMER->status); + SetMonData(mon, MON_DATA_HP, &ROAMER->hp); + SetMonData(mon, MON_DATA_COOL, &ROAMER->cool); + SetMonData(mon, MON_DATA_BEAUTY, &ROAMER->beauty); + SetMonData(mon, MON_DATA_CUTE, &ROAMER->cute); + SetMonData(mon, MON_DATA_SMART, &ROAMER->smart); + SetMonData(mon, MON_DATA_TOUGH, &ROAMER->tough); } bool8 TryStartRoamerEncounter(void) @@ -199,16 +221,15 @@ bool8 TryStartRoamerEncounter(void) void UpdateRoamerHPStatus(struct Pokemon *mon) { - (&gSaveBlock1Ptr->roamer)->hp = GetMonData(mon, MON_DATA_HP); - (&gSaveBlock1Ptr->roamer)->status = GetMonData(mon, MON_DATA_STATUS); + ROAMER->hp = GetMonData(mon, MON_DATA_HP); + ROAMER->status = GetMonData(mon, MON_DATA_STATUS); RoamerMoveToOtherLocationSet(); } void SetRoamerInactive(void) { - struct Roamer *roamer = &gSaveBlock1Ptr->roamer; - roamer->active = FALSE; + ROAMER->active = FALSE; } void GetRoamerLocation(u8 *mapGroup, u8 *mapNum) From cacd6410bf25072e779c3c43a813816fee4e08bd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 5 Oct 2021 08:54:15 -0400 Subject: [PATCH 278/762] Drop double underscore 'empty' macros --- src/dodrio_berry_picking.c | 14 ++++++------ src/roamer.c | 44 +++++++++++++++++++------------------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index c69ef9267687..e5ff1d184ccb 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -517,21 +517,21 @@ static const u8 sDodrioNeighborMap[MAX_RFU_PLAYERS][MAX_RFU_PLAYERS][3] = }, }; -#define __ 9 // No player at this column. This may go out of bounds if this is returned +#define x 9 // No player at this column. This may go out of bounds if this is returned // Takes the number of players and a column and returns the player id at that column. // Note that the assignment is somewhat arbitrary as players share neighboring columns. ALIGNED(4) static const u8 sPlayerIdAtColumn[MAX_RFU_PLAYERS][NUM_BERRY_COLUMNS] = { - {__, __, __, __, 1, 1, 1, __, __, __, __}, // 1 player - {__, __, __, 0, 0, 1, 1, 0, __, __, __}, // 2 players - {__, __, 2, 2, 0, 0, 1, 1, 1, __, __}, // 3 players - {__, 3, 3, 0, 0, 1, 1, 2, 2, 3, __}, // 4 players - { 3, 3, 4, 4, 0, 0, 1, 1, 2, 2, 3}, // 5 players + {x, x, x, x, 1, 1, 1, x, x, x, x}, // 1 player + {x, x, x, 0, 0, 1, 1, 0, x, x, x}, // 2 players + {x, x, 2, 2, 0, 0, 1, 1, 1, x, x}, // 3 players + {x, 3, 3, 0, 0, 1, 1, 2, 2, 3, x}, // 4 players + {3, 3, 4, 4, 0, 0, 1, 1, 2, 2, 3}, // 5 players }; -#undef __ +#undef x // Each array contains the columns that belong solely to one player, dependent on the number of players // When determing how difficult the berries in a column should be, the highest diff --git a/src/roamer.c b/src/roamer.c index 3a41452fa9a3..b8d10096742b 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -19,7 +19,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(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: @@ -35,30 +35,30 @@ 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(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(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), ___, ___, ___ }, + { ___, ___, ___, ___, ___, ___ }, }; -#undef __ +#undef ___ #define NUM_LOCATION_SETS (ARRAY_COUNT(sRoamerLocations) - 1) #define NUM_LOCATIONS_PER_SET (ARRAY_COUNT(sRoamerLocations[0])) From 4efa6c882a68d69e32f59580faa438a6b1fd0b68 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 15 Aug 2021 18:26:09 -0400 Subject: [PATCH 279/762] Continue misc link documentation, rename reset_save_heap --- include/link_rfu.h | 88 +-- include/reload_save.h | 6 + include/reset_save_heap.h | 12 - include/save.h | 3 +- ld_script.txt | 2 +- src/berry_blender.c | 4 +- src/berry_crush.c | 16 +- src/dodrio_berry_picking.c | 8 +- src/intro.c | 2 +- src/link.c | 4 +- src/link_rfu_2.c | 673 ++++++++++++----------- src/link_rfu_3.c | 2 +- src/load_save.c | 1 + src/pokemon_jump.c | 8 +- src/record_mixing.c | 4 +- src/{reset_save_heap.c => reload_save.c} | 10 +- src/save.c | 44 +- src/trade.c | 4 +- src/union_room.c | 26 +- src/union_room_chat.c | 11 +- 20 files changed, 487 insertions(+), 441 deletions(-) create mode 100644 include/reload_save.h delete mode 100644 include/reset_save_heap.h rename src/{reset_save_heap.c => reload_save.c} (75%) diff --git a/include/link_rfu.h b/include/link_rfu.h index da13fe539f93..04f1b7f9ae2c 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -5,20 +5,25 @@ #include "link.h" #include "AgbRfu_LinkManager.h" +#define RFUCMD_MASK 0xFF00 + #define RFUCMD_SEND_PACKET 0x2F00 #define RFUCMD_BLENDER_SEND_KEYS 0x4400 #define RFUCMD_READY_CLOSE_LINK 0x5F00 #define RFUCMD_READY_EXIT_STANDBY 0x6600 -#define RFUCMD_0x7700 0x7700 -#define RFUCMD_0x7800 0x7800 -#define RFUCMD_0x8800 0x8800 -#define RFUCMD_0x8900 0x8900 +#define RFUCMD_SEND_PLAYER_IDS 0x7700 +#define RFUCMD_SEND_PLAYER_IDS_NEW 0x7800 +#define RFUCMD_SEND_BLOCK_INIT 0x8800 +#define RFUCMD_SEND_BLOCK 0x8900 #define RFUCMD_SEND_BLOCK_REQ 0xA100 #define RFUCMD_SEND_HELD_KEYS 0xBE00 -#define RFUCMD_0xED00 0xED00 -#define RFUCMD_0xEE00 0xEE00 +#define RFUCMD_DISCONNECT 0xED00 +#define RFUCMD_DISCONNECT_PARENT 0xEE00 -#define RFU_SERIAL_7F7D 0x7F7D +#define RFU_SERIAL_A 0x0002 +#define RFU_SERIAL_B 0x7F7D +#define RFU_SERIAL_C 0x0000 +#define RFU_SERIAL_END 0xFFFF #define RECV_QUEUE_NUM_SLOTS 32 #define RECV_QUEUE_SLOT_LENGTH (14 * MAX_RFU_PLAYERS) @@ -45,6 +50,24 @@ #define RFU_STATUS_CHILD_LEAVE 11 #define RFU_STATUS_ACK_JOIN_GROUP 12 +#define CHILD_DATA_LENGTH 14 + +// Values for disconnectMode +enum { + RFU_DISCONNECT_NONE, + RFU_DISCONNECT_ERROR, + RFU_DISCONNECT_NORMAL, +}; + +// Values for errorState +enum { + RFU_ERROR_STATE_NONE, + RFU_ERROR_STATE_1, + RFU_ERROR_STATE_2, + RFU_ERROR_STATE_3, + RFU_ERROR_STATE_IGNORE, +}; + // RfuTgtData.gname is read as these structs. struct GFtgtGnameSub { @@ -125,8 +148,8 @@ struct GFRfuManager /* 0x00f */ u8 unk_0f; /* 0x010 */ u16 unk_10; /* 0x012 */ u16 unk_12; - /* 0x014 */ u8 unk_14[RFU_CHILD_MAX][14]; - /* 0x04c */ u8 unk_4c[14]; + /* 0x014 */ u8 childRecvBuffer[RFU_CHILD_MAX][CHILD_DATA_LENGTH]; + /* 0x04c */ u8 childSendBuffer[CHILD_DATA_LENGTH]; /* 0x05a */ u8 blockRequestType; /* 0x05b */ u8 unk_5b; /* 0x05c */ bool8 blockReceived[MAX_RFU_PLAYERS]; @@ -144,9 +167,9 @@ struct GFRfuManager /* 0x0f1 */ u8 status; /* 0x0f2 */ u16 packet[RFU_PACKET_SIZE]; /* 0x0fe */ u16 resendExitStandbyTimer; - /* 0x100 */ u16 unk_100; + /* 0x100 */ u16 allReadyNum; /* 0x102 */ u8 unk_102; - /* 0x103 */ u8 filler_103[0x10A - 0x103]; + /* 0x103 */ u8 filler_103[7]; /* 0x10A */ struct GFtgtGname unk_10A; u8 filler_; u8 playerName[PLAYER_NAME_LENGTH + 1]; @@ -162,36 +185,33 @@ struct GFRfuManager /* 0xc87 */ u8 recvCmds[5][7][2]; /* 0xccd */ u8 parentId; /* 0xcce */ u8 multiplayerId; - /* 0xccf */ u8 unk_ccf; - /* 0xcd0 */ vu8 unk_cd0; + /* 0xccf */ u8 connectParentFailures; + /* 0xcd0 */ vu8 childSendCount; /* 0xcd1 */ u8 partnerSendStatuses[RFU_CHILD_MAX]; /* 0xcd5 */ u8 partnerRecvStatuses[RFU_CHILD_MAX]; - /* 0xcd9 */ u8 unk_cd9; + /* 0xcd9 */ bool8 stopNewConnections; /* 0xcda */ u8 unk_cda; /* 0xcdb */ vbool8 unk_cdb; /* 0xcdc */ vbool8 unk_cdc; /* 0xcdd */ u8 unk_cdd; /* 0xcde */ u8 linkPlayerIdx[RFU_CHILD_MAX]; /* 0xce2 */ u8 unk_ce2; - /* 0xce2 */ u8 unk_ce3; - /* 0xce4 */ u8 unk_ce4; + /* 0xce2 */ u8 disconnectSlots; + /* 0xce4 */ u8 disconnectMode; /* 0xce5 */ u8 unk_ce5; /* 0xce5 */ u8 unk_ce6; /* 0xce7 */ u8 acceptSlot_flag; - /* 0xce8 */ u8 unk_ce8; + /* 0xce8 */ bool8 unk_ce8; /* 0xce9 */ u8 unk_ce9; /* 0xcea */ u8 unk_cea[4]; /* 0xcee */ u8 unk_cee[4]; }; // size = 0xcf4 -// Exported RAM declarations - extern struct GFtgtGname gHostRFUtgtGnameBuffer; extern u8 gHostRFUtgtUnameBuffer[]; extern struct GFRfuManager Rfu; extern u8 gWirelessStatusIndicatorSpriteId; -// Exported ROM declarations void WipeTrainerNameRecords(void); void InitRFUAPI(void); void LinkRfu_Shutdown(void); @@ -219,13 +239,13 @@ bool32 RfuHasErrored(void); bool32 IsRfuRecvQueueEmpty(void); u32 GetRfuRecvQueueLength(void); void RfuVSync(void); -void sub_80111B0(bool32 a0); +void RfuSetIgnoreError(bool32 enable); u8 RfuGetStatus(void); struct GFtgtGname *GetHostRFUtgtGname(void); -void UpdateGameData_GroupLockedIn(u8 a0); -void GetLinkmanErrorParams(u32 a0); -void RfuSetStatus(u8 a0, u16 a1); -u8 sub_801048C(bool32 a0); +void UpdateGameData_GroupLockedIn(u8 started); +void GetLinkmanErrorParams(u32 msg); +void RfuSetStatus(u8 status, u16 msg); +u8 Rfu_SetLinkRecovery(bool32 enable); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *buff1, u8 *buff2); void SetHostRFUtgtGname(u8 activity, u32 child_sprite_genders, bool32 started); void InitializeRfuLinkManager_LinkLeader(u32 a0); @@ -235,10 +255,10 @@ bool32 RfuTryDisconnectLeavingChildren(void); bool32 HasTrainerLeftPartnersList(u16 trainerId, const u8 *name); void SendRfuStatusToPartner(u8 status, u16 trainerId, const u8 *name); u32 WaitSendRfuStatusToPartner(u16 trainerId, const u8 *name); -void RequestDisconnectSlotByTrainerNameAndId(const u8 *a0, u16 a1); +void RequestDisconnectSlotByTrainerNameAndId(const u8 *name, u16 id); bool8 LmanAcceptSlotFlagIsNotZero(void); -bool32 WaitRfuState(bool32 a0); -void sub_801103C(void); +bool32 WaitRfuState(bool32 force); +void GetOtherPlayersInfoFlags(void); void InitializeRfuLinkManager_JoinGroup(void); void SendLeaveGroupNotice(void); void RecordMixTrainerNames(void); @@ -246,7 +266,7 @@ void LinkRfu_CreateConnectionAsParent(void); void LinkRfu_StopManagerBeforeEnteringChat(void); void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 started); void CreateTask_RfuReconnectWithParent(const u8 *src, u16 trainerId); -void SetGnameBufferWonderFlags(bool32 a0, bool32 a1); +void SetGnameBufferWonderFlags(bool32 hasNews, bool32 hasCard); void ClearAndInitHostRFUtgtGname(void); void SetTradeBoardRegisteredMonInfo(u32 type, u32 species, u32 level); void InitializeRfuLinkManager_EnterUnionRoom(void); @@ -254,8 +274,8 @@ void sub_8012188(const u8 *name, struct GFtgtGname *structPtr, u8 a2); bool32 IsUnionRoomListenTaskActive(void); void Rfu_SendPacket(void *data); bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); -void sub_8011DE0(u32 arg0); -u8 sub_801100C(s32 a0); +void Rfu_DisconnectPlayerById(u32 playerIdx); +u8 GetLinkPlayerInfoFlags(s32 playerId); void sub_800EF7C(void); bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx); bool8 LinkRfu_GetNameIfSerial7F7D(struct GFtgtGname *buff1, u8 *buff2, u8 idx); @@ -265,9 +285,9 @@ void DestroyTask_RfuIdle(void); void ClearRecvCommands(void); void LinkRfu_FatalError(void); bool32 sub_8011A9C(void); -void sub_80104B0(void); -void sub_8011A50(void); -void sub_80110B8(u32 a0); +void Rfu_StopPartnerSearch(void); +void RfuSetNormalDisconnectMode(void); +void SetUnionRoomChatPlayerData(u32 numPlayers); bool32 IsRfuSerialNumberValid(u32 serialNo); bool8 IsRfuRecoveringFromLinkLoss(void); void RfuRecvQueue_Reset(struct RfuRecvQueue *queue); diff --git a/include/reload_save.h b/include/reload_save.h new file mode 100644 index 000000000000..2ce05e53b810 --- /dev/null +++ b/include/reload_save.h @@ -0,0 +1,6 @@ +#ifndef GUARD_RELOAD_SAVE_H +#define GUARD_RELOAD_SAVE_H + +void ReloadSave(void); + +#endif // GUARD_RELOAD_SAVE_H diff --git a/include/reset_save_heap.h b/include/reset_save_heap.h deleted file mode 100644 index 12fd186ec9ab..000000000000 --- a/include/reset_save_heap.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef GUARD_RESET_SAVE_HEAP_H -#define GUARD_RESET_SAVE_HEAP_H - -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations - -void sub_81700F8(void); - -#endif //GUARD_RESET_SAVE_HEAP_H diff --git a/include/save.h b/include/save.h index 948530406e75..4eaa72458460 100644 --- a/include/save.h +++ b/include/save.h @@ -36,6 +36,7 @@ struct SaveSectionOffsets // Emerald changes this definition to be the sectors per slot. #define NUM_SECTORS_PER_SLOT 16 +#define NUM_SAVE_SLOTS 2 #define UNKNOWN_CHECK_VALUE 0x8012025 #define SPECIAL_SECTION_SENTINEL 0xB39D @@ -104,7 +105,7 @@ bool8 sub_8153408(void); bool8 FullSaveGame(void); bool8 CheckSaveFile(void); u8 Save_LoadGameData(u8 saveType); -u16 sub_815355C(void); +u16 GetSaveBlocksPointersBaseOffset(void); u32 TryReadSpecialSaveSection(u8 sector, u8* dst); u32 TryWriteSpecialSaveSection(u8 sector, u8* src); void Task_LinkSave(u8 taskId); diff --git a/ld_script.txt b/ld_script.txt index 8c8f19015eb3..218c6d3a500a 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -256,7 +256,7 @@ SECTIONS { src/battle_controller_wally.o(.text); src/player_pc.o(.text); src/intro.o(.text); - src/reset_save_heap.o(.text); + src/reload_save.o(.text); src/field_region_map.o(.text); src/battle_anim_throw.o(.text); src/hall_of_fame.o(.text); diff --git a/src/berry_blender.c b/src/berry_blender.c index e84c2d5b30b4..46ed5dee6537 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -2069,7 +2069,7 @@ static bool32 CheckRecvCmdMatches(u16 recvCmd, u16 linkCmd, u16 rfuCmd) { if (gReceivedRemoteLinkPlayers && gWirelessCommType) { - if ((recvCmd & 0xFF00) == rfuCmd) + if ((recvCmd & RFUCMD_MASK) == rfuCmd) return TRUE; } else @@ -3135,7 +3135,7 @@ static void UpdateBlenderCenter(void) } else { - if ((gRecvCmds[0][BLENDER_COMM_INPUT_STATE] & 0xFF00) == RFUCMD_BLENDER_SEND_KEYS) + if ((gRecvCmds[0][BLENDER_COMM_INPUT_STATE] & RFUCMD_MASK) == RFUCMD_BLENDER_SEND_KEYS) { sBerryBlender->progressBarValue = gRecvCmds[0][BLENDER_COMM_PROGRESS_BAR]; sBerryBlender->arrowPos = gRecvCmds[0][BLENDER_COMM_ARROW_POS]; diff --git a/src/berry_crush.c b/src/berry_crush.c index abaad232e80e..fd0d86c7e472 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -984,12 +984,12 @@ static u32 QuitBerryCrush(MainCallback exitCallback) return 0; } -#define ERROR_EXIT(exitCallback) \ - { \ - SetMainCallback2(exitCallback); \ - Rfu.unk_10 = 0; \ - Rfu.unk_12 = 0; \ - Rfu.errorState = 1; \ +#define ERROR_EXIT(exitCallback) \ + { \ + SetMainCallback2(exitCallback); \ + Rfu.unk_10 = 0; \ + Rfu.unk_12 = 0; \ + Rfu.errorState = RFU_ERROR_STATE_1; \ } void StartBerryCrush(MainCallback exitCallback) @@ -2565,7 +2565,7 @@ static void HandlePartnerInput(struct BerryCrushGame *game) linkState = (struct BerryCrushGame_LinkState *)gRecvCmds[i]; // Skip player if we have not received a packet from them - if ((linkState->rfuCmd & 0xFF00) != RFUCMD_SEND_PACKET) + if ((linkState->rfuCmd & RFUCMD_MASK) != RFUCMD_SEND_PACKET) continue; if (linkState->sendFlag != SEND_GAME_STATE) continue; @@ -2805,7 +2805,7 @@ static void RecvLinkData(struct BerryCrushGame *game) for (i = 0; i < game->playerCount; i++) game->players[i].inputState = INPUT_STATE_NONE; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) { game->playedSound = FALSE; return; diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index d766da607d35..8dead44b39bb 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3106,7 +3106,7 @@ static u32 RecvPacket_ReadyToStart(u32 playerId) { struct ReadyToStartPacket *packet; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; packet = (void *)&gRecvCmds[playerId][1]; @@ -3233,7 +3233,7 @@ static bool32 RecvPacket_GameState(u32 playerId, struct GameStatePacket *packet; struct DodrioGame_Berries *berries = &player->berries; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; packet = (void *)&gRecvCmds[0][1]; @@ -3310,7 +3310,7 @@ static bool32 RecvPacket_PickState(u32 playerId, u8 *pickState) { struct PickStatePacket *packet; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; packet = (void *)&gRecvCmds[playerId][1]; @@ -3341,7 +3341,7 @@ static bool32 RecvPacket_ReadyToEnd(u32 playerId) { struct ReadyToEndPacket *packet; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; packet = (void *)&gRecvCmds[playerId][1]; diff --git a/src/intro.c b/src/intro.c index 1477b67a13c7..e032d78f596a 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1142,7 +1142,7 @@ void CB2_InitCopyrightScreenAfterBootup(void) { if (!SetUpCopyrightScreen()) { - SetSaveBlocksPointers(sub_815355C()); + SetSaveBlocksPointers(GetSaveBlocksPointersBaseOffset()); ResetMenuAndMonGlobals(); Save_ResetSaveCounters(); Save_LoadGameData(SAVE_NORMAL); diff --git a/src/link.c b/src/link.c index 39f6568de364..6e9d01559751 100644 --- a/src/link.c +++ b/src/link.c @@ -1,7 +1,7 @@ #include "global.h" #include "m4a.h" #include "malloc.h" -#include "reset_save_heap.h" +#include "reload_save.h" #include "save.h" #include "bg.h" #include "window.h" @@ -1705,7 +1705,7 @@ static void CB2_PrintErrorMessage(void) PlaySE(SE_PIN); gWirelessCommType = 0; sLinkErrorBuffer.disconnected = FALSE; - sub_81700F8(); + ReloadSave(); } } else if (gWirelessCommType == 2) diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index ffa78b21d58b..b1e2c698f00d 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -45,7 +45,7 @@ enum { #define RFUSTATE_PARENT_FINALIZE 18 #define RFUSTATE_UR_CONNECT 17 #define RFUSTATE_UR_CONNECT_END 18 -#define RFUSTATE_20 20 +#define RFUSTATE_FINALIZED 20 struct SioInfo { @@ -62,11 +62,11 @@ struct RfuDebug u16 unk_06; u8 filler1[6]; vu8 unk_0e; - u8 unk_0f; + u8 childJoinCount; u8 filler2[84]; u16 unk_64; u8 filler3[29]; - u8 unk_83; + u8 blockSendTime; u8 filler4[88]; }; @@ -83,7 +83,7 @@ static EWRAM_DATA INIT_PARAM sRfuReqConfig = {}; static EWRAM_DATA struct RfuDebug sRfuDebug = {}; static void ResetSendDataManager(struct RfuBlockSend *); -static void sub_800EAB4(void); +static void InitChildRecvBuffers(void); static void sub_800EAFC(void); static void sub_800ED34(u16); static void sub_800EDBC(u16); @@ -105,7 +105,7 @@ static void sub_8010D0C(u8); static void sub_80115EC(s32); static void sub_8011BF8(void); static void RfuReqDisconnectSlot(u32); -static void sub_8011E94(u32, u32); +static void SendDisconnectCommand(u32, u32); static void sub_801209C(u8); static void Debug_PrintEmpty(void); static void Task_Idle(u8); @@ -165,15 +165,44 @@ static const u8 sUnknown_082ED68C[] = { 2, 2, 3 }; -static const u8 sUnknown_082ED695[] = { - 0, 1, 1, 2, - 1, 2, 2, 3, - 1, 2, 2, 3, - 2, 3, 3, 4 +// Effectively just returns the number of bits set in the index value +// Used for masks of the other players, MAX_RFU_PLAYERS - 1 excludes self +static const u8 sPlayerBitsToCount[1 << (MAX_RFU_PLAYERS - 1)] = { + 0, // 0000 + 1, // 0001 + 1, // 0010 + 2, // 0011 + 1, // 0100 + 2, // 0101 + 2, // 0110 + 3, // 0111 + 1, // 1000 + 2, // 1001 + 2, // 1010 + 3, // 1011 + 2, // 1100 + 3, // 1101 + 3, // 1110 + 4 // 1111 }; -static const u8 sUnknown_082ED6A5[] = { - 0, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0 +static const u8 sUnknown_082ED6A5[1 << (MAX_RFU_PLAYERS - 1)] = { + 0, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0 }; static const struct BlockRequest sBlockRequests[] = { @@ -185,10 +214,10 @@ static const struct BlockRequest sBlockRequests[] = { }; static const u16 sAcceptedSerialNos[] = { - 0x0002, - RFU_SERIAL_7F7D, - 0x0000, - 0xFFFF + RFU_SERIAL_A, + RFU_SERIAL_B, + RFU_SERIAL_C, + RFU_SERIAL_END }; static const char sASCII_RfuCmds[][15] = { @@ -213,7 +242,8 @@ static const char sASCII_RecoverCmds[][16] = { "RECOVER FAILED" }; -static const TaskFunc sUnknown_082ED7E0[] = { +// List of additional tasks to destroy (if active) when the RFU shuts down +static const TaskFunc sShutdownTasks[] = { sub_801084C, Task_ExchangeLinkPlayers, sub_8010D0C @@ -222,12 +252,12 @@ static const TaskFunc sUnknown_082ED7E0[] = { static const char sASCII_PokemonSioInfo[] = "PokemonSioInfo"; static const char sASCII_LinkLossDisconnect[] = "LINK LOSS DISCONNECT!"; static const char sASCII_LinkLossRecoveryNow[] = "LINK LOSS RECOVERY NOW"; -ALIGNED(4) static const char sASCII_30Spaces[31] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; -static const char sASCII_15Spaces[16] = {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','\0'}; -static const char sASCII_8Spaces[9] = {' ',' ',' ',' ',' ',' ',' ',' ','\0'}; -ALIGNED(4) static const char sASCII_Space[2] = {' ','\0'}; -static const char sASCII_Asterisk[2] = {'*','\0'}; -static const char sASCII_NowSlot[8] = "NOWSLOT"; +ALIGNED(4) static const char sASCII_30Spaces[] = {" "}; +static const char sASCII_15Spaces[] = {" "}; +static const char sASCII_8Spaces[] = {" "}; +ALIGNED(4) static const char sASCII_Space[] = {" "}; +static const char sASCII_Asterisk[] = {"*"}; +static const char sASCII_NowSlot[] = "NOWSLOT"; static const char sASCII_ClockCmds[][12] = { " ", @@ -237,7 +267,7 @@ static const char sASCII_ClockCmds[][12] = { "CLOCK SLAVE" }; -static const char sASCII_ChildParentSearch[3][8] = { +static const char sASCII_ChildParentSearch[][8] = { "CHILD ", "PARENT", "SEARCH" @@ -260,14 +290,10 @@ void ResetLinkRfuGFLayer(void) CpuFill16(0, &Rfu, sizeof Rfu); Rfu.errorState = errorState; Rfu.parentChild = 0xFF; - if (Rfu.errorState != 4) - { - Rfu.errorState = 0; - } + if (Rfu.errorState != RFU_ERROR_STATE_IGNORE) + Rfu.errorState = RFU_ERROR_STATE_NONE; for (i = 0; i < MAX_RFU_PLAYERS; i++) - { ResetSendDataManager(&Rfu.recvBlock[i]); - } ResetSendDataManager(&Rfu.sendBlock); RfuRecvQueue_Reset(&Rfu.recvQueue); RfuSendQueue_Reset(&Rfu.sendQueue); @@ -291,13 +317,13 @@ void InitRFU(void) void InitRFUAPI(void) { - if (!rfu_initializeAPI((void *)gf_rfu_REQ_api, sizeof gf_rfu_REQ_api, gIntrTable + 1, TRUE)) + if (!rfu_initializeAPI((void *)gf_rfu_REQ_api, sizeof gf_rfu_REQ_api, &gIntrTable[1], TRUE)) { gLinkType = 0; ClearSavedLinkPlayers(); - sub_80111B0(FALSE); + RfuSetIgnoreError(FALSE); ResetLinkRfuGFLayer(); - rfu_setTimerInterrupt(3, gIntrTable + 2); + rfu_setTimerInterrupt(3, &gIntrTable[2]); } } @@ -329,9 +355,9 @@ static void Task_LinkLeaderSearchForChildren(u8 taskId) case RFUSTATE_PARENT_FINALIZE: Rfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); - sub_800EAB4(); + InitChildRecvBuffers(); sub_800EAFC(); - Rfu.state = RFUSTATE_20; + Rfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; CreateTask(sub_801084C, 5); DestroyTask(taskId); @@ -339,9 +365,9 @@ static void Task_LinkLeaderSearchForChildren(u8 taskId) } } -s32 sub_800E87C(u8 idx) +s32 sub_800E87C(u8 slot) { - return sUnknown_082ED6A5[idx]; + return sUnknown_082ED6A5[slot]; } void sub_800E88C(s32 r2, s32 r5) @@ -366,24 +392,18 @@ void sub_800E88C(s32 r2, s32 r5) for (i = 0; i < RFU_CHILD_MAX; r1 >>= 1, i++) { if (!(r1 & 1)) - { Rfu.linkPlayerIdx[i] = 0; - } } for (r4 = RFU_CHILD_MAX; r4 != 0; r4--) { for (i = 0; i < RFU_CHILD_MAX && Rfu.linkPlayerIdx[i] != r4; i++); if (i == RFU_CHILD_MAX) - { r6 = r4; - } } for (r5 &= ~r2, i = 0; i < RFU_CHILD_MAX; r5 >>= 1, i++) { if (r5 & 1) - { Rfu.linkPlayerIdx[i] = r6++; - } } } } @@ -418,7 +438,7 @@ static void Task_JoinGroupSearchForParent(u8 taskId) case RFU_STATUS_JOIN_GROUP_NO: case RFU_STATUS_LEAVE_GROUP: rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.unk_ce4 = 2; + Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; DestroyTask(taskId); break; } @@ -427,14 +447,14 @@ static void Task_JoinGroupSearchForParent(u8 taskId) { u8 bmChildSlot = 1 << Rfu.childSlot; rfu_clearSlot(TYPE_NI_SEND | TYPE_NI_RECV, Rfu.childSlot); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, 70); - rfu_UNI_setSendData(bmChildSlot, Rfu.unk_4c, sizeof(Rfu.unk_4c)); + rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); + rfu_UNI_setSendData(bmChildSlot, Rfu.childSendBuffer, sizeof(Rfu.childSendBuffer)); gTasks[taskId].data[1] = 8; DestroyTask(taskId); - if (sRfuDebug.unk_0f == 0) + if (sRfuDebug.childJoinCount == 0) { Debug_PrintEmpty(); - sRfuDebug.unk_0f++; + sRfuDebug.childJoinCount++; } CreateTask(sub_801084C, 5); break; @@ -442,7 +462,7 @@ static void Task_JoinGroupSearchForParent(u8 taskId) } } -static void sub_800EAB4(void) +static void InitChildRecvBuffers(void) { u8 i; u8 acceptSlot = lman.acceptSlot_flag; @@ -450,7 +470,7 @@ static void sub_800EAB4(void) { if (acceptSlot & 1) { - rfu_setRecvBuffer(TYPE_UNI, i, Rfu.unk_14[i], 14); + rfu_setRecvBuffer(TYPE_UNI, i, Rfu.childRecvBuffer[i], sizeof(Rfu.childRecvBuffer[0])); rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, i); } acceptSlot >>= 1; @@ -467,6 +487,8 @@ static void sub_800EAFC(void) Rfu.parentChild = MODE_PARENT; } +#define tData7 data[7] // sub_ + static void Task_LinkRfu_UnionRoomListen(u8 taskId) { if (GetHostRFUtgtGname()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM) && RfuGetStatus() == RFU_STATUS_NEW_CHILD_DETECTED) @@ -485,18 +507,18 @@ static void Task_LinkRfu_UnionRoomListen(u8 taskId) case RFUSTATE_INIT_END: break; case RFUSTATE_UR_CONNECT: - rfu_LMAN_establishConnection(2, 0, 240, (u16 *)sAcceptedSerialNos); + rfu_LMAN_establishConnection(MODE_P_C_SWITCH, 0, 240, (u16 *)sAcceptedSerialNos); rfu_LMAN_setMSCCallback(sub_800ED34); Rfu.state = RFUSTATE_UR_CONNECT_END; break; case RFUSTATE_UR_CONNECT_END: break; case RFUSTATE_13: - if (rfu_UNI_setSendData(1 << Rfu.childSlot, Rfu.unk_4c, sizeof(Rfu.unk_4c)) == 0) + if (rfu_UNI_setSendData(1 << Rfu.childSlot, Rfu.childSendBuffer, sizeof(Rfu.childSendBuffer)) == 0) { Rfu.parentChild = MODE_CHILD; DestroyTask(taskId); - if (gTasks[taskId].data[7]) + if (gTasks[taskId].tData7) CreateTask(sub_8010D0C, 1); else CreateTask(sub_801084C, 5); @@ -512,9 +534,9 @@ static void Task_LinkRfu_UnionRoomListen(u8 taskId) Rfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); UpdateGameData_GroupLockedIn(TRUE); - sub_800EAB4(); + InitChildRecvBuffers(); sub_800EAFC(); - Rfu.state = RFUSTATE_20; + Rfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; Rfu.parentChild = MODE_PARENT; CreateTask(sub_801084C, 5); @@ -538,15 +560,14 @@ static void sub_800ED34(u16 unused) { s32 i; - for (i = 0; i < (int)ARRAY_COUNT(Rfu.unk_4c); i++) - { - Rfu.unk_4c[i] = 0; - } + for (i = 0; i < CHILD_DATA_LENGTH; i++) + Rfu.childSendBuffer[i] = 0; + rfu_REQ_recvData(); rfu_waitREQComplete(); if (gRfuSlotStatusUNI[Rfu.childSlot]->recv.newDataFlag) { - Rfu.unk_cd0++; + Rfu.childSendCount++; RfuRecvQueue_Enqueue(&Rfu.recvQueue, Rfu.unk_c3f); sRfuDebug.unk_06++; UpdateBackupQueue(); @@ -568,6 +589,7 @@ void LinkRfu_Shutdown(void) rfu_LMAN_powerDownRFU(); if (Rfu.parentChild == MODE_PARENT) { + // Stop parent searching for children if (FuncIsActiveTask(Task_LinkLeaderSearchForChildren) == TRUE) { DestroyTask(Rfu.searchTaskId); @@ -576,6 +598,7 @@ void LinkRfu_Shutdown(void) } else if (Rfu.parentChild == MODE_CHILD) { + // Stop child searching for parent if (FuncIsActiveTask(Task_JoinGroupSearchForParent) == TRUE) { DestroyTask(Rfu.searchTaskId); @@ -584,18 +607,19 @@ void LinkRfu_Shutdown(void) } else if (Rfu.parentChild == MODE_P_C_SWITCH) { + // Stop parent-child switching mode (union room) if (FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) { DestroyTask(Rfu.searchTaskId); ResetLinkRfuGFLayer(); } } - for (i = 0; i < ARRAY_COUNT(sUnknown_082ED7E0); i++) + + // Destroy additional tasks + for (i = 0; i < ARRAY_COUNT(sShutdownTasks); i++) { - if (FuncIsActiveTask(sUnknown_082ED7E0[i]) == TRUE) - { - DestroyTask(FindTaskIdByFunc(sUnknown_082ED7E0[i])); - } + if (FuncIsActiveTask(sShutdownTasks[i]) == TRUE) + DestroyTask(FindTaskIdByFunc(sShutdownTasks[i])); } } @@ -604,16 +628,15 @@ static void CreateTask_LinkLeaderSearchForChildren(void) Rfu.searchTaskId = CreateTask(Task_LinkLeaderSearchForChildren, 1); } -static bool8 sub_800EE94(void) +// If no parent ID (or if child connection not ready) can't reconnect with parent yet +static bool8 CanTryReconnectParent(void) { if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && Rfu.parentId) - { return TRUE; - } return FALSE; } -static bool32 IsParentSuccessfullyReconnected(void) +static bool32 TryReconnectParent(void) { if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[Rfu.unk_c3d].id, 240)) { @@ -631,9 +654,7 @@ static void CreateTask_JoinGroupSearchForParent(void) bool8 LmanAcceptSlotFlagIsNotZero(void) { if (lman.acceptSlot_flag) - { return TRUE; - } return FALSE; } @@ -658,18 +679,19 @@ void sub_800EF7C(void) Rfu.state = RFUSTATE_14; } -static void sub_800EF88(u8 a0) +// Unused +static void ReadySendDataForSlots(u8 slots) { u8 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (a0 & 1) + if (slots & 1) { rfu_UNI_readySendData(i); break; } - a0 >>= 1; + slots >>= 1; } } @@ -689,24 +711,21 @@ static void sub_800EFB0(void) CpuFill16(0, gRecvCmds, sizeof gRecvCmds); } -static void sub_800F014(void) +static void MoveSendCmdToRecv(void) { s32 i; for (i = 0; i < CMD_LENGTH - 1; i++) - { gRecvCmds[0][i] = gSendCmd[i]; - } + for (i = 0; i < CMD_LENGTH - 1; i++) - { gSendCmd[i] = 0; - } } static void UpdateBackupQueue(void) { if (Rfu.linkRecovered) { - bool8 backupEmpty = RfuBackupQueue_Dequeue(&Rfu.backupQueue, Rfu.unk_4c); + bool8 backupEmpty = RfuBackupQueue_Dequeue(&Rfu.backupQueue, Rfu.childSendBuffer); if (Rfu.backupQueue.count == 0) Rfu.linkRecovered = FALSE; @@ -716,8 +735,8 @@ static void UpdateBackupQueue(void) } if (!Rfu.linkRecovered) { - RfuSendQueue_Dequeue(&Rfu.sendQueue, Rfu.unk_4c); - RfuBackupQueue_Enqueue(&Rfu.backupQueue, Rfu.unk_4c); + RfuSendQueue_Dequeue(&Rfu.sendQueue, Rfu.childSendBuffer); + RfuBackupQueue_Enqueue(&Rfu.backupQueue, Rfu.childSendBuffer); } } @@ -743,9 +762,9 @@ bool32 IsRfuRecvQueueEmpty(void) return TRUE; } -static bool32 sub_800F0F8(void) +static bool32 RfuMain1_Parent(void) { - if (Rfu.state < RFUSTATE_20) + if (Rfu.state < RFUSTATE_FINALIZED) { rfu_REQ_recvData(); rfu_waitREQComplete(); @@ -758,11 +777,11 @@ static bool32 sub_800F0F8(void) { if (!Rfu.unk_cdc) { - if (Rfu.unk_ce3) + if (Rfu.disconnectSlots) { - RfuReqDisconnectSlot(Rfu.unk_ce3); - Rfu.unk_ce3 = 0; - if (Rfu.unk_ce4 == 1) + RfuReqDisconnectSlot(Rfu.disconnectSlots); + Rfu.disconnectSlots = 0; + if (Rfu.disconnectMode == RFU_DISCONNECT_ERROR) { RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x8000); GetLinkmanErrorParams(0x8000); @@ -789,7 +808,7 @@ static bool32 sub_800F0F8(void) return FALSE; } -static bool32 sub_800F1E0(void) +static bool32 RfuMain2_Parent(void) { u16 i; u16 flags; @@ -797,12 +816,12 @@ static bool32 sub_800F1E0(void) u16 j; u8 retval; - if (Rfu.state >= RFUSTATE_20 && Rfu.unk_0e == TRUE) + if (Rfu.state >= RFUSTATE_FINALIZED && Rfu.unk_0e == TRUE) { rfu_waitREQComplete(); while (Rfu.unk_cdb == FALSE) { - if (Rfu.errorState != 0) + if (Rfu.errorState != RFU_ERROR_STATE_NONE) return FALSE; } rfu_REQ_recvData(); @@ -816,24 +835,24 @@ static bool32 sub_800F1E0(void) { if (flags & 1) { - if (Rfu.unk_14[i][1]) + if (Rfu.childRecvBuffer[i][1]) { - if (Rfu.unk_cee[i] != 0xFF && (Rfu.unk_14[i][0] >> 5) != ((Rfu.unk_cee[i] + 1) & 7)) + if (Rfu.unk_cee[i] != 0xFF && (Rfu.childRecvBuffer[i][0] >> 5) != ((Rfu.unk_cee[i] + 1) & 7)) { if (++Rfu.unk_cea[i] > 4) - GetLinkmanErrorParams(0x8100); + GetLinkmanErrorParams(0x8000 | 0x100); } else { - Rfu.unk_cee[i] = Rfu.unk_14[i][0] / 32; + Rfu.unk_cee[i] = Rfu.childRecvBuffer[i][0] / 32; Rfu.unk_cea[i] = 0; - Rfu.unk_14[i][0] &= 0x1f; + Rfu.childRecvBuffer[i][0] &= 0x1f; r0 = Rfu.linkPlayerIdx[i]; for (j = 0; j < 7; j++) { - gRecvCmds[r0][j] = (Rfu.unk_14[i][(j << 1) + 1] << 8) | Rfu.unk_14[i][(j << 1) + 0]; - Rfu.unk_14[i][(j << 1) + 1] = 0; - Rfu.unk_14[i][(j << 1) + 0] = 0; + gRecvCmds[r0][j] = (Rfu.childRecvBuffer[i][(j << 1) + 1] << 8) | Rfu.childRecvBuffer[i][(j << 1) + 0]; + Rfu.childRecvBuffer[i][(j << 1) + 1] = 0; + Rfu.childRecvBuffer[i][(j << 1) + 0] = 0; } } } @@ -841,19 +860,17 @@ static bool32 sub_800F1E0(void) } flags >>= 1; } - sub_800F014(); + MoveSendCmdToRecv(); RfuHandleReceiveCommand(0); CallRfuFunc(); - if (Rfu.unk_ce5 && !Rfu.unk_cd9) + if (Rfu.unk_ce5 && !Rfu.stopNewConnections) { sRfuDebug.unk_0e = FALSE; rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, Rfu.unk_cda); for (i = 0; i < RFU_CHILD_MAX; i++) { if ((Rfu.unk_ce5 >> i) & 1) - { - rfu_setRecvBuffer(TYPE_UNI, i, Rfu.unk_14[i], 14); - } + rfu_setRecvBuffer(TYPE_UNI, i, Rfu.childRecvBuffer[i], sizeof(Rfu.childRecvBuffer[0])); } sub_800E88C(Rfu.unk_ce2, Rfu.unk_ce2 | Rfu.unk_ce5); Rfu.unk_ce9 = Rfu.unk_ce5; @@ -896,22 +913,22 @@ static void sub_800F498(u16 *a0, u8 *a1) } } -static bool32 RfuProcessEnqueuedRecvBlock(void) +static bool32 RfuMain1_Child(void) { u8 i; u8 j; - u8 sp00[MAX_RFU_PLAYERS * (2 * (CMD_LENGTH - 1))]; - u8 sp48[2 * (CMD_LENGTH - 1)]; + u8 recv[MAX_RFU_PLAYERS * (2 * (CMD_LENGTH - 1))]; + u8 send[2 * (CMD_LENGTH - 1)]; u8 status; - RfuRecvQueue_Dequeue(&Rfu.recvQueue, sp00); + RfuRecvQueue_Dequeue(&Rfu.recvQueue, recv); for (i = 0; i < MAX_RFU_PLAYERS; i++) { for (j = 0; j < CMD_LENGTH - 1; j++) - gRecvCmds[i][j] = (sp00[i * 14 + (j << 1) + 1] << 8) | sp00[i * 14 + (j << 1) + 0]; + gRecvCmds[i][j] = (recv[i * 14 + (j << 1) + 1] << 8) | recv[i * 14 + (j << 1) + 0]; } RfuHandleReceiveCommand(0); - if (lman.childClockSlave_flag == 0 && Rfu.unk_ce4) + if (lman.childClockSlave_flag == 0 && Rfu.disconnectMode != RFU_DISCONNECT_NONE) { rfu_REQ_disconnect(gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag); rfu_waitREQComplete(); @@ -921,20 +938,20 @@ static bool32 RfuProcessEnqueuedRecvBlock(void) rfu_clearAllSlot(); gReceivedRemoteLinkPlayers = FALSE; Rfu.callback = NULL; - if (Rfu.unk_ce4 == 1) + if (Rfu.disconnectMode == RFU_DISCONNECT_ERROR) { RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x9000); GetLinkmanErrorParams(0x9000); } lman.state = lman.next_state = 0; - Rfu.unk_ce4 = 0; + Rfu.disconnectMode = RFU_DISCONNECT_NONE; } - if (Rfu.unk_cd0) + if (Rfu.childSendCount) { - Rfu.unk_cd0--; + Rfu.childSendCount--; CallRfuFunc(); - sub_800F498(gSendCmd, sp48); - RfuSendQueue_Enqueue(&Rfu.sendQueue, sp48); + sub_800F498(gSendCmd, send); + RfuSendQueue_Enqueue(&Rfu.sendQueue, send); for (i = 0; i < CMD_LENGTH - 1; i++) gSendCmd[i] = 0; } @@ -950,7 +967,7 @@ static void HandleSendFailure(u8 unused, u32 flags) { if (!(flags & 1)) { - sResendBlock16[0] = RFUCMD_0x8900 | i; + sResendBlock16[0] = RFUCMD_SEND_BLOCK | i; for (j = 0; j < 7; j++) { temp = j << 1; @@ -983,17 +1000,15 @@ void Rfu_ResetBlockReceivedFlag(u8 linkPlayerId) Rfu.recvBlock[linkPlayerId].receiving = 0; } -static u8 sub_800F74C(const u8 *a0) +static u8 LoadLinkPlayerIds(const u8 *ids) { u8 i; - if (Rfu.parentChild == MODE_PARENT) return FALSE; for (i = 0; i < RFU_CHILD_MAX; i++) - { - Rfu.linkPlayerIdx[i] = a0[i]; - } - return a0[Rfu.childSlot]; + Rfu.linkPlayerIdx[i] = ids[i]; + + return ids[Rfu.childSlot]; } static void RfuFunc_SendKeysToRfu(void) @@ -1049,20 +1064,20 @@ static void RfuHandleReceiveCommand(u8 unused) for (i = 0; i < MAX_RFU_PLAYERS; i++) { - switch (gRecvCmds[i][0] & 0xff00) + switch (gRecvCmds[i][0] & RFUCMD_MASK) { - case RFUCMD_0x7800: + case RFUCMD_SEND_PLAYER_IDS_NEW: if (Rfu.parentChild == MODE_CHILD && gReceivedRemoteLinkPlayers) return; // fallthrough - case RFUCMD_0x7700: + case RFUCMD_SEND_PLAYER_IDS: if (gRfuLinkStatus->parentChild == MODE_CHILD) { Rfu.playerCount = gRecvCmds[i][1]; - Rfu.multiplayerId = sub_800F74C((u8 *)(gRecvCmds[i] + 2)); + Rfu.multiplayerId = LoadLinkPlayerIds((u8 *)(gRecvCmds[i] + 2)); } break; - case RFUCMD_0x8800: + case RFUCMD_SEND_BLOCK_INIT: if (Rfu.recvBlock[i].receiving == 0) { Rfu.recvBlock[i].next = 0; @@ -1073,7 +1088,7 @@ static void RfuHandleReceiveCommand(u8 unused) Rfu.blockReceived[i] = FALSE; } break; - case RFUCMD_0x8900: + case RFUCMD_SEND_BLOCK: if (Rfu.recvBlock[i].receiving == 1) { Rfu.recvBlock[i].next = gRecvCmds[i][0] & 0xff; @@ -1096,19 +1111,20 @@ static void RfuHandleReceiveCommand(u8 unused) Rfu.readyCloseLink[i] = TRUE; break; case RFUCMD_READY_EXIT_STANDBY: - if (Rfu.unk_100 == gRecvCmds[i][1]) + if (Rfu.allReadyNum == gRecvCmds[i][1]) Rfu.readyExitStandby[i] = TRUE; break; - case RFUCMD_0xED00: + case RFUCMD_DISCONNECT: if (Rfu.parentChild == MODE_CHILD) { + // Disconnect child if (gReceivedRemoteLinkPlayers) { if (gRecvCmds[i][1] & gRfuLinkStatus->connSlotFlag) { gReceivedRemoteLinkPlayers = 0; rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.unk_ce4 = gRecvCmds[i][2]; + Rfu.disconnectMode = gRecvCmds[i][2]; } Rfu.playerCount = gRecvCmds[i][3]; ClearSelectedLinkPlayerIds(gRecvCmds[i][1]); @@ -1116,17 +1132,18 @@ static void RfuHandleReceiveCommand(u8 unused) } else { - RfuPrepareSendBuffer(RFUCMD_0xEE00); + // Disconnect parent + RfuPrepareSendBuffer(RFUCMD_DISCONNECT_PARENT); gSendCmd[1] = gRecvCmds[i][1]; gSendCmd[2] = gRecvCmds[i][2]; gSendCmd[3] = gRecvCmds[i][3]; } break; - case RFUCMD_0xEE00: + case RFUCMD_DISCONNECT_PARENT: if (Rfu.parentChild == MODE_PARENT) { - Rfu.unk_ce3 |= gRecvCmds[i][1]; - Rfu.unk_ce4 = gRecvCmds[i][2]; + Rfu.disconnectSlots |= gRecvCmds[i][1]; + Rfu.disconnectMode = gRecvCmds[i][2]; ClearSelectedLinkPlayerIds(gRecvCmds[i][1]); } break; @@ -1191,9 +1208,7 @@ u8 Rfu_GetBlockReceivedStatus(void) for (i = 0; i < MAX_RFU_PLAYERS; i++) { if (Rfu.recvBlock[i].receiving == 2 && Rfu.blockReceived[i] == TRUE) - { flags |= (1 << i); - } } return flags; } @@ -1207,7 +1222,7 @@ static void RfuPrepareSendBuffer(u16 command) gSendCmd[0] = command; switch (command) { - case RFUCMD_0x8800: + case RFUCMD_SEND_BLOCK_INIT: gSendCmd[1] = Rfu.sendBlock.count; gSendCmd[2] = Rfu.sendBlock.owner + 0x80; break; @@ -1215,18 +1230,18 @@ static void RfuPrepareSendBuffer(u16 command) if (AreNoPlayersReceiving()) gSendCmd[1] = Rfu.blockRequestType; break; - case RFUCMD_0x7700: - case RFUCMD_0x7800: - tmp = Rfu.unk_ce2 ^ Rfu.unk_ce3; - Rfu.playerCount = sUnknown_082ED695[tmp] + 1; + case RFUCMD_SEND_PLAYER_IDS: + case RFUCMD_SEND_PLAYER_IDS_NEW: + tmp = Rfu.unk_ce2 ^ Rfu.disconnectSlots; + Rfu.playerCount = sPlayerBitsToCount[tmp] + 1; gSendCmd[1] = Rfu.playerCount; - buff = (u8 *)(gSendCmd + 2); + buff = (u8 *)&gSendCmd[2]; for (i = 0; i < RFU_CHILD_MAX; i++) buff[i] = Rfu.linkPlayerIdx[i]; break; case RFUCMD_READY_EXIT_STANDBY: case RFUCMD_READY_CLOSE_LINK: - gSendCmd[1] = Rfu.unk_100; + gSendCmd[1] = Rfu.allReadyNum; break; case RFUCMD_BLENDER_SEND_KEYS: gSendCmd[0] = command; @@ -1239,9 +1254,8 @@ static void RfuPrepareSendBuffer(u16 command) case RFUCMD_SEND_HELD_KEYS: gSendCmd[1] = gHeldKeyCodeToSend; break; - case RFUCMD_0xEE00: - break; - case RFUCMD_0xED00: + case RFUCMD_DISCONNECT_PARENT: + case RFUCMD_DISCONNECT: break; } } @@ -1264,7 +1278,7 @@ bool32 Rfu_InitBlockSend(const u8 *src, size_t size) return FALSE; if (Rfu.sendBlock.sending) { - sRfuDebug.unk_83++; + sRfuDebug.blockSendTime++; return FALSE; } r4 = (size % 12) != 0; @@ -1272,7 +1286,7 @@ bool32 Rfu_InitBlockSend(const u8 *src, size_t size) Rfu.sendBlock.sending = TRUE; Rfu.sendBlock.count = (size / 12) + r4; Rfu.sendBlock.next = 0; - if (size > 0x100) + if (size > BLOCK_BUFFER_SIZE) Rfu.sendBlock.payload = src; else { @@ -1280,7 +1294,7 @@ bool32 Rfu_InitBlockSend(const u8 *src, size_t size) memcpy(gBlockSendBuffer, src, size); Rfu.sendBlock.payload = gBlockSendBuffer; } - RfuPrepareSendBuffer(RFUCMD_0x8800); + RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_INIT); Rfu.callback = HandleBlockSend; Rfu.unk_5b = 0; return TRUE; @@ -1290,7 +1304,7 @@ static void HandleBlockSend(void) { if (gSendCmd[0] == 0) { - RfuPrepareSendBuffer(RFUCMD_0x8800); + RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_INIT); if (Rfu.parentChild == MODE_PARENT) { if (++Rfu.unk_5b > 2) @@ -1298,7 +1312,7 @@ static void HandleBlockSend(void) } else { - if ((gRecvCmds[GetMultiplayerId()][0] & 0xff00) == RFUCMD_0x8800) + if ((gRecvCmds[GetMultiplayerId()][0] & RFUCMD_MASK) == RFUCMD_SEND_BLOCK_INIT) Rfu.callback = SendNextBlock; } } @@ -1308,7 +1322,7 @@ static void SendNextBlock(void) { s32 i; const u8 *src = Rfu.sendBlock.payload; - gSendCmd[0] = RFUCMD_0x8900 | Rfu.sendBlock.next; + gSendCmd[0] = RFUCMD_SEND_BLOCK | Rfu.sendBlock.next; for (i = 0; i < CMD_LENGTH - 1; i++) gSendCmd[i + 1] = (src[(i << 1) + Rfu.sendBlock.next * 12 + 1] << 8) | src[(i << 1) + Rfu.sendBlock.next * 12 + 0]; Rfu.sendBlock.next++; @@ -1326,7 +1340,7 @@ static void SendLastBlock(void) s32 i; if (Rfu.parentChild == MODE_CHILD) { - gSendCmd[0] = RFUCMD_0x8900 | (Rfu.sendBlock.count - 1); + gSendCmd[0] = RFUCMD_SEND_BLOCK | (Rfu.sendBlock.count - 1); for (i = 0; i < CMD_LENGTH - 1; i++) gSendCmd[i + 1] = (src[(i << 1) + (Rfu.sendBlock.count - 1) * 12 + 1] << 8) | src[(i << 1) + (Rfu.sendBlock.count - 1) * 12 + 0]; if ((u8)gRecvCmds[mpId][0] == Rfu.sendBlock.count - 1) @@ -1337,11 +1351,15 @@ static void SendLastBlock(void) sRfuDebug.unk_64++; } else + { Rfu.callback = NULL; + } } } else + { Rfu.callback = NULL; + } } bool8 Rfu_SendBlockRequest(u8 type) @@ -1351,7 +1369,7 @@ bool8 Rfu_SendBlockRequest(u8 type) return TRUE; } -static void sub_801011C(void) +static void RfuShutdownAfterDisconnect(void) { rfu_clearAllSlot(); rfu_LMAN_powerDownRFU(); @@ -1364,7 +1382,7 @@ static void DisconnectRfu(void) { rfu_REQ_disconnect(gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag); rfu_waitREQComplete(); - sub_801011C(); + RfuShutdownAfterDisconnect(); } static void TryDisconnectRfu(void) @@ -1372,17 +1390,19 @@ static void TryDisconnectRfu(void) if (Rfu.parentChild == MODE_CHILD) { rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.unk_ce4 = 2; + Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; } else + { Rfu.callback = DisconnectRfu; + } } void LinkRfu_FatalError(void) { rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.unk_ce4 = 1; - Rfu.unk_ce3 = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; + Rfu.disconnectMode = RFU_DISCONNECT_ERROR; + Rfu.disconnectSlots = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; } // RFU equivalent of LinkCB_WaitCloseLink @@ -1404,17 +1424,19 @@ static void WaitAllReadyToCloseLink(void) gBattleTypeFlags &= ~BATTLE_TYPE_LINK_IN_BATTLE; if (Rfu.parentChild == MODE_CHILD) { - Rfu.errorState = 3; + Rfu.errorState = RFU_ERROR_STATE_3; TryDisconnectRfu(); } else + { Rfu.callback = TryDisconnectRfu; + } } } static void SendReadyCloseLink(void) { - if (gSendCmd[0] == 0 && Rfu.unk_ce8 == 0) + if (gSendCmd[0] == 0 && !Rfu.unk_ce8) { RfuPrepareSendBuffer(RFUCMD_READY_CLOSE_LINK); Rfu.callback = WaitAllReadyToCloseLink; @@ -1425,7 +1447,7 @@ static void Task_TryReadyCloseLink(u8 taskId) { if (Rfu.callback == NULL) { - Rfu.unk_cd9 = 1; + Rfu.stopNewConnections = TRUE; Rfu.callback = SendReadyCloseLink; DestroyTask(taskId); } @@ -1460,7 +1482,7 @@ static void SendReadyExitStandbyUntilAllReady(void) { for (i = 0; i < MAX_RFU_PLAYERS; i++) Rfu.readyExitStandby[i] = FALSE; - Rfu.unk_100++; + Rfu.allReadyNum++; Rfu.callback = NULL; } Rfu.resendExitStandbyTimer++; @@ -1524,23 +1546,23 @@ bool32 IsRfuSerialNumberValid(u32 serialNo) s32 i; for (i = 0; sAcceptedSerialNos[i] != serialNo; i++) { - if (sAcceptedSerialNos[i] == 0xFFFF) + if (sAcceptedSerialNos[i] == RFU_SERIAL_END) return FALSE; } return TRUE; } -u8 sub_801048C(bool32 a0) +u8 Rfu_SetLinkRecovery(bool32 enable) { - if (a0 == FALSE) + if (enable == FALSE) return rfu_LMAN_setLinkRecovery(0, 0); rfu_LMAN_setLinkRecovery(1, 600); return 0; } -void sub_80104B0(void) +void Rfu_StopPartnerSearch(void) { - Rfu.unk_cd9 = 1; + Rfu.stopNewConnections = TRUE; rfu_LMAN_stopManager(FALSE); } @@ -1688,7 +1710,7 @@ static void UpdateChildStatuses(void) static s32 sub_80107A0(void) { s32 status = RFU_STATUS_OK; - if (Rfu.unk_c85 == 8) + if (Rfu.unk_c85 == RFU_STATUS_LEAVE_GROUP_NOTICE) { if (gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_SUCCESS || gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_FAILED) @@ -1709,44 +1731,46 @@ static s32 sub_80107A0(void) return status; } +#define tState data[0] + static void sub_801084C(u8 taskId) { s32 i; if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) { - Rfu.unk_ce8 = 0; + Rfu.unk_ce8 = FALSE; DestroyTask(taskId); } - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: if (AreNoPlayersReceiving()) { ResetBlockReceivedFlags(); LocalLinkPlayerToBlock(); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; } break; case 1: if (Rfu.parentChild == MODE_PARENT) { if (gReceivedRemoteLinkPlayers) - RfuPrepareSendBuffer(RFUCMD_0x7800); + RfuPrepareSendBuffer(RFUCMD_SEND_PLAYER_IDS_NEW); else - RfuPrepareSendBuffer(RFUCMD_0x7700); - gTasks[taskId].data[0] = 101; + RfuPrepareSendBuffer(RFUCMD_SEND_PLAYER_IDS); + gTasks[taskId].tState = 101; } else - gTasks[taskId].data[0] = 2; + gTasks[taskId].tState = 2; break; case 101: if (gSendCmd[0] == 0) - gTasks[taskId].data[0] = 2; + gTasks[taskId].tState = 2; break; case 2: if (Rfu.playerCount) - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 3: if (Rfu.parentChild == MODE_PARENT) @@ -1755,15 +1779,15 @@ static void sub_801084C(u8 taskId) { Rfu.blockRequestType = BLOCK_REQ_SIZE_NONE; RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_REQ); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; } } else - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 4: if (sub_800FC88()) - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 5: for (i = 0; i < Rfu.playerCount; i++) @@ -1771,7 +1795,7 @@ static void sub_801084C(u8 taskId) LinkPlayerFromBlock(i); Rfu_ResetBlockReceivedFlag(i); } - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 6: DestroyTask(taskId); @@ -1830,62 +1854,62 @@ static void ValidateAndReceivePokemonSioInfo(void *recvBuffer) static void Task_ExchangeLinkPlayers(u8 taskId) { s32 i; - struct LinkPlayerBlock *r2; - struct SioInfo *r5; - u8 r4 = Rfu.linkPlayerIdx[sUnknown_082ED68C[Rfu.unk_ce9]]; + struct LinkPlayerBlock *playerBlock; + struct SioInfo *sio; + u8 playerId = Rfu.linkPlayerIdx[sUnknown_082ED68C[Rfu.unk_ce9]]; if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) { - Rfu.unk_ce8 = 0; + Rfu.unk_ce8 = FALSE; DestroyTask(taskId); } - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: if (gSendCmd[0] == 0) { - ResetBlockReceivedFlag(r4); - RfuPrepareSendBuffer(RFUCMD_0x7800); - gTasks[taskId].data[0]++; + ResetBlockReceivedFlag(playerId); + RfuPrepareSendBuffer(RFUCMD_SEND_PLAYER_IDS_NEW); + gTasks[taskId].tState++; } break; case 1: if (gSendCmd[0] == 0) - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 2: - if ((GetBlockReceivedStatus() >> r4) & 1) + if ((GetBlockReceivedStatus() >> playerId) & 1) { - ResetBlockReceivedFlag(r4); - r2 = (struct LinkPlayerBlock *)gBlockRecvBuffer[r4]; - gLinkPlayers[r4] = r2->linkPlayer; - ConvertLinkPlayerName(gLinkPlayers + r4); - gTasks[taskId].data[0]++; + ResetBlockReceivedFlag(playerId); + playerBlock = (struct LinkPlayerBlock *)gBlockRecvBuffer[playerId]; + gLinkPlayers[playerId] = playerBlock->linkPlayer; + ConvertLinkPlayerName(&gLinkPlayers[playerId]); + gTasks[taskId].tState++; } break; case 3: - r5 = (struct SioInfo *)gBlockSendBuffer; - memcpy(r5->magic, sASCII_PokemonSioInfo, sizeof sASCII_PokemonSioInfo); - r5->playerCount = Rfu.playerCount; + sio = (struct SioInfo *)gBlockSendBuffer; + memcpy(sio->magic, sASCII_PokemonSioInfo, sizeof sASCII_PokemonSioInfo); + sio->playerCount = Rfu.playerCount; for (i = 0; i < RFU_CHILD_MAX; i++) - r5->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; - memcpy(r5->linkPlayers, gLinkPlayers, sizeof gLinkPlayers); - gTasks[taskId].data[0]++; + sio->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; + memcpy(sio->linkPlayers, gLinkPlayers, sizeof gLinkPlayers); + gTasks[taskId].tState++; // fallthrough case 4: - r5 = (struct SioInfo *)gBlockSendBuffer; - r5->playerCount = Rfu.playerCount; + sio = (struct SioInfo *)gBlockSendBuffer; + sio->playerCount = Rfu.playerCount; for (i = 0; i < RFU_CHILD_MAX; i++) - r5->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; - memcpy(r5->linkPlayers, gLinkPlayers, sizeof gLinkPlayers); + sio->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; + memcpy(sio->linkPlayers, gLinkPlayers, sizeof(gLinkPlayers)); if (SendBlock(0, gBlockSendBuffer, 0xa0)) - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 5: if (IsLinkTaskFinished() && GetBlockReceivedStatus() & 1) { CpuFill16(0, gBlockRecvBuffer, sizeof(struct SioInfo)); ResetBlockReceivedFlag(0); - Rfu.unk_ce8 = 0; + Rfu.unk_ce8 = FALSE; if (Rfu.unk_ce6) { for (i = 0; i < 4; i++) @@ -1894,7 +1918,7 @@ static void Task_ExchangeLinkPlayers(u8 taskId) { Rfu.unk_ce5 = 1 << i; Rfu.unk_ce6 ^= (1 << i); - Rfu.unk_ce8 = 1; + Rfu.unk_ce8 = TRUE; break; } } @@ -1909,19 +1933,19 @@ static void sub_8010D0C(u8 taskId) { if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) DestroyTask(taskId); - switch (gTasks[taskId].data[0]) + switch (gTasks[taskId].tState) { case 0: if (Rfu.playerCount) { LocalLinkPlayerToBlock(); SendBlock(0, gBlockSendBuffer, sizeof(struct LinkPlayerBlock)); - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; } break; case 1: if (IsLinkTaskFinished()) - gTasks[taskId].data[0]++; + gTasks[taskId].tState++; break; case 2: if (GetBlockReceivedStatus() & 1) @@ -1937,14 +1961,14 @@ static void sub_8010D0C(u8 taskId) static void RfuCheckErrorStatus(void) { - if (Rfu.errorState == 1 && lman.childClockSlave_flag == 0) + if (Rfu.errorState == RFU_ERROR_STATE_1 && lman.childClockSlave_flag == 0) { if (gMain.callback2 == c2_mystery_gift_e_reader_run || lman.init_param->mboot_flag) gWirelessCommType = 2; SetMainCallback2(CB2_LinkError); gMain.savedCallback = CB2_LinkError; BufferLinkErrorInfo((Rfu.linkmanMsg << 16) | (Rfu.unk_10 << 8) | Rfu.unk_12, Rfu.recvQueue.count, Rfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); - Rfu.errorState = 2; + Rfu.errorState = RFU_ERROR_STATE_2; CloseLink(); } else if (Rfu.sendQueue.full == TRUE || Rfu.recvQueue.full == TRUE) @@ -1956,9 +1980,9 @@ static void RfuCheckErrorStatus(void) } } -static void rfu_REQ_recvData_then_sendData(void) +static void RfuMain1_UnionRoom(void) { - if (lman.parent_child == 1) + if (lman.parent_child == MODE_PARENT) { rfu_REQ_recvData(); rfu_waitREQComplete(); @@ -1977,13 +2001,13 @@ bool32 RfuMain1(void) switch (Rfu.parentChild) { case MODE_PARENT: - sub_800F0F8(); + RfuMain1_Parent(); break; case MODE_CHILD: - retval = RfuProcessEnqueuedRecvBlock(); + retval = RfuMain1_Child(); break; case MODE_P_C_SWITCH: - rfu_REQ_recvData_then_sendData(); + RfuMain1_UnionRoom(); break; } } @@ -1997,7 +2021,7 @@ bool32 RfuMain2(void) if (!Rfu.isShuttingDown) { if (Rfu.parentChild == MODE_PARENT) - retval = sub_800F1E0(); + retval = RfuMain2_Parent(); RfuCheckErrorStatus(); } return retval; @@ -2032,95 +2056,95 @@ void SetTradeBoardRegisteredMonInfo(u32 type, u32 species, u32 level) gHostRFUtgtGnameBuffer.level = level; } -u8 sub_801100C(s32 a0) +u8 GetLinkPlayerInfoFlags(s32 playerId) { u8 retval = 0x80; - retval |= (gLinkPlayers[a0].gender << 3); - retval |= (gLinkPlayers[a0].trainerId & 7); + retval |= (gLinkPlayers[playerId].gender << 3); + retval |= (gLinkPlayers[playerId].trainerId & 7); return retval; } -void sub_801103C(void) +void GetOtherPlayersInfoFlags(void) { - struct GFtgtGname *r5 = &gHostRFUtgtGnameBuffer; + struct GFtgtGname *gname = &gHostRFUtgtGnameBuffer; s32 i; for (i = 1; i < GetLinkPlayerCount(); i++) - r5->child_sprite_gender[i - 1] = sub_801100C(i); + gname->child_sprite_gender[i - 1] = GetLinkPlayerInfoFlags(i); } void UpdateGameData_GroupLockedIn(bool8 started) { gHostRFUtgtGnameBuffer.started = started; - rfu_REQ_configGameData(0, 2, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); + rfu_REQ_configGameData(0, RFU_SERIAL_A, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); } void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 started) { if (activity != ACTIVITY_NONE) SetHostRFUtgtGname(activity, flags, started); - rfu_REQ_configGameData(0, 2, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); + rfu_REQ_configGameData(0, RFU_SERIAL_A, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); } -void sub_80110B8(u32 a0) +void SetUnionRoomChatPlayerData(u32 numPlayers) { s32 i; u32 numConnectedChildren; u32 child_sprite_genders; - s32 r8; + s32 slots; if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { numConnectedChildren = 0; child_sprite_genders = 0; - r8 = Rfu.unk_ce2 ^ Rfu.unk_ce3; + slots = Rfu.unk_ce2 ^ Rfu.disconnectSlots; for (i = 0; i < 4; i++) { - if ((r8 >> i) & 1) + if ((slots >> i) & 1) { child_sprite_genders |= ((0x80 | ((gLinkPlayers[Rfu.linkPlayerIdx[i]].gender & 1) << 3) | (gLinkPlayers[Rfu.linkPlayerIdx[i]].trainerId & 7)) << (numConnectedChildren << 3)); numConnectedChildren++; - if (numConnectedChildren == a0 - 1) + if (numConnectedChildren == numPlayers - 1) break; } } - UpdateGameData_SetActivity((ACTIVITY_CHAT | IN_UNION_ROOM), child_sprite_genders, FALSE); + UpdateGameData_SetActivity(ACTIVITY_CHAT | IN_UNION_ROOM, child_sprite_genders, FALSE); } } void GetLinkmanErrorParams(u32 msg) { - if (Rfu.errorState == 0) + if (Rfu.errorState == RFU_ERROR_STATE_NONE) { Rfu.unk_10 = lman.param[0]; Rfu.unk_12 = lman.param[1]; Rfu.linkmanMsg = msg; - Rfu.errorState = 1; + Rfu.errorState = RFU_ERROR_STATE_1; } } static void ResetErrorState(void) { - Rfu.errorState = 0; + Rfu.errorState = RFU_ERROR_STATE_NONE; } -void sub_80111B0(bool32 a0) +void RfuSetIgnoreError(bool32 enable) { - if (!a0) - Rfu.errorState = 0; + if (!enable) + Rfu.errorState = RFU_ERROR_STATE_NONE; else - Rfu.errorState = 4; + Rfu.errorState = RFU_ERROR_STATE_IGNORE; } -static void sub_80111DC(void) +static void DisconnectNewChild(void) { - sub_8011E94(lman.acceptSlot_flag, 1); + SendDisconnectCommand(lman.acceptSlot_flag, RFU_DISCONNECT_ERROR); Rfu.callback = NULL; } -static void sub_80111FC(void) +static void StartDisconnectNewChild(void) { - Rfu.callback = sub_80111DC; + Rfu.callback = DisconnectNewChild; } static void sub_801120C(u8 msg, u8 paramCount) @@ -2145,7 +2169,7 @@ static void sub_801120C(u8 msg, u8 paramCount) { Rfu.partnerSendStatuses[i] = RFU_STATUS_OK; Rfu.partnerRecvStatuses[i] = RFU_STATUS_OK; - rfu_setRecvBuffer(TYPE_NI, i, &Rfu.partnerRecvStatuses[i], 1); + rfu_setRecvBuffer(TYPE_NI, i, &Rfu.partnerRecvStatuses[i], sizeof(Rfu.partnerRecvStatuses[0])); } else { @@ -2186,7 +2210,7 @@ static void sub_801120C(u8 msg, u8 paramCount) if (Rfu.unk_ce2 == 0) GetLinkmanErrorParams(msg); else - sub_80111FC(); + StartDisconnectNewChild(); } RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; @@ -2231,10 +2255,10 @@ void sub_8011404(u8 msg, u8 unused1) break; case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: Rfu.state = RFUSTATE_CHILD_TRY_JOIN; - Rfu.unk_c85 = 0; + Rfu.unk_c85 = RFU_STATUS_OK; Rfu.recvStatus = RFU_STATUS_OK; - rfu_setRecvBuffer(TYPE_NI, Rfu.childSlot, &Rfu.recvStatus, 1); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, 70); + rfu_setRecvBuffer(TYPE_NI, Rfu.childSlot, &Rfu.recvStatus, sizeof(Rfu.recvStatus)); + rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); @@ -2260,7 +2284,7 @@ void sub_8011404(u8 msg, u8 unused1) Rfu.linkLossRecoveryState = 3; Rfu.linkRecovered = TRUE; break; - case 0x34: + case 0x34: // ? Not a valid LMAN_MSG value break; case LMAN_MSG_RFU_POWER_DOWN: case LMAN_MSG_MANAGER_STOPPED: @@ -2327,13 +2351,13 @@ static void sub_8011674(u8 msg, u8 paramCount) RfuSetStatus(RFU_STATUS_NEW_CHILD_DETECTED, 0); break; case LMAN_MSG_NEW_CHILD_CONNECT_ACCEPTED: - if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && Rfu.unk_cd9 == 0) + if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && !Rfu.stopNewConnections) { u8 idx = GetNewChildrenInUnionRoomChat(lman.param[0]); if (idx != 0) { r1 = 1 << sub_800E87C(idx); - if (Rfu.unk_ce6 == 0 && Rfu.unk_ce8 == 0) + if (Rfu.unk_ce6 == 0 && !Rfu.unk_ce8) { Rfu.unk_ce5 = r1; Rfu.unk_ce6 |= (r1 ^ idx); @@ -2346,8 +2370,8 @@ static void sub_8011674(u8 msg, u8 paramCount) } if (idx != lman.param[0]) { - Rfu.unk_ce3 |= (idx ^ lman.param[0]); - Rfu.unk_ce4 = 2; + Rfu.disconnectSlots |= (idx ^ lman.param[0]); + Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; } } else if (GetHostRFUtgtGname()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM)) @@ -2382,9 +2406,9 @@ static void sub_8011674(u8 msg, u8 paramCount) break; case LMAN_MSG_CONNECT_PARENT_FAILED: Rfu.state = RFUSTATE_18; - if (Rfu.unk_ccf < 2) + if (Rfu.connectParentFailures < 2) { - Rfu.unk_ccf++; + Rfu.connectParentFailures++; CreateTask(sub_801209C, 2); } else @@ -2395,7 +2419,7 @@ static void sub_8011674(u8 msg, u8 paramCount) case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: Rfu.state = RFUSTATE_13; RfuSetStatus(RFU_STATUS_CHILD_SEND_COMPLETE, 0); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, 70); + rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); @@ -2422,10 +2446,10 @@ static void sub_8011674(u8 msg, u8 paramCount) if (Rfu.unk_ce2 == 0) GetLinkmanErrorParams(msg); else - sub_80111FC(); + StartDisconnectNewChild(); } } - else if (Rfu.unk_ce4 != 2 && gReceivedRemoteLinkPlayers == 1) + else if (Rfu.disconnectMode != RFU_DISCONNECT_NORMAL && gReceivedRemoteLinkPlayers == 1) { GetLinkmanErrorParams(msg); rfu_LMAN_stopManager(0); @@ -2439,7 +2463,7 @@ static void sub_8011674(u8 msg, u8 paramCount) RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_LINK_DISCONNECTED_BY_USER: - Rfu.unk_ce3 = 0; + Rfu.disconnectSlots = 0; break; case LMAN_MSG_RFU_POWER_DOWN: case LMAN_MSG_MANAGER_STOPPED: @@ -2461,9 +2485,9 @@ static void sub_8011674(u8 msg, u8 paramCount) } } -void sub_8011A50(void) +void RfuSetNormalDisconnectMode(void) { - Rfu.unk_ce4 = 2; + Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; } void RfuSetStatus(u8 status, u16 msg) @@ -2640,57 +2664,65 @@ void RequestDisconnectSlotByTrainerNameAndId(const u8 *name, u16 id) RfuReqDisconnectSlot(1 << var); } -void sub_8011DE0(u32 a0) +void Rfu_DisconnectPlayerById(u32 playerIdx) { - if (a0 != 0) + if (playerIdx != 0) { s32 i; - u8 var = 0; + u8 toDisconnect = 0; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.linkPlayerIdx[i] == a0 && (Rfu.unk_ce2 >> i) & 1) - var |= 1 << i; + if (Rfu.linkPlayerIdx[i] == playerIdx && (Rfu.unk_ce2 >> i) & 1) + toDisconnect |= 1 << i; } - if (var) - sub_8011E94(var, 2); + if (toDisconnect) + SendDisconnectCommand(toDisconnect, RFU_DISCONNECT_NORMAL); } } -static void sub_8011E2C(u8 taskId) +#define tDisconnectPlayers data[0] +#define tDisconnectMode data[1] + +static void Task_SendDisconnectCommand(u8 taskId) { - if (gSendCmd[0] == 0 && Rfu.unk_ce8 == 0) + if (gSendCmd[0] == 0 && !Rfu.unk_ce8) { - RfuPrepareSendBuffer(RFUCMD_0xED00); - gSendCmd[1] = gTasks[taskId].data[0]; - gSendCmd[2] = gTasks[taskId].data[1]; - Rfu.playerCount -= sUnknown_082ED695[gTasks[taskId].data[0]]; + RfuPrepareSendBuffer(RFUCMD_DISCONNECT); + gSendCmd[1] = gTasks[taskId].tDisconnectPlayers; + gSendCmd[2] = gTasks[taskId].tDisconnectMode; + Rfu.playerCount -= sPlayerBitsToCount[gTasks[taskId].tDisconnectPlayers]; gSendCmd[3] = Rfu.playerCount; DestroyTask(taskId); } } -static void sub_8011E94(u32 a0, u32 a1) +static void SendDisconnectCommand(u32 playersToDisconnect, u32 disconnectMode) { - u8 taskId = FindTaskIdByFunc(sub_8011E2C); + u8 taskId = FindTaskIdByFunc(Task_SendDisconnectCommand); if (taskId == TASK_NONE) { - taskId = CreateTask(sub_8011E2C, 5); - gTasks[taskId].data[0] = a0; + taskId = CreateTask(Task_SendDisconnectCommand, 5); + gTasks[taskId].tDisconnectPlayers = playersToDisconnect; } else { - gTasks[taskId].data[0] |= a0; + // Task is already active, just add the new players to disconnect + gTasks[taskId].tDisconnectPlayers |= playersToDisconnect; } - gTasks[taskId].data[1] = a1; + gTasks[taskId].tDisconnectMode = disconnectMode; } +#undef tDisconnectMode + +#define tTime data[15] + static void Task_RfuReconnectWithParent(u8 taskId) { s16 *data = gTasks[taskId].data; - if (sub_800EE94()) + if (CanTryReconnectParent()) { u8 id = GetPartnerIndexByNameAndTrainerID((u8*)data, ReadU16(&data[8])); if (id != 0xFF) @@ -2698,38 +2730,42 @@ static void Task_RfuReconnectWithParent(u8 taskId) if (gRfuLinkStatus->partner[id].slot != 0xFF) { Rfu.unk_c3d = id; - if (IsParentSuccessfullyReconnected()) + if (TryReconnectParent()) DestroyTask(taskId); } else if (GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_CARD2 || GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_NEWS2) { - data[15]++; + tTime++; } else { + // Error, unable to reconnect to parent RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); DestroyTask(taskId); } } else { - data[15]++; + tTime++; Rfu.unk_c3d = id; } } else { - data[15]++; + tTime++; } - if (data[15] > 240) + if (tTime > 240) { + // Timeout error RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); DestroyTask(taskId); } } +#undef tTime + void CreateTask_RfuReconnectWithParent(const u8 *name, u16 trainerId) { u8 taskId; @@ -2742,19 +2778,22 @@ void CreateTask_RfuReconnectWithParent(const u8 *name, u16 trainerId) data[8] = trainerId; } -static bool32 ShouldRejectPartnerConnectionBasedOnActivity(s16 activity, struct GFtgtGname *partnerGname) +static bool32 IsPartnerActivityIncompatible(s16 activity, struct GFtgtGname *partnerGname) { if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { + // Host trying to chat, but partner isn't if (partnerGname->activity != (ACTIVITY_CHAT | IN_UNION_ROOM)) return TRUE; } else if (partnerGname->activity != IN_UNION_ROOM) { + // Partner not in union room return TRUE; } else if (activity == (ACTIVITY_TRADE | IN_UNION_ROOM)) { + // Trying to trade, make sure trade matches request struct GFtgtGname *tradeGname = &Rfu.unk_10A; if (tradeGname->species == SPECIES_EGG) { @@ -2774,26 +2813,30 @@ static bool32 ShouldRejectPartnerConnectionBasedOnActivity(s16 activity, struct return FALSE; } +#define tTime data[0] +#define tActivity data[1] + static void sub_801209C(u8 taskId) { if (Rfu.status == RFU_STATUS_NEW_CHILD_DETECTED) DestroyTask(taskId); - if (++gTasks[taskId].data[0] > 300) + if (++gTasks[taskId].tTime > 300) { + // Timeout error RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); DestroyTask(taskId); } - if (Rfu.parentId != 0 && lman.parent_child == 0) + if (Rfu.parentId != 0 && lman.parent_child == MODE_CHILD) { u16 trainerId = ReadU16(Rfu.unk_10A.unk_00.playerTrainerId); u8 id = GetPartnerIndexByNameAndTrainerID(Rfu.playerName, trainerId); if (id != 0xFF) { - if (!ShouldRejectPartnerConnectionBasedOnActivity(gTasks[taskId].data[1], (void *)gRfuLinkStatus->partner[id].gname)) + if (!IsPartnerActivityIncompatible(gTasks[taskId].tActivity, (void *)gRfuLinkStatus->partner[id].gname)) { - if (gRfuLinkStatus->partner[id].slot != 0xFF && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[id].id, 0x5A)) + if (gRfuLinkStatus->partner[id].slot != 0xFF && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[id].id, 90)) { Rfu.state = RFUSTATE_10; DestroyTask(taskId); @@ -2801,6 +2844,7 @@ static void sub_801209C(u8 taskId) } else { + // Incompatible partner activity RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); DestroyTask(taskId); } @@ -2808,27 +2852,27 @@ static void sub_801209C(u8 taskId) } } -void sub_8012188(const u8 *name, struct GFtgtGname *structPtr, u8 activity) +void sub_8012188(const u8 *name, struct GFtgtGname *gname, u8 activity) { u8 taskId, taskId2; - Rfu.unk_ccf = 0; + Rfu.connectParentFailures = 0; Rfu.status = RFU_STATUS_OK; StringCopy(Rfu.playerName, name); - memcpy(&Rfu.unk_10A, structPtr, RFU_GAME_NAME_LENGTH); + memcpy(&Rfu.unk_10A, gname, RFU_GAME_NAME_LENGTH); rfu_LMAN_forceChangeSP(); taskId = CreateTask(sub_801209C, 2); - gTasks[taskId].data[1] = activity; + gTasks[taskId].tActivity = activity; taskId2 = FindTaskIdByFunc(Task_LinkRfu_UnionRoomListen); if (activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { if (taskId2 != TASK_NONE) - gTasks[taskId2].data[7] = 1; + gTasks[taskId2].tData7 = TRUE; } else { if (taskId2 != TASK_NONE) - gTasks[taskId2].data[7] = 0; + gTasks[taskId2].tData7 = FALSE; } } @@ -2843,7 +2887,6 @@ bool8 IsRfuRecoveringFromLinkLoss(void) bool32 IsRfuCommunicatingWithAllChildren(void) { s32 i; - for (i = 0; i < RFU_CHILD_MAX; i++) { // RFU_STATUS_OK is the default status. @@ -2859,7 +2902,6 @@ bool32 IsRfuCommunicatingWithAllChildren(void) static void Debug_PrintEmpty(void) { s32 i; - for (i = 0; i < 20; i++) Debug_PrintString(sASCII_30Spaces, 0, i); } @@ -2867,10 +2909,9 @@ static void Debug_PrintEmpty(void) static void Debug_PrintStatus(void) { s32 i, j; - - Debug_PrintNum(GetBlockReceivedStatus(), 0x1C, 0x13, 2); - Debug_PrintNum(gRfuLinkStatus->connSlotFlag, 0x14, 1, 1); - Debug_PrintNum(gRfuLinkStatus->linkLossSlotFlag, 0x17, 1, 1); + Debug_PrintNum(GetBlockReceivedStatus(), 28, 19, 2); + Debug_PrintNum(gRfuLinkStatus->connSlotFlag, 20, 1, 1); + Debug_PrintNum(gRfuLinkStatus->linkLossSlotFlag, 23, 1, 1); if (Rfu.parentChild == MODE_PARENT) { for (i = 0; i < RFU_CHILD_MAX; i++) @@ -2879,17 +2920,15 @@ static void Debug_PrintStatus(void) { Debug_PrintNum(gRfuLinkStatus->partner[i].serialNo, 1, i + 3, 4); Debug_PrintString((void*)gRfuLinkStatus->partner[i].gname, 6, i + 3); - Debug_PrintString(gRfuLinkStatus->partner[i].uname, 0x16, i + 3); + Debug_PrintString(gRfuLinkStatus->partner[i].uname, 22, i + 3); } } for (i = 0; i < RFU_CHILD_MAX; i++) { - for (j = 0; j < (int)ARRAY_COUNT(Rfu.unk_14[0]); j++) - { - Debug_PrintNum(Rfu.unk_14[i][j], j * 2, i + 11, 2); - } + for (j = 0; j < CHILD_DATA_LENGTH; j++) + Debug_PrintNum(Rfu.childRecvBuffer[i][j], j * 2, i + 11, 2); } - Debug_PrintString(sASCII_NowSlot, 1, 0xF); + Debug_PrintString(sASCII_NowSlot, 1, 15); } else if (gRfuLinkStatus->connSlotFlag != 0 && gRfuLinkStatus->getNameFlag != 0) { @@ -2897,11 +2936,11 @@ static void Debug_PrintStatus(void) { Debug_PrintNum(0, 1, i + 3, 4); Debug_PrintString(sASCII_15Spaces, 6, i + 3); - Debug_PrintString(sASCII_8Spaces, 0x16, i + 3); + Debug_PrintString(sASCII_8Spaces, 22, i + 3); } Debug_PrintNum(gRfuLinkStatus->partner[Rfu.childSlot].serialNo, 1, 3, 4); Debug_PrintString((void*)gRfuLinkStatus->partner[Rfu.childSlot].gname, 6, 3); - Debug_PrintString(gRfuLinkStatus->partner[Rfu.childSlot].uname, 0x16, 3); + Debug_PrintString(gRfuLinkStatus->partner[Rfu.childSlot].uname, 22, 3); } else { @@ -2911,14 +2950,14 @@ static void Debug_PrintStatus(void) { Debug_PrintNum(gRfuLinkStatus->partner[i].serialNo, 1, i + 3, 4); Debug_PrintNum(gRfuLinkStatus->partner[i].id, 6, i + 3, 4); - Debug_PrintString(gRfuLinkStatus->partner[i].uname, 0x16, i + 3); + Debug_PrintString(gRfuLinkStatus->partner[i].uname, 22, i + 3); } } for (; i < RFU_CHILD_MAX; i++) { Debug_PrintNum(0, 1, i + 3, 4); Debug_PrintString(sASCII_15Spaces, 6, i + 3); - Debug_PrintString(sASCII_8Spaces, 0x16, i + 3); + Debug_PrintString(sASCII_8Spaces, 22, i + 3); } } } diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index f47167873740..08678c40f4a1 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -719,7 +719,7 @@ bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx) bool8 LinkRfu_GetNameIfSerial7F7D(struct GFtgtGname *buff1, u8 *buff2, u8 idx) { bool8 retVal = FALSE; - if (gRfuLinkStatus->partner[idx].serialNo == RFU_SERIAL_7F7D) + if (gRfuLinkStatus->partner[idx].serialNo == RFU_SERIAL_B) { memcpy(buff1, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); memcpy(buff2, gRfuLinkStatus->partner[idx].uname, PLAYER_NAME_LENGTH + 1); diff --git a/src/load_save.c b/src/load_save.c index eec8f91aeac9..0112f2a8f1fc 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -71,6 +71,7 @@ void ClearSav1(void) CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1) + sizeof(gSaveblock1_DMA)); } +// Offset is the sum of the trainer id bytes void SetSaveBlocksPointers(u16 offset) { struct SaveBlock1** sav1_LocalVar = &gSaveBlock1Ptr; diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 5c678ed8c4dc..777939f08cda 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3945,7 +3945,7 @@ static bool32 RecvPacket_MonInfo(int multiplayerId, struct PokemonJump_MonInfo * { struct MonInfoPacket packet; - if ((gRecvCmds[multiplayerId][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[multiplayerId][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; memcpy(&packet, &gRecvCmds[multiplayerId][1], sizeof(packet)); @@ -4010,7 +4010,7 @@ static bool32 RecvPacket_LeaderState(struct PokemonJump_Player *player, struct P { struct LeaderStatePacket packet; - if ((gRecvCmds[0][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[0][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; memcpy(&packet, &gRecvCmds[0][1], sizeof(packet)); @@ -4057,7 +4057,7 @@ static bool32 RecvPacket_MemberStateToLeader(struct PokemonJump_Player *player, { struct MemberStatePacket packet; - if ((gRecvCmds[multiplayerId][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[multiplayerId][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; memcpy(&packet, &gRecvCmds[multiplayerId][1], sizeof(packet)); @@ -4078,7 +4078,7 @@ static bool32 RecvPacket_MemberStateToMember(struct PokemonJump_Player *player, { struct MemberStatePacket packet; - if ((gRecvCmds[multiplayerId][0] & 0xFF00) != RFUCMD_SEND_PACKET) + if ((gRecvCmds[multiplayerId][0] & RFUCMD_MASK) != RFUCMD_SEND_PACKET) return FALSE; memcpy(&packet, &gRecvCmds[multiplayerId][1], sizeof(packet)); diff --git a/src/record_mixing.c b/src/record_mixing.c index 2f551436e007..c01f3421c98c 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -981,7 +981,7 @@ static void Task_DoRecordMixing(u8 taskId) // Mixing Emerald records. case 6: - if (!sub_801048C(FALSE)) + if (!Rfu_SetLinkRecovery(FALSE)) { CreateTask(Task_LinkSave, 5); task->data[0]++; @@ -992,7 +992,7 @@ static void Task_DoRecordMixing(u8 taskId) { if (gWirelessCommType) { - sub_801048C(TRUE); + Rfu_SetLinkRecovery(TRUE); task->data[0] = 8; } else diff --git a/src/reset_save_heap.c b/src/reload_save.c similarity index 75% rename from src/reset_save_heap.c rename to src/reload_save.c index 577a48b0d813..cdbb2f227dd3 100644 --- a/src/reset_save_heap.c +++ b/src/reload_save.c @@ -8,17 +8,17 @@ #include "overworld.h" #include "malloc.h" -void sub_81700F8(void) +// Reloads the game, continuing from the point of the last save +// Used to gracefully exit after a link connection error +void ReloadSave(void) { - u16 imeBackup; - - imeBackup = REG_IME; + u16 imeBackup = REG_IME; REG_IME = 0; RegisterRamReset(RESET_EWRAM); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_FORCED_BLANK); REG_IME = imeBackup; gMain.inBattle = FALSE; - SetSaveBlocksPointers(sub_815355C()); + SetSaveBlocksPointers(GetSaveBlocksPointersBaseOffset()); ResetMenuAndMonGlobals(); Save_ResetSaveCounters(); Save_LoadGameData(SAVE_NORMAL); diff --git a/src/save.c b/src/save.c index 52301df03643..a803afedfc8c 100644 --- a/src/save.c +++ b/src/save.c @@ -126,16 +126,16 @@ static bool32 SetDamagedSectorBits(u8 op, u8 bit) return retVal; } -static u8 SaveWriteToFlash(u16 a1, const struct SaveSectionLocation *location) +static u8 SaveWriteToFlash(u16 sectorId, const struct SaveSectionLocation *location) { u32 status; u16 i; gFastSaveSection = &gSaveDataBuffer; - if (a1 != 0xFFFF) // for link + if (sectorId != 0xFFFF) // for link { - status = HandleWriteSector(a1, location); + status = HandleWriteSector(sectorId, location); } else { @@ -169,7 +169,7 @@ static u8 HandleWriteSector(u16 sectorId, const struct SaveSectionLocation *loca sector = sectorId + gLastWrittenSector; sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); data = location[sectorId].data; size = location[sectorId].size; @@ -292,7 +292,7 @@ static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *locati sector = sectorId + gLastWrittenSector; sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); data = location[sectorId].data; size = location[sectorId].size; @@ -362,7 +362,7 @@ static u8 sav12_xor_get(u16 sectorId, const struct SaveSectionLocation *location sector = sectorId + gLastWrittenSector; // no sub 1? sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) { @@ -385,7 +385,7 @@ static u8 sub_8152CAC(u16 sectorId, const struct SaveSectionLocation *location) sector = sectorId + gLastWrittenSector - 1; sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), ((u8 *)gFastSaveSection)[sizeof(struct UnkSaveSection)])) { @@ -408,7 +408,7 @@ static u8 sub_8152D44(u16 sectorId, const struct SaveSectionLocation *location) sector = sectorId + gLastWrittenSector - 1; // no sub 1? sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) { @@ -446,12 +446,12 @@ static u8 sub_8152E10(u16 a1, const struct SaveSectionLocation *location) { u16 i; u16 checksum; - u16 v3 = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + u16 slotOffset = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); u16 id; for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) { - DoReadFlashWholeSection(i + v3, gFastSaveSection); + DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); id = gFastSaveSection->id; if (id == 0) gLastWrittenSector = i; @@ -824,27 +824,29 @@ u8 Save_LoadGameData(u8 saveType) return status; } -u16 sub_815355C(void) +u16 GetSaveBlocksPointersBaseOffset(void) { - u16 i, v3; + u16 i, slotOffset; struct SaveSection* savSection; savSection = gFastSaveSection = &gSaveDataBuffer; if (gFlashMemoryPresent != TRUE) - return SAVE_STATUS_EMPTY; + return 0; UpdateSaveAddresses(); GetSaveValidStatus(gRamSaveSectionLocations); - v3 = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % 2); + slotOffset = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) { - DoReadFlashWholeSection(i + v3, gFastSaveSection); - if (gFastSaveSection->id == 0) - return savSection->data[10] + - savSection->data[11] + - savSection->data[12] + - savSection->data[13]; + DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); + + // Base offset for SaveBlock2 is calculated using the trainer id + if (gFastSaveSection->id == SECTOR_ID_SAVEBLOCK2) + return savSection->data[offsetof(struct SaveBlock2, playerTrainerId[0])] + + savSection->data[offsetof(struct SaveBlock2, playerTrainerId[1])] + + savSection->data[offsetof(struct SaveBlock2, playerTrainerId[2])] + + savSection->data[offsetof(struct SaveBlock2, playerTrainerId[3])]; } - return SAVE_STATUS_EMPTY; + return 0; } u32 TryReadSpecialSaveSection(u8 sector, u8* dst) diff --git a/src/trade.c b/src/trade.c index da994011b781..f0a31b5cba94 100644 --- a/src/trade.c +++ b/src/trade.c @@ -459,7 +459,7 @@ static void CB2_CreateTradeMenu(void) sTradeMenuData->timer = 0; if (gWirelessCommType) { - sub_801048C(TRUE); + Rfu_SetLinkRecovery(TRUE); SetLinkStandbyCallback(); } } @@ -1709,7 +1709,7 @@ static void CancelTrade_2(void) static void LinkTradeWaitForQueue(void) { - if (!sub_801048C(FALSE) && GetNumQueuedActions() == 0) + if (!Rfu_SetLinkRecovery(FALSE) && GetNumQueuedActions() == 0) { SetLinkStandbyCallback(); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_START_LINK_TRADE; diff --git a/src/union_room.c b/src/union_room.c index c2bc47aa4c45..46957db5e471 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -680,7 +680,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) if (gReceivedRemoteLinkPlayers != 0) { if (IsActivityWithVariableGroupSize(gPlayerCurrActivity)) - sub_801103C(); + GetOtherPlayersInfoFlags(); UpdateGameData_GroupLockedIn(TRUE); CreateTask_RunScriptAndFadeToActivity(); Leader_DestroyResources(data); @@ -1291,7 +1291,7 @@ static void Task_ListenToWireless(u8 taskId) SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_JoinGroup(); - sub_80111B0(TRUE); + RfuSetIgnoreError(TRUE); data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); data->field_0 = AllocZeroed(16 * sizeof(struct UnkStruct_x20)); data->state = 2; @@ -2894,7 +2894,7 @@ static void Task_RunUnionRoom(u8 taskId) ReceiveUnionRoomActivityPacket(uroom); if (UnionRoom_HandleContactFromOtherPlayer(uroom) && JOY_NEW(B_BUTTON)) { - sub_8011DE0(1); + Rfu_DisconnectPlayerById(1); StringCopy(gStringVar4, sText_ChatEnded); uroom->state = UR_STATE_CANCEL_REQUEST_PRINT_MSG; } @@ -2908,9 +2908,9 @@ static void Task_RunUnionRoom(u8 taskId) case 0: // ACCEPT uroom->playerSendBuffer[0] = ACTIVITY_ACCEPT | IN_UNION_ROOM; if (gPlayerCurrActivity == (ACTIVITY_CHAT | IN_UNION_ROOM)) - UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, sub_801100C(1), FALSE); + UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, GetLinkPlayerInfoFlags(1), FALSE); else - UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, sub_801100C(1), TRUE); + UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, GetLinkPlayerInfoFlags(1), TRUE); uroom->field_8->arr[0].field_1B = 0; taskData[3] = 0; @@ -3213,7 +3213,7 @@ void SetUsingUnionRoomStartMenu(void) static void ReceiveUnionRoomActivityPacket(struct WirelessLink_URoom *data) { - if (gRecvCmds[1][1] != 0 && (gRecvCmds[1][0] & 0xFF00) == 0x2F00) + if (gRecvCmds[1][1] != 0 && (gRecvCmds[1][0] & RFUCMD_MASK) == RFUCMD_SEND_PACKET) { data->recvActivityRequest[0] = gRecvCmds[1][1]; if (gRecvCmds[1][1] == (ACTIVITY_TRADE | IN_UNION_ROOM)) @@ -3282,7 +3282,7 @@ static void Task_InitUnionRoom(u8 taskId) SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_EnterUnionRoom(); - sub_80111B0(TRUE); + RfuSetIgnoreError(TRUE); data->state = 2; break; case 2: @@ -3877,32 +3877,22 @@ static bool32 AreUnionRoomPlayerGnamesDifferent(struct WirelessGnameUnamePair *p s32 i; if (pair1->gname.activity != pair2->gname.activity) - { return TRUE; - } if (pair1->gname.started != pair2->gname.started) - { return TRUE; - } for (i = 0; i < RFU_CHILD_MAX; i++) { if (pair1->gname.child_sprite_gender[i] != pair2->gname.child_sprite_gender[i]) - { return TRUE; - } } if (pair1->gname.species != pair2->gname.species) - { return TRUE; - } if (pair1->gname.type != pair2->gname.type) - { return TRUE; - } return FALSE; } @@ -4246,7 +4236,7 @@ static s32 GetChatLeaderActionRequestMessage(u8 *dst, u32 gender, u16 *activityD StringCopy(uroom->activityRequestStrbufs[1], gSpeciesNames[sUnionRoomTrade.playerSpecies]); for (i = 0; i < RFU_CHILD_MAX; i++) { - if (gRfuLinkStatus->partner[i].serialNo == 2) + if (gRfuLinkStatus->partner[i].serialNo == RFU_SERIAL_A) { ConvertIntToDecimalStringN(uroom->activityRequestStrbufs[2], activityData[2], STR_CONV_MODE_LEFT_ALIGN, 3); StringCopy(uroom->activityRequestStrbufs[3], gSpeciesNames[activityData[1]]); diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 8e9f78280c3b..903d00bcbf10 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -1198,7 +1198,7 @@ static void Chat_AskQuitChatting(void) sChat->funcState = 3; break; case 0: - sub_80104B0(); + Rfu_StopPartnerSearch(); PrepareSendBuffer_Disband(sChat->sendMessageBuffer); sChat->funcState = 4; sChat->tryQuitAgainTimer = 0; @@ -1819,7 +1819,7 @@ static void PrepareSendBuffer_Leave(u8 *buffer) buffer[0] = CHAT_MESSAGE_LEAVE; StringCopy(&buffer[1], gSaveBlock2Ptr->playerName); buffer[1 + (PLAYER_NAME_LENGTH + 1)] = sChat->multiplayerId; - sub_8011A50(); + RfuSetNormalDisconnectMode(); } static void PrepareSendBuffer_Drop(u8 *buffer) @@ -2079,13 +2079,12 @@ static void Task_ReceiveChatMessage(u8 taskId) { if (GetLinkPlayerCount() == 2) { - sub_80104B0(); + Rfu_StopPartnerSearch(); sChat->exitType = 1; DestroyTask(taskId); return; } - - sub_8011DE0(tCurrLinkPlayer); + Rfu_DisconnectPlayerById(tCurrLinkPlayer); } tState = 3; @@ -2104,7 +2103,7 @@ static void Task_ReceiveChatMessage(u8 taskId) if (!sub_8011A9C()) { if (!sChat->multiplayerId) - sub_80110B8(sChat->linkPlayerCount); + SetUnionRoomChatPlayerData(sChat->linkPlayerCount); tState = 1; } From 6aaf50ee27c175c8e54c7299fdc86d90b0b29187 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 5 Oct 2021 23:38:36 -0400 Subject: [PATCH 280/762] Rename GF Gname, Rfu, finish bulk of Union Room, more link doc --- common_syms/link_rfu_2.txt | 4 +- include/constants/union_room.h | 24 +- include/link_rfu.h | 97 +- include/trade.h | 4 +- include/union_room.h | 100 +- include/union_room_player_avatar.h | 8 +- src/berry_crush.c | 12 +- src/data/union_room.h | 699 +++++----- src/field_player_avatar.c | 32 +- src/librfu_rfu.c | 8 + src/link_rfu_2.c | 1365 ++++++++++---------- src/link_rfu_3.c | 178 ++- src/mystery_gift.c | 52 +- src/overworld.c | 2 +- src/party_menu.c | 4 +- src/pokemon_jump.c | 2 +- src/trade.c | 60 +- src/union_room.c | 1190 +++++++++-------- src/union_room_player_avatar.c | 369 +++--- src/wireless_communication_status_screen.c | 22 +- 20 files changed, 2095 insertions(+), 2137 deletions(-) diff --git a/common_syms/link_rfu_2.txt b/common_syms/link_rfu_2.txt index ac292845efc1..4b8f02bad8f2 100644 --- a/common_syms/link_rfu_2.txt +++ b/common_syms/link_rfu_2.txt @@ -1,2 +1,2 @@ -gf_rfu_REQ_api -Rfu +gRfuAPIBuffer +gRfu diff --git a/include/constants/union_room.h b/include/constants/union_room.h index d867fb34006f..6e08c9ebbdc0 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -1,7 +1,11 @@ #ifndef GUARD_CONSTANTS_UNION_ROOM_H #define GUARD_CONSTANTS_UNION_ROOM_H -#define MAX_UNION_ROOM_PLAYERS 8 +// The number of possible group leaders visible in the Union Room. +// Note that this is different than the number of people actively +// connected as children via the Wireless Adapter, which cannot +// exceed RFU_CHILD_MAX (4), for a total of 5 including the player. +#define MAX_UNION_ROOM_LEADERS 8 #define UNION_ROOM_SPAWN_NONE 0 #define UNION_ROOM_SPAWN_IN 1 @@ -13,8 +17,8 @@ #define ACTIVITY_BATTLE_MULTI 3 #define ACTIVITY_TRADE 4 #define ACTIVITY_CHAT 5 -#define ACTIVITY_WONDER_CARD 6 -#define ACTIVITY_WONDER_NEWS 7 +#define ACTIVITY_WONDER_CARD_DUP 6 // Duplicates of later WONDER constants +#define ACTIVITY_WONDER_NEWS_DUP 7 // #define ACTIVITY_CARD 8 #define ACTIVITY_POKEMON_JUMP 9 #define ACTIVITY_BERRY_CRUSH 10 @@ -32,9 +36,8 @@ #define ACTIVITY_NPCTALK 19 #define ACTIVITY_PLYRTALK 20 -// Duplicate IDs? -#define ACTIVITY_WONDER_CARD2 21 -#define ACTIVITY_WONDER_NEWS2 22 +#define ACTIVITY_WONDER_CARD 21 +#define ACTIVITY_WONDER_NEWS 22 #define ACTIVITY_CONTEST_COOL 23 #define ACTIVITY_CONTEST_BEAUTY 24 @@ -46,15 +49,6 @@ #define IN_UNION_ROOM (1 << 6) -// Used in UR_AddTextPrinterParameterized -#define UR_COLOR_DKE_WHT_LTE 0 -#define UR_COLOR_RED_WHT_LTR 1 -#define UR_COLOR_GRN_WHT_LTG 2 -#define UR_COLOR_WHT_WHT_LTE 3 -#define UR_COLOR_WHT_DKE_LTE 4 -#define UR_COLOR_GRN_DN6_LTB 5 -#define UR_COLOR_DN5_DN6_LTB 6 - #define LINK_GROUP_SINGLE_BATTLE 0 #define LINK_GROUP_DOUBLE_BATTLE 1 #define LINK_GROUP_MULTI_BATTLE 2 diff --git a/include/link_rfu.h b/include/link_rfu.h index 04f1b7f9ae2c..eb071618ea44 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -20,10 +20,10 @@ #define RFUCMD_DISCONNECT 0xED00 #define RFUCMD_DISCONNECT_PARENT 0xEE00 -#define RFU_SERIAL_A 0x0002 -#define RFU_SERIAL_B 0x7F7D -#define RFU_SERIAL_C 0x0000 -#define RFU_SERIAL_END 0xFFFF +#define RFU_SERIAL_GAME 0x0002 // Serial number for PokĂ©mon game (FRLG or Emerald) +#define RFU_SERIAL_WONDER_DISTRIBUTOR 0x7F7D // Serial number for distributing Wonder Cards / News +#define RFU_SERIAL_UNKNOWN 0x0000 // Unreferenced acceptable serial number. Gamecube? +#define RFU_SERIAL_END 0xFFFF #define RECV_QUEUE_NUM_SLOTS 32 #define RECV_QUEUE_SLOT_LENGTH (14 * MAX_RFU_PLAYERS) @@ -68,8 +68,7 @@ enum { RFU_ERROR_STATE_IGNORE, }; -// RfuTgtData.gname is read as these structs. -struct GFtgtGnameSub +struct RfuGameCompatibilityData { u16 language:4; u16 hasNews:1; @@ -79,24 +78,41 @@ struct GFtgtGnameSub u16 hasNationalDex:1; u16 gameClear:1; u16 version:4; + u16 unused:2; u8 playerTrainerId[2]; }; -struct __attribute__((packed, aligned(2))) GFtgtGname +// This struct is sent via the Wireless Adapter as the game name or "gname" data. +// Gname is only applicable during Wireless Single Game Pak Multiplay, when the +// adapter needs this data for connection. Per the RFU manual, during "normal" +// wireless play (the kind the PokĂ©mon games use) the gname data can be used for +// anything the developers want. This struct is what GF decided to use it for. +// It can be up to 13 bytes in size (RFU_GAME_NAME_LENGTH). +// The player's name is sent separately as the username ("uname"), and does not +// use a struct (gHostRfuUsername). +struct __attribute__((packed, aligned(2))) RfuGameData { - struct GFtgtGnameSub unk_00; - u8 child_sprite_gender[RFU_CHILD_MAX]; // u8 sprite_idx:3; - // u8 gender:1; - // u8 unk_4:3 - // u8 active:1 - u16 species:10; - u16 type:6; + struct RfuGameCompatibilityData compatibility; + u8 partnerInfo[RFU_CHILD_MAX]; + u16 tradeSpecies:10; + u16 tradeType:6; u8 activity:7; - u8 started:1; + u8 startedActivity:1; u8 playerGender:1; - u8 level:7; + u8 tradeLevel:7; u8 padding; -}; // size: RFU_GNAME_SIZE +}; + +// Constants for getting/setting information in 'partnerInfo' of RfuGameData. +// This data is used to determine what the link partners look like from +// the host's perspective. +// Bits 0-2 are a shortened trainerId +// Bit 3 is the player's gender +// Bits 4-6 are unknown/unused +// Bit 7 is an 'active' flag +#define PINFO_TID_MASK 0x7 +#define PINFO_GENDER_SHIFT 3 +#define PINFO_ACTIVE_FLAG (1 << 7) struct RfuBlockSend { @@ -136,7 +152,8 @@ struct RfuBackupQueue /* 0x1e */ vu8 count; }; -struct GFRfuManager +// Stores data needed for the RFU on GF's end +struct RfuManager { /* 0x000 */ void (*callback)(void); /* 0x004 */ u16 state; @@ -151,7 +168,7 @@ struct GFRfuManager /* 0x014 */ u8 childRecvBuffer[RFU_CHILD_MAX][CHILD_DATA_LENGTH]; /* 0x04c */ u8 childSendBuffer[CHILD_DATA_LENGTH]; /* 0x05a */ u8 blockRequestType; - /* 0x05b */ u8 unk_5b; + /* 0x05b */ u8 blockSendAttempts; /* 0x05c */ bool8 blockReceived[MAX_RFU_PLAYERS]; /* 0x061 */ bool8 numBlocksReceived[MAX_RFU_PLAYERS]; /* 0x066 */ u8 idleTaskId; @@ -170,9 +187,9 @@ struct GFRfuManager /* 0x100 */ u16 allReadyNum; /* 0x102 */ u8 unk_102; /* 0x103 */ u8 filler_103[7]; - /* 0x10A */ struct GFtgtGname unk_10A; + /* 0x10A */ struct RfuGameData parent; u8 filler_; - u8 playerName[PLAYER_NAME_LENGTH + 1]; + u8 parentName[RFU_USER_NAME_LENGTH]; /* 0x124 */ struct RfuRecvQueue recvQueue; /* 0x9e8 */ struct RfuSendQueue sendQueue; /* 0xc1c */ struct RfuBackupQueue backupQueue; @@ -180,7 +197,7 @@ struct GFRfuManager /* 0xc3d */ u8 unk_c3d; /* 0xc3e */ vu8 childSlot; /* 0xc3f */ u8 unk_c3f[70]; - /* 0xc85 */ u8 unk_c85; + /* 0xc85 */ u8 leaveGroupStatus; /* 0xc86 */ u8 recvStatus; /* 0xc87 */ u8 recvCmds[5][7][2]; /* 0xccd */ u8 parentId; @@ -198,18 +215,18 @@ struct GFRfuManager /* 0xce2 */ u8 unk_ce2; /* 0xce2 */ u8 disconnectSlots; /* 0xce4 */ u8 disconnectMode; - /* 0xce5 */ u8 unk_ce5; - /* 0xce5 */ u8 unk_ce6; + /* 0xce5 */ u8 nextChildBits; + /* 0xce5 */ u8 newChildQueue; /* 0xce7 */ u8 acceptSlot_flag; /* 0xce8 */ bool8 unk_ce8; - /* 0xce9 */ u8 unk_ce9; + /* 0xce9 */ u8 incomingChild; /* 0xcea */ u8 unk_cea[4]; /* 0xcee */ u8 unk_cee[4]; }; // size = 0xcf4 -extern struct GFtgtGname gHostRFUtgtGnameBuffer; -extern u8 gHostRFUtgtUnameBuffer[]; -extern struct GFRfuManager Rfu; +extern struct RfuGameData gHostRfuGameData; +extern u8 gHostRfuUsername[]; +extern struct RfuManager gRfu; extern u8 gWirelessStatusIndicatorSpriteId; void WipeTrainerNameRecords(void); @@ -241,13 +258,13 @@ u32 GetRfuRecvQueueLength(void); void RfuVSync(void); void RfuSetIgnoreError(bool32 enable); u8 RfuGetStatus(void); -struct GFtgtGname *GetHostRFUtgtGname(void); -void UpdateGameData_GroupLockedIn(u8 started); +struct RfuGameData *GetHostRfuGameData(void); +void UpdateGameData_GroupLockedIn(u8 startedActivity); void GetLinkmanErrorParams(u32 msg); void RfuSetStatus(u8 status, u16 msg); u8 Rfu_SetLinkRecovery(bool32 enable); -void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *buff1, u8 *buff2); -void SetHostRFUtgtGname(u8 activity, u32 child_sprite_genders, bool32 started); +void CopyHostRfuGameDataAndUsername(struct RfuGameData *buff1, u8 *buff2); +void SetHostRfuGameData(u8 activity, u32 partnerInfo, bool32 startedActivity); void InitializeRfuLinkManager_LinkLeader(u32 a0); bool32 IsRfuCommunicatingWithAllChildren(void); void LinkRfu_StopManagerAndFinalizeSlots(void); @@ -264,22 +281,22 @@ void SendLeaveGroupNotice(void); void RecordMixTrainerNames(void); void LinkRfu_CreateConnectionAsParent(void); void LinkRfu_StopManagerBeforeEnteringChat(void); -void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 started); +void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 startedActivity); void CreateTask_RfuReconnectWithParent(const u8 *src, u16 trainerId); -void SetGnameBufferWonderFlags(bool32 hasNews, bool32 hasCard); -void ClearAndInitHostRFUtgtGname(void); +void SetHostRfuWonderFlags(bool32 hasNews, bool32 hasCard); +void ResetHostRfuGameData(void); void SetTradeBoardRegisteredMonInfo(u32 type, u32 species, u32 level); void InitializeRfuLinkManager_EnterUnionRoom(void); -void sub_8012188(const u8 *name, struct GFtgtGname *structPtr, u8 a2); +void TryConnectToUnionRoomParent(const u8 *name, struct RfuGameData *structPtr, u8 a2); bool32 IsUnionRoomListenTaskActive(void); void Rfu_SendPacket(void *data); bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); void Rfu_DisconnectPlayerById(u32 playerIdx); u8 GetLinkPlayerInfoFlags(s32 playerId); void sub_800EF7C(void); -bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx); -bool8 LinkRfu_GetNameIfSerial7F7D(struct GFtgtGname *buff1, u8 *buff2, u8 idx); -s32 sub_800E87C(u8 idx); +bool8 Rfu_GetCompatiblePlayerData(struct RfuGameData *player, u8 *username, u8 idx); +bool8 Rfu_GetWonderDistributorPlayerData(struct RfuGameData *player, u8 *username, u8 idx); +s32 Rfu_GetIndexOfNewestChild(u8 bits); void CreateTask_RfuIdle(void); void DestroyTask_RfuIdle(void); void ClearRecvCommands(void); @@ -298,7 +315,7 @@ bool8 RfuRecvQueue_Dequeue(struct RfuRecvQueue *queue, u8 *dest); bool8 RfuSendQueue_Dequeue(struct RfuSendQueue *queue, u8 *dest); void RfuBackupQueue_Enqueue(struct RfuBackupQueue *queue, const u8 *q2); bool8 RfuBackupQueue_Dequeue(struct RfuBackupQueue *queue, u8 *q2); -void InitHostRFUtgtGname(struct GFtgtGname *data, u8 activity, bool32 started, s32 child_sprite_genders); +void InitHostRfuGameData(struct RfuGameData *data, u8 activity, bool32 startedActivity, s32 partnerInfo); void CreateWirelessStatusIndicatorSprite(u8 x, u8 y); void DestroyWirelessStatusIndicatorSprite(void); void LoadWirelessStatusIndicatorSpriteGfx(void); diff --git a/include/trade.h b/include/trade.h index bd8ef8f63eed..05a905ab317c 100644 --- a/include/trade.h +++ b/include/trade.h @@ -16,8 +16,8 @@ extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate; s32 GetGameProgressForLinkTrade(void); void CB2_StartCreateTradeMenu(void); void CB2_LinkTrade(void); -int CanRegisterMonForTradingBoard(struct GFtgtGnameSub a0, u16, u16, u8); -int GetUnionRoomTradeMessageId(struct GFtgtGnameSub a0, struct GFtgtGnameSub a1, u16 a2, u16 a3, u8 a4, u16 a5, u8 a6); +int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData a0, u16, u16, u8); +int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData a0, struct RfuGameCompatibilityData a1, u16 a2, u16 a3, u8 a4, u16 a5, u8 a6); int CanSpinTradeMon(struct Pokemon*, u16); void InitTradeSequenceBgGpuRegs(void); void LinkTradeDrawWindow(void); diff --git a/include/union_room.h b/include/union_room.h index 563a048d32a7..11dbccf70516 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -5,23 +5,30 @@ #include "link.h" #include "constants/union_room.h" -// Exported type declarations - -struct WirelessGnameUnamePair +// In the Union Room the player is only ever connected to ≤ 4 other players. +// However, there can be up to MAX_UNION_ROOM_LEADERS (8) object events to +// represent leaders of recently discovered link groups, and each of those groups +// may have up to MAX_RFU_PLAYERS (5) players in it including the leader. +// These players are represented on-screen by NPC sprites drawn around the leader. +// Thus there can be 40 sprites of other players on-screen, in 8 groups of 5. +#define NUM_UNION_ROOM_SPRITES (MAX_UNION_ROOM_LEADERS * MAX_RFU_PLAYERS) + +// The maximum number of recently connected players that can be tracked. +// Note that this is significantly less than NUM_UNION_ROOM_SPRITES, i.e. not +// every player that can be shown in the Union Room can be tracked at once. +// Information such as a group member's gender can instead be read from partnerInfo +// of the leader's RfuGameData by tracking at least all of the group leaders. +#define MAX_RFU_PLAYER_LIST_SIZE 16 + +struct RfuPlayerData { - struct GFtgtGname gname; - u8 ALIGNED(4) playerName[PLAYER_NAME_LENGTH + 1]; + struct RfuGameData data; + u8 ALIGNED(4) name[RFU_USER_NAME_LENGTH]; }; -struct UnkStruct_x1C +struct RfuPlayer { - struct WirelessGnameUnamePair gname_uname; - u8 active:1; -}; - -struct UnkStruct_x20 -{ - struct WirelessGnameUnamePair gname_uname; + struct RfuPlayerData rfu; u16 timeoutCounter; u8 groupScheduledAnim:2; bool8 useRedText:1; // Never set @@ -29,26 +36,27 @@ struct UnkStruct_x20 u8 filler[3]; }; -struct UnkStruct_Main0 +struct RfuPlayerList { - struct UnkStruct_x20 arr[MAX_UNION_ROOM_PLAYERS]; + struct RfuPlayer players[MAX_RFU_PLAYER_LIST_SIZE]; }; -struct UnkStruct_Main4 +struct RfuIncomingPlayer { - struct UnkStruct_x1C arr[MAX_RFU_PLAYERS]; + struct RfuPlayerData rfu; + bool8 active:1; }; -struct UnkStruct_Main8 +struct RfuIncomingPlayerList { - struct UnkStruct_x20 arr[MAX_RFU_PLAYERS]; + struct RfuIncomingPlayer players[MAX_RFU_PLAYERS]; }; struct WirelessLink_Leader { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; - struct UnkStruct_Main8 *field_8; + struct RfuPlayerList *playerList; + struct RfuIncomingPlayerList *incomingPlayerList; + struct RfuPlayerList *playerListBackup; u8 state; u8 textState; u8 delayTimerAfterOk; @@ -57,8 +65,8 @@ struct WirelessLink_Leader u8 nPlayerModeWindowId; u8 listTaskId; u8 playerCount; - u16 field_14; - u8 field_16; + u16 yesNoWindowId; + u8 unused; u8 listenTaskId; u8 activity; u8 joinRequestAnswer; @@ -67,20 +75,20 @@ struct WirelessLink_Leader struct WirelessLink_Group { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; + struct RfuPlayerList *playerList; + struct RfuIncomingPlayerList *incomingPlayerList; u8 state; u8 textState; - u8 field_A; + u8 delayTimerAfterOk; // Unused u8 listWindowId; u8 bButtonCancelWindowId; u8 playerNameAndIdWindowId; u8 listTaskId; u8 leaderId; - u8 field_10; + u8 unused; u8 listenTaskId; - u8 isWonderNews; - u8 field_13; + bool8 isWonderNews; + bool8 showListMenu; // Never set u8 refreshTimer; u8 delayBeforePrint; }; @@ -95,10 +103,10 @@ struct UnionRoomObject struct WirelessLink_URoom { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; - struct UnkStruct_Main0 *field_8; - struct UnkStruct_Main4 *field_C; + struct RfuPlayerList *playerList; + struct RfuIncomingPlayerList *incomingChildList; + struct RfuPlayerList *spawnPlayer; + struct RfuIncomingPlayerList *incomingParentList; u16 unknown; // Never read u16 field_12; u8 state; @@ -107,56 +115,42 @@ struct WirelessLink_URoom u8 filler[4]; u8 topListMenuWindowId; u8 topListMenuId; - u8 tradeBoardSelectWindowId; - u8 tradeBoardDetailsWindowId; + u8 tradeBoardMainWindowId; + u8 tradeBoardHeaderWindowId; u8 unused1; u8 searchTaskId; - u8 spriteIds[40]; + u8 spriteIds[NUM_UNION_ROOM_SPRITES]; u8 unused2; u8 tradeBoardListMenuId; u16 playerSendBuffer[6]; u8 activityRequestStrbufs[4][16]; u16 partnerYesNoResponse; u16 recvActivityRequest[3]; - struct UnionRoomObject objects[MAX_UNION_ROOM_PLAYERS]; + struct UnionRoomObject objects[MAX_UNION_ROOM_LEADERS]; u8 trainerCardStrBuffer[12][15]; u8 trainerCardColorStrBuffer[48]; u8 trainerCardMsgStrBuffer[200]; }; -union WirelessLink_Main -{ - struct WirelessLink_Leader *leader; - struct WirelessLink_Group *group; - struct WirelessLink_URoom *uRoom; -}; - struct UnionRoomTrade { u16 state; u16 type; u32 playerPersonality; u8 offerPlayerId; - u8 filler1; u16 playerSpecies; u16 playerLevel; u16 species; u16 level; - u16 filler2; u32 personality; }; -// Exported RAM declarations - extern u8 gPlayerCurrActivity; -extern union WirelessLink_Main gUnknown_02022C30; -extern struct GFtgtGnameSub gPartnerTgtGnameSub; +extern struct RfuGameCompatibilityData gRfuPartnerCompatibilityData; extern u16 gUnionRoomOfferedSpecies; extern u8 gUnionRoomRequestedMonType; -// Exported ROM declarations - u8 CreateTask_CreateTradeMenu(void); void SetUsingUnionRoomStartMenu(void); void MEvent_CreateTask_CardOrNewsWithFriend(u32 arg0); diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h index c7add758a0a7..e6526739f2d7 100644 --- a/include/union_room_player_avatar.h +++ b/include/union_room_player_avatar.h @@ -3,12 +3,12 @@ u8 InitUnionRoomPlayerObjects(struct UnionRoomObject *players); void DestroyUnionRoomPlayerObjects(void); -void CreateGroupMemberSpritesInvisible(u8 *spriteIds, s32 playerIdx); -void DestroyGroupMemberSprites(u8 *spriteIds); +void CreateUnionRoomPlayerSprites(u8 *spriteIds, s32 playerIdx); +void DestroyUnionRoomPlayerSprites(u8 *spriteIds); void SetTilesAroundUnionRoomPlayersPassable(void); void ScheduleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); void HandleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); -bool32 TryInteractWithUnionRoomMember(struct UnkStruct_Main0 *main0, s16 *directionPtr, s16 *playerIdxPtr, u8 *spriteIds); -void UpdateUnionRoomMemberFacing(u32 currDirection, u32 playerIdx, struct UnkStruct_Main0 *main0); +bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *main0, s16 *directionPtr, s16 *playerIdxPtr, u8 *spriteIds); +void UpdateUnionRoomMemberFacing(u32 currDirection, u32 playerIdx, struct RfuPlayerList *main0); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/src/berry_crush.c b/src/berry_crush.c index fd0d86c7e472..a9818016e936 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -984,12 +984,12 @@ static u32 QuitBerryCrush(MainCallback exitCallback) return 0; } -#define ERROR_EXIT(exitCallback) \ - { \ - SetMainCallback2(exitCallback); \ - Rfu.unk_10 = 0; \ - Rfu.unk_12 = 0; \ - Rfu.errorState = RFU_ERROR_STATE_1; \ +#define ERROR_EXIT(exitCallback) \ + { \ + SetMainCallback2(exitCallback); \ + gRfu.unk_10 = 0; \ + gRfu.unk_12 = 0; \ + gRfu.errorState = RFU_ERROR_STATE_1; \ } void StartBerryCrush(MainCallback exitCallback) diff --git a/src/data/union_room.h b/src/data/union_room.h index a13068146715..80d1e517cd2e 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -1,29 +1,27 @@ -// const rom data - ALIGNED(4) static const u8 sText_EmptyString[] = _(""); -ALIGNED(4) const u8 sText_Colon[] = _(":"); -ALIGNED(4) const u8 sText_ID[] = _("{ID}"); -ALIGNED(4) const u8 sText_PleaseStartOver[] = _("Please start over from the beginning."); -ALIGNED(4) const u8 sText_WirelessSearchCanceled[] = _("The WIRELESS COMMUNICATION\nSYSTEM search has been canceled."); -ALIGNED(4) const u8 sText_AwaitingCommunucation2[] = _("Awaiting communication\nfrom another player."); // Unused -ALIGNED(4) const u8 sText_AwaitingCommunication[] = _("{STR_VAR_1}! Awaiting\ncommunication from another player."); -ALIGNED(4) const u8 sText_AwaitingLinkPressStart[] = _("{STR_VAR_1}! Awaiting link!\nPress START when everyone's ready."); -ALIGNED(4) const u8 sJPText_SingleBattle[] = _("ă‚·ăłă‚°ă«ăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_DoubleBattle[] = _("ă€ă–ă«ăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_MultiBattle[] = _("ăžă«ăăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_TradePokemon[] = _("ăťă‚±ă˘ăłă“ă†ă‹ă‚“ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_Chat[] = _("ăăŁăăă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_DistWonderCard[] = _("ăµă—ăŽăŞă‚«ăĽă‰ă‚’ăŹă°ă‚‹"); -ALIGNED(4) const u8 sJPText_DistWonderNews[] = _("ăµă—ăŽăŞă‹ăĄăĽă‚ąă‚’ăŹă°ă‚‹"); -ALIGNED(4) const u8 sJPText_DistMysteryEvent[] = _("ăµă—ăŽăŞă§ăŤă”ă¨ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); // Unused -ALIGNED(4) const u8 sJPText_HoldPokemonJump[] = _("ăŞă‚Źă¨ăłă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_HoldBerryCrush[] = _("ăŤă®ăżăžăă‚·ăŁăĽă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_HoldBerryPicking[] = _("ăŤă®ăżă©ă‚Šă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_HoldSpinTrade[] = _("ăă‚‹ăă‚‹ă“ă†ă‹ă‚“ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); -ALIGNED(4) const u8 sJPText_HoldSpinShop[] = _("ăă‚‹ăă‚‹ă‚·ă§ăă—ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sText_Colon[] = _(":"); +ALIGNED(4) static const u8 sText_ID[] = _("{ID}"); +ALIGNED(4) static const u8 sText_PleaseStartOver[] = _("Please start over from the beginning."); +ALIGNED(4) static const u8 sText_WirelessSearchCanceled[] = _("The WIRELESS COMMUNICATION\nSYSTEM search has been canceled."); +ALIGNED(4) static const u8 sText_AwaitingCommunucation2[] = _("Awaiting communication\nfrom another player."); // Unused +ALIGNED(4) static const u8 sText_AwaitingCommunication[] = _("{STR_VAR_1}! Awaiting\ncommunication from another player."); +ALIGNED(4) static const u8 sText_AwaitingLinkPressStart[] = _("{STR_VAR_1}! Awaiting link!\nPress START when everyone's ready."); +ALIGNED(4) static const u8 sJPText_SingleBattle[] = _("ă‚·ăłă‚°ă«ăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_DoubleBattle[] = _("ă€ă–ă«ăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_MultiBattle[] = _("ăžă«ăăăă«ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_TradePokemon[] = _("ăťă‚±ă˘ăłă“ă†ă‹ă‚“ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_Chat[] = _("ăăŁăăă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_DistWonderCard[] = _("ăµă—ăŽăŞă‚«ăĽă‰ă‚’ăŹă°ă‚‹"); +ALIGNED(4) static const u8 sJPText_DistWonderNews[] = _("ăµă—ăŽăŞă‹ăĄăĽă‚ąă‚’ăŹă°ă‚‹"); +ALIGNED(4) static const u8 sJPText_DistMysteryEvent[] = _("ăµă—ăŽăŞă§ăŤă”ă¨ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); // Unused +ALIGNED(4) static const u8 sJPText_HoldPokemonJump[] = _("ăŞă‚Źă¨ăłă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_HoldBerryCrush[] = _("ăŤă®ăżăžăă‚·ăŁăĽă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_HoldBerryPicking[] = _("ăŤă®ăżă©ă‚Šă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_HoldSpinTrade[] = _("ăă‚‹ăă‚‹ă“ă†ă‹ă‚“ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); +ALIGNED(4) static const u8 sJPText_HoldSpinShop[] = _("ăă‚‹ăă‚‹ă‚·ă§ăă—ă‚’ ă‹ă„ă•ă„ă™ă‚‹"); // Unused -const u8 *const sJPLinkGroupActionTexts[] = { +static const u8 *const sJPLinkGroupActionTexts[] = { sJPText_SingleBattle, sJPText_DoubleBattle, sJPText_MultiBattle, @@ -40,14 +38,14 @@ const u8 *const sJPLinkGroupActionTexts[] = { sJPText_HoldSpinShop }; -const u8 sText_1PlayerNeeded[] = _("1 player\nneeded."); -const u8 sText_2PlayersNeeded[] = _("2 players\nneeded."); -const u8 sText_3PlayersNeeded[] = _("3 players\nneeded."); -const u8 sText_4PlayersNeeded[] = _("4 players\nneeded."); -const u8 sText_2PlayerMode[] = _("2-PLAYER\nMODE"); -const u8 sText_3PlayerMode[] = _("3-PLAYER\nMODE"); -const u8 sText_4PlayerMode[] = _("4-PLAYER\nMODE"); -const u8 sText_5PlayerMode[] = _("5-PLAYER\nMODE"); +static const u8 sText_1PlayerNeeded[] = _("1 player\nneeded."); +static const u8 sText_2PlayersNeeded[] = _("2 players\nneeded."); +static const u8 sText_3PlayersNeeded[] = _("3 players\nneeded."); +static const u8 sText_4PlayersNeeded[] = _("4 players\nneeded."); +static const u8 sText_2PlayerMode[] = _("2-PLAYER\nMODE"); +static const u8 sText_3PlayerMode[] = _("3-PLAYER\nMODE"); +static const u8 sText_4PlayerMode[] = _("4-PLAYER\nMODE"); +static const u8 sText_5PlayerMode[] = _("5-PLAYER\nMODE"); static const u8 *const sPlayersNeededOrModeTexts[][5] = { // 2 players required @@ -87,38 +85,38 @@ static const u8 *const sPlayersNeededOrModeTexts[][5] = { } }; -ALIGNED(4) const u8 sText_BButtonCancel[] = _("{B_BUTTON}CANCEL"); -ALIGNED(4) const u8 sJPText_SearchingForParticipants[] = _("ăźă‚\nă•ă‚“ă‹ă—ă‚ ăĽă—ă‚…ă†ăˇă‚…ㆠă§ă™ďĽ"); // Unused, may have been cut off -ALIGNED(4) const u8 sText_PlayerContactedYouForXAccept[] = _("{STR_VAR_2} contacted you for\n{STR_VAR_1}. Accept?"); -ALIGNED(4) const u8 sText_PlayerContactedYouShareX[] = _("{STR_VAR_2} contacted you.\nWill you share {STR_VAR_1}?"); -ALIGNED(4) const u8 sText_PlayerContactedYouAddToMembers[] = _("{STR_VAR_2} contacted you.\nAdd to the members?"); -ALIGNED(4) const u8 sText_AreTheseMembersOK[] = _("{STR_VAR_1}!\nAre these members OK?"); -ALIGNED(4) const u8 sText_CancelModeWithTheseMembers[] = _("Cancel {STR_VAR_1} MODE\nwith these members?"); -ALIGNED(4) const u8 sText_AnOKWasSentToPlayer[] = _("An “OK” was sent\nto {STR_VAR_1}."); -ALIGNED(4) const u8 sText_OtherTrainerUnavailableNow[] = _("The other TRAINER doesn't appear\nto be available now…\p"); -ALIGNED(4) const u8 sText_CantTransmitTrainerTooFar[] = _("You can't transmit with a TRAINER\nwho is too far away.\p"); -ALIGNED(4) const u8 sText_TrainersNotReadyYet[] = _("The other TRAINER(S) is/are not\nready yet.\p"); +ALIGNED(4) static const u8 sText_BButtonCancel[] = _("{B_BUTTON}CANCEL"); +ALIGNED(4) static const u8 sJPText_SearchingForParticipants[] = _("ăźă‚\nă•ă‚“ă‹ă—ă‚ ăĽă—ă‚…ă†ăˇă‚…ㆠă§ă™ďĽ"); // Unused, may have been cut off +ALIGNED(4) static const u8 sText_PlayerContactedYouForXAccept[] = _("{STR_VAR_2} contacted you for\n{STR_VAR_1}. Accept?"); +ALIGNED(4) static const u8 sText_PlayerContactedYouShareX[] = _("{STR_VAR_2} contacted you.\nWill you share {STR_VAR_1}?"); +ALIGNED(4) static const u8 sText_PlayerContactedYouAddToMembers[] = _("{STR_VAR_2} contacted you.\nAdd to the members?"); +ALIGNED(4) static const u8 sText_AreTheseMembersOK[] = _("{STR_VAR_1}!\nAre these members OK?"); +ALIGNED(4) static const u8 sText_CancelModeWithTheseMembers[] = _("Cancel {STR_VAR_1} MODE\nwith these members?"); +ALIGNED(4) static const u8 sText_AnOKWasSentToPlayer[] = _("An “OK” was sent\nto {STR_VAR_1}."); +ALIGNED(4) static const u8 sText_OtherTrainerUnavailableNow[] = _("The other TRAINER doesn't appear\nto be available now…\p"); +ALIGNED(4) static const u8 sText_CantTransmitTrainerTooFar[] = _("You can't transmit with a TRAINER\nwho is too far away.\p"); +ALIGNED(4) static const u8 sText_TrainersNotReadyYet[] = _("The other TRAINER(S) is/are not\nready yet.\p"); static const u8 *const sCantTransmitToTrainerTexts[] = { [UR_TRADE_PLAYER_NOT_READY - 1] = sText_CantTransmitTrainerTooFar, [UR_TRADE_PARTNER_NOT_READY - 1] = sText_TrainersNotReadyYet }; -ALIGNED(4) const u8 sText_ModeWithTheseMembersWillBeCanceled[] = _("The {STR_VAR_1} MODE with\nthese members will be canceled.{PAUSE 60}"); -ALIGNED(4) const u8 sText_MemberNoLongerAvailable[] = _("There is a member who can no\nlonger remain available.\p"); +ALIGNED(4) static const u8 sText_ModeWithTheseMembersWillBeCanceled[] = _("The {STR_VAR_1} MODE with\nthese members will be canceled.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_MemberNoLongerAvailable[] = _("There is a member who can no\nlonger remain available.\p"); static const u8 *const sPlayerUnavailableTexts[] = { sText_OtherTrainerUnavailableNow, sText_MemberNoLongerAvailable }; -ALIGNED(4) const u8 sText_TrainerAppearsUnavailable[] = _("The other TRAINER appears\nunavailable…\p"); -ALIGNED(4) const u8 sText_PlayerSentBackOK[] = _("{STR_VAR_1} sent back an “OK”!"); -ALIGNED(4) const u8 sText_PlayerOKdRegistration[] = _("{STR_VAR_1} OK'd your registration as\na member."); -ALIGNED(4) const u8 sText_PlayerRepliedNo[] = _("{STR_VAR_1} replied, “No…”\p"); -ALIGNED(4) const u8 sText_AwaitingOtherMembers[] = _("{STR_VAR_1}!\nAwaiting other members!"); -ALIGNED(4) const u8 sText_QuitBeingMember[] = _("Quit being a member?"); -ALIGNED(4) const u8 sText_StoppedBeingMember[] = _("You stopped being a member.\p"); +ALIGNED(4) static const u8 sText_TrainerAppearsUnavailable[] = _("The other TRAINER appears\nunavailable…\p"); +ALIGNED(4) static const u8 sText_PlayerSentBackOK[] = _("{STR_VAR_1} sent back an “OK”!"); +ALIGNED(4) static const u8 sText_PlayerOKdRegistration[] = _("{STR_VAR_1} OK'd your registration as\na member."); +ALIGNED(4) static const u8 sText_PlayerRepliedNo[] = _("{STR_VAR_1} replied, “No…”\p"); +ALIGNED(4) static const u8 sText_AwaitingOtherMembers[] = _("{STR_VAR_1}!\nAwaiting other members!"); +ALIGNED(4) static const u8 sText_QuitBeingMember[] = _("Quit being a member?"); +ALIGNED(4) static const u8 sText_StoppedBeingMember[] = _("You stopped being a member.\p"); static const u8 *const sPlayerDisconnectedTexts[] = { [RFU_STATUS_OK] = NULL, @@ -133,12 +131,12 @@ static const u8 *const sPlayerDisconnectedTexts[] = { [RFU_STATUS_LEAVE_GROUP] = sText_StoppedBeingMember }; -ALIGNED(4) const u8 sText_WirelessLinkEstablished[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been established."); -ALIGNED(4) const u8 sText_WirelessLinkDropped[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been dropped…"); -ALIGNED(4) const u8 sText_LinkWithFriendDropped[] = _("The link with your friend has been\ndropped…"); -ALIGNED(4) const u8 sText_PlayerRepliedNo2[] = _("{STR_VAR_1} replied, “No…”"); +ALIGNED(4) static const u8 sText_WirelessLinkEstablished[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been established."); +ALIGNED(4) static const u8 sText_WirelessLinkDropped[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been dropped…"); +ALIGNED(4) static const u8 sText_LinkWithFriendDropped[] = _("The link with your friend has been\ndropped…"); +ALIGNED(4) static const u8 sText_PlayerRepliedNo2[] = _("{STR_VAR_1} replied, “No…”"); -const u8 *const sLinkDroppedTexts[] = { +static const u8 *const sLinkDroppedTexts[] = { [RFU_STATUS_OK] = NULL, [RFU_STATUS_FATAL_ERROR] = sText_LinkWithFriendDropped, [RFU_STATUS_CONNECTION_ERROR] = sText_LinkWithFriendDropped, @@ -151,8 +149,8 @@ const u8 *const sLinkDroppedTexts[] = { [RFU_STATUS_LEAVE_GROUP] = NULL }; -ALIGNED(4) const u8 sText_DoYouWantXMode[] = _("Do you want the {STR_VAR_2}\nMODE?"); -ALIGNED(4) const u8 sText_DoYouWantXMode2[] = _("Do you want the {STR_VAR_2}\nMODE?"); +ALIGNED(4) static const u8 sText_DoYouWantXMode[] = _("Do you want the {STR_VAR_2}\nMODE?"); +ALIGNED(4) static const u8 sText_DoYouWantXMode2[] = _("Do you want the {STR_VAR_2}\nMODE?"); // Unused static const u8 *const sDoYouWantModeTexts[] = { @@ -160,11 +158,14 @@ static const u8 *const sDoYouWantModeTexts[] = { sText_DoYouWantXMode2 }; -ALIGNED(4) const u8 sText_CommunicatingPleaseWait[] = _("Communicating…\nPlease wait."); // Unused -ALIGNED(4) const u8 sText_AwaitingPlayersResponseAboutTrade[] = _("Awaiting {STR_VAR_1}'s response about\nthe trade…"); -ALIGNED(4) const u8 sText_Communicating[] = _("Communicating{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); -ALIGNED(4) const u8 sText_CommunicatingWithPlayer[] = _("Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); -ALIGNED(4) const u8 sText_PleaseWaitAWhile[] = _("Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); +ALIGNED(4) static const u8 sText_CommunicatingPleaseWait[] = _("Communicating…\nPlease wait."); // Unused +ALIGNED(4) static const u8 sText_AwaitingPlayersResponseAboutTrade[] = _("Awaiting {STR_VAR_1}'s response about\nthe trade…"); +ALIGNED(4) static const u8 sText_Communicating[] = _("Communicating{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); +ALIGNED(4) static const u8 sText_CommunicatingWithPlayer[] = _("Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); +ALIGNED(4) static const u8 sText_PleaseWaitAWhile[] = _("Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); static const u8 *const sCommunicatingWaitTexts[] = { sText_Communicating, @@ -172,10 +173,10 @@ static const u8 *const sCommunicatingWaitTexts[] = { sText_PleaseWaitAWhile }; -ALIGNED(4) const u8 sText_HiDoSomethingMale[] = _("Hiya! Is there something that you\nwanted to do?"); -ALIGNED(4) const u8 sText_HiDoSomethingFemale[] = _("Hello!\nWould you like to do something?"); -ALIGNED(4) const u8 sText_HiDoSomethingAgainMale[] = _("{STR_VAR_1}: Hiya, we meet again!\nWhat are you up for this time?"); -ALIGNED(4) const u8 sText_HiDoSomethingAgainFemale[] = _("{STR_VAR_1}: Oh! {PLAYER}, hello!\nWould you like to do something?"); +ALIGNED(4) static const u8 sText_HiDoSomethingMale[] = _("Hiya! Is there something that you\nwanted to do?"); +ALIGNED(4) static const u8 sText_HiDoSomethingFemale[] = _("Hello!\nWould you like to do something?"); +ALIGNED(4) static const u8 sText_HiDoSomethingAgainMale[] = _("{STR_VAR_1}: Hiya, we meet again!\nWhat are you up for this time?"); +ALIGNED(4) static const u8 sText_HiDoSomethingAgainFemale[] = _("{STR_VAR_1}: Oh! {PLAYER}, hello!\nWould you like to do something?"); static const u8 *const sHiDoSomethingTexts[][GENDER_COUNT] = { { @@ -187,10 +188,10 @@ static const u8 *const sHiDoSomethingTexts[][GENDER_COUNT] = { } }; -ALIGNED(4) const u8 sText_DoSomethingMale[] = _("Want to do something?"); -ALIGNED(4) const u8 sText_DoSomethingFemale[] = _("Would you like to do something?"); -ALIGNED(4) const u8 sText_DoSomethingAgainMale[] = _("{STR_VAR_1}: What would you like to\ndo now?"); -ALIGNED(4) const u8 sText_DoSomethingAgainFemale[] = _("{STR_VAR_1}: Want to do anything else?"); // Unused +ALIGNED(4) static const u8 sText_DoSomethingMale[] = _("Want to do something?"); +ALIGNED(4) static const u8 sText_DoSomethingFemale[] = _("Would you like to do something?"); +ALIGNED(4) static const u8 sText_DoSomethingAgainMale[] = _("{STR_VAR_1}: What would you like to\ndo now?"); +ALIGNED(4) static const u8 sText_DoSomethingAgainFemale[] = _("{STR_VAR_1}: Want to do anything else?"); // Unused // Unused static const u8 *const sDoSomethingTexts[][GENDER_COUNT] = { @@ -203,31 +204,31 @@ static const u8 *const sDoSomethingTexts[][GENDER_COUNT] = { } }; -ALIGNED(4) const u8 sText_SomebodyHasContactedYou[] = _("Somebody has contacted you.{PAUSE 60}"); -ALIGNED(4) const u8 sText_PlayerHasContactedYou[] = _("{STR_VAR_1} has contacted you.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_SomebodyHasContactedYou[] = _("Somebody has contacted you.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_PlayerHasContactedYou[] = _("{STR_VAR_1} has contacted you.{PAUSE 60}"); static const u8 *const sPlayerContactedYouTexts[] = { sText_SomebodyHasContactedYou, sText_PlayerHasContactedYou }; -ALIGNED(4) const u8 sText_AwaitingResponseFromTrainer[] = _("Awaiting a response from\nthe other TRAINER…"); -ALIGNED(4) const u8 sText_AwaitingResponseFromPlayer[] = _("Awaiting a response from\n{STR_VAR_1}…"); +ALIGNED(4) static const u8 sText_AwaitingResponseFromTrainer[] = _("Awaiting a response from\nthe other TRAINER…"); +ALIGNED(4) static const u8 sText_AwaitingResponseFromPlayer[] = _("Awaiting a response from\n{STR_VAR_1}…"); static const u8 *const sAwaitingResponseTexts[] = { sText_AwaitingResponseFromTrainer, sText_AwaitingResponseFromPlayer }; -ALIGNED(4) const u8 sText_ShowTrainerCard[] = _("The other TRAINER showed\nyou their TRAINER CARD.\pWould you like to show your\nTRAINER CARD?"); -ALIGNED(4) const u8 sText_BattleChallenge[] = _("The other TRAINER challenges you\nto battle.\pWill you accept the battle\nchallenge?"); -ALIGNED(4) const u8 sText_ChatInvitation[] = _("The other TRAINER invites you\nto chat.\pWill you accept the chat\ninvitation?"); -ALIGNED(4) const u8 sText_OfferToTradeMon[] = _("There is an offer to trade your\nregistered Lv. {DYNAMIC 0} {DYNAMIC 1}\pin exchange for a\nLv. {DYNAMIC 2} {DYNAMIC 3}.\pWill you accept this trade\noffer?"); -ALIGNED(4) const u8 sText_OfferToTradeEgg[] = _("There is an offer to trade your\nregistered EGG.\lWill you accept this trade offer?"); -ALIGNED(4) const u8 sText_ChatDropped[] = _("The chat has been dropped.\p"); -ALIGNED(4) const u8 sText_OfferDeclined1[] = _("You declined the offer.\p"); -ALIGNED(4) const u8 sText_OfferDeclined2[] = _("You declined the offer.\p"); -ALIGNED(4) const u8 sText_ChatEnded[] = _("The chat was ended.\p"); +ALIGNED(4) static const u8 sText_ShowTrainerCard[] = _("The other TRAINER showed\nyou their TRAINER CARD.\pWould you like to show your\nTRAINER CARD?"); +ALIGNED(4) static const u8 sText_BattleChallenge[] = _("The other TRAINER challenges you\nto battle.\pWill you accept the battle\nchallenge?"); +ALIGNED(4) static const u8 sText_ChatInvitation[] = _("The other TRAINER invites you\nto chat.\pWill you accept the chat\ninvitation?"); +ALIGNED(4) static const u8 sText_OfferToTradeMon[] = _("There is an offer to trade your\nregistered Lv. {DYNAMIC 0} {DYNAMIC 1}\pin exchange for a\nLv. {DYNAMIC 2} {DYNAMIC 3}.\pWill you accept this trade\noffer?"); +ALIGNED(4) static const u8 sText_OfferToTradeEgg[] = _("There is an offer to trade your\nregistered EGG.\lWill you accept this trade offer?"); +ALIGNED(4) static const u8 sText_ChatDropped[] = _("The chat has been dropped.\p"); +ALIGNED(4) static const u8 sText_OfferDeclined1[] = _("You declined the offer.\p"); +ALIGNED(4) static const u8 sText_OfferDeclined2[] = _("You declined the offer.\p"); +ALIGNED(4) static const u8 sText_ChatEnded[] = _("The chat was ended.\p"); // Unused static const u8 *const sInvitationTexts[] = { @@ -237,10 +238,10 @@ static const u8 *const sInvitationTexts[] = { sText_OfferToTradeMon }; -ALIGNED(4) const u8 sText_JoinChatMale[] = _("Oh, hey! We're in a chat right now.\nWant to join us?"); -ALIGNED(4) const u8 sText_PlayerJoinChatMale[] = _("{STR_VAR_1}: Hey, {PLAYER}!\nWe're having a chat right now.\lWant to join us?"); -ALIGNED(4) const u8 sText_JoinChatFemale[] = _("Oh, hi! We're having a chat now.\nWould you like to join us?"); -ALIGNED(4) const u8 sText_PlayerJoinChatFemale[] = _("{STR_VAR_1}: Oh, hi, {PLAYER}!\nWe're having a chat now.\lWould you like to join us?"); +ALIGNED(4) static const u8 sText_JoinChatMale[] = _("Oh, hey! We're in a chat right now.\nWant to join us?"); +ALIGNED(4) static const u8 sText_PlayerJoinChatMale[] = _("{STR_VAR_1}: Hey, {PLAYER}!\nWe're having a chat right now.\lWant to join us?"); +ALIGNED(4) static const u8 sText_JoinChatFemale[] = _("Oh, hi! We're having a chat now.\nWould you like to join us?"); +ALIGNED(4) static const u8 sText_PlayerJoinChatFemale[] = _("{STR_VAR_1}: Oh, hi, {PLAYER}!\nWe're having a chat now.\lWould you like to join us?"); static const u8 *const sJoinChatTexts[][GENDER_COUNT] = { { @@ -252,13 +253,13 @@ static const u8 *const sJoinChatTexts[][GENDER_COUNT] = { } }; -ALIGNED(4) const u8 sText_TrainerAppearsBusy[] = _("……\nThe TRAINER appears to be busy…\p"); -ALIGNED(4) const u8 sText_WaitForBattleMale[] = _("A battle, huh?\nAll right, just give me some time."); -ALIGNED(4) const u8 sText_WaitForChatMale[] = _("You want to chat, huh?\nSure, just wait a little."); -ALIGNED(4) const u8 sText_ShowTrainerCardMale[] = _("Sure thing! As my “Greetings,”\nhere's my TRAINER CARD."); -ALIGNED(4) const u8 sText_WaitForBattleFemale[] = _("A battle? Of course, but I need\ntime to get ready."); -ALIGNED(4) const u8 sText_WaitForChatFemale[] = _("Did you want to chat?\nOkay, but please wait a moment."); -ALIGNED(4) const u8 sText_ShowTrainerCardFemale[] = _("As my introduction, I'll show you\nmy TRAINER CARD."); +ALIGNED(4) static const u8 sText_TrainerAppearsBusy[] = _("……\nThe TRAINER appears to be busy…\p"); +ALIGNED(4) static const u8 sText_WaitForBattleMale[] = _("A battle, huh?\nAll right, just give me some time."); +ALIGNED(4) static const u8 sText_WaitForChatMale[] = _("You want to chat, huh?\nSure, just wait a little."); +ALIGNED(4) static const u8 sText_ShowTrainerCardMale[] = _("Sure thing! As my “Greetings,”\nhere's my TRAINER CARD."); +ALIGNED(4) static const u8 sText_WaitForBattleFemale[] = _("A battle? Of course, but I need\ntime to get ready."); +ALIGNED(4) static const u8 sText_WaitForChatFemale[] = _("Did you want to chat?\nOkay, but please wait a moment."); +ALIGNED(4) static const u8 sText_ShowTrainerCardFemale[] = _("As my introduction, I'll show you\nmy TRAINER CARD."); static const u8 *const sText_WaitOrShowCardTexts[GENDER_COUNT][4] = { { @@ -274,14 +275,14 @@ static const u8 *const sText_WaitOrShowCardTexts[GENDER_COUNT][4] = { } }; -ALIGNED(4) const u8 sText_WaitForChatMale2[] = _("You want to chat, huh?\nSure, just wait a little."); // Unused -ALIGNED(4) const u8 sText_DoneWaitingBattleMale[] = _("Thanks for waiting!\nLet's get our battle started!{PAUSE 60}"); -ALIGNED(4) const u8 sText_DoneWaitingChatMale[] = _("All right!\nLet's chat!{PAUSE 60}"); -ALIGNED(4) const u8 sText_DoneWaitingBattleFemale[] = _("Sorry I made you wait!\nLet's get started!{PAUSE 60}"); -ALIGNED(4) const u8 sText_DoneWaitingChatFemale[] = _("Sorry I made you wait!\nLet's chat.{PAUSE 60}"); -ALIGNED(4) const u8 sText_TradeWillBeStarted[] = _("The trade will be started.{PAUSE 60}"); -ALIGNED(4) const u8 sText_BattleWillBeStarted[] = _("The battle will be started.{PAUSE 60}"); -ALIGNED(4) const u8 sText_EnteringChat[] = _("Entering the chat…{PAUSE 60}"); +ALIGNED(4) static const u8 sText_WaitForChatMale2[] = _("You want to chat, huh?\nSure, just wait a little."); // Unused +ALIGNED(4) static const u8 sText_DoneWaitingBattleMale[] = _("Thanks for waiting!\nLet's get our battle started!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_DoneWaitingChatMale[] = _("All right!\nLet's chat!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_DoneWaitingBattleFemale[] = _("Sorry I made you wait!\nLet's get started!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_DoneWaitingChatFemale[] = _("Sorry I made you wait!\nLet's chat.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_TradeWillBeStarted[] = _("The trade will be started.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_BattleWillBeStarted[] = _("The battle will be started.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_EnteringChat[] = _("Entering the chat…{PAUSE 60}"); static const u8 *const sStartActivityTexts[][GENDER_COUNT][3] = { { @@ -307,36 +308,36 @@ static const u8 *const sStartActivityTexts[][GENDER_COUNT][3] = { } }; -ALIGNED(4) const u8 sText_BattleDeclinedMale[] = _("Sorry! My POKĂ©MON don't seem to\nbe feeling too well right now.\lLet me battle you another time.\p"); -ALIGNED(4) const u8 sText_BattleDeclinedFemale[] = _("I'm terribly sorry, but my POKĂ©MON\naren't feeling well…\pLet's battle another time.\p"); +ALIGNED(4) static const u8 sText_BattleDeclinedMale[] = _("Sorry! My POKĂ©MON don't seem to\nbe feeling too well right now.\lLet me battle you another time.\p"); +ALIGNED(4) static const u8 sText_BattleDeclinedFemale[] = _("I'm terribly sorry, but my POKĂ©MON\naren't feeling well…\pLet's battle another time.\p"); -const u8 *const sBattleDeclinedTexts[GENDER_COUNT] = { +static const u8 *const sBattleDeclinedTexts[GENDER_COUNT] = { sText_BattleDeclinedMale, sText_BattleDeclinedFemale }; -ALIGNED(4) const u8 sText_ShowTrainerCardDeclinedMale[] = _("Huh? My TRAINER CARD…\nWhere'd it go now?\lSorry! I'll show you another time!\p"); -ALIGNED(4) const u8 sText_ShowTrainerCardDeclinedFemale[] = _("Oh? Now where did I put my\nTRAINER CARD?…\lSorry! I'll show you later!\p"); +ALIGNED(4) static const u8 sText_ShowTrainerCardDeclinedMale[] = _("Huh? My TRAINER CARD…\nWhere'd it go now?\lSorry! I'll show you another time!\p"); +ALIGNED(4) static const u8 sText_ShowTrainerCardDeclinedFemale[] = _("Oh? Now where did I put my\nTRAINER CARD?…\lSorry! I'll show you later!\p"); -const u8 *const sShowTrainerCardDeclinedTexts[GENDER_COUNT] = { +static const u8 *const sShowTrainerCardDeclinedTexts[GENDER_COUNT] = { sText_ShowTrainerCardDeclinedMale, sText_ShowTrainerCardDeclinedFemale }; -ALIGNED(4) const u8 sText_IfYouWantToDoSomethingMale[] = _("If you want to do something with\nme, just give me a shout!\p"); -ALIGNED(4) const u8 sText_IfYouWantToDoSomethingFemale[] = _("If you want to do something with\nme, don't be shy.\p"); +ALIGNED(4) static const u8 sText_IfYouWantToDoSomethingMale[] = _("If you want to do something with\nme, just give me a shout!\p"); +ALIGNED(4) static const u8 sText_IfYouWantToDoSomethingFemale[] = _("If you want to do something with\nme, don't be shy.\p"); -const u8 *const sIfYouWantToDoSomethingTexts[GENDER_COUNT] = { +static const u8 *const sIfYouWantToDoSomethingTexts[GENDER_COUNT] = { sText_IfYouWantToDoSomethingMale, sText_IfYouWantToDoSomethingFemale }; -ALIGNED(4) const u8 sText_TrainerBattleBusy[] = _("Whoops! Sorry, but I have to do\nsomething else.\lAnother time, okay?\p"); -ALIGNED(4) const u8 sText_NeedTwoMonsOfLevel30OrLower1[] = _("If you want to battle, you need\ntwo POKĂ©MON that are below\lLv. 30.\p"); -ALIGNED(4) const u8 sText_NeedTwoMonsOfLevel30OrLower2[] = _("For a battle, you need two\nPOKĂ©MON that are below Lv. 30.\p"); +ALIGNED(4) static const u8 sText_TrainerBattleBusy[] = _("Whoops! Sorry, but I have to do\nsomething else.\lAnother time, okay?\p"); +ALIGNED(4) static const u8 sText_NeedTwoMonsOfLevel30OrLower1[] = _("If you want to battle, you need\ntwo POKĂ©MON that are below\lLv. 30.\p"); +ALIGNED(4) static const u8 sText_NeedTwoMonsOfLevel30OrLower2[] = _("For a battle, you need two\nPOKĂ©MON that are below Lv. 30.\p"); -ALIGNED(4) const u8 sText_DeclineChatMale[] = _("Oh, all right.\nCome see me anytime, okay?\p"); -ALIGNED(4) const u8 stext_DeclineChatFemale[] = _("Oh…\nPlease come by anytime.\p"); +ALIGNED(4) static const u8 sText_DeclineChatMale[] = _("Oh, all right.\nCome see me anytime, okay?\p"); +ALIGNED(4) static const u8 stext_DeclineChatFemale[] = _("Oh…\nPlease come by anytime.\p"); // Response from partner when player declines chat static const u8 *const sDeclineChatTexts[GENDER_COUNT] = { @@ -344,8 +345,8 @@ static const u8 *const sDeclineChatTexts[GENDER_COUNT] = { stext_DeclineChatFemale }; -ALIGNED(4) const u8 sText_ChatDeclinedMale[] = _("Oh, sorry!\nI just can't right this instant.\lLet's chat another time.\p"); -ALIGNED(4) const u8 sText_ChatDeclinedFemale[] = _("Oh, I'm sorry.\nI have too much to do right now.\lLet's chat some other time.\p"); +ALIGNED(4) static const u8 sText_ChatDeclinedMale[] = _("Oh, sorry!\nI just can't right this instant.\lLet's chat another time.\p"); +ALIGNED(4) static const u8 sText_ChatDeclinedFemale[] = _("Oh, I'm sorry.\nI have too much to do right now.\lLet's chat some other time.\p"); // Response from partner when they decline chat static const u8 *const sChatDeclinedTexts[GENDER_COUNT] = { @@ -353,16 +354,16 @@ static const u8 *const sChatDeclinedTexts[GENDER_COUNT] = { sText_ChatDeclinedFemale }; -ALIGNED(4) const u8 sText_YoureToughMale[] = _("Whoa!\nI can tell you're pretty tough!\p"); -ALIGNED(4) const u8 sText_UsedGoodMoveMale[] = _("You used that move?\nThat's good strategy!\p"); -ALIGNED(4) const u8 sText_BattleSurpriseMale[] = _("Way to go!\nThat was an eye-opener!\p"); -ALIGNED(4) const u8 sText_SwitchedMonsMale[] = _("Oh! How could you use that\nPOKĂ©MON in that situation?\p"); -ALIGNED(4) const u8 sText_YoureToughFemale[] = _("That POKĂ©MON…\nIt's been raised really well!\p"); -ALIGNED(4) const u8 sText_UsedGoodMoveFemale[] = _("That's it!\nThis is the right move now!\p"); -ALIGNED(4) const u8 sText_BattleSurpriseFemale[] = _("That's awesome!\nYou can battle that way?\p"); -ALIGNED(4) const u8 sText_SwitchedMonsFemale[] = _("You have exquisite timing for\nswitching POKĂ©MON!\p"); +ALIGNED(4) static const u8 sText_YoureToughMale[] = _("Whoa!\nI can tell you're pretty tough!\p"); +ALIGNED(4) static const u8 sText_UsedGoodMoveMale[] = _("You used that move?\nThat's good strategy!\p"); +ALIGNED(4) static const u8 sText_BattleSurpriseMale[] = _("Way to go!\nThat was an eye-opener!\p"); +ALIGNED(4) static const u8 sText_SwitchedMonsMale[] = _("Oh! How could you use that\nPOKĂ©MON in that situation?\p"); +ALIGNED(4) static const u8 sText_YoureToughFemale[] = _("That POKĂ©MON…\nIt's been raised really well!\p"); +ALIGNED(4) static const u8 sText_UsedGoodMoveFemale[] = _("That's it!\nThis is the right move now!\p"); +ALIGNED(4) static const u8 sText_BattleSurpriseFemale[] = _("That's awesome!\nYou can battle that way?\p"); +ALIGNED(4) static const u8 sText_SwitchedMonsFemale[] = _("You have exquisite timing for\nswitching POKĂ©MON!\p"); -const u8 *const sBattleReactionTexts[GENDER_COUNT][4] = { +static const u8 *const sBattleReactionTexts[GENDER_COUNT][4] = { { sText_YoureToughMale, sText_UsedGoodMoveMale, @@ -377,16 +378,16 @@ const u8 *const sBattleReactionTexts[GENDER_COUNT][4] = { } }; -ALIGNED(4) const u8 sText_LearnedSomethingMale[] = _("Oh, I see!\nThis is educational!\p"); -ALIGNED(4) const u8 sText_ThatsFunnyMale[] = _("Don't say anything funny anymore!\nI'm sore from laughing!\p"); -ALIGNED(4) const u8 sText_RandomChatMale1[] = _("Oh?\nSomething like that happened.\p"); -ALIGNED(4) const u8 sText_RandomChatMale2[] = _("Hmhm… What?\nSo is this what you're saying?\p"); -ALIGNED(4) const u8 sText_LearnedSomethingFemale[] = _("Is that right?\nI didn't know that.\p"); -ALIGNED(4) const u8 sText_ThatsFunnyFemale[] = _("Ahaha!\nWhat is that about?\p"); -ALIGNED(4) const u8 sText_RandomChatFemale1[] = _("Yes, that's exactly it!\nThat's what I meant.\p"); -ALIGNED(4) const u8 sText_RandomChatFemale2[] = _("In other words…\nYes! That's right!\p"); +ALIGNED(4) static const u8 sText_LearnedSomethingMale[] = _("Oh, I see!\nThis is educational!\p"); +ALIGNED(4) static const u8 sText_ThatsFunnyMale[] = _("Don't say anything funny anymore!\nI'm sore from laughing!\p"); +ALIGNED(4) static const u8 sText_RandomChatMale1[] = _("Oh?\nSomething like that happened.\p"); +ALIGNED(4) static const u8 sText_RandomChatMale2[] = _("Hmhm… What?\nSo is this what you're saying?\p"); +ALIGNED(4) static const u8 sText_LearnedSomethingFemale[] = _("Is that right?\nI didn't know that.\p"); +ALIGNED(4) static const u8 sText_ThatsFunnyFemale[] = _("Ahaha!\nWhat is that about?\p"); +ALIGNED(4) static const u8 sText_RandomChatFemale1[] = _("Yes, that's exactly it!\nThat's what I meant.\p"); +ALIGNED(4) static const u8 sText_RandomChatFemale2[] = _("In other words…\nYes! That's right!\p"); -const u8 *const sChatReactionTexts[GENDER_COUNT][4] = { +static const u8 *const sChatReactionTexts[GENDER_COUNT][4] = { { sText_LearnedSomethingMale, sText_ThatsFunnyMale, @@ -401,12 +402,12 @@ const u8 *const sChatReactionTexts[GENDER_COUNT][4] = { } }; -ALIGNED(4) const u8 sText_ShowedTrainerCardMale1[] = _("I'm just showing my TRAINER CARD\nas my way of greeting.\p"); -ALIGNED(4) const u8 sText_ShowedTrainerCardMale2[] = _("I hope I get to know you better!\p"); -ALIGNED(4) const u8 sText_ShowedTrainerCardFemale1[] = _("We're showing each other our\nTRAINER CARDS to get acquainted.\p"); -ALIGNED(4) const u8 sText_ShowedTrainerCardFemale2[] = _("Glad to meet you.\nPlease don't be a stranger!\p"); +ALIGNED(4) static const u8 sText_ShowedTrainerCardMale1[] = _("I'm just showing my TRAINER CARD\nas my way of greeting.\p"); +ALIGNED(4) static const u8 sText_ShowedTrainerCardMale2[] = _("I hope I get to know you better!\p"); +ALIGNED(4) static const u8 sText_ShowedTrainerCardFemale1[] = _("We're showing each other our\nTRAINER CARDS to get acquainted.\p"); +ALIGNED(4) static const u8 sText_ShowedTrainerCardFemale2[] = _("Glad to meet you.\nPlease don't be a stranger!\p"); -const u8 *const sTrainerCardReactionTexts[GENDER_COUNT][2] = { +static const u8 *const sTrainerCardReactionTexts[GENDER_COUNT][2] = { { sText_ShowedTrainerCardMale1, sText_ShowedTrainerCardMale2 @@ -417,12 +418,12 @@ const u8 *const sTrainerCardReactionTexts[GENDER_COUNT][2] = { } }; -ALIGNED(4) const u8 sText_MaleTraded1[] = _("Yeahah!\nI really wanted this POKĂ©MON!\p"); -ALIGNED(4) const u8 sText_MaleTraded2[] = _("Finally, a trade got me that\nPOKĂ©MON I'd wanted a long time.\p"); -ALIGNED(4) const u8 sText_FemaleTraded1[] = _("I'm trading POKĂ©MON right now.\p"); -ALIGNED(4) const u8 sText_FemaleTraded2[] = _("I finally got that POKĂ©MON I\nwanted in a trade!\p"); +ALIGNED(4) static const u8 sText_MaleTraded1[] = _("Yeahah!\nI really wanted this POKĂ©MON!\p"); +ALIGNED(4) static const u8 sText_MaleTraded2[] = _("Finally, a trade got me that\nPOKĂ©MON I'd wanted a long time.\p"); +ALIGNED(4) static const u8 sText_FemaleTraded1[] = _("I'm trading POKĂ©MON right now.\p"); +ALIGNED(4) static const u8 sText_FemaleTraded2[] = _("I finally got that POKĂ©MON I\nwanted in a trade!\p"); -const u8 *const sTradeReactionTexts[GENDER_COUNT][4] = { +static const u8 *const sTradeReactionTexts[GENDER_COUNT][4] = { { sText_MaleTraded1, sText_MaleTraded2 @@ -433,57 +434,66 @@ const u8 *const sTradeReactionTexts[GENDER_COUNT][4] = { } }; -ALIGNED(4) const u8 sText_XCheckedTradingBoard[] = _("{STR_VAR_1} checked the\nTRADING BOARD.\p"); -ALIGNED(4) const u8 sText_RegisterMonAtTradingBoard[] = _("Welcome to the TRADING BOARD.\pYou may register your POKĂ©MON\nand offer it up for a trade.\pWould you like to register one of\nyour POKĂ©MON?"); -ALIGNED(4) const u8 sText_TradingBoardInfo[] = _("This TRADING BOARD is used for\noffering a POKĂ©MON for a trade.\pAll you need to do is register a\nPOKĂ©MON for a trade.\pAnother TRAINER may offer a party\nPOKĂ©MON in return for the trade.\pWe hope you will register POKĂ©MON\nand trade them with many, many\lother TRAINERS.\pWould you like to register one of\nyour POKĂ©MON?"); -ALIGNED(4) const u8 sText_ThankYouForRegistering[] = _("We have registered your POKĂ©MON for\ntrade on the TRADING BOARD.\pThank you for using this service!\p"); // unused -ALIGNED(4) const u8 sText_NobodyHasRegistered[] = _("Nobody has registered any POKĂ©MON\nfor trade on the TRADING BOARD.\p\n"); // unused -ALIGNED(4) const u8 sText_ChooseRequestedMonType[] = _("Please choose the type of POKĂ©MON\nthat you would like in the trade.\n"); -ALIGNED(4) const u8 sText_WhichMonWillYouOffer[] = _("Which of your party POKĂ©MON will\nyou offer in trade?\p"); -ALIGNED(4) const u8 sText_RegistrationCanceled[] = _("Registration has been canceled.\p"); -ALIGNED(4) const u8 sText_RegistraionCompleted[] = _("Registration has been completed.\p"); -ALIGNED(4) const u8 sText_TradeCanceled[] = _("The trade has been canceled.\p"); -ALIGNED(4) const u8 sText_CancelRegistrationOfMon[] = _("Cancel the registration of your\nLv. {STR_VAR_2} {STR_VAR_1}?"); -ALIGNED(4) const u8 sText_CancelRegistrationOfEgg[] = _("Cancel the registration of your\nEGG?"); -ALIGNED(4) const u8 sText_RegistrationCanceled2[] = _("The registration has been canceled.\p"); -ALIGNED(4) const u8 sText_TradeTrainersWillBeListed[] = _("TRAINERS wishing to make a trade\nwill be listed."); // unused -ALIGNED(4) const u8 sText_ChooseTrainerToTradeWith2[] = _("Please choose the TRAINER with whom\nyou would like to trade POKĂ©MON."); // unused -ALIGNED(4) const u8 sText_AskTrainerToMakeTrade[] = _("Would you like to ask {STR_VAR_1} to\nmake a trade?"); -ALIGNED(4) const u8 sText_AwaitingResponseFromTrainer2[] = _("Awaiting a response from\nthe other TRAINER…"); // unused -ALIGNED(4) const u8 sText_NotRegisteredAMonForTrade[] = _("You have not registered a POKĂ©MON\nfor trading.\p"); // unused -ALIGNED(4) const u8 sText_DontHaveTypeTrainerWants[] = _("You don't have a {STR_VAR_2}-type\nPOKĂ©MON that {STR_VAR_1} wants.\p"); -ALIGNED(4) const u8 sText_DontHaveEggTrainerWants[] = _("You don't have an EGG that\n{STR_VAR_1} wants.\p"); -ALIGNED(4) const u8 sText_PlayerCantTradeForYourMon[] = _("{STR_VAR_1} can't make a trade for\nyour POKĂ©MON right now.\p"); -ALIGNED(4) const u8 sText_CantTradeForPartnersMon[] = _("You can't make a trade for\n{STR_VAR_1}'s POKĂ©MON right now.\p"); +ALIGNED(4) static const u8 sText_XCheckedTradingBoard[] = _("{STR_VAR_1} checked the\nTRADING BOARD.\p"); +ALIGNED(4) static const u8 sText_RegisterMonAtTradingBoard[] = _("Welcome to the TRADING BOARD.\pYou may register your POKĂ©MON\nand offer it up for a trade.\pWould you like to register one of\nyour POKĂ©MON?"); +ALIGNED(4) static const u8 sText_TradingBoardInfo[] = _("This TRADING BOARD is used for\n" + "offering a POKĂ©MON for a trade.\p" + "All you need to do is register a\n" + "POKĂ©MON for a trade.\p" + "Another TRAINER may offer a party\n" + "POKĂ©MON in return for the trade.\p" + "We hope you will register POKĂ©MON\n" + "and trade them with many, many\l" + "other TRAINERS.\p" + "Would you like to register one of\nyour POKĂ©MON?"); +ALIGNED(4) static const u8 sText_ThankYouForRegistering[] = _("We have registered your POKĂ©MON for\ntrade on the TRADING BOARD.\pThank you for using this service!\p"); // unused +ALIGNED(4) static const u8 sText_NobodyHasRegistered[] = _("Nobody has registered any POKĂ©MON\nfor trade on the TRADING BOARD.\p\n"); // unused +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_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?"); +ALIGNED(4) static const u8 sText_RegistrationCanceled2[] = _("The registration has been canceled.\p"); +ALIGNED(4) static const u8 sText_TradeTrainersWillBeListed[] = _("TRAINERS wishing to make a trade\nwill be listed."); // unused +ALIGNED(4) static const u8 sText_ChooseTrainerToTradeWith2[] = _("Please choose the TRAINER with whom\nyou would like to trade POKĂ©MON."); // unused +ALIGNED(4) static const u8 sText_AskTrainerToMakeTrade[] = _("Would you like to ask {STR_VAR_1} to\nmake a trade?"); +ALIGNED(4) static const u8 sText_AwaitingResponseFromTrainer2[] = _("Awaiting a response from\nthe other TRAINER…"); // unused +ALIGNED(4) static const u8 sText_NotRegisteredAMonForTrade[] = _("You have not registered a POKĂ©MON\nfor trading.\p"); // unused +ALIGNED(4) static const u8 sText_DontHaveTypeTrainerWants[] = _("You don't have a {STR_VAR_2}-type\nPOKĂ©MON that {STR_VAR_1} wants.\p"); +ALIGNED(4) static const u8 sText_DontHaveEggTrainerWants[] = _("You don't have an EGG that\n{STR_VAR_1} wants.\p"); +ALIGNED(4) static const u8 sText_PlayerCantTradeForYourMon[] = _("{STR_VAR_1} can't make a trade for\nyour POKĂ©MON right now.\p"); +ALIGNED(4) static const u8 sText_CantTradeForPartnersMon[] = _("You can't make a trade for\n{STR_VAR_1}'s POKĂ©MON right now.\p"); // Unused -const u8 *const sCantTradeMonTexts[] = { +static const u8 *const sCantTradeMonTexts[] = { sText_PlayerCantTradeForYourMon, sText_CantTradeForPartnersMon }; -ALIGNED(4) const u8 sText_TradeOfferRejected[] = _("Your trade offer was rejected.\p"); -ALIGNED(4) const u8 sText_EggTrade[] = _("EGG TRADE"); -ALIGNED(4) const u8 sText_ChooseJoinCancel[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL"); -ALIGNED(4) const u8 sText_ChooseTrainer[] = _("Please choose a TRAINER."); -ALIGNED(4) const u8 sText_ChooseTrainerSingleBattle[] = _("Please choose a TRAINER for\na SINGLE BATTLE."); -ALIGNED(4) const u8 sText_ChooseTrainerDoubleBattle[] = _("Please choose a TRAINER for\na DOUBLE BATTLE."); -ALIGNED(4) const u8 sText_ChooseLeaderMultiBattle[] = _("Please choose the LEADER\nfor a MULTI BATTLE."); -ALIGNED(4) const u8 sText_ChooseTrainerToTradeWith[] = _("Please choose the TRAINER to\ntrade with."); -ALIGNED(4) const u8 sText_ChooseTrainerToShareWonderCards[] = _("Please choose the TRAINER who is\nsharing WONDER CARDS."); -ALIGNED(4) const u8 sText_ChooseTrainerToShareWonderNews[] = _("Please choose the TRAINER who is\nsharing WONDER NEWS."); -ALIGNED(4) const u8 sText_ChooseLeaderPokemonJump[] = _("Jump with mini POKĂ©MON!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBerryCrush[] = _("BERRY CRUSH!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBerryPicking[] = _("DODRIO BERRY-PICKING!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBerryBlender[] = _("BERRY BLENDER!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderRecordCorner[] = _("RECORD CORNER!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderCoolContest[] = _("COOLNESS CONTEST!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBeautyContest[] = _("BEAUTY CONTEST!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderCuteContest[] = _("CUTENESS CONTEST!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderSmartContest[] = _("SMARTNESS CONTEST!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderToughContest[] = _("TOUGHNESS CONTEST!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerLv50[] = _("BATTLE TOWER LEVEL 50!\nPlease choose the LEADER."); -ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_TradeOfferRejected[] = _("Your trade offer was rejected.\p"); +ALIGNED(4) static const u8 sText_EggTrade[] = _("EGG TRADE"); +ALIGNED(4) static const u8 sText_ChooseJoinCancel[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL"); +ALIGNED(4) static const u8 sText_ChooseTrainer[] = _("Please choose a TRAINER."); +ALIGNED(4) static const u8 sText_ChooseTrainerSingleBattle[] = _("Please choose a TRAINER for\na SINGLE BATTLE."); +ALIGNED(4) static const u8 sText_ChooseTrainerDoubleBattle[] = _("Please choose a TRAINER for\na DOUBLE BATTLE."); +ALIGNED(4) static const u8 sText_ChooseLeaderMultiBattle[] = _("Please choose the LEADER\nfor a MULTI BATTLE."); +ALIGNED(4) static const u8 sText_ChooseTrainerToTradeWith[] = _("Please choose the TRAINER to\ntrade with."); +ALIGNED(4) static const u8 sText_ChooseTrainerToShareWonderCards[] = _("Please choose the TRAINER who is\nsharing WONDER CARDS."); +ALIGNED(4) static const u8 sText_ChooseTrainerToShareWonderNews[] = _("Please choose the TRAINER who is\nsharing WONDER NEWS."); +ALIGNED(4) static const u8 sText_ChooseLeaderPokemonJump[] = _("Jump with mini POKĂ©MON!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBerryCrush[] = _("BERRY CRUSH!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBerryPicking[] = _("DODRIO BERRY-PICKING!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBerryBlender[] = _("BERRY BLENDER!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderRecordCorner[] = _("RECORD CORNER!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderCoolContest[] = _("COOLNESS CONTEST!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBeautyContest[] = _("BEAUTY CONTEST!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderCuteContest[] = _("CUTENESS CONTEST!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderSmartContest[] = _("SMARTNESS CONTEST!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderToughContest[] = _("TOUGHNESS CONTEST!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBattleTowerLv50[] = _("BATTLE TOWER LEVEL 50!\nPlease choose the LEADER."); +ALIGNED(4) static const u8 sText_ChooseLeaderBattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL!\nPlease choose the LEADER."); static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] = { @@ -511,53 +521,53 @@ static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] = [LINK_GROUP_BATTLE_TOWER_OPEN] = sText_ChooseLeaderBattleTowerOpenLv }; -ALIGNED(4) const u8 sText_SearchingForWirelessSystemWait[] = _("Searching for a WIRELESS\nCOMMUNICATION SYSTEM. Wait..."); -ALIGNED(4) const u8 sText_MustHaveTwoMonsForDoubleBattle[] = _("For a DOUBLE BATTLE, you must have\nat least two POKĂ©MON.\p"); // Unused -ALIGNED(4) const u8 sText_AwaitingPlayersResponse[] = _("Awaiting {STR_VAR_1}'s response…"); -ALIGNED(4) const u8 sText_PlayerHasBeenAskedToRegisterYouPleaseWait[] = _("{STR_VAR_1} has been asked to register\nyou as a member. Please wait."); -ALIGNED(4) const u8 sText_AwaitingResponseFromWirelessSystem[] = _("Awaiting a response from the\nWIRELESS COMMUNICATION SYSTEM."); -ALIGNED(4) const u8 sText_PleaseWaitForOtherTrainersToGather[] = _("Please wait for other TRAINERS to\ngather and get ready."); // Unused -ALIGNED(4) const u8 sText_NoCardsSharedRightNow[] = _("No CARDS appear to be shared \nright now."); -ALIGNED(4) const u8 sText_NoNewsSharedRightNow[] = _("No NEWS appears to be shared\nright now."); +ALIGNED(4) static const u8 sText_SearchingForWirelessSystemWait[] = _("Searching for a WIRELESS\nCOMMUNICATION SYSTEM. Wait..."); +ALIGNED(4) static const u8 sText_MustHaveTwoMonsForDoubleBattle[] = _("For a DOUBLE BATTLE, you must have\nat least two POKĂ©MON.\p"); // Unused +ALIGNED(4) static const u8 sText_AwaitingPlayersResponse[] = _("Awaiting {STR_VAR_1}'s response…"); +ALIGNED(4) static const u8 sText_PlayerHasBeenAskedToRegisterYouPleaseWait[] = _("{STR_VAR_1} has been asked to register\nyou as a member. Please wait."); +ALIGNED(4) static const u8 sText_AwaitingResponseFromWirelessSystem[] = _("Awaiting a response from the\nWIRELESS COMMUNICATION SYSTEM."); +ALIGNED(4) static const u8 sText_PleaseWaitForOtherTrainersToGather[] = _("Please wait for other TRAINERS to\ngather and get ready."); // Unused +ALIGNED(4) static const u8 sText_NoCardsSharedRightNow[] = _("No CARDS appear to be shared \nright now."); +ALIGNED(4) static const u8 sText_NoNewsSharedRightNow[] = _("No NEWS appears to be shared\nright now."); -const u8 *const sNoWonderSharedTexts[] = { +static const u8 *const sNoWonderSharedTexts[] = { sText_NoCardsSharedRightNow, sText_NoNewsSharedRightNow }; -ALIGNED(4) const u8 sText_Battle[] = _("BATTLE"); -ALIGNED(4) const u8 sText_Chat2[] = _("CHAT"); -ALIGNED(4) const u8 sText_Greetings[] = _("GREETINGS"); -ALIGNED(4) const u8 sText_Exit[] = _("EXIT"); -ALIGNED(4) const u8 sText_Exit2[] = _("EXIT"); -ALIGNED(4) const u8 sText_Info[] = _("INFO"); -ALIGNED(4) const u8 sText_NameWantedOfferLv[] = _("NAME{CLEAR_TO 0x3C}WANTED{CLEAR_TO 0x6E}OFFER{CLEAR_TO 0xC6}LV."); -ALIGNED(4) const u8 sText_SingleBattle[] = _("SINGLE BATTLE"); -ALIGNED(4) const u8 sText_DoubleBattle[] = _("DOUBLE BATTLE"); -ALIGNED(4) const u8 sText_MultiBattle[] = _("MULTI BATTLE"); -ALIGNED(4) const u8 sText_PokemonTrades[] = _("POKĂ©MON TRADES"); -ALIGNED(4) const u8 sText_Chat[] = _("CHAT"); -ALIGNED(4) const u8 sText_Cards[] = _("CARDS"); -ALIGNED(4) const u8 sText_WonderCards[] = _("WONDER CARDS"); -ALIGNED(4) const u8 sText_WonderNews[] = _("WONDER NEWS"); -ALIGNED(4) const u8 sText_PokemonJump[] = _("POKĂ©MON JUMP"); -ALIGNED(4) const u8 sText_BerryCrush[] = _("BERRY CRUSH"); -ALIGNED(4) const u8 sText_BerryPicking[] = _("BERRY-PICKING"); -ALIGNED(4) const u8 sText_Search[] = _("SEARCH"); -ALIGNED(4) const u8 sText_BerryBlender[] = _("BERRY BLENDER"); -ALIGNED(4) const u8 sText_RecordCorner[] = _("RECORD CORNER"); -ALIGNED(4) const u8 sText_CoolContest[] = _("COOL CONTEST"); -ALIGNED(4) const u8 sText_BeautyContest[] = _("BEAUTY CONTEST"); -ALIGNED(4) const u8 sText_CuteContest[] = _("CUTE CONTEST"); -ALIGNED(4) const u8 sText_SmartContest[] = _("SMART CONTEST"); -ALIGNED(4) const u8 sText_ToughContest[] = _("TOUGH CONTEST"); -ALIGNED(4) const u8 sText_BattleTowerLv50[] = _("BATTLE TOWER LV. 50"); -ALIGNED(4) const u8 sText_BattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL"); -ALIGNED(4) const u8 sText_ItsNormalCard[] = _("It's a NORMAL CARD."); -ALIGNED(4) const u8 sText_ItsBronzeCard[] = _("It's a BRONZE CARD!"); -ALIGNED(4) const u8 sText_ItsCopperCard[] = _("It's a COPPER CARD!"); -ALIGNED(4) const u8 sText_ItsSilverCard[] = _("It's a SILVER CARD!"); -ALIGNED(4) const u8 sText_ItsGoldCard[] = _("It's a GOLD CARD!"); +ALIGNED(4) static const u8 sText_Battle[] = _("BATTLE"); +ALIGNED(4) static const u8 sText_Chat2[] = _("CHAT"); +ALIGNED(4) static const u8 sText_Greetings[] = _("GREETINGS"); +ALIGNED(4) static const u8 sText_Exit[] = _("EXIT"); +ALIGNED(4) static const u8 sText_Exit2[] = _("EXIT"); +ALIGNED(4) static const u8 sText_Info[] = _("INFO"); +ALIGNED(4) static const u8 sText_NameWantedOfferLv[] = _("NAME{CLEAR_TO 60}WANTED{CLEAR_TO 110}OFFER{CLEAR_TO 198}LV."); +ALIGNED(4) static const u8 sText_SingleBattle[] = _("SINGLE BATTLE"); +ALIGNED(4) static const u8 sText_DoubleBattle[] = _("DOUBLE BATTLE"); +ALIGNED(4) static const u8 sText_MultiBattle[] = _("MULTI BATTLE"); +ALIGNED(4) static const u8 sText_PokemonTrades[] = _("POKĂ©MON TRADES"); +ALIGNED(4) static const u8 sText_Chat[] = _("CHAT"); +ALIGNED(4) static const u8 sText_Cards[] = _("CARDS"); +ALIGNED(4) static const u8 sText_WonderCards[] = _("WONDER CARDS"); +ALIGNED(4) static const u8 sText_WonderNews[] = _("WONDER NEWS"); +ALIGNED(4) static const u8 sText_PokemonJump[] = _("POKĂ©MON JUMP"); +ALIGNED(4) static const u8 sText_BerryCrush[] = _("BERRY CRUSH"); +ALIGNED(4) static const u8 sText_BerryPicking[] = _("BERRY-PICKING"); +ALIGNED(4) static const u8 sText_Search[] = _("SEARCH"); +ALIGNED(4) static const u8 sText_BerryBlender[] = _("BERRY BLENDER"); +ALIGNED(4) static const u8 sText_RecordCorner[] = _("RECORD CORNER"); +ALIGNED(4) static const u8 sText_CoolContest[] = _("COOL CONTEST"); +ALIGNED(4) static const u8 sText_BeautyContest[] = _("BEAUTY CONTEST"); +ALIGNED(4) static const u8 sText_CuteContest[] = _("CUTE CONTEST"); +ALIGNED(4) static const u8 sText_SmartContest[] = _("SMART CONTEST"); +ALIGNED(4) static const u8 sText_ToughContest[] = _("TOUGH CONTEST"); +ALIGNED(4) static const u8 sText_BattleTowerLv50[] = _("BATTLE TOWER LV. 50"); +ALIGNED(4) static const u8 sText_BattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL"); +ALIGNED(4) static const u8 sText_ItsNormalCard[] = _("It's a NORMAL CARD."); +ALIGNED(4) static const u8 sText_ItsBronzeCard[] = _("It's a BRONZE CARD!"); +ALIGNED(4) static const u8 sText_ItsCopperCard[] = _("It's a COPPER CARD!"); +ALIGNED(4) static const u8 sText_ItsSilverCard[] = _("It's a SILVER CARD!"); +ALIGNED(4) static const u8 sText_ItsGoldCard[] = _("It's a GOLD CARD!"); static const u8 *const sCardColorTexts[] = { sText_ItsNormalCard, @@ -567,17 +577,17 @@ static const u8 *const sCardColorTexts[] = { sText_ItsGoldCard }; -ALIGNED(4) const u8 sText_TrainerCardInfoPage1[] = _("This is {DYNAMIC 0} {DYNAMIC 1}'s\nTRAINER CARD…\l{DYNAMIC 2}\pPOKĂ©DEX: {DYNAMIC 3}\nTIME: {DYNAMIC 4}:{DYNAMIC 5}\p"); -ALIGNED(4) const u8 sText_TrainerCardInfoPage2[] = _("BATTLES: WINS: {DYNAMIC 0} LOSSES: {DYNAMIC 2}\nTRADES: {DYNAMIC 3}\p“{DYNAMIC 4} {DYNAMIC 5}\n{DYNAMIC 6} {DYNAMIC 7}”\p"); -ALIGNED(4) const u8 sText_GladToMeetYouMale[] = _("{DYNAMIC 1}: Glad to have met you!{PAUSE 60}"); -ALIGNED(4) const u8 sText_GladToMeetYouFemale[] = _("{DYNAMIC 1}: Glad to meet you!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_TrainerCardInfoPage1[] = _("This is {DYNAMIC 0} {DYNAMIC 1}'s\nTRAINER CARD…\l{DYNAMIC 2}\pPOKĂ©DEX: {DYNAMIC 3}\nTIME: {DYNAMIC 4}:{DYNAMIC 5}\p"); +ALIGNED(4) static const u8 sText_TrainerCardInfoPage2[] = _("BATTLES: WINS: {DYNAMIC 0} LOSSES: {DYNAMIC 2}\nTRADES: {DYNAMIC 3}\p“{DYNAMIC 4} {DYNAMIC 5}\n{DYNAMIC 6} {DYNAMIC 7}”\p"); +ALIGNED(4) static const u8 sText_GladToMeetYouMale[] = _("{DYNAMIC 1}: Glad to have met you!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_GladToMeetYouFemale[] = _("{DYNAMIC 1}: Glad to meet you!{PAUSE 60}"); -const u8 *const sGladToMeetYouTexts[GENDER_COUNT] = { +static const u8 *const sGladToMeetYouTexts[GENDER_COUNT] = { sText_GladToMeetYouMale, sText_GladToMeetYouFemale }; -ALIGNED(4) const u8 sText_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {DYNAMIC 1}'s\nTRAINER CARD.{PAUSE 60}"); +ALIGNED(4) static const u8 sText_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {DYNAMIC 1}'s\nTRAINER CARD.{PAUSE 60}"); static const u8 *const sLinkGroupActivityNameTexts[] = { [ACTIVITY_NONE] = sText_EmptyString, @@ -586,8 +596,8 @@ static const u8 *const sLinkGroupActivityNameTexts[] = { [ACTIVITY_BATTLE_MULTI] = sText_MultiBattle, [ACTIVITY_TRADE] = sText_PokemonTrades, [ACTIVITY_CHAT] = sText_Chat, - [ACTIVITY_WONDER_CARD] = sText_WonderCards, - [ACTIVITY_WONDER_NEWS] = sText_WonderNews, + [ACTIVITY_WONDER_CARD_DUP] = sText_WonderCards, + [ACTIVITY_WONDER_NEWS_DUP] = sText_WonderNews, [ACTIVITY_CARD] = sText_Cards, [ACTIVITY_POKEMON_JUMP] = sText_PokemonJump, [ACTIVITY_BERRY_CRUSH] = sText_BerryCrush, @@ -601,8 +611,8 @@ static const u8 *const sLinkGroupActivityNameTexts[] = { [ACTIVITY_DECLINE] = sText_EmptyString, [ACTIVITY_NPCTALK] = sText_EmptyString, [ACTIVITY_PLYRTALK] = sText_EmptyString, - [ACTIVITY_WONDER_CARD2] = sText_WonderCards, - [ACTIVITY_WONDER_NEWS2] = sText_WonderNews, + [ACTIVITY_WONDER_CARD] = sText_WonderCards, + [ACTIVITY_WONDER_NEWS] = sText_WonderNews, [ACTIVITY_CONTEST_COOL] = sText_CoolContest, [ACTIVITY_CONTEST_BEAUTY] = sText_BeautyContest, [ACTIVITY_CONTEST_CUTE] = sText_CuteContest, @@ -612,12 +622,12 @@ static const u8 *const sLinkGroupActivityNameTexts[] = { }; static const struct WindowTemplate sWindowTemplate_BButtonCancel = { - .bg = 0x00, - .tilemapLeft = 0x00, - .tilemapTop = 0x00, - .width = 0x1E, - .height = 0x02, - .paletteNum = 0x0F, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 30, + .height = 2, + .paletteNum = 15, .baseBlock = 0x0008 }; @@ -712,27 +722,27 @@ static const struct ListMenuTemplate sListMenuTemplate_PossibleGroupMembers = { .cursorKind = 1 }; -const struct WindowTemplate gUnknown_082F0174 = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x03, - .width = 0x11, - .height = 0x0a, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_GroupList = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 17, + .height = 10, + .paletteNum = 15, .baseBlock = 0x0044 }; -const struct WindowTemplate gUnknown_082F017C = { - .bg = 0x00, - .tilemapLeft = 0x14, - .tilemapTop = 0x03, - .width = 0x07, - .height = 0x04, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_PlayerNameAndId = { + .bg = 0, + .tilemapLeft = 20, + .tilemapTop = 3, + .width = 7, + .height = 4, + .paletteNum = 15, .baseBlock = 0x00ee }; -const struct ListMenuItem gUnknown_082F0184[] = { +static const struct ListMenuItem sUnionRoomGroupsMenuItems[] = { { sText_EmptyString, 0 }, { sText_EmptyString, 1 }, { sText_EmptyString, 2 }, @@ -752,10 +762,10 @@ const struct ListMenuItem gUnknown_082F0184[] = { }; static const struct ListMenuTemplate sListMenuTemplate_UnionRoomGroups = { - .items = gUnknown_082F0184, + .items = sUnionRoomGroupsMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = ListMenuItemPrintFunc_UnionRoomGroups, - .totalItems = ARRAY_COUNT(gUnknown_082F0184), + .totalItems = ARRAY_COUNT(sUnionRoomGroupsMenuItems), .maxShowed = 5, .windowId = 0, .header_X = 0, @@ -773,27 +783,27 @@ static const struct ListMenuTemplate sListMenuTemplate_UnionRoomGroups = { }; static const struct WindowTemplate sWindowTemplate_InviteToActivity = { - .bg = 0x00, - .tilemapLeft = 0x14, - .tilemapTop = 0x05, - .width = 0x10, - .height = 0x08, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 20, + .tilemapTop = 5, + .width = 16, + .height = 8, + .paletteNum = 15, .baseBlock = 0x0001 }; -const struct ListMenuItem gUnknown_082F0224[] = { - { sText_Greetings, 0x208 }, - { sText_Battle, 0x241 }, - { sText_Chat2, 0x245 }, - { sText_Exit, 0x040 } +static const struct ListMenuItem sInviteToActivityMenuItems[] = { + { sText_Greetings, ACTIVITY_CARD | LINK_GROUP_CAPACITY(0, 2)}, + { sText_Battle, ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM | LINK_GROUP_CAPACITY(0, 2)}, + { sText_Chat2, ACTIVITY_CHAT | IN_UNION_ROOM | LINK_GROUP_CAPACITY(0, 2)}, + { sText_Exit, ACTIVITY_NONE | IN_UNION_ROOM } }; static const struct ListMenuTemplate sListMenuTemplate_InviteToActivity = { - .items = gUnknown_082F0224, + .items = sInviteToActivityMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = NULL, - .totalItems = ARRAY_COUNT(gUnknown_082F0224), + .totalItems = ARRAY_COUNT(sInviteToActivityMenuItems), .maxShowed = 4, .windowId = 0, .header_X = 0, @@ -811,12 +821,12 @@ static const struct ListMenuTemplate sListMenuTemplate_InviteToActivity = { }; static const struct WindowTemplate sWindowTemplate_RegisterForTrade = { - .bg = 0x00, - .tilemapLeft = 0x12, - .tilemapTop = 0x07, - .width = 0x10, - .height = 0x06, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 18, + .tilemapTop = 7, + .width = 16, + .height = 6, + .paletteNum = 15, .baseBlock = 0x0001 }; @@ -847,13 +857,13 @@ static const struct ListMenuTemplate sListMenuTemplate_RegisterForTrade = { .cursorKind = 0 }; -const struct WindowTemplate gUnknown_082F0294 = { - .bg = 0x00, - .tilemapLeft = 0x14, - .tilemapTop = 0x01, - .width = 0x10, - .height = 0x0c, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_TradingBoardRequestType = { + .bg = 0, + .tilemapLeft = 20, + .tilemapTop = 1, + .width = 16, + .height = 12, + .paletteNum = 15, .baseBlock = 0x0001 }; @@ -899,23 +909,23 @@ static const struct ListMenuTemplate sMenuTemplate_TradingBoardRequestType = { .cursorKind = 0 }; -static const struct WindowTemplate sWindowTemplate_TradingBoard = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x01, - .width = 0x1c, - .height = 0x02, - .paletteNum = 0x0d, +static const struct WindowTemplate sWindowTemplate_TradingBoardHeader = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 28, + .height = 2, + .paletteNum = 13, .baseBlock = 0x0001 }; -const struct WindowTemplate gUnknown_082F034C = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x05, - .width = 0x1c, - .height = 0x0c, - .paletteNum = 0x0d, +static const struct WindowTemplate sWindowTemplate_TradingBoardMain = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 5, + .width = 28, + .height = 12, + .paletteNum = 13, .baseBlock = 0x0039 }; @@ -953,13 +963,14 @@ static const struct ListMenuTemplate sTradeBoardListMenuTemplate = { .cursorKind = 0 }; -const struct WindowTemplate UnrefWindowTemplate_082F03B4 = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x05, - .width = 0x1c, - .height = 0x0c, - .paletteNum = 0x0d, +// Unused +static const struct WindowTemplate sWindowTemplate_Unused = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 5, + .width = 28, + .height = 12, + .paletteNum = 13, .baseBlock = 0x0039 }; @@ -983,7 +994,7 @@ static const struct ListMenuItem sEmptyListMenuItems[] = { }; // Unused -static const struct ListMenuTemplate sUnknownListMenuTemplate = { +static const struct ListMenuTemplate sEmptyListMenuTemplate = { .items = sEmptyListMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = ItemPrintFunc_EmptyList, @@ -1004,18 +1015,18 @@ static const struct ListMenuTemplate sUnknownListMenuTemplate = { .cursorKind = 0 }; -const struct WirelessGnameUnamePair sWirelessGnameUnamePair_Dummy = {0}; - -ALIGNED(4) const u8 sAcceptedActivityIds_SingleBattle[] = {ACTIVITY_BATTLE_SINGLE, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_DoubleBattle[] = {ACTIVITY_BATTLE_DOUBLE, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_MultiBattle[] = {ACTIVITY_BATTLE_MULTI, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_Trade[] = {ACTIVITY_TRADE, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_PokemonJump[] = {ACTIVITY_POKEMON_JUMP, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BerryCrush[] = {ACTIVITY_BERRY_CRUSH, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BerryPicking[] = {ACTIVITY_BERRY_PICK, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_WonderCard[] = {ACTIVITY_WONDER_CARD2, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_WonderNews[] = {ACTIVITY_WONDER_NEWS2, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_Resume[] = { +static const struct RfuPlayerData sUnionRoomPlayer_DummyRfu = {0}; + +ALIGNED(4) static const u8 sAcceptedActivityIds_SingleBattle[] = {ACTIVITY_BATTLE_SINGLE, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_DoubleBattle[] = {ACTIVITY_BATTLE_DOUBLE, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_MultiBattle[] = {ACTIVITY_BATTLE_MULTI, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_Trade[] = {ACTIVITY_TRADE, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_PokemonJump[] = {ACTIVITY_POKEMON_JUMP, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BerryCrush[] = {ACTIVITY_BERRY_CRUSH, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BerryPicking[] = {ACTIVITY_BERRY_PICK, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_WonderCard[] = {ACTIVITY_WONDER_CARD, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_WonderNews[] = {ACTIVITY_WONDER_NEWS, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_Resume[] = { IN_UNION_ROOM | ACTIVITY_NONE, IN_UNION_ROOM | ACTIVITY_BATTLE_SINGLE, IN_UNION_ROOM | ACTIVITY_TRADE, @@ -1027,8 +1038,8 @@ ALIGNED(4) const u8 sAcceptedActivityIds_Resume[] = { IN_UNION_ROOM | ACTIVITY_PLYRTALK, 0xff }; -ALIGNED(4) const u8 sAcceptedActivityIds_Init[] = {ACTIVITY_SEARCH, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_Unk11[] = { +ALIGNED(4) static const u8 sAcceptedActivityIds_Init[] = {ACTIVITY_SEARCH, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_Unk11[] = { ACTIVITY_BATTLE_SINGLE, ACTIVITY_BATTLE_DOUBLE, ACTIVITY_BATTLE_MULTI, @@ -1036,22 +1047,22 @@ ALIGNED(4) const u8 sAcceptedActivityIds_Unk11[] = { ACTIVITY_POKEMON_JUMP, ACTIVITY_BERRY_CRUSH, ACTIVITY_BERRY_PICK, - ACTIVITY_WONDER_CARD2, - ACTIVITY_WONDER_NEWS2, + ACTIVITY_WONDER_CARD, + ACTIVITY_WONDER_NEWS, ACTIVITY_SPIN_TRADE, 0xff }; -ALIGNED(4) const u8 sAcceptedActivityIds_RecordCorner[] = {ACTIVITY_RECORD_CORNER, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BerryBlender[] = {ACTIVITY_BERRY_BLENDER, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_CoolContest[] = {ACTIVITY_CONTEST_COOL, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BeautyContest[] = {ACTIVITY_CONTEST_BEAUTY, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_CuteContest[] = {ACTIVITY_CONTEST_CUTE, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_SmartContest[] = {ACTIVITY_CONTEST_SMART, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_ToughContest[] = {ACTIVITY_CONTEST_TOUGH, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BattleTower[] = {ACTIVITY_BATTLE_TOWER, 0xff}; -ALIGNED(4) const u8 sAcceptedActivityIds_BattleTowerOpen[] = {ACTIVITY_BATTLE_TOWER_OPEN, 0xff}; - -const u8 *const sAcceptedActivityIds[NUM_LINK_GROUP_TYPES] = { +ALIGNED(4) static const u8 sAcceptedActivityIds_RecordCorner[] = {ACTIVITY_RECORD_CORNER, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BerryBlender[] = {ACTIVITY_BERRY_BLENDER, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_CoolContest[] = {ACTIVITY_CONTEST_COOL, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BeautyContest[] = {ACTIVITY_CONTEST_BEAUTY, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_CuteContest[] = {ACTIVITY_CONTEST_CUTE, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_SmartContest[] = {ACTIVITY_CONTEST_SMART, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_ToughContest[] = {ACTIVITY_CONTEST_TOUGH, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BattleTower[] = {ACTIVITY_BATTLE_TOWER, 0xff}; +ALIGNED(4) static const u8 sAcceptedActivityIds_BattleTowerOpen[] = {ACTIVITY_BATTLE_TOWER_OPEN, 0xff}; + +static const u8 *const sAcceptedActivityIds[NUM_LINK_GROUP_TYPES] = { [LINK_GROUP_SINGLE_BATTLE] = sAcceptedActivityIds_SingleBattle, [LINK_GROUP_DOUBLE_BATTLE] = sAcceptedActivityIds_DoubleBattle, [LINK_GROUP_MULTI_BATTLE] = sAcceptedActivityIds_MultiBattle, @@ -1085,8 +1096,8 @@ static const u8 sLinkGroupToURoomActivity[NUM_LINK_GROUP_TYPES + 2] = [LINK_GROUP_POKEMON_JUMP] = ACTIVITY_POKEMON_JUMP, [LINK_GROUP_BERRY_CRUSH] = ACTIVITY_BERRY_CRUSH, [LINK_GROUP_BERRY_PICKING] = ACTIVITY_BERRY_PICK, - [LINK_GROUP_WONDER_CARD] = ACTIVITY_WONDER_CARD2, - [LINK_GROUP_WONDER_NEWS] = ACTIVITY_WONDER_NEWS2, + [LINK_GROUP_WONDER_CARD] = ACTIVITY_WONDER_CARD, + [LINK_GROUP_WONDER_NEWS] = ACTIVITY_WONDER_NEWS, [LINK_GROUP_UNION_ROOM_RESUME] = ACTIVITY_NONE, [LINK_GROUP_UNION_ROOM_INIT] = ACTIVITY_NONE, [LINK_GROUP_UNK_11] = ACTIVITY_NONE, diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 9b1f4ceb6cf9..970899369000 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1138,22 +1138,22 @@ u8 player_get_pos_including_state_based_drift(s16 *x, s16 *y) switch (object->movementActionId) { - case MOVEMENT_ACTION_WALK_NORMAL_DOWN: - case MOVEMENT_ACTION_PLAYER_RUN_DOWN: - (*y)++; - return TRUE; - case MOVEMENT_ACTION_WALK_NORMAL_UP: - case MOVEMENT_ACTION_PLAYER_RUN_UP: - (*y)--; - return TRUE; - case MOVEMENT_ACTION_WALK_NORMAL_LEFT: - case MOVEMENT_ACTION_PLAYER_RUN_LEFT: - (*x)--; - return TRUE; - case MOVEMENT_ACTION_WALK_NORMAL_RIGHT: - case MOVEMENT_ACTION_PLAYER_RUN_RIGHT: - (*x)++; - return TRUE; + case MOVEMENT_ACTION_WALK_NORMAL_DOWN: + case MOVEMENT_ACTION_PLAYER_RUN_DOWN: + (*y)++; + return TRUE; + case MOVEMENT_ACTION_WALK_NORMAL_UP: + case MOVEMENT_ACTION_PLAYER_RUN_UP: + (*y)--; + return TRUE; + case MOVEMENT_ACTION_WALK_NORMAL_LEFT: + case MOVEMENT_ACTION_PLAYER_RUN_LEFT: + (*x)--; + return TRUE; + case MOVEMENT_ACTION_WALK_NORMAL_RIGHT: + case MOVEMENT_ACTION_PLAYER_RUN_RIGHT: + (*x)++; + return TRUE; } } diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 309fc4eadb05..55c80580eb7a 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -1,6 +1,14 @@ #include #include "librfu.h" +// If expanding the length of the player name and wireless link functionality is +// desired, ensure that the name string is limited in size when it's copied from the +// saveblock to any Rfu-related fields (e.g. in SetHostRfuUsername). +// If wireless link functionality is not desired ignore or delete this warning. +#if RFU_USER_NAME_LENGTH < (PLAYER_NAME_LENGTH + 1) +#warning "The Wireless Adapter hardware expects a username of no more than 8 bytes." +#endif + struct LLSFStruct { u8 frameSize; diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index b1e2c698f00d..a080630c10d1 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -29,17 +29,17 @@ enum { RFUSTATE_CHILD_CONNECT_END, RFUSTATE_8, // Unused RFUSTATE_RECONNECTED, - RFUSTATE_10, + RFUSTATE_CONNECTED, RFUSTATE_CHILD_TRY_JOIN, RFUSTATE_CHILD_JOINED, - RFUSTATE_13, + RFUSTATE_UR_PLAYER_EXCHANGE, RFUSTATE_14, RFUSTATE_15, RFUSTATE_UR_FINALIZE, }; // These states are re-used for different purposes #define RFUSTATE_17 17 -#define RFUSTATE_18 18 +#define RFUSTATE_PARENT_RECONNECT 18 #define RFUSTATE_PARENT_FINALIZE_START 17 #define RFUSTATE_PARENT_FINALIZE 18 @@ -47,15 +47,24 @@ enum { #define RFUSTATE_UR_CONNECT_END 18 #define RFUSTATE_FINALIZED 20 +// States for the 'receiving' field of RfuBlockSend +enum { + RECV_STATE_READY, + RECV_STATE_RECEIVING, + RECV_STATE_FINISHED, +}; + struct SioInfo { - char magic[15]; // PokemonSioInfo + char magic[sizeof("PokemonSioInfo")]; u8 playerCount; u8 linkPlayerIdx[RFU_CHILD_MAX]; struct LinkPlayer linkPlayers[MAX_RFU_PLAYERS]; u8 filler[92]; }; +// Struct is mostly empty, presumably because usage of +// its fields was largely removed before release struct RfuDebug { u8 filler0[6]; @@ -64,31 +73,33 @@ struct RfuDebug vu8 unk_0e; u8 childJoinCount; u8 filler2[84]; - u16 unk_64; + u16 blockSendFailures; u8 filler3[29]; u8 blockSendTime; u8 filler4[88]; }; -u32 gf_rfu_REQ_api[RFU_API_BUFF_SIZE_RAM / 4]; -struct GFRfuManager Rfu; +u32 gRfuAPIBuffer[RFU_API_BUFF_SIZE_RAM / 4]; +struct RfuManager gRfu; static u8 sHeldKeyCount; -static u8 sResendBlock8[16]; -static u16 sResendBlock16[8]; +static u8 sResendBlock8[CMD_LENGTH * 2]; +static u16 sResendBlock16[CMD_LENGTH]; -EWRAM_DATA struct GFtgtGname gHostRFUtgtGnameBuffer = {}; -EWRAM_DATA u8 gHostRFUtgtUnameBuffer[PLAYER_NAME_LENGTH + 1] = {}; +EWRAM_DATA struct RfuGameData gHostRfuGameData = {}; +EWRAM_DATA u8 gHostRfuUsername[RFU_USER_NAME_LENGTH] = {}; static EWRAM_DATA INIT_PARAM sRfuReqConfig = {}; static EWRAM_DATA struct RfuDebug sRfuDebug = {}; static void ResetSendDataManager(struct RfuBlockSend *); static void InitChildRecvBuffers(void); static void sub_800EAFC(void); -static void sub_800ED34(u16); +static void LinkManagerCB_MSC(u16); static void sub_800EDBC(u16); static void UpdateBackupQueue(void); -static void Task_ExchangeLinkPlayers(u8); +static void Task_PlayerExchange(u8); +static void Task_PlayerExchangeUpdate(u8); +static void Task_PlayerExchangeChat(u8); static void RfuHandleReceiveCommand(u8); static void CallRfuFunc(void); static void RfuPrepareSendBuffer(u16); @@ -97,16 +108,14 @@ static void SendNextBlock(void); static void SendLastBlock(void); static u8 GetPartnerIndexByNameAndTrainerID(const u8 *, u16); static void UpdateChildStatuses(void); -static s32 sub_80107A0(void); -static void sub_801084C(u8); +static s32 GetJoinGroupStatus(void); static void ClearSelectedLinkPlayerIds(u16); static void ValidateAndReceivePokemonSioInfo(void *); -static void sub_8010D0C(u8); static void sub_80115EC(s32); -static void sub_8011BF8(void); +static void CB2_RfuIdle(void); static void RfuReqDisconnectSlot(u32); static void SendDisconnectCommand(u32, u32); -static void sub_801209C(u8); +static void Task_TryConnectToUnionRoomParent(u8); static void Debug_PrintEmpty(void); static void Task_Idle(u8); @@ -115,13 +124,13 @@ static const INIT_PARAM sRfuReqConfigTemplate = { .MC_TimerCount = 32, .availSlot_flag = 0, .mboot_flag = 0, - .serialNo = 2, - .gameName = (void *)&gHostRFUtgtGnameBuffer, - .userName = gHostRFUtgtUnameBuffer, + .serialNo = RFU_SERIAL_GAME, + .gameName = (void *)&gHostRfuGameData, + .userName = gHostRfuUsername, .fastSearchParent_flag = TRUE, .linkRecovery_enable = FALSE, .linkRecovery_period = 600, - .NI_failCounter_limit = 0x12c + .NI_failCounter_limit = 300 }; static const u8 sAvailSlots[] = { @@ -131,33 +140,35 @@ static const u8 sAvailSlots[] = { [4] = AVAIL_SLOT4 }; +#define BLOCK_MASK(bitNum)((1 << (bitNum)) - 1) static const u32 sAllBlocksReceived[] = { - 0x000000, - 0x000001, - 0x000003, - 0x000007, - 0x00000f, - 0x00001f, - 0x00003f, - 0x00007f, - 0x0000ff, - 0x0001ff, - 0x0003ff, - 0x0007ff, - 0x000fff, - 0x001fff, - 0x003fff, - 0x007fff, - 0x00ffff, - 0x01ffff, - 0x03ffff, - 0x07ffff, - 0x0fffff, - 0x1fffff, - 0x3fffff, - 0x7fffff, - 0xffffff + BLOCK_MASK(0), + BLOCK_MASK(1), + BLOCK_MASK(2), + BLOCK_MASK(3), + BLOCK_MASK(4), + BLOCK_MASK(5), + BLOCK_MASK(6), + BLOCK_MASK(7), + BLOCK_MASK(8), + BLOCK_MASK(9), + BLOCK_MASK(10), + BLOCK_MASK(11), + BLOCK_MASK(12), + BLOCK_MASK(13), + BLOCK_MASK(14), + BLOCK_MASK(15), + BLOCK_MASK(16), + BLOCK_MASK(17), + BLOCK_MASK(18), + BLOCK_MASK(19), + BLOCK_MASK(20), + BLOCK_MASK(21), + BLOCK_MASK(22), + BLOCK_MASK(23), + BLOCK_MASK(24), }; +#undef BLOCK_MASK static const u8 sUnknown_082ED68C[] = { 0, 0, 1, @@ -186,23 +197,25 @@ static const u8 sPlayerBitsToCount[1 << (MAX_RFU_PLAYERS - 1)] = { 4 // 1111 }; -static const u8 sUnknown_082ED6A5[1 << (MAX_RFU_PLAYERS - 1)] = { - 0, - 0, - 1, - 0, - 2, - 0, - 1, - 0, - 3, - 0, - 1, - 0, - 2, - 0, - 1, - 0 +// If the 4 bits representing child slots were an array, this table +// would return the index of the most recently set bit +static const u8 sPlayerBitsToNewChildIdx[1 << (MAX_RFU_PLAYERS - 1)] = { + 0, // 0000 + 0, // 0001 + 1, // 0010 + 0, // 0011 + 2, // 0100 + 0, // 0101 + 1, // 0110 + 0, // 0111 + 3, // 1000 + 0, // 1001 + 1, // 1010 + 0, // 1011 + 2, // 1100 + 0, // 1101 + 1, // 1110 + 0 // 1111 }; static const struct BlockRequest sBlockRequests[] = { @@ -214,9 +227,9 @@ static const struct BlockRequest sBlockRequests[] = { }; static const u16 sAcceptedSerialNos[] = { - RFU_SERIAL_A, - RFU_SERIAL_B, - RFU_SERIAL_C, + RFU_SERIAL_GAME, + RFU_SERIAL_WONDER_DISTRIBUTOR, + RFU_SERIAL_UNKNOWN, RFU_SERIAL_END }; @@ -244,9 +257,9 @@ static const char sASCII_RecoverCmds[][16] = { // List of additional tasks to destroy (if active) when the RFU shuts down static const TaskFunc sShutdownTasks[] = { - sub_801084C, - Task_ExchangeLinkPlayers, - sub_8010D0C + Task_PlayerExchange, + Task_PlayerExchangeUpdate, + Task_PlayerExchangeChat }; static const char sASCII_PokemonSioInfo[] = "PokemonSioInfo"; @@ -286,17 +299,17 @@ static void Debug_PrintNum(u16 num, u8 x, u8 y, u8 numDigits) void ResetLinkRfuGFLayer(void) { s32 i; - u8 errorState = Rfu.errorState; - CpuFill16(0, &Rfu, sizeof Rfu); - Rfu.errorState = errorState; - Rfu.parentChild = 0xFF; - if (Rfu.errorState != RFU_ERROR_STATE_IGNORE) - Rfu.errorState = RFU_ERROR_STATE_NONE; + u8 errorState = gRfu.errorState; + CpuFill16(0, &gRfu, sizeof(gRfu)); + gRfu.errorState = errorState; + gRfu.parentChild = 0xFF; + if (gRfu.errorState != RFU_ERROR_STATE_IGNORE) + gRfu.errorState = RFU_ERROR_STATE_NONE; for (i = 0; i < MAX_RFU_PLAYERS; i++) - ResetSendDataManager(&Rfu.recvBlock[i]); - ResetSendDataManager(&Rfu.sendBlock); - RfuRecvQueue_Reset(&Rfu.recvQueue); - RfuSendQueue_Reset(&Rfu.sendQueue); + ResetSendDataManager(&gRfu.recvBlock[i]); + ResetSendDataManager(&gRfu.sendBlock); + RfuRecvQueue_Reset(&gRfu.recvQueue); + RfuSendQueue_Reset(&gRfu.sendQueue); CpuFill16(0, gSendCmd, sizeof gSendCmd); CpuFill16(0, gRecvCmds, sizeof gRecvCmds); CpuFill16(0, gLinkPlayers, sizeof gLinkPlayers); @@ -317,7 +330,7 @@ void InitRFU(void) void InitRFUAPI(void) { - if (!rfu_initializeAPI((void *)gf_rfu_REQ_api, sizeof gf_rfu_REQ_api, &gIntrTable[1], TRUE)) + if (!rfu_initializeAPI((void *)gRfuAPIBuffer, sizeof(gRfuAPIBuffer), &gIntrTable[1], TRUE)) { gLinkType = 0; ClearSavedLinkPlayers(); @@ -327,47 +340,47 @@ void InitRFUAPI(void) } } -static void Task_LinkLeaderSearchForChildren(u8 taskId) +static void Task_ParentSearchForChildren(u8 taskId) { UpdateChildStatuses(); - switch (Rfu.state) + switch (gRfu.state) { case RFUSTATE_INIT: rfu_LMAN_initializeRFU(&sRfuReqConfig); - Rfu.state = RFUSTATE_INIT_END; + gRfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; case RFUSTATE_INIT_END: break; case RFUSTATE_PARENT_CONNECT: - rfu_LMAN_establishConnection(Rfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); - Rfu.state = RFUSTATE_PARENT_CONNECT_END; + rfu_LMAN_establishConnection(gRfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); + gRfu.state = RFUSTATE_PARENT_CONNECT_END; gTasks[taskId].data[1] = 6; break; case RFUSTATE_PARENT_CONNECT_END: break; case RFUSTATE_STOP_MANAGER: rfu_LMAN_stopManager(FALSE); - Rfu.state = RFUSTATE_STOP_MANAGER_END; + gRfu.state = RFUSTATE_STOP_MANAGER_END; break; case RFUSTATE_STOP_MANAGER_END: break; case RFUSTATE_PARENT_FINALIZE: - Rfu.unk_cdb = FALSE; + gRfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); InitChildRecvBuffers(); sub_800EAFC(); - Rfu.state = RFUSTATE_FINALIZED; + gRfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; - CreateTask(sub_801084C, 5); + CreateTask(Task_PlayerExchange, 5); DestroyTask(taskId); break; } } -s32 sub_800E87C(u8 slot) +s32 Rfu_GetIndexOfNewestChild(u8 bits) { - return sUnknown_082ED6A5[slot]; + return sPlayerBitsToNewChildIdx[bits]; } void sub_800E88C(s32 r2, s32 r5) @@ -382,7 +395,7 @@ void sub_800E88C(s32 r2, s32 r5) { if (r2 & 1) { - Rfu.linkPlayerIdx[i] = r4; + gRfu.linkPlayerIdx[i] = r4; r4++; } } @@ -392,36 +405,36 @@ void sub_800E88C(s32 r2, s32 r5) for (i = 0; i < RFU_CHILD_MAX; r1 >>= 1, i++) { if (!(r1 & 1)) - Rfu.linkPlayerIdx[i] = 0; + gRfu.linkPlayerIdx[i] = 0; } for (r4 = RFU_CHILD_MAX; r4 != 0; r4--) { - for (i = 0; i < RFU_CHILD_MAX && Rfu.linkPlayerIdx[i] != r4; i++); + for (i = 0; i < RFU_CHILD_MAX && gRfu.linkPlayerIdx[i] != r4; i++); if (i == RFU_CHILD_MAX) r6 = r4; } for (r5 &= ~r2, i = 0; i < RFU_CHILD_MAX; r5 >>= 1, i++) { if (r5 & 1) - Rfu.linkPlayerIdx[i] = r6++; + gRfu.linkPlayerIdx[i] = r6++; } } } -static void Task_JoinGroupSearchForParent(u8 taskId) +static void Task_ChildSearchForParent(u8 taskId) { - switch (Rfu.state) + switch (gRfu.state) { case RFUSTATE_INIT: rfu_LMAN_initializeRFU((INIT_PARAM *)&sRfuReqConfigTemplate); - Rfu.state = RFUSTATE_INIT_END; + gRfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; case RFUSTATE_INIT_END: break; case RFUSTATE_CHILD_CONNECT: - rfu_LMAN_establishConnection(Rfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); - Rfu.state = RFUSTATE_CHILD_CONNECT_END; + rfu_LMAN_establishConnection(gRfu.parentChild, 0, 240, (u16 *)sAcceptedSerialNos); + gRfu.state = RFUSTATE_CHILD_CONNECT_END; gTasks[taskId].data[1] = 7; break; case RFUSTATE_CHILD_CONNECT_END: @@ -430,25 +443,25 @@ static void Task_JoinGroupSearchForParent(u8 taskId) gTasks[taskId].data[1] = 10; break; case RFUSTATE_CHILD_TRY_JOIN: - switch (sub_80107A0()) + switch (GetJoinGroupStatus()) { case RFU_STATUS_JOIN_GROUP_OK: - Rfu.state = RFUSTATE_CHILD_JOINED; + gRfu.state = RFUSTATE_CHILD_JOINED; break; case RFU_STATUS_JOIN_GROUP_NO: case RFU_STATUS_LEAVE_GROUP: rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; + gRfu.disconnectMode = RFU_DISCONNECT_NORMAL; DestroyTask(taskId); break; } break; case RFUSTATE_CHILD_JOINED: { - u8 bmChildSlot = 1 << Rfu.childSlot; - rfu_clearSlot(TYPE_NI_SEND | TYPE_NI_RECV, Rfu.childSlot); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); - rfu_UNI_setSendData(bmChildSlot, Rfu.childSendBuffer, sizeof(Rfu.childSendBuffer)); + u8 bmChildSlot = 1 << gRfu.childSlot; + rfu_clearSlot(TYPE_NI_SEND | TYPE_NI_RECV, gRfu.childSlot); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); + rfu_UNI_setSendData(bmChildSlot, gRfu.childSendBuffer, sizeof(gRfu.childSendBuffer)); gTasks[taskId].data[1] = 8; DestroyTask(taskId); if (sRfuDebug.childJoinCount == 0) @@ -456,7 +469,7 @@ static void Task_JoinGroupSearchForParent(u8 taskId) Debug_PrintEmpty(); sRfuDebug.childJoinCount++; } - CreateTask(sub_801084C, 5); + CreateTask(Task_PlayerExchange, 5); break; } } @@ -470,7 +483,7 @@ static void InitChildRecvBuffers(void) { if (acceptSlot & 1) { - rfu_setRecvBuffer(TYPE_UNI, i, Rfu.childRecvBuffer[i], sizeof(Rfu.childRecvBuffer[0])); + rfu_setRecvBuffer(TYPE_UNI, i, gRfu.childRecvBuffer[i], sizeof(gRfu.childRecvBuffer[0])); rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, i); } acceptSlot >>= 1; @@ -480,67 +493,67 @@ static void InitChildRecvBuffers(void) static void sub_800EAFC(void) { u8 acceptSlot = lman.acceptSlot_flag; - rfu_UNI_setSendData(acceptSlot, Rfu.recvCmds, 70); - Rfu.unk_cda = sub_800E87C(acceptSlot); - Rfu.unk_ce2 = acceptSlot; + rfu_UNI_setSendData(acceptSlot, gRfu.recvCmds, 70); + gRfu.unk_cda = Rfu_GetIndexOfNewestChild(acceptSlot); + gRfu.unk_ce2 = acceptSlot; sub_800E88C(acceptSlot, -1); - Rfu.parentChild = MODE_PARENT; + gRfu.parentChild = MODE_PARENT; } -#define tData7 data[7] // sub_ +#define tConnectingForChat data[7] -static void Task_LinkRfu_UnionRoomListen(u8 taskId) +static void Task_UnionRoomListen(u8 taskId) { - if (GetHostRFUtgtGname()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM) && RfuGetStatus() == RFU_STATUS_NEW_CHILD_DETECTED) + if (GetHostRfuGameData()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM) && RfuGetStatus() == RFU_STATUS_NEW_CHILD_DETECTED) { rfu_REQ_disconnect(lman.acceptSlot_flag); rfu_waitREQComplete(); RfuSetStatus(RFU_STATUS_OK, 0); } - switch (Rfu.state) + switch (gRfu.state) { case RFUSTATE_INIT: rfu_LMAN_initializeRFU(&sRfuReqConfig); - Rfu.state = RFUSTATE_INIT_END; + gRfu.state = RFUSTATE_INIT_END; gTasks[taskId].data[1] = 1; break; case RFUSTATE_INIT_END: break; case RFUSTATE_UR_CONNECT: rfu_LMAN_establishConnection(MODE_P_C_SWITCH, 0, 240, (u16 *)sAcceptedSerialNos); - rfu_LMAN_setMSCCallback(sub_800ED34); - Rfu.state = RFUSTATE_UR_CONNECT_END; + rfu_LMAN_setMSCCallback(LinkManagerCB_MSC); + gRfu.state = RFUSTATE_UR_CONNECT_END; break; case RFUSTATE_UR_CONNECT_END: break; - case RFUSTATE_13: - if (rfu_UNI_setSendData(1 << Rfu.childSlot, Rfu.childSendBuffer, sizeof(Rfu.childSendBuffer)) == 0) + case RFUSTATE_UR_PLAYER_EXCHANGE: + if (rfu_UNI_setSendData(1 << gRfu.childSlot, gRfu.childSendBuffer, sizeof(gRfu.childSendBuffer)) == 0) { - Rfu.parentChild = MODE_CHILD; + gRfu.parentChild = MODE_CHILD; DestroyTask(taskId); - if (gTasks[taskId].tData7) - CreateTask(sub_8010D0C, 1); + if (gTasks[taskId].tConnectingForChat) + CreateTask(Task_PlayerExchangeChat, 1); else - CreateTask(sub_801084C, 5); + CreateTask(Task_PlayerExchange, 5); } break; case RFUSTATE_14: rfu_LMAN_stopManager(0); - Rfu.state = RFUSTATE_15; + gRfu.state = RFUSTATE_15; break; case RFUSTATE_15: break; case RFUSTATE_UR_FINALIZE: - Rfu.unk_cdb = FALSE; + gRfu.unk_cdb = FALSE; rfu_LMAN_setMSCCallback(sub_800EDBC); UpdateGameData_GroupLockedIn(TRUE); InitChildRecvBuffers(); sub_800EAFC(); - Rfu.state = RFUSTATE_FINALIZED; + gRfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; - Rfu.parentChild = MODE_PARENT; - CreateTask(sub_801084C, 5); - Rfu.unk_ce8 = TRUE; + gRfu.parentChild = MODE_PARENT; + CreateTask(Task_PlayerExchange, 5); + gRfu.unk_ce8 = TRUE; DestroyTask(taskId); break; } @@ -556,30 +569,30 @@ void LinkRfu_StopManagerBeforeEnteringChat(void) rfu_LMAN_stopManager(FALSE); } -static void sub_800ED34(u16 unused) +static void LinkManagerCB_MSC(u16 unused) { s32 i; for (i = 0; i < CHILD_DATA_LENGTH; i++) - Rfu.childSendBuffer[i] = 0; + gRfu.childSendBuffer[i] = 0; rfu_REQ_recvData(); rfu_waitREQComplete(); - if (gRfuSlotStatusUNI[Rfu.childSlot]->recv.newDataFlag) + if (gRfuSlotStatusUNI[gRfu.childSlot]->recv.newDataFlag) { - Rfu.childSendCount++; - RfuRecvQueue_Enqueue(&Rfu.recvQueue, Rfu.unk_c3f); + gRfu.childSendCount++; + RfuRecvQueue_Enqueue(&gRfu.recvQueue, gRfu.unk_c3f); sRfuDebug.unk_06++; UpdateBackupQueue(); - rfu_UNI_readySendData(Rfu.childSlot); - rfu_UNI_clearRecvNewDataFlag(Rfu.childSlot); + rfu_UNI_readySendData(gRfu.childSlot); + rfu_UNI_clearRecvNewDataFlag(gRfu.childSlot); } rfu_LMAN_REQ_sendData(TRUE); } static void sub_800EDBC(u16 unused) { - Rfu.unk_cdb = TRUE; + gRfu.unk_cdb = TRUE; } void LinkRfu_Shutdown(void) @@ -587,30 +600,30 @@ void LinkRfu_Shutdown(void) u8 i; rfu_LMAN_powerDownRFU(); - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { // Stop parent searching for children - if (FuncIsActiveTask(Task_LinkLeaderSearchForChildren) == TRUE) + if (FuncIsActiveTask(Task_ParentSearchForChildren) == TRUE) { - DestroyTask(Rfu.searchTaskId); + DestroyTask(gRfu.searchTaskId); ResetLinkRfuGFLayer(); } } - else if (Rfu.parentChild == MODE_CHILD) + else if (gRfu.parentChild == MODE_CHILD) { // Stop child searching for parent - if (FuncIsActiveTask(Task_JoinGroupSearchForParent) == TRUE) + if (FuncIsActiveTask(Task_ChildSearchForParent) == TRUE) { - DestroyTask(Rfu.searchTaskId); + DestroyTask(gRfu.searchTaskId); ResetLinkRfuGFLayer(); } } - else if (Rfu.parentChild == MODE_P_C_SWITCH) + else if (gRfu.parentChild == MODE_P_C_SWITCH) { // Stop parent-child switching mode (union room) - if (FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) + if (FuncIsActiveTask(Task_UnionRoomListen) == TRUE) { - DestroyTask(Rfu.searchTaskId); + DestroyTask(gRfu.searchTaskId); ResetLinkRfuGFLayer(); } } @@ -623,32 +636,32 @@ void LinkRfu_Shutdown(void) } } -static void CreateTask_LinkLeaderSearchForChildren(void) +static void CreateTask_ParentSearchForChildren(void) { - Rfu.searchTaskId = CreateTask(Task_LinkLeaderSearchForChildren, 1); + gRfu.searchTaskId = CreateTask(Task_ParentSearchForChildren, 1); } // If no parent ID (or if child connection not ready) can't reconnect with parent yet static bool8 CanTryReconnectParent(void) { - if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && Rfu.parentId) + if (gRfu.state == RFUSTATE_CHILD_CONNECT_END && gRfu.parentId) return TRUE; return FALSE; } static bool32 TryReconnectParent(void) { - if (Rfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[Rfu.unk_c3d].id, 240)) + if (gRfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[gRfu.unk_c3d].id, 240)) { - Rfu.state = RFUSTATE_RECONNECTED; + gRfu.state = RFUSTATE_RECONNECTED; return TRUE; } return FALSE; } -static void CreateTask_JoinGroupSearchForParent(void) +static void CreateTask_ChildSearchForParent(void) { - Rfu.searchTaskId = CreateTask(Task_JoinGroupSearchForParent, 1); + gRfu.searchTaskId = CreateTask(Task_ChildSearchForParent, 1); } bool8 LmanAcceptSlotFlagIsNotZero(void) @@ -660,15 +673,15 @@ bool8 LmanAcceptSlotFlagIsNotZero(void) void LinkRfu_StopManagerAndFinalizeSlots(void) { - Rfu.state = RFUSTATE_STOP_MANAGER; - Rfu.acceptSlot_flag = lman.acceptSlot_flag; + gRfu.state = RFUSTATE_STOP_MANAGER; + gRfu.acceptSlot_flag = lman.acceptSlot_flag; } bool32 WaitRfuState(bool32 force) { - if (Rfu.state == RFUSTATE_PARENT_FINALIZE_START || force) + if (gRfu.state == RFUSTATE_PARENT_FINALIZE_START || force) { - Rfu.state = RFUSTATE_PARENT_FINALIZE; + gRfu.state = RFUSTATE_PARENT_FINALIZE; return TRUE; } return FALSE; @@ -676,7 +689,7 @@ bool32 WaitRfuState(bool32 force) void sub_800EF7C(void) { - Rfu.state = RFUSTATE_14; + gRfu.state = RFUSTATE_14; } // Unused @@ -699,13 +712,13 @@ static void sub_800EFB0(void) { s32 i, j; - for (i = 0; i < 5; i++) + for (i = 0; i < MAX_RFU_PLAYERS; i++) { - struct GFRfuManager *ptr = &Rfu; - for (j = 0; j < 7; j++) + struct RfuManager *rfu = &gRfu; + for (j = 0; j < CMD_LENGTH - 1; j++) { - ptr->recvCmds[i][j][1] = gRecvCmds[i][j] >> 8; - ptr->recvCmds[i][j][0] = gRecvCmds[i][j]; + rfu->recvCmds[i][j][1] = gRecvCmds[i][j] >> 8; + rfu->recvCmds[i][j][0] = gRecvCmds[i][j]; } } CpuFill16(0, gRecvCmds, sizeof gRecvCmds); @@ -723,20 +736,20 @@ static void MoveSendCmdToRecv(void) static void UpdateBackupQueue(void) { - if (Rfu.linkRecovered) + if (gRfu.linkRecovered) { - bool8 backupEmpty = RfuBackupQueue_Dequeue(&Rfu.backupQueue, Rfu.childSendBuffer); + bool8 backupEmpty = RfuBackupQueue_Dequeue(&gRfu.backupQueue, gRfu.childSendBuffer); - if (Rfu.backupQueue.count == 0) - Rfu.linkRecovered = FALSE; + if (gRfu.backupQueue.count == 0) + gRfu.linkRecovered = FALSE; if (backupEmpty) return; } - if (!Rfu.linkRecovered) + if (!gRfu.linkRecovered) { - RfuSendQueue_Dequeue(&Rfu.sendQueue, Rfu.childSendBuffer); - RfuBackupQueue_Enqueue(&Rfu.backupQueue, Rfu.childSendBuffer); + RfuSendQueue_Dequeue(&gRfu.sendQueue, gRfu.childSendBuffer); + RfuBackupQueue_Enqueue(&gRfu.backupQueue, gRfu.childSendBuffer); } } @@ -745,26 +758,20 @@ bool32 IsRfuRecvQueueEmpty(void) s32 i; s32 j; - if (gRfuLinkStatus->sendSlotUNIFlag == 0) - { + if (!gRfuLinkStatus->sendSlotUNIFlag) return FALSE; - } + for (i = 0; i < MAX_RFU_PLAYERS; i++) - { for (j = 0; j < CMD_LENGTH - 1; j++) - { if (gRecvCmds[i][j] != 0) - { return FALSE; - } - } - } + return TRUE; } static bool32 RfuMain1_Parent(void) { - if (Rfu.state < RFUSTATE_FINALIZED) + if (gRfu.state < RFUSTATE_FINALIZED) { rfu_REQ_recvData(); rfu_waitREQComplete(); @@ -772,16 +779,16 @@ static bool32 RfuMain1_Parent(void) } else { - Rfu.unk_cdb = FALSE; - if ((Rfu.unk_ce2 & gRfuLinkStatus->connSlotFlag) == Rfu.unk_ce2 && (Rfu.unk_ce2 & gRfuLinkStatus->connSlotFlag)) + gRfu.unk_cdb = FALSE; + if ((gRfu.unk_ce2 & gRfuLinkStatus->connSlotFlag) == gRfu.unk_ce2 && (gRfu.unk_ce2 & gRfuLinkStatus->connSlotFlag)) { - if (!Rfu.unk_cdc) + if (!gRfu.unk_cdc) { - if (Rfu.disconnectSlots) + if (gRfu.disconnectSlots) { - RfuReqDisconnectSlot(Rfu.disconnectSlots); - Rfu.disconnectSlots = 0; - if (Rfu.disconnectMode == RFU_DISCONNECT_ERROR) + RfuReqDisconnectSlot(gRfu.disconnectSlots); + gRfu.disconnectSlots = 0; + if (gRfu.disconnectMode == RFU_DISCONNECT_ERROR) { RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x8000); GetLinkmanErrorParams(0x8000); @@ -795,14 +802,14 @@ static bool32 RfuMain1_Parent(void) } } sub_800EFB0(); - rfu_UNI_readySendData(Rfu.unk_cda); + rfu_UNI_readySendData(gRfu.unk_cda); rfu_LMAN_REQ_sendData(TRUE); } else { rfu_REQ_PARENT_resumeRetransmitAndChange(); } - Rfu.unk_0e = TRUE; + gRfu.unk_0e = TRUE; } } return FALSE; @@ -816,43 +823,43 @@ static bool32 RfuMain2_Parent(void) u16 j; u8 retval; - if (Rfu.state >= RFUSTATE_FINALIZED && Rfu.unk_0e == TRUE) + if (gRfu.state >= RFUSTATE_FINALIZED && gRfu.unk_0e == TRUE) { rfu_waitREQComplete(); - while (Rfu.unk_cdb == FALSE) + while (gRfu.unk_cdb == FALSE) { - if (Rfu.errorState != RFU_ERROR_STATE_NONE) + if (gRfu.errorState != RFU_ERROR_STATE_NONE) return FALSE; } rfu_REQ_recvData(); rfu_waitREQComplete(); - if ((lman.parentAck_flag & Rfu.unk_ce2) == Rfu.unk_ce2) + if ((lman.parentAck_flag & gRfu.unk_ce2) == gRfu.unk_ce2) { - Rfu.unk_cdc = FALSE; + gRfu.unk_cdc = FALSE; sRfuDebug.unk_06++; flags = lman.acceptSlot_flag; for (i = 0; i < RFU_CHILD_MAX; i++) { if (flags & 1) { - if (Rfu.childRecvBuffer[i][1]) + if (gRfu.childRecvBuffer[i][1]) { - if (Rfu.unk_cee[i] != 0xFF && (Rfu.childRecvBuffer[i][0] >> 5) != ((Rfu.unk_cee[i] + 1) & 7)) + if (gRfu.unk_cee[i] != 0xFF && (gRfu.childRecvBuffer[i][0] >> 5) != ((gRfu.unk_cee[i] + 1) & 7)) { - if (++Rfu.unk_cea[i] > 4) + if (++gRfu.unk_cea[i] > 4) GetLinkmanErrorParams(0x8000 | 0x100); } else { - Rfu.unk_cee[i] = Rfu.childRecvBuffer[i][0] / 32; - Rfu.unk_cea[i] = 0; - Rfu.childRecvBuffer[i][0] &= 0x1f; - r0 = Rfu.linkPlayerIdx[i]; - for (j = 0; j < 7; j++) + gRfu.unk_cee[i] = gRfu.childRecvBuffer[i][0] / 32; + gRfu.unk_cea[i] = 0; + gRfu.childRecvBuffer[i][0] &= 0x1f; + r0 = gRfu.linkPlayerIdx[i]; + for (j = 0; j < CMD_LENGTH - 1; j++) { - gRecvCmds[r0][j] = (Rfu.childRecvBuffer[i][(j << 1) + 1] << 8) | Rfu.childRecvBuffer[i][(j << 1) + 0]; - Rfu.childRecvBuffer[i][(j << 1) + 1] = 0; - Rfu.childRecvBuffer[i][(j << 1) + 0] = 0; + gRecvCmds[r0][j] = (gRfu.childRecvBuffer[i][(j << 1) + 1] << 8) | gRfu.childRecvBuffer[i][(j << 1) + 0]; + gRfu.childRecvBuffer[i][(j << 1) + 1] = 0; + gRfu.childRecvBuffer[i][(j << 1) + 0] = 0; } } } @@ -863,53 +870,53 @@ static bool32 RfuMain2_Parent(void) MoveSendCmdToRecv(); RfuHandleReceiveCommand(0); CallRfuFunc(); - if (Rfu.unk_ce5 && !Rfu.stopNewConnections) + if (gRfu.nextChildBits && !gRfu.stopNewConnections) { sRfuDebug.unk_0e = FALSE; - rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, Rfu.unk_cda); + rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, gRfu.unk_cda); for (i = 0; i < RFU_CHILD_MAX; i++) { - if ((Rfu.unk_ce5 >> i) & 1) - rfu_setRecvBuffer(TYPE_UNI, i, Rfu.childRecvBuffer[i], sizeof(Rfu.childRecvBuffer[0])); + if ((gRfu.nextChildBits >> i) & 1) + rfu_setRecvBuffer(TYPE_UNI, i, gRfu.childRecvBuffer[i], sizeof(gRfu.childRecvBuffer[0])); } - sub_800E88C(Rfu.unk_ce2, Rfu.unk_ce2 | Rfu.unk_ce5); - Rfu.unk_ce9 = Rfu.unk_ce5; - Rfu.unk_ce2 |= Rfu.unk_ce5; - Rfu.unk_ce5 = 0; - rfu_UNI_setSendData(Rfu.unk_ce2, Rfu.recvCmds, 70); - Rfu.unk_cda = sub_800E87C(Rfu.unk_ce2); - CreateTask(Task_ExchangeLinkPlayers, 0); + sub_800E88C(gRfu.unk_ce2, gRfu.unk_ce2 | gRfu.nextChildBits); + gRfu.incomingChild = gRfu.nextChildBits; + gRfu.unk_ce2 |= gRfu.nextChildBits; + gRfu.nextChildBits = 0; + rfu_UNI_setSendData(gRfu.unk_ce2, gRfu.recvCmds, 70); + gRfu.unk_cda = Rfu_GetIndexOfNewestChild(gRfu.unk_ce2); + CreateTask(Task_PlayerExchangeUpdate, 0); } } else { - Rfu.unk_cdc = TRUE; - Rfu.unk_0e = FALSE; + gRfu.unk_cdc = TRUE; + gRfu.unk_0e = FALSE; } - Rfu.unk_0e = FALSE; + gRfu.unk_0e = FALSE; } - retval = Rfu.unk_cdc; + retval = gRfu.unk_cdc; return gRfuLinkStatus->sendSlotUNIFlag ? retval & 1 : FALSE; } -static void sub_800F498(u16 *a0, u8 *a1) +static void sub_800F498(u16 *sendCmd, u8 *buffer) { s32 i; - if (a0[0]) + if (sendCmd[0]) { - a0[0] |= (Rfu.unk_102 << 5); - Rfu.unk_102 = (Rfu.unk_102 + 1) & 7; - for (i = 0; i < 7; i++) + sendCmd[0] |= (gRfu.unk_102 << 5); + gRfu.unk_102 = (gRfu.unk_102 + 1) & 7; + for (i = 0; i < CMD_LENGTH - 1; i++) { - a1[2 * i + 1] = a0[i] >> 8; - a1[2 * i + 0] = a0[i]; + buffer[2 * i + 1] = sendCmd[i] >> 8; + buffer[2 * i + 0] = sendCmd[i]; } } else { - for (i = 0; i < 14; i++) - a1[i] = 0; + for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) + buffer[i] = 0; } } @@ -921,14 +928,15 @@ static bool32 RfuMain1_Child(void) u8 send[2 * (CMD_LENGTH - 1)]; u8 status; - RfuRecvQueue_Dequeue(&Rfu.recvQueue, recv); + RfuRecvQueue_Dequeue(&gRfu.recvQueue, recv); for (i = 0; i < MAX_RFU_PLAYERS; i++) { for (j = 0; j < CMD_LENGTH - 1; j++) - gRecvCmds[i][j] = (recv[i * 14 + (j << 1) + 1] << 8) | recv[i * 14 + (j << 1) + 0]; + gRecvCmds[i][j] = (recv[i * SEND_QUEUE_SLOT_LENGTH + (j * 2) + 1] << 8) + | recv[i * SEND_QUEUE_SLOT_LENGTH + (j * 2) + 0]; } RfuHandleReceiveCommand(0); - if (lman.childClockSlave_flag == 0 && Rfu.disconnectMode != RFU_DISCONNECT_NONE) + if (lman.childClockSlave_flag == 0 && gRfu.disconnectMode != RFU_DISCONNECT_NONE) { rfu_REQ_disconnect(gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag); rfu_waitREQComplete(); @@ -937,21 +945,21 @@ static bool32 RfuMain1_Child(void) RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x9000); rfu_clearAllSlot(); gReceivedRemoteLinkPlayers = FALSE; - Rfu.callback = NULL; - if (Rfu.disconnectMode == RFU_DISCONNECT_ERROR) + gRfu.callback = NULL; + if (gRfu.disconnectMode == RFU_DISCONNECT_ERROR) { RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x9000); GetLinkmanErrorParams(0x9000); } lman.state = lman.next_state = 0; - Rfu.disconnectMode = RFU_DISCONNECT_NONE; + gRfu.disconnectMode = RFU_DISCONNECT_NONE; } - if (Rfu.childSendCount) + if (gRfu.childSendCount) { - Rfu.childSendCount--; + gRfu.childSendCount--; CallRfuFunc(); sub_800F498(gSendCmd, send); - RfuSendQueue_Enqueue(&Rfu.sendQueue, send); + RfuSendQueue_Enqueue(&gRfu.sendQueue, send); for (i = 0; i < CMD_LENGTH - 1; i++) gSendCmd[i] = 0; } @@ -962,25 +970,26 @@ static void HandleSendFailure(u8 unused, u32 flags) { s32 i, j, temp; - const u8 *r10 = Rfu.sendBlock.payload; - for (i = 0; i < Rfu.sendBlock.count; i++) + const u8 *payload = gRfu.sendBlock.payload; + for (i = 0; i < gRfu.sendBlock.count; i++) { if (!(flags & 1)) { sResendBlock16[0] = RFUCMD_SEND_BLOCK | i; - for (j = 0; j < 7; j++) + for (j = 0; j < CMD_LENGTH - 1; j++) { - temp = j << 1; - sResendBlock16[j + 1] = (r10[12 * i + temp + 1] << 8) | r10[12 * i + temp + 0]; + temp = j * 2; + sResendBlock16[j + 1] = (payload[(SEND_QUEUE_SLOT_LENGTH - 2) * i + temp + 1] << 8) + | payload[(SEND_QUEUE_SLOT_LENGTH - 2) * i + temp + 0]; } - for (j = 0; j < 7; j++) + for (j = 0; j < CMD_LENGTH - 1; j++) { - temp = j << 1; + temp = j * 2; sResendBlock8[temp + 1] = sResendBlock16[j] >> 8; sResendBlock8[temp + 0] = sResendBlock16[j]; } - RfuSendQueue_Enqueue(&Rfu.sendQueue, sResendBlock8); - Rfu.sendBlock.failedFlags |= (1 << i); + RfuSendQueue_Enqueue(&gRfu.sendQueue, sResendBlock8); + gRfu.sendBlock.failedFlags |= (1 << i); } flags >>= 1; } @@ -988,30 +997,30 @@ static void HandleSendFailure(u8 unused, u32 flags) void Rfu_SetBlockReceivedFlag(u8 linkPlayerId) { - if (Rfu.parentChild == MODE_PARENT && linkPlayerId) - Rfu.numBlocksReceived[linkPlayerId] = 1; + if (gRfu.parentChild == MODE_PARENT && linkPlayerId) + gRfu.numBlocksReceived[linkPlayerId] = 1; else - Rfu.blockReceived[linkPlayerId] = TRUE; + gRfu.blockReceived[linkPlayerId] = TRUE; } void Rfu_ResetBlockReceivedFlag(u8 linkPlayerId) { - Rfu.blockReceived[linkPlayerId] = FALSE; - Rfu.recvBlock[linkPlayerId].receiving = 0; + gRfu.blockReceived[linkPlayerId] = FALSE; + gRfu.recvBlock[linkPlayerId].receiving = RECV_STATE_READY; } static u8 LoadLinkPlayerIds(const u8 *ids) { u8 i; - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) return FALSE; for (i = 0; i < RFU_CHILD_MAX; i++) - Rfu.linkPlayerIdx[i] = ids[i]; + gRfu.linkPlayerIdx[i] = ids[i]; - return ids[Rfu.childSlot]; + return ids[gRfu.childSlot]; } -static void RfuFunc_SendKeysToRfu(void) +static void SendKeysToRfu(void) { if (gReceivedRemoteLinkPlayers && gHeldKeyCodeToSend != LINK_KEY_CODE_NULL @@ -1023,24 +1032,24 @@ static void RfuFunc_SendKeysToRfu(void) } } -struct GFtgtGname *GetHostRFUtgtGname(void) +struct RfuGameData *GetHostRfuGameData(void) { - return &gHostRFUtgtGnameBuffer; + return &gHostRfuGameData; } bool32 IsSendingKeysToRfu(void) { - return Rfu.callback == RfuFunc_SendKeysToRfu; + return gRfu.callback == SendKeysToRfu; } void StartSendingKeysToRfu(void) { - Rfu.callback = RfuFunc_SendKeysToRfu; + gRfu.callback = SendKeysToRfu; } void ClearLinkRfuCallback(void) { - Rfu.callback = NULL; + gRfu.callback = NULL; } static void Rfu_BerryBlenderSendHeldKeys(void) @@ -1053,8 +1062,8 @@ static void Rfu_BerryBlenderSendHeldKeys(void) void Rfu_SetBerryBlenderLinkCallback(void) { - if (Rfu.callback == NULL) - Rfu.callback = Rfu_BerryBlenderSendHeldKeys; + if (gRfu.callback == NULL) + gRfu.callback = Rfu_BerryBlenderSendHeldKeys; } static void RfuHandleReceiveCommand(u8 unused) @@ -1067,39 +1076,39 @@ static void RfuHandleReceiveCommand(u8 unused) switch (gRecvCmds[i][0] & RFUCMD_MASK) { case RFUCMD_SEND_PLAYER_IDS_NEW: - if (Rfu.parentChild == MODE_CHILD && gReceivedRemoteLinkPlayers) + if (gRfu.parentChild == MODE_CHILD && gReceivedRemoteLinkPlayers) return; // fallthrough case RFUCMD_SEND_PLAYER_IDS: if (gRfuLinkStatus->parentChild == MODE_CHILD) { - Rfu.playerCount = gRecvCmds[i][1]; - Rfu.multiplayerId = LoadLinkPlayerIds((u8 *)(gRecvCmds[i] + 2)); + gRfu.playerCount = gRecvCmds[i][1]; + gRfu.multiplayerId = LoadLinkPlayerIds((u8 *)(gRecvCmds[i] + 2)); } break; case RFUCMD_SEND_BLOCK_INIT: - if (Rfu.recvBlock[i].receiving == 0) + if (gRfu.recvBlock[i].receiving == RECV_STATE_READY) { - Rfu.recvBlock[i].next = 0; - Rfu.recvBlock[i].count = gRecvCmds[i][1]; - Rfu.recvBlock[i].owner = gRecvCmds[i][2]; - Rfu.recvBlock[i].receivedFlags = 0; - Rfu.recvBlock[i].receiving = 1; - Rfu.blockReceived[i] = FALSE; + gRfu.recvBlock[i].next = 0; + gRfu.recvBlock[i].count = gRecvCmds[i][1]; + gRfu.recvBlock[i].owner = gRecvCmds[i][2]; + gRfu.recvBlock[i].receivedFlags = 0; + gRfu.recvBlock[i].receiving = RECV_STATE_RECEIVING; + gRfu.blockReceived[i] = FALSE; } break; case RFUCMD_SEND_BLOCK: - if (Rfu.recvBlock[i].receiving == 1) + if (gRfu.recvBlock[i].receiving == RECV_STATE_RECEIVING) { - Rfu.recvBlock[i].next = gRecvCmds[i][0] & 0xff; - Rfu.recvBlock[i].receivedFlags |= (1 << Rfu.recvBlock[i].next); + gRfu.recvBlock[i].next = gRecvCmds[i][0] & 0xff; + gRfu.recvBlock[i].receivedFlags |= (1 << gRfu.recvBlock[i].next); for (j = 0; j < 6; j++) - gBlockRecvBuffer[i][Rfu.recvBlock[i].next * 6 + j] = gRecvCmds[i][j + 1]; - if (Rfu.recvBlock[i].receivedFlags == sAllBlocksReceived[Rfu.recvBlock[i].count]) + gBlockRecvBuffer[i][gRfu.recvBlock[i].next * 6 + j] = gRecvCmds[i][j + 1]; + if (gRfu.recvBlock[i].receivedFlags == sAllBlocksReceived[gRfu.recvBlock[i].count]) { - Rfu.recvBlock[i].receiving = 2; + gRfu.recvBlock[i].receiving = RECV_STATE_FINISHED; Rfu_SetBlockReceivedFlag(i); - if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers != 0 && Rfu.parentChild == MODE_CHILD) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers != 0 && gRfu.parentChild == MODE_CHILD) ValidateAndReceivePokemonSioInfo(gBlockRecvBuffer); } } @@ -1108,14 +1117,14 @@ static void RfuHandleReceiveCommand(u8 unused) Rfu_InitBlockSend(sBlockRequests[gRecvCmds[i][1]].address, (u16)sBlockRequests[gRecvCmds[i][1]].size); break; case RFUCMD_READY_CLOSE_LINK: - Rfu.readyCloseLink[i] = TRUE; + gRfu.readyCloseLink[i] = TRUE; break; case RFUCMD_READY_EXIT_STANDBY: - if (Rfu.allReadyNum == gRecvCmds[i][1]) - Rfu.readyExitStandby[i] = TRUE; + if (gRfu.allReadyNum == gRecvCmds[i][1]) + gRfu.readyExitStandby[i] = TRUE; break; case RFUCMD_DISCONNECT: - if (Rfu.parentChild == MODE_CHILD) + if (gRfu.parentChild == MODE_CHILD) { // Disconnect child if (gReceivedRemoteLinkPlayers) @@ -1124,9 +1133,9 @@ static void RfuHandleReceiveCommand(u8 unused) { gReceivedRemoteLinkPlayers = 0; rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.disconnectMode = gRecvCmds[i][2]; + gRfu.disconnectMode = gRecvCmds[i][2]; } - Rfu.playerCount = gRecvCmds[i][3]; + gRfu.playerCount = gRecvCmds[i][3]; ClearSelectedLinkPlayerIds(gRecvCmds[i][1]); } } @@ -1140,10 +1149,10 @@ static void RfuHandleReceiveCommand(u8 unused) } break; case RFUCMD_DISCONNECT_PARENT: - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { - Rfu.disconnectSlots |= gRecvCmds[i][1]; - Rfu.disconnectMode = gRecvCmds[i][2]; + gRfu.disconnectSlots |= gRecvCmds[i][1]; + gRfu.disconnectMode = gRecvCmds[i][2]; ClearSelectedLinkPlayerIds(gRecvCmds[i][1]); } break; @@ -1152,38 +1161,38 @@ static void RfuHandleReceiveCommand(u8 unused) gLinkPartnersHeldKeys[i] = gRecvCmds[i][1]; break; } - if (Rfu.parentChild == MODE_PARENT && Rfu.numBlocksReceived[i]) + if (gRfu.parentChild == MODE_PARENT && gRfu.numBlocksReceived[i]) { - if (Rfu.numBlocksReceived[i] == 4) + if (gRfu.numBlocksReceived[i] == 4) { - Rfu.blockReceived[i] = TRUE; - Rfu.numBlocksReceived[i] = 0; + gRfu.blockReceived[i] = TRUE; + gRfu.numBlocksReceived[i] = 0; } else - Rfu.numBlocksReceived[i]++; + gRfu.numBlocksReceived[i]++; } } } -static bool8 AreNoPlayersReceiving(void) +static bool8 AreAllPlayersReadyToReceive(void) { s32 i; for (i = 0; i < MAX_RFU_PLAYERS; i++) { - if (Rfu.recvBlock[i].receiving) + if (gRfu.recvBlock[i].receiving != RECV_STATE_READY) return FALSE; } return TRUE; } -static bool8 sub_800FC88(void) +static bool8 AreAllPlayersFinishedReceiving(void) { s32 i; - for (i = 0; i < Rfu.playerCount; i++) + for (i = 0; i < gRfu.playerCount; i++) { - if (Rfu.recvBlock[i].receiving != 2 || Rfu.blockReceived[i] != TRUE) + if (gRfu.recvBlock[i].receiving != RECV_STATE_FINISHED || gRfu.blockReceived[i] != TRUE) return FALSE; } return TRUE; @@ -1197,7 +1206,7 @@ static void ResetSendDataManager(struct RfuBlockSend *data) data->receivedFlags = 0; data->sending = FALSE; data->owner = 0; - data->receiving = 0; + data->receiving = RECV_STATE_READY; } u8 Rfu_GetBlockReceivedStatus(void) @@ -1207,7 +1216,7 @@ u8 Rfu_GetBlockReceivedStatus(void) for (i = 0; i < MAX_RFU_PLAYERS; i++) { - if (Rfu.recvBlock[i].receiving == 2 && Rfu.blockReceived[i] == TRUE) + if (gRfu.recvBlock[i].receiving == RECV_STATE_FINISHED && gRfu.blockReceived[i] == TRUE) flags |= (1 << i); } return flags; @@ -1223,25 +1232,25 @@ static void RfuPrepareSendBuffer(u16 command) switch (command) { case RFUCMD_SEND_BLOCK_INIT: - gSendCmd[1] = Rfu.sendBlock.count; - gSendCmd[2] = Rfu.sendBlock.owner + 0x80; + gSendCmd[1] = gRfu.sendBlock.count; + gSendCmd[2] = gRfu.sendBlock.owner + 0x80; break; case RFUCMD_SEND_BLOCK_REQ: - if (AreNoPlayersReceiving()) - gSendCmd[1] = Rfu.blockRequestType; + if (AreAllPlayersReadyToReceive()) + gSendCmd[1] = gRfu.blockRequestType; break; case RFUCMD_SEND_PLAYER_IDS: case RFUCMD_SEND_PLAYER_IDS_NEW: - tmp = Rfu.unk_ce2 ^ Rfu.disconnectSlots; - Rfu.playerCount = sPlayerBitsToCount[tmp] + 1; - gSendCmd[1] = Rfu.playerCount; + tmp = gRfu.unk_ce2 ^ gRfu.disconnectSlots; + gRfu.playerCount = sPlayerBitsToCount[tmp] + 1; + gSendCmd[1] = gRfu.playerCount; buff = (u8 *)&gSendCmd[2]; for (i = 0; i < RFU_CHILD_MAX; i++) - buff[i] = Rfu.linkPlayerIdx[i]; + buff[i] = gRfu.linkPlayerIdx[i]; break; case RFUCMD_READY_EXIT_STANDBY: case RFUCMD_READY_CLOSE_LINK: - gSendCmd[1] = Rfu.allReadyNum; + gSendCmd[1] = gRfu.allReadyNum; break; case RFUCMD_BLENDER_SEND_KEYS: gSendCmd[0] = command; @@ -1249,7 +1258,7 @@ static void RfuPrepareSendBuffer(u16 command) break; case RFUCMD_SEND_PACKET: for (i = 0; i < RFU_PACKET_SIZE; i++) - gSendCmd[1 + i] = Rfu.packet[i]; + gSendCmd[1 + i] = gRfu.packet[i]; break; case RFUCMD_SEND_HELD_KEYS: gSendCmd[1] = gHeldKeyCodeToSend; @@ -1264,7 +1273,7 @@ void Rfu_SendPacket(void *data) { if (gSendCmd[0] == 0 && !RfuHasErrored()) { - memcpy(Rfu.packet, data, sizeof(Rfu.packet)); + memcpy(gRfu.packet, data, sizeof(gRfu.packet)); RfuPrepareSendBuffer(RFUCMD_SEND_PACKET); } } @@ -1272,31 +1281,31 @@ void Rfu_SendPacket(void *data) bool32 Rfu_InitBlockSend(const u8 *src, size_t size) { bool8 r4; - if (Rfu.callback != NULL) + if (gRfu.callback != NULL) return FALSE; if (gSendCmd[0] != 0) return FALSE; - if (Rfu.sendBlock.sending) + if (gRfu.sendBlock.sending) { sRfuDebug.blockSendTime++; return FALSE; } r4 = (size % 12) != 0; - Rfu.sendBlock.owner = GetMultiplayerId(); - Rfu.sendBlock.sending = TRUE; - Rfu.sendBlock.count = (size / 12) + r4; - Rfu.sendBlock.next = 0; + gRfu.sendBlock.owner = GetMultiplayerId(); + gRfu.sendBlock.sending = TRUE; + gRfu.sendBlock.count = (size / 12) + r4; + gRfu.sendBlock.next = 0; if (size > BLOCK_BUFFER_SIZE) - Rfu.sendBlock.payload = src; + gRfu.sendBlock.payload = src; else { if (src != gBlockSendBuffer) memcpy(gBlockSendBuffer, src, size); - Rfu.sendBlock.payload = gBlockSendBuffer; + gRfu.sendBlock.payload = gBlockSendBuffer; } RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_INIT); - Rfu.callback = HandleBlockSend; - Rfu.unk_5b = 0; + gRfu.callback = HandleBlockSend; + gRfu.blockSendAttempts = 0; return TRUE; } @@ -1305,15 +1314,15 @@ static void HandleBlockSend(void) if (gSendCmd[0] == 0) { RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_INIT); - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { - if (++Rfu.unk_5b > 2) - Rfu.callback = SendNextBlock; + if (++gRfu.blockSendAttempts > 2) + gRfu.callback = SendNextBlock; } else { if ((gRecvCmds[GetMultiplayerId()][0] & RFUCMD_MASK) == RFUCMD_SEND_BLOCK_INIT) - Rfu.callback = SendNextBlock; + gRfu.callback = SendNextBlock; } } } @@ -1321,50 +1330,50 @@ static void HandleBlockSend(void) static void SendNextBlock(void) { s32 i; - const u8 *src = Rfu.sendBlock.payload; - gSendCmd[0] = RFUCMD_SEND_BLOCK | Rfu.sendBlock.next; + const u8 *src = gRfu.sendBlock.payload; + gSendCmd[0] = RFUCMD_SEND_BLOCK | gRfu.sendBlock.next; for (i = 0; i < CMD_LENGTH - 1; i++) - gSendCmd[i + 1] = (src[(i << 1) + Rfu.sendBlock.next * 12 + 1] << 8) | src[(i << 1) + Rfu.sendBlock.next * 12 + 0]; - Rfu.sendBlock.next++; - if (Rfu.sendBlock.count <= Rfu.sendBlock.next) + gSendCmd[i + 1] = (src[(i << 1) + gRfu.sendBlock.next * 12 + 1] << 8) | src[(i << 1) + gRfu.sendBlock.next * 12 + 0]; + gRfu.sendBlock.next++; + if (gRfu.sendBlock.count <= gRfu.sendBlock.next) { - Rfu.sendBlock.sending = FALSE; - Rfu.callback = SendLastBlock; + gRfu.sendBlock.sending = FALSE; + gRfu.callback = SendLastBlock; } } static void SendLastBlock(void) { - const u8 *src = Rfu.sendBlock.payload; + const u8 *src = gRfu.sendBlock.payload; u8 mpId = GetMultiplayerId(); s32 i; - if (Rfu.parentChild == MODE_CHILD) + if (gRfu.parentChild == MODE_CHILD) { - gSendCmd[0] = RFUCMD_SEND_BLOCK | (Rfu.sendBlock.count - 1); + gSendCmd[0] = RFUCMD_SEND_BLOCK | (gRfu.sendBlock.count - 1); for (i = 0; i < CMD_LENGTH - 1; i++) - gSendCmd[i + 1] = (src[(i << 1) + (Rfu.sendBlock.count - 1) * 12 + 1] << 8) | src[(i << 1) + (Rfu.sendBlock.count - 1) * 12 + 0]; - if ((u8)gRecvCmds[mpId][0] == Rfu.sendBlock.count - 1) + gSendCmd[i + 1] = (src[(i << 1) + (gRfu.sendBlock.count - 1) * 12 + 1] << 8) | src[(i << 1) + (gRfu.sendBlock.count - 1) * 12 + 0]; + if ((u8)gRecvCmds[mpId][0] == gRfu.sendBlock.count - 1) { - if (Rfu.recvBlock[mpId].receivedFlags != sAllBlocksReceived[Rfu.recvBlock[mpId].count]) + if (gRfu.recvBlock[mpId].receivedFlags != sAllBlocksReceived[gRfu.recvBlock[mpId].count]) { - HandleSendFailure(mpId, Rfu.recvBlock[mpId].receivedFlags); - sRfuDebug.unk_64++; + HandleSendFailure(mpId, gRfu.recvBlock[mpId].receivedFlags); + sRfuDebug.blockSendFailures++; } else { - Rfu.callback = NULL; + gRfu.callback = NULL; } } } else { - Rfu.callback = NULL; + gRfu.callback = NULL; } } bool8 Rfu_SendBlockRequest(u8 type) { - Rfu.blockRequestType = type; + gRfu.blockRequestType = type; RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_REQ); return TRUE; } @@ -1374,8 +1383,8 @@ static void RfuShutdownAfterDisconnect(void) rfu_clearAllSlot(); rfu_LMAN_powerDownRFU(); gReceivedRemoteLinkPlayers = 0; - Rfu.isShuttingDown = TRUE; - Rfu.callback = NULL; + gRfu.isShuttingDown = TRUE; + gRfu.callback = NULL; } static void DisconnectRfu(void) @@ -1387,68 +1396,68 @@ static void DisconnectRfu(void) static void TryDisconnectRfu(void) { - if (Rfu.parentChild == MODE_CHILD) + if (gRfu.parentChild == MODE_CHILD) { rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; + gRfu.disconnectMode = RFU_DISCONNECT_NORMAL; } else { - Rfu.callback = DisconnectRfu; + gRfu.callback = DisconnectRfu; } } void LinkRfu_FatalError(void) { rfu_LMAN_requestChangeAgbClockMaster(); - Rfu.disconnectMode = RFU_DISCONNECT_ERROR; - Rfu.disconnectSlots = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; + gRfu.disconnectMode = RFU_DISCONNECT_ERROR; + gRfu.disconnectSlots = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; } // RFU equivalent of LinkCB_WaitCloseLink static void WaitAllReadyToCloseLink(void) { s32 i; - u8 playerCount = Rfu.playerCount; + u8 playerCount = gRfu.playerCount; s32 count = 0; // Wait for all players to be ready for (i = 0; i < MAX_RFU_PLAYERS; i++) { - if (Rfu.readyCloseLink[i]) + if (gRfu.readyCloseLink[i]) count++; } if (count == playerCount) { // All ready, close link gBattleTypeFlags &= ~BATTLE_TYPE_LINK_IN_BATTLE; - if (Rfu.parentChild == MODE_CHILD) + if (gRfu.parentChild == MODE_CHILD) { - Rfu.errorState = RFU_ERROR_STATE_3; + gRfu.errorState = RFU_ERROR_STATE_3; TryDisconnectRfu(); } else { - Rfu.callback = TryDisconnectRfu; + gRfu.callback = TryDisconnectRfu; } } } static void SendReadyCloseLink(void) { - if (gSendCmd[0] == 0 && !Rfu.unk_ce8) + if (gSendCmd[0] == 0 && !gRfu.unk_ce8) { RfuPrepareSendBuffer(RFUCMD_READY_CLOSE_LINK); - Rfu.callback = WaitAllReadyToCloseLink; + gRfu.callback = WaitAllReadyToCloseLink; } } static void Task_TryReadyCloseLink(u8 taskId) { - if (Rfu.callback == NULL) + if (gRfu.callback == NULL) { - Rfu.stopNewConnections = TRUE; - Rfu.callback = SendReadyCloseLink; + gRfu.stopNewConnections = TRUE; + gRfu.callback = SendReadyCloseLink; DestroyTask(taskId); } } @@ -1466,34 +1475,34 @@ static void SendReadyExitStandbyUntilAllReady(void) if (GetMultiplayerId() != 0) { - if (Rfu.recvQueue.count == 0 && Rfu.resendExitStandbyTimer > 60) + if (gRfu.recvQueue.count == 0 && gRfu.resendExitStandbyTimer > 60) { RfuPrepareSendBuffer(RFUCMD_READY_EXIT_STANDBY); - Rfu.resendExitStandbyTimer = 0; + gRfu.resendExitStandbyTimer = 0; } } playerCount = GetLinkPlayerCount(); for (i = 0; i < playerCount; i++) { - if (!Rfu.readyExitStandby[i]) + if (!gRfu.readyExitStandby[i]) break; } if (i == playerCount) { for (i = 0; i < MAX_RFU_PLAYERS; i++) - Rfu.readyExitStandby[i] = FALSE; - Rfu.allReadyNum++; - Rfu.callback = NULL; + gRfu.readyExitStandby[i] = FALSE; + gRfu.allReadyNum++; + gRfu.callback = NULL; } - Rfu.resendExitStandbyTimer++; + gRfu.resendExitStandbyTimer++; } static void LinkLeaderReadyToExitStandby(void) { - if (Rfu.recvQueue.count == 0 && gSendCmd[0] == 0) + if (gRfu.recvQueue.count == 0 && gSendCmd[0] == 0) { RfuPrepareSendBuffer(RFUCMD_READY_EXIT_STANDBY); - Rfu.callback = SendReadyExitStandbyUntilAllReady; + gRfu.callback = SendReadyExitStandbyUntilAllReady; } } @@ -1506,10 +1515,10 @@ static void Rfu_LinkStandby(void) if (GetMultiplayerId() != 0) { // Not link leader, send exit standby when ready - if (Rfu.recvQueue.count == 0 && gSendCmd[0] == 0) + if (gRfu.recvQueue.count == 0 && gSendCmd[0] == 0) { RfuPrepareSendBuffer(RFUCMD_READY_EXIT_STANDBY); - Rfu.callback = SendReadyExitStandbyUntilAllReady; + gRfu.callback = SendReadyExitStandbyUntilAllReady; } } else @@ -1518,15 +1527,15 @@ static void Rfu_LinkStandby(void) playerCount = GetLinkPlayerCount(); for (i = 1; i < playerCount; i++) { - if (!Rfu.readyExitStandby[i]) + if (!gRfu.readyExitStandby[i]) break; } if (i == playerCount) { - if (Rfu.recvQueue.count == 0 && gSendCmd[0] == 0) + if (gRfu.recvQueue.count == 0 && gSendCmd[0] == 0) { RfuPrepareSendBuffer(RFUCMD_READY_EXIT_STANDBY); - Rfu.callback = LinkLeaderReadyToExitStandby; + gRfu.callback = LinkLeaderReadyToExitStandby; } } } @@ -1534,10 +1543,10 @@ static void Rfu_LinkStandby(void) void Rfu_SetLinkStandbyCallback(void) { - if (Rfu.callback == NULL) + if (gRfu.callback == NULL) { - Rfu.callback = Rfu_LinkStandby; - Rfu.resendExitStandbyTimer = 0; + gRfu.callback = Rfu_LinkStandby; + gRfu.resendExitStandbyTimer = 0; } } @@ -1562,33 +1571,33 @@ u8 Rfu_SetLinkRecovery(bool32 enable) void Rfu_StopPartnerSearch(void) { - Rfu.stopNewConnections = TRUE; + gRfu.stopNewConnections = TRUE; rfu_LMAN_stopManager(FALSE); } u8 Rfu_GetMultiplayerId(void) { - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) return 0; - return Rfu.multiplayerId; + return gRfu.multiplayerId; } u8 Rfu_GetLinkPlayerCount(void) { - return Rfu.playerCount; + return gRfu.playerCount; } bool8 IsLinkRfuTaskFinished(void) { - if (Rfu.status == RFU_STATUS_CONNECTION_ERROR) + if (gRfu.status == RFU_STATUS_CONNECTION_ERROR) return FALSE; - return Rfu.callback ? FALSE : TRUE; + return gRfu.callback ? FALSE : TRUE; } static void CallRfuFunc(void) { - if (Rfu.callback) - Rfu.callback(); + if (gRfu.callback) + gRfu.callback(); } static bool8 CheckForLeavingGroupMembers(void) @@ -1597,23 +1606,23 @@ static bool8 CheckForLeavingGroupMembers(void) bool8 memberLeft = FALSE; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerSendStatuses[i] < RFU_STATUS_JOIN_GROUP_OK - || Rfu.partnerSendStatuses[i] > RFU_STATUS_JOIN_GROUP_NO) + if (gRfu.partnerSendStatuses[i] < RFU_STATUS_JOIN_GROUP_OK + || gRfu.partnerSendStatuses[i] > RFU_STATUS_JOIN_GROUP_NO) { if (gRfuSlotStatusNI[i]->recv.state == SLOT_STATE_RECV_SUCCESS || gRfuSlotStatusNI[i]->recv.state == SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_LEAVE_GROUP_NOTICE) + if (gRfu.partnerRecvStatuses[i] == RFU_STATUS_LEAVE_GROUP_NOTICE) { - Rfu.partnerSendStatuses[i] = RFU_STATUS_LEAVE_GROUP; - Rfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE_READY; + gRfu.partnerSendStatuses[i] = RFU_STATUS_LEAVE_GROUP; + gRfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE_READY; rfu_clearSlot(TYPE_NI_RECV, i); - rfu_NI_setSendData(1 << i, 8, &Rfu.partnerSendStatuses[i], 1); + rfu_NI_setSendData(1 << i, 8, &gRfu.partnerSendStatuses[i], 1); memberLeft = TRUE; } } - else if (gRfuSlotStatusNI[Rfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED) + else if (gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED) rfu_clearSlot(TYPE_NI_RECV, i); { @@ -1631,10 +1640,10 @@ bool32 RfuTryDisconnectLeavingChildren(void) // Check all children, get those waiting to be disconnected for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) + if (gRfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) { childrenLeaving |= (1 << i); - Rfu.partnerRecvStatuses[i] = RFU_STATUS_OK; + gRfu.partnerRecvStatuses[i] = RFU_STATUS_OK; } } @@ -1648,8 +1657,8 @@ bool32 RfuTryDisconnectLeavingChildren(void) // Return true if any children have left or are still waiting to leave for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY - || Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) + if (gRfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY + || gRfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE) return TRUE; } return FALSE; @@ -1660,7 +1669,7 @@ bool32 HasTrainerLeftPartnersList(u16 trainerId, const u8 *name) u8 idx = GetPartnerIndexByNameAndTrainerID(name, trainerId); if (idx == 0xFF) return TRUE; - if (Rfu.partnerSendStatuses[idx] == RFU_STATUS_LEAVE_GROUP) + if (gRfu.partnerSendStatuses[idx] == RFU_STATUS_LEAVE_GROUP) return TRUE; return FALSE; } @@ -1668,16 +1677,16 @@ bool32 HasTrainerLeftPartnersList(u16 trainerId, const u8 *name) void SendRfuStatusToPartner(u8 status, u16 trainerId, const u8 *name) { u8 idx = GetPartnerIndexByNameAndTrainerID(name, trainerId); - Rfu.partnerSendStatuses[idx] = status; + gRfu.partnerSendStatuses[idx] = status; rfu_clearSlot(TYPE_NI_SEND, idx); - rfu_NI_setSendData(1 << idx, 8, &Rfu.partnerSendStatuses[idx], 1); + rfu_NI_setSendData(1 << idx, 8, &gRfu.partnerSendStatuses[idx], 1); } void SendLeaveGroupNotice(void) { - Rfu.unk_c85 = RFU_STATUS_LEAVE_GROUP_NOTICE; - rfu_clearSlot(TYPE_NI_SEND, Rfu.childSlot); - rfu_NI_setSendData(1 << Rfu.childSlot, 8, &Rfu.unk_c85, 1); + gRfu.leaveGroupStatus = RFU_STATUS_LEAVE_GROUP_NOTICE; + rfu_clearSlot(TYPE_NI_SEND, gRfu.childSlot); + rfu_NI_setSendData(1 << gRfu.childSlot, 8, &gRfu.leaveGroupStatus, 1); } u32 WaitSendRfuStatusToPartner(u16 trainerId, const u8 *name) @@ -1700,32 +1709,32 @@ static void UpdateChildStatuses(void) if (gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_SUCCESS || gRfuSlotStatusNI[i]->send.state == SLOT_STATE_SEND_FAILED) { - if (Rfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY) - Rfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE; + if (gRfu.partnerRecvStatuses[i] == RFU_STATUS_CHILD_LEAVE_READY) + gRfu.partnerRecvStatuses[i] = RFU_STATUS_CHILD_LEAVE; rfu_clearSlot(TYPE_NI_SEND, i); } } } -static s32 sub_80107A0(void) +static s32 GetJoinGroupStatus(void) { s32 status = RFU_STATUS_OK; - if (Rfu.unk_c85 == RFU_STATUS_LEAVE_GROUP_NOTICE) + if (gRfu.leaveGroupStatus == RFU_STATUS_LEAVE_GROUP_NOTICE) { - if (gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_SUCCESS - || gRfuSlotStatusNI[Rfu.childSlot]->send.state == SLOT_STATE_SEND_FAILED) - rfu_clearSlot(TYPE_NI_SEND, Rfu.childSlot); + if (gRfuSlotStatusNI[gRfu.childSlot]->send.state == SLOT_STATE_SEND_SUCCESS + || gRfuSlotStatusNI[gRfu.childSlot]->send.state == SLOT_STATE_SEND_FAILED) + rfu_clearSlot(TYPE_NI_SEND, gRfu.childSlot); } - if (gRfuSlotStatusNI[Rfu.childSlot]->recv.state == SLOT_STATE_RECV_SUCCESS - || gRfuSlotStatusNI[Rfu.childSlot]->recv.state == SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN) + if (gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_SUCCESS + || gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN) { - rfu_clearSlot(TYPE_NI_RECV, Rfu.childSlot); - RfuSetStatus(Rfu.recvStatus, 0); - status = Rfu.recvStatus; + rfu_clearSlot(TYPE_NI_RECV, gRfu.childSlot); + RfuSetStatus(gRfu.recvStatus, 0); + status = gRfu.recvStatus; } - else if (gRfuSlotStatusNI[Rfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED) + else if (gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED) { - rfu_clearSlot(TYPE_NI_RECV, Rfu.childSlot); + rfu_clearSlot(TYPE_NI_RECV, gRfu.childSlot); status = RFU_STATUS_JOIN_GROUP_NO; } return status; @@ -1733,19 +1742,19 @@ static s32 sub_80107A0(void) #define tState data[0] -static void sub_801084C(u8 taskId) +static void Task_PlayerExchange(u8 taskId) { s32 i; - if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) + if (gRfu.status == RFU_STATUS_FATAL_ERROR || gRfu.status == RFU_STATUS_CONNECTION_ERROR) { - Rfu.unk_ce8 = FALSE; + gRfu.unk_ce8 = FALSE; DestroyTask(taskId); } switch (gTasks[taskId].tState) { case 0: - if (AreNoPlayersReceiving()) + if (AreAllPlayersReadyToReceive()) { ResetBlockReceivedFlags(); LocalLinkPlayerToBlock(); @@ -1753,7 +1762,7 @@ static void sub_801084C(u8 taskId) } break; case 1: - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { if (gReceivedRemoteLinkPlayers) RfuPrepareSendBuffer(RFUCMD_SEND_PLAYER_IDS_NEW); @@ -1769,15 +1778,15 @@ static void sub_801084C(u8 taskId) gTasks[taskId].tState = 2; break; case 2: - if (Rfu.playerCount) + if (gRfu.playerCount) gTasks[taskId].tState++; break; case 3: - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { - if (AreNoPlayersReceiving()) + if (AreAllPlayersReadyToReceive()) { - Rfu.blockRequestType = BLOCK_REQ_SIZE_NONE; + gRfu.blockRequestType = BLOCK_REQ_SIZE_NONE; RfuPrepareSendBuffer(RFUCMD_SEND_BLOCK_REQ); gTasks[taskId].tState++; } @@ -1786,11 +1795,11 @@ static void sub_801084C(u8 taskId) gTasks[taskId].tState++; break; case 4: - if (sub_800FC88()) + if (AreAllPlayersFinishedReceiving()) gTasks[taskId].tState++; break; case 5: - for (i = 0; i < Rfu.playerCount; i++) + for (i = 0; i < gRfu.playerCount; i++) { LinkPlayerFromBlock(i); Rfu_ResetBlockReceivedFlag(i); @@ -1800,16 +1809,16 @@ static void sub_801084C(u8 taskId) case 6: DestroyTask(taskId); gReceivedRemoteLinkPlayers = TRUE; - Rfu.unk_ce8 = FALSE; + gRfu.unk_ce8 = FALSE; rfu_LMAN_setLinkRecovery(1, 600); - if (Rfu.unk_ce6) + if (gRfu.newChildQueue) { for (i = 0; i < RFU_CHILD_MAX; i++) { - if ((Rfu.unk_ce6 >> i) & 1) + if ((gRfu.newChildQueue >> i) & 1) { - Rfu.unk_ce5 = 1 << i; - Rfu.unk_ce6 ^= (1 << i); + gRfu.nextChildBits = 1 << i; + gRfu.newChildQueue ^= (1 << i); } } } @@ -1824,16 +1833,16 @@ static void ClearSelectedLinkPlayerIds(u16 selected) for (i = 0; i < RFU_CHILD_MAX; i++) { if ((selected >> i) & 1) - Rfu.linkPlayerIdx[i] = 0; + gRfu.linkPlayerIdx[i] = 0; } } static void ReceiveRfuLinkPlayers(const struct SioInfo *sioInfo) { s32 i; - Rfu.playerCount = sioInfo->playerCount; + gRfu.playerCount = sioInfo->playerCount; for (i = 0; i < RFU_CHILD_MAX; i++) - Rfu.linkPlayerIdx[i] = sioInfo->linkPlayerIdx[i]; + gRfu.linkPlayerIdx[i] = sioInfo->linkPlayerIdx[i]; for (i = 0; i < MAX_RFU_PLAYERS; i++) { gLinkPlayers[i] = sioInfo->linkPlayers[i]; @@ -1851,15 +1860,16 @@ static void ValidateAndReceivePokemonSioInfo(void *recvBuffer) } } -static void Task_ExchangeLinkPlayers(u8 taskId) +// Equivalent to Task_PlayerExchange, but for when new children arrive after the first exchange +static void Task_PlayerExchangeUpdate(u8 taskId) { s32 i; struct LinkPlayerBlock *playerBlock; struct SioInfo *sio; - u8 playerId = Rfu.linkPlayerIdx[sUnknown_082ED68C[Rfu.unk_ce9]]; - if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) + u8 playerId = gRfu.linkPlayerIdx[sUnknown_082ED68C[gRfu.incomingChild]]; + if (gRfu.status == RFU_STATUS_FATAL_ERROR || gRfu.status == RFU_STATUS_CONNECTION_ERROR) { - Rfu.unk_ce8 = FALSE; + gRfu.unk_ce8 = FALSE; DestroyTask(taskId); } switch (gTasks[taskId].tState) @@ -1889,17 +1899,17 @@ static void Task_ExchangeLinkPlayers(u8 taskId) case 3: sio = (struct SioInfo *)gBlockSendBuffer; memcpy(sio->magic, sASCII_PokemonSioInfo, sizeof sASCII_PokemonSioInfo); - sio->playerCount = Rfu.playerCount; + sio->playerCount = gRfu.playerCount; for (i = 0; i < RFU_CHILD_MAX; i++) - sio->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; + sio->linkPlayerIdx[i] = gRfu.linkPlayerIdx[i]; memcpy(sio->linkPlayers, gLinkPlayers, sizeof gLinkPlayers); gTasks[taskId].tState++; // fallthrough case 4: sio = (struct SioInfo *)gBlockSendBuffer; - sio->playerCount = Rfu.playerCount; + sio->playerCount = gRfu.playerCount; for (i = 0; i < RFU_CHILD_MAX; i++) - sio->linkPlayerIdx[i] = Rfu.linkPlayerIdx[i]; + sio->linkPlayerIdx[i] = gRfu.linkPlayerIdx[i]; memcpy(sio->linkPlayers, gLinkPlayers, sizeof(gLinkPlayers)); if (SendBlock(0, gBlockSendBuffer, 0xa0)) gTasks[taskId].tState++; @@ -1909,16 +1919,16 @@ static void Task_ExchangeLinkPlayers(u8 taskId) { CpuFill16(0, gBlockRecvBuffer, sizeof(struct SioInfo)); ResetBlockReceivedFlag(0); - Rfu.unk_ce8 = FALSE; - if (Rfu.unk_ce6) + gRfu.unk_ce8 = FALSE; + if (gRfu.newChildQueue) { - for (i = 0; i < 4; i++) + for (i = 0; i < RFU_CHILD_MAX; i++) { - if ((Rfu.unk_ce6 >> i) & 1) + if ((gRfu.newChildQueue >> i) & 1) { - Rfu.unk_ce5 = 1 << i; - Rfu.unk_ce6 ^= (1 << i); - Rfu.unk_ce8 = TRUE; + gRfu.nextChildBits = 1 << i; + gRfu.newChildQueue ^= (1 << i); + gRfu.unk_ce8 = TRUE; break; } } @@ -1929,14 +1939,15 @@ static void Task_ExchangeLinkPlayers(u8 taskId) } } -static void sub_8010D0C(u8 taskId) +// Equivalent to Task_PlayerExchange but for chatting with a Union Room partner +static void Task_PlayerExchangeChat(u8 taskId) { - if (Rfu.status == RFU_STATUS_FATAL_ERROR || Rfu.status == RFU_STATUS_CONNECTION_ERROR) + if (gRfu.status == RFU_STATUS_FATAL_ERROR || gRfu.status == RFU_STATUS_CONNECTION_ERROR) DestroyTask(taskId); switch (gTasks[taskId].tState) { case 0: - if (Rfu.playerCount) + if (gRfu.playerCount) { LocalLinkPlayerToBlock(); SendBlock(0, gBlockSendBuffer, sizeof(struct LinkPlayerBlock)); @@ -1961,17 +1972,17 @@ static void sub_8010D0C(u8 taskId) static void RfuCheckErrorStatus(void) { - if (Rfu.errorState == RFU_ERROR_STATE_1 && lman.childClockSlave_flag == 0) + if (gRfu.errorState == RFU_ERROR_STATE_1 && lman.childClockSlave_flag == 0) { if (gMain.callback2 == c2_mystery_gift_e_reader_run || lman.init_param->mboot_flag) gWirelessCommType = 2; SetMainCallback2(CB2_LinkError); gMain.savedCallback = CB2_LinkError; - BufferLinkErrorInfo((Rfu.linkmanMsg << 16) | (Rfu.unk_10 << 8) | Rfu.unk_12, Rfu.recvQueue.count, Rfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); - Rfu.errorState = RFU_ERROR_STATE_2; + BufferLinkErrorInfo((gRfu.linkmanMsg << 16) | (gRfu.unk_10 << 8) | gRfu.unk_12, gRfu.recvQueue.count, gRfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); + gRfu.errorState = RFU_ERROR_STATE_2; CloseLink(); } - else if (Rfu.sendQueue.full == TRUE || Rfu.recvQueue.full == TRUE) + else if (gRfu.sendQueue.full == TRUE || gRfu.recvQueue.full == TRUE) { if (lman.childClockSlave_flag) rfu_LMAN_requestChangeAgbClockMaster(); @@ -1994,11 +2005,11 @@ static void RfuMain1_UnionRoom(void) bool32 RfuMain1(void) { bool32 retval = FALSE; - Rfu.parentId = 0; + gRfu.parentId = 0; rfu_LMAN_manager_entity(Random2()); - if (!Rfu.isShuttingDown) + if (!gRfu.isShuttingDown) { - switch (Rfu.parentChild) + switch (gRfu.parentChild) { case MODE_PARENT: RfuMain1_Parent(); @@ -2018,143 +2029,147 @@ bool32 RfuMain1(void) bool32 RfuMain2(void) { bool32 retval = FALSE; - if (!Rfu.isShuttingDown) + if (!gRfu.isShuttingDown) { - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) retval = RfuMain2_Parent(); RfuCheckErrorStatus(); } return retval; } -static void CopyPlayerNameToUnameBuffer(void) +static void SetHostRfuUsername(void) { - StringCopy(gHostRFUtgtUnameBuffer, gSaveBlock2Ptr->playerName); + StringCopy(gHostRfuUsername, gSaveBlock2Ptr->playerName); } -void ClearAndInitHostRFUtgtGname(void) +void ResetHostRfuGameData(void) { - memset(&gHostRFUtgtGnameBuffer, 0, RFU_GAME_NAME_LENGTH); - InitHostRFUtgtGname(&gHostRFUtgtGnameBuffer, ACTIVITY_NONE, FALSE, 0); + memset(&gHostRfuGameData, 0, RFU_GAME_NAME_LENGTH); + InitHostRfuGameData(&gHostRfuGameData, ACTIVITY_NONE, FALSE, 0); } -void SetHostRFUtgtGname(u8 activity, u32 child_sprite_genders, bool32 started) +void SetHostRfuGameData(u8 activity, u32 partnerInfo, bool32 startedActivity) { - InitHostRFUtgtGname(&gHostRFUtgtGnameBuffer, activity, started, child_sprite_genders); + InitHostRfuGameData(&gHostRfuGameData, activity, startedActivity, partnerInfo); } -void SetGnameBufferWonderFlags(bool32 hasNews, bool32 hasCard) +void SetHostRfuWonderFlags(bool32 hasNews, bool32 hasCard) { - gHostRFUtgtGnameBuffer.unk_00.hasNews = hasNews; - gHostRFUtgtGnameBuffer.unk_00.hasCard = hasCard; + gHostRfuGameData.compatibility.hasNews = hasNews; + gHostRfuGameData.compatibility.hasCard = hasCard; } void SetTradeBoardRegisteredMonInfo(u32 type, u32 species, u32 level) { - gHostRFUtgtGnameBuffer.type = type; - gHostRFUtgtGnameBuffer.species = species; - gHostRFUtgtGnameBuffer.level = level; + gHostRfuGameData.tradeType = type; + gHostRfuGameData.tradeSpecies = species; + gHostRfuGameData.tradeLevel = level; } u8 GetLinkPlayerInfoFlags(s32 playerId) { - u8 retval = 0x80; - retval |= (gLinkPlayers[playerId].gender << 3); - retval |= (gLinkPlayers[playerId].trainerId & 7); + u8 retval = PINFO_ACTIVE_FLAG; + retval |= (gLinkPlayers[playerId].gender << PINFO_GENDER_SHIFT); + retval |= (gLinkPlayers[playerId].trainerId & PINFO_TID_MASK); return retval; } void GetOtherPlayersInfoFlags(void) { - struct GFtgtGname *gname = &gHostRFUtgtGnameBuffer; + struct RfuGameData *data = &gHostRfuGameData; s32 i; for (i = 1; i < GetLinkPlayerCount(); i++) - gname->child_sprite_gender[i - 1] = GetLinkPlayerInfoFlags(i); + data->partnerInfo[i - 1] = GetLinkPlayerInfoFlags(i); } -void UpdateGameData_GroupLockedIn(bool8 started) +void UpdateGameData_GroupLockedIn(bool8 startedActivity) { - gHostRFUtgtGnameBuffer.started = started; - rfu_REQ_configGameData(0, RFU_SERIAL_A, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); + gHostRfuGameData.startedActivity = startedActivity; + rfu_REQ_configGameData(0, RFU_SERIAL_GAME, (void *)&gHostRfuGameData, gHostRfuUsername); } -void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 started) +void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 startedActivity) { if (activity != ACTIVITY_NONE) - SetHostRFUtgtGname(activity, flags, started); - rfu_REQ_configGameData(0, RFU_SERIAL_A, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); + SetHostRfuGameData(activity, flags, startedActivity); + rfu_REQ_configGameData(0, RFU_SERIAL_GAME, (void *)&gHostRfuGameData, gHostRfuUsername); } void SetUnionRoomChatPlayerData(u32 numPlayers) { s32 i; u32 numConnectedChildren; - u32 child_sprite_genders; + u32 partnerInfo; s32 slots; - if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { numConnectedChildren = 0; - child_sprite_genders = 0; - slots = Rfu.unk_ce2 ^ Rfu.disconnectSlots; - for (i = 0; i < 4; i++) + partnerInfo = 0; + slots = gRfu.unk_ce2 ^ gRfu.disconnectSlots; + for (i = 0; i < RFU_CHILD_MAX; i++) { if ((slots >> i) & 1) { - child_sprite_genders |= ((0x80 | ((gLinkPlayers[Rfu.linkPlayerIdx[i]].gender & 1) << 3) | (gLinkPlayers[Rfu.linkPlayerIdx[i]].trainerId & 7)) << (numConnectedChildren << 3)); + // Only trainerId is shifted by the number of children, so the active flag and gender + // are only ever set for the first child + partnerInfo |= ((PINFO_ACTIVE_FLAG + | ((gLinkPlayers[gRfu.linkPlayerIdx[i]].gender & 1) << PINFO_GENDER_SHIFT) + | (gLinkPlayers[gRfu.linkPlayerIdx[i]].trainerId & PINFO_TID_MASK)) << (numConnectedChildren * 8)); numConnectedChildren++; if (numConnectedChildren == numPlayers - 1) break; } } - UpdateGameData_SetActivity(ACTIVITY_CHAT | IN_UNION_ROOM, child_sprite_genders, FALSE); + UpdateGameData_SetActivity(ACTIVITY_CHAT | IN_UNION_ROOM, partnerInfo, FALSE); } } void GetLinkmanErrorParams(u32 msg) { - if (Rfu.errorState == RFU_ERROR_STATE_NONE) + if (gRfu.errorState == RFU_ERROR_STATE_NONE) { - Rfu.unk_10 = lman.param[0]; - Rfu.unk_12 = lman.param[1]; - Rfu.linkmanMsg = msg; - Rfu.errorState = RFU_ERROR_STATE_1; + gRfu.unk_10 = lman.param[0]; + gRfu.unk_12 = lman.param[1]; + gRfu.linkmanMsg = msg; + gRfu.errorState = RFU_ERROR_STATE_1; } } static void ResetErrorState(void) { - Rfu.errorState = RFU_ERROR_STATE_NONE; + gRfu.errorState = RFU_ERROR_STATE_NONE; } void RfuSetIgnoreError(bool32 enable) { if (!enable) - Rfu.errorState = RFU_ERROR_STATE_NONE; + gRfu.errorState = RFU_ERROR_STATE_NONE; else - Rfu.errorState = RFU_ERROR_STATE_IGNORE; + gRfu.errorState = RFU_ERROR_STATE_IGNORE; } static void DisconnectNewChild(void) { SendDisconnectCommand(lman.acceptSlot_flag, RFU_DISCONNECT_ERROR); - Rfu.callback = NULL; + gRfu.callback = NULL; } static void StartDisconnectNewChild(void) { - Rfu.callback = DisconnectNewChild; + gRfu.callback = DisconnectNewChild; } -static void sub_801120C(u8 msg, u8 paramCount) +static void LinkManagerCB_Parent(u8 msg, u8 paramCount) { u8 i; u8 disconnectFlag = 0; switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = RFUSTATE_PARENT_CONNECT; + gRfu.state = RFUSTATE_PARENT_CONNECT; break; case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: break; @@ -2164,12 +2179,12 @@ static void sub_801120C(u8 msg, u8 paramCount) { if ((lman.param[0] >> i) & 1) { - struct GFtgtGname *structPtr = (void *)gRfuLinkStatus->partner[i].gname; - if (structPtr->activity == GetHostRFUtgtGname()->activity) + struct RfuGameData *data = (void *)gRfuLinkStatus->partner[i].gname; + if (data->activity == GetHostRfuGameData()->activity) { - Rfu.partnerSendStatuses[i] = RFU_STATUS_OK; - Rfu.partnerRecvStatuses[i] = RFU_STATUS_OK; - rfu_setRecvBuffer(TYPE_NI, i, &Rfu.partnerRecvStatuses[i], sizeof(Rfu.partnerRecvStatuses[0])); + gRfu.partnerSendStatuses[i] = RFU_STATUS_OK; + gRfu.partnerRecvStatuses[i] = RFU_STATUS_OK; + rfu_setRecvBuffer(TYPE_NI, i, &gRfu.partnerRecvStatuses[i], sizeof(gRfu.partnerRecvStatuses[0])); } else { @@ -2188,26 +2203,26 @@ static void sub_801120C(u8 msg, u8 paramCount) case LMAN_MSG_SEARCH_CHILD_PERIOD_EXPIRED: break; case LMAN_MSG_END_WAIT_CHILD_NAME: - if (Rfu.acceptSlot_flag != lman.acceptSlot_flag) + if (gRfu.acceptSlot_flag != lman.acceptSlot_flag) { - rfu_REQ_disconnect(Rfu.acceptSlot_flag ^ lman.acceptSlot_flag); + rfu_REQ_disconnect(gRfu.acceptSlot_flag ^ lman.acceptSlot_flag); rfu_waitREQComplete(); } - Rfu.state = RFUSTATE_PARENT_FINALIZE_START; + gRfu.state = RFUSTATE_PARENT_FINALIZE_START; break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_START_RECOVERY: - Rfu.linkLossRecoveryState = 1; + gRfu.linkLossRecoveryState = 1; break; case LMAN_MSG_LINK_RECOVERY_SUCCESSED: - Rfu.linkLossRecoveryState = 3; + gRfu.linkLossRecoveryState = 3; break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_DISCONNECTED: case LMAN_MSG_LINK_RECOVERY_FAILED_AND_DISCONNECTED: - Rfu.linkLossRecoveryState = 4; - Rfu.unk_ce2 &= ~lman.param[0]; + gRfu.linkLossRecoveryState = 4; + gRfu.unk_ce2 &= ~lman.param[0]; if (gReceivedRemoteLinkPlayers == 1) { - if (Rfu.unk_ce2 == 0) + if (gRfu.unk_ce2 == 0) GetLinkmanErrorParams(msg); else StartDisconnectNewChild(); @@ -2222,7 +2237,7 @@ static void sub_801120C(u8 msg, u8 paramCount) case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); GetLinkmanErrorParams(msg); - Rfu.isShuttingDown = TRUE; + gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: case LMAN_MSG_WATCH_DOG_TIMER_ERROR: @@ -2230,59 +2245,59 @@ static void sub_801120C(u8 msg, u8 paramCount) case LMAN_MSG_RFU_FATAL_ERROR: GetLinkmanErrorParams(msg); RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - Rfu.unk_cdb = TRUE; + gRfu.unk_cdb = TRUE; break; } } -void sub_8011404(u8 msg, u8 unused1) +static void LinkManagerCB_Child(u8 msg, u8 unused1) { switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = RFUSTATE_CHILD_CONNECT; + gRfu.state = RFUSTATE_CHILD_CONNECT; break; case LMAN_MSG_PARENT_FOUND: - Rfu.parentId = lman.param[0]; + gRfu.parentId = lman.param[0]; break; case LMAN_MSG_SEARCH_PARENT_PERIOD_EXPIRED: break; case LMAN_MSG_CONNECT_PARENT_SUCCESSED: - Rfu.childSlot = lman.param[0]; + gRfu.childSlot = lman.param[0]; break; case LMAN_MSG_CONNECT_PARENT_FAILED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: - Rfu.state = RFUSTATE_CHILD_TRY_JOIN; - Rfu.unk_c85 = RFU_STATUS_OK; - Rfu.recvStatus = RFU_STATUS_OK; - rfu_setRecvBuffer(TYPE_NI, Rfu.childSlot, &Rfu.recvStatus, sizeof(Rfu.recvStatus)); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); + gRfu.state = RFUSTATE_CHILD_TRY_JOIN; + gRfu.leaveGroupStatus = RFU_STATUS_OK; + gRfu.recvStatus = RFU_STATUS_OK; + rfu_setRecvBuffer(TYPE_NI, gRfu.childSlot, &gRfu.recvStatus, sizeof(gRfu.recvStatus)); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_DISCONNECTED: - Rfu.linkLossRecoveryState = 2; - if (Rfu.recvStatus == RFU_STATUS_JOIN_GROUP_NO) + gRfu.linkLossRecoveryState = 2; + if (gRfu.recvStatus == RFU_STATUS_JOIN_GROUP_NO) break; case LMAN_MSG_LINK_RECOVERY_FAILED_AND_DISCONNECTED: - if (Rfu.linkLossRecoveryState != 2) - Rfu.linkLossRecoveryState = 4; - if (Rfu.recvStatus != RFU_STATUS_LEAVE_GROUP) + if (gRfu.linkLossRecoveryState != 2) + gRfu.linkLossRecoveryState = 4; + if (gRfu.recvStatus != RFU_STATUS_LEAVE_GROUP) RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); Debug_PrintString(sASCII_LinkLossDisconnect, 5, 5); if (gReceivedRemoteLinkPlayers == 1) GetLinkmanErrorParams(msg); break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_START_RECOVERY: - Rfu.linkLossRecoveryState = 1; + gRfu.linkLossRecoveryState = 1; Debug_PrintString(sASCII_LinkLossRecoveryNow, 5, 5); break; case LMAN_MSG_LINK_RECOVERY_SUCCESSED: - Rfu.linkLossRecoveryState = 3; - Rfu.linkRecovered = TRUE; + gRfu.linkLossRecoveryState = 3; + gRfu.linkRecovered = TRUE; break; case 0x34: // ? Not a valid LMAN_MSG value break; @@ -2293,7 +2308,7 @@ void sub_8011404(u8 msg, u8 unused1) case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); GetLinkmanErrorParams(msg); - Rfu.isShuttingDown = TRUE; + gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: case LMAN_MSG_WATCH_DOG_TIMER_ERROR: @@ -2301,7 +2316,7 @@ void sub_8011404(u8 msg, u8 unused1) case LMAN_MSG_RFU_FATAL_ERROR: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); GetLinkmanErrorParams(msg); - Rfu.unk_cdb = TRUE; + gRfu.unk_cdb = TRUE; break; } } @@ -2314,23 +2329,23 @@ static void sub_80115EC(s32 a0) { if ((a0 >> i) & 1) { - Rfu.unk_cea[i] = 0; - Rfu.unk_cee[i] = 0xFF; + gRfu.unk_cea[i] = 0; + gRfu.unk_cee[i] = 0xFF; } } } -static u8 GetNewChildrenInUnionRoomChat(s32 a0) +static u8 GetNewChildrenInUnionRoomChat(s32 emptySlotMask) { u8 ret = 0; u8 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - if ((a0 >> i) & 1) + if ((emptySlotMask >> i) & 1) { - struct GFtgtGname *structPtr = (void *)gRfuLinkStatus->partner[i].gname; - if (structPtr->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) + struct RfuGameData *data = (void *)gRfuLinkStatus->partner[i].gname; + if (data->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) ret |= (1 << i); } } @@ -2338,43 +2353,43 @@ static u8 GetNewChildrenInUnionRoomChat(s32 a0) return ret; } -static void sub_8011674(u8 msg, u8 paramCount) +static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) { - u8 r1; + u8 acceptSlot; switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - Rfu.state = RFUSTATE_17; + gRfu.state = RFUSTATE_17; break; case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: RfuSetStatus(RFU_STATUS_NEW_CHILD_DETECTED, 0); break; case LMAN_MSG_NEW_CHILD_CONNECT_ACCEPTED: - if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && !Rfu.stopNewConnections) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && !gRfu.stopNewConnections) { - u8 idx = GetNewChildrenInUnionRoomChat(lman.param[0]); - if (idx != 0) + u8 newChildren = GetNewChildrenInUnionRoomChat(lman.param[0]); + if (newChildren != 0) { - r1 = 1 << sub_800E87C(idx); - if (Rfu.unk_ce6 == 0 && !Rfu.unk_ce8) + acceptSlot = 1 << Rfu_GetIndexOfNewestChild(newChildren); + if (gRfu.newChildQueue == 0 && !gRfu.unk_ce8) { - Rfu.unk_ce5 = r1; - Rfu.unk_ce6 |= (r1 ^ idx); - Rfu.unk_ce8 = TRUE; + gRfu.nextChildBits = acceptSlot; + gRfu.newChildQueue |= (acceptSlot ^ newChildren); + gRfu.unk_ce8 = TRUE; } else { - Rfu.unk_ce6 |= idx; + gRfu.newChildQueue |= newChildren; } } - if (idx != lman.param[0]) + if (newChildren != lman.param[0]) { - Rfu.disconnectSlots |= (idx ^ lman.param[0]); - Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; + gRfu.disconnectSlots |= (newChildren ^ lman.param[0]); + gRfu.disconnectMode = RFU_DISCONNECT_NORMAL; } } - else if (GetHostRFUtgtGname()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM)) + else if (GetHostRfuGameData()->activity == (ACTIVITY_PLYRTALK | IN_UNION_ROOM)) { rfu_REQ_disconnect(lman.acceptSlot_flag); rfu_waitREQComplete(); @@ -2386,30 +2401,30 @@ static void sub_8011674(u8 msg, u8 paramCount) case LMAN_MSG_SEARCH_CHILD_PERIOD_EXPIRED: break; case LMAN_MSG_END_WAIT_CHILD_NAME: - if (GetHostRFUtgtGname()->activity != (ACTIVITY_CHAT | IN_UNION_ROOM) && lman.acceptCount > 1) + if (GetHostRfuGameData()->activity != (ACTIVITY_CHAT | IN_UNION_ROOM) && lman.acceptCount > 1) { - r1 = 1 << sub_800E87C(lman.param[0]); - rfu_REQ_disconnect(lman.acceptSlot_flag ^ r1); + acceptSlot = 1 << Rfu_GetIndexOfNewestChild(lman.param[0]); + rfu_REQ_disconnect(lman.acceptSlot_flag ^ acceptSlot); rfu_waitREQComplete(); } - if (Rfu.state == RFUSTATE_15) - Rfu.state = RFUSTATE_UR_FINALIZE; + if (gRfu.state == RFUSTATE_15) + gRfu.state = RFUSTATE_UR_FINALIZE; break; break; case LMAN_MSG_PARENT_FOUND: - Rfu.parentId = lman.param[0]; + gRfu.parentId = lman.param[0]; break; case LMAN_MSG_SEARCH_PARENT_PERIOD_EXPIRED: break; case LMAN_MSG_CONNECT_PARENT_SUCCESSED: - Rfu.childSlot = lman.param[0]; + gRfu.childSlot = lman.param[0]; break; case LMAN_MSG_CONNECT_PARENT_FAILED: - Rfu.state = RFUSTATE_18; - if (Rfu.connectParentFailures < 2) + gRfu.state = RFUSTATE_PARENT_RECONNECT; + if (gRfu.connectParentFailures < 2) { - Rfu.connectParentFailures++; - CreateTask(sub_801209C, 2); + gRfu.connectParentFailures++; + CreateTask(Task_TryConnectToUnionRoomParent, 2); } else { @@ -2417,39 +2432,39 @@ static void sub_8011674(u8 msg, u8 paramCount) } break; case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: - Rfu.state = RFUSTATE_13; + gRfu.state = RFUSTATE_UR_PLAYER_EXCHANGE; RfuSetStatus(RFU_STATUS_CHILD_SEND_COMPLETE, 0); - rfu_setRecvBuffer(TYPE_UNI, Rfu.childSlot, Rfu.unk_c3f, sizeof(Rfu.unk_c3f)); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_START_RECOVERY: if (lman.acceptSlot_flag & lman.param[0]) - Rfu.linkLossRecoveryState = 1; + gRfu.linkLossRecoveryState = 1; break; case LMAN_MSG_LINK_RECOVERY_SUCCESSED: - Rfu.linkLossRecoveryState = 3; + gRfu.linkLossRecoveryState = 3; if (gRfuLinkStatus->parentChild == MODE_CHILD) - Rfu.linkRecovered = TRUE; + gRfu.linkRecovered = TRUE; break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_DISCONNECTED: - Rfu.linkLossRecoveryState = 2; + gRfu.linkLossRecoveryState = 2; case LMAN_MSG_LINK_RECOVERY_FAILED_AND_DISCONNECTED: - if (Rfu.linkLossRecoveryState != 2) - Rfu.linkLossRecoveryState = 4; - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.linkLossRecoveryState != 2) + gRfu.linkLossRecoveryState = 4; + if (gRfu.parentChild == MODE_PARENT) { if (gReceivedRemoteLinkPlayers == 1) { - Rfu.unk_ce2 &= ~(lman.param[0]); - if (Rfu.unk_ce2 == 0) + gRfu.unk_ce2 &= ~(lman.param[0]); + if (gRfu.unk_ce2 == 0) GetLinkmanErrorParams(msg); else StartDisconnectNewChild(); } } - else if (Rfu.disconnectMode != RFU_DISCONNECT_NORMAL && gReceivedRemoteLinkPlayers == 1) + else if (gRfu.disconnectMode != RFU_DISCONNECT_NORMAL && gReceivedRemoteLinkPlayers == 1) { GetLinkmanErrorParams(msg); rfu_LMAN_stopManager(0); @@ -2457,13 +2472,13 @@ static void sub_8011674(u8 msg, u8 paramCount) if (gRfuLinkStatus->parentChild == MODE_NEUTRAL && lman.pcswitch_flag == 0 - && FuncIsActiveTask(Task_LinkRfu_UnionRoomListen) == TRUE) - Rfu.state = RFUSTATE_17; + && FuncIsActiveTask(Task_UnionRoomListen) == TRUE) + gRfu.state = RFUSTATE_17; RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_LINK_DISCONNECTED_BY_USER: - Rfu.disconnectSlots = 0; + gRfu.disconnectSlots = 0; break; case LMAN_MSG_RFU_POWER_DOWN: case LMAN_MSG_MANAGER_STOPPED: @@ -2472,7 +2487,7 @@ static void sub_8011674(u8 msg, u8 paramCount) case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); GetLinkmanErrorParams(msg); - Rfu.isShuttingDown = TRUE; + gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: case LMAN_MSG_WATCH_DOG_TIMER_ERROR: @@ -2480,25 +2495,25 @@ static void sub_8011674(u8 msg, u8 paramCount) case LMAN_MSG_RFU_FATAL_ERROR: GetLinkmanErrorParams(msg); RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - Rfu.unk_cdb = FALSE; + gRfu.unk_cdb = FALSE; break; } } void RfuSetNormalDisconnectMode(void) { - Rfu.disconnectMode = RFU_DISCONNECT_NORMAL; + gRfu.disconnectMode = RFU_DISCONNECT_NORMAL; } void RfuSetStatus(u8 status, u16 msg) { - Rfu.status = status; - Rfu.linkmanMsg = msg; + gRfu.status = status; + gRfu.linkmanMsg = msg; } u8 RfuGetStatus(void) { - return Rfu.status; + return gRfu.status; } bool32 RfuHasErrored(void) @@ -2513,12 +2528,12 @@ bool32 RfuHasErrored(void) bool32 sub_8011A9C(void) { - return Rfu.unk_ce8; + return gRfu.unk_ce8; } bool8 Rfu_IsMaster(void) { - return Rfu.parentChild; + return gRfu.parentChild; } void RfuVSync(void) @@ -2531,14 +2546,15 @@ void ClearRecvCommands(void) CpuFill32(0, gRecvCmds, sizeof(gRecvCmds)); } -static void sub_8011AE8(void) +static void VBlank_RfuIdle(void) { LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); } -static void sub_8011AFC(void) +// Unused +static void Debug_RfuIdle(void) { s32 i; @@ -2546,14 +2562,14 @@ static void sub_8011AFC(void) FreeAllSpritePalettes(); ResetTasks(); ResetPaletteFade(); - SetVBlankCallback(sub_8011AE8); + SetVBlankCallback(VBlank_RfuIdle); if (IsWirelessAdapterConnected()) { gLinkType = LINKTYPE_TRADE; SetWirelessCommType1(); OpenLink(); SeedRng(gMain.vblankCounter2); - for (i = 0; i < 4; i++) + for (i = 0; i < TRAINER_ID_LENGTH; i++) gSaveBlock2Ptr->playerTrainerId[i] = Random() % 256; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_1D_MAP); @@ -2562,28 +2578,28 @@ static void sub_8011AFC(void) BuildOamBuffer(); UpdatePaletteFade(); CreateTask_RfuIdle(); - SetMainCallback2(sub_8011BF8); + SetMainCallback2(CB2_RfuIdle); } } bool32 IsUnionRoomListenTaskActive(void) { - return FuncIsActiveTask(Task_LinkRfu_UnionRoomListen); + return FuncIsActiveTask(Task_UnionRoomListen); } void CreateTask_RfuIdle(void) { if (!FuncIsActiveTask(Task_Idle)) - Rfu.idleTaskId = CreateTask(Task_Idle, 0); + gRfu.idleTaskId = CreateTask(Task_Idle, 0); } void DestroyTask_RfuIdle(void) { if (FuncIsActiveTask(Task_Idle) == TRUE) - DestroyTask(Rfu.idleTaskId); + DestroyTask(gRfu.idleTaskId); } -static void sub_8011BF8(void) +static void CB2_RfuIdle(void) { RunTasks(); AnimateSprites(); @@ -2593,31 +2609,31 @@ static void sub_8011BF8(void) void InitializeRfuLinkManager_LinkLeader(u32 a0) { - Rfu.parentChild = MODE_PARENT; - CopyPlayerNameToUnameBuffer(); - rfu_LMAN_initializeManager(sub_801120C, NULL); + gRfu.parentChild = MODE_PARENT; + SetHostRfuUsername(); + rfu_LMAN_initializeManager(LinkManagerCB_Parent, NULL); sRfuReqConfig = sRfuReqConfigTemplate; sRfuReqConfig.availSlot_flag = sAvailSlots[a0 - 1]; - CreateTask_LinkLeaderSearchForChildren(); + CreateTask_ParentSearchForChildren(); } void InitializeRfuLinkManager_JoinGroup(void) { - Rfu.parentChild = MODE_CHILD; - CopyPlayerNameToUnameBuffer(); - rfu_LMAN_initializeManager(sub_8011404, sub_800ED34); - CreateTask_JoinGroupSearchForParent(); + gRfu.parentChild = MODE_CHILD; + SetHostRfuUsername(); + rfu_LMAN_initializeManager(LinkManagerCB_Child, LinkManagerCB_MSC); + CreateTask_ChildSearchForParent(); } void InitializeRfuLinkManager_EnterUnionRoom(void) { - Rfu.parentChild = MODE_P_C_SWITCH; - CopyPlayerNameToUnameBuffer(); - rfu_LMAN_initializeManager(sub_8011674, NULL); + gRfu.parentChild = MODE_P_C_SWITCH; + SetHostRfuUsername(); + rfu_LMAN_initializeManager(LinkManagerCB_UnionRoom, NULL); sRfuReqConfig = sRfuReqConfigTemplate; sRfuReqConfig.linkRecovery_enable = 0; sRfuReqConfig.linkRecovery_period = 600; - Rfu.searchTaskId = CreateTask(Task_LinkRfu_UnionRoomListen, 1); + gRfu.searchTaskId = CreateTask(Task_UnionRoomListen, 1); } static u16 ReadU16(const void *ptr) @@ -2651,10 +2667,10 @@ static void RfuReqDisconnectSlot(u32 slot) { rfu_REQ_disconnect(slot); rfu_waitREQComplete(); - Rfu.unk_ce2 &= ~(slot); - rfu_clearSlot(1, Rfu.unk_cda); - rfu_UNI_setSendData(Rfu.unk_ce2, Rfu.recvCmds, 70); - Rfu.unk_cda = sub_800E87C(Rfu.unk_ce2); + gRfu.unk_ce2 &= ~slot; + rfu_clearSlot(1, gRfu.unk_cda); + rfu_UNI_setSendData(gRfu.unk_ce2, gRfu.recvCmds, 70); + gRfu.unk_cda = Rfu_GetIndexOfNewestChild(gRfu.unk_ce2); } void RequestDisconnectSlotByTrainerNameAndId(const u8 *name, u16 id) @@ -2673,7 +2689,7 @@ void Rfu_DisconnectPlayerById(u32 playerIdx) for (i = 0; i < RFU_CHILD_MAX; i++) { - if (Rfu.linkPlayerIdx[i] == playerIdx && (Rfu.unk_ce2 >> i) & 1) + if (gRfu.linkPlayerIdx[i] == playerIdx && (gRfu.unk_ce2 >> i) & 1) toDisconnect |= 1 << i; } if (toDisconnect) @@ -2686,13 +2702,13 @@ void Rfu_DisconnectPlayerById(u32 playerIdx) static void Task_SendDisconnectCommand(u8 taskId) { - if (gSendCmd[0] == 0 && !Rfu.unk_ce8) + if (gSendCmd[0] == 0 && !gRfu.unk_ce8) { RfuPrepareSendBuffer(RFUCMD_DISCONNECT); gSendCmd[1] = gTasks[taskId].tDisconnectPlayers; gSendCmd[2] = gTasks[taskId].tDisconnectMode; - Rfu.playerCount -= sPlayerBitsToCount[gTasks[taskId].tDisconnectPlayers]; - gSendCmd[3] = Rfu.playerCount; + gRfu.playerCount -= sPlayerBitsToCount[gTasks[taskId].tDisconnectPlayers]; + gSendCmd[3] = gRfu.playerCount; DestroyTask(taskId); } } @@ -2729,12 +2745,12 @@ static void Task_RfuReconnectWithParent(u8 taskId) { if (gRfuLinkStatus->partner[id].slot != 0xFF) { - Rfu.unk_c3d = id; + gRfu.unk_c3d = id; if (TryReconnectParent()) DestroyTask(taskId); } - else if (GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_CARD2 - || GetHostRFUtgtGname()->activity == ACTIVITY_WONDER_NEWS2) + else if (GetHostRfuGameData()->activity == ACTIVITY_WONDER_CARD + || GetHostRfuGameData()->activity == ACTIVITY_WONDER_NEWS) { tTime++; } @@ -2748,7 +2764,7 @@ static void Task_RfuReconnectWithParent(u8 taskId) else { tTime++; - Rfu.unk_c3d = id; + gRfu.unk_c3d = id; } } else @@ -2771,40 +2787,40 @@ void CreateTask_RfuReconnectWithParent(const u8 *name, u16 trainerId) u8 taskId; s16 *data; - Rfu.status = RFU_STATUS_OK; + gRfu.status = RFU_STATUS_OK; taskId = CreateTask(Task_RfuReconnectWithParent, 3); data = gTasks[taskId].data; StringCopy((u8*)(data), name); data[8] = trainerId; } -static bool32 IsPartnerActivityIncompatible(s16 activity, struct GFtgtGname *partnerGname) +static bool32 IsPartnerActivityIncompatible(s16 activity, struct RfuGameData *partner) { - if (GetHostRFUtgtGname()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { // Host trying to chat, but partner isn't - if (partnerGname->activity != (ACTIVITY_CHAT | IN_UNION_ROOM)) + if (partner->activity != (ACTIVITY_CHAT | IN_UNION_ROOM)) return TRUE; } - else if (partnerGname->activity != IN_UNION_ROOM) + else if (partner->activity != IN_UNION_ROOM) { // Partner not in union room return TRUE; } else if (activity == (ACTIVITY_TRADE | IN_UNION_ROOM)) { - // Trying to trade, make sure trade matches request - struct GFtgtGname *tradeGname = &Rfu.unk_10A; - if (tradeGname->species == SPECIES_EGG) + // Verify that the trade offered hasn't changed + struct RfuGameData *original = &gRfu.parent; + if (original->tradeSpecies == SPECIES_EGG) { - if (partnerGname->species == tradeGname->species) + if (partner->tradeSpecies == original->tradeSpecies) return FALSE; else return TRUE; } - else if (partnerGname->species != tradeGname->species - || partnerGname->level != tradeGname->level - || partnerGname->type != tradeGname->type) + else if (partner->tradeSpecies != original->tradeSpecies + || partner->tradeLevel != original->tradeLevel + || partner->tradeType != original->tradeType) { return TRUE; } @@ -2816,9 +2832,10 @@ static bool32 IsPartnerActivityIncompatible(s16 activity, struct GFtgtGname *par #define tTime data[0] #define tActivity data[1] -static void sub_801209C(u8 taskId) +static void Task_TryConnectToUnionRoomParent(u8 taskId) { - if (Rfu.status == RFU_STATUS_NEW_CHILD_DETECTED) + // Stop task if player is the new parent + if (gRfu.status == RFU_STATUS_NEW_CHILD_DETECTED) DestroyTask(taskId); if (++gTasks[taskId].tTime > 300) @@ -2828,17 +2845,21 @@ static void sub_801209C(u8 taskId) DestroyTask(taskId); } - if (Rfu.parentId != 0 && lman.parent_child == MODE_CHILD) + // Check if parent should be searched for + if (gRfu.parentId != 0 && lman.parent_child == MODE_CHILD) { - u16 trainerId = ReadU16(Rfu.unk_10A.unk_00.playerTrainerId); - u8 id = GetPartnerIndexByNameAndTrainerID(Rfu.playerName, trainerId); + // Search for parent + u16 trainerId = ReadU16(gRfu.parent.compatibility.playerTrainerId); + u8 id = GetPartnerIndexByNameAndTrainerID(gRfu.parentName, trainerId); if (id != 0xFF) { + // Parent found, try to connect if (!IsPartnerActivityIncompatible(gTasks[taskId].tActivity, (void *)gRfuLinkStatus->partner[id].gname)) { if (gRfuLinkStatus->partner[id].slot != 0xFF && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[id].id, 90)) { - Rfu.state = RFUSTATE_10; + // Succesfully connected to parent + gRfu.state = RFUSTATE_CONNECTED; DestroyTask(taskId); } } @@ -2852,33 +2873,33 @@ static void sub_801209C(u8 taskId) } } -void sub_8012188(const u8 *name, struct GFtgtGname *gname, u8 activity) +void TryConnectToUnionRoomParent(const u8 *name, struct RfuGameData *parent, u8 activity) { - u8 taskId, taskId2; + u8 taskId, listenTaskId; - Rfu.connectParentFailures = 0; - Rfu.status = RFU_STATUS_OK; - StringCopy(Rfu.playerName, name); - memcpy(&Rfu.unk_10A, gname, RFU_GAME_NAME_LENGTH); + gRfu.connectParentFailures = 0; + gRfu.status = RFU_STATUS_OK; + StringCopy(gRfu.parentName, name); + memcpy(&gRfu.parent, parent, RFU_GAME_NAME_LENGTH); rfu_LMAN_forceChangeSP(); - taskId = CreateTask(sub_801209C, 2); + taskId = CreateTask(Task_TryConnectToUnionRoomParent, 2); gTasks[taskId].tActivity = activity; - taskId2 = FindTaskIdByFunc(Task_LinkRfu_UnionRoomListen); + listenTaskId = FindTaskIdByFunc(Task_UnionRoomListen); if (activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { - if (taskId2 != TASK_NONE) - gTasks[taskId2].tData7 = TRUE; + if (listenTaskId != TASK_NONE) + gTasks[listenTaskId].tConnectingForChat = TRUE; } else { - if (taskId2 != TASK_NONE) - gTasks[taskId2].tData7 = FALSE; + if (listenTaskId != TASK_NONE) + gTasks[listenTaskId].tConnectingForChat = FALSE; } } bool8 IsRfuRecoveringFromLinkLoss(void) { - if (Rfu.linkLossRecoveryState == 1) + if (gRfu.linkLossRecoveryState == 1) return TRUE; else return FALSE; @@ -2892,7 +2913,7 @@ bool32 IsRfuCommunicatingWithAllChildren(void) // RFU_STATUS_OK is the default status. // If any connected child is receiving a status other // than OK, then the parent is communicating with them - if ((lman.acceptSlot_flag >> i) & 1 && Rfu.partnerSendStatuses[i] == RFU_STATUS_OK) + if ((lman.acceptSlot_flag >> i) & 1 && gRfu.partnerSendStatuses[i] == RFU_STATUS_OK) return FALSE; } @@ -2912,7 +2933,7 @@ static void Debug_PrintStatus(void) Debug_PrintNum(GetBlockReceivedStatus(), 28, 19, 2); Debug_PrintNum(gRfuLinkStatus->connSlotFlag, 20, 1, 1); Debug_PrintNum(gRfuLinkStatus->linkLossSlotFlag, 23, 1, 1); - if (Rfu.parentChild == MODE_PARENT) + if (gRfu.parentChild == MODE_PARENT) { for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -2926,7 +2947,7 @@ static void Debug_PrintStatus(void) for (i = 0; i < RFU_CHILD_MAX; i++) { for (j = 0; j < CHILD_DATA_LENGTH; j++) - Debug_PrintNum(Rfu.childRecvBuffer[i][j], j * 2, i + 11, 2); + Debug_PrintNum(gRfu.childRecvBuffer[i][j], j * 2, i + 11, 2); } Debug_PrintString(sASCII_NowSlot, 1, 15); } @@ -2938,9 +2959,9 @@ static void Debug_PrintStatus(void) Debug_PrintString(sASCII_15Spaces, 6, i + 3); Debug_PrintString(sASCII_8Spaces, 22, i + 3); } - Debug_PrintNum(gRfuLinkStatus->partner[Rfu.childSlot].serialNo, 1, 3, 4); - Debug_PrintString((void*)gRfuLinkStatus->partner[Rfu.childSlot].gname, 6, 3); - Debug_PrintString(gRfuLinkStatus->partner[Rfu.childSlot].uname, 22, 3); + Debug_PrintNum(gRfuLinkStatus->partner[gRfu.childSlot].serialNo, 1, 3, 4); + Debug_PrintString((void*)gRfuLinkStatus->partner[gRfu.childSlot].gname, 6, 3); + Debug_PrintString(gRfuLinkStatus->partner[gRfu.childSlot].uname, 22, 3); } else { @@ -2964,12 +2985,12 @@ static void Debug_PrintStatus(void) static u32 GetRfuSendQueueLength(void) { - return Rfu.sendQueue.count; + return gRfu.sendQueue.count; } u32 GetRfuRecvQueueLength(void) { - return Rfu.recvQueue.count; + return gRfu.recvQueue.count; } static void Task_Idle(u8 taskId) diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 08678c40f4a1..acac57d35c5d 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -15,6 +15,9 @@ enum { WIRELESS_STATUS_ANIM_ERROR, }; +#define TAG_GFX_STATUS_INDICATOR 0xD431 +#define TAG_PAL_STATUS_INDICATOR 0xD432 + #define UNUSED_QUEUE_NUM_SLOTS 2 #define UNUSED_QUEUE_SLOT_LENGTH 256 @@ -29,7 +32,7 @@ struct RfuUnusedQueue EWRAM_DATA u8 gWirelessStatusIndicatorSpriteId = 0; -static u8 sUnknown_03000D74; +static u8 sSequenceArrayValOffset; static const u16 sWirelessLinkIconPalette[] = INCBIN_U16("graphics/interface/wireless_link_icon.gbapal"); static const u32 sWirelessLinkIconPic[] = INCBIN_U32("graphics/interface/wireless_link_icon.4bpp.lz"); @@ -290,16 +293,16 @@ static const union AnimCmd *const sWirelessStatusIndicatorAnims[] = { }; static const struct CompressedSpriteSheet sWirelessStatusIndicatorSpriteSheet = { - sWirelessLinkIconPic, 0x0380, 0xD431 + sWirelessLinkIconPic, 0x0380, TAG_GFX_STATUS_INDICATOR }; static const struct SpritePalette sWirelessStatusIndicatorSpritePalette = { - sWirelessLinkIconPalette, 0xD432 + sWirelessLinkIconPalette, TAG_PAL_STATUS_INDICATOR }; static const struct SpriteTemplate sWirelessStatusIndicatorSpriteTemplate = { - .tileTag = 0xD431, - .paletteTag = 0xD432, + .tileTag = TAG_GFX_STATUS_INDICATOR, + .paletteTag = TAG_PAL_STATUS_INDICATOR, .oam = &sWirelessStatusIndicatorOamData, .anims = sWirelessStatusIndicatorAnims, .images = NULL, @@ -333,9 +336,7 @@ void RfuSendQueue_Reset(struct RfuSendQueue *queue) for (i = 0; i < SEND_QUEUE_NUM_SLOTS; i++) { for (j = 0; j < SEND_QUEUE_SLOT_LENGTH; j++) - { queue->slots[i][j] = 0; - } } queue->sendSlot = 0; queue->recvSlot = 0; @@ -351,9 +352,7 @@ static void RfuUnusedQueue_Reset(struct RfuUnusedQueue *queue) for (i = 0; i < UNUSED_QUEUE_NUM_SLOTS; i++) { for (j = 0; j < UNUSED_QUEUE_SLOT_LENGTH; j++) - { queue->slots[i][j] = 0; - } } queue->sendSlot = 0; queue->recvSlot = 0; @@ -555,46 +554,57 @@ static bool8 RfuUnusedQueue_Dequeue(struct RfuUnusedQueue *queue, u8 *dest) } // Unused -static void sub_800DBF8(u8 *q1, u8 mode) +// Populates an array with a sequence of numbers (which numbers depends on the mode) +// and sets the final element to the total of the other elements +#define SEQ_ARRAY_MAX_SIZE 200 +static void PopulateArrayWithSequence(u8 *arr, u8 mode) { s32 i; u8 rval; - u16 r5 = 0; + u16 total = 0; switch (mode) { case 0: - for (i = 0; i < 200; i++) + // Populate with numbers 1-200 + // Total will be 20100 + for (i = 0; i < SEQ_ARRAY_MAX_SIZE; i++) { - q1[i] = i + 1; - r5 += i + 1; + arr[i] = i + 1; + total += i + 1; } - *((u16 *)(q1 + i)) = r5; + *((u16 *)(arr + i)) = total; break; case 1: + // Populate with numbers 1-100 + // Total will be 5050 for (i = 0; i < 100; i++) { - q1[i] = i + 1; - r5 += i + 1; + arr[i] = i + 1; + total += i + 1; } - *((u16 *)(q1 + 200)) = r5; + *((u16 *)(arr + SEQ_ARRAY_MAX_SIZE)) = total; break; case 2: - for (i = 0; i < 200; i++) + // Populate with random numbers 0-255 + // Total will be a number 0-51000 + for (i = 0; i < SEQ_ARRAY_MAX_SIZE; i++) { rval = Random(); - q1[i] = rval; - r5 += rval; + arr[i] = rval; + total += rval; } - *((u16 *)(q1 + i)) = r5; + *((u16 *)(arr + i)) = total; break; case 3: - for (i = 0; i < 200; i++) + // Populate with numbers 1-200 + sSequenceArrayValOffset + // Total will be a number 20100-51000 + for (i = 0; i < SEQ_ARRAY_MAX_SIZE; i++) { - q1[i] = i + 1 + sUnknown_03000D74; - r5 += (i + 1 + sUnknown_03000D74) & 0xFF; + arr[i] = i + 1 + sSequenceArrayValOffset; + total += (i + 1 + sSequenceArrayValOffset) & 0xFF; } - *((u16 *)(q1 + i)) = r5; - sUnknown_03000D74++; + *((u16 *)(arr + i)) = total; + sSequenceArrayValOffset++; break; } } @@ -606,9 +616,7 @@ static void PkmnStrToASCII(u8 *asciiStr, const u8 *pkmnStr) s32 i; for (i = 0; pkmnStr[i] != EOS; i++) - { asciiStr[i] = sWireless_RSEtoASCIITable[pkmnStr[i]]; - } asciiStr[i] = 0; } @@ -617,9 +625,7 @@ static void ASCIIToPkmnStr(u8 *pkmnStr, const u8 *asciiStr) s32 i; for (i = 0; asciiStr[i] != 0; i++) - { pkmnStr[i] = sWireless_ASCIItoRSETable[asciiStr[i]]; - } pkmnStr[i] = EOS; } @@ -655,33 +661,32 @@ static u8 GetConnectedChildStrength(u8 maxFlags) return 0; } -void InitHostRFUtgtGname(struct GFtgtGname *data, u8 activity, bool32 started, s32 child_sprite_genders) +void InitHostRfuGameData(struct RfuGameData *data, u8 activity, bool32 startedActivity, s32 partnerInfo) { s32 i; - for (i = 0; i < 2; i++) - { - data->unk_00.playerTrainerId[i] = gSaveBlock2Ptr->playerTrainerId[i]; - } + for (i = 0; i < (s32)ARRAY_COUNT(data->compatibility.playerTrainerId); i++) + data->compatibility.playerTrainerId[i] = gSaveBlock2Ptr->playerTrainerId[i]; + for (i = 0; i < RFU_CHILD_MAX; i++) { - data->child_sprite_gender[i] = child_sprite_genders; - child_sprite_genders >>= 8; + data->partnerInfo[i] = partnerInfo; + partnerInfo >>= 8; // Each element is 1 byte } data->playerGender = gSaveBlock2Ptr->playerGender; data->activity = activity; - data->started = started; - data->unk_00.language = GAME_LANGUAGE; - data->unk_00.version = GAME_VERSION; - data->unk_00.hasNews = FALSE; - data->unk_00.hasCard = FALSE; - data->unk_00.unknown = FALSE; - data->unk_00.isChampion = FlagGet(FLAG_IS_CHAMPION); - data->unk_00.hasNationalDex = IsNationalPokedexEnabled(); - data->unk_00.gameClear = FlagGet(FLAG_SYS_GAME_CLEAR); + data->startedActivity = startedActivity; + data->compatibility.language = GAME_LANGUAGE; + data->compatibility.version = GAME_VERSION; + data->compatibility.hasNews = FALSE; + data->compatibility.hasCard = FALSE; + data->compatibility.unknown = FALSE; + data->compatibility.isChampion = FlagGet(FLAG_IS_CHAMPION); + data->compatibility.hasNationalDex = IsNationalPokedexEnabled(); + data->compatibility.gameClear = FlagGet(FLAG_SYS_GAME_CLEAR); } -bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx) +bool8 Rfu_GetCompatiblePlayerData(struct RfuGameData *gameData, u8 *username, u8 idx) { bool8 retVal; @@ -690,13 +695,13 @@ bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx) retVal = TRUE; if (IsRfuSerialNumberValid(gRfuLinkStatus->partner[idx].serialNo) && ((gRfuLinkStatus->getNameFlag >> idx) & 1)) { - memcpy(buff1, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); - memcpy(buff2, gRfuLinkStatus->partner[idx].uname, PLAYER_NAME_LENGTH + 1); + memcpy(gameData, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); + memcpy(username, gRfuLinkStatus->partner[idx].uname, RFU_USER_NAME_LENGTH); } else { - memset(buff1, 0, RFU_GAME_NAME_LENGTH); - memset(buff2, 0, PLAYER_NAME_LENGTH + 1); + memset(gameData, 0, RFU_GAME_NAME_LENGTH); + memset(username, 0, RFU_USER_NAME_LENGTH); } } else @@ -704,39 +709,39 @@ bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *buff1, u8 *buff2, u8 idx) retVal = FALSE; if (IsRfuSerialNumberValid(gRfuLinkStatus->partner[idx].serialNo)) { - memcpy(buff1, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); - memcpy(buff2, gRfuLinkStatus->partner[idx].uname, PLAYER_NAME_LENGTH + 1); + memcpy(gameData, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); + memcpy(username, gRfuLinkStatus->partner[idx].uname, RFU_USER_NAME_LENGTH); } else { - memset(buff1, 0, RFU_GAME_NAME_LENGTH); - memset(buff2, 0, PLAYER_NAME_LENGTH + 1); + memset(gameData, 0, RFU_GAME_NAME_LENGTH); + memset(username, 0, RFU_USER_NAME_LENGTH); } } return retVal; } -bool8 LinkRfu_GetNameIfSerial7F7D(struct GFtgtGname *buff1, u8 *buff2, u8 idx) +bool8 Rfu_GetWonderDistributorPlayerData(struct RfuGameData *gameData, u8 *username, u8 idx) { bool8 retVal = FALSE; - if (gRfuLinkStatus->partner[idx].serialNo == RFU_SERIAL_B) + if (gRfuLinkStatus->partner[idx].serialNo == RFU_SERIAL_WONDER_DISTRIBUTOR) { - memcpy(buff1, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); - memcpy(buff2, gRfuLinkStatus->partner[idx].uname, PLAYER_NAME_LENGTH + 1); + memcpy(gameData, gRfuLinkStatus->partner[idx].gname, RFU_GAME_NAME_LENGTH); + memcpy(username, gRfuLinkStatus->partner[idx].uname, RFU_USER_NAME_LENGTH); retVal = TRUE; } else { - memset(buff1, 0, RFU_GAME_NAME_LENGTH); - memset(buff2, 0, PLAYER_NAME_LENGTH + 1); + memset(gameData, 0, RFU_GAME_NAME_LENGTH); + memset(username, 0, RFU_USER_NAME_LENGTH); } return retVal; } -void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *buff1, u8 *buff2) +void CopyHostRfuGameDataAndUsername(struct RfuGameData *gameData, u8 *username) { - memcpy(buff1, &gHostRFUtgtGnameBuffer, RFU_GAME_NAME_LENGTH); - memcpy(buff2, gHostRFUtgtUnameBuffer, PLAYER_NAME_LENGTH + 1); + memcpy(gameData, &gHostRfuGameData, RFU_GAME_NAME_LENGTH); + memcpy(username, gHostRfuUsername, RFU_USER_NAME_LENGTH); } #define sNextAnimNum data[0] @@ -754,8 +759,8 @@ void CreateWirelessStatusIndicatorSprite(u8 x, u8 y) if (x == 0 && y == 0) { - x = 0xE7; - y = 0x08; + x = 231; + y = 8; } if (gRfuLinkStatus->parentChild == MODE_PARENT) { @@ -788,9 +793,7 @@ void DestroyWirelessStatusIndicatorSprite(void) void LoadWirelessStatusIndicatorSpriteGfx(void) { if (GetSpriteTileStartByTag(sWirelessStatusIndicatorSpriteSheet.tag) == 0xFFFF) - { LoadCompressedSpriteSheet(&sWirelessStatusIndicatorSpriteSheet); - } LoadSpritePalette(&sWirelessStatusIndicatorSpritePalette); gWirelessStatusIndicatorSpriteId = SPRITE_NONE; } @@ -802,9 +805,7 @@ static u8 GetParentSignalStrength(void) for (i = 0; i < RFU_CHILD_MAX; i++) { if (flags & 1) - { return gRfuLinkStatus->strength[i]; - } flags >>= 1; } return 0; @@ -827,40 +828,33 @@ void UpdateWirelessStatusIndicatorSprite(void) struct Sprite *sprite = &gSprites[gWirelessStatusIndicatorSpriteId]; u8 signalStrength = RFU_LINK_ICON_LEVEL4_MAX; u8 i = 0; + + // Get weakest signal strength if (gRfuLinkStatus->parentChild == MODE_PARENT) { for (i = 0; i < GetLinkPlayerCount() - 1; i++) { if (signalStrength >= GetConnectedChildStrength(i + 1)) - { signalStrength = GetConnectedChildStrength(i + 1); - } } } else { signalStrength = GetParentSignalStrength(); } + + // Set signal strength sprite anim number if (IsRfuRecoveringFromLinkLoss() == TRUE) - { sprite->sNextAnimNum = WIRELESS_STATUS_ANIM_ERROR; - } else if (signalStrength <= RFU_LINK_ICON_LEVEL1_MAX) - { sprite->sNextAnimNum = WIRELESS_STATUS_ANIM_SEARCHING; - } else if (signalStrength >= RFU_LINK_ICON_LEVEL2_MIN && signalStrength <= RFU_LINK_ICON_LEVEL2_MAX) - { sprite->sNextAnimNum = WIRELESS_STATUS_ANIM_1_BAR; - } else if (signalStrength >= RFU_LINK_ICON_LEVEL3_MIN && signalStrength <= RFU_LINK_ICON_LEVEL3_MAX) - { sprite->sNextAnimNum = WIRELESS_STATUS_ANIM_2_BARS; - } else if (signalStrength >= RFU_LINK_ICON_LEVEL4_MIN) - { sprite->sNextAnimNum = WIRELESS_STATUS_ANIM_3_BARS; - } + if (sprite->sNextAnimNum != sprite->sSavedAnimNum) { SetWirelessStatusIndicatorAnim(sprite, sprite->sNextAnimNum); @@ -871,9 +865,7 @@ void UpdateWirelessStatusIndicatorSprite(void) sprite->sFrameIdx++; sprite->sFrameDelay = 0; if (sprite->anims[sprite->sCurrAnimNum][sprite->sFrameIdx].type == -2) - { sprite->sFrameIdx = 0; - } } else { @@ -884,11 +876,9 @@ void UpdateWirelessStatusIndicatorSprite(void) gMain.oamBuffer[125].y = sprite->pos1.y + sprite->centerToCornerVecY; gMain.oamBuffer[125].paletteNum = sprite->oam.paletteNum; gMain.oamBuffer[125].tileNum = sprite->sTileStart + sprite->anims[sprite->sCurrAnimNum][sprite->sFrameIdx].frame.imageValue; - CpuCopy16(gMain.oamBuffer + 125, (struct OamData *)OAM + 125, sizeof(struct OamData)); + CpuCopy16(&gMain.oamBuffer[125], (struct OamData *)OAM + 125, sizeof(struct OamData)); if (RfuGetStatus() == RFU_STATUS_FATAL_ERROR) - { DestroyWirelessStatusIndicatorSprite(); - } } } @@ -926,7 +916,7 @@ void RecordMixTrainerNames(void) s32 i; s32 j; s32 nextSpace; - s32 connectedTrainerRecordIndices[5]; + s32 connectedTrainerRecordIndices[MAX_RFU_PLAYERS]; struct TrainerNameRecord *newRecords = calloc(ARRAY_COUNT(gSaveBlock1Ptr->trainerNameRecords), sizeof(struct TrainerNameRecord)); // Check if we already have a record saved for connected trainers. @@ -936,9 +926,7 @@ void RecordMixTrainerNames(void) for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock1Ptr->trainerNameRecords); j++) { if ((u16)gLinkPlayers[i].trainerId == gSaveBlock1Ptr->trainerNameRecords[j].trainerId && StringCompare(gLinkPlayers[i].name, gSaveBlock1Ptr->trainerNameRecords[j].trainerName) == 0) - { connectedTrainerRecordIndices[i] = j; - } } } @@ -952,9 +940,7 @@ void RecordMixTrainerNames(void) // If we already had a record for this trainer, wipe it so that the next step doesn't duplicate it. if (connectedTrainerRecordIndices[i] >= 0) - { - memset(gSaveBlock1Ptr->trainerNameRecords[connectedTrainerRecordIndices[i]].trainerName, 0, 8); - } + memset(gSaveBlock1Ptr->trainerNameRecords[connectedTrainerRecordIndices[i]].trainerName, 0, PLAYER_NAME_LENGTH + 1); nextSpace++; } } @@ -967,9 +953,7 @@ void RecordMixTrainerNames(void) { CopyTrainerRecord(&newRecords[nextSpace], gSaveBlock1Ptr->trainerNameRecords[i].trainerId, gSaveBlock1Ptr->trainerNameRecords[i].trainerName); if (++nextSpace >= (int)ARRAY_COUNT(gSaveBlock1Ptr->trainerNameRecords)) - { break; - } } } @@ -1001,6 +985,6 @@ void WipeTrainerNameRecords(void) for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock1Ptr->trainerNameRecords); i++) { gSaveBlock1Ptr->trainerNameRecords[i].trainerId = 0; - CpuFill16(0, gSaveBlock1Ptr->trainerNameRecords[i].trainerName, 8); + CpuFill16(0, gSaveBlock1Ptr->trainerNameRecords[i].trainerName, PLAYER_NAME_LENGTH + 1); } } diff --git a/src/mystery_gift.c b/src/mystery_gift.c index afbe50e4d27b..6ae6a9534881 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -510,13 +510,9 @@ void MG_DrawCheckerboardPattern(u32 bg) for (j = 0; j < 32; j++) { if ((i & 1) != (j & 1)) - { FillBgTilemapBufferRect(bg, 1, j, i + 2, 1, 1, 0x11); - } else - { FillBgTilemapBufferRect(bg, 2, j, i + 2, 1, 1, 0x11); - } } } } @@ -593,10 +589,8 @@ bool32 unref_HideDownArrowAndWaitButton(u8 * textState) { case 0: HideDownArrow(); - if (({JOY_NEW(A_BUTTON | B_BUTTON);})) - { + if (JOY_NEW(A_BUTTON | B_BUTTON)) (*textState)++; - } break; case 1: ShowDownArrow(); @@ -609,9 +603,8 @@ bool32 unref_HideDownArrowAndWaitButton(u8 * textState) static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str) { if (*counter == 0) - { AddTextPrinterToWindow1(str); - } + if (++(*counter) > 120) { *counter = 0; @@ -632,27 +625,20 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi s32 response; if (whichMenu == 0) - { listMenuTemplate.items = sListMenuItems_CardsOrNews; - } else - { listMenuTemplate.items = sListMenuItems_WirelessOrFriend; - } + width = Intl_GetListMenuWidth(&listMenuTemplate); if (width & 1) - { width++; - } + windowTemplate.width = width; if (width < 30) - { windowTemplate.tilemapLeft = (30 - width) / 2; - } else - { windowTemplate.tilemapLeft = 0; - } + response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0); if (response != -1) { @@ -672,13 +658,9 @@ s8 mevent_message_print_and_prompt_yes_no(u8 * textState, u16 * windowId, bool8 case 0: StringExpandPlaceholders(gStringVar4, str); if (yesNoBoxPlacement == 0) - { *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width28); - } else - { *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width20); - } FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); @@ -689,19 +671,15 @@ s8 mevent_message_print_and_prompt_yes_no(u8 * textState, u16 * windowId, bool8 case 1: windowTemplate = sWindowTemplate_YesNoBox; if (yesNoBoxPlacement == 0) - { windowTemplate.tilemapTop = 9; - } else - { windowTemplate.tilemapTop = 15; - } CreateYesNoMenu(&windowTemplate, 10, 14, 0); (*textState)++; break; case 2: input = Menu_ProcessInputNoWrapClearOnChoose(); - if (input == -1 || input == 0 || input == 1) + if (input == MENU_B_PRESSED || input == 0 || input == 1) { *textState = 0; rbox_fill_rectangle(*windowId); @@ -711,16 +689,16 @@ s8 mevent_message_print_and_prompt_yes_no(u8 * textState, u16 * windowId, bool8 return input; } break; - case 0xFF: + case (u8)MENU_B_PRESSED: *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); CopyWindowToVram(*windowId, 1); RemoveWindow(*windowId); - return -1; + return MENU_B_PRESSED; } - return -2; + return MENU_NOTHING_CHOSEN; } static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) @@ -1237,21 +1215,21 @@ void task00_mystery_gift(u8 taskId) case 0: if (data->source == 1) { - MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_CARD2); + MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_CARD); } else if (data->source == 0) { - MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_CARD2); + MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_CARD); } break; case 1: if (data->source == 1) { - MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_NEWS2); + MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_NEWS); } else if (data->source == 0) { - MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_NEWS2); + MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_NEWS); } break; } @@ -1594,10 +1572,10 @@ void task00_mystery_gift(u8 taskId) switch (data->IsCardOrNews) { case 0: - MEvent_CreateTask_Leader(ACTIVITY_WONDER_CARD2); + MEvent_CreateTask_Leader(ACTIVITY_WONDER_CARD); break; case 1: - MEvent_CreateTask_Leader(ACTIVITY_WONDER_NEWS2); + MEvent_CreateTask_Leader(ACTIVITY_WONDER_NEWS); break; } data->source = 1; diff --git a/src/overworld.c b/src/overworld.c index 979ebb74c467..154ece0427a1 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2898,7 +2898,7 @@ bool32 IsSendingKeysOverCable(void) static u32 GetLinkSendQueueLength(void) { if (gWirelessCommType != 0) - return Rfu.sendQueue.count; + return gRfu.sendQueue.count; else return gLink.sendQueue.count; } diff --git a/src/party_menu.c b/src/party_menu.c index 681dc5f9358a..e657dcf7deb9 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -3522,7 +3522,7 @@ static void CursorCb_Register(u8 taskId) u16 species = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES); u8 isEventLegal = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_EVENT_LEGAL); - switch (CanRegisterMonForTradingBoard(*(struct GFtgtGnameSub *)GetHostRFUtgtGname(), species2, species, isEventLegal)) + switch (CanRegisterMonForTradingBoard(*(struct RfuGameCompatibilityData *)GetHostRfuGameData(), species2, species, isEventLegal)) { case CANT_REGISTER_MON: StringExpandPlaceholders(gStringVar4, gText_PkmnCantBeTradedNow); @@ -3548,7 +3548,7 @@ static void CursorCb_Trade1(u8 taskId) u16 species2 = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES2); u16 species = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES); u8 isEventLegal = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_EVENT_LEGAL); - u32 stringId = GetUnionRoomTradeMessageId(*(struct GFtgtGnameSub *)GetHostRFUtgtGname(), gPartnerTgtGnameSub, species2, gUnionRoomOfferedSpecies, gUnionRoomRequestedMonType, species, isEventLegal); + u32 stringId = GetUnionRoomTradeMessageId(*(struct RfuGameCompatibilityData *)GetHostRfuGameData(), gRfuPartnerCompatibilityData, species2, gUnionRoomOfferedSpecies, gUnionRoomRequestedMonType, species, isEventLegal); if (stringId != UR_TRADE_MSG_NONE) { diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 777939f08cda..361dc278b0f1 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -2202,7 +2202,7 @@ static int GetPlayersAtJumpPeak(void) static bool32 AreLinkQueuesEmpty(void) { - return !Rfu.recvQueue.count && !Rfu.sendQueue.count; + return !gRfu.recvQueue.count && !gRfu.sendQueue.count; } static int GetNumPlayersForBonus(u8 *arg0) diff --git a/src/trade.c b/src/trade.c index f0a31b5cba94..0899a6e21d93 100644 --- a/src/trade.c +++ b/src/trade.c @@ -274,7 +274,7 @@ static bool32 IsLinkTradeTaskFinished(void) { if (gPlayerCurrActivity == ACTIVITY_29) { - if (gRfuSlotStatusNI[sub_800E87C(lman.acceptSlot_flag)]->send.state == 0) + if (gRfuSlotStatusNI[Rfu_GetIndexOfNewestChild(lman.acceptSlot_flag)]->send.state == 0) return TRUE; else return FALSE; @@ -2438,80 +2438,70 @@ static bool32 IsDeoxysOrMewUntradable(u16 species, bool8 isEventLegal) return FALSE; } -int GetUnionRoomTradeMessageId(struct GFtgtGnameSub rfuPlayer, struct GFtgtGnameSub rfuPartner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, u8 isEventLegal) +int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, u8 isEventLegal) { - bool8 playerHasNationalDex = rfuPlayer.hasNationalDex; - bool8 playerIsChampion = rfuPlayer.isChampion; - bool8 partnerHasNationalDex = rfuPartner.hasNationalDex; - bool8 partnerIsChampion = rfuPartner.isChampion; - u8 r1 = rfuPartner.version; + bool8 playerHasNationalDex = player.hasNationalDex; + bool8 playerIsChampion = player.isChampion; + bool8 partnerHasNationalDex = partner.hasNationalDex; + bool8 partnerIsChampion = partner.isChampion; + u8 partnerVersion = partner.version; - if (r1 != VERSION_EMERALD) + // If partner is not using Emerald, both players must be champion + if (partnerVersion != VERSION_EMERALD) { if (!playerIsChampion) - { return UR_TRADE_MSG_CANT_TRADE_WITH_PARTNER_1; - } else if (!partnerIsChampion) - { return UR_TRADE_MSG_CANT_TRADE_WITH_PARTNER_2; - } } + // Cannot trade illegitimate Deoxys/Mew if (IsDeoxysOrMewUntradable(playerSpecies, isEventLegal)) - { return UR_TRADE_MSG_MON_CANT_BE_TRADED_2; - } if (partnerSpecies == SPECIES_EGG) { + // If partner is trading an Egg then the player must also be trading an Egg if (playerSpecies2 != partnerSpecies) - { return UR_TRADE_MSG_NOT_EGG; - } } else { - if (gBaseStats[playerSpecies2].type1 != requestedType && gBaseStats[playerSpecies2].type2 != requestedType) - { + // Player's PokĂ©mon must be of the type the partner requested + if (gBaseStats[playerSpecies2].type1 != requestedType + && gBaseStats[playerSpecies2].type2 != requestedType) return UR_TRADE_MSG_NOT_MON_PARTNER_WANTS; - } } + // If the player is trading an Egg then the partner must also be trading an Egg + // Odd that this wasn't checked earlier, as by this point we know either the partner doesn't have an Egg or that both do. if (playerSpecies2 == SPECIES_EGG && playerSpecies2 != partnerSpecies) - { return UR_TRADE_MSG_MON_CANT_BE_TRADED_1; - } + // If the player doesn't have the National Dex then Eggs and non-Hoenn PokĂ©mon can't be traded if (!playerHasNationalDex) { if (playerSpecies2 == SPECIES_EGG) - { return UR_TRADE_MSG_EGG_CANT_BE_TRADED; - } if (!IsSpeciesInHoennDex(playerSpecies2)) - { return UR_TRADE_MSG_MON_CANT_BE_TRADED_2; - } if (!IsSpeciesInHoennDex(partnerSpecies)) - { return UR_TRADE_MSG_PARTNERS_MON_CANT_BE_TRADED; - } } + // If the partner doesn't have the National Dex then the player's offer has to be a Hoenn PokĂ©mon if (!partnerHasNationalDex && !IsSpeciesInHoennDex(playerSpecies2)) - { return UR_TRADE_MSG_PARTNER_CANT_ACCEPT_MON; - } + // Trade is allowed return UR_TRADE_MSG_NONE; } -int CanRegisterMonForTradingBoard(struct GFtgtGnameSub rfuPlayer, u16 species2, u16 species, u8 isEventLegal) +int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, u8 isEventLegal) { - bool8 hasNationalDex = rfuPlayer.hasNationalDex; + bool8 hasNationalDex = player.hasNationalDex; if (IsDeoxysOrMewUntradable(species, isEventLegal)) return CANT_REGISTER_MON; @@ -2541,9 +2531,7 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) { speciesArray[i] = GetMonData(&mon[i], MON_DATA_SPECIES2); if (speciesArray[i] == SPECIES_EGG) - { speciesArray[i] = SPECIES_NONE; - } } versions = 0; @@ -2553,13 +2541,9 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) version = gLinkPlayers[i].version & 0xFF; if (version == VERSION_FIRE_RED || version == VERSION_LEAF_GREEN) - { versions = 0; - } else - { versions |= 1; - } } for (i = 0; i < GetLinkPlayerCount(); i++) @@ -2590,9 +2574,7 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) for (i = 0; i < gPlayerPartyCount; i++) { if (monIdx != i) - { numMonsLeft += speciesArray[i]; - } } if (!numMonsLeft) diff --git a/src/union_room.c b/src/union_room.c index 46957db5e471..eae75451397a 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -174,12 +174,37 @@ enum { LG_STATE_SHUTDOWN = 23, }; +// Color types for PrintUnionRoomText +enum { + UR_COLOR_DEFAULT, + UR_COLOR_RED, + UR_COLOR_GREEN, + UR_COLOR_WHITE, + UR_COLOR_CANCEL, + UR_COLOR_TRADE_BOARD_SELF, + UR_COLOR_TRADE_BOARD_OTHER, +}; + +// Return values for HandlePlayerListUpdate +enum { + PLIST_0, + PLIST_1, + PLIST_2, + PLIST_3, + PLIST_4, +}; + static EWRAM_DATA u8 sUnionRoomPlayerName[12] = {}; EWRAM_DATA u8 gPlayerCurrActivity = 0; static EWRAM_DATA u8 sPlayerActivityGroupSize = 0; -static EWRAM_DATA union WirelessLink_Main sWirelessLinkMain = {}; +static EWRAM_DATA union +{ + struct WirelessLink_Leader *leader; + struct WirelessLink_Group *group; + struct WirelessLink_URoom *uRoom; +} sWirelessLinkMain = {}; static EWRAM_DATA u32 sUnused = 0; -EWRAM_DATA struct GFtgtGnameSub gPartnerTgtGnameSub = {}; +EWRAM_DATA struct RfuGameCompatibilityData gRfuPartnerCompatibilityData = {}; EWRAM_DATA u16 gUnionRoomOfferedSpecies = 0; EWRAM_DATA u8 gUnionRoomRequestedMonType = 0; static EWRAM_DATA struct UnionRoomTrade sUnionRoomTrade = {}; @@ -188,7 +213,7 @@ static struct WirelessLink_Leader *sLeader; static struct WirelessLink_Group *sGroup; static struct WirelessLink_URoom *sURoom; -static void UR_AddTextPrinterParameterized(u8, u8, const u8 *, u8, u8, u8); +static void PrintUnionRoomText(u8, u8, const u8 *, u8, u8, u8); static u16 ReadAsU16(const u8 *); static void Task_TryBecomeLinkLeader(u8); static void Task_TryJoinLinkGroup(u8); @@ -197,64 +222,64 @@ static void Task_MEvent_Leader(u8); static void Task_CardOrNewsWithFriend(u8); static void Task_CardOrNewsOverWireless(u8); static void Task_RunUnionRoom(u8); -static void ClearUnkStruct_x1CArray(struct UnkStruct_Main4 *, u8); -static void ClearUnkStruct_x20Array(struct UnkStruct_x20 *, u8); -static u8 CreateTask_ListenForPartnersWithCompatibleSerialNos(struct UnkStruct_Main4 *, u32); -static u8 CreateTask_ListenForPartnersWithSerial7F7D(struct UnkStruct_Main4 *, u32 ); +static void ClearIncomingPlayerList(struct RfuIncomingPlayerList *, u8); +static void ClearRfuPlayerList(struct RfuPlayer *, u8); +static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList *, u32); +static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList *, u32 ); static bool8 PrintOnTextbox(u8 *, const u8 *); static bool8 Leader_SetStateIfMemberListChanged(struct WirelessLink_Leader *, u32, u32); -static u8 sub_8013398(struct UnkStruct_Main0 *); +static u8 LeaderPrunePlayerList(struct RfuPlayerList *); static s8 UnionRoomHandleYesNo(u8 *, bool32); -static void IntlConvPartnerUname7(u8 *, struct UnkStruct_x20 *); +static void CopyAndTranslatePlayerName(u8 *, struct RfuPlayer *); static void Leader_DestroyResources(struct WirelessLink_Leader *); static void CreateTask_RunScriptAndFadeToActivity(void); -static u8 LeaderUpdateGroupMembership(struct UnkStruct_Main0 *); -static void PrintGroupMemberCandidateOnWindowWithColor(u8, u8, u8, struct UnkStruct_x20 *, u8, u8 ); -static u32 Findx20Inx1CArray(struct UnkStruct_x20 *, struct UnkStruct_x1C *); -static u8 Appendx1Ctox20(struct UnkStruct_x20 *, struct UnkStruct_x1C *, u8); +static u8 LeaderUpdateGroupMembership(struct RfuPlayerList *); +static void PrintGroupCandidateOnWindow(u8, u8, u8, struct RfuPlayer *, u8, u8 ); +static u32 GetNewIncomingPlayerId(struct RfuPlayer *, struct RfuIncomingPlayer *); +static u8 TryAddIncomingPlayerToList(struct RfuPlayer *, struct RfuIncomingPlayer *, u8); static u8 GetNewLeaderCandidate(void); static u32 IsTryingToTradeAcrossVersionTooSoon(struct WirelessLink_Group *, s32); static void AskToJoinRfuGroup(struct WirelessLink_Group *, s32); static void JoinGroup_EnableScriptContexts(void); -static void PrintUnionRoomGroupOnWindow(u8, u8, u8, struct UnkStruct_x20 *, u8, u8); -static bool32 AreUnionRoomPlayerGnamesDifferent(struct WirelessGnameUnamePair *, struct WirelessGnameUnamePair *); +static void PrintGroupMemberOnWindow(u8, u8, u8, struct RfuPlayer *, u8, u8); +static bool32 ArePlayerDataDifferent(struct RfuPlayerData *, struct RfuPlayerData *); static u32 GetPartyPositionOfRegisteredMon(struct UnionRoomTrade *, u8); static void ResetUnionRoomTrade(struct UnionRoomTrade *); static void CreateTask_StartActivity(void); -static bool32 HasWonderCardOrNewsByLinkGroup(struct GFtgtGname *, s16); -static u8 CreateTask_SearchForChildOrParent(struct UnkStruct_Main4 *, struct UnkStruct_Main4 *, u32); +static bool32 HasWonderCardOrNewsByLinkGroup(struct RfuGameData *, s16); +static u8 CreateTask_SearchForChildOrParent(struct RfuIncomingPlayerList *, struct RfuIncomingPlayerList *, u32); static bool32 RegisterTradeMonAndGetIsEgg(u32, struct UnionRoomTrade *); static void RegisterTradeMon(u32, struct UnionRoomTrade *); -static void UR_EnableScriptContext2AndFreezeObjectEvents(void); +static void StartScriptInteraction(void); static bool32 IsPlayerFacingTradingBoard(void); static u8 HandlePlayerListUpdate(void); static bool32 PollPartnerYesNoResponse(struct WirelessLink_URoom *); static void ReceiveUnionRoomActivityPacket(struct WirelessLink_URoom *); -static u8 GetActivePartnerSpriteGenderParam(struct WirelessLink_URoom *); -static bool32 UnionRoom_HandleContactFromOtherPlayer(struct WirelessLink_URoom *); -static bool32 UR_RunTextPrinters_CheckPrinter0Active(void); -static s32 GetUnionRoomPlayerGender(s32, struct UnkStruct_Main0 *); -static s32 UnionRoomGetPlayerInteractionResponse(struct UnkStruct_Main0 *, u8, u8, u32); +static u8 GetActivePartnersInfo(struct WirelessLink_URoom *); +static bool32 HandleContactFromOtherPlayer(struct WirelessLink_URoom *); +static bool32 UR_RunTextPrinters(void); +static s32 GetUnionRoomPlayerGender(s32, struct RfuPlayerList *); +static s32 UnionRoomGetPlayerInteractionResponse(struct RfuPlayerList *, u8, u8, u32); static void HandleCancelActivity(bool32); static s32 ListMenuHandler_AllItemsAvailable(u8 *, u8 *, u8 *, const struct WindowTemplate *, const struct ListMenuTemplate *); -static s32 TradeBoardMenuHandler(u8 *, u8 *, u8 *, u8 *, const struct WindowTemplate *, const struct ListMenuTemplate *, struct UnkStruct_Main0 *); -static s32 GetIndexOfNthTradeBoardOffer(struct UnkStruct_x20 *, s32); +static s32 TradeBoardMenuHandler(u8 *, u8 *, u8 *, u8 *, const struct WindowTemplate *, const struct ListMenuTemplate *, struct RfuPlayerList *); +static s32 GetIndexOfNthTradeBoardOffer(struct RfuPlayer *, s32); static bool32 HasAtLeastTwoMonsOfLevel30OrLower(void); static u32 GetResponseIdx_InviteToURoomActivity(s32); static void ViewURoomPartnerTrainerCard(u8 *, struct WirelessLink_URoom *, bool8); static void GetURoomActivityRejectMsg(u8 *, s32, u32); -static u32 ConvPartnerUnameAndGetWhetherMetAlready(struct UnkStruct_x20 *); +static u32 ConvPartnerUnameAndGetWhetherMetAlready(struct RfuPlayer *); static void GetURoomActivityStartMsg(u8 *, u8); static void UR_ClearBg0(void); static s32 IsRequestedTypeOrEggInPlayerParty(u32, u32); static bool32 UR_PrintFieldMessage(const u8 *); static s32 GetChatLeaderActionRequestMessage(u8 *, u32, u16 *, struct WirelessLink_URoom *); static void Task_InitUnionRoom(u8 taskId); -static bool8 AreGnameUnameDifferent(struct WirelessGnameUnamePair*, const struct WirelessGnameUnamePair*); -static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y); -static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, u32 id, u8 y); -static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 id, u8 y); -static void ItemPrintFunc_EmptyList(u8 windowId, u32 id, u8 y); +static bool8 ArePlayersDifferent(struct RfuPlayerData*, const struct RfuPlayerData*); +static void ItemPrintFunc_PossibleGroupMembers(u8, u32, u8); +static void ListMenuItemPrintFunc_UnionRoomGroups(u8, u32, u8); +static void TradeBoardListMenuItemPrintFunc(u8, u32, u8); +static void ItemPrintFunc_EmptyList(u8, u32, u8); #include "data/union_room.h" @@ -264,19 +289,19 @@ static void PrintNumPlayersWaitingForMsg(u8 windowId, u8 capacityCode, u8 string switch (capacityCode << 8) { case LINK_GROUP_CAPACITY(0, 2): - UR_AddTextPrinterParameterized(windowId, 1, sPlayersNeededOrModeTexts[0][stringId - 1], 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[0][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(0, 4): - UR_AddTextPrinterParameterized(windowId, 1, sPlayersNeededOrModeTexts[1][stringId - 1], 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[1][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(2, 5): - UR_AddTextPrinterParameterized(windowId, 1, sPlayersNeededOrModeTexts[2][stringId - 1], 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[2][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(3, 5): - UR_AddTextPrinterParameterized(windowId, 1, sPlayersNeededOrModeTexts[3][stringId - 1], 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[3][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(2, 4): - UR_AddTextPrinterParameterized(windowId, 1, sPlayersNeededOrModeTexts[4][stringId - 1], 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[4][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; } @@ -288,13 +313,13 @@ static void PrintPlayerNameAndIdOnWindow(u8 windowId) u8 text[30]; u8 *txtPtr; - UR_AddTextPrinterParameterized(windowId, 1, gSaveBlock2Ptr->playerName, 0, 1, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, gSaveBlock2Ptr->playerName, 0, 1, UR_COLOR_DEFAULT); txtPtr = StringCopy(text, sText_ID); ConvertIntToDecimalStringN(txtPtr, ReadAsU16(gSaveBlock2Ptr->playerTrainerId), STR_CONV_MODE_LEADING_ZEROS, 5); - UR_AddTextPrinterParameterized(windowId, 1, text, 0, 0x11, UR_COLOR_DKE_WHT_LTE); + PrintUnionRoomText(windowId, 1, text, 0, 17, UR_COLOR_DEFAULT); } -static void StringExpandPlaceholders_AwaitingCommFromAnother(u8 *dst, u8 caseId) +static void GetAwaitingCommunicationText(u8 *dst, u8 caseId) { switch (caseId) { @@ -309,8 +334,8 @@ static void StringExpandPlaceholders_AwaitingCommFromAnother(u8 *dst, u8 caseId) case ACTIVITY_BATTLE_TOWER_OPEN: case ACTIVITY_RECORD_CORNER: case ACTIVITY_BERRY_BLENDER: - case ACTIVITY_WONDER_CARD2: - case ACTIVITY_WONDER_NEWS2: + case ACTIVITY_WONDER_CARD: + case ACTIVITY_WONDER_NEWS: case ACTIVITY_CONTEST_COOL: case ACTIVITY_CONTEST_BEAUTY: case ACTIVITY_CONTEST_CUTE: @@ -373,24 +398,24 @@ static void Task_TryBecomeLinkLeader(u8 taskId) gSpecialVar_0x8004++; gPlayerCurrActivity = sLinkGroupToActivityAndCapacity[gSpecialVar_0x8004]; sPlayerActivityGroupSize = sLinkGroupToActivityAndCapacity[gSpecialVar_0x8004] >> 8; - SetHostRFUtgtGname(gPlayerCurrActivity, 0, 0); + SetHostRfuGameData(gPlayerCurrActivity, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_LinkLeader(GROUP_MAX(sPlayerActivityGroupSize)); data->state = LL_STATE_INIT2; break; case LL_STATE_INIT2: - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(5 * sizeof(struct UnkStruct_x20)); - data->field_8 = AllocZeroed(5 * sizeof(struct UnkStruct_x20)); - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 5); - LinkRfu3_SetGnameUnameFromStaticBuffers(&data->field_0->arr[0].gname_uname.gname, data->field_0->arr[0].gname_uname.playerName); - data->field_0->arr[0].timeoutCounter = 0; - data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->field_0->arr[0].useRedText = FALSE; - data->field_0->arr[0].field_1B = 0; - data->listenTaskId = CreateTask_ListenForPartnersWithCompatibleSerialNos(data->field_4, 0xFF); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYERS * sizeof(struct RfuPlayer)); + data->playerListBackup = AllocZeroed(MAX_RFU_PLAYERS * sizeof(struct RfuPlayer)); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYERS); + CopyHostRfuGameDataAndUsername(&data->playerList->players[0].rfu.data, data->playerList->players[0].rfu.name); + data->playerList->players[0].timeoutCounter = 0; + data->playerList->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + data->playerList->players[0].useRedText = FALSE; + data->playerList->players[0].field_1B = 0; + data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, 0xFF); data->bButtonCancelWindowId = AddWindow(&sWindowTemplate_BButtonCancel); switch (GROUP_MAX(sPlayerActivityGroupSize)) { @@ -406,7 +431,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->nPlayerModeWindowId = AddWindow(&sWindowTemplate_NumPlayerMode); FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); - UR_AddTextPrinterParameterized(data->bButtonCancelWindowId, 0, sText_BButtonCancel, 8, 1, 4); + PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_BButtonCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); CopyWindowToVram(data->bButtonCancelWindowId, 2); @@ -434,7 +459,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } else { - StringExpandPlaceholders_AwaitingCommFromAnother(gStringVar4, gPlayerCurrActivity); + GetAwaitingCommunicationText(gStringVar4, gPlayerCurrActivity); } PrintNumPlayersWaitingForMsg(data->nPlayerModeWindowId, sPlayerActivityGroupSize, data->playerCount); @@ -475,7 +500,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) if (!RfuTryDisconnectLeavingChildren()) { data->state = LL_STATE_AWAIT_PLAYERS; - data->playerCount = sub_8013398(data->field_0); + data->playerCount = LeaderPrunePlayerList(data->playerList); } break; case LL_STATE_MEMBER_LEFT: @@ -489,7 +514,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) #endif if (PrintOnTextbox(&data->textState, sPlayerUnavailableTexts[id])) { - data->playerCount = sub_8013398(data->field_0); + data->playerCount = LeaderPrunePlayerList(data->playerList); RedrawListMenu(data->listTaskId); data->state = LL_STATE_GET_AWAITING_PLAYERS_TEXT; } @@ -508,19 +533,19 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } break; case LL_STATE_ACCEPT_NEW_MEMBER_PROMPT_HANDLE_INPUT: - switch (UnionRoomHandleYesNo(&data->textState, HasTrainerLeftPartnersList(ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName))) + switch (UnionRoomHandleYesNo(&data->textState, HasTrainerLeftPartnersList(ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name))) { case 0: // YES LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); data->joinRequestAnswer = RFU_STATUS_JOIN_GROUP_OK; - SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); data->state = LL_STATE_UPDATE_AFTER_JOIN_REQUEST; break; case 1: // NO - case -1: + case MENU_B_PRESSED: data->joinRequestAnswer = RFU_STATUS_JOIN_GROUP_NO; - SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); data->state = LL_STATE_UPDATE_AFTER_JOIN_REQUEST; break; case -3: @@ -529,23 +554,23 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } break; case LL_STATE_UPDATE_AFTER_JOIN_REQUEST: - val = WaitSendRfuStatusToPartner(ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + val = WaitSendRfuStatusToPartner(ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); if (val == 1) // Send complete { if (data->joinRequestAnswer == RFU_STATUS_JOIN_GROUP_OK) { - data->field_0->arr[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].field_1B = 0; RedrawListMenu(data->listTaskId); data->playerCount++; if (data->playerCount == GROUP_MAX(sPlayerActivityGroupSize)) { - if (GROUP_MIN2(sPlayerActivityGroupSize) != 0 || data->playerCount == 4) + if (GROUP_MIN2(sPlayerActivityGroupSize) != 0 || data->playerCount == RFU_CHILD_MAX) { data->state = LL_STATE_MEMBERS_OK_PROMPT; } else { - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->playerCount - 1]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->playerCount - 1]); StringExpandPlaceholders(gStringVar4, sText_AnOKWasSentToPlayer); data->state = LL_STATE_ACCEPTED_FINAL_MEMBER; } @@ -560,9 +585,9 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } else // Member disconnected { - RequestDisconnectSlotByTrainerNameAndId(data->field_0->arr[data->playerCount].gname_uname.playerName, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId)); - data->field_0->arr[data->playerCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; - sub_8013398(data->field_0); + RequestDisconnectSlotByTrainerNameAndId(data->playerList->players[data->playerCount].rfu.name, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId)); + data->playerList->players[data->playerCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; + LeaderPrunePlayerList(data->playerList); RedrawListMenu(data->listTaskId); data->state = LL_STATE_GET_AWAITING_PLAYERS_TEXT; } @@ -594,7 +619,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->state = LL_STATE_CONFIRMED_MEMBERS; break; case 1: // NO - case -1: + case MENU_B_PRESSED: if (GROUP_MIN2(sPlayerActivityGroupSize) != 0) data->state = LL_STATE_CANCEL_WITH_MSG; else @@ -613,7 +638,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->state = LL_STATE_SHUTDOWN_AND_FAIL; break; case 1: // NO - case -1: + case MENU_B_PRESSED: if (GROUP_MIN2(sPlayerActivityGroupSize) != 0) data->state = LL_STATE_MEMBERS_OK_PROMPT; else if (data->playerCount == GROUP_MAX(sPlayerActivityGroupSize)) @@ -704,9 +729,9 @@ static void Leader_DestroyResources(struct WirelessLink_Leader *data) RemoveWindow(data->bButtonCancelWindowId); DestroyTask(data->listenTaskId); - Free(data->field_8); - Free(data->field_0); - Free(data->field_4); + Free(data->playerListBackup); + Free(data->playerList); + Free(data->incomingPlayerList); } static void Leader_GetAcceptNewMemberPrompt(u8 *dst, u8 caseId) @@ -720,8 +745,8 @@ static void Leader_GetAcceptNewMemberPrompt(u8 *dst, u8 caseId) case ACTIVITY_BATTLE_TOWER: StringExpandPlaceholders(dst, sText_PlayerContactedYouForXAccept); break; - case ACTIVITY_WONDER_CARD2: - case ACTIVITY_WONDER_NEWS2: + case ACTIVITY_WONDER_CARD: + case ACTIVITY_WONDER_NEWS: StringExpandPlaceholders(dst, sText_PlayerContactedYouShareX); break; case ACTIVITY_BATTLE_MULTI: @@ -764,8 +789,8 @@ static void GetYouAskedToJoinGroupPleaseWaitMessage(u8 *dst, u8 caseId) case ACTIVITY_TRADE: case ACTIVITY_BATTLE_TOWER: case ACTIVITY_BATTLE_TOWER_OPEN: - case ACTIVITY_WONDER_CARD2: - case ACTIVITY_WONDER_NEWS2: + case ACTIVITY_WONDER_CARD: + case ACTIVITY_WONDER_NEWS: StringExpandPlaceholders(dst, sText_AwaitingPlayersResponse); break; case ACTIVITY_BATTLE_MULTI: @@ -793,8 +818,8 @@ static void GetGroupLeaderSentAnOKMessage(u8 *dst, u8 caseId) case ACTIVITY_TRADE: case ACTIVITY_BATTLE_TOWER: case ACTIVITY_BATTLE_TOWER_OPEN: - case ACTIVITY_WONDER_CARD2: - case ACTIVITY_WONDER_NEWS2: + case ACTIVITY_WONDER_CARD: + case ACTIVITY_WONDER_NEWS: StringExpandPlaceholders(dst, sText_PlayerSentBackOK); break; case ACTIVITY_BATTLE_MULTI: @@ -815,12 +840,12 @@ static void GetGroupLeaderSentAnOKMessage(u8 *dst, u8 caseId) static bool8 Leader_SetStateIfMemberListChanged(struct WirelessLink_Leader *data, u32 joinedState, u32 droppedState) { - switch (LeaderUpdateGroupMembership(data->field_0)) + switch (LeaderUpdateGroupMembership(data->playerList)) { case UNION_ROOM_SPAWN_IN: PlaySE(SE_PC_LOGIN); RedrawListMenu(data->listTaskId); - IntlConvPartnerUname7(gStringVar2, &data->field_0->arr[data->playerCount]); + CopyAndTranslatePlayerName(gStringVar2, &data->playerList->players[data->playerCount]); Leader_GetAcceptNewMemberPrompt(gStringVar4, gPlayerCurrActivity); data->state = joinedState; break; @@ -837,23 +862,23 @@ static bool8 Leader_SetStateIfMemberListChanged(struct WirelessLink_Leader *data static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; - u8 colorIdx = UR_COLOR_DKE_WHT_LTE; + u8 colorIdx = UR_COLOR_DEFAULT; - switch (data->field_0->arr[id].groupScheduledAnim) + switch (data->playerList->players[id].groupScheduledAnim) { case UNION_ROOM_SPAWN_IN: - if (data->field_0->arr[id].field_1B != 0) - colorIdx = UR_COLOR_GRN_WHT_LTG; + if (data->playerList->players[id].field_1B != 0) + colorIdx = UR_COLOR_GREEN; break; case UNION_ROOM_SPAWN_OUT: - colorIdx = UR_COLOR_RED_WHT_LTR; + colorIdx = UR_COLOR_RED; break; } - PrintGroupMemberCandidateOnWindowWithColor(windowId, 0, y, &data->field_0->arr[id], colorIdx, id); + PrintGroupCandidateOnWindow(windowId, 0, y, &data->playerList->players[id], colorIdx, id); } -static u8 LeaderUpdateGroupMembership(struct UnkStruct_Main0 *arg0) +static u8 LeaderUpdateGroupMembership(struct RfuPlayerList *list) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; u8 ret = UNION_ROOM_SPAWN_NONE; @@ -862,31 +887,33 @@ static u8 LeaderUpdateGroupMembership(struct UnkStruct_Main0 *arg0) for (i = 1; i < MAX_RFU_PLAYERS; i++) { - u16 var = data->field_0->arr[i].groupScheduledAnim; + u16 var = data->playerList->players[i].groupScheduledAnim; if (var == UNION_ROOM_SPAWN_IN) { - id = Findx20Inx1CArray(&data->field_0->arr[i], data->field_4->arr); + id = GetNewIncomingPlayerId(&data->playerList->players[i], data->incomingPlayerList->players); if (id != 0xFF) { - data->field_0->arr[i].gname_uname = data->field_4->arr[id].gname_uname; - data->field_0->arr[i].timeoutCounter = 1; + // New incoming player + data->playerList->players[i].rfu = data->incomingPlayerList->players[id].rfu; + data->playerList->players[i].timeoutCounter = 1; } else { - data->field_0->arr[i].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; + // No new incoming player + data->playerList->players[i].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; ret = UNION_ROOM_SPAWN_OUT; } } } for (id = 0; id < RFU_CHILD_MAX; id++) - Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], MAX_RFU_PLAYERS); + TryAddIncomingPlayerToList(data->playerList->players, &data->incomingPlayerList->players[id], MAX_RFU_PLAYERS); if (ret != UNION_ROOM_SPAWN_OUT) { for (id = 0; id < MAX_RFU_PLAYERS; id++) { - if (data->field_0->arr[id].field_1B != 0) + if (data->playerList->players[id].field_1B != 0) ret = UNION_ROOM_SPAWN_IN; } } @@ -894,7 +921,7 @@ static u8 LeaderUpdateGroupMembership(struct UnkStruct_Main0 *arg0) return ret; } -static u8 sub_8013398(struct UnkStruct_Main0 *arg0) +static u8 LeaderPrunePlayerList(struct RfuPlayerList *list) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; u8 copiedCount; @@ -902,14 +929,14 @@ static u8 sub_8013398(struct UnkStruct_Main0 *arg0) u8 playerCount; for (i = 0; i < MAX_RFU_PLAYERS; i++) - data->field_8->arr[i] = data->field_0->arr[i]; + data->playerListBackup->players[i] = data->playerList->players[i]; copiedCount = 0; for (i = 0; i < MAX_RFU_PLAYERS; i++) { - if (data->field_8->arr[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (data->playerListBackup->players[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - data->field_0->arr[copiedCount] = data->field_8->arr[i]; + data->playerList->players[copiedCount] = data->playerListBackup->players[i]; copiedCount++; } } @@ -917,18 +944,18 @@ static u8 sub_8013398(struct UnkStruct_Main0 *arg0) playerCount = copiedCount; for (; copiedCount < MAX_RFU_PLAYERS; copiedCount++) { - data->field_0->arr[copiedCount].gname_uname = sWirelessGnameUnamePair_Dummy; - data->field_0->arr[copiedCount].timeoutCounter = 0; - data->field_0->arr[copiedCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; - data->field_0->arr[copiedCount].useRedText = FALSE; - data->field_0->arr[copiedCount].field_1B = 0; + data->playerList->players[copiedCount].rfu = sUnionRoomPlayer_DummyRfu; + data->playerList->players[copiedCount].timeoutCounter = 0; + data->playerList->players[copiedCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; + data->playerList->players[copiedCount].useRedText = FALSE; + data->playerList->players[copiedCount].field_1B = 0; } for (i = 0; i < MAX_RFU_PLAYERS; i++) { - if (data->field_0->arr[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) + if (data->playerList->players[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) continue; - if (data->field_0->arr[i].field_1B != 64) + if (data->playerList->players[i].field_1B != 64) continue; playerCount = i; @@ -963,12 +990,12 @@ static void Task_TryJoinLinkGroup(u8 taskId) if (gSpecialVar_0x8004 == LINK_GROUP_BATTLE_TOWER && gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_OPEN) gSpecialVar_0x8004++; gPlayerCurrActivity = sLinkGroupToURoomActivity[gSpecialVar_0x8004]; - SetHostRFUtgtGname(gPlayerCurrActivity, 0, 0); + SetHostRfuGameData(gPlayerCurrActivity, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_JoinGroup(); - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(16 * sizeof(struct UnkStruct_x20)); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYER_LIST_SIZE * sizeof(struct RfuPlayer)); data->state = LG_STATE_CHOOSE_LEADER_MSG; break; case LG_STATE_CHOOSE_LEADER_MSG: @@ -976,15 +1003,15 @@ static void Task_TryJoinLinkGroup(u8 taskId) data->state = LG_STATE_INIT_WINDOWS; break; case LG_STATE_INIT_WINDOWS: - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 16); - data->listenTaskId = CreateTask_ListenForPartnersWithCompatibleSerialNos(data->field_4, gSpecialVar_0x8004); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYER_LIST_SIZE); + data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, gSpecialVar_0x8004); data->bButtonCancelWindowId = AddWindow(&sWindowTemplate_BButtonCancel); - data->listWindowId = AddWindow(&gUnknown_082F0174); - data->playerNameAndIdWindowId = AddWindow(&gUnknown_082F017C); + data->listWindowId = AddWindow(&sWindowTemplate_GroupList); + data->playerNameAndIdWindowId = AddWindow(&sWindowTemplate_PlayerNameAndId); FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); - UR_AddTextPrinterParameterized(data->bButtonCancelWindowId, 0, sText_ChooseJoinCancel, 8, 1, 4); + PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_ChooseJoinCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); CopyWindowToVram(data->bButtonCancelWindowId, 2); @@ -1012,12 +1039,12 @@ static void Task_TryJoinLinkGroup(u8 taskId) break; case 0: id = ListMenu_ProcessInput(data->listTaskId); - if (JOY_NEW(A_BUTTON) && id != -1) + if (JOY_NEW(A_BUTTON) && id != MENU_B_PRESSED) { // this unused variable along with the assignment is needed to match - u32 activity = data->field_0->arr[id].gname_uname.gname.activity; + u32 activity = data->playerList->players[id].rfu.data.activity; - if (data->field_0->arr[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->field_0->arr[id].gname_uname.gname.started) + if (data->playerList->players[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->playerList->players[id].rfu.data.startedActivity) { u32 readyStatus = IsTryingToTradeAcrossVersionTooSoon(data, id); if (readyStatus == UR_TRADE_READY) @@ -1053,14 +1080,14 @@ static void Task_TryJoinLinkGroup(u8 taskId) GetYouAskedToJoinGroupPleaseWaitMessage(gStringVar4, gPlayerCurrActivity); if (PrintOnTextbox(&data->textState, gStringVar4)) { - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->leaderId]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->leaderId]); data->state = LG_STATE_MAIN; } break; case LG_STATE_MAIN: if (gReceivedRemoteLinkPlayers) { - gPlayerCurrActivity = data->field_0->arr[data->leaderId].gname_uname.gname.activity; + gPlayerCurrActivity = data->playerList->players[data->leaderId].rfu.data.activity; RfuSetStatus(RFU_STATUS_OK, 0); switch (gPlayerCurrActivity) { @@ -1077,8 +1104,8 @@ static void Task_TryJoinLinkGroup(u8 taskId) case ACTIVITY_BATTLE_TOWER_OPEN: case ACTIVITY_RECORD_CORNER: case ACTIVITY_BERRY_BLENDER: - case ACTIVITY_WONDER_CARD2: - case ACTIVITY_WONDER_NEWS2: + case ACTIVITY_WONDER_CARD: + case ACTIVITY_WONDER_NEWS: case ACTIVITY_CONTEST_COOL: case ACTIVITY_CONTEST_BEAUTY: case ACTIVITY_CONTEST_CUTE: @@ -1158,7 +1185,7 @@ static void Task_TryJoinLinkGroup(u8 taskId) RedrawListMenu(data->listTaskId); break; case 1: // NO - case -1: + case MENU_B_PRESSED: data->state = LG_STATE_ASK_JOIN_GROUP; RedrawListMenu(data->listTaskId); break; @@ -1187,8 +1214,8 @@ static void Task_TryJoinLinkGroup(u8 taskId) RemoveWindow(data->listWindowId); RemoveWindow(data->bButtonCancelWindowId); DestroyTask(data->listenTaskId); - Free(data->field_0); - Free(data->field_4); + Free(data->playerList); + Free(data->incomingPlayerList); data->state++; break; case LG_STATE_RFU_ERROR_SHUTDOWN: @@ -1236,13 +1263,13 @@ static void Task_TryJoinLinkGroup(u8 taskId) static u32 IsTryingToTradeAcrossVersionTooSoon(struct WirelessLink_Group *data, s32 id) { - struct UnkStruct_x20 *structPtr = &data->field_0->arr[id]; + struct RfuPlayer *partner = &data->playerList->players[id]; - if (gPlayerCurrActivity == ACTIVITY_TRADE && structPtr->gname_uname.gname.unk_00.version != VERSION_EMERALD) + if (gPlayerCurrActivity == ACTIVITY_TRADE && partner->rfu.data.compatibility.version != VERSION_EMERALD) { if (!(gSaveBlock2Ptr->specialSaveWarpFlags & CHAMPION_SAVEWARP)) return UR_TRADE_PLAYER_NOT_READY; - else if (structPtr->gname_uname.gname.unk_00.isChampion) + else if (partner->rfu.data.compatibility.isChampion) return UR_TRADE_READY; } else @@ -1259,9 +1286,9 @@ static void AskToJoinRfuGroup(struct WirelessLink_Group *data, s32 id) LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); RedrawListMenu(data->listTaskId); - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->leaderId]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->leaderId]); UpdateGameData_SetActivity(sLinkGroupToURoomActivity[gSpecialVar_0x8004], 0, TRUE); - CreateTask_RfuReconnectWithParent(data->field_0->arr[data->leaderId].gname_uname.playerName, ReadAsU16(data->field_0->arr[data->leaderId].gname_uname.gname.unk_00.playerTrainerId)); + CreateTask_RfuReconnectWithParent(data->playerList->players[data->leaderId].rfu.name, ReadAsU16(data->playerList->players[data->leaderId].rfu.data.compatibility.playerTrainerId)); } u8 CreateTask_ListenToWireless(void) @@ -1287,19 +1314,19 @@ static void Task_ListenToWireless(u8 taskId) switch (data->state) { case 0: - SetHostRFUtgtGname(0, 0, 0); + SetHostRfuGameData(ACTIVITY_NONE, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_JoinGroup(); RfuSetIgnoreError(TRUE); - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(16 * sizeof(struct UnkStruct_x20)); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYER_LIST_SIZE * sizeof(struct RfuPlayer)); data->state = 2; break; case 2: - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 16); - data->listenTaskId = CreateTask_ListenForPartnersWithCompatibleSerialNos(data->field_4, 0xFF); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYER_LIST_SIZE); + data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, 0xFF); data->leaderId = 0; data->state = 3; break; @@ -1311,8 +1338,8 @@ static void Task_ListenToWireless(u8 taskId) break; case 10: DestroyTask(data->listenTaskId); - Free(data->field_0); - Free(data->field_4); + Free(data->playerList); + Free(data->incomingPlayerList); LinkRfu_Shutdown(); data->state++; break; @@ -1347,27 +1374,26 @@ static bool32 IsPartnerActivityAcceptable(u32 activity, u32 linkGroup) return FALSE; } -static u8 URoomGroupListGetTextColor(struct WirelessLink_Group *data, u32 id) +static u8 GetGroupListTextColor(struct WirelessLink_Group *data, u32 id) { - if (data->field_0->arr[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (data->playerList->players[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - if (data->field_0->arr[id].gname_uname.gname.started) - return UR_COLOR_WHT_WHT_LTE; - else if (data->field_0->arr[id].useRedText) - return UR_COLOR_RED_WHT_LTR; - else if (data->field_0->arr[id].field_1B != 0) - return UR_COLOR_GRN_WHT_LTG; + if (data->playerList->players[id].rfu.data.startedActivity) + return UR_COLOR_WHITE; + else if (data->playerList->players[id].useRedText) + return UR_COLOR_RED; + else if (data->playerList->players[id].field_1B != 0) + return UR_COLOR_GREEN; } - - return UR_COLOR_DKE_WHT_LTE; + return UR_COLOR_DEFAULT; } static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, u32 id, u8 y) { struct WirelessLink_Group *data = sWirelessLinkMain.group; - u8 colorId = URoomGroupListGetTextColor(data, id); + u8 colorId = GetGroupListTextColor(data, id); - PrintUnionRoomGroupOnWindow(windowId, 8, y, &data->field_0->arr[id], colorId, id); + PrintGroupMemberOnWindow(windowId, 8, y, &data->playerList->players[id], colorId, id); } static u8 GetNewLeaderCandidate(void) @@ -1377,48 +1403,48 @@ static u8 GetNewLeaderCandidate(void) u8 i; s32 id; - for (i = 0; i < 16; i++) + for (i = 0; i < MAX_RFU_PLAYER_LIST_SIZE; i++) { - if (data->field_0->arr[i].groupScheduledAnim != UNION_ROOM_SPAWN_NONE) + if (data->playerList->players[i].groupScheduledAnim != UNION_ROOM_SPAWN_NONE) { - id = Findx20Inx1CArray(&data->field_0->arr[i], data->field_4->arr); + id = GetNewIncomingPlayerId(&data->playerList->players[i], data->incomingPlayerList->players); if (id != 0xFF) { - if (data->field_0->arr[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (data->playerList->players[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - if (AreUnionRoomPlayerGnamesDifferent(&data->field_0->arr[i].gname_uname, &data->field_4->arr[id].gname_uname)) + if (ArePlayerDataDifferent(&data->playerList->players[i].rfu, &data->incomingPlayerList->players[id].rfu)) { - data->field_0->arr[i].gname_uname = data->field_4->arr[id].gname_uname; - data->field_0->arr[i].field_1B = 64; + data->playerList->players[i].rfu = data->incomingPlayerList->players[id].rfu; + data->playerList->players[i].field_1B = 64; ret = 1; } else { - if (data->field_0->arr[i].field_1B != 0) + if (data->playerList->players[i].field_1B != 0) { - data->field_0->arr[i].field_1B--; - if (data->field_0->arr[i].field_1B == 0) + data->playerList->players[i].field_1B--; + if (data->playerList->players[i].field_1B == 0) ret = 2; } } } else { - data->field_0->arr[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->field_0->arr[i].field_1B = 64; + data->playerList->players[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + data->playerList->players[i].field_1B = 64; ret = 1; } - data->field_0->arr[i].timeoutCounter = 0; + data->playerList->players[i].timeoutCounter = 0; } else { - if (data->field_0->arr[i].groupScheduledAnim != UNION_ROOM_SPAWN_OUT) + if (data->playerList->players[i].groupScheduledAnim != UNION_ROOM_SPAWN_OUT) { - data->field_0->arr[i].timeoutCounter++; - if (data->field_0->arr[i].timeoutCounter >= 300) + data->playerList->players[i].timeoutCounter++; + if (data->playerList->players[i].timeoutCounter >= 300) { - data->field_0->arr[i].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; + data->playerList->players[i].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; ret = 2; } } @@ -1428,7 +1454,7 @@ static u8 GetNewLeaderCandidate(void) for (id = 0; id < RFU_CHILD_MAX; id++) { - if (Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], 16) != 0xFF) + if (TryAddIncomingPlayerToList(data->playerList->players, &data->incomingPlayerList->players[id], MAX_RFU_PLAYER_LIST_SIZE) != 0xFF) ret = 1; } @@ -1687,7 +1713,7 @@ static void Task_StartActivity(u8 taskId) else { LinkRfu_StopManagerBeforeEnteringChat(); - SetHostRFUtgtGname(69, 0, 1); + SetHostRfuGameData(ACTIVITY_CHAT | IN_UNION_ROOM, 0, TRUE); } EnterUnionRoomChat(); break; @@ -1856,29 +1882,29 @@ static void Task_MEvent_Leader(u8 taskId) case 0: gPlayerCurrActivity = data->activity; sPlayerActivityGroupSize = 2; - SetHostRFUtgtGname(data->activity, 0, 0); - SetGnameBufferWonderFlags(FALSE, FALSE); + SetHostRfuGameData(data->activity, 0, FALSE); + SetHostRfuWonderFlags(FALSE, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_LinkLeader(2); data->state = 1; break; case 1: - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(5 * sizeof(struct UnkStruct_x20)); - data->field_8 = AllocZeroed(5 * sizeof(struct UnkStruct_x20)); - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 5); - LinkRfu3_SetGnameUnameFromStaticBuffers(&data->field_0->arr[0].gname_uname.gname, data->field_0->arr[0].gname_uname.playerName); - data->field_0->arr[0].timeoutCounter = 0; - data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->field_0->arr[0].useRedText = FALSE; - data->field_0->arr[0].field_1B = 0; - data->listenTaskId = CreateTask_ListenForPartnersWithCompatibleSerialNos(data->field_4, 0xFF); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYERS * sizeof(struct RfuPlayer)); + data->playerListBackup = AllocZeroed(MAX_RFU_PLAYERS * sizeof(struct RfuPlayer)); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYERS); + CopyHostRfuGameDataAndUsername(&data->playerList->players[0].rfu.data, data->playerList->players[0].rfu.name); + data->playerList->players[0].timeoutCounter = 0; + data->playerList->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + data->playerList->players[0].useRedText = FALSE; + data->playerList->players[0].field_1B = 0; + data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, 0xFF); winTemplate = sWindowTemplate_PlayerList; winTemplate.baseBlock = GetMysteryGiftBaseBlock(); - winTemplate.paletteNum = 0xC; + winTemplate.paletteNum = 12; data->listWindowId = AddWindow(&winTemplate); MG_DrawTextBorder(data->listWindowId); gMultiuseListMenuTemplate = sListMenuTemplate_PossibleGroupMembers; @@ -1891,7 +1917,7 @@ static void Task_MEvent_Leader(u8 taskId) break; case 2: StringCopy(gStringVar1, sLinkGroupActivityNameTexts[gPlayerCurrActivity]); - StringExpandPlaceholders_AwaitingCommFromAnother(gStringVar4, gPlayerCurrActivity); + GetAwaitingCommunicationText(gStringVar4, gPlayerCurrActivity); data->state = 3; break; case 3: @@ -1909,7 +1935,7 @@ static void Task_MEvent_Leader(u8 taskId) case 6: if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sText_LinkWithFriendDropped)) { - data->playerCount = sub_8013398(data->field_0); + data->playerCount = LeaderPrunePlayerList(data->playerList); RedrawListMenu(data->listTaskId); data->state = 2; } @@ -1918,44 +1944,44 @@ static void Task_MEvent_Leader(u8 taskId) data->state = 7; break; case 7: - switch (mevent_message_print_and_prompt_yes_no(&data->textState, &data->field_14, 0, gStringVar4)) + switch (mevent_message_print_and_prompt_yes_no(&data->textState, &data->yesNoWindowId, 0, gStringVar4)) { case 0: LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); - data->field_0->arr[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].field_1B = 0; RedrawListMenu(data->listTaskId); data->joinRequestAnswer = RFU_STATUS_JOIN_GROUP_OK; - SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); data->state = 8; break; case 1: - case -1: + case MENU_B_PRESSED: data->joinRequestAnswer = RFU_STATUS_JOIN_GROUP_NO; - SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); data->state = 8; break; } break; case 8: - val = WaitSendRfuStatusToPartner(ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId), data->field_0->arr[data->playerCount].gname_uname.playerName); + val = WaitSendRfuStatusToPartner(ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); if (val == 1) // Send complete { if (data->joinRequestAnswer == RFU_STATUS_JOIN_GROUP_OK) { - data->field_0->arr[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].field_1B = 0; RedrawListMenu(data->listTaskId); data->playerCount++; - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->playerCount - 1]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->playerCount - 1]); StringExpandPlaceholders(gStringVar4, sText_AnOKWasSentToPlayer); data->state = 9; LinkRfu_StopManagerAndFinalizeSlots(); } else { - RequestDisconnectSlotByTrainerNameAndId(data->field_0->arr[data->playerCount].gname_uname.playerName, ReadAsU16(data->field_0->arr[data->playerCount].gname_uname.gname.unk_00.playerTrainerId)); - data->field_0->arr[data->playerCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; - sub_8013398(data->field_0); + RequestDisconnectSlotByTrainerNameAndId(data->playerList->players[data->playerCount].rfu.name, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId)); + data->playerList->players[data->playerCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; + LeaderPrunePlayerList(data->playerList); RedrawListMenu(data->listTaskId); data->state = 2; } @@ -1998,9 +2024,9 @@ static void Task_MEvent_Leader(u8 taskId) CopyBgTilemapBufferToVram(0); RemoveWindow(data->listWindowId); DestroyTask(data->listenTaskId); - Free(data->field_8); - Free(data->field_0); - Free(data->field_4); + Free(data->playerListBackup); + Free(data->playerList); + Free(data->incomingPlayerList); data->state++; break; case 14: @@ -2026,9 +2052,9 @@ static void Task_MEvent_Leader(u8 taskId) CopyBgTilemapBufferToVram(0); RemoveWindow(data->listWindowId); DestroyTask(data->listenTaskId); - Free(data->field_8); - Free(data->field_0); - Free(data->field_4); + Free(data->playerListBackup); + Free(data->playerList); + Free(data->incomingPlayerList); SetLinkStandbyCallback(); data->state++; break; @@ -2050,25 +2076,25 @@ void MEvent_CreateTask_CardOrNewsWithFriend(u32 activity) data->state = 0; data->textState = 0; - data->isWonderNews = activity - ACTIVITY_WONDER_CARD2; + data->isWonderNews = activity - ACTIVITY_WONDER_CARD; gSpecialVar_Result = LINKUP_ONGOING; } static void Task_CardOrNewsWithFriend(u8 taskId) { s32 id; - struct WindowTemplate winTemplate1, winTemplate2; + struct WindowTemplate listWinTemplate, playerNameWinTemplate; struct WirelessLink_Group *data = sWirelessLinkMain.group; switch (data->state) { case 0: - SetHostRFUtgtGname(data->isWonderNews + ACTIVITY_WONDER_CARD2, 0, 0); + SetHostRfuGameData(data->isWonderNews + ACTIVITY_WONDER_CARD, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_JoinGroup(); - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(16 * sizeof(struct UnkStruct_x20)); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYER_LIST_SIZE * sizeof(struct RfuPlayer)); data->state = 1; break; case 1: @@ -2076,18 +2102,18 @@ static void Task_CardOrNewsWithFriend(u8 taskId) data->state = 2; break; case 2: - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 16); - data->listenTaskId = CreateTask_ListenForPartnersWithCompatibleSerialNos(data->field_4, data->isWonderNews + LINK_GROUP_WONDER_CARD); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYER_LIST_SIZE); + data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, data->isWonderNews + LINK_GROUP_WONDER_CARD); - winTemplate1 = gUnknown_082F0174; - winTemplate1.baseBlock = GetMysteryGiftBaseBlock(); - winTemplate1.paletteNum = 0xC; - data->listWindowId = AddWindow(&winTemplate1); + listWinTemplate = sWindowTemplate_GroupList; + listWinTemplate.baseBlock = GetMysteryGiftBaseBlock(); + listWinTemplate.paletteNum = 12; + data->listWindowId = AddWindow(&listWinTemplate); - winTemplate2 = gUnknown_082F017C; - winTemplate2.paletteNum = 0xC; - data->playerNameAndIdWindowId = AddWindow(&winTemplate2); + playerNameWinTemplate = sWindowTemplate_PlayerNameAndId; + playerNameWinTemplate.paletteNum = 12; + data->playerNameAndIdWindowId = AddWindow(&playerNameWinTemplate); MG_DrawTextBorder(data->listWindowId); gMultiuseListMenuTemplate = sListMenuTemplate_UnionRoomGroups; @@ -2119,16 +2145,16 @@ static void Task_CardOrNewsWithFriend(u8 taskId) { // this unused variable along with the assignment is needed to match u32 unusedVar; - unusedVar = data->field_0->arr[id].gname_uname.gname.activity; + unusedVar = data->playerList->players[id].rfu.data.activity; - if (data->field_0->arr[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->field_0->arr[id].gname_uname.gname.started) + if (data->playerList->players[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->playerList->players[id].rfu.data.startedActivity) { data->leaderId = id; LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); RedrawListMenu(data->listTaskId); - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->leaderId]); - CreateTask_RfuReconnectWithParent(data->field_0->arr[data->leaderId].gname_uname.playerName, ReadAsU16(data->field_0->arr[data->leaderId].gname_uname.gname.unk_00.playerTrainerId)); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->leaderId]); + CreateTask_RfuReconnectWithParent(data->playerList->players[data->leaderId].rfu.name, ReadAsU16(data->playerList->players[data->leaderId].rfu.data.compatibility.playerTrainerId)); PlaySE(SE_POKENAV_ON); data->state = 4; } @@ -2146,13 +2172,13 @@ static void Task_CardOrNewsWithFriend(u8 taskId) break; case 4: AddTextPrinterToWindow1(sText_AwaitingPlayersResponse); - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->leaderId]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->leaderId]); data->state = 5; break; case 5: if (gReceivedRemoteLinkPlayers) { - gPlayerCurrActivity = data->field_0->arr[data->leaderId].gname_uname.gname.activity; + gPlayerCurrActivity = data->playerList->players[data->leaderId].rfu.data.activity; data->state = 10; } @@ -2177,8 +2203,8 @@ static void Task_CardOrNewsWithFriend(u8 taskId) RemoveWindow(data->playerNameAndIdWindowId); RemoveWindow(data->listWindowId); DestroyTask(data->listenTaskId); - Free(data->field_0); - Free(data->field_4); + Free(data->playerList); + Free(data->incomingPlayerList); data->state++; break; case 9: @@ -2219,7 +2245,7 @@ void MEvent_CreateTask_CardOrNewsOverWireless(u32 activity) data->state = 0; data->textState = 0; - data->isWonderNews = activity - ACTIVITY_WONDER_CARD2; + data->isWonderNews = activity - ACTIVITY_WONDER_CARD; gSpecialVar_Result = LINKUP_ONGOING; } @@ -2232,12 +2258,12 @@ static void Task_CardOrNewsOverWireless(u8 taskId) switch (data->state) { case 0: - SetHostRFUtgtGname(0, 0, 0); + SetHostRfuGameData(ACTIVITY_NONE, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_JoinGroup(); - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - data->field_0 = AllocZeroed(16 * sizeof(struct UnkStruct_x20)); + data->incomingPlayerList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + data->playerList = AllocZeroed(MAX_RFU_PLAYER_LIST_SIZE * sizeof(struct RfuPlayer)); data->state = 1; break; case 1: @@ -2245,13 +2271,13 @@ static void Task_CardOrNewsOverWireless(u8 taskId) data->state = 2; break; case 2: - ClearUnkStruct_x1CArray(data->field_4, 4); - ClearUnkStruct_x20Array(data->field_0->arr, 16); - data->listenTaskId = CreateTask_ListenForPartnersWithSerial7F7D(data->field_4, data->isWonderNews + LINK_GROUP_WONDER_CARD); + ClearIncomingPlayerList(data->incomingPlayerList, RFU_CHILD_MAX); + ClearRfuPlayerList(data->playerList->players, MAX_RFU_PLAYER_LIST_SIZE); + data->listenTaskId = CreateTask_ListenForWonderDistributor(data->incomingPlayerList, data->isWonderNews + LINK_GROUP_WONDER_CARD); - if (data->field_13 != 0) + if (data->showListMenu) { - winTemplate = gUnknown_082F0174; + winTemplate = sWindowTemplate_GroupList; winTemplate.baseBlock = GetMysteryGiftBaseBlock(); data->listWindowId = AddWindow(&winTemplate); @@ -2273,23 +2299,23 @@ static void Task_CardOrNewsOverWireless(u8 taskId) case 1: PlaySE(SE_PC_LOGIN); default: - if (data->field_13 != 0) + if (data->showListMenu) RedrawListMenu(data->listTaskId); break; case 0: - if (data->field_13 != 0) + if (data->showListMenu) id = ListMenu_ProcessInput(data->listTaskId); if (data->refreshTimer > 120) { - if (data->field_0->arr[0].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->field_0->arr[0].gname_uname.gname.started) + if (data->playerList->players[0].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->playerList->players[0].rfu.data.startedActivity) { - if (HasWonderCardOrNewsByLinkGroup(&data->field_0->arr[0].gname_uname.gname, data->isWonderNews + LINK_GROUP_WONDER_CARD)) + if (HasWonderCardOrNewsByLinkGroup(&data->playerList->players[0].rfu.data, data->isWonderNews + LINK_GROUP_WONDER_CARD)) { data->leaderId = 0; data->refreshTimer = 0; LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); - CreateTask_RfuReconnectWithParent(data->field_0->arr[0].gname_uname.playerName, ReadAsU16(data->field_0->arr[0].gname_uname.gname.unk_00.playerTrainerId)); + CreateTask_RfuReconnectWithParent(data->playerList->players[0].rfu.name, ReadAsU16(data->playerList->players[0].rfu.data.compatibility.playerTrainerId)); PlaySE(SE_POKENAV_ON); data->state = 4; } @@ -2311,13 +2337,13 @@ static void Task_CardOrNewsOverWireless(u8 taskId) break; case 4: AddTextPrinterToWindow1(sText_AwaitingResponseFromWirelessSystem); - IntlConvPartnerUname7(gStringVar1, &data->field_0->arr[data->leaderId]); + CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->leaderId]); data->state = 5; break; case 5: if (gReceivedRemoteLinkPlayers) { - gPlayerCurrActivity = data->field_0->arr[data->leaderId].gname_uname.gname.activity; + gPlayerCurrActivity = data->playerList->players[data->leaderId].rfu.data.activity; data->state = 12; } @@ -2338,15 +2364,15 @@ static void Task_CardOrNewsOverWireless(u8 taskId) case 8: case 10: case 12: - if (data->field_13 != 0) + if (data->showListMenu) { DestroyListMenuTask(data->listTaskId, 0, 0); CopyBgTilemapBufferToVram(0); RemoveWindow(data->listWindowId); } DestroyTask(data->listenTaskId); - Free(data->field_0); - Free(data->field_4); + Free(data->playerList); + Free(data->incomingPlayerList); data->state++; break; case 9: @@ -2391,7 +2417,7 @@ void RunUnionRoom(void) { struct WirelessLink_URoom *uroom; - ClearAndInitHostRFUtgtGname(); + ResetHostRfuGameData(); CreateTask(Task_RunUnionRoom, 10); // dumb line needed to match @@ -2434,14 +2460,18 @@ static void ScheduleFieldMessageAndExit(const u8 *src) StringExpandPlaceholders(gStringVar4, src); } -static void sub_80156B0(struct WirelessLink_URoom *uroom) +static void CopyPlayerListToBuffer(struct WirelessLink_URoom *uroom) { - memcpy(&gDecompressionBuffer[0x3F00], uroom->field_0, 0x100); + memcpy(&gDecompressionBuffer[sizeof(gDecompressionBuffer) - (MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer))], + uroom->playerList, + MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer)); } -static void sub_80156C8(struct WirelessLink_URoom *uroom) +static void CopyPlayerListFromBuffer(struct WirelessLink_URoom *uroom) { - memcpy(uroom->field_0, &gDecompressionBuffer[0x3F00], 0x100); + memcpy(uroom->playerList, + &gDecompressionBuffer[sizeof(gDecompressionBuffer) - (MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer))], + MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer)); } static void Task_RunUnionRoom(u8 taskId) @@ -2455,31 +2485,31 @@ static void Task_RunUnionRoom(u8 taskId) switch (uroom->state) { case UR_STATE_INIT: - uroom->field_4 = AllocZeroed(RFU_CHILD_MAX * sizeof(struct UnkStruct_x1C)); - uroom->field_C = AllocZeroed(RFU_CHILD_MAX * sizeof(struct UnkStruct_x1C)); - uroom->field_0 = AllocZeroed(8 * sizeof(struct UnkStruct_x20)); - uroom->field_8 = AllocZeroed(sizeof(struct UnkStruct_x20)); - ClearUnkStruct_x20Array(uroom->field_0->arr, ARRAY_COUNT(uroom->field_0->arr)); + uroom->incomingChildList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + uroom->incomingParentList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + uroom->playerList = AllocZeroed(MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer)); + uroom->spawnPlayer = AllocZeroed(sizeof(struct RfuPlayer)); + ClearRfuPlayerList(uroom->playerList->players, MAX_UNION_ROOM_LEADERS); gPlayerCurrActivity = IN_UNION_ROOM; - uroom->searchTaskId = CreateTask_SearchForChildOrParent(uroom->field_C, uroom->field_4, LINK_GROUP_UNION_ROOM_RESUME); + uroom->searchTaskId = CreateTask_SearchForChildOrParent(uroom->incomingParentList, uroom->incomingChildList, LINK_GROUP_UNION_ROOM_RESUME); InitUnionRoomPlayerObjects(uroom->objects); SetTilesAroundUnionRoomPlayersPassable(); uroom->state = UR_STATE_INIT_OBJECTS; break; case UR_STATE_INIT_OBJECTS: - CreateGroupMemberSpritesInvisible(uroom->spriteIds, taskData[0]); + CreateUnionRoomPlayerSprites(uroom->spriteIds, taskData[0]); if (++taskData[0] == 8) uroom->state = UR_STATE_INIT_LINK; break; case UR_STATE_INIT_LINK: - SetHostRFUtgtGname(IN_UNION_ROOM, 0, 0); + SetHostRfuGameData(IN_UNION_ROOM, 0, FALSE); SetTradeBoardRegisteredMonInfo(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_EnterUnionRoom(); - ClearUnkStruct_x20Array(&uroom->field_8->arr[0], 1); - ClearUnkStruct_x1CArray(uroom->field_4, 4); - ClearUnkStruct_x1CArray(uroom->field_C, 4); + ClearRfuPlayerList(&uroom->spawnPlayer->players[0], 1); + ClearIncomingPlayerList(uroom->incomingChildList, RFU_CHILD_MAX); + ClearIncomingPlayerList(uroom->incomingParentList, RFU_CHILD_MAX); gSpecialVar_Result = 0; uroom->state = UR_STATE_CHECK_SELECTING_MON; break; @@ -2509,7 +2539,7 @@ static void Task_RunUnionRoom(u8 taskId) } break; case URTRADE_STATE_OFFERING: - sub_80156C8(uroom); + CopyPlayerListFromBuffer(uroom); taskData[1] = sUnionRoomTrade.offerPlayerId; if (id >= PARTY_SIZE) { @@ -2560,10 +2590,10 @@ static void Task_RunUnionRoom(u8 taskId) { if (JOY_NEW(A_BUTTON)) { - if (TryInteractWithUnionRoomMember(uroom->field_0, &taskData[0], &taskData[1], uroom->spriteIds)) + if (TryInteractWithUnionRoomMember(uroom->playerList, &taskData[0], &taskData[1], uroom->spriteIds)) { PlaySE(SE_SELECT); - UR_EnableScriptContext2AndFreezeObjectEvents(); + StartScriptInteraction(); uroom->state = UR_STATE_INTERACT_WITH_PLAYER; break; } @@ -2571,7 +2601,7 @@ static void Task_RunUnionRoom(u8 taskId) { UpdateGameData_SetActivity(ACTIVITY_PLYRTALK | IN_UNION_ROOM, 0, TRUE); PlaySE(SE_PC_LOGIN); - UR_EnableScriptContext2AndFreezeObjectEvents(); + StartScriptInteraction(); StringCopy(gStringVar1, gSaveBlock2Ptr->playerName); uroom->state = UR_STATE_CHECK_TRADING_BOARD; break; @@ -2580,16 +2610,16 @@ static void Task_RunUnionRoom(u8 taskId) switch (HandlePlayerListUpdate()) { - case 1: + case PLIST_1: PlaySE(SE_PC_LOGIN); - case 2: + case PLIST_2: ScheduleUnionRoomPlayerRefresh(uroom); break; - case 4: + case PLIST_4: uroom->state = UR_STATE_PLAYER_CONTACTED_YOU; - UR_EnableScriptContext2AndFreezeObjectEvents(); + StartScriptInteraction(); SetTradeBoardRegisteredMonInfo(TYPE_NORMAL, SPECIES_NONE, 0); - UpdateGameData_SetActivity(ACTIVITY_NPCTALK | IN_UNION_ROOM, GetActivePartnerSpriteGenderParam(uroom), FALSE); + UpdateGameData_SetActivity(ACTIVITY_NPCTALK | IN_UNION_ROOM, GetActivePartnersInfo(uroom), FALSE); break; } HandleUnionRoomPlayerRefresh(uroom); @@ -2603,16 +2633,16 @@ static void Task_RunUnionRoom(u8 taskId) } break; case UR_STATE_INTERACT_WITH_PLAYER: - UR_RunTextPrinters_CheckPrinter0Active(); - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + UR_RunTextPrinters(); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); UpdateGameData_SetActivity(ACTIVITY_PLYRTALK | IN_UNION_ROOM, 0, TRUE); - switch (UnionRoomGetPlayerInteractionResponse(uroom->field_0, taskData[0], taskData[1], playerGender)) + switch (UnionRoomGetPlayerInteractionResponse(uroom->playerList, taskData[0], taskData[1], playerGender)) { case 0: // Player is or was just doing an activity uroom->state = UR_STATE_PRINT_AND_EXIT; break; case 1: // Link communicating - sub_8012188(uroom->field_0->arr[taskData[1]].gname_uname.playerName, &uroom->field_0->arr[taskData[1]].gname_uname.gname, gPlayerCurrActivity); + TryConnectToUnionRoomParent(uroom->playerList->players[taskData[1]].rfu.name, &uroom->playerList->players[taskData[1]].rfu.data, gPlayerCurrActivity); uroom->field_12 = id; // Should be just 0, but won't match any other way. uroom->state = UR_STATE_TRY_COMMUNICATING; break; @@ -2622,7 +2652,7 @@ static void Task_RunUnionRoom(u8 taskId) } break; case UR_STATE_TRY_COMMUNICATING: - UR_RunTextPrinters_CheckPrinter0Active(); + UR_RunTextPrinters(); switch (RfuGetStatus()) { case RFU_STATUS_NEW_CHILD_DETECTED: @@ -2660,13 +2690,13 @@ static void Task_RunUnionRoom(u8 taskId) if (!gReceivedRemoteLinkPlayers) { HandleCancelActivity(FALSE); - UpdateUnionRoomMemberFacing(taskData[0], taskData[1], uroom->field_0); + UpdateUnionRoomMemberFacing(taskData[0], taskData[1], uroom->playerList); uroom->state = UR_STATE_INIT_LINK; } break; case UR_STATE_DO_SOMETHING_PROMPT: - id = ConvPartnerUnameAndGetWhetherMetAlready(&uroom->field_0->arr[taskData[1]]); - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + id = ConvPartnerUnameAndGetWhetherMetAlready(&uroom->playerList->players[taskData[1]]); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); ScheduleFieldMessageWithFollowupState(UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT, sHiDoSomethingTexts[id][playerGender]); break; case UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT: @@ -2684,7 +2714,7 @@ static void Task_RunUnionRoom(u8 taskId) else { uroom->partnerYesNoResponse = 0; - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); if (input == -2 || input == IN_UNION_ROOM) { uroom->playerSendBuffer[0] = IN_UNION_ROOM; @@ -2695,7 +2725,7 @@ static void Task_RunUnionRoom(u8 taskId) else { gPlayerCurrActivity = input; - sPlayerActivityGroupSize = (u32)(input) >> 8; + sPlayerActivityGroupSize = (u32)input >> 8; // Extract capacity from sInviteToActivityMenuItems if (gPlayerCurrActivity == (ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM) && !HasAtLeastTwoMonsOfLevel30OrLower()) { ScheduleFieldMessageWithFollowupState(UR_STATE_DO_SOMETHING_PROMPT, sText_NeedTwoMonsOfLevel30OrLower1); @@ -2716,7 +2746,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_SEND_ACTIVITY_REQUEST: PollPartnerYesNoResponse(uroom); - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); id = GetResponseIdx_InviteToURoomActivity(uroom->playerSendBuffer[0] & 0x3F); if (PrintOnTextbox(&uroom->textState, sText_WaitOrShowCardTexts[playerGender][id])) { @@ -2766,8 +2796,8 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_DO_SOMETHING_PROMPT_2: // Identical to UR_STATE_DO_SOMETHING_PROMPT - id = ConvPartnerUnameAndGetWhetherMetAlready(&uroom->field_0->arr[taskData[1]]); - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + id = ConvPartnerUnameAndGetWhetherMetAlready(&uroom->playerList->players[taskData[1]]); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); ScheduleFieldMessageWithFollowupState(UR_STATE_HANDLE_DO_SOMETHING_PROMPT_INPUT, sHiDoSomethingTexts[id][playerGender]); break; case UR_STATE_PRINT_CARD_INFO: @@ -2802,14 +2832,14 @@ static void Task_RunUnionRoom(u8 taskId) CopyBgTilemapBufferToVram(0); gPlayerCurrActivity = ACTIVITY_CHAT | IN_UNION_ROOM; UpdateGameData_SetActivity(ACTIVITY_CHAT | IN_UNION_ROOM, 0, TRUE); - sub_8012188(uroom->field_0->arr[taskData[1]].gname_uname.playerName, &uroom->field_0->arr[taskData[1]].gname_uname.gname, gPlayerCurrActivity); + TryConnectToUnionRoomParent(uroom->playerList->players[taskData[1]].rfu.name, &uroom->playerList->players[taskData[1]].rfu.data, gPlayerCurrActivity); uroom->field_12 = taskData[1]; uroom->state = UR_STATE_TRY_ACCEPT_CHAT_REQUEST_DELAY; taskData[3] = 0; break; case 1: // NO - case -1: - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + case MENU_B_PRESSED: + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); ScheduleFieldMessageAndExit(sDeclineChatTexts[playerGender]); break; } @@ -2830,7 +2860,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case RFU_STATUS_FATAL_ERROR: case RFU_STATUS_CONNECTION_ERROR: - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); UpdateGameData_SetActivity(ACTIVITY_PLYRTALK | IN_UNION_ROOM, 0, TRUE); if (IsUnionRoomListenTaskActive() == TRUE) ScheduleFieldMessageAndExit(sChatDeclinedTexts[playerGender]); @@ -2846,7 +2876,7 @@ static void Task_RunUnionRoom(u8 taskId) case UR_STATE_ACCEPT_CHAT_REQUEST: if (RfuHasErrored()) { - playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->field_0); + playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); UpdateGameData_SetActivity(ACTIVITY_PLYRTALK | IN_UNION_ROOM, 0, TRUE); if (IsUnionRoomListenTaskActive() == TRUE) ScheduleFieldMessageAndExit(sChatDeclinedTexts[playerGender]); @@ -2892,7 +2922,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_HANDLE_CONTACT_DATA: ReceiveUnionRoomActivityPacket(uroom); - if (UnionRoom_HandleContactFromOtherPlayer(uroom) && JOY_NEW(B_BUTTON)) + if (HandleContactFromOtherPlayer(uroom) && JOY_NEW(B_BUTTON)) { Rfu_DisconnectPlayerById(1); StringCopy(gStringVar4, sText_ChatEnded); @@ -2912,7 +2942,7 @@ static void Task_RunUnionRoom(u8 taskId) else UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, GetLinkPlayerInfoFlags(1), TRUE); - uroom->field_8->arr[0].field_1B = 0; + uroom->spawnPlayer->players[0].field_1B = 0; taskData[3] = 0; if (gPlayerCurrActivity == (ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM)) { @@ -2942,7 +2972,7 @@ static void Task_RunUnionRoom(u8 taskId) } break; case 1: // DECLINE - case -1: + case MENU_B_PRESSED: uroom->playerSendBuffer[0] = ACTIVITY_DECLINE | IN_UNION_ROOM; Rfu_SendPacket(uroom->playerSendBuffer); uroom->state = UR_STATE_DECLINE_ACTIVITY_REQUEST; @@ -2981,16 +3011,16 @@ static void Task_RunUnionRoom(u8 taskId) uroom->state = UR_STATE_START_ACTIVITY_FREE_UROOM; break; case UR_STATE_START_ACTIVITY_FREE_UROOM: - Free(uroom->field_8); - Free(uroom->field_0); - Free(uroom->field_C); - Free(uroom->field_4); + Free(uroom->spawnPlayer); + Free(uroom->playerList); + Free(uroom->incomingParentList); + Free(uroom->incomingChildList); DestroyTask(uroom->searchTaskId); - DestroyGroupMemberSprites(uroom->spriteIds); + DestroyUnionRoomPlayerSprites(uroom->spriteIds); uroom->state = UR_STATE_START_ACTIVITY_FADE; break; case UR_STATE_START_ACTIVITY_FADE: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); uroom->state = UR_STATE_START_ACTIVITY; break; case UR_STATE_START_ACTIVITY: @@ -3003,20 +3033,20 @@ static void Task_RunUnionRoom(u8 taskId) } break; case UR_STATE_INTERACT_WITH_ATTENDANT: - if (GetHostRFUtgtGname()->species == SPECIES_NONE) + if (GetHostRfuGameData()->tradeSpecies == SPECIES_NONE) { uroom->state = UR_STATE_REGISTER_PROMPT; } else { - if (GetHostRFUtgtGname()->species == SPECIES_EGG) + if (GetHostRfuGameData()->tradeSpecies == SPECIES_EGG) { StringCopy(gStringVar4, sText_CancelRegistrationOfEgg); } else { - StringCopy(gStringVar1, gSpeciesNames[GetHostRFUtgtGname()->species]); - ConvertIntToDecimalStringN(gStringVar2, GetHostRFUtgtGname()->level, STR_CONV_MODE_LEFT_ALIGN, 3); + StringCopy(gStringVar1, gSpeciesNames[GetHostRfuGameData()->tradeSpecies]); + ConvertIntToDecimalStringN(gStringVar2, GetHostRfuGameData()->tradeLevel, STR_CONV_MODE_LEFT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, sText_CancelRegistrationOfMon); } ScheduleFieldMessageWithFollowupState(UR_STATE_CANCEL_REGISTRATION_PROMPT, gStringVar4); @@ -3028,8 +3058,8 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_REGISTER_PROMPT_HANDLE_INPUT: input = ListMenuHandler_AllItemsAvailable(&uroom->textState, - &uroom->tradeBoardSelectWindowId, - &uroom->tradeBoardDetailsWindowId, + &uroom->tradeBoardMainWindowId, + &uroom->tradeBoardHeaderWindowId, &sWindowTemplate_RegisterForTrade, &sListMenuTemplate_RegisterForTrade); if (input != -1) @@ -3067,9 +3097,9 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_REGISTER_REQUEST_TYPE: input = ListMenuHandler_AllItemsAvailable(&uroom->textState, - &uroom->tradeBoardSelectWindowId, - &uroom->tradeBoardDetailsWindowId, - &gUnknown_082F0294, + &uroom->tradeBoardMainWindowId, + &uroom->tradeBoardHeaderWindowId, + &sWindowTemplate_TradingBoardRequestType, &sMenuTemplate_TradingBoardRequestType); if (input != -1) { @@ -3099,7 +3129,7 @@ static void Task_RunUnionRoom(u8 taskId) uroom->state = UR_STATE_CANCEL_REGISTRATION; break; case 1: // NO - case -1: + case MENU_B_PRESSED: HandleCancelActivity(TRUE); uroom->state = UR_STATE_MAIN; break; @@ -3123,7 +3153,13 @@ static void Task_RunUnionRoom(u8 taskId) uroom->state = UR_STATE_TRADING_BOARD_HANDLE_INPUT; break; case UR_STATE_TRADING_BOARD_HANDLE_INPUT: - input = TradeBoardMenuHandler(&uroom->textState, &uroom->tradeBoardSelectWindowId, &uroom->tradeBoardListMenuId, &uroom->tradeBoardDetailsWindowId, &gUnknown_082F034C, &sTradeBoardListMenuTemplate, uroom->field_0); + input = TradeBoardMenuHandler(&uroom->textState, + &uroom->tradeBoardMainWindowId, + &uroom->tradeBoardListMenuId, + &uroom->tradeBoardHeaderWindowId, + &sWindowTemplate_TradingBoardMain, + &sTradeBoardListMenuTemplate, + uroom->playerList); if (input != -1) { switch (input) @@ -3135,21 +3171,21 @@ static void Task_RunUnionRoom(u8 taskId) break; default: UR_ClearBg0(); - switch (IsRequestedTypeOrEggInPlayerParty(uroom->field_0->arr[input].gname_uname.gname.type, uroom->field_0->arr[input].gname_uname.gname.species)) + switch (IsRequestedTypeOrEggInPlayerParty(uroom->playerList->players[input].rfu.data.tradeType, uroom->playerList->players[input].rfu.data.tradeSpecies)) { case UR_TRADE_MATCH: - IntlConvPartnerUname7(gStringVar1, &uroom->field_0->arr[input]); + CopyAndTranslatePlayerName(gStringVar1, &uroom->playerList->players[input]); ScheduleFieldMessageWithFollowupState(UR_STATE_TRADE_PROMPT, sText_AskTrainerToMakeTrade); taskData[1] = input; break; case UR_TRADE_NOTYPE: - IntlConvPartnerUname7(gStringVar1, &uroom->field_0->arr[input]); - StringCopy(gStringVar2, gTypeNames[uroom->field_0->arr[input].gname_uname.gname.type]); + CopyAndTranslatePlayerName(gStringVar1, &uroom->playerList->players[input]); + StringCopy(gStringVar2, gTypeNames[uroom->playerList->players[input].rfu.data.tradeType]); ScheduleFieldMessageWithFollowupState(UR_STATE_TRADING_BOARD_LOAD, sText_DontHaveTypeTrainerWants); break; case UR_TRADE_NOEGG: - IntlConvPartnerUname7(gStringVar1, &uroom->field_0->arr[input]); - StringCopy(gStringVar2, gTypeNames[uroom->field_0->arr[input].gname_uname.gname.type]); + CopyAndTranslatePlayerName(gStringVar1, &uroom->playerList->players[input]); + StringCopy(gStringVar2, gTypeNames[uroom->playerList->players[input].rfu.data.tradeType]); ScheduleFieldMessageWithFollowupState(UR_STATE_TRADING_BOARD_LOAD, sText_DontHaveEggTrainerWants); break; } @@ -3163,8 +3199,8 @@ static void Task_RunUnionRoom(u8 taskId) case 0: // YES uroom->state = UR_STATE_TRADE_SELECT_MON; break; - case -1: // NO - case 1: + case MENU_B_PRESSED: + case 1: // NO HandleCancelActivity(TRUE); uroom->state = UR_STATE_MAIN; break; @@ -3174,19 +3210,19 @@ static void Task_RunUnionRoom(u8 taskId) if (PrintOnTextbox(&uroom->textState, sText_WhichMonWillYouOffer)) { sUnionRoomTrade.state = URTRADE_STATE_OFFERING; - memcpy(&gPartnerTgtGnameSub, &uroom->field_0->arr[taskData[1]].gname_uname.gname.unk_00, sizeof(gPartnerTgtGnameSub)); - gUnionRoomRequestedMonType = uroom->field_0->arr[taskData[1]].gname_uname.gname.type; - gUnionRoomOfferedSpecies = uroom->field_0->arr[taskData[1]].gname_uname.gname.species; + memcpy(&gRfuPartnerCompatibilityData, &uroom->playerList->players[taskData[1]].rfu.data.compatibility, sizeof(gRfuPartnerCompatibilityData)); + gUnionRoomRequestedMonType = uroom->playerList->players[taskData[1]].rfu.data.tradeType; + gUnionRoomOfferedSpecies = uroom->playerList->players[taskData[1]].rfu.data.tradeSpecies; gFieldCallback = FieldCB_ContinueScriptUnionRoom; ChooseMonForTradingBoard(PARTY_MENU_TYPE_UNION_ROOM_TRADE, CB2_ReturnToField); - sub_80156B0(uroom); + CopyPlayerListToBuffer(uroom); sUnionRoomTrade.offerPlayerId = taskData[1]; } break; case UR_STATE_TRADE_OFFER_MON: gPlayerCurrActivity = ACTIVITY_TRADE | IN_UNION_ROOM; - sub_8012188(uroom->field_0->arr[taskData[1]].gname_uname.playerName, &uroom->field_0->arr[taskData[1]].gname_uname.gname, gPlayerCurrActivity); - IntlConvPartnerUname7(gStringVar1, &uroom->field_0->arr[taskData[1]]); + TryConnectToUnionRoomParent(uroom->playerList->players[taskData[1]].rfu.name, &uroom->playerList->players[taskData[1]].rfu.data, gPlayerCurrActivity); + CopyAndTranslatePlayerName(gStringVar1, &uroom->playerList->players[taskData[1]]); UR_PrintFieldMessage(sCommunicatingWaitTexts[2]); uroom->state = UR_STATE_TRY_COMMUNICATING; break; @@ -3194,7 +3230,7 @@ static void Task_RunUnionRoom(u8 taskId) if (PrintOnTextbox(&uroom->textState, gStringVar4)) { HandleCancelActivity(TRUE); - UpdateUnionRoomMemberFacing(taskData[0], taskData[1], uroom->field_0); + UpdateUnionRoomMemberFacing(taskData[0], taskData[1], uroom->playerList); uroom->state = UR_STATE_MAIN; } break; @@ -3224,7 +3260,7 @@ static void ReceiveUnionRoomActivityPacket(struct WirelessLink_URoom *data) } } -static bool32 UnionRoom_HandleContactFromOtherPlayer(struct WirelessLink_URoom *uroom) +static bool32 HandleContactFromOtherPlayer(struct WirelessLink_URoom *uroom) { if (uroom->recvActivityRequest[0] != 0) { @@ -3278,7 +3314,7 @@ static void Task_InitUnionRoom(u8 taskId) data->state = 1; break; case 1: - SetHostRFUtgtGname(ACTIVITY_SEARCH, 0, 0); + SetHostRfuGameData(ACTIVITY_SEARCH, 0, FALSE); SetWirelessCommType1(); OpenLink(); InitializeRfuLinkManager_EnterUnionRoom(); @@ -3286,30 +3322,30 @@ static void Task_InitUnionRoom(u8 taskId) data->state = 2; break; case 2: - data->field_4 = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - ClearUnkStruct_x1CArray(data->field_4, 4); - data->field_C = AllocZeroed(4 * sizeof(struct UnkStruct_x1C)); - ClearUnkStruct_x1CArray(data->field_C, 4); - data->field_0 = AllocZeroed(8 * sizeof(struct UnkStruct_x20)); - ClearUnkStruct_x20Array(data->field_0->arr, 8); - data->field_8 = AllocZeroed(sizeof(struct UnkStruct_x20)); - ClearUnkStruct_x20Array(&data->field_8->arr[0], 1); - data->searchTaskId = CreateTask_SearchForChildOrParent(data->field_C, data->field_4, 10); + data->incomingChildList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + ClearIncomingPlayerList(data->incomingChildList, RFU_CHILD_MAX); + data->incomingParentList = AllocZeroed(RFU_CHILD_MAX * sizeof(struct RfuIncomingPlayer)); + ClearIncomingPlayerList(data->incomingParentList, RFU_CHILD_MAX); + data->playerList = AllocZeroed(MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer)); + ClearRfuPlayerList(data->playerList->players, MAX_UNION_ROOM_LEADERS); + data->spawnPlayer = AllocZeroed(sizeof(struct RfuPlayer)); + ClearRfuPlayerList(&data->spawnPlayer->players[0], 1); + data->searchTaskId = CreateTask_SearchForChildOrParent(data->incomingParentList, data->incomingChildList, LINK_GROUP_UNION_ROOM_INIT); data->state = 3; break; case 3: switch (HandlePlayerListUpdate()) { - case 1: - case 2: + case PLIST_1: + case PLIST_2: if (sUnionRoomPlayerName[0] == EOS) { - for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { - if (data->field_0->arr[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (data->playerList->players[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - IntlConvPartnerUname7(text, &data->field_0->arr[i]); - if (PlayerHasMetTrainerBefore(ReadAsU16(data->field_0->arr[i].gname_uname.gname.unk_00.playerTrainerId), text)) + CopyAndTranslatePlayerName(text, &data->playerList->players[i]); + if (PlayerHasMetTrainerBefore(ReadAsU16(data->playerList->players[i].rfu.data.compatibility.playerTrainerId), text)) { StringCopy(sUnionRoomPlayerName, text); break; @@ -3318,15 +3354,15 @@ static void Task_InitUnionRoom(u8 taskId) } } break; - case 3: + case PLIST_3: break; } break; case 4: - free(data->field_8); - free(data->field_0); - free(data->field_C); - free(data->field_4); + free(data->spawnPlayer); + free(data->playerList); + free(data->incomingParentList); + free(data->incomingChildList); DestroyTask(data->searchTaskId); free(sWirelessLinkMain.uRoom); LinkRfu_Shutdown(); @@ -3354,160 +3390,150 @@ static u8 HandlePlayerListUpdate(void) s32 i; u8 j; struct WirelessLink_URoom *data = sWirelessLinkMain.uRoom; - s32 r7 = 0; + s32 retVal = PLIST_0; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (AreGnameUnameDifferent(&data->field_C->arr[i].gname_uname, &sWirelessGnameUnamePair_Dummy) == TRUE) + if (ArePlayersDifferent(&data->incomingParentList->players[i].rfu, &sUnionRoomPlayer_DummyRfu) == TRUE) { - data->field_8->arr[0].gname_uname = data->field_C->arr[i].gname_uname; - data->field_8->arr[0].timeoutCounter = 0; - data->field_8->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->field_8->arr[0].field_1B = 1; - return 4; + data->spawnPlayer->players[0].rfu = data->incomingParentList->players[i].rfu; + data->spawnPlayer->players[0].timeoutCounter = 0; + data->spawnPlayer->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + data->spawnPlayer->players[0].field_1B = 1; + return PLIST_4; } } - for (j = 0; j < ARRAY_COUNT(data->field_0->arr); j++) + for (j = 0; j < MAX_UNION_ROOM_LEADERS; j++) { - if (data->field_0->arr[j].groupScheduledAnim != UNION_ROOM_SPAWN_NONE) + if (data->playerList->players[j].groupScheduledAnim != UNION_ROOM_SPAWN_NONE) { - i = Findx20Inx1CArray(&data->field_0->arr[j], &data->field_4->arr[0]); + i = GetNewIncomingPlayerId(&data->playerList->players[j], &data->incomingChildList->players[0]); if (i != 0xFF) { - if (data->field_0->arr[j].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (data->playerList->players[j].groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - if (AreUnionRoomPlayerGnamesDifferent(&data->field_0->arr[j].gname_uname, &data->field_4->arr[i].gname_uname)) + if (ArePlayerDataDifferent(&data->playerList->players[j].rfu, &data->incomingChildList->players[i].rfu)) { - data->field_0->arr[j].gname_uname = data->field_4->arr[i].gname_uname; - data->field_0->arr[j].field_1B = 64; - r7 = 1; + data->playerList->players[j].rfu = data->incomingChildList->players[i].rfu; + data->playerList->players[j].field_1B = 64; + retVal = PLIST_1; } - else if (data->field_0->arr[j].field_1B != 0) + else if (data->playerList->players[j].field_1B != 0) { - data->field_0->arr[j].field_1B--; - if (data->field_0->arr[j].field_1B == 0) - r7 = 2; + data->playerList->players[j].field_1B--; + if (data->playerList->players[j].field_1B == 0) + retVal = PLIST_2; } } else { - data->field_0->arr[j].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->field_0->arr[j].field_1B = 0; - r7 = 2; + data->playerList->players[j].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + data->playerList->players[j].field_1B = 0; + retVal = PLIST_2; } - data->field_0->arr[j].timeoutCounter = 0; + data->playerList->players[j].timeoutCounter = 0; } - else if (data->field_0->arr[j].groupScheduledAnim != UNION_ROOM_SPAWN_OUT) + else if (data->playerList->players[j].groupScheduledAnim != UNION_ROOM_SPAWN_OUT) { - data->field_0->arr[j].timeoutCounter++; - if (data->field_0->arr[j].timeoutCounter >= 600) + data->playerList->players[j].timeoutCounter++; + if (data->playerList->players[j].timeoutCounter >= 600) { - data->field_0->arr[j].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; - r7 = 2; + data->playerList->players[j].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; + retVal = PLIST_2; } } - else if (data->field_0->arr[j].groupScheduledAnim == UNION_ROOM_SPAWN_OUT) + else if (data->playerList->players[j].groupScheduledAnim == UNION_ROOM_SPAWN_OUT) { - data->field_0->arr[j].timeoutCounter++; - if (data->field_0->arr[j].timeoutCounter >= 900) - { - ClearUnkStruct_x20Array(&data->field_0->arr[j], 1); - } + data->playerList->players[j].timeoutCounter++; + if (data->playerList->players[j].timeoutCounter >= 900) + ClearRfuPlayerList(&data->playerList->players[j], 1); } } } for (i = 0; i < RFU_CHILD_MAX; i++) - { - if (Appendx1Ctox20(&data->field_0->arr[0], &data->field_4->arr[i], MAX_UNION_ROOM_PLAYERS) != 0xFF) - r7 = 1; - } + if (TryAddIncomingPlayerToList(&data->playerList->players[0], &data->incomingChildList->players[i], MAX_UNION_ROOM_LEADERS) != 0xFF) + retVal = PLIST_1; - return r7; + return retVal; } static void Task_SearchForChildOrParent(u8 taskId) { s32 i, j; - struct WirelessGnameUnamePair gname_uname; - struct UnkStruct_Main4 **ptr = (void*) gTasks[taskId].data; + struct RfuPlayerData rfu; + struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; bool8 isParent; for (i = 0; i < RFU_CHILD_MAX; i++) { - isParent = LinkRfu_GetNameIfCompatible(&gname_uname.gname, gname_uname.playerName, i); - if (!IsPartnerActivityAcceptable(gname_uname.gname.activity, gTasks[taskId].data[4])) - { - gname_uname = sWirelessGnameUnamePair_Dummy; - } - if (gname_uname.gname.unk_00.language == LANGUAGE_JAPANESE) - { - gname_uname = sWirelessGnameUnamePair_Dummy; - } + isParent = Rfu_GetCompatiblePlayerData(&rfu.data, rfu.name, i); + + if (!IsPartnerActivityAcceptable(rfu.data.activity, gTasks[taskId].data[4])) + rfu = sUnionRoomPlayer_DummyRfu; + if (rfu.data.compatibility.language == LANGUAGE_JAPANESE) + rfu = sUnionRoomPlayer_DummyRfu; + if (!isParent) { for (j = 0; j < i; j++) { - if (!AreGnameUnameDifferent(&ptr[1]->arr[j].gname_uname, &gname_uname)) - { - gname_uname = sWirelessGnameUnamePair_Dummy; - } + if (!ArePlayersDifferent(&list[1]->players[j].rfu, &rfu)) + rfu = sUnionRoomPlayer_DummyRfu; } - ptr[1]->arr[i].gname_uname = gname_uname; - ptr[1]->arr[i].active = AreGnameUnameDifferent(&ptr[1]->arr[i].gname_uname, &sWirelessGnameUnamePair_Dummy); + list[1]->players[i].rfu = rfu; + list[1]->players[i].active = ArePlayersDifferent(&list[1]->players[i].rfu, &sUnionRoomPlayer_DummyRfu); } else { - ptr[0]->arr[i].gname_uname = gname_uname; - ptr[0]->arr[i].active = AreGnameUnameDifferent(&ptr[0]->arr[i].gname_uname, &sWirelessGnameUnamePair_Dummy); + list[0]->players[i].rfu = rfu; + list[0]->players[i].active = ArePlayersDifferent(&list[0]->players[i].rfu, &sUnionRoomPlayer_DummyRfu); } } } -static u8 CreateTask_SearchForChildOrParent(struct UnkStruct_Main4 * main4_parent, struct UnkStruct_Main4 * main4_child, u32 linkGroup) +static u8 CreateTask_SearchForChildOrParent(struct RfuIncomingPlayerList * parentList, struct RfuIncomingPlayerList * childList, u32 linkGroup) { u8 taskId = CreateTask(Task_SearchForChildOrParent, 0); - struct UnkStruct_Main4 ** data = (void *)gTasks[taskId].data; - data[0] = main4_parent; - data[1] = main4_child; + struct RfuIncomingPlayerList ** data = (void *)gTasks[taskId].data; + data[0] = parentList; + data[1] = childList; gTasks[taskId].data[4] = linkGroup; return taskId; } -static void Task_ListenForPartnersWithCompatibleSerialNos(u8 taskId) +static void Task_ListenForCompatiblePartners(u8 taskId) { s32 i, j; - struct UnkStruct_Main4 **ptr = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; for (i = 0; i < RFU_CHILD_MAX; i++) { - LinkRfu_GetNameIfCompatible(&ptr[0]->arr[i].gname_uname.gname, ptr[0]->arr[i].gname_uname.playerName, i); - if (!IsPartnerActivityAcceptable(ptr[0]->arr[i].gname_uname.gname.activity, gTasks[taskId].data[2])) + Rfu_GetCompatiblePlayerData(&list[0]->players[i].rfu.data, list[0]->players[i].rfu.name, i); + if (!IsPartnerActivityAcceptable(list[0]->players[i].rfu.data.activity, gTasks[taskId].data[2])) { - ptr[0]->arr[i].gname_uname = sWirelessGnameUnamePair_Dummy; + list[0]->players[i].rfu = sUnionRoomPlayer_DummyRfu; } for (j = 0; j < i; j++) { - if (!AreGnameUnameDifferent(&ptr[0]->arr[j].gname_uname, &ptr[0]->arr[i].gname_uname)) - { - ptr[0]->arr[i].gname_uname = sWirelessGnameUnamePair_Dummy; - } + if (!ArePlayersDifferent(&list[0]->players[j].rfu, &list[0]->players[i].rfu)) + list[0]->players[i].rfu = sUnionRoomPlayer_DummyRfu; } - ptr[0]->arr[i].active = AreGnameUnameDifferent(&ptr[0]->arr[i].gname_uname, &sWirelessGnameUnamePair_Dummy); + list[0]->players[i].active = ArePlayersDifferent(&list[0]->players[i].rfu, &sUnionRoomPlayer_DummyRfu); } } -static bool32 HasWonderCardOrNewsByLinkGroup(struct GFtgtGname *gname, s16 linkGroup) +static bool32 HasWonderCardOrNewsByLinkGroup(struct RfuGameData *data, s16 linkGroup) { if (linkGroup == LINK_GROUP_WONDER_CARD) { - if (!gname->unk_00.hasCard) + if (!data->compatibility.hasCard) return FALSE; else return TRUE; } else if (linkGroup == LINK_GROUP_WONDER_NEWS) { - if (!gname->unk_00.hasNews) + if (!data->compatibility.hasNews) return FALSE; else return TRUE; @@ -3518,35 +3544,34 @@ static bool32 HasWonderCardOrNewsByLinkGroup(struct GFtgtGname *gname, s16 linkG } } -static void Task_ListenForPartnersWithSerial7F7D(u8 taskId) +static void Task_ListenForWonderDistributor(u8 taskId) { s32 i; - struct UnkStruct_Main4 **ptr = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (LinkRfu_GetNameIfSerial7F7D(&ptr[0]->arr[i].gname_uname.gname, ptr[0]->arr[i].gname_uname.playerName, i)) - { - HasWonderCardOrNewsByLinkGroup(&ptr[0]->arr[i].gname_uname.gname, gTasks[taskId].data[2]); - } - ptr[0]->arr[i].active = AreGnameUnameDifferent(&ptr[0]->arr[i].gname_uname, &sWirelessGnameUnamePair_Dummy); + if (Rfu_GetWonderDistributorPlayerData(&list[0]->players[i].rfu.data, list[0]->players[i].rfu.name, i)) + HasWonderCardOrNewsByLinkGroup(&list[0]->players[i].rfu.data, gTasks[taskId].data[2]); + + list[0]->players[i].active = ArePlayersDifferent(&list[0]->players[i].rfu, &sUnionRoomPlayer_DummyRfu); } } -static u8 CreateTask_ListenForPartnersWithCompatibleSerialNos(struct UnkStruct_Main4 * main4, u32 linkGroup) +static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList * list, u32 linkGroup) { - u8 taskId = CreateTask(Task_ListenForPartnersWithCompatibleSerialNos, 0); - struct UnkStruct_Main4 **ptr = (void*) gTasks[taskId].data; - ptr[0] = main4; + u8 taskId = CreateTask(Task_ListenForCompatiblePartners, 0); + struct RfuIncomingPlayerList **oldList = (void*) gTasks[taskId].data; + oldList[0] = list; gTasks[taskId].data[2] = linkGroup; return taskId; } -static u8 CreateTask_ListenForPartnersWithSerial7F7D(struct UnkStruct_Main4 * main4, u32 linkGroup) +static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList * list, u32 linkGroup) { - u8 taskId = CreateTask(Task_ListenForPartnersWithSerial7F7D, 0); - struct UnkStruct_Main4 **ptr = (void*) gTasks[taskId].data; - ptr[0] = main4; + u8 taskId = CreateTask(Task_ListenForWonderDistributor, 0); + struct RfuIncomingPlayerList **oldList = (void*) gTasks[taskId].data; + oldList[0] = list; gTasks[taskId].data[2] = linkGroup; return taskId; } @@ -3560,7 +3585,7 @@ static bool32 UR_PrintFieldMessage(const u8 *src) return FALSE; } -static bool32 UR_RunTextPrinters_CheckPrinter0Active(void) +static bool32 UR_RunTextPrinters(void) { if (!RunTextPrintersAndIsPrinter0Active()) return TRUE; @@ -3598,9 +3623,7 @@ static s8 UnionRoomHandleYesNo(u8 *state, bool32 noDraw) { case 0: if (noDraw) - { return -3; - } DisplayYesNoMenuDefaultYes(); (*state)++; break; @@ -3612,14 +3635,14 @@ static s8 UnionRoomHandleYesNo(u8 *state, bool32 noDraw) return -3; } input = Menu_ProcessInputNoWrapClearOnChoose(); - if (input == -1 || input == 0 || input == 1) + if (input == MENU_B_PRESSED || input == 0 || input == 1) { *state = 0; return input; } break; } - return -2; + return MENU_NOTHING_CHOSEN; } static u8 CreateTradeBoardWindow(const struct WindowTemplate * template) @@ -3627,7 +3650,7 @@ static u8 CreateTradeBoardWindow(const struct WindowTemplate * template) u8 windowId = AddWindow(template); DrawStdWindowFrame(windowId, FALSE); FillWindowPixelBuffer(windowId, PIXEL_FILL(15)); - UR_AddTextPrinterParameterized(windowId, 1, sText_NameWantedOfferLv, 8, 1, 6); + PrintUnionRoomText(windowId, 1, sText_NameWantedOfferLv, 8, 1, UR_COLOR_TRADE_BOARD_OTHER); CopyWindowToVram(windowId, 2); PutWindowTilemap(windowId); return windowId; @@ -3649,13 +3672,11 @@ static s32 ListMenuHandler_AllItemsAvailable(u8 *state, u8 *windowId, u8 *listMe winTemplateCopy = *winTemplate; maxWidth = Intl_GetListMenuWidth(menuTemplate); if (winTemplateCopy.width > maxWidth) - { winTemplateCopy.width = maxWidth; - } + if (winTemplateCopy.tilemapLeft + winTemplateCopy.width > 29) - { winTemplateCopy.tilemapLeft = max(29 - winTemplateCopy.width, 0); - } + *windowId = AddWindow(&winTemplateCopy); DrawStdWindowFrame(*windowId, FALSE); gMultiuseListMenuTemplate = *menuTemplate; @@ -3688,7 +3709,10 @@ static s32 ListMenuHandler_AllItemsAvailable(u8 *state, u8 *windowId, u8 *listMe return -1; } -static s32 TradeBoardMenuHandler(u8 *state, u8 *windowId, u8 *listMenuId, u8 *tradeBoardWindowId, const struct WindowTemplate *winTemplate, const struct ListMenuTemplate *menuTemplate, struct UnkStruct_Main0 *traders) +static s32 TradeBoardMenuHandler(u8 *state, u8 *mainWindowId, u8 *listMenuId, u8 *headerWindowId, + const struct WindowTemplate *winTemplate, + const struct ListMenuTemplate *menuTemplate, + struct RfuPlayerList *list) { s32 input; s32 idx; @@ -3696,16 +3720,16 @@ static s32 TradeBoardMenuHandler(u8 *state, u8 *windowId, u8 *listMenuId, u8 *tr switch (*state) { case 0: - *tradeBoardWindowId = CreateTradeBoardWindow(&sWindowTemplate_TradingBoard); - *windowId = AddWindow(winTemplate); - DrawStdWindowFrame(*windowId, FALSE); + *headerWindowId = CreateTradeBoardWindow(&sWindowTemplate_TradingBoardHeader); + *mainWindowId = AddWindow(winTemplate); + DrawStdWindowFrame(*mainWindowId, FALSE); gMultiuseListMenuTemplate = *menuTemplate; - gMultiuseListMenuTemplate.windowId = *windowId; + gMultiuseListMenuTemplate.windowId = *mainWindowId; *listMenuId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 1); (*state)++; break; case 1: - CopyWindowToVram(*windowId, TRUE); + CopyWindowToVram(*mainWindowId, TRUE); (*state)++; break; case 2: @@ -3715,19 +3739,19 @@ static s32 TradeBoardMenuHandler(u8 *state, u8 *windowId, u8 *listMenuId, u8 *tr if (input == 8 || JOY_NEW(B_BUTTON)) { DestroyListMenuTask(*listMenuId, NULL, NULL); - RemoveWindow(*windowId); - DeleteTradeBoardWindow(*tradeBoardWindowId); + RemoveWindow(*mainWindowId); + DeleteTradeBoardWindow(*headerWindowId); *state = 0; return -2; } else { - idx = GetIndexOfNthTradeBoardOffer(traders->arr, input); + idx = GetIndexOfNthTradeBoardOffer(list->players, input); if (idx >= 0) { DestroyListMenuTask(*listMenuId, NULL, NULL); - RemoveWindow(*windowId); - DeleteTradeBoardWindow(*tradeBoardWindowId); + RemoveWindow(*mainWindowId); + DeleteTradeBoardWindow(*headerWindowId); *state = 0; return idx; } @@ -3754,7 +3778,7 @@ static void JoinGroup_EnableScriptContexts(void) EnableBothScriptContexts(); } -static void UR_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 colorIdx) +static void PrintUnionRoomText(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 colorIdx) { struct TextPrinterTemplate printerTemplate; @@ -3770,49 +3794,49 @@ static void UR_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str gTextFlags.useAlternateDownArrow = FALSE; switch (colorIdx) { - case UR_COLOR_DKE_WHT_LTE: + case UR_COLOR_DEFAULT: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_DARK_GRAY; printerTemplate.bgColor = TEXT_COLOR_WHITE; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; - case UR_COLOR_RED_WHT_LTR: + case UR_COLOR_RED: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_RED; printerTemplate.bgColor = TEXT_COLOR_WHITE; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_RED; break; - case UR_COLOR_GRN_WHT_LTG: + case UR_COLOR_GREEN: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_GREEN; printerTemplate.bgColor = TEXT_COLOR_WHITE; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GREEN; break; - case UR_COLOR_WHT_WHT_LTE: + case UR_COLOR_WHITE: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_WHITE; printerTemplate.bgColor = TEXT_COLOR_WHITE; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; - case UR_COLOR_WHT_DKE_LTE: + case UR_COLOR_CANCEL: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_WHITE; printerTemplate.bgColor = TEXT_COLOR_DARK_GRAY; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_GRAY; break; - case UR_COLOR_GRN_DN6_LTB: + case UR_COLOR_TRADE_BOARD_SELF: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_COLOR_LIGHT_GREEN; printerTemplate.bgColor = TEXT_DYNAMIC_COLOR_6; printerTemplate.shadowColor = TEXT_COLOR_LIGHT_BLUE; break; - case UR_COLOR_DN5_DN6_LTB: + case UR_COLOR_TRADE_BOARD_OTHER: printerTemplate.letterSpacing = 0; printerTemplate.lineSpacing = 0; printerTemplate.fgColor = TEXT_DYNAMIC_COLOR_5; @@ -3821,114 +3845,111 @@ static void UR_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str break; } - AddTextPrinter(&printerTemplate, 0xFF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); } -static void ClearUnkStruct_x20Array(struct UnkStruct_x20 *arr, u8 count) +static void ClearRfuPlayerList(struct RfuPlayer *players, u8 count) { s32 i; for (i = 0; i < count; i++) { - arr[i].gname_uname = sWirelessGnameUnamePair_Dummy; - arr[i].timeoutCounter = 255; - arr[i].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; - arr[i].useRedText = FALSE; - arr[i].field_1B = 0; + players[i].rfu = sUnionRoomPlayer_DummyRfu; + players[i].timeoutCounter = 255; + players[i].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; + players[i].useRedText = FALSE; + players[i].field_1B = 0; } } -static void ClearUnkStruct_x1CArray(struct UnkStruct_Main4 *main4, u8 count) +static void ClearIncomingPlayerList(struct RfuIncomingPlayerList *list, u8 count) { s32 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - main4->arr[i].gname_uname = sWirelessGnameUnamePair_Dummy; - main4->arr[i].active = FALSE; + list->players[i].rfu = sUnionRoomPlayer_DummyRfu; + list->players[i].active = FALSE; } } -static bool8 AreGnameUnameDifferent(struct WirelessGnameUnamePair* pair1, const struct WirelessGnameUnamePair* pair2) +// Checks player name and trainer id, returns TRUE if they are not the same +static bool8 ArePlayersDifferent(struct RfuPlayerData* player1, const struct RfuPlayerData* player2) { s32 i; for (i = 0; i < 2; i++) { - if (pair1->gname.unk_00.playerTrainerId[i] != pair2->gname.unk_00.playerTrainerId[i]) - { + if (player1->data.compatibility.playerTrainerId[i] != player2->data.compatibility.playerTrainerId[i]) return TRUE; - } } for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) { - if (pair1->playerName[i] != pair2->playerName[i]) - { + if (player1->name[i] != player2->name[i]) return TRUE; - } } return FALSE; } -static bool32 AreUnionRoomPlayerGnamesDifferent(struct WirelessGnameUnamePair *pair1, struct WirelessGnameUnamePair *pair2) +static bool32 ArePlayerDataDifferent(struct RfuPlayerData *player1, struct RfuPlayerData *player2) { s32 i; - if (pair1->gname.activity != pair2->gname.activity) + if (player1->data.activity != player2->data.activity) return TRUE; - if (pair1->gname.started != pair2->gname.started) + if (player1->data.startedActivity != player2->data.startedActivity) return TRUE; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (pair1->gname.child_sprite_gender[i] != pair2->gname.child_sprite_gender[i]) + if (player1->data.partnerInfo[i] != player2->data.partnerInfo[i]) return TRUE; } - if (pair1->gname.species != pair2->gname.species) + if (player1->data.tradeSpecies != player2->data.tradeSpecies) return TRUE; - if (pair1->gname.type != pair2->gname.type) + if (player1->data.tradeType != player2->data.tradeType) return TRUE; return FALSE; } -static u32 Findx20Inx1CArray(struct UnkStruct_x20 *arg0, struct UnkStruct_x1C *arg1) +static u32 GetNewIncomingPlayerId(struct RfuPlayer *player, struct RfuIncomingPlayer *incomingPlayer) { - u8 result = 0xFF; + u8 result = 0xFF; // None s32 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (arg1[i].active && !AreGnameUnameDifferent(&arg0->gname_uname, &arg1[i].gname_uname)) + if (incomingPlayer[i].active && !ArePlayersDifferent(&player->rfu, &incomingPlayer[i].rfu)) { result = i; - arg1[i].active = FALSE; + incomingPlayer[i].active = FALSE; } } return result; } -static u8 Appendx1Ctox20(struct UnkStruct_x20 *arg0, struct UnkStruct_x1C *arg1, u8 max) +static u8 TryAddIncomingPlayerToList(struct RfuPlayer *players, struct RfuIncomingPlayer *incomingPlayer, u8 max) { s32 i; - if (arg1->active) + if (incomingPlayer->active) { for (i = 0; i < max; i++) { - if (arg0[i].groupScheduledAnim == UNION_ROOM_SPAWN_NONE) + if (players[i].groupScheduledAnim == UNION_ROOM_SPAWN_NONE) { - arg0[i].gname_uname = arg1->gname_uname; - arg0[i].timeoutCounter = 0; - arg0[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - arg0[i].field_1B = 64; - arg1->active = FALSE; + players[i].rfu = incomingPlayer->rfu; + players[i].timeoutCounter = 0; + players[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; + players[i].field_1B = 64; + incomingPlayer->active = FALSE; return i; } } @@ -3937,39 +3958,39 @@ static u8 Appendx1Ctox20(struct UnkStruct_x20 *arg0, struct UnkStruct_x1C *arg1, return 0xFF; } -static void PrintUnionRoomGroupOnWindow(u8 windowId, u8 x, u8 y, struct UnkStruct_x20 *group, u8 colorIdx, u8 id) +static void PrintGroupMemberOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlayer *player, u8 colorIdx, u8 id) { u8 activity; u8 trainerId[6]; ConvertIntToDecimalStringN(gStringVar4, id + 1, STR_CONV_MODE_LEADING_ZEROS, 2); StringAppend(gStringVar4, sText_Colon); - UR_AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, 0); + PrintUnionRoomText(windowId, 1, gStringVar4, x, y, UR_COLOR_DEFAULT); x += 18; - activity = group->gname_uname.gname.activity; - if (group->groupScheduledAnim == UNION_ROOM_SPAWN_IN && !(activity & IN_UNION_ROOM)) + activity = player->rfu.data.activity; + if (player->groupScheduledAnim == UNION_ROOM_SPAWN_IN && !(activity & IN_UNION_ROOM)) { - IntlConvPartnerUname7(gStringVar4, group); - UR_AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, colorIdx); - ConvertIntToDecimalStringN(trainerId, group->gname_uname.gname.unk_00.playerTrainerId[0] | (group->gname_uname.gname.unk_00.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); + CopyAndTranslatePlayerName(gStringVar4, player); + PrintUnionRoomText(windowId, 1, gStringVar4, x, y, colorIdx); + ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - UR_AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x88), y, colorIdx); + PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x88), y, colorIdx); } } -static void PrintGroupMemberCandidateOnWindowWithColor(u8 windowId, u8 x, u8 y, struct UnkStruct_x20 *group, u8 colorIdx, u8 id) +static void PrintGroupCandidateOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlayer *player, u8 colorIdx, u8 id) { u8 trainerId[6]; - if (group->groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (player->groupScheduledAnim == UNION_ROOM_SPAWN_IN) { - IntlConvPartnerUname7(gStringVar4, group); - UR_AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, colorIdx); - ConvertIntToDecimalStringN(trainerId, group->gname_uname.gname.unk_00.playerTrainerId[0] | (group->gname_uname.gname.unk_00.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); + CopyAndTranslatePlayerName(gStringVar4, player); + PrintUnionRoomText(windowId, 1, gStringVar4, x, y, colorIdx); + ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - UR_AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x68), y, colorIdx); + PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x68), y, colorIdx); } } @@ -4006,24 +4027,24 @@ static u32 GetResponseIdx_InviteToURoomActivity(s32 activity) } } -static u32 ConvPartnerUnameAndGetWhetherMetAlready(struct UnkStruct_x20 *arg0) +static u32 ConvPartnerUnameAndGetWhetherMetAlready(struct RfuPlayer *player) { u8 name[30]; - IntlConvPartnerUname7(name, arg0); - return PlayerHasMetTrainerBefore(ReadAsU16(arg0->gname_uname.gname.unk_00.playerTrainerId), name); + CopyAndTranslatePlayerName(name, player); + return PlayerHasMetTrainerBefore(ReadAsU16(player->rfu.data.compatibility.playerTrainerId), name); } -static s32 UnionRoomGetPlayerInteractionResponse(struct UnkStruct_Main0 *main0, bool8 overrideGender, u8 playerIdx, u32 playerGender) +static s32 UnionRoomGetPlayerInteractionResponse(struct RfuPlayerList *list, bool8 overrideGender, u8 playerIdx, u32 playerGender) { bool32 metBefore; - struct UnkStruct_x20 * r5 = &main0->arr[playerIdx]; + struct RfuPlayer * player = &list->players[playerIdx]; - if (!r5->gname_uname.gname.started && !overrideGender) + if (!player->rfu.data.startedActivity && !overrideGender) { - IntlConvPartnerUname7(gStringVar1, r5); - metBefore = PlayerHasMetTrainerBefore(ReadAsU16(r5->gname_uname.gname.unk_00.playerTrainerId), gStringVar1); - if (r5->gname_uname.gname.activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) + CopyAndTranslatePlayerName(gStringVar1, player); + metBefore = PlayerHasMetTrainerBefore(ReadAsU16(player->rfu.data.compatibility.playerTrainerId), gStringVar1); + if (player->rfu.data.activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) { StringExpandPlaceholders(gStringVar4, sJoinChatTexts[metBefore][playerGender]); return 2; @@ -4036,12 +4057,12 @@ static s32 UnionRoomGetPlayerInteractionResponse(struct UnkStruct_Main0 *main0, } else { - IntlConvPartnerUname7(gStringVar1, r5); + CopyAndTranslatePlayerName(gStringVar1, player); if (overrideGender) { - playerGender = (r5->gname_uname.gname.unk_00.playerTrainerId[overrideGender + 1] >> 3) & 1; + playerGender = (player->rfu.data.compatibility.playerTrainerId[overrideGender + 1] >> 3) & 1; } - switch (r5->gname_uname.gname.activity & 0x3F) + switch (player->rfu.data.activity & 0x3F) { case ACTIVITY_BATTLE_SINGLE: StringExpandPlaceholders(gStringVar4, sBattleReactionTexts[playerGender][Random() % ARRAY_COUNT(sBattleReactionTexts[0])]); @@ -4067,84 +4088,78 @@ void ItemPrintFunc_EmptyList(u8 windowId, u32 itemId, u8 y) { } -static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct GFtgtGname * gname, const u8 * uname, u8 colorIdx) +static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData * data, const u8 * playerName, u8 colorIdx) { u8 levelStr[4]; - u16 species = gname->species; - u8 type = gname->type; - u8 level = gname->level; + u16 species = data->tradeSpecies; + u8 type = data->tradeType; + u8 level = data->tradeLevel; - UR_AddTextPrinterParameterized(windowId, 1, uname, 8, y, colorIdx); + PrintUnionRoomText(windowId, 1, playerName, 8, y, colorIdx); if (species == SPECIES_EGG) { - UR_AddTextPrinterParameterized(windowId, 1, sText_EggTrade, 68, y, colorIdx); + PrintUnionRoomText(windowId, 1, sText_EggTrade, 68, y, colorIdx); } else { BlitMenuInfoIcon(windowId, type + 1, 68, y); - UR_AddTextPrinterParameterized(windowId, 1, gSpeciesNames[species], 118, y, colorIdx); + PrintUnionRoomText(windowId, 1, gSpeciesNames[species], 118, y, colorIdx); ConvertIntToDecimalStringN(levelStr, level, STR_CONV_MODE_RIGHT_ALIGN, 3); - UR_AddTextPrinterParameterized(windowId, 1, levelStr, 198, y, colorIdx); + PrintUnionRoomText(windowId, 1, levelStr, 198, y, colorIdx); } } static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 itemId, u8 y) { - struct WirelessLink_Leader *data = sWirelessLinkMain.leader; - struct GFtgtGname *rfu; + struct WirelessLink_Leader *leader = sWirelessLinkMain.leader; + struct RfuGameData *gameData; s32 i, j; u8 playerName[11]; - if (itemId == -3 && y == sTradeBoardListMenuTemplate.upText_Y) + if (itemId == LIST_HEADER && y == sTradeBoardListMenuTemplate.upText_Y) { - rfu = GetHostRFUtgtGname(); - if (rfu->species != SPECIES_NONE) - { - TradeBoardPrintItemInfo(windowId, y, rfu, gSaveBlock2Ptr->playerName, 5); - } + gameData = GetHostRfuGameData(); + if (gameData->tradeSpecies != SPECIES_NONE) + TradeBoardPrintItemInfo(windowId, y, gameData, gSaveBlock2Ptr->playerName, UR_COLOR_TRADE_BOARD_SELF); } else { j = 0; - for (i = 0; i < (int)ARRAY_COUNT(data->field_0->arr); i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { - if (data->field_0->arr[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN && data->field_0->arr[i].gname_uname.gname.species != SPECIES_NONE) - { + if (leader->playerList->players[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN && leader->playerList->players[i].rfu.data.tradeSpecies != SPECIES_NONE) j++; - } + if (j == itemId + 1) { - IntlConvPartnerUname7(playerName, &data->field_0->arr[i]); - TradeBoardPrintItemInfo(windowId, y, &data->field_0->arr[i].gname_uname.gname, playerName, 6); + CopyAndTranslatePlayerName(playerName, &leader->playerList->players[i]); + TradeBoardPrintItemInfo(windowId, y, &leader->playerList->players[i].rfu.data, playerName, UR_COLOR_TRADE_BOARD_OTHER); break; } } } } -static s32 GetIndexOfNthTradeBoardOffer(struct UnkStruct_x20 * arg, s32 n) +static s32 GetIndexOfNthTradeBoardOffer(struct RfuPlayer * players, s32 n) { s32 i; s32 j = 0; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { - if (arg[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN && arg[i].gname_uname.gname.species != SPECIES_NONE) - { + if (players[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN && players[i].rfu.data.tradeSpecies != SPECIES_NONE) j++; - } + if (j == n + 1) - { return i; - } } return -1; } -static s32 GetUnionRoomPlayerGender(s32 playerIdx, struct UnkStruct_Main0 *main0) +static s32 GetUnionRoomPlayerGender(s32 playerIdx, struct RfuPlayerList *list) { - return main0->arr[playerIdx].gname_uname.gname.playerGender; + return list->players[playerIdx].rfu.data.playerGender; } static s32 IsRequestedTypeOrEggInPlayerParty(u32 type, u32 species) @@ -4157,9 +4172,7 @@ static s32 IsRequestedTypeOrEggInPlayerParty(u32 type, u32 species) { species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2); if (species == SPECIES_EGG) - { return UR_TRADE_MATCH; - } } return UR_TRADE_NOEGG; } @@ -4169,9 +4182,7 @@ static s32 IsRequestedTypeOrEggInPlayerParty(u32 type, u32 species) { species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2); if (gBaseStats[species].type1 == type || gBaseStats[species].type2 == type) - { return UR_TRADE_MATCH; - } } return UR_TRADE_NOTYPE; } @@ -4236,7 +4247,7 @@ static s32 GetChatLeaderActionRequestMessage(u8 *dst, u32 gender, u16 *activityD StringCopy(uroom->activityRequestStrbufs[1], gSpeciesNames[sUnionRoomTrade.playerSpecies]); for (i = 0; i < RFU_CHILD_MAX; i++) { - if (gRfuLinkStatus->partner[i].serialNo == RFU_SERIAL_A) + if (gRfuLinkStatus->partner[i].serialNo == RFU_SERIAL_GAME) { ConvertIntToDecimalStringN(uroom->activityRequestStrbufs[2], activityData[2], STR_CONV_MODE_LEFT_ALIGN, 3); StringCopy(uroom->activityRequestStrbufs[3], gSpeciesNames[activityData[1]]); @@ -4251,9 +4262,7 @@ static s32 GetChatLeaderActionRequestMessage(u8 *dst, u32 gender, u16 *activityD else { for (i = 0; i < RFU_CHILD_MAX; i++) - { DynamicPlaceholderTextUtil_SetPlaceholderPtr(i, uroom->activityRequestStrbufs[i]); - } DynamicPlaceholderTextUtil_ExpandPlaceholders(dst, sText_OfferToTradeMon); } result = 1; @@ -4291,9 +4300,9 @@ 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) - ? TRUE : FALSE; + return gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(UNION_ROOM) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(UNION_ROOM) + ? TRUE : FALSE; } static bool32 HasAtLeastTwoMonsOfLevel30OrLower(void) @@ -4304,10 +4313,8 @@ static bool32 HasAtLeastTwoMonsOfLevel30OrLower(void) for (i = 0; i < gPlayerPartyCount; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_LEVEL) <= 30 - && GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) != SPECIES_EGG) - { + && GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) != SPECIES_EGG) count++; - } } if (count > 1) @@ -4316,16 +4323,16 @@ static bool32 HasAtLeastTwoMonsOfLevel30OrLower(void) return FALSE; } -static void ResetUnionRoomTrade(struct UnionRoomTrade *uroomTrade) +static void ResetUnionRoomTrade(struct UnionRoomTrade *trade) { - uroomTrade->state = URTRADE_STATE_NONE; - uroomTrade->type = 0; - uroomTrade->playerPersonality = 0; - uroomTrade->playerSpecies = 0; - uroomTrade->playerLevel = 0; - uroomTrade->species = 0; - uroomTrade->level = 0; - uroomTrade->personality = 0; + trade->state = URTRADE_STATE_NONE; + trade->type = 0; + trade->playerPersonality = 0; + trade->playerSpecies = SPECIES_NONE; + trade->playerLevel = 0; + trade->species = SPECIES_NONE; + trade->level = 0; + trade->personality = 0; } void Script_ResetUnionRoomTrade(void) @@ -4360,31 +4367,26 @@ static u32 GetPartyPositionOfRegisteredMon(struct UnionRoomTrade *trade, u8 mult u16 cur_species; s32 i; - // player if (multiplayerId == 0) { species = trade->playerSpecies; personality = trade->playerPersonality; } - // partner else { species = trade->species; personality = trade->personality; } + // Find party position by comparing to personality and species for (i = 0; i < gPlayerPartyCount; i++) { cur_personality = GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY); if (cur_personality != personality) - { continue; - } cur_species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2); if (cur_species != species) - { continue; - } response = i; break; } @@ -4405,23 +4407,23 @@ static void HandleCancelActivity(bool32 setData) } } -static void UR_EnableScriptContext2AndFreezeObjectEvents(void) +static void StartScriptInteraction(void) { ScriptContext2_Enable(); FreezeObjects_WaitForPlayer(); } -static u8 GetActivePartnerSpriteGenderParam(struct WirelessLink_URoom *data) +static u8 GetActivePartnersInfo(struct WirelessLink_URoom *data) { - u8 retVal = 0x80; + u8 retVal = PINFO_ACTIVE_FLAG; u8 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - if (data->field_C->arr[i].active) + if (data->incomingParentList->players[i].active) { - retVal |= data->field_C->arr[i].gname_uname.gname.playerGender << 3; - retVal |= data->field_C->arr[i].gname_uname.gname.unk_00.playerTrainerId[0] & 7; + retVal |= data->incomingParentList->players[i].rfu.data.playerGender << PINFO_GENDER_SHIFT; + retVal |= data->incomingParentList->players[i].rfu.data.compatibility.playerTrainerId[0] & PINFO_TID_MASK; break; } } @@ -4458,17 +4460,13 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct WirelessLink_URoom *d n = trainerCard->linkBattleWins; if (n > 9999) - { n = 9999; - } ConvertIntToDecimalStringN(data->trainerCardStrBuffer[0], n, STR_CONV_MODE_LEFT_ALIGN, 4); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, data->trainerCardStrBuffer[0]); n = trainerCard->linkBattleLosses; if (n > 9999) - { n = 9999; - } ConvertIntToDecimalStringN(data->trainerCardStrBuffer[1], n, STR_CONV_MODE_LEFT_ALIGN, 4); DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, data->trainerCardStrBuffer[1]); @@ -4496,8 +4494,8 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct WirelessLink_URoom *d } } -static void IntlConvPartnerUname7(u8 *dest, struct UnkStruct_x20 *arg1) +static void CopyAndTranslatePlayerName(u8 *dest, struct RfuPlayer *player) { - StringCopy7(dest, arg1->gname_uname.playerName); - ConvertInternationalString(dest, arg1->gname_uname.gname.unk_00.language); + StringCopy7(dest, player->rfu.name); + ConvertInternationalString(dest, player->rfu.data.compatibility.language); } diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 671290e21e1c..9a0f1a88392e 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -9,8 +9,12 @@ #include "constants/event_objects.h" #include "constants/event_object_movement.h" -#define UR_SPRITE_START_ID (MAX_SPRITES - MAX_UNION_ROOM_PLAYERS) -#define UR_PLAYER_SPRITE_ID(playerIdx, facingDir)(5 * playerIdx + facingDir) +#define UR_SPRITE_START_ID (MAX_SPRITES - MAX_UNION_ROOM_LEADERS) + +// 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) static EWRAM_DATA struct UnionRoomObject * sUnionObjWork = NULL; static EWRAM_DATA u32 sUnionObjRefreshTimer = 0; @@ -19,7 +23,8 @@ static u8 CreateTask_AnimateUnionRoomPlayers(void); static u32 IsUnionRoomPlayerInvisible(u32, u32); static void SetUnionRoomObjectFacingDirection(s32, s32, u8); -static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_PLAYERS + 2] = { +// + 2 is just to match, those elements are empty and never read +static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_LEADERS + 2] = { [MALE] = { OBJ_EVENT_GFX_MAN_3, OBJ_EVENT_GFX_BLACK_BELT, @@ -42,7 +47,7 @@ static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_PLAYERS + 2] = } }; -static const s16 sUnionRoomPlayerCoords[MAX_UNION_ROOM_PLAYERS][2] = { +static const s16 sUnionRoomPlayerCoords[MAX_UNION_ROOM_LEADERS][2] = { { 4, 6}, {13, 8}, {10, 6}, @@ -53,12 +58,16 @@ static const s16 sUnionRoomPlayerCoords[MAX_UNION_ROOM_PLAYERS][2] = { { 7, 8} }; -static const s8 sFacingDirectionOffsets[][2] = { - [DIR_NONE] = { 0, 0}, - [DIR_SOUTH] = { 1, 0}, - [DIR_NORTH] = { 0, -1}, - [DIR_WEST] = {-1, 0}, - [DIR_EAST] = { 0, 1} +// If there's a group of players interacting in the Union Room, the group +// leader will be at one of the positions above and each member in the group +// will be at one of the offsets from that position below. The leader will +// be at the first offset (0,0), as they're at the center. +static const s8 sUnionRoomGroupOffsets[MAX_RFU_PLAYERS][2] = { + { 0, 0}, // Center + { 1, 0}, // Left + { 0, -1}, // Top + {-1, 0}, // Right + { 0, 1} // Bottom }; static const u8 sOppositeFacingDirection[] = { @@ -69,12 +78,14 @@ static const u8 sOppositeFacingDirection[] = { [DIR_EAST] = DIR_WEST }; -static const u8 sNextFacingDirection[] = { - [DIR_NONE] = DIR_SOUTH, - [DIR_SOUTH] = DIR_WEST, - [DIR_NORTH] = DIR_SOUTH, - [DIR_WEST] = DIR_EAST, - [DIR_EAST] = DIR_NORTH +// Compare to sUnionRoomGroupOffsets, the direction each group member +// needs to be facing in order to face the group leader in the center. +static const u8 sMemberFacingDirections[MAX_RFU_PLAYERS] = { + DIR_SOUTH, // Leader, but never read + DIR_WEST, + DIR_SOUTH, + DIR_EAST, + DIR_NORTH }; static const u8 sUnionRoomLocalIds[] = { @@ -118,21 +129,22 @@ static bool32 IsPlayerStandingStill(void) return FALSE; } +// Gender and trainer id are used to determine which sprite a player appears as static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id) { - return sUnionRoomObjGfxIds[gender][id % MAX_UNION_ROOM_PLAYERS]; + return sUnionRoomObjGfxIds[gender][id % MAX_UNION_ROOM_LEADERS]; } -static void GetUnionRoomPlayerFacingCoords(u32 playerIdx, u32 direction, s32 * x, s32 * y) +static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 * x, s32 * y) { - *x = sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + 7; - *y = sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + 7; + *x = sUnionRoomPlayerCoords[leaderId][0] + sUnionRoomGroupOffsets[memberId][0] + 7; + *y = sUnionRoomPlayerCoords[leaderId][1] + sUnionRoomGroupOffsets[memberId][1] + 7; } -static bool32 IsUnionRoomPlayerFacingTileAt(u32 playerIdx, u32 direction, s32 x, s32 y) +static bool32 IsUnionRoomPlayerAt(u32 leaderId, u32 memberId, s32 x, s32 y) { - if ((sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + 7 == x) - && (sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + 7 == y)) + if ((sUnionRoomPlayerCoords[leaderId][0] + sUnionRoomGroupOffsets[memberId][0] + 7 == x) + && (sUnionRoomPlayerCoords[leaderId][1] + sUnionRoomGroupOffsets[memberId][1] + 7 == y)) return TRUE; else return FALSE; @@ -153,62 +165,50 @@ static void ShowUnionRoomPlayer(u32 player_idx) FlagClear(FLAG_HIDE_UNION_ROOM_PLAYER_1 + player_idx); } -static void SetUnionRoomPlayerGfx(u32 playerIdx, u32 gfxId) +static void SetUnionRoomPlayerGfx(u32 leaderId, u32 gfxId) { - VarSet(VAR_OBJ_GFX_ID_0 + playerIdx, gfxId); + VarSet(VAR_OBJ_GFX_ID_0 + leaderId, gfxId); } -static void CreateUnionRoomPlayerObjectEvent(u32 playerIdx) +static void CreateUnionRoomPlayerObjectEvent(u32 leaderId) { - TrySpawnObjectEvent(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); + TrySpawnObjectEvent(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); } -static void RemoveUnionRoomPlayerObjectEvent(u32 playerIdx) +static void RemoveUnionRoomPlayerObjectEvent(u32 leaderId) { - RemoveObjectEventByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); + RemoveObjectEventByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); } -static bool32 SetUnionRoomPlayerEnterExitMovement(u32 playerIdx, const u8 * movement) +static bool32 SetUnionRoomPlayerEnterExitMovement(u32 leaderId, const u8 * movement) { u8 objectId; struct ObjectEvent * object; - if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) - { + if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) return FALSE; - } object = &gObjectEvents[objectId]; if (ObjectEventIsMovementOverridden(object)) - { return FALSE; - } if (ObjectEventSetHeldMovement(object, *movement)) - { return FALSE; - } return TRUE; } -static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 playerIdx) +static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 leaderId) { u8 objectId; struct ObjectEvent * object; - if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) - { + if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) return TRUE; - } + object = &gObjectEvents[objectId]; if (!ObjectEventClearHeldMovementIfFinished(object)) - { return FALSE; - } + if (!ScriptContext2_IsEnabled()) - { UnfreezeObjectEvent(object); - } else - { FreezeObjectEvent(object); - } return TRUE; } @@ -218,7 +218,7 @@ u8 InitUnionRoomPlayerObjects(struct UnionRoomObject * players) sUnionObjRefreshTimer = 0; sUnionObjWork = players; - for (i = 0; i < MAX_UNION_ROOM_PLAYERS; i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { players[i].state = 0; players[i].gfxId = 0; @@ -228,22 +228,22 @@ u8 InitUnionRoomPlayerObjects(struct UnionRoomObject * players) return CreateTask_AnimateUnionRoomPlayers(); } -static bool32 AnimateUnionRoomPlayerDespawn(s8 * state, u32 playerIdx, struct UnionRoomObject * ptr) +static bool32 AnimateUnionRoomPlayerDespawn(s8 * state, u32 leaderId, struct UnionRoomObject * object) { switch (*state) { case 0: - if (SetUnionRoomPlayerEnterExitMovement(playerIdx, sMovement_UnionPlayerExit) == TRUE) + if (SetUnionRoomPlayerEnterExitMovement(leaderId, sMovement_UnionPlayerExit) == TRUE) { - HideUnionRoomPlayer(playerIdx); + HideUnionRoomPlayer(leaderId); (*state)++; } break; case 1: - if (TryReleaseUnionRoomPlayerObjectEvent(playerIdx)) + if (TryReleaseUnionRoomPlayerObjectEvent(leaderId)) { - RemoveUnionRoomPlayerObjectEvent(playerIdx); - HideUnionRoomPlayer(playerIdx); + RemoveUnionRoomPlayerObjectEvent(leaderId); + HideUnionRoomPlayer(leaderId); *state = 0; return TRUE; } @@ -252,7 +252,7 @@ static bool32 AnimateUnionRoomPlayerDespawn(s8 * state, u32 playerIdx, struct Un return FALSE; } -static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 playerIdx, struct UnionRoomObject * ptr) +static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 leaderId, struct UnionRoomObject * object) { s16 x, y; @@ -260,32 +260,24 @@ static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 playerIdx, struct Unio { case 0: if (!IsPlayerStandingStill()) - { break; - } PlayerGetDestCoords(&x, &y); - if (IsUnionRoomPlayerFacingTileAt(playerIdx, 0, x, y) == TRUE) - { + if (IsUnionRoomPlayerAt(leaderId, 0, x, y) == TRUE) break; - } player_get_pos_including_state_based_drift(&x, &y); - if (IsUnionRoomPlayerFacingTileAt(playerIdx, 0, x, y) == TRUE) - { + if (IsUnionRoomPlayerAt(leaderId, 0, x, y) == TRUE) break; - } - SetUnionRoomPlayerGfx(playerIdx, ptr->gfxId); - CreateUnionRoomPlayerObjectEvent(playerIdx); - ShowUnionRoomPlayer(playerIdx); + SetUnionRoomPlayerGfx(leaderId, object->gfxId); + CreateUnionRoomPlayerObjectEvent(leaderId); + ShowUnionRoomPlayer(leaderId); (*state)++; // fallthrough case 3: // incorrect? - if (SetUnionRoomPlayerEnterExitMovement(playerIdx, sMovement_UnionPlayerEnter) == TRUE) - { + if (SetUnionRoomPlayerEnterExitMovement(leaderId, sMovement_UnionPlayerEnter) == TRUE) (*state)++; - } break; case 2: - if (TryReleaseUnionRoomPlayerObjectEvent(playerIdx)) + if (TryReleaseUnionRoomPlayerObjectEvent(leaderId)) { *state = 0; return TRUE; @@ -295,38 +287,38 @@ static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 playerIdx, struct Unio return FALSE; } -static bool32 SpawnGroupLeader(u32 playerIdx, u32 gender, u32 id) +static bool32 SpawnGroupLeader(u32 leaderId, u32 gender, u32 id) { - struct UnionRoomObject * ptr = &sUnionObjWork[playerIdx]; - ptr->schedAnim = UNION_ROOM_SPAWN_IN; - ptr->gfxId = GetUnionRoomPlayerGraphicsId(gender, id); + struct UnionRoomObject * object = &sUnionObjWork[leaderId]; + object->schedAnim = UNION_ROOM_SPAWN_IN; + object->gfxId = GetUnionRoomPlayerGraphicsId(gender, id); - if (ptr->state == 0) + if (object->state == 0) return TRUE; else return FALSE; } -static bool32 DespawnGroupLeader(u32 playerIdx) +static bool32 DespawnGroupLeader(u32 leaderId) { - struct UnionRoomObject * ptr = &sUnionObjWork[playerIdx]; - ptr->schedAnim = UNION_ROOM_SPAWN_OUT; + struct UnionRoomObject * object = &sUnionObjWork[leaderId]; + object->schedAnim = UNION_ROOM_SPAWN_OUT; - if (ptr->state == 1) + if (object->state == 1) return TRUE; else return FALSE; } -static void AnimateUnionRoomPlayer(u32 playerIdx, struct UnionRoomObject * ptr) +static void AnimateUnionRoomPlayer(u32 leaderId, struct UnionRoomObject * object) { - switch (ptr->state) + switch (object->state) { case 0: - if (ptr->schedAnim == UNION_ROOM_SPAWN_IN) + if (object->schedAnim == UNION_ROOM_SPAWN_IN) { - ptr->state = 2; - ptr->animState = 0; + object->state = 2; + object->animState = 0; } else { @@ -334,23 +326,23 @@ static void AnimateUnionRoomPlayer(u32 playerIdx, struct UnionRoomObject * ptr) } // fallthrough case 2: - if (!IsUnionRoomPlayerInvisible(playerIdx, 0) && ptr->schedAnim == UNION_ROOM_SPAWN_OUT) + if (!IsUnionRoomPlayerInvisible(leaderId, 0) && object->schedAnim == UNION_ROOM_SPAWN_OUT) { - ptr->state = 0; - ptr->animState = 0; - RemoveUnionRoomPlayerObjectEvent(playerIdx); - HideUnionRoomPlayer(playerIdx); + object->state = 0; + object->animState = 0; + RemoveUnionRoomPlayerObjectEvent(leaderId); + HideUnionRoomPlayer(leaderId); } - else if (AnimateUnionRoomPlayerSpawn(&ptr->animState, playerIdx, ptr) == TRUE) + else if (AnimateUnionRoomPlayerSpawn(&object->animState, leaderId, object) == TRUE) { - ptr->state = 1; + object->state = 1; } break; case 1: - if (ptr->schedAnim == UNION_ROOM_SPAWN_OUT) + if (object->schedAnim == UNION_ROOM_SPAWN_OUT) { - ptr->state = 3; - ptr->animState = 0; + object->state = 3; + object->animState = 0; } else { @@ -358,19 +350,17 @@ static void AnimateUnionRoomPlayer(u32 playerIdx, struct UnionRoomObject * ptr) } // fallthrough case 3: - if (AnimateUnionRoomPlayerDespawn(&ptr->animState, playerIdx, ptr) == 1) - { - ptr->state = 0; - } + if (AnimateUnionRoomPlayerDespawn(&object->animState, leaderId, object) == 1) + object->state = 0; break; } - ptr->schedAnim = UNION_ROOM_SPAWN_NONE; + object->schedAnim = UNION_ROOM_SPAWN_NONE; } static void Task_AnimateUnionRoomPlayers(u8 taskId) { s32 i; - for (i = 0; i < MAX_UNION_ROOM_PLAYERS; i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) AnimateUnionRoomPlayer(i, &sUnionObjWork[i]); } @@ -386,15 +376,13 @@ static void DestroyTask_AnimateUnionRoomPlayers(void) { u8 taskId = FindTaskIdByFunc(Task_AnimateUnionRoomPlayers); if (taskId < NUM_TASKS) - { DestroyTask(taskId); - } } void DestroyUnionRoomPlayerObjects(void) { s32 i; - for (i = 0; i < MAX_UNION_ROOM_PLAYERS; i++) + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { if (!IsUnionRoomPlayerHidden(i)) { @@ -406,120 +394,119 @@ void DestroyUnionRoomPlayerObjects(void) DestroyTask_AnimateUnionRoomPlayers(); } -void CreateGroupMemberSpritesInvisible(u8 * spriteIds, s32 playerIdx) +void CreateUnionRoomPlayerSprites(u8 * spriteIds, s32 leaderId) { - s32 direction; - - for (direction = DIR_NONE; direction <= DIR_EAST; direction++) + s32 memberId; + for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { - s32 id = UR_PLAYER_SPRITE_ID(playerIdx, direction); + s32 id = UR_PLAYER_SPRITE_ID(leaderId, memberId); spriteIds[id] = CreateObjectSprite(OBJ_EVENT_GFX_MAN_4, id - UR_SPRITE_START_ID, - sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0], - sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1], + sUnionRoomPlayerCoords[leaderId][0] + sUnionRoomGroupOffsets[memberId][0], + sUnionRoomPlayerCoords[leaderId][1] + sUnionRoomGroupOffsets[memberId][1], 3, 1); SetObjectEventSpriteInvisibility(id - UR_SPRITE_START_ID, TRUE); } } -void DestroyGroupMemberSprites(u8 * spriteIds) +void DestroyUnionRoomPlayerSprites(u8 * spriteIds) { s32 i; - for (i = 0; i < UR_PLAYER_SPRITE_ID(MAX_UNION_ROOM_PLAYERS, 0); i++) + for (i = 0; i < NUM_UNION_ROOM_SPRITES; i++) DestroySprite(&gSprites[spriteIds[i]]); } +// Clear the impassable metatiles around the group leaders that get set +// to prevent the player from walking through the group member sprites. void SetTilesAroundUnionRoomPlayersPassable(void) { - s32 i, direction, x, y; - for (i = 0; i < MAX_UNION_ROOM_PLAYERS; i++) + s32 i, memberId, x, y; + for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) { - for (direction = DIR_NONE; direction <= DIR_EAST; direction++) + for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { - GetUnionRoomPlayerFacingCoords(i, direction, &x, &y); + GetUnionRoomPlayerCoords(i, memberId, &x, &y); MapGridSetMetatileImpassabilityAt(x, y, FALSE); } } } -static u8 GetNewFacingDirectionForUnionRoomPlayer(u32 direction, u32 playerIdx, struct GFtgtGname * gname) +static u8 GetNewFacingDirectionForUnionRoomPlayer(u32 memberId, u32 leaderId, struct RfuGameData * gameData) { - if (direction != DIR_NONE) - return sNextFacingDirection[direction]; - else if (gname->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) + if (memberId) // If not leader + return sMemberFacingDirections[memberId]; + else if (gameData->activity == (ACTIVITY_CHAT | IN_UNION_ROOM)) return DIR_SOUTH; else return DIR_EAST; } -static bool32 IsUnionRoomPlayerInvisible(u32 playerIdx, u32 direction) +static bool32 IsUnionRoomPlayerInvisible(u32 leaderId, u32 memberId) { - return IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(playerIdx, direction) - UR_SPRITE_START_ID); + return IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID); } -static void SpawnGroupMember(u32 playerIdx, u32 direction, u8 graphicsId, struct GFtgtGname * gname) +static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct RfuGameData * gameData) { s32 x, y; - s32 id = UR_PLAYER_SPRITE_ID(playerIdx, direction); - if (IsUnionRoomPlayerInvisible(playerIdx, direction) == TRUE) + s32 id = UR_PLAYER_SPRITE_ID(leaderId, memberId); + if (IsUnionRoomPlayerInvisible(leaderId, memberId) == TRUE) { SetObjectEventSpriteInvisibility(id - UR_SPRITE_START_ID, FALSE); SetObjectEventSpriteAnim(id - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_IN); } SetObjectEventSpriteGraphics(id - UR_SPRITE_START_ID, graphicsId); - SetUnionRoomObjectFacingDirection(direction, playerIdx, GetNewFacingDirectionForUnionRoomPlayer(direction, playerIdx, gname)); - GetUnionRoomPlayerFacingCoords(playerIdx, direction, &x, &y); + SetUnionRoomObjectFacingDirection(memberId, leaderId, GetNewFacingDirectionForUnionRoomPlayer(memberId, leaderId, gameData)); + GetUnionRoomPlayerCoords(leaderId, memberId, &x, &y); MapGridSetMetatileImpassabilityAt(x, y, TRUE); } -static void DespawnGroupMember(u32 playerIdx, u32 direction) +static void DespawnGroupMember(u32 leaderId, u32 memberId) { s32 x, y; - SetObjectEventSpriteAnim(UR_PLAYER_SPRITE_ID(playerIdx, direction) - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_OUT); - GetUnionRoomPlayerFacingCoords(playerIdx, direction, &x, &y); + SetObjectEventSpriteAnim(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_OUT); + GetUnionRoomPlayerCoords(leaderId, memberId, &x, &y); MapGridSetMetatileImpassabilityAt(x, y, FALSE); } -static void AssembleGroup(u32 playerIdx, struct GFtgtGname * gname) +static void AssembleGroup(u32 leaderId, struct RfuGameData * gameData) { s16 x, y, x2, y2; s32 i; PlayerGetDestCoords(&x, &y); player_get_pos_including_state_based_drift(&x2, &y2); - if (IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(playerIdx, 0) - UR_SPRITE_START_ID) == TRUE) + if (IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(leaderId, 0) - UR_SPRITE_START_ID) == TRUE) { - if (IsUnionRoomPlayerFacingTileAt(playerIdx, 0, x, y) == TRUE || IsUnionRoomPlayerFacingTileAt(playerIdx, 0, x2, y2) == TRUE) - { + if (IsUnionRoomPlayerAt(leaderId, 0, x, y) == TRUE || IsUnionRoomPlayerAt(leaderId, 0, x2, y2) == TRUE) return; - } - SpawnGroupMember(playerIdx, 0, GetUnionRoomPlayerGraphicsId(gname->playerGender, gname->unk_00.playerTrainerId[0]), gname); + SpawnGroupMember(leaderId, 0, GetUnionRoomPlayerGraphicsId(gameData->playerGender, gameData->compatibility.playerTrainerId[0]), gameData); } - for (i = 1; i < 5; i++) + for (i = 1; i < MAX_RFU_PLAYERS; i++) { - if (gname->child_sprite_gender[i - 1] == 0) + if (gameData->partnerInfo[i - 1] == 0) { - DespawnGroupMember(playerIdx, i); + DespawnGroupMember(leaderId, i); } - else if (IsUnionRoomPlayerFacingTileAt(playerIdx, i, x, y) == FALSE && IsUnionRoomPlayerFacingTileAt(playerIdx, i, x2, y2) == FALSE) + else if (IsUnionRoomPlayerAt(leaderId, i, x, y) == FALSE && IsUnionRoomPlayerAt(leaderId, i, x2, y2) == FALSE) { - SpawnGroupMember(playerIdx, i, GetUnionRoomPlayerGraphicsId((gname->child_sprite_gender[i - 1] >> 3) & 1, gname->child_sprite_gender[i - 1] & 7), gname); + SpawnGroupMember(leaderId, i, GetUnionRoomPlayerGraphicsId((gameData->partnerInfo[i - 1] >> PINFO_GENDER_SHIFT) & 1, + gameData->partnerInfo[i - 1] & PINFO_TID_MASK), + gameData); } } } -static void SpawnGroupLeaderAndMembers(u32 playerIdx, struct GFtgtGname * gname) +static void SpawnGroupLeaderAndMembers(u32 leaderId, struct RfuGameData * gameData) { u32 i; - switch (gname->activity) + switch (gameData->activity) { case ACTIVITY_NONE | IN_UNION_ROOM: case ACTIVITY_PLYRTALK | IN_UNION_ROOM: - SpawnGroupLeader(playerIdx, gname->playerGender, gname->unk_00.playerTrainerId[0]); - for (i = 0; i < 5; i++) - { - DespawnGroupMember(playerIdx, i); - } + SpawnGroupLeader(leaderId, gameData->playerGender, gameData->compatibility.playerTrainerId[0]); + for (i = 0; i < MAX_RFU_PLAYERS; i++) + DespawnGroupMember(leaderId, i); break; case ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM: case ACTIVITY_TRADE | IN_UNION_ROOM: @@ -528,37 +515,31 @@ static void SpawnGroupLeaderAndMembers(u32 playerIdx, struct GFtgtGname * gname) case ACTIVITY_ACCEPT | IN_UNION_ROOM: case ACTIVITY_DECLINE | IN_UNION_ROOM: case ACTIVITY_NPCTALK | IN_UNION_ROOM: - DespawnGroupLeader(playerIdx); - AssembleGroup(playerIdx, gname); + DespawnGroupLeader(leaderId); + AssembleGroup(leaderId, gameData); break; } } -static void DespawnGroupLeaderAndMembers(u32 r5, struct GFtgtGname *gname) +static void DespawnGroupLeaderAndMembers(u32 leaderId, struct RfuGameData *gameData) { s32 i; - DespawnGroupLeader(r5); - for (i = 0; i < 5; i++) - { - DespawnGroupMember(r5, i); - } + DespawnGroupLeader(leaderId); + for (i = 0; i < MAX_RFU_PLAYERS; i++) + DespawnGroupMember(leaderId, i); } static void UpdateUnionRoomPlayerSprites(struct WirelessLink_URoom *uroom) { s32 i; - struct UnkStruct_x20 * r4; + struct RfuPlayer * leaders; sUnionObjRefreshTimer = 0; - for (i = 0, r4 = uroom->field_0->arr; i < MAX_UNION_ROOM_PLAYERS; i++) + for (i = 0, leaders = uroom->playerList->players; i < MAX_UNION_ROOM_LEADERS; i++) { - if (r4[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) - { - SpawnGroupLeaderAndMembers(i, &r4[i].gname_uname.gname); - } - else if (r4[i].groupScheduledAnim == UNION_ROOM_SPAWN_OUT) - { - DespawnGroupLeaderAndMembers(i, &r4[i].gname_uname.gname); - } + if (leaders[i].groupScheduledAnim == UNION_ROOM_SPAWN_IN) + SpawnGroupLeaderAndMembers(i, &leaders[i].rfu.data); + else if (leaders[i].groupScheduledAnim == UNION_ROOM_SPAWN_OUT) + DespawnGroupLeaderAndMembers(i, &leaders[i].rfu.data); } } @@ -570,64 +551,56 @@ void ScheduleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom) void HandleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom) { if (++sUnionObjRefreshTimer > 300) - { UpdateUnionRoomPlayerSprites(uroom); - } } -bool32 TryInteractWithUnionRoomMember(struct UnkStruct_Main0 *main0, s16 *directionPtr, s16 *playerIdxPtr, u8 *spriteIds) +bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdPtr, s16 *leaderIdPtr, u8 *spriteIds) { s16 x, y; - s32 i, direction; - struct UnkStruct_x20 * r4; + s32 i, memberId; + struct RfuPlayer * leaders; if (!IsPlayerStandingStill()) - { return FALSE; - } + GetXYCoordsOneStepInFrontOfPlayer(&x, &y); - for (i = 0, r4 = main0->arr; i < MAX_UNION_ROOM_PLAYERS; i++) + for (i = 0, leaders = list->players; i < MAX_UNION_ROOM_LEADERS; i++) { - for (direction = DIR_NONE; direction <= DIR_EAST; direction++) + for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { - s32 id = UR_PLAYER_SPRITE_ID(i, direction); - if (x != sUnionRoomPlayerCoords[i][0] + sFacingDirectionOffsets[direction][0] + 7) - { + s32 id = UR_PLAYER_SPRITE_ID(i, memberId); + + // Is the player in front of a group member position? + if (x != sUnionRoomPlayerCoords[i][0] + sUnionRoomGroupOffsets[memberId][0] + 7) continue; - } - if (y != sUnionRoomPlayerCoords[i][1] + sFacingDirectionOffsets[direction][1] + 7) - { + if (y != sUnionRoomPlayerCoords[i][1] + sUnionRoomGroupOffsets[memberId][1] + 7) continue; - } + + // Has a group member spawned at this position? if (IsObjectEventSpriteInvisible(id - UR_SPRITE_START_ID)) - { continue; - } if (IsObjectEventSpriteAnimating(id - UR_SPRITE_START_ID)) - { continue; - } - if (r4[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) - { + if (leaders[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) continue; - } - // Face player - SetUnionRoomObjectFacingDirection(direction, i, sOppositeFacingDirection[GetPlayerFacingDirection()]); - *directionPtr = direction; - *playerIdxPtr = i; + + // Interaction attempt successful, face player + SetUnionRoomObjectFacingDirection(memberId, i, sOppositeFacingDirection[GetPlayerFacingDirection()]); + *memberIdPtr = memberId; + *leaderIdPtr = i; return TRUE; } } return FALSE; } -static void SetUnionRoomObjectFacingDirection(s32 currDirection, s32 playerIdx, u8 newDirection) +static void SetUnionRoomObjectFacingDirection(s32 memberId, s32 leaderId, u8 newDirection) { - TurnObjectEventSprite(5 * playerIdx - UR_SPRITE_START_ID + currDirection, newDirection); + TurnObjectEventSprite(MAX_RFU_PLAYERS * leaderId - UR_SPRITE_START_ID + memberId, newDirection); // should be line below, but order is swapped here - // TurnObjectEventSprite(UR_PLAYER_SPRITE_ID(playerIdx, currDirection) - UR_SPRITE_START_ID, newDirection); + // TurnObjectEventSprite(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, newDirection); } -void UpdateUnionRoomMemberFacing(u32 currDirection, u32 playerIdx, struct UnkStruct_Main0 *main0) +void UpdateUnionRoomMemberFacing(u32 memberId, u32 leaderId, struct RfuPlayerList *list) { - return SetUnionRoomObjectFacingDirection(currDirection, playerIdx, GetNewFacingDirectionForUnionRoomPlayer(currDirection, playerIdx, &main0->arr[playerIdx].gname_uname.gname)); + return SetUnionRoomObjectFacingDirection(memberId, leaderId, GetNewFacingDirectionForUnionRoomPlayer(memberId, leaderId, &list->players[leaderId].rfu.data)); } diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index dbc71d6345d5..1d15df32f95e 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -114,8 +114,8 @@ static const u8 sActivityGroupInfo[][3] = { {ACTIVITY_BATTLE_DOUBLE, GROUPTYPE_BATTLE, 2}, {ACTIVITY_BATTLE_MULTI, GROUPTYPE_BATTLE, 4}, {ACTIVITY_TRADE, GROUPTYPE_TRADE, 2}, - {ACTIVITY_WONDER_CARD, GROUPTYPE_TOTAL, 2}, - {ACTIVITY_WONDER_NEWS, GROUPTYPE_TOTAL, 2}, + {ACTIVITY_WONDER_CARD_DUP, GROUPTYPE_TOTAL, 2}, + {ACTIVITY_WONDER_NEWS_DUP, GROUPTYPE_TOTAL, 2}, {ACTIVITY_POKEMON_JUMP, GROUPTYPE_TOTAL, 0}, {ACTIVITY_BERRY_CRUSH, GROUPTYPE_TOTAL, 0}, {ACTIVITY_BERRY_PICK, GROUPTYPE_TOTAL, 0}, @@ -132,8 +132,8 @@ static const u8 sActivityGroupInfo[][3] = { {ACTIVITY_NPCTALK | IN_UNION_ROOM, GROUPTYPE_UNION, 2}, {ACTIVITY_ACCEPT | IN_UNION_ROOM, GROUPTYPE_UNION, 1}, {ACTIVITY_DECLINE | IN_UNION_ROOM, GROUPTYPE_UNION, 1}, - {ACTIVITY_WONDER_CARD2, GROUPTYPE_TOTAL, 2}, - {ACTIVITY_WONDER_NEWS2, GROUPTYPE_TOTAL, 2}, + {ACTIVITY_WONDER_CARD, GROUPTYPE_TOTAL, 2}, + {ACTIVITY_WONDER_NEWS, GROUPTYPE_TOTAL, 2}, {ACTIVITY_CONTEST_COOL, GROUPTYPE_TOTAL, 0}, {ACTIVITY_CONTEST_BEAUTY, GROUPTYPE_TOTAL, 0}, {ACTIVITY_CONTEST_CUTE, GROUPTYPE_TOTAL, 0}, @@ -347,10 +347,10 @@ static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 * AddTextPrinterParameterized4(windowId, fontId, x, y, 0, 0, color, -1, str); } -static u32 CountPlayersInGroupAndGetActivity(struct UnkStruct_x20 * unk20, u32 * groupCounts) +static u32 CountPlayersInGroupAndGetActivity(struct RfuPlayer * player, u32 * groupCounts) { int i, j, k; - u32 activity = unk20->gname_uname.gname.activity; + u32 activity = player->rfu.data.activity; #define group_activity(i) (sActivityGroupInfo[(i)][0]) #define group_type(i) (sActivityGroupInfo[(i)][1]) @@ -358,15 +358,13 @@ static u32 CountPlayersInGroupAndGetActivity(struct UnkStruct_x20 * unk20, u32 * for (i = 0; i < ARRAY_COUNT(sActivityGroupInfo); i++) { - if (activity == group_activity(i) && unk20->groupScheduledAnim == UNION_ROOM_SPAWN_IN) + if (activity == group_activity(i) && player->groupScheduledAnim == UNION_ROOM_SPAWN_IN) { if (group_players(i) == 0) { k = 0; for (j = 0; j < RFU_CHILD_MAX; j++) - { - if (unk20->gname_uname.gname.child_sprite_gender[j] != 0) k++; - } + if (player->rfu.data.partnerInfo[j] != 0) k++; k++; groupCounts[group_type(i)] += k; } @@ -398,12 +396,12 @@ static bool32 UpdateCommunicationCounts(u32 * groupCounts, u32 * prevGroupCounts { bool32 activitiesChanged = FALSE; u32 groupCountBuffer[NUM_GROUPTYPES] = {0, 0, 0, 0}; - struct UnkStruct_x20 ** data = (void *)gTasks[taskId].data; + struct RfuPlayer ** players = (void *)gTasks[taskId].data; s32 i; for (i = 0; i < NUM_TASK_DATA; i++) { - u32 activity = CountPlayersInGroupAndGetActivity(&(*data)[i], groupCountBuffer); + u32 activity = CountPlayersInGroupAndGetActivity(&(*players)[i], groupCountBuffer); if (activity != activities[i]) { activities[i] = activity; From 846942ce48d650efd3d837493157ce462e568d78 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 7 Oct 2021 14:55:15 -0400 Subject: [PATCH 281/762] Finish remaining symbols in link_rfu_2 --- include/link.h | 2 +- include/link_rfu.h | 65 ++++--- src/berry_crush.c | 4 +- src/field_screen_effect.c | 2 +- src/link.c | 27 +-- src/link_rfu_2.c | 346 ++++++++++++++++++++------------------ src/union_room.c | 2 +- src/union_room_chat.c | 20 +-- 8 files changed, 248 insertions(+), 220 deletions(-) diff --git a/include/link.h b/include/link.h index 8dd2328d08aa..5b7ace5e1b5e 100644 --- a/include/link.h +++ b/include/link.h @@ -293,7 +293,7 @@ void SetBerryBlenderLinkCallback(void); void SetSuppressLinkErrorMessage(bool8 flag); void ConvertLinkPlayerName(struct LinkPlayer *linkPlayer); void ClearSavedLinkPlayers(void); -void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected); +void SetLinkErrorBuffer(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected); void LocalLinkPlayerToBlock(void); void LinkPlayerFromBlock(u32 who); bool32 Link_AnyPartnersPlayingFRLG_JP(void); diff --git a/include/link_rfu.h b/include/link_rfu.h index eb071618ea44..6ca06349a4ba 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -68,6 +68,21 @@ enum { RFU_ERROR_STATE_IGNORE, }; +// These error flags are set in errorInfo, and given as +// the uppermost 16 bits of 'status' for sLinkErrorBuffer. +// The first 8 bits are reserved for the link manager msg +// when the error occurred, and the last 8 bits are this +// sequence of presumably meaningful error flags, but +// ultimately sLinkErrorBuffer's status is never read. +#define F_RFU_ERROR_1 (1 << 8) +#define F_RFU_ERROR_2 (1 << 9) // Never set +#define F_RFU_ERROR_3 (1 << 10) // Never set +#define F_RFU_ERROR_4 (1 << 11) // Never set +#define F_RFU_ERROR_5 (1 << 12) +#define F_RFU_ERROR_6 (1 << 13) +#define F_RFU_ERROR_7 (1 << 14) +#define F_RFU_ERROR_8 (1 << 15) + struct RfuGameCompatibilityData { u16 language:4; @@ -157,14 +172,14 @@ struct RfuManager { /* 0x000 */ void (*callback)(void); /* 0x004 */ u16 state; - /* 0x006 */ u8 filler_06[4]; - /* 0x00a */ u16 linkmanMsg; + /* 0x006 */ u8 unused1[4]; + /* 0x00a */ u16 errorInfo; /* 0x00c */ u8 parentChild; /* 0x00d */ u8 playerCount; - /* 0x00e */ bool8 unk_0e; - /* 0x00f */ u8 unk_0f; - /* 0x010 */ u16 unk_10; - /* 0x012 */ u16 unk_12; + /* 0x00e */ bool8 runParentMain2; + /* 0x00f */ u8 unused2; + /* 0x010 */ u16 errorParam0; + /* 0x012 */ u16 errorParam1; /* 0x014 */ u8 childRecvBuffer[RFU_CHILD_MAX][CHILD_DATA_LENGTH]; /* 0x04c */ u8 childSendBuffer[CHILD_DATA_LENGTH]; /* 0x05a */ u8 blockRequestType; @@ -173,7 +188,7 @@ struct RfuManager /* 0x061 */ bool8 numBlocksReceived[MAX_RFU_PLAYERS]; /* 0x066 */ u8 idleTaskId; /* 0x067 */ u8 searchTaskId; - /* 0x068 */ u8 filler_68[4]; + /* 0x068 */ u8 unused3[4]; /* 0x06c */ struct RfuBlockSend sendBlock; /* 0x080 */ struct RfuBlockSend recvBlock[MAX_RFU_PLAYERS]; /* 0x0e4 */ bool8 readyCloseLink[MAX_RFU_PLAYERS]; @@ -185,8 +200,8 @@ struct RfuManager /* 0x0f2 */ u16 packet[RFU_PACKET_SIZE]; /* 0x0fe */ u16 resendExitStandbyTimer; /* 0x100 */ u16 allReadyNum; - /* 0x102 */ u8 unk_102; - /* 0x103 */ u8 filler_103[7]; + /* 0x102 */ u8 childSendCmdId; + /* 0x103 */ u8 unused4[7]; /* 0x10A */ struct RfuGameData parent; u8 filler_; u8 parentName[RFU_USER_NAME_LENGTH]; @@ -194,12 +209,12 @@ struct RfuManager /* 0x9e8 */ struct RfuSendQueue sendQueue; /* 0xc1c */ struct RfuBackupQueue backupQueue; /* 0xc3c */ vu8 linkRecovered; - /* 0xc3d */ u8 unk_c3d; + /* 0xc3d */ u8 reconnectParentId; /* 0xc3e */ vu8 childSlot; - /* 0xc3f */ u8 unk_c3f[70]; + /* 0xc3f */ u8 childRecvQueue[RECV_QUEUE_SLOT_LENGTH]; /* 0xc85 */ u8 leaveGroupStatus; - /* 0xc86 */ u8 recvStatus; - /* 0xc87 */ u8 recvCmds[5][7][2]; + /* 0xc86 */ u8 childRecvStatus; + /* 0xc87 */ u8 recvCmds[MAX_RFU_PLAYERS][CMD_LENGTH - 1][2]; /* 0xccd */ u8 parentId; /* 0xcce */ u8 multiplayerId; /* 0xccf */ u8 connectParentFailures; @@ -207,21 +222,21 @@ struct RfuManager /* 0xcd1 */ u8 partnerSendStatuses[RFU_CHILD_MAX]; /* 0xcd5 */ u8 partnerRecvStatuses[RFU_CHILD_MAX]; /* 0xcd9 */ bool8 stopNewConnections; - /* 0xcda */ u8 unk_cda; - /* 0xcdb */ vbool8 unk_cdb; - /* 0xcdc */ vbool8 unk_cdc; - /* 0xcdd */ u8 unk_cdd; + /* 0xcda */ u8 parentSendSlot; + /* 0xcdb */ vbool8 parentFinished; + /* 0xcdc */ vbool8 parentMain2Failed; + /* 0xcdd */ u8 unused5; /* 0xcde */ u8 linkPlayerIdx[RFU_CHILD_MAX]; - /* 0xce2 */ u8 unk_ce2; + /* 0xce2 */ u8 parentSlots; /* 0xce2 */ u8 disconnectSlots; /* 0xce4 */ u8 disconnectMode; /* 0xce5 */ u8 nextChildBits; /* 0xce5 */ u8 newChildQueue; /* 0xce7 */ u8 acceptSlot_flag; - /* 0xce8 */ bool8 unk_ce8; + /* 0xce8 */ bool8 playerExchangeActive; /* 0xce9 */ u8 incomingChild; - /* 0xcea */ u8 unk_cea[4]; - /* 0xcee */ u8 unk_cee[4]; + /* 0xcea */ u8 numChildRecvErrors[RFU_CHILD_MAX]; + /* 0xcee */ u8 childRecvIds[RFU_CHILD_MAX]; }; // size = 0xcf4 extern struct RfuGameData gHostRfuGameData; @@ -260,8 +275,8 @@ void RfuSetIgnoreError(bool32 enable); u8 RfuGetStatus(void); struct RfuGameData *GetHostRfuGameData(void); void UpdateGameData_GroupLockedIn(u8 startedActivity); -void GetLinkmanErrorParams(u32 msg); -void RfuSetStatus(u8 status, u16 msg); +void RfuSetErrorParams(u32 errorInfo); +void RfuSetStatus(u8 status, u16 errorInfo); u8 Rfu_SetLinkRecovery(bool32 enable); void CopyHostRfuGameDataAndUsername(struct RfuGameData *buff1, u8 *buff2); void SetHostRfuGameData(u8 activity, u32 partnerInfo, bool32 startedActivity); @@ -293,7 +308,7 @@ void Rfu_SendPacket(void *data); bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); void Rfu_DisconnectPlayerById(u32 playerIdx); u8 GetLinkPlayerInfoFlags(s32 playerId); -void sub_800EF7C(void); +void StopUnionRoomLinkManager(void); bool8 Rfu_GetCompatiblePlayerData(struct RfuGameData *player, u8 *username, u8 idx); bool8 Rfu_GetWonderDistributorPlayerData(struct RfuGameData *player, u8 *username, u8 idx); s32 Rfu_GetIndexOfNewestChild(u8 bits); @@ -301,7 +316,7 @@ void CreateTask_RfuIdle(void); void DestroyTask_RfuIdle(void); void ClearRecvCommands(void); void LinkRfu_FatalError(void); -bool32 sub_8011A9C(void); +bool32 Rfu_IsPlayerExchangeActive(void); void Rfu_StopPartnerSearch(void); void RfuSetNormalDisconnectMode(void); void SetUnionRoomChatPlayerData(u32 numPlayers); diff --git a/src/berry_crush.c b/src/berry_crush.c index a9818016e936..3a9adfcd0842 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -987,8 +987,8 @@ static u32 QuitBerryCrush(MainCallback exitCallback) #define ERROR_EXIT(exitCallback) \ { \ SetMainCallback2(exitCallback); \ - gRfu.unk_10 = 0; \ - gRfu.unk_12 = 0; \ + gRfu.errorParam0 = 0; \ + gRfu.errorParam1 = 0; \ gRfu.errorState = RFU_ERROR_STATE_1; \ } diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index fbe725c0b1ff..65611c0f16d7 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -204,7 +204,7 @@ static void Task_ReturnToFieldWirelessLink(u8 taskId) if (!IsLinkTaskFinished()) { if (++task->data[1] > 1800) - GetLinkmanErrorParams(0x6000); + RfuSetErrorParams(F_RFU_ERROR_6 | F_RFU_ERROR_7); } else { diff --git a/src/link.c b/src/link.c index 6e9d01559751..1f06eef66579 100644 --- a/src/link.c +++ b/src/link.c @@ -108,7 +108,7 @@ static EWRAM_DATA u16 sTimeOutCounter = 0; EWRAM_DATA struct LinkPlayer gLocalLinkPlayer = {}; EWRAM_DATA struct LinkPlayer gLinkPlayers[MAX_RFU_PLAYERS] = {}; static EWRAM_DATA struct LinkPlayer sSavedLinkPlayers[MAX_RFU_PLAYERS] = {}; -EWRAM_DATA struct { +static EWRAM_DATA struct { u32 status; u8 lastRecvQueueCount; u8 lastSendQueueCount; @@ -140,7 +140,7 @@ static void LinkCB_WaitCloseLinkWithJP(void); static void LinkCB_Standby(void); static void LinkCB_StandbyForAll(void); -static void CheckErrorStatus(void); +static void TrySetLinkErrorBuffer(void); static void CB2_PrintErrorMessage(void); static bool8 IsSioMultiMaster(void); static void SetWirelessCommType0_Internal(void); @@ -394,9 +394,7 @@ void CloseLink(void) { gReceivedRemoteLinkPlayers = FALSE; if (gWirelessCommType) - { LinkRfu_Shutdown(); - } sLinkOpen = FALSE; DisableSerial(); } @@ -496,7 +494,7 @@ u16 LinkMain2(const u16 *heldKeys) ProcessRecvCmds(SIO_MULTI_CNT->id); if (gLinkCallback != NULL) gLinkCallback(); - CheckErrorStatus(); + TrySetLinkErrorBuffer(); } return gLinkStatus; } @@ -1559,10 +1557,13 @@ static void LinkCB_StandbyForAll(void) } } -static void CheckErrorStatus(void) +static void TrySetLinkErrorBuffer(void) { + // Check if a link error has occurred if (sLinkOpen && EXTRACT_LINK_ERRORS(gLinkStatus)) { + // Link error has occurred, handle message details if + // necessary, then stop the link. if (!gSuppressLinkErrorMessage) { sLinkErrorBuffer.status = gLinkStatus; @@ -1575,7 +1576,7 @@ static void CheckErrorStatus(void) } } -void BufferLinkErrorInfo(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected) +void SetLinkErrorBuffer(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected) { sLinkErrorBuffer.status = status; sLinkErrorBuffer.lastSendQueueCount = lastSendQueueCount; @@ -1778,10 +1779,10 @@ void LinkPlayerFromBlock(u32 who) SetMainCallback2(CB2_LinkError); } +// When this function returns TRUE the callbacks are skipped bool8 HandleLinkConnection(void) { - bool32 r4; - bool32 r5; + bool32 main1Failed, main2Failed; if (gWirelessCommType == 0) { @@ -1792,11 +1793,13 @@ bool8 HandleLinkConnection(void) } else { - r4 = RfuMain1(); - r5 = RfuMain2(); + main1Failed = RfuMain1(); // Always returns FALSE + main2Failed = RfuMain2(); if (IsSendingKeysOverCable() == TRUE) { - if (r4 == TRUE || IsRfuRecvQueueEmpty() || r5) + // This will never be reached. + // IsSendingKeysOverCable is always FALSE for wireless communication + if (main1Failed == TRUE || IsRfuRecvQueueEmpty() || main2Failed) return TRUE; } } diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index a080630c10d1..ceab901aa4d5 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -33,11 +33,12 @@ enum { RFUSTATE_CHILD_TRY_JOIN, RFUSTATE_CHILD_JOINED, RFUSTATE_UR_PLAYER_EXCHANGE, - RFUSTATE_14, - RFUSTATE_15, + RFUSTATE_UR_STOP_MANAGER, + RFUSTATE_UR_STOP_MANAGER_END, RFUSTATE_UR_FINALIZE, }; -// These states are re-used for different purposes +// These states are used for different purposes +// depending on the link mode (parent, child, union room) #define RFUSTATE_17 17 #define RFUSTATE_PARENT_RECONNECT 18 @@ -67,16 +68,16 @@ struct SioInfo // its fields was largely removed before release struct RfuDebug { - u8 filler0[6]; - u16 unk_06; - u8 filler1[6]; - vu8 unk_0e; + u8 unused0[6]; + u16 recvCount; + u8 unused1[6]; + vu8 unkFlag; u8 childJoinCount; - u8 filler2[84]; + u8 unused2[84]; u16 blockSendFailures; - u8 filler3[29]; + u8 unused3[29]; u8 blockSendTime; - u8 filler4[88]; + u8 unused4[88]; }; u32 gRfuAPIBuffer[RFU_API_BUFF_SIZE_RAM / 4]; @@ -93,9 +94,9 @@ static EWRAM_DATA struct RfuDebug sRfuDebug = {}; static void ResetSendDataManager(struct RfuBlockSend *); static void InitChildRecvBuffers(void); -static void sub_800EAFC(void); -static void LinkManagerCB_MSC(u16); -static void sub_800EDBC(u16); +static void InitParentSendData(void); +static void MSCCallback_Child(u16); +static void MSCCallback_Parent(u16); static void UpdateBackupQueue(void); static void Task_PlayerExchange(u8); static void Task_PlayerExchangeUpdate(u8); @@ -111,7 +112,7 @@ static void UpdateChildStatuses(void); static s32 GetJoinGroupStatus(void); static void ClearSelectedLinkPlayerIds(u16); static void ValidateAndReceivePokemonSioInfo(void *); -static void sub_80115EC(s32); +static void ParentResetChildRecvMetadata(s32); static void CB2_RfuIdle(void); static void RfuReqDisconnectSlot(u32); static void SendDisconnectCommand(u32, u32); @@ -170,7 +171,7 @@ static const u32 sAllBlocksReceived[] = { }; #undef BLOCK_MASK -static const u8 sUnknown_082ED68C[] = { +static const u8 sSlotToLinkPlayerTableId[] = { 0, 0, 1, 1, 2, 2, 2, 2, 3 @@ -366,10 +367,10 @@ static void Task_ParentSearchForChildren(u8 taskId) case RFUSTATE_STOP_MANAGER_END: break; case RFUSTATE_PARENT_FINALIZE: - gRfu.unk_cdb = FALSE; - rfu_LMAN_setMSCCallback(sub_800EDBC); + gRfu.parentFinished = FALSE; + rfu_LMAN_setMSCCallback(MSCCallback_Parent); InitChildRecvBuffers(); - sub_800EAFC(); + InitParentSendData(); gRfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; CreateTask(Task_PlayerExchange, 5); @@ -383,40 +384,47 @@ s32 Rfu_GetIndexOfNewestChild(u8 bits) return sPlayerBitsToNewChildIdx[bits]; } -void sub_800E88C(s32 r2, s32 r5) +static void SetLinkPlayerIdsFromSlots(s32 baseSlots, s32 addSlots) { u8 i; - u8 r4 = 1; - s32 r1 = r2; - s32 r6 = 0; - if (r5 == -1) + u8 baseId = 1; + s32 baseSlotsCopy = baseSlots; + s32 newId = 0; + if (addSlots == -1) { - for (i = 0; i < RFU_CHILD_MAX; r2 >>= 1, i++) + // Initialize + for (i = 0; i < RFU_CHILD_MAX; baseSlots >>= 1, i++) { - if (r2 & 1) + if (baseSlots & 1) { - gRfu.linkPlayerIdx[i] = r4; - r4++; + gRfu.linkPlayerIdx[i] = baseId; + baseId++; } } } else { - for (i = 0; i < RFU_CHILD_MAX; r1 >>= 1, i++) + // Clear id for any empty slot + for (i = 0; i < RFU_CHILD_MAX; baseSlotsCopy >>= 1, i++) { - if (!(r1 & 1)) + if (!(baseSlotsCopy & 1)) gRfu.linkPlayerIdx[i] = 0; } - for (r4 = RFU_CHILD_MAX; r4 != 0; r4--) + + // Get starting id by checking existing slots + for (baseId = RFU_CHILD_MAX; baseId != 0; baseId--) { - for (i = 0; i < RFU_CHILD_MAX && gRfu.linkPlayerIdx[i] != r4; i++); + for (i = 0; i < RFU_CHILD_MAX && gRfu.linkPlayerIdx[i] != baseId; i++) + ; if (i == RFU_CHILD_MAX) - r6 = r4; + newId = baseId; } - for (r5 &= ~r2, i = 0; i < RFU_CHILD_MAX; r5 >>= 1, i++) + + // Set id for new slots + for (addSlots &= ~baseSlots, i = 0; i < RFU_CHILD_MAX; addSlots >>= 1, i++) { - if (r5 & 1) - gRfu.linkPlayerIdx[i] = r6++; + if (addSlots & 1) + gRfu.linkPlayerIdx[i] = newId++; } } } @@ -460,7 +468,7 @@ static void Task_ChildSearchForParent(u8 taskId) { u8 bmChildSlot = 1 << gRfu.childSlot; rfu_clearSlot(TYPE_NI_SEND | TYPE_NI_RECV, gRfu.childSlot); - rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.childRecvQueue, sizeof(gRfu.childRecvQueue)); rfu_UNI_setSendData(bmChildSlot, gRfu.childSendBuffer, sizeof(gRfu.childSendBuffer)); gTasks[taskId].data[1] = 8; DestroyTask(taskId); @@ -490,13 +498,13 @@ static void InitChildRecvBuffers(void) } } -static void sub_800EAFC(void) +static void InitParentSendData(void) { u8 acceptSlot = lman.acceptSlot_flag; - rfu_UNI_setSendData(acceptSlot, gRfu.recvCmds, 70); - gRfu.unk_cda = Rfu_GetIndexOfNewestChild(acceptSlot); - gRfu.unk_ce2 = acceptSlot; - sub_800E88C(acceptSlot, -1); + rfu_UNI_setSendData(acceptSlot, gRfu.recvCmds, sizeof(gRfu.recvCmds)); + gRfu.parentSendSlot = Rfu_GetIndexOfNewestChild(acceptSlot); + gRfu.parentSlots = acceptSlot; + SetLinkPlayerIdsFromSlots(acceptSlot, -1); gRfu.parentChild = MODE_PARENT; } @@ -521,7 +529,7 @@ static void Task_UnionRoomListen(u8 taskId) break; case RFUSTATE_UR_CONNECT: rfu_LMAN_establishConnection(MODE_P_C_SWITCH, 0, 240, (u16 *)sAcceptedSerialNos); - rfu_LMAN_setMSCCallback(LinkManagerCB_MSC); + rfu_LMAN_setMSCCallback(MSCCallback_Child); gRfu.state = RFUSTATE_UR_CONNECT_END; break; case RFUSTATE_UR_CONNECT_END: @@ -537,23 +545,23 @@ static void Task_UnionRoomListen(u8 taskId) CreateTask(Task_PlayerExchange, 5); } break; - case RFUSTATE_14: - rfu_LMAN_stopManager(0); - gRfu.state = RFUSTATE_15; + case RFUSTATE_UR_STOP_MANAGER: + rfu_LMAN_stopManager(FALSE); + gRfu.state = RFUSTATE_UR_STOP_MANAGER_END; break; - case RFUSTATE_15: + case RFUSTATE_UR_STOP_MANAGER_END: break; case RFUSTATE_UR_FINALIZE: - gRfu.unk_cdb = FALSE; - rfu_LMAN_setMSCCallback(sub_800EDBC); + gRfu.parentFinished = FALSE; + rfu_LMAN_setMSCCallback(MSCCallback_Parent); UpdateGameData_GroupLockedIn(TRUE); InitChildRecvBuffers(); - sub_800EAFC(); + InitParentSendData(); gRfu.state = RFUSTATE_FINALIZED; gTasks[taskId].data[1] = 8; gRfu.parentChild = MODE_PARENT; CreateTask(Task_PlayerExchange, 5); - gRfu.unk_ce8 = TRUE; + gRfu.playerExchangeActive = TRUE; DestroyTask(taskId); break; } @@ -569,7 +577,8 @@ void LinkRfu_StopManagerBeforeEnteringChat(void) rfu_LMAN_stopManager(FALSE); } -static void LinkManagerCB_MSC(u16 unused) +// Argument is provided by the RFU and is unused. +static void MSCCallback_Child(u16 REQ_commandID) { s32 i; @@ -581,8 +590,8 @@ static void LinkManagerCB_MSC(u16 unused) if (gRfuSlotStatusUNI[gRfu.childSlot]->recv.newDataFlag) { gRfu.childSendCount++; - RfuRecvQueue_Enqueue(&gRfu.recvQueue, gRfu.unk_c3f); - sRfuDebug.unk_06++; + RfuRecvQueue_Enqueue(&gRfu.recvQueue, gRfu.childRecvQueue); + sRfuDebug.recvCount++; UpdateBackupQueue(); rfu_UNI_readySendData(gRfu.childSlot); rfu_UNI_clearRecvNewDataFlag(gRfu.childSlot); @@ -590,9 +599,10 @@ static void LinkManagerCB_MSC(u16 unused) rfu_LMAN_REQ_sendData(TRUE); } -static void sub_800EDBC(u16 unused) +// Argument is provided by the RFU and is unused. +static void MSCCallback_Parent(u16 REQ_commandID) { - gRfu.unk_cdb = TRUE; + gRfu.parentFinished = TRUE; } void LinkRfu_Shutdown(void) @@ -651,7 +661,7 @@ static bool8 CanTryReconnectParent(void) static bool32 TryReconnectParent(void) { - if (gRfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[gRfu.unk_c3d].id, 240)) + if (gRfu.state == RFUSTATE_CHILD_CONNECT_END && !rfu_LMAN_CHILD_connectParent(gRfuLinkStatus->partner[gRfu.reconnectParentId].id, 240)) { gRfu.state = RFUSTATE_RECONNECTED; return TRUE; @@ -687,9 +697,9 @@ bool32 WaitRfuState(bool32 force) return FALSE; } -void sub_800EF7C(void) +void StopUnionRoomLinkManager(void) { - gRfu.state = RFUSTATE_14; + gRfu.state = RFUSTATE_UR_STOP_MANAGER; } // Unused @@ -708,7 +718,7 @@ static void ReadySendDataForSlots(u8 slots) } } -static void sub_800EFB0(void) +static void ReadAllPlayerRecvCmds(void) { s32 i, j; @@ -779,10 +789,10 @@ static bool32 RfuMain1_Parent(void) } else { - gRfu.unk_cdb = FALSE; - if ((gRfu.unk_ce2 & gRfuLinkStatus->connSlotFlag) == gRfu.unk_ce2 && (gRfu.unk_ce2 & gRfuLinkStatus->connSlotFlag)) + gRfu.parentFinished = FALSE; + if ((gRfu.parentSlots & gRfuLinkStatus->connSlotFlag) == gRfu.parentSlots && (gRfu.parentSlots & gRfuLinkStatus->connSlotFlag)) { - if (!gRfu.unk_cdc) + if (!gRfu.parentMain2Failed) { if (gRfu.disconnectSlots) { @@ -790,8 +800,8 @@ static bool32 RfuMain1_Parent(void) gRfu.disconnectSlots = 0; if (gRfu.disconnectMode == RFU_DISCONNECT_ERROR) { - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x8000); - GetLinkmanErrorParams(0x8000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_8); + RfuSetErrorParams(F_RFU_ERROR_8); return FALSE; } if (!lman.acceptSlot_flag) @@ -801,15 +811,15 @@ static bool32 RfuMain1_Parent(void) return FALSE; } } - sub_800EFB0(); - rfu_UNI_readySendData(gRfu.unk_cda); + ReadAllPlayerRecvCmds(); + rfu_UNI_readySendData(gRfu.parentSendSlot); rfu_LMAN_REQ_sendData(TRUE); } else { rfu_REQ_PARENT_resumeRetransmitAndChange(); } - gRfu.unk_0e = TRUE; + gRfu.runParentMain2 = TRUE; } } return FALSE; @@ -821,22 +831,22 @@ static bool32 RfuMain2_Parent(void) u16 flags; u8 r0; u16 j; - u8 retval; + bool8 failed; - if (gRfu.state >= RFUSTATE_FINALIZED && gRfu.unk_0e == TRUE) + if (gRfu.state >= RFUSTATE_FINALIZED && gRfu.runParentMain2 == TRUE) { rfu_waitREQComplete(); - while (gRfu.unk_cdb == FALSE) + while (gRfu.parentFinished == FALSE) { if (gRfu.errorState != RFU_ERROR_STATE_NONE) return FALSE; } rfu_REQ_recvData(); rfu_waitREQComplete(); - if ((lman.parentAck_flag & gRfu.unk_ce2) == gRfu.unk_ce2) + if ((lman.parentAck_flag & gRfu.parentSlots) == gRfu.parentSlots) { - gRfu.unk_cdc = FALSE; - sRfuDebug.unk_06++; + gRfu.parentMain2Failed = FALSE; + sRfuDebug.recvCount++; flags = lman.acceptSlot_flag; for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -844,15 +854,15 @@ static bool32 RfuMain2_Parent(void) { if (gRfu.childRecvBuffer[i][1]) { - if (gRfu.unk_cee[i] != 0xFF && (gRfu.childRecvBuffer[i][0] >> 5) != ((gRfu.unk_cee[i] + 1) & 7)) + if (gRfu.childRecvIds[i] != 0xFF && (gRfu.childRecvBuffer[i][0] >> 5) != ((gRfu.childRecvIds[i] + 1) & 7)) { - if (++gRfu.unk_cea[i] > 4) - GetLinkmanErrorParams(0x8000 | 0x100); + if (++gRfu.numChildRecvErrors[i] > 4) + RfuSetErrorParams(F_RFU_ERROR_8 | F_RFU_ERROR_1); } else { - gRfu.unk_cee[i] = gRfu.childRecvBuffer[i][0] / 32; - gRfu.unk_cea[i] = 0; + gRfu.childRecvIds[i] = gRfu.childRecvBuffer[i][0] / 32; + gRfu.numChildRecvErrors[i] = 0; gRfu.childRecvBuffer[i][0] &= 0x1f; r0 = gRfu.linkPlayerIdx[i]; for (j = 0; j < CMD_LENGTH - 1; j++) @@ -872,51 +882,51 @@ static bool32 RfuMain2_Parent(void) CallRfuFunc(); if (gRfu.nextChildBits && !gRfu.stopNewConnections) { - sRfuDebug.unk_0e = FALSE; - rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, gRfu.unk_cda); + sRfuDebug.unkFlag = FALSE; + rfu_clearSlot(TYPE_UNI_SEND | TYPE_UNI_RECV, gRfu.parentSendSlot); for (i = 0; i < RFU_CHILD_MAX; i++) { if ((gRfu.nextChildBits >> i) & 1) rfu_setRecvBuffer(TYPE_UNI, i, gRfu.childRecvBuffer[i], sizeof(gRfu.childRecvBuffer[0])); } - sub_800E88C(gRfu.unk_ce2, gRfu.unk_ce2 | gRfu.nextChildBits); + SetLinkPlayerIdsFromSlots(gRfu.parentSlots, gRfu.parentSlots | gRfu.nextChildBits); gRfu.incomingChild = gRfu.nextChildBits; - gRfu.unk_ce2 |= gRfu.nextChildBits; + gRfu.parentSlots |= gRfu.nextChildBits; gRfu.nextChildBits = 0; - rfu_UNI_setSendData(gRfu.unk_ce2, gRfu.recvCmds, 70); - gRfu.unk_cda = Rfu_GetIndexOfNewestChild(gRfu.unk_ce2); + rfu_UNI_setSendData(gRfu.parentSlots, gRfu.recvCmds, sizeof(gRfu.recvCmds)); + gRfu.parentSendSlot = Rfu_GetIndexOfNewestChild(gRfu.parentSlots); CreateTask(Task_PlayerExchangeUpdate, 0); } } else { - gRfu.unk_cdc = TRUE; - gRfu.unk_0e = FALSE; + gRfu.parentMain2Failed = TRUE; + gRfu.runParentMain2 = FALSE; } - gRfu.unk_0e = FALSE; + gRfu.runParentMain2 = FALSE; } - retval = gRfu.unk_cdc; - return gRfuLinkStatus->sendSlotUNIFlag ? retval & 1 : FALSE; + failed = gRfu.parentMain2Failed; + return gRfuLinkStatus->sendSlotUNIFlag ? failed & 1 : FALSE; } -static void sub_800F498(u16 *sendCmd, u8 *buffer) +static void ChildBuildSendCmd(u16 *sendCmd, u8 *dst) { s32 i; if (sendCmd[0]) { - sendCmd[0] |= (gRfu.unk_102 << 5); - gRfu.unk_102 = (gRfu.unk_102 + 1) & 7; + sendCmd[0] |= (gRfu.childSendCmdId << 5); + gRfu.childSendCmdId = (gRfu.childSendCmdId + 1) & 7; for (i = 0; i < CMD_LENGTH - 1; i++) { - buffer[2 * i + 1] = sendCmd[i] >> 8; - buffer[2 * i + 0] = sendCmd[i]; + dst[2 * i + 1] = sendCmd[i] >> 8; + dst[2 * i + 0] = sendCmd[i]; } } else { for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) - buffer[i] = 0; + dst[i] = 0; } } @@ -942,14 +952,14 @@ static bool32 RfuMain1_Child(void) rfu_waitREQComplete(); status = RfuGetStatus(); if (status != RFU_STATUS_FATAL_ERROR && status != RFU_STATUS_JOIN_GROUP_NO && status != RFU_STATUS_LEAVE_GROUP) - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x9000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_8); rfu_clearAllSlot(); gReceivedRemoteLinkPlayers = FALSE; gRfu.callback = NULL; if (gRfu.disconnectMode == RFU_DISCONNECT_ERROR) { - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x9000); - GetLinkmanErrorParams(0x9000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_8); + RfuSetErrorParams(F_RFU_ERROR_5 | F_RFU_ERROR_8); } lman.state = lman.next_state = 0; gRfu.disconnectMode = RFU_DISCONNECT_NONE; @@ -958,7 +968,7 @@ static bool32 RfuMain1_Child(void) { gRfu.childSendCount--; CallRfuFunc(); - sub_800F498(gSendCmd, send); + ChildBuildSendCmd(gSendCmd, send); RfuSendQueue_Enqueue(&gRfu.sendQueue, send); for (i = 0; i < CMD_LENGTH - 1; i++) gSendCmd[i] = 0; @@ -1241,7 +1251,7 @@ static void RfuPrepareSendBuffer(u16 command) break; case RFUCMD_SEND_PLAYER_IDS: case RFUCMD_SEND_PLAYER_IDS_NEW: - tmp = gRfu.unk_ce2 ^ gRfu.disconnectSlots; + tmp = gRfu.parentSlots ^ gRfu.disconnectSlots; gRfu.playerCount = sPlayerBitsToCount[tmp] + 1; gSendCmd[1] = gRfu.playerCount; buff = (u8 *)&gSendCmd[2]; @@ -1445,7 +1455,7 @@ static void WaitAllReadyToCloseLink(void) static void SendReadyCloseLink(void) { - if (gSendCmd[0] == 0 && !gRfu.unk_ce8) + if (gSendCmd[0] == 0 && !gRfu.playerExchangeActive) { RfuPrepareSendBuffer(RFUCMD_READY_CLOSE_LINK); gRfu.callback = WaitAllReadyToCloseLink; @@ -1729,8 +1739,8 @@ static s32 GetJoinGroupStatus(void) || gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_SUCCESS_AND_SENDSIDE_UNKNOWN) { rfu_clearSlot(TYPE_NI_RECV, gRfu.childSlot); - RfuSetStatus(gRfu.recvStatus, 0); - status = gRfu.recvStatus; + RfuSetStatus(gRfu.childRecvStatus, 0); + status = gRfu.childRecvStatus; } else if (gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED) { @@ -1748,7 +1758,7 @@ static void Task_PlayerExchange(u8 taskId) if (gRfu.status == RFU_STATUS_FATAL_ERROR || gRfu.status == RFU_STATUS_CONNECTION_ERROR) { - gRfu.unk_ce8 = FALSE; + gRfu.playerExchangeActive = FALSE; DestroyTask(taskId); } switch (gTasks[taskId].tState) @@ -1809,7 +1819,7 @@ static void Task_PlayerExchange(u8 taskId) case 6: DestroyTask(taskId); gReceivedRemoteLinkPlayers = TRUE; - gRfu.unk_ce8 = FALSE; + gRfu.playerExchangeActive = FALSE; rfu_LMAN_setLinkRecovery(1, 600); if (gRfu.newChildQueue) { @@ -1866,10 +1876,10 @@ static void Task_PlayerExchangeUpdate(u8 taskId) s32 i; struct LinkPlayerBlock *playerBlock; struct SioInfo *sio; - u8 playerId = gRfu.linkPlayerIdx[sUnknown_082ED68C[gRfu.incomingChild]]; + u8 playerId = gRfu.linkPlayerIdx[sSlotToLinkPlayerTableId[gRfu.incomingChild]]; if (gRfu.status == RFU_STATUS_FATAL_ERROR || gRfu.status == RFU_STATUS_CONNECTION_ERROR) { - gRfu.unk_ce8 = FALSE; + gRfu.playerExchangeActive = FALSE; DestroyTask(taskId); } switch (gTasks[taskId].tState) @@ -1919,7 +1929,7 @@ static void Task_PlayerExchangeUpdate(u8 taskId) { CpuFill16(0, gBlockRecvBuffer, sizeof(struct SioInfo)); ResetBlockReceivedFlag(0); - gRfu.unk_ce8 = FALSE; + gRfu.playerExchangeActive = FALSE; if (gRfu.newChildQueue) { for (i = 0; i < RFU_CHILD_MAX; i++) @@ -1928,7 +1938,7 @@ static void Task_PlayerExchangeUpdate(u8 taskId) { gRfu.nextChildBits = 1 << i; gRfu.newChildQueue ^= (1 << i); - gRfu.unk_ce8 = TRUE; + gRfu.playerExchangeActive = TRUE; break; } } @@ -1978,7 +1988,7 @@ static void RfuCheckErrorStatus(void) gWirelessCommType = 2; SetMainCallback2(CB2_LinkError); gMain.savedCallback = CB2_LinkError; - BufferLinkErrorInfo((gRfu.linkmanMsg << 16) | (gRfu.unk_10 << 8) | gRfu.unk_12, gRfu.recvQueue.count, gRfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); + SetLinkErrorBuffer((gRfu.errorInfo << 16) | (gRfu.errorParam0 << 8) | gRfu.errorParam1, gRfu.recvQueue.count, gRfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); gRfu.errorState = RFU_ERROR_STATE_2; CloseLink(); } @@ -1986,8 +1996,8 @@ static void RfuCheckErrorStatus(void) { if (lman.childClockSlave_flag) rfu_LMAN_requestChangeAgbClockMaster(); - RfuSetStatus(RFU_STATUS_FATAL_ERROR, 0x7000); - GetLinkmanErrorParams(0x7000); + RfuSetStatus(RFU_STATUS_FATAL_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); + RfuSetErrorParams(F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); } } @@ -2108,7 +2118,7 @@ void SetUnionRoomChatPlayerData(u32 numPlayers) { numConnectedChildren = 0; partnerInfo = 0; - slots = gRfu.unk_ce2 ^ gRfu.disconnectSlots; + slots = gRfu.parentSlots ^ gRfu.disconnectSlots; for (i = 0; i < RFU_CHILD_MAX; i++) { if ((slots >> i) & 1) @@ -2127,13 +2137,13 @@ void SetUnionRoomChatPlayerData(u32 numPlayers) } } -void GetLinkmanErrorParams(u32 msg) +void RfuSetErrorParams(u32 errorInfo) { if (gRfu.errorState == RFU_ERROR_STATE_NONE) { - gRfu.unk_10 = lman.param[0]; - gRfu.unk_12 = lman.param[1]; - gRfu.linkmanMsg = msg; + gRfu.errorParam0 = lman.param[0]; + gRfu.errorParam1 = lman.param[1]; + gRfu.errorInfo = errorInfo; gRfu.errorState = RFU_ERROR_STATE_1; } } @@ -2174,7 +2184,7 @@ static void LinkManagerCB_Parent(u8 msg, u8 paramCount) case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: break; case LMAN_MSG_NEW_CHILD_CONNECT_ACCEPTED: - sub_80115EC(lman.param[0]); + ParentResetChildRecvMetadata(lman.param[0]); for (i = 0; i < RFU_CHILD_MAX; i++) { if ((lman.param[0] >> i) & 1) @@ -2219,11 +2229,11 @@ static void LinkManagerCB_Parent(u8 msg, u8 paramCount) case LMAN_MSG_LINK_LOSS_DETECTED_AND_DISCONNECTED: case LMAN_MSG_LINK_RECOVERY_FAILED_AND_DISCONNECTED: gRfu.linkLossRecoveryState = 4; - gRfu.unk_ce2 &= ~lman.param[0]; + gRfu.parentSlots &= ~lman.param[0]; if (gReceivedRemoteLinkPlayers == 1) { - if (gRfu.unk_ce2 == 0) - GetLinkmanErrorParams(msg); + if (gRfu.parentSlots == 0) + RfuSetErrorParams(msg); else StartDisconnectNewChild(); } @@ -2236,16 +2246,16 @@ static void LinkManagerCB_Parent(u8 msg, u8 paramCount) break; case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: case LMAN_MSG_WATCH_DOG_TIMER_ERROR: case LMAN_MSG_CLOCK_SLAVE_MS_CHANGE_ERROR_BY_DMA: case LMAN_MSG_RFU_FATAL_ERROR: - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - gRfu.unk_cdb = TRUE; + gRfu.parentFinished = TRUE; break; } } @@ -2271,25 +2281,25 @@ static void LinkManagerCB_Child(u8 msg, u8 unused1) case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: gRfu.state = RFUSTATE_CHILD_TRY_JOIN; gRfu.leaveGroupStatus = RFU_STATUS_OK; - gRfu.recvStatus = RFU_STATUS_OK; - rfu_setRecvBuffer(TYPE_NI, gRfu.childSlot, &gRfu.recvStatus, sizeof(gRfu.recvStatus)); - rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); + gRfu.childRecvStatus = RFU_STATUS_OK; + rfu_setRecvBuffer(TYPE_NI, gRfu.childSlot, &gRfu.childRecvStatus, sizeof(gRfu.childRecvStatus)); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.childRecvQueue, sizeof(gRfu.childRecvQueue)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_DISCONNECTED: gRfu.linkLossRecoveryState = 2; - if (gRfu.recvStatus == RFU_STATUS_JOIN_GROUP_NO) + if (gRfu.childRecvStatus == RFU_STATUS_JOIN_GROUP_NO) break; case LMAN_MSG_LINK_RECOVERY_FAILED_AND_DISCONNECTED: if (gRfu.linkLossRecoveryState != 2) gRfu.linkLossRecoveryState = 4; - if (gRfu.recvStatus != RFU_STATUS_LEAVE_GROUP) + if (gRfu.childRecvStatus != RFU_STATUS_LEAVE_GROUP) RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); Debug_PrintString(sASCII_LinkLossDisconnect, 5, 5); if (gReceivedRemoteLinkPlayers == 1) - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); break; case LMAN_MSG_LINK_LOSS_DETECTED_AND_START_RECOVERY: gRfu.linkLossRecoveryState = 1; @@ -2307,7 +2317,7 @@ static void LinkManagerCB_Child(u8 msg, u8 unused1) break; case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: @@ -2315,22 +2325,22 @@ static void LinkManagerCB_Child(u8 msg, u8 unused1) case LMAN_MSG_CLOCK_SLAVE_MS_CHANGE_ERROR_BY_DMA: case LMAN_MSG_RFU_FATAL_ERROR: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - GetLinkmanErrorParams(msg); - gRfu.unk_cdb = TRUE; + RfuSetErrorParams(msg); + gRfu.parentFinished = TRUE; break; } } -static void sub_80115EC(s32 a0) +static void ParentResetChildRecvMetadata(s32 slot) { s32 i; for (i = 0; i < RFU_CHILD_MAX; i++) { - if ((a0 >> i) & 1) + if ((slot >> i) & 1) { - gRfu.unk_cea[i] = 0; - gRfu.unk_cee[i] = 0xFF; + gRfu.numChildRecvErrors[i] = 0; + gRfu.childRecvIds[i] = 0xFF; } } } @@ -2372,11 +2382,11 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) if (newChildren != 0) { acceptSlot = 1 << Rfu_GetIndexOfNewestChild(newChildren); - if (gRfu.newChildQueue == 0 && !gRfu.unk_ce8) + if (gRfu.newChildQueue == 0 && !gRfu.playerExchangeActive) { gRfu.nextChildBits = acceptSlot; gRfu.newChildQueue |= (acceptSlot ^ newChildren); - gRfu.unk_ce8 = TRUE; + gRfu.playerExchangeActive = TRUE; } else { @@ -2394,7 +2404,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) rfu_REQ_disconnect(lman.acceptSlot_flag); rfu_waitREQComplete(); } - sub_80115EC(lman.param[0]); + ParentResetChildRecvMetadata(lman.param[0]); break; case LMAN_MSG_NEW_CHILD_CONNECT_REJECTED: break; @@ -2407,7 +2417,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) rfu_REQ_disconnect(lman.acceptSlot_flag ^ acceptSlot); rfu_waitREQComplete(); } - if (gRfu.state == RFUSTATE_15) + if (gRfu.state == RFUSTATE_UR_STOP_MANAGER_END) gRfu.state = RFUSTATE_UR_FINALIZE; break; break; @@ -2434,7 +2444,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) case LMAN_MSG_CHILD_NAME_SEND_COMPLETED: gRfu.state = RFUSTATE_UR_PLAYER_EXCHANGE; RfuSetStatus(RFU_STATUS_CHILD_SEND_COMPLETE, 0); - rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.unk_c3f, sizeof(gRfu.unk_c3f)); + rfu_setRecvBuffer(TYPE_UNI, gRfu.childSlot, gRfu.childRecvQueue, sizeof(gRfu.childRecvQueue)); break; case LMAN_MSG_CHILD_NAME_SEND_FAILED_AND_DISCONNECTED: RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); @@ -2457,21 +2467,21 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) { if (gReceivedRemoteLinkPlayers == 1) { - gRfu.unk_ce2 &= ~(lman.param[0]); - if (gRfu.unk_ce2 == 0) - GetLinkmanErrorParams(msg); + gRfu.parentSlots &= ~(lman.param[0]); + if (gRfu.parentSlots == 0) + RfuSetErrorParams(msg); else StartDisconnectNewChild(); } } else if (gRfu.disconnectMode != RFU_DISCONNECT_NORMAL && gReceivedRemoteLinkPlayers == 1) { - GetLinkmanErrorParams(msg); - rfu_LMAN_stopManager(0); + RfuSetErrorParams(msg); + rfu_LMAN_stopManager(FALSE); } if (gRfuLinkStatus->parentChild == MODE_NEUTRAL - && lman.pcswitch_flag == 0 + && !lman.pcswitch_flag && FuncIsActiveTask(Task_UnionRoomListen) == TRUE) gRfu.state = RFUSTATE_17; @@ -2486,16 +2496,16 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) break; case LMAN_MSG_LMAN_API_ERROR_RETURN: RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); gRfu.isShuttingDown = TRUE; break; case LMAN_MSG_REQ_API_ERROR: case LMAN_MSG_WATCH_DOG_TIMER_ERROR: case LMAN_MSG_CLOCK_SLAVE_MS_CHANGE_ERROR_BY_DMA: case LMAN_MSG_RFU_FATAL_ERROR: - GetLinkmanErrorParams(msg); + RfuSetErrorParams(msg); RfuSetStatus(RFU_STATUS_FATAL_ERROR, msg); - gRfu.unk_cdb = FALSE; + gRfu.parentFinished = FALSE; break; } } @@ -2505,10 +2515,10 @@ void RfuSetNormalDisconnectMode(void) gRfu.disconnectMode = RFU_DISCONNECT_NORMAL; } -void RfuSetStatus(u8 status, u16 msg) +void RfuSetStatus(u8 status, u16 errorInfo) { gRfu.status = status; - gRfu.linkmanMsg = msg; + gRfu.errorInfo = errorInfo; } u8 RfuGetStatus(void) @@ -2526,9 +2536,9 @@ bool32 RfuHasErrored(void) return FALSE; } -bool32 sub_8011A9C(void) +bool32 Rfu_IsPlayerExchangeActive(void) { - return gRfu.unk_ce8; + return gRfu.playerExchangeActive; } bool8 Rfu_IsMaster(void) @@ -2621,7 +2631,7 @@ void InitializeRfuLinkManager_JoinGroup(void) { gRfu.parentChild = MODE_CHILD; SetHostRfuUsername(); - rfu_LMAN_initializeManager(LinkManagerCB_Child, LinkManagerCB_MSC); + rfu_LMAN_initializeManager(LinkManagerCB_Child, MSCCallback_Child); CreateTask_ChildSearchForParent(); } @@ -2667,10 +2677,10 @@ static void RfuReqDisconnectSlot(u32 slot) { rfu_REQ_disconnect(slot); rfu_waitREQComplete(); - gRfu.unk_ce2 &= ~slot; - rfu_clearSlot(1, gRfu.unk_cda); - rfu_UNI_setSendData(gRfu.unk_ce2, gRfu.recvCmds, 70); - gRfu.unk_cda = Rfu_GetIndexOfNewestChild(gRfu.unk_ce2); + gRfu.parentSlots &= ~slot; + rfu_clearSlot(1, gRfu.parentSendSlot); + rfu_UNI_setSendData(gRfu.parentSlots, gRfu.recvCmds, sizeof(gRfu.recvCmds)); + gRfu.parentSendSlot = Rfu_GetIndexOfNewestChild(gRfu.parentSlots); } void RequestDisconnectSlotByTrainerNameAndId(const u8 *name, u16 id) @@ -2689,7 +2699,7 @@ void Rfu_DisconnectPlayerById(u32 playerIdx) for (i = 0; i < RFU_CHILD_MAX; i++) { - if (gRfu.linkPlayerIdx[i] == playerIdx && (gRfu.unk_ce2 >> i) & 1) + if (gRfu.linkPlayerIdx[i] == playerIdx && (gRfu.parentSlots >> i) & 1) toDisconnect |= 1 << i; } if (toDisconnect) @@ -2702,7 +2712,7 @@ void Rfu_DisconnectPlayerById(u32 playerIdx) static void Task_SendDisconnectCommand(u8 taskId) { - if (gSendCmd[0] == 0 && !gRfu.unk_ce8) + if (gSendCmd[0] == 0 && !gRfu.playerExchangeActive) { RfuPrepareSendBuffer(RFUCMD_DISCONNECT); gSendCmd[1] = gTasks[taskId].tDisconnectPlayers; @@ -2745,7 +2755,7 @@ static void Task_RfuReconnectWithParent(u8 taskId) { if (gRfuLinkStatus->partner[id].slot != 0xFF) { - gRfu.unk_c3d = id; + gRfu.reconnectParentId = id; if (TryReconnectParent()) DestroyTask(taskId); } @@ -2757,14 +2767,14 @@ static void Task_RfuReconnectWithParent(u8 taskId) else { // Error, unable to reconnect to parent - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); DestroyTask(taskId); } } else { tTime++; - gRfu.unk_c3d = id; + gRfu.reconnectParentId = id; } } else @@ -2775,7 +2785,7 @@ static void Task_RfuReconnectWithParent(u8 taskId) if (tTime > 240) { // Timeout error - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); DestroyTask(taskId); } } @@ -2841,7 +2851,7 @@ static void Task_TryConnectToUnionRoomParent(u8 taskId) if (++gTasks[taskId].tTime > 300) { // Timeout error - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); DestroyTask(taskId); } @@ -2866,7 +2876,7 @@ static void Task_TryConnectToUnionRoomParent(u8 taskId) else { // Incompatible partner activity - RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, 0x7000); + RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, F_RFU_ERROR_5 | F_RFU_ERROR_6 | F_RFU_ERROR_7); DestroyTask(taskId); } } diff --git a/src/union_room.c b/src/union_room.c index eae75451397a..ba099cb97369 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -2888,7 +2888,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_PLAYER_CONTACTED_YOU: PlaySE(SE_DING_DONG); - sub_800EF7C(); + StopUnionRoomLinkManager(); uroom->state = UR_STATE_RECV_CONTACT_DATA; uroom->recvActivityRequest[0] = 0; break; diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 903d00bcbf10..27558814d9ed 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -997,7 +997,7 @@ static void Chat_Join(void) sChat->funcState++; // fall through case 1: - if (IsLinkTaskFinished() && !sub_8011A9C()) + if (IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive()) { if (SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) sChat->funcState++; @@ -1206,7 +1206,7 @@ static void Chat_AskQuitChatting(void) } break; case 4: - if (IsLinkTaskFinished() && !sub_8011A9C() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) + if (IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) { if (!sChat->multiplayerId) sChat->funcState = 6; @@ -1257,15 +1257,15 @@ static void Chat_Exit(void) } break; case 3: - if (IsLinkTaskFinished() && !sub_8011A9C() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) + if (IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) sChat->funcState++; break; case 4: - if ((GetBlockReceivedStatus() & 1) && !sub_8011A9C()) + if ((GetBlockReceivedStatus() & 1) && !Rfu_IsPlayerExchangeActive()) sChat->funcState++; break; case 5: - if (IsLinkTaskFinished() && !sub_8011A9C()) + if (IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive()) { SetCloseLinkCallback(); sChat->exitDelayTimer = 0; @@ -1300,7 +1300,7 @@ static void Chat_Drop(void) } break; case 1: - if (!IsDisplaySubtaskActive(0) && IsLinkTaskFinished() && !sub_8011A9C()) + if (!IsDisplaySubtaskActive(0) && IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive()) { SetCloseLinkCallback(); sChat->exitDelayTimer = 0; @@ -1346,7 +1346,7 @@ static void Chat_Disbanded(void) } break; case 2: - if (IsDisplaySubtaskActive(0) != TRUE && IsLinkTaskFinished() && !sub_8011A9C()) + if (IsDisplaySubtaskActive(0) != TRUE && IsLinkTaskFinished() && !Rfu_IsPlayerExchangeActive()) { SetCloseLinkCallback(); sChat->exitDelayTimer = 0; @@ -1384,7 +1384,7 @@ static void Chat_SendMessage(void) sChat->funcState++; // fall through case 1: - if (IsLinkTaskFinished() == TRUE && !sub_8011A9C() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) + if (IsLinkTaskFinished() == TRUE && !Rfu_IsPlayerExchangeActive() && SendBlock(0, sChat->sendMessageBuffer, sizeof(sChat->sendMessageBuffer))) sChat->funcState++; break; case 2: @@ -2028,7 +2028,7 @@ static void Task_ReceiveChatMessage(u8 taskId) } tBlockReceivedStatus = GetBlockReceivedStatus(); - if (!tBlockReceivedStatus && sub_8011A9C()) + if (!tBlockReceivedStatus && Rfu_IsPlayerExchangeActive()) return; tI = 0; @@ -2100,7 +2100,7 @@ static void Task_ReceiveChatMessage(u8 taskId) DestroyTask(taskId); break; case 2: - if (!sub_8011A9C()) + if (!Rfu_IsPlayerExchangeActive()) { if (!sChat->multiplayerId) SetUnionRoomChatPlayerData(sChat->linkPlayerCount); From e86d3410a1719fcbf62754bfda93a295aa7e0d57 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 7 Oct 2021 15:32:51 -0400 Subject: [PATCH 282/762] Update argument names in link headers, link_rfu doc cleanup --- include/link_rfu.h | 28 ++++----- include/union_room.h | 12 ++-- include/union_room_player_avatar.h | 6 +- src/berry_crush.c | 12 ++-- src/link_rfu_2.c | 27 ++++----- src/union_room.c | 92 +++++++++++++++--------------- 6 files changed, 87 insertions(+), 90 deletions(-) diff --git a/include/link_rfu.h b/include/link_rfu.h index 6ca06349a4ba..df2b80c4fad2 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -62,9 +62,9 @@ enum { // Values for errorState enum { RFU_ERROR_STATE_NONE, - RFU_ERROR_STATE_1, - RFU_ERROR_STATE_2, - RFU_ERROR_STATE_3, + RFU_ERROR_STATE_OCCURRED, + RFU_ERROR_STATE_PROCESSED, + RFU_ERROR_STATE_DISCONNECTING, RFU_ERROR_STATE_IGNORE, }; @@ -247,8 +247,8 @@ extern u8 gWirelessStatusIndicatorSpriteId; void WipeTrainerNameRecords(void); void InitRFUAPI(void); void LinkRfu_Shutdown(void); -void Rfu_SetBlockReceivedFlag(u8 who); -void Rfu_ResetBlockReceivedFlag(u8 who); +void Rfu_SetBlockReceivedFlag(u8 linkPlayerId); +void Rfu_ResetBlockReceivedFlag(u8 linkPlayerId); bool32 IsSendingKeysToRfu(void); void StartSendingKeysToRfu(void); void Rfu_SetBerryBlenderLinkCallback(void); @@ -278,9 +278,9 @@ void UpdateGameData_GroupLockedIn(u8 startedActivity); void RfuSetErrorParams(u32 errorInfo); void RfuSetStatus(u8 status, u16 errorInfo); u8 Rfu_SetLinkRecovery(bool32 enable); -void CopyHostRfuGameDataAndUsername(struct RfuGameData *buff1, u8 *buff2); +void CopyHostRfuGameDataAndUsername(struct RfuGameData *gameData, u8 *username); void SetHostRfuGameData(u8 activity, u32 partnerInfo, bool32 startedActivity); -void InitializeRfuLinkManager_LinkLeader(u32 a0); +void InitializeRfuLinkManager_LinkLeader(u32 groupMax); bool32 IsRfuCommunicatingWithAllChildren(void); void LinkRfu_StopManagerAndFinalizeSlots(void); bool32 RfuTryDisconnectLeavingChildren(void); @@ -296,21 +296,21 @@ void SendLeaveGroupNotice(void); void RecordMixTrainerNames(void); void LinkRfu_CreateConnectionAsParent(void); void LinkRfu_StopManagerBeforeEnteringChat(void); -void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 startedActivity); -void CreateTask_RfuReconnectWithParent(const u8 *src, u16 trainerId); +void UpdateGameData_SetActivity(u8 activity, u32 partnerInfo, bool32 startedActivity); +void CreateTask_RfuReconnectWithParent(const u8 *name, u16 trainerId); void SetHostRfuWonderFlags(bool32 hasNews, bool32 hasCard); void ResetHostRfuGameData(void); void SetTradeBoardRegisteredMonInfo(u32 type, u32 species, u32 level); void InitializeRfuLinkManager_EnterUnionRoom(void); -void TryConnectToUnionRoomParent(const u8 *name, struct RfuGameData *structPtr, u8 a2); +void TryConnectToUnionRoomParent(const u8 *name, struct RfuGameData *parent, u8 activity); bool32 IsUnionRoomListenTaskActive(void); void Rfu_SendPacket(void *data); bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); void Rfu_DisconnectPlayerById(u32 playerIdx); u8 GetLinkPlayerInfoFlags(s32 playerId); void StopUnionRoomLinkManager(void); -bool8 Rfu_GetCompatiblePlayerData(struct RfuGameData *player, u8 *username, u8 idx); -bool8 Rfu_GetWonderDistributorPlayerData(struct RfuGameData *player, u8 *username, u8 idx); +bool8 Rfu_GetCompatiblePlayerData(struct RfuGameData *gameData, u8 *username, u8 idx); +bool8 Rfu_GetWonderDistributorPlayerData(struct RfuGameData *gameData, u8 *username, u8 idx); s32 Rfu_GetIndexOfNewestChild(u8 bits); void CreateTask_RfuIdle(void); void DestroyTask_RfuIdle(void); @@ -328,8 +328,8 @@ 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); -void RfuBackupQueue_Enqueue(struct RfuBackupQueue *queue, const u8 *q2); -bool8 RfuBackupQueue_Dequeue(struct RfuBackupQueue *queue, u8 *q2); +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); void CreateWirelessStatusIndicatorSprite(u8 x, u8 y); void DestroyWirelessStatusIndicatorSprite(void); diff --git a/include/union_room.h b/include/union_room.h index 11dbccf70516..b364e755908b 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -32,8 +32,8 @@ struct RfuPlayer u16 timeoutCounter; u8 groupScheduledAnim:2; bool8 useRedText:1; // Never set - u8 field_1B; - u8 filler[3]; + u8 newPlayerCountdown; + u8 unused; }; struct RfuPlayerList @@ -108,7 +108,7 @@ struct WirelessLink_URoom struct RfuPlayerList *spawnPlayer; struct RfuIncomingPlayerList *incomingParentList; u16 unknown; // Never read - u16 field_12; + u16 unreadPlayerId; u8 state; u8 stateAfterPrint; u8 textState; @@ -153,9 +153,9 @@ extern u8 gUnionRoomRequestedMonType; u8 CreateTask_CreateTradeMenu(void); void SetUsingUnionRoomStartMenu(void); -void MEvent_CreateTask_CardOrNewsWithFriend(u32 arg0); -void MEvent_CreateTask_CardOrNewsOverWireless(u32 arg0); -void MEvent_CreateTask_Leader(u32 arg0); +void MEvent_CreateTask_CardOrNewsWithFriend(u32 activity); +void MEvent_CreateTask_CardOrNewsOverWireless(u32 activity); +void MEvent_CreateTask_Leader(u32 activity); u8 CreateTask_ListenToWireless(void); void StartUnionRoomBattle(u16 battleFlags); diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h index e6526739f2d7..508545a0eb87 100644 --- a/include/union_room_player_avatar.h +++ b/include/union_room_player_avatar.h @@ -3,12 +3,12 @@ u8 InitUnionRoomPlayerObjects(struct UnionRoomObject *players); void DestroyUnionRoomPlayerObjects(void); -void CreateUnionRoomPlayerSprites(u8 *spriteIds, s32 playerIdx); +void CreateUnionRoomPlayerSprites(u8 *spriteIds, s32 leaderId); void DestroyUnionRoomPlayerSprites(u8 *spriteIds); void SetTilesAroundUnionRoomPlayersPassable(void); void ScheduleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); void HandleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); -bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *main0, s16 *directionPtr, s16 *playerIdxPtr, u8 *spriteIds); -void UpdateUnionRoomMemberFacing(u32 currDirection, u32 playerIdx, struct RfuPlayerList *main0); +bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdPtr, s16 *leaderIdPtr, u8 *spriteIds); +void UpdateUnionRoomMemberFacing(u32 memberId, u32 leaderId, struct RfuPlayerList *list); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/src/berry_crush.c b/src/berry_crush.c index 3a9adfcd0842..aff8d28d2a9f 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -984,12 +984,12 @@ static u32 QuitBerryCrush(MainCallback exitCallback) return 0; } -#define ERROR_EXIT(exitCallback) \ - { \ - SetMainCallback2(exitCallback); \ - gRfu.errorParam0 = 0; \ - gRfu.errorParam1 = 0; \ - gRfu.errorState = RFU_ERROR_STATE_1; \ +#define ERROR_EXIT(exitCallback) \ + { \ + SetMainCallback2(exitCallback); \ + gRfu.errorParam0 = 0; \ + gRfu.errorParam1 = 0; \ + gRfu.errorState = RFU_ERROR_STATE_OCCURRED; \ } void StartBerryCrush(MainCallback exitCallback) diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index ceab901aa4d5..657d90074521 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -27,7 +27,7 @@ enum { RFUSTATE_STOP_MANAGER_END, RFUSTATE_CHILD_CONNECT, RFUSTATE_CHILD_CONNECT_END, - RFUSTATE_8, // Unused + RFUSTATE_UNUSED, RFUSTATE_RECONNECTED, RFUSTATE_CONNECTED, RFUSTATE_CHILD_TRY_JOIN, @@ -39,9 +39,6 @@ enum { }; // These states are used for different purposes // depending on the link mode (parent, child, union room) -#define RFUSTATE_17 17 -#define RFUSTATE_PARENT_RECONNECT 18 - #define RFUSTATE_PARENT_FINALIZE_START 17 #define RFUSTATE_PARENT_FINALIZE 18 #define RFUSTATE_UR_CONNECT 17 @@ -1443,7 +1440,7 @@ static void WaitAllReadyToCloseLink(void) gBattleTypeFlags &= ~BATTLE_TYPE_LINK_IN_BATTLE; if (gRfu.parentChild == MODE_CHILD) { - gRfu.errorState = RFU_ERROR_STATE_3; + gRfu.errorState = RFU_ERROR_STATE_DISCONNECTING; TryDisconnectRfu(); } else @@ -1982,14 +1979,14 @@ static void Task_PlayerExchangeChat(u8 taskId) static void RfuCheckErrorStatus(void) { - if (gRfu.errorState == RFU_ERROR_STATE_1 && lman.childClockSlave_flag == 0) + if (gRfu.errorState == RFU_ERROR_STATE_OCCURRED && lman.childClockSlave_flag == 0) { if (gMain.callback2 == c2_mystery_gift_e_reader_run || lman.init_param->mboot_flag) gWirelessCommType = 2; SetMainCallback2(CB2_LinkError); gMain.savedCallback = CB2_LinkError; SetLinkErrorBuffer((gRfu.errorInfo << 16) | (gRfu.errorParam0 << 8) | gRfu.errorParam1, gRfu.recvQueue.count, gRfu.sendQueue.count, RfuGetStatus() == RFU_STATUS_CONNECTION_ERROR); - gRfu.errorState = RFU_ERROR_STATE_2; + gRfu.errorState = RFU_ERROR_STATE_PROCESSED; CloseLink(); } else if (gRfu.sendQueue.full == TRUE || gRfu.recvQueue.full == TRUE) @@ -2100,10 +2097,10 @@ void UpdateGameData_GroupLockedIn(bool8 startedActivity) rfu_REQ_configGameData(0, RFU_SERIAL_GAME, (void *)&gHostRfuGameData, gHostRfuUsername); } -void UpdateGameData_SetActivity(u8 activity, u32 flags, bool32 startedActivity) +void UpdateGameData_SetActivity(u8 activity, u32 partnerInfo, bool32 startedActivity) { if (activity != ACTIVITY_NONE) - SetHostRfuGameData(activity, flags, startedActivity); + SetHostRfuGameData(activity, partnerInfo, startedActivity); rfu_REQ_configGameData(0, RFU_SERIAL_GAME, (void *)&gHostRfuGameData, gHostRfuUsername); } @@ -2144,7 +2141,7 @@ void RfuSetErrorParams(u32 errorInfo) gRfu.errorParam0 = lman.param[0]; gRfu.errorParam1 = lman.param[1]; gRfu.errorInfo = errorInfo; - gRfu.errorState = RFU_ERROR_STATE_1; + gRfu.errorState = RFU_ERROR_STATE_OCCURRED; } } @@ -2370,7 +2367,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) switch (msg) { case LMAN_MSG_INITIALIZE_COMPLETED: - gRfu.state = RFUSTATE_17; + gRfu.state = RFUSTATE_UR_CONNECT; break; case LMAN_MSG_NEW_CHILD_CONNECT_DETECTED: RfuSetStatus(RFU_STATUS_NEW_CHILD_DETECTED, 0); @@ -2430,7 +2427,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) gRfu.childSlot = lman.param[0]; break; case LMAN_MSG_CONNECT_PARENT_FAILED: - gRfu.state = RFUSTATE_PARENT_RECONNECT; + gRfu.state = RFUSTATE_UR_CONNECT_END; if (gRfu.connectParentFailures < 2) { gRfu.connectParentFailures++; @@ -2483,7 +2480,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) if (gRfuLinkStatus->parentChild == MODE_NEUTRAL && !lman.pcswitch_flag && FuncIsActiveTask(Task_UnionRoomListen) == TRUE) - gRfu.state = RFUSTATE_17; + gRfu.state = RFUSTATE_UR_CONNECT; RfuSetStatus(RFU_STATUS_CONNECTION_ERROR, msg); break; @@ -2617,13 +2614,13 @@ static void CB2_RfuIdle(void) UpdatePaletteFade(); } -void InitializeRfuLinkManager_LinkLeader(u32 a0) +void InitializeRfuLinkManager_LinkLeader(u32 groupMax) { gRfu.parentChild = MODE_PARENT; SetHostRfuUsername(); rfu_LMAN_initializeManager(LinkManagerCB_Parent, NULL); sRfuReqConfig = sRfuReqConfigTemplate; - sRfuReqConfig.availSlot_flag = sAvailSlots[a0 - 1]; + sRfuReqConfig.availSlot_flag = sAvailSlots[groupMax - 1]; CreateTask_ParentSearchForChildren(); } diff --git a/src/union_room.c b/src/union_room.c index ba099cb97369..54f95f53c978 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -187,11 +187,11 @@ enum { // Return values for HandlePlayerListUpdate enum { - PLIST_0, - PLIST_1, - PLIST_2, - PLIST_3, - PLIST_4, + PLIST_NONE, + PLIST_NEW_PLAYER, + PLIST_RECENT_UPDATE, + PLIST_UNUSED, + PLIST_CONTACTED, }; static EWRAM_DATA u8 sUnionRoomPlayerName[12] = {}; @@ -414,7 +414,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->playerList->players[0].timeoutCounter = 0; data->playerList->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; data->playerList->players[0].useRedText = FALSE; - data->playerList->players[0].field_1B = 0; + data->playerList->players[0].newPlayerCountdown = 0; data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, 0xFF); data->bButtonCancelWindowId = AddWindow(&sWindowTemplate_BButtonCancel); switch (GROUP_MAX(sPlayerActivityGroupSize)) @@ -559,7 +559,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) { if (data->joinRequestAnswer == RFU_STATUS_JOIN_GROUP_OK) { - data->playerList->players[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].newPlayerCountdown = 0; RedrawListMenu(data->listTaskId); data->playerCount++; if (data->playerCount == GROUP_MAX(sPlayerActivityGroupSize)) @@ -867,7 +867,7 @@ static void ItemPrintFunc_PossibleGroupMembers(u8 windowId, u32 id, u8 y) switch (data->playerList->players[id].groupScheduledAnim) { case UNION_ROOM_SPAWN_IN: - if (data->playerList->players[id].field_1B != 0) + if (data->playerList->players[id].newPlayerCountdown != 0) colorIdx = UR_COLOR_GREEN; break; case UNION_ROOM_SPAWN_OUT: @@ -913,7 +913,7 @@ static u8 LeaderUpdateGroupMembership(struct RfuPlayerList *list) { for (id = 0; id < MAX_RFU_PLAYERS; id++) { - if (data->playerList->players[id].field_1B != 0) + if (data->playerList->players[id].newPlayerCountdown != 0) ret = UNION_ROOM_SPAWN_IN; } } @@ -948,14 +948,14 @@ static u8 LeaderPrunePlayerList(struct RfuPlayerList *list) data->playerList->players[copiedCount].timeoutCounter = 0; data->playerList->players[copiedCount].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; data->playerList->players[copiedCount].useRedText = FALSE; - data->playerList->players[copiedCount].field_1B = 0; + data->playerList->players[copiedCount].newPlayerCountdown = 0; } for (i = 0; i < MAX_RFU_PLAYERS; i++) { if (data->playerList->players[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) continue; - if (data->playerList->players[i].field_1B != 64) + if (data->playerList->players[i].newPlayerCountdown != 64) continue; playerCount = i; @@ -1382,7 +1382,7 @@ static u8 GetGroupListTextColor(struct WirelessLink_Group *data, u32 id) return UR_COLOR_WHITE; else if (data->playerList->players[id].useRedText) return UR_COLOR_RED; - else if (data->playerList->players[id].field_1B != 0) + else if (data->playerList->players[id].newPlayerCountdown != 0) return UR_COLOR_GREEN; } return UR_COLOR_DEFAULT; @@ -1415,15 +1415,15 @@ static u8 GetNewLeaderCandidate(void) if (ArePlayerDataDifferent(&data->playerList->players[i].rfu, &data->incomingPlayerList->players[id].rfu)) { data->playerList->players[i].rfu = data->incomingPlayerList->players[id].rfu; - data->playerList->players[i].field_1B = 64; + data->playerList->players[i].newPlayerCountdown = 64; ret = 1; } else { - if (data->playerList->players[i].field_1B != 0) + if (data->playerList->players[i].newPlayerCountdown != 0) { - data->playerList->players[i].field_1B--; - if (data->playerList->players[i].field_1B == 0) + data->playerList->players[i].newPlayerCountdown--; + if (data->playerList->players[i].newPlayerCountdown == 0) ret = 2; } } @@ -1431,7 +1431,7 @@ static u8 GetNewLeaderCandidate(void) else { data->playerList->players[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->playerList->players[i].field_1B = 64; + data->playerList->players[i].newPlayerCountdown = 64; ret = 1; } @@ -1899,7 +1899,7 @@ static void Task_MEvent_Leader(u8 taskId) data->playerList->players[0].timeoutCounter = 0; data->playerList->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; data->playerList->players[0].useRedText = FALSE; - data->playerList->players[0].field_1B = 0; + data->playerList->players[0].newPlayerCountdown = 0; data->listenTaskId = CreateTask_ListenForCompatiblePartners(data->incomingPlayerList, 0xFF); winTemplate = sWindowTemplate_PlayerList; @@ -1949,7 +1949,7 @@ static void Task_MEvent_Leader(u8 taskId) case 0: LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); - data->playerList->players[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].newPlayerCountdown = 0; RedrawListMenu(data->listTaskId); data->joinRequestAnswer = RFU_STATUS_JOIN_GROUP_OK; SendRfuStatusToPartner(data->joinRequestAnswer, ReadAsU16(data->playerList->players[data->playerCount].rfu.data.compatibility.playerTrainerId), data->playerList->players[data->playerCount].rfu.name); @@ -1969,7 +1969,7 @@ static void Task_MEvent_Leader(u8 taskId) { if (data->joinRequestAnswer == RFU_STATUS_JOIN_GROUP_OK) { - data->playerList->players[data->playerCount].field_1B = 0; + data->playerList->players[data->playerCount].newPlayerCountdown = 0; RedrawListMenu(data->listTaskId); data->playerCount++; CopyAndTranslatePlayerName(gStringVar1, &data->playerList->players[data->playerCount - 1]); @@ -2430,7 +2430,7 @@ void RunUnionRoom(void) uroom->state = UR_STATE_INIT; uroom->textState = 0; uroom->unknown = 0; - uroom->field_12 = 0; + uroom->unreadPlayerId = 0; gSpecialVar_Result = 0; ListMenuLoadStdPalAt(0xD0, 1); @@ -2610,12 +2610,12 @@ static void Task_RunUnionRoom(u8 taskId) switch (HandlePlayerListUpdate()) { - case PLIST_1: + case PLIST_NEW_PLAYER: PlaySE(SE_PC_LOGIN); - case PLIST_2: + case PLIST_RECENT_UPDATE: ScheduleUnionRoomPlayerRefresh(uroom); break; - case PLIST_4: + case PLIST_CONTACTED: uroom->state = UR_STATE_PLAYER_CONTACTED_YOU; StartScriptInteraction(); SetTradeBoardRegisteredMonInfo(TYPE_NORMAL, SPECIES_NONE, 0); @@ -2643,7 +2643,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case 1: // Link communicating TryConnectToUnionRoomParent(uroom->playerList->players[taskData[1]].rfu.name, &uroom->playerList->players[taskData[1]].rfu.data, gPlayerCurrActivity); - uroom->field_12 = id; // Should be just 0, but won't match any other way. + uroom->unreadPlayerId = id; // Should be just 0, but won't match any other way. uroom->state = UR_STATE_TRY_COMMUNICATING; break; case 2: // Ask to join chat @@ -2833,7 +2833,7 @@ static void Task_RunUnionRoom(u8 taskId) gPlayerCurrActivity = ACTIVITY_CHAT | IN_UNION_ROOM; UpdateGameData_SetActivity(ACTIVITY_CHAT | IN_UNION_ROOM, 0, TRUE); TryConnectToUnionRoomParent(uroom->playerList->players[taskData[1]].rfu.name, &uroom->playerList->players[taskData[1]].rfu.data, gPlayerCurrActivity); - uroom->field_12 = taskData[1]; + uroom->unreadPlayerId = taskData[1]; uroom->state = UR_STATE_TRY_ACCEPT_CHAT_REQUEST_DELAY; taskData[3] = 0; break; @@ -2942,7 +2942,7 @@ static void Task_RunUnionRoom(u8 taskId) else UpdateGameData_SetActivity(gPlayerCurrActivity | IN_UNION_ROOM, GetLinkPlayerInfoFlags(1), TRUE); - uroom->spawnPlayer->players[0].field_1B = 0; + uroom->spawnPlayer->players[0].newPlayerCountdown = 0; taskData[3] = 0; if (gPlayerCurrActivity == (ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM)) { @@ -3298,7 +3298,7 @@ void InitUnionRoom(void) data->state = 0; data->textState = 0; data->unknown = 0; - data->field_12 = 0; + data->unreadPlayerId = 0; sUnionRoomPlayerName[0] = EOS; } @@ -3336,8 +3336,8 @@ static void Task_InitUnionRoom(u8 taskId) case 3: switch (HandlePlayerListUpdate()) { - case PLIST_1: - case PLIST_2: + case PLIST_NEW_PLAYER: + case PLIST_RECENT_UPDATE: if (sUnionRoomPlayerName[0] == EOS) { for (i = 0; i < MAX_UNION_ROOM_LEADERS; i++) @@ -3354,7 +3354,7 @@ static void Task_InitUnionRoom(u8 taskId) } } break; - case PLIST_3: + case PLIST_UNUSED: break; } break; @@ -3390,7 +3390,7 @@ static u8 HandlePlayerListUpdate(void) s32 i; u8 j; struct WirelessLink_URoom *data = sWirelessLinkMain.uRoom; - s32 retVal = PLIST_0; + s32 retVal = PLIST_NONE; for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -3399,8 +3399,8 @@ static u8 HandlePlayerListUpdate(void) data->spawnPlayer->players[0].rfu = data->incomingParentList->players[i].rfu; data->spawnPlayer->players[0].timeoutCounter = 0; data->spawnPlayer->players[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->spawnPlayer->players[0].field_1B = 1; - return PLIST_4; + data->spawnPlayer->players[0].newPlayerCountdown = 1; + return PLIST_CONTACTED; } } for (j = 0; j < MAX_UNION_ROOM_LEADERS; j++) @@ -3415,21 +3415,21 @@ static u8 HandlePlayerListUpdate(void) if (ArePlayerDataDifferent(&data->playerList->players[j].rfu, &data->incomingChildList->players[i].rfu)) { data->playerList->players[j].rfu = data->incomingChildList->players[i].rfu; - data->playerList->players[j].field_1B = 64; - retVal = PLIST_1; + data->playerList->players[j].newPlayerCountdown = 64; + retVal = PLIST_NEW_PLAYER; } - else if (data->playerList->players[j].field_1B != 0) + else if (data->playerList->players[j].newPlayerCountdown != 0) { - data->playerList->players[j].field_1B--; - if (data->playerList->players[j].field_1B == 0) - retVal = PLIST_2; + data->playerList->players[j].newPlayerCountdown--; + if (data->playerList->players[j].newPlayerCountdown == 0) + retVal = PLIST_RECENT_UPDATE; } } else { data->playerList->players[j].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - data->playerList->players[j].field_1B = 0; - retVal = PLIST_2; + data->playerList->players[j].newPlayerCountdown = 0; + retVal = PLIST_RECENT_UPDATE; } data->playerList->players[j].timeoutCounter = 0; } @@ -3439,7 +3439,7 @@ static u8 HandlePlayerListUpdate(void) if (data->playerList->players[j].timeoutCounter >= 600) { data->playerList->players[j].groupScheduledAnim = UNION_ROOM_SPAWN_OUT; - retVal = PLIST_2; + retVal = PLIST_RECENT_UPDATE; } } else if (data->playerList->players[j].groupScheduledAnim == UNION_ROOM_SPAWN_OUT) @@ -3452,7 +3452,7 @@ static u8 HandlePlayerListUpdate(void) } for (i = 0; i < RFU_CHILD_MAX; i++) if (TryAddIncomingPlayerToList(&data->playerList->players[0], &data->incomingChildList->players[i], MAX_UNION_ROOM_LEADERS) != 0xFF) - retVal = PLIST_1; + retVal = PLIST_NEW_PLAYER; return retVal; } @@ -3858,7 +3858,7 @@ static void ClearRfuPlayerList(struct RfuPlayer *players, u8 count) players[i].timeoutCounter = 255; players[i].groupScheduledAnim = UNION_ROOM_SPAWN_NONE; players[i].useRedText = FALSE; - players[i].field_1B = 0; + players[i].newPlayerCountdown = 0; } } @@ -3948,7 +3948,7 @@ static u8 TryAddIncomingPlayerToList(struct RfuPlayer *players, struct RfuIncomi players[i].rfu = incomingPlayer->rfu; players[i].timeoutCounter = 0; players[i].groupScheduledAnim = UNION_ROOM_SPAWN_IN; - players[i].field_1B = 64; + players[i].newPlayerCountdown = 64; incomingPlayer->active = FALSE; return i; } From 7c5c41f23c0159667675d98dc1360f92097b34f9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 7 Oct 2021 16:19:02 -0400 Subject: [PATCH 283/762] Combine link slot length constants --- include/link_rfu.h | 20 +++++++------------- src/link_rfu_2.c | 14 +++++++------- src/link_rfu_3.c | 32 ++++++++++++++------------------ 3 files changed, 28 insertions(+), 38 deletions(-) diff --git a/include/link_rfu.h b/include/link_rfu.h index df2b80c4fad2..ae123c223c00 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -25,14 +25,10 @@ #define RFU_SERIAL_UNKNOWN 0x0000 // Unreferenced acceptable serial number. Gamecube? #define RFU_SERIAL_END 0xFFFF +#define COMM_SLOT_LENGTH 14 #define RECV_QUEUE_NUM_SLOTS 32 -#define RECV_QUEUE_SLOT_LENGTH (14 * MAX_RFU_PLAYERS) - #define SEND_QUEUE_NUM_SLOTS 40 -#define SEND_QUEUE_SLOT_LENGTH 14 - #define BACKUP_QUEUE_NUM_SLOTS 2 -#define BACKUP_QUEUE_SLOT_LENGTH 14 #define RFU_PACKET_SIZE 6 @@ -50,8 +46,6 @@ #define RFU_STATUS_CHILD_LEAVE 11 #define RFU_STATUS_ACK_JOIN_GROUP 12 -#define CHILD_DATA_LENGTH 14 - // Values for disconnectMode enum { RFU_DISCONNECT_NONE, @@ -143,7 +137,7 @@ struct RfuBlockSend struct RfuRecvQueue { - /* 0x000 */ u8 slots[RECV_QUEUE_NUM_SLOTS][RECV_QUEUE_SLOT_LENGTH]; + /* 0x000 */ u8 slots[RECV_QUEUE_NUM_SLOTS][COMM_SLOT_LENGTH * MAX_RFU_PLAYERS]; /* 0x8c0 */ vu8 recvSlot; /* 0x8c1 */ vu8 sendSlot; /* 0x8c2 */ vu8 count; @@ -152,7 +146,7 @@ struct RfuRecvQueue struct RfuSendQueue { - /* 0x000 */ u8 slots[SEND_QUEUE_NUM_SLOTS][SEND_QUEUE_SLOT_LENGTH]; + /* 0x000 */ u8 slots[SEND_QUEUE_NUM_SLOTS][COMM_SLOT_LENGTH]; /* 0x230 */ vu8 recvSlot; /* 0x231 */ vu8 sendSlot; /* 0x232 */ vu8 count; @@ -161,7 +155,7 @@ struct RfuSendQueue struct RfuBackupQueue { - /* 0x00 */ u8 slots[BACKUP_QUEUE_NUM_SLOTS][BACKUP_QUEUE_SLOT_LENGTH]; + /* 0x00 */ u8 slots[BACKUP_QUEUE_NUM_SLOTS][COMM_SLOT_LENGTH]; /* 0x1c */ vu8 recvSlot; /* 0x1d */ vu8 sendSlot; /* 0x1e */ vu8 count; @@ -180,8 +174,8 @@ struct RfuManager /* 0x00f */ u8 unused2; /* 0x010 */ u16 errorParam0; /* 0x012 */ u16 errorParam1; - /* 0x014 */ u8 childRecvBuffer[RFU_CHILD_MAX][CHILD_DATA_LENGTH]; - /* 0x04c */ u8 childSendBuffer[CHILD_DATA_LENGTH]; + /* 0x014 */ u8 childRecvBuffer[RFU_CHILD_MAX][COMM_SLOT_LENGTH]; + /* 0x04c */ u8 childSendBuffer[COMM_SLOT_LENGTH]; /* 0x05a */ u8 blockRequestType; /* 0x05b */ u8 blockSendAttempts; /* 0x05c */ bool8 blockReceived[MAX_RFU_PLAYERS]; @@ -211,7 +205,7 @@ struct RfuManager /* 0xc3c */ vu8 linkRecovered; /* 0xc3d */ u8 reconnectParentId; /* 0xc3e */ vu8 childSlot; - /* 0xc3f */ u8 childRecvQueue[RECV_QUEUE_SLOT_LENGTH]; + /* 0xc3f */ u8 childRecvQueue[COMM_SLOT_LENGTH * MAX_RFU_PLAYERS]; /* 0xc85 */ u8 leaveGroupStatus; /* 0xc86 */ u8 childRecvStatus; /* 0xc87 */ u8 recvCmds[MAX_RFU_PLAYERS][CMD_LENGTH - 1][2]; diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 63c54587a9f6..f2caef949976 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -579,7 +579,7 @@ static void MSCCallback_Child(u16 REQ_commandID) { s32 i; - for (i = 0; i < CHILD_DATA_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) gRfu.childSendBuffer[i] = 0; rfu_REQ_recvData(); @@ -922,7 +922,7 @@ static void ChildBuildSendCmd(u16 *sendCmd, u8 *dst) } else { - for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) dst[i] = 0; } } @@ -939,8 +939,8 @@ static bool32 RfuMain1_Child(void) for (i = 0; i < MAX_RFU_PLAYERS; i++) { for (j = 0; j < CMD_LENGTH - 1; j++) - gRecvCmds[i][j] = (recv[i * SEND_QUEUE_SLOT_LENGTH + (j * 2) + 1] << 8) - | recv[i * SEND_QUEUE_SLOT_LENGTH + (j * 2) + 0]; + gRecvCmds[i][j] = (recv[i * COMM_SLOT_LENGTH + (j * 2) + 1] << 8) + | recv[i * COMM_SLOT_LENGTH + (j * 2) + 0]; } RfuHandleReceiveCommand(0); if (lman.childClockSlave_flag == 0 && gRfu.disconnectMode != RFU_DISCONNECT_NONE) @@ -986,8 +986,8 @@ static void HandleSendFailure(u8 unused, u32 flags) for (j = 0; j < CMD_LENGTH - 1; j++) { temp = j * 2; - sResendBlock16[j + 1] = (payload[(SEND_QUEUE_SLOT_LENGTH - 2) * i + temp + 1] << 8) - | payload[(SEND_QUEUE_SLOT_LENGTH - 2) * i + temp + 0]; + sResendBlock16[j + 1] = (payload[(COMM_SLOT_LENGTH - 2) * i + temp + 1] << 8) + | payload[(COMM_SLOT_LENGTH - 2) * i + temp + 0]; } for (j = 0; j < CMD_LENGTH - 1; j++) { @@ -2953,7 +2953,7 @@ static void Debug_PrintStatus(void) } for (i = 0; i < RFU_CHILD_MAX; i++) { - for (j = 0; j < CHILD_DATA_LENGTH; j++) + for (j = 0; j < COMM_SLOT_LENGTH; j++) Debug_PrintNum(gRfu.childRecvBuffer[i][j], j * 2, i + 11, 2); } Debug_PrintString(sASCII_NowSlot, 1, 15); diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 162c23a5752e..b513ae4cb1db 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -317,10 +317,8 @@ void RfuRecvQueue_Reset(struct RfuRecvQueue *queue) for (i = 0; i < RECV_QUEUE_NUM_SLOTS; i++) { - for (j = 0; j < RECV_QUEUE_SLOT_LENGTH; j++) - { + for (j = 0; j < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; j++) queue->slots[i][j] = 0; - } } queue->sendSlot = 0; queue->recvSlot = 0; @@ -335,7 +333,7 @@ void RfuSendQueue_Reset(struct RfuSendQueue *queue) for (i = 0; i < SEND_QUEUE_NUM_SLOTS; i++) { - for (j = 0; j < SEND_QUEUE_SLOT_LENGTH; j++) + for (j = 0; j < COMM_SLOT_LENGTH; j++) queue->slots[i][j] = 0; } queue->sendSlot = 0; @@ -371,21 +369,21 @@ void RfuRecvQueue_Enqueue(struct RfuRecvQueue *queue, u8 *data) imeBak = REG_IME; REG_IME = 0; count = 0; - for (i = 0; i < RECV_QUEUE_SLOT_LENGTH; i += RECV_QUEUE_SLOT_LENGTH / MAX_RFU_PLAYERS) + for (i = 0; i < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; i += COMM_SLOT_LENGTH) { if (data[i] == 0 && data[i + 1] == 0) count++; } if (count != MAX_RFU_PLAYERS) { - for (i = 0; i < RECV_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; i++) queue->slots[queue->recvSlot][i] = data[i]; queue->recvSlot++; queue->recvSlot %= RECV_QUEUE_NUM_SLOTS; queue->count++; - for (i = 0; i < RECV_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; i++) data[i] = 0; } REG_IME = imeBak; @@ -405,22 +403,20 @@ void RfuSendQueue_Enqueue(struct RfuSendQueue *queue, u8 *data) { imeBak = REG_IME; REG_IME = 0; - for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) { if (data[i] != 0) break; } - if (i != SEND_QUEUE_SLOT_LENGTH) + if (i != COMM_SLOT_LENGTH) { - for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) - { + for (i = 0; i < COMM_SLOT_LENGTH; i++) queue->slots[queue->recvSlot][i] = data[i]; - } queue->recvSlot++; queue->recvSlot %= SEND_QUEUE_NUM_SLOTS; queue->count++; - for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) data[i] = 0; } REG_IME = imeBak; @@ -440,13 +436,13 @@ bool8 RfuRecvQueue_Dequeue(struct RfuRecvQueue *queue, u8 *src) REG_IME = 0; if (queue->recvSlot == queue->sendSlot || queue->full) { - for (i = 0; i < RECV_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; i++) src[i] = 0; REG_IME = imeBak; return FALSE; } - for (i = 0; i < RECV_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH * MAX_RFU_PLAYERS; i++) { src[i] = queue->slots[queue->sendSlot][i]; } @@ -467,7 +463,7 @@ bool8 RfuSendQueue_Dequeue(struct RfuSendQueue *queue, u8 *src) imeBak = REG_IME; REG_IME = 0; - for (i = 0; i < SEND_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) src[i] = queue->slots[queue->sendSlot][i]; queue->sendSlot++; @@ -487,7 +483,7 @@ void RfuBackupQueue_Enqueue(struct RfuBackupQueue *queue, const u8 *data) } else { - for (i = 0; i < BACKUP_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) queue->slots[queue->recvSlot][i] = data[i]; queue->recvSlot++; @@ -509,7 +505,7 @@ bool8 RfuBackupQueue_Dequeue(struct RfuBackupQueue *queue, u8 *src) if (src != NULL) { - for (i = 0; i < BACKUP_QUEUE_SLOT_LENGTH; i++) + for (i = 0; i < COMM_SLOT_LENGTH; i++) src[i] = queue->slots[queue->sendSlot][i]; } queue->sendSlot++; From 6012cf43cbfc27e37fedae41136e13a62ccdd61c Mon Sep 17 00:00:00 2001 From: IIMarckus Date: Fri, 8 Oct 2021 04:57:05 -0600 Subject: [PATCH 284/762] Kill Freenode. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7adbb3e2dada..c23965485fe7 100644 --- a/README.md +++ b/README.md @@ -28,4 +28,4 @@ Other disassembly and/or decompilation projects: ## Contacts -You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://kiwiirc.com/client/irc.freenode.net/?#pret). +You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://web.libera.chat/?#pret). From 31b501e7eb6ba15602dd13f6a2d728fca9f04ca5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 4 Oct 2021 10:21:03 -0400 Subject: [PATCH 285/762] Start misc battle documentation --- .gitignore | 1 + asm/macros/battle_anim_script.inc | 76 +-- data/battle_anim_scripts.s | 46 +- data/battle_scripts_1.s | 4 +- .../unused_water.bin} | Bin .../unused_water_gfx.png} | Bin include/battle.h | 46 +- include/battle_anim.h | 8 +- include/battle_arena.h | 1 - include/battle_gfx_sfx_util.h | 1 - include/battle_main.h | 14 +- include/battle_pyramid_bag.h | 1 - include/battle_transition.h | 107 ++-- include/battle_util.h | 58 +-- include/constants/battle.h | 13 + include/constants/battle_anim.h | 2 +- include/contest.h | 2 +- include/gym_leader_rematch.h | 6 +- include/recorded_battle.h | 6 +- src/battle_ai_script_commands.c | 2 +- src/battle_anim.c | 227 ++++----- src/battle_anim_effects_2.c | 8 +- src/battle_anim_effects_3.c | 4 +- src/battle_anim_ice.c | 4 +- src/battle_anim_mons.c | 75 +-- src/battle_anim_rock.c | 2 +- src/battle_anim_utility_funcs.c | 8 +- src/battle_anim_water.c | 7 +- src/battle_bg.c | 23 +- src/battle_controller_player.c | 14 +- src/battle_gfx_sfx_util.c | 19 +- src/battle_intro.c | 23 +- src/battle_main.c | 453 +++++++++-------- src/battle_message.c | 3 +- src/battle_script_commands.c | 116 ++--- src/battle_setup.c | 63 ++- src/battle_tower.c | 20 +- src/battle_util.c | 455 +++++++----------- src/battle_util2.c | 8 +- src/contest.c | 12 +- src/data/text/match_call_messages.h | 2 +- src/party_menu.c | 4 +- src/pokeball.c | 4 +- src/pokemon.c | 3 +- src/pokenav_match_call_data.c | 2 +- src/recorded_battle.c | 82 ++-- 46 files changed, 1003 insertions(+), 1032 deletions(-) rename graphics/{unknown/unknown_593FFC.bin => battle_anims/unused_water.bin} (100%) rename graphics/{unknown/unknown_593C80.png => battle_anims/unused_water_gfx.png} (100%) diff --git a/.gitignore b/.gitignore index 38c3e02d67a8..9286b03c46ff 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ porymap.project.cfg *.a .fuse_hidden* *.sna +*.diff diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc index 5426cdfba370..df8953a85ad1 100644 --- a/asm/macros/battle_anim_script.inc +++ b/asm/macros/battle_anim_script.inc @@ -34,20 +34,20 @@ .Lcreatetask_\@_2: .endm - .macro delay param0:req + .macro delay frames:req .byte 0x4 - .byte \param0 + .byte \frames .endm .macro waitforvisualfinish .byte 0x5 .endm - .macro hang1 + .macro nop .byte 0x6 .endm - .macro hang2 + .macro nop2 .byte 0x7 .endm @@ -79,30 +79,30 @@ .byte 0xd .endm - .macro call param0:req + .macro call ptr:req .byte 0xe - .4byte \param0 + .4byte \ptr .endm .macro return .byte 0xf .endm - .macro setarg param0:req, param1:req + .macro setarg argId:req, value:req .byte 0x10 - .byte \param0 - .2byte \param1 + .byte \argId + .2byte \value .endm - .macro choosetwoturnanim param0:req, param1:req + .macro choosetwoturnanim ptr1:req, ptr2:req .byte 0x11 - .4byte \param0 - .4byte \param1 + .4byte \ptr1 + .4byte \ptr2 .endm - .macro jumpifmoveturn param0:req, ptr:req + .macro jumpifmoveturn value:req, ptr:req .byte 0x12 - .byte \param0 + .byte \value .4byte \ptr .endm @@ -144,13 +144,13 @@ .byte \pan .endm - .macro panse_1B se:req, param1:req, param2:req, param3:req, param4:req + .macro panse se:req, currentPan:req, targetPan:req, incrementPan:req, delay:req .byte 0x1b .2byte \se - .byte \param1 - .byte \param2 - .byte \param3 - .byte \param4 + .byte \currentPan + .byte \targetPan + .byte \incrementPan + .byte \delay .endm .macro loopsewithpan se:req, pan:req, wait:req, times:req @@ -168,9 +168,9 @@ .byte \wait .endm - .macro setbldcnt param0:req + .macro setbldcnt bldcnt:req .byte 0x1e - .2byte \param0 + .2byte \bldcnt .endm .macro createsoundtask addr:req, argv:vararg @@ -186,10 +186,10 @@ .byte 0x20 .endm - .macro jumpargeq param0:req, param1:req, ptr:req + .macro jumpargeq argId:req, value:req, ptr:req .byte 0x21 - .byte \param0 - .2byte \param1 + .byte \argId + .2byte \value .4byte \ptr .endm @@ -208,29 +208,29 @@ .4byte \ptr .endm - .macro fadetobgfromset param0:req, param1:req, param2:req + .macro fadetobgfromset bgOpponent:req, bgPlayer:req, bgContest:req .byte 0x25 - .byte \param0 - .byte \param1 - .byte \param2 + .byte \bgOpponent + .byte \bgPlayer + .byte \bgContest .endm - .macro panse_26 se:req, param1:req, param2:req, param3:req, param4:req + .macro panse_adjustnone se:req, currentPan:req, targetPan:req, incrementPan:req, delay:req .byte 0x26 .2byte \se - .byte \param1 - .byte \param2 - .byte \param3 - .byte \param4 + .byte \currentPan + .byte \targetPan + .byte \incrementPan + .byte \delay .endm - .macro panse_27 se:req, param1:req, param2:req, param3:req, param4:req + .macro panse_adjustall se:req, currentPan:req, targetPan:req, incrementPan:req, delay:req .byte 0x27 .2byte \se - .byte \param1 - .byte \param2 - .byte \param3 - .byte \param4 + .byte \currentPan + .byte \targetPan + .byte \incrementPan + .byte \delay .endm .macro monbgprio_28 battler:req diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 83b1f3cea0e4..208bab8a6269 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -2234,7 +2234,7 @@ Move_ICY_WIND: playsewithpan SE_M_ICY_WIND, 0 waitbgfadein waitforvisualfinish - panse_1B SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call IcyWindSwirlingSnowballs delay 5 call IcyWindSwirlingSnowballs @@ -2551,7 +2551,7 @@ Move_SING: monbg ANIM_DEF_PARTNER createvisualtask AnimTask_MusicNotesRainbowBlend, 2 waitforvisualfinish - panse_1B SE_M_SING, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_SING, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 7, 0, 12 delay 5 createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 6, 1, 12 @@ -3460,7 +3460,7 @@ Move_HEAT_WAVE: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_FLYING_DIRT, 0, 6, 6, RGB_RED createvisualtask AnimTask_LoadSandstormBackground, 5, TRUE createvisualtask AnimTask_BlendBackground, 6, 6, RGB_RED - panse_1B SE_M_HEAT_WAVE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_HEAT_WAVE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 delay 4 createvisualtask AnimTask_MoveHeatWaveTargets, 5 delay 12 @@ -4232,7 +4232,7 @@ Move_GRASS_WHISTLE: waitforvisualfinish createvisualtask AnimTask_MusicNotesRainbowBlend, 2 waitforvisualfinish - panse_1B SE_M_GRASSWHISTLE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_GRASSWHISTLE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 7, 1, 0 delay 5 createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 6, 1, 0 @@ -4464,7 +4464,7 @@ Move_WATER_SPORT: delay 44 playsewithpan SE_M_SURF, SOUND_PAN_ATTACKER delay 44 - panse_1B SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 end Move_CALM_MIND: @@ -5475,7 +5475,7 @@ SolarBeamAbsorbEffect: return SolarBeamUnleash: call SetSolarbeamBg - panse_1B SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createvisualtask AnimTask_CreateSmallSolarbeamOrbs, 5 createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 delay 4 @@ -5527,7 +5527,7 @@ BlizzardContinue: createvisualtask AnimTask_StartSlidingBg, 5, -2304, 0, 1, -1 waitbgfadein waitforvisualfinish - panse_1B SE_M_BLIZZARD, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_BLIZZARD, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call BlizzardIceCrystals call BlizzardIceCrystals playsewithpan SE_M_BLIZZARD2, SOUND_PAN_TARGET @@ -5573,7 +5573,7 @@ Move_POWDER_SNOW: monbg ANIM_DEF_PARTNER createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 1, 0, 3, RGB_BLACK waitforvisualfinish - panse_1B SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call PowderSnowSnowballs call PowderSnowSnowballs playsewithpan SE_M_GUST2, SOUND_PAN_TARGET @@ -5610,7 +5610,7 @@ Move_HYDRO_PUMP: setalpha 12, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1 delay 6 - panse_1B SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createvisualtask AnimTask_StartSinAnimTimer, 5, 100 call HydroPumpBeams call HydroPumpBeams @@ -5655,7 +5655,7 @@ Move_SIGNAL_BEAM: loadspritegfx ANIM_TAG_DUCK createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 25, 1 delay 6 - panse_1B SE_M_BUBBLE_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 + panse SE_M_BUBBLE_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 createvisualtask AnimTask_StartSinAnimTimer, 5, 100 call SignalBeamOrbs call SignalBeamOrbs @@ -6297,7 +6297,7 @@ Move_CRABHAMMER: Move_SURF: createvisualtask AnimTask_CreateSurfWave, 2, FALSE delay 24 - panse_1B SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 waitforvisualfinish end @@ -6309,7 +6309,7 @@ Move_FLAMETHROWER: createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 createvisualtask AnimTask_StartSinAnimTimer, 5, 100 - panse_1B SE_M_FLAMETHROWER, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_FLAMETHROWER, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call FlamethrowerCreateFlames call FlamethrowerCreateFlames call FlamethrowerCreateFlames @@ -6722,7 +6722,7 @@ Move_SUNNY_DAY: setalpha 13, 3 createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 1, 0, 6, RGB_WHITE waitforvisualfinish - panse_26 SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 + panse_adjustnone SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 call SunnyDayLightRay call SunnyDayLightRay call SunnyDayLightRay @@ -7599,7 +7599,7 @@ Move_MIMIC: setalpha 11, 5 monbg_22 ANIM_DEF_PARTNER monbgprio_29 - panse_1B SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 + panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 createvisualtask AnimTask_ShrinkTargetCopy, 5, 128, 24 delay 15 createsprite gMimicOrbSpriteTemplate, ANIM_TARGET, 2, -12, 24 @@ -7943,7 +7943,7 @@ Move_PERISH_SONG: createsprite gPerishSongMusicNoteSpriteTemplate, ANIM_ATTACKER, 4, 15, 0, 240 createsprite gPerishSongMusicNote2SpriteTemplate, ANIM_ATTACKER, 4, 15, 0, 0 delay 20 - panse_1B SE_M_PERISH_SONG, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_PERISH_SONG, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 delay 80 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 16, RGB_BLACK createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 4, 0 @@ -8150,7 +8150,7 @@ Move_WISH: loadspritegfx ANIM_TAG_SPARKLE_2 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 10, RGB_BLACK waitforvisualfinish - panse_27 SE_M_REFLECT, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 + panse_adjustall SE_M_REFLECT, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 createsprite gWishStarSpriteTemplate, ANIM_ATTACKER, 40 waitforvisualfinish delay 60 @@ -8591,7 +8591,7 @@ ArmThrustLeft: goto ArmThrustContinue Move_MUDDY_WATER: - panse_1B SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createvisualtask AnimTask_CreateSurfWave, 2, TRUE waitforvisualfinish end @@ -8689,7 +8689,7 @@ Move_MUD_SHOT: createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 createvisualtask AnimTask_StartSinAnimTimer, 5, 100 - panse_1B SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 + panse SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 call MudShotOrbs call MudShotOrbs call MudShotOrbs @@ -8717,7 +8717,7 @@ Move_METEOR_MASH: loadspritegfx ANIM_TAG_GOLD_STARS loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_HANDS_AND_FEET - panse_1B SE_M_BARRIER, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +3, 0 + panse SE_M_BARRIER, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +3, 0 fadetobg BG_COSMIC waitbgfadein waitforvisualfinish @@ -8860,7 +8860,7 @@ Move_METAL_SOUND: waitforvisualfinish end MetalSoundRings: - panse_1B SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 createsprite gMetalSoundSpriteTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0 delay 2 return @@ -9154,7 +9154,7 @@ Move_ROCK_TOMB: Move_SILVER_WIND: loadspritegfx ANIM_TAG_SPARKLE_6 - panse_1B SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 playsewithpan SE_M_MORNING_SUN, 0 delay 0 monbg ANIM_DEF_PARTNER @@ -9368,7 +9368,7 @@ Move_HYDRO_CANNON: delay 10 createvisualtask AnimTask_InvertScreenColor, 2, 257, 257, 257 delay 30 - panse_1B SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 + panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call HydroCannonBeam createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 10, 0, 40, 1 createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, ANIM_TARGET, 0 @@ -10296,7 +10296,7 @@ Status_Nightmare: General_CastformChange: createvisualtask AnimTask_IsMonInvisible, 2 - jumpreteq 1, CastformChangeSkipAnim + jumpreteq TRUE, CastformChangeSkipAnim goto CastformChangeContinue CastformChangeContinue: monbg ANIM_ATTACKER diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 951558234b05..203ea312562e 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -2829,10 +2829,12 @@ BattleScript_HandleFaintedMon:: jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother +@ Yes/No for sending out a new PokĂ©mon, when sending out is optional printstring STRINGID_USENEXTPKMN setbyte gBattleCommunication, 0 yesnobox jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0, BattleScript_FaintedMonTryChooseAnother +@ Player said no, try to run jumpifplayerran BattleScript_FaintedMonEnd printstring STRINGID_CANTESCAPE2 BattleScript_FaintedMonTryChooseAnother:: @@ -2904,7 +2906,7 @@ BattleScript_HandleFaintedMonLoop:: hidepartystatussummary BS_FAINTED switchinanim BS_FAINTED, FALSE waitstate - switchineffects 5 + switchineffects BS_UNK_5 jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_HandleFaintedMonLoop BattleScript_HandleFaintedMonMultipleEnd:: end2 diff --git a/graphics/unknown/unknown_593FFC.bin b/graphics/battle_anims/unused_water.bin similarity index 100% rename from graphics/unknown/unknown_593FFC.bin rename to graphics/battle_anims/unused_water.bin diff --git a/graphics/unknown/unknown_593C80.png b/graphics/battle_anims/unused_water_gfx.png similarity index 100% rename from graphics/unknown/unknown_593C80.png rename to graphics/battle_anims/unused_water_gfx.png diff --git a/include/battle.h b/include/battle.h index e32e621cc47f..5ccff8ce332a 100644 --- a/include/battle.h +++ b/include/battle.h @@ -32,7 +32,6 @@ #define B_ACTION_EXEC_SCRIPT 10 #define B_ACTION_TRY_FINISH 11 #define B_ACTION_FINISHED 12 - #define B_ACTION_CANCEL_PARTNER 12 // when choosing an action #define B_ACTION_NOTHING_FAINTED 13 // when choosing an action #define B_ACTION_NONE 0xFF @@ -50,14 +49,17 @@ #define MSG_DISPLAY 7 #define BATTLE_COMMUNICATION_ENTRIES_COUNT 8 -#define MOVE_TARGET_SELECTED 0x0 -#define MOVE_TARGET_DEPENDS 0x1 -#define MOVE_TARGET_USER_OR_SELECTED 0x2 -#define MOVE_TARGET_RANDOM 0x4 -#define MOVE_TARGET_BOTH 0x8 -#define MOVE_TARGET_USER 0x10 -#define MOVE_TARGET_FOES_AND_ALLY 0x20 -#define MOVE_TARGET_OPPONENTS_FIELD 0x40 +#define MOVE_TARGET_SELECTED 0 +#define MOVE_TARGET_DEPENDS (1 << 0) +#define MOVE_TARGET_USER_OR_SELECTED (1 << 1) +#define MOVE_TARGET_RANDOM (1 << 2) +#define MOVE_TARGET_BOTH (1 << 3) +#define MOVE_TARGET_USER (1 << 4) +#define MOVE_TARGET_FOES_AND_ALLY (1 << 5) +#define MOVE_TARGET_OPPONENTS_FIELD (1 << 6) + +// For the second argument of GetMoveTarget, when no target override is needed +#define NO_TARGET_OVERRIDE 0 #define BATTLE_BUFFER_LINK_SIZE 0x1000 @@ -115,7 +117,7 @@ struct ProtectStruct u32 confusionSelfDmg:1; u32 targetNotAffected:1; u32 chargingTurn:1; - u32 fleeFlag:2; // For RunAway and Smoke Ball. + u32 fleeType:2; // 0: Normal, 1: FLEE_ITEM, 2: FLEE_ABILITY u32 usedImprisonedMove:1; u32 loveImmobility:1; u32 usedDisabledMove:1; @@ -426,7 +428,7 @@ struct BattleStruct u8 unused_6[3]; u8 givenExpMons; // Bits for enemy party's pokemon 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[MAX_BATTLERS_COUNT][16]; + u16 castformPalette[NUM_CASTFORM_FORMS][16]; union { struct LinkBattlerHeader linkBattlerHeader; u32 battleVideo[2]; @@ -447,12 +449,16 @@ struct BattleStruct u8 alreadyStatusedMoveAttempt; // As bits for battlers; For example when using Thunder Wave on an already paralyzed pokemon. }; -#define GET_MOVE_TYPE(move, typeArg) \ -{ \ - if (gBattleStruct->dynamicMoveType) \ - typeArg = gBattleStruct->dynamicMoveType & 0x3F; \ - else \ - typeArg = gBattleMoves[move].type; \ +#define F_DYNAMIC_TYPE_1 (1 << 6) +#define F_DYNAMIC_TYPE_2 (1 << 7) +#define DYNAMIC_TYPE_MASK (F_DYNAMIC_TYPE_1 - 1) + +#define GET_MOVE_TYPE(move, typeArg) \ +{ \ + if (gBattleStruct->dynamicMoveType) \ + typeArg = gBattleStruct->dynamicMoveType & DYNAMIC_TYPE_MASK; \ + else \ + typeArg = gBattleMoves[move].type; \ } #define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY) @@ -502,7 +508,7 @@ struct BattleScripting u8 reshowMainState; u8 reshowHelperState; u8 levelUpHP; - u8 windowsType; // 0 - normal, 1 - battle arena + u8 windowsType; // B_WIN_TYPE_* u8 multiplayerId; u8 specialTrainerBattleType; }; @@ -624,8 +630,8 @@ extern u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT]; extern u32 gBattleTypeFlags; extern u8 gBattleTerrain; extern u32 gUnusedFirstBattleVar1; -extern u8 *gUnknown_0202305C; -extern u8 *gUnknown_02023060; +extern u8 *gBattleAnimBgTileBuffer; +extern u8 *gBattleAnimBgTilemapBuffer; extern u8 gBattleBufferA[MAX_BATTLERS_COUNT][0x200]; extern u8 gBattleBufferB[MAX_BATTLERS_COUNT][0x200]; extern u8 gActiveBattler; diff --git a/include/battle_anim.h b/include/battle_anim.h index ad160e74d80f..3f73f1daf621 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -64,12 +64,12 @@ s8 BattleAnimAdjustPanning(s8 pan); s8 BattleAnimAdjustPanning2(s8 pan); s16 KeepPanInRange(s16 a, int oldPan); s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan); -void sub_80A4720(u16 a, u16 *b, u32 c, u8 d); +void RelocateBattleBgPal(u16 paletteNum, u16 *dest, u32 offset, bool8 largeScreen); void ResetBattleAnimBg(bool8); // battle_intro.c void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value); -void sub_8118FBC(int bgId, u8 arg1, u8 arg2, u8 battlerPosition, u8 arg4, u8 *arg5, u16 *arg6, u16 arg7); +void DrawBattlerOnBg(int bgId, u8 x, u8 y, u8 battlerPosition, u8 paletteId, u8 *tiles, u16 *tilemap, u16 tilesOffset); void HandleIntroSlide(u8 terrainId); int GetAnimBgAttribute(u8 bgId, u8 attributeId); @@ -107,7 +107,7 @@ void AnimTranslateLinear_WaitEnd(struct Sprite *sprite); u8 GetBattlerSpriteBGPriority(u8 battlerId); void *LoadPointerFromVars(s16 bottom, s16 top); void StorePointerInVars(s16 *bottom, s16 *top, const void *ptr); -void sub_80A8278(void); +void InitPrioritiesForVisibleBattlers(void); void GetBattleAnimBg1Data(struct BattleAnimBgData*); void GetBattleAnimBgData(struct BattleAnimBgData*, u32 arg1); u8 GetBattlerSpriteSubpriority(u8 battlerId); @@ -125,7 +125,7 @@ u8 AnimDummyReturnArg(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); void obj_delete_but_dont_free_vram(struct Sprite*); u8 CreateInvisibleSpriteCopy(int, u8, int); -void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void*, u32); +void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void*, bool32); void AnimLoadCompressedBgGfx(u32, const u32*, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *); diff --git a/include/battle_arena.h b/include/battle_arena.h index b55fc39b0039..c9a18ef61813 100644 --- a/include/battle_arena.h +++ b/include/battle_arena.h @@ -7,7 +7,6 @@ void BattleArena_InitPoints(void); void BattleArena_AddMindPoints(u8 battler); void BattleArena_AddSkillPoints(u8 battler); void BattleArena_DeductMindPoints(u8 battler, u16 stringId); -void sub_81A586C(u8 battler); void DrawArenaRefereeTextBox(void); void EraseArenaRefereeTextBox(void); diff --git a/include/battle_gfx_sfx_util.h b/include/battle_gfx_sfx_util.h index a367bc043ac4..383facd69422 100644 --- a/include/battle_gfx_sfx_util.h +++ b/include/battle_gfx_sfx_util.h @@ -18,7 +18,6 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId); void DecompressTrainerBackPic(u16 backPicId, u8 battlerId); void BattleGfxSfxDummy3(u8 gender); void FreeTrainerFrontPicPalette(u16 frontPicId); -void sub_805DFFC(void); bool8 BattleLoadAllHealthBoxesGfx(u8 state); void LoadBattleBarGfx(u8 arg0); bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId); diff --git a/include/battle_main.h b/include/battle_main.h index 78cf353dfc50..f3e961b7bf00 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -7,7 +7,8 @@ struct TrainerMoney u8 value; }; -struct UnknownPokemonStruct4 +// For displaying a multi battle partner's PokĂ©mon in the party menu +struct MultiPartnerMenuPokemon { /*0x00*/ u16 species; /*0x02*/ u16 heldItem; @@ -46,8 +47,6 @@ struct UnknownPokemonStruct4 void CB2_InitBattle(void); void BattleMainCB2(void); void CB2_QuitRecordedBattle(void); -void sub_8038528(struct Sprite* sprite); -void sub_8038A04(void); // unused void VBlankCB_Battle(void); void SpriteCB_VsLetterDummy(struct Sprite *sprite); void SpriteCB_VsLetterInit(struct Sprite *sprite); @@ -59,13 +58,12 @@ void SpriteCallbackDummy_2(struct Sprite *sprite); void SpriteCB_FaintOpponentMon(struct Sprite *sprite); void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite); void SpriteCb_HideAsMoveTarget(struct Sprite *sprite); -void SpriteCb_OpponentMonFromBall(struct Sprite *sprite); +void SpriteCB_OpponentMonFromBall(struct Sprite *sprite); void SpriteCB_BattleSpriteStartSlideLeft(struct Sprite *sprite); void SpriteCB_FaintSlideAnim(struct Sprite *sprite); void DoBounceEffect(u8 battlerId, u8 b, s8 c, s8 d); void EndBounceEffect(u8 battlerId, bool8 b); -void SpriteCb_PlayerMonFromBall(struct Sprite *sprite); -void sub_8039E60(struct Sprite *sprite); +void SpriteCB_PlayerMonFromBall(struct Sprite *sprite); void SpriteCB_TrainerThrowObject(struct Sprite *sprite); void sub_8039E9C(struct Sprite *sprite); void BeginBattleIntroDummy(void); @@ -82,9 +80,9 @@ void RunBattleScriptCommands(void); bool8 TryRunFromBattle(u8 battlerId); void SpecialStatusesClear(void); -extern struct UnknownPokemonStruct4 gMultiPartnerParty[MULTI_PARTY_SIZE]; +extern struct MultiPartnerMenuPokemon gMultiPartnerParty[MULTI_PARTY_SIZE]; -extern const struct SpriteTemplate gUnknown_0831AC88; +extern const struct SpriteTemplate gUnusedBattleInitSprite; extern const struct OamData gOamData_BattleSpriteOpponentSide; extern const struct OamData gOamData_BattleSpritePlayerSide; extern const u8 gTypeEffectiveness[336]; diff --git a/include/battle_pyramid_bag.h b/include/battle_pyramid_bag.h index b8b3eb20fb08..258ca56b215d 100644 --- a/include/battle_pyramid_bag.h +++ b/include/battle_pyramid_bag.h @@ -63,7 +63,6 @@ void CB2_PyramidBagMenuFromStartMenu(void); void CB2_ReturnToPyramidBagMenu(void); void UpdatePyramidBagList(void); void UpdatePyramidBagCursorPos(void); -void sub_81C4EFC(void); void GoToBattlePyramidBagMenu(u8 location, void (*exitCallback)(void)); void Task_CloseBattlePyramidBagMessage(u8 taskId); void TryStoreHeldItemsInPyramidBag(void); diff --git a/include/battle_transition.h b/include/battle_transition.h index a33032fb439f..784c5f968fb0 100644 --- a/include/battle_transition.h +++ b/include/battle_transition.h @@ -11,8 +11,7 @@ void GetBg0TilesDst(u16 **tilemap, u16 **tileset); extern const struct SpritePalette gSpritePalette_Pokeball; -enum // TRANSITION_MUGSHOT -{ +enum { MUGSHOT_SIDNEY, MUGSHOT_PHOEBE, MUGSHOT_GLACIA, @@ -21,52 +20,64 @@ enum // TRANSITION_MUGSHOT MUGSHOTS_COUNT }; -// credits for the names go to Dyskinesia, Tetrable and Farore -// names are naturally subject to change +enum { + B_TRANSITION_BLUR, + B_TRANSITION_SWIRL, + B_TRANSITION_SHUFFLE, + B_TRANSITION_BIG_POKEBALL, + B_TRANSITION_POKEBALLS_TRAIL, + B_TRANSITION_CLOCKWISE_BLACKFADE, + B_TRANSITION_RIPPLE, + B_TRANSITION_WAVE, + B_TRANSITION_SLICE, + B_TRANSITION_WHITEFADE, + B_TRANSITION_GRID_SQUARES, + B_TRANSITION_SHARDS, + B_TRANSITION_SIDNEY, + B_TRANSITION_PHOEBE, + B_TRANSITION_GLACIA, + B_TRANSITION_DRAKE, + B_TRANSITION_CHAMPION, + B_TRANSITION_AQUA, // Here below added in Emerald + B_TRANSITION_MAGMA, + B_TRANSITION_REGICE, + B_TRANSITION_REGISTEEL, + B_TRANSITION_REGIROCK, + B_TRANSITION_KYOGRE, + B_TRANSITION_GROUDON, + B_TRANSITION_RAYQUAZA, + B_TRANSITION_SHRED_SPLIT, + B_TRANSITION_BLACKHOLE1, + B_TRANSITION_BLACKHOLE2, + B_TRANSITION_RECTANGULAR_SPIRAL, + B_TRANSITION_FRONTIER_LOGO_WIGGLE, + B_TRANSITION_FRONTIER_LOGO_WAVE, + B_TRANSITION_FRONTIER_SQUARES, + B_TRANSITION_FRONTIER_SQUARES_SCROLL, + B_TRANSITION_FRONTIER_SQUARES_SPIRAL, + B_TRANSITION_FRONTIER_CIRCLES_MEET, + B_TRANSITION_FRONTIER_CIRCLES_CROSS, + B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL, + B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL, + B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ, + B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL_IN_SEQ, + B_TRANSITION_COUNT +}; -#define B_TRANSITION_BLUR 0 -#define B_TRANSITION_SWIRL 1 -#define B_TRANSITION_SHUFFLE 2 -#define B_TRANSITION_BIG_POKEBALL 3 -#define B_TRANSITION_POKEBALLS_TRAIL 4 -#define B_TRANSITION_CLOCKWISE_BLACKFADE 5 -#define B_TRANSITION_RIPPLE 6 -#define B_TRANSITION_WAVE 7 -#define B_TRANSITION_SLICE 8 -#define B_TRANSITION_WHITEFADE 9 -#define B_TRANSITION_GRID_SQUARES 10 -#define B_TRANSITION_SHARDS 11 -#define B_TRANSITION_SIDNEY 12 -#define B_TRANSITION_PHOEBE 13 -#define B_TRANSITION_GLACIA 14 -#define B_TRANSITION_DRAKE 15 -#define B_TRANSITION_CHAMPION 16 -// added in Emerald -#define B_TRANSITION_AQUA 17 -#define B_TRANSITION_MAGMA 18 -#define B_TRANSITION_REGICE 19 -#define B_TRANSITION_REGISTEEL 20 -#define B_TRANSITION_REGIROCK 21 -#define B_TRANSITION_KYOGRE 22 -#define B_TRANSITION_GROUDON 23 -#define B_TRANSITION_RAYQUAZA 24 -#define B_TRANSITION_SHRED_SPLIT 25 -#define B_TRANSITION_BLACKHOLE1 26 -#define B_TRANSITION_BLACKHOLE2 27 -#define B_TRANSITION_RECTANGULAR_SPIRAL 28 -#define B_TRANSITION_FRONTIER_LOGO_WIGGLE 29 -#define B_TRANSITION_FRONTIER_LOGO_WAVE 30 -#define B_TRANSITION_FRONTIER_SQUARES 31 -#define B_TRANSITION_FRONTIER_SQUARES_SCROLL 32 -#define B_TRANSITION_FRONTIER_SQUARES_SPIRAL 33 -#define B_TRANSITION_FRONTIER_CIRCLES_MEET 34 -#define B_TRANSITION_FRONTIER_CIRCLES_CROSS 35 -#define B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL 36 -#define B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL 37 -#define B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ 38 -#define B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ 39 -#define B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ 40 -#define B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL_IN_SEQ 41 -#define B_TRANSITION_COUNT 42 +// IDs for GetSpecialBattleTransition +enum { + B_TRANSITION_GROUP_B_TOWER, + B_TRANSITION_GROUP_B_DOME = 3, + B_TRANSITION_GROUP_B_PALACE, + B_TRANSITION_GROUP_B_ARENA, + B_TRANSITION_GROUP_B_FACTORY, + B_TRANSITION_GROUP_B_PIKE, + B_TRANSITION_GROUP_B_PYRAMID = 10, + B_TRANSITION_GROUP_TRAINER_HILL, + B_TRANSITION_GROUP_SECRET_BASE, + B_TRANSITION_GROUP_E_READER, +}; #endif // GUARD_BATTLE_TRANSITION_H diff --git a/include/battle_util.h b/include/battle_util.h index d4e2a23f8792..914e44c0495b 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -6,39 +6,43 @@ #define MOVE_LIMITATION_DISABLED (1 << 2) #define MOVE_LIMITATION_TORMENTED (1 << 3) #define MOVE_LIMITATION_TAUNT (1 << 4) -#define MOVE_LIMITATION_IMPRISON (1 << 5) +#define MOVE_LIMITATION_IMPRISON (1 << 5) +#define MOVE_LIMITATIONS_ALL 0xFF -#define ABILITYEFFECT_ON_SWITCHIN 0x0 -#define ABILITYEFFECT_ENDTURN 0x1 -#define ABILITYEFFECT_MOVES_BLOCK 0x2 -#define ABILITYEFFECT_ABSORBING 0x3 -#define ABILITYEFFECT_ON_DAMAGE 0x4 -#define ABILITYEFFECT_IMMUNITY 0x5 -#define ABILITYEFFECT_FORECAST 0x6 -#define ABILITYEFFECT_SYNCHRONIZE 0x7 -#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8 -#define ABILITYEFFECT_INTIMIDATE1 0x9 -#define ABILITYEFFECT_INTIMIDATE2 0xA -#define ABILITYEFFECT_TRACE 0xB -#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC -#define ABILITYEFFECT_CHECK_BATTLER_SIDE 0xD -#define ABILITYEFFECT_FIELD_SPORT 0xE -#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 0xF -#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10 -#define ABILITYEFFECT_COUNT_BATTLER_SIDE 0x11 -#define ABILITYEFFECT_COUNT_ON_FIELD 0x12 -#define ABILITYEFFECT_CHECK_ON_FIELD 0x13 -#define ABILITYEFFECT_MUD_SPORT 0xFD -#define ABILITYEFFECT_WATER_SPORT 0xFE -#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF +#define ABILITYEFFECT_ON_SWITCHIN 0 +#define ABILITYEFFECT_ENDTURN 1 +#define ABILITYEFFECT_MOVES_BLOCK 2 +#define ABILITYEFFECT_ABSORBING 3 +#define ABILITYEFFECT_ON_DAMAGE 4 +#define ABILITYEFFECT_IMMUNITY 5 +#define ABILITYEFFECT_FORECAST 6 +#define ABILITYEFFECT_SYNCHRONIZE 7 +#define ABILITYEFFECT_ATK_SYNCHRONIZE 8 +#define ABILITYEFFECT_INTIMIDATE1 9 +#define ABILITYEFFECT_INTIMIDATE2 10 +#define ABILITYEFFECT_TRACE 11 +#define ABILITYEFFECT_CHECK_OTHER_SIDE 12 +#define ABILITYEFFECT_CHECK_BATTLER_SIDE 13 +#define ABILITYEFFECT_FIELD_SPORT 14 +#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 15 +#define ABILITYEFFECT_COUNT_OTHER_SIDE 16 +#define ABILITYEFFECT_COUNT_BATTLER_SIDE 17 +#define ABILITYEFFECT_COUNT_ON_FIELD 18 +#define ABILITYEFFECT_CHECK_ON_FIELD 19 +#define ABILITYEFFECT_MUD_SPORT 253 +#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 ITEMEFFECT_ON_SWITCH_IN 0x0 -#define ITEMEFFECT_MOVE_END 0x3 -#define ITEMEFFECT_KINGSROCK_SHELLBELL 0x4 +// For the first argument of ItemBattleEffects, to deteremine which block of item effects to try +#define ITEMEFFECT_ON_SWITCH_IN 0 +#define ITEMEFFECT_NORMAL 1 +#define ITEMEFFECT_DUMMY 2 // Unused, empty +#define ITEMEFFECT_MOVE_END 3 +#define ITEMEFFECT_KINGSROCK_SHELLBELL 4 #define WEATHER_HAS_EFFECT ((!ABILITY_ON_FIELD(ABILITY_CLOUD_NINE) && !ABILITY_ON_FIELD(ABILITY_AIR_LOCK))) #define WEATHER_HAS_EFFECT2 ((!ABILITY_ON_FIELD2(ABILITY_CLOUD_NINE) && !ABILITY_ON_FIELD2(ABILITY_AIR_LOCK))) diff --git a/include/constants/battle.h b/include/constants/battle.h index f1ce757e749d..62e7cbbfa31f 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -306,4 +306,17 @@ #define B_WAIT_TIME_MED 48 #define B_WAIT_TIME_SHORT 32 +#define CASTFORM_NORMAL 0 +#define CASTFORM_FIRE 1 +#define CASTFORM_WATER 2 +#define CASTFORM_ICE 3 +#define NUM_CASTFORM_FORMS 4 +#define CASTFORM_SUBSTITUTE (1 << 7) + +#define FLEE_ITEM 1 +#define FLEE_ABILITY 2 + +#define B_WIN_TYPE_NORMAL 0 +#define B_WIN_TYPE_ARENA 1 + #endif // GUARD_CONSTANTS_BATTLE_H diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 4622876cc07f..177ea04bb144 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -318,7 +318,7 @@ #define SOUND_PAN_TARGET 63 // move background ids -#define BG_DARK_ 0 // the same as BG_DARK but is unused +#define BG_NONE 0 // the same as BG_DARK but is unused #define BG_DARK 1 #define BG_GHOST 2 #define BG_PSYCHIC 3 diff --git a/include/contest.h b/include/contest.h index 9bac63eda57f..e7acb5a113d3 100644 --- a/include/contest.h +++ b/include/contest.h @@ -294,7 +294,7 @@ struct ContestResources u8 * contestBgTilemaps[CONTESTANT_COUNT]; void * boxBlinkTiles1; void * boxBlinkTiles2; - void * field_3c; + void * animBgTileBuffer; }; #define eContest (*gContestResources->contest) diff --git a/include/gym_leader_rematch.h b/include/gym_leader_rematch.h index dd9ead8b7a70..b31fb5e22863 100644 --- a/include/gym_leader_rematch.h +++ b/include/gym_leader_rematch.h @@ -66,7 +66,7 @@ enum { REMATCH_TRENT, REMATCH_SAWYER, REMATCH_KIRA_AND_DAN, - REMATCH_WALLY_3, // Entries above WALLY are considered normal trainers, from Wally below are special trainers + REMATCH_WALLY_VR, // Entries above WALLY are considered normal trainers, from Wally below are special trainers REMATCH_ROXANNE, REMATCH_BRAWLY, REMATCH_WATTSON, @@ -75,7 +75,7 @@ enum { REMATCH_WINONA, REMATCH_TATE_AND_LIZA, REMATCH_JUAN, - REMATCH_SIDNEY, // Entries below SIDNEY are considered part of REMATCH_ELITE_FOUR_ENTRIES. + REMATCH_SIDNEY, // Entries from SIDNEY below are considered part of REMATCH_ELITE_FOUR_ENTRIES. REMATCH_PHOEBE, REMATCH_GLACIA, REMATCH_DRAKE, @@ -83,7 +83,7 @@ enum { REMATCH_TABLE_ENTRIES // The total number of rematch entries. Must be last in enum }; -#define REMATCH_SPECIAL_TRAINER_START REMATCH_WALLY_3 +#define REMATCH_SPECIAL_TRAINER_START REMATCH_WALLY_VR #define REMATCH_ELITE_FOUR_ENTRIES REMATCH_SIDNEY void UpdateGymLeaderRematch(void); diff --git a/include/recorded_battle.h b/include/recorded_battle.h index 5ae4ac12d5f7..8ea3927743e6 100644 --- a/include/recorded_battle.h +++ b/include/recorded_battle.h @@ -9,7 +9,7 @@ extern u8 gRecordedBattleMultiplayerId; #define B_RECORD_MODE_PLAYBACK 2 void RecordedBattle_Init(u8 arg0); -void sub_8184E58(void); +void RecordedBattle_SetTrainerInfo(void); void RecordedBattle_SetBattlerAction(u8 battlerId, u8 action); void RecordedBattle_ClearBattlerAction(u8 battlerId, u8 bytesToClear); u8 RecordedBattle_GetBattlerAction(u8 battlerId); @@ -30,8 +30,8 @@ u8 GetTextSpeedInRecordedBattle(void); void RecordedBattle_CopyBattlerMoves(void); void sub_818603C(u8 arg0); u32 GetAiScriptsInRecordedBattle(void); -void sub_8186444(void); -bool8 sub_8186450(void); +void RecordedBattle_SetPlaybackFinished(void); +bool8 RecordedBattle_CanStopPlayback(void); void GetRecordedBattleRecordMixFriendName(u8 *dst); u8 GetRecordedBattleRecordMixFriendClass(void); u8 GetRecordedBattleApprenticeId(void); diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index b1b62fd5b47f..6fdfb0d7aeb1 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -334,7 +334,7 @@ void BattleAI_SetupAIData(u8 defaultScoreMoves) defaultScoreMoves >>= 1; } - moveLimitations = CheckMoveLimitations(gActiveBattler, 0, 0xFF); + moveLimitations = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); // Ignore moves that aren't possible to use. for (i = 0; i < MAX_MON_MOVES; i++) diff --git a/src/battle_anim.c b/src/battle_anim.c index 80d511f4c7df..6cdbed2b745f 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -27,15 +27,14 @@ extern struct MusicPlayerInfo gMPlayInfo_SE2; extern const u16 gMovesWithQuietBGM[]; extern const u8 *const gBattleAnims_Moves[]; -// this file's functions static void ScriptCmd_loadspritegfx(void); static void ScriptCmd_unloadspritegfx(void); static void ScriptCmd_createsprite(void); static void ScriptCmd_createvisualtask(void); static void ScriptCmd_delay(void); static void ScriptCmd_waitforvisualfinish(void); -static void ScriptCmd_hang1(void); -static void ScriptCmd_hang2(void); +static void ScriptCmd_nop(void); +static void ScriptCmd_nop2(void); static void ScriptCmd_end(void); static void ScriptCmd_playse(void); static void ScriptCmd_monbg(void); @@ -55,7 +54,7 @@ static void ScriptCmd_waitbgfadein(void); static void ScriptCmd_changebg(void); static void ScriptCmd_playsewithpan(void); static void ScriptCmd_setpan(void); -static void ScriptCmd_panse_1B(void); +static void ScriptCmd_panse(void); static void ScriptCmd_loopsewithpan(void); static void ScriptCmd_waitplaysewithpan(void); static void ScriptCmd_setbldcnt(void); @@ -66,8 +65,8 @@ static void ScriptCmd_monbg_22(void); static void ScriptCmd_clearmonbg_23(void); static void ScriptCmd_jumpifcontest(void); static void ScriptCmd_fadetobgfromset(void); -static void ScriptCmd_panse_26(void); -static void ScriptCmd_panse_27(void); +static void ScriptCmd_panse_adjustnone(void); +static void ScriptCmd_panse_adjustall(void); static void ScriptCmd_monbgprio_28(void); static void ScriptCmd_monbgprio_29(void); static void ScriptCmd_monbgprio_2A(void); @@ -79,8 +78,8 @@ static void ScriptCmd_stopsound(void); static void RunAnimScriptCommand(void); static void task_pA_ma0A_obj_to_bg_pal(u8 taskId); -static void sub_80A46A0(void); -static void sub_80A4980(u8 taskId); +static void FlipBattlerBgTiles(void); +static void Task_ClearMonBg(u8 taskId); static void sub_80A4BB0(u8 taskId); static void Task_FadeToBg(u8 taskId); static void Task_PanFromInitialToTarget(u8 taskId); @@ -89,11 +88,10 @@ static void Task_WaitAndPlaySE(u8 taskId); static void LoadDefaultBg(void); static void LoadMoveBg(u16 bgId); -// ewram EWRAM_DATA static const u8 *sBattleAnimScriptPtr = NULL; EWRAM_DATA static const u8 *sBattleAnimScriptRetAddr = NULL; EWRAM_DATA void (*gAnimScriptCallback)(void) = NULL; -EWRAM_DATA static s8 gAnimFramesToWait = 0; +EWRAM_DATA static s8 sAnimFramesToWait = 0; EWRAM_DATA bool8 gAnimScriptActive = FALSE; EWRAM_DATA u8 gAnimVisualTaskCount = 0; EWRAM_DATA u8 gAnimSoundTaskCount = 0; @@ -1711,33 +1709,33 @@ const struct CompressedSpritePalette gBattleAnimPaletteTable[] = const struct BattleAnimBackground gBattleAnimBackgroundTable[] = { - [BG_DARK_] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, - [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, - [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost}, - [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic}, - [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent}, - [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer}, - [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests}, - [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill}, - [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests}, - [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent}, - [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer}, - [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder}, + [BG_NONE] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, + [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, + [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost}, + [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic}, + [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent}, + [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer}, + [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests}, + [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill}, + [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests}, + [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent}, + [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer}, + [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder}, [BG_GUILLOTINE_OPPONENT] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineOpponent}, - [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer}, + [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer}, [BG_GUILLOTINE_CONTESTS] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineContests}, - [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice}, - [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic}, - [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir}, - [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill}, - [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests}, - [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora}, - [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure}, - [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent}, - [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer}, - [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent}, - [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer}, - [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests}, + [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice}, + [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic}, + [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir}, + [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill}, + [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests}, + [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora}, + [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure}, + [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent}, + [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer}, + [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent}, + [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer}, + [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests}, }; static void (* const sScriptCmdTable[])(void) = @@ -1748,8 +1746,8 @@ static void (* const sScriptCmdTable[])(void) = ScriptCmd_createvisualtask, ScriptCmd_delay, ScriptCmd_waitforvisualfinish, - ScriptCmd_hang1, - ScriptCmd_hang2, + ScriptCmd_nop, + ScriptCmd_nop2, ScriptCmd_end, ScriptCmd_playse, ScriptCmd_monbg, @@ -1769,7 +1767,7 @@ static void (* const sScriptCmdTable[])(void) = ScriptCmd_changebg, ScriptCmd_playsewithpan, ScriptCmd_setpan, - ScriptCmd_panse_1B, + ScriptCmd_panse, ScriptCmd_loopsewithpan, ScriptCmd_waitplaysewithpan, ScriptCmd_setbldcnt, @@ -1780,8 +1778,8 @@ static void (* const sScriptCmdTable[])(void) = ScriptCmd_clearmonbg_23, ScriptCmd_jumpifcontest, ScriptCmd_fadetobgfromset, - ScriptCmd_panse_26, - ScriptCmd_panse_27, + ScriptCmd_panse_adjustnone, + ScriptCmd_panse_adjustall, ScriptCmd_monbgprio_28, ScriptCmd_monbgprio_29, ScriptCmd_monbgprio_2A, @@ -1792,12 +1790,11 @@ static void (* const sScriptCmdTable[])(void) = ScriptCmd_stopsound }; -// code void ClearBattleAnimationVars(void) { s32 i; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; gAnimScriptActive = FALSE; gAnimVisualTaskCount = 0; gAnimSoundTaskCount = 0; @@ -1837,7 +1834,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo if (!IsContest()) { - sub_80A8278(); + InitPrioritiesForVisibleBattlers(); UpdateOamPriorityInAllHealthboxes(0); for (i = 0; i < MAX_BATTLERS_COUNT; i++) { @@ -1865,7 +1862,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo sMonAnimTaskIdArray[1] = TASK_NONE; sBattleAnimScriptPtr = animsTable[tableId]; gAnimScriptActive = TRUE; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; gAnimScriptCallback = RunAnimScriptCommand; for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++) @@ -1938,14 +1935,14 @@ static void ClearSpriteIndex(u16 index) static void WaitAnimFrameCount(void) { - if (gAnimFramesToWait <= 0) + if (sAnimFramesToWait <= 0) { gAnimScriptCallback = RunAnimScriptCommand; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; } else { - gAnimFramesToWait--; + sAnimFramesToWait--; } } @@ -1954,7 +1951,7 @@ static void RunAnimScriptCommand(void) do { sScriptCmdTable[sBattleAnimScriptPtr[0]](); - } while (gAnimFramesToWait == 0 && gAnimScriptActive); + } while (sAnimFramesToWait == 0 && gAnimScriptActive); } static void ScriptCmd_loadspritegfx(void) @@ -1967,7 +1964,7 @@ static void ScriptCmd_loadspritegfx(void) LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(index)]); sBattleAnimScriptPtr += 2; AddSpriteIndex(GET_TRUE_SPRITE_INDEX(index)); - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; gAnimScriptCallback = WaitAnimFrameCount; } @@ -2070,9 +2067,9 @@ static void ScriptCmd_createvisualtask(void) static void ScriptCmd_delay(void) { sBattleAnimScriptPtr++; - gAnimFramesToWait = sBattleAnimScriptPtr[0]; - if (gAnimFramesToWait == 0) - gAnimFramesToWait = -1; + sAnimFramesToWait = sBattleAnimScriptPtr[0]; + if (sAnimFramesToWait == 0) + sAnimFramesToWait = -1; sBattleAnimScriptPtr++; gAnimScriptCallback = WaitAnimFrameCount; } @@ -2083,19 +2080,19 @@ static void ScriptCmd_waitforvisualfinish(void) if (gAnimVisualTaskCount == 0) { sBattleAnimScriptPtr++; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; } else { - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; } } -static void ScriptCmd_hang1(void) +static void ScriptCmd_nop(void) { } -static void ScriptCmd_hang2(void) +static void ScriptCmd_nop2(void) { } @@ -2109,7 +2106,7 @@ static void ScriptCmd_end(void) || sMonAnimTaskIdArray[0] != TASK_NONE || sMonAnimTaskIdArray[1] != TASK_NONE) { sSoundAnimFramesToWait = 0; - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; return; } @@ -2118,7 +2115,7 @@ static void ScriptCmd_end(void) { if (++sSoundAnimFramesToWait <= 90) // Wait 90 frames, then halt the sound effect. { - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; return; } else @@ -2146,7 +2143,7 @@ static void ScriptCmd_end(void) m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); if (!IsContest()) { - sub_80A8278(); + InitPrioritiesForVisibleBattlers(); UpdateOamPriorityInAllHealthboxes(1); } gAnimScriptActive = FALSE; @@ -2160,11 +2157,16 @@ static void ScriptCmd_playse(void) sBattleAnimScriptPtr += 2; } -#define t1_MONBG_BATTLER 0 -#define t1_MON_IN_BG2 1 +// These two tasks share context and similar task data +// To differentiate them their task data is prefixed t1/t2 + +// Task data for sub_80A40F4 +#define t1_BattlerSpriteId data[0] +#define t1_InBg2 data[1] #define t1_CREATE_ANOTHER_TASK 2 #define t1_IS_SECONDMON_BG 3 +// Task data for task_pA_ma0A_obj_to_bg_pal #define t2_BATTLER_SPRITE_ID 0 #define t2_MON_IN_BG2 5 #define t2_MONBG_BATTLER 6 @@ -2173,11 +2175,11 @@ static void sub_80A40F4(u8 taskId) { u8 newTaskId; - s16 *selfData = gTasks[taskId].data; - u8 battlerSpriteId = gBattlerSpriteIds[selfData[t1_MONBG_BATTLER]]; + s16 *data = gTasks[taskId].data; + u8 battlerSpriteId = gBattlerSpriteIds[t1_BattlerSpriteId]; gSprites[battlerSpriteId].invisible = TRUE; - if (!selfData[t1_CREATE_ANOTHER_TASK]) + if (!data[t1_CREATE_ANOTHER_TASK]) { DestroyAnimVisualTask(taskId); return; @@ -2188,7 +2190,7 @@ static void sub_80A40F4(u8 taskId) gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2; gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2; - if (!selfData[t1_MON_IN_BG2]) + if (!t1_InBg2) { gTasks[newTaskId].data[3] = gBattle_BG1_X; gTasks[newTaskId].data[4] = gBattle_BG1_Y; @@ -2199,9 +2201,9 @@ static void sub_80A40F4(u8 taskId) gTasks[newTaskId].data[4] = gBattle_BG2_Y; } - gTasks[newTaskId].data[t2_MON_IN_BG2] = selfData[t1_MON_IN_BG2]; - gTasks[newTaskId].data[t2_MONBG_BATTLER] = selfData[t1_MONBG_BATTLER]; - sMonAnimTaskIdArray[selfData[t1_IS_SECONDMON_BG]] = newTaskId; + gTasks[newTaskId].data[t2_MON_IN_BG2] = t1_InBg2; + gTasks[newTaskId].data[t2_MONBG_BATTLER] = t1_BattlerSpriteId; + sMonAnimTaskIdArray[data[t1_IS_SECONDMON_BG]] = newTaskId; DestroyAnimVisualTask(taskId); } @@ -2231,8 +2233,8 @@ static void ScriptCmd_monbg(void) MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE); taskId = CreateTask(sub_80A40F4, 10); gAnimVisualTaskCount++; - gTasks[taskId].data[t1_MONBG_BATTLER] = battlerId; - gTasks[taskId].data[t1_MON_IN_BG2] = toBG_2; + gTasks[taskId].t1_BattlerSpriteId = battlerId; + gTasks[taskId].t1_InBg2 = toBG_2; gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE; gTasks[taskId].data[t1_IS_SECONDMON_BG] = 0; @@ -2257,7 +2259,7 @@ static void ScriptCmd_monbg(void) } sBattleAnimScriptPtr++; - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; gAnimScriptCallback = WaitAnimFrameCount; } @@ -2329,10 +2331,10 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) else battlerPosition = GetBattlerPosition(battlerId); - sub_8118FBC(1, 0, 0, battlerPosition, animBg.paletteId, animBg.bgTiles, animBg.bgTilemap, animBg.tilesOffset); + DrawBattlerOnBg(1, 0, 0, battlerPosition, animBg.paletteId, animBg.bgTiles, animBg.bgTilemap, animBg.tilesOffset); if (IsContest()) - sub_80A46A0(); + FlipBattlerBgTiles(); } else { @@ -2359,11 +2361,11 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20); CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + 0x120), 0x20); - sub_8118FBC(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset); + DrawBattlerOnBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset); } } -static void sub_80A46A0(void) +static void FlipBattlerBgTiles(void) { s32 i, j; struct BattleAnimBgData animBg; @@ -2377,10 +2379,8 @@ static void sub_80A46A0(void) { for (j = 0; j < 4; j++) { - u16 temp = ptr[j + i * 32]; - - ptr[j + i * 32] = ptr[7 - j + i * 32]; - ptr[7 - j + i * 32] = temp; + u16 temp; + SWAP(ptr[j + i * 32], ptr[7 - j + i * 32], temp); } } for (i = 0; i < 8; i++) @@ -2391,20 +2391,20 @@ static void sub_80A46A0(void) } } -void sub_80A4720(u16 a, u16 *b, u32 c, u8 d) +void RelocateBattleBgPal(u16 paletteNum, u16 *dest, u32 offset, bool8 largeScreen) { s32 i, j; - s32 var; + s32 size; - if (d == 0) - var = 32; + if (!largeScreen) + size = 32; else - var = 64; - a <<= 12; - for (i = 0; i < var; i++) + size = 64; + paletteNum <<= 12; + for (i = 0; i < size; i++) { for (j = 0; j < 32; j++) - b[j + i * 32] = ((b[j + i * 32] & 0xFFF) | a) + c; + dest[j + i * 32] = ((dest[j + i * 32] & 0xFFF) | paletteNum) + offset; } } @@ -2446,8 +2446,8 @@ static void task_pA_ma0A_obj_to_bg_pal(u8 taskId) gBattle_BG1_X = x + gTasks[taskId].data[3]; gBattle_BG1_Y = y + gTasks[taskId].data[4]; - src = gPlttBufferFaded + 0x100 + palIndex * 16; - dst = gPlttBufferFaded + 0x100 + animBg.paletteId * 16 - 256; + src = &gPlttBufferFaded[0x100 + palIndex * 16]; + dst = &gPlttBufferFaded[0x100 + animBg.paletteId * 16 - 256]; CpuCopy32(src, dst, 0x20); } else @@ -2457,8 +2457,8 @@ static void task_pA_ma0A_obj_to_bg_pal(u8 taskId) gBattle_BG2_X = x + gTasks[taskId].data[3]; gBattle_BG2_Y = y + gTasks[taskId].data[4]; - src = gPlttBufferFaded + 0x100 + palIndex * 16; - dst = gPlttBufferFaded + 0x100 - 112; + src = &gPlttBufferFaded[0x100 + palIndex * 16]; + dst = &gPlttBufferFaded[0x100 - 112]; CpuCopy32(src, dst, 0x20); } } @@ -2489,14 +2489,14 @@ static void ScriptCmd_clearmonbg(void) else animBattlerId = 0; - taskId = CreateTask(sub_80A4980, 5); + taskId = CreateTask(Task_ClearMonBg, 5); gTasks[taskId].data[0] = animBattlerId; gTasks[taskId].data[2] = battlerId; sBattleAnimScriptPtr++; } -static void sub_80A4980(u8 taskId) +static void Task_ClearMonBg(u8 taskId) { gTasks[taskId].data[1]++; if (gTasks[taskId].data[1] != 1) @@ -2625,8 +2625,8 @@ static void sub_80A4BB0(u8 taskId) } } -#undef t1_MONBG_BATTLER -#undef t1_MON_IN_BG2 +#undef t1_BattlerSpriteId +#undef t1_InBg2 #undef t1_CREATE_ANOTHER_TASK #undef t1_IS_SECONDMON_BG @@ -2676,6 +2676,10 @@ static void ScriptCmd_return(void) static void ScriptCmd_setarg(void) { + // Save original address to return to + // after the T1_READ_16, + 4. + // They could have equivalently just advanced + // sBattleAnimScriptPtr by 2 afterwards. const u8 *addr = sBattleAnimScriptPtr; u16 value; u8 argId; @@ -2809,17 +2813,17 @@ static void LoadMoveBg(u16 bgId) void *dmaDest; LZDecompressWram(tilemap, gDecompressionBuffer); - sub_80A4720(GetBattleBgPaletteNum(), (void*)(gDecompressionBuffer), 0x100, 0); + RelocateBattleBgPal(GetBattleBgPaletteNum(), (void*)gDecompressionBuffer, 0x100, FALSE); dmaSrc = gDecompressionBuffer; - dmaDest = (void *)(BG_SCREEN_ADDR(26)); + dmaDest = (void *)BG_SCREEN_ADDR(26); DmaCopy32(3, dmaSrc, dmaDest, 0x800); - LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)(BG_SCREEN_ADDR(4))); + LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)BG_SCREEN_ADDR(4)); LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, GetBattleBgPaletteNum() * 16, 32); } else { - LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)(BG_SCREEN_ADDR(26))); - LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)BG_SCREEN_ADDR(26)); + LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)BG_CHAR_ADDR(2)); LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, 32, 32); } } @@ -2850,11 +2854,11 @@ static void ScriptCmd_waitbgfadeout(void) if (sAnimBackgroundFadeState == 2) { sBattleAnimScriptPtr++; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; } else { - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; } } @@ -2863,11 +2867,11 @@ static void ScriptCmd_waitbgfadein(void) if (sAnimBackgroundFadeState == 0) { sBattleAnimScriptPtr++; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; } else { - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; } } @@ -2992,7 +2996,7 @@ static void ScriptCmd_setpan(void) #define tCurrentPan data[4] #define tFrameCounter data[8] -static void ScriptCmd_panse_1B(void) +static void ScriptCmd_panse(void) { u16 songNum; s8 currentPanArg, incrementPan, incrementPanArg, currentPan, targetPan; @@ -3002,13 +3006,14 @@ static void ScriptCmd_panse_1B(void) sBattleAnimScriptPtr++; songNum = T1_READ_16(sBattleAnimScriptPtr); currentPanArg = sBattleAnimScriptPtr[2]; - incrementPan = sBattleAnimScriptPtr[3]; + incrementPan = sBattleAnimScriptPtr[3]; // targetPan, var is re-used incrementPanArg = sBattleAnimScriptPtr[4]; framesToWait = sBattleAnimScriptPtr[5]; currentPan = BattleAnimAdjustPanning(currentPanArg); targetPan = BattleAnimAdjustPanning(incrementPan); incrementPan = CalculatePanIncrement(currentPan, targetPan, incrementPanArg); + taskId = CreateTask(Task_PanFromInitialToTarget, 1); gTasks[taskId].tInitialPan = currentPan; gTasks[taskId].tTargetPan = targetPan; @@ -3064,7 +3069,7 @@ void Task_PanFromInitialToTarget(u8 taskId) } } -static void ScriptCmd_panse_26(void) +static void ScriptCmd_panse_adjustnone(void) { u16 songId; s8 currentPan, targetPan, incrementPan; @@ -3091,7 +3096,7 @@ static void ScriptCmd_panse_26(void) sBattleAnimScriptPtr += 6; } -static void ScriptCmd_panse_27(void) +static void ScriptCmd_panse_adjustall(void) { u16 songId; s8 targetPanArg, incrementPanArg, currentPanArg, currentPan, targetPan, incrementPan; @@ -3254,7 +3259,7 @@ static void ScriptCmd_waitsound(void) if (gAnimSoundTaskCount != 0) { sSoundAnimFramesToWait = 0; - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; } else if (IsSEPlaying()) { @@ -3266,14 +3271,14 @@ static void ScriptCmd_waitsound(void) } else { - gAnimFramesToWait = 1; + sAnimFramesToWait = 1; } } else { sSoundAnimFramesToWait = 0; sBattleAnimScriptPtr++; - gAnimFramesToWait = 0; + sAnimFramesToWait = 0; } } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 2f4343e73cf6..27149873d6a6 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3250,7 +3250,7 @@ void AnimTask_HeartsBackground(u8 taskId) SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgGfx(animBg.bgId, &gBattleAnimBgImage_Attract, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_Attract, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_Attract, FALSE); LoadCompressedPalette(&gBattleAnimBgPalette_Attract, animBg.paletteId * 16, 32); gTasks[taskId].func = AnimTask_HeartsBackground_Step; } @@ -3328,11 +3328,11 @@ void AnimTask_ScaryFace(u8 taskId) SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); GetBattleAnimBg1Data(&animBg); if (IsContest()) - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFaceContest, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFaceContest, FALSE); else if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_OPPONENT) - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFacePlayer, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFacePlayer, FALSE); else - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFaceOpponent, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_ScaryFaceOpponent, FALSE); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_ScaryFace, animBg.tilesOffset); LoadCompressedPalette(gBattleAnimBgPalette_ScaryFace, animBg.paletteId * 16, 32); diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 2a649dd8b2b5..267b6db9cb91 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2388,7 +2388,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId) SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 1); GetBattleAnimBg1Data(&animBg); - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimMaskTilemap_LightBeam, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimMaskTilemap_LightBeam, FALSE); if (IsContest()) { gBattle_BG1_X = -56; @@ -2569,7 +2569,7 @@ void AnimTask_DoomDesireLightBeam(u8 taskId) SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 1); GetBattleAnimBg1Data(&animBg); - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimMaskTilemap_LightBeam, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimMaskTilemap_LightBeam, FALSE); if (IsContest()) { gBattle_BG1_X = -56; diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index a0608cfd1c35..95c64f7cadc9 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -1000,7 +1000,7 @@ void AnimTask_HazeScrollingFog(u8 taskId) GetBattleAnimBg1Data(&animBg); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimFogTilemap, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimFogTilemap, FALSE); LoadPalette(&gFogPalette, animBg.paletteId * 16, 32); gTasks[taskId].func = AnimTask_HazeScrollingFog_Step; @@ -1105,7 +1105,7 @@ void AnimTask_LoadMistTiles(u8 taskId) GetBattleAnimBg1Data(&animBg); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimFogTilemap, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimFogTilemap, FALSE); LoadPalette(&gFogPalette, animBg.paletteId * 16, 32); gTasks[taskId].data[15] = -1; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index be409f3666c9..d0ddfdd771ba 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -37,15 +37,15 @@ static void sub_80A8D78(struct Task *task, u8 taskId); EWRAM_DATA static union AffineAnimCmd *gAnimTaskAffineAnim = NULL; // Const rom data -static const struct UCoords8 sBattlerCoords[][4] = +static const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] = { - { + { // Single battle { 72, 80 }, { 176, 40 }, { 48, 40 }, { 112, 80 }, }, - { + { // Double battle { 32, 80 }, { 200, 40 }, { 90, 88 }, @@ -54,29 +54,29 @@ static const struct UCoords8 sBattlerCoords[][4] = }; // One entry for each of the four Castform forms. -const struct MonCoords gCastformFrontSpriteCoords[] = +const struct MonCoords gCastformFrontSpriteCoords[NUM_CASTFORM_FORMS] = { - { .size = 0x44, .y_offset = 17 }, // NORMAL - { .size = 0x66, .y_offset = 9 }, // SUN - { .size = 0x46, .y_offset = 9 }, // RAIN - { .size = 0x86, .y_offset = 8 }, // HAIL + [CASTFORM_NORMAL] = { .size = 0x44, .y_offset = 17 }, + [CASTFORM_FIRE] = { .size = 0x66, .y_offset = 9 }, + [CASTFORM_WATER] = { .size = 0x46, .y_offset = 9 }, + [CASTFORM_ICE] = { .size = 0x86, .y_offset = 8 }, }; -static const u8 sCastformElevations[] = +static const u8 sCastformElevations[NUM_CASTFORM_FORMS] = { - 13, // NORMAL - 14, // SUN - 13, // RAIN - 13, // HAIL + [CASTFORM_NORMAL] = 13, + [CASTFORM_FIRE] = 14, + [CASTFORM_WATER] = 13, + [CASTFORM_ICE] = 13, }; // Y position of the backsprite for each of the four Castform forms. -static const u8 sCastformBackSpriteYCoords[] = +static const u8 sCastformBackSpriteYCoords[NUM_CASTFORM_FORMS] = { - 0, // NORMAL - 0, // SUN - 0, // RAIN - 0, // HAIL + [CASTFORM_NORMAL] = 0, + [CASTFORM_FIRE] = 0, + [CASTFORM_WATER] = 0, + [CASTFORM_ICE] = 0, }; // Placeholders for pokemon sprites to be created for a move animation effect (e.g. Role Play / Snatch) @@ -853,8 +853,8 @@ void GetBattleAnimBg1Data(struct BattleAnimBgData *out) { if (IsContest()) { - out->bgTiles = gUnknown_0202305C; - out->bgTilemap = (u16 *)gUnknown_02023060; + out->bgTiles = gBattleAnimBgTileBuffer; + out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; out->paletteId = 14; out->bgId = 1; out->tilesOffset = 0; @@ -862,8 +862,8 @@ void GetBattleAnimBg1Data(struct BattleAnimBgData *out) } else { - out->bgTiles = gUnknown_0202305C; - out->bgTilemap = (u16 *)gUnknown_02023060; + out->bgTiles = gBattleAnimBgTileBuffer; + out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; out->paletteId = 8; out->bgId = 1; out->tilesOffset = 0x200; @@ -875,8 +875,8 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) { if (IsContest()) { - out->bgTiles = gUnknown_0202305C; - out->bgTilemap = (u16 *)gUnknown_02023060; + out->bgTiles = gBattleAnimBgTileBuffer; + out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; out->paletteId = 14; out->bgId = 1; out->tilesOffset = 0; @@ -888,8 +888,8 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) } else { - out->bgTiles = gUnknown_0202305C; - out->bgTilemap = (u16 *)gUnknown_02023060; + out->bgTiles = gBattleAnimBgTileBuffer; + out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; out->paletteId = 9; out->bgId = 2; out->tilesOffset = 0x300; @@ -899,8 +899,8 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) void sub_80A6BFC(struct BattleAnimBgData *out, u8 unused) { - out->bgTiles = gUnknown_0202305C; - out->bgTilemap = (u16 *)gUnknown_02023060; + out->bgTiles = gBattleAnimBgTileBuffer; + out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; if (IsContest()) { out->paletteId = 14; @@ -937,9 +937,9 @@ void ClearBattleAnimBg(u32 bgId) void AnimLoadCompressedBgGfx(u32 bgId, const u32 *src, u32 tilesOffset) { - CpuFill32(0, gUnknown_0202305C, 0x2000); - LZDecompressWram(src, gUnknown_0202305C); - LoadBgTiles(bgId, gUnknown_0202305C, 0x2000, tilesOffset); + CpuFill32(0, gBattleAnimBgTileBuffer, 0x2000); + LZDecompressWram(src, gBattleAnimBgTileBuffer); + LoadBgTiles(bgId, gBattleAnimBgTileBuffer, 0x2000, tilesOffset); } static void InitAnimBgTilemapBuffer(u32 bgId, const void *src) @@ -954,12 +954,12 @@ void AnimLoadCompressedBgTilemap(u32 bgId, const void *src) CopyBgTilemapBufferToVram(bgId); } -void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData *unk, const void *src, u32 arg2) +void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData *data, const void *src, bool32 largeScreen) { - InitAnimBgTilemapBuffer(unk->bgId, src); + InitAnimBgTilemapBuffer(data->bgId, src); if (IsContest() == TRUE) - sub_80A4720(unk->paletteId, unk->bgTilemap, 0, arg2); - CopyBgTilemapBufferToVram(unk->bgId); + RelocateBattleBgPal(data->paletteId, data->bgTilemap, 0, largeScreen); + CopyBgTilemapBufferToVram(data->bgId); } u8 GetBattleBgPaletteNum(void) @@ -1947,7 +1947,8 @@ void AnimTask_GetFrustrationPowerLevel(u8 taskId) DestroyAnimVisualTask(taskId); } -void sub_80A8174(u8 priority) +// Unused +static void SetPriorityForVisibleBattlers(u8 priority) { if (IsBattlerSpriteVisible(gBattleAnimTarget)) gSprites[gBattlerSpriteIds[gBattleAnimTarget]].oam.priority = priority; @@ -1959,7 +1960,7 @@ void sub_80A8174(u8 priority) gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].oam.priority = priority; } -void sub_80A8278(void) +void InitPrioritiesForVisibleBattlers(void) { int i; diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index 7f292d596193..905f51a79ef0 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -409,7 +409,7 @@ void AnimTask_LoadSandstormBackground(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Sandstorm, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_Sandstorm, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_Sandstorm, FALSE); LoadCompressedPalette(gBattleAnimSpritePal_FlyingDirt, animBg.paletteId * 16, 32); if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index c20fbc9e271a..b0eab5b743e0 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -331,7 +331,7 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId) spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); newSpriteId = CreateInvisibleSpriteCopy(gBattleAnimAttacker, spriteId, species); GetBattleAnimBg1Data(&animBgData); - AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleAnimMaskTilemap_Curse, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleAnimMaskTilemap_Curse, FALSE); AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnimMaskImage_Curse, animBgData.tilesOffset); LoadPalette(sCurseLinesPalette, animBgData.paletteId * 16 + 1, 2); @@ -470,9 +470,9 @@ static void StatsChangeAnimation_Step2(u8 taskId) GetBattleAnimBg1Data(&animBgData); if (sAnimStatsChangeData->data[0] == 0) - AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask1_Tilemap, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask1_Tilemap, FALSE); else - AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask2_Tilemap, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBgData, gBattleStatMask2_Tilemap, FALSE); AnimLoadCompressedBgGfx(animBgData.bgId, gBattleStatMask_Gfx, animBgData.tilesOffset); switch (sAnimStatsChangeData->data[1]) @@ -821,7 +821,7 @@ void StartMonScrollingBgMask(u8 taskId, int unused, u16 scrollSpeed, u8 battler, spriteId2 = CreateInvisibleSpriteCopy(battler2, gBattlerSpriteIds[battler2], species); GetBattleAnimBg1Data(&animBgData); - AnimLoadCompressedBgTilemapHandleContest(&animBgData, tilemap, 0); + AnimLoadCompressedBgTilemapHandleContest(&animBgData, tilemap, FALSE); AnimLoadCompressedBgGfx(animBgData.bgId, gfx, animBgData.tilesOffset); LoadCompressedPalette(palette, animBgData.paletteId * 16, 32); diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 4ee09f386470..1c2d08d6a80a 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -54,9 +54,8 @@ static void AnimTask_WaterSport_Step(u8); static void CreateWaterSportDroplet(struct Task*); static void CreateWaterPulseRingBubbles(struct Sprite*, int, int); -// Both unused -const u8 gUnknown_8593C80[] = INCBIN_U8("graphics/unknown/unknown_593C80.4bpp"); -const u8 gUnknown_8593FFC[] = INCBIN_U8("graphics/unknown/unknown_593FFC.bin"); +static const u8 sUnusedWater_Gfx[] = INCBIN_U8("graphics/battle_anims/unused_water_gfx.4bpp"); +static const u8 sUnusedWater[] = INCBIN_U8("graphics/battle_anims/unused_water.bin"); static const union AnimCmd sAnim_RainDrop[] = { @@ -822,7 +821,7 @@ void AnimTask_CreateSurfWave(u8 taskId) } else { - AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_SurfContest, 1); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_SurfContest, TRUE); } AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Surf, animBg.tilesOffset); if (gBattleAnimArgs[0] == 0) diff --git a/src/battle_bg.c b/src/battle_bg.c index 0ad1265090ba..886a3d107fa2 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -594,8 +594,8 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = const struct WindowTemplate * const gBattleWindowTemplates[] = { - gStandardBattleWindowTemplates, - gBattleArenaWindowTemplates, + [B_WIN_TYPE_NORMAL] = gStandardBattleWindowTemplates, + [B_WIN_TYPE_ARENA] = gBattleArenaWindowTemplates, }; static const struct BattleBackground gBattleTerrainTable[] = @@ -691,20 +691,19 @@ static const struct BattleBackground gBattleTerrainTable[] = }, }; -static void sub_8035648(void); +static void CB2_UnusedBattleInit(void); -// Unused -static void sub_8035608(void) +static void UnusedBattleInit(void) { u8 spriteId; ResetSpriteData(); - spriteId = CreateSprite(&gUnknown_0831AC88, 0, 0, 0); + spriteId = CreateSprite(&gUnusedBattleInitSprite, 0, 0, 0); gSprites[spriteId].invisible = TRUE; - SetMainCallback2(sub_8035648); + SetMainCallback2(CB2_UnusedBattleInit); } -static void sub_8035648(void) +static void CB2_UnusedBattleInit(void) { AnimateSprites(); BuildOamBuffer(); @@ -717,13 +716,13 @@ void BattleInitBgsAndWindows(void) if (gBattleTypeFlags & BATTLE_TYPE_ARENA) { - gBattleScripting.windowsType = 1; - SetBgTilemapBuffer(1, gUnknown_02023060); - SetBgTilemapBuffer(2, gUnknown_02023060); + gBattleScripting.windowsType = B_WIN_TYPE_ARENA; + SetBgTilemapBuffer(1, gBattleAnimBgTilemapBuffer); + SetBgTilemapBuffer(2, gBattleAnimBgTilemapBuffer); } else { - gBattleScripting.windowsType = 0; + gBattleScripting.windowsType = B_WIN_TYPE_NORMAL; } InitWindows(gBattleWindowTemplates[gBattleScripting.windowsType]); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 8e7bc9a9f429..456fd8cee6da 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -251,16 +251,16 @@ static void HandleInputChooseAction(void) switch (gActionSelectionCursor[gActiveBattler]) { - case 0: + case B_ACTION_USE_MOVE: BtlController_EmitTwoReturnValues(1, B_ACTION_USE_MOVE, 0); break; - case 1: + case B_ACTION_USE_ITEM: BtlController_EmitTwoReturnValues(1, B_ACTION_USE_ITEM, 0); break; - case 2: + case B_ACTION_SWITCH: BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); break; - case 3: + case B_ACTION_RUN: BtlController_EmitTwoReturnValues(1, B_ACTION_RUN, 0); break; } @@ -858,7 +858,7 @@ static void SetLinkBattleEndCallbacks(void) if (gReceivedRemoteLinkPlayers == 0) { m4aSongNumStop(SE_LOW_HEALTH); - gMain.inBattle = 0; + gMain.inBattle = FALSE; gMain.callback1 = gPreBattleCallback1; SetMainCallback2(CB2_InitEndLinkBattle); if (gBattleOutcome == B_OUTCOME_WON) @@ -871,7 +871,7 @@ static void SetLinkBattleEndCallbacks(void) if (IsLinkTaskFinished()) { m4aSongNumStop(SE_LOW_HEALTH); - gMain.inBattle = 0; + gMain.inBattle = FALSE; gMain.callback1 = gPreBattleCallback1; SetMainCallback2(CB2_InitEndLinkBattle); if (gBattleOutcome == B_OUTCOME_WON) @@ -901,7 +901,7 @@ void SetBattleEndCallbacks(void) else { m4aSongNumStop(SE_LOW_HEALTH); - gMain.inBattle = 0; + gMain.inBattle = FALSE; gMain.callback1 = gPreBattleCallback1; SetMainCallback2(gMain.savedCallback); } diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index da15c07a0728..6c4f1473c220 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -115,7 +115,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) s32 i, var1, var2; s32 chosenMoveId = -1; struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); - u8 unusableMovesBits = CheckMoveLimitations(gActiveBattler, 0, 0xFF); + u8 unusableMovesBits = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); s32 percent = Random() % 100; // Heavy variable re-use here makes this hard to read without defines @@ -438,9 +438,10 @@ bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattler, u8 atkBattler, u8 de { u8 taskId; - if (tableId == B_ANIM_CASTFORM_CHANGE && (argument & 0x80)) + if (tableId == B_ANIM_CASTFORM_CHANGE && (argument & CASTFORM_SUBSTITUTE)) { - gBattleMonForms[activeBattler] = (argument & ~(0x80)); + // If Castform is behind substitute, set the new form but skip the animation + gBattleMonForms[activeBattler] = (argument & ~CASTFORM_SUBSTITUTE); return TRUE; } if (gBattleSpritesDataPtr->battlerData[activeBattler].behindSubstitute @@ -593,7 +594,7 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId) if (species == SPECIES_CASTFORM) { paletteOffset = 0x100 + battlerId * 16; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); } @@ -656,7 +657,7 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId) if (species == SPECIES_CASTFORM) { paletteOffset = 0x100 + battlerId * 16; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); } @@ -895,7 +896,7 @@ void CopyBattleSpriteInvisibility(u8 battlerId) gBattleSpritesDataPtr->battlerData[battlerId].invisible = gSprites[gBattlerSpriteIds[battlerId]].invisible; } -void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform) +void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 castform) { u16 paletteOffset; u32 personalityValue; @@ -903,7 +904,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform u8 position; const u32 *lzPaletteData; - if (notTransform) + if (castform) { StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleSpritesDataPtr->animationData->animArg); paletteOffset = 0x100 + battlerAtk * 16; @@ -976,8 +977,8 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform if (targetSpecies == SPECIES_CASTFORM) { gSprites[gBattlerSpriteIds[battlerAtk]].anims = gMonFrontAnimsPtrTable[targetSpecies]; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); - LoadPalette(gBattleStruct->castformPalette[0] + gBattleMonForms[battlerDef] * 16, paletteOffset, 32); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); + LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerDef]], paletteOffset, 32); } BlendPalette(paletteOffset, 16, 6, RGB_WHITE); diff --git a/src/battle_intro.c b/src/battle_intro.c index 0ea65dab178c..42fe659746bd 100644 --- a/src/battle_intro.c +++ b/src/battle_intro.c @@ -584,36 +584,35 @@ static void BattleIntroSlidePartner(u8 taskId) } } -void sub_8118FBC(int bgId, u8 arg1, u8 arg2, u8 battlerPosition, u8 arg4, u8 *arg5, u16 *arg6, u16 tilesOffset) +void DrawBattlerOnBg(int bgId, u8 x, u8 y, u8 battlerPosition, u8 paletteId, u8 *tiles, u16 *tilemap, u16 tilesOffset) { int i, j; u8 battler = GetBattlerAtPosition(battlerPosition); int offset = tilesOffset; - CpuCopy16(gMonSpritesGfxPtr->sprites.ptr[battlerPosition] + BG_SCREEN_SIZE * gBattleMonForms[battler], arg5, BG_SCREEN_SIZE); - LoadBgTiles(bgId, arg5, 0x1000, tilesOffset); - for (i = arg2; i < arg2 + 8; i++) + CpuCopy16(gMonSpritesGfxPtr->sprites.ptr[battlerPosition] + BG_SCREEN_SIZE * gBattleMonForms[battler], tiles, BG_SCREEN_SIZE); + LoadBgTiles(bgId, tiles, 0x1000, tilesOffset); + for (i = y; i < y + 8; i++) { - for (j = arg1; j < arg1 + 8; j++) + for (j = x; j < x + 8; j++) { - arg6[i * 32 + j] = offset | (arg4 << 12); + tilemap[i * 32 + j] = offset | (paletteId << 12); offset++; } } - - LoadBgTilemap(bgId, arg6, BG_SCREEN_SIZE, 0); + LoadBgTilemap(bgId, tilemap, BG_SCREEN_SIZE, 0); } -void unref_sub_8119094(u8 arg0, u8 arg1, u8 battlerPosition, u8 arg3, u8 arg4, u16 arg5, u8 arg6, u8 arg7) +static void DrawBattlerOnBgDMA(u8 x, u8 y, u8 battlerPosition, u8 arg3, u8 paletteId, u16 arg5, u8 arg6, u8 arg7) { int i, j, offset; DmaCopy16(3, gMonSpritesGfxPtr->sprites.ptr[battlerPosition] + BG_SCREEN_SIZE * arg3, (void *)BG_SCREEN_ADDR(0) + arg5, BG_SCREEN_SIZE); offset = (arg5 >> 5) - (arg7 << 9); - for (i = arg1; i < arg1 + 8; i++) + for (i = y; i < y + 8; i++) { - for (j = arg0; j < arg0 + 8; j++) + for (j = x; j < x + 8; j++) { - *((u16 *)(BG_VRAM) + (i * 32) + (j + (arg6 << 10))) = offset | (arg4 << 12); + *((u16 *)(BG_VRAM) + (i * 32) + (j + (arg6 << 10))) = offset | (paletteId << 12); offset++; } } diff --git a/src/battle_main.c b/src/battle_main.c index 8481a108a39a..6ed9f1232bd5 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -61,13 +61,9 @@ #include "constants/trainers.h" #include "cable_club.h" -extern struct MusicPlayerInfo gMPlayInfo_SE1; -extern struct MusicPlayerInfo gMPlayInfo_SE2; - extern const struct BgTemplate gBattleBgTemplates[]; extern const struct WindowTemplate *const gBattleWindowTemplates[]; -// this file's functions static void CB2_InitBattleInternal(void); static void CB2_PreInitMultiBattle(void); static void CB2_PreInitIngamePlayerPartnerBattle(void); @@ -77,19 +73,18 @@ static void CB2_HandleStartBattle(void); static void TryCorrectShedinjaLanguage(struct Pokemon *mon); static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 firstTrainer); static void BattleMainCB1(void); -static void sub_8038538(struct Sprite *sprite); static void CB2_EndLinkBattle(void); static void EndLinkBattleInSteps(void); -static void sub_80392A8(void); -static void sub_803937C(void); -static void sub_803939C(void); +static void CB2_InitAskRecordBattle(void); +static void CB2_AskRecordBattle(void); +static void AskRecordBattle(void); static void SpriteCb_MoveWildMonToRight(struct Sprite *sprite); static void SpriteCb_WildMonShowHealthbox(struct Sprite *sprite); static void SpriteCb_WildMonAnimate(struct Sprite *sprite); -static void sub_80398D0(struct Sprite *sprite); +static void SpriteCB_Flicker(struct Sprite *sprite); static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite); static void SpriteCb_BlinkVisible(struct Sprite *sprite); -static void SpriteCallbackDummy_3(struct Sprite *sprite); +static void SpriteCB_Idle(struct Sprite *sprite); static void SpriteCB_BattleSpriteSlideLeft(struct Sprite *sprite); static void TurnValuesCleanUp(bool8 var0); static void SpriteCB_BounceEffect(struct Sprite *sprite); @@ -123,8 +118,9 @@ static void HandleEndTurn_BattleLost(void); static void HandleEndTurn_RanFromBattle(void); static void HandleEndTurn_MonFled(void); static void HandleEndTurn_FinishBattle(void); +static void SpriteCB_UnusedBattleInit(struct Sprite* sprite); +static void SpriteCB_UnusedBattleInit_Main(struct Sprite *sprite); -// EWRAM vars EWRAM_DATA u16 gBattle_BG0_X = 0; EWRAM_DATA u16 gBattle_BG0_Y = 0; EWRAM_DATA u16 gBattle_BG1_X = 0; @@ -141,14 +137,19 @@ EWRAM_DATA u8 gDisplayedStringBattle[300] = {0}; EWRAM_DATA u8 gBattleTextBuff1[TEXT_BUFF_ARRAY_COUNT] = {0}; EWRAM_DATA u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT] = {0}; EWRAM_DATA u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT] = {0}; -EWRAM_DATA static u32 sUnusedUnknownArray[25] = {0}; +// The below array is never intentionally used. However, Juan's +// defeat text (SootopolisCity_Gym_1F_Text_JuanDefeat) is too long +// for gDisplayedStringBattle and overflows into this array. If it +// is removed (and none of the buffers above are increased in size) +// 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 u32 gUnusedFirstBattleVar1 = 0; // Never read -EWRAM_DATA struct UnknownPokemonStruct4 gMultiPartnerParty[MULTI_PARTY_SIZE] = {0}; -EWRAM_DATA static struct UnknownPokemonStruct4* sMultiPartnerPartyBuffer = NULL; -EWRAM_DATA u8 *gUnknown_0202305C = NULL; -EWRAM_DATA u8 *gUnknown_02023060 = NULL; +EWRAM_DATA struct MultiPartnerMenuPokemon gMultiPartnerParty[MULTI_PARTY_SIZE] = {0}; +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}; EWRAM_DATA u8 gBattleBufferB[MAX_BATTLERS_COUNT][0x200] = {0}; EWRAM_DATA u8 gActiveBattler = 0; @@ -236,7 +237,6 @@ EWRAM_DATA u16 gBattleMovePower = 0; EWRAM_DATA u16 gMoveToLearn = 0; EWRAM_DATA u8 gBattleMonForms[MAX_BATTLERS_COUNT] = {0}; -// IWRAM common vars void (*gPreBattleCallback1)(void); void (*gBattleMainFunc)(void); struct BattleResults gBattleResults; @@ -247,7 +247,6 @@ u8 gMultiUsePlayerCursor; u8 gNumberOfMovesToChoose; u8 gBattleControllerData[MAX_BATTLERS_COUNT]; // Used by the battle controllers to store misc sprite/task IDs for each battler -// rom const data static const struct ScanlineEffectParams sIntroScanlineParams16Bit = { (void *)REG_ADDR_BG3HOFS, SCANLINE_EFFECT_DMACNT_16BIT, 1 @@ -259,7 +258,7 @@ static const struct ScanlineEffectParams sIntroScanlineParams32Bit = (void *)REG_ADDR_BG3HOFS, SCANLINE_EFFECT_DMACNT_32BIT, 1 }; -const struct SpriteTemplate gUnknown_0831AC88 = +const struct SpriteTemplate gUnusedBattleInitSprite = { .tileTag = 0, .paletteTag = 0, @@ -267,7 +266,7 @@ const struct SpriteTemplate gUnknown_0831AC88 = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = sub_8038528, + .callback = SpriteCB_UnusedBattleInit, }; static const u8 sText_ShedinjaJpnName[] = _("ăŚă‚±ă‹ăł"); // Nukenin @@ -512,53 +511,53 @@ const struct TrainerMoney gTrainerMoneyTable[] = {TRAINER_CLASS_HIKER, 10}, {TRAINER_CLASS_YOUNG_COUPLE, 8}, {TRAINER_CLASS_WINSTRATE, 10}, - {0xFF, 5}, + {0xFF, 5}, // Any trainer class not listed above uses this }; #include "data/text/abilities.h" static void (* const sTurnActionsFuncsTable[])(void) = { - [B_ACTION_USE_MOVE] = HandleAction_UseMove, - [B_ACTION_USE_ITEM] = HandleAction_UseItem, - [B_ACTION_SWITCH] = HandleAction_Switch, - [B_ACTION_RUN] = HandleAction_Run, + [B_ACTION_USE_MOVE] = HandleAction_UseMove, + [B_ACTION_USE_ITEM] = HandleAction_UseItem, + [B_ACTION_SWITCH] = HandleAction_Switch, + [B_ACTION_RUN] = HandleAction_Run, [B_ACTION_SAFARI_WATCH_CAREFULLY] = HandleAction_WatchesCarefully, - [B_ACTION_SAFARI_BALL] = HandleAction_SafariZoneBallThrow, - [B_ACTION_SAFARI_POKEBLOCK] = HandleAction_ThrowPokeblock, - [B_ACTION_SAFARI_GO_NEAR] = HandleAction_GoNear, - [B_ACTION_SAFARI_RUN] = HandleAction_SafariZoneRun, - [B_ACTION_WALLY_THROW] = HandleAction_WallyBallThrow, - [B_ACTION_EXEC_SCRIPT] = HandleAction_RunBattleScript, - [B_ACTION_TRY_FINISH] = HandleAction_TryFinish, - [B_ACTION_FINISHED] = HandleAction_ActionFinished, - [B_ACTION_NOTHING_FAINTED] = HandleAction_NothingIsFainted, + [B_ACTION_SAFARI_BALL] = HandleAction_SafariZoneBallThrow, + [B_ACTION_SAFARI_POKEBLOCK] = HandleAction_ThrowPokeblock, + [B_ACTION_SAFARI_GO_NEAR] = HandleAction_GoNear, + [B_ACTION_SAFARI_RUN] = HandleAction_SafariZoneRun, + [B_ACTION_WALLY_THROW] = HandleAction_WallyBallThrow, + [B_ACTION_EXEC_SCRIPT] = HandleAction_RunBattleScript, + [B_ACTION_TRY_FINISH] = HandleAction_TryFinish, + [B_ACTION_FINISHED] = HandleAction_ActionFinished, + [B_ACTION_NOTHING_FAINTED] = HandleAction_NothingIsFainted, }; static void (* const sEndTurnFuncsTable[])(void) = { - [0] = HandleEndTurn_ContinueBattle, //B_OUTCOME_NONE? - [B_OUTCOME_WON] = HandleEndTurn_BattleWon, - [B_OUTCOME_LOST] = HandleEndTurn_BattleLost, - [B_OUTCOME_DREW] = HandleEndTurn_BattleLost, - [B_OUTCOME_RAN] = HandleEndTurn_RanFromBattle, + [0] = HandleEndTurn_ContinueBattle, + [B_OUTCOME_WON] = HandleEndTurn_BattleWon, + [B_OUTCOME_LOST] = HandleEndTurn_BattleLost, + [B_OUTCOME_DREW] = HandleEndTurn_BattleLost, + [B_OUTCOME_RAN] = HandleEndTurn_RanFromBattle, [B_OUTCOME_PLAYER_TELEPORTED] = HandleEndTurn_FinishBattle, - [B_OUTCOME_MON_FLED] = HandleEndTurn_MonFled, - [B_OUTCOME_CAUGHT] = HandleEndTurn_FinishBattle, - [B_OUTCOME_NO_SAFARI_BALLS] = HandleEndTurn_FinishBattle, - [B_OUTCOME_FORFEITED] = HandleEndTurn_FinishBattle, - [B_OUTCOME_MON_TELEPORTED] = HandleEndTurn_FinishBattle, + [B_OUTCOME_MON_FLED] = HandleEndTurn_MonFled, + [B_OUTCOME_CAUGHT] = HandleEndTurn_FinishBattle, + [B_OUTCOME_NO_SAFARI_BALLS] = HandleEndTurn_FinishBattle, + [B_OUTCOME_FORFEITED] = HandleEndTurn_FinishBattle, + [B_OUTCOME_MON_TELEPORTED] = HandleEndTurn_FinishBattle, }; -const u8 gStatusConditionString_PoisonJpn[8] = _("ă©ăŹ$$$$$"); -const u8 gStatusConditionString_SleepJpn[8] = _("ă­ă‚€ă‚Š$$$$"); -const u8 gStatusConditionString_ParalysisJpn[8] = _("ăľă˛$$$$$"); -const u8 gStatusConditionString_BurnJpn[8] = _("ă‚„ă‘ă©$$$$"); -const u8 gStatusConditionString_IceJpn[8] = _("ă“ăŠă‚Š$$$$"); -const u8 gStatusConditionString_ConfusionJpn[8] = _("ă“んらん$$$"); -const u8 gStatusConditionString_LoveJpn[8] = _("ăˇă­ăˇă­$$$"); +const u8 gStatusConditionString_PoisonJpn[] = _("ă©ăŹ$$$$$"); +const u8 gStatusConditionString_SleepJpn[] = _("ă­ă‚€ă‚Š$$$$"); +const u8 gStatusConditionString_ParalysisJpn[] = _("ăľă˛$$$$$"); +const u8 gStatusConditionString_BurnJpn[] = _("ă‚„ă‘ă©$$$$"); +const u8 gStatusConditionString_IceJpn[] = _("ă“ăŠă‚Š$$$$"); +const u8 gStatusConditionString_ConfusionJpn[] = _("ă“んらん$$$"); +const u8 gStatusConditionString_LoveJpn[] = _("ăˇă­ăˇă­$$$"); -const u8 * const gStatusConditionStringsTable[7][2] = +const u8 * const gStatusConditionStringsTable[][2] = { {gStatusConditionString_PoisonJpn, gText_Poison}, {gStatusConditionString_SleepJpn, gText_Sleep}, @@ -569,7 +568,6 @@ const u8 * const gStatusConditionStringsTable[7][2] = {gStatusConditionString_LoveJpn, gText_Love} }; -// code void CB2_InitBattle(void) { MoveSaveBlocks_ResetHeap(); @@ -1022,8 +1020,10 @@ static void CB2_HandleStartBattle(void) } break; case 3: + // Link battle, send/receive party PokĂ©mon 2 at a time if (IsLinkTaskFinished()) { + // Send PokĂ©mon 1-2 SendBlock(bitmask_all_link_players_but_self(), gPlayerParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } @@ -1031,6 +1031,7 @@ static void CB2_HandleStartBattle(void) case 4: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv PokĂ©mon 1-2 ResetBlockReceivedFlags(); memcpy(gEnemyParty, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; @@ -1039,30 +1040,35 @@ static void CB2_HandleStartBattle(void) case 7: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 2, sizeof(struct Pokemon) * 2); + // Send PokĂ©mon 3-4 + SendBlock(bitmask_all_link_players_but_self(), &gPlayerParty[2], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 8: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv PokĂ©mon 3-4 ResetBlockReceivedFlags(); - memcpy(gEnemyParty + 2, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); + memcpy(&gEnemyParty[2], gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 11: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 4, sizeof(struct Pokemon) * 2); + // Send PokĂ©mon 5-6 + SendBlock(bitmask_all_link_players_but_self(), &gPlayerParty[4], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 12: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv PokĂ©mon 5-6 ResetBlockReceivedFlags(); - memcpy(gEnemyParty + 4, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); + memcpy(&gEnemyParty[4], gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); + TryCorrectShedinjaLanguage(&gEnemyParty[0]); TryCorrectShedinjaLanguage(&gEnemyParty[1]); TryCorrectShedinjaLanguage(&gEnemyParty[2]); @@ -1074,13 +1080,15 @@ static void CB2_HandleStartBattle(void) break; case 15: InitBattleControllers(); - sub_8184E58(); + RecordedBattle_SetTrainerInfo(); gBattleCommunication[SPRITES_INIT_STATE1] = 0; gBattleCommunication[SPRITES_INIT_STATE2] = 0; if (gBattleTypeFlags & BATTLE_TYPE_LINK) { + // Check if both players are using Emerald + // to determine if the recorded battle rng + // seed needs to be sent s32 i; - for (i = 0; i < 2 && (gLinkPlayers[i].version & 0xFF) == VERSION_EMERALD; i++); if (i == 2) @@ -1094,6 +1102,7 @@ static void CB2_HandleStartBattle(void) } break; case 16: + // Both players are using Emerald, send rng seed for recorded battle if (IsLinkTaskFinished()) { SendBlock(bitmask_all_link_players_but_self(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); @@ -1101,6 +1110,7 @@ static void CB2_HandleStartBattle(void) } break; case 17: + // Receive rng seed for recorded battle (only read it if partner is the link master) if ((GetBlockReceivedStatus() & 3) == 3) { ResetBlockReceivedFlags(); @@ -1110,17 +1120,17 @@ static void CB2_HandleStartBattle(void) } break; case 18: + // Finish, start battle if (BattleInitAllSprites(&gBattleCommunication[SPRITES_INIT_STATE1], &gBattleCommunication[SPRITES_INIT_STATE2])) { gPreBattleCallback1 = gMain.callback1; gMain.callback1 = BattleMainCB1; SetMainCallback2(BattleMainCB2); if (gBattleTypeFlags & BATTLE_TYPE_LINK) - { gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE; - } } break; + // Introduce short delays between sending party PokĂ©mon for link case 5: case 9: case 13: @@ -1138,7 +1148,7 @@ static void CB2_HandleStartBattle(void) static void CB2_HandleStartMultiPartnerBattle(void) { u8 playerMultiplayerId; - u8 enemyMultiplayerId; + u8 partnerMultiplayerId; RunTasks(); AnimateSprites(); @@ -1146,7 +1156,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) playerMultiplayerId = GetMultiplayerId(); gBattleScripting.multiplayerId = playerMultiplayerId; - enemyMultiplayerId = playerMultiplayerId ^ BIT_SIDE; + partnerMultiplayerId = playerMultiplayerId ^ BIT_SIDE; switch (gBattleCommunication[MULTIUSE_STATE]) { @@ -1222,8 +1232,10 @@ static void CB2_HandleStartMultiPartnerBattle(void) } break; case 3: + // Link battle, send/receive party PokĂ©mon in groups if (IsLinkTaskFinished()) { + // Send PokĂ©mon 1-2 SendBlock(bitmask_all_link_players_but_self(), gPlayerParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } @@ -1231,16 +1243,17 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 4: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv partner's PokĂ©mon 1-2, and copy partner's and own PokĂ©mon into party positions ResetBlockReceivedFlags(); if (gLinkPlayers[playerMultiplayerId].id != 0) { - memcpy(gPlayerParty, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); - memcpy(gPlayerParty + MULTI_PARTY_SIZE, gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon) * 2); + memcpy(gPlayerParty, gBlockRecvBuffer[partnerMultiplayerId], sizeof(struct Pokemon) * 2); + memcpy(&gPlayerParty[MULTI_PARTY_SIZE], gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon) * 2); } else { memcpy(gPlayerParty, gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon) * 2); - memcpy(gPlayerParty + MULTI_PARTY_SIZE, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); + memcpy(&gPlayerParty[MULTI_PARTY_SIZE], gBlockRecvBuffer[partnerMultiplayerId], sizeof(struct Pokemon) * 2); } gBattleCommunication[MULTIUSE_STATE]++; } @@ -1248,23 +1261,25 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 5: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gPlayerParty + 2, sizeof(struct Pokemon)); + // Send PokĂ©mon 3 + SendBlock(bitmask_all_link_players_but_self(), &gPlayerParty[2], sizeof(struct Pokemon)); gBattleCommunication[MULTIUSE_STATE]++; } break; case 6: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv partner's PokĂ©mon 3, and copy partner's and own PokĂ©mon into party positions ResetBlockReceivedFlags(); if (gLinkPlayers[playerMultiplayerId].id != 0) { - memcpy(gPlayerParty + 2, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon)); - memcpy(gPlayerParty + 5, gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon)); + memcpy(&gPlayerParty[2], gBlockRecvBuffer[partnerMultiplayerId], sizeof(struct Pokemon)); + memcpy(&gPlayerParty[2 + MULTI_PARTY_SIZE], gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon)); } else { - memcpy(gPlayerParty + 2, gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon)); - memcpy(gPlayerParty + 5, gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon)); + memcpy(&gPlayerParty[2], gBlockRecvBuffer[playerMultiplayerId], sizeof(struct Pokemon)); + memcpy(&gPlayerParty[2 + MULTI_PARTY_SIZE], gBlockRecvBuffer[partnerMultiplayerId], sizeof(struct Pokemon)); } gBattleCommunication[MULTIUSE_STATE]++; } @@ -1272,6 +1287,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 7: if (IsLinkTaskFinished()) { + // Send enemy PokĂ©mon 1-2 to partner SendBlock(bitmask_all_link_players_but_self(), gEnemyParty, sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } @@ -1279,45 +1295,47 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 8: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv enemy PokĂ©mon 1-2 (if not master) ResetBlockReceivedFlags(); if (GetMultiplayerId() != 0) - { memcpy(gEnemyParty, gBlockRecvBuffer[0], sizeof(struct Pokemon) * 2); - } gBattleCommunication[MULTIUSE_STATE]++; } break; case 9: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gEnemyParty + 2, sizeof(struct Pokemon) * 2); + // Send enemy PokĂ©mon 3-4 to partner + SendBlock(bitmask_all_link_players_but_self(), &gEnemyParty[2], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 10: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv enemy PokĂ©mon 3-4 (if not master) ResetBlockReceivedFlags(); if (GetMultiplayerId() != 0) - { - memcpy(gEnemyParty + 2, gBlockRecvBuffer[0], sizeof(struct Pokemon) * 2); - } + memcpy(&gEnemyParty[2], gBlockRecvBuffer[0], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 11: if (IsLinkTaskFinished()) { - SendBlock(bitmask_all_link_players_but_self(), gEnemyParty + 4, sizeof(struct Pokemon) * 2); + // Send enemy PokĂ©mon 5-6 to partner + SendBlock(bitmask_all_link_players_but_self(), &gEnemyParty[4], sizeof(struct Pokemon) * 2); gBattleCommunication[MULTIUSE_STATE]++; } break; case 12: if ((GetBlockReceivedStatus() & 3) == 3) { + // Recv enemy PokĂ©mon 5-6 (if not master) ResetBlockReceivedFlags(); if (GetMultiplayerId() != 0) - memcpy(gEnemyParty + 4, gBlockRecvBuffer[0], sizeof(struct Pokemon) * 2); + memcpy(&gEnemyParty[4], gBlockRecvBuffer[0], sizeof(struct Pokemon) * 2); + TryCorrectShedinjaLanguage(&gPlayerParty[0]); TryCorrectShedinjaLanguage(&gPlayerParty[1]); TryCorrectShedinjaLanguage(&gPlayerParty[2]); @@ -1335,19 +1353,16 @@ static void CB2_HandleStartMultiPartnerBattle(void) break; case 13: InitBattleControllers(); - sub_8184E58(); + RecordedBattle_SetTrainerInfo(); gBattleCommunication[SPRITES_INIT_STATE1] = 0; gBattleCommunication[SPRITES_INIT_STATE2] = 0; if (gBattleTypeFlags & BATTLE_TYPE_LINK) - { gBattleCommunication[MULTIUSE_STATE] = 14; - } else - { gBattleCommunication[MULTIUSE_STATE] = 16; - } break; case 14: + // Send rng seed for recorded battle if (IsLinkTaskFinished()) { SendBlock(bitmask_all_link_players_but_self(), &gRecordedBattleRngSeed, sizeof(gRecordedBattleRngSeed)); @@ -1355,15 +1370,17 @@ static void CB2_HandleStartMultiPartnerBattle(void) } break; case 15: + // Receive rng seed for recorded battle (only read it if partner is the link master) if ((GetBlockReceivedStatus() & 3) == 3) { ResetBlockReceivedFlags(); if (!(gBattleTypeFlags & BATTLE_TYPE_IS_MASTER)) - memcpy(&gRecordedBattleRngSeed, gBlockRecvBuffer[enemyMultiplayerId], sizeof(gRecordedBattleRngSeed)); + memcpy(&gRecordedBattleRngSeed, gBlockRecvBuffer[partnerMultiplayerId], sizeof(gRecordedBattleRngSeed)); gBattleCommunication[MULTIUSE_STATE]++; } break; case 16: + // Finish, start battle if (BattleInitAllSprites(&gBattleCommunication[SPRITES_INIT_STATE1], &gBattleCommunication[SPRITES_INIT_STATE2])) { TrySetLinkBattleTowerEnemyPartyLevel(); @@ -1371,31 +1388,29 @@ static void CB2_HandleStartMultiPartnerBattle(void) gMain.callback1 = BattleMainCB1; SetMainCallback2(BattleMainCB2); if (gBattleTypeFlags & BATTLE_TYPE_LINK) - { gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE; - } } break; } } -static void sub_80379F8(u8 arrayIdPlus) +static void SetMultiPartnerMenuParty(u8 offset) { s32 i; - for (i = 0; i < (int)ARRAY_COUNT(gMultiPartnerParty); i++) - { - gMultiPartnerParty[i].species = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_SPECIES); - gMultiPartnerParty[i].heldItem = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_HELD_ITEM); - GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_NICKNAME, gMultiPartnerParty[i].nickname); - gMultiPartnerParty[i].level = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_LEVEL); - gMultiPartnerParty[i].hp = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_HP); - gMultiPartnerParty[i].maxhp = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_MAX_HP); - gMultiPartnerParty[i].status = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_STATUS); - gMultiPartnerParty[i].personality = GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_PERSONALITY); - gMultiPartnerParty[i].gender = GetMonGender(&gPlayerParty[arrayIdPlus + i]); + for (i = 0; i < MULTI_PARTY_SIZE; i++) + { + gMultiPartnerParty[i].species = GetMonData(&gPlayerParty[offset + i], MON_DATA_SPECIES); + gMultiPartnerParty[i].heldItem = GetMonData(&gPlayerParty[offset + i], MON_DATA_HELD_ITEM); + GetMonData(&gPlayerParty[offset + i], MON_DATA_NICKNAME, gMultiPartnerParty[i].nickname); + gMultiPartnerParty[i].level = GetMonData(&gPlayerParty[offset + i], MON_DATA_LEVEL); + gMultiPartnerParty[i].hp = GetMonData(&gPlayerParty[offset + i], MON_DATA_HP); + gMultiPartnerParty[i].maxhp = GetMonData(&gPlayerParty[offset + i], MON_DATA_MAX_HP); + gMultiPartnerParty[i].status = GetMonData(&gPlayerParty[offset + i], MON_DATA_STATUS); + gMultiPartnerParty[i].personality = GetMonData(&gPlayerParty[offset + i], MON_DATA_PERSONALITY); + gMultiPartnerParty[i].gender = GetMonGender(&gPlayerParty[offset + i]); StripExtCtrlCodes(gMultiPartnerParty[i].nickname); - if (GetMonData(&gPlayerParty[arrayIdPlus + i], MON_DATA_LANGUAGE) != LANGUAGE_JAPANESE) + if (GetMonData(&gPlayerParty[offset + i], MON_DATA_LANGUAGE) != LANGUAGE_JAPANESE) PadNameString(gMultiPartnerParty[i].nickname, CHAR_SPACE); } memcpy(sMultiPartnerPartyBuffer, gMultiPartnerParty, sizeof(gMultiPartnerParty)); @@ -1405,15 +1420,15 @@ static void CB2_PreInitMultiBattle(void) { s32 i; u8 playerMultiplierId; - s32 numPlayers = 4; - u8 r4 = 0xF; + s32 numPlayers = MAX_BATTLERS_COUNT; + u8 blockMask = 0xF; u32 *savedBattleTypeFlags; void (**savedCallback)(void); if (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER) { numPlayers = 2; - r4 = 3; + blockMask = 3; } playerMultiplierId = GetMultiplayerId(); @@ -1430,14 +1445,14 @@ static void CB2_PreInitMultiBattle(void) case 0: if (gReceivedRemoteLinkPlayers != 0 && IsLinkTaskFinished()) { - sMultiPartnerPartyBuffer = Alloc(sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); - sub_80379F8(0); - SendBlock(bitmask_all_link_players_but_self(), sMultiPartnerPartyBuffer, sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); + sMultiPartnerPartyBuffer = Alloc(sizeof(gMultiPartnerParty)); + SetMultiPartnerMenuParty(0); + SendBlock(bitmask_all_link_players_but_self(), sMultiPartnerPartyBuffer, sizeof(gMultiPartnerParty)); gBattleCommunication[MULTIUSE_STATE]++; } break; case 1: - if ((GetBlockReceivedStatus() & r4) == r4) + if ((GetBlockReceivedStatus() & blockMask) == blockMask) { ResetBlockReceivedFlags(); for (i = 0; i < numPlayers; i++) @@ -1450,12 +1465,12 @@ static void CB2_PreInitMultiBattle(void) if ((!(gLinkPlayers[i].id & 1) && !(gLinkPlayers[playerMultiplierId].id & 1)) || (gLinkPlayers[i].id & 1 && gLinkPlayers[playerMultiplierId].id & 1)) { - memcpy(gMultiPartnerParty, gBlockRecvBuffer[i], sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); + memcpy(gMultiPartnerParty, gBlockRecvBuffer[i], sizeof(gMultiPartnerParty)); } } else { - memcpy(gMultiPartnerParty, gBlockRecvBuffer[i], sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); + memcpy(gMultiPartnerParty, gBlockRecvBuffer[i], sizeof(gMultiPartnerParty)); } } gBattleCommunication[MULTIUSE_STATE]++; @@ -1514,8 +1529,8 @@ static void CB2_PreInitIngamePlayerPartnerBattle(void) switch (gBattleCommunication[MULTIUSE_STATE]) { case 0: - sMultiPartnerPartyBuffer = Alloc(sizeof(struct UnknownPokemonStruct4) * ARRAY_COUNT(gMultiPartnerParty)); - sub_80379F8(3); + sMultiPartnerPartyBuffer = Alloc(sizeof(gMultiPartnerParty)); + SetMultiPartnerMenuParty(MULTI_PARTY_SIZE); gBattleCommunication[MULTIUSE_STATE]++; *savedCallback = gMain.savedCallback; *savedBattleTypeFlags = gBattleTypeFlags; @@ -1773,7 +1788,7 @@ static void CB2_HandleStartMultiBattle(void) break; case 7: InitBattleControllers(); - sub_8184E58(); + RecordedBattle_SetTrainerInfo(); gBattleCommunication[SPRITES_INIT_STATE1] = 0; gBattleCommunication[SPRITES_INIT_STATE2] = 0; if (gBattleTypeFlags & BATTLE_TYPE_LINK) @@ -1841,11 +1856,12 @@ void BattleMainCB2(void) UpdatePaletteFade(); RunTasks(); - if (JOY_HELD(B_BUTTON) && gBattleTypeFlags & BATTLE_TYPE_RECORDED && sub_8186450()) + if (JOY_HELD(B_BUTTON) && gBattleTypeFlags & BATTLE_TYPE_RECORDED && RecordedBattle_CanStopPlayback()) { + // Player pressed B during recorded battle playback, end battle gSpecialVar_Result = gBattleOutcome = B_OUTCOME_PLAYER_TELEPORTED; ResetPaletteFadeControl(); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); SetMainCallback2(CB2_QuitRecordedBattle); } } @@ -1854,7 +1870,7 @@ static void FreeRestoreBattleData(void) { gMain.callback1 = gPreBattleCallback1; gScanlineEffect.state = 3; - gMain.inBattle = 0; + gMain.inBattle = FALSE; ZeroEnemyPartyMons(); m4aSongNumStop(SE_LOW_HEALTH); FreeMonSpritesGfx(); @@ -1875,34 +1891,37 @@ void CB2_QuitRecordedBattle(void) } } -void sub_8038528(struct Sprite* sprite) +#define sState data[0] +#define sDelay data[4] + +static void SpriteCB_UnusedBattleInit(struct Sprite* sprite) { - sprite->data[0] = 0; - sprite->callback = sub_8038538; + sprite->sState = 0; + sprite->callback = SpriteCB_UnusedBattleInit_Main; } -static void sub_8038538(struct Sprite *sprite) +static void SpriteCB_UnusedBattleInit_Main(struct Sprite *sprite) { - u16 *arr = (u16*)(gDecompressionBuffer); + u16 *arr = (u16*)gDecompressionBuffer; - switch (sprite->data[0]) + switch (sprite->sState) { case 0: - sprite->data[0]++; + sprite->sState++; sprite->data[1] = 0; sprite->data[2] = 0x281; sprite->data[3] = 0; - sprite->data[4] = 1; + sprite->sDelay = 1; // fall through case 1: - sprite->data[4]--; - if (sprite->data[4] == 0) + sprite->sDelay--; + if (sprite->sDelay == 0) { s32 i; s32 r2; s32 r0; - sprite->data[4] = 2; + sprite->sDelay = 2; r2 = sprite->data[1] + sprite->data[3] * 32; r0 = sprite->data[2] - sprite->data[3] * 32; for (i = 0; i < 29; i += 2) @@ -1913,7 +1932,7 @@ static void sub_8038538(struct Sprite *sprite) sprite->data[3]++; if (sprite->data[3] == 21) { - sprite->data[0]++; + sprite->sState++; sprite->data[1] = 32; } } @@ -1946,8 +1965,8 @@ static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 fir if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) { - if (gTrainers[trainerNum].partySize > 3) - monsCount = 3; + if (gTrainers[trainerNum].partySize > PARTY_SIZE / 2) + monsCount = PARTY_SIZE / 2; else monsCount = gTrainers[trainerNum].partySize; } @@ -2044,9 +2063,9 @@ static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 fir return gTrainers[trainerNum].partySize; } -void sub_8038A04(void) // unused +static void sub_8038A04(void) // unused { - if (REG_VCOUNT < 0xA0 && REG_VCOUNT >= 0x6F) + if (REG_VCOUNT < DISPLAY_HEIGHT && REG_VCOUNT >= 111) SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_SCREENBASE(24) | BGCNT_TXT256x512); } @@ -2246,33 +2265,35 @@ static void EndLinkBattleInSteps(void) case 1: if (--gBattleCommunication[1] == 0) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gBattleCommunication[MULTIUSE_STATE]++; } break; case 2: if (!gPaletteFade.active) { - u8 monsCount; + u8 battlerCount; gMain.anyLinkBattlerHasFrontierPass = RecordedBattle_GetFrontierPassFlag(); if (gBattleTypeFlags & BATTLE_TYPE_MULTI) - monsCount = 4; + battlerCount = 4; else - monsCount = 2; + battlerCount = 2; - for (i = 0; i < monsCount && (gLinkPlayers[i].version & 0xFF) == VERSION_EMERALD; i++); + for (i = 0; i < battlerCount && (gLinkPlayers[i].version & 0xFF) == VERSION_EMERALD; i++); - if (!gSaveBlock2Ptr->frontier.disableRecordBattle && i == monsCount) + if (!gSaveBlock2Ptr->frontier.disableRecordBattle && i == battlerCount) { if (FlagGet(FLAG_SYS_FRONTIER_PASS)) { + // Ask player if they want to record the battle FreeAllWindowBuffers(); - SetMainCallback2(sub_80392A8); + SetMainCallback2(CB2_InitAskRecordBattle); } else if (!gMain.anyLinkBattlerHasFrontierPass) { + // No players can record this battle, end SetMainCallback2(gMain.savedCallback); FreeBattleResources(); FreeBattleSpritesData(); @@ -2280,6 +2301,8 @@ static void EndLinkBattleInSteps(void) } else if (gReceivedRemoteLinkPlayers == 0) { + // Player can't record battle but + // another player can, reconnect with them CreateTask(Task_ReconnectWithLinkPlayers, 5); gBattleCommunication[MULTIUSE_STATE]++; } @@ -2298,12 +2321,12 @@ static void EndLinkBattleInSteps(void) } break; case 3: - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void*)VRAM, VRAM_SIZE); for (i = 0; i < 2; i++) LoadChosenBattleElement(i); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); gBattleCommunication[MULTIUSE_STATE]++; break; case 4: @@ -2337,7 +2360,7 @@ static void EndLinkBattleInSteps(void) case 9: if (!gMain.anyLinkBattlerHasFrontierPass || gWirelessCommType || gReceivedRemoteLinkPlayers != 1) { - gMain.anyLinkBattlerHasFrontierPass = 0; + gMain.anyLinkBattlerHasFrontierPass = FALSE; SetMainCallback2(gMain.savedCallback); FreeBattleResources(); FreeBattleSpritesData(); @@ -2379,7 +2402,7 @@ u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId) return ret; } -static void sub_80392A8(void) +static void CB2_InitAskRecordBattle(void) { s32 i; @@ -2407,14 +2430,14 @@ static void sub_80392A8(void) FreeAllSpritePalettes(); gReservedSpritePaletteCount = 4; SetVBlankCallback(VBlankCB_Battle); - SetMainCallback2(sub_803937C); + SetMainCallback2(CB2_AskRecordBattle); BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); gBattleCommunication[MULTIUSE_STATE] = 0; } -static void sub_803937C(void) +static void CB2_AskRecordBattle(void) { - sub_803939C(); + AskRecordBattle(); AnimateSprites(); BuildOamBuffer(); RunTextPrinters(); @@ -2422,33 +2445,50 @@ static void sub_803937C(void) RunTasks(); } -static void sub_803939C(void) + +// States for AskRecordBattle +#define STATE_INIT 0 +#define STATE_LINK 1 +#define STATE_WAIT_LINK 2 +#define STATE_ASK_RECORD 3 +#define STATE_PRINT_YES_NO 4 +#define STATE_HANDLE_YES_NO 5 +#define STATE_RECORD_NO 6 +#define STATE_END_RECORD_NO 7 +#define STATE_WAIT_END 8 +#define STATE_END 9 +#define STATE_RECORD_YES 10 +#define STATE_RECORD_WAIT 11 +#define STATE_END_RECORD_YES 12 + +static void AskRecordBattle(void) { switch (gBattleCommunication[MULTIUSE_STATE]) { - case 0: + case STATE_INIT: ShowBg(0); ShowBg(1); ShowBg(2); gBattleCommunication[MULTIUSE_STATE]++; break; - case 1: + case STATE_LINK: if (gMain.anyLinkBattlerHasFrontierPass && gReceivedRemoteLinkPlayers == 0) CreateTask(Task_ReconnectWithLinkPlayers, 5); gBattleCommunication[MULTIUSE_STATE]++; break; - case 2: + case STATE_WAIT_LINK: if (!FuncIsActiveTask(Task_ReconnectWithLinkPlayers)) gBattleCommunication[MULTIUSE_STATE]++; break; - case 3: + case STATE_ASK_RECORD: if (!gPaletteFade.active) { + // "Would you like to record your battle on your FRONTIER PASS?" BattlePutTextOnWindow(gText_RecordBattleToPass, 0); gBattleCommunication[MULTIUSE_STATE]++; } break; - case 4: + case STATE_PRINT_YES_NO: if (!IsTextPrinterActive(0)) { HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); @@ -2458,11 +2498,12 @@ static void sub_803939C(void) gBattleCommunication[MULTIUSE_STATE]++; } break; - case 5: + case STATE_HANDLE_YES_NO: if (JOY_NEW(DPAD_UP)) { if (gBattleCommunication[CURSOR_POSITION] != 0) { + // Moved cursor onto Yes PlaySE(SE_SELECT); BattleDestroyYesNoCursorAt(gBattleCommunication[CURSOR_POSITION]); gBattleCommunication[CURSOR_POSITION] = 0; @@ -2473,6 +2514,7 @@ static void sub_803939C(void) { if (gBattleCommunication[CURSOR_POSITION] == 0) { + // Moved cursor onto No PlaySE(SE_SELECT); BattleDestroyYesNoCursorAt(gBattleCommunication[CURSOR_POSITION]); gBattleCommunication[CURSOR_POSITION] = 1; @@ -2484,12 +2526,14 @@ static void sub_803939C(void) PlaySE(SE_SELECT); if (gBattleCommunication[CURSOR_POSITION] == 0) { + // Selected Yes HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); gBattleCommunication[1] = MoveRecordedBattleToSaveData(); - gBattleCommunication[MULTIUSE_STATE] = 10; + gBattleCommunication[MULTIUSE_STATE] = STATE_RECORD_YES; } else { + // Selected No gBattleCommunication[MULTIUSE_STATE]++; } } @@ -2499,19 +2543,20 @@ static void sub_803939C(void) gBattleCommunication[MULTIUSE_STATE]++; } break; - case 6: + case STATE_RECORD_NO: if (IsLinkTaskFinished() == TRUE) { HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); if (gMain.anyLinkBattlerHasFrontierPass) { + // Other battlers may be recording, wait for them SetLinkStandbyCallback(); BattlePutTextOnWindow(gText_LinkStandby3, 0); } - gBattleCommunication[MULTIUSE_STATE]++; + gBattleCommunication[MULTIUSE_STATE]++; // STATE_END_RECORD_NO } break; - case 8: + case STATE_WAIT_END: if (--gBattleCommunication[1] == 0) { if (gMain.anyLinkBattlerHasFrontierPass && !gWirelessCommType) @@ -2519,10 +2564,10 @@ static void sub_803939C(void) gBattleCommunication[MULTIUSE_STATE]++; } break; - case 9: + case STATE_END: if (!gMain.anyLinkBattlerHasFrontierPass || gWirelessCommType || gReceivedRemoteLinkPlayers != 1) { - gMain.anyLinkBattlerHasFrontierPass = 0; + gMain.anyLinkBattlerHasFrontierPass = FALSE; if (!gPaletteFade.active) { SetMainCallback2(gMain.savedCallback); @@ -2532,24 +2577,24 @@ static void sub_803939C(void) } } break; - case 10: + case STATE_RECORD_YES: if (gBattleCommunication[1] == 1) { PlaySE(SE_SAVE); BattleStringExpandPlaceholdersToDisplayedString(gText_BattleRecordedOnPass); BattlePutTextOnWindow(gDisplayedStringBattle, 0); - gBattleCommunication[1] = 0x80; + gBattleCommunication[1] = 128; // Delay gBattleCommunication[MULTIUSE_STATE]++; } else { BattleStringExpandPlaceholdersToDisplayedString(BattleFrontier_BattleTowerBattleRoom_Text_RecordCouldntBeSaved); BattlePutTextOnWindow(gDisplayedStringBattle, 0); - gBattleCommunication[1] = 0x80; + gBattleCommunication[1] = 128; // Delay gBattleCommunication[MULTIUSE_STATE]++; } break; - case 11: + case STATE_RECORD_WAIT: if (IsLinkTaskFinished() == TRUE && !IsTextPrinterActive(0) && --gBattleCommunication[1] == 0) { if (gMain.anyLinkBattlerHasFrontierPass) @@ -2560,25 +2605,25 @@ static void sub_803939C(void) gBattleCommunication[MULTIUSE_STATE]++; } break; - case 12: - case 7: + case STATE_END_RECORD_YES: + case STATE_END_RECORD_NO: if (!IsTextPrinterActive(0)) { if (gMain.anyLinkBattlerHasFrontierPass) { if (IsLinkTaskFinished() == TRUE) { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gBattleCommunication[1] = 0x20; - gBattleCommunication[MULTIUSE_STATE] = 8; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + gBattleCommunication[1] = 32; // Delay + gBattleCommunication[MULTIUSE_STATE] = STATE_WAIT_END; } } else { - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gBattleCommunication[1] = 0x20; - gBattleCommunication[MULTIUSE_STATE] = 8; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + gBattleCommunication[1] = 32; // Delay + gBattleCommunication[MULTIUSE_STATE] = STATE_WAIT_END; } } break; @@ -2599,9 +2644,9 @@ static void TryCorrectShedinjaLanguage(struct Pokemon *mon) } } -u32 GetBattleWindowTemplatePixelWidth(u32 setId, u32 tableId) +u32 GetBattleWindowTemplatePixelWidth(u32 windowsType, u32 tableId) { - return gBattleWindowTemplates[setId][tableId].width * 8; + return gBattleWindowTemplates[windowsType][tableId].width * 8; } #define sBattler data[0] @@ -2651,31 +2696,37 @@ void SpriteCallbackDummy_2(struct Sprite *sprite) } +#define sNumFlickers data[3] +#define sDelay data[4] + // Unused -static void sub_80398BC(struct Sprite *sprite) +static void SpriteCB_InitFlicker(struct Sprite *sprite) { - sprite->data[3] = 6; - sprite->data[4] = 1; - sprite->callback = sub_80398D0; + sprite->sNumFlickers = 6; + sprite->sDelay = 1; + sprite->callback = SpriteCB_Flicker; } -static void sub_80398D0(struct Sprite *sprite) +static void SpriteCB_Flicker(struct Sprite *sprite) { - sprite->data[4]--; - if (sprite->data[4] == 0) + sprite->sDelay--; + if (sprite->sDelay == 0) { - sprite->data[4] = 8; + sprite->sDelay = 8; sprite->invisible ^= 1; - sprite->data[3]--; - if (sprite->data[3] == 0) + sprite->sNumFlickers--; + if (sprite->sNumFlickers == 0) { sprite->invisible = FALSE; sprite->callback = SpriteCallbackDummy_2; - sUnusedUnknownArray[0] = 0; + sFlickerArray[0] = 0; } } } +#undef sNumFlickers +#undef sDelay + extern const struct MonCoords gMonFrontPicCoords[]; extern const struct MonCoords gCastformFrontSpriteCoords[]; @@ -2772,7 +2823,7 @@ void SpriteCb_HideAsMoveTarget(struct Sprite *sprite) sprite->callback = SpriteCallbackDummy_2; } -void SpriteCb_OpponentMonFromBall(struct Sprite *sprite) +void SpriteCB_OpponentMonFromBall(struct Sprite *sprite) { if (sprite->affineAnimEnded) { @@ -2798,19 +2849,19 @@ static void SpriteCB_BattleSpriteSlideLeft(struct Sprite *sprite) sprite->x2 -= 2; if (sprite->x2 == 0) { - sprite->callback = SpriteCallbackDummy_3; + sprite->callback = SpriteCB_Idle; sprite->data[1] = 0; } } } // Unused -static void sub_80105DC(struct Sprite *sprite) +static void SetIdleSpriteCallback(struct Sprite *sprite) { - sprite->callback = SpriteCallbackDummy_3; + sprite->callback = SpriteCB_Idle; } -static void SpriteCallbackDummy_3(struct Sprite *sprite) +static void SpriteCB_Idle(struct Sprite *sprite) { } @@ -2923,23 +2974,25 @@ static void SpriteCB_BounceEffect(struct Sprite *sprite) #undef sBouncerSpriteId #undef sWhich -void SpriteCb_PlayerMonFromBall(struct Sprite *sprite) +void SpriteCB_PlayerMonFromBall(struct Sprite *sprite) { if (sprite->affineAnimEnded) BattleAnimateBackSprite(sprite, sprite->sSpeciesId); } -void sub_8039E60(struct Sprite *sprite) +static void SpriteCB_TrainerThrowObject_Main(struct Sprite *sprite) { sub_8039E9C(sprite); if (sprite->animEnded) - sprite->callback = SpriteCallbackDummy_3; + sprite->callback = SpriteCB_Idle; } +// Sprite callback for a trainer back pic to throw an object +// (Wally throwing a ball, throwing PokĂ©blocks/balls in the Safari Zone) void SpriteCB_TrainerThrowObject(struct Sprite *sprite) { StartSpriteAnim(sprite, 1); - sprite->callback = sub_8039E60; + sprite->callback = SpriteCB_TrainerThrowObject_Main; } void sub_8039E9C(struct Sprite *sprite) @@ -3235,7 +3288,7 @@ void FaintClearSetData(void) gProtectStructs[gActiveBattler].confusionSelfDmg = 0; gProtectStructs[gActiveBattler].targetNotAffected = 0; gProtectStructs[gActiveBattler].chargingTurn = 0; - gProtectStructs[gActiveBattler].fleeFlag = 0; + gProtectStructs[gActiveBattler].fleeType = 0; gProtectStructs[gActiveBattler].usedImprisonedMove = 0; gProtectStructs[gActiveBattler].loveImmobility = 0; gProtectStructs[gActiveBattler].usedDisabledMove = 0; @@ -4352,13 +4405,9 @@ static void HandleTurnActionSelectionState(void) break; case B_ACTION_SAFARI_POKEBLOCK: if ((gBattleBufferB[gActiveBattler][1] | (gBattleBufferB[gActiveBattler][2] << 8)) != 0) - { gBattleCommunication[gActiveBattler]++; - } else - { gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN; - } break; case B_ACTION_SAFARI_GO_NEAR: gBattleCommunication[gActiveBattler]++; @@ -4984,15 +5033,15 @@ static void HandleEndTurn_RanFromBattle(void) } else { - switch (gProtectStructs[gBattlerAttacker].fleeFlag) + switch (gProtectStructs[gBattlerAttacker].fleeType) { default: gBattlescriptCurrInstr = BattleScript_GotAwaySafely; break; - case 1: + case FLEE_ITEM: gBattlescriptCurrInstr = BattleScript_SmokeBallEscape; break; - case 2: + case FLEE_ABILITY: gBattlescriptCurrInstr = BattleScript_RanAwayUsingMonAbility; break; } @@ -5055,7 +5104,7 @@ static void HandleEndTurn_FinishBattle(void) TryPutBreakingNewsOnAir(); } - sub_8186444(); + RecordedBattle_SetPlaybackFinished(); BeginFastPaletteFade(3); FadeOutMapMusic(5); gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions; @@ -5142,7 +5191,7 @@ static void ReturnFromBattleToOverworld(void) return; gSpecialVar_Result = gBattleOutcome; - gMain.inBattle = 0; + gMain.inBattle = FALSE; gMain.callback1 = gPreBattleCallback1; if (gBattleTypeFlags & BATTLE_TYPE_ROAMER) diff --git a/src/battle_message.c b/src/battle_message.c index 1f4bd893fa4e..1dbe0a2dd3da 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2053,7 +2053,8 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = static const struct BattleWindowText *const sBattleTextOnWindowsInfo[] = { - sTextOnWindowsInfo_Normal, sTextOnWindowsInfo_Arena + [B_WIN_TYPE_NORMAL] = sTextOnWindowsInfo_Normal, + [B_WIN_TYPE_ARENA] = sTextOnWindowsInfo_Arena }; static const u8 sRecordedBattleTextSpeeds[] = {8, 4, 1, 0}; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e7520b1ee7d8..92f97647289c 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1834,8 +1834,8 @@ static void Cmd_datahpupdate(void) if (gBattleStruct->dynamicMoveType == 0) moveType = gBattleMoves[gCurrentMove].type; - else if (!(gBattleStruct->dynamicMoveType & 0x40)) - moveType = gBattleStruct->dynamicMoveType & 0x3F; + else if (!(gBattleStruct->dynamicMoveType & F_DYNAMIC_TYPE_1)) + moveType = gBattleStruct->dynamicMoveType & DYNAMIC_TYPE_MASK; else moveType = gBattleMoves[gCurrentMove].type; @@ -3489,6 +3489,8 @@ static void Cmd_getexp(void) } } +// For battles that aren't BATTLE_TYPE_LINK or BATTLE_TYPE_RECORDED_LINK, the only thing this +// command does is check whether the player has won/lost by totaling each team's HP static void Cmd_unknown_24(void) { u16 HP_count = 0; @@ -3497,11 +3499,14 @@ static void Cmd_unknown_24(void) if (gBattleControllerExecFlags) return; + // Get total HP for the player's party to determine if the player has lost if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gPartnerTrainerId == TRAINER_STEVEN_PARTNER) { + // In multi battle with Steven, skip his PokĂ©mon for (i = 0; i < MULTI_PARTY_SIZE; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) + if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) + && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) HP_count += GetMonData(&gPlayerParty[i], MON_DATA_HP); } } @@ -3509,28 +3514,30 @@ static void Cmd_unknown_24(void) { for (i = 0; i < PARTY_SIZE; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) - && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || !(gBattleStruct->arenaLostPlayerMons & gBitTable[i]))) + if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) + && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) + && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) + || !(gBattleStruct->arenaLostPlayerMons & gBitTable[i]))) { HP_count += GetMonData(&gPlayerParty[i], MON_DATA_HP); } } } - if (HP_count == 0) gBattleOutcome |= B_OUTCOME_LOST; - HP_count = 0; + // Get total HP for the enemy's party to determine if the player has won for (i = 0; i < PARTY_SIZE; i++) { - if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES) && !GetMonData(&gEnemyParty[i], MON_DATA_IS_EGG) - && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || !(gBattleStruct->arenaLostOpponentMons & gBitTable[i]))) + if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES) + && !GetMonData(&gEnemyParty[i], MON_DATA_IS_EGG) + && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) + || !(gBattleStruct->arenaLostOpponentMons & gBitTable[i]))) { HP_count += GetMonData(&gEnemyParty[i], MON_DATA_HP); } } - if (HP_count == 0) gBattleOutcome |= B_OUTCOME_WON; @@ -4844,7 +4851,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(PARTY_SIZE); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } } else @@ -4873,7 +4880,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[2]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } else { @@ -4895,7 +4902,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } else if (!(flags & 1)) { @@ -4916,7 +4923,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[3]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } else { @@ -4938,7 +4945,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } else if (!(flags & 2)) { @@ -5001,7 +5008,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } } if (gBitTable[3] & hitmarkerFaintBits && hitmarkerFaintBits & gBitTable[1]) @@ -5017,7 +5024,7 @@ static void Cmd_openpartyscreen(void) else if (!gSpecialStatuses[gActiveBattler].flag40) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); - gSpecialStatuses[gActiveBattler].flag40 = 1; + gSpecialStatuses[gActiveBattler].flag40 = TRUE; } } gBattlescriptCurrInstr += 6; @@ -5175,7 +5182,7 @@ static void Cmd_switchineffects(void) UpdateSentPokesToOpponentValue(gActiveBattler); gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - gSpecialStatuses[gActiveBattler].flag40 = 0; + gSpecialStatuses[gActiveBattler].flag40 = FALSE; if (!(gSideStatuses[GetBattlerSide(gActiveBattler)] & SIDE_STATUS_SPIKES_DAMAGED) && (gSideStatuses[GetBattlerSide(gActiveBattler)] & SIDE_STATUS_SPIKES) @@ -5230,7 +5237,7 @@ static void Cmd_switchineffects(void) *hpOnSwitchout = gBattleMons[i].hp; } - if (gBattlescriptCurrInstr[1] == 5) + if (gBattlescriptCurrInstr[1] == BS_UNK_5) { u32 hitmarkerFaintBits = gHitMarker >> 28; @@ -6282,7 +6289,7 @@ static void Cmd_various(void) gBattleCommunication[0] = IsRunningFromBattleImpossible(); break; case VARIOUS_GET_MOVE_TARGET: - gBattlerTarget = GetMoveTarget(gCurrentMove, 0); + gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); break; case VARIOUS_GET_BATTLER_FAINTED: if (gHitMarker & HITMARKER_FAINTED(gActiveBattler)) @@ -6597,7 +6604,7 @@ static void Cmd_trymirrormove(void) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = move; - gBattlerTarget = GetMoveTarget(gCurrentMove, 0); + gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; } else if (validMovesCount) @@ -6605,7 +6612,7 @@ static void Cmd_trymirrormove(void) gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; i = Random() % validMovesCount; gCurrentMove = movesArray[i]; - gBattlerTarget = GetMoveTarget(gCurrentMove, 0); + gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; } else @@ -7805,7 +7812,7 @@ static void Cmd_metronome(void) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; - gBattlerTarget = GetMoveTarget(gCurrentMove, 0); + gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); return; } } @@ -8154,7 +8161,7 @@ static void Cmd_trychoosesleeptalkmove(void) gCalledMove = gBattleMons[gBattlerAttacker].moves[movePosition]; gCurrMovePos = movePosition; gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; - gBattlerTarget = GetMoveTarget(gCalledMove, 0); + gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } } @@ -8758,29 +8765,28 @@ static void Cmd_recoverbasedonsunlight(void) static void Cmd_hiddenpowercalc(void) { - u8 powerBits; - u8 typeBits; - - powerBits = ((gBattleMons[gBattlerAttacker].hpIV & 2) >> 1) - | ((gBattleMons[gBattlerAttacker].attackIV & 2) << 0) - | ((gBattleMons[gBattlerAttacker].defenseIV & 2) << 1) - | ((gBattleMons[gBattlerAttacker].speedIV & 2) << 2) - | ((gBattleMons[gBattlerAttacker].spAttackIV & 2) << 3) - | ((gBattleMons[gBattlerAttacker].spDefenseIV & 2) << 4); + u8 powerBits = ((gBattleMons[gBattlerAttacker].hpIV & 2) >> 1) + | ((gBattleMons[gBattlerAttacker].attackIV & 2) << 0) + | ((gBattleMons[gBattlerAttacker].defenseIV & 2) << 1) + | ((gBattleMons[gBattlerAttacker].speedIV & 2) << 2) + | ((gBattleMons[gBattlerAttacker].spAttackIV & 2) << 3) + | ((gBattleMons[gBattlerAttacker].spDefenseIV & 2) << 4); - typeBits = ((gBattleMons[gBattlerAttacker].hpIV & 1) << 0) - | ((gBattleMons[gBattlerAttacker].attackIV & 1) << 1) - | ((gBattleMons[gBattlerAttacker].defenseIV & 1) << 2) - | ((gBattleMons[gBattlerAttacker].speedIV & 1) << 3) - | ((gBattleMons[gBattlerAttacker].spAttackIV & 1) << 4) - | ((gBattleMons[gBattlerAttacker].spDefenseIV & 1) << 5); + u8 typeBits = ((gBattleMons[gBattlerAttacker].hpIV & 1) << 0) + | ((gBattleMons[gBattlerAttacker].attackIV & 1) << 1) + | ((gBattleMons[gBattlerAttacker].defenseIV & 1) << 2) + | ((gBattleMons[gBattlerAttacker].speedIV & 1) << 3) + | ((gBattleMons[gBattlerAttacker].spAttackIV & 1) << 4) + | ((gBattleMons[gBattlerAttacker].spDefenseIV & 1) << 5); gDynamicBasePower = (40 * powerBits) / 63 + 30; - gBattleStruct->dynamicMoveType = (15 * typeBits) / 63 + 1; + // Subtract 3 instead of 1 below because 2 types are excluded (TYPE_NORMAL and TYPE_MYSTERY) + // The final + 1 skips past Normal, and the following conditional skips TYPE_MYSTERY + gBattleStruct->dynamicMoveType = ((NUMBER_OF_MON_TYPES - 3) * typeBits) / 63 + 1; if (gBattleStruct->dynamicMoveType >= TYPE_MYSTERY) gBattleStruct->dynamicMoveType++; - gBattleStruct->dynamicMoveType |= 0xC0; + gBattleStruct->dynamicMoveType |= F_DYNAMIC_TYPE_1 | F_DYNAMIC_TYPE_2; gBattlescriptCurrInstr++; } @@ -8972,7 +8978,7 @@ static void Cmd_callterrainattack(void) // nature power { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = sNaturePowerMoves[gBattleTerrain]; - gBattlerTarget = GetMoveTarget(gCurrentMove, 0); + gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); BattleScriptPush(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]); gBattlescriptCurrInstr++; } @@ -9382,7 +9388,7 @@ static void Cmd_assistattackselect(void) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCalledMove = movesArray[((Random() & 0xFF) * chooseableMovesNo) >> 8]; - gBattlerTarget = GetMoveTarget(gCalledMove, 0); + gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr += 5; } else @@ -9527,7 +9533,7 @@ static void Cmd_pickup(void) ability = gBaseStats[species].abilities[0]; if (ability == ABILITY_PICKUP - && species != 0 + && species != SPECIES_NONE && species != SPECIES_EGG && heldItem == ITEM_NONE && (Random() % 10) == 0) @@ -9550,7 +9556,7 @@ static void Cmd_pickup(void) ability = gBaseStats[species].abilities[0]; if (ability == ABILITY_PICKUP - && species != 0 + && species != SPECIES_NONE && species != SPECIES_EGG && heldItem == ITEM_NONE && (Random() % 10) == 0) @@ -9586,7 +9592,7 @@ static void Cmd_docastformchangeanimation(void) gActiveBattler = gBattleScripting.battler; if (gBattleMons[gActiveBattler].status2 & STATUS2_SUBSTITUTE) - *(&gBattleStruct->formToChangeInto) |= 0x80; + *(&gBattleStruct->formToChangeInto) |= CASTFORM_SUBSTITUTE; BtlController_EmitBattleAnimation(0, B_ANIM_CASTFORM_CHANGE, gBattleStruct->formToChangeInto); MarkBattlerForControllerExec(gActiveBattler); @@ -9643,15 +9649,15 @@ static void Cmd_setweatherballtype(void) if (gBattleWeather & B_WEATHER_ANY) gBattleScripting.dmgMultiplier = 2; if (gBattleWeather & B_WEATHER_RAIN) - *(&gBattleStruct->dynamicMoveType) = TYPE_WATER | 0x80; + *(&gBattleStruct->dynamicMoveType) = TYPE_WATER | F_DYNAMIC_TYPE_2; else if (gBattleWeather & B_WEATHER_SANDSTORM) - *(&gBattleStruct->dynamicMoveType) = TYPE_ROCK | 0x80; + *(&gBattleStruct->dynamicMoveType) = TYPE_ROCK | F_DYNAMIC_TYPE_2; else if (gBattleWeather & B_WEATHER_SUN) - *(&gBattleStruct->dynamicMoveType) = TYPE_FIRE | 0x80; + *(&gBattleStruct->dynamicMoveType) = TYPE_FIRE | F_DYNAMIC_TYPE_2; else if (gBattleWeather & B_WEATHER_HAIL) - *(&gBattleStruct->dynamicMoveType) = TYPE_ICE | 0x80; + *(&gBattleStruct->dynamicMoveType) = TYPE_ICE | F_DYNAMIC_TYPE_2; else - *(&gBattleStruct->dynamicMoveType) = TYPE_NORMAL | 0x80; + *(&gBattleStruct->dynamicMoveType) = TYPE_NORMAL | F_DYNAMIC_TYPE_2; } gBattlescriptCurrInstr++; @@ -9663,10 +9669,10 @@ static void Cmd_tryrecycleitem(void) gActiveBattler = gBattlerAttacker; usedHeldItem = &gBattleStruct->usedHeldItems[gActiveBattler]; - if (*usedHeldItem != 0 && gBattleMons[gActiveBattler].item == 0) + if (*usedHeldItem != ITEM_NONE && gBattleMons[gActiveBattler].item == ITEM_NONE) { gLastUsedItem = *usedHeldItem; - *usedHeldItem = 0; + *usedHeldItem = ITEM_NONE; gBattleMons[gActiveBattler].item = gLastUsedItem; BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBattler].item); @@ -9704,7 +9710,7 @@ static void Cmd_pursuitrelated(void) && gChosenActionByBattler[gActiveBattler] == B_ACTION_USE_MOVE && gChosenMoveByBattler[gActiveBattler] == MOVE_PURSUIT) { - gActionsByTurnOrder[gActiveBattler] = 11; + gActionsByTurnOrder[gActiveBattler] = B_ACTION_TRY_FINISH; gCurrentMove = MOVE_PURSUIT; gBattlescriptCurrInstr += 5; gBattleScripting.animTurn = 1; @@ -9849,7 +9855,7 @@ static void Cmd_handleballthrow(void) } else { - if (gBattleResults.catchAttempts[gLastUsedItem - ITEM_ULTRA_BALL] < 0xFF) + if (gBattleResults.catchAttempts[gLastUsedItem - ITEM_ULTRA_BALL] < 255) gBattleResults.catchAttempts[gLastUsedItem - ITEM_ULTRA_BALL]++; } } diff --git a/src/battle_setup.c b/src/battle_setup.c index 4337ec29cf35..172bfc5beb13 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -319,7 +319,7 @@ const struct RematchTrainer gRematchTable[REMATCH_TABLE_ENTRIES] = [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_3] = 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_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), @@ -460,12 +460,12 @@ static void DoTrainerBattle(void) TryUpdateGymLeaderRematchFromTrainer(); } -static void sub_80B0828(void) +static void DoBattlePyramidTrainerHillBattle(void) { if (InBattlePyramid()) - CreateBattleStartTask(GetSpecialBattleTransition(10), 0); + CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PYRAMID), 0); else - CreateBattleStartTask(GetSpecialBattleTransition(11), 0); + CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_TRAINER_HILL), 0); IncrementGameStat(GAME_STAT_TOTAL_BATTLES); IncrementGameStat(GAME_STAT_TRAINER_BATTLES); @@ -853,16 +853,7 @@ static u8 GetTrainerBattleTransition(void) return sBattleTransitionTable_Trainer[transitionType][1]; } -// 0: Battle Tower -// 3: Battle Dome -// 4: Battle Palace -// 5: Battle Arena -// 6: Battle Factory -// 7: Battle Pike -// 10: Battle Pyramid -// 11: Trainer Hill -// 12: Secret Base -// 13: E-Reader +#define RANDOM_TRANSITION(table)(table[Random() % ARRAY_COUNT(table)]) u8 GetSpecialBattleTransition(s32 id) { u16 var; @@ -873,35 +864,35 @@ u8 GetSpecialBattleTransition(s32 id) { switch (id) { - case 11: - case 12: - case 13: + case B_TRANSITION_GROUP_TRAINER_HILL: + case B_TRANSITION_GROUP_SECRET_BASE: + case B_TRANSITION_GROUP_E_READER: return B_TRANSITION_POKEBALLS_TRAIL; - case 10: - return sBattleTransitionTable_BattlePyramid[Random() % ARRAY_COUNT(sBattleTransitionTable_BattlePyramid)]; - case 3: - return sBattleTransitionTable_BattleDome[Random() % ARRAY_COUNT(sBattleTransitionTable_BattleDome)]; + case B_TRANSITION_GROUP_B_PYRAMID: + return RANDOM_TRANSITION(sBattleTransitionTable_BattlePyramid); + case B_TRANSITION_GROUP_B_DOME: + return RANDOM_TRANSITION(sBattleTransitionTable_BattleDome); } if (VarGet(VAR_FRONTIER_BATTLE_MODE) != FRONTIER_MODE_LINK_MULTIS) - return sBattleTransitionTable_BattleFrontier[Random() % ARRAY_COUNT(sBattleTransitionTable_BattleFrontier)]; + return RANDOM_TRANSITION(sBattleTransitionTable_BattleFrontier); } else { switch (id) { - case 11: - case 12: - case 13: + case B_TRANSITION_GROUP_TRAINER_HILL: + case B_TRANSITION_GROUP_SECRET_BASE: + case B_TRANSITION_GROUP_E_READER: return B_TRANSITION_BIG_POKEBALL; - case 10: - return sBattleTransitionTable_BattlePyramid[Random() % ARRAY_COUNT(sBattleTransitionTable_BattlePyramid)]; - case 3: - return sBattleTransitionTable_BattleDome[Random() % ARRAY_COUNT(sBattleTransitionTable_BattleDome)]; + case B_TRANSITION_GROUP_B_PYRAMID: + return RANDOM_TRANSITION(sBattleTransitionTable_BattlePyramid); + case B_TRANSITION_GROUP_B_DOME: + return RANDOM_TRANSITION(sBattleTransitionTable_BattleDome); } if (VarGet(VAR_FRONTIER_BATTLE_MODE) != FRONTIER_MODE_LINK_MULTIS) - return sBattleTransitionTable_BattleFrontier[Random() % ARRAY_COUNT(sBattleTransitionTable_BattleFrontier)]; + return RANDOM_TRANSITION(sBattleTransitionTable_BattleFrontier); } var = gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum * 2 + 0] @@ -1319,7 +1310,7 @@ void BattleSetup_StartTrainerBattle(void) gMain.savedCallback = CB2_EndTrainerBattle; if (InBattlePyramid() || InTrainerHillChallenge()) - sub_80B0828(); + DoBattlePyramidTrainerHillBattle(); else DoTrainerBattle(); @@ -1575,12 +1566,14 @@ static s32 TrainerIdToRematchTableId(const struct RematchTrainer *table, u16 tra return -1; } -static bool32 sub_80B1D94(s32 rematchTableId) +// Returns TRUE if the given trainer (by their entry in the rematch table) is not allowed to have rematches. +// This applies to the Elite Four and Victory Road Wally (if he's not been defeated yet) +static bool32 IsRematchForbidden(s32 rematchTableId) { if (rematchTableId >= REMATCH_ELITE_FOUR_ENTRIES) return TRUE; - else if (rematchTableId == REMATCH_WALLY_3) - return (FlagGet(FLAG_DEFEATED_WALLY_VICTORY_ROAD) == FALSE); + else if (rematchTableId == REMATCH_WALLY_VR) + return !FlagGet(FLAG_DEFEATED_WALLY_VICTORY_ROAD); else return FALSE; } @@ -1609,7 +1602,7 @@ static bool32 UpdateRandomTrainerRematches(const struct RematchTrainer *table, u for (i = 0; i <= REMATCH_SPECIAL_TRAINER_START; i++) { - if (table[i].mapGroup == mapGroup && table[i].mapNum == mapNum && !sub_80B1D94(i)) + if (table[i].mapGroup == mapGroup && table[i].mapNum == mapNum && !IsRematchForbidden(i)) { if (gSaveBlock1Ptr->trainerRematches[i] != 0) { diff --git a/src/battle_tower.c b/src/battle_tower.c index daf63d016cde..332f00858275 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -2025,7 +2025,7 @@ void DoSpecialTrainerBattle(void) } CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(0)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_TOWER)); break; case SPECIAL_BATTLE_SECRET_BASE: for (i = 0; i < PARTY_SIZE; i++) @@ -2035,7 +2035,7 @@ void DoSpecialTrainerBattle(void) } CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(12)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_SECRET_BASE)); break; case SPECIAL_BATTLE_EREADER: ZeroEnemyPartyMons(); @@ -2045,7 +2045,7 @@ void DoSpecialTrainerBattle(void) gTrainerBattleOpponent_A = 0; CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(13)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_E_READER)); break; case SPECIAL_BATTLE_DOME: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_DOME; @@ -2055,7 +2055,7 @@ void DoSpecialTrainerBattle(void) FillFrontierTrainerParty(DOME_BATTLE_PARTY_SIZE); CreateTask(Task_StartBattleAfterTransition, 1); CreateTask_PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(3)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_DOME)); break; case SPECIAL_BATTLE_PALACE: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_PALACE; @@ -2067,7 +2067,7 @@ void DoSpecialTrainerBattle(void) FillTentTrainerParty(FRONTIER_PARTY_SIZE); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(4)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PALACE)); break; case SPECIAL_BATTLE_ARENA: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_ARENA; @@ -2077,7 +2077,7 @@ void DoSpecialTrainerBattle(void) FillTentTrainerParty(FRONTIER_PARTY_SIZE); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(5)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_ARENA)); break; case SPECIAL_BATTLE_FACTORY: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_FACTORY; @@ -2086,28 +2086,28 @@ void DoSpecialTrainerBattle(void) FillFactoryTrainerParty(); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(6)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_FACTORY)); break; case SPECIAL_BATTLE_PIKE_SINGLE: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_BATTLE_TOWER; FillFrontierTrainerParty(FRONTIER_PARTY_SIZE); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(7)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PIKE)); break; case SPECIAL_BATTLE_PYRAMID: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_PYRAMID; FillFrontierTrainerParty(FRONTIER_PARTY_SIZE); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(10)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PYRAMID)); break; case SPECIAL_BATTLE_PIKE_DOUBLE: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOUBLE | BATTLE_TYPE_TWO_OPPONENTS; FillFrontierTrainersParties(1); CreateTask(Task_StartBattleAfterTransition, 1); PlayMapChosenOrBattleBGM(0); - BattleTransition_StartOnField(GetSpecialBattleTransition(7)); + BattleTransition_StartOnField(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PIKE)); break; case SPECIAL_BATTLE_STEVEN: gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_DOUBLE | BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_MULTI | BATTLE_TYPE_INGAME_PARTNER; diff --git a/src/battle_util.c b/src/battle_util.c index 7b47bc994ae3..11fd31524fac 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -99,10 +99,10 @@ void HandleAction_UseMove(void) // choose move if (gProtectStructs[gBattlerAttacker].noValidMoves) { - gProtectStructs[gBattlerAttacker].noValidMoves = 0; + gProtectStructs[gBattlerAttacker].noValidMoves = FALSE; gCurrentMove = gChosenMove = MOVE_STRUGGLE; gHitMarker |= HITMARKER_NO_PPDEDUCT; - *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(MOVE_STRUGGLE, 0); + *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(MOVE_STRUGGLE, NO_TARGET_OVERRIDE); } else if (gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS || gBattleMons[gBattlerAttacker].status2 & STATUS2_RECHARGE) { @@ -114,7 +114,7 @@ void HandleAction_UseMove(void) { gCurrentMove = gChosenMove = gDisableStructs[gBattlerAttacker].encoredMove; gCurrMovePos = gChosenMovePos = gDisableStructs[gBattlerAttacker].encoredMovePos; - *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, 0); + *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); } // check if the encored move wasn't overwritten else if (gDisableStructs[gBattlerAttacker].encoredMove != MOVE_NONE @@ -125,12 +125,12 @@ void HandleAction_UseMove(void) gDisableStructs[gBattlerAttacker].encoredMove = MOVE_NONE; gDisableStructs[gBattlerAttacker].encoredMovePos = 0; gDisableStructs[gBattlerAttacker].encoreTimer = 0; - *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, 0); + *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); } else if (gBattleMons[gBattlerAttacker].moves[gCurrMovePos] != gChosenMoveByBattler[gBattlerAttacker]) { gCurrentMove = gChosenMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; - *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, 0); + *(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); } else { @@ -323,11 +323,11 @@ void HandleAction_UseItem(void) } else if (gLastUsedItem == ITEM_POKE_DOLL || gLastUsedItem == ITEM_FLUFFY_TAIL) { - gBattlescriptCurrInstr = gBattlescriptsForRunningByItem[0]; + gBattlescriptCurrInstr = gBattlescriptsForRunningByItem[0]; // BattleScript_RunByUsingItem } else if (GetBattlerSide(gBattlerAttacker) == B_SIDE_PLAYER) { - gBattlescriptCurrInstr = gBattlescriptsForUsingItem[0]; + gBattlescriptCurrInstr = gBattlescriptsForUsingItem[0]; // BattleScript_PlayerUsesItem } else { @@ -417,7 +417,7 @@ bool8 TryRunFromBattle(u8 battler) if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN) { gLastUsedItem = gBattleMons[battler].item; - gProtectStructs[battler].fleeFlag = 1; + gProtectStructs[battler].fleeType = FLEE_ITEM; effect++; } else if (gBattleMons[battler].ability == ABILITY_RUN_AWAY) @@ -430,14 +430,14 @@ bool8 TryRunFromBattle(u8 battler) if (speedVar > (Random() & 0xFF)) { gLastUsedAbility = ABILITY_RUN_AWAY; - gProtectStructs[battler].fleeFlag = 2; + gProtectStructs[battler].fleeType = FLEE_ABILITY; effect++; } } else { gLastUsedAbility = ABILITY_RUN_AWAY; - gProtectStructs[battler].fleeFlag = 2; + gProtectStructs[battler].fleeType = FLEE_ABILITY; effect++; } } @@ -562,7 +562,7 @@ void HandleAction_ThrowPokeblock(void) gBattleCommunication[MULTISTRING_CHOOSER] = gBattleBufferB[gBattlerAttacker][1] - 1; gLastUsedItem = gBattleBufferB[gBattlerAttacker][2]; - if (gBattleResults.pokeblockThrows < 0xFF) + if (gBattleResults.pokeblockThrows < 255) gBattleResults.pokeblockThrows++; if (gBattleStruct->safariPkblThrowCounter < 3) gBattleStruct->safariPkblThrowCounter++; @@ -653,7 +653,7 @@ void HandleAction_NothingIsFainted(void) void HandleAction_ActionFinished(void) { - *(gBattleStruct->monToSwitchIntoId + gBattlerByTurnOrder[gCurrentTurnActionNumber]) = 6; + *(gBattleStruct->monToSwitchIntoId + gBattlerByTurnOrder[gCurrentTurnActionNumber]) = PARTY_SIZE; gCurrentTurnActionNumber++; gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; SpecialStatusesClear(); @@ -679,7 +679,6 @@ void HandleAction_ActionFinished(void) gBattleResources->battleScriptsStack->size = 0; } -// rom const data static const u16 sSoundMovesTable[] = { MOVE_GROWL, MOVE_ROAR, MOVE_SING, MOVE_SUPERSONIC, MOVE_SCREECH, MOVE_SNORE, @@ -709,13 +708,13 @@ u8 GetBattlerForBattleScript(u8 caseId) case BS_FAINTED: ret = gBattlerFainted; break; - case 5: + case BS_UNK_5: ret = gBattlerFainted; break; - case 4: - case 6: - case 8: - case 9: + case BS_ATTACKER_WITH_PARTNER: + case BS_UNK_6: + case BS_ATTACKER_SIDE: + case BS_NOT_ATTACKER_SIDE: case BS_PLAYER1: ret = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); break; @@ -763,7 +762,7 @@ void PressurePPLose(u8 target, u8 attacker, u16 move) void PressurePPLoseOnUsingImprison(u8 attacker) { int i, j; - int imprisonPos = 4; + int imprisonPos = MAX_MON_MOVES; u8 atkSide = GetBattlerSide(attacker); for (i = 0; i < gBattlersCount; i++) @@ -797,7 +796,7 @@ void PressurePPLoseOnUsingImprison(u8 attacker) void PressurePPLoseOnUsingPerishSong(u8 attacker) { int i, j; - int perishSongPos = 4; + int perishSongPos = MAX_MON_MOVES; for (i = 0; i < gBattlersCount; i++) { @@ -858,17 +857,17 @@ void MarkBattlerReceivedLinkData(u8 battlerId) for (i = 0; i < GetLinkPlayerCount(); i++) gBattleControllerExecFlags |= gBitTable[battlerId] << (i << 2); - gBattleControllerExecFlags &= ~(0x10000000 << battlerId); + gBattleControllerExecFlags &= ~((1 << 28) << battlerId); } void CancelMultiTurnMoves(u8 battler) { - gBattleMons[battler].status2 &= ~(STATUS2_MULTIPLETURNS); - gBattleMons[battler].status2 &= ~(STATUS2_LOCK_CONFUSE); - gBattleMons[battler].status2 &= ~(STATUS2_UPROAR); - gBattleMons[battler].status2 &= ~(STATUS2_BIDE); + gBattleMons[battler].status2 &= ~STATUS2_MULTIPLETURNS; + gBattleMons[battler].status2 &= ~STATUS2_LOCK_CONFUSE; + gBattleMons[battler].status2 &= ~STATUS2_UPROAR; + gBattleMons[battler].status2 &= ~STATUS2_BIDE; - gStatuses3[battler] &= ~(STATUS3_SEMI_INVULNERABLE); + gStatuses3[battler] &= ~STATUS3_SEMI_INVULNERABLE; gDisableStructs[battler].rolloutTimer = 0; gDisableStructs[battler].furyCutterCounter = 0; @@ -927,7 +926,6 @@ void OpponentSwitchInResetSentPokesToOpponentValue(u8 battler) if (!(gAbsentBattlerFlags & gBitTable[i])) bits |= gBitTable[gBattlerPartyIndexes[i]]; } - gSentPokesToOpponent[flank] = bits; } } @@ -975,7 +973,7 @@ u8 TrySetCantSelectMoveBattleScript(void) if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { gPalaceSelectionBattleScripts[gActiveBattler] = BattleScript_SelectingDisabledMoveInPalace; - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -990,7 +988,7 @@ u8 TrySetCantSelectMoveBattleScript(void) if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { gPalaceSelectionBattleScripts[gActiveBattler] = BattleScript_SelectingTormentedMoveInPalace; - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -1005,7 +1003,7 @@ u8 TrySetCantSelectMoveBattleScript(void) if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { gPalaceSelectionBattleScripts[gActiveBattler] = BattleScript_SelectingNotAllowedMoveTauntInPalace; - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -1020,7 +1018,7 @@ u8 TrySetCantSelectMoveBattleScript(void) if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { gPalaceSelectionBattleScripts[gActiveBattler] = BattleScript_SelectingImprisonedMoveInPalace; - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -1036,13 +1034,13 @@ u8 TrySetCantSelectMoveBattleScript(void) gPotentialItemEffectBattler = gActiveBattler; - if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != 0 && *choicedMove != 0xFFFF && *choicedMove != move) + if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != 0xFFFF && *choicedMove != move) { gCurrentMove = *choicedMove; gLastUsedItem = gBattleMons[gActiveBattler].item; if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -1055,7 +1053,7 @@ u8 TrySetCantSelectMoveBattleScript(void) { if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gProtectStructs[gActiveBattler].palaceUnableToUseMove = 1; + gProtectStructs[gActiveBattler].palaceUnableToUseMove = TRUE; } else { @@ -1082,43 +1080,53 @@ u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check) for (i = 0; i < MAX_MON_MOVES; i++) { - if (gBattleMons[battlerId].moves[i] == 0 && check & MOVE_LIMITATION_ZEROMOVE) + // No move + if (gBattleMons[battlerId].moves[i] == MOVE_NONE && check & MOVE_LIMITATION_ZEROMOVE) unusableMoves |= gBitTable[i]; + // No PP if (gBattleMons[battlerId].pp[i] == 0 && check & MOVE_LIMITATION_PP) unusableMoves |= gBitTable[i]; + // Disable if (gBattleMons[battlerId].moves[i] == gDisableStructs[battlerId].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) unusableMoves |= gBitTable[i]; + // Taunt if (gDisableStructs[battlerId].tauntTimer && check & MOVE_LIMITATION_TAUNT && gBattleMoves[gBattleMons[battlerId].moves[i]].power == 0) unusableMoves |= gBitTable[i]; + // Imprison if (GetImprisonedMovesCount(battlerId, gBattleMons[battlerId].moves[i]) && check & MOVE_LIMITATION_IMPRISON) unusableMoves |= gBitTable[i]; + // Encore if (gDisableStructs[battlerId].encoreTimer && gDisableStructs[battlerId].encoredMove != gBattleMons[battlerId].moves[i]) unusableMoves |= gBitTable[i]; - if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != 0 && *choicedMove != 0xFFFF && *choicedMove != gBattleMons[battlerId].moves[i]) + // Choice Band + if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != 0xFFFF && *choicedMove != gBattleMons[battlerId].moves[i]) unusableMoves |= gBitTable[i]; } return unusableMoves; } +#define ALL_MOVES_MASK ((1 << MAX_MON_MOVES) - 1) bool8 AreAllMovesUnusable(void) { u8 unusable; - unusable = CheckMoveLimitations(gActiveBattler, 0, 0xFF); + unusable = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); - if (unusable == 0xF) // All moves are unusable. + if (unusable == ALL_MOVES_MASK) // All moves are unusable. { - gProtectStructs[gActiveBattler].noValidMoves = 1; + gProtectStructs[gActiveBattler].noValidMoves = TRUE; gSelectionBattleScripts[gActiveBattler] = BattleScript_NoMovesLeft; } else { - gProtectStructs[gActiveBattler].noValidMoves = 0; + gProtectStructs[gActiveBattler].noValidMoves = FALSE; } - return (unusable == 0xF); + return (unusable == ALL_MOVES_MASK); } +#undef ALL_MOVES_MASK u8 GetImprisonedMovesCount(u8 battlerId, u16 move) { @@ -1475,12 +1483,12 @@ u8 DoBattlerEndTurnEffects(void) gBattleStruct->turnEffectsTracker++; break; case ENDTURN_ITEMS1: // item effects - if (ItemBattleEffects(1, gActiveBattler, FALSE)) + if (ItemBattleEffects(ITEMEFFECT_NORMAL, gActiveBattler, FALSE)) effect++; gBattleStruct->turnEffectsTracker++; break; case ENDTURN_ITEMS2: // item effects again - if (ItemBattleEffects(1, gActiveBattler, TRUE)) + if (ItemBattleEffects(ITEMEFFECT_NORMAL, gActiveBattler, TRUE)) effect++; gBattleStruct->turnEffectsTracker++; break; @@ -1608,8 +1616,8 @@ u8 DoBattlerEndTurnEffects(void) if ((gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP) && gBattleMons[gBattlerAttacker].ability != ABILITY_SOUNDPROOF) { - gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_SLEEP); - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gBattlerAttacker].status1 &= ~STATUS1_SLEEP; + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; gBattleCommunication[MULTISTRING_CHOOSER] = 1; BattleScriptExecute(BattleScript_MonWokeUpInUproar); gActiveBattler = gBattlerAttacker; @@ -1658,7 +1666,7 @@ u8 DoBattlerEndTurnEffects(void) else if (!(gBattleMons[gActiveBattler].status2 & STATUS2_LOCK_CONFUSE) && (gBattleMons[gActiveBattler].status2 & STATUS2_MULTIPLETURNS)) { - gBattleMons[gActiveBattler].status2 &= ~(STATUS2_MULTIPLETURNS); + gBattleMons[gActiveBattler].status2 &= ~STATUS2_MULTIPLETURNS; if (!(gBattleMons[gActiveBattler].status2 & STATUS2_CONFUSION)) { gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_CONFUSION | MOVE_EFFECT_AFFECTS_USER; @@ -1797,7 +1805,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void) if (gWishFutureKnock.futureSightCounter[gActiveBattler] == 0 && gWishFutureKnock.futureSightCounter[gActiveBattler ^ BIT_FLANK] == 0) { - gSideStatuses[GET_BATTLER_SIDE(gBattlerTarget)] &= ~(SIDE_STATUS_FUTUREATTACK); + gSideStatuses[GET_BATTLER_SIDE(gBattlerTarget)] &= ~SIDE_STATUS_FUTUREATTACK; } return TRUE; } @@ -1934,7 +1942,10 @@ bool8 HandleFaintedMonActions(void) gBattleStruct->faintedActionsState = 4; break; case 6: - if (AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE1, 0, 0, 0, 0) || AbilityBattleEffects(ABILITYEFFECT_TRACE, 0, 0, 0, 0) || ItemBattleEffects(1, 0, TRUE) || AbilityBattleEffects(ABILITYEFFECT_FORECAST, 0, 0, 0, 0)) + if (AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE1, 0, 0, 0, 0) + || AbilityBattleEffects(ABILITYEFFECT_TRACE, 0, 0, 0, 0) + || ItemBattleEffects(ITEMEFFECT_NORMAL, 0, TRUE) + || AbilityBattleEffects(ABILITYEFFECT_FORECAST, 0, 0, 0, 0)) return TRUE; gBattleStruct->faintedActionsState++; break; @@ -1951,7 +1962,7 @@ void TryClearRageStatuses(void) for (i = 0; i < gBattlersCount; i++) { if ((gBattleMons[i].status2 & STATUS2_RAGE) && gChosenMoveByBattler[i] != MOVE_RAGE) - gBattleMons[i].status2 &= ~(STATUS2_RAGE); + gBattleMons[i].status2 &= ~STATUS2_RAGE; } } @@ -1983,8 +1994,8 @@ u8 AtkCanceller_UnableToUseMove(void) switch (gBattleStruct->atkCancellerTracker) { case CANCELLER_FLAGS: // flags clear - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_DESTINY_BOND); - gStatuses3[gBattlerAttacker] &= ~(STATUS3_GRUDGE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_DESTINY_BOND; + gStatuses3[gBattlerAttacker] &= ~STATUS3_GRUDGE; gBattleStruct->atkCancellerTracker++; break; case CANCELLER_ASLEEP: // check being asleep @@ -1992,8 +2003,8 @@ u8 AtkCanceller_UnableToUseMove(void) { if (UproarWakeUpCheck(gBattlerAttacker)) { - gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_SLEEP); - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gBattlerAttacker].status1 &= ~STATUS1_SLEEP; + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP_UPROAR; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; @@ -2007,7 +2018,7 @@ u8 AtkCanceller_UnableToUseMove(void) else toSub = 1; if ((gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP) < toSub) - gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_SLEEP); + gBattleMons[gBattlerAttacker].status1 &= ~STATUS1_SLEEP; else gBattleMons[gBattlerAttacker].status1 -= toSub; if (gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP) @@ -2021,7 +2032,7 @@ u8 AtkCanceller_UnableToUseMove(void) } else { - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP; gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp; @@ -2049,7 +2060,7 @@ u8 AtkCanceller_UnableToUseMove(void) } else // unfreeze { - gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_FREEZE); + gBattleMons[gBattlerAttacker].status1 &= ~STATUS1_FREEZE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED; @@ -2073,7 +2084,7 @@ u8 AtkCanceller_UnableToUseMove(void) case CANCELLER_RECHARGE: // recharge if (gBattleMons[gBattlerAttacker].status2 & STATUS2_RECHARGE) { - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_RECHARGE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_RECHARGE; gDisableStructs[gBattlerAttacker].rechargeTimer = 0; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedMustRecharge; @@ -2085,7 +2096,7 @@ u8 AtkCanceller_UnableToUseMove(void) case CANCELLER_FLINCH: // flinch if (gBattleMons[gBattlerAttacker].status2 & STATUS2_FLINCHED) { - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_FLINCHED); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_FLINCHED; gProtectStructs[gBattlerAttacker].flinchImmobility = 1; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedFlinched; @@ -2203,14 +2214,14 @@ u8 AtkCanceller_UnableToUseMove(void) else { // This is removed in Emerald for some reason - //gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_MULTIPLETURNS); + //gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_MULTIPLETURNS; if (gTakenDmg[gBattlerAttacker]) { gCurrentMove = MOVE_BIDE; *bideDmg = gTakenDmg[gBattlerAttacker] * 2; gBattlerTarget = gTakenDmgByBattler[gBattlerAttacker]; if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) - gBattlerTarget = GetMoveTarget(MOVE_BIDE, 1); + gBattlerTarget = GetMoveTarget(MOVE_BIDE, MOVE_TARGET_SELECTED + 1); gBattlescriptCurrInstr = BattleScript_BideAttack; } else @@ -2227,7 +2238,7 @@ u8 AtkCanceller_UnableToUseMove(void) { if (gBattleMoves[gCurrentMove].effect == EFFECT_THAW_HIT) { - gBattleMons[gBattlerAttacker].status1 &= ~(STATUS1_FREEZE); + gBattleMons[gBattlerAttacker].status1 &= ~STATUS1_FREEZE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED_BY_MOVE; @@ -2268,14 +2279,14 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) party = gEnemyParty; id1 = ((battler & BIT_FLANK) / 2); - for (i = id1 * 3; i < id1 * 3 + 3; i++) + for (i = id1 * MULTI_PARTY_SIZE; i < id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG) break; } - return (i == id1 * 3 + 3); + return (i == id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); } else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { @@ -2308,14 +2319,14 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) id1 = GetLinkTrainerFlankId(id2); } - for (i = id1 * 3; i < id1 * 3 + 3; i++) + for (i = id1 * MULTI_PARTY_SIZE; i < id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG) break; } - return (i == id1 * 3 + 3); + return (i == id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); } else if ((gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) && GetBattlerSide(battler) == B_SIDE_OPPONENT) { @@ -2324,9 +2335,9 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) if (battler == 1) id1 = 0; else - id1 = 3; + id1 = MULTI_PARTY_SIZE; - for (i = id1; i < id1 + 3; i++) + for (i = id1; i < id1 + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE @@ -2368,51 +2379,41 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) } } -enum -{ - CASTFORM_NO_CHANGE, //0 - CASTFORM_TO_NORMAL, //1 - CASTFORM_TO_FIRE, //2 - CASTFORM_TO_WATER, //3 - CASTFORM_TO_ICE, //4 -}; - u8 CastformDataTypeChange(u8 battler) { u8 formChange = 0; if (gBattleMons[battler].species != SPECIES_CASTFORM || gBattleMons[battler].ability != ABILITY_FORECAST || gBattleMons[battler].hp == 0) - return CASTFORM_NO_CHANGE; + return 0; // No change if (!WEATHER_HAS_EFFECT && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL)) { SET_BATTLER_TYPE(battler, TYPE_NORMAL); - return CASTFORM_TO_NORMAL; + return CASTFORM_NORMAL + 1; } if (!WEATHER_HAS_EFFECT) - return CASTFORM_NO_CHANGE; + return 0; // No change if (!(gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SUN | B_WEATHER_HAIL)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL)) { SET_BATTLER_TYPE(battler, TYPE_NORMAL); - formChange = CASTFORM_TO_NORMAL; + formChange = CASTFORM_NORMAL + 1; } if (gBattleWeather & B_WEATHER_SUN && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE)) { SET_BATTLER_TYPE(battler, TYPE_FIRE); - formChange = CASTFORM_TO_FIRE; + formChange = CASTFORM_FIRE + 1; } if (gBattleWeather & B_WEATHER_RAIN && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER)) { SET_BATTLER_TYPE(battler, TYPE_WATER); - formChange = CASTFORM_TO_WATER; + formChange = CASTFORM_WATER + 1; } if (gBattleWeather & B_WEATHER_HAIL && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE)) { SET_BATTLER_TYPE(battler, TYPE_ICE); - formChange = CASTFORM_TO_ICE; + formChange = CASTFORM_ICE + 1; } return formChange; } -// The largest function in the game, but even it could not save itself from decompiling. u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveArg) { u8 effect = 0; @@ -2550,7 +2551,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA break; case ABILITY_FORECAST: effect = CastformDataTypeChange(battler); - if (effect != 0) + if (effect) { BattleScriptPushCursorAndCallback(BattleScript_CastformChange); gBattleScripting.battler = battler; @@ -2571,7 +2572,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA for (target1 = 0; target1 < gBattlersCount; target1++) { effect = CastformDataTypeChange(target1); - if (effect != 0) + if (effect) { BattleScriptPushCursorAndCallback(BattleScript_CastformChange); gBattleScripting.battler = target1; @@ -2616,7 +2617,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (gBattleMons[battler].status1 & STATUS1_FREEZE) StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn); gBattleMons[battler].status1 = 0; - gBattleMons[battler].status2 &= ~(STATUS2_NIGHTMARE); // fix nightmare glitch + gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE; // fix nightmare glitch gBattleScripting.battler = gActiveBattler = battler; BattleScriptPushCursorAndCallback(BattleScript_ShedSkinActivates); BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1); @@ -2884,7 +2885,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITY_VITAL_SPIRIT: if (gBattleMons[battler].status1 & STATUS1_SLEEP) { - gBattleMons[battler].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE; StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn); effect = 1; } @@ -2919,10 +2920,10 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA gBattleMons[battler].status1 = 0; break; case 2: // get rid of confusion - gBattleMons[battler].status2 &= ~(STATUS2_CONFUSION); + gBattleMons[battler].status2 &= ~STATUS2_CONFUSION; break; case 3: // get rid of infatuation - gBattleMons[battler].status2 &= ~(STATUS2_INFATUATION); + gBattleMons[battler].status2 &= ~STATUS2_INFATUATION; break; } @@ -2955,7 +2956,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITYEFFECT_SYNCHRONIZE: // 7 if (gLastUsedAbility == ABILITY_SYNCHRONIZE && (gHitMarker & HITMARKER_SYNCHRONISE_EFFECT)) { - gHitMarker &= ~(HITMARKER_SYNCHRONISE_EFFECT); + gHitMarker &= ~HITMARKER_SYNCHRONISE_EFFECT; gBattleStruct->synchronizeMoveEffect &= ~(MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN); if (gBattleStruct->synchronizeMoveEffect == MOVE_EFFECT_TOXIC) gBattleStruct->synchronizeMoveEffect = MOVE_EFFECT_POISON; @@ -2971,7 +2972,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITYEFFECT_ATK_SYNCHRONIZE: // 8 if (gLastUsedAbility == ABILITY_SYNCHRONIZE && (gHitMarker & HITMARKER_SYNCHRONISE_EFFECT)) { - gHitMarker &= ~(HITMARKER_SYNCHRONISE_EFFECT); + gHitMarker &= ~HITMARKER_SYNCHRONISE_EFFECT; gBattleStruct->synchronizeMoveEffect &= ~(MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN); if (gBattleStruct->synchronizeMoveEffect == MOVE_EFFECT_TOXIC) gBattleStruct->synchronizeMoveEffect = MOVE_EFFECT_POISON; @@ -2990,7 +2991,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (gBattleMons[i].ability == ABILITY_INTIMIDATE && gStatuses3[i] & STATUS3_INTIMIDATE_POKES) { gLastUsedAbility = ABILITY_INTIMIDATE; - gStatuses3[i] &= ~(STATUS3_INTIMIDATE_POKES); + gStatuses3[i] &= ~STATUS3_INTIMIDATE_POKES; BattleScriptPushCursorAndCallback(BattleScript_IntimidateActivatesEnd3); gBattleStruct->intimidateBattler = i; effect++; @@ -3045,7 +3046,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (effect) { BattleScriptPushCursorAndCallback(BattleScript_TraceActivates); - gStatuses3[i] &= ~(STATUS3_TRACE); + gStatuses3[i] &= ~STATUS3_TRACE; gBattleScripting.battler = i; PREPARE_MON_NICK_WITH_PREFIX_BUFFER(gBattleTextBuff1, gActiveBattler, gBattlerPartyIndexes[gActiveBattler]) @@ -3061,7 +3062,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (gBattleMons[i].ability == ABILITY_INTIMIDATE && (gStatuses3[i] & STATUS3_INTIMIDATE_POKES)) { gLastUsedAbility = ABILITY_INTIMIDATE; - gStatuses3[i] &= ~(STATUS3_INTIMIDATE_POKES); + gStatuses3[i] &= ~STATUS3_INTIMIDATE_POKES; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_IntimidateActivates; gBattleStruct->intimidateBattler = i; @@ -3200,14 +3201,44 @@ void BattleScriptPushCursorAndCallback(const u8 *BS_ptr) enum { - ITEM_NO_EFFECT, // 0 - ITEM_STATUS_CHANGE, // 1 - ITEM_EFFECT_OTHER, // 2 - ITEM_PP_CHANGE, // 3 - ITEM_HP_CHANGE, // 4 - ITEM_STATS_CHANGE, // 5 + ITEM_NO_EFFECT, + ITEM_STATUS_CHANGE, + ITEM_EFFECT_OTHER, + ITEM_PP_CHANGE, + ITEM_HP_CHANGE, + ITEM_STATS_CHANGE, }; +#define TRY_EAT_CONFUSE_BERRY(flavor) \ + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) \ + { \ + PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, flavor); \ + gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; \ + if (gBattleMoveDamage == 0) \ + gBattleMoveDamage = 1; \ + if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) \ + gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; \ + gBattleMoveDamage *= -1; \ + if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, flavor) < 0) \ + BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); \ + else \ + BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); \ + effect = ITEM_HP_CHANGE; \ + } + +#define TRY_EAT_STAT_UP_BERRY(stat) \ + if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam \ + && !moveTurn && gBattleMons[battlerId].statStages[stat] < MAX_STAT_STAGE) \ + { \ + PREPARE_STAT_BUFFER(gBattleTextBuff1, stat); \ + gEffectBattler = battlerId; \ + SET_STATCHANGER(stat, 1, FALSE); \ + gBattleScripting.animArg1 = 14 + (stat); \ + gBattleScripting.animArg2 = 0; \ + BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); \ + effect = ITEM_STATS_CHANGE; \ + } + u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) { int i = 0; @@ -3282,7 +3313,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) break; } break; - case 1: + case ITEMEFFECT_NORMAL: if (gBattleMons[battlerId].hp) { switch (battlerHoldEffect) @@ -3295,7 +3326,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; gBattleMoveDamage *= -1; BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = 4; + effect = ITEM_HP_CHANGE; } break; case HOLD_EFFECT_RESTORE_PP: @@ -3365,105 +3396,27 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) RecordItemEffectBattle(battlerId, battlerHoldEffect); } break; - // nice copy/paste there gamefreak, making a function for confuse berries was too much eh? case HOLD_EFFECT_CONFUSE_SPICY: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) - { - PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, FLAVOR_SPICY); - - gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; - if (gBattleMoveDamage == 0) - gBattleMoveDamage = 1; - if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) - gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; - gBattleMoveDamage *= -1; - if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, FLAVOR_SPICY) < 0) - BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); - else - BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = ITEM_HP_CHANGE; - } + TRY_EAT_CONFUSE_BERRY(FLAVOR_SPICY); break; case HOLD_EFFECT_CONFUSE_DRY: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) - { - PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, FLAVOR_DRY); - - gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; - if (gBattleMoveDamage == 0) - gBattleMoveDamage = 1; - if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) - gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; - gBattleMoveDamage *= -1; - if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, FLAVOR_DRY) < 0) - BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); - else - BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = ITEM_HP_CHANGE; - } + TRY_EAT_CONFUSE_BERRY(FLAVOR_DRY); break; case HOLD_EFFECT_CONFUSE_SWEET: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) - { - PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, FLAVOR_SWEET); - - gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; - if (gBattleMoveDamage == 0) - gBattleMoveDamage = 1; - if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) - gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; - gBattleMoveDamage *= -1; - if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, FLAVOR_SWEET) < 0) - BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); - else - BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = ITEM_HP_CHANGE; - } + TRY_EAT_CONFUSE_BERRY(FLAVOR_SWEET); break; case HOLD_EFFECT_CONFUSE_BITTER: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) - { - PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, FLAVOR_BITTER); - - gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; - if (gBattleMoveDamage == 0) - gBattleMoveDamage = 1; - if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) - gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; - gBattleMoveDamage *= -1; - if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, FLAVOR_BITTER) < 0) - BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); - else - BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = ITEM_HP_CHANGE; - } + TRY_EAT_CONFUSE_BERRY(FLAVOR_BITTER); break; case HOLD_EFFECT_CONFUSE_SOUR: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) - { - PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, FLAVOR_SOUR); - - gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; - if (gBattleMoveDamage == 0) - gBattleMoveDamage = 1; - if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) - gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; - gBattleMoveDamage *= -1; - if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, FLAVOR_SOUR) < 0) - BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); - else - BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); - effect = ITEM_HP_CHANGE; - } + TRY_EAT_CONFUSE_BERRY(FLAVOR_SOUR); break; - // copy/paste again, smh case HOLD_EFFECT_ATTACK_UP: if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam - && !moveTurn && gBattleMons[battlerId].statStages[STAT_ATK] < MAX_STAT_STAGE) + && !moveTurn && gBattleMons[battlerId].statStages[STAT_ATK] < MAX_STAT_STAGE) { PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_ATK); - PREPARE_STRING_BUFFER(gBattleTextBuff2, STRINGID_STATROSE); - + PREPARE_STRING_BUFFER(gBattleTextBuff2, STRINGID_STATROSE); // Only the Attack stat-up berry has this gEffectBattler = battlerId; SET_STATCHANGER(STAT_ATK, 1, FALSE); gBattleScripting.animArg1 = 14 + STAT_ATK; @@ -3473,60 +3426,16 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; case HOLD_EFFECT_DEFENSE_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn - && gBattleMons[battlerId].statStages[STAT_DEF] < MAX_STAT_STAGE) - { - PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_DEF); - - gEffectBattler = battlerId; - SET_STATCHANGER(STAT_DEF, 1, FALSE); - gBattleScripting.animArg1 = 14 + STAT_DEF; - gBattleScripting.animArg2 = 0; - BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); - effect = ITEM_STATS_CHANGE; - } + TRY_EAT_STAT_UP_BERRY(STAT_DEF); break; case HOLD_EFFECT_SPEED_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn - && gBattleMons[battlerId].statStages[STAT_SPEED] < MAX_STAT_STAGE) - { - PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPEED); - - gEffectBattler = battlerId; - SET_STATCHANGER(STAT_SPEED, 1, FALSE); - gBattleScripting.animArg1 = 14 + STAT_SPEED; - gBattleScripting.animArg2 = 0; - BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); - effect = ITEM_STATS_CHANGE; - } + TRY_EAT_STAT_UP_BERRY(STAT_SPEED); break; case HOLD_EFFECT_SP_ATTACK_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn - && gBattleMons[battlerId].statStages[STAT_SPATK] < MAX_STAT_STAGE) - { - PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPATK); - - gEffectBattler = battlerId; - SET_STATCHANGER(STAT_SPATK, 1, FALSE); - gBattleScripting.animArg1 = 14 + STAT_SPATK; - gBattleScripting.animArg2 = 0; - BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); - effect = ITEM_STATS_CHANGE; - } + TRY_EAT_STAT_UP_BERRY(STAT_SPATK); break; case HOLD_EFFECT_SP_DEFENSE_UP: - if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn - && gBattleMons[battlerId].statStages[STAT_SPDEF] < MAX_STAT_STAGE) - { - PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_SPDEF); - - gEffectBattler = battlerId; - SET_STATCHANGER(STAT_SPDEF, 1, FALSE); - gBattleScripting.animArg1 = 14 + STAT_SPDEF; - gBattleScripting.animArg2 = 0; - BattleScriptExecute(BattleScript_BerryStatRaiseEnd2); - effect = ITEM_STATS_CHANGE; - } + TRY_EAT_STAT_UP_BERRY(STAT_SPDEF); break; case HOLD_EFFECT_CRITICAL_UP: if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn @@ -3540,16 +3449,16 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_RANDOM_STAT_UP: if (!moveTurn && gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam) { - for (i = 0; i < 5; i++) + for (i = 0; i < NUM_STATS - 1; i++) { if (gBattleMons[battlerId].statStages[STAT_ATK + i] < MAX_STAT_STAGE) break; } - if (i != 5) + if (i != NUM_STATS - 1) { do { - i = Random() % 5; + i = Random() % (NUM_STATS - 1); } while (gBattleMons[battlerId].statStages[STAT_ATK + i] == MAX_STAT_STAGE); PREPARE_STAT_BUFFER(gBattleTextBuff1, i + 1); @@ -3575,7 +3484,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_PAR: if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS) { - gBattleMons[battlerId].status1 &= ~(STATUS1_PARALYSIS); + gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS; BattleScriptExecute(BattleScript_BerryCurePrlzEnd2); effect = ITEM_STATUS_CHANGE; } @@ -3591,7 +3500,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_BRN: if (gBattleMons[battlerId].status1 & STATUS1_BURN) { - gBattleMons[battlerId].status1 &= ~(STATUS1_BURN); + gBattleMons[battlerId].status1 &= ~STATUS1_BURN; BattleScriptExecute(BattleScript_BerryCureBrnEnd2); effect = ITEM_STATUS_CHANGE; } @@ -3599,7 +3508,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_FRZ: if (gBattleMons[battlerId].status1 & STATUS1_FREEZE) { - gBattleMons[battlerId].status1 &= ~(STATUS1_FREEZE); + gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE; BattleScriptExecute(BattleScript_BerryCureFrzEnd2); effect = ITEM_STATUS_CHANGE; } @@ -3607,8 +3516,8 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_SLP: if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) { - gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP); - gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP; + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; BattleScriptExecute(BattleScript_BerryCureSlpEnd2); effect = ITEM_STATUS_CHANGE; } @@ -3616,7 +3525,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_CONFUSION: if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION) { - gBattleMons[battlerId].status2 &= ~(STATUS2_CONFUSION); + gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; BattleScriptExecute(BattleScript_BerryCureConfusionEnd2); effect = ITEM_EFFECT_OTHER; } @@ -3632,7 +3541,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) { - gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn); i++; } @@ -3656,12 +3565,12 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn); i++; } - if (!(i > 1)) + if (i <= 1) 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[battlerId].status2 &= ~STATUS2_CONFUSION; BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); effect = ITEM_STATUS_CHANGE; } @@ -3669,7 +3578,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_ATTRACT: if (gBattleMons[battlerId].status2 & STATUS2_INFATUATION) { - gBattleMons[battlerId].status2 &= ~(STATUS2_INFATUATION); + gBattleMons[battlerId].status2 &= ~STATUS2_INFATUATION; StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; @@ -3696,7 +3605,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } } break; - case 2: + case ITEMEFFECT_DUMMY: break; case ITEMEFFECT_MOVE_END: for (battlerId = 0; battlerId < gBattlersCount; battlerId++) @@ -3717,7 +3626,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_PAR: if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS) { - gBattleMons[battlerId].status1 &= ~(STATUS1_PARALYSIS); + gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureParRet; effect = ITEM_STATUS_CHANGE; @@ -3735,7 +3644,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_BRN: if (gBattleMons[battlerId].status1 & STATUS1_BURN) { - gBattleMons[battlerId].status1 &= ~(STATUS1_BURN); + gBattleMons[battlerId].status1 &= ~STATUS1_BURN; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureBrnRet; effect = ITEM_STATUS_CHANGE; @@ -3744,7 +3653,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_FRZ: if (gBattleMons[battlerId].status1 & STATUS1_FREEZE) { - gBattleMons[battlerId].status1 &= ~(STATUS1_FREEZE); + gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureFrzRet; effect = ITEM_STATUS_CHANGE; @@ -3753,8 +3662,8 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_SLP: if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) { - gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP); - gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP; + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureSlpRet; effect = ITEM_STATUS_CHANGE; @@ -3763,7 +3672,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_CONFUSION: if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION) { - gBattleMons[battlerId].status2 &= ~(STATUS2_CONFUSION); + gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_BerryCureConfusionRet; effect = ITEM_EFFECT_OTHER; @@ -3772,7 +3681,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) case HOLD_EFFECT_CURE_ATTRACT: if (gBattleMons[battlerId].status2 & STATUS2_INFATUATION) { - gBattleMons[battlerId].status2 &= ~(STATUS2_INFATUATION); + gBattleMons[battlerId].status2 &= ~STATUS2_INFATUATION; StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn); BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; @@ -3784,32 +3693,28 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) if (gBattleMons[battlerId].status1 & STATUS1_ANY || gBattleMons[battlerId].status2 & STATUS2_CONFUSION) { if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY) - { StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn); - } + if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) { - gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE); + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn); } + if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS) - { StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn); - } + if (gBattleMons[battlerId].status1 & STATUS1_BURN) - { StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn); - } + if (gBattleMons[battlerId].status1 & STATUS1_FREEZE) - { StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn); - } + if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION) - { StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn); - } + gBattleMons[battlerId].status1 = 0; - gBattleMons[battlerId].status2 &= ~(STATUS2_CONFUSION); + gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; BattleScriptPushCursor(); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; @@ -3895,8 +3800,8 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) void ClearFuryCutterDestinyBondGrudge(u8 battlerId) { gDisableStructs[battlerId].furyCutterCounter = 0; - gBattleMons[battlerId].status2 &= ~(STATUS2_DESTINY_BOND); - gStatuses3[battlerId] &= ~(STATUS3_GRUDGE); + gBattleMons[battlerId].status2 &= ~STATUS2_DESTINY_BOND; + gStatuses3[battlerId] &= ~STATUS3_GRUDGE; } void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands @@ -3911,7 +3816,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) u8 moveTarget; u8 side; - if (setTarget) + if (setTarget != NO_TARGET_OVERRIDE) moveTarget = setTarget - 1; else moveTarget = gBattleMoves[move].target; @@ -4037,7 +3942,7 @@ u8 IsMonDisobedient(void) // is not obedient if (gCurrentMove == MOVE_RAGE) - gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_RAGE); + gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_RAGE; if (gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP && (gCurrentMove == MOVE_SNORE || gCurrentMove == MOVE_SLEEP_TALK)) { gBattlescriptCurrInstr = BattleScript_IgnoresWhileAsleep; @@ -4048,7 +3953,7 @@ u8 IsMonDisobedient(void) calc = (gBattleMons[gBattlerAttacker].level + obedienceLevel) * rnd >> 8; if (calc < obedienceLevel) { - calc = CheckMoveLimitations(gBattlerAttacker, gBitTable[gCurrMovePos], 0xFF); + calc = CheckMoveLimitations(gBattlerAttacker, gBitTable[gCurrMovePos], MOVE_LIMITATIONS_ALL); if (calc == 0xF) // all moves cannot be used { // Randomly select, then print a disobedient string @@ -4066,7 +3971,7 @@ u8 IsMonDisobedient(void) gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove; - gBattlerTarget = GetMoveTarget(gCalledMove, 0); + gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); gHitMarker |= HITMARKER_DISOBEDIENT_MOVE; return 2; } diff --git a/src/battle_util2.c b/src/battle_util2.c index 3838f22bbafe..794b4f36afd3 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -34,8 +34,8 @@ void AllocateBattleResources(void) gLinkBattleSendBuffer = AllocZeroed(BATTLE_BUFFER_LINK_SIZE); gLinkBattleRecvBuffer = AllocZeroed(BATTLE_BUFFER_LINK_SIZE); - gUnknown_0202305C = AllocZeroed(0x2000); - gUnknown_02023060 = AllocZeroed(0x1000); + gBattleAnimBgTileBuffer = AllocZeroed(0x2000); + gBattleAnimBgTilemapBuffer = AllocZeroed(0x1000); if (gBattleTypeFlags & BATTLE_TYPE_SECRET_BASE) { @@ -66,8 +66,8 @@ void FreeBattleResources(void) FREE_AND_SET_NULL(gLinkBattleSendBuffer); FREE_AND_SET_NULL(gLinkBattleRecvBuffer); - FREE_AND_SET_NULL(gUnknown_0202305C); - FREE_AND_SET_NULL(gUnknown_02023060); + FREE_AND_SET_NULL(gBattleAnimBgTileBuffer); + FREE_AND_SET_NULL(gBattleAnimBgTilemapBuffer); } } diff --git a/src/contest.c b/src/contest.c index a87e8f28b9c1..3b700c6b9bcb 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1136,9 +1136,9 @@ static void AllocContestResources(void) gContestResources->contestBgTilemaps[3] = AllocZeroed(0x1000); gContestResources->boxBlinkTiles1 = AllocZeroed(0x800); gContestResources->boxBlinkTiles2 = AllocZeroed(0x800); - gContestResources->field_3c = AllocZeroed(0x2000); - gUnknown_0202305C = gContestResources->field_3c; - gUnknown_02023060 = gContestResources->contestBgTilemaps[1]; + gContestResources->animBgTileBuffer = AllocZeroed(0x2000); + gBattleAnimBgTileBuffer = gContestResources->animBgTileBuffer; + gBattleAnimBgTilemapBuffer = gContestResources->contestBgTilemaps[1]; } static void FreeContestResources(void) @@ -1158,10 +1158,10 @@ static void FreeContestResources(void) FREE_AND_SET_NULL(gContestResources->contestBgTilemaps[3]); FREE_AND_SET_NULL(gContestResources->boxBlinkTiles1); FREE_AND_SET_NULL(gContestResources->boxBlinkTiles2); - FREE_AND_SET_NULL(gContestResources->field_3c); + FREE_AND_SET_NULL(gContestResources->animBgTileBuffer); FREE_AND_SET_NULL(gContestResources); - gUnknown_0202305C = NULL; - gUnknown_02023060 = NULL; + gBattleAnimBgTileBuffer = NULL; + gBattleAnimBgTilemapBuffer = NULL; } void CB2_StartContest(void) diff --git a/src/data/text/match_call_messages.h b/src/data/text/match_call_messages.h index c86329ee2fa6..22790c5fb5f1 100644 --- a/src/data/text/match_call_messages.h +++ b/src/data/text/match_call_messages.h @@ -454,7 +454,7 @@ const u8 *const gMatchCallFlavorTexts[REMATCH_TABLE_ENTRIES][CHECK_PAGE_ENTRY_CO [REMATCH_TRENT] = MCFLAVOR(Hiker_Trent), [REMATCH_SAWYER] = MCFLAVOR(Hiker_Sawyer), [REMATCH_KIRA_AND_DAN] = MCFLAVOR(YoungCouple_LoisAndHal), - [REMATCH_WALLY_3] = MCFLAVOR(PkmnTrainer_Wally), + [REMATCH_WALLY_VR] = MCFLAVOR(PkmnTrainer_Wally), [REMATCH_ROXANNE] = MCFLAVOR(RockinWhiz_Roxanne), [REMATCH_BRAWLY] = MCFLAVOR(TheBigHit_Brawly), [REMATCH_WATTSON] = MCFLAVOR(SwellShock_Wattson), diff --git a/src/party_menu.c b/src/party_menu.c index 5711c305564f..a55d397d2e4f 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -944,7 +944,7 @@ static void DisplayPartyPokemonDataToTeachMove(u8 slot, u16 item, u8 tutor) static void DisplayPartyPokemonDataForMultiBattle(u8 slot) { struct PartyMenuBox *menuBox = &sPartyMenuBoxes[slot]; - u8 actualSlot = slot - (3); + u8 actualSlot = slot - MULTI_PARTY_SIZE; if (gMultiPartnerParty[actualSlot].species == SPECIES_NONE) { @@ -6103,7 +6103,7 @@ static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId) s16 *data = gTasks[taskId].data; u8 i; - for (i = 3; i < PARTY_SIZE; i++) + for (i = MULTI_PARTY_SIZE; i < PARTY_SIZE; i++) { if (gMultiPartnerParty[i - MULTI_PARTY_SIZE].species != SPECIES_NONE) { diff --git a/src/pokeball.c b/src/pokeball.c index 52d47b53471e..3d5d664e1301 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -801,9 +801,9 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[sprite->sBattler]], BATTLER_AFFINE_EMERGE); if (GetBattlerSide(sprite->sBattler) == B_SIDE_OPPONENT) - gSprites[gBattlerSpriteIds[sprite->sBattler]].callback = SpriteCb_OpponentMonFromBall; + gSprites[gBattlerSpriteIds[sprite->sBattler]].callback = SpriteCB_OpponentMonFromBall; else - gSprites[gBattlerSpriteIds[sprite->sBattler]].callback = SpriteCb_PlayerMonFromBall; + gSprites[gBattlerSpriteIds[sprite->sBattler]].callback = SpriteCB_PlayerMonFromBall; AnimateSprite(&gSprites[gBattlerSpriteIds[sprite->sBattler]]); gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] = 0x1000; diff --git a/src/pokemon.c b/src/pokemon.c index 62c4441217ae..06a7a01f1e8c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -38,6 +38,7 @@ #include "constants/abilities.h" #include "constants/battle_frontier.h" #include "constants/battle_move_effects.h" +#include "constants/battle_script_commands.h" #include "constants/hold_effects.h" #include "constants/item_effects.h" #include "constants/items.h" @@ -3103,7 +3104,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de if (!typeOverride) type = gBattleMoves[move].type; else - type = typeOverride & 0x3F; + type = typeOverride & DYNAMIC_TYPE_MASK; attack = attacker->attack; defense = defender->defense; diff --git a/src/pokenav_match_call_data.c b/src/pokenav_match_call_data.c index 46ce43d4c198..29dd62621bae 100644 --- a/src/pokenav_match_call_data.c +++ b/src/pokenav_match_call_data.c @@ -336,7 +336,7 @@ static const struct MatchCallWally sWallyMatchCallHeader = .type = MC_TYPE_WALLY, .mapSec = 0, .flag = FLAG_ENABLE_WALLY_MATCH_CALL, - .rematchTableIdx = REMATCH_WALLY_3, + .rematchTableIdx = REMATCH_WALLY_VR, .desc = gText_WallyMatchCallDesc, .textData = sWallyTextScripts, .locationData = sWallyLocationData diff --git a/src/recorded_battle.c b/src/recorded_battle.c index e29792766edc..69ee902105a3 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -65,7 +65,7 @@ struct RecordedBattleSave u8 recordMixFriendName[PLAYER_NAME_LENGTH + 1]; u8 recordMixFriendClass; u8 apprenticeId; - u16 easyChatSpeech[6]; + u16 easyChatSpeech[EASY_CHAT_BATTLE_WORDS_COUNT]; u8 recordMixFriendLanguage; u8 apprenticeLanguage; u8 battleRecord[MAX_BATTLERS_COUNT][BATTLER_RECORD_SIZE]; @@ -93,11 +93,11 @@ EWRAM_DATA static struct Pokemon sSavedPlayerParty[PARTY_SIZE] = {0}; EWRAM_DATA static struct Pokemon sSavedOpponentParty[PARTY_SIZE] = {0}; EWRAM_DATA static u16 sPlayerMonMoves[2][MAX_MON_MOVES] = {0}; EWRAM_DATA static struct PlayerInfo sPlayers[MAX_BATTLERS_COUNT] = {0}; -EWRAM_DATA static bool8 sUnknown_0203CCD0 = 0; +EWRAM_DATA static bool8 sIsPlaybackFinished = 0; EWRAM_DATA static u8 sRecordMixFriendName[PLAYER_NAME_LENGTH + 1] = {0}; EWRAM_DATA static u8 sRecordMixFriendClass = 0; EWRAM_DATA static u8 sApprenticeId = 0; -EWRAM_DATA static u16 sEasyChatSpeech[6] = {0}; +EWRAM_DATA static u16 sEasyChatSpeech[EASY_CHAT_BATTLE_WORDS_COUNT] = {0}; EWRAM_DATA static u8 sBattleOutcome = 0; static u8 sRecordMixFriendLanguage; @@ -113,7 +113,7 @@ void RecordedBattle_Init(u8 mode) s32 i, j; sRecordMode = mode; - sUnknown_0203CCD0 = FALSE; + sIsPlaybackFinished = FALSE; for (i = 0; i < MAX_BATTLERS_COUNT; i++) { @@ -124,16 +124,14 @@ void RecordedBattle_Init(u8 mode) if (mode == B_RECORD_MODE_RECORDING) { for (j = 0; j < BATTLER_RECORD_SIZE; j++) - { sBattleRecords[i][j] = 0xFF; - } sBattleFlags = gBattleTypeFlags; sAI_Scripts = gBattleResources->ai->aiFlags; } } } -void sub_8184E58(void) +void RecordedBattle_SetTrainerInfo(void) { s32 i, j; @@ -150,6 +148,7 @@ void sub_8184E58(void) if (gBattleTypeFlags & BATTLE_TYPE_LINK) { + // Link recorded battle, record info for all trainers u8 linkPlayersCount; u8 text[30]; @@ -163,6 +162,7 @@ void sub_8184E58(void) sPlayers[i].battlerId = gLinkPlayers[i].id; sPlayers[i].language = gLinkPlayers[i].language; + // Record names if (i < linkPlayersCount) { StringCopy(text, gLinkPlayers[i].name); @@ -178,10 +178,11 @@ void sub_8184E58(void) } else { + // Local battle, just record own info sPlayers[0].trainerId = (gSaveBlock2Ptr->playerTrainerId[0]) - | (gSaveBlock2Ptr->playerTrainerId[1] << 8) - | (gSaveBlock2Ptr->playerTrainerId[2] << 16) - | (gSaveBlock2Ptr->playerTrainerId[3] << 24); + | (gSaveBlock2Ptr->playerTrainerId[1] << 8) + | (gSaveBlock2Ptr->playerTrainerId[2] << 16) + | (gSaveBlock2Ptr->playerTrainerId[3] << 24); sPlayers[0].gender = gSaveBlock2Ptr->playerGender; sPlayers[0].battlerId = 0; @@ -195,9 +196,7 @@ void sub_8184E58(void) void RecordedBattle_SetBattlerAction(u8 battlerId, u8 action) { if (sBattlerRecordSizes[battlerId] < BATTLER_RECORD_SIZE && sRecordMode != B_RECORD_MODE_PLAYBACK) - { sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]++] = action; - } } void RecordedBattle_ClearBattlerAction(u8 battlerId, u8 bytesToClear) @@ -220,7 +219,7 @@ u8 RecordedBattle_GetBattlerAction(u8 battlerId) { gSpecialVar_Result = gBattleOutcome = B_OUTCOME_PLAYER_TELEPORTED; // hah ResetPaletteFadeControl(); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); SetMainCallback2(CB2_QuitRecordedBattle); return 0xFF; } @@ -249,9 +248,7 @@ u8 RecordedBattle_BufferNewBattlerData(u8 *dst) dst[idx++] = sBattlerRecordSizes[i] - sBattlerPrevRecordSizes[i]; for (j = 0; j < sBattlerRecordSizes[i] - sBattlerPrevRecordSizes[i]; j++) - { dst[idx++] = sBattleRecords[i][sBattlerPrevRecordSizes[i] + j]; - } sBattlerPrevRecordSizes[i] = sBattlerRecordSizes[i]; } @@ -283,9 +280,7 @@ void RecordedBattle_RecordAllBattlerData(u8 *src) u8 numActions = GetNextRecordedDataByte(src, &idx, &size); for (i = 0; i < numActions; i++) - { sBattleRecords[battlerId][sBattlerSavedRecordSizes[battlerId]++] = GetNextRecordedDataByte(src, &idx, &size); - } } } } @@ -318,7 +313,7 @@ static bool32 IsRecordedBattleSaveValid(struct RecordedBattleSave *save) static bool32 RecordedBattleToSave(struct RecordedBattleSave *battleSave, struct RecordedBattleSave *saveSection) { - memset(saveSection, 0, 0x1000); + memset(saveSection, 0, SECTOR_SIZE); memcpy(saveSection, battleSave, sizeof(*battleSave)); saveSection->checksum = CalcByteArraySum((void*)(saveSection), sizeof(*saveSection) - 4); @@ -338,7 +333,7 @@ bool32 MoveRecordedBattleToSaveData(void) saveAttempts = 0; battleSave = AllocZeroed(sizeof(struct RecordedBattleSave)); - savSection = AllocZeroed(0x1000); + savSection = AllocZeroed(SECTOR_SIZE); for (i = 0; i < PARTY_SIZE; i++) { @@ -349,9 +344,7 @@ bool32 MoveRecordedBattleToSaveData(void) for (i = 0; i < MAX_BATTLERS_COUNT; 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; @@ -471,12 +464,8 @@ bool32 MoveRecordedBattleToSaveData(void) } for (i = 0; i < MAX_BATTLERS_COUNT; i++) - { for (j = 0; j < BATTLER_RECORD_SIZE; j++) - { battleSave->battleRecord[i][j] = sBattleRecords[i][j]; - } - } while (1) { @@ -585,29 +574,21 @@ static void SetVariablesForRecordedBattle(struct RecordedBattleSave *src) sAI_Scripts = src->AI_scripts; for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) - { sRecordMixFriendName[i] = src->recordMixFriendName[i]; - } sRecordMixFriendClass = src->recordMixFriendClass; sApprenticeId = src->apprenticeId; sRecordMixFriendLanguage = src->recordMixFriendLanguage; sApprenticeLanguage = src->apprenticeLanguage; - for (i = 0; i < 6; i++) - { + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) sEasyChatSpeech[i] = src->easyChatSpeech[i]; - } gSaveBlock2Ptr->frontier.lvlMode = src->lvlMode; for (i = 0; i < MAX_BATTLERS_COUNT; i++) - { for (j = 0; j < BATTLER_RECORD_SIZE; j++) - { sBattleRecords[i][j] = src->battleRecord[i][j]; - } - } } void PlayRecordedBattle(void (*CB2_After)(void)) @@ -741,17 +722,20 @@ void sub_818603C(u8 arg0) for (battlerId = 0; battlerId < gBattlersCount; battlerId++) { - if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT) // player's side only + // Player's side only + if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT) { if (arg0 == 1) { + // 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]) break; } - if (j != MAX_MON_MOVES) // player's mon's move has been changed + if (j != MAX_MON_MOVES) { + // At least one of the moves has been changed RecordedBattle_SetBattlerAction(battlerId, ACTION_MOVE_CHANGE); for (j = 0; j < MAX_MON_MOVES; j++) { @@ -779,9 +763,8 @@ void sub_818603C(u8 arg0) RecordedBattle_GetBattlerAction(battlerId); for (j = 0; j < MAX_MON_MOVES; j++) - { - ppBonuses[j] = ((gBattleMons[battlerId].ppBonuses & ((3 << (j << 1)))) >> (j << 1)); - } + ppBonuses[j] = ((gBattleMons[battlerId].ppBonuses & (3 << (j << 1))) >> (j << 1)); + for (j = 0; j < MAX_MON_MOVES; j++) { array1[j] = RecordedBattle_GetBattlerAction(battlerId); @@ -806,9 +789,8 @@ void sub_818603C(u8 arg0) if (!(gBattleMons[battlerId].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)); - } + for (j = 0; j < MAX_MON_MOVES; j++) { movePp.moves[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_MOVE1 + array1[j], NULL); @@ -822,12 +804,10 @@ void sub_818603C(u8 arg0) } var = 0; for (j = 0; j < MAX_MON_MOVES; j++) - { var |= (array3[j]) << (j << 1); - } + SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP_BONUSES, &var); } - gChosenMoveByBattler[battlerId] = gBattleMons[battlerId].moves[*(gBattleStruct->chosenMovePositions + battlerId)]; } } @@ -840,24 +820,24 @@ u32 GetAiScriptsInRecordedBattle(void) return sAI_Scripts; } -void sub_8186444(void) +// Used to determine when the player is allowed to press B to end a recorded battle's playback +void RecordedBattle_SetPlaybackFinished(void) { - sUnknown_0203CCD0 = TRUE; + sIsPlaybackFinished = TRUE; } -bool8 sub_8186450(void) +bool8 RecordedBattle_CanStopPlayback(void) { - return (sUnknown_0203CCD0 == FALSE); + return (sIsPlaybackFinished == FALSE); } void GetRecordedBattleRecordMixFriendName(u8 *dst) { s32 i; - for (i = 0; i < 8; i++) + for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) dst[i] = sRecordMixFriendName[i]; - - dst[7] = EOS; + dst[PLAYER_NAME_LENGTH] = EOS; ConvertInternationalString(dst, sRecordMixFriendLanguage); } From d8e65fc4b669fb0115615299b1255723e9f8397d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 8 Oct 2021 16:50:52 -0400 Subject: [PATCH 286/762] More battle doc, add battle window ids --- ...{unk_battlebox.png => level_up_banner.png} | Bin include/battle_script_commands.h | 5 +- include/constants/battle.h | 39 ++ src/battle_anim.c | 4 - src/battle_arena.c | 23 +- src/battle_bg.c | 156 +++---- src/battle_controller_link_opponent.c | 7 +- src/battle_controller_link_partner.c | 5 +- src/battle_controller_opponent.c | 7 +- src/battle_controller_player.c | 28 +- src/battle_controller_player_partner.c | 7 +- src/battle_controller_recorded_opponent.c | 7 +- src/battle_controller_recorded_player.c | 7 +- src/battle_controller_safari.c | 9 +- src/battle_controller_wally.c | 8 +- src/battle_gfx_sfx_util.c | 4 - src/battle_main.c | 26 +- src/battle_message.c | 393 +++++++++--------- src/battle_script_commands.c | 264 ++++++------ src/evolution_scene.c | 28 +- src/hall_of_fame.c | 2 - src/pokeball.c | 3 - src/pokeblock_feed.c | 2 - src/pokedex.c | 2 - src/sound.c | 7 - src/title_screen.c | 3 - 26 files changed, 523 insertions(+), 523 deletions(-) rename graphics/battle_interface/{unk_battlebox.png => level_up_banner.png} (100%) diff --git a/graphics/battle_interface/unk_battlebox.png b/graphics/battle_interface/level_up_banner.png similarity index 100% rename from graphics/battle_interface/unk_battlebox.png rename to graphics/battle_interface/level_up_banner.png diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h index ee3676463007..90b6d80e865b 100644 --- a/include/battle_script_commands.h +++ b/include/battle_script_commands.h @@ -3,8 +3,9 @@ #include "constants/pokemon.h" -#define WINDOW_CLEAR 0x1 -#define WINDOW_x80 0x80 +// Arguments for 'flags' in HandleBattleWindow +#define WINDOW_CLEAR (1 << 0) +#define WINDOW_BG1 (1 << 7) void AI_CalcDmg(u8 battlerIdAtk, u8 battlerIdDef); u8 TypeCalc(u16 move, u8 battlerIdAtk, u8 battlerIdDef); diff --git a/include/constants/battle.h b/include/constants/battle.h index 62e7cbbfa31f..2534ade4b3ea 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -319,4 +319,43 @@ #define B_WIN_TYPE_NORMAL 0 #define B_WIN_TYPE_ARENA 1 +// Window Ids for gStandardBattleWindowTemplates / gBattleArenaWindowTemplates +#define B_WIN_MSG 0 +#define B_WIN_ACTION_PROMPT 1 // "What will {x} do?" +#define B_WIN_ACTION_MENU 2 // "Fight/PokĂ©mon/Bag/Run" menu +#define B_WIN_MOVE_NAME_1 3 // Top left +#define B_WIN_MOVE_NAME_2 4 // Top right +#define B_WIN_MOVE_NAME_3 5 // Bottom left +#define B_WIN_MOVE_NAME_4 6 // Bottom right +#define B_WIN_PP 7 +#define B_WIN_DUMMY 8 +#define B_WIN_PP_REMAINING 9 +#define B_WIN_MOVE_TYPE 10 +#define B_WIN_SWITCH_PROMPT 11 // "Switch which?" +#define B_WIN_YESNO 12 +#define B_WIN_LEVEL_UP_BOX 13 +#define B_WIN_LEVEL_UP_BANNER 14 +#define B_WIN_VS_PLAYER 15 +#define B_WIN_VS_OPPONENT 16 +#define B_WIN_VS_MULTI_PLAYER_1 17 +#define B_WIN_VS_MULTI_PLAYER_2 18 +#define B_WIN_VS_MULTI_PLAYER_3 19 +#define B_WIN_VS_MULTI_PLAYER_4 20 +#define B_WIN_VS_OUTCOME_DRAW 21 +#define B_WIN_VS_OUTCOME_LEFT 22 +#define B_WIN_VS_OUTCOME_RIGHT 23 + +// The following are duplicate id values for windows that Battle Arena uses differently. +#define ARENA_WIN_PLAYER_NAME 15 +#define ARENA_WIN_VS 16 +#define ARENA_WIN_OPPONENT_NAME 17 +#define ARENA_WIN_MIND 18 +#define ARENA_WIN_SKILL 19 +#define ARENA_WIN_BODY 20 +#define ARENA_WIN_JUDGEMENT_TITLE 21 +#define ARENA_WIN_JUDGEMENT_TEXT 22 + +// Flag for BattlePutTextOnWindow. Never set +#define B_WIN_COPYTOVRAM (1 << 7) + #endif // GUARD_CONSTANTS_BATTLE_H diff --git a/src/battle_anim.c b/src/battle_anim.c index 6cdbed2b745f..4599e3e096c7 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -20,10 +20,6 @@ #define ANIM_SPRITE_INDEX_COUNT 8 -extern struct MusicPlayerInfo gMPlayInfo_BGM; -extern struct MusicPlayerInfo gMPlayInfo_SE1; -extern struct MusicPlayerInfo gMPlayInfo_SE2; - extern const u16 gMovesWithQuietBGM[]; extern const u8 *const gBattleAnims_Moves[]; diff --git a/src/battle_arena.c b/src/battle_arena.c index f61526edcde5..ec48da312889 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -28,7 +28,6 @@ #include "constants/moves.h" #include "constants/rgb.h" -// This file's functions. static void InitArenaChallenge(void); static void GetArenaData(void); static void SetArenaData(void); @@ -39,7 +38,6 @@ static void BufferArenaOpponentName(void); static void SpriteCb_JudgmentIcon(struct Sprite *sprite); static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler); -// Const rom data. static const s8 sMindRatings[] = { [MOVE_NONE] = 0, @@ -501,7 +499,6 @@ static const u16 sLongStreakPrizeItems[] = ITEM_CHOICE_BAND, }; -// code void CallBattleArenaFunction(void) { sArenaFunctions[gSpecialVar_0x8004](); @@ -537,15 +534,15 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) gBattleTextBuff2[0] = CHAR_0; gBattleTextBuff2[1] = EOS; BattleStringExpandPlaceholdersToDisplayedString(gText_PlayerMon1Name); - BattlePutTextOnWindow(gDisplayedStringBattle, 15); - BattlePutTextOnWindow(gText_Vs, 16); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_PLAYER_NAME); + BattlePutTextOnWindow(gText_Vs, ARENA_WIN_VS); BattleStringExpandPlaceholdersToDisplayedString(gText_OpponentMon1Name); - BattlePutTextOnWindow(gDisplayedStringBattle, 17); - BattlePutTextOnWindow(gText_Mind, 18); - BattlePutTextOnWindow(gText_Skill, 19); - BattlePutTextOnWindow(gText_Body, 20); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_OPPONENT_NAME); + BattlePutTextOnWindow(gText_Mind, ARENA_WIN_MIND); + BattlePutTextOnWindow(gText_Skill, ARENA_WIN_SKILL); + BattlePutTextOnWindow(gText_Body, ARENA_WIN_BODY); BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, 21); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; } break; @@ -567,7 +564,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) ShowJudgmentSprite(80, 40, ARENA_CATEGORY_MIND, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 40, ARENA_CATEGORY_MIND, B_POSITION_OPPONENT_LEFT); BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, 21); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; ret = 1; break; @@ -576,7 +573,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) ShowJudgmentSprite(80, 56, ARENA_CATEGORY_SKILL, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 56, ARENA_CATEGORY_SKILL, B_POSITION_OPPONENT_LEFT); BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, 21); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; ret = 1; break; @@ -585,7 +582,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) ShowJudgmentSprite(80, 72, ARENA_CATEGORY_BODY, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 72, ARENA_CATEGORY_BODY, B_POSITION_OPPONENT_LEFT); BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, 21); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; ret = 1; break; diff --git a/src/battle_bg.c b/src/battle_bg.c index 886a3d107fa2..cbd293294cca 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -161,7 +161,7 @@ const struct BgTemplate gBattleBgTemplates[] = static const struct WindowTemplate gStandardBattleWindowTemplates[] = { - { // 0 Standard battle message + [B_WIN_MSG] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, @@ -170,7 +170,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x0090, }, - { // 1 "What will (pokemon) do?" + [B_WIN_ACTION_PROMPT] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 35, @@ -179,7 +179,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x01c0, }, - { // 2 "Fight/Pokemon/Bag/Run" + [B_WIN_ACTION_MENU] = { .bg = 0, .tilemapLeft = 17, .tilemapTop = 35, @@ -188,7 +188,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0190, }, - { // 3 Top left move + [B_WIN_MOVE_NAME_1] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 55, @@ -197,7 +197,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0300, }, - { // 4 Top right move + [B_WIN_MOVE_NAME_2] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 55, @@ -206,7 +206,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0310, }, - { // 5 Bottom left move + [B_WIN_MOVE_NAME_3] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 57, @@ -215,7 +215,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0320, }, - { // 6 Bottom right move + [B_WIN_MOVE_NAME_4] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 57, @@ -224,7 +224,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0330, }, - { + [B_WIN_PP] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 55, @@ -233,7 +233,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0290, }, - { + [B_WIN_DUMMY] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 57, @@ -242,7 +242,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0298, }, - { + [B_WIN_PP_REMAINING] = { .bg = 0, .tilemapLeft = 25, .tilemapTop = 55, @@ -251,7 +251,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0298, }, - { + [B_WIN_MOVE_TYPE] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 57, @@ -260,7 +260,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x02a0, }, - { + [B_WIN_SWITCH_PROMPT] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 55, @@ -269,7 +269,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x02b0, }, - { + [B_WIN_YESNO] = { .bg = 0, .tilemapLeft = 26, .tilemapTop = 9, @@ -278,7 +278,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0100, }, - { + [B_WIN_LEVEL_UP_BOX] = { .bg = 1, .tilemapLeft = 19, .tilemapTop = 8, @@ -287,7 +287,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0100, }, - { + [B_WIN_LEVEL_UP_BANNER] = { .bg = 2, .tilemapLeft = 18, .tilemapTop = 0, @@ -296,7 +296,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 6, .baseBlock = 0x016e, }, - { + [B_WIN_VS_PLAYER] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 3, @@ -305,7 +305,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0020, }, - { + [B_WIN_VS_OPPONENT] = { .bg = 2, .tilemapLeft = 2, .tilemapTop = 3, @@ -314,7 +314,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0040, }, - { + [B_WIN_VS_MULTI_PLAYER_1] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 2, @@ -323,7 +323,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0020, }, - { + [B_WIN_VS_MULTI_PLAYER_2] = { .bg = 2, .tilemapLeft = 2, .tilemapTop = 2, @@ -332,7 +332,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0040, }, - { + [B_WIN_VS_MULTI_PLAYER_3] = { .bg = 1, .tilemapLeft = 2, .tilemapTop = 6, @@ -341,7 +341,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0060, }, - { + [B_WIN_VS_MULTI_PLAYER_4] = { .bg = 2, .tilemapLeft = 2, .tilemapTop = 6, @@ -350,7 +350,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0080, }, - { + [B_WIN_VS_OUTCOME_DRAW] = { .bg = 0, .tilemapLeft = 12, .tilemapTop = 2, @@ -359,7 +359,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x00a0, }, - { + [B_WIN_VS_OUTCOME_LEFT] = { .bg = 0, .tilemapLeft = 4, .tilemapTop = 2, @@ -368,7 +368,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x00a0, }, - { + [B_WIN_VS_OUTCOME_RIGHT] = { .bg = 0, .tilemapLeft = 19, .tilemapTop = 2, @@ -382,7 +382,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = static const struct WindowTemplate gBattleArenaWindowTemplates[] = { - { + [B_WIN_MSG] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, @@ -391,7 +391,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x0090, }, - { + [B_WIN_ACTION_PROMPT] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 35, @@ -400,7 +400,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 0, .baseBlock = 0x01c0, }, - { + [B_WIN_ACTION_MENU] = { .bg = 0, .tilemapLeft = 17, .tilemapTop = 35, @@ -409,7 +409,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0190, }, - { + [B_WIN_MOVE_NAME_1] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 55, @@ -418,7 +418,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0300, }, - { + [B_WIN_MOVE_NAME_2] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 55, @@ -427,7 +427,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0310, }, - { + [B_WIN_MOVE_NAME_3] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 57, @@ -436,7 +436,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0320, }, - { + [B_WIN_MOVE_NAME_4] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 57, @@ -445,7 +445,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0330, }, - { + [B_WIN_PP] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 55, @@ -454,7 +454,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0290, }, - { + [B_WIN_DUMMY] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 57, @@ -463,7 +463,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0298, }, - { + [B_WIN_PP_REMAINING] = { .bg = 0, .tilemapLeft = 25, .tilemapTop = 55, @@ -472,7 +472,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0298, }, - { + [B_WIN_MOVE_TYPE] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 57, @@ -481,7 +481,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x02a0, }, - { + [B_WIN_SWITCH_PROMPT] = { .bg = 0, .tilemapLeft = 21, .tilemapTop = 55, @@ -490,7 +490,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x02b0, }, - { + [B_WIN_YESNO] = { .bg = 0, .tilemapLeft = 26, .tilemapTop = 9, @@ -499,7 +499,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0100, }, - { + [B_WIN_LEVEL_UP_BOX] = { .bg = 1, .tilemapLeft = 19, .tilemapTop = 8, @@ -508,7 +508,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0100, }, - { + [B_WIN_LEVEL_UP_BANNER] = { .bg = 2, .tilemapLeft = 18, .tilemapTop = 0, @@ -517,7 +517,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 6, .baseBlock = 0x016e, }, - { + [ARENA_WIN_PLAYER_NAME] = { .bg = 0, .tilemapLeft = 6, .tilemapTop = 1, @@ -526,7 +526,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0100, }, - { + [ARENA_WIN_VS] = { .bg = 0, .tilemapLeft = 14, .tilemapTop = 1, @@ -535,7 +535,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0110, }, - { + [ARENA_WIN_OPPONENT_NAME] = { .bg = 0, .tilemapLeft = 16, .tilemapTop = 1, @@ -544,7 +544,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0114, }, - { + [ARENA_WIN_MIND] = { .bg = 0, .tilemapLeft = 12, .tilemapTop = 4, @@ -553,7 +553,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0124, }, - { + [ARENA_WIN_SKILL] = { .bg = 0, .tilemapLeft = 12, .tilemapTop = 6, @@ -562,7 +562,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0130, }, - { + [ARENA_WIN_BODY] = { .bg = 0, .tilemapLeft = 12, .tilemapTop = 8, @@ -571,7 +571,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x013c, }, - { + [ARENA_WIN_JUDGEMENT_TITLE] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 11, @@ -580,7 +580,7 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0148, }, - { + [ARENA_WIN_JUDGEMENT_TEXT] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, @@ -935,7 +935,7 @@ static void DrawLinkBattleVsScreenOutcomeText(void) { if (gBattleOutcome == B_OUTCOME_DREW) { - BattlePutTextOnWindow(gText_Draw, 0x15); + BattlePutTextOnWindow(gText_Draw, B_WIN_VS_OUTCOME_DRAW); } else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { @@ -944,20 +944,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void) switch (gLinkPlayers[gBattleScripting.multiplayerId].id) { case 0: - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); break; case 1: - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); break; case 2: - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); break; case 3: - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); break; } } @@ -966,20 +966,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void) switch (gLinkPlayers[gBattleScripting.multiplayerId].id) { case 0: - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); break; case 1: - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); break; case 2: - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); break; case 3: - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); break; } } @@ -988,26 +988,26 @@ static void DrawLinkBattleVsScreenOutcomeText(void) { if (gLinkPlayers[gBattleScripting.multiplayerId].id != 0) { - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); } else { - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); } } else { if (gLinkPlayers[gBattleScripting.multiplayerId].id != 0) { - BattlePutTextOnWindow(gText_Win, 0x16); - BattlePutTextOnWindow(gText_Loss, 0x17); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT); } else { - BattlePutTextOnWindow(gText_Win, 0x17); - BattlePutTextOnWindow(gText_Loss, 0x16); + BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT); + BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT); } } } @@ -1031,19 +1031,19 @@ void InitLinkBattleVsScreen(u8 taskId) switch (linkPlayer->id) { case 0: - BattlePutTextOnWindow(name, 0x11); + BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_1); DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 4); break; case 1: - BattlePutTextOnWindow(name, 0x12); + BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_2); DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 4); break; case 2: - BattlePutTextOnWindow(name, 0x13); + BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_3); DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 8); break; case 3: - BattlePutTextOnWindow(name, 0x14); + BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_4); DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 8); break; } @@ -1059,10 +1059,10 @@ void InitLinkBattleVsScreen(u8 taskId) opponentId = playerId, playerId = opponentId_copy; name = gLinkPlayers[playerId].name; - BattlePutTextOnWindow(name, 0xF); + BattlePutTextOnWindow(name, B_WIN_VS_PLAYER); name = gLinkPlayers[opponentId].name; - BattlePutTextOnWindow(name, 0x10); + BattlePutTextOnWindow(name, B_WIN_VS_OPPONENT); DrawLinkBattleParticipantPokeballs(taskId, playerId, 1, 2, 7); DrawLinkBattleParticipantPokeballs(taskId, opponentId, 2, 2, 7); diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index dc8b2bfd170a..11b8f3af7803 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -29,9 +29,6 @@ #include "constants/trainers.h" #include "recorded_battle.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void LinkOpponentHandleGetMonData(void); static void LinkOpponentHandleGetRawMonData(void); static void LinkOpponentHandleSetMonData(void); @@ -424,7 +421,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) LinkOpponentBufferExecCompleted(); } @@ -1471,7 +1468,7 @@ static void LinkOpponentHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; BattleTv_SetDataBasedOnString(*stringId); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 07101c682365..9c184b9c2664 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -29,7 +29,6 @@ #include "constants/trainers.h" #include "recorded_battle.h" -// this file's functions static void LinkPartnerHandleGetMonData(void); static void LinkPartnerHandleGetRawMonData(void); static void LinkPartnerHandleSetMonData(void); @@ -313,7 +312,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) LinkPartnerBufferExecCompleted(); } @@ -1301,7 +1300,7 @@ static void LinkPartnerHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; BattleTv_SetDataBasedOnString(*stringId); } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 87bef43025ba..3f62ba08d493 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -34,9 +34,6 @@ #include "constants/trainers.h" #include "trainer_hill.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void OpponentHandleGetMonData(void); static void OpponentHandleGetRawMonData(void); static void OpponentHandleSetMonData(void); @@ -430,7 +427,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) OpponentBufferExecCompleted(); } @@ -1524,7 +1521,7 @@ static void OpponentHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; BattleArena_DeductMindPoints(gActiveBattler, *stringId); } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 456fd8cee6da..bc8db1699153 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -36,9 +36,6 @@ #include "constants/trainers.h" #include "constants/rgb.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void PlayerHandleGetMonData(void); static void PlayerHandleSetMonData(void); static void PlayerHandleSetRawMonData(void); @@ -611,7 +608,7 @@ static void HandleInputChooseMove(void) gMultiUsePlayerCursor = gMoveSelectionCursor[gActiveBattler] + 1; MoveSelectionCreateCursorAt(gMultiUsePlayerCursor, 27); - BattlePutTextOnWindow(gText_BattleSwitchWhich, 0xB); + BattlePutTextOnWindow(gText_BattleSwitchWhich, B_WIN_SWITCH_PROMPT); gBattlerControllerFuncs[gActiveBattler] = HandleMoveSwitching; } } @@ -1145,7 +1142,7 @@ static void CompleteOnHealthbarDone(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) PlayerBufferExecCompleted(); } @@ -1341,7 +1338,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter2(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) PlayerBufferExecCompleted(); } @@ -1466,7 +1463,8 @@ static void MoveSelectionDisplayMoveNames(void) { MoveSelectionDestroyCursorAt(i); StringCopy(gDisplayedStringBattle, gMoveNames[moveInfo->moves[i]]); - BattlePutTextOnWindow(gDisplayedStringBattle, i + 3); + // Prints on windows B_WIN_MOVE_NAME_1, B_WIN_MOVE_NAME_2, B_WIN_MOVE_NAME_3, B_WIN_MOVE_NAME_4 + BattlePutTextOnWindow(gDisplayedStringBattle, i + B_WIN_MOVE_NAME_1); if (moveInfo->moves[i] != MOVE_NONE) gNumberOfMovesToChoose++; } @@ -1475,7 +1473,7 @@ static void MoveSelectionDisplayMoveNames(void) static void MoveSelectionDisplayPpString(void) { StringCopy(gDisplayedStringBattle, gText_MoveInterfacePP); - BattlePutTextOnWindow(gDisplayedStringBattle, 7); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP); } static void MoveSelectionDisplayPpNumber(void) @@ -1492,7 +1490,7 @@ static void MoveSelectionDisplayPpNumber(void) *(txtPtr)++ = CHAR_SLASH; ConvertIntToDecimalStringN(txtPtr, moveInfo->maxPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2); - BattlePutTextOnWindow(gDisplayedStringBattle, 9); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP_REMAINING); } static void MoveSelectionDisplayMoveType(void) @@ -1506,7 +1504,7 @@ static void MoveSelectionDisplayMoveType(void) *(txtPtr)++ = 1; StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]); - BattlePutTextOnWindow(gDisplayedStringBattle, 10); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE); } static void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 arg1) @@ -1577,7 +1575,7 @@ static void PrintLinkStandbyMsg(void) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - BattlePutTextOnWindow(gText_LinkStandby, 0); + BattlePutTextOnWindow(gText_LinkStandby, B_WIN_MSG); } } @@ -2549,7 +2547,7 @@ static void PlayerHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2; BattleTv_SetDataBasedOnString(*stringId); BattleArena_DeductMindPoints(gActiveBattler, *stringId); @@ -2579,14 +2577,14 @@ static void PlayerHandleChooseAction(void) gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3; BattleTv_ClearExplosionFaintCause(); - BattlePutTextOnWindow(gText_BattleMenu, 2); + BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU); for (i = 0; i < 4; i++) ActionSelectionDestroyCursorAt(i); ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0); BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo); - BattlePutTextOnWindow(gDisplayedStringBattle, 1); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT); } static void PlayerHandleYesNoBox(void) @@ -2594,7 +2592,7 @@ static void PlayerHandleYesNoBox(void) if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 12); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gMultiUsePlayerCursor = 1; BattleCreateYesNoCursorAt(1); gBattlerControllerFuncs[gActiveBattler] = PlayerHandleYesNoInput; diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index d1d23099a0b7..d07f2763ad76 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -27,7 +27,6 @@ #include "constants/songs.h" #include "constants/trainers.h" -// this file's functions static void PlayerPartnerHandleGetMonData(void); static void PlayerPartnerHandleGetRawMonData(void); static void PlayerPartnerHandleSetMonData(void); @@ -300,7 +299,7 @@ static void CompleteOnHealthbarDone(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) PlayerPartnerBufferExecCompleted(); } @@ -497,7 +496,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter2(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) PlayerPartnerBufferExecCompleted(); } @@ -1491,7 +1490,7 @@ static void PlayerPartnerHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2; } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index adac43961f2c..bb99c7bf943e 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -29,9 +29,6 @@ #include "constants/songs.h" #include "constants/trainers.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void RecordedOpponentHandleGetMonData(void); static void RecordedOpponentHandleGetRawMonData(void); static void RecordedOpponentHandleSetMonData(void); @@ -408,7 +405,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) RecordedOpponentBufferExecCompleted(); } @@ -1398,7 +1395,7 @@ static void RecordedOpponentHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index bff81948ba64..26231060a4f1 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -25,9 +25,6 @@ #include "constants/battle_anim.h" #include "constants/songs.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void RecordedPlayerHandleGetMonData(void); static void RecordedPlayerHandleGetRawMonData(void); static void RecordedPlayerHandleSetMonData(void); @@ -390,7 +387,7 @@ static void FreeMonSpriteAfterSwitchOutAnim(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) RecordedPlayerBufferExecCompleted(); } @@ -1404,7 +1401,7 @@ static void RecordedPlayerHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; } diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index a825387419eb..6dc7aa2e52f9 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -24,7 +24,6 @@ #include "constants/songs.h" #include "constants/rgb.h" -// this file's functions static void SafariHandleGetMonData(void); static void SafariHandleGetRawMonData(void); static void SafariHandleSetMonData(void); @@ -241,7 +240,7 @@ static void CompleteOnBattlerSpriteCallbackDummy(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) SafariBufferExecCompleted(); } @@ -425,7 +424,7 @@ static void SafariHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; } @@ -452,14 +451,14 @@ static void SafariHandleChooseAction(void) s32 i; gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3; - BattlePutTextOnWindow(gText_SafariZoneMenu, 2); + BattlePutTextOnWindow(gText_SafariZoneMenu, B_WIN_ACTION_MENU); for (i = 0; i < 4; i++) ActionSelectionDestroyCursorAt(i); ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0); BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo2); - BattlePutTextOnWindow(gDisplayedStringBattle, 1); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT); } static void SafariHandleYesNoBox(void) diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 048600d9a5b0..466b3f3151b2 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -253,7 +253,7 @@ static void CompleteOnBattlerSpriteCallbackDummy(void) static void CompleteOnInactiveTextPrinter(void) { - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) WallyBufferExecCompleted(); } @@ -1178,7 +1178,7 @@ static void WallyHandlePrintString(void) gBattle_BG0_Y = 0; stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; } @@ -1205,14 +1205,14 @@ static void WallyHandleChooseAction(void) s32 i; gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3; - BattlePutTextOnWindow(gText_BattleMenu, 2); + BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU); for (i = 0; i < 4; i++) ActionSelectionDestroyCursorAt(i); ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0); BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillWallyDo); - BattlePutTextOnWindow(gDisplayedStringBattle, 1); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT); } static void WallyHandleYesNoBox(void) diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 6c4f1473c220..77c50dc18103 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -26,10 +26,6 @@ #include "constants/rgb.h" #include "constants/battle_palace.h" -extern struct MusicPlayerInfo gMPlayInfo_SE1; -extern struct MusicPlayerInfo gMPlayInfo_SE2; -extern struct MusicPlayerInfo gMPlayInfo_BGM; - extern const u8 gBattlePalaceNatureToMoveTarget[]; extern const u8 * const gBattleAnims_General[]; extern const u8 * const gBattleAnims_Special[]; diff --git a/src/battle_main.c b/src/battle_main.c index 6ed9f1232bd5..9b3afb7f325e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -2341,12 +2341,12 @@ static void EndLinkBattleInSteps(void) if (IsLinkTaskFinished() == TRUE) { SetLinkStandbyCallback(); - BattlePutTextOnWindow(gText_LinkStandby3, 0); + BattlePutTextOnWindow(gText_LinkStandby3, B_WIN_MSG); gBattleCommunication[MULTIUSE_STATE]++; } break; case 7: - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) { if (IsLinkTaskFinished() == TRUE) gBattleCommunication[MULTIUSE_STATE]++; @@ -2484,15 +2484,15 @@ static void AskRecordBattle(void) if (!gPaletteFade.active) { // "Would you like to record your battle on your FRONTIER PASS?" - BattlePutTextOnWindow(gText_RecordBattleToPass, 0); + BattlePutTextOnWindow(gText_RecordBattleToPass, B_WIN_MSG); gBattleCommunication[MULTIUSE_STATE]++; } break; case STATE_PRINT_YES_NO: - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) { HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[CURSOR_POSITION] = 1; BattleCreateYesNoCursorAt(1); gBattleCommunication[MULTIUSE_STATE]++; @@ -2551,7 +2551,7 @@ static void AskRecordBattle(void) { // Other battlers may be recording, wait for them SetLinkStandbyCallback(); - BattlePutTextOnWindow(gText_LinkStandby3, 0); + BattlePutTextOnWindow(gText_LinkStandby3, B_WIN_MSG); } gBattleCommunication[MULTIUSE_STATE]++; // STATE_END_RECORD_NO } @@ -2582,32 +2582,32 @@ static void AskRecordBattle(void) { PlaySE(SE_SAVE); BattleStringExpandPlaceholdersToDisplayedString(gText_BattleRecordedOnPass); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattleCommunication[1] = 128; // Delay gBattleCommunication[MULTIUSE_STATE]++; } else { BattleStringExpandPlaceholdersToDisplayedString(BattleFrontier_BattleTowerBattleRoom_Text_RecordCouldntBeSaved); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattleCommunication[1] = 128; // Delay gBattleCommunication[MULTIUSE_STATE]++; } break; case STATE_RECORD_WAIT: - if (IsLinkTaskFinished() == TRUE && !IsTextPrinterActive(0) && --gBattleCommunication[1] == 0) + if (IsLinkTaskFinished() == TRUE && !IsTextPrinterActive(B_WIN_MSG) && --gBattleCommunication[1] == 0) { if (gMain.anyLinkBattlerHasFrontierPass) { SetLinkStandbyCallback(); - BattlePutTextOnWindow(gText_LinkStandby3, 0); + BattlePutTextOnWindow(gText_LinkStandby3, B_WIN_MSG); } gBattleCommunication[MULTIUSE_STATE]++; } break; case STATE_END_RECORD_YES: case STATE_END_RECORD_NO: - if (!IsTextPrinterActive(0)) + if (!IsTextPrinterActive(B_WIN_MSG)) { if (gMain.anyLinkBattlerHasFrontierPass) { @@ -3866,7 +3866,7 @@ static void TryDoEventsBeforeFirstTurn(void) TurnValuesCleanUp(FALSE); SpecialStatusesClear(); *(&gBattleStruct->field_91) = gAbsentBattlerFlags; - BattlePutTextOnWindow(gText_EmptyString3, 0); + BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG); gBattleMainFunc = HandleTurnActionSelectionState; ResetSentPokesToOpponentValue(); @@ -3973,7 +3973,7 @@ void BattleTurnPassed(void) *(gBattleStruct->monToSwitchIntoId + i) = PARTY_SIZE; *(&gBattleStruct->field_91) = gAbsentBattlerFlags; - BattlePutTextOnWindow(gText_EmptyString3, 0); + BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG); gBattleMainFunc = HandleTurnActionSelectionState; gRandomTurnNumber = Random(); diff --git a/src/battle_message.c b/src/battle_message.c index 1dbe0a2dd3da..b69a171a1360 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1480,8 +1480,7 @@ static const u8 sDummyWeirdStatusString[] = {EOS, EOS, EOS, EOS, EOS, EOS, EOS, static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = { -// The corresponding WindowTemplate is gStandardBattleWindowTemplates[] within src/battle_bg.c - { // 0 Standard battle message + [B_WIN_MSG] = { .fillValue = PIXEL_FILL(0xF), .fontId = 1, .x = 0, @@ -1489,11 +1488,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 1, - .fgColor = 1, - .bgColor = 15, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_DYNAMIC_COLOR_6, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 1 "What will (pokemon) do?" + [B_WIN_ACTION_PROMPT] = { .fillValue = PIXEL_FILL(0xF), .fontId = 1, .x = 1, @@ -1501,11 +1500,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 15, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_DYNAMIC_COLOR_6, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 2 "Fight/Pokemon/Bag/Run" + [B_WIN_ACTION_MENU] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1513,11 +1512,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 3 Top left move + [B_WIN_MOVE_NAME_1] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1525,11 +1524,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 4 Top right move + [B_WIN_MOVE_NAME_2] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1537,11 +1536,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 5 Bottom left move + [B_WIN_MOVE_NAME_3] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1549,11 +1548,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 6 Bottom right move + [B_WIN_MOVE_NAME_4] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1561,11 +1560,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 7 "PP" + [B_WIN_PP] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1573,11 +1572,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 12, - .bgColor = 14, - .shadowColor = 11, + .fgColor = TEXT_DYNAMIC_COLOR_3, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_2, }, - { // 8 + [B_WIN_DUMMY] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1585,11 +1584,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 9 PP remaining + [B_WIN_PP_REMAINING] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 2, @@ -1597,11 +1596,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 12, - .bgColor = 14, - .shadowColor = 11, + .fgColor = TEXT_DYNAMIC_COLOR_3, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_2, }, - { // 10 "type" + [B_WIN_MOVE_TYPE] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1609,11 +1608,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 11 "switch which?" + [B_WIN_SWITCH_PROMPT] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1621,11 +1620,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 12 "gText_BattleYesNoChoice" + [B_WIN_YESNO] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1633,11 +1632,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 13 + [B_WIN_LEVEL_UP_BOX] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1645,11 +1644,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 14 + [B_WIN_LEVEL_UP_BANNER] = { .fillValue = PIXEL_FILL(0), .fontId = 1, .x = 32, @@ -1657,11 +1656,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 0, - .shadowColor = 2, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_COLOR_TRANSPARENT, + .shadowColor = TEXT_COLOR_DARK_GRAY, }, - { // 15 + [B_WIN_VS_PLAYER] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1669,11 +1668,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 16 + [B_WIN_VS_OPPONENT] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1681,11 +1680,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 17 + [B_WIN_VS_MULTI_PLAYER_1] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1693,11 +1692,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 18 + [B_WIN_VS_MULTI_PLAYER_2] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1705,11 +1704,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 19 + [B_WIN_VS_MULTI_PLAYER_3] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1717,11 +1716,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 20 + [B_WIN_VS_MULTI_PLAYER_4] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1729,11 +1728,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 21 + [B_WIN_VS_OUTCOME_DRAW] = { .fillValue = PIXEL_FILL(0), .fontId = 1, .x = -1, @@ -1741,11 +1740,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 0, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_COLOR_TRANSPARENT, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 22 + [B_WIN_VS_OUTCOME_LEFT] = { .fillValue = PIXEL_FILL(0), .fontId = 1, .x = -1, @@ -1753,11 +1752,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 0, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_COLOR_TRANSPARENT, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 23 + [B_WIN_VS_OUTCOME_RIGHT] = { .fillValue = PIXEL_FILL(0x0), .fontId = 1, .x = -1, @@ -1765,15 +1764,15 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 0, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_COLOR_TRANSPARENT, + .shadowColor = TEXT_COLOR_GREEN, }, }; static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = { - { // 0 + [B_WIN_MSG] = { .fillValue = PIXEL_FILL(0xF), .fontId = 1, .x = 0, @@ -1781,11 +1780,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 1, - .fgColor = 1, - .bgColor = 15, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_DYNAMIC_COLOR_6, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 1 + [B_WIN_ACTION_PROMPT] = { .fillValue = PIXEL_FILL(0xF), .fontId = 1, .x = 1, @@ -1793,11 +1792,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 15, - .shadowColor = 6, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_DYNAMIC_COLOR_6, + .shadowColor = TEXT_COLOR_GREEN, }, - { // 2 + [B_WIN_ACTION_MENU] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1805,11 +1804,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 3 + [B_WIN_MOVE_NAME_1] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1817,11 +1816,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 4 + [B_WIN_MOVE_NAME_2] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1829,11 +1828,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 5 + [B_WIN_MOVE_NAME_3] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1841,11 +1840,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 6 + [B_WIN_MOVE_NAME_4] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1853,11 +1852,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 7 + [B_WIN_PP] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1865,11 +1864,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 12, - .bgColor = 14, - .shadowColor = 11, + .fgColor = TEXT_DYNAMIC_COLOR_3, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_2, }, - { // 8 + [B_WIN_DUMMY] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1877,11 +1876,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 9 + [B_WIN_PP_REMAINING] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 2, @@ -1889,11 +1888,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 12, - .bgColor = 14, - .shadowColor = 11, + .fgColor = TEXT_DYNAMIC_COLOR_3, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_2, }, - { // 10 + [B_WIN_MOVE_TYPE] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1901,11 +1900,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 11 + [B_WIN_SWITCH_PROMPT] = { .fillValue = PIXEL_FILL(0xE), .fontId = 7, .x = 0, @@ -1913,11 +1912,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 12 + [B_WIN_YESNO] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1925,11 +1924,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 13 + [B_WIN_LEVEL_UP_BOX] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = 0, @@ -1937,11 +1936,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 14 + [B_WIN_LEVEL_UP_BANNER] = { .fillValue = PIXEL_FILL(0), .fontId = 1, .x = 32, @@ -1949,11 +1948,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 0, - .shadowColor = 2, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_COLOR_TRANSPARENT, + .shadowColor = TEXT_COLOR_DARK_GRAY, }, - { // 15 + [ARENA_WIN_PLAYER_NAME] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1961,11 +1960,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 1, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_COLOR_WHITE, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 16 + [ARENA_WIN_VS] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1973,11 +1972,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 17 + [ARENA_WIN_OPPONENT_NAME] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1985,11 +1984,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 18 + [ARENA_WIN_MIND] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -1997,11 +1996,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 19 + [ARENA_WIN_SKILL] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -2009,11 +2008,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 20 + [ARENA_WIN_BODY] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -2021,11 +2020,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 21 + [ARENA_WIN_JUDGEMENT_TITLE] = { .fillValue = PIXEL_FILL(0xE), .fontId = 1, .x = -1, @@ -2033,11 +2032,11 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 0, - .fgColor = 13, - .bgColor = 14, - .shadowColor = 15, + .fgColor = TEXT_DYNAMIC_COLOR_4, + .bgColor = TEXT_DYNAMIC_COLOR_5, + .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - { // 22 + [ARENA_WIN_JUDGEMENT_TEXT] = { .fillValue = PIXEL_FILL(0x1), .fontId = 1, .x = 0, @@ -2045,9 +2044,9 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .letterSpacing = 0, .lineSpacing = 0, .speed = 1, - .fgColor = 2, - .bgColor = 1, - .shadowColor = 3, + .fgColor = TEXT_COLOR_DARK_GRAY, + .bgColor = TEXT_COLOR_WHITE, + .shadowColor = TEXT_COLOR_LIGHT_GRAY, }, }; @@ -3055,9 +3054,9 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) struct TextPrinterTemplate printerTemplate; u8 speed; - if (windowId & 0x80) + if (windowId & B_WIN_COPYTOVRAM) { - windowId &= ~(0x80); + windowId &= ~B_WIN_COPYTOVRAM; copyToVram = FALSE; } else @@ -3087,17 +3086,17 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) printerTemplate.x = printerTemplate.currentX = alignX; } - if (windowId == 0x16) - gTextFlags.useAlternateDownArrow = 0; + if (windowId == ARENA_WIN_JUDGEMENT_TEXT) + gTextFlags.useAlternateDownArrow = FALSE; else - gTextFlags.useAlternateDownArrow = 1; + gTextFlags.useAlternateDownArrow = TRUE; if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED)) - gTextFlags.autoScroll = 1; + gTextFlags.autoScroll = TRUE; else - gTextFlags.autoScroll = 0; + gTextFlags.autoScroll = FALSE; - if (windowId == 0 || windowId == 0x16) + if (windowId == B_WIN_MSG || windowId == ARENA_WIN_JUDGEMENT_TEXT) { if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK)) speed = 1; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 92f97647289c..b564fe68013e 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -53,28 +53,29 @@ #include "data.h" #include "constants/party_menu.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - extern const u8* const gBattleScriptsForMoveEffects[]; #define DEFENDER_IS_PROTECTED ((gProtectStructs[gBattlerTarget].protected) && (gBattleMoves[gCurrentMove].flags & FLAG_PROTECT_AFFECTED)) -// this file's functions +#define LEVEL_UP_BANNER_START 416 +#define LEVEL_UP_BANNER_END 512 + +#define TAG_LVLUP_BANNER_MON_ICON 55130 + 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 void CheckWonderGuardAndLevitate(void); static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8, const u8* BS_ptr); static bool32 IsMonGettingExpSentOut(void); -static void sub_804F17C(void); -static bool8 sub_804F1CC(void); +static void InitLevelUpBanner(void); +static bool8 SlideInLevelUpBanner(void); +static bool8 SlideOutLevelUpBanner(void); static void DrawLevelUpWindow1(void); static void DrawLevelUpWindow2(void); -static bool8 sub_804F344(void); -static void PutMonIconOnLvlUpBox(void); -static void PutLevelAndGenderOnLvlUpBox(void); - -static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite); +static void PutMonIconOnLvlUpBanner(void); +static void DrawLevelUpBannerText(void); +static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite* sprite); static void Cmd_attackcanceler(void); static void Cmd_accuracycheck(void); @@ -667,10 +668,18 @@ static const u8* const sMoveEffectBS_Ptrs[] = [MOVE_EFFECT_RECOIL_33] = BattleScript_MoveEffectRecoil, }; -static const struct WindowTemplate sUnusedWinTemplate = {0, 1, 3, 7, 0xF, 0x1F, 0x3F}; +static const struct WindowTemplate sUnusedWinTemplate = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 7, + .height = 15, + .paletteNum = 31, + .baseBlock = 0x3F +}; -static const u16 sUnknown_0831C2C8[] = INCBIN_U16("graphics/battle_interface/unk_battlebox.gbapal"); -static const u32 sUnknown_0831C2E8[] = INCBIN_U32("graphics/battle_interface/unk_battlebox.4bpp.lz"); +static const u16 sLevelUpBanner_Pal[] = INCBIN_U16("graphics/battle_interface/level_up_banner.gbapal"); +static const u32 sLevelUpBanner_Gfx[] = INCBIN_U32("graphics/battle_interface/level_up_banner.4bpp.lz"); // unused static const u8 sRubyLevelUpStatBoxStats[] = @@ -679,9 +688,7 @@ static const u8 sRubyLevelUpStatBoxStats[] = MON_DATA_SPDEF, MON_DATA_DEF, MON_DATA_SPEED }; -#define MON_ICON_LVLUP_BOX_TAG 0xD75A - -static const struct OamData sOamData_MonIconOnLvlUpBox = +static const struct OamData sOamData_MonIconOnLvlUpBanner = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -698,15 +705,15 @@ static const struct OamData sOamData_MonIconOnLvlUpBox = .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_MonIconOnLvlUpBox = +static const struct SpriteTemplate sSpriteTemplate_MonIconOnLvlUpBanner = { - .tileTag = MON_ICON_LVLUP_BOX_TAG, - .paletteTag = MON_ICON_LVLUP_BOX_TAG, - .oam = &sOamData_MonIconOnLvlUpBox, + .tileTag = TAG_LVLUP_BANNER_MON_ICON, + .paletteTag = TAG_LVLUP_BANNER_MON_ICON, + .oam = &sOamData_MonIconOnLvlUpBanner, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_MonIconOnLvlUpBox + .callback = SpriteCB_MonIconOnLvlUpBanner }; static const u16 sProtectSuccessRates[] = {USHRT_MAX, USHRT_MAX / 2, USHRT_MAX / 4, USHRT_MAX / 8}; @@ -2971,13 +2978,13 @@ static void Cmd_tryfaintmon(void) if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { gHitMarker |= HITMARKER_PLAYER_FAINTED; - if (gBattleResults.playerFaintCounter < 0xFF) + if (gBattleResults.playerFaintCounter < 255) gBattleResults.playerFaintCounter++; AdjustFriendshipOnBattleFaint(gActiveBattler); } else { - if (gBattleResults.opponentFaintCounter < 0xFF) + if (gBattleResults.opponentFaintCounter < 255) gBattleResults.opponentFaintCounter++; gBattleResults.lastOpponentSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES, NULL); } @@ -3033,7 +3040,7 @@ static void Cmd_cleareffectsonfaint(void) if (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || gBattleMons[gActiveBattler].hp == 0) { gBattleMons[gActiveBattler].status1 = 0; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 0x4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } @@ -3765,9 +3772,7 @@ static void Cmd_jumpifarraynotequal(void) for (i = 0; i < size; i++) { if (*mem1 == *mem2) - { equalBytes++; - } mem1++, mem2++; } @@ -3807,9 +3812,7 @@ static void Cmd_copyarray(void) s32 i; for (i = 0; i < size; i++) - { dest[i] = src[i]; - } gBattlescriptCurrInstr += 10; } @@ -3823,9 +3826,7 @@ static void Cmd_copyarraywithindex(void) s32 i; for (i = 0; i < size; i++) - { dest[i] = src[i + *index]; - } gBattlescriptCurrInstr += 14; } @@ -4591,9 +4592,7 @@ static void Cmd_switchindataupdate(void) monData = (u8*)(&gBattleMons[gActiveBattler]); for (i = 0; i < sizeof(struct BattlePokemon); i++) - { monData[i] = gBattleBufferB[gActiveBattler][4 + i]; - } gBattleMons[gActiveBattler].type1 = gBaseStats[gBattleMons[gActiveBattler].species].type1; gBattleMons[gActiveBattler].type2 = gBaseStats[gBattleMons[gActiveBattler].species].type2; @@ -4681,9 +4680,9 @@ static void Cmd_jumpifcantswitch(void) lastMonId = 0; if (gActiveBattler & 2) - lastMonId = 3; + lastMonId = MULTI_PARTY_SIZE; - for (i = lastMonId; i < lastMonId + 3; i++) + for (i = lastMonId; i < lastMonId + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetMonData(&party[i], MON_DATA_IS_EGG) @@ -4692,7 +4691,7 @@ static void Cmd_jumpifcantswitch(void) break; } - if (i == lastMonId + 3) + if (i == lastMonId + MULTI_PARTY_SIZE) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2); else gBattlescriptCurrInstr += 6; @@ -4707,7 +4706,7 @@ static void Cmd_jumpifcantswitch(void) lastMonId = 0; if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gActiveBattler)) == TRUE) - lastMonId = 3; + lastMonId = MULTI_PARTY_SIZE; } else { @@ -4716,7 +4715,7 @@ static void Cmd_jumpifcantswitch(void) if (gActiveBattler == 1) lastMonId = 0; else - lastMonId = 3; + lastMonId = MULTI_PARTY_SIZE; } } else @@ -4728,10 +4727,10 @@ static void Cmd_jumpifcantswitch(void) lastMonId = 0; if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gActiveBattler)) == TRUE) - lastMonId = 3; + lastMonId = MULTI_PARTY_SIZE; } - for (i = lastMonId; i < lastMonId + 3; i++) + for (i = lastMonId; i < lastMonId + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetMonData(&party[i], MON_DATA_IS_EGG) @@ -4740,7 +4739,7 @@ static void Cmd_jumpifcantswitch(void) break; } - if (i == lastMonId + 3) + if (i == lastMonId + MULTI_PARTY_SIZE) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2); else gBattlescriptCurrInstr += 6; @@ -4751,9 +4750,9 @@ static void Cmd_jumpifcantswitch(void) lastMonId = 0; if (gActiveBattler == B_POSITION_OPPONENT_RIGHT) - lastMonId = 3; + lastMonId = PARTY_SIZE / 2; - for (i = lastMonId; i < lastMonId + 3; i++) + for (i = lastMonId; i < lastMonId + (PARTY_SIZE / 2); i++) { if (GetMonData(&party[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetMonData(&party[i], MON_DATA_IS_EGG) @@ -4762,7 +4761,7 @@ static void Cmd_jumpifcantswitch(void) break; } - if (i == lastMonId + 3) + if (i == lastMonId + (PARTY_SIZE / 2)) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2); else gBattlescriptCurrInstr += 6; @@ -5080,7 +5079,7 @@ static void Cmd_openpartyscreen(void) gBattlescriptCurrInstr += 6; - if (GetBattlerPosition(gActiveBattler) == 0 && gBattleResults.playerSwitchesCounter < 0xFF) + if (GetBattlerPosition(gActiveBattler) == 0 && gBattleResults.playerSwitchesCounter < 255) gBattleResults.playerSwitchesCounter++; if (gBattleTypeFlags & BATTLE_TYPE_MULTI) @@ -5120,7 +5119,7 @@ static void Cmd_switchhandleorder(void) case 0: for (i = 0; i < gBattlersCount; i++) { - if (gBattleBufferB[i][0] == 0x22) + if (gBattleBufferB[i][0] == CONTROLLER_CHOSENMONRETURNVALUE) { *(gBattleStruct->monToSwitchIntoId + i) = gBattleBufferB[i][1]; if (!(gBattleStruct->field_93 & gBitTable[i])) @@ -5357,8 +5356,8 @@ static void Cmd_yesnoboxlearnmove(void) switch (gBattleScripting.learnMoveState) { case 0: - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + HandleBattleWindow(24, 8, 29, 13, 0); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleScripting.learnMoveState++; gBattleCommunication[CURSOR_POSITION] = 0; BattleCreateYesNoCursorAt(0); @@ -5383,8 +5382,8 @@ static void Cmd_yesnoboxlearnmove(void) PlaySE(SE_SELECT); if (gBattleCommunication[1] == 0) { - HandleBattleWindow(0x18, 0x8, 0x1D, 0xD, WINDOW_CLEAR); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gBattleScripting.learnMoveState++; } else @@ -5457,7 +5456,7 @@ static void Cmd_yesnoboxlearnmove(void) } break; case 5: - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); gBattlescriptCurrInstr += 5; break; case 6: @@ -5474,8 +5473,8 @@ static void Cmd_yesnoboxstoplearningmove(void) switch (gBattleScripting.learnMoveState) { case 0: - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + HandleBattleWindow(24, 8, 29, 13, 0); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleScripting.learnMoveState++; gBattleCommunication[CURSOR_POSITION] = 0; BattleCreateYesNoCursorAt(0); @@ -5504,13 +5503,13 @@ static void Cmd_yesnoboxstoplearningmove(void) else gBattlescriptCurrInstr += 5; - HandleBattleWindow(0x18, 0x8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); - HandleBattleWindow(0x18, 0x8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); } break; } @@ -5769,8 +5768,8 @@ static void Cmd_yesnobox(void) switch (gBattleCommunication[0]) { case 0: - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + HandleBattleWindow(24, 8, 29, 13, 0); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[0]++; gBattleCommunication[CURSOR_POSITION] = 0; BattleCreateYesNoCursorAt(0); @@ -5794,13 +5793,13 @@ static void Cmd_yesnobox(void) { gBattleCommunication[CURSOR_POSITION] = 1; PlaySE(SE_SELECT); - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); gBattlescriptCurrInstr++; } else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); gBattlescriptCurrInstr++; } break; @@ -5884,6 +5883,9 @@ static void Cmd_drawlvlupbox(void) { if (gBattleScripting.drawlvlupboxState == 0) { + // If the PokĂ©mon getting exp is not in-battle then + // slide out a banner with their name and icon on it. + // Otherwise skip ahead. if (IsMonGettingExpSentOut()) gBattleScripting.drawlvlupboxState = 3; else @@ -5893,34 +5895,38 @@ static void Cmd_drawlvlupbox(void) switch (gBattleScripting.drawlvlupboxState) { case 1: - gBattle_BG2_Y = 0x60; + // Start level up banner + gBattle_BG2_Y = 96; SetBgAttribute(2, BG_ATTR_PRIORITY, 0); ShowBg(2); - sub_804F17C(); + InitLevelUpBanner(); gBattleScripting.drawlvlupboxState = 2; break; case 2: - if (!sub_804F1CC()) + if (!SlideInLevelUpBanner()) gBattleScripting.drawlvlupboxState = 3; break; case 3: + // Init level up box gBattle_BG1_X = 0; - gBattle_BG1_Y = 0x100; + gBattle_BG1_Y = 256; SetBgAttribute(0, BG_ATTR_PRIORITY, 1); SetBgAttribute(1, BG_ATTR_PRIORITY, 0); ShowBg(0); ShowBg(1); - HandleBattleWindow(0x12, 7, 0x1D, 0x13, WINDOW_x80); + HandleBattleWindow(18, 7, 29, 19, WINDOW_BG1); gBattleScripting.drawlvlupboxState = 4; break; case 4: + // Draw page 1 of level up box DrawLevelUpWindow1(); - PutWindowTilemap(13); - CopyWindowToVram(13, 3); + PutWindowTilemap(B_WIN_LEVEL_UP_BOX); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 3); gBattleScripting.drawlvlupboxState++; break; case 5: case 7: + // Wait for draw after each page if (!IsDma3ManagerBusyWithBgCopy()) { gBattle_BG1_Y = 0; @@ -5930,28 +5936,30 @@ static void Cmd_drawlvlupbox(void) case 6: if (gMain.newKeys != 0) { + // Draw page 2 of level up box PlaySE(SE_SELECT); DrawLevelUpWindow2(); - CopyWindowToVram(13, 2); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 2); gBattleScripting.drawlvlupboxState++; } break; case 8: if (gMain.newKeys != 0) { + // Close level up box PlaySE(SE_SELECT); - HandleBattleWindow(0x12, 7, 0x1D, 0x13, WINDOW_x80 | WINDOW_CLEAR); + HandleBattleWindow(18, 7, 29, 19, WINDOW_BG1 | WINDOW_CLEAR); gBattleScripting.drawlvlupboxState++; } break; case 9: - if (!sub_804F344()) + if (!SlideOutLevelUpBanner()) { - ClearWindowTilemap(14); - CopyWindowToVram(14, 1); + ClearWindowTilemap(B_WIN_LEVEL_UP_BANNER); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 1); - ClearWindowTilemap(13); - CopyWindowToVram(13, 1); + ClearWindowTilemap(B_WIN_LEVEL_UP_BOX); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 1); SetBgAttribute(2, BG_ATTR_PRIORITY, 2); ShowBg(2); @@ -5977,7 +5985,7 @@ static void DrawLevelUpWindow1(void) u16 currStats[NUM_STATS]; GetMonLevelUpWindowStats(&gPlayerParty[gBattleStruct->expGetterMonId], currStats); - DrawLevelUpWindowPg1(0xD, gBattleResources->beforeLvlUp->stats, currStats, TEXT_DYNAMIC_COLOR_5, TEXT_DYNAMIC_COLOR_4, TEXT_DYNAMIC_COLOR_6); + DrawLevelUpWindowPg1(B_WIN_LEVEL_UP_BOX, gBattleResources->beforeLvlUp->stats, currStats, TEXT_DYNAMIC_COLOR_5, TEXT_DYNAMIC_COLOR_4, TEXT_DYNAMIC_COLOR_6); } static void DrawLevelUpWindow2(void) @@ -5985,41 +5993,41 @@ static void DrawLevelUpWindow2(void) u16 currStats[NUM_STATS]; GetMonLevelUpWindowStats(&gPlayerParty[gBattleStruct->expGetterMonId], currStats); - DrawLevelUpWindowPg2(0xD, currStats, TEXT_DYNAMIC_COLOR_5, TEXT_DYNAMIC_COLOR_4, TEXT_DYNAMIC_COLOR_6); + DrawLevelUpWindowPg2(B_WIN_LEVEL_UP_BOX, currStats, TEXT_DYNAMIC_COLOR_5, TEXT_DYNAMIC_COLOR_4, TEXT_DYNAMIC_COLOR_6); } -static void sub_804F17C(void) +static void InitLevelUpBanner(void) { gBattle_BG2_Y = 0; - gBattle_BG2_X = 0x1A0; + gBattle_BG2_X = LEVEL_UP_BANNER_START; - LoadPalette(sUnknown_0831C2C8, 0x60, 0x20); - CopyToWindowPixelBuffer(14, sUnknown_0831C2E8, 0, 0); - PutWindowTilemap(14); - CopyWindowToVram(14, 3); + LoadPalette(sLevelUpBanner_Pal, 0x60, 0x20); + CopyToWindowPixelBuffer(B_WIN_LEVEL_UP_BANNER, sLevelUpBanner_Gfx, 0, 0); + PutWindowTilemap(B_WIN_LEVEL_UP_BANNER); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 3); - PutMonIconOnLvlUpBox(); + PutMonIconOnLvlUpBanner(); } -static bool8 sub_804F1CC(void) +static bool8 SlideInLevelUpBanner(void) { if (IsDma3ManagerBusyWithBgCopy()) return TRUE; - if (gBattle_BG2_X == 0x200) + if (gBattle_BG2_X == LEVEL_UP_BANNER_END) return FALSE; - if (gBattle_BG2_X == 0x1A0) - PutLevelAndGenderOnLvlUpBox(); + if (gBattle_BG2_X == LEVEL_UP_BANNER_START) + DrawLevelUpBannerText(); gBattle_BG2_X += 8; - if (gBattle_BG2_X >= 0x200) - gBattle_BG2_X = 0x200; + if (gBattle_BG2_X >= LEVEL_UP_BANNER_END) + gBattle_BG2_X = LEVEL_UP_BANNER_END; - return (gBattle_BG2_X != 0x200); + return (gBattle_BG2_X != LEVEL_UP_BANNER_END); } -static void PutLevelAndGenderOnLvlUpBox(void) +static void DrawLevelUpBannerText(void) { u16 monLevel; u8 monGender; @@ -6032,7 +6040,7 @@ static void PutLevelAndGenderOnLvlUpBox(void) GetMonNickname(&gPlayerParty[gBattleStruct->expGetterMonId], gStringVar4); printerTemplate.currentChar = gStringVar4; - printerTemplate.windowId = 14; + printerTemplate.windowId = B_WIN_LEVEL_UP_BANNER; printerTemplate.fontId = 0; printerTemplate.x = 32; printerTemplate.y = 0; @@ -6045,7 +6053,7 @@ static void PutLevelAndGenderOnLvlUpBox(void) printerTemplate.bgColor = TEXT_COLOR_TRANSPARENT; printerTemplate.shadowColor = TEXT_COLOR_DARK_GRAY; - AddTextPrinter(&printerTemplate, 0xFF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); txtPtr = gStringVar4; *(txtPtr)++ = CHAR_EXTRA_SYMBOL; @@ -6060,14 +6068,14 @@ static void PutLevelAndGenderOnLvlUpBox(void) { if (monGender == MON_MALE) { - txtPtr = WriteColorChangeControlCode(txtPtr, 0, 0xC); - txtPtr = WriteColorChangeControlCode(txtPtr, 1, 0xD); + txtPtr = WriteColorChangeControlCode(txtPtr, 0, TEXT_DYNAMIC_COLOR_3); + txtPtr = WriteColorChangeControlCode(txtPtr, 1, TEXT_DYNAMIC_COLOR_4); *(txtPtr++) = CHAR_MALE; } else { - txtPtr = WriteColorChangeControlCode(txtPtr, 0, 0xE); - txtPtr = WriteColorChangeControlCode(txtPtr, 1, 0xF); + txtPtr = WriteColorChangeControlCode(txtPtr, 0, TEXT_DYNAMIC_COLOR_5); + txtPtr = WriteColorChangeControlCode(txtPtr, 1, TEXT_DYNAMIC_COLOR_6); *(txtPtr++) = CHAR_FEMALE; } *(txtPtr++) = EOS; @@ -6075,28 +6083,28 @@ static void PutLevelAndGenderOnLvlUpBox(void) printerTemplate.y = 10; printerTemplate.currentY = 10; - AddTextPrinter(&printerTemplate, 0xFF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); - CopyWindowToVram(14, 2); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 2); } -static bool8 sub_804F344(void) +static bool8 SlideOutLevelUpBanner(void) { - if (gBattle_BG2_X == 0x1A0) + if (gBattle_BG2_X == LEVEL_UP_BANNER_START) return FALSE; - if (gBattle_BG2_X - 16 < 0x1A0) - gBattle_BG2_X = 0x1A0; + if (gBattle_BG2_X - 16 < LEVEL_UP_BANNER_START) + gBattle_BG2_X = LEVEL_UP_BANNER_START; else gBattle_BG2_X -= 16; - return (gBattle_BG2_X != 0x1A0); + return (gBattle_BG2_X != LEVEL_UP_BANNER_START); } -#define sDestroy data[0] -#define sSavedLvlUpBoxXPosition data[1] +#define sDestroy data[0] +#define sXOffset data[1] -static void PutMonIconOnLvlUpBox(void) +static void PutMonIconOnLvlUpBanner(void) { u8 spriteId; const u16* iconPal; @@ -6109,23 +6117,23 @@ static void PutMonIconOnLvlUpBox(void) const u8* iconPtr = GetMonIconPtr(species, personality, 1); iconSheet.data = iconPtr; iconSheet.size = 0x200; - iconSheet.tag = MON_ICON_LVLUP_BOX_TAG; + iconSheet.tag = TAG_LVLUP_BANNER_MON_ICON; iconPal = GetValidMonIconPalettePtr(species); iconPalSheet.data = iconPal; - iconPalSheet.tag = MON_ICON_LVLUP_BOX_TAG; + iconPalSheet.tag = TAG_LVLUP_BANNER_MON_ICON; LoadSpriteSheet(&iconSheet); LoadSpritePalette(&iconPalSheet); - spriteId = CreateSprite(&sSpriteTemplate_MonIconOnLvlUpBox, 256, 10, 0); + spriteId = CreateSprite(&sSpriteTemplate_MonIconOnLvlUpBanner, 256, 10, 0); gSprites[spriteId].sDestroy = FALSE; - gSprites[spriteId].sSavedLvlUpBoxXPosition = gBattle_BG2_X; + gSprites[spriteId].sXOffset = gBattle_BG2_X; } -static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite) +static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite* sprite) { - sprite->x2 = sprite->sSavedLvlUpBoxXPosition - gBattle_BG2_X; + sprite->x2 = sprite->sXOffset - gBattle_BG2_X; if (sprite->x2 != 0) { @@ -6134,13 +6142,13 @@ static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite) else if (sprite->sDestroy) { DestroySprite(sprite); - FreeSpriteTilesByTag(MON_ICON_LVLUP_BOX_TAG); - FreeSpritePaletteByTag(MON_ICON_LVLUP_BOX_TAG); + FreeSpriteTilesByTag(TAG_LVLUP_BANNER_MON_ICON); + FreeSpritePaletteByTag(TAG_LVLUP_BANNER_MON_ICON); } } #undef sDestroy -#undef sSavedLvlUpBoxXPosition +#undef sXOffset static bool32 IsMonGettingExpSentOut(void) { @@ -6389,10 +6397,10 @@ static void Cmd_various(void) break; case VARIOUS_ARENA_JUDGMENT_STRING: BattleStringExpandPlaceholdersToDisplayedString(gRefereeStringsTable[gBattlescriptCurrInstr[1]]); - BattlePutTextOnWindow(gDisplayedStringBattle, 22); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TEXT); break; case VARIOUS_ARENA_WAIT_STRING: - if (IsTextPrinterActive(22)) + if (IsTextPrinterActive(ARENA_WIN_JUDGEMENT_TEXT)) return; break; case VARIOUS_WAIT_CRY: @@ -7828,7 +7836,7 @@ static void Cmd_psywavedamageeffect(void) { s32 randDamage; - while ((randDamage = (Random() & 0xF)) > 10); + while ((randDamage = Random() % 16) > 10); randDamage *= 10; gBattleMoveDamage = gBattleMons[gBattlerAttacker].level * (randDamage + 50) / 100; @@ -7966,8 +7974,8 @@ static void Cmd_painsplitdmgcalc(void) static void Cmd_settypetorandomresistance(void) // conversion 2 { - if (gLastLandedMoves[gBattlerAttacker] == 0 - || gLastLandedMoves[gBattlerAttacker] == 0xFFFF) + if (gLastLandedMoves[gBattlerAttacker] == MOVE_NONE + || gLastLandedMoves[gBattlerAttacker] == 0xFFFF) { gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -7982,7 +7990,7 @@ static void Cmd_settypetorandomresistance(void) // conversion 2 for (rands = 0; rands < 1000; rands++) { - while (((i = (Random() & 0x7F)) > sizeof(gTypeEffectiveness) / 3)); + while (((i = Random() % 128) > sizeof(gTypeEffectiveness) / 3)); i *= 3; @@ -8145,7 +8153,7 @@ static void Cmd_trychoosesleeptalkmove(void) } unusableMovesBits = CheckMoveLimitations(gBattlerAttacker, unusableMovesBits, ~MOVE_LIMITATION_PP); - if (unusableMovesBits == 0xF) // all 4 moves cannot be chosen + if (unusableMovesBits == (1 << MAX_MON_MOVES) - 1) // all 4 moves cannot be chosen { gBattlescriptCurrInstr += 5; } @@ -8329,7 +8337,7 @@ static void Cmd_healpartystatus(void) else // Aromatherapy { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SOOTHING_AROMA; - toHeal = 0x3F; + toHeal = (1 << PARTY_SIZE) - 1; gBattleMons[gBattlerAttacker].status1 = 0; gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; @@ -9959,7 +9967,7 @@ static void Cmd_displaydexinfo(void) switch (gBattleCommunication[0]) { case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gBattleCommunication[0]++; break; case 1: @@ -9984,13 +9992,13 @@ static void Cmd_displaydexinfo(void) case 3: InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); - gBattle_BG3_X = 0x100; + gBattle_BG3_X = 256; gBattleCommunication[0]++; break; case 4: if (!IsDma3ManagerBusyWithBgCopy()) { - BeginNormalPaletteFade(PALETTES_BG, 0, 0x10, 0, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_BG, 0, 16, 0, RGB_BLACK); ShowBg(0); ShowBg(3); gBattleCommunication[0]++; @@ -10043,7 +10051,7 @@ void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags) if (flags & WINDOW_CLEAR) var = 0; - if (flags & WINDOW_x80) + if (flags & WINDOW_BG1) CopyToBgTilemapBufferRect_ChangePalette(1, &var, destX, destY, 1, 1, 0x11); else CopyToBgTilemapBufferRect_ChangePalette(0, &var, destX, destY, 1, 1, 0x11); @@ -10076,8 +10084,8 @@ static void Cmd_trygivecaughtmonnick(void) switch (gBattleCommunication[MULTIUSE_STATE]) { case 0: - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + HandleBattleWindow(24, 8, 29, 13, 0); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[MULTIUSE_STATE]++; gBattleCommunication[CURSOR_POSITION] = 0; BattleCreateYesNoCursorAt(0); diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 91834876ff56..1d583343f8c2 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -661,7 +661,7 @@ static void Task_EvolutionScene(u8 taskId) if (!gPaletteFade.active) { StringExpandPlaceholders(gStringVar4, gText_PkmnIsEvolving); - BattlePutTextOnWindow(gStringVar4, 0); + BattlePutTextOnWindow(gStringVar4, B_WIN_MSG); gTasks[taskId].tState++; } break; @@ -758,7 +758,7 @@ static void Task_EvolutionScene(u8 taskId) if (IsCryFinished()) { StringExpandPlaceholders(gStringVar4, gText_CongratsPkmnEvolved); - BattlePutTextOnWindow(gStringVar4, 0); + BattlePutTextOnWindow(gStringVar4, B_WIN_MSG); PlayBGM(MUS_EVOLVED); gTasks[taskId].tState++; SetMonData(mon, MON_DATA_SPECIES, (void*)(&gTasks[taskId].tPostEvoSpecies)); @@ -845,7 +845,7 @@ static void Task_EvolutionScene(u8 taskId) else // Fire Red leftover probably StringExpandPlaceholders(gStringVar4, gText_PkmnStoppedEvolving); - BattlePutTextOnWindow(gStringVar4, 0); + BattlePutTextOnWindow(gStringVar4, B_WIN_MSG); gTasks[taskId].tEvoWasStopped = TRUE; gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; } @@ -856,7 +856,7 @@ static void Task_EvolutionScene(u8 taskId) BufferMoveToLearnIntoBattleTextBuff2(); PlayFanfare(MUS_LEVEL_UP); BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnsFirstMove = 0x40; // re-used as a counter gTasks[taskId].tState++; } @@ -874,7 +874,7 @@ static void Task_EvolutionScene(u8 taskId) // "{mon} is trying to learn {move}" BufferMoveToLearnIntoBattleTextBuff2(); BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } break; @@ -883,7 +883,7 @@ static void Task_EvolutionScene(u8 taskId) { // "But, {mon} can't learn more than four moves" BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } break; @@ -892,7 +892,7 @@ static void Task_EvolutionScene(u8 taskId) { // "Delete a move to make room for {move}?" BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveYesState = MVSTATE_SHOW_MOVE_SELECT; gTasks[taskId].tLearnMoveNoState = MVSTATE_ASK_CANCEL; gTasks[taskId].tLearnMoveState++; @@ -901,7 +901,7 @@ static void Task_EvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); - BattlePutTextOnWindow(gText_BattleYesNoChoice, 0xC); + BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gTasks[taskId].tLearnMoveState++; sEvoCursorPos = 0; BattleCreateYesNoCursorAt(0); @@ -980,7 +980,7 @@ static void Task_EvolutionScene(u8 taskId) { // Can't forget HMs BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState = MVSTATE_RETRY_AFTER_HM; } else @@ -997,14 +997,14 @@ static void Task_EvolutionScene(u8 taskId) break; case MVSTATE_FORGET_MSG_1: BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; break; case MVSTATE_FORGET_MSG_2: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } break; @@ -1012,20 +1012,20 @@ static void Task_EvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tState = EVOSTATE_LEARNED_MOVE; } break; case MVSTATE_ASK_CANCEL: BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveYesState = MVSTATE_CANCEL; gTasks[taskId].tLearnMoveNoState = MVSTATE_INTRO_MSG_1; gTasks[taskId].tLearnMoveState = MVSTATE_PRINT_YES_NO; break; case MVSTATE_CANCEL: BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_ID_ADDER]); - BattlePutTextOnWindow(gDisplayedStringBattle, 0); + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; break; case MVSTATE_RETRY_AFTER_HM: diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 69e16ee847a7..e3a000486ef4 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -64,8 +64,6 @@ static EWRAM_DATA u32 sHofFadePalettes = 0; static EWRAM_DATA struct HallofFameTeam *sHofMonPtr = NULL; static EWRAM_DATA struct HofGfx *sHofGfxPtr = NULL; -extern struct MusicPlayerInfo gMPlayInfo_BGM; - static void ClearVramOamPltt_LoadHofPal(void); static void LoadHofGfx(void); static void InitHofBgs(void); diff --git a/src/pokeball.c b/src/pokeball.c index 3d5d664e1301..87b58aedafff 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -15,9 +15,6 @@ #include "data.h" #include "constants/songs.h" -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void Task_DoPokeballSendOutAnim(u8 taskId); static void SpriteCB_PlayerMonSendOut_1(struct Sprite *sprite); static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 4eb60f3d04b5..bcd60dc7e142 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -116,8 +116,6 @@ struct PokeblockFeed u8 unused4; }; -extern struct MusicPlayerInfo gMPlayInfo_BGM; - extern const u16 gUnknown_0860F074[]; static void HandleInitBackgrounds(void); diff --git a/src/pokedex.c b/src/pokedex.c index 98fa40dbfa75..b7ee07dfabb5 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -148,8 +148,6 @@ struct SearchMenuItem u8 selectionBgWidth; }; -extern struct MusicPlayerInfo gMPlayInfo_BGM; - struct PokedexListItem { u16 dexNum; diff --git a/src/sound.c b/src/sound.c index 42f507b7cae7..55a1383578d9 100644 --- a/src/sound.c +++ b/src/sound.c @@ -14,24 +14,17 @@ struct Fanfare u16 duration; }; -// ewram EWRAM_DATA struct MusicPlayerInfo* gMPlay_PokemonCry = NULL; EWRAM_DATA u8 gPokemonCryBGMDuckingCounter = 0; -// iwram bss static u16 sCurrentMapMusic; static u16 sNextMapMusic; static u8 sMapMusicState; static u8 sMapMusicFadeInSpeed; static u16 sFanfareCounter; -// iwram common bool8 gDisableMusic; -extern struct MusicPlayerInfo gMPlayInfo_BGM; -extern struct MusicPlayerInfo gMPlayInfo_SE1; -extern struct MusicPlayerInfo gMPlayInfo_SE2; -extern struct MusicPlayerInfo gMPlayInfo_SE3; extern struct ToneData gCryTable[]; extern struct ToneData gCryTable2[]; diff --git a/src/title_screen.c b/src/title_screen.c index 3b60146b976b..ee71b68959bf 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -35,9 +35,6 @@ #define BERRY_UPDATE_BUTTON_COMBO (B_BUTTON | SELECT_BUTTON) #define A_B_START_SELECT (A_BUTTON | B_BUTTON | START_BUTTON | SELECT_BUTTON) -extern struct MusicPlayerInfo gMPlayInfo_BGM; - -// this file's functions static void MainCB2(void); static void Task_TitleScreenPhase1(u8); static void Task_TitleScreenPhase2(u8); From 28de627913f04e059f995169299e41ce4c2544f0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 9 Oct 2021 11:33:37 -0400 Subject: [PATCH 287/762] Add TRACKS_ALL, remove BGCntrlBitfield --- gflib/bg.h | 10 --------- include/gba/m4a_internal.h | 2 ++ include/gba/types.h | 2 +- src/battle_anim.c | 4 ++-- src/battle_arena.c | 2 +- src/battle_controller_link_opponent.c | 4 ++-- src/battle_controller_opponent.c | 4 ++-- src/battle_controller_player.c | 6 +++--- src/battle_controller_recorded_opponent.c | 4 ++-- src/battle_controller_recorded_player.c | 2 +- src/battle_script_commands.c | 4 ++-- src/berry_blender.c | 2 +- src/contest.c | 2 +- src/hall_of_fame.c | 4 ++-- src/mauville_old_man.c | 8 +++---- src/pokeball.c | 2 +- src/pokeblock_feed.c | 2 +- src/pokedex.c | 4 ++-- src/pokemon_summary_screen.c | 2 +- src/reshow_battle_screen.c | 12 +++++------ src/roulette.c | 8 +++---- src/sound.c | 26 +++++++++++------------ 22 files changed, 54 insertions(+), 62 deletions(-) diff --git a/gflib/bg.h b/gflib/bg.h index 60327eab3a64..76346224f69f 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -1,16 +1,6 @@ #ifndef GUARD_BG_H #define GUARD_BG_H -struct BGCntrlBitfield // for the I/O registers -{ - volatile u16 priority:2; - volatile u16 charBaseBlock:2; - volatile u16 field_0_2:4; - volatile u16 field_1_0:5; - volatile u16 areaOverflowMode:1; - volatile u16 screenSize:2; -}; - enum { BG_ATTR_CHARBASEINDEX = 1, diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index 2ccbb18f5b61..eeb79391b504 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -313,6 +313,8 @@ struct MusicPlayerTrack #define MAX_MUSICPLAYER_TRACKS 16 +#define TRACKS_ALL 0xFFFF + #define TEMPORARY_FADE 0x0001 #define FADE_IN 0x0002 #define FADE_VOL_MAX 64 diff --git a/include/gba/types.h b/include/gba/types.h index 35d02e26391d..2e92bbe86e56 100644 --- a/include/gba/types.h +++ b/include/gba/types.h @@ -35,7 +35,7 @@ struct BgCnt { u16 priority:2; u16 charBaseBlock:2; - u16 dummy:2; + u16 dsCharBaseBlock:2; u16 mosaic:1; u16 palettes:1; u16 screenBaseBlock:5; diff --git a/src/battle_anim.c b/src/battle_anim.c index 80d511f4c7df..9fdf6bd53a5b 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -1877,7 +1877,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo { if (tableId == gMovesWithQuietBGM[i]) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 128); break; } } @@ -2143,7 +2143,7 @@ static void ScriptCmd_end(void) if (!continuousAnim) // May have been used for debug? { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256); if (!IsContest()) { sub_80A8278(); diff --git a/src/battle_arena.c b/src/battle_arena.c index f61526edcde5..8b5f3c16d0d2 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -614,7 +614,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); HandleBattleWindow(5, 0, 24, 13, WINDOW_CLEAR); CopyBgTilemapBufferToVram(0); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256); BeginNormalPaletteFade(0x7FFFFF1C, 4, 8, 0, RGB_BLACK); (*state)++; break; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index dc8b2bfd170a..6369c0202268 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -323,7 +323,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } } @@ -465,7 +465,7 @@ static void SwitchIn_HandleSoundAndEnd(void) if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy || gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy_2) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); LinkOpponentBufferExecCompleted(); } } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 87bef43025ba..4da3b834a917 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -334,7 +334,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) m4aMPlayContinue(&gMPlayInfo_BGM); } else - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored = TRUE; bgmRestored = TRUE; @@ -470,7 +470,7 @@ static void SwitchIn_HandleSoundAndEnd(void) if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy || gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy_2) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); OpponentBufferExecCompleted(); } } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 8e7bc9a9f429..94e25fadccc5 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1024,7 +1024,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK) m4aMPlayContinue(&gMPlayInfo_BGM); else - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored = TRUE; bgmRestored = TRUE; @@ -1092,7 +1092,7 @@ static void SwitchIn_HandleSoundAndEnd(void) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive && !IsCryPlayingOrClearCrySongs()) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler); PlayerBufferExecCompleted(); } @@ -1121,7 +1121,7 @@ void Task_PlayerController_RestoreBgmAfterCry(u8 taskId) { if (!IsCryPlayingOrClearCrySongs()) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); DestroyTask(taskId); } } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index adac43961f2c..acf595918841 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -301,7 +301,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } } gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored = TRUE; @@ -450,7 +450,7 @@ static void SwitchIn_HandleSoundAndEnd(void) if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy || gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy_2) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); RecordedOpponentBufferExecCompleted(); } } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index bff81948ba64..ac2133592e8e 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -318,7 +318,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e7520b1ee7d8..91f89137a355 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6412,10 +6412,10 @@ static void Cmd_various(void) } break; case VARIOUS_VOLUME_DOWN: - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x55); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x55); break; case VARIOUS_VOLUME_UP: - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); break; case VARIOUS_SET_ALREADY_STATUS_MOVE_ATTEMPT: gBattleStruct->alreadyStatusedMoveAttempt |= gBitTable[gActiveBattler]; diff --git a/src/berry_blender.c b/src/berry_blender.c index aa9bf2f87b44..6a3e9f291e39 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -932,7 +932,7 @@ static const struct WindowTemplate sBlenderRecordWindowTemplate = static void UpdateHitPitch(void) { - m4aMPlayPitchControl(&gMPlayInfo_SE2, 0xFFFF, 2 * (sBerryBlender->speed - MIN_ARROW_SPEED)); + m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, 2 * (sBerryBlender->speed - MIN_ARROW_SPEED)); } static void VBlankCB_BerryBlender(void) diff --git a/src/contest.c b/src/contest.c index a87e8f28b9c1..175b9da30198 100644 --- a/src/contest.c +++ b/src/contest.c @@ -3820,7 +3820,7 @@ static void Task_UpdateAppealHearts(u8 taskId) { PlaySE(SE_CONTEST_HEART); m4aMPlayImmInit(&gMPlayInfo_SE1); - m4aMPlayPitchControl(&gMPlayInfo_SE1, 0xFFFF, pitchMod * 256); + m4aMPlayPitchControl(&gMPlayInfo_SE1, TRACKS_ALL, pitchMod * 256); } else { diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 69e16ee847a7..3485f3ba349e 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -1019,7 +1019,7 @@ static void Task_HofPC_HandleInput(u8 taskId) if (IsCryPlayingOrClearCrySongs()) { StopCryAndClearCrySongs(); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit; } @@ -1029,7 +1029,7 @@ static void Task_HofPC_HandleInput(u8 taskId) if (IsCryPlayingOrClearCrySongs()) { StopCryAndClearCrySongs(); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit; } diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 8de9fc3c9a28..d3c41236ce8a 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -502,9 +502,9 @@ static void BardSing(struct Task *task, struct BardSong *song) if (sound->var00 <= 50) { song->volume = 0x100 + sound->volume * 16; - m4aMPlayVolumeControl(&gMPlayInfo_SE2, 0xFFFF, song->volume); + m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); song->pitch = 0x200 + song->phonemes[song->currPhoneme].pitch; - m4aMPlayPitchControl(&gMPlayInfo_SE2, 0xFFFF, song->pitch); + m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); } break; case 1: @@ -514,8 +514,8 @@ static void BardSing(struct Task *task, struct BardSong *song) song->pitch += 64; else song->pitch -= 64; - m4aMPlayVolumeControl(&gMPlayInfo_SE2, 0xFFFF, song->volume); - m4aMPlayPitchControl(&gMPlayInfo_SE2, 0xFFFF, song->pitch); + m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); + m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); song->voiceInflection++; song->phonemeTimer--; if (song->phonemeTimer == 0) diff --git a/src/pokeball.c b/src/pokeball.c index 52d47b53471e..3aa969fbd62b 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -774,7 +774,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 128); } } diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 4eb60f3d04b5..99585407a6cf 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -886,7 +886,7 @@ static void Task_ExitPokeblockFeed(u8 taskId) { ResetSpriteData(); FreeAllSpritePalettes(); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, -1, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); SetMainCallback2(gMain.savedCallback); DestroyTask(taskId); FreeAllWindowBuffers(); diff --git a/src/pokedex.c b/src/pokedex.c index 98fa40dbfa75..fa64b155c79e 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -1637,7 +1637,7 @@ void CB2_OpenPokedex(void) SetVBlankCallback(VBlankCB_Pokedex); SetMainCallback2(CB2_Pokedex); CreatePokedexList(sPokedexView->dexMode, sPokedexView->dexOrder); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x80); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x80); break; } } @@ -1847,7 +1847,7 @@ static void Task_ClosePokedex(u8 taskId) FreeWindowAndBgBuffers(); DestroyTask(taskId); SetMainCallback2(CB2_ReturnToFieldWithOpenMenu); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); Free(sPokedexView); } } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 5c4b19bc44a1..f6371b088f40 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1498,7 +1498,7 @@ static void CloseSummaryScreen(u8 taskId) ResetSpriteData(); FreeAllSpritePalettes(); StopCryAndClearCrySongs(); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); if (gMonSpritesGfxPtr == NULL) DestroyMonSpritesGfxManager(MON_SPR_GFX_MANAGER_A); FreeSummaryScreen(); diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 6bc0e175bb9c..c8c03ede2936 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -21,7 +21,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void); static bool8 LoadBattlerSpriteGfx(u8 battlerId); static void CreateBattlerSprite(u8 battlerId); static void CreateHealthboxSprite(u8 battlerId); -static void sub_80A95F4(void); +static void ClearBattleBgCntBaseBlocks(void); void ReshowBattleScreenDummy(void) { @@ -158,7 +158,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) break; default: SetVBlankCallback(VBlankCB_Battle); - sub_80A95F4(); + ClearBattleBgCntBaseBlocks(); BeginHardwarePaletteFade(0xFF, 0, 0x10, 0, 1); gPaletteFade.bufferTransferDisabled = 0; SetMainCallback2(BattleMainCB2); @@ -169,14 +169,14 @@ static void CB2_ReshowBattleScreenAfterMenu(void) gBattleScripting.reshowMainState++; } -static void sub_80A95F4(void) +static void ClearBattleBgCntBaseBlocks(void) { - struct BGCntrlBitfield *regBgcnt1, *regBgcnt2; + vBgCnt *regBgcnt1, *regBgcnt2; - regBgcnt1 = (struct BGCntrlBitfield *)(®_BG1CNT); + regBgcnt1 = (vBgCnt *)(®_BG1CNT); regBgcnt1->charBaseBlock = 0; - regBgcnt2 = (struct BGCntrlBitfield *)(®_BG2CNT); + regBgcnt2 = (vBgCnt *)(®_BG2CNT); regBgcnt2->charBaseBlock = 0; } diff --git a/src/roulette.c b/src/roulette.c index 9b494d75276a..b6ef1168b29f 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -3999,8 +3999,8 @@ static void UpdateBallPos(struct Sprite *sprite) sprite->y2 = -cos * sprite->sBallDistToCenter >> 12; if (IsSEPlaying()) { - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, sprite->x2); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, sprite->x2); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, TRACKS_ALL, sprite->x2); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, TRACKS_ALL, sprite->x2); } } @@ -4704,8 +4704,8 @@ static void SpriteCB_Taillow_FlyIn(struct Sprite *sprite) if (IsSEPlaying()) { s8 pan = -((116 - sprite->x) / 2); - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, TRACKS_ALL, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, TRACKS_ALL, pan); } } else diff --git a/src/sound.c b/src/sound.c index 42f507b7cae7..a12475f1efc1 100644 --- a/src/sound.c +++ b/src/sound.c @@ -271,7 +271,7 @@ void FadeInNewBGM(u16 songNum, u8 speed) songNum = 0; m4aSongNumStart(songNum); m4aMPlayImmInit(&gMPlayInfo_BGM); - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0); m4aSongNumStop(songNum); m4aMPlayFadeIn(&gMPlayInfo_BGM, speed); } @@ -309,7 +309,7 @@ bool8 IsBGMStopped(void) void PlayCry1(u16 species, s8 pan) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); PlayCryInternal(species, pan, CRY_VOLUME, 10, 0); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); @@ -328,7 +328,7 @@ void PlayCry3(u16 species, s8 pan, u8 mode) } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); @@ -344,7 +344,7 @@ void PlayCry4(u16 species, s8 pan, u8 mode) else { if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); } } @@ -357,7 +357,7 @@ void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S } else { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); gPokemonCryBGMDuckingCounter = 2; } @@ -365,7 +365,7 @@ void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S void PlayCry5(u16 species, u8 mode) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); PlayCryInternal(species, 0, CRY_VOLUME, 10, mode); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); @@ -549,7 +549,7 @@ static void Task_DuckBGMForPokemonCry(u8 taskId) if (!IsPokemonCryPlaying(gMPlay_PokemonCry)) { - m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256); + m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256); DestroyTask(taskId); } } @@ -579,28 +579,28 @@ void PlaySE12WithPanning(u16 songNum, s8 pan) m4aSongNumStart(songNum); m4aMPlayImmInit(&gMPlayInfo_SE1); m4aMPlayImmInit(&gMPlayInfo_SE2); - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, TRACKS_ALL, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, TRACKS_ALL, pan); } void PlaySE1WithPanning(u16 songNum, s8 pan) { m4aSongNumStart(songNum); m4aMPlayImmInit(&gMPlayInfo_SE1); - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, TRACKS_ALL, pan); } void PlaySE2WithPanning(u16 songNum, s8 pan) { m4aSongNumStart(songNum); m4aMPlayImmInit(&gMPlayInfo_SE2); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, TRACKS_ALL, pan); } void SE12PanpotControl(s8 pan) { - m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan); - m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE1, TRACKS_ALL, pan); + m4aMPlayPanpotControl(&gMPlayInfo_SE2, TRACKS_ALL, pan); } bool8 IsSEPlaying(void) From 862febe03a354218d3c8bd14d9c7d1a49e8981b8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 9 Oct 2021 12:12:18 -0400 Subject: [PATCH 288/762] Add MAP_OFFSET --- include/constants/battle_pyramid.h | 3 - include/constants/metatile_labels.h | 4 + include/fieldmap.h | 8 ++ src/battle_pyramid.c | 23 ++-- src/braille_puzzles.c | 184 +++------------------------- src/decoration.c | 24 ++-- src/event_object_movement.c | 28 ++--- src/faraway_island.c | 8 +- src/field_control_avatar.c | 16 +-- src/field_door.c | 4 +- src/field_effect.c | 6 +- src/field_effect_helpers.c | 4 +- src/field_player_avatar.c | 4 +- src/field_special_scene.c | 12 +- src/field_specials.c | 60 +++++---- src/field_tasks.c | 6 +- src/field_weather_effect.c | 3 +- src/fieldmap.c | 92 +++++++------- src/item_use.c | 34 ++--- src/mirage_tower.c | 4 +- src/overworld.c | 4 +- src/rotating_gate.c | 40 +++--- src/rotating_tile_puzzle.c | 12 +- src/scrcmd.c | 24 ++-- src/secret_base.c | 26 ++-- src/union_room.c | 5 +- src/union_room_player_avatar.c | 8 +- src/wild_encounter.c | 6 +- 28 files changed, 261 insertions(+), 391 deletions(-) diff --git a/include/constants/battle_pyramid.h b/include/constants/battle_pyramid.h index 1be3c1115723..ebb753882315 100644 --- a/include/constants/battle_pyramid.h +++ b/include/constants/battle_pyramid.h @@ -4,9 +4,6 @@ #define TOTAL_ROUNDS 20 #define PICKUP_ITEMS_PER_ROUND 10 -#define FLOOR_WALKABLE_METATILE 0x28D -#define FLOOR_EXIT_METATILE 0x28E - #define HINT_EXIT_DIRECTION 0 #define HINT_REMAINING_ITEMS 1 #define HINT_REMAINING_TRAINERS 2 diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index 6159bf6cb4e7..b4ee3eacf5af 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -788,4 +788,8 @@ #define METATILE_SecretBase_SpikesMat_BottomMid 0x32A #define METATILE_SecretBase_SpikesMat_BottomRight 0x32B +// gTileset_BattlePyramid +#define METATILE_BattlePyramid_Floor 0x28D +#define METATILE_BattlePyramid_Exit 0x28E + #endif // GUARD_METATILE_LABELS_H diff --git a/include/fieldmap.h b/include/fieldmap.h index 5bcbe20ea676..28da8da2a35d 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -9,6 +9,14 @@ #define NUM_PALS_TOTAL 13 #define MAX_MAP_DATA_SIZE 0x2800 +// Map coordinates are offset by 7 when using the map +// buffer because it needs to load sufficient border +// metatiles to fill the player's view (the player has +// 7 metatiles of view horizontally in either direction). +#define MAP_OFFSET 7 +#define MAP_OFFSET_W (MAP_OFFSET * 2 + 1) +#define MAP_OFFSET_H (MAP_OFFSET * 2) + #include "main.h" extern struct BackupMapLayout gBackupMapLayout; diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 169dc69c5d78..e334e75d560e 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -34,6 +34,7 @@ #include "constants/items.h" #include "constants/layouts.h" #include "constants/maps.h" +#include "constants/metatile_labels.h" #include "constants/moves.h" #include "constants/trainers.h" @@ -1235,16 +1236,16 @@ static u8 GetPostBattleDirectionHintTextIndex(int *hintType, u8 minDistanceForEx int x, y; u8 textIndex = 0; u16 *map = gBackupMapLayout.map; - map += gBackupMapLayout.width * 7 + 7; + map += gBackupMapLayout.width * 7 + MAP_OFFSET; for (y = 0; y < 32; map += 47, y++) { for (x = 0; x < 32; x++) { - if ((map[x] & METATILE_ID_MASK) == FLOOR_EXIT_METATILE) + if ((map[x] & METATILE_ID_MASK) == METATILE_BattlePyramid_Exit) { - x += 7 - gObjectEvents[gSelectedObjectEvent].initialCoords.x; - y += 7 - gObjectEvents[gSelectedObjectEvent].initialCoords.y; + x += MAP_OFFSET - gObjectEvents[gSelectedObjectEvent].initialCoords.x; + y += MAP_OFFSET - gObjectEvents[gSelectedObjectEvent].initialCoords.y; if (x >= minDistanceForExitHint || x <= -minDistanceForExitHint || y >= minDistanceForExitHint @@ -1537,17 +1538,17 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio const u16 *layoutMap = mapLayout->map; gBackupMapLayout.map = backupMapData; - gBackupMapLayout.width = mapLayout->width * 4 + 15; - gBackupMapLayout.height = mapLayout->height * 4 + 14; + gBackupMapLayout.width = mapLayout->width * 4 + MAP_OFFSET_W; + gBackupMapLayout.height = mapLayout->height * 4 + MAP_OFFSET_H; map = backupMapData; - yOffset = ((i / 4 * mapLayout->height) + 7) * gBackupMapLayout.width; - xOffset = (i % 4 * mapLayout->width) + 7; + yOffset = ((i / 4 * mapLayout->height) + MAP_OFFSET) * gBackupMapLayout.width; + xOffset = (i % 4 * mapLayout->width) + MAP_OFFSET; map += yOffset + xOffset; for (y = 0; y < mapLayout->height; y++) { for (x = 0; x < mapLayout->width; x++) { - if ((layoutMap[x] & METATILE_ID_MASK) != FLOOR_EXIT_METATILE) + if ((layoutMap[x] & METATILE_ID_MASK) != METATILE_BattlePyramid_Exit) { map[x] = layoutMap[x]; } @@ -1558,14 +1559,14 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio gSaveBlock1Ptr->pos.x = (mapLayout->width * (i % 4)) + x; gSaveBlock1Ptr->pos.y = (mapLayout->height * (i / 4)) + y; } - map[x] = (layoutMap[x] & 0xFC00) | FLOOR_WALKABLE_METATILE; + map[x] = (layoutMap[x] & (METATILE_ELEVATION_MASK | METATILE_COLLISION_MASK)) | METATILE_BattlePyramid_Floor; } else { map[x] = layoutMap[x]; } } - map += 15 + (mapLayout->width * 4); + map += MAP_OFFSET_W + (mapLayout->width * 4); layoutMap += mapLayout->width; } } diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index aa6664f35652..d8410988dd17 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -85,12 +85,12 @@ bool8 ShouldDoBrailleDigEffect(void) void DoBrailleDigEffect(void) { - MapGridSetMetatileIdAt(16, 8, METATILE_Cave_SealedChamberEntrance_TopLeft); - MapGridSetMetatileIdAt(17, 8, METATILE_Cave_SealedChamberEntrance_TopMid); - MapGridSetMetatileIdAt(18, 8, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt(16, 9, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(17, 9, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(18, 9, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt( 9 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); + MapGridSetMetatileIdAt(10 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); + MapGridSetMetatileIdAt( 9 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(10 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_BRAILLE_DIG); @@ -112,84 +112,8 @@ bool8 CheckRelicanthWailord(void) } // THEORY: this was caused by block commenting out all of the older R/S braille functions but leaving the call to it itself, which creates the nullsub. -// the code is shown below to show what this might look like. void ShouldDoBrailleRegirockEffectOld(void) { - /* - if (!FlagGet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED) && (gSaveBlock1.location.mapGroup == MAP_GROUP_DESERT_RUINS && gSaveBlock1.location.mapNum == MAP_ID_DESERT_RUINS)) - { - if (gSaveBlock1.pos.x == 10 && gSaveBlock1.pos.y == 23) - return TRUE; - else if (gSaveBlock1.pos.x == 9 && gSaveBlock1.pos.y == 23) - return TRUE; - else if (gSaveBlock1.pos.x == 11 && gSaveBlock1.pos.y == 23) - return TRUE; - } - - return FALSE; -} - -void DoBrailleRegirockEffect(void) -{ - FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH); - MapGridSetMetatileIdAt(14, 26, 554); - MapGridSetMetatileIdAt(15, 26, 555); - MapGridSetMetatileIdAt(16, 26, 556); - MapGridSetMetatileIdAt(14, 27, 3634); - MapGridSetMetatileIdAt(15, 27, 563); - MapGridSetMetatileIdAt(16, 27, 3636); - DrawWholeMapView(); - PlaySE(SE_BANG); - FlagSet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED); - ScriptContext2_Disable(); -} - -bool8 ShouldDoBrailleRegisteelEffect(void) -{ - if (!FlagGet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED) && (gSaveBlock1.location.mapGroup == MAP_GROUP_ANCIENT_TOMB && gSaveBlock1.location.mapNum == MAP_ID_ANCIENT_TOMB)) - { - if (gSaveBlock1.pos.x == 8 && gSaveBlock1.pos.y == 25) - return TRUE; - } - - return FALSE; -} - -void DoBrailleRegisteelEffect(void) -{ - gFieldEffectArguments[0] = gLastFieldPokeMenuOpened; - FieldEffectStart(FLDEFF_USE_TOMB_PUZZLE_EFFECT); -} - -bool8 FldEff_UseFlyAncientTomb(void) -{ - u8 taskId = CreateFieldMoveTask(); - - gTasks[taskId].data[8] = (u32)UseRegisteelHm_Callback >> 16; - gTasks[taskId].data[9] = (u32)UseRegisteelHm_Callback; - return FALSE; -} - -void UseRegisteelHm_Callback(void) -{ - FieldEffectActiveListRemove(FLDEFF_USE_TOMB_PUZZLE_EFFECT); - UseFlyAncientTomb_Finish(); -} - -void UseFlyAncientTomb_Finish(void) -{ - MapGridSetMetatileIdAt(14, 26, 554); - MapGridSetMetatileIdAt(15, 26, 555); - MapGridSetMetatileIdAt(16, 26, 556); - MapGridSetMetatileIdAt(14, 27, 3634); - MapGridSetMetatileIdAt(15, 27, 563); - MapGridSetMetatileIdAt(16, 27, 3636); - DrawWholeMapView(); - PlaySE(SE_BANG); - FlagSet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED); - ScriptContext2_Disable(); -} - */ } void DoSealedChamberShakingEffect1(void) @@ -278,12 +202,12 @@ void UseRegirockHm_Callback(void) void DoBrailleRegirockEffect(void) { - MapGridSetMetatileIdAt(14, 26, METATILE_Cave_SealedChamberEntrance_TopLeft); - MapGridSetMetatileIdAt(15, 26, METATILE_Cave_SealedChamberEntrance_TopMid); - MapGridSetMetatileIdAt(16, 26, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt(14, 27, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(15, 27, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(16, 27, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); + MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(8 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED); @@ -317,12 +241,12 @@ void UseRegisteelHm_Callback(void) void DoBrailleRegisteelEffect(void) { - MapGridSetMetatileIdAt(14, 26, METATILE_Cave_SealedChamberEntrance_TopLeft); - MapGridSetMetatileIdAt(15, 26, METATILE_Cave_SealedChamberEntrance_TopMid); - MapGridSetMetatileIdAt(16, 26, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt(14, 27, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(15, 27, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(16, 27, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); + MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(8 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED); @@ -332,78 +256,6 @@ void DoBrailleRegisteelEffect(void) // theory: another commented out DoBrailleWait and Task_BrailleWait. void DoBrailleWait(void) { - /* - if (!FlagGet(FLAG_SYS_BRAILLE_REGICE_COMPLETED)) - CreateTask(Task_BrailleWait, 0x50); -} - -void Task_BrailleWait(u8 taskId) -{ - s16 *data = gTasks[taskId].data; - - switch (data[0]) - { - case 0: - data[1] = 7200; - data[0] = 1; - break; - case 1: - if (BrailleWait_CheckButtonPress() != FALSE) - { - MenuZeroFillScreen(); - PlaySE(SE_SELECT); - data[0] = 2; - } - else - { - data[1] = data[1] - 1; - if (data[1] == 0) - { - MenuZeroFillScreen(); - data[0] = 3; - data[1] = 30; - } - } - break; - case 2: - if (BrailleWait_CheckButtonPress() == FALSE) - { - data[1] = data[1] - 1; - if (data[1] == 0) - data[0] = 4; - break; - } - sub_8064E2C(); - DestroyTask(taskId); - ScriptContext2_Disable(); - break; - case 3: - data[1] = data[1] - 1; - if (data[1] == 0) - data[0] = 4; - break; - case 4: - sub_8064E2C(); - ScriptContext1_SetupScript(S_OpenRegiceChamber); - DestroyTask(taskId); - break; - } -} - -bool32 BrailleWait_CheckButtonPress(void) -{ - u16 keyMask = A_BUTTON | B_BUTTON | START_BUTTON | SELECT_BUTTON | DPAD_ANY; - - if (gSaveBlock2.optionsButtonMode == OPTIONS_BUTTON_MODE_LR) - keyMask |= L_BUTTON | R_BUTTON; - if (gSaveBlock2.optionsButtonMode == OPTIONS_BUTTON_MODE_L_EQUALS_A) - keyMask |= L_BUTTON; - - if (gMain.newKeys & keyMask) - return TRUE; - else - return FALSE; - */ } // this used to be FldEff_UseFlyAncientTomb . why did GF merge the 2 functions? diff --git a/src/decoration.c b/src/decoration.c index 131f6e502d5a..838b5cb66a36 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1481,7 +1481,7 @@ static bool8 IsNonBlockNonElevated(u8 behaviorAt, u16 behaviorBy) static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 behaviorBy) { - if (x == gTasks[taskId].tInitialX + 7 && y == gTasks[taskId].tInitialY + 7 && behaviorBy != 0) + if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && behaviorBy != 0) return FALSE; return TRUE; } @@ -1532,7 +1532,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) return FALSE; behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); - if (behaviorAt != 0 && behaviorAt != 16) + if (behaviorAt != 0 && behaviorAt != OBJECT_EVENTS_COUNT) return FALSE; } } @@ -1552,7 +1552,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) if (!IsntInitialPosition(taskId, curX, curY, behaviorBy)) return FALSE; - if (GetObjectEventIdByXYZ(curX, curY, 0) != 16) + if (GetObjectEventIdByXYZ(curX, curY, 0) != OBJECT_EVENTS_COUNT) return FALSE; } } @@ -1570,7 +1570,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) return FALSE; behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); - if (behaviorAt != 0 && behaviorAt != 16) + if (behaviorAt != 0 && behaviorAt != OBJECT_EVENTS_COUNT) return FALSE; } break; @@ -1606,7 +1606,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) return FALSE; } - if (GetObjectEventIdByXYZ(curX, curY, 0) != 16) + if (GetObjectEventIdByXYZ(curX, curY, 0) != OBJECT_EVENTS_COUNT) return FALSE; } break; @@ -1645,8 +1645,8 @@ static void PlaceDecoration(u8 taskId) } else { - sCurDecorMapX = gTasks[taskId].tCursorX - 7; - sCurDecorMapY = gTasks[taskId].tCursorY - 7; + sCurDecorMapX = gTasks[taskId].tCursorX - MAP_OFFSET; + sCurDecorMapY = gTasks[taskId].tCursorY - MAP_OFFSET; ScriptContext1_SetupScript(SecretBase_EventScript_SetDecoration); } @@ -1666,7 +1666,7 @@ static void PlaceDecoration_(u8 taskId) if (sDecorationContext.items[i] == DECOR_NONE) { sDecorationContext.items[i] = gCurDecorationItems[gCurDecorationIndex]; - sDecorationContext.pos[i] = ((gTasks[taskId].tCursorX - 7) << 4) + (gTasks[taskId].tCursorY - 7); + sDecorationContext.pos[i] = ((gTasks[taskId].tCursorX - MAP_OFFSET) << 4) + (gTasks[taskId].tCursorY - MAP_OFFSET); break; } } @@ -2223,7 +2223,7 @@ static void ClearRearrangementNonSprites(void) { for (x = 0; x < sDecorRearrangementDataBuffer[i].width; x++) { - MapGridSetMetatileEntryAt(posX + 7 + x, posY + 7 - y, gMapHeader.mapLayout->map[posX + x + gMapHeader.mapLayout->width * (posY - y)] | 0x3000); + MapGridSetMetatileEntryAt(posX + MAP_OFFSET + x, posY + MAP_OFFSET - y, gMapHeader.mapLayout->map[posX + x + gMapHeader.mapLayout->width * (posY - y)] | 0x3000); } } @@ -2461,12 +2461,12 @@ static bool8 DecorationIsUnderCursor(u8 taskId, u8 idx, struct DecorRearrangemen u8 yOff; u8 ht; - x = gTasks[taskId].tCursorX - 7; - y = gTasks[taskId].tCursorY - 7; + x = gTasks[taskId].tCursorX - MAP_OFFSET; + y = gTasks[taskId].tCursorY - MAP_OFFSET; xOff = sDecorationContext.pos[idx] >> 4; yOff = sDecorationContext.pos[idx] & 0x0F; ht = data->height; - if (sDecorationContext.items[idx] == DECOR_SAND_ORNAMENT && MapGridGetMetatileIdAt(xOff + 7, yOff + 7) == METATILE_SecretBase_SandOrnament_BrokenBase) + if (sDecorationContext.items[idx] == DECOR_SAND_ORNAMENT && MapGridGetMetatileIdAt(xOff + MAP_OFFSET, yOff + MAP_OFFSET) == METATILE_SecretBase_SandOrnament_BrokenBase) ht--; if (x >= xOff && x < xOff + data->width && y > yOff - ht && y <= yOff) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index ba4f384199d2..2a606f72a73d 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1242,8 +1242,8 @@ static u8 InitObjectEventStateFromTemplate(struct ObjectEventTemplate *template, return OBJECT_EVENTS_COUNT; objectEvent = &gObjectEvents[objectEventId]; ClearObjectEvent(objectEvent); - x = template->x + 7; - y = template->y + 7; + x = template->x + MAP_OFFSET; + y = template->y + MAP_OFFSET; objectEvent->active = TRUE; objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->graphicsId = template->graphicsId; @@ -1469,8 +1469,8 @@ u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 l { struct ObjectEventTemplate objectEventTemplate; - x -= 7; - y -= 7; + x -= MAP_OFFSET; + y -= MAP_OFFSET; objectEventTemplate.localId = localId; objectEventTemplate.graphicsId = graphicsId; objectEventTemplate.inConnection = 0; @@ -1560,8 +1560,8 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di graphicsInfo = GetObjectEventGraphicsInfo(graphicsId); MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, UpdateObjectEventSprite, &spriteTemplate, &subspriteTables); *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; SetSpritePosToOffsetMapCoords(&x, &y, 8, 16); spriteId = CreateSpriteAtEnd(&spriteTemplate, x, y, 0); if (spriteId != MAX_SPRITES) @@ -1606,9 +1606,9 @@ void TrySpawnObjectEvents(s16 cameraX, s16 cameraY) if (gMapHeader.events != NULL) { s16 left = gSaveBlock1Ptr->pos.x - 2; - s16 right = gSaveBlock1Ptr->pos.x + 17; + s16 right = gSaveBlock1Ptr->pos.x + MAP_OFFSET_W + 2; s16 top = gSaveBlock1Ptr->pos.y; - s16 bottom = gSaveBlock1Ptr->pos.y + 16; + s16 bottom = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H + 2; if (InBattlePyramid()) objectCount = GetNumBattlePyramidObjectEvents(); @@ -1620,8 +1620,8 @@ void TrySpawnObjectEvents(s16 cameraX, s16 cameraY) for (i = 0; i < objectCount; i++) { struct ObjectEventTemplate *template = &gSaveBlock1Ptr->objectEventTemplates[i]; - s16 npcX = template->x + 7; - s16 npcY = template->y + 7; + s16 npcX = template->x + MAP_OFFSET; + s16 npcY = template->y + MAP_OFFSET; if (top <= npcY && bottom >= npcY && left <= npcX && right >= npcX && !FlagGet(template->flagId)) @@ -2120,8 +2120,8 @@ void TryMoveObjectEventToMapCoords(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s1 u8 objectEventId; if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) { - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; MoveObjectEventToMapCoords(&gObjectEvents[objectEventId], x, y); } } @@ -2470,8 +2470,8 @@ void OverrideTemplateCoordsForObjectEvent(const struct ObjectEvent *objectEvent) objectEventTemplate = GetBaseTemplateForObjectEvent(objectEvent); if (objectEventTemplate != NULL) { - objectEventTemplate->x = objectEvent->currentCoords.x - 7; - objectEventTemplate->y = objectEvent->currentCoords.y - 7; + objectEventTemplate->x = objectEvent->currentCoords.x - MAP_OFFSET; + objectEventTemplate->y = objectEvent->currentCoords.y - MAP_OFFSET; } } diff --git a/src/faraway_island.c b/src/faraway_island.c index 51ab8def4434..3927d9ad545e 100755 --- a/src/faraway_island.c +++ b/src/faraway_island.c @@ -29,10 +29,10 @@ extern const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[]; static const s16 sFarawayIslandRockCoords[4][2] = { - {14 + 7, 9 + 7}, - {18 + 7, 9 + 7}, - { 9 + 7, 10 + 7}, - {13 + 7, 13 + 7}, + {14 + MAP_OFFSET, 9 + MAP_OFFSET}, + {18 + MAP_OFFSET, 9 + MAP_OFFSET}, + { 9 + MAP_OFFSET, 10 + MAP_OFFSET}, + {13 + MAP_OFFSET, 13 + MAP_OFFSET}, }; static u8 GetMewObjectEventId(void) diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 6ec280fd0d79..10f8d49bb14c 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -316,7 +316,7 @@ static const u8 *GetInteractedObjectEventScript(struct MapPosition *position, u8 static const u8 *GetInteractedBackgroundEventScript(struct MapPosition *position, u8 metatileBehavior, u8 direction) { - struct BgEvent *bgEvent = GetBackgroundEventAtPosition(&gMapHeader, position->x - 7, position->y - 7, position->height); + struct BgEvent *bgEvent = GetBackgroundEventAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); if (bgEvent == NULL) return NULL; @@ -498,7 +498,7 @@ static bool8 TryStartStepBasedScript(struct MapPosition *position, u16 metatileB static bool8 TryStartCoordEventScript(struct MapPosition *position) { - u8 *script = GetCoordEventScriptAtPosition(&gMapHeader, position->x - 7, position->y - 7, position->height); + u8 *script = GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); if (script == NULL) return FALSE; @@ -785,7 +785,7 @@ static bool8 IsArrowWarpMetatileBehavior(u16 metatileBehavior, u8 direction) static s8 GetWarpEventAtMapPosition(struct MapHeader *mapHeader, struct MapPosition *position) { - return GetWarpEventAtPosition(mapHeader, position->x - 7, position->y - 7, position->height); + return GetWarpEventAtPosition(mapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); } static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPosition *position) @@ -920,7 +920,7 @@ static u8 *GetCoordEventScriptAtPosition(struct MapHeader *mapHeader, u16 x, u16 u8 *GetCoordEventScriptAtMapPosition(struct MapPosition *position) { - return GetCoordEventScriptAtPosition(&gMapHeader, position->x - 7, position->y - 7, position->height); + return GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); } static struct BgEvent *GetBackgroundEventAtPosition(struct MapHeader *mapHeader, u16 x, u16 y, u8 elevation) @@ -944,7 +944,7 @@ bool8 TryDoDiveWarp(struct MapPosition *position, u16 metatileBehavior) { if (gMapHeader.mapType == MAP_TYPE_UNDERWATER && !MetatileBehavior_IsUnableToEmerge(metatileBehavior)) { - if (SetDiveWarpEmerge(position->x - 7, position->y - 7)) + if (SetDiveWarpEmerge(position->x - MAP_OFFSET, position->y - MAP_OFFSET)) { StoreInitialPlayerAvatarState(); DoDiveWarp(); @@ -954,7 +954,7 @@ bool8 TryDoDiveWarp(struct MapPosition *position, u16 metatileBehavior) } else if (MetatileBehavior_IsDiveable(metatileBehavior) == TRUE) { - if (SetDiveWarpDive(position->x - 7, position->y - 7)) + if (SetDiveWarpDive(position->x - MAP_OFFSET, position->y - MAP_OFFSET)) { StoreInitialPlayerAvatarState(); DoDiveWarp(); @@ -974,12 +974,12 @@ u8 TrySetDiveWarp(void) metatileBehavior = MapGridGetMetatileBehaviorAt(x, y); if (gMapHeader.mapType == MAP_TYPE_UNDERWATER && !MetatileBehavior_IsUnableToEmerge(metatileBehavior)) { - if (SetDiveWarpEmerge(x - 7, y - 7) == TRUE) + if (SetDiveWarpEmerge(x - MAP_OFFSET, y - MAP_OFFSET) == TRUE) return 1; } else if (MetatileBehavior_IsDiveable(metatileBehavior) == TRUE) { - if (SetDiveWarpDive(x - 7, y - 7) == TRUE) + if (SetDiveWarpDive(x - MAP_OFFSET, y - MAP_OFFSET) == TRUE) return 2; } return 0; diff --git a/src/field_door.c b/src/field_door.c index 3f2034ea6c57..f53e83d7a697 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -346,14 +346,14 @@ static void DrawDoor(const struct DoorGraphics *gfx, const struct DoorAnimFrame { DrawClosedDoorTiles(gfx, x, y); if (ShouldUseMultiCorridorDoor()) - DrawClosedDoorTiles(gfx, gSpecialVar_0x8004 + 7, gSpecialVar_0x8005 + 7); + DrawClosedDoorTiles(gfx, gSpecialVar_0x8004 + MAP_OFFSET, gSpecialVar_0x8005 + MAP_OFFSET); } else { CopyDoorTilesToVram(gfx, frame); DrawCurrentDoorAnimFrame(gfx, x, y, gfx->palette); if (ShouldUseMultiCorridorDoor()) - DrawCurrentDoorAnimFrame(gfx, gSpecialVar_0x8004 + 7, gSpecialVar_0x8005 + 7, gfx->palette); + DrawCurrentDoorAnimFrame(gfx, gSpecialVar_0x8004 + MAP_OFFSET, gSpecialVar_0x8005 + MAP_OFFSET, gfx->palette); } } diff --git a/src/field_effect.c b/src/field_effect.c index 90d43c809970..88f8065d3fbf 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3830,11 +3830,11 @@ bool8 FldEff_MoveDeoxysRock(struct Sprite* sprite) int xPos, yPos; u8 taskId; object = &gObjectEvents[objectEventIdBuffer]; - xPos = object->currentCoords.x - 7; - yPos = object->currentCoords.y - 7; + xPos = object->currentCoords.x - MAP_OFFSET; + yPos = object->currentCoords.y - MAP_OFFSET; xPos = (gFieldEffectArguments[3] - xPos) * 16; yPos = (gFieldEffectArguments[4] - yPos) * 16; - ShiftObjectEventCoords(object, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7); + ShiftObjectEventCoords(object, gFieldEffectArguments[3] + MAP_OFFSET, gFieldEffectArguments[4] + MAP_OFFSET); taskId = CreateTask(Task_MoveDeoxysRock, 80); gTasks[taskId].data[1] = object->spriteId; gTasks[taskId].data[2] = gSprites[object->spriteId].x + xPos; diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index bcc02efe9693..0a0e465a876b 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -1416,8 +1416,8 @@ u32 FldEff_Sparkle(void) { u8 spriteId; - gFieldEffectArguments[0] += 7; - gFieldEffectArguments[1] += 7; + gFieldEffectArguments[0] += MAP_OFFSET; + gFieldEffectArguments[1] += MAP_OFFSET; SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8); spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_SMALL_SPARKLE], gFieldEffectArguments[0], gFieldEffectArguments[1], 0x52); if (spriteId != MAX_SPRITES) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 617dd8ea3e52..51e49629c41f 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1368,8 +1368,8 @@ void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender) playerObjEventTemplate.localId = OBJ_EVENT_ID_PLAYER; playerObjEventTemplate.graphicsId = GetPlayerAvatarGraphicsIdByStateIdAndGender(PLAYER_AVATAR_STATE_NORMAL, gender); - playerObjEventTemplate.x = x - 7; - playerObjEventTemplate.y = y - 7; + playerObjEventTemplate.x = x - MAP_OFFSET; + playerObjEventTemplate.y = y - MAP_OFFSET; playerObjEventTemplate.elevation = 0; playerObjEventTemplate.movementType = MOVEMENT_TYPE_PLAYER; playerObjEventTemplate.movementRangeX = 0; diff --git a/src/field_special_scene.c b/src/field_special_scene.c index cb2d0e9016fa..39e5d669809a 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -215,9 +215,9 @@ void Task_HandleTruckSequence(u8 taskId) data[1]++; if (data[1] == 120) { - MapGridSetMetatileIdAt(11, 8, METATILE_InsideOfTruck_ExitLight_Top); - MapGridSetMetatileIdAt(11, 9, METATILE_InsideOfTruck_ExitLight_Mid); - MapGridSetMetatileIdAt(11, 10, METATILE_InsideOfTruck_ExitLight_Bottom); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_InsideOfTruck_ExitLight_Top); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_InsideOfTruck_ExitLight_Mid); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 3 + MAP_OFFSET, METATILE_InsideOfTruck_ExitLight_Bottom); DrawWholeMapView(); PlaySE(SE_TRUCK_DOOR); DestroyTask(taskId); @@ -229,9 +229,9 @@ void Task_HandleTruckSequence(u8 taskId) void ExecuteTruckSequence(void) { - MapGridSetMetatileIdAt(11, 8, METATILE_InsideOfTruck_DoorClosedFloor_Top); - MapGridSetMetatileIdAt(11, 9, METATILE_InsideOfTruck_DoorClosedFloor_Mid); - MapGridSetMetatileIdAt(11, 10, METATILE_InsideOfTruck_DoorClosedFloor_Bottom); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_InsideOfTruck_DoorClosedFloor_Top); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_InsideOfTruck_DoorClosedFloor_Mid); + MapGridSetMetatileIdAt(4 + MAP_OFFSET, 3 + MAP_OFFSET, METATILE_InsideOfTruck_DoorClosedFloor_Bottom); DrawWholeMapView(); ScriptContext2_Enable(); CpuFastFill(0, gPlttBufferFaded, 0x400); diff --git a/src/field_specials.c b/src/field_specials.c index e19f02c09e9e..c3bd62946660 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -586,7 +586,7 @@ void SpawnLinkPartnerObjectEvent(void) linkSpriteId = OBJ_EVENT_GFX_RIVAL_MAY_NORMAL; break; } - SpawnSpecialObjectEventParameterized(linkSpriteId, movementTypes[j], 240 - i, coordOffsets[j][0] + x + 7, coordOffsets[j][1] + y + 7, 0); + SpawnSpecialObjectEventParameterized(linkSpriteId, movementTypes[j], 240 - i, coordOffsets[j][0] + x + MAP_OFFSET, coordOffsets[j][1] + y + MAP_OFFSET, 0); LoadLinkPartnerObjectEventSpritePalette(linkSpriteId, 240 - i, i); j++; if (j == MAX_LINK_PLAYERS) @@ -633,13 +633,12 @@ static void LoadLinkPartnerObjectEventSpritePalette(u8 graphicsId, u8 localEvent } } -// NOTE: Coordinates are +7, +7 from actual in-map coordinates static const struct UCoords8 sMauvilleGymSwitchCoords[] = { - { 7, 22}, - {11, 19}, - {10, 16}, - {15, 16} + { 0 + MAP_OFFSET, 15 + MAP_OFFSET}, + { 4 + MAP_OFFSET, 12 + MAP_OFFSET}, + { 3 + MAP_OFFSET, 9 + MAP_OFFSET}, + { 8 + MAP_OFFSET, 9 + MAP_OFFSET} }; // Presses the stepped-on switch and raises the rest @@ -659,10 +658,10 @@ void MauvilleGymPressSwitch(void) void MauvilleGymSetDefaultBarriers(void) { int x, y; - // All switches/barriers are within these coord ranges -7 - for (y = 12; y < 24; y++) + // All switches/barriers are within these coord ranges + for (y = 5 + MAP_OFFSET; y < 17 + MAP_OFFSET; y++) { - for (x = 7; x < 16; x++) + for (x = 0 + MAP_OFFSET; x < 9 + MAP_OFFSET; x++) { switch (MapGridGetMetatileIdAt(x, y)) { @@ -759,9 +758,9 @@ void MauvilleGymDeactivatePuzzle(void) MapGridSetMetatileIdAt(switchCoords->x, switchCoords->y, METATILE_MauvilleGym_PressedSwitch); switchCoords++; } - for (y = 12; y < 24; y++) + for (y = 5 + MAP_OFFSET; y < 17 + MAP_OFFSET; y++) { - for (x = 7; x < 16; x++) + for (x = 0 + MAP_OFFSET; x < 9 + MAP_OFFSET; x++) { switch (MapGridGetMetatileIdAt(x, y)) { @@ -902,8 +901,8 @@ static void PetalburgGymSetDoorMetatiles(u8 roomNumber, u16 metatileId) } for (i = 0; i < nDoors; i++) { - MapGridSetMetatileIdAt(doorCoordsX[i] + 7, doorCoordsY[i] + 7, metatileId | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(doorCoordsX[i] + 7, doorCoordsY[i] + 8, (metatileId + 8) | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET, metatileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET + 1, (metatileId + 8) | METATILE_COLLISION_MASK); } DrawWholeMapView(); } @@ -1115,7 +1114,7 @@ static void PCTurnOnEffect_1(s16 isPcTurnedOn, s8 dx, s8 dy) tileId = METATILE_BrendansMaysHouse_MayPC_On; } } - MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + 7, gSaveBlock1Ptr->pos.y + dy + 7, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); } void DoPCTurnOffEffect(void) @@ -1156,7 +1155,7 @@ static void PCTurnOffEffect(void) { tileId = METATILE_BrendansMaysHouse_MayPC_Off; } - MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + 7, gSaveBlock1Ptr->pos.y + dy + 7, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); DrawWholeMapView(); } @@ -1189,13 +1188,13 @@ static void LotteryCornerComputerEffect(struct Task *task) task->data[3] = 0; if (task->data[4] != 0) { - MapGridSetMetatileIdAt(18, 8, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(18, 9, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); } else { - MapGridSetMetatileIdAt(18, 8, METATILE_Shop_Laptop1_Flash | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(18, 9, METATILE_Shop_Laptop2_Flash | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Flash | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Flash | METATILE_COLLISION_MASK); } DrawWholeMapView(); task->data[4] ^= 1; @@ -1209,8 +1208,8 @@ static void LotteryCornerComputerEffect(struct Task *task) void EndLotteryCornerComputerEffect(void) { - MapGridSetMetatileIdAt(18, 8, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(18, 9, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); DrawWholeMapView(); } @@ -1298,7 +1297,12 @@ void IsGrassTypeInParty(void) void SpawnCameraObject(void) { - u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1, MOVEMENT_TYPE_FACE_DOWN, OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7, 3); + u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1, + MOVEMENT_TYPE_FACE_DOWN, + OBJ_EVENT_ID_CAMERA, + gSaveBlock1Ptr->pos.x + MAP_OFFSET, + gSaveBlock1Ptr->pos.y + MAP_OFFSET, + 3); gObjectEvents[obj].invisible = TRUE; CameraObjectSetFollowedSpriteId(gObjectEvents[obj].spriteId); } @@ -1949,23 +1953,15 @@ static void Task_MoveElevatorWindowLights(u8 taskId) if (data[2] == FALSE) { for (y = 0; y < 3; y++) - { for (x = 0; x < 3; x++) - { - MapGridSetMetatileIdAt(x + 8, y + 7, sElevatorWindowTiles_Ascending[y][data[0] % 3] | METATILE_COLLISION_MASK); - } - } + MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Ascending[y][data[0] % 3] | METATILE_COLLISION_MASK); } // descending else { for (y = 0; y < 3; y++) - { for (x = 0; x < 3; x++) - { - MapGridSetMetatileIdAt(x + 8, y + 7, sElevatorWindowTiles_Descending[y][data[0] % 3] | METATILE_COLLISION_MASK); - } - } + MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Descending[y][data[0] % 3] | METATILE_COLLISION_MASK); } DrawWholeMapView(); data[1] = 0; diff --git a/src/field_tasks.c b/src/field_tasks.c index 676a9cfc7b49..187270f7a8be 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -529,7 +529,7 @@ void SetSootopolisGymCrackedIceMetatiles(void) for (y = 0; y < height; y++) { if (IsIcePuzzleCoordVisited(x, y) == TRUE) - MapGridSetMetatileIdAt(x + 7, y + 7, METATILE_SootopolisGym_Ice_Cracked); + MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SootopolisGym_Ice_Cracked); } } } @@ -586,7 +586,7 @@ static void SootopolisGymIcePerStepCallback(u8 taskId) PlaySE(SE_ICE_CRACK); MapGridSetMetatileIdAt(x, y, METATILE_SootopolisGym_Ice_Cracked); CurrentMapDrawMetatileAt(x, y); - MarkIcePuzzleCoordVisited(x - 7, y - 7); + MarkIcePuzzleCoordVisited(x - MAP_OFFSET, y - MAP_OFFSET); data[1] = 1; } break; @@ -689,7 +689,7 @@ static void SetMuddySlopeMetatile(s16 *data, s16 x, s16 y) { u16 tile; if ((--data[0]) == 0) - tile = 0xe8; + tile = METATILE_General_MuddySlope_Frame0; else tile = sMuddySlopeMetatiles[data[0] / 8]; diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 73215873395d..27ade478f0bd 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -1,6 +1,7 @@ #include "global.h" #include "battle_anim.h" #include "event_object_movement.h" +#include "fieldmap.h" #include "field_weather.h" #include "overworld.h" #include "random.h" @@ -189,7 +190,7 @@ static void CreateCloudSprites(void) { gWeatherPtr->sprites.s1.cloudSprites[i] = &gSprites[spriteId]; sprite = gWeatherPtr->sprites.s1.cloudSprites[i]; - SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + 7, sCloudSpriteMapCoords[i].y + 7, &sprite->x, &sprite->y); + SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + MAP_OFFSET, sCloudSpriteMapCoords[i].y + MAP_OFFSET, &sprite->x, &sprite->y); sprite->coordOffsetEnabled = TRUE; } else diff --git a/src/fieldmap.c b/src/fieldmap.c index e437ea7fc2e6..aff72c4c6816 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -105,9 +105,9 @@ static void InitMapLayoutData(struct MapHeader *mapHeader) mapLayout = mapHeader->mapLayout; CpuFastFill16(METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); gBackupMapLayout.map = gBackupMapData; - width = mapLayout->width + 15; + width = mapLayout->width + MAP_OFFSET_W; gBackupMapLayout.width = width; - height = mapLayout->height + 14; + height = mapLayout->height + MAP_OFFSET_H; gBackupMapLayout.height = height; if (width * height <= MAX_MAP_DATA_SIZE) { @@ -121,11 +121,11 @@ static void InitBackupMapLayoutData(u16 *map, u16 width, u16 height) u16 *dest; int y; dest = gBackupMapLayout.map; - dest += gBackupMapLayout.width * 7 + 7; + dest += gBackupMapLayout.width * 7 + MAP_OFFSET; for (y = 0; y < height; y++) { CpuCopy16(map, dest, width * 2); - dest += width + 15; + dest += width + MAP_OFFSET_W; map += width; } } @@ -197,8 +197,8 @@ static void FillSouthConnection(struct MapHeader const *mapHeader, struct MapHea if (connectedMapHeader) { cWidth = connectedMapHeader->mapLayout->width; - x = offset + 7; - y = mapHeader->mapLayout->height + 7; + x = offset + MAP_OFFSET; + y = mapHeader->mapLayout->height + MAP_OFFSET; if (x < 0) { x2 = -x; @@ -222,7 +222,7 @@ static void FillSouthConnection(struct MapHeader const *mapHeader, struct MapHea x, y, connectedMapHeader, x2, /*y2*/ 0, - width, /*height*/ 7); + width, /*height*/ MAP_OFFSET); } } @@ -237,8 +237,8 @@ static void FillNorthConnection(struct MapHeader const *mapHeader, struct MapHea { cWidth = connectedMapHeader->mapLayout->width; cHeight = connectedMapHeader->mapLayout->height; - x = offset + 7; - y2 = cHeight - 7; + x = offset + MAP_OFFSET; + y2 = cHeight - MAP_OFFSET; if (x < 0) { x2 = -x; @@ -262,7 +262,7 @@ static void FillNorthConnection(struct MapHeader const *mapHeader, struct MapHea x, /*y*/ 0, connectedMapHeader, x2, y2, - width, /*height*/ 7); + width, /*height*/ MAP_OFFSET); } } @@ -277,8 +277,8 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead { cWidth = connectedMapHeader->mapLayout->width; cHeight = connectedMapHeader->mapLayout->height; - y = offset + 7; - x2 = cWidth - 7; + y = offset + MAP_OFFSET; + x2 = cWidth - MAP_OFFSET; if (y < 0) { y2 = -y; @@ -301,7 +301,7 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead /*x*/ 0, y, connectedMapHeader, x2, y2, - /*width*/ 7, height); + /*width*/ MAP_OFFSET, height); } } @@ -314,8 +314,8 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead if (connectedMapHeader) { cHeight = connectedMapHeader->mapLayout->height; - x = mapHeader->mapLayout->width + 7; - y = offset + 7; + x = mapHeader->mapLayout->width + MAP_OFFSET; + y = offset + MAP_OFFSET; if (y < 0) { y2 = -y; @@ -338,7 +338,7 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead x, y, connectedMapHeader, /*x2*/ 0, y2, - /*width*/ 8, height); + /*width*/ MAP_OFFSET + 1, height); } } @@ -433,9 +433,9 @@ void SaveMapView(void) width = gBackupMapLayout.width; x = gSaveBlock1Ptr->pos.x; y = gSaveBlock1Ptr->pos.y; - for (i = y; i < y + 14; i++) + for (i = y; i < y + MAP_OFFSET_H; i++) { - for (j = x; j < x + 15; j++) + for (j = x; j < x + MAP_OFFSET_W; j++) *mapView++ = gBackupMapData[width * i + j]; } } @@ -480,28 +480,28 @@ static void LoadSavedMapView(void) width = gBackupMapLayout.width; x = gSaveBlock1Ptr->pos.x; y = gSaveBlock1Ptr->pos.y; - for (i = y; i < y + 14; i++) + for (i = y; i < y + MAP_OFFSET_H; i++) { if (i == y && i != 0) yMode = 0; - else if (i == y + 13 && i != gMapHeader.mapLayout->height - 1) + else if (i == y + MAP_OFFSET_H - 1 && i != gMapHeader.mapLayout->height - 1) yMode = 1; else yMode = 0xFF; - for (j = x; j < x + 15; j++) + for (j = x; j < x + MAP_OFFSET_W; j++) { if (!SkipCopyingMetatileFromSavedMap(&gBackupMapData[j + width * i], width, yMode)) gBackupMapData[j + width * i] = *mapView; mapView++; } } - for (j = x; j < x + 15; j++) + for (j = x; j < x + MAP_OFFSET_W; j++) { if (y != 0) FixLongGrassMetatilesWindowTop(j, y - 1); if (i < gMapHeader.mapLayout->height - 1) - FixLongGrassMetatilesWindowBottom(j, y + 13); + FixLongGrassMetatilesWindowBottom(j, y + MAP_OFFSET_H - 1); } ClearSavedMapView(); } @@ -524,25 +524,25 @@ static void MoveMapViewToBackup(u8 direction) r8 = 0; x0 = gSaveBlock1Ptr->pos.x; y0 = gSaveBlock1Ptr->pos.y; - x2 = 15; - y2 = 14; + x2 = MAP_OFFSET_W; + y2 = MAP_OFFSET_H; switch (direction) { case CONNECTION_NORTH: y0 += 1; - y2 = 13; + y2 = MAP_OFFSET_H - 1; break; case CONNECTION_SOUTH: r8 = 1; - y2 = 13; + y2 = MAP_OFFSET_H - 1; break; case CONNECTION_WEST: x0 += 1; - x2 = 14; + x2 = MAP_OFFSET_W - 1; break; case CONNECTION_EAST: r9 = 1; - x2 = 14; + x2 = MAP_OFFSET_W - 1; break; } for (y = 0; y < y2; y++) @@ -552,7 +552,7 @@ static void MoveMapViewToBackup(u8 direction) for (x = 0; x < x2; x++) { desti = width * (y + y0); - srci = (y + r8) * 15 + r9; + srci = (y + r8) * MAP_OFFSET_W + r9; src = &mapView[srci + i]; dest = &gBackupMapData[x0 + desti + j]; *dest = *src; @@ -568,28 +568,28 @@ int GetMapBorderIdAt(int x, int y) if (MapGridGetTileAt(x, y) == METATILE_ID_UNDEFINED) return CONNECTION_INVALID; - if (x >= (gBackupMapLayout.width - 8)) + if (x >= (gBackupMapLayout.width - (MAP_OFFSET + 1))) { if (!gMapConnectionFlags.east) return CONNECTION_INVALID; return CONNECTION_EAST; } - else if (x < 7) + else if (x < MAP_OFFSET) { if (!gMapConnectionFlags.west) return CONNECTION_INVALID; return CONNECTION_WEST; } - else if (y >= (gBackupMapLayout.height - 7)) + else if (y >= (gBackupMapLayout.height - MAP_OFFSET)) { if (!gMapConnectionFlags.south) return CONNECTION_INVALID; return CONNECTION_SOUTH; } - else if (y < 7) + else if (y < MAP_OFFSET) { if (!gMapConnectionFlags.north) return CONNECTION_INVALID; @@ -604,14 +604,14 @@ int GetMapBorderIdAt(int x, int y) int GetPostCameraMoveMapBorderId(int x, int y) { - return GetMapBorderIdAt(gSaveBlock1Ptr->pos.x + 7 + x, gSaveBlock1Ptr->pos.y + 7 + y); + return GetMapBorderIdAt(gSaveBlock1Ptr->pos.x + MAP_OFFSET + x, gSaveBlock1Ptr->pos.y + MAP_OFFSET + y); } bool32 CanCameraMoveInDirection(int direction) { int x, y; - x = gSaveBlock1Ptr->pos.x + 7 + gDirectionToVectors[direction].x; - y = gSaveBlock1Ptr->pos.y + 7 + gDirectionToVectors[direction].y; + x = gSaveBlock1Ptr->pos.x + MAP_OFFSET + gDirectionToVectors[direction].x; + y = gSaveBlock1Ptr->pos.y + MAP_OFFSET + gDirectionToVectors[direction].y; if (GetMapBorderIdAt(x, y) == CONNECTION_INVALID) return FALSE; @@ -771,14 +771,14 @@ struct MapConnection *GetConnectionAtCoords(s16 x, s16 y) { direction = connection->direction; if ((direction == CONNECTION_DIVE || direction == CONNECTION_EMERGE) - || (direction == CONNECTION_NORTH && y > 6) - || (direction == CONNECTION_SOUTH && y < gMapHeader.mapLayout->height + 7) - || (direction == CONNECTION_WEST && x > 6) - || (direction == CONNECTION_EAST && x < gMapHeader.mapLayout->width + 7)) + || (direction == CONNECTION_NORTH && y > MAP_OFFSET - 1) + || (direction == CONNECTION_SOUTH && y < gMapHeader.mapLayout->height + MAP_OFFSET) + || (direction == CONNECTION_WEST && x > MAP_OFFSET - 1) + || (direction == CONNECTION_EAST && x < gMapHeader.mapLayout->width + MAP_OFFSET)) { continue; } - if (IsPosInConnectingMap(connection, x - 7, y - 7) == TRUE) + if (IsPosInConnectingMap(connection, x - MAP_OFFSET, y - MAP_OFFSET) == TRUE) { return connection; } @@ -789,14 +789,14 @@ struct MapConnection *GetConnectionAtCoords(s16 x, s16 y) void SetCameraFocusCoords(u16 x, u16 y) { - gSaveBlock1Ptr->pos.x = x - 7; - gSaveBlock1Ptr->pos.y = y - 7; + gSaveBlock1Ptr->pos.x = x - MAP_OFFSET; + gSaveBlock1Ptr->pos.y = y - MAP_OFFSET; } void GetCameraFocusCoords(u16 *x, u16 *y) { - *x = gSaveBlock1Ptr->pos.x + 7; - *y = gSaveBlock1Ptr->pos.y + 7; + *x = gSaveBlock1Ptr->pos.x + MAP_OFFSET; + *y = gSaveBlock1Ptr->pos.y + MAP_OFFSET; } // Unused diff --git a/src/item_use.c b/src/item_use.c index c350d9d0b81d..0a3181608364 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -353,12 +353,14 @@ static bool8 ItemfinderCheckForHiddenItems(const struct MapEvents *events, u8 ta // Check if there are any hidden items on the current map that haven't been picked up if (events->bgEvents[i].kind == BG_EVENT_HIDDEN_ITEM && !FlagGet(events->bgEvents[i].bgUnion.hiddenItem.hiddenItemId + FLAG_HIDDEN_ITEMS_START)) { - itemX = (u16)events->bgEvents[i].x + 7; + itemX = (u16)events->bgEvents[i].x + MAP_OFFSET; distanceX = itemX - playerX; - itemY = (u16)events->bgEvents[i].y + 7; + itemY = (u16)events->bgEvents[i].y + MAP_OFFSET; distanceY = itemY - playerY; - if ((u16)(distanceX + 7) < 15 && (distanceY >= -5) && (distanceY < 6)) + // Player can see 7 metatiles on either side horizontally + // and 5 metatiles on either side vertically + if (distanceX >= -7 && distanceX <= 7 && distanceY >= -5 && distanceY <= 5) SetDistanceOfClosestHiddenItem(taskId, distanceX, distanceY); } } @@ -402,27 +404,27 @@ static bool8 IsHiddenItemPresentInConnection(struct MapConnection *connection, i { // same weird temp variable behavior seen in IsHiddenItemPresentAtCoords case 2: - localOffset = connection->offset + 7; + localOffset = connection->offset + MAP_OFFSET; localX = x - localOffset; - localLength = mapHeader->mapLayout->height - 7; + localLength = mapHeader->mapLayout->height - MAP_OFFSET; localY = localLength + y; // additions are reversed for some reason break; case 1: - localOffset = connection->offset + 7; + localOffset = connection->offset + MAP_OFFSET; localX = x - localOffset; - localLength = gMapHeader.mapLayout->height + 7; + localLength = gMapHeader.mapLayout->height + MAP_OFFSET; localY = y - localLength; break; case 3: - localLength = mapHeader->mapLayout->width - 7; + localLength = mapHeader->mapLayout->width - MAP_OFFSET; localX = localLength + x; // additions are reversed for some reason - localOffset = connection->offset + 7; + localOffset = connection->offset + MAP_OFFSET; localY = y - localOffset; break; case 4: - localLength = gMapHeader.mapLayout->width + 7; + localLength = gMapHeader.mapLayout->width + MAP_OFFSET; localX = x - localLength; - localOffset = connection->offset + 7; + localOffset = connection->offset + MAP_OFFSET; localY = y - localOffset; break; default: @@ -435,14 +437,16 @@ static void CheckForHiddenItemsInMapConnection(u8 taskId) { s16 playerX, playerY; s16 x, y; - s16 width = gMapHeader.mapLayout->width + 7; - s16 height = gMapHeader.mapLayout->height + 7; + s16 width = gMapHeader.mapLayout->width + MAP_OFFSET; + s16 height = gMapHeader.mapLayout->height + MAP_OFFSET; - s16 var1 = 7; - s16 var2 = 7; + s16 var1 = MAP_OFFSET; + s16 var2 = MAP_OFFSET; PlayerGetDestCoords(&playerX, &playerY); + // Player can see 7 metatiles on either side horizontally + // and 5 metatiles on either side vertically for (x = playerX - 7; x <= playerX + 7; x++) { for (y = playerY - 5; y <= playerY + 5; y++) diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 65aae72552ef..7fc883ca18d4 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -479,7 +479,9 @@ static void SetInvisibleMirageTowerMetatiles(void) { u8 i; for (i = 0; i < ARRAY_COUNT(sInvisibleMirageTowerMetatiles); i++) - MapGridSetMetatileIdAt(sInvisibleMirageTowerMetatiles[i].x + 7, sInvisibleMirageTowerMetatiles[i].y + 7, sInvisibleMirageTowerMetatiles[i].metatileId); + MapGridSetMetatileIdAt(sInvisibleMirageTowerMetatiles[i].x + MAP_OFFSET, + sInvisibleMirageTowerMetatiles[i].y + MAP_OFFSET, + sInvisibleMirageTowerMetatiles[i].metatileId); DrawWholeMapView(); } diff --git a/src/overworld.c b/src/overworld.c index cfe8489cef57..71cfeaac9cb3 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -683,7 +683,7 @@ void UpdateEscapeWarp(s16 x, s16 y) u8 currMapType = GetCurrentMapType(); u8 destMapType = GetMapTypeByGroupAndId(sWarpDestination.mapGroup, sWarpDestination.mapNum); if (IsMapTypeOutdoors(currMapType) && IsMapTypeOutdoors(destMapType) != TRUE) - SetEscapeWarp(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, x - 7, y - 6); + SetEscapeWarp(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, x - MAP_OFFSET, y - MAP_OFFSET + 1); } void SetEscapeWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y) @@ -957,7 +957,7 @@ static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *playerStr static u16 GetCenterScreenMetatileBehavior(void) { - return MapGridGetMetatileBehaviorAt(gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7); + return MapGridGetMetatileBehaviorAt(gSaveBlock1Ptr->pos.x + MAP_OFFSET, gSaveBlock1Ptr->pos.y + MAP_OFFSET); } bool32 Overworld_IsBikingAllowed(void) diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 997404c27188..ea2eec126187 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -711,14 +711,14 @@ static void RotatingGate_CreateGatesWithinViewport(s16 deltaX, s16 deltaY) // Calculate the bounding box of the camera // Same as RotatingGate_DestroyGatesOutsideViewport s16 x = gSaveBlock1Ptr->pos.x - 2; - s16 x2 = gSaveBlock1Ptr->pos.x + 0x11; + s16 x2 = gSaveBlock1Ptr->pos.x + MAP_OFFSET_W + 2; s16 y = gSaveBlock1Ptr->pos.y - 2; - s16 y2 = gSaveBlock1Ptr->pos.y + 0xe; + s16 y2 = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H; for (i = 0; i < gRotatingGate_PuzzleCount; i++) { - s16 x3 = gRotatingGate_PuzzleConfig[i].x + 7; - s16 y3 = gRotatingGate_PuzzleConfig[i].y + 7; + s16 x3 = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 y3 = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (y <= y3 && y2 >= y3 && x <= x3 && x2 >= x3 && gRotatingGate_GateSpriteIds[i] == MAX_SPRITES) @@ -748,8 +748,8 @@ static u8 RotatingGate_CreateGate(u8 gateId, s16 deltaX, s16 deltaY) if (spriteId == MAX_SPRITES) return MAX_SPRITES; - x = gate->x + 7; - y = gate->y + 7; + x = gate->x + MAP_OFFSET; + y = gate->y + MAP_OFFSET; sprite = &gSprites[spriteId]; sprite->data[0] = gateId; @@ -803,15 +803,15 @@ static void RotatingGate_HideGatesOutsideViewport(struct Sprite *sprite) x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX; y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY; - x2 = x + 0x40; // Dimensions of the rotating gate - y2 = y + 0x40; + x2 = x + 64; // Dimensions of the rotating gate + y2 = y + 64; - if ((s16)x > DISPLAY_WIDTH + 0x10 - 1 || x2 < -0x10) + if ((s16)x > DISPLAY_WIDTH + 16 - 1 || x2 < -16) { sprite->invisible = TRUE; } - if ((s16)y > DISPLAY_HEIGHT + 0x10 - 1 || y2 < -0x10) + if ((s16)y > DISPLAY_HEIGHT + 16 - 1 || y2 < -16) { sprite->invisible = TRUE; } @@ -828,14 +828,14 @@ static void RotatingGate_DestroyGatesOutsideViewport(void) // Same as RotatingGate_CreateGatesWithinViewport s16 x = gSaveBlock1Ptr->pos.x - 2; - s16 x2 = gSaveBlock1Ptr->pos.x + 0x11; + s16 x2 = gSaveBlock1Ptr->pos.x + MAP_OFFSET_W + 2; s16 y = gSaveBlock1Ptr->pos.y - 2; - s16 y2 = gSaveBlock1Ptr->pos.y + 0xe; + s16 y2 = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H; for (i = 0; i < gRotatingGate_PuzzleCount; i++) { - s16 xGate = gRotatingGate_PuzzleConfig[i].x + 7; - s16 yGate = gRotatingGate_PuzzleConfig[i].y + 7; + s16 xGate = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 yGate = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (gRotatingGate_GateSpriteIds[i] == MAX_SPRITES) continue; @@ -868,8 +868,8 @@ static s32 RotatingGate_CanRotate(u8 gateId, s32 rotationDirection) orientation = RotatingGate_GetGateOrientation(gateId); shape = gRotatingGate_PuzzleConfig[gateId].shape; - x = gRotatingGate_PuzzleConfig[gateId].x + 7; - y = gRotatingGate_PuzzleConfig[gateId].y + 7; + x = gRotatingGate_PuzzleConfig[gateId].x + MAP_OFFSET; + y = gRotatingGate_PuzzleConfig[gateId].y + MAP_OFFSET; // Loop through the gate's "arms" clockwise (north, south, east, west) for (i = GATE_ARM_NORTH; i <= GATE_ARM_WEST; i++) @@ -964,8 +964,8 @@ bool8 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y) return FALSE; for (i = 0; i < gRotatingGate_PuzzleCount; i++) { - s16 gateX = gRotatingGate_PuzzleConfig[i].x + 7; - s16 gateY = gRotatingGate_PuzzleConfig[i].y + 7; + s16 gateX = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 gateY = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (gateX - 2 <= x && x <= gateX + 1 && gateY - 2 <= y && y <= gateY + 1) { @@ -1002,8 +1002,8 @@ bool8 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8 direction, s16 x, s return FALSE; for (i = 0; i < gRotatingGate_PuzzleCount; i++) { - s16 gateX = gRotatingGate_PuzzleConfig[i].x + 7; - s16 gateY = gRotatingGate_PuzzleConfig[i].y + 7; + s16 gateX = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 gateY = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (gateX - 2 <= x && x <= gateX + 1 && gateY - 2 <= y && y <= gateY + 1) { diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index a3bee41808fb..56be9736f516 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -119,8 +119,8 @@ u16 MoveRotatingTileObjects(u8 puzzleNumber) { s32 puzzleTileStart; u8 puzzleTileNum; - s16 x = objectEvents[i].x + 7; - s16 y = objectEvents[i].y + 7; + s16 x = objectEvents[i].x + MAP_OFFSET; + s16 y = objectEvents[i].y + MAP_OFFSET; u16 metatile = MapGridGetMetatileIdAt(x, y); if (!sRotatingTilePuzzle->isTrickHouse) @@ -211,8 +211,8 @@ void TurnRotatingTileObjects(void) s32 rotation; s8 tileDifference; u8 objectEventId; - s16 x = objectEvents[sRotatingTilePuzzle->objects[i].eventTemplateId].x + 7; - s16 y = objectEvents[sRotatingTilePuzzle->objects[i].eventTemplateId].y + 7; + s16 x = objectEvents[sRotatingTilePuzzle->objects[i].eventTemplateId].x + MAP_OFFSET; + s16 y = objectEvents[sRotatingTilePuzzle->objects[i].eventTemplateId].y + MAP_OFFSET; u16 metatile = MapGridGetMetatileIdAt(x, y); // NOTE: The following 2 assignments and if else could all be replaced with rotation = ROTATE_COUNTERCLOCKWISE @@ -322,8 +322,8 @@ static void TurnUnsavedRotatingTileObject(u8 eventTemplateId, u8 puzzleTileNum) s32 puzzleTileStart; u16 movementType; struct ObjectEventTemplate *objectEvents = gSaveBlock1Ptr->objectEventTemplates; - s16 x = objectEvents[eventTemplateId].x + 7; - s16 y = objectEvents[eventTemplateId].y + 7; + s16 x = objectEvents[eventTemplateId].x + MAP_OFFSET; + s16 y = objectEvents[eventTemplateId].y + MAP_OFFSET; u16 metatile = MapGridGetMetatileIdAt(x, y); if (!sRotatingTilePuzzle->isTrickHouse) diff --git a/src/scrcmd.c b/src/scrcmd.c index dfda7b3a2dfb..de0ec7c263f5 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -791,9 +791,9 @@ bool8 ScrCmd_warphole(struct ScriptContext *ctx) PlayerGetDestCoords(&x, &y); if (mapGroup == 0xFF && mapNum == 0xFF) - SetWarpDestinationToFixedHoleWarp(x - 7, y - 7); + SetWarpDestinationToFixedHoleWarp(x - MAP_OFFSET, y - MAP_OFFSET); else - SetWarpDestination(mapGroup, mapNum, -1, x - 7, y - 7); + SetWarpDestination(mapGroup, mapNum, -1, x - MAP_OFFSET, y - MAP_OFFSET); DoFallWarp(); ResetInitialPlayerAvatarState(); return TRUE; @@ -2043,8 +2043,8 @@ bool8 ScrCmd_setmetatile(struct ScriptContext *ctx) u16 tileId = VarGet(ScriptReadHalfword(ctx)); u16 isImpassable = VarGet(ScriptReadHalfword(ctx)); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; if (!isImpassable) MapGridSetMetatileIdAt(x, y, tileId); else @@ -2057,8 +2057,8 @@ bool8 ScrCmd_opendoor(struct ScriptContext *ctx) u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; PlaySE(GetDoorSoundEffect(x, y)); FieldAnimateDoorOpen(x, y); return FALSE; @@ -2069,8 +2069,8 @@ bool8 ScrCmd_closedoor(struct ScriptContext *ctx) u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; FieldAnimateDoorClose(x, y); return FALSE; } @@ -2094,8 +2094,8 @@ bool8 ScrCmd_setdooropen(struct ScriptContext *ctx) u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; FieldSetDoorOpened(x, y); return FALSE; } @@ -2105,8 +2105,8 @@ bool8 ScrCmd_setdoorclosed(struct ScriptContext *ctx) u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; FieldSetDoorClosed(x, y); return FALSE; } diff --git a/src/secret_base.c b/src/secret_base.c index 0a1472e311b4..e728f34884c5 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -390,8 +390,8 @@ void SetOccupiedSecretBaseEntranceMetatiles(struct MapEvents const *events) { if (gSaveBlock1Ptr->secretBases[j].secretBaseId == events->bgEvents[bgId].bgUnion.secretBaseId) { - s16 x = events->bgEvents[bgId].x + 7; - s16 y = events->bgEvents[bgId].y + 7; + s16 x = events->bgEvents[bgId].x + MAP_OFFSET; + s16 y = events->bgEvents[bgId].y + MAP_OFFSET; s16 tile_id = MapGridGetMetatileIdAt(x, y); for (i = 0; i < ARRAY_COUNT(sSecretBaseEntranceMetatiles); i++) { @@ -474,8 +474,8 @@ static void EnterNewlyCreatedSecretBase_StartFadeIn(void) ScriptContext2_Enable(); HideMapNamePopUpWindow(); FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); - x += 7; - y += 7; + x += MAP_OFFSET; + y += MAP_OFFSET; MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_PC | METATILE_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); FadeInFromBlack(); @@ -530,20 +530,20 @@ void InitSecretBaseAppearance(bool8 hidePC) for (x = 0; x < DECOR_MAX_SECRET_BASE; x++) { if (decorations[x] > 0 && decorations[x] <= NUM_DECORATIONS && gDecorations[decorations[x]].permission != DECORPERM_SPRITE) - ShowDecorationOnMap((decorPos[x] >> 4) + 7, (decorPos[x] & 0xF) + 7, decorations[x]); + ShowDecorationOnMap((decorPos[x] >> 4) + MAP_OFFSET, (decorPos[x] & 0xF) + MAP_OFFSET, decorations[x]); } if (secretBaseIdx != 0) { // Another player's secret base. Change PC type to the "Register" PC. FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); - MapGridSetMetatileIdAt(x + 7, y + 7, METATILE_SecretBase_RegisterPC | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_RegisterPC | METATILE_COLLISION_MASK); } else if (hidePC == TRUE && VarGet(VAR_SECRET_BASE_INITIALIZED) == 1) { // Change PC to regular ground tile. FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); - MapGridSetMetatileIdAt(x + 7, y + 7, METATILE_SecretBase_Ground | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_Ground | METATILE_COLLISION_MASK); } } } @@ -594,7 +594,7 @@ void InitSecretBaseDecorationSprites(void) gSpecialVar_0x8006 = decorationPositions[i] >> 4; gSpecialVar_0x8007 = decorationPositions[i] & 0xF; - metatileBehavior = MapGridGetMetatileBehaviorAt(gSpecialVar_0x8006 + 7, gSpecialVar_0x8007 + 7); + metatileBehavior = MapGridGetMetatileBehaviorAt(gSpecialVar_0x8006 + MAP_OFFSET, gSpecialVar_0x8007 + MAP_OFFSET); if (MetatileBehavior_HoldsSmallDecoration(metatileBehavior) == TRUE || MetatileBehavior_HoldsLargeDecoration(metatileBehavior) == TRUE) { @@ -660,7 +660,9 @@ void SetCurSecretBaseIdFromPosition(const struct MapPosition *position, const st s16 i; for (i = 0; i < events->bgEventCount; i++) { - if (events->bgEvents[i].kind == BG_EVENT_SECRET_BASE && position->x == events->bgEvents[i].x + 7 && position->y == events->bgEvents[i].y + 7) + if (events->bgEvents[i].kind == BG_EVENT_SECRET_BASE + && position->x == events->bgEvents[i].x + MAP_OFFSET + && position->y == events->bgEvents[i].y + MAP_OFFSET) { sCurSecretBaseId = events->bgEvents[i].bgUnion.secretBaseId; break; @@ -830,12 +832,14 @@ static void ClosePlayerSecretBaseEntrance(void) if (events->bgEvents[i].kind == BG_EVENT_SECRET_BASE && gSaveBlock1Ptr->secretBases[0].secretBaseId == events->bgEvents[i].bgUnion.secretBaseId) { - metatileId = MapGridGetMetatileIdAt(events->bgEvents[i].x + 7, events->bgEvents[i].y + 7); + metatileId = MapGridGetMetatileIdAt(events->bgEvents[i].x + MAP_OFFSET, events->bgEvents[i].y + MAP_OFFSET); for (j = 0; j < ARRAY_COUNT(sSecretBaseEntranceMetatiles); j++) { if (sSecretBaseEntranceMetatiles[j].openMetatileId == metatileId) { - MapGridSetMetatileIdAt(events->bgEvents[i].x + 7, events->bgEvents[i].y + 7, sSecretBaseEntranceMetatiles[j].closedMetatileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(events->bgEvents[i].x + MAP_OFFSET, + events->bgEvents[i].y + MAP_OFFSET, + sSecretBaseEntranceMetatiles[j].closedMetatileId | METATILE_COLLISION_MASK); break; } } diff --git a/src/union_room.c b/src/union_room.c index 03f7fc02b51e..fb1604879b3e 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -11,6 +11,7 @@ #include "easy_chat.h" #include "event_data.h" #include "event_object_lock.h" +#include "fieldmap.h" #include "field_control_avatar.h" #include "field_player_avatar.h" #include "field_screen_effect.h" @@ -3989,10 +3990,10 @@ static bool32 IsPlayerFacingTradingBoard(void) s16 x, y; GetXYCoordsOneStepInFrontOfPlayer(&x, &y); - if (x != 2 + 7) + if (x != 2 + MAP_OFFSET) return FALSE; - if (y != 1 + 7) + if (y != 1 + MAP_OFFSET) return FALSE; if (gPlayerAvatar.tileTransitionState == T_TILE_CENTER || gPlayerAvatar.tileTransitionState == T_NOT_MOVING) diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index ff6c90b25522..77eee6e4aa22 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -125,14 +125,14 @@ static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id) static void GetUnionRoomPlayerFacingCoords(u32 playerIdx, u32 direction, s32 * x, s32 * y) { - *x = sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + 7; - *y = sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + 7; + *x = sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + MAP_OFFSET; + *y = sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + MAP_OFFSET; } static bool32 IsUnionRoomPlayerFacingTileAt(u32 playerIdx, u32 direction, s32 x, s32 y) { - if ((sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + 7 == x) - && (sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + 7 == y)) + if ((sUnionRoomPlayerCoords[playerIdx][0] + sFacingDirectionOffsets[direction][0] + MAP_OFFSET == x) + && (sUnionRoomPlayerCoords[playerIdx][1] + sFacingDirectionOffsets[direction][1] + MAP_OFFSET == y)) return TRUE; else return FALSE; diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 8bcb1760557d..32316c11956c 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -70,7 +70,7 @@ static u16 GetRoute119WaterTileNum(s16 x, s16 y, u8 section) { for (xCur = 0; xCur < gMapHeader.mapLayout->width; xCur++) { - u8 tileBehaviorId = MapGridGetMetatileBehaviorAt(xCur + 7, yCur + 7); + u8 tileBehaviorId = MapGridGetMetatileBehaviorAt(xCur + MAP_OFFSET, yCur + MAP_OFFSET); if (MetatileBehavior_IsSurfableAndNotWaterfall(tileBehaviorId) == TRUE) { tileNum++; @@ -95,8 +95,8 @@ static bool8 CheckFeebas(void) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE119)) { GetXYCoordsOneStepInFrontOfPlayer(&x, &y); - x -= 7; - y -= 7; + x -= MAP_OFFSET; + y -= MAP_OFFSET; if (y >= gRoute119WaterTileData[3 * 0 + 0] && y <= gRoute119WaterTileData[3 * 0 + 1]) route119Section = 0; From ff01eb951b89afe141cbe81a9c2524df17bd63d3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 9 Oct 2021 13:21:14 -0400 Subject: [PATCH 289/762] Use TRACKS constants for sGroundEffectTracksFuncs --- src/event_object_movement.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 2a606f72a73d..2f7cb9e7a2ee 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -7937,9 +7937,9 @@ void GroundEffect_FlowingWater(struct ObjectEvent *objEvent, struct Sprite *spri } static void (*const sGroundEffectTracksFuncs[])(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) = { - DoTracksGroundEffect_None, - DoTracksGroundEffect_Footprints, - DoTracksGroundEffect_BikeTireTracks, + [TRACKS_NONE] = DoTracksGroundEffect_None, + [TRACKS_FOOT] = DoTracksGroundEffect_Footprints, + [TRACKS_BIKE_TIRE] = DoTracksGroundEffect_BikeTireTracks, }; void GroundEffect_SandTracks(struct ObjectEvent *objEvent, struct Sprite *sprite) From b01213b8bc0e4f82a0ab7505b4fe7db2e2d0ddf2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 9 Oct 2021 14:18:05 -0400 Subject: [PATCH 290/762] Some constants in wild_encounter.c, document Feebas spot generation --- src/wild_encounter.c | 137 +++++++++++++++++++++++++------------------ 1 file changed, 80 insertions(+), 57 deletions(-) diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 32316c11956c..5d7425762938 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -25,9 +25,27 @@ extern const u8 EventScript_RepelWoreOff[]; -#define NUM_FEEBAS_SPOTS 6 +#define MAX_ENCOUNTER_RATE 2880 + +#define NUM_FEEBAS_SPOTS 6 + +// Number of accessible fishing spots in each section of Route 119 +// Each section is an area of the route between the y coordinates in sRoute119WaterTileData +#define NUM_FISHING_SPOTS_1 131 +#define NUM_FISHING_SPOTS_2 167 +#define NUM_FISHING_SPOTS_3 149 +#define NUM_FISHING_SPOTS (NUM_FISHING_SPOTS_1 + NUM_FISHING_SPOTS_2 + NUM_FISHING_SPOTS_3) + +enum { + WILD_AREA_LAND, + WILD_AREA_WATER, + WILD_AREA_ROCKS, + WILD_AREA_FISHING, +}; + +#define WILD_CHECK_REPEL (1 << 0) +#define WILD_CHECK_KEEN_EYE (1 << 1) -// this file's functions static u16 FeebasRandom(void); static void FeebasSeedRng(u16 seed); static bool8 IsWildLevelAllowedByRepel(u8 level); @@ -36,60 +54,64 @@ static void ApplyCleanseTagEncounterRateMod(u32 *encRate); static bool8 TryGetAbilityInfluencedWildMonIndex(const struct WildPokemon *wildMon, u8 type, u8 ability, u8 *monIndex); static bool8 IsAbilityAllowingEncounter(u8 level); -// EWRAM vars EWRAM_DATA static u8 sWildEncountersDisabled = 0; EWRAM_DATA static u32 sFeebasRngValue = 0; #include "data/wild_encounters.h" -//Special Feebas-related data. -const struct WildPokemon gWildFeebasRoute119Data = {20, 25, SPECIES_FEEBAS}; +static const struct WildPokemon sWildFeebas = {20, 25, SPECIES_FEEBAS}; -const u16 gRoute119WaterTileData[] = +static const u16 sRoute119WaterTileData[] = { - 0, 0x2D, 0, - 0x2E, 0x5B, 0x83, - 0x5C, 0x8B, 0x12A, +//yMin, yMax, numSpots in previous sections + 0, 45, 0, + 46, 91, NUM_FISHING_SPOTS_1, + 92, 139, NUM_FISHING_SPOTS_1 + NUM_FISHING_SPOTS_2, }; -// code void DisableWildEncounters(bool8 disabled) { sWildEncountersDisabled = disabled; } -static u16 GetRoute119WaterTileNum(s16 x, s16 y, u8 section) +// Each fishing spot on Route 119 is given a number between 1 and NUM_FISHING_SPOTS inclusive. +// The number is determined by counting the valid fishing spots left to right top to bottom. +// The map is divided into three sections, with each section having a pre-counted number of +// fishing spots to start from to avoid counting a large number of spots at the bottom of the map. +// Note that a spot is considered valid if it is surfable and not a waterfall. To exclude all +// of the inaccessible water metatiles (so that they can't be selected as a Feebas spot) they +// use a different metatile that isn't actually surfable because it has MB_NORMAL instead. +// This function is given the coordinates and section of a fishing spot and returns which number it is. +static u16 GetFeebasFishingSpotId(s16 targetX, s16 targetY, u8 section) { - u16 xCur; - u16 yCur; - u16 yMin = gRoute119WaterTileData[section * 3 + 0]; - u16 yMax = gRoute119WaterTileData[section * 3 + 1]; - u16 tileNum = gRoute119WaterTileData[section * 3 + 2]; + u16 x, y; + u16 yMin = sRoute119WaterTileData[section * 3 + 0]; + u16 yMax = sRoute119WaterTileData[section * 3 + 1]; + u16 spotId = sRoute119WaterTileData[section * 3 + 2]; - for (yCur = yMin; yCur <= yMax; yCur++) + for (y = yMin; y <= yMax; y++) { - for (xCur = 0; xCur < gMapHeader.mapLayout->width; xCur++) + for (x = 0; x < gMapHeader.mapLayout->width; x++) { - u8 tileBehaviorId = MapGridGetMetatileBehaviorAt(xCur + MAP_OFFSET, yCur + MAP_OFFSET); - if (MetatileBehavior_IsSurfableAndNotWaterfall(tileBehaviorId) == TRUE) + u8 behavior = MapGridGetMetatileBehaviorAt(x + MAP_OFFSET, y + MAP_OFFSET); + if (MetatileBehavior_IsSurfableAndNotWaterfall(behavior) == TRUE) { - tileNum++; - if (x == xCur && y == yCur) - return tileNum; + spotId++; + if (targetX == x && targetY == y) + return spotId; } } } - return tileNum + 1; + return spotId + 1; } static bool8 CheckFeebas(void) { u8 i; u16 feebasSpots[NUM_FEEBAS_SPOTS]; - s16 x; - s16 y; + s16 x, y; u8 route119Section = 0; - u16 waterTileNum; + u16 spotId; if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE119) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE119)) @@ -98,29 +120,42 @@ static bool8 CheckFeebas(void) x -= MAP_OFFSET; y -= MAP_OFFSET; - if (y >= gRoute119WaterTileData[3 * 0 + 0] && y <= gRoute119WaterTileData[3 * 0 + 1]) + // Get which third of the map the player is in + if (y >= sRoute119WaterTileData[3 * 0 + 0] && y <= sRoute119WaterTileData[3 * 0 + 1]) route119Section = 0; - if (y >= gRoute119WaterTileData[3 * 1 + 0] && y <= gRoute119WaterTileData[3 * 1 + 1]) + if (y >= sRoute119WaterTileData[3 * 1 + 0] && y <= sRoute119WaterTileData[3 * 1 + 1]) route119Section = 1; - if (y >= gRoute119WaterTileData[3 * 2 + 0] && y <= gRoute119WaterTileData[3 * 2 + 1]) + if (y >= sRoute119WaterTileData[3 * 2 + 0] && y <= sRoute119WaterTileData[3 * 2 + 1]) route119Section = 2; - if (Random() % 100 > 49) // 50% chance of encountering Feebas + // 50% chance of encountering Feebas (assuming this is a Feebas spot) + if (Random() % 100 > 49) return FALSE; FeebasSeedRng(gSaveBlock1Ptr->dewfordTrends[0].rand); + + // Assign each Feebas spot to a random fishing spot. + // Randomness is fixed depending on the seed above. for (i = 0; i != NUM_FEEBAS_SPOTS;) { - feebasSpots[i] = FeebasRandom() % 447; + feebasSpots[i] = FeebasRandom() % NUM_FISHING_SPOTS; if (feebasSpots[i] == 0) - feebasSpots[i] = 447; + feebasSpots[i] = NUM_FISHING_SPOTS; + + // < 1 below is a pointless check, it will never be TRUE. + // >= 4 to skip fishing spots 1-3, because these are inaccessible + // spots at the top of the map, at (9,7), (7,13), and (15,16). + // The first accessible fishing spot is spot 4 at (18,18). if (feebasSpots[i] < 1 || feebasSpots[i] >= 4) i++; } - waterTileNum = GetRoute119WaterTileNum(x, y, route119Section); + + // Check which fishing spot the player is at, and see if + // it matches any of the Feebas spots. + spotId = GetFeebasFishingSpotId(x, y, route119Section); for (i = 0; i < NUM_FEEBAS_SPOTS; i++) { - if (waterTileNum == feebasSpots[i]) + if (spotId == feebasSpots[i]) return TRUE; } } @@ -256,7 +291,6 @@ static u8 ChooseWildMonLevel(const struct WildPokemon *wildPokemon) rand--; } } - return min + rand; } @@ -365,24 +399,13 @@ static void CreateWildMon(u16 species, u8 level) else gender = MON_FEMALE; - CreateMonWithGenderNatureLetter(&gEnemyParty[0], species, level, 32, gender, PickWildMonNature(), 0); + CreateMonWithGenderNatureLetter(&gEnemyParty[0], species, level, USE_RANDOM_IVS, gender, PickWildMonNature(), 0); return; } - CreateMonWithNature(&gEnemyParty[0], species, level, 32, PickWildMonNature()); + CreateMonWithNature(&gEnemyParty[0], species, level, USE_RANDOM_IVS, PickWildMonNature()); } -enum -{ - WILD_AREA_LAND, - WILD_AREA_WATER, - WILD_AREA_ROCKS, - WILD_AREA_FISHING, -}; - -#define WILD_CHECK_REPEL 0x1 -#define WILD_CHECK_KEEN_EYE 0x2 - static bool8 TryGenerateWildMon(const struct WildPokemonInfo *wildMonInfo, u8 area, u8 flags) { u8 wildMonIndex = 0; @@ -436,7 +459,7 @@ static bool8 SetUpMassOutbreakEncounter(u8 flags) return FALSE; CreateWildMon(gSaveBlock1Ptr->outbreakPokemonSpecies, gSaveBlock1Ptr->outbreakPokemonLevel); - for (i = 0; i < 4; i++) + for (i = 0; i < MAX_MON_MOVES; i++) SetMonMoveSlot(&gEnemyParty[0], gSaveBlock1Ptr->outbreakPokemonMoves[i], i); return TRUE; @@ -444,7 +467,7 @@ static bool8 SetUpMassOutbreakEncounter(u8 flags) static bool8 DoMassOutbreakEncounterTest(void) { - if (gSaveBlock1Ptr->outbreakPokemonSpecies != 0 + if (gSaveBlock1Ptr->outbreakPokemonSpecies != SPECIES_NONE && gSaveBlock1Ptr->location.mapNum == gSaveBlock1Ptr->outbreakLocationMapNum && gSaveBlock1Ptr->location.mapGroup == gSaveBlock1Ptr->outbreakLocationMapGroup) { @@ -456,7 +479,7 @@ static bool8 DoMassOutbreakEncounterTest(void) static bool8 DoWildEncounterRateDiceRoll(u16 encounterRate) { - if (Random() % 2880 < encounterRate) + if (Random() % MAX_ENCOUNTER_RATE < encounterRate) return TRUE; else return FALSE; @@ -486,8 +509,8 @@ static bool8 DoWildEncounterRateTest(u32 encounterRate, bool8 ignoreAbility) else if (ability == ABILITY_SAND_VEIL && gSaveBlock1Ptr->weather == WEATHER_SANDSTORM) encounterRate /= 2; } - if (encounterRate > 2880) - encounterRate = 2880; + if (encounterRate > MAX_ENCOUNTER_RATE) + encounterRate = MAX_ENCOUNTER_RATE; return DoWildEncounterRateDiceRoll(encounterRate); } @@ -639,7 +662,7 @@ void RockSmashWildEncounter(void) gSpecialVar_Result = FALSE; } else if (DoWildEncounterRateTest(wildPokemonInfo->encounterRate, 1) == TRUE - && TryGenerateWildMon(wildPokemonInfo, 2, WILD_CHECK_REPEL | WILD_CHECK_KEEN_EYE) == TRUE) + && TryGenerateWildMon(wildPokemonInfo, WILD_AREA_ROCKS, WILD_CHECK_REPEL | WILD_CHECK_KEEN_EYE) == TRUE) { BattleSetup_StartWildBattle(); gSpecialVar_Result = TRUE; @@ -744,9 +767,9 @@ void FishingWildEncounter(u8 rod) if (CheckFeebas() == TRUE) { - u8 level = ChooseWildMonLevel(&gWildFeebasRoute119Data); + u8 level = ChooseWildMonLevel(&sWildFeebas); - species = gWildFeebasRoute119Data.species; + species = sWildFeebas.species; CreateWildMon(species, level); } else From b8a44bf10a5bfbe35381b744d86f535a14c0969a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 11 Oct 2021 10:35:53 -0400 Subject: [PATCH 291/762] Calculate pokemon substruct size, missing MON_PIC_SIZE --- include/pokemon.h | 13 +++++++++++-- src/battle_gfx_sfx_util.c | 4 ++-- src/pokemon.c | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/include/pokemon.h b/include/pokemon.h index 229898d711d8..315416c38391 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -76,13 +76,22 @@ struct PokemonSubstruct3 /* 0x0B */ u32 eventLegal:1; // controls Mew & Deoxys obedience; if set, PokĂ©mon is a fateful encounter in Gen 4+; set for in-game event island legendaries, some distributed events, and PokĂ©mon from XD: Gale of Darkness. }; +// Number of bytes in the largest PokĂ©mon substruct. +// They are assumed to be the same size, and will be padded to +// the largest size by the union. +// By default they are all 12 bytes. +#define NUM_SUBSTRUCT_BYTES (max(sizeof(struct PokemonSubstruct0), \ + max(sizeof(struct PokemonSubstruct1), \ + max(sizeof(struct PokemonSubstruct2), \ + sizeof(struct PokemonSubstruct3))))) + union PokemonSubstruct { struct PokemonSubstruct0 type0; struct PokemonSubstruct1 type1; struct PokemonSubstruct2 type2; struct PokemonSubstruct3 type3; - u16 raw[6]; + u16 raw[NUM_SUBSTRUCT_BYTES / 2]; // /2 because it's u16, not u8 }; struct BoxPokemon @@ -102,7 +111,7 @@ struct BoxPokemon union { - u32 raw[12]; + u32 raw[(NUM_SUBSTRUCT_BYTES * 4) / 4]; // *4 because there are 4 substructs, /4 because it's u32, not u8 union PokemonSubstruct substructs[4]; } secure; }; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 77c50dc18103..c01c76b7cdad 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1248,11 +1248,11 @@ void AllocateMonSpritesGfx(void) gMonSpritesGfxPtr = NULL; gMonSpritesGfxPtr = AllocZeroed(sizeof(*gMonSpritesGfxPtr)); - gMonSpritesGfxPtr->firstDecompressed = AllocZeroed(0x8000); + gMonSpritesGfxPtr->firstDecompressed = AllocZeroed(MON_PIC_SIZE * 4 * MAX_BATTLERS_COUNT); for (i = 0; i < MAX_BATTLERS_COUNT; i++) { - gMonSpritesGfxPtr->sprites.ptr[i] = gMonSpritesGfxPtr->firstDecompressed + (i * 0x2000); + gMonSpritesGfxPtr->sprites.ptr[i] = gMonSpritesGfxPtr->firstDecompressed + (i * MON_PIC_SIZE * 4); *(gMonSpritesGfxPtr->templates + i) = gBattlerSpriteTemplates[i]; for (j = 0; j < 4; j++) diff --git a/src/pokemon.c b/src/pokemon.c index 06a7a01f1e8c..011e288db8c6 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6876,7 +6876,7 @@ static bool8 ShouldSkipFriendshipChange(void) #define ALLOC_FAIL_BUFFER (1 << 0) #define ALLOC_FAIL_STRUCT (1 << 1) #define GFX_MANAGER_ACTIVE 0xA3 // Arbitrary value -#define GFX_MANAGER_SPR_SIZE (MON_PIC_SIZE * 4) // * 4 is unnecessary, MON_PIC_SIZE is sufficient +#define GFX_MANAGER_SPR_SIZE (MON_PIC_SIZE * 4) // Only Castform uses more than MON_PIC_SIZE, despite not displaying its forms. #define GFX_MANAGER_NUM_FRAMES 4 // Only 2 frames are needed static void InitMonSpritesGfx_Battle(struct MonSpritesGfxManager* gfx) From 3a7995bc7ce8fda6a763ab14f96a2011f735def6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 11 Oct 2021 10:39:37 -0400 Subject: [PATCH 292/762] Fix misleading RecordMixTrainerNames name --- include/link_rfu.h | 2 +- src/link_rfu_3.c | 2 +- src/union_room.c | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/link_rfu.h b/include/link_rfu.h index ae123c223c00..dfbc716575c1 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -287,7 +287,7 @@ bool32 WaitRfuState(bool32 force); void GetOtherPlayersInfoFlags(void); void InitializeRfuLinkManager_JoinGroup(void); void SendLeaveGroupNotice(void); -void RecordMixTrainerNames(void); +void SaveLinkTrainerNames(void); void LinkRfu_CreateConnectionAsParent(void); void LinkRfu_StopManagerBeforeEnteringChat(void); void UpdateGameData_SetActivity(u8 activity, u32 partnerInfo, bool32 startedActivity); diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index b513ae4cb1db..571f305d0e2d 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -905,7 +905,7 @@ static bool32 NameIsNotEmpty(const u8 *name) } // Save the currently connected players into the trainer records, shifting all previous records down. -void RecordMixTrainerNames(void) +void SaveLinkTrainerNames(void) { if (gWirelessCommType != 0) { diff --git a/src/union_room.c b/src/union_room.c index e3902a3b644c..41d6ded2992a 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1649,7 +1649,7 @@ static void Task_StartActivity(u8 taskId) case ACTIVITY_BERRY_PICK: case ACTIVITY_SPIN_TRADE: case ACTIVITY_RECORD_CORNER: - RecordMixTrainerNames(); + SaveLinkTrainerNames(); break; } @@ -1762,7 +1762,7 @@ static void Task_RunScriptAndFadeToActivity(u8 taskId) sendBuff[1] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[1] - 1], MON_DATA_SPECIES, NULL); gMain.savedCallback = NULL; data[0] = 4; - RecordMixTrainerNames(); + SaveLinkTrainerNames(); ResetBlockReceivedFlags(); break; case ACTIVITY_BERRY_BLENDER: @@ -1771,7 +1771,7 @@ static void Task_RunScriptAndFadeToActivity(u8 taskId) case ACTIVITY_CONTEST_CUTE: case ACTIVITY_CONTEST_SMART: case ACTIVITY_CONTEST_TOUGH: - RecordMixTrainerNames(); + SaveLinkTrainerNames(); DestroyTask(taskId); default: EnableBothScriptContexts(); From a556856ce94f3b96879eb9972cd1a12a30f4a154 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 11 Oct 2021 11:09:15 -0400 Subject: [PATCH 293/762] Convert sKeyboardChars to 3D array --- src/naming_screen.c | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/src/naming_screen.c b/src/naming_screen.c index 19da9da02225..f6558921b567 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -286,19 +286,26 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = // This handles what characters get inserted when a key is pressed // The keys shown on the keyboard are handled separately by sNamingScreenKeyboardText -static const u8 sKeyboardChars[KBPAGE_COUNT * KBROW_COUNT * KBCOL_COUNT] = __( - "abcdef ." - "ghijkl ," - "mnopqrs " - "tuvwxyz " - "ABCDEF ." - "GHIJKL ," - "MNOPQRS " - "TUVWXYZ " - "01234 " - "56789 " - "!?♂♀/- " - "…“”â€' "); +static const u8 sKeyboardChars[KBPAGE_COUNT][KBROW_COUNT][KBCOL_COUNT] = { + [KEYBOARD_LETTERS_LOWER] = { + __("abcdef ."), + __("ghijkl ,"), + __("mnopqrs "), + __("tuvwxyz "), + }, + [KEYBOARD_LETTERS_UPPER] = { + __("ABCDEF ."), + __("GHIJKL ,"), + __("MNOPQRS "), + __("TUVWXYZ "), + }, + [KEYBOARD_SYMBOLS] = { + __("01234 "), + __("56789 "), + __("!?♂♀/- "), + __("…“”â€' "), + } +}; static const u8 sPageColumnCounts[KBPAGE_COUNT] = { [KEYBOARD_LETTERS_LOWER] = KBCOL_COUNT, @@ -1780,7 +1787,7 @@ static void DrawGenderIcon(void) static u8 GetCharAtKeyboardPos(s16 x, s16 y) { - return sKeyboardChars[x + y * KBCOL_COUNT + CurrentPageToKeyboardId() * KBCOL_COUNT * KBROW_COUNT]; + return sKeyboardChars[CurrentPageToKeyboardId()][y][x]; } From f23e0beebac9aa983620c024d691690fedc4e784 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 11 Oct 2021 10:36:05 -0400 Subject: [PATCH 294/762] Rename battle anim cmds, move its data, name remaining symbols --- asm/macros/battle_anim_script.inc | 16 +- data/battle_anim_scripts.s | 136 +- include/constants/battle_anim.h | 3 + src/battle_anim.c | 2099 ++++------------------------- src/data/battle_anim.h | 1625 ++++++++++++++++++++++ 5 files changed, 1955 insertions(+), 1924 deletions(-) create mode 100644 src/data/battle_anim.h diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc index df8953a85ad1..15c48c39f586 100644 --- a/asm/macros/battle_anim_script.inc +++ b/asm/macros/battle_anim_script.inc @@ -14,7 +14,7 @@ .byte 0x02 .4byte \template .if \anim_battler == ANIM_TARGET - .byte 0x80 | (\subpriority_offset & 0x7F) + .byte ANIMSPRITE_IS_TARGET | (\subpriority_offset & 0x7F) .else .byte (\subpriority_offset & 0x7F) .endif @@ -193,12 +193,12 @@ .4byte \ptr .endm - .macro monbg_22 battler:req + .macro monbg_static battler:req .byte 0x22 .byte \battler .endm - .macro clearmonbg_23 battler:req + .macro clearmonbg_static battler:req .byte 0x23 .byte \battler .endm @@ -233,16 +233,16 @@ .byte \delay .endm - .macro monbgprio_28 battler:req + .macro splitbgprio battler:req .byte 0x28 .byte \battler .endm - .macro monbgprio_29 + .macro splitbgprio_all .byte 0x29 .endm - .macro monbgprio_2A battler:req + .macro splitbgprio_foes battler:req .byte 0x2a .byte \battler .endm @@ -257,12 +257,12 @@ .byte \battler .endm - .macro doublebattle_2D battler:req + .macro teamattack_moveback battler:req .byte 0x2d .byte \battler .endm - .macro doublebattle_2E battler:req + .macro teamattack_movefwd battler:req .byte 0x2e .byte \battler .endm diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 208bab8a6269..45cf17c3485a 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -622,7 +622,7 @@ Move_BODY_SLAM: Move_SUPERSONIC: loadspritegfx ANIM_TAG_GOLD_RING monbg ANIM_ATK_PARTNER - monbgprio_2A ANIM_ATTACKER + splitbgprio_foes ANIM_ATTACKER setalpha 12, 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1 call SupersonicRing @@ -659,7 +659,7 @@ ScreechRing: Move_FLAME_WHEEL: loadspritegfx ANIM_TAG_SMALL_EMBER monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 @@ -702,7 +702,7 @@ Move_PIN_MISSILE: loadspritegfx ANIM_TAG_NEEDLE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER createsprite gPinMissileSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32 @@ -731,7 +731,7 @@ Move_ICICLE_SPEAR: loadspritegfx ANIM_TAG_ICICLE_SPEAR loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_ICY_WIND, SOUND_PAN_ATTACKER createsprite gIcicleSpearSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32 @@ -817,7 +817,7 @@ Move_POISON_STING: loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_POISON_BUBBLE monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 20, 0, -8, 0, 20 @@ -836,7 +836,7 @@ Move_TWINEEDLE: loadspritegfx ANIM_TAG_NEEDLE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 loopsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER, 6, 2 createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 10, -4, 0, -4, 20 @@ -1029,7 +1029,7 @@ Move_SONIC_BOOM: loadspritegfx ANIM_TAG_AIR_WAVE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 call SonicBoomProjectile call SonicBoomProjectile @@ -1300,7 +1300,7 @@ Move_SPIKE_CANNON: loadspritegfx ANIM_TAG_NEEDLE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -4, 0, 4, 6, 8, 4 waitforvisualfinish @@ -1668,7 +1668,7 @@ Move_DEFENSE_CURL: Move_PROTECT: loadspritegfx ANIM_TAG_PROTECT monbg ANIM_ATK_PARTNER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16 createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90 waitforvisualfinish @@ -1882,7 +1882,7 @@ Move_PAY_DAY: loadspritegfx ANIM_TAG_COIN loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER createsprite gCoinThrowSpriteTemplate, ANIM_ATTACKER, 2, 20, 0, 0, 0, 1152 @@ -2190,7 +2190,7 @@ Move_BUBBLE_BEAM: loadspritegfx ANIM_TAG_BUBBLE loadspritegfx ANIM_TAG_SMALL_BUBBLES monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 delay 1 call BulbblebeamCreateBubbles @@ -2287,7 +2287,7 @@ Move_SMOKESCREEN: Move_CONVERSION: loadspritegfx ANIM_TAG_CONVERSION monbg ANIM_ATK_PARTNER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 16, 0 delay 0 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER @@ -2339,7 +2339,7 @@ Move_CONVERSION: Move_CONVERSION_2: loadspritegfx ANIM_TAG_CONVERSION monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET setalpha 0, 16 delay 0 playsewithpan SE_M_BARRIER, SOUND_PAN_TARGET @@ -2657,7 +2657,7 @@ DigSetUp: loadspritegfx ANIM_TAG_DIRT_MOUND createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 0, 180 createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 1, 180 - monbg_22 ANIM_ATTACKER + monbg_static ANIM_ATTACKER delay 1 createvisualtask AnimTask_DigDownMovement, 2, FALSE delay 6 @@ -2667,7 +2667,7 @@ DigSetUp: call DigThrowDirt call DigThrowDirt waitforvisualfinish - clearmonbg_23 ANIM_ATTACKER + clearmonbg_static ANIM_ATTACKER delay 1 createvisualtask AnimTask_DigDownMovement, 2, TRUE goto DigEnd @@ -3156,7 +3156,7 @@ MachPunchAgainstPlayer: Move_FORESIGHT: loadspritegfx ANIM_TAG_MAGNIFYING_GLASS monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 16, 0 createsprite gForesightMagnifyingGlassSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET delay 17 @@ -3236,7 +3236,7 @@ Move_ROLLOUT: loadspritegfx ANIM_TAG_MUD_SAND loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_Rollout, 2 waitforvisualfinish @@ -3518,11 +3518,11 @@ Move_MEMENTO: delay 12 setalpha 0, 16 delay 1 - monbg_22 ANIM_TARGET + monbg_static ANIM_TARGET createvisualtask AnimTask_MoveTargetMementoShadow, 5 playsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET waitforvisualfinish - clearmonbg_23 ANIM_TARGET + clearmonbg_static ANIM_TARGET delay 1 blendoff delay 1 @@ -3654,7 +3654,7 @@ Move_SUPERPOWER: loadspritegfx ANIM_TAG_METEOR loadspritegfx ANIM_TAG_FLAT_ROCK monbg ANIM_ATK_PARTNER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 12, 8 createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER @@ -3853,7 +3853,7 @@ Move_IMPRISON: Move_GRUDGE: loadspritegfx ANIM_TAG_PURPLE_FLAME monbg ANIM_ATTACKER - monbgprio_29 + splitbgprio_all fadetobg BG_GHOST playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER waitbgfadein @@ -3870,7 +3870,7 @@ Move_GRUDGE: Move_CAMOUFLAGE: monbg ANIM_ATK_PARTNER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 16, 0 createvisualtask AnimTask_SetCamouflageBlend, 5, 2, 3, 0, 14 delay 16 @@ -3968,7 +3968,7 @@ Move_MIST_BALL: Move_FEATHER_DANCE: loadspritegfx ANIM_TAG_WHITE_FEATHER monbg ANIM_DEF_PARTNER - monbgprio_29 + splitbgprio_all playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_TARGET delay 0 createsprite gFallingFeatherSpriteTemplate, ANIM_TARGET, 0, 0, -16, 64, 2, 104, 11304, 32, 1 @@ -4518,7 +4518,7 @@ Move_LEAF_BLADE: Move_DRAGON_DANCE: loadspritegfx ANIM_TAG_HOLLOW_ORB monbg ANIM_ATTACKER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER delay 1 createvisualtask AnimTask_DragonDanceWaver, 5 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER @@ -4924,7 +4924,7 @@ Move_SCRATCH: Move_DRAGON_BREATH: loadspritegfx ANIM_TAG_SMALL_EMBER monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 7, 7 createsprite gDragonBreathFireSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0, 0, 20 delay 2 @@ -4958,7 +4958,7 @@ Move_DRAGON_BREATH: Move_ROAR: loadspritegfx ANIM_TAG_NOISE_LINE monbg ANIM_ATTACKER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 8, 8 createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, 2 createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1 @@ -5122,7 +5122,7 @@ Move_BUBBLE: Move_SMOG: loadspritegfx ANIM_TAG_PURPLE_GAS_CLOUD monbg ANIM_DEF_PARTNER - monbgprio_29 + splitbgprio_all setalpha 12, 8 loopsewithpan SE_M_MIST, SOUND_PAN_TARGET, 17, 10 call SmogCloud @@ -5185,7 +5185,7 @@ Move_FAINT_ATTACK: Move_SAND_ATTACK: loadspritegfx ANIM_TAG_MUD_SAND monbg ANIM_ATK_PARTNER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 12, 8 playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_ATTACKER createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, -10, 0, 0, 3 @@ -5343,7 +5343,7 @@ Move_CLAMP: Move_ICE_BEAM: monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 loadspritegfx ANIM_TAG_ICE_CRYSTALS createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 7, RGB_BLACK @@ -5606,7 +5606,7 @@ Move_HYDRO_PUMP: loadspritegfx ANIM_TAG_WATER_ORB loadspritegfx ANIM_TAG_WATER_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1 delay 6 @@ -5695,7 +5695,7 @@ Move_ABSORB: loadspritegfx ANIM_TAG_BLUE_STAR loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB(13, 31, 12) waitforvisualfinish @@ -5748,7 +5748,7 @@ Move_MEGA_DRAIN: loadspritegfx ANIM_TAG_BLUE_STAR loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 8, RGB(13, 31, 12) waitforvisualfinish @@ -5809,7 +5809,7 @@ Move_GIGA_DRAIN: loadspritegfx ANIM_TAG_BLUE_STAR loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 12, RGB(13, 31, 12) waitforvisualfinish @@ -5880,7 +5880,7 @@ Move_LEECH_LIFE: loadspritegfx ANIM_TAG_BLUE_STAR loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET setalpha 12, 8 delay 1 createsprite gLeechLifeNeedleSpriteTemplate, ANIM_ATTACKER, 2, -20, 15, 12 @@ -6032,7 +6032,7 @@ Move_BONEMERANG: loadspritegfx ANIM_TAG_BONE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_BONEMERANG, SOUND_PAN_ATTACKER createsprite gBonemerangSpriteTemplate, ANIM_ATTACKER, 2 @@ -6052,7 +6052,7 @@ Move_BONE_CLUB: loadspritegfx ANIM_TAG_BONE loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_BONEMERANG, SOUND_PAN_TARGET createsprite gSpinningBoneSpriteTemplate, ANIM_ATTACKER, 2, -42, -25, 0, 0, 15 @@ -6146,7 +6146,7 @@ Move_GUST: loadspritegfx ANIM_TAG_GUST loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_GUST, SOUND_PAN_TARGET createsprite gEllipticalGustSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 @@ -6164,7 +6164,7 @@ Move_WING_ATTACK: loadspritegfx ANIM_TAG_GUST loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 20, 2 createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4 @@ -6197,7 +6197,7 @@ Move_AEROBLAST: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER call SetSkyBg - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 call AeroblastBeam createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 50, 1 @@ -6237,7 +6237,7 @@ Move_WATER_GUN: loadspritegfx ANIM_TAG_SMALL_BUBBLES loadspritegfx ANIM_TAG_WATER_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createsprite gWaterGunProjectileSpriteTemplate, ANIM_ATTACKER, 2, 20, 0, 0, 0, 40, -25 playsewithpan SE_M_BUBBLE, SOUND_PAN_ATTACKER @@ -6304,7 +6304,7 @@ Move_SURF: Move_FLAMETHROWER: loadspritegfx ANIM_TAG_SMALL_EMBER monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 @@ -6358,7 +6358,7 @@ Move_SANDSTORM: Move_WHIRLPOOL: loadspritegfx ANIM_TAG_WATER_ORB monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 delay 0 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23) @@ -6445,7 +6445,7 @@ Move_KARATE_CHOP: loadspritegfx ANIM_TAG_HANDS_AND_FEET loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, 1, 3, 0 @@ -6742,7 +6742,7 @@ SunnyDayLightRay: Move_COTTON_SPORE: loadspritegfx ANIM_TAG_SPORE monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 18, 10 call CreateCottonSpores call CreateCottonSpores @@ -6988,7 +6988,7 @@ FireSpreadEffect: Move_LEER: loadspritegfx ANIM_TAG_LEER monbg ANIM_ATTACKER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 8, 8 playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 24, -12 @@ -7008,7 +7008,7 @@ Move_DREAM_EATER: loadspritegfx ANIM_TAG_ORBS loadspritegfx ANIM_TAG_BLUE_STAR monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER call SetPsychicBackground setalpha 8, 8 @@ -7076,7 +7076,7 @@ Move_POISON_GAS: loadspritegfx ANIM_TAG_POISON_BUBBLE delay 0 monbg ANIM_DEF_PARTNER - monbgprio_29 + splitbgprio_all setalpha 12, 8 delay 0 playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER @@ -7221,7 +7221,7 @@ Move_STEEL_WING: createvisualtask AnimTask_MetallicShine, 5, 0, 0, 0 waitforvisualfinish monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 20, 2 createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4 @@ -7304,7 +7304,7 @@ Move_METAL_CLAW: Move_NIGHT_SHADE: monbg ANIM_ATTACKER - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER fadetobg BG_GHOST waitbgfadein @@ -7475,7 +7475,7 @@ Move_SPIDER_WEB: delay 0 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 0, 9, RGB_BLACK waitforvisualfinish - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 9, 6 call SpiderWebThread call SpiderWebThread @@ -7546,7 +7546,7 @@ RazorWindUnleash: Move_DISABLE: loadspritegfx ANIM_TAG_SPARKLE_4 monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 8, 8 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 24, -16 @@ -7597,8 +7597,8 @@ RecoverAbsorbEffect: Move_MIMIC: loadspritegfx ANIM_TAG_ORBS setalpha 11, 5 - monbg_22 ANIM_DEF_PARTNER - monbgprio_29 + monbg_static ANIM_DEF_PARTNER + splitbgprio_all panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 createvisualtask AnimTask_ShrinkTargetCopy, 5, 128, 24 delay 15 @@ -7609,7 +7609,7 @@ Move_MIMIC: playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 11, RGB_WHITE waitforvisualfinish - clearmonbg_23 ANIM_DEF_PARTNER + clearmonbg_static ANIM_DEF_PARTNER blendoff end @@ -8070,7 +8070,7 @@ Move_WILL_O_WISP: loadspritegfx ANIM_TAG_WISP_FIRE loadspritegfx ANIM_TAG_WISP_ORB monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER waitplaysewithpan SE_M_EMBER, SOUND_PAN_ATTACKER, 10 createvisualtask SoundTask_AdjustPanningVar, 2, SOUND_PAN_ATTACKER, SOUND_PAN_ATTACKER, 1, 0 @@ -8084,7 +8084,7 @@ Move_WILL_O_WISP: delay 40 createvisualtask SoundTask_AdjustPanningVar, 2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 waitforvisualfinish - monbgprio_29 + splitbgprio_all playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 13, 1 createsprite gWillOWispFireSpriteTemplate, ANIM_ATTACKER, 2, 0 @@ -8552,7 +8552,7 @@ Move_SHEER_COLD: waitbgfadein loadspritegfx ANIM_TAG_ICE_CUBE monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_FrozenIceCube, 2 waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 17 @@ -8566,7 +8566,7 @@ Move_SHEER_COLD: Move_ARM_THRUST: loadspritegfx ANIM_TAG_HANDS_AND_FEET loadspritegfx ANIM_TAG_IMPACT - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 0 delay 6 @@ -8684,7 +8684,7 @@ DragonClawFireSpiral: Move_MUD_SHOT: loadspritegfx ANIM_TAG_BROWN_ORB monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 @@ -8789,7 +8789,7 @@ Move_FRENZY_PLANT: loadspritegfx ANIM_TAG_ROOTS loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 2, 0, 5, RGB_BLACK waitforvisualfinish @@ -8848,7 +8848,7 @@ Move_FRENZY_PLANT: Move_METAL_SOUND: loadspritegfx ANIM_TAG_METAL_SOUND_WAVES monbg ANIM_DEF_PARTNER - monbgprio_2A ANIM_TARGET + splitbgprio_foes ANIM_TARGET createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1 call MetalSoundRings call MetalSoundRings @@ -9158,7 +9158,7 @@ Move_SILVER_WIND: playsewithpan SE_M_MORNING_SUN, 0 delay 0 monbg ANIM_DEF_PARTNER - monbgprio_29 + splitbgprio_all delay 0 createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, ANIM_TARGET, 0, 0, 4, RGB_BLACK createvisualtask AnimTask_GetTargetSide, 2 @@ -9494,7 +9494,7 @@ Move_WATER_PULSE: loadspritegfx ANIM_TAG_SMALL_BUBBLES loadspritegfx ANIM_TAG_BLUE_RING_2 monbg ANIM_TARGET - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 7, RGB(0, 25, 28) delay 10 @@ -9531,7 +9531,7 @@ Move_PSYCHO_BOOST: delay 6 createvisualtask AnimTask_BlendColorCycle, 2, 1, 2, 8, 0, 10, RGB_BLACK delay 0 - monbgprio_28 ANIM_ATTACKER + splitbgprio ANIM_ATTACKER setalpha 8, 8 delay 10 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 3, 0, 240, 0 @@ -9591,7 +9591,7 @@ Move_DOOM_DESIRE: Move_SKY_UPPERCUT: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET fadetobg BG_IN_AIR waitbgfadeout playsewithpan SE_M_SKY_UPPERCUT, SOUND_PAN_ATTACKER @@ -9650,7 +9650,7 @@ Move_TWISTER: loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET playsewithpan SE_M_TWISTER, SOUND_PAN_TARGET createsprite gTwisterLeafSpriteTemplate, ANIM_TARGET, 2, 120, 70, 5, 70, 30 delay 1 @@ -10267,7 +10267,7 @@ Status_Freeze: playsewithpan SE_M_ICY_WIND, 0 loadspritegfx ANIM_TAG_ICE_CUBE monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 17 createvisualtask AnimTask_FrozenIceCube, 2 waitforvisualfinish @@ -10384,7 +10384,7 @@ Status_FireSpin: Status_Whirlpool: loadspritegfx ANIM_TAG_WATER_ORB monbg ANIM_DEF_PARTNER - monbgprio_28 ANIM_TARGET + splitbgprio ANIM_TARGET setalpha 12, 8 delay 0 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23) diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 177ea04bb144..48de594e2ae6 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -395,6 +395,9 @@ // Tasks with return values often assign them to gBattleAnimArgs[7]. #define ARG_RET_ID 7 +// For createsprite macro to use internally +#define ANIMSPRITE_IS_TARGET (1 << 7) + // Trapping Wrap-like moves end turn animation. #define TRAP_ANIM_BIND 0 #define TRAP_ANIM_WRAP 0 diff --git a/src/battle_anim.c b/src/battle_anim.c index 4599e3e096c7..4b9fbb1dc56e 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -18,65 +18,70 @@ #include "task.h" #include "constants/battle_anim.h" +/* + This file handles the commands for the macros defined in + battle_anim_script.inc and used in battle_anim_scripts.s +*/ + #define ANIM_SPRITE_INDEX_COUNT 8 extern const u16 gMovesWithQuietBGM[]; extern const u8 *const gBattleAnims_Moves[]; -static void ScriptCmd_loadspritegfx(void); -static void ScriptCmd_unloadspritegfx(void); -static void ScriptCmd_createsprite(void); -static void ScriptCmd_createvisualtask(void); -static void ScriptCmd_delay(void); -static void ScriptCmd_waitforvisualfinish(void); -static void ScriptCmd_nop(void); -static void ScriptCmd_nop2(void); -static void ScriptCmd_end(void); -static void ScriptCmd_playse(void); -static void ScriptCmd_monbg(void); -static void ScriptCmd_clearmonbg(void); -static void ScriptCmd_setalpha(void); -static void ScriptCmd_blendoff(void); -static void ScriptCmd_call(void); -static void ScriptCmd_return(void); -static void ScriptCmd_setarg(void); -static void ScriptCmd_choosetwoturnanim(void); -static void ScriptCmd_jumpifmoveturn(void); -static void ScriptCmd_goto(void); -static void ScriptCmd_fadetobg(void); -static void ScriptCmd_restorebg(void); -static void ScriptCmd_waitbgfadeout(void); -static void ScriptCmd_waitbgfadein(void); -static void ScriptCmd_changebg(void); -static void ScriptCmd_playsewithpan(void); -static void ScriptCmd_setpan(void); -static void ScriptCmd_panse(void); -static void ScriptCmd_loopsewithpan(void); -static void ScriptCmd_waitplaysewithpan(void); -static void ScriptCmd_setbldcnt(void); -static void ScriptCmd_createsoundtask(void); -static void ScriptCmd_waitsound(void); -static void ScriptCmd_jumpargeq(void); -static void ScriptCmd_monbg_22(void); -static void ScriptCmd_clearmonbg_23(void); -static void ScriptCmd_jumpifcontest(void); -static void ScriptCmd_fadetobgfromset(void); -static void ScriptCmd_panse_adjustnone(void); -static void ScriptCmd_panse_adjustall(void); -static void ScriptCmd_monbgprio_28(void); -static void ScriptCmd_monbgprio_29(void); -static void ScriptCmd_monbgprio_2A(void); -static void ScriptCmd_invisible(void); -static void ScriptCmd_visible(void); -static void ScriptCmd_doublebattle_2D(void); -static void ScriptCmd_doublebattle_2E(void); -static void ScriptCmd_stopsound(void); +static void Cmd_loadspritegfx(void); +static void Cmd_unloadspritegfx(void); +static void Cmd_createsprite(void); +static void Cmd_createvisualtask(void); +static void Cmd_delay(void); +static void Cmd_waitforvisualfinish(void); +static void Cmd_nop(void); +static void Cmd_nop2(void); +static void Cmd_end(void); +static void Cmd_playse(void); +static void Cmd_monbg(void); +static void Cmd_clearmonbg(void); +static void Cmd_setalpha(void); +static void Cmd_blendoff(void); +static void Cmd_call(void); +static void Cmd_return(void); +static void Cmd_setarg(void); +static void Cmd_choosetwoturnanim(void); +static void Cmd_jumpifmoveturn(void); +static void Cmd_goto(void); +static void Cmd_fadetobg(void); +static void Cmd_restorebg(void); +static void Cmd_waitbgfadeout(void); +static void Cmd_waitbgfadein(void); +static void Cmd_changebg(void); +static void Cmd_playsewithpan(void); +static void Cmd_setpan(void); +static void Cmd_panse(void); +static void Cmd_loopsewithpan(void); +static void Cmd_waitplaysewithpan(void); +static void Cmd_setbldcnt(void); +static void Cmd_createsoundtask(void); +static void Cmd_waitsound(void); +static void Cmd_jumpargeq(void); +static void Cmd_monbg_static(void); +static void Cmd_clearmonbg_static(void); +static void Cmd_jumpifcontest(void); +static void Cmd_fadetobgfromset(void); +static void Cmd_panse_adjustnone(void); +static void Cmd_panse_adjustall(void); +static void Cmd_splitbgprio(void); +static void Cmd_splitbgprio_all(void); +static void Cmd_splitbgprio_foes(void); +static void Cmd_invisible(void); +static void Cmd_visible(void); +static void Cmd_teamattack_moveback(void); +static void Cmd_teamattack_movefwd(void); +static void Cmd_stopsound(void); static void RunAnimScriptCommand(void); -static void task_pA_ma0A_obj_to_bg_pal(u8 taskId); +static void Task_UpdateMonBg(u8 taskId); static void FlipBattlerBgTiles(void); static void Task_ClearMonBg(u8 taskId); -static void sub_80A4BB0(u8 taskId); +static void Task_ClearMonBgStatic(u8 taskId); static void Task_FadeToBg(u8 taskId); static void Task_PanFromInitialToTarget(u8 taskId); static void Task_LoopAndPlaySE(u8 taskId); @@ -108,1682 +113,58 @@ EWRAM_DATA u8 gBattleAnimTarget = 0; EWRAM_DATA u16 gAnimBattlerSpecies[MAX_BATTLERS_COUNT] = {0}; EWRAM_DATA u8 gAnimCustomPanning = 0; -const struct OamData gOamData_AffineOff_ObjNormal_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - - -const struct OamData gOamData_AffineOff_ObjNormal_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjNormal_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjNormal_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjNormal_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_NORMAL, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineOff_ObjBlend_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineNormal_ObjBlend_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_NORMAL, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_8x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x8), - .x = 0, - .size = SPRITE_SIZE(8x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_16x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x16), - .x = 0, - .size = SPRITE_SIZE(16x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_32x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x32), - .x = 0, - .size = SPRITE_SIZE(32x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_64x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x64), - .x = 0, - .size = SPRITE_SIZE(64x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_16x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x8), - .x = 0, - .size = SPRITE_SIZE(16x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_32x8 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_32x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x16), - .x = 0, - .size = SPRITE_SIZE(32x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_64x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(64x32), - .x = 0, - .size = SPRITE_SIZE(64x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_8x16 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x16), - .x = 0, - .size = SPRITE_SIZE(8x16), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_8x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(8x32), - .x = 0, - .size = SPRITE_SIZE(8x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_16x32 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(16x32), - .x = 0, - .size = SPRITE_SIZE(16x32), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct OamData gOamData_AffineDouble_ObjBlend_32x64 = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_DOUBLE, - .objMode = ST_OAM_OBJ_BLEND, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x64), - .x = 0, - .size = SPRITE_SIZE(32x64), - .tileNum = 0, - .priority = 2, - .paletteNum = 0, -}; - -const struct CompressedSpriteSheet gBattleAnimPicTable[] = -{ - {gBattleAnimSpriteGfx_Bone, 0x0200, ANIM_TAG_BONE}, - {gBattleAnimSpriteGfx_Spark, 0x0300, ANIM_TAG_SPARK}, - {gBattleAnimSpriteGfx_Pencil, 0x0200, ANIM_TAG_PENCIL}, - {gBattleAnimSpriteGfx_AirWave, 0x0100, ANIM_TAG_AIR_WAVE}, - {gBattleAnimSpriteGfx_Orb, 0x0200, ANIM_TAG_ORB}, - {gBattleAnimSpriteGfx_Sword, 0x0400, ANIM_TAG_SWORD}, - {gBattleAnimSpriteGfx_Seed, 0x0180, ANIM_TAG_SEED}, - {gBattleAnimSpriteGfx_Explosion6, 0x0800, ANIM_TAG_EXPLOSION_6}, - {gBattleAnimSpriteGfx_PinkOrb, 0x0020, ANIM_TAG_PINK_ORB}, - {gBattleAnimSpriteGfx_Gust, 0x0400, ANIM_TAG_GUST}, - {gBattleAnimSpriteGfx_IceCube, 0x1200, ANIM_TAG_ICE_CUBE}, - {gBattleAnimSpriteGfx_Spark2, 0x0180, ANIM_TAG_SPARK_2}, - {gBattleAnimSpriteGfx_Orange, 0x0080, ANIM_TAG_ORANGE}, - {gBattleAnimSpriteGfx_YellowBall, 0x0080, ANIM_TAG_YELLOW_BALL}, - {gBattleAnimSpriteGfx_LockOn, 0x0280, ANIM_TAG_LOCK_ON}, - {gBattleAnimSpriteGfx_TiedBag, 0x0080, ANIM_TAG_TIED_BAG}, - {gBattleAnimSpriteGfx_BlackSmoke, 0x0100, ANIM_TAG_BLACK_SMOKE}, - {gBattleAnimSpriteGfx_BlackBall, 0x0020, ANIM_TAG_BLACK_BALL}, - {gBattleAnimSpriteGfx_Conversion, 0x0080, ANIM_TAG_CONVERSION}, - {gBattleAnimSpriteGfx_Glass, 0x0400, ANIM_TAG_GLASS}, - {gBattleAnimSpriteGfx_HornHit, 0x0200, ANIM_TAG_HORN_HIT}, - {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT}, - {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT_2}, - {gBattleAnimSpriteGfx_BlueShards, 0x0380, ANIM_TAG_BLUE_SHARDS}, - {gBattleAnimSpriteGfx_ClosingEye, 0x0300, ANIM_TAG_CLOSING_EYE}, - {gBattleAnimSpriteGfx_WavingHand, 0x0A00, ANIM_TAG_WAVING_HAND}, - {gBattleAnimSpriteGfx_HitDuplicate, 0x0A00, ANIM_TAG_HIT_DUPLICATE}, - {gBattleAnimSpriteGfx_Leer, 0x0A00, ANIM_TAG_LEER}, - {gBattleAnimSpriteGfx_BlueBurst, 0x0A00, ANIM_TAG_BLUE_BURST}, - {gBattleAnimSpriteGfx_SmallEmber, 0x0A00, ANIM_TAG_SMALL_EMBER}, - {gBattleAnimSpriteGfx_GraySmoke, 0x0A00, ANIM_TAG_GRAY_SMOKE}, - {gBattleAnimSpriteGfx_BlueStar, 0x0E00, ANIM_TAG_BLUE_STAR}, - {gBattleAnimSpriteGfx_BubbleBurst, 0x0380, ANIM_TAG_BUBBLE_BURST}, - {gBattleAnimSpriteGfx_Fire, 0x1000, ANIM_TAG_FIRE}, - {gBattleAnimSpriteGfx_SpinningFire, 0x0800, ANIM_TAG_SPINNING_FIRE}, - {gBattleAnimSpriteGfx_FirePlume, 0x0A00, ANIM_TAG_FIRE_PLUME}, - {gBattleAnimSpriteGfx_Lightning2, 0x0800, ANIM_TAG_LIGHTNING_2}, - {gBattleAnimSpriteGfx_Lightning, 0x0A00, ANIM_TAG_LIGHTNING}, - {gBattleAnimSpriteGfx_ClawSlash2, 0x0A00, ANIM_TAG_CLAW_SLASH_2}, - {gBattleAnimSpriteGfx_ClawSlash, 0x0A00, ANIM_TAG_CLAW_SLASH}, - {gBattleAnimSpriteGfx_Scratch3, 0x0A00, ANIM_TAG_SCRATCH_3}, - {gBattleAnimSpriteGfx_Scratch2, 0x0A00, ANIM_TAG_SCRATCH_2}, - {gBattleAnimSpriteGfx_BubbleBurst2, 0x0A00, ANIM_TAG_BUBBLE_BURST_2}, - {gBattleAnimSpriteGfx_IceChunk, 0x0A00, ANIM_TAG_ICE_CHUNK}, - {gBattleAnimSpriteGfx_Glass2, 0x0A00, ANIM_TAG_GLASS_2}, - {gBattleAnimSpriteGfx_PinkHeart2, 0x0A00, ANIM_TAG_PINK_HEART_2}, - {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP}, - {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP_2}, - {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_1}, - {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_2}, - {gBattleAnimSpriteGfx_HumanoidFoot, 0x0200, ANIM_TAG_HUMANOID_FOOT}, - {gBattleAnimSpriteGfx_MonsterFoot, 0x0200, ANIM_TAG_MONSTER_FOOT}, - {gBattleAnimSpriteGfx_HumanoidHand, 0x0200, ANIM_TAG_HUMANOID_HAND}, - {gBattleAnimSpriteGfx_NoiseLine, 0x0800, ANIM_TAG_NOISE_LINE}, - {gBattleAnimSpriteGfx_YellowUnk, 0x0080, ANIM_TAG_YELLOW_UNK}, - {gBattleAnimSpriteGfx_RedFist, 0x0200, ANIM_TAG_RED_FIST}, - {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_SLAM_HIT}, - {gBattleAnimSpriteGfx_Ring, 0x0180, ANIM_TAG_RING}, - {gBattleAnimSpriteGfx_Rocks, 0x0C00, ANIM_TAG_ROCKS}, - {gBattleAnimSpriteGfx_Z, 0x0100, ANIM_TAG_Z}, - {gBattleAnimSpriteGfx_YellowUnk2, 0x0040, ANIM_TAG_YELLOW_UNK_2}, - {gBattleAnimSpriteGfx_AirSlash, 0x0180, ANIM_TAG_AIR_SLASH}, - {gBattleAnimSpriteGfx_SpinningGreenOrbs, 0x0800, ANIM_TAG_SPINNING_GREEN_ORBS}, - {gBattleAnimSpriteGfx_Leaf, 0x0480, ANIM_TAG_LEAF}, - {gBattleAnimSpriteGfx_Finger, 0x0200, ANIM_TAG_FINGER}, - {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POISON_POWDER}, - {gBattleAnimSpriteGfx_BrownTriangle, 0x0100, ANIM_TAG_BROWN_TRIANGLE}, - {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_SLEEP_POWDER}, - {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_STUN_SPORE}, - {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POWDER}, - {gBattleAnimSpriteGfx_Sparkle3, 0x0200, ANIM_TAG_SPARKLE_3}, - {gBattleAnimSpriteGfx_Sparkle4, 0x0A00, ANIM_TAG_SPARKLE_4}, - {gBattleAnimSpriteGfx_MusicNotes, 0x0300, ANIM_TAG_MUSIC_NOTES}, - {gBattleAnimSpriteGfx_Duck, 0x0180, ANIM_TAG_DUCK}, - {gBattleAnimSpriteGfx_MudSand, 0x00A0, ANIM_TAG_MUD_SAND}, - {gBattleAnimSpriteGfx_Alert, 0x0700, ANIM_TAG_ALERT}, - {gBattleAnimSpriteGfx_BlueFlames, 0x0400, ANIM_TAG_BLUE_FLAMES}, - {gBattleAnimSpriteGfx_BlueFlames2, 0x0200, ANIM_TAG_BLUE_FLAMES_2}, - {gBattleAnimSpriteGfx_Shock4, 0x0300, ANIM_TAG_SHOCK_4}, - {gBattleAnimSpriteGfx_Shock, 0x0C00, ANIM_TAG_SHOCK}, - {gBattleAnimSpriteGfx_Bell2, 0x0A00, ANIM_TAG_BELL_2}, - {gBattleAnimSpriteGfx_PinkGlove, 0x0080, ANIM_TAG_PINK_GLOVE}, - {gBattleAnimSpriteGfx_BlueLines, 0x0040, ANIM_TAG_BLUE_LINES}, - {gBattleAnimSpriteGfx_Impact3, 0x0E00, ANIM_TAG_IMPACT_3}, - {gBattleAnimSpriteGfx_Impact2, 0x0E00, ANIM_TAG_IMPACT_2}, - {gBattleAnimSpriteGfx_Reticle, 0x0280, ANIM_TAG_RETICLE}, - {gBattleAnimSpriteGfx_Breath, 0x0200, ANIM_TAG_BREATH}, - {gBattleAnimSpriteGfx_Anger, 0x0080, ANIM_TAG_ANGER}, - {gBattleAnimSpriteGfx_Snowball, 0x00C0, ANIM_TAG_SNOWBALL}, - {gBattleAnimSpriteGfx_Vine, 0x0A00, ANIM_TAG_VINE}, - {gBattleAnimSpriteGfx_Sword2, 0x0200, ANIM_TAG_SWORD_2}, - {gBattleAnimSpriteGfx_Clapping, 0x0180, ANIM_TAG_CLAPPING}, - {gBattleAnimSpriteGfx_RedTube, 0x0080, ANIM_TAG_RED_TUBE}, - {gBattleAnimSpriteGfx_Amnesia, 0x1000, ANIM_TAG_AMNESIA}, - {gBattleAnimSpriteGfx_String2, 0x0A00, ANIM_TAG_STRING_2}, - {gBattleAnimSpriteGfx_Pencil2, 0x0180, ANIM_TAG_PENCIL_2}, - {gBattleAnimSpriteGfx_Petal, 0x0380, ANIM_TAG_PETAL}, - {gBattleAnimSpriteGfx_BentSpoon, 0x0C00, ANIM_TAG_BENT_SPOON}, - {gBattleAnimSpriteGfx_Web, 0x0200, ANIM_TAG_WEB}, - {gBattleAnimSpriteGfx_MilkBottle, 0x0200, ANIM_TAG_MILK_BOTTLE}, - {gBattleAnimSpriteGfx_Coin, 0x0200, ANIM_TAG_COIN}, - {gBattleAnimSpriteGfx_CrackedEgg, 0x0200, ANIM_TAG_CRACKED_EGG}, - {gBattleAnimSpriteGfx_HatchedEgg, 0x0400, ANIM_TAG_HATCHED_EGG}, - {gBattleAnimSpriteGfx_FreshEgg, 0x0080, ANIM_TAG_FRESH_EGG}, - {gBattleAnimSpriteGfx_Fangs, 0x0400, ANIM_TAG_FANGS}, - {gBattleAnimSpriteGfx_Explosion2, 0x0c00, ANIM_TAG_EXPLOSION_2}, - {gBattleAnimSpriteGfx_Explosion3, 0x0200, ANIM_TAG_EXPLOSION_3}, - {gBattleAnimSpriteGfx_WaterDroplet, 0x1000, ANIM_TAG_WATER_DROPLET}, - {gBattleAnimSpriteGfx_WaterDroplet2, 0x0a00, ANIM_TAG_WATER_DROPLET_2}, - {gBattleAnimSpriteGfx_Seed2, 0x0020, ANIM_TAG_SEED_2}, - {gBattleAnimSpriteGfx_Sprout, 0x0e00, ANIM_TAG_SPROUT}, - {gBattleAnimSpriteGfx_RedWand, 0x0080, ANIM_TAG_RED_WAND}, - {gBattleAnimSpriteGfx_PurpleGreenUnk, 0x0a00, ANIM_TAG_PURPLE_GREEN_UNK}, - {gBattleAnimSpriteGfx_WaterColumn, 0x0400, ANIM_TAG_WATER_COLUMN}, - {gBattleAnimSpriteGfx_MudUnk, 0x0200, ANIM_TAG_MUD_UNK}, - {gBattleAnimSpriteGfx_RainDrops, 0x0700, ANIM_TAG_RAIN_DROPS}, - {gBattleAnimSpriteGfx_FurySwipes, 0x0800, ANIM_TAG_FURY_SWIPES}, - {gBattleAnimSpriteGfx_Vine2, 0x0a00, ANIM_TAG_VINE_2}, - {gBattleAnimSpriteGfx_Teeth, 0x0600, ANIM_TAG_TEETH}, - {gBattleAnimSpriteGfx_Bone2, 0x0800, ANIM_TAG_BONE_2}, - {gBattleAnimSpriteGfx_WhiteBag, 0x0200, ANIM_TAG_WHITE_BAG}, - {gBattleAnimSpriteGfx_Unknown, 0x0040, ANIM_TAG_UNKNOWN}, - {gBattleAnimSpriteGfx_PurpleCoral, 0x0180, ANIM_TAG_PURPLE_CORAL}, - {gBattleAnimSpriteGfx_PurpleDroplet, 0x0600, ANIM_TAG_PURPLE_DROPLET}, - {gBattleAnimSpriteGfx_Shock2, 0x0600, ANIM_TAG_SHOCK_2}, - {gBattleAnimSpriteGfx_ClosingEye2, 0x0200, ANIM_TAG_CLOSING_EYE_2}, - {gBattleAnimSpriteGfx_MetalBall, 0x0080, ANIM_TAG_METAL_BALL}, - {gBattleAnimSpriteGfx_MonsterDoll, 0x0200, ANIM_TAG_MONSTER_DOLL}, - {gBattleAnimSpriteGfx_Whirlwind, 0x0800, ANIM_TAG_WHIRLWIND}, - {gBattleAnimSpriteGfx_Whirlwind2, 0x0080, ANIM_TAG_WHIRLWIND_2}, - {gBattleAnimSpriteGfx_Explosion4, 0x0a00, ANIM_TAG_EXPLOSION_4}, - {gBattleAnimSpriteGfx_Explosion5, 0x0280, ANIM_TAG_EXPLOSION_5}, - {gBattleAnimSpriteGfx_Tongue, 0x0280, ANIM_TAG_TONGUE}, - {gBattleAnimSpriteGfx_Smoke, 0x0100, ANIM_TAG_SMOKE}, - {gBattleAnimSpriteGfx_Smoke2, 0x0200, ANIM_TAG_SMOKE_2}, - {gBattleAnimSpriteGfx_Impact, 0x0200, ANIM_TAG_IMPACT}, - {gBattleAnimSpriteGfx_CircleImpact, 0x0020, ANIM_TAG_CIRCLE_IMPACT}, - {gBattleAnimSpriteGfx_Scratch, 0x0a00, ANIM_TAG_SCRATCH}, - {gBattleAnimSpriteGfx_Cut, 0x0800, ANIM_TAG_CUT}, - {gBattleAnimSpriteGfx_SharpTeeth, 0x0800, ANIM_TAG_SHARP_TEETH}, - {gBattleAnimSpriteGfx_RainbowRings, 0x00c0, ANIM_TAG_RAINBOW_RINGS}, - {gBattleAnimSpriteGfx_IceCrystals, 0x01c0, ANIM_TAG_ICE_CRYSTALS}, - {gBattleAnimSpriteGfx_IceSpikes, 0x0100, ANIM_TAG_ICE_SPIKES}, - {gBattleAnimSpriteGfx_HandsAndFeet, 0x0800, ANIM_TAG_HANDS_AND_FEET}, - {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_MIST_CLOUD}, - {gBattleAnimSpriteGfx_Clamp, 0x0800, ANIM_TAG_CLAMP}, - {gBattleAnimSpriteGfx_Bubble, 0x0180, ANIM_TAG_BUBBLE}, - {gBattleAnimSpriteGfx_Orbs, 0x0180, ANIM_TAG_ORBS}, - {gBattleAnimSpriteGfx_WaterImpact, 0x0200, ANIM_TAG_WATER_IMPACT}, - {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_WATER_ORB}, - {gBattleAnimSpriteGfx_PoisonBubble, 0x0180, ANIM_TAG_POISON_BUBBLE}, - {gBattleAnimSpriteGfx_ToxicBubble, 0x0400, ANIM_TAG_TOXIC_BUBBLE}, - {gBattleAnimSpriteGfx_Spikes, 0x0080, ANIM_TAG_SPIKES}, - {gBattleAnimSpriteGfx_HornHit2, 0x0100, ANIM_TAG_HORN_HIT_2}, - {gBattleAnimSpriteGfx_AirWave2, 0x0100, ANIM_TAG_AIR_WAVE_2}, - {gBattleAnimSpriteGfx_SmallBubbles, 0x0140, ANIM_TAG_SMALL_BUBBLES}, - {gBattleAnimSpriteGfx_RoundShadow, 0x0800, ANIM_TAG_ROUND_SHADOW}, - {gBattleAnimSpriteGfx_Sunlight, 0x0200, ANIM_TAG_SUNLIGHT}, - {gBattleAnimSpriteGfx_Spore, 0x0100, ANIM_TAG_SPORE}, - {gBattleAnimSpriteGfx_Flower, 0x00a0, ANIM_TAG_FLOWER}, - {gBattleAnimSpriteGfx_RazorLeaf, 0x0100, ANIM_TAG_RAZOR_LEAF}, - {gBattleAnimSpriteGfx_Needle, 0x0080, ANIM_TAG_NEEDLE}, - {gBattleAnimSpriteGfx_WhirlwindLines, 0x0300, ANIM_TAG_WHIRLWIND_LINES}, - {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_GOLD_RING}, - {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_PURPLE_RING}, - {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING}, - {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GREEN_LIGHT_WALL}, - {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_BLUE_LIGHT_WALL}, - {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_RED_LIGHT_WALL}, - {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GRAY_LIGHT_WALL}, - {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_ORANGE_LIGHT_WALL}, - {gBattleAnimSpriteGfx_BlackBall2, 0x0080, ANIM_TAG_BLACK_BALL_2}, - {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_PURPLE_GAS_CLOUD}, - {gBattleAnimSpriteGfx_SparkH, 0x0200, ANIM_TAG_SPARK_H}, - {gBattleAnimSpriteGfx_YellowStar, 0x0200, ANIM_TAG_YELLOW_STAR}, - {gBattleAnimSpriteGfx_LargeFreshEgg, 0x0080, ANIM_TAG_LARGE_FRESH_EGG}, - {gBattleAnimSpriteGfx_ShadowBall, 0x0200, ANIM_TAG_SHADOW_BALL}, - {gBattleAnimSpriteGfx_Lick, 0x0500, ANIM_TAG_LICK}, - {gBattleAnimSpriteGfx_VoidLines, 0x0800, ANIM_TAG_VOID_LINES}, - {gBattleAnimSpriteGfx_String, 0x0400, ANIM_TAG_STRING}, - {gBattleAnimSpriteGfx_WebThread, 0x0020, ANIM_TAG_WEB_THREAD}, - {gBattleAnimSpriteGfx_SpiderWeb, 0x0800, ANIM_TAG_SPIDER_WEB}, - {gBattleAnimSpriteGfx_Lightbulb, 0x0100, ANIM_TAG_LIGHTBULB}, - {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH}, - {gBattleAnimSpriteGfx_FocusEnergy, 0x0400, ANIM_TAG_FOCUS_ENERGY}, - {gBattleAnimSpriteGfx_SphereToCube, 0x0a00, ANIM_TAG_SPHERE_TO_CUBE}, - {gBattleAnimSpriteGfx_Tendrils, 0x1000, ANIM_TAG_TENDRILS}, - {gBattleAnimSpriteGfx_Eye, 0x0800, ANIM_TAG_EYE}, - {gBattleAnimSpriteGfx_WhiteShadow, 0x0400, ANIM_TAG_WHITE_SHADOW}, - {gBattleAnimSpriteGfx_TealAlert, 0x0200, ANIM_TAG_TEAL_ALERT}, - {gBattleAnimSpriteGfx_OpeningEye, 0x0800, ANIM_TAG_OPENING_EYE}, - {gBattleAnimSpriteGfx_RoundWhiteHalo, 0x0800, ANIM_TAG_ROUND_WHITE_HALO}, - {gBattleAnimSpriteGfx_FangAttack, 0x0800, ANIM_TAG_FANG_ATTACK}, - {gBattleAnimSpriteGfx_PurpleHandOutline, 0x0200, ANIM_TAG_PURPLE_HAND_OUTLINE}, - {gBattleAnimSpriteGfx_Moon, 0x0800, ANIM_TAG_MOON}, - {gBattleAnimSpriteGfx_GreenSparkle, 0x0200, ANIM_TAG_GREEN_SPARKLE}, - {gBattleAnimSpriteGfx_Spiral, 0x0800, ANIM_TAG_SPIRAL}, - {gBattleAnimSpriteGfx_SnoreZ, 0x0200, ANIM_TAG_SNORE_Z}, - {gBattleAnimSpriteGfx_Explosion, 0x0800, ANIM_TAG_EXPLOSION}, - {gBattleAnimSpriteGfx_Nail, 0x0400, ANIM_TAG_NAIL}, - {gBattleAnimSpriteGfx_GhostlySpirit, 0x0200, ANIM_TAG_GHOSTLY_SPIRIT}, - {gBattleAnimSpriteGfx_WarmRock, 0x0a80, ANIM_TAG_WARM_ROCK}, - {gBattleAnimSpriteGfx_BreakingEgg, 0x0600, ANIM_TAG_BREAKING_EGG}, - {gBattleAnimSpriteGfx_ThinRing, 0x0800, ANIM_TAG_THIN_RING}, - {gBattleAnimSpriteGfx_PunchImpact, 0x0200, ANIM_TAG_PUNCH_IMPACT}, - {gBattleAnimSpriteGfx_Bell, 0x0600, ANIM_TAG_BELL}, - {gBattleAnimSpriteGfx_MusicNotes2, 0x0800, ANIM_TAG_MUSIC_NOTES_2}, - {gBattleAnimSpriteGfx_SpeedDust, 0x0180, ANIM_TAG_SPEED_DUST}, - {gBattleAnimSpriteGfx_TornMetal, 0x0800, ANIM_TAG_TORN_METAL}, - {gBattleAnimSpriteGfx_ThoughtBubble, 0x0800, ANIM_TAG_THOUGHT_BUBBLE}, - {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_MAGENTA_HEART}, - {gBattleAnimSpriteGfx_ElectricOrbs, 0x0080, ANIM_TAG_ELECTRIC_ORBS}, - {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_CIRCLE_OF_LIGHT}, - {gBattleAnimSpriteGfx_Electricity, 0x0800, ANIM_TAG_ELECTRICITY}, - {gBattleAnimSpriteGfx_Finger2, 0x0600, ANIM_TAG_FINGER_2}, - {gBattleAnimSpriteGfx_MovementWaves, 0x0600, ANIM_TAG_MOVEMENT_WAVES}, - {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_RED_HEART}, - {gBattleAnimSpriteGfx_RedOrb, 0x0080, ANIM_TAG_RED_ORB}, - {gBattleAnimSpriteGfx_EyeSparkle, 0x0180, ANIM_TAG_EYE_SPARKLE}, - {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_PINK_HEART}, - {gBattleAnimSpriteGfx_Angel, 0x0200, ANIM_TAG_ANGEL}, - {gBattleAnimSpriteGfx_Devil, 0x0400, ANIM_TAG_DEVIL}, - {gBattleAnimSpriteGfx_Swipe, 0x0a00, ANIM_TAG_SWIPE}, - {gBattleAnimSpriteGfx_Roots, 0x0800, ANIM_TAG_ROOTS}, - {gBattleAnimSpriteGfx_ItemBag, 0x0200, ANIM_TAG_ITEM_BAG}, - {gBattleAnimSpriteGfx_JaggedMusicNote, 0x0400, ANIM_TAG_JAGGED_MUSIC_NOTE}, - {gBattleAnimSpriteGfx_Pokeball, 0x0080, ANIM_TAG_POKEBALL}, - {gBattleAnimSpriteGfx_Spotlight, 0x0800, ANIM_TAG_SPOTLIGHT}, - {gBattleAnimSpriteGfx_LetterZ, 0x0200, ANIM_TAG_LETTER_Z}, - {gBattleAnimSpriteGfx_RapidSpin, 0x0300, ANIM_TAG_RAPID_SPIN}, - {gBattleAnimSpriteGfx_TriAttackTriangle, 0x0800, ANIM_TAG_TRI_ATTACK_TRIANGLE}, - {gBattleAnimSpriteGfx_WispOrb, 0x0380, ANIM_TAG_WISP_ORB}, - {gBattleAnimSpriteGfx_WispFire, 0x0800, ANIM_TAG_WISP_FIRE}, - {gBattleAnimSpriteGfx_GoldStars, 0x00c0, ANIM_TAG_GOLD_STARS}, - {gBattleAnimSpriteGfx_EclipsingOrb, 0x0800, ANIM_TAG_ECLIPSING_ORB}, - {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_GRAY_ORB}, - {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_BLUE_ORB}, - {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_RED_ORB_2}, - {gBattleAnimSpriteGfx_PinkPetal, 0x0080, ANIM_TAG_PINK_PETAL}, - {gBattleAnimSpriteGfx_PainSplit, 0x0180, ANIM_TAG_PAIN_SPLIT}, - {gBattleAnimSpriteGfx_Confetti, 0x0180, ANIM_TAG_CONFETTI}, - {gBattleAnimSpriteGfx_GreenStar, 0x0200, ANIM_TAG_GREEN_STAR}, - {gBattleAnimSpriteGfx_PinkCloud, 0x0200, ANIM_TAG_PINK_CLOUD}, - {gBattleAnimSpriteGfx_SweatDrop, 0x0020, ANIM_TAG_SWEAT_DROP}, - {gBattleAnimSpriteGfx_GuardRing, 0x0400, ANIM_TAG_GUARD_RING}, - {gBattleAnimSpriteGfx_PurpleScratch, 0x0600, ANIM_TAG_PURPLE_SCRATCH}, - {gBattleAnimSpriteGfx_PurpleSwipe, 0x1000, ANIM_TAG_PURPLE_SWIPE}, - {gBattleAnimSpriteGfx_TagHand, 0x0400, ANIM_TAG_TAG_HAND}, - {gBattleAnimSpriteGfx_SmallRedEye, 0x0020, ANIM_TAG_SMALL_RED_EYE}, - {gBattleAnimSpriteGfx_HollowOrb, 0x0080, ANIM_TAG_HOLLOW_ORB}, - {gBattleAnimSpriteGfx_XSign, 0x0800, ANIM_TAG_X_SIGN}, - {gBattleAnimSpriteGfx_BluegreenOrb, 0x0080, ANIM_TAG_BLUEGREEN_ORB}, - {gBattleAnimSpriteGfx_PawPrint, 0x0200, ANIM_TAG_PAW_PRINT}, - {gBattleAnimSpriteGfx_PurpleFlame, 0x0400, ANIM_TAG_PURPLE_FLAME}, - {gBattleAnimSpriteGfx_RedBall, 0x0200, ANIM_TAG_RED_BALL}, - {gBattleAnimSpriteGfx_SmellingsaltEffect, 0x0200, ANIM_TAG_SMELLINGSALT_EFFECT}, - {gBattleAnimSpriteGfx_Meteor, 0x0800, ANIM_TAG_METEOR}, - {gBattleAnimSpriteGfx_FlatRock, 0x0280, ANIM_TAG_FLAT_ROCK}, - {gBattleAnimSpriteGfx_MagnifyingGlass, 0x0200, ANIM_TAG_MAGNIFYING_GLASS}, - {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_BROWN_ORB}, - {gBattleAnimSpriteGfx_MetalSoundWaves, 0x0400, ANIM_TAG_METAL_SOUND_WAVES}, - {gBattleAnimSpriteGfx_FlyingDirt, 0x0200, ANIM_TAG_FLYING_DIRT}, - {gBattleAnimSpriteGfx_IcicleSpear, 0x0200, ANIM_TAG_ICICLE_SPEAR}, - {gBattleAnimSpriteGfx_Hail, 0x0080, ANIM_TAG_HAIL}, - {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_RED_ORB}, - {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_GREEN_ORB}, - {gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE}, - {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, - {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB}, - {gBattleAnimSpriteGfx_Pokeblock, 0x0080, ANIM_TAG_POKEBLOCK}, - {gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER}, - {gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6}, - {gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH}, - {gBattleAnimSpriteGfx_SweatBead, 0x0020, ANIM_TAG_SWEAT_BEAD}, - {gBattleAnimSpriteGfx_Gem1, 0x0800, ANIM_TAG_GEM_1}, - {gBattleAnimSpriteGfx_Gem2, 0x0800, ANIM_TAG_GEM_2}, - {gBattleAnimSpriteGfx_Gem3, 0x0800, ANIM_TAG_GEM_3}, - {gBattleAnimSpriteGfx_SlamHit2, 0x1000, ANIM_TAG_SLAM_HIT_2}, - {gBattleAnimSpriteGfx_Recycle, 0x0800, ANIM_TAG_RECYCLE}, - {gBattleAnimSpriteGfx_RedParticles, 0x00a0, ANIM_TAG_RED_PARTICLES}, - {gBattleAnimSpriteGfx_Protect, 0x0800, ANIM_TAG_PROTECT}, - {gBattleAnimSpriteGfx_DirtMound, 0x0200, ANIM_TAG_DIRT_MOUND}, - {gBattleAnimSpriteGfx_Shock3, 0x0600, ANIM_TAG_SHOCK_3}, - {gBattleAnimSpriteGfx_WeatherBall, 0x0200, ANIM_TAG_WEATHER_BALL}, - {gBattleAnimSpriteGfx_Bird, 0x0800, ANIM_TAG_BIRD}, - {gBattleAnimSpriteGfx_CrossImpact, 0x0200, ANIM_TAG_CROSS_IMPACT}, - {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH_2}, - {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_WHIP_HIT}, - {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING_2}, -}; - -const struct CompressedSpritePalette gBattleAnimPaletteTable[] = -{ - {gBattleAnimSpritePal_Bone, ANIM_TAG_BONE}, - {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK}, - {gBattleAnimSpritePal_Pencil, ANIM_TAG_PENCIL}, - {gBattleAnimSpritePal_AirWave, ANIM_TAG_AIR_WAVE}, - {gBattleAnimSpritePal_Orb, ANIM_TAG_ORB}, - {gBattleAnimSpritePal_Sword, ANIM_TAG_SWORD}, - {gBattleAnimSpritePal_Seed, ANIM_TAG_SEED}, - {gBattleAnimSpritePal_Explosion6, ANIM_TAG_EXPLOSION_6}, - {gBattleAnimSpritePal_PinkOrb, ANIM_TAG_PINK_ORB}, - {gBattleAnimSpritePal_Gust, ANIM_TAG_GUST}, - {gBattleAnimSpritePal_IceCube, ANIM_TAG_ICE_CUBE}, - {gBattleAnimSpritePal_Spark2, ANIM_TAG_SPARK_2}, - {gBattleAnimSpritePal_Orange, ANIM_TAG_ORANGE}, - {gBattleAnimSpritePal_YellowBall, ANIM_TAG_YELLOW_BALL}, - {gBattleAnimSpritePal_LockOn, ANIM_TAG_LOCK_ON}, - {gBattleAnimSpritePal_TiedBag, ANIM_TAG_TIED_BAG}, - {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_SMOKE}, - {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_BALL}, - {gBattleAnimSpritePal_Conversion, ANIM_TAG_CONVERSION}, - {gBattleAnimSpritePal_Glass, ANIM_TAG_GLASS}, - {gBattleAnimSpritePal_HornHit, ANIM_TAG_HORN_HIT}, - {gBattleAnimSpritePal_Hit, ANIM_TAG_HIT}, - {gBattleAnimSpritePal_Hit2, ANIM_TAG_HIT_2}, - {gBattleAnimSpritePal_BlueShards, ANIM_TAG_BLUE_SHARDS}, - {gBattleAnimSpritePal_ClosingEye, ANIM_TAG_CLOSING_EYE}, - {gBattleAnimSpritePal_WavingHand, ANIM_TAG_WAVING_HAND}, - {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_HIT_DUPLICATE}, - {gBattleAnimSpritePal_Leer, ANIM_TAG_LEER}, - {gBattleAnimSpritePal_BlueBurst, ANIM_TAG_BLUE_BURST}, - {gBattleAnimSpritePal_SmallEmber, ANIM_TAG_SMALL_EMBER}, - {gBattleAnimSpritePal_GraySmoke, ANIM_TAG_GRAY_SMOKE}, - {gBattleAnimSpritePal_BlueStar, ANIM_TAG_BLUE_STAR}, - {gBattleAnimSpritePal_BubbleBurst, ANIM_TAG_BUBBLE_BURST}, - {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE}, - {gBattleAnimSpritePal_Fire, ANIM_TAG_SPINNING_FIRE}, - {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE_PLUME}, - {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING_2}, - {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING}, - {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_CLAW_SLASH_2}, - {gBattleAnimSpritePal_ClawSlash, ANIM_TAG_CLAW_SLASH}, - {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_3}, - {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_2}, - {gBattleAnimSpritePal_BubbleBurst2, ANIM_TAG_BUBBLE_BURST_2}, - {gBattleAnimSpritePal_IceChunk, ANIM_TAG_ICE_CHUNK}, - {gBattleAnimSpritePal_Glass2, ANIM_TAG_GLASS_2}, - {gBattleAnimSpritePal_PinkHeart2, ANIM_TAG_PINK_HEART_2}, - {gBattleAnimSpritePal_SapDrip, ANIM_TAG_SAP_DRIP}, - {gBattleAnimSpritePal_SapDrip2, ANIM_TAG_SAP_DRIP}, - {gBattleAnimSpritePal_Sparkle1, ANIM_TAG_SPARKLE_1}, - {gBattleAnimSpritePal_Sparkle2, ANIM_TAG_SPARKLE_2}, - {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_FOOT}, - {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_MONSTER_FOOT}, - {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_HAND}, - {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_NOISE_LINE}, - {gBattleAnimSpritePal_YellowUnk, ANIM_TAG_YELLOW_UNK}, - {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_RED_FIST}, - {gBattleAnimSpritePal_SlamHit, ANIM_TAG_SLAM_HIT}, - {gBattleAnimSpritePal_Ring, ANIM_TAG_RING}, - {gBattleAnimSpritePal_Rocks, ANIM_TAG_ROCKS}, - {gBattleAnimSpritePal_Z, ANIM_TAG_Z}, - {gBattleAnimSpritePal_YellowUnk2, ANIM_TAG_YELLOW_UNK_2}, - {gBattleAnimSpritePal_AirSlash, ANIM_TAG_AIR_SLASH}, - {gBattleAnimSpritePal_SpinningGreenOrbs, ANIM_TAG_SPINNING_GREEN_ORBS}, - {gBattleAnimSpritePal_Leaf, ANIM_TAG_LEAF}, - {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER}, - {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POISON_POWDER}, - {gBattleAnimSpritePal_BrownTriangle, ANIM_TAG_BROWN_TRIANGLE}, - {gBattleAnimSpritePal_SleepPowder, ANIM_TAG_SLEEP_POWDER}, - {gBattleAnimSpritePal_StunSpore, ANIM_TAG_STUN_SPORE}, - {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POWDER}, - {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_3}, - {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_4}, - {gBattleAnimSpritePal_MusicNotes, ANIM_TAG_MUSIC_NOTES}, - {gBattleAnimSpritePal_Duck, ANIM_TAG_DUCK}, - {gBattleAnimSpritePal_MudSand, ANIM_TAG_MUD_SAND}, - {gBattleAnimSpritePal_Alert, ANIM_TAG_ALERT}, - {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES}, - {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES_2}, - {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK_4}, - {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK}, - {gBattleAnimSpritePal_Bell2, ANIM_TAG_BELL_2}, - {gBattleAnimSpritePal_PinkGlove, ANIM_TAG_PINK_GLOVE}, - {gBattleAnimSpritePal_BlueLines, ANIM_TAG_BLUE_LINES}, - {gBattleAnimSpritePal_Impact3, ANIM_TAG_IMPACT_3}, - {gBattleAnimSpritePal_Impact2, ANIM_TAG_IMPACT_2}, - {gBattleAnimSpritePal_Reticle, ANIM_TAG_RETICLE}, - {gBattleAnimSpritePal_Breath, ANIM_TAG_BREATH}, - {gBattleAnimSpritePal_Anger, ANIM_TAG_ANGER}, - {gBattleAnimSpritePal_Snowball, ANIM_TAG_SNOWBALL}, - {gBattleAnimSpritePal_Vine, ANIM_TAG_VINE}, - {gBattleAnimSpritePal_Sword2, ANIM_TAG_SWORD_2}, - {gBattleAnimSpritePal_Clapping, ANIM_TAG_CLAPPING}, - {gBattleAnimSpritePal_RedTube, ANIM_TAG_RED_TUBE}, - {gBattleAnimSpritePal_Amnesia, ANIM_TAG_AMNESIA}, - {gBattleAnimSpritePal_String2, ANIM_TAG_STRING_2}, - {gBattleAnimSpritePal_Pencil2, ANIM_TAG_PENCIL_2}, - {gBattleAnimSpritePal_Petal, ANIM_TAG_PETAL}, - {gBattleAnimSpritePal_BentSpoon, ANIM_TAG_BENT_SPOON}, - {gBattleAnimSpritePal_String2, ANIM_TAG_WEB}, - {gBattleAnimSpritePal_MilkBottle, ANIM_TAG_MILK_BOTTLE}, - {gBattleAnimSpritePal_Coin, ANIM_TAG_COIN}, - {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_CRACKED_EGG}, - {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_HATCHED_EGG}, - {gBattleAnimSpritePal_FreshEgg, ANIM_TAG_FRESH_EGG}, - {gBattleAnimSpritePal_Fangs, ANIM_TAG_FANGS}, - {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_2}, - {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_3}, - {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET}, - {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET_2}, - {gBattleAnimSpritePal_Seed2, ANIM_TAG_SEED_2}, - {gBattleAnimSpritePal_Seed2, ANIM_TAG_SPROUT}, - {gBattleAnimSpritePal_RedWand, ANIM_TAG_RED_WAND}, - {gBattleAnimSpritePal_PurpleGreenUnk, ANIM_TAG_PURPLE_GREEN_UNK}, - {gBattleAnimSpritePal_WaterColumn, ANIM_TAG_WATER_COLUMN}, - {gBattleAnimSpritePal_MudUnk, ANIM_TAG_MUD_UNK}, - {gBattleAnimSpritePal_RainDrops, ANIM_TAG_RAIN_DROPS}, - {gBattleAnimSpritePal_FurySwipes, ANIM_TAG_FURY_SWIPES}, - {gBattleAnimSpritePal_Vine2, ANIM_TAG_VINE_2}, - {gBattleAnimSpritePal_Teeth, ANIM_TAG_TEETH}, - {gBattleAnimSpritePal_Bone2, ANIM_TAG_BONE_2}, - {gBattleAnimSpritePal_WhiteBag, ANIM_TAG_WHITE_BAG}, - {gBattleAnimSpritePal_Unknown, ANIM_TAG_UNKNOWN}, - {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_CORAL}, - {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_DROPLET}, - {gBattleAnimSpritePal_Shock2, ANIM_TAG_SHOCK_2}, - {gBattleAnimSpritePal_ClosingEye2, ANIM_TAG_CLOSING_EYE_2}, - {gBattleAnimSpritePal_MetalBall, ANIM_TAG_METAL_BALL}, - {gBattleAnimSpritePal_MonsterDoll, ANIM_TAG_MONSTER_DOLL}, - {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND}, - {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND_2}, - {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_4}, - {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_5}, - {gBattleAnimSpritePal_Tongue, ANIM_TAG_TONGUE}, - {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE}, - {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE_2}, - {gBattleAnimSpritePal_Impact, ANIM_TAG_IMPACT}, - {gBattleAnimSpritePal_CircleImpact, ANIM_TAG_CIRCLE_IMPACT}, - {gBattleAnimSpritePal_Impact, ANIM_TAG_SCRATCH}, - {gBattleAnimSpritePal_Impact, ANIM_TAG_CUT}, - {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_SHARP_TEETH}, - {gBattleAnimSpritePal_RainbowRings, ANIM_TAG_RAINBOW_RINGS}, - {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_CRYSTALS}, - {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_SPIKES}, - {gBattleAnimSpritePal_HandsAndFeet, ANIM_TAG_HANDS_AND_FEET}, - {gBattleAnimSpritePal_MistCloud, ANIM_TAG_MIST_CLOUD}, - {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_CLAMP}, - {gBattleAnimSpritePal_RainDrops, ANIM_TAG_BUBBLE}, - {gBattleAnimSpritePal_Orbs, ANIM_TAG_ORBS}, - {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_IMPACT}, - {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_ORB}, - {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_POISON_BUBBLE}, - {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_TOXIC_BUBBLE}, - {gBattleAnimSpritePal_Spikes, ANIM_TAG_SPIKES}, - {gBattleAnimSpritePal_HornHit2, ANIM_TAG_HORN_HIT_2}, - {gBattleAnimSpritePal_AirWave2, ANIM_TAG_AIR_WAVE_2}, - {gBattleAnimSpritePal_SmallBubbles, ANIM_TAG_SMALL_BUBBLES}, - {gBattleAnimSpritePal_RoundShadow, ANIM_TAG_ROUND_SHADOW}, - {gBattleAnimSpritePal_Sunlight, ANIM_TAG_SUNLIGHT}, - {gBattleAnimSpritePal_Spore, ANIM_TAG_SPORE}, - {gBattleAnimSpritePal_Flower, ANIM_TAG_FLOWER}, - {gBattleAnimSpritePal_RazorLeaf, ANIM_TAG_RAZOR_LEAF}, - {gBattleAnimSpritePal_Needle, ANIM_TAG_NEEDLE}, - {gBattleAnimSpritePal_WhirlwindLines, ANIM_TAG_WHIRLWIND_LINES}, - {gBattleAnimSpritePal_GoldRing, ANIM_TAG_GOLD_RING}, - {gBattleAnimSpritePal_PurpleRing, ANIM_TAG_PURPLE_RING}, - {gBattleAnimSpritePal_BlueRing, ANIM_TAG_BLUE_RING}, - {gBattleAnimSpritePal_GreenLightWall, ANIM_TAG_GREEN_LIGHT_WALL}, - {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_BLUE_LIGHT_WALL}, - {gBattleAnimSpritePal_RedLightWall, ANIM_TAG_RED_LIGHT_WALL}, - {gBattleAnimSpritePal_GrayLightWall, ANIM_TAG_GRAY_LIGHT_WALL}, - {gBattleAnimSpritePal_OrangeLightWall, ANIM_TAG_ORANGE_LIGHT_WALL}, - {gBattleAnimSpritePal_BlackBall2, ANIM_TAG_BLACK_BALL_2}, - {gBattleAnimSpritePal_PurpleGasCloud, ANIM_TAG_PURPLE_GAS_CLOUD}, - {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK_H}, - {gBattleAnimSpritePal_YellowStar, ANIM_TAG_YELLOW_STAR}, - {gBattleAnimSpritePal_LargeFreshEgg, ANIM_TAG_LARGE_FRESH_EGG}, - {gBattleAnimSpritePal_ShadowBall, ANIM_TAG_SHADOW_BALL}, - {gBattleAnimSpritePal_Lick, ANIM_TAG_LICK}, - {gBattleAnimSpritePal_VoidLines, ANIM_TAG_VOID_LINES}, - {gBattleAnimSpritePal_String, ANIM_TAG_STRING}, - {gBattleAnimSpritePal_String, ANIM_TAG_WEB_THREAD}, - {gBattleAnimSpritePal_String, ANIM_TAG_SPIDER_WEB}, - {gBattleAnimSpritePal_Lightbulb, ANIM_TAG_LIGHTBULB}, - {gBattleAnimSpritePal_Slash, ANIM_TAG_SLASH}, - {gBattleAnimSpritePal_FocusEnergy, ANIM_TAG_FOCUS_ENERGY}, - {gBattleAnimSpritePal_SphereToCube, ANIM_TAG_SPHERE_TO_CUBE}, - {gBattleAnimSpritePal_Tendrils, ANIM_TAG_TENDRILS}, - {gBattleAnimSpritePal_Eye, ANIM_TAG_EYE}, - {gBattleAnimSpritePal_WhiteShadow, ANIM_TAG_WHITE_SHADOW}, - {gBattleAnimSpritePal_TealAlert, ANIM_TAG_TEAL_ALERT}, - {gBattleAnimSpritePal_OpeningEye, ANIM_TAG_OPENING_EYE}, - {gBattleAnimSpritePal_RoundWhiteHalo, ANIM_TAG_ROUND_WHITE_HALO}, - {gBattleAnimSpritePal_FangAttack, ANIM_TAG_FANG_ATTACK}, - {gBattleAnimSpritePal_PurpleHandOutline, ANIM_TAG_PURPLE_HAND_OUTLINE}, - {gBattleAnimSpritePal_Moon, ANIM_TAG_MOON}, - {gBattleAnimSpritePal_GreenSparkle, ANIM_TAG_GREEN_SPARKLE}, - {gBattleAnimSpritePal_Spiral, ANIM_TAG_SPIRAL}, - {gBattleAnimSpritePal_SnoreZ, ANIM_TAG_SNORE_Z}, - {gBattleAnimSpritePal_Explosion, ANIM_TAG_EXPLOSION}, - {gBattleAnimSpritePal_Nail, ANIM_TAG_NAIL}, - {gBattleAnimSpritePal_GhostlySpirit, ANIM_TAG_GHOSTLY_SPIRIT}, - {gBattleAnimSpritePal_WarmRock, ANIM_TAG_WARM_ROCK}, - {gBattleAnimSpritePal_BreakingEgg, ANIM_TAG_BREAKING_EGG}, - {gBattleAnimSpritePal_ThinRing, ANIM_TAG_THIN_RING}, - {gBattleAnimSpritePal_PunchImpact, ANIM_TAG_PUNCH_IMPACT}, - {gBattleAnimSpritePal_Bell, ANIM_TAG_BELL}, - {gBattleAnimSpritePal_MusicNotes2, ANIM_TAG_MUSIC_NOTES_2}, - {gBattleAnimSpritePal_SpeedDust, ANIM_TAG_SPEED_DUST}, - {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_TORN_METAL}, - {gBattleAnimSpritePal_ThoughtBubble, ANIM_TAG_THOUGHT_BUBBLE}, - {gBattleAnimSpritePal_MagentaHeart, ANIM_TAG_MAGENTA_HEART}, - {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRIC_ORBS}, - {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_CIRCLE_OF_LIGHT}, - {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRICITY}, - {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER_2}, - {gBattleAnimSpritePal_MovementWaves, ANIM_TAG_MOVEMENT_WAVES}, - {gBattleAnimSpritePal_RedHeart, ANIM_TAG_RED_HEART}, - {gBattleAnimSpritePal_RedOrb, ANIM_TAG_RED_ORB}, - {gBattleAnimSpritePal_EyeSparkle, ANIM_TAG_EYE_SPARKLE}, - {gBattleAnimSpritePal_PinkHeart, ANIM_TAG_PINK_HEART}, - {gBattleAnimSpritePal_Angel, ANIM_TAG_ANGEL}, - {gBattleAnimSpritePal_Devil, ANIM_TAG_DEVIL}, - {gBattleAnimSpritePal_Swipe, ANIM_TAG_SWIPE}, - {gBattleAnimSpritePal_Roots, ANIM_TAG_ROOTS}, - {gBattleAnimSpritePal_ItemBag, ANIM_TAG_ITEM_BAG}, - {gBattleAnimSpritePal_JaggedMusicNote, ANIM_TAG_JAGGED_MUSIC_NOTE}, - {gBattleAnimSpritePal_Pokeball, ANIM_TAG_POKEBALL}, - {gBattleAnimSpritePal_Pokeball, ANIM_TAG_SPOTLIGHT}, - {gBattleAnimSpritePal_LetterZ, ANIM_TAG_LETTER_Z}, - {gBattleAnimSpritePal_RapidSpin, ANIM_TAG_RAPID_SPIN}, - {gBattleAnimSpritePal_TriAttackTriangle, ANIM_TAG_TRI_ATTACK_TRIANGLE}, - {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_ORB}, - {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_FIRE}, - {gBattleAnimSpritePal_GoldStars, ANIM_TAG_GOLD_STARS}, - {gBattleAnimSpritePal_EclipsingOrb, ANIM_TAG_ECLIPSING_ORB}, - {gBattleAnimSpritePal_GrayOrb, ANIM_TAG_GRAY_ORB}, - {gBattleAnimSpritePal_BlueOrb, ANIM_TAG_BLUE_ORB}, - {gBattleAnimSpritePal_RedOrb2, ANIM_TAG_RED_ORB_2}, - {gBattleAnimSpritePal_PinkPetal, ANIM_TAG_PINK_PETAL}, - {gBattleAnimSpritePal_PainSplit, ANIM_TAG_PAIN_SPLIT}, - {gBattleAnimSpritePal_Confetti, ANIM_TAG_CONFETTI}, - {gBattleAnimSpritePal_GreenStar, ANIM_TAG_GREEN_STAR}, - {gBattleAnimSpritePal_PinkCloud, ANIM_TAG_PINK_CLOUD}, - {gBattleAnimSpritePal_SweatDrop, ANIM_TAG_SWEAT_DROP}, - {gBattleAnimSpritePal_GuardRing, ANIM_TAG_GUARD_RING}, - {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SCRATCH}, - {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SWIPE}, - {gBattleAnimSpritePal_Finger, ANIM_TAG_TAG_HAND}, - {gBattleAnimSpritePal_SmallRedEye, ANIM_TAG_SMALL_RED_EYE}, - {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_HOLLOW_ORB}, - {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_X_SIGN}, - {gBattleAnimSpritePal_BluegreenOrb, ANIM_TAG_BLUEGREEN_ORB}, - {gBattleAnimSpritePal_PawPrint, ANIM_TAG_PAW_PRINT}, - {gBattleAnimSpritePal_PurpleFlame, ANIM_TAG_PURPLE_FLAME}, - {gBattleAnimSpritePal_RedBall, ANIM_TAG_RED_BALL}, - {gBattleAnimSpritePal_SmellingsaltEffect, ANIM_TAG_SMELLINGSALT_EFFECT}, - {gBattleAnimSpritePal_Meteor, ANIM_TAG_METEOR}, - {gBattleAnimSpritePal_FlatRock, ANIM_TAG_FLAT_ROCK}, - {gBattleAnimSpritePal_MagnifyingGlass, ANIM_TAG_MAGNIFYING_GLASS}, - {gBattleAnimSpritePal_BrownOrb, ANIM_TAG_BROWN_ORB}, - {gBattleAnimSpritePal_MetalSoundWaves, ANIM_TAG_METAL_SOUND_WAVES}, - {gBattleAnimSpritePal_FlyingDirt, ANIM_TAG_FLYING_DIRT}, - {gBattleAnimSpritePal_IcicleSpear, ANIM_TAG_ICICLE_SPEAR}, - {gBattleAnimSpritePal_Hail, ANIM_TAG_HAIL}, - {gBattleAnimSpritePal_GlowyRedOrb, ANIM_TAG_GLOWY_RED_ORB}, - {gBattleAnimSpritePal_GlowyGreenOrb, ANIM_TAG_GLOWY_GREEN_ORB}, - {gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE}, - {gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, - {gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB}, - {gBattleAnimSpritePal_Pokeblock, ANIM_TAG_POKEBLOCK}, - {gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER}, - {gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6}, - {gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH}, - {gBattleAnimSpritePal_Splash, ANIM_TAG_SWEAT_BEAD}, - {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_1}, - {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_2}, - {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_3}, - {gBattleAnimSpritePal_SlamHit2, ANIM_TAG_SLAM_HIT_2}, - {gBattleAnimSpritePal_Recycle, ANIM_TAG_RECYCLE}, - {gBattleAnimSpritePal_RedParticles, ANIM_TAG_RED_PARTICLES}, - {gBattleAnimSpritePal_Protect, ANIM_TAG_PROTECT}, - {gBattleAnimSpritePal_DirtMound, ANIM_TAG_DIRT_MOUND}, - {gBattleAnimSpritePal_Shock3, ANIM_TAG_SHOCK_3}, - {gBattleAnimSpritePal_WeatherBall, ANIM_TAG_WEATHER_BALL}, - {gBattleAnimSpritePal_Bird, ANIM_TAG_BIRD}, - {gBattleAnimSpritePal_CrossImpact, ANIM_TAG_CROSS_IMPACT}, - {gBattleAnimSpritePal_Slash2, ANIM_TAG_SLASH_2}, - {gBattleAnimSpritePal_WhipHit, ANIM_TAG_WHIP_HIT}, - {gBattleAnimSpritePal_BlueRing2, ANIM_TAG_BLUE_RING_2}, -}; - -const struct BattleAnimBackground gBattleAnimBackgroundTable[] = -{ - [BG_NONE] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, - [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, - [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost}, - [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic}, - [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent}, - [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer}, - [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests}, - [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill}, - [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests}, - [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent}, - [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer}, - [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder}, - [BG_GUILLOTINE_OPPONENT] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineOpponent}, - [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer}, - [BG_GUILLOTINE_CONTESTS] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineContests}, - [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice}, - [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic}, - [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir}, - [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill}, - [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests}, - [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora}, - [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure}, - [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent}, - [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer}, - [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent}, - [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer}, - [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests}, -}; +#include "data/battle_anim.h" static void (* const sScriptCmdTable[])(void) = { - ScriptCmd_loadspritegfx, - ScriptCmd_unloadspritegfx, - ScriptCmd_createsprite, - ScriptCmd_createvisualtask, - ScriptCmd_delay, - ScriptCmd_waitforvisualfinish, - ScriptCmd_nop, - ScriptCmd_nop2, - ScriptCmd_end, - ScriptCmd_playse, - ScriptCmd_monbg, - ScriptCmd_clearmonbg, - ScriptCmd_setalpha, - ScriptCmd_blendoff, - ScriptCmd_call, - ScriptCmd_return, - ScriptCmd_setarg, - ScriptCmd_choosetwoturnanim, - ScriptCmd_jumpifmoveturn, - ScriptCmd_goto, - ScriptCmd_fadetobg, - ScriptCmd_restorebg, - ScriptCmd_waitbgfadeout, - ScriptCmd_waitbgfadein, - ScriptCmd_changebg, - ScriptCmd_playsewithpan, - ScriptCmd_setpan, - ScriptCmd_panse, - ScriptCmd_loopsewithpan, - ScriptCmd_waitplaysewithpan, - ScriptCmd_setbldcnt, - ScriptCmd_createsoundtask, - ScriptCmd_waitsound, - ScriptCmd_jumpargeq, - ScriptCmd_monbg_22, - ScriptCmd_clearmonbg_23, - ScriptCmd_jumpifcontest, - ScriptCmd_fadetobgfromset, - ScriptCmd_panse_adjustnone, - ScriptCmd_panse_adjustall, - ScriptCmd_monbgprio_28, - ScriptCmd_monbgprio_29, - ScriptCmd_monbgprio_2A, - ScriptCmd_invisible, - ScriptCmd_visible, - ScriptCmd_doublebattle_2D, - ScriptCmd_doublebattle_2E, - ScriptCmd_stopsound + Cmd_loadspritegfx, // 0x00 + Cmd_unloadspritegfx, // 0x01 + Cmd_createsprite, // 0x02 + Cmd_createvisualtask, // 0x03 + Cmd_delay, // 0x04 + Cmd_waitforvisualfinish, // 0x05 + Cmd_nop, // 0x06 + Cmd_nop2, // 0x07 + Cmd_end, // 0x08 + Cmd_playse, // 0x09 + Cmd_monbg, // 0x0A + Cmd_clearmonbg, // 0x0B + Cmd_setalpha, // 0x0C + Cmd_blendoff, // 0x0D + Cmd_call, // 0x0E + Cmd_return, // 0x0F + Cmd_setarg, // 0x10 + Cmd_choosetwoturnanim, // 0x11 + Cmd_jumpifmoveturn, // 0x12 + Cmd_goto, // 0x13 + Cmd_fadetobg, // 0x14 + Cmd_restorebg, // 0x15 + Cmd_waitbgfadeout, // 0x16 + Cmd_waitbgfadein, // 0x17 + Cmd_changebg, // 0x18 + Cmd_playsewithpan, // 0x19 + Cmd_setpan, // 0x1A + Cmd_panse, // 0x1B + Cmd_loopsewithpan, // 0x1C + Cmd_waitplaysewithpan, // 0x1D + Cmd_setbldcnt, // 0x1E + Cmd_createsoundtask, // 0x1F + Cmd_waitsound, // 0x20 + Cmd_jumpargeq, // 0x21 + Cmd_monbg_static, // 0x22 + Cmd_clearmonbg_static, // 0x23 + Cmd_jumpifcontest, // 0x24 + Cmd_fadetobgfromset, // 0x25 + Cmd_panse_adjustnone, // 0x26 + Cmd_panse_adjustall, // 0x27 + Cmd_splitbgprio, // 0x28 + Cmd_splitbgprio_all, // 0x29 + Cmd_splitbgprio_foes, // 0x2A + Cmd_invisible, // 0x2B + Cmd_visible, // 0x2C + Cmd_teamattack_moveback, // 0x2D + Cmd_teamattack_movefwd, // 0x2E + Cmd_stopsound, // 0x2F }; void ClearBattleAnimationVars(void) @@ -1950,7 +331,7 @@ static void RunAnimScriptCommand(void) } while (sAnimFramesToWait == 0 && gAnimScriptActive); } -static void ScriptCmd_loadspritegfx(void) +static void Cmd_loadspritegfx(void) { u16 index; @@ -1964,7 +345,7 @@ static void ScriptCmd_loadspritegfx(void) gAnimScriptCallback = WaitAnimFrameCount; } -static void ScriptCmd_unloadspritegfx(void) +static void Cmd_unloadspritegfx(void) { u16 index; @@ -1976,7 +357,7 @@ static void ScriptCmd_unloadspritegfx(void) ClearSpriteIndex(GET_TRUE_SPRITE_INDEX(index)); } -static void ScriptCmd_createsprite(void) +static void Cmd_createsprite(void) { s32 i; const struct SpriteTemplate *template; @@ -1999,11 +380,11 @@ static void ScriptCmd_createsprite(void) sBattleAnimScriptPtr += 2; } - if (argVar & 0x80) + if (argVar & ANIMSPRITE_IS_TARGET) { - argVar ^= 0x80; - if (argVar >= 0x40) - argVar -= 0x40; + argVar ^= ANIMSPRITE_IS_TARGET; + if (argVar >= 64) + argVar -= 64; else argVar *= -1; @@ -2011,8 +392,8 @@ static void ScriptCmd_createsprite(void) } else { - if (argVar >= 0x40) - argVar -= 0x40; + if (argVar >= 64) + argVar -= 64; else argVar *= -1; @@ -2030,7 +411,7 @@ static void ScriptCmd_createsprite(void) gAnimVisualTaskCount++; } -static void ScriptCmd_createvisualtask(void) +static void Cmd_createvisualtask(void) { TaskFunc taskFunc; u8 taskPriority; @@ -2060,7 +441,7 @@ static void ScriptCmd_createvisualtask(void) gAnimVisualTaskCount++; } -static void ScriptCmd_delay(void) +static void Cmd_delay(void) { sBattleAnimScriptPtr++; sAnimFramesToWait = sBattleAnimScriptPtr[0]; @@ -2071,7 +452,7 @@ static void ScriptCmd_delay(void) } // Wait for visual tasks to finish. -static void ScriptCmd_waitforvisualfinish(void) +static void Cmd_waitforvisualfinish(void) { if (gAnimVisualTaskCount == 0) { @@ -2084,15 +465,15 @@ static void ScriptCmd_waitforvisualfinish(void) } } -static void ScriptCmd_nop(void) +static void Cmd_nop(void) { } -static void ScriptCmd_nop2(void) +static void Cmd_nop2(void) { } -static void ScriptCmd_end(void) +static void Cmd_end(void) { s32 i; bool32 continuousAnim = FALSE; @@ -2146,7 +527,7 @@ static void ScriptCmd_end(void) } } -static void ScriptCmd_playse(void) +static void Cmd_playse(void) { sBattleAnimScriptPtr++; PlaySE(T1_READ_16(sBattleAnimScriptPtr)); @@ -2154,56 +535,60 @@ static void ScriptCmd_playse(void) } // These two tasks share context and similar task data -// To differentiate them their task data is prefixed t1/t2 +// To differentiate them the task data for Task_UpdateMonBg is prefixed t2 -// Task data for sub_80A40F4 -#define t1_BattlerSpriteId data[0] -#define t1_InBg2 data[1] -#define t1_CREATE_ANOTHER_TASK 2 -#define t1_IS_SECONDMON_BG 3 +// Task data for Task_InitUpdateMonBg +#define tBattlerId data[0] +#define tInBg2 data[1] +#define tActive data[2] +#define tIsPartner data[3] -// Task data for task_pA_ma0A_obj_to_bg_pal -#define t2_BATTLER_SPRITE_ID 0 -#define t2_MON_IN_BG2 5 -#define t2_MONBG_BATTLER 6 +// Task data for Task_UpdateMonBg +#define t2_SpriteId data[0] +#define t2_SpriteX data[1] +#define t2_SpriteY data[2] +#define t2_BgX data[3] +#define t2_BgY data[4] +#define t2_InBg2 data[5] +#define t2_BattlerId data[6] -static void sub_80A40F4(u8 taskId) +static void Task_InitUpdateMonBg(u8 taskId) { - u8 newTaskId; + u8 updateTaskId; s16 *data = gTasks[taskId].data; - u8 battlerSpriteId = gBattlerSpriteIds[t1_BattlerSpriteId]; + u8 battlerSpriteId = gBattlerSpriteIds[tBattlerId]; gSprites[battlerSpriteId].invisible = TRUE; - if (!data[t1_CREATE_ANOTHER_TASK]) + if (!tActive) { DestroyAnimVisualTask(taskId); return; } - newTaskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10); - gTasks[newTaskId].data[t2_BATTLER_SPRITE_ID] = battlerSpriteId; - gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2; - gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2; + updateTaskId = CreateTask(Task_UpdateMonBg, 10); + gTasks[updateTaskId].t2_SpriteId = battlerSpriteId; + gTasks[updateTaskId].t2_SpriteX = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2; + gTasks[updateTaskId].t2_SpriteY = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2; - if (!t1_InBg2) + if (!tInBg2) { - gTasks[newTaskId].data[3] = gBattle_BG1_X; - gTasks[newTaskId].data[4] = gBattle_BG1_Y; + gTasks[updateTaskId].t2_BgX = gBattle_BG1_X; + gTasks[updateTaskId].t2_BgY = gBattle_BG1_Y; } else { - gTasks[newTaskId].data[3] = gBattle_BG2_X; - gTasks[newTaskId].data[4] = gBattle_BG2_Y; + gTasks[updateTaskId].t2_BgX = gBattle_BG2_X; + gTasks[updateTaskId].t2_BgY = gBattle_BG2_Y; } - gTasks[newTaskId].data[t2_MON_IN_BG2] = t1_InBg2; - gTasks[newTaskId].data[t2_MONBG_BATTLER] = t1_BattlerSpriteId; - sMonAnimTaskIdArray[data[t1_IS_SECONDMON_BG]] = newTaskId; + gTasks[updateTaskId].t2_InBg2 = tInBg2; + gTasks[updateTaskId].t2_BattlerId = tBattlerId; + sMonAnimTaskIdArray[tIsPartner] = updateTaskId; DestroyAnimVisualTask(taskId); } -static void ScriptCmd_monbg(void) +static void Cmd_monbg(void) { bool8 toBG_2; u8 taskId; @@ -2218,6 +603,7 @@ static void ScriptCmd_monbg(void) else battlerId = gBattleAnimAttacker; + // Move designated battler to background if (IsBattlerSpriteVisible(battlerId)) { u8 position = GetBattlerPosition(battlerId); @@ -2227,15 +613,16 @@ static void ScriptCmd_monbg(void) toBG_2 = TRUE; MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE); - taskId = CreateTask(sub_80A40F4, 10); + taskId = CreateTask(Task_InitUpdateMonBg, 10); gAnimVisualTaskCount++; - gTasks[taskId].t1_BattlerSpriteId = battlerId; - gTasks[taskId].t1_InBg2 = toBG_2; - gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE; - gTasks[taskId].data[t1_IS_SECONDMON_BG] = 0; + gTasks[taskId].tBattlerId = battlerId; + gTasks[taskId].tInBg2 = toBG_2; + gTasks[taskId].tActive = TRUE; + gTasks[taskId].tIsPartner = FALSE; } + // Move battler's partner to background battlerId ^= BIT_FLANK; if (IsBattlerSpriteVisible(battlerId)) { @@ -2246,12 +633,12 @@ static void ScriptCmd_monbg(void) toBG_2 = TRUE; MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE); - taskId = CreateTask(sub_80A40F4, 10); + taskId = CreateTask(Task_InitUpdateMonBg, 10); gAnimVisualTaskCount++; - gTasks[taskId].data[0] = battlerId; - gTasks[taskId].data[1] = toBG_2; - gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE; - gTasks[taskId].data[t1_IS_SECONDMON_BG] = 1; + gTasks[taskId].tBattlerId = battlerId; + gTasks[taskId].tInBg2 = toBG_2; + gTasks[taskId].tActive = TRUE; + gTasks[taskId].tIsPartner = TRUE; } sBattleAnimScriptPtr++; @@ -2423,43 +810,58 @@ void ResetBattleAnimBg(bool8 toBG2) } } -static void task_pA_ma0A_obj_to_bg_pal(u8 taskId) +static void Task_UpdateMonBg(u8 taskId) { - u8 spriteId, palIndex; + u8 spriteId, battlerId; s16 x, y; struct BattleAnimBgData animBg; - spriteId = gTasks[taskId].data[0]; - palIndex = gTasks[taskId].data[6]; + spriteId = gTasks[taskId].t2_SpriteId; + battlerId = gTasks[taskId].t2_BattlerId; GetBattleAnimBg1Data(&animBg); - x = gTasks[taskId].data[1] - (gSprites[spriteId].x + gSprites[spriteId].x2); - y = gTasks[taskId].data[2] - (gSprites[spriteId].y + gSprites[spriteId].y2); + x = gTasks[taskId].t2_SpriteX - (gSprites[spriteId].x + gSprites[spriteId].x2); + y = gTasks[taskId].t2_SpriteY - (gSprites[spriteId].y + gSprites[spriteId].y2); - if (gTasks[taskId].data[5] == 0) + if (!gTasks[taskId].t2_InBg2) { u16 *src; u16 *dst; - gBattle_BG1_X = x + gTasks[taskId].data[3]; - gBattle_BG1_Y = y + gTasks[taskId].data[4]; - src = &gPlttBufferFaded[0x100 + palIndex * 16]; + gBattle_BG1_X = x + gTasks[taskId].t2_BgX; + gBattle_BG1_Y = y + gTasks[taskId].t2_BgY; + + src = &gPlttBufferFaded[0x100 + battlerId * 16]; dst = &gPlttBufferFaded[0x100 + animBg.paletteId * 16 - 256]; - CpuCopy32(src, dst, 0x20); + CpuCopy32(src, dst, 32); } else { u16 *src; u16 *dst; - gBattle_BG2_X = x + gTasks[taskId].data[3]; - gBattle_BG2_Y = y + gTasks[taskId].data[4]; - src = &gPlttBufferFaded[0x100 + palIndex * 16]; + gBattle_BG2_X = x + gTasks[taskId].t2_BgX; + gBattle_BG2_Y = y + gTasks[taskId].t2_BgY; + + src = &gPlttBufferFaded[0x100 + battlerId * 16]; dst = &gPlttBufferFaded[0x100 - 112]; - CpuCopy32(src, dst, 0x20); + CpuCopy32(src, dst, 32); } } -static void ScriptCmd_clearmonbg(void) +#undef tBattlerId +#undef tInBg2 +#undef tActive +#undef tIsPartner + +#undef t2_SpriteId +#undef t2_SpriteX +#undef t2_SpriteY +#undef t2_BgX +#undef t2_BgY +#undef t2_InBg2 +#undef t2_BattlerId + +static void Cmd_clearmonbg(void) { u8 animBattlerId; u8 battlerId; @@ -2520,7 +922,8 @@ static void Task_ClearMonBg(u8 taskId) } } -static void ScriptCmd_monbg_22(void) +// Equivalent to Cmd_monbg but never creates Task_InitUpdateMonBg / Task_UpdateMonBg +static void Cmd_monbg_static(void) { bool8 toBG_2; u8 battlerId; @@ -2566,7 +969,7 @@ static void ScriptCmd_monbg_22(void) sBattleAnimScriptPtr++; } -static void ScriptCmd_clearmonbg_23(void) +static void Cmd_clearmonbg_static(void) { u8 animBattlerId; u8 battlerId; @@ -2592,14 +995,14 @@ static void ScriptCmd_clearmonbg_23(void) else animBattlerId = 0; - taskId = CreateTask(sub_80A4BB0, 5); + taskId = CreateTask(Task_ClearMonBgStatic, 5); gTasks[taskId].data[0] = animBattlerId; gTasks[taskId].data[2] = battlerId; sBattleAnimScriptPtr++; } -static void sub_80A4BB0(u8 taskId) +static void Task_ClearMonBgStatic(u8 taskId) { gTasks[taskId].data[1]++; if (gTasks[taskId].data[1] != 1) @@ -2621,16 +1024,7 @@ static void sub_80A4BB0(u8 taskId) } } -#undef t1_BattlerSpriteId -#undef t1_InBg2 -#undef t1_CREATE_ANOTHER_TASK -#undef t1_IS_SECONDMON_BG - -#undef t2_BATTLER_SPRITE_ID -#undef t2_MON_IN_BG2 -#undef t2_MONBG_BATTLER - -static void ScriptCmd_setalpha(void) +static void Cmd_setalpha(void) { u16 half1, half2; @@ -2641,7 +1035,7 @@ static void ScriptCmd_setalpha(void) SetGpuReg(REG_OFFSET_BLDALPHA, half1 | half2); } -static void ScriptCmd_setbldcnt(void) +static void Cmd_setbldcnt(void) { u16 half1, half2; @@ -2651,26 +1045,26 @@ static void ScriptCmd_setbldcnt(void) SetGpuReg(REG_OFFSET_BLDCNT, half1 | half2); } -static void ScriptCmd_blendoff(void) +static void Cmd_blendoff(void) { sBattleAnimScriptPtr++; SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); } -static void ScriptCmd_call(void) +static void Cmd_call(void) { sBattleAnimScriptPtr++; sBattleAnimScriptRetAddr = sBattleAnimScriptPtr + 4; sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr); } -static void ScriptCmd_return(void) +static void Cmd_return(void) { sBattleAnimScriptPtr = sBattleAnimScriptRetAddr; } -static void ScriptCmd_setarg(void) +static void Cmd_setarg(void) { // Save original address to return to // after the T1_READ_16, + 4. @@ -2688,7 +1082,7 @@ static void ScriptCmd_setarg(void) gBattleAnimArgs[argId] = value; } -static void ScriptCmd_choosetwoturnanim(void) +static void Cmd_choosetwoturnanim(void) { sBattleAnimScriptPtr++; if (gAnimMoveTurn & 1) @@ -2696,7 +1090,7 @@ static void ScriptCmd_choosetwoturnanim(void) sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr); } -static void ScriptCmd_jumpifmoveturn(void) +static void Cmd_jumpifmoveturn(void) { u8 toCheck; sBattleAnimScriptPtr++; @@ -2709,7 +1103,7 @@ static void ScriptCmd_jumpifmoveturn(void) sBattleAnimScriptPtr += 4; } -static void ScriptCmd_goto(void) +static void Cmd_goto(void) { sBattleAnimScriptPtr++; sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr); @@ -2728,7 +1122,7 @@ bool8 IsContest(void) #define tBackgroundId data[0] #define tState data[10] -static void ScriptCmd_fadetobg(void) +static void Cmd_fadetobg(void) { u8 backgroundId; u8 taskId; @@ -2741,7 +1135,7 @@ static void ScriptCmd_fadetobg(void) sAnimBackgroundFadeState = 1; } -static void ScriptCmd_fadetobgfromset(void) +static void Cmd_fadetobgfromset(void) { u8 bg1, bg2, bg3; u8 taskId; @@ -2832,7 +1226,7 @@ static void LoadDefaultBg(void) DrawMainBattleBackground(); } -static void ScriptCmd_restorebg(void) +static void Cmd_restorebg(void) { u8 taskId; @@ -2845,7 +1239,7 @@ static void ScriptCmd_restorebg(void) #undef tBackgroundId #undef tState -static void ScriptCmd_waitbgfadeout(void) +static void Cmd_waitbgfadeout(void) { if (sAnimBackgroundFadeState == 2) { @@ -2858,7 +1252,7 @@ static void ScriptCmd_waitbgfadeout(void) } } -static void ScriptCmd_waitbgfadein(void) +static void Cmd_waitbgfadein(void) { if (sAnimBackgroundFadeState == 0) { @@ -2871,7 +1265,7 @@ static void ScriptCmd_waitbgfadein(void) } } -static void ScriptCmd_changebg(void) +static void Cmd_changebg(void) { sBattleAnimScriptPtr++; LoadMoveBg(sBattleAnimScriptPtr[0]); @@ -2963,7 +1357,7 @@ s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan) return ret; } -static void ScriptCmd_playsewithpan(void) +static void Cmd_playsewithpan(void) { u16 songId; s8 pan; @@ -2975,7 +1369,7 @@ static void ScriptCmd_playsewithpan(void) sBattleAnimScriptPtr += 3; } -static void ScriptCmd_setpan(void) +static void Cmd_setpan(void) { s8 pan; @@ -2992,7 +1386,7 @@ static void ScriptCmd_setpan(void) #define tCurrentPan data[4] #define tFrameCounter data[8] -static void ScriptCmd_panse(void) +static void Cmd_panse(void) { u16 songNum; s8 currentPanArg, incrementPan, incrementPanArg, currentPan, targetPan; @@ -3065,7 +1459,7 @@ void Task_PanFromInitialToTarget(u8 taskId) } } -static void ScriptCmd_panse_adjustnone(void) +static void Cmd_panse_adjustnone(void) { u16 songId; s8 currentPan, targetPan, incrementPan; @@ -3092,7 +1486,7 @@ static void ScriptCmd_panse_adjustnone(void) sBattleAnimScriptPtr += 6; } -static void ScriptCmd_panse_adjustall(void) +static void Cmd_panse_adjustall(void) { u16 songId; s8 targetPanArg, incrementPanArg, currentPanArg, currentPan, targetPan, incrementPan; @@ -3136,7 +1530,7 @@ static void ScriptCmd_panse_adjustall(void) #define tNumberOfPlays data[3] #define tFrameCounter data[8] -static void ScriptCmd_loopsewithpan(void) +static void Cmd_loopsewithpan(void) { u16 songId; s8 panningArg, panning; @@ -3193,7 +1587,7 @@ static void Task_LoopAndPlaySE(u8 taskId) #define tPanning data[1] #define tFramesToWait data[2] -static void ScriptCmd_waitplaysewithpan(void) +static void Cmd_waitplaysewithpan(void) { u16 songId; s8 panningArg, panning; @@ -3229,7 +1623,7 @@ static void Task_WaitAndPlaySE(u8 taskId) #undef tPanning #undef tFramesToWait -static void ScriptCmd_createsoundtask(void) +static void Cmd_createsoundtask(void) { TaskFunc func; u8 numArgs, taskId; @@ -3250,7 +1644,7 @@ static void ScriptCmd_createsoundtask(void) gAnimSoundTaskCount++; } -static void ScriptCmd_waitsound(void) +static void Cmd_waitsound(void) { if (gAnimSoundTaskCount != 0) { @@ -3278,7 +1672,7 @@ static void ScriptCmd_waitsound(void) } } -static void ScriptCmd_jumpargeq(void) +static void Cmd_jumpargeq(void) { u8 argId; s16 valueToCheck; @@ -3293,7 +1687,7 @@ static void ScriptCmd_jumpargeq(void) sBattleAnimScriptPtr += 7; } -static void ScriptCmd_jumpifcontest(void) +static void Cmd_jumpifcontest(void) { sBattleAnimScriptPtr++; if (IsContest()) @@ -3302,7 +1696,7 @@ static void ScriptCmd_jumpifcontest(void) sBattleAnimScriptPtr += 4; } -static void ScriptCmd_monbgprio_28(void) +static void Cmd_splitbgprio(void) { u8 wantedBattler; u8 battlerId; @@ -3316,6 +1710,7 @@ static void ScriptCmd_monbgprio_28(void) else battlerId = gBattleAnimAttacker; + // Apply only if the given battler is the lead (on left from team's perspective) battlerPosition = GetBattlerPosition(battlerId); if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT)) { @@ -3324,7 +1719,7 @@ static void ScriptCmd_monbgprio_28(void) } } -static void ScriptCmd_monbgprio_29(void) +static void Cmd_splitbgprio_all(void) { sBattleAnimScriptPtr++; if (!IsContest()) @@ -3334,7 +1729,7 @@ static void ScriptCmd_monbgprio_29(void) } } -static void ScriptCmd_monbgprio_2A(void) +static void Cmd_splitbgprio_foes(void) { u8 wantedBattler; u8 battlerPosition; @@ -3342,6 +1737,8 @@ static void ScriptCmd_monbgprio_2A(void) wantedBattler = sBattleAnimScriptPtr[1]; sBattleAnimScriptPtr += 2; + + // Apply only if the attacking the opposing side if (GetBattlerSide(gBattleAnimAttacker) != GetBattlerSide(gBattleAnimTarget)) { if (wantedBattler != ANIM_ATTACKER) @@ -3349,6 +1746,7 @@ static void ScriptCmd_monbgprio_2A(void) else battlerId = gBattleAnimAttacker; + // Apply only if the given battler is the lead (on left from team's perspective) battlerPosition = GetBattlerPosition(battlerId); if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT)) { @@ -3358,7 +1756,7 @@ static void ScriptCmd_monbgprio_2A(void) } } -static void ScriptCmd_invisible(void) +static void Cmd_invisible(void) { u8 spriteId; @@ -3369,7 +1767,7 @@ static void ScriptCmd_invisible(void) sBattleAnimScriptPtr += 2; } -static void ScriptCmd_visible(void) +static void Cmd_visible(void) { u8 spriteId; @@ -3380,34 +1778,37 @@ static void ScriptCmd_visible(void) sBattleAnimScriptPtr += 2; } -static void ScriptCmd_doublebattle_2D(void) +// Below two commands are never used +static void Cmd_teamattack_moveback(void) { u8 wantedBattler; - u8 r4; + u8 priorityRank; u8 spriteId; wantedBattler = sBattleAnimScriptPtr[1]; sBattleAnimScriptPtr += 2; + + // Apply to double battles when attacking own side if (!IsContest() && IsDoubleBattle() && GetBattlerSide(gBattleAnimAttacker) == GetBattlerSide(gBattleAnimTarget)) { if (wantedBattler == ANIM_ATTACKER) { - r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker); + priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker); spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); } else { - r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget); + priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget); spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); } if (spriteId != SPRITE_NONE) { gSprites[spriteId].invisible = FALSE; - if (r4 == 2) + if (priorityRank == 2) gSprites[spriteId].oam.priority = 3; - if (r4 == 1) + if (priorityRank == 1) ResetBattleAnimBg(FALSE); else ResetBattleAnimBg(TRUE); @@ -3415,34 +1816,36 @@ static void ScriptCmd_doublebattle_2D(void) } } -static void ScriptCmd_doublebattle_2E(void) +static void Cmd_teamattack_movefwd(void) { u8 wantedBattler; - u8 r4; + u8 priorityRank; u8 spriteId; wantedBattler = sBattleAnimScriptPtr[1]; sBattleAnimScriptPtr += 2; + + // Apply to double battles when attacking own side if (!IsContest() && IsDoubleBattle() && GetBattlerSide(gBattleAnimAttacker) == GetBattlerSide(gBattleAnimTarget)) { if (wantedBattler == ANIM_ATTACKER) { - r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker); + priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker); spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); } else { - r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget); + priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget); spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); } - if (spriteId != SPRITE_NONE && r4 == 2) + if (spriteId != SPRITE_NONE && priorityRank == 2) gSprites[spriteId].oam.priority = 2; } } -static void ScriptCmd_stopsound(void) +static void Cmd_stopsound(void) { m4aMPlayStop(&gMPlayInfo_SE1); m4aMPlayStop(&gMPlayInfo_SE2); diff --git a/src/data/battle_anim.h b/src/data/battle_anim.h new file mode 100644 index 000000000000..5b24981d57f2 --- /dev/null +++ b/src/data/battle_anim.h @@ -0,0 +1,1625 @@ +const struct OamData gOamData_AffineOff_ObjNormal_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + + +const struct OamData gOamData_AffineOff_ObjNormal_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjNormal_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjNormal_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjNormal_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_NORMAL, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineOff_ObjBlend_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineNormal_ObjBlend_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_NORMAL, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_8x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x8), + .x = 0, + .size = SPRITE_SIZE(8x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_16x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x16), + .x = 0, + .size = SPRITE_SIZE(16x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_32x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x32), + .x = 0, + .size = SPRITE_SIZE(32x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_64x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_16x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x8), + .x = 0, + .size = SPRITE_SIZE(16x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_32x8 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_32x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_64x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(64x32), + .x = 0, + .size = SPRITE_SIZE(64x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_8x16 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_8x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .x = 0, + .size = SPRITE_SIZE(8x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_16x32 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(16x32), + .x = 0, + .size = SPRITE_SIZE(16x32), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct OamData gOamData_AffineDouble_ObjBlend_32x64 = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_DOUBLE, + .objMode = ST_OAM_OBJ_BLEND, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x64), + .x = 0, + .size = SPRITE_SIZE(32x64), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct CompressedSpriteSheet gBattleAnimPicTable[] = +{ + {gBattleAnimSpriteGfx_Bone, 0x0200, ANIM_TAG_BONE}, + {gBattleAnimSpriteGfx_Spark, 0x0300, ANIM_TAG_SPARK}, + {gBattleAnimSpriteGfx_Pencil, 0x0200, ANIM_TAG_PENCIL}, + {gBattleAnimSpriteGfx_AirWave, 0x0100, ANIM_TAG_AIR_WAVE}, + {gBattleAnimSpriteGfx_Orb, 0x0200, ANIM_TAG_ORB}, + {gBattleAnimSpriteGfx_Sword, 0x0400, ANIM_TAG_SWORD}, + {gBattleAnimSpriteGfx_Seed, 0x0180, ANIM_TAG_SEED}, + {gBattleAnimSpriteGfx_Explosion6, 0x0800, ANIM_TAG_EXPLOSION_6}, + {gBattleAnimSpriteGfx_PinkOrb, 0x0020, ANIM_TAG_PINK_ORB}, + {gBattleAnimSpriteGfx_Gust, 0x0400, ANIM_TAG_GUST}, + {gBattleAnimSpriteGfx_IceCube, 0x1200, ANIM_TAG_ICE_CUBE}, + {gBattleAnimSpriteGfx_Spark2, 0x0180, ANIM_TAG_SPARK_2}, + {gBattleAnimSpriteGfx_Orange, 0x0080, ANIM_TAG_ORANGE}, + {gBattleAnimSpriteGfx_YellowBall, 0x0080, ANIM_TAG_YELLOW_BALL}, + {gBattleAnimSpriteGfx_LockOn, 0x0280, ANIM_TAG_LOCK_ON}, + {gBattleAnimSpriteGfx_TiedBag, 0x0080, ANIM_TAG_TIED_BAG}, + {gBattleAnimSpriteGfx_BlackSmoke, 0x0100, ANIM_TAG_BLACK_SMOKE}, + {gBattleAnimSpriteGfx_BlackBall, 0x0020, ANIM_TAG_BLACK_BALL}, + {gBattleAnimSpriteGfx_Conversion, 0x0080, ANIM_TAG_CONVERSION}, + {gBattleAnimSpriteGfx_Glass, 0x0400, ANIM_TAG_GLASS}, + {gBattleAnimSpriteGfx_HornHit, 0x0200, ANIM_TAG_HORN_HIT}, + {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT}, + {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT_2}, + {gBattleAnimSpriteGfx_BlueShards, 0x0380, ANIM_TAG_BLUE_SHARDS}, + {gBattleAnimSpriteGfx_ClosingEye, 0x0300, ANIM_TAG_CLOSING_EYE}, + {gBattleAnimSpriteGfx_WavingHand, 0x0A00, ANIM_TAG_WAVING_HAND}, + {gBattleAnimSpriteGfx_HitDuplicate, 0x0A00, ANIM_TAG_HIT_DUPLICATE}, + {gBattleAnimSpriteGfx_Leer, 0x0A00, ANIM_TAG_LEER}, + {gBattleAnimSpriteGfx_BlueBurst, 0x0A00, ANIM_TAG_BLUE_BURST}, + {gBattleAnimSpriteGfx_SmallEmber, 0x0A00, ANIM_TAG_SMALL_EMBER}, + {gBattleAnimSpriteGfx_GraySmoke, 0x0A00, ANIM_TAG_GRAY_SMOKE}, + {gBattleAnimSpriteGfx_BlueStar, 0x0E00, ANIM_TAG_BLUE_STAR}, + {gBattleAnimSpriteGfx_BubbleBurst, 0x0380, ANIM_TAG_BUBBLE_BURST}, + {gBattleAnimSpriteGfx_Fire, 0x1000, ANIM_TAG_FIRE}, + {gBattleAnimSpriteGfx_SpinningFire, 0x0800, ANIM_TAG_SPINNING_FIRE}, + {gBattleAnimSpriteGfx_FirePlume, 0x0A00, ANIM_TAG_FIRE_PLUME}, + {gBattleAnimSpriteGfx_Lightning2, 0x0800, ANIM_TAG_LIGHTNING_2}, + {gBattleAnimSpriteGfx_Lightning, 0x0A00, ANIM_TAG_LIGHTNING}, + {gBattleAnimSpriteGfx_ClawSlash2, 0x0A00, ANIM_TAG_CLAW_SLASH_2}, + {gBattleAnimSpriteGfx_ClawSlash, 0x0A00, ANIM_TAG_CLAW_SLASH}, + {gBattleAnimSpriteGfx_Scratch3, 0x0A00, ANIM_TAG_SCRATCH_3}, + {gBattleAnimSpriteGfx_Scratch2, 0x0A00, ANIM_TAG_SCRATCH_2}, + {gBattleAnimSpriteGfx_BubbleBurst2, 0x0A00, ANIM_TAG_BUBBLE_BURST_2}, + {gBattleAnimSpriteGfx_IceChunk, 0x0A00, ANIM_TAG_ICE_CHUNK}, + {gBattleAnimSpriteGfx_Glass2, 0x0A00, ANIM_TAG_GLASS_2}, + {gBattleAnimSpriteGfx_PinkHeart2, 0x0A00, ANIM_TAG_PINK_HEART_2}, + {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP}, + {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP_2}, + {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_1}, + {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_2}, + {gBattleAnimSpriteGfx_HumanoidFoot, 0x0200, ANIM_TAG_HUMANOID_FOOT}, + {gBattleAnimSpriteGfx_MonsterFoot, 0x0200, ANIM_TAG_MONSTER_FOOT}, + {gBattleAnimSpriteGfx_HumanoidHand, 0x0200, ANIM_TAG_HUMANOID_HAND}, + {gBattleAnimSpriteGfx_NoiseLine, 0x0800, ANIM_TAG_NOISE_LINE}, + {gBattleAnimSpriteGfx_YellowUnk, 0x0080, ANIM_TAG_YELLOW_UNK}, + {gBattleAnimSpriteGfx_RedFist, 0x0200, ANIM_TAG_RED_FIST}, + {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_SLAM_HIT}, + {gBattleAnimSpriteGfx_Ring, 0x0180, ANIM_TAG_RING}, + {gBattleAnimSpriteGfx_Rocks, 0x0C00, ANIM_TAG_ROCKS}, + {gBattleAnimSpriteGfx_Z, 0x0100, ANIM_TAG_Z}, + {gBattleAnimSpriteGfx_YellowUnk2, 0x0040, ANIM_TAG_YELLOW_UNK_2}, + {gBattleAnimSpriteGfx_AirSlash, 0x0180, ANIM_TAG_AIR_SLASH}, + {gBattleAnimSpriteGfx_SpinningGreenOrbs, 0x0800, ANIM_TAG_SPINNING_GREEN_ORBS}, + {gBattleAnimSpriteGfx_Leaf, 0x0480, ANIM_TAG_LEAF}, + {gBattleAnimSpriteGfx_Finger, 0x0200, ANIM_TAG_FINGER}, + {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POISON_POWDER}, + {gBattleAnimSpriteGfx_BrownTriangle, 0x0100, ANIM_TAG_BROWN_TRIANGLE}, + {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_SLEEP_POWDER}, + {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_STUN_SPORE}, + {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POWDER}, + {gBattleAnimSpriteGfx_Sparkle3, 0x0200, ANIM_TAG_SPARKLE_3}, + {gBattleAnimSpriteGfx_Sparkle4, 0x0A00, ANIM_TAG_SPARKLE_4}, + {gBattleAnimSpriteGfx_MusicNotes, 0x0300, ANIM_TAG_MUSIC_NOTES}, + {gBattleAnimSpriteGfx_Duck, 0x0180, ANIM_TAG_DUCK}, + {gBattleAnimSpriteGfx_MudSand, 0x00A0, ANIM_TAG_MUD_SAND}, + {gBattleAnimSpriteGfx_Alert, 0x0700, ANIM_TAG_ALERT}, + {gBattleAnimSpriteGfx_BlueFlames, 0x0400, ANIM_TAG_BLUE_FLAMES}, + {gBattleAnimSpriteGfx_BlueFlames2, 0x0200, ANIM_TAG_BLUE_FLAMES_2}, + {gBattleAnimSpriteGfx_Shock4, 0x0300, ANIM_TAG_SHOCK_4}, + {gBattleAnimSpriteGfx_Shock, 0x0C00, ANIM_TAG_SHOCK}, + {gBattleAnimSpriteGfx_Bell2, 0x0A00, ANIM_TAG_BELL_2}, + {gBattleAnimSpriteGfx_PinkGlove, 0x0080, ANIM_TAG_PINK_GLOVE}, + {gBattleAnimSpriteGfx_BlueLines, 0x0040, ANIM_TAG_BLUE_LINES}, + {gBattleAnimSpriteGfx_Impact3, 0x0E00, ANIM_TAG_IMPACT_3}, + {gBattleAnimSpriteGfx_Impact2, 0x0E00, ANIM_TAG_IMPACT_2}, + {gBattleAnimSpriteGfx_Reticle, 0x0280, ANIM_TAG_RETICLE}, + {gBattleAnimSpriteGfx_Breath, 0x0200, ANIM_TAG_BREATH}, + {gBattleAnimSpriteGfx_Anger, 0x0080, ANIM_TAG_ANGER}, + {gBattleAnimSpriteGfx_Snowball, 0x00C0, ANIM_TAG_SNOWBALL}, + {gBattleAnimSpriteGfx_Vine, 0x0A00, ANIM_TAG_VINE}, + {gBattleAnimSpriteGfx_Sword2, 0x0200, ANIM_TAG_SWORD_2}, + {gBattleAnimSpriteGfx_Clapping, 0x0180, ANIM_TAG_CLAPPING}, + {gBattleAnimSpriteGfx_RedTube, 0x0080, ANIM_TAG_RED_TUBE}, + {gBattleAnimSpriteGfx_Amnesia, 0x1000, ANIM_TAG_AMNESIA}, + {gBattleAnimSpriteGfx_String2, 0x0A00, ANIM_TAG_STRING_2}, + {gBattleAnimSpriteGfx_Pencil2, 0x0180, ANIM_TAG_PENCIL_2}, + {gBattleAnimSpriteGfx_Petal, 0x0380, ANIM_TAG_PETAL}, + {gBattleAnimSpriteGfx_BentSpoon, 0x0C00, ANIM_TAG_BENT_SPOON}, + {gBattleAnimSpriteGfx_Web, 0x0200, ANIM_TAG_WEB}, + {gBattleAnimSpriteGfx_MilkBottle, 0x0200, ANIM_TAG_MILK_BOTTLE}, + {gBattleAnimSpriteGfx_Coin, 0x0200, ANIM_TAG_COIN}, + {gBattleAnimSpriteGfx_CrackedEgg, 0x0200, ANIM_TAG_CRACKED_EGG}, + {gBattleAnimSpriteGfx_HatchedEgg, 0x0400, ANIM_TAG_HATCHED_EGG}, + {gBattleAnimSpriteGfx_FreshEgg, 0x0080, ANIM_TAG_FRESH_EGG}, + {gBattleAnimSpriteGfx_Fangs, 0x0400, ANIM_TAG_FANGS}, + {gBattleAnimSpriteGfx_Explosion2, 0x0c00, ANIM_TAG_EXPLOSION_2}, + {gBattleAnimSpriteGfx_Explosion3, 0x0200, ANIM_TAG_EXPLOSION_3}, + {gBattleAnimSpriteGfx_WaterDroplet, 0x1000, ANIM_TAG_WATER_DROPLET}, + {gBattleAnimSpriteGfx_WaterDroplet2, 0x0a00, ANIM_TAG_WATER_DROPLET_2}, + {gBattleAnimSpriteGfx_Seed2, 0x0020, ANIM_TAG_SEED_2}, + {gBattleAnimSpriteGfx_Sprout, 0x0e00, ANIM_TAG_SPROUT}, + {gBattleAnimSpriteGfx_RedWand, 0x0080, ANIM_TAG_RED_WAND}, + {gBattleAnimSpriteGfx_PurpleGreenUnk, 0x0a00, ANIM_TAG_PURPLE_GREEN_UNK}, + {gBattleAnimSpriteGfx_WaterColumn, 0x0400, ANIM_TAG_WATER_COLUMN}, + {gBattleAnimSpriteGfx_MudUnk, 0x0200, ANIM_TAG_MUD_UNK}, + {gBattleAnimSpriteGfx_RainDrops, 0x0700, ANIM_TAG_RAIN_DROPS}, + {gBattleAnimSpriteGfx_FurySwipes, 0x0800, ANIM_TAG_FURY_SWIPES}, + {gBattleAnimSpriteGfx_Vine2, 0x0a00, ANIM_TAG_VINE_2}, + {gBattleAnimSpriteGfx_Teeth, 0x0600, ANIM_TAG_TEETH}, + {gBattleAnimSpriteGfx_Bone2, 0x0800, ANIM_TAG_BONE_2}, + {gBattleAnimSpriteGfx_WhiteBag, 0x0200, ANIM_TAG_WHITE_BAG}, + {gBattleAnimSpriteGfx_Unknown, 0x0040, ANIM_TAG_UNKNOWN}, + {gBattleAnimSpriteGfx_PurpleCoral, 0x0180, ANIM_TAG_PURPLE_CORAL}, + {gBattleAnimSpriteGfx_PurpleDroplet, 0x0600, ANIM_TAG_PURPLE_DROPLET}, + {gBattleAnimSpriteGfx_Shock2, 0x0600, ANIM_TAG_SHOCK_2}, + {gBattleAnimSpriteGfx_ClosingEye2, 0x0200, ANIM_TAG_CLOSING_EYE_2}, + {gBattleAnimSpriteGfx_MetalBall, 0x0080, ANIM_TAG_METAL_BALL}, + {gBattleAnimSpriteGfx_MonsterDoll, 0x0200, ANIM_TAG_MONSTER_DOLL}, + {gBattleAnimSpriteGfx_Whirlwind, 0x0800, ANIM_TAG_WHIRLWIND}, + {gBattleAnimSpriteGfx_Whirlwind2, 0x0080, ANIM_TAG_WHIRLWIND_2}, + {gBattleAnimSpriteGfx_Explosion4, 0x0a00, ANIM_TAG_EXPLOSION_4}, + {gBattleAnimSpriteGfx_Explosion5, 0x0280, ANIM_TAG_EXPLOSION_5}, + {gBattleAnimSpriteGfx_Tongue, 0x0280, ANIM_TAG_TONGUE}, + {gBattleAnimSpriteGfx_Smoke, 0x0100, ANIM_TAG_SMOKE}, + {gBattleAnimSpriteGfx_Smoke2, 0x0200, ANIM_TAG_SMOKE_2}, + {gBattleAnimSpriteGfx_Impact, 0x0200, ANIM_TAG_IMPACT}, + {gBattleAnimSpriteGfx_CircleImpact, 0x0020, ANIM_TAG_CIRCLE_IMPACT}, + {gBattleAnimSpriteGfx_Scratch, 0x0a00, ANIM_TAG_SCRATCH}, + {gBattleAnimSpriteGfx_Cut, 0x0800, ANIM_TAG_CUT}, + {gBattleAnimSpriteGfx_SharpTeeth, 0x0800, ANIM_TAG_SHARP_TEETH}, + {gBattleAnimSpriteGfx_RainbowRings, 0x00c0, ANIM_TAG_RAINBOW_RINGS}, + {gBattleAnimSpriteGfx_IceCrystals, 0x01c0, ANIM_TAG_ICE_CRYSTALS}, + {gBattleAnimSpriteGfx_IceSpikes, 0x0100, ANIM_TAG_ICE_SPIKES}, + {gBattleAnimSpriteGfx_HandsAndFeet, 0x0800, ANIM_TAG_HANDS_AND_FEET}, + {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_MIST_CLOUD}, + {gBattleAnimSpriteGfx_Clamp, 0x0800, ANIM_TAG_CLAMP}, + {gBattleAnimSpriteGfx_Bubble, 0x0180, ANIM_TAG_BUBBLE}, + {gBattleAnimSpriteGfx_Orbs, 0x0180, ANIM_TAG_ORBS}, + {gBattleAnimSpriteGfx_WaterImpact, 0x0200, ANIM_TAG_WATER_IMPACT}, + {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_WATER_ORB}, + {gBattleAnimSpriteGfx_PoisonBubble, 0x0180, ANIM_TAG_POISON_BUBBLE}, + {gBattleAnimSpriteGfx_ToxicBubble, 0x0400, ANIM_TAG_TOXIC_BUBBLE}, + {gBattleAnimSpriteGfx_Spikes, 0x0080, ANIM_TAG_SPIKES}, + {gBattleAnimSpriteGfx_HornHit2, 0x0100, ANIM_TAG_HORN_HIT_2}, + {gBattleAnimSpriteGfx_AirWave2, 0x0100, ANIM_TAG_AIR_WAVE_2}, + {gBattleAnimSpriteGfx_SmallBubbles, 0x0140, ANIM_TAG_SMALL_BUBBLES}, + {gBattleAnimSpriteGfx_RoundShadow, 0x0800, ANIM_TAG_ROUND_SHADOW}, + {gBattleAnimSpriteGfx_Sunlight, 0x0200, ANIM_TAG_SUNLIGHT}, + {gBattleAnimSpriteGfx_Spore, 0x0100, ANIM_TAG_SPORE}, + {gBattleAnimSpriteGfx_Flower, 0x00a0, ANIM_TAG_FLOWER}, + {gBattleAnimSpriteGfx_RazorLeaf, 0x0100, ANIM_TAG_RAZOR_LEAF}, + {gBattleAnimSpriteGfx_Needle, 0x0080, ANIM_TAG_NEEDLE}, + {gBattleAnimSpriteGfx_WhirlwindLines, 0x0300, ANIM_TAG_WHIRLWIND_LINES}, + {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_GOLD_RING}, + {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_PURPLE_RING}, + {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING}, + {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GREEN_LIGHT_WALL}, + {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_BLUE_LIGHT_WALL}, + {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_RED_LIGHT_WALL}, + {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GRAY_LIGHT_WALL}, + {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_ORANGE_LIGHT_WALL}, + {gBattleAnimSpriteGfx_BlackBall2, 0x0080, ANIM_TAG_BLACK_BALL_2}, + {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_PURPLE_GAS_CLOUD}, + {gBattleAnimSpriteGfx_SparkH, 0x0200, ANIM_TAG_SPARK_H}, + {gBattleAnimSpriteGfx_YellowStar, 0x0200, ANIM_TAG_YELLOW_STAR}, + {gBattleAnimSpriteGfx_LargeFreshEgg, 0x0080, ANIM_TAG_LARGE_FRESH_EGG}, + {gBattleAnimSpriteGfx_ShadowBall, 0x0200, ANIM_TAG_SHADOW_BALL}, + {gBattleAnimSpriteGfx_Lick, 0x0500, ANIM_TAG_LICK}, + {gBattleAnimSpriteGfx_VoidLines, 0x0800, ANIM_TAG_VOID_LINES}, + {gBattleAnimSpriteGfx_String, 0x0400, ANIM_TAG_STRING}, + {gBattleAnimSpriteGfx_WebThread, 0x0020, ANIM_TAG_WEB_THREAD}, + {gBattleAnimSpriteGfx_SpiderWeb, 0x0800, ANIM_TAG_SPIDER_WEB}, + {gBattleAnimSpriteGfx_Lightbulb, 0x0100, ANIM_TAG_LIGHTBULB}, + {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH}, + {gBattleAnimSpriteGfx_FocusEnergy, 0x0400, ANIM_TAG_FOCUS_ENERGY}, + {gBattleAnimSpriteGfx_SphereToCube, 0x0a00, ANIM_TAG_SPHERE_TO_CUBE}, + {gBattleAnimSpriteGfx_Tendrils, 0x1000, ANIM_TAG_TENDRILS}, + {gBattleAnimSpriteGfx_Eye, 0x0800, ANIM_TAG_EYE}, + {gBattleAnimSpriteGfx_WhiteShadow, 0x0400, ANIM_TAG_WHITE_SHADOW}, + {gBattleAnimSpriteGfx_TealAlert, 0x0200, ANIM_TAG_TEAL_ALERT}, + {gBattleAnimSpriteGfx_OpeningEye, 0x0800, ANIM_TAG_OPENING_EYE}, + {gBattleAnimSpriteGfx_RoundWhiteHalo, 0x0800, ANIM_TAG_ROUND_WHITE_HALO}, + {gBattleAnimSpriteGfx_FangAttack, 0x0800, ANIM_TAG_FANG_ATTACK}, + {gBattleAnimSpriteGfx_PurpleHandOutline, 0x0200, ANIM_TAG_PURPLE_HAND_OUTLINE}, + {gBattleAnimSpriteGfx_Moon, 0x0800, ANIM_TAG_MOON}, + {gBattleAnimSpriteGfx_GreenSparkle, 0x0200, ANIM_TAG_GREEN_SPARKLE}, + {gBattleAnimSpriteGfx_Spiral, 0x0800, ANIM_TAG_SPIRAL}, + {gBattleAnimSpriteGfx_SnoreZ, 0x0200, ANIM_TAG_SNORE_Z}, + {gBattleAnimSpriteGfx_Explosion, 0x0800, ANIM_TAG_EXPLOSION}, + {gBattleAnimSpriteGfx_Nail, 0x0400, ANIM_TAG_NAIL}, + {gBattleAnimSpriteGfx_GhostlySpirit, 0x0200, ANIM_TAG_GHOSTLY_SPIRIT}, + {gBattleAnimSpriteGfx_WarmRock, 0x0a80, ANIM_TAG_WARM_ROCK}, + {gBattleAnimSpriteGfx_BreakingEgg, 0x0600, ANIM_TAG_BREAKING_EGG}, + {gBattleAnimSpriteGfx_ThinRing, 0x0800, ANIM_TAG_THIN_RING}, + {gBattleAnimSpriteGfx_PunchImpact, 0x0200, ANIM_TAG_PUNCH_IMPACT}, + {gBattleAnimSpriteGfx_Bell, 0x0600, ANIM_TAG_BELL}, + {gBattleAnimSpriteGfx_MusicNotes2, 0x0800, ANIM_TAG_MUSIC_NOTES_2}, + {gBattleAnimSpriteGfx_SpeedDust, 0x0180, ANIM_TAG_SPEED_DUST}, + {gBattleAnimSpriteGfx_TornMetal, 0x0800, ANIM_TAG_TORN_METAL}, + {gBattleAnimSpriteGfx_ThoughtBubble, 0x0800, ANIM_TAG_THOUGHT_BUBBLE}, + {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_MAGENTA_HEART}, + {gBattleAnimSpriteGfx_ElectricOrbs, 0x0080, ANIM_TAG_ELECTRIC_ORBS}, + {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_CIRCLE_OF_LIGHT}, + {gBattleAnimSpriteGfx_Electricity, 0x0800, ANIM_TAG_ELECTRICITY}, + {gBattleAnimSpriteGfx_Finger2, 0x0600, ANIM_TAG_FINGER_2}, + {gBattleAnimSpriteGfx_MovementWaves, 0x0600, ANIM_TAG_MOVEMENT_WAVES}, + {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_RED_HEART}, + {gBattleAnimSpriteGfx_RedOrb, 0x0080, ANIM_TAG_RED_ORB}, + {gBattleAnimSpriteGfx_EyeSparkle, 0x0180, ANIM_TAG_EYE_SPARKLE}, + {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_PINK_HEART}, + {gBattleAnimSpriteGfx_Angel, 0x0200, ANIM_TAG_ANGEL}, + {gBattleAnimSpriteGfx_Devil, 0x0400, ANIM_TAG_DEVIL}, + {gBattleAnimSpriteGfx_Swipe, 0x0a00, ANIM_TAG_SWIPE}, + {gBattleAnimSpriteGfx_Roots, 0x0800, ANIM_TAG_ROOTS}, + {gBattleAnimSpriteGfx_ItemBag, 0x0200, ANIM_TAG_ITEM_BAG}, + {gBattleAnimSpriteGfx_JaggedMusicNote, 0x0400, ANIM_TAG_JAGGED_MUSIC_NOTE}, + {gBattleAnimSpriteGfx_Pokeball, 0x0080, ANIM_TAG_POKEBALL}, + {gBattleAnimSpriteGfx_Spotlight, 0x0800, ANIM_TAG_SPOTLIGHT}, + {gBattleAnimSpriteGfx_LetterZ, 0x0200, ANIM_TAG_LETTER_Z}, + {gBattleAnimSpriteGfx_RapidSpin, 0x0300, ANIM_TAG_RAPID_SPIN}, + {gBattleAnimSpriteGfx_TriAttackTriangle, 0x0800, ANIM_TAG_TRI_ATTACK_TRIANGLE}, + {gBattleAnimSpriteGfx_WispOrb, 0x0380, ANIM_TAG_WISP_ORB}, + {gBattleAnimSpriteGfx_WispFire, 0x0800, ANIM_TAG_WISP_FIRE}, + {gBattleAnimSpriteGfx_GoldStars, 0x00c0, ANIM_TAG_GOLD_STARS}, + {gBattleAnimSpriteGfx_EclipsingOrb, 0x0800, ANIM_TAG_ECLIPSING_ORB}, + {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_GRAY_ORB}, + {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_BLUE_ORB}, + {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_RED_ORB_2}, + {gBattleAnimSpriteGfx_PinkPetal, 0x0080, ANIM_TAG_PINK_PETAL}, + {gBattleAnimSpriteGfx_PainSplit, 0x0180, ANIM_TAG_PAIN_SPLIT}, + {gBattleAnimSpriteGfx_Confetti, 0x0180, ANIM_TAG_CONFETTI}, + {gBattleAnimSpriteGfx_GreenStar, 0x0200, ANIM_TAG_GREEN_STAR}, + {gBattleAnimSpriteGfx_PinkCloud, 0x0200, ANIM_TAG_PINK_CLOUD}, + {gBattleAnimSpriteGfx_SweatDrop, 0x0020, ANIM_TAG_SWEAT_DROP}, + {gBattleAnimSpriteGfx_GuardRing, 0x0400, ANIM_TAG_GUARD_RING}, + {gBattleAnimSpriteGfx_PurpleScratch, 0x0600, ANIM_TAG_PURPLE_SCRATCH}, + {gBattleAnimSpriteGfx_PurpleSwipe, 0x1000, ANIM_TAG_PURPLE_SWIPE}, + {gBattleAnimSpriteGfx_TagHand, 0x0400, ANIM_TAG_TAG_HAND}, + {gBattleAnimSpriteGfx_SmallRedEye, 0x0020, ANIM_TAG_SMALL_RED_EYE}, + {gBattleAnimSpriteGfx_HollowOrb, 0x0080, ANIM_TAG_HOLLOW_ORB}, + {gBattleAnimSpriteGfx_XSign, 0x0800, ANIM_TAG_X_SIGN}, + {gBattleAnimSpriteGfx_BluegreenOrb, 0x0080, ANIM_TAG_BLUEGREEN_ORB}, + {gBattleAnimSpriteGfx_PawPrint, 0x0200, ANIM_TAG_PAW_PRINT}, + {gBattleAnimSpriteGfx_PurpleFlame, 0x0400, ANIM_TAG_PURPLE_FLAME}, + {gBattleAnimSpriteGfx_RedBall, 0x0200, ANIM_TAG_RED_BALL}, + {gBattleAnimSpriteGfx_SmellingsaltEffect, 0x0200, ANIM_TAG_SMELLINGSALT_EFFECT}, + {gBattleAnimSpriteGfx_Meteor, 0x0800, ANIM_TAG_METEOR}, + {gBattleAnimSpriteGfx_FlatRock, 0x0280, ANIM_TAG_FLAT_ROCK}, + {gBattleAnimSpriteGfx_MagnifyingGlass, 0x0200, ANIM_TAG_MAGNIFYING_GLASS}, + {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_BROWN_ORB}, + {gBattleAnimSpriteGfx_MetalSoundWaves, 0x0400, ANIM_TAG_METAL_SOUND_WAVES}, + {gBattleAnimSpriteGfx_FlyingDirt, 0x0200, ANIM_TAG_FLYING_DIRT}, + {gBattleAnimSpriteGfx_IcicleSpear, 0x0200, ANIM_TAG_ICICLE_SPEAR}, + {gBattleAnimSpriteGfx_Hail, 0x0080, ANIM_TAG_HAIL}, + {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_RED_ORB}, + {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_GREEN_ORB}, + {gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE}, + {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, + {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB}, + {gBattleAnimSpriteGfx_Pokeblock, 0x0080, ANIM_TAG_POKEBLOCK}, + {gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER}, + {gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6}, + {gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH}, + {gBattleAnimSpriteGfx_SweatBead, 0x0020, ANIM_TAG_SWEAT_BEAD}, + {gBattleAnimSpriteGfx_Gem1, 0x0800, ANIM_TAG_GEM_1}, + {gBattleAnimSpriteGfx_Gem2, 0x0800, ANIM_TAG_GEM_2}, + {gBattleAnimSpriteGfx_Gem3, 0x0800, ANIM_TAG_GEM_3}, + {gBattleAnimSpriteGfx_SlamHit2, 0x1000, ANIM_TAG_SLAM_HIT_2}, + {gBattleAnimSpriteGfx_Recycle, 0x0800, ANIM_TAG_RECYCLE}, + {gBattleAnimSpriteGfx_RedParticles, 0x00a0, ANIM_TAG_RED_PARTICLES}, + {gBattleAnimSpriteGfx_Protect, 0x0800, ANIM_TAG_PROTECT}, + {gBattleAnimSpriteGfx_DirtMound, 0x0200, ANIM_TAG_DIRT_MOUND}, + {gBattleAnimSpriteGfx_Shock3, 0x0600, ANIM_TAG_SHOCK_3}, + {gBattleAnimSpriteGfx_WeatherBall, 0x0200, ANIM_TAG_WEATHER_BALL}, + {gBattleAnimSpriteGfx_Bird, 0x0800, ANIM_TAG_BIRD}, + {gBattleAnimSpriteGfx_CrossImpact, 0x0200, ANIM_TAG_CROSS_IMPACT}, + {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH_2}, + {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_WHIP_HIT}, + {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING_2}, +}; + +const struct CompressedSpritePalette gBattleAnimPaletteTable[] = +{ + {gBattleAnimSpritePal_Bone, ANIM_TAG_BONE}, + {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK}, + {gBattleAnimSpritePal_Pencil, ANIM_TAG_PENCIL}, + {gBattleAnimSpritePal_AirWave, ANIM_TAG_AIR_WAVE}, + {gBattleAnimSpritePal_Orb, ANIM_TAG_ORB}, + {gBattleAnimSpritePal_Sword, ANIM_TAG_SWORD}, + {gBattleAnimSpritePal_Seed, ANIM_TAG_SEED}, + {gBattleAnimSpritePal_Explosion6, ANIM_TAG_EXPLOSION_6}, + {gBattleAnimSpritePal_PinkOrb, ANIM_TAG_PINK_ORB}, + {gBattleAnimSpritePal_Gust, ANIM_TAG_GUST}, + {gBattleAnimSpritePal_IceCube, ANIM_TAG_ICE_CUBE}, + {gBattleAnimSpritePal_Spark2, ANIM_TAG_SPARK_2}, + {gBattleAnimSpritePal_Orange, ANIM_TAG_ORANGE}, + {gBattleAnimSpritePal_YellowBall, ANIM_TAG_YELLOW_BALL}, + {gBattleAnimSpritePal_LockOn, ANIM_TAG_LOCK_ON}, + {gBattleAnimSpritePal_TiedBag, ANIM_TAG_TIED_BAG}, + {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_SMOKE}, + {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_BALL}, + {gBattleAnimSpritePal_Conversion, ANIM_TAG_CONVERSION}, + {gBattleAnimSpritePal_Glass, ANIM_TAG_GLASS}, + {gBattleAnimSpritePal_HornHit, ANIM_TAG_HORN_HIT}, + {gBattleAnimSpritePal_Hit, ANIM_TAG_HIT}, + {gBattleAnimSpritePal_Hit2, ANIM_TAG_HIT_2}, + {gBattleAnimSpritePal_BlueShards, ANIM_TAG_BLUE_SHARDS}, + {gBattleAnimSpritePal_ClosingEye, ANIM_TAG_CLOSING_EYE}, + {gBattleAnimSpritePal_WavingHand, ANIM_TAG_WAVING_HAND}, + {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_HIT_DUPLICATE}, + {gBattleAnimSpritePal_Leer, ANIM_TAG_LEER}, + {gBattleAnimSpritePal_BlueBurst, ANIM_TAG_BLUE_BURST}, + {gBattleAnimSpritePal_SmallEmber, ANIM_TAG_SMALL_EMBER}, + {gBattleAnimSpritePal_GraySmoke, ANIM_TAG_GRAY_SMOKE}, + {gBattleAnimSpritePal_BlueStar, ANIM_TAG_BLUE_STAR}, + {gBattleAnimSpritePal_BubbleBurst, ANIM_TAG_BUBBLE_BURST}, + {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE}, + {gBattleAnimSpritePal_Fire, ANIM_TAG_SPINNING_FIRE}, + {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE_PLUME}, + {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING_2}, + {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING}, + {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_CLAW_SLASH_2}, + {gBattleAnimSpritePal_ClawSlash, ANIM_TAG_CLAW_SLASH}, + {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_3}, + {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_2}, + {gBattleAnimSpritePal_BubbleBurst2, ANIM_TAG_BUBBLE_BURST_2}, + {gBattleAnimSpritePal_IceChunk, ANIM_TAG_ICE_CHUNK}, + {gBattleAnimSpritePal_Glass2, ANIM_TAG_GLASS_2}, + {gBattleAnimSpritePal_PinkHeart2, ANIM_TAG_PINK_HEART_2}, + {gBattleAnimSpritePal_SapDrip, ANIM_TAG_SAP_DRIP}, + {gBattleAnimSpritePal_SapDrip2, ANIM_TAG_SAP_DRIP}, + {gBattleAnimSpritePal_Sparkle1, ANIM_TAG_SPARKLE_1}, + {gBattleAnimSpritePal_Sparkle2, ANIM_TAG_SPARKLE_2}, + {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_FOOT}, + {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_MONSTER_FOOT}, + {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_HAND}, + {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_NOISE_LINE}, + {gBattleAnimSpritePal_YellowUnk, ANIM_TAG_YELLOW_UNK}, + {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_RED_FIST}, + {gBattleAnimSpritePal_SlamHit, ANIM_TAG_SLAM_HIT}, + {gBattleAnimSpritePal_Ring, ANIM_TAG_RING}, + {gBattleAnimSpritePal_Rocks, ANIM_TAG_ROCKS}, + {gBattleAnimSpritePal_Z, ANIM_TAG_Z}, + {gBattleAnimSpritePal_YellowUnk2, ANIM_TAG_YELLOW_UNK_2}, + {gBattleAnimSpritePal_AirSlash, ANIM_TAG_AIR_SLASH}, + {gBattleAnimSpritePal_SpinningGreenOrbs, ANIM_TAG_SPINNING_GREEN_ORBS}, + {gBattleAnimSpritePal_Leaf, ANIM_TAG_LEAF}, + {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER}, + {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POISON_POWDER}, + {gBattleAnimSpritePal_BrownTriangle, ANIM_TAG_BROWN_TRIANGLE}, + {gBattleAnimSpritePal_SleepPowder, ANIM_TAG_SLEEP_POWDER}, + {gBattleAnimSpritePal_StunSpore, ANIM_TAG_STUN_SPORE}, + {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POWDER}, + {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_3}, + {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_4}, + {gBattleAnimSpritePal_MusicNotes, ANIM_TAG_MUSIC_NOTES}, + {gBattleAnimSpritePal_Duck, ANIM_TAG_DUCK}, + {gBattleAnimSpritePal_MudSand, ANIM_TAG_MUD_SAND}, + {gBattleAnimSpritePal_Alert, ANIM_TAG_ALERT}, + {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES}, + {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES_2}, + {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK_4}, + {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK}, + {gBattleAnimSpritePal_Bell2, ANIM_TAG_BELL_2}, + {gBattleAnimSpritePal_PinkGlove, ANIM_TAG_PINK_GLOVE}, + {gBattleAnimSpritePal_BlueLines, ANIM_TAG_BLUE_LINES}, + {gBattleAnimSpritePal_Impact3, ANIM_TAG_IMPACT_3}, + {gBattleAnimSpritePal_Impact2, ANIM_TAG_IMPACT_2}, + {gBattleAnimSpritePal_Reticle, ANIM_TAG_RETICLE}, + {gBattleAnimSpritePal_Breath, ANIM_TAG_BREATH}, + {gBattleAnimSpritePal_Anger, ANIM_TAG_ANGER}, + {gBattleAnimSpritePal_Snowball, ANIM_TAG_SNOWBALL}, + {gBattleAnimSpritePal_Vine, ANIM_TAG_VINE}, + {gBattleAnimSpritePal_Sword2, ANIM_TAG_SWORD_2}, + {gBattleAnimSpritePal_Clapping, ANIM_TAG_CLAPPING}, + {gBattleAnimSpritePal_RedTube, ANIM_TAG_RED_TUBE}, + {gBattleAnimSpritePal_Amnesia, ANIM_TAG_AMNESIA}, + {gBattleAnimSpritePal_String2, ANIM_TAG_STRING_2}, + {gBattleAnimSpritePal_Pencil2, ANIM_TAG_PENCIL_2}, + {gBattleAnimSpritePal_Petal, ANIM_TAG_PETAL}, + {gBattleAnimSpritePal_BentSpoon, ANIM_TAG_BENT_SPOON}, + {gBattleAnimSpritePal_String2, ANIM_TAG_WEB}, + {gBattleAnimSpritePal_MilkBottle, ANIM_TAG_MILK_BOTTLE}, + {gBattleAnimSpritePal_Coin, ANIM_TAG_COIN}, + {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_CRACKED_EGG}, + {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_HATCHED_EGG}, + {gBattleAnimSpritePal_FreshEgg, ANIM_TAG_FRESH_EGG}, + {gBattleAnimSpritePal_Fangs, ANIM_TAG_FANGS}, + {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_2}, + {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_3}, + {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET}, + {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET_2}, + {gBattleAnimSpritePal_Seed2, ANIM_TAG_SEED_2}, + {gBattleAnimSpritePal_Seed2, ANIM_TAG_SPROUT}, + {gBattleAnimSpritePal_RedWand, ANIM_TAG_RED_WAND}, + {gBattleAnimSpritePal_PurpleGreenUnk, ANIM_TAG_PURPLE_GREEN_UNK}, + {gBattleAnimSpritePal_WaterColumn, ANIM_TAG_WATER_COLUMN}, + {gBattleAnimSpritePal_MudUnk, ANIM_TAG_MUD_UNK}, + {gBattleAnimSpritePal_RainDrops, ANIM_TAG_RAIN_DROPS}, + {gBattleAnimSpritePal_FurySwipes, ANIM_TAG_FURY_SWIPES}, + {gBattleAnimSpritePal_Vine2, ANIM_TAG_VINE_2}, + {gBattleAnimSpritePal_Teeth, ANIM_TAG_TEETH}, + {gBattleAnimSpritePal_Bone2, ANIM_TAG_BONE_2}, + {gBattleAnimSpritePal_WhiteBag, ANIM_TAG_WHITE_BAG}, + {gBattleAnimSpritePal_Unknown, ANIM_TAG_UNKNOWN}, + {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_CORAL}, + {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_DROPLET}, + {gBattleAnimSpritePal_Shock2, ANIM_TAG_SHOCK_2}, + {gBattleAnimSpritePal_ClosingEye2, ANIM_TAG_CLOSING_EYE_2}, + {gBattleAnimSpritePal_MetalBall, ANIM_TAG_METAL_BALL}, + {gBattleAnimSpritePal_MonsterDoll, ANIM_TAG_MONSTER_DOLL}, + {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND}, + {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND_2}, + {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_4}, + {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_5}, + {gBattleAnimSpritePal_Tongue, ANIM_TAG_TONGUE}, + {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE}, + {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE_2}, + {gBattleAnimSpritePal_Impact, ANIM_TAG_IMPACT}, + {gBattleAnimSpritePal_CircleImpact, ANIM_TAG_CIRCLE_IMPACT}, + {gBattleAnimSpritePal_Impact, ANIM_TAG_SCRATCH}, + {gBattleAnimSpritePal_Impact, ANIM_TAG_CUT}, + {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_SHARP_TEETH}, + {gBattleAnimSpritePal_RainbowRings, ANIM_TAG_RAINBOW_RINGS}, + {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_CRYSTALS}, + {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_SPIKES}, + {gBattleAnimSpritePal_HandsAndFeet, ANIM_TAG_HANDS_AND_FEET}, + {gBattleAnimSpritePal_MistCloud, ANIM_TAG_MIST_CLOUD}, + {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_CLAMP}, + {gBattleAnimSpritePal_RainDrops, ANIM_TAG_BUBBLE}, + {gBattleAnimSpritePal_Orbs, ANIM_TAG_ORBS}, + {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_IMPACT}, + {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_ORB}, + {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_POISON_BUBBLE}, + {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_TOXIC_BUBBLE}, + {gBattleAnimSpritePal_Spikes, ANIM_TAG_SPIKES}, + {gBattleAnimSpritePal_HornHit2, ANIM_TAG_HORN_HIT_2}, + {gBattleAnimSpritePal_AirWave2, ANIM_TAG_AIR_WAVE_2}, + {gBattleAnimSpritePal_SmallBubbles, ANIM_TAG_SMALL_BUBBLES}, + {gBattleAnimSpritePal_RoundShadow, ANIM_TAG_ROUND_SHADOW}, + {gBattleAnimSpritePal_Sunlight, ANIM_TAG_SUNLIGHT}, + {gBattleAnimSpritePal_Spore, ANIM_TAG_SPORE}, + {gBattleAnimSpritePal_Flower, ANIM_TAG_FLOWER}, + {gBattleAnimSpritePal_RazorLeaf, ANIM_TAG_RAZOR_LEAF}, + {gBattleAnimSpritePal_Needle, ANIM_TAG_NEEDLE}, + {gBattleAnimSpritePal_WhirlwindLines, ANIM_TAG_WHIRLWIND_LINES}, + {gBattleAnimSpritePal_GoldRing, ANIM_TAG_GOLD_RING}, + {gBattleAnimSpritePal_PurpleRing, ANIM_TAG_PURPLE_RING}, + {gBattleAnimSpritePal_BlueRing, ANIM_TAG_BLUE_RING}, + {gBattleAnimSpritePal_GreenLightWall, ANIM_TAG_GREEN_LIGHT_WALL}, + {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_BLUE_LIGHT_WALL}, + {gBattleAnimSpritePal_RedLightWall, ANIM_TAG_RED_LIGHT_WALL}, + {gBattleAnimSpritePal_GrayLightWall, ANIM_TAG_GRAY_LIGHT_WALL}, + {gBattleAnimSpritePal_OrangeLightWall, ANIM_TAG_ORANGE_LIGHT_WALL}, + {gBattleAnimSpritePal_BlackBall2, ANIM_TAG_BLACK_BALL_2}, + {gBattleAnimSpritePal_PurpleGasCloud, ANIM_TAG_PURPLE_GAS_CLOUD}, + {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK_H}, + {gBattleAnimSpritePal_YellowStar, ANIM_TAG_YELLOW_STAR}, + {gBattleAnimSpritePal_LargeFreshEgg, ANIM_TAG_LARGE_FRESH_EGG}, + {gBattleAnimSpritePal_ShadowBall, ANIM_TAG_SHADOW_BALL}, + {gBattleAnimSpritePal_Lick, ANIM_TAG_LICK}, + {gBattleAnimSpritePal_VoidLines, ANIM_TAG_VOID_LINES}, + {gBattleAnimSpritePal_String, ANIM_TAG_STRING}, + {gBattleAnimSpritePal_String, ANIM_TAG_WEB_THREAD}, + {gBattleAnimSpritePal_String, ANIM_TAG_SPIDER_WEB}, + {gBattleAnimSpritePal_Lightbulb, ANIM_TAG_LIGHTBULB}, + {gBattleAnimSpritePal_Slash, ANIM_TAG_SLASH}, + {gBattleAnimSpritePal_FocusEnergy, ANIM_TAG_FOCUS_ENERGY}, + {gBattleAnimSpritePal_SphereToCube, ANIM_TAG_SPHERE_TO_CUBE}, + {gBattleAnimSpritePal_Tendrils, ANIM_TAG_TENDRILS}, + {gBattleAnimSpritePal_Eye, ANIM_TAG_EYE}, + {gBattleAnimSpritePal_WhiteShadow, ANIM_TAG_WHITE_SHADOW}, + {gBattleAnimSpritePal_TealAlert, ANIM_TAG_TEAL_ALERT}, + {gBattleAnimSpritePal_OpeningEye, ANIM_TAG_OPENING_EYE}, + {gBattleAnimSpritePal_RoundWhiteHalo, ANIM_TAG_ROUND_WHITE_HALO}, + {gBattleAnimSpritePal_FangAttack, ANIM_TAG_FANG_ATTACK}, + {gBattleAnimSpritePal_PurpleHandOutline, ANIM_TAG_PURPLE_HAND_OUTLINE}, + {gBattleAnimSpritePal_Moon, ANIM_TAG_MOON}, + {gBattleAnimSpritePal_GreenSparkle, ANIM_TAG_GREEN_SPARKLE}, + {gBattleAnimSpritePal_Spiral, ANIM_TAG_SPIRAL}, + {gBattleAnimSpritePal_SnoreZ, ANIM_TAG_SNORE_Z}, + {gBattleAnimSpritePal_Explosion, ANIM_TAG_EXPLOSION}, + {gBattleAnimSpritePal_Nail, ANIM_TAG_NAIL}, + {gBattleAnimSpritePal_GhostlySpirit, ANIM_TAG_GHOSTLY_SPIRIT}, + {gBattleAnimSpritePal_WarmRock, ANIM_TAG_WARM_ROCK}, + {gBattleAnimSpritePal_BreakingEgg, ANIM_TAG_BREAKING_EGG}, + {gBattleAnimSpritePal_ThinRing, ANIM_TAG_THIN_RING}, + {gBattleAnimSpritePal_PunchImpact, ANIM_TAG_PUNCH_IMPACT}, + {gBattleAnimSpritePal_Bell, ANIM_TAG_BELL}, + {gBattleAnimSpritePal_MusicNotes2, ANIM_TAG_MUSIC_NOTES_2}, + {gBattleAnimSpritePal_SpeedDust, ANIM_TAG_SPEED_DUST}, + {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_TORN_METAL}, + {gBattleAnimSpritePal_ThoughtBubble, ANIM_TAG_THOUGHT_BUBBLE}, + {gBattleAnimSpritePal_MagentaHeart, ANIM_TAG_MAGENTA_HEART}, + {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRIC_ORBS}, + {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_CIRCLE_OF_LIGHT}, + {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRICITY}, + {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER_2}, + {gBattleAnimSpritePal_MovementWaves, ANIM_TAG_MOVEMENT_WAVES}, + {gBattleAnimSpritePal_RedHeart, ANIM_TAG_RED_HEART}, + {gBattleAnimSpritePal_RedOrb, ANIM_TAG_RED_ORB}, + {gBattleAnimSpritePal_EyeSparkle, ANIM_TAG_EYE_SPARKLE}, + {gBattleAnimSpritePal_PinkHeart, ANIM_TAG_PINK_HEART}, + {gBattleAnimSpritePal_Angel, ANIM_TAG_ANGEL}, + {gBattleAnimSpritePal_Devil, ANIM_TAG_DEVIL}, + {gBattleAnimSpritePal_Swipe, ANIM_TAG_SWIPE}, + {gBattleAnimSpritePal_Roots, ANIM_TAG_ROOTS}, + {gBattleAnimSpritePal_ItemBag, ANIM_TAG_ITEM_BAG}, + {gBattleAnimSpritePal_JaggedMusicNote, ANIM_TAG_JAGGED_MUSIC_NOTE}, + {gBattleAnimSpritePal_Pokeball, ANIM_TAG_POKEBALL}, + {gBattleAnimSpritePal_Pokeball, ANIM_TAG_SPOTLIGHT}, + {gBattleAnimSpritePal_LetterZ, ANIM_TAG_LETTER_Z}, + {gBattleAnimSpritePal_RapidSpin, ANIM_TAG_RAPID_SPIN}, + {gBattleAnimSpritePal_TriAttackTriangle, ANIM_TAG_TRI_ATTACK_TRIANGLE}, + {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_ORB}, + {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_FIRE}, + {gBattleAnimSpritePal_GoldStars, ANIM_TAG_GOLD_STARS}, + {gBattleAnimSpritePal_EclipsingOrb, ANIM_TAG_ECLIPSING_ORB}, + {gBattleAnimSpritePal_GrayOrb, ANIM_TAG_GRAY_ORB}, + {gBattleAnimSpritePal_BlueOrb, ANIM_TAG_BLUE_ORB}, + {gBattleAnimSpritePal_RedOrb2, ANIM_TAG_RED_ORB_2}, + {gBattleAnimSpritePal_PinkPetal, ANIM_TAG_PINK_PETAL}, + {gBattleAnimSpritePal_PainSplit, ANIM_TAG_PAIN_SPLIT}, + {gBattleAnimSpritePal_Confetti, ANIM_TAG_CONFETTI}, + {gBattleAnimSpritePal_GreenStar, ANIM_TAG_GREEN_STAR}, + {gBattleAnimSpritePal_PinkCloud, ANIM_TAG_PINK_CLOUD}, + {gBattleAnimSpritePal_SweatDrop, ANIM_TAG_SWEAT_DROP}, + {gBattleAnimSpritePal_GuardRing, ANIM_TAG_GUARD_RING}, + {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SCRATCH}, + {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SWIPE}, + {gBattleAnimSpritePal_Finger, ANIM_TAG_TAG_HAND}, + {gBattleAnimSpritePal_SmallRedEye, ANIM_TAG_SMALL_RED_EYE}, + {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_HOLLOW_ORB}, + {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_X_SIGN}, + {gBattleAnimSpritePal_BluegreenOrb, ANIM_TAG_BLUEGREEN_ORB}, + {gBattleAnimSpritePal_PawPrint, ANIM_TAG_PAW_PRINT}, + {gBattleAnimSpritePal_PurpleFlame, ANIM_TAG_PURPLE_FLAME}, + {gBattleAnimSpritePal_RedBall, ANIM_TAG_RED_BALL}, + {gBattleAnimSpritePal_SmellingsaltEffect, ANIM_TAG_SMELLINGSALT_EFFECT}, + {gBattleAnimSpritePal_Meteor, ANIM_TAG_METEOR}, + {gBattleAnimSpritePal_FlatRock, ANIM_TAG_FLAT_ROCK}, + {gBattleAnimSpritePal_MagnifyingGlass, ANIM_TAG_MAGNIFYING_GLASS}, + {gBattleAnimSpritePal_BrownOrb, ANIM_TAG_BROWN_ORB}, + {gBattleAnimSpritePal_MetalSoundWaves, ANIM_TAG_METAL_SOUND_WAVES}, + {gBattleAnimSpritePal_FlyingDirt, ANIM_TAG_FLYING_DIRT}, + {gBattleAnimSpritePal_IcicleSpear, ANIM_TAG_ICICLE_SPEAR}, + {gBattleAnimSpritePal_Hail, ANIM_TAG_HAIL}, + {gBattleAnimSpritePal_GlowyRedOrb, ANIM_TAG_GLOWY_RED_ORB}, + {gBattleAnimSpritePal_GlowyGreenOrb, ANIM_TAG_GLOWY_GREEN_ORB}, + {gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE}, + {gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, + {gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB}, + {gBattleAnimSpritePal_Pokeblock, ANIM_TAG_POKEBLOCK}, + {gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER}, + {gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6}, + {gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH}, + {gBattleAnimSpritePal_Splash, ANIM_TAG_SWEAT_BEAD}, + {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_1}, + {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_2}, + {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_3}, + {gBattleAnimSpritePal_SlamHit2, ANIM_TAG_SLAM_HIT_2}, + {gBattleAnimSpritePal_Recycle, ANIM_TAG_RECYCLE}, + {gBattleAnimSpritePal_RedParticles, ANIM_TAG_RED_PARTICLES}, + {gBattleAnimSpritePal_Protect, ANIM_TAG_PROTECT}, + {gBattleAnimSpritePal_DirtMound, ANIM_TAG_DIRT_MOUND}, + {gBattleAnimSpritePal_Shock3, ANIM_TAG_SHOCK_3}, + {gBattleAnimSpritePal_WeatherBall, ANIM_TAG_WEATHER_BALL}, + {gBattleAnimSpritePal_Bird, ANIM_TAG_BIRD}, + {gBattleAnimSpritePal_CrossImpact, ANIM_TAG_CROSS_IMPACT}, + {gBattleAnimSpritePal_Slash2, ANIM_TAG_SLASH_2}, + {gBattleAnimSpritePal_WhipHit, ANIM_TAG_WHIP_HIT}, + {gBattleAnimSpritePal_BlueRing2, ANIM_TAG_BLUE_RING_2}, +}; + +const struct BattleAnimBackground gBattleAnimBackgroundTable[] = +{ + [BG_NONE] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, + [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark}, + [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost}, + [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic}, + [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent}, + [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer}, + [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests}, + [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill}, + [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests}, + [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent}, + [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer}, + [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder}, + [BG_GUILLOTINE_OPPONENT] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineOpponent}, + [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer}, + [BG_GUILLOTINE_CONTESTS] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineContests}, + [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice}, + [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic}, + [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir}, + [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill}, + [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests}, + [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora}, + [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure}, + [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent}, + [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer}, + [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent}, + [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer}, + [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests}, +}; From b0598b1aef16815272187adf84a999b6f190c8ba Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 11 Oct 2021 20:49:56 -0400 Subject: [PATCH 295/762] Clean up recorded_battle, add MOVE_IS_PERMANENT --- include/battle.h | 5 +++ include/recorded_battle.h | 6 ++-- src/battle_main.c | 4 +-- src/battle_script_commands.c | 11 +++--- src/battle_util.c | 13 +++---- src/pokemon.c | 8 ++--- src/recorded_battle.c | 69 +++++++++++++++++------------------- 7 files changed, 53 insertions(+), 63 deletions(-) diff --git a/include/battle.h b/include/battle.h index 5ccff8ce332a..f793c779f77c 100644 --- a/include/battle.h +++ b/include/battle.h @@ -17,6 +17,11 @@ #define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE) #define GET_BATTLER_SIDE2(battler) (GET_BATTLER_POSITION(battler) & BIT_SIDE) +// Used to exclude moves learned temporarily by Transform or Mimic +#define MOVE_IS_PERMANENT(battler, moveSlot) \ + (!(gBattleMons[battler].status2 & STATUS2_TRANSFORMED) \ + && !(gDisableStructs[battler].mimickedMoves & gBitTable[moveSlot])) + // Battle Actions // These determine what each battler will do in a turn #define B_ACTION_USE_MOVE 0 diff --git a/include/recorded_battle.h b/include/recorded_battle.h index 8ea3927743e6..9b8939403837 100644 --- a/include/recorded_battle.h +++ b/include/recorded_battle.h @@ -8,7 +8,7 @@ extern u8 gRecordedBattleMultiplayerId; #define B_RECORD_MODE_RECORDING 1 #define B_RECORD_MODE_PLAYBACK 2 -void RecordedBattle_Init(u8 arg0); +void RecordedBattle_Init(u8 mode); void RecordedBattle_SetTrainerInfo(void); void RecordedBattle_SetBattlerAction(u8 battlerId, u8 action); void RecordedBattle_ClearBattlerAction(u8 battlerId, u8 bytesToClear); @@ -23,12 +23,12 @@ u8 GetRecordedBattleFronterBrainSymbol(void); void RecordedBattle_SaveParties(void); u8 GetActiveBattlerLinkPlayerGender(void); void RecordedBattle_ClearFrontierPassFlag(void); -void RecordedBattle_SetFrontierPassFlagFromHword(u16 arg0); +void RecordedBattle_SetFrontierPassFlagFromHword(u16 flags); u8 RecordedBattle_GetFrontierPassFlag(void); u8 GetBattleSceneInRecordedBattle(void); u8 GetTextSpeedInRecordedBattle(void); void RecordedBattle_CopyBattlerMoves(void); -void sub_818603C(u8 arg0); +void RecordedBattle_CheckMovesetChanges(u8 mode); u32 GetAiScriptsInRecordedBattle(void); void RecordedBattle_SetPlaybackFinished(void); bool8 RecordedBattle_CanStopPlayback(void); diff --git a/src/battle_main.c b/src/battle_main.c index 9b3afb7f325e..1d0f3454b86b 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -4340,7 +4340,7 @@ static void HandleTurnActionSelectionState(void) sub_803CDF8(); return; default: - sub_818603C(2); + RecordedBattle_CheckMovesetChanges(B_RECORD_MODE_PLAYBACK); if ((gBattleBufferB[gActiveBattler][2] | (gBattleBufferB[gActiveBattler][3] << 8)) == 0xFFFF) { gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN; @@ -4508,7 +4508,7 @@ static void HandleTurnActionSelectionState(void) // Check if everyone chose actions. if (gBattleCommunication[ACTIONS_CONFIRMED_COUNT] == gBattlersCount) { - sub_818603C(1); + RecordedBattle_CheckMovesetChanges(B_RECORD_MODE_RECORDING); gBattleMainFunc = SetActionsAndBattlersTurnOrder; if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index b564fe68013e..3e91b64b12ea 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1235,8 +1235,7 @@ static void Cmd_ppreduce(void) else gBattleMons[gBattlerAttacker].pp[gCurrMovePos] = 0; - if (!(gBattleMons[gBattlerAttacker].status2 & STATUS2_TRANSFORMED) - && !((gDisableStructs[gBattlerAttacker].mimickedMoves) & gBitTable[gCurrMovePos])) + if (MOVE_IS_PERMANENT(gBattlerAttacker, gCurrMovePos)) { gActiveBattler = gBattlerAttacker; BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0, 1, &gBattleMons[gBattlerAttacker].pp[gCurrMovePos]); @@ -5436,17 +5435,14 @@ static void Cmd_yesnoboxlearnmove(void) RemoveMonPPBonus(&gPlayerParty[gBattleStruct->expGetterMonId], movePosition); SetMonMoveSlot(&gPlayerParty[gBattleStruct->expGetterMonId], gMoveToLearn, movePosition); - if (gBattlerPartyIndexes[0] == gBattleStruct->expGetterMonId - && !(gBattleMons[0].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[0].mimickedMoves & gBitTable[movePosition])) + if (gBattlerPartyIndexes[0] == gBattleStruct->expGetterMonId && MOVE_IS_PERMANENT(0, movePosition)) { RemoveBattleMonPPBonus(&gBattleMons[0], movePosition); SetBattleMonMoveSlot(&gBattleMons[0], gMoveToLearn, movePosition); } if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId - && !(gBattleMons[2].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[2].mimickedMoves & gBitTable[movePosition])) + && MOVE_IS_PERMANENT(2, movePosition)) { RemoveBattleMonPPBonus(&gBattleMons[2], movePosition); SetBattleMonMoveSlot(&gBattleMons[2], gMoveToLearn, movePosition); @@ -8241,6 +8237,7 @@ static void Cmd_tryspiteppreduce(void) gBattleMons[gBattlerTarget].pp[i] -= ppToDeduct; gActiveBattler = gBattlerTarget; + // if (MOVE_IS_PERMANENT(gActiveBattler, i)), but backwards if (!(gDisableStructs[gActiveBattler].mimickedMoves & gBitTable[i]) && !(gBattleMons[gActiveBattler].status2 & STATUS2_TRANSFORMED)) { diff --git a/src/battle_util.c b/src/battle_util.c index 11fd31524fac..ac2fbd34fe11 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -750,8 +750,7 @@ void PressurePPLose(u8 target, u8 attacker, u16 move) if (gBattleMons[attacker].pp[moveIndex] != 0) gBattleMons[attacker].pp[moveIndex]--; - if (!(gBattleMons[attacker].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[attacker].mimickedMoves & gBitTable[moveIndex])) + if (MOVE_IS_PERMANENT(attacker, moveIndex)) { gActiveBattler = attacker; BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + moveIndex, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]); @@ -783,9 +782,7 @@ void PressurePPLoseOnUsingImprison(u8 attacker) } } - if (imprisonPos != 4 - && !(gBattleMons[attacker].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[attacker].mimickedMoves & gBitTable[imprisonPos])) + if (imprisonPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, imprisonPos)) { gActiveBattler = attacker; BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + imprisonPos, 0, 1, &gBattleMons[gActiveBattler].pp[imprisonPos]); @@ -816,9 +813,7 @@ void PressurePPLoseOnUsingPerishSong(u8 attacker) } } - if (perishSongPos != MAX_MON_MOVES - && !(gBattleMons[attacker].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[attacker].mimickedMoves & gBitTable[perishSongPos])) + if (perishSongPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, perishSongPos)) { gActiveBattler = attacker; BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBattler].pp[perishSongPos]); @@ -3598,7 +3593,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) MarkBattlerForControllerExec(gActiveBattler); break; case ITEM_PP_CHANGE: - if (!(gBattleMons[battlerId].status2 & STATUS2_TRANSFORMED) && !(gDisableStructs[battlerId].mimickedMoves & gBitTable[i])) + if (MOVE_IS_PERMANENT(battlerId, i)) gBattleMons[battlerId].pp[i] = changedPP; break; } diff --git a/src/pokemon.c b/src/pokemon.c index 011e288db8c6..f4ca3f4c1003 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5078,9 +5078,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov SetMonData(mon, MON_DATA_PP1 + temp2, &dataUnsigned); // Heal battler PP too (if applicable) - if (gMain.inBattle - && battlerId != MAX_BATTLERS_COUNT && !(gBattleMons[battlerId].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[battlerId].mimickedMoves & gBitTable[temp2])) + if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battlerId, temp2)) gBattleMons[battlerId].pp[temp2] = dataUnsigned; retVal = FALSE; @@ -5106,9 +5104,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov SetMonData(mon, MON_DATA_PP1 + moveIndex, &dataUnsigned); // Heal battler PP too (if applicable) - if (gMain.inBattle - && battlerId != MAX_BATTLERS_COUNT && !(gBattleMons[battlerId].status2 & STATUS2_TRANSFORMED) - && !(gDisableStructs[battlerId].mimickedMoves & gBitTable[moveIndex])) + if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battlerId, moveIndex)) gBattleMons[battlerId].pp[moveIndex] = dataUnsigned; retVal = FALSE; diff --git a/src/recorded_battle.c b/src/recorded_battle.c index 69ee902105a3..e6d5b165b8f1 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -1,6 +1,7 @@ #include "global.h" #include "battle.h" #include "battle_anim.h" +#include "battle_controllers.h" #include "recorded_battle.h" #include "main.h" #include "pokemon.h" @@ -35,12 +36,6 @@ struct PlayerInfo u16 language; }; -struct MovePp -{ - u16 moves[MAX_MON_MOVES]; - u8 pp[MAX_MON_MOVES]; -}; - struct RecordedBattleSave { struct Pokemon playerParty[PARTY_SIZE]; @@ -91,7 +86,7 @@ EWRAM_DATA static u32 sBattleFlags = 0; 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[2][MAX_MON_MOVES] = {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 bool8 sIsPlaybackFinished = 0; EWRAM_DATA static u8 sRecordMixFriendName[PLAYER_NAME_LENGTH + 1] = {0}; @@ -674,9 +669,9 @@ void RecordedBattle_ClearFrontierPassFlag(void) } // Set sFrontierPassFlag to received state of FLAG_SYS_FRONTIER_PASS -void RecordedBattle_SetFrontierPassFlagFromHword(u16 arg0) +void RecordedBattle_SetFrontierPassFlagFromHword(u16 flags) { - sFrontierPassFlag |= (arg0 & 0x8000) >> 15; + sFrontierPassFlag |= (flags & (1 << 15)) >> 15; } u8 RecordedBattle_GetFrontierPassFlag(void) @@ -706,14 +701,14 @@ void RecordedBattle_CopyBattlerMoves(void) return; for (i = 0; i < MAX_MON_MOVES; i++) - { sPlayerMonMoves[gActiveBattler / 2][i] = gBattleMons[gActiveBattler].moves[i]; - } } +// This is a special battle action only used by this function +// It shares a value with B_ACTION_SAFARI_POKEBLOCK, which can never occur in a recorded battle. #define ACTION_MOVE_CHANGE 6 -void sub_818603C(u8 arg0) +void RecordedBattle_CheckMovesetChanges(u8 mode) { s32 battlerId, j, k; @@ -725,9 +720,9 @@ void sub_818603C(u8 arg0) // Player's side only if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT) { - if (arg0 == 1) + if (mode == B_RECORD_MODE_RECORDING) { - // Check if any of the battler's moves have changed + // 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]) @@ -750,63 +745,65 @@ void sub_818603C(u8 arg0) } } } - else + else // B_RECORD_MODE_PLAYBACK { if (sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]] == ACTION_MOVE_CHANGE) { u8 ppBonuses[MAX_MON_MOVES]; - u8 array1[MAX_MON_MOVES]; - u8 array2[MAX_MON_MOVES]; - struct MovePp movePp; - u8 array3[(MAX_MON_MOVES * 2)]; - u8 var; + u8 moveSlots[MAX_MON_MOVES]; + u8 mimickedMoveSlots[MAX_MON_MOVES]; + struct ChooseMoveStruct movePp; + u8 ppBonusSet; + // We know the current action is ACTION_MOVE_CHANGE, retrieve + // it without saving it to move on to the next action. RecordedBattle_GetBattlerAction(battlerId); + for (j = 0; j < MAX_MON_MOVES; j++) ppBonuses[j] = ((gBattleMons[battlerId].ppBonuses & (3 << (j << 1))) >> (j << 1)); for (j = 0; j < MAX_MON_MOVES; j++) { - array1[j] = RecordedBattle_GetBattlerAction(battlerId); - movePp.moves[j] = gBattleMons[battlerId].moves[array1[j]]; - movePp.pp[j] = gBattleMons[battlerId].pp[array1[j]]; - array3[j] = ppBonuses[array1[j]]; - array2[j] = (gDisableStructs[battlerId].mimickedMoves & gBitTable[j]) >> j; + moveSlots[j] = RecordedBattle_GetBattlerAction(battlerId); + movePp.moves[j] = gBattleMons[battlerId].moves[moveSlots[j]]; + movePp.currentPp[j] = gBattleMons[battlerId].pp[moveSlots[j]]; + movePp.maxPp[j] = ppBonuses[moveSlots[j]]; + mimickedMoveSlots[j] = (gDisableStructs[battlerId].mimickedMoves & gBitTable[j]) >> j; } for (j = 0; j < MAX_MON_MOVES; j++) { gBattleMons[battlerId].moves[j] = movePp.moves[j]; - gBattleMons[battlerId].pp[j] = movePp.pp[j]; + gBattleMons[battlerId].pp[j] = movePp.currentPp[j]; } gBattleMons[battlerId].ppBonuses = 0; gDisableStructs[battlerId].mimickedMoves = 0; for (j = 0; j < MAX_MON_MOVES; j++) { - gBattleMons[battlerId].ppBonuses |= (array3[j]) << (j << 1); - gDisableStructs[battlerId].mimickedMoves |= (array2[j]) << (j); + gBattleMons[battlerId].ppBonuses |= movePp.maxPp[j] << (j << 1); + gDisableStructs[battlerId].mimickedMoves |= mimickedMoveSlots[j] << j; } if (!(gBattleMons[battlerId].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[battlerId]], 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 + array1[j], NULL); - movePp.pp[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP1 + array1[j], NULL); - array3[j] = ppBonuses[array1[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.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.pp[j]); + SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP1 + j, &movePp.currentPp[j]); } - var = 0; + ppBonusSet = 0; for (j = 0; j < MAX_MON_MOVES; j++) - var |= (array3[j]) << (j << 1); + ppBonusSet |= movePp.maxPp[j] << (j << 1); - SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP_BONUSES, &var); + SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP_BONUSES, &ppBonusSet); } gChosenMoveByBattler[battlerId] = gBattleMons[battlerId].moves[*(gBattleStruct->chosenMovePositions + battlerId)]; } From 5860e0e9372f89f4fc32b225c3bd7b7de91b78c1 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 13 Oct 2021 13:19:15 -0400 Subject: [PATCH 296/762] Disallow negative sizes in SAVEBLOCK_CHUNK --- src/save.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/save.c b/src/save.c index 52301df03643..a05d2c184cae 100644 --- a/src/save.c +++ b/src/save.c @@ -43,11 +43,12 @@ static u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location); // (u8 *)structure was removed from the first statement of the macro in Emerald. // This is because malloc is used to allocate addresses so storing the raw // addresses should not be done in the offsets information. -#define SAVEBLOCK_CHUNK(structure, chunkNum) \ -{ \ - chunkNum * SECTOR_DATA_SIZE, \ - min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) \ -} \ +#define SAVEBLOCK_CHUNK(structure, chunkNum) \ +{ \ + chunkNum * SECTOR_DATA_SIZE, \ + sizeof(structure) >= chunkNum * SECTOR_DATA_SIZE ? \ + min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) : 0 \ +} static const struct SaveSectionOffsets sSaveSectionOffsets[] = { From fc15b0d5f0b9c6d004ca4c30c79557606a4b0eeb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 12 Oct 2021 19:50:32 -0400 Subject: [PATCH 297/762] Add controller buffer constants, finish misc battle doc --- asm/macros/battle_script.inc | 4 +- data/battle_scripts_1.s | 61 ++-- include/battle.h | 8 +- include/battle_controllers.h | 48 ++- include/constants/battle_script_commands.h | 4 +- src/battle_ai_switch_items.c | 18 +- src/battle_controller_link_opponent.c | 2 +- src/battle_controller_link_partner.c | 2 +- src/battle_controller_opponent.c | 24 +- src/battle_controller_player.c | 63 ++-- src/battle_controller_player_partner.c | 10 +- src/battle_controller_recorded_opponent.c | 10 +- src/battle_controller_recorded_player.c | 12 +- src/battle_controller_safari.c | 10 +- src/battle_controller_wally.c | 14 +- src/battle_controllers.c | 48 +-- src/battle_main.c | 107 +++---- src/battle_script_commands.c | 340 +++++++++++---------- src/battle_util.c | 32 +- src/battle_util2.c | 9 +- src/party_menu.c | 6 +- src/pokemon.c | 2 +- 22 files changed, 435 insertions(+), 399 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index c5bede3f5dfd..4b9e0bfdf1c2 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -183,7 +183,7 @@ .byte \battler .endm - .macro atk24 ptr:req + .macro checkteamslost ptr:req .byte 0x24 .4byte \ptr .endm @@ -538,7 +538,7 @@ .byte 0x5d .endm - .macro atk5E battler:req + .macro updatebattlermoves battler:req .byte 0x5e .byte \battler .endm diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 203ea312562e..5a48e0b3c20f 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -2825,37 +2825,40 @@ BattleScript_GiveExp:: end2 BattleScript_HandleFaintedMon:: - atk24 BattleScript_HandleFaintedMonMultiple + checkteamslost BattleScript_LinkHandleFaintedMonMultiple jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd - jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother - jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother -@ Yes/No for sending out a new PokĂ©mon, when sending out is optional + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChoose + jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChoose +@ Yes/No for sending out a new PokĂ©mon if one is defeated in a wild battle printstring STRINGID_USENEXTPKMN setbyte gBattleCommunication, 0 yesnobox - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0, BattleScript_FaintedMonTryChooseAnother + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 0, BattleScript_FaintedMonTryChoose @ Player said no, try to run jumpifplayerran BattleScript_FaintedMonEnd printstring STRINGID_CANTESCAPE2 -BattleScript_FaintedMonTryChooseAnother:: +BattleScript_FaintedMonTryChoose:: openpartyscreen BS_FAINTED, BattleScript_FaintedMonEnd switchhandleorder BS_FAINTED, 2 - jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonChooseAnother - jumpifbattletype BATTLE_TYPE_LINK, BattleScript_FaintedMonChooseAnother - jumpifbattletype BATTLE_TYPE_RECORDED_LINK, BattleScript_FaintedMonChooseAnother - jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_FaintedMonChooseAnother - jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonChooseAnother - jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonChooseAnother - jumpifbyte CMP_EQUAL, sBATTLE_STYLE, OPTIONS_BATTLE_STYLE_SET, BattleScript_FaintedMonChooseAnother - jumpifcantswitch BS_PLAYER1, BattleScript_FaintedMonChooseAnother + jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonSendOutNew + jumpifbattletype BATTLE_TYPE_LINK, BattleScript_FaintedMonSendOutNew + jumpifbattletype BATTLE_TYPE_RECORDED_LINK, BattleScript_FaintedMonSendOutNew + jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_FaintedMonSendOutNew + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonSendOutNew + jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonSendOutNew + jumpifbyte CMP_EQUAL, sBATTLE_STYLE, OPTIONS_BATTLE_STYLE_SET, BattleScript_FaintedMonSendOutNew + jumpifcantswitch BS_PLAYER1, BattleScript_FaintedMonSendOutNew +@ Yes/No for sending out a new PokĂ©mon when the opponent is switching printstring STRINGID_ENEMYABOUTTOSWITCHPKMN setbyte gBattleCommunication, 0 yesnobox - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_FaintedMonChooseAnother + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_FaintedMonSendOutNew +@ Player said yes, go to party screen (note optional flag, player may exit the menu instead) setatktoplayer0 - openpartyscreen BS_ATTACKER | PARTY_SCREEN_OPTIONAL, BattleScript_FaintedMonChooseAnother + openpartyscreen BS_ATTACKER | PARTY_SCREEN_OPTIONAL, BattleScript_FaintedMonSendOutNew switchhandleorder BS_ATTACKER, 2 - jumpifbyte CMP_EQUAL, gBattleCommunication, PARTY_SIZE, BattleScript_FaintedMonChooseAnother + jumpifbyte CMP_EQUAL, gBattleCommunication, PARTY_SIZE, BattleScript_FaintedMonSendOutNew +@ Switch PokĂ©mon before opponent atknameinbuff1 resetintimidatetracebits BS_ATTACKER hpthresholds2 BS_ATTACKER @@ -2874,7 +2877,7 @@ BattleScript_FaintedMonTryChooseAnother:: waitstate switchineffects BS_ATTACKER resetsentmonsvalue -BattleScript_FaintedMonChooseAnother:: +BattleScript_FaintedMonSendOutNew:: drawpartystatussummary BS_FAINTED getswitchedmondata BS_FAINTED switchindataupdate BS_FAINTED @@ -2890,13 +2893,13 @@ BattleScript_FaintedMonChooseAnother:: BattleScript_FaintedMonEnd:: end2 -BattleScript_HandleFaintedMonMultiple:: - openpartyscreen BS_UNK_5, BattleScript_HandleFaintedMonMultipleStart -BattleScript_HandleFaintedMonMultipleStart:: +BattleScript_LinkHandleFaintedMonMultiple:: + openpartyscreen BS_FAINTED_LINK_MULTIPLE_1, BattleScript_LinkHandleFaintedMonMultipleStart +BattleScript_LinkHandleFaintedMonMultipleStart:: switchhandleorder BS_FAINTED, 0 - openpartyscreen BS_UNK_6, BattleScript_HandleFaintedMonMultipleEnd + openpartyscreen BS_FAINTED_LINK_MULTIPLE_2, BattleScript_LinkHandleFaintedMonMultipleEnd switchhandleorder BS_FAINTED, 0 -BattleScript_HandleFaintedMonLoop:: +BattleScript_LinkHandleFaintedMonLoop:: switchhandleorder BS_FAINTED, 3 drawpartystatussummary BS_FAINTED getswitchedmondata BS_FAINTED @@ -2906,9 +2909,9 @@ BattleScript_HandleFaintedMonLoop:: hidepartystatussummary BS_FAINTED switchinanim BS_FAINTED, FALSE waitstate - switchineffects BS_UNK_5 - jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_HandleFaintedMonLoop -BattleScript_HandleFaintedMonMultipleEnd:: + switchineffects BS_FAINTED_LINK_MULTIPLE_1 + jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_LinkHandleFaintedMonLoop +BattleScript_LinkHandleFaintedMonMultipleEnd:: end2 BattleScript_LocalTrainerBattleWon:: @@ -3208,7 +3211,7 @@ BattleScript_DamagingWeatherLoop:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER, FALSE, NULL - atk24 BattleScript_DamagingWeatherLoopIncrement + checkteamslost BattleScript_DamagingWeatherLoopIncrement BattleScript_DamagingWeatherLoopIncrement:: jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_DamagingWeatherContinuesEnd addbyte gBattleCommunication, 1 @@ -3523,7 +3526,7 @@ BattleScript_DoFutureAttackHit:: resultmessage waitmessage B_WAIT_TIME_LONG tryfaintmon BS_TARGET, FALSE, NULL - atk24 BattleScript_FutureAttackEnd + checkteamslost BattleScript_FutureAttackEnd BattleScript_FutureAttackEnd:: moveendcase MOVEEND_RAGE moveendfromto MOVEEND_ITEM_EFFECTS_ALL, MOVEEND_UPDATE_LAST_MOVES @@ -3737,7 +3740,7 @@ BattleScript_DoTurnDmg:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER, FALSE, NULL - atk24 BattleScript_DoTurnDmgEnd + checkteamslost BattleScript_DoTurnDmgEnd BattleScript_DoTurnDmgEnd:: end2 diff --git a/include/battle.h b/include/battle.h index f793c779f77c..5a30bc90c891 100644 --- a/include/battle.h +++ b/include/battle.h @@ -145,7 +145,7 @@ struct SpecialStatus u32 intimidatedMon:1; u32 traced:1; u32 ppNotAffectedByPressure:1; - u32 flag40:1; + u32 faintedHasReplacement:1; u32 focusBanded:1; s32 dmg; s32 physicalDmg; @@ -384,9 +384,9 @@ struct BattleStruct u8 field_52; u8 sentInPokes; bool8 selectionScriptFinished[MAX_BATTLERS_COUNT]; - u8 field_58[4]; + u8 battlerPartyIndexes[MAX_BATTLERS_COUNT]; u8 monToSwitchIntoId[MAX_BATTLERS_COUNT]; - u8 field_60[4][3]; + u8 battlerPartyOrders[MAX_BATTLERS_COUNT][PARTY_SIZE / 2]; u8 runTries; u8 caughtMonNick[POKEMON_NAME_LENGTH + 1]; u8 unused_2; @@ -405,7 +405,7 @@ struct BattleStruct u8 stringMoveType; u8 expGetterBattlerId; u8 unused_5; - u8 field_91; // related to gAbsentBattlerFlags, possibly absent flags turn ago? + u8 absentBattlerFlags; u8 palaceFlags; // First 4 bits are "is < 50% HP and not asleep" for each battler, last 4 bits are selected moves to pass to AI u8 field_93; // related to choosing pokemon? u8 wallyBattleState; diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 34e916b0f21c..9d9fba1b40b1 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -1,8 +1,7 @@ #ifndef GUARD_BATTLE_CONTROLLERS_H #define GUARD_BATTLE_CONTROLLERS_H -enum -{ +enum { REQUEST_ALL_BATTLE, REQUEST_SPECIES_BATTLE, REQUEST_HELDITEM_BATTLE, @@ -67,19 +66,36 @@ enum // Special arguments for Battle Controller functions. -#define RESET_ACTION_MOVE_SELECTION 0 -#define RESET_ACTION_SELECTION 1 -#define RESET_MOVE_SELECTION 2 +enum { // Values given to the emit functions to choose gBattleBufferA or gBattleBufferB + BUFFER_A, + BUFFER_B +}; -#define BALL_NO_SHAKES 0 -#define BALL_1_SHAKE 1 -#define BALL_2_SHAKES 2 -#define BALL_3_SHAKES_FAIL 3 -#define BALL_3_SHAKES_SUCCESS 4 -#define BALL_TRAINER_BLOCK 5 +enum { + RESET_ACTION_MOVE_SELECTION, + RESET_ACTION_SELECTION, + RESET_MOVE_SELECTION, +}; + +enum { + BALL_NO_SHAKES, + BALL_1_SHAKE, + BALL_2_SHAKES, + BALL_3_SHAKES_FAIL, + BALL_3_SHAKES_SUCCESS, + BALL_TRAINER_BLOCK, +}; + +enum { + LINK_STANDBY_MSG_STOP_BOUNCE, + LINK_STANDBY_STOP_BOUNCE_ONLY, + LINK_STANDBY_MSG_ONLY, +}; #define INSTANT_HP_BAR_DROP 32767 +#define PARTY_SUMM_SKIP_DRAW_DELAY (1 << 7) + // Special return values in gBattleBufferB from Battle Controller functions. #define RET_VALUE_LEVELED_UP 11 @@ -191,7 +207,7 @@ void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 b void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data); // unused void BtlController_EmitLoadMonSprite(u8 bufferId); void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit); -void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1); +void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim); void BtlController_EmitDrawTrainerPic(u8 bufferId); void BtlController_EmitTrainerSlide(u8 bufferId); void BtlController_EmitTrainerSlideBack(u8 bufferId); @@ -203,11 +219,11 @@ void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data); // unused void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr, u8 multihit); void BtlController_EmitPrintString(u8 bufferId, u16 stringId); void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId); -void BtlController_EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2); +void BtlController_EmitChooseAction(u8 bufferId, u8 action, u16 itemId); void BtlController_EmitYesNoBox(u8 bufferId); void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData); void BtlController_EmitChooseItem(u8 bufferId, u8* arg1); -void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4); +void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8* data); void BtlController_EmitCmd23(u8 bufferId); // unused void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue); void BtlController_EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints); @@ -216,7 +232,7 @@ void BtlController_EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status); void BtlController_EmitStatusXor(u8 bufferId, u8 b); // unused void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data); void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused -void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter); // unused +void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data); // unused void BtlController_EmitCmd32(u8 bufferId, u16 size, void *c); // unused void BtlController_EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2); void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c); @@ -233,7 +249,7 @@ void BtlController_EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM); void BtlController_EmitFaintingCry(u8 bufferId); void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId); void BtlController_EmitIntroTrainerBallThrow(u8 bufferId); -void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 arg2); +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); diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index d5e3eb7bbfdf..f3e11b4be33b 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -40,8 +40,8 @@ #define BS_EFFECT_BATTLER 2 #define BS_FAINTED 3 #define BS_ATTACKER_WITH_PARTNER 4 // for Cmd_updatestatusicon -#define BS_UNK_5 5 -#define BS_UNK_6 6 +#define BS_FAINTED_LINK_MULTIPLE_1 5 +#define BS_FAINTED_LINK_MULTIPLE_2 6 #define BS_BATTLER_0 7 #define BS_ATTACKER_SIDE 8 // for Cmd_jumpifability #define BS_NOT_ATTACKER_SIDE 9 // for Cmd_jumpifability diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 537005d30996..6ded48467919 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -22,7 +22,7 @@ static bool8 ShouldSwitchIfPerishSong(void) && gDisableStructs[gActiveBattler].perishSongTimer == 0) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } else @@ -106,7 +106,7 @@ static bool8 ShouldSwitchIfWonderGuard(void) { // We found a mon. *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } } @@ -206,7 +206,7 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) { // we found a mon. *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } } @@ -226,13 +226,13 @@ static bool8 ShouldSwitchIfNaturalCure(void) if ((gLastLandedMoves[gActiveBattler] == 0 || gLastLandedMoves[gActiveBattler] == 0xFFFF) && Random() & 1) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } else if (gBattleMoves[gLastLandedMoves[gActiveBattler]].power == 0 && Random() & 1) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } @@ -244,7 +244,7 @@ static bool8 ShouldSwitchIfNaturalCure(void) if (Random() & 1) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } @@ -412,7 +412,7 @@ static bool8 FindMonWithFlagsAndSuperEffective(u8 flags, u8 moduloPercent) if (moveFlags & MOVE_RESULT_SUPER_EFFECTIVE && Random() % moduloPercent == 0) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i; - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } } @@ -597,7 +597,7 @@ void AI_TrySwitchOrUseItem(void) } } - BtlController_EmitTwoReturnValues(1, B_ACTION_USE_MOVE, (gActiveBattler ^ BIT_SIDE) << 8); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, (gActiveBattler ^ BIT_SIDE) << 8); } static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 *var) @@ -923,7 +923,7 @@ static bool8 ShouldUseItem(void) if (shouldUse) { - BtlController_EmitTwoReturnValues(1, B_ACTION_USE_ITEM, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0); *(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2) = item; gBattleResources->battleHistory->trainerItems[i] = 0; return shouldUse; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 11b8f3af7803..55fffa705b9a 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -555,7 +555,7 @@ static void LinkOpponentHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); LinkOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 9c184b9c2664..a9240b0ac7da 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -442,7 +442,7 @@ static void LinkPartnerHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); LinkPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 3f62ba08d493..fe339ddfc889 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -555,7 +555,7 @@ static void OpponentHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); OpponentBufferExecCompleted(); } @@ -875,7 +875,7 @@ static void OpponentHandleGetRawMonData(void) for (i = 0; i < gBattleBufferA[gActiveBattler][2]; i++) dst[i] = src[i]; - BtlController_EmitDataTransfer(1, gBattleBufferA[gActiveBattler][2], dst); + BtlController_EmitDataTransfer(BUFFER_B, gBattleBufferA[gActiveBattler][2], dst); OpponentBufferExecCompleted(); } @@ -1546,7 +1546,7 @@ static void OpponentHandleChooseMove(void) { if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - BtlController_EmitTwoReturnValues(1, 10, ChooseMoveAndTargetInBattlePalace()); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace()); OpponentBufferExecCompleted(); } else @@ -1563,13 +1563,13 @@ static void OpponentHandleChooseMove(void) switch (chosenMoveId) { case AI_CHOICE_WATCH: - BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_WATCH_CAREFULLY, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_WATCH_CAREFULLY, 0); break; case AI_CHOICE_FLEE: - BtlController_EmitTwoReturnValues(1, B_ACTION_RUN, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_RUN, 0); break; case 6: - BtlController_EmitTwoReturnValues(1, 15, gBattlerTarget); + BtlController_EmitTwoReturnValues(BUFFER_B, 15, gBattlerTarget); break; default: if (gBattleMoves[moveInfo->moves[chosenMoveId]].target & (MOVE_TARGET_USER_OR_SELECTED | MOVE_TARGET_USER)) @@ -1580,7 +1580,7 @@ static void OpponentHandleChooseMove(void) if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) gBattlerTarget = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT); } - BtlController_EmitTwoReturnValues(1, 10, (chosenMoveId) | (gBattlerTarget << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (gBattlerTarget << 8)); break; } OpponentBufferExecCompleted(); @@ -1595,11 +1595,11 @@ static void OpponentHandleChooseMove(void) } while (move == MOVE_NONE); if (gBattleMoves[move].target & (MOVE_TARGET_USER_OR_SELECTED | MOVE_TARGET_USER)) - BtlController_EmitTwoReturnValues(1, 10, (chosenMoveId) | (gActiveBattler << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (gActiveBattler << 8)); else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) - BtlController_EmitTwoReturnValues(1, 10, (chosenMoveId) | (GetBattlerAtPosition(Random() & 2) << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (GetBattlerAtPosition(Random() & 2) << 8)); else - BtlController_EmitTwoReturnValues(1, 10, (chosenMoveId) | (GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) << 8)); OpponentBufferExecCompleted(); } @@ -1608,7 +1608,7 @@ static void OpponentHandleChooseMove(void) static void OpponentHandleChooseItem(void) { - BtlController_EmitOneReturnValue(1, *(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2)); + BtlController_EmitOneReturnValue(BUFFER_B, *(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2)); OpponentBufferExecCompleted(); } @@ -1665,7 +1665,7 @@ static void OpponentHandleChoosePokemon(void) *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = chosenMonId; - BtlController_EmitChosenMonReturnValue(1, chosenMonId, NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, chosenMonId, NULL); OpponentBufferExecCompleted(); } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index bc8db1699153..600e4a16a764 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -248,17 +248,17 @@ static void HandleInputChooseAction(void) switch (gActionSelectionCursor[gActiveBattler]) { - case B_ACTION_USE_MOVE: - BtlController_EmitTwoReturnValues(1, B_ACTION_USE_MOVE, 0); + case 0: // Top left + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, 0); break; - case B_ACTION_USE_ITEM: - BtlController_EmitTwoReturnValues(1, B_ACTION_USE_ITEM, 0); + case 1: // Top right + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0); break; - case B_ACTION_SWITCH: - BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0); + case 2: // Bottom left + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); break; - case B_ACTION_RUN: - BtlController_EmitTwoReturnValues(1, B_ACTION_RUN, 0); + case 3: // Bottom right + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_RUN, 0); break; } PlayerBufferExecCompleted(); @@ -319,7 +319,7 @@ static void HandleInputChooseAction(void) return; } PlaySE(SE_SELECT); - BtlController_EmitTwoReturnValues(1, B_ACTION_CANCEL_PARTNER, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 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(1, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8)); EndBounceEffect(gMultiUsePlayerCursor, BOUNCE_HEALTHBOX); PlayerBufferExecCompleted(); } @@ -523,7 +523,7 @@ static void HandleInputChooseMove(void) if (!canSelectTarget) { - BtlController_EmitTwoReturnValues(1, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 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(1, 10, 0xFFFF); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, 0xFFFF); PlayerBufferExecCompleted(); } else if (JOY_NEW(DPAD_LEFT)) @@ -1174,7 +1174,7 @@ static void Task_GiveExpToMon(u8 taskId) gainedExp -= nextLvlExp - currExp; savedActiveBattler = gActiveBattler; gActiveBattler = battlerId; - BtlController_EmitTwoReturnValues(1, RET_VALUE_LEVELED_UP, gainedExp); + BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp); gActiveBattler = savedActiveBattler; if (IsDoubleBattle() == TRUE @@ -1253,7 +1253,7 @@ static void Task_GiveExpWithExpBar(u8 taskId) gainedExp -= expOnNextLvl - currExp; savedActiveBattler = gActiveBattler; gActiveBattler = battlerId; - BtlController_EmitTwoReturnValues(1, RET_VALUE_LEVELED_UP, gainedExp); + BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp); gActiveBattler = savedActiveBattler; gTasks[taskId].func = Task_LaunchLvlUpAnim; } @@ -1361,9 +1361,9 @@ static void WaitForMonSelection(void) if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { if (gPartyMenuUseExitCallback == TRUE) - BtlController_EmitChosenMonReturnValue(1, gSelectedMonPartyId, gBattlePartyCurrentOrder); + BtlController_EmitChosenMonReturnValue(BUFFER_B, gSelectedMonPartyId, gBattlePartyCurrentOrder); else - BtlController_EmitChosenMonReturnValue(1, PARTY_SIZE, NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, 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(1, gSpecialVar_ItemId); + BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId); PlayerBufferExecCompleted(); } } @@ -1439,9 +1439,9 @@ static void PlayerHandleYesNoInput(void) PlaySE(SE_SELECT); if (gMultiUsePlayerCursor != 0) - BtlController_EmitTwoReturnValues(1, 0xE, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 0xE, 0); else - BtlController_EmitTwoReturnValues(1, 0xD, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 0xD, 0); PlayerBufferExecCompleted(); } @@ -1600,7 +1600,7 @@ static void PlayerHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); PlayerBufferExecCompleted(); } @@ -1920,7 +1920,7 @@ void PlayerHandleGetRawMonData(void) for (i = 0; i < gBattleBufferA[gActiveBattler][2]; i++) dst[i] = src[i]; - BtlController_EmitDataTransfer(1, gBattleBufferA[gActiveBattler][2], dst); + BtlController_EmitDataTransfer(BUFFER_B, gBattleBufferA[gActiveBattler][2], dst); PlayerBufferExecCompleted(); } @@ -2226,13 +2226,14 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) static void PlayerHandleReturnMonToBall(void) { - if (gBattleBufferA[gActiveBattler][1] == 0) + if (!gBattleBufferA[gActiveBattler][1]) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].animationState = 0; gBattlerControllerFuncs[gActiveBattler] = DoSwitchOutAnimation; } else { + // Skip animation, just remove battler FreeSpriteOamMatrix(&gSprites[gBattlerSpriteIds[gActiveBattler]]); DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetHealthboxSpriteInvisible(gHealthboxSpriteIds[gActiveBattler]); @@ -2620,7 +2621,7 @@ static void PlayerChooseMoveInBattlePalace(void) if (--*(gBattleStruct->arenaMindPoints + gActiveBattler) == 0) { gBattlePalaceMoveSelectionRngValue = gRngValue; - BtlController_EmitTwoReturnValues(1, 10, ChooseMoveAndTargetInBattlePalace()); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace()); PlayerBufferExecCompleted(); } } @@ -2670,7 +2671,7 @@ static void PlayerHandleChoosePokemon(void) if (gBattleTypeFlags & BATTLE_TYPE_ARENA && (gBattleBufferA[gActiveBattler][1] & 0xF) != PARTY_ACTION_CANT_SWITCH) { - BtlController_EmitChosenMonReturnValue(1, gBattlerPartyIndexes[gActiveBattler] + 1, gBattlePartyCurrentOrder); + BtlController_EmitChosenMonReturnValue(BUFFER_B, gBattlerPartyIndexes[gActiveBattler] + 1, gBattlePartyCurrentOrder); PlayerBufferExecCompleted(); } else @@ -2827,25 +2828,25 @@ static void PlayerHandleCmd32(void) static void PlayerHandleTwoReturnValues(void) { - BtlController_EmitTwoReturnValues(1, 0, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 0, 0); PlayerBufferExecCompleted(); } static void PlayerHandleChosenMonReturnValue(void) { - BtlController_EmitChosenMonReturnValue(1, 0, NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, 0, NULL); PlayerBufferExecCompleted(); } static void PlayerHandleOneReturnValue(void) { - BtlController_EmitOneReturnValue(1, 0); + BtlController_EmitOneReturnValue(BUFFER_B, 0); PlayerBufferExecCompleted(); } static void PlayerHandleOneReturnValue_Duplicate(void) { - BtlController_EmitOneReturnValue_Duplicate(1, 0); + BtlController_EmitOneReturnValue_Duplicate(BUFFER_B, 0); PlayerBufferExecCompleted(); } @@ -3098,14 +3099,14 @@ static void PlayerHandleLinkStandbyMsg(void) RecordedBattle_RecordAllBattlerData(&gBattleBufferA[gActiveBattler][2]); switch (gBattleBufferA[gActiveBattler][1]) { - case 0: + case LINK_STANDBY_MSG_STOP_BOUNCE: PrintLinkStandbyMsg(); // fall through - case 1: + case LINK_STANDBY_STOP_BOUNCE_ONLY: EndBounceEffect(gActiveBattler, BOUNCE_HEALTHBOX); EndBounceEffect(gActiveBattler, BOUNCE_MON); break; - case 2: + case LINK_STANDBY_MSG_ONLY: PrintLinkStandbyMsg(); break; } diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index d07f2763ad76..91fea6cde2ac 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -332,7 +332,7 @@ static void Task_GiveExpToMon(u8 taskId) gainedExp -= nextLvlExp - currExp; savedActiveBank = gActiveBattler; gActiveBattler = battlerId; - BtlController_EmitTwoReturnValues(1, RET_VALUE_LEVELED_UP, gainedExp); + BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp); gActiveBattler = savedActiveBank; if (IsDoubleBattle() == TRUE @@ -411,7 +411,7 @@ static void Task_GiveExpWithExpBar(u8 taskId) gainedExp -= expOnNextLvl - currExp; savedActiveBank = gActiveBattler; gActiveBattler = battlerId; - BtlController_EmitTwoReturnValues(1, RET_VALUE_LEVELED_UP, gainedExp); + BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp); gActiveBattler = savedActiveBank; gTasks[taskId].func = Task_LaunchLvlUpAnim; } @@ -626,7 +626,7 @@ static void PlayerPartnerHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); PlayerPartnerBufferExecCompleted(); } @@ -1527,7 +1527,7 @@ static void PlayerPartnerHandleChooseMove(void) gBattlerTarget = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT); } - BtlController_EmitTwoReturnValues(1, 10, chosenMoveId | (gBattlerTarget << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, chosenMoveId | (gBattlerTarget << 8)); PlayerPartnerBufferExecCompleted(); } @@ -1557,7 +1557,7 @@ static void PlayerPartnerHandleChoosePokemon(void) } *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = chosenMonId; - BtlController_EmitChosenMonReturnValue(1, chosenMonId, NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, chosenMonId, NULL); PlayerPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index bb99c7bf943e..ac92fb22dfca 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -538,7 +538,7 @@ static void RecordedOpponentHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); RecordedOpponentBufferExecCompleted(); } @@ -1406,7 +1406,7 @@ static void RecordedOpponentHandlePrintSelectionString(void) static void RecordedOpponentHandleChooseAction(void) { - BtlController_EmitTwoReturnValues(1, RecordedBattle_GetBattlerAction(gActiveBattler), 0); + BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0); RecordedOpponentBufferExecCompleted(); } @@ -1419,13 +1419,13 @@ static void RecordedOpponentHandleChooseMove(void) { if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - BtlController_EmitTwoReturnValues(1, 10, ChooseMoveAndTargetInBattlePalace()); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace()); } else { u8 moveId = RecordedBattle_GetBattlerAction(gActiveBattler); u8 target = RecordedBattle_GetBattlerAction(gActiveBattler); - BtlController_EmitTwoReturnValues(1, 10, moveId | (target << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, moveId | (target << 8)); } RecordedOpponentBufferExecCompleted(); @@ -1439,7 +1439,7 @@ static void RecordedOpponentHandleChooseItem(void) static void RecordedOpponentHandleChoosePokemon(void) { *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = RecordedBattle_GetBattlerAction(gActiveBattler); - BtlController_EmitChosenMonReturnValue(1, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL); RecordedOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 26231060a4f1..3e73c1dd1967 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -517,7 +517,7 @@ static void RecordedPlayerHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); RecordedPlayerBufferExecCompleted(); } @@ -1414,7 +1414,7 @@ static void ChooseActionInBattlePalace(void) { if (gBattleCommunication[4] >= gBattlersCount / 2) { - BtlController_EmitTwoReturnValues(1, RecordedBattle_GetBattlerAction(gActiveBattler), 0); + BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0); RecordedPlayerBufferExecCompleted(); } } @@ -1427,7 +1427,7 @@ static void RecordedPlayerHandleChooseAction(void) } else { - BtlController_EmitTwoReturnValues(1, RecordedBattle_GetBattlerAction(gActiveBattler), 0); + BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0); RecordedPlayerBufferExecCompleted(); } } @@ -1441,13 +1441,13 @@ static void RecordedPlayerHandleChooseMove(void) { if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - BtlController_EmitTwoReturnValues(1, 10, ChooseMoveAndTargetInBattlePalace()); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace()); } else { u8 moveId = RecordedBattle_GetBattlerAction(gActiveBattler); u8 target = RecordedBattle_GetBattlerAction(gActiveBattler); - BtlController_EmitTwoReturnValues(1, 10, moveId | (target << 8)); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, moveId | (target << 8)); } RecordedPlayerBufferExecCompleted(); @@ -1461,7 +1461,7 @@ static void RecordedPlayerHandleChooseItem(void) static void RecordedPlayerHandleChoosePokemon(void) { *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = RecordedBattle_GetBattlerAction(gActiveBattler); - BtlController_EmitChosenMonReturnValue(1, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL); + BtlController_EmitChosenMonReturnValue(BUFFER_B, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL); RecordedPlayerBufferExecCompleted(); } diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 6dc7aa2e52f9..a26f31b92966 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(1, B_ACTION_SAFARI_BALL, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_BALL, 0); break; case 1: - BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_POKEBLOCK, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_POKEBLOCK, 0); break; case 2: - BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_GO_NEAR, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_GO_NEAR, 0); break; case 3: - BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_RUN, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_RUN, 0); break; } SafariBufferExecCompleted(); @@ -280,7 +280,7 @@ static void CompleteWhenChosePokeblock(void) { if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { - BtlController_EmitOneReturnValue(1, gSpecialVar_ItemId); + BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId); SafariBufferExecCompleted(); } } diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 466b3f3151b2..d018fe1c011f 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(1, B_ACTION_USE_MOVE, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 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(1, B_ACTION_USE_MOVE, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 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(1, B_ACTION_WALLY_THROW, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, 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(1, B_ACTION_USE_ITEM, 0); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0); WallyBufferExecCompleted(); } break; @@ -278,7 +278,7 @@ static void CompleteOnChosenItem(void) { if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { - BtlController_EmitOneReturnValue(1, gSpecialVar_ItemId); + BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId); WallyBufferExecCompleted(); } } @@ -444,7 +444,7 @@ static void WallyHandleGetMonData(void) monToCheck >>= 1; } } - BtlController_EmitDataTransfer(1, size, monData); + BtlController_EmitDataTransfer(BUFFER_B, size, monData); WallyBufferExecCompleted(); } @@ -1241,7 +1241,7 @@ static void WallyHandleChooseMove(void) if (--gBattleStruct->wallyMoveFrames == 0) { PlaySE(SE_SELECT); - BtlController_EmitTwoReturnValues(1, 10, 0x100); + BtlController_EmitTwoReturnValues(BUFFER_B, 10, 0x100); WallyBufferExecCompleted(); } break; diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 0f32345791ce..ef5f1daa29b5 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -660,14 +660,14 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size) { switch (bufferId) { - case 0: + case BUFFER_A: for (i = 0; i < size; i++) { gBattleBufferA[gActiveBattler][i] = *data; data++; } break; - case 1: + case BUFFER_B: for (i = 0; i < size; i++) { gBattleBufferB[gActiveBattler][i] = *data; @@ -737,7 +737,7 @@ void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data) static void Task_HandleSendLinkBuffersData(u8 taskId) { - u16 var; + u16 numPlayers; u16 blockSize; switch (gTasks[taskId].data[11]) @@ -759,11 +759,11 @@ static void Task_HandleSendLinkBuffersData(u8 taskId) else { if (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER) - var = 2; + numPlayers = 2; else - var = (gBattleTypeFlags & BATTLE_TYPE_MULTI) ? 4 : 2; + numPlayers = (gBattleTypeFlags & BATTLE_TYPE_MULTI) ? 4 : 2; - if (GetLinkPlayerCount_2() >= var) + if (GetLinkPlayerCount_2() >= numPlayers) { if (IsLinkMaster()) { @@ -964,10 +964,10 @@ void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubs PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1) +void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim) { sBattleBuffersTransferData[0] = CONTROLLER_RETURNMONTOBALL; - sBattleBuffersTransferData[1] = arg1; + sBattleBuffersTransferData[1] = skipAnim; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2); } @@ -1134,12 +1134,13 @@ void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringID) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, sizeof(struct BattleMsgData) + 4); } -void BtlController_EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2) +// itemId only relevant for B_ACTION_USE_ITEM +void BtlController_EmitChooseAction(u8 bufferId, u8 action, u16 itemId) { sBattleBuffersTransferData[0] = CONTROLLER_CHOOSEACTION; - sBattleBuffersTransferData[1] = arg1; - sBattleBuffersTransferData[2] = arg2; - sBattleBuffersTransferData[3] = (arg2 & 0xFF00) >> 8; + sBattleBuffersTransferData[1] = action; + sBattleBuffersTransferData[2] = itemId; + sBattleBuffersTransferData[3] = (itemId & 0xFF00) >> 8; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } @@ -1177,7 +1178,7 @@ void BtlController_EmitChooseItem(u8 bufferId, u8 *arg1) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8 *arg4) +void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8 *data) { s32 i; @@ -1186,7 +1187,7 @@ void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abili sBattleBuffersTransferData[2] = slotId; sBattleBuffersTransferData[3] = abilityId; for (i = 0; i < 3; i++) - sBattleBuffersTransferData[4 + i] = arg4[i]; + sBattleBuffersTransferData[4 + i] = data[i]; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 8); // Only 7 bytes were written. } @@ -1280,15 +1281,19 @@ void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7); } -void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter) +// Unused +void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data) { s32 i; sBattleBuffersTransferData[0] = CONTROLLER_PLAYBGM; sBattleBuffersTransferData[1] = songId; sBattleBuffersTransferData[2] = (songId & 0xFF00) >> 8; - for (i = 0; i < songId; i++) // ???? - sBattleBuffersTransferData[3 + i] = *(u8*)(unusedDumbDataParameter++); + + // Nonsense loop using songId as a size + // Would go out of bounds for any song id after SE_RG_BAG_POCKET (253) + for (i = 0; i < songId; i++) + sBattleBuffersTransferData[3 + i] = *(u8*)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3); } @@ -1442,8 +1447,8 @@ void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* h s32 i; sBattleBuffersTransferData[0] = CONTROLLER_DRAWPARTYSTATUSSUMMARY; - sBattleBuffersTransferData[1] = flags & 0x7F; - sBattleBuffersTransferData[2] = (flags & 0x80) >> 7; // If true, skip delay after drawing. True during intro + sBattleBuffersTransferData[1] = flags & ~PARTY_SUMM_SKIP_DRAW_DELAY; // If true, skip player side + sBattleBuffersTransferData[2] = (flags & PARTY_SUMM_SKIP_DRAW_DELAY) >> 7; // If true, skip delay after drawing. True during intro sBattleBuffersTransferData[3] = CONTROLLER_DRAWPARTYSTATUSSUMMARY; for (i = 0; i < (s32)(sizeof(struct HpAndStatus) * PARTY_SIZE); i++) sBattleBuffersTransferData[4 + i] = *(i + (u8*)(hpAndStatus)); @@ -1486,11 +1491,12 @@ void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1, bool32 record) +// mode is a LINK_STANDBY_* constant +void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 mode, bool32 record) { bool8 record_ = record; sBattleBuffersTransferData[0] = CONTROLLER_LINKSTANDBYMSG; - sBattleBuffersTransferData[1] = arg1; + sBattleBuffersTransferData[1] = mode; if (record_) sBattleBuffersTransferData[3] = sBattleBuffersTransferData[2] = RecordedBattle_BufferNewBattlerData(&sBattleBuffersTransferData[4]); diff --git a/src/battle_main.c b/src/battle_main.c index 1d0f3454b86b..da95402c8db2 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -105,7 +105,7 @@ static void TryDoEventsBeforeFirstTurn(void); static void HandleTurnActionSelectionState(void); static void RunTurnActionsFunctions(void); static void SetActionsAndBattlersTurnOrder(void); -static void sub_803CDF8(void); +static void UpdateBattlerPartyOrdersOnSwitch(void); static bool8 AllAtActionConfirmed(void); static void CheckFocusPunch_ClearVarsBeforeTurnStarts(void); static void FreeResetData_ReturnToOvOrDoEvolutions(void); @@ -2063,7 +2063,8 @@ static u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum, bool8 fir return gTrainers[trainerNum].partySize; } -static void sub_8038A04(void) // unused +// Unused +static void HBlankCB_Battle(void) { if (REG_VCOUNT < DISPLAY_HEIGHT && REG_VCOUNT >= 111) SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_SCREENBASE(24) | BGCNT_TXT256x512); @@ -3348,7 +3349,7 @@ static void BattleIntroGetMonsData(void) { case 0: gActiveBattler = gBattleCommunication[1]; - BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, 0); + BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0); MarkBattlerForControllerExec(gActiveBattler); gBattleCommunication[MULTIUSE_STATE]++; break; @@ -3370,7 +3371,7 @@ static void BattleIntroPrepareBackgroundSlide(void) if (gBattleControllerExecFlags == 0) { gActiveBattler = GetBattlerAtPosition(0); - BtlController_EmitIntroSlide(0, gBattleTerrain); + BtlController_EmitIntroSlide(BUFFER_A, gBattleTerrain); MarkBattlerForControllerExec(gActiveBattler); gBattleMainFunc = BattleIntroDrawTrainersOrMonsSprites; gBattleCommunication[0] = 0; @@ -3415,7 +3416,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) if (GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_LEFT) { - BtlController_EmitDrawTrainerPic(0); + BtlController_EmitDrawTrainerPic(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } @@ -3423,7 +3424,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) { if (GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_LEFT) { - BtlController_EmitDrawTrainerPic(0); + BtlController_EmitDrawTrainerPic(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT @@ -3448,7 +3449,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) { HandleSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gActiveBattler].species), FLAG_SET_SEEN, gBattleMons[gActiveBattler].personality); } - BtlController_EmitLoadMonSprite(0); + BtlController_EmitLoadMonSprite(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattleResults.lastOpponentSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES, NULL); } @@ -3459,14 +3460,14 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) if (GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_RIGHT || GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_RIGHT) { - BtlController_EmitDrawTrainerPic(0); + BtlController_EmitDrawTrainerPic(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } } if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS && GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_RIGHT) { - BtlController_EmitDrawTrainerPic(0); + BtlController_EmitDrawTrainerPic(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } @@ -3501,7 +3502,7 @@ static void BattleIntroDrawPartySummaryScreens(void) } } gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); - BtlController_EmitDrawPartyStatusSummary(0, hpStatus, 0x80); + BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY); MarkBattlerForControllerExec(gActiveBattler); for (i = 0; i < PARTY_SIZE; i++) @@ -3519,7 +3520,7 @@ static void BattleIntroDrawPartySummaryScreens(void) } } gActiveBattler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); - BtlController_EmitDrawPartyStatusSummary(0, hpStatus, 0x80); + BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY); MarkBattlerForControllerExec(gActiveBattler); gBattleMainFunc = BattleIntroPrintTrainerWantsToBattle; @@ -3612,7 +3613,7 @@ static void BattleIntroOpponent2SendsOutMonAnimation(void) { if (GetBattlerPosition(gActiveBattler) == position) { - BtlController_EmitIntroTrainerBallThrow(0); + BtlController_EmitIntroTrainerBallThrow(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } } @@ -3646,7 +3647,7 @@ static void BattleIntroOpponent1SendsOutMonAnimation(void) { if (GetBattlerPosition(gActiveBattler) == position) { - BtlController_EmitIntroTrainerBallThrow(0); + BtlController_EmitIntroTrainerBallThrow(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); if (gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_TWO_OPPONENTS)) { @@ -3679,7 +3680,8 @@ static void BattleIntroRecordMonsToDex(void) } } -void sub_803B3AC(void) // unused +// Unused +static void BattleIntroSkipRecordMonsToDex(void) { if (gBattleControllerExecFlags == 0) gBattleMainFunc = BattleIntroPrintPlayerSendsOut; @@ -3730,7 +3732,7 @@ static void BattleIntroPlayer2SendsOutMonAnimation(void) { if (GetBattlerPosition(gActiveBattler) == position) { - BtlController_EmitIntroTrainerBallThrow(0); + BtlController_EmitIntroTrainerBallThrow(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } } @@ -3765,7 +3767,7 @@ static void BattleIntroPlayer1SendsOutMonAnimation(void) { if (GetBattlerPosition(gActiveBattler) == position) { - BtlController_EmitIntroTrainerBallThrow(0); + BtlController_EmitIntroTrainerBallThrow(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); if (gBattleTypeFlags & (BATTLE_TYPE_MULTI)) { @@ -3782,7 +3784,8 @@ static void BattleIntroPlayer1SendsOutMonAnimation(void) gBattleMainFunc = TryDoEventsBeforeFirstTurn; } -void sub_803B598(void) // unused +// Unused +static void BattleIntroSwitchInPlayerMons(void) { if (gBattleControllerExecFlags == 0) { @@ -3790,7 +3793,7 @@ void sub_803B598(void) // unused { if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { - BtlController_EmitSwitchInAnim(0, gBattlerPartyIndexes[gActiveBattler], FALSE); + BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], FALSE); MarkBattlerForControllerExec(gActiveBattler); } } @@ -3865,7 +3868,7 @@ static void TryDoEventsBeforeFirstTurn(void) } TurnValuesCleanUp(FALSE); SpecialStatusesClear(); - *(&gBattleStruct->field_91) = gAbsentBattlerFlags; + *(&gBattleStruct->absentBattlerFlags) = gAbsentBattlerFlags; BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG); gBattleMainFunc = HandleTurnActionSelectionState; ResetSentPokesToOpponentValue(); @@ -3972,7 +3975,7 @@ void BattleTurnPassed(void) for (i = 0; i < MAX_BATTLERS_COUNT; i++) *(gBattleStruct->monToSwitchIntoId + i) = PARTY_SIZE; - *(&gBattleStruct->field_91) = gAbsentBattlerFlags; + *(&gBattleStruct->absentBattlerFlags) = gAbsentBattlerFlags; BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG); gBattleMainFunc = HandleTurnActionSelectionState; gRandomTurnNumber = Random(); @@ -4054,10 +4057,8 @@ void SwitchPartyOrder(u8 battler) u8 partyId1; u8 partyId2; - // gBattleStruct->field_60[battler][i] - for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - gBattlePartyCurrentOrder[i] = *(battler * 3 + i + (u8*)(gBattleStruct->field_60)); + gBattlePartyCurrentOrder[i] = *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)); partyId1 = GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battler]); partyId2 = GetPartyIdFromBattlePartyId(*(gBattleStruct->monToSwitchIntoId + battler)); @@ -4067,15 +4068,15 @@ void SwitchPartyOrder(u8 battler) { for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) { - *(battler * 3 + i + (u8*)(gBattleStruct->field_60)) = gBattlePartyCurrentOrder[i]; - *(BATTLE_PARTNER(battler) * 3 + i + (u8*)(gBattleStruct->field_60)) = gBattlePartyCurrentOrder[i]; + *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; + *(BATTLE_PARTNER(battler) * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } else { for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) { - *(battler * 3 + i + (u8*)(gBattleStruct->field_60)) = gBattlePartyCurrentOrder[i]; + *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } } @@ -4111,10 +4112,10 @@ static void HandleTurnActionSelectionState(void) *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; if (gBattleTypeFlags & BATTLE_TYPE_MULTI || (position & BIT_FLANK) == B_FLANK_LEFT - || gBattleStruct->field_91 & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(position))] + || gBattleStruct->absentBattlerFlags & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(position))] || gBattleCommunication[GetBattlerAtPosition(BATTLE_PARTNER(position))] == STATE_WAIT_ACTION_CONFIRMED) { - if (gBattleStruct->field_91 & gBitTable[gActiveBattler]) + if (gBattleStruct->absentBattlerFlags & gBitTable[gActiveBattler]) { gChosenActionByBattler[gActiveBattler] = B_ACTION_NOTHING_FAINTED; if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) @@ -4132,7 +4133,7 @@ static void HandleTurnActionSelectionState(void) } else { - BtlController_EmitChooseAction(0, gChosenActionByBattler[0], gBattleBufferB[0][1] | (gBattleBufferB[0][2] << 8)); + BtlController_EmitChooseAction(BUFFER_A, gChosenActionByBattler[0], gBattleBufferB[0][1] | (gBattleBufferB[0][2] << 8)); MarkBattlerForControllerExec(gActiveBattler); gBattleCommunication[gActiveBattler]++; } @@ -4181,7 +4182,7 @@ static void HandleTurnActionSelectionState(void) i); } - BtlController_EmitChooseMove(0, (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) != 0, FALSE, &moveInfo); + BtlController_EmitChooseMove(BUFFER_A, (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) != 0, FALSE, &moveInfo); MarkBattlerForControllerExec(gActiveBattler); } break; @@ -4200,17 +4201,17 @@ static void HandleTurnActionSelectionState(void) } else { - BtlController_EmitChooseItem(0, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChooseItem(BUFFER_A, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); } break; case B_ACTION_SWITCH: - *(gBattleStruct->field_58 + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; + *(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; if (gBattleMons[gActiveBattler].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION) || gBattleTypeFlags & BATTLE_TYPE_ARENA || gStatuses3[gActiveBattler] & STATUS3_ROOTED) { - BtlController_EmitChoosePokemon(0, PARTY_ACTION_CANT_SWITCH, PARTY_SIZE, ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, 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)) @@ -4219,16 +4220,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(0, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, PARTY_SIZE, gLastUsedAbility, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, PARTY_SIZE, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]); } else { if (gActiveBattler == 2 && gChosenActionByBattler[0] == B_ACTION_SWITCH) - BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); else if (gActiveBattler == 3 && gChosenActionByBattler[1] == B_ACTION_SWITCH) - BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); else - BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, PARTY_SIZE, ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, PARTY_SIZE, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); } MarkBattlerForControllerExec(gActiveBattler); break; @@ -4243,7 +4244,7 @@ static void HandleTurnActionSelectionState(void) } break; case B_ACTION_SAFARI_POKEBLOCK: - BtlController_EmitChooseItem(0, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChooseItem(BUFFER_A, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); break; case B_ACTION_CANCEL_PARTNER: @@ -4253,7 +4254,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(0); + BtlController_EmitEndBounceEffect(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); return; } @@ -4281,7 +4282,7 @@ static void HandleTurnActionSelectionState(void) { RecordedBattle_ClearBattlerAction(GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler))), 3); } - BtlController_EmitEndBounceEffect(0); + BtlController_EmitEndBounceEffect(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); return; } @@ -4337,7 +4338,7 @@ static void HandleTurnActionSelectionState(void) return; case 15: gChosenActionByBattler[gActiveBattler] = B_ACTION_SWITCH; - sub_803CDF8(); + UpdateBattlerPartyOrdersOnSwitch(); return; default: RecordedBattle_CheckMovesetChanges(B_RECORD_MODE_PLAYBACK); @@ -4389,7 +4390,7 @@ static void HandleTurnActionSelectionState(void) } else { - sub_803CDF8(); + UpdateBattlerPartyOrdersOnSwitch(); gBattleCommunication[gActiveBattler]++; } break; @@ -4434,15 +4435,15 @@ static void HandleTurnActionSelectionState(void) else i = FALSE; - if (((gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_DOUBLE)) != BATTLE_TYPE_DOUBLE) + if (((gBattleTypeFlags & BATTLE_TYPE_MULTI) || !(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) || (position & BIT_FLANK) != B_FLANK_LEFT - || (*(&gBattleStruct->field_91) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)])) + || (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)])) { - BtlController_EmitLinkStandbyMsg(0, 0, i); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE, i); } else { - BtlController_EmitLinkStandbyMsg(0, 1, i); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_STOP_BOUNCE_ONLY, i); } MarkBattlerForControllerExec(gActiveBattler); gBattleCommunication[gActiveBattler]++; @@ -4538,20 +4539,20 @@ static bool8 AllAtActionConfirmed(void) return FALSE; } -static void sub_803CDF8(void) +static void UpdateBattlerPartyOrdersOnSwitch(void) { *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = gBattleBufferB[gActiveBattler][1]; RecordedBattle_SetBattlerAction(gActiveBattler, gBattleBufferB[gActiveBattler][1]); if (gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI) { - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 0) &= 0xF; - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 1) = gBattleBufferB[gActiveBattler][3]; + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 2) = gBattleBufferB[gActiveBattler][3]; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 3e91b64b12ea..9056aa58da0a 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -113,7 +113,7 @@ static void Cmd_jumpifstat(void); static void Cmd_jumpifstatus3condition(void); static void Cmd_jumpiftype(void); static void Cmd_getexp(void); -static void Cmd_unknown_24(void); +static void Cmd_checkteamslost(void); static void Cmd_movevaluescleanup(void); static void Cmd_setmultihit(void); static void Cmd_decrementmultihit(void); @@ -171,7 +171,7 @@ static void Cmd_yesnoboxlearnmove(void); static void Cmd_yesnoboxstoplearningmove(void); static void Cmd_hitanimation(void); static void Cmd_getmoneyreward(void); -static void Cmd_unknown_5E(void); +static void Cmd_updatebattlermoves(void); static void Cmd_swapattackerwithtarget(void); static void Cmd_incrementgamestat(void); static void Cmd_drawpartystatussummary(void); @@ -365,7 +365,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_jumpifstatus3condition, //0x21 Cmd_jumpiftype, //0x22 Cmd_getexp, //0x23 - Cmd_unknown_24, //0x24 + Cmd_checkteamslost, //0x24 Cmd_movevaluescleanup, //0x25 Cmd_setmultihit, //0x26 Cmd_decrementmultihit, //0x27 @@ -423,7 +423,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_yesnoboxstoplearningmove, //0x5B Cmd_hitanimation, //0x5C Cmd_getmoneyreward, //0x5D - Cmd_unknown_5E, //0x5E + Cmd_updatebattlermoves, //0x5E Cmd_swapattackerwithtarget, //0x5F Cmd_incrementgamestat, //0x60 Cmd_drawpartystatussummary, //0x61 @@ -1238,7 +1238,9 @@ static void Cmd_ppreduce(void) if (MOVE_IS_PERMANENT(gBattlerAttacker, gCurrMovePos)) { gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0, 1, &gBattleMons[gBattlerAttacker].pp[gCurrMovePos]); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0, + sizeof(gBattleMons[gBattlerAttacker].pp[gCurrMovePos]), + &gBattleMons[gBattlerAttacker].pp[gCurrMovePos]); MarkBattlerForControllerExec(gBattlerAttacker); } } @@ -1775,7 +1777,7 @@ static void Cmd_attackanimation(void) else multihit = gMultiHitCounter; - BtlController_EmitMoveAnimation(0, gCurrentMove, gBattleScripting.animTurn, gBattleMovePower, gBattleMoveDamage, gBattleMons[gBattlerAttacker].friendship, &gDisableStructs[gBattlerAttacker], multihit); + BtlController_EmitMoveAnimation(BUFFER_A, gCurrentMove, gBattleScripting.animTurn, gBattleMovePower, gBattleMoveDamage, gBattleMons[gBattlerAttacker].friendship, &gDisableStructs[gBattlerAttacker], multihit); gBattleScripting.animTurn += 1; gBattleScripting.animTargetsHit += 1; MarkBattlerForControllerExec(gBattlerAttacker); @@ -1820,7 +1822,7 @@ static void Cmd_healthbarupdate(void) else healthValue = maxPossibleDmgValue; - BtlController_EmitHealthBarUpdate(0, healthValue); + BtlController_EmitHealthBarUpdate(BUFFER_A, healthValue); MarkBattlerForControllerExec(gActiveBattler); if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER && gBattleMoveDamage > 0) @@ -1944,7 +1946,7 @@ static void Cmd_datahpupdate(void) } } gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; - BtlController_EmitSetMonData(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBattler].hp); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp); MarkBattlerForControllerExec(gActiveBattler); } } @@ -1981,11 +1983,11 @@ static void Cmd_effectivenesssound(void) switch (gMoveResultFlags & (u8)(~MOVE_RESULT_MISSED)) { case MOVE_RESULT_SUPER_EFFECTIVE: - BtlController_EmitPlaySE(0, SE_SUPER_EFFECTIVE); + BtlController_EmitPlaySE(BUFFER_A, SE_SUPER_EFFECTIVE); MarkBattlerForControllerExec(gActiveBattler); break; case MOVE_RESULT_NOT_VERY_EFFECTIVE: - BtlController_EmitPlaySE(0, SE_NOT_EFFECTIVE); + BtlController_EmitPlaySE(BUFFER_A, SE_NOT_EFFECTIVE); MarkBattlerForControllerExec(gActiveBattler); break; case MOVE_RESULT_DOESNT_AFFECT_FOE: @@ -1998,17 +2000,17 @@ static void Cmd_effectivenesssound(void) default: if (gMoveResultFlags & MOVE_RESULT_SUPER_EFFECTIVE) { - BtlController_EmitPlaySE(0, SE_SUPER_EFFECTIVE); + BtlController_EmitPlaySE(BUFFER_A, SE_SUPER_EFFECTIVE); MarkBattlerForControllerExec(gActiveBattler); } else if (gMoveResultFlags & MOVE_RESULT_NOT_VERY_EFFECTIVE) { - BtlController_EmitPlaySE(0, SE_NOT_EFFECTIVE); + BtlController_EmitPlaySE(BUFFER_A, SE_NOT_EFFECTIVE); MarkBattlerForControllerExec(gActiveBattler); } else if (!(gMoveResultFlags & (MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED))) { - BtlController_EmitPlaySE(0, SE_EFFECTIVE); + BtlController_EmitPlaySE(BUFFER_A, SE_EFFECTIVE); MarkBattlerForControllerExec(gActiveBattler); } break; @@ -2121,7 +2123,7 @@ static void Cmd_printselectionstring(void) { gActiveBattler = gBattlerAttacker; - BtlController_EmitPrintSelectionString(0, T2_READ_16(gBattlescriptCurrInstr + 1)); + BtlController_EmitPrintSelectionString(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1)); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 3; @@ -2171,7 +2173,7 @@ static void Cmd_printselectionstringfromtable(void) ptr += gBattleCommunication[MULTISTRING_CHOOSER]; gActiveBattler = gBattlerAttacker; - BtlController_EmitPrintSelectionString(0, *ptr); + BtlController_EmitPrintSelectionString(BUFFER_A, *ptr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 5; @@ -2453,7 +2455,7 @@ void SetMoveEffect(bool8 primary, u8 certain) gBattlescriptCurrInstr = sMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]]; gActiveBattler = gEffectBattler; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gEffectBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gEffectBattler].status1), &gBattleMons[gEffectBattler].status1); MarkBattlerForControllerExec(gActiveBattler); if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD) @@ -2756,11 +2758,11 @@ void SetMoveEffect(bool8 primary, u8 certain) gBattleMons[gBattlerTarget].item = 0; gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gLastUsedItem); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gLastUsedItem), &gLastUsedItem); MarkBattlerForControllerExec(gBattlerAttacker); gActiveBattler = gBattlerTarget; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gBattlerTarget].item); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item); MarkBattlerForControllerExec(gBattlerTarget); BattleScriptPush(gBattlescriptCurrInstr + 1); @@ -2799,7 +2801,7 @@ void SetMoveEffect(bool8 primary, u8 certain) gBattleMons[gBattlerTarget].status1 &= ~STATUS1_PARALYSIS; gActiveBattler = gBattlerTarget; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); BattleScriptPush(gBattlescriptCurrInstr + 1); @@ -3006,7 +3008,7 @@ static void Cmd_tryfaintmon(void) BattleScriptPush(gBattlescriptCurrInstr); gBattlescriptCurrInstr = BattleScript_GrudgeTakesPp; gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, moveIndex + REQUEST_PPMOVE1_BATTLE, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]); + BtlController_EmitSetMonData(BUFFER_A, moveIndex + REQUEST_PPMOVE1_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].pp[moveIndex]), &gBattleMons[gActiveBattler].pp[moveIndex]); MarkBattlerForControllerExec(gActiveBattler); PREPARE_MOVE_BUFFER(gBattleTextBuff1, gBattleMons[gBattlerAttacker].moves[moveIndex]) @@ -3024,7 +3026,7 @@ static void Cmd_dofaintanimation(void) if (gBattleControllerExecFlags == 0) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitFaintAnimation(0); + BtlController_EmitFaintAnimation(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; } @@ -3039,7 +3041,7 @@ static void Cmd_cleareffectsonfaint(void) if (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || gBattleMons[gActiveBattler].hp == 0) { gBattleMons[gActiveBattler].status1 = 0; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } @@ -3405,7 +3407,7 @@ static void Cmd_getexp(void) gBattleResources->beforeLvlUp->stats[STAT_SPDEF] = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF); gActiveBattler = gBattleStruct->expGetterBattlerId; - BtlController_EmitExpUpdate(0, gBattleStruct->expGetterMonId, gBattleMoveDamage); + BtlController_EmitExpUpdate(BUFFER_A, gBattleStruct->expGetterMonId, gBattleMoveDamage); MarkBattlerForControllerExec(gActiveBattler); } gBattleScripting.getexpState++; @@ -3496,8 +3498,9 @@ static void Cmd_getexp(void) } // For battles that aren't BATTLE_TYPE_LINK or BATTLE_TYPE_RECORDED_LINK, the only thing this -// command does is check whether the player has won/lost by totaling each team's HP -static void Cmd_unknown_24(void) +// command does is check whether the player has won/lost by totaling each team's HP. It then +// sets gBattleOutcome accordingly, if necessary. +static void Cmd_checkteamslost(void) { u16 HP_count = 0; s32 i; @@ -3547,35 +3550,37 @@ static void Cmd_unknown_24(void) if (HP_count == 0) gBattleOutcome |= B_OUTCOME_WON; + // For link battles that haven't ended, count number of empty battler spots + // In link multi battles, jump to pointer if more than 1 spot empty + // In non-multi battles, jump to pointer if 1 spot is missing on both sides if (gBattleOutcome == 0 && (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))) { - s32 foundPlayer = 0; - s32 foundOpponent; + s32 emptyPlayerSpots = 0; + s32 emptyOpponentSpots; for (i = 0; i < gBattlersCount; i += 2) { - if ((gHitMarker & HITMARKER_FAINTED2(i)) && (!gSpecialStatuses[i].flag40)) - foundPlayer++; + if ((gHitMarker & HITMARKER_FAINTED2(i)) && (!gSpecialStatuses[i].faintedHasReplacement)) + emptyPlayerSpots++; } - foundOpponent = 0; - + emptyOpponentSpots = 0; for (i = 1; i < gBattlersCount; i += 2) { - if ((gHitMarker & HITMARKER_FAINTED2(i)) && (!gSpecialStatuses[i].flag40)) - foundOpponent++; + if ((gHitMarker & HITMARKER_FAINTED2(i)) && (!gSpecialStatuses[i].faintedHasReplacement)) + emptyOpponentSpots++; } if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { - if (foundOpponent + foundPlayer > 1) + if (emptyOpponentSpots + emptyPlayerSpots > 1) gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1); else gBattlescriptCurrInstr += 5; } else { - if (foundOpponent != 0 && foundPlayer != 0) + if (emptyOpponentSpots != 0 && emptyPlayerSpots != 0) gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1); else gBattlescriptCurrInstr += 5; @@ -3906,7 +3911,7 @@ static void Cmd_healthbar_update(void) else gActiveBattler = gBattlerAttacker; - BtlController_EmitHealthBarUpdate(0, gBattleMoveDamage); + BtlController_EmitHealthBarUpdate(BUFFER_A, gBattleMoveDamage); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; } @@ -3980,7 +3985,7 @@ static void Cmd_playanimation(void) || gBattlescriptCurrInstr[2] == B_ANIM_SNATCH_MOVE || gBattlescriptCurrInstr[2] == B_ANIM_SUBSTITUTE_FADE) { - BtlController_EmitBattleAnimation(0, gBattlescriptCurrInstr[2], *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 7; } @@ -3994,7 +3999,7 @@ static void Cmd_playanimation(void) || gBattlescriptCurrInstr[2] == B_ANIM_SANDSTORM_CONTINUES || gBattlescriptCurrInstr[2] == B_ANIM_HAIL_CONTINUES) { - BtlController_EmitBattleAnimation(0, gBattlescriptCurrInstr[2], *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 7; } @@ -4004,7 +4009,7 @@ static void Cmd_playanimation(void) } else { - BtlController_EmitBattleAnimation(0, gBattlescriptCurrInstr[2], *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 7; } @@ -4023,7 +4028,7 @@ static void Cmd_playanimation2(void) // animation Id is stored in the first poin || *animationIdPtr == B_ANIM_SNATCH_MOVE || *animationIdPtr == B_ANIM_SUBSTITUTE_FADE) { - BtlController_EmitBattleAnimation(0, *animationIdPtr, *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 10; } @@ -4036,7 +4041,7 @@ static void Cmd_playanimation2(void) // animation Id is stored in the first poin || *animationIdPtr == B_ANIM_SANDSTORM_CONTINUES || *animationIdPtr == B_ANIM_HAIL_CONTINUES) { - BtlController_EmitBattleAnimation(0, *animationIdPtr, *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 10; } @@ -4046,7 +4051,7 @@ static void Cmd_playanimation2(void) // animation Id is stored in the first poin } else { - BtlController_EmitBattleAnimation(0, *animationIdPtr, *argumentPtr); + BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 10; } @@ -4162,7 +4167,7 @@ static void Cmd_playstatchangeanimation(void) } else if (changeableStatsCount != 0 && !gBattleScripting.statAnimPlayed) { - BtlController_EmitBattleAnimation(0, B_ANIM_STATS_CHANGE, statAnimId); + BtlController_EmitBattleAnimation(BUFFER_A, B_ANIM_STATS_CHANGE, statAnimId); MarkBattlerForControllerExec(gActiveBattler); if (gBattlescriptCurrInstr[3] & STAT_CHANGE_MULTIPLE_STATS && changeableStatsCount > 1) gBattleScripting.statAnimPlayed = TRUE; @@ -4226,7 +4231,7 @@ static void Cmd_moveend(void) { gBattleMons[gBattlerTarget].status1 &= ~STATUS1_FREEZE; gActiveBattler = gBattlerTarget; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gBattlerTarget].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].status1), &gBattleMons[gBattlerTarget].status1); MarkBattlerForControllerExec(gActiveBattler); BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_DefrostedViaFireMove; @@ -4305,7 +4310,7 @@ static void Cmd_moveend(void) && gHitMarker & HITMARKER_NO_ANIMATIONS) { gActiveBattler = gBattlerAttacker; - BtlController_EmitSpriteInvisibility(0, TRUE); + BtlController_EmitSpriteInvisibility(BUFFER_A, TRUE); MarkBattlerForControllerExec(gActiveBattler); gBattleScripting.moveendState++; return; @@ -4318,7 +4323,7 @@ static void Cmd_moveend(void) || WasUnableToUseMove(gBattlerAttacker)) { gActiveBattler = gBattlerAttacker; - BtlController_EmitSpriteInvisibility(0, FALSE); + BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); gStatuses3[gBattlerAttacker] &= ~STATUS3_SEMI_INVULNERABLE; gSpecialStatuses[gBattlerAttacker].restoredBattlerSprite = 1; @@ -4332,7 +4337,7 @@ static void Cmd_moveend(void) && !(gStatuses3[gBattlerTarget] & STATUS3_SEMI_INVULNERABLE)) { gActiveBattler = gBattlerTarget; - BtlController_EmitSpriteInvisibility(0, FALSE); + BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); gStatuses3[gBattlerTarget] &= ~STATUS3_SEMI_INVULNERABLE; gBattleScripting.moveendState++; @@ -4361,7 +4366,7 @@ static void Cmd_moveend(void) gLastPrintedMoves[gBattlerAttacker] = gChosenMove; } if (!(gAbsentBattlerFlags & gBitTable[gBattlerAttacker]) - && !(gBattleStruct->field_91 & gBitTable[gBattlerAttacker]) + && !(gBattleStruct->absentBattlerFlags & gBitTable[gBattlerAttacker]) && gBattleMoves[originallyUsedMove].effect != EFFECT_BATON_PASS) { if (gHitMarker & HITMARKER_OBEYS) @@ -4398,7 +4403,7 @@ static void Cmd_moveend(void) gBattleScripting.moveendState++; break; case MOVEEND_MIRROR_MOVE: // mirror move - if (!(gAbsentBattlerFlags & gBitTable[gBattlerAttacker]) && !(gBattleStruct->field_91 & gBitTable[gBattlerAttacker]) + if (!(gAbsentBattlerFlags & gBitTable[gBattlerAttacker]) && !(gBattleStruct->absentBattlerFlags & gBitTable[gBattlerAttacker]) && gBattleMoves[originallyUsedMove].flags & FLAG_MIRROR_MOVE_AFFECTED && gHitMarker & HITMARKER_OBEYS && gBattlerAttacker != gBattlerTarget && !(gHitMarker & HITMARKER_FAINTED(gBattlerTarget)) && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)) @@ -4556,7 +4561,7 @@ static void Cmd_returnatktoball(void) gActiveBattler = gBattlerAttacker; if (!(gHitMarker & HITMARKER_FAINTED(gActiveBattler))) { - BtlController_EmitReturnMonToBall(0, 0); + BtlController_EmitReturnMonToBall(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); } gBattlescriptCurrInstr++; @@ -4571,7 +4576,7 @@ static void Cmd_getswitchedmondata(void) gBattlerPartyIndexes[gActiveBattler] = *(gBattleStruct->monToSwitchIntoId + gActiveBattler); - BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, gBitTable[gBattlerPartyIndexes[gActiveBattler]]); + BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, gBitTable[gBattlerPartyIndexes[gActiveBattler]]); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -4647,7 +4652,7 @@ static void Cmd_switchinanim(void) gAbsentBattlerFlags &= ~(gBitTable[gActiveBattler]); - BtlController_EmitSwitchInAnim(0, gBattlerPartyIndexes[gActiveBattler], gBattlescriptCurrInstr[2]); + BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], gBattlescriptCurrInstr[2]); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 3; @@ -4808,15 +4813,16 @@ static void Cmd_jumpifcantswitch(void) } } -// Opens the party screen to choose a new PokĂ©mon to send out -// slotId is the PokĂ©mon to replace +// Opens the party screen to choose a new PokĂ©mon to send out. +// slotId is the PokĂ©mon to replace. +// Note that this is not used by the Switch action, only replacing fainted PokĂ©mon or Baton Pass static void ChooseMonToSendOut(u8 slotId) { - *(gBattleStruct->field_58 + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; + *(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; gBattleStruct->field_93 &= ~(gBitTable[gActiveBattler]); - BtlController_EmitChoosePokemon(0, PARTY_ACTION_SEND_OUT, slotId, ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_SEND_OUT, slotId, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); } @@ -4831,9 +4837,9 @@ static void Cmd_openpartyscreen(void) flags = 0; jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2); - if (gBattlescriptCurrInstr[1] == BS_UNK_5) + if (gBattlescriptCurrInstr[1] == BS_FAINTED_LINK_MULTIPLE_1) { - if ((gBattleTypeFlags & (BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI)) != BATTLE_TYPE_DOUBLE) + if ((gBattleTypeFlags & BATTLE_TYPE_MULTI) || !(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++) { @@ -4843,46 +4849,46 @@ static void Cmd_openpartyscreen(void) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(PARTY_SIZE); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } } else { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } } else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - u8 flag40_0, flag40_1, flag40_2, flag40_3; + bool8 hasReplacement_0, hasReplacement_1, hasReplacement_2, hasReplacement_3; hitmarkerFaintBits = gHitMarker >> 28; if (gBitTable[0] & hitmarkerFaintBits) { gActiveBattler = 0; - if (HasNoMonsToSwitch(0, PARTY_SIZE, PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[2]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } else { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); flags |= 1; } @@ -4890,42 +4896,42 @@ static void Cmd_openpartyscreen(void) if (gBitTable[2] & hitmarkerFaintBits && !(gBitTable[0] & hitmarkerFaintBits)) { gActiveBattler = 2; - if (HasNoMonsToSwitch(2, PARTY_SIZE, PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } else if (!(flags & 1)) { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } if (gBitTable[1] & hitmarkerFaintBits) { gActiveBattler = 1; - if (HasNoMonsToSwitch(1, PARTY_SIZE, PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[3]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } else { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); flags |= 2; } @@ -4933,60 +4939,60 @@ static void Cmd_openpartyscreen(void) if (gBitTable[3] & hitmarkerFaintBits && !(gBitTable[1] & hitmarkerFaintBits)) { gActiveBattler = 3; - if (HasNoMonsToSwitch(3, PARTY_SIZE, PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, PARTY_SIZE, PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } else if (!(flags & 2)) { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } - flag40_0 = gSpecialStatuses[0].flag40; - if (!flag40_0) + hasReplacement_0 = gSpecialStatuses[0].faintedHasReplacement; + if (!hasReplacement_0) { - flag40_2 = gSpecialStatuses[2].flag40; - if (!flag40_2 && hitmarkerFaintBits != 0) + hasReplacement_2 = gSpecialStatuses[2].faintedHasReplacement; + if (!hasReplacement_2 && hitmarkerFaintBits != 0) { if (gAbsentBattlerFlags & gBitTable[0]) gActiveBattler = 2; else gActiveBattler = 0; - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } - flag40_1 = gSpecialStatuses[1].flag40; - if (!flag40_1) + hasReplacement_1 = gSpecialStatuses[1].faintedHasReplacement; + if (!hasReplacement_1) { - flag40_3 = gSpecialStatuses[3].flag40; - if (!flag40_3 && hitmarkerFaintBits != 0) + hasReplacement_3 = gSpecialStatuses[3].faintedHasReplacement; + if (!hasReplacement_3 && hitmarkerFaintBits != 0) { if (gAbsentBattlerFlags & gBitTable[1]) gActiveBattler = 3; else gActiveBattler = 1; - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } } gBattlescriptCurrInstr += 6; } - else if (gBattlescriptCurrInstr[1] == BS_UNK_6) + else if (gBattlescriptCurrInstr[1] == BS_FAINTED_LINK_MULTIPLE_2) { if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { @@ -4996,44 +5002,46 @@ static void Cmd_openpartyscreen(void) if (gBitTable[2] & hitmarkerFaintBits && gBitTable[0] & hitmarkerFaintBits) { gActiveBattler = 2; - if (HasNoMonsToSwitch(2, gBattleBufferB[0][1], PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, gBattleBufferB[0][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[0]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } } if (gBitTable[3] & hitmarkerFaintBits && hitmarkerFaintBits & gBitTable[1]) { gActiveBattler = 3; - if (HasNoMonsToSwitch(3, gBattleBufferB[1][1], PARTY_SIZE)) + if (HasNoMonsToSwitch(gActiveBattler, gBattleBufferB[1][1], PARTY_SIZE)) { gAbsentBattlerFlags |= gBitTable[gActiveBattler]; gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - BtlController_EmitCantSwitch(0); + BtlController_EmitCantSwitch(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); } - else if (!gSpecialStatuses[gActiveBattler].flag40) + else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement) { ChooseMonToSendOut(gBattleStruct->monToSwitchIntoId[1]); - gSpecialStatuses[gActiveBattler].flag40 = TRUE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = TRUE; } } gBattlescriptCurrInstr += 6; } else { + // Not multi or double battle gBattlescriptCurrInstr += 6; } } else { + // Multi battle gBattlescriptCurrInstr += 6; } @@ -5055,7 +5063,7 @@ static void Cmd_openpartyscreen(void) hitmarkerFaintBits = PARTY_ACTION_SEND_OUT; battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~PARTY_SCREEN_OPTIONAL); - if (gSpecialStatuses[battlerId].flag40) + if (gSpecialStatuses[battlerId].faintedHasReplacement) { gBattlescriptCurrInstr += 6; } @@ -5069,16 +5077,16 @@ static void Cmd_openpartyscreen(void) else { gActiveBattler = battlerId; - *(gBattleStruct->field_58 + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; - *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = 6; + *(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler]; + *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; gBattleStruct->field_93 &= ~(gBitTable[gActiveBattler]); - BtlController_EmitChoosePokemon(0, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + (gActiveBattler ^ 2)), ABILITY_NONE, gBattleStruct->field_60[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + (gActiveBattler ^ 2)), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 6; - if (GetBattlerPosition(gActiveBattler) == 0 && gBattleResults.playerSwitchesCounter < 255) + if (GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_LEFT && gBattleResults.playerSwitchesCounter < 255) gBattleResults.playerSwitchesCounter++; if (gBattleTypeFlags & BATTLE_TYPE_MULTI) @@ -5087,7 +5095,7 @@ static void Cmd_openpartyscreen(void) { if (gActiveBattler != battlerId) { - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } @@ -5098,7 +5106,7 @@ static void Cmd_openpartyscreen(void) if (gAbsentBattlerFlags & gBitTable[gActiveBattler]) gActiveBattler ^= BIT_FLANK; - BtlController_EmitLinkStandbyMsg(0, 2, FALSE); + BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } @@ -5146,13 +5154,13 @@ static void Cmd_switchhandleorder(void) if (gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI) { - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 0) &= 0xF; - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); - *(gActiveBattler * 3 + (u8*)(gBattleStruct->field_60) + 1) = gBattleBufferB[gActiveBattler][3]; + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); + *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->field_60) + 2) = gBattleBufferB[gActiveBattler][3]; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } else if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) { @@ -5180,7 +5188,7 @@ static void Cmd_switchineffects(void) UpdateSentPokesToOpponentValue(gActiveBattler); gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler); - gSpecialStatuses[gActiveBattler].flag40 = FALSE; + gSpecialStatuses[gActiveBattler].faintedHasReplacement = FALSE; if (!(gSideStatuses[GetBattlerSide(gActiveBattler)] & SIDE_STATUS_SPIKES_DAMAGED) && (gSideStatuses[GetBattlerSide(gActiveBattler)] & SIDE_STATUS_SPIKES) @@ -5235,7 +5243,7 @@ static void Cmd_switchineffects(void) *hpOnSwitchout = gBattleMons[i].hp; } - if (gBattlescriptCurrInstr[1] == BS_UNK_5) + if (gBattlescriptCurrInstr[1] == BS_FAINTED_LINK_MULTIPLE_1) { u32 hitmarkerFaintBits = gHitMarker >> 28; @@ -5257,7 +5265,7 @@ static void Cmd_switchineffects(void) static void Cmd_trainerslidein(void) { gActiveBattler = GetBattlerAtPosition(gBattlescriptCurrInstr[1]); - BtlController_EmitTrainerSlide(0); + BtlController_EmitTrainerSlide(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -5266,7 +5274,7 @@ static void Cmd_trainerslidein(void) static void Cmd_playse(void) { gActiveBattler = gBattlerAttacker; - BtlController_EmitPlaySE(0, T2_READ_16(gBattlescriptCurrInstr + 1)); + BtlController_EmitPlaySE(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1)); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 3; @@ -5275,7 +5283,7 @@ static void Cmd_playse(void) static void Cmd_fanfare(void) { gActiveBattler = gBattlerAttacker; - BtlController_EmitPlayFanfareOrBGM(0, T2_READ_16(gBattlescriptCurrInstr + 1), FALSE); + BtlController_EmitPlayFanfareOrBGM(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1), FALSE); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 3; @@ -5284,7 +5292,7 @@ static void Cmd_fanfare(void) static void Cmd_playfaintcry(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitFaintingCry(0); + BtlController_EmitFaintingCry(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -5293,7 +5301,7 @@ static void Cmd_playfaintcry(void) static void Cmd_endlinkbattle(void) { gActiveBattler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); - BtlController_EmitEndLinkBattle(0, gBattleOutcome); + BtlController_EmitEndLinkBattle(BUFFER_A, gBattleOutcome); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 1; @@ -5302,7 +5310,7 @@ static void Cmd_endlinkbattle(void) static void Cmd_returntoball(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitReturnMonToBall(0, 1); + BtlController_EmitReturnMonToBall(BUFFER_A, TRUE); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -5521,7 +5529,7 @@ static void Cmd_hitanimation(void) } else if (!(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE) || !(gBattleMons[gActiveBattler].status2 & STATUS2_SUBSTITUTE) || gDisableStructs[gActiveBattler].substituteHP == 0) { - BtlController_EmitHitAnimation(0); + BtlController_EmitHitAnimation(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; } @@ -5600,14 +5608,15 @@ static void Cmd_getmoneyreward(void) gBattlescriptCurrInstr++; } -static void Cmd_unknown_5E(void) +// Command is never used +static void Cmd_updatebattlermoves(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); switch (gBattleCommunication[0]) { case 0: - BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, 0); + BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0); MarkBattlerForControllerExec(gActiveBattler); gBattleCommunication[0]++; break; @@ -5680,7 +5689,7 @@ static void Cmd_drawpartystatussummary(void) } } - BtlController_EmitDrawPartyStatusSummary(0, hpStatuses, 1); + BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatuses, 1); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -5689,7 +5698,7 @@ static void Cmd_drawpartystatussummary(void) static void Cmd_hidepartystatussummary(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitHidePartyStatusSummary(0); + BtlController_EmitHidePartyStatusSummary(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -5714,7 +5723,7 @@ static void Cmd_statusanimation(void) && gDisableStructs[gActiveBattler].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS)) { - BtlController_EmitStatusAnimation(0, FALSE, gBattleMons[gActiveBattler].status1); + BtlController_EmitStatusAnimation(BUFFER_A, FALSE, gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } gBattlescriptCurrInstr += 2; @@ -5733,7 +5742,7 @@ static void Cmd_status2animation(void) && gDisableStructs[gActiveBattler].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS)) { - BtlController_EmitStatusAnimation(0, TRUE, gBattleMons[gActiveBattler].status2 & wantedToAnimate); + BtlController_EmitStatusAnimation(BUFFER_A, TRUE, gBattleMons[gActiveBattler].status2 & wantedToAnimate); MarkBattlerForControllerExec(gActiveBattler); } gBattlescriptCurrInstr += 6; @@ -5752,7 +5761,7 @@ static void Cmd_chosenstatusanimation(void) && gDisableStructs[gActiveBattler].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS)) { - BtlController_EmitStatusAnimation(0, gBattlescriptCurrInstr[2], wantedStatus); + BtlController_EmitStatusAnimation(BUFFER_A, gBattlescriptCurrInstr[2], wantedStatus); MarkBattlerForControllerExec(gActiveBattler); } gBattlescriptCurrInstr += 7; @@ -5862,7 +5871,7 @@ static void Cmd_removeitem(void) *usedHeldItem = gBattleMons[gActiveBattler].item; gBattleMons[gActiveBattler].item = 0; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBattler].item); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -6171,7 +6180,7 @@ static void Cmd_setatktoplayer0(void) static void Cmd_makevisible(void) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitSpriteInvisibility(0, FALSE); + BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; @@ -6382,7 +6391,7 @@ static void Cmd_various(void) gDisableStructs[1].truantSwitchInHack = 1; break; case VARIOUS_EMIT_YESNOBOX: - BtlController_EmitYesNoBox(0); + BtlController_EmitYesNoBox(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); break; case VARIOUS_DRAW_ARENA_REF_TEXT_BOX: @@ -6407,7 +6416,7 @@ static void Cmd_various(void) gActiveBattler = 1; if (gBattleMons[gActiveBattler].hp != 0) { - BtlController_EmitReturnMonToBall(0, 0); + BtlController_EmitReturnMonToBall(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); } break; @@ -6417,7 +6426,7 @@ static void Cmd_various(void) gActiveBattler = 3; if (gBattleMons[gActiveBattler].hp != 0) { - BtlController_EmitReturnMonToBall(0, 0); + BtlController_EmitReturnMonToBall(BUFFER_A, FALSE); MarkBattlerForControllerExec(gActiveBattler); } } @@ -6442,7 +6451,7 @@ static void Cmd_various(void) gBattleOutcome = B_OUTCOME_MON_TELEPORTED; break; case VARIOUS_PLAY_TRAINER_DEFEATED_MUSIC: - BtlController_EmitPlayFanfareOrBGM(0, MUS_VICTORY_TRAINER, TRUE); + BtlController_EmitPlayFanfareOrBGM(BUFFER_A, MUS_VICTORY_TRAINER, TRUE); MarkBattlerForControllerExec(gActiveBattler); break; } @@ -6500,7 +6509,7 @@ static void Cmd_faintifabilitynotdamp(void) { gActiveBattler = gBattlerAttacker; gBattleMoveDamage = gBattleMons[gActiveBattler].hp; - BtlController_EmitHealthBarUpdate(0, INSTANT_HP_BAR_DROP); + BtlController_EmitHealthBarUpdate(BUFFER_A, INSTANT_HP_BAR_DROP); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr++; @@ -6527,7 +6536,7 @@ static void Cmd_setatkhptozero(void) gActiveBattler = gBattlerAttacker; gBattleMons[gActiveBattler].hp = 0; - BtlController_EmitSetMonData(0, REQUEST_HP_BATTLE, 0, 2, &gBattleMons[gActiveBattler].hp); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr++; @@ -6725,7 +6734,7 @@ static void Cmd_trysetrest(void) gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_REST; gBattleMons[gBattlerTarget].status1 = STATUS1_SLEEP_TURN(3); - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 5; } @@ -7119,7 +7128,7 @@ static bool8 TryDoForceSwitchOut(void) { if (gBattleMons[gBattlerAttacker].level >= gBattleMons[gBattlerTarget].level) { - *(gBattleStruct->field_58 + gBattlerTarget) = gBattlerPartyIndexes[gBattlerTarget]; + *(gBattleStruct->battlerPartyIndexes + gBattlerTarget) = gBattlerPartyIndexes[gBattlerTarget]; } else { @@ -7129,7 +7138,7 @@ static bool8 TryDoForceSwitchOut(void) gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); return FALSE; } - *(gBattleStruct->field_58 + gBattlerTarget) = gBattlerPartyIndexes[gBattlerTarget]; + *(gBattleStruct->battlerPartyIndexes + gBattlerTarget) = gBattlerPartyIndexes[gBattlerTarget]; } gBattlescriptCurrInstr = BattleScript_SuccessForceOut; @@ -7611,7 +7620,7 @@ static void Cmd_updatestatusicon(void) if (gBattlescriptCurrInstr[1] != BS_ATTACKER_WITH_PARTNER) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - BtlController_EmitStatusIconUpdate(0, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); + BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; } @@ -7620,7 +7629,7 @@ static void Cmd_updatestatusicon(void) gActiveBattler = gBattlerAttacker; if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler])) { - BtlController_EmitStatusIconUpdate(0, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); + BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); MarkBattlerForControllerExec(gActiveBattler); } if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) @@ -7628,7 +7637,7 @@ static void Cmd_updatestatusicon(void) gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler])) { - BtlController_EmitStatusIconUpdate(0, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); + BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); MarkBattlerForControllerExec(gActiveBattler); } } @@ -7706,7 +7715,7 @@ static void Cmd_transformdataexecution(void) } gActiveBattler = gBattlerAttacker; - BtlController_EmitResetActionMoveSelection(0, RESET_MOVE_SELECTION); + BtlController_EmitResetActionMoveSelection(BUFFER_A, RESET_MOVE_SELECTION); MarkBattlerForControllerExec(gActiveBattler); gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_TRANSFORMED; } @@ -8075,7 +8084,7 @@ static void Cmd_copymovepermanently(void) // sketch } movePpData.ppBonuses = gBattleMons[gBattlerAttacker].ppBonuses; - BtlController_EmitSetMonData(0, REQUEST_MOVES_PP_BATTLE, 0, sizeof(struct MovePpInfo), &movePpData); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_MOVES_PP_BATTLE, 0, sizeof(movePpData), &movePpData); MarkBattlerForControllerExec(gActiveBattler); PREPARE_MOVE_BUFFER(gBattleTextBuff1, gLastPrintedMoves[gBattlerTarget]) @@ -8241,7 +8250,7 @@ static void Cmd_tryspiteppreduce(void) if (!(gDisableStructs[gActiveBattler].mimickedMoves & gBitTable[i]) && !(gBattleMons[gActiveBattler].status2 & STATUS2_TRANSFORMED)) { - BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + i, 0, 1, &gBattleMons[gActiveBattler].pp[i]); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + i, 0, sizeof(gBattleMons[gActiveBattler].pp[i]), &gBattleMons[gActiveBattler].pp[i]); MarkBattlerForControllerExec(gActiveBattler); } @@ -8352,7 +8361,7 @@ static void Cmd_healpartystatus(void) if (toHeal) { gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, toHeal, 4, &zero); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, toHeal, sizeof(zero), &zero); MarkBattlerForControllerExec(gActiveBattler); } @@ -8958,7 +8967,7 @@ static void Cmd_jumpifattackandspecialattackcannotfall(void) // memento { gActiveBattler = gBattlerAttacker; gBattleMoveDamage = gBattleMons[gActiveBattler].hp; - BtlController_EmitHealthBarUpdate(0, INSTANT_HP_BAR_DROP); + BtlController_EmitHealthBarUpdate(BUFFER_A, INSTANT_HP_BAR_DROP); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 5; } @@ -8995,7 +9004,7 @@ static void Cmd_cureifburnedparalysedorpoisoned(void) // refresh gBattleMons[gBattlerAttacker].status1 = 0; gBattlescriptCurrInstr += 5; gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } else @@ -9112,15 +9121,15 @@ static void Cmd_tryswapitems(void) // trick oldItemAtk = gBattleMons[gBattlerAttacker].item; *newItemAtk = gBattleMons[gBattlerTarget].item; - gBattleMons[gBattlerAttacker].item = 0; + gBattleMons[gBattlerAttacker].item = ITEM_NONE; gBattleMons[gBattlerTarget].item = oldItemAtk; gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, newItemAtk); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(*newItemAtk), newItemAtk); MarkBattlerForControllerExec(gBattlerAttacker); gActiveBattler = gBattlerTarget; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gBattlerTarget].item); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item); MarkBattlerForControllerExec(gBattlerTarget); *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; @@ -9134,9 +9143,9 @@ static void Cmd_tryswapitems(void) // trick PREPARE_ITEM_BUFFER(gBattleTextBuff1, *newItemAtk) PREPARE_ITEM_BUFFER(gBattleTextBuff2, oldItemAtk) - if (oldItemAtk != 0 && *newItemAtk != 0) + if (oldItemAtk != ITEM_NONE && *newItemAtk != ITEM_NONE) gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_BOTH; // attacker's item -> <- target's item - else if (oldItemAtk == 0 && *newItemAtk != 0) + else if (oldItemAtk == ITEM_NONE && *newItemAtk != ITEM_NONE) gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_TAKEN; // nothing -> <- target's item else gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ITEM_SWAP_GIVEN; // attacker's item -> <- nothing @@ -9462,7 +9471,10 @@ static void Cmd_switchoutabilities(void) { case ABILITY_NATURAL_CURE: gBattleMons[gActiveBattler].status1 = 0; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, gBitTable[*(gBattleStruct->field_58 + gActiveBattler)], 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, + gBitTable[*(gBattleStruct->battlerPartyIndexes + gActiveBattler)], + sizeof(gBattleMons[gActiveBattler].status1), + &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); break; } @@ -9599,7 +9611,7 @@ static void Cmd_docastformchangeanimation(void) if (gBattleMons[gActiveBattler].status2 & STATUS2_SUBSTITUTE) *(&gBattleStruct->formToChangeInto) |= CASTFORM_SUBSTITUTE; - BtlController_EmitBattleAnimation(0, B_ANIM_CASTFORM_CHANGE, gBattleStruct->formToChangeInto); + BtlController_EmitBattleAnimation(BUFFER_A, B_ANIM_CASTFORM_CHANGE, gBattleStruct->formToChangeInto); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr++; @@ -9680,7 +9692,7 @@ static void Cmd_tryrecycleitem(void) *usedHeldItem = ITEM_NONE; gBattleMons[gActiveBattler].item = gLastUsedItem; - BtlController_EmitSetMonData(0, REQUEST_HELDITEM_BATTLE, 0, 2, &gBattleMons[gActiveBattler].item); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 5; @@ -9775,13 +9787,13 @@ static void Cmd_handleballthrow(void) if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) { - BtlController_EmitBallThrowAnim(0, BALL_TRAINER_BLOCK); + BtlController_EmitBallThrowAnim(BUFFER_A, BALL_TRAINER_BLOCK); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr = BattleScript_TrainerBallBlock; } else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL) { - BtlController_EmitBallThrowAnim(0, BALL_3_SHAKES_SUCCESS); + BtlController_EmitBallThrowAnim(BUFFER_A, BALL_3_SHAKES_SUCCESS); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr = BattleScript_WallyBallThrow; } @@ -9867,7 +9879,7 @@ static void Cmd_handleballthrow(void) if (odds > 254) // mon caught { - BtlController_EmitBallThrowAnim(0, BALL_3_SHAKES_SUCCESS); + BtlController_EmitBallThrowAnim(BUFFER_A, BALL_3_SHAKES_SUCCESS); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr = BattleScript_SuccessBallThrow; SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]], MON_DATA_POKEBALL, &gLastUsedItem); @@ -9889,7 +9901,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(0, shakes); + BtlController_EmitBallThrowAnim(BUFFER_A, shakes); MarkBattlerForControllerExec(gActiveBattler); if (shakes == BALL_3_SHAKES_SUCCESS) // mon caught, copy of the code above @@ -10178,7 +10190,7 @@ static void Cmd_finishturn(void) static void Cmd_trainerslideout(void) { gActiveBattler = GetBattlerAtPosition(gBattlescriptCurrInstr[1]); - BtlController_EmitTrainerSlideBack(0); + BtlController_EmitTrainerSlideBack(BUFFER_A); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 2; diff --git a/src/battle_util.c b/src/battle_util.c index ac2fbd34fe11..6bb6d9ae4aa0 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -82,7 +82,7 @@ void HandleAction_UseMove(void) gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; - if (*(&gBattleStruct->field_91) & gBitTable[gBattlerAttacker]) + if (*(&gBattleStruct->absentBattlerFlags) & gBitTable[gBattlerAttacker]) { gCurrentActionFuncId = B_ACTION_FINISHED; return; @@ -299,7 +299,7 @@ void HandleAction_Switch(void) gActionSelectionCursor[gBattlerAttacker] = 0; gMoveSelectionCursor[gBattlerAttacker] = 0; - PREPARE_MON_NICK_BUFFER(gBattleTextBuff1, gBattlerAttacker, *(gBattleStruct->field_58 + gBattlerAttacker)) + PREPARE_MON_NICK_BUFFER(gBattleTextBuff1, gBattlerAttacker, *(gBattleStruct->battlerPartyIndexes + gBattlerAttacker)) gBattleScripting.battler = gBattlerAttacker; gBattlescriptCurrInstr = BattleScript_ActionSwitch; @@ -708,11 +708,11 @@ u8 GetBattlerForBattleScript(u8 caseId) case BS_FAINTED: ret = gBattlerFainted; break; - case BS_UNK_5: + case BS_FAINTED_LINK_MULTIPLE_1: ret = gBattlerFainted; break; case BS_ATTACKER_WITH_PARTNER: - case BS_UNK_6: + case BS_FAINTED_LINK_MULTIPLE_2: case BS_ATTACKER_SIDE: case BS_NOT_ATTACKER_SIDE: case BS_PLAYER1: @@ -753,7 +753,7 @@ void PressurePPLose(u8 target, u8 attacker, u16 move) if (MOVE_IS_PERMANENT(attacker, moveIndex)) { gActiveBattler = attacker; - BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + moveIndex, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + moveIndex, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]); MarkBattlerForControllerExec(gActiveBattler); } } @@ -785,7 +785,7 @@ void PressurePPLoseOnUsingImprison(u8 attacker) if (imprisonPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, imprisonPos)) { gActiveBattler = attacker; - BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + imprisonPos, 0, 1, &gBattleMons[gActiveBattler].pp[imprisonPos]); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + imprisonPos, 0, 1, &gBattleMons[gActiveBattler].pp[imprisonPos]); MarkBattlerForControllerExec(gActiveBattler); } } @@ -816,7 +816,7 @@ void PressurePPLoseOnUsingPerishSong(u8 attacker) if (perishSongPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, perishSongPos)) { gActiveBattler = attacker; - BtlController_EmitSetMonData(0, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBattler].pp[perishSongPos]); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBattler].pp[perishSongPos]); MarkBattlerForControllerExec(gActiveBattler); } } @@ -887,7 +887,7 @@ bool8 WasUnableToUseMove(u8 battler) void PrepareStringBattle(u16 stringId, u8 battler) { gActiveBattler = battler; - BtlController_EmitPrintString(0, stringId); + BtlController_EmitPrintString(BUFFER_A, stringId); MarkBattlerForControllerExec(gActiveBattler); } @@ -1616,7 +1616,7 @@ u8 DoBattlerEndTurnEffects(void) gBattleCommunication[MULTISTRING_CHOOSER] = 1; BattleScriptExecute(BattleScript_MonWokeUpInUproar); gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); break; } @@ -1741,7 +1741,7 @@ u8 DoBattlerEndTurnEffects(void) { CancelMultiTurnMoves(gActiveBattler); gBattleMons[gActiveBattler].status1 |= STATUS1_SLEEP_TURN((Random() & 3) + 2); // 2-5 turns of sleep - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); gEffectBattler = gActiveBattler; BattleScriptExecute(BattleScript_YawnMakesAsleep); @@ -2251,7 +2251,7 @@ u8 AtkCanceller_UnableToUseMove(void) if (effect == 2) { gActiveBattler = gBattlerAttacker; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } return effect; @@ -2615,7 +2615,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(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1); MarkBattlerForControllerExec(gActiveBattler); effect++; } @@ -2926,7 +2926,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA gBattlescriptCurrInstr = BattleScript_AbilityCuredStatus; gBattleScripting.battler = battler; gActiveBattler = battler; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); return effect; } @@ -3354,7 +3354,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) PREPARE_MOVE_BUFFER(gBattleTextBuff1, move); BattleScriptExecute(BattleScript_BerryPPHealEnd2); - BtlController_EmitSetMonData(0, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP); + BtlController_EmitSetMonData(BUFFER_A, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP); MarkBattlerForControllerExec(gActiveBattler); effect = ITEM_PP_CHANGE; } @@ -3589,7 +3589,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) switch (effect) { case ITEM_STATUS_CHANGE: - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battlerId].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battlerId].status1); MarkBattlerForControllerExec(gActiveBattler); break; case ITEM_PP_CHANGE: @@ -3740,7 +3740,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; gActiveBattler = battlerId; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); break; } diff --git a/src/battle_util2.c b/src/battle_util2.c index 794b4f36afd3..767e31492731 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -108,16 +108,13 @@ void SwitchPartyOrderInGameMulti(u8 battlerId, u8 arg1) if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT) { s32 i; - - // gBattleStruct->field_60[0][i] - for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - gBattlePartyCurrentOrder[i] = *(0 * 3 + i + (u8*)(gBattleStruct->field_60)); + gBattlePartyCurrentOrder[i] = *(0 * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)); SwitchPartyMonSlots(GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battlerId]), GetPartyIdFromBattlePartyId(arg1)); for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - *(0 * 3 + i + (u8*)(gBattleStruct->field_60)) = gBattlePartyCurrentOrder[i]; + *(0 * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } @@ -207,7 +204,7 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId) if (effect == 2) { gActiveBattler = battlerId; - BtlController_EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); MarkBattlerForControllerExec(gActiveBattler); } diff --git a/src/party_menu.c b/src/party_menu.c index a55d397d2e4f..b4ff08313f1f 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -5840,7 +5840,7 @@ static void BufferBattlePartyOrder(u8 *partyBattleOrder, u8 flankId) void BufferBattlePartyCurrentOrderBySide(u8 battlerId, u8 flankId) { - BufferBattlePartyOrderBySide(gBattleStruct->field_60[battlerId], flankId, battlerId); + BufferBattlePartyOrderBySide(gBattleStruct->battlerPartyOrders[battlerId], flankId, battlerId); } // when GetBattlerSide(battlerId) == B_SIDE_PLAYER, this function is identical the one above @@ -5920,8 +5920,8 @@ void SwitchPartyOrderLinkMulti(u8 battlerId, u8 slot, u8 slot2) if (IsMultiBattle()) { - partyBattleOrder = gBattleStruct->field_60[battlerId]; - for (i = j = 0; i < 3; j++, i++) + partyBattleOrder = gBattleStruct->battlerPartyOrders[battlerId]; + for (i = j = 0; i < PARTY_SIZE / 2; j++, i++) { partyIds[j] = partyBattleOrder[i] >> 4; j++; diff --git a/src/pokemon.c b/src/pokemon.c index f4ca3f4c1003..6e3d37ae396c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5042,7 +5042,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov temp2 = gActiveBattler; gActiveBattler = battlerId; - BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, 0); + BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0); MarkBattlerForControllerExec(gActiveBattler); gActiveBattler = temp2; } From def6cc8158c09f3458866f1fa5983e58022c4101 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 13 Oct 2021 16:39:21 -0400 Subject: [PATCH 298/762] Label battle script macro arguments --- asm/macros/battle_script.inc | 437 +++++++++++---------- data/battle_scripts_1.s | 132 +++---- include/battle.h | 20 +- include/battle_script_commands.h | 1 + include/constants/battle_script_commands.h | 75 ++-- src/battle_script_commands.c | 104 +++-- 6 files changed, 386 insertions(+), 383 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 4b9e0bfdf1c2..73b3beca0ba8 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -3,10 +3,10 @@ .byte 0x0 .endm - .macro accuracycheck param0:req, param1:req + .macro accuracycheck failPtr:req, move:req .byte 0x1 - .4byte \param0 - .2byte \param1 + .4byte \failPtr + .2byte \move .endm .macro attackstring @@ -77,9 +77,9 @@ .2byte \id .endm - .macro waitmessage param0:req + .macro waitmessage time:req .byte 0x12 - .2byte \param0 + .2byte \time .endm .macro printfromtable ptr:req @@ -109,10 +109,17 @@ .byte \battler .endm - .macro tryfaintmon battler:req, param1:req, ptr:req + .macro tryfaintmon battler:req .byte 0x19 .byte \battler - .byte \param1 + .byte FALSE + .4byte NULL + .endm + + .macro tryfaintmon_spikes battler:req, ptr:req + .byte 0x19 + .byte \battler + .byte TRUE .4byte \ptr .endm @@ -140,9 +147,9 @@ .4byte \ptr .endm - .macro jumpifability param0:req, ability:req, ptr:req + .macro jumpifability battler:req, ability:req, ptr:req .byte 0x1e - .byte \param0 + .byte \battler .byte \ability .4byte \ptr .endm @@ -163,11 +170,11 @@ .4byte \ptr .endm - .macro jumpifstatus3condition battler:req, status3:req, param2:req, ptr:req + .macro jumpifstatus3condition battler:req, status3:req, condition:req, ptr:req .byte 0x21 .byte \battler .4byte \status3 - .byte \param2 + .byte \condition .4byte \ptr .endm @@ -207,118 +214,118 @@ .4byte \ptr .endm - .macro jumpifbyte ifflag:req, param1:req, param2:req, param3:req + .macro jumpifbyte ifflag:req, val:req, byte:req, ptr:req .byte 0x29 .byte \ifflag - .4byte \param1 - .byte \param2 - .4byte \param3 + .4byte \val + .byte \byte + .4byte \ptr .endm - .macro jumpifhalfword ifflag:req, param1:req, param2:req, param3:req + .macro jumpifhalfword ifflag:req, val:req, hword:req, ptr:req .byte 0x2a .byte \ifflag - .4byte \param1 - .2byte \param2 - .4byte \param3 + .4byte \val + .2byte \hword + .4byte \ptr .endm - .macro jumpifword ifflag:req, param1:req, param2:req, param3:req + .macro jumpifword ifflag:req, val:req, word:req, ptr:req .byte 0x2b .byte \ifflag - .4byte \param1 - .4byte \param2 - .4byte \param3 + .4byte \val + .4byte \word + .4byte \ptr .endm - .macro jumpifarrayequal param0:req, param1:req, param2:req, param3:req + .macro jumpifarrayequal val1:req, val2:req, size:req, ptr:req .byte 0x2c - .4byte \param0 - .4byte \param1 - .byte \param2 - .4byte \param3 + .4byte \val1 + .4byte \val2 + .byte \size + .4byte \ptr .endm - .macro jumpifarraynotequal param0:req, param1:req, param2:req, param3:req + .macro jumpifarraynotequal val1:req, val2:req, size:req, ptr:req .byte 0x2d - .4byte \param0 - .4byte \param1 - .byte \param2 - .4byte \param3 + .4byte \val1 + .4byte \val2 + .byte \size + .4byte \ptr .endm - .macro setbyte ptr:req, param1:req + .macro setbyte ptr:req, byte:req .byte 0x2e .4byte \ptr - .byte \param1 + .byte \byte .endm - .macro addbyte ptr:req, param1:req + .macro addbyte ptr:req, byte:req .byte 0x2f .4byte \ptr - .byte \param1 + .byte \byte .endm - .macro subbyte ptr:req, param1:req + .macro subbyte ptr:req, byte:req .byte 0x30 .4byte \ptr - .byte \param1 + .byte \byte .endm - .macro copyarray param0:req, param1:req, param2:req + .macro copyarray dest:req, src:req, size:req .byte 0x31 - .4byte \param0 - .4byte \param1 - .byte \param2 + .4byte \dest + .4byte \src + .byte \size .endm - .macro copyarraywithindex param0:req, param1:req, param2:req, param3:req + .macro copyarraywithindex dest:req, src:req, index:req, size:req .byte 0x32 - .4byte \param0 - .4byte \param1 - .4byte \param2 - .byte \param3 + .4byte \dest + .4byte \src + .4byte \index + .byte \size .endm - .macro orbyte ptr:req, param1:req + .macro orbyte ptr:req, byte:req .byte 0x33 .4byte \ptr - .byte \param1 + .byte \byte .endm - .macro orhalfword ptr:req, param1:req + .macro orhalfword ptr:req, hword:req .byte 0x34 .4byte \ptr - .2byte \param1 + .2byte \hword .endm - .macro orword ptr:req, param1:req + .macro orword ptr:req, word:req .byte 0x35 .4byte \ptr - .4byte \param1 + .4byte \word .endm - .macro bicbyte ptr:req, param1:req + .macro bicbyte ptr:req, byte:req .byte 0x36 .4byte \ptr - .byte \param1 + .byte \byte .endm - .macro bichalfword ptr:req, param1:req + .macro bichalfword ptr:req, hword:req .byte 0x37 .4byte \ptr - .2byte \param1 + .2byte \hword .endm - .macro bicword ptr:req, param1:req + .macro bicword ptr:req, word:req .byte 0x38 .4byte \ptr - .4byte \param1 + .4byte \word .endm - .macro pause param0:req + .macro pause time:req .byte 0x39 - .2byte \param0 + .2byte \time .endm .macro waitstate @@ -373,18 +380,18 @@ .byte 0x44 .endm - .macro playanimation battler:req, param1:req, param2:req + .macro playanimation battler:req, animType:req, arg=NULL .byte 0x45 .byte \battler - .byte \param1 - .4byte \param2 + .byte \animType + .4byte \arg .endm - .macro playanimation2 battler:req, param1:req, param2:req + .macro playanimation_var battler:req, animType:req, arg=NULL .byte 0x46 .byte \battler - .4byte \param1 - .4byte \param2 + .4byte \animType + .4byte \arg .endm .macro setgraphicalstatchangevalues @@ -398,10 +405,10 @@ .byte \statchange .endm - .macro moveend param0:req, param1:req + .macro moveend endMode:req, endState:req .byte 0x49 - .byte \param0 - .byte \param1 + .byte \endMode + .byte \endState .endm @ Help macros for 5 uses of moveend command @@ -466,16 +473,16 @@ .4byte \ptr .endm - .macro openpartyscreen param0:req, param1:req + .macro openpartyscreen battler:req, ptr:req .byte 0x50 - .byte \param0 - .4byte \param1 + .byte \battler + .4byte \ptr .endm - .macro switchhandleorder battler:req, param1:req + .macro switchhandleorder battler:req, state:req .byte 0x51 .byte \battler - .byte \param1 + .byte \state .endm .macro switchineffects battler:req @@ -488,14 +495,14 @@ .byte \battler .endm - .macro playse param0:req + .macro playse song:req .byte 0x54 - .2byte \param0 + .2byte \song .endm - .macro fanfare param0:req + .macro fanfare song:req .byte 0x55 - .2byte \param0 + .2byte \song .endm .macro playfaintcry battler:req @@ -512,21 +519,21 @@ .byte \battler .endm - .macro handlelearnnewmove param0:req, param1:req, param2:req + .macro handlelearnnewmove learnedMovePtr:req, nothingToLearnPtr:req, isFirstMove:req .byte 0x59 - .4byte \param0 - .4byte \param1 - .byte \param2 + .4byte \learnedMovePtr + .4byte \nothingToLearnPtr + .byte \isFirstMove .endm - .macro yesnoboxlearnmove param0:req + .macro yesnoboxlearnmove forgotMovePtr:req .byte 0x5a - .4byte \param0 + .4byte \forgotMovePtr .endm - .macro yesnoboxstoplearningmove param0:req + .macro yesnoboxstoplearningmove noPtr:req .byte 0x5b - .4byte \param0 + .4byte \noPtr .endm .macro hitanimation battler:req @@ -547,9 +554,9 @@ .byte 0x5f .endm - .macro incrementgamestat param0:req + .macro incrementgamestat stat:req .byte 0x60 - .byte \param0 + .byte \stat .endm .macro drawpartystatussummary battler:req @@ -562,9 +569,9 @@ .byte \battler .endm - .macro jumptocalledmove param0:req + .macro jumptocalledmove notChosenMove:req .byte 0x63 - .byte \param0 + .byte \notChosenMove .endm .macro statusanimation battler:req @@ -578,11 +585,11 @@ .4byte \status2 .endm - .macro chosenstatusanimation battler:req, param1:req, param2:req + .macro chosenstatusanimation battler:req, isStatus2:req, status:req .byte 0x66 .byte \battler - .byte \param1 - .4byte \param2 + .byte \isStatus2 + .4byte \status .endm .macro yesnobox @@ -651,10 +658,10 @@ .byte 0x75 .endm - .macro various battler:req, param1:req + .macro various battler:req, id:req .byte 0x76 .byte \battler - .byte \param1 + .byte \id .endm .macro setprotectlike @@ -674,9 +681,9 @@ .4byte \ptr .endm - .macro tryhealhalfhealth param0:req, battler:req + .macro tryhealhalfhealth ptr:req, battler:req .byte 0x7b - .4byte \param0 + .4byte \ptr .byte \battler .endm @@ -696,14 +703,14 @@ .byte 0x7f .endm - .macro manipulatedamage param0:req + .macro manipulatedamage mode:req .byte 0x80 - .byte \param0 + .byte \mode .endm - .macro trysetrest param0:req + .macro trysetrest ptr:req .byte 0x81 - .4byte \param0 + .4byte \ptr .endm .macro jumpifnotfirstturn ptr:req @@ -715,23 +722,23 @@ .byte 0x83 .endm - .macro jumpifcantmakeasleep param0:req + .macro jumpifcantmakeasleep ptr:req .byte 0x84 - .4byte \param0 + .4byte \ptr .endm .macro stockpile .byte 0x85 .endm - .macro stockpiletobasedamage param0:req + .macro stockpiletobasedamage ptr:req .byte 0x86 - .4byte \param0 + .4byte \ptr .endm - .macro stockpiletohpheal param0:req + .macro stockpiletohpheal ptr:req .byte 0x87 - .4byte \param0 + .4byte \ptr .endm .macro negativedamage @@ -756,23 +763,23 @@ .byte 0x8c .endm - .macro setmultihitcounter param0:req + .macro setmultihitcounter val:req .byte 0x8d - .byte \param0 + .byte \val .endm .macro initmultihitstring .byte 0x8e .endm - .macro forcerandomswitch param0:req + .macro forcerandomswitch ptr:req .byte 0x8f - .4byte \param0 + .4byte \ptr .endm - .macro tryconversiontypechange param0:req + .macro tryconversiontypechange ptr:req .byte 0x90 - .4byte \param0 + .4byte \ptr .endm .macro givepaydaymoney @@ -783,9 +790,9 @@ .byte 0x92 .endm - .macro tryKO param0:req + .macro tryKO ptr:req .byte 0x93 - .4byte \param0 + .4byte \ptr .endm .macro damagetohalftargethp @@ -800,9 +807,9 @@ .byte 0x96 .endm - .macro tryinfatuating param0:req + .macro tryinfatuating ptr:req .byte 0x97 - .4byte \param0 + .4byte \ptr .endm .macro updatestatusicon battler:req @@ -826,9 +833,9 @@ .byte 0x9c .endm - .macro mimicattackcopy param0:req + .macro mimicattackcopy ptr:req .byte 0x9d - .4byte \param0 + .4byte \ptr .endm .macro metronome @@ -843,48 +850,48 @@ .byte 0xa0 .endm - .macro counterdamagecalculator param0:req + .macro counterdamagecalculator ptr:req .byte 0xa1 - .4byte \param0 + .4byte \ptr .endm - .macro mirrorcoatdamagecalculator param0:req + .macro mirrorcoatdamagecalculator ptr:req .byte 0xa2 - .4byte \param0 + .4byte \ptr .endm - .macro disablelastusedattack param0:req + .macro disablelastusedattack ptr:req .byte 0xa3 - .4byte \param0 + .4byte \ptr .endm - .macro trysetencore param0:req + .macro trysetencore ptr:req .byte 0xa4 - .4byte \param0 + .4byte \ptr .endm - .macro painsplitdmgcalc param0:req + .macro painsplitdmgcalc ptr:req .byte 0xa5 - .4byte \param0 + .4byte \ptr .endm - .macro settypetorandomresistance param0:req + .macro settypetorandomresistance ptr:req .byte 0xa6 - .4byte \param0 + .4byte \ptr .endm .macro setalwayshitflag .byte 0xa7 .endm - .macro copymovepermanently param0:req + .macro copymovepermanently ptr:req .byte 0xa8 - .4byte \param0 + .4byte \ptr .endm - .macro trychoosesleeptalkmove param0:req + .macro trychoosesleeptalkmove ptr:req .byte 0xa9 - .4byte \param0 + .4byte \ptr .endm .macro setdestinybond @@ -899,32 +906,32 @@ .byte 0xac .endm - .macro tryspiteppreduce param0:req + .macro tryspiteppreduce ptr:req .byte 0xad - .4byte \param0 + .4byte \ptr .endm .macro healpartystatus .byte 0xae .endm - .macro cursetarget param0:req + .macro cursetarget ptr:req .byte 0xaf - .4byte \param0 + .4byte \ptr .endm - .macro trysetspikes param0:req + .macro trysetspikes ptr:req .byte 0xb0 - .4byte \param0 + .4byte \ptr .endm .macro setforesight .byte 0xb1 .endm - .macro trysetperishsong param0:req + .macro trysetperishsong ptr:req .byte 0xb2 - .4byte \param0 + .4byte \ptr .endm .macro rolloutdamagecalculation @@ -957,23 +964,23 @@ .byte 0xb9 .endm - .macro jumpifnopursuitswitchdmg param0:req + .macro jumpifnopursuitswitchdmg ptr:req .byte 0xba - .4byte \param0 + .4byte \ptr .endm .macro setsunny .byte 0xbb .endm - .macro maxattackhalvehp param0:req + .macro maxattackhalvehp ptr:req .byte 0xbc - .4byte \param0 + .4byte \ptr .endm - .macro copyfoestats param0:req + .macro copyfoestats ptr:req .byte 0xbd - .4byte \param0 + .4byte \ptr .endm .macro rapidspinfree @@ -984,9 +991,9 @@ .byte 0xbf .endm - .macro recoverbasedonsunlight param0:req + .macro recoverbasedonsunlight ptr:req .byte 0xc0 - .4byte \param0 + .4byte \ptr .endm .macro hiddenpowercalc @@ -997,15 +1004,15 @@ .byte 0xc2 .endm - .macro trysetfutureattack param0:req + .macro trysetfutureattack ptr:req .byte 0xc3 - .4byte \param0 + .4byte \ptr .endm - .macro trydobeatup param0:req, param1:req + .macro trydobeatup endPtr:req, failPtr:req .byte 0xc4 - .4byte \param0 - .4byte \param1 + .4byte \endPtr + .4byte \failPtr .endm .macro setsemiinvulnerablebit @@ -1041,107 +1048,107 @@ .byte 0xcc .endm - .macro cureifburnedparalysedorpoisoned param0:req + .macro cureifburnedparalysedorpoisoned ptr:req .byte 0xcd - .4byte \param0 + .4byte \ptr .endm - .macro settorment param0:req + .macro settorment ptr:req .byte 0xce - .4byte \param0 + .4byte \ptr .endm - .macro jumpifnodamage param0:req + .macro jumpifnodamage ptr:req .byte 0xcf - .4byte \param0 + .4byte \ptr .endm - .macro settaunt param0:req + .macro settaunt ptr:req .byte 0xd0 - .4byte \param0 + .4byte \ptr .endm - .macro trysethelpinghand param0:req + .macro trysethelpinghand ptr:req .byte 0xd1 - .4byte \param0 + .4byte \ptr .endm - .macro tryswapitems param0:req + .macro tryswapitems ptr:req .byte 0xd2 - .4byte \param0 + .4byte \ptr .endm - .macro trycopyability param0:req + .macro trycopyability ptr:req .byte 0xd3 - .4byte \param0 + .4byte \ptr .endm - .macro trywish param0:req, param1:req + .macro trywish turnNumber:req, ptr:req .byte 0xd4 - .byte \param0 - .4byte \param1 + .byte \turnNumber + .4byte \ptr .endm - .macro trysetroots param0:req + .macro trysetroots ptr:req .byte 0xd5 - .4byte \param0 + .4byte \ptr .endm .macro doubledamagedealtifdamaged .byte 0xd6 .endm - .macro setyawn param0:req + .macro setyawn ptr:req .byte 0xd7 - .4byte \param0 + .4byte \ptr .endm - .macro setdamagetohealthdifference param0:req + .macro setdamagetohealthdifference ptr:req .byte 0xd8 - .4byte \param0 + .4byte \ptr .endm .macro scaledamagebyhealthratio .byte 0xd9 .endm - .macro tryswapabilities param0:req + .macro tryswapabilities ptr:req .byte 0xda - .4byte \param0 + .4byte \ptr .endm - .macro tryimprison param0:req + .macro tryimprison ptr:req .byte 0xdb - .4byte \param0 + .4byte \ptr .endm - .macro trysetgrudge param0:req + .macro trysetgrudge ptr:req .byte 0xdc - .4byte \param0 + .4byte \ptr .endm .macro weightdamagecalculation .byte 0xdd .endm - .macro assistattackselect param0:req + .macro assistattackselect ptr:req .byte 0xde - .4byte \param0 + .4byte \ptr .endm - .macro trysetmagiccoat param0:req + .macro trysetmagiccoat ptr:req .byte 0xdf - .4byte \param0 + .4byte \ptr .endm - .macro trysetsnatch param0:req + .macro trysetsnatch ptr:req .byte 0xe0 - .4byte \param0 + .4byte \ptr .endm - .macro trygetintimidatetarget param0:req + .macro trygetintimidatetarget ptr:req .byte 0xe1 - .4byte \param0 + .4byte \ptr .endm .macro switchoutabilities battler:req @@ -1149,10 +1156,10 @@ .byte \battler .endm - .macro jumpifhasnohp battler:req, param1:req + .macro jumpifhasnohp battler:req, ptr:req .byte 0xe3 .byte \battler - .4byte \param1 + .4byte \ptr .endm .macro getsecretpowereffect @@ -1171,28 +1178,28 @@ .byte 0xe7 .endm - .macro settypebasedhalvers param0:req + .macro settypebasedhalvers ptr:req .byte 0xe8 - .4byte \param0 + .4byte \ptr .endm .macro setweatherballtype .byte 0xe9 .endm - .macro tryrecycleitem param0:req + .macro tryrecycleitem ptr:req .byte 0xea - .4byte \param0 + .4byte \ptr .endm - .macro settypetoterrain param0:req + .macro settypetoterrain ptr:req .byte 0xeb - .4byte \param0 + .4byte \ptr .endm - .macro pursuitrelated param0:req + .macro pursuitdoubles ptr:req .byte 0xec - .4byte \param0 + .4byte \ptr .endm .macro snatchsetbattlers @@ -1211,18 +1218,18 @@ .byte 0xf0 .endm - .macro trysetcaughtmondexflags param0:req + .macro trysetcaughtmondexflags ptr:req .byte 0xf1 - .4byte \param0 + .4byte \ptr .endm .macro displaydexinfo .byte 0xf2 .endm - .macro trygivecaughtmonnick param0:req + .macro trygivecaughtmonnick ptr:req .byte 0xf3 - .4byte \param0 + .4byte \ptr .endm .macro subattackerhpbydmg @@ -1241,9 +1248,9 @@ .byte 0xf7 .endm - .macro trainerslideout param0:req + .macro trainerslideout position:req .byte 0xf8 - .byte \param0 + .byte \position .endm @ various command changed to more readable macros @@ -1357,11 +1364,11 @@ @ helpful macros .macro setstatchanger stat:req, stages:req, down:req - setbyte sSTATCHANGER \stat | \stages << 4 | \down << 7 + setbyte sSTATCHANGER, \stat | \stages << 4 | \down << 7 .endm .macro setmoveeffect effect:req - setbyte cEFFECT_CHOOSER \effect + setbyte cEFFECT_CHOOSER, \effect .endm .macro chosenstatus1animation battler:req, status:req @@ -1413,11 +1420,11 @@ .endm .macro jumpifstatus3 battler:req, status:req, jumpptr:req - jumpifstatus3condition \battler, \status, 0x0, \jumpptr + jumpifstatus3condition \battler, \status, FALSE, \jumpptr .endm .macro jumpifnostatus3 battler:req, status:req, jumpptr:req - jumpifstatus3condition \battler, \status, 0x1, \jumpptr + jumpifstatus3condition \battler, \status, TRUE, \jumpptr .endm .macro jumpifmovehadnoeffect jumpptr:req diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 5a48e0b3c20f..eecb3d08df4e 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -262,7 +262,7 @@ BattleScript_HitFromAtkAnimation:: resultmessage waitmessage B_WAIT_TIME_LONG seteffectwithchance - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET BattleScript_MoveEnd:: moveendall end @@ -354,8 +354,8 @@ BattleScript_AbsorbUpdateHp:: printfromtable gAbsorbDrainStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AbsorbTryFainting:: - tryfaintmon BS_ATTACKER, FALSE, NULL - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_ATTACKER + tryfaintmon BS_TARGET goto BattleScript_MoveEnd BattleScript_EffectBurnHit:: @@ -399,10 +399,10 @@ BattleScript_ExplosionLoop: waitmessage B_WAIT_TIME_LONG resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER end BattleScript_ExplosionMissed: effectivenesssound @@ -410,7 +410,7 @@ BattleScript_ExplosionMissed: waitmessage B_WAIT_TIME_LONG moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_ExplosionLoop - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER end BattleScript_PreserveMissedBitDoMoveAnim: @@ -456,7 +456,7 @@ BattleScript_DreamEaterWorked: printstring STRINGID_PKMNDREAMEATEN waitmessage B_WAIT_TIME_LONG BattleScript_DreamEaterTryFaintEnd: - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET goto BattleScript_MoveEnd BattleScript_EffectMirrorMove:: @@ -647,7 +647,7 @@ BattleScript_MultiHitPrintStrings:: waitmessage B_WAIT_TIME_LONG BattleScript_MultiHitEnd:: seteffectwithchance - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendcase MOVEEND_SYNCHRONIZE_TARGET moveendfrom MOVEEND_IMMUNITY_ABILITIES end @@ -865,7 +865,7 @@ BattleScript_MoveMissedDoDamage:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER orbyte gMoveResultFlags, MOVE_RESULT_MISSED goto BattleScript_MoveEnd @@ -1431,7 +1431,7 @@ BattleScript_TripleKickPrintStrings:: waitmessage B_WAIT_TIME_LONG BattleScript_TripleKickEnd:: seteffectwithchance - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendfrom MOVEEND_UPDATE_LAST_MOVES end @@ -1524,7 +1524,7 @@ BattleScript_DoGhostCurse:: datahpupdate BS_ATTACKER printstring STRINGID_PKMNLAIDCURSE waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER goto BattleScript_MoveEnd BattleScript_EffectProtect:: @@ -1862,7 +1862,7 @@ BattleScript_DoHitAllWithUndergroundBonus:: waitmessage B_WAIT_TIME_LONG printstring STRINGID_EMPTYSTRING3 waitmessage 1 - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendto MOVEEND_NEXT_TARGET jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end @@ -1962,7 +1962,7 @@ BattleScript_BeatUpAttack:: waitmessage B_WAIT_TIME_LONG resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendto MOVEEND_NEXT_TARGET goto BattleScript_BeatUpLoop BattleScript_BeatUpEnd:: @@ -2227,7 +2227,7 @@ BattleScript_EffectMementoTrySpAtk: printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG BattleScript_EffectMementoTryFaint: - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER goto BattleScript_MoveEnd BattleScript_EffectMementoPrintNoEffect: printstring STRINGID_BUTNOEFFECT @@ -2243,7 +2243,7 @@ BattleScript_MementoFailEnd: effectivenesssound resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER goto BattleScript_MoveEnd BattleScript_EffectFacade:: @@ -2442,7 +2442,7 @@ BattleScript_BrickBreakDoHit:: resultmessage waitmessage B_WAIT_TIME_LONG seteffectwithchance - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET goto BattleScript_MoveEnd BattleScript_EffectYawn:: @@ -3045,7 +3045,7 @@ BattleScript_FrontierTrainerBattleWon_End: end2 BattleScript_SmokeBallEscape:: - playanimation BS_ATTACKER, B_ANIM_SMOKEBALL_ESCAPE, NULL + playanimation BS_ATTACKER, B_ANIM_SMOKEBALL_ESCAPE printstring STRINGID_PKMNFLEDUSINGITS waitmessage B_WAIT_TIME_LONG end2 @@ -3136,7 +3136,7 @@ BattleScript_PursuitDmgOnSwitchOut:: waitmessage B_WAIT_TIME_LONG resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET moveendfromto MOVEEND_ON_DAMAGE_ABILITIES, MOVEEND_CHOICE_MOVE getbattlerfainted BS_TARGET jumpifbyte CMP_EQUAL, gBattleCommunication, FALSE, BattleScript_PursuitDmgOnSwitchOutRet @@ -3190,14 +3190,14 @@ BattleScript_RainContinuesOrEnds:: printfromtable gRainContinuesStringIds waitmessage B_WAIT_TIME_LONG jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_RAIN_STOPPED, BattleScript_RainContinuesOrEndsEnd - playanimation BS_ATTACKER, B_ANIM_RAIN_CONTINUES, NULL + playanimation BS_ATTACKER, B_ANIM_RAIN_CONTINUES BattleScript_RainContinuesOrEndsEnd:: end2 BattleScript_DamagingWeatherContinues:: printfromtable gSandStormHailContinuesStringIds waitmessage B_WAIT_TIME_LONG - playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL + playanimation_var BS_ATTACKER, sB_ANIM_ARG1 setbyte gBattleCommunication, 0 BattleScript_DamagingWeatherLoop:: copyarraywithindex gBattlerAttacker, gBattlerByTurnOrder, gBattleCommunication, 1 @@ -3210,7 +3210,7 @@ BattleScript_DamagingWeatherLoop:: hitanimation BS_ATTACKER healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER checkteamslost BattleScript_DamagingWeatherLoopIncrement BattleScript_DamagingWeatherLoopIncrement:: jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_DamagingWeatherContinuesEnd @@ -3228,7 +3228,7 @@ BattleScript_SandStormHailEnds:: BattleScript_SunlightContinues:: printstring STRINGID_SUNLIGHTSTRONG waitmessage B_WAIT_TIME_LONG - playanimation BS_ATTACKER, B_ANIM_SUN_CONTINUES, NULL + playanimation BS_ATTACKER, B_ANIM_SUN_CONTINUES end2 BattleScript_SunlightFaded:: @@ -3239,7 +3239,7 @@ BattleScript_SunlightFaded:: BattleScript_OverworldWeatherStarts:: printfromtable gWeatherStartsStringIds waitmessage B_WAIT_TIME_LONG - playanimation2 BS_ATTACKER, sB_ANIM_ARG1, NULL + playanimation_var BS_ATTACKER, sB_ANIM_ARG1 end3 BattleScript_SideStatusWoreOff:: @@ -3277,8 +3277,8 @@ BattleScript_LeechSeedTurnPrintAndUpdateHp:: datahpupdate BS_TARGET printfromtable gLeechSeedStringIds waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_ATTACKER + tryfaintmon BS_TARGET end2 BattleScript_BideStoringEnergy:: @@ -3307,7 +3307,7 @@ BattleScript_BideAttack:: datahpupdate BS_TARGET resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET goto BattleScript_MoveEnd BattleScript_BideNoEnergyToAttack:: @@ -3379,7 +3379,7 @@ BattleScript_DestinyBondTakesLife:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER return BattleScript_SpikesOnAttacker:: @@ -3387,8 +3387,8 @@ BattleScript_SpikesOnAttacker:: healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER call BattleScript_PrintHurtBySpikes - tryfaintmon BS_ATTACKER, FALSE, NULL - tryfaintmon BS_ATTACKER, TRUE, BattleScript_SpikesOnAttackerFainted + tryfaintmon BS_ATTACKER + tryfaintmon_spikes BS_ATTACKER, BattleScript_SpikesOnAttackerFainted return BattleScript_SpikesOnAttackerFainted:: @@ -3402,8 +3402,8 @@ BattleScript_SpikesOnTarget:: healthbarupdate BS_TARGET datahpupdate BS_TARGET call BattleScript_PrintHurtBySpikes - tryfaintmon BS_TARGET, FALSE, NULL - tryfaintmon BS_TARGET, TRUE, BattleScript_SpikesOnTargetFainted + tryfaintmon BS_TARGET + tryfaintmon_spikes BS_TARGET, BattleScript_SpikesOnTargetFainted return BattleScript_SpikesOnTargetFainted:: @@ -3417,8 +3417,8 @@ BattleScript_SpikesOnFaintedBattler:: healthbarupdate BS_FAINTED datahpupdate BS_FAINTED call BattleScript_PrintHurtBySpikes - tryfaintmon BS_FAINTED, FALSE, NULL - tryfaintmon BS_FAINTED, TRUE, BattleScript_SpikesOnFaintedBattlerFainted + tryfaintmon BS_FAINTED + tryfaintmon_spikes BS_FAINTED, BattleScript_SpikesOnFaintedBattlerFainted return BattleScript_SpikesOnFaintedBattlerFainted:: @@ -3438,7 +3438,7 @@ BattleScript_PerishSongTakesLife:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER end2 BattleScript_PerishSongCountGoesDown:: @@ -3513,10 +3513,10 @@ BattleScript_CheckDoomDesireMiss:: BattleScript_FutureAttackAnimate:: adjustnormaldamage2 jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_FUTURE_SIGHT, BattleScript_FutureHitAnimDoomDesire - playanimation BS_ATTACKER, B_ANIM_FUTURE_SIGHT_HIT, NULL + playanimation BS_ATTACKER, B_ANIM_FUTURE_SIGHT_HIT goto BattleScript_DoFutureAttackHit BattleScript_FutureHitAnimDoomDesire:: - playanimation BS_ATTACKER, B_ANIM_DOOM_DESIRE_HIT, NULL + playanimation BS_ATTACKER, B_ANIM_DOOM_DESIRE_HIT BattleScript_DoFutureAttackHit:: effectivenesssound hitanimation BS_TARGET @@ -3525,7 +3525,7 @@ BattleScript_DoFutureAttackHit:: datahpupdate BS_TARGET resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_TARGET, FALSE, NULL + tryfaintmon BS_TARGET checkteamslost BattleScript_FutureAttackEnd BattleScript_FutureAttackEnd:: moveendcase MOVEEND_RAGE @@ -3585,7 +3585,7 @@ BattleScript_SelectingNotAllowedMoveTauntInPalace:: BattleScript_WishComesTrue:: trywish 1, BattleScript_WishButFullHp - playanimation BS_TARGET, B_ANIM_WISH_HEAL, NULL + playanimation BS_TARGET, B_ANIM_WISH_HEAL printstring STRINGID_PKMNWISHCAMETRUE waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE @@ -3604,7 +3604,7 @@ BattleScript_WishButFullHp:: end2 BattleScript_IngrainTurnHeal:: - playanimation BS_ATTACKER, B_ANIM_INGRAIN_HEAL, NULL + playanimation BS_ATTACKER, B_ANIM_INGRAIN_HEAL printstring STRINGID_PKMNABSORBEDNUTRIENTS waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE @@ -3638,7 +3638,7 @@ BattleScript_AtkDefDown_End:: return BattleScript_KnockedOff:: - playanimation BS_TARGET, B_ANIM_ITEM_KNOCKOFF, NULL + playanimation BS_TARGET, B_ANIM_ITEM_KNOCKOFF printstring STRINGID_PKMNKNOCKEDOFF waitmessage B_WAIT_TIME_LONG return @@ -3675,7 +3675,7 @@ BattleScript_SnatchedMove:: attackstring ppreduce snatchsetbattlers - playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL + playanimation BS_TARGET, B_ANIM_SNATCH_MOVE printstring STRINGID_PKMNSNATCHEDMOVE waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_ALLOW_NO_PP @@ -3706,7 +3706,7 @@ BattleScript_SAtkDown2End:: BattleScript_FocusPunchSetUp:: printstring STRINGID_EMPTYSTRING3 waitmessage 1 - playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP, NULL + playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP printstring STRINGID_PKMNTIGHTENINGFOCUS waitmessage B_WAIT_TIME_LONG end2 @@ -3739,7 +3739,7 @@ BattleScript_DoTurnDmg:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER checkteamslost BattleScript_DoTurnDmgEnd BattleScript_DoTurnDmgEnd:: end2 @@ -3808,7 +3808,7 @@ BattleScript_DoSelfConfusionDmg:: datahpupdate BS_ATTACKER resultmessage waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER goto BattleScript_MoveEnd BattleScript_MoveUsedIsConfusedRet:: return @@ -3941,12 +3941,12 @@ BattleScript_DoRecoil:: datahpupdate BS_ATTACKER printstring STRINGID_PKMNHITWITHRECOIL waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER BattleScript_RecoilEnd:: return BattleScript_ItemSteal:: - playanimation BS_TARGET, B_ANIM_ITEM_STEAL, NULL + playanimation BS_TARGET, B_ANIM_ITEM_STEAL printstring STRINGID_PKMNSTOLEITEM waitmessage B_WAIT_TIME_LONG return @@ -3955,7 +3955,7 @@ BattleScript_DrizzleActivates:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNMADEITRAIN waitstate - playanimation BS_BATTLER_0, B_ANIM_RAIN_CONTINUES, NULL + playanimation BS_BATTLER_0, B_ANIM_RAIN_CONTINUES call BattleScript_WeatherFormChanges end3 @@ -3983,7 +3983,7 @@ BattleScript_SandstreamActivates:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXWHIPPEDUPSANDSTORM waitstate - playanimation BS_BATTLER_0, B_ANIM_SANDSTORM_CONTINUES, NULL + playanimation BS_BATTLER_0, B_ANIM_SANDSTORM_CONTINUES call BattleScript_WeatherFormChanges end3 @@ -4048,7 +4048,7 @@ BattleScript_DroughtActivates:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXINTENSIFIEDSUN waitstate - playanimation BS_BATTLER_0, B_ANIM_SUN_CONTINUES, NULL + playanimation BS_BATTLER_0, B_ANIM_SUN_CONTINUES call BattleScript_WeatherFormChanges end3 @@ -4184,7 +4184,7 @@ BattleScript_RoughSkinActivates:: datahpupdate BS_ATTACKER printstring STRINGID_PKMNHURTSWITH waitmessage B_WAIT_TIME_LONG - tryfaintmon BS_ATTACKER, FALSE, NULL + tryfaintmon BS_ATTACKER return BattleScript_CuteCharmActivates:: @@ -4252,7 +4252,7 @@ BattleScript_IgnoresAndHitsItself:: goto BattleScript_DoSelfConfusionDmg BattleScript_SubstituteFade:: - playanimation BS_TARGET, B_ANIM_SUBSTITUTE_FADE, NULL + playanimation BS_TARGET, B_ANIM_SUBSTITUTE_FADE printstring STRINGID_PKMNSUBSTITUTEFADED return @@ -4261,7 +4261,7 @@ BattleScript_BerryCurePrlzEnd2:: end2 BattleScript_BerryCureParRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMCUREDPARALYSIS waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4273,7 +4273,7 @@ BattleScript_BerryCurePsnEnd2:: end2 BattleScript_BerryCurePsnRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMCUREDPOISON waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4285,7 +4285,7 @@ BattleScript_BerryCureBrnEnd2:: end2 BattleScript_BerryCureBrnRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMHEALEDBURN waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4297,7 +4297,7 @@ BattleScript_BerryCureFrzEnd2:: end2 BattleScript_BerryCureFrzRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMDEFROSTEDIT waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4309,7 +4309,7 @@ BattleScript_BerryCureSlpEnd2:: end2 BattleScript_BerryCureSlpRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMWOKEIT waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4321,7 +4321,7 @@ BattleScript_BerryCureConfusionEnd2:: end2 BattleScript_BerryCureConfusionRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMSNAPPEDOUT waitmessage B_WAIT_TIME_LONG removeitem BS_SCRIPTING @@ -4332,7 +4332,7 @@ BattleScript_BerryCureChosenStatusEnd2:: end2 BattleScript_BerryCureChosenStatusRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printfromtable gBerryEffectStringIds waitmessage B_WAIT_TIME_LONG updatestatusicon BS_SCRIPTING @@ -4344,14 +4344,14 @@ BattleScript_WhiteHerbEnd2:: end2 BattleScript_WhiteHerbRet:: - playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDSTATUS waitmessage B_WAIT_TIME_LONG removeitem BS_SCRIPTING return BattleScript_ItemHealHP_RemoveItem:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE @@ -4361,7 +4361,7 @@ BattleScript_ItemHealHP_RemoveItem:: end2 BattleScript_BerryPPHealEnd2:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDPP waitmessage B_WAIT_TIME_LONG removeitem BS_ATTACKER @@ -4372,7 +4372,7 @@ BattleScript_ItemHealHP_End2:: end2 BattleScript_ItemHealHP_Ret:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHPALITTLE waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE @@ -4385,13 +4385,13 @@ BattleScript_SelectingNotAllowedMoveChoiceItem:: endselectionscript BattleScript_FocusBandActivates:: - playanimation BS_TARGET, B_ANIM_FOCUS_BAND, NULL + playanimation BS_TARGET, B_ANIM_FOCUS_BAND printstring STRINGID_PKMNHUNGONWITHX waitmessage B_WAIT_TIME_LONG return BattleScript_BerryConfuseHealEnd2:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE @@ -4405,7 +4405,7 @@ BattleScript_BerryConfuseHealEnd2:: end2 BattleScript_BerryStatRaiseEnd2:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp BattleScript_BerryStatRaiseDoStatUp:: setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_ROSE_ITEM @@ -4414,7 +4414,7 @@ BattleScript_BerryStatRaiseDoStatUp:: end2 BattleScript_BerryFocusEnergyEnd2:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT, NULL + playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNUSEDXTOGETPUMPED waitmessage B_WAIT_TIME_LONG removeitem BS_ATTACKER diff --git a/include/battle.h b/include/battle.h index 5a30bc90c891..9434b9aa88cb 100644 --- a/include/battle.h +++ b/include/battle.h @@ -41,19 +41,6 @@ #define B_ACTION_NOTHING_FAINTED 13 // when choosing an action #define B_ACTION_NONE 0xFF -// array entries for battle communication -#define MULTIUSE_STATE 0 -#define CURSOR_POSITION 1 -#define TASK_ID 1 // task Id and cursor position share the same field -#define SPRITES_INIT_STATE1 1 // shares the Id as well -#define SPRITES_INIT_STATE2 2 -#define MOVE_EFFECT_BYTE 3 -#define ACTIONS_CONFIRMED_COUNT 4 -#define MULTISTRING_CHOOSER 5 -#define MISS_TYPE 6 -#define MSG_DISPLAY 7 -#define BATTLE_COMMUNICATION_ENTRIES_COUNT 8 - #define MOVE_TARGET_SELECTED 0 #define MOVE_TARGET_DEPENDS (1 << 0) #define MOVE_TARGET_USER_OR_SELECTED (1 << 1) @@ -487,6 +474,8 @@ struct BattleStruct #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 struct BattleScripting { s32 painSplitHp; @@ -509,7 +498,7 @@ struct BattleScripting u8 battleStyle; u8 drawlvlupboxState; u8 learnMoveState; - u8 field_20; + u8 pursuitDoublesAttacker; u8 reshowMainState; u8 reshowHelperState; u8 levelUpHP; @@ -518,9 +507,6 @@ struct BattleScripting u8 specialTrainerBattleType; }; -// rom_80A5C6C - - struct BattleSpriteInfo { u16 invisible:1; // 0x1 diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h index 90b6d80e865b..cb81ad812416 100644 --- a/include/battle_script_commands.h +++ b/include/battle_script_commands.h @@ -2,6 +2,7 @@ #define GUARD_BATTLE_SCRIPT_COMMANDS_H #include "constants/pokemon.h" +#include "constants/battle_script_commands.h" // Arguments for 'flags' in HandleBattleWindow #define WINDOW_CLEAR (1 << 0) diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index f3e11b4be33b..83aacf316065 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -1,38 +1,51 @@ #ifndef GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H #define GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H -// Battle Scripting and BattleCommunication addresses -#define sPAINSPLIT_HP gBattleScripting -#define sBIDE_DMG gBattleScripting + 4 -#define sMULTIHIT_STRING gBattleScripting + 8 -#define sDMG_MULTIPLIER gBattleScripting + 0xE -#define sTWOTURN_STRINGID gBattleScripting + 0xF -#define sB_ANIM_ARG1 gBattleScripting + 0x10 -#define sB_ANIM_ARG2 gBattleScripting + 0x11 -#define sTRIPLE_KICK_POWER gBattleScripting + 0x12 -#define sMOVEEND_STATE gBattleScripting + 0x14 -#define sBATTLER_WITH_ABILITY gBattleScripting + 0x15 -#define sMULTIHIT_EFFECT gBattleScripting + 0x16 -#define sBATTLER gBattleScripting + 0x17 -#define sB_ANIM_TURN gBattleScripting + 0x18 -#define sB_ANIM_TARGETS_HIT gBattleScripting + 0x19 -#define sSTATCHANGER gBattleScripting + 0x1A -#define sSTAT_ANIM_PLAYED gBattleScripting + 0x1B -#define sGIVEEXP_STATE gBattleScripting + 0x1C -#define sBATTLE_STYLE gBattleScripting + 0x1D -#define sLVLBOX_STATE gBattleScripting + 0x1E -#define sLEARNMOVE_STATE gBattleScripting + 0x1F -#define sFIELD_20 gBattleScripting + 0x20 -#define sRESHOW_MAIN_STATE gBattleScripting + 0x21 -#define sRESHOW_HELPER_STATE gBattleScripting + 0x22 -#define sFIELD_23 gBattleScripting + 0x23 -#define sWINDOWS_TYPE gBattleScripting + 0x24 -#define sMULTIPLAYER_ID gBattleScripting + 0x25 -#define sSPECIAL_TRAINER_BATTLE_TYPE gBattleScripting + 0x26 +// The following correspond to the struct members of BattleScripting by adding their offset +#define sPAINSPLIT_HP (gBattleScripting + 0x00) // painSplitHp +#define sBIDE_DMG (gBattleScripting + 0x04) // bideDmg +#define sMULTIHIT_STRING (gBattleScripting + 0x08) // multihitString +#define sDMG_MULTIPLIER (gBattleScripting + 0x0E) // dmgMultiplier +#define sTWOTURN_STRINGID (gBattleScripting + 0x0F) // twoTurnsMoveStringId +#define sB_ANIM_ARG1 (gBattleScripting + 0x10) // animArg1 +#define sB_ANIM_ARG2 (gBattleScripting + 0x11) // animArg2 +#define sTRIPLE_KICK_POWER (gBattleScripting + 0x12) // tripleKickPower +#define sMOVEEND_STATE (gBattleScripting + 0x14) // moveendState +#define sBATTLER_WITH_ABILITY (gBattleScripting + 0x15) // battlerWithAbility +#define sMULTIHIT_EFFECT (gBattleScripting + 0x16) // multihitMoveEffect +#define sBATTLER (gBattleScripting + 0x17) // battler +#define sB_ANIM_TURN (gBattleScripting + 0x18) // animTurn +#define sB_ANIM_TARGETS_HIT (gBattleScripting + 0x19) // animTargetsHit +#define sSTATCHANGER (gBattleScripting + 0x1A) // statChanger +#define sSTAT_ANIM_PLAYED (gBattleScripting + 0x1B) // statAnimPlayed +#define sGIVEEXP_STATE (gBattleScripting + 0x1C) // getexpState +#define sBATTLE_STYLE (gBattleScripting + 0x1D) // battleStyle +#define sLVLBOX_STATE (gBattleScripting + 0x1E) // drawlvlupboxState +#define sLEARNMOVE_STATE (gBattleScripting + 0x1F) // learnMoveState +#define sPURSUIT_DOUBLES_ATTACKER (gBattleScripting + 0x20) // pursuitDoublesAttacker +#define sRESHOW_MAIN_STATE (gBattleScripting + 0x21) // reshowMainState +#define sRESHOW_HELPER_STATE (gBattleScripting + 0x22) // reshowHelperState +#define sLVLUP_HP (gBattleScripting + 0x23) // levelUpHP +#define sWINDOWS_TYPE (gBattleScripting + 0x24) // windowsType +#define sMULTIPLAYER_ID (gBattleScripting + 0x25) // multiplayerId +#define sSPECIAL_TRAINER_BATTLE_TYPE (gBattleScripting + 0x26) // specialTrainerBattleType -#define cEFFECT_CHOOSER gBattleCommunication + 3 -#define cMULTISTRING_CHOOSER gBattleCommunication + 5 -#define cMISS_TYPE gBattleCommunication + 6 +// Array entries for battle communication +#define MULTIUSE_STATE 0 +#define CURSOR_POSITION 1 +#define TASK_ID 1 // task Id and cursor position share the same field +#define SPRITES_INIT_STATE1 1 // shares the Id as well +#define SPRITES_INIT_STATE2 2 +#define MOVE_EFFECT_BYTE 3 +#define ACTIONS_CONFIRMED_COUNT 4 +#define MULTISTRING_CHOOSER 5 +#define MISS_TYPE 6 +#define MSG_DISPLAY 7 +#define BATTLE_COMMUNICATION_ENTRIES_COUNT 8 + +#define cEFFECT_CHOOSER (gBattleCommunication + MOVE_EFFECT_BYTE) +#define cMULTISTRING_CHOOSER (gBattleCommunication + MULTISTRING_CHOOSER) +#define cMISS_TYPE (gBattleCommunication + MISS_TYPE) // Battle Script defines for getting the wanted battler #define BS_TARGET 0 diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 9056aa58da0a..0ecb1736862c 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1,25 +1,15 @@ #include "global.h" #include "battle.h" -#include "constants/battle_move_effects.h" -#include "constants/battle_script_commands.h" #include "battle_message.h" #include "battle_anim.h" #include "battle_ai_script_commands.h" #include "battle_scripts.h" -#include "constants/moves.h" -#include "constants/abilities.h" #include "item.h" -#include "constants/items.h" -#include "constants/hold_effects.h" #include "util.h" #include "pokemon.h" #include "random.h" #include "battle_controllers.h" #include "battle_interface.h" -#include "constants/songs.h" -#include "constants/trainers.h" -#include "constants/battle_anim.h" -#include "constants/map_types.h" #include "text.h" #include "sound.h" #include "pokedex.h" @@ -38,7 +28,6 @@ #include "pokemon_storage_system.h" #include "task.h" #include "naming_screen.h" -#include "constants/battle_string_ids.h" #include "battle_setup.h" #include "overworld.h" #include "party_menu.h" @@ -49,9 +38,19 @@ #include "pokemon_summary_screen.h" #include "pokenav.h" #include "menu_specialized.h" -#include "constants/rgb.h" #include "data.h" +#include "constants/abilities.h" +#include "constants/battle_anim.h" +#include "constants/battle_move_effects.h" +#include "constants/battle_string_ids.h" +#include "constants/hold_effects.h" +#include "constants/items.h" +#include "constants/map_types.h" +#include "constants/moves.h" #include "constants/party_menu.h" +#include "constants/rgb.h" +#include "constants/songs.h" +#include "constants/trainers.h" extern const u8* const gBattleScriptsForMoveEffects[]; @@ -147,7 +146,7 @@ static void Cmd_jumpiftype2(void); static void Cmd_jumpifabilitypresent(void); static void Cmd_endselectionscript(void); static void Cmd_playanimation(void); -static void Cmd_playanimation2(void); +static void Cmd_playanimation_var(void); static void Cmd_setgraphicalstatchangevalues(void); static void Cmd_playstatchangeanimation(void); static void Cmd_moveend(void); @@ -313,7 +312,7 @@ static void Cmd_settypebasedhalvers(void); static void Cmd_setweatherballtype(void); static void Cmd_tryrecycleitem(void); static void Cmd_settypetoterrain(void); -static void Cmd_pursuitrelated(void); +static void Cmd_pursuitdoubles(void); static void Cmd_snatchsetbattlers(void); static void Cmd_removelightscreenreflect(void); static void Cmd_handleballthrow(void); @@ -399,7 +398,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_jumpifabilitypresent, //0x43 Cmd_endselectionscript, //0x44 Cmd_playanimation, //0x45 - Cmd_playanimation2, //0x46 + Cmd_playanimation_var, //0x46 Cmd_setgraphicalstatchangevalues, //0x47 Cmd_playstatchangeanimation, //0x48 Cmd_moveend, //0x49 @@ -565,7 +564,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_setweatherballtype, //0xE9 Cmd_tryrecycleitem, //0xEA Cmd_settypetoterrain, //0xEB - Cmd_pursuitrelated, //0xEC + Cmd_pursuitdoubles, //0xEC Cmd_snatchsetbattlers, //0xED Cmd_removelightscreenreflect, //0xEE Cmd_handleballthrow, //0xEF @@ -1115,7 +1114,7 @@ static void Cmd_accuracycheck(void) s8 buff; u16 calc; - if (move == 0) + if (move == ACC_CURR_MOVE) move = gCurrentMove; GET_MOVE_TYPE(move, type); @@ -3183,23 +3182,23 @@ static void Cmd_jumpifstat(void) static void Cmd_jumpifstatus3condition(void) { - u32 flags; + u32 status; const u8 *jumpPtr; gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - flags = T2_READ_32(gBattlescriptCurrInstr + 2); + status = T2_READ_32(gBattlescriptCurrInstr + 2); jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 7); if (gBattlescriptCurrInstr[6]) { - if ((gStatuses3[gActiveBattler] & flags) != 0) + if ((gStatuses3[gActiveBattler] & status) != 0) gBattlescriptCurrInstr += 11; else gBattlescriptCurrInstr = jumpPtr; } else { - if ((gStatuses3[gActiveBattler] & flags) != 0) + if ((gStatuses3[gActiveBattler] & status) != 0) gBattlescriptCurrInstr = jumpPtr; else gBattlescriptCurrInstr += 11; @@ -3514,8 +3513,7 @@ static void Cmd_checkteamslost(void) // In multi battle with Steven, skip his PokĂ©mon for (i = 0; i < MULTI_PARTY_SIZE; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) - && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) + if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) HP_count += GetMonData(&gPlayerParty[i], MON_DATA_HP); } } @@ -3523,10 +3521,8 @@ static void Cmd_checkteamslost(void) { for (i = 0; i < PARTY_SIZE; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) - && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) - && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) - || !(gBattleStruct->arenaLostPlayerMons & gBitTable[i]))) + if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) + && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || !(gBattleStruct->arenaLostPlayerMons & gBitTable[i]))) { HP_count += GetMonData(&gPlayerParty[i], MON_DATA_HP); } @@ -3539,10 +3535,8 @@ static void Cmd_checkteamslost(void) // Get total HP for the enemy's party to determine if the player has won for (i = 0; i < PARTY_SIZE; i++) { - if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES) - && !GetMonData(&gEnemyParty[i], MON_DATA_IS_EGG) - && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) - || !(gBattleStruct->arenaLostOpponentMons & gBitTable[i]))) + if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES) && !GetMonData(&gEnemyParty[i], MON_DATA_IS_EGG) + && (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || !(gBattleStruct->arenaLostOpponentMons & gBitTable[i]))) { HP_count += GetMonData(&gEnemyParty[i], MON_DATA_HP); } @@ -3982,8 +3976,8 @@ static void Cmd_playanimation(void) argumentPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); if (gBattlescriptCurrInstr[2] == B_ANIM_STATS_CHANGE - || gBattlescriptCurrInstr[2] == B_ANIM_SNATCH_MOVE - || gBattlescriptCurrInstr[2] == B_ANIM_SUBSTITUTE_FADE) + || gBattlescriptCurrInstr[2] == B_ANIM_SNATCH_MOVE + || gBattlescriptCurrInstr[2] == B_ANIM_SUBSTITUTE_FADE) { BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); @@ -3995,9 +3989,9 @@ static void Cmd_playanimation(void) gBattlescriptCurrInstr = BattleScript_Pausex20; } else if (gBattlescriptCurrInstr[2] == B_ANIM_RAIN_CONTINUES - || gBattlescriptCurrInstr[2] == B_ANIM_SUN_CONTINUES - || gBattlescriptCurrInstr[2] == B_ANIM_SANDSTORM_CONTINUES - || gBattlescriptCurrInstr[2] == B_ANIM_HAIL_CONTINUES) + || gBattlescriptCurrInstr[2] == B_ANIM_SUN_CONTINUES + || gBattlescriptCurrInstr[2] == B_ANIM_SANDSTORM_CONTINUES + || gBattlescriptCurrInstr[2] == B_ANIM_HAIL_CONTINUES) { BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); @@ -4015,7 +4009,8 @@ static void Cmd_playanimation(void) } } -static void Cmd_playanimation2(void) // animation Id is stored in the first pointer +// Same as playanimation, expect it takes a pointer to some animation id, instead of taking the value directly +static void Cmd_playanimation_var(void) { const u16* argumentPtr; const u8* animationIdPtr; @@ -4025,8 +4020,8 @@ static void Cmd_playanimation2(void) // animation Id is stored in the first poin argumentPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); if (*animationIdPtr == B_ANIM_STATS_CHANGE - || *animationIdPtr == B_ANIM_SNATCH_MOVE - || *animationIdPtr == B_ANIM_SUBSTITUTE_FADE) + || *animationIdPtr == B_ANIM_SNATCH_MOVE + || *animationIdPtr == B_ANIM_SUBSTITUTE_FADE) { BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); @@ -4037,9 +4032,9 @@ static void Cmd_playanimation2(void) // animation Id is stored in the first poin gBattlescriptCurrInstr += 10; } else if (*animationIdPtr == B_ANIM_RAIN_CONTINUES - || *animationIdPtr == B_ANIM_SUN_CONTINUES - || *animationIdPtr == B_ANIM_SANDSTORM_CONTINUES - || *animationIdPtr == B_ANIM_HAIL_CONTINUES) + || *animationIdPtr == B_ANIM_SUN_CONTINUES + || *animationIdPtr == B_ANIM_SANDSTORM_CONTINUES + || *animationIdPtr == B_ANIM_HAIL_CONTINUES) { BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr); MarkBattlerForControllerExec(gActiveBattler); @@ -4186,7 +4181,7 @@ static void Cmd_moveend(void) u8 moveType = 0; u8 holdEffectAtk = 0; u16 *choicedMoveAtk = NULL; - u8 arg1, arg2; + u8 endMode, endState; u16 originallyUsedMove; if (gChosenMove == 0xFFFF) @@ -4194,8 +4189,8 @@ static void Cmd_moveend(void) else originallyUsedMove = gChosenMove; - arg1 = gBattlescriptCurrInstr[1]; - arg2 = gBattlescriptCurrInstr[2]; + endMode = gBattlescriptCurrInstr[1]; + endState = gBattlescriptCurrInstr[2]; if (gBattleMons[gBattlerAttacker].item == ITEM_ENIGMA_BERRY) holdEffectAtk = gEnigmaBerries[gBattlerAttacker].holdEffect; @@ -4450,9 +4445,9 @@ static void Cmd_moveend(void) break; } - if (arg1 == 1 && effect == FALSE) + if (endMode == 1 && effect == FALSE) gBattleScripting.moveendState = MOVEEND_COUNT; - if (arg1 == 2 && arg2 == gBattleScripting.moveendState) + if (endMode == 2 && endState == gBattleScripting.moveendState) gBattleScripting.moveendState = MOVEEND_COUNT; } while (gBattleScripting.moveendState != MOVEEND_COUNT && effect == FALSE); @@ -5318,16 +5313,16 @@ static void Cmd_returntoball(void) static void Cmd_handlelearnnewmove(void) { - const u8 *jumpPtr1 = T1_READ_PTR(gBattlescriptCurrInstr + 1); - const u8 *jumpPtr2 = T1_READ_PTR(gBattlescriptCurrInstr + 5); + const u8 *learnedMovePtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *nothingToLearnPtr = T1_READ_PTR(gBattlescriptCurrInstr + 5); u16 learnMove = MonTryLearningNewMove(&gPlayerParty[gBattleStruct->expGetterMonId], gBattlescriptCurrInstr[9]); while (learnMove == MON_ALREADY_KNOWS_MOVE) learnMove = MonTryLearningNewMove(&gPlayerParty[gBattleStruct->expGetterMonId], FALSE); - if (learnMove == 0) + if (learnMove == MOVE_NONE) { - gBattlescriptCurrInstr = jumpPtr2; + gBattlescriptCurrInstr = nothingToLearnPtr; } else if (learnMove == MON_HAS_MAX_MOVES) { @@ -5352,7 +5347,7 @@ static void Cmd_handlelearnnewmove(void) } } - gBattlescriptCurrInstr = jumpPtr1; + gBattlescriptCurrInstr = learnedMovePtr; } } @@ -9718,7 +9713,8 @@ static void Cmd_settypetoterrain(void) } } -static void Cmd_pursuitrelated(void) +// Unused +static void Cmd_pursuitdoubles(void) { gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); @@ -9731,7 +9727,7 @@ static void Cmd_pursuitrelated(void) gCurrentMove = MOVE_PURSUIT; gBattlescriptCurrInstr += 5; gBattleScripting.animTurn = 1; - gBattleScripting.field_20 = gBattlerAttacker; + gBattleScripting.pursuitDoublesAttacker = gBattlerAttacker; gBattlerAttacker = gActiveBattler; } else From 9ab03f454ddf6f9627e6252fe974897749aa2f3f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 13 Oct 2021 23:24:10 -0400 Subject: [PATCH 299/762] Small correction to map script comments --- include/constants/map_scripts.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/constants/map_scripts.h b/include/constants/map_scripts.h index 7a56cc9085df..c89df39482da 100644 --- a/include/constants/map_scripts.h +++ b/include/constants/map_scripts.h @@ -13,14 +13,14 @@ Almost exclusively used to set metatiles on the map before it's first drawn 6. ON_FRAME_TABLE: Run every frame after the map has faded in, before player input is processed. - This is a table of scripts that each run if their condition is satisfied. + This is a table of scripts; only the first script whose condition is satisfied is run. Used to trigger an event, such as the player exiting the cable car or the SS Tidal sailor announcing progress 2. ON_TRANSITION: Run during the transition to the map Used to set map-specific flags/vars, update object positions/movement types, set weather, etc 5. ON_WARP_INTO_MAP_TABLE: Run after the map's objects are loaded. - This is a table of scripts that each run if their condition is satisfied. + This is a table of scripts; only the first script whose condition is satisfied is run. Used to add objects to the scene or update something about the player as they warp in (e.g. their facing dir or visibility) Note that ON_TRANSITION may also handle object visibility, but would do so by modifying a flag or var From 2f6928f01688728ef1a390de5caa6990dc60bf31 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Oct 2021 09:52:33 -0400 Subject: [PATCH 300/762] Make calcrom data info optional --- .github/calcrom/calcrom.pl | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/.github/calcrom/calcrom.pl b/.github/calcrom/calcrom.pl index 4858babb953f..2aaf25c436c5 100755 --- a/.github/calcrom/calcrom.pl +++ b/.github/calcrom/calcrom.pl @@ -1,12 +1,18 @@ #!/usr/bin/perl use IPC::Cmd qw[ run ]; +use Getopt::Long; -(@ARGV == 1) - or die "ERROR: no map file specified.\n"; +my $usage = "Usage: calcrom.pl file.map [--data]\n"; + +(@ARGV >= 1) + or die $usage; open(my $file, $ARGV[0]) or die "ERROR: could not open file '$ARGV[0]'.\n"; +my $showData; +GetOptions("data" => \$showData) or die $usage; + my $src = 0; my $asm = 0; my $srcdata = 0; @@ -149,17 +155,13 @@ print "$undocumented symbols undocumented ($undocPct%)\n"; } -print "\n"; -my $dataTotal = $srcdata + $data; -my $srcDataPct = sprintf("%.4f", 100 * $srcdata / $dataTotal); -my $dataPct = sprintf("%.4f", 100 * $data / $dataTotal); - -if ($data == 0) -{ - print "Data porting to C is 100% complete\n" -} -else +if ($showData) { + print "\n"; + my $dataTotal = $srcdata + $data; + my $srcDataPct = sprintf("%.4f", 100 * $srcdata / $dataTotal); + my $dataPct = sprintf("%.4f", 100 * $data / $dataTotal); + print "$dataTotal total bytes of data\n"; print "$srcdata bytes of data in src ($srcDataPct%)\n"; print "$data bytes of data in data ($dataPct%)\n"; From ceb871e3fafb8bc174e4dd355f64ec50a67c9c95 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Oct 2021 10:15:08 -0400 Subject: [PATCH 301/762] Process calcrom options first --- .github/calcrom/calcrom.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/calcrom/calcrom.pl b/.github/calcrom/calcrom.pl index 2aaf25c436c5..c351c76122db 100755 --- a/.github/calcrom/calcrom.pl +++ b/.github/calcrom/calcrom.pl @@ -5,14 +5,14 @@ my $usage = "Usage: calcrom.pl file.map [--data]\n"; -(@ARGV >= 1) +my $showData; +GetOptions("data" => \$showData) or die $usage; + +(@ARGV == 1) or die $usage; open(my $file, $ARGV[0]) or die "ERROR: could not open file '$ARGV[0]'.\n"; -my $showData; -GetOptions("data" => \$showData) or die $usage; - my $src = 0; my $asm = 0; my $srcdata = 0; From 95406384f4b8291238a4822ad0bf20a9b491df72 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Oct 2021 12:12:16 -0400 Subject: [PATCH 302/762] Start wonder card/news documenting --- gflib/bg.c | 18 +- gflib/bg.h | 6 + .../wonder_card_1.bin => wonder_card/bg1.bin} | Bin .../wonder_card_1.png => wonder_card/bg1.png} | Bin .../wonder_card_2.bin => wonder_card/bg2.bin} | Bin .../wonder_card_2.png => wonder_card/bg2.png} | Bin .../wonder_card_3.bin => wonder_card/bg3.bin} | Bin .../wonder_card_3.png => wonder_card/bg3.png} | Bin .../wonder_card_4.png => wonder_card/bg4.png} | Bin .../wonder_card_5.png => wonder_card/bg5.png} | Bin .../wonder_card_6.png => wonder_card/bg6.png} | Bin .../wonder_card_7.bin => wonder_card/bg7.bin} | Bin .../wonder_card_7.png => wonder_card/bg7.png} | Bin .../wonder_card_8.bin => wonder_card/bg8.bin} | Bin .../wonder_card_8.png => wonder_card/bg8.png} | Bin .../icon_shadow.png} | Bin .../icon_shadow_1.pal} | 0 .../icon_shadow_2.pal} | 0 .../icon_shadow_3.pal} | 0 .../icon_shadow_4.pal} | 0 .../icon_shadow_5.pal} | 0 .../icon_shadow_6.pal} | 0 .../icon_shadow_7.pal} | 0 .../icon_shadow_8.pal} | 0 .../wonder_news_1.bin => wonder_news/bg1.bin} | Bin .../wonder_news_1.png => wonder_news/bg1.png} | Bin .../wonder_news_2.bin => wonder_news/bg2.bin} | Bin .../wonder_news_2.png => wonder_news/bg2.png} | Bin .../wonder_news_3.bin => wonder_news/bg3.bin} | Bin .../wonder_news_3.png => wonder_news/bg3.png} | Bin .../wonder_news_7.bin => wonder_news/bg7.bin} | Bin .../wonder_news_7.png => wonder_news/bg7.png} | Bin .../wonder_news_8.bin => wonder_news/bg8.bin} | Bin .../wonder_news_8.png => wonder_news/bg8.png} | Bin include/constants/global.h | 2 + include/constants/mevent.h | 3 + include/global.h | 18 +- include/mevent_801BAAC.h | 16 - include/wonder_transfer.h | 24 + ld_script.txt | 4 +- src/mevent2.c | 10 +- src/mevent_801BAAC.c | 826 ----------------- src/mystery_gift.c | 139 +-- src/wonder_transfer.c | 870 ++++++++++++++++++ sym_ewram.txt | 2 +- 45 files changed, 950 insertions(+), 988 deletions(-) rename graphics/{wonder_transfers/wonder_card_1.bin => wonder_card/bg1.bin} (100%) rename graphics/{wonder_transfers/wonder_card_1.png => wonder_card/bg1.png} (100%) rename graphics/{wonder_transfers/wonder_card_2.bin => wonder_card/bg2.bin} (100%) rename graphics/{wonder_transfers/wonder_card_2.png => wonder_card/bg2.png} (100%) rename graphics/{wonder_transfers/wonder_card_3.bin => wonder_card/bg3.bin} (100%) rename graphics/{wonder_transfers/wonder_card_3.png => wonder_card/bg3.png} (100%) rename graphics/{wonder_transfers/wonder_card_4.png => wonder_card/bg4.png} (100%) rename graphics/{wonder_transfers/wonder_card_5.png => wonder_card/bg5.png} (100%) rename graphics/{wonder_transfers/wonder_card_6.png => wonder_card/bg6.png} (100%) rename graphics/{wonder_transfers/wonder_card_7.bin => wonder_card/bg7.bin} (100%) rename graphics/{wonder_transfers/wonder_card_7.png => wonder_card/bg7.png} (100%) rename graphics/{wonder_transfers/wonder_card_8.bin => wonder_card/bg8.bin} (100%) rename graphics/{wonder_transfers/wonder_card_8.png => wonder_card/bg8.png} (100%) rename graphics/{wonder_transfers/wonder_card_shadow.png => wonder_card/icon_shadow.png} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_1.pal => wonder_card/icon_shadow_1.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_2.pal => wonder_card/icon_shadow_2.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_3.pal => wonder_card/icon_shadow_3.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_4.pal => wonder_card/icon_shadow_4.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_5.pal => wonder_card/icon_shadow_5.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_6.pal => wonder_card/icon_shadow_6.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_7.pal => wonder_card/icon_shadow_7.pal} (100%) rename graphics/{wonder_transfers/wonder_card_shadow_8.pal => wonder_card/icon_shadow_8.pal} (100%) rename graphics/{wonder_transfers/wonder_news_1.bin => wonder_news/bg1.bin} (100%) rename graphics/{wonder_transfers/wonder_news_1.png => wonder_news/bg1.png} (100%) rename graphics/{wonder_transfers/wonder_news_2.bin => wonder_news/bg2.bin} (100%) rename graphics/{wonder_transfers/wonder_news_2.png => wonder_news/bg2.png} (100%) rename graphics/{wonder_transfers/wonder_news_3.bin => wonder_news/bg3.bin} (100%) rename graphics/{wonder_transfers/wonder_news_3.png => wonder_news/bg3.png} (100%) rename graphics/{wonder_transfers/wonder_news_7.bin => wonder_news/bg7.bin} (100%) rename graphics/{wonder_transfers/wonder_news_7.png => wonder_news/bg7.png} (100%) rename graphics/{wonder_transfers/wonder_news_8.bin => wonder_news/bg8.bin} (100%) rename graphics/{wonder_transfers/wonder_news_8.png => wonder_news/bg8.png} (100%) delete mode 100644 include/mevent_801BAAC.h create mode 100644 include/wonder_transfer.h delete mode 100644 src/mevent_801BAAC.c create mode 100644 src/wonder_transfer.c diff --git a/gflib/bg.c b/gflib/bg.c index 283a87ce05e4..fd72f2d24011 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -553,14 +553,14 @@ s32 ChangeBgX(u8 bg, s32 value, u8 op) switch (op) { - case 0: + case BG_COORD_SET: default: sGpuBgConfigs2[bg].bg_x = value; break; - case 1: + case BG_COORD_ADD: sGpuBgConfigs2[bg].bg_x += value; break; - case 2: + case BG_COORD_SUB: sGpuBgConfigs2[bg].bg_x -= value; break; } @@ -633,14 +633,14 @@ s32 ChangeBgY(u8 bg, s32 value, u8 op) switch (op) { - case 0: + case BG_COORD_SET: default: sGpuBgConfigs2[bg].bg_y = value; break; - case 1: + case BG_COORD_ADD: sGpuBgConfigs2[bg].bg_y += value; break; - case 2: + case BG_COORD_SUB: sGpuBgConfigs2[bg].bg_y -= value; break; } @@ -703,14 +703,14 @@ s32 ChangeBgY_ScreenOff(u8 bg, s32 value, u8 op) switch (op) { - case 0: + case BG_COORD_SET: default: sGpuBgConfigs2[bg].bg_y = value; break; - case 1: + case BG_COORD_ADD: sGpuBgConfigs2[bg].bg_y += value; break; - case 2: + case BG_COORD_SUB: sGpuBgConfigs2[bg].bg_y -= value; break; } diff --git a/gflib/bg.h b/gflib/bg.h index 60327eab3a64..310790368d8d 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -31,6 +31,12 @@ enum { BG_TYPE_NONE = 0xFFFF }; +enum { + BG_COORD_SET, + BG_COORD_ADD, + BG_COORD_SUB, +}; + struct BgTemplate { u16 bg:2; // 0x1, 0x2 -> 0x3 diff --git a/graphics/wonder_transfers/wonder_card_1.bin b/graphics/wonder_card/bg1.bin similarity index 100% rename from graphics/wonder_transfers/wonder_card_1.bin rename to graphics/wonder_card/bg1.bin diff --git a/graphics/wonder_transfers/wonder_card_1.png b/graphics/wonder_card/bg1.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_1.png rename to graphics/wonder_card/bg1.png diff --git a/graphics/wonder_transfers/wonder_card_2.bin b/graphics/wonder_card/bg2.bin similarity index 100% rename from graphics/wonder_transfers/wonder_card_2.bin rename to graphics/wonder_card/bg2.bin diff --git a/graphics/wonder_transfers/wonder_card_2.png b/graphics/wonder_card/bg2.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_2.png rename to graphics/wonder_card/bg2.png diff --git a/graphics/wonder_transfers/wonder_card_3.bin b/graphics/wonder_card/bg3.bin similarity index 100% rename from graphics/wonder_transfers/wonder_card_3.bin rename to graphics/wonder_card/bg3.bin diff --git a/graphics/wonder_transfers/wonder_card_3.png b/graphics/wonder_card/bg3.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_3.png rename to graphics/wonder_card/bg3.png diff --git a/graphics/wonder_transfers/wonder_card_4.png b/graphics/wonder_card/bg4.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_4.png rename to graphics/wonder_card/bg4.png diff --git a/graphics/wonder_transfers/wonder_card_5.png b/graphics/wonder_card/bg5.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_5.png rename to graphics/wonder_card/bg5.png diff --git a/graphics/wonder_transfers/wonder_card_6.png b/graphics/wonder_card/bg6.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_6.png rename to graphics/wonder_card/bg6.png diff --git a/graphics/wonder_transfers/wonder_card_7.bin b/graphics/wonder_card/bg7.bin similarity index 100% rename from graphics/wonder_transfers/wonder_card_7.bin rename to graphics/wonder_card/bg7.bin diff --git a/graphics/wonder_transfers/wonder_card_7.png b/graphics/wonder_card/bg7.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_7.png rename to graphics/wonder_card/bg7.png diff --git a/graphics/wonder_transfers/wonder_card_8.bin b/graphics/wonder_card/bg8.bin similarity index 100% rename from graphics/wonder_transfers/wonder_card_8.bin rename to graphics/wonder_card/bg8.bin diff --git a/graphics/wonder_transfers/wonder_card_8.png b/graphics/wonder_card/bg8.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_8.png rename to graphics/wonder_card/bg8.png diff --git a/graphics/wonder_transfers/wonder_card_shadow.png b/graphics/wonder_card/icon_shadow.png similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow.png rename to graphics/wonder_card/icon_shadow.png diff --git a/graphics/wonder_transfers/wonder_card_shadow_1.pal b/graphics/wonder_card/icon_shadow_1.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_1.pal rename to graphics/wonder_card/icon_shadow_1.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_2.pal b/graphics/wonder_card/icon_shadow_2.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_2.pal rename to graphics/wonder_card/icon_shadow_2.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_3.pal b/graphics/wonder_card/icon_shadow_3.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_3.pal rename to graphics/wonder_card/icon_shadow_3.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_4.pal b/graphics/wonder_card/icon_shadow_4.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_4.pal rename to graphics/wonder_card/icon_shadow_4.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_5.pal b/graphics/wonder_card/icon_shadow_5.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_5.pal rename to graphics/wonder_card/icon_shadow_5.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_6.pal b/graphics/wonder_card/icon_shadow_6.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_6.pal rename to graphics/wonder_card/icon_shadow_6.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_7.pal b/graphics/wonder_card/icon_shadow_7.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_7.pal rename to graphics/wonder_card/icon_shadow_7.pal diff --git a/graphics/wonder_transfers/wonder_card_shadow_8.pal b/graphics/wonder_card/icon_shadow_8.pal similarity index 100% rename from graphics/wonder_transfers/wonder_card_shadow_8.pal rename to graphics/wonder_card/icon_shadow_8.pal diff --git a/graphics/wonder_transfers/wonder_news_1.bin b/graphics/wonder_news/bg1.bin similarity index 100% rename from graphics/wonder_transfers/wonder_news_1.bin rename to graphics/wonder_news/bg1.bin diff --git a/graphics/wonder_transfers/wonder_news_1.png b/graphics/wonder_news/bg1.png similarity index 100% rename from graphics/wonder_transfers/wonder_news_1.png rename to graphics/wonder_news/bg1.png diff --git a/graphics/wonder_transfers/wonder_news_2.bin b/graphics/wonder_news/bg2.bin similarity index 100% rename from graphics/wonder_transfers/wonder_news_2.bin rename to graphics/wonder_news/bg2.bin diff --git a/graphics/wonder_transfers/wonder_news_2.png b/graphics/wonder_news/bg2.png similarity index 100% rename from graphics/wonder_transfers/wonder_news_2.png rename to graphics/wonder_news/bg2.png diff --git a/graphics/wonder_transfers/wonder_news_3.bin b/graphics/wonder_news/bg3.bin similarity index 100% rename from graphics/wonder_transfers/wonder_news_3.bin rename to graphics/wonder_news/bg3.bin diff --git a/graphics/wonder_transfers/wonder_news_3.png b/graphics/wonder_news/bg3.png similarity index 100% rename from graphics/wonder_transfers/wonder_news_3.png rename to graphics/wonder_news/bg3.png diff --git a/graphics/wonder_transfers/wonder_news_7.bin b/graphics/wonder_news/bg7.bin similarity index 100% rename from graphics/wonder_transfers/wonder_news_7.bin rename to graphics/wonder_news/bg7.bin diff --git a/graphics/wonder_transfers/wonder_news_7.png b/graphics/wonder_news/bg7.png similarity index 100% rename from graphics/wonder_transfers/wonder_news_7.png rename to graphics/wonder_news/bg7.png diff --git a/graphics/wonder_transfers/wonder_news_8.bin b/graphics/wonder_news/bg8.bin similarity index 100% rename from graphics/wonder_transfers/wonder_news_8.bin rename to graphics/wonder_news/bg8.bin diff --git a/graphics/wonder_transfers/wonder_news_8.png b/graphics/wonder_news/bg8.png similarity index 100% rename from graphics/wonder_transfers/wonder_news_8.png rename to graphics/wonder_news/bg8.png diff --git a/include/constants/global.h b/include/constants/global.h index 1cece79753b8..518fe6bad71c 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -87,6 +87,8 @@ #define MOVE_NAME_LENGTH 12 #define NUM_QUESTIONNAIRE_WORDS 4 #define QUIZ_QUESTION_LEN 9 +#define WONDER_CARD_TEXT_LENGTH 40 +#define WONDER_NEWS_TEXT_LENGTH 40 #define MALE 0 #define FEMALE 1 diff --git a/include/constants/mevent.h b/include/constants/mevent.h index 25bbcdf3684e..3478816fd51f 100644 --- a/include/constants/mevent.h +++ b/include/constants/mevent.h @@ -12,4 +12,7 @@ #define REQUIRED_CARD_BATTLES 3 +// Number of different types/colors of Wonder Card and News backgrounds +#define NUM_WONDER_BGS 8 + #endif //GUARD_MEVENT_H diff --git a/include/global.h b/include/global.h index d14aa60f43fe..f8bb24da71ee 100644 --- a/include/global.h +++ b/include/global.h @@ -849,9 +849,9 @@ struct MysteryEventStruct { u16 unk_00; u8 unk_02; - u8 unk_03; - u8 unk_04[40]; - u8 unk_2C[10][40]; + u8 bgType; + u8 unk_04[WONDER_NEWS_TEXT_LENGTH]; + u8 unk_2C[10][WONDER_NEWS_TEXT_LENGTH]; }; struct WonderNewsSaveStruct @@ -866,14 +866,14 @@ struct MysteryEventStruct u16 unk_02; u32 unk_04; u8 unk_08_0:2; - u8 unk_08_2:4; + u8 bgType:4; u8 unk_08_6:2; u8 unk_09; - u8 unk_0A[40]; - u8 unk_32[40]; - u8 unk_5A[4][40]; - u8 unk_FA[40]; - u8 unk_122[40]; + u8 unk_0A[WONDER_CARD_TEXT_LENGTH]; + u8 unk_32[WONDER_CARD_TEXT_LENGTH]; + u8 unk_5A[4][WONDER_CARD_TEXT_LENGTH]; + u8 unk_FA[WONDER_CARD_TEXT_LENGTH]; + u8 unk_122[WONDER_CARD_TEXT_LENGTH]; }; struct WonderCardSaveStruct diff --git a/include/mevent_801BAAC.h b/include/mevent_801BAAC.h deleted file mode 100644 index d76bc92c21c6..000000000000 --- a/include/mevent_801BAAC.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef GUARD_MEVENT_801BAAC_H -#define GUARD_MEVENT_801BAAC_H - -bool32 InitWonderCardResources(struct WonderCard * r5, struct MEventBuffer_3430_Sub * r6); -bool32 InitWonderNewsResources(const struct WonderNews * a0); -s32 FadeToWonderCardMenu(void); -s32 FadeToWonderNewsMenu(void); -s32 FadeOutFromWonderCard(bool32 flag); -void DestroyWonderCardResources(void); -s32 FadeOutFromWonderNews(bool32 flag); -void DestroyWonderNewsResources(void); -u32 MENews_GetInput(u16 input); -void MENews_AddScrollIndicatorArrowPair(void); -void MENews_RemoveScrollIndicatorArrowPair(void); - -#endif //GUARD_MEVENT_801BAAC_H diff --git a/include/wonder_transfer.h b/include/wonder_transfer.h new file mode 100644 index 000000000000..65b47572533b --- /dev/null +++ b/include/wonder_transfer.h @@ -0,0 +1,24 @@ +#ifndef GUARD_WONDER_TRANSFER_H +#define GUARD_WONDER_TRANSFER_H + +enum { + NEWS_INPUT_A, + NEWS_INPUT_B, + NEWS_INPUT_SCROLL_UP, + NEWS_INPUT_SCROLL_DOWN, + NEWS_INPUT_NONE = 0xFF +}; + +bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430_Sub * r6); +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); +void WonderCard_Destroy(void); +void WonderNews_Destroy(void); +u32 WonderNews_GetInput(u16 input); +void WonderNews_AddScrollIndicatorArrowPair(void); +void WonderNews_RemoveScrollIndicatorArrowPair(void); + +#endif //GUARD_WONDER_TRANSFER_H diff --git a/ld_script.txt b/ld_script.txt index 218c6d3a500a..14feda1c013e 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -68,7 +68,7 @@ SECTIONS { src/wireless_communication_status_screen.o(.text); src/union_room_battle.o(.text); src/mevent2.o(.text); - src/mevent_801BAAC.o(.text); + src/wonder_transfer.o(.text); src/mevent_server.o(.text); src/mevent_client.o(.text); src/mevent_server_helpers.o(.text); @@ -454,7 +454,7 @@ SECTIONS { src/wireless_communication_status_screen.o(.rodata); src/union_room_battle.o(.rodata); src/mevent2.o(.rodata); - src/mevent_801BAAC.o(.rodata); + src/wonder_transfer.o(.rodata); src/mevent_server.o(.rodata); src/mevent_client.o(.rodata); src/mevent_scripts.o(.rodata); diff --git a/src/mevent2.c b/src/mevent2.c index d2c020858370..c7035ae8f033 100755 --- a/src/mevent2.c +++ b/src/mevent2.c @@ -16,7 +16,7 @@ static EWRAM_DATA bool32 gUnknown_02022C70 = FALSE; static void sub_801B180(void); static void s_DestroyWonderNews(void); static bool32 sub_801B114(const struct WonderNews *data); -static bool32 sub_801B2CC(const struct WonderCard *data); +static bool32 ValidateWonderCardData(const struct WonderCard *data); static void sub_801B330(void); static void sub_801B368(void); static void sub_801B9F8(void); @@ -140,7 +140,7 @@ bool32 sub_801B21C(const struct WonderCard *data) { struct MEventBuffer_3430_Sub *r2; struct WonderCard *r1; - if (!sub_801B2CC(data)) + if (!ValidateWonderCardData(data)) return FALSE; DestroyWonderCard(); @@ -156,7 +156,7 @@ bool32 ValidateReceivedWonderCard(void) { if (gSaveBlock1Ptr->unk_322C.wonderCard.crc != CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.wonderCard.data, sizeof(struct WonderCard))) return FALSE; - if (!sub_801B2CC(&gSaveBlock1Ptr->unk_322C.wonderCard.data)) + if (!ValidateWonderCardData(&gSaveBlock1Ptr->unk_322C.wonderCard.data)) return FALSE; if (!ValidateSavedRamScript()) return FALSE; @@ -164,7 +164,7 @@ bool32 ValidateReceivedWonderCard(void) return TRUE; } -static bool32 sub_801B2CC(const struct WonderCard *data) +static bool32 ValidateWonderCardData(const struct WonderCard *data) { if (data->unk_00 == 0) return FALSE; @@ -172,7 +172,7 @@ static bool32 sub_801B2CC(const struct WonderCard *data) return FALSE; if (!(data->unk_08_6 == 0 || data->unk_08_6 == 1 || data->unk_08_6 == 2)) return FALSE; - if (data->unk_08_2 > 7) + if (data->bgType >= NUM_WONDER_BGS) return FALSE; if (data->unk_09 > 7) return FALSE; diff --git a/src/mevent_801BAAC.c b/src/mevent_801BAAC.c deleted file mode 100644 index a3e6ee0b6451..000000000000 --- a/src/mevent_801BAAC.c +++ /dev/null @@ -1,826 +0,0 @@ -#include "global.h" -#include "bg.h" -#include "gpu_regs.h" -#include "palette.h" -#include "decompress.h" -#include "malloc.h" -#include "menu.h" -#include "pokemon_icon.h" -#include "union_room.h" -#include "list_menu.h" -#include "text_window.h" -#include "string_util.h" -#include "link_rfu.h" -#include "mevent.h" -#include "mystery_gift.h" -#include "constants/rgb.h" - -struct UnkStruct_8467FB8 -{ - u8 textPal1:4; - u8 textPal2:4; - u8 textPal3:4; - u8 textPal4:4; - const u32 * tiles; - const u32 * map; - const u16 * pal; -}; - -struct UnkStruct_203F3C8_02DC -{ - u8 unk_00; - u8 unk_01[41]; - u8 unk_42[4]; -}; - -struct UnkStruct_203F3C8 -{ - /*0000*/ struct WonderCard unk_0000; - /*014c*/ struct MEventBuffer_3430_Sub unk_014C; - /*0170*/ const struct UnkStruct_8467FB8 * unk_0170; - /*0174*/ u8 unk_0174; - /*0175*/ u8 unk_0175; - /*0176*/ u16 unk_0176[3]; - /*017C*/ u8 unk_017C; - /*017D*/ u8 unk_017D[7][2]; - /*018B*/ u8 unk_018B[41]; - /*01B4*/ u8 unk_01B4[41]; - /*01DD*/ u8 unk_01DD[7]; - /*01E4*/ u8 unk_01E4[4][41]; - /*0288*/ u8 unk_0288[41]; - /*02B1*/ u8 unk_02B1[41]; - /*02DC*/ struct UnkStruct_203F3C8_02DC unk_02DC[8]; - /*045C*/ u8 buffer_045C[0x1000]; -}; - -EWRAM_DATA struct UnkStruct_203F3C8 * sWonderCardData = NULL; - -void sub_801BEF8(void); -void sub_801C178(u8 whichWindow); -void sub_801C4C0(void); -void sub_801C61C(void); - -extern const struct OamData gOamData_AffineOff_ObjNormal_32x16; - -const u8 sTextColorTable[][3] = { - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, - {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} -}; -const u8 ALIGNED(4) gUnknown_082F0E18[3] = {7, 4, 7}; -const struct WindowTemplate gUnknown_082F0E1C[] = { - { - .bg = 1, - .tilemapLeft = 1, - .tilemapTop = 1, - .width = 25, - .height = 4, - .paletteNum = 2, - .baseBlock = 0x029c - }, { - .bg = 1, - .tilemapLeft = 1, - .tilemapTop = 6, - .width = 28, - .height = 8, - .paletteNum = 2, - .baseBlock = 0x01bc - }, { - .bg = 1, - .tilemapLeft = 1, - .tilemapTop = 14, - .width = 28, - .height = 5, - .paletteNum = 2, - .baseBlock = 0x0130 - } -}; - -const u16 gWonderCardBgPal1[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_1.gbapal"); -const u16 gWonderCardBgPal2[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_2.gbapal"); -const u16 gWonderCardBgPal3[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_3.gbapal"); -const u16 gWonderCardBgPal4[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_4.gbapal"); -const u16 gWonderCardBgPal5[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_5.gbapal"); -const u16 gWonderCardBgPal6[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_6.gbapal"); -const u16 gWonderCardBgPal7[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_7.gbapal"); -const u16 gWonderCardBgPal8[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_8.gbapal"); -const u32 gWonderCardBgGfx1[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_1.4bpp.lz"); -const u32 gWonderCardBgTilemap1[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_1.bin.lz"); -const u32 gWonderCardBgGfx2[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_2.4bpp.lz"); -const u32 gWonderCardBgTilemap2[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_2.bin.lz"); -const u32 gWonderCardBgGfx3[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_3.4bpp.lz"); -const u32 gWonderCardBgTilemap3[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_3.bin.lz"); -const u32 gWonderCardBgGfx7[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_7.4bpp.lz"); -const u32 gWonderCardBgTilemap7[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_7.bin.lz"); -const u32 gWonderCardBgGfx8[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_8.4bpp.lz"); -const u32 gWonderCardBgTilemap8[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_8.bin.lz"); -const u16 gWonderCardShadowPal1[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_1.gbapal"); -const u16 gWonderCardShadowPal2[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_2.gbapal"); -const u16 gWonderCardShadowPal3[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_3.gbapal"); -const u16 gWonderCardShadowPal4[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_4.gbapal"); -const u16 gWonderCardShadowPal5[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_5.gbapal"); -const u16 gWonderCardShadowPal6[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_6.gbapal"); -const u16 gWonderCardShadowPal7[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_7.gbapal"); -const u16 gWonderCardShadowPal8[] = INCBIN_U16("graphics/wonder_transfers/wonder_card_shadow_8.gbapal"); -const u32 gWonderCardShadowGfx[] = INCBIN_U32("graphics/wonder_transfers/wonder_card_shadow.4bpp.lz"); - -const struct CompressedSpriteSheet gUnknown_082F1D00 = { - gWonderCardShadowGfx, 0x100, 0x8000 -}; -const struct SpritePalette gUnknown_082F1D08[] = { - {gWonderCardShadowPal1, 0x8000}, - {gWonderCardShadowPal2, 0x8000}, - {gWonderCardShadowPal3, 0x8000}, - {gWonderCardShadowPal4, 0x8000}, - {gWonderCardShadowPal5, 0x8000}, - {gWonderCardShadowPal6, 0x8000}, - {gWonderCardShadowPal7, 0x8000}, - {gWonderCardShadowPal8, 0x8000} -}; -const struct SpriteTemplate gUnknown_082F1D48 = { - 0x8000, 0x8000, &gOamData_AffineOff_ObjNormal_32x16, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy -}; -const struct UnkStruct_8467FB8 gUnknown_082F1D60[8] = { - {1, 0, 0, 0, gWonderCardBgGfx1, gWonderCardBgTilemap1, gWonderCardBgPal1}, - {1, 0, 0, 1, gWonderCardBgGfx2, gWonderCardBgTilemap2, gWonderCardBgPal2}, - {1, 0, 0, 2, gWonderCardBgGfx3, gWonderCardBgTilemap3, gWonderCardBgPal3}, - {1, 0, 0, 3, gWonderCardBgGfx3, gWonderCardBgTilemap3, gWonderCardBgPal4}, - {1, 0, 0, 4, gWonderCardBgGfx3, gWonderCardBgTilemap3, gWonderCardBgPal5}, - {1, 0, 0, 5, gWonderCardBgGfx3, gWonderCardBgTilemap3, gWonderCardBgPal6}, - {1, 0, 0, 6, gWonderCardBgGfx7, gWonderCardBgTilemap7, gWonderCardBgPal7}, - {1, 0, 0, 7, gWonderCardBgGfx8, gWonderCardBgTilemap8, gWonderCardBgPal8} -}; - -bool32 InitWonderCardResources(struct WonderCard * r5, struct MEventBuffer_3430_Sub * r6) -{ - if (r5 == NULL || r6 == NULL) - return FALSE; - sWonderCardData = AllocZeroed(sizeof(struct UnkStruct_203F3C8)); - if (sWonderCardData == NULL) - return FALSE; - sWonderCardData->unk_0000 = *r5; - sWonderCardData->unk_014C = *r6; - if (sWonderCardData->unk_0000.unk_08_2 >= ARRAY_COUNT(gUnknown_082F1D60)) - sWonderCardData->unk_0000.unk_08_2 = 0; - if (sWonderCardData->unk_0000.unk_08_0 >= ARRAY_COUNT(gUnknown_082F0E18)) - sWonderCardData->unk_0000.unk_08_0 = 0; - if (sWonderCardData->unk_0000.unk_09 > ARRAY_COUNT(sWonderCardData->unk_017D)) - sWonderCardData->unk_0000.unk_09 = 0; - sWonderCardData->unk_0170 = &gUnknown_082F1D60[sWonderCardData->unk_0000.unk_08_2]; - return TRUE; -} - -void DestroyWonderCardResources(void) -{ - if (sWonderCardData != NULL) - { - *sWonderCardData = (struct UnkStruct_203F3C8){}; - Free(sWonderCardData); - sWonderCardData = NULL; - } -} - -s32 FadeToWonderCardMenu(void) -{ - if (sWonderCardData == NULL) - return -1; - switch(sWonderCardData->unk_0174) - { - case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - break; - case 1: - if (UpdatePaletteFade()) - return 0; - break; - case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(2); - DecompressAndCopyTileDataToVram(2, sWonderCardData->unk_0170->tiles, 0, 0x008, 0); - sWonderCardData->unk_0176[0] = AddWindow(&gUnknown_082F0E1C[0]); - sWonderCardData->unk_0176[1] = AddWindow(&gUnknown_082F0E1C[1]); - sWonderCardData->unk_0176[2] = AddWindow(&gUnknown_082F0E1C[2]); - break; - case 3: - if (FreeTempTileDataBuffersIfPossible()) - return 0; - LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); - gPaletteFade.bufferTransferDisabled = TRUE; - LoadPalette(sWonderCardData->unk_0170->pal, 0x10, 0x20); - LZ77UnCompWram(sWonderCardData->unk_0170->map, sWonderCardData->buffer_045C); - CopyRectToBgTilemapBufferRect(2, sWonderCardData->buffer_045C, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); - CopyBgTilemapBufferToVram(2); - break; - case 4: - sub_801BEF8(); - break; - case 5: - sub_801C178(0); - sub_801C178(1); - sub_801C178(2); - CopyBgTilemapBufferToVram(1); - break; - case 6: - LoadMonIconPalettes(); - break; - case 7: - ShowBg(1); - ShowBg(2); - gPaletteFade.bufferTransferDisabled = FALSE; - sub_801C4C0(); - BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); - UpdatePaletteFade(); - break; - default: - if (UpdatePaletteFade()) - return 0; - sWonderCardData->unk_0174 = 0; - return 1; - } - ++sWonderCardData->unk_0174; - return 0; -} - -s32 FadeOutFromWonderCard(bool32 flag) -{ - if (sWonderCardData == NULL) - return -1; - switch (sWonderCardData->unk_0174) - { - case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - break; - case 1: - if (UpdatePaletteFade()) - return 0; - break; - case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(2); - break; - case 3: - HideBg(1); - HideBg(2); - RemoveWindow(sWonderCardData->unk_0176[2]); - RemoveWindow(sWonderCardData->unk_0176[1]); - RemoveWindow(sWonderCardData->unk_0176[0]); - break; - case 4: - sub_801C61C(); - FreeMonIconPalettes(); - break; - case 5: - PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); - CopyBgTilemapBufferToVram(0); - BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); - break; - default: - if (UpdatePaletteFade()) - return 0; - sWonderCardData->unk_0174 = 0; - return 1; - } - ++sWonderCardData->unk_0174; - return 0; -} - -void sub_801BEF8(void) -{ - u16 i = 0; - u16 r6; - u16 sp0[3] = {0, 0, 0}; - - memcpy(sWonderCardData->unk_018B, sWonderCardData->unk_0000.unk_0A, 40); - sWonderCardData->unk_018B[40] = EOS; - memcpy(sWonderCardData->unk_01B4, sWonderCardData->unk_0000.unk_32, 40); - sWonderCardData->unk_01B4[40] = EOS; - if (sWonderCardData->unk_0000.unk_04 > 999999) - sWonderCardData->unk_0000.unk_04 = 999999; - ConvertIntToDecimalStringN(sWonderCardData->unk_01DD, sWonderCardData->unk_0000.unk_04, STR_CONV_MODE_LEFT_ALIGN, 6); - for (i = 0; i < 4; i++) - { - memcpy(sWonderCardData->unk_01E4[i], sWonderCardData->unk_0000.unk_5A[i], 40); - sWonderCardData->unk_01E4[i][40] = EOS; - } - memcpy(sWonderCardData->unk_0288, sWonderCardData->unk_0000.unk_FA, 40); - sWonderCardData->unk_0288[40] = EOS; - switch (sWonderCardData->unk_0000.unk_08_0) - { - case 0: - memcpy(sWonderCardData->unk_02B1, sWonderCardData->unk_0000.unk_122, 40); - sWonderCardData->unk_02B1[40] = EOS; - break; - case 1: - sWonderCardData->unk_02B1[00] = EOS; - break; - case 2: - sWonderCardData->unk_02B1[00] = EOS; - sp0[0] = sWonderCardData->unk_014C.unk_00 < 999 ? sWonderCardData->unk_014C.unk_00 : 999; - sp0[1] = sWonderCardData->unk_014C.unk_02 < 999 ? sWonderCardData->unk_014C.unk_02 : 999; - sp0[2] = sWonderCardData->unk_014C.unk_04 < 999 ? sWonderCardData->unk_014C.unk_04 : 999; - for (i = 0; i < 8; i++) - { - memset(sWonderCardData->unk_02DC[i].unk_42, EOS, 4); - memset(sWonderCardData->unk_02DC[i].unk_01, EOS, 41); - } - for (i = 0, r6 = 0; i < 40; i++) - { - if (sWonderCardData->unk_0000.unk_122[i] != 0xF7) - { - sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_01[r6] = sWonderCardData->unk_0000.unk_122[i]; - r6++; - } - else - { - u8 r3 = sWonderCardData->unk_0000.unk_122[i + 1]; - if (r3 > 2) - { - i += 2; - } - else - { - ConvertIntToDecimalStringN(sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_42, sp0[r3], STR_CONV_MODE_LEADING_ZEROS, 3); - sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_00 = sWonderCardData->unk_0000.unk_122[i + 2]; - sWonderCardData->unk_0175++; - if (sWonderCardData->unk_0175 > 7) - break; - r6 = 0; - i += 2; - } - } - } - } -} - -void sub_801C178(u8 whichWindow) -{ - s8 sp0C = 0; - s32 windowId = sWonderCardData->unk_0176[whichWindow]; - PutWindowTilemap(windowId); - FillWindowPixelBuffer(windowId, 0); - switch (whichWindow) - { - case 0: - { - s32 x; - AddTextPrinterParameterized3(windowId, 3, 0, 1, sTextColorTable[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_018B); - x = 160 - GetStringWidth(3, sWonderCardData->unk_01B4, GetFontAttribute(3, 2)); - if (x < 0) - x = 0; - AddTextPrinterParameterized3(windowId, 3, x, 17, sTextColorTable[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_01B4); - if (sWonderCardData->unk_0000.unk_04 != 0) - { - AddTextPrinterParameterized3(windowId, 1, 166, 17, sTextColorTable[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_01DD); - } - break; - } - case 1: - for (; sp0C < 4; sp0C++) - { - AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, sTextColorTable[sWonderCardData->unk_0170->textPal2], 0, sWonderCardData->unk_01E4[sp0C]); - } - break; - case 2: - AddTextPrinterParameterized3(windowId, 3, 0, gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0], sTextColorTable[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_0288); - if (sWonderCardData->unk_0000.unk_08_0 != 2) - { - AddTextPrinterParameterized3(windowId, 3, 0, 16 + gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0], sTextColorTable[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02B1); - } - else - { - s32 x = 0; - s32 y = gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0] + 16; - s32 spacing = GetFontAttribute(3, 2); - for (; sp0C < sWonderCardData->unk_0175; sp0C++) - { - AddTextPrinterParameterized3(windowId, 3, x, y, sTextColorTable[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_01); - if (sWonderCardData->unk_02DC[sp0C].unk_42[0] != EOS) - { - x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_01, spacing); - AddTextPrinterParameterized3(windowId, 3, x, y, sTextColorTable[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_42); - x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_42, spacing) + sWonderCardData->unk_02DC[sp0C].unk_00; - } - } - } - break; - } - CopyWindowToVram(windowId, 3); -} - -void sub_801C4C0(void) -{ - u8 r7 = 0; - sWonderCardData->unk_017C = 0xFF; - if (sWonderCardData->unk_014C.unk_06 != SPECIES_NONE) - { - sWonderCardData->unk_017C = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_06), SpriteCallbackDummy, 0xDC, 0x14, 0, FALSE); - gSprites[sWonderCardData->unk_017C].oam.priority = 2; - } - if (sWonderCardData->unk_0000.unk_09 != 0 && sWonderCardData->unk_0000.unk_08_0 == 1) - { - LoadCompressedSpriteSheetUsingHeap(&gUnknown_082F1D00); - LoadSpritePalette(&gUnknown_082F1D08[sWonderCardData->unk_0170->textPal4]); - for (; r7 < sWonderCardData->unk_0000.unk_09; r7++) - { - sWonderCardData->unk_017D[r7][0] = 0xFF; - sWonderCardData->unk_017D[r7][1] = 0xFF; - sWonderCardData->unk_017D[r7][0] = CreateSprite(&gUnknown_082F1D48, 0xd8 - 32 * r7, 0x90, 8); - if (sWonderCardData->unk_014C.unk_08[0][r7] != 0) - { - sWonderCardData->unk_017D[r7][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_08[0][r7]), SpriteCallbackDummy, 0xd8 - 32 * r7, 0x88, 0, 0); - } - } - } -} - -void sub_801C61C(void) -{ - u8 r6 = 0; - if (sWonderCardData->unk_017C != 0xFF) - FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017C]); - if (sWonderCardData->unk_0000.unk_09 != 0 && sWonderCardData->unk_0000.unk_08_0 == 1) - { - for (; r6 < sWonderCardData->unk_0000.unk_09; r6++) - { - if (sWonderCardData->unk_017D[r6][0] != 0xFF) - { - DestroySprite(&gSprites[sWonderCardData->unk_017D[r6][0]]); - } - if (sWonderCardData->unk_017D[r6][1] != 0xFF) - { - FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017D[r6][1]]); - } - } - FreeSpriteTilesByTag(0x8000); - FreeSpritePaletteByTag(0x8000); - } -} - -struct UnkStruct_203F3CC -{ - /*0000*/ struct WonderNews unk_0000; - /*01bc*/ const struct UnkStruct_8467FB8 * unk_01BC; - /*01c0*/ u8 unk_01C0_0:1; - u8 unk_01C0_1:7; - /*01c1*/ u8 unk_01C1; - /*01c2*/ u8 unk_01C2_0:1; - u8 unk_01C2_1:7; - /*01c3*/ u8 unk_01C3_0:1; - u8 unk_01C3_1:7; - /*01c4*/ u16 unk_01C4; - /*01c6*/ u16 unk_01C6; - /*01c8*/ u16 unk_01C8[2]; - /*01cc*/ u8 filler_01CC[2]; - /*01ce*/ u8 unk_01CE[41]; - /*01f7*/ u8 unk_01F7[10][41]; - /*0394*/ struct ScrollArrowsTemplate unk_0394; - /*03a4*/ u8 buffer_03A4[0x1000]; -}; - -EWRAM_DATA struct UnkStruct_203F3CC * sWonderNewsData = NULL; - -void sub_801CDCC(void); -void sub_801CE7C(void); -void sub_801CFA4(void); - -const u8 gUnknown_082F1DE0[][3] = { - {0, 2, 3}, - {0, 1, 2} -}; -const struct WindowTemplate gUnknown_082F1DE8[] = { - { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 0, - .width = 28, - .height = 3, - .paletteNum = 2, - .baseBlock = 0x2AC - }, { - .bg = 2, - .tilemapLeft = 1, - .tilemapTop = 3, - .width = 28, - .height = 20, - .paletteNum = 2, - .baseBlock = 0x07C - } -}; -const struct ScrollArrowsTemplate gUnknown_082F1DF8 = { - 0x02, 0xe8, 0x18, 0x03, 0xe8, 0x98, - 0x0000, 0x0002, 0x1000, 0x1000, 0x0 -}; -const u16 gWonderNewsPal1[] = INCBIN_U16("graphics/wonder_transfers/wonder_news_1.gbapal"); -const u16 gWonderNewsPal7[] = INCBIN_U16("graphics/wonder_transfers/wonder_news_7.gbapal"); -const u16 gWonderNewsPal8[] = INCBIN_U16("graphics/wonder_transfers/wonder_news_8.gbapal"); -const u32 gWonderNewsGfx1[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_1.4bpp.lz"); -const u32 gWonderNewsTilemap1[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_1.bin.lz"); -const u32 gWonderNewsGfx2[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_2.4bpp.lz"); -const u32 gWonderNewsTilemap2[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_2.bin.lz"); -const u32 gWonderNewsGfx3[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_3.4bpp.lz"); -const u32 gWonderNewsTilemap3[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_3.bin.lz"); -const u32 gWonderNewsGfx7[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_7.4bpp.lz"); -const u32 gWonderNewsTilemap7[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_7.bin.lz"); -const u32 gWonderNewsGfx8[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_8.4bpp.lz"); -const u32 gWonderNewsTilemap8[] = INCBIN_U32("graphics/wonder_transfers/wonder_news_8.bin.lz"); - -const struct UnkStruct_8467FB8 gUnknown_082F24C8[] = { - {1, 0, 0, 0, gWonderNewsGfx1, gWonderNewsTilemap1, gWonderNewsPal1}, - {1, 0, 0, 0, gWonderNewsGfx2, gWonderNewsTilemap2, gWonderCardBgPal2}, - {1, 0, 0, 0, gWonderNewsGfx3, gWonderNewsTilemap3, gWonderCardBgPal3}, - {1, 0, 0, 0, gWonderNewsGfx3, gWonderNewsTilemap3, gWonderCardBgPal4}, - {1, 0, 0, 0, gWonderNewsGfx3, gWonderNewsTilemap3, gWonderCardBgPal5}, - {1, 0, 0, 0, gWonderNewsGfx3, gWonderNewsTilemap3, gWonderCardBgPal6}, - {1, 0, 0, 0, gWonderNewsGfx7, gWonderNewsTilemap7, gWonderNewsPal7}, - {1, 0, 0, 0, gWonderNewsGfx8, gWonderNewsTilemap8, gWonderNewsPal8} -}; - -bool32 InitWonderNewsResources(const struct WonderNews * a0) -{ - if (a0 == NULL) - return FALSE; - sWonderNewsData = AllocZeroed(sizeof(struct UnkStruct_203F3CC)); - if (sWonderNewsData == NULL) - return FALSE; - sWonderNewsData->unk_0000 = *a0; - if (sWonderNewsData->unk_0000.unk_03 >= ARRAY_COUNT(gUnknown_082F24C8)) - sWonderNewsData->unk_0000.unk_03 = 0; - sWonderNewsData->unk_01BC = &gUnknown_082F24C8[sWonderNewsData->unk_0000.unk_03]; - sWonderNewsData->unk_01C1 = 0xFF; - return TRUE; -} - -void DestroyWonderNewsResources(void) -{ - if (sWonderNewsData != NULL) - { - *sWonderNewsData = (struct UnkStruct_203F3CC){}; - Free(sWonderNewsData); - sWonderNewsData = NULL; - } -} - -s32 FadeToWonderNewsMenu(void) -{ - if (sWonderNewsData == NULL) - return -1; - - switch (sWonderNewsData->unk_01C0_1) - { - case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - break; - case 1: - if (UpdatePaletteFade()) - return 0; - ChangeBgY(0, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgY(3, 0, 0); - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(26, 152)); - SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ); - SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ); - SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); - break; - case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 20); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(2); - CopyBgTilemapBufferToVram(3); - DecompressAndCopyTileDataToVram(3, sWonderNewsData->unk_01BC->tiles, 0, 8, 0); - sWonderNewsData->unk_01C8[0] = AddWindow(&gUnknown_082F1DE8[0]); - sWonderNewsData->unk_01C8[1] = AddWindow(&gUnknown_082F1DE8[1]); - break; - case 3: - if (FreeTempTileDataBuffersIfPossible()) - return 0; - LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); - gPaletteFade.bufferTransferDisabled = TRUE; - LoadPalette(sWonderNewsData->unk_01BC->pal, 0x10, 0x20); - LZ77UnCompWram(sWonderNewsData->unk_01BC->map, sWonderNewsData->buffer_03A4); - CopyRectToBgTilemapBufferRect(1, sWonderNewsData->buffer_03A4, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); - CopyRectToBgTilemapBufferRect(3, sWonderNewsData->buffer_03A4, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(3); - break; - case 4: - sub_801CDCC(); - break; - case 5: - sub_801CE7C(); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(2); - break; - case 6: - ShowBg(1); - ShowBg(2); - ShowBg(3); - gPaletteFade.bufferTransferDisabled = FALSE; - sWonderNewsData->unk_01C1 = AddScrollIndicatorArrowPair(&sWonderNewsData->unk_0394, &sWonderNewsData->unk_01C6); - BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); - UpdatePaletteFade(); - break; - default: - if (UpdatePaletteFade()) - return 0; - sWonderNewsData->unk_01C0_1 = 0; - return 1; - } - - ++sWonderNewsData->unk_01C0_1; - return 0; -} - -s32 FadeOutFromWonderNews(bool32 flag) -{ - if (sWonderNewsData == NULL) - return -1; - switch (sWonderNewsData->unk_01C0_1) - { - case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); - break; - case 1: - if (UpdatePaletteFade()) - return 0; - ChangeBgY(2, 0, 0); - SetGpuReg(REG_OFFSET_WIN0H, 0); - SetGpuReg(REG_OFFSET_WIN0V, 0); - SetGpuReg(REG_OFFSET_WININ, 0); - SetGpuReg(REG_OFFSET_WINOUT, 0); - ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); - break; - case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 24); - FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 24); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(2); - CopyBgTilemapBufferToVram(3); - break; - case 3: - HideBg(1); - HideBg(2); - RemoveWindow(sWonderNewsData->unk_01C8[1]); - RemoveWindow(sWonderNewsData->unk_01C8[0]); - break; - case 4: - ChangeBgY(2, 0, 0); - ChangeBgY(3, 0, 0); - if (sWonderNewsData->unk_01C1 != 0xFF) - { - RemoveScrollIndicatorArrowPair(sWonderNewsData->unk_01C1); - sWonderNewsData->unk_01C1 = 0xFF; - } - break; - case 5: - PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); - MG_DrawCheckerboardPattern(3); - CopyBgTilemapBufferToVram(0); - CopyBgTilemapBufferToVram(3); - BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); - break; - default: - if (UpdatePaletteFade()) - return 0; - sWonderNewsData->unk_01C0_1 = 0; - return 1; - } - ++sWonderNewsData->unk_01C0_1; - return 0; -} - -void MENews_RemoveScrollIndicatorArrowPair(void) -{ - if (!sWonderNewsData->unk_01C0_0 && sWonderNewsData->unk_01C1 != 0xFF) - { - RemoveScrollIndicatorArrowPair(sWonderNewsData->unk_01C1); - sWonderNewsData->unk_01C1 = 0xFF; - sWonderNewsData->unk_01C0_0 = TRUE; - } -} - - -void MENews_AddScrollIndicatorArrowPair(void) -{ - if (sWonderNewsData->unk_01C0_0) - { - sWonderNewsData->unk_01C1 = AddScrollIndicatorArrowPair(&sWonderNewsData->unk_0394, &sWonderNewsData->unk_01C6); - sWonderNewsData->unk_01C0_0 = FALSE; - } -} - -u32 MENews_GetInput(u16 input) -{ - if (sWonderNewsData->unk_01C2_0) - { - sub_801CFA4(); - return 0xFF; - } - switch (input) - { - case A_BUTTON: - return 0; - case B_BUTTON: - return 1; - case DPAD_UP: - if (sWonderNewsData->unk_01C6 == 0) - return 0xFF; - if (sWonderNewsData->unk_01C0_0) - return 0xFF; - sWonderNewsData->unk_01C3_0 = FALSE; - break; - case DPAD_DOWN: - if (sWonderNewsData->unk_01C6 == sWonderNewsData->unk_01C4) - return 0xFF; - if (sWonderNewsData->unk_01C0_0) - return 0xFF; - sWonderNewsData->unk_01C3_0 = TRUE; - break; - default: - return 0xFF; - } - sWonderNewsData->unk_01C2_0 = TRUE; - sWonderNewsData->unk_01C2_1 = 2; - sWonderNewsData->unk_01C3_1 = 0; - if (sWonderNewsData->unk_01C3_0 == FALSE) - return 2; - else - return 3; -} - -void sub_801CDCC(void) -{ - u8 i = 0; - memcpy(sWonderNewsData->unk_01CE, sWonderNewsData->unk_0000.unk_04, 40); - sWonderNewsData->unk_01CE[40] = EOS; - for (; i < 10; ++i) - { - memcpy(sWonderNewsData->unk_01F7[i], sWonderNewsData->unk_0000.unk_2C[i], 40); - sWonderNewsData->unk_01F7[i][40] = EOS; - if (i > 7 && sWonderNewsData->unk_01F7[i][0] != EOS) - ++sWonderNewsData->unk_01C4; - } - sWonderNewsData->unk_0394 = gUnknown_082F1DF8; - sWonderNewsData->unk_0394.fullyDownThreshold = sWonderNewsData->unk_01C4; -} - -void sub_801CE7C(void) -{ - u8 i = 0; - s32 x; - PutWindowTilemap(sWonderNewsData->unk_01C8[0]); - PutWindowTilemap(sWonderNewsData->unk_01C8[1]); - FillWindowPixelBuffer(sWonderNewsData->unk_01C8[0], 0); - FillWindowPixelBuffer(sWonderNewsData->unk_01C8[1], 0); - x = (0xe0 - GetStringWidth(3, sWonderNewsData->unk_01CE, GetFontAttribute(3, 2))) / 2; - if (x < 0) - x = 0; - AddTextPrinterParameterized3(sWonderNewsData->unk_01C8[0], 3, x, 6, gUnknown_082F1DE0[sWonderNewsData->unk_01BC->textPal1], 0, sWonderNewsData->unk_01CE); - for (; i < 10; ++i) - { - AddTextPrinterParameterized3(sWonderNewsData->unk_01C8[1], 3, 0, 16 * i + 2, gUnknown_082F1DE0[sWonderNewsData->unk_01BC->textPal2], 0, sWonderNewsData->unk_01F7[i]); - } - CopyWindowToVram(sWonderNewsData->unk_01C8[0], 3); - CopyWindowToVram(sWonderNewsData->unk_01C8[1], 3); -} - -void sub_801CFA4(void) -{ - u16 r4 = sWonderNewsData->unk_01C2_1; - r4 <<= 8; - if (sWonderNewsData->unk_01C3_0) - { - ChangeBgY(2, r4, 1); - ChangeBgY(3, r4, 1); - } - else - { - ChangeBgY(2, r4, 2); - ChangeBgY(3, r4, 2); - } - sWonderNewsData->unk_01C3_1 += sWonderNewsData->unk_01C2_1; - if (sWonderNewsData->unk_01C3_1 > 15) - { - if (sWonderNewsData->unk_01C3_0) - ++sWonderNewsData->unk_01C6; - else - --sWonderNewsData->unk_01C6; - sWonderNewsData->unk_01C2_0 = FALSE; - sWonderNewsData->unk_01C3_1 = 0; - } -} diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 6ae6a9534881..4ff4aebf0859 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -22,7 +22,7 @@ #include "list_menu.h" #include "string_util.h" #include "mevent.h" -#include "mevent_801BAAC.h" +#include "wonder_transfer.h" #include "save.h" #include "link.h" #include "mevent_client.h" @@ -119,9 +119,8 @@ static const struct WindowTemplate sMainWindows[] = { .height = 0x05, .paletteNum = 0x0d, .baseBlock = 0x004f - }, { - 0xFF - } + }, + DUMMY_WIN_TEMPLATE }; static const struct WindowTemplate sWindowTemplate_PromptYesOrNo_Width28 = { @@ -730,24 +729,16 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann if (cannotSend) { if (cannotToss == 0) - { input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0); - } else - { input = DoMysteryGiftListMenu(&sWindowTemplate_7by4, &sListMenu_Receive, 1, 0x00A, 0xE0); - } } else { if (cannotToss == 0) - { input = DoMysteryGiftListMenu(&sWindowTemplate_7by8, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0); - } else - { input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0); - } } if (input != -1) { @@ -774,13 +765,9 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann static bool32 ValidateCardOrNews(bool32 cardOrNews) { if (cardOrNews == 0) - { return ValidateReceivedWonderCard(); - } else - { return ValidateReceivedWonderNews(); - } } static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) @@ -789,29 +776,21 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) { case 0: if (cardOrNews == 0) - { - InitWonderCardResources(GetSavedWonderCard(), sav1_get_mevent_buffer_2()); - } + WonderCard_Init(GetSavedWonderCard(), sav1_get_mevent_buffer_2()); else - { - InitWonderNewsResources(GetSavedWonderNews()); - } + WonderNews_Init(GetSavedWonderNews()); (*state)++; break; case 1: if (cardOrNews == 0) { - if (!FadeToWonderCardMenu()) - { + if (!WonderCard_Enter()) return FALSE; - } } else { - if (!FadeToWonderNewsMenu()) - { + if (!WonderNews_Enter()) return FALSE; - } } *state = 0; return TRUE; @@ -823,13 +802,9 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) static bool32 DestroyNewsOrCard(bool32 cardOrNews) { if (cardOrNews == 0) - { DestroyWonderCard(); - } else - { DestroyWonderNews(); - } return TRUE; } @@ -837,9 +812,9 @@ static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) { if (cardOrNews == 0) { - if (FadeOutFromWonderCard(arg1) != 0) + if (WonderCard_Exit(arg1) != 0) { - DestroyWonderCardResources(); + WonderCard_Destroy(); return TRUE; } else @@ -849,9 +824,9 @@ static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) } else { - if (FadeOutFromWonderNews(arg1) != 0) + if (WonderNews_Exit(arg1) != 0) { - DestroyWonderNewsResources(); + WonderNews_Destroy(); return TRUE; } else @@ -864,25 +839,17 @@ static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) static s32 mevent_message_prompt_discard(u8 * textState, u16 * windowId, bool32 cardOrNews) { if (cardOrNews == 0) - { return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen); - } else - { return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_OkayToDiscardNews); - } } static bool32 mevent_message_was_thrown_away(u8 * textState, bool32 cardOrNews) { if (cardOrNews == 0) - { return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderCardThrownAway); - } else - { return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderNewsThrownAway); - } } static bool32 mevent_save_game(u8 * state) @@ -992,18 +959,14 @@ static bool32 PrintMGSuccessMessage(u8 * state, const u8 * arg1, u16 * arg2) { case 0: if (arg1 != NULL) - { AddTextPrinterToWindow1(arg1); - } PlayFanfare(MUS_OBTAIN_ITEM); *arg2 = 0; (*state)++; break; case 1: - if (++(*arg2) > 0xF0) - { + if (++(*arg2) > 240) (*state)++; - } break; case 2: if (IsFanfareTaskInactive()) @@ -1079,13 +1042,9 @@ static bool32 PrintMGSendStatus(u8 * state, u16 * arg1, u8 arg2, u32 msgId) u32 flag; const u8 * str = mevent_message_stamp_card_etc_send_status(&flag, arg2, msgId); if (flag) - { return PrintMGSuccessMessage(state, str, arg1); - } else - { return MG_PrintTextOnWindow1AndWaitButton(state, str); - } } void task_add_00_mystery_gift(void) @@ -1123,24 +1082,16 @@ void task00_mystery_gift(u8 taskId) case 0: data->IsCardOrNews = 0; if (ValidateReceivedWonderCard() == TRUE) - { data->state = 18; - } else - { data->state = 2; - } break; case 1: data->IsCardOrNews = 1; if (ValidateReceivedWonderNews() == TRUE) - { data->state = 18; - } else - { data->state = 2; - } break; case -2u: data->state = 37; @@ -1169,13 +1120,9 @@ void task00_mystery_gift(u8 taskId) } case 3: if (data->IsCardOrNews == 0) - { AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed); - } else - { AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed); - } data->state = 4; break; case 4: @@ -1214,23 +1161,15 @@ void task00_mystery_gift(u8 taskId) { case 0: if (data->source == 1) - { MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_CARD); - } else if (data->source == 0) - { MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_CARD); - } break; case 1: if (data->source == 1) - { MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_NEWS); - } else if (data->source == 0) - { MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_NEWS); - } break; } data->state = 6; @@ -1364,38 +1303,26 @@ void task00_mystery_gift(u8 taskId) if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted)) { if (data->source == 1) - { StringCopy(gStringVar1, gLinkPlayers[0].name); - } data->state = 15; } break; case 15: r1 = mevent_message(&sp0, data->IsCardOrNews, data->source, data->prevPromptWindowId); if (r1 == NULL) - { r1 = data->buffer; - } if (sp0) - { flag = PrintMGSuccessMessage(&data->textState, r1, &data->curPromptWindowId); - } else - { flag = MG_PrintTextOnWindow1AndWaitButton(&data->textState, r1); - } if (flag) { if (data->prevPromptWindowId == 3) { if (data->source == 1) - { GenerateRandomNews(1); - } else - { GenerateRandomNews(2); - } } if (!sp0) { @@ -1417,37 +1344,29 @@ void task00_mystery_gift(u8 taskId) break; case 17: if (mevent_save_game(&data->textState)) - { data->state = 18; - } break; case 18: if (HandleLoadWonderCardOrNews(&data->textState, data->IsCardOrNews)) - { data->state = 20; - } break; case 20: if (data->IsCardOrNews == 0) { - if (({JOY_NEW(A_BUTTON);})) - { + if (JOY_NEW(A_BUTTON)) data->state = 21; - } - if (({JOY_NEW(B_BUTTON);})) - { + if (JOY_NEW(B_BUTTON)) data->state = 27; - } } else { - switch (MENews_GetInput(gMain.newKeys)) + switch (WonderNews_GetInput(gMain.newKeys)) { - case 0: - MENews_RemoveScrollIndicatorArrowPair(); + case NEWS_INPUT_A: + WonderNews_RemoveScrollIndicatorArrowPair(); data->state = 21; break; - case 1: + case NEWS_INPUT_B: data->state = 27; break; } @@ -1459,24 +1378,16 @@ void task00_mystery_gift(u8 taskId) if (data->IsCardOrNews == 0) { if (WonderCard_Test_Unk_08_6()) - { result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE); - } else - { result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE); - } } else { if (WonderNews_Test_Unk_02()) - { result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE); - } else - { result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE); - } } switch (result) { @@ -1491,9 +1402,7 @@ void task00_mystery_gift(u8 taskId) break; case -2u: if (data->IsCardOrNews == 1) - { - MENews_AddScrollIndicatorArrowPair(); - } + WonderNews_AddScrollIndicatorArrowPair(); data->state = 20; break; } @@ -1504,13 +1413,9 @@ void task00_mystery_gift(u8 taskId) { case 0: if (data->IsCardOrNews == 0 && CheckReceivedGiftFromWonderCard() == TRUE) - { data->state = 23; - } else - { data->state = 24; - } break; case 1: data->state = 21; @@ -1543,9 +1448,7 @@ void task00_mystery_gift(u8 taskId) break; case 25: if (mevent_save_game(&data->textState)) - { data->state = 26; - } break; case 26: if (mevent_message_was_thrown_away(&data->textState, data->IsCardOrNews)) @@ -1556,15 +1459,11 @@ void task00_mystery_gift(u8 taskId) break; case 27: if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 0)) - { data->state = 0; - } break; case 28: if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1)) - { data->state = 3; - } break; case 29: if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1)) diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c new file mode 100644 index 000000000000..1928ba12e538 --- /dev/null +++ b/src/wonder_transfer.c @@ -0,0 +1,870 @@ +#include "global.h" +#include "bg.h" +#include "gpu_regs.h" +#include "palette.h" +#include "decompress.h" +#include "malloc.h" +#include "menu.h" +#include "pokemon_icon.h" +#include "union_room.h" +#include "list_menu.h" +#include "text_window.h" +#include "string_util.h" +#include "link_rfu.h" +#include "mevent.h" +#include "mystery_gift.h" +#include "wonder_transfer.h" +#include "constants/rgb.h" +#include "constants/mevent.h" + +struct WonderGraphics +{ + u8 textPal1:4; + u8 textPal2:4; + u8 textPal3:4; + u8 textPal4:4; + const u32 * tiles; + const u32 * map; + const u16 * pal; +}; + +//====================== +// Wonder Cards +//====================== + +enum { + CARD_WIN_0, + CARD_WIN_1, + CARD_WIN_2, + CARD_WIN_COUNT +}; + +#define TAG_ICON_SHADOW 0x8000 + +struct UnkStruct_203F3C8_02DC +{ + u8 unk_00; + u8 unk_01[WONDER_CARD_TEXT_LENGTH + 1]; + u8 unk_42[4]; +}; + +struct WonderCardData +{ + /*0000*/ struct WonderCard card; + /*014c*/ struct MEventBuffer_3430_Sub unk_014C; + /*0170*/ const struct WonderGraphics * gfx; + /*0174*/ u8 enterExitState; + /*0175*/ u8 unk_0175; + /*0176*/ u16 windowIds[CARD_WIN_COUNT]; + /*017C*/ u8 monIconSpriteId; + /*017D*/ u8 unk_017D[7][2]; + /*018B*/ u8 unk_018B[WONDER_CARD_TEXT_LENGTH + 1]; + /*01B4*/ u8 unk_01B4[WONDER_CARD_TEXT_LENGTH + 1]; + /*01DD*/ u8 unk_01DD[7]; + /*01E4*/ u8 unk_01E4[4][WONDER_CARD_TEXT_LENGTH + 1]; + /*0288*/ u8 unk_0288[WONDER_CARD_TEXT_LENGTH + 1]; + /*02B1*/ u8 unk_02B1[WONDER_CARD_TEXT_LENGTH + 1]; + /*02DC*/ struct UnkStruct_203F3C8_02DC unk_02DC[8]; + /*045C*/ u8 buffer_045C[0x1000]; +}; + +EWRAM_DATA static struct WonderCardData * sWonderCardData = NULL; + +static void BufferCardText(void); +static void DrawCardWindow(u8 whichWindow); +static void CreateCardSprites(void); +static void DestroyCardSprites(void); + +extern const struct OamData gOamData_AffineOff_ObjNormal_32x16; + +static const u8 sCard_TextColorTable[][3] = { + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} +}; +const u8 ALIGNED(4) sCard_TextYOffsets[3] = {7, 4, 7}; +static const struct WindowTemplate sCard_WindowTemplates[] = { + [CARD_WIN_0] = { + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 25, + .height = 4, + .paletteNum = 2, + .baseBlock = 0x029c + }, + [CARD_WIN_1] = { + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 6, + .width = 28, + .height = 8, + .paletteNum = 2, + .baseBlock = 0x01bc + }, + [CARD_WIN_2] = { + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 14, + .width = 28, + .height = 5, + .paletteNum = 2, + .baseBlock = 0x0130 + } +}; + +static const u16 sWonderCardBgPal1[] = INCBIN_U16("graphics/wonder_card/bg1.gbapal"); +static const u16 sWonderCardBgPal2[] = INCBIN_U16("graphics/wonder_card/bg2.gbapal"); +static const u16 sWonderCardBgPal3[] = INCBIN_U16("graphics/wonder_card/bg3.gbapal"); +static const u16 sWonderCardBgPal4[] = INCBIN_U16("graphics/wonder_card/bg4.gbapal"); +static const u16 sWonderCardBgPal5[] = INCBIN_U16("graphics/wonder_card/bg5.gbapal"); +static const u16 sWonderCardBgPal6[] = INCBIN_U16("graphics/wonder_card/bg6.gbapal"); +static const u16 sWonderCardBgPal7[] = INCBIN_U16("graphics/wonder_card/bg7.gbapal"); +static const u16 sWonderCardBgPal8[] = INCBIN_U16("graphics/wonder_card/bg8.gbapal"); +static const u32 sWonderCardBgGfx1[] = INCBIN_U32("graphics/wonder_card/bg1.4bpp.lz"); +static const u32 sWonderCardBgTilemap1[] = INCBIN_U32("graphics/wonder_card/bg1.bin.lz"); +static const u32 sWonderCardBgGfx2[] = INCBIN_U32("graphics/wonder_card/bg2.4bpp.lz"); +static const u32 sWonderCardBgTilemap2[] = INCBIN_U32("graphics/wonder_card/bg2.bin.lz"); +static const u32 sWonderCardBgGfx3[] = INCBIN_U32("graphics/wonder_card/bg3.4bpp.lz"); +static const u32 sWonderCardBgTilemap3[] = INCBIN_U32("graphics/wonder_card/bg3.bin.lz"); +static const u32 sWonderCardBgGfx7[] = INCBIN_U32("graphics/wonder_card/bg7.4bpp.lz"); +static const u32 sWonderCardBgTilemap7[] = INCBIN_U32("graphics/wonder_card/bg7.bin.lz"); +static const u32 sWonderCardBgGfx8[] = INCBIN_U32("graphics/wonder_card/bg8.4bpp.lz"); +static const u32 sWonderCardBgTilemap8[] = INCBIN_U32("graphics/wonder_card/bg8.bin.lz"); +static const u16 sIconShadowPal1[] = INCBIN_U16("graphics/wonder_card/icon_shadow_1.gbapal"); +static const u16 sIconShadowPal2[] = INCBIN_U16("graphics/wonder_card/icon_shadow_2.gbapal"); +static const u16 sIconShadowPal3[] = INCBIN_U16("graphics/wonder_card/icon_shadow_3.gbapal"); +static const u16 sIconShadowPal4[] = INCBIN_U16("graphics/wonder_card/icon_shadow_4.gbapal"); +static const u16 sIconShadowPal5[] = INCBIN_U16("graphics/wonder_card/icon_shadow_5.gbapal"); +static const u16 sIconShadowPal6[] = INCBIN_U16("graphics/wonder_card/icon_shadow_6.gbapal"); +static const u16 sIconShadowPal7[] = INCBIN_U16("graphics/wonder_card/icon_shadow_7.gbapal"); +static const u16 sIconShadowPal8[] = INCBIN_U16("graphics/wonder_card/icon_shadow_8.gbapal"); +static const u32 sIconShadowGfx[] = INCBIN_U32("graphics/wonder_card/icon_shadow.4bpp.lz"); + +static const struct CompressedSpriteSheet sSpriteSheet_IconShadow = { + sIconShadowGfx, 0x100, TAG_ICON_SHADOW +}; + +static const struct SpritePalette sSpritePalettes_IconShadow[] = { + {sIconShadowPal1, TAG_ICON_SHADOW}, + {sIconShadowPal2, TAG_ICON_SHADOW}, + {sIconShadowPal3, TAG_ICON_SHADOW}, + {sIconShadowPal4, TAG_ICON_SHADOW}, + {sIconShadowPal5, TAG_ICON_SHADOW}, + {sIconShadowPal6, TAG_ICON_SHADOW}, + {sIconShadowPal7, TAG_ICON_SHADOW}, + {sIconShadowPal8, TAG_ICON_SHADOW} +}; + +static const struct SpriteTemplate sSpriteTemplate_IconShadow = { + .tileTag = TAG_ICON_SHADOW, + .paletteTag = TAG_ICON_SHADOW, + .oam = &gOamData_AffineOff_ObjNormal_32x16, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy +}; + +static const struct WonderGraphics sCardGraphics[NUM_WONDER_BGS] = { + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 0, .tiles = sWonderCardBgGfx1, .map = sWonderCardBgTilemap1, .pal = sWonderCardBgPal1}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 1, .tiles = sWonderCardBgGfx2, .map = sWonderCardBgTilemap2, .pal = sWonderCardBgPal2}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 2, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal3}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 3, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal4}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 4, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal5}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 5, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal6}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 6, .tiles = sWonderCardBgGfx7, .map = sWonderCardBgTilemap7, .pal = sWonderCardBgPal7}, + {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8} +}; + +bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430_Sub * r6) +{ + if (card == NULL || r6 == NULL) + return FALSE; + sWonderCardData = AllocZeroed(sizeof(*sWonderCardData)); + if (sWonderCardData == NULL) + return FALSE; + sWonderCardData->card = *card; + sWonderCardData->unk_014C = *r6; + if (sWonderCardData->card.bgType >= ARRAY_COUNT(sCardGraphics)) + sWonderCardData->card.bgType = 0; + if (sWonderCardData->card.unk_08_0 >= ARRAY_COUNT(sCard_TextYOffsets)) + sWonderCardData->card.unk_08_0 = 0; + if (sWonderCardData->card.unk_09 > ARRAY_COUNT(sWonderCardData->unk_017D)) + sWonderCardData->card.unk_09 = 0; + sWonderCardData->gfx = &sCardGraphics[sWonderCardData->card.bgType]; + return TRUE; +} + +void WonderCard_Destroy(void) +{ + if (sWonderCardData != NULL) + { + *sWonderCardData = (struct WonderCardData){}; + Free(sWonderCardData); + sWonderCardData = NULL; + } +} + +s32 WonderCard_Enter(void) +{ + if (sWonderCardData == NULL) + return -1; + switch(sWonderCardData->enterExitState) + { + case 0: + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + break; + case 2: + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + DecompressAndCopyTileDataToVram(2, sWonderCardData->gfx->tiles, 0, 0x008, 0); + sWonderCardData->windowIds[CARD_WIN_0] = AddWindow(&sCard_WindowTemplates[CARD_WIN_0]); + sWonderCardData->windowIds[CARD_WIN_1] = AddWindow(&sCard_WindowTemplates[CARD_WIN_1]); + sWonderCardData->windowIds[CARD_WIN_2] = AddWindow(&sCard_WindowTemplates[CARD_WIN_2]); + break; + case 3: + if (FreeTempTileDataBuffersIfPossible()) + return 0; + LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); + gPaletteFade.bufferTransferDisabled = TRUE; + LoadPalette(sWonderCardData->gfx->pal, 0x10, 0x20); + LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->buffer_045C); + CopyRectToBgTilemapBufferRect(2, sWonderCardData->buffer_045C, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); + CopyBgTilemapBufferToVram(2); + break; + case 4: + BufferCardText(); + break; + case 5: + DrawCardWindow(CARD_WIN_0); + DrawCardWindow(CARD_WIN_1); + DrawCardWindow(CARD_WIN_2); + CopyBgTilemapBufferToVram(1); + break; + case 6: + LoadMonIconPalettes(); + break; + case 7: + ShowBg(1); + ShowBg(2); + gPaletteFade.bufferTransferDisabled = FALSE; + CreateCardSprites(); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + UpdatePaletteFade(); + break; + default: + if (UpdatePaletteFade()) + return 0; + sWonderCardData->enterExitState = 0; + return 1; + } + ++sWonderCardData->enterExitState; + return 0; +} + +s32 WonderCard_Exit(bool32 flag) +{ + if (sWonderCardData == NULL) + return -1; + switch (sWonderCardData->enterExitState) + { + case 0: + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + break; + case 2: + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + break; + case 3: + HideBg(1); + HideBg(2); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_2]); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_1]); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_0]); + break; + case 4: + DestroyCardSprites(); + FreeMonIconPalettes(); + break; + case 5: + PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); + CopyBgTilemapBufferToVram(0); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + break; + default: + if (UpdatePaletteFade()) + return 0; + sWonderCardData->enterExitState = 0; + return 1; + } + ++sWonderCardData->enterExitState; + return 0; +} + +static void BufferCardText(void) +{ + u16 i = 0; + u16 r6; + u16 sp0[3] = {0, 0, 0}; + + memcpy(sWonderCardData->unk_018B, sWonderCardData->card.unk_0A, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->unk_018B[WONDER_CARD_TEXT_LENGTH] = EOS; + memcpy(sWonderCardData->unk_01B4, sWonderCardData->card.unk_32, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->unk_01B4[WONDER_CARD_TEXT_LENGTH] = EOS; + if (sWonderCardData->card.unk_04 > 999999) + sWonderCardData->card.unk_04 = 999999; + ConvertIntToDecimalStringN(sWonderCardData->unk_01DD, sWonderCardData->card.unk_04, STR_CONV_MODE_LEFT_ALIGN, 6); + for (i = 0; i < 4; i++) + { + memcpy(sWonderCardData->unk_01E4[i], sWonderCardData->card.unk_5A[i], WONDER_CARD_TEXT_LENGTH); + sWonderCardData->unk_01E4[i][WONDER_CARD_TEXT_LENGTH] = EOS; + } + memcpy(sWonderCardData->unk_0288, sWonderCardData->card.unk_FA, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->unk_0288[WONDER_CARD_TEXT_LENGTH] = EOS; + switch (sWonderCardData->card.unk_08_0) + { + case 0: + memcpy(sWonderCardData->unk_02B1, sWonderCardData->card.unk_122, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->unk_02B1[WONDER_CARD_TEXT_LENGTH] = EOS; + break; + case 1: + sWonderCardData->unk_02B1[0] = EOS; + break; + case 2: + sWonderCardData->unk_02B1[0] = EOS; + sp0[0] = sWonderCardData->unk_014C.unk_00 < 999 ? sWonderCardData->unk_014C.unk_00 : 999; + sp0[1] = sWonderCardData->unk_014C.unk_02 < 999 ? sWonderCardData->unk_014C.unk_02 : 999; + sp0[2] = sWonderCardData->unk_014C.unk_04 < 999 ? sWonderCardData->unk_014C.unk_04 : 999; + for (i = 0; i < 8; i++) + { + memset(sWonderCardData->unk_02DC[i].unk_42, EOS, sizeof(sWonderCardData->unk_02DC[i].unk_42)); + memset(sWonderCardData->unk_02DC[i].unk_01, EOS, sizeof(sWonderCardData->unk_02DC[i].unk_01)); + } + for (i = 0, r6 = 0; i < WONDER_CARD_TEXT_LENGTH; i++) + { + if (sWonderCardData->card.unk_122[i] != CHAR_DYNAMIC) + { + sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_01[r6] = sWonderCardData->card.unk_122[i]; + r6++; + } + else + { + u8 r3 = sWonderCardData->card.unk_122[i + 1]; + if (r3 > 2) + { + i += 2; + } + else + { + ConvertIntToDecimalStringN(sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_42, sp0[r3], STR_CONV_MODE_LEADING_ZEROS, 3); + sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_00 = sWonderCardData->card.unk_122[i + 2]; + sWonderCardData->unk_0175++; + if (sWonderCardData->unk_0175 > 7) + break; + r6 = 0; + i += 2; + } + } + } + } +} + +static void DrawCardWindow(u8 whichWindow) +{ + s8 sp0C = 0; + s32 windowId = sWonderCardData->windowIds[whichWindow]; + PutWindowTilemap(windowId); + FillWindowPixelBuffer(windowId, 0); + switch (whichWindow) + { + case CARD_WIN_0: + { + s32 x; + AddTextPrinterParameterized3(windowId, 3, 0, 1, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_018B); + x = 160 - GetStringWidth(3, sWonderCardData->unk_01B4, GetFontAttribute(3, FONTATTR_LETTER_SPACING)); + if (x < 0) + x = 0; + AddTextPrinterParameterized3(windowId, 3, x, 17, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_01B4); + if (sWonderCardData->card.unk_04 != 0) + AddTextPrinterParameterized3(windowId, 1, 166, 17, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_01DD); + break; + } + case CARD_WIN_1: + for (; sp0C < 4; sp0C++) + AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, sCard_TextColorTable[sWonderCardData->gfx->textPal2], 0, sWonderCardData->unk_01E4[sp0C]); + break; + case CARD_WIN_2: + AddTextPrinterParameterized3(windowId, 3, 0, sCard_TextYOffsets[sWonderCardData->card.unk_08_0], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_0288); + if (sWonderCardData->card.unk_08_0 != 2) + { + AddTextPrinterParameterized3(windowId, 3, 0, 16 + sCard_TextYOffsets[sWonderCardData->card.unk_08_0], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02B1); + } + else + { + s32 x = 0; + s32 y = sCard_TextYOffsets[sWonderCardData->card.unk_08_0] + 16; + s32 spacing = GetFontAttribute(3, FONTATTR_LETTER_SPACING); + for (; sp0C < sWonderCardData->unk_0175; sp0C++) + { + AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_01); + if (sWonderCardData->unk_02DC[sp0C].unk_42[0] != EOS) + { + x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_01, spacing); + AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_42); + x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_42, spacing) + sWonderCardData->unk_02DC[sp0C].unk_00; + } + } + } + break; + } + CopyWindowToVram(windowId, 3); +} + +static void CreateCardSprites(void) +{ + u8 r7 = 0; + sWonderCardData->monIconSpriteId = SPRITE_NONE; + if (sWonderCardData->unk_014C.unk_06 != SPECIES_NONE) + { + sWonderCardData->monIconSpriteId = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_06), SpriteCallbackDummy, 220, 20, 0, FALSE); + gSprites[sWonderCardData->monIconSpriteId].oam.priority = 2; + } + if (sWonderCardData->card.unk_09 != 0 && sWonderCardData->card.unk_08_0 == 1) + { + LoadCompressedSpriteSheetUsingHeap(&sSpriteSheet_IconShadow); + LoadSpritePalette(&sSpritePalettes_IconShadow[sWonderCardData->gfx->textPal4]); + for (; r7 < sWonderCardData->card.unk_09; r7++) + { + sWonderCardData->unk_017D[r7][0] = SPRITE_NONE; + sWonderCardData->unk_017D[r7][1] = SPRITE_NONE; + sWonderCardData->unk_017D[r7][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * r7, 144, 8); + if (sWonderCardData->unk_014C.unk_08[0][r7] != SPECIES_NONE) + sWonderCardData->unk_017D[r7][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_08[0][r7]), + SpriteCallbackDummy, + 216 - 32 * r7, + 136, 0, 0); + } + } +} + +static void DestroyCardSprites(void) +{ + u8 r6 = 0; + if (sWonderCardData->monIconSpriteId != SPRITE_NONE) + FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->monIconSpriteId]); + if (sWonderCardData->card.unk_09 != 0 && sWonderCardData->card.unk_08_0 == 1) + { + for (; r6 < sWonderCardData->card.unk_09; r6++) + { + if (sWonderCardData->unk_017D[r6][0] != SPRITE_NONE) + DestroySprite(&gSprites[sWonderCardData->unk_017D[r6][0]]); + if (sWonderCardData->unk_017D[r6][1] != SPRITE_NONE) + FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017D[r6][1]]); + } + FreeSpriteTilesByTag(TAG_ICON_SHADOW); + FreeSpritePaletteByTag(TAG_ICON_SHADOW); + } +} + +//====================== +// Wonder News +//====================== + +enum { + NEWS_WIN_0, + NEWS_WIN_1, + NEWS_WIN_COUNT +}; + +#define TAG_ARROWS 0x1000 + +struct WonderNewsData +{ + /*0000*/ struct WonderNews news; + /*01bc*/ const struct WonderGraphics * gfx; + /*01c0*/ u8 arrowsRemoved:1; + u8 enterExitState:7; + /*01c1*/ u8 arrowTaskId; + /*01c2*/ bool8 scrolling:1; + u8 scrollIncrement:7; + /*01c3*/ bool8 scrollingDown:1; + u8 scrollTotal:7; + /*01c4*/ u16 scrollEnd; + /*01c6*/ u16 scrollOffset; + /*01c8*/ u16 windowIds[NEWS_WIN_COUNT]; + /*01cc*/ u8 filler_01CC[2]; + /*01ce*/ u8 unk_01CE[WONDER_NEWS_TEXT_LENGTH + 1]; + /*01f7*/ u8 unk_01F7[10][WONDER_NEWS_TEXT_LENGTH + 1]; + /*0394*/ struct ScrollArrowsTemplate arrowsTemplate; + /*03a4*/ u8 buffer_03A4[0x1000]; +}; + +EWRAM_DATA static struct WonderNewsData * sWonderNewsData = NULL; + +static void BufferNewsText(void); +static void DrawNewsWindows(void); +static void UpdateNewsScroll(void); + +static const u8 sNews_TextColorTable[][3] = { + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, + {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} +}; + +static const struct WindowTemplate sNews_WindowTemplates[] = { + [NEWS_WIN_0] = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 0, + .width = 28, + .height = 3, + .paletteNum = 2, + .baseBlock = 0x2AC + }, + [NEWS_WIN_1] = { + .bg = 2, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 28, + .height = 20, + .paletteNum = 2, + .baseBlock = 0x07C + } +}; + +static const struct ScrollArrowsTemplate sNews_ArrowsTemplate = { + .firstArrowType = SCROLL_ARROW_UP, + .firstX = 232, + .firstY = 24, + .secondArrowType = SCROLL_ARROW_DOWN, + .secondX = 232, + .secondY = 152, + .fullyUpThreshold = 0, + .fullyDownThreshold = 2, + .tileTag = TAG_ARROWS, + .palTag = TAG_ARROWS, + .palNum = 0 +}; + +static const u16 sWonderNewsPal1[] = INCBIN_U16("graphics/wonder_news/bg1.gbapal"); +static const u16 sWonderNewsPal7[] = INCBIN_U16("graphics/wonder_news/bg7.gbapal"); +static const u16 sWonderNewsPal8[] = INCBIN_U16("graphics/wonder_news/bg8.gbapal"); +static const u32 sWonderNewsGfx1[] = INCBIN_U32("graphics/wonder_news/bg1.4bpp.lz"); +static const u32 sWonderNewsTilemap1[] = INCBIN_U32("graphics/wonder_news/bg1.bin.lz"); +static const u32 sWonderNewsGfx2[] = INCBIN_U32("graphics/wonder_news/bg2.4bpp.lz"); +static const u32 sWonderNewsTilemap2[] = INCBIN_U32("graphics/wonder_news/bg2.bin.lz"); +static const u32 sWonderNewsGfx3[] = INCBIN_U32("graphics/wonder_news/bg3.4bpp.lz"); +static const u32 sWonderNewsTilemap3[] = INCBIN_U32("graphics/wonder_news/bg3.bin.lz"); +static const u32 sWonderNewsGfx7[] = INCBIN_U32("graphics/wonder_news/bg7.4bpp.lz"); +static const u32 sWonderNewsTilemap7[] = INCBIN_U32("graphics/wonder_news/bg7.bin.lz"); +static const u32 sWonderNewsGfx8[] = INCBIN_U32("graphics/wonder_news/bg8.4bpp.lz"); +static const u32 sWonderNewsTilemap8[] = INCBIN_U32("graphics/wonder_news/bg8.bin.lz"); + +static const struct WonderGraphics sNewsGraphics[NUM_WONDER_BGS] = { + {1, 0, 0, 0, sWonderNewsGfx1, sWonderNewsTilemap1, sWonderNewsPal1}, + {1, 0, 0, 0, sWonderNewsGfx2, sWonderNewsTilemap2, sWonderCardBgPal2}, + {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal3}, + {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal4}, + {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal5}, + {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal6}, + {1, 0, 0, 0, sWonderNewsGfx7, sWonderNewsTilemap7, sWonderNewsPal7}, + {1, 0, 0, 0, sWonderNewsGfx8, sWonderNewsTilemap8, sWonderNewsPal8} +}; + +bool32 WonderNews_Init(const struct WonderNews * news) +{ + if (news == NULL) + return FALSE; + sWonderNewsData = AllocZeroed(sizeof(*sWonderNewsData)); + if (sWonderNewsData == NULL) + return FALSE; + sWonderNewsData->news = *news; + if (sWonderNewsData->news.bgType >= ARRAY_COUNT(sNewsGraphics)) + sWonderNewsData->news.bgType = 0; + sWonderNewsData->gfx = &sNewsGraphics[sWonderNewsData->news.bgType]; + sWonderNewsData->arrowTaskId = TASK_NONE; + return TRUE; +} + +void WonderNews_Destroy(void) +{ + if (sWonderNewsData != NULL) + { + *sWonderNewsData = (struct WonderNewsData){}; + Free(sWonderNewsData); + sWonderNewsData = NULL; + } +} + +s32 WonderNews_Enter(void) +{ + if (sWonderNewsData == NULL) + return -1; + + switch (sWonderNewsData->enterExitState) + { + case 0: + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + ChangeBgY(0, 0, 0); + ChangeBgY(1, 0, 0); + ChangeBgY(2, 0, 0); + ChangeBgY(3, 0, 0); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(26, 152)); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ); + SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ); + SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); + break; + case 2: + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 20); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + CopyBgTilemapBufferToVram(3); + DecompressAndCopyTileDataToVram(3, sWonderNewsData->gfx->tiles, 0, 8, 0); + sWonderNewsData->windowIds[NEWS_WIN_0] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_0]); + sWonderNewsData->windowIds[NEWS_WIN_1] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_1]); + break; + case 3: + if (FreeTempTileDataBuffersIfPossible()) + return 0; + LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); + gPaletteFade.bufferTransferDisabled = TRUE; + LoadPalette(sWonderNewsData->gfx->pal, 0x10, 0x20); + LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->buffer_03A4); + CopyRectToBgTilemapBufferRect(1, sWonderNewsData->buffer_03A4, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); + CopyRectToBgTilemapBufferRect(3, sWonderNewsData->buffer_03A4, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(3); + break; + case 4: + BufferNewsText(); + break; + case 5: + DrawNewsWindows(); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(2); + break; + case 6: + ShowBg(1); + ShowBg(2); + ShowBg(3); + gPaletteFade.bufferTransferDisabled = FALSE; + sWonderNewsData->arrowTaskId = AddScrollIndicatorArrowPair(&sWonderNewsData->arrowsTemplate, &sWonderNewsData->scrollOffset); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + UpdatePaletteFade(); + break; + default: + if (UpdatePaletteFade()) + return 0; + sWonderNewsData->enterExitState = 0; + return 1; + } + + ++sWonderNewsData->enterExitState; + return 0; +} + +s32 WonderNews_Exit(bool32 flag) +{ + if (sWonderNewsData == NULL) + return -1; + switch (sWonderNewsData->enterExitState) + { + case 0: + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + ChangeBgY(2, 0, 0); + SetGpuReg(REG_OFFSET_WIN0H, 0); + SetGpuReg(REG_OFFSET_WIN0V, 0); + SetGpuReg(REG_OFFSET_WININ, 0); + SetGpuReg(REG_OFFSET_WINOUT, 0); + ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); + break; + case 2: + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 24); + FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 24); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + CopyBgTilemapBufferToVram(3); + break; + case 3: + HideBg(1); + HideBg(2); + RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_1]); + RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_0]); + break; + case 4: + ChangeBgY(2, 0, 0); + ChangeBgY(3, 0, 0); + if (sWonderNewsData->arrowTaskId != TASK_NONE) + { + RemoveScrollIndicatorArrowPair(sWonderNewsData->arrowTaskId); + sWonderNewsData->arrowTaskId = TASK_NONE; + } + break; + case 5: + PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); + MG_DrawCheckerboardPattern(3); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(3); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + break; + default: + if (UpdatePaletteFade()) + return 0; + sWonderNewsData->enterExitState = 0; + return 1; + } + ++sWonderNewsData->enterExitState; + return 0; +} + +void WonderNews_RemoveScrollIndicatorArrowPair(void) +{ + if (!sWonderNewsData->arrowsRemoved && sWonderNewsData->arrowTaskId != TASK_NONE) + { + RemoveScrollIndicatorArrowPair(sWonderNewsData->arrowTaskId); + sWonderNewsData->arrowTaskId = TASK_NONE; + sWonderNewsData->arrowsRemoved = TRUE; + } +} + + +void WonderNews_AddScrollIndicatorArrowPair(void) +{ + if (sWonderNewsData->arrowsRemoved) + { + sWonderNewsData->arrowTaskId = AddScrollIndicatorArrowPair(&sWonderNewsData->arrowsTemplate, &sWonderNewsData->scrollOffset); + sWonderNewsData->arrowsRemoved = FALSE; + } +} + +u32 WonderNews_GetInput(u16 input) +{ + if (sWonderNewsData->scrolling) + { + UpdateNewsScroll(); + return NEWS_INPUT_NONE; + } + switch (input) + { + case A_BUTTON: + return NEWS_INPUT_A; + case B_BUTTON: + return NEWS_INPUT_B; + case DPAD_UP: + if (sWonderNewsData->scrollOffset == 0) + return NEWS_INPUT_NONE; + if (sWonderNewsData->arrowsRemoved) + return NEWS_INPUT_NONE; + sWonderNewsData->scrollingDown = FALSE; + break; + case DPAD_DOWN: + if (sWonderNewsData->scrollOffset == sWonderNewsData->scrollEnd) + return NEWS_INPUT_NONE; + if (sWonderNewsData->arrowsRemoved) + return NEWS_INPUT_NONE; + sWonderNewsData->scrollingDown = TRUE; + break; + default: + return NEWS_INPUT_NONE; + } + + // Init scroll + sWonderNewsData->scrolling = TRUE; + sWonderNewsData->scrollIncrement = 2; + sWonderNewsData->scrollTotal = 0; + if (!sWonderNewsData->scrollingDown) + return NEWS_INPUT_SCROLL_UP; + else + return NEWS_INPUT_SCROLL_DOWN; +} + +static void BufferNewsText(void) +{ + u8 i = 0; + memcpy(sWonderNewsData->unk_01CE, sWonderNewsData->news.unk_04, WONDER_NEWS_TEXT_LENGTH); + sWonderNewsData->unk_01CE[WONDER_NEWS_TEXT_LENGTH] = EOS; + for (; i < 10; ++i) + { + memcpy(sWonderNewsData->unk_01F7[i], sWonderNewsData->news.unk_2C[i], WONDER_NEWS_TEXT_LENGTH); + sWonderNewsData->unk_01F7[i][WONDER_NEWS_TEXT_LENGTH] = EOS; + if (i > 7 && sWonderNewsData->unk_01F7[i][0] != EOS) + ++sWonderNewsData->scrollEnd; + } + sWonderNewsData->arrowsTemplate = sNews_ArrowsTemplate; + sWonderNewsData->arrowsTemplate.fullyDownThreshold = sWonderNewsData->scrollEnd; +} + +static void DrawNewsWindows(void) +{ + u8 i = 0; + s32 x; + PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_0]); + PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_1]); + FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_0], 0); + FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_1], 0); + x = (224 - GetStringWidth(3, sWonderNewsData->unk_01CE, GetFontAttribute(3, FONTATTR_LETTER_SPACING))) / 2; + if (x < 0) + x = 0; + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_0], 3, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->textPal1], 0, sWonderNewsData->unk_01CE); + for (; i < 10; ++i) + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_1], 3, 0, 16 * i + 2, sNews_TextColorTable[sWonderNewsData->gfx->textPal2], 0, sWonderNewsData->unk_01F7[i]); + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_0], 3); + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_1], 3); +} + +static void UpdateNewsScroll(void) +{ + u16 bgMove = sWonderNewsData->scrollIncrement; + bgMove *= 256; + if (sWonderNewsData->scrollingDown) + { + ChangeBgY(2, bgMove, BG_COORD_ADD); + ChangeBgY(3, bgMove, BG_COORD_ADD); + } + else + { + ChangeBgY(2, bgMove, BG_COORD_SUB); + ChangeBgY(3, bgMove, BG_COORD_SUB); + } + sWonderNewsData->scrollTotal += sWonderNewsData->scrollIncrement; + if (sWonderNewsData->scrollTotal > 15) + { + if (sWonderNewsData->scrollingDown) + ++sWonderNewsData->scrollOffset; + else + --sWonderNewsData->scrollOffset; + sWonderNewsData->scrolling = FALSE; + sWonderNewsData->scrollTotal = 0; + } +} diff --git a/sym_ewram.txt b/sym_ewram.txt index 88c4461cb0d2..360a91d328ac 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -14,7 +14,7 @@ .include "src/wireless_communication_status_screen.o" .include "src/union_room_battle.o" .include "src/mevent2.o" - .include "src/mevent_801BAAC.o" + .include "src/wonder_transfer.o" .include "src/mevent_server.o" .include "src/mevent_client.o" .include "src/union_room_chat.o" From 37e52c4f34fa3d6bb25f670bfc77ed220962f834 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Oct 2021 14:10:42 -0400 Subject: [PATCH 303/762] Document some mystery gift --- include/ereader_screen.h | 2 +- include/mystery_gift.h | 8 +- include/union_room.h | 6 +- src/ereader_screen.c | 16 +- src/link_rfu_2.c | 2 +- src/main_menu.c | 6 +- src/mystery_gift.c | 620 ++++++++++++++++++++------------------- src/union_room.c | 15 +- 8 files changed, 351 insertions(+), 324 deletions(-) diff --git a/include/ereader_screen.h b/include/ereader_screen.h index 1daea4be0d7e..a6ac65b17f3e 100755 --- a/include/ereader_screen.h +++ b/include/ereader_screen.h @@ -1,6 +1,6 @@ #ifndef GUARD_EREADER_SCREEN_H #define GUARD_EREADER_SCREEN_H -void task_add_00_ereader(void); +void CreateEReaderTask(void); #endif // GUARD_EREADER_SCREEN_H diff --git a/include/mystery_gift.h b/include/mystery_gift.h index fb0414ee06e6..42c7f47ba35a 100644 --- a/include/mystery_gift.h +++ b/include/mystery_gift.h @@ -4,15 +4,15 @@ extern bool8 gGiftIsFromEReader; u16 GetMysteryGiftBaseBlock(void); -void c2_mystery_gift_e_reader_run(void); +void CB2_MysteryGiftEReader(void); void PrintMysteryGiftOrEReaderTopMenu(bool8 isJapanese, bool32 usePickOkCancel); void MG_DrawCheckerboardPattern(u32 bg); void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void); bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str); void AddTextPrinterToWindow1(const u8 *src); -void c2_ereader(void); -void c2_mystery_gift(void); +void CB2_InitEReader(void); +void CB2_InitMysteryGift(void); void MG_DrawTextBorder(u8 windowId); -s8 mevent_message_print_and_prompt_yes_no(u8 *textState, u16 *windowId, bool8 yesNoBoxPlacement, const u8 *str); +s8 DoMysteryGiftYesNo(u8 *textState, u16 *windowId, bool8 yesNoBoxPlacement, const u8 *str); #endif //GUARD_MYSTERY_GIFT_H diff --git a/include/union_room.h b/include/union_room.h index b364e755908b..acff4b592904 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -153,9 +153,9 @@ extern u8 gUnionRoomRequestedMonType; u8 CreateTask_CreateTradeMenu(void); void SetUsingUnionRoomStartMenu(void); -void MEvent_CreateTask_CardOrNewsWithFriend(u32 activity); -void MEvent_CreateTask_CardOrNewsOverWireless(u32 activity); -void MEvent_CreateTask_Leader(u32 activity); +void CreateTask_LinkMysteryGiftWithFriend(u32 activity); +void CreateTask_LinkMysteryGiftOverWireless(u32 activity); +void CreateTask_SendMysteryGift(u32 activity); u8 CreateTask_ListenToWireless(void); void StartUnionRoomBattle(u16 battleFlags); diff --git a/src/ereader_screen.c b/src/ereader_screen.c index f5edbc628ad1..31794628b901 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -13,7 +13,7 @@ #include "util.h" #include "constants/songs.h" -struct Unk81D5014 +struct EReaderTaskData { u16 unk0; u16 unk2; @@ -36,7 +36,7 @@ struct Unk03006370 u32 *unk8; }; -static void sub_81D5084(u8); +static void Task_EReader(u8); struct Unk03006370 gUnknown_03006370; @@ -209,11 +209,11 @@ static u32 sub_81D4EE4(u8 *arg0, u16 *arg1) return 0; } -void task_add_00_ereader(void) +void CreateEReaderTask(void) { - struct Unk81D5014 *data; - u8 taskId = CreateTask(sub_81D5084, 0); - data = (struct Unk81D5014 *)gTasks[taskId].data; + struct EReaderTaskData *data; + u8 taskId = CreateTask(Task_EReader, 0); + data = (struct EReaderTaskData *)gTasks[taskId].data; data->unk8 = 0; data->unk9 = 0; data->unkA = 0; @@ -244,9 +244,9 @@ static bool32 sub_81D5064(u16 *arg0, u16 arg1) return FALSE; } -static void sub_81D5084(u8 taskId) +static void Task_EReader(u8 taskId) { - struct Unk81D5014 *data = (struct Unk81D5014 *)gTasks[taskId].data; + struct EReaderTaskData *data = (struct EReaderTaskData *)gTasks[taskId].data; switch (data->unk8) { case 0: diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index f2caef949976..0ab452a8d8da 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -1981,7 +1981,7 @@ static void RfuCheckErrorStatus(void) { if (gRfu.errorState == RFU_ERROR_STATE_OCCURRED && lman.childClockSlave_flag == 0) { - if (gMain.callback2 == c2_mystery_gift_e_reader_run || lman.init_param->mboot_flag) + if (gMain.callback2 == CB2_MysteryGiftEReader || lman.init_param->mboot_flag) gWirelessCommType = 2; SetMainCallback2(CB2_LinkError); gMain.savedCallback = CB2_LinkError; diff --git a/src/main_menu.c b/src/main_menu.c index a60cf1a2835e..8fd25abe1aa6 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -90,7 +90,7 @@ * - If the user selected New Game, advance to Task_NewGameBirchSpeech_Init. * - If the user selected Continue, advance to CB2_ContinueSavedGame. * - If the user selected the Options menu, advance to CB2_InitOptionMenu. - * - If the user selected Mystery Gift, advance to CB2_MysteryGift. However, + * - If the user selected Mystery Gift, advance to CB2_InitMysteryGift. However, * if the wireless adapter was removed, instead advance to * Task_DisplayMainMenuInvalidActionError. * - Code to start a Mystery Event is present here, but is unreachable in this @@ -1073,7 +1073,7 @@ static void Task_HandleMainMenuAPressed(u8 taskId) DestroyTask(taskId); break; case ACTION_MYSTERY_GIFT: - SetMainCallback2(c2_mystery_gift); + SetMainCallback2(CB2_InitMysteryGift); DestroyTask(taskId); break; case ACTION_MYSTERY_EVENTS: @@ -1081,7 +1081,7 @@ static void Task_HandleMainMenuAPressed(u8 taskId) DestroyTask(taskId); break; case ACTION_EREADER: - SetMainCallback2(c2_ereader); + SetMainCallback2(CB2_InitEReader); DestroyTask(taskId); break; case ACTION_INVALID: diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 4ff4aebf0859..eb14d0e7a9ee 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -33,8 +33,8 @@ #include "constants/cable_club.h" void bgid_upload_textbox_1(u8 bgId); -void task_add_00_mystery_gift(void); -void task00_mystery_gift(u8 taskId); +static void CreateMysteryGiftTask(void); +static void Task_MysteryGift(u8 taskId); EWRAM_DATA u8 sDownArrowCounterAndYCoordIdx[8] = {}; EWRAM_DATA bool8 gGiftIsFromEReader = FALSE; @@ -52,8 +52,8 @@ struct MysteryGiftTaskData u8 textState; u8 unkA; u8 unkB; - u8 IsCardOrNews; - u8 source; + bool8 isWonderNews; + bool8 sourceIsFriend; u8 prevPromptWindowId; u8 * buffer; }; @@ -355,14 +355,14 @@ ALIGNED(2) const u8 sMG_Ereader_TextColor_1[] = { 0, 1, 2 }; ALIGNED(2) const u8 sMG_Ereader_TextColor_1_Copy[] = { 0, 1, 2 }; ALIGNED(2) const u8 sMG_Ereader_TextColor_2[] = { 1, 2, 3 }; -void vblankcb_mystery_gift_e_reader_run(void) +static void VBlankCB_MysteryGiftEReader(void) { ProcessSpriteCopyRequests(); LoadOam(); TransferPlttBuffer(); } -void c2_mystery_gift_e_reader_run(void) +void CB2_MysteryGiftEReader(void) { RunTasks(); RunTextPrinters(); @@ -370,7 +370,7 @@ void c2_mystery_gift_e_reader_run(void) BuildOamBuffer(); } -bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader) +static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) { switch (gMain.state) { @@ -417,7 +417,7 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader) FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); MG_DrawCheckerboardPattern(3); - PrintMysteryGiftOrEReaderTopMenu(mg_or_ereader, 0); + PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE); gMain.state++; break; case 2: @@ -431,7 +431,7 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader) ShowBg(0); ShowBg(3); PlayBGM(MUS_RG_MYSTERY_GIFT); - SetVBlankCallback(vblankcb_mystery_gift_e_reader_run); + SetVBlankCallback(VBlankCB_MysteryGiftEReader); EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); return TRUE; } @@ -439,24 +439,24 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader) return FALSE; } -void c2_mystery_gift(void) +void CB2_InitMysteryGift(void) { - if (HandleMysteryGiftOrEReaderSetup(0)) + if (HandleMysteryGiftOrEReaderSetup(FALSE)) { - SetMainCallback2(c2_mystery_gift_e_reader_run); + SetMainCallback2(CB2_MysteryGiftEReader); gGiftIsFromEReader = FALSE; - task_add_00_mystery_gift(); + CreateMysteryGiftTask(); } RunTasks(); } -void c2_ereader(void) +void CB2_InitEReader(void) { - if (HandleMysteryGiftOrEReaderSetup(1)) + if (HandleMysteryGiftOrEReaderSetup(TRUE)) { - SetMainCallback2(c2_mystery_gift_e_reader_run); + SetMainCallback2(CB2_MysteryGiftEReader); gGiftIsFromEReader = TRUE; - task_add_00_ereader(); + CreateEReaderTask(); } } @@ -471,12 +471,12 @@ void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void) SetMainCallback2(CB2_InitTitleScreen); } -void PrintMysteryGiftOrEReaderTopMenu(bool8 mg_or_ereader, bool32 usePickOkCancel) +void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 usePickOkCancel) { const u8 * header; const u8 * options; FillWindowPixelBuffer(0, 0); - if (mg_or_ereader == 0) + if (!isEReader) { header = gText_MysteryGift; options = !usePickOkCancel ? gText_PickOKExit : gText_PickOKCancel; @@ -639,7 +639,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi windowTemplate.tilemapLeft = 0; response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0); - if (response != -1) + if (response != LIST_NOTHING_CHOSEN) { ClearWindowTilemap(2); CopyWindowToVram(2, 1); @@ -647,7 +647,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi return response; } -s8 mevent_message_print_and_prompt_yes_no(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; @@ -708,14 +708,10 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann switch (*textState) { case 0: - if (cannotToss == 0) - { + if (!cannotToss) StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithCards); - } else - { StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews); - } *windowId = AddWindow(&sMysteryGiftMenuWindowTemplate); FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); @@ -728,19 +724,19 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann windowTemplate = sWindowTemplate_YesNoBox; if (cannotSend) { - if (cannotToss == 0) + if (!cannotToss) input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0); else input = DoMysteryGiftListMenu(&sWindowTemplate_7by4, &sListMenu_Receive, 1, 0x00A, 0xE0); } else { - if (cannotToss == 0) + if (!cannotToss) input = DoMysteryGiftListMenu(&sWindowTemplate_7by8, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0); else input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0); } - if (input != -1) + if (input != LIST_NOTHING_CHOSEN) { *textState = 0; rbox_fill_rectangle(*windowId); @@ -756,33 +752,33 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann ClearWindowTilemap(*windowId); CopyWindowToVram(*windowId, 1); RemoveWindow(*windowId); - return -2; + return LIST_CANCEL; } - return -1; + return LIST_NOTHING_CHOSEN; } -static bool32 ValidateCardOrNews(bool32 cardOrNews) +static bool32 ValidateCardOrNews(bool32 isWonderNews) { - if (cardOrNews == 0) + if (!isWonderNews) return ValidateReceivedWonderCard(); else return ValidateReceivedWonderNews(); } -static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) +static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) { switch (*state) { case 0: - if (cardOrNews == 0) + if (!isWonderNews) WonderCard_Init(GetSavedWonderCard(), sav1_get_mevent_buffer_2()); else WonderNews_Init(GetSavedWonderNews()); (*state)++; break; case 1: - if (cardOrNews == 0) + if (!isWonderNews) { if (!WonderCard_Enter()) return FALSE; @@ -799,20 +795,20 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews) return FALSE; } -static bool32 DestroyNewsOrCard(bool32 cardOrNews) +static bool32 DestroyNewsOrCard(bool32 isWonderNews) { - if (cardOrNews == 0) + if (!isWonderNews) DestroyWonderCard(); else DestroyWonderNews(); return TRUE; } -static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) +static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 arg1) { - if (cardOrNews == 0) + if (!isWonderNews) { - if (WonderCard_Exit(arg1) != 0) + if (WonderCard_Exit(arg1)) { WonderCard_Destroy(); return TRUE; @@ -824,7 +820,7 @@ static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) } else { - if (WonderNews_Exit(arg1) != 0) + if (WonderNews_Exit(arg1)) { WonderNews_Destroy(); return TRUE; @@ -836,17 +832,17 @@ static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1) } } -static s32 mevent_message_prompt_discard(u8 * textState, u16 * windowId, bool32 cardOrNews) +static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews) { - if (cardOrNews == 0) - return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen); + if (!isWonderNews) + return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen); else - return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_OkayToDiscardNews); + return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_OkayToDiscardNews); } -static bool32 mevent_message_was_thrown_away(u8 * textState, bool32 cardOrNews) +static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews) { - if (cardOrNews == 0) + if (!isWonderNews) return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderCardThrownAway); else return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderNewsThrownAway); @@ -883,89 +879,89 @@ static bool32 mevent_save_game(u8 * state) return FALSE; } -static const u8 * mevent_message(u32 * a0, u8 a1, u8 cardOrNews, u32 msgId) +static const u8 * GetStdMessage(bool32 * receivedMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId) { const u8 * msg = NULL; - *a0 = 0; + *receivedMsg = FALSE; switch (msgId) { case 0: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_NothingSentOver; break; case 1: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_RecordUploadedViaWireless; break; case 2: - *a0 = 1; - msg = cardOrNews == 0 ? gText_WonderCardReceived : gText_WonderCardReceivedFrom; + *receivedMsg = TRUE; + msg = !sourceIsFriend ? gText_WonderCardReceived : gText_WonderCardReceivedFrom; break; case 3: - *a0 = 1; - msg = cardOrNews == 0 ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom; + *receivedMsg = TRUE; + msg = !sourceIsFriend ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom; break; case 4: - *a0 = 1; + *receivedMsg = TRUE; msg = gText_NewStampReceived; break; case 5: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_AlreadyHadCard; break; case 6: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_AlreadyHadStamp; break; case 7: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_AlreadyHadNews; break; case 8: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_NoMoreRoomForStamps; break; case 9: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_CommunicationCanceled; break; case 10: - *a0 = 0; - msg = a1 == 0 ? gText_CantAcceptCardFromTrainer : gText_CantAcceptNewsFromTrainer; + *receivedMsg = FALSE; + msg = !isWonderNews ? gText_CantAcceptCardFromTrainer : gText_CantAcceptNewsFromTrainer; break; case 11: - *a0 = 0; + *receivedMsg = FALSE; msg = gText_CommunicationError; break; case 12: - *a0 = 1; + *receivedMsg = TRUE; msg = gText_NewTrainerReceived; break; case 13: - *a0 = 1; + *receivedMsg = TRUE; break; case 14: - *a0 = 0; + *receivedMsg = FALSE; break; } return msg; } -static bool32 PrintMGSuccessMessage(u8 * state, const u8 * arg1, u16 * arg2) +static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer) { switch (*state) { case 0: - if (arg1 != NULL) - AddTextPrinterToWindow1(arg1); + if (msg != NULL) + AddTextPrinterToWindow1(msg); PlayFanfare(MUS_OBTAIN_ITEM); - *arg2 = 0; + *timer = 0; (*state)++; break; case 1: - if (++(*arg2) > 240) + if (++(*timer) > 240) (*state)++; break; case 2: @@ -1042,21 +1038,62 @@ static bool32 PrintMGSendStatus(u8 * state, u16 * arg1, u8 arg2, u32 msgId) u32 flag; const u8 * str = mevent_message_stamp_card_etc_send_status(&flag, arg2, msgId); if (flag) - return PrintMGSuccessMessage(state, str, arg1); + return PrintSuccessMessage(state, str, arg1); else return MG_PrintTextOnWindow1AndWaitButton(state, str); } -void task_add_00_mystery_gift(void) +enum { + MG_STATE_TO_MAIN_MENU, + MG_STATE_MAIN_MENU, + MG_STATE_DONT_HAVE_ANY, + MG_STATE_LINK_PROMPT, + MG_STATE_LINK_PROMPT_INPUT, + MG_STATE_LINK_START, + MG_STATE_LINK_WAIT, + MG_STATE_COMMUNICATING, + MG_STATE_COMMUNICATE, + MG_STATE_9, + MG_STATE_10, + MG_STATE_11, + MG_STATE_12, + MG_STATE_LINK_COMPLETE_WAIT, + MG_STATE_LINK_COMPLETED, + MG_STATE_LINK_RESULT_MSG, + MG_STATE_LINK_ERROR_1, + MG_STATE_SAVE_LOAD_GIFT, + MG_STATE_LOAD_GIFT, + MG_STATE_UNUSED, + MG_STATE_HANDLE_GIFT_INPUT, + MG_STATE_HANDLE_GIFT_SELECT, + MG_STATE_ASK_TOSS, + MG_STATE_ASK_TOSS_UNRECEIVED, + MG_STATE_TOSS, + MG_STATE_TOSS_SAVE, + MG_STATE_TOSSED, + MG_STATE_GIFT_INPUT_EXIT, + MG_STATE_RECEIVE, + MG_STATE_SEND, + MG_STATE_SEND_WAIT, + MG_STATE_SEND_START, + MG_STATE_SENDING, + MG_STATE_SEND_FINISH, + MG_STATE_SEND_WAIT_END, + MG_STATE_SEND_END, + MG_STATE_LINK_ERROR_2, + MG_STATE_EXIT, +}; + +static void CreateMysteryGiftTask(void) { - u8 taskId = CreateTask(task00_mystery_gift, 0); + u8 taskId = CreateTask(Task_MysteryGift, 0); struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data; - data->state = 0; + data->state = MG_STATE_TO_MAIN_MENU; data->textState = 0; data->unkA = 0; data->unkB = 0; - data->IsCardOrNews = 0; - data->source = 0; + data->isWonderNews = 0; + data->sourceIsFriend = 0; data->curPromptWindowId = 0; data->unk2 = 0; data->unk4 = 0; @@ -1065,298 +1102,287 @@ void task_add_00_mystery_gift(void) data->buffer = AllocZeroed(0x40); } -void task00_mystery_gift(u8 taskId) +static void Task_MysteryGift(u8 taskId) { struct MysteryGiftTaskData *data = (void *)gTasks[taskId].data; - u32 sp0, flag; - const u8 *r1; + u32 receivedMsg, input; + const u8 *msg; switch (data->state) { - case 0: - data->state = 1; + case MG_STATE_TO_MAIN_MENU: + data->state = MG_STATE_MAIN_MENU; break; - case 1: + case MG_STATE_MAIN_MENU: + // Main Mystery Gift menu, player can select Wonder Cards or News (or exit) switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, FALSE)) { - case 0: - data->IsCardOrNews = 0; + case 0: // "Wonder Cards" + data->isWonderNews = FALSE; if (ValidateReceivedWonderCard() == TRUE) - data->state = 18; + data->state = MG_STATE_LOAD_GIFT; else - data->state = 2; + data->state = MG_STATE_DONT_HAVE_ANY; break; - case 1: - data->IsCardOrNews = 1; + case 1: // "Wonder News" + data->isWonderNews = TRUE; if (ValidateReceivedWonderNews() == TRUE) - data->state = 18; + data->state = MG_STATE_LOAD_GIFT; else - data->state = 2; + data->state = MG_STATE_DONT_HAVE_ANY; break; - case -2u: - data->state = 37; + case LIST_CANCEL: + data->state = MG_STATE_EXIT; break; } break; - case 2: + case MG_STATE_DONT_HAVE_ANY: { - if (data->IsCardOrNews == 0) + // Player doesn't have any Wonder Card/News + // Start prompt to ask where to read one from + if (!data->isWonderNews) { if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveCardNewOneInput)) { - data->state = 3; - PrintMysteryGiftOrEReaderTopMenu(0, 1); + data->state = MG_STATE_LINK_PROMPT; + PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); } } else { if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveNewsNewOneInput)) { - data->state = 3; - PrintMysteryGiftOrEReaderTopMenu(0, 1); + data->state = MG_STATE_LINK_PROMPT; + PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); } } break; } - case 3: - if (data->IsCardOrNews == 0) + case MG_STATE_LINK_PROMPT: + if (!data->isWonderNews) AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed); else AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed); - data->state = 4; + data->state = MG_STATE_LINK_PROMPT_INPUT; break; - case 4: + case MG_STATE_LINK_PROMPT_INPUT: + // Choose where to access the Wonder Card/News from switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, TRUE)) { - case 0: + case 0: // "Wireless Communication" ClearTextWindow(); - data->state = 5; - data->source = 0; + data->state = MG_STATE_LINK_START; + data->sourceIsFriend = FALSE; break; - case 1: + case 1: // "Friend" ClearTextWindow(); - data->state = 5; - data->source = 1; + data->state = MG_STATE_LINK_START; + data->sourceIsFriend = TRUE; break; - case -2u: + case LIST_CANCEL: ClearTextWindow(); - if (ValidateCardOrNews(data->IsCardOrNews)) + if (ValidateCardOrNews(data->isWonderNews)) { - data->state = 18; + data->state = MG_STATE_LOAD_GIFT; } else { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); } break; } break; - case 5: + case MG_STATE_LINK_START: *gStringVar1 = EOS; *gStringVar2 = EOS; *gStringVar3 = EOS; - switch (data->IsCardOrNews) + switch (data->isWonderNews) { - case 0: - if (data->source == 1) - MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_CARD); - else if (data->source == 0) - MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_CARD); + case FALSE: + if (data->sourceIsFriend == TRUE) + CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_CARD); + else if (data->sourceIsFriend == FALSE) + CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_CARD); break; - case 1: - if (data->source == 1) - MEvent_CreateTask_CardOrNewsWithFriend(ACTIVITY_WONDER_NEWS); - else if (data->source == 0) - MEvent_CreateTask_CardOrNewsOverWireless(ACTIVITY_WONDER_NEWS); + case TRUE: + if (data->sourceIsFriend == TRUE) + CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_NEWS); + else if (data->sourceIsFriend == FALSE) + CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_NEWS); break; } - data->state = 6; + data->state = MG_STATE_LINK_WAIT; break; - case 6: + case MG_STATE_LINK_WAIT: if (gReceivedRemoteLinkPlayers != 0) { ClearScreenInBg0(TRUE); - data->state = 7; - mevent_client_do_init(data->IsCardOrNews); + data->state = MG_STATE_COMMUNICATING; + mevent_client_do_init(data->isWonderNews); } else if (gSpecialVar_Result == LINKUP_FAILED) { + // Link failed, return to link start menu ClearScreenInBg0(TRUE); - data->state = 3; + data->state = MG_STATE_LINK_PROMPT; } break; - case 7: + case MG_STATE_COMMUNICATING: AddTextPrinterToWindow1(gText_Communicating); - data->state = 8; + data->state = MG_STATE_COMMUNICATE; break; - case 8: + case MG_STATE_COMMUNICATE: switch (mevent_client_do_exec(&data->curPromptWindowId)) { case 6: Rfu_SetCloseLinkCallback(); data->prevPromptWindowId = data->curPromptWindowId; - data->state = 13; + data->state = MG_STATE_LINK_COMPLETE_WAIT; break; case 5: memcpy(data->buffer, mevent_client_get_buffer(), 0x40); mevent_client_inc_flag(); break; case 3: - data->state = 10; + data->state = MG_STATE_10; break; case 2: - data->state = 9; + data->state = MG_STATE_9; break; case 4: - data->state = 11; + data->state = MG_STATE_11; StringCopy(gStringVar1, gLinkPlayers[0].name); break; } break; - case 9: - flag = mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, mevent_client_get_buffer()); - switch (flag) + case MG_STATE_9: + input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, mevent_client_get_buffer()); + switch (input) { - case 0: + case 0: // Yes mevent_client_set_param(0); mevent_client_inc_flag(); - data->state = 7; - break; - case 1: - mevent_client_set_param(1); - mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; break; - case -1u: + case 1: // No + case MENU_B_PRESSED: mevent_client_set_param(1); mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; break; } break; - case 10: + case MG_STATE_10: if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, mevent_client_get_buffer())) { mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; } break; - case 11: - flag = mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, gText_ThrowAwayWonderCard); - switch (flag) + case MG_STATE_11: + input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_ThrowAwayWonderCard); + switch (input) { - case 0: + case 0: // Yes if (CheckReceivedGiftFromWonderCard() == TRUE) { - data->state = 12; + data->state = MG_STATE_12; } else { mevent_client_set_param(0); mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; } break; - case 1: + case 1: // No + case MENU_B_PRESSED: mevent_client_set_param(1); mevent_client_inc_flag(); - data->state = 7; - break; - case -1u: - mevent_client_set_param(1); - mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; break; } break; - case 12: - flag = mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, gText_HaventReceivedCardsGift); - switch (flag) + case MG_STATE_12: + input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_HaventReceivedCardsGift); + switch (input) { - case 0: + case 0: // Yes mevent_client_set_param(0); mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; break; - case 1: + case 1: // No + case MENU_B_PRESSED: mevent_client_set_param(1); mevent_client_inc_flag(); - data->state = 7; - break; - case -1u: - mevent_client_set_param(1); - mevent_client_inc_flag(); - data->state = 7; + data->state = MG_STATE_COMMUNICATING; break; } break; - case 13: + case MG_STATE_LINK_COMPLETE_WAIT: if (gReceivedRemoteLinkPlayers == 0) { DestroyWirelessStatusIndicatorSprite(); - data->state = 14; + data->state = MG_STATE_LINK_COMPLETED; } break; - case 14: + case MG_STATE_LINK_COMPLETED: if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted)) { - if (data->source == 1) + if (data->sourceIsFriend == TRUE) StringCopy(gStringVar1, gLinkPlayers[0].name); - data->state = 15; + data->state = MG_STATE_LINK_RESULT_MSG; } break; - case 15: - r1 = mevent_message(&sp0, data->IsCardOrNews, data->source, data->prevPromptWindowId); - if (r1 == NULL) - r1 = data->buffer; - if (sp0) - flag = PrintMGSuccessMessage(&data->textState, r1, &data->curPromptWindowId); + case MG_STATE_LINK_RESULT_MSG: + msg = GetStdMessage(&receivedMsg, data->isWonderNews, data->sourceIsFriend, data->prevPromptWindowId); + if (msg == NULL) + msg = data->buffer; + if (receivedMsg) + input = PrintSuccessMessage(&data->textState, msg, &data->curPromptWindowId); else - flag = MG_PrintTextOnWindow1AndWaitButton(&data->textState, r1); - if (flag) + input = MG_PrintTextOnWindow1AndWaitButton(&data->textState, msg); + // input var re-used, here it is TRUE if the message is finished + if (input) { if (data->prevPromptWindowId == 3) { - if (data->source == 1) + if (data->sourceIsFriend == TRUE) GenerateRandomNews(1); else GenerateRandomNews(2); } - if (!sp0) + if (!receivedMsg) { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); + // Did not receive card/news, return to main menu + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); } else { - data->state = 17; + data->state = MG_STATE_SAVE_LOAD_GIFT; } } break; - case 16: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_CommunicationError)) - { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); - } - break; - case 17: + case MG_STATE_SAVE_LOAD_GIFT: if (mevent_save_game(&data->textState)) - data->state = 18; + data->state = MG_STATE_LOAD_GIFT; break; - case 18: - if (HandleLoadWonderCardOrNews(&data->textState, data->IsCardOrNews)) - data->state = 20; + case MG_STATE_LOAD_GIFT: + if (HandleLoadWonderCardOrNews(&data->textState, data->isWonderNews)) + data->state = MG_STATE_HANDLE_GIFT_INPUT; break; - case 20: - if (data->IsCardOrNews == 0) + case MG_STATE_HANDLE_GIFT_INPUT: + if (!data->isWonderNews) { + // Handle Wonder Card input if (JOY_NEW(A_BUTTON)) - data->state = 21; + data->state = MG_STATE_HANDLE_GIFT_SELECT; if (JOY_NEW(B_BUTTON)) - data->state = 27; + data->state = MG_STATE_GIFT_INPUT_EXIT; } else { @@ -1364,141 +1390,140 @@ void task00_mystery_gift(u8 taskId) { case NEWS_INPUT_A: WonderNews_RemoveScrollIndicatorArrowPair(); - data->state = 21; + data->state = MG_STATE_HANDLE_GIFT_SELECT; break; case NEWS_INPUT_B: - data->state = 27; + data->state = MG_STATE_GIFT_INPUT_EXIT; break; } } break; - case 21: + case MG_STATE_HANDLE_GIFT_SELECT: { + // A Wonder Card/News has been selected, handle its menu u32 result; - if (data->IsCardOrNews == 0) + if (!data->isWonderNews) { if (WonderCard_Test_Unk_08_6()) - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE); + result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE); + result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, TRUE); } else { if (WonderNews_Test_Unk_02()) - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE); + result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE); + result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, TRUE); } switch (result) { - case 0: - data->state = 28; + case 0: // Receive + data->state = MG_STATE_RECEIVE; break; - case 1: - data->state = 29; + case 1: // Send + data->state = MG_STATE_SEND; break; - case 2: - data->state = 22; + case 2: // Toss + data->state = MG_STATE_ASK_TOSS; break; - case -2u: - if (data->IsCardOrNews == 1) + case LIST_CANCEL: + if (data->isWonderNews == TRUE) WonderNews_AddScrollIndicatorArrowPair(); - data->state = 20; + data->state = MG_STATE_HANDLE_GIFT_INPUT; break; } break; } - case 22: - switch (mevent_message_prompt_discard(&data->textState, &data->curPromptWindowId, data->IsCardOrNews)) + case MG_STATE_ASK_TOSS: + // Player is atempting to discard a Wonder Card/News + switch (AskDiscardGift(&data->textState, &data->curPromptWindowId, data->isWonderNews)) { - case 0: - if (data->IsCardOrNews == 0 && CheckReceivedGiftFromWonderCard() == TRUE) - data->state = 23; + case 0: // Yes + if (!data->isWonderNews && CheckReceivedGiftFromWonderCard() == TRUE) + data->state = MG_STATE_ASK_TOSS_UNRECEIVED; else - data->state = 24; + data->state = MG_STATE_TOSS; break; - case 1: - data->state = 21; - break; - case -1: - data->state = 21; + case 1: // No + case MENU_B_PRESSED: + data->state = MG_STATE_HANDLE_GIFT_SELECT; break; } break; - case 23: - switch ((u32)mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, TRUE, gText_HaventReceivedGiftOkayToDiscard)) + case MG_STATE_ASK_TOSS_UNRECEIVED: + // Player is attempting to discard a Wonder Card that they haven't received the gift for + switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, TRUE, gText_HaventReceivedGiftOkayToDiscard)) { - case 0: - data->state = 24; - break; - case 1: - data->state = 21; + case 0: // Yes + data->state = MG_STATE_TOSS; break; - case -1u: - data->state = 21; + case 1: // No + case MENU_B_PRESSED: + data->state = MG_STATE_HANDLE_GIFT_SELECT; break; } break; - case 24: - if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1)) + case MG_STATE_TOSS: + if (ExitWonderCardOrNews(data->isWonderNews, 1)) { - DestroyNewsOrCard(data->IsCardOrNews); - data->state = 25; + DestroyNewsOrCard(data->isWonderNews); + data->state = MG_STATE_TOSS_SAVE; } break; - case 25: + case MG_STATE_TOSS_SAVE: if (mevent_save_game(&data->textState)) - data->state = 26; + data->state = MG_STATE_TOSSED; break; - case 26: - if (mevent_message_was_thrown_away(&data->textState, data->IsCardOrNews)) + case MG_STATE_TOSSED: + if (PrintThrownAway(&data->textState, data->isWonderNews)) { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); } break; - case 27: - if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 0)) - data->state = 0; + case MG_STATE_GIFT_INPUT_EXIT: + if (ExitWonderCardOrNews(data->isWonderNews, 0)) + data->state = MG_STATE_TO_MAIN_MENU; break; - case 28: - if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1)) - data->state = 3; + case MG_STATE_RECEIVE: + if (ExitWonderCardOrNews(data->isWonderNews, 1)) + data->state = MG_STATE_LINK_PROMPT; break; - case 29: - if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1)) + case MG_STATE_SEND: + if (ExitWonderCardOrNews(data->isWonderNews, 1)) { - switch (data->IsCardOrNews) + switch (data->isWonderNews) { - case 0: - MEvent_CreateTask_Leader(ACTIVITY_WONDER_CARD); + case FALSE: + CreateTask_SendMysteryGift(ACTIVITY_WONDER_CARD); break; - case 1: - MEvent_CreateTask_Leader(ACTIVITY_WONDER_NEWS); + case TRUE: + CreateTask_SendMysteryGift(ACTIVITY_WONDER_NEWS); break; } - data->source = 1; - data->state = 30; + data->sourceIsFriend = TRUE; + data->state = MG_STATE_SEND_WAIT; } break; - case 30: + case MG_STATE_SEND_WAIT: if (gReceivedRemoteLinkPlayers != 0) { ClearScreenInBg0(1); - data->state = 31; + data->state = MG_STATE_SEND_START; } else if (gSpecialVar_Result == LINKUP_FAILED) { ClearScreenInBg0(1); - data->state = 18; + data->state = MG_STATE_LOAD_GIFT; } break; - case 31: + case MG_STATE_SEND_START: *gStringVar1 = EOS; *gStringVar2 = EOS; *gStringVar3 = EOS; - if (data->IsCardOrNews == 0) + if (!data->isWonderNews) { AddTextPrinterToWindow1(gText_SendingWonderCard); mevent_srv_new_wcard(); @@ -1508,50 +1533,51 @@ void task00_mystery_gift(u8 taskId) AddTextPrinterToWindow1(gText_SendingWonderNews); mevent_srv_init_wnews(); } - data->state = 32; + data->state = MG_STATE_SENDING; break; - case 32: + case MG_STATE_SENDING: if (mevent_srv_common_do_exec(&data->curPromptWindowId) == 3) { data->prevPromptWindowId = data->curPromptWindowId; - data->state = 33; + data->state = MG_STATE_SEND_FINISH; } break; - case 33: + case MG_STATE_SEND_FINISH: Rfu_SetCloseLinkCallback(); StringCopy(gStringVar1, gLinkPlayers[1].name); - data->state = 34; + data->state = MG_STATE_SEND_WAIT_END; break; - case 34: + case MG_STATE_SEND_WAIT_END: if (gReceivedRemoteLinkPlayers == 0) { DestroyWirelessStatusIndicatorSprite(); - data->state = 35; + data->state = MG_STATE_SEND_END; } break; - case 35: - if (PrintMGSendStatus(&data->textState, &data->curPromptWindowId, data->source, data->prevPromptWindowId)) + case MG_STATE_SEND_END: + if (PrintMGSendStatus(&data->textState, &data->curPromptWindowId, data->sourceIsFriend, data->prevPromptWindowId)) { - if (data->source == 1 && data->prevPromptWindowId == 3) + if (data->sourceIsFriend == TRUE && data->prevPromptWindowId == 3) { GenerateRandomNews(3); - data->state = 17; + data->state = MG_STATE_SAVE_LOAD_GIFT; } else { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); } } break; - case 36: + case MG_STATE_LINK_ERROR_1: + case MG_STATE_LINK_ERROR_2: if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_CommunicationError)) { - data->state = 0; - PrintMysteryGiftOrEReaderTopMenu(0, 0); + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); } break; - case 37: + case MG_STATE_EXIT: CloseLink(); Free(data->buffer); DestroyTask(taskId); diff --git a/src/union_room.c b/src/union_room.c index 41d6ded2992a..0512a1f5c4b6 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -218,7 +218,7 @@ static u16 ReadAsU16(const u8 *); static void Task_TryBecomeLinkLeader(u8); static void Task_TryJoinLinkGroup(u8); static void Task_ListenToWireless(u8); -static void Task_MEvent_Leader(u8); +static void Task_SendMysteryGift(u8); static void Task_CardOrNewsWithFriend(u8); static void Task_CardOrNewsOverWireless(u8); static void Task_RunUnionRoom(u8); @@ -1857,12 +1857,13 @@ static void CreateTask_StartActivity(void) gTasks[taskId].data[0] = 0; } -void MEvent_CreateTask_Leader(u32 activity) +// Sending Wonder Card/News +void CreateTask_SendMysteryGift(u32 activity) { u8 taskId; struct WirelessLink_Leader *data; - taskId = CreateTask(Task_MEvent_Leader, 0); + taskId = CreateTask(Task_SendMysteryGift, 0); sWirelessLinkMain.leader = data = (void*)(gTasks[taskId].data); data->state = 0; @@ -1871,7 +1872,7 @@ void MEvent_CreateTask_Leader(u32 activity) gSpecialVar_Result = LINKUP_ONGOING; } -static void Task_MEvent_Leader(u8 taskId) +static void Task_SendMysteryGift(u8 taskId) { struct WirelessLink_Leader *data = sWirelessLinkMain.leader; struct WindowTemplate winTemplate; @@ -1944,7 +1945,7 @@ static void Task_MEvent_Leader(u8 taskId) data->state = 7; break; case 7: - switch (mevent_message_print_and_prompt_yes_no(&data->textState, &data->yesNoWindowId, 0, gStringVar4)) + switch (DoMysteryGiftYesNo(&data->textState, &data->yesNoWindowId, 0, gStringVar4)) { case 0: LoadWirelessStatusIndicatorSpriteGfx(); @@ -2065,7 +2066,7 @@ static void Task_MEvent_Leader(u8 taskId) } } -void MEvent_CreateTask_CardOrNewsWithFriend(u32 activity) +void CreateTask_LinkMysteryGiftWithFriend(u32 activity) { u8 taskId; struct WirelessLink_Group *data; @@ -2234,7 +2235,7 @@ static void Task_CardOrNewsWithFriend(u8 taskId) } } -void MEvent_CreateTask_CardOrNewsOverWireless(u32 activity) +void CreateTask_LinkMysteryGiftOverWireless(u32 activity) { u8 taskId; struct WirelessLink_Group *data; From c02001c46d4ea55db8b59f91413627800d5674e8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Oct 2021 15:36:51 -0400 Subject: [PATCH 304/762] Document mystery gift link scripts, general mystery gift --- data/scripts/cable_club.inc | 2 +- data/specials.inc | 2 +- include/constants/flags.h | 35 ++-- include/global.h | 41 ++-- include/mevent.h | 30 +-- include/mevent_client.h | 59 +++++- include/mevent_server.h | 2 +- include/mevent_server_helpers.h | 16 +- include/mystery_event_script.h | 4 +- include/wonder_transfer.h | 2 +- src/crt0.s | 2 +- src/mevent2.c | 252 +++++++++++------------ src/mevent_client.c | 354 ++++++++++++++++---------------- src/mevent_news.c | 2 +- src/mevent_scripts.c | 262 +++++++++++------------ src/mevent_server.c | 12 +- src/mevent_server_helpers.c | 18 +- src/mystery_event_script.c | 6 +- src/mystery_gift.c | 75 +++---- src/scrcmd.c | 2 +- src/script.c | 2 +- src/wonder_transfer.c | 4 +- 22 files changed, 610 insertions(+), 574 deletions(-) diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 5cecb60d8109..c1bcc8d14dbd 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -6,7 +6,7 @@ CableClub_EventScript_HideOrShowMysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_ShowMysteryGiftMan - specialvar VAR_RESULT, ValidateReceivedWonderCard + specialvar VAR_RESULT, ValidateSavedWonderCard compare VAR_RESULT, FALSE goto_if_eq CableClub_EventScript_HideMysteryGiftMan goto CableClub_EventScript_ShowMysteryGiftMan diff --git a/data/specials.inc b/data/specials.inc index 81b25c14d4d1..297cf7d8afce 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -434,7 +434,7 @@ gSpecials:: def_special ChooseMonForWirelessMinigame def_special Script_ResetUnionRoomTrade def_special IsBadEggInParty - def_special ValidateReceivedWonderCard + def_special ValidateSavedWonderCard def_special HasAtLeastOneBerry def_special IsPokemonJumpSpeciesInParty def_special ShowPokemonJumpRecords diff --git a/include/constants/flags.h b/include/constants/flags.h index ef5a9a75e6e0..880d227aa79d 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -338,23 +338,24 @@ #define FLAG_RECEIVED_AURORA_TICKET 0x13A #define FLAG_RECEIVED_MYSTIC_TICKET 0x13B #define FLAG_RECEIVED_OLD_SEA_MAP 0x13C -#define FLAG_UNUSED_MYSTERY_GIFT_0x13D 0x13D -#define FLAG_UNUSED_MYSTERY_GIFT_0x13E 0x13E -#define FLAG_UNUSED_MYSTERY_GIFT_0x13F 0x13F -#define FLAG_UNUSED_MYSTERY_GIFT_0x140 0x140 -#define FLAG_UNUSED_MYSTERY_GIFT_0x141 0x141 -#define FLAG_UNUSED_MYSTERY_GIFT_0x142 0x142 -#define FLAG_UNUSED_MYSTERY_GIFT_0x143 0x143 -#define FLAG_UNUSED_MYSTERY_GIFT_0x144 0x144 -#define FLAG_UNUSED_MYSTERY_GIFT_0x145 0x145 -#define FLAG_UNUSED_MYSTERY_GIFT_0x146 0x146 -#define FLAG_UNUSED_MYSTERY_GIFT_0x147 0x147 -#define FLAG_UNUSED_MYSTERY_GIFT_0x148 0x148 -#define FLAG_UNUSED_MYSTERY_GIFT_0x149 0x149 -#define FLAG_UNUSED_MYSTERY_GIFT_0x14A 0x14A -#define FLAG_UNUSED_MYSTERY_GIFT_0x14B 0x14B -#define FLAG_UNUSED_MYSTERY_GIFT_0x14C 0x14C -#define FLAG_UNUSED_MYSTERY_GIFT_0x14D 0x14D +#define FLAG_MYSTERY_GIFT_UNUSED_1 0x13D // These mystery gift flags are referenced but never set +#define FLAG_MYSTERY_GIFT_UNUSED_2 0x13E +#define FLAG_MYSTERY_GIFT_UNUSED_3 0x13F +#define FLAG_MYSTERY_GIFT_UNUSED_4 0x140 +#define FLAG_MYSTERY_GIFT_UNUSED_5 0x141 +#define FLAG_MYSTERY_GIFT_UNUSED_6 0x142 +#define FLAG_MYSTERY_GIFT_UNUSED_7 0x143 +#define FLAG_MYSTERY_GIFT_UNUSED_8 0x144 +#define FLAG_MYSTERY_GIFT_UNUSED_9 0x145 +#define FLAG_MYSTERY_GIFT_UNUSED_10 0x146 +#define FLAG_MYSTERY_GIFT_UNUSED_11 0x147 +#define FLAG_MYSTERY_GIFT_UNUSED_12 0x148 +#define FLAG_MYSTERY_GIFT_UNUSED_13 0x149 +#define FLAG_MYSTERY_GIFT_UNUSED_14 0x14A +#define FLAG_MYSTERY_GIFT_UNUSED_15 0x14B +#define FLAG_MYSTERY_GIFT_UNUSED_16 0x14C +#define FLAG_MYSTERY_GIFT_UNUSED_17 0x14D +#define NUM_MYSTERY_GIFT_FLAGS (1 + FLAG_MYSTERY_GIFT_UNUSED_17 - FLAG_RECEIVED_AURORA_TICKET) #define FLAG_MIRAGE_TOWER_VISIBLE 0x14E #define FLAG_CHOSE_ROOT_FOSSIL 0x14F diff --git a/include/global.h b/include/global.h index f8bb24da71ee..c737be7b8f64 100644 --- a/include/global.h +++ b/include/global.h @@ -854,15 +854,9 @@ struct MysteryEventStruct u8 unk_2C[10][WONDER_NEWS_TEXT_LENGTH]; }; - struct WonderNewsSaveStruct -{ - u32 crc; - struct WonderNews data; -}; - struct WonderCard { - u16 unk_00; + u16 flagId; u16 unk_02; u32 unk_04; u8 unk_08_0:2; @@ -876,13 +870,7 @@ struct MysteryEventStruct u8 unk_122[WONDER_CARD_TEXT_LENGTH]; }; - struct WonderCardSaveStruct -{ - u32 crc; - struct WonderCard data; -}; - - struct MEventBuffer_3430_Sub + struct MEventBuffer_3430 { u16 unk_00; u16 unk_02; @@ -891,20 +879,17 @@ struct MysteryEventStruct u16 unk_08[2][7]; }; - struct MEventBuffer_3430 -{ - u32 crc; - struct MEventBuffer_3430_Sub data; -}; - - struct MEventBuffers + struct MysteryGiftSave { - /*0x000 0x322C*/ struct WonderNewsSaveStruct wonderNews; - /*0x1c0 0x33EC*/ struct WonderCardSaveStruct wonderCard; - /*0x310 0x353C*/ struct MEventBuffer_3430 buffer_310; - /*0x338 0x3564*/ u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; - /*0x340 0x356C*/ struct MysteryEventStruct unk_340; - /*0x344 0x3570*/ u32 unk_344[2][5]; + u32 newsCrc; + struct WonderNews news; + u32 cardCrc; + struct WonderCard card; + u32 unkCrc; + struct MEventBuffer_3430 unk_3430; + u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; + struct MysteryEventStruct unk_340; + u32 unk_344[2][5]; }; // 0x36C 0x3598 // For external event data storage. The majority of these may have never been used. @@ -1031,7 +1016,7 @@ struct SaveBlock1 /*0x31C7*/ struct ExternalEventFlags externalEventFlags; /*0x31DC*/ struct Roamer roamer; /*0x31F8*/ struct EnigmaBerry enigmaBerry; - /*0x322C*/ struct MEventBuffers unk_322C; + /*0x322C*/ struct MysteryGiftSave mysteryGift; /*0x3598*/ u8 field_3598[0x180]; /*0x3718*/ u32 trainerHillTimes[4]; /*0x3728*/ struct RamScript ramScript; diff --git a/include/mevent.h b/include/mevent.h index 4b7d39b0c305..4fda47fbd244 100755 --- a/include/mevent.h +++ b/include/mevent.h @@ -21,30 +21,30 @@ struct MEventStruct_Unk1442CC u16 unk_0C; u32 unk_10; u16 unk_14; - u16 unk_16[NUM_QUESTIONNAIRE_WORDS]; - struct MEventBuffer_3430_Sub unk_20; + u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; + struct MEventBuffer_3430 unk_20; u8 unk_44; - u8 unk_45[7]; - u8 unk_4C[4]; - u16 unk_50[6]; - u8 unk_5C[4]; - u8 unk_60; + u8 playerName[PLAYER_NAME_LENGTH]; + u8 playerTrainerId[TRAINER_ID_LENGTH]; + u16 easyChatProfile[EASY_CHAT_BATTLE_WORDS_COUNT]; + u8 romHeaderGameCode[4]; + u8 romHeaderSoftwareVersion; }; void sub_801AFD8(void); struct WonderNews *GetSavedWonderNews(void); struct WonderCard *GetSavedWonderCard(void); -struct MEventBuffer_3430_Sub *sav1_get_mevent_buffer_2(void); +struct MEventBuffer_3430 *sav1_get_mevent_buffer_2(void); struct MysteryEventStruct *sub_801B044(void); u16 *GetQuestionnaireWordsPtr(void); -void DestroyWonderNews(void); -bool32 sub_801B078(const struct WonderNews *src); -bool32 ValidateReceivedWonderNews(void); +void ClearSavedWonderNews(void); +bool32 SaveWonderNews(const struct WonderNews *news); +bool32 ValidateSavedWonderNews(void); bool32 WonderNews_Test_Unk_02(void); bool32 sub_801B1A4(const u8 *src); -void DestroyWonderCard(void); -bool32 sub_801B21C(const struct WonderCard *data); -bool32 ValidateReceivedWonderCard(void); +void ClearSavedWonderCard(void); +bool32 SaveWonderCard(const struct WonderCard *card); +bool32 ValidateSavedWonderCard(void); bool32 WonderCard_Test_Unk_08_6(void); u16 GetWonderCardFlagID(void); void WonderCard_ResetInternalReceivedFlag(struct WonderCard *buffer); @@ -54,7 +54,7 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1); bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1); u32 sub_801B6EC(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused); u32 sub_801B708(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused); -bool32 MEventStruct_Unk1442CC_CompareField_unk_16(const struct MEventStruct_Unk1442CC *a0, const u16 *a1); +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MEventStruct_Unk1442CC *data, const u16 *words); u16 MEventStruct_Unk1442CC_GetValueNFrom_unk_20(const struct MEventStruct_Unk1442CC *a0, u32 command); u16 mevent_081445C0(u32 command); void ResetReceivedWonderCardFlag(void); diff --git a/include/mevent_client.h b/include/mevent_client.h index c32d14d7aa69..f68bb7592b2e 100644 --- a/include/mevent_client.h +++ b/include/mevent_client.h @@ -3,31 +3,68 @@ #include "mevent_server_helpers.h" -struct mevent_client_cmd +// Return values for client functions called by MysteryGiftClient_Run +enum { + CLI_RET_INIT, + CLI_RET_1, + CLI_RET_2, + CLI_RET_3, + CLI_RET_ASK_TOSS, + CLI_RET_5, + CLI_RET_END, +}; + +// IDs for client script instructions +enum { + CLI_NONE, + CLI_RETURN, + CLI_RECV, + CLI_SEND_LOADED, + CLI_COPY_RECV, + CLI_5, + CLI_COPY_RECV_IF_N, + CLI_COPY_RECV_IF, + CLI_8, + CLI_9, + CLI_10, + CLI_11, + CLI_12, + CLI_ASK_TOSS, + CLI_LOAD_TOSS_RESPONSE, + CLI_15, + CLI_16, + CLI_17, + CLI_RECV_EREADER_TRAINER, + CLI_SEND_STAT, + CLI_20, + CLI_21, +}; + +struct MysteryGiftClientCmd { u32 instr; u32 parameter; }; -struct mevent_client +struct MysteryGiftClient { u32 unk_00; u32 param; - u32 mainseqno; - u32 flag; + u32 funcId; + u32 funcState; u32 cmdidx; void * sendBuffer; void * recvBuffer; - struct mevent_client_cmd * cmdBuffer; + struct MysteryGiftClientCmd * cmdBuffer; void * buffer; - struct mevent_srv_sub manager; - u32 unk_4C; + struct MysteryGiftLink link; + bool32 isWonderNews; }; -void mevent_client_do_init(u32 arg); -u32 mevent_client_do_exec(u16 * a0); -void mevent_client_inc_flag(void); +void MysteryGiftClient_Create(bool32 isWonderNews); +u32 MysteryGiftClient_Run(u16 * param); +void MysteryGiftClient_AdvanceState(void); void * mevent_client_get_buffer(void); -void mevent_client_set_param(u32 a0); +void MysteryGiftClient_SetParam(u32 value); #endif //GUARD_MEVENT_CLIENT_H diff --git a/include/mevent_server.h b/include/mevent_server.h index e74337cf6fe2..3152280d34b4 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -26,7 +26,7 @@ struct mevent_srv_common const void * sendBuffer2; u32 sendBuffer2Size; u32 sendWord; - struct mevent_srv_sub manager; + struct MysteryGiftLink manager; }; void mevent_srv_new_wcard(); diff --git a/include/mevent_server_helpers.h b/include/mevent_server_helpers.h index e4e409862aa7..d2f292a0ba76 100644 --- a/include/mevent_server_helpers.h +++ b/include/mevent_server_helpers.h @@ -3,7 +3,7 @@ #define ME_SEND_BUF_SIZE 0x400 -struct mevent_srv_sub +struct MysteryGiftLink { s32 seqno; u8 sendPlayerNo; @@ -18,8 +18,8 @@ struct mevent_srv_sub u16 sendSize; void * recvBfr; const void * sendBfr; - u32 (*recvFunc)(struct mevent_srv_sub *); - u32 (*sendFunc)(struct mevent_srv_sub *); + u32 (*recvFunc)(struct MysteryGiftLink *); + u32 (*sendFunc)(struct MysteryGiftLink *); }; struct send_recv_header @@ -29,10 +29,10 @@ struct send_recv_header u16 size; }; -void mevent_srv_sub_init(struct mevent_srv_sub *, u32, u32); -void mevent_srv_sub_init_send(struct mevent_srv_sub * manager, u32 ident, const void * src, u32 size); -bool32 mevent_srv_sub_recv(struct mevent_srv_sub * manager); -bool32 mevent_srv_sub_send(struct mevent_srv_sub * manager); -void mevent_srv_sub_init_recv(struct mevent_srv_sub *, u32, void *); +void MysteryGiftLink_Init(struct MysteryGiftLink *, u32, u32); +void MysteryGiftLink_InitSend(struct MysteryGiftLink * manager, u32 ident, const void * src, u32 size); +bool32 MysteryGiftLink_Recv(struct MysteryGiftLink * manager); +bool32 MysteryGiftLink_Send(struct MysteryGiftLink * manager); +void MysteryGiftLink_InitRecv(struct MysteryGiftLink *, u32, void *); #endif //GUARD_MEVENT_SERVER_HELPERS_H diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index 991cab53a409..807c78b13221 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -1,8 +1,8 @@ #ifndef GUARD_MYSTERY_EVENT_SCRIPT_H #define GUARD_MYSTERY_EVENT_SCRIPT_H -void sub_8153870(u8 *script); -bool32 sub_8153884(u32 *a0); +void InitMysteryGiftScriptContext(u8 *script); +bool32 RunMysteryGiftScriptContextCommand(u32 *script); u32 RunMysteryEventScript(u8 *script); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); diff --git a/include/wonder_transfer.h b/include/wonder_transfer.h index 65b47572533b..7532d6b3c99f 100644 --- a/include/wonder_transfer.h +++ b/include/wonder_transfer.h @@ -9,7 +9,7 @@ enum { NEWS_INPUT_NONE = 0xFF }; -bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430_Sub * r6); +bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430 * r6); bool32 WonderNews_Init(const struct WonderNews * news); s32 WonderCard_Enter(void); s32 WonderNews_Enter(void); diff --git a/src/crt0.s b/src/crt0.s index 835522589c1a..672fc94f2a57 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -94,7 +94,7 @@ GPIOPortReadEnable: @ 80000C8 .byte 0x1e, 0x1e, 0x10, 0x40 - .4byte 0x0000322e @ offsetof(struct SaveBlock1, ? part-way into unk_322C) + .4byte 0x0000322e @ offsetof(struct SaveBlock1, ? part-way into mysteryGift) .4byte 0x00000498 @ offsetof(struct SaveBlock1, pcItems) .4byte 0x000031a8 @ offsetof(struct SaveBlock1, giftRibbons) .4byte 0x000031f8 @ offsetof(struct SaveBlock1, enigmaBerry) diff --git a/src/mevent2.c b/src/mevent2.c index c7035ae8f033..fd3ec7a67250 100755 --- a/src/mevent2.c +++ b/src/mevent2.c @@ -14,73 +14,75 @@ static EWRAM_DATA bool32 gUnknown_02022C70 = FALSE; static void sub_801B180(void); -static void s_DestroyWonderNews(void); -static bool32 sub_801B114(const struct WonderNews *data); -static bool32 ValidateWonderCardData(const struct WonderCard *data); -static void sub_801B330(void); +static void ClearSavedWonderNewsInternal(void); +static bool32 ValidateWonderNews(const struct WonderNews *news); +static bool32 ValidateWonderCard(const struct WonderCard *card); +static void InitSavedWonderCard(void); static void sub_801B368(void); static void sub_801B9F8(void); static void sub_801BA8C(u32 a0, u32 a1, u32 *a2, int a3); +#define CALC_CRC(data) CalcCRC16WithTable((void *)&(data), sizeof(data)) + void sub_801AFD8(void) { - CpuFill32(0, &gSaveBlock1Ptr->unk_322C, sizeof(gSaveBlock1Ptr->unk_322C)); + CpuFill32(0, &gSaveBlock1Ptr->mysteryGift, sizeof(gSaveBlock1Ptr->mysteryGift)); sub_801B180(); InitQuestionnaireWords(); } struct WonderNews *GetSavedWonderNews(void) { - return &gSaveBlock1Ptr->unk_322C.wonderNews.data; + return &gSaveBlock1Ptr->mysteryGift.news; } struct WonderCard *GetSavedWonderCard(void) { - return &gSaveBlock1Ptr->unk_322C.wonderCard.data; + return &gSaveBlock1Ptr->mysteryGift.card; } -struct MEventBuffer_3430_Sub *sav1_get_mevent_buffer_2(void) +struct MEventBuffer_3430 *sav1_get_mevent_buffer_2(void) { - return &gSaveBlock1Ptr->unk_322C.buffer_310.data; + return &gSaveBlock1Ptr->mysteryGift.unk_3430; } struct MysteryEventStruct *sub_801B044(void) { - return &gSaveBlock1Ptr->unk_322C.unk_340; + return &gSaveBlock1Ptr->mysteryGift.unk_340; } u16 *GetQuestionnaireWordsPtr(void) { - return gSaveBlock1Ptr->unk_322C.questionnaireWords; + return gSaveBlock1Ptr->mysteryGift.questionnaireWords; } -void DestroyWonderNews(void) +void ClearSavedWonderNews(void) { - s_DestroyWonderNews(); + ClearSavedWonderNewsInternal(); } -bool32 sub_801B078(const struct WonderNews *src) +bool32 SaveWonderNews(const struct WonderNews *news) { - if (!sub_801B114(src)) + if (!ValidateWonderNews(news)) return FALSE; - s_DestroyWonderNews(); - gSaveBlock1Ptr->unk_322C.wonderNews.data = *src; - gSaveBlock1Ptr->unk_322C.wonderNews.crc = CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.wonderNews.data, sizeof(struct WonderNews)); + ClearSavedWonderNewsInternal(); + gSaveBlock1Ptr->mysteryGift.news = *news; + gSaveBlock1Ptr->mysteryGift.newsCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.news); return TRUE; } -bool32 ValidateReceivedWonderNews(void) +bool32 ValidateSavedWonderNews(void) { - if (CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.wonderNews.data, sizeof(struct WonderNews)) != gSaveBlock1Ptr->unk_322C.wonderNews.crc) + if (CALC_CRC(gSaveBlock1Ptr->mysteryGift.news) != gSaveBlock1Ptr->mysteryGift.newsCrc) return FALSE; - if (!sub_801B114(&gSaveBlock1Ptr->unk_322C.wonderNews.data)) + if (!ValidateWonderNews(&gSaveBlock1Ptr->mysteryGift.news)) return FALSE; return TRUE; } -static bool32 sub_801B114(const struct WonderNews *data) +static bool32 ValidateWonderNews(const struct WonderNews *data) { if (data->unk_00 == 0) return FALSE; @@ -90,17 +92,17 @@ static bool32 sub_801B114(const struct WonderNews *data) bool32 WonderNews_Test_Unk_02(void) { - const struct WonderNews *data = &gSaveBlock1Ptr->unk_322C.wonderNews.data; + const struct WonderNews *data = &gSaveBlock1Ptr->mysteryGift.news; if (data->unk_02 == 0) return FALSE; return TRUE; } -static void s_DestroyWonderNews(void) +static void ClearSavedWonderNewsInternal(void) { - CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->unk_322C.wonderNews.data)); - gSaveBlock1Ptr->unk_322C.wonderNews.crc = 0; + CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->mysteryGift.news)); + gSaveBlock1Ptr->mysteryGift.newsCrc = 0; } static void sub_801B180(void) @@ -111,9 +113,9 @@ static void sub_801B180(void) bool32 sub_801B1A4(const u8 *src) { - const u8 *r5 = (const u8 *)&gSaveBlock1Ptr->unk_322C.wonderNews.data; + const u8 *r5 = (const u8 *)&gSaveBlock1Ptr->mysteryGift.news; u32 i; - if (!ValidateReceivedWonderNews()) + if (!ValidateSavedWonderNews()) return FALSE; for (i = 0; i < sizeof(struct WonderNews); i++) @@ -125,9 +127,9 @@ bool32 sub_801B1A4(const u8 *src) return TRUE; } -void DestroyWonderCard(void) +void ClearSavedWonderCard(void) { - sub_801B330(); + InitSavedWonderCard(); sub_801B368(); sub_801B9F8(); ClearRamScript(); @@ -136,27 +138,25 @@ void DestroyWonderCard(void) ClearEReaderTrainer(&gSaveBlock2Ptr->frontier.ereaderTrainer); } -bool32 sub_801B21C(const struct WonderCard *data) +bool32 SaveWonderCard(const struct WonderCard *card) { - struct MEventBuffer_3430_Sub *r2; - struct WonderCard *r1; - if (!ValidateWonderCardData(data)) + struct MEventBuffer_3430 *r2; + if (!ValidateWonderCard(card)) return FALSE; - DestroyWonderCard(); - memcpy(&gSaveBlock1Ptr->unk_322C.wonderCard.data, data, sizeof(struct WonderCard)); - gSaveBlock1Ptr->unk_322C.wonderCard.crc = CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.wonderCard.data, sizeof(struct WonderCard)); - r2 = &gSaveBlock1Ptr->unk_322C.buffer_310.data; - r1 = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - r2->unk_06 = r1->unk_02; + ClearSavedWonderCard(); + memcpy(&gSaveBlock1Ptr->mysteryGift.card, card, sizeof(struct WonderCard)); + gSaveBlock1Ptr->mysteryGift.cardCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.card); + r2 = &gSaveBlock1Ptr->mysteryGift.unk_3430; + r2->unk_06 = (&gSaveBlock1Ptr->mysteryGift.card)->unk_02; return TRUE; } -bool32 ValidateReceivedWonderCard(void) +bool32 ValidateSavedWonderCard(void) { - if (gSaveBlock1Ptr->unk_322C.wonderCard.crc != CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.wonderCard.data, sizeof(struct WonderCard))) + if (gSaveBlock1Ptr->mysteryGift.cardCrc != CALC_CRC(gSaveBlock1Ptr->mysteryGift.card)) return FALSE; - if (!ValidateWonderCardData(&gSaveBlock1Ptr->unk_322C.wonderCard.data)) + if (!ValidateWonderCard(&gSaveBlock1Ptr->mysteryGift.card)) return FALSE; if (!ValidateSavedRamScript()) return FALSE; @@ -164,17 +164,17 @@ bool32 ValidateReceivedWonderCard(void) return TRUE; } -static bool32 ValidateWonderCardData(const struct WonderCard *data) +static bool32 ValidateWonderCard(const struct WonderCard *card) { - if (data->unk_00 == 0) + if (card->flagId == 0) return FALSE; - if (data->unk_08_0 > 2) + if (card->unk_08_0 > 2) return FALSE; - if (!(data->unk_08_6 == 0 || data->unk_08_6 == 1 || data->unk_08_6 == 2)) + if (!(card->unk_08_6 == 0 || card->unk_08_6 == 1 || card->unk_08_6 == 2)) return FALSE; - if (data->bgType >= NUM_WONDER_BGS) + if (card->bgType >= NUM_WONDER_BGS) return FALSE; - if (data->unk_09 > 7) + if (card->unk_09 > 7) return FALSE; return TRUE; @@ -182,29 +182,29 @@ static bool32 ValidateWonderCardData(const struct WonderCard *data) bool32 WonderCard_Test_Unk_08_6(void) { - const struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_6 == 0) + const struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_6 == 0) return FALSE; return TRUE; } -static void sub_801B330(void) +static void InitSavedWonderCard(void) { - CpuFill32(0, &gSaveBlock1Ptr->unk_322C.wonderCard.data, sizeof(struct WonderCard)); - gSaveBlock1Ptr->unk_322C.wonderCard.crc = 0; + CpuFill32(0, &gSaveBlock1Ptr->mysteryGift.card, sizeof(gSaveBlock1Ptr->mysteryGift.card)); + gSaveBlock1Ptr->mysteryGift.cardCrc = 0; } static void sub_801B368(void) { CpuFill32(0, sav1_get_mevent_buffer_2(), 18 *sizeof(u16)); - gSaveBlock1Ptr->unk_322C.buffer_310.crc = 0; + gSaveBlock1Ptr->mysteryGift.unkCrc = 0; } u16 GetWonderCardFlagID(void) { - if (ValidateReceivedWonderCard()) - return gSaveBlock1Ptr->unk_322C.wonderCard.data.unk_00; + if (ValidateSavedWonderCard()) + return gSaveBlock1Ptr->mysteryGift.card.flagId; return 0; } @@ -215,9 +215,9 @@ void WonderCard_ResetInternalReceivedFlag(struct WonderCard *buffer) buffer->unk_08_6 = 0; } -static bool32 IsWonderCardFlagIDInValidRange(u16 a0) +static bool32 IsWonderCardFlagIDInValidRange(u16 flagId) { - if (a0 >= 1000 && a0 < 1020) + if (flagId >= 1000 && flagId < 1000 + NUM_MYSTERY_GIFT_FLAGS) return TRUE; return FALSE; @@ -228,23 +228,23 @@ static const u16 sMysteryGiftFlags[] = FLAG_RECEIVED_AURORA_TICKET, FLAG_RECEIVED_MYSTIC_TICKET, FLAG_RECEIVED_OLD_SEA_MAP, - FLAG_UNUSED_MYSTERY_GIFT_0x13D, - FLAG_UNUSED_MYSTERY_GIFT_0x13E, - FLAG_UNUSED_MYSTERY_GIFT_0x13F, - FLAG_UNUSED_MYSTERY_GIFT_0x140, - FLAG_UNUSED_MYSTERY_GIFT_0x141, - FLAG_UNUSED_MYSTERY_GIFT_0x142, - FLAG_UNUSED_MYSTERY_GIFT_0x143, - FLAG_UNUSED_MYSTERY_GIFT_0x144, - FLAG_UNUSED_MYSTERY_GIFT_0x145, - FLAG_UNUSED_MYSTERY_GIFT_0x146, - FLAG_UNUSED_MYSTERY_GIFT_0x147, - FLAG_UNUSED_MYSTERY_GIFT_0x148, - FLAG_UNUSED_MYSTERY_GIFT_0x149, - FLAG_UNUSED_MYSTERY_GIFT_0x14A, - FLAG_UNUSED_MYSTERY_GIFT_0x14B, - FLAG_UNUSED_MYSTERY_GIFT_0x14C, - FLAG_UNUSED_MYSTERY_GIFT_0x14D, + FLAG_MYSTERY_GIFT_UNUSED_1, + FLAG_MYSTERY_GIFT_UNUSED_2, + FLAG_MYSTERY_GIFT_UNUSED_3, + FLAG_MYSTERY_GIFT_UNUSED_4, + FLAG_MYSTERY_GIFT_UNUSED_5, + FLAG_MYSTERY_GIFT_UNUSED_6, + FLAG_MYSTERY_GIFT_UNUSED_7, + FLAG_MYSTERY_GIFT_UNUSED_8, + FLAG_MYSTERY_GIFT_UNUSED_9, + FLAG_MYSTERY_GIFT_UNUSED_10, + FLAG_MYSTERY_GIFT_UNUSED_11, + FLAG_MYSTERY_GIFT_UNUSED_12, + FLAG_MYSTERY_GIFT_UNUSED_13, + FLAG_MYSTERY_GIFT_UNUSED_14, + FLAG_MYSTERY_GIFT_UNUSED_15, + FLAG_MYSTERY_GIFT_UNUSED_16, + FLAG_MYSTERY_GIFT_UNUSED_17, }; bool32 CheckReceivedGiftFromWonderCard(void) @@ -259,7 +259,7 @@ bool32 CheckReceivedGiftFromWonderCard(void) return TRUE; } -static int sub_801B438(const struct MEventBuffer_3430_Sub *data, int size) +static int sub_801B438(const struct MEventBuffer_3430 *data, int size) { int r3 = 0; int i; @@ -272,7 +272,7 @@ static int sub_801B438(const struct MEventBuffer_3430_Sub *data, int size) return r3; } -static bool32 sub_801B460(const struct MEventBuffer_3430_Sub *data1, const u16 *data2, int size) +static bool32 sub_801B460(const struct MEventBuffer_3430 *data1, const u16 *data2, int size) { int i; for (i = 0; i < size; i++) @@ -300,33 +300,33 @@ static bool32 sub_801B4A4(const u16 *data) static int sub_801B4CC(void) { struct WonderCard *data; - if (!ValidateReceivedWonderCard()) + if (!ValidateSavedWonderCard()) return 0; - data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; + data = &gSaveBlock1Ptr->mysteryGift.card; if (data->unk_08_0 != 1) return 0; - return sub_801B438(&gSaveBlock1Ptr->unk_322C.buffer_310.data, data->unk_09); + return sub_801B438(&gSaveBlock1Ptr->mysteryGift.unk_3430, data->unk_09); } bool32 sub_801B508(const u16 *data) { - struct WonderCard *buffer = &gSaveBlock1Ptr->unk_322C.wonderCard.data; + struct WonderCard *buffer = &gSaveBlock1Ptr->mysteryGift.card; int size = buffer->unk_09; int i; if (!sub_801B4A4(data)) return FALSE; - if (sub_801B460(&gSaveBlock1Ptr->unk_322C.buffer_310.data, data, size)) + if (sub_801B460(&gSaveBlock1Ptr->mysteryGift.unk_3430, data, size)) return FALSE; for (i = 0; i < size; i++) { - if (gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_08[1][i] == 0 && gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_08[0][i] == 0) + if (gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[1][i] == 0 && gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[0][i] == 0) { - gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_08[1][i] = data[1]; - gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_08[0][i] = data[0]; + gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[1][i] = data[1]; + gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[0][i] = data[0]; return TRUE; } } @@ -334,7 +334,7 @@ bool32 sub_801B508(const u16 *data) return FALSE; } -void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1) +void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 isWonderNews) { int i; CpuFill32(0, data, sizeof(struct MEventStruct_Unk1442CC)); @@ -342,20 +342,20 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1) data->unk_04 = 1; data->unk_08 = 1; - if (a1) + if (isWonderNews) { data->unk_0C = 5; data->unk_10 = 0x0201; } - else + else // Wonder Card { data->unk_0C = 4; data->unk_10 = 0x0200; } - if (ValidateReceivedWonderCard()) + if (ValidateSavedWonderCard()) { - data->unk_14 = GetSavedWonderCard()->unk_00; + data->unk_14 = GetSavedWonderCard()->flagId; data->unk_20 = *sav1_get_mevent_buffer_2(); data->unk_44 = GetSavedWonderCard()->unk_09; } @@ -365,15 +365,15 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1) } for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) - data->unk_16[i] = gSaveBlock1Ptr->unk_322C.questionnaireWords[i]; + data->questionnaireWords[i] = gSaveBlock1Ptr->mysteryGift.questionnaireWords[i]; - CopyTrainerId(data->unk_4C, gSaveBlock2Ptr->playerTrainerId); - StringCopy(data->unk_45, gSaveBlock2Ptr->playerName); - for (i = 0; i < 6; i++) - data->unk_50[i] = gSaveBlock1Ptr->easyChatProfile[i]; + CopyTrainerId(data->playerTrainerId, gSaveBlock2Ptr->playerTrainerId); + StringCopy(data->playerName, gSaveBlock2Ptr->playerName); + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) + data->easyChatProfile[i] = gSaveBlock1Ptr->easyChatProfile[i]; - memcpy(data->unk_5C, RomHeaderGameCode, 4); - data->unk_60 = RomHeaderSoftwareVersion; + memcpy(data->romHeaderGameCode, RomHeaderGameCode, 4); + data->romHeaderSoftwareVersion = RomHeaderSoftwareVersion; } bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1) @@ -422,12 +422,12 @@ u32 sub_801B708(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const vo return 2; } -bool32 MEventStruct_Unk1442CC_CompareField_unk_16(const struct MEventStruct_Unk1442CC *a0, const u16 *a1) +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MEventStruct_Unk1442CC *data, const u16 *words) { int i; for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) { - if (a0->unk_16[i] != a1[i]) + if (data->questionnaireWords[i] != words[i]) return FALSE; } @@ -461,20 +461,20 @@ u16 MEventStruct_Unk1442CC_GetValueNFrom_unk_20(const struct MEventStruct_Unk144 static void sub_801B7D8(u32 command) { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; + struct WonderCard *data = &gSaveBlock1Ptr->mysteryGift.card; if (data->unk_08_0 == 2) { u16 *dest = NULL; switch (command) { case 0: - dest = &gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_00; + dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_00; break; case 1: - dest = &gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_02; + dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_02; break; case 2: - dest = &gSaveBlock1Ptr->unk_322C.buffer_310.data.unk_04; + dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_04; break; case 3: break; @@ -499,46 +499,46 @@ u16 mevent_081445C0(u32 command) { case GET_CARD_BATTLES_WON_INTERNAL: { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_0 == 2) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_0 == 2) { - struct MEventBuffer_3430_Sub *buffer = &gSaveBlock1Ptr->unk_322C.buffer_310.data; + struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; return buffer->unk_00; } break; } case 1: // Never occurs { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_0 == 2) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_0 == 2) { - struct MEventBuffer_3430_Sub *buffer = &gSaveBlock1Ptr->unk_322C.buffer_310.data; + struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; return buffer->unk_02; } break; } case 2: // Never occurs { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_0 == 2) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_0 == 2) { - struct MEventBuffer_3430_Sub *buffer = &gSaveBlock1Ptr->unk_322C.buffer_310.data; + struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; return buffer->unk_04; } break; } case GET_NUM_STAMPS_INTERNAL: { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_0 == 1) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_0 == 1) return sub_801B4CC(); break; } case GET_MAX_STAMPS_INTERNAL: { - struct WonderCard *data = &gSaveBlock1Ptr->unk_322C.wonderCard.data; - if (data->unk_08_0 == 1) - return data->unk_09; + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->unk_08_0 == 1) + return card->unk_09; break; } } @@ -552,16 +552,16 @@ void ResetReceivedWonderCardFlag(void) gUnknown_02022C70 = FALSE; } -bool32 MEventHandleReceivedWonderCard(u16 a0) +bool32 MEventHandleReceivedWonderCard(u16 flagId) { gUnknown_02022C70 = FALSE; - if (a0 == 0) + if (flagId == 0) return FALSE; - if (!ValidateReceivedWonderCard()) + if (!ValidateSavedWonderCard()) return FALSE; - if (gSaveBlock1Ptr->unk_322C.wonderCard.data.unk_00 != a0) + if (gSaveBlock1Ptr->mysteryGift.card.flagId != flagId) return FALSE; gUnknown_02022C70 = TRUE; @@ -575,13 +575,13 @@ void RecordIdOfWonderCardSenderByEventType(u32 a0, u32 a1) switch (a0) { case 2: - sub_801BA8C(2, a1, gSaveBlock1Ptr->unk_322C.unk_344[1], 5); + sub_801BA8C(2, a1, gSaveBlock1Ptr->mysteryGift.unk_344[1], 5); break; case 0: - sub_801BA8C(0, a1, gSaveBlock1Ptr->unk_322C.unk_344[0], 5); + sub_801BA8C(0, a1, gSaveBlock1Ptr->mysteryGift.unk_344[0], 5); break; case 1: - sub_801BA8C(1, a1, gSaveBlock1Ptr->unk_322C.unk_344[0], 5); + sub_801BA8C(1, a1, gSaveBlock1Ptr->mysteryGift.unk_344[0], 5); break; default: AGB_ASSERT(0); @@ -591,7 +591,7 @@ void RecordIdOfWonderCardSenderByEventType(u32 a0, u32 a1) static void sub_801B9F8(void) { - CpuFill32(0, gSaveBlock1Ptr->unk_322C.unk_344, sizeof(gSaveBlock1Ptr->unk_322C.unk_344)); + CpuFill32(0, gSaveBlock1Ptr->mysteryGift.unk_344, sizeof(gSaveBlock1Ptr->mysteryGift.unk_344)); } static bool32 sub_801BA24(u32 a0, u32 *a1, int size) diff --git a/src/mevent_client.c b/src/mevent_client.c index 9a62bf18ed59..2bcab1e5ac96 100644 --- a/src/mevent_client.c +++ b/src/mevent_client.c @@ -8,284 +8,292 @@ #include "mystery_event_script.h" #include "mevent_client.h" -EWRAM_DATA struct mevent_client * s_mevent_client_ptr = NULL; +enum { + FUNC_INIT, + FUNC_DONE, + FUNC_RECV, + FUNC_SEND, + FUNC_RUN, + FUNC_WAIT, + FUNC_6, + FUNC_7, +}; -static void mevent_client_init(struct mevent_client *, u32, u32); -static u32 mevent_client_exec(struct mevent_client *); -static void mevent_client_free_resources(struct mevent_client *); +EWRAM_DATA static struct MysteryGiftClient * sClient = NULL; -extern const struct mevent_client_cmd gUnknown_082F2598[]; +static void MysteryGiftClient_Init(struct MysteryGiftClient *, u32, u32); +static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient *); +static void MysteryGiftClient_Free(struct MysteryGiftClient *); -void mevent_client_do_init(u32 arg) +extern const struct MysteryGiftClientCmd gUnknown_082F2598[]; + +void MysteryGiftClient_Create(bool32 isWonderNews) { - s_mevent_client_ptr = AllocZeroed(sizeof(struct mevent_client)); - mevent_client_init(s_mevent_client_ptr, 1, 0); - s_mevent_client_ptr->unk_4C = arg; + sClient = AllocZeroed(sizeof(*sClient)); + MysteryGiftClient_Init(sClient, 1, 0); + sClient->isWonderNews = isWonderNews; } -u32 mevent_client_do_exec(u16 * a0) +u32 MysteryGiftClient_Run(u16 * endVal) { u32 result; - if (s_mevent_client_ptr == NULL) - return 6; - result = mevent_client_exec(s_mevent_client_ptr); - if (result == 6) + if (sClient == NULL) + return CLI_RET_END; + result = MysteryGiftClient_CallFunc(sClient); + if (result == CLI_RET_END) { - *a0 = s_mevent_client_ptr->param; - mevent_client_free_resources(s_mevent_client_ptr); - Free(s_mevent_client_ptr); - s_mevent_client_ptr = NULL; + *endVal = sClient->param; + MysteryGiftClient_Free(sClient); + Free(sClient); + sClient = NULL; } return result; } -void mevent_client_inc_flag(void) +void MysteryGiftClient_AdvanceState(void) { - s_mevent_client_ptr->flag++; + sClient->funcState++; } void * mevent_client_get_buffer(void) { - return s_mevent_client_ptr->buffer; + return sClient->buffer; } -void mevent_client_set_param(u32 a0) +void MysteryGiftClient_SetParam(u32 val) { - s_mevent_client_ptr->param = a0; + sClient->param = val; } -static void mevent_client_init(struct mevent_client * svr, u32 sendPlayerNo, u32 recvPlayerNo) +static void MysteryGiftClient_Init(struct MysteryGiftClient * client, u32 sendPlayerNo, u32 recvPlayerNo) { - svr->unk_00 = 0; - svr->mainseqno = 0; - svr->flag = 0; - svr->sendBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - svr->recvBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - svr->cmdBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - svr->buffer = AllocZeroed(0x40); - mevent_srv_sub_init(&svr->manager, sendPlayerNo, recvPlayerNo); + client->unk_00 = 0; + client->funcId = FUNC_INIT; + client->funcState = 0; + client->sendBuffer = AllocZeroed(ME_SEND_BUF_SIZE); + client->recvBuffer = AllocZeroed(ME_SEND_BUF_SIZE); + client->cmdBuffer = AllocZeroed(ME_SEND_BUF_SIZE); + client->buffer = AllocZeroed(0x40); + MysteryGiftLink_Init(&client->link, sendPlayerNo, recvPlayerNo); } -static void mevent_client_free_resources(struct mevent_client * svr) +static void MysteryGiftClient_Free(struct MysteryGiftClient * client) { - Free(svr->sendBuffer); - Free(svr->recvBuffer); - Free(svr->cmdBuffer); - Free(svr->buffer); + Free(client->sendBuffer); + Free(client->recvBuffer); + Free(client->cmdBuffer); + Free(client->buffer); } -static void mevent_client_jmp_buffer(struct mevent_client * svr) +static void MysteryGiftClient_CopyRecvScript(struct MysteryGiftClient * client) { - memcpy(svr->cmdBuffer, svr->recvBuffer, ME_SEND_BUF_SIZE); - svr->cmdidx = 0; + memcpy(client->cmdBuffer, client->recvBuffer, ME_SEND_BUF_SIZE); + client->cmdidx = 0; } -static void mevent_client_send_word(struct mevent_client * svr, u32 ident, u32 word) +static void MysteryGiftClient_InitSend(struct MysteryGiftClient * client, u32 ident, u32 word) { - CpuFill32(0, svr->sendBuffer, ME_SEND_BUF_SIZE); - *(u32 *)svr->sendBuffer = word; - mevent_srv_sub_init_send(&svr->manager, ident, svr->sendBuffer, sizeof(u32)); + CpuFill32(0, client->sendBuffer, ME_SEND_BUF_SIZE); + *(u32 *)client->sendBuffer = word; + MysteryGiftLink_InitSend(&client->link, ident, client->sendBuffer, sizeof(u32)); } -static u32 mainseq_0(struct mevent_client * svr) +static u32 Client_Init(struct MysteryGiftClient * client) { - // init - memcpy(svr->cmdBuffer, gUnknown_082F2598, ME_SEND_BUF_SIZE); - svr->cmdidx = 0; - svr->mainseqno = 4; - svr->flag = 0; - return 0; + memcpy(client->cmdBuffer, gUnknown_082F2598, ME_SEND_BUF_SIZE); + client->cmdidx = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; + return CLI_RET_INIT; } -static u32 mainseq_1(struct mevent_client * svr) +static u32 Client_Done(struct MysteryGiftClient * client) { - // done - return 6; + return CLI_RET_END; } -static u32 mainseq_2(struct mevent_client * svr) +static u32 Client_Recv(struct MysteryGiftClient * client) { - // do recv - if (mevent_srv_sub_recv(&svr->manager)) + if (MysteryGiftLink_Recv(&client->link)) { - svr->mainseqno = 4; - svr->flag = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; } - return 1; + return CLI_RET_1; } -static u32 mainseq_3(struct mevent_client * svr) +static u32 Client_Send(struct MysteryGiftClient * client) { - // do send - if (mevent_srv_sub_send(&svr->manager)) + if (MysteryGiftLink_Send(&client->link)) { - svr->mainseqno = 4; - svr->flag = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; } - return 1; + return CLI_RET_1; } -static u32 mainseq_4(struct mevent_client * svr) +static u32 Client_Run(struct MysteryGiftClient * client) { // process command - struct mevent_client_cmd * cmd = &svr->cmdBuffer[svr->cmdidx]; - ++svr->cmdidx; + struct MysteryGiftClientCmd * cmd = &client->cmdBuffer[client->cmdidx]; + client->cmdidx++; switch (cmd->instr) { - case 0: + case CLI_NONE: break; - case 1: - svr->param = cmd->parameter; - svr->mainseqno = 1; - svr->flag = 0; + case CLI_RETURN: + client->param = cmd->parameter; // Set for endVal in MysteryGiftClient_Run + client->funcId = FUNC_DONE; + client->funcState = 0; break; - case 2: - mevent_srv_sub_init_recv(&svr->manager, cmd->parameter, svr->recvBuffer); - svr->mainseqno = 2; - svr->flag = 0; + case CLI_RECV: + MysteryGiftLink_InitRecv(&client->link, cmd->parameter, client->recvBuffer); + client->funcId = FUNC_RECV; + client->funcState = 0; break; - case 3: - svr->mainseqno = 3; - svr->flag = 0; + case CLI_SEND_LOADED: + // Send without a MysteryGiftLink_InitSend + // Sends whatever has been loaded already + client->funcId = FUNC_SEND; + client->funcState = 0; break; - case 20: - mevent_srv_sub_init_send(&svr->manager, 0x14, svr->sendBuffer, 0); - svr->mainseqno = 3; - svr->flag = 0; + case CLI_20: + MysteryGiftLink_InitSend(&client->link, 0x14, client->sendBuffer, 0); + client->funcId = FUNC_SEND; + client->funcState = 0; break; - case 19: - mevent_client_send_word(svr, 0x12, GetGameStat(cmd->parameter)); - svr->mainseqno = 3; - svr->flag = 0; + case CLI_SEND_STAT: + MysteryGiftClient_InitSend(client, 0x12, GetGameStat(cmd->parameter)); + client->funcId = FUNC_SEND; + client->funcState = 0; break; - case 6: - if (svr->param == 0) - mevent_client_jmp_buffer(svr); + case CLI_COPY_RECV_IF_N: + if (client->param == FALSE) + MysteryGiftClient_CopyRecvScript(client); break; - case 7: - if (svr->param == 1) - mevent_client_jmp_buffer(svr); + case CLI_COPY_RECV_IF: + if (client->param == TRUE) + MysteryGiftClient_CopyRecvScript(client); break; - case 4: - mevent_client_jmp_buffer(svr); + case CLI_COPY_RECV: + MysteryGiftClient_CopyRecvScript(client); break; - case 5: - memcpy(svr->buffer, svr->recvBuffer, 0x40); - svr->mainseqno = 5; - svr->flag = 0; - return 2; - case 11: - memcpy(svr->buffer, svr->recvBuffer, 0x40); - svr->mainseqno = 5; - svr->flag = 0; - return 3; - case 12: - memcpy(svr->buffer, svr->recvBuffer, 0x40); - svr->mainseqno = 5; - svr->flag = 0; - return 5; - case 13: - svr->mainseqno = 5; - svr->flag = 0; - return 4; - case 8: - sub_801B580(svr->sendBuffer, svr->unk_4C); - mevent_srv_sub_init_send(&svr->manager, 0x11, svr->sendBuffer, sizeof(struct MEventStruct_Unk1442CC)); + case CLI_5: + memcpy(client->buffer, client->recvBuffer, 0x40); + client->funcId = FUNC_WAIT; + client->funcState = 0; + return CLI_RET_2; + case CLI_11: + memcpy(client->buffer, client->recvBuffer, 0x40); + client->funcId = FUNC_WAIT; + client->funcState = 0; + return CLI_RET_3; + case CLI_12: + memcpy(client->buffer, client->recvBuffer, 0x40); + client->funcId = FUNC_WAIT; + client->funcState = 0; + return CLI_RET_5; + case CLI_ASK_TOSS: + client->funcId = FUNC_WAIT; + client->funcState = 0; + return CLI_RET_ASK_TOSS; + case CLI_8: + sub_801B580(client->sendBuffer, client->isWonderNews); + MysteryGiftLink_InitSend(&client->link, 0x11, client->sendBuffer, sizeof(struct MEventStruct_Unk1442CC)); break; - case 14: - mevent_client_send_word(svr, 0x13, svr->param); + case CLI_LOAD_TOSS_RESPONSE: + // param here is set by MG_STATE_LINK_ASK_TOSS or MG_STATE_LINK_ASK_TOSS_UNRECEIVED + MysteryGiftClient_InitSend(client, 0x13, client->param); break; - case 10: - sub_801B21C(svr->recvBuffer); + case CLI_10: + SaveWonderCard(client->recvBuffer); break; - case 9: - if (!sub_801B1A4(svr->recvBuffer)) + case CLI_9: + if (!sub_801B1A4(client->recvBuffer)) { - sub_801B078(svr->recvBuffer); - mevent_client_send_word(svr, 0x13, 0); + SaveWonderNews(client->recvBuffer); + MysteryGiftClient_InitSend(client, 0x13, 0); } else - mevent_client_send_word(svr, 0x13, 1); + MysteryGiftClient_InitSend(client, 0x13, 1); break; - case 15: - svr->mainseqno = 6; - svr->flag = 0; + case CLI_15: + client->funcId = FUNC_6; + client->funcState = 0; break; - case 16: - sub_801B508(svr->recvBuffer); + case CLI_16: + sub_801B508(client->recvBuffer); break; - case 17: - InitRamScript_NoObjectEvent(svr->recvBuffer, 1000); + case CLI_17: + InitRamScript_NoObjectEvent(client->recvBuffer, 1000); break; - case 18: - memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, svr->recvBuffer, 0xbc); + case CLI_RECV_EREADER_TRAINER: + memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, client->recvBuffer, sizeof(gSaveBlock2Ptr->frontier.ereaderTrainer)); ValidateEReaderTrainer(); break; - case 21: - memcpy(gDecompressionBuffer, svr->recvBuffer, ME_SEND_BUF_SIZE); - svr->mainseqno = 7; - svr->flag = 0; + case CLI_21: + memcpy(gDecompressionBuffer, client->recvBuffer, ME_SEND_BUF_SIZE); + client->funcId = FUNC_7; + client->funcState = 0; break; } - return 1; + return CLI_RET_1; } -static u32 mainseq_5(struct mevent_client * svr) +static u32 Client_Wait(struct MysteryGiftClient * client) { - // wait flag - if (svr->flag) + if (client->funcState) { - svr->mainseqno = 4; - svr->flag = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; } - return 1; + return CLI_RET_1; } -static u32 mainseq_6(struct mevent_client * svr) +static u32 Client_6(struct MysteryGiftClient * client) { - // ??? - switch (svr->flag) + switch (client->funcState) { case 0: - sub_8153870(svr->recvBuffer); - ++svr->flag; + InitMysteryGiftScriptContext(client->recvBuffer); + client->funcState++; break; case 1: - if (!sub_8153884(&svr->param)) + if (!RunMysteryGiftScriptContextCommand(&client->param)) { - svr->mainseqno = 4; - svr->flag = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; } break; } - return 1; + return CLI_RET_1; } -static u32 mainseq_7(struct mevent_client * svr) +static u32 Client_7(struct MysteryGiftClient * client) { // exec arbitrary code u32 (*func)(u32 *, struct SaveBlock2 *, struct SaveBlock1 *) = (void *)gDecompressionBuffer; - if (func(&svr->param, gSaveBlock2Ptr, gSaveBlock1Ptr) == 1) + if (func(&client->param, gSaveBlock2Ptr, gSaveBlock1Ptr) == 1) { - svr->mainseqno = 4; - svr->flag = 0; + client->funcId = FUNC_RUN; + client->funcState = 0; } - return 1; + return CLI_RET_1; } -static u32 mevent_client_exec(struct mevent_client * svr) +static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient * client) { - u32 (*funcs[])(struct mevent_client *) = { - mainseq_0, - mainseq_1, - mainseq_2, - mainseq_3, - mainseq_4, - mainseq_5, - mainseq_6, - mainseq_7 + u32 (*funcs[])(struct MysteryGiftClient *) = { + [FUNC_INIT] = Client_Init, + [FUNC_DONE] = Client_Done, + [FUNC_RECV] = Client_Recv, + [FUNC_SEND] = Client_Send, + [FUNC_RUN] = Client_Run, + [FUNC_WAIT] = Client_Wait, + [FUNC_6] = Client_6, + [FUNC_7] = Client_7 }; - return funcs[svr->mainseqno](svr); + return funcs[client->funcId](client); } diff --git a/src/mevent_news.c b/src/mevent_news.c index 9e78cf406be9..13d50bb0dff5 100644 --- a/src/mevent_news.c +++ b/src/mevent_news.c @@ -60,7 +60,7 @@ u16 sub_801DC20(void) struct MysteryEventStruct *r4 = sub_801B044(); u16 r5; - if (!IsMysteryEventEnabled() || !ValidateReceivedWonderNews()) + if (!IsMysteryEventEnabled() || !ValidateSavedWonderNews()) return 0; r5 = sub_801DD44(r4); diff --git a/src/mevent_scripts.c b/src/mevent_scripts.c index 41a5ddd51a43..ddeca8f41388 100644 --- a/src/mevent_scripts.c +++ b/src/mevent_scripts.c @@ -5,187 +5,191 @@ const u8 gText_CanceledReadingCard[] = _("Canceled reading\nthe Card."); -const struct mevent_client_cmd gUnknown_082F2598[] = { - {.instr = 2, .parameter = 16}, - {.instr = 4, .parameter = 0} +const struct MysteryGiftClientCmd gUnknown_082F2598[] = { + {.instr = CLI_RECV, .parameter = 16}, + {.instr = CLI_COPY_RECV} }; -const struct mevent_client_cmd gUnknown_082F25A8[] = { - {.instr = 8, .parameter = 0}, - {.instr = 3, .parameter = 0}, - {.instr = 2, .parameter = 16}, - {.instr = 4, .parameter = 0} +const struct MysteryGiftClientCmd gUnknown_082F25A8[] = { + {.instr = CLI_8}, + {.instr = CLI_SEND_LOADED}, + {.instr = CLI_RECV, .parameter = 16}, + {.instr = CLI_COPY_RECV} }; -const struct mevent_client_cmd gUnknown_082F25C8[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 10} +const struct MysteryGiftClientCmd gUnknown_082F25C8[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 10} }; -const struct mevent_client_cmd gUnknown_082F25D8[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 11} +const struct MysteryGiftClientCmd gUnknown_082F25D8[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 11} }; -const struct mevent_client_cmd gUnknown_082F25E8[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 0} +const struct MysteryGiftClientCmd gUnknown_082F25E8[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 0} }; -const struct mevent_client_cmd gUnknown_082F25F8[] = { - {.instr = 2, .parameter = 22}, - {.instr = 10, .parameter = 0}, - {.instr = 2, .parameter = 25}, - {.instr = 17, .parameter = 0}, - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 2} +const struct MysteryGiftClientCmd gUnknown_082F25F8[] = { + {.instr = CLI_RECV, .parameter = 22}, + {.instr = CLI_10}, + {.instr = CLI_RECV, .parameter = 25}, + {.instr = CLI_17}, + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 2} }; -const struct mevent_client_cmd gUnknown_082F2628[] = { - {.instr = 2, .parameter = 23}, - {.instr = 9, .parameter = 0}, - {.instr = 3, .parameter = 0}, - {.instr = 2, .parameter = 16}, - {.instr = 4, .parameter = 0} +const struct MysteryGiftClientCmd gUnknown_082F2628[] = { + {.instr = CLI_RECV, .parameter = 23}, + {.instr = CLI_9}, + {.instr = CLI_SEND_LOADED}, + {.instr = CLI_RECV, .parameter = 16}, + {.instr = CLI_COPY_RECV} }; -const struct mevent_client_cmd gUnknown_082F2650[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 7} +const struct MysteryGiftClientCmd gUnknown_082F2650[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 7} }; -const struct mevent_client_cmd gUnknown_082F2660[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 3} +const struct MysteryGiftClientCmd gUnknown_082F2660[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 3} }; -const struct mevent_client_cmd gUnknown_082F2670[] = { - {.instr = 13, .parameter = 0}, - {.instr = 14, .parameter = 0}, - {.instr = 3, .parameter = 0}, - {.instr = 2, .parameter = 16}, - {.instr = 4, .parameter = 0} +const struct MysteryGiftClientCmd gUnknown_082F2670[] = { + {.instr = CLI_ASK_TOSS}, + {.instr = CLI_LOAD_TOSS_RESPONSE}, + {.instr = CLI_SEND_LOADED}, + {.instr = CLI_RECV, .parameter = 16}, + {.instr = CLI_COPY_RECV} }; -const struct mevent_client_cmd gUnknown_082F2698[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 9} +const struct MysteryGiftClientCmd gUnknown_082F2698[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 9} }; -const struct mevent_client_cmd gUnknown_082F26A8[] = { - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 5} +const struct MysteryGiftClientCmd gUnknown_082F26A8[] = { + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 5} }; -const struct mevent_client_cmd gUnknown_082F26B8[] = { - {.instr = 2, .parameter = 21}, - {.instr = 12, .parameter = 0}, - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 14}, - {.instr = 2, .parameter = 21}, - {.instr = 12, .parameter = 0}, - {.instr = 20, .parameter = 0}, - {.instr = 1, .parameter = 13} +const struct MysteryGiftClientCmd gUnknown_082F26B8[] = { + {.instr = CLI_RECV, .parameter = 21}, + {.instr = CLI_12}, + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 14} +}; + +// Unused +const struct MysteryGiftClientCmd gUnknown_082F26B8_1[] = { + {.instr = CLI_RECV, .parameter = 21}, + {.instr = CLI_12}, + {.instr = CLI_20}, + {.instr = CLI_RETURN, .parameter = 13} }; const struct mevent_cmd gUnknown_082F26F8[] = { - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F25C8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x0a, .parameter = NULL}, - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F25D8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x0b, .parameter = NULL}, - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F2698}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x09, .parameter = NULL} + {.instr = 18, .flag = sizeof(gUnknown_082F25C8), .parameter = gUnknown_082F25C8}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x0a}, + {.instr = 18, .flag = sizeof(gUnknown_082F25D8), .parameter = gUnknown_082F25D8}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x0b}, + {.instr = 18, .flag = sizeof(gUnknown_082F2698), .parameter = gUnknown_082F2698}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x09} }; const struct mevent_cmd gUnknown_082F2788[] = { - {.instr = 18, .flag = 0x20, .parameter = gUnknown_082F26B8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, + {.instr = 18, .flag = sizeof(gUnknown_082F26B8), .parameter = gUnknown_082F26B8}, + {.instr = 1}, {.instr = 20, .flag = 0x1b, .parameter = gText_CanceledReadingCard}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x09, .parameter = NULL} + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x09} }; const struct mevent_cmd gUnknown_082F27D0[] = { - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F2650}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x07, .parameter = NULL} + {.instr = 18, .flag = sizeof(gUnknown_082F2650), .parameter = gUnknown_082F2650}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x07} }; const struct mevent_cmd gUnknown_082F2800[] = { - {.instr = 18, .flag = 0x28, .parameter = gUnknown_082F2628}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 14, .flag = 0x00, .parameter = NULL}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x13, .parameter = NULL}, - {.instr = 8, .flag = 0x00, .parameter = NULL}, + {.instr = 18, .flag = sizeof(gUnknown_082F2628), .parameter = gUnknown_082F2628}, + {.instr = 1}, + {.instr = 14}, + {.instr = 1}, + {.instr = 2, .flag = 0x13}, + {.instr = 8}, {.instr = 4, .flag = 0x01, .parameter = gUnknown_082F27D0}, - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F2660}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x03, .parameter = NULL} + {.instr = 18, .flag = sizeof(gUnknown_082F2660), .parameter = gUnknown_082F2660}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x03} }; const struct mevent_cmd gUnknown_082F2884[] = { - {.instr = 18, .flag = 0x30, .parameter = gUnknown_082F25F8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 13, .flag = 0x00, .parameter = NULL}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 15, .flag = 0x00, .parameter = NULL}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x02, .parameter = NULL} + {.instr = 18, .flag = sizeof(gUnknown_082F25F8), .parameter = gUnknown_082F25F8}, + {.instr = 1}, + {.instr = 13}, + {.instr = 1}, + {.instr = 15}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x02} }; const struct mevent_cmd gUnknown_082F28E4[] = { - {.instr = 18, .flag = 0x28, .parameter = gUnknown_082F2670}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x13, .parameter = NULL}, - {.instr = 8, .flag = 0x00, .parameter = NULL}, - {.instr = 4, .flag = 0x00, .parameter = gUnknown_082F2884}, - {.instr = 3, .flag = 0x00, .parameter = gUnknown_082F2788} + {.instr = 18, .flag = sizeof(gUnknown_082F2670), .parameter = gUnknown_082F2670}, + {.instr = 1}, + {.instr = 2, .flag = 0x13}, + {.instr = 8}, + {.instr = 4, .parameter = gUnknown_082F2884}, + {.instr = 3, .parameter = gUnknown_082F2788} }; const struct mevent_cmd gUnknown_082F292C[] = { - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F26A8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x05, .parameter = NULL}, - {.instr = 18, .flag = 0x10, .parameter = gUnknown_082F25E8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x14, .parameter = NULL}, - {.instr = 0, .flag = 0x00, .parameter = NULL} + {.instr = 18, .flag = sizeof(gUnknown_082F26A8), .parameter = gUnknown_082F26A8}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0, .flag = 0x05}, + {.instr = 18, .flag = sizeof(gUnknown_082F25E8), .parameter = gUnknown_082F25E8}, + {.instr = 1}, + {.instr = 2, .flag = 0x14}, + {.instr = 0} }; const struct mevent_cmd s_mevent_wonder_news[] = { - {.instr = 27, .flag = 0x00, .parameter = NULL}, - {.instr = 18, .flag = 0x20, .parameter = gUnknown_082F25A8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x11, .parameter = NULL}, - {.instr = 5, .flag = 0x00, .parameter = NULL}, - {.instr = 30, .flag = 0x00, .parameter = NULL}, - {.instr = 4, .flag = 0x00, .parameter = gUnknown_082F26F8}, - {.instr = 3, .flag = 0x00, .parameter = gUnknown_082F2800} + {.instr = 27}, + {.instr = 18, .flag = sizeof(gUnknown_082F25A8), .parameter = gUnknown_082F25A8}, + {.instr = 1}, + {.instr = 2, .flag = 0x11}, + {.instr = 5}, + {.instr = 30}, + {.instr = 4, .parameter = gUnknown_082F26F8}, + {.instr = 3, .parameter = gUnknown_082F2800} }; const struct mevent_cmd s_mevent_wonder_card[] = { - {.instr = 26, .flag = 0x00, .parameter = NULL}, - {.instr = 28, .flag = 0x00, .parameter = NULL}, - {.instr = 18, .flag = 0x20, .parameter = gUnknown_082F25A8}, - {.instr = 1, .flag = 0x00, .parameter = NULL}, - {.instr = 2, .flag = 0x11, .parameter = NULL}, - {.instr = 5, .flag = 0x00, .parameter = NULL}, - {.instr = 6, .flag = 0x00, .parameter = NULL}, - {.instr = 4, .flag = 0x00, .parameter = gUnknown_082F26F8}, - {.instr = 7, .flag = 0x00, .parameter = NULL}, + {.instr = 26}, + {.instr = 28}, + {.instr = 18, .flag = sizeof(gUnknown_082F25A8), .parameter = gUnknown_082F25A8}, + {.instr = 1}, + {.instr = 2, .flag = 0x11}, + {.instr = 5}, + {.instr = 6}, + {.instr = 4, .parameter = gUnknown_082F26F8}, + {.instr = 7}, {.instr = 4, .flag = 0x02, .parameter = gUnknown_082F28E4}, - {.instr = 4, .flag = 0x00, .parameter = gUnknown_082F2884}, - {.instr = 3, .flag = 0x00, .parameter = gUnknown_082F292C} + {.instr = 4, .parameter = gUnknown_082F2884}, + {.instr = 3, .parameter = gUnknown_082F292C} }; diff --git a/src/mevent_server.c b/src/mevent_server.c index 2e7b3d89adaf..1bae6a3e162d 100644 --- a/src/mevent_server.c +++ b/src/mevent_server.c @@ -52,7 +52,7 @@ static void mevent_srv_init_common(struct mevent_srv_common * svr, const void * svr->mevent_unk1442cc = AllocZeroed(sizeof(struct MEventStruct_Unk1442CC)); svr->cmdBuffer = cmdBuffer; svr->cmdidx = 0; - mevent_srv_sub_init(&svr->manager, sendPlayerNo, recvPlayerNo); + MysteryGiftLink_Init(&svr->manager, sendPlayerNo, recvPlayerNo); } static void mevent_srv_free_resources(struct mevent_srv_common * svr) @@ -66,7 +66,7 @@ static void mevent_srv_free_resources(struct mevent_srv_common * svr) void mevent_srv_common_init_send(struct mevent_srv_common * svr, u32 ident, const void * src, u32 size) { AGB_ASSERT(size <= ME_SEND_BUF_SIZE); - mevent_srv_sub_init_send(&svr->manager, ident, src, size); + MysteryGiftLink_InitSend(&svr->manager, ident, src, size); } static const void * mevent_first_if_not_null_else_second(const void * a0, const void * a1) @@ -103,7 +103,7 @@ static u32 common_mainseq_1(struct mevent_srv_common * svr) static u32 common_mainseq_2(struct mevent_srv_common * svr) { // do recv - if (mevent_srv_sub_recv(&svr->manager)) + if (MysteryGiftLink_Recv(&svr->manager)) svr->mainseqno = 4; return 1; } @@ -111,7 +111,7 @@ static u32 common_mainseq_2(struct mevent_srv_common * svr) static u32 common_mainseq_3(struct mevent_srv_common * svr) { // do send - if (mevent_srv_sub_send(&svr->manager)) + if (MysteryGiftLink_Send(&svr->manager)) svr->mainseqno = 4; return 1; } @@ -138,7 +138,7 @@ static u32 common_mainseq_4(struct mevent_srv_common * svr) case 2: // receive AGB_ASSERT(cmd->parameter == NULL); - mevent_srv_sub_init_recv(&svr->manager, cmd->flag, svr->recvBuffer); + MysteryGiftLink_InitRecv(&svr->manager, cmd->flag, svr->recvBuffer); svr->mainseqno = 2; break; case 3: @@ -196,7 +196,7 @@ static u32 common_mainseq_4(struct mevent_srv_common * svr) break; case 11: AGB_ASSERT(cmd->flag == FALSE); - svr->param = MEventStruct_Unk1442CC_CompareField_unk_16(svr->mevent_unk1442cc, cmd->parameter); + svr->param = MysteryGift_DoesQuestionnaireMatch(svr->mevent_unk1442cc, cmd->parameter); break; case 12: AGB_ASSERT(cmd->flag == FALSE); diff --git a/src/mevent_server_helpers.c b/src/mevent_server_helpers.c index 616f394f7146..17686e2875f0 100644 --- a/src/mevent_server_helpers.c +++ b/src/mevent_server_helpers.c @@ -11,20 +11,20 @@ #include "mevent.h" #include "mevent_server_helpers.h" -static u32 mevent_receive_func(struct mevent_srv_sub *); -static u32 mevent_send_func(struct mevent_srv_sub *); +static u32 mevent_receive_func(struct MysteryGiftLink *); +static u32 mevent_send_func(struct MysteryGiftLink *); -u32 mevent_srv_sub_recv(struct mevent_srv_sub * svr) +u32 MysteryGiftLink_Recv(struct MysteryGiftLink * svr) { return svr->recvFunc(svr); } -u32 mevent_srv_sub_send(struct mevent_srv_sub * svr) +u32 MysteryGiftLink_Send(struct MysteryGiftLink * svr) { return svr->sendFunc(svr); } -void mevent_srv_sub_init(struct mevent_srv_sub * svr, u32 sendPlayerNo, u32 recvPlayerNo) +void MysteryGiftLink_Init(struct MysteryGiftLink * svr, u32 sendPlayerNo, u32 recvPlayerNo) { svr->sendPlayerNo = sendPlayerNo; svr->recvPlayerNo = recvPlayerNo; @@ -41,7 +41,7 @@ void mevent_srv_sub_init(struct mevent_srv_sub * svr, u32 sendPlayerNo, u32 recv svr->recvFunc = mevent_receive_func; } -void mevent_srv_sub_init_send(struct mevent_srv_sub * svr, u32 ident, const void * src, u32 size) +void MysteryGiftLink_InitSend(struct MysteryGiftLink * svr, u32 ident, const void * src, u32 size) { svr->seqno = 0; svr->sendIdent = ident; @@ -54,7 +54,7 @@ void mevent_srv_sub_init_send(struct mevent_srv_sub * svr, u32 ident, const void svr->sendBfr = src; } -void mevent_srv_sub_init_recv(struct mevent_srv_sub * svr, u32 ident, void * dest) +void MysteryGiftLink_InitRecv(struct MysteryGiftLink * svr, u32 ident, void * dest) { svr->seqno = 0; svr->recvIdent = ident; @@ -82,7 +82,7 @@ static void mevent_reset_recv(u32 recv_idx) ResetBlockReceivedFlag(recv_idx); } -static bool32 mevent_receive_func(struct mevent_srv_sub * svr) +static bool32 mevent_receive_func(struct MysteryGiftLink * svr) { struct send_recv_header header; @@ -148,7 +148,7 @@ static bool32 mevent_receive_func(struct mevent_srv_sub * svr) return FALSE; } -static bool32 mevent_send_func(struct mevent_srv_sub * svr) +static bool32 mevent_send_func(struct MysteryGiftLink * svr) { struct send_recv_header header; diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 176eab7fc6a1..7b5e8ebe5cb0 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -65,15 +65,15 @@ static bool32 RunMysteryEventScriptCommand(struct ScriptContext *ctx) return FALSE; } -void sub_8153870(u8 *script) +void InitMysteryGiftScriptContext(u8 *script) { InitMysteryEventScript(&sMysteryEventScriptContext, script); } -bool32 sub_8153884(u32 *a0) +bool32 RunMysteryGiftScriptContextCommand(u32 *script) { bool32 ret = RunMysteryEventScriptCommand(&sMysteryEventScriptContext); - *a0 = sMysteryEventScriptContext.data[2]; + *script = sMysteryEventScriptContext.data[2]; return ret; } diff --git a/src/mystery_gift.c b/src/mystery_gift.c index eb14d0e7a9ee..b3ec493f5f3f 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -761,9 +761,9 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann static bool32 ValidateCardOrNews(bool32 isWonderNews) { if (!isWonderNews) - return ValidateReceivedWonderCard(); + return ValidateSavedWonderCard(); else - return ValidateReceivedWonderNews(); + return ValidateSavedWonderNews(); } static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) @@ -795,12 +795,12 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) return FALSE; } -static bool32 DestroyNewsOrCard(bool32 isWonderNews) +static bool32 ClearSavedNewsOrCard(bool32 isWonderNews) { if (!isWonderNews) - DestroyWonderCard(); + ClearSavedWonderCard(); else - DestroyWonderNews(); + ClearSavedWonderNews(); return TRUE; } @@ -1055,8 +1055,8 @@ enum { MG_STATE_COMMUNICATE, MG_STATE_9, MG_STATE_10, - MG_STATE_11, - MG_STATE_12, + MG_STATE_LINK_ASK_TOSS, + MG_STATE_LINK_ASK_TOSS_UNRECEIVED, MG_STATE_LINK_COMPLETE_WAIT, MG_STATE_LINK_COMPLETED, MG_STATE_LINK_RESULT_MSG, @@ -1119,14 +1119,14 @@ static void Task_MysteryGift(u8 taskId) { case 0: // "Wonder Cards" data->isWonderNews = FALSE; - if (ValidateReceivedWonderCard() == TRUE) + if (ValidateSavedWonderCard() == TRUE) data->state = MG_STATE_LOAD_GIFT; else data->state = MG_STATE_DONT_HAVE_ANY; break; case 1: // "Wonder News" data->isWonderNews = TRUE; - if (ValidateReceivedWonderNews() == TRUE) + if (ValidateSavedWonderNews() == TRUE) data->state = MG_STATE_LOAD_GIFT; else data->state = MG_STATE_DONT_HAVE_ANY; @@ -1220,7 +1220,7 @@ static void Task_MysteryGift(u8 taskId) { ClearScreenInBg0(TRUE); data->state = MG_STATE_COMMUNICATING; - mevent_client_do_init(data->isWonderNews); + MysteryGiftClient_Create(data->isWonderNews); } else if (gSpecialVar_Result == LINKUP_FAILED) { @@ -1234,25 +1234,25 @@ static void Task_MysteryGift(u8 taskId) data->state = MG_STATE_COMMUNICATE; break; case MG_STATE_COMMUNICATE: - switch (mevent_client_do_exec(&data->curPromptWindowId)) + switch (MysteryGiftClient_Run(&data->curPromptWindowId)) { - case 6: + case CLI_RET_END: Rfu_SetCloseLinkCallback(); data->prevPromptWindowId = data->curPromptWindowId; data->state = MG_STATE_LINK_COMPLETE_WAIT; break; - case 5: + case CLI_RET_5: memcpy(data->buffer, mevent_client_get_buffer(), 0x40); - mevent_client_inc_flag(); + MysteryGiftClient_AdvanceState(); break; - case 3: + case CLI_RET_3: data->state = MG_STATE_10; break; - case 2: + case CLI_RET_2: data->state = MG_STATE_9; break; - case 4: - data->state = MG_STATE_11; + case CLI_RET_ASK_TOSS: + data->state = MG_STATE_LINK_ASK_TOSS; StringCopy(gStringVar1, gLinkPlayers[0].name); break; } @@ -1262,14 +1262,14 @@ static void Task_MysteryGift(u8 taskId) switch (input) { case 0: // Yes - mevent_client_set_param(0); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(0); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; break; case 1: // No case MENU_B_PRESSED: - mevent_client_set_param(1); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(1); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; break; } @@ -1277,47 +1277,47 @@ static void Task_MysteryGift(u8 taskId) case MG_STATE_10: if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, mevent_client_get_buffer())) { - mevent_client_inc_flag(); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; } break; - case MG_STATE_11: + case MG_STATE_LINK_ASK_TOSS: input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_ThrowAwayWonderCard); switch (input) { case 0: // Yes if (CheckReceivedGiftFromWonderCard() == TRUE) { - data->state = MG_STATE_12; + data->state = MG_STATE_LINK_ASK_TOSS_UNRECEIVED; } else { - mevent_client_set_param(0); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(0); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; } break; case 1: // No case MENU_B_PRESSED: - mevent_client_set_param(1); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(1); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; break; } break; - case MG_STATE_12: + case MG_STATE_LINK_ASK_TOSS_UNRECEIVED: input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_HaventReceivedCardsGift); switch (input) { case 0: // Yes - mevent_client_set_param(0); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(0); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; break; case 1: // No case MENU_B_PRESSED: - mevent_client_set_param(1); - mevent_client_inc_flag(); + MysteryGiftClient_SetParam(1); + MysteryGiftClient_AdvanceState(); data->state = MG_STATE_COMMUNICATING; break; } @@ -1436,7 +1436,7 @@ static void Task_MysteryGift(u8 taskId) break; } case MG_STATE_ASK_TOSS: - // Player is atempting to discard a Wonder Card/News + // Player is attempting to discard a Wonder Card/News switch (AskDiscardGift(&data->textState, &data->curPromptWindowId, data->isWonderNews)) { case 0: // Yes @@ -1452,7 +1452,8 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_ASK_TOSS_UNRECEIVED: - // Player is attempting to discard a Wonder Card that they haven't received the gift for + // Player has selected to toss a Wonder Card that they haven't received the gift for. + // Ask for confirmation again. switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, TRUE, gText_HaventReceivedGiftOkayToDiscard)) { case 0: // Yes @@ -1467,7 +1468,7 @@ static void Task_MysteryGift(u8 taskId) case MG_STATE_TOSS: if (ExitWonderCardOrNews(data->isWonderNews, 1)) { - DestroyNewsOrCard(data->isWonderNews); + ClearSavedNewsOrCard(data->isWonderNews); data->state = MG_STATE_TOSS_SAVE; } break; diff --git a/src/scrcmd.c b/src/scrcmd.c index dfda7b3a2dfb..674973289c33 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -2230,7 +2230,7 @@ bool8 ScrCmd_checkmoneventlegal(struct ScriptContext *ctx) } // TODO: Should be renamed. Name implies general usage, but its specifically for Wonder Card -// See GetSavedRamScriptIfValid, which is NULL if ValidateReceivedWonderCard returns FALSE +// See GetSavedRamScriptIfValid, which is NULL if ValidateSavedWonderCard returns FALSE bool8 ScrCmd_gotoram(struct ScriptContext *ctx) { const u8* script = GetSavedRamScriptIfValid(); diff --git a/src/script.c b/src/script.c index 726c0654396d..6c2115dee32d 100644 --- a/src/script.c +++ b/src/script.c @@ -417,7 +417,7 @@ bool32 ValidateSavedRamScript(void) u8 *GetSavedRamScriptIfValid(void) { struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data; - if (!ValidateReceivedWonderCard()) + if (!ValidateSavedWonderCard()) return NULL; if (scriptData->magic != RAM_SCRIPT_MAGIC) return NULL; diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c index 1928ba12e538..1c456ecb33e0 100644 --- a/src/wonder_transfer.c +++ b/src/wonder_transfer.c @@ -51,7 +51,7 @@ struct UnkStruct_203F3C8_02DC struct WonderCardData { /*0000*/ struct WonderCard card; - /*014c*/ struct MEventBuffer_3430_Sub unk_014C; + /*014c*/ struct MEventBuffer_3430 unk_014C; /*0170*/ const struct WonderGraphics * gfx; /*0174*/ u8 enterExitState; /*0175*/ u8 unk_0175; @@ -176,7 +176,7 @@ static const struct WonderGraphics sCardGraphics[NUM_WONDER_BGS] = { {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8} }; -bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430_Sub * r6) +bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430 * r6) { if (card == NULL || r6 == NULL) return FALSE; From e3bb257bcf4ec855a0a45794c2838f0e2b5708f5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 15 Oct 2021 12:05:19 -0400 Subject: [PATCH 305/762] Fix some trainer card link access --- include/trainer_card.h | 15 ++++++++++----- src/cable_club.c | 6 +++--- src/trainer_card.c | 34 +++++++++++++++++----------------- src/union_room.c | 15 +++++++++------ 4 files changed, 39 insertions(+), 31 deletions(-) diff --git a/include/trainer_card.h b/include/trainer_card.h index 685d1cdcab51..f5e73da8394a 100644 --- a/include/trainer_card.h +++ b/include/trainer_card.h @@ -44,8 +44,11 @@ struct TrainerCard /*0x28*/ u16 easyChatProfile[TRAINER_CARD_PROFILE_LENGTH]; /*0x30*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; /*0x38*/ u8 version; - /*0x3A*/ bool16 hasAllFrontierSymbols; - /*0x3C*/ u32 berryCrushPoints; + /*0x3A*/ bool16 linkHasAllFrontierSymbols; + /*0x3C*/ union { + u32 berryCrush; + u32 frontier; + } linkPoints; // This field is used differently by FRLG vs Emerald /*0x40*/ u32 unionRoomNum; /*0x44*/ u8 filler[8]; /*0x4C*/ bool8 shouldDrawStickers; // FRLG only @@ -54,7 +57,9 @@ struct TrainerCard /*0x4F*/ u8 facilityClass; /*0x50*/ u8 stickers[TRAINER_CARD_STICKER_TYPES]; // FRLG only /*0x54*/ u16 monSpecies[PARTY_SIZE]; // FRLG only - /*0x60*/ bool16 hasAllSymbols; + // Note: Link players use linkHasAllFrontierSymbols, not the field below, + // which they use for a Wonder Card flag id instead (see CreateTrainerCardInBuffer) + /*0x60*/ bool16 hasAllFrontierSymbols; /*0x62*/ u16 frontierBP; }; @@ -62,9 +67,9 @@ extern struct TrainerCard gTrainerCards[4]; u32 CountPlayerTrainerStars(void); u8 GetTrainerCardStars(u8 cardId); -void CopyTrainerCardData(struct TrainerCard *dst, u16 *src, u8 gameVersion); +void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion); void ShowPlayerTrainerCard(void (*callback)(void)); void ShowTrainerCardInLink(u8 arg0, void (*callback)(void)); -void TrainerCard_GenerateCardForPlayer(struct TrainerCard *); +void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *); #endif // GUARD_TRAINER_CARD_H diff --git a/src/cable_club.c b/src/cable_club.c index 8db583989d12..3a4f723eabc0 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -372,7 +372,7 @@ static void Task_LinkupExchangeDataWithLeader(u8 taskId) gLocalLinkPlayerId = GetMultiplayerId(); SaveLinkPlayers(gFieldLinkPlayerCount); card = (struct TrainerCard *)gBlockSendBuffer; - TrainerCard_GenerateCardForPlayer(card); + TrainerCard_GenerateCardForLinkPlayer(card); card->monSpecies[0] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[0] - 1], MON_DATA_SPECIES, NULL); card->monSpecies[1] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[1] - 1], MON_DATA_SPECIES, NULL); gTasks[taskId].func = Task_LinkupAwaitTrainerCardData; @@ -420,7 +420,7 @@ static void Task_LinkupCheckStatusAfterConfirm(u8 taskId) gLocalLinkPlayerId = GetMultiplayerId(); SaveLinkPlayers(gFieldLinkPlayerCount); card = (struct TrainerCard *)gBlockSendBuffer; - TrainerCard_GenerateCardForPlayer(card); + TrainerCard_GenerateCardForLinkPlayer(card); card->monSpecies[0] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[0] - 1], MON_DATA_SPECIES, NULL); card->monSpecies[1] = GetMonData(&gPlayerParty[gSelectedOrderFromParty[1] - 1], MON_DATA_SPECIES, NULL); gTasks[taskId].func = Task_LinkupAwaitTrainerCardData; @@ -518,7 +518,7 @@ static void Task_LinkupAwaitTrainerCardData(u8 taskId) for (index = 0; index < GetLinkPlayerCount(); index++) { - CopyTrainerCardData(&gTrainerCards[index], gBlockRecvBuffer[index], gLinkPlayers[index].version); + CopyTrainerCardData(&gTrainerCards[index], (struct TrainerCard *)gBlockRecvBuffer[index], gLinkPlayers[index].version); } SetSuppressLinkErrorMessage(FALSE); diff --git a/src/trainer_card.c b/src/trainer_card.c index c11ee83c034a..bad015644ca1 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -110,7 +110,7 @@ static bool8 HasAllFrontierSymbols(void); static u8 GetRubyTrainerStars(struct TrainerCard*); static u16 GetCaughtMonsCount(void); static void SetPlayerCardData(struct TrainerCard*, u8); -static void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard*); +static void TrainerCard_GenerateCardForPlayer(struct TrainerCard*); static u8 VersionToCardType(u8); static void SetDataFromTrainerCard(void); static void InitGpuRegs(void); @@ -750,14 +750,14 @@ static void SetPlayerCardData(struct TrainerCard *trainerCard, u8 cardType) } } -static void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) +static void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard) { memset(trainerCard, 0, sizeof(struct TrainerCard)); trainerCard->version = GAME_VERSION; SetPlayerCardData(trainerCard, CARD_TYPE_EMERALD); - trainerCard->hasAllSymbols = HasAllFrontierSymbols(); + trainerCard->hasAllFrontierSymbols = HasAllFrontierSymbols(); trainerCard->frontierBP = gSaveBlock2Ptr->frontier.cardBattlePoints; - if (trainerCard->hasAllSymbols) + if (trainerCard->hasAllFrontierSymbols) trainerCard->stars++; if (trainerCard->gender == FEMALE) @@ -766,14 +766,14 @@ static void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCar trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; } -void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard) +void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) { memset(trainerCard, 0, 0x60); trainerCard->version = GAME_VERSION; SetPlayerCardData(trainerCard, CARD_TYPE_EMERALD); - trainerCard->hasAllFrontierSymbols = HasAllFrontierSymbols(); - *((u16*)&trainerCard->berryCrushPoints) = gSaveBlock2Ptr->frontier.cardBattlePoints; - if (trainerCard->hasAllFrontierSymbols) + trainerCard->linkHasAllFrontierSymbols = HasAllFrontierSymbols(); + *((u16*)&trainerCard->linkPoints.frontier) = gSaveBlock2Ptr->frontier.cardBattlePoints; + if (trainerCard->linkHasAllFrontierSymbols) trainerCard->stars++; if (trainerCard->gender == FEMALE) @@ -782,7 +782,7 @@ void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard) trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; } -void CopyTrainerCardData(struct TrainerCard *dst, u16 *src, u8 gameVersion) +void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion) { memset(dst, 0, sizeof(struct TrainerCard)); dst->version = gameVersion; @@ -797,9 +797,9 @@ void CopyTrainerCardData(struct TrainerCard *dst, u16 *src, u8 gameVersion) break; case CARD_TYPE_EMERALD: memcpy(dst, src, 0x60); - dst->berryCrushPoints = 0; - dst->hasAllSymbols = src[29]; - dst->frontierBP = src[30]; + dst->linkPoints.frontier = 0; + dst->hasAllFrontierSymbols = src->linkHasAllFrontierSymbols; + dst->frontierBP = *((u16*)&src->linkPoints.frontier); break; } } @@ -1243,13 +1243,13 @@ static void PrintTradesStringOnCard(void) static void BufferBerryCrushPoints(void) { - if (sData->cardType == CARD_TYPE_FRLG && sData->trainerCard.berryCrushPoints) - ConvertIntToDecimalStringN(sData->textBerryCrushPts, sData->trainerCard.berryCrushPoints, STR_CONV_MODE_RIGHT_ALIGN, 5); + if (sData->cardType == CARD_TYPE_FRLG && sData->trainerCard.linkPoints.berryCrush) + ConvertIntToDecimalStringN(sData->textBerryCrushPts, sData->trainerCard.linkPoints.berryCrush, STR_CONV_MODE_RIGHT_ALIGN, 5); } static void PrintBerryCrushStringOnCard(void) { - if (sData->cardType == CARD_TYPE_FRLG && sData->trainerCard.berryCrushPoints) + if (sData->cardType == CARD_TYPE_FRLG && sData->trainerCard.linkPoints.berryCrush) PrintStatOnBackOfCard(4, gText_BerryCrush, sData->textBerryCrushPts, sTrainerCardStatColors); } @@ -1524,7 +1524,7 @@ static void DrawCardBackStats(void) FillBgTilemapBufferRect(3, 141, 27, 9, 1, 1, 1); FillBgTilemapBufferRect(3, 157, 27, 10, 1, 1, 1); } - if (sData->trainerCard.berryCrushPoints) + if (sData->trainerCard.linkPoints.berryCrush) { FillBgTilemapBufferRect(3, 141, 21, 13, 1, 1, 1); FillBgTilemapBufferRect(3, 157, 21, 14, 1, 1, 1); @@ -1803,7 +1803,7 @@ void ShowPlayerTrainerCard(void (*callback)(void)) sData->isLink = FALSE; sData->language = GAME_LANGUAGE; - TrainerCard_GenerateCardForLinkPlayer(&sData->trainerCard); + TrainerCard_GenerateCardForPlayer(&sData->trainerCard); SetMainCallback2(CB2_InitTrainerCard); } diff --git a/src/union_room.c b/src/union_room.c index 0512a1f5c4b6..37d2434ddab6 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1532,13 +1532,15 @@ static void Task_ExchangeCards(u8 taskId) for (i = 0; i < GetLinkPlayerCount(); i++) { recvBuff = gBlockRecvBuffer[i]; - CopyTrainerCardData(&gTrainerCards[i], recvBuff, gLinkPlayers[i].version); + CopyTrainerCardData(&gTrainerCards[i], (struct TrainerCard *)recvBuff, gLinkPlayers[i].version); } if (GetLinkPlayerCount() == 2) { + // Note: hasAllFrontierSymbols is a re-used field. + // Here it is set by CreateTrainerCardInBuffer. recvBuff = gBlockRecvBuffer[GetMultiplayerId() ^ 1]; - MEventHandleReceivedWonderCard(recvBuff[48]); + MEventHandleReceivedWonderCard(((struct TrainerCard *)recvBuff)->hasAllFrontierSymbols); } else { @@ -1626,13 +1628,14 @@ static void CB2_TransitionToCableClub(void) static void CreateTrainerCardInBuffer(void *dest, bool32 setWonderCard) { - u16 *argAsU16Ptr = dest; + struct TrainerCard * card = (struct TrainerCard *)dest; + TrainerCard_GenerateCardForLinkPlayer(card); - TrainerCard_GenerateCardForPlayer((struct TrainerCard *)argAsU16Ptr); + // Below field is re-used, to be read by Task_ExchangeCards if (setWonderCard) - argAsU16Ptr[48] = GetWonderCardFlagID(); + card->hasAllFrontierSymbols = GetWonderCardFlagID(); else - argAsU16Ptr[48] = 0; + card->hasAllFrontierSymbols = 0; } static void Task_StartActivity(u8 taskId) From 845a5e99cc01607aae5f74c3e5e700a72734145f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 15 Oct 2021 12:56:14 -0400 Subject: [PATCH 306/762] General mystery gift documentation, finish mystery gift client/server/scripts --- data/scripts/mevent_battle_card.inc | 6 +- data/scripts/mevent_pichu.inc | 22 +- data/scripts/mevent_stamp_card.inc | 4 +- data/specials.inc | 2 +- include/constants/flags.h | 68 ++-- include/constants/mevent.h | 40 ++- include/constants/vars.h | 16 +- include/event_data.h | 4 +- include/global.h | 45 ++- include/main.h | 3 +- include/mevent.h | 56 ++-- include/mevent2.h | 6 - include/mevent_client.h | 62 ++-- include/mevent_news.h | 4 +- include/mevent_server.h | 102 ++++-- include/mevent_server_helpers.h | 33 +- include/mystery_gift.h | 2 +- include/wonder_transfer.h | 2 +- src/cable_club.c | 6 +- src/ereader_screen.c | 14 +- src/event_data.c | 60 ++-- src/field_specials.c | 16 +- src/mevent2.c | 468 +++++++++++++++------------- src/mevent_client.c | 122 ++++---- src/mevent_news.c | 92 +++--- src/mevent_scripts.c | 342 ++++++++++---------- src/mevent_server.c | 362 +++++++++++---------- src/mevent_server_helpers.c | 289 ++++++++--------- src/mystery_gift.c | 423 +++++++++++++------------ src/new_game.c | 2 +- src/script.c | 11 +- src/trade.c | 7 +- src/union_room.c | 20 +- src/wonder_transfer.c | 85 ++--- 34 files changed, 1498 insertions(+), 1298 deletions(-) delete mode 100644 include/mevent2.h diff --git a/data/scripts/mevent_battle_card.inc b/data/scripts/mevent_battle_card.inc index 3a66297e13f2..53610774646a 100644 --- a/data/scripts/mevent_battle_card.inc +++ b/data/scripts/mevent_battle_card.inc @@ -1,8 +1,8 @@ MysteryEventScript_BattleCard:: setvaddress MysteryEventScript_BattleCard - vgoto_if_set FLAG_MYSTERY_EVENT_DONE, MysteryEventScript_BattleCardInfo + vgoto_if_set FLAG_MYSTERY_GIFT_DONE, MysteryEventScript_BattleCardInfo setorcopyvar VAR_RESULT, GET_CARD_BATTLES_WON - specialvar VAR_0x8008, GetMysteryEventCardVal + specialvar VAR_0x8008, GetMysteryGiftCardStat compare VAR_0x8008, REQUIRED_CARD_BATTLES vgoto_if_ne MysteryEventScript_BattleCardInfo lock @@ -12,7 +12,7 @@ MysteryEventScript_BattleCard:: waitbuttonpress giveitem ITEM_POTION release - setflag FLAG_MYSTERY_EVENT_DONE + setflag FLAG_MYSTERY_GIFT_DONE end MysteryEventScript_BattleCardInfo: diff --git a/data/scripts/mevent_pichu.inc b/data/scripts/mevent_pichu.inc index 02b47b41f638..9256d53a732b 100644 --- a/data/scripts/mevent_pichu.inc +++ b/data/scripts/mevent_pichu.inc @@ -1,13 +1,13 @@ MysteryEventScript_SurfPichu:: setvaddress MysteryEventScript_SurfPichu - vgoto_if_unset FLAG_MYSTERY_EVENT_DONE, SurfPichu_GiveIfPossible + vgoto_if_unset FLAG_MYSTERY_GIFT_DONE, SurfPichu_GiveIfPossible returnram SurfPichu_GiveIfPossible: - specialvar VAR_EVENT_PICHU_SLOT, CalculatePlayerPartyCount - compare VAR_EVENT_PICHU_SLOT, PARTY_SIZE + specialvar VAR_GIFT_PICHU_SLOT, CalculatePlayerPartyCount + compare VAR_GIFT_PICHU_SLOT, PARTY_SIZE vgoto_if_eq SurfPichu_FullParty - setflag FLAG_MYSTERY_EVENT_DONE + setflag FLAG_MYSTERY_GIFT_DONE vcall SurfPichu_GiveEgg lock faceplayer @@ -30,17 +30,17 @@ SurfPichu_FullParty: SurfPichu_GiveEgg: giveegg SPECIES_PICHU - setmoneventlegal VAR_EVENT_PICHU_SLOT - setmonmetlocation VAR_EVENT_PICHU_SLOT, METLOC_FATEFUL_ENCOUNTER - compare VAR_EVENT_PICHU_SLOT, 1 + setmoneventlegal VAR_GIFT_PICHU_SLOT + setmonmetlocation VAR_GIFT_PICHU_SLOT, METLOC_FATEFUL_ENCOUNTER + compare VAR_GIFT_PICHU_SLOT, 1 vgoto_if_eq SurfPichu_Slot1 - compare VAR_EVENT_PICHU_SLOT, 2 + compare VAR_GIFT_PICHU_SLOT, 2 vgoto_if_eq SurfPichu_Slot2 - compare VAR_EVENT_PICHU_SLOT, 3 + compare VAR_GIFT_PICHU_SLOT, 3 vgoto_if_eq SurfPichu_Slot3 - compare VAR_EVENT_PICHU_SLOT, 4 + compare VAR_GIFT_PICHU_SLOT, 4 vgoto_if_eq SurfPichu_Slot4 - compare VAR_EVENT_PICHU_SLOT, 5 + compare VAR_GIFT_PICHU_SLOT, 5 vgoto_if_eq SurfPichu_Slot5 return diff --git a/data/scripts/mevent_stamp_card.inc b/data/scripts/mevent_stamp_card.inc index eeb3618548fd..e313aa29d51c 100644 --- a/data/scripts/mevent_stamp_card.inc +++ b/data/scripts/mevent_stamp_card.inc @@ -1,9 +1,9 @@ MysteryEventScript_StampCard:: setvaddress MysteryEventScript_StampCard setorcopyvar VAR_RESULT, GET_MAX_STAMPS - specialvar VAR_0x8008, GetMysteryEventCardVal + specialvar VAR_0x8008, GetMysteryGiftCardStat setorcopyvar VAR_RESULT, GET_NUM_STAMPS - specialvar VAR_0x8009, GetMysteryEventCardVal + specialvar VAR_0x8009, GetMysteryGiftCardStat subvar VAR_0x8008, VAR_0x8009 buffernumberstring 0, VAR_0x8008 lock diff --git a/data/specials.inc b/data/specials.inc index 297cf7d8afce..85c9251c6d7f 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -400,7 +400,7 @@ gSpecials:: def_special ClearQuizLadyQuestionAndAnswer def_special QuizLadySetCustomQuestion def_special QuizLadyTakePrizeForCustomQuiz - def_special GetMysteryEventCardVal + def_special GetMysteryGiftCardStat def_special QuizLadyRecordCustomQuizData def_special QuizLadySetWaitingForChallenger def_special BufferQuizCorrectAnswer diff --git a/include/constants/flags.h b/include/constants/flags.h index 880d227aa79d..793fe113540e 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -338,24 +338,24 @@ #define FLAG_RECEIVED_AURORA_TICKET 0x13A #define FLAG_RECEIVED_MYSTIC_TICKET 0x13B #define FLAG_RECEIVED_OLD_SEA_MAP 0x13C -#define FLAG_MYSTERY_GIFT_UNUSED_1 0x13D // These mystery gift flags are referenced but never set -#define FLAG_MYSTERY_GIFT_UNUSED_2 0x13E -#define FLAG_MYSTERY_GIFT_UNUSED_3 0x13F -#define FLAG_MYSTERY_GIFT_UNUSED_4 0x140 -#define FLAG_MYSTERY_GIFT_UNUSED_5 0x141 -#define FLAG_MYSTERY_GIFT_UNUSED_6 0x142 -#define FLAG_MYSTERY_GIFT_UNUSED_7 0x143 -#define FLAG_MYSTERY_GIFT_UNUSED_8 0x144 -#define FLAG_MYSTERY_GIFT_UNUSED_9 0x145 -#define FLAG_MYSTERY_GIFT_UNUSED_10 0x146 -#define FLAG_MYSTERY_GIFT_UNUSED_11 0x147 -#define FLAG_MYSTERY_GIFT_UNUSED_12 0x148 -#define FLAG_MYSTERY_GIFT_UNUSED_13 0x149 -#define FLAG_MYSTERY_GIFT_UNUSED_14 0x14A -#define FLAG_MYSTERY_GIFT_UNUSED_15 0x14B -#define FLAG_MYSTERY_GIFT_UNUSED_16 0x14C -#define FLAG_MYSTERY_GIFT_UNUSED_17 0x14D -#define NUM_MYSTERY_GIFT_FLAGS (1 + FLAG_MYSTERY_GIFT_UNUSED_17 - FLAG_RECEIVED_AURORA_TICKET) +#define FLAG_WONDER_CARD_UNUSED_1 0x13D // These Wonder Card flags are referenced but never set +#define FLAG_WONDER_CARD_UNUSED_2 0x13E +#define FLAG_WONDER_CARD_UNUSED_3 0x13F +#define FLAG_WONDER_CARD_UNUSED_4 0x140 +#define FLAG_WONDER_CARD_UNUSED_5 0x141 +#define FLAG_WONDER_CARD_UNUSED_6 0x142 +#define FLAG_WONDER_CARD_UNUSED_7 0x143 +#define FLAG_WONDER_CARD_UNUSED_8 0x144 +#define FLAG_WONDER_CARD_UNUSED_9 0x145 +#define FLAG_WONDER_CARD_UNUSED_10 0x146 +#define FLAG_WONDER_CARD_UNUSED_11 0x147 +#define FLAG_WONDER_CARD_UNUSED_12 0x148 +#define FLAG_WONDER_CARD_UNUSED_13 0x149 +#define FLAG_WONDER_CARD_UNUSED_14 0x14A +#define FLAG_WONDER_CARD_UNUSED_15 0x14B +#define FLAG_WONDER_CARD_UNUSED_16 0x14C +#define FLAG_WONDER_CARD_UNUSED_17 0x14D +#define NUM_WONDER_CARD_FLAGS (1 + FLAG_WONDER_CARD_UNUSED_17 - FLAG_RECEIVED_AURORA_TICKET) #define FLAG_MIRAGE_TOWER_VISIBLE 0x14E #define FLAG_CHOSE_ROOT_FOSSIL 0x14F @@ -519,22 +519,22 @@ #define FLAG_UNUSED_0x1E3 0x1E3 // Unused Flag // Mystery Gift Flags (Unknown) -#define FLAG_MYSTERY_EVENT_DONE 0x1E4 -#define FLAG_MYSTERY_EVENT_1 0x1E5 -#define FLAG_MYSTERY_EVENT_2 0x1E6 -#define FLAG_MYSTERY_EVENT_3 0x1E7 -#define FLAG_MYSTERY_EVENT_4 0x1E8 -#define FLAG_MYSTERY_EVENT_5 0x1E9 -#define FLAG_MYSTERY_EVENT_6 0x1EA -#define FLAG_MYSTERY_EVENT_7 0x1EB -#define FLAG_MYSTERY_EVENT_8 0x1EC -#define FLAG_MYSTERY_EVENT_9 0x1ED -#define FLAG_MYSTERY_EVENT_10 0x1EE -#define FLAG_MYSTERY_EVENT_11 0x1EF -#define FLAG_MYSTERY_EVENT_12 0x1F0 -#define FLAG_MYSTERY_EVENT_13 0x1F1 -#define FLAG_MYSTERY_EVENT_14 0x1F2 -#define FLAG_MYSTERY_EVENT_15 0x1F3 +#define FLAG_MYSTERY_GIFT_DONE 0x1E4 +#define FLAG_MYSTERY_GIFT_1 0x1E5 +#define FLAG_MYSTERY_GIFT_2 0x1E6 +#define FLAG_MYSTERY_GIFT_3 0x1E7 +#define FLAG_MYSTERY_GIFT_4 0x1E8 +#define FLAG_MYSTERY_GIFT_5 0x1E9 +#define FLAG_MYSTERY_GIFT_6 0x1EA +#define FLAG_MYSTERY_GIFT_7 0x1EB +#define FLAG_MYSTERY_GIFT_8 0x1EC +#define FLAG_MYSTERY_GIFT_9 0x1ED +#define FLAG_MYSTERY_GIFT_10 0x1EE +#define FLAG_MYSTERY_GIFT_11 0x1EF +#define FLAG_MYSTERY_GIFT_12 0x1F0 +#define FLAG_MYSTERY_GIFT_13 0x1F1 +#define FLAG_MYSTERY_GIFT_14 0x1F2 +#define FLAG_MYSTERY_GIFT_15 0x1F3 // Hidden Items #define FLAG_HIDDEN_ITEMS_START 0x1F4 diff --git a/include/constants/mevent.h b/include/constants/mevent.h index 3478816fd51f..d659ffb14a05 100644 --- a/include/constants/mevent.h +++ b/include/constants/mevent.h @@ -1,18 +1,46 @@ #ifndef GUARD_CONSTANTS_MEVENT_H #define GUARD_CONSTANTS_MEVENT_H -// mevent2.c -#define GET_NUM_STAMPS 0 -#define GET_MAX_STAMPS 1 +#define GET_NUM_STAMPS 0 +#define GET_MAX_STAMPS 1 #define GET_CARD_BATTLES_WON 2 +#define GET_CARD_BATTLE_LOST 3 +#define GET_CARD_NUM_TRADES 4 -#define GET_NUM_STAMPS_INTERNAL 3 -#define GET_MAX_STAMPS_INTERNAL 4 -#define GET_CARD_BATTLES_WON_INTERNAL 0 +#define CARD_STAT_BATTLES_WON 0 +#define CARD_STAT_BATTLES_LOST 1 +#define CARD_STAT_NUM_TRADES 2 +#define CARD_STAT_NUM_STAMPS 3 +#define CARD_STAT_MAX_STAMPS 4 + +#define CARD_TYPE_GIFT 0 +#define CARD_TYPE_STAMP 1 // "Stamp Card" +#define CARD_TYPE_LINK_STAT 2 // Referred to as the "Battle Card", shows battle and trade stats +#define CARD_TYPE_COUNT 3 + +#define SEND_TYPE_DISALLOWED 0 +#define SEND_TYPE_ALLOWED 1 +#define SEND_TYPE_ALLOWED_ALWAYS 2 + +// Return values for MysteryGift_CompareCardFlags, handled by gMysteryGiftServerScript_SendWonderCard +#define HAS_NO_CARD 0 +#define HAS_SAME_CARD 1 +#define HAS_DIFF_CARD 2 #define REQUIRED_CARD_BATTLES 3 +#define MAX_CARD_STAMPS 7 + +// Stamps are 32 bits. The first 16 bits are the species +// and the second 16 bits are a number (presumably an ID of some kind) +#define STAMP_SPECIES 0 +#define STAMP_ID 1 + // Number of different types/colors of Wonder Card and News backgrounds #define NUM_WONDER_BGS 8 +#define MAX_WONDER_CARD_STAT 999 + +#define WONDER_CARD_FLAG_OFFSET 1000 + #endif //GUARD_MEVENT_H diff --git a/include/constants/vars.h b/include/constants/vars.h index 2cbe3e9b80bb..e57b021854a7 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -237,14 +237,14 @@ #define VAR_REGISTER_BIRCH_STATE 0x40DA #define VAR_UNUSED_0x40DB 0x40DB // Unused Var #define VAR_UNUSED_0x40DC 0x40DC // Unused Var -#define VAR_EVENT_PICHU_SLOT 0x40DD -#define VAR_NEVER_READ_0x40DE 0x40DE // Var is written to, but never read -#define VAR_NEVER_READ_0x40DF 0x40DF // Var is written to, but never read -#define VAR_NEVER_READ_0x40E0 0x40E0 // Var is written to, but never read -#define VAR_NEVER_READ_0x40E1 0x40E1 // Var is written to, but never read -#define VAR_NEVER_READ_0x40E2 0x40E2 // Var is written to, but never read -#define VAR_NEVER_READ_0x40E3 0x40E3 // Var is written to, but never read -#define VAR_NEVER_READ_0x40E4 0x40E4 // var is written to, but never read +#define VAR_GIFT_PICHU_SLOT 0x40DD +#define VAR_GIFT_UNUSED_1 0x40DE // Var is written to, but never read +#define VAR_GIFT_UNUSED_2 0x40DF // Var is written to, but never read +#define VAR_GIFT_UNUSED_3 0x40E0 // Var is written to, but never read +#define VAR_GIFT_UNUSED_4 0x40E1 // Var is written to, but never read +#define VAR_GIFT_UNUSED_5 0x40E2 // Var is written to, but never read +#define VAR_GIFT_UNUSED_6 0x40E3 // Var is written to, but never read +#define VAR_GIFT_UNUSED_7 0x40E4 // var is written to, but never read #define VAR_UNUSED_0x40E5 0x40E5 // Unused Var #define VAR_DAILY_SLOTS 0x40E6 #define VAR_DAILY_WILDS 0x40E7 diff --git a/include/event_data.h b/include/event_data.h index 8b4510e39bd4..b1fa694601c6 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -13,8 +13,8 @@ bool32 IsMysteryEventEnabled(void); void DisableMysteryGift(void); void EnableMysteryGift(void); bool32 IsMysteryGiftEnabled(void); -void ClearMysteryEventFlags(void); -void ClearMysteryEventVars(void); +void ClearMysteryGiftFlags(void); +void ClearMysteryGiftVars(void); void DisableResetRTC(void); void EnableResetRTC(void); bool32 CanResetRTC(void); diff --git a/include/global.h b/include/global.h index c737be7b8f64..a6071b2cd8fd 100644 --- a/include/global.h +++ b/include/global.h @@ -837,7 +837,7 @@ struct SaveTrainerHill /*0x3D6E*/ u16 tag:2; }; -struct MysteryEventStruct +struct WonderNewsMetadata { u8 unk_0_0:2; u8 unk_0_2:3; @@ -845,24 +845,24 @@ struct MysteryEventStruct u8 unk_1; }; - struct WonderNews +struct WonderNews { u16 unk_00; - u8 unk_02; + u8 sendType; // SEND_TYPE_* u8 bgType; u8 unk_04[WONDER_NEWS_TEXT_LENGTH]; u8 unk_2C[10][WONDER_NEWS_TEXT_LENGTH]; }; - struct WonderCard +struct WonderCard { u16 flagId; - u16 unk_02; + u16 iconSpecies; u32 unk_04; - u8 unk_08_0:2; + u8 type:2; // CARD_TYPE_* u8 bgType:4; - u8 unk_08_6:2; - u8 unk_09; + u8 sendType:2; // SEND_TYPE_* + u8 maxStamps; u8 unk_0A[WONDER_CARD_TEXT_LENGTH]; u8 unk_32[WONDER_CARD_TEXT_LENGTH]; u8 unk_5A[4][WONDER_CARD_TEXT_LENGTH]; @@ -870,26 +870,26 @@ struct MysteryEventStruct u8 unk_122[WONDER_CARD_TEXT_LENGTH]; }; - struct MEventBuffer_3430 +struct WonderCardMetadata { - u16 unk_00; - u16 unk_02; - u16 unk_04; - u16 unk_06; - u16 unk_08[2][7]; + u16 battlesWon; + u16 battlesLost; + u16 numTrades; + u16 iconSpecies; + u16 stampData[2][7]; }; - struct MysteryGiftSave +struct MysteryGiftSave { u32 newsCrc; struct WonderNews news; u32 cardCrc; struct WonderCard card; - u32 unkCrc; - struct MEventBuffer_3430 unk_3430; + u32 cardMetadataCrc; + struct WonderCardMetadata cardMetadata; u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; - struct MysteryEventStruct unk_340; - u32 unk_344[2][5]; + struct WonderNewsMetadata newsMetadata; + u32 trainerIds[2][5]; // Saved ids for 10 trainers, 5 each for battles and trades }; // 0x36C 0x3598 // For external event data storage. The majority of these may have never been used. @@ -966,7 +966,7 @@ struct SaveBlock1 /*0x848*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT]; /*0x988*/ u8 seen1[DEX_FLAGS_NO]; /*0x9BC*/ u16 berryBlenderRecords[3]; - /*0x9C2*/ u8 field_9C2[6]; + /*0x9C2*/ u8 unused_9C2[6]; /*0x9C8*/ u16 trainerRematchStepCounter; /*0x9CA*/ u8 trainerRematches[MAX_REMATCH_ENTRIES]; /*0xA30*/ struct ObjectEvent objectEvents[OBJECT_EVENTS_COUNT]; @@ -986,7 +986,6 @@ struct SaveBlock1 /*0x278E*/ u8 decorationPosters[10]; /*0x2798*/ u8 decorationDolls[40]; /*0x27C0*/ u8 decorationCushions[10]; - /*0x27CA*/ u8 padding_27CA[2]; /*0x27CC*/ TVShow tvShows[TV_SHOWS_COUNT]; /*0x2B50*/ PokeNews pokeNews[POKE_NEWS_COUNT]; /*0x2B90*/ u16 outbreakPokemonSpecies; @@ -1017,7 +1016,7 @@ struct SaveBlock1 /*0x31DC*/ struct Roamer roamer; /*0x31F8*/ struct EnigmaBerry enigmaBerry; /*0x322C*/ struct MysteryGiftSave mysteryGift; - /*0x3598*/ u8 field_3598[0x180]; + /*0x3598*/ u8 unused_3598[0x180]; /*0x3718*/ u32 trainerHillTimes[4]; /*0x3728*/ struct RamScript ramScript; /*0x3B14*/ struct RecordMixingGift recordMixingGift; @@ -1025,7 +1024,7 @@ struct SaveBlock1 /*0x3B58*/ LilycoveLady lilycoveLady; /*0x3B98*/ struct TrainerNameRecord trainerNameRecords[20]; /*0x3C88*/ u8 registeredTexts[UNION_ROOM_KB_ROW_COUNT][21]; - /*0x3D5A*/ u8 filler3D5A[0xA]; + /*0x3D5A*/ u8 unused_3D5A[10]; /*0x3D64*/ struct SaveTrainerHill trainerHill; /*0x3D70*/ struct WaldaPhrase waldaPhrase; // sizeof: 0x3D88 diff --git a/include/main.h b/include/main.h index cad5c0ef9cef..79d56d31ffcc 100644 --- a/include/main.h +++ b/include/main.h @@ -40,9 +40,10 @@ struct Main /*0x439*/ u8 anyLinkBattlerHasFrontierPass:1; }; +#define GAME_CODE_LENGTH 4 extern const u8 gGameVersion; extern const u8 gGameLanguage; -extern const u8 RomHeaderGameCode[4]; +extern const u8 RomHeaderGameCode[GAME_CODE_LENGTH]; extern const u8 RomHeaderSoftwareVersion; extern u16 gKeyRepeatStartDelay; diff --git a/include/mevent.h b/include/mevent.h index 4fda47fbd244..1297b4291d45 100755 --- a/include/mevent.h +++ b/include/mevent.h @@ -1,6 +1,9 @@ #ifndef GUARD_MEVENT_H #define GUARD_MEVENT_H +#include "main.h" +#include "constants/mevent.h" + struct MEvent_Str_1 { u16 unk_000; @@ -13,51 +16,52 @@ struct MEvent_Str_2 u8 fill_00[0x40]; }; -struct MEventStruct_Unk1442CC +struct MysteryGiftLinkGameData { u32 unk_00; u16 unk_04; u32 unk_08; u16 unk_0C; u32 unk_10; - u16 unk_14; + u16 flagId; u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; - struct MEventBuffer_3430 unk_20; - u8 unk_44; + struct WonderCardMetadata cardMetadata; + u8 maxStamps; u8 playerName[PLAYER_NAME_LENGTH]; u8 playerTrainerId[TRAINER_ID_LENGTH]; u16 easyChatProfile[EASY_CHAT_BATTLE_WORDS_COUNT]; - u8 romHeaderGameCode[4]; + u8 romHeaderGameCode[GAME_CODE_LENGTH]; u8 romHeaderSoftwareVersion; }; -void sub_801AFD8(void); +void ClearMysteryGift(void); struct WonderNews *GetSavedWonderNews(void); struct WonderCard *GetSavedWonderCard(void); -struct MEventBuffer_3430 *sav1_get_mevent_buffer_2(void); -struct MysteryEventStruct *sub_801B044(void); +struct WonderCardMetadata *GetSavedWonderCardMetadata(void); +struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void); u16 *GetQuestionnaireWordsPtr(void); -void ClearSavedWonderNews(void); +void ClearSavedWonderNewsAndRelated(void); +void ClearSavedWonderCardAndRelated(void); bool32 SaveWonderNews(const struct WonderNews *news); -bool32 ValidateSavedWonderNews(void); -bool32 WonderNews_Test_Unk_02(void); -bool32 sub_801B1A4(const u8 *src); -void ClearSavedWonderCard(void); bool32 SaveWonderCard(const struct WonderCard *card); +bool32 ValidateSavedWonderNews(void); bool32 ValidateSavedWonderCard(void); -bool32 WonderCard_Test_Unk_08_6(void); +bool32 IsWonderNewsSameAsSaved(const u8 *src); +bool32 IsSendingSavedWonderNewsAllowed(void); +bool32 IsSendingSavedWonderCardAllowed(void); u16 GetWonderCardFlagID(void); -void WonderCard_ResetInternalReceivedFlag(struct WonderCard *buffer); -bool32 CheckReceivedGiftFromWonderCard(void); -bool32 sub_801B508(const u16 *data); -void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1); -bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1); -u32 sub_801B6EC(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused); -u32 sub_801B708(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused); -bool32 MysteryGift_DoesQuestionnaireMatch(const struct MEventStruct_Unk1442CC *data, const u16 *words); -u16 MEventStruct_Unk1442CC_GetValueNFrom_unk_20(const struct MEventStruct_Unk1442CC *a0, u32 command); -u16 mevent_081445C0(u32 command); -void ResetReceivedWonderCardFlag(void); -bool32 MEventHandleReceivedWonderCard(u16 a0); +void DisableWonderCardSending(struct WonderCard *card); +bool32 IsSavedWonderCardGiftNotReceived(void); +bool32 MysteryGift_TrySaveStamp(const u16 *stamp); +void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 a1); +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 a1); +u32 MysteryGift_CompareCardFlags(const u16 *a0, const struct MysteryGiftLinkGameData *data, const void *unused); +u32 MysteryGift_CheckStamps(const u16 *a0, const struct MysteryGiftLinkGameData *data, const void *unused); +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words); +u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat); +u16 MysteryGift_GetCardStat(u32 stat); +void MysteryGift_DisableStats(void); +bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId); +void TryIncrementMysteryGiftStat(u32 stat, u32 trainerId); #endif //GUARD_MEVENT_H diff --git a/include/mevent2.h b/include/mevent2.h deleted file mode 100644 index 316a9e6deab2..000000000000 --- a/include/mevent2.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef GUARD_MEVENT2_H -#define GUARD_MEVENT2_H - -void RecordIdOfWonderCardSenderByEventType(u32, u32); - -#endif //GUARD_MEVENT2_H diff --git a/include/mevent_client.h b/include/mevent_client.h index f68bb7592b2e..cc189ccc91f7 100644 --- a/include/mevent_client.h +++ b/include/mevent_client.h @@ -6,11 +6,11 @@ // Return values for client functions called by MysteryGiftClient_Run enum { CLI_RET_INIT, - CLI_RET_1, - CLI_RET_2, - CLI_RET_3, + CLI_RET_ACTIVE, + CLI_RET_YES_NO, + CLI_RET_PRINT_MSG, CLI_RET_ASK_TOSS, - CLI_RET_5, + CLI_RET_COPY_MSG, CLI_RET_END, }; @@ -21,25 +21,47 @@ enum { CLI_RECV, CLI_SEND_LOADED, CLI_COPY_RECV, - CLI_5, + CLI_YES_NO, CLI_COPY_RECV_IF_N, CLI_COPY_RECV_IF, - CLI_8, - CLI_9, - CLI_10, - CLI_11, - CLI_12, + CLI_LOAD_GAME_DATA, + CLI_SAVE_NEWS, + CLI_SAVE_CARD, + CLI_PRINT_MSG, + CLI_COPY_MSG, CLI_ASK_TOSS, CLI_LOAD_TOSS_RESPONSE, - CLI_15, - CLI_16, - CLI_17, + CLI_RUN_GIFT_SCRIPT, + CLI_SAVE_STAMP, + CLI_SAVE_RAM_SCRIPT, CLI_RECV_EREADER_TRAINER, CLI_SEND_STAT, - CLI_20, - CLI_21, + CLI_SEND_READY_END, + CLI_RUN_BUFFER_SCRIPT, }; +// IDs for client messages when ending a script. +// Given as the parameter to CLI_RETURN, and resolved to text in GetClientResultMessage +enum { + CLI_MSG_NOTHING_SENT, + CLI_MSG_RECORD_UPLOADED, + CLI_MSG_CARD_RECEIVED, + CLI_MSG_NEWS_RECEIVED, + CLI_MSG_STAMP_RECEIVED, + CLI_MSG_HAD_CARD, + CLI_MSG_HAD_STAMP, + CLI_MSG_HAD_NEWS, + CLI_MSG_NO_ROOM_STAMPS, + CLI_MSG_COMM_CANCELED, + CLI_MSG_CANT_ACCEPT, + CLI_MSG_COMM_ERROR, + CLI_MSG_TRAINER_RECEIVED, + CLI_MSG_BUFFER_SUCCESS, + CLI_MSG_BUFFER_FAILURE, +}; + +#define CLIENT_MAX_MSG_SIZE 64 + struct MysteryGiftClientCmd { u32 instr; @@ -48,23 +70,23 @@ struct MysteryGiftClientCmd struct MysteryGiftClient { - u32 unk_00; + u32 unused; u32 param; u32 funcId; u32 funcState; u32 cmdidx; void * sendBuffer; void * recvBuffer; - struct MysteryGiftClientCmd * cmdBuffer; - void * buffer; + struct MysteryGiftClientCmd * script; + void * msg; struct MysteryGiftLink link; bool32 isWonderNews; }; void MysteryGiftClient_Create(bool32 isWonderNews); -u32 MysteryGiftClient_Run(u16 * param); +u32 MysteryGiftClient_Run(u16 * endVal); void MysteryGiftClient_AdvanceState(void); -void * mevent_client_get_buffer(void); +void * MysteryGiftClient_GetMsg(void); void MysteryGiftClient_SetParam(u32 value); #endif //GUARD_MEVENT_CLIENT_H diff --git a/include/mevent_news.h b/include/mevent_news.h index 5fa009499512..7b4657e14653 100755 --- a/include/mevent_news.h +++ b/include/mevent_news.h @@ -1,7 +1,7 @@ #ifndef GUARD_MEVENT_NEWS_H #define GUARD_MEVENT_NEWS_H -void sub_801DBC0(void); -void GenerateRandomNews(u32 a0); +void InitSavedWonderNews(void); +void GenerateRandomWonderNews(u32 a0); #endif //GUARD_MEVENT_NEWS_H diff --git a/include/mevent_server.h b/include/mevent_server.h index 3152280d34b4..98cb03f6a68d 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -3,34 +3,98 @@ #include "mevent_server_helpers.h" -struct mevent_cmd +// Return values for Server_* functions. +// Other than SVR_RET_END, effectively useless (not checked for). +enum { + SVR_RET_INIT, + SVR_RET_ACTIVE, + SVR_RET_UNUSED, + SVR_RET_END +}; + +// IDs for server script instructions +enum { + SVR_RETURN, + SVR_SEND, + SVR_RECV, + SVR_GOTO, + SVR_GOTO_IF_EQ, + SVR_COPY_GAME_DATA, + SVR_CHECK_GAME_DATA_CARD, + SVR_CHECK_EXISTING_CARD, + SVR_READ_RESPONSE, + SVR_CHECK_EXISTING_STAMPS, + SVR_GET_CARD_STAT, + SVR_CHECK_QUESTIONNAIRE, + SVR_COMPARE, + SVR_LOAD_CARD, + SVR_LOAD_NEWS, + SVR_LOAD_RAM_SCRIPT, + SVR_LOAD_STAMP, + SVR_LOAD_UNK_2, + SVR_LOAD_CLIENT_SCRIPT, + SVR_LOAD_EREADER_TRAINER, + SVR_LOAD_MSG, + SVR_COPY_STAMP, + SVR_COPY_CARD, + SVR_COPY_NEWS, + SVR_SET_RAM_SCRIPT, + SVR_SET_CLIENT_SCRIPT, + SVR_COPY_SAVED_CARD, + SVR_COPY_SAVED_NEWS, + SVR_COPY_SAVED_RAM_SCRIPT, + SVR_LOAD_UNK_1, + SVR_CHECK_GAME_DATA_NEWS, +}; + +// IDs for server messages when ending a script. +// Given as the parameter to SVR_RETURN, and resolved to text in GetServerResultMessage +enum { + SVR_MSG_NOTHING_SENT, + SVR_MSG_RECORD_UPLOADED, + SVR_MSG_CARD_SENT, + SVR_MSG_NEWS_SENT, + SVR_MSG_STAMP_SENT, + SVR_MSG_HAS_CARD, + SVR_MSG_HAS_STAMP, + SVR_MSG_HAS_NEWS, + SVR_MSG_NO_ROOM_STAMPS, + SVR_MSG_CLIENT_CANCELED, + SVR_MSG_CANT_SEND_GIFT_1, + SVR_MSG_COMM_ERROR, + SVR_MSG_GIFT_SENT_1, + SVR_MSG_GIFT_SENT_2, + SVR_MSG_CANT_SEND_GIFT_2, +}; + +struct MysteryGiftServerCmd { u32 instr; - bool32 flag; - const void * parameter; + u32 parameter; + const void * ptr; }; -struct mevent_srv_common +struct MysteryGiftServer { - u32 unk_00; + u32 unused; u32 param; - u32 mainseqno; + u32 funcId; u32 cmdidx; - const struct mevent_cmd * cmdBuffer; + const struct MysteryGiftServerCmd * script; void * recvBuffer; - struct WonderCard * wonder_card; - struct WonderNews * wonder_news; - struct MEventStruct_Unk1442CC * mevent_unk1442cc; - const void * sendBuffer1; - u32 sendBuffer1Size; - const void * sendBuffer2; - u32 sendBuffer2Size; - u32 sendWord; - struct MysteryGiftLink manager; + struct WonderCard * card; + struct WonderNews * news; + struct MysteryGiftLinkGameData * linkGameData; + const void * ramScript; + u32 ramScriptSize; + const void * clientScript; + u32 clientScriptSize; + u32 stamp; + struct MysteryGiftLink link; }; -void mevent_srv_new_wcard(); -void mevent_srv_init_wnews(); -u32 mevent_srv_common_do_exec(u16 * a0); +void MysterGiftServer_CreateForCard(); +void MysterGiftServer_CreateForNews(); +u32 MysterGiftServer_Run(u16 * endVal); #endif //GUARD_MEVENT_SERVER_H diff --git a/include/mevent_server_helpers.h b/include/mevent_server_helpers.h index d2f292a0ba76..77d966447a38 100644 --- a/include/mevent_server_helpers.h +++ b/include/mevent_server_helpers.h @@ -1,13 +1,31 @@ #ifndef GUARD_MEVENT_SERVER_HELPERS_H #define GUARD_MEVENT_SERVER_HELPERS_H -#define ME_SEND_BUF_SIZE 0x400 +#define MG_LINK_BUFFER_SIZE 0x400 + +// Send/receive ids for the Client/Server to make sure +// they're sending/receiving the same thing +enum { + MG_LINKID_CLIENT_SCRIPT = 16, + MG_LINKID_GAME_DATA, + MG_LINKID_GAME_STAT, + MG_LINKID_RESPONSE, + MG_LINKID_READY_END, + MG_LINKID_DYNAMIC_MSG, + MG_LINKID_CARD, + MG_LINKID_NEWS, + MG_LINKID_STAMP, + MG_LINKID_RAM_SCRIPT, + MG_LINKID_EREADER_TRAINER, + MG_LINKID_UNK_1, + MG_LINKID_UNK_2, +}; struct MysteryGiftLink { - s32 seqno; - u8 sendPlayerNo; - u8 recvPlayerNo; + s32 state; + u8 sendPlayerId; + u8 recvPlayerId; u16 recvIdent; u16 recvCounter; u16 recvCRC; @@ -22,13 +40,6 @@ struct MysteryGiftLink u32 (*sendFunc)(struct MysteryGiftLink *); }; -struct send_recv_header -{ - u16 ident; - u16 crc; - u16 size; -}; - void MysteryGiftLink_Init(struct MysteryGiftLink *, u32, u32); void MysteryGiftLink_InitSend(struct MysteryGiftLink * manager, u32 ident, const void * src, u32 size); bool32 MysteryGiftLink_Recv(struct MysteryGiftLink * manager); diff --git a/include/mystery_gift.h b/include/mystery_gift.h index 42c7f47ba35a..73d3b93eac2c 100644 --- a/include/mystery_gift.h +++ b/include/mystery_gift.h @@ -8,7 +8,7 @@ void CB2_MysteryGiftEReader(void); void PrintMysteryGiftOrEReaderTopMenu(bool8 isJapanese, bool32 usePickOkCancel); void MG_DrawCheckerboardPattern(u32 bg); void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void); -bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str); +bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str); void AddTextPrinterToWindow1(const u8 *src); void CB2_InitEReader(void); void CB2_InitMysteryGift(void); diff --git a/include/wonder_transfer.h b/include/wonder_transfer.h index 7532d6b3c99f..398a2b37b53c 100644 --- a/include/wonder_transfer.h +++ b/include/wonder_transfer.h @@ -9,7 +9,7 @@ enum { NEWS_INPUT_NONE = 0xFF }; -bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430 * r6); +bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * r6); bool32 WonderNews_Init(const struct WonderNews * news); s32 WonderCard_Enter(void); s32 WonderNews_Enter(void); diff --git a/src/cable_club.c b/src/cable_club.c index 3a4f723eabc0..e9100b0112fc 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -18,7 +18,7 @@ #include "overworld.h" #include "palette.h" #include "union_room.h" -#include "mevent2.h" +#include "mevent.h" #include "script.h" #include "script_pokemon_util.h" #include "sound.h" @@ -1004,10 +1004,10 @@ void CB2_ReturnFromCableClubBattle(void) switch (gBattleOutcome) { case B_OUTCOME_WON: - RecordIdOfWonderCardSenderByEventType(0, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + TryIncrementMysteryGiftStat(CARD_STAT_BATTLES_WON, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); break; case B_OUTCOME_LOST: - RecordIdOfWonderCardSenderByEventType(1, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + TryIncrementMysteryGiftStat(CARD_STAT_BATTLES_LOST, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); break; } } diff --git a/src/ereader_screen.c b/src/ereader_screen.c index 31794628b901..a76fb09c8ccf 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -250,7 +250,7 @@ static void Task_EReader(u8 taskId) switch (data->unk8) { case 0: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_ReceiveMysteryGiftWithEReader)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ReceiveMysteryGiftWithEReader)) data->unk8 = 1; break; case 1: @@ -274,7 +274,7 @@ static void Task_EReader(u8 taskId) } break; case 4: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_SelectConnectFromEReaderMenu)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_SelectConnectFromEReaderMenu)) { AddTextPrinterToWindow1(gJPText_SelectConnectWithGBA); sub_81D505C(&data->unk0); @@ -323,7 +323,7 @@ static void Task_EReader(u8 taskId) } break; case 7: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_LinkIsIncorrect)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_LinkIsIncorrect)) data->unk8 = 4; break; case 8: @@ -439,19 +439,19 @@ static void Task_EReader(u8 taskId) data->unk8 = 26; break; case 23: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_CardReadingHasBeenHalted)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_CardReadingHasBeenHalted)) data->unk8 = 26; break; case 20: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_ConnectionErrorCheckLink)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ConnectionErrorCheckLink)) data->unk8 = 0; break; case 21: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_ConnectionErrorTryAgain)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ConnectionErrorTryAgain)) data->unk8 = 0; break; case 22: - if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gJPText_WriteErrorUnableToSaveData)) + if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_WriteErrorUnableToSaveData)) data->unk8 = 0; break; case 26: diff --git a/src/event_data.c b/src/event_data.c index 2bde09012d78..e2af6c3d0d41 100644 --- a/src/event_data.c +++ b/src/event_data.c @@ -114,36 +114,36 @@ bool32 IsMysteryGiftEnabled(void) return FlagGet(FLAG_SYS_MYSTERY_GIFT_ENABLE); } -void ClearMysteryEventFlags(void) -{ - FlagClear(FLAG_MYSTERY_EVENT_DONE); - FlagClear(FLAG_MYSTERY_EVENT_1); - FlagClear(FLAG_MYSTERY_EVENT_2); - FlagClear(FLAG_MYSTERY_EVENT_3); - FlagClear(FLAG_MYSTERY_EVENT_4); - FlagClear(FLAG_MYSTERY_EVENT_5); - FlagClear(FLAG_MYSTERY_EVENT_6); - FlagClear(FLAG_MYSTERY_EVENT_7); - FlagClear(FLAG_MYSTERY_EVENT_8); - FlagClear(FLAG_MYSTERY_EVENT_9); - FlagClear(FLAG_MYSTERY_EVENT_10); - FlagClear(FLAG_MYSTERY_EVENT_11); - FlagClear(FLAG_MYSTERY_EVENT_12); - FlagClear(FLAG_MYSTERY_EVENT_13); - FlagClear(FLAG_MYSTERY_EVENT_14); - FlagClear(FLAG_MYSTERY_EVENT_15); -} - -void ClearMysteryEventVars(void) -{ - VarSet(VAR_EVENT_PICHU_SLOT, 0); - VarSet(VAR_NEVER_READ_0x40DE, 0); - VarSet(VAR_NEVER_READ_0x40DF, 0); - VarSet(VAR_NEVER_READ_0x40E0, 0); - VarSet(VAR_NEVER_READ_0x40E1, 0); - VarSet(VAR_NEVER_READ_0x40E2, 0); - VarSet(VAR_NEVER_READ_0x40E3, 0); - VarSet(VAR_NEVER_READ_0x40E4, 0); +void ClearMysteryGiftFlags(void) +{ + FlagClear(FLAG_MYSTERY_GIFT_DONE); + FlagClear(FLAG_MYSTERY_GIFT_1); + FlagClear(FLAG_MYSTERY_GIFT_2); + FlagClear(FLAG_MYSTERY_GIFT_3); + FlagClear(FLAG_MYSTERY_GIFT_4); + FlagClear(FLAG_MYSTERY_GIFT_5); + FlagClear(FLAG_MYSTERY_GIFT_6); + FlagClear(FLAG_MYSTERY_GIFT_7); + FlagClear(FLAG_MYSTERY_GIFT_8); + FlagClear(FLAG_MYSTERY_GIFT_9); + FlagClear(FLAG_MYSTERY_GIFT_10); + FlagClear(FLAG_MYSTERY_GIFT_11); + FlagClear(FLAG_MYSTERY_GIFT_12); + FlagClear(FLAG_MYSTERY_GIFT_13); + FlagClear(FLAG_MYSTERY_GIFT_14); + FlagClear(FLAG_MYSTERY_GIFT_15); +} + +void ClearMysteryGiftVars(void) +{ + VarSet(VAR_GIFT_PICHU_SLOT, 0); + VarSet(VAR_GIFT_UNUSED_1, 0); + VarSet(VAR_GIFT_UNUSED_2, 0); + VarSet(VAR_GIFT_UNUSED_3, 0); + VarSet(VAR_GIFT_UNUSED_4, 0); + VarSet(VAR_GIFT_UNUSED_5, 0); + VarSet(VAR_GIFT_UNUSED_6, 0); + VarSet(VAR_GIFT_UNUSED_7, 0); } void DisableResetRTC(void) diff --git a/src/field_specials.c b/src/field_specials.c index 131099ab7e7a..5d7829d12d95 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1651,20 +1651,20 @@ void BufferLottoTicketNumber(void) } } -u16 GetMysteryEventCardVal(void) +u16 GetMysteryGiftCardStat(void) { switch (gSpecialVar_Result) { case GET_NUM_STAMPS: - return mevent_081445C0(GET_NUM_STAMPS_INTERNAL); + return MysteryGift_GetCardStat(CARD_STAT_NUM_STAMPS); case GET_MAX_STAMPS: - return mevent_081445C0(GET_MAX_STAMPS_INTERNAL); + return MysteryGift_GetCardStat(CARD_STAT_MAX_STAMPS); case GET_CARD_BATTLES_WON: - return mevent_081445C0(GET_CARD_BATTLES_WON_INTERNAL); - case 3: // Never occurs - return mevent_081445C0(1); - case 4: // Never occurs - return mevent_081445C0(2); + return MysteryGift_GetCardStat(CARD_STAT_BATTLES_WON); + case GET_CARD_BATTLE_LOST: // Never occurs + return MysteryGift_GetCardStat(CARD_STAT_BATTLES_LOST); + case GET_CARD_NUM_TRADES: // Never occurs + return MysteryGift_GetCardStat(CARD_STAT_NUM_TRADES); default: return 0; } diff --git a/src/mevent2.c b/src/mevent2.c index fd3ec7a67250..d781e211979f 100755 --- a/src/mevent2.c +++ b/src/mevent2.c @@ -11,23 +11,23 @@ #include "mevent.h" #include "constants/mevent.h" -static EWRAM_DATA bool32 gUnknown_02022C70 = FALSE; +static EWRAM_DATA bool32 sStatsEnabled = FALSE; -static void sub_801B180(void); -static void ClearSavedWonderNewsInternal(void); -static bool32 ValidateWonderNews(const struct WonderNews *news); -static bool32 ValidateWonderCard(const struct WonderCard *card); -static void InitSavedWonderCard(void); -static void sub_801B368(void); -static void sub_801B9F8(void); -static void sub_801BA8C(u32 a0, u32 a1, u32 *a2, int a3); +static void ClearSavedWonderNewsMetadata(void); +static void ClearSavedWonderNews(void); +static void ClearSavedWonderCard(void); +static bool32 ValidateWonderNews(const struct WonderNews *); +static bool32 ValidateWonderCard(const struct WonderCard *); +static void ClearSavedWonderCardMetadata(void); +static void ClearSavedTrainerIds(void); +static void IncrementCardStatForNewTrainer(u32, u32, u32 *, int); #define CALC_CRC(data) CalcCRC16WithTable((void *)&(data), sizeof(data)) -void sub_801AFD8(void) +void ClearMysteryGift(void) { CpuFill32(0, &gSaveBlock1Ptr->mysteryGift, sizeof(gSaveBlock1Ptr->mysteryGift)); - sub_801B180(); + ClearSavedWonderNewsMetadata(); // Clear is redundant, InitSavedWonderNews would be sufficient InitQuestionnaireWords(); } @@ -41,14 +41,14 @@ struct WonderCard *GetSavedWonderCard(void) return &gSaveBlock1Ptr->mysteryGift.card; } -struct MEventBuffer_3430 *sav1_get_mevent_buffer_2(void) +struct WonderCardMetadata *GetSavedWonderCardMetadata(void) { - return &gSaveBlock1Ptr->mysteryGift.unk_3430; + return &gSaveBlock1Ptr->mysteryGift.cardMetadata; } -struct MysteryEventStruct *sub_801B044(void) +struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void) { - return &gSaveBlock1Ptr->mysteryGift.unk_340; + return &gSaveBlock1Ptr->mysteryGift.newsMetadata; } u16 *GetQuestionnaireWordsPtr(void) @@ -56,9 +56,10 @@ u16 *GetQuestionnaireWordsPtr(void) return gSaveBlock1Ptr->mysteryGift.questionnaireWords; } -void ClearSavedWonderNews(void) +// Equivalent to ClearSavedWonderCardAndRelated, but nothing else to clear +void ClearSavedWonderNewsAndRelated(void) { - ClearSavedWonderNewsInternal(); + ClearSavedWonderNews(); } bool32 SaveWonderNews(const struct WonderNews *news) @@ -66,7 +67,7 @@ bool32 SaveWonderNews(const struct WonderNews *news) if (!ValidateWonderNews(news)) return FALSE; - ClearSavedWonderNewsInternal(); + ClearSavedWonderNews(); gSaveBlock1Ptr->mysteryGift.news = *news; gSaveBlock1Ptr->mysteryGift.newsCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.news); return TRUE; @@ -90,65 +91,65 @@ static bool32 ValidateWonderNews(const struct WonderNews *data) return TRUE; } -bool32 WonderNews_Test_Unk_02(void) +bool32 IsSendingSavedWonderNewsAllowed(void) { const struct WonderNews *data = &gSaveBlock1Ptr->mysteryGift.news; - if (data->unk_02 == 0) + if (data->sendType == SEND_TYPE_DISALLOWED) return FALSE; return TRUE; } -static void ClearSavedWonderNewsInternal(void) +static void ClearSavedWonderNews(void) { CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->mysteryGift.news)); gSaveBlock1Ptr->mysteryGift.newsCrc = 0; } -static void sub_801B180(void) +static void ClearSavedWonderNewsMetadata(void) { - CpuFill32(0, sub_801B044(), sizeof(struct MysteryEventStruct)); - sub_801DBC0(); + CpuFill32(0, GetSavedWonderNewsMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.newsMetadata)); + InitSavedWonderNews(); } -bool32 sub_801B1A4(const u8 *src) +bool32 IsWonderNewsSameAsSaved(const u8 *news) { - const u8 *r5 = (const u8 *)&gSaveBlock1Ptr->mysteryGift.news; + const u8 *savedNews = (const u8 *)&gSaveBlock1Ptr->mysteryGift.news; u32 i; if (!ValidateSavedWonderNews()) return FALSE; - for (i = 0; i < sizeof(struct WonderNews); i++) + for (i = 0; i < sizeof(gSaveBlock1Ptr->mysteryGift.news); i++) { - if (r5[i] != src[i]) + if (savedNews[i] != news[i]) return FALSE; } return TRUE; } -void ClearSavedWonderCard(void) +void ClearSavedWonderCardAndRelated(void) { - InitSavedWonderCard(); - sub_801B368(); - sub_801B9F8(); + ClearSavedWonderCard(); + ClearSavedWonderCardMetadata(); + ClearSavedTrainerIds(); ClearRamScript(); - ClearMysteryEventFlags(); - ClearMysteryEventVars(); + ClearMysteryGiftFlags(); + ClearMysteryGiftVars(); ClearEReaderTrainer(&gSaveBlock2Ptr->frontier.ereaderTrainer); } bool32 SaveWonderCard(const struct WonderCard *card) { - struct MEventBuffer_3430 *r2; + struct WonderCardMetadata *metadata; if (!ValidateWonderCard(card)) return FALSE; - ClearSavedWonderCard(); + ClearSavedWonderCardAndRelated(); memcpy(&gSaveBlock1Ptr->mysteryGift.card, card, sizeof(struct WonderCard)); gSaveBlock1Ptr->mysteryGift.cardCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.card); - r2 = &gSaveBlock1Ptr->mysteryGift.unk_3430; - r2->unk_06 = (&gSaveBlock1Ptr->mysteryGift.card)->unk_02; + metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + metadata->iconSpecies = (&gSaveBlock1Ptr->mysteryGift.card)->iconSpecies; return TRUE; } @@ -168,37 +169,39 @@ static bool32 ValidateWonderCard(const struct WonderCard *card) { if (card->flagId == 0) return FALSE; - if (card->unk_08_0 > 2) + if (card->type >= CARD_TYPE_COUNT) return FALSE; - if (!(card->unk_08_6 == 0 || card->unk_08_6 == 1 || card->unk_08_6 == 2)) + if (!(card->sendType == SEND_TYPE_DISALLOWED + || card->sendType == SEND_TYPE_ALLOWED + || card->sendType == SEND_TYPE_ALLOWED_ALWAYS)) return FALSE; if (card->bgType >= NUM_WONDER_BGS) return FALSE; - if (card->unk_09 > 7) + if (card->maxStamps > MAX_CARD_STAMPS) return FALSE; return TRUE; } -bool32 WonderCard_Test_Unk_08_6(void) +bool32 IsSendingSavedWonderCardAllowed(void) { const struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_6 == 0) + if (card->sendType == SEND_TYPE_DISALLOWED) return FALSE; return TRUE; } -static void InitSavedWonderCard(void) +static void ClearSavedWonderCard(void) { CpuFill32(0, &gSaveBlock1Ptr->mysteryGift.card, sizeof(gSaveBlock1Ptr->mysteryGift.card)); gSaveBlock1Ptr->mysteryGift.cardCrc = 0; } -static void sub_801B368(void) +static void ClearSavedWonderCardMetadata(void) { - CpuFill32(0, sav1_get_mevent_buffer_2(), 18 *sizeof(u16)); - gSaveBlock1Ptr->mysteryGift.unkCrc = 0; + CpuFill32(0, GetSavedWonderCardMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.cardMetadata)); + gSaveBlock1Ptr->mysteryGift.cardMetadataCrc = 0; } u16 GetWonderCardFlagID(void) @@ -209,124 +212,126 @@ u16 GetWonderCardFlagID(void) return 0; } -void WonderCard_ResetInternalReceivedFlag(struct WonderCard *buffer) +void DisableWonderCardSending(struct WonderCard *card) { - if (buffer->unk_08_6 == 1) - buffer->unk_08_6 = 0; + if (card->sendType == SEND_TYPE_ALLOWED) + card->sendType = SEND_TYPE_DISALLOWED; } static bool32 IsWonderCardFlagIDInValidRange(u16 flagId) { - if (flagId >= 1000 && flagId < 1000 + NUM_MYSTERY_GIFT_FLAGS) + if (flagId >= WONDER_CARD_FLAG_OFFSET && flagId < WONDER_CARD_FLAG_OFFSET + NUM_WONDER_CARD_FLAGS) return TRUE; return FALSE; } -static const u16 sMysteryGiftFlags[] = +static const u16 sReceivedGiftFlags[] = { FLAG_RECEIVED_AURORA_TICKET, FLAG_RECEIVED_MYSTIC_TICKET, FLAG_RECEIVED_OLD_SEA_MAP, - FLAG_MYSTERY_GIFT_UNUSED_1, - FLAG_MYSTERY_GIFT_UNUSED_2, - FLAG_MYSTERY_GIFT_UNUSED_3, - FLAG_MYSTERY_GIFT_UNUSED_4, - FLAG_MYSTERY_GIFT_UNUSED_5, - FLAG_MYSTERY_GIFT_UNUSED_6, - FLAG_MYSTERY_GIFT_UNUSED_7, - FLAG_MYSTERY_GIFT_UNUSED_8, - FLAG_MYSTERY_GIFT_UNUSED_9, - FLAG_MYSTERY_GIFT_UNUSED_10, - FLAG_MYSTERY_GIFT_UNUSED_11, - FLAG_MYSTERY_GIFT_UNUSED_12, - FLAG_MYSTERY_GIFT_UNUSED_13, - FLAG_MYSTERY_GIFT_UNUSED_14, - FLAG_MYSTERY_GIFT_UNUSED_15, - FLAG_MYSTERY_GIFT_UNUSED_16, - FLAG_MYSTERY_GIFT_UNUSED_17, + FLAG_WONDER_CARD_UNUSED_1, + FLAG_WONDER_CARD_UNUSED_2, + FLAG_WONDER_CARD_UNUSED_3, + FLAG_WONDER_CARD_UNUSED_4, + FLAG_WONDER_CARD_UNUSED_5, + FLAG_WONDER_CARD_UNUSED_6, + FLAG_WONDER_CARD_UNUSED_7, + FLAG_WONDER_CARD_UNUSED_8, + FLAG_WONDER_CARD_UNUSED_9, + FLAG_WONDER_CARD_UNUSED_10, + FLAG_WONDER_CARD_UNUSED_11, + FLAG_WONDER_CARD_UNUSED_12, + FLAG_WONDER_CARD_UNUSED_13, + FLAG_WONDER_CARD_UNUSED_14, + FLAG_WONDER_CARD_UNUSED_15, + FLAG_WONDER_CARD_UNUSED_16, + FLAG_WONDER_CARD_UNUSED_17, }; -bool32 CheckReceivedGiftFromWonderCard(void) +bool32 IsSavedWonderCardGiftNotReceived(void) { u16 value = GetWonderCardFlagID(); if (!IsWonderCardFlagIDInValidRange(value)) return FALSE; - if (FlagGet(sMysteryGiftFlags[value - 1000]) == TRUE) + // If flag is set, player has received gift from this card + if (FlagGet(sReceivedGiftFlags[value - WONDER_CARD_FLAG_OFFSET]) == TRUE) return FALSE; return TRUE; } -static int sub_801B438(const struct MEventBuffer_3430 *data, int size) +static int GetNumStampsInMetadata(const struct WonderCardMetadata *data, int size) { - int r3 = 0; + int numStamps = 0; int i; for (i = 0; i < size; i++) { - if (data->unk_08[1][i] && data->unk_08[0][i]) - r3++; + if (data->stampData[STAMP_ID][i] && data->stampData[STAMP_SPECIES][i] != SPECIES_NONE) + numStamps++; } - return r3; + return numStamps; } -static bool32 sub_801B460(const struct MEventBuffer_3430 *data1, const u16 *data2, int size) +static bool32 IsStampInMetadata(const struct WonderCardMetadata *metadata, const u16 *stamp, int maxStamps) { int i; - for (i = 0; i < size; i++) + for (i = 0; i < maxStamps; i++) { - if (data1->unk_08[1][i] == data2[1]) + if (metadata->stampData[STAMP_ID][i] == stamp[STAMP_ID]) return TRUE; - if (data1->unk_08[0][i] == data2[0]) + if (metadata->stampData[STAMP_SPECIES][i] == stamp[STAMP_SPECIES]) return TRUE; } return FALSE; } -static bool32 sub_801B4A4(const u16 *data) +static bool32 ValidateStamp(const u16 *stamp) { - if (data[1] == 0) + if (stamp[STAMP_ID] == 0) return FALSE; - if (data[0] == 0) + if (stamp[STAMP_SPECIES] == SPECIES_NONE) return FALSE; - if (data[0] >= NUM_SPECIES) + if (stamp[STAMP_SPECIES] >= NUM_SPECIES) return FALSE; return TRUE; } -static int sub_801B4CC(void) +static int GetNumStampsInSavedCard(void) { - struct WonderCard *data; + struct WonderCard *card; if (!ValidateSavedWonderCard()) return 0; - data = &gSaveBlock1Ptr->mysteryGift.card; - if (data->unk_08_0 != 1) + card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type != CARD_TYPE_STAMP) return 0; - return sub_801B438(&gSaveBlock1Ptr->mysteryGift.unk_3430, data->unk_09); + return GetNumStampsInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, card->maxStamps); } -bool32 sub_801B508(const u16 *data) +bool32 MysteryGift_TrySaveStamp(const u16 *stamp) { - struct WonderCard *buffer = &gSaveBlock1Ptr->mysteryGift.card; - int size = buffer->unk_09; + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + int maxStamps = card->maxStamps; int i; - if (!sub_801B4A4(data)) + if (!ValidateStamp(stamp)) return FALSE; - if (sub_801B460(&gSaveBlock1Ptr->mysteryGift.unk_3430, data, size)) + if (IsStampInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, stamp, maxStamps)) return FALSE; - for (i = 0; i < size; i++) + for (i = 0; i < maxStamps; i++) { - if (gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[1][i] == 0 && gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[0][i] == 0) + if (gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] == 0 + && gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] == SPECIES_NONE) { - gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[1][i] = data[1]; - gSaveBlock1Ptr->mysteryGift.unk_3430.unk_08[0][i] = data[0]; + gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] = stamp[STAMP_ID]; + gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] = stamp[STAMP_SPECIES]; return TRUE; } } @@ -334,10 +339,10 @@ bool32 sub_801B508(const u16 *data) return FALSE; } -void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 isWonderNews) +void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews) { int i; - CpuFill32(0, data, sizeof(struct MEventStruct_Unk1442CC)); + CpuFill32(0, data, sizeof(*data)); data->unk_00 = 0x101; data->unk_04 = 1; data->unk_08 = 1; @@ -355,13 +360,13 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 isWonderNews) if (ValidateSavedWonderCard()) { - data->unk_14 = GetSavedWonderCard()->flagId; - data->unk_20 = *sav1_get_mevent_buffer_2(); - data->unk_44 = GetSavedWonderCard()->unk_09; + data->flagId = GetSavedWonderCard()->flagId; + data->cardMetadata = *GetSavedWonderCardMetadata(); + data->maxStamps = GetSavedWonderCard()->maxStamps; } else { - data->unk_14 = 0; + data->flagId = 0; } for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) @@ -372,11 +377,11 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 isWonderNews) for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) data->easyChatProfile[i] = gSaveBlock1Ptr->easyChatProfile[i]; - memcpy(data->romHeaderGameCode, RomHeaderGameCode, 4); + memcpy(data->romHeaderGameCode, RomHeaderGameCode, GAME_CODE_LENGTH); data->romHeaderSoftwareVersion = RomHeaderSoftwareVersion; } -bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1) +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 forNews) { if (data->unk_00 != 0x101) return FALSE; @@ -387,7 +392,7 @@ bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1) if (!(data->unk_08 & 1)) return FALSE; - if (!a1) + if (!forNews) { if (!(data->unk_0C & 4)) return FALSE; @@ -399,30 +404,43 @@ bool32 sub_801B6A0(const struct MEventStruct_Unk1442CC *data, bool32 a1) return TRUE; } -u32 sub_801B6EC(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused) +u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused) { - if (a1->unk_14 == 0) - return 0; + // Has a Wonder Card already? + if (data->flagId == 0) + return HAS_NO_CARD; - if (*a0 == a1->unk_14) - return 1; + // Has this Wonder Card already? + if (*flagId == data->flagId) + return HAS_SAME_CARD; - return 2; + // Player has a different Wonder Card + return HAS_DIFF_CARD; } -u32 sub_801B708(const u16 *a0, const struct MEventStruct_Unk1442CC *a1, const void *unused) +// This is referenced by the Mystery Gift server, but the instruction it's referenced in is never used, +// so the return values here are never checked by anything. +u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused) { - int r4 = a1->unk_44 - sub_801B438(&a1->unk_20, a1->unk_44); - if (r4 == 0) + int stampsMissing = data->maxStamps - GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); + + // Has full stamp card? + if (stampsMissing == 0) return 1; - if (sub_801B460(&a1->unk_20, a0, a1->unk_44)) + + // Already has stamp? + if (IsStampInMetadata(&data->cardMetadata, stamp, data->maxStamps)) return 3; - if (r4 == 1) + + // Only 1 empty stamp left? + if (stampsMissing == 1) return 4; + + // This is a new stamp return 2; } -bool32 MysteryGift_DoesQuestionnaireMatch(const struct MEventStruct_Unk1442CC *data, const u16 *words) +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words) { int i; for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) @@ -434,127 +452,122 @@ bool32 MysteryGift_DoesQuestionnaireMatch(const struct MEventStruct_Unk1442CC *d return TRUE; } -static int sub_801B770(const struct MEventStruct_Unk1442CC *a0) +static int GetNumStampsInLinkData(const struct MysteryGiftLinkGameData *data) { - return sub_801B438(&a0->unk_20, a0->unk_44); + return GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); } -u16 MEventStruct_Unk1442CC_GetValueNFrom_unk_20(const struct MEventStruct_Unk1442CC *a0, u32 command) +u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat) { - switch (command) + switch (stat) { - case 0: - return a0->unk_20.unk_00; - case 1: - return a0->unk_20.unk_02; - case 2: - return a0->unk_20.unk_04; - case 3: - return sub_801B770(a0); - case 4: - return a0->unk_44; + case CARD_STAT_BATTLES_WON: + return data->cardMetadata.battlesWon; + case CARD_STAT_BATTLES_LOST: + return data->cardMetadata.battlesLost; + case CARD_STAT_NUM_TRADES: + return data->cardMetadata.numTrades; + case CARD_STAT_NUM_STAMPS: + return GetNumStampsInLinkData(data); + case CARD_STAT_MAX_STAMPS: + return data->maxStamps; default: AGB_ASSERT(0); return 0; } } -static void sub_801B7D8(u32 command) +static void IncrementCardStat(u32 statType) { - struct WonderCard *data = &gSaveBlock1Ptr->mysteryGift.card; - if (data->unk_08_0 == 2) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) { - u16 *dest = NULL; - switch (command) + u16 *stat = NULL; + switch (statType) { - case 0: - dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_00; - break; - case 1: - dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_02; + case CARD_STAT_BATTLES_WON: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesWon; break; - case 2: - dest = &gSaveBlock1Ptr->mysteryGift.unk_3430.unk_04; + case CARD_STAT_BATTLES_LOST: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesLost; break; - case 3: + case CARD_STAT_NUM_TRADES: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.numTrades; break; - case 4: + case CARD_STAT_NUM_STAMPS: // Unused + case CARD_STAT_MAX_STAMPS: // Unused break; } - if (dest == NULL) - { + if (stat == NULL) AGB_ASSERT(0); - } - else if (++(*dest) > 999) - { - *dest = 999; - } + else if (++(*stat) > MAX_WONDER_CARD_STAT) + *stat = MAX_WONDER_CARD_STAT; } } -u16 mevent_081445C0(u32 command) +u16 MysteryGift_GetCardStat(u32 stat) { - switch (command) + switch (stat) { - case GET_CARD_BATTLES_WON_INTERNAL: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_0 == 2) - { - struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; - return buffer->unk_00; - } - break; - } - case 1: // Never occurs - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_0 == 2) - { - struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; - return buffer->unk_02; - } - break; - } - case 2: // Never occurs + case CARD_STAT_BATTLES_WON: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_0 == 2) - { - struct MEventBuffer_3430 *buffer = &gSaveBlock1Ptr->mysteryGift.unk_3430; - return buffer->unk_04; - } - break; + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->battlesWon; } - case GET_NUM_STAMPS_INTERNAL: + break; + } + case CARD_STAT_BATTLES_LOST: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_0 == 1) - return sub_801B4CC(); - break; + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->battlesLost; } - case GET_MAX_STAMPS_INTERNAL: + break; + } + case CARD_STAT_NUM_TRADES: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->unk_08_0 == 1) - return card->unk_09; - break; + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->numTrades; } + break; + } + case CARD_STAT_NUM_STAMPS: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_STAMP) + return GetNumStampsInSavedCard(); + break; + } + case CARD_STAT_MAX_STAMPS: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_STAMP) + return card->maxStamps; + break; + } } AGB_ASSERT(0); return 0; } -void ResetReceivedWonderCardFlag(void) +void MysteryGift_DisableStats(void) { - gUnknown_02022C70 = FALSE; + sStatsEnabled = FALSE; } -bool32 MEventHandleReceivedWonderCard(u16 flagId) +bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId) { - gUnknown_02022C70 = FALSE; + sStatsEnabled = FALSE; if (flagId == 0) return FALSE; @@ -564,67 +577,80 @@ bool32 MEventHandleReceivedWonderCard(u16 flagId) if (gSaveBlock1Ptr->mysteryGift.card.flagId != flagId) return FALSE; - gUnknown_02022C70 = TRUE; + sStatsEnabled = TRUE; return TRUE; } -void RecordIdOfWonderCardSenderByEventType(u32 a0, u32 a1) +void TryIncrementMysteryGiftStat(u32 stat, u32 trainerId) { - if (gUnknown_02022C70) + if (sStatsEnabled) { - switch (a0) + switch (stat) { - case 2: - sub_801BA8C(2, a1, gSaveBlock1Ptr->mysteryGift.unk_344[1], 5); + case CARD_STAT_NUM_TRADES: + IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[1], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[1])); break; - case 0: - sub_801BA8C(0, a1, gSaveBlock1Ptr->mysteryGift.unk_344[0], 5); + case CARD_STAT_BATTLES_WON: + IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_WON, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[0], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); break; - case 1: - sub_801BA8C(1, a1, gSaveBlock1Ptr->mysteryGift.unk_344[0], 5); + case CARD_STAT_BATTLES_LOST: + IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_LOST, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[0], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); break; default: AGB_ASSERT(0); + break; } } } -static void sub_801B9F8(void) +static void ClearSavedTrainerIds(void) { - CpuFill32(0, gSaveBlock1Ptr->mysteryGift.unk_344, sizeof(gSaveBlock1Ptr->mysteryGift.unk_344)); + CpuFill32(0, gSaveBlock1Ptr->mysteryGift.trainerIds, sizeof(gSaveBlock1Ptr->mysteryGift.trainerIds)); } -static bool32 sub_801BA24(u32 a0, u32 *a1, int size) +// Returns TRUE if it's a new trainer id, FALSE if an existing one. +// In either case the given trainerId is saved in element 0 +static bool32 RecordTrainerId(u32 trainerId, u32 *trainerIds, int size) { - int i; - int j; + int i, j; for (i = 0; i < size; i++) { - if (a1[i] == a0) + if (trainerIds[i] == trainerId) break; } if (i == size) { + // New trainer, shift array and insert new id at front for (j = size - 1; j > 0; j--) - a1[j] = a1[j - 1]; + trainerIds[j] = trainerIds[j - 1]; - a1[0] = a0; + trainerIds[0] = trainerId; return TRUE; } else { + // Existing trainer, shift back to old slot and move id to front for (j = i; j > 0; j--) - a1[j] = a1[j - 1]; + trainerIds[j] = trainerIds[j - 1]; - a1[0] = a0; + trainerIds[0] = trainerId; return FALSE; } } -static void sub_801BA8C(u32 a0, u32 a1, u32 *a2, int a3) +static void IncrementCardStatForNewTrainer(u32 stat, u32 trainerId, u32 *trainerIds, int size) { - if (sub_801BA24(a1, a2, a3)) - sub_801B7D8(a0); + if (RecordTrainerId(trainerId, trainerIds, size)) + IncrementCardStat(stat); } diff --git a/src/mevent_client.c b/src/mevent_client.c index 2bcab1e5ac96..e260f073ffd5 100644 --- a/src/mevent_client.c +++ b/src/mevent_client.c @@ -15,8 +15,8 @@ enum { FUNC_SEND, FUNC_RUN, FUNC_WAIT, - FUNC_6, - FUNC_7, + FUNC_RUN_GIFT_SCRIPT, + FUNC_RUN_BUFF_SCRIPT, }; EWRAM_DATA static struct MysteryGiftClient * sClient = NULL; @@ -25,7 +25,7 @@ static void MysteryGiftClient_Init(struct MysteryGiftClient *, u32, u32); static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient *); static void MysteryGiftClient_Free(struct MysteryGiftClient *); -extern const struct MysteryGiftClientCmd gUnknown_082F2598[]; +extern const struct MysteryGiftClientCmd gMysteryGiftClientScript_Init[]; void MysteryGiftClient_Create(bool32 isWonderNews) { @@ -55,9 +55,9 @@ void MysteryGiftClient_AdvanceState(void) sClient->funcState++; } -void * mevent_client_get_buffer(void) +void * MysteryGiftClient_GetMsg(void) { - return sClient->buffer; + return sClient->msg; } void MysteryGiftClient_SetParam(u32 val) @@ -65,42 +65,42 @@ void MysteryGiftClient_SetParam(u32 val) sClient->param = val; } -static void MysteryGiftClient_Init(struct MysteryGiftClient * client, u32 sendPlayerNo, u32 recvPlayerNo) +static void MysteryGiftClient_Init(struct MysteryGiftClient * client, u32 sendPlayerId, u32 recvPlayerId) { - client->unk_00 = 0; + client->unused = 0; client->funcId = FUNC_INIT; client->funcState = 0; - client->sendBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - client->recvBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - client->cmdBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - client->buffer = AllocZeroed(0x40); - MysteryGiftLink_Init(&client->link, sendPlayerNo, recvPlayerNo); + client->sendBuffer = AllocZeroed(MG_LINK_BUFFER_SIZE); + client->recvBuffer = AllocZeroed(MG_LINK_BUFFER_SIZE); + client->script = AllocZeroed(MG_LINK_BUFFER_SIZE); + client->msg = AllocZeroed(CLIENT_MAX_MSG_SIZE); + MysteryGiftLink_Init(&client->link, sendPlayerId, recvPlayerId); } static void MysteryGiftClient_Free(struct MysteryGiftClient * client) { Free(client->sendBuffer); Free(client->recvBuffer); - Free(client->cmdBuffer); - Free(client->buffer); + Free(client->script); + Free(client->msg); } static void MysteryGiftClient_CopyRecvScript(struct MysteryGiftClient * client) { - memcpy(client->cmdBuffer, client->recvBuffer, ME_SEND_BUF_SIZE); + memcpy(client->script, client->recvBuffer, MG_LINK_BUFFER_SIZE); client->cmdidx = 0; } -static void MysteryGiftClient_InitSend(struct MysteryGiftClient * client, u32 ident, u32 word) +static void MysteryGiftClient_InitSendWord(struct MysteryGiftClient * client, u32 ident, u32 word) { - CpuFill32(0, client->sendBuffer, ME_SEND_BUF_SIZE); + CpuFill32(0, client->sendBuffer, MG_LINK_BUFFER_SIZE); *(u32 *)client->sendBuffer = word; - MysteryGiftLink_InitSend(&client->link, ident, client->sendBuffer, sizeof(u32)); + MysteryGiftLink_InitSend(&client->link, ident, client->sendBuffer, sizeof(word)); } static u32 Client_Init(struct MysteryGiftClient * client) { - memcpy(client->cmdBuffer, gUnknown_082F2598, ME_SEND_BUF_SIZE); + memcpy(client->script, gMysteryGiftClientScript_Init, MG_LINK_BUFFER_SIZE); client->cmdidx = 0; client->funcId = FUNC_RUN; client->funcState = 0; @@ -120,7 +120,7 @@ static u32 Client_Recv(struct MysteryGiftClient * client) client->funcId = FUNC_RUN; client->funcState = 0; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } static u32 Client_Send(struct MysteryGiftClient * client) @@ -130,13 +130,13 @@ static u32 Client_Send(struct MysteryGiftClient * client) client->funcId = FUNC_RUN; client->funcState = 0; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } static u32 Client_Run(struct MysteryGiftClient * client) { // process command - struct MysteryGiftClientCmd * cmd = &client->cmdBuffer[client->cmdidx]; + struct MysteryGiftClientCmd * cmd = &client->script[client->cmdidx]; client->cmdidx++; switch (cmd->instr) { @@ -158,13 +158,13 @@ static u32 Client_Run(struct MysteryGiftClient * client) client->funcId = FUNC_SEND; client->funcState = 0; break; - case CLI_20: - MysteryGiftLink_InitSend(&client->link, 0x14, client->sendBuffer, 0); + case CLI_SEND_READY_END: + MysteryGiftLink_InitSend(&client->link, MG_LINKID_READY_END, client->sendBuffer, 0); client->funcId = FUNC_SEND; client->funcState = 0; break; case CLI_SEND_STAT: - MysteryGiftClient_InitSend(client, 0x12, GetGameStat(cmd->parameter)); + MysteryGiftClient_InitSendWord(client, MG_LINKID_GAME_STAT, GetGameStat(cmd->parameter)); client->funcId = FUNC_SEND; client->funcState = 0; break; @@ -179,67 +179,71 @@ static u32 Client_Run(struct MysteryGiftClient * client) case CLI_COPY_RECV: MysteryGiftClient_CopyRecvScript(client); break; - case CLI_5: - memcpy(client->buffer, client->recvBuffer, 0x40); + case CLI_YES_NO: + memcpy(client->msg, client->recvBuffer, CLIENT_MAX_MSG_SIZE); client->funcId = FUNC_WAIT; client->funcState = 0; - return CLI_RET_2; - case CLI_11: - memcpy(client->buffer, client->recvBuffer, 0x40); + return CLI_RET_YES_NO; + case CLI_PRINT_MSG: + memcpy(client->msg, client->recvBuffer, CLIENT_MAX_MSG_SIZE); client->funcId = FUNC_WAIT; client->funcState = 0; - return CLI_RET_3; - case CLI_12: - memcpy(client->buffer, client->recvBuffer, 0x40); + return CLI_RET_PRINT_MSG; + case CLI_COPY_MSG: + memcpy(client->msg, client->recvBuffer, CLIENT_MAX_MSG_SIZE); client->funcId = FUNC_WAIT; client->funcState = 0; - return CLI_RET_5; + return CLI_RET_COPY_MSG; case CLI_ASK_TOSS: client->funcId = FUNC_WAIT; client->funcState = 0; return CLI_RET_ASK_TOSS; - case CLI_8: - sub_801B580(client->sendBuffer, client->isWonderNews); - MysteryGiftLink_InitSend(&client->link, 0x11, client->sendBuffer, sizeof(struct MEventStruct_Unk1442CC)); + case CLI_LOAD_GAME_DATA: + MysteryGift_LoadLinkGameData(client->sendBuffer, client->isWonderNews); + MysteryGiftLink_InitSend(&client->link, MG_LINKID_GAME_DATA, client->sendBuffer, sizeof(struct MysteryGiftLinkGameData)); break; case CLI_LOAD_TOSS_RESPONSE: // param here is set by MG_STATE_LINK_ASK_TOSS or MG_STATE_LINK_ASK_TOSS_UNRECEIVED - MysteryGiftClient_InitSend(client, 0x13, client->param); + MysteryGiftClient_InitSendWord(client, MG_LINKID_RESPONSE, client->param); break; - case CLI_10: + case CLI_SAVE_CARD: SaveWonderCard(client->recvBuffer); break; - case CLI_9: - if (!sub_801B1A4(client->recvBuffer)) + case CLI_SAVE_NEWS: + if (!IsWonderNewsSameAsSaved(client->recvBuffer)) { SaveWonderNews(client->recvBuffer); - MysteryGiftClient_InitSend(client, 0x13, 0); + MysteryGiftClient_InitSendWord(client, MG_LINKID_RESPONSE, FALSE); } else - MysteryGiftClient_InitSend(client, 0x13, 1); + { + // Wonder News has already been saved (or is invalid). + // Prepare a signal to indicate it was not saved. + MysteryGiftClient_InitSendWord(client, MG_LINKID_RESPONSE, TRUE); + } break; - case CLI_15: - client->funcId = FUNC_6; + case CLI_RUN_GIFT_SCRIPT: + client->funcId = FUNC_RUN_GIFT_SCRIPT; client->funcState = 0; break; - case CLI_16: - sub_801B508(client->recvBuffer); + case CLI_SAVE_STAMP: + MysteryGift_TrySaveStamp(client->recvBuffer); break; - case CLI_17: + case CLI_SAVE_RAM_SCRIPT: InitRamScript_NoObjectEvent(client->recvBuffer, 1000); break; case CLI_RECV_EREADER_TRAINER: memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, client->recvBuffer, sizeof(gSaveBlock2Ptr->frontier.ereaderTrainer)); ValidateEReaderTrainer(); break; - case CLI_21: - memcpy(gDecompressionBuffer, client->recvBuffer, ME_SEND_BUF_SIZE); - client->funcId = FUNC_7; + case CLI_RUN_BUFFER_SCRIPT: + memcpy(gDecompressionBuffer, client->recvBuffer, MG_LINK_BUFFER_SIZE); + client->funcId = FUNC_RUN_BUFF_SCRIPT; client->funcState = 0; break; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } static u32 Client_Wait(struct MysteryGiftClient * client) @@ -249,10 +253,10 @@ static u32 Client_Wait(struct MysteryGiftClient * client) client->funcId = FUNC_RUN; client->funcState = 0; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } -static u32 Client_6(struct MysteryGiftClient * client) +static u32 Client_RunGiftScript(struct MysteryGiftClient * client) { switch (client->funcState) { @@ -268,10 +272,10 @@ static u32 Client_6(struct MysteryGiftClient * client) } break; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } -static u32 Client_7(struct MysteryGiftClient * client) +static u32 Client_RunBufferScript(struct MysteryGiftClient * client) { // exec arbitrary code u32 (*func)(u32 *, struct SaveBlock2 *, struct SaveBlock1 *) = (void *)gDecompressionBuffer; @@ -280,7 +284,7 @@ static u32 Client_7(struct MysteryGiftClient * client) client->funcId = FUNC_RUN; client->funcState = 0; } - return CLI_RET_1; + return CLI_RET_ACTIVE; } static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient * client) @@ -292,8 +296,8 @@ static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient * client) [FUNC_SEND] = Client_Send, [FUNC_RUN] = Client_Run, [FUNC_WAIT] = Client_Wait, - [FUNC_6] = Client_6, - [FUNC_7] = Client_7 + [FUNC_RUN_GIFT_SCRIPT] = Client_RunGiftScript, + [FUNC_RUN_BUFF_SCRIPT] = Client_RunBufferScript }; return funcs[client->funcId](client); } diff --git a/src/mevent_news.c b/src/mevent_news.c index 13d50bb0dff5..0fbb9452d6d9 100644 --- a/src/mevent_news.c +++ b/src/mevent_news.c @@ -4,51 +4,51 @@ #include "event_data.h" #include "mevent_news.h" -static u32 sub_801DCAC(struct MysteryEventStruct *); -static void sub_801DD10(struct MysteryEventStruct *); -static u32 sub_801DD44(struct MysteryEventStruct *); -static void sub_801DCD8(struct MysteryEventStruct *); -static void sub_801DCCC(struct MysteryEventStruct *); +static u32 sub_801DCAC(struct WonderNewsMetadata *); +static void sub_801DD10(struct WonderNewsMetadata *); +static u32 sub_801DD44(struct WonderNewsMetadata *); +static void sub_801DCD8(struct WonderNewsMetadata *); +static void sub_801DCCC(struct WonderNewsMetadata *); -void GenerateRandomNews(u32 a0) +void GenerateRandomWonderNews(u32 a0) { - struct MysteryEventStruct *r5 = sub_801B044(); + struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - r5->unk_0_0 = a0; + data->unk_0_0 = a0; switch (a0) { case 0: break; case 1: case 2: - r5->unk_1 = (Random() % 15) + 16; + data->unk_1 = (Random() % 15) + 16; break; case 3: - r5->unk_1 = (Random() % 15) + 1; + data->unk_1 = (Random() % 15) + 1; break; } } -void sub_801DBC0(void) +void InitSavedWonderNews(void) { - struct MysteryEventStruct *r5 = sub_801B044(); + struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - r5->unk_0_0 = 0; - r5->unk_0_2 = 0; - r5->unk_0_5 = 0; - r5->unk_1 = 0; + data->unk_0_0 = 0; + data->unk_0_2 = 0; + data->unk_0_5 = 0; + data->unk_1 = 0; VarSet(VAR_0x402E, 0); } void sub_801DBDC(void) { u16 *r4 = GetVarPointer(VAR_0x402E); - struct MysteryEventStruct *r2 = sub_801B044(); - struct MysteryEventStruct r0 = *r2; + struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); + struct WonderNewsMetadata r0 = *data; if ((u8)r0.unk_0_5 > 4 && ++(*r4) > 0x1f3) { - r2->unk_0_5 = 0; + data->unk_0_5 = 0; *r4 = 0; } } @@ -57,33 +57,33 @@ void sub_801DBDC(void) u16 sub_801DC20(void) { u16 *r6 = &gSpecialVar_Result; - struct MysteryEventStruct *r4 = sub_801B044(); + struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); u16 r5; if (!IsMysteryEventEnabled() || !ValidateSavedWonderNews()) return 0; - r5 = sub_801DD44(r4); + r5 = sub_801DD44(data); switch (r5) { case 0: break; case 1: - *r6 = sub_801DCAC(r4); + *r6 = sub_801DCAC(data); break; case 2: - *r6 = sub_801DCAC(r4); + *r6 = sub_801DCAC(data); break; case 3: break; case 4: - *r6 = sub_801DCAC(r4); - sub_801DCD8(r4); + *r6 = sub_801DCAC(data); + sub_801DCD8(data); break; case 5: - *r6 = sub_801DCAC(r4); - sub_801DCCC(r4); + *r6 = sub_801DCAC(data); + sub_801DCCC(data); break; case 6: break; @@ -92,43 +92,43 @@ u16 sub_801DC20(void) return r5; } -static u32 sub_801DCAC(struct MysteryEventStruct *a0) +static u32 sub_801DCAC(struct WonderNewsMetadata *data) { u32 r4; - a0->unk_0_0 = 0; - r4 = a0->unk_1 + 0x84; - a0->unk_1 = 0; - sub_801DD10(a0); + data->unk_0_0 = 0; + r4 = data->unk_1 + 0x84; + data->unk_1 = 0; + sub_801DD10(data); return r4; } -static void sub_801DCCC(struct MysteryEventStruct *a0) +static void sub_801DCCC(struct WonderNewsMetadata *data) { - a0->unk_0_2 = 0; + data->unk_0_2 = 0; } -static void sub_801DCD8(struct MysteryEventStruct *a0) +static void sub_801DCD8(struct WonderNewsMetadata *data) { - a0->unk_0_2++; - if ((u8)a0->unk_0_2 > 4) - a0->unk_0_2 = 4; + data->unk_0_2++; + if ((u8)data->unk_0_2 > 4) + data->unk_0_2 = 4; } -static void sub_801DD10(struct MysteryEventStruct *a0) +static void sub_801DD10(struct WonderNewsMetadata *data) { - a0->unk_0_5++; - if ((u8)a0->unk_0_5 > 5) - a0->unk_0_5 = 5; + data->unk_0_5++; + if ((u8)data->unk_0_5 > 5) + data->unk_0_5 = 5; } -static u32 sub_801DD44(struct MysteryEventStruct *a0) +static u32 sub_801DD44(struct WonderNewsMetadata *data) { - struct MysteryEventStruct r0; - if ((u8)a0->unk_0_5 == 5) + struct WonderNewsMetadata r0; + if ((u8)data->unk_0_5 == 5) return 6; - r0 = *a0; + r0 = *data; switch (r0.unk_0_0) { case 0: diff --git a/src/mevent_scripts.c b/src/mevent_scripts.c index ddeca8f41388..23e0d97a5675 100644 --- a/src/mevent_scripts.c +++ b/src/mevent_scripts.c @@ -1,195 +1,217 @@ #include "global.h" #include "mevent_client.h" #include "mevent_server.h" +#include "mevent.h" -const u8 gText_CanceledReadingCard[] = _("Canceled reading\nthe Card."); +static const u8 sText_CanceledReadingCard[] = _("Canceled reading\nthe Card."); -const struct MysteryGiftClientCmd gUnknown_082F2598[] = { - {.instr = CLI_RECV, .parameter = 16}, - {.instr = CLI_COPY_RECV} +//================== +// Client scripts +//================== + +const struct MysteryGiftClientCmd gMysteryGiftClientScript_Init[] = { + {CLI_RECV, MG_LINKID_CLIENT_SCRIPT}, + {CLI_COPY_RECV} +}; + +static const struct MysteryGiftClientCmd sClientScript_SendGameData[] = { + {CLI_LOAD_GAME_DATA}, + {CLI_SEND_LOADED}, + {CLI_RECV, MG_LINKID_CLIENT_SCRIPT}, + {CLI_COPY_RECV} +}; + +static const struct MysteryGiftClientCmd sClientScript_CantAccept[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_CANT_ACCEPT} }; -const struct MysteryGiftClientCmd gUnknown_082F25A8[] = { - {.instr = CLI_8}, - {.instr = CLI_SEND_LOADED}, - {.instr = CLI_RECV, .parameter = 16}, - {.instr = CLI_COPY_RECV} +static const struct MysteryGiftClientCmd sClientScript_CommError[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_COMM_ERROR} }; -const struct MysteryGiftClientCmd gUnknown_082F25C8[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 10} +static const struct MysteryGiftClientCmd sClientScript_NothingSent[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_NOTHING_SENT} }; -const struct MysteryGiftClientCmd gUnknown_082F25D8[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 11} +static const struct MysteryGiftClientCmd sClientScript_SaveCard[] = { + {CLI_RECV, MG_LINKID_CARD}, + {CLI_SAVE_CARD}, + {CLI_RECV, MG_LINKID_RAM_SCRIPT}, + {CLI_SAVE_RAM_SCRIPT}, + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_CARD_RECEIVED} }; -const struct MysteryGiftClientCmd gUnknown_082F25E8[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 0} +static const struct MysteryGiftClientCmd sClientScript_SaveNews[] = { + {CLI_RECV, MG_LINKID_NEWS}, + {CLI_SAVE_NEWS}, + {CLI_SEND_LOADED}, // Send whether or not the News was saved (read by sServerScript_SendNews) + {CLI_RECV, MG_LINKID_CLIENT_SCRIPT}, + {CLI_COPY_RECV} }; -const struct MysteryGiftClientCmd gUnknown_082F25F8[] = { - {.instr = CLI_RECV, .parameter = 22}, - {.instr = CLI_10}, - {.instr = CLI_RECV, .parameter = 25}, - {.instr = CLI_17}, - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 2} +static const struct MysteryGiftClientCmd sClientScript_HadNews[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_HAD_NEWS} }; -const struct MysteryGiftClientCmd gUnknown_082F2628[] = { - {.instr = CLI_RECV, .parameter = 23}, - {.instr = CLI_9}, - {.instr = CLI_SEND_LOADED}, - {.instr = CLI_RECV, .parameter = 16}, - {.instr = CLI_COPY_RECV} +static const struct MysteryGiftClientCmd sClientScript_NewsReceived[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_NEWS_RECEIVED} }; -const struct MysteryGiftClientCmd gUnknown_082F2650[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 7} +static const struct MysteryGiftClientCmd sClientScript_AskToss[] = { + {CLI_ASK_TOSS}, + {CLI_LOAD_TOSS_RESPONSE}, + {CLI_SEND_LOADED}, + {CLI_RECV, MG_LINKID_CLIENT_SCRIPT}, + {CLI_COPY_RECV} }; -const struct MysteryGiftClientCmd gUnknown_082F2660[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 3} +static const struct MysteryGiftClientCmd sClientScript_Canceled[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_COMM_CANCELED} }; -const struct MysteryGiftClientCmd gUnknown_082F2670[] = { - {.instr = CLI_ASK_TOSS}, - {.instr = CLI_LOAD_TOSS_RESPONSE}, - {.instr = CLI_SEND_LOADED}, - {.instr = CLI_RECV, .parameter = 16}, - {.instr = CLI_COPY_RECV} +static const struct MysteryGiftClientCmd sClientScript_HadCard[] = { + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_HAD_CARD} }; -const struct MysteryGiftClientCmd gUnknown_082F2698[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 9} +static const struct MysteryGiftClientCmd sClientScript_DynamicError[] = { + {CLI_RECV, MG_LINKID_DYNAMIC_MSG}, + {CLI_COPY_MSG}, + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_BUFFER_FAILURE} }; -const struct MysteryGiftClientCmd gUnknown_082F26A8[] = { - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 5} +static const struct MysteryGiftClientCmd sClientScript_DynamicSuccess[] = { + {CLI_RECV, MG_LINKID_DYNAMIC_MSG}, + {CLI_COPY_MSG}, + {CLI_SEND_READY_END}, + {CLI_RETURN, CLI_MSG_BUFFER_SUCCESS} }; -const struct MysteryGiftClientCmd gUnknown_082F26B8[] = { - {.instr = CLI_RECV, .parameter = 21}, - {.instr = CLI_12}, - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 14} + +//================== +// Server scripts +//================== + +// Create arguments for SVR_LOAD_CLIENT_SCRIPT or SVR_LOAD_MSG +// (a script/text size and pointer to send to the client) +#define PTR_ARG(pointer) .parameter = sizeof(pointer), .ptr = pointer + +static const struct MysteryGiftServerCmd sServerScript_CantSend[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_CantAccept)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_CANT_SEND_GIFT_1} }; -// Unused -const struct MysteryGiftClientCmd gUnknown_082F26B8_1[] = { - {.instr = CLI_RECV, .parameter = 21}, - {.instr = CLI_12}, - {.instr = CLI_20}, - {.instr = CLI_RETURN, .parameter = 13} +static const struct MysteryGiftServerCmd sServerScript_CommError[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_CommError)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_COMM_ERROR} +}; + +static const struct MysteryGiftServerCmd sServerScript_ClientCanceledNews[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_Canceled)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_CLIENT_CANCELED} +}; + +static const struct MysteryGiftServerCmd sServerScript_ClientCanceledCard[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_DynamicError)}, + {SVR_SEND}, + {SVR_LOAD_MSG, PTR_ARG(sText_CanceledReadingCard)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_CLIENT_CANCELED} +}; + +static const struct MysteryGiftServerCmd sServerScript_HasNews[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_HadNews)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_HAS_NEWS} +}; + +static const struct MysteryGiftServerCmd sServerScript_SendNews[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_SaveNews)}, + {SVR_SEND}, + {SVR_LOAD_NEWS}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_RESPONSE}, + {SVR_READ_RESPONSE}, + {SVR_GOTO_IF_EQ, TRUE, sServerScript_HasNews}, // Wonder News was not saved + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_NewsReceived)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_NEWS_SENT} }; -const struct mevent_cmd gUnknown_082F26F8[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F25C8), .parameter = gUnknown_082F25C8}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x0a}, - {.instr = 18, .flag = sizeof(gUnknown_082F25D8), .parameter = gUnknown_082F25D8}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x0b}, - {.instr = 18, .flag = sizeof(gUnknown_082F2698), .parameter = gUnknown_082F2698}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x09} -}; - -const struct mevent_cmd gUnknown_082F2788[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F26B8), .parameter = gUnknown_082F26B8}, - {.instr = 1}, - {.instr = 20, .flag = 0x1b, .parameter = gText_CanceledReadingCard}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x09} -}; - -const struct mevent_cmd gUnknown_082F27D0[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F2650), .parameter = gUnknown_082F2650}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x07} -}; - -const struct mevent_cmd gUnknown_082F2800[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F2628), .parameter = gUnknown_082F2628}, - {.instr = 1}, - {.instr = 14}, - {.instr = 1}, - {.instr = 2, .flag = 0x13}, - {.instr = 8}, - {.instr = 4, .flag = 0x01, .parameter = gUnknown_082F27D0}, - {.instr = 18, .flag = sizeof(gUnknown_082F2660), .parameter = gUnknown_082F2660}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x03} -}; - -const struct mevent_cmd gUnknown_082F2884[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F25F8), .parameter = gUnknown_082F25F8}, - {.instr = 1}, - {.instr = 13}, - {.instr = 1}, - {.instr = 15}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x02} -}; - -const struct mevent_cmd gUnknown_082F28E4[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F2670), .parameter = gUnknown_082F2670}, - {.instr = 1}, - {.instr = 2, .flag = 0x13}, - {.instr = 8}, - {.instr = 4, .parameter = gUnknown_082F2884}, - {.instr = 3, .parameter = gUnknown_082F2788} -}; - -const struct mevent_cmd gUnknown_082F292C[] = { - {.instr = 18, .flag = sizeof(gUnknown_082F26A8), .parameter = gUnknown_082F26A8}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0, .flag = 0x05}, - {.instr = 18, .flag = sizeof(gUnknown_082F25E8), .parameter = gUnknown_082F25E8}, - {.instr = 1}, - {.instr = 2, .flag = 0x14}, - {.instr = 0} -}; - -const struct mevent_cmd s_mevent_wonder_news[] = { - {.instr = 27}, - {.instr = 18, .flag = sizeof(gUnknown_082F25A8), .parameter = gUnknown_082F25A8}, - {.instr = 1}, - {.instr = 2, .flag = 0x11}, - {.instr = 5}, - {.instr = 30}, - {.instr = 4, .parameter = gUnknown_082F26F8}, - {.instr = 3, .parameter = gUnknown_082F2800} -}; - -const struct mevent_cmd s_mevent_wonder_card[] = { - {.instr = 26}, - {.instr = 28}, - {.instr = 18, .flag = sizeof(gUnknown_082F25A8), .parameter = gUnknown_082F25A8}, - {.instr = 1}, - {.instr = 2, .flag = 0x11}, - {.instr = 5}, - {.instr = 6}, - {.instr = 4, .parameter = gUnknown_082F26F8}, - {.instr = 7}, - {.instr = 4, .flag = 0x02, .parameter = gUnknown_082F28E4}, - {.instr = 4, .parameter = gUnknown_082F2884}, - {.instr = 3, .parameter = gUnknown_082F292C} +static const struct MysteryGiftServerCmd sServerScript_SendCard[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_SaveCard)}, + {SVR_SEND}, + {SVR_LOAD_CARD}, + {SVR_SEND}, + {SVR_LOAD_RAM_SCRIPT}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_CARD_SENT} +}; + +static const struct MysteryGiftServerCmd sServerScript_TossPrompt[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_AskToss)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_RESPONSE}, + {SVR_READ_RESPONSE}, + {SVR_GOTO_IF_EQ, FALSE, sServerScript_SendCard}, // Tossed old card, send new one + {SVR_GOTO, .ptr = sServerScript_ClientCanceledCard} // Kept old card, cancel new one +}; + +static const struct MysteryGiftServerCmd sServerScript_HasCard[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_HadCard)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_HAS_CARD} +}; + +static const struct MysteryGiftServerCmd sServerScript_NothingSent[] = { + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_NothingSent)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_READY_END}, + {SVR_RETURN, SVR_MSG_NOTHING_SENT} +}; + +const struct MysteryGiftServerCmd gMysteryGiftServerScript_SendWonderNews[] = { + {SVR_COPY_SAVED_NEWS}, + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_SendGameData)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_GAME_DATA}, + {SVR_COPY_GAME_DATA}, + {SVR_CHECK_GAME_DATA_NEWS}, + {SVR_GOTO_IF_EQ, FALSE, sServerScript_CantSend}, + {SVR_GOTO, .ptr = sServerScript_SendNews} +}; + +const struct MysteryGiftServerCmd gMysteryGiftServerScript_SendWonderCard[] = { + {SVR_COPY_SAVED_CARD}, + {SVR_COPY_SAVED_RAM_SCRIPT}, + {SVR_LOAD_CLIENT_SCRIPT, PTR_ARG(sClientScript_SendGameData)}, + {SVR_SEND}, + {SVR_RECV, MG_LINKID_GAME_DATA}, + {SVR_COPY_GAME_DATA}, + {SVR_CHECK_GAME_DATA_CARD}, + {SVR_GOTO_IF_EQ, FALSE, sServerScript_CantSend}, + {SVR_CHECK_EXISTING_CARD}, + {SVR_GOTO_IF_EQ, HAS_DIFF_CARD, sServerScript_TossPrompt}, + {SVR_GOTO_IF_EQ, HAS_NO_CARD, sServerScript_SendCard}, + {SVR_GOTO, .ptr = sServerScript_HasCard} // HAS_SAME_CARD }; diff --git a/src/mevent_server.c b/src/mevent_server.c index 1bae6a3e162d..5313e02f75d9 100644 --- a/src/mevent_server.c +++ b/src/mevent_server.c @@ -5,291 +5,287 @@ #include "mevent_server.h" #include "mevent_server_helpers.h" -EWRAM_DATA struct mevent_srv_common * s_mevent_srv_common_ptr = NULL; +enum { + FUNC_INIT, + FUNC_DONE, + FUNC_RECV, + FUNC_SEND, + FUNC_RUN, +}; + +EWRAM_DATA static struct MysteryGiftServer * sServer = NULL; -static void mevent_srv_init_common(struct mevent_srv_common *, const void *, u32, u32); -static void mevent_srv_free_resources(struct mevent_srv_common *); -static u32 mevent_srv_exec_common(struct mevent_srv_common *); +static void MysteryGiftServer_Init(struct MysteryGiftServer *, const void *, u32, u32); +static void MysteryGiftServer_Free(struct MysteryGiftServer *); +static u32 MysteryGiftServer_CallFunc(struct MysteryGiftServer *); -extern const struct mevent_cmd s_mevent_wonder_news[]; -extern const struct mevent_cmd s_mevent_wonder_card[]; +extern const struct MysteryGiftServerCmd gMysteryGiftServerScript_SendWonderNews[]; +extern const struct MysteryGiftServerCmd gMysteryGiftServerScript_SendWonderCard[]; -void mevent_srv_init_wnews(void) +void MysterGiftServer_CreateForNews(void) { - s_mevent_srv_common_ptr = AllocZeroed(sizeof(struct mevent_srv_common)); - mevent_srv_init_common(s_mevent_srv_common_ptr, s_mevent_wonder_news, 0, 1); + sServer = AllocZeroed(sizeof(*sServer)); + MysteryGiftServer_Init(sServer, gMysteryGiftServerScript_SendWonderNews, 0, 1); } -void mevent_srv_new_wcard(void) +void MysterGiftServer_CreateForCard(void) { - s_mevent_srv_common_ptr = AllocZeroed(sizeof(struct mevent_srv_common)); - mevent_srv_init_common(s_mevent_srv_common_ptr, s_mevent_wonder_card, 0, 1); + sServer = AllocZeroed(sizeof(*sServer)); + MysteryGiftServer_Init(sServer, gMysteryGiftServerScript_SendWonderCard, 0, 1); } -u32 mevent_srv_common_do_exec(u16 * a0) +u32 MysterGiftServer_Run(u16 * endVal) { u32 result; - if (s_mevent_srv_common_ptr == NULL) - return 3; - result = mevent_srv_exec_common(s_mevent_srv_common_ptr); - if (result == 3) + if (sServer == NULL) + return SVR_RET_END; + result = MysteryGiftServer_CallFunc(sServer); + if (result == SVR_RET_END) { - *a0 = s_mevent_srv_common_ptr->param; - mevent_srv_free_resources(s_mevent_srv_common_ptr); - Free(s_mevent_srv_common_ptr); - s_mevent_srv_common_ptr = NULL; + *endVal = sServer->param; + MysteryGiftServer_Free(sServer); + Free(sServer); + sServer = NULL; } return result; } -static void mevent_srv_init_common(struct mevent_srv_common * svr, const void * cmdBuffer, u32 sendPlayerNo, u32 recvPlayerNo) +static void MysteryGiftServer_Init(struct MysteryGiftServer * svr, const void * script, u32 sendPlayerId, u32 recvPlayerId) { - svr->unk_00 = 0; - svr->mainseqno = 0; - svr->wonder_card = AllocZeroed(sizeof(struct WonderCard)); - svr->wonder_news = AllocZeroed(sizeof(struct WonderNews)); - svr->recvBuffer = AllocZeroed(ME_SEND_BUF_SIZE); - svr->mevent_unk1442cc = AllocZeroed(sizeof(struct MEventStruct_Unk1442CC)); - svr->cmdBuffer = cmdBuffer; + svr->unused = 0; + svr->funcId = FUNC_INIT; + svr->card = AllocZeroed(sizeof(*svr->card)); + svr->news = AllocZeroed(sizeof(*svr->news)); + svr->recvBuffer = AllocZeroed(MG_LINK_BUFFER_SIZE); + svr->linkGameData = AllocZeroed(sizeof(*svr->linkGameData)); + svr->script = script; svr->cmdidx = 0; - MysteryGiftLink_Init(&svr->manager, sendPlayerNo, recvPlayerNo); + MysteryGiftLink_Init(&svr->link, sendPlayerId, recvPlayerId); } -static void mevent_srv_free_resources(struct mevent_srv_common * svr) +static void MysteryGiftServer_Free(struct MysteryGiftServer * svr) { - Free(svr->wonder_card); - Free(svr->wonder_news); + Free(svr->card); + Free(svr->news); Free(svr->recvBuffer); - Free(svr->mevent_unk1442cc); + Free(svr->linkGameData); } -void mevent_srv_common_init_send(struct mevent_srv_common * 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 <= ME_SEND_BUF_SIZE); - MysteryGiftLink_InitSend(&svr->manager, ident, src, size); + AGB_ASSERT(size <= MG_LINK_BUFFER_SIZE); + MysteryGiftLink_InitSend(&svr->link, ident, src, size); } -static const void * mevent_first_if_not_null_else_second(const void * a0, const void * a1) +// 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) { - if (a0 != NULL) - return a0; + if (dynamicData != NULL) + return dynamicData; else - return a1; + return defaultData; } -static u32 mevent_compare_pointers(const void * a0, const void * a1) +static u32 MysteryGiftServer_Compare(const void * a, const void * b) { - if (a1 < a0) + if (b < a) return 0; - else if (a1 == a0) + else if (b == a) return 1; else return 2; } -static u32 common_mainseq_0(struct mevent_srv_common * svr) +static u32 Server_Init(struct MysteryGiftServer * svr) { - // start - svr->mainseqno = 4; - return 0; + svr->funcId = FUNC_RUN; + return SVR_RET_INIT; } -static u32 common_mainseq_1(struct mevent_srv_common * svr) +static u32 Server_Done(struct MysteryGiftServer * svr) { - // done - return 3; + return SVR_RET_END; } -static u32 common_mainseq_2(struct mevent_srv_common * svr) +static u32 Server_Recv(struct MysteryGiftServer * svr) { - // do recv - if (MysteryGiftLink_Recv(&svr->manager)) - svr->mainseqno = 4; - return 1; + if (MysteryGiftLink_Recv(&svr->link)) + svr->funcId = FUNC_RUN; + return SVR_RET_ACTIVE; } -static u32 common_mainseq_3(struct mevent_srv_common * svr) +static u32 Server_Send(struct MysteryGiftServer * svr) { - // do send - if (MysteryGiftLink_Send(&svr->manager)) - svr->mainseqno = 4; - return 1; + if (MysteryGiftLink_Send(&svr->link)) + svr->funcId = FUNC_RUN; + return SVR_RET_ACTIVE; } -static u32 common_mainseq_4(struct mevent_srv_common * svr) +static u32 Server_Run(struct MysteryGiftServer * svr) { // process command - const struct mevent_cmd * cmd = &svr->cmdBuffer[svr->cmdidx]; + const struct MysteryGiftServerCmd * cmd = &svr->script[svr->cmdidx]; const void * ptr; svr->cmdidx++; switch (cmd->instr) { - case 0: - // end - AGB_ASSERT(cmd->parameter == NULL); - svr->mainseqno = 1; - svr->param = cmd->flag; + case SVR_RETURN: + AGB_ASSERT(cmd->ptr == NULL); + svr->funcId = FUNC_DONE; + svr->param = cmd->parameter; // Set for endVal in MysteryGiftServer_Run break; - case 1: - // wait_send - svr->mainseqno = 3; + case SVR_SEND: + svr->funcId = FUNC_SEND; break; - case 2: - // receive - AGB_ASSERT(cmd->parameter == NULL); - MysteryGiftLink_InitRecv(&svr->manager, cmd->flag, svr->recvBuffer); - svr->mainseqno = 2; + case SVR_RECV: + AGB_ASSERT(cmd->ptr == NULL); + MysteryGiftLink_InitRecv(&svr->link, cmd->parameter, svr->recvBuffer); + svr->funcId = FUNC_RECV; break; - case 3: - // jump - AGB_ASSERT(cmd->flag == FALSE); + case SVR_GOTO: + AGB_ASSERT(cmd->parameter == 0); svr->cmdidx = 0; - svr->cmdBuffer = cmd->parameter; + svr->script = cmd->ptr; break; - case 5: - // get_1442CC - AGB_ASSERT(cmd->flag == FALSE); - AGB_ASSERT(cmd->parameter == NULL); - memcpy(svr->mevent_unk1442cc, svr->recvBuffer, sizeof(struct MEventStruct_Unk1442CC)); + case SVR_COPY_GAME_DATA: + AGB_ASSERT(cmd->parameter == 0); + AGB_ASSERT(cmd->ptr == NULL); + memcpy(svr->linkGameData, svr->recvBuffer, sizeof(*svr->linkGameData)); break; - case 6: - // check_header__pass_false - AGB_ASSERT(cmd->flag == FALSE); - AGB_ASSERT(cmd->parameter == NULL); - svr->param = sub_801B6A0(svr->mevent_unk1442cc, FALSE); + case SVR_CHECK_GAME_DATA_CARD: + AGB_ASSERT(cmd->parameter == 0); + AGB_ASSERT(cmd->ptr == NULL); + svr->param = MysteryGift_ValidateLinkGameData(svr->linkGameData, FALSE); break; - case 30: - // check_header__pass_true - AGB_ASSERT(cmd->flag == FALSE); - AGB_ASSERT(cmd->parameter == NULL); - svr->param = sub_801B6A0(svr->mevent_unk1442cc, TRUE); + case SVR_CHECK_GAME_DATA_NEWS: + AGB_ASSERT(cmd->parameter == 0); + AGB_ASSERT(cmd->ptr == NULL); + svr->param = MysteryGift_ValidateLinkGameData(svr->linkGameData, TRUE); break; - case 4: - // jump_if_eq - if (svr->param == cmd->flag) + case SVR_GOTO_IF_EQ: + if (svr->param == cmd->parameter) { svr->cmdidx = 0; - svr->cmdBuffer = cmd->parameter; + svr->script = cmd->ptr; } break; - case 7: - // check_crc - AGB_ASSERT(cmd->flag == FALSE); - ptr = mevent_first_if_not_null_else_second(cmd->parameter, svr->wonder_card); - svr->param = sub_801B6EC(ptr, svr->mevent_unk1442cc, ptr); + case SVR_CHECK_EXISTING_CARD: + AGB_ASSERT(cmd->parameter == 0); + ptr = MysteryGiftServer_GetSendData(cmd->ptr, svr->card); + svr->param = MysteryGift_CompareCardFlags(ptr, svr->linkGameData, ptr); break; - case 8: - // read_word - AGB_ASSERT(cmd->flag == FALSE); - AGB_ASSERT(cmd->parameter == NULL); + case SVR_READ_RESPONSE: + AGB_ASSERT(cmd->parameter == 0); + AGB_ASSERT(cmd->ptr == NULL); svr->param = *(u32 *)svr->recvBuffer; break; - case 9: - AGB_ASSERT(cmd->flag == FALSE); - ptr = mevent_first_if_not_null_else_second(cmd->parameter, &svr->sendWord); - svr->param = sub_801B708(ptr, svr->mevent_unk1442cc, ptr); + case SVR_CHECK_EXISTING_STAMPS: + AGB_ASSERT(cmd->parameter == 0); + ptr = MysteryGiftServer_GetSendData(cmd->ptr, &svr->stamp); + svr->param = MysteryGift_CheckStamps(ptr, svr->linkGameData, ptr); break; - case 10: - AGB_ASSERT(cmd->parameter == NULL); - svr->param = MEventStruct_Unk1442CC_GetValueNFrom_unk_20(svr->mevent_unk1442cc, cmd->flag); + case SVR_GET_CARD_STAT: + AGB_ASSERT(cmd->ptr == NULL); + svr->param = MysteryGift_GetCardStatFromLinkData(svr->linkGameData, cmd->parameter); break; - case 11: - AGB_ASSERT(cmd->flag == FALSE); - svr->param = MysteryGift_DoesQuestionnaireMatch(svr->mevent_unk1442cc, cmd->parameter); + case SVR_CHECK_QUESTIONNAIRE: + AGB_ASSERT(cmd->parameter == 0); + svr->param = MysteryGift_DoesQuestionnaireMatch(svr->linkGameData, cmd->ptr); break; - case 12: - AGB_ASSERT(cmd->flag == FALSE); - svr->param = mevent_compare_pointers(cmd->parameter, *(void **)svr->recvBuffer); + case SVR_COMPARE: + AGB_ASSERT(cmd->parameter == 0); + svr->param = MysteryGiftServer_Compare(cmd->ptr, *(void **)svr->recvBuffer); break; - case 14: - AGB_ASSERT(cmd->flag == FALSE); - mevent_srv_common_init_send(svr, 0x17, mevent_first_if_not_null_else_second(cmd->parameter, svr->wonder_news), sizeof(struct WonderNews)); + case SVR_LOAD_NEWS: + AGB_ASSERT(cmd->parameter == 0); + MysteryGiftServer_InitSend(svr, MG_LINKID_NEWS, MysteryGiftServer_GetSendData(cmd->ptr, svr->news), sizeof(*svr->news)); break; - case 13: - AGB_ASSERT(cmd->flag == FALSE); - mevent_srv_common_init_send(svr, 0x16, mevent_first_if_not_null_else_second(cmd->parameter, svr->wonder_card), sizeof(struct WonderCard)); + case SVR_LOAD_CARD: + AGB_ASSERT(cmd->parameter == 0); + MysteryGiftServer_InitSend(svr, MG_LINKID_CARD, MysteryGiftServer_GetSendData(cmd->ptr, svr->card), sizeof(*svr->card)); break; - case 16: - AGB_ASSERT(cmd->flag == FALSE); - mevent_srv_common_init_send(svr, 0x18, mevent_first_if_not_null_else_second(cmd->parameter, &svr->sendWord), 4); + case SVR_LOAD_STAMP: + AGB_ASSERT(cmd->parameter == 0); + MysteryGiftServer_InitSend(svr, MG_LINKID_STAMP, MysteryGiftServer_GetSendData(cmd->ptr, &svr->stamp), sizeof(svr->stamp)); break; - case 15: - if (cmd->parameter == NULL) - mevent_srv_common_init_send(svr, 0x19, svr->sendBuffer1, svr->sendBuffer1Size); + case SVR_LOAD_RAM_SCRIPT: + if (cmd->ptr == NULL) + MysteryGiftServer_InitSend(svr, MG_LINKID_RAM_SCRIPT, svr->ramScript, svr->ramScriptSize); else - mevent_srv_common_init_send(svr, 0x19, cmd->parameter, cmd->flag); + MysteryGiftServer_InitSend(svr, MG_LINKID_RAM_SCRIPT, cmd->ptr, cmd->parameter); break; - case 18: - if (cmd->parameter == NULL) - mevent_srv_common_init_send(svr, 0x10, svr->sendBuffer2, svr->sendBuffer2Size); + case SVR_LOAD_CLIENT_SCRIPT: + if (cmd->ptr == NULL) + MysteryGiftServer_InitSend(svr, MG_LINKID_CLIENT_SCRIPT, svr->clientScript, svr->clientScriptSize); else - mevent_srv_common_init_send(svr, 0x10, cmd->parameter, cmd->flag); + MysteryGiftServer_InitSend(svr, MG_LINKID_CLIENT_SCRIPT, cmd->ptr, cmd->parameter); break; - case 19: - AGB_ASSERT(cmd->flag == FALSE); - mevent_srv_common_init_send(svr, 0x1a, cmd->parameter, 188); + case SVR_LOAD_EREADER_TRAINER: + AGB_ASSERT(cmd->parameter == 0); + MysteryGiftServer_InitSend(svr, MG_LINKID_EREADER_TRAINER, cmd->ptr, sizeof(struct BattleTowerEReaderTrainer)); break; - case 20: - mevent_srv_common_init_send(svr, 0x15, cmd->parameter, cmd->flag); + case SVR_LOAD_MSG: + MysteryGiftServer_InitSend(svr, MG_LINKID_DYNAMIC_MSG, cmd->ptr, cmd->parameter); break; - case 17: - mevent_srv_common_init_send(svr, 0x1c, cmd->parameter, cmd->flag); + case SVR_LOAD_UNK_2: + MysteryGiftServer_InitSend(svr, MG_LINKID_UNK_2, cmd->ptr, cmd->parameter); break; - case 22: - AGB_ASSERT(cmd->flag == FALSE); - memcpy(svr->wonder_card, cmd->parameter, 332); + case SVR_COPY_CARD: + AGB_ASSERT(cmd->parameter == 0); + memcpy(svr->card, cmd->ptr, sizeof(*svr->card)); break; - case 23: - AGB_ASSERT(cmd->flag == FALSE); - memcpy(svr->wonder_news, cmd->parameter, 444); + case SVR_COPY_NEWS: + AGB_ASSERT(cmd->parameter == 0); + memcpy(svr->news, cmd->ptr, sizeof(*svr->news)); break; - case 21: - AGB_ASSERT(cmd->flag == FALSE); - svr->sendWord = *(u32 *)cmd->parameter; + case SVR_COPY_STAMP: + AGB_ASSERT(cmd->parameter == 0); + svr->stamp = *(u32 *)cmd->ptr; break; - case 24: - svr->sendBuffer1 = cmd->parameter; - svr->sendBuffer1Size = cmd->flag; + case SVR_SET_RAM_SCRIPT: + svr->ramScript = cmd->ptr; + svr->ramScriptSize = cmd->parameter; break; - case 25: - svr->sendBuffer2 = cmd->parameter; - svr->sendBuffer2Size = cmd->flag; + case SVR_SET_CLIENT_SCRIPT: + svr->clientScript = cmd->ptr; + svr->clientScriptSize = cmd->parameter; break; - case 26: - AGB_ASSERT(cmd->flag == FALSE && cmd->parameter == NULL); - memcpy(svr->wonder_card, GetSavedWonderCard(), 332); - WonderCard_ResetInternalReceivedFlag(svr->wonder_card); + case SVR_COPY_SAVED_CARD: + AGB_ASSERT(cmd->parameter == 0 && cmd->ptr == NULL); + memcpy(svr->card, GetSavedWonderCard(), sizeof(*svr->card)); + DisableWonderCardSending(svr->card); break; - case 27: - AGB_ASSERT(cmd->flag == FALSE && cmd->parameter == NULL); - memcpy(svr->wonder_news, GetSavedWonderNews(), 444); + case SVR_COPY_SAVED_NEWS: + AGB_ASSERT(cmd->parameter == 0 && cmd->ptr == NULL); + memcpy(svr->news, GetSavedWonderNews(), sizeof(*svr->news)); break; - case 28: - AGB_ASSERT(cmd->flag == FALSE && cmd->parameter == NULL); - svr->sendBuffer1 = GetSavedRamScriptIfValid(); + case SVR_COPY_SAVED_RAM_SCRIPT: + AGB_ASSERT(cmd->parameter == 0 && cmd->ptr == NULL); + svr->ramScript = GetSavedRamScriptIfValid(); break; - case 29: - mevent_srv_common_init_send(svr, 0x1b, cmd->parameter, cmd->flag); + case SVR_LOAD_UNK_1: + MysteryGiftServer_InitSend(svr, MG_LINKID_UNK_1, cmd->ptr, cmd->parameter); break; } - return 1; + return SVR_RET_ACTIVE; } -static u32 (*const func_tbl[])(struct mevent_srv_common *) = { - common_mainseq_0, - common_mainseq_1, - common_mainseq_2, - common_mainseq_3, - common_mainseq_4 +static u32 (*const sFuncTable[])(struct MysteryGiftServer *) = { + [FUNC_INIT] = Server_Init, + [FUNC_DONE] = Server_Done, + [FUNC_RECV] = Server_Recv, + [FUNC_SEND] = Server_Send, + [FUNC_RUN] = Server_Run }; -static u32 mevent_srv_exec_common(struct mevent_srv_common * svr) +static u32 MysteryGiftServer_CallFunc(struct MysteryGiftServer * svr) { u32 response; - AGB_ASSERT(svr->mainseqno < ARRAY_COUNT(func_tbl)); - response = func_tbl[svr->mainseqno](svr); - AGB_ASSERT(svr->mainseqno < ARRAY_COUNT(func_tbl)); + AGB_ASSERT(svr->funcId < ARRAY_COUNT(sFuncTable)); + response = sFuncTable[svr->funcId](svr); + AGB_ASSERT(svr->funcId < ARRAY_COUNT(sFuncTable)); return response; } diff --git a/src/mevent_server_helpers.c b/src/mevent_server_helpers.c index 17686e2875f0..83ecc9f50295 100644 --- a/src/mevent_server_helpers.c +++ b/src/mevent_server_helpers.c @@ -11,200 +11,211 @@ #include "mevent.h" #include "mevent_server_helpers.h" -static u32 mevent_receive_func(struct MysteryGiftLink *); -static u32 mevent_send_func(struct MysteryGiftLink *); +/* + Handles the link connection functions used by the Mystery Gift client/server. + Note: MysteryGiftLink is shortened to MGL for internal functions. +*/ -u32 MysteryGiftLink_Recv(struct MysteryGiftLink * svr) +struct SendRecvHeader { - return svr->recvFunc(svr); + u16 ident; + u16 crc; + u16 size; +}; + +static u32 MGL_Receive(struct MysteryGiftLink *); +static u32 MGL_Send(struct MysteryGiftLink *); + +u32 MysteryGiftLink_Recv(struct MysteryGiftLink * link) +{ + return link->recvFunc(link); } -u32 MysteryGiftLink_Send(struct MysteryGiftLink * svr) +u32 MysteryGiftLink_Send(struct MysteryGiftLink * link) { - return svr->sendFunc(svr); + return link->sendFunc(link); } -void MysteryGiftLink_Init(struct MysteryGiftLink * svr, u32 sendPlayerNo, u32 recvPlayerNo) +void MysteryGiftLink_Init(struct MysteryGiftLink * link, u32 sendPlayerId, u32 recvPlayerId) { - svr->sendPlayerNo = sendPlayerNo; - svr->recvPlayerNo = recvPlayerNo; - svr->seqno = 0; - svr->sendCRC = 0; - svr->sendSize = 0; - svr->sendCounter = 0; - svr->recvCRC = 0; - svr->recvSize = 0; - svr->recvCounter = 0; - svr->sendBfr = NULL; - svr->recvBfr = NULL; - svr->sendFunc = mevent_send_func; - svr->recvFunc = mevent_receive_func; + link->sendPlayerId = sendPlayerId; + link->recvPlayerId = recvPlayerId; + link->state = 0; + link->sendCRC = 0; + link->sendSize = 0; + link->sendCounter = 0; + link->recvCRC = 0; + link->recvSize = 0; + link->recvCounter = 0; + link->sendBfr = NULL; + link->recvBfr = NULL; + link->sendFunc = MGL_Send; + link->recvFunc = MGL_Receive; } -void MysteryGiftLink_InitSend(struct MysteryGiftLink * svr, u32 ident, const void * src, u32 size) +void MysteryGiftLink_InitSend(struct MysteryGiftLink * link, u32 ident, const void * src, u32 size) { - svr->seqno = 0; - svr->sendIdent = ident; - svr->sendCounter = 0; - svr->sendCRC = 0; + link->state = 0; + link->sendIdent = ident; + link->sendCounter = 0; + link->sendCRC = 0; if (size != 0) - svr->sendSize = size; + link->sendSize = size; else - svr->sendSize = ME_SEND_BUF_SIZE; - svr->sendBfr = src; + link->sendSize = MG_LINK_BUFFER_SIZE; + link->sendBfr = src; } -void MysteryGiftLink_InitRecv(struct MysteryGiftLink * svr, u32 ident, void * dest) +void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * dest) { - svr->seqno = 0; - svr->recvIdent = ident; - svr->recvCounter = 0; - svr->recvCRC = 0; - svr->recvSize = 0; - svr->recvBfr = dest; + link->state = 0; + link->recvIdent = ident; + link->recvCounter = 0; + link->recvCRC = 0; + link->recvSize = 0; + link->recvBfr = dest; } -static void mevent_recv_block(u32 recv_idx, void * dest, size_t size) +static void MGL_ReceiveBlock(u32 playerId, void * dest, size_t size) { - memcpy(dest, gBlockRecvBuffer[recv_idx], size); + memcpy(dest, gBlockRecvBuffer[playerId], size); } -static bool32 mevent_has_received(u32 recv_idx) +static bool32 MGL_HasReceived(u32 playerId) { - if ((GetBlockReceivedStatus() >> recv_idx) & 1) + if ((GetBlockReceivedStatus() >> playerId) & 1) return TRUE; else return FALSE; } -static void mevent_reset_recv(u32 recv_idx) +static void MGL_ResetReceived(u32 playerId) { - ResetBlockReceivedFlag(recv_idx); + ResetBlockReceivedFlag(playerId); } -static bool32 mevent_receive_func(struct MysteryGiftLink * svr) +static bool32 MGL_Receive(struct MysteryGiftLink * link) { - struct send_recv_header header; + struct SendRecvHeader header; - switch (svr->seqno) + switch (link->state) { - case 0: - if (mevent_has_received(svr->recvPlayerNo)) - { - mevent_recv_block(svr->recvPlayerNo, &header, sizeof(header)); - svr->recvSize = header.size; - svr->recvCRC = header.crc; - if (svr->recvSize > ME_SEND_BUF_SIZE) - { - LinkRfu_FatalError(); - return FALSE; - } - else if (svr->recvIdent != header.ident) - { - LinkRfu_FatalError(); - return FALSE; - } - else - { - svr->recvCounter = 0; - mevent_reset_recv(svr->recvPlayerNo); - ++svr->seqno; - } - } - break; - case 1: - if (mevent_has_received(svr->recvPlayerNo)) + case 0: + if (MGL_HasReceived(link->recvPlayerId)) + { + MGL_ReceiveBlock(link->recvPlayerId, &header, sizeof(header)); + link->recvSize = header.size; + link->recvCRC = header.crc; + if (link->recvSize > MG_LINK_BUFFER_SIZE) { - size_t blocksiz = svr->recvCounter * 252; - if (svr->recvSize - blocksiz <= 252) - { - mevent_recv_block(svr->recvPlayerNo, svr->recvBfr + blocksiz, svr->recvSize - blocksiz); - ++svr->recvCounter; - ++svr->seqno; - } - else - { - mevent_recv_block(svr->recvPlayerNo, svr->recvBfr + blocksiz, 252); - ++svr->recvCounter; - } - mevent_reset_recv(svr->recvPlayerNo); + LinkRfu_FatalError(); + return FALSE; } - break; - case 2: - if (CalcCRC16WithTable(svr->recvBfr, svr->recvSize) != svr->recvCRC) + else if (link->recvIdent != header.ident) { LinkRfu_FatalError(); return FALSE; } else { - svr->seqno = 0; - return TRUE; + link->recvCounter = 0; + MGL_ResetReceived(link->recvPlayerId); + link->state++; } - break; - + } + break; + case 1: + if (MGL_HasReceived(link->recvPlayerId)) + { + size_t blocksize = link->recvCounter * 252; + if (link->recvSize - blocksize <= 252) + { + MGL_ReceiveBlock(link->recvPlayerId, link->recvBfr + blocksize, link->recvSize - blocksize); + link->recvCounter++; + link->state++; + } + else + { + MGL_ReceiveBlock(link->recvPlayerId, link->recvBfr + blocksize, 252); + link->recvCounter++; + } + MGL_ResetReceived(link->recvPlayerId); + } + break; + case 2: + if (CalcCRC16WithTable(link->recvBfr, link->recvSize) != link->recvCRC) + { + LinkRfu_FatalError(); + return FALSE; + } + else + { + link->state = 0; + return TRUE; + } + break; } return FALSE; } -static bool32 mevent_send_func(struct MysteryGiftLink * svr) +static bool32 MGL_Send(struct MysteryGiftLink * link) { - struct send_recv_header header; + struct SendRecvHeader header; - switch (svr->seqno) + switch (link->state) { - case 0: - if (IsLinkTaskFinished()) - { - header.ident = svr->sendIdent; - header.size = svr->sendSize; - header.crc = CalcCRC16WithTable(svr->sendBfr, svr->sendSize); - svr->sendCRC = header.crc; - svr->sendCounter = 0; - SendBlock(0, &header, sizeof(header)); - ++svr->seqno; - } - break; - case 1: - if (IsLinkTaskFinished()) + case 0: + if (IsLinkTaskFinished()) + { + header.ident = link->sendIdent; + header.size = link->sendSize; + header.crc = CalcCRC16WithTable(link->sendBfr, link->sendSize); + link->sendCRC = header.crc; + link->sendCounter = 0; + SendBlock(0, &header, sizeof(header)); + link->state++; + } + break; + case 1: + if (IsLinkTaskFinished()) + { + if (MGL_HasReceived(link->sendPlayerId)) { - if (mevent_has_received(svr->sendPlayerNo)) + size_t blocksize; + MGL_ResetReceived(link->sendPlayerId); + blocksize = 252 * link->sendCounter; + if (link->sendSize - blocksize <= 252) { - size_t blocksiz; - mevent_reset_recv(svr->sendPlayerNo); - blocksiz = 252 * svr->sendCounter; - if (svr->sendSize - blocksiz <= 252) - { - SendBlock(0, svr->sendBfr + blocksiz, svr->sendSize - blocksiz); - ++svr->sendCounter; - ++svr->seqno; - } - else - { - SendBlock(0, svr->sendBfr + blocksiz, 252); - ++svr->sendCounter; - } + SendBlock(0, link->sendBfr + blocksize, link->sendSize - blocksize); + link->sendCounter++; + link->state++; } - } - break; - case 2: - if (IsLinkTaskFinished()) - { - if (CalcCRC16WithTable(svr->sendBfr, svr->sendSize) != svr->sendCRC) - LinkRfu_FatalError(); else - ++svr->seqno; - } - break; - case 3: - if (mevent_has_received(svr->sendPlayerNo)) - { - mevent_reset_recv(svr->sendPlayerNo); - svr->seqno = 0; - return TRUE; + { + SendBlock(0, link->sendBfr + blocksize, 252); + link->sendCounter++; + } } - break; + } + break; + case 2: + if (IsLinkTaskFinished()) + { + if (CalcCRC16WithTable(link->sendBfr, link->sendSize) != link->sendCRC) + LinkRfu_FatalError(); + else + link->state++; + } + break; + case 3: + if (MGL_HasReceived(link->sendPlayerId)) + { + MGL_ResetReceived(link->sendPlayerId); + link->state = 0; + return TRUE; + } + break; } return FALSE; diff --git a/src/mystery_gift.c b/src/mystery_gift.c index b3ec493f5f3f..de0874d28e35 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -44,18 +44,18 @@ static const u32 gUnkTextboxBorderGfx[] = INCBIN_U32("graphics/interface/unk_tex struct MysteryGiftTaskData { - u16 curPromptWindowId; - u16 unk2; - u16 unk4; - u16 unk6; + u16 var; // Multipurpose + u16 unused1; + u16 unused2; + u16 unused3; u8 state; u8 textState; - u8 unkA; - u8 unkB; + u8 unused4; + u8 unused5; bool8 isWonderNews; bool8 sourceIsFriend; - u8 prevPromptWindowId; - u8 * buffer; + u8 msgId; + u8 * clientMsg; }; static const struct BgTemplate sBGTemplates[] = { @@ -547,7 +547,7 @@ static void ClearTextWindow(void) CopyWindowToVram(1, 1); } -bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str) +bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) { switch (*textState) { @@ -700,6 +700,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c return MENU_NOTHING_CHOSEN; } +// Handle the "Receive/Send/Toss" menu that appears when selecting Wonder Card/News static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) { struct WindowTemplate windowTemplate; @@ -772,7 +773,7 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) { case 0: if (!isWonderNews) - WonderCard_Init(GetSavedWonderCard(), sav1_get_mevent_buffer_2()); + WonderCard_Init(GetSavedWonderCard(), GetSavedWonderCardMetadata()); else WonderNews_Init(GetSavedWonderNews()); (*state)++; @@ -798,9 +799,9 @@ static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) static bool32 ClearSavedNewsOrCard(bool32 isWonderNews) { if (!isWonderNews) - ClearSavedWonderCard(); + ClearSavedWonderCardAndRelated(); else - ClearSavedWonderNews(); + ClearSavedWonderNewsAndRelated(); return TRUE; } @@ -843,12 +844,12 @@ static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews) static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews) { if (!isWonderNews) - return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderCardThrownAway); + return PrintMysteryGiftMenuMessage(textState, gText_WonderCardThrownAway); else - return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderNewsThrownAway); + return PrintMysteryGiftMenuMessage(textState, gText_WonderNewsThrownAway); } -static bool32 mevent_save_game(u8 * state) +static bool32 SaveOnMysteryGiftMenu(u8 * state) { switch (*state) { @@ -865,10 +866,8 @@ static bool32 mevent_save_game(u8 * state) (*state)++; break; case 3: - if (({JOY_NEW(A_BUTTON | B_BUTTON);})) - { + if (JOY_NEW(A_BUTTON | B_BUTTON)) (*state)++; - } break; case 4: *state = 0; @@ -879,70 +878,72 @@ static bool32 mevent_save_game(u8 * state) return FALSE; } -static const u8 * GetStdMessage(bool32 * receivedMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId) +static const u8 * GetClientResultMessage(bool32 * successMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId) { const u8 * msg = NULL; - *receivedMsg = FALSE; + *successMsg = FALSE; switch (msgId) { - case 0: - *receivedMsg = FALSE; + case CLI_MSG_NOTHING_SENT: + *successMsg = FALSE; msg = gText_NothingSentOver; break; - case 1: - *receivedMsg = FALSE; + case CLI_MSG_RECORD_UPLOADED: + *successMsg = FALSE; msg = gText_RecordUploadedViaWireless; break; - case 2: - *receivedMsg = TRUE; + case CLI_MSG_CARD_RECEIVED: + *successMsg = TRUE; msg = !sourceIsFriend ? gText_WonderCardReceived : gText_WonderCardReceivedFrom; break; - case 3: - *receivedMsg = TRUE; + case CLI_MSG_NEWS_RECEIVED: + *successMsg = TRUE; msg = !sourceIsFriend ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom; break; - case 4: - *receivedMsg = TRUE; + case CLI_MSG_STAMP_RECEIVED: + *successMsg = TRUE; msg = gText_NewStampReceived; break; - case 5: - *receivedMsg = FALSE; + case CLI_MSG_HAD_CARD: + *successMsg = FALSE; msg = gText_AlreadyHadCard; break; - case 6: - *receivedMsg = FALSE; + case CLI_MSG_HAD_STAMP: + *successMsg = FALSE; msg = gText_AlreadyHadStamp; break; - case 7: - *receivedMsg = FALSE; + case CLI_MSG_HAD_NEWS: + *successMsg = FALSE; msg = gText_AlreadyHadNews; break; - case 8: - *receivedMsg = FALSE; + case CLI_MSG_NO_ROOM_STAMPS: + *successMsg = FALSE; msg = gText_NoMoreRoomForStamps; break; - case 9: - *receivedMsg = FALSE; + case CLI_MSG_COMM_CANCELED: + *successMsg = FALSE; msg = gText_CommunicationCanceled; break; - case 10: - *receivedMsg = FALSE; + case CLI_MSG_CANT_ACCEPT: + *successMsg = FALSE; msg = !isWonderNews ? gText_CantAcceptCardFromTrainer : gText_CantAcceptNewsFromTrainer; break; - case 11: - *receivedMsg = FALSE; + case CLI_MSG_COMM_ERROR: + *successMsg = FALSE; msg = gText_CommunicationError; break; - case 12: - *receivedMsg = TRUE; + case CLI_MSG_TRAINER_RECEIVED: + *successMsg = TRUE; msg = gText_NewTrainerReceived; break; - case 13: - *receivedMsg = TRUE; + case CLI_MSG_BUFFER_SUCCESS: + *successMsg = TRUE; + // msg is NULL, use buffer break; - case 14: - *receivedMsg = FALSE; + case CLI_MSG_BUFFER_FAILURE: + *successMsg = FALSE; + // msg is NULL, use buffer break; } @@ -976,91 +977,95 @@ static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer) return FALSE; } -static const u8 * mevent_message_stamp_card_etc_send_status(u32 * a0, u8 unused, u32 msgId) +static const u8 * GetServerResultMessage(bool32 * wonderSuccess, bool8 sourceIsFriend, u32 msgId) { const u8 * result = gText_CommunicationError; - *a0 = 0; + *wonderSuccess = FALSE; switch (msgId) { - case 0: + case SVR_MSG_NOTHING_SENT: result = gText_NothingSentOver; break; - case 1: + case SVR_MSG_RECORD_UPLOADED: result = gText_RecordUploadedViaWireless; break; - case 2: + case SVR_MSG_CARD_SENT: result = gText_WonderCardSentTo; - *a0 = 1; + *wonderSuccess = TRUE; break; - case 3: + case SVR_MSG_NEWS_SENT: result = gText_WonderNewsSentTo; - *a0 = 1; + *wonderSuccess = TRUE; break; - case 4: + case SVR_MSG_STAMP_SENT: result = gText_StampSentTo; break; - case 5: + case SVR_MSG_HAS_CARD: result = gText_OtherTrainerHasCard; break; - case 6: + case SVR_MSG_HAS_STAMP: result = gText_OtherTrainerHasStamp; break; - case 7: + case SVR_MSG_HAS_NEWS: result = gText_OtherTrainerHasNews; break; - case 8: + case SVR_MSG_NO_ROOM_STAMPS: result = gText_NoMoreRoomForStamps; break; - case 9: + case SVR_MSG_CLIENT_CANCELED: result = gText_OtherTrainerCanceled; break; - case 10: + case SVR_MSG_CANT_SEND_GIFT_1: result = gText_CantSendGiftToTrainer; break; - case 11: + case SVR_MSG_COMM_ERROR: result = gText_CommunicationError; break; - case 12: + case SVR_MSG_GIFT_SENT_1: result = gText_GiftSentTo; break; - case 13: + case SVR_MSG_GIFT_SENT_2: result = gText_GiftSentTo; break; - case 14: + case SVR_MSG_CANT_SEND_GIFT_2: result = gText_CantSendGiftToTrainer; break; } return result; } -static bool32 PrintMGSendStatus(u8 * state, u16 * arg1, u8 arg2, u32 msgId) +static bool32 PrintServerResultMessage(u8 * state, u16 * timer, bool8 sourceIsFriend, u32 msgId) { - u32 flag; - const u8 * str = mevent_message_stamp_card_etc_send_status(&flag, arg2, msgId); - if (flag) - return PrintSuccessMessage(state, str, arg1); + bool32 wonderSuccess; + const u8 * str = GetServerResultMessage(&wonderSuccess, sourceIsFriend, msgId); + if (wonderSuccess) + return PrintSuccessMessage(state, str, timer); else - return MG_PrintTextOnWindow1AndWaitButton(state, str); + return PrintMysteryGiftMenuMessage(state, str); } +// States for Task_MysteryGift. +// CLIENT states are for when the player is receiving a gift, and use mevent_client.c link functions. +// SERVER states are for when the player is sending a gift, and use mevent_server.c link functions. +// Other states handle the general Mystery Gift menu usage. enum { MG_STATE_TO_MAIN_MENU, MG_STATE_MAIN_MENU, MG_STATE_DONT_HAVE_ANY, - MG_STATE_LINK_PROMPT, - MG_STATE_LINK_PROMPT_INPUT, - MG_STATE_LINK_START, - MG_STATE_LINK_WAIT, - MG_STATE_COMMUNICATING, - MG_STATE_COMMUNICATE, - MG_STATE_9, - MG_STATE_10, - MG_STATE_LINK_ASK_TOSS, - MG_STATE_LINK_ASK_TOSS_UNRECEIVED, - MG_STATE_LINK_COMPLETE_WAIT, - MG_STATE_LINK_COMPLETED, - MG_STATE_LINK_RESULT_MSG, - MG_STATE_LINK_ERROR_1, + MG_STATE_SOURCE_PROMPT, + MG_STATE_SOURCE_PROMPT_INPUT, + MG_STATE_CLIENT_LINK_START, + MG_STATE_CLIENT_LINK_WAIT, + MG_STATE_CLIENT_COMMUNICATING, + MG_STATE_CLIENT_LINK, + MG_STATE_CLIENT_YES_NO, + MG_STATE_CLIENT_MESSAGE, + MG_STATE_CLIENT_ASK_TOSS, + MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED, + MG_STATE_CLIENT_LINK_END, + MG_STATE_CLIENT_COMM_COMPLETED, + MG_STATE_CLIENT_RESULT_MSG, + MG_STATE_CLIENT_ERROR, MG_STATE_SAVE_LOAD_GIFT, MG_STATE_LOAD_GIFT, MG_STATE_UNUSED, @@ -1074,13 +1079,13 @@ enum { MG_STATE_GIFT_INPUT_EXIT, MG_STATE_RECEIVE, MG_STATE_SEND, - MG_STATE_SEND_WAIT, - MG_STATE_SEND_START, - MG_STATE_SENDING, - MG_STATE_SEND_FINISH, - MG_STATE_SEND_WAIT_END, - MG_STATE_SEND_END, - MG_STATE_LINK_ERROR_2, + MG_STATE_SERVER_LINK_WAIT, + MG_STATE_SERVER_LINK_START, + MG_STATE_SERVER_LINK, + MG_STATE_SERVER_LINK_END, + MG_STATE_SERVER_LINK_END_WAIT, + MG_STATE_SERVER_RESULT_MSG, + MG_STATE_SERVER_ERROR, MG_STATE_EXIT, }; @@ -1090,22 +1095,22 @@ static void CreateMysteryGiftTask(void) struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data; data->state = MG_STATE_TO_MAIN_MENU; data->textState = 0; - data->unkA = 0; - data->unkB = 0; + data->unused4 = 0; + data->unused5 = 0; data->isWonderNews = 0; data->sourceIsFriend = 0; - data->curPromptWindowId = 0; - data->unk2 = 0; - data->unk4 = 0; - data->unk6 = 0; - data->prevPromptWindowId = 0; - data->buffer = AllocZeroed(0x40); + data->var = 0; + data->unused1 = 0; + data->unused2 = 0; + data->unused3 = 0; + data->msgId = 0; + data->clientMsg = AllocZeroed(CLIENT_MAX_MSG_SIZE); } static void Task_MysteryGift(u8 taskId) { struct MysteryGiftTaskData *data = (void *)gTasks[taskId].data; - u32 receivedMsg, input; + u32 successMsg, input; const u8 *msg; switch (data->state) @@ -1115,7 +1120,7 @@ static void Task_MysteryGift(u8 taskId) break; case MG_STATE_MAIN_MENU: // Main Mystery Gift menu, player can select Wonder Cards or News (or exit) - switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, FALSE)) + switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, FALSE)) { case 0: // "Wonder Cards" data->isWonderNews = FALSE; @@ -1142,41 +1147,41 @@ static void Task_MysteryGift(u8 taskId) // Start prompt to ask where to read one from if (!data->isWonderNews) { - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveCardNewOneInput)) + if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveCardNewOneInput)) { - data->state = MG_STATE_LINK_PROMPT; + data->state = MG_STATE_SOURCE_PROMPT; PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); } } else { - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveNewsNewOneInput)) + if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveNewsNewOneInput)) { - data->state = MG_STATE_LINK_PROMPT; + data->state = MG_STATE_SOURCE_PROMPT; PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); } } break; } - case MG_STATE_LINK_PROMPT: + case MG_STATE_SOURCE_PROMPT: if (!data->isWonderNews) AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed); else AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed); - data->state = MG_STATE_LINK_PROMPT_INPUT; + data->state = MG_STATE_SOURCE_PROMPT_INPUT; break; - case MG_STATE_LINK_PROMPT_INPUT: + case MG_STATE_SOURCE_PROMPT_INPUT: // Choose where to access the Wonder Card/News from - switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, TRUE)) + switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, TRUE)) { case 0: // "Wireless Communication" ClearTextWindow(); - data->state = MG_STATE_LINK_START; + data->state = MG_STATE_CLIENT_LINK_START; data->sourceIsFriend = FALSE; break; case 1: // "Friend" ClearTextWindow(); - data->state = MG_STATE_LINK_START; + data->state = MG_STATE_CLIENT_LINK_START; data->sourceIsFriend = TRUE; break; case LIST_CANCEL: @@ -1193,7 +1198,7 @@ static void Task_MysteryGift(u8 taskId) break; } break; - case MG_STATE_LINK_START: + case MG_STATE_CLIENT_LINK_START: *gStringVar1 = EOS; *gStringVar2 = EOS; *gStringVar3 = EOS; @@ -1213,149 +1218,153 @@ static void Task_MysteryGift(u8 taskId) CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_NEWS); break; } - data->state = MG_STATE_LINK_WAIT; + data->state = MG_STATE_CLIENT_LINK_WAIT; break; - case MG_STATE_LINK_WAIT: + case MG_STATE_CLIENT_LINK_WAIT: if (gReceivedRemoteLinkPlayers != 0) { ClearScreenInBg0(TRUE); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; MysteryGiftClient_Create(data->isWonderNews); } else if (gSpecialVar_Result == LINKUP_FAILED) { // Link failed, return to link start menu ClearScreenInBg0(TRUE); - data->state = MG_STATE_LINK_PROMPT; + data->state = MG_STATE_SOURCE_PROMPT; } break; - case MG_STATE_COMMUNICATING: + case MG_STATE_CLIENT_COMMUNICATING: AddTextPrinterToWindow1(gText_Communicating); - data->state = MG_STATE_COMMUNICATE; + data->state = MG_STATE_CLIENT_LINK; break; - case MG_STATE_COMMUNICATE: - switch (MysteryGiftClient_Run(&data->curPromptWindowId)) + case MG_STATE_CLIENT_LINK: + switch (MysteryGiftClient_Run(&data->var)) { case CLI_RET_END: Rfu_SetCloseLinkCallback(); - data->prevPromptWindowId = data->curPromptWindowId; - data->state = MG_STATE_LINK_COMPLETE_WAIT; + data->msgId = data->var; + data->state = MG_STATE_CLIENT_LINK_END; break; - case CLI_RET_5: - memcpy(data->buffer, mevent_client_get_buffer(), 0x40); + case CLI_RET_COPY_MSG: + memcpy(data->clientMsg, MysteryGiftClient_GetMsg(), 0x40); MysteryGiftClient_AdvanceState(); break; - case CLI_RET_3: - data->state = MG_STATE_10; + case CLI_RET_PRINT_MSG: + data->state = MG_STATE_CLIENT_MESSAGE; break; - case CLI_RET_2: - data->state = MG_STATE_9; + case CLI_RET_YES_NO: + data->state = MG_STATE_CLIENT_YES_NO; break; case CLI_RET_ASK_TOSS: - data->state = MG_STATE_LINK_ASK_TOSS; + data->state = MG_STATE_CLIENT_ASK_TOSS; StringCopy(gStringVar1, gLinkPlayers[0].name); break; } break; - case MG_STATE_9: - input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, mevent_client_get_buffer()); + case MG_STATE_CLIENT_YES_NO: + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, MysteryGiftClient_GetMsg()); switch (input) { case 0: // Yes - MysteryGiftClient_SetParam(0); + MysteryGiftClient_SetParam(FALSE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; break; case 1: // No case MENU_B_PRESSED: - MysteryGiftClient_SetParam(1); + MysteryGiftClient_SetParam(TRUE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; break; } break; - case MG_STATE_10: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, mevent_client_get_buffer())) + case MG_STATE_CLIENT_MESSAGE: + if (PrintMysteryGiftMenuMessage(&data->textState, MysteryGiftClient_GetMsg())) { MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; } break; - case MG_STATE_LINK_ASK_TOSS: - input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_ThrowAwayWonderCard); + case MG_STATE_CLIENT_ASK_TOSS: + // Player is receiving a new Wonder Card/News but needs to toss an existing one to make room. + // Ask for confirmation. + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_ThrowAwayWonderCard); switch (input) { case 0: // Yes - if (CheckReceivedGiftFromWonderCard() == TRUE) + if (IsSavedWonderCardGiftNotReceived() == TRUE) { - data->state = MG_STATE_LINK_ASK_TOSS_UNRECEIVED; + data->state = MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED; } else { - MysteryGiftClient_SetParam(0); + MysteryGiftClient_SetParam(FALSE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; } break; case 1: // No case MENU_B_PRESSED: - MysteryGiftClient_SetParam(1); + MysteryGiftClient_SetParam(TRUE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; break; } break; - case MG_STATE_LINK_ASK_TOSS_UNRECEIVED: - input = DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, FALSE, gText_HaventReceivedCardsGift); + case MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED: + // Player has selected to toss a Wonder Card that they haven't received the gift for. + // Ask for confirmation again. + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_HaventReceivedCardsGift); switch (input) { case 0: // Yes - MysteryGiftClient_SetParam(0); + MysteryGiftClient_SetParam(FALSE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; break; case 1: // No case MENU_B_PRESSED: - MysteryGiftClient_SetParam(1); + MysteryGiftClient_SetParam(TRUE); MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_COMMUNICATING; + data->state = MG_STATE_CLIENT_COMMUNICATING; break; } break; - case MG_STATE_LINK_COMPLETE_WAIT: + case MG_STATE_CLIENT_LINK_END: if (gReceivedRemoteLinkPlayers == 0) { DestroyWirelessStatusIndicatorSprite(); - data->state = MG_STATE_LINK_COMPLETED; + data->state = MG_STATE_CLIENT_COMM_COMPLETED; } break; - case MG_STATE_LINK_COMPLETED: + case MG_STATE_CLIENT_COMM_COMPLETED: if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted)) { if (data->sourceIsFriend == TRUE) StringCopy(gStringVar1, gLinkPlayers[0].name); - data->state = MG_STATE_LINK_RESULT_MSG; + data->state = MG_STATE_CLIENT_RESULT_MSG; } break; - case MG_STATE_LINK_RESULT_MSG: - msg = GetStdMessage(&receivedMsg, data->isWonderNews, data->sourceIsFriend, data->prevPromptWindowId); + case MG_STATE_CLIENT_RESULT_MSG: + msg = GetClientResultMessage(&successMsg, data->isWonderNews, data->sourceIsFriend, data->msgId); if (msg == NULL) - msg = data->buffer; - if (receivedMsg) - input = PrintSuccessMessage(&data->textState, msg, &data->curPromptWindowId); + msg = data->clientMsg; + if (successMsg) + input = PrintSuccessMessage(&data->textState, msg, &data->var); else - input = MG_PrintTextOnWindow1AndWaitButton(&data->textState, msg); + input = PrintMysteryGiftMenuMessage(&data->textState, msg); // input var re-used, here it is TRUE if the message is finished if (input) { - if (data->prevPromptWindowId == 3) + if (data->msgId == CLI_MSG_NEWS_RECEIVED) { if (data->sourceIsFriend == TRUE) - GenerateRandomNews(1); + GenerateRandomWonderNews(1); else - GenerateRandomNews(2); + GenerateRandomWonderNews(2); } - if (!receivedMsg) + if (!successMsg) { // Did not receive card/news, return to main menu data->state = MG_STATE_TO_MAIN_MENU; @@ -1368,7 +1377,7 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_SAVE_LOAD_GIFT: - if (mevent_save_game(&data->textState)) + if (SaveOnMysteryGiftMenu(&data->textState)) data->state = MG_STATE_LOAD_GIFT; break; case MG_STATE_LOAD_GIFT: @@ -1404,17 +1413,17 @@ static void Task_MysteryGift(u8 taskId) u32 result; if (!data->isWonderNews) { - if (WonderCard_Test_Unk_08_6()) - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, FALSE); + if (IsSendingSavedWonderCardAllowed()) + result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, TRUE); + result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, TRUE); } else { - if (WonderNews_Test_Unk_02()) - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, FALSE); + if (IsSendingSavedWonderNewsAllowed()) + result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->isWonderNews, TRUE); + result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, TRUE); } switch (result) { @@ -1436,11 +1445,11 @@ static void Task_MysteryGift(u8 taskId) break; } case MG_STATE_ASK_TOSS: - // Player is attempting to discard a Wonder Card/News - switch (AskDiscardGift(&data->textState, &data->curPromptWindowId, data->isWonderNews)) + // Player is attempting to discard a saved Wonder Card/News + switch (AskDiscardGift(&data->textState, &data->var, data->isWonderNews)) { case 0: // Yes - if (!data->isWonderNews && CheckReceivedGiftFromWonderCard() == TRUE) + if (!data->isWonderNews && IsSavedWonderCardGiftNotReceived() == TRUE) data->state = MG_STATE_ASK_TOSS_UNRECEIVED; else data->state = MG_STATE_TOSS; @@ -1454,7 +1463,7 @@ static void Task_MysteryGift(u8 taskId) case MG_STATE_ASK_TOSS_UNRECEIVED: // Player has selected to toss a Wonder Card that they haven't received the gift for. // Ask for confirmation again. - switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->curPromptWindowId, TRUE, gText_HaventReceivedGiftOkayToDiscard)) + switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->var, TRUE, gText_HaventReceivedGiftOkayToDiscard)) { case 0: // Yes data->state = MG_STATE_TOSS; @@ -1473,7 +1482,7 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_TOSS_SAVE: - if (mevent_save_game(&data->textState)) + if (SaveOnMysteryGiftMenu(&data->textState)) data->state = MG_STATE_TOSSED; break; case MG_STATE_TOSSED: @@ -1489,7 +1498,7 @@ static void Task_MysteryGift(u8 taskId) break; case MG_STATE_RECEIVE: if (ExitWonderCardOrNews(data->isWonderNews, 1)) - data->state = MG_STATE_LINK_PROMPT; + data->state = MG_STATE_SOURCE_PROMPT; break; case MG_STATE_SEND: if (ExitWonderCardOrNews(data->isWonderNews, 1)) @@ -1504,14 +1513,14 @@ static void Task_MysteryGift(u8 taskId) break; } data->sourceIsFriend = TRUE; - data->state = MG_STATE_SEND_WAIT; + data->state = MG_STATE_SERVER_LINK_WAIT; } break; - case MG_STATE_SEND_WAIT: + case MG_STATE_SERVER_LINK_WAIT: if (gReceivedRemoteLinkPlayers != 0) { ClearScreenInBg0(1); - data->state = MG_STATE_SEND_START; + data->state = MG_STATE_SERVER_LINK_START; } else if (gSpecialVar_Result == LINKUP_FAILED) { @@ -1519,7 +1528,7 @@ static void Task_MysteryGift(u8 taskId) data->state = MG_STATE_LOAD_GIFT; } break; - case MG_STATE_SEND_START: + case MG_STATE_SERVER_LINK_START: *gStringVar1 = EOS; *gStringVar2 = EOS; *gStringVar3 = EOS; @@ -1527,40 +1536,40 @@ static void Task_MysteryGift(u8 taskId) if (!data->isWonderNews) { AddTextPrinterToWindow1(gText_SendingWonderCard); - mevent_srv_new_wcard(); + MysterGiftServer_CreateForCard(); } else { AddTextPrinterToWindow1(gText_SendingWonderNews); - mevent_srv_init_wnews(); + MysterGiftServer_CreateForNews(); } - data->state = MG_STATE_SENDING; + data->state = MG_STATE_SERVER_LINK; break; - case MG_STATE_SENDING: - if (mevent_srv_common_do_exec(&data->curPromptWindowId) == 3) + case MG_STATE_SERVER_LINK: + if (MysterGiftServer_Run(&data->var) == SVR_RET_END) { - data->prevPromptWindowId = data->curPromptWindowId; - data->state = MG_STATE_SEND_FINISH; + data->msgId = data->var; + data->state = MG_STATE_SERVER_LINK_END; } break; - case MG_STATE_SEND_FINISH: + case MG_STATE_SERVER_LINK_END: Rfu_SetCloseLinkCallback(); StringCopy(gStringVar1, gLinkPlayers[1].name); - data->state = MG_STATE_SEND_WAIT_END; + data->state = MG_STATE_SERVER_LINK_END_WAIT; break; - case MG_STATE_SEND_WAIT_END: + case MG_STATE_SERVER_LINK_END_WAIT: if (gReceivedRemoteLinkPlayers == 0) { DestroyWirelessStatusIndicatorSprite(); - data->state = MG_STATE_SEND_END; + data->state = MG_STATE_SERVER_RESULT_MSG; } break; - case MG_STATE_SEND_END: - if (PrintMGSendStatus(&data->textState, &data->curPromptWindowId, data->sourceIsFriend, data->prevPromptWindowId)) + case MG_STATE_SERVER_RESULT_MSG: + if (PrintServerResultMessage(&data->textState, &data->var, data->sourceIsFriend, data->msgId)) { - if (data->sourceIsFriend == TRUE && data->prevPromptWindowId == 3) + if (data->sourceIsFriend == TRUE && data->msgId == SVR_MSG_NEWS_SENT) { - GenerateRandomNews(3); + GenerateRandomWonderNews(3); data->state = MG_STATE_SAVE_LOAD_GIFT; } else @@ -1570,9 +1579,9 @@ static void Task_MysteryGift(u8 taskId) } } break; - case MG_STATE_LINK_ERROR_1: - case MG_STATE_LINK_ERROR_2: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_CommunicationError)) + case MG_STATE_CLIENT_ERROR: + case MG_STATE_SERVER_ERROR: + if (PrintMysteryGiftMenuMessage(&data->textState, gText_CommunicationError)) { data->state = MG_STATE_TO_MAIN_MENU; PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); @@ -1580,7 +1589,7 @@ static void Task_MysteryGift(u8 taskId) break; case MG_STATE_EXIT: CloseLink(); - Free(data->buffer); + Free(data->clientMsg); DestroyTask(taskId); SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen); break; diff --git a/src/new_game.c b/src/new_game.c index 2a950efbc9c4..c4622820c45b 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -200,7 +200,7 @@ void NewGameInitData(void) ResetAllApprenticeData(); ClearRankingHallRecords(); InitMatchCallCounters(); - sub_801AFD8(); + ClearMysteryGift(); WipeTrainerNameRecords(); ResetTrainerHillResults(); ResetContestLinkResults(); diff --git a/src/script.c b/src/script.c index 6c2115dee32d..a3e223768ea1 100644 --- a/src/script.c +++ b/src/script.c @@ -3,6 +3,7 @@ #include "event_data.h" #include "mevent.h" #include "util.h" +#include "constants/maps.h" #include "constants/map_scripts.h" #define RAM_SCRIPT_MAGIC 51 @@ -403,9 +404,9 @@ bool32 ValidateSavedRamScript(void) struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data; if (scriptData->magic != RAM_SCRIPT_MAGIC) return FALSE; - if (scriptData->mapGroup != 0xFF) + if (scriptData->mapGroup != MAP_GROUP(UNDEFINED)) return FALSE; - if (scriptData->mapNum != 0xFF) + if (scriptData->mapNum != MAP_NUM(UNDEFINED)) return FALSE; if (scriptData->objectId != 0xFF) return FALSE; @@ -421,9 +422,9 @@ u8 *GetSavedRamScriptIfValid(void) return NULL; if (scriptData->magic != RAM_SCRIPT_MAGIC) return NULL; - if (scriptData->mapGroup != 0xFF) + if (scriptData->mapGroup != MAP_GROUP(UNDEFINED)) return NULL; - if (scriptData->mapNum != 0xFF) + if (scriptData->mapNum != MAP_NUM(UNDEFINED)) return NULL; if (scriptData->objectId != 0xFF) return NULL; @@ -442,5 +443,5 @@ void InitRamScript_NoObjectEvent(u8 *script, u16 scriptSize) { if (scriptSize > sizeof(gSaveBlock1Ptr->ramScript.data.script)) scriptSize = sizeof(gSaveBlock1Ptr->ramScript.data.script); - InitRamScript(script, scriptSize, 0xFF, 0xFF, 0xFF); + InitRamScript(script, scriptSize, MAP_GROUP(UNDEFINED), MAP_NUM(UNDEFINED), 0xFF); } diff --git a/src/trade.c b/src/trade.c index 60d999eddcbb..f51a9f6e962d 100644 --- a/src/trade.c +++ b/src/trade.c @@ -19,7 +19,7 @@ #include "load_save.h" #include "mail.h" #include "main.h" -#include "mevent2.h" +#include "mevent.h" #include "mystery_gift.h" #include "overworld.h" #include "palette.h" @@ -4655,9 +4655,8 @@ static void CB2_SaveAndEndTrade(void) if (!InUnionRoom()) IncrementGameStat(GAME_STAT_POKEMON_TRADES); if (gWirelessCommType) - { - RecordIdOfWonderCardSenderByEventType(2, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); - } + TryIncrementMysteryGiftStat(CARD_STAT_NUM_TRADES, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + SetContinueGameWarpStatusToDynamicWarp(); sub_8153380(); gMain.state++; diff --git a/src/union_room.c b/src/union_room.c index 37d2434ddab6..1a7ccc8e36c9 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1539,12 +1539,14 @@ static void Task_ExchangeCards(u8 taskId) { // Note: hasAllFrontierSymbols is a re-used field. // Here it is set by CreateTrainerCardInBuffer. + // If the player has a saved Wonder Card and it is the same Wonder Card + // as their partner then mystery gift stats are enabled. recvBuff = gBlockRecvBuffer[GetMultiplayerId() ^ 1]; - MEventHandleReceivedWonderCard(((struct TrainerCard *)recvBuff)->hasAllFrontierSymbols); + MysteryGift_TryEnableStatsByFlagId(((struct TrainerCard *)recvBuff)->hasAllFrontierSymbols); } else { - ResetReceivedWonderCardFlag(); + MysteryGift_DisableStats(); } ResetBlockReceivedFlags(); @@ -1640,7 +1642,7 @@ static void CreateTrainerCardInBuffer(void *dest, bool32 setWonderCard) static void Task_StartActivity(u8 taskId) { - ResetReceivedWonderCardFlag(); + MysteryGift_DisableStats(); switch (gPlayerCurrActivity) { case ACTIVITY_BATTLE_SINGLE: @@ -1937,7 +1939,7 @@ static void Task_SendMysteryGift(u8 taskId) } break; case 6: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sText_LinkWithFriendDropped)) + if (PrintMysteryGiftMenuMessage(&data->textState, sText_LinkWithFriendDropped)) { data->playerCount = LeaderPrunePlayerList(data->playerList); RedrawListMenu(data->listTaskId); @@ -2034,7 +2036,7 @@ static void Task_SendMysteryGift(u8 taskId) data->state++; break; case 14: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sText_PleaseStartOver)) + if (PrintMysteryGiftMenuMessage(&data->textState, sText_PleaseStartOver)) { DestroyTask(taskId); gSpecialVar_Result = LINKUP_FAILED; @@ -2212,7 +2214,7 @@ static void Task_CardOrNewsWithFriend(u8 taskId) data->state++; break; case 9: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sLinkDroppedTexts[RfuGetStatus()])) + if (PrintMysteryGiftMenuMessage(&data->textState, sLinkDroppedTexts[RfuGetStatus()])) { DestroyWirelessStatusIndicatorSprite(); DestroyTask(taskId); @@ -2380,7 +2382,7 @@ static void Task_CardOrNewsOverWireless(u8 taskId) data->state++; break; case 9: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sText_WirelessLinkDropped)) + if (PrintMysteryGiftMenuMessage(&data->textState, sText_WirelessLinkDropped)) { DestroyWirelessStatusIndicatorSprite(); DestroyTask(taskId); @@ -2389,7 +2391,7 @@ static void Task_CardOrNewsOverWireless(u8 taskId) } break; case 7: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sText_WirelessSearchCanceled)) + if (PrintMysteryGiftMenuMessage(&data->textState, sText_WirelessSearchCanceled)) { DestroyWirelessStatusIndicatorSprite(); DestroyTask(taskId); @@ -2398,7 +2400,7 @@ static void Task_CardOrNewsOverWireless(u8 taskId) } break; case 11: - if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, sNoWonderSharedTexts[data->isWonderNews])) + if (PrintMysteryGiftMenuMessage(&data->textState, sNoWonderSharedTexts[data->isWonderNews])) { DestroyWirelessStatusIndicatorSprite(); DestroyTask(taskId); diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c index 1c456ecb33e0..f2754fbff0b9 100644 --- a/src/wonder_transfer.c +++ b/src/wonder_transfer.c @@ -51,7 +51,7 @@ struct UnkStruct_203F3C8_02DC struct WonderCardData { /*0000*/ struct WonderCard card; - /*014c*/ struct MEventBuffer_3430 unk_014C; + /*014c*/ struct WonderCardMetadata cardMetadata; /*0170*/ const struct WonderGraphics * gfx; /*0174*/ u8 enterExitState; /*0175*/ u8 unk_0175; @@ -81,7 +81,14 @@ static const u8 sCard_TextColorTable[][3] = { {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}, {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} }; -const u8 ALIGNED(4) sCard_TextYOffsets[3] = {7, 4, 7}; + +static const u8 ALIGNED(4) sCard_TextYOffsets[CARD_TYPE_COUNT] = +{ + [CARD_TYPE_GIFT] = 7, + [CARD_TYPE_STAMP] = 4, + [CARD_TYPE_LINK_STAT] = 7 +}; + static const struct WindowTemplate sCard_WindowTemplates[] = { [CARD_WIN_0] = { .bg = 1, @@ -176,21 +183,21 @@ static const struct WonderGraphics sCardGraphics[NUM_WONDER_BGS] = { {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8} }; -bool32 WonderCard_Init(struct WonderCard * card, struct MEventBuffer_3430 * r6) +bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * metadata) { - if (card == NULL || r6 == NULL) + if (card == NULL || metadata == NULL) return FALSE; sWonderCardData = AllocZeroed(sizeof(*sWonderCardData)); if (sWonderCardData == NULL) return FALSE; sWonderCardData->card = *card; - sWonderCardData->unk_014C = *r6; - if (sWonderCardData->card.bgType >= ARRAY_COUNT(sCardGraphics)) + sWonderCardData->cardMetadata = *metadata; + if (sWonderCardData->card.bgType >= NUM_WONDER_BGS) sWonderCardData->card.bgType = 0; - if (sWonderCardData->card.unk_08_0 >= ARRAY_COUNT(sCard_TextYOffsets)) - sWonderCardData->card.unk_08_0 = 0; - if (sWonderCardData->card.unk_09 > ARRAY_COUNT(sWonderCardData->unk_017D)) - sWonderCardData->card.unk_09 = 0; + if (sWonderCardData->card.type >= CARD_TYPE_COUNT) + sWonderCardData->card.type = 0; + if (sWonderCardData->card.maxStamps > ARRAY_COUNT(sWonderCardData->unk_017D)) + sWonderCardData->card.maxStamps = 0; sWonderCardData->gfx = &sCardGraphics[sWonderCardData->card.bgType]; return TRUE; } @@ -337,20 +344,20 @@ static void BufferCardText(void) } memcpy(sWonderCardData->unk_0288, sWonderCardData->card.unk_FA, WONDER_CARD_TEXT_LENGTH); sWonderCardData->unk_0288[WONDER_CARD_TEXT_LENGTH] = EOS; - switch (sWonderCardData->card.unk_08_0) + switch (sWonderCardData->card.type) { - case 0: + case CARD_TYPE_GIFT: memcpy(sWonderCardData->unk_02B1, sWonderCardData->card.unk_122, WONDER_CARD_TEXT_LENGTH); sWonderCardData->unk_02B1[WONDER_CARD_TEXT_LENGTH] = EOS; break; - case 1: + case CARD_TYPE_STAMP: sWonderCardData->unk_02B1[0] = EOS; break; - case 2: + case CARD_TYPE_LINK_STAT: sWonderCardData->unk_02B1[0] = EOS; - sp0[0] = sWonderCardData->unk_014C.unk_00 < 999 ? sWonderCardData->unk_014C.unk_00 : 999; - sp0[1] = sWonderCardData->unk_014C.unk_02 < 999 ? sWonderCardData->unk_014C.unk_02 : 999; - sp0[2] = sWonderCardData->unk_014C.unk_04 < 999 ? sWonderCardData->unk_014C.unk_04 : 999; + sp0[0] = sWonderCardData->cardMetadata.battlesWon < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesWon : MAX_WONDER_CARD_STAT; + sp0[1] = sWonderCardData->cardMetadata.battlesLost < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesLost : MAX_WONDER_CARD_STAT; + sp0[2] = sWonderCardData->cardMetadata.numTrades < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.numTrades : MAX_WONDER_CARD_STAT; for (i = 0; i < 8; i++) { memset(sWonderCardData->unk_02DC[i].unk_42, EOS, sizeof(sWonderCardData->unk_02DC[i].unk_42)); @@ -410,15 +417,15 @@ static void DrawCardWindow(u8 whichWindow) AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, sCard_TextColorTable[sWonderCardData->gfx->textPal2], 0, sWonderCardData->unk_01E4[sp0C]); break; case CARD_WIN_2: - AddTextPrinterParameterized3(windowId, 3, 0, sCard_TextYOffsets[sWonderCardData->card.unk_08_0], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_0288); - if (sWonderCardData->card.unk_08_0 != 2) + AddTextPrinterParameterized3(windowId, 3, 0, sCard_TextYOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_0288); + if (sWonderCardData->card.type != CARD_TYPE_LINK_STAT) { - AddTextPrinterParameterized3(windowId, 3, 0, 16 + sCard_TextYOffsets[sWonderCardData->card.unk_08_0], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02B1); + AddTextPrinterParameterized3(windowId, 3, 0, 16 + sCard_TextYOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02B1); } else { s32 x = 0; - s32 y = sCard_TextYOffsets[sWonderCardData->card.unk_08_0] + 16; + s32 y = sCard_TextYOffsets[sWonderCardData->card.type] + 16; s32 spacing = GetFontAttribute(3, FONTATTR_LETTER_SPACING); for (; sp0C < sWonderCardData->unk_0175; sp0C++) { @@ -438,26 +445,26 @@ static void DrawCardWindow(u8 whichWindow) static void CreateCardSprites(void) { - u8 r7 = 0; + u8 i = 0; sWonderCardData->monIconSpriteId = SPRITE_NONE; - if (sWonderCardData->unk_014C.unk_06 != SPECIES_NONE) + if (sWonderCardData->cardMetadata.iconSpecies != SPECIES_NONE) { - sWonderCardData->monIconSpriteId = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_06), SpriteCallbackDummy, 220, 20, 0, FALSE); + sWonderCardData->monIconSpriteId = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.iconSpecies), SpriteCallbackDummy, 220, 20, 0, FALSE); gSprites[sWonderCardData->monIconSpriteId].oam.priority = 2; } - if (sWonderCardData->card.unk_09 != 0 && sWonderCardData->card.unk_08_0 == 1) + if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { LoadCompressedSpriteSheetUsingHeap(&sSpriteSheet_IconShadow); LoadSpritePalette(&sSpritePalettes_IconShadow[sWonderCardData->gfx->textPal4]); - for (; r7 < sWonderCardData->card.unk_09; r7++) + for (; i < sWonderCardData->card.maxStamps; i++) { - sWonderCardData->unk_017D[r7][0] = SPRITE_NONE; - sWonderCardData->unk_017D[r7][1] = SPRITE_NONE; - sWonderCardData->unk_017D[r7][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * r7, 144, 8); - if (sWonderCardData->unk_014C.unk_08[0][r7] != SPECIES_NONE) - sWonderCardData->unk_017D[r7][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->unk_014C.unk_08[0][r7]), + sWonderCardData->unk_017D[i][0] = SPRITE_NONE; + sWonderCardData->unk_017D[i][1] = SPRITE_NONE; + sWonderCardData->unk_017D[i][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * i, 144, 8); + if (sWonderCardData->cardMetadata.stampData[0][i] != SPECIES_NONE) + sWonderCardData->unk_017D[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[0][i]), SpriteCallbackDummy, - 216 - 32 * r7, + 216 - 32 * i, 136, 0, 0); } } @@ -465,17 +472,17 @@ static void CreateCardSprites(void) static void DestroyCardSprites(void) { - u8 r6 = 0; + u8 i = 0; if (sWonderCardData->monIconSpriteId != SPRITE_NONE) FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->monIconSpriteId]); - if (sWonderCardData->card.unk_09 != 0 && sWonderCardData->card.unk_08_0 == 1) + if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { - for (; r6 < sWonderCardData->card.unk_09; r6++) + for (; i < sWonderCardData->card.maxStamps; i++) { - if (sWonderCardData->unk_017D[r6][0] != SPRITE_NONE) - DestroySprite(&gSprites[sWonderCardData->unk_017D[r6][0]]); - if (sWonderCardData->unk_017D[r6][1] != SPRITE_NONE) - FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017D[r6][1]]); + if (sWonderCardData->unk_017D[i][0] != SPRITE_NONE) + DestroySprite(&gSprites[sWonderCardData->unk_017D[i][0]]); + if (sWonderCardData->unk_017D[i][1] != SPRITE_NONE) + FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017D[i][1]]); } FreeSpriteTilesByTag(TAG_ICON_SHADOW); FreeSpritePaletteByTag(TAG_ICON_SHADOW); From 356e6d7f084c8cd53258299759ad7ead9e12c7f3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 16 Oct 2021 23:58:11 -0400 Subject: [PATCH 307/762] Clean up mystery gift menu --- ...er.png => mystery_gift_textbox_border.png} | Bin src/mystery_gift.c | 233 +++++++++--------- 2 files changed, 122 insertions(+), 111 deletions(-) rename graphics/interface/{unk_textbox_border.png => mystery_gift_textbox_border.png} (100%) diff --git a/graphics/interface/unk_textbox_border.png b/graphics/interface/mystery_gift_textbox_border.png similarity index 100% rename from graphics/interface/unk_textbox_border.png rename to graphics/interface/mystery_gift_textbox_border.png diff --git a/src/mystery_gift.c b/src/mystery_gift.c index de0874d28e35..2936f2c3a14b 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -32,15 +32,18 @@ #include "mevent_server.h" #include "constants/cable_club.h" -void bgid_upload_textbox_1(u8 bgId); +#define LIST_MENU_TILE_NUM 10 +#define LIST_MENU_PAL_NUM 224 + +static void LoadMysteryGiftTextboxBorder(u8 bgId); static void CreateMysteryGiftTask(void); static void Task_MysteryGift(u8 taskId); -EWRAM_DATA u8 sDownArrowCounterAndYCoordIdx[8] = {}; +EWRAM_DATA static u8 sDownArrowCounterAndYCoordIdx[8] = {}; EWRAM_DATA bool8 gGiftIsFromEReader = FALSE; -static const u16 gUnkTextboxBorderPal[] = INCBIN_U16("graphics/interface/unk_textbox_border.gbapal"); -static const u32 gUnkTextboxBorderGfx[] = INCBIN_U32("graphics/interface/unk_textbox_border.4bpp.lz"); +static const u16 sTextboxBorder_Pal[] = INCBIN_U16("graphics/interface/mystery_gift_textbox_border.gbapal"); +static const u32 sTextboxBorder_Gfx[] = INCBIN_U32("graphics/interface/mystery_gift_textbox_border.4bpp.lz"); struct MysteryGiftTaskData { @@ -96,110 +99,110 @@ static const struct BgTemplate sBGTemplates[] = { static const struct WindowTemplate sMainWindows[] = { { - .bg = 0x00, - .tilemapLeft = 0x00, - .tilemapTop = 0x00, - .width = 0x1e, - .height = 0x02, - .paletteNum = 0x0c, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 30, + .height = 2, + .paletteNum = 12, .baseBlock = 0x0013 }, { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x1c, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 12, .baseBlock = 0x004f }, { - .bg = 0x00, - .tilemapLeft = 0x00, - .tilemapTop = 0x0f, - .width = 0x1e, - .height = 0x05, - .paletteNum = 0x0d, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 15, + .width = 30, + .height = 5, + .paletteNum = 13, .baseBlock = 0x004f }, DUMMY_WIN_TEMPLATE }; -static const struct WindowTemplate sWindowTemplate_PromptYesOrNo_Width28 = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x1c, - .height = 0x04, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 12, .baseBlock = 0x00e5 }; -static const struct WindowTemplate sWindowTemplate_PromptYesOrNo_Width20 = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x14, - .height = 0x04, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_YesNoMsg = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 20, + .height = 4, + .paletteNum = 12, .baseBlock = 0x00e5 }; -static const struct WindowTemplate sMysteryGiftMenuWindowTemplate = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x13, - .height = 0x04, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_GiftSelect = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 19, + .height = 4, + .paletteNum = 12, .baseBlock = 0x00e5 }; static const struct WindowTemplate sWindowTemplate_ThreeOptions = { - .bg = 0x00, - .tilemapLeft = 0x08, - .tilemapTop = 0x06, - .width = 0x0e, - .height = 0x06, - .paletteNum = 0x0c, + .bg = 0, + .tilemapLeft = 8, + .tilemapTop = 6, + .width = 14, + .height = 6, + .paletteNum = 12, .baseBlock = 0x0155 }; static const struct WindowTemplate sWindowTemplate_YesNoBox = { - .bg = 0x00, - .tilemapLeft = 0x17, - .tilemapTop = 0x0f, - .width = 0x06, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 0, + .tilemapLeft = 23, + .tilemapTop = 15, + .width = 6, + .height = 4, + .paletteNum = 12, .baseBlock = 0x0155 }; -static const struct WindowTemplate sWindowTemplate_7by8 = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0b, - .width = 0x07, - .height = 0x08, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 11, + .width = 7, + .height = 8, + .paletteNum = 12, .baseBlock = 0x0155 }; -static const struct WindowTemplate sWindowTemplate_7by6 = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0d, - .width = 0x07, - .height = 0x06, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 13, + .width = 7, + .height = 6, + .paletteNum = 12, .baseBlock = 0x0155 }; -static const struct WindowTemplate sWindowTemplate_7by4 = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0f, - .width = 0x07, - .height = 0x04, - .paletteNum = 0x0c, +static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 15, + .width = 7, + .height = 4, + .paletteNum = 12, .baseBlock = 0x0155 }; @@ -240,24 +243,24 @@ static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = { { gText_Receive, 0 }, { gText_Send, 1 }, { gText_Toss, 2 }, - { gText_Cancel2, -2 } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_ReceiveToss[] = { { gText_Receive, 0 }, { gText_Toss, 2 }, - { gText_Cancel2, -2 } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_ReceiveSend[] = { { gText_Receive, 0 }, { gText_Send, 1 }, - { gText_Cancel2, -2 } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_Receive[] = { { gText_Receive, 0 }, - { gText_Cancel2, -2 } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { @@ -351,9 +354,9 @@ static const u8 *const Unref_082F0710[] = { gText_ReturnToTitle }; -ALIGNED(2) const u8 sMG_Ereader_TextColor_1[] = { 0, 1, 2 }; -ALIGNED(2) const u8 sMG_Ereader_TextColor_1_Copy[] = { 0, 1, 2 }; -ALIGNED(2) const u8 sMG_Ereader_TextColor_2[] = { 1, 2, 3 }; +ALIGNED(2) static const u8 sTextColors_TopMenu[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; +ALIGNED(2) static const u8 sTextColors_TopMenu_Copy[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; +ALIGNED(2) static const u8 sMG_Ereader_TextColor_2[] = { TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY }; static void VBlankCB_MysteryGiftEReader(void) { @@ -398,7 +401,7 @@ static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); - bgid_upload_textbox_1(3); + LoadMysteryGiftTextboxBorder(3); InitWindows(sMainWindows); DeactivateAllTextPrinters(); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); @@ -408,7 +411,7 @@ static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) gMain.state++; break; case 1: - LoadPalette(gUnkTextboxBorderPal, 0, 0x20); + LoadPalette(sTextboxBorder_Pal, 0, 0x20); LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20); Menu_LoadStdPalAt(0xC0); LoadUserWindowBorderGfx(0, 0xA, 0xE0); @@ -487,8 +490,8 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 usePickOkCancel) options = gJPText_DecideStop; } - AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sMG_Ereader_TextColor_1, -1, header); - AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sMG_Ereader_TextColor_1, -1, options); + AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); + AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); CopyWindowToVram(0, 2); PutWindowTilemap(0); } @@ -516,7 +519,7 @@ void MG_DrawCheckerboardPattern(u32 bg) } } -void ClearScreenInBg0(bool32 ignoreTopTwoRows) +static void ClearScreenInBg0(bool32 ignoreTopTwoRows) { switch (ignoreTopTwoRows) { @@ -547,6 +550,9 @@ static void ClearTextWindow(void) CopyWindowToVram(1, 1); } +#define DOWN_ARROW_X 208 +#define DOWN_ARROW_Y 20 + bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) { switch (*textState) @@ -556,12 +562,12 @@ bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) (*textState)++; break; case 1: - DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); if (({JOY_NEW(A_BUTTON | B_BUTTON);})) (*textState)++; break; case 2: - DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); *textState = 0; ClearTextWindow(); return TRUE; @@ -574,15 +580,16 @@ bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) static void HideDownArrow(void) { - DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); } static void ShowDownArrow(void) { - DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); } -bool32 unref_HideDownArrowAndWaitButton(u8 * textState) +// Unused +static bool32 HideDownArrowAndWaitButton(u8 * textState) { switch (*textState) { @@ -638,7 +645,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi else windowTemplate.tilemapLeft = 0; - response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0); + response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); if (response != LIST_NOTHING_CHOSEN) { ClearWindowTilemap(2); @@ -655,11 +662,12 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c switch (*textState) { case 0: + // Print question message StringExpandPlaceholders(gStringVar4, str); if (yesNoBoxPlacement == 0) - *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width28); + *windowId = AddWindow(&sWindowTemplate_YesNoMsg_Wide); else - *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width20); + *windowId = AddWindow(&sWindowTemplate_YesNoMsg); FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); @@ -668,6 +676,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c (*textState)++; break; case 1: + // Create Yes/No windowTemplate = sWindowTemplate_YesNoBox; if (yesNoBoxPlacement == 0) windowTemplate.tilemapTop = 9; @@ -677,6 +686,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c (*textState)++; break; case 2: + // Handle Yes/No input input = Menu_ProcessInputNoWrapClearOnChoose(); if (input == MENU_B_PRESSED || input == 0 || input == 1) { @@ -688,7 +698,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c return input; } break; - case (u8)MENU_B_PRESSED: + case 0xFF: *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); @@ -701,7 +711,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 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) +static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) { struct WindowTemplate windowTemplate; s32 input; @@ -709,11 +719,12 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann switch (*textState) { case 0: + // Print menu message if (!cannotToss) StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithCards); else StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews); - *windowId = AddWindow(&sMysteryGiftMenuWindowTemplate); + *windowId = AddWindow(&sWindowTemplate_GiftSelect); FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); @@ -726,16 +737,16 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann if (cannotSend) { if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); else - input = DoMysteryGiftListMenu(&sWindowTemplate_7by4, &sListMenu_Receive, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); } else { if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_7by8, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); else - input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); } if (input != LIST_NOTHING_CHOSEN) { @@ -1414,16 +1425,16 @@ static void Task_MysteryGift(u8 taskId) if (!data->isWonderNews) { if (IsSendingSavedWonderCardAllowed()) - result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, FALSE); + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, TRUE); + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); } else { if (IsSendingSavedWonderNewsAllowed()) - result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, FALSE); + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); else - result = HandleMysteryGiftListMenu(&data->textState, &data->var, data->isWonderNews, TRUE); + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); } switch (result) { @@ -1519,12 +1530,12 @@ static void Task_MysteryGift(u8 taskId) case MG_STATE_SERVER_LINK_WAIT: if (gReceivedRemoteLinkPlayers != 0) { - ClearScreenInBg0(1); + ClearScreenInBg0(TRUE); data->state = MG_STATE_SERVER_LINK_START; } else if (gSpecialVar_Result == LINKUP_FAILED) { - ClearScreenInBg0(1); + ClearScreenInBg0(TRUE); data->state = MG_STATE_LOAD_GIFT; } break; @@ -1601,7 +1612,7 @@ u16 GetMysteryGiftBaseBlock(void) return 0x1A9; } -void bgid_upload_textbox_1(u8 bgId) +static void LoadMysteryGiftTextboxBorder(u8 bgId) { - DecompressAndLoadBgGfxUsingHeap(bgId, gUnkTextboxBorderGfx, 0x100, 0, 0); + DecompressAndLoadBgGfxUsingHeap(bgId, sTextboxBorder_Gfx, 0x100, 0, 0); } From c7d550e96c88477d0e44d957439077e8f457ff61 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 01:15:16 -0400 Subject: [PATCH 308/762] Clean up wonder card/news view --- include/constants/global.h | 2 + include/constants/mevent.h | 2 +- include/global.h | 18 +- include/mevent.h | 12 -- src/mystery_gift.c | 12 +- src/wonder_transfer.c | 397 +++++++++++++++++++++---------------- 6 files changed, 246 insertions(+), 197 deletions(-) diff --git a/include/constants/global.h b/include/constants/global.h index 518fe6bad71c..7fca5453c50c 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -89,6 +89,8 @@ #define QUIZ_QUESTION_LEN 9 #define WONDER_CARD_TEXT_LENGTH 40 #define WONDER_NEWS_TEXT_LENGTH 40 +#define WONDER_CARD_BODY_TEXT_LINES 4 +#define WONDER_NEWS_BODY_TEXT_LINES 10 #define MALE 0 #define FEMALE 1 diff --git a/include/constants/mevent.h b/include/constants/mevent.h index d659ffb14a05..91eacd8011de 100644 --- a/include/constants/mevent.h +++ b/include/constants/mevent.h @@ -13,7 +13,7 @@ #define CARD_STAT_NUM_STAMPS 3 #define CARD_STAT_MAX_STAMPS 4 -#define CARD_TYPE_GIFT 0 +#define CARD_TYPE_GIFT 0 // Normal "Wonder Card" #define CARD_TYPE_STAMP 1 // "Stamp Card" #define CARD_TYPE_LINK_STAT 2 // Referred to as the "Battle Card", shows battle and trade stats #define CARD_TYPE_COUNT 3 diff --git a/include/global.h b/include/global.h index a6071b2cd8fd..36fbfc38d3ef 100644 --- a/include/global.h +++ b/include/global.h @@ -850,24 +850,24 @@ struct WonderNews u16 unk_00; u8 sendType; // SEND_TYPE_* u8 bgType; - u8 unk_04[WONDER_NEWS_TEXT_LENGTH]; - u8 unk_2C[10][WONDER_NEWS_TEXT_LENGTH]; + u8 titleText[WONDER_NEWS_TEXT_LENGTH]; + u8 bodyText[WONDER_NEWS_BODY_TEXT_LINES][WONDER_NEWS_TEXT_LENGTH]; }; struct WonderCard { - u16 flagId; + u16 flagId; // Event flag (sReceivedGiftFlags) + WONDER_CARD_FLAG_OFFSET u16 iconSpecies; - u32 unk_04; + u32 idNumber; u8 type:2; // CARD_TYPE_* u8 bgType:4; u8 sendType:2; // SEND_TYPE_* u8 maxStamps; - u8 unk_0A[WONDER_CARD_TEXT_LENGTH]; - u8 unk_32[WONDER_CARD_TEXT_LENGTH]; - u8 unk_5A[4][WONDER_CARD_TEXT_LENGTH]; - u8 unk_FA[WONDER_CARD_TEXT_LENGTH]; - u8 unk_122[WONDER_CARD_TEXT_LENGTH]; + u8 titleText[WONDER_CARD_TEXT_LENGTH]; + u8 subtitleText[WONDER_CARD_TEXT_LENGTH]; + u8 bodyText[WONDER_CARD_BODY_TEXT_LINES][WONDER_CARD_TEXT_LENGTH]; + u8 footerLine1Text[WONDER_CARD_TEXT_LENGTH]; + u8 footerLine2Text[WONDER_CARD_TEXT_LENGTH]; }; struct WonderCardMetadata diff --git a/include/mevent.h b/include/mevent.h index 1297b4291d45..9b7ef3ab535b 100755 --- a/include/mevent.h +++ b/include/mevent.h @@ -4,18 +4,6 @@ #include "main.h" #include "constants/mevent.h" -struct MEvent_Str_1 -{ - u16 unk_000; - size_t unk_004; - const void * unk_008; -}; - -struct MEvent_Str_2 -{ - u8 fill_00[0x40]; -}; - struct MysteryGiftLinkGameData { u32 unk_00; diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 2936f2c3a14b..35bf8e9edf98 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -209,13 +209,13 @@ static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { static const struct ListMenuItem sListMenuItems_CardsOrNews[] = { { gText_WonderCards, 0 }, { gText_WonderNews, 1 }, - { gText_Exit3, -2 } + { gText_Exit3, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_WirelessOrFriend[] = { { gText_WirelessCommunication, 0 }, { gText_Friend2, 1 }, - { gText_Cancel2, -2 } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = { @@ -243,24 +243,24 @@ static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = { { gText_Receive, 0 }, { gText_Send, 1 }, { gText_Toss, 2 }, - { gText_Cancel2, LIST_CANCEL } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_ReceiveToss[] = { { gText_Receive, 0 }, { gText_Toss, 2 }, - { gText_Cancel2, LIST_CANCEL } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_ReceiveSend[] = { { gText_Receive, 0 }, { gText_Send, 1 }, - { gText_Cancel2, LIST_CANCEL } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuItem sListMenuItems_Receive[] = { { gText_Receive, 0 }, - { gText_Cancel2, LIST_CANCEL } + { gText_Cancel2, LIST_CANCEL } }; static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c index f2754fbff0b9..efabc460e5c8 100644 --- a/src/wonder_transfer.c +++ b/src/wonder_transfer.c @@ -19,10 +19,10 @@ struct WonderGraphics { - u8 textPal1:4; - u8 textPal2:4; - u8 textPal3:4; - u8 textPal4:4; + u8 titleTextPal:4; + u8 bodyTextPal:4; + u8 footerTextPal:4; // Card only + u8 stampShadowPal:4; // Card only const u32 * tiles; const u32 * map; const u16 * pal; @@ -33,19 +33,19 @@ struct WonderGraphics //====================== enum { - CARD_WIN_0, - CARD_WIN_1, - CARD_WIN_2, + CARD_WIN_HEADER, + CARD_WIN_BODY, + CARD_WIN_FOOTER, CARD_WIN_COUNT }; -#define TAG_ICON_SHADOW 0x8000 +#define TAG_STAMP_SHADOW 0x8000 -struct UnkStruct_203F3C8_02DC +struct CardStatTextData { - u8 unk_00; - u8 unk_01[WONDER_CARD_TEXT_LENGTH + 1]; - u8 unk_42[4]; + u8 width; + u8 statText[WONDER_CARD_TEXT_LENGTH + 1]; + u8 statNumberText[4]; }; struct WonderCardData @@ -54,18 +54,18 @@ struct WonderCardData /*014c*/ struct WonderCardMetadata cardMetadata; /*0170*/ const struct WonderGraphics * gfx; /*0174*/ u8 enterExitState; - /*0175*/ u8 unk_0175; + /*0175*/ u8 statFooterWidth; /*0176*/ u16 windowIds[CARD_WIN_COUNT]; /*017C*/ u8 monIconSpriteId; - /*017D*/ u8 unk_017D[7][2]; - /*018B*/ u8 unk_018B[WONDER_CARD_TEXT_LENGTH + 1]; - /*01B4*/ u8 unk_01B4[WONDER_CARD_TEXT_LENGTH + 1]; - /*01DD*/ u8 unk_01DD[7]; - /*01E4*/ u8 unk_01E4[4][WONDER_CARD_TEXT_LENGTH + 1]; - /*0288*/ u8 unk_0288[WONDER_CARD_TEXT_LENGTH + 1]; - /*02B1*/ u8 unk_02B1[WONDER_CARD_TEXT_LENGTH + 1]; - /*02DC*/ struct UnkStruct_203F3C8_02DC unk_02DC[8]; - /*045C*/ u8 buffer_045C[0x1000]; + /*017D*/ u8 stampSpriteIds[MAX_CARD_STAMPS][2]; // 2 sprites each, 1 for the shadw and 1 for the PokĂ©mon + /*018B*/ u8 titleText[WONDER_CARD_TEXT_LENGTH + 1]; + /*01B4*/ u8 subtitleText[WONDER_CARD_TEXT_LENGTH + 1]; + /*01DD*/ u8 idNumberText[7]; + /*01E4*/ u8 bodyText[WONDER_CARD_BODY_TEXT_LINES][WONDER_CARD_TEXT_LENGTH + 1]; + /*0288*/ u8 footerLine1Text[WONDER_CARD_TEXT_LENGTH + 1]; + /*02B1*/ u8 giftText[WONDER_CARD_TEXT_LENGTH + 1]; + /*02DC*/ struct CardStatTextData statTextData[8]; + /*045C*/ u8 bgTilemapBuffer[0x1000]; }; EWRAM_DATA static struct WonderCardData * sWonderCardData = NULL; @@ -82,7 +82,7 @@ static const u8 sCard_TextColorTable[][3] = { {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY} }; -static const u8 ALIGNED(4) sCard_TextYOffsets[CARD_TYPE_COUNT] = +static const u8 ALIGNED(4) sCard_FooterTextOffsets[CARD_TYPE_COUNT] = { [CARD_TYPE_GIFT] = 7, [CARD_TYPE_STAMP] = 4, @@ -90,7 +90,7 @@ static const u8 ALIGNED(4) sCard_TextYOffsets[CARD_TYPE_COUNT] = }; static const struct WindowTemplate sCard_WindowTemplates[] = { - [CARD_WIN_0] = { + [CARD_WIN_HEADER] = { .bg = 1, .tilemapLeft = 1, .tilemapTop = 1, @@ -99,7 +99,7 @@ static const struct WindowTemplate sCard_WindowTemplates[] = { .paletteNum = 2, .baseBlock = 0x029c }, - [CARD_WIN_1] = { + [CARD_WIN_BODY] = { .bg = 1, .tilemapLeft = 1, .tilemapTop = 6, @@ -108,7 +108,7 @@ static const struct WindowTemplate sCard_WindowTemplates[] = { .paletteNum = 2, .baseBlock = 0x01bc }, - [CARD_WIN_2] = { + [CARD_WIN_FOOTER] = { .bg = 1, .tilemapLeft = 1, .tilemapTop = 14, @@ -147,24 +147,24 @@ static const u16 sIconShadowPal7[] = INCBIN_U16("graphics/wonder_card/icon static const u16 sIconShadowPal8[] = INCBIN_U16("graphics/wonder_card/icon_shadow_8.gbapal"); static const u32 sIconShadowGfx[] = INCBIN_U32("graphics/wonder_card/icon_shadow.4bpp.lz"); -static const struct CompressedSpriteSheet sSpriteSheet_IconShadow = { - sIconShadowGfx, 0x100, TAG_ICON_SHADOW +static const struct CompressedSpriteSheet sSpriteSheet_StampShadow = { + sIconShadowGfx, 0x100, TAG_STAMP_SHADOW }; -static const struct SpritePalette sSpritePalettes_IconShadow[] = { - {sIconShadowPal1, TAG_ICON_SHADOW}, - {sIconShadowPal2, TAG_ICON_SHADOW}, - {sIconShadowPal3, TAG_ICON_SHADOW}, - {sIconShadowPal4, TAG_ICON_SHADOW}, - {sIconShadowPal5, TAG_ICON_SHADOW}, - {sIconShadowPal6, TAG_ICON_SHADOW}, - {sIconShadowPal7, TAG_ICON_SHADOW}, - {sIconShadowPal8, TAG_ICON_SHADOW} +static const struct SpritePalette sSpritePalettes_StampShadow[] = { + {sIconShadowPal1, TAG_STAMP_SHADOW}, + {sIconShadowPal2, TAG_STAMP_SHADOW}, + {sIconShadowPal3, TAG_STAMP_SHADOW}, + {sIconShadowPal4, TAG_STAMP_SHADOW}, + {sIconShadowPal5, TAG_STAMP_SHADOW}, + {sIconShadowPal6, TAG_STAMP_SHADOW}, + {sIconShadowPal7, TAG_STAMP_SHADOW}, + {sIconShadowPal8, TAG_STAMP_SHADOW} }; static const struct SpriteTemplate sSpriteTemplate_IconShadow = { - .tileTag = TAG_ICON_SHADOW, - .paletteTag = TAG_ICON_SHADOW, + .tileTag = TAG_STAMP_SHADOW, + .paletteTag = TAG_STAMP_SHADOW, .oam = &gOamData_AffineOff_ObjNormal_32x16, .anims = gDummySpriteAnimTable, .images = NULL, @@ -173,14 +173,14 @@ static const struct SpriteTemplate sSpriteTemplate_IconShadow = { }; static const struct WonderGraphics sCardGraphics[NUM_WONDER_BGS] = { - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 0, .tiles = sWonderCardBgGfx1, .map = sWonderCardBgTilemap1, .pal = sWonderCardBgPal1}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 1, .tiles = sWonderCardBgGfx2, .map = sWonderCardBgTilemap2, .pal = sWonderCardBgPal2}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 2, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal3}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 3, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal4}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 4, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal5}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 5, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal6}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 6, .tiles = sWonderCardBgGfx7, .map = sWonderCardBgTilemap7, .pal = sWonderCardBgPal7}, - {.textPal1 = 1, .textPal2 = 0, .textPal3 = 0, .textPal4 = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8} + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 0, .tiles = sWonderCardBgGfx1, .map = sWonderCardBgTilemap1, .pal = sWonderCardBgPal1}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 1, .tiles = sWonderCardBgGfx2, .map = sWonderCardBgTilemap2, .pal = sWonderCardBgPal2}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 2, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal3}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 3, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal4}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 4, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal5}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 5, .tiles = sWonderCardBgGfx3, .map = sWonderCardBgTilemap3, .pal = sWonderCardBgPal6}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 6, .tiles = sWonderCardBgGfx7, .map = sWonderCardBgTilemap7, .pal = sWonderCardBgPal7}, + {.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8} }; bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * metadata) @@ -196,7 +196,7 @@ bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * met sWonderCardData->card.bgType = 0; if (sWonderCardData->card.type >= CARD_TYPE_COUNT) sWonderCardData->card.type = 0; - if (sWonderCardData->card.maxStamps > ARRAY_COUNT(sWonderCardData->unk_017D)) + if (sWonderCardData->card.maxStamps > MAX_CARD_STAMPS) sWonderCardData->card.maxStamps = 0; sWonderCardData->gfx = &sCardGraphics[sWonderCardData->card.bgType]; return TRUE; @@ -233,9 +233,9 @@ s32 WonderCard_Enter(void) CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); DecompressAndCopyTileDataToVram(2, sWonderCardData->gfx->tiles, 0, 0x008, 0); - sWonderCardData->windowIds[CARD_WIN_0] = AddWindow(&sCard_WindowTemplates[CARD_WIN_0]); - sWonderCardData->windowIds[CARD_WIN_1] = AddWindow(&sCard_WindowTemplates[CARD_WIN_1]); - sWonderCardData->windowIds[CARD_WIN_2] = AddWindow(&sCard_WindowTemplates[CARD_WIN_2]); + sWonderCardData->windowIds[CARD_WIN_HEADER] = AddWindow(&sCard_WindowTemplates[CARD_WIN_HEADER]); + sWonderCardData->windowIds[CARD_WIN_BODY] = AddWindow(&sCard_WindowTemplates[CARD_WIN_BODY]); + sWonderCardData->windowIds[CARD_WIN_FOOTER] = AddWindow(&sCard_WindowTemplates[CARD_WIN_FOOTER]); break; case 3: if (FreeTempTileDataBuffersIfPossible()) @@ -243,17 +243,17 @@ s32 WonderCard_Enter(void) LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); gPaletteFade.bufferTransferDisabled = TRUE; LoadPalette(sWonderCardData->gfx->pal, 0x10, 0x20); - LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->buffer_045C); - CopyRectToBgTilemapBufferRect(2, sWonderCardData->buffer_045C, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); + LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->bgTilemapBuffer); + CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); CopyBgTilemapBufferToVram(2); break; case 4: BufferCardText(); break; case 5: - DrawCardWindow(CARD_WIN_0); - DrawCardWindow(CARD_WIN_1); - DrawCardWindow(CARD_WIN_2); + DrawCardWindow(CARD_WIN_HEADER); + DrawCardWindow(CARD_WIN_BODY); + DrawCardWindow(CARD_WIN_FOOTER); CopyBgTilemapBufferToVram(1); break; case 6: @@ -301,9 +301,9 @@ s32 WonderCard_Exit(bool32 flag) case 3: HideBg(1); HideBg(2); - RemoveWindow(sWonderCardData->windowIds[CARD_WIN_2]); - RemoveWindow(sWonderCardData->windowIds[CARD_WIN_1]); - RemoveWindow(sWonderCardData->windowIds[CARD_WIN_0]); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_FOOTER]); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_BODY]); + RemoveWindow(sWonderCardData->windowIds[CARD_WIN_HEADER]); break; case 4: DestroyCardSprites(); @@ -327,64 +327,84 @@ s32 WonderCard_Exit(bool32 flag) static void BufferCardText(void) { u16 i = 0; - u16 r6; - u16 sp0[3] = {0, 0, 0}; - - memcpy(sWonderCardData->unk_018B, sWonderCardData->card.unk_0A, WONDER_CARD_TEXT_LENGTH); - sWonderCardData->unk_018B[WONDER_CARD_TEXT_LENGTH] = EOS; - memcpy(sWonderCardData->unk_01B4, sWonderCardData->card.unk_32, WONDER_CARD_TEXT_LENGTH); - sWonderCardData->unk_01B4[WONDER_CARD_TEXT_LENGTH] = EOS; - if (sWonderCardData->card.unk_04 > 999999) - sWonderCardData->card.unk_04 = 999999; - ConvertIntToDecimalStringN(sWonderCardData->unk_01DD, sWonderCardData->card.unk_04, STR_CONV_MODE_LEFT_ALIGN, 6); - for (i = 0; i < 4; i++) + u16 charsUntilStat; + u16 stats[3] = {0, 0, 0}; + + // Copy title/subtitle text + memcpy(sWonderCardData->titleText, sWonderCardData->card.titleText, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->titleText[WONDER_CARD_TEXT_LENGTH] = EOS; + memcpy(sWonderCardData->subtitleText, sWonderCardData->card.subtitleText, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->subtitleText[WONDER_CARD_TEXT_LENGTH] = EOS; + + // Copy card id number + if (sWonderCardData->card.idNumber > 999999) + sWonderCardData->card.idNumber = 999999; + ConvertIntToDecimalStringN(sWonderCardData->idNumberText, sWonderCardData->card.idNumber, STR_CONV_MODE_LEFT_ALIGN, 6); + + // Copy body text + for (i = 0; i < WONDER_CARD_BODY_TEXT_LINES; i++) { - memcpy(sWonderCardData->unk_01E4[i], sWonderCardData->card.unk_5A[i], WONDER_CARD_TEXT_LENGTH); - sWonderCardData->unk_01E4[i][WONDER_CARD_TEXT_LENGTH] = EOS; + memcpy(sWonderCardData->bodyText[i], sWonderCardData->card.bodyText[i], WONDER_CARD_TEXT_LENGTH); + sWonderCardData->bodyText[i][WONDER_CARD_TEXT_LENGTH] = EOS; } - memcpy(sWonderCardData->unk_0288, sWonderCardData->card.unk_FA, WONDER_CARD_TEXT_LENGTH); - sWonderCardData->unk_0288[WONDER_CARD_TEXT_LENGTH] = EOS; + + // Copy footer line 1 + memcpy(sWonderCardData->footerLine1Text, sWonderCardData->card.footerLine1Text, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->footerLine1Text[WONDER_CARD_TEXT_LENGTH] = EOS; + + // Copy footer line 2 switch (sWonderCardData->card.type) { case CARD_TYPE_GIFT: - memcpy(sWonderCardData->unk_02B1, sWonderCardData->card.unk_122, WONDER_CARD_TEXT_LENGTH); - sWonderCardData->unk_02B1[WONDER_CARD_TEXT_LENGTH] = EOS; + memcpy(sWonderCardData->giftText, sWonderCardData->card.footerLine2Text, WONDER_CARD_TEXT_LENGTH); + sWonderCardData->giftText[WONDER_CARD_TEXT_LENGTH] = EOS; break; case CARD_TYPE_STAMP: - sWonderCardData->unk_02B1[0] = EOS; + sWonderCardData->giftText[0] = EOS; break; case CARD_TYPE_LINK_STAT: - sWonderCardData->unk_02B1[0] = EOS; - sp0[0] = sWonderCardData->cardMetadata.battlesWon < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesWon : MAX_WONDER_CARD_STAT; - sp0[1] = sWonderCardData->cardMetadata.battlesLost < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesLost : MAX_WONDER_CARD_STAT; - sp0[2] = sWonderCardData->cardMetadata.numTrades < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.numTrades : MAX_WONDER_CARD_STAT; - for (i = 0; i < 8; i++) + sWonderCardData->giftText[0] = EOS; + + // Load stats + stats[0] = sWonderCardData->cardMetadata.battlesWon < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesWon : MAX_WONDER_CARD_STAT; + stats[1] = sWonderCardData->cardMetadata.battlesLost < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesLost : MAX_WONDER_CARD_STAT; + stats[2] = sWonderCardData->cardMetadata.numTrades < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.numTrades : MAX_WONDER_CARD_STAT; + + // Init stat text arrays + for (i = 0; i < ARRAY_COUNT(sWonderCardData->statTextData); i++) { - memset(sWonderCardData->unk_02DC[i].unk_42, EOS, sizeof(sWonderCardData->unk_02DC[i].unk_42)); - memset(sWonderCardData->unk_02DC[i].unk_01, EOS, sizeof(sWonderCardData->unk_02DC[i].unk_01)); + memset(sWonderCardData->statTextData[i].statNumberText, EOS, sizeof(sWonderCardData->statTextData[i].statNumberText)); + memset(sWonderCardData->statTextData[i].statText, EOS, sizeof(sWonderCardData->statTextData[i].statText)); } - for (i = 0, r6 = 0; i < WONDER_CARD_TEXT_LENGTH; i++) + + // Copy stat texts + for (i = 0, charsUntilStat = 0; i < WONDER_CARD_TEXT_LENGTH; i++) { - if (sWonderCardData->card.unk_122[i] != CHAR_DYNAMIC) + if (sWonderCardData->card.footerLine2Text[i] != CHAR_DYNAMIC) { - sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_01[r6] = sWonderCardData->card.unk_122[i]; - r6++; + // Regular text, just copy as is + sWonderCardData->statTextData[sWonderCardData->statFooterWidth].statText[charsUntilStat] = sWonderCardData->card.footerLine2Text[i]; + charsUntilStat++; } else { - u8 r3 = sWonderCardData->card.unk_122[i + 1]; - if (r3 > 2) + // Dynamic char encountered + // These are used to give the id of which stat to print + u8 id = sWonderCardData->card.footerLine2Text[i + 1]; + if (id >= ARRAY_COUNT(stats)) { + // Invalid stat id, skip ahead i += 2; } else { - ConvertIntToDecimalStringN(sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_42, sp0[r3], STR_CONV_MODE_LEADING_ZEROS, 3); - sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_00 = sWonderCardData->card.unk_122[i + 2]; - sWonderCardData->unk_0175++; - if (sWonderCardData->unk_0175 > 7) + // Copy stat number + ConvertIntToDecimalStringN(sWonderCardData->statTextData[sWonderCardData->statFooterWidth].statNumberText, stats[id], STR_CONV_MODE_LEADING_ZEROS, 3); + sWonderCardData->statTextData[sWonderCardData->statFooterWidth].width = sWonderCardData->card.footerLine2Text[i + 2]; + sWonderCardData->statFooterWidth++; + if (sWonderCardData->statFooterWidth >= ARRAY_COUNT(sWonderCardData->statTextData)) break; - r6 = 0; + charsUntilStat = 0; i += 2; } } @@ -394,47 +414,66 @@ static void BufferCardText(void) static void DrawCardWindow(u8 whichWindow) { - s8 sp0C = 0; + s8 i = 0; s32 windowId = sWonderCardData->windowIds[whichWindow]; PutWindowTilemap(windowId); FillWindowPixelBuffer(windowId, 0); switch (whichWindow) { - case CARD_WIN_0: + case CARD_WIN_HEADER: { + // Print card title/subtitle s32 x; - AddTextPrinterParameterized3(windowId, 3, 0, 1, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_018B); - x = 160 - GetStringWidth(3, sWonderCardData->unk_01B4, GetFontAttribute(3, FONTATTR_LETTER_SPACING)); + AddTextPrinterParameterized3(windowId, 3, 0, 1, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->titleText); + x = 160 - GetStringWidth(3, sWonderCardData->subtitleText, GetFontAttribute(3, FONTATTR_LETTER_SPACING)); if (x < 0) x = 0; - AddTextPrinterParameterized3(windowId, 3, x, 17, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_01B4); - if (sWonderCardData->card.unk_04 != 0) - AddTextPrinterParameterized3(windowId, 1, 166, 17, sCard_TextColorTable[sWonderCardData->gfx->textPal1], 0, sWonderCardData->unk_01DD); + AddTextPrinterParameterized3(windowId, 3, x, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->subtitleText); + + // Print id number + if (sWonderCardData->card.idNumber != 0) + AddTextPrinterParameterized3(windowId, 1, 166, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->idNumberText); break; } - case CARD_WIN_1: - for (; sp0C < 4; sp0C++) - AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, sCard_TextColorTable[sWonderCardData->gfx->textPal2], 0, sWonderCardData->unk_01E4[sp0C]); - break; - case CARD_WIN_2: - AddTextPrinterParameterized3(windowId, 3, 0, sCard_TextYOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_0288); + case CARD_WIN_BODY: + // Print body text + for (; i < WONDER_CARD_BODY_TEXT_LINES; i++) + AddTextPrinterParameterized3(windowId, 3, 0, 16 * i + 2, sCard_TextColorTable[sWonderCardData->gfx->bodyTextPal], 0, sWonderCardData->bodyText[i]); + break; + case CARD_WIN_FOOTER: + // Print footer line 1 + AddTextPrinterParameterized3(windowId, 3, 0, + sCard_FooterTextOffsets[sWonderCardData->card.type], + sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], + 0, sWonderCardData->footerLine1Text); + + // Print footer line 2 if (sWonderCardData->card.type != CARD_TYPE_LINK_STAT) { - AddTextPrinterParameterized3(windowId, 3, 0, 16 + sCard_TextYOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02B1); + // Print gift text + // Odd that CARD_TYPE_STAMP is not ignored, it has empty text for this + AddTextPrinterParameterized3(windowId, 3, 0, + 16 + sCard_FooterTextOffsets[sWonderCardData->card.type], + sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], + 0, sWonderCardData->giftText); } else { s32 x = 0; - s32 y = sCard_TextYOffsets[sWonderCardData->card.type] + 16; + s32 y = sCard_FooterTextOffsets[sWonderCardData->card.type] + 16; s32 spacing = GetFontAttribute(3, FONTATTR_LETTER_SPACING); - for (; sp0C < sWonderCardData->unk_0175; sp0C++) + for (; i < sWonderCardData->statFooterWidth; i++) { - AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_01); - if (sWonderCardData->unk_02DC[sp0C].unk_42[0] != EOS) + // Print stat text + AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->statTextData[i].statText); + if (sWonderCardData->statTextData[i].statNumberText[0] != EOS) { - x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_01, spacing); - AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_42); - x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_42, spacing) + sWonderCardData->unk_02DC[sp0C].unk_00; + // Print stat number + x += GetStringWidth(3, sWonderCardData->statTextData[i].statText, spacing); + AddTextPrinterParameterized3(windowId, 3, x, y, + sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], + 0, sWonderCardData->statTextData[i].statNumberText); + x += GetStringWidth(3, sWonderCardData->statTextData[i].statNumberText, spacing) + sWonderCardData->statTextData[i].width; } } } @@ -447,22 +486,26 @@ static void CreateCardSprites(void) { u8 i = 0; sWonderCardData->monIconSpriteId = SPRITE_NONE; + + // Create icon sprite if (sWonderCardData->cardMetadata.iconSpecies != SPECIES_NONE) { sWonderCardData->monIconSpriteId = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.iconSpecies), SpriteCallbackDummy, 220, 20, 0, FALSE); gSprites[sWonderCardData->monIconSpriteId].oam.priority = 2; } + + // Create stamp sprites if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { - LoadCompressedSpriteSheetUsingHeap(&sSpriteSheet_IconShadow); - LoadSpritePalette(&sSpritePalettes_IconShadow[sWonderCardData->gfx->textPal4]); + LoadCompressedSpriteSheetUsingHeap(&sSpriteSheet_StampShadow); + LoadSpritePalette(&sSpritePalettes_StampShadow[sWonderCardData->gfx->stampShadowPal]); for (; i < sWonderCardData->card.maxStamps; i++) { - sWonderCardData->unk_017D[i][0] = SPRITE_NONE; - sWonderCardData->unk_017D[i][1] = SPRITE_NONE; - sWonderCardData->unk_017D[i][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * i, 144, 8); - if (sWonderCardData->cardMetadata.stampData[0][i] != SPECIES_NONE) - sWonderCardData->unk_017D[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[0][i]), + sWonderCardData->stampSpriteIds[i][0] = SPRITE_NONE; + sWonderCardData->stampSpriteIds[i][1] = SPRITE_NONE; + sWonderCardData->stampSpriteIds[i][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * i, 144, 8); + if (sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i] != SPECIES_NONE) + sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), SpriteCallbackDummy, 216 - 32 * i, 136, 0, 0); @@ -473,19 +516,23 @@ static void CreateCardSprites(void) static void DestroyCardSprites(void) { u8 i = 0; + + // Destroy icon sprite if (sWonderCardData->monIconSpriteId != SPRITE_NONE) FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->monIconSpriteId]); + + // Destroy stamp sprites if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { for (; i < sWonderCardData->card.maxStamps; i++) { - if (sWonderCardData->unk_017D[i][0] != SPRITE_NONE) - DestroySprite(&gSprites[sWonderCardData->unk_017D[i][0]]); - if (sWonderCardData->unk_017D[i][1] != SPRITE_NONE) - FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->unk_017D[i][1]]); + if (sWonderCardData->stampSpriteIds[i][0] != SPRITE_NONE) + DestroySprite(&gSprites[sWonderCardData->stampSpriteIds[i][0]]); + if (sWonderCardData->stampSpriteIds[i][1] != SPRITE_NONE) + FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->stampSpriteIds[i][1]]); } - FreeSpriteTilesByTag(TAG_ICON_SHADOW); - FreeSpritePaletteByTag(TAG_ICON_SHADOW); + FreeSpriteTilesByTag(TAG_STAMP_SHADOW); + FreeSpritePaletteByTag(TAG_STAMP_SHADOW); } } @@ -494,8 +541,8 @@ static void DestroyCardSprites(void) //====================== enum { - NEWS_WIN_0, - NEWS_WIN_1, + NEWS_WIN_TITLE, + NEWS_WIN_BODY, NEWS_WIN_COUNT }; @@ -515,11 +562,11 @@ struct WonderNewsData /*01c4*/ u16 scrollEnd; /*01c6*/ u16 scrollOffset; /*01c8*/ u16 windowIds[NEWS_WIN_COUNT]; - /*01cc*/ u8 filler_01CC[2]; - /*01ce*/ u8 unk_01CE[WONDER_NEWS_TEXT_LENGTH + 1]; - /*01f7*/ u8 unk_01F7[10][WONDER_NEWS_TEXT_LENGTH + 1]; + /*01cc*/ u8 unused[2]; + /*01ce*/ u8 titleText[WONDER_NEWS_TEXT_LENGTH + 1]; + /*01f7*/ u8 bodyText[WONDER_NEWS_BODY_TEXT_LINES][WONDER_NEWS_TEXT_LENGTH + 1]; /*0394*/ struct ScrollArrowsTemplate arrowsTemplate; - /*03a4*/ u8 buffer_03A4[0x1000]; + /*03a4*/ u8 bgTilemapBuffer[0x1000]; }; EWRAM_DATA static struct WonderNewsData * sWonderNewsData = NULL; @@ -534,7 +581,7 @@ static const u8 sNews_TextColorTable[][3] = { }; static const struct WindowTemplate sNews_WindowTemplates[] = { - [NEWS_WIN_0] = { + [NEWS_WIN_TITLE] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 0, @@ -543,7 +590,7 @@ static const struct WindowTemplate sNews_WindowTemplates[] = { .paletteNum = 2, .baseBlock = 0x2AC }, - [NEWS_WIN_1] = { + [NEWS_WIN_BODY] = { .bg = 2, .tilemapLeft = 1, .tilemapTop = 3, @@ -583,14 +630,14 @@ static const u32 sWonderNewsGfx8[] = INCBIN_U32("graphics/wonder_news/bg8.4b static const u32 sWonderNewsTilemap8[] = INCBIN_U32("graphics/wonder_news/bg8.bin.lz"); static const struct WonderGraphics sNewsGraphics[NUM_WONDER_BGS] = { - {1, 0, 0, 0, sWonderNewsGfx1, sWonderNewsTilemap1, sWonderNewsPal1}, - {1, 0, 0, 0, sWonderNewsGfx2, sWonderNewsTilemap2, sWonderCardBgPal2}, - {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal3}, - {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal4}, - {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal5}, - {1, 0, 0, 0, sWonderNewsGfx3, sWonderNewsTilemap3, sWonderCardBgPal6}, - {1, 0, 0, 0, sWonderNewsGfx7, sWonderNewsTilemap7, sWonderNewsPal7}, - {1, 0, 0, 0, sWonderNewsGfx8, sWonderNewsTilemap8, sWonderNewsPal8} + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx1, .map = sWonderNewsTilemap1, .pal = sWonderNewsPal1}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx2, .map = sWonderNewsTilemap2, .pal = sWonderCardBgPal2}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx3, .map = sWonderNewsTilemap3, .pal = sWonderCardBgPal3}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx3, .map = sWonderNewsTilemap3, .pal = sWonderCardBgPal4}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx3, .map = sWonderNewsTilemap3, .pal = sWonderCardBgPal5}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx3, .map = sWonderNewsTilemap3, .pal = sWonderCardBgPal6}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx7, .map = sWonderNewsTilemap7, .pal = sWonderNewsPal7}, + {.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx8, .map = sWonderNewsTilemap8, .pal = sWonderNewsPal8} }; bool32 WonderNews_Init(const struct WonderNews * news) @@ -601,7 +648,7 @@ bool32 WonderNews_Init(const struct WonderNews * news) if (sWonderNewsData == NULL) return FALSE; sWonderNewsData->news = *news; - if (sWonderNewsData->news.bgType >= ARRAY_COUNT(sNewsGraphics)) + if (sWonderNewsData->news.bgType >= NUM_WONDER_BGS) sWonderNewsData->news.bgType = 0; sWonderNewsData->gfx = &sNewsGraphics[sWonderNewsData->news.bgType]; sWonderNewsData->arrowTaskId = TASK_NONE; @@ -651,8 +698,8 @@ s32 WonderNews_Enter(void) CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); DecompressAndCopyTileDataToVram(3, sWonderNewsData->gfx->tiles, 0, 8, 0); - sWonderNewsData->windowIds[NEWS_WIN_0] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_0]); - sWonderNewsData->windowIds[NEWS_WIN_1] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_1]); + sWonderNewsData->windowIds[NEWS_WIN_TITLE] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_TITLE]); + sWonderNewsData->windowIds[NEWS_WIN_BODY] = AddWindow(&sNews_WindowTemplates[NEWS_WIN_BODY]); break; case 3: if (FreeTempTileDataBuffersIfPossible()) @@ -660,9 +707,9 @@ s32 WonderNews_Enter(void) LoadPalette(GetTextWindowPalette(1), 0x20, 0x20); gPaletteFade.bufferTransferDisabled = TRUE; LoadPalette(sWonderNewsData->gfx->pal, 0x10, 0x20); - LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->buffer_03A4); - CopyRectToBgTilemapBufferRect(1, sWonderNewsData->buffer_03A4, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); - CopyRectToBgTilemapBufferRect(3, sWonderNewsData->buffer_03A4, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); + LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->bgTilemapBuffer); + CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); + CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(3); break; @@ -726,8 +773,8 @@ s32 WonderNews_Exit(bool32 flag) case 3: HideBg(1); HideBg(2); - RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_1]); - RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_0]); + RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_BODY]); + RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_TITLE]); break; case 4: ChangeBgY(2, 0, 0); @@ -819,13 +866,17 @@ u32 WonderNews_GetInput(u16 input) static void BufferNewsText(void) { u8 i = 0; - memcpy(sWonderNewsData->unk_01CE, sWonderNewsData->news.unk_04, WONDER_NEWS_TEXT_LENGTH); - sWonderNewsData->unk_01CE[WONDER_NEWS_TEXT_LENGTH] = EOS; - for (; i < 10; ++i) + + // Copy title text + memcpy(sWonderNewsData->titleText, sWonderNewsData->news.titleText, WONDER_NEWS_TEXT_LENGTH); + sWonderNewsData->titleText[WONDER_NEWS_TEXT_LENGTH] = EOS; + + // Copy body text + for (; i < WONDER_NEWS_BODY_TEXT_LINES; ++i) { - memcpy(sWonderNewsData->unk_01F7[i], sWonderNewsData->news.unk_2C[i], WONDER_NEWS_TEXT_LENGTH); - sWonderNewsData->unk_01F7[i][WONDER_NEWS_TEXT_LENGTH] = EOS; - if (i > 7 && sWonderNewsData->unk_01F7[i][0] != EOS) + memcpy(sWonderNewsData->bodyText[i], sWonderNewsData->news.bodyText[i], WONDER_NEWS_TEXT_LENGTH); + sWonderNewsData->bodyText[i][WONDER_NEWS_TEXT_LENGTH] = EOS; + if (i > 7 && sWonderNewsData->bodyText[i][0] != EOS) ++sWonderNewsData->scrollEnd; } sWonderNewsData->arrowsTemplate = sNews_ArrowsTemplate; @@ -836,18 +887,26 @@ static void DrawNewsWindows(void) { u8 i = 0; s32 x; - PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_0]); - PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_1]); - FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_0], 0); - FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_1], 0); - x = (224 - GetStringWidth(3, sWonderNewsData->unk_01CE, GetFontAttribute(3, FONTATTR_LETTER_SPACING))) / 2; + PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_TITLE]); + PutWindowTilemap(sWonderNewsData->windowIds[NEWS_WIN_BODY]); + FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 0); + FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_BODY], 0); + + // Print title text + x = (224 - GetStringWidth(3, sWonderNewsData->titleText, GetFontAttribute(3, FONTATTR_LETTER_SPACING))) / 2; if (x < 0) x = 0; - AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_0], 3, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->textPal1], 0, sWonderNewsData->unk_01CE); - for (; i < 10; ++i) - AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_1], 3, 0, 16 * i + 2, sNews_TextColorTable[sWonderNewsData->gfx->textPal2], 0, sWonderNewsData->unk_01F7[i]); - CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_0], 3); - CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_1], 3); + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 3, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); + + // Print body text + for (; i < WONDER_NEWS_BODY_TEXT_LINES; ++i) + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], 3, 0, + 16 * i + 2, + sNews_TextColorTable[sWonderNewsData->gfx->bodyTextPal], + 0, sWonderNewsData->bodyText[i]); + + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 3); + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_BODY], 3); } static void UpdateNewsScroll(void) From 5f9069628d193b61b7601dc016509b91024ffa1b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 01:35:26 -0400 Subject: [PATCH 309/762] Clean up mevent2 --- include/constants/global.h | 2 ++ include/constants/mevent.h | 5 +++-- include/global.h | 4 ++-- include/mevent.h | 14 +++++++------ src/cable_club.c | 4 ++-- src/mevent2.c | 42 ++++++++++++++++++++++---------------- src/trade.c | 2 +- src/wonder_transfer.c | 4 ++-- 8 files changed, 44 insertions(+), 33 deletions(-) diff --git a/include/constants/global.h b/include/constants/global.h index 7fca5453c50c..12d6178b2e67 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -92,6 +92,8 @@ #define WONDER_CARD_BODY_TEXT_LINES 4 #define WONDER_NEWS_BODY_TEXT_LINES 10 +#define MAX_STAMP_CARD_STAMPS 7 + #define MALE 0 #define FEMALE 1 #define GENDER_COUNT 2 diff --git a/include/constants/mevent.h b/include/constants/mevent.h index 91eacd8011de..636043fdba9f 100644 --- a/include/constants/mevent.h +++ b/include/constants/mevent.h @@ -13,11 +13,13 @@ #define CARD_STAT_NUM_STAMPS 3 #define CARD_STAT_MAX_STAMPS 4 +// Values for the type field of Wonder Card #define CARD_TYPE_GIFT 0 // Normal "Wonder Card" #define CARD_TYPE_STAMP 1 // "Stamp Card" #define CARD_TYPE_LINK_STAT 2 // Referred to as the "Battle Card", shows battle and trade stats #define CARD_TYPE_COUNT 3 +// Values for the sendType field of Wonder Card/News #define SEND_TYPE_DISALLOWED 0 #define SEND_TYPE_ALLOWED 1 #define SEND_TYPE_ALLOWED_ALWAYS 2 @@ -27,10 +29,9 @@ #define HAS_SAME_CARD 1 #define HAS_DIFF_CARD 2 +// The number of battles needed to be recorded on a Battle Card to win a prize #define REQUIRED_CARD_BATTLES 3 -#define MAX_CARD_STAMPS 7 - // Stamps are 32 bits. The first 16 bits are the species // and the second 16 bits are a number (presumably an ID of some kind) #define STAMP_SPECIES 0 diff --git a/include/global.h b/include/global.h index 36fbfc38d3ef..8681f7289b1d 100644 --- a/include/global.h +++ b/include/global.h @@ -847,7 +847,7 @@ struct WonderNewsMetadata struct WonderNews { - u16 unk_00; + u16 id; u8 sendType; // SEND_TYPE_* u8 bgType; u8 titleText[WONDER_NEWS_TEXT_LENGTH]; @@ -876,7 +876,7 @@ struct WonderCardMetadata u16 battlesLost; u16 numTrades; u16 iconSpecies; - u16 stampData[2][7]; + u16 stampData[2][MAX_STAMP_CARD_STAMPS]; // First element is STAMP_SPECIES, second is STAMP_ID }; struct MysteryGiftSave diff --git a/include/mevent.h b/include/mevent.h index 9b7ef3ab535b..c3e14f1f3d84 100755 --- a/include/mevent.h +++ b/include/mevent.h @@ -6,11 +6,13 @@ struct MysteryGiftLinkGameData { - u32 unk_00; - u16 unk_04; - u32 unk_08; - u16 unk_0C; - u32 unk_10; + // It's possible these first 5 fields had some other meaningful purpose, + // but they are only ever set when creating this data and read to validate it. + u32 validationVar; + u16 validationFlag1; + u32 validationFlag2; + u16 validationGiftType1; + u32 validationGiftType2; u16 flagId; u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; struct WonderCardMetadata cardMetadata; @@ -50,6 +52,6 @@ u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *da u16 MysteryGift_GetCardStat(u32 stat); void MysteryGift_DisableStats(void); bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId); -void TryIncrementMysteryGiftStat(u32 stat, u32 trainerId); +void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId); #endif //GUARD_MEVENT_H diff --git a/src/cable_club.c b/src/cable_club.c index e9100b0112fc..69fcb660b536 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -1004,10 +1004,10 @@ void CB2_ReturnFromCableClubBattle(void) switch (gBattleOutcome) { case B_OUTCOME_WON: - TryIncrementMysteryGiftStat(CARD_STAT_BATTLES_WON, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + MysteryGift_TryIncrementStat(CARD_STAT_BATTLES_WON, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); break; case B_OUTCOME_LOST: - TryIncrementMysteryGiftStat(CARD_STAT_BATTLES_LOST, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + MysteryGift_TryIncrementStat(CARD_STAT_BATTLES_LOST, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); break; } } diff --git a/src/mevent2.c b/src/mevent2.c index d781e211979f..36652f44e05d 100755 --- a/src/mevent2.c +++ b/src/mevent2.c @@ -83,9 +83,9 @@ bool32 ValidateSavedWonderNews(void) return TRUE; } -static bool32 ValidateWonderNews(const struct WonderNews *data) +static bool32 ValidateWonderNews(const struct WonderNews *news) { - if (data->unk_00 == 0) + if (news->id == 0) return FALSE; return TRUE; @@ -93,8 +93,8 @@ static bool32 ValidateWonderNews(const struct WonderNews *data) bool32 IsSendingSavedWonderNewsAllowed(void) { - const struct WonderNews *data = &gSaveBlock1Ptr->mysteryGift.news; - if (data->sendType == SEND_TYPE_DISALLOWED) + const struct WonderNews *news = &gSaveBlock1Ptr->mysteryGift.news; + if (news->sendType == SEND_TYPE_DISALLOWED) return FALSE; return TRUE; @@ -177,7 +177,7 @@ static bool32 ValidateWonderCard(const struct WonderCard *card) return FALSE; if (card->bgType >= NUM_WONDER_BGS) return FALSE; - if (card->maxStamps > MAX_CARD_STAMPS) + if (card->maxStamps > MAX_STAMP_CARD_STAMPS) return FALSE; return TRUE; @@ -339,23 +339,29 @@ bool32 MysteryGift_TrySaveStamp(const u16 *stamp) return FALSE; } +#define GAME_DATA_VALID_VAR 0x101 +#define GAME_DATA_VALID_GIFT_TYPE_1 (1 << 2) +#define GAME_DATA_VALID_GIFT_TYPE_2 (1 << 9) + void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews) { int i; CpuFill32(0, data, sizeof(*data)); - data->unk_00 = 0x101; - data->unk_04 = 1; - data->unk_08 = 1; + data->validationVar = GAME_DATA_VALID_VAR; + data->validationFlag1 = 1; + data->validationFlag2 = 1; if (isWonderNews) { - data->unk_0C = 5; - data->unk_10 = 0x0201; + // Despite setting these for News, they are + // only ever checked for Cards + data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1 | 1; + data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2 | 1; } else // Wonder Card { - data->unk_0C = 4; - data->unk_10 = 0x0200; + data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1; + data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2; } if (ValidateSavedWonderCard()) @@ -383,21 +389,21 @@ void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 i bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 forNews) { - if (data->unk_00 != 0x101) + if (data->validationVar != GAME_DATA_VALID_VAR) return FALSE; - if (!(data->unk_04 & 1)) + if (!(data->validationFlag1 & 1)) return FALSE; - if (!(data->unk_08 & 1)) + if (!(data->validationFlag2 & 1)) return FALSE; if (!forNews) { - if (!(data->unk_0C & 4)) + if (!(data->validationGiftType1 & GAME_DATA_VALID_GIFT_TYPE_1)) return FALSE; - if (!(data->unk_10 & 0x380)) + if (!(data->validationGiftType2 & (GAME_DATA_VALID_GIFT_TYPE_2 | 0x180))) return FALSE; } @@ -581,7 +587,7 @@ bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId) return TRUE; } -void TryIncrementMysteryGiftStat(u32 stat, u32 trainerId) +void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId) { if (sStatsEnabled) { diff --git a/src/trade.c b/src/trade.c index f51a9f6e962d..acae292e5892 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4655,7 +4655,7 @@ static void CB2_SaveAndEndTrade(void) if (!InUnionRoom()) IncrementGameStat(GAME_STAT_POKEMON_TRADES); if (gWirelessCommType) - TryIncrementMysteryGiftStat(CARD_STAT_NUM_TRADES, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); + MysteryGift_TryIncrementStat(CARD_STAT_NUM_TRADES, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); SetContinueGameWarpStatusToDynamicWarp(); sub_8153380(); diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c index efabc460e5c8..d958b8aef901 100644 --- a/src/wonder_transfer.c +++ b/src/wonder_transfer.c @@ -57,7 +57,7 @@ struct WonderCardData /*0175*/ u8 statFooterWidth; /*0176*/ u16 windowIds[CARD_WIN_COUNT]; /*017C*/ u8 monIconSpriteId; - /*017D*/ u8 stampSpriteIds[MAX_CARD_STAMPS][2]; // 2 sprites each, 1 for the shadw and 1 for the PokĂ©mon + /*017D*/ u8 stampSpriteIds[MAX_STAMP_CARD_STAMPS][2]; // 2 sprites each, 1 for the shadw and 1 for the PokĂ©mon /*018B*/ u8 titleText[WONDER_CARD_TEXT_LENGTH + 1]; /*01B4*/ u8 subtitleText[WONDER_CARD_TEXT_LENGTH + 1]; /*01DD*/ u8 idNumberText[7]; @@ -196,7 +196,7 @@ bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * met sWonderCardData->card.bgType = 0; if (sWonderCardData->card.type >= CARD_TYPE_COUNT) sWonderCardData->card.type = 0; - if (sWonderCardData->card.maxStamps > MAX_CARD_STAMPS) + if (sWonderCardData->card.maxStamps > MAX_STAMP_CARD_STAMPS) sWonderCardData->card.maxStamps = 0; sWonderCardData->gfx = &sCardGraphics[sWonderCardData->card.bgType]; return TRUE; From 3cd27acbea87007fdb041035919c5b8a1b4bafcc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 02:09:31 -0400 Subject: [PATCH 310/762] Document wonder news --- data/specials.inc | 2 +- include/constants/vars.h | 2 +- include/global.h | 8 +- include/mevent_news.h | 10 ++- src/mevent_news.c | 176 +++++++++++++++++++++------------------ src/mystery_gift.c | 6 +- 6 files changed, 112 insertions(+), 92 deletions(-) diff --git a/data/specials.inc b/data/specials.inc index 85c9251c6d7f..b8d7f232ce6c 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -430,7 +430,7 @@ gSpecials:: def_special ShowWirelessCommunicationScreen def_special InitUnionRoom def_special BufferUnionRoomPlayerName - def_special sub_801DC20 + def_special RetrieveWonderNewsVal def_special ChooseMonForWirelessMinigame def_special Script_ResetUnionRoomTrade def_special IsBadEggInParty diff --git a/include/constants/vars.h b/include/constants/vars.h index e57b021854a7..8128b6f3210a 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -60,7 +60,7 @@ #define VAR_POISON_STEP_COUNTER 0x402B #define VAR_RESET_RTC_ENABLE 0x402C #define VAR_ENIGMA_BERRY_AVAILABLE 0x402D -#define VAR_0x402E 0x402E +#define VAR_WONDER_NEWS_COUNTER 0x402E #define VAR_FRONTIER_MANIAC_FACILITY 0x402F #define VAR_FRONTIER_GAMBLER_CHALLENGE 0x4030 diff --git a/include/global.h b/include/global.h index 8681f7289b1d..d82ea875e038 100644 --- a/include/global.h +++ b/include/global.h @@ -839,10 +839,10 @@ struct SaveTrainerHill struct WonderNewsMetadata { - u8 unk_0_0:2; - u8 unk_0_2:3; - u8 unk_0_5:3; - u8 unk_1; + u8 newsType:2; + u8 sentCounter:3; + u8 getCounter:3; + u8 rand; }; struct WonderNews diff --git a/include/mevent_news.h b/include/mevent_news.h index 7b4657e14653..b0a0b8f07716 100755 --- a/include/mevent_news.h +++ b/include/mevent_news.h @@ -1,7 +1,15 @@ #ifndef GUARD_MEVENT_NEWS_H #define GUARD_MEVENT_NEWS_H +enum { + WONDER_NEWS_NONE, + WONDER_NEWS_RECV_FRIEND, + WONDER_NEWS_RECV_WIRELESS, + WONDER_NEWS_SENT, +}; + + void InitSavedWonderNews(void); -void GenerateRandomWonderNews(u32 a0); +void GenerateRandomWonderNews(u32 newsType); #endif //GUARD_MEVENT_NEWS_H diff --git a/src/mevent_news.c b/src/mevent_news.c index 0fbb9452d6d9..27b22566d7f7 100644 --- a/src/mevent_news.c +++ b/src/mevent_news.c @@ -4,27 +4,43 @@ #include "event_data.h" #include "mevent_news.h" -static u32 sub_801DCAC(struct WonderNewsMetadata *); -static void sub_801DD10(struct WonderNewsMetadata *); -static u32 sub_801DD44(struct WonderNewsMetadata *); -static void sub_801DCD8(struct WonderNewsMetadata *); -static void sub_801DCCC(struct WonderNewsMetadata *); - -void GenerateRandomWonderNews(u32 a0) +/* + Wonder News related functions. + Because this feature is largely unused, the names in here are + mostly nebulous and without a real indication of purpose. +*/ + +enum { + NEWS_VAL_INVALID, + NEWS_VAL_RECV_FRIEND, + NEWS_VAL_RECV_WIRELESS, + NEWS_VAL_NONE, + NEWS_VAL_SENT, + NEWS_VAL_SENT_MAX, + NEWS_VAL_GET_MAX, +}; + +static u32 GetNewsId(struct WonderNewsMetadata *); +static void IncrementGetNewsCounter(struct WonderNewsMetadata *); +static u32 GetNewsValByNewsType(struct WonderNewsMetadata *); +static void IncrementSentNewsCounter(struct WonderNewsMetadata *); +static void ResetSentNewsCounter(struct WonderNewsMetadata *); + +void GenerateRandomWonderNews(u32 newsType) { struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - data->unk_0_0 = a0; - switch (a0) + data->newsType = newsType; + switch (newsType) { - case 0: + case WONDER_NEWS_NONE: break; - case 1: - case 2: - data->unk_1 = (Random() % 15) + 16; + case WONDER_NEWS_RECV_FRIEND: + case WONDER_NEWS_RECV_WIRELESS: + data->rand = (Random() % 15) + 16; break; - case 3: - data->unk_1 = (Random() % 15) + 1; + case WONDER_NEWS_SENT: + data->rand = (Random() % 15) + 1; break; } } @@ -33,116 +49,112 @@ void InitSavedWonderNews(void) { struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - data->unk_0_0 = 0; - data->unk_0_2 = 0; - data->unk_0_5 = 0; - data->unk_1 = 0; - VarSet(VAR_0x402E, 0); + data->newsType = WONDER_NEWS_NONE; + data->sentCounter = 0; + data->getCounter = 0; + data->rand = 0; + VarSet(VAR_WONDER_NEWS_COUNTER, 0); } -void sub_801DBDC(void) +// Unused +static void TryIncrementWonderNewsVar(void) { - u16 *r4 = GetVarPointer(VAR_0x402E); + u16 *var = GetVarPointer(VAR_WONDER_NEWS_COUNTER); struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - struct WonderNewsMetadata r0 = *data; - if ((u8)r0.unk_0_5 > 4 && ++(*r4) > 0x1f3) + if (data->getCounter > 4 && ++(*var) >= 500) { - data->unk_0_5 = 0; - *r4 = 0; + data->getCounter = 0; + *var = 0; } } // Unused -u16 sub_801DC20(void) +u16 RetrieveWonderNewsVal(void) { - u16 *r6 = &gSpecialVar_Result; + u16 *result = &gSpecialVar_Result; struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); - u16 r5; + u16 newsVal; + // Checks if Mystery Event is enabled, not Mystery Gift? if (!IsMysteryEventEnabled() || !ValidateSavedWonderNews()) return 0; - r5 = sub_801DD44(data); + newsVal = GetNewsValByNewsType(data); - switch (r5) + switch (newsVal) { - case 0: - break; - case 1: - *r6 = sub_801DCAC(data); + case NEWS_VAL_RECV_FRIEND: + *result = GetNewsId(data); break; - case 2: - *r6 = sub_801DCAC(data); + case NEWS_VAL_RECV_WIRELESS: + *result = GetNewsId(data); break; - case 3: + case NEWS_VAL_SENT: + *result = GetNewsId(data); + IncrementSentNewsCounter(data); break; - case 4: - *r6 = sub_801DCAC(data); - sub_801DCD8(data); + case NEWS_VAL_SENT_MAX: + *result = GetNewsId(data); + ResetSentNewsCounter(data); break; - case 5: - *r6 = sub_801DCAC(data); - sub_801DCCC(data); - break; - case 6: + case NEWS_VAL_INVALID: + case NEWS_VAL_NONE: + case NEWS_VAL_GET_MAX: break; } - return r5; + return newsVal; } -static u32 sub_801DCAC(struct WonderNewsMetadata *data) +static u32 GetNewsId(struct WonderNewsMetadata *data) { - u32 r4; - - data->unk_0_0 = 0; - r4 = data->unk_1 + 0x84; - data->unk_1 = 0; - sub_801DD10(data); - return r4; + u32 id; + data->newsType = WONDER_NEWS_NONE; + id = data->rand + 132; + data->rand = 0; + IncrementGetNewsCounter(data); + return id; } -static void sub_801DCCC(struct WonderNewsMetadata *data) +static void ResetSentNewsCounter(struct WonderNewsMetadata *data) { - data->unk_0_2 = 0; + data->sentCounter = 0; } -static void sub_801DCD8(struct WonderNewsMetadata *data) +static void IncrementSentNewsCounter(struct WonderNewsMetadata *data) { - data->unk_0_2++; - if ((u8)data->unk_0_2 > 4) - data->unk_0_2 = 4; + data->sentCounter++; + if (data->sentCounter > 4) + data->sentCounter = 4; } -static void sub_801DD10(struct WonderNewsMetadata *data) +static void IncrementGetNewsCounter(struct WonderNewsMetadata *data) { - data->unk_0_5++; - if ((u8)data->unk_0_5 > 5) - data->unk_0_5 = 5; + data->getCounter++; + if (data->getCounter > 5) + data->getCounter = 5; } -static u32 sub_801DD44(struct WonderNewsMetadata *data) +static u32 GetNewsValByNewsType(struct WonderNewsMetadata *data) { - struct WonderNewsMetadata r0; - if ((u8)data->unk_0_5 == 5) - return 6; + if (data->getCounter == 5) + return NEWS_VAL_GET_MAX; - r0 = *data; - switch (r0.unk_0_0) + switch (data->newsType) { - case 0: - return 3; - case 1: - return 1; - case 2: - return 2; - case 3: - if ((u8)r0.unk_0_2 < 3) - return 4; - return 5; + case WONDER_NEWS_NONE: + return NEWS_VAL_NONE; + case WONDER_NEWS_RECV_FRIEND: + return NEWS_VAL_RECV_FRIEND; + case WONDER_NEWS_RECV_WIRELESS: + return NEWS_VAL_RECV_WIRELESS; + case WONDER_NEWS_SENT: + if (data->sentCounter < 3) + return NEWS_VAL_SENT; + return NEWS_VAL_SENT_MAX; default: AGB_ASSERT(0); - return 0; + return NEWS_VAL_INVALID; } } diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 35bf8e9edf98..864ea9838db0 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -1371,9 +1371,9 @@ static void Task_MysteryGift(u8 taskId) if (data->msgId == CLI_MSG_NEWS_RECEIVED) { if (data->sourceIsFriend == TRUE) - GenerateRandomWonderNews(1); + GenerateRandomWonderNews(WONDER_NEWS_RECV_FRIEND); else - GenerateRandomWonderNews(2); + GenerateRandomWonderNews(WONDER_NEWS_RECV_WIRELESS); } if (!successMsg) { @@ -1580,7 +1580,7 @@ static void Task_MysteryGift(u8 taskId) { if (data->sourceIsFriend == TRUE && data->msgId == SVR_MSG_NEWS_SENT) { - GenerateRandomWonderNews(3); + GenerateRandomWonderNews(WONDER_NEWS_SENT); data->state = MG_STATE_SAVE_LOAD_GIFT; } else From d0455485c3ea862d4089b2b4bb02bb00f3005599 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 02:18:24 -0400 Subject: [PATCH 311/762] Clean up mystery gift headers --- include/mevent.h | 10 +++++----- include/mevent_server_helpers.h | 14 +++++++------- include/wonder_transfer.h | 2 +- src/mevent2.c | 4 ++-- src/mevent_server_helpers.c | 22 +++++++++++----------- src/mystery_gift.c | 18 +++++++++--------- src/wonder_transfer.c | 26 +++++++++++++------------- 7 files changed, 48 insertions(+), 48 deletions(-) diff --git a/include/mevent.h b/include/mevent.h index c3e14f1f3d84..be7f5f8e6469 100755 --- a/include/mevent.h +++ b/include/mevent.h @@ -36,17 +36,17 @@ bool32 SaveWonderNews(const struct WonderNews *news); bool32 SaveWonderCard(const struct WonderCard *card); bool32 ValidateSavedWonderNews(void); bool32 ValidateSavedWonderCard(void); -bool32 IsWonderNewsSameAsSaved(const u8 *src); +bool32 IsWonderNewsSameAsSaved(const u8 *news); bool32 IsSendingSavedWonderNewsAllowed(void); bool32 IsSendingSavedWonderCardAllowed(void); u16 GetWonderCardFlagID(void); void DisableWonderCardSending(struct WonderCard *card); bool32 IsSavedWonderCardGiftNotReceived(void); bool32 MysteryGift_TrySaveStamp(const u16 *stamp); -void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 a1); -bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 a1); -u32 MysteryGift_CompareCardFlags(const u16 *a0, const struct MysteryGiftLinkGameData *data, const void *unused); -u32 MysteryGift_CheckStamps(const u16 *a0, const struct MysteryGiftLinkGameData *data, const void *unused); +void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews); +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews); +u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused); +u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused); bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words); u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat); u16 MysteryGift_GetCardStat(u32 stat); diff --git a/include/mevent_server_helpers.h b/include/mevent_server_helpers.h index 77d966447a38..e8556419daa4 100644 --- a/include/mevent_server_helpers.h +++ b/include/mevent_server_helpers.h @@ -34,16 +34,16 @@ struct MysteryGiftLink u16 sendCounter; u16 sendCRC; u16 sendSize; - void * recvBfr; - const void * sendBfr; + void * recvBuffer; + const void * sendBuffer; u32 (*recvFunc)(struct MysteryGiftLink *); u32 (*sendFunc)(struct MysteryGiftLink *); }; -void MysteryGiftLink_Init(struct MysteryGiftLink *, u32, u32); -void MysteryGiftLink_InitSend(struct MysteryGiftLink * manager, u32 ident, const void * src, u32 size); -bool32 MysteryGiftLink_Recv(struct MysteryGiftLink * manager); -bool32 MysteryGiftLink_Send(struct MysteryGiftLink * manager); -void MysteryGiftLink_InitRecv(struct MysteryGiftLink *, u32, void *); +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); #endif //GUARD_MEVENT_SERVER_HELPERS_H diff --git a/include/wonder_transfer.h b/include/wonder_transfer.h index 398a2b37b53c..a9e80b1c7d85 100644 --- a/include/wonder_transfer.h +++ b/include/wonder_transfer.h @@ -9,7 +9,7 @@ enum { NEWS_INPUT_NONE = 0xFF }; -bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * r6); +bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * metadata); bool32 WonderNews_Init(const struct WonderNews * news); s32 WonderCard_Enter(void); s32 WonderNews_Enter(void); diff --git a/src/mevent2.c b/src/mevent2.c index 36652f44e05d..ce41a0fcd94f 100755 --- a/src/mevent2.c +++ b/src/mevent2.c @@ -387,7 +387,7 @@ void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 i data->romHeaderSoftwareVersion = RomHeaderSoftwareVersion; } -bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 forNews) +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews) { if (data->validationVar != GAME_DATA_VALID_VAR) return FALSE; @@ -398,7 +398,7 @@ bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *da if (!(data->validationFlag2 & 1)) return FALSE; - if (!forNews) + if (!isWonderNews) { if (!(data->validationGiftType1 & GAME_DATA_VALID_GIFT_TYPE_1)) return FALSE; diff --git a/src/mevent_server_helpers.c b/src/mevent_server_helpers.c index 83ecc9f50295..c1fe88368895 100644 --- a/src/mevent_server_helpers.c +++ b/src/mevent_server_helpers.c @@ -47,8 +47,8 @@ void MysteryGiftLink_Init(struct MysteryGiftLink * link, u32 sendPlayerId, u32 r link->recvCRC = 0; link->recvSize = 0; link->recvCounter = 0; - link->sendBfr = NULL; - link->recvBfr = NULL; + link->sendBuffer = NULL; + link->recvBuffer = NULL; link->sendFunc = MGL_Send; link->recvFunc = MGL_Receive; } @@ -63,7 +63,7 @@ void MysteryGiftLink_InitSend(struct MysteryGiftLink * link, u32 ident, const vo link->sendSize = size; else link->sendSize = MG_LINK_BUFFER_SIZE; - link->sendBfr = src; + link->sendBuffer = src; } void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * dest) @@ -73,7 +73,7 @@ void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * d link->recvCounter = 0; link->recvCRC = 0; link->recvSize = 0; - link->recvBfr = dest; + link->recvBuffer = dest; } static void MGL_ReceiveBlock(u32 playerId, void * dest, size_t size) @@ -130,20 +130,20 @@ static bool32 MGL_Receive(struct MysteryGiftLink * link) size_t blocksize = link->recvCounter * 252; if (link->recvSize - blocksize <= 252) { - MGL_ReceiveBlock(link->recvPlayerId, link->recvBfr + blocksize, link->recvSize - blocksize); + MGL_ReceiveBlock(link->recvPlayerId, link->recvBuffer + blocksize, link->recvSize - blocksize); link->recvCounter++; link->state++; } else { - MGL_ReceiveBlock(link->recvPlayerId, link->recvBfr + blocksize, 252); + MGL_ReceiveBlock(link->recvPlayerId, link->recvBuffer + blocksize, 252); link->recvCounter++; } MGL_ResetReceived(link->recvPlayerId); } break; case 2: - if (CalcCRC16WithTable(link->recvBfr, link->recvSize) != link->recvCRC) + if (CalcCRC16WithTable(link->recvBuffer, link->recvSize) != link->recvCRC) { LinkRfu_FatalError(); return FALSE; @@ -170,7 +170,7 @@ static bool32 MGL_Send(struct MysteryGiftLink * link) { header.ident = link->sendIdent; header.size = link->sendSize; - header.crc = CalcCRC16WithTable(link->sendBfr, link->sendSize); + header.crc = CalcCRC16WithTable(link->sendBuffer, link->sendSize); link->sendCRC = header.crc; link->sendCounter = 0; SendBlock(0, &header, sizeof(header)); @@ -187,13 +187,13 @@ static bool32 MGL_Send(struct MysteryGiftLink * link) blocksize = 252 * link->sendCounter; if (link->sendSize - blocksize <= 252) { - SendBlock(0, link->sendBfr + blocksize, link->sendSize - blocksize); + SendBlock(0, link->sendBuffer + blocksize, link->sendSize - blocksize); link->sendCounter++; link->state++; } else { - SendBlock(0, link->sendBfr + blocksize, 252); + SendBlock(0, link->sendBuffer + blocksize, 252); link->sendCounter++; } } @@ -202,7 +202,7 @@ static bool32 MGL_Send(struct MysteryGiftLink * link) case 2: if (IsLinkTaskFinished()) { - if (CalcCRC16WithTable(link->sendBfr, link->sendSize) != link->sendCRC) + if (CalcCRC16WithTable(link->sendBuffer, link->sendSize) != link->sendCRC) LinkRfu_FatalError(); else link->state++; diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 864ea9838db0..bc6e8c44b84e 100644 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -474,7 +474,7 @@ void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void) SetMainCallback2(CB2_InitTitleScreen); } -void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 usePickOkCancel) +void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) { const u8 * header; const u8 * options; @@ -482,7 +482,7 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 usePickOkCancel) if (!isEReader) { header = gText_MysteryGift; - options = !usePickOkCancel ? gText_PickOKExit : gText_PickOKCancel; + options = !useCancel ? gText_PickOKExit : gText_PickOKCancel; } else { @@ -816,11 +816,11 @@ static bool32 ClearSavedNewsOrCard(bool32 isWonderNews) return TRUE; } -static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 arg1) +static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 useCancel) { if (!isWonderNews) { - if (WonderCard_Exit(arg1)) + if (WonderCard_Exit(useCancel)) { WonderCard_Destroy(); return TRUE; @@ -832,7 +832,7 @@ static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 arg1) } else { - if (WonderNews_Exit(arg1)) + if (WonderNews_Exit(useCancel)) { WonderNews_Destroy(); return TRUE; @@ -1486,7 +1486,7 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_TOSS: - if (ExitWonderCardOrNews(data->isWonderNews, 1)) + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) { ClearSavedNewsOrCard(data->isWonderNews); data->state = MG_STATE_TOSS_SAVE; @@ -1504,15 +1504,15 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_GIFT_INPUT_EXIT: - if (ExitWonderCardOrNews(data->isWonderNews, 0)) + if (ExitWonderCardOrNews(data->isWonderNews, FALSE)) data->state = MG_STATE_TO_MAIN_MENU; break; case MG_STATE_RECEIVE: - if (ExitWonderCardOrNews(data->isWonderNews, 1)) + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) data->state = MG_STATE_SOURCE_PROMPT; break; case MG_STATE_SEND: - if (ExitWonderCardOrNews(data->isWonderNews, 1)) + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) { switch (data->isWonderNews) { diff --git a/src/wonder_transfer.c b/src/wonder_transfer.c index d958b8aef901..c1fc69ca77f2 100644 --- a/src/wonder_transfer.c +++ b/src/wonder_transfer.c @@ -273,11 +273,11 @@ s32 WonderCard_Enter(void) sWonderCardData->enterExitState = 0; return 1; } - ++sWonderCardData->enterExitState; + sWonderCardData->enterExitState++; return 0; } -s32 WonderCard_Exit(bool32 flag) +s32 WonderCard_Exit(bool32 useCancel) { if (sWonderCardData == NULL) return -1; @@ -310,7 +310,7 @@ s32 WonderCard_Exit(bool32 flag) FreeMonIconPalettes(); break; case 5: - PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); + PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, useCancel); CopyBgTilemapBufferToVram(0); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); break; @@ -320,7 +320,7 @@ s32 WonderCard_Exit(bool32 flag) sWonderCardData->enterExitState = 0; return 1; } - ++sWonderCardData->enterExitState; + sWonderCardData->enterExitState++; return 0; } @@ -737,11 +737,11 @@ s32 WonderNews_Enter(void) return 1; } - ++sWonderNewsData->enterExitState; + sWonderNewsData->enterExitState++; return 0; } -s32 WonderNews_Exit(bool32 flag) +s32 WonderNews_Exit(bool32 useCancel) { if (sWonderNewsData == NULL) return -1; @@ -786,7 +786,7 @@ s32 WonderNews_Exit(bool32 flag) } break; case 5: - PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag); + PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, useCancel); MG_DrawCheckerboardPattern(3); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(3); @@ -798,7 +798,7 @@ s32 WonderNews_Exit(bool32 flag) sWonderNewsData->enterExitState = 0; return 1; } - ++sWonderNewsData->enterExitState; + sWonderNewsData->enterExitState++; return 0; } @@ -872,12 +872,12 @@ static void BufferNewsText(void) sWonderNewsData->titleText[WONDER_NEWS_TEXT_LENGTH] = EOS; // Copy body text - for (; i < WONDER_NEWS_BODY_TEXT_LINES; ++i) + for (; i < WONDER_NEWS_BODY_TEXT_LINES; i++) { memcpy(sWonderNewsData->bodyText[i], sWonderNewsData->news.bodyText[i], WONDER_NEWS_TEXT_LENGTH); sWonderNewsData->bodyText[i][WONDER_NEWS_TEXT_LENGTH] = EOS; if (i > 7 && sWonderNewsData->bodyText[i][0] != EOS) - ++sWonderNewsData->scrollEnd; + sWonderNewsData->scrollEnd++; } sWonderNewsData->arrowsTemplate = sNews_ArrowsTemplate; sWonderNewsData->arrowsTemplate.fullyDownThreshold = sWonderNewsData->scrollEnd; @@ -899,7 +899,7 @@ static void DrawNewsWindows(void) AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 3, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); // Print body text - for (; i < WONDER_NEWS_BODY_TEXT_LINES; ++i) + for (; i < WONDER_NEWS_BODY_TEXT_LINES; i++) AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], 3, 0, 16 * i + 2, sNews_TextColorTable[sWonderNewsData->gfx->bodyTextPal], @@ -927,9 +927,9 @@ static void UpdateNewsScroll(void) if (sWonderNewsData->scrollTotal > 15) { if (sWonderNewsData->scrollingDown) - ++sWonderNewsData->scrollOffset; + sWonderNewsData->scrollOffset++; else - --sWonderNewsData->scrollOffset; + sWonderNewsData->scrollOffset--; sWonderNewsData->scrolling = FALSE; sWonderNewsData->scrollTotal = 0; } From ece7ef3410eb9b114cf328426c4fc16c972f71c6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 03:00:48 -0400 Subject: [PATCH 312/762] Correct usage of MysteryEvent to MysteryGift --- data/event_scripts.s | 4 +- data/{mystery_event.s => mystery_gift.s} | 18 +- data/scripts/cable_club.inc | 4 +- ...tering_cave.inc => gift_altering_cave.inc} | 8 +- ...rora_ticket.inc => gift_aurora_ticket.inc} | 4 +- ...t_battle_card.inc => gift_battle_card.inc} | 10 +- ...stic_ticket.inc => gift_mystic_ticket.inc} | 4 +- ...t_old_sea_map.inc => gift_old_sea_map.inc} | 4 +- .../{mevent_pichu.inc => gift_pichu.inc} | 4 +- ...ent_stamp_card.inc => gift_stamp_card.inc} | 4 +- .../{mevent_trainer.inc => gift_trainer.inc} | 8 +- data/scripts/mevent.inc | 62 - data/scripts/questionnaire.inc | 62 + data/text/{mevent.inc => questionnaire.inc} | 16 +- .../constants/{mevent.h => mystery_gift.h} | 6 +- include/mevent.h | 57 - include/mystery_event_msg.h | 22 +- include/mystery_event_script.h | 4 +- include/mystery_gift.h | 63 +- ...{mevent_client.h => mystery_gift_client.h} | 10 +- ...t_server_helpers.h => mystery_gift_link.h} | 6 +- include/mystery_gift_menu.h | 18 + ...{mevent_server.h => mystery_gift_server.h} | 8 +- ...{wonder_transfer.h => mystery_gift_view.h} | 6 +- include/{mevent_news.h => wonder_news.h} | 6 +- ld_script.txt | 28 +- src/cable_club.c | 2 +- src/easy_chat.c | 2 +- src/ereader_screen.c | 2 +- src/field_specials.c | 4 +- src/link_rfu_2.c | 2 +- src/main_menu.c | 2 +- src/mevent2.c | 662 ------ src/mystery_event_msg.c | 22 +- src/mystery_event_script.c | 24 +- src/mystery_gift.c | 1924 +++++------------ ...{mevent_client.c => mystery_gift_client.c} | 24 +- ...t_server_helpers.c => mystery_gift_link.c} | 4 +- src/mystery_gift_menu.c | 1618 ++++++++++++++ ...event_scripts.c => mystery_gift_scripts.c} | 6 +- ...{mevent_server.c => mystery_gift_server.c} | 6 +- ...{wonder_transfer.c => mystery_gift_view.c} | 6 +- src/new_game.c | 2 +- src/script.c | 2 +- src/trade.c | 2 +- src/union_room.c | 2 +- src/{mevent_news.c => wonder_news.c} | 4 +- sym_ewram.txt | 10 +- 48 files changed, 2389 insertions(+), 2389 deletions(-) rename data/{mystery_event.s => mystery_gift.s} (50%) rename data/scripts/{mevent_altering_cave.inc => gift_altering_cave.inc} (78%) rename data/scripts/{mevent_aurora_ticket.inc => gift_aurora_ticket.inc} (94%) rename data/scripts/{mevent_battle_card.inc => gift_battle_card.inc} (83%) rename data/scripts/{mevent_mystic_ticket.inc => gift_mystic_ticket.inc} (95%) rename data/scripts/{mevent_old_sea_map.inc => gift_old_sea_map.inc} (95%) rename data/scripts/{mevent_pichu.inc => gift_pichu.inc} (95%) rename data/scripts/{mevent_stamp_card.inc => gift_stamp_card.inc} (87%) rename data/scripts/{mevent_trainer.inc => gift_trainer.inc} (87%) delete mode 100644 data/scripts/mevent.inc create mode 100644 data/scripts/questionnaire.inc rename data/text/{mevent.inc => questionnaire.inc} (76%) rename include/constants/{mevent.h => mystery_gift.h} (92%) delete mode 100755 include/mevent.h mode change 100644 => 100755 include/mystery_gift.h rename include/{mevent_client.h => mystery_gift_client.h} (91%) rename include/{mevent_server_helpers.h => mystery_gift_link.h} (91%) create mode 100644 include/mystery_gift_menu.h rename include/{mevent_server.h => mystery_gift_server.h} (93%) rename include/{wonder_transfer.h => mystery_gift_view.h} (85%) rename include/{mevent_news.h => wonder_news.h} (69%) delete mode 100755 src/mevent2.c mode change 100644 => 100755 src/mystery_gift.c rename src/{mevent_client.c => mystery_gift_client.c} (94%) rename src/{mevent_server_helpers.c => mystery_gift_link.c} (99%) create mode 100644 src/mystery_gift_menu.c rename src/{mevent_scripts.c => mystery_gift_scripts.c} (98%) rename src/{mevent_server.c => mystery_gift_server.c} (99%) rename src/{wonder_transfer.c => mystery_gift_view.c} (99%) rename src/{mevent_news.c => wonder_news.c} (98%) diff --git a/data/event_scripts.s b/data/event_scripts.s index 852fa36d8ce1..a68c339a60dd 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -956,7 +956,7 @@ gText_LegendaryFlewAway:: .string "The {STR_VAR_1} flew away!$" .include "data/text/pc_transfer.inc" - .include "data/text/mevent.inc" + .include "data/text/questionnaire.inc" .include "data/text/abnormal_weather.inc" EventScript_SelectWithoutRegisteredItem:: @@ -1006,7 +1006,7 @@ Common_EventScript_LegendaryFlewAway:: end .include "data/scripts/pc_transfer.inc" - .include "data/scripts/mevent.inc" + .include "data/scripts/questionnaire.inc" .include "data/scripts/abnormal_weather.inc" .include "data/scripts/trainer_script.inc" .include "data/scripts/berry_tree.inc" diff --git a/data/mystery_event.s b/data/mystery_gift.s similarity index 50% rename from data/mystery_event.s rename to data/mystery_gift.s index d707731b62ec..df0cbd4ac0a7 100644 --- a/data/mystery_event.s +++ b/data/mystery_gift.s @@ -2,7 +2,7 @@ #include "constants/flags.h" #include "constants/items.h" #include "constants/map_scripts.h" -#include "constants/mevent.h" +#include "constants/mystery_gift.h" #include "constants/moves.h" #include "constants/region_map_sections.h" #include "constants/songs.h" @@ -15,11 +15,11 @@ .section .rodata .align 2 - .include "data/scripts/mevent_stamp_card.inc" - .include "data/scripts/mevent_pichu.inc" - .include "data/scripts/mevent_trainer.inc" - .include "data/scripts/mevent_battle_card.inc" - .include "data/scripts/mevent_aurora_ticket.inc" - .include "data/scripts/mevent_mystic_ticket.inc" - .include "data/scripts/mevent_altering_cave.inc" - .include "data/scripts/mevent_old_sea_map.inc" + .include "data/scripts/gift_stamp_card.inc" + .include "data/scripts/gift_pichu.inc" + .include "data/scripts/gift_trainer.inc" + .include "data/scripts/gift_battle_card.inc" + .include "data/scripts/gift_aurora_ticket.inc" + .include "data/scripts/gift_mystic_ticket.inc" + .include "data/scripts/gift_altering_cave.inc" + .include "data/scripts/gift_old_sea_map.inc" diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index c1bcc8d14dbd..ab76428990a6 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -40,11 +40,11 @@ CableClub_EventScript_DistributeEonTicket:: compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_AlreadyGotEonTicket goto_if_set FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, CableClub_EventScript_AlreadyGotEonTicket - msgbox Mevent_Text_TheresATicketForYou, MSGBOX_DEFAULT + msgbox MysteryGift_Text_TheresATicketForYou, MSGBOX_DEFAULT giveitem ITEM_EON_TICKET setflag FLAG_ENABLE_SHIP_SOUTHERN_ISLAND setvar VAR_DISTRIBUTE_EON_TICKET, 0 - msgbox Mevent_Text_TryUsingItAtLilycovePort, MSGBOX_DEFAULT + msgbox MysteryGift_Text_TryUsingItAtLilycovePort, MSGBOX_DEFAULT release end diff --git a/data/scripts/mevent_altering_cave.inc b/data/scripts/gift_altering_cave.inc similarity index 78% rename from data/scripts/mevent_altering_cave.inc rename to data/scripts/gift_altering_cave.inc index 7e9b0a758e2a..8761b5fa409e 100644 --- a/data/scripts/mevent_altering_cave.inc +++ b/data/scripts/gift_altering_cave.inc @@ -1,10 +1,10 @@ -MysteryEventScript_AlteringCave:: - setvaddress MysteryEventScript_AlteringCave +MysteryGiftScript_AlteringCave:: + setvaddress MysteryGiftScript_AlteringCave addvar VAR_ALTERING_CAVE_WILD_SET, 1 compare VAR_ALTERING_CAVE_WILD_SET, 10 - vgoto_if_ne MysteryEventScript_AlteringCave_ + vgoto_if_ne MysteryGiftScript_AlteringCave_ setvar VAR_ALTERING_CAVE_WILD_SET, 0 -MysteryEventScript_AlteringCave_: +MysteryGiftScript_AlteringCave_: lock faceplayer vmessage sText_MysteryGiftAlteringCave diff --git a/data/scripts/mevent_aurora_ticket.inc b/data/scripts/gift_aurora_ticket.inc similarity index 94% rename from data/scripts/mevent_aurora_ticket.inc rename to data/scripts/gift_aurora_ticket.inc index 9d733463814b..c9250b9f93eb 100644 --- a/data/scripts/mevent_aurora_ticket.inc +++ b/data/scripts/gift_aurora_ticket.inc @@ -1,5 +1,5 @@ -MysteryEventScript_AuroraTicket:: - setvaddress MysteryEventScript_AuroraTicket +MysteryGiftScript_AuroraTicket:: + setvaddress MysteryGiftScript_AuroraTicket lock faceplayer vgoto_if_set FLAG_RECEIVED_AURORA_TICKET, AuroraTicket_Obtained diff --git a/data/scripts/mevent_battle_card.inc b/data/scripts/gift_battle_card.inc similarity index 83% rename from data/scripts/mevent_battle_card.inc rename to data/scripts/gift_battle_card.inc index 53610774646a..80b4ba26ebbb 100644 --- a/data/scripts/mevent_battle_card.inc +++ b/data/scripts/gift_battle_card.inc @@ -1,10 +1,10 @@ -MysteryEventScript_BattleCard:: - setvaddress MysteryEventScript_BattleCard - vgoto_if_set FLAG_MYSTERY_GIFT_DONE, MysteryEventScript_BattleCardInfo +MysteryGiftScript_BattleCard:: + setvaddress MysteryGiftScript_BattleCard + vgoto_if_set FLAG_MYSTERY_GIFT_DONE, MysteryGiftScript_BattleCardInfo setorcopyvar VAR_RESULT, GET_CARD_BATTLES_WON specialvar VAR_0x8008, GetMysteryGiftCardStat compare VAR_0x8008, REQUIRED_CARD_BATTLES - vgoto_if_ne MysteryEventScript_BattleCardInfo + vgoto_if_ne MysteryGiftScript_BattleCardInfo lock faceplayer vmessage sText_MysteryGiftBattleCountCard_WonPrize @@ -15,7 +15,7 @@ MysteryEventScript_BattleCard:: setflag FLAG_MYSTERY_GIFT_DONE end -MysteryEventScript_BattleCardInfo: +MysteryGiftScript_BattleCardInfo: lock faceplayer vmessage sText_MysteryGiftBattleCountCard diff --git a/data/scripts/mevent_mystic_ticket.inc b/data/scripts/gift_mystic_ticket.inc similarity index 95% rename from data/scripts/mevent_mystic_ticket.inc rename to data/scripts/gift_mystic_ticket.inc index e085c5a59603..29c325f72d41 100644 --- a/data/scripts/mevent_mystic_ticket.inc +++ b/data/scripts/gift_mystic_ticket.inc @@ -1,5 +1,5 @@ -MysteryEventScript_MysticTicket:: - setvaddress MysteryEventScript_MysticTicket +MysteryGiftScript_MysticTicket:: + setvaddress MysteryGiftScript_MysticTicket lock faceplayer vgoto_if_set FLAG_RECEIVED_MYSTIC_TICKET, MysticTicket_Obtained diff --git a/data/scripts/mevent_old_sea_map.inc b/data/scripts/gift_old_sea_map.inc similarity index 95% rename from data/scripts/mevent_old_sea_map.inc rename to data/scripts/gift_old_sea_map.inc index 68714117b363..5e47a10df14c 100644 --- a/data/scripts/mevent_old_sea_map.inc +++ b/data/scripts/gift_old_sea_map.inc @@ -1,5 +1,5 @@ -MysteryEventScript_OldSeaMap:: - setvaddress MysteryEventScript_OldSeaMap +MysteryGiftScript_OldSeaMap:: + setvaddress MysteryGiftScript_OldSeaMap lock faceplayer vgoto_if_set FLAG_RECEIVED_OLD_SEA_MAP, OldSeaMap_Obtained diff --git a/data/scripts/mevent_pichu.inc b/data/scripts/gift_pichu.inc similarity index 95% rename from data/scripts/mevent_pichu.inc rename to data/scripts/gift_pichu.inc index 9256d53a732b..e62fc4536ed7 100644 --- a/data/scripts/mevent_pichu.inc +++ b/data/scripts/gift_pichu.inc @@ -1,5 +1,5 @@ -MysteryEventScript_SurfPichu:: - setvaddress MysteryEventScript_SurfPichu +MysteryGiftScript_SurfPichu:: + setvaddress MysteryGiftScript_SurfPichu vgoto_if_unset FLAG_MYSTERY_GIFT_DONE, SurfPichu_GiveIfPossible returnram diff --git a/data/scripts/mevent_stamp_card.inc b/data/scripts/gift_stamp_card.inc similarity index 87% rename from data/scripts/mevent_stamp_card.inc rename to data/scripts/gift_stamp_card.inc index e313aa29d51c..f6e1eb7c7c4d 100644 --- a/data/scripts/mevent_stamp_card.inc +++ b/data/scripts/gift_stamp_card.inc @@ -1,5 +1,5 @@ -MysteryEventScript_StampCard:: - setvaddress MysteryEventScript_StampCard +MysteryGiftScript_StampCard:: + setvaddress MysteryGiftScript_StampCard setorcopyvar VAR_RESULT, GET_MAX_STAMPS specialvar VAR_0x8008, GetMysteryGiftCardStat setorcopyvar VAR_RESULT, GET_NUM_STAMPS diff --git a/data/scripts/mevent_trainer.inc b/data/scripts/gift_trainer.inc similarity index 87% rename from data/scripts/mevent_trainer.inc rename to data/scripts/gift_trainer.inc index f4318408d2fc..2dbc86d53eba 100644 --- a/data/scripts/mevent_trainer.inc +++ b/data/scripts/gift_trainer.inc @@ -1,8 +1,8 @@ -MysteryEventScript_VisitingTrainer:: - setvaddress MysteryEventScript_VisitingTrainer +MysteryGiftScript_VisitingTrainer:: + setvaddress MysteryGiftScript_VisitingTrainer special ValidateEReaderTrainer compare VAR_RESULT, 0 - vgoto_if_eq MysteryEventScript_VisitingTrainerArrived + vgoto_if_eq MysteryGiftScript_VisitingTrainerArrived lock faceplayer vmessage sText_MysteryGiftVisitingTrainerInstructions @@ -11,7 +11,7 @@ MysteryEventScript_VisitingTrainer:: release end -MysteryEventScript_VisitingTrainerArrived: +MysteryGiftScript_VisitingTrainerArrived: lock faceplayer vmessage sText_MysteryGiftVisitingTrainerArrived diff --git a/data/scripts/mevent.inc b/data/scripts/mevent.inc deleted file mode 100644 index b33a332700c9..000000000000 --- a/data/scripts/mevent.inc +++ /dev/null @@ -1,62 +0,0 @@ -EventScript_Questionnaire:: - lockall - msgbox Mevent_Text_FillOutQuestionnaire, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Mevent_EventScript_Release - setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE - call Common_ShowEasyChatScreen - lock - faceplayer - specialvar VAR_0x8008, GetMartEmployeeObjectEventId - compare VAR_0x8004, 1 - goto_if_eq Mevent_EventScript_PlayerInputMysteryEventPhrase - compare VAR_0x8004, 2 - goto_if_eq Mevent_EventScript_PlayerInputMysteryGiftPhrase - compare VAR_RESULT, 0 - goto_if_eq Mevent_EventScript_Release - compare VAR_RESULT, 1 - goto_if_eq Mevent_EventScript_QuestionnaireThankYou - end - -Mevent_EventScript_PlayerInputMysteryEventPhrase:: - goto_if_unset FLAG_SYS_POKEDEX_GET, Mevent_EventScript_QuestionnaireThankYou - goto_if_set FLAG_SYS_MYSTERY_EVENT_ENABLE, Mevent_EventScript_QuestionnaireThankYou - applymovement VAR_0x8008, Common_Movement_FaceDown - waitmovement 0 - playse SE_PIN - applymovement VAR_0x8008, Common_Movement_ExclamationMark - waitmovement 0 - applymovement VAR_0x8008, Common_Movement_Delay48 - waitmovement 0 - msgbox Mevent_Text_YouKnowThoseWordsEvent, MSGBOX_DEFAULT - setflag FLAG_SYS_MYSTERY_EVENT_ENABLE - msgbox Mevent_Text_YouCanAccessMysteryEvent, MSGBOX_DEFAULT - releaseall - end - -Mevent_EventScript_PlayerInputMysteryGiftPhrase:: - goto_if_unset FLAG_SYS_POKEDEX_GET, Mevent_EventScript_QuestionnaireThankYou - goto_if_set FLAG_SYS_MYSTERY_GIFT_ENABLE, Mevent_EventScript_QuestionnaireThankYou - applymovement VAR_0x8008, Common_Movement_FaceDown - waitmovement 0 - playse SE_PIN - applymovement VAR_0x8008, Common_Movement_ExclamationMark - waitmovement 0 - applymovement VAR_0x8008, Common_Movement_Delay48 - waitmovement 0 - msgbox Mevent_Text_YouKnowThoseWordsGift, MSGBOX_DEFAULT - setflag FLAG_SYS_MYSTERY_GIFT_ENABLE - msgbox Mevent_Text_YouCanAccessMysteryGift, MSGBOX_DEFAULT - releaseall - end - -Mevent_EventScript_Release:: - releaseall - end - -Mevent_EventScript_QuestionnaireThankYou:: - applymovement VAR_0x8008, Common_Movement_FaceDown - waitmovement 0 - msgbox Mevent_Text_QuestionnaireThankYou, MSGBOX_DEFAULT - releaseall - end diff --git a/data/scripts/questionnaire.inc b/data/scripts/questionnaire.inc new file mode 100644 index 000000000000..62e149bb7836 --- /dev/null +++ b/data/scripts/questionnaire.inc @@ -0,0 +1,62 @@ +EventScript_Questionnaire:: + lockall + msgbox Questionnaire_Text_FillOut, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq Questionnaire_EventScript_Release + setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE + call Common_ShowEasyChatScreen + lock + faceplayer + specialvar VAR_0x8008, GetMartEmployeeObjectEventId + compare VAR_0x8004, 1 + goto_if_eq Questionnaire_EventScript_PlayerInputMysteryEventPhrase + compare VAR_0x8004, 2 + goto_if_eq Questionnaire_EventScript_PlayerInputMysteryGiftPhrase + compare VAR_RESULT, 0 + goto_if_eq Questionnaire_EventScript_Release + compare VAR_RESULT, 1 + goto_if_eq Questionnaire_EventScript_ThankYou + end + +Questionnaire_EventScript_PlayerInputMysteryEventPhrase:: + goto_if_unset FLAG_SYS_POKEDEX_GET, Questionnaire_EventScript_ThankYou + goto_if_set FLAG_SYS_MYSTERY_EVENT_ENABLE, Questionnaire_EventScript_ThankYou + applymovement VAR_0x8008, Common_Movement_FaceDown + waitmovement 0 + playse SE_PIN + applymovement VAR_0x8008, Common_Movement_ExclamationMark + waitmovement 0 + applymovement VAR_0x8008, Common_Movement_Delay48 + waitmovement 0 + msgbox Questionnaire_Text_YouKnowThoseWordsEvent, MSGBOX_DEFAULT + setflag FLAG_SYS_MYSTERY_EVENT_ENABLE + msgbox Questionnaire_Text_YouCanAccessMysteryEvent, MSGBOX_DEFAULT + releaseall + end + +Questionnaire_EventScript_PlayerInputMysteryGiftPhrase:: + goto_if_unset FLAG_SYS_POKEDEX_GET, Questionnaire_EventScript_ThankYou + goto_if_set FLAG_SYS_MYSTERY_GIFT_ENABLE, Questionnaire_EventScript_ThankYou + applymovement VAR_0x8008, Common_Movement_FaceDown + waitmovement 0 + playse SE_PIN + applymovement VAR_0x8008, Common_Movement_ExclamationMark + waitmovement 0 + applymovement VAR_0x8008, Common_Movement_Delay48 + waitmovement 0 + msgbox Questionnaire_Text_YouKnowThoseWordsGift, MSGBOX_DEFAULT + setflag FLAG_SYS_MYSTERY_GIFT_ENABLE + msgbox Questionnaire_Text_YouCanAccessMysteryGift, MSGBOX_DEFAULT + releaseall + end + +Questionnaire_EventScript_Release:: + releaseall + end + +Questionnaire_EventScript_ThankYou:: + applymovement VAR_0x8008, Common_Movement_FaceDown + waitmovement 0 + msgbox Questionnaire_Text_ThankYou, MSGBOX_DEFAULT + releaseall + end diff --git a/data/text/mevent.inc b/data/text/questionnaire.inc similarity index 76% rename from data/text/mevent.inc rename to data/text/questionnaire.inc index 5fb00bc9705c..a7fd09486f35 100644 --- a/data/text/mevent.inc +++ b/data/text/questionnaire.inc @@ -1,14 +1,14 @@ -Mevent_Text_FillOutQuestionnaire:: +Questionnaire_Text_FillOut:: .string "There is a questionnaire.\n" .string "Would you like to fill it out?$" -Mevent_Text_QuestionnaireThankYou:: +Questionnaire_Text_ThankYou:: .string "Thank you for taking the time to\n" .string "fill out our questionnaire.\p" .string "Your feedback will be used for\n" .string "future reference.$" -Mevent_Text_YouKnowThoseWordsGift:: +Questionnaire_Text_YouKnowThoseWordsGift:: .string "Oh, hello!\n" .string "You know those words?\p" .string "That means you must know about\n" @@ -16,27 +16,27 @@ Mevent_Text_YouKnowThoseWordsGift:: .string "From now on, you should be\n" .string "receiving MYSTERY GIFTS!$" -Mevent_Text_YouCanAccessMysteryGift:: +Questionnaire_Text_YouCanAccessMysteryGift:: .string "Once you save your game, you can\n" .string "access the MYSTERY GIFT.$" -Mevent_Text_YouKnowThoseWordsEvent:: +Questionnaire_Text_YouKnowThoseWordsEvent:: .string "Oh, hello!\n" .string "You know those words?\p" .string "That means you must know about\n" .string "the MYSTERY EVENT.$" -Mevent_Text_YouCanAccessMysteryEvent:: +Questionnaire_Text_YouCanAccessMysteryEvent:: .string "Once you save your game, you can\n" .string "access the MYSTERY EVENT.$" -Mevent_Text_TheresATicketForYou:: +MysteryGift_Text_TheresATicketForYou:: .string "Thank you for using the MYSTERY\n" .string "EVENT System.\p" .string "You must be {PLAYER}.\n" .string "There is a ticket here for you.$" -Mevent_Text_TryUsingItAtLilycovePort:: +MysteryGift_Text_TryUsingItAtLilycovePort:: .string "It appears to be for use at\n" .string "the LILYCOVE CITY port.\p" .string "Why not give it a try and see what\n" diff --git a/include/constants/mevent.h b/include/constants/mystery_gift.h similarity index 92% rename from include/constants/mevent.h rename to include/constants/mystery_gift.h index 636043fdba9f..07690e37c4ba 100644 --- a/include/constants/mevent.h +++ b/include/constants/mystery_gift.h @@ -1,5 +1,5 @@ -#ifndef GUARD_CONSTANTS_MEVENT_H -#define GUARD_CONSTANTS_MEVENT_H +#ifndef GUARD_CONSTANTS_MYSTERY_GIFT_H +#define GUARD_CONSTANTS_MYSTERY_GIFT_H #define GET_NUM_STAMPS 0 #define GET_MAX_STAMPS 1 @@ -44,4 +44,4 @@ #define WONDER_CARD_FLAG_OFFSET 1000 -#endif //GUARD_MEVENT_H +#endif //GUARD_CONSTANTS_MYSTERY_GIFT_H diff --git a/include/mevent.h b/include/mevent.h deleted file mode 100755 index be7f5f8e6469..000000000000 --- a/include/mevent.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef GUARD_MEVENT_H -#define GUARD_MEVENT_H - -#include "main.h" -#include "constants/mevent.h" - -struct MysteryGiftLinkGameData -{ - // It's possible these first 5 fields had some other meaningful purpose, - // but they are only ever set when creating this data and read to validate it. - u32 validationVar; - u16 validationFlag1; - u32 validationFlag2; - u16 validationGiftType1; - u32 validationGiftType2; - u16 flagId; - u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; - struct WonderCardMetadata cardMetadata; - u8 maxStamps; - u8 playerName[PLAYER_NAME_LENGTH]; - u8 playerTrainerId[TRAINER_ID_LENGTH]; - u16 easyChatProfile[EASY_CHAT_BATTLE_WORDS_COUNT]; - u8 romHeaderGameCode[GAME_CODE_LENGTH]; - u8 romHeaderSoftwareVersion; -}; - -void ClearMysteryGift(void); -struct WonderNews *GetSavedWonderNews(void); -struct WonderCard *GetSavedWonderCard(void); -struct WonderCardMetadata *GetSavedWonderCardMetadata(void); -struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void); -u16 *GetQuestionnaireWordsPtr(void); -void ClearSavedWonderNewsAndRelated(void); -void ClearSavedWonderCardAndRelated(void); -bool32 SaveWonderNews(const struct WonderNews *news); -bool32 SaveWonderCard(const struct WonderCard *card); -bool32 ValidateSavedWonderNews(void); -bool32 ValidateSavedWonderCard(void); -bool32 IsWonderNewsSameAsSaved(const u8 *news); -bool32 IsSendingSavedWonderNewsAllowed(void); -bool32 IsSendingSavedWonderCardAllowed(void); -u16 GetWonderCardFlagID(void); -void DisableWonderCardSending(struct WonderCard *card); -bool32 IsSavedWonderCardGiftNotReceived(void); -bool32 MysteryGift_TrySaveStamp(const u16 *stamp); -void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews); -bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews); -u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused); -u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused); -bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words); -u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat); -u16 MysteryGift_GetCardStat(u32 stat); -void MysteryGift_DisableStats(void); -bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId); -void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId); - -#endif //GUARD_MEVENT_H diff --git a/include/mystery_event_msg.h b/include/mystery_event_msg.h index 465b60ccb6d7..18449602375b 100644 --- a/include/mystery_event_msg.h +++ b/include/mystery_event_msg.h @@ -1,16 +1,16 @@ #ifndef GUARD_MYSTERY_EVENT_MSG_H #define GUARD_MYSTERY_EVENT_MSG_H -extern const u8 gText_MysteryGiftBerry[]; -extern const u8 gText_MysteryGiftBerryTransform[]; -extern const u8 gText_MysteryGiftBerryObtained[]; -extern const u8 gText_MysteryGiftSpecialRibbon[]; -extern const u8 gText_MysteryGiftNationalDex[]; -extern const u8 gText_MysteryGiftRareWord[]; -extern const u8 gText_MysteryGiftSentOver[]; -extern const u8 gText_MysteryGiftFullParty[]; -extern const u8 gText_MysteryGiftNewTrainer[]; -extern const u8 gText_MysteryGiftNewAdversaryInBattleTower[]; -extern const u8 gText_MysteryGiftCantBeUsed[]; +extern const u8 gText_MysteryEventBerry[]; +extern const u8 gText_MysteryEventBerryTransform[]; +extern const u8 gText_MysteryEventBerryObtained[]; +extern const u8 gText_MysteryEventSpecialRibbon[]; +extern const u8 gText_MysteryEventNationalDex[]; +extern const u8 gText_MysteryEventRareWord[]; +extern const u8 gText_MysteryEventSentOver[]; +extern const u8 gText_MysteryEventFullParty[]; +extern const u8 gText_MysteryEventNewTrainer[]; +extern const u8 gText_MysteryEventNewAdversaryInBattleTower[]; +extern const u8 gText_MysteryEventCantBeUsed[]; #endif // GUARD_MYSTERY_EVENT_MSG_H diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index 807c78b13221..32b9f009f658 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -1,8 +1,8 @@ #ifndef GUARD_MYSTERY_EVENT_SCRIPT_H #define GUARD_MYSTERY_EVENT_SCRIPT_H -void InitMysteryGiftScriptContext(u8 *script); -bool32 RunMysteryGiftScriptContextCommand(u32 *script); +void InitMysteryEventScriptContext(u8 *script); +bool32 RunMysteryEventScriptContextCommand(u32 *script); u32 RunMysteryEventScript(u8 *script); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); diff --git a/include/mystery_gift.h b/include/mystery_gift.h old mode 100644 new mode 100755 index 73d3b93eac2c..3b27b3f2dce1 --- a/include/mystery_gift.h +++ b/include/mystery_gift.h @@ -1,18 +1,57 @@ #ifndef GUARD_MYSTERY_GIFT_H #define GUARD_MYSTERY_GIFT_H -extern bool8 gGiftIsFromEReader; +#include "main.h" +#include "constants/mystery_gift.h" -u16 GetMysteryGiftBaseBlock(void); -void CB2_MysteryGiftEReader(void); -void PrintMysteryGiftOrEReaderTopMenu(bool8 isJapanese, bool32 usePickOkCancel); -void MG_DrawCheckerboardPattern(u32 bg); -void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void); -bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str); -void AddTextPrinterToWindow1(const u8 *src); -void CB2_InitEReader(void); -void CB2_InitMysteryGift(void); -void MG_DrawTextBorder(u8 windowId); -s8 DoMysteryGiftYesNo(u8 *textState, u16 *windowId, bool8 yesNoBoxPlacement, const u8 *str); +struct MysteryGiftLinkGameData +{ + // It's possible these first 5 fields had some other meaningful purpose, + // but they are only ever set when creating this data and read to validate it. + u32 validationVar; + u16 validationFlag1; + u32 validationFlag2; + u16 validationGiftType1; + u32 validationGiftType2; + u16 flagId; + u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; + struct WonderCardMetadata cardMetadata; + u8 maxStamps; + u8 playerName[PLAYER_NAME_LENGTH]; + u8 playerTrainerId[TRAINER_ID_LENGTH]; + u16 easyChatProfile[EASY_CHAT_BATTLE_WORDS_COUNT]; + u8 romHeaderGameCode[GAME_CODE_LENGTH]; + u8 romHeaderSoftwareVersion; +}; + +void ClearMysteryGift(void); +struct WonderNews *GetSavedWonderNews(void); +struct WonderCard *GetSavedWonderCard(void); +struct WonderCardMetadata *GetSavedWonderCardMetadata(void); +struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void); +u16 *GetQuestionnaireWordsPtr(void); +void ClearSavedWonderNewsAndRelated(void); +void ClearSavedWonderCardAndRelated(void); +bool32 SaveWonderNews(const struct WonderNews *news); +bool32 SaveWonderCard(const struct WonderCard *card); +bool32 ValidateSavedWonderNews(void); +bool32 ValidateSavedWonderCard(void); +bool32 IsWonderNewsSameAsSaved(const u8 *news); +bool32 IsSendingSavedWonderNewsAllowed(void); +bool32 IsSendingSavedWonderCardAllowed(void); +u16 GetWonderCardFlagID(void); +void DisableWonderCardSending(struct WonderCard *card); +bool32 IsSavedWonderCardGiftNotReceived(void); +bool32 MysteryGift_TrySaveStamp(const u16 *stamp); +void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews); +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews); +u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused); +u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused); +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words); +u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat); +u16 MysteryGift_GetCardStat(u32 stat); +void MysteryGift_DisableStats(void); +bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId); +void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId); #endif //GUARD_MYSTERY_GIFT_H diff --git a/include/mevent_client.h b/include/mystery_gift_client.h similarity index 91% rename from include/mevent_client.h rename to include/mystery_gift_client.h index cc189ccc91f7..8214d69eff98 100644 --- a/include/mevent_client.h +++ b/include/mystery_gift_client.h @@ -1,7 +1,7 @@ -#ifndef GUARD_MEVENT_CLIENT_H -#define GUARD_MEVENT_CLIENT_H +#ifndef GUARD_MYSTERY_GIFT_CLIENT_H +#define GUARD_MYSTERY_GIFT_CLIENT_H -#include "mevent_server_helpers.h" +#include "mystery_gift_link.h" // Return values for client functions called by MysteryGiftClient_Run enum { @@ -31,7 +31,7 @@ enum { CLI_COPY_MSG, CLI_ASK_TOSS, CLI_LOAD_TOSS_RESPONSE, - CLI_RUN_GIFT_SCRIPT, + CLI_RUN_MEVENT_SCRIPT, CLI_SAVE_STAMP, CLI_SAVE_RAM_SCRIPT, CLI_RECV_EREADER_TRAINER, @@ -89,4 +89,4 @@ void MysteryGiftClient_AdvanceState(void); void * MysteryGiftClient_GetMsg(void); void MysteryGiftClient_SetParam(u32 value); -#endif //GUARD_MEVENT_CLIENT_H +#endif //GUARD_MYSTERY_GIFT_CLIENT_H diff --git a/include/mevent_server_helpers.h b/include/mystery_gift_link.h similarity index 91% rename from include/mevent_server_helpers.h rename to include/mystery_gift_link.h index e8556419daa4..32100db5f1c6 100644 --- a/include/mevent_server_helpers.h +++ b/include/mystery_gift_link.h @@ -1,5 +1,5 @@ -#ifndef GUARD_MEVENT_SERVER_HELPERS_H -#define GUARD_MEVENT_SERVER_HELPERS_H +#ifndef GUARD_MYSTERY_GIFT_LINK_H +#define GUARD_MYSTERY_GIFT_LINK_H #define MG_LINK_BUFFER_SIZE 0x400 @@ -46,4 +46,4 @@ bool32 MysteryGiftLink_Recv(struct MysteryGiftLink * link); bool32 MysteryGiftLink_Send(struct MysteryGiftLink * link); void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * dest); -#endif //GUARD_MEVENT_SERVER_HELPERS_H +#endif //GUARD_MYSTERY_GIFT_LINK_H diff --git a/include/mystery_gift_menu.h b/include/mystery_gift_menu.h new file mode 100644 index 000000000000..dc30d305191e --- /dev/null +++ b/include/mystery_gift_menu.h @@ -0,0 +1,18 @@ +#ifndef GUARD_MYSTERY_GIFT_MENU_H +#define GUARD_MYSTERY_GIFT_MENU_H + +extern bool8 gGiftIsFromEReader; + +u16 GetMysteryGiftBaseBlock(void); +void CB2_MysteryGiftEReader(void); +void PrintMysteryGiftOrEReaderTopMenu(bool8 isJapanese, bool32 usePickOkCancel); +void MG_DrawCheckerboardPattern(u32 bg); +void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void); +bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str); +void AddTextPrinterToWindow1(const u8 *src); +void CB2_InitEReader(void); +void CB2_InitMysteryGift(void); +void MG_DrawTextBorder(u8 windowId); +s8 DoMysteryGiftYesNo(u8 *textState, u16 *windowId, bool8 yesNoBoxPlacement, const u8 *str); + +#endif //GUARD_MYSTERY_GIFT_MENU_H diff --git a/include/mevent_server.h b/include/mystery_gift_server.h similarity index 93% rename from include/mevent_server.h rename to include/mystery_gift_server.h index 98cb03f6a68d..8e3842f73cfe 100644 --- a/include/mevent_server.h +++ b/include/mystery_gift_server.h @@ -1,7 +1,7 @@ -#ifndef GUARD_MEVENT_SERVER_H -#define GUARD_MEVENT_SERVER_H +#ifndef GUARD_MYSTERY_GIFT_SERVER_H +#define GUARD_MYSTERY_GIFT_SERVER_H -#include "mevent_server_helpers.h" +#include "mystery_gift_link.h" // Return values for Server_* functions. // Other than SVR_RET_END, effectively useless (not checked for). @@ -97,4 +97,4 @@ void MysterGiftServer_CreateForCard(); void MysterGiftServer_CreateForNews(); u32 MysterGiftServer_Run(u16 * endVal); -#endif //GUARD_MEVENT_SERVER_H +#endif //GUARD_MYSTERY_GIFT_SERVER_H diff --git a/include/wonder_transfer.h b/include/mystery_gift_view.h similarity index 85% rename from include/wonder_transfer.h rename to include/mystery_gift_view.h index a9e80b1c7d85..038093c7a144 100644 --- a/include/wonder_transfer.h +++ b/include/mystery_gift_view.h @@ -1,5 +1,5 @@ -#ifndef GUARD_WONDER_TRANSFER_H -#define GUARD_WONDER_TRANSFER_H +#ifndef GUARD_MYSTERY_GIFT_VIEW_H +#define GUARD_MYSTERY_GIFT_VIEW_H enum { NEWS_INPUT_A, @@ -21,4 +21,4 @@ u32 WonderNews_GetInput(u16 input); void WonderNews_AddScrollIndicatorArrowPair(void); void WonderNews_RemoveScrollIndicatorArrowPair(void); -#endif //GUARD_WONDER_TRANSFER_H +#endif //GUARD_MYSTERY_GIFT_VIEW_H diff --git a/include/mevent_news.h b/include/wonder_news.h similarity index 69% rename from include/mevent_news.h rename to include/wonder_news.h index b0a0b8f07716..68fd59e4cee5 100755 --- a/include/mevent_news.h +++ b/include/wonder_news.h @@ -1,5 +1,5 @@ -#ifndef GUARD_MEVENT_NEWS_H -#define GUARD_MEVENT_NEWS_H +#ifndef GUARD_WONDER_NEWS_H +#define GUARD_WONDER_NEWS_H enum { WONDER_NEWS_NONE, @@ -12,4 +12,4 @@ enum { void InitSavedWonderNews(void); void GenerateRandomWonderNews(u32 newsType); -#endif //GUARD_MEVENT_NEWS_H +#endif //GUARD_WONDER_NEWS_H diff --git a/ld_script.txt b/ld_script.txt index 14feda1c013e..93babfa1638c 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -63,16 +63,16 @@ SECTIONS { src/link_rfu_3.o(.text); src/link_rfu_2.o(.text); src/union_room.o(.text); - src/mystery_gift.o(.text); + src/mystery_gift_menu.o(.text); src/union_room_player_avatar.o(.text); src/wireless_communication_status_screen.o(.text); src/union_room_battle.o(.text); - src/mevent2.o(.text); - src/wonder_transfer.o(.text); - src/mevent_server.o(.text); - src/mevent_client.o(.text); - src/mevent_server_helpers.o(.text); - src/mevent_news.o(.text); + src/mystery_gift.o(.text); + src/mystery_gift_view.o(.text); + src/mystery_gift_server.o(.text); + src/mystery_gift_client.o(.text); + src/mystery_gift_link.o(.text); + src/wonder_news.o(.text); src/union_room_chat.o(.text); src/berry_crush.o(.text); src/berry_powder.o(.text); @@ -449,15 +449,15 @@ SECTIONS { src/link_rfu_2.o(.rodata); src/link_rfu_2.o(.rodata.str1.4); src/union_room.o(.rodata); - src/mystery_gift.o(.rodata); + src/mystery_gift_menu.o(.rodata); src/union_room_player_avatar.o(.rodata); src/wireless_communication_status_screen.o(.rodata); src/union_room_battle.o(.rodata); - src/mevent2.o(.rodata); - src/wonder_transfer.o(.rodata); - src/mevent_server.o(.rodata); - src/mevent_client.o(.rodata); - src/mevent_scripts.o(.rodata); + src/mystery_gift.o(.rodata); + src/mystery_gift_view.o(.rodata); + src/mystery_gift_server.o(.rodata); + src/mystery_gift_client.o(.rodata); + src/mystery_gift_scripts.o(.rodata); src/union_room_chat.o(.rodata); src/berry_crush.o(.rodata); src/berry_powder.o(.rodata); @@ -688,7 +688,7 @@ SECTIONS { src/text_input_strings.o(.rodata); data/fonts.o(.rodata); src/mystery_event_msg.o(.rodata); - data/mystery_event.o(.rodata); + data/mystery_gift.o(.rodata); src/m4a_tables.o(.rodata); data/sound_data.o(.rodata); } =0 diff --git a/src/cable_club.c b/src/cable_club.c index 69fcb660b536..3083ed9c0a13 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -18,7 +18,7 @@ #include "overworld.h" #include "palette.h" #include "union_room.h" -#include "mevent.h" +#include "mystery_gift.h" #include "script.h" #include "script_pokemon_util.h" #include "sound.h" diff --git a/src/easy_chat.c b/src/easy_chat.c index 79300bd520e1..b18d09b8337c 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -15,7 +15,7 @@ #include "graphics.h" #include "international_string_util.h" #include "main.h" -#include "mevent.h" +#include "mystery_gift.h" #include "menu.h" #include "overworld.h" #include "palette.h" diff --git a/src/ereader_screen.c b/src/ereader_screen.c index a76fb09c8ccf..73a1b870e431 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -4,7 +4,7 @@ #include "ereader_helpers.h" #include "link.h" #include "main.h" -#include "mystery_gift.h" +#include "mystery_gift_menu.h" #include "save.h" #include "sound.h" #include "sprite.h" diff --git a/src/field_specials.c b/src/field_specials.c index 5d7829d12d95..2789411a53a5 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -22,7 +22,7 @@ #include "link.h" #include "list_menu.h" #include "main.h" -#include "mevent.h" +#include "mystery_gift.h" #include "match_call.h" #include "menu.h" #include "overworld.h" @@ -56,7 +56,7 @@ #include "constants/heal_locations.h" #include "constants/map_types.h" #include "constants/maps.h" -#include "constants/mevent.h" +#include "constants/mystery_gift.h" #include "constants/script_menu.h" #include "constants/slot_machine.h" #include "constants/songs.h" diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 0ab452a8d8da..87e9f8e9d2d3 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -16,7 +16,7 @@ #include "task.h" #include "text.h" #include "save.h" -#include "mystery_gift.h" +#include "mystery_gift_menu.h" enum { RFUSTATE_INIT, diff --git a/src/main_menu.c b/src/main_menu.c index 8fd25abe1aa6..b245a1666337 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -35,7 +35,7 @@ #include "text_window.h" #include "title_screen.h" #include "window.h" -#include "mystery_gift.h" +#include "mystery_gift_menu.h" /* * Main menu state machine diff --git a/src/mevent2.c b/src/mevent2.c deleted file mode 100755 index ce41a0fcd94f..000000000000 --- a/src/mevent2.c +++ /dev/null @@ -1,662 +0,0 @@ -#include "global.h" -#include "util.h" -#include "main.h" -#include "event_data.h" -#include "easy_chat.h" -#include "script.h" -#include "battle_tower.h" -#include "mevent_news.h" -#include "string_util.h" -#include "new_game.h" -#include "mevent.h" -#include "constants/mevent.h" - -static EWRAM_DATA bool32 sStatsEnabled = FALSE; - -static void ClearSavedWonderNewsMetadata(void); -static void ClearSavedWonderNews(void); -static void ClearSavedWonderCard(void); -static bool32 ValidateWonderNews(const struct WonderNews *); -static bool32 ValidateWonderCard(const struct WonderCard *); -static void ClearSavedWonderCardMetadata(void); -static void ClearSavedTrainerIds(void); -static void IncrementCardStatForNewTrainer(u32, u32, u32 *, int); - -#define CALC_CRC(data) CalcCRC16WithTable((void *)&(data), sizeof(data)) - -void ClearMysteryGift(void) -{ - CpuFill32(0, &gSaveBlock1Ptr->mysteryGift, sizeof(gSaveBlock1Ptr->mysteryGift)); - ClearSavedWonderNewsMetadata(); // Clear is redundant, InitSavedWonderNews would be sufficient - InitQuestionnaireWords(); -} - -struct WonderNews *GetSavedWonderNews(void) -{ - return &gSaveBlock1Ptr->mysteryGift.news; -} - -struct WonderCard *GetSavedWonderCard(void) -{ - return &gSaveBlock1Ptr->mysteryGift.card; -} - -struct WonderCardMetadata *GetSavedWonderCardMetadata(void) -{ - return &gSaveBlock1Ptr->mysteryGift.cardMetadata; -} - -struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void) -{ - return &gSaveBlock1Ptr->mysteryGift.newsMetadata; -} - -u16 *GetQuestionnaireWordsPtr(void) -{ - return gSaveBlock1Ptr->mysteryGift.questionnaireWords; -} - -// Equivalent to ClearSavedWonderCardAndRelated, but nothing else to clear -void ClearSavedWonderNewsAndRelated(void) -{ - ClearSavedWonderNews(); -} - -bool32 SaveWonderNews(const struct WonderNews *news) -{ - if (!ValidateWonderNews(news)) - return FALSE; - - ClearSavedWonderNews(); - gSaveBlock1Ptr->mysteryGift.news = *news; - gSaveBlock1Ptr->mysteryGift.newsCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.news); - return TRUE; -} - -bool32 ValidateSavedWonderNews(void) -{ - if (CALC_CRC(gSaveBlock1Ptr->mysteryGift.news) != gSaveBlock1Ptr->mysteryGift.newsCrc) - return FALSE; - if (!ValidateWonderNews(&gSaveBlock1Ptr->mysteryGift.news)) - return FALSE; - - return TRUE; -} - -static bool32 ValidateWonderNews(const struct WonderNews *news) -{ - if (news->id == 0) - return FALSE; - - return TRUE; -} - -bool32 IsSendingSavedWonderNewsAllowed(void) -{ - const struct WonderNews *news = &gSaveBlock1Ptr->mysteryGift.news; - if (news->sendType == SEND_TYPE_DISALLOWED) - return FALSE; - - return TRUE; -} - -static void ClearSavedWonderNews(void) -{ - CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->mysteryGift.news)); - gSaveBlock1Ptr->mysteryGift.newsCrc = 0; -} - -static void ClearSavedWonderNewsMetadata(void) -{ - CpuFill32(0, GetSavedWonderNewsMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.newsMetadata)); - InitSavedWonderNews(); -} - -bool32 IsWonderNewsSameAsSaved(const u8 *news) -{ - const u8 *savedNews = (const u8 *)&gSaveBlock1Ptr->mysteryGift.news; - u32 i; - if (!ValidateSavedWonderNews()) - return FALSE; - - for (i = 0; i < sizeof(gSaveBlock1Ptr->mysteryGift.news); i++) - { - if (savedNews[i] != news[i]) - return FALSE; - } - - return TRUE; -} - -void ClearSavedWonderCardAndRelated(void) -{ - ClearSavedWonderCard(); - ClearSavedWonderCardMetadata(); - ClearSavedTrainerIds(); - ClearRamScript(); - ClearMysteryGiftFlags(); - ClearMysteryGiftVars(); - ClearEReaderTrainer(&gSaveBlock2Ptr->frontier.ereaderTrainer); -} - -bool32 SaveWonderCard(const struct WonderCard *card) -{ - struct WonderCardMetadata *metadata; - if (!ValidateWonderCard(card)) - return FALSE; - - ClearSavedWonderCardAndRelated(); - memcpy(&gSaveBlock1Ptr->mysteryGift.card, card, sizeof(struct WonderCard)); - gSaveBlock1Ptr->mysteryGift.cardCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.card); - metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; - metadata->iconSpecies = (&gSaveBlock1Ptr->mysteryGift.card)->iconSpecies; - return TRUE; -} - -bool32 ValidateSavedWonderCard(void) -{ - if (gSaveBlock1Ptr->mysteryGift.cardCrc != CALC_CRC(gSaveBlock1Ptr->mysteryGift.card)) - return FALSE; - if (!ValidateWonderCard(&gSaveBlock1Ptr->mysteryGift.card)) - return FALSE; - if (!ValidateSavedRamScript()) - return FALSE; - - return TRUE; -} - -static bool32 ValidateWonderCard(const struct WonderCard *card) -{ - if (card->flagId == 0) - return FALSE; - if (card->type >= CARD_TYPE_COUNT) - return FALSE; - if (!(card->sendType == SEND_TYPE_DISALLOWED - || card->sendType == SEND_TYPE_ALLOWED - || card->sendType == SEND_TYPE_ALLOWED_ALWAYS)) - return FALSE; - if (card->bgType >= NUM_WONDER_BGS) - return FALSE; - if (card->maxStamps > MAX_STAMP_CARD_STAMPS) - return FALSE; - - return TRUE; -} - -bool32 IsSendingSavedWonderCardAllowed(void) -{ - const struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->sendType == SEND_TYPE_DISALLOWED) - return FALSE; - - return TRUE; -} - -static void ClearSavedWonderCard(void) -{ - CpuFill32(0, &gSaveBlock1Ptr->mysteryGift.card, sizeof(gSaveBlock1Ptr->mysteryGift.card)); - gSaveBlock1Ptr->mysteryGift.cardCrc = 0; -} - -static void ClearSavedWonderCardMetadata(void) -{ - CpuFill32(0, GetSavedWonderCardMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.cardMetadata)); - gSaveBlock1Ptr->mysteryGift.cardMetadataCrc = 0; -} - -u16 GetWonderCardFlagID(void) -{ - if (ValidateSavedWonderCard()) - return gSaveBlock1Ptr->mysteryGift.card.flagId; - - return 0; -} - -void DisableWonderCardSending(struct WonderCard *card) -{ - if (card->sendType == SEND_TYPE_ALLOWED) - card->sendType = SEND_TYPE_DISALLOWED; -} - -static bool32 IsWonderCardFlagIDInValidRange(u16 flagId) -{ - if (flagId >= WONDER_CARD_FLAG_OFFSET && flagId < WONDER_CARD_FLAG_OFFSET + NUM_WONDER_CARD_FLAGS) - return TRUE; - - return FALSE; -} - -static const u16 sReceivedGiftFlags[] = -{ - FLAG_RECEIVED_AURORA_TICKET, - FLAG_RECEIVED_MYSTIC_TICKET, - FLAG_RECEIVED_OLD_SEA_MAP, - FLAG_WONDER_CARD_UNUSED_1, - FLAG_WONDER_CARD_UNUSED_2, - FLAG_WONDER_CARD_UNUSED_3, - FLAG_WONDER_CARD_UNUSED_4, - FLAG_WONDER_CARD_UNUSED_5, - FLAG_WONDER_CARD_UNUSED_6, - FLAG_WONDER_CARD_UNUSED_7, - FLAG_WONDER_CARD_UNUSED_8, - FLAG_WONDER_CARD_UNUSED_9, - FLAG_WONDER_CARD_UNUSED_10, - FLAG_WONDER_CARD_UNUSED_11, - FLAG_WONDER_CARD_UNUSED_12, - FLAG_WONDER_CARD_UNUSED_13, - FLAG_WONDER_CARD_UNUSED_14, - FLAG_WONDER_CARD_UNUSED_15, - FLAG_WONDER_CARD_UNUSED_16, - FLAG_WONDER_CARD_UNUSED_17, -}; - -bool32 IsSavedWonderCardGiftNotReceived(void) -{ - u16 value = GetWonderCardFlagID(); - if (!IsWonderCardFlagIDInValidRange(value)) - return FALSE; - - // If flag is set, player has received gift from this card - if (FlagGet(sReceivedGiftFlags[value - WONDER_CARD_FLAG_OFFSET]) == TRUE) - return FALSE; - - return TRUE; -} - -static int GetNumStampsInMetadata(const struct WonderCardMetadata *data, int size) -{ - int numStamps = 0; - int i; - for (i = 0; i < size; i++) - { - if (data->stampData[STAMP_ID][i] && data->stampData[STAMP_SPECIES][i] != SPECIES_NONE) - numStamps++; - } - - return numStamps; -} - -static bool32 IsStampInMetadata(const struct WonderCardMetadata *metadata, const u16 *stamp, int maxStamps) -{ - int i; - for (i = 0; i < maxStamps; i++) - { - if (metadata->stampData[STAMP_ID][i] == stamp[STAMP_ID]) - return TRUE; - if (metadata->stampData[STAMP_SPECIES][i] == stamp[STAMP_SPECIES]) - return TRUE; - } - - return FALSE; -} - -static bool32 ValidateStamp(const u16 *stamp) -{ - if (stamp[STAMP_ID] == 0) - return FALSE; - if (stamp[STAMP_SPECIES] == SPECIES_NONE) - return FALSE; - if (stamp[STAMP_SPECIES] >= NUM_SPECIES) - return FALSE; - return TRUE; -} - -static int GetNumStampsInSavedCard(void) -{ - struct WonderCard *card; - if (!ValidateSavedWonderCard()) - return 0; - - card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type != CARD_TYPE_STAMP) - return 0; - - return GetNumStampsInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, card->maxStamps); -} - -bool32 MysteryGift_TrySaveStamp(const u16 *stamp) -{ - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - int maxStamps = card->maxStamps; - int i; - if (!ValidateStamp(stamp)) - return FALSE; - - if (IsStampInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, stamp, maxStamps)) - return FALSE; - - for (i = 0; i < maxStamps; i++) - { - if (gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] == 0 - && gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] == SPECIES_NONE) - { - gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] = stamp[STAMP_ID]; - gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] = stamp[STAMP_SPECIES]; - return TRUE; - } - } - - return FALSE; -} - -#define GAME_DATA_VALID_VAR 0x101 -#define GAME_DATA_VALID_GIFT_TYPE_1 (1 << 2) -#define GAME_DATA_VALID_GIFT_TYPE_2 (1 << 9) - -void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews) -{ - int i; - CpuFill32(0, data, sizeof(*data)); - data->validationVar = GAME_DATA_VALID_VAR; - data->validationFlag1 = 1; - data->validationFlag2 = 1; - - if (isWonderNews) - { - // Despite setting these for News, they are - // only ever checked for Cards - data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1 | 1; - data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2 | 1; - } - else // Wonder Card - { - data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1; - data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2; - } - - if (ValidateSavedWonderCard()) - { - data->flagId = GetSavedWonderCard()->flagId; - data->cardMetadata = *GetSavedWonderCardMetadata(); - data->maxStamps = GetSavedWonderCard()->maxStamps; - } - else - { - data->flagId = 0; - } - - for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) - data->questionnaireWords[i] = gSaveBlock1Ptr->mysteryGift.questionnaireWords[i]; - - CopyTrainerId(data->playerTrainerId, gSaveBlock2Ptr->playerTrainerId); - StringCopy(data->playerName, gSaveBlock2Ptr->playerName); - for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) - data->easyChatProfile[i] = gSaveBlock1Ptr->easyChatProfile[i]; - - memcpy(data->romHeaderGameCode, RomHeaderGameCode, GAME_CODE_LENGTH); - data->romHeaderSoftwareVersion = RomHeaderSoftwareVersion; -} - -bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews) -{ - if (data->validationVar != GAME_DATA_VALID_VAR) - return FALSE; - - if (!(data->validationFlag1 & 1)) - return FALSE; - - if (!(data->validationFlag2 & 1)) - return FALSE; - - if (!isWonderNews) - { - if (!(data->validationGiftType1 & GAME_DATA_VALID_GIFT_TYPE_1)) - return FALSE; - - if (!(data->validationGiftType2 & (GAME_DATA_VALID_GIFT_TYPE_2 | 0x180))) - return FALSE; - } - - return TRUE; -} - -u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused) -{ - // Has a Wonder Card already? - if (data->flagId == 0) - return HAS_NO_CARD; - - // Has this Wonder Card already? - if (*flagId == data->flagId) - return HAS_SAME_CARD; - - // Player has a different Wonder Card - return HAS_DIFF_CARD; -} - -// This is referenced by the Mystery Gift server, but the instruction it's referenced in is never used, -// so the return values here are never checked by anything. -u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused) -{ - int stampsMissing = data->maxStamps - GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); - - // Has full stamp card? - if (stampsMissing == 0) - return 1; - - // Already has stamp? - if (IsStampInMetadata(&data->cardMetadata, stamp, data->maxStamps)) - return 3; - - // Only 1 empty stamp left? - if (stampsMissing == 1) - return 4; - - // This is a new stamp - return 2; -} - -bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words) -{ - int i; - for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) - { - if (data->questionnaireWords[i] != words[i]) - return FALSE; - } - - return TRUE; -} - -static int GetNumStampsInLinkData(const struct MysteryGiftLinkGameData *data) -{ - return GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); -} - -u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat) -{ - switch (stat) - { - case CARD_STAT_BATTLES_WON: - return data->cardMetadata.battlesWon; - case CARD_STAT_BATTLES_LOST: - return data->cardMetadata.battlesLost; - case CARD_STAT_NUM_TRADES: - return data->cardMetadata.numTrades; - case CARD_STAT_NUM_STAMPS: - return GetNumStampsInLinkData(data); - case CARD_STAT_MAX_STAMPS: - return data->maxStamps; - default: - AGB_ASSERT(0); - return 0; - } -} - -static void IncrementCardStat(u32 statType) -{ - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_LINK_STAT) - { - u16 *stat = NULL; - switch (statType) - { - case CARD_STAT_BATTLES_WON: - stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesWon; - break; - case CARD_STAT_BATTLES_LOST: - stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesLost; - break; - case CARD_STAT_NUM_TRADES: - stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.numTrades; - break; - case CARD_STAT_NUM_STAMPS: // Unused - case CARD_STAT_MAX_STAMPS: // Unused - break; - } - - if (stat == NULL) - AGB_ASSERT(0); - else if (++(*stat) > MAX_WONDER_CARD_STAT) - *stat = MAX_WONDER_CARD_STAT; - } -} - -u16 MysteryGift_GetCardStat(u32 stat) -{ - switch (stat) - { - case CARD_STAT_BATTLES_WON: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_LINK_STAT) - { - struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; - return metadata->battlesWon; - } - break; - } - case CARD_STAT_BATTLES_LOST: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_LINK_STAT) - { - struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; - return metadata->battlesLost; - } - break; - } - case CARD_STAT_NUM_TRADES: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_LINK_STAT) - { - struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; - return metadata->numTrades; - } - break; - } - case CARD_STAT_NUM_STAMPS: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_STAMP) - return GetNumStampsInSavedCard(); - break; - } - case CARD_STAT_MAX_STAMPS: - { - struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; - if (card->type == CARD_TYPE_STAMP) - return card->maxStamps; - break; - } - } - - AGB_ASSERT(0); - return 0; -} - -void MysteryGift_DisableStats(void) -{ - sStatsEnabled = FALSE; -} - -bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId) -{ - sStatsEnabled = FALSE; - if (flagId == 0) - return FALSE; - - if (!ValidateSavedWonderCard()) - return FALSE; - - if (gSaveBlock1Ptr->mysteryGift.card.flagId != flagId) - return FALSE; - - sStatsEnabled = TRUE; - return TRUE; -} - -void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId) -{ - if (sStatsEnabled) - { - switch (stat) - { - case CARD_STAT_NUM_TRADES: - IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, - trainerId, - gSaveBlock1Ptr->mysteryGift.trainerIds[1], - ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[1])); - break; - case CARD_STAT_BATTLES_WON: - IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_WON, - trainerId, - gSaveBlock1Ptr->mysteryGift.trainerIds[0], - ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); - break; - case CARD_STAT_BATTLES_LOST: - IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_LOST, - trainerId, - gSaveBlock1Ptr->mysteryGift.trainerIds[0], - ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); - break; - default: - AGB_ASSERT(0); - break; - } - } -} - -static void ClearSavedTrainerIds(void) -{ - CpuFill32(0, gSaveBlock1Ptr->mysteryGift.trainerIds, sizeof(gSaveBlock1Ptr->mysteryGift.trainerIds)); -} - -// Returns TRUE if it's a new trainer id, FALSE if an existing one. -// In either case the given trainerId is saved in element 0 -static bool32 RecordTrainerId(u32 trainerId, u32 *trainerIds, int size) -{ - int i, j; - - for (i = 0; i < size; i++) - { - if (trainerIds[i] == trainerId) - break; - } - - if (i == size) - { - // New trainer, shift array and insert new id at front - for (j = size - 1; j > 0; j--) - trainerIds[j] = trainerIds[j - 1]; - - trainerIds[0] = trainerId; - return TRUE; - } - else - { - // Existing trainer, shift back to old slot and move id to front - for (j = i; j > 0; j--) - trainerIds[j] = trainerIds[j - 1]; - - trainerIds[0] = trainerId; - return FALSE; - } -} - -static void IncrementCardStatForNewTrainer(u32 stat, u32 trainerId, u32 *trainerIds, int size) -{ - if (RecordTrainerId(trainerId, trainerIds, size)) - IncrementCardStat(stat); -} diff --git a/src/mystery_event_msg.c b/src/mystery_event_msg.c index e0e70a218d20..51141bb77ea3 100644 --- a/src/mystery_event_msg.c +++ b/src/mystery_event_msg.c @@ -1,13 +1,13 @@ #include "global.h" -const u8 gText_MysteryGiftBerry[] = _("Obtained a {STR_VAR_2} BERRY!\nDad has it at PETALBURG GYM."); -const u8 gText_MysteryGiftBerryTransform[] = _("The {STR_VAR_1} BERRY transformed into\none {STR_VAR_2} BERRY."); -const u8 gText_MysteryGiftBerryObtained[] = _("The {STR_VAR_1} BERRY has already been\nobtained."); -const u8 gText_MysteryGiftSpecialRibbon[] = _("A special RIBBON was awarded to\nyour party POKĂ©MON."); -const u8 gText_MysteryGiftNationalDex[] = _("The POKĂ©DEX has been upgraded\nwith the NATIONAL MODE."); -const u8 gText_MysteryGiftRareWord[] = _("A rare word has been added."); -const u8 gText_MysteryGiftSentOver[] = _("{STR_VAR_1} was sent over!"); -const u8 gText_MysteryGiftFullParty[] = _("Your party is full.\n{STR_VAR_1} could not be sent over."); -const u8 gText_MysteryGiftNewTrainer[] = _("A new TRAINER has arrived in\nHOENN."); -const u8 gText_MysteryGiftNewAdversaryInBattleTower[] = _("A new adversary has arrived in the\nBATTLE TOWER."); -const u8 gText_MysteryGiftCantBeUsed[] = _("This data can't be used in\nthis version."); +const u8 gText_MysteryEventBerry[] = _("Obtained a {STR_VAR_2} BERRY!\nDad has it at PETALBURG GYM."); +const u8 gText_MysteryEventBerryTransform[] = _("The {STR_VAR_1} BERRY transformed into\none {STR_VAR_2} BERRY."); +const u8 gText_MysteryEventBerryObtained[] = _("The {STR_VAR_1} BERRY has already been\nobtained."); +const u8 gText_MysteryEventSpecialRibbon[] = _("A special RIBBON was awarded to\nyour party POKĂ©MON."); +const u8 gText_MysteryEventNationalDex[] = _("The POKĂ©DEX has been upgraded\nwith the NATIONAL MODE."); +const u8 gText_MysteryEventRareWord[] = _("A rare word has been added."); +const u8 gText_MysteryEventSentOver[] = _("{STR_VAR_1} was sent over!"); +const u8 gText_MysteryEventFullParty[] = _("Your party is full.\n{STR_VAR_1} could not be sent over."); +const u8 gText_MysteryEventNewTrainer[] = _("A new TRAINER has arrived in\nHOENN."); +const u8 gText_MysteryEventNewAdversaryInBattleTower[] = _("A new adversary has arrived in the\nBATTLE TOWER."); +const u8 gText_MysteryEventCantBeUsed[] = _("This data can't be used in\nthis version."); diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 7b5e8ebe5cb0..f80240006f4d 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -43,7 +43,7 @@ static bool32 CheckCompatibility(u16 a1, u32 a2, u16 a3, u32 a4) static void SetIncompatible(void) { - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftCantBeUsed); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventCantBeUsed); SetMysteryEventScriptStatus(3); } @@ -65,12 +65,12 @@ static bool32 RunMysteryEventScriptCommand(struct ScriptContext *ctx) return FALSE; } -void InitMysteryGiftScriptContext(u8 *script) +void InitMysteryEventScriptContext(u8 *script) { InitMysteryEventScript(&sMysteryEventScriptContext, script); } -bool32 RunMysteryGiftScriptContextCommand(u32 *script) +bool32 RunMysteryEventScriptContextCommand(u32 *script) { bool32 ret = RunMysteryEventScriptCommand(&sMysteryEventScriptContext); *script = sMysteryEventScriptContext.data[2]; @@ -229,17 +229,17 @@ bool8 MEScrCmd_setenigmaberry(struct ScriptContext *ctx) if (!haveBerry) { str = gStringVar4; - message = gText_MysteryGiftBerry; + message = gText_MysteryEventBerry; } else if (StringCompare(gStringVar1, gStringVar2)) { str = gStringVar4; - message = gText_MysteryGiftBerryTransform; + message = gText_MysteryEventBerryTransform; } else { str = gStringVar4; - message = gText_MysteryGiftBerryObtained; + message = gText_MysteryEventBerryObtained; } StringExpandPlaceholders(str, message); @@ -259,7 +259,7 @@ bool8 MEScrCmd_giveribbon(struct ScriptContext *ctx) u8 index = ScriptReadByte(ctx); u8 ribbonId = ScriptReadByte(ctx); GiveGiftRibbonToParty(index, ribbonId); - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftSpecialRibbon); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventSpecialRibbon); ctx->data[2] = 2; return FALSE; } @@ -278,7 +278,7 @@ bool8 MEScrCmd_initramscript(struct ScriptContext *ctx) bool8 MEScrCmd_givenationaldex(struct ScriptContext *ctx) { EnableNationalPokedex(); - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftNationalDex); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventNationalDex); ctx->data[2] = 2; return FALSE; } @@ -286,7 +286,7 @@ bool8 MEScrCmd_givenationaldex(struct ScriptContext *ctx) bool8 MEScrCmd_addrareword(struct ScriptContext *ctx) { UnlockAdditionalPhrase(ScriptReadByte(ctx)); - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftRareWord); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventRareWord); ctx->data[2] = 2; return FALSE; } @@ -320,7 +320,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) if (gPlayerPartyCount == PARTY_SIZE) { - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftFullParty); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventFullParty); ctx->data[2] = 3; } else @@ -340,7 +340,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) GiveMailToMon2(&gPlayerParty[PARTY_SIZE - 1], &mail); CompactPartySlots(); CalculatePlayerPartyCount(); - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftSentOver); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventSentOver); ctx->data[2] = 2; } @@ -352,7 +352,7 @@ bool8 MEScrCmd_addtrainer(struct ScriptContext *ctx) u32 data = ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]; memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, (void *)data, sizeof(gSaveBlock2Ptr->frontier.ereaderTrainer)); ValidateEReaderTrainer(); - StringExpandPlaceholders(gStringVar4, gText_MysteryGiftNewTrainer); + StringExpandPlaceholders(gStringVar4, gText_MysteryEventNewTrainer); ctx->data[2] = 2; return FALSE; } diff --git a/src/mystery_gift.c b/src/mystery_gift.c old mode 100644 new mode 100755 index bc6e8c44b84e..1df6533d9679 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -1,1618 +1,662 @@ #include "global.h" +#include "util.h" #include "main.h" -#include "text.h" -#include "task.h" -#include "malloc.h" -#include "gpu_regs.h" -#include "scanline_effect.h" -#include "text_window.h" -#include "bg.h" -#include "window.h" -#include "strings.h" -#include "text_window.h" -#include "menu.h" -#include "palette.h" -#include "constants/songs.h" -#include "sound.h" -#include "mystery_gift.h" -#include "union_room.h" -#include "title_screen.h" -#include "ereader_screen.h" -#include "international_string_util.h" -#include "list_menu.h" -#include "string_util.h" -#include "mevent.h" -#include "wonder_transfer.h" -#include "save.h" -#include "link.h" -#include "mevent_client.h" #include "event_data.h" -#include "link_rfu.h" -#include "mevent_news.h" -#include "mevent_server.h" -#include "constants/cable_club.h" - -#define LIST_MENU_TILE_NUM 10 -#define LIST_MENU_PAL_NUM 224 +#include "easy_chat.h" +#include "script.h" +#include "battle_tower.h" +#include "wonder_news.h" +#include "string_util.h" +#include "new_game.h" +#include "mystery_gift.h" +#include "constants/mystery_gift.h" -static void LoadMysteryGiftTextboxBorder(u8 bgId); -static void CreateMysteryGiftTask(void); -static void Task_MysteryGift(u8 taskId); +static EWRAM_DATA bool32 sStatsEnabled = FALSE; -EWRAM_DATA static u8 sDownArrowCounterAndYCoordIdx[8] = {}; -EWRAM_DATA bool8 gGiftIsFromEReader = FALSE; +static void ClearSavedWonderNewsMetadata(void); +static void ClearSavedWonderNews(void); +static void ClearSavedWonderCard(void); +static bool32 ValidateWonderNews(const struct WonderNews *); +static bool32 ValidateWonderCard(const struct WonderCard *); +static void ClearSavedWonderCardMetadata(void); +static void ClearSavedTrainerIds(void); +static void IncrementCardStatForNewTrainer(u32, u32, u32 *, int); -static const u16 sTextboxBorder_Pal[] = INCBIN_U16("graphics/interface/mystery_gift_textbox_border.gbapal"); -static const u32 sTextboxBorder_Gfx[] = INCBIN_U32("graphics/interface/mystery_gift_textbox_border.4bpp.lz"); +#define CALC_CRC(data) CalcCRC16WithTable((void *)&(data), sizeof(data)) -struct MysteryGiftTaskData +void ClearMysteryGift(void) { - u16 var; // Multipurpose - u16 unused1; - u16 unused2; - u16 unused3; - u8 state; - u8 textState; - u8 unused4; - u8 unused5; - bool8 isWonderNews; - bool8 sourceIsFriend; - u8 msgId; - u8 * clientMsg; -}; - -static const struct BgTemplate sBGTemplates[] = { - { - .bg = 0, - .charBaseIndex = 2, - .mapBaseIndex = 15, - .screenSize = 0, - .paletteMode = 0, - .priority = 0, - .baseTile = 0x000 - }, { - .bg = 1, - .charBaseIndex = 0, - .mapBaseIndex = 14, - .screenSize = 0, - .paletteMode = 0, - .priority = 1, - .baseTile = 0x000 - }, { - .bg = 2, - .charBaseIndex = 0, - .mapBaseIndex = 13, - .screenSize = 0, - .paletteMode = 0, - .priority = 2, - .baseTile = 0x000 - }, { - .bg = 3, - .charBaseIndex = 0, - .mapBaseIndex = 12, - .screenSize = 0, - .paletteMode = 0, - .priority = 3, - .baseTile = 0x000 - } -}; - -static const struct WindowTemplate sMainWindows[] = { - { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 0, - .width = 30, - .height = 2, - .paletteNum = 12, - .baseBlock = 0x0013 - }, { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 15, - .width = 28, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x004f - }, { - .bg = 0, - .tilemapLeft = 0, - .tilemapTop = 15, - .width = 30, - .height = 5, - .paletteNum = 13, - .baseBlock = 0x004f - }, - DUMMY_WIN_TEMPLATE -}; - -static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 15, - .width = 28, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x00e5 -}; - -static const struct WindowTemplate sWindowTemplate_YesNoMsg = { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 15, - .width = 20, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x00e5 -}; - -static const struct WindowTemplate sWindowTemplate_GiftSelect = { - .bg = 0, - .tilemapLeft = 1, - .tilemapTop = 15, - .width = 19, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x00e5 -}; - -static const struct WindowTemplate sWindowTemplate_ThreeOptions = { - .bg = 0, - .tilemapLeft = 8, - .tilemapTop = 6, - .width = 14, - .height = 6, - .paletteNum = 12, - .baseBlock = 0x0155 -}; - -static const struct WindowTemplate sWindowTemplate_YesNoBox = { - .bg = 0, - .tilemapLeft = 23, - .tilemapTop = 15, - .width = 6, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x0155 -}; - -static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = { - .bg = 0, - .tilemapLeft = 22, - .tilemapTop = 11, - .width = 7, - .height = 8, - .paletteNum = 12, - .baseBlock = 0x0155 -}; - -static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = { - .bg = 0, - .tilemapLeft = 22, - .tilemapTop = 13, - .width = 7, - .height = 6, - .paletteNum = 12, - .baseBlock = 0x0155 -}; + CpuFill32(0, &gSaveBlock1Ptr->mysteryGift, sizeof(gSaveBlock1Ptr->mysteryGift)); + ClearSavedWonderNewsMetadata(); // Clear is redundant, InitSavedWonderNews would be sufficient + InitQuestionnaireWords(); +} -static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { - .bg = 0, - .tilemapLeft = 22, - .tilemapTop = 15, - .width = 7, - .height = 4, - .paletteNum = 12, - .baseBlock = 0x0155 -}; +struct WonderNews *GetSavedWonderNews(void) +{ + return &gSaveBlock1Ptr->mysteryGift.news; +} -static const struct ListMenuItem sListMenuItems_CardsOrNews[] = { - { gText_WonderCards, 0 }, - { gText_WonderNews, 1 }, - { gText_Exit3, LIST_CANCEL } -}; +struct WonderCard *GetSavedWonderCard(void) +{ + return &gSaveBlock1Ptr->mysteryGift.card; +} -static const struct ListMenuItem sListMenuItems_WirelessOrFriend[] = { - { gText_WirelessCommunication, 0 }, - { gText_Friend2, 1 }, - { gText_Cancel2, LIST_CANCEL } -}; +struct WonderCardMetadata *GetSavedWonderCardMetadata(void) +{ + return &gSaveBlock1Ptr->mysteryGift.cardMetadata; +} -static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = { - .items = NULL, - .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = NULL, - .totalItems = 3, - .maxShowed = 3, - .windowId = 0, - .header_X = 0, - .item_X = 8, - .cursor_X = 0, - .upText_Y = 1, - .cursorPal = 2, - .fillValue = 1, - .cursorShadowPal = 3, - .lettersSpacing = 0, - .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 -}; +struct WonderNewsMetadata *GetSavedWonderNewsMetadata(void) +{ + return &gSaveBlock1Ptr->mysteryGift.newsMetadata; +} -static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = { - { gText_Receive, 0 }, - { gText_Send, 1 }, - { gText_Toss, 2 }, - { gText_Cancel2, LIST_CANCEL } -}; +u16 *GetQuestionnaireWordsPtr(void) +{ + return gSaveBlock1Ptr->mysteryGift.questionnaireWords; +} -static const struct ListMenuItem sListMenuItems_ReceiveToss[] = { - { gText_Receive, 0 }, - { gText_Toss, 2 }, - { gText_Cancel2, LIST_CANCEL } -}; +// Equivalent to ClearSavedWonderCardAndRelated, but nothing else to clear +void ClearSavedWonderNewsAndRelated(void) +{ + ClearSavedWonderNews(); +} -static const struct ListMenuItem sListMenuItems_ReceiveSend[] = { - { gText_Receive, 0 }, - { gText_Send, 1 }, - { gText_Cancel2, LIST_CANCEL } -}; +bool32 SaveWonderNews(const struct WonderNews *news) +{ + if (!ValidateWonderNews(news)) + return FALSE; -static const struct ListMenuItem sListMenuItems_Receive[] = { - { gText_Receive, 0 }, - { gText_Cancel2, LIST_CANCEL } -}; + ClearSavedWonderNews(); + gSaveBlock1Ptr->mysteryGift.news = *news; + gSaveBlock1Ptr->mysteryGift.newsCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.news); + return TRUE; +} -static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { - .items = sListMenuItems_ReceiveSendToss, - .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = NULL, - .totalItems = 4, - .maxShowed = 4, - .windowId = 0, - .header_X = 0, - .item_X = 8, - .cursor_X = 0, - .upText_Y = 1, - .cursorPal = 2, - .fillValue = 1, - .cursorShadowPal = 3, - .lettersSpacing = 0, - .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 -}; +bool32 ValidateSavedWonderNews(void) +{ + if (CALC_CRC(gSaveBlock1Ptr->mysteryGift.news) != gSaveBlock1Ptr->mysteryGift.newsCrc) + return FALSE; + if (!ValidateWonderNews(&gSaveBlock1Ptr->mysteryGift.news)) + return FALSE; -static const struct ListMenuTemplate sListMenu_ReceiveToss = { - .items = sListMenuItems_ReceiveToss, - .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = NULL, - .totalItems = 3, - .maxShowed = 3, - .windowId = 0, - .header_X = 0, - .item_X = 8, - .cursor_X = 0, - .upText_Y = 1, - .cursorPal = 2, - .fillValue = 1, - .cursorShadowPal = 3, - .lettersSpacing = 0, - .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 -}; + return TRUE; +} -static const struct ListMenuTemplate sListMenu_ReceiveSend = { - .items = sListMenuItems_ReceiveSend, - .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = NULL, - .totalItems = 3, - .maxShowed = 3, - .windowId = 0, - .header_X = 0, - .item_X = 8, - .cursor_X = 0, - .upText_Y = 1, - .cursorPal = 2, - .fillValue = 1, - .cursorShadowPal = 3, - .lettersSpacing = 0, - .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 -}; +static bool32 ValidateWonderNews(const struct WonderNews *news) +{ + if (news->id == 0) + return FALSE; -static const struct ListMenuTemplate sListMenu_Receive = { - .items = sListMenuItems_Receive, - .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = NULL, - .totalItems = 2, - .maxShowed = 2, - .windowId = 0, - .header_X = 0, - .item_X = 8, - .cursor_X = 0, - .upText_Y = 1, - .cursorPal = 2, - .fillValue = 1, - .cursorShadowPal = 3, - .lettersSpacing = 0, - .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 -}; + return TRUE; +} -static const u8 *const Unref_082F0710[] = { - gText_VarietyOfEventsImportedWireless, - gText_WonderCardsInPossession, - gText_ReadNewsThatArrived, - gText_ReturnToTitle -}; +bool32 IsSendingSavedWonderNewsAllowed(void) +{ + const struct WonderNews *news = &gSaveBlock1Ptr->mysteryGift.news; + if (news->sendType == SEND_TYPE_DISALLOWED) + return FALSE; -ALIGNED(2) static const u8 sTextColors_TopMenu[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; -ALIGNED(2) static const u8 sTextColors_TopMenu_Copy[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; -ALIGNED(2) static const u8 sMG_Ereader_TextColor_2[] = { TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY }; + return TRUE; +} -static void VBlankCB_MysteryGiftEReader(void) +static void ClearSavedWonderNews(void) { - ProcessSpriteCopyRequests(); - LoadOam(); - TransferPlttBuffer(); + CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->mysteryGift.news)); + gSaveBlock1Ptr->mysteryGift.newsCrc = 0; } -void CB2_MysteryGiftEReader(void) +static void ClearSavedWonderNewsMetadata(void) { - RunTasks(); - RunTextPrinters(); - AnimateSprites(); - BuildOamBuffer(); + CpuFill32(0, GetSavedWonderNewsMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.newsMetadata)); + InitSavedWonderNews(); } -static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) +bool32 IsWonderNewsSameAsSaved(const u8 *news) { - switch (gMain.state) + const u8 *savedNews = (const u8 *)&gSaveBlock1Ptr->mysteryGift.news; + u32 i; + if (!ValidateSavedWonderNews()) + return FALSE; + + for (i = 0; i < sizeof(gSaveBlock1Ptr->mysteryGift.news); i++) { - case 0: - SetVBlankCallback(NULL); - ResetPaletteFade(); - ResetSpriteData(); - FreeAllSpritePalettes(); - ResetTasks(); - ScanlineEffect_Stop(); - ResetBgsAndClearDma3BusyFlags(0); - - InitBgsFromTemplates(0, sBGTemplates, ARRAY_COUNT(sBGTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); - - SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); - SetBgTilemapBuffer(2, Alloc(BG_SCREEN_SIZE)); - SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); - SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); - - LoadMysteryGiftTextboxBorder(3); - InitWindows(sMainWindows); - DeactivateAllTextPrinters(); - ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); - SetGpuReg(REG_OFFSET_BLDCNT, 0); - SetGpuReg(REG_OFFSET_BLDALPHA, 0); - SetGpuReg(REG_OFFSET_BLDY, 0); - gMain.state++; - break; - case 1: - LoadPalette(sTextboxBorder_Pal, 0, 0x20); - LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20); - Menu_LoadStdPalAt(0xC0); - LoadUserWindowBorderGfx(0, 0xA, 0xE0); - LoadUserWindowBorderGfx_(0, 0x1, 0xF0); - FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); - MG_DrawCheckerboardPattern(3); - PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE); - gMain.state++; - break; - case 2: - CopyBgTilemapBufferToVram(3); - CopyBgTilemapBufferToVram(2); - CopyBgTilemapBufferToVram(1); - CopyBgTilemapBufferToVram(0); - gMain.state++; - break; - case 3: - ShowBg(0); - ShowBg(3); - PlayBGM(MUS_RG_MYSTERY_GIFT); - SetVBlankCallback(VBlankCB_MysteryGiftEReader); - EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); - return TRUE; + if (savedNews[i] != news[i]) + return FALSE; } - return FALSE; + return TRUE; } -void CB2_InitMysteryGift(void) +void ClearSavedWonderCardAndRelated(void) { - if (HandleMysteryGiftOrEReaderSetup(FALSE)) - { - SetMainCallback2(CB2_MysteryGiftEReader); - gGiftIsFromEReader = FALSE; - CreateMysteryGiftTask(); - } - RunTasks(); + ClearSavedWonderCard(); + ClearSavedWonderCardMetadata(); + ClearSavedTrainerIds(); + ClearRamScript(); + ClearMysteryGiftFlags(); + ClearMysteryGiftVars(); + ClearEReaderTrainer(&gSaveBlock2Ptr->frontier.ereaderTrainer); } -void CB2_InitEReader(void) +bool32 SaveWonderCard(const struct WonderCard *card) { - if (HandleMysteryGiftOrEReaderSetup(TRUE)) - { - SetMainCallback2(CB2_MysteryGiftEReader); - gGiftIsFromEReader = TRUE; - CreateEReaderTask(); - } -} + struct WonderCardMetadata *metadata; + if (!ValidateWonderCard(card)) + return FALSE; -void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void) -{ - gGiftIsFromEReader = FALSE; - FreeAllWindowBuffers(); - Free(GetBgTilemapBuffer(0)); - Free(GetBgTilemapBuffer(1)); - Free(GetBgTilemapBuffer(2)); - Free(GetBgTilemapBuffer(3)); - SetMainCallback2(CB2_InitTitleScreen); + ClearSavedWonderCardAndRelated(); + memcpy(&gSaveBlock1Ptr->mysteryGift.card, card, sizeof(struct WonderCard)); + gSaveBlock1Ptr->mysteryGift.cardCrc = CALC_CRC(gSaveBlock1Ptr->mysteryGift.card); + metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + metadata->iconSpecies = (&gSaveBlock1Ptr->mysteryGift.card)->iconSpecies; + return TRUE; } -void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) +bool32 ValidateSavedWonderCard(void) { - const u8 * header; - const u8 * options; - FillWindowPixelBuffer(0, 0); - if (!isEReader) - { - header = gText_MysteryGift; - options = !useCancel ? gText_PickOKExit : gText_PickOKCancel; - } - else - { - header = gJPText_MysteryGift; - options = gJPText_DecideStop; - } + if (gSaveBlock1Ptr->mysteryGift.cardCrc != CALC_CRC(gSaveBlock1Ptr->mysteryGift.card)) + return FALSE; + if (!ValidateWonderCard(&gSaveBlock1Ptr->mysteryGift.card)) + return FALSE; + if (!ValidateSavedRamScript()) + return FALSE; - AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); - AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); - CopyWindowToVram(0, 2); - PutWindowTilemap(0); + return TRUE; } -void MG_DrawTextBorder(u8 windowId) +static bool32 ValidateWonderCard(const struct WonderCard *card) { - DrawTextBorderOuter(windowId, 0x01, 0xF); + if (card->flagId == 0) + return FALSE; + if (card->type >= CARD_TYPE_COUNT) + return FALSE; + if (!(card->sendType == SEND_TYPE_DISALLOWED + || card->sendType == SEND_TYPE_ALLOWED + || card->sendType == SEND_TYPE_ALLOWED_ALWAYS)) + return FALSE; + if (card->bgType >= NUM_WONDER_BGS) + return FALSE; + if (card->maxStamps > MAX_STAMP_CARD_STAMPS) + return FALSE; + + return TRUE; } -void MG_DrawCheckerboardPattern(u32 bg) +bool32 IsSendingSavedWonderCardAllowed(void) { - s32 i = 0, j; - - FillBgTilemapBufferRect(bg, 0x003, 0, 0, 32, 2, 0x11); + const struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->sendType == SEND_TYPE_DISALLOWED) + return FALSE; - for (i = 0; i < 18; i++) - { - for (j = 0; j < 32; j++) - { - if ((i & 1) != (j & 1)) - FillBgTilemapBufferRect(bg, 1, j, i + 2, 1, 1, 0x11); - else - FillBgTilemapBufferRect(bg, 2, j, i + 2, 1, 1, 0x11); - } - } + return TRUE; } -static void ClearScreenInBg0(bool32 ignoreTopTwoRows) +static void ClearSavedWonderCard(void) { - switch (ignoreTopTwoRows) - { - case 0: - FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11); - break; - case 1: - FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 0x11); - break; - } - CopyBgTilemapBufferToVram(0); + CpuFill32(0, &gSaveBlock1Ptr->mysteryGift.card, sizeof(gSaveBlock1Ptr->mysteryGift.card)); + gSaveBlock1Ptr->mysteryGift.cardCrc = 0; } -void AddTextPrinterToWindow1(const u8 *str) +static void ClearSavedWonderCardMetadata(void) { - StringExpandPlaceholders(gStringVar4, str); - FillWindowPixelBuffer(1, 0x11); - AddTextPrinterParameterized4(1, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(1, 0x001, 0xF); - PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CpuFill32(0, GetSavedWonderCardMetadata(), sizeof(gSaveBlock1Ptr->mysteryGift.cardMetadata)); + gSaveBlock1Ptr->mysteryGift.cardMetadataCrc = 0; } -static void ClearTextWindow(void) +u16 GetWonderCardFlagID(void) { - rbox_fill_rectangle(1); - ClearWindowTilemap(1); - CopyWindowToVram(1, 1); + if (ValidateSavedWonderCard()) + return gSaveBlock1Ptr->mysteryGift.card.flagId; + + return 0; } -#define DOWN_ARROW_X 208 -#define DOWN_ARROW_Y 20 +void DisableWonderCardSending(struct WonderCard *card) +{ + if (card->sendType == SEND_TYPE_ALLOWED) + card->sendType = SEND_TYPE_DISALLOWED; +} -bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) +static bool32 IsWonderCardFlagIDInValidRange(u16 flagId) { - switch (*textState) - { - case 0: - AddTextPrinterToWindow1(str); - (*textState)++; - break; - case 1: - DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); - if (({JOY_NEW(A_BUTTON | B_BUTTON);})) - (*textState)++; - break; - case 2: - DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); - *textState = 0; - ClearTextWindow(); + if (flagId >= WONDER_CARD_FLAG_OFFSET && flagId < WONDER_CARD_FLAG_OFFSET + NUM_WONDER_CARD_FLAGS) return TRUE; - case 0xFF: - *textState = 2; - return FALSE; - } + return FALSE; } -static void HideDownArrow(void) +static const u16 sReceivedGiftFlags[] = +{ + FLAG_RECEIVED_AURORA_TICKET, + FLAG_RECEIVED_MYSTIC_TICKET, + FLAG_RECEIVED_OLD_SEA_MAP, + FLAG_WONDER_CARD_UNUSED_1, + FLAG_WONDER_CARD_UNUSED_2, + FLAG_WONDER_CARD_UNUSED_3, + FLAG_WONDER_CARD_UNUSED_4, + FLAG_WONDER_CARD_UNUSED_5, + FLAG_WONDER_CARD_UNUSED_6, + FLAG_WONDER_CARD_UNUSED_7, + FLAG_WONDER_CARD_UNUSED_8, + FLAG_WONDER_CARD_UNUSED_9, + FLAG_WONDER_CARD_UNUSED_10, + FLAG_WONDER_CARD_UNUSED_11, + FLAG_WONDER_CARD_UNUSED_12, + FLAG_WONDER_CARD_UNUSED_13, + FLAG_WONDER_CARD_UNUSED_14, + FLAG_WONDER_CARD_UNUSED_15, + FLAG_WONDER_CARD_UNUSED_16, + FLAG_WONDER_CARD_UNUSED_17, +}; + +bool32 IsSavedWonderCardGiftNotReceived(void) { - DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + u16 value = GetWonderCardFlagID(); + if (!IsWonderCardFlagIDInValidRange(value)) + return FALSE; + + // If flag is set, player has received gift from this card + if (FlagGet(sReceivedGiftFlags[value - WONDER_CARD_FLAG_OFFSET]) == TRUE) + return FALSE; + + return TRUE; } -static void ShowDownArrow(void) +static int GetNumStampsInMetadata(const struct WonderCardMetadata *data, int size) { - DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + int numStamps = 0; + int i; + for (i = 0; i < size; i++) + { + if (data->stampData[STAMP_ID][i] && data->stampData[STAMP_SPECIES][i] != SPECIES_NONE) + numStamps++; + } + + return numStamps; } -// Unused -static bool32 HideDownArrowAndWaitButton(u8 * textState) +static bool32 IsStampInMetadata(const struct WonderCardMetadata *metadata, const u16 *stamp, int maxStamps) { - switch (*textState) + int i; + for (i = 0; i < maxStamps; i++) { - case 0: - HideDownArrow(); - if (JOY_NEW(A_BUTTON | B_BUTTON)) - (*textState)++; - break; - case 1: - ShowDownArrow(); - *textState = 0; - return TRUE; + if (metadata->stampData[STAMP_ID][i] == stamp[STAMP_ID]) + return TRUE; + if (metadata->stampData[STAMP_SPECIES][i] == stamp[STAMP_SPECIES]) + return TRUE; } + return FALSE; } -static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str) +static bool32 ValidateStamp(const u16 *stamp) { - if (*counter == 0) - AddTextPrinterToWindow1(str); - - if (++(*counter) > 120) - { - *counter = 0; - ClearTextWindow(); - return TRUE; - } - else - { + if (stamp[STAMP_ID] == 0) return FALSE; - } + if (stamp[STAMP_SPECIES] == SPECIES_NONE) + return FALSE; + if (stamp[STAMP_SPECIES] >= NUM_SPECIES) + return FALSE; + return TRUE; } -static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whichMenu) +static int GetNumStampsInSavedCard(void) { - struct ListMenuTemplate listMenuTemplate = sListMenuTemplate_ThreeOptions; - struct WindowTemplate windowTemplate = sWindowTemplate_ThreeOptions; - s32 width; - s32 response; + struct WonderCard *card; + if (!ValidateSavedWonderCard()) + return 0; - if (whichMenu == 0) - listMenuTemplate.items = sListMenuItems_CardsOrNews; - else - listMenuTemplate.items = sListMenuItems_WirelessOrFriend; - - width = Intl_GetListMenuWidth(&listMenuTemplate); - if (width & 1) - width++; - - windowTemplate.width = width; - if (width < 30) - windowTemplate.tilemapLeft = (30 - width) / 2; - else - windowTemplate.tilemapLeft = 0; + card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type != CARD_TYPE_STAMP) + return 0; - response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); - if (response != LIST_NOTHING_CHOSEN) - { - ClearWindowTilemap(2); - CopyWindowToVram(2, 1); - } - return response; + return GetNumStampsInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, card->maxStamps); } -s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, const u8 * str) +bool32 MysteryGift_TrySaveStamp(const u16 *stamp) { - struct WindowTemplate windowTemplate; - s8 input; + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + int maxStamps = card->maxStamps; + int i; + if (!ValidateStamp(stamp)) + return FALSE; - switch (*textState) + if (IsStampInMetadata(&gSaveBlock1Ptr->mysteryGift.cardMetadata, stamp, maxStamps)) + return FALSE; + + for (i = 0; i < maxStamps; i++) { - case 0: - // Print question message - StringExpandPlaceholders(gStringVar4, str); - if (yesNoBoxPlacement == 0) - *windowId = AddWindow(&sWindowTemplate_YesNoMsg_Wide); - else - *windowId = AddWindow(&sWindowTemplate_YesNoMsg); - FillWindowPixelBuffer(*windowId, 0x11); - AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(*windowId, 0x001, 0x0F); - CopyWindowToVram(*windowId, 2); - PutWindowTilemap(*windowId); - (*textState)++; - break; - case 1: - // Create Yes/No - windowTemplate = sWindowTemplate_YesNoBox; - if (yesNoBoxPlacement == 0) - windowTemplate.tilemapTop = 9; - else - windowTemplate.tilemapTop = 15; - CreateYesNoMenu(&windowTemplate, 10, 14, 0); - (*textState)++; - break; - case 2: - // Handle Yes/No input - input = Menu_ProcessInputNoWrapClearOnChoose(); - if (input == MENU_B_PRESSED || input == 0 || input == 1) + if (gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] == 0 + && gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] == SPECIES_NONE) { - *textState = 0; - rbox_fill_rectangle(*windowId); - ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); - RemoveWindow(*windowId); - return input; + gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_ID][i] = stamp[STAMP_ID]; + gSaveBlock1Ptr->mysteryGift.cardMetadata.stampData[STAMP_SPECIES][i] = stamp[STAMP_SPECIES]; + return TRUE; } - break; - case 0xFF: - *textState = 0; - rbox_fill_rectangle(*windowId); - ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); - RemoveWindow(*windowId); - return MENU_B_PRESSED; } - return MENU_NOTHING_CHOSEN; + return FALSE; } -// Handle the "Receive/Send/Toss" menu that appears when selecting Wonder Card/News -static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) +#define GAME_DATA_VALID_VAR 0x101 +#define GAME_DATA_VALID_GIFT_TYPE_1 (1 << 2) +#define GAME_DATA_VALID_GIFT_TYPE_2 (1 << 9) + +void MysteryGift_LoadLinkGameData(struct MysteryGiftLinkGameData *data, bool32 isWonderNews) { - struct WindowTemplate windowTemplate; - s32 input; + int i; + CpuFill32(0, data, sizeof(*data)); + data->validationVar = GAME_DATA_VALID_VAR; + data->validationFlag1 = 1; + data->validationFlag2 = 1; - switch (*textState) + if (isWonderNews) { - case 0: - // Print menu message - if (!cannotToss) - StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithCards); - else - StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews); - *windowId = AddWindow(&sWindowTemplate_GiftSelect); - FillWindowPixelBuffer(*windowId, 0x11); - AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(*windowId, 0x001, 0x0F); - CopyWindowToVram(*windowId, 2); - PutWindowTilemap(*windowId); - (*textState)++; - break; - case 1: - windowTemplate = sWindowTemplate_YesNoBox; - if (cannotSend) - { - if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); - else - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); - } - else - { - if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); - else - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); - } - if (input != LIST_NOTHING_CHOSEN) - { - *textState = 0; - rbox_fill_rectangle(*windowId); - ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); - RemoveWindow(*windowId); - return input; - } - break; - case 0xFF: - *textState = 0; - rbox_fill_rectangle(*windowId); - ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); - RemoveWindow(*windowId); - return LIST_CANCEL; + // Despite setting these for News, they are + // only ever checked for Cards + data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1 | 1; + data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2 | 1; + } + else // Wonder Card + { + data->validationGiftType1 = GAME_DATA_VALID_GIFT_TYPE_1; + data->validationGiftType2 = GAME_DATA_VALID_GIFT_TYPE_2; } - return LIST_NOTHING_CHOSEN; -} - -static bool32 ValidateCardOrNews(bool32 isWonderNews) -{ - if (!isWonderNews) - return ValidateSavedWonderCard(); + if (ValidateSavedWonderCard()) + { + data->flagId = GetSavedWonderCard()->flagId; + data->cardMetadata = *GetSavedWonderCardMetadata(); + data->maxStamps = GetSavedWonderCard()->maxStamps; + } else - return ValidateSavedWonderNews(); -} - -static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) -{ - switch (*state) { - case 0: - if (!isWonderNews) - WonderCard_Init(GetSavedWonderCard(), GetSavedWonderCardMetadata()); - else - WonderNews_Init(GetSavedWonderNews()); - (*state)++; - break; - case 1: - if (!isWonderNews) - { - if (!WonderCard_Enter()) - return FALSE; - } - else - { - if (!WonderNews_Enter()) - return FALSE; - } - *state = 0; - return TRUE; + data->flagId = 0; } - return FALSE; -} + for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) + data->questionnaireWords[i] = gSaveBlock1Ptr->mysteryGift.questionnaireWords[i]; -static bool32 ClearSavedNewsOrCard(bool32 isWonderNews) -{ - if (!isWonderNews) - ClearSavedWonderCardAndRelated(); - else - ClearSavedWonderNewsAndRelated(); - return TRUE; + CopyTrainerId(data->playerTrainerId, gSaveBlock2Ptr->playerTrainerId); + StringCopy(data->playerName, gSaveBlock2Ptr->playerName); + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) + data->easyChatProfile[i] = gSaveBlock1Ptr->easyChatProfile[i]; + + memcpy(data->romHeaderGameCode, RomHeaderGameCode, GAME_CODE_LENGTH); + data->romHeaderSoftwareVersion = RomHeaderSoftwareVersion; } -static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 useCancel) +bool32 MysteryGift_ValidateLinkGameData(const struct MysteryGiftLinkGameData *data, bool32 isWonderNews) { + if (data->validationVar != GAME_DATA_VALID_VAR) + return FALSE; + + if (!(data->validationFlag1 & 1)) + return FALSE; + + if (!(data->validationFlag2 & 1)) + return FALSE; + if (!isWonderNews) { - if (WonderCard_Exit(useCancel)) - { - WonderCard_Destroy(); - return TRUE; - } - else - { + if (!(data->validationGiftType1 & GAME_DATA_VALID_GIFT_TYPE_1)) return FALSE; - } - } - else - { - if (WonderNews_Exit(useCancel)) - { - WonderNews_Destroy(); - return TRUE; - } - else - { + + if (!(data->validationGiftType2 & (GAME_DATA_VALID_GIFT_TYPE_2 | 0x180))) return FALSE; - } } + + return TRUE; } -static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews) +u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLinkGameData *data, const void *unused) { - if (!isWonderNews) - return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen); - else - return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_OkayToDiscardNews); + // Has a Wonder Card already? + if (data->flagId == 0) + return HAS_NO_CARD; + + // Has this Wonder Card already? + if (*flagId == data->flagId) + return HAS_SAME_CARD; + + // Player has a different Wonder Card + return HAS_DIFF_CARD; } -static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews) +// This is referenced by the Mystery Gift server, but the instruction it's referenced in is never used, +// so the return values here are never checked by anything. +u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused) { - if (!isWonderNews) - return PrintMysteryGiftMenuMessage(textState, gText_WonderCardThrownAway); - else - return PrintMysteryGiftMenuMessage(textState, gText_WonderNewsThrownAway); + int stampsMissing = data->maxStamps - GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); + + // Has full stamp card? + if (stampsMissing == 0) + return 1; + + // Already has stamp? + if (IsStampInMetadata(&data->cardMetadata, stamp, data->maxStamps)) + return 3; + + // Only 1 empty stamp left? + if (stampsMissing == 1) + return 4; + + // This is a new stamp + return 2; } -static bool32 SaveOnMysteryGiftMenu(u8 * state) +bool32 MysteryGift_DoesQuestionnaireMatch(const struct MysteryGiftLinkGameData *data, const u16 *words) { - switch (*state) + int i; + for (i = 0; i < NUM_QUESTIONNAIRE_WORDS; i++) { - case 0: - AddTextPrinterToWindow1(gText_DataWillBeSaved); - (*state)++; - break; - case 1: - TrySavingData(SAVE_NORMAL); - (*state)++; - break; - case 2: - AddTextPrinterToWindow1(gText_SaveCompletedPressA); - (*state)++; - break; - case 3: - if (JOY_NEW(A_BUTTON | B_BUTTON)) - (*state)++; - break; - case 4: - *state = 0; - ClearTextWindow(); - return TRUE; + if (data->questionnaireWords[i] != words[i]) + return FALSE; } - return FALSE; + return TRUE; } -static const u8 * GetClientResultMessage(bool32 * successMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId) +static int GetNumStampsInLinkData(const struct MysteryGiftLinkGameData *data) { - const u8 * msg = NULL; - *successMsg = FALSE; + return GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); +} - switch (msgId) +u16 MysteryGift_GetCardStatFromLinkData(const struct MysteryGiftLinkGameData *data, u32 stat) +{ + switch (stat) { - case CLI_MSG_NOTHING_SENT: - *successMsg = FALSE; - msg = gText_NothingSentOver; - break; - case CLI_MSG_RECORD_UPLOADED: - *successMsg = FALSE; - msg = gText_RecordUploadedViaWireless; - break; - case CLI_MSG_CARD_RECEIVED: - *successMsg = TRUE; - msg = !sourceIsFriend ? gText_WonderCardReceived : gText_WonderCardReceivedFrom; - break; - case CLI_MSG_NEWS_RECEIVED: - *successMsg = TRUE; - msg = !sourceIsFriend ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom; - break; - case CLI_MSG_STAMP_RECEIVED: - *successMsg = TRUE; - msg = gText_NewStampReceived; - break; - case CLI_MSG_HAD_CARD: - *successMsg = FALSE; - msg = gText_AlreadyHadCard; - break; - case CLI_MSG_HAD_STAMP: - *successMsg = FALSE; - msg = gText_AlreadyHadStamp; - break; - case CLI_MSG_HAD_NEWS: - *successMsg = FALSE; - msg = gText_AlreadyHadNews; - break; - case CLI_MSG_NO_ROOM_STAMPS: - *successMsg = FALSE; - msg = gText_NoMoreRoomForStamps; - break; - case CLI_MSG_COMM_CANCELED: - *successMsg = FALSE; - msg = gText_CommunicationCanceled; - break; - case CLI_MSG_CANT_ACCEPT: - *successMsg = FALSE; - msg = !isWonderNews ? gText_CantAcceptCardFromTrainer : gText_CantAcceptNewsFromTrainer; - break; - case CLI_MSG_COMM_ERROR: - *successMsg = FALSE; - msg = gText_CommunicationError; - break; - case CLI_MSG_TRAINER_RECEIVED: - *successMsg = TRUE; - msg = gText_NewTrainerReceived; - break; - case CLI_MSG_BUFFER_SUCCESS: - *successMsg = TRUE; - // msg is NULL, use buffer - break; - case CLI_MSG_BUFFER_FAILURE: - *successMsg = FALSE; - // msg is NULL, use buffer - break; + case CARD_STAT_BATTLES_WON: + return data->cardMetadata.battlesWon; + case CARD_STAT_BATTLES_LOST: + return data->cardMetadata.battlesLost; + case CARD_STAT_NUM_TRADES: + return data->cardMetadata.numTrades; + case CARD_STAT_NUM_STAMPS: + return GetNumStampsInLinkData(data); + case CARD_STAT_MAX_STAMPS: + return data->maxStamps; + default: + AGB_ASSERT(0); + return 0; } - - return msg; } -static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer) +static void IncrementCardStat(u32 statType) { - switch (*state) + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) { - case 0: - if (msg != NULL) - AddTextPrinterToWindow1(msg); - PlayFanfare(MUS_OBTAIN_ITEM); - *timer = 0; - (*state)++; - break; - case 1: - if (++(*timer) > 240) - (*state)++; - break; - case 2: - if (IsFanfareTaskInactive()) + u16 *stat = NULL; + switch (statType) { - *state = 0; - ClearTextWindow(); - return TRUE; + case CARD_STAT_BATTLES_WON: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesWon; + break; + case CARD_STAT_BATTLES_LOST: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.battlesLost; + break; + case CARD_STAT_NUM_TRADES: + stat = &gSaveBlock1Ptr->mysteryGift.cardMetadata.numTrades; + break; + case CARD_STAT_NUM_STAMPS: // Unused + case CARD_STAT_MAX_STAMPS: // Unused + break; } - break; + + if (stat == NULL) + AGB_ASSERT(0); + else if (++(*stat) > MAX_WONDER_CARD_STAT) + *stat = MAX_WONDER_CARD_STAT; } - return FALSE; } -static const u8 * GetServerResultMessage(bool32 * wonderSuccess, bool8 sourceIsFriend, u32 msgId) +u16 MysteryGift_GetCardStat(u32 stat) { - const u8 * result = gText_CommunicationError; - *wonderSuccess = FALSE; - switch (msgId) + switch (stat) { - case SVR_MSG_NOTHING_SENT: - result = gText_NothingSentOver; - break; - case SVR_MSG_RECORD_UPLOADED: - result = gText_RecordUploadedViaWireless; - break; - case SVR_MSG_CARD_SENT: - result = gText_WonderCardSentTo; - *wonderSuccess = TRUE; - break; - case SVR_MSG_NEWS_SENT: - result = gText_WonderNewsSentTo; - *wonderSuccess = TRUE; - break; - case SVR_MSG_STAMP_SENT: - result = gText_StampSentTo; - break; - case SVR_MSG_HAS_CARD: - result = gText_OtherTrainerHasCard; - break; - case SVR_MSG_HAS_STAMP: - result = gText_OtherTrainerHasStamp; - break; - case SVR_MSG_HAS_NEWS: - result = gText_OtherTrainerHasNews; - break; - case SVR_MSG_NO_ROOM_STAMPS: - result = gText_NoMoreRoomForStamps; - break; - case SVR_MSG_CLIENT_CANCELED: - result = gText_OtherTrainerCanceled; - break; - case SVR_MSG_CANT_SEND_GIFT_1: - result = gText_CantSendGiftToTrainer; + case CARD_STAT_BATTLES_WON: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) + { + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->battlesWon; + } break; - case SVR_MSG_COMM_ERROR: - result = gText_CommunicationError; + } + case CARD_STAT_BATTLES_LOST: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) + { + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->battlesLost; + } break; - case SVR_MSG_GIFT_SENT_1: - result = gText_GiftSentTo; + } + case CARD_STAT_NUM_TRADES: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_LINK_STAT) + { + struct WonderCardMetadata *metadata = &gSaveBlock1Ptr->mysteryGift.cardMetadata; + return metadata->numTrades; + } break; - case SVR_MSG_GIFT_SENT_2: - result = gText_GiftSentTo; + } + case CARD_STAT_NUM_STAMPS: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_STAMP) + return GetNumStampsInSavedCard(); break; - case SVR_MSG_CANT_SEND_GIFT_2: - result = gText_CantSendGiftToTrainer; + } + case CARD_STAT_MAX_STAMPS: + { + struct WonderCard *card = &gSaveBlock1Ptr->mysteryGift.card; + if (card->type == CARD_TYPE_STAMP) + return card->maxStamps; break; } - return result; + } + + AGB_ASSERT(0); + return 0; } -static bool32 PrintServerResultMessage(u8 * state, u16 * timer, bool8 sourceIsFriend, u32 msgId) +void MysteryGift_DisableStats(void) { - bool32 wonderSuccess; - const u8 * str = GetServerResultMessage(&wonderSuccess, sourceIsFriend, msgId); - if (wonderSuccess) - return PrintSuccessMessage(state, str, timer); - else - return PrintMysteryGiftMenuMessage(state, str); + sStatsEnabled = FALSE; } -// States for Task_MysteryGift. -// CLIENT states are for when the player is receiving a gift, and use mevent_client.c link functions. -// SERVER states are for when the player is sending a gift, and use mevent_server.c link functions. -// Other states handle the general Mystery Gift menu usage. -enum { - MG_STATE_TO_MAIN_MENU, - MG_STATE_MAIN_MENU, - MG_STATE_DONT_HAVE_ANY, - MG_STATE_SOURCE_PROMPT, - MG_STATE_SOURCE_PROMPT_INPUT, - MG_STATE_CLIENT_LINK_START, - MG_STATE_CLIENT_LINK_WAIT, - MG_STATE_CLIENT_COMMUNICATING, - MG_STATE_CLIENT_LINK, - MG_STATE_CLIENT_YES_NO, - MG_STATE_CLIENT_MESSAGE, - MG_STATE_CLIENT_ASK_TOSS, - MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED, - MG_STATE_CLIENT_LINK_END, - MG_STATE_CLIENT_COMM_COMPLETED, - MG_STATE_CLIENT_RESULT_MSG, - MG_STATE_CLIENT_ERROR, - MG_STATE_SAVE_LOAD_GIFT, - MG_STATE_LOAD_GIFT, - MG_STATE_UNUSED, - MG_STATE_HANDLE_GIFT_INPUT, - MG_STATE_HANDLE_GIFT_SELECT, - MG_STATE_ASK_TOSS, - MG_STATE_ASK_TOSS_UNRECEIVED, - MG_STATE_TOSS, - MG_STATE_TOSS_SAVE, - MG_STATE_TOSSED, - MG_STATE_GIFT_INPUT_EXIT, - MG_STATE_RECEIVE, - MG_STATE_SEND, - MG_STATE_SERVER_LINK_WAIT, - MG_STATE_SERVER_LINK_START, - MG_STATE_SERVER_LINK, - MG_STATE_SERVER_LINK_END, - MG_STATE_SERVER_LINK_END_WAIT, - MG_STATE_SERVER_RESULT_MSG, - MG_STATE_SERVER_ERROR, - MG_STATE_EXIT, -}; - -static void CreateMysteryGiftTask(void) +bool32 MysteryGift_TryEnableStatsByFlagId(u16 flagId) { - u8 taskId = CreateTask(Task_MysteryGift, 0); - struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data; - data->state = MG_STATE_TO_MAIN_MENU; - data->textState = 0; - data->unused4 = 0; - data->unused5 = 0; - data->isWonderNews = 0; - data->sourceIsFriend = 0; - data->var = 0; - data->unused1 = 0; - data->unused2 = 0; - data->unused3 = 0; - data->msgId = 0; - data->clientMsg = AllocZeroed(CLIENT_MAX_MSG_SIZE); + sStatsEnabled = FALSE; + if (flagId == 0) + return FALSE; + + if (!ValidateSavedWonderCard()) + return FALSE; + + if (gSaveBlock1Ptr->mysteryGift.card.flagId != flagId) + return FALSE; + + sStatsEnabled = TRUE; + return TRUE; } -static void Task_MysteryGift(u8 taskId) +void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId) { - struct MysteryGiftTaskData *data = (void *)gTasks[taskId].data; - u32 successMsg, input; - const u8 *msg; - - switch (data->state) + if (sStatsEnabled) { - case MG_STATE_TO_MAIN_MENU: - data->state = MG_STATE_MAIN_MENU; - break; - case MG_STATE_MAIN_MENU: - // Main Mystery Gift menu, player can select Wonder Cards or News (or exit) - switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, FALSE)) + switch (stat) { - case 0: // "Wonder Cards" - data->isWonderNews = FALSE; - if (ValidateSavedWonderCard() == TRUE) - data->state = MG_STATE_LOAD_GIFT; - else - data->state = MG_STATE_DONT_HAVE_ANY; + case CARD_STAT_NUM_TRADES: + IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[1], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[1])); break; - case 1: // "Wonder News" - data->isWonderNews = TRUE; - if (ValidateSavedWonderNews() == TRUE) - data->state = MG_STATE_LOAD_GIFT; - else - data->state = MG_STATE_DONT_HAVE_ANY; + case CARD_STAT_BATTLES_WON: + IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_WON, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[0], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); break; - case LIST_CANCEL: - data->state = MG_STATE_EXIT; + case CARD_STAT_BATTLES_LOST: + IncrementCardStatForNewTrainer(CARD_STAT_BATTLES_LOST, + trainerId, + gSaveBlock1Ptr->mysteryGift.trainerIds[0], + ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[0])); break; - } - break; - case MG_STATE_DONT_HAVE_ANY: - { - // Player doesn't have any Wonder Card/News - // Start prompt to ask where to read one from - if (!data->isWonderNews) - { - if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveCardNewOneInput)) - { - data->state = MG_STATE_SOURCE_PROMPT; - PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); - } - } - else - { - if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveNewsNewOneInput)) - { - data->state = MG_STATE_SOURCE_PROMPT; - PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); - } - } - break; - } - case MG_STATE_SOURCE_PROMPT: - if (!data->isWonderNews) - AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed); - else - AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed); - data->state = MG_STATE_SOURCE_PROMPT_INPUT; - break; - case MG_STATE_SOURCE_PROMPT_INPUT: - // Choose where to access the Wonder Card/News from - switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, TRUE)) - { - case 0: // "Wireless Communication" - ClearTextWindow(); - data->state = MG_STATE_CLIENT_LINK_START; - data->sourceIsFriend = FALSE; - break; - case 1: // "Friend" - ClearTextWindow(); - data->state = MG_STATE_CLIENT_LINK_START; - data->sourceIsFriend = TRUE; - break; - case LIST_CANCEL: - ClearTextWindow(); - if (ValidateCardOrNews(data->isWonderNews)) - { - data->state = MG_STATE_LOAD_GIFT; - } - else - { - data->state = MG_STATE_TO_MAIN_MENU; - PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); - } + default: + AGB_ASSERT(0); break; } - break; - case MG_STATE_CLIENT_LINK_START: - *gStringVar1 = EOS; - *gStringVar2 = EOS; - *gStringVar3 = EOS; + } +} - switch (data->isWonderNews) - { - case FALSE: - if (data->sourceIsFriend == TRUE) - CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_CARD); - else if (data->sourceIsFriend == FALSE) - CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_CARD); - break; - case TRUE: - if (data->sourceIsFriend == TRUE) - CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_NEWS); - else if (data->sourceIsFriend == FALSE) - CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_NEWS); - break; - } - data->state = MG_STATE_CLIENT_LINK_WAIT; - break; - case MG_STATE_CLIENT_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) - { - ClearScreenInBg0(TRUE); - data->state = MG_STATE_CLIENT_COMMUNICATING; - MysteryGiftClient_Create(data->isWonderNews); - } - else if (gSpecialVar_Result == LINKUP_FAILED) - { - // Link failed, return to link start menu - ClearScreenInBg0(TRUE); - data->state = MG_STATE_SOURCE_PROMPT; - } - break; - case MG_STATE_CLIENT_COMMUNICATING: - AddTextPrinterToWindow1(gText_Communicating); - data->state = MG_STATE_CLIENT_LINK; - break; - case MG_STATE_CLIENT_LINK: - switch (MysteryGiftClient_Run(&data->var)) - { - case CLI_RET_END: - Rfu_SetCloseLinkCallback(); - data->msgId = data->var; - data->state = MG_STATE_CLIENT_LINK_END; - break; - case CLI_RET_COPY_MSG: - memcpy(data->clientMsg, MysteryGiftClient_GetMsg(), 0x40); - MysteryGiftClient_AdvanceState(); - break; - case CLI_RET_PRINT_MSG: - data->state = MG_STATE_CLIENT_MESSAGE; - break; - case CLI_RET_YES_NO: - data->state = MG_STATE_CLIENT_YES_NO; - break; - case CLI_RET_ASK_TOSS: - data->state = MG_STATE_CLIENT_ASK_TOSS; - StringCopy(gStringVar1, gLinkPlayers[0].name); - break; - } - break; - case MG_STATE_CLIENT_YES_NO: - input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, MysteryGiftClient_GetMsg()); - switch (input) - { - case 0: // Yes - MysteryGiftClient_SetParam(FALSE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - break; - case 1: // No - case MENU_B_PRESSED: - MysteryGiftClient_SetParam(TRUE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - break; - } - break; - case MG_STATE_CLIENT_MESSAGE: - if (PrintMysteryGiftMenuMessage(&data->textState, MysteryGiftClient_GetMsg())) - { - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - } - break; - case MG_STATE_CLIENT_ASK_TOSS: - // Player is receiving a new Wonder Card/News but needs to toss an existing one to make room. - // Ask for confirmation. - input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_ThrowAwayWonderCard); - switch (input) - { - case 0: // Yes - if (IsSavedWonderCardGiftNotReceived() == TRUE) - { - data->state = MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED; - } - else - { - MysteryGiftClient_SetParam(FALSE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - } - break; - case 1: // No - case MENU_B_PRESSED: - MysteryGiftClient_SetParam(TRUE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - break; - } - break; - case MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED: - // Player has selected to toss a Wonder Card that they haven't received the gift for. - // Ask for confirmation again. - input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_HaventReceivedCardsGift); - switch (input) - { - case 0: // Yes - MysteryGiftClient_SetParam(FALSE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - break; - case 1: // No - case MENU_B_PRESSED: - MysteryGiftClient_SetParam(TRUE); - MysteryGiftClient_AdvanceState(); - data->state = MG_STATE_CLIENT_COMMUNICATING; - break; - } - break; - case MG_STATE_CLIENT_LINK_END: - if (gReceivedRemoteLinkPlayers == 0) - { - DestroyWirelessStatusIndicatorSprite(); - data->state = MG_STATE_CLIENT_COMM_COMPLETED; - } - break; - case MG_STATE_CLIENT_COMM_COMPLETED: - if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted)) - { - if (data->sourceIsFriend == TRUE) - StringCopy(gStringVar1, gLinkPlayers[0].name); - data->state = MG_STATE_CLIENT_RESULT_MSG; - } - break; - case MG_STATE_CLIENT_RESULT_MSG: - msg = GetClientResultMessage(&successMsg, data->isWonderNews, data->sourceIsFriend, data->msgId); - if (msg == NULL) - msg = data->clientMsg; - if (successMsg) - input = PrintSuccessMessage(&data->textState, msg, &data->var); - else - input = PrintMysteryGiftMenuMessage(&data->textState, msg); - // input var re-used, here it is TRUE if the message is finished - if (input) - { - if (data->msgId == CLI_MSG_NEWS_RECEIVED) - { - if (data->sourceIsFriend == TRUE) - GenerateRandomWonderNews(WONDER_NEWS_RECV_FRIEND); - else - GenerateRandomWonderNews(WONDER_NEWS_RECV_WIRELESS); - } - if (!successMsg) - { - // Did not receive card/news, return to main menu - data->state = MG_STATE_TO_MAIN_MENU; - PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); - } - else - { - data->state = MG_STATE_SAVE_LOAD_GIFT; - } - } - break; - case MG_STATE_SAVE_LOAD_GIFT: - if (SaveOnMysteryGiftMenu(&data->textState)) - data->state = MG_STATE_LOAD_GIFT; - break; - case MG_STATE_LOAD_GIFT: - if (HandleLoadWonderCardOrNews(&data->textState, data->isWonderNews)) - data->state = MG_STATE_HANDLE_GIFT_INPUT; - break; - case MG_STATE_HANDLE_GIFT_INPUT: - if (!data->isWonderNews) - { - // Handle Wonder Card input - if (JOY_NEW(A_BUTTON)) - data->state = MG_STATE_HANDLE_GIFT_SELECT; - if (JOY_NEW(B_BUTTON)) - data->state = MG_STATE_GIFT_INPUT_EXIT; - } - else - { - switch (WonderNews_GetInput(gMain.newKeys)) - { - case NEWS_INPUT_A: - WonderNews_RemoveScrollIndicatorArrowPair(); - data->state = MG_STATE_HANDLE_GIFT_SELECT; - break; - case NEWS_INPUT_B: - data->state = MG_STATE_GIFT_INPUT_EXIT; - break; - } - } - break; - case MG_STATE_HANDLE_GIFT_SELECT: +static void ClearSavedTrainerIds(void) +{ + CpuFill32(0, gSaveBlock1Ptr->mysteryGift.trainerIds, sizeof(gSaveBlock1Ptr->mysteryGift.trainerIds)); +} + +// Returns TRUE if it's a new trainer id, FALSE if an existing one. +// In either case the given trainerId is saved in element 0 +static bool32 RecordTrainerId(u32 trainerId, u32 *trainerIds, int size) +{ + int i, j; + + for (i = 0; i < size; i++) { - // A Wonder Card/News has been selected, handle its menu - u32 result; - if (!data->isWonderNews) - { - if (IsSendingSavedWonderCardAllowed()) - result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); - else - result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); - } - else - { - if (IsSendingSavedWonderNewsAllowed()) - result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); - else - result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); - } - switch (result) - { - case 0: // Receive - data->state = MG_STATE_RECEIVE; - break; - case 1: // Send - data->state = MG_STATE_SEND; - break; - case 2: // Toss - data->state = MG_STATE_ASK_TOSS; + if (trainerIds[i] == trainerId) break; - case LIST_CANCEL: - if (data->isWonderNews == TRUE) - WonderNews_AddScrollIndicatorArrowPair(); - data->state = MG_STATE_HANDLE_GIFT_INPUT; - break; - } - break; } - case MG_STATE_ASK_TOSS: - // Player is attempting to discard a saved Wonder Card/News - switch (AskDiscardGift(&data->textState, &data->var, data->isWonderNews)) - { - case 0: // Yes - if (!data->isWonderNews && IsSavedWonderCardGiftNotReceived() == TRUE) - data->state = MG_STATE_ASK_TOSS_UNRECEIVED; - else - data->state = MG_STATE_TOSS; - break; - case 1: // No - case MENU_B_PRESSED: - data->state = MG_STATE_HANDLE_GIFT_SELECT; - break; - } - break; - case MG_STATE_ASK_TOSS_UNRECEIVED: - // Player has selected to toss a Wonder Card that they haven't received the gift for. - // Ask for confirmation again. - switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->var, TRUE, gText_HaventReceivedGiftOkayToDiscard)) - { - case 0: // Yes - data->state = MG_STATE_TOSS; - break; - case 1: // No - case MENU_B_PRESSED: - data->state = MG_STATE_HANDLE_GIFT_SELECT; - break; - } - break; - case MG_STATE_TOSS: - if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) - { - ClearSavedNewsOrCard(data->isWonderNews); - data->state = MG_STATE_TOSS_SAVE; - } - break; - case MG_STATE_TOSS_SAVE: - if (SaveOnMysteryGiftMenu(&data->textState)) - data->state = MG_STATE_TOSSED; - break; - case MG_STATE_TOSSED: - if (PrintThrownAway(&data->textState, data->isWonderNews)) - { - data->state = MG_STATE_TO_MAIN_MENU; - PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); - } - break; - case MG_STATE_GIFT_INPUT_EXIT: - if (ExitWonderCardOrNews(data->isWonderNews, FALSE)) - data->state = MG_STATE_TO_MAIN_MENU; - break; - case MG_STATE_RECEIVE: - if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) - data->state = MG_STATE_SOURCE_PROMPT; - break; - case MG_STATE_SEND: - if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) - { - switch (data->isWonderNews) - { - case FALSE: - CreateTask_SendMysteryGift(ACTIVITY_WONDER_CARD); - break; - case TRUE: - CreateTask_SendMysteryGift(ACTIVITY_WONDER_NEWS); - break; - } - data->sourceIsFriend = TRUE; - data->state = MG_STATE_SERVER_LINK_WAIT; - } - break; - case MG_STATE_SERVER_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) - { - ClearScreenInBg0(TRUE); - data->state = MG_STATE_SERVER_LINK_START; - } - else if (gSpecialVar_Result == LINKUP_FAILED) - { - ClearScreenInBg0(TRUE); - data->state = MG_STATE_LOAD_GIFT; - } - break; - case MG_STATE_SERVER_LINK_START: - *gStringVar1 = EOS; - *gStringVar2 = EOS; - *gStringVar3 = EOS; - if (!data->isWonderNews) - { - AddTextPrinterToWindow1(gText_SendingWonderCard); - MysterGiftServer_CreateForCard(); - } - else - { - AddTextPrinterToWindow1(gText_SendingWonderNews); - MysterGiftServer_CreateForNews(); - } - data->state = MG_STATE_SERVER_LINK; - break; - case MG_STATE_SERVER_LINK: - if (MysterGiftServer_Run(&data->var) == SVR_RET_END) - { - data->msgId = data->var; - data->state = MG_STATE_SERVER_LINK_END; - } - break; - case MG_STATE_SERVER_LINK_END: - Rfu_SetCloseLinkCallback(); - StringCopy(gStringVar1, gLinkPlayers[1].name); - data->state = MG_STATE_SERVER_LINK_END_WAIT; - break; - case MG_STATE_SERVER_LINK_END_WAIT: - if (gReceivedRemoteLinkPlayers == 0) - { - DestroyWirelessStatusIndicatorSprite(); - data->state = MG_STATE_SERVER_RESULT_MSG; - } - break; - case MG_STATE_SERVER_RESULT_MSG: - if (PrintServerResultMessage(&data->textState, &data->var, data->sourceIsFriend, data->msgId)) - { - if (data->sourceIsFriend == TRUE && data->msgId == SVR_MSG_NEWS_SENT) - { - GenerateRandomWonderNews(WONDER_NEWS_SENT); - data->state = MG_STATE_SAVE_LOAD_GIFT; - } - else - { - data->state = MG_STATE_TO_MAIN_MENU; - PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); - } - } - break; - case MG_STATE_CLIENT_ERROR: - case MG_STATE_SERVER_ERROR: - if (PrintMysteryGiftMenuMessage(&data->textState, gText_CommunicationError)) - { - data->state = MG_STATE_TO_MAIN_MENU; - PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); - } - break; - case MG_STATE_EXIT: - CloseLink(); - Free(data->clientMsg); - DestroyTask(taskId); - SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen); - break; + if (i == size) + { + // New trainer, shift array and insert new id at front + for (j = size - 1; j > 0; j--) + trainerIds[j] = trainerIds[j - 1]; + + trainerIds[0] = trainerId; + return TRUE; } -} + else + { + // Existing trainer, shift back to old slot and move id to front + for (j = i; j > 0; j--) + trainerIds[j] = trainerIds[j - 1]; -u16 GetMysteryGiftBaseBlock(void) -{ - return 0x1A9; + trainerIds[0] = trainerId; + return FALSE; + } } -static void LoadMysteryGiftTextboxBorder(u8 bgId) +static void IncrementCardStatForNewTrainer(u32 stat, u32 trainerId, u32 *trainerIds, int size) { - DecompressAndLoadBgGfxUsingHeap(bgId, sTextboxBorder_Gfx, 0x100, 0, 0); + if (RecordTrainerId(trainerId, trainerIds, size)) + IncrementCardStat(stat); } diff --git a/src/mevent_client.c b/src/mystery_gift_client.c similarity index 94% rename from src/mevent_client.c rename to src/mystery_gift_client.c index e260f073ffd5..adf3ce8a62cd 100644 --- a/src/mevent_client.c +++ b/src/mystery_gift_client.c @@ -4,9 +4,9 @@ #include "overworld.h" #include "script.h" #include "battle_tower.h" -#include "mevent.h" +#include "mystery_gift.h" #include "mystery_event_script.h" -#include "mevent_client.h" +#include "mystery_gift_client.h" enum { FUNC_INIT, @@ -15,8 +15,8 @@ enum { FUNC_SEND, FUNC_RUN, FUNC_WAIT, - FUNC_RUN_GIFT_SCRIPT, - FUNC_RUN_BUFF_SCRIPT, + FUNC_RUN_MEVENT, + FUNC_RUN_BUFFER, }; EWRAM_DATA static struct MysteryGiftClient * sClient = NULL; @@ -222,8 +222,8 @@ static u32 Client_Run(struct MysteryGiftClient * client) MysteryGiftClient_InitSendWord(client, MG_LINKID_RESPONSE, TRUE); } break; - case CLI_RUN_GIFT_SCRIPT: - client->funcId = FUNC_RUN_GIFT_SCRIPT; + case CLI_RUN_MEVENT_SCRIPT: + client->funcId = FUNC_RUN_MEVENT; client->funcState = 0; break; case CLI_SAVE_STAMP: @@ -238,7 +238,7 @@ static u32 Client_Run(struct MysteryGiftClient * client) break; case CLI_RUN_BUFFER_SCRIPT: memcpy(gDecompressionBuffer, client->recvBuffer, MG_LINK_BUFFER_SIZE); - client->funcId = FUNC_RUN_BUFF_SCRIPT; + client->funcId = FUNC_RUN_BUFFER; client->funcState = 0; break; } @@ -256,16 +256,16 @@ static u32 Client_Wait(struct MysteryGiftClient * client) return CLI_RET_ACTIVE; } -static u32 Client_RunGiftScript(struct MysteryGiftClient * client) +static u32 Client_RunMysteryEventScript(struct MysteryGiftClient * client) { switch (client->funcState) { case 0: - InitMysteryGiftScriptContext(client->recvBuffer); + InitMysteryEventScriptContext(client->recvBuffer); client->funcState++; break; case 1: - if (!RunMysteryGiftScriptContextCommand(&client->param)) + if (!RunMysteryEventScriptContextCommand(&client->param)) { client->funcId = FUNC_RUN; client->funcState = 0; @@ -296,8 +296,8 @@ static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient * client) [FUNC_SEND] = Client_Send, [FUNC_RUN] = Client_Run, [FUNC_WAIT] = Client_Wait, - [FUNC_RUN_GIFT_SCRIPT] = Client_RunGiftScript, - [FUNC_RUN_BUFF_SCRIPT] = Client_RunBufferScript + [FUNC_RUN_MEVENT] = Client_RunMysteryEventScript, + [FUNC_RUN_BUFFER] = Client_RunBufferScript }; return funcs[client->funcId](client); } diff --git a/src/mevent_server_helpers.c b/src/mystery_gift_link.c similarity index 99% rename from src/mevent_server_helpers.c rename to src/mystery_gift_link.c index c1fe88368895..55f4b78527c0 100644 --- a/src/mevent_server_helpers.c +++ b/src/mystery_gift_link.c @@ -8,8 +8,8 @@ #include "script.h" #include "battle_tower.h" #include "mystery_event_script.h" -#include "mevent.h" -#include "mevent_server_helpers.h" +#include "mystery_gift.h" +#include "mystery_gift_link.h" /* Handles the link connection functions used by the Mystery Gift client/server. diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c new file mode 100644 index 000000000000..e1236adfd3a3 --- /dev/null +++ b/src/mystery_gift_menu.c @@ -0,0 +1,1618 @@ +#include "global.h" +#include "main.h" +#include "text.h" +#include "task.h" +#include "malloc.h" +#include "gpu_regs.h" +#include "scanline_effect.h" +#include "text_window.h" +#include "bg.h" +#include "window.h" +#include "strings.h" +#include "text_window.h" +#include "menu.h" +#include "palette.h" +#include "constants/songs.h" +#include "sound.h" +#include "mystery_gift_menu.h" +#include "union_room.h" +#include "title_screen.h" +#include "ereader_screen.h" +#include "international_string_util.h" +#include "list_menu.h" +#include "string_util.h" +#include "mystery_gift.h" +#include "mystery_gift_view.h" +#include "save.h" +#include "link.h" +#include "mystery_gift_client.h" +#include "mystery_gift_server.h" +#include "event_data.h" +#include "link_rfu.h" +#include "wonder_news.h" +#include "constants/cable_club.h" + +#define LIST_MENU_TILE_NUM 10 +#define LIST_MENU_PAL_NUM 224 + +static void LoadMysteryGiftTextboxBorder(u8 bgId); +static void CreateMysteryGiftTask(void); +static void Task_MysteryGift(u8 taskId); + +EWRAM_DATA static u8 sDownArrowCounterAndYCoordIdx[8] = {}; +EWRAM_DATA bool8 gGiftIsFromEReader = FALSE; + +static const u16 sTextboxBorder_Pal[] = INCBIN_U16("graphics/interface/mystery_gift_textbox_border.gbapal"); +static const u32 sTextboxBorder_Gfx[] = INCBIN_U32("graphics/interface/mystery_gift_textbox_border.4bpp.lz"); + +struct MysteryGiftTaskData +{ + u16 var; // Multipurpose + u16 unused1; + u16 unused2; + u16 unused3; + u8 state; + u8 textState; + u8 unused4; + u8 unused5; + bool8 isWonderNews; + bool8 sourceIsFriend; + u8 msgId; + u8 * clientMsg; +}; + +static const struct BgTemplate sBGTemplates[] = { + { + .bg = 0, + .charBaseIndex = 2, + .mapBaseIndex = 15, + .screenSize = 0, + .paletteMode = 0, + .priority = 0, + .baseTile = 0x000 + }, { + .bg = 1, + .charBaseIndex = 0, + .mapBaseIndex = 14, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0x000 + }, { + .bg = 2, + .charBaseIndex = 0, + .mapBaseIndex = 13, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0x000 + }, { + .bg = 3, + .charBaseIndex = 0, + .mapBaseIndex = 12, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0x000 + } +}; + +static const struct WindowTemplate sMainWindows[] = { + { + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 30, + .height = 2, + .paletteNum = 12, + .baseBlock = 0x0013 + }, { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x004f + }, { + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 15, + .width = 30, + .height = 5, + .paletteNum = 13, + .baseBlock = 0x004f + }, + DUMMY_WIN_TEMPLATE +}; + +static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x00e5 +}; + +static const struct WindowTemplate sWindowTemplate_YesNoMsg = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 20, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x00e5 +}; + +static const struct WindowTemplate sWindowTemplate_GiftSelect = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 19, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x00e5 +}; + +static const struct WindowTemplate sWindowTemplate_ThreeOptions = { + .bg = 0, + .tilemapLeft = 8, + .tilemapTop = 6, + .width = 14, + .height = 6, + .paletteNum = 12, + .baseBlock = 0x0155 +}; + +static const struct WindowTemplate sWindowTemplate_YesNoBox = { + .bg = 0, + .tilemapLeft = 23, + .tilemapTop = 15, + .width = 6, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x0155 +}; + +static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 11, + .width = 7, + .height = 8, + .paletteNum = 12, + .baseBlock = 0x0155 +}; + +static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 13, + .width = 7, + .height = 6, + .paletteNum = 12, + .baseBlock = 0x0155 +}; + +static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 15, + .width = 7, + .height = 4, + .paletteNum = 12, + .baseBlock = 0x0155 +}; + +static const struct ListMenuItem sListMenuItems_CardsOrNews[] = { + { gText_WonderCards, 0 }, + { gText_WonderNews, 1 }, + { gText_Exit3, LIST_CANCEL } +}; + +static const struct ListMenuItem sListMenuItems_WirelessOrFriend[] = { + { gText_WirelessCommunication, 0 }, + { gText_Friend2, 1 }, + { gText_Cancel2, LIST_CANCEL } +}; + +static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = { + .items = NULL, + .moveCursorFunc = ListMenuDefaultCursorMoveFunc, + .itemPrintFunc = NULL, + .totalItems = 3, + .maxShowed = 3, + .windowId = 0, + .header_X = 0, + .item_X = 8, + .cursor_X = 0, + .upText_Y = 1, + .cursorPal = 2, + .fillValue = 1, + .cursorShadowPal = 3, + .lettersSpacing = 0, + .itemVerticalPadding = 0, + .scrollMultiple = 0, + .fontId = 1, + .cursorKind = 0 +}; + +static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = { + { gText_Receive, 0 }, + { gText_Send, 1 }, + { gText_Toss, 2 }, + { gText_Cancel2, LIST_CANCEL } +}; + +static const struct ListMenuItem sListMenuItems_ReceiveToss[] = { + { gText_Receive, 0 }, + { gText_Toss, 2 }, + { gText_Cancel2, LIST_CANCEL } +}; + +static const struct ListMenuItem sListMenuItems_ReceiveSend[] = { + { gText_Receive, 0 }, + { gText_Send, 1 }, + { gText_Cancel2, LIST_CANCEL } +}; + +static const struct ListMenuItem sListMenuItems_Receive[] = { + { gText_Receive, 0 }, + { gText_Cancel2, LIST_CANCEL } +}; + +static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { + .items = sListMenuItems_ReceiveSendToss, + .moveCursorFunc = ListMenuDefaultCursorMoveFunc, + .itemPrintFunc = NULL, + .totalItems = 4, + .maxShowed = 4, + .windowId = 0, + .header_X = 0, + .item_X = 8, + .cursor_X = 0, + .upText_Y = 1, + .cursorPal = 2, + .fillValue = 1, + .cursorShadowPal = 3, + .lettersSpacing = 0, + .itemVerticalPadding = 0, + .scrollMultiple = 0, + .fontId = 1, + .cursorKind = 0 +}; + +static const struct ListMenuTemplate sListMenu_ReceiveToss = { + .items = sListMenuItems_ReceiveToss, + .moveCursorFunc = ListMenuDefaultCursorMoveFunc, + .itemPrintFunc = NULL, + .totalItems = 3, + .maxShowed = 3, + .windowId = 0, + .header_X = 0, + .item_X = 8, + .cursor_X = 0, + .upText_Y = 1, + .cursorPal = 2, + .fillValue = 1, + .cursorShadowPal = 3, + .lettersSpacing = 0, + .itemVerticalPadding = 0, + .scrollMultiple = 0, + .fontId = 1, + .cursorKind = 0 +}; + +static const struct ListMenuTemplate sListMenu_ReceiveSend = { + .items = sListMenuItems_ReceiveSend, + .moveCursorFunc = ListMenuDefaultCursorMoveFunc, + .itemPrintFunc = NULL, + .totalItems = 3, + .maxShowed = 3, + .windowId = 0, + .header_X = 0, + .item_X = 8, + .cursor_X = 0, + .upText_Y = 1, + .cursorPal = 2, + .fillValue = 1, + .cursorShadowPal = 3, + .lettersSpacing = 0, + .itemVerticalPadding = 0, + .scrollMultiple = 0, + .fontId = 1, + .cursorKind = 0 +}; + +static const struct ListMenuTemplate sListMenu_Receive = { + .items = sListMenuItems_Receive, + .moveCursorFunc = ListMenuDefaultCursorMoveFunc, + .itemPrintFunc = NULL, + .totalItems = 2, + .maxShowed = 2, + .windowId = 0, + .header_X = 0, + .item_X = 8, + .cursor_X = 0, + .upText_Y = 1, + .cursorPal = 2, + .fillValue = 1, + .cursorShadowPal = 3, + .lettersSpacing = 0, + .itemVerticalPadding = 0, + .scrollMultiple = 0, + .fontId = 1, + .cursorKind = 0 +}; + +static const u8 *const Unref_082F0710[] = { + gText_VarietyOfEventsImportedWireless, + gText_WonderCardsInPossession, + gText_ReadNewsThatArrived, + gText_ReturnToTitle +}; + +ALIGNED(2) static const u8 sTextColors_TopMenu[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; +ALIGNED(2) static const u8 sTextColors_TopMenu_Copy[] = { TEXT_COLOR_TRANSPARENT, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; +ALIGNED(2) static const u8 sMG_Ereader_TextColor_2[] = { TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY }; + +static void VBlankCB_MysteryGiftEReader(void) +{ + ProcessSpriteCopyRequests(); + LoadOam(); + TransferPlttBuffer(); +} + +void CB2_MysteryGiftEReader(void) +{ + RunTasks(); + RunTextPrinters(); + AnimateSprites(); + BuildOamBuffer(); +} + +static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + ResetPaletteFade(); + ResetSpriteData(); + FreeAllSpritePalettes(); + ResetTasks(); + ScanlineEffect_Stop(); + ResetBgsAndClearDma3BusyFlags(0); + + InitBgsFromTemplates(0, sBGTemplates, ARRAY_COUNT(sBGTemplates)); + ChangeBgX(0, 0, 0); + ChangeBgY(0, 0, 0); + ChangeBgX(1, 0, 0); + ChangeBgY(1, 0, 0); + ChangeBgX(2, 0, 0); + ChangeBgY(2, 0, 0); + ChangeBgX(3, 0, 0); + ChangeBgY(3, 0, 0); + + SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(2, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); + SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); + + LoadMysteryGiftTextboxBorder(3); + InitWindows(sMainWindows); + DeactivateAllTextPrinters(); + ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); + SetGpuReg(REG_OFFSET_BLDCNT, 0); + SetGpuReg(REG_OFFSET_BLDALPHA, 0); + SetGpuReg(REG_OFFSET_BLDY, 0); + gMain.state++; + break; + case 1: + LoadPalette(sTextboxBorder_Pal, 0, 0x20); + LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20); + Menu_LoadStdPalAt(0xC0); + LoadUserWindowBorderGfx(0, 0xA, 0xE0); + LoadUserWindowBorderGfx_(0, 0x1, 0xF0); + FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); + MG_DrawCheckerboardPattern(3); + PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE); + gMain.state++; + break; + case 2: + CopyBgTilemapBufferToVram(3); + CopyBgTilemapBufferToVram(2); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(0); + gMain.state++; + break; + case 3: + ShowBg(0); + ShowBg(3); + PlayBGM(MUS_RG_MYSTERY_GIFT); + SetVBlankCallback(VBlankCB_MysteryGiftEReader); + EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); + return TRUE; + } + + return FALSE; +} + +void CB2_InitMysteryGift(void) +{ + if (HandleMysteryGiftOrEReaderSetup(FALSE)) + { + SetMainCallback2(CB2_MysteryGiftEReader); + gGiftIsFromEReader = FALSE; + CreateMysteryGiftTask(); + } + RunTasks(); +} + +void CB2_InitEReader(void) +{ + if (HandleMysteryGiftOrEReaderSetup(TRUE)) + { + SetMainCallback2(CB2_MysteryGiftEReader); + gGiftIsFromEReader = TRUE; + CreateEReaderTask(); + } +} + +void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void) +{ + gGiftIsFromEReader = FALSE; + FreeAllWindowBuffers(); + Free(GetBgTilemapBuffer(0)); + Free(GetBgTilemapBuffer(1)); + Free(GetBgTilemapBuffer(2)); + Free(GetBgTilemapBuffer(3)); + SetMainCallback2(CB2_InitTitleScreen); +} + +void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) +{ + const u8 * header; + const u8 * options; + FillWindowPixelBuffer(0, 0); + if (!isEReader) + { + header = gText_MysteryGift; + options = !useCancel ? gText_PickOKExit : gText_PickOKCancel; + } + else + { + header = gJPText_MysteryGift; + options = gJPText_DecideStop; + } + + AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); + AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); + CopyWindowToVram(0, 2); + PutWindowTilemap(0); +} + +void MG_DrawTextBorder(u8 windowId) +{ + DrawTextBorderOuter(windowId, 0x01, 0xF); +} + +void MG_DrawCheckerboardPattern(u32 bg) +{ + s32 i = 0, j; + + FillBgTilemapBufferRect(bg, 0x003, 0, 0, 32, 2, 0x11); + + for (i = 0; i < 18; i++) + { + for (j = 0; j < 32; j++) + { + if ((i & 1) != (j & 1)) + FillBgTilemapBufferRect(bg, 1, j, i + 2, 1, 1, 0x11); + else + FillBgTilemapBufferRect(bg, 2, j, i + 2, 1, 1, 0x11); + } + } +} + +static void ClearScreenInBg0(bool32 ignoreTopTwoRows) +{ + switch (ignoreTopTwoRows) + { + case 0: + FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11); + break; + case 1: + FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 0x11); + break; + } + CopyBgTilemapBufferToVram(0); +} + +void AddTextPrinterToWindow1(const u8 *str) +{ + StringExpandPlaceholders(gStringVar4, str); + FillWindowPixelBuffer(1, 0x11); + AddTextPrinterParameterized4(1, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + DrawTextBorderOuter(1, 0x001, 0xF); + PutWindowTilemap(1); + CopyWindowToVram(1, 3); +} + +static void ClearTextWindow(void) +{ + rbox_fill_rectangle(1); + ClearWindowTilemap(1); + CopyWindowToVram(1, 1); +} + +#define DOWN_ARROW_X 208 +#define DOWN_ARROW_Y 20 + +bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str) +{ + switch (*textState) + { + case 0: + AddTextPrinterToWindow1(str); + (*textState)++; + break; + case 1: + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + if (({JOY_NEW(A_BUTTON | B_BUTTON);})) + (*textState)++; + break; + case 2: + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); + *textState = 0; + ClearTextWindow(); + return TRUE; + case 0xFF: + *textState = 2; + return FALSE; + } + return FALSE; +} + +static void HideDownArrow(void) +{ + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); +} + +static void ShowDownArrow(void) +{ + DrawDownArrow(1, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]); +} + +// Unused +static bool32 HideDownArrowAndWaitButton(u8 * textState) +{ + switch (*textState) + { + case 0: + HideDownArrow(); + if (JOY_NEW(A_BUTTON | B_BUTTON)) + (*textState)++; + break; + case 1: + ShowDownArrow(); + *textState = 0; + return TRUE; + } + return FALSE; +} + +static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str) +{ + if (*counter == 0) + AddTextPrinterToWindow1(str); + + if (++(*counter) > 120) + { + *counter = 0; + ClearTextWindow(); + return TRUE; + } + else + { + return FALSE; + } +} + +static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whichMenu) +{ + struct ListMenuTemplate listMenuTemplate = sListMenuTemplate_ThreeOptions; + struct WindowTemplate windowTemplate = sWindowTemplate_ThreeOptions; + s32 width; + s32 response; + + if (whichMenu == 0) + listMenuTemplate.items = sListMenuItems_CardsOrNews; + else + listMenuTemplate.items = sListMenuItems_WirelessOrFriend; + + width = Intl_GetListMenuWidth(&listMenuTemplate); + if (width & 1) + width++; + + windowTemplate.width = width; + if (width < 30) + windowTemplate.tilemapLeft = (30 - width) / 2; + else + windowTemplate.tilemapLeft = 0; + + response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); + if (response != LIST_NOTHING_CHOSEN) + { + ClearWindowTilemap(2); + CopyWindowToVram(2, 1); + } + return response; +} + +s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, const u8 * str) +{ + struct WindowTemplate windowTemplate; + s8 input; + + switch (*textState) + { + case 0: + // Print question message + StringExpandPlaceholders(gStringVar4, str); + if (yesNoBoxPlacement == 0) + *windowId = AddWindow(&sWindowTemplate_YesNoMsg_Wide); + else + *windowId = AddWindow(&sWindowTemplate_YesNoMsg); + FillWindowPixelBuffer(*windowId, 0x11); + AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + DrawTextBorderOuter(*windowId, 0x001, 0x0F); + CopyWindowToVram(*windowId, 2); + PutWindowTilemap(*windowId); + (*textState)++; + break; + case 1: + // Create Yes/No + windowTemplate = sWindowTemplate_YesNoBox; + if (yesNoBoxPlacement == 0) + windowTemplate.tilemapTop = 9; + else + windowTemplate.tilemapTop = 15; + CreateYesNoMenu(&windowTemplate, 10, 14, 0); + (*textState)++; + break; + case 2: + // Handle Yes/No input + input = Menu_ProcessInputNoWrapClearOnChoose(); + if (input == MENU_B_PRESSED || input == 0 || input == 1) + { + *textState = 0; + rbox_fill_rectangle(*windowId); + ClearWindowTilemap(*windowId); + CopyWindowToVram(*windowId, 1); + RemoveWindow(*windowId); + return input; + } + break; + case 0xFF: + *textState = 0; + rbox_fill_rectangle(*windowId); + ClearWindowTilemap(*windowId); + CopyWindowToVram(*windowId, 1); + RemoveWindow(*windowId); + return MENU_B_PRESSED; + } + + return MENU_NOTHING_CHOSEN; +} + +// Handle the "Receive/Send/Toss" menu that appears when selecting Wonder Card/News +static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend) +{ + struct WindowTemplate windowTemplate; + s32 input; + + switch (*textState) + { + case 0: + // Print menu message + if (!cannotToss) + StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithCards); + else + StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews); + *windowId = AddWindow(&sWindowTemplate_GiftSelect); + FillWindowPixelBuffer(*windowId, 0x11); + AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + DrawTextBorderOuter(*windowId, 0x001, 0x0F); + CopyWindowToVram(*windowId, 2); + PutWindowTilemap(*windowId); + (*textState)++; + break; + case 1: + windowTemplate = sWindowTemplate_YesNoBox; + if (cannotSend) + { + if (!cannotToss) + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); + else + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); + } + else + { + if (!cannotToss) + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); + else + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, LIST_MENU_TILE_NUM, LIST_MENU_PAL_NUM); + } + if (input != LIST_NOTHING_CHOSEN) + { + *textState = 0; + rbox_fill_rectangle(*windowId); + ClearWindowTilemap(*windowId); + CopyWindowToVram(*windowId, 1); + RemoveWindow(*windowId); + return input; + } + break; + case 0xFF: + *textState = 0; + rbox_fill_rectangle(*windowId); + ClearWindowTilemap(*windowId); + CopyWindowToVram(*windowId, 1); + RemoveWindow(*windowId); + return LIST_CANCEL; + } + + return LIST_NOTHING_CHOSEN; +} + +static bool32 ValidateCardOrNews(bool32 isWonderNews) +{ + if (!isWonderNews) + return ValidateSavedWonderCard(); + else + return ValidateSavedWonderNews(); +} + +static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews) +{ + switch (*state) + { + case 0: + if (!isWonderNews) + WonderCard_Init(GetSavedWonderCard(), GetSavedWonderCardMetadata()); + else + WonderNews_Init(GetSavedWonderNews()); + (*state)++; + break; + case 1: + if (!isWonderNews) + { + if (!WonderCard_Enter()) + return FALSE; + } + else + { + if (!WonderNews_Enter()) + return FALSE; + } + *state = 0; + return TRUE; + } + + return FALSE; +} + +static bool32 ClearSavedNewsOrCard(bool32 isWonderNews) +{ + if (!isWonderNews) + ClearSavedWonderCardAndRelated(); + else + ClearSavedWonderNewsAndRelated(); + return TRUE; +} + +static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 useCancel) +{ + if (!isWonderNews) + { + if (WonderCard_Exit(useCancel)) + { + WonderCard_Destroy(); + return TRUE; + } + else + { + return FALSE; + } + } + else + { + if (WonderNews_Exit(useCancel)) + { + WonderNews_Destroy(); + return TRUE; + } + else + { + return FALSE; + } + } +} + +static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews) +{ + if (!isWonderNews) + return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen); + else + return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_OkayToDiscardNews); +} + +static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews) +{ + if (!isWonderNews) + return PrintMysteryGiftMenuMessage(textState, gText_WonderCardThrownAway); + else + return PrintMysteryGiftMenuMessage(textState, gText_WonderNewsThrownAway); +} + +static bool32 SaveOnMysteryGiftMenu(u8 * state) +{ + switch (*state) + { + case 0: + AddTextPrinterToWindow1(gText_DataWillBeSaved); + (*state)++; + break; + case 1: + TrySavingData(SAVE_NORMAL); + (*state)++; + break; + case 2: + AddTextPrinterToWindow1(gText_SaveCompletedPressA); + (*state)++; + break; + case 3: + if (JOY_NEW(A_BUTTON | B_BUTTON)) + (*state)++; + break; + case 4: + *state = 0; + ClearTextWindow(); + return TRUE; + } + + return FALSE; +} + +static const u8 * GetClientResultMessage(bool32 * successMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId) +{ + const u8 * msg = NULL; + *successMsg = FALSE; + + switch (msgId) + { + case CLI_MSG_NOTHING_SENT: + *successMsg = FALSE; + msg = gText_NothingSentOver; + break; + case CLI_MSG_RECORD_UPLOADED: + *successMsg = FALSE; + msg = gText_RecordUploadedViaWireless; + break; + case CLI_MSG_CARD_RECEIVED: + *successMsg = TRUE; + msg = !sourceIsFriend ? gText_WonderCardReceived : gText_WonderCardReceivedFrom; + break; + case CLI_MSG_NEWS_RECEIVED: + *successMsg = TRUE; + msg = !sourceIsFriend ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom; + break; + case CLI_MSG_STAMP_RECEIVED: + *successMsg = TRUE; + msg = gText_NewStampReceived; + break; + case CLI_MSG_HAD_CARD: + *successMsg = FALSE; + msg = gText_AlreadyHadCard; + break; + case CLI_MSG_HAD_STAMP: + *successMsg = FALSE; + msg = gText_AlreadyHadStamp; + break; + case CLI_MSG_HAD_NEWS: + *successMsg = FALSE; + msg = gText_AlreadyHadNews; + break; + case CLI_MSG_NO_ROOM_STAMPS: + *successMsg = FALSE; + msg = gText_NoMoreRoomForStamps; + break; + case CLI_MSG_COMM_CANCELED: + *successMsg = FALSE; + msg = gText_CommunicationCanceled; + break; + case CLI_MSG_CANT_ACCEPT: + *successMsg = FALSE; + msg = !isWonderNews ? gText_CantAcceptCardFromTrainer : gText_CantAcceptNewsFromTrainer; + break; + case CLI_MSG_COMM_ERROR: + *successMsg = FALSE; + msg = gText_CommunicationError; + break; + case CLI_MSG_TRAINER_RECEIVED: + *successMsg = TRUE; + msg = gText_NewTrainerReceived; + break; + case CLI_MSG_BUFFER_SUCCESS: + *successMsg = TRUE; + // msg is NULL, use buffer + break; + case CLI_MSG_BUFFER_FAILURE: + *successMsg = FALSE; + // msg is NULL, use buffer + break; + } + + return msg; +} + +static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer) +{ + switch (*state) + { + case 0: + if (msg != NULL) + AddTextPrinterToWindow1(msg); + PlayFanfare(MUS_OBTAIN_ITEM); + *timer = 0; + (*state)++; + break; + case 1: + if (++(*timer) > 240) + (*state)++; + break; + case 2: + if (IsFanfareTaskInactive()) + { + *state = 0; + ClearTextWindow(); + return TRUE; + } + break; + } + return FALSE; +} + +static const u8 * GetServerResultMessage(bool32 * wonderSuccess, bool8 sourceIsFriend, u32 msgId) +{ + const u8 * result = gText_CommunicationError; + *wonderSuccess = FALSE; + switch (msgId) + { + case SVR_MSG_NOTHING_SENT: + result = gText_NothingSentOver; + break; + case SVR_MSG_RECORD_UPLOADED: + result = gText_RecordUploadedViaWireless; + break; + case SVR_MSG_CARD_SENT: + result = gText_WonderCardSentTo; + *wonderSuccess = TRUE; + break; + case SVR_MSG_NEWS_SENT: + result = gText_WonderNewsSentTo; + *wonderSuccess = TRUE; + break; + case SVR_MSG_STAMP_SENT: + result = gText_StampSentTo; + break; + case SVR_MSG_HAS_CARD: + result = gText_OtherTrainerHasCard; + break; + case SVR_MSG_HAS_STAMP: + result = gText_OtherTrainerHasStamp; + break; + case SVR_MSG_HAS_NEWS: + result = gText_OtherTrainerHasNews; + break; + case SVR_MSG_NO_ROOM_STAMPS: + result = gText_NoMoreRoomForStamps; + break; + case SVR_MSG_CLIENT_CANCELED: + result = gText_OtherTrainerCanceled; + break; + case SVR_MSG_CANT_SEND_GIFT_1: + result = gText_CantSendGiftToTrainer; + break; + case SVR_MSG_COMM_ERROR: + result = gText_CommunicationError; + break; + case SVR_MSG_GIFT_SENT_1: + result = gText_GiftSentTo; + break; + case SVR_MSG_GIFT_SENT_2: + result = gText_GiftSentTo; + break; + case SVR_MSG_CANT_SEND_GIFT_2: + result = gText_CantSendGiftToTrainer; + break; + } + return result; +} + +static bool32 PrintServerResultMessage(u8 * state, u16 * timer, bool8 sourceIsFriend, u32 msgId) +{ + bool32 wonderSuccess; + const u8 * str = GetServerResultMessage(&wonderSuccess, sourceIsFriend, msgId); + if (wonderSuccess) + return PrintSuccessMessage(state, str, timer); + else + return PrintMysteryGiftMenuMessage(state, str); +} + +// States for Task_MysteryGift. +// CLIENT states are for when the player is receiving a gift, and use mystery_gift_client.c link functions. +// SERVER states are for when the player is sending a gift, and use mystery_gift_server.c link functions. +// Other states handle the general Mystery Gift menu usage. +enum { + MG_STATE_TO_MAIN_MENU, + MG_STATE_MAIN_MENU, + MG_STATE_DONT_HAVE_ANY, + MG_STATE_SOURCE_PROMPT, + MG_STATE_SOURCE_PROMPT_INPUT, + MG_STATE_CLIENT_LINK_START, + MG_STATE_CLIENT_LINK_WAIT, + MG_STATE_CLIENT_COMMUNICATING, + MG_STATE_CLIENT_LINK, + MG_STATE_CLIENT_YES_NO, + MG_STATE_CLIENT_MESSAGE, + MG_STATE_CLIENT_ASK_TOSS, + MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED, + MG_STATE_CLIENT_LINK_END, + MG_STATE_CLIENT_COMM_COMPLETED, + MG_STATE_CLIENT_RESULT_MSG, + MG_STATE_CLIENT_ERROR, + MG_STATE_SAVE_LOAD_GIFT, + MG_STATE_LOAD_GIFT, + MG_STATE_UNUSED, + MG_STATE_HANDLE_GIFT_INPUT, + MG_STATE_HANDLE_GIFT_SELECT, + MG_STATE_ASK_TOSS, + MG_STATE_ASK_TOSS_UNRECEIVED, + MG_STATE_TOSS, + MG_STATE_TOSS_SAVE, + MG_STATE_TOSSED, + MG_STATE_GIFT_INPUT_EXIT, + MG_STATE_RECEIVE, + MG_STATE_SEND, + MG_STATE_SERVER_LINK_WAIT, + MG_STATE_SERVER_LINK_START, + MG_STATE_SERVER_LINK, + MG_STATE_SERVER_LINK_END, + MG_STATE_SERVER_LINK_END_WAIT, + MG_STATE_SERVER_RESULT_MSG, + MG_STATE_SERVER_ERROR, + MG_STATE_EXIT, +}; + +static void CreateMysteryGiftTask(void) +{ + u8 taskId = CreateTask(Task_MysteryGift, 0); + struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data; + data->state = MG_STATE_TO_MAIN_MENU; + data->textState = 0; + data->unused4 = 0; + data->unused5 = 0; + data->isWonderNews = 0; + data->sourceIsFriend = 0; + data->var = 0; + data->unused1 = 0; + data->unused2 = 0; + data->unused3 = 0; + data->msgId = 0; + data->clientMsg = AllocZeroed(CLIENT_MAX_MSG_SIZE); +} + +static void Task_MysteryGift(u8 taskId) +{ + struct MysteryGiftTaskData *data = (void *)gTasks[taskId].data; + u32 successMsg, input; + const u8 *msg; + + switch (data->state) + { + case MG_STATE_TO_MAIN_MENU: + data->state = MG_STATE_MAIN_MENU; + break; + case MG_STATE_MAIN_MENU: + // Main Mystery Gift menu, player can select Wonder Cards or News (or exit) + switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, FALSE)) + { + case 0: // "Wonder Cards" + data->isWonderNews = FALSE; + if (ValidateSavedWonderCard() == TRUE) + data->state = MG_STATE_LOAD_GIFT; + else + data->state = MG_STATE_DONT_HAVE_ANY; + break; + case 1: // "Wonder News" + data->isWonderNews = TRUE; + if (ValidateSavedWonderNews() == TRUE) + data->state = MG_STATE_LOAD_GIFT; + else + data->state = MG_STATE_DONT_HAVE_ANY; + break; + case LIST_CANCEL: + data->state = MG_STATE_EXIT; + break; + } + break; + case MG_STATE_DONT_HAVE_ANY: + { + // Player doesn't have any Wonder Card/News + // Start prompt to ask where to read one from + if (!data->isWonderNews) + { + if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveCardNewOneInput)) + { + data->state = MG_STATE_SOURCE_PROMPT; + PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); + } + } + else + { + if (PrintMysteryGiftMenuMessage(&data->textState, gText_DontHaveNewsNewOneInput)) + { + data->state = MG_STATE_SOURCE_PROMPT; + PrintMysteryGiftOrEReaderTopMenu(FALSE, TRUE); + } + } + break; + } + case MG_STATE_SOURCE_PROMPT: + if (!data->isWonderNews) + AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed); + else + AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed); + data->state = MG_STATE_SOURCE_PROMPT_INPUT; + break; + case MG_STATE_SOURCE_PROMPT_INPUT: + // Choose where to access the Wonder Card/News from + switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->var, TRUE)) + { + case 0: // "Wireless Communication" + ClearTextWindow(); + data->state = MG_STATE_CLIENT_LINK_START; + data->sourceIsFriend = FALSE; + break; + case 1: // "Friend" + ClearTextWindow(); + data->state = MG_STATE_CLIENT_LINK_START; + data->sourceIsFriend = TRUE; + break; + case LIST_CANCEL: + ClearTextWindow(); + if (ValidateCardOrNews(data->isWonderNews)) + { + data->state = MG_STATE_LOAD_GIFT; + } + else + { + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); + } + break; + } + break; + case MG_STATE_CLIENT_LINK_START: + *gStringVar1 = EOS; + *gStringVar2 = EOS; + *gStringVar3 = EOS; + + switch (data->isWonderNews) + { + case FALSE: + if (data->sourceIsFriend == TRUE) + CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_CARD); + else if (data->sourceIsFriend == FALSE) + CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_CARD); + break; + case TRUE: + if (data->sourceIsFriend == TRUE) + CreateTask_LinkMysteryGiftWithFriend(ACTIVITY_WONDER_NEWS); + else if (data->sourceIsFriend == FALSE) + CreateTask_LinkMysteryGiftOverWireless(ACTIVITY_WONDER_NEWS); + break; + } + data->state = MG_STATE_CLIENT_LINK_WAIT; + break; + case MG_STATE_CLIENT_LINK_WAIT: + if (gReceivedRemoteLinkPlayers != 0) + { + ClearScreenInBg0(TRUE); + data->state = MG_STATE_CLIENT_COMMUNICATING; + MysteryGiftClient_Create(data->isWonderNews); + } + else if (gSpecialVar_Result == LINKUP_FAILED) + { + // Link failed, return to link start menu + ClearScreenInBg0(TRUE); + data->state = MG_STATE_SOURCE_PROMPT; + } + break; + case MG_STATE_CLIENT_COMMUNICATING: + AddTextPrinterToWindow1(gText_Communicating); + data->state = MG_STATE_CLIENT_LINK; + break; + case MG_STATE_CLIENT_LINK: + switch (MysteryGiftClient_Run(&data->var)) + { + case CLI_RET_END: + Rfu_SetCloseLinkCallback(); + data->msgId = data->var; + data->state = MG_STATE_CLIENT_LINK_END; + break; + case CLI_RET_COPY_MSG: + memcpy(data->clientMsg, MysteryGiftClient_GetMsg(), 0x40); + MysteryGiftClient_AdvanceState(); + break; + case CLI_RET_PRINT_MSG: + data->state = MG_STATE_CLIENT_MESSAGE; + break; + case CLI_RET_YES_NO: + data->state = MG_STATE_CLIENT_YES_NO; + break; + case CLI_RET_ASK_TOSS: + data->state = MG_STATE_CLIENT_ASK_TOSS; + StringCopy(gStringVar1, gLinkPlayers[0].name); + break; + } + break; + case MG_STATE_CLIENT_YES_NO: + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, MysteryGiftClient_GetMsg()); + switch (input) + { + case 0: // Yes + MysteryGiftClient_SetParam(FALSE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + break; + case 1: // No + case MENU_B_PRESSED: + MysteryGiftClient_SetParam(TRUE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + break; + } + break; + case MG_STATE_CLIENT_MESSAGE: + if (PrintMysteryGiftMenuMessage(&data->textState, MysteryGiftClient_GetMsg())) + { + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + } + break; + case MG_STATE_CLIENT_ASK_TOSS: + // Player is receiving a new Wonder Card/News but needs to toss an existing one to make room. + // Ask for confirmation. + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_ThrowAwayWonderCard); + switch (input) + { + case 0: // Yes + if (IsSavedWonderCardGiftNotReceived() == TRUE) + { + data->state = MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED; + } + else + { + MysteryGiftClient_SetParam(FALSE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + } + break; + case 1: // No + case MENU_B_PRESSED: + MysteryGiftClient_SetParam(TRUE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + break; + } + break; + case MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED: + // Player has selected to toss a Wonder Card that they haven't received the gift for. + // Ask for confirmation again. + input = DoMysteryGiftYesNo(&data->textState, &data->var, FALSE, gText_HaventReceivedCardsGift); + switch (input) + { + case 0: // Yes + MysteryGiftClient_SetParam(FALSE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + break; + case 1: // No + case MENU_B_PRESSED: + MysteryGiftClient_SetParam(TRUE); + MysteryGiftClient_AdvanceState(); + data->state = MG_STATE_CLIENT_COMMUNICATING; + break; + } + break; + case MG_STATE_CLIENT_LINK_END: + if (gReceivedRemoteLinkPlayers == 0) + { + DestroyWirelessStatusIndicatorSprite(); + data->state = MG_STATE_CLIENT_COMM_COMPLETED; + } + break; + case MG_STATE_CLIENT_COMM_COMPLETED: + if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted)) + { + if (data->sourceIsFriend == TRUE) + StringCopy(gStringVar1, gLinkPlayers[0].name); + data->state = MG_STATE_CLIENT_RESULT_MSG; + } + break; + case MG_STATE_CLIENT_RESULT_MSG: + msg = GetClientResultMessage(&successMsg, data->isWonderNews, data->sourceIsFriend, data->msgId); + if (msg == NULL) + msg = data->clientMsg; + if (successMsg) + input = PrintSuccessMessage(&data->textState, msg, &data->var); + else + input = PrintMysteryGiftMenuMessage(&data->textState, msg); + // input var re-used, here it is TRUE if the message is finished + if (input) + { + if (data->msgId == CLI_MSG_NEWS_RECEIVED) + { + if (data->sourceIsFriend == TRUE) + GenerateRandomWonderNews(WONDER_NEWS_RECV_FRIEND); + else + GenerateRandomWonderNews(WONDER_NEWS_RECV_WIRELESS); + } + if (!successMsg) + { + // Did not receive card/news, return to main menu + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); + } + else + { + data->state = MG_STATE_SAVE_LOAD_GIFT; + } + } + break; + case MG_STATE_SAVE_LOAD_GIFT: + if (SaveOnMysteryGiftMenu(&data->textState)) + data->state = MG_STATE_LOAD_GIFT; + break; + case MG_STATE_LOAD_GIFT: + if (HandleLoadWonderCardOrNews(&data->textState, data->isWonderNews)) + data->state = MG_STATE_HANDLE_GIFT_INPUT; + break; + case MG_STATE_HANDLE_GIFT_INPUT: + if (!data->isWonderNews) + { + // Handle Wonder Card input + if (JOY_NEW(A_BUTTON)) + data->state = MG_STATE_HANDLE_GIFT_SELECT; + if (JOY_NEW(B_BUTTON)) + data->state = MG_STATE_GIFT_INPUT_EXIT; + } + else + { + switch (WonderNews_GetInput(gMain.newKeys)) + { + case NEWS_INPUT_A: + WonderNews_RemoveScrollIndicatorArrowPair(); + data->state = MG_STATE_HANDLE_GIFT_SELECT; + break; + case NEWS_INPUT_B: + data->state = MG_STATE_GIFT_INPUT_EXIT; + break; + } + } + break; + case MG_STATE_HANDLE_GIFT_SELECT: + { + // A Wonder Card/News has been selected, handle its menu + u32 result; + if (!data->isWonderNews) + { + if (IsSendingSavedWonderCardAllowed()) + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); + else + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); + } + else + { + if (IsSendingSavedWonderNewsAllowed()) + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, FALSE); + else + result = HandleGiftSelectMenu(&data->textState, &data->var, data->isWonderNews, TRUE); + } + switch (result) + { + case 0: // Receive + data->state = MG_STATE_RECEIVE; + break; + case 1: // Send + data->state = MG_STATE_SEND; + break; + case 2: // Toss + data->state = MG_STATE_ASK_TOSS; + break; + case LIST_CANCEL: + if (data->isWonderNews == TRUE) + WonderNews_AddScrollIndicatorArrowPair(); + data->state = MG_STATE_HANDLE_GIFT_INPUT; + break; + } + break; + } + case MG_STATE_ASK_TOSS: + // Player is attempting to discard a saved Wonder Card/News + switch (AskDiscardGift(&data->textState, &data->var, data->isWonderNews)) + { + case 0: // Yes + if (!data->isWonderNews && IsSavedWonderCardGiftNotReceived() == TRUE) + data->state = MG_STATE_ASK_TOSS_UNRECEIVED; + else + data->state = MG_STATE_TOSS; + break; + case 1: // No + case MENU_B_PRESSED: + data->state = MG_STATE_HANDLE_GIFT_SELECT; + break; + } + break; + case MG_STATE_ASK_TOSS_UNRECEIVED: + // Player has selected to toss a Wonder Card that they haven't received the gift for. + // Ask for confirmation again. + switch ((u32)DoMysteryGiftYesNo(&data->textState, &data->var, TRUE, gText_HaventReceivedGiftOkayToDiscard)) + { + case 0: // Yes + data->state = MG_STATE_TOSS; + break; + case 1: // No + case MENU_B_PRESSED: + data->state = MG_STATE_HANDLE_GIFT_SELECT; + break; + } + break; + case MG_STATE_TOSS: + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) + { + ClearSavedNewsOrCard(data->isWonderNews); + data->state = MG_STATE_TOSS_SAVE; + } + break; + case MG_STATE_TOSS_SAVE: + if (SaveOnMysteryGiftMenu(&data->textState)) + data->state = MG_STATE_TOSSED; + break; + case MG_STATE_TOSSED: + if (PrintThrownAway(&data->textState, data->isWonderNews)) + { + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); + } + break; + case MG_STATE_GIFT_INPUT_EXIT: + if (ExitWonderCardOrNews(data->isWonderNews, FALSE)) + data->state = MG_STATE_TO_MAIN_MENU; + break; + case MG_STATE_RECEIVE: + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) + data->state = MG_STATE_SOURCE_PROMPT; + break; + case MG_STATE_SEND: + if (ExitWonderCardOrNews(data->isWonderNews, TRUE)) + { + switch (data->isWonderNews) + { + case FALSE: + CreateTask_SendMysteryGift(ACTIVITY_WONDER_CARD); + break; + case TRUE: + CreateTask_SendMysteryGift(ACTIVITY_WONDER_NEWS); + break; + } + data->sourceIsFriend = TRUE; + data->state = MG_STATE_SERVER_LINK_WAIT; + } + break; + case MG_STATE_SERVER_LINK_WAIT: + if (gReceivedRemoteLinkPlayers != 0) + { + ClearScreenInBg0(TRUE); + data->state = MG_STATE_SERVER_LINK_START; + } + else if (gSpecialVar_Result == LINKUP_FAILED) + { + ClearScreenInBg0(TRUE); + data->state = MG_STATE_LOAD_GIFT; + } + break; + case MG_STATE_SERVER_LINK_START: + *gStringVar1 = EOS; + *gStringVar2 = EOS; + *gStringVar3 = EOS; + + if (!data->isWonderNews) + { + AddTextPrinterToWindow1(gText_SendingWonderCard); + MysterGiftServer_CreateForCard(); + } + else + { + AddTextPrinterToWindow1(gText_SendingWonderNews); + MysterGiftServer_CreateForNews(); + } + data->state = MG_STATE_SERVER_LINK; + break; + case MG_STATE_SERVER_LINK: + if (MysterGiftServer_Run(&data->var) == SVR_RET_END) + { + data->msgId = data->var; + data->state = MG_STATE_SERVER_LINK_END; + } + break; + case MG_STATE_SERVER_LINK_END: + Rfu_SetCloseLinkCallback(); + StringCopy(gStringVar1, gLinkPlayers[1].name); + data->state = MG_STATE_SERVER_LINK_END_WAIT; + break; + case MG_STATE_SERVER_LINK_END_WAIT: + if (gReceivedRemoteLinkPlayers == 0) + { + DestroyWirelessStatusIndicatorSprite(); + data->state = MG_STATE_SERVER_RESULT_MSG; + } + break; + case MG_STATE_SERVER_RESULT_MSG: + if (PrintServerResultMessage(&data->textState, &data->var, data->sourceIsFriend, data->msgId)) + { + if (data->sourceIsFriend == TRUE && data->msgId == SVR_MSG_NEWS_SENT) + { + GenerateRandomWonderNews(WONDER_NEWS_SENT); + data->state = MG_STATE_SAVE_LOAD_GIFT; + } + else + { + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); + } + } + break; + case MG_STATE_CLIENT_ERROR: + case MG_STATE_SERVER_ERROR: + if (PrintMysteryGiftMenuMessage(&data->textState, gText_CommunicationError)) + { + data->state = MG_STATE_TO_MAIN_MENU; + PrintMysteryGiftOrEReaderTopMenu(FALSE, FALSE); + } + break; + case MG_STATE_EXIT: + CloseLink(); + Free(data->clientMsg); + DestroyTask(taskId); + SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen); + break; + } +} + +u16 GetMysteryGiftBaseBlock(void) +{ + return 0x1A9; +} + +static void LoadMysteryGiftTextboxBorder(u8 bgId) +{ + DecompressAndLoadBgGfxUsingHeap(bgId, sTextboxBorder_Gfx, 0x100, 0, 0); +} diff --git a/src/mevent_scripts.c b/src/mystery_gift_scripts.c similarity index 98% rename from src/mevent_scripts.c rename to src/mystery_gift_scripts.c index 23e0d97a5675..fcd7f568d086 100644 --- a/src/mevent_scripts.c +++ b/src/mystery_gift_scripts.c @@ -1,7 +1,7 @@ #include "global.h" -#include "mevent_client.h" -#include "mevent_server.h" -#include "mevent.h" +#include "mystery_gift_client.h" +#include "mystery_gift_server.h" +#include "mystery_gift.h" static const u8 sText_CanceledReadingCard[] = _("Canceled reading\nthe Card."); diff --git a/src/mevent_server.c b/src/mystery_gift_server.c similarity index 99% rename from src/mevent_server.c rename to src/mystery_gift_server.c index 5313e02f75d9..0e0acb642822 100644 --- a/src/mevent_server.c +++ b/src/mystery_gift_server.c @@ -1,9 +1,9 @@ #include "global.h" #include "malloc.h" #include "script.h" -#include "mevent.h" -#include "mevent_server.h" -#include "mevent_server_helpers.h" +#include "mystery_gift.h" +#include "mystery_gift_server.h" +#include "mystery_gift_link.h" enum { FUNC_INIT, diff --git a/src/wonder_transfer.c b/src/mystery_gift_view.c similarity index 99% rename from src/wonder_transfer.c rename to src/mystery_gift_view.c index c1fc69ca77f2..1bd3e2a21c03 100644 --- a/src/wonder_transfer.c +++ b/src/mystery_gift_view.c @@ -11,11 +11,11 @@ #include "text_window.h" #include "string_util.h" #include "link_rfu.h" -#include "mevent.h" #include "mystery_gift.h" -#include "wonder_transfer.h" +#include "mystery_gift_menu.h" +#include "mystery_gift_view.h" #include "constants/rgb.h" -#include "constants/mevent.h" +#include "constants/mystery_gift.h" struct WonderGraphics { diff --git a/src/new_game.c b/src/new_game.c index c4622820c45b..1362c492d1b8 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -43,7 +43,7 @@ #include "player_pc.h" #include "field_specials.h" #include "berry_powder.h" -#include "mevent.h" +#include "mystery_gift.h" #include "union_room_chat.h" extern const u8 EventScript_ResetAllMapFlags[]; diff --git a/src/script.c b/src/script.c index a3e223768ea1..b10e0db49d12 100644 --- a/src/script.c +++ b/src/script.c @@ -1,7 +1,7 @@ #include "global.h" #include "script.h" #include "event_data.h" -#include "mevent.h" +#include "mystery_gift.h" #include "util.h" #include "constants/maps.h" #include "constants/map_scripts.h" diff --git a/src/trade.c b/src/trade.c index acae292e5892..3fdb15c459b4 100644 --- a/src/trade.c +++ b/src/trade.c @@ -19,8 +19,8 @@ #include "load_save.h" #include "mail.h" #include "main.h" -#include "mevent.h" #include "mystery_gift.h" +#include "mystery_gift_menu.h" #include "overworld.h" #include "palette.h" #include "party_menu.h" diff --git a/src/union_room.c b/src/union_room.c index 1a7ccc8e36c9..881a1d58ea69 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -23,8 +23,8 @@ #include "load_save.h" #include "menu.h" #include "menu_helpers.h" -#include "mevent.h" #include "mystery_gift.h" +#include "mystery_gift_menu.h" #include "overworld.h" #include "palette.h" #include "party_menu.h" diff --git a/src/mevent_news.c b/src/wonder_news.c similarity index 98% rename from src/mevent_news.c rename to src/wonder_news.c index 27b22566d7f7..ec93d293edbc 100644 --- a/src/mevent_news.c +++ b/src/wonder_news.c @@ -1,8 +1,8 @@ #include "global.h" -#include "mevent.h" +#include "mystery_gift.h" #include "random.h" #include "event_data.h" -#include "mevent_news.h" +#include "wonder_news.h" /* Wonder News related functions. diff --git a/sym_ewram.txt b/sym_ewram.txt index 360a91d328ac..a9ec00e3b9cf 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -9,14 +9,14 @@ .include "src/link_rfu_3.o" .include "src/link_rfu_2.o" .include "src/union_room.o" - .include "src/mystery_gift.o" + .include "src/mystery_gift_menu.o" .include "src/union_room_player_avatar.o" .include "src/wireless_communication_status_screen.o" .include "src/union_room_battle.o" - .include "src/mevent2.o" - .include "src/wonder_transfer.o" - .include "src/mevent_server.o" - .include "src/mevent_client.o" + .include "src/mystery_gift.o" + .include "src/mystery_gift_view.o" + .include "src/mystery_gift_server.o" + .include "src/mystery_gift_client.o" .include "src/union_room_chat.o" .include "src/berry_crush.o" .include "src/berry_powder.o" From ff594ccb8267623cc38528a3ad127a8b18585b1f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 03:22:55 -0400 Subject: [PATCH 313/762] Fix leftover icon_shadow names --- .../{icon_shadow.png => stamp_shadow.png} | Bin .../{icon_shadow_1.pal => stamp_shadow_1.pal} | 0 .../{icon_shadow_2.pal => stamp_shadow_2.pal} | 0 .../{icon_shadow_3.pal => stamp_shadow_3.pal} | 0 .../{icon_shadow_4.pal => stamp_shadow_4.pal} | 0 .../{icon_shadow_5.pal => stamp_shadow_5.pal} | 0 .../{icon_shadow_6.pal => stamp_shadow_6.pal} | 0 .../{icon_shadow_7.pal => stamp_shadow_7.pal} | 0 .../{icon_shadow_8.pal => stamp_shadow_8.pal} | 0 src/mystery_gift_view.c | 40 +++++++++--------- 10 files changed, 20 insertions(+), 20 deletions(-) rename graphics/wonder_card/{icon_shadow.png => stamp_shadow.png} (100%) rename graphics/wonder_card/{icon_shadow_1.pal => stamp_shadow_1.pal} (100%) rename graphics/wonder_card/{icon_shadow_2.pal => stamp_shadow_2.pal} (100%) rename graphics/wonder_card/{icon_shadow_3.pal => stamp_shadow_3.pal} (100%) rename graphics/wonder_card/{icon_shadow_4.pal => stamp_shadow_4.pal} (100%) rename graphics/wonder_card/{icon_shadow_5.pal => stamp_shadow_5.pal} (100%) rename graphics/wonder_card/{icon_shadow_6.pal => stamp_shadow_6.pal} (100%) rename graphics/wonder_card/{icon_shadow_7.pal => stamp_shadow_7.pal} (100%) rename graphics/wonder_card/{icon_shadow_8.pal => stamp_shadow_8.pal} (100%) diff --git a/graphics/wonder_card/icon_shadow.png b/graphics/wonder_card/stamp_shadow.png similarity index 100% rename from graphics/wonder_card/icon_shadow.png rename to graphics/wonder_card/stamp_shadow.png diff --git a/graphics/wonder_card/icon_shadow_1.pal b/graphics/wonder_card/stamp_shadow_1.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_1.pal rename to graphics/wonder_card/stamp_shadow_1.pal diff --git a/graphics/wonder_card/icon_shadow_2.pal b/graphics/wonder_card/stamp_shadow_2.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_2.pal rename to graphics/wonder_card/stamp_shadow_2.pal diff --git a/graphics/wonder_card/icon_shadow_3.pal b/graphics/wonder_card/stamp_shadow_3.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_3.pal rename to graphics/wonder_card/stamp_shadow_3.pal diff --git a/graphics/wonder_card/icon_shadow_4.pal b/graphics/wonder_card/stamp_shadow_4.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_4.pal rename to graphics/wonder_card/stamp_shadow_4.pal diff --git a/graphics/wonder_card/icon_shadow_5.pal b/graphics/wonder_card/stamp_shadow_5.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_5.pal rename to graphics/wonder_card/stamp_shadow_5.pal diff --git a/graphics/wonder_card/icon_shadow_6.pal b/graphics/wonder_card/stamp_shadow_6.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_6.pal rename to graphics/wonder_card/stamp_shadow_6.pal diff --git a/graphics/wonder_card/icon_shadow_7.pal b/graphics/wonder_card/stamp_shadow_7.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_7.pal rename to graphics/wonder_card/stamp_shadow_7.pal diff --git a/graphics/wonder_card/icon_shadow_8.pal b/graphics/wonder_card/stamp_shadow_8.pal similarity index 100% rename from graphics/wonder_card/icon_shadow_8.pal rename to graphics/wonder_card/stamp_shadow_8.pal diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 1bd3e2a21c03..444ca8bd0e36 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -137,32 +137,32 @@ static const u32 sWonderCardBgGfx7[] = INCBIN_U32("graphics/wonder_card/bg7. static const u32 sWonderCardBgTilemap7[] = INCBIN_U32("graphics/wonder_card/bg7.bin.lz"); static const u32 sWonderCardBgGfx8[] = INCBIN_U32("graphics/wonder_card/bg8.4bpp.lz"); static const u32 sWonderCardBgTilemap8[] = INCBIN_U32("graphics/wonder_card/bg8.bin.lz"); -static const u16 sIconShadowPal1[] = INCBIN_U16("graphics/wonder_card/icon_shadow_1.gbapal"); -static const u16 sIconShadowPal2[] = INCBIN_U16("graphics/wonder_card/icon_shadow_2.gbapal"); -static const u16 sIconShadowPal3[] = INCBIN_U16("graphics/wonder_card/icon_shadow_3.gbapal"); -static const u16 sIconShadowPal4[] = INCBIN_U16("graphics/wonder_card/icon_shadow_4.gbapal"); -static const u16 sIconShadowPal5[] = INCBIN_U16("graphics/wonder_card/icon_shadow_5.gbapal"); -static const u16 sIconShadowPal6[] = INCBIN_U16("graphics/wonder_card/icon_shadow_6.gbapal"); -static const u16 sIconShadowPal7[] = INCBIN_U16("graphics/wonder_card/icon_shadow_7.gbapal"); -static const u16 sIconShadowPal8[] = INCBIN_U16("graphics/wonder_card/icon_shadow_8.gbapal"); -static const u32 sIconShadowGfx[] = INCBIN_U32("graphics/wonder_card/icon_shadow.4bpp.lz"); +static const u16 sStampShadowPal1[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_1.gbapal"); +static const u16 sStampShadowPal2[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_2.gbapal"); +static const u16 sStampShadowPal3[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_3.gbapal"); +static const u16 sStampShadowPal4[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_4.gbapal"); +static const u16 sStampShadowPal5[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_5.gbapal"); +static const u16 sStampShadowPal6[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_6.gbapal"); +static const u16 sStampShadowPal7[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_7.gbapal"); +static const u16 sStampShadowPal8[] = INCBIN_U16("graphics/wonder_card/stamp_shadow_8.gbapal"); +static const u32 sStampShadowGfx[] = INCBIN_U32("graphics/wonder_card/stamp_shadow.4bpp.lz"); static const struct CompressedSpriteSheet sSpriteSheet_StampShadow = { - sIconShadowGfx, 0x100, TAG_STAMP_SHADOW + sStampShadowGfx, 0x100, TAG_STAMP_SHADOW }; static const struct SpritePalette sSpritePalettes_StampShadow[] = { - {sIconShadowPal1, TAG_STAMP_SHADOW}, - {sIconShadowPal2, TAG_STAMP_SHADOW}, - {sIconShadowPal3, TAG_STAMP_SHADOW}, - {sIconShadowPal4, TAG_STAMP_SHADOW}, - {sIconShadowPal5, TAG_STAMP_SHADOW}, - {sIconShadowPal6, TAG_STAMP_SHADOW}, - {sIconShadowPal7, TAG_STAMP_SHADOW}, - {sIconShadowPal8, TAG_STAMP_SHADOW} + {sStampShadowPal1, TAG_STAMP_SHADOW}, + {sStampShadowPal2, TAG_STAMP_SHADOW}, + {sStampShadowPal3, TAG_STAMP_SHADOW}, + {sStampShadowPal4, TAG_STAMP_SHADOW}, + {sStampShadowPal5, TAG_STAMP_SHADOW}, + {sStampShadowPal6, TAG_STAMP_SHADOW}, + {sStampShadowPal7, TAG_STAMP_SHADOW}, + {sStampShadowPal8, TAG_STAMP_SHADOW} }; -static const struct SpriteTemplate sSpriteTemplate_IconShadow = { +static const struct SpriteTemplate sSpriteTemplate_StampShadow = { .tileTag = TAG_STAMP_SHADOW, .paletteTag = TAG_STAMP_SHADOW, .oam = &gOamData_AffineOff_ObjNormal_32x16, @@ -503,7 +503,7 @@ static void CreateCardSprites(void) { sWonderCardData->stampSpriteIds[i][0] = SPRITE_NONE; sWonderCardData->stampSpriteIds[i][1] = SPRITE_NONE; - sWonderCardData->stampSpriteIds[i][0] = CreateSprite(&sSpriteTemplate_IconShadow, 216 - 32 * i, 144, 8); + sWonderCardData->stampSpriteIds[i][0] = CreateSprite(&sSpriteTemplate_StampShadow, 216 - 32 * i, 144, 8); if (sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i] != SPECIES_NONE) sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), SpriteCallbackDummy, From c70ec9748ac92e4b9ecc2f110ae5702a46097f90 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 15:11:36 -0400 Subject: [PATCH 314/762] Some union_room_chat clean up --- src/union_room_chat.c | 149 +++++++++++++++++++++++------------------- 1 file changed, 83 insertions(+), 66 deletions(-) diff --git a/src/union_room_chat.c b/src/union_room_chat.c index adf496fe629b..7debe3cd4f95 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -105,6 +105,17 @@ enum { CHAT_EXIT_DISBANDED, }; +enum { + GFXTAG_KEYBOARD_CURSOR, + GFXTAG_TEXT_ENTRY_ARROW, + GFXTAG_TEXT_ENTRY_CURSOR, + GFXTAG_RBUTTON_ICON, + GFXTAG_RBUTTON_LABELS, +}; + +// Shared by all above +#define PALTAG_INTERFACE 0 + struct UnionRoomChat { u32 filler1; @@ -123,7 +134,7 @@ struct UnionRoomChat u8 lastBufferCursorPos; u8 bufferCursorPos; u8 receivedPlayerIndex; - u8 exitType; + u8 exitType; // CHAT_EXIT_* bool8 changedRegisteredTexts; u8 afterSaveTimer; u8 messageEntryBuffer[2 * MAX_MESSAGE_LENGTH + 1]; @@ -249,9 +260,9 @@ static void CreateRButtonSprites(void); static void ShowKeyboardSwapMenu(void); static void HideKeyboardSwapMenu(void); static void SetKeyboardCursorInvisibility(bool32); -static bool32 sub_8020320(void); +static bool32 SlideKeyboardPageOut(void); static void PrintCurrentKeyboardPage(void); -static bool32 sub_8020368(void); +static bool32 SlideKeyboardPageIn(void); static void MoveKeyboardCursor(void); static void UpdateRButtonLabel(void); static void AddStdMessageWindow(int, u16); @@ -266,8 +277,8 @@ static void SetRegisteredTextPalette(bool32); static void PrintChatMessage(u16, u8 *, u8); static void StartKeyboardCursorAnim(void); static bool32 TryKeyboardCursorReopen(void); -static void sub_80207C0(s16); -static void sub_8020818(s16); +static void UpdateSlidingKeyboard(s16); +static void FinishSlidingKeyboard(s16); static bool32 Display_Dummy(u8 *); static bool32 Display_LoadGfx(u8 *state); static bool32 Display_ShowKeyboardSwapMenu(u8 *state); @@ -550,36 +561,36 @@ static const struct BgTemplate sBgTemplates[] = { static const struct WindowTemplate sWinTemplates[] = { { - .bg = 0x03, - .tilemapLeft = 0x08, - .tilemapTop = 0x01, - .width = 0x15, - .height = 0x13, - .paletteNum = 0x0f, + .bg = 3, + .tilemapLeft = 8, + .tilemapTop = 1, + .width = 21, + .height = 19, + .paletteNum = 15, .baseBlock = 0x0001, }, { - .bg = 0x01, - .tilemapLeft = 0x09, - .tilemapTop = 0x12, - .width = 0x0f, - .height = 0x02, - .paletteNum = 0x0c, + .bg = 1, + .tilemapLeft = 9, + .tilemapTop = 18, + .width = 15, + .height = 2, + .paletteNum = 12, .baseBlock = 0x007a, }, { - .bg = 0x01, - .tilemapLeft = 0x00, - .tilemapTop = 0x02, - .width = 0x06, - .height = 0x0f, - .paletteNum = 0x07, + .bg = 1, + .tilemapLeft = 0, + .tilemapTop = 2, + .width = 6, + .height = 15, + .paletteNum = 7, .baseBlock = 0x0020, }, { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x02, - .width = 0x07, - .height = 0x09, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 2, + .width = 7, + .height = 9, + .paletteNum = 14, .baseBlock = 0x0013, }, DUMMY_WIN_TEMPLATE }; @@ -783,8 +794,8 @@ static const union AnimCmd *const sAnims_KeyboardCursor[] = { }; static const struct SpriteTemplate sSpriteTemplate_KeyboardCursor = { - .tileTag = 0x0000, - .paletteTag = 0x0000, + .tileTag = GFXTAG_KEYBOARD_CURSOR, + .paletteTag = PALTAG_INTERFACE, .oam = &sOam_KeyboardCursor, .anims = sAnims_KeyboardCursor, .images = NULL, @@ -799,8 +810,8 @@ static const struct OamData sOam_TextEntrySprite = { }; static const struct SpriteTemplate sSpriteTemplate_TextEntryCursor = { - .tileTag = 0x0002, - .paletteTag = 0x0000, + .tileTag = GFXTAG_TEXT_ENTRY_CURSOR, + .paletteTag = PALTAG_INTERFACE, .oam = &sOam_TextEntrySprite, .anims = gDummySpriteAnimTable, .images = NULL, @@ -809,8 +820,8 @@ static const struct SpriteTemplate sSpriteTemplate_TextEntryCursor = { }; static const struct SpriteTemplate sSpriteTemplate_TextEntryArrow = { - .tileTag = 0x0001, - .paletteTag = 0x0000, + .tileTag = GFXTAG_TEXT_ENTRY_ARROW, + .paletteTag = PALTAG_INTERFACE, .oam = &sOam_TextEntrySprite, .anims = gDummySpriteAnimTable, .images = NULL, @@ -858,8 +869,8 @@ static const union AnimCmd *const sAnims_RButtonLabels[] = { }; static const struct SpriteTemplate sSpriteTemplate_RButtonIcon = { - .tileTag = 0x0003, - .paletteTag = 0x0000, + .tileTag = GFXTAG_RBUTTON_ICON, + .paletteTag = PALTAG_INTERFACE, .oam = &sOam_RButtonIcon, .anims = gDummySpriteAnimTable, .images = NULL, @@ -868,8 +879,8 @@ static const struct SpriteTemplate sSpriteTemplate_RButtonIcon = { }; static const struct SpriteTemplate sSpriteTemplate_RButtonLabels = { - .tileTag = 0x0004, - .paletteTag = 0x0000, + .tileTag = GFXTAG_RBUTTON_LABELS, + .paletteTag = PALTAG_INTERFACE, .oam = &sOam_RButtonLabel, .anims = sAnims_RButtonLabels, .images = NULL, @@ -879,7 +890,7 @@ static const struct SpriteTemplate sSpriteTemplate_RButtonLabels = { void EnterUnionRoomChat(void) { - sChat = Alloc(sizeof(struct UnionRoomChat)); + sChat = Alloc(sizeof(*sChat)); InitUnionRoomChat(sChat); gKeyRepeatStartDelay = 20; SetVBlankCallback(NULL); @@ -890,7 +901,7 @@ static void InitUnionRoomChat(struct UnionRoomChat *chat) { int i; - chat->funcId = 0; + chat->funcId = CHAT_FUNC_JOIN; chat->funcState = 0; chat->currentPage = 0; chat->currentCol = 0; @@ -901,7 +912,7 @@ static void InitUnionRoomChat(struct UnionRoomChat *chat) chat->messageEntryBuffer[0] = EOS; chat->linkPlayerCount = GetLinkPlayerCount(); chat->multiplayerId = GetMultiplayerId(); - chat->exitType = 0; + chat->exitType = CHAT_EXIT_NONE; chat->changedRegisteredTexts = FALSE; PrepareSendBuffer_Null(chat->sendMessageBuffer); for (i = 0; i < UNION_ROOM_KB_ROW_COUNT; i++) @@ -969,6 +980,8 @@ static void CB2_UnionRoomChatMain(void) static void Task_HandlePlayerInput(u8 taskId) { + // If exitType is not CHAT_EXIT_NONE, begin exit function. + // Otherwise just call main function below. switch (sChat->exitType) { case CHAT_EXIT_ONLY_LEADER: @@ -1056,7 +1069,7 @@ static void Chat_HandleInput(void) } else { - SetChatFunction(5); + SetChatFunction(CHAT_FUNC_REGISTER); } } else if (HandleDPadInput()) @@ -2080,7 +2093,7 @@ static void Task_ReceiveChatMessage(u8 taskId) if (GetLinkPlayerCount() == 2) { Rfu_StopPartnerSearch(); - sChat->exitType = 1; + sChat->exitType = CHAT_EXIT_ONLY_LEADER; DestroyTask(taskId); return; } @@ -2091,12 +2104,12 @@ static void Task_ReceiveChatMessage(u8 taskId) break; case 5: if (sChat->multiplayerId) - sChat->exitType = 2; + sChat->exitType = CHAT_EXIT_DROPPED; DestroyTask(taskId); break; case 6: - sChat->exitType = 3; + sChat->exitType = CHAT_EXIT_DISBANDED; DestroyTask(taskId); break; case 2: @@ -2295,7 +2308,7 @@ static bool32 Display_SwitchPages(u8 *state) { case 0: SetKeyboardCursorInvisibility(TRUE); - if (sub_8020320()) + if (SlideKeyboardPageOut()) return TRUE; PrintCurrentKeyboardPage(); @@ -2306,7 +2319,7 @@ static bool32 Display_SwitchPages(u8 *state) return TRUE; break; case 2: - if (sub_8020368()) + if (SlideKeyboardPageIn()) return TRUE; MoveKeyboardCursor(); @@ -2928,26 +2941,29 @@ static void PrintCurrentKeyboardPage(void) } } -static bool32 sub_8020320(void) +#define KEYBOARD_HOFS_END 56 + +static bool32 SlideKeyboardPageOut(void) { - if (sDisplay->bg1hofs < 56) + if (sDisplay->bg1hofs < KEYBOARD_HOFS_END) { sDisplay->bg1hofs += 12; - if (sDisplay->bg1hofs >= 56) - sDisplay->bg1hofs = 56; + if (sDisplay->bg1hofs >= KEYBOARD_HOFS_END) + sDisplay->bg1hofs = KEYBOARD_HOFS_END; - if (sDisplay->bg1hofs < 56) + if (sDisplay->bg1hofs < KEYBOARD_HOFS_END) { - sub_80207C0(sDisplay->bg1hofs); + // Still sliding + UpdateSlidingKeyboard(sDisplay->bg1hofs); return TRUE; } } - sub_8020818(sDisplay->bg1hofs); + FinishSlidingKeyboard(sDisplay->bg1hofs); return FALSE; } -static bool32 sub_8020368(void) +static bool32 SlideKeyboardPageIn(void) { if (sDisplay->bg1hofs > 0) { @@ -2957,12 +2973,13 @@ static bool32 sub_8020368(void) if (sDisplay->bg1hofs > 0) { - sub_80207C0(sDisplay->bg1hofs); + // Still sliding + UpdateSlidingKeyboard(sDisplay->bg1hofs); return TRUE; } } - sub_8020818(sDisplay->bg1hofs); + FinishSlidingKeyboard(sDisplay->bg1hofs); return FALSE; } @@ -3049,8 +3066,8 @@ static void LoadChatWindowGfx(void) ptr = DecompressAndCopyTileDataToVram(2, gUnionRoomChat_Background_Gfx, 0, 0, 0); if (ptr) { - CpuFastCopy(&ptr[0x220], sDisplay->unk2128, 0x20); - CpuFastCopy(&ptr[0x420], sDisplay->unk2148, 0x20); + CpuFastCopy(&ptr[0x220], sDisplay->unk2128, sizeof(sDisplay->unk2128)); + CpuFastCopy(&ptr[0x420], sDisplay->unk2148, sizeof(sDisplay->unk2148)); } CopyToBgTilemapBuffer(2, gUnionRoomChat_Background_Tilemap, 0, 0); @@ -3059,13 +3076,13 @@ static void LoadChatWindowGfx(void) static void sub_8020680(void) { - LoadPalette(sUnk_Palette1, 0x80, 0x20); + LoadPalette(sUnk_Palette1, 0x80, sizeof(sUnk_Palette1)); RequestDma3Fill(0, (void *)BG_CHAR_ADDR(1) + 0x20, 0x20, 1); } static void LoadChatMessagesWindow(void) { - LoadPalette(sUnk_Palette2, 0xF0, 0x20); + LoadPalette(sUnk_Palette2, 0xF0, sizeof(sUnk_Palette2)); PutWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); CopyWindowToVram(0, 3); @@ -3113,13 +3130,13 @@ static void InitScanlineEffect(void) ScanlineEffect_SetParams(params); } -static void sub_80207C0(s16 bg1hofs) +static void UpdateSlidingKeyboard(s16 bg1hofs) { CpuFill16(bg1hofs, gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer], 0x120); CpuFill16(0, gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer] + 0x90, 0x20); } -static void sub_8020818(s16 bg1hofs) +static void FinishSlidingKeyboard(s16 bg1hofs) { CpuFill16(bg1hofs, gScanlineEffectRegBuffers[0], 0x120); CpuFill16(0, gScanlineEffectRegBuffers[0] + 0x90, 0x20); @@ -3134,7 +3151,7 @@ static bool32 TryAllocSprites(void) LoadCompressedSpriteSheet(&sSpriteSheets[i]); LoadSpritePalette(&sSpritePalette); - sSprites = Alloc(sizeof(struct UnionRoomChatSprites)); + sSprites = Alloc(sizeof(*sSprites)); if (!sSprites) return FALSE; @@ -3180,7 +3197,7 @@ static void MoveKeyboardCursor(void) static void SetRegisteredTextPalette(bool32 registering) { const u16 *palette = &sUnionRoomChatInterfacePal[registering * 2 + 1]; - u8 index = IndexOfSpritePaletteTag(0); + u8 index = IndexOfSpritePaletteTag(PALTAG_INTERFACE); LoadPalette(palette, index * 16 + 0x101, 4); } From 371a13e9f9a44ba3959789361f3fc4a825fee9ab Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 17:38:52 -0400 Subject: [PATCH 315/762] Clean up in save_location --- src/save_location.c | 54 +++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/src/save_location.c b/src/save_location.c index aa56d7b16cc0..b201ca1c0d8c 100644 --- a/src/save_location.c +++ b/src/save_location.c @@ -2,14 +2,16 @@ #include "save_location.h" #include "constants/maps.h" +#define LIST_END 0xFFFF + static bool32 IsCurMapInLocationList(const u16 *list) { s32 i; - u16 locSum = (gSaveBlock1Ptr->location.mapGroup << 8) + (gSaveBlock1Ptr->location.mapNum); + u16 map = (gSaveBlock1Ptr->location.mapGroup << 8) + gSaveBlock1Ptr->location.mapNum; - for (i = 0; list[i] != 0xFFFF; i++) + for (i = 0; list[i] != LIST_END; i++) { - if (list[i] == locSum) + if (list[i] == map) return TRUE; } @@ -56,7 +58,7 @@ static const u16 sSaveLocationPokeCenterList[] = MAP_TRADE_CENTER, MAP_RECORD_CORNER, MAP_BATTLE_COLOSSEUM_4P, - 0xFFFF, + LIST_END, }; static bool32 IsCurMapPokeCenter(void) @@ -67,7 +69,7 @@ static bool32 IsCurMapPokeCenter(void) static const u16 sSaveLocationReloadLocList[] = // There's only 1 location, and it's presumed its for the save reload feature for battle tower. { MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, - 0xFFFF, + LIST_END, }; static bool32 IsCurMapReloadLocation(void) @@ -76,20 +78,20 @@ static bool32 IsCurMapReloadLocation(void) } // Nulled out list. Unknown what this would have been. -static const u16 sUnknown_0861440E[] = +static const u16 sEmptyMapList[] = { - 0xFFFF, + LIST_END, }; -static bool32 sub_81AFCEC(void) +static bool32 IsCurMapInEmptyList(void) { - return IsCurMapInLocationList(sUnknown_0861440E); + return IsCurMapInLocationList(sEmptyMapList); } static void TrySetPokeCenterWarpStatus(void) { - if (IsCurMapPokeCenter() == FALSE) - gSaveBlock2Ptr->specialSaveWarpFlags &= ~(POKECENTER_SAVEWARP); + if (!IsCurMapPokeCenter()) + gSaveBlock2Ptr->specialSaveWarpFlags &= ~POKECENTER_SAVEWARP; else gSaveBlock2Ptr->specialSaveWarpFlags |= POKECENTER_SAVEWARP; } @@ -97,16 +99,16 @@ static void TrySetPokeCenterWarpStatus(void) static void TrySetReloadWarpStatus(void) { if (!IsCurMapReloadLocation()) - gSaveBlock2Ptr->specialSaveWarpFlags &= ~(LOBBY_SAVEWARP); + gSaveBlock2Ptr->specialSaveWarpFlags &= ~LOBBY_SAVEWARP; else gSaveBlock2Ptr->specialSaveWarpFlags |= LOBBY_SAVEWARP; } -// this function definitely sets a warp status, but because the list is empty, it's unknown what this does yet. -static void sub_81AFD5C(void) +// Unknown save warp flag. Never set because map list is empty. +static void TrySetUnknownWarpStatus(void) { - if (!sub_81AFCEC()) - gSaveBlock2Ptr->specialSaveWarpFlags &= ~(UNK_SPECIAL_SAVE_WARP_FLAG_3); + if (!IsCurMapInEmptyList()) + gSaveBlock2Ptr->specialSaveWarpFlags &= ~UNK_SPECIAL_SAVE_WARP_FLAG_3; else gSaveBlock2Ptr->specialSaveWarpFlags |= UNK_SPECIAL_SAVE_WARP_FLAG_3; } @@ -115,21 +117,21 @@ void TrySetMapSaveWarpStatus(void) { TrySetPokeCenterWarpStatus(); TrySetReloadWarpStatus(); - sub_81AFD5C(); + TrySetUnknownWarpStatus(); } -// In FRLG, only 0x1, 0x10, and 0x20 are set when the pokedex is received -// 0x2, 0x4, 0x8, and 0x8000 are instead set by SetPostgameFlags +// In FRLG, only bits 0, 4, and 5 are set when the pokedex 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 void SetUnlockedPokedexFlags(void) { - gSaveBlock2Ptr->gcnLinkFlags |= 0x8000; - gSaveBlock2Ptr->gcnLinkFlags |= 0x1; - gSaveBlock2Ptr->gcnLinkFlags |= 0x2; - gSaveBlock2Ptr->gcnLinkFlags |= 0x4; - gSaveBlock2Ptr->gcnLinkFlags |= 0x10; - gSaveBlock2Ptr->gcnLinkFlags |= 0x20; - gSaveBlock2Ptr->gcnLinkFlags |= 0x8; + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 15); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 0); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 1); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 2); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 4); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 5); + gSaveBlock2Ptr->gcnLinkFlags |= (1 << 3); } void SetChampionSaveWarp(void) From f2e0c9ec9d6333813ca37edbb944ff333770679e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 17:51:35 -0400 Subject: [PATCH 316/762] Some pokedex clean up --- gflib/text.h | 2 +- src/battle_script_commands.c | 2 +- src/pokedex.c | 228 +++++++++++++++++++---------------- src/pokemon_storage_system.c | 2 +- src/pokenav_conditions_1.c | 2 +- 5 files changed, 126 insertions(+), 110 deletions(-) diff --git a/gflib/text.h b/gflib/text.h index f71cd557faae..8871ba2f18dc 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -71,7 +71,7 @@ // #define CHAR_i_ACUTE 0x6F // -#define CHAR_GENDERLESS 0x77 // Empty space for lack of gender icon +#define CHAR_SPACER 0x77 // Empty space // #define CHAR_UP_ARROW 0x79 #define CHAR_DOWN_ARROW 0x7A diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 91f89137a355..f717202950ba 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6047,7 +6047,7 @@ static void PutLevelAndGenderOnLvlUpBox(void) var = (u32)(txtPtr); txtPtr = ConvertIntToDecimalStringN(txtPtr, monLevel, STR_CONV_MODE_LEFT_ALIGN, 3); var = (u32)(txtPtr) - var; - txtPtr = StringFill(txtPtr, CHAR_GENDERLESS, 4 - var); + txtPtr = StringFill(txtPtr, CHAR_SPACER, 4 - var); if (monGender != MON_GENDERLESS) { diff --git a/src/pokedex.c b/src/pokedex.c index fa64b155c79e..67e2d732e999 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -104,13 +104,15 @@ enum #define POKEBALL_ROTATION_TOP 64 #define POKEBALL_ROTATION_BOTTOM (POKEBALL_ROTATION_TOP - 16) -// EWRAM +// Coordinates of the PokĂ©mon sprite on its page (info/cry screens) +#define MON_PAGE_X 48 +#define MON_PAGE_Y 56 + static EWRAM_DATA struct PokedexView *sPokedexView = NULL; static EWRAM_DATA u16 sLastSelectedPokemon = 0; static EWRAM_DATA u8 sPokeBallRotation = 0; static EWRAM_DATA struct PokedexListItem *sPokedexListItem = NULL; -// IWRAM common // This is written to, but never read. u8 gUnusedPokedexU8; void (*gPokedexVBlankCB)(void); @@ -241,7 +243,7 @@ static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite); static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite); static u8 LoadInfoScreen(struct PokedexListItem*, u8 monSpriteId); static bool8 IsInfoScreenScrolling(u8); -static u8 sub_80BE9F8(struct PokedexListItem*, u8); +static u8 StartInfoScreenScroll(struct PokedexListItem*, u8); static void Task_LoadInfoScreen(u8); static void Task_HandleInfoScreenInput(u8); static void Task_SwitchScreensFromInfoScreen(u8); @@ -270,7 +272,7 @@ static void PrintMonHeight(u16 height, u8 left, u8 top); static void PrintMonWeight(u16 weight, u8 left, u8 top); static void ResetOtherVideoRegisters(u16); static u8 PrintCryScreenSpeciesName(u8, u16, u8, u8); -static void PrintFootprint(u8 windowId, u16 dexNum); +static void DrawFootprint(u8 windowId, u16 dexNum); static u16 CreateSizeScreenTrainerPic(u16, s16, s16, s8); static u16 GetNextPosition(u8, u16, u16, u16); static u8 LoadSearchMenu(void); @@ -1657,7 +1659,7 @@ void Task_OpenPokedexMainPage(u8 taskId) gTasks[taskId].func = Task_HandlePokedexInput; } -#define tTaskId data[0] +#define tLoadScreenTaskId data[0] static void Task_HandlePokedexInput(u8 taskId) { @@ -1669,7 +1671,7 @@ static void Task_HandlePokedexInput(u8 taskId) } else { - if ((JOY_NEW(A_BUTTON)) && sPokedexView->pokedexList[sPokedexView->selectedPokemon].seen) + if (JOY_NEW(A_BUTTON) && sPokedexView->pokedexList[sPokedexView->selectedPokemon].seen) { UpdateSelectedMonSpriteId(); BeginNormalPaletteFade(~(1 << (gSprites[sPokedexView->selectedMonSpriteId].oam.paletteNum + 16)), 0, 0, 0x10, RGB_BLACK); @@ -1690,7 +1692,7 @@ static void Task_HandlePokedexInput(u8 taskId) { PlaySE(SE_SELECT); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gTasks[taskId].tTaskId = LoadSearchMenu(); + gTasks[taskId].tLoadScreenTaskId = LoadSearchMenu(); sPokedexView->screenSwitchState = 0; sPokedexView->pokeBallRotationBackup = sPokedexView->pokeBallRotation; sPokedexView->selectedPokemonBackup = sPokedexView->selectedPokemon; @@ -1770,12 +1772,12 @@ static void Task_HandlePokedexStartMenuInput(u8 taskId) gTasks[taskId].func = Task_HandlePokedexInput; PlaySE(SE_SELECT); } - else if ((JOY_REPEAT(DPAD_UP)) && sPokedexView->menuCursorPos != 0) + else if (JOY_REPEAT(DPAD_UP) && sPokedexView->menuCursorPos != 0) { sPokedexView->menuCursorPos--; PlaySE(SE_SELECT); } - else if ((JOY_REPEAT(DPAD_DOWN)) && sPokedexView->menuCursorPos < 3) + else if (JOY_REPEAT(DPAD_DOWN) && sPokedexView->menuCursorPos < 3) { sPokedexView->menuCursorPos++; PlaySE(SE_SELECT); @@ -1783,25 +1785,28 @@ static void Task_HandlePokedexStartMenuInput(u8 taskId) } } +// Opening the info screen from list view. PokĂ©mon sprite is moving to its new position, wait for it to arrive static void Task_OpenInfoScreenAfterMonMovement(u8 taskId) { - if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56) + if (gSprites[sPokedexView->selectedMonSpriteId].x == MON_PAGE_X && gSprites[sPokedexView->selectedMonSpriteId].y == MON_PAGE_Y) { sPokedexView->currentPageBackup = sPokedexView->currentPage; - gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); + gTasks[taskId].tLoadScreenTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); gTasks[taskId].func = Task_WaitForExitInfoScreen; } } static void Task_WaitForExitInfoScreen(u8 taskId) { - if (gTasks[gTasks[taskId].tTaskId].isActive) + if (gTasks[gTasks[taskId].tLoadScreenTaskId].isActive) { - if (sPokedexView->currentPage == PAGE_INFO && !IsInfoScreenScrolling(gTasks[taskId].tTaskId) && TryDoInfoScreenScroll()) - sub_80BE9F8(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], gTasks[taskId].tTaskId); + // While active, handle scroll input + if (sPokedexView->currentPage == PAGE_INFO && !IsInfoScreenScrolling(gTasks[taskId].tLoadScreenTaskId) && TryDoInfoScreenScroll()) + StartInfoScreenScroll(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], gTasks[taskId].tLoadScreenTaskId); } else { + // Exiting, back to list view sLastSelectedPokemon = sPokedexView->selectedPokemon; sPokeBallRotation = sPokedexView->pokeBallRotation; gTasks[taskId].func = Task_OpenPokedexMainPage; @@ -1810,7 +1815,7 @@ static void Task_WaitForExitInfoScreen(u8 taskId) static void Task_WaitForExitSearch(u8 taskId) { - if (!gTasks[gTasks[taskId].tTaskId].isActive) + if (!gTasks[gTasks[taskId].tLoadScreenTaskId].isActive) { ClearMonSprites(); @@ -1869,7 +1874,7 @@ static void Task_HandleSearchResultsInput(u8 taskId) } else { - if ((JOY_NEW(A_BUTTON)) && sPokedexView->pokedexList[sPokedexView->selectedPokemon].seen) + if (JOY_NEW(A_BUTTON) && sPokedexView->pokedexList[sPokedexView->selectedPokemon].seen) { u32 a; @@ -1892,7 +1897,7 @@ static void Task_HandleSearchResultsInput(u8 taskId) else if (JOY_NEW(SELECT_BUTTON)) { BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - gTasks[taskId].tTaskId = LoadSearchMenu(); + gTasks[taskId].tLoadScreenTaskId = LoadSearchMenu(); sPokedexView->screenSwitchState = 0; gTasks[taskId].func = Task_WaitForExitSearch; PlaySE(SE_PC_LOGIN); @@ -1972,12 +1977,12 @@ static void Task_HandleSearchResultsStartMenuInput(u8 taskId) gTasks[taskId].func = Task_HandleSearchResultsInput; PlaySE(SE_SELECT); } - else if ((JOY_REPEAT(DPAD_UP)) && sPokedexView->menuCursorPos) + else if (JOY_REPEAT(DPAD_UP) && sPokedexView->menuCursorPos) { sPokedexView->menuCursorPos--; PlaySE(SE_SELECT); } - else if ((JOY_REPEAT(DPAD_DOWN)) && sPokedexView->menuCursorPos < 4) + else if (JOY_REPEAT(DPAD_DOWN) && sPokedexView->menuCursorPos < 4) { sPokedexView->menuCursorPos++; PlaySE(SE_SELECT); @@ -1987,10 +1992,10 @@ static void Task_HandleSearchResultsStartMenuInput(u8 taskId) static void Task_OpenSearchResultsInfoScreenAfterMonMovement(u8 taskId) { - if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56) + if (gSprites[sPokedexView->selectedMonSpriteId].x == MON_PAGE_X && gSprites[sPokedexView->selectedMonSpriteId].y == MON_PAGE_Y) { sPokedexView->currentPageBackup = sPokedexView->currentPage; - gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); + gTasks[taskId].tLoadScreenTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId); sPokedexView->selectedMonSpriteId = -1; gTasks[taskId].func = Task_WaitForExitSearchResultsInfoScreen; } @@ -1998,13 +2003,15 @@ static void Task_OpenSearchResultsInfoScreenAfterMonMovement(u8 taskId) static void Task_WaitForExitSearchResultsInfoScreen(u8 taskId) { - if (gTasks[gTasks[taskId].tTaskId].isActive) + if (gTasks[gTasks[taskId].tLoadScreenTaskId].isActive) { - if (sPokedexView->currentPage == PAGE_INFO && !IsInfoScreenScrolling(gTasks[taskId].tTaskId) && TryDoInfoScreenScroll()) - sub_80BE9F8(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], gTasks[taskId].tTaskId); + // While active, handle scroll input + if (sPokedexView->currentPage == PAGE_INFO && !IsInfoScreenScrolling(gTasks[taskId].tLoadScreenTaskId) && TryDoInfoScreenScroll()) + StartInfoScreenScroll(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], gTasks[taskId].tLoadScreenTaskId); } else { + // Exiting, back to search results gTasks[taskId].func = Task_OpenSearchResults; } } @@ -2039,7 +2046,7 @@ static void Task_ClosePokedexFromSearchResultsStartMenu(u8 taskId) } } -#undef tTaskId +#undef tLoadScreenTaskId // For loading main pokedex page or pokedex search results static bool8 LoadPokedexListPage(u8 page) @@ -2586,7 +2593,7 @@ static u16 TryDoPokedexScroll(u16 selectedMon, u16 ignored) u16 startingPos; u8 scrollDir = 0; - if ((JOY_HELD(DPAD_UP)) && (selectedMon > 0)) + if (JOY_HELD(DPAD_UP) && (selectedMon > 0)) { scrollDir = 1; selectedMon = GetNextPosition(1, selectedMon, 0, sPokedexView->pokemonListCount - 1); @@ -2594,7 +2601,7 @@ static u16 TryDoPokedexScroll(u16 selectedMon, u16 ignored) CreateMonListEntry(1, selectedMon, ignored); PlaySE(SE_DEX_SCROLL); } - else if ((JOY_HELD(DPAD_DOWN)) && (selectedMon < sPokedexView->pokemonListCount - 1)) + else if (JOY_HELD(DPAD_DOWN) && (selectedMon < sPokedexView->pokemonListCount - 1)) { scrollDir = 2; selectedMon = GetNextPosition(0, selectedMon, 0, sPokedexView->pokemonListCount - 1); @@ -2602,7 +2609,7 @@ static u16 TryDoPokedexScroll(u16 selectedMon, u16 ignored) CreateMonListEntry(2, selectedMon, ignored); PlaySE(SE_DEX_SCROLL); } - else if ((JOY_NEW(DPAD_LEFT)) && (selectedMon > 0)) + else if (JOY_NEW(DPAD_LEFT) && (selectedMon > 0)) { startingPos = selectedMon; @@ -2613,7 +2620,7 @@ static u16 TryDoPokedexScroll(u16 selectedMon, u16 ignored) CreateMonSpritesAtPos(selectedMon, 0xE); PlaySE(SE_DEX_PAGE); } - else if ((JOY_NEW(DPAD_RIGHT)) && (selectedMon < sPokedexView->pokemonListCount - 1)) + else if (JOY_NEW(DPAD_RIGHT) && (selectedMon < sPokedexView->pokemonListCount - 1)) { startingPos = selectedMon; for (i = 0; i < 7; i++) @@ -2662,7 +2669,7 @@ static bool8 TryDoInfoScreenScroll(void) u16 nextPokemon; u16 selectedPokemon = sPokedexView->selectedPokemon; - if ((JOY_NEW(DPAD_UP)) && selectedPokemon) + if (JOY_NEW(DPAD_UP) && selectedPokemon) { nextPokemon = selectedPokemon; while (nextPokemon != 0) @@ -2685,7 +2692,7 @@ static bool8 TryDoInfoScreenScroll(void) return TRUE; } } - else if ((JOY_NEW(DPAD_DOWN)) && selectedPokemon < sPokedexView->pokemonListCount - 1) + else if (JOY_NEW(DPAD_DOWN) && selectedPokemon < sPokedexView->pokemonListCount - 1) { nextPokemon = selectedPokemon; while (nextPokemon < sPokedexView->pokemonListCount - 1) @@ -3002,16 +3009,16 @@ void SpriteCB_MoveMonForInfoScreen(struct Sprite *sprite) sprite->oam.affineMode = ST_OAM_AFFINE_OFF; sprite->x2 = 0; sprite->y2 = 0; - if (sprite->x != 48 || sprite->y != 56) + if (sprite->x != MON_PAGE_X || sprite->y != MON_PAGE_Y) { - if (sprite->x > 48) + if (sprite->x > MON_PAGE_X) sprite->x--; - if (sprite->x < 48) + if (sprite->x < MON_PAGE_X) sprite->x++; - if (sprite->y > 56) + if (sprite->y > MON_PAGE_Y) sprite->y--; - if (sprite->y < 56) + if (sprite->y < MON_PAGE_Y) sprite->y++; } else @@ -3165,7 +3172,12 @@ static void PrintInfoScreenText(const u8* str, u8 left, u8 top) AddTextPrinterParameterized4(0, 1, left, top, 0, 0, color, -1, str); } -#define tMonSpriteId data[4] +#define tScrolling data[0] +#define tMonSpriteDone data[1] +#define tBgLoaded data[2] +#define tSkipCry data[3] +#define tMonSpriteId data[4] +#define tTrainerSpriteId data[5] static u8 LoadInfoScreen(struct PokedexListItem* item, u8 monSpriteId) { @@ -3173,12 +3185,12 @@ static u8 LoadInfoScreen(struct PokedexListItem* item, u8 monSpriteId) sPokedexListItem = item; taskId = CreateTask(Task_LoadInfoScreen, 0); - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 1; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[3] = 0; + gTasks[taskId].tScrolling = FALSE; + gTasks[taskId].tMonSpriteDone = TRUE; // Already has sprite from list view + gTasks[taskId].tBgLoaded = FALSE; + gTasks[taskId].tSkipCry = FALSE; gTasks[taskId].tMonSpriteId = monSpriteId; - gTasks[taskId].data[5] = 255; + gTasks[taskId].tTrainerSpriteId = SPRITE_NONE; ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sInfoScreen_BgTemplate, ARRAY_COUNT(sInfoScreen_BgTemplate)); SetBgTilemapBuffer(3, AllocZeroed(BG_SCREEN_SIZE)); @@ -3193,19 +3205,19 @@ static u8 LoadInfoScreen(struct PokedexListItem* item, u8 monSpriteId) static bool8 IsInfoScreenScrolling(u8 taskId) { - if (gTasks[taskId].data[0] == 0 && gTasks[taskId].func == Task_HandleInfoScreenInput) + if (!gTasks[taskId].tScrolling && gTasks[taskId].func == Task_HandleInfoScreenInput) return FALSE; else return TRUE; } -static u8 sub_80BE9F8(struct PokedexListItem *item, u8 taskId) +static u8 StartInfoScreenScroll(struct PokedexListItem *item, u8 taskId) { sPokedexListItem = item; - gTasks[taskId].data[0] = 1; - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[3] = 0; + gTasks[taskId].tScrolling = TRUE; + gTasks[taskId].tMonSpriteDone = FALSE; + gTasks[taskId].tBgLoaded = FALSE; + gTasks[taskId].tSkipCry = FALSE; return taskId; } @@ -3223,9 +3235,9 @@ static void Task_LoadInfoScreen(u8 taskId) gPokedexVBlankCB = gMain.vblankCallback; SetVBlankCallback(NULL); r2 = 0; - if (gTasks[taskId].data[1] != 0) + if (gTasks[taskId].tMonSpriteDone) r2 += DISPCNT_OBJ_ON; - if (gTasks[taskId].data[2] != 0) + if (gTasks[taskId].tBgLoaded) r2 |= DISPCNT_BG1_ON; ResetOtherVideoRegisters(r2); gMain.state = 1; @@ -3237,7 +3249,7 @@ static void Task_LoadInfoScreen(u8 taskId) FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); PutWindowTilemap(WIN_INFO); PutWindowTilemap(WIN_FOOTPRINT); - PrintFootprint(WIN_FOOTPRINT, sPokedexListItem->dexNum); + DrawFootprint(WIN_FOOTPRINT, sPokedexListItem->dexNum); CopyWindowToVram(WIN_FOOTPRINT, 2); gMain.state++; break; @@ -3261,9 +3273,9 @@ static void Task_LoadInfoScreen(u8 taskId) gMain.state++; break; case 5: - if (gTasks[taskId].data[1] == 0) + if (!gTasks[taskId].tMonSpriteDone) { - gTasks[taskId].tMonSpriteId = (u16)CreateMonSpriteFromNationalDexNumber(sPokedexListItem->dexNum, 48, 56, 0); + gTasks[taskId].tMonSpriteId = (u16)CreateMonSpriteFromNationalDexNumber(sPokedexListItem->dexNum, MON_PAGE_X, MON_PAGE_Y, 0); gSprites[gTasks[taskId].tMonSpriteId].oam.priority = 0; } gMain.state++; @@ -3272,9 +3284,9 @@ static void Task_LoadInfoScreen(u8 taskId) { u32 preservedPalettes = 0; - if (gTasks[taskId].data[2] != 0) + if (gTasks[taskId].tBgLoaded) preservedPalettes = 0x14; // each bit represents a palette index - if (gTasks[taskId].data[1] != 0) + if (gTasks[taskId].tMonSpriteDone) preservedPalettes |= (1 << (gSprites[gTasks[taskId].tMonSpriteId].oam.paletteNum + 16)); BeginNormalPaletteFade(~preservedPalettes, 0, 16, 0, RGB_BLACK); SetVBlankCallback(gPokedexVBlankCB); @@ -3296,10 +3308,10 @@ static void Task_LoadInfoScreen(u8 taskId) if (!gPaletteFade.active) { gMain.state++; - if (gTasks[taskId].data[3] == 0) + if (!gTasks[taskId].tSkipCry) { StopCryAndClearCrySongs(); - PlayCry2(NationalPokedexNumToSpecies(sPokedexListItem->dexNum), 0, 0x7D, 0xA); + PlayCry2(NationalPokedexNumToSpecies(sPokedexListItem->dexNum), 0, 125, 10); } else { @@ -3312,10 +3324,10 @@ static void Task_LoadInfoScreen(u8 taskId) gMain.state++; break; case 10: - gTasks[taskId].data[0] = 0; - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = 1; - gTasks[taskId].data[3] = 1; + gTasks[taskId].tScrolling = FALSE; + gTasks[taskId].tMonSpriteDone = FALSE; // Reload next time screen comes up + gTasks[taskId].tBgLoaded = TRUE; + gTasks[taskId].tSkipCry = TRUE; gTasks[taskId].func = Task_HandleInfoScreenInput; gMain.state = 0; break; @@ -3343,7 +3355,7 @@ static void FreeInfoScreenWindowAndBgBuffers(void) static void Task_HandleInfoScreenInput(u8 taskId) { - if (gTasks[taskId].data[0] != 0) + if (gTasks[taskId].tScrolling) { // Scroll up/down BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); @@ -3395,8 +3407,8 @@ static void Task_HandleInfoScreenInput(u8 taskId) } return; } - if (((JOY_NEW(DPAD_LEFT)) - || ((JOY_NEW(L_BUTTON)) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) + if ((JOY_NEW(DPAD_LEFT) + || (JOY_NEW(L_BUTTON) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) && sPokedexView->selectedScreen > 0) { sPokedexView->selectedScreen--; @@ -3404,8 +3416,8 @@ static void Task_HandleInfoScreenInput(u8 taskId) PlaySE(SE_DEX_PAGE); return; } - if (((JOY_NEW(DPAD_RIGHT)) - || ((JOY_NEW(R_BUTTON)) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) + if ((JOY_NEW(DPAD_RIGHT) + || (JOY_NEW(R_BUTTON) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) && sPokedexView->selectedScreen < CANCEL_SCREEN) { sPokedexView->selectedScreen++; @@ -3554,7 +3566,7 @@ static void Task_LoadCryScreen(u8 taskId) gMain.state++; break; case 5: - gTasks[taskId].tMonSpriteId = CreateMonSpriteFromNationalDexNumber(sPokedexListItem->dexNum, 48, 56, 0); + gTasks[taskId].tMonSpriteId = CreateMonSpriteFromNationalDexNumber(sPokedexListItem->dexNum, MON_PAGE_X, MON_PAGE_Y, 0); gSprites[gTasks[taskId].tMonSpriteId].oam.priority = 0; gDexCryScreenState = 0; gMain.state++; @@ -3642,8 +3654,8 @@ static void Task_HandleCryScreenInput(u8 taskId) PlaySE(SE_PC_OFF); return; } - if ((JOY_NEW(DPAD_LEFT)) - || ((JOY_NEW(L_BUTTON)) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) + if (JOY_NEW(DPAD_LEFT) + || (JOY_NEW(L_BUTTON) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) { BeginNormalPaletteFade(PALETTES_ALL & ~(0x14), 0, 0, 0x10, RGB_BLACK); m4aMPlayContinue(&gMPlayInfo_BGM); @@ -3652,8 +3664,8 @@ static void Task_HandleCryScreenInput(u8 taskId) PlaySE(SE_DEX_PAGE); return; } - if ((JOY_NEW(DPAD_RIGHT)) - || ((JOY_NEW(R_BUTTON)) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) + if (JOY_NEW(DPAD_RIGHT) + || (JOY_NEW(R_BUTTON) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) { if (!sPokedexListItem->owned) { @@ -3758,7 +3770,7 @@ static void Task_LoadSizeScreen(u8 taskId) gSprites[spriteId].y2 = gPokedexEntries[sPokedexListItem->dexNum].trainerOffset; SetOamMatrix(1, gPokedexEntries[sPokedexListItem->dexNum].trainerScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].trainerScale); LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20); - gTasks[taskId].data[5] = spriteId; + gTasks[taskId].tTrainerSpriteId = spriteId; gMain.state++; break; case 6: @@ -3812,8 +3824,8 @@ static void Task_HandleSizeScreenInput(u8 taskId) gTasks[taskId].func = Task_SwitchScreensFromSizeScreen; PlaySE(SE_PC_OFF); } - else if ((JOY_NEW(DPAD_LEFT)) - || ((JOY_NEW(L_BUTTON)) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) + else if (JOY_NEW(DPAD_LEFT) + || (JOY_NEW(L_BUTTON) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_LR)) { BeginNormalPaletteFade(PALETTES_ALL & ~(0x14), 0, 0, 0x10, RGB_BLACK); sPokedexView->screenSwitchState = 2; @@ -3827,7 +3839,7 @@ static void Task_SwitchScreensFromSizeScreen(u8 taskId) if (!gPaletteFade.active) { FreeAndDestroyMonPicSprite(gTasks[taskId].tMonSpriteId); - FreeAndDestroyTrainerPicSprite(gTasks[taskId].data[5]); + FreeAndDestroyTrainerPicSprite(gTasks[taskId].tTrainerSpriteId); switch (sPokedexView->screenSwitchState) { default: @@ -3841,7 +3853,12 @@ static void Task_SwitchScreensFromSizeScreen(u8 taskId) } } +#undef tScrolling +#undef tMonSpriteDone +#undef tBgLoaded +#undef tSkipCry #undef tMonSpriteId +#undef tTrainerSpriteId static void LoadScreenSelectBarMain(u16 unused) { @@ -3959,7 +3976,7 @@ static void Task_DisplayCaughtMonDexPage(u8 taskId) FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); PutWindowTilemap(WIN_INFO); PutWindowTilemap(WIN_FOOTPRINT); - PrintFootprint(WIN_FOOTPRINT, gTasks[taskId].tDexNum); + DrawFootprint(WIN_FOOTPRINT, gTasks[taskId].tDexNum); CopyWindowToVram(WIN_FOOTPRINT, 2); ResetPaletteFade(); LoadPokedexBgPalette(FALSE); @@ -3976,7 +3993,7 @@ static void Task_DisplayCaughtMonDexPage(u8 taskId) gTasks[taskId].tState++; break; case 4: - spriteId = CreateMonSpriteFromNationalDexNumber(dexNum, 48, 56, 0); + spriteId = CreateMonSpriteFromNationalDexNumber(dexNum, MON_PAGE_X, MON_PAGE_Y, 0); gSprites[spriteId].oam.priority = 0; BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); SetVBlankCallback(gPokedexVBlankCB); @@ -4174,7 +4191,7 @@ static void PrintMonWeight(u16 weight, u8 left, u8 top) if ((buffer[i] = (lbs / 100000) + CHAR_0) == CHAR_0 && !output) { - buffer[i++] = 0x77; + buffer[i++] = CHAR_SPACER; } else { @@ -4185,7 +4202,7 @@ static void PrintMonWeight(u16 weight, u8 left, u8 top) lbs %= 100000; if ((buffer[i] = (lbs / 10000) + CHAR_0) == CHAR_0 && !output) { - buffer[i++] = 0x77; + buffer[i++] = CHAR_SPACER; } else { @@ -4196,7 +4213,7 @@ static void PrintMonWeight(u16 weight, u8 left, u8 top) lbs %= 10000; if ((buffer[i] = (lbs / 1000) + CHAR_0) == CHAR_0 && !output) { - buffer[i++] = 0x77; + buffer[i++] = CHAR_SPACER; } else { @@ -4525,7 +4542,7 @@ static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) result = b / 1000; if (result == 0) { - str[0] = 0x77; + str[0] = CHAR_SPACER; outputted = FALSE; } else @@ -4537,7 +4554,7 @@ static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) result = (b % 1000) / 100; if (result == 0 && !outputted) { - str[1] = 0x77; + str[1] = CHAR_SPACER; outputted = FALSE; } else @@ -4553,36 +4570,35 @@ static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) PrintInfoSubMenuText(windowId, str, left, top); } -static void PrintFootprint(u8 windowId, u16 dexNum) +static void DrawFootprint(u8 windowId, u16 dexNum) { - u8 image[32 * 4]; - const u8 * r12 = gMonFootprintTable[NationalPokedexNumToSpecies(dexNum)]; - u16 r5 = 0; - u16 i; - u16 j; + u8 footprint[32 * 4]; + const u8 * footprintGfx = gMonFootprintTable[NationalPokedexNumToSpecies(dexNum)]; + u16 tileIdx = 0; + u16 i, j; for (i = 0; i < 32; i++) { - u8 r3 = r12[i]; + u8 tile = footprintGfx[i]; for (j = 0; j < 4; j++) { - u8 value = ((r3 >> (2 * j)) & 1 ? 2 : 0); - if ((2 << (2 * j)) & r3) + u8 value = ((tile >> (2 * j)) & 1 ? 2 : 0); + if (tile & (2 << (2 * j))) value |= 0x20; - image[r5] = value; - r5++; + footprint[tileIdx] = value; + tileIdx++; } } - CopyToWindowPixelBuffer(windowId, image, sizeof(image), 0); + CopyToWindowPixelBuffer(windowId, footprint, sizeof(footprint), 0); } -// Unused -void sub_80C0DC0(u16 a, u16 b) +// Unused Ruby/Sapphire function. +static void RS_DrawFootprint(u16 offset, u16 tileNum) { - *(u16 *)(VRAM + a * 0x800 + 0x232) = 0xF000 + b + 0; - *(u16 *)(VRAM + a * 0x800 + 0x234) = 0xF000 + b + 1; - *(u16 *)(VRAM + a * 0x800 + 0x272) = 0xF000 + b + 2; - *(u16 *)(VRAM + a * 0x800 + 0x274) = 0xF000 + b + 3; + *(u16 *)(VRAM + offset * 0x800 + 0x232) = 0xF000 + tileNum + 0; + *(u16 *)(VRAM + offset * 0x800 + 0x234) = 0xF000 + tileNum + 1; + *(u16 *)(VRAM + offset * 0x800 + 0x272) = 0xF000 + tileNum + 2; + *(u16 *)(VRAM + offset * 0x800 + 0x274) = 0xF000 + tileNum + 3; } static u16 GetNextPosition(u8 direction, u16 position, u16 min, u16 max) @@ -4921,7 +4937,7 @@ static void Task_HandleSearchTopBarInput(u8 taskId) } return; } - if ((JOY_NEW(DPAD_LEFT)) && gTasks[taskId].tTopBarItem > SEARCH_TOPBAR_SEARCH) + if (JOY_NEW(DPAD_LEFT) && gTasks[taskId].tTopBarItem > SEARCH_TOPBAR_SEARCH) { PlaySE(SE_DEX_PAGE); gTasks[taskId].tTopBarItem--; @@ -4929,7 +4945,7 @@ static void Task_HandleSearchTopBarInput(u8 taskId) CopyWindowToVram(0, 2); CopyBgTilemapBufferToVram(3); } - if ((JOY_NEW(DPAD_RIGHT)) && gTasks[taskId].tTopBarItem < SEARCH_TOPBAR_CANCEL) + if (JOY_NEW(DPAD_RIGHT) && gTasks[taskId].tTopBarItem < SEARCH_TOPBAR_CANCEL) { PlaySE(SE_DEX_PAGE); gTasks[taskId].tTopBarItem++; @@ -5010,7 +5026,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) return; } - if ((JOY_NEW(DPAD_LEFT)) && movementMap[gTasks[taskId].tMenuItem][0] != 0xFF) + if (JOY_NEW(DPAD_LEFT) && movementMap[gTasks[taskId].tMenuItem][0] != 0xFF) { PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][0]; @@ -5018,7 +5034,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) CopyWindowToVram(0, 2); CopyBgTilemapBufferToVram(3); } - if ((JOY_NEW(DPAD_RIGHT)) && movementMap[gTasks[taskId].tMenuItem][1] != 0xFF) + if (JOY_NEW(DPAD_RIGHT) && movementMap[gTasks[taskId].tMenuItem][1] != 0xFF) { PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][1]; @@ -5026,7 +5042,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) CopyWindowToVram(0, 2); CopyBgTilemapBufferToVram(3); } - if ((JOY_NEW(DPAD_UP)) && movementMap[gTasks[taskId].tMenuItem][2] != 0xFF) + if (JOY_NEW(DPAD_UP) && movementMap[gTasks[taskId].tMenuItem][2] != 0xFF) { PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][2]; @@ -5034,7 +5050,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) CopyWindowToVram(0, 2); CopyBgTilemapBufferToVram(3); } - if ((JOY_NEW(DPAD_DOWN)) && movementMap[gTasks[taskId].tMenuItem][3] != 0xFF) + if (JOY_NEW(DPAD_DOWN) && movementMap[gTasks[taskId].tMenuItem][3] != 0xFF) { PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][3]; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index bd09106585f0..3911f52f0346 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -6980,7 +6980,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode) *(txtPtr)++ = TEXT_COLOR_DARK_GRAY; *(txtPtr)++ = TEXT_COLOR_WHITE; *(txtPtr)++ = TEXT_COLOR_LIGHT_GRAY; - *(txtPtr)++ = CHAR_GENDERLESS; + *(txtPtr)++ = CHAR_SPACER; // Genderless break; } diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index d2424629a216..a01b93a80333 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -372,7 +372,7 @@ u8 *CopyMonConditionNameGender(u8 *str, u16 id, bool8 arg3) switch (gender) { default: - *(str_++) = CHAR_GENDERLESS; + *(str_++) = CHAR_SPACER; // Genderless break; case MON_MALE: *(str_++) = EXT_CTRL_CODE_BEGIN; From a950f9c7712ed8794e385bb7ed6b9eff360b4260 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 21:51:11 -0400 Subject: [PATCH 317/762] Clean up international_string_util --- include/international_string_util.h | 8 ++--- src/international_string_util.c | 49 ++++++++++++++--------------- src/player_pc.c | 2 +- src/pokenav_conditions_3.c | 4 +-- src/pokenav_match_call_1.c | 6 ++-- src/pokenav_ribbons_1.c | 4 +-- src/tv.c | 2 +- 7 files changed, 36 insertions(+), 39 deletions(-) diff --git a/include/international_string_util.h b/include/international_string_util.h index fe7e85b41ff3..54f4c008fff4 100644 --- a/include/international_string_util.h +++ b/include/international_string_util.h @@ -10,15 +10,15 @@ int GetStringCenterAlignXOffset(int fontId, const u8 *str, int totalWidth); int GetStringRightAlignXOffset(int fontId, const u8 *str, int totalWidth); int GetStringCenterAlignXOffsetWithLetterSpacing(int fontId, const u8 *str, int totalWidth, int letterSpacing); int GetStringWidthDifference(int fontId, const u8 *str, int totalWidth, int letterSpacing); -int GetMaxWidthInMenuTable(const struct MenuAction *str, int arg1); -int sub_81DB3D8(const struct MenuAction *str, const u8* arg1, int arg2); +int GetMaxWidthInMenuTable(const struct MenuAction *actions, int numActions); +int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8* actionIds, int numActions); int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu); void CopyMonCategoryText(int dexNum, u8 *dest); -u8 *sub_81DB494(u8 *str, int fontId, const u8 *str2, int totalStringWidth); +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 sub_81DB604(u8 *); +int GetNicknameLanguage(u8 *); void sub_81DB620(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows); #endif // GUARD_INTERNATIONAL_STRING_UTIL_H diff --git a/src/international_string_util.c b/src/international_string_util.c index eb2ec16e7011..b2ee9743ea0d 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -34,32 +34,32 @@ int GetStringWidthDifference(int fontId, const u8 *str, int totalWidth, int lett return 0; } -int GetMaxWidthInMenuTable(const struct MenuAction *str, int numActions) +int GetMaxWidthInMenuTable(const struct MenuAction *actions, int numActions) { - int i, var; + int i, maxWidth; - for (var = 0, i = 0; i < numActions; i++) + for (maxWidth = 0, i = 0; i < numActions; i++) { - int stringWidth = GetStringWidth(1, str[i].text, 0); - if (stringWidth > var) - var = stringWidth; + int stringWidth = GetStringWidth(1, actions[i].text, 0); + if (stringWidth > maxWidth) + maxWidth = stringWidth; } - return ConvertPixelWidthToTileWidth(var); + return ConvertPixelWidthToTileWidth(maxWidth); } -int sub_81DB3D8(const struct MenuAction *str, const u8* arg1, int arg2) +int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8* actionIds, int numActions) { - int i, var; + int i, maxWidth; - for (var = 0, i = 0; i < arg2; i++) + for (maxWidth = 0, i = 0; i < numActions; i++) { - int stringWidth = GetStringWidth(1, str[arg1[i]].text, 0); - if (stringWidth > var) - var = stringWidth; + int stringWidth = GetStringWidth(1, actions[actionIds[i]].text, 0); + if (stringWidth > maxWidth) + maxWidth = stringWidth; } - return ConvertPixelWidthToTileWidth(var); + return ConvertPixelWidthToTileWidth(maxWidth); } int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu) @@ -93,32 +93,29 @@ void CopyMonCategoryText(int dexNum, u8 *dest) StringCopy(str + 1, gText_Pokemon); } -u8 *sub_81DB494(u8 *str, int fontId, const u8 *str2, int totalStringWidth) +u8 *GetStringClearToWidth(u8 *dest, int fontId, const u8 *str, int totalStringWidth) { u8 *buffer; int width; int clearWidth; - if (str2) + if (str) { - buffer = StringCopy(str, str2); - width = GetStringWidth(fontId, str2, 0); + buffer = StringCopy(dest, str); + width = GetStringWidth(fontId, str, 0); } else { - buffer = str; + buffer = dest; width = 0; } clearWidth = totalStringWidth - width; if (clearWidth > 0) { - *buffer = EXT_CTRL_CODE_BEGIN; - buffer++; - *buffer = EXT_CTRL_CODE_CLEAR; - buffer++; - *buffer = clearWidth; - buffer++; + *(buffer++) = EXT_CTRL_CODE_BEGIN; + *(buffer++) = EXT_CTRL_CODE_CLEAR; + *(buffer++) = clearWidth; *buffer = EOS; } @@ -209,7 +206,7 @@ void TVShowConvertInternationalString(u8 *dest, const u8 *src, int language) ConvertInternationalString(dest, language); } -int sub_81DB604(u8 *str) +int GetNicknameLanguage(u8 *str) { if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN) return LANGUAGE_JAPANESE; diff --git a/src/player_pc.c b/src/player_pc.c index 507fc6558214..cc9d33067f6d 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -396,7 +396,7 @@ static void InitPlayerPCMenu(u8 taskId) else // Bedroom PC windowTemplate = sWindowTemplates_MainMenus[WIN_MAIN_MENU_BEDROOM]; - windowTemplate.width = sub_81DB3D8(sPlayerPCMenuActions, sTopMenuOptionOrder, sTopMenuNumOptions); + windowTemplate.width = GetMaxWidthInSubsetOfMenuTable(sPlayerPCMenuActions, sTopMenuOptionOrder, sTopMenuNumOptions); tWindowId = AddWindow(&windowTemplate); SetStandardWindowBorderStyle(tWindowId, 0); sub_81995E4(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 219bb5a0731c..53987d11dd85 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -705,7 +705,7 @@ static void PrintSearchMonListItem(struct PokenavMonList * item, u8 * dest) } StringGetEnd10(gStringVar3); - dest = sub_81DB494(dest, 1, gStringVar3, 60); + dest = GetStringClearToWidth(dest, 1, gStringVar3, 60); switch (gender) { default: @@ -723,5 +723,5 @@ static void PrintSearchMonListItem(struct PokenavMonList * item, u8 * dest) *s++ = CHAR_EXTRA_SYMBOL; *s++ = CHAR_LV_2; ConvertIntToDecimalStringN(s, level, STR_CONV_MODE_LEFT_ALIGN, 3); - sub_81DB494(dest, 1, gStringVar1, 40); + GetStringClearToWidth(dest, 1, gStringVar1, 40); } diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index e9d4c0b6739b..64957995d589 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -413,12 +413,12 @@ void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntries *matchCallEntry, if (className && trainerName) { - u8 *str2 = sub_81DB494(str, 7, className, 69); - sub_81DB494(str2, 7, trainerName, 51); + u8 *str2 = GetStringClearToWidth(str, 7, className, 69); + GetStringClearToWidth(str2, 7, trainerName, 51); } else { - sub_81DB494(str, 7, NULL, 120); + GetStringClearToWidth(str, 7, NULL, 120); } } diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index 69326ad23bf8..a8aaafa354d4 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -722,7 +722,7 @@ static void BufferRibbonMonInfoText(struct PokenavMonList * item0, u8 * dest) } StringGetEnd10(gStringVar3); - dest = sub_81DB494(dest, 1, gStringVar3, 60); + dest = GetStringClearToWidth(dest, 1, gStringVar3, 60); switch (gender) { default: @@ -741,6 +741,6 @@ static void BufferRibbonMonInfoText(struct PokenavMonList * item0, u8 * dest) *s++ = CHAR_EXTRA_SYMBOL; *s++ = CHAR_LV_2; ConvertIntToDecimalStringN(s, level, STR_CONV_MODE_LEFT_ALIGN, 3); - dest = sub_81DB494(dest, 1, gStringVar1, 54); + dest = GetStringClearToWidth(dest, 1, gStringVar1, 54); ConvertIntToDecimalStringN(dest, item->data, STR_CONV_MODE_RIGHT_ALIGN, 2); } diff --git a/src/tv.c b/src/tv.c index 45292393385f..310163e94ddb 100644 --- a/src/tv.c +++ b/src/tv.c @@ -1155,7 +1155,7 @@ void TryPutPokemonTodayOnAir(void) show->pokemonToday.ball = itemLastUsed; StringCopy(show->pokemonToday.playerName, gSaveBlock2Ptr->playerName); StringCopy(show->pokemonToday.nickname, gBattleResults.caughtMonNick); - language2 = sub_81DB604(show->pokemonToday.nickname); + language2 = GetNicknameLanguage(show->pokemonToday.nickname); StripExtCtrlCodes(show->pokemonToday.nickname); show->pokemonToday.species = gBattleResults.caughtMonSpecies; StorePlayerIdInRecordMixShow(show); From ed6fdd743f41185a1ebd030fb9d9ea36e37a3ced Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 17 Oct 2021 22:04:08 -0400 Subject: [PATCH 318/762] Some pokemon_icon clean up --- include/pokemon_icon.h | 3 +-- src/pokemon_icon.c | 44 +++++++++++++++++------------------- src/pokemon_storage_system.c | 2 +- 3 files changed, 23 insertions(+), 26 deletions(-) diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index c0f823bb1e5f..4731da90e9ba 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -4,7 +4,7 @@ extern const u8 gMonIconPaletteIndices[]; const u8 *GetMonIconTiles(u16 species, bool32); -void sub_80D304C(u16 offset); +void TryLoadAllMonIconPalettesAtOffset(u16 offset); u8 GetValidMonIconPalIndex(u16 species); const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo); const u16 *GetValidMonIconPalettePtr(u16 speciesId); @@ -20,7 +20,6 @@ void FreeAndDestroyMonIconSprite(struct Sprite *sprite); u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality, bool32 handleDeoxys); u8 UpdateMonIconFrame(struct Sprite *sprite); void LoadMonIconPalette(u16 species); -void sub_80D328C(struct Sprite *sprite); void SpriteCB_MonIcon(struct Sprite *sprite); void SetPartyHPBarSprite(struct Sprite *sprite, u8 animNum); u8 GetMonIconPaletteIndexFromSpecies(u16 species); diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 3cd80cf0dbec..58d0b3420012 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -19,10 +19,8 @@ struct MonIconSpriteTemplate u16 paletteTag; }; -// static functions static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *, s16, s16, u8); - -// .rodata +static void FreeAndDestroyMonIconSprite_(struct Sprite *sprite); const u8 *const gMonIconTable[] = { @@ -925,7 +923,7 @@ const struct SpritePalette gMonIconPaletteTable[] = { gMonIconPalettes[5], POKE_ICON_BASE_PAL_TAG + 5 }, }; -const struct OamData sMonIconOamData = +static const struct OamData sMonIconOamData = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -976,7 +974,7 @@ static const union AnimCmd sAnim_4[] = ANIMCMD_JUMP(0), }; -const union AnimCmd *const sMonIconAnims[] = +static const union AnimCmd *const sMonIconAnims[] = { sAnim_0, sAnim_1, @@ -997,34 +995,34 @@ static const union AffineAnimCmd sAffineAnim_1[] = AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const sMonIconAffineAnims[] = +static const union AffineAnimCmd *const sMonIconAffineAnims[] = { sAffineAnim_0, sAffineAnim_1, }; -const u16 sSpriteImageSizes[3][4] = +static const u16 sSpriteImageSizes[3][4] = { [ST_OAM_SQUARE] = { - [SPRITE_SIZE(8x8)] = 0x20, - [SPRITE_SIZE(16x16)] = 0x80, - [SPRITE_SIZE(32x32)] = 0x200, - [SPRITE_SIZE(64x64)] = 0x800, + [SPRITE_SIZE(8x8)] = 8 * 8 / 2, + [SPRITE_SIZE(16x16)] = 16 * 16 / 2, + [SPRITE_SIZE(32x32)] = 32 * 32 / 2, + [SPRITE_SIZE(64x64)] = 64 * 64 / 2, }, [ST_OAM_H_RECTANGLE] = { - [SPRITE_SIZE(16x8)] = 0x40, - [SPRITE_SIZE(32x8)] = 0x80, - [SPRITE_SIZE(32x16)] = 0x100, - [SPRITE_SIZE(64x32)] = 0x400, + [SPRITE_SIZE(16x8)] = 16 * 8 / 2, + [SPRITE_SIZE(32x8)] = 32 * 8 / 2, + [SPRITE_SIZE(32x16)] = 32 * 16 / 2, + [SPRITE_SIZE(64x32)] = 64 * 32 / 2, }, [ST_OAM_V_RECTANGLE] = { - [SPRITE_SIZE(8x16)] = 0x40, - [SPRITE_SIZE(8x32)] = 0x80, - [SPRITE_SIZE(16x32)] = 0x100, - [SPRITE_SIZE(32x64)] = 0x400, + [SPRITE_SIZE(8x16)] = 8 * 16 / 2, + [SPRITE_SIZE(8x32)] = 8 * 32 / 2, + [SPRITE_SIZE(16x32)] = 16 * 32 / 2, + [SPRITE_SIZE(32x64)] = 32 * 64 / 2, }, }; @@ -1131,7 +1129,7 @@ const u8 *GetMonIconPtr(u16 species, u32 personality, bool32 handleDeoxys) void FreeAndDestroyMonIconSprite(struct Sprite *sprite) { - sub_80D328C(sprite); + FreeAndDestroyMonIconSprite_(sprite); } void LoadMonIconPalettes(void) @@ -1198,7 +1196,7 @@ const u8* GetMonIconTiles(u16 species, bool32 handleDeoxys) return iconSprite; } -void sub_80D304C(u16 offset) +void TryLoadAllMonIconPalettesAtOffset(u16 offset) { s32 i; const struct SpritePalette* monIconPalettePtr; @@ -1206,7 +1204,7 @@ void sub_80D304C(u16 offset) if (offset <= 0xA0) { monIconPalettePtr = gMonIconPaletteTable; - for(i = 5; i >= 0; i--) + for(i = ARRAY_COUNT(gMonIconPaletteTable) - 1; i >= 0; i--) { LoadPalette(monIconPalettePtr->data, offset, 0x20); offset += 0x10; @@ -1294,7 +1292,7 @@ static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *iconTemplate, s16 x, return spriteId; } -void sub_80D328C(struct Sprite *sprite) +static void FreeAndDestroyMonIconSprite_(struct Sprite *sprite) { struct SpriteFrameImage image = { NULL, sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] }; sprite->images = ℑ diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 3911f52f0346..e18a6db76b8a 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -8177,7 +8177,7 @@ static bool8 MultiMove_Start(void) { case 0: HideBg(0); - sub_80D304C(0x80); + TryLoadAllMonIconPalettesAtOffset(0x80); sMultiMove->state++; break; case 1: From db8ce5d7f9429e4054267617896f66daa2f56633 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Oct 2021 00:08:36 -0400 Subject: [PATCH 319/762] Clean up mauville_old_man, drop ScrSpecial prefix --- .../MauvilleCity_PokemonCenter_1F/scripts.inc | 2 +- data/scripts/mauville_man.inc | 53 +- data/specials.inc | 44 +- include/constants/global.h | 1 + include/global.h | 2 +- include/mauville_old_man.h | 2 +- include/wild_encounter.h | 1 - src/mauville_old_man.c | 805 +++++++++--------- src/trader.c | 12 +- 9 files changed, 449 insertions(+), 473 deletions(-) diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc index 4347c4773442..463d652b3b8f 100644 --- a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc @@ -12,7 +12,7 @@ MauvilleCity_PokemonCenter_1F_OnTransition: end MauvilleCity_PokemonCenter_1F_EventScript_SetMauvilleOldManGfx:: - special ScrSpecial_SetMauvilleOldManObjEventGfx + special SetMauvilleOldManObjEventGfx end MauvilleCity_PokemonCenter_1F_EventScript_Nurse:: diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc index a9c008e5ecc3..b34f84e8e258 100644 --- a/data/scripts/mauville_man.inc +++ b/data/scripts/mauville_man.inc @@ -1,5 +1,5 @@ MauvilleCity_PokemonCenter_1F_EventScript_MauvilleOldMan:: - special ScrSpecial_GetCurrentMauvilleMan + special Script_GetCurrentMauvilleMan switch VAR_RESULT case MAUVILLE_MAN_BARD, MauvilleCity_PokemonCenter_1F_EventScript_Bard case MAUVILLE_MAN_HIPSTER, MauvilleCity_PokemonCenter_1F_EventScript_Hipster @@ -21,9 +21,9 @@ MauvilleCity_PokemonCenter_1F_EventScript_Bard:: MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: setvar VAR_0x8004, 0 - special ScrSpecial_PlayBardSong + special PlayBardSong delay 60 - special ScrSpecial_HasBardSongBeenChanged + special HasBardSongBeenChanged compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_WishICouldPlaySongForOthers, MSGBOX_DEFAULT @@ -52,12 +52,12 @@ MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_LetMeSingItForYou, MSGBOX_DEFAULT setvar VAR_0x8004, 1 - special ScrSpecial_PlayBardSong + special PlayBardSong delay 60 msgbox MauvilleCity_PokemonCenter_1F_Text_ThatHowYouWantedSongToGo, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics - special ScrSpecial_SaveBardSongLyrics + special SaveBardSongLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_IllSingThisSongForAWhile, MSGBOX_DEFAULT release end @@ -73,7 +73,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: faceplayer setflag FLAG_SYS_HIPSTER_MEET msgbox MauvilleCity_PokemonCenter_1F_Text_TeachWhatsHipAndHappening, MSGBOX_DEFAULT - special ScrSpecial_GetHipsterSpokenFlag + special GetHipsterSpokenFlag compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord msgbox MauvilleCity_PokemonCenter_1F_Text_IAlreadyTaughtYou, MSGBOX_DEFAULT @@ -81,7 +81,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: end MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: - special ScrSpecial_HipsterTeachWord + special HipsterTryTeachWord compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TeachWord msgbox MauvilleCity_PokemonCenter_1F_Text_IveGotNothingNewToTeach, MSGBOX_DEFAULT @@ -90,7 +90,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: MauvilleCity_PokemonCenter_1F_EventScript_TeachWord:: msgbox MauvilleCity_PokemonCenter_1F_Text_HaveYouHeardOfPhrase, MSGBOX_DEFAULT - special ScrSpecial_SetHipsterSpokenFlag + special SetHipsterSpokenFlag release end @@ -160,7 +160,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Trader:: msgbox MauvilleCity_PokemonCenter_1F_Text_WantToTradeDecor, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineTrade - special ScrSpecial_GetTraderTradedFlag + special GetTraderTradedFlag compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded message MauvilleCity_PokemonCenter_1F_Text_PickADecorItem @@ -179,7 +179,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded:: end MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: - special ScrSpecial_TraderMenuGetDecoration + special TraderMenuGetDecoration waitstate compare VAR_0x8004, 0 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelPickDecor @@ -188,7 +188,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: msgbox MauvilleCity_PokemonCenter_1F_Text_OnceBelongedToPlayerDoYouWantIt, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_PickDifferentDecor - special ScrSpecial_DoesPlayerHaveNoDecorations + special DoesPlayerHaveNoDecorations compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive @@ -218,19 +218,19 @@ MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor:: MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive:: msgbox MauvilleCity_PokemonCenter_1F_Text_PickTheDecorToTrade, MSGBOX_DEFAULT - special ScrSpecial_TraderMenuGiveDecoration + special TraderShowDecorationMenu waitstate compare VAR_0x8006, 0 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelGiveDecor compare VAR_0x8006, 0xFFFF goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DecorInUse - special ScrSpecial_IsDecorationFull + special IsDecorationCategoryFull compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_NoRoomForDecor msgbox MauvilleCity_PokemonCenter_1F_Text_SoWellTradeTheseDecor, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive - special ScrSpecial_TraderDoDecorationTrade + special TraderDoDecorationTrade msgbox MauvilleCity_PokemonCenter_1F_Text_SendDecorToYourPC, MSGBOX_DEFAULT release end @@ -818,20 +818,20 @@ MauvilleCity_PokemonCenter_1F_EventScript_Storyteller:: msgbox MauvilleCity_PokemonCenter_1F_Text_WillYouHearMyTale, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller - specialvar VAR_RESULT, ScrSpecial_StorytellerGetFreeStorySlot + specialvar VAR_RESULT, StorytellerGetFreeStorySlot compare VAR_RESULT, 0 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales message MauvilleCity_PokemonCenter_1F_Text_WhichTaleToTell waitmessage - special ScrSpecial_StorytellerStoryListMenu + special StorytellerStoryListMenu waitstate compare VAR_RESULT, 0 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection setvar VAR_0x8008, 1 - special ScrSpecial_StorytellerDisplayStory + special Script_StorytellerDisplayStory waitmessage waitbuttonpress - specialvar VAR_RESULT, ScrSpecial_StorytellerUpdateStat + specialvar VAR_RESULT, StorytellerUpdateStat compare VAR_RESULT, 0 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales goto MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale @@ -842,7 +842,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection:: MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_CouldThereBeOtherLegends, MSGBOX_DEFAULT - specialvar VAR_RESULT, ScrSpecial_HasStorytellerAlreadyRecorded + specialvar VAR_RESULT, HasStorytellerAlreadyRecorded compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd goto MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales @@ -853,7 +853,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_HaveYouAnyLegendaryTales, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller - specialvar VAR_RESULT, ScrSpecial_StorytellerInitializeRandomStat + specialvar VAR_RESULT, Script_StorytellerInitializeRandomStat compare VAR_RESULT, 1 goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale msgbox MauvilleCity_PokemonCenter_1F_Text_NotWorthyOfLegend, MSGBOX_DEFAULT @@ -909,7 +909,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Giddy:: end MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: - special ScrSpecial_GiddyShouldTellAnotherTale + special GiddyShouldTellAnotherTale compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale compare VAR_RESULT, FALSE @@ -917,7 +917,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: end MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale:: - special ScrSpecial_GiddyShouldTellAnotherTale + special GiddyShouldTellAnotherTale compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale compare VAR_RESULT, FALSE @@ -929,15 +929,16 @@ MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale:: goto MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale end -@ Regardless of whether yes or no is selected below, Giddy will continue to tell stories until he's told 10 +@ Giddy will continue to tell stories regardless of whether yes or no is selected below. +@ Each story there is a 10% chance it will be his last. Otherwise he will stop at 10 stories. MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale:: - special ScrSpecial_GenerateGiddyLine + special GenerateGiddyLine special ShowFieldMessageStringVar4 waitmessage yesnobox 20, 8 - compare VAR_RESULT, 1 + compare VAR_RESULT, YES goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale - compare VAR_RESULT, 0 + compare VAR_RESULT, NO goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale end diff --git a/data/specials.inc b/data/specials.inc index 81b25c14d4d1..0b053b7742b8 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -108,28 +108,28 @@ gSpecials:: def_special DoWateringBerryTreeAnim def_special ShowEasyChatScreen def_special ShowEasyChatProfile - def_special ScrSpecial_GetCurrentMauvilleMan - def_special ScrSpecial_HasBardSongBeenChanged - def_special ScrSpecial_SaveBardSongLyrics - def_special ScrSpecial_GetHipsterSpokenFlag - def_special ScrSpecial_SetHipsterSpokenFlag - def_special ScrSpecial_HipsterTeachWord - def_special ScrSpecial_PlayBardSong - def_special ScrSpecial_SetMauvilleOldManObjEventGfx - def_special ScrSpecial_GenerateGiddyLine - def_special ScrSpecial_GiddyShouldTellAnotherTale - def_special ScrSpecial_StorytellerGetFreeStorySlot - def_special ScrSpecial_StorytellerDisplayStory - def_special ScrSpecial_StorytellerStoryListMenu - def_special ScrSpecial_StorytellerUpdateStat - def_special ScrSpecial_StorytellerInitializeRandomStat - def_special ScrSpecial_HasStorytellerAlreadyRecorded - def_special ScrSpecial_TraderMenuGetDecoration - def_special ScrSpecial_GetTraderTradedFlag - def_special ScrSpecial_DoesPlayerHaveNoDecorations - def_special ScrSpecial_IsDecorationFull - def_special ScrSpecial_TraderMenuGiveDecoration - def_special ScrSpecial_TraderDoDecorationTrade + def_special Script_GetCurrentMauvilleMan + def_special HasBardSongBeenChanged + def_special SaveBardSongLyrics + def_special GetHipsterSpokenFlag + def_special SetHipsterSpokenFlag + def_special HipsterTryTeachWord + def_special PlayBardSong + def_special SetMauvilleOldManObjEventGfx + def_special GenerateGiddyLine + def_special GiddyShouldTellAnotherTale + def_special StorytellerGetFreeStorySlot + def_special Script_StorytellerDisplayStory + def_special StorytellerStoryListMenu + def_special StorytellerUpdateStat + def_special Script_StorytellerInitializeRandomStat + def_special HasStorytellerAlreadyRecorded + def_special TraderMenuGetDecoration + def_special GetTraderTradedFlag + def_special DoesPlayerHaveNoDecorations + def_special IsDecorationCategoryFull + def_special TraderShowDecorationMenu + def_special TraderDoDecorationTrade def_special GetSeedotSizeRecordInfo def_special CompareSeedotSize def_special GetLotadSizeRecordInfo diff --git a/include/constants/global.h b/include/constants/global.h index 1cece79753b8..6d3fa936d6d9 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -95,6 +95,7 @@ #define BARD_SONG_LENGTH 6 #define NUM_STORYTELLER_TALES 4 #define NUM_TRADER_ITEMS 4 +#define GIDDY_MAX_TALES 10 #define OPTIONS_BUTTON_MODE_NORMAL 0 #define OPTIONS_BUTTON_MODE_LR 1 diff --git a/include/global.h b/include/global.h index d14aa60f43fe..dcec2c4dbf40 100644 --- a/include/global.h +++ b/include/global.h @@ -639,7 +639,7 @@ struct MauvilleManGiddy /*0x00*/ u8 id; /*0x01*/ u8 taleCounter; /*0x02*/ u8 questionNum; - /*0x04*/ u16 randomWords[10]; + /*0x04*/ u16 randomWords[GIDDY_MAX_TALES]; /*0x18*/ u8 questionList[8]; /*0x20*/ u8 language; }; /*size = 0x2C*/ diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h index 603d585dadc6..23a3cabfb45c 100644 --- a/include/mauville_old_man.h +++ b/include/mauville_old_man.h @@ -5,7 +5,7 @@ extern struct BardSong gBardSong; void SetMauvilleOldMan(void); u8 GetCurrentMauvilleOldMan(void); -void ScrSpecial_SetMauvilleOldManObjEventGfx(void); +void SetMauvilleOldManObjEventGfx(void); u8 sub_81201C8(void); void SanitizeMauvilleOldManForRuby(OldMan *dest); void sub_8120670(void); diff --git a/include/wild_encounter.h b/include/wild_encounter.h index 55bbaa7dde75..09525beff96b 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -33,7 +33,6 @@ extern const struct WildPokemonHeader gWildMonHeaders[]; void DisableWildEncounters(bool8 disabled); bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavior); -void ScrSpecial_RockSmashWildEncounter(void); bool8 SweetScentWildEncounter(void); bool8 DoesCurrentMapHaveFishingMons(void); void FishingWildEncounter(u8 rod); diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index d3c41236ce8a..d202bc638f0e 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -21,12 +21,11 @@ #include "field_message_box.h" #include "script_menu.h" #include "trader.h" +#include "m4a.h" #include "constants/mauville_old_man.h" #define CHAR_SONG_WORD_SEPARATOR 0x37 -extern struct MusicPlayerInfo gMPlayInfo_SE2; - static void InitGiddyTaleList(void); static void StartBardSong(bool8 useTemporaryLyrics); static void Task_BardSong(u8 taskId); @@ -120,46 +119,41 @@ void SetMauvilleOldMan(void) // Determine man based on the last digit of the player's trainer ID. switch ((trainerId % 10) / 2) { - case MAUVILLE_MAN_BARD: - SetupBard(); - break; - case MAUVILLE_MAN_HIPSTER: - SetupHipster(); - break; - case MAUVILLE_MAN_TRADER: - SetupTrader(); - break; - case MAUVILLE_MAN_STORYTELLER: - SetupStoryteller(); - break; - case MAUVILLE_MAN_GIDDY: - SetupGiddy(); - break; + case MAUVILLE_MAN_BARD: + SetupBard(); + break; + case MAUVILLE_MAN_HIPSTER: + SetupHipster(); + break; + case MAUVILLE_MAN_TRADER: + SetupTrader(); + break; + case MAUVILLE_MAN_STORYTELLER: + SetupStoryteller(); + break; + case MAUVILLE_MAN_GIDDY: + SetupGiddy(); + break; } - ScrSpecial_SetMauvilleOldManObjEventGfx(); + SetMauvilleOldManObjEventGfx(); } u8 GetCurrentMauvilleOldMan(void) { - struct MauvilleManCommon *common = &gSaveBlock1Ptr->oldMan.common; - - return common->id; + return gSaveBlock1Ptr->oldMan.common.id; } -void ScrSpecial_GetCurrentMauvilleMan(void) +void Script_GetCurrentMauvilleMan(void) { gSpecialVar_Result = GetCurrentMauvilleOldMan(); } -void ScrSpecial_HasBardSongBeenChanged(void) +void HasBardSongBeenChanged(void) { - u16 *scriptResult = &gSpecialVar_Result; // why?? - struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; - - *scriptResult = bard->hasChangedSong; + gSpecialVar_Result = (&gSaveBlock1Ptr->oldMan.bard)->hasChangedSong; } -void ScrSpecial_SaveBardSongLyrics(void) +void SaveBardSongLyrics(void) { u16 i; struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; @@ -225,28 +219,23 @@ static void PrepareSongText(void) } } -void ScrSpecial_PlayBardSong(void) +void PlayBardSong(void) { StartBardSong(gSpecialVar_0x8004); ScriptContext1_Stop(); } -void ScrSpecial_GetHipsterSpokenFlag(void) +void GetHipsterSpokenFlag(void) { - u16 *scriptResult = &gSpecialVar_Result; // again?? - struct MauvilleManHipster *hipster = &gSaveBlock1Ptr->oldMan.hipster; - - *scriptResult = hipster->alreadySpoken; + gSpecialVar_Result = (&gSaveBlock1Ptr->oldMan.hipster)->alreadySpoken; } -void ScrSpecial_SetHipsterSpokenFlag(void) +void SetHipsterSpokenFlag(void) { - struct MauvilleManHipster *hipster = &gSaveBlock1Ptr->oldMan.hipster; - - hipster->alreadySpoken = TRUE; + (&gSaveBlock1Ptr->oldMan.hipster)->alreadySpoken = TRUE; } -void ScrSpecial_HipsterTeachWord(void) +void HipsterTryTeachWord(void) { u16 phrase = GetNewHipsterPhraseToTeach(); @@ -261,11 +250,11 @@ void ScrSpecial_HipsterTeachWord(void) } } -void ScrSpecial_GiddyShouldTellAnotherTale(void) +void GiddyShouldTellAnotherTale(void) { struct MauvilleManGiddy *giddy = &gSaveBlock1Ptr->oldMan.giddy; - if (giddy->taleCounter == 10) + if (giddy->taleCounter == GIDDY_MAX_TALES) { gSpecialVar_Result = FALSE; giddy->taleCounter = 0; @@ -276,7 +265,7 @@ void ScrSpecial_GiddyShouldTellAnotherTale(void) } } -void ScrSpecial_GenerateGiddyLine(void) +void GenerateGiddyLine(void) { struct MauvilleManGiddy *giddy = &gSaveBlock1Ptr->oldMan.giddy; @@ -300,7 +289,7 @@ void ScrSpecial_GenerateGiddyLine(void) } if (!(Random() % 10)) - giddy->taleCounter = 10; + giddy->taleCounter = GIDDY_MAX_TALES; else giddy->taleCounter++; @@ -310,7 +299,7 @@ void ScrSpecial_GenerateGiddyLine(void) static void InitGiddyTaleList(void) { struct MauvilleManGiddy *giddy = &gSaveBlock1Ptr->oldMan.giddy; - u16 arr[][2] = { + u16 wordGroupsAndCount[][2] = { {EC_GROUP_POKEMON, 0}, {EC_GROUP_LIFESTYLE, 0}, {EC_GROUP_HOBBIES, 0}, @@ -323,27 +312,25 @@ static void InitGiddyTaleList(void) u16 r7; u16 r1; + // Shuffle question list for (i = 0; i < 8; i++) giddy->questionList[i] = i; - for (i = 0; i < 8; i++) { r1 = Random() % (i + 1); - r7 = giddy->questionList[i]; - giddy->questionList[i] = giddy->questionList[r1]; - giddy->questionList[r1] = r7; + SWAP(giddy->questionList[i], giddy->questionList[r1], r7); } r10 = 0; for (i = 0; i < 6; i++) { - arr[i][1] = EasyChat_GetNumWordsInGroup(arr[i][0]); - r10 += arr[i][1]; + wordGroupsAndCount[i][1] = EasyChat_GetNumWordsInGroup(wordGroupsAndCount[i][0]); + r10 += wordGroupsAndCount[i][1]; } giddy->questionNum = 0; r7 = 0; - for (i = 0; i < 10; i++) + for (i = 0; i < GIDDY_MAX_TALES; i++) { r1 = Random() % 10; if (r1 < 3 && r7 < 8) @@ -355,26 +342,22 @@ static void InitGiddyTaleList(void) { s16 r2 = Random() % r10; for (r1 = 0; i < 6; r1++) - if ((r2 -= arr[r1][1]) <= 0) + if ((r2 -= wordGroupsAndCount[r1][1]) <= 0) break; if (r1 == 6) r1 = 0; - giddy->randomWords[i] = GetRandomEasyChatWordFromUnlockedGroup(arr[r1][0]); + giddy->randomWords[i] = GetRandomEasyChatWordFromUnlockedGroup(wordGroupsAndCount[r1][0]); } } } static void ResetBardFlag(void) { - struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; - - bard->hasChangedSong = FALSE; + (&gSaveBlock1Ptr->oldMan.bard)->hasChangedSong = FALSE; } static void ResetHipsterFlag(void) { - struct MauvilleManHipster *hipster = &gSaveBlock1Ptr->oldMan.hipster; - - hipster->alreadySpoken = FALSE; + (&gSaveBlock1Ptr->oldMan.hipster)->alreadySpoken = FALSE; } static void ResetTraderFlag(void) @@ -391,22 +374,22 @@ void ResetMauvilleOldManFlag(void) { switch (GetCurrentMauvilleOldMan()) { - case MAUVILLE_MAN_BARD: - ResetBardFlag(); - break; - case MAUVILLE_MAN_HIPSTER: - ResetHipsterFlag(); - break; - case MAUVILLE_MAN_STORYTELLER: - ResetStorytellerFlag(); - break; - case MAUVILLE_MAN_TRADER: - ResetTraderFlag(); - break; - case MAUVILLE_MAN_GIDDY: - break; + case MAUVILLE_MAN_BARD: + ResetBardFlag(); + break; + case MAUVILLE_MAN_HIPSTER: + ResetHipsterFlag(); + break; + case MAUVILLE_MAN_STORYTELLER: + ResetStorytellerFlag(); + break; + case MAUVILLE_MAN_TRADER: + ResetTraderFlag(); + break; + case MAUVILLE_MAN_GIDDY: + break; } - ScrSpecial_SetMauvilleOldManObjEventGfx(); + SetMauvilleOldManObjEventGfx(); } @@ -430,15 +413,15 @@ static void EnableTextPrinters(void) gDisableTextPrinters = FALSE; } -static void BardSong_DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) +static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) { gDisableTextPrinters = TRUE; } -static void sub_8120708(const u8 * src) +static void sub_8120708(const u8 * str) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, src, 0, 1, 1, BardSong_DisableTextPrinters); + AddTextPrinterParameterized(0, 1, str, 0, 1, 1, DisableTextPrinters); gDisableTextPrinters = TRUE; CopyWindowToVram(0, 3); } @@ -447,233 +430,233 @@ static void BardSing(struct Task *task, struct BardSong *song) { switch (task->tState) { - case 0: // Initialize song - { - struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; - u16 *lyrics; - s32 i; + case 0: // Initialize song + { + struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; + u16 *lyrics; + s32 i; - // Copy lyrics - if (gSpecialVar_0x8004 == 0) - lyrics = bard->songLyrics; - else - lyrics = bard->temporaryLyrics; - for (i = 0; i < BARD_SONG_LENGTH; i++) - song->lyrics[i] = lyrics[i]; - song->currWord = 0; + // Copy lyrics + if (gSpecialVar_0x8004 == 0) + lyrics = bard->songLyrics; + else + lyrics = bard->temporaryLyrics; + for (i = 0; i < BARD_SONG_LENGTH; i++) + song->lyrics[i] = lyrics[i]; + song->currWord = 0; + } + break; + case 1: // Wait for BGM to end + break; + case 2: // Initialize word + { + u16 word = song->lyrics[song->currWord]; + song->sound = GetWordSounds(word); + GetWordPhonemes(song, MACRO1(word)); + song->currWord++; + if (song->sound->var00 != 0xFF) + song->state = 0; + else + { + song->state = 3; + song->phonemeTimer = 2; } + break; + } + case 3: + case 4: + { + const struct BardSound *sound = &song->sound[song->currPhoneme]; + + switch (song->state) + { + case 0: + song->phonemeTimer = song->phonemes[song->currPhoneme].length; + if (sound->var00 <= 50) + { + u8 num = sound->var00 / 3; + m4aSongNumStart(PH_TRAP_HELD + 3 * num); + } + song->state = 2; + song->phonemeTimer--; break; - case 1: // Wait for BGM to end + case 2: + song->state = 1; + if (sound->var00 <= 50) + { + song->volume = 0x100 + sound->volume * 16; + m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); + song->pitch = 0x200 + song->phonemes[song->currPhoneme].pitch; + m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); + } break; - case 2: // Initialize word - { - u16 word = song->lyrics[song->currWord]; - song->sound = GetWordSounds(word); - GetWordPhonemes(song, MACRO1(word)); - song->currWord++; - if (song->sound->var00 != 0xFF) - song->state = 0; + case 1: + if (song->voiceInflection > 10) + song->volume -= 2; + if (song->voiceInflection & 1) + song->pitch += 64; else + song->pitch -= 64; + m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); + m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); + song->voiceInflection++; + song->phonemeTimer--; + if (song->phonemeTimer == 0) { - song->state = 3; - song->phonemeTimer = 2; + song->currPhoneme++; + if (song->currPhoneme != 6 && song->sound[song->currPhoneme].var00 != 0xFF) + song->state = 0; + else + { + song->state = 3; + song->phonemeTimer = 2; + } } break; - } case 3: - case 4: - { - const struct BardSound *sound = &song->sound[song->currPhoneme]; - - switch (song->state) + song->phonemeTimer--; + if (song->phonemeTimer == 0) { - case 0: - song->phonemeTimer = song->phonemes[song->currPhoneme].length; - if (sound->var00 <= 50) - { - u8 num = sound->var00 / 3; - m4aSongNumStart(PH_TRAP_HELD + 3 * num); - } - song->state = 2; - song->phonemeTimer--; - break; - case 2: - song->state = 1; - if (sound->var00 <= 50) - { - song->volume = 0x100 + sound->volume * 16; - m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); - song->pitch = 0x200 + song->phonemes[song->currPhoneme].pitch; - m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); - } - break; - case 1: - if (song->voiceInflection > 10) - song->volume -= 2; - if (song->voiceInflection & 1) - song->pitch += 64; - else - song->pitch -= 64; - m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); - m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch); - song->voiceInflection++; - song->phonemeTimer--; - if (song->phonemeTimer == 0) - { - song->currPhoneme++; - if (song->currPhoneme != 6 && song->sound[song->currPhoneme].var00 != 0xFF) - song->state = 0; - else - { - song->state = 3; - song->phonemeTimer = 2; - } - } - break; - case 3: - song->phonemeTimer--; - if (song->phonemeTimer == 0) - { - m4aMPlayStop(&gMPlayInfo_SE2); - song->state = 4; - } - break; + m4aMPlayStop(&gMPlayInfo_SE2); + song->state = 4; } - } - break; - case 5: break; + } + } + break; + case 5: + break; } } static void Task_BardSong(u8 taskId) { - struct Task *task = &gTasks[taskId]; // r5 + struct Task *task = &gTasks[taskId]; BardSing(task, &gBardSong); switch (task->tState) { - case 0: // Initialize song - PrepareSongText(); - sub_8120708(gStringVar4); - task->data[1] = 0; - task->data[2] = 0; - task->tCharIndex = 0; - task->tCurrWord = 0; - FadeOutBGMTemporarily(4); - task->tState = 1; - break; - case 1: // Wait for BGM to end - if (IsBGMPausedOrStopped()) - task->tState = 2; - break; - case 2: // Initialize word + case 0: // Initialize song + PrepareSongText(); + sub_8120708(gStringVar4); + task->data[1] = 0; + task->data[2] = 0; + task->tCharIndex = 0; + task->tCurrWord = 0; + FadeOutBGMTemporarily(4); + task->tState = 1; + break; + case 1: // Wait for BGM to end + if (IsBGMPausedOrStopped()) + task->tState = 2; + break; + case 2: // Initialize word + { + struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; + u8 *str = gStringVar4 + task->tCharIndex; + u16 wordLen = 0; + + while (*str != CHAR_SPACE + && *str != CHAR_NEWLINE + && *str != EXT_CTRL_CODE_BEGIN + && *str != EOS) { - struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; - u8 *str = gStringVar4 + task->tCharIndex; - u16 wordLen = 0; - - while (*str != CHAR_SPACE - && *str != CHAR_NEWLINE - && *str != EXT_CTRL_CODE_BEGIN - && *str != EOS) - { - str++; - wordLen++; - } - if (!task->tUseTemporaryLyrics) - sUnknownBardRelated = MACRO2(bard->songLyrics[task->tCurrWord]); - else - sUnknownBardRelated = MACRO2(bard->temporaryLyrics[task->tCurrWord]); + str++; + wordLen++; + } + if (!task->tUseTemporaryLyrics) + sUnknownBardRelated = MACRO2(bard->songLyrics[task->tCurrWord]); + else + sUnknownBardRelated = MACRO2(bard->temporaryLyrics[task->tCurrWord]); - gBardSong.length /= wordLen; - if (gBardSong.length <= 0) - gBardSong.length = 1; - task->tCurrWord++; + gBardSong.length /= wordLen; + if (gBardSong.length <= 0) + gBardSong.length = 1; + task->tCurrWord++; - if (task->data[2] == 0) - { - task->tState = 3; - task->data[1] = 0; - } - else - { - task->tState = 5; - task->data[1] = 0; - } + if (task->data[2] == 0) + { + task->tState = 3; + task->data[1] = 0; } - break; - case 5: - if (task->data[2] == 0) - task->tState = 3; - else - task->data[2]--; - break; - case 3: - if (gStringVar4[task->tCharIndex] == EOS) - { - FadeInBGM(6); - m4aMPlayFadeOutTemporarily(&gMPlayInfo_SE2, 2); - EnableBothScriptContexts(); - DestroyTask(taskId); - } - else if (gStringVar4[task->tCharIndex] == CHAR_SPACE) - { + else + { + task->tState = 5; + task->data[1] = 0; + } + } + break; + case 5: + if (task->data[2] == 0) + task->tState = 3; + else + task->data[2]--; + break; + case 3: + if (gStringVar4[task->tCharIndex] == EOS) + { + FadeInBGM(6); + m4aMPlayFadeOutTemporarily(&gMPlayInfo_SE2, 2); + EnableBothScriptContexts(); + DestroyTask(taskId); + } + else if (gStringVar4[task->tCharIndex] == CHAR_SPACE) + { - EnableTextPrinters(); - task->tCharIndex++; - task->tState = 2; - task->data[2] = 0; - } - else if (gStringVar4[task->tCharIndex] == CHAR_NEWLINE) - { - task->tCharIndex++; - task->tState = 2; - task->data[2] = 0; - } - else if (gStringVar4[task->tCharIndex] == EXT_CTRL_CODE_BEGIN) - { - task->tCharIndex += 2; // skip over control codes - task->tState = 2; - task->data[2] = 8; - } - else if (gStringVar4[task->tCharIndex] == CHAR_SONG_WORD_SEPARATOR) + EnableTextPrinters(); + task->tCharIndex++; + task->tState = 2; + task->data[2] = 0; + } + else if (gStringVar4[task->tCharIndex] == CHAR_NEWLINE) + { + task->tCharIndex++; + task->tState = 2; + task->data[2] = 0; + } + else if (gStringVar4[task->tCharIndex] == EXT_CTRL_CODE_BEGIN) + { + task->tCharIndex += 2; // skip over control codes + task->tState = 2; + task->data[2] = 8; + } + else if (gStringVar4[task->tCharIndex] == CHAR_SONG_WORD_SEPARATOR) + { + gStringVar4[task->tCharIndex] = CHAR_SPACE; // restore it back to a space + EnableTextPrinters(); + task->tCharIndex++; + task->data[2] = 0; + } + else + { + switch (task->data[1]) { - gStringVar4[task->tCharIndex] = CHAR_SPACE; // restore it back to a space + case 0: EnableTextPrinters(); + task->data[1]++; + break; + case 1: + task->data[1]++; + break; + case 2: task->tCharIndex++; - task->data[2] = 0; - } - else - { - switch (task->data[1]) - { - case 0: - EnableTextPrinters(); - task->data[1]++; - break; - case 1: - task->data[1]++; - break; - case 2: - task->tCharIndex++; - task->data[1] = 0; - task->data[2] = gBardSong.length; - task->tState = 4; - break; - } + task->data[1] = 0; + task->data[2] = gBardSong.length; + task->tState = 4; + break; } - break; - case 4: - task->data[2]--; - if (task->data[2] == 0) - task->tState = 3; - break; + } + break; + case 4: + task->data[2]--; + if (task->data[2] == 0) + task->tState = 3; + break; } RunTextPrintersAndIsPrinter0Active(); } -void ScrSpecial_SetMauvilleOldManObjEventGfx(void) +void SetMauvilleOldManObjEventGfx(void) { VarSet(VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_BARD); } @@ -720,76 +703,69 @@ void SanitizeMauvilleOldManForRuby(union OldMan * oldMan) } } -void sub_8120C0C(union OldMan * oldMan, u32 r8, u32 r7, u32 r3) +// Unused +static void SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language1, u32 language2, u32 language3) { s32 i; switch (oldMan->common.id) { - case MAUVILLE_MAN_TRADER: - { - struct MauvilleOldManTrader * trader = &oldMan->trader; - - for (i = 0; i < NUM_TRADER_ITEMS; i++) - { - if (IsStringJapanese(trader->playerNames[i])) - { - trader->language[i] = r8; - } - else - { - trader->language[i] = r7; - } - } - } - break; - case MAUVILLE_MAN_STORYTELLER: - { - struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; + case MAUVILLE_MAN_TRADER: + { + struct MauvilleOldManTrader * trader = &oldMan->trader; - for (i = 0; i < NUM_STORYTELLER_TALES; i++) - { - if (IsStringJapanese(storyteller->trainerNames[i])) - { - storyteller->language[i] = r8; - } - else - { - storyteller->language[i] = r7; - } - } - } - break; - case MAUVILLE_MAN_BARD: + for (i = 0; i < NUM_TRADER_ITEMS; i++) { - struct MauvilleManBard * bard = &oldMan->bard; - - if (r3 == LANGUAGE_JAPANESE) - bard->language = r8; + if (IsStringJapanese(trader->playerNames[i])) + trader->language[i] = language1; else - bard->language = r7; + trader->language[i] = language2; } - break; - case MAUVILLE_MAN_HIPSTER: - { - struct MauvilleManHipster * hipster = &oldMan->hipster; + } + break; + case MAUVILLE_MAN_STORYTELLER: + { + struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; - if (r3 == LANGUAGE_JAPANESE) - hipster->language = r8; - else - hipster->language = r7; - } - break; - case MAUVILLE_MAN_GIDDY: + for (i = 0; i < NUM_STORYTELLER_TALES; i++) { - struct MauvilleManGiddy * giddy = &oldMan->giddy; - - if (r3 == LANGUAGE_JAPANESE) - giddy->language = r8; + if (IsStringJapanese(storyteller->trainerNames[i])) + storyteller->language[i] = language1; else - giddy->language = r7; + storyteller->language[i] = language2; } - break; + } + break; + case MAUVILLE_MAN_BARD: + { + struct MauvilleManBard * bard = &oldMan->bard; + + if (language3 == LANGUAGE_JAPANESE) + bard->language = language1; + else + bard->language = language2; + } + break; + case MAUVILLE_MAN_HIPSTER: + { + struct MauvilleManHipster * hipster = &oldMan->hipster; + + if (language3 == LANGUAGE_JAPANESE) + hipster->language = language1; + else + hipster->language = language2; + } + break; + case MAUVILLE_MAN_GIDDY: + { + struct MauvilleManGiddy * giddy = &oldMan->giddy; + + if (language3 == LANGUAGE_JAPANESE) + giddy->language = language1; + else + giddy->language = language2; + } + break; } } @@ -822,83 +798,83 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language switch (oldMan->common.id) { - case MAUVILLE_MAN_TRADER: - { - struct MauvilleOldManTrader * trader = &oldMan->trader; - s32 i; + case MAUVILLE_MAN_TRADER: + { + struct MauvilleOldManTrader * trader = &oldMan->trader; + s32 i; - if (isRuby) - { - for (i = 0; i < NUM_TRADER_ITEMS; 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 + if (isRuby) + { + for (i = 0; i < NUM_TRADER_ITEMS; i++) { - for (i = 0; i < NUM_TRADER_ITEMS; i++) + u8 * str = trader->playerNames[i]; + if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN) { - if (trader->language[i] == LANGUAGE_JAPANESE) - { - StripExtCtrlCodes(trader->playerNames[i]); - } + StripExtCtrlCodes(str); + trader->language[i] = LANGUAGE_JAPANESE; } + else + trader->language[i] = language; } } - break; - case MAUVILLE_MAN_STORYTELLER: + else { - - struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; - s32 i; - - if (isRuby) + for (i = 0; i < NUM_TRADER_ITEMS; i++) { - for (i = 0; i < NUM_STORYTELLER_TALES; i++) + if (trader->language[i] == LANGUAGE_JAPANESE) { - if (storyteller->gameStatIDs[i] != 0) - storyteller->language[i] = language; + StripExtCtrlCodes(trader->playerNames[i]); } } } - break; - case MAUVILLE_MAN_BARD: - { - struct MauvilleManBard * bard = &oldMan->bard; + } + break; + case MAUVILLE_MAN_STORYTELLER: + { - if (isRuby) + struct MauvilleManStoryteller * storyteller = &oldMan->storyteller; + s32 i; + + if (isRuby) + { + for (i = 0; i < NUM_STORYTELLER_TALES; i++) { - bard->language = language; + if (storyteller->gameStatIDs[i] != 0) + storyteller->language[i] = language; } } - break; - case MAUVILLE_MAN_HIPSTER: - { - struct MauvilleManHipster * hipster = &oldMan->hipster; + } + break; + case MAUVILLE_MAN_BARD: + { + struct MauvilleManBard * bard = &oldMan->bard; - if (isRuby) - { - hipster->language = language; - } + if (isRuby) + { + bard->language = language; } - break; - case MAUVILLE_MAN_GIDDY: + } + break; + case MAUVILLE_MAN_HIPSTER: + { + struct MauvilleManHipster * hipster = &oldMan->hipster; + + if (isRuby) { - struct MauvilleManGiddy * giddy = &oldMan->giddy; + hipster->language = language; + } + } + break; + case MAUVILLE_MAN_GIDDY: + { + struct MauvilleManGiddy * giddy = &oldMan->giddy; - if (isRuby) - { - giddy->language = language; - } + if (isRuby) + { + giddy->language = language; } - break; + } + break; } } @@ -1260,9 +1236,8 @@ static void ScrambleStatList(u8 * arr, s32 count) { u32 a = Random() % count; u32 b = Random() % count; - u8 temp = arr[a]; - arr[a] = arr[b]; - arr[b] = temp; + u8 temp; + SWAP(arr[a], arr[b], temp); } } @@ -1354,63 +1329,63 @@ static void Task_StoryListMenu(u8 taskId) switch (task->data[0]) { - case 0: - PrintStoryList(); - task->data[0]++; - break; - case 1: - selection = Menu_ProcessInput(); - if (selection == MENU_NOTHING_CHOSEN) - break; - if (selection == MENU_B_PRESSED || selection == GetFreeStorySlot()) - { - gSpecialVar_Result = 0; - } - else - { - gSpecialVar_Result = 1; - sSelectedStory = selection; - } - ClearToTransparentAndRemoveWindow(sStorytellerWindowId); - DestroyTask(taskId); - EnableBothScriptContexts(); + case 0: + PrintStoryList(); + task->data[0]++; + break; + case 1: + selection = Menu_ProcessInput(); + if (selection == MENU_NOTHING_CHOSEN) break; + if (selection == MENU_B_PRESSED || selection == GetFreeStorySlot()) + { + gSpecialVar_Result = 0; + } + else + { + gSpecialVar_Result = 1; + sSelectedStory = selection; + } + ClearToTransparentAndRemoveWindow(sStorytellerWindowId); + DestroyTask(taskId); + EnableBothScriptContexts(); + break; } } // Sets gSpecialVar_Result to TRUE if player selected a story -void ScrSpecial_StorytellerStoryListMenu(void) +void StorytellerStoryListMenu(void) { CreateTask(Task_StoryListMenu, 80); } -void ScrSpecial_StorytellerDisplayStory(void) +void Script_StorytellerDisplayStory(void) { StorytellerDisplayStory(sSelectedStory); } -u8 ScrSpecial_StorytellerGetFreeStorySlot(void) +u8 StorytellerGetFreeStorySlot(void) { sStorytellerPtr = &gSaveBlock1Ptr->oldMan.storyteller; return GetFreeStorySlot(); } // Returns TRUE if stat has increased -bool8 ScrSpecial_StorytellerUpdateStat(void) +bool8 StorytellerUpdateStat(void) { - u8 r4; + u8 stat; sStorytellerPtr = &gSaveBlock1Ptr->oldMan.storyteller; - r4 = sStorytellerPtr->gameStatIDs[sSelectedStory]; + stat = sStorytellerPtr->gameStatIDs[sSelectedStory]; if (HasTrainerStatIncreased(sSelectedStory) == TRUE) { - StorytellerRecordNewStat(sSelectedStory, r4); + StorytellerRecordNewStat(sSelectedStory, stat); return TRUE; } return FALSE; } -bool8 ScrSpecial_HasStorytellerAlreadyRecorded(void) +bool8 HasStorytellerAlreadyRecorded(void) { sStorytellerPtr = &gSaveBlock1Ptr->oldMan.storyteller; @@ -1420,7 +1395,7 @@ bool8 ScrSpecial_HasStorytellerAlreadyRecorded(void) return TRUE; } -bool8 ScrSpecial_StorytellerInitializeRandomStat(void) +bool8 Script_StorytellerInitializeRandomStat(void) { sStorytellerPtr = &gSaveBlock1Ptr->oldMan.storyteller; return StorytellerInitializeRandomStat(); diff --git a/src/trader.c b/src/trader.c index f6d021dfe018..98b4f464ca51 100644 --- a/src/trader.c +++ b/src/trader.c @@ -130,13 +130,13 @@ void Task_HandleGetDecorationMenuInput(u8 taskId) } } -void ScrSpecial_GetTraderTradedFlag(void) +void GetTraderTradedFlag(void) { struct MauvilleOldManTrader *trader = &gSaveBlock1Ptr->oldMan.trader; gSpecialVar_Result = trader->alreadyTraded; } -void ScrSpecial_DoesPlayerHaveNoDecorations(void) +void DoesPlayerHaveNoDecorations(void) { u8 i; @@ -151,7 +151,7 @@ void ScrSpecial_DoesPlayerHaveNoDecorations(void) gSpecialVar_Result = TRUE; } -void ScrSpecial_IsDecorationFull(void) +void IsDecorationCategoryFull(void) { gSpecialVar_Result = FALSE; if (gDecorations[gSpecialVar_0x8004].category != gDecorations[gSpecialVar_0x8006].category @@ -162,7 +162,7 @@ void ScrSpecial_IsDecorationFull(void) } } -void ScrSpecial_TraderMenuGiveDecoration(void) +void TraderShowDecorationMenu(void) { CreateTask(ShowDecorationCategoriesWindow, 0); } @@ -190,7 +190,7 @@ void ExitTraderMenu(u8 taskId) EnableBothScriptContexts(); } -void ScrSpecial_TraderDoDecorationTrade(void) +void TraderDoDecorationTrade(void) { struct MauvilleOldManTrader *trader = &gSaveBlock1Ptr->oldMan.trader; @@ -202,7 +202,7 @@ void ScrSpecial_TraderDoDecorationTrade(void) trader->alreadyTraded = TRUE; } -void ScrSpecial_TraderMenuGetDecoration(void) +void TraderMenuGetDecoration(void) { u8 taskId = CreateTask(Task_HandleGetDecorationMenuInput, 0); CreateAvailableDecorationsMenu(taskId); From 46dd10c87ba7abf8c10e5ab604a7c21e9beaebc3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Oct 2021 01:39:07 -0400 Subject: [PATCH 320/762] Clean up trainer_pokemon_sprites --- include/trainer_pokemon_sprites.h | 8 ++- src/hall_of_fame.c | 2 +- src/main_menu.c | 4 +- src/starter_choose.c | 2 +- src/trainer_pokemon_sprites.c | 96 +++++++++++-------------------- 5 files changed, 45 insertions(+), 67 deletions(-) diff --git a/include/trainer_pokemon_sprites.h b/include/trainer_pokemon_sprites.h index d4390608e7fc..520268c47ce6 100644 --- a/include/trainer_pokemon_sprites.h +++ b/include/trainer_pokemon_sprites.h @@ -1,8 +1,14 @@ #ifndef GUARD_TRAINER_POKEMON_SPRITES_H #define GUARD_TRAINER_POKEMON_SPRITES_H +// For the flags argument of CreateMonPicSprite_Affine +#define MON_PIC_AFFINE_BACK 0 +#define MON_PIC_AFFINE_FRONT 1 +#define MON_PIC_AFFINE_NONE 3 +#define F_MON_PIC_NO_AFFINE (1 << 7) + bool16 ResetAllPicSprites(void); -u16 CreatePicSprite2(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); +u16 CreateMonPicSprite_Affine(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); u16 CreateMonPicSprite_HandleDeoxys(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); u16 FreeAndDestroyMonPicSprite(u16 spriteId); u16 CreateTrainerPicSprite(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 3485f3ba349e..571c5500127d 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -588,7 +588,7 @@ static void Task_Hof_DisplayMon(u8 taskId) if (currMon->species == SPECIES_EGG) destY += 10; - spriteId = CreatePicSprite2(currMon->species, currMon->tid, currMon->personality, 1, startX, startY, currMonId, TAG_NONE); + spriteId = CreateMonPicSprite_Affine(currMon->species, currMon->tid, currMon->personality, MON_PIC_AFFINE_FRONT, startX, startY, currMonId, TAG_NONE); gSprites[spriteId].tDestinationX = destX; gSprites[spriteId].tDestinationY = destY; gSprites[spriteId].data[0] = 0; diff --git a/src/main_menu.c b/src/main_menu.c index f6dff3d44570..6553278e8ea0 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1871,9 +1871,9 @@ static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite *sprite) sprite->data[0] = y; } -static u8 NewGameBirchSpeech_CreateLotadSprite(u8 a, u8 b) +static u8 NewGameBirchSpeech_CreateLotadSprite(u8 x, u8 y) { - return CreatePicSprite2(SPECIES_LOTAD, SHINY_ODDS, 0, 1, a, b, 14, -1); + return CreateMonPicSprite_Affine(SPECIES_LOTAD, SHINY_ODDS, 0, MON_PIC_AFFINE_FRONT, x, y, 14, TAG_NONE); } static void AddBirchSpeechObjects(u8 taskId) diff --git a/src/starter_choose.c b/src/starter_choose.c index 37c3346809aa..d14846130821 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -635,7 +635,7 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y) { u8 spriteId; - spriteId = CreatePicSprite2(species, SHINY_ODDS, 0, 1, x, y, 0xE, TAG_NONE); + spriteId = CreateMonPicSprite_Affine(species, SHINY_ODDS, 0, MON_PIC_AFFINE_FRONT, x, y, 14, TAG_NONE); gSprites[spriteId].oam.priority = 0; return spriteId; } diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c index 9e30f636eb9d..a7289677e642 100644 --- a/src/trainer_pokemon_sprites.c +++ b/src/trainer_pokemon_sprites.c @@ -9,8 +9,6 @@ #include "pokemon.h" #include "constants/trainers.h" -// Static type declarations - struct PicData { u8 *frames; @@ -20,33 +18,26 @@ struct PicData u8 active; }; -// Static RAM declarations #define PICS_COUNT 8 static EWRAM_DATA struct SpriteTemplate sCreatingSpriteTemplate = {}; static EWRAM_DATA struct PicData sSpritePics[PICS_COUNT] = {}; -// Static ROM declarations - -// .rodata - static const struct PicData sDummyPicData = {}; -static const struct OamData gUnknown_0860B064 = +static const struct OamData sOamData_Normal = { .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64) }; -static const struct OamData gUnknown_0860B06C = +static const struct OamData sOamData_Affine = { .affineMode = ST_OAM_AFFINE_NORMAL, .shape = SPRITE_SHAPE(64x64), .size = SPRITE_SIZE(64x64) }; -// .text - static void DummyPicSpriteCallback(struct Sprite *sprite) { @@ -153,19 +144,15 @@ static u16 CreatePicSprite(u16 species, u32 otId, u32 personality, bool8 isFront for (i = 0; i < PICS_COUNT; i ++) { if (!sSpritePics[i].active) - { break; - } } if (i == PICS_COUNT) - { return 0xFFFF; - } + framePics = Alloc(4 * 0x800); if (!framePics) - { return 0xFFFF; - } + images = Alloc(4 * sizeof(struct SpriteFrameImage)); if (!images) { @@ -183,7 +170,7 @@ static u16 CreatePicSprite(u16 species, u32 otId, u32 personality, bool8 isFront images[j].size = 0x800; } sCreatingSpriteTemplate.tileTag = TAG_NONE; - sCreatingSpriteTemplate.oam = &gUnknown_0860B064; + sCreatingSpriteTemplate.oam = &sOamData_Normal; AssignSpriteAnimsTable(isTrainer); sCreatingSpriteTemplate.images = images; sCreatingSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; @@ -191,9 +178,7 @@ static u16 CreatePicSprite(u16 species, u32 otId, u32 personality, bool8 isFront LoadPicPaletteByTagOrSlot(species, otId, personality, paletteSlot, paletteTag, isTrainer); spriteId = CreateSprite(&sCreatingSpriteTemplate, x, y, 0); if (paletteTag == TAG_NONE) - { gSprites[spriteId].oam.paletteNum = paletteSlot; - } sSpritePics[i].frames = framePics; sSpritePics[i].images = images; sSpritePics[i].paletteTag = paletteTag; @@ -207,39 +192,35 @@ static u16 CreatePicSprite_HandleDeoxys(u16 species, u32 otId, u32 personality, return CreatePicSprite(species, otId, personality, isFrontPic, x, y, paletteSlot, paletteTag, isTrainer, FALSE); } -u16 CreatePicSprite2(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag) +u16 CreateMonPicSprite_Affine(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag) { u8 *framePics; struct SpriteFrameImage *images; int j; u8 i; u8 spriteId; - u8 flags2; + u8 type; - for (i = 0; i < PICS_COUNT; i ++) + for (i = 0; i < PICS_COUNT; i++) { if (!sSpritePics[i].active) - { break; - } } if (i == PICS_COUNT) - { return 0xFFFF; - } - framePics = Alloc(4 * 0x800); + + framePics = Alloc(4 * MON_PIC_SIZE); if (!framePics) - { return 0xFFFF; - } - if (flags & 0x80) + + if (flags & F_MON_PIC_NO_AFFINE) { - flags &= 0x7F; - flags2 = 3; + flags &= ~F_MON_PIC_NO_AFFINE; + type = MON_PIC_AFFINE_NONE; } else { - flags2 = flags; + type = flags; } images = Alloc(4 * sizeof(struct SpriteFrameImage)); if (!images) @@ -254,34 +235,32 @@ u16 CreatePicSprite2(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s1 } for (j = 0; j < 4; j ++) { - images[j].data = framePics + 0x800 * j; - images[j].size = 0x800; + images[j].data = framePics + MON_PIC_SIZE * j; + images[j].size = MON_PIC_SIZE; } sCreatingSpriteTemplate.tileTag = TAG_NONE; sCreatingSpriteTemplate.anims = gMonFrontAnimsPtrTable[species]; sCreatingSpriteTemplate.images = images; - if (flags2 == 0x01) + if (type == MON_PIC_AFFINE_FRONT) { sCreatingSpriteTemplate.affineAnims = gAffineAnims_BattleSpriteOpponentSide; - sCreatingSpriteTemplate.oam = &gUnknown_0860B06C; + sCreatingSpriteTemplate.oam = &sOamData_Affine; } - else if (flags2 == 0x00) + else if (type == MON_PIC_AFFINE_BACK) { sCreatingSpriteTemplate.affineAnims = gAffineAnims_BattleSpritePlayerSide; - sCreatingSpriteTemplate.oam = &gUnknown_0860B06C; + sCreatingSpriteTemplate.oam = &sOamData_Affine; } - else + else // MON_PIC_AFFINE_NONE { - sCreatingSpriteTemplate.oam = &gUnknown_0860B064; + sCreatingSpriteTemplate.oam = &sOamData_Normal; sCreatingSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; } sCreatingSpriteTemplate.callback = DummyPicSpriteCallback; LoadPicPaletteByTagOrSlot(species, otId, personality, paletteSlot, paletteTag, FALSE); spriteId = CreateSprite(&sCreatingSpriteTemplate, x, y, 0); if (paletteTag == TAG_NONE) - { gSprites[spriteId].oam.paletteNum = paletteSlot; - } sSpritePics[i].frames = framePics; sSpritePics[i].images = images; sSpritePics[i].paletteTag = paletteTag; @@ -299,20 +278,15 @@ static u16 FreeAndDestroyPicSpriteInternal(u16 spriteId) for (i = 0; i < PICS_COUNT; i ++) { if (sSpritePics[i].spriteId == spriteId) - { break; - } } if (i == PICS_COUNT) - { return 0xFFFF; - } + framePics = sSpritePics[i].frames; images = sSpritePics[i].images; if (sSpritePics[i].paletteTag != TAG_NONE) - { FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[spriteId].oam.paletteNum)); - } DestroySprite(&gSprites[spriteId]); Free(framePics); Free(images); @@ -320,12 +294,11 @@ static u16 FreeAndDestroyPicSpriteInternal(u16 spriteId) return 0; } -static u16 sub_818D65C(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId, bool8 isTrainer) +static u16 LoadPicSpriteInWindow(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId, bool8 isTrainer) { if (DecompressPic_HandleDeoxys(species, personality, isFrontPic, (u8 *)GetWindowAttribute(windowId, WINDOW_TILE_DATA), FALSE)) - { return 0xFFFF; - } + LoadPicPaletteBySlot(species, otId, personality, paletteSlot, isTrainer); return 0; } @@ -360,9 +333,10 @@ u16 FreeAndDestroyMonPicSprite(u16 spriteId) return FreeAndDestroyPicSpriteInternal(spriteId); } -u16 sub_818D834(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId) +// Unused +static u16 LoadMonPicInWindow(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId) { - return sub_818D65C(species, otId, personality, isFrontPic, paletteSlot, windowId, FALSE); + return LoadPicSpriteInWindow(species, otId, personality, isFrontPic, paletteSlot, windowId, FALSE); } // Unused, FRLG only @@ -381,9 +355,10 @@ u16 FreeAndDestroyTrainerPicSprite(u16 spriteId) return FreeAndDestroyPicSpriteInternal(spriteId); } -u16 sub_818D904(u16 species, bool8 isFrontPic, u8 paletteSlot, u8 windowId) +// Unused +static u16 LoadTrainerPicInWindow(u16 species, bool8 isFrontPic, u8 paletteSlot, u8 windowId) { - return sub_818D65C(species, 0, 0, isFrontPic, paletteSlot, windowId, TRUE); + return LoadPicSpriteInWindow(species, 0, 0, isFrontPic, paletteSlot, windowId, TRUE); } u16 CreateTrainerCardTrainerPicSprite(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId) @@ -395,13 +370,10 @@ u16 PlayerGenderToFrontTrainerPicId_Debug(u8 gender, bool8 getClass) { if (getClass == TRUE) { - switch (gender) - { - default: + if (gender != MALE) return gFacilityClassToPicIndex[FACILITY_CLASS_MAY]; - case MALE: + else return gFacilityClassToPicIndex[FACILITY_CLASS_BRENDAN]; - } } return gender; } From 7590bacec1362cd3d339aa422ced50bb57f6cca0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Oct 2021 02:14:29 -0400 Subject: [PATCH 321/762] Label remaining symbols in field_specials --- data/specials.inc | 6 ++-- src/field_specials.c | 67 +++++++++++++++----------------------------- 2 files changed, 26 insertions(+), 47 deletions(-) diff --git a/data/specials.inc b/data/specials.inc index 0b053b7742b8..df6a6812e6ae 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -455,7 +455,7 @@ gSpecials:: def_special ClearLinkContestFlags def_special TryContestEModeLinkup def_special ShowScrollableMultichoice - def_special sub_813A630 + def_special ScrollableMultichoice_TryReturnToList def_special BufferBattleTowerElevatorFloors def_special TryStoreHeldItemsInPyramidBag def_special ChooseItemsToTossFromPyramidBag @@ -484,10 +484,10 @@ gSpecials:: def_special CountPlayerTrainerStars def_special BufferBattleFrontierTutorMoveName def_special CloseBattleFrontierTutorWindow - def_special sub_813ADD4 + def_special ScrollableMultichoice_RedrawPersistentMenu def_special ChooseMonForMoveTutor def_special GetBattleFrontierTutorMoveIndex - def_special sub_813AF48 + def_special ScrollableMultichoice_ClosePersistentMenu def_special DoDeoxysRockInteraction def_special SetDeoxysRockPalette def_special CreateEventLegalEnemyMon diff --git a/src/field_specials.c b/src/field_specials.c index ab02f9938b32..44b9a0d5dd9f 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -116,8 +116,8 @@ static void HideFrontierExchangeCornerItemIcon(u16 menu, u16 unused); static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection); static void CloseScrollableMultichoice(u8 taskId); static void ScrollableMultichoice_RemoveScrollArrows(u8 taskId); -static void sub_813A600(u8 taskId); -static void sub_813A664(u8 taskId); +static void Task_ScrollableMultichoice_WaitReturnToList(u8 taskId); +static void Task_ScrollableMultichoice_ReturnToList(u8 taskId); static void ShowFrontierExchangeCornerItemIcon(u16 item); static void Task_DeoxysRockInteraction(u8 taskId); static void ChangeDeoxysRockLevel(u8 a0); @@ -2702,10 +2702,10 @@ static void ScrollableMultichoice_ProcessInput(u8 taskId) { CloseScrollableMultichoice(taskId); } - else + else // Handle selection while keeping the menu open { ScrollableMultichoice_RemoveScrollArrows(taskId); - task->func = sub_813A600; + task->func = Task_ScrollableMultichoice_WaitReturnToList; EnableBothScriptContexts(); } break; @@ -2729,36 +2729,32 @@ static void CloseScrollableMultichoice(u8 taskId) EnableBothScriptContexts(); } -// Functionally unused; tKeepOpenAfterSelect is only != 0 in unused functions -static void sub_813A600(u8 taskId) +// Never run, tKeepOpenAfterSelect is FALSE for all scrollable multichoices. +static void Task_ScrollableMultichoice_WaitReturnToList(u8 taskId) { switch (gTasks[taskId].tKeepOpenAfterSelect) { - case 1: - default: - break; - case 2: - gTasks[taskId].tKeepOpenAfterSelect = 1; - gTasks[taskId].func = sub_813A664; - break; + case 1: + default: + break; + case 2: + gTasks[taskId].tKeepOpenAfterSelect = 1; + gTasks[taskId].func = Task_ScrollableMultichoice_ReturnToList; + break; } } // Never called -void sub_813A630(void) +void ScrollableMultichoice_TryReturnToList(void) { - u8 taskId = FindTaskIdByFunc(sub_813A600); + u8 taskId = FindTaskIdByFunc(Task_ScrollableMultichoice_WaitReturnToList); if (taskId == TASK_NONE) - { EnableBothScriptContexts(); - } else - { - gTasks[taskId].tKeepOpenAfterSelect++; - } + gTasks[taskId].tKeepOpenAfterSelect++; // Return to list } -static void sub_813A664(u8 taskId) +static void Task_ScrollableMultichoice_ReturnToList(u8 taskId) { ScriptContext2_Enable(); ScrollableMultichoice_UpdateScrollArrows(taskId); @@ -2807,23 +2803,7 @@ static void ScrollableMultichoice_RemoveScrollArrows(u8 taskId) // Removed for Emerald (replaced by ShowScrollableMultichoice) void ShowGlassWorkshopMenu(void) { - /* - u8 i; - ScriptContext2_Enable(); - Menu_DrawStdWindowFrame(0, 0, 10, 11); - InitMenu(0, 1, 1, 5, 0, 9); - gUnknown_0203925C = 0; - ClearVerticalScrollIndicatorPalettes(); - LoadScrollIndicatorPalette(); - sub_810F2B4(); - for (i = 0; i < 5; i++) - { - Menu_PrintText(gUnknown_083F83C0[i], 1, 2 * i + 1); - } - gUnknown_0203925B = 0; - gUnknown_0203925A = ARRAY_COUNT(gUnknown_083F83C0); - CreateTask(sub_810F118, 8); - */ + } void SetBattleTowerLinkPlayerGfx(void) @@ -3252,11 +3232,11 @@ void CloseBattleFrontierTutorWindow(void) } // Never called -void sub_813ADD4(void) +void ScrollableMultichoice_RedrawPersistentMenu(void) { u16 scrollOffset, selectedRow; u8 i; - u8 taskId = FindTaskIdByFunc(sub_813A600); + u8 taskId = FindTaskIdByFunc(Task_ScrollableMultichoice_WaitReturnToList); if (taskId != TASK_NONE) { struct Task *task = &gTasks[taskId]; @@ -3264,9 +3244,7 @@ void sub_813ADD4(void) SetStandardWindowBorderStyle(task->tWindowId, 0); for (i = 0; i < MAX_SCROLL_MULTI_ON_SCREEN; i++) - { AddTextPrinterParameterized5(task->tWindowId, 1, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SPEED_FF, NULL, 0, 0); - } AddTextPrinterParameterized(task->tWindowId, 1, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SPEED_FF, NULL); PutWindowTilemap(task->tWindowId); @@ -3313,9 +3291,10 @@ void GetBattleFrontierTutorMoveIndex(void) } // Never called -void sub_813AF48(void) +// Close a scrollable multichoice that stays open after selection +void ScrollableMultichoice_ClosePersistentMenu(void) { - u8 taskId = FindTaskIdByFunc(sub_813A600); + u8 taskId = FindTaskIdByFunc(Task_ScrollableMultichoice_WaitReturnToList); if (taskId != TASK_NONE) { struct Task *task = &gTasks[taskId]; From b31bddddca327bd15cc022717d19ace43b435ac2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Oct 2021 12:20:35 -0400 Subject: [PATCH 322/762] Clean up metatile_behavior --- include/constants/metatile_behaviors.h | 20 ++--- include/metatile_behavior.h | 14 +++- src/battle_setup.c | 6 +- src/field_control_avatar.c | 6 +- src/field_effect_helpers.c | 10 ++- src/item_use.c | 2 +- src/metatile_behavior.c | 107 ++++++++++++++++--------- src/wild_encounter.c | 2 +- 8 files changed, 106 insertions(+), 61 deletions(-) diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 1d1557256de5..df2d28c7df74 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -113,22 +113,22 @@ #define MB_WATER_SOUTH_ARROW_WARP 0x6D #define MB_DEEP_SOUTH_WARP 0x6E #define MB_UNUSED_6F 0x6F -#define MB_WARP_OR_BRIDGE 0x70 -#define MB_UNUSED_71 0x71 -#define MB_ROUTE120_NORTH_BRIDGE_1 0x72 -#define MB_ROUTE120_NORTH_BRIDGE_2 0x73 +#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_1 0x74 #define MB_PACIFIDLOG_VERTICAL_LOG_2 0x75 #define MB_PACIFIDLOG_HORIZONTAL_LOG_1 0x76 #define MB_PACIFIDLOG_HORIZONTAL_LOG_2 0x77 #define MB_FORTREE_BRIDGE 0x78 #define MB_UNUSED_79 0x79 -#define MB_ROUTE120_SOUTH_BRIDGE_1 0x7A -#define MB_ROUTE120_SOUTH_BRIDGE_2 0x7B -#define MB_ROUTE120_NORTH_BRIDGE_3 0x7C -#define MB_ROUTE120_NORTH_BRIDGE_4 0x7D -#define MB_UNUSED_7E 0x7E -#define MB_ROUTE110_BRIDGE 0x7F +#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_1 0x7E +#define MB_UNUSED_BRIDGE_2 0x7F #define MB_COUNTER 0x80 #define MB_UNUSED_81 0x81 #define MB_UNUSED_82 0x82 diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index 584b3e546ec5..87a9ebcc59c3 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -1,6 +1,14 @@ #ifndef GUARD_METATILE_BEHAVIOR_H #define GUARD_METATILE_BEHAVIOR_H +// Return values for MetatileBehavior_GetBridgeType +enum { + BRIDGE_TYPE_OCEAN, // For log bridges over 'ocean' style water (Routes 110/119 use this). + BRIDGE_TYPE_POND_LOW, + BRIDGE_TYPE_POND_MED, + BRIDGE_TYPE_POND_HIGH, +}; + bool8 MetatileBehavior_IsATile(u8); bool8 MetatileBehavior_IsEncounterTile(u8); bool8 MetatileBehavior_IsJumpEast(u8); @@ -76,9 +84,9 @@ bool8 MetatileBehavior_IsLongGrass(u8); bool8 MetatileBehavior_IsBerryTreeSoil(u8); bool8 MetatileBehavior_IsAshGrass(u8); bool8 MetatileBehavior_IsFootprints(u8); -bool8 MetatileBehavior_IsBridge(u8); +bool8 MetatileBehavior_IsBridgeOverWater(u8); u8 MetatileBehavior_GetBridgeType(u8); -u8 MetatileBehavior_8089510(u8); +bool8 MetatileBehavior_IsBridgeOverWaterNoEdge(u8); bool8 MetatileBehavior_IsLandWildEncounter(u8); bool8 MetatileBehavior_IsWaterWildEncounter(u8); bool8 MetatileBehavior_IsIndoorEncounter(u8); @@ -115,7 +123,7 @@ bool8 MetatileBehavior_IsSecretBaseSpinMat(u8); bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8); bool8 MetatileBehavior_IsLavaridge1FWarp(u8); bool8 MetatileBehavior_IsAquaHideoutWarp(u8); -bool8 MetatileBehavior_IsWarpOrBridge(u8); +bool8 MetatileBehavior_IsBridgeOverOcean(u8); bool8 MetatileBehavior_IsMossdeepGymWarp(u8); bool8 MetatileBehavior_IsSurfableFishableWater(u8); bool8 MetatileBehavior_IsMtPyreHole(u8); diff --git a/src/battle_setup.c b/src/battle_setup.c index 4337ec29cf35..28e80545f1dd 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -674,9 +674,11 @@ u8 BattleSetup_GetTerrainId(void) return BATTLE_TERRAIN_MOUNTAIN; if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING)) { - if (MetatileBehavior_GetBridgeType(tileBehavior)) + // Is BRIDGE_TYPE_POND_*? + if (MetatileBehavior_GetBridgeType(tileBehavior) != BRIDGE_TYPE_OCEAN) return BATTLE_TERRAIN_POND; - if (MetatileBehavior_IsBridge(tileBehavior) == TRUE) + + if (MetatileBehavior_IsBridgeOverWater(tileBehavior) == TRUE) return BATTLE_TERRAIN_WATER; } if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE113)) diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 10f8d49bb14c..e58fb783b3a8 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -729,9 +729,9 @@ static bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileB DoTeleportTileWarp(); return TRUE; } - if (MetatileBehavior_IsWarpOrBridge(metatileBehavior) == TRUE) + if (MetatileBehavior_IsBridgeOverOcean(metatileBehavior) == TRUE) { - // Maybe unused? This MB is used by log bridges, but there's never a warp event on them + // Maybe unused? This MB is used by log bridges, but there's never a warp event on them. DoSpinExitWarp(); return TRUE; } @@ -762,7 +762,7 @@ static bool8 IsWarpMetatileBehavior(u16 metatileBehavior) && MetatileBehavior_IsAquaHideoutWarp(metatileBehavior) != TRUE && MetatileBehavior_IsMtPyreHole(metatileBehavior) != TRUE && MetatileBehavior_IsMossdeepGymWarp(metatileBehavior) != TRUE - && MetatileBehavior_IsWarpOrBridge(metatileBehavior) != TRUE) + && MetatileBehavior_IsBridgeOverOcean(metatileBehavior) != TRUE) return FALSE; return TRUE; } diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 0a0e465a876b..0acb15863778 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -71,9 +71,15 @@ static s16 GetReflectionVerticalOffset(struct ObjectEvent *objectEvent) static void LoadObjectReflectionPalette(struct ObjectEvent *objectEvent, struct Sprite *reflectionSprite) { u8 bridgeType; - u16 bridgeReflectionVerticalOffsets[] = { 12, 28, 44 }; + u16 bridgeReflectionVerticalOffsets[] = { + [BRIDGE_TYPE_POND_LOW - 1] = 12, + [BRIDGE_TYPE_POND_MED - 1] = 28, + [BRIDGE_TYPE_POND_HIGH - 1] = 44 + }; reflectionSprite->sReflectionVerticalOffset = 0; - if (!GetObjectEventGraphicsInfo(objectEvent->graphicsId)->disableReflectionPaletteLoad && ((bridgeType = MetatileBehavior_GetBridgeType(objectEvent->previousMetatileBehavior)) || (bridgeType = MetatileBehavior_GetBridgeType(objectEvent->currentMetatileBehavior)))) + if (!GetObjectEventGraphicsInfo(objectEvent->graphicsId)->disableReflectionPaletteLoad + && ((bridgeType = MetatileBehavior_GetBridgeType(objectEvent->previousMetatileBehavior)) + || (bridgeType = MetatileBehavior_GetBridgeType(objectEvent->currentMetatileBehavior)))) { reflectionSprite->sReflectionVerticalOffset = bridgeReflectionVerticalOffsets[bridgeType - 1]; LoadObjectHighBridgeReflectionPalette(objectEvent, reflectionSprite->oam.paletteNum); diff --git a/src/item_use.c b/src/item_use.c index 0a3181608364..665d27e7d03d 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -249,7 +249,7 @@ static bool32 CanFish(void) { if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior) && !MapGridIsImpassableAt(x, y)) return TRUE; - if (MetatileBehavior_8089510(tileBehavior) == TRUE) + if (MetatileBehavior_IsBridgeOverWaterNoEdge(tileBehavior) == TRUE) return TRUE; } diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 5c8b8ec5128c..3829523df2d6 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -122,22 +122,22 @@ static const u8 sTileBitAttributes[] = [MB_WATER_SOUTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), [MB_DEEP_SOUTH_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_UNUSED_6F] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_WARP_OR_BRIDGE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_71] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE120_NORTH_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE120_NORTH_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_OCEAN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_LOW] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_MED] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_HIGH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_PACIFIDLOG_VERTICAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_PACIFIDLOG_VERTICAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_PACIFIDLOG_HORIZONTAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_PACIFIDLOG_HORIZONTAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_FORTREE_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_UNUSED_79] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_ROUTE120_SOUTH_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE120_SOUTH_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE120_NORTH_BRIDGE_3] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE120_NORTH_BRIDGE_4] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_7E] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ROUTE110_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_UNUSED_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_UNUSED_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_COUNTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_81] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_82] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), @@ -833,7 +833,9 @@ bool8 MetatileBehavior_IsPlayerRoomPCOn(u8 metatileBehavior) bool8 MetatileBehavior_HasRipples(u8 metatileBehavior) { - if (metatileBehavior == MB_POND_WATER || metatileBehavior == MB_PUDDLE || metatileBehavior == MB_SOOTOPOLIS_DEEP_WATER) + if (metatileBehavior == MB_POND_WATER + || metatileBehavior == MB_PUDDLE + || metatileBehavior == MB_SOOTOPOLIS_DEEP_WATER) return TRUE; else return FALSE; @@ -888,10 +890,19 @@ bool8 MetatileBehavior_IsFootprints(u8 metatileBehavior) return FALSE; } -bool8 MetatileBehavior_IsBridge(u8 metatileBehavior) +// For the sections of log bridges that span water / water's edge. +// Note that the rest of the metatiles for these bridges use MB_NORMAL. +// This is used to allow encounters on the water below the bridge. +bool8 MetatileBehavior_IsBridgeOverWater(u8 metatileBehavior) { - if ((metatileBehavior == MB_WARP_OR_BRIDGE || metatileBehavior == MB_UNUSED_71 || metatileBehavior == MB_ROUTE120_NORTH_BRIDGE_1 || metatileBehavior == MB_ROUTE120_NORTH_BRIDGE_2) - || (metatileBehavior == MB_ROUTE120_NORTH_BRIDGE_3 || metatileBehavior == MB_ROUTE120_NORTH_BRIDGE_4 || metatileBehavior == MB_UNUSED_7E || metatileBehavior == MB_ROUTE110_BRIDGE)) + if ((metatileBehavior == MB_BRIDGE_OVER_OCEAN + || metatileBehavior == MB_BRIDGE_OVER_POND_LOW + || metatileBehavior == MB_BRIDGE_OVER_POND_MED + || metatileBehavior == MB_BRIDGE_OVER_POND_HIGH) + || (metatileBehavior == MB_BRIDGE_OVER_POND_HIGH_EDGE_1 + || metatileBehavior == MB_BRIDGE_OVER_POND_HIGH_EDGE_2 + || metatileBehavior == MB_UNUSED_BRIDGE_1 + || metatileBehavior == MB_UNUSED_BRIDGE_2)) return TRUE; else return FALSE; @@ -899,34 +910,39 @@ bool8 MetatileBehavior_IsBridge(u8 metatileBehavior) u8 MetatileBehavior_GetBridgeType(u8 metatileBehavior) { - u8 result = metatileBehavior - MB_WARP_OR_BRIDGE; - if (result < 4) - return result; + // MB_BRIDGE_OVER_OCEAN --> BRIDGE_TYPE_OCEAN (Routes 110/119) + // MB_BRIDGE_OVER_POND_LOW --> BRIDGE_TYPE_POND_LOW (Unused) + // MB_BRIDGE_OVER_POND_MED --> BRIDGE_TYPE_POND_MED (Route 120, south) + // MB_BRIDGE_OVER_POND_HIGH --> BRIDGE_TYPE_POND_HIGH (Route 120, north) + if (metatileBehavior >= MB_BRIDGE_OVER_OCEAN + && metatileBehavior <= MB_BRIDGE_OVER_POND_HIGH) + return metatileBehavior - MB_BRIDGE_OVER_OCEAN; - result = metatileBehavior - MB_ROUTE120_SOUTH_BRIDGE_1; - if (result < 2) - return 2; + if (metatileBehavior >= MB_BRIDGE_OVER_POND_MED_EDGE_1 + && metatileBehavior <= MB_BRIDGE_OVER_POND_MED_EDGE_2) + return BRIDGE_TYPE_POND_MED; - result = metatileBehavior - MB_ROUTE120_NORTH_BRIDGE_3; - if (result < 2) - return 3; + if (metatileBehavior >= MB_BRIDGE_OVER_POND_HIGH_EDGE_1 + && metatileBehavior <= MB_BRIDGE_OVER_POND_HIGH_EDGE_2) + return BRIDGE_TYPE_POND_HIGH; - return 0; + return BRIDGE_TYPE_OCEAN; } -u8 MetatileBehavior_8089510(u8 metatileBehavior) +// Used to allow fishing below the bridge metatiles. +bool8 MetatileBehavior_IsBridgeOverWaterNoEdge(u8 metatileBehavior) { - u8 result = metatileBehavior - MB_WARP_OR_BRIDGE; - - if (result < 4) - return 1; + if (metatileBehavior >= MB_BRIDGE_OVER_OCEAN + && metatileBehavior <= MB_BRIDGE_OVER_POND_HIGH) + return TRUE; else - return 0; + return FALSE; } bool8 MetatileBehavior_IsLandWildEncounter(u8 metatileBehavior) { - if (MetatileBehavior_IsSurfableWaterOrUnderwater(metatileBehavior) == FALSE && MetatileBehavior_IsEncounterTile(metatileBehavior) == TRUE) + if (MetatileBehavior_IsSurfableWaterOrUnderwater(metatileBehavior) == FALSE + && MetatileBehavior_IsEncounterTile(metatileBehavior) == TRUE) return TRUE; else return FALSE; @@ -934,7 +950,8 @@ bool8 MetatileBehavior_IsLandWildEncounter(u8 metatileBehavior) bool8 MetatileBehavior_IsWaterWildEncounter(u8 metatileBehavior) { - if (MetatileBehavior_IsSurfableWaterOrUnderwater(metatileBehavior) == TRUE && MetatileBehavior_IsEncounterTile(metatileBehavior) == TRUE) + if (MetatileBehavior_IsSurfableWaterOrUnderwater(metatileBehavior) == TRUE + && MetatileBehavior_IsEncounterTile(metatileBehavior) == TRUE) return TRUE; else return FALSE; @@ -1148,8 +1165,10 @@ bool8 MetatileBehavior_IsPacifidlogHorizontalLog2(u8 metatileBehavior) bool8 MetatileBehavior_IsPacifidlogLog(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_1 || metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_2 - || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_1 || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_2) + if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_1 + || metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_2 + || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_1 + || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_2) return TRUE; else return FALSE; @@ -1243,9 +1262,13 @@ bool8 MetatileBehavior_IsAquaHideoutWarp(u8 metatileBehavior) return FALSE; } -bool8 MetatileBehavior_IsWarpOrBridge(u8 metatileBehavior) +// Very odd, used to initiate a teleport-style warp. +// No warp events seem to be on a metatile of this kind, and it's +// used by log bridges over ocean-style water, which wouldn't make +// sense to have a warp like this. +bool8 MetatileBehavior_IsBridgeOverOcean(u8 metatileBehavior) { - if (metatileBehavior == MB_WARP_OR_BRIDGE) + if (metatileBehavior == MB_BRIDGE_OVER_OCEAN) return TRUE; else return FALSE; @@ -1262,9 +1285,15 @@ bool8 MetatileBehavior_IsMossdeepGymWarp(u8 metatileBehavior) bool8 MetatileBehavior_IsSurfableFishableWater(u8 metatileBehavior) { - if (metatileBehavior == MB_POND_WATER || metatileBehavior == MB_OCEAN_WATER || metatileBehavior == MB_SEMI_DEEP_WATER || metatileBehavior == MB_DEEP_WATER - || metatileBehavior == MB_SOOTOPOLIS_DEEP_WATER || (metatileBehavior == MB_EASTWARD_CURRENT || metatileBehavior == MB_WESTWARD_CURRENT - || metatileBehavior == MB_NORTHWARD_CURRENT || metatileBehavior == MB_SOUTHWARD_CURRENT)) + if (metatileBehavior == MB_POND_WATER + || metatileBehavior == MB_OCEAN_WATER + || metatileBehavior == MB_SEMI_DEEP_WATER + || metatileBehavior == MB_DEEP_WATER + || metatileBehavior == MB_SOOTOPOLIS_DEEP_WATER + || (metatileBehavior == MB_EASTWARD_CURRENT + || metatileBehavior == MB_WESTWARD_CURRENT + || metatileBehavior == MB_NORTHWARD_CURRENT + || metatileBehavior == MB_SOUTHWARD_CURRENT)) return TRUE; else return FALSE; diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 5d7425762938..458882853a84 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -613,7 +613,7 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi } } else if (MetatileBehavior_IsWaterWildEncounter(currMetaTileBehavior) == TRUE - || (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridge(currMetaTileBehavior) == TRUE)) + || (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridgeOverWater(currMetaTileBehavior) == TRUE)) { if (AreLegendariesInSootopolisPreventingEncounters() == TRUE) return FALSE; From 24b4e898ada55c79a0575684722b9d42e63017e9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Oct 2021 14:40:04 -0400 Subject: [PATCH 323/762] More mauville_old_man clean up --- data/text/mauville_man.inc | 38 +++--- gflib/text.h | 2 +- include/constants/global.h | 1 + include/event_scripts.h | 40 +++--- include/global.h | 2 +- src/mauville_old_man.c | 256 ++++++++++++++++++++----------------- 6 files changed, 184 insertions(+), 155 deletions(-) diff --git a/data/text/mauville_man.inc b/data/text/mauville_man.inc index 5d9954d9bc9d..5b7dfbb7b433 100644 --- a/data/text/mauville_man.inc +++ b/data/text/mauville_man.inc @@ -1,63 +1,63 @@ -@ Only contains a portion of the mauville_man text. The rest is in scripts/mauville_man.inc -gText_SoPretty:: +@ Only contains the text for the Mauville Man named Giddy. The rest is in scripts/mauville_man.inc +GiddyText_SoPretty:: .string " so pretty!$" -gText_SoDarling:: +GiddyText_SoDarling:: .string " so darling!$" -gText_SoRelaxed:: +GiddyText_SoRelaxed:: .string " so relaxed!$" -gText_SoSunny:: +GiddyText_SoSunny:: .string " so sunny!$" -gText_SoDesirable:: +GiddyText_SoDesirable:: .string " so desirable!$" -gText_SoExciting:: +GiddyText_SoExciting:: .string " so exciting!$" -gText_SoAmusing:: +GiddyText_SoAmusing:: .string " so amusing!$" -gText_SoMagical:: +GiddyText_SoMagical:: .string " so magical!$" -gOtherText_Is:: +GiddyText_Is:: .string " is$" -gOtherText_DontYouAgree:: +GiddyText_DontYouAgree:: .string "\n" .string "Don't you agree?$" -gMauvilleManText_ISoWantToGoOnAVacation:: +GiddyText_ISoWantToGoOnAVacation:: .string "I so want to go on a vacation.\n" .string "Would you happen to know a nice place?$" -gMauvilleManText_IBoughtCrayonsWith120Colors:: +GiddyText_IBoughtCrayonsWith120Colors:: .string "I bought crayons with 120 colors!\n" .string "Don't you think that's nice?$" -gMauvilleManText_WouldntItBeNiceIfWeCouldFloat:: +GiddyText_WouldntItBeNiceIfWeCouldFloat:: .string "Wouldn't it be nice if we could float\n" .string "away on a cloud of bubbles?$" -gMauvilleManText_WhenYouWriteOnASandyBeach:: +GiddyText_WhenYouWriteOnASandyBeach:: .string "When you write on a sandy beach,\n" .string "they wash away. It makes me sad.$" -gMauvilleManText_WhatsTheBottomOfTheSeaLike:: +GiddyText_WhatsTheBottomOfTheSeaLike:: .string "What's the bottom of the sea like?\n" .string "Just once I would so love to go!$" -gMauvilleManText_WhenYouSeeTheSettingSunDoesIt:: +GiddyText_WhenYouSeeTheSettingSunDoesIt:: .string "When you see the setting sun, does it\n" .string "make you want to go home?$" -gMauvilleManText_LyingBackInTheGreenGrass:: +GiddyText_LyingBackInTheGreenGrass:: .string "Lying back in the green grass…\n" .string "Oh, it's so, so nice!$" -gMauvilleManText_SecretBasesAreSoWonderful:: +GiddyText_SecretBasesAreSoWonderful:: .string "SECRET BASES are so wonderful!\n" .string "Can't you feel the excitement?$" diff --git a/gflib/text.h b/gflib/text.h index 8871ba2f18dc..ee3dfa34c567 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -52,7 +52,7 @@ #define CHAR_LV 0x34 #define CHAR_EQUALS 0x35 #define CHAR_SEMICOLON 0x36 -// +#define CHAR_BARD_WORD_DELIMIT 0x37 // Empty space to separate words in Bard's song #define CHAR_INV_QUESTION_MARK 0x51 #define CHAR_INV_EXCL_MARK 0x52 #define CHAR_PK 0x53 diff --git a/include/constants/global.h b/include/constants/global.h index 6d3fa936d6d9..3d5da0078081 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -96,6 +96,7 @@ #define NUM_STORYTELLER_TALES 4 #define NUM_TRADER_ITEMS 4 #define GIDDY_MAX_TALES 10 +#define GIDDY_MAX_QUESTIONS 8 #define OPTIONS_BUTTON_MODE_NORMAL 0 #define OPTIONS_BUTTON_MODE_LR 1 diff --git a/include/event_scripts.h b/include/event_scripts.h index 1a24aa59d398..a19d4553a4c6 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -382,27 +382,27 @@ extern const u8 EventScript_UseRockSmash[]; extern const u8 LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC[]; extern const u8 LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC[]; -//mauville_old_man -extern const u8 gOtherText_Is[]; -extern const u8 gOtherText_DontYouAgree[]; -extern const u8 gText_SoPretty[]; -extern const u8 gText_SoDarling[]; -extern const u8 gText_SoRelaxed[]; -extern const u8 gText_SoSunny[]; -extern const u8 gText_SoDesirable[]; -extern const u8 gText_SoExciting[]; -extern const u8 gText_SoAmusing[]; -extern const u8 gText_SoMagical[]; -extern const u8 gMauvilleManText_ISoWantToGoOnAVacation[]; -extern const u8 gMauvilleManText_IBoughtCrayonsWith120Colors[]; -extern const u8 gMauvilleManText_WouldntItBeNiceIfWeCouldFloat[]; -extern const u8 gMauvilleManText_WhenYouWriteOnASandyBeach[]; -extern const u8 gMauvilleManText_WhatsTheBottomOfTheSeaLike[]; -extern const u8 gMauvilleManText_WhenYouSeeTheSettingSunDoesIt[]; -extern const u8 gMauvilleManText_LyingBackInTheGreenGrass[]; -extern const u8 gMauvilleManText_SecretBasesAreSoWonderful[]; +// Mauville Old Man (Giddy) +extern const u8 GiddyText_Is[]; +extern const u8 GiddyText_DontYouAgree[]; +extern const u8 GiddyText_SoPretty[]; +extern const u8 GiddyText_SoDarling[]; +extern const u8 GiddyText_SoRelaxed[]; +extern const u8 GiddyText_SoSunny[]; +extern const u8 GiddyText_SoDesirable[]; +extern const u8 GiddyText_SoExciting[]; +extern const u8 GiddyText_SoAmusing[]; +extern const u8 GiddyText_SoMagical[]; +extern const u8 GiddyText_ISoWantToGoOnAVacation[]; +extern const u8 GiddyText_IBoughtCrayonsWith120Colors[]; +extern const u8 GiddyText_WouldntItBeNiceIfWeCouldFloat[]; +extern const u8 GiddyText_WhenYouWriteOnASandyBeach[]; +extern const u8 GiddyText_WhatsTheBottomOfTheSeaLike[]; +extern const u8 GiddyText_WhenYouSeeTheSettingSunDoesIt[]; +extern const u8 GiddyText_LyingBackInTheGreenGrass[]; +extern const u8 GiddyText_SecretBasesAreSoWonderful[]; -// mauville old man storyteller +// Mauville Old Man (storyteller) extern const u8 MauvilleCity_PokemonCenter_1F_Text_SavedGameTitle[]; extern const u8 MauvilleCity_PokemonCenter_1F_Text_SavedGameAction[]; extern const u8 MauvilleCity_PokemonCenter_1F_Text_SavedGameStory[]; diff --git a/include/global.h b/include/global.h index dcec2c4dbf40..8b2c2ae86286 100644 --- a/include/global.h +++ b/include/global.h @@ -640,7 +640,7 @@ struct MauvilleManGiddy /*0x01*/ u8 taleCounter; /*0x02*/ u8 questionNum; /*0x04*/ u16 randomWords[GIDDY_MAX_TALES]; - /*0x18*/ u8 questionList[8]; + /*0x18*/ u8 questionList[GIDDY_MAX_QUESTIONS]; /*0x20*/ u8 language; }; /*size = 0x2C*/ diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index d202bc638f0e..2fd0e67307e5 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -24,8 +24,6 @@ #include "m4a.h" #include "constants/mauville_old_man.h" -#define CHAR_SONG_WORD_SEPARATOR 0x37 - static void InitGiddyTaleList(void); static void StartBardSong(bool8 useTemporaryLyrics); static void Task_BardSong(u8 taskId); @@ -50,25 +48,28 @@ static const u16 sDefaultBardSongLyrics[BARD_SONG_LENGTH] = { }; static const u8 * const sGiddyAdjectives[] = { - gText_SoPretty, - gText_SoDarling, - gText_SoRelaxed, - gText_SoSunny, - gText_SoDesirable, - gText_SoExciting, - gText_SoAmusing, - gText_SoMagical + GiddyText_SoPretty, + GiddyText_SoDarling, + GiddyText_SoRelaxed, + GiddyText_SoSunny, + GiddyText_SoDesirable, + GiddyText_SoExciting, + GiddyText_SoAmusing, + GiddyText_SoMagical }; -static const u8 * const sGiddyQuestions[] = { - gMauvilleManText_ISoWantToGoOnAVacation, - gMauvilleManText_IBoughtCrayonsWith120Colors, - gMauvilleManText_WouldntItBeNiceIfWeCouldFloat, - gMauvilleManText_WhenYouWriteOnASandyBeach, - gMauvilleManText_WhatsTheBottomOfTheSeaLike, - gMauvilleManText_WhenYouSeeTheSettingSunDoesIt, - gMauvilleManText_LyingBackInTheGreenGrass, - gMauvilleManText_SecretBasesAreSoWonderful +// 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] = { + GiddyText_ISoWantToGoOnAVacation, + GiddyText_IBoughtCrayonsWith120Colors, + GiddyText_WouldntItBeNiceIfWeCouldFloat, + GiddyText_WhenYouWriteOnASandyBeach, + GiddyText_WhatsTheBottomOfTheSeaLike, + GiddyText_WhenYouSeeTheSettingSunDoesIt, + GiddyText_LyingBackInTheGreenGrass, + GiddyText_SecretBasesAreSoWonderful }; static void SetupBard(void) @@ -185,7 +186,7 @@ static void PrepareSongText(void) while (wordEnd != str) { if (*str == CHAR_SPACE) - *str = CHAR_SONG_WORD_SEPARATOR; + *str = CHAR_BARD_WORD_DELIMIT; str++; } @@ -196,7 +197,7 @@ static void PrepareSongText(void) while (wordEnd != str) { if (*str == CHAR_SPACE) - *str = CHAR_SONG_WORD_SEPARATOR; + *str = CHAR_BARD_WORD_DELIMIT; str++; } @@ -207,7 +208,7 @@ static void PrepareSongText(void) while (wordEnd != str) { if (*str == CHAR_SPACE) - *str = CHAR_SONG_WORD_SEPARATOR; + *str = CHAR_BARD_WORD_DELIMIT; str++; } @@ -272,22 +273,26 @@ void GenerateGiddyLine(void) if (giddy->taleCounter == 0) InitGiddyTaleList(); + // A line from Giddy is either a line following this format: + // "{random word} is so {adjective}! Don't you agree?", + // or one of the texts in sGiddyQuestions. if (giddy->randomWords[giddy->taleCounter] != EC_EMPTY_WORD) { u8 *stringPtr; u32 adjective = Random(); + adjective %= ARRAY_COUNT(sGiddyAdjectives); - adjective %= 8; stringPtr = CopyEasyChatWord(gStringVar4, giddy->randomWords[giddy->taleCounter]); - stringPtr = StringCopy(stringPtr, gOtherText_Is); + stringPtr = StringCopy(stringPtr, GiddyText_Is); stringPtr = StringCopy(stringPtr, sGiddyAdjectives[adjective]); - StringCopy(stringPtr, gOtherText_DontYouAgree); + StringCopy(stringPtr, GiddyText_DontYouAgree); } else { StringCopy(gStringVar4, sGiddyQuestions[giddy->questionList[giddy->questionNum++]]); } + // 10% chance for Giddy to stop telling tales. if (!(Random() % 10)) giddy->taleCounter = GIDDY_MAX_TALES; else @@ -308,45 +313,53 @@ static void InitGiddyTaleList(void) {EC_GROUP_POKEMON_NATIONAL, 0} }; u16 i; - u16 r10; - u16 r7; - u16 r1; + u16 totalWords; + u16 temp; + u16 var; // re-used // Shuffle question list - for (i = 0; i < 8; i++) + for (i = 0; i < GIDDY_MAX_QUESTIONS; i++) giddy->questionList[i] = i; - for (i = 0; i < 8; i++) + for (i = 0; i < GIDDY_MAX_QUESTIONS; i++) { - r1 = Random() % (i + 1); - SWAP(giddy->questionList[i], giddy->questionList[r1], r7); + var = Random() % (i + 1); + SWAP(giddy->questionList[i], giddy->questionList[var], temp); } - r10 = 0; - for (i = 0; i < 6; i++) + // Count total number of words in above word groups + totalWords = 0; + for (i = 0; i < ARRAY_COUNT(wordGroupsAndCount); i++) { wordGroupsAndCount[i][1] = EasyChat_GetNumWordsInGroup(wordGroupsAndCount[i][0]); - r10 += wordGroupsAndCount[i][1]; + totalWords += wordGroupsAndCount[i][1]; } giddy->questionNum = 0; - r7 = 0; + temp = 0; for (i = 0; i < GIDDY_MAX_TALES; i++) { - r1 = Random() % 10; - if (r1 < 3 && r7 < 8) + var = Random() % 10; + if (var < 3 && temp < GIDDY_MAX_QUESTIONS) { + // 30% chance for word to be empty (in which case Giddy + // will say one of his non-random questions), unless + // the limit for questions has been reached already. giddy->randomWords[i] = EC_EMPTY_WORD; - r7++; + temp++; } else { - s16 r2 = Random() % r10; - for (r1 = 0; i < 6; r1++) - if ((r2 -= wordGroupsAndCount[r1][1]) <= 0) + // Pick a random word id, then advance through the word + // groups until the group where that id landed. + s16 randWord = Random() % totalWords; + for (var = 0; i < ARRAY_COUNT(wordGroupsAndCount); var++) + if ((randWord -= wordGroupsAndCount[var][1]) <= 0) break; - if (r1 == 6) - r1 = 0; - giddy->randomWords[i] = GetRandomEasyChatWordFromUnlockedGroup(wordGroupsAndCount[r1][0]); + if (var == ARRAY_COUNT(wordGroupsAndCount)) + var = 0; + + // Save the randomly selected word + giddy->randomWords[i] = GetRandomEasyChatWordFromUnlockedGroup(wordGroupsAndCount[var][0]); } } } @@ -392,10 +405,23 @@ void ResetMauvilleOldManFlag(void) SetMauvilleOldManObjEventGfx(); } +// States and task data for Task_BardSong. +// The function BardSing receives this task as an +// argument and reads its state as well. +enum { + BARD_STATE_INIT, + BARD_STATE_WAIT_BGM, + BARD_STATE_GET_WORD, + BARD_STATE_HANDLE_WORD, + BARD_STATE_WAIT_WORD, + BARD_STATE_PAUSE, +}; -#define tState data[0] -#define tCharIndex data[3] -#define tCurrWord data[4] +#define tState data[0] +#define tWordState data[1] +#define tDelay data[2] +#define tCharIndex data[3] +#define tCurrWord data[4] #define tUseTemporaryLyrics data[5] #define MACRO1(a) (((a) & 3) + (((a) / 8) & 1)) @@ -418,7 +444,7 @@ static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) gDisableTextPrinters = TRUE; } -static void sub_8120708(const u8 * str) +static void DrawSongTextWindow(const u8 * str) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, 1, str, 0, 1, 1, DisableTextPrinters); @@ -430,7 +456,7 @@ static void BardSing(struct Task *task, struct BardSong *song) { switch (task->tState) { - case 0: // Initialize song + case BARD_STATE_INIT: { struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; u16 *lyrics; @@ -446,9 +472,9 @@ static void BardSing(struct Task *task, struct BardSong *song) song->currWord = 0; } break; - case 1: // Wait for BGM to end + case BARD_STATE_WAIT_BGM: break; - case 2: // Initialize word + case BARD_STATE_GET_WORD: { u16 word = song->lyrics[song->currWord]; song->sound = GetWordSounds(word); @@ -463,8 +489,8 @@ static void BardSing(struct Task *task, struct BardSong *song) } break; } - case 3: - case 4: + case BARD_STATE_HANDLE_WORD: + case BARD_STATE_WAIT_WORD: { const struct BardSound *sound = &song->sound[song->currPhoneme]; @@ -524,7 +550,7 @@ static void BardSing(struct Task *task, struct BardSong *song) } } break; - case 5: + case BARD_STATE_PAUSE: break; } } @@ -534,28 +560,30 @@ static void Task_BardSong(u8 taskId) struct Task *task = &gTasks[taskId]; BardSing(task, &gBardSong); + switch (task->tState) { - case 0: // Initialize song + case BARD_STATE_INIT: PrepareSongText(); - sub_8120708(gStringVar4); - task->data[1] = 0; - task->data[2] = 0; + DrawSongTextWindow(gStringVar4); + task->tWordState = 0; + task->tDelay = 0; task->tCharIndex = 0; task->tCurrWord = 0; FadeOutBGMTemporarily(4); - task->tState = 1; + task->tState = BARD_STATE_WAIT_BGM; break; - case 1: // Wait for BGM to end + case BARD_STATE_WAIT_BGM: if (IsBGMPausedOrStopped()) - task->tState = 2; + task->tState = BARD_STATE_GET_WORD; break; - case 2: // Initialize word + case BARD_STATE_GET_WORD: { struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard; - u8 *str = gStringVar4 + task->tCharIndex; + u8 *str = &gStringVar4[task->tCharIndex]; u16 wordLen = 0; + // Read letters until delimiter while (*str != CHAR_SPACE && *str != CHAR_NEWLINE && *str != EXT_CTRL_CODE_BEGIN @@ -564,6 +592,7 @@ static void Task_BardSong(u8 taskId) str++; wordLen++; } + if (!task->tUseTemporaryLyrics) sUnknownBardRelated = MACRO2(bard->songLyrics[task->tCurrWord]); else @@ -574,27 +603,29 @@ static void Task_BardSong(u8 taskId) gBardSong.length = 1; task->tCurrWord++; - if (task->data[2] == 0) + if (task->tDelay == 0) { - task->tState = 3; - task->data[1] = 0; + task->tState = BARD_STATE_HANDLE_WORD; + task->tWordState = 0; } else { - task->tState = 5; - task->data[1] = 0; + task->tState = BARD_STATE_PAUSE; + task->tWordState = 0; } } break; - case 5: - if (task->data[2] == 0) - task->tState = 3; + case BARD_STATE_PAUSE: + // Wait before singing next word + if (task->tDelay == 0) + task->tState = BARD_STATE_HANDLE_WORD; else - task->data[2]--; + task->tDelay--; break; - case 3: + case BARD_STATE_HANDLE_WORD: if (gStringVar4[task->tCharIndex] == EOS) { + // End song FadeInBGM(6); m4aMPlayFadeOutTemporarily(&gMPlayInfo_SE2, 2); EnableBothScriptContexts(); @@ -602,55 +633,61 @@ static void Task_BardSong(u8 taskId) } else if (gStringVar4[task->tCharIndex] == CHAR_SPACE) { - + // Handle space EnableTextPrinters(); task->tCharIndex++; - task->tState = 2; - task->data[2] = 0; + task->tState = BARD_STATE_GET_WORD; + task->tDelay = 0; } else if (gStringVar4[task->tCharIndex] == CHAR_NEWLINE) { + // Handle newline task->tCharIndex++; - task->tState = 2; - task->data[2] = 0; + task->tState = BARD_STATE_GET_WORD; + task->tDelay = 0; } else if (gStringVar4[task->tCharIndex] == EXT_CTRL_CODE_BEGIN) { + // Handle ctrl code task->tCharIndex += 2; // skip over control codes - task->tState = 2; - task->data[2] = 8; + task->tState = BARD_STATE_GET_WORD; + task->tDelay = 8; } - else if (gStringVar4[task->tCharIndex] == CHAR_SONG_WORD_SEPARATOR) + else if (gStringVar4[task->tCharIndex] == CHAR_BARD_WORD_DELIMIT) { - gStringVar4[task->tCharIndex] = CHAR_SPACE; // restore it back to a space + // Handle word boundary + gStringVar4[task->tCharIndex] = CHAR_SPACE; // Replace with a real space EnableTextPrinters(); task->tCharIndex++; - task->data[2] = 0; + task->tDelay = 0; } else { - switch (task->data[1]) + // Handle regular word + switch (task->tWordState) { case 0: EnableTextPrinters(); - task->data[1]++; + task->tWordState++; break; case 1: - task->data[1]++; + task->tWordState++; break; case 2: task->tCharIndex++; - task->data[1] = 0; - task->data[2] = gBardSong.length; - task->tState = 4; + task->tWordState = 0; + task->tDelay = gBardSong.length; + task->tState = BARD_STATE_WAIT_WORD; break; } } break; - case 4: - task->data[2]--; - if (task->data[2] == 0) - task->tState = 3; + case BARD_STATE_WAIT_WORD: + // Wait for word to finish being sung. + // BardSing will continue to play it. + task->tDelay--; + if (task->tDelay == 0) + task->tState = BARD_STATE_HANDLE_WORD; break; } RunTextPrintersAndIsPrinter0Active(); @@ -1107,6 +1144,9 @@ static const struct Story sStorytellerStories[] = { } }; +static const s32 sNumStories = ARRAY_COUNT(sStorytellerStories); +static const u32 sUnused = 8; + static void StorytellerSetup(void) { s32 i; @@ -1140,12 +1180,12 @@ static const struct Story *GetStoryByStat(u32 stat) { s32 i; - for (i = 0; i < (int)ARRAY_COUNT(sStorytellerStories); i++) + for (i = 0; i < sNumStories; i++) { if (sStorytellerStories[i].stat == stat) return &sStorytellerStories[i]; } - return &sStorytellerStories[ARRAY_COUNT(sStorytellerStories) - 1]; + return &sStorytellerStories[sNumStories - 1]; } static const u8 *GetStoryTitleByStat(u32 stat) @@ -1241,28 +1281,16 @@ static void ScrambleStatList(u8 * arr, s32 count) } } -struct UnknownStruct_0859F288 -{ - s32 length; - u32 unused2; -}; - -static const struct UnknownStruct_0859F288 sStorytellerStuff = { - ARRAY_COUNT(sStorytellerStories), - sizeof(sStorytellerStuff) -}; - static bool8 StorytellerInitializeRandomStat(void) { - u8 arr[sStorytellerStuff.length]; - s32 i; - s32 j; + u8 storyIds[sNumStories]; + s32 i, j; - ScrambleStatList(arr, ARRAY_COUNT(sStorytellerStories)); - for (i = 0; i < (s32)ARRAY_COUNT(sStorytellerStories); i++) + ScrambleStatList(storyIds, sNumStories); + for (i = 0; i < sNumStories; i++) { - u8 stat = sStorytellerStories[arr[i]].stat; - u8 minVal = sStorytellerStories[arr[i]].minVal; + u8 stat = sStorytellerStories[storyIds[i]].stat; + u8 minVal = sStorytellerStories[storyIds[i]].minVal; for (j = 0; j < NUM_STORYTELLER_TALES; j++) { From bc409baeff4ef2ec9ab774e0ecd1d0cca991eaaf Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 19 Oct 2021 16:30:00 -0400 Subject: [PATCH 324/762] Fix incorrect NUM_SECTORS_PER_SLOT define --- include/save.h | 4 +--- src/save.c | 53 +++++++++++++++++++++++++------------------------- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/include/save.h b/include/save.h index 4eaa72458460..406e2e492e8b 100644 --- a/include/save.h +++ b/include/save.h @@ -34,8 +34,6 @@ struct SaveSectionOffsets #define SECTOR_FOOTER_SIZE 128 #define SECTOR_SIZE (SECTOR_DATA_SIZE + SECTOR_FOOTER_SIZE) -// Emerald changes this definition to be the sectors per slot. -#define NUM_SECTORS_PER_SLOT 16 #define NUM_SAVE_SLOTS 2 #define UNKNOWN_CHECK_VALUE 0x8012025 @@ -66,7 +64,7 @@ enum #define SECTOR_ID_SAVEBLOCK1_END 4 #define SECTOR_ID_PKMN_STORAGE_START 5 #define SECTOR_ID_PKMN_STORAGE_END 13 -#define SECTOR_SAVE_SLOT_LENGTH 14 +#define NUM_SECTORS_PER_SLOT 14 // Save Slot 1: 0-13; Save Slot 2: 14-27 #define SECTOR_ID_HOF_1 28 #define SECTOR_ID_HOF_2 29 diff --git a/src/save.c b/src/save.c index 40fce4e8a79c..3c8f4360dc79 100644 --- a/src/save.c +++ b/src/save.c @@ -81,7 +81,7 @@ u16 gUnknown_03006208; u16 gSaveUnusedVar; u16 gSaveFileStatus; void (*gGameContinueCallback)(void); -struct SaveSectionLocation gRamSaveSectionLocations[SECTOR_SAVE_SLOT_LENGTH]; +struct SaveSectionLocation gRamSaveSectionLocations[NUM_SECTORS_PER_SLOT]; u16 gSaveUnusedVar2; u16 gSaveAttemptStatus; @@ -92,10 +92,11 @@ void ClearSaveData(void) { u16 i; - for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) + // Clear the full save two sectors at a time + for (i = 0; i < SECTORS_COUNT / 2; i++) { EraseFlashSector(i); - EraseFlashSector(i + NUM_SECTORS_PER_SLOT); // clear slot 2. + EraseFlashSector(i + SECTORS_COUNT / 2); } } @@ -143,11 +144,11 @@ static u8 SaveWriteToFlash(u16 sectorId, const struct SaveSectionLocation *locat gLastKnownGoodSector = gLastWrittenSector; // backup the current written sector before attempting to write. gLastSaveCounter = gSaveCounter; gLastWrittenSector++; - gLastWrittenSector = gLastWrittenSector % SECTOR_SAVE_SLOT_LENGTH; // array count save sector locations + gLastWrittenSector = gLastWrittenSector % NUM_SECTORS_PER_SLOT; // array count save sector locations gSaveCounter++; status = SAVE_STATUS_OK; - for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) + for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) HandleWriteSector(i, location); if (gDamagedSaveSectors != 0) // skip the damaged sector. @@ -169,8 +170,8 @@ static u8 HandleWriteSector(u16 sectorId, const struct SaveSectionLocation *loca u16 size; sector = sectorId + gLastWrittenSector; - sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + sector %= NUM_SECTORS_PER_SLOT; + sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); data = location[sectorId].data; size = location[sectorId].size; @@ -227,7 +228,7 @@ static u32 RestoreSaveBackupVarsAndIncrement(const struct SaveSectionLocation *l gLastKnownGoodSector = gLastWrittenSector; gLastSaveCounter = gSaveCounter; gLastWrittenSector++; - gLastWrittenSector %= SECTOR_SAVE_SLOT_LENGTH; + gLastWrittenSector %= NUM_SECTORS_PER_SLOT; gSaveCounter++; gUnknown_03006208 = 0; gDamagedSaveSectors = 0; @@ -292,8 +293,8 @@ static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *locati u8 status; sector = sectorId + gLastWrittenSector; - sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + sector %= NUM_SECTORS_PER_SLOT; + sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); data = location[sectorId].data; size = location[sectorId].size; @@ -362,8 +363,8 @@ static u8 sav12_xor_get(u16 sectorId, const struct SaveSectionLocation *location u16 sector; sector = sectorId + gLastWrittenSector; // no sub 1? - sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + sector %= NUM_SECTORS_PER_SLOT; + sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) { @@ -385,8 +386,8 @@ static u8 sub_8152CAC(u16 sectorId, const struct SaveSectionLocation *location) u16 sector; sector = sectorId + gLastWrittenSector - 1; - sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + sector %= NUM_SECTORS_PER_SLOT; + sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), ((u8 *)gFastSaveSection)[sizeof(struct UnkSaveSection)])) { @@ -408,8 +409,8 @@ static u8 sub_8152D44(u16 sectorId, const struct SaveSectionLocation *location) u16 sector; sector = sectorId + gLastWrittenSector - 1; // no sub 1? - sector %= SECTOR_SAVE_SLOT_LENGTH; - sector += SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + sector %= NUM_SECTORS_PER_SLOT; + sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) { @@ -447,10 +448,10 @@ static u8 sub_8152E10(u16 a1, const struct SaveSectionLocation *location) { u16 i; u16 checksum; - u16 slotOffset = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); + u16 slotOffset = NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); u16 id; - for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) + for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); id = gFastSaveSection->id; @@ -481,7 +482,7 @@ static u8 GetSaveValidStatus(const struct SaveSectionLocation *location) u8 saveSlot2Status; // check save slot 1. - for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) + for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { DoReadFlashWholeSection(i, gFastSaveSection); if (gFastSaveSection->security == UNKNOWN_CHECK_VALUE) @@ -512,9 +513,9 @@ static u8 GetSaveValidStatus(const struct SaveSectionLocation *location) securityPassed = FALSE; // check save slot 2. - for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) + for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { - DoReadFlashWholeSection(i + SECTOR_SAVE_SLOT_LENGTH, gFastSaveSection); + DoReadFlashWholeSection(i + NUM_SECTORS_PER_SLOT, gFastSaveSection); if (gFastSaveSection->security == UNKNOWN_CHECK_VALUE) { securityPassed = TRUE; @@ -739,7 +740,7 @@ bool8 sub_8153380(void) // trade.c bool8 sub_81533AC(void) // trade.c { - u8 status = sub_81529D4(SECTOR_SAVE_SLOT_LENGTH, gRamSaveSectionLocations); + u8 status = sub_81529D4(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); if (status == SAVE_STATUS_ERROR) @@ -750,7 +751,7 @@ bool8 sub_81533AC(void) // trade.c bool8 sub_81533E0(void) // trade.c { - sub_8152A34(SECTOR_SAVE_SLOT_LENGTH, gRamSaveSectionLocations); + sub_8152A34(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); return FALSE; @@ -758,7 +759,7 @@ bool8 sub_81533E0(void) // trade.c bool8 sub_8153408(void) // trade.c { - sub_8152CAC(SECTOR_SAVE_SLOT_LENGTH, gRamSaveSectionLocations); + sub_8152CAC(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); return FALSE; @@ -835,8 +836,8 @@ u16 GetSaveBlocksPointersBaseOffset(void) return 0; UpdateSaveAddresses(); GetSaveValidStatus(gRamSaveSectionLocations); - slotOffset = SECTOR_SAVE_SLOT_LENGTH * (gSaveCounter % NUM_SAVE_SLOTS); - for (i = 0; i < SECTOR_SAVE_SLOT_LENGTH; i++) + slotOffset = NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); + for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); From 303ce856ad307c9035a336ce7232a0c4decc4b98 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 21 Oct 2021 16:54:16 -0400 Subject: [PATCH 325/762] Fix GET_CARD_BATTLE_LOST typo --- include/constants/mystery_gift.h | 2 +- src/field_specials.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/constants/mystery_gift.h b/include/constants/mystery_gift.h index 07690e37c4ba..8ff71c3aa11f 100644 --- a/include/constants/mystery_gift.h +++ b/include/constants/mystery_gift.h @@ -4,7 +4,7 @@ #define GET_NUM_STAMPS 0 #define GET_MAX_STAMPS 1 #define GET_CARD_BATTLES_WON 2 -#define GET_CARD_BATTLE_LOST 3 +#define GET_CARD_BATTLES_LOST 3 #define GET_CARD_NUM_TRADES 4 #define CARD_STAT_BATTLES_WON 0 diff --git a/src/field_specials.c b/src/field_specials.c index 2789411a53a5..ff02272be0d4 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1661,7 +1661,7 @@ u16 GetMysteryGiftCardStat(void) return MysteryGift_GetCardStat(CARD_STAT_MAX_STAMPS); case GET_CARD_BATTLES_WON: return MysteryGift_GetCardStat(CARD_STAT_BATTLES_WON); - case GET_CARD_BATTLE_LOST: // Never occurs + case GET_CARD_BATTLES_LOST: // Never occurs return MysteryGift_GetCardStat(CARD_STAT_BATTLES_LOST); case GET_CARD_NUM_TRADES: // Never occurs return MysteryGift_GetCardStat(CARD_STAT_NUM_TRADES); From 6067aa65b4d16649785f39fc2e8ff253abb34327 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 21 Oct 2021 22:15:08 -0400 Subject: [PATCH 326/762] Fix shadw typo --- src/mystery_gift_view.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 444ca8bd0e36..0e1c11520ad5 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -57,7 +57,7 @@ struct WonderCardData /*0175*/ u8 statFooterWidth; /*0176*/ u16 windowIds[CARD_WIN_COUNT]; /*017C*/ u8 monIconSpriteId; - /*017D*/ u8 stampSpriteIds[MAX_STAMP_CARD_STAMPS][2]; // 2 sprites each, 1 for the shadw and 1 for the PokĂ©mon + /*017D*/ u8 stampSpriteIds[MAX_STAMP_CARD_STAMPS][2]; // 2 sprites each, 1 for the shadow and 1 for the PokĂ©mon /*018B*/ u8 titleText[WONDER_CARD_TEXT_LENGTH + 1]; /*01B4*/ u8 subtitleText[WONDER_CARD_TEXT_LENGTH + 1]; /*01DD*/ u8 idNumberText[7]; From eb860a368e974860db6b3e56b57e2eff186e4470 Mon Sep 17 00:00:00 2001 From: Jademalo <386846+Jademalo@users.noreply.github.com> Date: Fri, 22 Oct 2021 04:30:33 +0100 Subject: [PATCH 327/762] Improve IDE support --- berry_fix/payload/include/global.h | 4 ++-- include/global.h | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/berry_fix/payload/include/global.h b/berry_fix/payload/include/global.h index c218b5f4e83d..46828630d715 100644 --- a/berry_fix/payload/include/global.h +++ b/berry_fix/payload/include/global.h @@ -6,7 +6,7 @@ // global.h from pokemon ruby // IDE support -#if defined(__APPLE__) || defined(__CYGWIN__) +#if defined (__APPLE__) || defined (__CYGWIN__) || defined (__INTELLISENSE__) #define _(x) x #define __(x) x #define INCBIN(x) {0} @@ -16,7 +16,7 @@ #define INCBIN_S8 INCBIN #define INCBIN_S16 INCBIN #define INCBIN_S32 INCBIN -#endif +#endif // IDE support // Prevent cross-jump optimization. #define BLOCK_CROSS_JUMP asm(""); diff --git a/include/global.h b/include/global.h index d14aa60f43fe..bcd037cb2807 100644 --- a/include/global.h +++ b/include/global.h @@ -20,11 +20,9 @@ #define NAKED __attribute__((naked)) // IDE support -#if defined (__APPLE__) || defined (__CYGWIN__) || defined (_MSC_VER) +#if defined (__APPLE__) || defined (__CYGWIN__) || defined (__INTELLISENSE__) #define _(x) x #define __(x) x - -// Fool CLion IDE #define INCBIN(x) {0} #define INCBIN_U8 INCBIN #define INCBIN_U16 INCBIN From 62436d9f67224e9df691c89222884146bd24263d Mon Sep 17 00:00:00 2001 From: Jademalo <386846+Jademalo@users.noreply.github.com> Date: Sat, 23 Oct 2021 10:10:00 +0100 Subject: [PATCH 328/762] IDE support formatting and consistency --- berry_fix/payload/include/global.h | 21 +++++++++++---------- include/global.h | 23 ++++++++++++----------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/berry_fix/payload/include/global.h b/berry_fix/payload/include/global.h index 46828630d715..4bea138d6733 100644 --- a/berry_fix/payload/include/global.h +++ b/berry_fix/payload/include/global.h @@ -6,16 +6,17 @@ // global.h from pokemon ruby // IDE support -#if defined (__APPLE__) || defined (__CYGWIN__) || defined (__INTELLISENSE__) -#define _(x) x -#define __(x) x -#define INCBIN(x) {0} -#define INCBIN_U8 INCBIN -#define INCBIN_U16 INCBIN -#define INCBIN_U32 INCBIN -#define INCBIN_S8 INCBIN -#define INCBIN_S16 INCBIN -#define INCBIN_S32 INCBIN +#if defined(__APPLE__) || defined(__CYGWIN__) || defined(__INTELLISENSE__) +// We define these when using certain IDEs to fool preproc +#define _(x) (x) +#define __(x) (x) +#define INCBIN(...) {0} +#define INCBIN_U8 INCBIN +#define INCBIN_U16 INCBIN +#define INCBIN_U32 INCBIN +#define INCBIN_S8 INCBIN +#define INCBIN_S16 INCBIN +#define INCBIN_S32 INCBIN #endif // IDE support // Prevent cross-jump optimization. diff --git a/include/global.h b/include/global.h index bcd037cb2807..a919edddf551 100644 --- a/include/global.h +++ b/include/global.h @@ -19,17 +19,18 @@ #define asm_unified(x) asm(".syntax unified\n" x "\n.syntax divided") #define NAKED __attribute__((naked)) -// IDE support -#if defined (__APPLE__) || defined (__CYGWIN__) || defined (__INTELLISENSE__) -#define _(x) x -#define __(x) x -#define INCBIN(x) {0} -#define INCBIN_U8 INCBIN -#define INCBIN_U16 INCBIN -#define INCBIN_U32 INCBIN -#define INCBIN_S8 INCBIN -#define INCBIN_S16 INCBIN -#define INCBIN_S32 INCBIN +/// IDE support +#if defined(__APPLE__) || defined(__CYGWIN__) || defined(__INTELLISENSE__) +// We define these when using certain IDEs to fool preproc +#define _(x) (x) +#define __(x) (x) +#define INCBIN(...) {0} +#define INCBIN_U8 INCBIN +#define INCBIN_U16 INCBIN +#define INCBIN_U32 INCBIN +#define INCBIN_S8 INCBIN +#define INCBIN_S16 INCBIN +#define INCBIN_S32 INCBIN #endif // IDE support #define ARRAY_COUNT(array) (size_t)(sizeof(array) / sizeof((array)[0])) From f182e9b9fd908d95a6b478435c07e53acbf8e7cc Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sat, 23 Oct 2021 11:17:23 -0300 Subject: [PATCH 329/762] Added .sym files to .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 9286b03c46ff..fd16840c67f7 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ porymap.project.cfg .fuse_hidden* *.sna *.diff +*.sym From 7f3c52993573b3cc1c8d1013c68d9b57c3146bd7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 23 Oct 2021 10:55:46 -0400 Subject: [PATCH 330/762] Document record mixing mail swap --- .../BattleFrontier_RankingHall/scripts.inc | 20 +- include/constants/battle_frontier.h | 49 +- include/constants/global.h | 14 +- include/daycare.h | 9 +- include/global.h | 94 +-- include/mail.h | 10 +- include/record_mixing.h | 4 +- include/trade.h | 6 +- src/battle_tower.c | 2 +- src/data/trade.h | 2 +- src/daycare.c | 20 +- src/dewford_trend.c | 2 - src/egg_hatch.c | 4 +- src/field_screen_effect.c | 2 - src/field_specials.c | 60 +- src/frontier_util.c | 68 +- src/item_use.c | 2 +- src/load_save.c | 2 +- src/mail.c | 4 +- src/mail_data.c | 22 +- src/match_call.c | 14 +- src/mystery_event_script.c | 6 +- src/new_game.c | 2 +- src/party_menu.c | 8 +- src/player_pc.c | 6 +- src/record_mixing.c | 745 +++++++++--------- src/trade.c | 22 +- src/union_room.c | 6 +- 28 files changed, 615 insertions(+), 590 deletions(-) diff --git a/data/maps/BattleFrontier_RankingHall/scripts.inc b/data/maps/BattleFrontier_RankingHall/scripts.inc index 20b2b21c1e26..a6c62cf86251 100644 --- a/data/maps/BattleFrontier_RankingHall/scripts.inc +++ b/data/maps/BattleFrontier_RankingHall/scripts.inc @@ -3,61 +3,61 @@ BattleFrontier_RankingHall_MapScripts:: BattleFrontier_RankingHall_EventScript_TowerSinglesRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_SINGLES + setvar VAR_0x8005, RANKING_HALL_TOWER_SINGLES goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_TowerDoublesRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_DOUBLES + setvar VAR_0x8005, RANKING_HALL_TOWER_DOUBLES goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_TowerMultisRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_MULTIS + setvar VAR_0x8005, RANKING_HALL_TOWER_MULTIS goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_TowerLinkRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_TOWER_LINK + setvar VAR_0x8005, RANKING_HALL_TOWER_LINK goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_ArenaRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_ARENA + setvar VAR_0x8005, RANKING_HALL_ARENA goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_PalaceRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_PALACE + setvar VAR_0x8005, RANKING_HALL_PALACE goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_FactoryRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_FACTORY + setvar VAR_0x8005, RANKING_HALL_FACTORY goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_DomeRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_DOME + setvar VAR_0x8005, RANKING_HALL_DOME goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_PikeRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_PIKE + setvar VAR_0x8005, RANKING_HALL_PIKE goto BattleFrontier_RankingHall_EventScript_ShowRecords end BattleFrontier_RankingHall_EventScript_PyramidRecords:: lockall - setvar VAR_0x8005, RANKING_HALL_BATTLE_PYRAMID + setvar VAR_0x8005, RANKING_HALL_PYRAMID goto BattleFrontier_RankingHall_EventScript_ShowRecords end diff --git a/include/constants/battle_frontier.h b/include/constants/battle_frontier.h index 68c5a42ef3b1..b6d15e6b2695 100644 --- a/include/constants/battle_frontier.h +++ b/include/constants/battle_frontier.h @@ -17,11 +17,6 @@ #define FACILITY_UNION_ROOM 8 #define FACILITY_MULTI_OR_EREADER 9 // Direct Corner multi battles, multi battle with Steven, and e-Reader battles -// Battle Frontier lvl modes. -#define FRONTIER_LVL_50 0 -#define FRONTIER_LVL_OPEN 1 -#define FRONTIER_LVL_TENT 2 - // Battle Frontier battle modes. #define FRONTIER_MODE_SINGLES 0 #define FRONTIER_MODE_DOUBLES 1 @@ -53,28 +48,28 @@ // These sets of facility ids would be redundant if the order was consistent // The order is important for this set so that all the non-link records can be continuous -#define RANKING_HALL_BATTLE_TOWER_SINGLES 0 -#define RANKING_HALL_BATTLE_TOWER_DOUBLES 1 -#define RANKING_HALL_BATTLE_TOWER_MULTIS 2 -#define RANKING_HALL_BATTLE_DOME 3 -#define RANKING_HALL_BATTLE_PALACE 4 -#define RANKING_HALL_BATTLE_ARENA 5 -#define RANKING_HALL_BATTLE_FACTORY 6 -#define RANKING_HALL_BATTLE_PIKE 7 -#define RANKING_HALL_BATTLE_PYRAMID 8 -#define RANKING_HALL_BATTLE_TOWER_LINK 9 - -#define FRONTIER_MANIAC_BATTLE_TOWER_SINGLES 0 -#define FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES 1 -#define FRONTIER_MANIAC_BATTLE_TOWER_MULTIS 2 -#define FRONTIER_MANIAC_BATTLE_TOWER_LINK 3 -#define FRONTIER_MANIAC_BATTLE_DOME 4 -#define FRONTIER_MANIAC_BATTLE_FACTORY 5 -#define FRONTIER_MANIAC_BATTLE_PALACE 6 -#define FRONTIER_MANIAC_BATTLE_ARENA 7 -#define FRONTIER_MANIAC_BATTLE_PIKE 8 -#define FRONTIER_MANIAC_BATTLE_PYRAMID 9 -#define FRONTIER_MANIAC_FACILITY_COUNT 10 +#define RANKING_HALL_TOWER_SINGLES 0 +#define RANKING_HALL_TOWER_DOUBLES 1 +#define RANKING_HALL_TOWER_MULTIS 2 +#define RANKING_HALL_DOME 3 +#define RANKING_HALL_PALACE 4 +#define RANKING_HALL_ARENA 5 +#define RANKING_HALL_FACTORY 6 +#define RANKING_HALL_PIKE 7 +#define RANKING_HALL_PYRAMID 8 +#define RANKING_HALL_TOWER_LINK 9 + +#define FRONTIER_MANIAC_TOWER_SINGLES 0 +#define FRONTIER_MANIAC_TOWER_DOUBLES 1 +#define FRONTIER_MANIAC_TOWER_MULTIS 2 +#define FRONTIER_MANIAC_TOWER_LINK 3 +#define FRONTIER_MANIAC_DOME 4 +#define FRONTIER_MANIAC_FACTORY 5 +#define FRONTIER_MANIAC_PALACE 6 +#define FRONTIER_MANIAC_ARENA 7 +#define FRONTIER_MANIAC_PIKE 8 +#define FRONTIER_MANIAC_PYRAMID 9 +#define FRONTIER_MANIAC_FACILITY_COUNT 10 #define FRONTIER_MANIAC_MESSAGE_COUNT 3 diff --git a/include/constants/global.h b/include/constants/global.h index 1cece79753b8..46518697cc18 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -53,9 +53,19 @@ #define UNION_ROOM_KB_ROW_COUNT 10 #define GIFT_RIBBONS_COUNT 11 #define SAVED_TRENDS_COUNT 5 - #define PYRAMID_BAG_ITEMS_COUNT 10 -#define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode. + +// Number of facilities for Ranking Hall. +// 7 facilities for single mode + tower double mode + tower multi mode. +// Excludes link modes. See RANKING_HALL_* in include/constants/battle_frontier.h +#define HALL_FACILITIES_COUNT 9 +#define HALL_RECORDS_COUNT 3 + +// Battle Frontier level modes. +#define FRONTIER_LVL_50 0 +#define FRONTIER_LVL_OPEN 1 +#define FRONTIER_LVL_MODE_COUNT 2 +#define FRONTIER_LVL_TENT FRONTIER_LVL_MODE_COUNT // Special usage for indicating Battle Tent #define TRAINER_ID_LENGTH 4 #define MAX_MON_MOVES 4 diff --git a/include/daycare.h b/include/daycare.h index d6c0d420173f..62a7918ff370 100644 --- a/include/daycare.h +++ b/include/daycare.h @@ -3,10 +3,17 @@ #include "constants/daycare.h" +struct RecordMixingDaycareMail +{ + struct DaycareMail mail[DAYCARE_MON_COUNT]; + u32 numDaycareMons; + bool16 cantHoldItem[DAYCARE_MON_COUNT]; +}; + u8 *GetMonNickname2(struct Pokemon *mon, u8 *dest); u8 *GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest); u8 CountPokemonInDaycare(struct DayCare *daycare); -void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *daycareMail); +void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *mixMail); void StoreSelectedPokemonInDaycare(void); u16 TakePokemonFromDaycare(void); void GetDaycareCost(void); diff --git a/include/global.h b/include/global.h index d14aa60f43fe..87c1d3d45a6c 100644 --- a/include/global.h +++ b/include/global.h @@ -208,11 +208,10 @@ struct BerryPickingResults u8 field_F; }; -// two arrays for lvl50 and open level struct PyramidBag { - u16 itemId[2][PYRAMID_BAG_ITEMS_COUNT]; - u8 quantity[2][PYRAMID_BAG_ITEMS_COUNT]; + u16 itemId[FRONTIER_LVL_MODE_COUNT][PYRAMID_BAG_ITEMS_COUNT]; + u8 quantity[FRONTIER_LVL_MODE_COUNT][PYRAMID_BAG_ITEMS_COUNT]; }; struct BerryCrush @@ -353,8 +352,8 @@ struct BattleFrontier /*0xCB2*/ u16 curChallengeBattleNum; // Battle number / room number (Pike) / floor number (Pyramid) /*0xCB4*/ u16 trainerIds[20]; /*0xCDC*/ u32 winStreakActiveFlags; - /*0xCE0*/ u16 towerWinStreaks[4][2]; - /*0xCF0*/ u16 towerRecordWinStreaks[4][2]; + /*0xCE0*/ u16 towerWinStreaks[4][FRONTIER_LVL_MODE_COUNT]; + /*0xCF0*/ u16 towerRecordWinStreaks[4][FRONTIER_LVL_MODE_COUNT]; /*0xD00*/ u16 battledBrainFlags; /*0xD02*/ u16 towerSinglesStreak; // Never read /*0xD04*/ u16 towerNumWins; // Increments to MAX_STREAK but never read otherwise @@ -371,33 +370,33 @@ struct BattleFrontier /*0xD09*/ u8 domeUnused; /*0xD0A*/ u8 domeLvlMode; /*0xD0B*/ u8 domeBattleMode; - /*0xD0C*/ u16 domeWinStreaks[2][2]; - /*0xD14*/ u16 domeRecordWinStreaks[2][2]; - /*0xD1C*/ u16 domeTotalChampionships[2][2]; + /*0xD0C*/ u16 domeWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; + /*0xD14*/ u16 domeRecordWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; + /*0xD1C*/ u16 domeTotalChampionships[2][FRONTIER_LVL_MODE_COUNT]; /*0xD24*/ struct BattleDomeTrainer domeTrainers[DOME_TOURNAMENT_TRAINERS_COUNT]; /*0xD64*/ u16 domeMonIds[DOME_TOURNAMENT_TRAINERS_COUNT][FRONTIER_PARTY_SIZE]; /*0xDC4*/ u16 unused_DC4; /*0xDC6*/ u16 palacePrize; - /*0xDC8*/ u16 palaceWinStreaks[2][2]; - /*0xDD0*/ u16 palaceRecordWinStreaks[2][2]; + /*0xDC8*/ u16 palaceWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; + /*0xDD0*/ u16 palaceRecordWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; /*0xDD8*/ u16 arenaPrize; - /*0xDDA*/ u16 arenaWinStreaks[2]; - /*0xDDE*/ u16 arenaRecordStreaks[2]; - /*0xDE2*/ u16 factoryWinStreaks[2][2]; - /*0xDEA*/ u16 factoryRecordWinStreaks[2][2]; - /*0xDF6*/ u16 factoryRentsCount[2][2]; - /*0xDFA*/ u16 factoryRecordRentsCount[2][2]; + /*0xDDA*/ u16 arenaWinStreaks[FRONTIER_LVL_MODE_COUNT]; + /*0xDDE*/ u16 arenaRecordStreaks[FRONTIER_LVL_MODE_COUNT]; + /*0xDE2*/ u16 factoryWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; + /*0xDEA*/ u16 factoryRecordWinStreaks[2][FRONTIER_LVL_MODE_COUNT]; + /*0xDF6*/ u16 factoryRentsCount[2][FRONTIER_LVL_MODE_COUNT]; + /*0xDFA*/ u16 factoryRecordRentsCount[2][FRONTIER_LVL_MODE_COUNT]; /*0xE02*/ u16 pikePrize; - /*0xE04*/ u16 pikeWinStreaks[2]; - /*0xE08*/ u16 pikeRecordStreaks[2]; - /*0xE0C*/ u16 pikeTotalStreaks[2]; + /*0xE04*/ u16 pikeWinStreaks[FRONTIER_LVL_MODE_COUNT]; + /*0xE08*/ u16 pikeRecordStreaks[FRONTIER_LVL_MODE_COUNT]; + /*0xE0C*/ u16 pikeTotalStreaks[FRONTIER_LVL_MODE_COUNT]; /*0xE10*/ u8 pikeHintedRoomIndex:3; /*0xE10*/ u8 pikeHintedRoomType:4; /*0xE10*/ u8 pikeHealingRoomsDisabled:1; /*0xE12*/ u16 pikeHeldItemsBackup[FRONTIER_PARTY_SIZE]; /*0xE18*/ u16 pyramidPrize; - /*0xE1A*/ u16 pyramidWinStreaks[2]; - /*0xE1E*/ u16 pyramidRecordStreaks[2]; + /*0xE1A*/ u16 pyramidWinStreaks[FRONTIER_LVL_MODE_COUNT]; + /*0xE1E*/ u16 pyramidRecordStreaks[FRONTIER_LVL_MODE_COUNT]; /*0xE22*/ u16 pyramidRandoms[4]; /*0xE2A*/ u8 pyramidTrainerFlags; /*0xE2C*/ struct PyramidBag pyramidBag; @@ -411,8 +410,8 @@ struct BattleFrontier /*0xEBC*/ u32 battlesCount; /*0xEC0*/ u16 domeWinningMoves[DOME_TOURNAMENT_TRAINERS_COUNT]; /*0xEE0*/ u8 trainerFlags; - /*0xEE1*/ u8 opponentNames[2][PLAYER_NAME_LENGTH + 1]; - /*0xEF1*/ u8 opponentTrainerIds[2][TRAINER_ID_LENGTH]; + /*0xEE1*/ u8 opponentNames[FRONTIER_LVL_MODE_COUNT][PLAYER_NAME_LENGTH + 1]; + /*0xEF1*/ u8 opponentTrainerIds[FRONTIER_LVL_MODE_COUNT][TRAINER_ID_LENGTH]; /*0xEF9*/ u8 unk_EF9:7; // Never read /*0xEF9*/ u8 savedGame:1; /*0xEFA*/ u8 unused_EFA; @@ -488,8 +487,8 @@ struct SaveBlock2 /*0x1EC*/ struct BerryCrush berryCrush; /*0x1FC*/ struct PokemonJumpRecords pokeJump; /*0x20C*/ struct BerryPickingResults berryPick; - /*0x21C*/ struct RankingHall1P hallRecords1P[HALL_FACILITIES_COUNT][2][3]; // From record mixing. - /*0x57C*/ struct RankingHall2P hallRecords2P[2][3]; // From record mixing. + /*0x21C*/ struct RankingHall1P hallRecords1P[HALL_FACILITIES_COUNT][FRONTIER_LVL_MODE_COUNT][HALL_RECORDS_COUNT]; // From record mixing. + /*0x57C*/ struct RankingHall2P hallRecords2P[FRONTIER_LVL_MODE_COUNT][HALL_RECORDS_COUNT]; // From record mixing. /*0x624*/ u16 contestLinkResults[CONTEST_CATEGORIES_COUNT][CONTESTANT_COUNT]; /*0x64C*/ struct BattleFrontier frontier; }; // sizeof=0xF2C @@ -597,15 +596,6 @@ struct DewfordTrend u16 words[2]; }; /*size = 0x8*/ -struct MailStruct -{ - /*0x00*/ u16 words[MAIL_WORDS_COUNT]; - /*0x12*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; - /*0x1A*/ u8 trainerId[TRAINER_ID_LENGTH]; - /*0x1E*/ u16 species; - /*0x20*/ u16 itemId; -}; - struct MauvilleManCommon { u8 id; @@ -671,20 +661,6 @@ typedef union OldMan u8 filler[0x40]; } OldMan; -struct RecordMixing_UnknownStructSub -{ - u32 unk0; - u8 data[0x34]; - //u8 data[0x38]; -}; - -struct RecordMixing_UnknownStruct -{ - struct RecordMixing_UnknownStructSub data[2]; - u32 unk70; - u16 unk74[0x2]; -}; - #define LINK_B_RECORDS_COUNT 5 struct LinkBattleRecord @@ -727,10 +703,19 @@ struct ContestWinner u8 contestRank; }; +struct Mail +{ + /*0x00*/ u16 words[MAIL_WORDS_COUNT]; + /*0x12*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; + /*0x1A*/ u8 trainerId[TRAINER_ID_LENGTH]; + /*0x1E*/ u16 species; + /*0x20*/ u16 itemId; +}; + struct DaycareMail { - struct MailStruct message; - u8 OT_name[PLAYER_NAME_LENGTH + 1]; + struct Mail message; + u8 otName[PLAYER_NAME_LENGTH + 1]; u8 monName[POKEMON_NAME_LENGTH + 1]; u8 gameLanguage:4; u8 monLanguage:4; @@ -750,13 +735,6 @@ struct DayCare u8 stepCounter; }; -struct RecordMixingDaycareMail -{ - struct DaycareMail mail[DAYCARE_MON_COUNT]; - u32 numDaycareMons; - bool16 holdsItem[DAYCARE_MON_COUNT]; -}; - struct LilycoveLadyQuiz { /*0x000*/ u8 id; @@ -1019,7 +997,7 @@ struct SaveBlock1 /*0x2BBC*/ u16 easyChatBattleStart[EASY_CHAT_BATTLE_WORDS_COUNT]; /*0x2BC8*/ u16 easyChatBattleWon[EASY_CHAT_BATTLE_WORDS_COUNT]; /*0x2BD4*/ u16 easyChatBattleLost[EASY_CHAT_BATTLE_WORDS_COUNT]; - /*0x2BE0*/ struct MailStruct mail[MAIL_COUNT]; + /*0x2BE0*/ struct Mail mail[MAIL_COUNT]; /*0x2E20*/ u8 additionalPhrases[8]; // bitfield for 33 additional phrases in easy chat system /*0x2E28*/ OldMan oldMan; /*0x2e64*/ struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; diff --git a/include/mail.h b/include/mail.h index 04258665398d..8236811cbda2 100644 --- a/include/mail.h +++ b/include/mail.h @@ -15,16 +15,16 @@ || itemId == ITEM_RETRO_MAIL)) // mail.h -void ReadMail(struct MailStruct *mail, void (*callback)(void), bool8 flag); +void ReadMail(struct Mail *mail, void (*callback)(void), bool8 flag); // mail_data.h -void ClearMailData(void); -void ClearMailStruct(struct MailStruct *mail); +void ClearAllMail(void); +void ClearMail(struct Mail *mail); bool8 MonHasMail(struct Pokemon *mon); -u8 GiveMailToMon(struct Pokemon *mon, u16 itemId); +u8 GiveMailToMonByItemId(struct Pokemon *mon, u16 itemId); u16 SpeciesToMailSpecies(u16 species, u32 personality); u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer); -u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail); +u8 GiveMailToMon(struct Pokemon *mon, struct Mail *mail); void TakeMailFromMon(struct Pokemon *mon); void ClearMailItemId(u8 mailId); u8 TakeMailFromMon2(struct Pokemon *mon); diff --git a/include/record_mixing.h b/include/record_mixing.h index 4cd231e8a554..fec4952b8e02 100644 --- a/include/record_mixing.h +++ b/include/record_mixing.h @@ -3,8 +3,8 @@ struct PlayerHallRecords { - struct RankingHall1P onePlayer[9][2]; - struct RankingHall2P twoPlayers[2]; + struct RankingHall1P onePlayer[HALL_FACILITIES_COUNT][FRONTIER_LVL_MODE_COUNT]; + struct RankingHall2P twoPlayers[FRONTIER_LVL_MODE_COUNT]; }; void RecordMixingPlayerSpotTriggered(void); diff --git a/include/trade.h b/include/trade.h index 05a905ab317c..a0cb320a88b9 100644 --- a/include/trade.h +++ b/include/trade.h @@ -4,13 +4,9 @@ #include "link_rfu.h" #include "constants/trade.h" -// Exported type declarations - -// Exported RAM declarations -extern struct MailStruct gTradeMail[PARTY_SIZE]; +extern struct Mail gTradeMail[PARTY_SIZE]; extern u8 gSelectedTradeMonPositions[2]; -// Exported ROM declarations extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate; s32 GetGameProgressForLinkTrade(void); diff --git a/src/battle_tower.c b/src/battle_tower.c index e3712def296d..b2f81cc1ac60 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1830,7 +1830,7 @@ static void FillFactoryFrontierTrainerParty(u16 trainerId, u8 firstMonId) { u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; // Unused variable. u8 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); - u8 challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][0] / 7; + u8 challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][FRONTIER_LVL_50] / 7; if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 6) fixedIV = GetFactoryMonFixedIV(challengeNum, 0); else diff --git a/src/data/trade.h b/src/data/trade.h index 7088633a80b1..b260727636e6 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -19,7 +19,7 @@ static const u32 sUnusedStructSizes[] = sizeof(struct SaveBlock1), sizeof(struct MapHeader), // 0x00000530, in RS - sizeof(struct MailStruct), //or ObjectEvent / ObjectEventGraphicsInfo + sizeof(struct Mail), //or ObjectEvent / ObjectEventGraphicsInfo sizeof(struct Pokemon), //or TrainerCard 0x00000528 // 0x000004D8, in RS }; diff --git a/src/daycare.c b/src/daycare.c index 8dd751531911..8105c2e9ced8 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -25,7 +25,6 @@ extern const struct Evolution gEvolutionTable[][EVOS_PER_MON]; -// this file's functions static void ClearDaycareMonMail(struct DaycareMail *mail); static void SetInitialEggData(struct Pokemon *mon, u16 species, struct DayCare *daycare); static u8 GetDaycareCompatibilityScore(struct DayCare *daycare); @@ -122,7 +121,7 @@ u8 CountPokemonInDaycare(struct DayCare *daycare) return count; } -void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *daycareMail) +void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDaycareMail *mixMail) { u8 i; u8 numDaycareMons = 0; @@ -133,17 +132,18 @@ void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDay { numDaycareMons++; if (GetBoxMonData(&daycare->mons[i].mon, MON_DATA_HELD_ITEM) == ITEM_NONE) - daycareMail->holdsItem[i] = FALSE; + mixMail->cantHoldItem[i] = FALSE; else - daycareMail->holdsItem[i] = TRUE; + mixMail->cantHoldItem[i] = TRUE; } else { - daycareMail->holdsItem[i] = TRUE; + // Daycare slot empty + mixMail->cantHoldItem[i] = TRUE; } } - daycareMail->numDaycareMons = numDaycareMons; + mixMail->numDaycareMons = numDaycareMons; } static s8 Daycare_FindEmptySpot(struct DayCare *daycare) @@ -165,7 +165,7 @@ static void StorePokemonInDaycare(struct Pokemon *mon, struct DaycareMon *daycar { u8 mailId; - StringCopy(daycareMon->mail.OT_name, gSaveBlock2Ptr->playerName); + StringCopy(daycareMon->mail.otName, gSaveBlock2Ptr->playerName); GetMonNickname2(mon, daycareMon->mail.monName); StripExtCtrlCodes(daycareMon->mail.monName); daycareMon->mail.gameLanguage = GAME_LANGUAGE; @@ -262,7 +262,7 @@ static u16 TakeSelectedPokemonFromDaycare(struct DaycareMon *daycareMon) gPlayerParty[PARTY_SIZE - 1] = pokemon; if (daycareMon->mail.message.itemId) { - GiveMailToMon2(&gPlayerParty[PARTY_SIZE - 1], &daycareMon->mail.message); + GiveMailToMon(&gPlayerParty[PARTY_SIZE - 1], &daycareMon->mail.message); ClearDaycareMonMail(&daycareMon->mail); } @@ -352,11 +352,11 @@ static void ClearDaycareMonMail(struct DaycareMail *mail) s32 i; for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) - mail->OT_name[i] = 0; + mail->otName[i] = 0; for (i = 0; i < POKEMON_NAME_LENGTH + 1; i++) mail->monName[i] = 0; - ClearMailStruct(&mail->message); + ClearMail(&mail->message); } static void ClearDaycareMon(struct DaycareMon *daycareMon) diff --git a/src/dewford_trend.c b/src/dewford_trend.c index d193ef1f5b89..bba2085e8b32 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -271,9 +271,7 @@ void ReceiveDewfordTrendData(struct DewfordTrend *linkedTrends, size_t size, u8 // Only overwrrite it if it's "trendier" temp = &savedTrendsBuffer[idx]; if (temp->trendiness < src->trendiness) - { *temp = *src; - } } src++; } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index b8ab1b91e0b1..e491b7b144d6 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -396,10 +396,10 @@ static bool8 _CheckDaycareMonReceivedMail(struct DayCare *daycare, u8 daycareId) GetBoxMonNickname(&daycareMon->mon, nickname); if (daycareMon->mail.message.itemId != ITEM_NONE && (StringCompareWithoutExtCtrlCodes(nickname, daycareMon->mail.monName) != 0 - || StringCompareWithoutExtCtrlCodes(gSaveBlock2Ptr->playerName, daycareMon->mail.OT_name) != 0)) + || StringCompareWithoutExtCtrlCodes(gSaveBlock2Ptr->playerName, daycareMon->mail.otName) != 0)) { StringCopy(gStringVar1, nickname); - TVShowConvertInternationalString(gStringVar2, daycareMon->mail.OT_name, daycareMon->mail.gameLanguage); + TVShowConvertInternationalString(gStringVar2, daycareMon->mail.otName, daycareMon->mail.gameLanguage); TVShowConvertInternationalString(gStringVar3, daycareMon->mail.monName, daycareMon->mail.monLanguage); return TRUE; } diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 65611c0f16d7..e573fe5ab9ee 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -235,9 +235,7 @@ void Task_ReturnToFieldRecordMixing(u8 taskId) break; case 1: if (IsLinkTaskFinished()) - { task->tState++; - } break; case 2: StartSendingKeysToLink(); diff --git a/src/field_specials.c b/src/field_specials.c index ab02f9938b32..3285ea9a488c 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -2071,61 +2071,61 @@ void ShowFrontierManiacMessage(void) { static const u8 *const sFrontierManiacMessages[][FRONTIER_MANIAC_MESSAGE_COUNT] = { - [FRONTIER_MANIAC_BATTLE_TOWER_SINGLES] = + [FRONTIER_MANIAC_TOWER_SINGLES] = { BattleFrontier_Lounge2_Text_SalonMaidenIsThere, BattleFrontier_Lounge2_Text_SalonMaidenSilverMons, BattleFrontier_Lounge2_Text_SalonMaidenGoldMons }, - [FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES] = + [FRONTIER_MANIAC_TOWER_DOUBLES] = { BattleFrontier_Lounge2_Text_DoubleBattleAdvice1, BattleFrontier_Lounge2_Text_DoubleBattleAdvice2, BattleFrontier_Lounge2_Text_DoubleBattleAdvice3 }, - [FRONTIER_MANIAC_BATTLE_TOWER_MULTIS] = + [FRONTIER_MANIAC_TOWER_MULTIS] = { BattleFrontier_Lounge2_Text_MultiBattleAdvice, BattleFrontier_Lounge2_Text_MultiBattleAdvice, BattleFrontier_Lounge2_Text_MultiBattleAdvice }, - [FRONTIER_MANIAC_BATTLE_TOWER_LINK] = + [FRONTIER_MANIAC_TOWER_LINK] = { BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice, BattleFrontier_Lounge2_Text_LinkMultiBattleAdvice }, - [FRONTIER_MANIAC_BATTLE_DOME] = + [FRONTIER_MANIAC_DOME] = { BattleFrontier_Lounge2_Text_DomeAceIsThere, BattleFrontier_Lounge2_Text_DomeAceSilverMons, BattleFrontier_Lounge2_Text_DomeAceGoldMons }, - [FRONTIER_MANIAC_BATTLE_FACTORY] = + [FRONTIER_MANIAC_FACTORY] = { BattleFrontier_Lounge2_Text_FactoryHeadIsThere, BattleFrontier_Lounge2_Text_FactoryHeadSilverMons, BattleFrontier_Lounge2_Text_FactoryHeadGoldMons }, - [FRONTIER_MANIAC_BATTLE_PALACE] = + [FRONTIER_MANIAC_PALACE] = { BattleFrontier_Lounge2_Text_PalaceMavenIsThere, BattleFrontier_Lounge2_Text_PalaceMavenSilverMons, BattleFrontier_Lounge2_Text_PalaceMavenGoldMons }, - [FRONTIER_MANIAC_BATTLE_ARENA] = + [FRONTIER_MANIAC_ARENA] = { BattleFrontier_Lounge2_Text_ArenaTycoonIsThere, BattleFrontier_Lounge2_Text_ArenaTycoonSilverMons, BattleFrontier_Lounge2_Text_ArenaTycoonGoldMons }, - [FRONTIER_MANIAC_BATTLE_PIKE] = + [FRONTIER_MANIAC_PIKE] = { BattleFrontier_Lounge2_Text_PikeQueenIsThere, BattleFrontier_Lounge2_Text_PikeQueenSilverMons, BattleFrontier_Lounge2_Text_PikeQueenGoldMons }, - [FRONTIER_MANIAC_BATTLE_PYRAMID] = + [FRONTIER_MANIAC_PYRAMID] = { BattleFrontier_Lounge2_Text_PyramidKingIsThere, BattleFrontier_Lounge2_Text_PyramidKingSilverMons, @@ -2135,16 +2135,16 @@ void ShowFrontierManiacMessage(void) static const u8 sFrontierManiacStreakThresholds[][FRONTIER_MANIAC_MESSAGE_COUNT - 1] = { - [FRONTIER_MANIAC_BATTLE_TOWER_SINGLES] = { 21, 56 }, - [FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES] = { 21, 35 }, - [FRONTIER_MANIAC_BATTLE_TOWER_MULTIS] = { 255, 255 }, - [FRONTIER_MANIAC_BATTLE_TOWER_LINK] = { 255, 255 }, - [FRONTIER_MANIAC_BATTLE_DOME] = { 2, 4 }, - [FRONTIER_MANIAC_BATTLE_FACTORY] = { 7, 21 }, - [FRONTIER_MANIAC_BATTLE_PALACE] = { 7, 21 }, - [FRONTIER_MANIAC_BATTLE_ARENA] = { 14, 28 }, - [FRONTIER_MANIAC_BATTLE_PIKE] = { 13, 112 }, //BUG: 112 (0x70) is probably a mistake; the Pike Queen is battled twice well before that - [FRONTIER_MANIAC_BATTLE_PYRAMID] = { 7, 56 } + [FRONTIER_MANIAC_TOWER_SINGLES] = { 21, 56 }, + [FRONTIER_MANIAC_TOWER_DOUBLES] = { 21, 35 }, + [FRONTIER_MANIAC_TOWER_MULTIS] = { 255, 255 }, + [FRONTIER_MANIAC_TOWER_LINK] = { 255, 255 }, + [FRONTIER_MANIAC_DOME] = { 2, 4 }, + [FRONTIER_MANIAC_FACTORY] = { 7, 21 }, + [FRONTIER_MANIAC_PALACE] = { 7, 21 }, + [FRONTIER_MANIAC_ARENA] = { 14, 28 }, + [FRONTIER_MANIAC_PIKE] = { 13, 112 }, //BUG: 112 (0x70) is probably a mistake; the Pike Queen is battled twice well before that + [FRONTIER_MANIAC_PYRAMID] = { 7, 56 } }; u8 i; @@ -2153,10 +2153,10 @@ void ShowFrontierManiacMessage(void) switch (facility) { - case FRONTIER_MANIAC_BATTLE_TOWER_SINGLES: - case FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES: - case FRONTIER_MANIAC_BATTLE_TOWER_MULTIS: - case FRONTIER_MANIAC_BATTLE_TOWER_LINK: + case FRONTIER_MANIAC_TOWER_SINGLES: + case FRONTIER_MANIAC_TOWER_DOUBLES: + case FRONTIER_MANIAC_TOWER_MULTIS: + case FRONTIER_MANIAC_TOWER_LINK: if (gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]) { @@ -2167,7 +2167,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_DOME: + case FRONTIER_MANIAC_DOME: if (gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { @@ -2178,7 +2178,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_FACTORY: + case FRONTIER_MANIAC_FACTORY: if (gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { @@ -2189,7 +2189,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_PALACE: + case FRONTIER_MANIAC_PALACE: if (gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) { @@ -2200,7 +2200,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_ARENA: + case FRONTIER_MANIAC_ARENA: if (gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]) { @@ -2211,7 +2211,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_PIKE: + case FRONTIER_MANIAC_PIKE: if (gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]) { @@ -2222,7 +2222,7 @@ void ShowFrontierManiacMessage(void) winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]; } break; - case FRONTIER_MANIAC_BATTLE_PYRAMID: + case FRONTIER_MANIAC_PYRAMID: if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50] >= gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]) { diff --git a/src/frontier_util.c b/src/frontier_util.c index 352c14b01a51..bb758de4b463 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -683,16 +683,16 @@ const u16 gFrontierBannedSpecies[] = static const u8 *const sRecordsWindowChallengeTexts[][2] = { - [RANKING_HALL_BATTLE_TOWER_SINGLES] = {gText_BattleTower2, gText_FacilitySingle}, - [RANKING_HALL_BATTLE_TOWER_DOUBLES] = {gText_BattleTower2, gText_FacilityDouble}, - [RANKING_HALL_BATTLE_TOWER_MULTIS] = {gText_BattleTower2, gText_FacilityMulti}, - [RANKING_HALL_BATTLE_DOME] = {gText_BattleDome, gText_FacilitySingle}, - [RANKING_HALL_BATTLE_PALACE] = {gText_BattlePalace, gText_FacilitySingle}, - [RANKING_HALL_BATTLE_ARENA] = {gText_BattleArena, gText_Facility}, - [RANKING_HALL_BATTLE_FACTORY] = {gText_BattleFactory, gText_FacilitySingle}, - [RANKING_HALL_BATTLE_PIKE] = {gText_BattlePike, gText_Facility}, - [RANKING_HALL_BATTLE_PYRAMID] = {gText_BattlePyramid, gText_Facility}, - [RANKING_HALL_BATTLE_TOWER_LINK] = {gText_BattleTower2, gText_FacilityLink}, + [RANKING_HALL_TOWER_SINGLES] = {gText_BattleTower2, gText_FacilitySingle}, + [RANKING_HALL_TOWER_DOUBLES] = {gText_BattleTower2, gText_FacilityDouble}, + [RANKING_HALL_TOWER_MULTIS] = {gText_BattleTower2, gText_FacilityMulti}, + [RANKING_HALL_DOME] = {gText_BattleDome, gText_FacilitySingle}, + [RANKING_HALL_PALACE] = {gText_BattlePalace, gText_FacilitySingle}, + [RANKING_HALL_ARENA] = {gText_BattleArena, gText_Facility}, + [RANKING_HALL_FACTORY] = {gText_BattleFactory, gText_FacilitySingle}, + [RANKING_HALL_PIKE] = {gText_BattlePike, gText_Facility}, + [RANKING_HALL_PYRAMID] = {gText_BattlePyramid, gText_Facility}, + [RANKING_HALL_TOWER_LINK] = {gText_BattleTower2, gText_FacilityLink}, }; static const u8 *const sLevelModeText[] = @@ -703,16 +703,16 @@ static const u8 *const sLevelModeText[] = static const u8 *const sHallFacilityToRecordsText[] = { - [RANKING_HALL_BATTLE_TOWER_SINGLES] = gText_FrontierFacilityWinStreak, - [RANKING_HALL_BATTLE_TOWER_DOUBLES] = gText_FrontierFacilityWinStreak, - [RANKING_HALL_BATTLE_TOWER_MULTIS] = gText_FrontierFacilityWinStreak, - [RANKING_HALL_BATTLE_DOME] = gText_FrontierFacilityClearStreak, - [RANKING_HALL_BATTLE_PALACE] = gText_FrontierFacilityWinStreak, - [RANKING_HALL_BATTLE_ARENA] = gText_FrontierFacilityKOsStreak, - [RANKING_HALL_BATTLE_FACTORY] = gText_FrontierFacilityWinStreak, - [RANKING_HALL_BATTLE_PIKE] = gText_FrontierFacilityRoomsCleared, - [RANKING_HALL_BATTLE_PYRAMID] = gText_FrontierFacilityFloorsCleared, - [RANKING_HALL_BATTLE_TOWER_LINK] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_TOWER_SINGLES] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_TOWER_DOUBLES] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_TOWER_MULTIS] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_DOME] = gText_FrontierFacilityClearStreak, + [RANKING_HALL_PALACE] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_ARENA] = gText_FrontierFacilityKOsStreak, + [RANKING_HALL_FACTORY] = gText_FrontierFacilityWinStreak, + [RANKING_HALL_PIKE] = gText_FrontierFacilityRoomsCleared, + [RANKING_HALL_PYRAMID] = gText_FrontierFacilityFloorsCleared, + [RANKING_HALL_TOWER_LINK] = gText_FrontierFacilityWinStreak, }; static const u16 sFrontierBrainTrainerIds[NUM_FRONTIER_FACILITIES] = @@ -2261,28 +2261,28 @@ static void Print2PRecord(s32 position, s32 x, s32 y, struct RankingHall2P *hall if (winStreak > MAX_STREAK) winStreak = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar2, winStreak, STR_CONV_MODE_RIGHT_ALIGN, 4); - StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[RANKING_HALL_BATTLE_TOWER_LINK]); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, GetStringRightAlignXOffset(1, sHallFacilityToRecordsText[RANKING_HALL_BATTLE_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK]); + AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, GetStringRightAlignXOffset(1, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); } } static void Fill1PRecords(struct RankingHall1P *dst, s32 hallFacilityId, s32 lvlMode) { s32 i, j; - struct RankingHall1P record1P[4]; + struct RankingHall1P record1P[HALL_RECORDS_COUNT + 1]; struct PlayerHallRecords *playerHallRecords = calloc(1, sizeof(struct PlayerHallRecords)); GetPlayerHallRecords(playerHallRecords); - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) record1P[i] = gSaveBlock2Ptr->hallRecords1P[hallFacilityId][lvlMode][i]; - record1P[3] = playerHallRecords->onePlayer[hallFacilityId][lvlMode]; + record1P[HALL_RECORDS_COUNT] = playerHallRecords->onePlayer[hallFacilityId][lvlMode]; - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) { s32 highestWinStreak = 0; s32 highestId = 0; - for (j = 0; j < 4; j++) + for (j = 0; j < HALL_RECORDS_COUNT + 1; j++) { if (record1P[j].winStreak > highestWinStreak) { @@ -2290,8 +2290,8 @@ static void Fill1PRecords(struct RankingHall1P *dst, s32 hallFacilityId, s32 lvl highestWinStreak = record1P[j].winStreak; } } - if (record1P[3].winStreak >= highestWinStreak) - highestId = 3; + if (record1P[HALL_RECORDS_COUNT].winStreak >= highestWinStreak) + highestId = HALL_RECORDS_COUNT; dst[i] = record1P[highestId]; record1P[highestId].winStreak = 0; @@ -2346,7 +2346,7 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); x = GetStringRightAlignXOffset(1, sLevelModeText[lvlMode], 0xD0); AddTextPrinterParameterized(gRecordsWindowId, 1, sLevelModeText[lvlMode], x, 1, TEXT_SPEED_FF, NULL); - if (hallFacilityId == RANKING_HALL_BATTLE_TOWER_LINK) + if (hallFacilityId == RANKING_HALL_TOWER_LINK) { gSaveBlock2Ptr->frontier.opponentNames[0][PLAYER_NAME_LENGTH] = EOS; gSaveBlock2Ptr->frontier.opponentNames[1][PLAYER_NAME_LENGTH] = EOS; @@ -2393,9 +2393,9 @@ void ClearRankingHallRecords(void) for (i = 0; i < HALL_FACILITIES_COUNT; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { - for (k = 0; k < 3; k++) + for (k = 0; k < HALL_RECORDS_COUNT; k++) { CopyTrainerId(gSaveBlock2Ptr->hallRecords1P[i][j][k].id, ZERO); gSaveBlock2Ptr->hallRecords1P[i][j][k].name[0] = EOS; @@ -2404,9 +2404,9 @@ void ClearRankingHallRecords(void) } } - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { - for (k = 0; k < 3; k++) + for (k = 0; k < HALL_RECORDS_COUNT; k++) { CopyTrainerId(gSaveBlock2Ptr->hallRecords2P[j][k].id1, ZERO); CopyTrainerId(gSaveBlock2Ptr->hallRecords2P[j][k].id2, ZERO); diff --git a/src/item_use.c b/src/item_use.c index 0a3181608364..4525cd7f9838 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -182,7 +182,7 @@ u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId) // Mail in the bag menu can't have a message but it can be checked (view the mail background, no message) static void CB2_CheckMail(void) { - struct MailStruct mail; + struct Mail mail; mail.itemId = gSpecialVar_ItemId; ReadMail(&mail, CB2_ReturnToBagMenuPocket, 0); } diff --git a/src/load_save.c b/src/load_save.c index 0112f2a8f1fc..1ba5a1600af7 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -25,7 +25,7 @@ struct LoadedSaveData /*0x00F0*/ struct ItemSlot pokeBalls[BAG_POKEBALLS_COUNT]; /*0x0130*/ struct ItemSlot TMsHMs[BAG_TMHM_COUNT]; /*0x0230*/ struct ItemSlot berries[BAG_BERRIES_COUNT]; - /*0x02E8*/ struct MailStruct mail[MAIL_COUNT]; + /*0x02E8*/ struct Mail mail[MAIL_COUNT]; }; // EWRAM DATA diff --git a/src/mail.c b/src/mail.c index 50ff553aa348..8bb6f69918b4 100644 --- a/src/mail.c +++ b/src/mail.c @@ -61,7 +61,7 @@ struct MailRead /*0x0200*/ u8 playerName[12]; /*0x020C*/ MainCallback exitCallback; /*0x0210*/ MainCallback callback; - /*0x0214*/ struct MailStruct *mail; + /*0x0214*/ struct Mail *mail; /*0x0218*/ bool8 hasText; /*0x0219*/ u8 signatureWidth; /*0x021a*/ u8 mailType; @@ -443,7 +443,7 @@ static const struct MailLayout sMailLayouts_Tall[] = { }, }; -void ReadMail(struct MailStruct *mail, void (*exitCallback)(void), bool8 hasText) +void ReadMail(struct Mail *mail, void (*exitCallback)(void), bool8 hasText) { u16 buffer[2]; u16 species; diff --git a/src/mail_data.c b/src/mail_data.c index 2ae9bedab7c5..683bd854eadd 100644 --- a/src/mail_data.c +++ b/src/mail_data.c @@ -7,15 +7,17 @@ #include "international_string_util.h" #include "constants/easy_chat.h" -void ClearMailData(void) +#define UNOWN_OFFSET 30000 + +void ClearAllMail(void) { u8 i; for (i = 0; i < MAIL_COUNT; i++) - ClearMailStruct(&gSaveBlock1Ptr->mail[i]); + ClearMail(&gSaveBlock1Ptr->mail[i]); } -void ClearMailStruct(struct MailStruct *mail) +void ClearMail(struct Mail *mail) { s32 i; @@ -41,7 +43,7 @@ bool8 MonHasMail(struct Pokemon *mon) return FALSE; } -u8 GiveMailToMon(struct Pokemon *mon, u16 itemId) +u8 GiveMailToMonByItemId(struct Pokemon *mon, u16 itemId) { u8 heldItem[2]; u8 id, i; @@ -83,7 +85,7 @@ u16 SpeciesToMailSpecies(u16 species, u32 personality) { if (species == SPECIES_UNOWN) { - u32 species = GetUnownLetterByPersonality(personality) + 30000; + u32 species = GetUnownLetterByPersonality(personality) + UNOWN_OFFSET; return species; } @@ -94,10 +96,10 @@ u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer) { u16 result; - if (mailSpecies >= 30000 && mailSpecies < (30000 + NUM_UNOWN_FORMS)) + if (mailSpecies >= UNOWN_OFFSET && mailSpecies < UNOWN_OFFSET + NUM_UNOWN_FORMS) { result = SPECIES_UNOWN; - *buffer = mailSpecies - 30000; + *buffer = mailSpecies - UNOWN_OFFSET; } else { @@ -107,11 +109,11 @@ u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer) return result; } -u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail) +u8 GiveMailToMon(struct Pokemon *mon, struct Mail *mail) { u8 heldItem[2]; u16 itemId = mail->itemId; - u8 mailId = GiveMailToMon(mon, itemId); + u8 mailId = GiveMailToMonByItemId(mon, itemId); if (mailId == MAIL_NONE) return MAIL_NONE; @@ -169,7 +171,7 @@ u8 TakeMailFromMon2(struct Pokemon *mon) { if (gSaveBlock1Ptr->mail[i].itemId == ITEM_NONE) { - memcpy(&gSaveBlock1Ptr->mail[i], &gSaveBlock1Ptr->mail[GetMonData(mon, MON_DATA_MAIL)], sizeof(struct MailStruct)); + memcpy(&gSaveBlock1Ptr->mail[i], &gSaveBlock1Ptr->mail[GetMonData(mon, MON_DATA_MAIL)], sizeof(struct Mail)); gSaveBlock1Ptr->mail[GetMonData(mon, MON_DATA_MAIL)].itemId = ITEM_NONE; SetMonData(mon, MON_DATA_MAIL, &newMailId); SetMonData(mon, MON_DATA_HELD_ITEM, newHeldItem); diff --git a/src/match_call.c b/src/match_call.c index b71fc832201d..df6b08725a3f 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1902,7 +1902,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) case FRONTIER_FACILITY_DOME: for (i = 0; i < 2; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { if (streak < gSaveBlock2Ptr->frontier.domeRecordWinStreaks[i][j]) streak = gSaveBlock2Ptr->frontier.domeRecordWinStreaks[i][j]; @@ -1915,7 +1915,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) #else case FRONTIER_FACILITY_FACTORY: #endif - for (i = 0; i < 2; i++) + for (i = 0; i < FRONTIER_LVL_MODE_COUNT; i++) { if (streak < gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]; @@ -1925,7 +1925,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) case FRONTIER_FACILITY_TOWER: for (i = 0; i < 4; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { if (streak < gSaveBlock2Ptr->frontier.towerRecordWinStreaks[i][j]) streak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[i][j]; @@ -1936,7 +1936,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) case FRONTIER_FACILITY_PALACE: for (i = 0; i < 2; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { if (streak < gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[i][j]) streak = gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[i][j]; @@ -1951,7 +1951,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) #endif for (i = 0; i < 2; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { if (streak < gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[i][j]) streak = gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[i][j]; @@ -1960,7 +1960,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_ARENA: - for (i = 0; i < 2; i++) + for (i = 0; i < FRONTIER_LVL_MODE_COUNT; i++) { if (streak < gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]; @@ -1968,7 +1968,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_PYRAMID: - for (i = 0; i < 2; i++) + for (i = 0; i < FRONTIER_LVL_MODE_COUNT; i++) { if (streak < gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]) streak = gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]; diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 176eab7fc6a1..f590bcde62b8 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -302,7 +302,7 @@ bool8 MEScrCmd_setrecordmixinggift(struct ScriptContext *ctx) bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) { - struct MailStruct mail; + struct Mail mail; struct Pokemon pokemon; u16 species; u16 heldItem; @@ -326,7 +326,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) else { memcpy(&gPlayerParty[PARTY_SIZE - 1], pokemonPtr, sizeof(struct Pokemon)); - memcpy(&mail, mailPtr, sizeof(struct MailStruct)); + memcpy(&mail, mailPtr, sizeof(struct Mail)); if (species != SPECIES_EGG) { @@ -337,7 +337,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) heldItem = GetMonData(&gPlayerParty[PARTY_SIZE - 1], MON_DATA_HELD_ITEM); if (ItemIsMail(heldItem)) - GiveMailToMon2(&gPlayerParty[PARTY_SIZE - 1], &mail); + GiveMailToMon(&gPlayerParty[PARTY_SIZE - 1], &mail); CompactPartySlots(); CalculatePlayerPartyCount(); StringExpandPlaceholders(gStringVar4, gText_MysteryGiftSentOver); diff --git a/src/new_game.c b/src/new_game.c index 2a950efbc9c4..5bb3d44c5876 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -158,7 +158,7 @@ void NewGameInitData(void) ResetPokedex(); ClearFrontierRecord(); ClearSav1(); - ClearMailData(); + ClearAllMail(); gSaveBlock2Ptr->specialSaveWarpFlags = 0; gSaveBlock2Ptr->gcnLinkFlags = 0; InitPlayerTrainerId(); diff --git a/src/party_menu.c b/src/party_menu.c index 9829d62e9a8c..95a4852db6e0 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -1726,7 +1726,7 @@ static void GiveItemToMon(struct Pokemon *mon, u16 item) if (ItemIsMail(item) == TRUE) { - if (GiveMailToMon(mon, item) == 0xFF) + if (GiveMailToMonByItemId(mon, item) == MAIL_NONE) return; } itemBytes[0] = item; @@ -5468,7 +5468,7 @@ void ChooseMonToGiveMailFromMailbox(void) static void TryGiveMailToSelectedMon(u8 taskId) { struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId]; - struct MailStruct *mail; + struct Mail *mail; gPartyMenuUseExitCallback = FALSE; mail = &gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos]; @@ -5478,8 +5478,8 @@ static void TryGiveMailToSelectedMon(u8 taskId) } else { - GiveMailToMon2(mon, mail); - ClearMailStruct(mail); + GiveMailToMon(mon, mail); + ClearMail(mail); DisplayPartyMenuMessage(gText_MailTransferredFromMailbox, TRUE); } ScheduleBgCopyTilemapToVram(2); diff --git a/src/player_pc.c b/src/player_pc.c index 507fc6558214..a4e7505b4af9 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -674,7 +674,7 @@ static u8 GetMailboxMailCount(void) static void Mailbox_CompactMailList(void) { - struct MailStruct temp; + struct Mail temp; u8 i, j; for (i = PARTY_SIZE; i < MAIL_COUNT - 1; i++) @@ -850,7 +850,7 @@ static void Mailbox_HandleConfirmMoveToBag(u8 taskId) static void Mailbox_DoMailMoveToBag(u8 taskId) { - struct MailStruct *mail = &gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos]; + struct Mail *mail = &gSaveBlock1Ptr->mail[gPlayerPCItemPageInfo.itemsAbove + PARTY_SIZE + gPlayerPCItemPageInfo.cursorPos]; if (!AddBagItem(mail->itemId, 1)) { DisplayItemMessageOnField(taskId, gText_BagIsFull, Mailbox_Cancel); @@ -858,7 +858,7 @@ static void Mailbox_DoMailMoveToBag(u8 taskId) else { DisplayItemMessageOnField(taskId, gText_MailToBagMessageErased, Mailbox_Cancel); - ClearMailStruct(mail); + ClearMail(mail); Mailbox_CompactMailList(); gPlayerPCItemPageInfo.count--; if (gPlayerPCItemPageInfo.count < (gPlayerPCItemPageInfo.pageItems + gPlayerPCItemPageInfo.itemsAbove) && gPlayerPCItemPageInfo.itemsAbove != 0) diff --git a/src/record_mixing.c b/src/record_mixing.c index ad97b6af523f..fe51667f4231 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -35,16 +35,21 @@ #include "constants/battle_frontier.h" #include "dewford_trend.h" +// Number of bytes of the record transferred at a time +#define BUFFER_CHUNK_SIZE 200 + +#define NUM_SWAP_COMBOS 3 -// Static type declarations +// Used by several tasks in this file +#define tState data[0] struct RecordMixingHallRecords { - struct RankingHall1P hallRecords1P[HALL_FACILITIES_COUNT][2][6]; - struct RankingHall2P hallRecords2P[2][6]; + struct RankingHall1P hallRecords1P[HALL_FACILITIES_COUNT][FRONTIER_LVL_MODE_COUNT][HALL_RECORDS_COUNT * 2]; + struct RankingHall2P hallRecords2P[FRONTIER_LVL_MODE_COUNT][HALL_RECORDS_COUNT * 2]; }; -struct PlayerRecordsRS +struct PlayerRecordRS { struct SecretBase secretBases[SECRET_BASES_COUNT]; TVShow tvShows[TV_SHOWS_COUNT]; @@ -54,10 +59,10 @@ struct PlayerRecordsRS struct RecordMixingDaycareMail daycareMail; struct RSBattleTowerRecord battleTowerRecord; u16 giftItem; - u16 filler11C8[0x32]; + u16 padding[50]; }; -struct PlayerRecordsEmerald +struct PlayerRecordEmerald { /* 0x0000 */ struct SecretBase secretBases[SECRET_BASES_COUNT]; /* 0x0c80 */ TVShow tvShows[TV_SHOWS_COUNT]; @@ -70,73 +75,67 @@ struct PlayerRecordsEmerald /* 0x1214 */ LilycoveLady lilycoveLady; /* 0x1254 */ struct Apprentice apprentices[2]; /* 0x12dc */ struct PlayerHallRecords hallRecords; - /* 0x1434 */ u8 field_1434[0x10]; + /* 0x1434 */ u8 padding[16]; }; // 0x1444 -union PlayerRecords +union PlayerRecord { - struct PlayerRecordsRS ruby; - struct PlayerRecordsEmerald emerald; + struct PlayerRecordRS ruby; + struct PlayerRecordEmerald emerald; }; -// Static RAM declarations - -static bool8 gUnknown_03001130; +static bool8 sReadyToReceive; static struct SecretBase *sSecretBasesSave; static TVShow *sTvShowsSave; static PokeNews *sPokeNewsSave; static OldMan *sOldManSave; static struct DewfordTrend *sDewfordTrendsSave; -static struct RecordMixingDaycareMail *sDaycareMailSave; +static struct RecordMixingDaycareMail *sRecordMixMailSave; static void *sBattleTowerSave; static LilycoveLady *sLilycoveLadySave; static void *sApprenticesSave; static void *sBattleTowerSave_Duplicate; static u32 sRecordStructSize; -static u8 gUnknown_03001160; +static u8 sDaycareMailRandSum; static struct PlayerHallRecords *gUnknown_03001168[3]; -static EWRAM_DATA struct RecordMixingDaycareMail sDaycareMail = {0}; -static EWRAM_DATA union PlayerRecords *sReceivedRecords = NULL; -static EWRAM_DATA union PlayerRecords *sSentRecord = NULL; - -// Static ROM declarations - -static void Task_RecordMixing_Main(u8 taskId); -static void Task_MixingRecordsRecv(u8 taskId); -static void Task_SendPacket(u8 taskId); -static void Task_CopyReceiveBuffer(u8 taskId); -static void Task_SendPacket_SwitchToReceive(u8 taskId); -static void *LoadPtrFromTaskData(const u16 *asShort); -static void StorePtrInTaskData(void *records, u16 *a1); +static EWRAM_DATA struct RecordMixingDaycareMail sRecordMixMail = {0}; +static EWRAM_DATA union PlayerRecord *sReceivedRecords = NULL; +static EWRAM_DATA union PlayerRecord *sSentRecord = NULL; + +static void Task_RecordMixing_Main(u8); +static void Task_MixingRecordsRecv(u8); +static void Task_SendPacket(u8); +static void Task_CopyReceiveBuffer(u8); +static void Task_SendPacket_SwitchToReceive(u8); +static void *LoadPtrFromTaskData(const u16 *); +static void StorePtrInTaskData(void *, u16 *); static u8 GetMultiplayerId_(void); static void *GetPlayerRecvBuffer(u8); static void ReceiveOldManData(OldMan *, size_t, u8); -static void ReceiveBattleTowerData(void *battleTowerRecord, size_t, u8); +static void ReceiveBattleTowerData(void *, size_t, u8); static void ReceiveLilycoveLadyData(LilycoveLady *, size_t, u8); -static void sub_80E7B2C(const u8 *); +static void CalculateDaycareMailRandSum(const u8 *); static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *, size_t, u8, TVShow *); -static void ReceiveGiftItem(u16 *item, u8 which); -static void Task_DoRecordMixing(u8 taskId); -static void GetSavedApprentices(struct Apprentice *dst, struct Apprentice *src); -static void ReceiveApprenticeData(struct Apprentice *mixApprentice, size_t recordSize, u32 multiplayerId); -static void ReceiveRankingHallRecords(struct PlayerHallRecords *hallRecords, size_t arg1, u32 arg2); -static void GetRecordMixingDaycareMail(struct RecordMixingDaycareMail *dst); -static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *src); -static void SanitizeEmeraldBattleTowerRecord(struct EmeraldBattleTowerRecord *arg0); -static void SanitizeRubyBattleTowerRecord(struct RSBattleTowerRecord *src); - -// .rodata - -static const u8 gUnknown_0858CF8C[] = {1, 0}; - -static const u8 gUnknown_0858CF8E[][3] = +static void ReceiveGiftItem(u16 *, u8 ); +static void Task_DoRecordMixing(u8); +static void GetSavedApprentices(struct Apprentice *, struct Apprentice *); +static void ReceiveApprenticeData(struct Apprentice *, size_t, u32); +static void ReceiveRankingHallRecords(struct PlayerHallRecords *, size_t, u32); +static void GetRecordMixingDaycareMail(struct RecordMixingDaycareMail *); +static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *); +static void SanitizeEmeraldBattleTowerRecord(struct EmeraldBattleTowerRecord *); +static void SanitizeRubyBattleTowerRecord(struct RSBattleTowerRecord *); + +static const u8 sPlayerIdxOrders_2Player[] = {1, 0}; + +static const u8 sPlayerIdxOrders_3Player[][3] = { {1, 2, 0}, {2, 0, 1}, }; -static const u8 gUnknown_0858CF94[][4] = +static const u8 sPlayerIdxOrders_4Player[][4] = { {1, 0, 3, 2}, {3, 0, 1, 2}, @@ -149,24 +148,21 @@ static const u8 gUnknown_0858CF94[][4] = {3, 2, 1, 0}, }; -static const u8 gUnknown_0858CFB8[3][2] = +// When 3 players can swap mail 2 players are randomly selected and the 3rd is left out +static const u8 sDaycareMailSwapIds_3Player[NUM_SWAP_COMBOS][2] = { {0, 1}, {1, 2}, {2, 0}, }; -static const u8 gUnknown_0858CFBE[3][4] = +static const u8 sDaycareMailSwapIds_4Player[NUM_SWAP_COMBOS][4] = { - {0, 1, 2, 3}, - {0, 2, 1, 3}, - {0, 3, 2, 1}, + {0, 1, 2, 3}, // 0 swaps with 1, 2 swaps with 3 + {0, 2, 1, 3}, + {0, 3, 2, 1}, }; -// .text - -#define BUFFER_CHUNK_SIZE 200 - void RecordMixingPlayerSpotTriggered(void) { CreateTask_EnterCableClubSeat(Task_RecordMixing_Main); @@ -180,14 +176,14 @@ static void SetSrcLookupPointers(void) sPokeNewsSave = gSaveBlock1Ptr->pokeNews; sOldManSave = &gSaveBlock1Ptr->oldMan; sDewfordTrendsSave = gSaveBlock1Ptr->dewfordTrends; - sDaycareMailSave = &sDaycareMail; + sRecordMixMailSave = &sRecordMixMail; sBattleTowerSave = &gSaveBlock2Ptr->frontier.towerPlayer; sLilycoveLadySave = &gSaveBlock1Ptr->lilycoveLady; sApprenticesSave = gSaveBlock2Ptr->apprentices; sBattleTowerSave_Duplicate = &gSaveBlock2Ptr->frontier.towerPlayer; } -static void PrepareUnknownExchangePacket(struct PlayerRecordsRS *dest) +static void PrepareUnknownExchangePacket(struct PlayerRecordRS *dest) { memcpy(dest->secretBases, sSecretBasesSave, sizeof(dest->secretBases)); memcpy(dest->tvShows, sTvShowsSave, sizeof(dest->tvShows)); @@ -202,7 +198,7 @@ static void PrepareUnknownExchangePacket(struct PlayerRecordsRS *dest) dest->giftItem = GetRecordMixingGift(); } -static void PrepareExchangePacketForRubySapphire(struct PlayerRecordsRS *dest) +static void PrepareExchangePacketForRubySapphire(struct PlayerRecordRS *dest) { memcpy(dest->secretBases, sSecretBasesSave, sizeof(dest->secretBases)); ClearJapaneseSecretBases(dest->secretBases); @@ -254,36 +250,36 @@ static void PrepareExchangePacket(void) } } -static void ReceiveExchangePacket(u32 which) +static void ReceiveExchangePacket(u32 multiplayerId) { if (Link_AnyPartnersPlayingRubyOrSapphire()) { // Ruby/Sapphire - sub_80E7B2C((void *)sReceivedRecords->ruby.tvShows); - ReceiveSecretBasesData(sReceivedRecords->ruby.secretBases, sizeof(struct PlayerRecordsRS), which); - ReceiveDaycareMailData(&sReceivedRecords->ruby.daycareMail, sizeof(struct PlayerRecordsRS), which, sReceivedRecords->ruby.tvShows); - ReceiveBattleTowerData(&sReceivedRecords->ruby.battleTowerRecord, sizeof(struct PlayerRecordsRS), which); - ReceiveTvShowsData(sReceivedRecords->ruby.tvShows, sizeof(struct PlayerRecordsRS), which); - ReceivePokeNewsData(sReceivedRecords->ruby.pokeNews, sizeof(struct PlayerRecordsRS), which); - ReceiveOldManData(&sReceivedRecords->ruby.oldMan, sizeof(struct PlayerRecordsRS), which); - ReceiveDewfordTrendData(sReceivedRecords->ruby.dewfordTrends, sizeof(struct PlayerRecordsRS), which); - ReceiveGiftItem(&sReceivedRecords->ruby.giftItem, which); + CalculateDaycareMailRandSum((void *)sReceivedRecords->ruby.tvShows); + ReceiveSecretBasesData(sReceivedRecords->ruby.secretBases, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceiveDaycareMailData(&sReceivedRecords->ruby.daycareMail, sizeof(sReceivedRecords->ruby), multiplayerId, sReceivedRecords->ruby.tvShows); + ReceiveBattleTowerData(&sReceivedRecords->ruby.battleTowerRecord, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceiveTvShowsData(sReceivedRecords->ruby.tvShows, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceivePokeNewsData(sReceivedRecords->ruby.pokeNews, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceiveOldManData(&sReceivedRecords->ruby.oldMan, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceiveDewfordTrendData(sReceivedRecords->ruby.dewfordTrends, sizeof(sReceivedRecords->ruby), multiplayerId); + ReceiveGiftItem(&sReceivedRecords->ruby.giftItem, multiplayerId); } else { // Emerald - sub_80E7B2C((void *)sReceivedRecords->emerald.tvShows); - ReceiveSecretBasesData(sReceivedRecords->emerald.secretBases, sizeof(struct PlayerRecordsEmerald), which); - ReceiveTvShowsData(sReceivedRecords->emerald.tvShows, sizeof(struct PlayerRecordsEmerald), which); - ReceivePokeNewsData(sReceivedRecords->emerald.pokeNews, sizeof(struct PlayerRecordsEmerald), which); - ReceiveOldManData(&sReceivedRecords->emerald.oldMan, sizeof(struct PlayerRecordsEmerald), which); - ReceiveDewfordTrendData(sReceivedRecords->emerald.dewfordTrends, sizeof(struct PlayerRecordsEmerald), which); - ReceiveDaycareMailData(&sReceivedRecords->emerald.daycareMail, sizeof(struct PlayerRecordsEmerald), which, sReceivedRecords->emerald.tvShows); - ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(struct PlayerRecordsEmerald), which); - ReceiveGiftItem(&sReceivedRecords->emerald.giftItem, which); - ReceiveLilycoveLadyData(&sReceivedRecords->emerald.lilycoveLady, sizeof(struct PlayerRecordsEmerald), which); - ReceiveApprenticeData(sReceivedRecords->emerald.apprentices, sizeof(struct PlayerRecordsEmerald), (u8) which); - ReceiveRankingHallRecords(&sReceivedRecords->emerald.hallRecords, sizeof(struct PlayerRecordsEmerald), (u8) which); + CalculateDaycareMailRandSum((void *)sReceivedRecords->emerald.tvShows); + ReceiveSecretBasesData(sReceivedRecords->emerald.secretBases, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveTvShowsData(sReceivedRecords->emerald.tvShows, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceivePokeNewsData(sReceivedRecords->emerald.pokeNews, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveOldManData(&sReceivedRecords->emerald.oldMan, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveDewfordTrendData(sReceivedRecords->emerald.dewfordTrends, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveDaycareMailData(&sReceivedRecords->emerald.daycareMail, sizeof(sReceivedRecords->emerald), multiplayerId, sReceivedRecords->emerald.tvShows); + ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveGiftItem(&sReceivedRecords->emerald.giftItem, multiplayerId); + ReceiveLilycoveLadyData(&sReceivedRecords->emerald.lilycoveLady, sizeof(sReceivedRecords->emerald), multiplayerId); + ReceiveApprenticeData(sReceivedRecords->emerald.apprentices, sizeof(sReceivedRecords->emerald), (u8) multiplayerId); + ReceiveRankingHallRecords(&sReceivedRecords->emerald.hallRecords, sizeof(sReceivedRecords->emerald), (u8) multiplayerId); } } @@ -307,10 +303,11 @@ static void Task_RecordMixing_SoundEffect(u8 taskId) #undef tCounter -#define tState data[0] -#define tSndEffTaskId data[15] +#define tTimer data[8] +#define tLinkTaskId data[10] +#define tSoundTaskId data[15] -// Note: Currently, special var 8005 contains the player's spot id. +// Note: gSpecialVar_0x8005 here contains the player's spot id. static void Task_RecordMixing_Main(u8 taskId) { s16 *data = gTasks[taskId].data; @@ -318,56 +315,54 @@ static void Task_RecordMixing_Main(u8 taskId) switch (tState) { case 0: // init - sSentRecord = malloc(sizeof(union PlayerRecords)); - sReceivedRecords = malloc(sizeof(union PlayerRecords) * MAX_LINK_PLAYERS); + sSentRecord = malloc(sizeof(*sSentRecord)); + sReceivedRecords = malloc(sizeof(*sReceivedRecords) * MAX_LINK_PLAYERS); SetLocalLinkPlayerId(gSpecialVar_0x8005); VarSet(VAR_TEMP_0, 1); - gUnknown_03001130 = FALSE; + sReadyToReceive = FALSE; PrepareExchangePacket(); CreateRecordMixingLights(); tState = 1; - data[10] = CreateTask(Task_MixingRecordsRecv, 80); - tSndEffTaskId = CreateTask(Task_RecordMixing_SoundEffect, 81); + tLinkTaskId = CreateTask(Task_MixingRecordsRecv, 80); + tSoundTaskId = CreateTask(Task_RecordMixing_SoundEffect, 81); break; case 1: // wait for Task_MixingRecordsRecv - if (!gTasks[data[10]].isActive) + if (!gTasks[tLinkTaskId].isActive) { tState = 2; FlagSet(FLAG_SYS_MIX_RECORD); DestroyRecordMixingLights(); - DestroyTask(tSndEffTaskId); + DestroyTask(tSoundTaskId); } break; case 2: - data[10] = CreateTask(Task_DoRecordMixing, 10); + tLinkTaskId = CreateTask(Task_DoRecordMixing, 10); tState = 3; PlaySE(SE_M_BATON_PASS); break; case 3: // wait for Task_DoRecordMixing - if (!gTasks[data[10]].isActive) + if (!gTasks[tLinkTaskId].isActive) { tState = 4; if (gWirelessCommType == 0) - data[10] = CreateTask_ReestablishCableClubLink(); + tLinkTaskId = CreateTask_ReestablishCableClubLink(); PrintTextOnRecordMixing(gText_RecordMixingComplete); - data[8] = 0; + tTimer = 0; } break; case 4: // wait 60 frames - if (++data[8] > 60) + if (++tTimer > 60) tState = 5; break; - case 5: - if (!gTasks[data[10]].isActive) + case 5: // Wait for the task created by CreateTask_ReestablishCableClubLink + if (!gTasks[tLinkTaskId].isActive) { free(sReceivedRecords); free(sSentRecord); SetLinkWaitingForScript(); if (gWirelessCommType != 0) - { CreateTask(Task_ReturnToFieldRecordMixing, 10); - } ClearDialogWindowAndFrame(0, 1); DestroyTask(taskId); EnableBothScriptContexts(); @@ -376,26 +371,38 @@ static void Task_RecordMixing_Main(u8 taskId) } } -#undef tState -#undef tSndEffTaskId +#undef tTimer +#undef tLinkTaskId +#undef tSoundTaskId + +// Task data for Task_MixingRecordsRecv and subsequent tasks +#define tSentRecord data[2] // Used to store a ptr, so data[2] and data[3] +#define tNumChunksSent data[4] +#define tMultiplayerId data[5] +#define tCopyTaskId data[10] + +// Task data for Task_CopyReceiveBuffer +#define tParentTaskId data[0] +#define tNumChunksRecv(i) data[1 + (i)] // Number of chunks of the record received per player +#define tRecvRecords data[5] // Used to store a ptr, so data[5] and data[6] static void Task_MixingRecordsRecv(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: PrintTextOnRecordMixing(gText_MixingRecords); task->data[8] = 0x708; - task->data[0] = 400; + task->tState = 400; ClearLinkCallback_2(); break; case 100: // wait 20 frames if (++task->data[12] > 20) { task->data[12] = 0; - task->data[0] = 101; + task->tState = 101; } break; case 101: @@ -406,14 +413,14 @@ static void Task_MixingRecordsRecv(u8 taskId) if (players == GetSavedPlayerCount()) { PlaySE(SE_PIN); - task->data[0] = 201; + task->tState = 201; task->data[12] = 0; } } else { PlaySE(SE_BOO); - task->data[0] = 301; + task->tState = 301; } } break; @@ -422,17 +429,17 @@ static void Task_MixingRecordsRecv(u8 taskId) if (GetSavedPlayerCount() == GetLinkPlayerCount_2() && ++task->data[12] > (GetLinkPlayerCount_2() * 30)) { CheckShouldAdvanceLinkState(); - task->data[0] = 1; + task->tState = 1; } break; case 301: if (GetSavedPlayerCount() == GetLinkPlayerCount_2()) - task->data[0] = 1; + task->tState = 1; break; case 400: // wait 20 frames if (++task->data[12] > 20) { - task->data[0] = 1; + task->tState = 1; task->data[12] = 0; } break; @@ -440,7 +447,7 @@ static void Task_MixingRecordsRecv(u8 taskId) if (gReceivedRemoteLinkPlayers != 0) { ConvertIntToDecimalStringN(gStringVar1, GetMultiplayerId_(), STR_CONV_MODE_LEADING_ZEROS, 2); - task->data[0] = 5; + task->tState = 5; } break; case 2: @@ -448,35 +455,34 @@ static void Task_MixingRecordsRecv(u8 taskId) u8 subTaskId; task->data[6] = GetLinkPlayerCount_2(); - task->data[0] = 0; - task->data[5] = GetMultiplayerId_(); + task->tState = 0; + task->tMultiplayerId = GetMultiplayerId_(); task->func = Task_SendPacket; if (Link_AnyPartnersPlayingRubyOrSapphire()) { - StorePtrInTaskData(sSentRecord, (u16 *)&task->data[2]); + StorePtrInTaskData(sSentRecord, &task->tSentRecord); subTaskId = CreateTask(Task_CopyReceiveBuffer, 80); - task->data[10] = subTaskId; - gTasks[subTaskId].data[0] = taskId; - StorePtrInTaskData(sReceivedRecords, (u16 *)&gTasks[subTaskId].data[5]); - sRecordStructSize = sizeof(struct PlayerRecordsRS); + task->tCopyTaskId = subTaskId; + gTasks[subTaskId].tParentTaskId = taskId; + StorePtrInTaskData(sReceivedRecords, &gTasks[subTaskId].tRecvRecords); + sRecordStructSize = sizeof(struct PlayerRecordRS); } else { - StorePtrInTaskData(sSentRecord, (u16 *)&task->data[2]); + StorePtrInTaskData(sSentRecord, &task->tSentRecord); subTaskId = CreateTask(Task_CopyReceiveBuffer, 80); - task->data[10] = subTaskId; - gTasks[subTaskId].data[0] = taskId; - StorePtrInTaskData(sReceivedRecords, (u16 *)&gTasks[subTaskId].data[5]); - sRecordStructSize = sizeof(struct PlayerRecordsEmerald); + task->tCopyTaskId = subTaskId; + gTasks[subTaskId].tParentTaskId = taskId; + StorePtrInTaskData(sReceivedRecords, &gTasks[subTaskId].tRecvRecords); + sRecordStructSize = sizeof(struct PlayerRecordEmerald); } - // Note: This task is destroyed by Task_CopyReceiveBuffer when it's done. } break; case 5: // wait 60 frames if (++task->data[10] > 60) { task->data[10] = 0; - task->data[0] = 2; + task->tState = 2; } break; } @@ -485,34 +491,34 @@ static void Task_MixingRecordsRecv(u8 taskId) static void Task_SendPacket(u8 taskId) { struct Task *task = &gTasks[taskId]; - // does this send the data 24 times? - - switch (task->data[0]) + switch (task->tState) { - case 0: // Copy record data to send buffer + case 0: // Copy record data chunk to send buffer { - void *recordData = LoadPtrFromTaskData(&task->data[2]) + task->data[4] * BUFFER_CHUNK_SIZE; + void *recordData = LoadPtrFromTaskData(&task->tSentRecord) + task->tNumChunksSent * BUFFER_CHUNK_SIZE; memcpy(gBlockSendBuffer, recordData, BUFFER_CHUNK_SIZE); - task->data[0]++; + task->tState++; } break; case 1: if (GetMultiplayerId() == 0) SendBlockRequest(BLOCK_REQ_SIZE_200); - task->data[0]++; + task->tState++; break; case 2: break; case 3: - task->data[4]++; - if (task->data[4] == sRecordStructSize / 200 + 1) - task->data[0]++; + // If sent final chunk of record, move on to next state. + // Otherwise return to first state and send next chunk. + task->tNumChunksSent++; + if (task->tNumChunksSent == sRecordStructSize / BUFFER_CHUNK_SIZE + 1) + task->tState++; else - task->data[0] = 0; + task->tState = 0; break; case 4: - if (!gTasks[task->data[10]].isActive) + if (!gTasks[task->tCopyTaskId].isActive) task->func = Task_SendPacket_SwitchToReceive; break; } @@ -527,38 +533,35 @@ static void Task_CopyReceiveBuffer(u8 taskId) if (status == GetLinkPlayerCountAsBitFlags()) { u8 i; - for (i = 0; i < GetLinkPlayerCount(); i++) { - void *dest; - void *src; - if ((status >> i) & 1) { - dest = LoadPtrFromTaskData((u16 *)&task->data[5]) + task->data[i + 1] * BUFFER_CHUNK_SIZE + sRecordStructSize * i; - src = GetPlayerRecvBuffer(i); - if ((task->data[i + 1] + 1) * BUFFER_CHUNK_SIZE > sRecordStructSize) - memcpy(dest, src, sRecordStructSize - task->data[i + 1] * BUFFER_CHUNK_SIZE); + void *dest = LoadPtrFromTaskData(&task->tRecvRecords) + task->tNumChunksRecv(i) * BUFFER_CHUNK_SIZE + sRecordStructSize * i; + void *src = GetPlayerRecvBuffer(i); + if ((task->tNumChunksRecv(i) + 1) * BUFFER_CHUNK_SIZE > sRecordStructSize) + memcpy(dest, src, sRecordStructSize - task->tNumChunksRecv(i) * BUFFER_CHUNK_SIZE); else memcpy(dest, src, BUFFER_CHUNK_SIZE); ResetBlockReceivedFlag(i); - task->data[i + 1]++; - if (task->data[i + 1] == sRecordStructSize / BUFFER_CHUNK_SIZE + 1) + task->tNumChunksRecv(i)++; + if (task->tNumChunksRecv(i) == sRecordStructSize / BUFFER_CHUNK_SIZE + 1) handledPlayers++; } } - gTasks[task->data[0]].data[0]++; + gTasks[task->tParentTaskId].tState++; } if (handledPlayers == GetLinkPlayerCount()) DestroyTask(taskId); } -static void sub_80E776C(u8 taskId) +static void Task_WaitReceivePacket(u8 taskId) { struct Task *task = &gTasks[taskId]; - if (!gTasks[task->data[10]].isActive) + // Wait for Task_CopyReceiveBuffer to finish + if (!gTasks[task->tCopyTaskId].isActive) DestroyTask(taskId); } @@ -566,15 +569,15 @@ static void Task_ReceivePacket(u8 taskId) { struct Task *task = &gTasks[taskId]; - task->func = sub_80E776C; - if (gUnknown_03001130 == TRUE) - ReceiveExchangePacket(task->data[5]); + task->func = Task_WaitReceivePacket; + if (sReadyToReceive == TRUE) + ReceiveExchangePacket(task->tMultiplayerId); } static void Task_SendPacket_SwitchToReceive(u8 taskId) { gTasks[taskId].func = Task_ReceivePacket; - gUnknown_03001130 = TRUE; + sReadyToReceive = TRUE; } static void *LoadPtrFromTaskData(const u16 *asShort) @@ -607,46 +610,46 @@ static void ShufflePlayerIndices(u32 *data) switch (players) { case 2: - for (i = 0; i < 2; i++) - data[i] = gUnknown_0858CF8C[i]; + for (i = 0; i < ARRAY_COUNT(sPlayerIdxOrders_2Player); i++) + data[i] = sPlayerIdxOrders_2Player[i]; break; case 3: - linkTrainerId = GetLinkPlayerTrainerId(0) % 2; - for (i = 0; i < 3; i++) - data[i] = gUnknown_0858CF8E[linkTrainerId][i]; + linkTrainerId = GetLinkPlayerTrainerId(0) % ARRAY_COUNT(sPlayerIdxOrders_3Player); + for (i = 0; i < ARRAY_COUNT(sPlayerIdxOrders_3Player[0]); i++) + data[i] = sPlayerIdxOrders_3Player[linkTrainerId][i]; break; case 4: - linkTrainerId = GetLinkPlayerTrainerId(0) % 9; - for (i = 0; i < 4; i++) - data[i] = gUnknown_0858CF94[linkTrainerId][i]; + linkTrainerId = GetLinkPlayerTrainerId(0) % ARRAY_COUNT(sPlayerIdxOrders_4Player); + for (i = 0; i < ARRAY_COUNT(sPlayerIdxOrders_4Player[0]); i++) + data[i] = sPlayerIdxOrders_4Player[linkTrainerId][i]; break; } } -static void ReceiveOldManData(OldMan *oldMan, size_t recordSize, u8 which) +static void ReceiveOldManData(OldMan *records, size_t recordSize, u8 multiplayerId) { u8 version; u16 language; - OldMan *dest; + OldMan *oldMan; u32 mixIndices[MAX_LINK_PLAYERS]; ShufflePlayerIndices(mixIndices); - dest = (void *)oldMan + recordSize * mixIndices[which]; - version = gLinkPlayers[mixIndices[which]].version; - language = gLinkPlayers[mixIndices[which]].language; + oldMan = (void *)records + recordSize * mixIndices[multiplayerId]; + version = gLinkPlayers[mixIndices[multiplayerId]].version; + language = gLinkPlayers[mixIndices[multiplayerId]].language; if (Link_AnyPartnersPlayingRubyOrSapphire()) - SanitizeReceivedRubyOldMan(dest, version, language); + SanitizeReceivedRubyOldMan(oldMan, version, language); else - SanitizeReceivedEmeraldOldMan(dest, version, language); + SanitizeReceivedEmeraldOldMan(oldMan, version, language); - memcpy(sOldManSave, (void *)oldMan + recordSize * mixIndices[which], sizeof(OldMan)); + memcpy(sOldManSave, (void *)records + recordSize * mixIndices[multiplayerId], sizeof(OldMan)); ResetMauvilleOldManFlag(); } -static void ReceiveBattleTowerData(void *battleTowerRecord, size_t recordSize, u8 which) +static void ReceiveBattleTowerData(void *records, size_t recordSize, u8 multiplayerId) { - struct EmeraldBattleTowerRecord *dest; + struct EmeraldBattleTowerRecord *battleTowerRecord; struct BattleTowerPokemon *btPokemon; u32 mixIndices[MAX_LINK_PLAYERS]; s32 i; @@ -654,77 +657,90 @@ static void ReceiveBattleTowerData(void *battleTowerRecord, size_t recordSize, u ShufflePlayerIndices(mixIndices); if (Link_AnyPartnersPlayingRubyOrSapphire()) { - if (RubyBattleTowerRecordToEmerald((void *)battleTowerRecord + recordSize * mixIndices[which], (void *)battleTowerRecord + recordSize * which) == TRUE) + if (RubyBattleTowerRecordToEmerald((void *)records + recordSize * mixIndices[multiplayerId], (void *)records + recordSize * multiplayerId) == TRUE) { - dest = (void *)battleTowerRecord + recordSize * which; - dest->language = gLinkPlayers[mixIndices[which]].language; - CalcEmeraldBattleTowerChecksum(dest); + battleTowerRecord = (void *)records + recordSize * multiplayerId; + battleTowerRecord->language = gLinkPlayers[mixIndices[multiplayerId]].language; + CalcEmeraldBattleTowerChecksum(battleTowerRecord); } } else { - memcpy((void *)battleTowerRecord + recordSize * which, (void *)battleTowerRecord + recordSize * mixIndices[which], sizeof(struct EmeraldBattleTowerRecord)); - dest = (void *)battleTowerRecord + recordSize * which; + memcpy((void *)records + recordSize * multiplayerId, (void *)records + recordSize * mixIndices[multiplayerId], sizeof(struct EmeraldBattleTowerRecord)); + battleTowerRecord = (void *)records + recordSize * multiplayerId; for (i = 0; i < MAX_FRONTIER_PARTY_SIZE; i++) { - btPokemon = &dest->party[i]; + btPokemon = &battleTowerRecord->party[i]; if (btPokemon->species != SPECIES_NONE && IsStringJapanese(btPokemon->nickname)) ConvertInternationalString(btPokemon->nickname, LANGUAGE_JAPANESE); } - CalcEmeraldBattleTowerChecksum(dest); + CalcEmeraldBattleTowerChecksum(battleTowerRecord); } - PutNewBattleTowerRecord((void *)battleTowerRecord + recordSize * which); + PutNewBattleTowerRecord((void *)records + recordSize * multiplayerId); } -static void ReceiveLilycoveLadyData(LilycoveLady *lilycoveLady, size_t recordSize, u8 which) +static void ReceiveLilycoveLadyData(LilycoveLady *records, size_t recordSize, u8 multiplayerId) { - LilycoveLady *dest; + LilycoveLady *lilycoveLady; u32 mixIndices[MAX_LINK_PLAYERS]; ShufflePlayerIndices(mixIndices); - memcpy((void *)lilycoveLady + recordSize * which, sLilycoveLadySave, sizeof(LilycoveLady)); + memcpy((void *)records + recordSize * multiplayerId, sLilycoveLadySave, sizeof(LilycoveLady)); if (GetLilycoveLadyId() == 0) { - dest = malloc(sizeof(LilycoveLady)); - if (dest == NULL) + lilycoveLady = malloc(sizeof(*lilycoveLady)); + if (lilycoveLady == NULL) return; - memcpy(dest, sLilycoveLadySave, sizeof(LilycoveLady)); + memcpy(lilycoveLady, sLilycoveLadySave, sizeof(LilycoveLady)); } else { - dest = NULL; + lilycoveLady = NULL; } - memcpy(sLilycoveLadySave, (void *)lilycoveLady + recordSize * mixIndices[which], sizeof(LilycoveLady)); + memcpy(sLilycoveLadySave, (void *)records + recordSize * mixIndices[multiplayerId], sizeof(LilycoveLady)); ResetLilycoveLadyForRecordMix(); - if (dest != NULL) + if (lilycoveLady != NULL) { - QuizLadyClearQuestionForRecordMix(dest); - free(dest); + QuizLadyClearQuestionForRecordMix(lilycoveLady); + free(lilycoveLady); } } -static u8 sub_80E7A9C(struct DaycareMail *rmMail) +static u8 GetDaycareMailItemId(struct DaycareMail *mail) { - return rmMail->message.itemId; + return mail->message.itemId; } -static void sub_80E7AA4(struct RecordMixingDaycareMail *src, size_t recordSize, u8 (*idxs)[2], u8 which0, u8 which1) +// Indexes for a 2 element array used to store the multiplayer id and daycare +// slot that correspond to a daycare PokĂ©mon that can hold an item. +enum { + MULTIPLAYER_ID, + DAYCARE_SLOT, +}; + +static void SwapDaycareMail(struct RecordMixingDaycareMail *records, size_t recordSize, u8 (*idxs)[2], u8 playerSlot1, u8 playerSlot2) { - struct DaycareMail buffer; - struct RecordMixingDaycareMail *mail1; - struct RecordMixingDaycareMail *mail2; - - mail1 = (void *)src + recordSize * idxs[which0][0]; - memcpy(&buffer, &mail1->mail[idxs[which0][1]], sizeof(struct DaycareMail)); - mail2 = (void *)src + recordSize * idxs[which1][0]; - memcpy(&mail1->mail[idxs[which0][1]], &mail2->mail[idxs[which1][1]], sizeof(struct DaycareMail)); - memcpy(&mail2->mail[idxs[which1][1]], &buffer, sizeof(struct DaycareMail)); + struct DaycareMail temp; + struct RecordMixingDaycareMail *mixMail1, *mixMail2; + + // 1st player's daycare mail --> temp + mixMail1 = (void *)records + recordSize * idxs[playerSlot1][MULTIPLAYER_ID]; + memcpy(&temp, &mixMail1->mail[idxs[playerSlot1][DAYCARE_SLOT]], sizeof(struct DaycareMail)); + + // 2nd player's daycare mail --> 1st player's daycare mail + mixMail2 = (void *)records + recordSize * idxs[playerSlot2][MULTIPLAYER_ID]; + memcpy(&mixMail1->mail[idxs[playerSlot1][DAYCARE_SLOT]], &mixMail2->mail[idxs[playerSlot2][DAYCARE_SLOT]], sizeof(struct DaycareMail)); + + // temp --> 2nd player's daycare mail + memcpy(&mixMail2->mail[idxs[playerSlot2][DAYCARE_SLOT]], &temp, sizeof(struct DaycareMail)); } -static void sub_80E7B2C(const u8 *src) +// This sum is used to determine which players will swap daycare mail if there are more than 2 players who can. +// The TV show data is used to calculate this sum. +static void CalculateDaycareMailRandSum(const u8 *src) { u8 sum; s32 i; @@ -733,73 +749,80 @@ static void sub_80E7B2C(const u8 *src) for (i = 0; i < 256; i++) sum += src[i]; - gUnknown_03001160 = sum; + sDaycareMailRandSum = sum; } -static u8 sub_80E7B54(void) +static u8 GetDaycareMailRandSum(void) { - return gUnknown_03001160; + return sDaycareMailRandSum; } -static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *src, size_t recordSize, u8 which, TVShow *shows) +static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *records, size_t recordSize, u8 multiplayerId, TVShow *shows) { u16 i, j; u8 linkPlayerCount; u8 tableId; - struct RecordMixingDaycareMail *_src; - u8 which0, which1; + struct RecordMixingDaycareMail *mixMail; + u8 playerSlot1, playerSlot2; void *ptr; - u8 sp04[4]; - u8 sp08[4]; - struct RecordMixingDaycareMail *sp0c[4]; - u8 sp1c[4][2]; - u8 sp24[4][2]; - u8 sp34; + u8 unusedArr1[MAX_LINK_PLAYERS]; + u8 unusedArr2[MAX_LINK_PLAYERS]; + struct RecordMixingDaycareMail *unusedMixMail[MAX_LINK_PLAYERS]; + bool8 canHoldItem[MAX_LINK_PLAYERS][DAYCARE_MON_COUNT]; + u8 idxs[MAX_LINK_PLAYERS][2]; + u8 numDaycareCanHold; u16 oldSeed; bool32 anyRS; + // Seed RNG to the first player's trainer id so that + // every player has the same random swap occur + // (see the other use of Random2 in this function) oldSeed = Random2(); SeedRng2(gLinkPlayers[0].trainerId); linkPlayerCount = GetLinkPlayerCount(); - for (i = 0; i < 4; i++) + for (i = 0; i < MAX_LINK_PLAYERS; i++) { - sp04[i] = 0xFF; - sp08[i] = 0; - sp1c[i][0] = 0; - sp1c[i][1] = 0; + unusedArr1[i] = 0xFF; + unusedArr2[i] = 0; + canHoldItem[i][0] = FALSE; + canHoldItem[i][1] = FALSE; } + // Handle language differences if RS / Japanese players are present anyRS = Link_AnyPartnersPlayingRubyOrSapphire(); for (i = 0; i < GetLinkPlayerCount(); i++) { u32 language, version; - _src = (void *)src + i * recordSize; + mixMail = (void *)records + i * recordSize; language = gLinkPlayers[i].language; version = gLinkPlayers[i].version & 0xFF; - for (j = 0; j < _src->numDaycareMons; j++) + + for (j = 0; j < mixMail->numDaycareMons; j++) { u16 otNameLanguage, nicknameLanguage; - struct DaycareMail *recordMixingMail = &_src->mail[j]; + struct DaycareMail *daycareMail = &mixMail->mail[j]; - if (!recordMixingMail->message.itemId) + if (daycareMail->message.itemId == ITEM_NONE) continue; if (anyRS) { - if (StringLength(recordMixingMail->OT_name) <= 5) + // Handle OT name language + if (StringLength(daycareMail->otName) <= 5) { otNameLanguage = LANGUAGE_JAPANESE; } else { - StripExtCtrlCodes(recordMixingMail->OT_name); + StripExtCtrlCodes(daycareMail->otName); otNameLanguage = language; } - if (recordMixingMail->monName[0] == EXT_CTRL_CODE_BEGIN && recordMixingMail->monName[1] == EXT_CTRL_CODE_JPN) + // Handle nickname langugae + if (daycareMail->monName[0] == EXT_CTRL_CODE_BEGIN && daycareMail->monName[1] == EXT_CTRL_CODE_JPN) { - StripExtCtrlCodes(recordMixingMail->monName); + StripExtCtrlCodes(daycareMail->monName); nicknameLanguage = LANGUAGE_JAPANESE; } else @@ -807,121 +830,145 @@ static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *src, size_t r nicknameLanguage = language; } + // Set languages if (version == VERSION_RUBY || version == VERSION_SAPPHIRE) { - recordMixingMail->gameLanguage = otNameLanguage; - recordMixingMail->monLanguage = nicknameLanguage; + daycareMail->gameLanguage = otNameLanguage; + daycareMail->monLanguage = nicknameLanguage; } } else if (language == LANGUAGE_JAPANESE) { - if (IsStringJapanese(recordMixingMail->OT_name)) - recordMixingMail->gameLanguage = LANGUAGE_JAPANESE; + if (IsStringJapanese(daycareMail->otName)) + daycareMail->gameLanguage = LANGUAGE_JAPANESE; else - recordMixingMail->gameLanguage = GAME_LANGUAGE; + daycareMail->gameLanguage = GAME_LANGUAGE; - if (IsStringJapanese(recordMixingMail->monName)) - recordMixingMail->monLanguage = LANGUAGE_JAPANESE; + if (IsStringJapanese(daycareMail->monName)) + daycareMail->monLanguage = LANGUAGE_JAPANESE; else - recordMixingMail->monLanguage = GAME_LANGUAGE; + daycareMail->monLanguage = GAME_LANGUAGE; } } } - sp34 = 0; + // For each player, get which of their daycare PokĂ©mon can hold items + // (can't hold items if already holding one, or if daycare slot is empty). + // Note that when deposited in the daycare, PokĂ©mon have their mail taken + // from them and returned upon withdrawal, which means daycare PokĂ©mon that + // have associated mail do not have a held item. + // Because not holding an item is the only determination for a swap, this also + // means that a "swap" can occur even if neither PokĂ©mon has associated mail. + numDaycareCanHold = 0; for (i = 0; i < linkPlayerCount; i++) { - _src = (void *)src + i * recordSize; - if (_src->numDaycareMons == 0) + mixMail = (void *)records + i * recordSize; + if (mixMail->numDaycareMons == 0) continue; - for (j = 0; j < _src->numDaycareMons; j++) + for (j = 0; j < mixMail->numDaycareMons; j++) { - if (!_src->holdsItem[j]) - sp1c[i][j] = 1; + if (!mixMail->cantHoldItem[j]) + canHoldItem[i][j] = TRUE; } } + // Fill the idxs array with data about which players + // and which daycare slots should swap mail. j = 0; for (i = 0; i < linkPlayerCount; i++) { - _src = (void *)src + i * recordSize; - if (sp1c[i][0] == TRUE || sp1c[i][1] == TRUE) - sp34++; - - if (sp1c[i][0] == TRUE && sp1c[i][1] == FALSE) + mixMail = (void *)records + i * recordSize; + + // Count number of players that have at least + // one daycare PokĂ©mon with no held item + if (canHoldItem[i][0] == TRUE || canHoldItem[i][1] == TRUE) + numDaycareCanHold++; + + if (canHoldItem[i][0] == TRUE && canHoldItem[i][1] == FALSE) { - sp24[j][0] = i; - sp24[j][1] = 0; + // Only daycare slot 0 can hold an item for this player, record it + idxs[j][MULTIPLAYER_ID] = i; + idxs[j][DAYCARE_SLOT] = 0; j++; } - else if (sp1c[i][0] == FALSE && sp1c[i][1] == TRUE) + else if (canHoldItem[i][0] == FALSE && canHoldItem[i][1] == TRUE) { - sp24[j][0] = i; - sp24[j][1] = 1; + // Only daycare slot 1 can hold an item for this player, record it + idxs[j][MULTIPLAYER_ID] = i; + idxs[j][DAYCARE_SLOT] = 1; j++; } - else if (sp1c[i][0] == TRUE && sp1c[i][1] == TRUE) + else if (canHoldItem[i][0] == TRUE && canHoldItem[i][1] == TRUE) { - u32 var1, var2; + // Both daycare slots can hold an item, choose which one to use. + // If either one is the only one to have associated mail, use that one. + // If both do or don't have associated mail, choose one randomly. + u32 itemId1, itemId2; + idxs[j][MULTIPLAYER_ID] = i; + itemId1 = GetDaycareMailItemId(&mixMail->mail[0]); + itemId2 = GetDaycareMailItemId(&mixMail->mail[1]); + + if ((!itemId1 && !itemId2) || (itemId1 && itemId2)) + idxs[j][DAYCARE_SLOT] = Random2() % 2; + else if (itemId1 && !itemId2) + idxs[j][DAYCARE_SLOT] = 0; + else if (!itemId1 && itemId2) + idxs[j][DAYCARE_SLOT] = 1; - sp24[j][0] = i; - var1 = sub_80E7A9C(&_src->mail[0]); - var2 = sub_80E7A9C(&_src->mail[1]); - if (!(var1 || var2) || (var1 && var2)) - { - sp24[j][1] = Random2() % 2; - } - else if (var1 && !var2) - { - sp24[j][1] = 0; - } - else if (!var1 && var2) - { - sp24[j][1] = 1; - } j++; } } - for (i = 0; i < 4; i++) + // Copy the player's record mix mail 4 times to an array that's never read. + for (i = 0; i < MAX_LINK_PLAYERS; i++) { - _src = &src[which * recordSize]; - sp0c[i] = _src; + mixMail = &records[multiplayerId * recordSize]; + unusedMixMail[i] = mixMail; } - tableId = sub_80E7B54() % 3; - switch (sp34) + // Choose a random table id to determine who will + // swap if there are more than 2 candidate players. + tableId = GetDaycareMailRandSum() % NUM_SWAP_COMBOS; + switch (numDaycareCanHold) { case 2: - sub_80E7AA4(src, recordSize, sp24, 0, 1); + // 2 players can swap, just perform swap. + SwapDaycareMail(records, recordSize, idxs, 0, 1); break; case 3: - which0 = gUnknown_0858CFB8[tableId][0]; - which1 = gUnknown_0858CFB8[tableId][1]; - sub_80E7AA4(src, recordSize, sp24, which0, which1); + // 3 players can swap, select 2 and leave the 3rd out + playerSlot1 = sDaycareMailSwapIds_3Player[tableId][0]; + playerSlot2 = sDaycareMailSwapIds_3Player[tableId][1]; + SwapDaycareMail(records, recordSize, idxs, playerSlot1, playerSlot2); break; case 4: - ptr = sp24; - which0 = gUnknown_0858CFBE[tableId][0]; - which1 = gUnknown_0858CFBE[tableId][1]; - sub_80E7AA4(src, recordSize, ptr, which0, which1); - which0 = gUnknown_0858CFBE[tableId][2]; - which1 = gUnknown_0858CFBE[tableId][3]; - sub_80E7AA4(src, recordSize, ptr, which0, which1); + // 4 players can swap, select which 2 pairings will swap + ptr = idxs; + + // Swap pair 1 + playerSlot1 = sDaycareMailSwapIds_4Player[tableId][0]; + playerSlot2 = sDaycareMailSwapIds_4Player[tableId][1]; + SwapDaycareMail(records, recordSize, ptr, playerSlot1, playerSlot2); + + // Swap pair 2 + playerSlot1 = sDaycareMailSwapIds_4Player[tableId][2]; + playerSlot2 = sDaycareMailSwapIds_4Player[tableId][3]; + SwapDaycareMail(records, recordSize, ptr, playerSlot1, playerSlot2); break; } - _src = (void *)src + which * recordSize; - memcpy(&gSaveBlock1Ptr->daycare.mons[0].mail, &_src->mail[0], sizeof(struct DaycareMail)); - memcpy(&gSaveBlock1Ptr->daycare.mons[1].mail, &_src->mail[1], sizeof(struct DaycareMail)); + // Save player's record mixed mail to the daycare (in case it has changed) + mixMail = (void *)records + multiplayerId * recordSize; + memcpy(&gSaveBlock1Ptr->daycare.mons[0].mail, &mixMail->mail[0], sizeof(struct DaycareMail)); + memcpy(&gSaveBlock1Ptr->daycare.mons[1].mail, &mixMail->mail[1], sizeof(struct DaycareMail)); SeedRng(oldSeed); } -static void ReceiveGiftItem(u16 *item, u8 which) +static void ReceiveGiftItem(u16 *item, u8 multiplayerId) { - if (which != 0 && *item != ITEM_NONE && GetPocketByItemId(*item) == POCKET_KEY_ITEMS) + if (multiplayerId != 0 && *item != ITEM_NONE && GetPocketByItemId(*item) == POCKET_KEY_ITEMS) { if (!CheckBagHasItem(*item, 1) && !CheckPCHasItem(*item, 1) && AddBagItem(*item, 1)) { @@ -941,29 +988,28 @@ static void Task_DoRecordMixing(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: - task->data[0]++; + task->tState++; break; case 1: if (Link_AnyPartnersPlayingRubyOrSapphire()) - task->data[0]++; + task->tState++; else - task->data[0] = 6; + task->tState = 6; break; - - // Mixing Ruby/Sapphire records. case 2: + // Mixing Ruby/Sapphire records. SetContinueGameWarpStatusToDynamicWarp(); FullSaveGame(); - task->data[0]++; + task->tState++; break; case 3: if (CheckSaveFile()) { ClearContinueGameWarpStatus2(); - task->data[0] = 4; + task->tState = 4; task->data[1] = 0; } break; @@ -971,10 +1017,11 @@ static void Task_DoRecordMixing(u8 taskId) if (++task->data[1] > 10) { SetCloseLinkCallback(); - task->data[0]++; + task->tState++; } break; case 5: + // Finish mixing Ruby/Sapphire records if (gReceivedRemoteLinkPlayers == FALSE) DestroyTask(taskId); break; @@ -984,7 +1031,7 @@ static void Task_DoRecordMixing(u8 taskId) if (!Rfu_SetLinkRecovery(FALSE)) { CreateTask(Task_LinkSave, 5); - task->data[0]++; + task->tState++; } break; case 7: // wait for Task_LinkSave to finish. @@ -993,17 +1040,17 @@ static void Task_DoRecordMixing(u8 taskId) if (gWirelessCommType) { Rfu_SetLinkRecovery(TRUE); - task->data[0] = 8; + task->tState = 8; } else { - task->data[0] = 4; + task->tState = 4; } } break; case 8: SetLinkStandbyCallback(); - task->data[0]++; + task->tState++; break; case 9: if (IsLinkTaskFinished()) @@ -1012,8 +1059,6 @@ static void Task_DoRecordMixing(u8 taskId) } } -// New Emerald functions - static void GetSavedApprentices(struct Apprentice *dst, struct Apprentice *src) { s32 i, id; @@ -1031,7 +1076,7 @@ static void GetSavedApprentices(struct Apprentice *dst, struct Apprentice *src) numMixApprentices = 0; for (i = 0; i < 2; i++) { - id = ((i + gSaveBlock2Ptr->playerApprentice.saveId) % (APPRENTICE_COUNT - 1)) + 1; + id = (i + gSaveBlock2Ptr->playerApprentice.saveId) % (APPRENTICE_COUNT - 1) + 1; if (src[id].playerName[0] != EOS) { if (GetTrainerId(src[id].playerId) != GetTrainerId(gSaveBlock2Ptr->playerTrainerId)) @@ -1074,7 +1119,7 @@ void GetPlayerHallRecords(struct PlayerHallRecords *dst) for (i = 0; i < HALL_FACILITIES_COUNT; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { CopyTrainerId(dst->onePlayer[i][j].id, gSaveBlock2Ptr->playerTrainerId); dst->onePlayer[i][j].language = GAME_LANGUAGE; @@ -1082,7 +1127,7 @@ void GetPlayerHallRecords(struct PlayerHallRecords *dst) } } - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { dst->twoPlayers[j].language = GAME_LANGUAGE; CopyTrainerId(dst->twoPlayers[j].id1, gSaveBlock2Ptr->playerTrainerId); @@ -1091,17 +1136,17 @@ void GetPlayerHallRecords(struct PlayerHallRecords *dst) StringCopy(dst->twoPlayers[j].name2, gSaveBlock2Ptr->frontier.opponentNames[j]); } - for (i = 0; i < 2; i++) + for (i = 0; i < FRONTIER_LVL_MODE_COUNT; i++) { - dst->onePlayer[0][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; - dst->onePlayer[1][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_DOUBLES][i]; - dst->onePlayer[2][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_MULTIS][i]; - dst->onePlayer[3][i].winStreak = gSaveBlock2Ptr->frontier.domeRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; - dst->onePlayer[4][i].winStreak = gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; - dst->onePlayer[5][i].winStreak = gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]; - dst->onePlayer[6][i].winStreak = gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; - dst->onePlayer[7][i].winStreak = gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]; - dst->onePlayer[8][i].winStreak = gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]; + dst->onePlayer[RANKING_HALL_TOWER_SINGLES][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; + dst->onePlayer[RANKING_HALL_TOWER_DOUBLES][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_DOUBLES][i]; + dst->onePlayer[RANKING_HALL_TOWER_MULTIS][i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_MULTIS][i]; + dst->onePlayer[RANKING_HALL_DOME][i].winStreak = gSaveBlock2Ptr->frontier.domeRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; + dst->onePlayer[RANKING_HALL_PALACE][i].winStreak = gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; + dst->onePlayer[RANKING_HALL_ARENA][i].winStreak = gSaveBlock2Ptr->frontier.arenaRecordStreaks[i]; + dst->onePlayer[RANKING_HALL_FACTORY][i].winStreak = gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[FRONTIER_MODE_SINGLES][i]; + dst->onePlayer[RANKING_HALL_PIKE][i].winStreak = gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]; + dst->onePlayer[RANKING_HALL_PYRAMID][i].winStreak = gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i]; dst->twoPlayers[i].winStreak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[FRONTIER_MODE_LINK_MULTIS][i]; } @@ -1115,28 +1160,26 @@ static bool32 IsApprenticeAlreadySaved(struct Apprentice *mixApprentice, struct { if (GetTrainerId(mixApprentice->playerId) == GetTrainerId(apprentices[i].playerId) && mixApprentice->number == apprentices[i].number) - { return TRUE; - } } return FALSE; } -static void ReceiveApprenticeData(struct Apprentice *mixApprentice, size_t recordSize, u32 multiplayerId) +static void ReceiveApprenticeData(struct Apprentice *records, size_t recordSize, u32 multiplayerId) { s32 i, numApprentices, apprenticeId; - struct Apprentice *mixApprenticePtr; + struct Apprentice *mixApprentice; u32 mixIndices[MAX_LINK_PLAYERS]; u32 apprenticeSaveId; ShufflePlayerIndices(mixIndices); - mixApprenticePtr = (void*)(mixApprentice) + (recordSize * mixIndices[multiplayerId]); + mixApprentice = (void*)records + (recordSize * mixIndices[multiplayerId]); numApprentices = 0; apprenticeId = 0; for (i = 0; i < 2; i++) { - if (mixApprenticePtr[i].playerName[0] != EOS && !IsApprenticeAlreadySaved(&mixApprenticePtr[i], &gSaveBlock2Ptr->apprentices[0])) + if (mixApprentice[i].playerName[0] != EOS && !IsApprenticeAlreadySaved(&mixApprentice[i], &gSaveBlock2Ptr->apprentices[0])) { numApprentices++; apprenticeId = i; @@ -1147,14 +1190,14 @@ static void ReceiveApprenticeData(struct Apprentice *mixApprentice, size_t recor { case 1: apprenticeSaveId = gSaveBlock2Ptr->playerApprentice.saveId + 1; - gSaveBlock2Ptr->apprentices[apprenticeSaveId] = mixApprenticePtr[apprenticeId]; + gSaveBlock2Ptr->apprentices[apprenticeSaveId] = mixApprentice[apprenticeId]; gSaveBlock2Ptr->playerApprentice.saveId = (gSaveBlock2Ptr->playerApprentice.saveId + 1) % (APPRENTICE_COUNT - 1); break; case 2: for (i = 0; i < 2; i++) { apprenticeSaveId = ((i ^ 1) + gSaveBlock2Ptr->playerApprentice.saveId) % (APPRENTICE_COUNT - 1) + 1; - gSaveBlock2Ptr->apprentices[apprenticeSaveId] = mixApprenticePtr[i]; + gSaveBlock2Ptr->apprentices[apprenticeSaveId] = mixApprentice[i]; } gSaveBlock2Ptr->playerApprentice.saveId = (gSaveBlock2Ptr->playerApprentice.saveId + 2) % (APPRENTICE_COUNT - 1); break; @@ -1183,15 +1226,15 @@ static void sub_80E8578(struct RecordMixingHallRecords *dst, void *hallRecords, for (i = 0; i < HALL_FACILITIES_COUNT; i++) { - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { - for (k = 0; k < 3; k++) + for (k = 0; k < HALL_RECORDS_COUNT; k++) dst->hallRecords1P[i][j][k] = gSaveBlock2Ptr->hallRecords1P[i][j][k]; for (k = 0; k < linkPlayerCount - 1; k++) { var_68 = 0; - for (l = 0; l < 3; l++) + for (l = 0; l < HALL_RECORDS_COUNT; l++) { if (GetTrainerId(dst->hallRecords1P[i][j][l].id) == GetTrainerId(gUnknown_03001168[k]->onePlayer[i][j].id)) { @@ -1201,20 +1244,20 @@ static void sub_80E8578(struct RecordMixingHallRecords *dst, void *hallRecords, } } if (var_68 == 0) - dst->hallRecords1P[i][j][k + 3] = gUnknown_03001168[k]->onePlayer[i][j]; + dst->hallRecords1P[i][j][k + HALL_RECORDS_COUNT] = gUnknown_03001168[k]->onePlayer[i][j]; } } } - for (j = 0; j < 2; j++) + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { - for (k = 0; k < 3; k++) + for (k = 0; k < HALL_RECORDS_COUNT; k++) dst->hallRecords2P[j][k] = gSaveBlock2Ptr->hallRecords2P[j][k]; for (k = 0; k < linkPlayerCount - 1; k++) { var_68 = 0; - for (l = 0; l < 3; l++) + for (l = 0; l < HALL_RECORDS_COUNT; l++) { if (GetTrainerId(dst->hallRecords2P[j][l].id1) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id1) && GetTrainerId(dst->hallRecords2P[j][l].id2) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id2)) @@ -1225,7 +1268,7 @@ static void sub_80E8578(struct RecordMixingHallRecords *dst, void *hallRecords, } } if (var_68 == 0) - dst->hallRecords2P[j][k + 3] = gUnknown_03001168[k]->twoPlayers[j]; + dst->hallRecords2P[j][k + HALL_RECORDS_COUNT] = gUnknown_03001168[k]->twoPlayers[j]; } } } @@ -1234,7 +1277,7 @@ static void sub_80E8880(struct RankingHall1P *arg0, struct RankingHall1P *arg1) { s32 i, j; - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) { s32 highestWinStreak = 0; s32 highestId = -1; @@ -1280,36 +1323,36 @@ static void sub_80E88CC(struct RankingHall2P *arg0, struct RankingHall2P *arg1) } } -static void sub_80E8924(struct RecordMixingHallRecords *arg0) +static void sub_80E8924(struct RecordMixingHallRecords *mixHallRecords) { s32 i, j; for (i = 0; i < HALL_FACILITIES_COUNT; i++) { - for (j = 0; j < 2; j++) - sub_80E8880(gSaveBlock2Ptr->hallRecords1P[i][j], arg0->hallRecords1P[i][j]); + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) + sub_80E8880(gSaveBlock2Ptr->hallRecords1P[i][j], mixHallRecords->hallRecords1P[i][j]); } - for (j = 0; j < 2; j++) - sub_80E88CC(gSaveBlock2Ptr->hallRecords2P[j], arg0->hallRecords2P[j]); + for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) + sub_80E88CC(gSaveBlock2Ptr->hallRecords2P[j], mixHallRecords->hallRecords2P[j]); } static void ReceiveRankingHallRecords(struct PlayerHallRecords *hallRecords, size_t recordSize, u32 arg2) { u8 linkPlayerCount = GetLinkPlayerCount(); - struct RecordMixingHallRecords *largeStructPtr = AllocZeroed(sizeof(struct RecordMixingHallRecords)); + struct RecordMixingHallRecords *mixHallRecords = AllocZeroed(sizeof(*mixHallRecords)); - sub_80E8578(largeStructPtr, hallRecords, recordSize, arg2, linkPlayerCount); - sub_80E8924(largeStructPtr); + sub_80E8578(mixHallRecords, hallRecords, recordSize, arg2, linkPlayerCount); + sub_80E8924(mixHallRecords); - Free(largeStructPtr); + Free(mixHallRecords); } static void GetRecordMixingDaycareMail(struct RecordMixingDaycareMail *dst) { - sDaycareMail.mail[0] = gSaveBlock1Ptr->daycare.mons[0].mail; - sDaycareMail.mail[1] = gSaveBlock1Ptr->daycare.mons[1].mail; - InitDaycareMailRecordMixing(&gSaveBlock1Ptr->daycare, &sDaycareMail); - *dst = *sDaycareMailSave; + sRecordMixMail.mail[0] = gSaveBlock1Ptr->daycare.mons[0].mail; + sRecordMixMail.mail[1] = gSaveBlock1Ptr->daycare.mons[1].mail; + InitDaycareMailRecordMixing(&gSaveBlock1Ptr->daycare, &sRecordMixMail); + *dst = *sRecordMixMailSave; } static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *src) @@ -1319,10 +1362,10 @@ static void SanitizeDaycareMailForRuby(struct RecordMixingDaycareMail *src) for (i = 0; i < src->numDaycareMons; i++) { struct DaycareMail *mail = &src->mail[i]; - if (mail->message.itemId != 0) + if (mail->message.itemId != ITEM_NONE) { if (mail->gameLanguage != LANGUAGE_JAPANESE) - PadNameString(mail->OT_name, EXT_CTRL_CODE_BEGIN); + PadNameString(mail->otName, EXT_CTRL_CODE_BEGIN); ConvertInternationalString(mail->monName, mail->monLanguage); } diff --git a/src/trade.c b/src/trade.c index d1fc14efe830..00db3c23297e 100644 --- a/src/trade.c +++ b/src/trade.c @@ -101,7 +101,7 @@ static EWRAM_DATA u8 *sMenuTextAllocBuffer = NULL; // See the corresponding GFXTAGs in src/data/trade.h static EWRAM_DATA u8 *sMenuTextTileBuffers[GFXTAG_MENU_TEXT_COUNT] = {NULL}; -EWRAM_DATA struct MailStruct gTradeMail[PARTY_SIZE] = {0}; +EWRAM_DATA struct Mail gTradeMail[PARTY_SIZE] = {0}; EWRAM_DATA u8 gSelectedTradeMonPositions[2] = {0}; static EWRAM_DATA struct { /*0x0000*/ u8 bg2hofs; @@ -144,7 +144,7 @@ static EWRAM_DATA struct { } *sTradeMenuData = {NULL}; static EWRAM_DATA struct { - /*0x00*/ struct Pokemon mon; + /*0x00*/ struct Pokemon tempMon; // Used as a temp variable when swapping PokĂ©mon /*0x64*/ u32 timer; /*0x68*/ u32 monPersonalities[2]; /*0x70*/ u8 filler_70[2]; @@ -238,7 +238,7 @@ static void SpriteCB_BouncingPokeballDepart(struct Sprite *); static void SpriteCB_BouncingPokeballDepartEnd(struct Sprite *); static void SpriteCB_BouncingPokeballArrive(struct Sprite *); static void BufferInGameTradeMonName(void); -static void SetInGameTradeMail(struct MailStruct *, const struct InGameTrade *); +static void SetInGameTradeMail(struct Mail *, const struct InGameTrade *); static void CB2_UpdateLinkTrade(void); static void CB2_TryFinishTrade(void); static void CB2_SaveAndEndTrade(void); @@ -1054,7 +1054,7 @@ static bool8 BufferTradeParties(void) } break; case 13: - Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, PARTY_SIZE * sizeof(struct MailStruct) + 4); + Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, PARTY_SIZE * sizeof(struct Mail) + 4); sTradeMenuData->bufferPartyState++; break; case 15: @@ -1065,7 +1065,7 @@ static bool8 BufferTradeParties(void) case 16: if (_GetBlockReceivedStatus() == 3) { - Trade_Memcpy(gTradeMail, gBlockRecvBuffer[id ^ 1], PARTY_SIZE * sizeof(struct MailStruct)); + Trade_Memcpy(gTradeMail, gBlockRecvBuffer[id ^ 1], PARTY_SIZE * sizeof(struct Mail)); TradeResetReceivedFlags(); sTradeMenuData->bufferPartyState++; } @@ -3043,18 +3043,16 @@ static void TradeMons(u8 playerPartyIdx, u8 partnerPartyIdx) u16 partnerMail = GetMonData(partnerMon, MON_DATA_MAIL); if (playerMail != MAIL_NONE) - ClearMailStruct(&gSaveBlock1Ptr->mail[playerMail]); + ClearMail(&gSaveBlock1Ptr->mail[playerMail]); - sTradeData->mon = *playerMon; - *playerMon = *partnerMon; - *partnerMon = sTradeData->mon; + SWAP(*playerMon, *partnerMon, sTradeData->tempMon); friendship = 70; if (!GetMonData(playerMon, MON_DATA_IS_EGG)) SetMonData(playerMon, MON_DATA_FRIENDSHIP, &friendship); if (partnerMail != MAIL_NONE) - GiveMailToMon2(playerMon, &gTradeMail[partnerMail]); + GiveMailToMon(playerMon, &gTradeMail[partnerMail]); UpdatePokedexForReceivedMon(playerPartyIdx); if (gReceivedRemoteLinkPlayers) @@ -4492,7 +4490,7 @@ static void _CreateInGameTradePokemon(u8 whichPlayerMon, u8 whichInGameTrade) const struct InGameTrade *inGameTrade = &sIngameTrades[whichInGameTrade]; u8 level = GetMonData(&gPlayerParty[whichPlayerMon], MON_DATA_LEVEL); - struct MailStruct mail; + struct Mail mail; u8 metLocation = METLOC_IN_GAME_TRADE; u8 isMail; struct Pokemon *pokemon = &gEnemyParty[0]; @@ -4535,7 +4533,7 @@ static void _CreateInGameTradePokemon(u8 whichPlayerMon, u8 whichInGameTrade) CalculateMonStats(&gEnemyParty[0]); } -static void SetInGameTradeMail(struct MailStruct *mail, const struct InGameTrade *trade) { +static void SetInGameTradeMail(struct Mail *mail, const struct InGameTrade *trade) { s32 i; for (i = 0; i < MAIL_WORDS_COUNT; i++) diff --git a/src/union_room.c b/src/union_room.c index db2d0247be1e..a889490f1cf6 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1495,14 +1495,14 @@ static void Task_StartUnionRoomTrade(u8 taskId) } break; case 2: - memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, sizeof(struct MailStruct) * PARTY_SIZE + 4); - if (SendBlock(0, gBlockSendBuffer, sizeof(struct MailStruct) * PARTY_SIZE + 4)) + memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, sizeof(struct Mail) * PARTY_SIZE + 4); + if (SendBlock(0, gBlockSendBuffer, sizeof(struct Mail) * PARTY_SIZE + 4)) gTasks[taskId].data[0]++; break; case 3: if (GetBlockReceivedStatus() == 3) { - memcpy(gTradeMail, gBlockRecvBuffer[GetMultiplayerId() ^ 1], sizeof(struct MailStruct) * PARTY_SIZE); + memcpy(gTradeMail, gBlockRecvBuffer[GetMultiplayerId() ^ 1], sizeof(struct Mail) * PARTY_SIZE); ResetBlockReceivedFlags(); gSelectedTradeMonPositions[TRADE_PLAYER] = monId; gSelectedTradeMonPositions[TRADE_PARTNER] = PARTY_SIZE; From 7a89ad98c38cee231a2659135ef487bb5fc5ad9d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 24 Oct 2021 15:49:45 -0400 Subject: [PATCH 331/762] Document record mixing hall records --- include/constants/global.h | 1 + src/frontier_util.c | 22 +++---- src/record_mixing.c | 114 +++++++++++++++++++++---------------- 3 files changed, 77 insertions(+), 60 deletions(-) diff --git a/include/constants/global.h b/include/constants/global.h index 46518697cc18..589a3012c14e 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -59,6 +59,7 @@ // 7 facilities for single mode + tower double mode + tower multi mode. // Excludes link modes. See RANKING_HALL_* in include/constants/battle_frontier.h #define HALL_FACILITIES_COUNT 9 +// Received via record mixing, 1 for each player other than yourself #define HALL_RECORDS_COUNT 3 // Battle Frontier level modes. diff --git a/src/frontier_util.c b/src/frontier_util.c index bb758de4b463..ec3eba43a4ad 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -2303,20 +2303,20 @@ static void Fill1PRecords(struct RankingHall1P *dst, s32 hallFacilityId, s32 lvl static void Fill2PRecords(struct RankingHall2P *dst, s32 lvlMode) { s32 i, j; - struct RankingHall2P record2P[4]; + struct RankingHall2P record2P[HALL_RECORDS_COUNT + 1]; struct PlayerHallRecords *playerHallRecords = calloc(1, sizeof(struct PlayerHallRecords)); GetPlayerHallRecords(playerHallRecords); - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) record2P[i] = gSaveBlock2Ptr->hallRecords2P[lvlMode][i]; - record2P[3] = playerHallRecords->twoPlayers[lvlMode]; + record2P[HALL_RECORDS_COUNT] = playerHallRecords->twoPlayers[lvlMode]; - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) { s32 highestWinStreak = 0; s32 highestId = 0; - for (j = 0; j < 3; j++) + for (j = 0; j < HALL_RECORDS_COUNT; j++) { if (record2P[j].winStreak > highestWinStreak) { @@ -2324,8 +2324,8 @@ static void Fill2PRecords(struct RankingHall2P *dst, s32 lvlMode) highestWinStreak = record2P[j].winStreak; } } - if (record2P[3].winStreak >= highestWinStreak) - highestId = 3; + if (record2P[HALL_RECORDS_COUNT].winStreak >= highestWinStreak) + highestId = HALL_RECORDS_COUNT; dst[i] = record2P[highestId]; record2P[highestId].winStreak = 0; @@ -2338,8 +2338,8 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) { s32 i; s32 x; - struct RankingHall1P records1P[3]; - struct RankingHall2P records2P[3]; + struct RankingHall1P records1P[HALL_RECORDS_COUNT]; + struct RankingHall2P records2P[HALL_RECORDS_COUNT]; StringCopy(gStringVar1, sRecordsWindowChallengeTexts[hallFacilityId][0]); StringExpandPlaceholders(gStringVar4, sRecordsWindowChallengeTexts[hallFacilityId][1]); @@ -2351,13 +2351,13 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) gSaveBlock2Ptr->frontier.opponentNames[0][PLAYER_NAME_LENGTH] = EOS; gSaveBlock2Ptr->frontier.opponentNames[1][PLAYER_NAME_LENGTH] = EOS; Fill2PRecords(records2P, lvlMode); - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) Print2PRecord(i, 1, 4, &records2P[i]); } else { Fill1PRecords(records1P, hallFacilityId, lvlMode); - for (i = 0; i < 3; i++) + for (i = 0; i < HALL_RECORDS_COUNT; i++) Print1PRecord(i, 1, 4, &records1P[i], hallFacilityId); } } diff --git a/src/record_mixing.c b/src/record_mixing.c index fe51667f4231..7ffe6680f527 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -97,7 +97,7 @@ static void *sApprenticesSave; static void *sBattleTowerSave_Duplicate; static u32 sRecordStructSize; static u8 sDaycareMailRandSum; -static struct PlayerHallRecords *gUnknown_03001168[3]; +static struct PlayerHallRecords *sPartnerHallRecords[HALL_RECORDS_COUNT]; static EWRAM_DATA struct RecordMixingDaycareMail sRecordMixMail = {0}; static EWRAM_DATA union PlayerRecord *sReceivedRecords = NULL; @@ -278,8 +278,8 @@ static void ReceiveExchangePacket(u32 multiplayerId) ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(sReceivedRecords->emerald), multiplayerId); ReceiveGiftItem(&sReceivedRecords->emerald.giftItem, multiplayerId); ReceiveLilycoveLadyData(&sReceivedRecords->emerald.lilycoveLady, sizeof(sReceivedRecords->emerald), multiplayerId); - ReceiveApprenticeData(sReceivedRecords->emerald.apprentices, sizeof(sReceivedRecords->emerald), (u8) multiplayerId); - ReceiveRankingHallRecords(&sReceivedRecords->emerald.hallRecords, sizeof(sReceivedRecords->emerald), (u8) multiplayerId); + ReceiveApprenticeData(sReceivedRecords->emerald.apprentices, sizeof(sReceivedRecords->emerald), (u8)multiplayerId); + ReceiveRankingHallRecords(&sReceivedRecords->emerald.hallRecords, sizeof(sReceivedRecords->emerald), (u8)multiplayerId); } } @@ -1204,145 +1204,161 @@ static void ReceiveApprenticeData(struct Apprentice *records, size_t recordSize, } } -static void sub_80E8578(struct RecordMixingHallRecords *dst, void *hallRecords, size_t recordSize, u32 arg3, s32 linkPlayerCount) +static void GetNewHallRecords(struct RecordMixingHallRecords *dst, void *records, size_t recordSize, u32 multiplayerId, s32 linkPlayerCount) { s32 i, j, k, l; - s32 var_68; + s32 repeatTrainers; + // Load sPartnerHallRecords with link partners' hall records k = 0; - i = 0; - while (1) + for (i = 0; i < linkPlayerCount; i++) { - if (i >= linkPlayerCount) - break; - if (i != arg3) - gUnknown_03001168[k++] = hallRecords; - - if (k == 3) + if (i != multiplayerId) + sPartnerHallRecords[k++] = records; + if (k == HALL_RECORDS_COUNT) break; - hallRecords += recordSize; - i++; + records += recordSize; } + // Get improved 1P hall records for (i = 0; i < HALL_FACILITIES_COUNT; i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { + // First get the existing saved records for (k = 0; k < HALL_RECORDS_COUNT; k++) dst->hallRecords1P[i][j][k] = gSaveBlock2Ptr->hallRecords1P[i][j][k]; + // Then read the new mixed records for (k = 0; k < linkPlayerCount - 1; k++) { - var_68 = 0; + repeatTrainers = 0; for (l = 0; l < HALL_RECORDS_COUNT; l++) { - if (GetTrainerId(dst->hallRecords1P[i][j][l].id) == GetTrainerId(gUnknown_03001168[k]->onePlayer[i][j].id)) + // If the new trainer is already in the existing saved records, only + // use the new one if the win streak is better + if (GetTrainerId(dst->hallRecords1P[i][j][l].id) == GetTrainerId(sPartnerHallRecords[k]->onePlayer[i][j].id)) { - var_68++; - if (dst->hallRecords1P[i][j][l].winStreak < gUnknown_03001168[k]->onePlayer[i][j].winStreak) - dst->hallRecords1P[i][j][l] = gUnknown_03001168[k]->onePlayer[i][j]; + repeatTrainers++; + if (dst->hallRecords1P[i][j][l].winStreak < sPartnerHallRecords[k]->onePlayer[i][j].winStreak) + dst->hallRecords1P[i][j][l] = sPartnerHallRecords[k]->onePlayer[i][j]; } } - if (var_68 == 0) - dst->hallRecords1P[i][j][k + HALL_RECORDS_COUNT] = gUnknown_03001168[k]->onePlayer[i][j]; + + // If all of the mixed records are new trainers, just save them + if (repeatTrainers == 0) + dst->hallRecords1P[i][j][k + HALL_RECORDS_COUNT] = sPartnerHallRecords[k]->onePlayer[i][j]; } } } + // Get improved 2P hall records for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { + // First get the existing saved records for (k = 0; k < HALL_RECORDS_COUNT; k++) dst->hallRecords2P[j][k] = gSaveBlock2Ptr->hallRecords2P[j][k]; + // Then read the new mixed records for (k = 0; k < linkPlayerCount - 1; k++) { - var_68 = 0; + repeatTrainers = 0; for (l = 0; l < HALL_RECORDS_COUNT; l++) { - if (GetTrainerId(dst->hallRecords2P[j][l].id1) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id1) - && GetTrainerId(dst->hallRecords2P[j][l].id2) == GetTrainerId(gUnknown_03001168[k]->twoPlayers[j].id2)) + // If the new trainer pair is already in the existing saved records, only + // use the new pair if the win streak is better + if (GetTrainerId(dst->hallRecords2P[j][l].id1) == GetTrainerId(sPartnerHallRecords[k]->twoPlayers[j].id1) + && GetTrainerId(dst->hallRecords2P[j][l].id2) == GetTrainerId(sPartnerHallRecords[k]->twoPlayers[j].id2)) { - var_68++; - if (dst->hallRecords2P[j][l].winStreak < gUnknown_03001168[k]->twoPlayers[j].winStreak) - dst->hallRecords2P[j][l] = gUnknown_03001168[k]->twoPlayers[j]; + repeatTrainers++; + if (dst->hallRecords2P[j][l].winStreak < sPartnerHallRecords[k]->twoPlayers[j].winStreak) + dst->hallRecords2P[j][l] = sPartnerHallRecords[k]->twoPlayers[j]; } } - if (var_68 == 0) - dst->hallRecords2P[j][k + HALL_RECORDS_COUNT] = gUnknown_03001168[k]->twoPlayers[j]; + + // If all of the mixed records are new trainer pairs, just save them + if (repeatTrainers == 0) + dst->hallRecords2P[j][k + HALL_RECORDS_COUNT] = sPartnerHallRecords[k]->twoPlayers[j]; } } } -static void sub_80E8880(struct RankingHall1P *arg0, struct RankingHall1P *arg1) +static void FillWinStreakRecords1P(struct RankingHall1P *playerRecords, struct RankingHall1P *mixRecords) { s32 i, j; + // Fill the player's 1P records with the highest win streaks from the mixed records for (i = 0; i < HALL_RECORDS_COUNT; i++) { + // Get the highest remaining win streak in the mixed hall records s32 highestWinStreak = 0; s32 highestId = -1; - for (j = 0; j < 6; j++) + for (j = 0; j < HALL_RECORDS_COUNT * 2; j++) { - if (arg1[j].winStreak > highestWinStreak) + if (mixRecords[j].winStreak > highestWinStreak) { highestId = j; - highestWinStreak = arg1[j].winStreak; + highestWinStreak = mixRecords[j].winStreak; } } + // Save the win streak to the player's records, then clear it from the mixed records if (highestId >= 0) { - arg0[i] = arg1[highestId]; - arg1[highestId].winStreak = 0; + playerRecords[i] = mixRecords[highestId]; + mixRecords[highestId].winStreak = 0; } } } -static void sub_80E88CC(struct RankingHall2P *arg0, struct RankingHall2P *arg1) +static void FillWinStreakRecords2P(struct RankingHall2P *playerRecords, struct RankingHall2P *mixRecords) { s32 i, j; - for (i = 0; i < 3; i++) + // Fill the player's 2P records with the highest win streaks from the mixed records + for (i = 0; i < HALL_RECORDS_COUNT; i++) { + // Get the highest remaining win streak in the mixed hall records s32 highestWinStreak = 0; s32 highestId = -1; - for (j = 0; j < 6; j++) + for (j = 0; j < HALL_RECORDS_COUNT * 2; j++) { - if (arg1[j].winStreak > highestWinStreak) + if (mixRecords[j].winStreak > highestWinStreak) { highestId = j; - highestWinStreak = arg1[j].winStreak; + highestWinStreak = mixRecords[j].winStreak; } } + // Save the win streak to the player's records, then clear it from the mixed records if (highestId >= 0) { - arg0[i] = arg1[highestId]; - arg1[highestId].winStreak = 0; + playerRecords[i] = mixRecords[highestId]; + mixRecords[highestId].winStreak = 0; } } } -static void sub_80E8924(struct RecordMixingHallRecords *mixHallRecords) +static void SaveHighestWinStreakRecords(struct RecordMixingHallRecords *mixHallRecords) { s32 i, j; for (i = 0; i < HALL_FACILITIES_COUNT; i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) - sub_80E8880(gSaveBlock2Ptr->hallRecords1P[i][j], mixHallRecords->hallRecords1P[i][j]); + FillWinStreakRecords1P(gSaveBlock2Ptr->hallRecords1P[i][j], mixHallRecords->hallRecords1P[i][j]); } for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) - sub_80E88CC(gSaveBlock2Ptr->hallRecords2P[j], mixHallRecords->hallRecords2P[j]); + FillWinStreakRecords2P(gSaveBlock2Ptr->hallRecords2P[j], mixHallRecords->hallRecords2P[j]); } -static void ReceiveRankingHallRecords(struct PlayerHallRecords *hallRecords, size_t recordSize, u32 arg2) +static void ReceiveRankingHallRecords(struct PlayerHallRecords *records, size_t recordSize, u32 multiplayerId) { u8 linkPlayerCount = GetLinkPlayerCount(); struct RecordMixingHallRecords *mixHallRecords = AllocZeroed(sizeof(*mixHallRecords)); - sub_80E8578(mixHallRecords, hallRecords, recordSize, arg2, linkPlayerCount); - sub_80E8924(mixHallRecords); + GetNewHallRecords(mixHallRecords, records, recordSize, multiplayerId, linkPlayerCount); + SaveHighestWinStreakRecords(mixHallRecords); Free(mixHallRecords); } From a612c27f2ded23f713b2199764b65c6b8b4aaf9d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 25 Oct 2021 10:20:48 -0400 Subject: [PATCH 332/762] Drop battle transition 'phase' terminology --- include/battle_transition.h | 3 +- include/battle_transition_frontier.h | 16 +- src/battle_transition.c | 1367 +++++++++++++------------- src/battle_transition_frontier.c | 67 +- src/tileset_anims.c | 4 +- 5 files changed, 726 insertions(+), 731 deletions(-) diff --git a/include/battle_transition.h b/include/battle_transition.h index 784c5f968fb0..e978e9094cf5 100644 --- a/include/battle_transition.h +++ b/include/battle_transition.h @@ -1,12 +1,11 @@ #ifndef GUARD_BATTLE_TRANSITION_H #define GUARD_BATTLE_TRANSITION_H -void TestBattleTransition(u8 transitionId); void BattleTransition_StartOnField(u8 transitionId); void BattleTransition_Start(u8 transitionId); bool8 IsBattleTransitionDone(void); bool8 FldEff_Pokeball(void); -void TransitionPhase1_Task_RunFuncs(u8 taskId); +void Task_BattleTransition_Intro(u8 taskId); void GetBg0TilesDst(u16 **tilemap, u16 **tileset); extern const struct SpritePalette gSpritePalette_Pokeball; diff --git a/include/battle_transition_frontier.h b/include/battle_transition_frontier.h index 8813fe81e04b..22d674923edc 100644 --- a/include/battle_transition_frontier.h +++ b/include/battle_transition_frontier.h @@ -1,13 +1,13 @@ #ifndef GUARD_BATTLE_TRANSITION_FRONTIER_H #define GUARD_BATTLE_TRANSITION_FRONTIER_H -void Phase2Task_FrontierCirclesMeet(u8 taskId); -void Phase2Task_FrontierCirclesCross(u8 taskId); -void Phase2Task_FrontierCirclesAsymmetricSpiral(u8 taskId); -void Phase2Task_FrontierCirclesSymmetricSpiral(u8 taskId); -void Phase2Task_FrontierCirclesMeetInSeq(u8 taskId); -void Phase2Task_FrontierCirclesCrossInSeq(u8 taskId); -void Phase2Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId); -void Phase2Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId); +void Task_FrontierCirclesMeet(u8 taskId); +void Task_FrontierCirclesCross(u8 taskId); +void Task_FrontierCirclesAsymmetricSpiral(u8 taskId); +void Task_FrontierCirclesSymmetricSpiral(u8 taskId); +void Task_FrontierCirclesMeetInSeq(u8 taskId); +void Task_FrontierCirclesCrossInSeq(u8 taskId); +void Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId); +void Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId); #endif // GUARD_BATTLE_TRANSITION_FRONTIER_H diff --git a/src/battle_transition.c b/src/battle_transition.c index 2fc4c685443b..983a502176f4 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -60,186 +60,186 @@ struct StructRectangularSpiral typedef bool8 (*TransitionStateFunc)(struct Task *task); typedef bool8 (*TransitionSpriteCallback)(struct Sprite *sprite); -// this file's functions +static bool8 Transition_StartIntro(struct Task *task); +static bool8 Transition_WaitForIntro(struct Task *task); +static bool8 Transition_StartMain(struct Task *task); +static bool8 Transition_WaitForMain(struct Task *task); + static void LaunchBattleTransitionTask(u8 transitionId); -static void Task_BattleTransitionMain(u8 taskId); -static void Phase1Task_TransitionAll(u8 taskId); -static void Phase2Task_Blur(u8 taskId); -static void Phase2Task_Swirl(u8 taskId); -static void Phase2Task_Shuffle(u8 taskId); -static void Phase2Task_BigPokeball(u8 taskId); -static void Phase2Task_PokeballsTrail(u8 taskId); -static void Phase2Task_Clockwise_BlackFade(u8 taskId); -static void Phase2Task_Ripple(u8 taskId); -static void Phase2Task_Wave(u8 taskId); -static void Phase2Task_Slice(u8 taskId); -static void Phase2Task_WhiteFade(u8 taskId); -static void Phase2Task_GridSquares(u8 taskId); -static void Phase2Task_Shards(u8 taskId); -static void Phase2Task_Sidney(u8 taskId); -static void Phase2Task_Phoebe(u8 taskId); -static void Phase2Task_Glacia(u8 taskId); -static void Phase2Task_Drake(u8 taskId); -static void Phase2Task_Champion(u8 taskId); -static void Phase2Task_Aqua(u8 taskId); -static void Phase2Task_Magma(u8 taskId); -static void Phase2Task_Regice(u8 taskId); -static void Phase2Task_Registeel(u8 taskId); -static void Phase2Task_Regirock(u8 taskId); -static void Phase2Task_Kyogre(u8 taskId); -static void Phase2Task_Groudon(u8 taskId); -static void Phase2Task_Rayquaza(u8 taskId); -static void Phase2Task_ShredSplit(u8 taskId); -static void Phase2Task_Blackhole1(u8 taskId); -static void Phase2Task_Blackhole2(u8 taskId); -static void Phase2Task_RectangularSpiral(u8 taskId); -static void Phase2Task_FrontierLogoWiggle(u8 taskId); -static void Phase2Task_FrontierLogoWave(u8 taskId); -static void Phase2Task_FrontierSquares(u8 taskId); -static void Phase2Task_FrontierSquaresScroll(u8 taskId); -static void Phase2Task_FrontierSquaresSpiral(u8 taskId); +static void Task_BattleTransition(u8 taskId); +static void Task_Intro(u8 taskId); +static void Task_Blur(u8 taskId); +static void Task_Swirl(u8 taskId); +static void Task_Shuffle(u8 taskId); +static void Task_BigPokeball(u8 taskId); +static void Task_PokeballsTrail(u8 taskId); +static void Task_Clockwise_BlackFade(u8 taskId); +static void Task_Ripple(u8 taskId); +static void Task_Wave(u8 taskId); +static void Task_Slice(u8 taskId); +static void Task_WhiteFade(u8 taskId); +static void Task_GridSquares(u8 taskId); +static void Task_Shards(u8 taskId); +static void Task_Sidney(u8 taskId); +static void Task_Phoebe(u8 taskId); +static void Task_Glacia(u8 taskId); +static void Task_Drake(u8 taskId); +static void Task_Champion(u8 taskId); +static void Task_Aqua(u8 taskId); +static void Task_Magma(u8 taskId); +static void Task_Regice(u8 taskId); +static void Task_Registeel(u8 taskId); +static void Task_Regirock(u8 taskId); +static void Task_Kyogre(u8 taskId); +static void Task_Groudon(u8 taskId); +static void Task_Rayquaza(u8 taskId); +static void Task_ShredSplit(u8 taskId); +static void Task_Blackhole1(u8 taskId); +static void Task_Blackhole2(u8 taskId); +static void Task_RectangularSpiral(u8 taskId); +static void Task_FrontierLogoWiggle(u8 taskId); +static void Task_FrontierLogoWave(u8 taskId); +static void Task_FrontierSquares(u8 taskId); +static void Task_FrontierSquaresScroll(u8 taskId); +static void Task_FrontierSquaresSpiral(u8 taskId); static void VBlankCB_BattleTransition(void); -static void VBlankCB_Phase2_Swirl(void); -static void HBlankCB_Phase2_Swirl(void); -static void VBlankCB_Phase2_Shuffle(void); -static void HBlankCB_Phase2_Shuffle(void); -static void VBlankCB0_Phase2_BigPokeball(void); -static void VBlankCB1_Phase2_BigPokeball(void); -static void VBlankCB_Phase2_Clockwise_BlackFade(void); -static void VBlankCB_Phase2_Ripple(void); -static void HBlankCB_Phase2_Ripple(void); -static void VBlankCB_Phase2_30(void); -static void HBlankCB_Phase2_30(void); -static void VBlankCB_Phase2_Wave(void); -static void VBlankCB_Phase2_Slice(void); -static void HBlankCB_Phase2_Slice(void); -static void VBlankCB0_Phase2_WhiteFade(void); -static void VBlankCB1_Phase2_WhiteFade(void); -static void HBlankCB_Phase2_WhiteFade(void); -static void VBlankCB_Phase2_Shards(void); -static void VBlankCB_Phase2_Rayquaza(void); -static bool8 Phase2_Blur_Func1(struct Task *task); -static bool8 Phase2_Blur_Func2(struct Task *task); -static bool8 Phase2_Blur_Func3(struct Task *task); -static bool8 Phase2_Swirl_Func1(struct Task *task); -static bool8 Phase2_Swirl_Func2(struct Task *task); -static bool8 Phase2_Shuffle_Func1(struct Task *task); -static bool8 Phase2_Shuffle_Func2(struct Task *task); -static bool8 Phase2_Aqua_Func1(struct Task *task); -static bool8 Phase2_Aqua_Func2(struct Task *task); -static bool8 Phase2_Magma_Func1(struct Task *task); -static bool8 Phase2_Magma_Func2(struct Task *task); -static bool8 Phase2_FramesCountdown(struct Task *task); -static bool8 Phase2_Regi_Func1(struct Task *task); -static bool8 Phase2_Regice_Func2(struct Task *task); -static bool8 Phase2_Registeel_Func2(struct Task *task); -static bool8 Phase2_Regirock_Func2(struct Task *task); -static bool8 Phase2_WeatherTrio_Func1(struct Task *task); -static bool8 Phase2_WaitPaletteFade(struct Task *task); -static bool8 Phase2_Kyogre_Func3(struct Task *task); -static bool8 Phase2_Kyogre_Func4(struct Task *task); -static bool8 Phase2_Kyogre_Func5(struct Task *task); -static bool8 Phase2_Groudon_Func3(struct Task *task); -static bool8 Phase2_Groudon_Func4(struct Task *task); -static bool8 Phase2_Groudon_Func5(struct Task *task); -static bool8 Phase2_WeatherDuo_Func6(struct Task *task); -static bool8 Phase2_WeatherDuo_Func7(struct Task *task); -static bool8 Phase2_BigPokeball_Func1(struct Task *task); -static bool8 Phase2_BigPokeball_Func2(struct Task *task); -static bool8 Phase2_BigPokeball_Func3(struct Task *task); -static bool8 Phase2_BigPokeball_Func4(struct Task *task); -static bool8 Phase2_BigPokeball_Func5(struct Task *task); -static bool8 Phase2_BigPokeball_Func6(struct Task *task); -static bool8 Phase2_PokeballsTrail_Func1(struct Task *task); -static bool8 Phase2_PokeballsTrail_Func2(struct Task *task); -static bool8 Phase2_PokeballsTrail_Func3(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func1(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func2(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func3(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func4(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func5(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func6(struct Task *task); -static bool8 Phase2_Clockwise_BlackFade_Func7(struct Task *task); -static bool8 Phase2_Ripple_Func1(struct Task *task); -static bool8 Phase2_Ripple_Func2(struct Task *task); -static bool8 Phase2_Wave_Func1(struct Task *task); -static bool8 Phase2_Wave_Func2(struct Task *task); -static bool8 Phase2_Wave_Func3(struct Task *task); -static bool8 Phase2_Slice_Func1(struct Task *task); -static bool8 Phase2_Slice_Func2(struct Task *task); -static bool8 Phase2_Slice_Func3(struct Task *task); -static bool8 Phase2_WhiteFade_Func1(struct Task *task); -static bool8 Phase2_WhiteFade_Func2(struct Task *task); -static bool8 Phase2_WhiteFade_Func3(struct Task *task); -static bool8 Phase2_WhiteFade_Func4(struct Task *task); -static bool8 Phase2_WhiteFade_Func5(struct Task *task); -static bool8 Phase2_GridSquares_Func1(struct Task *task); -static bool8 Phase2_GridSquares_Func2(struct Task *task); -static bool8 Phase2_GridSquares_Func3(struct Task *task); -static bool8 Phase2_Shards_Func1(struct Task *task); -static bool8 Phase2_Shards_Func2(struct Task *task); -static bool8 Phase2_Shards_Func3(struct Task *task); -static bool8 Phase2_Shards_Func4(struct Task *task); -static bool8 Phase2_Shards_Func5(struct Task *task); -static bool8 Phase2_ShredSplit_Func1(struct Task *task); -static bool8 Phase2_ShredSplit_Func2(struct Task *task); -static bool8 Phase2_ShredSplit_Func3(struct Task *task); -static bool8 Phase2_ShredSplit_Func4(struct Task *task); -static bool8 Phase2_Blackhole_Func1(struct Task *task); -static bool8 Phase2_Blackhole1_Func2(struct Task *task); -static bool8 Phase2_Blackhole1_Func3(struct Task *task); -static bool8 Phase2_Blackhole2_Func2(struct Task *task); -static bool8 Phase2_RectangularSpiral_Func1(struct Task *task); -static bool8 Phase2_RectangularSpiral_Func2(struct Task *task); -static bool8 Phase2_RectangularSpiral_Func3(struct Task *task); -static bool8 Phase2_FrontierLogoWiggle_Func1(struct Task *task); -static bool8 Phase2_FrontierLogoWiggle_Func2(struct Task *task); -static bool8 Phase2_FrontierLogoWave_Func1(struct Task *task); -static bool8 Phase2_FrontierLogoWave_Func2(struct Task *task); -static bool8 Phase2_FrontierLogoWave_Func3(struct Task *task); -static bool8 Phase2_FrontierLogoWave_Func4(struct Task *task); -static bool8 Phase2_Rayquaza_Func3(struct Task *task); -static bool8 Phase2_Rayquaza_Func4(struct Task *task); -static bool8 Phase2_Rayquaza_Func5(struct Task *task); -static bool8 Phase2_Rayquaza_Func6(struct Task *task); -static bool8 Phase2_Rayquaza_Func7(struct Task *task); -static bool8 Phase2_Rayquaza_Func8(struct Task *task); -static bool8 Phase2_Rayquaza_Func9(struct Task *task); -static bool8 Phase2_FrontierSquares_Func1(struct Task *task); -static bool8 Phase2_FrontierSquares_Func2(struct Task *task); -static bool8 Phase2_FrontierSquares_Func3(struct Task *task); -static bool8 Phase2_FrontierSquares_End(struct Task *task); -static bool8 Phase2_FrontierSquaresSpiral_Func1(struct Task *task); -static bool8 Phase2_FrontierSquaresSpiral_Func2(struct Task *task); -static bool8 Phase2_FrontierSquaresSpiral_Func3(struct Task *task); -static bool8 Phase2_FrontierSquaresSpiral_Func4(struct Task *task); -static bool8 Phase2_FrontierSquaresScroll_Func1(struct Task *task); -static bool8 Phase2_FrontierSquaresScroll_Func2(struct Task *task); -static bool8 Phase2_FrontierSquaresScroll_Func3(struct Task *task); -static bool8 Phase2_FrontierSquaresScroll_Func4(struct Task *task); -static bool8 Phase2_FrontierSquaresScroll_Func5(struct Task *task); -static bool8 Phase2_Mugshot_Func1(struct Task *task); -static bool8 Phase2_Mugshot_Func2(struct Task *task); -static bool8 Phase2_Mugshot_Func3(struct Task *task); -static bool8 Phase2_Mugshot_Func4(struct Task *task); -static bool8 Phase2_Mugshot_Func5(struct Task *task); -static bool8 Phase2_Mugshot_Func6(struct Task *task); -static bool8 Phase2_Mugshot_Func7(struct Task *task); -static bool8 Phase2_Mugshot_Func8(struct Task *task); -static bool8 Phase2_Mugshot_Func9(struct Task *task); -static bool8 Phase2_Mugshot_Func10(struct Task *task); -static void Phase2Task_MugShotTransition(u8 taskId); +static void VBlankCB_Swirl(void); +static void HBlankCB_Swirl(void); +static void VBlankCB_Shuffle(void); +static void HBlankCB_Shuffle(void); +static void VBlankCB0_BigPokeball(void); +static void VBlankCB1_BigPokeball(void); +static void VBlankCB_Clockwise_BlackFade(void); +static void VBlankCB_Ripple(void); +static void HBlankCB_Ripple(void); +static void VBlankCB_30(void); +static void HBlankCB_30(void); +static void VBlankCB_Wave(void); +static void VBlankCB_Slice(void); +static void HBlankCB_Slice(void); +static void VBlankCB0_WhiteFade(void); +static void VBlankCB1_WhiteFade(void); +static void HBlankCB_WhiteFade(void); +static void VBlankCB_Shards(void); +static void VBlankCB_Rayquaza(void); +static bool8 Blur_Func1(struct Task *task); +static bool8 Blur_Func2(struct Task *task); +static bool8 Blur_Func3(struct Task *task); +static bool8 Swirl_Func1(struct Task *task); +static bool8 Swirl_Func2(struct Task *task); +static bool8 Shuffle_Func1(struct Task *task); +static bool8 Shuffle_Func2(struct Task *task); +static bool8 Aqua_Func1(struct Task *task); +static bool8 Aqua_Func2(struct Task *task); +static bool8 Magma_Func1(struct Task *task); +static bool8 Magma_Func2(struct Task *task); +static bool8 FramesCountdown(struct Task *task); +static bool8 Regi_Func1(struct Task *task); +static bool8 Regice_Func2(struct Task *task); +static bool8 Registeel_Func2(struct Task *task); +static bool8 Regirock_Func2(struct Task *task); +static bool8 WeatherTrio_Func1(struct Task *task); +static bool8 WaitPaletteFade(struct Task *task); +static bool8 Kyogre_Func3(struct Task *task); +static bool8 Kyogre_Func4(struct Task *task); +static bool8 Kyogre_Func5(struct Task *task); +static bool8 Groudon_Func3(struct Task *task); +static bool8 Groudon_Func4(struct Task *task); +static bool8 Groudon_Func5(struct Task *task); +static bool8 WeatherDuo_Func6(struct Task *task); +static bool8 WeatherDuo_Func7(struct Task *task); +static bool8 BigPokeball_Func1(struct Task *task); +static bool8 BigPokeball_Func2(struct Task *task); +static bool8 BigPokeball_Func3(struct Task *task); +static bool8 BigPokeball_Func4(struct Task *task); +static bool8 BigPokeball_Func5(struct Task *task); +static bool8 BigPokeball_Func6(struct Task *task); +static bool8 PokeballsTrail_Func1(struct Task *task); +static bool8 PokeballsTrail_Func2(struct Task *task); +static bool8 PokeballsTrail_Func3(struct Task *task); +static bool8 Clockwise_BlackFade_Func1(struct Task *task); +static bool8 Clockwise_BlackFade_Func2(struct Task *task); +static bool8 Clockwise_BlackFade_Func3(struct Task *task); +static bool8 Clockwise_BlackFade_Func4(struct Task *task); +static bool8 Clockwise_BlackFade_Func5(struct Task *task); +static bool8 Clockwise_BlackFade_Func6(struct Task *task); +static bool8 Clockwise_BlackFade_Func7(struct Task *task); +static bool8 Ripple_Func1(struct Task *task); +static bool8 Ripple_Func2(struct Task *task); +static bool8 Wave_Func1(struct Task *task); +static bool8 Wave_Func2(struct Task *task); +static bool8 Wave_Func3(struct Task *task); +static bool8 Slice_Func1(struct Task *task); +static bool8 Slice_Func2(struct Task *task); +static bool8 Slice_Func3(struct Task *task); +static bool8 WhiteFade_Func1(struct Task *task); +static bool8 WhiteFade_Func2(struct Task *task); +static bool8 WhiteFade_Func3(struct Task *task); +static bool8 WhiteFade_Func4(struct Task *task); +static bool8 WhiteFade_Func5(struct Task *task); +static bool8 GridSquares_Func1(struct Task *task); +static bool8 GridSquares_Func2(struct Task *task); +static bool8 GridSquares_Func3(struct Task *task); +static bool8 Shards_Func1(struct Task *task); +static bool8 Shards_Func2(struct Task *task); +static bool8 Shards_Func3(struct Task *task); +static bool8 Shards_Func4(struct Task *task); +static bool8 Shards_Func5(struct Task *task); +static bool8 ShredSplit_Func1(struct Task *task); +static bool8 ShredSplit_Func2(struct Task *task); +static bool8 ShredSplit_Func3(struct Task *task); +static bool8 ShredSplit_Func4(struct Task *task); +static bool8 Blackhole_Func1(struct Task *task); +static bool8 Blackhole1_Func2(struct Task *task); +static bool8 Blackhole1_Func3(struct Task *task); +static bool8 Blackhole2_Func2(struct Task *task); +static bool8 RectangularSpiral_Func1(struct Task *task); +static bool8 RectangularSpiral_Func2(struct Task *task); +static bool8 RectangularSpiral_Func3(struct Task *task); +static bool8 FrontierLogoWiggle_Func1(struct Task *task); +static bool8 FrontierLogoWiggle_Func2(struct Task *task); +static bool8 FrontierLogoWave_Func1(struct Task *task); +static bool8 FrontierLogoWave_Func2(struct Task *task); +static bool8 FrontierLogoWave_Func3(struct Task *task); +static bool8 FrontierLogoWave_Func4(struct Task *task); +static bool8 Rayquaza_Func3(struct Task *task); +static bool8 Rayquaza_Func4(struct Task *task); +static bool8 Rayquaza_Func5(struct Task *task); +static bool8 Rayquaza_Func6(struct Task *task); +static bool8 Rayquaza_Func7(struct Task *task); +static bool8 Rayquaza_Func8(struct Task *task); +static bool8 Rayquaza_Func9(struct Task *task); +static bool8 FrontierSquares_Func1(struct Task *task); +static bool8 FrontierSquares_Func2(struct Task *task); +static bool8 FrontierSquares_Func3(struct Task *task); +static bool8 FrontierSquares_End(struct Task *task); +static bool8 FrontierSquaresSpiral_Func1(struct Task *task); +static bool8 FrontierSquaresSpiral_Func2(struct Task *task); +static bool8 FrontierSquaresSpiral_Func3(struct Task *task); +static bool8 FrontierSquaresSpiral_Func4(struct Task *task); +static bool8 FrontierSquaresScroll_Func1(struct Task *task); +static bool8 FrontierSquaresScroll_Func2(struct Task *task); +static bool8 FrontierSquaresScroll_Func3(struct Task *task); +static bool8 FrontierSquaresScroll_Func4(struct Task *task); +static bool8 FrontierSquaresScroll_Func5(struct Task *task); +static bool8 Mugshot_Func1(struct Task *task); +static bool8 Mugshot_Func2(struct Task *task); +static bool8 Mugshot_Func3(struct Task *task); +static bool8 Mugshot_Func4(struct Task *task); +static bool8 Mugshot_Func5(struct Task *task); +static bool8 Mugshot_Func6(struct Task *task); +static bool8 Mugshot_Func7(struct Task *task); +static bool8 Mugshot_Func8(struct Task *task); +static bool8 Mugshot_Func9(struct Task *task); +static bool8 Mugshot_Func10(struct Task *task); +static void Task_MugShotTransition(u8 taskId); static void Mugshots_CreateOpponentPlayerSprites(struct Task *task); -static void VBlankCB0_Phase2_Mugshots(void); -static void VBlankCB1_Phase2_Mugshots(void); -static void HBlankCB_Phase2_Mugshots(void); -static bool8 Transition_Phase1(struct Task *task); -static bool8 Transition_WaitForPhase1(struct Task *task); -static bool8 Transition_Phase2(struct Task *task); -static bool8 Transition_WaitForPhase2(struct Task *task); +static void VBlankCB0_Mugshots(void); +static void VBlankCB1_Mugshots(void); +static void HBlankCB_Mugshots(void); static void InitTransitionStructVars(void); static void FadeScreenBlack(void); -static void CreatePhase1Task(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4); +static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4); static void sub_814A014(u16 *a0, s16 a1, s16 a2, s16 a3); static void sub_8149F98(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize); static void GetBg0TilemapDst(u16 **tileset); @@ -248,9 +248,9 @@ static bool8 sub_814A228(s16 *a0, bool8 a1, bool8 a2); static void SetTrainerPicSlideTable(s16 spriteId, s16 arrId); static void IncrementTrainerPicState(s16 spriteId); static s16 IsTrainerPicSlideDone(s16 spriteId); -static bool8 Phase1_TransitionAll_Func1(struct Task *task); -static bool8 Phase1_TransitionAll_Func2(struct Task *task); -static bool8 IsPhase1Done(void); +static bool8 Transition_Intro_1(struct Task *task); +static bool8 Transition_Intro_2(struct Task *task); +static bool8 IsIntroTaskDone(void); static bool16 sub_8149048(const s16 * const *arg0, struct StructRectangularSpiral *arg1); static void sub_814713C(struct Sprite *sprite); static void SpriteCb_TrainerPic(struct Sprite *sprite); @@ -261,16 +261,13 @@ static bool8 TrainerPicCb_Slide1(struct Sprite *sprite); static bool8 TrainerPicCb_Slide2(struct Sprite *sprite); static bool8 TrainerPicCb_Slide3(struct Sprite *sprite); -// iwram bss vars static s16 sUnusedRectangularSpiralVar; static u8 sTestingTransitionId; static u8 sTestingTransitionState; static struct StructRectangularSpiral sRectangularSpiralTransition[4]; -// ewram vars EWRAM_DATA static struct TransitionData *sTransitionStructPtr = NULL; -// const rom data static const u32 sBigPokeball_Tileset[] = INCBIN_U32("graphics/battle_transitions/big_pokeball.4bpp"); static const u32 sPokeballTrail_Tileset[] = INCBIN_U32("graphics/battle_transitions/pokeball_trail.4bpp"); static const u8 sPokeball_Gfx[] = INCBIN_U8("graphics/battle_transitions/pokeball.4bpp"); @@ -312,205 +309,207 @@ static const u32 sFrontierSquares_Shrink1_Tileset[] = INCBIN_U32("graphics/battl static const u32 sFrontierSquares_Shrink2_Tileset[] = INCBIN_U32("graphics/battle_transitions/frontier_square_4.4bpp.lz"); static const u32 sFrontierSquares_Tilemap[] = INCBIN_U32("graphics/battle_transitions/frontier_squares.bin"); -static const TaskFunc sPhase1_Tasks[B_TRANSITION_COUNT] = +// All battle transitions use the same intro +static const TaskFunc sTasks_Intro[B_TRANSITION_COUNT] = { - [0 ... B_TRANSITION_COUNT - 1] = &Phase1Task_TransitionAll + [0 ... B_TRANSITION_COUNT - 1] = &Task_Intro }; -static const TaskFunc sPhase2_Tasks[B_TRANSITION_COUNT] = -{ - [B_TRANSITION_BLUR] = Phase2Task_Blur, - [B_TRANSITION_SWIRL] = Phase2Task_Swirl, - [B_TRANSITION_SHUFFLE] = Phase2Task_Shuffle, - [B_TRANSITION_BIG_POKEBALL] = Phase2Task_BigPokeball, - [B_TRANSITION_POKEBALLS_TRAIL] = Phase2Task_PokeballsTrail, - [B_TRANSITION_CLOCKWISE_BLACKFADE] = Phase2Task_Clockwise_BlackFade, - [B_TRANSITION_RIPPLE] = Phase2Task_Ripple, - [B_TRANSITION_WAVE] = Phase2Task_Wave, - [B_TRANSITION_SLICE] = Phase2Task_Slice, - [B_TRANSITION_WHITEFADE] = Phase2Task_WhiteFade, - [B_TRANSITION_GRID_SQUARES] = Phase2Task_GridSquares, - [B_TRANSITION_SHARDS] = Phase2Task_Shards, - [B_TRANSITION_SIDNEY] = Phase2Task_Sidney, - [B_TRANSITION_PHOEBE] = Phase2Task_Phoebe, - [B_TRANSITION_GLACIA] = Phase2Task_Glacia, - [B_TRANSITION_DRAKE] = Phase2Task_Drake, - [B_TRANSITION_CHAMPION] = Phase2Task_Champion, - [B_TRANSITION_AQUA] = Phase2Task_Aqua, - [B_TRANSITION_MAGMA] = Phase2Task_Magma, - [B_TRANSITION_REGICE] = Phase2Task_Regice, - [B_TRANSITION_REGISTEEL] = Phase2Task_Registeel, - [B_TRANSITION_REGIROCK] = Phase2Task_Regirock, - [B_TRANSITION_KYOGRE] = Phase2Task_Kyogre, - [B_TRANSITION_GROUDON] = Phase2Task_Groudon, - [B_TRANSITION_RAYQUAZA] = Phase2Task_Rayquaza, - [B_TRANSITION_SHRED_SPLIT] = Phase2Task_ShredSplit, - [B_TRANSITION_BLACKHOLE1] = Phase2Task_Blackhole1, - [B_TRANSITION_BLACKHOLE2] = Phase2Task_Blackhole2, - [B_TRANSITION_RECTANGULAR_SPIRAL] = Phase2Task_RectangularSpiral, - [B_TRANSITION_FRONTIER_LOGO_WIGGLE] = Phase2Task_FrontierLogoWiggle, - [B_TRANSITION_FRONTIER_LOGO_WAVE] = Phase2Task_FrontierLogoWave, - [B_TRANSITION_FRONTIER_SQUARES] = Phase2Task_FrontierSquares, - [B_TRANSITION_FRONTIER_SQUARES_SCROLL] = Phase2Task_FrontierSquaresScroll, - [B_TRANSITION_FRONTIER_SQUARES_SPIRAL] = Phase2Task_FrontierSquaresSpiral, - [B_TRANSITION_FRONTIER_CIRCLES_MEET] = Phase2Task_FrontierCirclesMeet, - [B_TRANSITION_FRONTIER_CIRCLES_CROSS] = Phase2Task_FrontierCirclesCross, - [B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL] = Phase2Task_FrontierCirclesAsymmetricSpiral, - [B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL] = Phase2Task_FrontierCirclesSymmetricSpiral, - [B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ] = Phase2Task_FrontierCirclesMeetInSeq, - [B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ] = Phase2Task_FrontierCirclesCrossInSeq, - [B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ] = Phase2Task_FrontierCirclesAsymmetricSpiralInSeq, - [B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL_IN_SEQ] = Phase2Task_FrontierCirclesSymmetricSpiralInSeq, +// After the intro each transition has a unique main task +static const TaskFunc sTasks_Main[B_TRANSITION_COUNT] = +{ + [B_TRANSITION_BLUR] = Task_Blur, + [B_TRANSITION_SWIRL] = Task_Swirl, + [B_TRANSITION_SHUFFLE] = Task_Shuffle, + [B_TRANSITION_BIG_POKEBALL] = Task_BigPokeball, + [B_TRANSITION_POKEBALLS_TRAIL] = Task_PokeballsTrail, + [B_TRANSITION_CLOCKWISE_BLACKFADE] = Task_Clockwise_BlackFade, + [B_TRANSITION_RIPPLE] = Task_Ripple, + [B_TRANSITION_WAVE] = Task_Wave, + [B_TRANSITION_SLICE] = Task_Slice, + [B_TRANSITION_WHITEFADE] = Task_WhiteFade, + [B_TRANSITION_GRID_SQUARES] = Task_GridSquares, + [B_TRANSITION_SHARDS] = Task_Shards, + [B_TRANSITION_SIDNEY] = Task_Sidney, + [B_TRANSITION_PHOEBE] = Task_Phoebe, + [B_TRANSITION_GLACIA] = Task_Glacia, + [B_TRANSITION_DRAKE] = Task_Drake, + [B_TRANSITION_CHAMPION] = Task_Champion, + [B_TRANSITION_AQUA] = Task_Aqua, + [B_TRANSITION_MAGMA] = Task_Magma, + [B_TRANSITION_REGICE] = Task_Regice, + [B_TRANSITION_REGISTEEL] = Task_Registeel, + [B_TRANSITION_REGIROCK] = Task_Regirock, + [B_TRANSITION_KYOGRE] = Task_Kyogre, + [B_TRANSITION_GROUDON] = Task_Groudon, + [B_TRANSITION_RAYQUAZA] = Task_Rayquaza, + [B_TRANSITION_SHRED_SPLIT] = Task_ShredSplit, + [B_TRANSITION_BLACKHOLE1] = Task_Blackhole1, + [B_TRANSITION_BLACKHOLE2] = Task_Blackhole2, + [B_TRANSITION_RECTANGULAR_SPIRAL] = Task_RectangularSpiral, + [B_TRANSITION_FRONTIER_LOGO_WIGGLE] = Task_FrontierLogoWiggle, + [B_TRANSITION_FRONTIER_LOGO_WAVE] = Task_FrontierLogoWave, + [B_TRANSITION_FRONTIER_SQUARES] = Task_FrontierSquares, + [B_TRANSITION_FRONTIER_SQUARES_SCROLL] = Task_FrontierSquaresScroll, + [B_TRANSITION_FRONTIER_SQUARES_SPIRAL] = Task_FrontierSquaresSpiral, + [B_TRANSITION_FRONTIER_CIRCLES_MEET] = Task_FrontierCirclesMeet, + [B_TRANSITION_FRONTIER_CIRCLES_CROSS] = Task_FrontierCirclesCross, + [B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL] = Task_FrontierCirclesAsymmetricSpiral, + [B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL] = Task_FrontierCirclesSymmetricSpiral, + [B_TRANSITION_FRONTIER_CIRCLES_MEET_IN_SEQ] = Task_FrontierCirclesMeetInSeq, + [B_TRANSITION_FRONTIER_CIRCLES_CROSS_IN_SEQ] = Task_FrontierCirclesCrossInSeq, + [B_TRANSITION_FRONTIER_CIRCLES_ASYMMETRIC_SPIRAL_IN_SEQ] = Task_FrontierCirclesAsymmetricSpiralInSeq, + [B_TRANSITION_FRONTIER_CIRCLES_SYMMETRIC_SPIRAL_IN_SEQ] = Task_FrontierCirclesSymmetricSpiralInSeq, }; -static const TransitionStateFunc sMainTransitionPhases[] = +static const TransitionStateFunc sTaskHandlers[] = { - &Transition_Phase1, - &Transition_WaitForPhase1, - &Transition_Phase2, - &Transition_WaitForPhase2 + &Transition_StartIntro, + &Transition_WaitForIntro, + &Transition_StartMain, + &Transition_WaitForMain }; -static const TransitionStateFunc sPhase2_Blur_Funcs[] = +static const TransitionStateFunc sBlur_Funcs[] = { - Phase2_Blur_Func1, - Phase2_Blur_Func2, - Phase2_Blur_Func3 + Blur_Func1, + Blur_Func2, + Blur_Func3 }; -static const TransitionStateFunc sPhase2_Swirl_Funcs[] = +static const TransitionStateFunc sSwirl_Funcs[] = { - Phase2_Swirl_Func1, - Phase2_Swirl_Func2, + Swirl_Func1, + Swirl_Func2, }; -static const TransitionStateFunc sPhase2_Shuffle_Funcs[] = +static const TransitionStateFunc sShuffle_Funcs[] = { - Phase2_Shuffle_Func1, - Phase2_Shuffle_Func2, + Shuffle_Func1, + Shuffle_Func2, }; -static const TransitionStateFunc sPhase2_Aqua_Funcs[] = +static const TransitionStateFunc sAqua_Funcs[] = { - Phase2_Aqua_Func1, - Phase2_Aqua_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_FramesCountdown, - Phase2_BigPokeball_Func6 + Aqua_Func1, + Aqua_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + FramesCountdown, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_Magma_Funcs[] = +static const TransitionStateFunc sMagma_Funcs[] = { - Phase2_Magma_Func1, - Phase2_Magma_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_FramesCountdown, - Phase2_BigPokeball_Func6 + Magma_Func1, + Magma_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + FramesCountdown, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_BigPokeball_Funcs[] = +static const TransitionStateFunc sBigPokeball_Funcs[] = { - Phase2_BigPokeball_Func1, - Phase2_BigPokeball_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_BigPokeball_Func6 + BigPokeball_Func1, + BigPokeball_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_Regice_Funcs[] = +static const TransitionStateFunc sRegice_Funcs[] = { - Phase2_Regi_Func1, - Phase2_Regice_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_BigPokeball_Func6 + Regi_Func1, + Regice_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_Registeel_Funcs[] = +static const TransitionStateFunc sRegisteel_Funcs[] = { - Phase2_Regi_Func1, - Phase2_Registeel_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_BigPokeball_Func6 + Regi_Func1, + Registeel_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_Regirock_Funcs[] = +static const TransitionStateFunc sRegirock_Funcs[] = { - Phase2_Regi_Func1, - Phase2_Regirock_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_BigPokeball_Func6 + Regi_Func1, + Regirock_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_Kyogre_Funcs[] = +static const TransitionStateFunc sKyogre_Funcs[] = { - Phase2_WeatherTrio_Func1, - Phase2_WaitPaletteFade, - Phase2_Kyogre_Func3, - Phase2_Kyogre_Func4, - Phase2_Kyogre_Func5, - Phase2_FramesCountdown, - Phase2_WeatherDuo_Func6, - Phase2_WeatherDuo_Func7 + WeatherTrio_Func1, + WaitPaletteFade, + Kyogre_Func3, + Kyogre_Func4, + Kyogre_Func5, + FramesCountdown, + WeatherDuo_Func6, + WeatherDuo_Func7 }; -static const TransitionStateFunc sPhase2_PokeballsTrail_Funcs[] = +static const TransitionStateFunc sPokeballsTrail_Funcs[] = { - Phase2_PokeballsTrail_Func1, - Phase2_PokeballsTrail_Func2, - Phase2_PokeballsTrail_Func3 + PokeballsTrail_Func1, + PokeballsTrail_Func2, + PokeballsTrail_Func3 }; static const s16 sUnknown_085C8B88[2] = {-16, 256}; static const s16 sUnknown_085C8B8C[5] = {0, 32, 64, 18, 48}; static const s16 sUnknown_085C8B96[2] = {8, -8}; -static const TransitionStateFunc sPhase2_Clockwise_BlackFade_Funcs[] = +static const TransitionStateFunc sClockwise_BlackFade_Funcs[] = { - Phase2_Clockwise_BlackFade_Func1, - Phase2_Clockwise_BlackFade_Func2, - Phase2_Clockwise_BlackFade_Func3, - Phase2_Clockwise_BlackFade_Func4, - Phase2_Clockwise_BlackFade_Func5, - Phase2_Clockwise_BlackFade_Func6, - Phase2_Clockwise_BlackFade_Func7 + Clockwise_BlackFade_Func1, + Clockwise_BlackFade_Func2, + Clockwise_BlackFade_Func3, + Clockwise_BlackFade_Func4, + Clockwise_BlackFade_Func5, + Clockwise_BlackFade_Func6, + Clockwise_BlackFade_Func7 }; -static const TransitionStateFunc sPhase2_Ripple_Funcs[] = +static const TransitionStateFunc sRipple_Funcs[] = { - Phase2_Ripple_Func1, - Phase2_Ripple_Func2 + Ripple_Func1, + Ripple_Func2 }; -static const TransitionStateFunc sPhase2_Wave_Funcs[] = +static const TransitionStateFunc sWave_Funcs[] = { - Phase2_Wave_Func1, - Phase2_Wave_Func2, - Phase2_Wave_Func3 + Wave_Func1, + Wave_Func2, + Wave_Func3 }; -static const TransitionStateFunc sPhase2_Mugshot_Funcs[] = -{ - Phase2_Mugshot_Func1, - Phase2_Mugshot_Func2, - Phase2_Mugshot_Func3, - Phase2_Mugshot_Func4, - Phase2_Mugshot_Func5, - Phase2_Mugshot_Func6, - Phase2_Mugshot_Func7, - Phase2_Mugshot_Func8, - Phase2_Mugshot_Func9, - Phase2_Mugshot_Func10 +static const TransitionStateFunc sMugshot_Funcs[] = +{ + Mugshot_Func1, + Mugshot_Func2, + Mugshot_Func3, + Mugshot_Func4, + Mugshot_Func5, + Mugshot_Func6, + Mugshot_Func7, + Mugshot_Func8, + Mugshot_Func9, + Mugshot_Func10 }; static const u8 sMugshotsTrainerPicIDsTable[MUGSHOTS_COUNT] = @@ -552,44 +551,44 @@ static const TransitionSpriteCallback sTrainerPicSpriteCbs[] = static const s16 sTrainerPicSlideOffsets1[2] = {12, -12}; static const s16 sTrainerPicSlideOffsets2[2] = {-1, 1}; -static const TransitionStateFunc sPhase2_Slice_Funcs[] = +static const TransitionStateFunc sSlice_Funcs[] = { - Phase2_Slice_Func1, - Phase2_Slice_Func2, - Phase2_Slice_Func3 + Slice_Func1, + Slice_Func2, + Slice_Func3 }; -static const TransitionStateFunc sPhase2_ShredSplit_Funcs[] = +static const TransitionStateFunc sShredSplit_Funcs[] = { - Phase2_ShredSplit_Func1, - Phase2_ShredSplit_Func2, - Phase2_ShredSplit_Func3, - Phase2_ShredSplit_Func4 + ShredSplit_Func1, + ShredSplit_Func2, + ShredSplit_Func3, + ShredSplit_Func4 }; static const u8 gUnknown_085C8C64[] = {39, 119}; static const s16 gUnknown_085C8C66[] = {1, -1}; -static const TransitionStateFunc sPhase2_Blackhole1_Funcs[] = +static const TransitionStateFunc sBlackhole1_Funcs[] = { - Phase2_Blackhole_Func1, - Phase2_Blackhole1_Func2, - Phase2_Blackhole1_Func3 + Blackhole_Func1, + Blackhole1_Func2, + Blackhole1_Func3 }; -static const TransitionStateFunc sPhase2_Blackhole2_Funcs[] = +static const TransitionStateFunc sBlackhole2_Funcs[] = { - Phase2_Blackhole_Func1, - Phase2_Blackhole2_Func2 + Blackhole_Func1, + Blackhole2_Func2 }; static const s16 gUnknown_085C8C80[] = {-6, 4}; -static const TransitionStateFunc sPhase2_RectangularSpiral_Funcs[] = +static const TransitionStateFunc sRectangularSpiral_Funcs[] = { - Phase2_RectangularSpiral_Func1, - Phase2_RectangularSpiral_Func2, - Phase2_RectangularSpiral_Func3 + RectangularSpiral_Func1, + RectangularSpiral_Func2, + RectangularSpiral_Func3 }; static const s16 gUnknown_085C8C90[] = {1, 27, 275, -1}; @@ -639,58 +638,58 @@ static const s16 *const *const gUnknown_085C8D38[] = gUnknown_085C8D18 }; -static const TransitionStateFunc sPhase2_Groudon_Funcs[] = +static const TransitionStateFunc sGroudon_Funcs[] = { - Phase2_WeatherTrio_Func1, - Phase2_WaitPaletteFade, - Phase2_Groudon_Func3, - Phase2_Groudon_Func4, - Phase2_Groudon_Func5, - Phase2_FramesCountdown, - Phase2_WeatherDuo_Func6, - Phase2_WeatherDuo_Func7 + WeatherTrio_Func1, + WaitPaletteFade, + Groudon_Func3, + Groudon_Func4, + Groudon_Func5, + FramesCountdown, + WeatherDuo_Func6, + WeatherDuo_Func7 }; -static const TransitionStateFunc sPhase2_Rayquaza_Funcs[] = -{ - Phase2_WeatherTrio_Func1, - Phase2_WaitPaletteFade, - Phase2_Rayquaza_Func3, - Phase2_Rayquaza_Func4, - Phase2_Rayquaza_Func5, - Phase2_Rayquaza_Func6, - Phase2_Rayquaza_Func7, - Phase2_Rayquaza_Func8, - Phase2_Rayquaza_Func9, - Phase2_Blackhole1_Func2, - Phase2_Blackhole1_Func3 +static const TransitionStateFunc sRayquaza_Funcs[] = +{ + WeatherTrio_Func1, + WaitPaletteFade, + Rayquaza_Func3, + Rayquaza_Func4, + Rayquaza_Func5, + Rayquaza_Func6, + Rayquaza_Func7, + Rayquaza_Func8, + Rayquaza_Func9, + Blackhole1_Func2, + Blackhole1_Func3 }; -static const TransitionStateFunc sPhase2_WhiteFade_Funcs[] = +static const TransitionStateFunc sWhiteFade_Funcs[] = { - Phase2_WhiteFade_Func1, - Phase2_WhiteFade_Func2, - Phase2_WhiteFade_Func3, - Phase2_WhiteFade_Func4, - Phase2_WhiteFade_Func5 + WhiteFade_Func1, + WhiteFade_Func2, + WhiteFade_Func3, + WhiteFade_Func4, + WhiteFade_Func5 }; static const s16 sUnknown_085C8DA0[] = {0, 20, 15, 40, 10, 25, 35, 5}; -static const TransitionStateFunc sPhase2_GridSquares_Funcs[] = +static const TransitionStateFunc sGridSquares_Funcs[] = { - Phase2_GridSquares_Func1, - Phase2_GridSquares_Func2, - Phase2_GridSquares_Func3 + GridSquares_Func1, + GridSquares_Func2, + GridSquares_Func3 }; -static const TransitionStateFunc sPhase2_Shards_Funcs[] = +static const TransitionStateFunc sShards_Funcs[] = { - Phase2_Shards_Func1, - Phase2_Shards_Func2, - Phase2_Shards_Func3, - Phase2_Shards_Func4, - Phase2_Shards_Func5 + Shards_Func1, + Shards_Func2, + Shards_Func3, + Shards_Func4, + Shards_Func5 }; static const s16 sUnknown_085C8DD0[][5] = @@ -706,10 +705,10 @@ static const s16 sUnknown_085C8DD0[][5] = static const s16 sUnknown_085C8E16[] = {8, 4, 2, 1, 1, 1, 0}; -static const TransitionStateFunc sPhase1_TransitionAll_Funcs[] = +static const TransitionStateFunc sTransitionIntroFuncs[] = { - Phase1_TransitionAll_Func1, - Phase1_TransitionAll_Func2 + Transition_Intro_1, + Transition_Intro_2 }; static const struct SpriteFrameImage sSpriteImage_Pokeball[] = @@ -850,54 +849,53 @@ static const struct SpritePalette sSpritePalette_UnusedTrainer = {sUnusedTrainer static const u16 sBigPokeball_Tilemap[] = INCBIN_U16("graphics/battle_transitions/big_pokeball_map.bin"); static const u16 sMugshotsTilemap[] = INCBIN_U16("graphics/battle_transitions/elite_four_bg_map.bin"); -static const TransitionStateFunc sPhase2_FrontierLogoWiggle_Funcs[] = +static const TransitionStateFunc sFrontierLogoWiggle_Funcs[] = { - Phase2_FrontierLogoWiggle_Func1, - Phase2_FrontierLogoWiggle_Func2, - Phase2_BigPokeball_Func3, - Phase2_BigPokeball_Func4, - Phase2_BigPokeball_Func5, - Phase2_BigPokeball_Func6 + FrontierLogoWiggle_Func1, + FrontierLogoWiggle_Func2, + BigPokeball_Func3, + BigPokeball_Func4, + BigPokeball_Func5, + BigPokeball_Func6 }; -static const TransitionStateFunc sPhase2_FrontierLogoWave_Funcs[] = +static const TransitionStateFunc sFrontierLogoWave_Funcs[] = { - Phase2_FrontierLogoWave_Func1, - Phase2_FrontierLogoWave_Func2, - Phase2_FrontierLogoWave_Func3, - Phase2_FrontierLogoWave_Func4 + FrontierLogoWave_Func1, + FrontierLogoWave_Func2, + FrontierLogoWave_Func3, + FrontierLogoWave_Func4 }; -static const TransitionStateFunc sPhase2_FrontierSquares_Funcs[] = +static const TransitionStateFunc sFrontierSquares_Funcs[] = { - Phase2_FrontierSquares_Func1, - Phase2_FrontierSquares_Func2, - Phase2_FrontierSquares_Func3, - Phase2_FrontierSquares_End + FrontierSquares_Func1, + FrontierSquares_Func2, + FrontierSquares_Func3, + FrontierSquares_End }; -static const TransitionStateFunc sPhase2_FrontierSquaresSpiral_Funcs[] = +static const TransitionStateFunc sFrontierSquaresSpiral_Funcs[] = { - Phase2_FrontierSquaresSpiral_Func1, - Phase2_FrontierSquaresSpiral_Func2, - Phase2_FrontierSquaresSpiral_Func3, - Phase2_FrontierSquaresSpiral_Func4, - Phase2_FrontierSquares_End + FrontierSquaresSpiral_Func1, + FrontierSquaresSpiral_Func2, + FrontierSquaresSpiral_Func3, + FrontierSquaresSpiral_Func4, + FrontierSquares_End }; -static const TransitionStateFunc sPhase2_FrontierSquaresScroll_Funcs[] = +static const TransitionStateFunc sFrontierSquaresScroll_Funcs[] = { - Phase2_FrontierSquaresScroll_Func1, - Phase2_FrontierSquaresScroll_Func2, - Phase2_FrontierSquaresScroll_Func3, - Phase2_FrontierSquaresScroll_Func4, - Phase2_FrontierSquaresScroll_Func5 + FrontierSquaresScroll_Func1, + FrontierSquaresScroll_Func2, + FrontierSquaresScroll_Func3, + FrontierSquaresScroll_Func4, + FrontierSquaresScroll_Func5 }; static const u8 gUnknown_085C9A30[] = {0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x1b, 0x14, 0x0d, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x07, 0x0e, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x13, 0x0c, 0x0b, 0x0a, 0x09, 0x08, 0x0f, 0x10, 0x11, 0x12}; static const u8 gUnknown_085C9A53[] = {0x00, 0x10, 0x29, 0x16, 0x2c, 0x02, 0x2b, 0x15, 0x2e, 0x1b, 0x09, 0x30, 0x26, 0x05, 0x39, 0x3b, 0x0c, 0x3f, 0x23, 0x1c, 0x0a, 0x35, 0x07, 0x31, 0x27, 0x17, 0x37, 0x01, 0x3e, 0x11, 0x3d, 0x1e, 0x06, 0x22, 0x0f, 0x33, 0x20, 0x3a, 0x0d, 0x2d, 0x25, 0x34, 0x0b, 0x18, 0x3c, 0x13, 0x38, 0x21, 0x1d, 0x32, 0x28, 0x36, 0x0e, 0x03, 0x2f, 0x14, 0x12, 0x19, 0x04, 0x24, 0x1a, 0x2a, 0x1f, 0x08, 0x00}; -// code static void CB2_TestBattleTransition(void) { switch (sTestingTransitionState) @@ -921,7 +919,8 @@ static void CB2_TestBattleTransition(void) UpdatePaletteFade(); } -void TestBattleTransition(u8 transitionId) +// Unused +static void TestBattleTransition(u8 transitionId) { sTestingTransitionId = transitionId; SetMainCallback2(CB2_TestBattleTransition); @@ -947,7 +946,7 @@ void BattleTransition_Start(u8 transitionId) bool8 IsBattleTransitionDone(void) { - u8 taskId = FindTaskIdByFunc(Task_BattleTransitionMain); + u8 taskId = FindTaskIdByFunc(Task_BattleTransition); if (gTasks[taskId].tTransitionDone) { DestroyTask(taskId); @@ -962,23 +961,23 @@ bool8 IsBattleTransitionDone(void) static void LaunchBattleTransitionTask(u8 transitionId) { - u8 taskId = CreateTask(Task_BattleTransitionMain, 2); + u8 taskId = CreateTask(Task_BattleTransition, 2); gTasks[taskId].tTransitionId = transitionId; sTransitionStructPtr = AllocZeroed(sizeof(*sTransitionStructPtr)); } -static void Task_BattleTransitionMain(u8 taskId) +static void Task_BattleTransition(u8 taskId) { - while (sMainTransitionPhases[gTasks[taskId].tState](&gTasks[taskId])); + while (sTaskHandlers[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Transition_Phase1(struct Task *task) +static bool8 Transition_StartIntro(struct Task *task) { SetWeatherScreenFadeOut(); CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); - if (sPhase1_Tasks[task->tTransitionId] != NULL) + if (sTasks_Intro[task->tTransitionId] != NULL) { - CreateTask(sPhase1_Tasks[task->tTransitionId], 4); + CreateTask(sTasks_Intro[task->tTransitionId], 4); task->tState++; return FALSE; } @@ -989,9 +988,9 @@ static bool8 Transition_Phase1(struct Task *task) } } -static bool8 Transition_WaitForPhase1(struct Task *task) +static bool8 Transition_WaitForIntro(struct Task *task) { - if (FindTaskIdByFunc(sPhase1_Tasks[task->tTransitionId]) == TASK_NONE) + if (FindTaskIdByFunc(sTasks_Intro[task->tTransitionId]) == TASK_NONE) { task->tState++; return TRUE; @@ -1002,17 +1001,17 @@ static bool8 Transition_WaitForPhase1(struct Task *task) } } -static bool8 Transition_Phase2(struct Task *task) +static bool8 Transition_StartMain(struct Task *task) { - CreateTask(sPhase2_Tasks[task->tTransitionId], 0); + CreateTask(sTasks_Main[task->tTransitionId], 0); task->tState++; return FALSE; } -static bool8 Transition_WaitForPhase2(struct Task *task) +static bool8 Transition_WaitForMain(struct Task *task) { task->tTransitionDone = FALSE; - if (FindTaskIdByFunc(sPhase2_Tasks[task->tTransitionId]) == TASK_NONE) + if (FindTaskIdByFunc(sTasks_Main[task->tTransitionId]) == TASK_NONE) task->tTransitionDone = TRUE; return FALSE; } @@ -1020,14 +1019,14 @@ static bool8 Transition_WaitForPhase2(struct Task *task) #undef tTransitionId #undef tTransitionDone -static void Phase1Task_TransitionAll(u8 taskId) +static void Task_Intro(u8 taskId) { if (gTasks[taskId].tState == 0) { gTasks[taskId].tState++; - CreatePhase1Task(0, 0, 3, 2, 2); // creates a sub-task for this sub-task + CreateIntroTask(0, 0, 3, 2, 2); } - else if (IsPhase1Done()) + else if (IsIntroTaskDone()) { DestroyTask(taskId); } @@ -1046,12 +1045,12 @@ static void Phase1Task_TransitionAll(u8 taskId) #define tPlayerSpriteId data[14] #define tMugshotId data[15] -static void Phase2Task_Blur(u8 taskId) +static void Task_Blur(u8 taskId) { - while (sPhase2_Blur_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBlur_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Blur_Func1(struct Task *task) +static bool8 Blur_Func1(struct Task *task) { SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuRegBits(REG_OFFSET_BG1CNT, BGCNT_MOSAIC); @@ -1061,7 +1060,7 @@ static bool8 Phase2_Blur_Func1(struct Task *task) return TRUE; } -static bool8 Phase2_Blur_Func2(struct Task *task) +static bool8 Blur_Func2(struct Task *task) { if (task->tData1 != 0) { @@ -1079,30 +1078,30 @@ static bool8 Phase2_Blur_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Blur_Func3(struct Task *task) +static bool8 Blur_Func3(struct Task *task) { if (!gPaletteFade.active) { - u8 taskId = FindTaskIdByFunc(Phase2Task_Blur); + u8 taskId = FindTaskIdByFunc(Task_Blur); DestroyTask(taskId); } return FALSE; } -static void Phase2Task_Swirl(u8 taskId) +static void Task_Swirl(u8 taskId) { - while (sPhase2_Swirl_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sSwirl_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Swirl_Func1(struct Task *task) +static bool8 Swirl_Func1(struct Task *task) { InitTransitionStructVars(); ScanlineEffect_Clear(); BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK); sub_8149F98(gScanlineEffectRegBuffers[1], sTransitionStructPtr->field_14, 0, 2, 0, 160); - SetVBlankCallback(VBlankCB_Phase2_Swirl); - SetHBlankCallback(HBlankCB_Phase2_Swirl); + SetVBlankCallback(VBlankCB_Swirl); + SetHBlankCallback(HBlankCB_Swirl); EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_HBLANK); @@ -1110,7 +1109,7 @@ static bool8 Phase2_Swirl_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_Swirl_Func2(struct Task *task) +static bool8 Swirl_Func2(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; task->tData1 += 4; @@ -1120,7 +1119,7 @@ static bool8 Phase2_Swirl_Func2(struct Task *task) if (!gPaletteFade.active) { - u8 taskId = FindTaskIdByFunc(Phase2Task_Swirl); + u8 taskId = FindTaskIdByFunc(Task_Swirl); DestroyTask(taskId); } @@ -1128,14 +1127,14 @@ static bool8 Phase2_Swirl_Func2(struct Task *task) return FALSE; } -static void VBlankCB_Phase2_Swirl(void) +static void VBlankCB_Swirl(void) { VBlankCB_BattleTransition(); if (sTransitionStructPtr->VBlank_DMA) DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); } -static void HBlankCB_Phase2_Swirl(void) +static void HBlankCB_Swirl(void) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG1HOFS = var; @@ -1143,12 +1142,12 @@ static void HBlankCB_Phase2_Swirl(void) REG_BG3HOFS = var; } -static void Phase2Task_Shuffle(u8 taskId) +static void Task_Shuffle(u8 taskId) { - while (sPhase2_Shuffle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sShuffle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Shuffle_Func1(struct Task *task) +static bool8 Shuffle_Func1(struct Task *task) { InitTransitionStructVars(); ScanlineEffect_Clear(); @@ -1156,8 +1155,8 @@ static bool8 Phase2_Shuffle_Func1(struct Task *task) BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK); memset(gScanlineEffectRegBuffers[1], sTransitionStructPtr->field_16, 0x140); - SetVBlankCallback(VBlankCB_Phase2_Shuffle); - SetHBlankCallback(HBlankCB_Phase2_Shuffle); + SetVBlankCallback(VBlankCB_Shuffle); + SetHBlankCallback(HBlankCB_Shuffle); EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_HBLANK); @@ -1165,7 +1164,7 @@ static bool8 Phase2_Shuffle_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_Shuffle_Func2(struct Task *task) +static bool8 Shuffle_Func2(struct Task *task) { u8 i; u16 r3, r4; @@ -1183,20 +1182,20 @@ static bool8 Phase2_Shuffle_Func2(struct Task *task) } if (!gPaletteFade.active) - DestroyTask(FindTaskIdByFunc(Phase2Task_Shuffle)); + DestroyTask(FindTaskIdByFunc(Task_Shuffle)); sTransitionStructPtr->VBlank_DMA++; return FALSE; } -static void VBlankCB_Phase2_Shuffle(void) +static void VBlankCB_Shuffle(void) { VBlankCB_BattleTransition(); if (sTransitionStructPtr->VBlank_DMA) DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); } -static void HBlankCB_Phase2_Shuffle(void) +static void HBlankCB_Shuffle(void) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG1VOFS = var; @@ -1204,39 +1203,39 @@ static void HBlankCB_Phase2_Shuffle(void) REG_BG3VOFS = var; } -static void Phase2Task_BigPokeball(u8 taskId) +static void Task_BigPokeball(u8 taskId) { - while (sPhase2_BigPokeball_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBigPokeball_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Aqua(u8 taskId) +static void Task_Aqua(u8 taskId) { - while (sPhase2_Aqua_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sAqua_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Magma(u8 taskId) +static void Task_Magma(u8 taskId) { - while (sPhase2_Magma_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sMagma_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Regice(u8 taskId) +static void Task_Regice(u8 taskId) { - while (sPhase2_Regice_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRegice_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Registeel(u8 taskId) +static void Task_Registeel(u8 taskId) { - while (sPhase2_Registeel_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRegisteel_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Regirock(u8 taskId) +static void Task_Regirock(u8 taskId) { - while (sPhase2_Regirock_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRegirock_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Kyogre(u8 taskId) +static void Task_Kyogre(u8 taskId) { - while (sPhase2_Kyogre_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sKyogre_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static void sub_814669C(struct Task *task) @@ -1262,10 +1261,10 @@ static void sub_814669C(struct Task *task) gScanlineEffectRegBuffers[1][i] = 240; } - SetVBlankCallback(VBlankCB0_Phase2_BigPokeball); + SetVBlankCallback(VBlankCB0_BigPokeball); } -static bool8 Phase2_Aqua_Func1(struct Task *task) +static bool8 Aqua_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -1280,7 +1279,7 @@ static bool8 Phase2_Aqua_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_Magma_Func1(struct Task *task) +static bool8 Magma_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -1295,7 +1294,7 @@ static bool8 Phase2_Magma_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_Regi_Func1(struct Task *task) +static bool8 Regi_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -1309,7 +1308,7 @@ static bool8 Phase2_Regi_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_BigPokeball_Func1(struct Task *task) +static bool8 BigPokeball_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -1329,7 +1328,7 @@ static bool8 Phase2_BigPokeball_Func1(struct Task *task) ptr[index] = toStore; \ } -static bool8 Phase2_BigPokeball_Func2(struct Task *task) +static bool8 BigPokeball_Func2(struct Task *task) { s16 i, j; u16 *tilemap, *tileset; @@ -1350,7 +1349,7 @@ static bool8 Phase2_BigPokeball_Func2(struct Task *task) return TRUE; } -static bool8 Phase2_Aqua_Func2(struct Task *task) +static bool8 Aqua_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -1362,7 +1361,7 @@ static bool8 Phase2_Aqua_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Magma_Func2(struct Task *task) +static bool8 Magma_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -1374,7 +1373,7 @@ static bool8 Phase2_Magma_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Regice_Func2(struct Task *task) +static bool8 Regice_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -1387,7 +1386,7 @@ static bool8 Phase2_Regice_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Registeel_Func2(struct Task *task) +static bool8 Registeel_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -1400,7 +1399,7 @@ static bool8 Phase2_Registeel_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Regirock_Func2(struct Task *task) +static bool8 Regirock_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -1413,7 +1412,7 @@ static bool8 Phase2_Regirock_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Kyogre_Func3(struct Task *task) +static bool8 Kyogre_Func3(struct Task *task) { u16 *tilemap, *tileset; @@ -1426,7 +1425,7 @@ static bool8 Phase2_Kyogre_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Kyogre_Func4(struct Task *task) +static bool8 Kyogre_Func4(struct Task *task) { if (task->tData1 % 3 == 0) { @@ -1443,7 +1442,7 @@ static bool8 Phase2_Kyogre_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_Kyogre_Func5(struct Task *task) +static bool8 Kyogre_Func5(struct Task *task) { if (task->tData1 % 5 == 0) { @@ -1460,14 +1459,14 @@ static bool8 Phase2_Kyogre_Func5(struct Task *task) return FALSE; } -static bool8 Phase2_WeatherDuo_Func6(struct Task *task) +static bool8 WeatherDuo_Func6(struct Task *task) { BeginNormalPaletteFade(PALETTES_OBJECTS | 0x8000, 1, 0, 0x10, RGB_BLACK); task->tState++; return FALSE; } -static bool8 Phase2_WeatherDuo_Func7(struct Task *task) +static bool8 WeatherDuo_Func7(struct Task *task) { if (!gPaletteFade.active) { @@ -1478,7 +1477,7 @@ static bool8 Phase2_WeatherDuo_Func7(struct Task *task) return FALSE; } -static bool8 Phase2_BigPokeball_Func3(struct Task *task) +static bool8 BigPokeball_Func3(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; if (task->tData3 == 0 || --task->tData3 == 0) @@ -1498,7 +1497,7 @@ static bool8 Phase2_BigPokeball_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_BigPokeball_Func4(struct Task *task) +static bool8 BigPokeball_Func4(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; if (task->tData3 == 0 || --task->tData3 == 0) @@ -1518,7 +1517,7 @@ static bool8 Phase2_BigPokeball_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_BigPokeball_Func5(struct Task *task) +static bool8 BigPokeball_Func5(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; task->tData4 += 8; @@ -1538,28 +1537,28 @@ static bool8 Phase2_BigPokeball_Func5(struct Task *task) return FALSE; } -static bool8 Phase2_FramesCountdown(struct Task *task) +static bool8 FramesCountdown(struct Task *task) { if (--task->tFrames == 0) task->tState++; return FALSE; } -static bool8 Phase2_WeatherTrio_Func1(struct Task *task) +static bool8 WeatherTrio_Func1(struct Task *task) { BeginNormalPaletteFade(PALETTES_BG, 1, 0, 0x10, RGB_BLACK); task->tState++; return FALSE; } -static bool8 Phase2_WaitPaletteFade(struct Task *task) +static bool8 WaitPaletteFade(struct Task *task) { if (!gPaletteFade.active) task->tState++; return FALSE; } -static bool8 Phase2_BigPokeball_Func6(struct Task *task) +static bool8 BigPokeball_Func6(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; if (task->tData2 < 1024) @@ -1583,7 +1582,7 @@ static bool8 Phase2_BigPokeball_Func6(struct Task *task) if (task->tData3 == 0) { task->tData3++; - SetVBlankCallback(VBlankCB1_Phase2_BigPokeball); + SetVBlankCallback(VBlankCB1_BigPokeball); } sTransitionStructPtr->VBlank_DMA++; @@ -1605,24 +1604,24 @@ static void Transition_BigPokeball_Vblank(void) REG_BLDALPHA = sTransitionStructPtr->BLDALPHA; } -static void VBlankCB0_Phase2_BigPokeball(void) +static void VBlankCB0_BigPokeball(void) { Transition_BigPokeball_Vblank(); DmaSet(0, gScanlineEffectRegBuffers[1], ®_BG0HOFS, 0xA2400001); } -static void VBlankCB1_Phase2_BigPokeball(void) +static void VBlankCB1_BigPokeball(void) { Transition_BigPokeball_Vblank(); DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); } -static void Phase2Task_PokeballsTrail(u8 taskId) +static void Task_PokeballsTrail(u8 taskId) { - while (sPhase2_PokeballsTrail_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sPokeballsTrail_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_PokeballsTrail_Func1(struct Task *task) +static bool8 PokeballsTrail_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -1635,7 +1634,7 @@ static bool8 Phase2_PokeballsTrail_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_PokeballsTrail_Func2(struct Task *task) +static bool8 PokeballsTrail_Func2(struct Task *task) { s16 i; s16 rand; @@ -1658,12 +1657,12 @@ static bool8 Phase2_PokeballsTrail_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_PokeballsTrail_Func3(struct Task *task) +static bool8 PokeballsTrail_Func3(struct Task *task) { if (!FieldEffectActiveListContains(FLDEFF_POKEBALL)) { FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_PokeballsTrail)); + DestroyTask(FindTaskIdByFunc(Task_PokeballsTrail)); } return FALSE; } @@ -1718,12 +1717,12 @@ static void sub_814713C(struct Sprite *sprite) } } -static void Phase2Task_Clockwise_BlackFade(u8 taskId) +static void Task_Clockwise_BlackFade(u8 taskId) { - while (sPhase2_Clockwise_BlackFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sClockwise_BlackFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Clockwise_BlackFade_Func1(struct Task *task) +static bool8 Clockwise_BlackFade_Func1(struct Task *task) { u16 i; @@ -1740,14 +1739,14 @@ static bool8 Phase2_Clockwise_BlackFade_Func1(struct Task *task) gScanlineEffectRegBuffers[1][i] = 0xF3F4; } - SetVBlankCallback(VBlankCB_Phase2_Clockwise_BlackFade); + SetVBlankCallback(VBlankCB_Clockwise_BlackFade); sTransitionStructPtr->data[4] = 120; task->tState++; return TRUE; } -static bool8 Phase2_Clockwise_BlackFade_Func2(struct Task *task) +static bool8 Clockwise_BlackFade_Func2(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; @@ -1768,7 +1767,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Clockwise_BlackFade_Func3(struct Task *task) +static bool8 Clockwise_BlackFade_Func3(struct Task *task) { s16 r1, r3; vu8 var = 0; @@ -1806,7 +1805,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Clockwise_BlackFade_Func4(struct Task *task) +static bool8 Clockwise_BlackFade_Func4(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; @@ -1827,7 +1826,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_Clockwise_BlackFade_Func5(struct Task *task) +static bool8 Clockwise_BlackFade_Func5(struct Task *task) { s16 r1, r2, var4; vu8 var = 0; @@ -1867,7 +1866,7 @@ static bool8 Phase2_Clockwise_BlackFade_Func5(struct Task *task) return FALSE; } -static bool8 Phase2_Clockwise_BlackFade_Func6(struct Task *task) +static bool8 Clockwise_BlackFade_Func6(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; @@ -1891,15 +1890,15 @@ static bool8 Phase2_Clockwise_BlackFade_Func6(struct Task *task) return FALSE; } -static bool8 Phase2_Clockwise_BlackFade_Func7(struct Task *task) +static bool8 Clockwise_BlackFade_Func7(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_Clockwise_BlackFade)); + DestroyTask(FindTaskIdByFunc(Task_Clockwise_BlackFade)); return FALSE; } -static void VBlankCB_Phase2_Clockwise_BlackFade(void) +static void VBlankCB_Clockwise_BlackFade(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -1912,12 +1911,12 @@ static void VBlankCB_Phase2_Clockwise_BlackFade(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); } -static void Phase2Task_Ripple(u8 taskId) +static void Task_Ripple(u8 taskId) { - while (sPhase2_Ripple_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRipple_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Ripple_Func1(struct Task *task) +static bool8 Ripple_Func1(struct Task *task) { u8 i; @@ -1929,8 +1928,8 @@ static bool8 Phase2_Ripple_Func1(struct Task *task) gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_16; } - SetVBlankCallback(VBlankCB_Phase2_Ripple); - SetHBlankCallback(HBlankCB_Phase2_Ripple); + SetVBlankCallback(VBlankCB_Ripple); + SetHBlankCallback(HBlankCB_Ripple); EnableInterrupts(INTR_FLAG_HBLANK); @@ -1938,7 +1937,7 @@ static bool8 Phase2_Ripple_Func1(struct Task *task) return TRUE; } -static bool8 Phase2_Ripple_Func2(struct Task *task) +static bool8 Ripple_Func2(struct Task *task) { u8 i; s16 r3; @@ -1966,20 +1965,20 @@ static bool8 Phase2_Ripple_Func2(struct Task *task) } if (task->tData4 != 0 && !gPaletteFade.active) - DestroyTask(FindTaskIdByFunc(Phase2Task_Ripple)); + DestroyTask(FindTaskIdByFunc(Task_Ripple)); sTransitionStructPtr->VBlank_DMA++; return FALSE; } -static void VBlankCB_Phase2_Ripple(void) +static void VBlankCB_Ripple(void) { VBlankCB_BattleTransition(); if (sTransitionStructPtr->VBlank_DMA) DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); } -static void HBlankCB_Phase2_Ripple(void) +static void HBlankCB_Ripple(void) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG1VOFS = var; @@ -1987,12 +1986,12 @@ static void HBlankCB_Phase2_Ripple(void) REG_BG3VOFS = var; } -static void Phase2Task_Wave(u8 taskId) +static void Task_Wave(u8 taskId) { - while (sPhase2_Wave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Wave_Func1(struct Task *task) +static bool8 Wave_Func1(struct Task *task) { u8 i; @@ -2009,13 +2008,13 @@ static bool8 Phase2_Wave_Func1(struct Task *task) gScanlineEffectRegBuffers[1][i] = 242; } - SetVBlankCallback(VBlankCB_Phase2_Wave); + SetVBlankCallback(VBlankCB_Wave); task->tState++; return TRUE; } -static bool8 Phase2_Wave_Func2(struct Task *task) +static bool8 Wave_Func2(struct Task *task) { u8 i, r5; u16* toStore; @@ -2045,15 +2044,15 @@ static bool8 Phase2_Wave_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Wave_Func3(struct Task *task) +static bool8 Wave_Func3(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_Wave)); + DestroyTask(FindTaskIdByFunc(Task_Wave)); return FALSE; } -static void VBlankCB_Phase2_Wave(void) +static void VBlankCB_Wave(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2065,42 +2064,42 @@ static void VBlankCB_Phase2_Wave(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); } -static void Phase2Task_Sidney(u8 taskId) +static void Task_Sidney(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_SIDNEY; - Phase2Task_MugShotTransition(taskId); + Task_MugShotTransition(taskId); } -static void Phase2Task_Phoebe(u8 taskId) +static void Task_Phoebe(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_PHOEBE; - Phase2Task_MugShotTransition(taskId); + Task_MugShotTransition(taskId); } -static void Phase2Task_Glacia(u8 taskId) +static void Task_Glacia(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_GLACIA; - Phase2Task_MugShotTransition(taskId); + Task_MugShotTransition(taskId); } -static void Phase2Task_Drake(u8 taskId) +static void Task_Drake(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_DRAKE; - Phase2Task_MugShotTransition(taskId); + Task_MugShotTransition(taskId); } -static void Phase2Task_Champion(u8 taskId) +static void Task_Champion(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_CHAMPION; - Phase2Task_MugShotTransition(taskId); + Task_MugShotTransition(taskId); } -static void Phase2Task_MugShotTransition(u8 taskId) +static void Task_MugShotTransition(u8 taskId) { - while (sPhase2_Mugshot_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sMugshot_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Mugshot_Func1(struct Task *task) +static bool8 Mugshot_Func1(struct Task *task) { u8 i; @@ -2120,13 +2119,13 @@ static bool8 Phase2_Mugshot_Func1(struct Task *task) gScanlineEffectRegBuffers[1][i] = 0xF0F1; } - SetVBlankCallback(VBlankCB0_Phase2_Mugshots); + SetVBlankCallback(VBlankCB0_Mugshots); task->tState++; return FALSE; } -static bool8 Phase2_Mugshot_Func2(struct Task *task) +static bool8 Mugshot_Func2(struct Task *task) { s16 i, j; u16 *tilemap, *tileset; @@ -2148,12 +2147,12 @@ static bool8 Phase2_Mugshot_Func2(struct Task *task) EnableInterrupts(INTR_FLAG_HBLANK); - SetHBlankCallback(HBlankCB_Phase2_Mugshots); + SetHBlankCallback(HBlankCB_Mugshots); task->tState++; return FALSE; } -static bool8 Phase2_Mugshot_Func3(struct Task *task) +static bool8 Mugshot_Func3(struct Task *task) { u8 i, r5; u16* toStore; @@ -2201,7 +2200,7 @@ static bool8 Phase2_Mugshot_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Mugshot_Func4(struct Task *task) +static bool8 Mugshot_Func4(struct Task *task) { u8 i; u16* toStore; @@ -2230,7 +2229,7 @@ static bool8 Phase2_Mugshot_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_Mugshot_Func5(struct Task *task) +static bool8 Mugshot_Func5(struct Task *task) { sTransitionStructPtr->BG0HOFS_1 -= 8; sTransitionStructPtr->BG0HOFS_2 += 8; @@ -2242,7 +2241,7 @@ static bool8 Phase2_Mugshot_Func5(struct Task *task) return FALSE; } -static bool8 Phase2_Mugshot_Func6(struct Task *task) +static bool8 Mugshot_Func6(struct Task *task) { sTransitionStructPtr->BG0HOFS_1 -= 8; sTransitionStructPtr->BG0HOFS_2 += 8; @@ -2259,12 +2258,12 @@ static bool8 Phase2_Mugshot_Func6(struct Task *task) task->tData3 = 0; task->tData4 = 0; sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; - SetVBlankCallback(VBlankCB1_Phase2_Mugshots); + SetVBlankCallback(VBlankCB1_Mugshots); } return FALSE; } -static bool8 Phase2_Mugshot_Func7(struct Task *task) +static bool8 Mugshot_Func7(struct Task *task) { bool32 r6; @@ -2305,7 +2304,7 @@ static bool8 Phase2_Mugshot_Func7(struct Task *task) return FALSE; } -static bool8 Phase2_Mugshot_Func8(struct Task *task) +static bool8 Mugshot_Func8(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE); @@ -2316,7 +2315,7 @@ static bool8 Phase2_Mugshot_Func8(struct Task *task) return TRUE; } -static bool8 Phase2_Mugshot_Func9(struct Task *task) +static bool8 Mugshot_Func9(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; @@ -2329,7 +2328,7 @@ static bool8 Phase2_Mugshot_Func9(struct Task *task) return FALSE; } -static bool8 Phase2_Mugshot_Func10(struct Task *task) +static bool8 Mugshot_Func10(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -2337,7 +2336,7 @@ static bool8 Phase2_Mugshot_Func10(struct Task *task) return FALSE; } -static void VBlankCB0_Phase2_Mugshots(void) +static void VBlankCB0_Mugshots(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2350,7 +2349,7 @@ static void VBlankCB0_Phase2_Mugshots(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); } -static void VBlankCB1_Phase2_Mugshots(void) +static void VBlankCB1_Mugshots(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2360,7 +2359,7 @@ static void VBlankCB1_Phase2_Mugshots(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_BLDY, 0xA2400001); } -static void HBlankCB_Phase2_Mugshots(void) +static void HBlankCB_Mugshots(void) { if (REG_VCOUNT < 80) REG_BG0HOFS = sTransitionStructPtr->BG0HOFS_1; @@ -2491,12 +2490,12 @@ static s16 IsTrainerPicSlideDone(s16 spriteId) #undef sDone #undef sSlideTableId -static void Phase2Task_Slice(u8 taskId) +static void Task_Slice(u8 taskId) { - while (sPhase2_Slice_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sSlice_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Slice_Func1(struct Task *task) +static bool8 Slice_Func1(struct Task *task) { u16 i; @@ -2519,14 +2518,14 @@ static bool8 Phase2_Slice_Func1(struct Task *task) EnableInterrupts(INTR_FLAG_HBLANK); SetGpuRegBits(REG_OFFSET_DISPSTAT, DISPSTAT_HBLANK_INTR); - SetVBlankCallback(VBlankCB_Phase2_Slice); - SetHBlankCallback(HBlankCB_Phase2_Slice); + SetVBlankCallback(VBlankCB_Slice); + SetHBlankCallback(HBlankCB_Slice); task->tState++; return TRUE; } -static bool8 Phase2_Slice_Func2(struct Task *task) +static bool8 Slice_Func2(struct Task *task) { u16 i; @@ -2563,15 +2562,15 @@ static bool8 Phase2_Slice_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Slice_Func3(struct Task *task) +static bool8 Slice_Func3(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_Slice)); + DestroyTask(FindTaskIdByFunc(Task_Slice)); return FALSE; } -static void VBlankCB_Phase2_Slice(void) +static void VBlankCB_Slice(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2583,7 +2582,7 @@ static void VBlankCB_Phase2_Slice(void) DmaSet(0, &gScanlineEffectRegBuffers[1][160], ®_WIN0H, 0xA2400001); } -static void HBlankCB_Phase2_Slice(void) +static void HBlankCB_Slice(void) { if (REG_VCOUNT < 160) { @@ -2594,12 +2593,12 @@ static void HBlankCB_Phase2_Slice(void) } } -static void Phase2Task_ShredSplit(u8 taskId) +static void Task_ShredSplit(u8 taskId) { - while (sPhase2_ShredSplit_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sShredSplit_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_ShredSplit_Func1(struct Task *task) +static bool8 ShredSplit_Func1(struct Task *task) { u16 i; @@ -2627,14 +2626,14 @@ static bool8 Phase2_ShredSplit_Func1(struct Task *task) EnableInterrupts(INTR_FLAG_HBLANK); - SetVBlankCallback(VBlankCB_Phase2_Slice); - SetHBlankCallback(HBlankCB_Phase2_Slice); + SetVBlankCallback(VBlankCB_Slice); + SetHBlankCallback(HBlankCB_Slice); task->tState++; return TRUE; } -static bool8 Phase2_ShredSplit_Func2(struct Task *task) +static bool8 ShredSplit_Func2(struct Task *task) { u16 i, j, k; u8 arr1[ARRAY_COUNT(gUnknown_085C8C64)]; @@ -2735,7 +2734,7 @@ static bool8 Phase2_ShredSplit_Func2(struct Task *task) // is always false, resulting in the game being stuck in an infinite loop. // It's possible this transition is only partially // done and the second part was left out. -static bool8 Phase2_ShredSplit_Func3(struct Task *task) +static bool8 ShredSplit_Func3(struct Task *task) { u16 i; bool32 done = TRUE; @@ -2753,25 +2752,25 @@ static bool8 Phase2_ShredSplit_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_ShredSplit_Func4(struct Task *task) +static bool8 ShredSplit_Func4(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_ShredSplit)); + DestroyTask(FindTaskIdByFunc(Task_ShredSplit)); return FALSE; } -static void Phase2Task_Blackhole1(u8 taskId) +static void Task_Blackhole1(u8 taskId) { - while (sPhase2_Blackhole1_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBlackhole1_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_Blackhole2(u8 taskId) +static void Task_Blackhole2(u8 taskId) { - while (sPhase2_Blackhole2_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBlackhole2_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Blackhole_Func1(struct Task *task) +static bool8 Blackhole_Func1(struct Task *task) { s32 i; @@ -2788,7 +2787,7 @@ static bool8 Phase2_Blackhole_Func1(struct Task *task) gScanlineEffectRegBuffers[1][i] = 0; } - SetVBlankCallback(VBlankCB1_Phase2_BigPokeball); + SetVBlankCallback(VBlankCB1_BigPokeball); task->tState++; task->tData1 = 1; @@ -2798,7 +2797,7 @@ static bool8 Phase2_Blackhole_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_Blackhole1_Func3(struct Task *task) +static bool8 Blackhole1_Func3(struct Task *task) { if (task->tFuncState == 1) { @@ -2830,7 +2829,7 @@ static bool8 Phase2_Blackhole1_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Blackhole1_Func2(struct Task *task) +static bool8 Blackhole1_Func2(struct Task *task) { sTransitionStructPtr->VBlank_DMA = FALSE; if (task->tFuncState == 0) @@ -2852,7 +2851,7 @@ static bool8 Phase2_Blackhole1_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_Blackhole2_Func2(struct Task *task) +static bool8 Blackhole2_Func2(struct Task *task) { u16 index; // should be s16 I think s16 amplitude; @@ -2897,12 +2896,12 @@ static bool8 Phase2_Blackhole2_Func2(struct Task *task) return FALSE; } -static void Phase2Task_RectangularSpiral(u8 taskId) +static void Task_RectangularSpiral(u8 taskId) { - while (sPhase2_RectangularSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRectangularSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_RectangularSpiral_Func1(struct Task *task) +static bool8 RectangularSpiral_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -2942,7 +2941,7 @@ static bool8 Phase2_RectangularSpiral_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_RectangularSpiral_Func2(struct Task *task) +static bool8 RectangularSpiral_Func2(struct Task *task) { u16 *tilemap, *tileset; u8 i; @@ -2978,7 +2977,7 @@ static bool8 Phase2_RectangularSpiral_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_RectangularSpiral_Func3(struct Task *task) +static bool8 RectangularSpiral_Func3(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -3049,12 +3048,12 @@ static bool16 sub_8149048(const s16 * const *arg0, struct StructRectangularSpira return TRUE; } -static void Phase2Task_Groudon(u8 taskId) +static void Task_Groudon(u8 taskId) { - while (sPhase2_Groudon_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sGroudon_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Groudon_Func3(struct Task *task) +static bool8 Groudon_Func3(struct Task *task) { u16 *tilemap, *tileset; @@ -3068,7 +3067,7 @@ static bool8 Phase2_Groudon_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Groudon_Func4(struct Task *task) +static bool8 Groudon_Func4(struct Task *task) { if (task->tData1 % 3 == 0) { @@ -3084,7 +3083,7 @@ static bool8 Phase2_Groudon_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_Groudon_Func5(struct Task *task) +static bool8 Groudon_Func5(struct Task *task) { if (task->tData1 % 5 == 0) { @@ -3101,12 +3100,12 @@ static bool8 Phase2_Groudon_Func5(struct Task *task) return FALSE; } -static void Phase2Task_Rayquaza(u8 taskId) +static void Task_Rayquaza(u8 taskId) { - while (sPhase2_Rayquaza_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sRayquaza_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Rayquaza_Func3(struct Task *task) +static bool8 Rayquaza_Func3(struct Task *task) { u16 *tilemap, *tileset; u16 i; @@ -3129,11 +3128,11 @@ static bool8 Phase2_Rayquaza_Func3(struct Task *task) gScanlineEffectRegBuffers[1][i] = 0x100; } - SetVBlankCallback(VBlankCB_Phase2_Rayquaza); + SetVBlankCallback(VBlankCB_Rayquaza); return FALSE; } -static bool8 Phase2_Rayquaza_Func4(struct Task *task) +static bool8 Rayquaza_Func4(struct Task *task) { u16 *tilemap, *tileset; @@ -3143,7 +3142,7 @@ static bool8 Phase2_Rayquaza_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_Rayquaza_Func5(struct Task *task) +static bool8 Rayquaza_Func5(struct Task *task) { if ((task->tData1 % 4) == 0) { @@ -3160,7 +3159,7 @@ static bool8 Phase2_Rayquaza_Func5(struct Task *task) return FALSE; } -static bool8 Phase2_Rayquaza_Func6(struct Task *task) +static bool8 Rayquaza_Func6(struct Task *task) { if (++task->tData1 > 20) { @@ -3172,7 +3171,7 @@ static bool8 Phase2_Rayquaza_Func6(struct Task *task) return FALSE; } -static bool8 Phase2_Rayquaza_Func7(struct Task *task) +static bool8 Rayquaza_Func7(struct Task *task) { if (!gPaletteFade.active) { @@ -3183,7 +3182,7 @@ static bool8 Phase2_Rayquaza_Func7(struct Task *task) return FALSE; } -static bool8 Phase2_Rayquaza_Func8(struct Task *task) +static bool8 Rayquaza_Func8(struct Task *task) { BlendPalettes(PALETTES_BG & ~(0x8000), 8, 0); BlendPalettes(PALETTES_OBJECTS | 0x8000, 0, 0); @@ -3192,7 +3191,7 @@ static bool8 Phase2_Rayquaza_Func8(struct Task *task) return FALSE; } -static bool8 Phase2_Rayquaza_Func9(struct Task *task) +static bool8 Rayquaza_Func9(struct Task *task) { if ((task->tData1 % 3) == 0) { @@ -3214,7 +3213,7 @@ static bool8 Phase2_Rayquaza_Func9(struct Task *task) gScanlineEffectRegBuffers[1][i] = 0; } - SetVBlankCallback(VBlankCB1_Phase2_BigPokeball); + SetVBlankCallback(VBlankCB1_BigPokeball); task->tState++; task->tData2 = 0x100; task->tFuncState = 0; @@ -3224,7 +3223,7 @@ static bool8 Phase2_Rayquaza_Func9(struct Task *task) return FALSE; } -static void VBlankCB_Phase2_Rayquaza(void) +static void VBlankCB_Rayquaza(void) { void *dmaSrc; @@ -3241,12 +3240,12 @@ static void VBlankCB_Phase2_Rayquaza(void) DmaSet(0, dmaSrc, ®_BG0VOFS, 0xA2400001); } -static void Phase2Task_WhiteFade(u8 taskId) +static void Task_WhiteFade(u8 taskId) { - while (sPhase2_WhiteFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sWhiteFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_WhiteFade_Func1(struct Task *task) +static bool8 WhiteFade_Func1(struct Task *task) { u16 i; @@ -3266,14 +3265,14 @@ static bool8 Phase2_WhiteFade_Func1(struct Task *task) } EnableInterrupts(INTR_FLAG_HBLANK); - SetHBlankCallback(HBlankCB_Phase2_WhiteFade); - SetVBlankCallback(VBlankCB0_Phase2_WhiteFade); + SetHBlankCallback(HBlankCB_WhiteFade); + SetVBlankCallback(VBlankCB0_WhiteFade); task->tState++; return FALSE; } -static bool8 Phase2_WhiteFade_Func2(struct Task *task) +static bool8 WhiteFade_Func2(struct Task *task) { s16 i, posY; s16 arr1[ARRAY_COUNT(sUnknown_085C8DA0)]; @@ -3293,7 +3292,7 @@ static bool8 Phase2_WhiteFade_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_WhiteFade_Func3(struct Task *task) +static bool8 WhiteFade_Func3(struct Task *task) { sTransitionStructPtr->VBlank_DMA = 0; if (sTransitionStructPtr->field_20 > 7) @@ -3304,7 +3303,7 @@ static bool8 Phase2_WhiteFade_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_WhiteFade_Func4(struct Task *task) +static bool8 WhiteFade_Func4(struct Task *task) { sTransitionStructPtr->VBlank_DMA = 0; @@ -3317,23 +3316,23 @@ static bool8 Phase2_WhiteFade_Func4(struct Task *task) sTransitionStructPtr->BLDCNT = 0xFF; sTransitionStructPtr->WININ = WININ_WIN0_ALL; - SetVBlankCallback(VBlankCB1_Phase2_WhiteFade); + SetVBlankCallback(VBlankCB1_WhiteFade); task->tState++; return FALSE; } -static bool8 Phase2_WhiteFade_Func5(struct Task *task) +static bool8 WhiteFade_Func5(struct Task *task) { if (++sTransitionStructPtr->BLDY > 16) { FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_WhiteFade)); + DestroyTask(FindTaskIdByFunc(Task_WhiteFade)); } return FALSE; } -static void VBlankCB0_Phase2_WhiteFade(void) +static void VBlankCB0_WhiteFade(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -3346,7 +3345,7 @@ static void VBlankCB0_Phase2_WhiteFade(void) DmaSet(0, &gScanlineEffectRegBuffers[1][160], ®_WIN0H, 0xA2400001); } -static void VBlankCB1_Phase2_WhiteFade(void) +static void VBlankCB1_WhiteFade(void) { VBlankCB_BattleTransition(); REG_BLDY = sTransitionStructPtr->BLDY; @@ -3357,7 +3356,7 @@ static void VBlankCB1_Phase2_WhiteFade(void) REG_WIN0V = sTransitionStructPtr->WIN0V; } -static void HBlankCB_Phase2_WhiteFade(void) +static void HBlankCB_WhiteFade(void) { REG_BLDY = gScanlineEffectRegBuffers[1][REG_VCOUNT]; } @@ -3405,12 +3404,12 @@ static void sub_8149864(struct Sprite *sprite) } } -static void Phase2Task_GridSquares(u8 taskId) +static void Task_GridSquares(u8 taskId) { - while (sPhase2_GridSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sGridSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_GridSquares_Func1(struct Task *task) +static bool8 GridSquares_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -3423,7 +3422,7 @@ static bool8 Phase2_GridSquares_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_GridSquares_Func2(struct Task *task) +static bool8 GridSquares_Func2(struct Task *task) { u16* tileset; @@ -3444,22 +3443,22 @@ static bool8 Phase2_GridSquares_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_GridSquares_Func3(struct Task *task) +static bool8 GridSquares_Func3(struct Task *task) { if (--task->tData1 == 0) { FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_GridSquares)); + DestroyTask(FindTaskIdByFunc(Task_GridSquares)); } return FALSE; } -static void Phase2Task_Shards(u8 taskId) +static void Task_Shards(u8 taskId) { - while (sPhase2_Shards_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sShards_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_Shards_Func1(struct Task *task) +static bool8 Shards_Func1(struct Task *task) { u16 i; @@ -3476,13 +3475,13 @@ static bool8 Phase2_Shards_Func1(struct Task *task) } CpuSet(gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 0xA0); - SetVBlankCallback(VBlankCB_Phase2_Shards); + SetVBlankCallback(VBlankCB_Shards); task->tState++; return TRUE; } -static bool8 Phase2_Shards_Func2(struct Task *task) +static bool8 Shards_Func2(struct Task *task) { sub_814A1AC(sTransitionStructPtr->data, sUnknown_085C8DD0[task->tData1][0], @@ -3495,7 +3494,7 @@ static bool8 Phase2_Shards_Func2(struct Task *task) return TRUE; } -static bool8 Phase2_Shards_Func3(struct Task *task) +static bool8 Shards_Func3(struct Task *task) { s16 i; bool8 nextFunc; @@ -3534,7 +3533,7 @@ static bool8 Phase2_Shards_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_Shards_Func4(struct Task *task) +static bool8 Shards_Func4(struct Task *task) { if (++task->tData1 < 7) { @@ -3546,12 +3545,12 @@ static bool8 Phase2_Shards_Func4(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Phase2Task_Shards)); + DestroyTask(FindTaskIdByFunc(Task_Shards)); return FALSE; } } -static bool8 Phase2_Shards_Func5(struct Task *task) +static bool8 Shards_Func5(struct Task *task) { if (--task->tData3 == 0) { @@ -3562,7 +3561,7 @@ static bool8 Phase2_Shards_Func5(struct Task *task) return FALSE; } -static void VBlankCB_Phase2_Shards(void) +static void VBlankCB_Shards(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -3597,9 +3596,9 @@ static void VBlankCB_Phase2_Shards(void) #define tData6 data[6] #define tData7 data[7] -static void CreatePhase1Task(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4) +static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4) { - u8 taskId = CreateTask(TransitionPhase1_Task_RunFuncs, 3); + u8 taskId = CreateTask(Task_BattleTransition_Intro, 3); gTasks[taskId].tData1 = a0; gTasks[taskId].tData2 = a1; gTasks[taskId].tData3 = a2; @@ -3608,20 +3607,20 @@ static void CreatePhase1Task(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4) gTasks[taskId].tData6 = a0; } -static bool8 IsPhase1Done(void) +static bool8 IsIntroTaskDone(void) { - if (FindTaskIdByFunc(TransitionPhase1_Task_RunFuncs) == TASK_NONE) + if (FindTaskIdByFunc(Task_BattleTransition_Intro) == TASK_NONE) return TRUE; else return FALSE; } -void TransitionPhase1_Task_RunFuncs(u8 taskId) +void Task_BattleTransition_Intro(u8 taskId) { - while (sPhase1_TransitionAll_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sTransitionIntroFuncs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase1_TransitionAll_Func1(struct Task *task) +static bool8 Transition_Intro_1(struct Task *task) { if (task->tData6 == 0 || --task->tData6 == 0) { @@ -3639,7 +3638,7 @@ static bool8 Phase1_TransitionAll_Func1(struct Task *task) return FALSE; } -static bool8 Phase1_TransitionAll_Func2(struct Task *task) +static bool8 Transition_Intro_2(struct Task *task) { if (task->tData6 == 0 || --task->tData6 == 0) { @@ -3652,7 +3651,7 @@ static bool8 Phase1_TransitionAll_Func2(struct Task *task) if (task->tData7 == 0) { if (--task->tData3 == 0) - DestroyTask(FindTaskIdByFunc(TransitionPhase1_Task_RunFuncs)); + DestroyTask(FindTaskIdByFunc(Task_BattleTransition_Intro)); else { task->tData6 = task->tData1; @@ -3845,7 +3844,7 @@ static bool8 sub_814A228(s16 *data, bool8 a1, bool8 a2) #define tData6 data[6] #define tData7 data[7] -static bool8 Phase2_FrontierLogoWiggle_Func1(struct Task *task) +static bool8 FrontierLogoWiggle_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -3859,7 +3858,7 @@ static bool8 Phase2_FrontierLogoWiggle_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierLogoWiggle_Func2(struct Task *task) +static bool8 FrontierLogoWiggle_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -3871,17 +3870,17 @@ static bool8 Phase2_FrontierLogoWiggle_Func2(struct Task *task) return TRUE; } -static void Phase2Task_FrontierLogoWiggle(u8 taskId) +static void Task_FrontierLogoWiggle(u8 taskId) { - while (sPhase2_FrontierLogoWiggle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierLogoWiggle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_FrontierLogoWave(u8 taskId) +static void Task_FrontierLogoWave(u8 taskId) { - while (sPhase2_FrontierLogoWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierLogoWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_FrontierLogoWave_Func1(struct Task *task) +static bool8 FrontierLogoWave_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -3907,7 +3906,7 @@ static bool8 Phase2_FrontierLogoWave_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierLogoWave_Func2(struct Task *task) +static bool8 FrontierLogoWave_Func2(struct Task *task) { u16 *tilemap, *tileset; @@ -3918,7 +3917,7 @@ static bool8 Phase2_FrontierLogoWave_Func2(struct Task *task) return TRUE; } -static bool8 Phase2_FrontierLogoWave_Func3(struct Task *task) +static bool8 FrontierLogoWave_Func3(struct Task *task) { u8 i; @@ -3927,15 +3926,15 @@ static bool8 Phase2_FrontierLogoWave_Func3(struct Task *task) gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_16; } - SetVBlankCallback(VBlankCB_Phase2_30); - SetHBlankCallback(HBlankCB_Phase2_30); + SetVBlankCallback(VBlankCB_30); + SetHBlankCallback(HBlankCB_30); EnableInterrupts(INTR_FLAG_HBLANK); task->tState++; return TRUE; } -static bool8 Phase2_FrontierLogoWave_Func4(struct Task *task) +static bool8 FrontierLogoWave_Func4(struct Task *task) { u8 i; u16 var6, amplitude, var8; @@ -3979,14 +3978,14 @@ static bool8 Phase2_FrontierLogoWave_Func4(struct Task *task) } if (task->tData4 != 0 && !gPaletteFade.active) - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierLogoWave)); + DestroyTask(FindTaskIdByFunc(Task_FrontierLogoWave)); task->tData7 -= 17; sTransitionStructPtr->VBlank_DMA++; return FALSE; } -static void VBlankCB_Phase2_30(void) +static void VBlankCB_30(void) { VBlankCB_BattleTransition(); REG_BLDCNT = sTransitionStructPtr->BLDCNT; @@ -3996,28 +3995,28 @@ static void VBlankCB_Phase2_30(void) DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); } -static void HBlankCB_Phase2_30(void) +static void HBlankCB_30(void) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG0VOFS = var; } -static void Phase2Task_FrontierSquares(u8 taskId) +static void Task_FrontierSquares(u8 taskId) { - while (sPhase2_FrontierSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_FrontierSquaresSpiral(u8 taskId) +static void Task_FrontierSquaresSpiral(u8 taskId) { - while (sPhase2_FrontierSquaresSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierSquaresSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Phase2Task_FrontierSquaresScroll(u8 taskId) +static void Task_FrontierSquaresScroll(u8 taskId) { - while (sPhase2_FrontierSquaresScroll_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierSquaresScroll_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Phase2_FrontierSquares_Func1(struct Task *task) +static bool8 FrontierSquares_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -4039,7 +4038,7 @@ static bool8 Phase2_FrontierSquares_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquares_Func2(struct Task *task) +static bool8 FrontierSquares_Func2(struct Task *task) { CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, 4, 4, task->tData2, task->tData3, 4, 4, 0xF, 0, 0); CopyBgTilemapBufferToVram(0); @@ -4057,7 +4056,7 @@ static bool8 Phase2_FrontierSquares_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquares_Func3(struct Task *task) +static bool8 FrontierSquares_Func3(struct Task *task) { u8 i; u16 *tilemap, *tileset; @@ -4098,7 +4097,7 @@ static bool8 Phase2_FrontierSquares_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresSpiral_Func1(struct Task *task) +static bool8 FrontierSquaresSpiral_Func1(struct Task *task) { u16 *tilemap, *tileset; @@ -4120,7 +4119,7 @@ static bool8 Phase2_FrontierSquaresSpiral_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresSpiral_Func2(struct Task *task) +static bool8 FrontierSquaresSpiral_Func2(struct Task *task) { u8 var = gUnknown_085C9A30[task->tData2]; u8 varMod = var % 7; @@ -4133,7 +4132,7 @@ static bool8 Phase2_FrontierSquaresSpiral_Func2(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresSpiral_Func3(struct Task *task) +static bool8 FrontierSquaresSpiral_Func3(struct Task *task) { BlendPalette(0xE0, 0x10, 3, 0); BlendPalettes(PALETTES_ALL & ~(0x8000 | 0x4000), 0x10, 0); @@ -4145,7 +4144,7 @@ static bool8 Phase2_FrontierSquaresSpiral_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresSpiral_Func4(struct Task *task) +static bool8 FrontierSquaresSpiral_Func4(struct Task *task) { if ((task->tData3 ^= 1)) { @@ -4188,7 +4187,7 @@ static bool8 Phase2_FrontierSquaresSpiral_Func4(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquares_End(struct Task *task) +static bool8 FrontierSquares_End(struct Task *task) { FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); CopyBgTilemapBufferToVram(0); @@ -4213,7 +4212,7 @@ static void sub_814ABE4(u8 taskId) } } -static bool8 Phase2_FrontierSquaresScroll_Func1(struct Task *task) +static bool8 FrontierSquaresScroll_Func1(struct Task *task) { u8 taskId = 0; u16 *tilemap, *tileset; @@ -4255,7 +4254,7 @@ static bool8 Phase2_FrontierSquaresScroll_Func1(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresScroll_Func2(struct Task *task) +static bool8 FrontierSquaresScroll_Func2(struct Task *task) { u8 var = gUnknown_085C9A53[task->tData2]; u8 varDiv = var / 8; @@ -4282,7 +4281,7 @@ static bool8 Phase2_FrontierSquaresScroll_Func2(struct Task *task) return 0; } -static bool8 Phase2_FrontierSquaresScroll_Func3(struct Task *task) +static bool8 FrontierSquaresScroll_Func3(struct Task *task) { BlendPalettes(PALETTES_ALL & ~(0x8000), 0x10, 0); @@ -4292,7 +4291,7 @@ static bool8 Phase2_FrontierSquaresScroll_Func3(struct Task *task) return FALSE; } -static bool8 Phase2_FrontierSquaresScroll_Func4(struct Task *task) +static bool8 FrontierSquaresScroll_Func4(struct Task *task) { u8 var = gUnknown_085C9A53[task->tData2]; u8 varDiv = var / 8; @@ -4314,7 +4313,7 @@ static bool8 Phase2_FrontierSquaresScroll_Func4(struct Task *task) #undef tSub32_Y_delta #undef tSub32_Bool -static bool8 Phase2_FrontierSquaresScroll_Func5(struct Task *task) +static bool8 FrontierSquaresScroll_Func5(struct Task *task) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c index 2d34c9f86af1..3b35e53aa5aa 100644 --- a/src/battle_transition_frontier.c +++ b/src/battle_transition_frontier.c @@ -21,7 +21,6 @@ typedef bool8 (*TransitionStateFunc)(struct Task *task); -// this file's functions static void SpriteCB_LogoCircleSlide(struct Sprite *sprite); static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite); static bool8 WaitForLogoCirclesAnim(struct Task *task); @@ -46,7 +45,6 @@ static bool8 CirclesSymmetricSpiralInSeq_End(struct Task *task); #define PALTAG_LOGO_CIRCLES 0x2E90 -// const rom data static const u32 sLogoCenter_Gfx[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_center.4bpp.lz"); static const u32 sLogoCenter_Tilemap[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_center.bin"); static const u32 sLogoCircles_Gfx[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_circles.4bpp.lz"); @@ -121,7 +119,7 @@ static const struct SpriteTemplate sSpriteTemplate_LogoCircles = .callback = SpriteCallbackDummy, }; -static const TransitionStateFunc sPhase2_FrontierCirclesMeet_Funcs[] = +static const TransitionStateFunc sFrontierCirclesMeet_Funcs[] = { Circles_Init, CirclesMeet_CreateSprites, @@ -130,7 +128,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesMeet_Funcs[] = CirclesMeet_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesCross_Funcs[] = +static const TransitionStateFunc sFrontierCirclesCross_Funcs[] = { Circles_Init, CirclesCross_CreateSprites, @@ -139,7 +137,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesCross_Funcs[] = CirclesCross_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[] = +static const TransitionStateFunc sFrontierCirclesAsymmetricSpiral_Funcs[] = { Circles_Init, CirclesAsymmetricSpiral_CreateSprites, @@ -148,7 +146,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[] CirclesAsymmetricSpiral_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiral_Funcs[] = +static const TransitionStateFunc sFrontierCirclesSymmetricSpiral_Funcs[] = { Circles_Init, CirclesSymmetricSpiral_CreateSprites, @@ -157,7 +155,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiral_Funcs[] CirclesSymmetricSpiral_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesMeetInSeq_Funcs[] = +static const TransitionStateFunc sFrontierCirclesMeetInSeq_Funcs[] = { Circles_Init, CirclesMeetInSeq_CreateSprites, @@ -166,7 +164,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesMeetInSeq_Funcs[] = CirclesMeetInSeq_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesCrossInSeq_Funcs[] = +static const TransitionStateFunc sFrontierCirclesCrossInSeq_Funcs[] = { Circles_Init, CirclesCrossInSeq_CreateSprites, @@ -175,7 +173,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesCrossInSeq_Funcs[] = CirclesCrossInSeq_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Funcs[] = +static const TransitionStateFunc sFrontierCirclesAsymmetricSpiralInSeq_Funcs[] = { Circles_Init, CirclesAsymmetricSpiralInSeq_CreateSprites, @@ -184,7 +182,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Fu CirclesAsymmetricSpiralInSeq_End }; -static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiralInSeq_Funcs[] = +static const TransitionStateFunc sFrontierCirclesSymmetricSpiralInSeq_Funcs[] = { Circles_Init, CirclesSymmetricSpiralInSeq_CreateSprites, @@ -193,7 +191,6 @@ static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiralInSeq_Fun CirclesSymmetricSpiralInSeq_End }; -// code static void LoadLogoGfx(void) { u16 *dst1, *dst2; @@ -401,9 +398,9 @@ static bool8 WaitForLogoCirclesAnim(struct Task *task) return FALSE; } -void Phase2Task_FrontierCirclesMeet(u8 taskId) +void Task_FrontierCirclesMeet(u8 taskId) { - while (sPhase2_FrontierCirclesMeet_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesMeet_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesMeet_CreateSprites(struct Task *task) @@ -421,15 +418,15 @@ static bool8 CirclesMeet_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesMeet)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesMeet)); } return FALSE; } -void Phase2Task_FrontierCirclesCross(u8 taskId) +void Task_FrontierCirclesCross(u8 taskId) { - while (sPhase2_FrontierCirclesCross_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesCross_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesCross_CreateSprites(struct Task *task) @@ -447,15 +444,15 @@ static bool8 CirclesCross_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesCross)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesCross)); } return FALSE; } -void Phase2Task_FrontierCirclesAsymmetricSpiral(u8 taskId) +void Task_FrontierCirclesAsymmetricSpiral(u8 taskId) { - while (sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesAsymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesAsymmetricSpiral_CreateSprites(struct Task *task) @@ -473,15 +470,15 @@ static bool8 CirclesAsymmetricSpiral_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesAsymmetricSpiral)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesAsymmetricSpiral)); } return FALSE; } -void Phase2Task_FrontierCirclesSymmetricSpiral(u8 taskId) +void Task_FrontierCirclesSymmetricSpiral(u8 taskId) { - while (sPhase2_FrontierCirclesSymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesSymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesSymmetricSpiral_CreateSprites(struct Task *task) @@ -499,15 +496,15 @@ static bool8 CirclesSymmetricSpiral_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesSymmetricSpiral)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesSymmetricSpiral)); } return FALSE; } -void Phase2Task_FrontierCirclesMeetInSeq(u8 taskId) +void Task_FrontierCirclesMeetInSeq(u8 taskId) { - while (sPhase2_FrontierCirclesMeetInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesMeetInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesMeetInSeq_CreateSprites(struct Task *task) @@ -535,15 +532,15 @@ static bool8 CirclesMeetInSeq_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesMeetInSeq)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesMeetInSeq)); } return FALSE; } -void Phase2Task_FrontierCirclesCrossInSeq(u8 taskId) +void Task_FrontierCirclesCrossInSeq(u8 taskId) { - while (sPhase2_FrontierCirclesCrossInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesCrossInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesCrossInSeq_CreateSprites(struct Task *task) @@ -571,15 +568,15 @@ static bool8 CirclesCrossInSeq_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesCrossInSeq)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesCrossInSeq)); } return FALSE; } -void Phase2Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId) +void Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId) { - while (sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesAsymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesAsymmetricSpiralInSeq_CreateSprites(struct Task *task) @@ -607,15 +604,15 @@ static bool8 CirclesAsymmetricSpiralInSeq_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesAsymmetricSpiralInSeq)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesAsymmetricSpiralInSeq)); } return FALSE; } -void Phase2Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId) +void Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId) { - while (sPhase2_FrontierCirclesSymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sFrontierCirclesSymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } static bool8 CirclesSymmetricSpiralInSeq_CreateSprites(struct Task *task) @@ -643,7 +640,7 @@ static bool8 CirclesSymmetricSpiralInSeq_End(struct Task *task) if (!gPaletteFade.active) { DestroyLogoCirclesGfx(task); - DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesSymmetricSpiralInSeq)); + DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesSymmetricSpiralInSeq)); } return FALSE; diff --git a/src/tileset_anims.c b/src/tileset_anims.c index f566fe3e0e4a..71f8044f9f55 100644 --- a/src/tileset_anims.c +++ b/src/tileset_anims.c @@ -1169,7 +1169,7 @@ static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) { CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % 4], gPlttBufferUnfaded + 0x80, 32); BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); - if ((u8)FindTaskIdByFunc(TransitionPhase1_Task_RunFuncs) != TASK_NONE) + if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) != TASK_NONE) { sSecondaryTilesetAnimCallback = TilesetAnim_BattleDome2; sSecondaryTilesetAnimCounterMax = 32; @@ -1179,7 +1179,7 @@ static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) static void BlendAnimPalette_BattleDome_FloorLightsNoBlend(u16 timer) { CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % 4], gPlttBufferUnfaded + 0x80, 32); - if ((u8)FindTaskIdByFunc(TransitionPhase1_Task_RunFuncs) == TASK_NONE) + if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) == TASK_NONE) { BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); if (!--sSecondaryTilesetAnimCounterMax) From 120e75d275988c5d723ac827e141d4ea5195e461 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 25 Oct 2021 18:03:14 +0100 Subject: [PATCH 333/762] Document the CloseBattlePikeCurtain special --- include/constants/metatile_labels.h | 1 + include/global.fieldmap.h | 5 +++++ src/field_specials.c | 34 +++++++++++++++++++---------- 3 files changed, 29 insertions(+), 11 deletions(-) diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index b4ee3eacf5af..51912008282e 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -352,6 +352,7 @@ #define METATILE_InsideShip_IntactDoor_Bottom_Interior 0x297 // gTileset_BattlePike +#define METATILE_BattlePike_CurtainFrames_Start 0x201 #define METATILE_BattlePike_Curtain_Stage0_Tile0 0x24A #define METATILE_BattlePike_Curtain_Stage0_Tile1 0x251 #define METATILE_BattlePike_Curtain_Stage0_Tile2 0x252 diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 41b8539ffdea..a1e752415580 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -36,6 +36,11 @@ struct Tileset /*0x14*/ TilesetCB callback; }; +// Tilesets do not actually have s strict width. +// This constant is simply used for the offset between rows of metatiles for +// large tiles, such as the Battle Pike's curtain tile. +#define TILESET_WIDTH 8 + struct MapLayout { /*0x00*/ s32 width; diff --git a/src/field_specials.c b/src/field_specials.c index ab02f9938b32..17790532b33d 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3931,13 +3931,18 @@ static void Task_LoopWingFlapSE(u8 taskId) #undef playCount #undef delay +#define CURTAIN_HEIGHT 4 +#define CURTAIN_WIDTH 3 +#define tFrameTimer data +#define tCurrentFrame data[3] + void CloseBattlePikeCurtain(void) { u8 taskId = CreateTask(Task_CloseBattlePikeCurtain, 8); - gTasks[taskId].data[0] = 4; - gTasks[taskId].data[1] = 4; - gTasks[taskId].data[2] = 4; - gTasks[taskId].data[3] = 0; + gTasks[taskId].tFrameTimer[0] = 4; + gTasks[taskId].tFrameTimer[1] = 4; + gTasks[taskId].tFrameTimer[2] = 4; + gTasks[taskId].tCurrentFrame = 0; } static void Task_CloseBattlePikeCurtain(u8 taskId) @@ -3945,19 +3950,21 @@ static void Task_CloseBattlePikeCurtain(u8 taskId) u8 x, y; s16 *data = gTasks[taskId].data; - data[data[3]]--; - if (data[data[3]] == 0) + tFrameTimer[tCurrentFrame]--; + if (tFrameTimer[tCurrentFrame] == 0) { - for (y = 0; y < 4; y++) + for (y = 0; y < CURTAIN_HEIGHT; y++) { - for (x = 0; x < 3; x++) + for (x = 0; x < CURTAIN_WIDTH; x++) { - MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + x + 6, gSaveBlock1Ptr->pos.y + y + 4, x + 513 + y * 8 + data[3] * 32); + MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + x + MAP_OFFSET - 1, + gSaveBlock1Ptr->pos.y + y + MAP_OFFSET - 3, + (x + METATILE_BattlePike_CurtainFrames_Start) + (y * TILESET_WIDTH) + (tCurrentFrame * CURTAIN_HEIGHT * TILESET_WIDTH)); } } DrawWholeMapView(); - data[3]++; - if (data[3] == 3) + tCurrentFrame++; + if (tCurrentFrame == 3) { DestroyTask(taskId); EnableBothScriptContexts(); @@ -3965,6 +3972,11 @@ static void Task_CloseBattlePikeCurtain(u8 taskId) } } +#undef CURTAIN_HEIGHT +#undef CURTAIN_WIDTH +#undef tFrameTimer +#undef tCurrentFrame + void GetBattlePyramidHint(void) { gSpecialVar_Result = gSpecialVar_0x8004 / 7; From 0637910f5856ea0ee0e877f81c57150f7101d419 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 25 Oct 2021 18:07:46 +0100 Subject: [PATCH 334/762] Use the TILESET_WIDTH constant in rotating_tile_puzzle.c --- src/rotating_tile_puzzle.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index 56be9736f516..b8dd03f9e5f3 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -134,14 +134,14 @@ u16 MoveRotatingTileObjects(u8 puzzleNumber) continue; // Object is on a metatile after the puzzle tile section (never occurs, in both cases the puzzle tiles are last) - if ((u8)((metatile - puzzleTileStart) / 8) >= 5) + if ((u8)((metatile - puzzleTileStart) / TILESET_WIDTH) >= 5) continue; // Object is on a metatile in puzzle tile section, but not one of the currently rotating color - if ((u8)((metatile - puzzleTileStart) / 8) != puzzleNumber) + if ((u8)((metatile - puzzleTileStart) / TILESET_WIDTH) != puzzleNumber) continue; - puzzleTileNum = (u8)((metatile - puzzleTileStart) % 8); + puzzleTileNum = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); // First 4 puzzle tiles are the colored arrows if (puzzleTileNum < 4) @@ -221,7 +221,7 @@ void TurnRotatingTileObjects(void) // prevPuzzleTileNum will similarly be a number [0-3] representing the arrow tile the object just moved from // All the puzzles are oriented counter-clockwise and can only move 1 step at a time, so the difference between the current tile and the previous tile will always either be -1 or 3 (0-1, 1-2, 2-3, 3-0) // Which means tileDifference will always either be -1 or 3 after the below subtraction, and rotation will always be ROTATE_COUNTERCLOCKWISE after the following conditionals - tileDifference = (u8)((metatile - puzzleTileStart) % 8); + tileDifference = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); tileDifference -= (sRotatingTilePuzzle->objects[i].prevPuzzleTileNum); // Always true, see above @@ -331,7 +331,7 @@ static void TurnUnsavedRotatingTileObject(u8 eventTemplateId, u8 puzzleTileNum) else puzzleTileStart = METATILE_TrickHousePuzzle_Arrow_YellowOnWhite_Right; - tileDifference = (u8)((metatile - puzzleTileStart) % 8); + tileDifference = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); tileDifference -= puzzleTileNum; if (tileDifference < 0 || tileDifference == 3) From 5bce17cbcee66842b33e1c46c2a71684ee8093fb Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 25 Oct 2021 18:11:06 +0100 Subject: [PATCH 335/762] Fix typo in the TILESET_WIDTH comment --- include/global.fieldmap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index a1e752415580..5c673fc45218 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -36,7 +36,7 @@ struct Tileset /*0x14*/ TilesetCB callback; }; -// Tilesets do not actually have s strict width. +// Tilesets do not actually have a strict width. // This constant is simply used for the offset between rows of metatiles for // large tiles, such as the Battle Pike's curtain tile. #define TILESET_WIDTH 8 From 7b5267c799579047ac012928024ce92918c541fe Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 25 Oct 2021 20:51:04 +0100 Subject: [PATCH 336/762] Rename TILESET_WIDTH to METATILE_ROW_WIDTH --- include/global.fieldmap.h | 10 +++++----- src/field_specials.c | 2 +- src/rotating_tile_puzzle.c | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 5c673fc45218..5d788ddf7d77 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -11,6 +11,11 @@ #define METATILE_ID(tileset, name) (METATILE_##tileset##_##name) +// Rows of metatiles do not actually have a strict width. +// This constant is used for calculations for finding the next row of metatiles +// for constructing large tiles, such as the Battle Pike's curtain tile. +#define METATILE_ROW_WIDTH 8 + enum { CONNECTION_INVALID = -1, @@ -36,11 +41,6 @@ struct Tileset /*0x14*/ TilesetCB callback; }; -// Tilesets do not actually have a strict width. -// This constant is simply used for the offset between rows of metatiles for -// large tiles, such as the Battle Pike's curtain tile. -#define TILESET_WIDTH 8 - struct MapLayout { /*0x00*/ s32 width; diff --git a/src/field_specials.c b/src/field_specials.c index 17790532b33d..53e1e7fb763a 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3959,7 +3959,7 @@ static void Task_CloseBattlePikeCurtain(u8 taskId) { MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + x + MAP_OFFSET - 1, gSaveBlock1Ptr->pos.y + y + MAP_OFFSET - 3, - (x + METATILE_BattlePike_CurtainFrames_Start) + (y * TILESET_WIDTH) + (tCurrentFrame * CURTAIN_HEIGHT * TILESET_WIDTH)); + (x + METATILE_BattlePike_CurtainFrames_Start) + (y * METATILE_ROW_WIDTH) + (tCurrentFrame * CURTAIN_HEIGHT * METATILE_ROW_WIDTH)); } } DrawWholeMapView(); diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index b8dd03f9e5f3..2e919f550a7e 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -134,14 +134,14 @@ u16 MoveRotatingTileObjects(u8 puzzleNumber) continue; // Object is on a metatile after the puzzle tile section (never occurs, in both cases the puzzle tiles are last) - if ((u8)((metatile - puzzleTileStart) / TILESET_WIDTH) >= 5) + if ((u8)((metatile - puzzleTileStart) / METATILE_ROW_WIDTH) >= 5) continue; // Object is on a metatile in puzzle tile section, but not one of the currently rotating color - if ((u8)((metatile - puzzleTileStart) / TILESET_WIDTH) != puzzleNumber) + if ((u8)((metatile - puzzleTileStart) / METATILE_ROW_WIDTH) != puzzleNumber) continue; - puzzleTileNum = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); + puzzleTileNum = (u8)((metatile - puzzleTileStart) % METATILE_ROW_WIDTH); // First 4 puzzle tiles are the colored arrows if (puzzleTileNum < 4) @@ -221,7 +221,7 @@ void TurnRotatingTileObjects(void) // prevPuzzleTileNum will similarly be a number [0-3] representing the arrow tile the object just moved from // All the puzzles are oriented counter-clockwise and can only move 1 step at a time, so the difference between the current tile and the previous tile will always either be -1 or 3 (0-1, 1-2, 2-3, 3-0) // Which means tileDifference will always either be -1 or 3 after the below subtraction, and rotation will always be ROTATE_COUNTERCLOCKWISE after the following conditionals - tileDifference = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); + tileDifference = (u8)((metatile - puzzleTileStart) % METATILE_ROW_WIDTH); tileDifference -= (sRotatingTilePuzzle->objects[i].prevPuzzleTileNum); // Always true, see above @@ -331,7 +331,7 @@ static void TurnUnsavedRotatingTileObject(u8 eventTemplateId, u8 puzzleTileNum) else puzzleTileStart = METATILE_TrickHousePuzzle_Arrow_YellowOnWhite_Right; - tileDifference = (u8)((metatile - puzzleTileStart) % TILESET_WIDTH); + tileDifference = (u8)((metatile - puzzleTileStart) % METATILE_ROW_WIDTH); tileDifference -= puzzleTileNum; if (tileDifference < 0 || tileDifference == 3) From 1056209d8e62770bac18cb6a4bc34ce96db30f12 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 25 Oct 2021 10:42:08 -0400 Subject: [PATCH 337/762] Start battle_transition documenting --- src/battle_setup.c | 39 +- src/battle_transition.c | 2327 ++++++++++++++++++++------------------- 2 files changed, 1201 insertions(+), 1165 deletions(-) diff --git a/src/battle_setup.c b/src/battle_setup.c index 2a716e08c71f..6a4afe7462da 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -47,8 +47,14 @@ #include "constants/trainers.h" #include "constants/trainer_hill.h" -enum -{ +enum { + TRANSITION_TYPE_NORMAL, + TRANSITION_TYPE_CAVE, + TRANSITION_TYPE_FLASH, + TRANSITION_TYPE_WATER, +}; + +enum { TRAINER_PARAM_LOAD_VAL_8BIT, TRAINER_PARAM_LOAD_VAL_16BIT, TRAINER_PARAM_LOAD_VAL_32BIT, @@ -85,7 +91,6 @@ static void HandleRematchVarsOnBattleEnd(void); static const u8 *GetIntroSpeechOfApproachingTrainer(void); static const u8 *GetTrainerCantBattleSpeech(void); -// ewram vars EWRAM_DATA static u16 sTrainerBattleMode = 0; EWRAM_DATA u16 gTrainerBattleOpponent_A = 0; EWRAM_DATA u16 gTrainerBattleOpponent_B = 0; @@ -103,24 +108,22 @@ EWRAM_DATA static u8 *sTrainerBBattleScriptRetAddr = NULL; EWRAM_DATA static bool8 sShouldCheckTrainerBScript = FALSE; EWRAM_DATA static u8 sNoOfPossibleTrainerRetScripts = 0; -// const rom data - // The first transition is used if the enemy pokemon are lower level than our pokemon. // Otherwise, the second transition is used. static const u8 sBattleTransitionTable_Wild[][2] = { - {B_TRANSITION_SLICE, B_TRANSITION_WHITEFADE}, // Normal - {B_TRANSITION_CLOCKWISE_BLACKFADE, B_TRANSITION_GRID_SQUARES}, // Cave - {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, // Cave with flash used - {B_TRANSITION_WAVE, B_TRANSITION_RIPPLE}, // Water + [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_SLICE, B_TRANSITION_WHITEFADE}, + [TRANSITION_TYPE_CAVE] = {B_TRANSITION_CLOCKWISE_BLACKFADE, B_TRANSITION_GRID_SQUARES}, + [TRANSITION_TYPE_FLASH] = {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, + [TRANSITION_TYPE_WATER] = {B_TRANSITION_WAVE, B_TRANSITION_RIPPLE}, }; static const u8 sBattleTransitionTable_Trainer[][2] = { - {B_TRANSITION_POKEBALLS_TRAIL, B_TRANSITION_SHARDS}, // Normal - {B_TRANSITION_SHUFFLE, B_TRANSITION_BIG_POKEBALL}, // Cave - {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, // Cave with flash used - {B_TRANSITION_SWIRL, B_TRANSITION_RIPPLE}, // Water + [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_POKEBALLS_TRAIL, B_TRANSITION_SHARDS}, + [TRANSITION_TYPE_CAVE] = {B_TRANSITION_SHUFFLE, B_TRANSITION_BIG_POKEBALL}, + [TRANSITION_TYPE_FLASH] = {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, + [TRANSITION_TYPE_WATER] = {B_TRANSITION_SWIRL, B_TRANSITION_RIPPLE}, }; // Battle Frontier (excluding Pyramid and Dome, which have their own tables below) @@ -697,20 +700,20 @@ static u8 GetBattleTransitionTypeByMap(void) PlayerGetDestCoords(&x, &y); tileBehavior = MapGridGetMetatileBehaviorAt(x, y); if (Overworld_GetFlashLevel()) - return B_TRANSITION_SHUFFLE; + return TRANSITION_TYPE_FLASH; if (!MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) { switch (gMapHeader.mapType) { case MAP_TYPE_UNDERGROUND: - return B_TRANSITION_SWIRL; + return TRANSITION_TYPE_CAVE; case MAP_TYPE_UNDERWATER: - return B_TRANSITION_BIG_POKEBALL; + return TRANSITION_TYPE_WATER; default: - return B_TRANSITION_BLUR; + return TRANSITION_TYPE_NORMAL; } } - return B_TRANSITION_BIG_POKEBALL; + return TRANSITION_TYPE_WATER; } static u16 GetSumOfPlayerPartyLevel(u8 numMons) diff --git a/src/battle_transition.c b/src/battle_transition.c index 983a502176f4..72edf92d5c78 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -25,6 +25,16 @@ #include "constants/trainers.h" #include "constants/rgb.h" +#define PALTAG_UNUSED_MUGSHOT 0x100A + +#define B_TRANS_DMA_FLAGS (1 | ((DMA_SRC_INC | DMA_DEST_FIXED | DMA_REPEAT | DMA_16BIT | DMA_START_HBLANK | DMA_ENABLE) << 16)) + +#define SET_TILEMAP_TILE(ptr, posY, posX, toStore) \ +{ \ + u32 index = (posY) * 32 + posX; \ + ptr[index] = toStore; \ +} + struct TransitionData { vu8 VBlank_DMA; @@ -32,19 +42,19 @@ struct TransitionData u16 WINOUT; u16 WIN0H; u16 WIN0V; - u16 field_A; // unused - u16 field_C; // unused + u16 unused1; + u16 unused2; u16 BLDCNT; u16 BLDALPHA; u16 BLDY; - s16 field_14; - s16 field_16; - s16 BG0HOFS_1; - s16 BG0HOFS_2; + s16 cameraX; + s16 cameraY; + s16 BG0HOFS_Lower; + s16 BG0HOFS_Upper; s16 BG0VOFS; // used but not set - s16 field_1E; // unused + s16 unused3; s16 field_20; - s16 field_22; // unused + s16 unused4; s16 data[11]; }; @@ -107,13 +117,13 @@ static void VBlankCB_Swirl(void); static void HBlankCB_Swirl(void); static void VBlankCB_Shuffle(void); static void HBlankCB_Shuffle(void); -static void VBlankCB0_BigPokeball(void); +static void VBlankCB_PatternWeave(void); static void VBlankCB1_BigPokeball(void); static void VBlankCB_Clockwise_BlackFade(void); static void VBlankCB_Ripple(void); static void HBlankCB_Ripple(void); -static void VBlankCB_30(void); -static void HBlankCB_30(void); +static void VBlankCB_FrontierLogoWave(void); +static void HBlankCB_FrontierLogoWave(void); static void VBlankCB_Wave(void); static void VBlankCB_Slice(void); static void HBlankCB_Slice(void); @@ -122,84 +132,84 @@ static void VBlankCB1_WhiteFade(void); static void HBlankCB_WhiteFade(void); static void VBlankCB_Shards(void); static void VBlankCB_Rayquaza(void); -static bool8 Blur_Func1(struct Task *task); -static bool8 Blur_Func2(struct Task *task); -static bool8 Blur_Func3(struct Task *task); -static bool8 Swirl_Func1(struct Task *task); -static bool8 Swirl_Func2(struct Task *task); -static bool8 Shuffle_Func1(struct Task *task); -static bool8 Shuffle_Func2(struct Task *task); -static bool8 Aqua_Func1(struct Task *task); -static bool8 Aqua_Func2(struct Task *task); -static bool8 Magma_Func1(struct Task *task); -static bool8 Magma_Func2(struct Task *task); +static bool8 Blur_Init(struct Task *task); +static bool8 Blur_Main(struct Task *task); +static bool8 Blur_End(struct Task *task); +static bool8 Swirl_Init(struct Task *task); +static bool8 Swirl_End(struct Task *task); +static bool8 Shuffle_Init(struct Task *task); +static bool8 Shuffle_End(struct Task *task); +static bool8 Aqua_Init(struct Task *task); +static bool8 Aqua_SetGfx(struct Task *task); +static bool8 Magma_Init(struct Task *task); +static bool8 Magma_SetGfx(struct Task *task); static bool8 FramesCountdown(struct Task *task); -static bool8 Regi_Func1(struct Task *task); -static bool8 Regice_Func2(struct Task *task); -static bool8 Registeel_Func2(struct Task *task); -static bool8 Regirock_Func2(struct Task *task); -static bool8 WeatherTrio_Func1(struct Task *task); -static bool8 WaitPaletteFade(struct Task *task); -static bool8 Kyogre_Func3(struct Task *task); -static bool8 Kyogre_Func4(struct Task *task); -static bool8 Kyogre_Func5(struct Task *task); -static bool8 Groudon_Func3(struct Task *task); -static bool8 Groudon_Func4(struct Task *task); -static bool8 Groudon_Func5(struct Task *task); -static bool8 WeatherDuo_Func6(struct Task *task); -static bool8 WeatherDuo_Func7(struct Task *task); -static bool8 BigPokeball_Func1(struct Task *task); -static bool8 BigPokeball_Func2(struct Task *task); -static bool8 BigPokeball_Func3(struct Task *task); -static bool8 BigPokeball_Func4(struct Task *task); -static bool8 BigPokeball_Func5(struct Task *task); -static bool8 BigPokeball_Func6(struct Task *task); -static bool8 PokeballsTrail_Func1(struct Task *task); -static bool8 PokeballsTrail_Func2(struct Task *task); -static bool8 PokeballsTrail_Func3(struct Task *task); -static bool8 Clockwise_BlackFade_Func1(struct Task *task); +static bool8 Regi_Init(struct Task *task); +static bool8 Regice_SetGfx(struct Task *task); +static bool8 Registeel_SetGfx(struct Task *task); +static bool8 Regirock_SetGfx(struct Task *task); +static bool8 WeatherTrio_BgFadeBlack(struct Task *task); +static bool8 WeatherTrio_WaitFade(struct Task *task); +static bool8 Kyogre_Init(struct Task *task); +static bool8 Kyogre_PalettePulsate(struct Task *task); +static bool8 Kyogre_PaletteBrighten(struct Task *task); +static bool8 Groudon_Init(struct Task *task); +static bool8 Groudon_PalettePulsate(struct Task *task); +static bool8 Groudon_PaletteBrighten(struct Task *task); +static bool8 WeatherDuo_FadeOut(struct Task *task); +static bool8 WeatherDuo_End(struct Task *task); +static bool8 BigPokeball_Init(struct Task *task); +static bool8 BigPokeball_SetGfx(struct Task *task); +static bool8 PatternWeave_1(struct Task *task); +static bool8 PatternWeave_2(struct Task *task); +static bool8 PatternWeave_3(struct Task *task); +static bool8 PatternWeave_End(struct Task *task); +static bool8 PokeballsTrail_Init(struct Task *task); +static bool8 PokeballsTrail_Main(struct Task *task); +static bool8 PokeballsTrail_End(struct Task *task); +static bool8 Clockwise_BlackFade_Init(struct Task *task); static bool8 Clockwise_BlackFade_Func2(struct Task *task); static bool8 Clockwise_BlackFade_Func3(struct Task *task); static bool8 Clockwise_BlackFade_Func4(struct Task *task); static bool8 Clockwise_BlackFade_Func5(struct Task *task); static bool8 Clockwise_BlackFade_Func6(struct Task *task); -static bool8 Clockwise_BlackFade_Func7(struct Task *task); -static bool8 Ripple_Func1(struct Task *task); +static bool8 Clockwise_BlackFade_End(struct Task *task); +static bool8 Ripple_Init(struct Task *task); static bool8 Ripple_Func2(struct Task *task); -static bool8 Wave_Func1(struct Task *task); +static bool8 Wave_Init(struct Task *task); static bool8 Wave_Func2(struct Task *task); -static bool8 Wave_Func3(struct Task *task); -static bool8 Slice_Func1(struct Task *task); +static bool8 Wave_End(struct Task *task); +static bool8 Slice_Init(struct Task *task); static bool8 Slice_Func2(struct Task *task); -static bool8 Slice_Func3(struct Task *task); -static bool8 WhiteFade_Func1(struct Task *task); +static bool8 Slice_End(struct Task *task); +static bool8 WhiteFade_Init(struct Task *task); static bool8 WhiteFade_Func2(struct Task *task); static bool8 WhiteFade_Func3(struct Task *task); static bool8 WhiteFade_Func4(struct Task *task); -static bool8 WhiteFade_Func5(struct Task *task); -static bool8 GridSquares_Func1(struct Task *task); +static bool8 WhiteFade_End(struct Task *task); +static bool8 GridSquares_Init(struct Task *task); static bool8 GridSquares_Func2(struct Task *task); -static bool8 GridSquares_Func3(struct Task *task); -static bool8 Shards_Func1(struct Task *task); +static bool8 GridSquares_End(struct Task *task); +static bool8 Shards_Init(struct Task *task); static bool8 Shards_Func2(struct Task *task); static bool8 Shards_Func3(struct Task *task); static bool8 Shards_Func4(struct Task *task); static bool8 Shards_Func5(struct Task *task); -static bool8 ShredSplit_Func1(struct Task *task); +static bool8 ShredSplit_Init(struct Task *task); static bool8 ShredSplit_Func2(struct Task *task); static bool8 ShredSplit_Func3(struct Task *task); -static bool8 ShredSplit_Func4(struct Task *task); -static bool8 Blackhole_Func1(struct Task *task); +static bool8 ShredSplit_End(struct Task *task); +static bool8 Blackhole_Init(struct Task *task); static bool8 Blackhole1_Func2(struct Task *task); static bool8 Blackhole1_Func3(struct Task *task); static bool8 Blackhole2_Func2(struct Task *task); -static bool8 RectangularSpiral_Func1(struct Task *task); +static bool8 RectangularSpiral_Init(struct Task *task); static bool8 RectangularSpiral_Func2(struct Task *task); -static bool8 RectangularSpiral_Func3(struct Task *task); -static bool8 FrontierLogoWiggle_Func1(struct Task *task); -static bool8 FrontierLogoWiggle_Func2(struct Task *task); -static bool8 FrontierLogoWave_Func1(struct Task *task); -static bool8 FrontierLogoWave_Func2(struct Task *task); +static bool8 RectangularSpiral_End(struct Task *task); +static bool8 FrontierLogoWiggle_Init(struct Task *task); +static bool8 FrontierLogoWiggle_SetGfx(struct Task *task); +static bool8 FrontierLogoWave_Init(struct Task *task); +static bool8 FrontierLogoWave_SetGfx(struct Task *task); static bool8 FrontierLogoWave_Func3(struct Task *task); static bool8 FrontierLogoWave_Func4(struct Task *task); static bool8 Rayquaza_Func3(struct Task *task); @@ -209,39 +219,39 @@ static bool8 Rayquaza_Func6(struct Task *task); static bool8 Rayquaza_Func7(struct Task *task); static bool8 Rayquaza_Func8(struct Task *task); static bool8 Rayquaza_Func9(struct Task *task); -static bool8 FrontierSquares_Func1(struct Task *task); +static bool8 FrontierSquares_Init(struct Task *task); static bool8 FrontierSquares_Func2(struct Task *task); static bool8 FrontierSquares_Func3(struct Task *task); static bool8 FrontierSquares_End(struct Task *task); -static bool8 FrontierSquaresSpiral_Func1(struct Task *task); +static bool8 FrontierSquaresSpiral_Init(struct Task *task); static bool8 FrontierSquaresSpiral_Func2(struct Task *task); static bool8 FrontierSquaresSpiral_Func3(struct Task *task); static bool8 FrontierSquaresSpiral_Func4(struct Task *task); -static bool8 FrontierSquaresScroll_Func1(struct Task *task); +static bool8 FrontierSquaresScroll_Init(struct Task *task); static bool8 FrontierSquaresScroll_Func2(struct Task *task); static bool8 FrontierSquaresScroll_Func3(struct Task *task); static bool8 FrontierSquaresScroll_Func4(struct Task *task); -static bool8 FrontierSquaresScroll_Func5(struct Task *task); -static bool8 Mugshot_Func1(struct Task *task); -static bool8 Mugshot_Func2(struct Task *task); -static bool8 Mugshot_Func3(struct Task *task); -static bool8 Mugshot_Func4(struct Task *task); -static bool8 Mugshot_Func5(struct Task *task); -static bool8 Mugshot_Func6(struct Task *task); -static bool8 Mugshot_Func7(struct Task *task); -static bool8 Mugshot_Func8(struct Task *task); -static bool8 Mugshot_Func9(struct Task *task); -static bool8 Mugshot_Func10(struct Task *task); -static void Task_MugShotTransition(u8 taskId); -static void Mugshots_CreateOpponentPlayerSprites(struct Task *task); +static bool8 FrontierSquaresScroll_End(struct Task *task); +static bool8 Mugshot_Init(struct Task *task); +static bool8 Mugshot_SetGfx(struct Task *task); +static bool8 Mugshot_ShowBanner(struct Task *task); +static bool8 Mugshot_StartOpponentSlide(struct Task *task); +static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task); +static bool8 Mugshot_WaitPlayerSlide(struct Task *task); +static bool8 Mugshot_GradualWhiteFade(struct Task *task); +static bool8 Mugshot_InitFadeWhiteToBlack(struct Task *task); +static bool8 Mugshot_FadeToBlack(struct Task *task); +static bool8 Mugshot_End(struct Task *task); +static void DoMugshotTransition(u8 taskId); +static void Mugshots_CreateTrainerPics(struct Task *task); static void VBlankCB0_Mugshots(void); static void VBlankCB1_Mugshots(void); static void HBlankCB_Mugshots(void); -static void InitTransitionStructVars(void); +static void InitTransitionData(void); static void FadeScreenBlack(void); static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4); static void sub_814A014(u16 *a0, s16 a1, s16 a2, s16 a3); -static void sub_8149F98(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize); +static void SetSinWave(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize); static void GetBg0TilemapDst(u16 **tileset); static void sub_814A1AC(s16 *a0, s16 a1, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6); static bool8 sub_814A228(s16 *a0, bool8 a1, bool8 a2); @@ -252,21 +262,21 @@ static bool8 Transition_Intro_1(struct Task *task); static bool8 Transition_Intro_2(struct Task *task); static bool8 IsIntroTaskDone(void); static bool16 sub_8149048(const s16 * const *arg0, struct StructRectangularSpiral *arg1); -static void sub_814713C(struct Sprite *sprite); -static void SpriteCb_TrainerPic(struct Sprite *sprite); +static void SpriteCB_FldEffPokeball(struct Sprite *sprite); +static void SpriteCB_MugshotTrainerPic(struct Sprite *sprite); static void sub_8149864(struct Sprite *sprite); -static bool8 TrainerPicCb_Nothing(struct Sprite *sprite); -static bool8 TrainerPicCb_SetSlideOffsets(struct Sprite *sprite); -static bool8 TrainerPicCb_Slide1(struct Sprite *sprite); -static bool8 TrainerPicCb_Slide2(struct Sprite *sprite); -static bool8 TrainerPicCb_Slide3(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Nothing(struct Sprite *sprite); +static bool8 MugshotTrainerPic_SetSlideOffsets(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Slide1(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Slide2(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Slide3(struct Sprite *sprite); static s16 sUnusedRectangularSpiralVar; static u8 sTestingTransitionId; static u8 sTestingTransitionState; static struct StructRectangularSpiral sRectangularSpiralTransition[4]; -EWRAM_DATA static struct TransitionData *sTransitionStructPtr = NULL; +EWRAM_DATA static struct TransitionData *sTransitionData = NULL; static const u32 sBigPokeball_Tileset[] = INCBIN_U32("graphics/battle_transitions/big_pokeball.4bpp"); static const u32 sPokeballTrail_Tileset[] = INCBIN_U32("graphics/battle_transitions/pokeball_trail.4bpp"); @@ -315,7 +325,8 @@ static const TaskFunc sTasks_Intro[B_TRANSITION_COUNT] = [0 ... B_TRANSITION_COUNT - 1] = &Task_Intro }; -// After the intro each transition has a unique main task +// After the intro each transition has a unique main task. +// This task will call the functions that do the transition effects. static const TaskFunc sTasks_Main[B_TRANSITION_COUNT] = { [B_TRANSITION_BLUR] = Task_Blur, @@ -372,102 +383,102 @@ static const TransitionStateFunc sTaskHandlers[] = static const TransitionStateFunc sBlur_Funcs[] = { - Blur_Func1, - Blur_Func2, - Blur_Func3 + Blur_Init, + Blur_Main, + Blur_End }; static const TransitionStateFunc sSwirl_Funcs[] = { - Swirl_Func1, - Swirl_Func2, + Swirl_Init, + Swirl_End, }; static const TransitionStateFunc sShuffle_Funcs[] = { - Shuffle_Func1, - Shuffle_Func2, + Shuffle_Init, + Shuffle_End, }; static const TransitionStateFunc sAqua_Funcs[] = { - Aqua_Func1, - Aqua_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, + Aqua_Init, + Aqua_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, FramesCountdown, - BigPokeball_Func6 + PatternWeave_End }; static const TransitionStateFunc sMagma_Funcs[] = { - Magma_Func1, - Magma_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, + Magma_Init, + Magma_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, FramesCountdown, - BigPokeball_Func6 + PatternWeave_End }; static const TransitionStateFunc sBigPokeball_Funcs[] = { - BigPokeball_Func1, - BigPokeball_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, - BigPokeball_Func6 + BigPokeball_Init, + BigPokeball_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, + PatternWeave_End }; static const TransitionStateFunc sRegice_Funcs[] = { - Regi_Func1, - Regice_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, - BigPokeball_Func6 + Regi_Init, + Regice_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, + PatternWeave_End }; static const TransitionStateFunc sRegisteel_Funcs[] = { - Regi_Func1, - Registeel_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, - BigPokeball_Func6 + Regi_Init, + Registeel_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, + PatternWeave_End }; static const TransitionStateFunc sRegirock_Funcs[] = { - Regi_Func1, - Regirock_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, - BigPokeball_Func6 + Regi_Init, + Regirock_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, + PatternWeave_End }; static const TransitionStateFunc sKyogre_Funcs[] = { - WeatherTrio_Func1, - WaitPaletteFade, - Kyogre_Func3, - Kyogre_Func4, - Kyogre_Func5, + WeatherTrio_BgFadeBlack, + WeatherTrio_WaitFade, + Kyogre_Init, + Kyogre_PalettePulsate, + Kyogre_PaletteBrighten, FramesCountdown, - WeatherDuo_Func6, - WeatherDuo_Func7 + WeatherDuo_FadeOut, + WeatherDuo_End }; static const TransitionStateFunc sPokeballsTrail_Funcs[] = { - PokeballsTrail_Func1, - PokeballsTrail_Func2, - PokeballsTrail_Func3 + PokeballsTrail_Init, + PokeballsTrail_Main, + PokeballsTrail_End }; static const s16 sUnknown_085C8B88[2] = {-16, 256}; @@ -476,48 +487,48 @@ static const s16 sUnknown_085C8B96[2] = {8, -8}; static const TransitionStateFunc sClockwise_BlackFade_Funcs[] = { - Clockwise_BlackFade_Func1, + Clockwise_BlackFade_Init, Clockwise_BlackFade_Func2, Clockwise_BlackFade_Func3, Clockwise_BlackFade_Func4, Clockwise_BlackFade_Func5, Clockwise_BlackFade_Func6, - Clockwise_BlackFade_Func7 + Clockwise_BlackFade_End }; static const TransitionStateFunc sRipple_Funcs[] = { - Ripple_Func1, + Ripple_Init, Ripple_Func2 }; static const TransitionStateFunc sWave_Funcs[] = { - Wave_Func1, + Wave_Init, Wave_Func2, - Wave_Func3 + Wave_End }; static const TransitionStateFunc sMugshot_Funcs[] = { - Mugshot_Func1, - Mugshot_Func2, - Mugshot_Func3, - Mugshot_Func4, - Mugshot_Func5, - Mugshot_Func6, - Mugshot_Func7, - Mugshot_Func8, - Mugshot_Func9, - Mugshot_Func10 + Mugshot_Init, + Mugshot_SetGfx, + Mugshot_ShowBanner, + Mugshot_StartOpponentSlide, + Mugshot_WaitStartPlayerSlide, + Mugshot_WaitPlayerSlide, + Mugshot_GradualWhiteFade, + Mugshot_InitFadeWhiteToBlack, + Mugshot_FadeToBlack, + Mugshot_End }; static const u8 sMugshotsTrainerPicIDsTable[MUGSHOTS_COUNT] = { - [MUGSHOT_SIDNEY] = TRAINER_PIC_ELITE_FOUR_SIDNEY, - [MUGSHOT_PHOEBE] = TRAINER_PIC_ELITE_FOUR_PHOEBE, - [MUGSHOT_GLACIA] = TRAINER_PIC_ELITE_FOUR_GLACIA, - [MUGSHOT_DRAKE] = TRAINER_PIC_ELITE_FOUR_DRAKE, + [MUGSHOT_SIDNEY] = TRAINER_PIC_ELITE_FOUR_SIDNEY, + [MUGSHOT_PHOEBE] = TRAINER_PIC_ELITE_FOUR_PHOEBE, + [MUGSHOT_GLACIA] = TRAINER_PIC_ELITE_FOUR_GLACIA, + [MUGSHOT_DRAKE] = TRAINER_PIC_ELITE_FOUR_DRAKE, [MUGSHOT_CHAMPION] = TRAINER_PIC_CHAMPION_WALLACE, }; static const s16 sMugshotsOpponentRotationScales[MUGSHOTS_COUNT][2] = @@ -530,40 +541,40 @@ static const s16 sMugshotsOpponentRotationScales[MUGSHOTS_COUNT][2] = }; static const s16 sMugshotsOpponentCoords[MUGSHOTS_COUNT][2] = { - [MUGSHOT_SIDNEY] = {0, 0}, - [MUGSHOT_PHOEBE] = {0, 0}, - [MUGSHOT_GLACIA] = {-4, 4}, - [MUGSHOT_DRAKE] = {0, 5}, - [MUGSHOT_CHAMPION] = {-8, 7}, + [MUGSHOT_SIDNEY] = { 0, 0}, + [MUGSHOT_PHOEBE] = { 0, 0}, + [MUGSHOT_GLACIA] = {-4, 4}, + [MUGSHOT_DRAKE] = { 0, 5}, + [MUGSHOT_CHAMPION] = {-8, 7}, }; -static const TransitionSpriteCallback sTrainerPicSpriteCbs[] = +static const TransitionSpriteCallback sMugshotTrainerPicFuncs[] = { - TrainerPicCb_Nothing, - TrainerPicCb_SetSlideOffsets, - TrainerPicCb_Slide1, - TrainerPicCb_Slide2, - TrainerPicCb_Nothing, - TrainerPicCb_Slide3, - TrainerPicCb_Nothing + MugshotTrainerPic_Nothing, + MugshotTrainerPic_SetSlideOffsets, + MugshotTrainerPic_Slide1, + MugshotTrainerPic_Slide2, + MugshotTrainerPic_Nothing, + MugshotTrainerPic_Slide3, + MugshotTrainerPic_Nothing }; static const s16 sTrainerPicSlideOffsets1[2] = {12, -12}; -static const s16 sTrainerPicSlideOffsets2[2] = {-1, 1}; +static const s16 sTrainerPicSlideOffsets2[2] = {-1, 1}; static const TransitionStateFunc sSlice_Funcs[] = { - Slice_Func1, + Slice_Init, Slice_Func2, - Slice_Func3 + Slice_End }; static const TransitionStateFunc sShredSplit_Funcs[] = { - ShredSplit_Func1, + ShredSplit_Init, ShredSplit_Func2, ShredSplit_Func3, - ShredSplit_Func4 + ShredSplit_End }; static const u8 gUnknown_085C8C64[] = {39, 119}; @@ -571,14 +582,14 @@ static const s16 gUnknown_085C8C66[] = {1, -1}; static const TransitionStateFunc sBlackhole1_Funcs[] = { - Blackhole_Func1, + Blackhole_Init, Blackhole1_Func2, Blackhole1_Func3 }; static const TransitionStateFunc sBlackhole2_Funcs[] = { - Blackhole_Func1, + Blackhole_Init, Blackhole2_Func2 }; @@ -586,9 +597,9 @@ static const s16 gUnknown_085C8C80[] = {-6, 4}; static const TransitionStateFunc sRectangularSpiral_Funcs[] = { - RectangularSpiral_Func1, + RectangularSpiral_Init, RectangularSpiral_Func2, - RectangularSpiral_Func3 + RectangularSpiral_End }; static const s16 gUnknown_085C8C90[] = {1, 27, 275, -1}; @@ -640,20 +651,20 @@ static const s16 *const *const gUnknown_085C8D38[] = static const TransitionStateFunc sGroudon_Funcs[] = { - WeatherTrio_Func1, - WaitPaletteFade, - Groudon_Func3, - Groudon_Func4, - Groudon_Func5, + WeatherTrio_BgFadeBlack, + WeatherTrio_WaitFade, + Groudon_Init, + Groudon_PalettePulsate, + Groudon_PaletteBrighten, FramesCountdown, - WeatherDuo_Func6, - WeatherDuo_Func7 + WeatherDuo_FadeOut, + WeatherDuo_End }; static const TransitionStateFunc sRayquaza_Funcs[] = { - WeatherTrio_Func1, - WaitPaletteFade, + WeatherTrio_BgFadeBlack, + WeatherTrio_WaitFade, Rayquaza_Func3, Rayquaza_Func4, Rayquaza_Func5, @@ -667,25 +678,25 @@ static const TransitionStateFunc sRayquaza_Funcs[] = static const TransitionStateFunc sWhiteFade_Funcs[] = { - WhiteFade_Func1, + WhiteFade_Init, WhiteFade_Func2, WhiteFade_Func3, WhiteFade_Func4, - WhiteFade_Func5 + WhiteFade_End }; static const s16 sUnknown_085C8DA0[] = {0, 20, 15, 40, 10, 25, 35, 5}; static const TransitionStateFunc sGridSquares_Funcs[] = { - GridSquares_Func1, + GridSquares_Init, GridSquares_Func2, - GridSquares_Func3 + GridSquares_End }; static const TransitionStateFunc sShards_Funcs[] = { - Shards_Func1, + Shards_Init, Shards_Func2, Shards_Func3, Shards_Func4, @@ -753,7 +764,7 @@ static const struct SpriteTemplate sSpriteTemplate_Pokeball = .anims = sSpriteAnimTable_Pokeball, .images = sSpriteImage_Pokeball, .affineAnims = sSpriteAffineAnimTable_Pokeball, - .callback = sub_814713C + .callback = SpriteCB_FldEffPokeball }; static const struct OamData sOam_UnusedBrendanLass = @@ -797,23 +808,23 @@ static const union AnimCmd *const sSpriteAnimTable_UnusedBrendanLass[] = static const struct SpriteTemplate sSpriteTemplate_UnusedBrendan = { .tileTag = TAG_NONE, - .paletteTag = 0x100A, + .paletteTag = PALTAG_UNUSED_MUGSHOT, .oam = &sOam_UnusedBrendanLass, .anims = sSpriteAnimTable_UnusedBrendanLass, .images = sImageTable_UnusedBrendan, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_TrainerPic + .callback = SpriteCB_MugshotTrainerPic }; static const struct SpriteTemplate sSpriteTemplate_UnusedLass = { .tileTag = TAG_NONE, - .paletteTag = 0x100A, + .paletteTag = PALTAG_UNUSED_MUGSHOT, .oam = &sOam_UnusedBrendanLass, .anims = sSpriteAnimTable_UnusedBrendanLass, .images = sImageTable_UnusedLass, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_TrainerPic + .callback = SpriteCB_MugshotTrainerPic }; static const u16 sFieldEffectPal_Pokeball[] = INCBIN_U16("graphics/field_effects/palettes/pokeball.gbapal"); @@ -844,32 +855,32 @@ static const u16 *const sPlayerMugshotsPals[GENDER_COUNT] = }; static const u16 sUnusedTrainerPalette[] = INCBIN_U16("graphics/battle_transitions/unused_trainer.gbapal"); -static const struct SpritePalette sSpritePalette_UnusedTrainer = {sUnusedTrainerPalette, 0x100A}; +static const struct SpritePalette sSpritePalette_UnusedTrainer = {sUnusedTrainerPalette, PALTAG_UNUSED_MUGSHOT}; static const u16 sBigPokeball_Tilemap[] = INCBIN_U16("graphics/battle_transitions/big_pokeball_map.bin"); static const u16 sMugshotsTilemap[] = INCBIN_U16("graphics/battle_transitions/elite_four_bg_map.bin"); static const TransitionStateFunc sFrontierLogoWiggle_Funcs[] = { - FrontierLogoWiggle_Func1, - FrontierLogoWiggle_Func2, - BigPokeball_Func3, - BigPokeball_Func4, - BigPokeball_Func5, - BigPokeball_Func6 + FrontierLogoWiggle_Init, + FrontierLogoWiggle_SetGfx, + PatternWeave_1, + PatternWeave_2, + PatternWeave_3, + PatternWeave_End }; static const TransitionStateFunc sFrontierLogoWave_Funcs[] = { - FrontierLogoWave_Func1, - FrontierLogoWave_Func2, + FrontierLogoWave_Init, + FrontierLogoWave_SetGfx, FrontierLogoWave_Func3, FrontierLogoWave_Func4 }; static const TransitionStateFunc sFrontierSquares_Funcs[] = { - FrontierSquares_Func1, + FrontierSquares_Init, FrontierSquares_Func2, FrontierSquares_Func3, FrontierSquares_End @@ -877,7 +888,7 @@ static const TransitionStateFunc sFrontierSquares_Funcs[] = static const TransitionStateFunc sFrontierSquaresSpiral_Funcs[] = { - FrontierSquaresSpiral_Func1, + FrontierSquaresSpiral_Init, FrontierSquaresSpiral_Func2, FrontierSquaresSpiral_Func3, FrontierSquaresSpiral_Func4, @@ -886,15 +897,35 @@ static const TransitionStateFunc sFrontierSquaresSpiral_Funcs[] = static const TransitionStateFunc sFrontierSquaresScroll_Funcs[] = { - FrontierSquaresScroll_Func1, + FrontierSquaresScroll_Init, FrontierSquaresScroll_Func2, FrontierSquaresScroll_Func3, FrontierSquaresScroll_Func4, - FrontierSquaresScroll_Func5 + FrontierSquaresScroll_End }; -static const u8 gUnknown_085C9A30[] = {0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x1b, 0x14, 0x0d, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x07, 0x0e, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x13, 0x0c, 0x0b, 0x0a, 0x09, 0x08, 0x0f, 0x10, 0x11, 0x12}; -static const u8 gUnknown_085C9A53[] = {0x00, 0x10, 0x29, 0x16, 0x2c, 0x02, 0x2b, 0x15, 0x2e, 0x1b, 0x09, 0x30, 0x26, 0x05, 0x39, 0x3b, 0x0c, 0x3f, 0x23, 0x1c, 0x0a, 0x35, 0x07, 0x31, 0x27, 0x17, 0x37, 0x01, 0x3e, 0x11, 0x3d, 0x1e, 0x06, 0x22, 0x0f, 0x33, 0x20, 0x3a, 0x0d, 0x2d, 0x25, 0x34, 0x0b, 0x18, 0x3c, 0x13, 0x38, 0x21, 0x1d, 0x32, 0x28, 0x36, 0x0e, 0x03, 0x2f, 0x14, 0x12, 0x19, 0x04, 0x24, 0x1a, 0x2a, 0x1f, 0x08, 0x00}; +static const u8 gUnknown_085C9A30[] = { + 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, + 0x1b, 0x14, 0x0d, 0x06, 0x05, 0x04, 0x03, + 0x02, 0x01, 0x00, 0x07, 0x0e, 0x15, 0x16, + 0x17, 0x18, 0x19, 0x1a, 0x13, 0x0c, 0x0b, + 0x0a, 0x09, 0x08, 0x0f, 0x10, 0x11, 0x12 +}; + +static const u8 gUnknown_085C9A53[] = { + 0x00, 0x10, 0x29, 0x16, 0x2c, 0x02, 0x2b, 0x15, + 0x2e, 0x1b, 0x09, 0x30, 0x26, 0x05, 0x39, 0x3b, + 0x0c, 0x3f, 0x23, 0x1c, 0x0a, 0x35, 0x07, 0x31, + 0x27, 0x17, 0x37, 0x01, 0x3e, 0x11, 0x3d, 0x1e, + 0x06, 0x22, 0x0f, 0x33, 0x20, 0x3a, 0x0d, 0x2d, + 0x25, 0x34, 0x0b, 0x18, 0x3c, 0x13, 0x38, 0x21, + 0x1d, 0x32, 0x28, 0x36, 0x0e, 0x03, 0x2f, 0x14, + 0x12, 0x19, 0x04, 0x24, 0x1a, 0x2a, 0x1f, 0x08 +}; + +//--------------------------- +// Main transition functions +//--------------------------- static void CB2_TestBattleTransition(void) { @@ -950,7 +981,7 @@ bool8 IsBattleTransitionDone(void) if (gTasks[taskId].tTransitionDone) { DestroyTask(taskId); - FREE_AND_SET_NULL(sTransitionStructPtr); + FREE_AND_SET_NULL(sTransitionData); return TRUE; } else @@ -963,7 +994,7 @@ static void LaunchBattleTransitionTask(u8 transitionId) { u8 taskId = CreateTask(Task_BattleTransition, 2); gTasks[taskId].tTransitionId = transitionId; - sTransitionStructPtr = AllocZeroed(sizeof(*sTransitionStructPtr)); + sTransitionData = AllocZeroed(sizeof(*sTransitionData)); } static void Task_BattleTransition(u8 taskId) @@ -1032,25 +1063,24 @@ static void Task_Intro(u8 taskId) } } -// sub-task for phase2 -#define tData1 data[1] -#define tData2 data[2] -#define tData3 data[3] -#define tData4 data[4] -#define tData5 data[5] -#define tData6 data[6] #define tFuncState data[7] -#define tFrames data[8] #define tOpponentSpriteId data[13] #define tPlayerSpriteId data[14] #define tMugshotId data[15] +//-------------------- +// B_TRANSITION_BLUR +//-------------------- + +#define tDelay data[1] +#define tCounter data[2] + static void Task_Blur(u8 taskId) { while (sBlur_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Blur_Func1(struct Task *task) +static bool8 Blur_Init(struct Task *task) { SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuRegBits(REG_OFFSET_BG1CNT, BGCNT_MOSAIC); @@ -1060,25 +1090,25 @@ static bool8 Blur_Func1(struct Task *task) return TRUE; } -static bool8 Blur_Func2(struct Task *task) +static bool8 Blur_Main(struct Task *task) { - if (task->tData1 != 0) + if (task->tDelay != 0) { - task->tData1--; + task->tDelay--; } else { - task->tData1 = 4; - if (++task->tData2 == 10) - BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_BLACK); - SetGpuReg(REG_OFFSET_MOSAIC, (task->tData2 & 15) * 17); - if (task->tData2 > 14) + task->tDelay = 4; + if (++task->tCounter == 10) + BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK); + SetGpuReg(REG_OFFSET_MOSAIC, (task->tCounter & 15) * 17); + if (task->tCounter > 14) task->tState++; } return FALSE; } -static bool8 Blur_Func3(struct Task *task) +static bool8 Blur_End(struct Task *task) { if (!gPaletteFade.active) { @@ -1088,17 +1118,27 @@ static bool8 Blur_Func3(struct Task *task) return FALSE; } +#undef tDelay +#undef tCounter + +//-------------------- +// B_TRANSITION_SWIRL +//-------------------- + +#define tSinIndex data[1] +#define tAmplitude data[2] + static void Task_Swirl(u8 taskId) { while (sSwirl_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Swirl_Func1(struct Task *task) +static bool8 Swirl_Init(struct Task *task) { - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK); - sub_8149F98(gScanlineEffectRegBuffers[1], sTransitionStructPtr->field_14, 0, 2, 0, 160); + BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 16, RGB_BLACK); + SetSinWave(gScanlineEffectRegBuffers[1], sTransitionData->cameraX, 0, 2, 0, DISPLAY_HEIGHT); SetVBlankCallback(VBlankCB_Swirl); SetHBlankCallback(HBlankCB_Swirl); @@ -1109,13 +1149,13 @@ static bool8 Swirl_Func1(struct Task *task) return FALSE; } -static bool8 Swirl_Func2(struct Task *task) +static bool8 Swirl_End(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - task->tData1 += 4; - task->tData2 += 8; + sTransitionData->VBlank_DMA = FALSE; + task->tSinIndex += 4; + task->tAmplitude += 8; - sub_8149F98(gScanlineEffectRegBuffers[0], sTransitionStructPtr->field_14, task->tData1, 2, task->tData2, 160); + SetSinWave(gScanlineEffectRegBuffers[0], sTransitionData->cameraX, task->tSinIndex, 2, task->tAmplitude, DISPLAY_HEIGHT); if (!gPaletteFade.active) { @@ -1123,15 +1163,15 @@ static bool8 Swirl_Func2(struct Task *task) DestroyTask(taskId); } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static void VBlankCB_Swirl(void) { VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); } static void HBlankCB_Swirl(void) @@ -1142,18 +1182,28 @@ static void HBlankCB_Swirl(void) REG_BG3HOFS = var; } +#undef tSinIndex +#undef tAmplitude + +//---------------------- +// B_TRANSITION_SHUFFLE +//---------------------- + +#define tSinVal data[1] +#define tAmplitude data[2] + static void Task_Shuffle(u8 taskId) { while (sShuffle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Shuffle_Func1(struct Task *task) +static bool8 Shuffle_Init(struct Task *task) { - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK); - memset(gScanlineEffectRegBuffers[1], sTransitionStructPtr->field_16, 0x140); + BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 16, RGB_BLACK); + memset(gScanlineEffectRegBuffers[1], sTransitionData->cameraY, DISPLAY_HEIGHT * 2); SetVBlankCallback(VBlankCB_Shuffle); SetHBlankCallback(HBlankCB_Shuffle); @@ -1164,35 +1214,35 @@ static bool8 Shuffle_Func1(struct Task *task) return FALSE; } -static bool8 Shuffle_Func2(struct Task *task) +static bool8 Shuffle_End(struct Task *task) { u8 i; - u16 r3, r4; + u16 amplitude, sinVal; - sTransitionStructPtr->VBlank_DMA = FALSE; - r4 = task->tData1; - r3 = task->tData2 >> 8; - task->tData1 += 4224; - task->tData2 += 384; + sTransitionData->VBlank_DMA = FALSE; + sinVal = task->tSinVal; + amplitude = task->tAmplitude >> 8; + task->tSinVal += 4224; + task->tAmplitude += 384; - for (i = 0; i < 160; i++, r4 += 4224) + for (i = 0; i < DISPLAY_HEIGHT; i++, sinVal += 4224) { - u16 var = r4 / 256; - gScanlineEffectRegBuffers[0][i] = sTransitionStructPtr->field_16 + Sin(var, r3); + u16 sinIndex = sinVal / 256; + gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(sinIndex, amplitude); } if (!gPaletteFade.active) DestroyTask(FindTaskIdByFunc(Task_Shuffle)); - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static void VBlankCB_Shuffle(void) { VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); } static void HBlankCB_Shuffle(void) @@ -1203,6 +1253,32 @@ static void HBlankCB_Shuffle(void) REG_BG3VOFS = var; } +#undef tSinVal +#undef tAmplitude + +//------------------------------------------------------------------------ +// B_TRANSITION_BIG_POKEBALL, B_TRANSITION_AQUA, B_TRANSITION_MAGMA, +// B_TRANSITION_REGICE, B_TRANSITION_REGISTEEL, B_TRANSITION_REGIROCK +// and B_TRANSITION_KYOGRE. +// +// With the exception of B_TRANSITION_KYOGRE, all of the above transitions +// use the same weave effect (see the PatternWeave functions). +// Unclear why Kyogre's was grouped here and not with Groudon/Rayquaza's. +//------------------------------------------------------------------------ + +#define tBlendTarget1 data[1] +#define tBlendTarget2 data[2] +#define tBlendDelay data[3] + +// Data 1-3 change purpose for PatternWeave_End +#define tEndAmplitude data[1] +#define tEndAmplitudeDelta data[2] +#define tVBlankSet data[3] + +#define tSinIndex data[4] +#define tAmplitude data[5] +#define tEndDelay data[8] + static void Task_BigPokeball(u8 taskId) { while (sBigPokeball_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -1238,186 +1314,179 @@ static void Task_Kyogre(u8 taskId) while (sKyogre_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void sub_814669C(struct Task *task) +static void InitPatternWeaveTransition(struct Task *task) { s32 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - task->tData1 = 16; - task->tData2 = 0; - task->tData4 = 0; - task->tData5 = 0x4000; - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; - sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; - sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); - - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[1][i] = 240; - } + task->tBlendTarget1 = 16; + task->tBlendTarget2 = 0; + task->tSinIndex = 0; + task->tAmplitude = 0x4000; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = 0; + sTransitionData->WIN0H = DISPLAY_WIDTH; + sTransitionData->WIN0V = DISPLAY_HEIGHT; + sTransitionData->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); + + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[1][i] = DISPLAY_WIDTH; - SetVBlankCallback(VBlankCB0_BigPokeball); + SetVBlankCallback(VBlankCB_PatternWeave); } -static bool8 Aqua_Func1(struct Task *task) +static bool8 Aqua_Init(struct Task *task) { u16 *tilemap, *tileset; - task->tFrames = 60; - sub_814669C(task); + task->tEndDelay = 60; + InitPatternWeaveTransition(task); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sTeamAqua_Tileset, tileset); - LoadPalette(sEvilTeam_Palette, 0xF0, 0x20); + LoadPalette(sEvilTeam_Palette, 0xF0, sizeof(sEvilTeam_Palette)); task->tState++; return FALSE; } -static bool8 Magma_Func1(struct Task *task) +static bool8 Magma_Init(struct Task *task) { u16 *tilemap, *tileset; - task->tFrames = 60; - sub_814669C(task); + task->tEndDelay = 60; + InitPatternWeaveTransition(task); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sTeamMagma_Tileset, tileset); - LoadPalette(sEvilTeam_Palette, 0xF0, 0x20); + LoadPalette(sEvilTeam_Palette, 0xF0, sizeof(sEvilTeam_Palette)); task->tState++; return FALSE; } -static bool8 Regi_Func1(struct Task *task) +static bool8 Regi_Init(struct Task *task) { u16 *tilemap, *tileset; - task->tFrames = 60; - sub_814669C(task); + task->tEndDelay = 60; + InitPatternWeaveTransition(task); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); CpuCopy16(sRegis_Tileset, tileset, 0x2000); task->tState++; return FALSE; } -static bool8 BigPokeball_Func1(struct Task *task) +static bool8 BigPokeball_Init(struct Task *task) { u16 *tilemap, *tileset; - sub_814669C(task); + InitPatternWeaveTransition(task); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); - CpuCopy16(sBigPokeball_Tileset, tileset, 0x580); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, 0x20); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); + CpuCopy16(sBigPokeball_Tileset, tileset, sizeof(sBigPokeball_Tileset)); + LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } -#define SOME_VRAM_STORE(ptr, posY, posX, toStore) \ -{ \ - u32 index = (posY) * 32 + posX; \ - ptr[index] = toStore; \ -} - -static bool8 BigPokeball_Func2(struct Task *task) +static bool8 BigPokeball_SetGfx(struct Task *task) { s16 i, j; u16 *tilemap, *tileset; - const u16 *BigPokeballMap; + const u16 *bigPokeballMap; GetBg0TilesDst(&tilemap, &tileset); - BigPokeballMap = sBigPokeball_Tilemap; + bigPokeballMap = sBigPokeball_Tilemap; for (i = 0; i < 20; i++) { - for (j = 0; j < 30; j++, BigPokeballMap++) - { - SOME_VRAM_STORE(tilemap, i, j, *BigPokeballMap | 0xF000); - } + for (j = 0; j < 30; j++, bigPokeballMap++) + SET_TILEMAP_TILE(tilemap, i, j, *bigPokeballMap | 0xF000); } - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return TRUE; } -static bool8 Aqua_Func2(struct Task *task) +static bool8 Aqua_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sTeamAqua_Tilemap, tilemap); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return FALSE; } -static bool8 Magma_Func2(struct Task *task) +static bool8 Magma_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sTeamMagma_Tilemap, tilemap); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return FALSE; } -static bool8 Regice_Func2(struct Task *task) +static bool8 Regice_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - LoadPalette(sRegice_Palette, 0xF0, 0x20); + LoadPalette(sRegice_Palette, 0xF0, sizeof(sRegice_Palette)); CpuCopy16(sRegice_Tilemap, tilemap, 0x500); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return FALSE; } -static bool8 Registeel_Func2(struct Task *task) +static bool8 Registeel_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - LoadPalette(sRegisteel_Palette, 0xF0, 0x20); + LoadPalette(sRegisteel_Palette, 0xF0, sizeof(sRegisteel_Palette)); CpuCopy16(sRegisteel_Tilemap, tilemap, 0x500); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return FALSE; } -static bool8 Regirock_Func2(struct Task *task) +static bool8 Regirock_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - LoadPalette(sRegirock_Palette, 0xF0, 0x20); + LoadPalette(sRegirock_Palette, 0xF0, sizeof(sRegirock_Palette)); CpuCopy16(sRegirock_Tilemap, tilemap, 0x500); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return FALSE; } -static bool8 Kyogre_Func3(struct Task *task) +#define tTimer data[1] + +static bool8 Kyogre_Init(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sKyogre_Tileset, tileset); LZ77UnCompVram(sKyogre_Tilemap, tilemap); @@ -1425,48 +1494,48 @@ static bool8 Kyogre_Func3(struct Task *task) return FALSE; } -static bool8 Kyogre_Func4(struct Task *task) +static bool8 Kyogre_PalettePulsate(struct Task *task) { - if (task->tData1 % 3 == 0) + if (task->tTimer % 3 == 0) { - u16 var = task->tData1 % 30; + u16 var = task->tTimer % 30; var /= 3; LoadPalette(sKyogre1_Palette + (var * 16), 0xF0, 0x20); } - if (++task->tData1 > 58) + if (++task->tTimer > 58) { task->tState++; - task->tData1 = 0; + task->tTimer = 0; } return FALSE; } -static bool8 Kyogre_Func5(struct Task *task) +static bool8 Kyogre_PaletteBrighten(struct Task *task) { - if (task->tData1 % 5 == 0) + if (task->tTimer % 5 == 0) { - s16 var = task->tData1 / 5; + s16 var = task->tTimer / 5; LoadPalette(sKyogre2_Palette + (var * 16), 0xF0, 0x20); } - if (++task->tData1 > 68) + if (++task->tTimer > 68) { task->tState++; - task->tData1 = 0; - task->tFrames = 30; + task->tTimer = 0; + task->tEndDelay = 30; } return FALSE; } -static bool8 WeatherDuo_Func6(struct Task *task) +static bool8 WeatherDuo_FadeOut(struct Task *task) { - BeginNormalPaletteFade(PALETTES_OBJECTS | 0x8000, 1, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_OBJECTS | (1 << 15), 1, 0, 16, RGB_BLACK); task->tState++; return FALSE; } -static bool8 WeatherDuo_Func7(struct Task *task) +static bool8 WeatherDuo_End(struct Task *task) { if (!gPaletteFade.active) { @@ -1477,100 +1546,105 @@ static bool8 WeatherDuo_Func7(struct Task *task) return FALSE; } -static bool8 BigPokeball_Func3(struct Task *task) +#undef tTimer + +// The PatternWeave_ functions are used by several different transitions. +// They create an effect where a pattern/image (such as the Magma emblem) is +// formed by a shimmering weave effect. +static bool8 PatternWeave_1(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - if (task->tData3 == 0 || --task->tData3 == 0) + sTransitionData->VBlank_DMA = FALSE; + if (task->tBlendDelay == 0 || --task->tBlendDelay == 0) { - task->tData2++; - task->tData3 = 2; + task->tBlendTarget2++; + task->tBlendDelay = 2; } - sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); - if (task->tData2 > 15) + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); + if (task->tBlendTarget2 > 15) task->tState++; - task->tData4 += 8; - task->tData5 -= 256; + task->tSinIndex += 8; + task->tAmplitude -= 256; - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5 >> 8, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude >> 8, DISPLAY_HEIGHT); - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 BigPokeball_Func4(struct Task *task) +static bool8 PatternWeave_2(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - if (task->tData3 == 0 || --task->tData3 == 0) + sTransitionData->VBlank_DMA = FALSE; + if (task->tBlendDelay == 0 || --task->tBlendDelay == 0) { - task->tData1--; - task->tData3 = 2; + task->tBlendTarget1--; + task->tBlendDelay = 2; } - sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData2, task->tData1); - if (task->tData1 == 0) + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); + if (task->tBlendTarget1 == 0) task->tState++; - task->tData4 += 8; - task->tData5 -= 256; + task->tSinIndex += 8; + task->tAmplitude -= 256; - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5 >> 8, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude >> 8, DISPLAY_HEIGHT); - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 BigPokeball_Func5(struct Task *task) +static bool8 PatternWeave_3(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - task->tData4 += 8; - task->tData5 -= 256; + sTransitionData->VBlank_DMA = FALSE; + task->tSinIndex += 8; + task->tAmplitude -= 256; - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 132, task->tData5 >> 8, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude >> 8, DISPLAY_HEIGHT); - if (task->tData5 <= 0) + if (task->tAmplitude <= 0) { task->tState++; - task->tData1 = 160; - task->tData2 = 256; - task->tData3 = 0; + task->tEndAmplitude = 160; + task->tEndAmplitudeDelta = 256; + task->tVBlankSet = FALSE; } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static bool8 FramesCountdown(struct Task *task) { - if (--task->tFrames == 0) + if (--task->tEndDelay == 0) task->tState++; return FALSE; } -static bool8 WeatherTrio_Func1(struct Task *task) +static bool8 WeatherTrio_BgFadeBlack(struct Task *task) { - BeginNormalPaletteFade(PALETTES_BG, 1, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_BG, 1, 0, 16, RGB_BLACK); task->tState++; return FALSE; } -static bool8 WaitPaletteFade(struct Task *task) +static bool8 WeatherTrio_WaitFade(struct Task *task) { if (!gPaletteFade.active) task->tState++; return FALSE; } -static bool8 BigPokeball_Func6(struct Task *task) +static bool8 PatternWeave_End(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - if (task->tData2 < 1024) - task->tData2 += 128; - if (task->tData1 != 0) + sTransitionData->VBlank_DMA = FALSE; + if (task->tEndAmplitudeDelta < 1024) + task->tEndAmplitudeDelta += 128; + if (task->tEndAmplitude != 0) { - task->tData1 -= (task->tData2 >> 8); - if (task->tData1 < 0) - task->tData1 = 0; + task->tEndAmplitude -= task->tEndAmplitudeDelta >> 8; + if (task->tEndAmplitude < 0) + task->tEndAmplitude = 0; } - sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->tData1); - if (task->tData1 == 0) + sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->tEndAmplitude); + if (task->tEndAmplitude == 0) { SetVBlankCallback(NULL); DmaStop(0); @@ -1579,13 +1653,13 @@ static bool8 BigPokeball_Func6(struct Task *task) } else { - if (task->tData3 == 0) + if (!task->tVBlankSet) { - task->tData3++; + task->tVBlankSet++; SetVBlankCallback(VBlankCB1_BigPokeball); } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; } return FALSE; @@ -1595,58 +1669,65 @@ static void Transition_BigPokeball_Vblank(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - REG_BLDALPHA = sTransitionStructPtr->BLDALPHA; + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; + REG_BLDCNT = sTransitionData->BLDCNT; + REG_BLDALPHA = sTransitionData->BLDALPHA; } -static void VBlankCB0_BigPokeball(void) +static void VBlankCB_PatternWeave(void) { Transition_BigPokeball_Vblank(); - DmaSet(0, gScanlineEffectRegBuffers[1], ®_BG0HOFS, 0xA2400001); + DmaSet(0, gScanlineEffectRegBuffers[1], ®_BG0HOFS, B_TRANS_DMA_FLAGS); } static void VBlankCB1_BigPokeball(void) { Transition_BigPokeball_Vblank(); - DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); + DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } +#undef tAmplitude +#undef tSinIndex +#undef tBlendTarget1 +#undef tBlendTarget2 +#undef tEndAmplitude +#undef tVBlankSet + static void Task_PokeballsTrail(u8 taskId) { while (sPokeballsTrail_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 PokeballsTrail_Func1(struct Task *task) +static bool8 PokeballsTrail_Init(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); CpuSet(sPokeballTrail_Tileset, tileset, 0x20); - CpuFill32(0, tilemap, 0x800); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, 0x20); + CpuFill32(0, tilemap, BG_SCREEN_SIZE); + LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } -static bool8 PokeballsTrail_Func2(struct Task *task) +static bool8 PokeballsTrail_Main(struct Task *task) { s16 i; s16 rand; - s16 arr0[ARRAY_COUNT(sUnknown_085C8B88)]; + s16 xCoords[ARRAY_COUNT(sUnknown_085C8B88)]; s16 arr1[ARRAY_COUNT(sUnknown_085C8B8C)]; - memcpy(arr0, sUnknown_085C8B88, sizeof(sUnknown_085C8B88)); + memcpy(xCoords, sUnknown_085C8B88, sizeof(sUnknown_085C8B88)); memcpy(arr1, sUnknown_085C8B8C, sizeof(sUnknown_085C8B8C)); rand = Random() & 1; for (i = 0; i <= 4; i++, rand ^= 1) { - gFieldEffectArguments[0] = arr0[rand]; // x + gFieldEffectArguments[0] = xCoords[rand]; // x gFieldEffectArguments[1] = (i * 32) + 16; // y gFieldEffectArguments[2] = rand; gFieldEffectArguments[3] = arr1[i]; @@ -1657,7 +1738,7 @@ static bool8 PokeballsTrail_Func2(struct Task *task) return FALSE; } -static bool8 PokeballsTrail_Func3(struct Task *task) +static bool8 PokeballsTrail_End(struct Task *task) { if (!FieldEffectActiveListContains(FLDEFF_POKEBALL)) { @@ -1667,27 +1748,31 @@ static bool8 PokeballsTrail_Func3(struct Task *task) return FALSE; } +#define sData0 data[0] +#define sData1 data[1] +#define sData2 data[2] + bool8 FldEff_Pokeball(void) { u8 spriteId = CreateSpriteAtEnd(&sSpriteTemplate_Pokeball, gFieldEffectArguments[0], gFieldEffectArguments[1], 0); gSprites[spriteId].oam.priority = 0; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteId].data[0] = gFieldEffectArguments[2]; - gSprites[spriteId].data[1] = gFieldEffectArguments[3]; - gSprites[spriteId].data[2] = -1; + gSprites[spriteId].sData0 = gFieldEffectArguments[2]; + gSprites[spriteId].sData1 = gFieldEffectArguments[3]; + gSprites[spriteId].sData2 = -1; InitSpriteAffineAnim(&gSprites[spriteId]); StartSpriteAffineAnim(&gSprites[spriteId], gFieldEffectArguments[2]); return FALSE; } -static void sub_814713C(struct Sprite *sprite) +static void SpriteCB_FldEffPokeball(struct Sprite *sprite) { s16 arr0[ARRAY_COUNT(sUnknown_085C8B96)]; memcpy(arr0, sUnknown_085C8B96, sizeof(sUnknown_085C8B96)); - if (sprite->data[1] != 0) + if (sprite->sData1 != 0) { - sprite->data[1]--; + sprite->sData1--; } else { @@ -1696,51 +1781,53 @@ static void sub_814713C(struct Sprite *sprite) s16 posX = sprite->x >> 3; s16 posY = sprite->y >> 3; - if (posX != sprite->data[2]) + if (posX != sprite->sData2) { u32 var; u16 *ptr; - sprite->data[2] = posX; + sprite->sData2 = posX; var = (((REG_BG0CNT >> 8) & 0x1F) << 11); ptr = (u16 *)(VRAM + var); - SOME_VRAM_STORE(ptr, posY - 2, posX, 0xF001); - SOME_VRAM_STORE(ptr, posY - 1, posX, 0xF001); - SOME_VRAM_STORE(ptr, posY - 0, posX, 0xF001); - SOME_VRAM_STORE(ptr, posY + 1, posX, 0xF001); + SET_TILEMAP_TILE(ptr, posY - 2, posX, 0xF001); + SET_TILEMAP_TILE(ptr, posY - 1, posX, 0xF001); + SET_TILEMAP_TILE(ptr, posY - 0, posX, 0xF001); + SET_TILEMAP_TILE(ptr, posY + 1, posX, 0xF001); } } - sprite->x += arr0[sprite->data[0]]; - if (sprite->x < -15 || sprite->x > 255) + sprite->x += arr0[sprite->sData0]; + if (sprite->x < -15 || sprite->x > DISPLAY_WIDTH + 15) FieldEffectStop(sprite, FLDEFF_POKEBALL); } } +#undef sData0 +#undef sData1 +#undef sData2 + static void Task_Clockwise_BlackFade(u8 taskId) { while (sClockwise_BlackFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Clockwise_BlackFade_Func1(struct Task *task) +static bool8 Clockwise_BlackFade_Init(struct Task *task) { u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; - sTransitionStructPtr->WIN0H = -3855; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = 0; + sTransitionData->WINOUT = WINOUT_WIN01_ALL; + sTransitionData->WIN0H = WIN_RANGE(DISPLAY_WIDTH, DISPLAY_WIDTH + 1); + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[1][i] = 0xF3F4; - } + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[1][i] = WIN_RANGE(DISPLAY_WIDTH + 3, DISPLAY_WIDTH + 4); SetVBlankCallback(VBlankCB_Clockwise_BlackFade); - sTransitionStructPtr->data[4] = 120; + sTransitionData->data[4] = 120; task->tState++; return TRUE; @@ -1748,22 +1835,22 @@ static bool8 Clockwise_BlackFade_Func1(struct Task *task) static bool8 Clockwise_BlackFade_Func2(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionStructPtr->data, 120, 80, sTransitionStructPtr->data[4], -1, 1, 1); + sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], -1, 1, 1); do { - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = (sTransitionStructPtr->data[2] + 1) | 0x7800; - } while (!sub_814A228(sTransitionStructPtr->data, 1, 1)); + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (sTransitionData->data[2] + 1) | 0x7800; + } while (!sub_814A228(sTransitionData->data, 1, 1)); - sTransitionStructPtr->data[4] += 16; - if (sTransitionStructPtr->data[4] >= 240) + sTransitionData->data[4] += 16; + if (sTransitionData->data[4] >= DISPLAY_WIDTH) { - sTransitionStructPtr->data[5] = 0; + sTransitionData->data[5] = 0; task->tState++; } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } @@ -1772,57 +1859,55 @@ static bool8 Clockwise_BlackFade_Func3(struct Task *task) s16 r1, r3; vu8 var = 0; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionStructPtr->data, 120, 80, 240, sTransitionStructPtr->data[5], 1, 1); + sub_814A1AC(sTransitionData->data, 120, 80, 240, sTransitionData->data[5], 1, 1); while (1) { - r1 = 120, r3 = sTransitionStructPtr->data[2] + 1; - if (sTransitionStructPtr->data[5] >= 80) - r1 = sTransitionStructPtr->data[2], r3 = 240; - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = (r3) | (r1 << 8); + r1 = 120, r3 = sTransitionData->data[2] + 1; + if (sTransitionData->data[5] >= DISPLAY_HEIGHT / 2) + r1 = sTransitionData->data[2], r3 = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r3) | (r1 << 8); if (var != 0) break; - var = sub_814A228(sTransitionStructPtr->data, 1, 1); + var = sub_814A228(sTransitionData->data, 1, 1); } - sTransitionStructPtr->data[5] += 8; - if (sTransitionStructPtr->data[5] >= 160) + sTransitionData->data[5] += 8; + if (sTransitionData->data[5] >= DISPLAY_HEIGHT) { - sTransitionStructPtr->data[4] = 240; + sTransitionData->data[4] = DISPLAY_WIDTH; task->tState++; } else { - while (sTransitionStructPtr->data[3] < sTransitionStructPtr->data[5]) - { - gScanlineEffectRegBuffers[0][++sTransitionStructPtr->data[3]] = (r3) | (r1 << 8); - } + while (sTransitionData->data[3] < sTransitionData->data[5]) + gScanlineEffectRegBuffers[0][++sTransitionData->data[3]] = (r3) | (r1 << 8); } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static bool8 Clockwise_BlackFade_Func4(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionStructPtr->data, 120, 80, sTransitionStructPtr->data[4], 160, 1, 1); + sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], 160, 1, 1); do { - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = (sTransitionStructPtr->data[2] << 8) | 0xF0; - } while (!sub_814A228(sTransitionStructPtr->data, 1, 1)); + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (sTransitionData->data[2] << 8) | 0xF0; + } while (!sub_814A228(sTransitionData->data, 1, 1)); - sTransitionStructPtr->data[4] -= 16; - if (sTransitionStructPtr->data[4] <= 0) + sTransitionData->data[4] -= 16; + if (sTransitionData->data[4] <= 0) { - sTransitionStructPtr->data[5] = 160; + sTransitionData->data[5] = DISPLAY_HEIGHT; task->tState++; } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } @@ -1831,66 +1916,66 @@ static bool8 Clockwise_BlackFade_Func5(struct Task *task) s16 r1, r2, var4; vu8 var = 0; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionStructPtr->data, 120, 80, 0, sTransitionStructPtr->data[5], 1, 1); + sub_814A1AC(sTransitionData->data, 120, 80, 0, sTransitionData->data[5], 1, 1); while (1) { - r1 = (gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]]) & 0xFF; - r2 = sTransitionStructPtr->data[2]; - if (sTransitionStructPtr->data[5] <= 80) - r2 = 120, r1 = sTransitionStructPtr->data[2]; + r1 = (gScanlineEffectRegBuffers[0][sTransitionData->data[3]]) & 0xFF; + r2 = sTransitionData->data[2]; + if (sTransitionData->data[5] <= DISPLAY_HEIGHT / 2) + r2 = 120, r1 = sTransitionData->data[2]; var4 = (r1) | (r2 << 8); - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = var4; + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = var4; if (var != 0) break; - var = sub_814A228(sTransitionStructPtr->data, 1, 1); + var = sub_814A228(sTransitionData->data, 1, 1); } - sTransitionStructPtr->data[5] -= 8; - if (sTransitionStructPtr->data[5] <= 0) + sTransitionData->data[5] -= 8; + if (sTransitionData->data[5] <= 0) { - sTransitionStructPtr->data[4] = 0; + sTransitionData->data[4] = 0; task->tState++; } else { - while (sTransitionStructPtr->data[3] > sTransitionStructPtr->data[5]) + while (sTransitionData->data[3] > sTransitionData->data[5]) { - gScanlineEffectRegBuffers[0][--sTransitionStructPtr->data[3]] = (r1) | (r2 << 8); + gScanlineEffectRegBuffers[0][--sTransitionData->data[3]] = (r1) | (r2 << 8); } } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static bool8 Clockwise_BlackFade_Func6(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionStructPtr->data, 120, 80, sTransitionStructPtr->data[4], 0, 1, 1); + sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], 0, 1, 1); do { s16 r2, r3; - r2 = 120, r3 = sTransitionStructPtr->data[2]; - if (sTransitionStructPtr->data[2] >= 120) - r2 = 0, r3 = 240; - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = (r3) | (r2 << 8); + r2 = 120, r3 = sTransitionData->data[2]; + if (sTransitionData->data[2] >= 120) + r2 = 0, r3 = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r3) | (r2 << 8); - } while (!sub_814A228(sTransitionStructPtr->data, 1, 1)); + } while (!sub_814A228(sTransitionData->data, 1, 1)); - sTransitionStructPtr->data[4] += 16; - if (sTransitionStructPtr->data[2] > 120) + sTransitionData->data[4] += 16; + if (sTransitionData->data[2] > 120) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Clockwise_BlackFade_Func7(struct Task *task) +static bool8 Clockwise_BlackFade_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -1902,13 +1987,13 @@ static void VBlankCB_Clockwise_BlackFade(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA != 0) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; + if (sTransitionData->VBlank_DMA != 0) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; REG_WIN0H = gScanlineEffectRegBuffers[1][0]; - DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); + DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } static void Task_Ripple(u8 taskId) @@ -1916,17 +2001,15 @@ static void Task_Ripple(u8 taskId) while (sRipple_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Ripple_Func1(struct Task *task) +static bool8 Ripple_Init(struct Task *task) { u8 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_16; - } + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[1][i] = sTransitionData->cameraY; SetVBlankCallback(VBlankCB_Ripple); SetHBlankCallback(HBlankCB_Ripple); @@ -1943,39 +2026,39 @@ static bool8 Ripple_Func2(struct Task *task) s16 r3; u16 r4, r8; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - r3 = task->tData2 >> 8; - r4 = task->tData1; + r3 = task->data[2] >> 8; + r4 = task->data[1]; r8 = 384; - task->tData1 += 0x400; - if (task->tData2 <= 0x1FFF) - task->tData2 += 0x180; + task->data[1] += 0x400; + if (task->data[2] <= 0x1FFF) + task->data[2] += 0x180; - for (i = 0; i < 160; i++, r4 += r8) + for (i = 0; i < DISPLAY_HEIGHT; i++, r4 += r8) { s16 var = r4 >> 8; - gScanlineEffectRegBuffers[0][i] = sTransitionStructPtr->field_16 + Sin(var & 0xffff, r3); + gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(var & 0xffff, r3); } - if (++task->tData3 == 81) + if (++task->data[3] == 81) { - task->tData4++; - BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 0x10, RGB_BLACK); + task->data[4]++; + BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK); } - if (task->tData4 != 0 && !gPaletteFade.active) + if (task->data[4] != 0 && !gPaletteFade.active) DestroyTask(FindTaskIdByFunc(Task_Ripple)); - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static void VBlankCB_Ripple(void) { VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); } static void HBlankCB_Ripple(void) @@ -1986,27 +2069,26 @@ static void HBlankCB_Ripple(void) REG_BG3VOFS = var; } +// B_TRANSITION_WAVE static void Task_Wave(u8 taskId) { while (sWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Wave_Func1(struct Task *task) +static bool8 Wave_Init(struct Task *task) { u8 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = 0; + sTransitionData->WIN0H = DISPLAY_WIDTH; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[1][i] = 242; - } + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[1][i] = DISPLAY_WIDTH + 2; SetVBlankCallback(VBlankCB_Wave); @@ -2020,31 +2102,31 @@ static bool8 Wave_Func2(struct Task *task) u16* toStore; bool8 nextFunc; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; toStore = gScanlineEffectRegBuffers[0]; - r5 = task->tData2; - task->tData2 += 16; - task->tData1 += 8; + r5 = task->data[2]; + task->data[2] += 16; + task->data[1] += 8; - for (i = 0, nextFunc = TRUE; i < 160; i++, r5 += 4, toStore++) + for (i = 0, nextFunc = TRUE; i < DISPLAY_HEIGHT; i++, r5 += 4, toStore++) { - s16 value = task->tData1 + Sin(r5, 40); + s16 value = task->data[1] + Sin(r5, 40); if (value < 0) value = 0; - if (value > 240) - value = 240; - *toStore = (value << 8) | (0xF1); - if (value < 240) + if (value > DISPLAY_WIDTH) + value = DISPLAY_WIDTH; + *toStore = (value << 8) | (DISPLAY_WIDTH + 1); + if (value < DISPLAY_WIDTH) nextFunc = FALSE; } if (nextFunc) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Wave_Func3(struct Task *task) +static bool8 Wave_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -2056,68 +2138,66 @@ static void VBlankCB_Wave(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA != 0) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; - DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); + if (sTransitionData->VBlank_DMA != 0) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; + DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } static void Task_Sidney(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_SIDNEY; - Task_MugShotTransition(taskId); + DoMugshotTransition(taskId); } static void Task_Phoebe(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_PHOEBE; - Task_MugShotTransition(taskId); + DoMugshotTransition(taskId); } static void Task_Glacia(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_GLACIA; - Task_MugShotTransition(taskId); + DoMugshotTransition(taskId); } static void Task_Drake(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_DRAKE; - Task_MugShotTransition(taskId); + DoMugshotTransition(taskId); } static void Task_Champion(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_CHAMPION; - Task_MugShotTransition(taskId); + DoMugshotTransition(taskId); } -static void Task_MugShotTransition(u8 taskId) +static void DoMugshotTransition(u8 taskId) { while (sMugshot_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Mugshot_Func1(struct Task *task) +static bool8 Mugshot_Init(struct Task *task) { u8 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - Mugshots_CreateOpponentPlayerSprites(task); + Mugshots_CreateTrainerPics(task); - task->tData1 = 0; - task->tData2 = 1; - task->tData3 = 239; - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + task->data[1] = 0; + task->data[2] = 1; + task->data[3] = DISPLAY_WIDTH - 1; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) - { + for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0xF0F1; - } SetVBlankCallback(VBlankCB0_Mugshots); @@ -2125,7 +2205,7 @@ static bool8 Mugshot_Func1(struct Task *task) return FALSE; } -static bool8 Mugshot_Func2(struct Task *task) +static bool8 Mugshot_SetGfx(struct Task *task) { s16 i, j; u16 *tilemap, *tileset; @@ -2140,9 +2220,7 @@ static bool8 Mugshot_Func2(struct Task *task) for (i = 0; i < 20; i++) { for (j = 0; j < 32; j++, mugshotsMap++) - { - SOME_VRAM_STORE(tilemap, i, j, *mugshotsMap | 0xF000); - } + SET_TILEMAP_TILE(tilemap, i, j, *mugshotsMap | 0xF000); } EnableInterrupts(INTR_FLAG_HBLANK); @@ -2152,72 +2230,71 @@ static bool8 Mugshot_Func2(struct Task *task) return FALSE; } -static bool8 Mugshot_Func3(struct Task *task) +static bool8 Mugshot_ShowBanner(struct Task *task) { u8 i, r5; u16* toStore; s16 value; s32 mergedValue; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; toStore = gScanlineEffectRegBuffers[0]; - r5 = task->tData1; - task->tData1 += 0x10; + r5 = task->data[1]; + task->data[1] += 16; - for (i = 0; i < 80; i++, toStore++, r5 += 0x10) + for (i = 0; i < DISPLAY_HEIGHT / 2; i++, toStore++, r5 += 16) { - value = task->tData2 + Sin(r5, 0x10); + value = task->data[2] + Sin(r5, 16); if (value < 0) value = 1; - if (value > 0xF0) - value = 0xF0; + if (value > DISPLAY_WIDTH) + value = DISPLAY_WIDTH; *toStore = value; } - for (; i < 160; i++, toStore++, r5 += 0x10) + for (; i < DISPLAY_HEIGHT; i++, toStore++, r5 += 16) { - value = task->tData3 - Sin(r5, 0x10); + value = task->data[3] - Sin(r5, 16); if (value < 0) value = 0; - if (value > 0xEF) - value = 0xEF; - *toStore = (value << 8) | (0xF0); + if (value > DISPLAY_WIDTH - 1) + value = DISPLAY_WIDTH - 1; + *toStore = (value << 8) | (DISPLAY_WIDTH); } - task->tData2 += 8; - task->tData3 -= 8; - if (task->tData2 > 0xF0) - task->tData2 = 0xF0; - if (task->tData3 < 0) - task->tData3 = 0; - mergedValue = *(s32*)(&task->tData2); - if (mergedValue == 0xF0) + task->data[2] += 8; + task->data[3] -= 8; + if (task->data[2] > DISPLAY_WIDTH) + task->data[2] = DISPLAY_WIDTH; + if (task->data[3] < 0) + task->data[3] = 0; + mergedValue = *(s32*)(&task->data[2]); + if (mergedValue == DISPLAY_WIDTH) task->tState++; - sTransitionStructPtr->BG0HOFS_1 -= 8; - sTransitionStructPtr->BG0HOFS_2 += 8; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->BG0HOFS_Lower -= 8; + sTransitionData->BG0HOFS_Upper += 8; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Mugshot_Func4(struct Task *task) +static bool8 Mugshot_StartOpponentSlide(struct Task *task) { u8 i; u16* toStore; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - for (i = 0, toStore = gScanlineEffectRegBuffers[0]; i < 160; i++, toStore++) - { - *toStore = 0xF0; - } + for (i = 0, toStore = gScanlineEffectRegBuffers[0]; i < DISPLAY_HEIGHT; i++, toStore++) + *toStore = DISPLAY_WIDTH; task->tState++; - task->tData1 = 0; - task->tData2 = 0; - task->tData3 = 0; - sTransitionStructPtr->BG0HOFS_1 -= 8; - sTransitionStructPtr->BG0HOFS_2 += 8; + task->data[1] = 0; + task->data[2] = 0; + task->data[3] = 0; + + sTransitionData->BG0HOFS_Lower -= 8; + sTransitionData->BG0HOFS_Upper += 8; SetTrainerPicSlideTable(task->tOpponentSpriteId, 0); SetTrainerPicSlideTable(task->tPlayerSpriteId, 1); @@ -2225,14 +2302,16 @@ static bool8 Mugshot_Func4(struct Task *task) PlaySE(SE_MUGSHOT); - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Mugshot_Func5(struct Task *task) +static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task) { - sTransitionStructPtr->BG0HOFS_1 -= 8; - sTransitionStructPtr->BG0HOFS_2 += 8; + sTransitionData->BG0HOFS_Lower -= 8; + sTransitionData->BG0HOFS_Upper += 8; + + // Start player's pic slide in once the opponent is finished if (IsTrainerPicSlideDone(task->tOpponentSpriteId)) { task->tState++; @@ -2241,94 +2320,95 @@ static bool8 Mugshot_Func5(struct Task *task) return FALSE; } -static bool8 Mugshot_Func6(struct Task *task) +static bool8 Mugshot_WaitPlayerSlide(struct Task *task) { - sTransitionStructPtr->BG0HOFS_1 -= 8; - sTransitionStructPtr->BG0HOFS_2 += 8; + sTransitionData->BG0HOFS_Lower -= 8; + sTransitionData->BG0HOFS_Upper += 8; + if (IsTrainerPicSlideDone(task->tPlayerSpriteId)) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; SetVBlankCallback(NULL); DmaStop(0); - memset(gScanlineEffectRegBuffers[0], 0, 0x140); - memset(gScanlineEffectRegBuffers[1], 0, 0x140); + memset(gScanlineEffectRegBuffers[0], 0, DISPLAY_HEIGHT * 2); + memset(gScanlineEffectRegBuffers[1], 0, DISPLAY_HEIGHT * 2); SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); SetGpuReg(REG_OFFSET_BLDY, 0); task->tState++; - task->tData3 = 0; - task->tData4 = 0; - sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; + task->data[3] = 0; + task->data[4] = 0; + sTransitionData->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; SetVBlankCallback(VBlankCB1_Mugshots); } return FALSE; } -static bool8 Mugshot_Func7(struct Task *task) +static bool8 Mugshot_GradualWhiteFade(struct Task *task) { - bool32 r6; + bool32 active; - sTransitionStructPtr->VBlank_DMA = FALSE; - r6 = TRUE; - sTransitionStructPtr->BG0HOFS_1 -= 8; - sTransitionStructPtr->BG0HOFS_2 += 8; + sTransitionData->VBlank_DMA = FALSE; + active = TRUE; + sTransitionData->BG0HOFS_Lower -= 8; + sTransitionData->BG0HOFS_Upper += 8; - if (task->tData4 < 0x50) - task->tData4 += 2; - if (task->tData4 > 0x50) - task->tData4 = 0x50; + if (task->data[4] < DISPLAY_HEIGHT / 2) + task->data[4] += 2; + if (task->data[4] > DISPLAY_HEIGHT / 2) + task->data[4] = DISPLAY_HEIGHT / 2; - if (++task->tData3 & 1) + if (++task->data[3] & 1) { s16 i; - for (i = 0, r6 = FALSE; i <= task->tData4; i++) + for (i = 0, active = FALSE; i <= task->data[4]; i++) { - s16 index1 = 0x50 - i; - s16 index2 = 0x50 + i; + s16 index1 = DISPLAY_HEIGHT / 2 - i; + s16 index2 = DISPLAY_HEIGHT / 2 + i; if (gScanlineEffectRegBuffers[0][index1] <= 15) { - r6 = TRUE; + active = TRUE; gScanlineEffectRegBuffers[0][index1]++; } if (gScanlineEffectRegBuffers[0][index2] <= 15) { - r6 = TRUE; + active = TRUE; gScanlineEffectRegBuffers[0][index2]++; } } } - if (task->tData4 == 0x50 && !r6) + if (task->data[4] == DISPLAY_HEIGHT / 2 && !active) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Mugshot_Func8(struct Task *task) +static bool8 Mugshot_InitFadeWhiteToBlack(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; - BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE); - sTransitionStructPtr->BLDCNT = 0xFF; - task->tData3 = 0; + sTransitionData->VBlank_DMA = FALSE; + BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); + sTransitionData->BLDCNT = 0xFF; + task->data[3] = 0; task->tState++; return TRUE; } -static bool8 Mugshot_Func9(struct Task *task) +static bool8 Mugshot_FadeToBlack(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - task->tData3++; - memset(gScanlineEffectRegBuffers[0], task->tData3, 0x140); - if (task->tData3 > 15) + task->data[3]++; + memset(gScanlineEffectRegBuffers[0], task->data[3], DISPLAY_HEIGHT * 2); + if (task->data[3] > 15) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Mugshot_Func10(struct Task *task) +static bool8 Mugshot_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -2340,31 +2420,31 @@ static void VBlankCB0_Mugshots(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA != 0) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_BG0VOFS = sTransitionStructPtr->BG0VOFS; - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; - DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); + if (sTransitionData->VBlank_DMA != 0) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_BG0VOFS = sTransitionData->BG0VOFS; + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; + DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } static void VBlankCB1_Mugshots(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA != 0) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - DmaSet(0, gScanlineEffectRegBuffers[1], ®_BLDY, 0xA2400001); + if (sTransitionData->VBlank_DMA != 0) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_BLDCNT = sTransitionData->BLDCNT; + DmaSet(0, gScanlineEffectRegBuffers[1], ®_BLDY, B_TRANS_DMA_FLAGS); } static void HBlankCB_Mugshots(void) { - if (REG_VCOUNT < 80) - REG_BG0HOFS = sTransitionStructPtr->BG0HOFS_1; + if (REG_VCOUNT < DISPLAY_HEIGHT / 2) + REG_BG0HOFS = sTransitionData->BG0HOFS_Lower; else - REG_BG0HOFS = sTransitionStructPtr->BG0HOFS_2; + REG_BG0HOFS = sTransitionData->BG0HOFS_Upper; } // data fields for player/opponent sprites in mugshots @@ -2374,7 +2454,7 @@ static void HBlankCB_Mugshots(void) #define sDone data[6] #define sSlideTableId data[7] -static void Mugshots_CreateOpponentPlayerSprites(struct Task *task) +static void Mugshots_CreateTrainerPics(struct Task *task) { struct Sprite *opponentSprite, *playerSprite; @@ -2383,13 +2463,16 @@ static void Mugshots_CreateOpponentPlayerSprites(struct Task *task) sMugshotsOpponentCoords[mugshotId][0] - 32, sMugshotsOpponentCoords[mugshotId][1] + 42, 0, gDecompressionBuffer); - task->tPlayerSpriteId = CreateTrainerSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), DISPLAY_WIDTH + 32, 106, 0, gDecompressionBuffer); + task->tPlayerSpriteId = CreateTrainerSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), + DISPLAY_WIDTH + 32, + 106, + 0, gDecompressionBuffer); opponentSprite = &gSprites[task->tOpponentSpriteId]; playerSprite = &gSprites[task->tPlayerSpriteId]; - opponentSprite->callback = SpriteCb_TrainerPic; - playerSprite->callback = SpriteCb_TrainerPic; + opponentSprite->callback = SpriteCB_MugshotTrainerPic; + playerSprite->callback = SpriteCB_MugshotTrainerPic; opponentSprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE; playerSprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE; @@ -2410,32 +2493,32 @@ static void Mugshots_CreateOpponentPlayerSprites(struct Task *task) SetOamMatrixRotationScaling(playerSprite->oam.matrixNum, -512, 512, 0); } -static void SpriteCb_TrainerPic(struct Sprite *sprite) +static void SpriteCB_MugshotTrainerPic(struct Sprite *sprite) { - while (sTrainerPicSpriteCbs[sprite->sState](sprite)); + while (sMugshotTrainerPicFuncs[sprite->sState](sprite)); } -static bool8 TrainerPicCb_Nothing(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Nothing(struct Sprite *sprite) { return FALSE; } -static bool8 TrainerPicCb_SetSlideOffsets(struct Sprite *sprite) +static bool8 MugshotTrainerPic_SetSlideOffsets(struct Sprite *sprite) { - s16 offfsets1[ARRAY_COUNT(sTrainerPicSlideOffsets1)]; - s16 offfsets2[ARRAY_COUNT(sTrainerPicSlideOffsets2)]; + s16 offsets1[ARRAY_COUNT(sTrainerPicSlideOffsets1)]; + s16 offsets2[ARRAY_COUNT(sTrainerPicSlideOffsets2)]; - memcpy(offfsets1, sTrainerPicSlideOffsets1, sizeof(sTrainerPicSlideOffsets1)); - memcpy(offfsets2, sTrainerPicSlideOffsets2, sizeof(sTrainerPicSlideOffsets2)); + memcpy(offsets1, sTrainerPicSlideOffsets1, sizeof(sTrainerPicSlideOffsets1)); + memcpy(offsets2, sTrainerPicSlideOffsets2, sizeof(sTrainerPicSlideOffsets2)); sprite->sState++; - sprite->sOffsetX = offfsets1[sprite->sSlideTableId]; - sprite->sOffsetX2 = offfsets2[sprite->sSlideTableId]; + sprite->sOffsetX = offsets1[sprite->sSlideTableId]; + sprite->sOffsetX2 = offsets2[sprite->sSlideTableId]; return TRUE; } // fast slide to around middle screen -static bool8 TrainerPicCb_Slide1(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Slide1(struct Sprite *sprite) { sprite->x += sprite->sOffsetX; if (sprite->sSlideTableId && sprite->x < 133) @@ -2446,7 +2529,7 @@ static bool8 TrainerPicCb_Slide1(struct Sprite *sprite) } // slower but accelerating slide -static bool8 TrainerPicCb_Slide2(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Slide2(struct Sprite *sprite) { sprite->sOffsetX += sprite->sOffsetX2; sprite->x += sprite->sOffsetX; @@ -2460,11 +2543,11 @@ static bool8 TrainerPicCb_Slide2(struct Sprite *sprite) } // Has no practical effect -static bool8 TrainerPicCb_Slide3(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Slide3(struct Sprite *sprite) { sprite->sOffsetX += sprite->sOffsetX2; sprite->x += sprite->sOffsetX; - if (sprite->x < -31 || sprite->x > 271) + if (sprite->x < -31 || sprite->x > DISPLAY_WIDTH + 31) sprite->sState++; return FALSE; } @@ -2495,24 +2578,24 @@ static void Task_Slice(u8 taskId) while (sSlice_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Slice_Func1(struct Task *task) +static bool8 Slice_Init(struct Task *task) { u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - task->tData2 = 256; - task->tData3 = 1; - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; - sTransitionStructPtr->VBlank_DMA = FALSE; + task->data[2] = 256; + task->data[3] = 1; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = 0; + sTransitionData->WIN0V = DISPLAY_HEIGHT; + sTransitionData->VBlank_DMA = FALSE; - for (i = 0; i < 160; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { - gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_14; - gScanlineEffectRegBuffers[1][160 + i] = 0xF0; + gScanlineEffectRegBuffers[1][i] = sTransitionData->cameraX; + gScanlineEffectRegBuffers[1][DISPLAY_HEIGHT + i] = DISPLAY_WIDTH; } EnableInterrupts(INTR_FLAG_HBLANK); @@ -2529,40 +2612,40 @@ static bool8 Slice_Func2(struct Task *task) { u16 i; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - task->tData1 += (task->tData2 >> 8); - if (task->tData1 > 0xF0) - task->tData1 = 0xF0; - if (task->tData2 <= 0xFFF) - task->tData2 += task->tData3; - if (task->tData3 < 128) - task->tData3 <<= 1; // multiplying by two + task->data[1] += (task->data[2] >> 8); + if (task->data[1] > DISPLAY_WIDTH) + task->data[1] = DISPLAY_WIDTH; + if (task->data[2] <= 0xFFF) + task->data[2] += task->data[3]; + if (task->data[3] < 128) + task->data[3] <<= 1; // multiplying by two - for (i = 0; i < 160; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { u16 *storeLoc1 = &gScanlineEffectRegBuffers[0][i]; - u16 *storeLoc2 = &gScanlineEffectRegBuffers[0][i + 160]; + u16 *storeLoc2 = &gScanlineEffectRegBuffers[0][i + DISPLAY_HEIGHT]; if (i & 1) { - *storeLoc1 = sTransitionStructPtr->field_14 + task->tData1; - *storeLoc2 = 0xF0 - task->tData1; + *storeLoc1 = sTransitionData->cameraX + task->data[1]; + *storeLoc2 = DISPLAY_WIDTH - task->data[1]; } else { - *storeLoc1 = sTransitionStructPtr->field_14 - task->tData1; - *storeLoc2 = (task->tData1 << 8) | (0xF1); + *storeLoc1 = sTransitionData->cameraX - task->data[1]; + *storeLoc2 = (task->data[1] << 8) | (DISPLAY_WIDTH + 1); } } - if (task->tData1 > 0xEF) + if (task->data[1] >= DISPLAY_WIDTH) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Slice_Func3(struct Task *task) +static bool8 Slice_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -2574,17 +2657,17 @@ static void VBlankCB_Slice(void) { DmaStop(0); VBlankCB_BattleTransition(); - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 640); - DmaSet(0, &gScanlineEffectRegBuffers[1][160], ®_WIN0H, 0xA2400001); + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 4); + DmaSet(0, &gScanlineEffectRegBuffers[1][DISPLAY_HEIGHT], ®_WIN0H, B_TRANS_DMA_FLAGS); } static void HBlankCB_Slice(void) { - if (REG_VCOUNT < 160) + if (REG_VCOUNT < DISPLAY_HEIGHT) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG1HOFS = var; @@ -2598,31 +2681,31 @@ static void Task_ShredSplit(u8 taskId) while (sShredSplit_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 ShredSplit_Func1(struct Task *task) +static bool8 ShredSplit_Init(struct Task *task) { u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = 0; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 0xA0; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { - gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_14; - gScanlineEffectRegBuffers[1][0xA0 + i] = 0xF0; - gScanlineEffectRegBuffers[0][i] = sTransitionStructPtr->field_14; - gScanlineEffectRegBuffers[0][0xA0 + i] = 0xF0; - gScanlineEffectRegBuffers[0][0x140 + i] = 0; - gScanlineEffectRegBuffers[0][0x1E0 + i] = 0x100; - gScanlineEffectRegBuffers[0][0x280 + i] = 1; + gScanlineEffectRegBuffers[1][i] = sTransitionData->cameraX; + gScanlineEffectRegBuffers[1][DISPLAY_HEIGHT + i] = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraX; + gScanlineEffectRegBuffers[0][DISPLAY_HEIGHT + i] = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][DISPLAY_HEIGHT * 2 + i] = 0; + gScanlineEffectRegBuffers[0][DISPLAY_HEIGHT * 3 + i] = 256; + gScanlineEffectRegBuffers[0][DISPLAY_HEIGHT * 4 + i] = 1; } - task->tData4 = 0; - task->tData5 = 0; - task->tData6 = 7; + task->data[4] = 0; + task->data[5] = 0; + task->data[6] = 7; EnableInterrupts(INTR_FLAG_HBLANK); @@ -2645,10 +2728,10 @@ static bool8 ShredSplit_Func2(struct Task *task) memcpy(arr1, gUnknown_085C8C64, sizeof(arr1)); memcpy(arr2, gUnknown_085C8C66, sizeof(arr2)); - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; var = 0; - for (i = 0; i <= task->tData5; i++) + for (i = 0; i <= task->data[5]; i++) { for (j = 0; j < 2; j++) { @@ -2657,12 +2740,12 @@ static bool8 ShredSplit_Func2(struct Task *task) unkVar = (arr1[j]) + (arr2[k] * -(i) * 2); if (unkVar >= 0 && (unkVar != 79 || j != 1)) { - ptr4 = &gScanlineEffectRegBuffers[0][unkVar + 320]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + 480]; - ptr1 = &gScanlineEffectRegBuffers[0][unkVar + 640]; - if (*ptr4 > 0xEF) + ptr4 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 2]; + ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 3]; + ptr1 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 4]; + if (*ptr4 >= DISPLAY_WIDTH) { - *ptr4 = 0xF0; + *ptr4 = DISPLAY_WIDTH; var++; } else @@ -2674,9 +2757,9 @@ static bool8 ShredSplit_Func2(struct Task *task) *ptr3 += *ptr1; } ptr2 = &gScanlineEffectRegBuffers[0][unkVar]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + 160]; - *ptr2 = sTransitionStructPtr->field_14 + *ptr4; - *ptr3 = 0xF0 - *ptr4; + ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT]; + *ptr2 = sTransitionData->cameraX + *ptr4; + *ptr3 = DISPLAY_WIDTH - *ptr4; if (i == 0) break; @@ -2689,14 +2772,14 @@ static bool8 ShredSplit_Func2(struct Task *task) for (k = 0; k < 2; k++) { unkVar = (arr1[j] + 1) + (arr2[k] * -(i) * 2); - if (unkVar <= 160 && (unkVar != 80 || j != 1)) + if (unkVar <= DISPLAY_HEIGHT && (unkVar != DISPLAY_HEIGHT / 2 || j != 1)) { - ptr4 = &gScanlineEffectRegBuffers[0][unkVar + 320]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + 480]; - ptr1 = &gScanlineEffectRegBuffers[0][unkVar + 640]; - if (*ptr4 > 0xEF) + ptr4 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 2]; + ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 3]; + ptr1 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 4]; + if (*ptr4 >= DISPLAY_WIDTH) { - *ptr4 = 0xF0; + *ptr4 = DISPLAY_WIDTH; var++; } else @@ -2708,9 +2791,9 @@ static bool8 ShredSplit_Func2(struct Task *task) *ptr3 += *ptr1; } ptr2 = &gScanlineEffectRegBuffers[0][unkVar]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + 160]; - *ptr2 = sTransitionStructPtr->field_14 - *ptr4; - *ptr3 = (*ptr4 << 8) | (0xF1); + ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT]; + *ptr2 = sTransitionData->cameraX - *ptr4; + *ptr3 = (*ptr4 << 8) | (DISPLAY_WIDTH + 1); if (i == 0) break; @@ -2719,14 +2802,14 @@ static bool8 ShredSplit_Func2(struct Task *task) } } - if (--task->tData4 < 0) - task->tData4 = 0; - if (task->tData4 <= 0 && task->tData5 + 1 <= 20) - task->tData4 = task->tData6, task->tData5++; - if (var > 0x9F) + if (--task->data[4] < 0) + task->data[4] = 0; + if (task->data[4] <= 0 && task->data[5] + 1 <= 20) + task->data[4] = task->data[6], task->data[5]++; + if (var >= DISPLAY_HEIGHT) task->tState++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } @@ -2740,9 +2823,9 @@ static bool8 ShredSplit_Func3(struct Task *task) bool32 done = TRUE; u16 checkVar2 = 0xFF10; - for (i = 0; i < 0xA0; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { - if (gScanlineEffectRegBuffers[1][i] != 0xF0 && gScanlineEffectRegBuffers[1][i] != checkVar2) + if (gScanlineEffectRegBuffers[1][i] != DISPLAY_WIDTH && gScanlineEffectRegBuffers[1][i] != checkVar2) done = FALSE; // a break statement should be put here } @@ -2752,7 +2835,7 @@ static bool8 ShredSplit_Func3(struct Task *task) return FALSE; } -static bool8 ShredSplit_Func4(struct Task *task) +static bool8 ShredSplit_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -2770,28 +2853,26 @@ static void Task_Blackhole2(u8 taskId) while (sBlackhole2_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Blackhole_Func1(struct Task *task) +static bool8 Blackhole_Init(struct Task *task) { s32 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; - sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = 0; + sTransitionData->WINOUT = WINOUT_WIN01_ALL; + sTransitionData->WIN0H = DISPLAY_WIDTH; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 0xA0; i++) - { + for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0; - } SetVBlankCallback(VBlankCB1_BigPokeball); task->tState++; - task->tData1 = 1; - task->tData2 = 0x100; + task->data[1] = 1; + task->data[2] = 0x100; task->tFuncState = 0; return FALSE; @@ -2807,22 +2888,22 @@ static bool8 Blackhole1_Func3(struct Task *task) } else { - sTransitionStructPtr->VBlank_DMA = FALSE; - if (task->tData2 < 0x400) - task->tData2 += 0x80; - if (task->tData1 < 0xA0) - task->tData1 += (task->tData2 >> 8); - if (task->tData1 > 0xA0) - task->tData1 = 0xA0; - sub_814A014(gScanlineEffectRegBuffers[0], 0x78, 0x50, task->tData1); - if (task->tData1 == 0xA0) + sTransitionData->VBlank_DMA = FALSE; + if (task->data[2] < 1024) + task->data[2] += 128; + if (task->data[1] < DISPLAY_HEIGHT) + task->data[1] += (task->data[2] >> 8); + if (task->data[1] > DISPLAY_HEIGHT) + task->data[1] = DISPLAY_HEIGHT; + sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); + if (task->data[1] == DISPLAY_HEIGHT) { task->tFuncState = 1; FadeScreenBlack(); } else { - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; } } @@ -2831,23 +2912,23 @@ static bool8 Blackhole1_Func3(struct Task *task) static bool8 Blackhole1_Func2(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; if (task->tFuncState == 0) { task->tFuncState++; - task->tData1 = 0x30; - task->tData6 = 0; + task->data[1] = 0x30; + task->data[6] = 0; } - task->tData1 += gUnknown_085C8C80[task->tData6]; - task->tData6 = (task->tData6 + 1) % 2; - sub_814A014(gScanlineEffectRegBuffers[0], 0x78, 0x50, task->tData1); - if (task->tData1 < 9) + task->data[1] += gUnknown_085C8C80[task->data[6]]; + task->data[6] = (task->data[6] + 1) % 2; + sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); + if (task->data[1] < 9) { task->tState++; task->tFuncState = 0; } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } @@ -2856,43 +2937,43 @@ static bool8 Blackhole2_Func2(struct Task *task) u16 index; // should be s16 I think s16 amplitude; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; if (task->tFuncState == 0) { task->tFuncState++; - task->tData5 = 2; - task->tData6 = 2; + task->data[5] = 2; + task->data[6] = 2; } - if (task->tData1 > 0xA0) - task->tData1 = 0xA0; + if (task->data[1] > DISPLAY_HEIGHT) + task->data[1] = DISPLAY_HEIGHT; - sub_814A014(gScanlineEffectRegBuffers[0], 0x78, 0x50, task->tData1); - if (task->tData1 == 0xA0) + sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); + if (task->data[1] == DISPLAY_HEIGHT) { DmaStop(0); FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(task->func)); } - index = task->tData5; - if ((task->tData5 & 0xFF) <= 128) + index = task->data[5]; + if ((task->data[5] & 0xFF) <= 128) { - amplitude = task->tData6; - task->tData5 += 8; + amplitude = task->data[6]; + task->data[5] += 8; } else { - amplitude = task->tData6 - 1; - task->tData5 += 16; + amplitude = task->data[6] - 1; + task->data[5] += 16; } - task->tData1 += Sin(index & 0xFF, amplitude); + task->data[1] += Sin(index & 0xFF, amplitude); - if (task->tData1 <= 0) - task->tData1 = 1; - if (task->tData5 > 0xFE) - task->tData5 >>= 8, task->tData6++; + if (task->data[1] <= 0) + task->data[1] = 1; + if (task->data[5] > 0xFE) + task->data[5] >>= 8, task->data[6]++; - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } @@ -2901,17 +2982,17 @@ static void Task_RectangularSpiral(u8 taskId) while (sRectangularSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 RectangularSpiral_Func1(struct Task *task) +static bool8 RectangularSpiral_Init(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sShrinkingBoxTileset, tileset, 0x20); CpuCopy16(sShrinkingBoxTileset + 0x70, tileset + 0x20, 0x20); - CpuFill16(0xF000, tilemap, 0x800); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, 0x20); + CpuFill16(0xF000, tilemap, BG_SCREEN_SIZE); + LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); - task->tData3 = 1; + task->data[3] = 1; task->tState++; sRectangularSpiralTransition[0].field_0 = 0; @@ -2967,7 +3048,7 @@ static bool8 RectangularSpiral_Func2(struct Task *task) var2 = var % 32; var3 = var / 32; - SOME_VRAM_STORE(tilemap, var3, var2, 0xF002); + SET_TILEMAP_TILE(tilemap, var3, var2, 0xF002); } } } @@ -2977,7 +3058,7 @@ static bool8 RectangularSpiral_Func2(struct Task *task) return FALSE; } -static bool8 RectangularSpiral_Func3(struct Task *task) +static bool8 RectangularSpiral_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); @@ -3053,53 +3134,55 @@ static void Task_Groudon(u8 taskId) while (sGroudon_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Groudon_Func3(struct Task *task) +static bool8 Groudon_Init(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sGroudon_Tileset, tileset); LZ77UnCompVram(sGroudon_Tilemap, tilemap); task->tState++; - task->tData1 = 0; + task->data[1] = 0; return FALSE; } -static bool8 Groudon_Func4(struct Task *task) +static bool8 Groudon_PalettePulsate(struct Task *task) { - if (task->tData1 % 3 == 0) + if (task->data[1] % 3 == 0) { - u16 var = (task->tData1 % 30) / 3; + u16 var = (task->data[1] % 30) / 3; LoadPalette(sGroudon1_Palette + (var * 16), 0xF0, 0x20); } - if (++task->tData1 > 58) + if (++task->data[1] > 58) { task->tState++; - task->tData1 = 0; + task->data[1] = 0; } return FALSE; } -static bool8 Groudon_Func5(struct Task *task) +static bool8 Groudon_PaletteBrighten(struct Task *task) { - if (task->tData1 % 5 == 0) + if (task->data[1] % 5 == 0) { - s16 var = task->tData1 / 5; + s16 var = task->data[1] / 5; LoadPalette(sGroudon2_Palette + (var * 16), 0xF0, 0x20); } - if (++task->tData1 > 68) + if (++task->data[1] > 68) { task->tState++; - task->tData1 = 0; - task->tFrames = 30; + task->data[1] = 0; + task->tEndDelay = 30; } return FALSE; } +#undef tEndDelay + static void Task_Rayquaza(u8 taskId) { while (sRayquaza_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -3110,19 +3193,19 @@ static bool8 Rayquaza_Func3(struct Task *task) u16 *tilemap, *tileset; u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_TXT256x512); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); CpuCopy16(sRayquaza_Tileset, tileset, 0x2000); - sTransitionStructPtr->field_20 = 0; + sTransitionData->field_20 = 0; task->tState++; LoadPalette(sRayquaza_Palette + 0x50, 0xF0, 0x20); - for (i = 0; i < 160; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { gScanlineEffectRegBuffers[0][i] = 0; gScanlineEffectRegBuffers[1][i] = 0x100; @@ -3137,23 +3220,23 @@ static bool8 Rayquaza_Func4(struct Task *task) u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - CpuCopy16(sRayquaza_Tilemap, tilemap, 0x1000); + CpuCopy16(sRayquaza_Tilemap, tilemap, sizeof(sRayquaza_Tilemap)); task->tState++; return FALSE; } static bool8 Rayquaza_Func5(struct Task *task) { - if ((task->tData1 % 4) == 0) + if ((task->data[1] % 4) == 0) { - u16 value = task->tData1 / 4; + u16 value = task->data[1] / 4; const u16 *palPtr = &sRayquaza_Palette[(value + 5) * 16]; LoadPalette(palPtr, 0xF0, 0x20); } - if (++task->tData1 > 40) + if (++task->data[1] > 40) { task->tState++; - task->tData1 = 0; + task->data[1] = 0; } return FALSE; @@ -3161,11 +3244,11 @@ static bool8 Rayquaza_Func5(struct Task *task) static bool8 Rayquaza_Func6(struct Task *task) { - if (++task->tData1 > 20) + if (++task->data[1] > 20) { task->tState++; - task->tData1 = 0; - BeginNormalPaletteFade(PALETTES_OBJECTS | 0x8000, 2, 0, 0x10, RGB_BLACK); + task->data[1] = 0; + BeginNormalPaletteFade(PALETTES_OBJECTS | (1 << 15), 2, 0, 16, RGB_BLACK); } return FALSE; @@ -3175,7 +3258,7 @@ static bool8 Rayquaza_Func7(struct Task *task) { if (!gPaletteFade.active) { - sTransitionStructPtr->field_20 = 1; + sTransitionData->field_20 = 1; task->tState++; } @@ -3184,8 +3267,8 @@ static bool8 Rayquaza_Func7(struct Task *task) static bool8 Rayquaza_Func8(struct Task *task) { - BlendPalettes(PALETTES_BG & ~(0x8000), 8, 0); - BlendPalettes(PALETTES_OBJECTS | 0x8000, 0, 0); + BlendPalettes(PALETTES_BG & ~(1 << 15), 8, RGB_BLACK); + BlendPalettes(PALETTES_OBJECTS | (1 << 15), 0, RGB_BLACK); task->tState++; return FALSE; @@ -3193,29 +3276,27 @@ static bool8 Rayquaza_Func8(struct Task *task) static bool8 Rayquaza_Func9(struct Task *task) { - if ((task->tData1 % 3) == 0) + if ((task->data[1] % 3) == 0) { - u16 value = task->tData1 / 3; + u16 value = task->data[1] / 3; const u16 *palPtr = &sRayquaza_Palette[(value + 0) * 16]; LoadPalette(palPtr, 0xF0, 0x20); } - if (++task->tData1 >= 40) + if (++task->data[1] >= 40) { u16 i; - sTransitionStructPtr->WININ = 0; - sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; - sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = 0; + sTransitionData->WINOUT = WINOUT_WIN01_ALL; + sTransitionData->WIN0H = DISPLAY_WIDTH; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) - { + for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0; - } SetVBlankCallback(VBlankCB1_BigPokeball); task->tState++; - task->tData2 = 0x100; + task->data[2] = 0x100; task->tFuncState = 0; ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON); } @@ -3230,14 +3311,14 @@ static void VBlankCB_Rayquaza(void) DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->field_20 == 0) + if (sTransitionData->field_20 == 0) dmaSrc = gScanlineEffectRegBuffers[0]; - else if (sTransitionStructPtr->field_20 == 1) + else if (sTransitionData->field_20 == 1) dmaSrc = gScanlineEffectRegBuffers[1]; else dmaSrc = gScanlineEffectRegBuffers[0]; - DmaSet(0, dmaSrc, ®_BG0VOFS, 0xA2400001); + DmaSet(0, dmaSrc, ®_BG0VOFS, B_TRANS_DMA_FLAGS); } static void Task_WhiteFade(u8 taskId) @@ -3245,23 +3326,23 @@ static void Task_WhiteFade(u8 taskId) while (sWhiteFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 WhiteFade_Func1(struct Task *task) +static bool8 WhiteFade_Init(struct Task *task) { u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; - sTransitionStructPtr->BLDY = 0; - sTransitionStructPtr->WININ = WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ; - sTransitionStructPtr->WINOUT = WINOUT_WIN01_ALL; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; + sTransitionData->BLDY = 0; + sTransitionData->WININ = WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ; + sTransitionData->WINOUT = WINOUT_WIN01_ALL; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) + for (i = 0; i < DISPLAY_HEIGHT; i++) { gScanlineEffectRegBuffers[1][i] = 0; - gScanlineEffectRegBuffers[1][i + 160] = 0xF0; + gScanlineEffectRegBuffers[1][i + DISPLAY_HEIGHT] = DISPLAY_WIDTH; } EnableInterrupts(INTR_FLAG_HBLANK); @@ -3279,10 +3360,10 @@ static bool8 WhiteFade_Func2(struct Task *task) struct Sprite *sprite; memcpy(arr1, sUnknown_085C8DA0, sizeof(sUnknown_085C8DA0)); - for (i = 0, posY = 0; i < 8; i++, posY += 0x14) + for (i = 0, posY = 0; i < 8; i++, posY += 20) { sprite = &gSprites[CreateInvisibleSprite(sub_8149864)]; - sprite->x = 0xF0; + sprite->x = DISPLAY_WIDTH; sprite->y = posY; sprite->data[5] = arr1[i]; } @@ -3294,10 +3375,10 @@ static bool8 WhiteFade_Func2(struct Task *task) static bool8 WhiteFade_Func3(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = 0; - if (sTransitionStructPtr->field_20 > 7) + sTransitionData->VBlank_DMA = 0; + if (sTransitionData->field_20 > 7) { - BlendPalettes(PALETTES_ALL, 0x10, 0x7FFF); + BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); task->tState++; } return FALSE; @@ -3305,16 +3386,16 @@ static bool8 WhiteFade_Func3(struct Task *task) static bool8 WhiteFade_Func4(struct Task *task) { - sTransitionStructPtr->VBlank_DMA = 0; + sTransitionData->VBlank_DMA = 0; DmaStop(0); SetVBlankCallback(0); SetHBlankCallback(0); - sTransitionStructPtr->WIN0H = DISPLAY_WIDTH; - sTransitionStructPtr->BLDY = 0; - sTransitionStructPtr->BLDCNT = 0xFF; - sTransitionStructPtr->WININ = WININ_WIN0_ALL; + sTransitionData->WIN0H = DISPLAY_WIDTH; + sTransitionData->BLDY = 0; + sTransitionData->BLDCNT = 0xFF; + sTransitionData->WININ = WININ_WIN0_ALL; SetVBlankCallback(VBlankCB1_WhiteFade); @@ -3322,9 +3403,9 @@ static bool8 WhiteFade_Func4(struct Task *task) return FALSE; } -static bool8 WhiteFade_Func5(struct Task *task) +static bool8 WhiteFade_End(struct Task *task) { - if (++sTransitionStructPtr->BLDY > 16) + if (++sTransitionData->BLDY > 16) { FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(Task_WhiteFade)); @@ -3336,24 +3417,24 @@ static void VBlankCB0_WhiteFade(void) { DmaStop(0); VBlankCB_BattleTransition(); - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 640); - DmaSet(0, &gScanlineEffectRegBuffers[1][160], ®_WIN0H, 0xA2400001); + REG_BLDCNT = sTransitionData->BLDCNT; + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 4); + DmaSet(0, &gScanlineEffectRegBuffers[1][DISPLAY_HEIGHT], ®_WIN0H, B_TRANS_DMA_FLAGS); } static void VBlankCB1_WhiteFade(void) { VBlankCB_BattleTransition(); - REG_BLDY = sTransitionStructPtr->BLDY; - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0H = sTransitionStructPtr->WIN0H; - REG_WIN0V = sTransitionStructPtr->WIN0V; + REG_BLDY = sTransitionData->BLDY; + REG_BLDCNT = sTransitionData->BLDCNT; + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0H = sTransitionData->WIN0H; + REG_WIN0V = sTransitionData->WIN0V; } static void HBlankCB_WhiteFade(void) @@ -3367,13 +3448,13 @@ static void sub_8149864(struct Sprite *sprite) { sprite->data[5]--; if (sprite->data[6]) - sTransitionStructPtr->VBlank_DMA = 1; + sTransitionData->VBlank_DMA = 1; } else { u16 i; u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->y]; - u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + 160]; + u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + DISPLAY_HEIGHT]; for (i = 0; i < 20; i++) { ptr1[i] = sprite->data[0] >> 8; @@ -3391,13 +3472,13 @@ static void sub_8149864(struct Sprite *sprite) sprite->data[0] = 0x1000; if (sprite->data[6]) - sTransitionStructPtr->VBlank_DMA = 1; + sTransitionData->VBlank_DMA = 1; if (sprite->data[1]) { - if (sprite->data[6] == 0 || (sTransitionStructPtr->field_20 > 6 && sprite->data[2]++ > 7)) + if (sprite->data[6] == 0 || (sTransitionData->field_20 > 6 && sprite->data[2]++ > 7)) { - sTransitionStructPtr->field_20++; + sTransitionData->field_20++; DestroySprite(sprite); } } @@ -3409,14 +3490,14 @@ static void Task_GridSquares(u8 taskId) while (sGridSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 GridSquares_Func1(struct Task *task) +static bool8 GridSquares_Init(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - CpuSet(sShrinkingBoxTileset, tileset, 0x10); - CpuFill16(0xF000, tilemap, 0x800); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, 0x20); + CpuSet(sShrinkingBoxTileset, tileset, 16); + CpuFill16(0xF000, tilemap, BG_SCREEN_SIZE); + LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; @@ -3426,26 +3507,26 @@ static bool8 GridSquares_Func2(struct Task *task) { u16* tileset; - if (task->tData1 == 0) + if (task->data[1] == 0) { GetBg0TilemapDst(&tileset); - task->tData1 = 3; - task->tData2++; - CpuSet(sShrinkingBoxTileset + (task->tData2 * 8), tileset, 0x10); - if (task->tData2 > 0xD) + task->data[1] = 3; + task->data[2]++; + CpuSet(sShrinkingBoxTileset + (task->data[2] * 8), tileset, 16); + if (task->data[2] > 13) { task->tState++; - task->tData1 = 16; + task->data[1] = 16; } } - task->tData1--; + task->data[1]--; return FALSE; } -static bool8 GridSquares_Func3(struct Task *task) +static bool8 GridSquares_End(struct Task *task) { - if (--task->tData1 == 0) + if (--task->data[1] == 0) { FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(Task_GridSquares)); @@ -3458,23 +3539,21 @@ static void Task_Shards(u8 taskId) while (sShards_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Shards_Func1(struct Task *task) +static bool8 Shards_Init(struct Task *task) { u16 i; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); - sTransitionStructPtr->WININ = WININ_WIN0_ALL; - sTransitionStructPtr->WINOUT = 0; - sTransitionStructPtr->WIN0V = DISPLAY_HEIGHT; + sTransitionData->WININ = WININ_WIN0_ALL; + sTransitionData->WINOUT = 0; + sTransitionData->WIN0V = DISPLAY_HEIGHT; - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[0][i] = 0xF0; - } + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[0][i] = DISPLAY_WIDTH; - CpuSet(gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 0xA0); + CpuSet(gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT); SetVBlankCallback(VBlankCB_Shards); task->tState++; @@ -3483,13 +3562,13 @@ static bool8 Shards_Func1(struct Task *task) static bool8 Shards_Func2(struct Task *task) { - sub_814A1AC(sTransitionStructPtr->data, - sUnknown_085C8DD0[task->tData1][0], - sUnknown_085C8DD0[task->tData1][1], - sUnknown_085C8DD0[task->tData1][2], - sUnknown_085C8DD0[task->tData1][3], + sub_814A1AC(sTransitionData->data, + sUnknown_085C8DD0[task->data[1]][0], + sUnknown_085C8DD0[task->data[1]][1], + sUnknown_085C8DD0[task->data[1]][2], + sUnknown_085C8DD0[task->data[1]][3], 1, 1); - task->tData2 = sUnknown_085C8DD0[task->tData1][4]; + task->data[2] = sUnknown_085C8DD0[task->data[1]][4]; task->tState++; return TRUE; } @@ -3499,46 +3578,46 @@ static bool8 Shards_Func3(struct Task *task) s16 i; bool8 nextFunc; - sTransitionStructPtr->VBlank_DMA = 0; + sTransitionData->VBlank_DMA = 0; for (i = 0, nextFunc = FALSE; i < 16; i++) { - s16 r3 = gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] >> 8; - s16 r4 = gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] & 0xFF; - if (task->tData2 == 0) + s16 r3 = gScanlineEffectRegBuffers[0][sTransitionData->data[3]] >> 8; + s16 r4 = gScanlineEffectRegBuffers[0][sTransitionData->data[3]] & 0xFF; + if (task->data[2] == 0) { - if (r3 < sTransitionStructPtr->data[2]) - r3 = sTransitionStructPtr->data[2]; + if (r3 < sTransitionData->data[2]) + r3 = sTransitionData->data[2]; if (r3 > r4) r3 = r4; } else { - if (r4 > sTransitionStructPtr->data[2]) - r4 = sTransitionStructPtr->data[2]; + if (r4 > sTransitionData->data[2]) + r4 = sTransitionData->data[2]; if (r4 <= r3) r4 = r3; } - gScanlineEffectRegBuffers[0][sTransitionStructPtr->data[3]] = (r4) | (r3 << 8); + gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r4) | (r3 << 8); if (nextFunc) { task->tState++; break; } else - nextFunc = sub_814A228(sTransitionStructPtr->data, 1, 1); + nextFunc = sub_814A228(sTransitionData->data, 1, 1); } - sTransitionStructPtr->VBlank_DMA++; + sTransitionData->VBlank_DMA++; return FALSE; } static bool8 Shards_Func4(struct Task *task) { - if (++task->tData1 < 7) + if (++task->data[1] < 7) { task->tState++; - task->tData3 = sUnknown_085C8E16[task->tData1 - 1]; + task->data[3] = sUnknown_085C8E16[task->data[1] - 1]; return TRUE; } else @@ -3552,7 +3631,7 @@ static bool8 Shards_Func4(struct Task *task) static bool8 Shards_Func5(struct Task *task) { - if (--task->tData3 == 0) + if (--task->data[3] == 0) { task->tState = 1; return TRUE; @@ -3565,46 +3644,29 @@ static void VBlankCB_Shards(void) { DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); - REG_WININ = sTransitionStructPtr->WININ; - REG_WINOUT = sTransitionStructPtr->WINOUT; - REG_WIN0V = sTransitionStructPtr->WIN0V; + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); + REG_WININ = sTransitionData->WININ; + REG_WINOUT = sTransitionData->WINOUT; + REG_WIN0V = sTransitionData->WIN0V; REG_WIN0H = gScanlineEffectRegBuffers[1][0]; - DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, 0xA2400001); + DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } -// sub-task for phase2 -#undef tData1 -#undef tData2 -#undef tData3 -#undef tData4 -#undef tData5 -#undef tData6 #undef tFuncState -#undef tFrames #undef tOpponentSpriteId #undef tPlayerSpriteId #undef tMugshotId -// sub-task for sub-task phase -#define tData1 data[1] -#define tData2 data[2] -#define tData3 data[3] -#define tData4 data[4] -#define tData5 data[5] -#define tData6 data[6] -#define tData7 data[7] - static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4) { u8 taskId = CreateTask(Task_BattleTransition_Intro, 3); - gTasks[taskId].tData1 = a0; - gTasks[taskId].tData2 = a1; - gTasks[taskId].tData3 = a2; - gTasks[taskId].tData4 = a3; - gTasks[taskId].tData5 = a4; - gTasks[taskId].tData6 = a0; + gTasks[taskId].data[1] = a0; + gTasks[taskId].data[2] = a1; + gTasks[taskId].data[3] = a2; + gTasks[taskId].data[4] = a3; + gTasks[taskId].data[5] = a4; + gTasks[taskId].data[6] = a0; } static bool8 IsIntroTaskDone(void) @@ -3622,57 +3684,49 @@ void Task_BattleTransition_Intro(u8 taskId) static bool8 Transition_Intro_1(struct Task *task) { - if (task->tData6 == 0 || --task->tData6 == 0) + if (task->data[6] == 0 || --task->data[6] == 0) { - task->tData6 = task->tData1; - task->tData7 += task->tData4; - if (task->tData7 > 16) - task->tData7 = 16; - BlendPalettes(PALETTES_ALL, task->tData7, 0x2D6B); + task->data[6] = task->data[1]; + task->data[7] += task->data[4]; + if (task->data[7] > 16) + task->data[7] = 16; + BlendPalettes(PALETTES_ALL, task->data[7], RGB(11, 11, 11)); } - if (task->tData7 > 15) + if (task->data[7] > 15) { task->tState++; - task->tData6 = task->tData2; + task->data[6] = task->data[2]; } return FALSE; } static bool8 Transition_Intro_2(struct Task *task) { - if (task->tData6 == 0 || --task->tData6 == 0) + if (task->data[6] == 0 || --task->data[6] == 0) { - task->tData6 = task->tData2; - task->tData7 -= task->tData5; - if (task->tData7 < 0) - task->tData7 = 0; - BlendPalettes(PALETTES_ALL, task->tData7, 0x2D6B); + task->data[6] = task->data[2]; + task->data[7] -= task->data[5]; + if (task->data[7] < 0) + task->data[7] = 0; + BlendPalettes(PALETTES_ALL, task->data[7], RGB(11, 11, 11)); } - if (task->tData7 == 0) + if (task->data[7] == 0) { - if (--task->tData3 == 0) + if (--task->data[3] == 0) DestroyTask(FindTaskIdByFunc(Task_BattleTransition_Intro)); else { - task->tData6 = task->tData1; + task->data[6] = task->data[1]; task->tState = 0; } } return FALSE; } -#undef tData1 -#undef tData2 -#undef tData3 -#undef tData4 -#undef tData5 -#undef tData6 -#undef tData7 - -static void InitTransitionStructVars(void) +static void InitTransitionData(void) { - memset(sTransitionStructPtr, 0, sizeof(*sTransitionStructPtr)); - GetCameraOffsetWithPan(&sTransitionStructPtr->field_14, &sTransitionStructPtr->field_16); + memset(sTransitionData, 0, sizeof(*sTransitionData)); + GetCameraOffsetWithPan(&sTransitionData->cameraX, &sTransitionData->cameraY); } static void VBlankCB_BattleTransition(void) @@ -3685,7 +3739,7 @@ static void VBlankCB_BattleTransition(void) static void GetBg0TilemapDst(u16 **tileset) { u16 charBase = REG_BG0CNT >> 2; - charBase <<= 0xE; + charBase <<= 14; *tileset = (u16*)(VRAM + charBase); } @@ -3694,8 +3748,8 @@ void GetBg0TilesDst(u16 **tilemap, u16 **tileset) u16 screenBase = REG_BG0CNT >> 8; u16 charBase = REG_BG0CNT >> 2; - screenBase <<= 0xB; - charBase <<= 0xE; + screenBase <<= 11; + charBase <<= 14; *tilemap = (u16*)(VRAM + screenBase); *tileset = (u16*)(VRAM + charBase); @@ -3706,54 +3760,52 @@ static void FadeScreenBlack(void) BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); } -static void sub_8149F98(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize) +static void SetSinWave(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize) { u8 i; for (i = 0; arrSize > 0; arrSize--, i++, index += indexIncrementer) - { - array[i] = sinAdd + Sin(0xFF & index, amplitude); - } + array[i] = sinAdd + Sin(index & 0xFF, amplitude); } -static void sub_814A014(u16 *array, s16 a1, s16 a2, s16 a3) +static void sub_814A014(u16 *array, s16 x, s16 y, s16 amplitude) { s16 i; - memset(array, 0xA, 160 * sizeof(s16)); + memset(array, 10, DISPLAY_HEIGHT * sizeof(s16)); for (i = 0; i < 64; i++) { s16 sinResult, cosResult; s16 toStoreOrr, r2, r3, toStore, r7, r8; - sinResult = Sin(i, a3); - cosResult = Cos(i, a3); + sinResult = Sin(i, amplitude); + cosResult = Cos(i, amplitude); - toStoreOrr = a1 - sinResult; - toStore = a1 + sinResult; - r7 = a2 - cosResult; - r8 = a2 + cosResult; + toStoreOrr = x - sinResult; + toStore = x + sinResult; + r7 = y - cosResult; + r8 = y + cosResult; if (toStoreOrr < 0) toStoreOrr = 0; - if (toStore > 0xF0) - toStore = 0xF0; + if (toStore > DISPLAY_WIDTH) + toStore = DISPLAY_WIDTH; if (r7 < 0) r7 = 0; - if (r8 > 0x9F) - r8 = 0x9F; + if (r8 > DISPLAY_HEIGHT - 1) + r8 = DISPLAY_HEIGHT - 1; toStore |= (toStoreOrr << 8); array[r7] = toStore; array[r8] = toStore; - cosResult = Cos(i + 1, a3); - r3 = a2 - cosResult; - r2 = a2 + cosResult; + cosResult = Cos(i + 1, amplitude); + r3 = y - cosResult; + r2 = y + cosResult; if (r3 < 0) r3 = 0; - if (r2 > 0x9F) - r2 = 0x9F; + if (r2 > DISPLAY_HEIGHT - 1) + r2 = DISPLAY_HEIGHT - 1; while (r7 > r3) array[--r7] = toStore; @@ -3835,36 +3887,27 @@ static bool8 sub_814A228(s16 *data, bool8 a1, bool8 a2) return FALSE; } -// sub-task for phase2 of a couple of new transitions -#define tData1 data[1] -#define tData2 data[2] -#define tData3 data[3] -#define tData4 data[4] -#define tData5 data[5] -#define tData6 data[6] -#define tData7 data[7] - -static bool8 FrontierLogoWiggle_Func1(struct Task *task) +static bool8 FrontierLogoWiggle_Init(struct Task *task) { u16 *tilemap, *tileset; - sub_814669C(task); + InitPatternWeaveTransition(task); GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sFrontierLogo_Tileset, tileset); - LoadPalette(sFrontierLogo_Palette, 0xF0, 0x20); + LoadPalette(sFrontierLogo_Palette, 0xF0, sizeof(sFrontierLogo_Palette)); task->tState++; return FALSE; } -static bool8 FrontierLogoWiggle_Func2(struct Task *task) +static bool8 FrontierLogoWiggle_SetGfx(struct Task *task) { u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierLogo_Tilemap, tilemap); - sub_8149F98(gScanlineEffectRegBuffers[0], 0, task->tData4, 0x84, task->tData5, 160); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->data[4], 0x84, task->data[5], DISPLAY_HEIGHT); task->tState++; return TRUE; @@ -3880,33 +3923,33 @@ static void Task_FrontierLogoWave(u8 taskId) while (sFrontierLogoWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 FrontierLogoWave_Func1(struct Task *task) +static bool8 FrontierLogoWave_Init(struct Task *task) { u16 *tilemap, *tileset; - InitTransitionStructVars(); + InitTransitionData(); ScanlineEffect_Clear(); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); - task->tData2 = 0x2000; - task->tData1 = 0x7FFF; - task->tData5 = 0; - task->tData6 = 16; - task->tData7 = 2560; - sTransitionStructPtr->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; - sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData5, task->tData6); - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - REG_BLDALPHA = sTransitionStructPtr->BLDALPHA; + task->data[2] = 0x2000; + task->data[1] = 0x7FFF; + task->data[5] = 0; + task->data[6] = 16; + task->data[7] = 2560; + sTransitionData->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->data[5], task->data[6]); + REG_BLDCNT = sTransitionData->BLDCNT; + REG_BLDALPHA = sTransitionData->BLDALPHA; GetBg0TilesDst(&tilemap, &tileset); - CpuFill16(0, tilemap, 0x800); + CpuFill16(0, tilemap, BG_SCREEN_SIZE); LZ77UnCompVram(sFrontierLogo_Tileset, tileset); - LoadPalette(sFrontierLogo_Palette, 0xF0, 0x20); - sTransitionStructPtr->field_16 = 0; + LoadPalette(sFrontierLogo_Palette, 0xF0, sizeof(sFrontierLogo_Palette)); + sTransitionData->cameraY = 0; task->tState++; return FALSE; } -static bool8 FrontierLogoWave_Func2(struct Task *task) +static bool8 FrontierLogoWave_SetGfx(struct Task *task) { u16 *tilemap, *tileset; @@ -3921,13 +3964,11 @@ static bool8 FrontierLogoWave_Func3(struct Task *task) { u8 i; - for (i = 0; i < 160; i++) - { - gScanlineEffectRegBuffers[1][i] = sTransitionStructPtr->field_16; - } + for (i = 0; i < DISPLAY_HEIGHT; i++) + gScanlineEffectRegBuffers[1][i] = sTransitionData->cameraY; - SetVBlankCallback(VBlankCB_30); - SetHBlankCallback(HBlankCB_30); + SetVBlankCallback(VBlankCB_FrontierLogoWave); + SetHBlankCallback(HBlankCB_FrontierLogoWave); EnableInterrupts(INTR_FLAG_HBLANK); task->tState++; @@ -3939,63 +3980,63 @@ static bool8 FrontierLogoWave_Func4(struct Task *task) u8 i; u16 var6, amplitude, var8; - sTransitionStructPtr->VBlank_DMA = FALSE; + sTransitionData->VBlank_DMA = FALSE; - amplitude = task->tData2 >> 8; - var6 = task->tData1; + amplitude = task->data[2] >> 8; + var6 = task->data[1]; var8 = 384; - task->tData1 = var6 - task->tData7; + task->data[1] = var6 - task->data[7]; - if (task->tData3 >= 70) + if (task->data[3] >= 70) { - if (task->tData2 - 384 >= 0) - task->tData2 -= 384; + if (task->data[2] - 384 >= 0) + task->data[2] -= 384; else - task->tData2 = 0; + task->data[2] = 0; } - if (task->tData3 >= 0 && task->tData3 % 3 == 0) + if (task->data[3] >= 0 && task->data[3] % 3 == 0) { - if (task->tData5 < 16) - task->tData5++; - else if (task->tData6 > 0) - task->tData6--; + if (task->data[5] < 16) + task->data[5]++; + else if (task->data[6] > 0) + task->data[6]--; - sTransitionStructPtr->BLDALPHA = BLDALPHA_BLEND(task->tData5, task->tData6); + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->data[5], task->data[6]); } - for (i = 0; i < 160; i++, var6 += var8) + for (i = 0; i < DISPLAY_HEIGHT; i++, var6 += var8) { s16 index = var6 / 256; - gScanlineEffectRegBuffers[0][i] = sTransitionStructPtr->field_16 + Sin(index & 0xff, amplitude); + gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(index & 0xff, amplitude); } - if (++task->tData3 == 101) + if (++task->data[3] == 101) { - task->tData4++; - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + task->data[4]++; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } - if (task->tData4 != 0 && !gPaletteFade.active) + if (task->data[4] != 0 && !gPaletteFade.active) DestroyTask(FindTaskIdByFunc(Task_FrontierLogoWave)); - task->tData7 -= 17; - sTransitionStructPtr->VBlank_DMA++; + task->data[7] -= 17; + sTransitionData->VBlank_DMA++; return FALSE; } -static void VBlankCB_30(void) +static void VBlankCB_FrontierLogoWave(void) { VBlankCB_BattleTransition(); - REG_BLDCNT = sTransitionStructPtr->BLDCNT; - REG_BLDALPHA = sTransitionStructPtr->BLDALPHA; + REG_BLDCNT = sTransitionData->BLDCNT; + REG_BLDALPHA = sTransitionData->BLDALPHA; - if (sTransitionStructPtr->VBlank_DMA) - DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], 320); + if (sTransitionData->VBlank_DMA) + DmaCopy16(3, gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); } -static void HBlankCB_30(void) +static void HBlankCB_FrontierLogoWave(void) { u16 var = gScanlineEffectRegBuffers[1][REG_VCOUNT]; REG_BG0VOFS = var; @@ -4016,7 +4057,7 @@ static void Task_FrontierSquaresScroll(u8 taskId) while (sFrontierSquaresScroll_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 FrontierSquares_Func1(struct Task *task) +static bool8 FrontierSquares_Init(struct Task *task) { u16 *tilemap, *tileset; @@ -4027,12 +4068,12 @@ static bool8 FrontierSquares_Func1(struct Task *task) FillBgTilemapBufferRect(0, 1, 0, 0, 1, 0x20, 0xF); FillBgTilemapBufferRect(0, 1, 0x1D, 0, 1, 0x20, 0xF); CopyBgTilemapBufferToVram(0); - LoadPalette(sFrontierSquares_Palette, 0xF0, 0x20); + LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); - task->tData2 = 1; - task->tData3 = 0; - task->tData4 = 0; - task->tData7 = 10; + task->data[2] = 1; + task->data[3] = 0; + task->data[4] = 0; + task->data[7] = 10; task->tState++; return FALSE; @@ -4040,16 +4081,16 @@ static bool8 FrontierSquares_Func1(struct Task *task) static bool8 FrontierSquares_Func2(struct Task *task) { - CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, 4, 4, task->tData2, task->tData3, 4, 4, 0xF, 0, 0); + CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, 4, 4, task->data[2], task->data[3], 4, 4, 0xF, 0, 0); CopyBgTilemapBufferToVram(0); - task->tData2 += 4; - if (++task->tData4 == 7) + task->data[2] += 4; + if (++task->data[4] == 7) { - task->tData2 = 1; - task->tData3 += 4; - task->tData4 = 0; - if (task->tData3 > 19) + task->data[2] = 1; + task->data[3] += 4; + task->data[4] = 0; + if (task->data[3] > 19) task->tState++; } @@ -4062,9 +4103,9 @@ static bool8 FrontierSquares_Func3(struct Task *task) u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - if (task->tData6++ >= task->tData7) + if (task->data[6]++ >= task->data[7]) { - switch (task->tData5) + switch (task->data[5]) { case 0: for (i = 250; i < 255; i++) @@ -4074,7 +4115,7 @@ static bool8 FrontierSquares_Func3(struct Task *task) } break; case 1: - BlendPalettes(PALETTES_ALL & ~(0x8000), 0x10, 0); + BlendPalettes(PALETTES_ALL & ~(1 << 15), 16, RGB_BLACK); LZ77UnCompVram(sFrontierSquares_EmptyBg_Tileset, tileset); break; case 2: @@ -4090,14 +4131,14 @@ static bool8 FrontierSquares_Func3(struct Task *task) return FALSE; } - task->tData6 = 0; - task->tData5++; + task->data[6] = 0; + task->data[5]++; } return FALSE; } -static bool8 FrontierSquaresSpiral_Func1(struct Task *task) +static bool8 FrontierSquaresSpiral_Init(struct Task *task) { u16 *tilemap, *tileset; @@ -4108,12 +4149,12 @@ static bool8 FrontierSquaresSpiral_Func1(struct Task *task) FillBgTilemapBufferRect(0, 1, 0, 0, 1, 0x20, 0xF); FillBgTilemapBufferRect(0, 1, 0x1D, 0, 1, 0x20, 0xF); CopyBgTilemapBufferToVram(0); - LoadPalette(sFrontierSquares_Palette, 0xE0, 0x20); - LoadPalette(sFrontierSquares_Palette, 0xF0, 0x20); - BlendPalette(0xE0, 0x10, 8, 0); + LoadPalette(sFrontierSquares_Palette, 0xE0, sizeof(sFrontierSquares_Palette)); + LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); + BlendPalette(0xE0, 16, 8, 0); - task->tData2 = 34; - task->tData3 = 0; + task->data[2] = 34; + task->data[3] = 0; task->tState++; return FALSE; @@ -4121,24 +4162,24 @@ static bool8 FrontierSquaresSpiral_Func1(struct Task *task) static bool8 FrontierSquaresSpiral_Func2(struct Task *task) { - u8 var = gUnknown_085C9A30[task->tData2]; + u8 var = gUnknown_085C9A30[task->data[2]]; u8 varMod = var % 7; u8 varDiv = var / 7; CopyRectToBgTilemapBufferRect(0, &sFrontierSquares_Tilemap, 0, 0, 4, 4, 4 * varMod + 1, 4 * varDiv, 4, 4, 0xF, 0, 0); CopyBgTilemapBufferToVram(0); - if (--task->tData2 < 0) + if (--task->data[2] < 0) task->tState++; return FALSE; } static bool8 FrontierSquaresSpiral_Func3(struct Task *task) { - BlendPalette(0xE0, 0x10, 3, 0); - BlendPalettes(PALETTES_ALL & ~(0x8000 | 0x4000), 0x10, 0); + BlendPalette(0xE0, 16, 3, 0); + BlendPalettes(PALETTES_ALL & ~(1 << 15 | 1 << 14), 16, RGB_BLACK); - task->tData2 = 0; - task->tData3 = 0; + task->data[2] = 0; + task->data[3] = 0; task->tState++; return FALSE; @@ -4146,7 +4187,7 @@ static bool8 FrontierSquaresSpiral_Func3(struct Task *task) static bool8 FrontierSquaresSpiral_Func4(struct Task *task) { - if ((task->tData3 ^= 1)) + if ((task->data[3] ^= 1)) { CopyRectToBgTilemapBufferRect( 0, @@ -4155,8 +4196,8 @@ static bool8 FrontierSquaresSpiral_Func4(struct Task *task) 0, 4, 4, - 4 * (gUnknown_085C9A30[task->tData2] % 7) + 1, - 4 * (gUnknown_085C9A30[task->tData2] / 7), + 4 * (gUnknown_085C9A30[task->data[2]] % 7) + 1, + 4 * (gUnknown_085C9A30[task->data[2]] / 7), 4, 4, 0xE, @@ -4165,22 +4206,22 @@ static bool8 FrontierSquaresSpiral_Func4(struct Task *task) } else { - if (task->tData2 > 0) + if (task->data[2] > 0) { FillBgTilemapBufferRect( 0, 1, - 4 * (gUnknown_085C9A30[task->tData2 - 1] % 7) + 1, - 4 * (gUnknown_085C9A30[task->tData2 - 1] / 7), + 4 * (gUnknown_085C9A30[task->data[2] - 1] % 7) + 1, + 4 * (gUnknown_085C9A30[task->data[2] - 1] / 7), 4, 4, 0xF); } - task->tData2++; + task->data[2]++; } - if (task->tData2 > 34) + if (task->data[2] > 34) task->tState++; CopyBgTilemapBufferToVram(0); @@ -4191,7 +4232,7 @@ static bool8 FrontierSquares_End(struct Task *task) { FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); CopyBgTilemapBufferToVram(0); - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); DestroyTask(FindTaskIdByFunc(task->func)); return FALSE; } @@ -4212,7 +4253,7 @@ static void sub_814ABE4(u8 taskId) } } -static bool8 FrontierSquaresScroll_Func1(struct Task *task) +static bool8 FrontierSquaresScroll_Init(struct Task *task) { u8 taskId = 0; u16 *tilemap, *tileset; @@ -4221,14 +4262,14 @@ static bool8 FrontierSquaresScroll_Func1(struct Task *task) LZ77UnCompVram(sFrontierSquares_FilledBg_Tileset, tileset); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); CopyBgTilemapBufferToVram(0); - LoadPalette(sFrontierSquares_Palette, 0xF0, 0x20); + LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); gBattle_BG0_X = 0; gBattle_BG0_Y = 0; SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_X); SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_Y); - task->tData2 = 0; + task->data[2] = 0; taskId = CreateTask(sub_814ABE4, 1); switch (Random() % 4) { @@ -4256,7 +4297,7 @@ static bool8 FrontierSquaresScroll_Func1(struct Task *task) static bool8 FrontierSquaresScroll_Func2(struct Task *task) { - u8 var = gUnknown_085C9A53[task->tData2]; + u8 var = gUnknown_085C9A53[task->data[2]]; u8 varDiv = var / 8; u8 varAnd = var & 7; @@ -4276,16 +4317,16 @@ static bool8 FrontierSquaresScroll_Func2(struct Task *task) 0); CopyBgTilemapBufferToVram(0); - if (++task->tData2 > 63) + if (++task->data[2] > 63) task->tState++; return 0; } static bool8 FrontierSquaresScroll_Func3(struct Task *task) { - BlendPalettes(PALETTES_ALL & ~(0x8000), 0x10, 0); + BlendPalettes(PALETTES_ALL & ~(1 << 15), 16, RGB_BLACK); - task->tData2 = 0; + task->data[2] = 0; task->tState++; return FALSE; @@ -4293,14 +4334,14 @@ static bool8 FrontierSquaresScroll_Func3(struct Task *task) static bool8 FrontierSquaresScroll_Func4(struct Task *task) { - u8 var = gUnknown_085C9A53[task->tData2]; + u8 var = gUnknown_085C9A53[task->data[2]]; u8 varDiv = var / 8; - u8 varAnd = var & 7; + u8 varAnd = var % 8; FillBgTilemapBufferRect(0, 1, 4 * varDiv + 1, 4 * varAnd, 4, 4, 0xF); CopyBgTilemapBufferToVram(0); - if (++task->tData2 > 63) + if (++task->data[2] > 63) { DestroyTask(FindTaskIdByFunc(sub_814ABE4)); task->tState++; @@ -4313,7 +4354,7 @@ static bool8 FrontierSquaresScroll_Func4(struct Task *task) #undef tSub32_Y_delta #undef tSub32_Bool -static bool8 FrontierSquaresScroll_Func5(struct Task *task) +static bool8 FrontierSquaresScroll_End(struct Task *task) { gBattle_BG0_X = 0; gBattle_BG0_Y = 0; @@ -4322,7 +4363,7 @@ static bool8 FrontierSquaresScroll_Func5(struct Task *task) FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); CopyBgTilemapBufferToVram(0); - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); DestroyTask(FindTaskIdByFunc(task->func)); @@ -4331,11 +4372,3 @@ static bool8 FrontierSquaresScroll_Func5(struct Task *task) #endif return FALSE; } - -#undef tData1 -#undef tData2 -#undef tData3 -#undef tData4 -#undef tData5 -#undef tData6 -#undef tData7 From bf87faa9225445a0b1065acada9398917558ba97 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 26 Oct 2021 02:00:28 -0400 Subject: [PATCH 338/762] Clean up battle_transition_frontier --- src/battle_transition_frontier.c | 229 +++++++++++++++++-------------- 1 file changed, 128 insertions(+), 101 deletions(-) diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c index 3b35e53aa5aa..e1cb03d8df15 100644 --- a/src/battle_transition_frontier.c +++ b/src/battle_transition_frontier.c @@ -191,44 +191,72 @@ static const TransitionStateFunc sFrontierCirclesSymmetricSpiralInSeq_Funcs[] = CirclesSymmetricSpiralInSeq_End }; +// Task data +#define tState data[0] +#define tTimer data[1] +#define tBlend data[2] +#define tFadeTimer data[3] +#define tCircle1SpriteId data[4] +#define tCircle2SpriteId data[5] +#define tCircle3SpriteId data[6] + +#define sTargetX data[0] +#define sTargetY data[1] + +// Sprite data for CreateSlidingLogoCircleSprite +#define sSpeedX data[2] +#define sSpeedY data[3] +#define sTimerX data[4] +#define sTimerY data[5] +#define sDelayX data[6] +#define sDelayY data[7] + +// Sprite data for CreateSpiralingLogoCircleSprite +#define sAngle data[2] +#define sRotateSpeed data[3] +#define sRadius data[4] +#define sTargetRadius data[5] +#define sRadiusDelta data[6] + + static void LoadLogoGfx(void) { - u16 *dst1, *dst2; + u16 *tilemap, *tileset; - GetBg0TilesDst(&dst1, &dst2); - LZ77UnCompVram(sLogoCenter_Gfx, dst2); - LZ77UnCompVram(sLogoCenter_Tilemap, dst1); - LoadPalette(sLogo_Pal, 0xF0, 0x20); + GetBg0TilesDst(&tilemap, &tileset); + LZ77UnCompVram(sLogoCenter_Gfx, tileset); + LZ77UnCompVram(sLogoCenter_Tilemap, tilemap); + LoadPalette(sLogo_Pal, 0xF0, sizeof(sLogo_Pal)); LoadCompressedSpriteSheet(&sSpriteSheet_LogoCircles); LoadSpritePalette(&sSpritePalette_LogoCircles); } -static u8 CreateSlidingLogoCircleSprite(s16 x, s16 y, u8 arg2, u8 arg3, s8 arg4, s8 arg5, u8 spriteAnimNum) +static u8 CreateSlidingLogoCircleSprite(s16 x, s16 y, u8 delayX, u8 delayY, s8 speedX, s8 speedY, u8 spriteAnimNum) { u8 spriteId = CreateSprite(&sSpriteTemplate_LogoCircles, x, y, 0); switch (spriteAnimNum) { case 0: - gSprites[spriteId].data[0] = 120; - gSprites[spriteId].data[1] = 45; + gSprites[spriteId].sTargetX = 120; + gSprites[spriteId].sTargetY = 45; break; case 1: - gSprites[spriteId].data[0] = 89; - gSprites[spriteId].data[1] = 97; + gSprites[spriteId].sTargetX = 89; + gSprites[spriteId].sTargetY = 97; break; case 2: - gSprites[spriteId].data[0] = 151; - gSprites[spriteId].data[1] = 97; + gSprites[spriteId].sTargetX = 151; + gSprites[spriteId].sTargetY = 97; break; } - gSprites[spriteId].data[2] = arg4; - gSprites[spriteId].data[3] = arg5; - gSprites[spriteId].data[6] = arg2; - gSprites[spriteId].data[7] = arg3; - gSprites[spriteId].data[4] = 0; - gSprites[spriteId].data[5] = 0; + gSprites[spriteId].sSpeedX = speedX; + gSprites[spriteId].sSpeedY = speedY; + gSprites[spriteId].sDelayX = delayX; + gSprites[spriteId].sDelayY = delayY; + gSprites[spriteId].sTimerX = 0; + gSprites[spriteId].sTimerY = 0; StartSpriteAnim(&gSprites[spriteId], spriteAnimNum); gSprites[spriteId].callback = SpriteCB_LogoCircleSlide; @@ -240,59 +268,60 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite) { s16 *data = sprite->data; - if (sprite->x == data[0] && sprite->y == data[1]) + if (sprite->x == sTargetX && sprite->y == sTargetY) { sprite->callback = SpriteCallbackDummy; } else { - if (data[4] == data[6]) + if (sTimerX == sDelayX) { - sprite->x += data[2]; - data[4] = 0; + sprite->x += sSpeedX; + sTimerX = 0; } else { - data[4]++; + sTimerX++; } - if (data[5] == data[7]) + if (sTimerY == sDelayY) { - sprite->y += data[3]; - data[5] = 0; + sprite->y += sSpeedY; + sTimerY = 0; } else { - data[5]++; + sTimerY++; } } } -static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s16 arg6, u8 spriteAnimNum) +static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 angle, s16 rotateSpeed, s16 radiusStart, s16 radiusEnd, s16 radiusDelta, u8 spriteAnimNum) { u8 spriteId = CreateSprite(&sSpriteTemplate_LogoCircles, x, y, 0); + // Target coords are set but irrelevant switch (spriteAnimNum) { case 0: - gSprites[spriteId].data[0] = 120; - gSprites[spriteId].data[1] = 45; + gSprites[spriteId].sTargetX = 120; + gSprites[spriteId].sTargetY = 45; break; case 1: - gSprites[spriteId].data[0] = 89; - gSprites[spriteId].data[1] = 97; + gSprites[spriteId].sTargetX = 89; + gSprites[spriteId].sTargetY = 97; break; case 2: - gSprites[spriteId].data[0] = 151; - gSprites[spriteId].data[1] = 97; + gSprites[spriteId].sTargetX = 151; + gSprites[spriteId].sTargetY = 97; break; } - gSprites[spriteId].data[2] = arg2; - gSprites[spriteId].data[3] = arg3; - gSprites[spriteId].data[4] = arg4; - gSprites[spriteId].data[5] = arg5; - gSprites[spriteId].data[6] = arg6; + gSprites[spriteId].sAngle = angle; + gSprites[spriteId].sRotateSpeed = rotateSpeed; + gSprites[spriteId].sRadius = radiusStart; + gSprites[spriteId].sTargetRadius = radiusEnd; + gSprites[spriteId].sRadiusDelta = radiusDelta; StartSpriteAnim(&gSprites[spriteId], spriteAnimNum); gSprites[spriteId].callback = SpriteCB_LogoCircleSpiral; @@ -302,34 +331,32 @@ static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16 static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite) { - sprite->x2 = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 - sprite->y2 = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096 + sprite->x2 = (Sin2(sprite->sAngle) * sprite->sRadius) >> 12; // div by 4096 + sprite->y2 = (Cos2(sprite->sAngle) * sprite->sRadius) >> 12; // div by 4096 - sprite->data[2] = (sprite->data[2] + sprite->data[3]) % 360; + sprite->sAngle = (sprite->sAngle + sprite->sRotateSpeed) % 360; - if (sprite->data[4] != sprite->data[5]) - sprite->data[4] += sprite->data[6]; + if (sprite->sRadius != sprite->sTargetRadius) + sprite->sRadius += sprite->sRadiusDelta; else sprite->callback = SpriteCallbackDummy; } -#define tState data[0] - static void DestroyLogoCirclesGfx(struct Task *task) { FreeSpriteTilesByTag(PALTAG_LOGO_CIRCLES); FreeSpritePaletteByTag(PALTAG_LOGO_CIRCLES); - DestroySprite(&gSprites[task->data[4]]); - DestroySprite(&gSprites[task->data[5]]); - DestroySprite(&gSprites[task->data[6]]); + DestroySprite(&gSprites[task->tCircle1SpriteId]); + DestroySprite(&gSprites[task->tCircle2SpriteId]); + DestroySprite(&gSprites[task->tCircle3SpriteId]); } static bool8 IsLogoCirclesAnimFinished(struct Task *task) { - if (gSprites[task->data[4]].callback == SpriteCallbackDummy - && gSprites[task->data[5]].callback == SpriteCallbackDummy - && gSprites[task->data[6]].callback == SpriteCallbackDummy) + if (gSprites[task->tCircle1SpriteId].callback == SpriteCallbackDummy + && gSprites[task->tCircle2SpriteId].callback == SpriteCallbackDummy + && gSprites[task->tCircle3SpriteId].callback == SpriteCallbackDummy) return TRUE; else return FALSE; @@ -337,13 +364,13 @@ static bool8 IsLogoCirclesAnimFinished(struct Task *task) static bool8 Circles_Init(struct Task *task) { - if (task->data[1] == 0) + if (task->tTimer == 0) { ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN1_ON); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON); - task->data[1]++; + task->tTimer++; return FALSE; } else @@ -355,7 +382,7 @@ static bool8 Circles_Init(struct Task *task) ChangeBgY(0, 0, 0); ChangeBgY(0, 0x500, 2); - task->data[1] = 0; + task->tTimer = 0; task->tState++; return TRUE; } @@ -363,27 +390,27 @@ static bool8 Circles_Init(struct Task *task) static bool8 FadeInCenterLogoCircle(struct Task *task) { - if (task->data[2] == 0) + if (task->tBlend == 0) SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON); - if (task->data[2] == 16) + if (task->tBlend == 16) { - if (task->data[3] == 31) + if (task->tFadeTimer == 31) { BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_BLACK); task->tState++; } else { - task->data[3]++; + task->tFadeTimer++; } } else { u16 blnd; - task->data[2]++; - blnd = task->data[2]; + task->tBlend++; + blnd = task->tBlend; SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(blnd, 16 - blnd)); } @@ -405,9 +432,9 @@ void Task_FrontierCirclesMeet(u8 taskId) static bool8 CirclesMeet_CreateSprites(struct Task *task) { - task->data[4] = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 2, 0); - task->data[5] = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 2, -2, 1); - task->data[6] = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -2, -2, 2); + task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 2, 0); + task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 2, -2, 1); + task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -2, -2, 2); task->tState++; return FALSE; @@ -431,9 +458,9 @@ void Task_FrontierCirclesCross(u8 taskId) static bool8 CirclesCross_CreateSprites(struct Task *task) { - task->data[4] = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -4, 0); - task->data[5] = CreateSlidingLogoCircleSprite(241, 59, 0, 1, -4, 2, 1); - task->data[6] = CreateSlidingLogoCircleSprite(-1, 59, 0, 1, 4, 2, 2); + task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -4, 0); + task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(241, 59, 0, 1, -4, 2, 1); + task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(-1, 59, 0, 1, 4, 2, 2); task->tState++; return FALSE; @@ -457,9 +484,9 @@ void Task_FrontierCirclesAsymmetricSpiral(u8 taskId) static bool8 CirclesAsymmetricSpiral_CreateSprites(struct Task *task) { - task->data[4] = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0); - task->data[5] = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1); - task->data[6] = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2); + task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0); + task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1); + task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2); task->tState++; return FALSE; @@ -483,9 +510,9 @@ void Task_FrontierCirclesSymmetricSpiral(u8 taskId) static bool8 CirclesSymmetricSpiral_CreateSprites(struct Task *task) { - task->data[4] = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0); - task->data[5] = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1); - task->data[6] = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2); + task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0); + task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1); + task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2); task->tState++; return FALSE; @@ -509,21 +536,21 @@ void Task_FrontierCirclesMeetInSeq(u8 taskId) static bool8 CirclesMeetInSeq_CreateSprites(struct Task *task) { - if (task->data[1] == 0) + if (task->tTimer == 0) { - task->data[4] = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 4, 0); + task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 4, 0); } - else if (task->data[1] == 16) + else if (task->tTimer == 16) { - task->data[5] = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 4, -4, 1); + task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 4, -4, 1); } - else if (task->data[1] == 32) + else if (task->tTimer == 32) { - task->data[6] = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -4, -4, 2); + task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -4, -4, 2); task->tState++; } - task->data[1]++; + task->tTimer++; return FALSE; } @@ -545,21 +572,21 @@ void Task_FrontierCirclesCrossInSeq(u8 taskId) static bool8 CirclesCrossInSeq_CreateSprites(struct Task *task) { - if (task->data[1] == 0) + if (task->tTimer == 0) { - task->data[4] = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -8, 0); + task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -8, 0); } - else if (task->data[1] == 16) + else if (task->tTimer == 16) { - task->data[5] = CreateSlidingLogoCircleSprite(241, 78, 0, 0, -8, 1, 1); + task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(241, 78, 0, 0, -8, 1, 1); } - else if (task->data[1] == 32) + else if (task->tTimer == 32) { - task->data[6] = CreateSlidingLogoCircleSprite(-1, 78, 0, 0, 8, 1, 2); + task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(-1, 78, 0, 0, 8, 1, 2); task->tState++; } - task->data[1]++; + task->tTimer++; return FALSE; } @@ -581,21 +608,21 @@ void Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId) static bool8 CirclesAsymmetricSpiralInSeq_CreateSprites(struct Task *task) { - if (task->data[1] == 0) + if (task->tTimer == 0) { - task->data[4] = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0); + task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0); } - else if (task->data[1] == 16) + else if (task->tTimer == 16) { - task->data[5] = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1); + task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1); } - else if (task->data[1] == 32) + else if (task->tTimer == 32) { - task->data[6] = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2); + task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2); task->tState++; } - task->data[1]++; + task->tTimer++; return FALSE; } @@ -617,21 +644,21 @@ void Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId) static bool8 CirclesSymmetricSpiralInSeq_CreateSprites(struct Task *task) { - if (task->data[1] == 0) + if (task->tTimer == 0) { - task->data[4] = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0); + task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0); } - else if (task->data[1] == 16) + else if (task->tTimer == 16) { - task->data[5] = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1); + task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1); } - else if (task->data[1] == 32) + else if (task->tTimer == 32) { - task->data[6] = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2); + task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2); task->tState++; } - task->data[1]++; + task->tTimer++; return FALSE; } From b3d779fd0d04df5a53e7615d776f12670a030946 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 27 Oct 2021 01:27:20 +0800 Subject: [PATCH 339/762] Document field player functions --- berry_fix/payload/include/global.fieldmap.h | 16 +++---- include/field_player_avatar.h | 4 +- include/global.fieldmap.h | 16 +++---- src/apprentice.c | 2 +- src/battle_setup.c | 8 ++-- src/event_object_lock.c | 6 +-- src/event_object_movement.c | 2 +- src/field_effect.c | 2 +- src/field_player_avatar.c | 49 +++++++++++---------- src/item_menu.c | 2 +- src/match_call.c | 2 +- src/start_menu.c | 2 +- src/trainer_see.c | 2 +- 13 files changed, 57 insertions(+), 56 deletions(-) diff --git a/berry_fix/payload/include/global.fieldmap.h b/berry_fix/payload/include/global.fieldmap.h index d5ab0812e5b5..e7150b429f38 100644 --- a/berry_fix/payload/include/global.fieldmap.h +++ b/berry_fix/payload/include/global.fieldmap.h @@ -219,14 +219,14 @@ struct EventObjectGraphicsInfo /*0x20*/ const union AffineAnimCmd *const *affineAnims; }; -#define PLAYER_AVATAR_FLAG_ON_FOOT (1 << 0) -#define PLAYER_AVATAR_FLAG_MACH_BIKE (1 << 1) -#define PLAYER_AVATAR_FLAG_ACRO_BIKE (1 << 2) -#define PLAYER_AVATAR_FLAG_SURFING (1 << 3) -#define PLAYER_AVATAR_FLAG_UNDERWATER (1 << 4) -#define PLAYER_AVATAR_FLAG_5 (1 << 5) -#define PLAYER_AVATAR_FLAG_6 (1 << 6) -#define PLAYER_AVATAR_FLAG_DASH (1 << 7) +#define PLAYER_AVATAR_FLAG_ON_FOOT (1 << 0) +#define PLAYER_AVATAR_FLAG_MACH_BIKE (1 << 1) +#define PLAYER_AVATAR_FLAG_ACRO_BIKE (1 << 2) +#define PLAYER_AVATAR_FLAG_SURFING (1 << 3) +#define PLAYER_AVATAR_FLAG_UNDERWATER (1 << 4) +#define PLAYER_AVATAR_FLAG_CONTROLLABLE (1 << 5) +#define PLAYER_AVATAR_FLAG_FORCED_MOVE (1 << 6) +#define PLAYER_AVATAR_FLAG_DASH (1 << 7) enum { diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 903fe6ef1bdc..e9174d589469 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -32,10 +32,10 @@ void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction); u8 CheckForObjectEventCollision(struct ObjectEvent *a, s16 b, s16 c, u8 d, u8 e); u8 PlayerGetZCoord(void); void SetPlayerAvatarTransitionFlags(u16 a); -void sub_808BCE8(void); +void CancelPlayerForcedMovement(void); void InitPlayerAvatar(s16 a, s16 b, u8 c, u8 d); void PlayerFreeze(void); -void sub_808BCF4(void); +void StopPlayerAvatar(void); void SetSpinStartFacingDir(u8); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8); diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 5d788ddf7d77..71ccd70680c9 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -246,14 +246,14 @@ enum { PLAYER_AVATAR_STATE_WATERING, }; -#define PLAYER_AVATAR_FLAG_ON_FOOT (1 << 0) -#define PLAYER_AVATAR_FLAG_MACH_BIKE (1 << 1) -#define PLAYER_AVATAR_FLAG_ACRO_BIKE (1 << 2) -#define PLAYER_AVATAR_FLAG_SURFING (1 << 3) -#define PLAYER_AVATAR_FLAG_UNDERWATER (1 << 4) -#define PLAYER_AVATAR_FLAG_5 (1 << 5) -#define PLAYER_AVATAR_FLAG_FORCED_MOVE (1 << 6) -#define PLAYER_AVATAR_FLAG_DASH (1 << 7) +#define PLAYER_AVATAR_FLAG_ON_FOOT (1 << 0) +#define PLAYER_AVATAR_FLAG_MACH_BIKE (1 << 1) +#define PLAYER_AVATAR_FLAG_ACRO_BIKE (1 << 2) +#define PLAYER_AVATAR_FLAG_SURFING (1 << 3) +#define PLAYER_AVATAR_FLAG_UNDERWATER (1 << 4) +#define PLAYER_AVATAR_FLAG_CONTROLLABLE (1 << 5) +#define PLAYER_AVATAR_FLAG_FORCED_MOVE (1 << 6) +#define PLAYER_AVATAR_FLAG_DASH (1 << 7) enum { diff --git a/src/apprentice.c b/src/apprentice.c index f881c3bef623..5d1c4287b839 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -911,7 +911,7 @@ static void Script_PrintApprenticeMessage(void) ScriptContext2_Enable(); FreezeObjectEvents(); PlayerFreeze(); - sub_808BCF4(); + StopPlayerAvatar(); DrawDialogueFrame(0, 1); PrintApprenticeMessage(); } diff --git a/src/battle_setup.c b/src/battle_setup.c index 2a716e08c71f..90c004b55d51 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -399,7 +399,7 @@ static void DoStandardWildBattle(void) { ScriptContext2_Enable(); FreezeObjectEvents(); - sub_808BCF4(); + StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; gBattleTypeFlags = 0; if (InBattlePyramid()) @@ -418,7 +418,7 @@ void BattleSetup_StartRoamerBattle(void) { ScriptContext2_Enable(); FreezeObjectEvents(); - sub_808BCF4(); + StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; gBattleTypeFlags = BATTLE_TYPE_ROAMER; CreateBattleStartTask(GetWildBattleTransition(), 0); @@ -432,7 +432,7 @@ static void DoSafariBattle(void) { ScriptContext2_Enable(); FreezeObjectEvents(); - sub_808BCF4(); + StopPlayerAvatar(); gMain.savedCallback = CB2_EndSafariBattle; gBattleTypeFlags = BATTLE_TYPE_SAFARI; CreateBattleStartTask(GetWildBattleTransition(), 0); @@ -442,7 +442,7 @@ static void DoBattlePikeWildBattle(void) { ScriptContext2_Enable(); FreezeObjectEvents(); - sub_808BCF4(); + StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; gBattleTypeFlags = BATTLE_TYPE_PIKE; CreateBattleStartTask(GetWildBattleTransition(), 0); diff --git a/src/event_object_lock.c b/src/event_object_lock.c index 179c7281370b..29575111fbba 100644 --- a/src/event_object_lock.c +++ b/src/event_object_lock.c @@ -34,7 +34,7 @@ bool8 IsFreezePlayerFinished(void) } else { - sub_808BCF4(); + StopPlayerAvatar(); return TRUE; } } @@ -77,7 +77,7 @@ bool8 IsFreezeSelectedObjectAndPlayerFinished(void) } else { - sub_808BCF4(); + StopPlayerAvatar(); return TRUE; } } @@ -198,7 +198,7 @@ bool8 IsFreezeObjectAndPlayerFinished(void) } else { - sub_808BCF4(); + StopPlayerAvatar(); return TRUE; } } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 2f7cb9e7a2ee..2616b65e8153 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1770,7 +1770,7 @@ static void SetPlayerAvatarObjectEventIdAndObjectId(u8 objectEventId, u8 spriteI gPlayerAvatar.objectEventId = objectEventId; gPlayerAvatar.spriteId = spriteId; gPlayerAvatar.gender = GetPlayerAvatarGenderByGraphicsId(gObjectEvents[objectEventId].graphicsId); - SetPlayerAvatarExtraStateTransition(gObjectEvents[objectEventId].graphicsId, PLAYER_AVATAR_FLAG_5); + SetPlayerAvatarExtraStateTransition(gObjectEvents[objectEventId].graphicsId, PLAYER_AVATAR_FLAG_CONTROLLABLE); } void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId) diff --git a/src/field_effect.c b/src/field_effect.c index 88f8065d3fbf..247744b879d3 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3051,7 +3051,7 @@ static void SurfFieldEffect_End(struct Task *task) if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { gPlayerAvatar.preventStep = FALSE; - gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_5; + gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_CONTROLLABLE; ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->movementDirection)); SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_PLAYER_AND_MON); UnfreezeObjectEvents(); diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 276fb44b24cf..158248d17794 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -69,8 +69,8 @@ static void PlayerNotOnBikeNotMoving(u8, u16); static void PlayerNotOnBikeTurningInPlace(u8, u16); static void PlayerNotOnBikeMoving(u8, u16); static u8 CheckForPlayerAvatarCollision(u8); -static u8 sub_808B028(u8); -static u8 sub_808B164(struct ObjectEvent *, s16, s16, u8, u8); +static u8 CheckForPlayerAvatarSomeCollision(u8); +static u8 CheckForObjectEventSomeCollision(struct ObjectEvent *, s16, s16, u8, u8); static bool8 CanStopSurfing(s16, s16, u8); static bool8 ShouldJumpLedge(s16, s16, u8); static bool8 TryPushBoulder(s16, s16, u8); @@ -85,8 +85,8 @@ static void PlayerAvatarTransition_Surfing(struct ObjectEvent *a); static void PlayerAvatarTransition_Underwater(struct ObjectEvent *a); static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *a); -static bool8 player_is_anim_in_certain_ranges(void); -static bool8 sub_808B618(void); +static bool8 PlayerAnimIsMultiFrameStationary(void); +static bool8 PlayerAnimIsMultiFrameStationaryAndStateNotTurning(void); static bool8 PlayerIsAnimActive(void); static bool8 PlayerCheckIfAnimFinishedOrInactive(void); @@ -187,7 +187,7 @@ static bool8 (*const sForcedMovementFuncs[])(void) = ForcedMovement_MuddySlope, }; -static void (*const gUnknown_08497490[])(u8, u16) = +static void (*const sPlayerNotOnBikeFuncs[])(u8, u16) = { PlayerNotOnBikeNotMoving, PlayerNotOnBikeTurningInPlace, @@ -359,7 +359,7 @@ static bool8 TryInterruptObjectEventSpecialAnim(struct ObjectEvent *playerObjEve return FALSE; } - if (!sub_808B028(direction)) + if (CheckForPlayerAvatarSomeCollision(direction) == COLLISION_NONE) { ObjectEventClearHeldMovement(playerObjEvent); return FALSE; @@ -391,7 +391,7 @@ static void MovePlayerAvatarUsingKeypadInput(u8 direction, u16 newKeys, u16 held static void PlayerAllowForcedMovementIfMovingSameDirection(void) { if (gPlayerAvatar.runningState == MOVING) - gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_5; + gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_CONTROLLABLE; } static bool8 TryDoMetatileBehaviorForcedMovement(void) @@ -403,7 +403,7 @@ static u8 GetForcedMovementByMetatileBehavior(void) { u8 i; - if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_5)) + if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_CONTROLLABLE)) { u8 metatileBehavior = gObjectEvents[gPlayerAvatar.objectEventId].currentMetatileBehavior; @@ -572,7 +572,7 @@ static bool8 ForcedMovement_MuddySlope(void) static void MovePlayerNotOnBike(u8 direction, u16 heldKeys) { - gUnknown_08497490[CheckMovementInputNotOnBike(direction)](direction, heldKeys); + sPlayerNotOnBikeFuncs[CheckMovementInputNotOnBike(direction)](direction, heldKeys); } static u8 CheckMovementInputNotOnBike(u8 direction) @@ -660,7 +660,7 @@ static u8 CheckForPlayerAvatarCollision(u8 direction) return CheckForObjectEventCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); } -static u8 sub_808B028(u8 direction) +static u8 CheckForPlayerAvatarSomeCollision(u8 direction) { s16 x, y; struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; @@ -668,7 +668,7 @@ static u8 sub_808B028(u8 direction) x = playerObjEvent->currentCoords.x; y = playerObjEvent->currentCoords.y; MoveCoords(direction, &x, &y); - return sub_808B164(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); + return CheckForObjectEventSomeCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); } u8 CheckForObjectEventCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) @@ -694,7 +694,7 @@ u8 CheckForObjectEventCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u return collision; } -static u8 sub_808B164(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) +static u8 CheckForObjectEventSomeCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) { u8 collision = GetCollisionAtCoords(objectEvent, x, y, direction); @@ -876,7 +876,7 @@ static void PlayerAvatarTransition_Underwater(struct ObjectEvent *objEvent) static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *objEvent) { - gPlayerAvatar.flags |= PLAYER_AVATAR_FLAG_5; + gPlayerAvatar.flags |= PLAYER_AVATAR_FLAG_CONTROLLABLE; } void UpdatePlayerAvatarTransitionState(void) @@ -886,18 +886,18 @@ void UpdatePlayerAvatarTransitionState(void) { if (!PlayerCheckIfAnimFinishedOrInactive()) { - if (!player_is_anim_in_certain_ranges()) + if (!PlayerAnimIsMultiFrameStationary()) gPlayerAvatar.tileTransitionState = T_TILE_TRANSITION; } else { - if (!sub_808B618()) + if (!PlayerAnimIsMultiFrameStationaryAndStateNotTurning()) gPlayerAvatar.tileTransitionState = T_TILE_CENTER; } } } -static bool8 player_is_anim_in_certain_ranges(void) +static bool8 PlayerAnimIsMultiFrameStationary(void) { u8 movementActionId = gObjectEvents[gPlayerAvatar.objectEventId].movementActionId; @@ -911,9 +911,9 @@ static bool8 player_is_anim_in_certain_ranges(void) return FALSE; } -static bool8 sub_808B618(void) +static bool8 PlayerAnimIsMultiFrameStationaryAndStateNotTurning(void) { - if (player_is_anim_in_certain_ranges() && gPlayerAvatar.runningState != TURN_DIRECTION) + if (PlayerAnimIsMultiFrameStationary() && gPlayerAvatar.runningState != TURN_DIRECTION) return TRUE; else return FALSE; @@ -1177,7 +1177,8 @@ u8 PlayerGetZCoord(void) return gObjectEvents[gPlayerAvatar.objectEventId].previousElevation; } -void sub_808BC90(s16 x, s16 y) +// unused +void MovePlayerToMapCoords(s16 x, s16 y) { MoveObjectEventToMapCoords(&gObjectEvents[gPlayerAvatar.objectEventId], x, y); } @@ -1197,12 +1198,12 @@ u8 GetPlayerAvatarSpriteId(void) return gPlayerAvatar.spriteId; } -void sub_808BCE8(void) +void CancelPlayerForcedMovement(void) { ForcedMovement_None(); } -void sub_808BCF4(void) +void StopPlayerAvatar(void) { struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; @@ -1323,7 +1324,7 @@ void ClearPlayerAvatarInfo(void) void SetPlayerAvatarStateMask(u8 flags) { - gPlayerAvatar.flags &= (PLAYER_AVATAR_FLAG_DASH | PLAYER_AVATAR_FLAG_FORCED_MOVE | PLAYER_AVATAR_FLAG_5); + gPlayerAvatar.flags &= (PLAYER_AVATAR_FLAG_DASH | PLAYER_AVATAR_FLAG_FORCED_MOVE | PLAYER_AVATAR_FLAG_CONTROLLABLE); gPlayerAvatar.flags |= flags; } @@ -1389,7 +1390,7 @@ void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender) gPlayerAvatar.objectEventId = objectEventId; gPlayerAvatar.spriteId = objectEvent->spriteId; gPlayerAvatar.gender = gender; - SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_5 | PLAYER_AVATAR_FLAG_ON_FOOT); + SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_CONTROLLABLE | PLAYER_AVATAR_FLAG_ON_FOOT); } void SetPlayerInvisibility(bool8 invisible) @@ -1542,7 +1543,7 @@ static u8 PlayerAvatar_DoSecretBaseMatJump(struct Task *task, struct ObjectEvent if (task->data[1] > 1) { gPlayerAvatar.preventStep = FALSE; - gPlayerAvatar.transitionFlags |= PLAYER_AVATAR_FLAG_5; + gPlayerAvatar.transitionFlags |= PLAYER_AVATAR_FLAG_CONTROLLABLE; DestroyTask(FindTaskIdByFunc(DoPlayerAvatarSecretBaseMatJump)); } } diff --git a/src/item_menu.c b/src/item_menu.c index 8ada7ff62dfa..53f478a31d98 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2047,7 +2047,7 @@ bool8 UseRegisteredKeyItemOnField(void) ScriptContext2_Enable(); FreezeObjectEvents(); PlayerFreeze(); - sub_808BCF4(); + StopPlayerAvatar(); gSpecialVar_ItemId = gSaveBlock1Ptr->registeredItem; taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1Ptr->registeredItem), 8); gTasks[taskId].tUsingRegisteredKeyItem = TRUE; diff --git a/src/match_call.c b/src/match_call.c index b71fc832201d..d6bc5126e851 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1180,7 +1180,7 @@ static void StartMatchCall(void) ScriptContext2_Enable(); FreezeObjectEvents(); PlayerFreeze(); - sub_808BCF4(); + StopPlayerAvatar(); } PlaySE(SE_POKENAV_CALL); diff --git a/src/start_menu.c b/src/start_menu.c index 9f271b890a05..59279d6b9fb2 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -558,7 +558,7 @@ void ShowStartMenu(void) { FreezeObjectEvents(); PlayerFreeze(); - sub_808BCF4(); + StopPlayerAvatar(); } CreateStartMenuTask(Task_ShowStartMenu); ScriptContext2_Enable(); diff --git a/src/trainer_see.c b/src/trainer_see.c index ec3dc8123e3e..ce06c5e9ce0d 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -523,7 +523,7 @@ static bool8 PlayerFaceApproachingTrainer(u8 taskId, struct Task *task, struct O if (ObjectEventIsMovementOverridden(playerObj) && !ObjectEventClearHeldMovementIfFinished(playerObj)) return FALSE; - sub_808BCE8(); + CancelPlayerForcedMovement(); ObjectEventSetHeldMovement(&gObjectEvents[gPlayerAvatar.objectEventId], GetFaceDirectionMovementAction(GetOppositeDirection(trainerObj->facingDirection))); task->tFuncId++; // TRSEE_PLAYER_FACE_WAIT return FALSE; From bd9ea239256ecdb716e31c9063102cf52f972f93 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 27 Oct 2021 02:20:12 +0800 Subject: [PATCH 340/762] Rename as StaticCollision instead --- src/field_player_avatar.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 158248d17794..e770ce35dc4f 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -69,8 +69,8 @@ static void PlayerNotOnBikeNotMoving(u8, u16); static void PlayerNotOnBikeTurningInPlace(u8, u16); static void PlayerNotOnBikeMoving(u8, u16); static u8 CheckForPlayerAvatarCollision(u8); -static u8 CheckForPlayerAvatarSomeCollision(u8); -static u8 CheckForObjectEventSomeCollision(struct ObjectEvent *, s16, s16, u8, u8); +static u8 CheckForPlayerAvatarStaticCollision(u8); +static u8 CheckForObjectEventStaticCollision(struct ObjectEvent *, s16, s16, u8, u8); static bool8 CanStopSurfing(s16, s16, u8); static bool8 ShouldJumpLedge(s16, s16, u8); static bool8 TryPushBoulder(s16, s16, u8); @@ -359,7 +359,7 @@ static bool8 TryInterruptObjectEventSpecialAnim(struct ObjectEvent *playerObjEve return FALSE; } - if (CheckForPlayerAvatarSomeCollision(direction) == COLLISION_NONE) + if (CheckForPlayerAvatarStaticCollision(direction) == COLLISION_NONE) { ObjectEventClearHeldMovement(playerObjEvent); return FALSE; @@ -660,7 +660,7 @@ static u8 CheckForPlayerAvatarCollision(u8 direction) return CheckForObjectEventCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); } -static u8 CheckForPlayerAvatarSomeCollision(u8 direction) +static u8 CheckForPlayerAvatarStaticCollision(u8 direction) { s16 x, y; struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; @@ -668,7 +668,7 @@ static u8 CheckForPlayerAvatarSomeCollision(u8 direction) x = playerObjEvent->currentCoords.x; y = playerObjEvent->currentCoords.y; MoveCoords(direction, &x, &y); - return CheckForObjectEventSomeCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); + return CheckForObjectEventStaticCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); } u8 CheckForObjectEventCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) @@ -694,7 +694,7 @@ u8 CheckForObjectEventCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u return collision; } -static u8 CheckForObjectEventSomeCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) +static u8 CheckForObjectEventStaticCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior) { u8 collision = GetCollisionAtCoords(objectEvent, x, y, direction); From b0c27a852100dfd3b2eddd51e9742cb6a3b14cbe Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 26 Oct 2021 13:37:24 -0400 Subject: [PATCH 341/762] Document ereader screen --- common_syms/ereader_screen.txt | 2 +- ..._serial_data.bin => ereader_link_data.bin} | Bin data/ereader_link_data.s | 6 + data/unknown_serial_data.s | 5 - include/ereader_helpers.h | 28 + include/link.h | 7 +- ld_script.txt | 2 +- ld_script_modern.txt | 2 +- src/ereader_helpers.c | 37 +- src/ereader_screen.c | 483 ++++++++++-------- src/link.c | 18 +- 11 files changed, 330 insertions(+), 260 deletions(-) rename data/{unknown_serial_data.bin => ereader_link_data.bin} (100%) create mode 100644 data/ereader_link_data.s delete mode 100644 data/unknown_serial_data.s diff --git a/common_syms/ereader_screen.txt b/common_syms/ereader_screen.txt index 5a89d370d096..2189eedbc925 100644 --- a/common_syms/ereader_screen.txt +++ b/common_syms/ereader_screen.txt @@ -1 +1 @@ -gUnknown_03006370 +gEReaderData diff --git a/data/unknown_serial_data.bin b/data/ereader_link_data.bin similarity index 100% rename from data/unknown_serial_data.bin rename to data/ereader_link_data.bin diff --git a/data/ereader_link_data.s b/data/ereader_link_data.s new file mode 100644 index 000000000000..d3269ebfe0c5 --- /dev/null +++ b/data/ereader_link_data.s @@ -0,0 +1,6 @@ + .section .rodata + + .align 2 +gEReaderLinkData_Start:: + .incbin "data/ereader_link_data.bin" +gEReaderLinkData_End:: diff --git a/data/unknown_serial_data.s b/data/unknown_serial_data.s deleted file mode 100644 index 2fb1ba42bbe1..000000000000 --- a/data/unknown_serial_data.s +++ /dev/null @@ -1,5 +0,0 @@ - .section .rodata - - .align 2 -gUnknown_089A3470:: - .incbin "data/unknown_serial_data.bin" diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h index 064b61ed7f97..8bf3dc43b6f5 100755 --- a/include/ereader_helpers.h +++ b/include/ereader_helpers.h @@ -3,6 +3,34 @@ #include "trainer_hill.h" +enum { + EREADER_XFR_STATE_INIT = 0, + EREADER_XFR_STATE_HANDSHAKE, + EREADER_XFR_STATE_START, + EREADER_XFR_STATE_TRANSFER, + EREADER_XFR_STATE_TRANSFER_DONE, + EREADER_XFR_STATE_CHECKSUM, + EREADER_XFR_STATE_DONE +}; + +#define EREADER_XFER_EXE 1 +#define EREADER_XFER_CHK 2 +#define EREADER_XFER_SHIFT 0 +#define EREADER_XFER_MASK ((EREADER_XFER_EXE | EREADER_XFER_CHK) << EREADER_XFER_SHIFT) + +#define EREADER_CANCEL_TIMEOUT 1 +#define EREADER_CANCEL_KEY 2 +#define EREADER_CANCEL_SHIFT 2 +#define EREADER_CANCEL_TIMEOUT_MASK (EREADER_CANCEL_TIMEOUT << EREADER_CANCEL_SHIFT) +#define EREADER_CANCEL_KEY_MASK (EREADER_CANCEL_KEY << EREADER_CANCEL_SHIFT) +#define EREADER_CANCEL_MASK ((EREADER_CANCEL_TIMEOUT | EREADER_CANCEL_KEY) << EREADER_CANCEL_SHIFT) + +#define EREADER_CHECKSUM_OK 1 +#define EREADER_CHECKSUM_ERR 2 +#define EREADER_CHECKSUM_SHIFT 4 +#define EREADER_CHECKSUM_OK_MASK (EREADER_CHECKSUM_OK << EREADER_CHECKSUM_SHIFT) +#define EREADER_CHECKSUM_MASK ((EREADER_CHECKSUM_OK | EREADER_CHECKSUM_ERR) << EREADER_CHECKSUM_SHIFT) + struct EReaderTrainerHillTrainer { u8 trainerNum; diff --git a/include/link.h b/include/link.h index 4e0491356cad..6061745af3e4 100644 --- a/include/link.h +++ b/include/link.h @@ -124,8 +124,9 @@ struct LinkStatus u32 errors:7; }; -#define MASTER_HANDSHAKE 0x8FFF -#define SLAVE_HANDSHAKE 0xB9A0 +#define MASTER_HANDSHAKE 0x8FFF +#define SLAVE_HANDSHAKE 0xB9A0 +#define EREADER_HANDSHAKE 0xCCD0 #define SIO_MULTI_CNT ((struct SioMultiCnt *)REG_ADDR_SIOCNT) @@ -208,7 +209,7 @@ struct Link /* 0x001 */ u8 state; /* 0x002 */ u8 localId; // local multi-player ID /* 0x003 */ u8 playerCount; - /* 0x004 */ u16 tempRecvBuffer[4]; + /* 0x004 */ u16 handshakeBuffer[MAX_LINK_PLAYERS]; /* 0x00c */ bool8 receivedNothing; /* 0x00d */ s8 serialIntrCounter; /* 0x00e */ bool8 handshakeAsMaster; diff --git a/ld_script.txt b/ld_script.txt index 93babfa1638c..3c1a2509440b 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -1250,7 +1250,7 @@ SECTIONS { other_data : ALIGN(4) { - data/unknown_serial_data.o(.rodata); + data/ereader_link_data.o(.rodata); data/multiboot_berry_glitch_fix.o(.rodata); data/multiboot_pokemon_colosseum.o(.rodata); } =0 diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 59d032bb2504..c5c711bfdb47 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -114,7 +114,7 @@ SECTIONS { other_data : ALIGN(4) { - data/unknown_serial_data.o(.rodata); + data/ereader_link_data.o(.rodata); data/multiboot_berry_glitch_fix.o(.rodata); data/multiboot_pokemon_colosseum.o(.rodata); } =0 diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index 9f265143ccd5..9a93707d85cb 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -16,31 +16,6 @@ #include "constants/items.h" #include "constants/trainer_hill.h" -enum { - EREADER_XFR_STATE_INIT = 0, - EREADER_XFR_STATE_HANDSHAKE, - EREADER_XFR_STATE_START, - EREADER_XFR_STATE_TRANSFER, - EREADER_XFR_STATE_TRANSFER_DONE, - EREADER_XFR_STATE_CHECKSUM, - EREADER_XFR_STATE_DONE -}; - -#define EREADER_XFER_EXE 1 -#define EREADER_XFER_CHK 2 -#define EREADER_XFER_SHIFT 0 -#define EREADER_XFER_MASK 3 - -#define EREADER_CANCEL_TIMEOUT 1 -#define EREADER_CANCEL_KEY 2 -#define EREADER_CANCEL_MASK 0xC -#define EREADER_CANCEL_SHIFT 2 - -#define EREADER_CHECKSUM_OK 1 -#define EREADER_CHECKSUM_ERR 2 -#define EREADER_CHECKSUM_MASK 0x30 -#define EREADER_CHECKSUM_SHIFT 4 - struct SendRecvMgr { bool8 isParent; @@ -562,17 +537,17 @@ int EReader_Send(int size, const void * src) sendStatus = EReaderHandleTransfer(1, size, src, NULL); sSendRecvStatus = sendStatus; - if ((sSendRecvStatus & 0x13) == 0x10) + if ((sSendRecvStatus & EREADER_XFER_MASK) == 0 && sSendRecvStatus & EREADER_CHECKSUM_OK_MASK) { result = 0; break; } - else if (sSendRecvStatus & 0x8) + else if (sSendRecvStatus & EREADER_CANCEL_KEY_MASK) { result = 1; break; } - else if (sSendRecvStatus & 0x4) + else if (sSendRecvStatus & EREADER_CANCEL_TIMEOUT_MASK) { result = 2; break; @@ -603,17 +578,17 @@ int EReader_Recv(void * dest) recvStatus = EReaderHandleTransfer(0, 0, NULL, dest); sSendRecvStatus = recvStatus; - if ((sSendRecvStatus & 0x13) == 0x10) + if ((sSendRecvStatus & EREADER_XFER_MASK) == 0 && sSendRecvStatus & EREADER_CHECKSUM_OK_MASK) { result = 0; break; } - else if (sSendRecvStatus & 0x8) + else if (sSendRecvStatus & EREADER_CANCEL_KEY_MASK) { result = 1; break; } - else if (sSendRecvStatus & 0x4) + else if (sSendRecvStatus & EREADER_CANCEL_TIMEOUT_MASK) { result = 2; break; diff --git a/src/ereader_screen.c b/src/ereader_screen.c index 73a1b870e431..f98a0247d36e 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -13,37 +13,38 @@ #include "util.h" #include "constants/songs.h" +// Equivalent to MysteryGiftTaskData struct EReaderTaskData { - u16 unk0; - u16 unk2; - u16 unk4; - u16 unk6; - u8 unk8; - u8 unk9; - u8 unkA; - u8 unkB; - u8 unkC; - u8 unkD; - u8 unkE; - u8 *unk10; + u16 timer; + u16 unused1; + u16 unused2; + u16 unused3; + u8 state; + u8 textState; + u8 unused4; + u8 unused5; + u8 unused6; + u8 unused7; + u8 status; + u8 *unusedBuffer; }; -struct Unk03006370 +struct EReaderData { - u16 unk0; - u32 unk4; - u32 *unk8; + u16 status; + u32 size; + u32 *data; }; static void Task_EReader(u8); -struct Unk03006370 gUnknown_03006370; +struct EReaderData gEReaderData; -extern const u8 gUnknown_089A3470[]; -extern const u8 gMultiBootProgram_BerryGlitchFix_Start[]; +extern const u8 gEReaderLinkData_Start[]; +extern const u8 gEReaderLinkData_End[]; -static void sub_81D4D50(struct Unk03006370 *arg0, int arg1, u32 *arg2) +static void EReader_Load(struct EReaderData *eReader, int size, u32 *data) { volatile u16 backupIME = REG_IME; REG_IME = 0; @@ -53,12 +54,12 @@ static void sub_81D4D50(struct Unk03006370 *arg0, int arg1, u32 *arg2) EReaderHelper_ClearSendRecvMgr(); REG_IE |= INTR_FLAG_VCOUNT; REG_IME = backupIME; - arg0->unk0 = 0; - arg0->unk4 = arg1; - arg0->unk8 = arg2; + eReader->status = 0; + eReader->size = size; + eReader->data = data; } -static void sub_81D4DB8(struct Unk03006370 *arg0) +static void EReader_Reset(struct EReaderData *eReader) { volatile u16 backupIME = REG_IME; REG_IME = 0; @@ -68,21 +69,30 @@ static void sub_81D4DB8(struct Unk03006370 *arg0) REG_IME = backupIME; } -static u8 sub_81D4DE8(struct Unk03006370 *arg0) +// Return values for EReader_Transfer +enum { + TRANSFER_ACTIVE, + TRANSFER_SUCCESS, + TRANSFER_CANCELED, + TRANSFER_TIMEOUT, +}; + +static u8 EReader_Transfer(struct EReaderData *eReader) { - u8 var0 = 0; - arg0->unk0 = EReaderHandleTransfer(1, arg0->unk4, arg0->unk8, NULL); - if ((arg0->unk0 & 0x13) == 0x10) - var0 = 1; + u8 transferStatus = TRANSFER_ACTIVE; + eReader->status = EReaderHandleTransfer(TRUE, eReader->size, eReader->data, NULL); - if (arg0->unk0 & 0x8) - var0 = 2; + if ((eReader->status & EREADER_XFER_MASK) == 0 && eReader->status & EREADER_CHECKSUM_OK_MASK) + transferStatus = TRANSFER_SUCCESS; - if (arg0->unk0 & 0x4) - var0 = 3; + if (eReader->status & EREADER_CANCEL_KEY_MASK) + transferStatus = TRANSFER_CANCELED; + + if (eReader->status & EREADER_CANCEL_TIMEOUT_MASK) + transferStatus = TRANSFER_TIMEOUT; gShouldAdvanceLinkState = 0; - return var0; + return transferStatus; } static void OpenEReaderLink(void) @@ -93,17 +103,20 @@ static void OpenEReaderLink(void) SetSuppressLinkErrorMessage(TRUE); } -static bool32 sub_81D4E60(void) +static bool32 ValidateEReaderConnection(void) { volatile u16 backupIME; - u16 sp4[4]; + u16 handshakes[MAX_LINK_PLAYERS]; backupIME = REG_IME; REG_IME = 0; - *(u64 *)sp4 = *(u64 *)gLink.tempRecvBuffer; + *(u64 *)handshakes = *(u64 *)gLink.handshakeBuffer; REG_IME = backupIME; - if (sp4[0] == 0xB9A0 && sp4[1] == 0xCCD0 - && sp4[2] == 0xFFFF && sp4[3] == 0xFFFF) + + // Validate that we are player 1, the EReader is player 2, + // and that players 3 and 4 are empty. + if (handshakes[0] == SLAVE_HANDSHAKE && handshakes[1] == EREADER_HANDSHAKE + && handshakes[2] == 0xFFFF && handshakes[3] == 0xFFFF) { return TRUE; } @@ -111,7 +124,7 @@ static bool32 sub_81D4E60(void) return FALSE; } -static bool32 sub_81D4EC0(void) +static bool32 IsChildConnected(void) { if (IsLinkMaster() && GetLinkPlayerCount_2() == 2) return TRUE; @@ -119,56 +132,77 @@ static bool32 sub_81D4EC0(void) return FALSE; } -static u32 sub_81D4EE4(u8 *arg0, u16 *arg1) -{ - u8 var0; +// States for TryReceiveCard +enum { + RECV_STATE_INIT, + RECV_STATE_WAIT_START, + RECV_STATE_START, + RECV_STATE_EXCHANGE, + RECV_STATE_START_DISCONNECT, + RECV_STATE_WAIT_DISCONNECT, +}; + +// Return values for TryReceiveCard +enum { + RECV_ACTIVE, + RECV_CANCELED, + RECV_SUCCESS, + RECV_ERROR, + RECV_DISCONNECTED, + RECV_TIMEOUT, +}; - var0 = *arg0 - 3; - if (var0 < 3 && HasLinkErrorOccurred()) +static u32 TryReceiveCard(u8 *state, u16 *timer) +{ + if (*state >= RECV_STATE_EXCHANGE + && *state <= RECV_STATE_WAIT_DISCONNECT + && HasLinkErrorOccurred()) { - *arg0 = 0; - return 3; + // Return error status if an error occurs + // during the link exchange. + *state = 0; + return RECV_ERROR; } - switch (*arg0) + switch (*state) { - case 0: + case RECV_STATE_INIT: if (IsLinkMaster() && GetLinkPlayerCount_2() > 1) { - *arg0 = 1; + *state = RECV_STATE_WAIT_START; } else if (JOY_NEW(B_BUTTON)) { - *arg0 = 0; - return 1; + *state = 0; + return RECV_CANCELED; } break; - case 1: - if (++(*arg1) > 5) + case RECV_STATE_WAIT_START: + if (++(*timer) > 5) { - *arg1 = 0; - *arg0 = 2; + *timer = 0; + *state = RECV_STATE_START; } break; - case 2: + case RECV_STATE_START: if (GetLinkPlayerCount_2() == 2) { PlaySE(SE_DING_DONG); CheckShouldAdvanceLinkState(); - *arg1 = 0; - *arg0 = 3; + *timer = 0; + *state = RECV_STATE_EXCHANGE; } else if (JOY_NEW(B_BUTTON)) { - *arg0 = 0; - return 1; + *state = 0; + return RECV_CANCELED; } break; - case 3: - if (++(*arg1) > 30) + case RECV_STATE_EXCHANGE: + if (++(*timer) > 30) { - *arg0 = 0; - return 5; + *state = 0; + return RECV_TIMEOUT; } if (IsLinkConnectionEstablished()) @@ -177,36 +211,36 @@ static u32 sub_81D4EE4(u8 *arg0, u16 *arg1) { if (IsLinkPlayerDataExchangeComplete()) { - *arg0 = 0; - return 2; + *state = 0; + return RECV_SUCCESS; } else { - *arg0 = 4; + *state = RECV_STATE_START_DISCONNECT; } } else { - *arg0 = 3; + *state = RECV_STATE_EXCHANGE; } } break; - case 4: + case RECV_STATE_START_DISCONNECT: SetCloseLinkCallbackAndType(0); - *arg0 = 5; + *state = RECV_STATE_WAIT_DISCONNECT; break; - case 5: + case RECV_STATE_WAIT_DISCONNECT: if (!gReceivedRemoteLinkPlayers) { - *arg0 = 0; - return 4; + *state = 0; + return RECV_DISCONNECTED; } break; default: - return 0; + return RECV_ACTIVE; } - return 0; + return RECV_ACTIVE; } void CreateEReaderTask(void) @@ -214,248 +248,283 @@ void CreateEReaderTask(void) struct EReaderTaskData *data; u8 taskId = CreateTask(Task_EReader, 0); data = (struct EReaderTaskData *)gTasks[taskId].data; - data->unk8 = 0; - data->unk9 = 0; - data->unkA = 0; - data->unkB = 0; - data->unkC = 0; - data->unkD = 0; - data->unk0 = 0; - data->unk2 = 0; - data->unk4 = 0; - data->unk6 = 0; - data->unkE = 0; - data->unk10 = AllocZeroed(0x40); + data->state = 0; + data->textState = 0; + data->unused4 = 0; + data->unused5 = 0; + data->unused6 = 0; + data->unused7 = 0; + data->timer = 0; + data->unused1 = 0; + data->unused2 = 0; + data->unused3 = 0; + data->status = 0; + data->unusedBuffer = AllocZeroed(0x40); } -static void sub_81D505C(u16 *arg0) +static void ResetTimer(u16 *timer) { - *arg0 = 0; + *timer = 0; } -static bool32 sub_81D5064(u16 *arg0, u16 arg1) +static bool32 UpdateTimer(u16 *timer, u16 time) { - if (++(*arg0) > arg1) + if (++(*timer) > time) { - *arg0 = 0; + // Timer has finished + *timer = 0; return TRUE; } return FALSE; } +// States for Task_EReader +enum { + ER_STATE_START, + ER_STATE_INIT_LINK, + ER_STATE_INIT_LINK_WAIT, + ER_STATE_INIT_LINK_CHECK, + ER_STATE_MSG_SELECT_CONNECT, + ER_STATE_MSG_SELECT_CONNECT_WAIT, + ER_STATE_TRY_LINK, + ER_STATE_INCORRECT_LINK, + ER_STATE_CONNECTING, + ER_STATE_TRANSFER, + ER_STATE_TRANSFER_END, + ER_STATE_TRANSFER_SUCCESS, + ER_STATE_LOAD_CARD_START, + ER_STATE_LOAD_CARD, + ER_STATE_WAIT_RECV_CARD, + ER_STATE_VALIDATE_CARD, + ER_STATE_WAIT_DISCONNECT, + ER_STATE_SAVE, + ER_STATE_SUCCESS_MSG, + ER_STATE_SUCCESS_END, + ER_STATE_LINK_ERROR, + ER_STATE_LINK_ERROR_TRY_AGAIN, + ER_STATE_SAVE_FAILED, + ER_STATE_CANCELED_CARD_READ, + ER_STATE_UNUSED_1, + ER_STATE_UNUSED_2, + ER_STATE_END, +}; + static void Task_EReader(u8 taskId) { struct EReaderTaskData *data = (struct EReaderTaskData *)gTasks[taskId].data; - switch (data->unk8) + switch (data->state) { - case 0: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ReceiveMysteryGiftWithEReader)) - data->unk8 = 1; + case ER_STATE_START: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_ReceiveMysteryGiftWithEReader)) + data->state = ER_STATE_INIT_LINK; break; - case 1: + case ER_STATE_INIT_LINK: OpenEReaderLink(); - sub_81D505C(&data->unk0); - data->unk8 = 2; + ResetTimer(&data->timer); + data->state = ER_STATE_INIT_LINK_WAIT; break; - case 2: - if (sub_81D5064(&data->unk0, 10)) - data->unk8 = 3; + case ER_STATE_INIT_LINK_WAIT: + if (UpdateTimer(&data->timer, 10)) + data->state = ER_STATE_INIT_LINK_CHECK; break; - case 3: - if (!sub_81D4EC0()) + case ER_STATE_INIT_LINK_CHECK: + if (!IsChildConnected()) { CloseLink(); - data->unk8 = 4; + data->state = ER_STATE_MSG_SELECT_CONNECT; } else { - data->unk8 = 13; + data->state = ER_STATE_LOAD_CARD; } break; - case 4: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_SelectConnectFromEReaderMenu)) + case ER_STATE_MSG_SELECT_CONNECT: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_SelectConnectFromEReaderMenu)) { AddTextPrinterToWindow1(gJPText_SelectConnectWithGBA); - sub_81D505C(&data->unk0); - data->unk8 = 5; + ResetTimer(&data->timer); + data->state = ER_STATE_MSG_SELECT_CONNECT_WAIT; } break; - case 5: - if (sub_81D5064(&data->unk0, 90)) + case ER_STATE_MSG_SELECT_CONNECT_WAIT: + if (UpdateTimer(&data->timer, 90)) { OpenEReaderLink(); - data->unk8 = 6; + data->state = ER_STATE_TRY_LINK; } else if (JOY_NEW(B_BUTTON)) { - sub_81D505C(&data->unk0); + ResetTimer(&data->timer); PlaySE(SE_SELECT); - data->unk8 = 23; + data->state = ER_STATE_CANCELED_CARD_READ; } break; - case 6: + case ER_STATE_TRY_LINK: if (JOY_NEW(B_BUTTON)) { + // Canceled PlaySE(SE_SELECT); CloseLink(); - sub_81D505C(&data->unk0); - data->unk8 = 23; + ResetTimer(&data->timer); + data->state = ER_STATE_CANCELED_CARD_READ; } else if (GetLinkPlayerCount_2() > 1) { - sub_81D505C(&data->unk0); + ResetTimer(&data->timer); CloseLink(); - data->unk8 = 7; + data->state = ER_STATE_INCORRECT_LINK; } - else if (sub_81D4E60()) + else if (ValidateEReaderConnection()) { + // Successful connection PlaySE(SE_SELECT); CloseLink(); - sub_81D505C(&data->unk0); - data->unk8 = 8; + ResetTimer(&data->timer); + data->state = ER_STATE_CONNECTING; } - else if (sub_81D5064(&data->unk0, 10)) + else if (UpdateTimer(&data->timer, 10)) { + // Retry connection CloseLink(); OpenEReaderLink(); - sub_81D505C(&data->unk0); + ResetTimer(&data->timer); } break; - case 7: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_LinkIsIncorrect)) - data->unk8 = 4; + case ER_STATE_INCORRECT_LINK: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_LinkIsIncorrect)) + data->state = ER_STATE_MSG_SELECT_CONNECT; break; - case 8: + case ER_STATE_CONNECTING: AddTextPrinterToWindow1(gJPText_Connecting); - // XXX: This (u32*) cast is discarding the const qualifier from gUnknown_089A3470 - sub_81D4D50(&gUnknown_03006370, gMultiBootProgram_BerryGlitchFix_Start - gUnknown_089A3470, (u32*)gUnknown_089A3470); - data->unk8 = 9; + // XXX: This (u32*) cast is discarding the const qualifier from gEReaderLinkData_Start + EReader_Load(&gEReaderData, gEReaderLinkData_End - gEReaderLinkData_Start, (u32*)gEReaderLinkData_Start); + data->state = ER_STATE_TRANSFER; break; - case 9: - data->unkE = sub_81D4DE8(&gUnknown_03006370); - if (data->unkE) - data->unk8 = 10; + case ER_STATE_TRANSFER: + data->status = EReader_Transfer(&gEReaderData); + if (data->status != TRANSFER_ACTIVE) + data->state = ER_STATE_TRANSFER_END; break; - case 10: - sub_81D4DB8(&gUnknown_03006370); - if (data->unkE == 3) + case ER_STATE_TRANSFER_END: + EReader_Reset(&gEReaderData); + if (data->status == TRANSFER_TIMEOUT) { - data->unk8 = 20; + data->state = ER_STATE_LINK_ERROR; } - else if (data->unkE == 1) + else if (data->status == TRANSFER_SUCCESS) { - sub_81D505C(&data->unk0); + ResetTimer(&data->timer); AddTextPrinterToWindow1(gJPText_PleaseWaitAMoment); - data->unk8 = 11; + data->state = ER_STATE_TRANSFER_SUCCESS; } - else + else // TRANSFER_CANCELED { - data->unk8 = 0; + data->state = ER_STATE_START; } break; - case 11: - if (sub_81D5064(&data->unk0, 840)) - data->unk8 = 12; + case ER_STATE_TRANSFER_SUCCESS: + if (UpdateTimer(&data->timer, 840)) + data->state = ER_STATE_LOAD_CARD_START; break; - case 12: + case ER_STATE_LOAD_CARD_START: OpenEReaderLink(); AddTextPrinterToWindow1(gJPText_AllowEReaderToLoadCard); - data->unk8 = 13; + data->state = ER_STATE_LOAD_CARD; break; - case 13: - switch (sub_81D4EE4(&data->unk9, &data->unk0)) + case ER_STATE_LOAD_CARD: + switch (TryReceiveCard(&data->textState, &data->timer)) { - case 0: - break; - case 2: - AddTextPrinterToWindow1(gJPText_Connecting); - data->unk8 = 14; - break; - case 1: - PlaySE(SE_SELECT); - CloseLink(); - data->unk8 = 23; - break; - case 5: - CloseLink(); - data->unk8 = 21; - break; - case 3: - case 4: - CloseLink(); - data->unk8 = 20; - break; + case RECV_ACTIVE: + break; + case RECV_SUCCESS: + AddTextPrinterToWindow1(gJPText_Connecting); + data->state = ER_STATE_WAIT_RECV_CARD; + break; + case RECV_CANCELED: + PlaySE(SE_SELECT); + CloseLink(); + data->state = ER_STATE_CANCELED_CARD_READ; + break; + case RECV_TIMEOUT: + CloseLink(); + data->state = ER_STATE_LINK_ERROR_TRY_AGAIN; + break; + case RECV_ERROR: + case RECV_DISCONNECTED: + CloseLink(); + data->state = ER_STATE_LINK_ERROR; + break; } break; - case 14: + case ER_STATE_WAIT_RECV_CARD: if (HasLinkErrorOccurred()) { CloseLink(); - data->unk8 = 20; + data->state = ER_STATE_LINK_ERROR; } else if (GetBlockReceivedStatus()) { ResetBlockReceivedFlags(); - data->unk8 = 15; + data->state = ER_STATE_VALIDATE_CARD; } break; - case 15: - data->unkE = ValidateTrainerHillData((struct EReaderTrainerHillSet *)gDecompressionBuffer); - SetCloseLinkCallbackAndType(data->unkE); - data->unk8 = 16; + case ER_STATE_VALIDATE_CARD: + data->status = ValidateTrainerHillData((struct EReaderTrainerHillSet *)gDecompressionBuffer); + SetCloseLinkCallbackAndType(data->status); + data->state = ER_STATE_WAIT_DISCONNECT; break; - case 16: + case ER_STATE_WAIT_DISCONNECT: if (!gReceivedRemoteLinkPlayers) { - if (data->unkE == 1) - data->unk8 = 17; + if (data->status == TRUE) // Was data valid? + data->state = ER_STATE_SAVE; else - data->unk8 = 20; + data->state = ER_STATE_LINK_ERROR; } break; - case 17: + case ER_STATE_SAVE: if (TryWriteTrainerHill((struct EReaderTrainerHillSet *)&gDecompressionBuffer)) { AddTextPrinterToWindow1(gJPText_ConnectionComplete); - sub_81D505C(&data->unk0); - data->unk8 = 18; + ResetTimer(&data->timer); + data->state = ER_STATE_SUCCESS_MSG; } else { - data->unk8 = 22; + data->state = ER_STATE_SAVE_FAILED; } break; - case 18: - if (sub_81D5064(&data->unk0, 120)) + case ER_STATE_SUCCESS_MSG: + if (UpdateTimer(&data->timer, 120)) { AddTextPrinterToWindow1(gJPText_NewTrainerHasComeToHoenn); PlayFanfare(MUS_OBTAIN_ITEM); - data->unk8 = 19; + data->state = ER_STATE_SUCCESS_END; } break; - case 19: + case ER_STATE_SUCCESS_END: if (IsFanfareTaskInactive() && (JOY_NEW(A_BUTTON | B_BUTTON))) - data->unk8 = 26; + data->state = ER_STATE_END; break; - case 23: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_CardReadingHasBeenHalted)) - data->unk8 = 26; + case ER_STATE_CANCELED_CARD_READ: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_CardReadingHasBeenHalted)) + data->state = ER_STATE_END; break; - case 20: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ConnectionErrorCheckLink)) - data->unk8 = 0; + case ER_STATE_LINK_ERROR: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_ConnectionErrorCheckLink)) + data->state = ER_STATE_START; break; - case 21: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_ConnectionErrorTryAgain)) - data->unk8 = 0; + case ER_STATE_LINK_ERROR_TRY_AGAIN: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_ConnectionErrorTryAgain)) + data->state = ER_STATE_START; break; - case 22: - if (PrintMysteryGiftMenuMessage(&data->unk9, gJPText_WriteErrorUnableToSaveData)) - data->unk8 = 0; + case ER_STATE_SAVE_FAILED: + if (PrintMysteryGiftMenuMessage(&data->textState, gJPText_WriteErrorUnableToSaveData)) + data->state = ER_STATE_START; break; - case 26: - Free(data->unk10); + case ER_STATE_END: + Free(data->unusedBuffer); DestroyTask(taskId); SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen); break; diff --git a/src/link.c b/src/link.c index 66549f648cf2..19b6d0f813ac 100644 --- a/src/link.c +++ b/src/link.c @@ -2192,30 +2192,26 @@ static bool8 DoHandshake(void) { REG_SIOMLT_SEND = SLAVE_HANDSHAKE; } - *(u64 *)gLink.tempRecvBuffer = REG_SIOMLT_RECV; + *(u64 *)gLink.handshakeBuffer = REG_SIOMLT_RECV; REG_SIOMLT_RECV = 0; gLink.handshakeAsMaster = FALSE; - for (i = 0; i < 4; i++) + for (i = 0; i < MAX_LINK_PLAYERS; i++) { - if ((gLink.tempRecvBuffer[i] & ~0x3) == SLAVE_HANDSHAKE || gLink.tempRecvBuffer[i] == MASTER_HANDSHAKE) + if ((gLink.handshakeBuffer[i] & ~0x3) == SLAVE_HANDSHAKE || gLink.handshakeBuffer[i] == MASTER_HANDSHAKE) { playerCount++; - if (minRecv > gLink.tempRecvBuffer[i] && gLink.tempRecvBuffer[i] != 0) - { - minRecv = gLink.tempRecvBuffer[i]; - } + if (minRecv > gLink.handshakeBuffer[i] && gLink.handshakeBuffer[i] != 0) + minRecv = gLink.handshakeBuffer[i]; } else { - if (gLink.tempRecvBuffer[i] != 0xFFFF) - { + if (gLink.handshakeBuffer[i] != 0xFFFF) playerCount = 0; - } break; } } gLink.playerCount = playerCount; - if (gLink.playerCount > 1 && gLink.playerCount == sHandshakePlayerCount && gLink.tempRecvBuffer[0] == MASTER_HANDSHAKE) + if (gLink.playerCount > 1 && gLink.playerCount == sHandshakePlayerCount && gLink.handshakeBuffer[0] == MASTER_HANDSHAKE) { return TRUE; } From fbf3bf2ce8e8dfff61afab94ebb72fb1671d3ea4 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 26 Oct 2021 22:43:56 -0400 Subject: [PATCH 342/762] Replace 'mystery_event_club' --- data/event_scripts.s | 2 +- .../PetalburgCity_PokemonCenter_1F/map.json | 2 +- data/scripts/mystery_event_club.inc | 170 ------------------ data/scripts/profile_man.inc | 170 ++++++++++++++++++ 4 files changed, 172 insertions(+), 172 deletions(-) delete mode 100644 data/scripts/mystery_event_club.inc create mode 100644 data/scripts/profile_man.inc diff --git a/data/event_scripts.s b/data/event_scripts.s index a68c339a60dd..bbf25c93cfa0 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -1026,7 +1026,7 @@ Common_EventScript_LegendaryFlewAway:: .include "data/scripts/mauville_man.inc" .include "data/scripts/field_move_scripts.inc" .include "data/scripts/item_ball_scripts.inc" - .include "data/scripts/mystery_event_club.inc" + .include "data/scripts/profile_man.inc" .include "data/scripts/day_care.inc" .include "data/scripts/flash.inc" .include "data/scripts/players_house.inc" diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/map.json b/data/maps/PetalburgCity_PokemonCenter_1F/map.json index 1fd6e972b9e6..875c53c2b977 100644 --- a/data/maps/PetalburgCity_PokemonCenter_1F/map.json +++ b/data/maps/PetalburgCity_PokemonCenter_1F/map.json @@ -37,7 +37,7 @@ "movement_range_y": 0, "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", - "script": "MysteryEventClub_EventScript_Man", + "script": "ProfileMan_EventScript_Man", "flag": "0" }, { diff --git a/data/scripts/mystery_event_club.inc b/data/scripts/mystery_event_club.inc deleted file mode 100644 index f0cb55998388..000000000000 --- a/data/scripts/mystery_event_club.inc +++ /dev/null @@ -1,170 +0,0 @@ -MysteryEventClub_EventScript_Man:: - lock - faceplayer - goto_if_set FLAG_SYS_CHAT_USED, MysteryEventClub_EventScript_GivenProfileBefore - msgbox MysteryEventClub_Text_CollectTrainerProfiles, MSGBOX_DEFAULT - goto MysteryEventClub_EventScript_AskToSeeProfile - end - -MysteryEventClub_EventScript_AskToSeeProfile:: - msgbox MysteryEventClub_Text_MayISeeYourProfile, MSGBOX_DEFAULT - multichoice 17, 6, MULTI_YESNOINFO_2, FALSE - switch VAR_RESULT - case 0, MysteryEventClub_EventScript_CreateProfile - case 1, MysteryEventClub_EventScript_DeclineShowProfile - case 2, MysteryEventClub_EventScript_Info - case MULTI_B_PRESSED, MysteryEventClub_EventScript_DeclineShowProfile - end - -MysteryEventClub_EventScript_Info:: - msgbox MysteryEventClub_Text_EasyChatExplanation, MSGBOX_DEFAULT - goto MysteryEventClub_EventScript_AskToSeeProfile - end - -MysteryEventClub_EventScript_CreateProfile:: - msgbox MysteryEventClub_Text_LetsSeeItThen, MSGBOX_DEFAULT - closemessage - setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE - call Common_ShowEasyChatScreen - lock - faceplayer - compare VAR_RESULT, 0 - goto_if_eq MysteryEventClub_EventScript_CancelShowProfile - compare VAR_RESULT, 1 - goto_if_eq MysteryEventClub_EventScript_ShowProfile - end - -MysteryEventClub_EventScript_CancelShowProfile:: - msgbox MysteryEventClub_Text_NotIntoItRightNow, MSGBOX_DEFAULT - release - end - -MysteryEventClub_EventScript_ShowProfile:: - setvar VAR_0x8004, 0 - special ShowEasyChatProfile - waitmessage - delay 80 - msgbox MysteryEventClub_Text_FantasticProfile, MSGBOX_DEFAULT - release - end - -MysteryEventClub_EventScript_DeclineShowProfile:: - msgbox MysteryEventClub_Text_ImagineYouWouldHaveWonderfulProfile, MSGBOX_DEFAULT - release - end - -MysteryEventClub_EventScript_GivenProfileBefore:: - msgbox MysteryEventClub_Text_YouHaveWonderfulSmile, MSGBOX_DEFAULT - goto MysteryEventClub_EventScript_AskToSeeNewProfile - end - -MysteryEventClub_EventScript_AskToSeeNewProfile:: - msgbox MysteryEventClub_Text_MayISeeYourNewProfile, MSGBOX_DEFAULT - multichoice 17, 6, MULTI_YESNOINFO_2, FALSE - switch VAR_RESULT - case 0, MysteryEventClub_EventScript_CreateNewProfile - case 1, MysteryEventClub_EventScript_DeclineNewProfile - case 2, MysteryEventClub_EventScript_InfoNewProfile - case MULTI_B_PRESSED, MysteryEventClub_EventScript_DeclineNewProfile - end - -MysteryEventClub_EventScript_InfoNewProfile:: - msgbox MysteryEventClub_Text_EasyChatExplanation, MSGBOX_DEFAULT - goto MysteryEventClub_EventScript_AskToSeeNewProfile - end - -MysteryEventClub_EventScript_CreateNewProfile:: - msgbox MysteryEventClub_Text_EvenBetterThanLastProfile, MSGBOX_DEFAULT - closemessage - setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE - call Common_ShowEasyChatScreen - lock - faceplayer - compare VAR_RESULT, 0 - goto_if_eq MysteryEventClub_EventScript_CancelShowProfile - compare VAR_RESULT, 1 - goto_if_eq MysteryEventClub_EventScript_ShowProfile - end - -MysteryEventClub_EventScript_DeclineNewProfile:: - msgbox MysteryEventClub_Text_LikeProfileWayItIs, MSGBOX_DEFAULT - release - end - -@ Unused -MysteryEventClub_EventScript_Ret:: - return - -MysteryEventClub_Text_CollectTrainerProfiles: - .string "Hello there, TRAINER!\n" - .string "You've got a wonderful smile, there.\p" - .string "I have a hobby--collecting the profiles\n" - .string "of POKĂ©MON TRAINERS.$" - -MysteryEventClub_Text_MayISeeYourProfile: - .string "So, how about it?\n" - .string "May I see your profile?$" - -MysteryEventClub_Text_EasyChatExplanation: - .string "You make your own profile by putting\n" - .string "together four words or phrases.\p" - .string "Here, I'll show you an example of a\n" - .string "profile using four pieces of text.\p" - .string "You can switch those four pieces with\n" - .string "other text pieces any which way you\l" - .string "like to make your own profile.\p" - .string "There are a lot of text pieces that\n" - .string "you can use.\p" - .string "They are arranged in groups like\n" - .string "POKĂ©MON, lifestyles, and hobbies so\l" - .string "it is easier to look them up.\p" - .string "So, first, choose the group of text\n" - .string "pieces to display a list of choices.\p" - .string "Then, pick the choice you want.\p" - .string "Repeat for the remaining text choices,\n" - .string "and you'll have your very own profile.$" - -MysteryEventClub_Text_LetsSeeItThen: - .string "Yes! Thank you!\n" - .string "So, let's see it, then.$" - -MysteryEventClub_Text_ImagineYouWouldHaveWonderfulProfile: - .string "Oh, no, really?\p" - .string "I imagine someone like you would have\n" - .string "a wonderful profile…$" - -MysteryEventClub_Text_NotIntoItRightNow: - .string "Oh? You're not into it right now?\p" - .string "Well, anytime is good by me!$" - -MysteryEventClub_Text_YouHaveWonderfulSmile: - .string "Hello there, TRAINER!\n" - .string "You've got a wonderful smile.$" - -MysteryEventClub_Text_MayISeeYourNewProfile: - .string "May I see your new profile?$" - -MysteryEventClub_Text_EvenBetterThanLastProfile: - .string "Yes! Thank you!\p" - .string "I hope it's even better than the profile\n" - .string "you showed me before.$" - -MysteryEventClub_Text_LikeProfileWayItIs: - .string "Oh, you like your profile the way it is.\p" - .string "I don't blame you--it's a wonderful\n" - .string "profile the way it is now.$" - -MysteryEventClub_Text_FantasticProfile: - .string "F-fantastic!\p" - .string "Your profile, it's wonderful!\n" - .string "It really says what you're about.\p" - .string "Why, anyone hearing this profile would\n" - .string "be captivated by you!\p" - .string "Thank you!$" - -@ Unused -MysteryEventClub_Text_YouKnowSecretSaying: - .string "Oh?\n" - .string "You know the secret saying!\p" - .string "That means you're now a fellow member\n" - .string "of the MYSTERY EVENT CLUB!$" diff --git a/data/scripts/profile_man.inc b/data/scripts/profile_man.inc new file mode 100644 index 000000000000..2c5b16122c26 --- /dev/null +++ b/data/scripts/profile_man.inc @@ -0,0 +1,170 @@ +ProfileMan_EventScript_Man:: + lock + faceplayer + goto_if_set FLAG_SYS_CHAT_USED, ProfileMan_EventScript_GivenProfileBefore + msgbox ProfileMan_Text_CollectTrainerProfiles, MSGBOX_DEFAULT + goto ProfileMan_EventScript_AskToSeeProfile + end + +ProfileMan_EventScript_AskToSeeProfile:: + msgbox ProfileMan_Text_MayISeeYourProfile, MSGBOX_DEFAULT + multichoice 17, 6, MULTI_YESNOINFO_2, FALSE + switch VAR_RESULT + case 0, ProfileMan_EventScript_CreateProfile + case 1, ProfileMan_EventScript_DeclineShowProfile + case 2, ProfileMan_EventScript_Info + case MULTI_B_PRESSED, ProfileMan_EventScript_DeclineShowProfile + end + +ProfileMan_EventScript_Info:: + msgbox ProfileMan_Text_EasyChatExplanation, MSGBOX_DEFAULT + goto ProfileMan_EventScript_AskToSeeProfile + end + +ProfileMan_EventScript_CreateProfile:: + msgbox ProfileMan_Text_LetsSeeItThen, MSGBOX_DEFAULT + closemessage + setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE + call Common_ShowEasyChatScreen + lock + faceplayer + compare VAR_RESULT, 0 + goto_if_eq ProfileMan_EventScript_CancelShowProfile + compare VAR_RESULT, 1 + goto_if_eq ProfileMan_EventScript_ShowProfile + end + +ProfileMan_EventScript_CancelShowProfile:: + msgbox ProfileMan_Text_NotIntoItRightNow, MSGBOX_DEFAULT + release + end + +ProfileMan_EventScript_ShowProfile:: + setvar VAR_0x8004, 0 + special ShowEasyChatProfile + waitmessage + delay 80 + msgbox ProfileMan_Text_FantasticProfile, MSGBOX_DEFAULT + release + end + +ProfileMan_EventScript_DeclineShowProfile:: + msgbox ProfileMan_Text_ImagineYouWouldHaveWonderfulProfile, MSGBOX_DEFAULT + release + end + +ProfileMan_EventScript_GivenProfileBefore:: + msgbox ProfileMan_Text_YouHaveWonderfulSmile, MSGBOX_DEFAULT + goto ProfileMan_EventScript_AskToSeeNewProfile + end + +ProfileMan_EventScript_AskToSeeNewProfile:: + msgbox ProfileMan_Text_MayISeeYourNewProfile, MSGBOX_DEFAULT + multichoice 17, 6, MULTI_YESNOINFO_2, FALSE + switch VAR_RESULT + case 0, ProfileMan_EventScript_CreateNewProfile + case 1, ProfileMan_EventScript_DeclineNewProfile + case 2, ProfileMan_EventScript_InfoNewProfile + case MULTI_B_PRESSED, ProfileMan_EventScript_DeclineNewProfile + end + +ProfileMan_EventScript_InfoNewProfile:: + msgbox ProfileMan_Text_EasyChatExplanation, MSGBOX_DEFAULT + goto ProfileMan_EventScript_AskToSeeNewProfile + end + +ProfileMan_EventScript_CreateNewProfile:: + msgbox ProfileMan_Text_EvenBetterThanLastProfile, MSGBOX_DEFAULT + closemessage + setvar VAR_0x8004, EASY_CHAT_TYPE_PROFILE + call Common_ShowEasyChatScreen + lock + faceplayer + compare VAR_RESULT, 0 + goto_if_eq ProfileMan_EventScript_CancelShowProfile + compare VAR_RESULT, 1 + goto_if_eq ProfileMan_EventScript_ShowProfile + end + +ProfileMan_EventScript_DeclineNewProfile:: + msgbox ProfileMan_Text_LikeProfileWayItIs, MSGBOX_DEFAULT + release + end + +@ Unused +ProfileMan_EventScript_Ret:: + return + +ProfileMan_Text_CollectTrainerProfiles: + .string "Hello there, TRAINER!\n" + .string "You've got a wonderful smile, there.\p" + .string "I have a hobby--collecting the profiles\n" + .string "of POKĂ©MON TRAINERS.$" + +ProfileMan_Text_MayISeeYourProfile: + .string "So, how about it?\n" + .string "May I see your profile?$" + +ProfileMan_Text_EasyChatExplanation: + .string "You make your own profile by putting\n" + .string "together four words or phrases.\p" + .string "Here, I'll show you an example of a\n" + .string "profile using four pieces of text.\p" + .string "You can switch those four pieces with\n" + .string "other text pieces any which way you\l" + .string "like to make your own profile.\p" + .string "There are a lot of text pieces that\n" + .string "you can use.\p" + .string "They are arranged in groups like\n" + .string "POKĂ©MON, lifestyles, and hobbies so\l" + .string "it is easier to look them up.\p" + .string "So, first, choose the group of text\n" + .string "pieces to display a list of choices.\p" + .string "Then, pick the choice you want.\p" + .string "Repeat for the remaining text choices,\n" + .string "and you'll have your very own profile.$" + +ProfileMan_Text_LetsSeeItThen: + .string "Yes! Thank you!\n" + .string "So, let's see it, then.$" + +ProfileMan_Text_ImagineYouWouldHaveWonderfulProfile: + .string "Oh, no, really?\p" + .string "I imagine someone like you would have\n" + .string "a wonderful profile…$" + +ProfileMan_Text_NotIntoItRightNow: + .string "Oh? You're not into it right now?\p" + .string "Well, anytime is good by me!$" + +ProfileMan_Text_YouHaveWonderfulSmile: + .string "Hello there, TRAINER!\n" + .string "You've got a wonderful smile.$" + +ProfileMan_Text_MayISeeYourNewProfile: + .string "May I see your new profile?$" + +ProfileMan_Text_EvenBetterThanLastProfile: + .string "Yes! Thank you!\p" + .string "I hope it's even better than the profile\n" + .string "you showed me before.$" + +ProfileMan_Text_LikeProfileWayItIs: + .string "Oh, you like your profile the way it is.\p" + .string "I don't blame you--it's a wonderful\n" + .string "profile the way it is now.$" + +ProfileMan_Text_FantasticProfile: + .string "F-fantastic!\p" + .string "Your profile, it's wonderful!\n" + .string "It really says what you're about.\p" + .string "Why, anyone hearing this profile would\n" + .string "be captivated by you!\p" + .string "Thank you!$" + +@ Unused +ProfileMan_Text_YouKnowSecretSaying: + .string "Oh?\n" + .string "You know the secret saying!\p" + .string "That means you're now a fellow member\n" + .string "of the MYSTERY EVENT CLUB!$" From 41ecae91f82d901fa61da79e29b4e4aeea72e69f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 26 Oct 2021 16:52:23 -0400 Subject: [PATCH 343/762] Label remaining symbols in graphics.c --- .../backgrounds/solarbeam.bin} | Bin graphics/battle_anims/sprites/black_ball.bin | Bin 0 -> 36 bytes .../{ => battle_anims}/unused/goosuto.bin | Bin .../{ => battle_anims}/unused/goosuto.png | Bin .../unused/lights.bin} | Bin .../unused/lights.png} | Bin .../{ => battle_anims}/unused/line_sketch.png | Bin .../unused/line_sketch_2.bin | Bin .../unused/line_sketch_2.png | Bin .../unused/line_sketch_2_pal.bin} | Bin .../unused/metronome_hand_small.png | Bin .../unused/music_notes.pal} | 0 .../{ => battle_anims}/unused/music_notes.png | Bin .../{ => battle_anims}/unused/old_beatup.png | Bin .../unused/spinning_ball.png} | Bin .../unused/spinning_ball_2.pal} | 0 .../{unused.pal => unused/unknown.pal} | 0 .../unused/unknown_1.bin} | Bin .../unused/unknown_2.bin} | Bin .../unused/unknown_2.pal} | 0 .../unused/unknown_3.bin} | Bin .../unused/unknown_4.bin} | Bin .../{unused_water.bin => unused/water.bin} | Bin .../water_gfx.png} | Bin .../unused/water_splash.bin | Bin .../unused/water_splash.png | Bin ...bin => multi_battle_intro_bg_opponent.bin} | Bin ...2.bin => multi_battle_intro_bg_player.bin} | Bin .../{pyramid_light.pal => pyramid_floor.pal} | 0 ...n_32C2D4.png => unused_status_summary.png} | Bin .../audience.bin} | Bin .../curtain.bin} | Bin .../interface.bin} | Bin graphics/contest/{misc.png => interface.png} | Bin .../interface_audience.pal} | 0 .../japanese/audience.png} | Bin .../japanese/floor.png} | Bin .../japanese/frame_1.png} | Bin .../japanese/frame_2.png} | Bin .../japanese/interface.png} | Bin .../japanese/letters.png} | Bin .../japanese/meter.png} | Bin .../japanese/numbers.png} | Bin .../japanese/palette.pal} | 0 .../japanese/symbols.png} | Bin .../japanese/tilemap_1.bin} | Bin .../japanese/tilemap_2.bin} | Bin .../japanese/voltage.png} | Bin .../unused_tilemap_1.bin} | Bin .../unused_tilemap_2.bin} | Bin .../bag_pyramid_interface.pal} | 0 ...map2.bin => summary_page_battle_moves.bin} | Bin ...ap3.bin => summary_page_contest_moves.bin} | Bin ...tatus_screen.bin => summary_page_info.bin} | Bin ...ilemap0.bin => summary_page_info_copy.bin} | Bin ...s_tilemap1.bin => summary_page_skills.bin} | Bin .../{status_screen.pal => summary_screen.pal} | 0 .../{status_screen.png => summary_screen.png} | Bin .../deoxys/icon_speed_wide.png} | Bin .../unused_garbage.bin} | Bin .../trade/{unknown_DDCF04.bin => menu.bin} | Bin .../unused_DDCEE4.bin => trade/unused.bin} | Bin .../records_window.bin} | Bin .../records_window.png} | Bin graphics/unknown/unknown_C035B8.png | Bin 156 -> 0 bytes graphics_file_rules.mk | 23 ++- include/graphics.h | 58 +++--- include/main.h | 1 - include/menu.h | 3 +- src/battle_anim_effects_3.c | 2 +- src/battle_anim_water.c | 4 +- src/battle_bg.c | 14 +- src/battle_gfx_sfx_util.c | 2 +- src/battle_interface.c | 4 +- src/battle_message.c | 9 +- src/battle_pyramid.c | 6 +- src/battle_pyramid_bag.c | 10 +- src/battle_records.c | 9 +- src/clear_save_data_screen.c | 2 +- src/contest.c | 18 +- src/data/graphics/pokemon.h | 4 +- src/diploma.c | 2 +- src/graphics.c | 194 ++++++++---------- src/item_menu.c | 2 +- src/link.c | 2 +- src/menu.c | 18 +- src/menu_specialized.c | 2 +- src/party_menu.c | 2 +- src/pokeblock.c | 6 +- src/pokeblock_feed.c | 4 +- src/pokemon_summary_screen.c | 16 +- src/save_failed_screen.c | 2 +- src/title_screen.c | 4 +- src/trade.c | 8 +- src/union_room_battle.c | 2 +- src/union_room_chat.c | 2 +- 96 files changed, 204 insertions(+), 231 deletions(-) rename graphics/{unknown/unknown_E6BC04.bin => battle_anims/backgrounds/solarbeam.bin} (100%) create mode 100644 graphics/battle_anims/sprites/black_ball.bin rename graphics/{ => battle_anims}/unused/goosuto.bin (100%) rename graphics/{ => battle_anims}/unused/goosuto.png (100%) rename graphics/{unknown/unknown_D1C060.bin => battle_anims/unused/lights.bin} (100%) rename graphics/{unknown/unknown_D1C060.png => battle_anims/unused/lights.png} (100%) rename graphics/{ => battle_anims}/unused/line_sketch.png (100%) rename graphics/{ => battle_anims}/unused/line_sketch_2.bin (100%) rename graphics/{ => battle_anims}/unused/line_sketch_2.png (100%) rename graphics/{unknown/unknown_C0CAE0.bin => battle_anims/unused/line_sketch_2_pal.bin} (100%) rename graphics/{ => battle_anims}/unused/metronome_hand_small.png (100%) rename graphics/{unused/battle_anim_023.pal => battle_anims/unused/music_notes.pal} (100%) rename graphics/{ => battle_anims}/unused/music_notes.png (100%) rename graphics/{ => battle_anims}/unused/old_beatup.png (100%) rename graphics/{unknown/unknown_C06D98.png => battle_anims/unused/spinning_ball.png} (100%) rename graphics/{unknown/unknown_C06D98_2.pal => battle_anims/unused/spinning_ball_2.pal} (100%) rename graphics/battle_anims/{unused.pal => unused/unknown.pal} (100%) rename graphics/{unknown/unknown_C0CA1C.bin => battle_anims/unused/unknown_1.bin} (100%) rename graphics/{unknown/unknown_C0CA40.bin => battle_anims/unused/unknown_2.bin} (100%) rename graphics/{unknown/unknown_C2F9E0.pal => battle_anims/unused/unknown_2.pal} (100%) rename graphics/{unknown/unknown_C0CA64.bin => battle_anims/unused/unknown_3.bin} (100%) rename graphics/{unknown/unknown_D0D2B4.bin => battle_anims/unused/unknown_4.bin} (100%) rename graphics/battle_anims/{unused_water.bin => unused/water.bin} (100%) rename graphics/battle_anims/{unused_water_gfx.png => unused/water_gfx.png} (100%) rename graphics/{ => battle_anims}/unused/water_splash.bin (100%) rename graphics/{ => battle_anims}/unused/water_splash.png (100%) rename graphics/battle_frontier/{battle_tilemap1.bin => multi_battle_intro_bg_opponent.bin} (100%) rename graphics/battle_frontier/{battle_tilemap2.bin => multi_battle_intro_bg_player.bin} (100%) rename graphics/battle_frontier/{pyramid_light.pal => pyramid_floor.pal} (100%) rename graphics/battle_interface/{unknown_32C2D4.png => unused_status_summary.png} (100%) rename graphics/{unused/old_contest_2.bin => contest/audience.bin} (100%) rename graphics/{unknown/unknown_C17980.bin => contest/curtain.bin} (100%) rename graphics/{unknown/unknown_C17170.bin => contest/interface.bin} (100%) rename graphics/contest/{misc.png => interface.png} (100%) rename graphics/{unused/old_contest_2.pal => contest/interface_audience.pal} (100%) rename graphics/{unused/old_contest_2_2.png => contest/japanese/audience.png} (100%) rename graphics/{unused/old_contest_floor.png => contest/japanese/floor.png} (100%) rename graphics/{unused/old_contest_frame_1.png => contest/japanese/frame_1.png} (100%) rename graphics/{unused/old_contest_frame_2.png => contest/japanese/frame_2.png} (100%) rename graphics/{unused/old_contest_2_1.png => contest/japanese/interface.png} (100%) rename graphics/{unused/old_contest_classes.png => contest/japanese/letters.png} (100%) rename graphics/{unused/old_contest_meter.png => contest/japanese/meter.png} (100%) rename graphics/{unused/old_contest_numbers.png => contest/japanese/numbers.png} (100%) rename graphics/{unused/old_contest.pal => contest/japanese/palette.pal} (100%) rename graphics/{unused/old_contest_symbols.png => contest/japanese/symbols.png} (100%) rename graphics/{unused/old_contest.bin => contest/japanese/tilemap_1.bin} (100%) rename graphics/{unknown/unknown_C15BC0.bin => contest/japanese/tilemap_2.bin} (100%) rename graphics/{unknown/unknown_C19470.png => contest/japanese/voltage.png} (100%) rename graphics/{unknown/unknown_C17410.bin => contest/unused_tilemap_1.bin} (100%) rename graphics/{unknown/unknown_C1751C.bin => contest/unused_tilemap_2.bin} (100%) rename graphics/{unknown/unknown_D9AF44.pal => interface/bag_pyramid_interface.pal} (100%) rename graphics/interface/{status_tilemap2.bin => summary_page_battle_moves.bin} (100%) rename graphics/interface/{status_tilemap3.bin => summary_page_contest_moves.bin} (100%) rename graphics/interface/{status_screen.bin => summary_page_info.bin} (100%) rename graphics/interface/{status_tilemap0.bin => summary_page_info_copy.bin} (100%) rename graphics/interface/{status_tilemap1.bin => summary_page_skills.bin} (100%) rename graphics/interface/{status_screen.pal => summary_screen.pal} (100%) rename graphics/interface/{status_screen.png => summary_screen.png} (100%) rename graphics/{unused/deoxys_speed_icon_wide.png => pokemon/deoxys/icon_speed_wide.png} (100%) rename graphics/{unknown/unknown_D437F8.bin => pokemon/unused_garbage.bin} (100%) rename graphics/trade/{unknown_DDCF04.bin => menu.bin} (100%) rename graphics/{unused/unused_DDCEE4.bin => trade/unused.bin} (100%) rename graphics/{unknown/unknown_5B3564.bin => trainer_hill/records_window.bin} (100%) rename graphics/{unknown/unknown_5B3484.png => trainer_hill/records_window.png} (100%) delete mode 100644 graphics/unknown/unknown_C035B8.png diff --git a/graphics/unknown/unknown_E6BC04.bin b/graphics/battle_anims/backgrounds/solarbeam.bin similarity index 100% rename from graphics/unknown/unknown_E6BC04.bin rename to graphics/battle_anims/backgrounds/solarbeam.bin diff --git a/graphics/battle_anims/sprites/black_ball.bin b/graphics/battle_anims/sprites/black_ball.bin new file mode 100644 index 0000000000000000000000000000000000000000..4a6592a8edc36cade78caec09192fd5174eb5e6c GIT binary patch literal 36 pcmWeoU|>)%HWpwsa5iRUW;Zc5aByZ|V_;`s=5Tg4HU=^o7yw7&1D^l@ literal 0 HcmV?d00001 diff --git a/graphics/unused/goosuto.bin b/graphics/battle_anims/unused/goosuto.bin similarity index 100% rename from graphics/unused/goosuto.bin rename to graphics/battle_anims/unused/goosuto.bin diff --git a/graphics/unused/goosuto.png b/graphics/battle_anims/unused/goosuto.png similarity index 100% rename from graphics/unused/goosuto.png rename to graphics/battle_anims/unused/goosuto.png diff --git a/graphics/unknown/unknown_D1C060.bin b/graphics/battle_anims/unused/lights.bin similarity index 100% rename from graphics/unknown/unknown_D1C060.bin rename to graphics/battle_anims/unused/lights.bin diff --git a/graphics/unknown/unknown_D1C060.png b/graphics/battle_anims/unused/lights.png similarity index 100% rename from graphics/unknown/unknown_D1C060.png rename to graphics/battle_anims/unused/lights.png diff --git a/graphics/unused/line_sketch.png b/graphics/battle_anims/unused/line_sketch.png similarity index 100% rename from graphics/unused/line_sketch.png rename to graphics/battle_anims/unused/line_sketch.png diff --git a/graphics/unused/line_sketch_2.bin b/graphics/battle_anims/unused/line_sketch_2.bin similarity index 100% rename from graphics/unused/line_sketch_2.bin rename to graphics/battle_anims/unused/line_sketch_2.bin diff --git a/graphics/unused/line_sketch_2.png b/graphics/battle_anims/unused/line_sketch_2.png similarity index 100% rename from graphics/unused/line_sketch_2.png rename to graphics/battle_anims/unused/line_sketch_2.png diff --git a/graphics/unknown/unknown_C0CAE0.bin b/graphics/battle_anims/unused/line_sketch_2_pal.bin similarity index 100% rename from graphics/unknown/unknown_C0CAE0.bin rename to graphics/battle_anims/unused/line_sketch_2_pal.bin diff --git a/graphics/unused/metronome_hand_small.png b/graphics/battle_anims/unused/metronome_hand_small.png similarity index 100% rename from graphics/unused/metronome_hand_small.png rename to graphics/battle_anims/unused/metronome_hand_small.png diff --git a/graphics/unused/battle_anim_023.pal b/graphics/battle_anims/unused/music_notes.pal similarity index 100% rename from graphics/unused/battle_anim_023.pal rename to graphics/battle_anims/unused/music_notes.pal diff --git a/graphics/unused/music_notes.png b/graphics/battle_anims/unused/music_notes.png similarity index 100% rename from graphics/unused/music_notes.png rename to graphics/battle_anims/unused/music_notes.png diff --git a/graphics/unused/old_beatup.png b/graphics/battle_anims/unused/old_beatup.png similarity index 100% rename from graphics/unused/old_beatup.png rename to graphics/battle_anims/unused/old_beatup.png diff --git a/graphics/unknown/unknown_C06D98.png b/graphics/battle_anims/unused/spinning_ball.png similarity index 100% rename from graphics/unknown/unknown_C06D98.png rename to graphics/battle_anims/unused/spinning_ball.png diff --git a/graphics/unknown/unknown_C06D98_2.pal b/graphics/battle_anims/unused/spinning_ball_2.pal similarity index 100% rename from graphics/unknown/unknown_C06D98_2.pal rename to graphics/battle_anims/unused/spinning_ball_2.pal diff --git a/graphics/battle_anims/unused.pal b/graphics/battle_anims/unused/unknown.pal similarity index 100% rename from graphics/battle_anims/unused.pal rename to graphics/battle_anims/unused/unknown.pal diff --git a/graphics/unknown/unknown_C0CA1C.bin b/graphics/battle_anims/unused/unknown_1.bin similarity index 100% rename from graphics/unknown/unknown_C0CA1C.bin rename to graphics/battle_anims/unused/unknown_1.bin diff --git a/graphics/unknown/unknown_C0CA40.bin b/graphics/battle_anims/unused/unknown_2.bin similarity index 100% rename from graphics/unknown/unknown_C0CA40.bin rename to graphics/battle_anims/unused/unknown_2.bin diff --git a/graphics/unknown/unknown_C2F9E0.pal b/graphics/battle_anims/unused/unknown_2.pal similarity index 100% rename from graphics/unknown/unknown_C2F9E0.pal rename to graphics/battle_anims/unused/unknown_2.pal diff --git a/graphics/unknown/unknown_C0CA64.bin b/graphics/battle_anims/unused/unknown_3.bin similarity index 100% rename from graphics/unknown/unknown_C0CA64.bin rename to graphics/battle_anims/unused/unknown_3.bin diff --git a/graphics/unknown/unknown_D0D2B4.bin b/graphics/battle_anims/unused/unknown_4.bin similarity index 100% rename from graphics/unknown/unknown_D0D2B4.bin rename to graphics/battle_anims/unused/unknown_4.bin diff --git a/graphics/battle_anims/unused_water.bin b/graphics/battle_anims/unused/water.bin similarity index 100% rename from graphics/battle_anims/unused_water.bin rename to graphics/battle_anims/unused/water.bin diff --git a/graphics/battle_anims/unused_water_gfx.png b/graphics/battle_anims/unused/water_gfx.png similarity index 100% rename from graphics/battle_anims/unused_water_gfx.png rename to graphics/battle_anims/unused/water_gfx.png diff --git a/graphics/unused/water_splash.bin b/graphics/battle_anims/unused/water_splash.bin similarity index 100% rename from graphics/unused/water_splash.bin rename to graphics/battle_anims/unused/water_splash.bin diff --git a/graphics/unused/water_splash.png b/graphics/battle_anims/unused/water_splash.png similarity index 100% rename from graphics/unused/water_splash.png rename to graphics/battle_anims/unused/water_splash.png diff --git a/graphics/battle_frontier/battle_tilemap1.bin b/graphics/battle_frontier/multi_battle_intro_bg_opponent.bin similarity index 100% rename from graphics/battle_frontier/battle_tilemap1.bin rename to graphics/battle_frontier/multi_battle_intro_bg_opponent.bin diff --git a/graphics/battle_frontier/battle_tilemap2.bin b/graphics/battle_frontier/multi_battle_intro_bg_player.bin similarity index 100% rename from graphics/battle_frontier/battle_tilemap2.bin rename to graphics/battle_frontier/multi_battle_intro_bg_player.bin diff --git a/graphics/battle_frontier/pyramid_light.pal b/graphics/battle_frontier/pyramid_floor.pal similarity index 100% rename from graphics/battle_frontier/pyramid_light.pal rename to graphics/battle_frontier/pyramid_floor.pal diff --git a/graphics/battle_interface/unknown_32C2D4.png b/graphics/battle_interface/unused_status_summary.png similarity index 100% rename from graphics/battle_interface/unknown_32C2D4.png rename to graphics/battle_interface/unused_status_summary.png diff --git a/graphics/unused/old_contest_2.bin b/graphics/contest/audience.bin similarity index 100% rename from graphics/unused/old_contest_2.bin rename to graphics/contest/audience.bin diff --git a/graphics/unknown/unknown_C17980.bin b/graphics/contest/curtain.bin similarity index 100% rename from graphics/unknown/unknown_C17980.bin rename to graphics/contest/curtain.bin diff --git a/graphics/unknown/unknown_C17170.bin b/graphics/contest/interface.bin similarity index 100% rename from graphics/unknown/unknown_C17170.bin rename to graphics/contest/interface.bin diff --git a/graphics/contest/misc.png b/graphics/contest/interface.png similarity index 100% rename from graphics/contest/misc.png rename to graphics/contest/interface.png diff --git a/graphics/unused/old_contest_2.pal b/graphics/contest/interface_audience.pal similarity index 100% rename from graphics/unused/old_contest_2.pal rename to graphics/contest/interface_audience.pal diff --git a/graphics/unused/old_contest_2_2.png b/graphics/contest/japanese/audience.png similarity index 100% rename from graphics/unused/old_contest_2_2.png rename to graphics/contest/japanese/audience.png diff --git a/graphics/unused/old_contest_floor.png b/graphics/contest/japanese/floor.png similarity index 100% rename from graphics/unused/old_contest_floor.png rename to graphics/contest/japanese/floor.png diff --git a/graphics/unused/old_contest_frame_1.png b/graphics/contest/japanese/frame_1.png similarity index 100% rename from graphics/unused/old_contest_frame_1.png rename to graphics/contest/japanese/frame_1.png diff --git a/graphics/unused/old_contest_frame_2.png b/graphics/contest/japanese/frame_2.png similarity index 100% rename from graphics/unused/old_contest_frame_2.png rename to graphics/contest/japanese/frame_2.png diff --git a/graphics/unused/old_contest_2_1.png b/graphics/contest/japanese/interface.png similarity index 100% rename from graphics/unused/old_contest_2_1.png rename to graphics/contest/japanese/interface.png diff --git a/graphics/unused/old_contest_classes.png b/graphics/contest/japanese/letters.png similarity index 100% rename from graphics/unused/old_contest_classes.png rename to graphics/contest/japanese/letters.png diff --git a/graphics/unused/old_contest_meter.png b/graphics/contest/japanese/meter.png similarity index 100% rename from graphics/unused/old_contest_meter.png rename to graphics/contest/japanese/meter.png diff --git a/graphics/unused/old_contest_numbers.png b/graphics/contest/japanese/numbers.png similarity index 100% rename from graphics/unused/old_contest_numbers.png rename to graphics/contest/japanese/numbers.png diff --git a/graphics/unused/old_contest.pal b/graphics/contest/japanese/palette.pal similarity index 100% rename from graphics/unused/old_contest.pal rename to graphics/contest/japanese/palette.pal diff --git a/graphics/unused/old_contest_symbols.png b/graphics/contest/japanese/symbols.png similarity index 100% rename from graphics/unused/old_contest_symbols.png rename to graphics/contest/japanese/symbols.png diff --git a/graphics/unused/old_contest.bin b/graphics/contest/japanese/tilemap_1.bin similarity index 100% rename from graphics/unused/old_contest.bin rename to graphics/contest/japanese/tilemap_1.bin diff --git a/graphics/unknown/unknown_C15BC0.bin b/graphics/contest/japanese/tilemap_2.bin similarity index 100% rename from graphics/unknown/unknown_C15BC0.bin rename to graphics/contest/japanese/tilemap_2.bin diff --git a/graphics/unknown/unknown_C19470.png b/graphics/contest/japanese/voltage.png similarity index 100% rename from graphics/unknown/unknown_C19470.png rename to graphics/contest/japanese/voltage.png diff --git a/graphics/unknown/unknown_C17410.bin b/graphics/contest/unused_tilemap_1.bin similarity index 100% rename from graphics/unknown/unknown_C17410.bin rename to graphics/contest/unused_tilemap_1.bin diff --git a/graphics/unknown/unknown_C1751C.bin b/graphics/contest/unused_tilemap_2.bin similarity index 100% rename from graphics/unknown/unknown_C1751C.bin rename to graphics/contest/unused_tilemap_2.bin diff --git a/graphics/unknown/unknown_D9AF44.pal b/graphics/interface/bag_pyramid_interface.pal similarity index 100% rename from graphics/unknown/unknown_D9AF44.pal rename to graphics/interface/bag_pyramid_interface.pal diff --git a/graphics/interface/status_tilemap2.bin b/graphics/interface/summary_page_battle_moves.bin similarity index 100% rename from graphics/interface/status_tilemap2.bin rename to graphics/interface/summary_page_battle_moves.bin diff --git a/graphics/interface/status_tilemap3.bin b/graphics/interface/summary_page_contest_moves.bin similarity index 100% rename from graphics/interface/status_tilemap3.bin rename to graphics/interface/summary_page_contest_moves.bin diff --git a/graphics/interface/status_screen.bin b/graphics/interface/summary_page_info.bin similarity index 100% rename from graphics/interface/status_screen.bin rename to graphics/interface/summary_page_info.bin diff --git a/graphics/interface/status_tilemap0.bin b/graphics/interface/summary_page_info_copy.bin similarity index 100% rename from graphics/interface/status_tilemap0.bin rename to graphics/interface/summary_page_info_copy.bin diff --git a/graphics/interface/status_tilemap1.bin b/graphics/interface/summary_page_skills.bin similarity index 100% rename from graphics/interface/status_tilemap1.bin rename to graphics/interface/summary_page_skills.bin diff --git a/graphics/interface/status_screen.pal b/graphics/interface/summary_screen.pal similarity index 100% rename from graphics/interface/status_screen.pal rename to graphics/interface/summary_screen.pal diff --git a/graphics/interface/status_screen.png b/graphics/interface/summary_screen.png similarity index 100% rename from graphics/interface/status_screen.png rename to graphics/interface/summary_screen.png diff --git a/graphics/unused/deoxys_speed_icon_wide.png b/graphics/pokemon/deoxys/icon_speed_wide.png similarity index 100% rename from graphics/unused/deoxys_speed_icon_wide.png rename to graphics/pokemon/deoxys/icon_speed_wide.png diff --git a/graphics/unknown/unknown_D437F8.bin b/graphics/pokemon/unused_garbage.bin similarity index 100% rename from graphics/unknown/unknown_D437F8.bin rename to graphics/pokemon/unused_garbage.bin diff --git a/graphics/trade/unknown_DDCF04.bin b/graphics/trade/menu.bin similarity index 100% rename from graphics/trade/unknown_DDCF04.bin rename to graphics/trade/menu.bin diff --git a/graphics/unused/unused_DDCEE4.bin b/graphics/trade/unused.bin similarity index 100% rename from graphics/unused/unused_DDCEE4.bin rename to graphics/trade/unused.bin diff --git a/graphics/unknown/unknown_5B3564.bin b/graphics/trainer_hill/records_window.bin similarity index 100% rename from graphics/unknown/unknown_5B3564.bin rename to graphics/trainer_hill/records_window.bin diff --git a/graphics/unknown/unknown_5B3484.png b/graphics/trainer_hill/records_window.png similarity index 100% rename from graphics/unknown/unknown_5B3484.png rename to graphics/trainer_hill/records_window.png diff --git a/graphics/unknown/unknown_C035B8.png b/graphics/unknown/unknown_C035B8.png deleted file mode 100644 index 0b2ae80f99e094b6f95db5de80c193783097aa58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@HuK)l4XZZjB=>PwQ99c*I zpZ)g#EQ8?`pd>EvEmq(NP)^;`#W93qX0ibr6I*g}nlM{3Gjlpya+;Vhn*#F@CP6hd dhsgBwWQO8eHm-Nu=NE#E^K|udS?83{1OQ{oCIJ8d diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 9fd9091a467e..b81c3347f0bf 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -17,6 +17,7 @@ PKNAVOPTIONSGFXDIR := graphics/pokenav/options WALLPAPERGFXDIR := graphics/pokemon_storage/wallpapers OBJEVENTGFXDIR := graphics/object_events MISCGFXDIR := graphics/misc +JPCONTESTGFXDIR := graphics/contest/japanese 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 @@ -385,7 +386,7 @@ $(UNUSEDGFXDIR)/obi2.4bpp: $(UNUSEDGFXDIR)/old_bulbasaur2.4bpp \ $(UNUSEDGFXDIR)/old_battle_interface_3.4bpp @cat $^ >$@ -$(INTERFACEGFXDIR)/hp_numbers.4bpp: $(INTERFACEGFXDIR)/hpbar_anim.4bpp \ +$(INTERFACEGFXDIR)/battle_bar.4bpp: $(INTERFACEGFXDIR)/hpbar_anim.4bpp \ $(INTERFACEGFXDIR)/numbers1.4bpp \ $(INTERFACEGFXDIR)/numbers2.4bpp @cat $^ >$@ @@ -402,20 +403,20 @@ $(UNUSEDGFXDIR)/color_frames.4bpp: %.4bpp: %.png $(BATINTGFXDIR)/unused_window2bar.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 5 -$(UNUSEDGFXDIR)/old_contest.4bpp: $(UNUSEDGFXDIR)/old_contest_frame_1.4bpp \ - $(UNUSEDGFXDIR)/old_contest_floor.4bpp \ - $(UNUSEDGFXDIR)/old_contest_frame_2.4bpp \ - $(UNUSEDGFXDIR)/old_contest_symbols.4bpp \ - $(UNUSEDGFXDIR)/old_contest_meter.4bpp \ - $(UNUSEDGFXDIR)/old_contest_classes.4bpp \ - $(UNUSEDGFXDIR)/old_contest_numbers.4bpp +$(JPCONTESTGFXDIR)/composite_1.4bpp: $(JPCONTESTGFXDIR)/frame_1.4bpp \ + $(JPCONTESTGFXDIR)/floor.4bpp \ + $(JPCONTESTGFXDIR)/frame_2.4bpp \ + $(JPCONTESTGFXDIR)/symbols.4bpp \ + $(JPCONTESTGFXDIR)/meter.4bpp \ + $(JPCONTESTGFXDIR)/letters.4bpp \ + $(JPCONTESTGFXDIR)/numbers.4bpp @cat $^ >$@ -$(UNUSEDGFXDIR)/old_contest_2.4bpp: $(UNUSEDGFXDIR)/old_contest_2_1.4bpp \ - $(UNUSEDGFXDIR)/old_contest_2_2.4bpp +$(JPCONTESTGFXDIR)/composite_2.4bpp: $(JPCONTESTGFXDIR)/interface.4bpp \ + $(JPCONTESTGFXDIR)/audience.4bpp @cat $^ >$@ -$(UNKNOWNGFXDIR)/unknown_C19470.4bpp: %.4bpp: %.png +$(JPCONTESTGFXDIR)/voltage.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 36 $(BTLANMSPRGFXDIR)/ice_crystals.4bpp: $(BTLANMSPRGFXDIR)/ice_crystals_0.4bpp \ diff --git a/include/graphics.h b/include/graphics.h index dcb47a226652..cbb7fbb0804b 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3208,12 +3208,12 @@ extern const u16 gBerryFixWindow_Pal[]; extern const u32 gBattleTextboxTiles[]; extern const u32 gBattleTextboxTilemap[]; extern const u32 gBattleTextboxPalette[]; -extern const u32 gUnknown_08D778F0[]; extern const u32 gVsLettersGfx[]; -extern const u32 gUnknown_08D77AE4[]; -extern const u32 gUnknown_08D779D8[]; -extern const u32 gUnknown_08D857A8[]; -extern const u32 gUnknown_08D85A1C[]; +extern const u32 gBattleVSFrame_Gfx[]; +extern const u32 gBattleVSFrame_Pal[]; +extern const u32 gBattleVSFrame_Tilemap[]; +extern const u32 gMultiBattleIntroBg_Opponent_Tilemap[]; +extern const u32 gMultiBattleIntroBg_Player_Tilemap[]; // battle terrains extern const u32 gBattleTerrainTiles_TallGrass[]; @@ -4032,16 +4032,16 @@ extern const u16 gPokenavRibbonsSummaryBg_Pal[]; extern const u32 gPokenavRibbonsSummaryBg_Gfx[]; extern const u32 gPokenavRibbonsSummaryBg_Tilemap[]; -extern const u32 gPageInfoTilemap[]; -extern const u32 gUnknown_08D98CC8[]; -extern const u32 gPageSkillsTilemap[]; -extern const u32 gPageBattleMovesTilemap[]; -extern const u32 gPageContestMovesTilemap[]; -extern const u32 gStatusScreenPalette[]; -extern const u16 gUnknown_08D85620[]; +extern const u32 gSummaryScreen_Gfx[]; +extern const u32 gSummaryScreen_Pal[]; +extern const u32 gSummaryPage_Info_Tilemap[]; +extern const u32 gSummaryPage_InfoCopy_Tilemap[]; +extern const u32 gSummaryPage_Skills_Tilemap[]; +extern const u32 gSummaryPage_BattleMoves_Tilemap[]; +extern const u32 gSummaryPage_ContestMoves_Tilemap[]; +extern const u16 gPPTextPalette[]; extern const u16 gSummaryScreenWindow_Tilemap[]; extern const u32 gMoveTypes_Pal[]; -extern const u32 gStatusScreenBitmap[]; extern const u16 gSummaryScreenPowAcc_Tilemap[]; extern const u16 gSummaryScreenAppealJam_Tilemap[]; @@ -4081,7 +4081,7 @@ extern const u32 gPokeblockFeedBg_Tilemap[]; extern const u32 gConfetti_Gfx[]; extern const u32 gConfetti_Pal[]; -extern const u32 gUnknown_08C093F0[]; +extern const u32 gBattleInterfaceGfx_BattleBar[]; extern const u32 gSubstituteDollBackGfx[]; extern const u32 gSubstituteDollFrontGfx[]; extern const u32 gSubstituteDollPal[]; @@ -4097,17 +4097,19 @@ extern const u16 gBattleInterface_BallDisplayPal[]; extern const u32 gBagSwapLineGfx[]; extern const u32 gBagSwapLinePal[]; -extern const u32 gBattleFrontierGfx_PyramidBag[]; -extern const u32 gBattleFrontierGfx_PyramidBag_Pal[]; -extern const u32 gBattleFrontierGfx_PyramidBagTileMap[]; -extern const u32 gUnknown_08D9AF44[]; -extern const u16 gUnknown_0860F074[]; +extern const u32 gBattlePyramidBag_Gfx[]; +extern const u32 gBattlePyramidBag_Pal[]; +extern const u32 gBattlePyramidBagTilemap[]; +extern const u32 gBattlePyramidBagInterface_Pal[]; +extern const u16 gBattlePyramidFloor_Pal[][16]; + +extern const u16 gStandardMenuPalette[]; extern const u32 gTitleScreenEmeraldVersionGfx[]; extern const u32 gTitleScreenPressStartGfx[]; extern const u32 gTitleScreenPokemonLogoGfx[]; -extern const u32 gUnknown_08DE0644[]; -extern const u32 gUnknown_08DDE458[]; +extern const u32 gTitleScreenPokemonLogoTilemap[]; +extern const u32 gTitleScreenCloudsTilemap[]; extern const u16 gTitleScreenBgPalettes[]; extern const u16 gTitleScreenPressStartPal[]; extern const u16 gTitleScreenEmeraldVersionPal[]; @@ -4773,15 +4775,15 @@ extern const u32 gBattleStatMask6_Pal[]; extern const u32 gBattleStatMask7_Pal[]; extern const u32 gBattleStatMask8_Pal[]; -extern const u32 gContestMiscGfx[]; +extern const u32 gContestInterfaceGfx[]; extern const u32 gContestAudienceGfx[]; extern const u8 gContestApplauseMeterGfx[]; extern const u8 gContestNextTurnNumbersGfx[]; extern const u8 gContestNextTurnRandomGfx[]; -extern const u32 gOldContestGfx[]; -extern const u32 gOldContestPalette[]; -extern const u32 gUnknown_08C17170[]; -extern const u32 gUnknown_08C17980[]; +extern const u32 gContestAudienceTilemap[]; +extern const u32 gContestInterfaceAudiencePalette[]; +extern const u32 gContestInterfaceTilemap[]; +extern const u32 gContestCurtainTilemap[]; extern const u32 gContestSliderHeart_Gfx[]; extern const u32 gContestNextTurnGfx[]; extern const u16 gContestPal[]; @@ -4789,7 +4791,7 @@ extern const u32 gContestFaces_Gfx[]; extern const u32 gContestApplauseGfx[]; extern const u32 gContestJudgeGfx[]; extern const u32 gContestJudgeSymbolsGfx[]; -extern const u32 gContest3Pal[]; +extern const u32 gContestJudgeSymbolsPal[]; extern const u32 gBattleAnimBgTilemap_SurfOpponent[]; extern const u32 gBattleAnimBgTilemap_SurfPlayer[]; @@ -4899,7 +4901,7 @@ extern const u16 gCableCar_Pal[]; // Trade extern const u16 gTradeMenu_Pal[]; extern const u8 gTradeMenu_Gfx[]; -extern const u16 gUnknown_08DDCF04[]; +extern const u16 gTradeMenu_Tilemap[]; extern const u16 gTradeGba2_Pal[]; extern const u8 gTradeGba_Gfx[]; extern const u16 gTradeMenuMonBox_Tilemap[]; diff --git a/include/main.h b/include/main.h index 79d56d31ffcc..5ccb20df88b6 100644 --- a/include/main.h +++ b/include/main.h @@ -72,6 +72,5 @@ void RestoreSerialTimer3IntrHandlers(void); void StartTimer1(void); void SeedRngAndSetTrainerId(void); u16 GetGeneratedTrainerIdLower(void); -void sub_819789C(void); #endif // GUARD_MAIN_H diff --git a/include/menu.h b/include/menu.h index 07e00eb73056..eb391e565476 100644 --- a/include/menu.h +++ b/include/menu.h @@ -41,7 +41,7 @@ struct MenuAction } func; }; -extern const u16 gUnknown_0860F074[]; +extern const u16 gStandardMenuPalette[]; void FreeAllOverworldWindowBuffers(void); void InitStandardTextBoxWindows(void); @@ -125,5 +125,6 @@ void ResetBgPositions(void); void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed); void sub_8198C78(void); void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs); +void Menu_LoadStdPal(void); #endif // GUARD_MENU_H diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 267b6db9cb91..85dee52871b4 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -718,7 +718,7 @@ const struct SpriteTemplate gSweetScentPetalSpriteTemplate = .callback = AnimSweetScentPetal, }; -static const u16 sUnusedPalette[] = INCBIN_U16("graphics/battle_anims/unused.gbapal"); +static const u16 sUnusedPalette[] = INCBIN_U16("graphics/battle_anims/unused/unknown.gbapal"); const union AnimCmd gPainSplitAnimCmds[] = { diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 1c2d08d6a80a..50918a24edbf 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -54,8 +54,8 @@ static void AnimTask_WaterSport_Step(u8); static void CreateWaterSportDroplet(struct Task*); static void CreateWaterPulseRingBubbles(struct Sprite*, int, int); -static const u8 sUnusedWater_Gfx[] = INCBIN_U8("graphics/battle_anims/unused_water_gfx.4bpp"); -static const u8 sUnusedWater[] = INCBIN_U8("graphics/battle_anims/unused_water.bin"); +static const u8 sUnusedWater_Gfx[] = INCBIN_U8("graphics/battle_anims/unused/water_gfx.4bpp"); +static const u8 sUnusedWater[] = INCBIN_U8("graphics/battle_anims/unused/water.bin"); static const union AnimCmd sAnim_RainDrop[] = { diff --git a/src/battle_bg.c b/src/battle_bg.c index cbd293294cca..0e4370485c60 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -1124,13 +1124,13 @@ void DrawBattleEntryBackground(void) { if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - LZDecompressVram(gUnknown_08D778F0, (void*)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleVSFrame_Gfx, (void*)(BG_CHAR_ADDR(1))); LZDecompressVram(gVsLettersGfx, (void*)OBJ_VRAM0); - LoadCompressedPalette(gUnknown_08D77AE4, 0x60, 0x20); + LoadCompressedPalette(gBattleVSFrame_Pal, 0x60, 0x20); SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1); SetGpuReg(REG_OFFSET_BG1CNT, 0x5C04); - CopyToBgTilemapBuffer(1, gUnknown_08D779D8, 0, 0); - CopyToBgTilemapBuffer(2, gUnknown_08D779D8, 0, 0); + CopyToBgTilemapBuffer(1, gBattleVSFrame_Tilemap, 0, 0); + CopyToBgTilemapBuffer(2, gBattleVSFrame_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_OBJ | WININ_WIN0_CLR); @@ -1148,10 +1148,12 @@ void DrawBattleEntryBackground(void) } else { + // Set up bg for the multi battle intro where both teams slide in facing the screen. + // Note Steven's multi battle (which has a dedicated back pic) is excluded above. SetBgAttribute(1, BG_ATTR_CHARBASEINDEX, 2); SetBgAttribute(2, BG_ATTR_CHARBASEINDEX, 2); - CopyToBgTilemapBuffer(1, gUnknown_08D857A8, 0, 0); - CopyToBgTilemapBuffer(2, gUnknown_08D85A1C, 0, 0); + CopyToBgTilemapBuffer(1, gMultiBattleIntroBg_Opponent_Tilemap, 0, 0); + CopyToBgTilemapBuffer(2, gMultiBattleIntroBg_Player_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); } diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index c01c76b7cdad..f36524f370e9 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -785,7 +785,7 @@ bool8 BattleLoadAllHealthBoxesGfx(u8 state) void LoadBattleBarGfx(u8 arg0) { - LZDecompressWram(gUnknown_08C093F0, gMonSpritesGfxPtr->barFontGfx); + LZDecompressWram(gBattleInterfaceGfx_BattleBar, gMonSpritesGfxPtr->barFontGfx); } bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId) diff --git a/src/battle_interface.c b/src/battle_interface.c index 77308cb3cc5f..08da2da5f29f 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -617,7 +617,7 @@ static const struct SubspriteTable sUnknown_0832C2CC[] = }; // unused unknown image -static const u8 sUnknown_0832C2D4[] = INCBIN_U8("graphics/battle_interface/unknown_32C2D4.4bpp"); +static const u8 sUnusedStatusSummary[] = INCBIN_U8("graphics/battle_interface/unused_status_summary.4bpp"); static const struct CompressedSpriteSheet sStatusSummaryBarSpriteSheet = { @@ -640,7 +640,7 @@ static const struct SpriteSheet sStatusSummaryBallsSpriteSheet = }; // unused oam data -static const struct OamData sUnknown_0832C354 = +static const struct OamData sOamData_Unused64x32 = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, diff --git a/src/battle_message.c b/src/battle_message.c index b69a171a1360..91142dd5555d 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -8,6 +8,7 @@ #include "data.h" #include "event_data.h" #include "frontier_util.h" +#include "graphics.h" #include "international_string_util.h" #include "item.h" #include "link.h" @@ -42,18 +43,13 @@ struct BattleWindowText u8 shadowColor; }; -extern const u16 gUnknown_08D85620[]; - -// this file's functions static void ChooseMoveUsedParticle(u8 *textPtr); static void ChooseTypeOfMoveUsedString(u8 *dst); static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst); -// EWRAM vars static EWRAM_DATA u8 sBattlerAbilities[MAX_BATTLERS_COUNT] = {0}; EWRAM_DATA struct BattleMsgData *gBattleMsgDataPtr = NULL; -// const rom data // todo: make some of those names less vague: attacker/target vs pkmn, etc. static const u8 sText_Trainer1LoseText[] = _("{B_TRAINER1_LOSE_TEXT}"); @@ -2058,7 +2054,6 @@ static const struct BattleWindowText *const sBattleTextOnWindowsInfo[] = static const u8 sRecordedBattleTextSpeeds[] = {8, 4, 1, 0}; -// code void BufferStringBattle(u16 stringID) { s32 i; @@ -3125,7 +3120,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) void SetPpNumbersPaletteInMoveSelection(void) { struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); - const u16 *palPtr = gUnknown_08D85620; + const u16 *palPtr = gPPTextPalette; u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]], chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]); diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index e334e75d560e..48155c833981 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -26,6 +26,7 @@ #include "malloc.h" #include "overworld.h" #include "event_scripts.h" +#include "graphics.h" #include "constants/battle_frontier.h" #include "constants/battle_pyramid.h" #include "constants/event_objects.h" @@ -39,9 +40,6 @@ #include "constants/trainers.h" extern const struct MapLayout *const gMapLayouts[]; -extern const u16 gUnknown_08D856C8[][16]; - - struct PyramidWildMon { @@ -1188,7 +1186,7 @@ static void Task_SetPyramidFloorPalette(u8 taskId) { if (gPaletteFade.active) { - CpuCopy16(gUnknown_08D856C8[gSaveBlock2Ptr->frontier.curChallengeBattleNum], &gPlttBufferUnfaded[96], 32); + CpuCopy16(gBattlePyramidFloor_Pal[gSaveBlock2Ptr->frontier.curChallengeBattleNum], &gPlttBufferUnfaded[96], 32); DestroyTask(taskId); } } diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 179f4dc65493..d45770f746a0 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -358,7 +358,7 @@ static const union AffineAnimCmd * const sAffineAnims_PyramidBag[] = [ANIM_BAG_SHAKE] = sAffineAnim_PyramidBag_Shake, }; -static const struct CompressedSpriteSheet sSpriteSheet_PyramidBag = {gBattleFrontierGfx_PyramidBag, 0x0800, TAG_PYRAMID_BAG}; +static const struct CompressedSpriteSheet sSpriteSheet_PyramidBag = {gBattlePyramidBag_Gfx, 0x0800, TAG_PYRAMID_BAG}; static const struct SpriteTemplate sSpriteTemplate_PyramidBag = { @@ -573,12 +573,12 @@ static bool8 LoadPyramidBagGfx(void) case 1: if (FreeTempTileDataBuffersIfPossible() != TRUE) { - LZDecompressWram(gBattleFrontierGfx_PyramidBagTileMap, gPyramidBagMenu->tilemapBuffer); + LZDecompressWram(gBattlePyramidBagTilemap, gPyramidBagMenu->tilemapBuffer); gPyramidBagMenu->state++; } break; case 2: - LoadCompressedPalette(gUnknown_08D9AF44, 0, 32); + LoadCompressedPalette(gBattlePyramidBagInterface_Pal, 0, 32); gPyramidBagMenu->state++; break; case 3: @@ -1443,7 +1443,7 @@ static void InitPyramidBagWindows(void) DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 0x1, 0xE0); LoadMessageBoxGfx(0, 0xA, 0xD0); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); for (i = 0; i < ARRAY_COUNT(sWindowTemplates); i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); @@ -1541,7 +1541,7 @@ static void LoadPyramidBagPalette(void) struct SpritePalette spritePalette; u16 *palPtr = Alloc(0x40); - LZDecompressWram(gBattleFrontierGfx_PyramidBag_Pal, palPtr); + LZDecompressWram(gBattlePyramidBag_Pal, palPtr); spritePalette.data = palPtr + (gSaveBlock2Ptr->frontier.lvlMode * 16); spritePalette.tag = TAG_PYRAMID_BAG; LoadSpritePalette(&spritePalette); diff --git a/src/battle_records.c b/src/battle_records.c index 5dff8e6d3482..b2e3790935ef 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -24,21 +24,18 @@ #include "trainer_hill.h" #include "constants/rgb.h" -// this file's functions static void Task_CloseTrainerHillRecordsOnButton(u8 taskId); static void Task_BeginPaletteFade(u8 taskId); static void Task_ExitTrainerHillRecords(u8 taskId); static void RemoveTrainerHillRecordsWindow(u8 windowId); static void CB2_ShowTrainerHillRecords(void); -// EWRAM variables EWRAM_DATA u8 gRecordsWindowId = 0; EWRAM_DATA static u8 *sTilemapBuffer = NULL; -// const rom data -static const u32 sTrainerHillWindowTileset[] = INCBIN_U32("graphics/unknown/unknown_5B3484.4bpp"); -static const u16 sTrainerHillWindowPalette[] = INCBIN_U16("graphics/unknown/unknown_5B3484.gbapal"); -static const u32 sTrainerHillWindowTilemap[] = INCBIN_U32("graphics/unknown/unknown_5B3564.bin"); +static const u32 sTrainerHillWindowTileset[] = INCBIN_U32("graphics/trainer_hill/records_window.4bpp"); +static const u16 sTrainerHillWindowPalette[] = INCBIN_U16("graphics/trainer_hill/records_window.gbapal"); +static const u32 sTrainerHillWindowTilemap[] = INCBIN_U32("graphics/trainer_hill/records_window.bin"); static const struct BgTemplate sTrainerHillRecordsBgTemplates[] = { diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index 0d69eb0fa913..187fd0ffea75 100644 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -205,5 +205,5 @@ static void InitClearSaveDataScreenWindows(void) DeactivateAllTextPrinters(); FillWindowPixelBuffer(0, PIXEL_FILL(0)); LoadWindowGfx(0, 0, 2, 224); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); } diff --git a/src/contest.c b/src/contest.c index 05dd39483277..336e622867c9 100644 --- a/src/contest.c +++ b/src/contest.c @@ -666,7 +666,7 @@ static const struct CompressedSpriteSheet sSpriteSheet_JudgeSymbols = const struct CompressedSpritePalette sSpritePalette_JudgeSymbols = { - .data = gContest3Pal, + .data = gContestJudgeSymbolsPal, .tag = TAG_CONTEST_SYMBOLS_PAL }; @@ -1028,11 +1028,11 @@ void LoadContestBgAfterMoveAnim(void) { s32 i; - LZDecompressVram(gContestMiscGfx, (void *)VRAM); + LZDecompressVram(gContestInterfaceGfx, (void *)VRAM); LZDecompressVram(gContestAudienceGfx, (void *)(BG_SCREEN_ADDR(4))); - CopyToBgTilemapBuffer(3, gOldContestGfx, 0, 0); + CopyToBgTilemapBuffer(3, gContestAudienceTilemap, 0, 0); CopyBgTilemapBufferToVram(3); - LoadCompressedPalette(gOldContestPalette, 0, 0x200); + LoadCompressedPalette(gContestInterfaceAudiencePalette, 0, 0x200); LoadContestPalettes(); for (i = 0; i < CONTESTANT_COUNT; i++) { @@ -1310,24 +1310,24 @@ static bool8 SetupContestGraphics(u8 *stateVar) RequestDma3Fill(0, (void *)VRAM + 0x10000, 0x8000, 1); break; case 1: - LZDecompressVram(gContestMiscGfx, (void *)VRAM); + LZDecompressVram(gContestInterfaceGfx, (void *)VRAM); break; case 2: LZDecompressVram(gContestAudienceGfx, (void *)(BG_SCREEN_ADDR(4))); DmaCopyLarge32(3, (void *)(BG_SCREEN_ADDR(4)), eUnzippedContestAudience_Gfx, 0x2000, 0x1000); break; case 3: - CopyToBgTilemapBuffer(3, gOldContestGfx, 0, 0); + CopyToBgTilemapBuffer(3, gContestAudienceTilemap, 0, 0); CopyBgTilemapBufferToVram(3); break; case 4: - CopyToBgTilemapBuffer(2, gUnknown_08C17170, 0, 0); + CopyToBgTilemapBuffer(2, gContestInterfaceTilemap, 0, 0); CopyBgTilemapBufferToVram(2); // This is a bug, and copies random junk. savedJunk is never read. DmaCopy32Defvars(3, gContestResources->contestBgTilemaps[2], eContestTempSave.savedJunk, sizeof(eContestTempSave.savedJunk)); break; case 5: - LoadCompressedPalette(gOldContestPalette, 0, 0x200); + LoadCompressedPalette(gContestInterfaceAudiencePalette, 0, 0x200); CpuCopy32(gPlttBufferUnfaded + 128, tempPalette1, 16 * sizeof(u16)); CpuCopy32(gPlttBufferUnfaded + (5 + gContestPlayerMonIndex) * 16, tempPalette2, 16 * sizeof(u16)); CpuCopy32(tempPalette2, gPlttBufferUnfaded + 128, 16 * sizeof(u16)); @@ -5089,7 +5089,7 @@ static void SetBgForCurtainDrop(void) CpuFill32(0, gContestResources->contestBgTilemaps[1], 0x1000); - CopyToBgTilemapBuffer(1, gUnknown_08C17980, 0, 0); + CopyToBgTilemapBuffer(1, gContestCurtainTilemap, 0, 0); Contest_SetBgCopyFlags(1); for (i = 0; i < CONTESTANT_COUNT; i++) diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index bce0b7a217a4..f69fafec84c6 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -2696,12 +2696,12 @@ const u32 gMonBackPic_Deoxys[] = INCBIN_U32("graphics/pokemon/deoxys/back.4bpp.l const u32 gMonShinyPalette_Deoxys[] = INCBIN_U32("graphics/pokemon/deoxys/shiny.gbapal.lz"); const u8 gMonIcon_Deoxys[] = INCBIN_U8("graphics/pokemon/deoxys/icon.4bpp"); const u8 gMonIcon_DeoxysSpeed[] = INCBIN_U8("graphics/pokemon/deoxys/icon_speed.4bpp"); -const u8 gMonIcon_DeoxysSpeedWide[] = INCBIN_U8("graphics/unused/deoxys_speed_icon_wide.4bpp"); +const u8 gMonIcon_DeoxysSpeedWide[] = INCBIN_U8("graphics/pokemon/deoxys/icon_speed_wide.4bpp"); // Unused // Probably the leftover space from the other Deoxys forms static const u8 sEmpty[0x6800] = {0}; -const u16 gUnknown_D437F8[] = INCBIN_U16("graphics/unknown/unknown_D437F8.bin"); +const u16 gMonUnusedGarbage[] = INCBIN_U16("graphics/pokemon/unused_garbage.bin"); const u8 gMonFootprint_Deoxys[] = INCBIN_U8("graphics/pokemon/deoxys/footprint.1bpp"); diff --git a/src/diploma.c b/src/diploma.c index dca0912e3654..c68dc1000046 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -196,7 +196,7 @@ static void InitDiplomaWindow(void) { InitWindows(sDiplomaWinTemplates); DeactivateAllTextPrinters(); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); FillWindowPixelBuffer(0, PIXEL_FILL(0)); PutWindowTilemap(0); } diff --git a/src/graphics.c b/src/graphics.c index 4e820caec7eb..68d7ea5b9cfb 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -69,8 +69,7 @@ const u32 gBattleAnimSpriteGfx_BlackSmoke[] = INCBIN_U32("graphics/battle_anims/ const u32 gBattleAnimSpritePal_BlackSmoke[] = INCBIN_U32("graphics/battle_anims/sprites/black_smoke.gbapal.lz"); const u32 gBattleAnimSpriteGfx_BlackBall[] = INCBIN_U32("graphics/battle_anims/sprites/black_ball.4bpp.lz"); - -const u32 gUnknownGfx_C035B8[] = INCBIN_U32("graphics/unknown/unknown_C035B8.4bpp.lz"); +const u32 gBattleAnimSpritePal_BlackBall[] = INCBIN_U32("graphics/battle_anims/sprites/black_ball.bin"); const u32 gBattleAnimSpritePal_Glass[] = INCBIN_U32("graphics/battle_anims/sprites/glass.gbapal.lz"); const u32 gBattleAnimSpriteGfx_Glass[] = INCBIN_U32("graphics/battle_anims/sprites/glass.4bpp.lz"); @@ -81,9 +80,8 @@ const u32 gBattleAnimSpritePal_HornHit[] = INCBIN_U32("graphics/battle_anims/spr const u32 gBattleAnimSpritePal_BlueShards[] = INCBIN_U32("graphics/battle_anims/sprites/blue_shards.gbapal.lz"); const u32 gBattleAnimSpriteGfx_BlueShards[] = INCBIN_U32("graphics/battle_anims/sprites/blue_shards.4bpp.lz"); -const u32 gUnused_BattleSpritePalette_023[] = INCBIN_U32("graphics/unused/battle_anim_023.gbapal.lz"); - -const u32 gUnusedGfx_MusicNotes[] = INCBIN_U32("graphics/unused/music_notes.4bpp.lz"); +const u32 gBattleAnimUnusedPal_MusicNotes[] = INCBIN_U32("graphics/battle_anims/unused/music_notes.gbapal.lz"); +const u32 gBattleAnimUnusedGfx_MusicNotes[] = INCBIN_U32("graphics/battle_anims/unused/music_notes.4bpp.lz"); const u32 gBattleAnimSpritePal_Hit[] = INCBIN_U32("graphics/battle_anims/sprites/hit.gbapal.lz"); const u32 gBattleAnimSpriteGfx_Hit[] = INCBIN_U32("graphics/battle_anims/sprites/hit.4bpp.lz"); @@ -128,9 +126,9 @@ const u32 gBattleAnimSpriteGfx_Lightning2[] = INCBIN_U32("graphics/battle_anims/ const u32 gBattleAnimSpriteGfx_Lightning[] = INCBIN_U32("graphics/battle_anims/sprites/lightning.4bpp.lz"); -const u32 gUnknownGfx_C06D98[] = INCBIN_U32("graphics/unknown/unknown_C06D98.4bpp.lz"); -const u32 gUnknownPal_C06D98[] = INCBIN_U32("graphics/unknown/unknown_C06D98.gbapal.lz"); -const u32 gUnknownPal_C06D98_2[] = INCBIN_U32("graphics/unknown/unknown_C06D98_2.gbapal.lz"); +const u32 gBattleAnimSpriteGfx_SpinningBall[] = INCBIN_U32("graphics/battle_anims/unused/spinning_ball.4bpp.lz"); +const u32 gBattleAnimSpritePal_SpinningBall[] = INCBIN_U32("graphics/battle_anims/unused/spinning_ball.gbapal.lz"); +const u32 gBattleAnimSpritePal_SpinningBall2[] = INCBIN_U32("graphics/battle_anims/unused/spinning_ball_2.gbapal.lz"); // old battle interface data, unused @@ -164,18 +162,18 @@ const u32 gBattleAnimSpriteGfx_Glass2[] = INCBIN_U32("graphics/battle_anims/spri const u32 gBattleAnimSpritePal_PinkHeart2[] = INCBIN_U32("graphics/battle_anims/sprites/pink_heart_2.gbapal.lz"); const u32 gBattleAnimSpriteGfx_PinkHeart2[] = INCBIN_U32("graphics/battle_anims/sprites/pink_heart_2.4bpp.lz"); -const u32 gUnknown_08C08F0C[] = INCBIN_U32("graphics/battle_interface/unused_window.4bpp.lz"); -const u32 gUnknown_08C093C8[] = INCBIN_U32("graphics/battle_interface/unused_window.gbapal.lz"); +const u32 gBattleInterfaceGfx_UnusedWindow1[] = INCBIN_U32("graphics/battle_interface/unused_window.4bpp.lz"); +const u32 gBattleInterfacePal_UnusedWindow1[] = INCBIN_U32("graphics/battle_interface/unused_window.gbapal.lz"); -const u32 gUnknown_08C093F0[] = INCBIN_U32("graphics/interface/hp_numbers.4bpp.lz"); +const u32 gBattleInterfaceGfx_BattleBar[] = INCBIN_U32("graphics/interface/battle_bar.4bpp.lz"); const u32 gBattleAnimSpriteGfx_SapDrip[] = INCBIN_U32("graphics/battle_anims/sprites/sap_drip.4bpp.lz"); const u32 gBattleAnimSpritePal_SapDrip[] = INCBIN_U32("graphics/battle_anims/sprites/sap_drip.gbapal.lz"); const u32 gBattleAnimSpritePal_SapDrip2[] = INCBIN_U32("graphics/battle_anims/sprites/sap_drip_2.gbapal.lz"); -const u32 gUnusedGfx_Window2[] = INCBIN_U32("graphics/battle_interface/unused_window2.4bpp.lz"); -const u32 gUnusedGfx_Window2Bar[] = INCBIN_U32("graphics/battle_interface/unused_window2bar.4bpp.lz"); +const u32 gBattleInterfaceGfx_UnusedWindow2[] = INCBIN_U32("graphics/battle_interface/unused_window2.4bpp.lz"); +const u32 gBattleInterfaceGfx_UnusedWindow2Bar[] = INCBIN_U32("graphics/battle_interface/unused_window2bar.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Sparkle1[] = INCBIN_U32("graphics/battle_anims/sprites/sparkle_1.4bpp.lz"); const u32 gBattleAnimSpritePal_Sparkle1[] = INCBIN_U32("graphics/battle_anims/sprites/sparkle_1.gbapal.lz"); @@ -187,8 +185,8 @@ const u32 gBattleAnimSpriteGfx_HumanoidFoot[] = INCBIN_U32("graphics/battle_anim const u32 gBattleAnimSpriteGfx_MonsterFoot[] = INCBIN_U32("graphics/battle_anims/sprites/monster_foot.4bpp.lz"); const u32 gBattleAnimSpriteGfx_HumanoidHand[] = INCBIN_U32("graphics/battle_anims/sprites/humanoid_hand.4bpp.lz"); -const u32 gUnusedGfx_LineSketch[] = INCBIN_U32("graphics/unused/line_sketch.4bpp.lz"); -const u32 gUnusedPal_LineSketch[] = INCBIN_U32("graphics/unused/line_sketch.gbapal.lz"); +const u32 gBattleAnimSpriteGfx_LineSketch[] = INCBIN_U32("graphics/battle_anims/unused/line_sketch.4bpp.lz"); +const u32 gBattleAnimSpritePal_LineSketch[] = INCBIN_U32("graphics/battle_anims/unused/line_sketch.gbapal.lz"); const u32 gBattleAnimSpriteGfx_YellowUnk[] = INCBIN_U32("graphics/battle_anims/sprites/yellow_unk.4bpp.lz"); const u32 gBattleAnimSpritePal_YellowUnk[] = INCBIN_U32("graphics/battle_anims/sprites/yellow_unk.gbapal.lz"); @@ -219,7 +217,7 @@ const u32 gBattleAnimSpritePal_SpinningGreenOrbs[] = INCBIN_U32("graphics/battle const u32 gBattleAnimSpriteGfx_Leaf[] = INCBIN_U32("graphics/battle_anims/sprites/leaf.4bpp.lz"); const u32 gBattleAnimSpritePal_Leaf[] = INCBIN_U32("graphics/battle_anims/sprites/leaf.gbapal.lz"); -const u32 gUnusedGfx_Metronome[] = INCBIN_U32("graphics/unused/metronome_hand_small.4bpp.lz"); // unused, was for metronome at one point +const u32 gBattleAnimSpriteGfx_MetronomeSmallHand[] = INCBIN_U32("graphics/battle_anims/unused/metronome_hand_small.4bpp.lz"); // unused, was for metronome at one point const u32 gBattleAnimSpritePal_Clapping[] = INCBIN_U32("graphics/battle_anims/sprites/clapping.gbapal.lz"); @@ -254,12 +252,13 @@ const u32 gBattleAnimSpritePal_Bell2[] = INCBIN_U32("graphics/battle_anims/sprit const u32 gBattleAnimSpriteGfx_PinkGlove[] = INCBIN_U32("graphics/battle_anims/sprites/pink_glove.4bpp.lz"); const u32 gBattleAnimSpritePal_PinkGlove[] = INCBIN_U32("graphics/battle_anims/sprites/pink_glove.gbapal.lz"); -const u16 gUnknown_C0CA1C[] = INCBIN_U16("graphics/unknown/unknown_C0CA1C.bin"); -const u16 gUnknown_C0CA40[] = INCBIN_U16("graphics/unknown/unknown_C0CA40.bin"); -const u16 gUnknown_C0CA64[] = INCBIN_U16("graphics/unknown/unknown_C0CA64.bin"); -const u32 gUnusedGfx8bpp_LineSketch2[] = INCBIN_U32("graphics/unused/line_sketch_2.8bpp.lz"); -const u16 gUnknown_C0CAE0[] = INCBIN_U16("graphics/unknown/unknown_C0CAE0.bin"); -const u32 gUnusedTilemap_LineSketch2[] = INCBIN_U32("graphics/unused/line_sketch_2.bin.lz"); +const u16 gBattleAnimUnused_Unknown1[] = INCBIN_U16("graphics/battle_anims/unused/unknown_1.bin"); +const u16 gBattleAnimUnused_Unknown2[] = INCBIN_U16("graphics/battle_anims/unused/unknown_2.bin"); +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_pal.bin"); +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"); const u32 gBattleAnimSpritePal_BlueLines[] = INCBIN_U32("graphics/battle_anims/sprites/blue_lines.gbapal.lz"); @@ -275,7 +274,7 @@ const u32 gBattleAnimSpritePal_RedTube[] = INCBIN_U32("graphics/battle_anims/spr const u32 gBattleAnimSpritePal_Amnesia[] = INCBIN_U32("graphics/battle_anims/sprites/amnesia.gbapal.lz"); const u32 gBattleAnimSpritePal_String2[] = INCBIN_U32("graphics/battle_anims/sprites/string_2.gbapal.lz"); -const u32 gUnknown_D0D2B4[] = INCBIN_U32("graphics/unknown/unknown_D0D2B4.bin.lz"); +const u32 gBattleAnimUnused_Unknown4[] = INCBIN_U32("graphics/battle_anims/unused/unknown_4.bin.lz"); const u32 gBattleAnimSpritePal_Pencil2[] = INCBIN_U32("graphics/battle_anims/sprites/pencil_2.gbapal.lz"); const u32 gBattleAnimSpritePal_Petal[] = INCBIN_U32("graphics/battle_anims/sprites/petal.gbapal.lz"); @@ -341,9 +340,9 @@ const u32 gUnusedPal_ColorFrames[] = INCBIN_U32("graphics/unused/color_frames.gb const u32 gBattleAnimSpriteGfx_RainDrops[] = INCBIN_U32("graphics/battle_anims/sprites/rain_drops.4bpp.lz"); -const u32 gUnusedGfx8bpp_WaterSplash [] = INCBIN_U32("graphics/unused/water_splash.8bpp.lz"); -const u32 gUnusedTilemap_WaterSplash[] = INCBIN_U32("graphics/unused/water_splash.bin.lz"); -const u32 gUnusedPalette_WaterSplash[] = INCBIN_U32("graphics/unused/water_splash.gbapal.lz"); +const u32 gBattleAnimUnusedGfx_WaterSplash[] = INCBIN_U32("graphics/battle_anims/unused/water_splash.8bpp.lz"); +const u32 gBattleAnimUnusedTilemap_WaterSplash[] = INCBIN_U32("graphics/battle_anims/unused/water_splash.bin.lz"); +const u32 gBattleAnimUnusedPal_WaterSplash[] = INCBIN_U32("graphics/battle_anims/unused/water_splash.gbapal.lz"); const u32 gUnusedGfx_BasicFrame[] = INCBIN_U32("graphics/unused/basic_frame.4bpp.lz"); const u32 gUnusedPal_BasicFrame[] = INCBIN_U32("graphics/unused/basic_frame.gbapal.lz"); @@ -434,39 +433,31 @@ const u32 gBattleAnimSpritePal_BlueFlames[] = INCBIN_U32("graphics/battle_anims/ const u32 gBattleAnimSpriteGfx_BlueFlames2[] = INCBIN_U32("graphics/battle_anims/sprites/blue_flames_2.4bpp.lz"); // Contest - -const u32 gUnusedGfx_OldContest[] = INCBIN_U32("graphics/unused/old_contest.4bpp.lz"); -const u32 gUnusedPal_OldContest[] = INCBIN_U32("graphics/unused/old_contest.gbapal.lz"); -const u32 gUnusedTilemap_OldContest[] = INCBIN_U32("graphics/unused/old_contest.bin.lz"); - -const u32 gUnknownTilemap_C15BC0[] = INCBIN_U32("graphics/unknown/unknown_C15BC0.bin.lz"); - -const u32 gUnusedGfx_OldContest2[] = INCBIN_U32("graphics/unused/old_contest_2.4bpp.lz"); -const u32 gOldContestPalette[] = INCBIN_U32("graphics/unused/old_contest_2.gbapal.lz"); -const u32 gOldContestGfx[] = INCBIN_U32("graphics/unused/old_contest_2.bin.lz"); - -const u32 gUnknown_08C17170[] = INCBIN_U32("graphics/unknown/unknown_C17170.bin.lz"); - -const u32 gUnknown_08C17410[] = INCBIN_U32("graphics/unknown/unknown_C17410.bin.lz"); - -const u32 gUnknown_08C1751C[] = INCBIN_U32("graphics/unknown/unknown_C1751C.bin.lz"); - -const u32 gUnknown_08C17980[] = INCBIN_U32("graphics/unknown/unknown_C17980.bin.lz"); - -const u32 gContestMiscGfx[] = INCBIN_U32("graphics/contest/misc.4bpp.lz"); - +const u32 gJPContestGfx1[] = INCBIN_U32("graphics/contest/japanese/composite_1.4bpp.lz"); +const u32 gJPContestPal[] = INCBIN_U32("graphics/contest/japanese/palette.gbapal.lz"); +const u32 gJPContestTilemap1[] = INCBIN_U32("graphics/contest/japanese/tilemap_1.bin.lz"); +const u32 gJPContestTilemap2[] = INCBIN_U32("graphics/contest/japanese/tilemap_2.bin.lz"); +const u32 gJPContestGfx2[] = INCBIN_U32("graphics/contest/japanese/composite_2.4bpp.lz"); + +const u32 gContestInterfaceAudiencePalette[] = INCBIN_U32("graphics/contest/interface_audience.gbapal.lz"); +const u32 gContestAudienceTilemap[] = INCBIN_U32("graphics/contest/audience.bin.lz"); +const u32 gContestInterfaceTilemap[] = INCBIN_U32("graphics/contest/interface.bin.lz"); +const u32 gContestUnusedTilemap1[] = INCBIN_U32("graphics/contest/unused_tilemap_1.bin.lz"); +const u32 gContestUnusedTilemap2[] = INCBIN_U32("graphics/contest/unused_tilemap_2.bin.lz"); +const u32 gContestCurtainTilemap[] = INCBIN_U32("graphics/contest/curtain.bin.lz"); + +const u32 gContestInterfaceGfx[] = INCBIN_U32("graphics/contest/interface.4bpp.lz"); const u32 gContestAudienceGfx[] = INCBIN_U32("graphics/contest/audience.4bpp.lz"); - const u32 gContestFaces_Gfx[] = INCBIN_U32("graphics/contest/faces.4bpp.lz"); - const u32 gContestJudgeSymbolsGfx[] = INCBIN_U32("graphics/contest/judge_symbols.4bpp.lz"); -const u32 gContest3Pal[] = INCBIN_U32("graphics/contest/judge_symbols.gbapal.lz"); - +const u32 gContestJudgeSymbolsPal[] = INCBIN_U32("graphics/contest/judge_symbols.gbapal.lz"); const u8 gContestSliderHeart_Gfx[] = INCBIN_U8("graphics/contest/slider_heart.4bpp"); -const u32 gUnknownGfx_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.4bpp.lz"); -const u32 gUnknownPal_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.gbapal.lz"); +// JP equivalent of the Applause meter +const u32 gJPContestVoltageGfx[] = INCBIN_U32("graphics/contest/japanese/voltage.4bpp.lz"); +const u32 gJPContestVoltagePal[] = INCBIN_U32("graphics/contest/japanese/voltage.gbapal.lz"); +// Contest results const u32 gContestResults_Gfx[] = INCBIN_U32("graphics/contest/results_screen/tiles.4bpp.lz"); const u32 gContestResults_WinnerBanner_Tilemap[] = INCBIN_U32("graphics/contest/results_screen/winner_banner.bin.lz"); const u32 gContestResults_Interface_Tilemap[] = INCBIN_U32("graphics/contest/results_screen/interface.bin.lz"); @@ -498,8 +489,8 @@ const u32 gBattleAnimSpritePal_IceCrystals[] = INCBIN_U32("graphics/battle_anims const u32 gBattleAnimSpriteGfx_IceSpikes[] = INCBIN_U32("graphics/battle_anims/sprites/ice_spikes.4bpp.lz"); -const u32 gUnusedGfx_OldBeatUp[] = INCBIN_U32("graphics/unused/old_beatup.4bpp.lz"); -const u32 gUnusedPal_OldBeatUp[] = INCBIN_U32("graphics/unused/old_beatup.gbapal.lz"); +const u32 gBattleAnimSpriteGfx_OldBeatUp[] = INCBIN_U32("graphics/battle_anims/unused/old_beatup.4bpp.lz"); +const u32 gBattleAnimSpritePal_OldBeatUp[] = INCBIN_U32("graphics/battle_anims/unused/old_beatup.gbapal.lz"); const u32 gBattleAnimSpriteGfx_Orbs[] = INCBIN_U32("graphics/battle_anims/sprites/orbs.4bpp.lz"); const u32 gBattleAnimSpritePal_Orbs[] = INCBIN_U32("graphics/battle_anims/sprites/orbs.gbapal.lz"); @@ -547,9 +538,9 @@ const u32 gBattleAnimSpritePal_RazorLeaf[] = INCBIN_U32("graphics/battle_anims/s const u32 gBattleAnimSpriteGfx_MistCloud[] = INCBIN_U32("graphics/battle_anims/sprites/mist_cloud.4bpp.lz"); const u32 gBattleAnimSpritePal_MistCloud[] = INCBIN_U32("graphics/battle_anims/sprites/mist_cloud.gbapal.lz"); -const u32 gUnknownGfx_D1C060[] = INCBIN_U32("graphics/unknown/unknown_D1C060.4bpp.lz"); -const u32 gUnknownPal_D1C060[] = INCBIN_U32("graphics/unknown/unknown_D1C060.gbapal.lz"); -const u32 gUnknownTilemap_D1C060[] = INCBIN_U32("graphics/unknown/unknown_D1C060.bin.lz"); +const u32 gBattleAnimUnusedGfx_Lights[] = INCBIN_U32("graphics/battle_anims/unused/lights.4bpp.lz"); +const u32 gBattleAnimUnusedPal_Lights[] = INCBIN_U32("graphics/battle_anims/unused/lights.gbapal.lz"); +const u32 gBattleAnimUnusedTilemap_Lights[] = INCBIN_U32("graphics/battle_anims/unused/lights.bin.lz"); const u32 gBattleAnimSpriteGfx_WhirlwindLines[] = INCBIN_U32("graphics/battle_anims/sprites/whirlwind_lines.4bpp.lz"); const u32 gBattleAnimSpritePal_WhirlwindLines[] = INCBIN_U32("graphics/battle_anims/sprites/whirlwind_lines.gbapal.lz"); @@ -590,9 +581,9 @@ const u32 gMetalShineGfx[] = INCBIN_U32("graphics/battle_anims/masks/metal_shine const u32 gMetalShinePalette[] = INCBIN_U32("graphics/battle_anims/masks/metal_shine.gbapal.lz"); const u32 gMetalShineTilemap[] = INCBIN_U32("graphics/battle_anims/masks/metal_shine.bin.lz"); -const u32 gUnusedGfx_Goosuto[] = INCBIN_U32("graphics/unused/goosuto.4bpp.lz"); // ghost -const u32 gUnusedPal_Goosuto[] = INCBIN_U32("graphics/unused/goosuto.gbapal.lz"); -const u32 gUnusedTilemap_Goosuto[] = INCBIN_U32("graphics/unused/goosuto.bin.lz"); +const u32 gUnusedGfx_Goosuto[] = INCBIN_U32("graphics/battle_anims/unused/goosuto.4bpp.lz"); // ghost +const u32 gUnusedPal_Goosuto[] = INCBIN_U32("graphics/battle_anims/unused/goosuto.gbapal.lz"); +const u32 gUnusedTilemap_Goosuto[] = INCBIN_U32("graphics/battle_anims/unused/goosuto.bin.lz"); const u32 gBattleAnimSpriteGfx_YellowStar[] = INCBIN_U32("graphics/battle_anims/sprites/yellow_star.4bpp.lz"); const u32 gBattleAnimSpritePal_YellowStar[] = INCBIN_U32("graphics/battle_anims/sprites/yellow_star.gbapal.lz"); @@ -942,7 +933,7 @@ const u32 gBattleAnimSpritePal_Meteor[] = INCBIN_U32("graphics/battle_anims/spri const u32 gBattleAnimSpriteGfx_FlatRock[] = INCBIN_U32("graphics/battle_anims/sprites/flat_rock.4bpp.lz"); const u32 gBattleAnimSpritePal_FlatRock[] = INCBIN_U32("graphics/battle_anims/sprites/flat_rock.gbapal.lz"); -const u32 gUnknownPal_C2F9E0[] = INCBIN_U32("graphics/unknown/unknown_C2F9E0.gbapal.lz"); +const u32 gBattleAnimUnusedPal_Unknown2[] = INCBIN_U32("graphics/battle_anims/unused/unknown_2.gbapal.lz"); #include "data/graphics/pokemon.h" #include "data/graphics/trainers.h" @@ -950,9 +941,9 @@ const u32 gUnknownPal_C2F9E0[] = INCBIN_U32("graphics/unknown/unknown_C2F9E0.gba const u8 gMonIcon_QuestionMark[] = INCBIN_U8("graphics/pokemon/question_mark/icon.4bpp"); const u8 gMonFootprint_QuestionMark[] = INCBIN_U8("graphics/pokemon/question_mark/footprint.1bpp"); -const u32 gUnknown_08D778F0[] = INCBIN_U32("graphics/battle_transitions/vs_frame.4bpp.lz"); -const u32 gUnknown_08D779D8[] = INCBIN_U32("graphics/battle_transitions/vs_frame.bin.lz"); -const u32 gUnknown_08D77AE4[] = INCBIN_U32("graphics/battle_transitions/vs_frame.gbapal.lz"); +const u32 gBattleVSFrame_Gfx[] = INCBIN_U32("graphics/battle_transitions/vs_frame.4bpp.lz"); +const u32 gBattleVSFrame_Tilemap[] = INCBIN_U32("graphics/battle_transitions/vs_frame.bin.lz"); +const u32 gBattleVSFrame_Pal[] = INCBIN_U32("graphics/battle_transitions/vs_frame.gbapal.lz"); const u32 gVsLettersGfx[] = INCBIN_U32("graphics/battle_transitions/vs.4bpp.lz"); @@ -976,7 +967,7 @@ const u32 gBattleArenaJudgementSymbolsGfx[] = INCBIN_U32("graphics/battle_fronti const u32 gBattleArenaJudgementSymbolsPalette[] = INCBIN_U32("graphics/battle_frontier/arena_judgement_symbols.gbapal.lz"); const u32 gBattleWindowTextPalette[] = INCBIN_U32("graphics/battle_interface/text.gbapal.lz"); -const u16 gUnknown_08D85620[] = INCBIN_U16("graphics/battle_frontier/text_pp.gbapal"); +const u16 gPPTextPalette[] = INCBIN_U16("graphics/battle_frontier/text_pp.gbapal"); const u16 gTilesetAnims_BattleDomePals0_0[] = INCBIN_U16("graphics/battle_frontier/dome_anim1.gbapal"); const u16 gTilesetAnims_BattleDomePals0_1[] = INCBIN_U16("graphics/battle_frontier/dome_anim2.gbapal"); @@ -985,10 +976,10 @@ const u16 gTilesetAnims_BattleDomePals0_3[] = INCBIN_U16("graphics/battle_fronti static const u16 sUnused0[] = {0x13F, 0x119, 0x113, 0x10E}; -const u16 gUnknown_08D856C8[] = INCBIN_U16("graphics/battle_frontier/pyramid_light.gbapal"); // unfaded pal for the player light in battle pyramid +const u16 gBattlePyramidFloor_Pal[] = INCBIN_U16("graphics/battle_frontier/pyramid_floor.gbapal"); -const u32 gUnknown_08D857A8[] = INCBIN_U32("graphics/battle_frontier/battle_tilemap1.bin.lz"); -const u32 gUnknown_08D85A1C[] = INCBIN_U32("graphics/battle_frontier/battle_tilemap2.bin.lz"); +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"); #include "data/graphics/intro_scene.h" @@ -1060,8 +1051,7 @@ const u32 gBattleAnimBgTilemap_Ghost[] = INCBIN_U32("graphics/battle_anims/backg const u32 gBattleAnimSpritePal_WhipHit[] = INCBIN_U32("graphics/battle_anims/sprites/whip_hit.gbapal.lz"); const u32 gBattleAnimBgPalette_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz"); - -const u32 gUnknown_E6BC04[] = INCBIN_U32("graphics/unknown/unknown_E6BC04.bin.lz"); +const u32 gBattleAnimBgTilemap_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.bin.lz"); // Unused const u32 gBerryBlenderCenter_Gfx[] = INCBIN_U32("graphics/berry_blender/center.8bpp.lz"); const u32 gBerryBlenderOuter_Gfx[] = INCBIN_U32("graphics/berry_blender/outer.4bpp.lz"); @@ -1139,13 +1129,13 @@ const u32 gMoveTypes_Pal[] = INCBIN_U32("graphics/types/move_types.gbapal.lz"); const u32 gSummaryMoveSelect_Gfx[] = INCBIN_U32("graphics/interface/summary_frames.4bpp.lz"); const u32 gSummaryMoveSelect_Pal[] = INCBIN_U32("graphics/interface/summary_frames.gbapal.lz"); -const u32 gStatusScreenBitmap[] = INCBIN_U32("graphics/interface/status_screen.4bpp.lz"); -const u32 gStatusScreenPalette[] = INCBIN_U32("graphics/interface/status_screen.gbapal.lz"); -const u32 gPageInfoTilemap[] = INCBIN_U32("graphics/interface/status_screen.bin.lz"); -const u32 gPageSkillsTilemap[] = INCBIN_U32("graphics/interface/status_tilemap1.bin.lz"); -const u32 gPageBattleMovesTilemap[] = INCBIN_U32("graphics/interface/status_tilemap2.bin.lz"); -const u32 gPageContestMovesTilemap[] = INCBIN_U32("graphics/interface/status_tilemap3.bin.lz"); -const u32 gUnknown_08D98CC8[] = INCBIN_U32("graphics/interface/status_tilemap0.bin.lz"); +const u32 gSummaryScreen_Gfx[] = INCBIN_U32("graphics/interface/summary_screen.4bpp.lz"); +const u32 gSummaryScreen_Pal[] = INCBIN_U32("graphics/interface/summary_screen.gbapal.lz"); +const u32 gSummaryPage_Info_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_info.bin.lz"); +const u32 gSummaryPage_Skills_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_skills.bin.lz"); +const u32 gSummaryPage_BattleMoves_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_battle_moves.bin.lz"); +const u32 gSummaryPage_ContestMoves_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_contest_moves.bin.lz"); +const u32 gSummaryPage_InfoCopy_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_info_copy.bin.lz"); const u32 gBagMaleTiles[] = INCBIN_U32("graphics/misc/bag_male.4bpp.lz"); const u32 gBagFemaleTiles[] = INCBIN_U32("graphics/misc/bag_female.4bpp.lz"); @@ -1157,11 +1147,10 @@ const u32 gBagScreenFemale_Pal[] = INCBIN_U32("graphics/interface/bag_screen_fem const u32 gBagScreen_Gfx[] = INCBIN_U32("graphics/interface/bag_screen.4bpp.lz"); const u32 gBagScreen_GfxTileMap[] = INCBIN_U32("graphics/interface/bag_screen_tilemap.bin.lz"); -const u32 gBattleFrontierGfx_PyramidBag[] = INCBIN_U32("graphics/interface/bag_pyramid.4bpp.lz"); -const u32 gBattleFrontierGfx_PyramidBag_Pal[] = INCBIN_U32("graphics/interface/bag_pyramid.gbapal.lz"); // female palette is first and male is second. -const u32 gBattleFrontierGfx_PyramidBagTileMap[] = INCBIN_U32("graphics/interface/bag_pyramid_tilemap.bin.lz"); - -const u32 gUnknown_08D9AF44[] = INCBIN_U32("graphics/unknown/unknown_D9AF44.gbapal.lz"); +const u32 gBattlePyramidBag_Gfx[] = INCBIN_U32("graphics/interface/bag_pyramid.4bpp.lz"); +const u32 gBattlePyramidBag_Pal[] = INCBIN_U32("graphics/interface/bag_pyramid.gbapal.lz"); // female palette is first and male is second. +const u32 gBattlePyramidBagTilemap[] = INCBIN_U32("graphics/interface/bag_pyramid_tilemap.bin.lz"); +const u32 gBattlePyramidBagInterface_Pal[] = INCBIN_U32("graphics/interface/bag_pyramid_interface.gbapal.lz"); const u32 gBagSwapLineGfx[] = INCBIN_U32("graphics/interface/bag_swap.4bpp.lz"); const u32 gBagSwapLinePal[] = INCBIN_U32("graphics/interface/bag_swap.gbapal.lz"); @@ -1473,8 +1462,8 @@ const u16 gTradeMenu_Pal[] = INCBIN_U16("graphics/trade/menu.gbapal"); const u16 gTradeCursor_Pal[] = INCBIN_U16("graphics/trade/cursor.gbapal"); const u8 gTradeMenu_Gfx[] = INCBIN_U8("graphics/trade/menu.4bpp"); const u8 gTradeCursor_Gfx[] = INCBIN_U8("graphics/trade/cursor.4bpp"); -const u16 gUnused_DDCEE4[] = INCBIN_U16("graphics/unused/unused_DDCEE4.bin"); -const u16 gUnknown_08DDCF04[] = INCBIN_U16("graphics/trade/unknown_DDCF04.bin"); +const u16 gTradeUnused_Tilemap[] = INCBIN_U16("graphics/trade/unused.bin"); +const u16 gTradeMenu_Tilemap[] = INCBIN_U16("graphics/trade/menu.bin"); const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.bin"); const u16 gMessageBox_Pal[] = INCBIN_U16("graphics/text_window/message_box.gbapal"); @@ -1513,26 +1502,21 @@ const u16 gMonIconPalettes[][16] = INCBIN_U16("graphics/pokemon/icon_palettes/icon_palette_2.gbapal"), }; -const u16 gTitleScreenBgPalettes[] = INCBIN_U16("graphics/title_screen/pokemon_logo.gbapal", - "graphics/title_screen/rayquaza_and_clouds.gbapal"); - -const u16 gTitleScreenEmeraldVersionPal[] = INCBIN_U16("graphics/title_screen/emerald_version.gbapal"); - -const u32 gUnknown_08DDE458[] = INCBIN_U32("graphics/title_screen/title_screen1.bin.lz"); - -const u32 gTitleScreenPokemonLogoGfx[] = INCBIN_U32("graphics/title_screen/pokemon_logo.8bpp.lz"); - -const u32 gTitleScreenEmeraldVersionGfx[] = INCBIN_U32("graphics/title_screen/emerald_version.8bpp.lz"); - -const u16 gTitleScreenPressStartPal[] = INCBIN_U16("graphics/title_screen/press_start.gbapal"); -const u32 gTitleScreenPressStartGfx[] = INCBIN_U32("graphics/title_screen/press_start.4bpp.lz"); - -const u32 gUnknown_08DE0644[] = INCBIN_U32("graphics/title_screen/title_screen2.bin.lz"); - -const u16 gFrontierPassBg_Pal[][16] = INCBIN_U16("graphics/frontier_pass/bg.gbapal");// size in LoadPalette calls is reported as 0xD0 << 1, which is 0x1A0, but palette is only 0x100 bytes long so it loads garbage as well -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 gTitleScreenBgPalettes[] = INCBIN_U16("graphics/title_screen/pokemon_logo.gbapal", + "graphics/title_screen/rayquaza_and_clouds.gbapal"); +const u16 gTitleScreenEmeraldVersionPal[] = INCBIN_U16("graphics/title_screen/emerald_version.gbapal"); +const u32 gTitleScreenCloudsTilemap[] = INCBIN_U32("graphics/title_screen/title_screen1.bin.lz"); +const u32 gTitleScreenPokemonLogoGfx[] = INCBIN_U32("graphics/title_screen/pokemon_logo.8bpp.lz"); +const u32 gTitleScreenEmeraldVersionGfx[] = INCBIN_U32("graphics/title_screen/emerald_version.8bpp.lz"); +const u16 gTitleScreenPressStartPal[] = INCBIN_U16("graphics/title_screen/press_start.gbapal"); +const u32 gTitleScreenPressStartGfx[] = INCBIN_U32("graphics/title_screen/press_start.4bpp.lz"); +const u32 gTitleScreenPokemonLogoTilemap[] = INCBIN_U32("graphics/title_screen/title_screen2.bin.lz"); + +// size in LoadPalette calls is reported as 0xD0 << 1, which is 0x1A0, but palette is only 0x100 bytes long so it loads garbage as well +const u16 gFrontierPassBg_Pal[][16] = INCBIN_U16("graphics/frontier_pass/bg.gbapal"); +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"); diff --git a/src/item_menu.c b/src/item_menu.c index 53f478a31d98..32b035ec91c7 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2451,7 +2451,7 @@ static void LoadBagMenuTextWindows(void) LoadUserWindowBorderGfx(0, 1, 0xE0); LoadMessageBoxGfx(0, 10, 0xD0); ListMenuLoadStdPalAt(0xC0, 1); - LoadPalette(&gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(&gStandardMenuPalette, 0xF0, 0x20); for (i = 0; i <= WIN_POCKET_NAME; i++) { FillWindowPixelBuffer(i, PIXEL_FILL(0)); diff --git a/src/link.c b/src/link.c index 66549f648cf2..779fba9dd4f5 100644 --- a/src/link.c +++ b/src/link.c @@ -1622,7 +1622,7 @@ void CB2_LinkError(void) SetGpuReg(REG_OFFSET_BG1HOFS, 0); SetGpuReg(REG_OFFSET_BG1VOFS, 0); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON); - LoadPalette(gUnknown_0860F074, 0xf0, 0x20); + LoadPalette(gStandardMenuPalette, 0xf0, 0x20); gSoftResetDisabled = FALSE; CreateTask(Task_DestroySelf, 0); StopMapMusic(); diff --git a/src/menu.c b/src/menu.c index dcc32319e972..117642098ef8 100644 --- a/src/menu.c +++ b/src/menu.c @@ -60,7 +60,7 @@ static EWRAM_DATA bool8 sScheduledBgCopiesToVram[4] = {FALSE}; static EWRAM_DATA u16 sTempTileDataBufferIdx = 0; static EWRAM_DATA void *sTempTileDataBuffer[0x20] = {NULL}; -const u16 gUnknown_0860F074[] = INCBIN_U16("graphics/interface/860F074.gbapal"); +const u16 gStandardMenuPalette[] = INCBIN_U16("graphics/interface/860F074.gbapal"); static const u8 sTextSpeedFrameDelays[] = { @@ -433,26 +433,28 @@ void sub_819786C(u8 windowId, bool8 copyToVram) DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, 0xF); } -void sub_819789C(void) +void Menu_LoadStdPal(void) { - LoadPalette(gUnknown_0860F074, STD_WINDOW_PALETTE_NUM * 0x10, 0x14); + LoadPalette(gStandardMenuPalette, STD_WINDOW_PALETTE_NUM * 0x10, 0x14); } void Menu_LoadStdPalAt(u16 offset) { - LoadPalette(gUnknown_0860F074, offset, 0x14); + LoadPalette(gStandardMenuPalette, offset, 0x14); } -const u16 *sub_81978C8(void) +// Unused +static const u16 *Menu_GetStdPal(void) { - return gUnknown_0860F074; + return gStandardMenuPalette; } -u16 sub_81978D0(u8 colorNum) +// Unused +static u16 Menu_GetStdPalColor(u8 colorNum) { if (colorNum > 15) colorNum = 0; - return gUnknown_0860F074[colorNum]; + return gStandardMenuPalette[colorNum]; } void DisplayItemMessageOnField(u8 taskId, const u8 *string, TaskFunc callback) diff --git a/src/menu_specialized.c b/src/menu_specialized.c index c9d895e19310..1ea53a898858 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -683,7 +683,7 @@ void InitMoveRelearnerWindows(bool8 useContextWindow) InitWindows(sMoveRelearnerWindowTemplates); DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 1, 0xE0); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); for (i = 0; i < 5; i++) { diff --git a/src/party_menu.c b/src/party_menu.c index 95a4852db6e0..38ca8c9d51c5 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2019,7 +2019,7 @@ static void InitPartyMenuWindows(u8 layout) FillWindowPixelBuffer(i, PIXEL_FILL(0)); LoadUserWindowBorderGfx(0, 0x4F, 0xD0); LoadPalette(GetOverworldTextboxPalettePtr(), 0xE0, 0x20); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); } static void CreateCancelConfirmWindows(bool8 chooseHalf) diff --git a/src/pokeblock.c b/src/pokeblock.c index 89c2bc962277..647a85b10983 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -95,10 +95,6 @@ enum PKBL_GIVE_TO_LADY }; - -extern const u16 gUnknown_0860F074[]; - -// this file's functions static void CB2_InitPokeblockMenu(void); static bool8 InitPokeblockMenu(void); static bool8 LoadPokeblockMenuGfx(void); @@ -685,7 +681,7 @@ static void HandleInitWindows(void) DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 1, 0xE0); LoadMessageBoxGfx(0, 0xA, 0xD0); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); for (i = 0; i < ARRAY_COUNT(sWindowTemplates) - 1; i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index a4395d760a49..2241d1668bcc 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -116,8 +116,6 @@ struct PokeblockFeed u8 unused4; }; -extern const u16 gUnknown_0860F074[]; - static void HandleInitBackgrounds(void); static void HandleInitWindows(void); static void LaunchPokeblockFeedTask(void); @@ -786,7 +784,7 @@ static void HandleInitWindows(void) InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); LoadUserWindowBorderGfx(0, 1, 0xE0); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); FillWindowPixelBuffer(0, PIXEL_FILL(0)); PutWindowTilemap(0); ScheduleBgCopyTilemapToVram(0); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index f6371b088f40..dc05c52c4a92 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1301,35 +1301,35 @@ static bool8 DecompressGraphics(void) { case 0: ResetTempTileDataBuffers(); - DecompressAndCopyTileDataToVram(1, &gStatusScreenBitmap, 0, 0, 0); + DecompressAndCopyTileDataToVram(1, &gSummaryScreen_Gfx, 0, 0, 0); sMonSummaryScreen->switchCounter++; break; case 1: if (FreeTempTileDataBuffersIfPossible() != 1) { - LZDecompressWram(gPageInfoTilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0]); + LZDecompressWram(gSummaryPage_Info_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0]); sMonSummaryScreen->switchCounter++; } break; case 2: - LZDecompressWram(gUnknown_08D98CC8, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][1]); + LZDecompressWram(gSummaryPage_InfoCopy_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][1]); sMonSummaryScreen->switchCounter++; break; case 3: - LZDecompressWram(gPageSkillsTilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_SKILLS][1]); + LZDecompressWram(gSummaryPage_Skills_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_SKILLS][1]); sMonSummaryScreen->switchCounter++; break; case 4: - LZDecompressWram(gPageBattleMovesTilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][1]); + LZDecompressWram(gSummaryPage_BattleMoves_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][1]); sMonSummaryScreen->switchCounter++; break; case 5: - LZDecompressWram(gPageContestMovesTilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][1]); + LZDecompressWram(gSummaryPage_ContestMoves_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][1]); sMonSummaryScreen->switchCounter++; break; case 6: - LoadCompressedPalette(gStatusScreenPalette, 0, 0x100); - LoadPalette(&gUnknown_08D85620, 0x81, 0x1E); + LoadCompressedPalette(gSummaryScreen_Pal, 0, 0x100); + LoadPalette(&gPPTextPalette, 0x81, 0x1E); sMonSummaryScreen->switchCounter++; break; case 7: diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 8f727310cdf9..da75a48040d9 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -217,7 +217,7 @@ static void CB2_SaveFailedScreen(void) LoadPalette(gBirchBagGrassPal, 0, 0x40); LoadPalette(sSaveFailedClockPal, 0x100, 0x20); LoadPalette(gTextWindowFrame1_Pal, 0xE0, 0x20); - LoadPalette(gUnknown_0860F074, 0xF0, 0x20); + LoadPalette(gStandardMenuPalette, 0xF0, 0x20); DrawStdFrameWithCustomTileAndPalette(sWindowIds[TEXT_WIN_ID], FALSE, 0x214, 0xE); DrawStdFrameWithCustomTileAndPalette(sWindowIds[CLOCK_WIN_ID], FALSE, 0x214, 0xE); FillWindowPixelBuffer(sWindowIds[CLOCK_WIN_ID], PIXEL_FILL(1)); // backwards? diff --git a/src/title_screen.c b/src/title_screen.c index ee71b68959bf..93e01327c290 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -547,14 +547,14 @@ void CB2_InitTitleScreen(void) case 1: // bg2 LZ77UnCompVram(gTitleScreenPokemonLogoGfx, (void *)(BG_CHAR_ADDR(0))); - LZ77UnCompVram(gUnknown_08DE0644, (void *)(BG_SCREEN_ADDR(9))); + LZ77UnCompVram(gTitleScreenPokemonLogoTilemap, (void *)(BG_SCREEN_ADDR(9))); LoadPalette(gTitleScreenBgPalettes, 0, 0x1E0); // bg3 LZ77UnCompVram(sTitleScreenRayquazaGfx, (void *)(BG_CHAR_ADDR(2))); LZ77UnCompVram(sTitleScreenRayquazaTilemap, (void *)(BG_SCREEN_ADDR(26))); // bg1 LZ77UnCompVram(sTitleScreenCloudsGfx, (void *)(BG_CHAR_ADDR(3))); - LZ77UnCompVram(gUnknown_08DDE458, (void *)(BG_SCREEN_ADDR(27))); + LZ77UnCompVram(gTitleScreenCloudsTilemap, (void *)(BG_SCREEN_ADDR(27))); ScanlineEffect_Stop(); ResetTasks(); ResetSpriteData(); diff --git a/src/trade.c b/src/trade.c index be2091eceb49..566bb14f3f9b 100644 --- a/src/trade.c +++ b/src/trade.c @@ -334,8 +334,8 @@ static void InitTradeMenu(void) gPaletteFade.bufferTransferDisabled = TRUE; SetVBlankCallback(VBlankCB_TradeMenu); - LoadPalette(gUnknown_0860F074, 0xF0, 20); - LoadPalette(gUnknown_0860F074, 0xD0, 20); + LoadPalette(gStandardMenuPalette, 0xF0, 20); + LoadPalette(gStandardMenuPalette, 0xD0, 20); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sTradeMenuBgTemplates, ARRAY_COUNT(sTradeMenuBgTemplates)); SetBgTilemapBuffer(1, sTradeMenuData->tilemapBuffer); @@ -913,7 +913,7 @@ static void LoadTradeBgGfx(u8 state) case 0: LoadPalette(gTradeMenu_Pal, 0, 0x60); LoadBgTiles(1, gTradeMenu_Gfx, 0x1280, 0); - CopyToBgTilemapBufferRect_ChangePalette(1, gUnknown_08DDCF04, 0, 0, 32, 20, 0); + CopyToBgTilemapBufferRect_ChangePalette(1, gTradeMenu_Tilemap, 0, 0, 32, 20, 0); LoadBgTilemap(2, sTradeStripesBG2Tilemap, 0x800, 0); break; case 1: @@ -924,9 +924,7 @@ static void LoadTradeBgGfx(u8 state) break; case 2: for (i = 0; i < 4; i++) - { SetGpuReg(REG_OFFSET_BG0HOFS + (i * 2), 0); - } ShowBg(0); ShowBg(1); ShowBg(2); diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 1ca414d7975c..2a195730f77d 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -132,7 +132,7 @@ void CB2_UnionRoomBattle(void) FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF); LoadUserWindowBorderGfx(0, 1, 0xD0); LoadUserWindowBorderGfx_(0, 1, 0xD0); - sub_819789C(); + Menu_LoadStdPal(); SetVBlankCallback(VBlankCB_UnionRoomBattle); gMain.state++; break; diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 7debe3cd4f95..ca6f8bd1d814 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -3115,7 +3115,7 @@ static void LoadKeyboardSwapWindow(void) FillWindowPixelBuffer(3, PIXEL_FILL(1)); LoadUserWindowBorderGfx(3, 1, 0xD0); LoadUserWindowBorderGfx_(3, 0xA, 0x20); - LoadPalette(gUnknown_0860F074, 0xE0, 0x20); + LoadPalette(gStandardMenuPalette, 0xE0, 0x20); } static void InitScanlineEffect(void) From a470e2c7612f88293685d2d6587a083dd6d98cd6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 27 Oct 2021 14:06:53 -0400 Subject: [PATCH 344/762] Tabs to spaces for graphics_file_rules alignment --- graphics_file_rules.mk | 132 ++++++++++++++++++++--------------------- 1 file changed, 66 insertions(+), 66 deletions(-) diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index b81c3347f0bf..c83c57e9ad0b 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -27,33 +27,33 @@ contest_types := cool beauty cute smart tough ### Castform ### $(CASTFORMGFXDIR)/front.4bpp: $(CASTFORMGFXDIR)/front_normal_form.4bpp \ - $(CASTFORMGFXDIR)/front_sunny_form.4bpp \ - $(CASTFORMGFXDIR)/front_rainy_form.4bpp \ - $(CASTFORMGFXDIR)/front_snowy_form.4bpp + $(CASTFORMGFXDIR)/front_sunny_form.4bpp \ + $(CASTFORMGFXDIR)/front_rainy_form.4bpp \ + $(CASTFORMGFXDIR)/front_snowy_form.4bpp @cat $^ >$@ $(CASTFORMGFXDIR)/back.4bpp: $(CASTFORMGFXDIR)/back_normal_form.4bpp \ - $(CASTFORMGFXDIR)/back_sunny_form.4bpp \ - $(CASTFORMGFXDIR)/back_rainy_form.4bpp \ - $(CASTFORMGFXDIR)/back_snowy_form.4bpp + $(CASTFORMGFXDIR)/back_sunny_form.4bpp \ + $(CASTFORMGFXDIR)/back_rainy_form.4bpp \ + $(CASTFORMGFXDIR)/back_snowy_form.4bpp @cat $^ >$@ $(CASTFORMGFXDIR)/anim_front.4bpp: $(CASTFORMGFXDIR)/anim_front_normal_form.4bpp \ - $(CASTFORMGFXDIR)/anim_front_sunny_form.4bpp \ - $(CASTFORMGFXDIR)/anim_front_rainy_form.4bpp \ - $(CASTFORMGFXDIR)/anim_front_snowy_form.4bpp + $(CASTFORMGFXDIR)/anim_front_sunny_form.4bpp \ + $(CASTFORMGFXDIR)/anim_front_rainy_form.4bpp \ + $(CASTFORMGFXDIR)/anim_front_snowy_form.4bpp @cat $^ >$@ $(CASTFORMGFXDIR)/normal.gbapal: $(CASTFORMGFXDIR)/normal_normal_form.gbapal \ - $(CASTFORMGFXDIR)/normal_sunny_form.gbapal \ - $(CASTFORMGFXDIR)/normal_rainy_form.gbapal \ - $(CASTFORMGFXDIR)/normal_snowy_form.gbapal + $(CASTFORMGFXDIR)/normal_sunny_form.gbapal \ + $(CASTFORMGFXDIR)/normal_rainy_form.gbapal \ + $(CASTFORMGFXDIR)/normal_snowy_form.gbapal @cat $^ >$@ $(CASTFORMGFXDIR)/shiny.gbapal: $(CASTFORMGFXDIR)/shiny_normal_form.gbapal \ - $(CASTFORMGFXDIR)/shiny_sunny_form.gbapal \ - $(CASTFORMGFXDIR)/shiny_rainy_form.gbapal \ - $(CASTFORMGFXDIR)/shiny_snowy_form.gbapal + $(CASTFORMGFXDIR)/shiny_sunny_form.gbapal \ + $(CASTFORMGFXDIR)/shiny_rainy_form.gbapal \ + $(CASTFORMGFXDIR)/shiny_snowy_form.gbapal @cat $^ >$@ @@ -357,38 +357,38 @@ $(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 29 $(BATINTGFXDIR)/textbox.gbapal: $(BATINTGFXDIR)/textbox_0.gbapal \ - $(BATINTGFXDIR)/textbox_1.gbapal + $(BATINTGFXDIR)/textbox_1.gbapal @cat $^ >$@ $(BTLANMSPRGFXDIR)/ice_cube.4bpp: $(BTLANMSPRGFXDIR)/ice_cube_0.4bpp \ - $(BTLANMSPRGFXDIR)/ice_cube_1.4bpp \ - $(BTLANMSPRGFXDIR)/ice_cube_2.4bpp \ - $(BTLANMSPRGFXDIR)/ice_cube_3.4bpp + $(BTLANMSPRGFXDIR)/ice_cube_1.4bpp \ + $(BTLANMSPRGFXDIR)/ice_cube_2.4bpp \ + $(BTLANMSPRGFXDIR)/ice_cube_3.4bpp @cat $^ >$@ $(UNUSEDGFXDIR)/obi_palpak1.gbapal: $(UNUSEDGFXDIR)/old_pal1.gbapal \ - $(UNUSEDGFXDIR)/old_pal2.gbapal \ - $(UNUSEDGFXDIR)/old_pal3.gbapal + $(UNUSEDGFXDIR)/old_pal2.gbapal \ + $(UNUSEDGFXDIR)/old_pal3.gbapal @cat $^ >$@ $(UNUSEDGFXDIR)/obi_palpak3.gbapal: $(UNUSEDGFXDIR)/old_pal5.gbapal \ - $(UNUSEDGFXDIR)/old_pal6.gbapal \ - $(UNUSEDGFXDIR)/old_pal7.gbapal + $(UNUSEDGFXDIR)/old_pal6.gbapal \ + $(UNUSEDGFXDIR)/old_pal7.gbapal @cat $^ >$@ $(UNUSEDGFXDIR)/obi1.4bpp: $(UNUSEDGFXDIR)/old_bulbasaur.4bpp \ - $(UNUSEDGFXDIR)/old_charizard.4bpp + $(UNUSEDGFXDIR)/old_charizard.4bpp @cat $^ >$@ $(UNUSEDGFXDIR)/obi2.4bpp: $(UNUSEDGFXDIR)/old_bulbasaur2.4bpp \ - $(UNUSEDGFXDIR)/old_battle_interface_1.4bpp \ - $(UNUSEDGFXDIR)/old_battle_interface_2.4bpp \ - $(UNUSEDGFXDIR)/old_battle_interface_3.4bpp + $(UNUSEDGFXDIR)/old_battle_interface_1.4bpp \ + $(UNUSEDGFXDIR)/old_battle_interface_2.4bpp \ + $(UNUSEDGFXDIR)/old_battle_interface_3.4bpp @cat $^ >$@ $(INTERFACEGFXDIR)/battle_bar.4bpp: $(INTERFACEGFXDIR)/hpbar_anim.4bpp \ - $(INTERFACEGFXDIR)/numbers1.4bpp \ - $(INTERFACEGFXDIR)/numbers2.4bpp + $(INTERFACEGFXDIR)/numbers1.4bpp \ + $(INTERFACEGFXDIR)/numbers2.4bpp @cat $^ >$@ $(UNUSEDGFXDIR)/redyellowgreen_frame.bin: $(UNUSEDGFXDIR)/red_frame.bin \ @@ -404,38 +404,38 @@ $(BATINTGFXDIR)/unused_window2bar.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 5 $(JPCONTESTGFXDIR)/composite_1.4bpp: $(JPCONTESTGFXDIR)/frame_1.4bpp \ - $(JPCONTESTGFXDIR)/floor.4bpp \ - $(JPCONTESTGFXDIR)/frame_2.4bpp \ - $(JPCONTESTGFXDIR)/symbols.4bpp \ - $(JPCONTESTGFXDIR)/meter.4bpp \ - $(JPCONTESTGFXDIR)/letters.4bpp \ - $(JPCONTESTGFXDIR)/numbers.4bpp + $(JPCONTESTGFXDIR)/floor.4bpp \ + $(JPCONTESTGFXDIR)/frame_2.4bpp \ + $(JPCONTESTGFXDIR)/symbols.4bpp \ + $(JPCONTESTGFXDIR)/meter.4bpp \ + $(JPCONTESTGFXDIR)/letters.4bpp \ + $(JPCONTESTGFXDIR)/numbers.4bpp @cat $^ >$@ $(JPCONTESTGFXDIR)/composite_2.4bpp: $(JPCONTESTGFXDIR)/interface.4bpp \ - $(JPCONTESTGFXDIR)/audience.4bpp + $(JPCONTESTGFXDIR)/audience.4bpp @cat $^ >$@ $(JPCONTESTGFXDIR)/voltage.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 36 $(BTLANMSPRGFXDIR)/ice_crystals.4bpp: $(BTLANMSPRGFXDIR)/ice_crystals_0.4bpp \ - $(BTLANMSPRGFXDIR)/ice_crystals_1.4bpp \ - $(BTLANMSPRGFXDIR)/ice_crystals_2.4bpp \ - $(BTLANMSPRGFXDIR)/ice_crystals_3.4bpp \ - $(BTLANMSPRGFXDIR)/ice_crystals_4.4bpp + $(BTLANMSPRGFXDIR)/ice_crystals_1.4bpp \ + $(BTLANMSPRGFXDIR)/ice_crystals_2.4bpp \ + $(BTLANMSPRGFXDIR)/ice_crystals_3.4bpp \ + $(BTLANMSPRGFXDIR)/ice_crystals_4.4bpp @cat $^ >$@ $(BTLANMSPRGFXDIR)/mud_sand.4bpp: $(BTLANMSPRGFXDIR)/mud_sand_0.4bpp \ - $(BTLANMSPRGFXDIR)/mud_sand_1.4bpp + $(BTLANMSPRGFXDIR)/mud_sand_1.4bpp @cat $^ >$@ $(BTLANMSPRGFXDIR)/flower.4bpp: $(BTLANMSPRGFXDIR)/flower_0.4bpp \ - $(BTLANMSPRGFXDIR)/flower_1.4bpp + $(BTLANMSPRGFXDIR)/flower_1.4bpp @cat $^ >$@ $(BTLANMSPRGFXDIR)/spark.4bpp: $(BTLANMSPRGFXDIR)/spark_0.4bpp \ - $(BTLANMSPRGFXDIR)/spark_1.4bpp + $(BTLANMSPRGFXDIR)/spark_1.4bpp @cat $^ >$@ $(MASKSGFXDIR)/unused_level_up.4bpp: %.4bpp: %.png @@ -451,8 +451,8 @@ $(TYPESGFXDIR)/move_types.4bpp: $(types:%=$(TYPESGFXDIR)/%.4bpp) $(contest_types @cat $^ >$@ $(TYPESGFXDIR)/move_types.gbapal: $(TYPESGFXDIR)/move_types_1.gbapal \ - $(TYPESGFXDIR)/move_types_2.gbapal \ - $(TYPESGFXDIR)/move_types_3.gbapal + $(TYPESGFXDIR)/move_types_2.gbapal \ + $(TYPESGFXDIR)/move_types_3.gbapal @cat $^ >$@ $(INTERFACEGFXDIR)/bag_screen.4bpp: %.4bpp: %.png @@ -481,13 +481,13 @@ graphics/picture_frame/lobby.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 86 $(ROULETTEGFXDIR)/roulette_tilt.4bpp: $(ROULETTEGFXDIR)/shroomish.4bpp \ - $(ROULETTEGFXDIR)/tailow.4bpp + $(ROULETTEGFXDIR)/tailow.4bpp @cat $^ >$@ $(ROULETTEGFXDIR)/wheel_icons.4bpp: $(ROULETTEGFXDIR)/wynaut.4bpp \ - $(ROULETTEGFXDIR)/azurill.4bpp \ - $(ROULETTEGFXDIR)/skitty.4bpp \ - $(ROULETTEGFXDIR)/makuhita.4bpp + $(ROULETTEGFXDIR)/azurill.4bpp \ + $(ROULETTEGFXDIR)/skitty.4bpp \ + $(ROULETTEGFXDIR)/makuhita.4bpp @cat $^ >$@ $(BATTRANSGFXDIR)/regis.4bpp: %.4bpp: %.png @@ -497,23 +497,23 @@ $(BATTRANSGFXDIR)/rayquaza.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 938 $(BATTRANSGFXDIR)/frontier_square_1.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ - $(BATTRANSGFXDIR)/frontier_squares_1.4bpp + $(BATTRANSGFXDIR)/frontier_squares_1.4bpp @cat $^ >$@ $(BATTRANSGFXDIR)/frontier_square_2.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ - $(BATTRANSGFXDIR)/frontier_squares_2.4bpp + $(BATTRANSGFXDIR)/frontier_squares_2.4bpp @cat $^ >$@ $(BATTRANSGFXDIR)/frontier_square_3.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ - $(BATTRANSGFXDIR)/frontier_squares_3.4bpp + $(BATTRANSGFXDIR)/frontier_squares_3.4bpp @cat $^ >$@ $(BATTRANSGFXDIR)/frontier_square_4.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ - $(BATTRANSGFXDIR)/frontier_squares_4.4bpp + $(BATTRANSGFXDIR)/frontier_squares_4.4bpp @cat $^ >$@ $(SLOTMACHINEGFXDIR)/reel_time_gfx.4bpp: $(SLOTMACHINEGFXDIR)/reel_time_pikachu.4bpp \ - $(SLOTMACHINEGFXDIR)/reel_time_machine.4bpp + $(SLOTMACHINEGFXDIR)/reel_time_machine.4bpp @cat $^ >$@ $(UNUSEDGFXDIR)/intro_birch_beauty.4bpp: %.4bpp: %.png @@ -693,18 +693,18 @@ $(BATTRANSGFXDIR)/frontier_logo_center.4bpp: %.4bpp: %.png ### Pokenav ### $(PKNAVOPTIONSGFXDIR)/options.4bpp: $(PKNAVOPTIONSGFXDIR)/hoenn_map.4bpp \ - $(PKNAVOPTIONSGFXDIR)/condition.4bpp \ - $(PKNAVOPTIONSGFXDIR)/match_call.4bpp \ - $(PKNAVOPTIONSGFXDIR)/ribbons.4bpp \ - $(PKNAVOPTIONSGFXDIR)/switch_off.4bpp \ - $(PKNAVOPTIONSGFXDIR)/party.4bpp \ - $(PKNAVOPTIONSGFXDIR)/search.4bpp \ - $(PKNAVOPTIONSGFXDIR)/cool.4bpp \ - $(PKNAVOPTIONSGFXDIR)/beauty.4bpp \ - $(PKNAVOPTIONSGFXDIR)/cute.4bpp \ - $(PKNAVOPTIONSGFXDIR)/smart.4bpp \ - $(PKNAVOPTIONSGFXDIR)/tough.4bpp \ - $(PKNAVOPTIONSGFXDIR)/cancel.4bpp + $(PKNAVOPTIONSGFXDIR)/condition.4bpp \ + $(PKNAVOPTIONSGFXDIR)/match_call.4bpp \ + $(PKNAVOPTIONSGFXDIR)/ribbons.4bpp \ + $(PKNAVOPTIONSGFXDIR)/switch_off.4bpp \ + $(PKNAVOPTIONSGFXDIR)/party.4bpp \ + $(PKNAVOPTIONSGFXDIR)/search.4bpp \ + $(PKNAVOPTIONSGFXDIR)/cool.4bpp \ + $(PKNAVOPTIONSGFXDIR)/beauty.4bpp \ + $(PKNAVOPTIONSGFXDIR)/cute.4bpp \ + $(PKNAVOPTIONSGFXDIR)/smart.4bpp \ + $(PKNAVOPTIONSGFXDIR)/tough.4bpp \ + $(PKNAVOPTIONSGFXDIR)/cancel.4bpp @cat $^ >$@ $(PKNAVGFXDIR)/header.4bpp: %.4bpp: %.png From 7f49f2633113175b78978bffe01000dcf1e858a8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 27 Oct 2021 22:38:48 -0400 Subject: [PATCH 345/762] Restore ModifyStatByNature bug notes --- src/pokemon.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index 6e3d37ae396c..0f943734b81c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5775,27 +5775,36 @@ u8 GetTrainerEncounterMusicId(u16 trainerOpponentId) return TRAINER_ENCOUNTER_MUSIC(trainerOpponentId); } -u16 ModifyStatByNature(u8 nature, u16 n, u8 statIndex) -{ +u16 ModifyStatByNature(u8 nature, u16 stat, u8 statIndex) +{ +// Because this is a u16 it will be unable to store the +// result of the multiplication for any stat > 595 for a +// positive nature and > 728 for a negative nature. +// Neither occur in the base game, but this can happen if +// any Nature-affected base stat is increased to a value +// above 248. The closest by default is Shuckle at 230. +#ifdef BUGFIX + u32 retVal; +#else u16 retVal; +#endif + // Don't modify HP, Accuracy, or Evasion by nature if (statIndex <= STAT_HP || statIndex > NUM_NATURE_STATS) - { - return n; - } + return stat; switch (gNatureStatTable[nature][statIndex - 1]) { case 1: - retVal = n * 110; + retVal = stat * 110; retVal /= 100; break; case -1: - retVal = n * 90; + retVal = stat * 90; retVal /= 100; break; default: - retVal = n; + retVal = stat; break; } From 07bf225f9416b3d75fb69101d1d5ec87a19031b6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 27 Oct 2021 16:17:27 -0400 Subject: [PATCH 346/762] Continue battle_transition documenting --- data/field_effect_scripts.s | 6 +- .../{85BDB14.pal => unused.pal} | 0 include/battle_transition.h | 12 +- include/constants/field_effects.h | 4 +- src/battle_setup.c | 12 +- src/battle_transition.c | 2211 ++++++++++------- 6 files changed, 1297 insertions(+), 948 deletions(-) rename graphics/battle_transitions/{85BDB14.pal => unused.pal} (100%) diff --git a/data/field_effect_scripts.s b/data/field_effect_scripts.s index 1c97da8fe4a7..49fcf798b681 100644 --- a/data/field_effect_scripts.s +++ b/data/field_effect_scripts.s @@ -50,7 +50,7 @@ gFieldEffectScriptPointers:: .4byte gFieldEffectScript_HotSpringsWater @ FLDEFF_HOT_SPRINGS_WATER .4byte gFieldEffectScript_UseWaterfall @ FLDEFF_USE_WATERFALL .4byte gFieldEffectScript_UseDive @ FLDEFF_USE_DIVE - .4byte gFieldEffectScript_Pokeball @ FLDEFF_POKEBALL + .4byte gFieldEffectScript_PokeballTrail @ FLDEFF_POKEBALL_TRAIL .4byte gFieldEffectScript_HeartIcon @ FLDEFF_HEART_ICON .4byte gFieldEffectScript_Nop47 @ FLDEFF_NOP_47 .4byte gFieldEffectScript_Nop48 @ FLDEFF_NOP_48 @@ -254,9 +254,9 @@ gFieldEffectScript_UseDive:: field_eff_callnative FldEff_UseDive field_eff_end -gFieldEffectScript_Pokeball:: +gFieldEffectScript_PokeballTrail:: field_eff_loadpal gSpritePalette_Pokeball - field_eff_callnative FldEff_Pokeball + field_eff_callnative FldEff_PokeballTrail field_eff_end gFieldEffectScript_HeartIcon:: diff --git a/graphics/battle_transitions/85BDB14.pal b/graphics/battle_transitions/unused.pal similarity index 100% rename from graphics/battle_transitions/85BDB14.pal rename to graphics/battle_transitions/unused.pal diff --git a/include/battle_transition.h b/include/battle_transition.h index e978e9094cf5..1e7339fa2f88 100644 --- a/include/battle_transition.h +++ b/include/battle_transition.h @@ -4,7 +4,7 @@ void BattleTransition_StartOnField(u8 transitionId); void BattleTransition_Start(u8 transitionId); bool8 IsBattleTransitionDone(void); -bool8 FldEff_Pokeball(void); +bool8 FldEff_PokeballTrail(void); void Task_BattleTransition_Intro(u8 taskId); void GetBg0TilesDst(u16 **tilemap, u16 **tileset); @@ -25,13 +25,13 @@ enum { B_TRANSITION_SHUFFLE, B_TRANSITION_BIG_POKEBALL, B_TRANSITION_POKEBALLS_TRAIL, - B_TRANSITION_CLOCKWISE_BLACKFADE, + B_TRANSITION_CLOCKWISE_WIPE, B_TRANSITION_RIPPLE, B_TRANSITION_WAVE, B_TRANSITION_SLICE, - B_TRANSITION_WHITEFADE, + B_TRANSITION_WHITE_BARS_FADE, B_TRANSITION_GRID_SQUARES, - B_TRANSITION_SHARDS, + B_TRANSITION_ANGLED_WIPES, B_TRANSITION_SIDNEY, B_TRANSITION_PHOEBE, B_TRANSITION_GLACIA, @@ -46,8 +46,8 @@ enum { B_TRANSITION_GROUDON, B_TRANSITION_RAYQUAZA, B_TRANSITION_SHRED_SPLIT, - B_TRANSITION_BLACKHOLE1, - B_TRANSITION_BLACKHOLE2, + B_TRANSITION_BLACKHOLE, + B_TRANSITION_BLACKHOLE_PULSATE, B_TRANSITION_RECTANGULAR_SPIRAL, B_TRANSITION_FRONTIER_LOGO_WIGGLE, B_TRANSITION_FRONTIER_LOGO_WAVE, diff --git a/include/constants/field_effects.h b/include/constants/field_effects.h index e02e01efbf5b..a620409479ae 100644 --- a/include/constants/field_effects.h +++ b/include/constants/field_effects.h @@ -46,7 +46,7 @@ #define FLDEFF_HOT_SPRINGS_WATER 42 #define FLDEFF_USE_WATERFALL 43 #define FLDEFF_USE_DIVE 44 -#define FLDEFF_POKEBALL 45 +#define FLDEFF_POKEBALL_TRAIL 45 #define FLDEFF_HEART_ICON 46 #define FLDEFF_NOP_47 47 #define FLDEFF_NOP_48 48 @@ -113,7 +113,7 @@ #define FLDEFF_PAL_TAG_GENERAL_1 0x1005 #define FLDEFF_PAL_TAG_POKEBALL_GLOW 0x1007 #define FLDEFF_PAL_TAG_SECRET_POWER_PLANT 0x1008 -#define FLDEFF_PAL_TAG_POKEBALL 0x1009 +#define FLDEFF_PAL_TAG_POKEBALL_TRAIL 0x1009 #define FLDEFF_PAL_TAG_ASH 0x100D #define FLDEFF_PAL_TAG_SAND_PILLAR 0x100E #define FLDEFF_PAL_TAG_SMALL_SPARKLE 0x100F diff --git a/src/battle_setup.c b/src/battle_setup.c index 6a4afe7462da..b9833d20aead 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -112,15 +112,15 @@ EWRAM_DATA static u8 sNoOfPossibleTrainerRetScripts = 0; // Otherwise, the second transition is used. static const u8 sBattleTransitionTable_Wild[][2] = { - [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_SLICE, B_TRANSITION_WHITEFADE}, - [TRANSITION_TYPE_CAVE] = {B_TRANSITION_CLOCKWISE_BLACKFADE, B_TRANSITION_GRID_SQUARES}, - [TRANSITION_TYPE_FLASH] = {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, - [TRANSITION_TYPE_WATER] = {B_TRANSITION_WAVE, B_TRANSITION_RIPPLE}, + [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_SLICE, B_TRANSITION_WHITE_BARS_FADE}, + [TRANSITION_TYPE_CAVE] = {B_TRANSITION_CLOCKWISE_WIPE, B_TRANSITION_GRID_SQUARES}, + [TRANSITION_TYPE_FLASH] = {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, + [TRANSITION_TYPE_WATER] = {B_TRANSITION_WAVE, B_TRANSITION_RIPPLE}, }; static const u8 sBattleTransitionTable_Trainer[][2] = { - [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_POKEBALLS_TRAIL, B_TRANSITION_SHARDS}, + [TRANSITION_TYPE_NORMAL] = {B_TRANSITION_POKEBALLS_TRAIL, B_TRANSITION_ANGLED_WIPES}, [TRANSITION_TYPE_CAVE] = {B_TRANSITION_SHUFFLE, B_TRANSITION_BIG_POKEBALL}, [TRANSITION_TYPE_FLASH] = {B_TRANSITION_BLUR, B_TRANSITION_GRID_SQUARES}, [TRANSITION_TYPE_WATER] = {B_TRANSITION_SWIRL, B_TRANSITION_RIPPLE}, @@ -555,7 +555,7 @@ void StartGroudonKyogreBattle(void) gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_KYOGRE_GROUDON; if (gGameVersion == VERSION_RUBY) - CreateBattleStartTask(B_TRANSITION_SHARDS, MUS_VS_KYOGRE_GROUDON); // GROUDON + CreateBattleStartTask(B_TRANSITION_ANGLED_WIPES, MUS_VS_KYOGRE_GROUDON); // GROUDON else CreateBattleStartTask(B_TRANSITION_RIPPLE, MUS_VS_KYOGRE_GROUDON); // KYOGRE diff --git a/src/battle_transition.c b/src/battle_transition.c index 72edf92d5c78..88194db2724b 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -29,10 +29,27 @@ #define B_TRANS_DMA_FLAGS (1 | ((DMA_SRC_INC | DMA_DEST_FIXED | DMA_REPEAT | DMA_16BIT | DMA_START_HBLANK | DMA_ENABLE) << 16)) -#define SET_TILEMAP_TILE(ptr, posY, posX, toStore) \ -{ \ - u32 index = (posY) * 32 + posX; \ - ptr[index] = toStore; \ +// Used by each transition task to determine which of its functions to call +#define tState data[0] + +// Below are data defines for InitBlackWipe and UpdateBlackWipe, for the TransitionData data array. +// These will be re-used by any transitions that use these functions. +#define tWipeStartX data[0] +#define tWipeStartY data[1] +#define tWipeCurrX data[2] +#define tWipeCurrY data[3] +#define tWipeEndX data[4] +#define tWipeEndY data[5] +#define tWipeXMove data[6] +#define tWipeYMove data[7] +#define tWipeXDist data[8] +#define tWipeYDist data[9] +#define tWipeTemp data[10] + +#define SET_TILE(ptr, posY, posX, tile) \ +{ \ + u32 index = (posY) * 32 + posX; \ + ptr[index] = tile | (0xF0 << 8); \ } struct TransitionData @@ -53,17 +70,17 @@ struct TransitionData s16 BG0HOFS_Upper; s16 BG0VOFS; // used but not set s16 unused3; - s16 field_20; + s16 counter; s16 unused4; s16 data[11]; }; -struct StructRectangularSpiral +struct RectangularSpiralLine { - u8 field_0; - s16 field_2; - u8 field_4; - s16 field_6; + u8 state; + s16 position; + u8 moveIdx; + s16 skipPosition; u8 field_8; }; @@ -83,13 +100,13 @@ static void Task_Swirl(u8 taskId); static void Task_Shuffle(u8 taskId); static void Task_BigPokeball(u8 taskId); static void Task_PokeballsTrail(u8 taskId); -static void Task_Clockwise_BlackFade(u8 taskId); +static void Task_ClockwiseWipe(u8 taskId); static void Task_Ripple(u8 taskId); static void Task_Wave(u8 taskId); static void Task_Slice(u8 taskId); -static void Task_WhiteFade(u8 taskId); +static void Task_WhiteBarsFade(u8 taskId); static void Task_GridSquares(u8 taskId); -static void Task_Shards(u8 taskId); +static void Task_AngledWipes(u8 taskId); static void Task_Sidney(u8 taskId); static void Task_Phoebe(u8 taskId); static void Task_Glacia(u8 taskId); @@ -104,8 +121,8 @@ static void Task_Kyogre(u8 taskId); static void Task_Groudon(u8 taskId); static void Task_Rayquaza(u8 taskId); static void Task_ShredSplit(u8 taskId); -static void Task_Blackhole1(u8 taskId); -static void Task_Blackhole2(u8 taskId); +static void Task_Blackhole(u8 taskId); +static void Task_BlackholePulsate(u8 taskId); static void Task_RectangularSpiral(u8 taskId); static void Task_FrontierLogoWiggle(u8 taskId); static void Task_FrontierLogoWave(u8 taskId); @@ -118,8 +135,8 @@ static void HBlankCB_Swirl(void); static void VBlankCB_Shuffle(void); static void HBlankCB_Shuffle(void); static void VBlankCB_PatternWeave(void); -static void VBlankCB1_BigPokeball(void); -static void VBlankCB_Clockwise_BlackFade(void); +static void VBlankCB_CircularMask(void); +static void VBlankCB_ClockwiseWipe(void); static void VBlankCB_Ripple(void); static void HBlankCB_Ripple(void); static void VBlankCB_FrontierLogoWave(void); @@ -127,10 +144,10 @@ static void HBlankCB_FrontierLogoWave(void); static void VBlankCB_Wave(void); static void VBlankCB_Slice(void); static void HBlankCB_Slice(void); -static void VBlankCB0_WhiteFade(void); -static void VBlankCB1_WhiteFade(void); -static void HBlankCB_WhiteFade(void); -static void VBlankCB_Shards(void); +static void VBlankCB_WhiteBarsFade(void); +static void VBlankCB_WhiteBarsFade_Blend(void); +static void HBlankCB_WhiteBarsFade(void); +static void VBlankCB_AngledWipes(void); static void VBlankCB_Rayquaza(void); static bool8 Blur_Init(struct Task *task); static bool8 Blur_Main(struct Task *task); @@ -151,60 +168,60 @@ static bool8 Regirock_SetGfx(struct Task *task); static bool8 WeatherTrio_BgFadeBlack(struct Task *task); static bool8 WeatherTrio_WaitFade(struct Task *task); static bool8 Kyogre_Init(struct Task *task); -static bool8 Kyogre_PalettePulsate(struct Task *task); +static bool8 Kyogre_PaletteFlash(struct Task *task); static bool8 Kyogre_PaletteBrighten(struct Task *task); static bool8 Groudon_Init(struct Task *task); -static bool8 Groudon_PalettePulsate(struct Task *task); +static bool8 Groudon_PaletteFlash(struct Task *task); static bool8 Groudon_PaletteBrighten(struct Task *task); static bool8 WeatherDuo_FadeOut(struct Task *task); static bool8 WeatherDuo_End(struct Task *task); static bool8 BigPokeball_Init(struct Task *task); static bool8 BigPokeball_SetGfx(struct Task *task); -static bool8 PatternWeave_1(struct Task *task); -static bool8 PatternWeave_2(struct Task *task); -static bool8 PatternWeave_3(struct Task *task); -static bool8 PatternWeave_End(struct Task *task); +static bool8 PatternWeave_Blend1(struct Task *task); +static bool8 PatternWeave_Blend2(struct Task *task); +static bool8 PatternWeave_FinishAppear(struct Task *task); +static bool8 PatternWeave_CircularMask(struct Task *task); static bool8 PokeballsTrail_Init(struct Task *task); static bool8 PokeballsTrail_Main(struct Task *task); static bool8 PokeballsTrail_End(struct Task *task); -static bool8 Clockwise_BlackFade_Init(struct Task *task); -static bool8 Clockwise_BlackFade_Func2(struct Task *task); -static bool8 Clockwise_BlackFade_Func3(struct Task *task); -static bool8 Clockwise_BlackFade_Func4(struct Task *task); -static bool8 Clockwise_BlackFade_Func5(struct Task *task); -static bool8 Clockwise_BlackFade_Func6(struct Task *task); -static bool8 Clockwise_BlackFade_End(struct Task *task); +static bool8 ClockwiseWipe_Init(struct Task *task); +static bool8 ClockwiseWipe_TopRight(struct Task *task); +static bool8 ClockwiseWipe_Right(struct Task *task); +static bool8 ClockwiseWipe_Bottom(struct Task *task); +static bool8 ClockwiseWipe_Left(struct Task *task); +static bool8 ClockwiseWipe_TopLeft(struct Task *task); +static bool8 ClockwiseWipe_End(struct Task *task); static bool8 Ripple_Init(struct Task *task); -static bool8 Ripple_Func2(struct Task *task); +static bool8 Ripple_Main(struct Task *task); static bool8 Wave_Init(struct Task *task); -static bool8 Wave_Func2(struct Task *task); +static bool8 Wave_Main(struct Task *task); static bool8 Wave_End(struct Task *task); static bool8 Slice_Init(struct Task *task); -static bool8 Slice_Func2(struct Task *task); +static bool8 Slice_Main(struct Task *task); static bool8 Slice_End(struct Task *task); -static bool8 WhiteFade_Init(struct Task *task); -static bool8 WhiteFade_Func2(struct Task *task); -static bool8 WhiteFade_Func3(struct Task *task); -static bool8 WhiteFade_Func4(struct Task *task); -static bool8 WhiteFade_End(struct Task *task); +static bool8 WhiteBarsFade_Init(struct Task *task); +static bool8 WhiteBarsFade_StartBars(struct Task *task); +static bool8 WhiteBarsFade_WaitBars(struct Task *task); +static bool8 WhiteBarsFade_BlendToBlack(struct Task *task); +static bool8 WhiteBarsFade_End(struct Task *task); static bool8 GridSquares_Init(struct Task *task); -static bool8 GridSquares_Func2(struct Task *task); +static bool8 GridSquares_Main(struct Task *task); static bool8 GridSquares_End(struct Task *task); -static bool8 Shards_Init(struct Task *task); -static bool8 Shards_Func2(struct Task *task); -static bool8 Shards_Func3(struct Task *task); -static bool8 Shards_Func4(struct Task *task); -static bool8 Shards_Func5(struct Task *task); +static bool8 AngledWipes_Init(struct Task *task); +static bool8 AngledWipes_SetWipeData(struct Task *task); +static bool8 AngledWipes_DoWipe(struct Task *task); +static bool8 AngledWipes_TryEnd(struct Task *task); +static bool8 AngledWipes_StartNext(struct Task *task); static bool8 ShredSplit_Init(struct Task *task); -static bool8 ShredSplit_Func2(struct Task *task); -static bool8 ShredSplit_Func3(struct Task *task); +static bool8 ShredSplit_Main(struct Task *task); +static bool8 ShredSplit_BrokenCheck(struct Task *task); static bool8 ShredSplit_End(struct Task *task); static bool8 Blackhole_Init(struct Task *task); -static bool8 Blackhole1_Func2(struct Task *task); -static bool8 Blackhole1_Func3(struct Task *task); -static bool8 Blackhole2_Func2(struct Task *task); +static bool8 Blackhole_Vibrate(struct Task *task); +static bool8 Blackhole_GrowEnd(struct Task *task); +static bool8 BlackholePulsate_Main(struct Task *task); static bool8 RectangularSpiral_Init(struct Task *task); -static bool8 RectangularSpiral_Func2(struct Task *task); +static bool8 RectangularSpiral_Main(struct Task *task); static bool8 RectangularSpiral_End(struct Task *task); static bool8 FrontierLogoWiggle_Init(struct Task *task); static bool8 FrontierLogoWiggle_SetGfx(struct Task *task); @@ -212,16 +229,16 @@ static bool8 FrontierLogoWave_Init(struct Task *task); static bool8 FrontierLogoWave_SetGfx(struct Task *task); static bool8 FrontierLogoWave_Func3(struct Task *task); static bool8 FrontierLogoWave_Func4(struct Task *task); -static bool8 Rayquaza_Func3(struct Task *task); -static bool8 Rayquaza_Func4(struct Task *task); -static bool8 Rayquaza_Func5(struct Task *task); -static bool8 Rayquaza_Func6(struct Task *task); -static bool8 Rayquaza_Func7(struct Task *task); -static bool8 Rayquaza_Func8(struct Task *task); -static bool8 Rayquaza_Func9(struct Task *task); +static bool8 Rayquaza_Init(struct Task *task); +static bool8 Rayquaza_SetGfx(struct Task *task); +static bool8 Rayquaza_PaletteFlash(struct Task *task); +static bool8 Rayquaza_FadeToBlack(struct Task *task); +static bool8 Rayquaza_WaitFade(struct Task *task); +static bool8 Rayquaza_SetBlack(struct Task *task); +static bool8 Rayquaza_TriRing(struct Task *task); static bool8 FrontierSquares_Init(struct Task *task); -static bool8 FrontierSquares_Func2(struct Task *task); -static bool8 FrontierSquares_Func3(struct Task *task); +static bool8 FrontierSquares_Draw(struct Task *task); +static bool8 FrontierSquares_Shrink(struct Task *task); static bool8 FrontierSquares_End(struct Task *task); static bool8 FrontierSquaresSpiral_Init(struct Task *task); static bool8 FrontierSquaresSpiral_Func2(struct Task *task); @@ -244,37 +261,37 @@ static bool8 Mugshot_FadeToBlack(struct Task *task); static bool8 Mugshot_End(struct Task *task); static void DoMugshotTransition(u8 taskId); static void Mugshots_CreateTrainerPics(struct Task *task); -static void VBlankCB0_Mugshots(void); -static void VBlankCB1_Mugshots(void); +static void VBlankCB_Mugshots(void); +static void VBlankCB_MugshotsFadeOut(void); static void HBlankCB_Mugshots(void); static void InitTransitionData(void); static void FadeScreenBlack(void); static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4); -static void sub_814A014(u16 *a0, s16 a1, s16 a2, s16 a3); +static void SetCircularMask(u16 *a0, s16 a1, s16 a2, s16 a3); static void SetSinWave(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize); static void GetBg0TilemapDst(u16 **tileset); -static void sub_814A1AC(s16 *a0, s16 a1, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6); -static bool8 sub_814A228(s16 *a0, bool8 a1, bool8 a2); -static void SetTrainerPicSlideTable(s16 spriteId, s16 arrId); +static void InitBlackWipe(s16 *a0, s16 a1, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6); +static bool8 UpdateBlackWipe(s16 *a0, bool8 a1, bool8 a2); +static void SetTrainerPicSlideDirection(s16 spriteId, s16 arrId); static void IncrementTrainerPicState(s16 spriteId); static s16 IsTrainerPicSlideDone(s16 spriteId); -static bool8 Transition_Intro_1(struct Task *task); -static bool8 Transition_Intro_2(struct Task *task); +static bool8 TransitionIntro_FadeToGray(struct Task *task); +static bool8 TransitionIntro_FadeFromGray(struct Task *task); static bool8 IsIntroTaskDone(void); -static bool16 sub_8149048(const s16 * const *arg0, struct StructRectangularSpiral *arg1); -static void SpriteCB_FldEffPokeball(struct Sprite *sprite); +static bool16 UpdateRectangularSpiralLine(const s16 * const *arg0, struct RectangularSpiralLine *arg1); +static void SpriteCB_FldEffPokeballTrail(struct Sprite *sprite); static void SpriteCB_MugshotTrainerPic(struct Sprite *sprite); -static void sub_8149864(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Nothing(struct Sprite *sprite); -static bool8 MugshotTrainerPic_SetSlideOffsets(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Slide1(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Slide2(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Slide3(struct Sprite *sprite); - -static s16 sUnusedRectangularSpiralVar; +static void SpriteCB_WhiteBarFade(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Pause(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Init(struct Sprite *sprite); +static bool8 MugshotTrainerPic_Slide(struct Sprite *sprite); +static bool8 MugshotTrainerPic_SlideSlow(struct Sprite *sprite); +static bool8 MugshotTrainerPic_SlideOffscreen(struct Sprite *sprite); + +static s16 sDebug_RectangularSpiralData; static u8 sTestingTransitionId; static u8 sTestingTransitionState; -static struct StructRectangularSpiral sRectangularSpiralTransition[4]; +static struct RectangularSpiralLine sRectangularSpiralLines[4]; EWRAM_DATA static struct TransitionData *sTransitionData = NULL; @@ -297,7 +314,7 @@ static const u16 sRegirock_Palette[] = INCBIN_U16("graphics/battle_transitions/r static const u32 sRegice_Tilemap[] = INCBIN_U32("graphics/battle_transitions/regice.bin"); static const u32 sRegisteel_Tilemap[] = INCBIN_U32("graphics/battle_transitions/registeel.bin"); static const u32 sRegirock_Tilemap[] = INCBIN_U32("graphics/battle_transitions/regirock.bin"); -static const u16 gUnknown_085BDB14[] = INCBIN_U16("graphics/battle_transitions/85BDB14.gbapal"); +static const u16 sUnused_Palette[] = INCBIN_U16("graphics/battle_transitions/unused.gbapal"); static const u32 sKyogre_Tileset[] = INCBIN_U32("graphics/battle_transitions/kyogre.4bpp.lz"); static const u32 sKyogre_Tilemap[] = INCBIN_U32("graphics/battle_transitions/kyogre.bin.lz"); static const u32 sGroudon_Tileset[] = INCBIN_U32("graphics/battle_transitions/groudon.4bpp.lz"); @@ -334,13 +351,13 @@ static const TaskFunc sTasks_Main[B_TRANSITION_COUNT] = [B_TRANSITION_SHUFFLE] = Task_Shuffle, [B_TRANSITION_BIG_POKEBALL] = Task_BigPokeball, [B_TRANSITION_POKEBALLS_TRAIL] = Task_PokeballsTrail, - [B_TRANSITION_CLOCKWISE_BLACKFADE] = Task_Clockwise_BlackFade, + [B_TRANSITION_CLOCKWISE_WIPE] = Task_ClockwiseWipe, [B_TRANSITION_RIPPLE] = Task_Ripple, [B_TRANSITION_WAVE] = Task_Wave, [B_TRANSITION_SLICE] = Task_Slice, - [B_TRANSITION_WHITEFADE] = Task_WhiteFade, + [B_TRANSITION_WHITE_BARS_FADE] = Task_WhiteBarsFade, [B_TRANSITION_GRID_SQUARES] = Task_GridSquares, - [B_TRANSITION_SHARDS] = Task_Shards, + [B_TRANSITION_ANGLED_WIPES] = Task_AngledWipes, [B_TRANSITION_SIDNEY] = Task_Sidney, [B_TRANSITION_PHOEBE] = Task_Phoebe, [B_TRANSITION_GLACIA] = Task_Glacia, @@ -355,8 +372,8 @@ static const TaskFunc sTasks_Main[B_TRANSITION_COUNT] = [B_TRANSITION_GROUDON] = Task_Groudon, [B_TRANSITION_RAYQUAZA] = Task_Rayquaza, [B_TRANSITION_SHRED_SPLIT] = Task_ShredSplit, - [B_TRANSITION_BLACKHOLE1] = Task_Blackhole1, - [B_TRANSITION_BLACKHOLE2] = Task_Blackhole2, + [B_TRANSITION_BLACKHOLE] = Task_Blackhole, + [B_TRANSITION_BLACKHOLE_PULSATE] = Task_BlackholePulsate, [B_TRANSITION_RECTANGULAR_SPIRAL] = Task_RectangularSpiral, [B_TRANSITION_FRONTIER_LOGO_WIGGLE] = Task_FrontierLogoWiggle, [B_TRANSITION_FRONTIER_LOGO_WAVE] = Task_FrontierLogoWave, @@ -404,62 +421,62 @@ static const TransitionStateFunc sAqua_Funcs[] = { Aqua_Init, Aqua_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, FramesCountdown, - PatternWeave_End + PatternWeave_CircularMask }; static const TransitionStateFunc sMagma_Funcs[] = { Magma_Init, Magma_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, FramesCountdown, - PatternWeave_End + PatternWeave_CircularMask }; static const TransitionStateFunc sBigPokeball_Funcs[] = { BigPokeball_Init, BigPokeball_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, - PatternWeave_End + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, + PatternWeave_CircularMask }; static const TransitionStateFunc sRegice_Funcs[] = { Regi_Init, Regice_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, - PatternWeave_End + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, + PatternWeave_CircularMask }; static const TransitionStateFunc sRegisteel_Funcs[] = { Regi_Init, Registeel_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, - PatternWeave_End + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, + PatternWeave_CircularMask }; static const TransitionStateFunc sRegirock_Funcs[] = { Regi_Init, Regirock_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, - PatternWeave_End + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, + PatternWeave_CircularMask }; static const TransitionStateFunc sKyogre_Funcs[] = @@ -467,7 +484,7 @@ static const TransitionStateFunc sKyogre_Funcs[] = WeatherTrio_BgFadeBlack, WeatherTrio_WaitFade, Kyogre_Init, - Kyogre_PalettePulsate, + Kyogre_PaletteFlash, Kyogre_PaletteBrighten, FramesCountdown, WeatherDuo_FadeOut, @@ -481,31 +498,32 @@ static const TransitionStateFunc sPokeballsTrail_Funcs[] = PokeballsTrail_End }; -static const s16 sUnknown_085C8B88[2] = {-16, 256}; -static const s16 sUnknown_085C8B8C[5] = {0, 32, 64, 18, 48}; -static const s16 sUnknown_085C8B96[2] = {8, -8}; +#define NUM_POKEBALL_TRAILS 5 +static const s16 sPokeballsTrail_StartXCoords[2] = { -16, DISPLAY_WIDTH + 16 }; +static const s16 sPokeballsTrail_Delays[NUM_POKEBALL_TRAILS] = {0, 32, 64, 18, 48}; +static const s16 sPokeballsTrail_Speeds[2] = {8, -8}; -static const TransitionStateFunc sClockwise_BlackFade_Funcs[] = +static const TransitionStateFunc sClockwiseWipe_Funcs[] = { - Clockwise_BlackFade_Init, - Clockwise_BlackFade_Func2, - Clockwise_BlackFade_Func3, - Clockwise_BlackFade_Func4, - Clockwise_BlackFade_Func5, - Clockwise_BlackFade_Func6, - Clockwise_BlackFade_End + ClockwiseWipe_Init, + ClockwiseWipe_TopRight, + ClockwiseWipe_Right, + ClockwiseWipe_Bottom, + ClockwiseWipe_Left, + ClockwiseWipe_TopLeft, + ClockwiseWipe_End }; static const TransitionStateFunc sRipple_Funcs[] = { Ripple_Init, - Ripple_Func2 + Ripple_Main }; static const TransitionStateFunc sWave_Funcs[] = { Wave_Init, - Wave_Func2, + Wave_Main, Wave_End }; @@ -550,76 +568,87 @@ static const s16 sMugshotsOpponentCoords[MUGSHOTS_COUNT][2] = static const TransitionSpriteCallback sMugshotTrainerPicFuncs[] = { - MugshotTrainerPic_Nothing, - MugshotTrainerPic_SetSlideOffsets, - MugshotTrainerPic_Slide1, - MugshotTrainerPic_Slide2, - MugshotTrainerPic_Nothing, - MugshotTrainerPic_Slide3, - MugshotTrainerPic_Nothing + MugshotTrainerPic_Pause, + MugshotTrainerPic_Init, + MugshotTrainerPic_Slide, + MugshotTrainerPic_SlideSlow, + MugshotTrainerPic_Pause, + MugshotTrainerPic_SlideOffscreen, + MugshotTrainerPic_Pause }; -static const s16 sTrainerPicSlideOffsets1[2] = {12, -12}; -static const s16 sTrainerPicSlideOffsets2[2] = {-1, 1}; +// One element per slide direction. +// Sign of acceleration is opposite speed, so slide decelerates. +static const s16 sTrainerPicSlideSpeeds[2] = {12, -12}; +static const s16 sTrainerPicSlideAccels[2] = {-1, 1}; static const TransitionStateFunc sSlice_Funcs[] = { Slice_Init, - Slice_Func2, + Slice_Main, Slice_End }; static const TransitionStateFunc sShredSplit_Funcs[] = { ShredSplit_Init, - ShredSplit_Func2, - ShredSplit_Func3, + ShredSplit_Main, + ShredSplit_BrokenCheck, ShredSplit_End }; -static const u8 gUnknown_085C8C64[] = {39, 119}; -static const s16 gUnknown_085C8C66[] = {1, -1}; +static const u8 sShredSplit_SectionYCoords[] = {39, DISPLAY_HEIGHT - 41}; +static const s16 sShredSplit_SectionMoveDirs[] = {1, -1}; -static const TransitionStateFunc sBlackhole1_Funcs[] = +static const TransitionStateFunc sBlackhole_Funcs[] = { Blackhole_Init, - Blackhole1_Func2, - Blackhole1_Func3 + Blackhole_Vibrate, + Blackhole_GrowEnd }; -static const TransitionStateFunc sBlackhole2_Funcs[] = +static const TransitionStateFunc sBlackholePulsate_Funcs[] = { Blackhole_Init, - Blackhole2_Func2 + BlackholePulsate_Main }; -static const s16 gUnknown_085C8C80[] = {-6, 4}; +// Blackhole rapidly alternates adding these values to the radius, +// resulting in a vibrating shrink/grow effect. +static const s16 sBlackhole_Vibrations[] = {-6, 4}; static const TransitionStateFunc sRectangularSpiral_Funcs[] = { RectangularSpiral_Init, - RectangularSpiral_Func2, + RectangularSpiral_Main, RectangularSpiral_End }; -static const s16 gUnknown_085C8C90[] = {1, 27, 275, -1}; -static const s16 gUnknown_085C8C98[] = {2, 486, -1}; -static const s16 gUnknown_085C8C9E[] = {3, 262, -1}; -static const s16 gUnknown_085C8CA4[] = {4, 507, -2}; -static const s16 gUnknown_085C8CAA[] = {1, 213, -1}; -static const s16 gUnknown_085C8CB0[] = {2, 548, -2}; -static const s16 gUnknown_085C8CB6[] = {3, 196, -1}; -static const s16 gUnknown_085C8CBC[] = {4, 573, 309, -1}; -static const s16 gUnknown_085C8CC4[] = {1, 474, -1}; -static const s16 gUnknown_085C8CCA[] = {2, 295, 32, -1}; -static const s16 gUnknown_085C8CD2[] = {3, 58, -1}; -static const s16 gUnknown_085C8CD8[] = {4, 455, -1}; -static const s16 gUnknown_085C8CDE[] = {1, 540, -1}; -static const s16 gUnknown_085C8CE4[] = {2, 229, -1}; -static const s16 gUnknown_085C8CEA[] = {3, 244, 28, -1}; -static const s16 gUnknown_085C8CF2[] = {4, 517, -1}; - -static const s16 *const gUnknown_085C8CF8[] = +#define SPIRAL_END (-1) +#define SPIRAL_SKIP (-2) + +static const s16 gUnknown_085C8C90[] = {1, 27, 275, SPIRAL_END}; +static const s16 gUnknown_085C8C98[] = {2, 486, SPIRAL_END}; +static const s16 gUnknown_085C8C9E[] = {3, 262, SPIRAL_END}; +static const s16 gUnknown_085C8CA4[] = {4, 507, SPIRAL_SKIP}; + +static const s16 gUnknown_085C8CAA[] = {1, 213, SPIRAL_END}; +static const s16 gUnknown_085C8CB0[] = {2, 548, SPIRAL_SKIP}; +static const s16 gUnknown_085C8CB6[] = {3, 196, SPIRAL_END}; +static const s16 gUnknown_085C8CBC[] = {4, 573, 309, SPIRAL_END}; + +static const s16 gUnknown_085C8CC4[] = {1, 474, SPIRAL_END}; +static const s16 gUnknown_085C8CCA[] = {2, 295, 32, SPIRAL_END}; +static const s16 gUnknown_085C8CD2[] = {3, 58, SPIRAL_END}; +static const s16 gUnknown_085C8CD8[] = {4, 455, SPIRAL_END}; + +static const s16 gUnknown_085C8CDE[] = {1, 540, SPIRAL_END}; +static const s16 gUnknown_085C8CE4[] = {2, 229, SPIRAL_END}; +static const s16 gUnknown_085C8CEA[] = {3, 244, 28, SPIRAL_END}; +static const s16 gUnknown_085C8CF2[] = {4, 517, SPIRAL_END}; + +// Move data for spiral lines starting in the top left / bottom right +static const s16 *const sRectangularSpiral_MoveDataTable_MajorDiagonal[] = { gUnknown_085C8C90, gUnknown_085C8CA4, @@ -631,7 +660,8 @@ static const s16 *const gUnknown_085C8CF8[] = gUnknown_085C8CDE }; -static const s16 *const gUnknown_085C8D18[] = +// Move data for spiral lines starting in the top right / bottom left +static const s16 *const sRectangularSpiral_MoveDataTable_MinorDiagonal[] = { gUnknown_085C8CBC, gUnknown_085C8CB0, @@ -643,10 +673,10 @@ static const s16 *const gUnknown_085C8D18[] = gUnknown_085C8CD2 }; -static const s16 *const *const gUnknown_085C8D38[] = +static const s16 *const *const sRectangularSpiral_MoveDataTables[] = { - gUnknown_085C8CF8, - gUnknown_085C8D18 + sRectangularSpiral_MoveDataTable_MajorDiagonal, + sRectangularSpiral_MoveDataTable_MinorDiagonal }; static const TransitionStateFunc sGroudon_Funcs[] = @@ -654,7 +684,7 @@ static const TransitionStateFunc sGroudon_Funcs[] = WeatherTrio_BgFadeBlack, WeatherTrio_WaitFade, Groudon_Init, - Groudon_PalettePulsate, + Groudon_PaletteFlash, Groudon_PaletteBrighten, FramesCountdown, WeatherDuo_FadeOut, @@ -665,61 +695,65 @@ static const TransitionStateFunc sRayquaza_Funcs[] = { WeatherTrio_BgFadeBlack, WeatherTrio_WaitFade, - Rayquaza_Func3, - Rayquaza_Func4, - Rayquaza_Func5, - Rayquaza_Func6, - Rayquaza_Func7, - Rayquaza_Func8, - Rayquaza_Func9, - Blackhole1_Func2, - Blackhole1_Func3 + Rayquaza_Init, + Rayquaza_SetGfx, + Rayquaza_PaletteFlash, + Rayquaza_FadeToBlack, + Rayquaza_WaitFade, + Rayquaza_SetBlack, + Rayquaza_TriRing, + Blackhole_Vibrate, + Blackhole_GrowEnd }; -static const TransitionStateFunc sWhiteFade_Funcs[] = +static const TransitionStateFunc sWhiteBarsFade_Funcs[] = { - WhiteFade_Init, - WhiteFade_Func2, - WhiteFade_Func3, - WhiteFade_Func4, - WhiteFade_End + WhiteBarsFade_Init, + WhiteBarsFade_StartBars, + WhiteBarsFade_WaitBars, + WhiteBarsFade_BlendToBlack, + WhiteBarsFade_End }; -static const s16 sUnknown_085C8DA0[] = {0, 20, 15, 40, 10, 25, 35, 5}; +#define NUM_WHITE_BARS 8 +static const s16 sWhiteBarsFade_StartDelays[NUM_WHITE_BARS] = {0, 20, 15, 40, 10, 25, 35, 5}; static const TransitionStateFunc sGridSquares_Funcs[] = { GridSquares_Init, - GridSquares_Func2, + GridSquares_Main, GridSquares_End }; -static const TransitionStateFunc sShards_Funcs[] = +static const TransitionStateFunc sAngledWipes_Funcs[] = { - Shards_Init, - Shards_Func2, - Shards_Func3, - Shards_Func4, - Shards_Func5 + AngledWipes_Init, + AngledWipes_SetWipeData, + AngledWipes_DoWipe, + AngledWipes_TryEnd, + AngledWipes_StartNext }; -static const s16 sUnknown_085C8DD0[][5] = +#define NUM_ANGLED_WIPES 7 + +static const s16 sAngledWipes_MoveData[NUM_ANGLED_WIPES][5] = { - {56, 0, 0, 160, 0}, - {104, 160, 240, 88, 1}, - {240, 72, 56, 0, 1}, - {0, 32, 144, 160, 0}, - {144, 160, 184, 0, 1}, - {56, 0, 168, 160, 0}, - {168, 160, 48, 0, 1}, +// startX startY endX endY yDirection + {56, 0, 0, DISPLAY_HEIGHT, 0}, + {104, DISPLAY_HEIGHT, DISPLAY_WIDTH, 88, 1}, + {DISPLAY_WIDTH, 72, 56, 0, 1}, + {0, 32, 144, DISPLAY_HEIGHT, 0}, + {144, DISPLAY_HEIGHT, 184, 0, 1}, + {56, 0, 168, DISPLAY_HEIGHT, 0}, + {168, DISPLAY_HEIGHT, 48, 0, 1}, }; -static const s16 sUnknown_085C8E16[] = {8, 4, 2, 1, 1, 1, 0}; +static const s16 sAngledWipes_EndDelays[NUM_ANGLED_WIPES] = {8, 4, 2, 1, 1, 1, 0}; static const TransitionStateFunc sTransitionIntroFuncs[] = { - Transition_Intro_1, - Transition_Intro_2 + TransitionIntro_FadeToGray, + TransitionIntro_FadeFromGray }; static const struct SpriteFrameImage sSpriteImage_Pokeball[] = @@ -759,12 +793,12 @@ static const union AffineAnimCmd *const sSpriteAffineAnimTable_Pokeball[] = static const struct SpriteTemplate sSpriteTemplate_Pokeball = { .tileTag = TAG_NONE, - .paletteTag = FLDEFF_PAL_TAG_POKEBALL, + .paletteTag = FLDEFF_PAL_TAG_POKEBALL_TRAIL, .oam = &gObjectEventBaseOam_32x32, .anims = sSpriteAnimTable_Pokeball, .images = sSpriteImage_Pokeball, .affineAnims = sSpriteAffineAnimTable_Pokeball, - .callback = SpriteCB_FldEffPokeball + .callback = SpriteCB_FldEffPokeballTrail }; static const struct OamData sOam_UnusedBrendanLass = @@ -829,7 +863,7 @@ static const struct SpriteTemplate sSpriteTemplate_UnusedLass = static const u16 sFieldEffectPal_Pokeball[] = INCBIN_U16("graphics/field_effects/palettes/pokeball.gbapal"); -const struct SpritePalette gSpritePalette_Pokeball = {sFieldEffectPal_Pokeball, FLDEFF_PAL_TAG_POKEBALL}; +const struct SpritePalette gSpritePalette_Pokeball = {sFieldEffectPal_Pokeball, FLDEFF_PAL_TAG_POKEBALL_TRAIL}; static const u16 sMugshotPal_Sidney[] = INCBIN_U16("graphics/battle_transitions/sidney_bg.gbapal"); static const u16 sMugshotPal_Phoebe[] = INCBIN_U16("graphics/battle_transitions/phoebe_bg.gbapal"); @@ -864,10 +898,10 @@ static const TransitionStateFunc sFrontierLogoWiggle_Funcs[] = { FrontierLogoWiggle_Init, FrontierLogoWiggle_SetGfx, - PatternWeave_1, - PatternWeave_2, - PatternWeave_3, - PatternWeave_End + PatternWeave_Blend1, + PatternWeave_Blend2, + PatternWeave_FinishAppear, + PatternWeave_CircularMask }; static const TransitionStateFunc sFrontierLogoWave_Funcs[] = @@ -881,8 +915,8 @@ static const TransitionStateFunc sFrontierLogoWave_Funcs[] = static const TransitionStateFunc sFrontierSquares_Funcs[] = { FrontierSquares_Init, - FrontierSquares_Func2, - FrontierSquares_Func3, + FrontierSquares_Draw, + FrontierSquares_Shrink, FrontierSquares_End }; @@ -968,9 +1002,6 @@ void BattleTransition_Start(u8 transitionId) LaunchBattleTransitionTask(transitionId); } -// in all tasks data[0] is reserved for the state -#define tState data[0] - // main task that launches sub-tasks for phase1 and phase2 #define tTransitionId data[1] #define tTransitionDone data[15] @@ -1063,11 +1094,6 @@ static void Task_Intro(u8 taskId) } } -#define tFuncState data[7] -#define tOpponentSpriteId data[13] -#define tPlayerSpriteId data[14] -#define tMugshotId data[15] - //-------------------- // B_TRANSITION_BLUR //-------------------- @@ -1270,10 +1296,10 @@ static void HBlankCB_Shuffle(void) #define tBlendTarget2 data[2] #define tBlendDelay data[3] -// Data 1-3 change purpose for PatternWeave_End -#define tEndAmplitude data[1] -#define tEndAmplitudeDelta data[2] -#define tVBlankSet data[3] +// Data 1-3 change purpose for PatternWeave_CircularMask +#define tRadius data[1] +#define tRadiusDelta data[2] +#define tVBlankSet data[3] #define tSinIndex data[4] #define tAmplitude data[5] @@ -1407,7 +1433,7 @@ static bool8 BigPokeball_SetGfx(struct Task *task) for (i = 0; i < 20; i++) { for (j = 0; j < 30; j++, bigPokeballMap++) - SET_TILEMAP_TILE(tilemap, i, j, *bigPokeballMap | 0xF000); + SET_TILE(tilemap, i, j, *bigPokeballMap); } SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); @@ -1494,13 +1520,13 @@ static bool8 Kyogre_Init(struct Task *task) return FALSE; } -static bool8 Kyogre_PalettePulsate(struct Task *task) +static bool8 Kyogre_PaletteFlash(struct Task *task) { if (task->tTimer % 3 == 0) { - u16 var = task->tTimer % 30; - var /= 3; - LoadPalette(sKyogre1_Palette + (var * 16), 0xF0, 0x20); + u16 offset = task->tTimer % 30; + offset /= 3; + LoadPalette(&sKyogre1_Palette[offset * 16], 0xF0, 0x20); } if (++task->tTimer > 58) { @@ -1515,8 +1541,8 @@ static bool8 Kyogre_PaletteBrighten(struct Task *task) { if (task->tTimer % 5 == 0) { - s16 var = task->tTimer / 5; - LoadPalette(sKyogre2_Palette + (var * 16), 0xF0, 0x20); + s16 offset = task->tTimer / 5; + LoadPalette(&sKyogre2_Palette[offset * 16], 0xF0, 0x20); } if (++task->tTimer > 68) { @@ -1551,7 +1577,7 @@ static bool8 WeatherDuo_End(struct Task *task) // The PatternWeave_ functions are used by several different transitions. // They create an effect where a pattern/image (such as the Magma emblem) is // formed by a shimmering weave effect. -static bool8 PatternWeave_1(struct Task *task) +static bool8 PatternWeave_Blend1(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; if (task->tBlendDelay == 0 || --task->tBlendDelay == 0) @@ -1571,7 +1597,7 @@ static bool8 PatternWeave_1(struct Task *task) return FALSE; } -static bool8 PatternWeave_2(struct Task *task) +static bool8 PatternWeave_Blend2(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; if (task->tBlendDelay == 0 || --task->tBlendDelay == 0) @@ -1591,7 +1617,7 @@ static bool8 PatternWeave_2(struct Task *task) return FALSE; } -static bool8 PatternWeave_3(struct Task *task) +static bool8 PatternWeave_FinishAppear(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; task->tSinIndex += 8; @@ -1602,8 +1628,8 @@ static bool8 PatternWeave_3(struct Task *task) if (task->tAmplitude <= 0) { task->tState++; - task->tEndAmplitude = 160; - task->tEndAmplitudeDelta = 256; + task->tRadius = DISPLAY_HEIGHT; + task->tRadiusDelta = 1 << 8; task->tVBlankSet = FALSE; } @@ -1632,19 +1658,20 @@ static bool8 WeatherTrio_WaitFade(struct Task *task) return FALSE; } -static bool8 PatternWeave_End(struct Task *task) +// Do a shrinking circular mask to go to a black screen after the pattern appears. +static bool8 PatternWeave_CircularMask(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - if (task->tEndAmplitudeDelta < 1024) - task->tEndAmplitudeDelta += 128; - if (task->tEndAmplitude != 0) + if (task->tRadiusDelta < (4 << 8)) + task->tRadiusDelta += 128; // 256 is 1 unit of speed. Speed up every other frame (128 / 256) + if (task->tRadius != 0) { - task->tEndAmplitude -= task->tEndAmplitudeDelta >> 8; - if (task->tEndAmplitude < 0) - task->tEndAmplitude = 0; + task->tRadius -= task->tRadiusDelta >> 8; + if (task->tRadius < 0) + task->tRadius = 0; } - sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->tEndAmplitude); - if (task->tEndAmplitude == 0) + SetCircularMask(gScanlineEffectRegBuffers[0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, task->tRadius); + if (task->tRadius == 0) { SetVBlankCallback(NULL); DmaStop(0); @@ -1656,16 +1683,14 @@ static bool8 PatternWeave_End(struct Task *task) if (!task->tVBlankSet) { task->tVBlankSet++; - SetVBlankCallback(VBlankCB1_BigPokeball); + SetVBlankCallback(VBlankCB_CircularMask); } - sTransitionData->VBlank_DMA++; } - return FALSE; } -static void Transition_BigPokeball_Vblank(void) +static void VBlankCB_SetWinAndBlend(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -1680,13 +1705,13 @@ static void Transition_BigPokeball_Vblank(void) static void VBlankCB_PatternWeave(void) { - Transition_BigPokeball_Vblank(); + VBlankCB_SetWinAndBlend(); DmaSet(0, gScanlineEffectRegBuffers[1], ®_BG0HOFS, B_TRANS_DMA_FLAGS); } -static void VBlankCB1_BigPokeball(void) +static void VBlankCB_CircularMask(void) { - Transition_BigPokeball_Vblank(); + VBlankCB_SetWinAndBlend(); DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } @@ -1694,9 +1719,18 @@ static void VBlankCB1_BigPokeball(void) #undef tSinIndex #undef tBlendTarget1 #undef tBlendTarget2 -#undef tEndAmplitude +#undef tRadius +#undef tRadiusDelta #undef tVBlankSet +//------------------------------ +// B_TRANSITION_POKEBALLS_TRAIL +//------------------------------ + +#define sSide data[0] +#define sDelay data[1] +#define sPrevX data[2] + static void Task_PokeballsTrail(u8 taskId) { while (sPokeballsTrail_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -1718,20 +1752,22 @@ static bool8 PokeballsTrail_Init(struct Task *task) static bool8 PokeballsTrail_Main(struct Task *task) { s16 i; - s16 rand; - s16 xCoords[ARRAY_COUNT(sUnknown_085C8B88)]; - s16 arr1[ARRAY_COUNT(sUnknown_085C8B8C)]; - - memcpy(xCoords, sUnknown_085C8B88, sizeof(sUnknown_085C8B88)); - memcpy(arr1, sUnknown_085C8B8C, sizeof(sUnknown_085C8B8C)); - rand = Random() & 1; - for (i = 0; i <= 4; i++, rand ^= 1) + s16 side; + s16 startX[ARRAY_COUNT(sPokeballsTrail_StartXCoords)]; + s16 delays[ARRAY_COUNT(sPokeballsTrail_Delays)]; + memcpy(startX, sPokeballsTrail_StartXCoords, sizeof(sPokeballsTrail_StartXCoords)); + memcpy(delays, sPokeballsTrail_Delays, sizeof(sPokeballsTrail_Delays)); + + // Randomly pick which side the first ball should start on. + // The side is then flipped for each subsequent ball. + side = Random() & 1; + for (i = 0; i < NUM_POKEBALL_TRAILS; i++, side ^= 1) { - gFieldEffectArguments[0] = xCoords[rand]; // x - gFieldEffectArguments[1] = (i * 32) + 16; // y - gFieldEffectArguments[2] = rand; - gFieldEffectArguments[3] = arr1[i]; - FieldEffectStart(FLDEFF_POKEBALL); + gFieldEffectArguments[0] = startX[side]; // x + gFieldEffectArguments[1] = (i * 32) + 16; // y + gFieldEffectArguments[2] = side; + gFieldEffectArguments[3] = delays[i]; + FieldEffectStart(FLDEFF_POKEBALL_TRAIL); } task->tState++; @@ -1740,7 +1776,7 @@ static bool8 PokeballsTrail_Main(struct Task *task) static bool8 PokeballsTrail_End(struct Task *task) { - if (!FieldEffectActiveListContains(FLDEFF_POKEBALL)) + if (!FieldEffectActiveListContains(FLDEFF_POKEBALL_TRAIL)) { FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(Task_PokeballsTrail)); @@ -1748,70 +1784,72 @@ static bool8 PokeballsTrail_End(struct Task *task) return FALSE; } -#define sData0 data[0] -#define sData1 data[1] -#define sData2 data[2] - -bool8 FldEff_Pokeball(void) +bool8 FldEff_PokeballTrail(void) { u8 spriteId = CreateSpriteAtEnd(&sSpriteTemplate_Pokeball, gFieldEffectArguments[0], gFieldEffectArguments[1], 0); gSprites[spriteId].oam.priority = 0; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteId].sData0 = gFieldEffectArguments[2]; - gSprites[spriteId].sData1 = gFieldEffectArguments[3]; - gSprites[spriteId].sData2 = -1; + gSprites[spriteId].sSide = gFieldEffectArguments[2]; + gSprites[spriteId].sDelay = gFieldEffectArguments[3]; + gSprites[spriteId].sPrevX = -1; InitSpriteAffineAnim(&gSprites[spriteId]); StartSpriteAffineAnim(&gSprites[spriteId], gFieldEffectArguments[2]); return FALSE; } -static void SpriteCB_FldEffPokeball(struct Sprite *sprite) +static void SpriteCB_FldEffPokeballTrail(struct Sprite *sprite) { - s16 arr0[ARRAY_COUNT(sUnknown_085C8B96)]; + s16 speeds[ARRAY_COUNT(sPokeballsTrail_Speeds)]; + memcpy(speeds, sPokeballsTrail_Speeds, sizeof(sPokeballsTrail_Speeds)); - memcpy(arr0, sUnknown_085C8B96, sizeof(sUnknown_085C8B96)); - if (sprite->sData1 != 0) + if (sprite->sDelay != 0) { - sprite->sData1--; + sprite->sDelay--; } else { if (sprite->x >= 0 && sprite->x <= DISPLAY_WIDTH) { + // Set PokĂ©ball position s16 posX = sprite->x >> 3; s16 posY = sprite->y >> 3; - if (posX != sprite->sData2) + // If PokĂ©ball moved forward clear trail behind it + if (posX != sprite->sPrevX) { u32 var; u16 *ptr; - sprite->sData2 = posX; - var = (((REG_BG0CNT >> 8) & 0x1F) << 11); - ptr = (u16 *)(VRAM + var); + sprite->sPrevX = posX; + var = ((REG_BG0CNT >> 8) & 0x1F) << 11; + ptr = (u16 *)(BG_VRAM + var); - SET_TILEMAP_TILE(ptr, posY - 2, posX, 0xF001); - SET_TILEMAP_TILE(ptr, posY - 1, posX, 0xF001); - SET_TILEMAP_TILE(ptr, posY - 0, posX, 0xF001); - SET_TILEMAP_TILE(ptr, posY + 1, posX, 0xF001); + SET_TILE(ptr, posY - 2, posX, 1); + SET_TILE(ptr, posY - 1, posX, 1); + SET_TILE(ptr, posY - 0, posX, 1); + SET_TILE(ptr, posY + 1, posX, 1); } } - sprite->x += arr0[sprite->sData0]; + sprite->x += speeds[sprite->sSide]; if (sprite->x < -15 || sprite->x > DISPLAY_WIDTH + 15) - FieldEffectStop(sprite, FLDEFF_POKEBALL); + FieldEffectStop(sprite, FLDEFF_POKEBALL_TRAIL); } } -#undef sData0 -#undef sData1 -#undef sData2 +#undef sSide +#undef sDelay +#undef sPrevX + +//----------------------------- +// B_TRANSITION_CLOCKWISE_WIPE +//----------------------------- -static void Task_Clockwise_BlackFade(u8 taskId) +static void Task_ClockwiseWipe(u8 taskId) { - while (sClockwise_BlackFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sClockwiseWipe_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Clockwise_BlackFade_Init(struct Task *task) +static bool8 ClockwiseWipe_Init(struct Task *task) { u16 i; @@ -1824,29 +1862,29 @@ static bool8 Clockwise_BlackFade_Init(struct Task *task) sTransitionData->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < DISPLAY_HEIGHT; i++) - gScanlineEffectRegBuffers[1][i] = WIN_RANGE(DISPLAY_WIDTH + 3, DISPLAY_WIDTH + 4); + gScanlineEffectRegBuffers[1][i] = ((DISPLAY_WIDTH + 3) << 8) | (DISPLAY_WIDTH + 4); - SetVBlankCallback(VBlankCB_Clockwise_BlackFade); - sTransitionData->data[4] = 120; + SetVBlankCallback(VBlankCB_ClockwiseWipe); + sTransitionData->tWipeEndX = DISPLAY_WIDTH / 2; task->tState++; return TRUE; } -static bool8 Clockwise_BlackFade_Func2(struct Task *task) +static bool8 ClockwiseWipe_TopRight(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], -1, 1, 1); + InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sTransitionData->tWipeEndX, -1, 1, 1); do { - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (sTransitionData->data[2] + 1) | 0x7800; - } while (!sub_814A228(sTransitionData->data, 1, 1)); + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = (sTransitionData->tWipeCurrX + 1) | ((DISPLAY_WIDTH / 2) << 8); + } while (!UpdateBlackWipe(sTransitionData->data, TRUE, TRUE)); - sTransitionData->data[4] += 16; - if (sTransitionData->data[4] >= DISPLAY_WIDTH) + sTransitionData->tWipeEndX += 16; + if (sTransitionData->tWipeEndX >= DISPLAY_WIDTH) { - sTransitionData->data[5] = 0; + sTransitionData->tWipeEndY = 0; task->tState++; } @@ -1854,56 +1892,56 @@ static bool8 Clockwise_BlackFade_Func2(struct Task *task) return FALSE; } -static bool8 Clockwise_BlackFade_Func3(struct Task *task) +static bool8 ClockwiseWipe_Right(struct Task *task) { - s16 r1, r3; - vu8 var = 0; + s16 start, end; + vu8 finished = FALSE; sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionData->data, 120, 80, 240, sTransitionData->data[5], 1, 1); + InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, DISPLAY_WIDTH, sTransitionData->tWipeEndY, 1, 1); while (1) { - r1 = 120, r3 = sTransitionData->data[2] + 1; - if (sTransitionData->data[5] >= DISPLAY_HEIGHT / 2) - r1 = sTransitionData->data[2], r3 = DISPLAY_WIDTH; - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r3) | (r1 << 8); - if (var != 0) + start = DISPLAY_WIDTH / 2, end = sTransitionData->tWipeCurrX + 1; + if (sTransitionData->tWipeEndY >= DISPLAY_HEIGHT / 2) + start = sTransitionData->tWipeCurrX, end = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = end | (start << 8); + if (finished) break; - var = sub_814A228(sTransitionData->data, 1, 1); + finished = UpdateBlackWipe(sTransitionData->data, TRUE, TRUE); } - sTransitionData->data[5] += 8; - if (sTransitionData->data[5] >= DISPLAY_HEIGHT) + sTransitionData->tWipeEndY += 8; + if (sTransitionData->tWipeEndY >= DISPLAY_HEIGHT) { - sTransitionData->data[4] = DISPLAY_WIDTH; + sTransitionData->tWipeEndX = DISPLAY_WIDTH; task->tState++; } else { - while (sTransitionData->data[3] < sTransitionData->data[5]) - gScanlineEffectRegBuffers[0][++sTransitionData->data[3]] = (r3) | (r1 << 8); + while (sTransitionData->tWipeCurrY < sTransitionData->tWipeEndY) + gScanlineEffectRegBuffers[0][++sTransitionData->tWipeCurrY] = end | (start << 8); } sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Clockwise_BlackFade_Func4(struct Task *task) +static bool8 ClockwiseWipe_Bottom(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], 160, 1, 1); + InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sTransitionData->tWipeEndX, DISPLAY_HEIGHT, 1, 1); do { - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (sTransitionData->data[2] << 8) | 0xF0; - } while (!sub_814A228(sTransitionData->data, 1, 1)); + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = (sTransitionData->tWipeCurrX << 8) | DISPLAY_WIDTH; + } while (!UpdateBlackWipe(sTransitionData->data, TRUE, TRUE)); - sTransitionData->data[4] -= 16; - if (sTransitionData->data[4] <= 0) + sTransitionData->tWipeEndX -= 16; + if (sTransitionData->tWipeEndX <= 0) { - sTransitionData->data[5] = DISPLAY_HEIGHT; + sTransitionData->tWipeEndY = DISPLAY_HEIGHT; task->tState++; } @@ -1911,79 +1949,75 @@ static bool8 Clockwise_BlackFade_Func4(struct Task *task) return FALSE; } -static bool8 Clockwise_BlackFade_Func5(struct Task *task) +static bool8 ClockwiseWipe_Left(struct Task *task) { - s16 r1, r2, var4; - vu8 var = 0; + s16 end, start, temp; + vu8 finished = FALSE; sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionData->data, 120, 80, 0, sTransitionData->data[5], 1, 1); + InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, 0, sTransitionData->tWipeEndY, 1, 1); while (1) { - r1 = (gScanlineEffectRegBuffers[0][sTransitionData->data[3]]) & 0xFF; - r2 = sTransitionData->data[2]; - if (sTransitionData->data[5] <= DISPLAY_HEIGHT / 2) - r2 = 120, r1 = sTransitionData->data[2]; - var4 = (r1) | (r2 << 8); - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = var4; - if (var != 0) + end = (gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY]) & 0xFF; + start = sTransitionData->tWipeCurrX; + if (sTransitionData->tWipeEndY <= DISPLAY_HEIGHT / 2) + start = DISPLAY_WIDTH / 2, end = sTransitionData->tWipeCurrX; + temp = end | (start << 8); + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = temp; + if (finished) break; - var = sub_814A228(sTransitionData->data, 1, 1); + finished = UpdateBlackWipe(sTransitionData->data, TRUE, TRUE); } - sTransitionData->data[5] -= 8; - if (sTransitionData->data[5] <= 0) + sTransitionData->tWipeEndY -= 8; + if (sTransitionData->tWipeEndY <= 0) { - sTransitionData->data[4] = 0; + sTransitionData->tWipeEndX = 0; task->tState++; } else { - while (sTransitionData->data[3] > sTransitionData->data[5]) - { - gScanlineEffectRegBuffers[0][--sTransitionData->data[3]] = (r1) | (r2 << 8); - } + while (sTransitionData->tWipeCurrY > sTransitionData->tWipeEndY) + gScanlineEffectRegBuffers[0][--sTransitionData->tWipeCurrY] = end | (start << 8); } sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Clockwise_BlackFade_Func6(struct Task *task) +static bool8 ClockwiseWipe_TopLeft(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - sub_814A1AC(sTransitionData->data, 120, 80, sTransitionData->data[4], 0, 1, 1); + InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sTransitionData->tWipeEndX, 0, 1, 1); do { - s16 r2, r3; - - r2 = 120, r3 = sTransitionData->data[2]; - if (sTransitionData->data[2] >= 120) - r2 = 0, r3 = DISPLAY_WIDTH; - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r3) | (r2 << 8); - - } while (!sub_814A228(sTransitionData->data, 1, 1)); - - sTransitionData->data[4] += 16; - if (sTransitionData->data[2] > 120) + s16 start, end; + start = DISPLAY_WIDTH / 2, end = sTransitionData->tWipeCurrX; + if (sTransitionData->tWipeCurrX >= DISPLAY_WIDTH / 2) + start = 0, end = DISPLAY_WIDTH; + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = end | (start << 8); + } while (!UpdateBlackWipe(sTransitionData->data, TRUE, TRUE)); + + sTransitionData->tWipeEndX += 16; + if (sTransitionData->tWipeCurrX > DISPLAY_WIDTH / 2) task->tState++; sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Clockwise_BlackFade_End(struct Task *task) +static bool8 ClockwiseWipe_End(struct Task *task) { DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Task_Clockwise_BlackFade)); + DestroyTask(FindTaskIdByFunc(Task_ClockwiseWipe)); return FALSE; } -static void VBlankCB_Clockwise_BlackFade(void) +static void VBlankCB_ClockwiseWipe(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -1996,6 +2030,15 @@ static void VBlankCB_Clockwise_BlackFade(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } +//--------------------- +// B_TRANSITION_RIPPLE +//--------------------- + +#define tSinVal data[1] +#define tAmplitudeVal data[2] +#define tTimer data[3] +#define tFadeStarted data[4] + static void Task_Ripple(u8 taskId) { while (sRipple_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -2020,34 +2063,34 @@ static bool8 Ripple_Init(struct Task *task) return TRUE; } -static bool8 Ripple_Func2(struct Task *task) +static bool8 Ripple_Main(struct Task *task) { u8 i; - s16 r3; - u16 r4, r8; + s16 amplitude; + u16 sinVal, speed; sTransitionData->VBlank_DMA = FALSE; - r3 = task->data[2] >> 8; - r4 = task->data[1]; - r8 = 384; - task->data[1] += 0x400; - if (task->data[2] <= 0x1FFF) - task->data[2] += 0x180; + amplitude = task->tAmplitudeVal >> 8; + sinVal = task->tSinVal; + speed = 0x180; + task->tSinVal += 0x400; + if (task->tAmplitudeVal <= 0x1FFF) + task->tAmplitudeVal += 0x180; - for (i = 0; i < DISPLAY_HEIGHT; i++, r4 += r8) + for (i = 0; i < DISPLAY_HEIGHT; i++, sinVal += speed) { - s16 var = r4 >> 8; - gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(var & 0xffff, r3); + s16 sinIndex = sinVal >> 8; + gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(sinIndex & 0xffff, amplitude); } - if (++task->data[3] == 81) + if (++task->tTimer == 81) { - task->data[4]++; + task->tFadeStarted++; BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK); } - if (task->data[4] != 0 && !gPaletteFade.active) + if (task->tFadeStarted && !gPaletteFade.active) DestroyTask(FindTaskIdByFunc(Task_Ripple)); sTransitionData->VBlank_DMA++; @@ -2069,7 +2112,18 @@ static void HBlankCB_Ripple(void) REG_BG3VOFS = var; } +#undef tSinVal +#undef tAmplitudeVal +#undef tTimer +#undef tFadeStarted + +//------------------- // B_TRANSITION_WAVE +//------------------- + +#define tX data[1] +#define tSinIndex data[2] + static void Task_Wave(u8 taskId) { while (sWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -2096,30 +2150,30 @@ static bool8 Wave_Init(struct Task *task) return TRUE; } -static bool8 Wave_Func2(struct Task *task) +static bool8 Wave_Main(struct Task *task) { - u8 i, r5; + u8 i, sinIndex; u16* toStore; - bool8 nextFunc; + bool8 finished; sTransitionData->VBlank_DMA = FALSE; toStore = gScanlineEffectRegBuffers[0]; - r5 = task->data[2]; - task->data[2] += 16; - task->data[1] += 8; + sinIndex = task->tSinIndex; + task->tSinIndex += 16; + task->tX += 8; - for (i = 0, nextFunc = TRUE; i < DISPLAY_HEIGHT; i++, r5 += 4, toStore++) + for (i = 0, finished = TRUE; i < DISPLAY_HEIGHT; i++, sinIndex += 4, toStore++) { - s16 value = task->data[1] + Sin(r5, 40); - if (value < 0) - value = 0; - if (value > DISPLAY_WIDTH) - value = DISPLAY_WIDTH; - *toStore = (value << 8) | (DISPLAY_WIDTH + 1); - if (value < DISPLAY_WIDTH) - nextFunc = FALSE; + s16 x = task->tX + Sin(sinIndex, 40); + if (x < 0) + x = 0; + if (x > DISPLAY_WIDTH) + x = DISPLAY_WIDTH; + *toStore = (x << 8) | (DISPLAY_WIDTH + 1); + if (x < DISPLAY_WIDTH) + finished = FALSE; } - if (nextFunc) + if (finished) task->tState++; sTransitionData->VBlank_DMA++; @@ -2146,6 +2200,33 @@ static void VBlankCB_Wave(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } +#undef tX +#undef tSinIndex + +//---------------------------------------------------------------- +// B_TRANSITION_SIDNEY, B_TRANSITION_PHOEBE, B_TRANSITION_GLACIA, +// B_TRANSITION_DRAKE, and B_TRANSITION_CHAMPION +// +// These are all the "mugshot" transitions, where a banner shows +// the trainer pic of the player and their opponent. +//---------------------------------------------------------------- + +#define tSinIndex data[1] +#define tTopBannerX data[2] +#define tBottomBannerX data[3] +#define tTimer data[3] // Re-used +#define tFadeSpread data[4] +#define tOpponentSpriteId data[13] +#define tPlayerSpriteId data[14] +#define tMugshotId data[15] + +// Sprite data for trainer sprites in mugshots +#define sState data[0] +#define sSlideSpeed data[1] +#define sSlideAccel data[2] +#define sDone data[6] +#define sSlideDir data[7] + static void Task_Sidney(u8 taskId) { gTasks[taskId].tMugshotId = MUGSHOT_SIDNEY; @@ -2189,17 +2270,17 @@ static bool8 Mugshot_Init(struct Task *task) ScanlineEffect_Clear(); Mugshots_CreateTrainerPics(task); - task->data[1] = 0; - task->data[2] = 1; - task->data[3] = DISPLAY_WIDTH - 1; + task->tSinIndex = 0; + task->tTopBannerX = 1; + task->tBottomBannerX = DISPLAY_WIDTH - 1; sTransitionData->WININ = WININ_WIN0_ALL; sTransitionData->WINOUT = WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR; sTransitionData->WIN0V = DISPLAY_HEIGHT; for (i = 0; i < DISPLAY_HEIGHT; i++) - gScanlineEffectRegBuffers[1][i] = 0xF0F1; + gScanlineEffectRegBuffers[1][i] = (DISPLAY_WIDTH << 8) | (DISPLAY_WIDTH + 1); - SetVBlankCallback(VBlankCB0_Mugshots); + SetVBlankCallback(VBlankCB_Mugshots); task->tState++; return FALSE; @@ -2220,7 +2301,7 @@ static bool8 Mugshot_SetGfx(struct Task *task) for (i = 0; i < 20; i++) { for (j = 0; j < 32; j++, mugshotsMap++) - SET_TILEMAP_TILE(tilemap, i, j, *mugshotsMap | 0xF000); + SET_TILE(tilemap, i, j, *mugshotsMap); } EnableInterrupts(INTR_FLAG_HBLANK); @@ -2232,43 +2313,49 @@ static bool8 Mugshot_SetGfx(struct Task *task) static bool8 Mugshot_ShowBanner(struct Task *task) { - u8 i, r5; + u8 i, sinIndex; u16* toStore; - s16 value; + s16 x; s32 mergedValue; sTransitionData->VBlank_DMA = FALSE; toStore = gScanlineEffectRegBuffers[0]; - r5 = task->data[1]; - task->data[1] += 16; + sinIndex = task->tSinIndex; + task->tSinIndex += 16; - for (i = 0; i < DISPLAY_HEIGHT / 2; i++, toStore++, r5 += 16) + // Update top banner + for (i = 0; i < DISPLAY_HEIGHT / 2; i++, toStore++, sinIndex += 16) { - value = task->data[2] + Sin(r5, 16); - if (value < 0) - value = 1; - if (value > DISPLAY_WIDTH) - value = DISPLAY_WIDTH; - *toStore = value; + x = task->tTopBannerX + Sin(sinIndex, 16); + if (x < 0) + x = 1; + if (x > DISPLAY_WIDTH) + x = DISPLAY_WIDTH; + *toStore = x; } - for (; i < DISPLAY_HEIGHT; i++, toStore++, r5 += 16) + + // Update bottom banner + for (; i < DISPLAY_HEIGHT; i++, toStore++, sinIndex += 16) { - value = task->data[3] - Sin(r5, 16); - if (value < 0) - value = 0; - if (value > DISPLAY_WIDTH - 1) - value = DISPLAY_WIDTH - 1; - *toStore = (value << 8) | (DISPLAY_WIDTH); + x = task->tBottomBannerX - Sin(sinIndex, 16); + if (x < 0) + x = 0; + if (x > DISPLAY_WIDTH - 1) + x = DISPLAY_WIDTH - 1; + *toStore = (x << 8) | DISPLAY_WIDTH; } - task->data[2] += 8; - task->data[3] -= 8; - if (task->data[2] > DISPLAY_WIDTH) - task->data[2] = DISPLAY_WIDTH; - if (task->data[3] < 0) - task->data[3] = 0; - mergedValue = *(s32*)(&task->data[2]); + // Slide banners across screen + task->tTopBannerX += 8; + task->tBottomBannerX -= 8; + + if (task->tTopBannerX > DISPLAY_WIDTH) + task->tTopBannerX = DISPLAY_WIDTH; + if (task->tBottomBannerX < 0) + task->tBottomBannerX = 0; + + mergedValue = *(s32*)(&task->tTopBannerX); if (mergedValue == DISPLAY_WIDTH) task->tState++; @@ -2289,15 +2376,19 @@ static bool8 Mugshot_StartOpponentSlide(struct Task *task) *toStore = DISPLAY_WIDTH; task->tState++; - task->data[1] = 0; - task->data[2] = 0; - task->data[3] = 0; + + // Clear old data + task->tSinIndex = 0; + task->tTopBannerX = 0; + task->tBottomBannerX = 0; sTransitionData->BG0HOFS_Lower -= 8; sTransitionData->BG0HOFS_Upper += 8; - SetTrainerPicSlideTable(task->tOpponentSpriteId, 0); - SetTrainerPicSlideTable(task->tPlayerSpriteId, 1); + SetTrainerPicSlideDirection(task->tOpponentSpriteId, 0); + SetTrainerPicSlideDirection(task->tPlayerSpriteId, 1); + + // Start opponent slide IncrementTrainerPicState(task->tOpponentSpriteId); PlaySE(SE_MUGSHOT); @@ -2311,7 +2402,7 @@ static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task) sTransitionData->BG0HOFS_Lower -= 8; sTransitionData->BG0HOFS_Upper += 8; - // Start player's pic slide in once the opponent is finished + // Start player's slide in once the opponent is finished if (IsTrainerPicSlideDone(task->tOpponentSpriteId)) { task->tState++; @@ -2335,10 +2426,10 @@ static bool8 Mugshot_WaitPlayerSlide(struct Task *task) SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); SetGpuReg(REG_OFFSET_BLDY, 0); task->tState++; - task->data[3] = 0; - task->data[4] = 0; + task->tTimer = 0; + task->tFadeSpread = 0; sTransitionData->BLDCNT = BLDCNT_TGT1_ALL | BLDCNT_EFFECT_LIGHTEN; - SetVBlankCallback(VBlankCB1_Mugshots); + SetVBlankCallback(VBlankCB_MugshotsFadeOut); } return FALSE; } @@ -2352,16 +2443,18 @@ static bool8 Mugshot_GradualWhiteFade(struct Task *task) sTransitionData->BG0HOFS_Lower -= 8; sTransitionData->BG0HOFS_Upper += 8; - if (task->data[4] < DISPLAY_HEIGHT / 2) - task->data[4] += 2; - if (task->data[4] > DISPLAY_HEIGHT / 2) - task->data[4] = DISPLAY_HEIGHT / 2; + if (task->tFadeSpread < DISPLAY_HEIGHT / 2) + task->tFadeSpread += 2; + if (task->tFadeSpread > DISPLAY_HEIGHT / 2) + task->tFadeSpread = DISPLAY_HEIGHT / 2; - if (++task->data[3] & 1) + if (++task->tTimer & 1) { s16 i; - for (i = 0, active = FALSE; i <= task->data[4]; i++) + for (i = 0, active = FALSE; i <= task->tFadeSpread; i++) { + // Fade starts in middle of screen and + // spreads outwards in both directions. s16 index1 = DISPLAY_HEIGHT / 2 - i; s16 index2 = DISPLAY_HEIGHT / 2 + i; if (gScanlineEffectRegBuffers[0][index1] <= 15) @@ -2377,19 +2470,21 @@ static bool8 Mugshot_GradualWhiteFade(struct Task *task) } } - if (task->data[4] == DISPLAY_HEIGHT / 2 && !active) + if (task->tFadeSpread == DISPLAY_HEIGHT / 2 && !active) task->tState++; sTransitionData->VBlank_DMA++; return FALSE; } +// Set palette to white to replace the scanline white fade +// before the screen fades to black. static bool8 Mugshot_InitFadeWhiteToBlack(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); sTransitionData->BLDCNT = 0xFF; - task->data[3] = 0; + task->tTimer = 0; task->tState++; return TRUE; @@ -2399,9 +2494,9 @@ static bool8 Mugshot_FadeToBlack(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - task->data[3]++; - memset(gScanlineEffectRegBuffers[0], task->data[3], DISPLAY_HEIGHT * 2); - if (task->data[3] > 15) + task->tTimer++; + memset(gScanlineEffectRegBuffers[0], task->tTimer, DISPLAY_HEIGHT * 2); + if (task->tTimer > 15) task->tState++; sTransitionData->VBlank_DMA++; @@ -2416,7 +2511,7 @@ static bool8 Mugshot_End(struct Task *task) return FALSE; } -static void VBlankCB0_Mugshots(void) +static void VBlankCB_Mugshots(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2429,7 +2524,7 @@ static void VBlankCB0_Mugshots(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } -static void VBlankCB1_Mugshots(void) +static void VBlankCB_MugshotsFadeOut(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -2447,26 +2542,19 @@ static void HBlankCB_Mugshots(void) REG_BG0HOFS = sTransitionData->BG0HOFS_Upper; } -// data fields for player/opponent sprites in mugshots -#define sState data[0] -#define sOffsetX data[1] -#define sOffsetX2 data[2] -#define sDone data[6] -#define sSlideTableId data[7] - static void Mugshots_CreateTrainerPics(struct Task *task) { struct Sprite *opponentSprite, *playerSprite; s16 mugshotId = task->tMugshotId; task->tOpponentSpriteId = CreateTrainerSprite(sMugshotsTrainerPicIDsTable[mugshotId], - sMugshotsOpponentCoords[mugshotId][0] - 32, - sMugshotsOpponentCoords[mugshotId][1] + 42, - 0, gDecompressionBuffer); + sMugshotsOpponentCoords[mugshotId][0] - 32, + sMugshotsOpponentCoords[mugshotId][1] + 42, + 0, gDecompressionBuffer); task->tPlayerSpriteId = CreateTrainerSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender), - DISPLAY_WIDTH + 32, - 106, - 0, gDecompressionBuffer); + DISPLAY_WIDTH + 32, + 106, + 0, gDecompressionBuffer); opponentSprite = &gSprites[task->tOpponentSpriteId]; playerSprite = &gSprites[task->tPlayerSpriteId]; @@ -2498,63 +2586,70 @@ static void SpriteCB_MugshotTrainerPic(struct Sprite *sprite) while (sMugshotTrainerPicFuncs[sprite->sState](sprite)); } -static bool8 MugshotTrainerPic_Nothing(struct Sprite *sprite) +// Wait until IncrementTrainerPicState is called +static bool8 MugshotTrainerPic_Pause(struct Sprite *sprite) { return FALSE; } -static bool8 MugshotTrainerPic_SetSlideOffsets(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Init(struct Sprite *sprite) { - s16 offsets1[ARRAY_COUNT(sTrainerPicSlideOffsets1)]; - s16 offsets2[ARRAY_COUNT(sTrainerPicSlideOffsets2)]; + s16 speeds[ARRAY_COUNT(sTrainerPicSlideSpeeds)]; + s16 accels[ARRAY_COUNT(sTrainerPicSlideAccels)]; - memcpy(offsets1, sTrainerPicSlideOffsets1, sizeof(sTrainerPicSlideOffsets1)); - memcpy(offsets2, sTrainerPicSlideOffsets2, sizeof(sTrainerPicSlideOffsets2)); + memcpy(speeds, sTrainerPicSlideSpeeds, sizeof(sTrainerPicSlideSpeeds)); + memcpy(accels, sTrainerPicSlideAccels, sizeof(sTrainerPicSlideAccels)); sprite->sState++; - sprite->sOffsetX = offsets1[sprite->sSlideTableId]; - sprite->sOffsetX2 = offsets2[sprite->sSlideTableId]; + sprite->sSlideSpeed = speeds[sprite->sSlideDir]; + sprite->sSlideAccel = accels[sprite->sSlideDir]; return TRUE; } -// fast slide to around middle screen -static bool8 MugshotTrainerPic_Slide1(struct Sprite *sprite) +static bool8 MugshotTrainerPic_Slide(struct Sprite *sprite) { - sprite->x += sprite->sOffsetX; - if (sprite->sSlideTableId && sprite->x < 133) + sprite->x += sprite->sSlideSpeed; + + // Advance state when pic passes ~40% of screen + if (sprite->sSlideDir && sprite->x < DISPLAY_WIDTH - 107) sprite->sState++; - else if (!sprite->sSlideTableId && sprite->x > 103) + else if (!sprite->sSlideDir && sprite->x > 103) sprite->sState++; return FALSE; } -// slower but accelerating slide -static bool8 MugshotTrainerPic_Slide2(struct Sprite *sprite) +static bool8 MugshotTrainerPic_SlideSlow(struct Sprite *sprite) { - sprite->sOffsetX += sprite->sOffsetX2; - sprite->x += sprite->sOffsetX; - if (sprite->sOffsetX == 0) + // Add acceleration value to speed, then add speed. + // For both sides acceleration is opposite speed, so slide slows down. + sprite->sSlideSpeed += sprite->sSlideAccel; + sprite->x += sprite->sSlideSpeed; + + // Advance state when slide comes to a stop + if (sprite->sSlideSpeed == 0) { sprite->sState++; - sprite->sOffsetX2 = -sprite->sOffsetX2; + sprite->sSlideAccel = -sprite->sSlideAccel; sprite->sDone = TRUE; } return FALSE; } -// Has no practical effect -static bool8 MugshotTrainerPic_Slide3(struct Sprite *sprite) +// Slides trainer pic offscreen. This is never reached, because it's preceded +// by a second MugshotTrainerPic_Pause, and IncrementTrainerPicState is +// only called once per trainer pic. +static bool8 MugshotTrainerPic_SlideOffscreen(struct Sprite *sprite) { - sprite->sOffsetX += sprite->sOffsetX2; - sprite->x += sprite->sOffsetX; + sprite->sSlideSpeed += sprite->sSlideAccel; + sprite->x += sprite->sSlideSpeed; if (sprite->x < -31 || sprite->x > DISPLAY_WIDTH + 31) sprite->sState++; return FALSE; } -static void SetTrainerPicSlideTable(s16 spriteId, s16 arrId) +static void SetTrainerPicSlideDirection(s16 spriteId, s16 dirId) { - gSprites[spriteId].sSlideTableId = arrId; + gSprites[spriteId].sSlideDir = dirId; } static void IncrementTrainerPicState(s16 spriteId) @@ -2568,10 +2663,26 @@ static s16 IsTrainerPicSlideDone(s16 spriteId) } #undef sState -#undef sOffsetX -#undef sOffsetX2 +#undef sSlideSpeed +#undef sSlideAccel #undef sDone -#undef sSlideTableId +#undef sSlideDir +#undef tSinIndex +#undef tTopBannerX +#undef tBottomBannerX +#undef tTimer +#undef tFadeSpread +#undef tOpponentSpriteId +#undef tPlayerSpriteId +#undef tMugshotId + +//-------------------- +// B_TRANSITION_SLICE +//-------------------- + +#define tEffectX data[1] +#define tSpeed data[2] +#define tAccel data[3] static void Task_Slice(u8 taskId) { @@ -2585,8 +2696,8 @@ static bool8 Slice_Init(struct Task *task) InitTransitionData(); ScanlineEffect_Clear(); - task->data[2] = 256; - task->data[3] = 1; + task->tSpeed = 1 << 8; + task->tAccel = 1; sTransitionData->WININ = WININ_WIN0_ALL; sTransitionData->WINOUT = 0; sTransitionData->WIN0V = DISPLAY_HEIGHT; @@ -2608,37 +2719,39 @@ static bool8 Slice_Init(struct Task *task) return TRUE; } -static bool8 Slice_Func2(struct Task *task) +static bool8 Slice_Main(struct Task *task) { u16 i; sTransitionData->VBlank_DMA = FALSE; - task->data[1] += (task->data[2] >> 8); - if (task->data[1] > DISPLAY_WIDTH) - task->data[1] = DISPLAY_WIDTH; - if (task->data[2] <= 0xFFF) - task->data[2] += task->data[3]; - if (task->data[3] < 128) - task->data[3] <<= 1; // multiplying by two + task->tEffectX += (task->tSpeed >> 8); + if (task->tEffectX > DISPLAY_WIDTH) + task->tEffectX = DISPLAY_WIDTH; + if (task->tSpeed <= 0xFFF) + task->tSpeed += task->tAccel; + if (task->tAccel < 128) + task->tAccel <<= 1; // multiplying by two for (i = 0; i < DISPLAY_HEIGHT; i++) { u16 *storeLoc1 = &gScanlineEffectRegBuffers[0][i]; u16 *storeLoc2 = &gScanlineEffectRegBuffers[0][i + DISPLAY_HEIGHT]; - if (i & 1) + + // Alternate rows + if (i % 2) { - *storeLoc1 = sTransitionData->cameraX + task->data[1]; - *storeLoc2 = DISPLAY_WIDTH - task->data[1]; + *storeLoc1 = sTransitionData->cameraX + task->tEffectX; + *storeLoc2 = DISPLAY_WIDTH - task->tEffectX; } else { - *storeLoc1 = sTransitionData->cameraX - task->data[1]; - *storeLoc2 = (task->data[1] << 8) | (DISPLAY_WIDTH + 1); + *storeLoc1 = sTransitionData->cameraX - task->tEffectX; + *storeLoc2 = (task->tEffectX << 8) | (DISPLAY_WIDTH + 1); } } - if (task->data[1] >= DISPLAY_WIDTH) + if (task->tEffectX >= DISPLAY_WIDTH) task->tState++; sTransitionData->VBlank_DMA++; @@ -2676,6 +2789,20 @@ static void HBlankCB_Slice(void) } } +#undef tEffectX +#undef tSpeed +#undef tAccel + +//-------------------------- +// B_TRANSITION_SHRED_SPLIT +//-------------------------- + +// Data starts at 4. Possible it shared data +// with Slice above, which ends at 3. +#define tDelayTimer data[4] +#define tExtent data[5] +#define tDelay data[6] + static void Task_ShredSplit(u8 taskId) { while (sShredSplit_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -2703,9 +2830,9 @@ static bool8 ShredSplit_Init(struct Task *task) gScanlineEffectRegBuffers[0][DISPLAY_HEIGHT * 4 + i] = 1; } - task->data[4] = 0; - task->data[5] = 0; - task->data[6] = 7; + task->tDelayTimer = 0; + task->tExtent = 0; + task->tDelay = 7; EnableInterrupts(INTR_FLAG_HBLANK); @@ -2716,37 +2843,38 @@ static bool8 ShredSplit_Init(struct Task *task) return TRUE; } -static bool8 ShredSplit_Func2(struct Task *task) +static bool8 ShredSplit_Main(struct Task *task) { u16 i, j, k; - u8 arr1[ARRAY_COUNT(gUnknown_085C8C64)]; - s16 arr2[ARRAY_COUNT(gUnknown_085C8C66)]; - u8 var; + u8 baseY[ARRAY_COUNT(sShredSplit_SectionYCoords)]; + s16 moveDirs[ARRAY_COUNT(sShredSplit_SectionMoveDirs)]; + u8 linesFinished; u16 *ptr4, *ptr3, *ptr1, *ptr2; - s16 unkVar; + s16 y; - memcpy(arr1, gUnknown_085C8C64, sizeof(arr1)); - memcpy(arr2, gUnknown_085C8C66, sizeof(arr2)); + memcpy(baseY, sShredSplit_SectionYCoords, sizeof(baseY)); + memcpy(moveDirs, sShredSplit_SectionMoveDirs, sizeof(moveDirs)); sTransitionData->VBlank_DMA = FALSE; - var = 0; + linesFinished = 0; - for (i = 0; i <= task->data[5]; i++) + for (i = 0; i <= task->tExtent; i++) { + // Slide half of the pixel rows (alternating) right for (j = 0; j < 2; j++) { for (k = 0; k < 2; k++) { - unkVar = (arr1[j]) + (arr2[k] * -(i) * 2); - if (unkVar >= 0 && (unkVar != 79 || j != 1)) + y = baseY[j] + (moveDirs[k] * -i * 2); + if (y >= 0 && (y != DISPLAY_HEIGHT / 2 - 1 || j != 1)) { - ptr4 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 2]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 3]; - ptr1 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 4]; + ptr4 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 2]; + ptr3 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 3]; + ptr1 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 4]; if (*ptr4 >= DISPLAY_WIDTH) { *ptr4 = DISPLAY_WIDTH; - var++; + linesFinished++; } else { @@ -2756,8 +2884,8 @@ static bool8 ShredSplit_Func2(struct Task *task) if (*ptr3 <= 0xFFF) *ptr3 += *ptr1; } - ptr2 = &gScanlineEffectRegBuffers[0][unkVar]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT]; + ptr2 = &gScanlineEffectRegBuffers[0][y]; + ptr3 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT]; *ptr2 = sTransitionData->cameraX + *ptr4; *ptr3 = DISPLAY_WIDTH - *ptr4; @@ -2767,20 +2895,21 @@ static bool8 ShredSplit_Func2(struct Task *task) } } + // Slide the other half of the rows left for (j = 0; j < 2; j++) { for (k = 0; k < 2; k++) { - unkVar = (arr1[j] + 1) + (arr2[k] * -(i) * 2); - if (unkVar <= DISPLAY_HEIGHT && (unkVar != DISPLAY_HEIGHT / 2 || j != 1)) + y = baseY[j] + 1 + (moveDirs[k] * -i * 2); + if (y <= DISPLAY_HEIGHT && (y != DISPLAY_HEIGHT / 2 || j != 1)) { - ptr4 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 2]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 3]; - ptr1 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT * 4]; + ptr4 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 2]; + ptr3 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 3]; + ptr1 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT * 4]; if (*ptr4 >= DISPLAY_WIDTH) { *ptr4 = DISPLAY_WIDTH; - var++; + linesFinished++; } else { @@ -2790,8 +2919,8 @@ static bool8 ShredSplit_Func2(struct Task *task) if (*ptr3 <= 0xFFF) *ptr3 += *ptr1; } - ptr2 = &gScanlineEffectRegBuffers[0][unkVar]; - ptr3 = &gScanlineEffectRegBuffers[0][unkVar + DISPLAY_HEIGHT]; + ptr2 = &gScanlineEffectRegBuffers[0][y]; + ptr3 = &gScanlineEffectRegBuffers[0][y + DISPLAY_HEIGHT]; *ptr2 = sTransitionData->cameraX - *ptr4; *ptr3 = (*ptr4 << 8) | (DISPLAY_WIDTH + 1); @@ -2802,11 +2931,19 @@ static bool8 ShredSplit_Func2(struct Task *task) } } - if (--task->data[4] < 0) - task->data[4] = 0; - if (task->data[4] <= 0 && task->data[5] + 1 <= 20) - task->data[4] = task->data[6], task->data[5]++; - if (var >= DISPLAY_HEIGHT) + // Count down to next move + if (--task->tDelayTimer < 0) + task->tDelayTimer = 0; + + // Try increase effect's extent + if (task->tDelayTimer <= 0 && task->tExtent + 1 <= DISPLAY_HEIGHT / 8) + { + task->tDelayTimer = task->tDelay; + task->tExtent++; + } + + // All lines have reached screen width, move on. + if (linesFinished >= DISPLAY_HEIGHT) task->tState++; sTransitionData->VBlank_DMA++; @@ -2817,7 +2954,8 @@ static bool8 ShredSplit_Func2(struct Task *task) // is always false, resulting in the game being stuck in an infinite loop. // It's possible this transition is only partially // done and the second part was left out. -static bool8 ShredSplit_Func3(struct Task *task) +// In any case removing or bypassing this state allows the transition to finish. +static bool8 ShredSplit_BrokenCheck(struct Task *task) { u16 i; bool32 done = TRUE; @@ -2826,7 +2964,7 @@ static bool8 ShredSplit_Func3(struct Task *task) for (i = 0; i < DISPLAY_HEIGHT; i++) { if (gScanlineEffectRegBuffers[1][i] != DISPLAY_WIDTH && gScanlineEffectRegBuffers[1][i] != checkVar2) - done = FALSE; // a break statement should be put here + done = FALSE; } if (done == TRUE) @@ -2843,16 +2981,32 @@ static bool8 ShredSplit_End(struct Task *task) return FALSE; } -static void Task_Blackhole1(u8 taskId) +#undef tDelayTimer +#undef tExtent +#undef tDelay + +//----------------------------------------------------------- +// B_TRANSITION_BLACKHOLE and B_TRANSITION_BLACKHOLE_PULSATE +//----------------------------------------------------------- + +#define tRadius data[1] +#define tGrowSpeed data[2] +#define tSinIndex data[5] +#define tVibrateId data[6] +#define tAmplitude data[6] // Used differently by the two transitions +#define tFlag data[7] // Used generally to indicate an action has taken place. + +static void Task_Blackhole(u8 taskId) { - while (sBlackhole1_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBlackhole_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static void Task_Blackhole2(u8 taskId) +static void Task_BlackholePulsate(u8 taskId) { - while (sBlackhole2_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sBlackholePulsate_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } +// Init is shared by both transitions static bool8 Blackhole_Init(struct Task *task) { s32 i; @@ -2868,19 +3022,19 @@ static bool8 Blackhole_Init(struct Task *task) for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0; - SetVBlankCallback(VBlankCB1_BigPokeball); + SetVBlankCallback(VBlankCB_CircularMask); task->tState++; - task->data[1] = 1; - task->data[2] = 0x100; - task->tFuncState = 0; + task->tRadius = 1; + task->tGrowSpeed = 1 << 8; + task->tFlag = FALSE; return FALSE; } -static bool8 Blackhole1_Func3(struct Task *task) +static bool8 Blackhole_GrowEnd(struct Task *task) { - if (task->tFuncState == 1) + if (task->tFlag == TRUE) { DmaStop(0); SetVBlankCallback(NULL); @@ -2889,16 +3043,16 @@ static bool8 Blackhole1_Func3(struct Task *task) else { sTransitionData->VBlank_DMA = FALSE; - if (task->data[2] < 1024) - task->data[2] += 128; - if (task->data[1] < DISPLAY_HEIGHT) - task->data[1] += (task->data[2] >> 8); - if (task->data[1] > DISPLAY_HEIGHT) - task->data[1] = DISPLAY_HEIGHT; - sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); - if (task->data[1] == DISPLAY_HEIGHT) + if (task->tGrowSpeed < 1024) + task->tGrowSpeed += 128; + if (task->tRadius < DISPLAY_HEIGHT) + task->tRadius += task->tGrowSpeed >> 8; + if (task->tRadius > DISPLAY_HEIGHT) + task->tRadius = DISPLAY_HEIGHT; + SetCircularMask(gScanlineEffectRegBuffers[0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, task->tRadius); + if (task->tRadius == DISPLAY_HEIGHT) { - task->tFuncState = 1; + task->tFlag = TRUE; FadeScreenBlack(); } else @@ -2910,73 +3064,89 @@ static bool8 Blackhole1_Func3(struct Task *task) return FALSE; } -static bool8 Blackhole1_Func2(struct Task *task) +static bool8 Blackhole_Vibrate(struct Task *task) { sTransitionData->VBlank_DMA = FALSE; - if (task->tFuncState == 0) + if (task->tFlag == FALSE) { - task->tFuncState++; - task->data[1] = 0x30; - task->data[6] = 0; + task->tFlag++; + task->tRadius = 48; + task->tVibrateId = 0; } - task->data[1] += gUnknown_085C8C80[task->data[6]]; - task->data[6] = (task->data[6] + 1) % 2; - sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); - if (task->data[1] < 9) + task->tRadius += sBlackhole_Vibrations[task->tVibrateId]; + task->tVibrateId = (task->tVibrateId + 1) % (int)ARRAY_COUNT(sBlackhole_Vibrations); + SetCircularMask(gScanlineEffectRegBuffers[0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, task->tRadius); + if (task->tRadius < 9) { task->tState++; - task->tFuncState = 0; + task->tFlag = FALSE; } sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Blackhole2_Func2(struct Task *task) +static bool8 BlackholePulsate_Main(struct Task *task) { u16 index; // should be s16 I think s16 amplitude; sTransitionData->VBlank_DMA = FALSE; - if (task->tFuncState == 0) + if (task->tFlag == FALSE) { - task->tFuncState++; - task->data[5] = 2; - task->data[6] = 2; + task->tFlag++; + task->tSinIndex = 2; + task->tAmplitude = 2; } - if (task->data[1] > DISPLAY_HEIGHT) - task->data[1] = DISPLAY_HEIGHT; - sub_814A014(gScanlineEffectRegBuffers[0], 120, 80, task->data[1]); - if (task->data[1] == DISPLAY_HEIGHT) + if (task->tRadius > DISPLAY_HEIGHT) + task->tRadius = DISPLAY_HEIGHT; + + SetCircularMask(gScanlineEffectRegBuffers[0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, task->tRadius); + if (task->tRadius == DISPLAY_HEIGHT) { DmaStop(0); FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(task->func)); } - index = task->data[5]; - if ((task->data[5] & 0xFF) <= 128) + index = task->tSinIndex; + if ((task->tSinIndex & 0xFF) <= 128) { - amplitude = task->data[6]; - task->data[5] += 8; + amplitude = task->tAmplitude; + task->tSinIndex += 8; } else { - amplitude = task->data[6] - 1; - task->data[5] += 16; + amplitude = task->tAmplitude - 1; + task->tSinIndex += 16; } - task->data[1] += Sin(index & 0xFF, amplitude); + task->tRadius += Sin(index & 0xFF, amplitude); + + if (task->tRadius <= 0) + task->tRadius = 1; - if (task->data[1] <= 0) - task->data[1] = 1; - if (task->data[5] > 0xFE) - task->data[5] >>= 8, task->data[6]++; + if (task->tSinIndex >= 0xFF) + { + task->tSinIndex >>= 8; + task->tAmplitude++; + } sTransitionData->VBlank_DMA++; return FALSE; } +#undef tRadius +#undef tGrowSpeed +#undef tSinIndex +#undef tVibrateId +#undef tAmplitude +#undef tFlag + +//--------------------------------- +// B_TRANSITION_RECTANGULAR_SPIRAL +//--------------------------------- + static void Task_RectangularSpiral(u8 taskId) { while (sRectangularSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -2989,40 +3159,44 @@ static bool8 RectangularSpiral_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sShrinkingBoxTileset, tileset, 0x20); CpuCopy16(sShrinkingBoxTileset + 0x70, tileset + 0x20, 0x20); - CpuFill16(0xF000, tilemap, BG_SCREEN_SIZE); + CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE); LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->data[3] = 1; task->tState++; - sRectangularSpiralTransition[0].field_0 = 0; - sRectangularSpiralTransition[0].field_2 = -1; - sRectangularSpiralTransition[0].field_4 = 1; - sRectangularSpiralTransition[0].field_6 = 308; - sRectangularSpiralTransition[0].field_8 = 0; - - sRectangularSpiralTransition[1].field_0 = 0; - sRectangularSpiralTransition[1].field_2 = -1; - sRectangularSpiralTransition[1].field_4 = 1; - sRectangularSpiralTransition[1].field_6 = 308; - sRectangularSpiralTransition[1].field_8 = 0; - - sRectangularSpiralTransition[2].field_0 = 0; - sRectangularSpiralTransition[2].field_2 = -3; - sRectangularSpiralTransition[2].field_4 = 1; - sRectangularSpiralTransition[2].field_6 = 307; - sRectangularSpiralTransition[2].field_8 = 0; - - sRectangularSpiralTransition[3].field_0 = 0; - sRectangularSpiralTransition[3].field_2 = -3; - sRectangularSpiralTransition[3].field_4 = 1; - sRectangularSpiralTransition[3].field_6 = 307; - sRectangularSpiralTransition[3].field_8 = 0; + // Top left + sRectangularSpiralLines[0].state = 0; + sRectangularSpiralLines[0].position = -1; + sRectangularSpiralLines[0].moveIdx = 1; + sRectangularSpiralLines[0].skipPosition = 308; + sRectangularSpiralLines[0].field_8 = 0; + + // Bottom right + sRectangularSpiralLines[1].state = 0; + sRectangularSpiralLines[1].position = -1; + sRectangularSpiralLines[1].moveIdx = 1; + sRectangularSpiralLines[1].skipPosition = 308; + sRectangularSpiralLines[1].field_8 = 0; + + // Top right + sRectangularSpiralLines[2].state = 0; + sRectangularSpiralLines[2].position = -3; + sRectangularSpiralLines[2].moveIdx = 1; + sRectangularSpiralLines[2].skipPosition = 307; + sRectangularSpiralLines[2].field_8 = 0; + + // Bottom left + sRectangularSpiralLines[3].state = 0; + sRectangularSpiralLines[3].position = -3; + sRectangularSpiralLines[3].moveIdx = 1; + sRectangularSpiralLines[3].skipPosition = 307; + sRectangularSpiralLines[3].field_8 = 0; return FALSE; } -static bool8 RectangularSpiral_Func2(struct Task *task) +static bool8 RectangularSpiral_Main(struct Task *task) { u16 *tilemap, *tileset; u8 i; @@ -3031,24 +3205,28 @@ static bool8 RectangularSpiral_Func2(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); + // Draw 2 tiles at a time for each spiral line for (i = 0; i < 2; i++) { - for (j = 0; j < ARRAY_COUNT(sRectangularSpiralTransition); j++) + for (j = 0; j < ARRAY_COUNT(sRectangularSpiralLines); j++) { - s16 var = 0, var2 = 0; - s32 var3 = 0; + s16 position = 0; + s16 x = 0, y = 0; - if (sub_8149048(gUnknown_085C8D38[j / 2], &sRectangularSpiralTransition[j])) + if (UpdateRectangularSpiralLine(sRectangularSpiral_MoveDataTables[j / 2], &sRectangularSpiralLines[j])) { + // The line moved to a new position, draw the tile. done = FALSE; - var = sRectangularSpiralTransition[j].field_2; + position = sRectangularSpiralLines[j].position; + + // Invert position for the two bottom lines if ((j % 2) == 1) - var = 0x27D - var; + position = 637 - position; - var2 = var % 32; - var3 = var / 32; + x = position % 32; + y = position / 32; - SET_TILEMAP_TILE(tilemap, var3, var2, 0xF002); + SET_TILE(tilemap, y, x, 2); } } } @@ -3066,69 +3244,77 @@ static bool8 RectangularSpiral_End(struct Task *task) return FALSE; } -static bool16 sub_8149048(const s16 * const *arg0, struct StructRectangularSpiral *arg1) +// Returns TRUE if a tile should be drawn, FALSE otherwise +static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, struct RectangularSpiralLine *line) { - const s16 *array = arg0[arg1->field_0]; - if (array[arg1->field_4] == -1) + const s16 *moveData = moveDataTable[line->state]; + if (moveData[line->moveIdx] == SPIRAL_END) return FALSE; - // ?? - sUnusedRectangularSpiralVar = array[0]; - sUnusedRectangularSpiralVar = array[1]; - sUnusedRectangularSpiralVar = array[2]; - sUnusedRectangularSpiralVar = array[3]; + // Presumably saving data for debug. + sDebug_RectangularSpiralData = moveData[0]; + sDebug_RectangularSpiralData = moveData[1]; + sDebug_RectangularSpiralData = moveData[2]; + sDebug_RectangularSpiralData = moveData[3]; - switch (array[0]) + switch (moveData[0]) { case 1: - arg1->field_2 += 0x1; + line->position += 1; break; case 2: - arg1->field_2 -= 0x1; + line->position -= 1; break; case 3: - arg1->field_2 -= 0x20; + line->position -= 32; break; case 4: - arg1->field_2 += 0x20; + line->position += 32; break; } - if (arg1->field_2 > 0x27F || array[arg1->field_4] == -1) + // Below check is never true. + // SPIRAL_END was already checked, and position is never >= 640 + if (line->position >= 640 || moveData[line->moveIdx] == SPIRAL_END) return FALSE; - if (arg1->field_8 == 0 && array[arg1->field_4] == -2) + if (line->field_8 == 0 && moveData[line->moveIdx] == SPIRAL_SKIP) { - arg1->field_8 = 1; - arg1->field_4 = 1; - arg1->field_2 = arg1->field_6; - arg1->field_0 = 4; + line->field_8 = 1; + line->moveIdx = 1; + line->position = line->skipPosition; + line->state = 4; } - if (arg1->field_2 == array[arg1->field_4]) + if (line->position == moveData[line->moveIdx]) { - (arg1->field_0)++; - if (arg1->field_8 == 1) + line->state++; + if (line->field_8 == 1) { - if (arg1->field_0 > 7) + if (line->state > 7) { - (arg1->field_4)++; - (arg1->field_0) = 4; + line->moveIdx++; + line->state = 4; } } else { - if (arg1->field_0 > 3) + if (line->state > 3) { - (arg1->field_4)++; - (arg1->field_0) = 0; + line->moveIdx++; + line->state = 0; } } } - return TRUE; } +//---------------------- +// B_TRANSITION_GROUDON +//---------------------- + +#define tTimer data[1] + static void Task_Groudon(u8 taskId) { while (sGroudon_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -3144,21 +3330,21 @@ static bool8 Groudon_Init(struct Task *task) LZ77UnCompVram(sGroudon_Tilemap, tilemap); task->tState++; - task->data[1] = 0; + task->tTimer = 0; return FALSE; } -static bool8 Groudon_PalettePulsate(struct Task *task) +static bool8 Groudon_PaletteFlash(struct Task *task) { - if (task->data[1] % 3 == 0) + if (task->tTimer % 3 == 0) { - u16 var = (task->data[1] % 30) / 3; - LoadPalette(sGroudon1_Palette + (var * 16), 0xF0, 0x20); + u16 offset = (task->tTimer % 30) / 3; + LoadPalette(&sGroudon1_Palette[offset * 16], 0xF0, 0x20); } - if (++task->data[1] > 58) + if (++task->tTimer > 58) { task->tState++; - task->data[1] = 0; + task->tTimer = 0; } return FALSE; @@ -3166,29 +3352,38 @@ static bool8 Groudon_PalettePulsate(struct Task *task) static bool8 Groudon_PaletteBrighten(struct Task *task) { - if (task->data[1] % 5 == 0) + if (task->tTimer % 5 == 0) { - s16 var = task->data[1] / 5; - LoadPalette(sGroudon2_Palette + (var * 16), 0xF0, 0x20); + s16 offset = task->tTimer / 5; + LoadPalette(&sGroudon2_Palette[offset * 16], 0xF0, 0x20); } - if (++task->data[1] > 68) + if (++task->tTimer > 68) { task->tState++; - task->data[1] = 0; + task->tTimer = 0; task->tEndDelay = 30; } return FALSE; } +#undef tTimer #undef tEndDelay +//----------------------- +// B_TRANSITION_RAYQUAZA +//----------------------- + +#define tTimer data[1] +#define tGrowSpeed data[2] // Shared from B_TRANSITION_BLACKHOLE +#define tFlag data[7] // Shared from B_TRANSITION_BLACKHOLE + static void Task_Rayquaza(u8 taskId) { while (sRayquaza_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Rayquaza_Func3(struct Task *task) +static bool8 Rayquaza_Init(struct Task *task) { u16 *tilemap, *tileset; u16 i; @@ -3201,9 +3396,9 @@ static bool8 Rayquaza_Func3(struct Task *task) CpuFill16(0, tilemap, BG_SCREEN_SIZE); CpuCopy16(sRayquaza_Tileset, tileset, 0x2000); - sTransitionData->field_20 = 0; + sTransitionData->counter = 0; task->tState++; - LoadPalette(sRayquaza_Palette + 0x50, 0xF0, 0x20); + LoadPalette(&sRayquaza_Palette[0x50], 0xF0, 0x20); for (i = 0; i < DISPLAY_HEIGHT; i++) { @@ -3215,7 +3410,7 @@ static bool8 Rayquaza_Func3(struct Task *task) return FALSE; } -static bool8 Rayquaza_Func4(struct Task *task) +static bool8 Rayquaza_SetGfx(struct Task *task) { u16 *tilemap, *tileset; @@ -3225,47 +3420,46 @@ static bool8 Rayquaza_Func4(struct Task *task) return FALSE; } -static bool8 Rayquaza_Func5(struct Task *task) +static bool8 Rayquaza_PaletteFlash(struct Task *task) { - if ((task->data[1] % 4) == 0) + if ((task->tTimer % 4) == 0) { - u16 value = task->data[1] / 4; + u16 value = task->tTimer / 4; const u16 *palPtr = &sRayquaza_Palette[(value + 5) * 16]; LoadPalette(palPtr, 0xF0, 0x20); } - if (++task->data[1] > 40) + if (++task->tTimer > 40) { task->tState++; - task->data[1] = 0; + task->tTimer = 0; } return FALSE; } -static bool8 Rayquaza_Func6(struct Task *task) +static bool8 Rayquaza_FadeToBlack(struct Task *task) { - if (++task->data[1] > 20) + if (++task->tTimer > 20) { task->tState++; - task->data[1] = 0; + task->tTimer = 0; BeginNormalPaletteFade(PALETTES_OBJECTS | (1 << 15), 2, 0, 16, RGB_BLACK); } return FALSE; } -static bool8 Rayquaza_Func7(struct Task *task) +static bool8 Rayquaza_WaitFade(struct Task *task) { if (!gPaletteFade.active) { - sTransitionData->field_20 = 1; + sTransitionData->counter = 1; task->tState++; } - return FALSE; } -static bool8 Rayquaza_Func8(struct Task *task) +static bool8 Rayquaza_SetBlack(struct Task *task) { BlendPalettes(PALETTES_BG & ~(1 << 15), 8, RGB_BLACK); BlendPalettes(PALETTES_OBJECTS | (1 << 15), 0, RGB_BLACK); @@ -3274,15 +3468,15 @@ static bool8 Rayquaza_Func8(struct Task *task) return FALSE; } -static bool8 Rayquaza_Func9(struct Task *task) +static bool8 Rayquaza_TriRing(struct Task *task) { - if ((task->data[1] % 3) == 0) + if ((task->tTimer % 3) == 0) { - u16 value = task->data[1] / 3; + u16 value = task->tTimer / 3; const u16 *palPtr = &sRayquaza_Palette[(value + 0) * 16]; LoadPalette(palPtr, 0xF0, 0x20); } - if (++task->data[1] >= 40) + if (++task->tTimer >= 40) { u16 i; @@ -3294,10 +3488,10 @@ static bool8 Rayquaza_Func9(struct Task *task) for (i = 0; i < DISPLAY_HEIGHT; i++) gScanlineEffectRegBuffers[1][i] = 0; - SetVBlankCallback(VBlankCB1_BigPokeball); + SetVBlankCallback(VBlankCB_CircularMask); task->tState++; - task->data[2] = 0x100; - task->tFuncState = 0; + task->tGrowSpeed = 1 << 8; + task->tFlag = FALSE; ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON); } @@ -3311,9 +3505,9 @@ static void VBlankCB_Rayquaza(void) DmaStop(0); VBlankCB_BattleTransition(); - if (sTransitionData->field_20 == 0) + if (sTransitionData->counter == 0) dmaSrc = gScanlineEffectRegBuffers[0]; - else if (sTransitionData->field_20 == 1) + else if (sTransitionData->counter == 1) dmaSrc = gScanlineEffectRegBuffers[1]; else dmaSrc = gScanlineEffectRegBuffers[0]; @@ -3321,12 +3515,28 @@ static void VBlankCB_Rayquaza(void) DmaSet(0, dmaSrc, ®_BG0VOFS, B_TRANS_DMA_FLAGS); } -static void Task_WhiteFade(u8 taskId) +#undef tTimer +#undef tGrowSpeed +#undef tFlag + +//------------------------------ +// B_TRANSITION_WHITE_BARS_FADE +//------------------------------ + +#define sFade data[0] +#define sFinished data[1] +#define sDestroyAttempts data[2] +#define sDelay data[5] +#define sIsMainSprite data[6] + +#define FADE_TARGET (16 << 8) + +static void Task_WhiteBarsFade(u8 taskId) { - while (sWhiteFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sWhiteBarsFade_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 WhiteFade_Init(struct Task *task) +static bool8 WhiteBarsFade_Init(struct Task *task) { u16 i; @@ -3346,37 +3556,40 @@ static bool8 WhiteFade_Init(struct Task *task) } EnableInterrupts(INTR_FLAG_HBLANK); - SetHBlankCallback(HBlankCB_WhiteFade); - SetVBlankCallback(VBlankCB0_WhiteFade); + SetHBlankCallback(HBlankCB_WhiteBarsFade); + SetVBlankCallback(VBlankCB_WhiteBarsFade); task->tState++; return FALSE; } -static bool8 WhiteFade_Func2(struct Task *task) +static bool8 WhiteBarsFade_StartBars(struct Task *task) { s16 i, posY; - s16 arr1[ARRAY_COUNT(sUnknown_085C8DA0)]; + s16 delays[ARRAY_COUNT(sWhiteBarsFade_StartDelays)]; struct Sprite *sprite; + memcpy(delays, sWhiteBarsFade_StartDelays, sizeof(sWhiteBarsFade_StartDelays)); - memcpy(arr1, sUnknown_085C8DA0, sizeof(sUnknown_085C8DA0)); - for (i = 0, posY = 0; i < 8; i++, posY += 20) + for (i = 0, posY = 0; i < NUM_WHITE_BARS; i++, posY += DISPLAY_HEIGHT / NUM_WHITE_BARS) { - sprite = &gSprites[CreateInvisibleSprite(sub_8149864)]; + sprite = &gSprites[CreateInvisibleSprite(SpriteCB_WhiteBarFade)]; sprite->x = DISPLAY_WIDTH; sprite->y = posY; - sprite->data[5] = arr1[i]; + sprite->sDelay = delays[i]; } - sprite->data[6]++; + + // Set on one sprite only. This one will enable the DMA + // copy in VBlank and wait for the others to destroy. + sprite->sIsMainSprite++; task->tState++; return FALSE; } -static bool8 WhiteFade_Func3(struct Task *task) +static bool8 WhiteBarsFade_WaitBars(struct Task *task) { sTransitionData->VBlank_DMA = 0; - if (sTransitionData->field_20 > 7) + if (sTransitionData->counter >= NUM_WHITE_BARS) { BlendPalettes(PALETTES_ALL, 16, RGB_WHITE); task->tState++; @@ -3384,7 +3597,7 @@ static bool8 WhiteFade_Func3(struct Task *task) return FALSE; } -static bool8 WhiteFade_Func4(struct Task *task) +static bool8 WhiteBarsFade_BlendToBlack(struct Task *task) { sTransitionData->VBlank_DMA = 0; @@ -3397,23 +3610,23 @@ static bool8 WhiteFade_Func4(struct Task *task) sTransitionData->BLDCNT = 0xFF; sTransitionData->WININ = WININ_WIN0_ALL; - SetVBlankCallback(VBlankCB1_WhiteFade); + SetVBlankCallback(VBlankCB_WhiteBarsFade_Blend); task->tState++; return FALSE; } -static bool8 WhiteFade_End(struct Task *task) +static bool8 WhiteBarsFade_End(struct Task *task) { if (++sTransitionData->BLDY > 16) { FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Task_WhiteFade)); + DestroyTask(FindTaskIdByFunc(Task_WhiteBarsFade)); } return FALSE; } -static void VBlankCB0_WhiteFade(void) +static void VBlankCB_WhiteBarsFade(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -3426,7 +3639,7 @@ static void VBlankCB0_WhiteFade(void) DmaSet(0, &gScanlineEffectRegBuffers[1][DISPLAY_HEIGHT], ®_WIN0H, B_TRANS_DMA_FLAGS); } -static void VBlankCB1_WhiteFade(void) +static void VBlankCB_WhiteBarsFade_Blend(void) { VBlankCB_BattleTransition(); REG_BLDY = sTransitionData->BLDY; @@ -3437,17 +3650,17 @@ static void VBlankCB1_WhiteFade(void) REG_WIN0V = sTransitionData->WIN0V; } -static void HBlankCB_WhiteFade(void) +static void HBlankCB_WhiteBarsFade(void) { REG_BLDY = gScanlineEffectRegBuffers[1][REG_VCOUNT]; } -static void sub_8149864(struct Sprite *sprite) +static void SpriteCB_WhiteBarFade(struct Sprite *sprite) { - if (sprite->data[5]) + if (sprite->sDelay) { - sprite->data[5]--; - if (sprite->data[6]) + sprite->sDelay--; + if (sprite->sIsMainSprite) sTransitionData->VBlank_DMA = 1; } else @@ -3455,36 +3668,51 @@ static void sub_8149864(struct Sprite *sprite) u16 i; u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->y]; u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + DISPLAY_HEIGHT]; - for (i = 0; i < 20; i++) + for (i = 0; i < DISPLAY_HEIGHT / NUM_WHITE_BARS; i++) { - ptr1[i] = sprite->data[0] >> 8; - ptr2[i] = (u8)(sprite->x); + ptr1[i] = sprite->sFade >> 8; + ptr2[i] = (u8)sprite->x; } - if (sprite->x == 0 && sprite->data[0] == 0x1000) - sprite->data[1] = 1; + if (sprite->x == 0 && sprite->sFade == FADE_TARGET) + sprite->sFinished = TRUE; sprite->x -= 16; - sprite->data[0] += 0x80; + sprite->sFade += FADE_TARGET / 32; if (sprite->x < 0) sprite->x = 0; - if (sprite->data[0] > 0x1000) - sprite->data[0] = 0x1000; + if (sprite->sFade > FADE_TARGET) + sprite->sFade = FADE_TARGET; - if (sprite->data[6]) + if (sprite->sIsMainSprite) sTransitionData->VBlank_DMA = 1; - if (sprite->data[1]) + if (sprite->sFinished) { - if (sprite->data[6] == 0 || (sTransitionData->field_20 > 6 && sprite->data[2]++ > 7)) + // If not the main sprite, destroy self. Otherwise, wait until the + // others have destroyed themselves, or until enough time has elapsed. + if (!sprite->sIsMainSprite || (sTransitionData->counter >= NUM_WHITE_BARS - 1 && sprite->sDestroyAttempts++ > 7)) { - sTransitionData->field_20++; + sTransitionData->counter++; DestroySprite(sprite); } } } } +#undef sFade +#undef sFinished +#undef sDestroyAttempts +#undef sDelay +#undef sIsMainSprite + +//--------------------------- +// B_TRANSITION_GRID_SQUARES +//--------------------------- + +#define tDelay data[1] +#define tShrinkStage data[2] + static void Task_GridSquares(u8 taskId) { while (sGridSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -3496,37 +3724,37 @@ static bool8 GridSquares_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuSet(sShrinkingBoxTileset, tileset, 16); - CpuFill16(0xF000, tilemap, BG_SCREEN_SIZE); + CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE); LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } -static bool8 GridSquares_Func2(struct Task *task) +static bool8 GridSquares_Main(struct Task *task) { u16* tileset; - if (task->data[1] == 0) + if (task->tDelay == 0) { GetBg0TilemapDst(&tileset); - task->data[1] = 3; - task->data[2]++; - CpuSet(sShrinkingBoxTileset + (task->data[2] * 8), tileset, 16); - if (task->data[2] > 13) + task->tDelay = 3; + task->tShrinkStage++; + CpuSet(&sShrinkingBoxTileset[task->tShrinkStage * 8], tileset, 16); + if (task->tShrinkStage > 13) { task->tState++; - task->data[1] = 16; + task->tDelay = 16; } } - task->data[1]--; + task->tDelay--; return FALSE; } static bool8 GridSquares_End(struct Task *task) { - if (--task->data[1] == 0) + if (--task->tDelay == 0) { FadeScreenBlack(); DestroyTask(FindTaskIdByFunc(Task_GridSquares)); @@ -3534,12 +3762,23 @@ static bool8 GridSquares_End(struct Task *task) return FALSE; } -static void Task_Shards(u8 taskId) +#undef tDelay +#undef tShrinkStage + +//--------------------------- +// B_TRANSITION_ANGLED_WIPES +//--------------------------- + +#define tWipeId data[1] +#define tDir data[2] +#define tDelay data[3] + +static void Task_AngledWipes(u8 taskId) { - while (sShards_Funcs[gTasks[taskId].tState](&gTasks[taskId])); + while (sAngledWipes_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Shards_Init(struct Task *task) +static bool8 AngledWipes_Init(struct Task *task) { u16 i; @@ -3554,85 +3793,89 @@ static bool8 Shards_Init(struct Task *task) gScanlineEffectRegBuffers[0][i] = DISPLAY_WIDTH; CpuSet(gScanlineEffectRegBuffers[0], gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT); - SetVBlankCallback(VBlankCB_Shards); + SetVBlankCallback(VBlankCB_AngledWipes); task->tState++; return TRUE; } -static bool8 Shards_Func2(struct Task *task) +static bool8 AngledWipes_SetWipeData(struct Task *task) { - sub_814A1AC(sTransitionData->data, - sUnknown_085C8DD0[task->data[1]][0], - sUnknown_085C8DD0[task->data[1]][1], - sUnknown_085C8DD0[task->data[1]][2], - sUnknown_085C8DD0[task->data[1]][3], - 1, 1); - task->data[2] = sUnknown_085C8DD0[task->data[1]][4]; + InitBlackWipe(sTransitionData->data, + sAngledWipes_MoveData[task->tWipeId][0], + sAngledWipes_MoveData[task->tWipeId][1], + sAngledWipes_MoveData[task->tWipeId][2], + sAngledWipes_MoveData[task->tWipeId][3], + 1, 1); + task->tDir = sAngledWipes_MoveData[task->tWipeId][4]; task->tState++; return TRUE; } -static bool8 Shards_Func3(struct Task *task) +static bool8 AngledWipes_DoWipe(struct Task *task) { s16 i; - bool8 nextFunc; + bool8 finished; sTransitionData->VBlank_DMA = 0; - for (i = 0, nextFunc = FALSE; i < 16; i++) + for (i = 0, finished = FALSE; i < 16; i++) { - s16 r3 = gScanlineEffectRegBuffers[0][sTransitionData->data[3]] >> 8; - s16 r4 = gScanlineEffectRegBuffers[0][sTransitionData->data[3]] & 0xFF; - if (task->data[2] == 0) + s16 r3 = gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] >> 8; + s16 r4 = gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] & 0xFF; + if (task->tDir == 0) { - if (r3 < sTransitionData->data[2]) - r3 = sTransitionData->data[2]; + // Moving down + if (r3 < sTransitionData->tWipeCurrX) + r3 = sTransitionData->tWipeCurrX; if (r3 > r4) r3 = r4; } else { - if (r4 > sTransitionData->data[2]) - r4 = sTransitionData->data[2]; + // Moving up + if (r4 > sTransitionData->tWipeCurrX) + r4 = sTransitionData->tWipeCurrX; if (r4 <= r3) r4 = r3; } - gScanlineEffectRegBuffers[0][sTransitionData->data[3]] = (r4) | (r3 << 8); - if (nextFunc) + gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = (r4) | (r3 << 8); + if (finished) { task->tState++; break; } - else - nextFunc = sub_814A228(sTransitionData->data, 1, 1); + finished = UpdateBlackWipe(sTransitionData->data, TRUE, TRUE); } sTransitionData->VBlank_DMA++; return FALSE; } -static bool8 Shards_Func4(struct Task *task) +static bool8 AngledWipes_TryEnd(struct Task *task) { - if (++task->data[1] < 7) + if (++task->tWipeId < NUM_ANGLED_WIPES) { + // Continue with next wipe task->tState++; - task->data[3] = sUnknown_085C8E16[task->data[1] - 1]; + task->tDelay = sAngledWipes_EndDelays[task->tWipeId - 1]; return TRUE; } else { + // End transition DmaStop(0); FadeScreenBlack(); - DestroyTask(FindTaskIdByFunc(Task_Shards)); + DestroyTask(FindTaskIdByFunc(Task_AngledWipes)); return FALSE; } } -static bool8 Shards_Func5(struct Task *task) +static bool8 AngledWipes_StartNext(struct Task *task) { - if (--task->data[3] == 0) + if (--task->tDelay == 0) { + // Return to AngledWipes_SetWipeData task->tState = 1; return TRUE; } @@ -3640,7 +3883,7 @@ static bool8 Shards_Func5(struct Task *task) return FALSE; } -static void VBlankCB_Shards(void) +static void VBlankCB_AngledWipes(void) { DmaStop(0); VBlankCB_BattleTransition(); @@ -3653,20 +3896,31 @@ static void VBlankCB_Shards(void) DmaSet(0, gScanlineEffectRegBuffers[1], ®_WIN0H, B_TRANS_DMA_FLAGS); } -#undef tFuncState -#undef tOpponentSpriteId -#undef tPlayerSpriteId -#undef tMugshotId +#undef tWipeId +#undef tDir +#undef tDelay + +//----------------------------------- +// Transition intro +//----------------------------------- -static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4) +#define tFadeToGrayDelay data[1] +#define tFadeFromGrayDelay data[2] +#define tNumFades data[3] +#define tFadeToGrayIncrement data[4] +#define tFadeFromGrayIncrement data[5] +#define tDelayTimer data[6] +#define tBlend data[7] + +static void CreateIntroTask(s16 fadeToGrayDelay, s16 fadeFromGrayDelay, s16 numFades, s16 fadeToGrayIncrement, s16 fadeFromGrayIncrement) { u8 taskId = CreateTask(Task_BattleTransition_Intro, 3); - gTasks[taskId].data[1] = a0; - gTasks[taskId].data[2] = a1; - gTasks[taskId].data[3] = a2; - gTasks[taskId].data[4] = a3; - gTasks[taskId].data[5] = a4; - gTasks[taskId].data[6] = a0; + gTasks[taskId].tFadeToGrayDelay = fadeToGrayDelay; + gTasks[taskId].tFadeFromGrayDelay = fadeFromGrayDelay; + gTasks[taskId].tNumFades = numFades; + gTasks[taskId].tFadeToGrayIncrement = fadeToGrayIncrement; + gTasks[taskId].tFadeFromGrayIncrement = fadeFromGrayIncrement; + gTasks[taskId].tDelayTimer = fadeToGrayDelay; } static bool8 IsIntroTaskDone(void) @@ -3682,47 +3936,64 @@ void Task_BattleTransition_Intro(u8 taskId) while (sTransitionIntroFuncs[gTasks[taskId].tState](&gTasks[taskId])); } -static bool8 Transition_Intro_1(struct Task *task) +static bool8 TransitionIntro_FadeToGray(struct Task *task) { - if (task->data[6] == 0 || --task->data[6] == 0) + if (task->tDelayTimer == 0 || --task->tDelayTimer == 0) { - task->data[6] = task->data[1]; - task->data[7] += task->data[4]; - if (task->data[7] > 16) - task->data[7] = 16; - BlendPalettes(PALETTES_ALL, task->data[7], RGB(11, 11, 11)); + task->tDelayTimer = task->tFadeToGrayDelay; + task->tBlend += task->tFadeToGrayIncrement; + if (task->tBlend > 16) + task->tBlend = 16; + BlendPalettes(PALETTES_ALL, task->tBlend, RGB(11, 11, 11)); } - if (task->data[7] > 15) + if (task->tBlend >= 16) { + // Fade to gray complete, start fade back task->tState++; - task->data[6] = task->data[2]; + task->tDelayTimer = task->tFadeFromGrayDelay; } return FALSE; } -static bool8 Transition_Intro_2(struct Task *task) +static bool8 TransitionIntro_FadeFromGray(struct Task *task) { - if (task->data[6] == 0 || --task->data[6] == 0) + if (task->tDelayTimer == 0 || --task->tDelayTimer == 0) { - task->data[6] = task->data[2]; - task->data[7] -= task->data[5]; - if (task->data[7] < 0) - task->data[7] = 0; - BlendPalettes(PALETTES_ALL, task->data[7], RGB(11, 11, 11)); + task->tDelayTimer = task->tFadeFromGrayDelay; + task->tBlend -= task->tFadeFromGrayIncrement; + if (task->tBlend < 0) + task->tBlend = 0; + BlendPalettes(PALETTES_ALL, task->tBlend, RGB(11, 11, 11)); } - if (task->data[7] == 0) + if (task->tBlend == 0) { - if (--task->data[3] == 0) + if (--task->tNumFades == 0) + { + // All fades done, end intro DestroyTask(FindTaskIdByFunc(Task_BattleTransition_Intro)); + } else { - task->data[6] = task->data[1]; + // Fade from gray complete, start new fade + task->tDelayTimer = task->tFadeToGrayDelay; task->tState = 0; } } return FALSE; } +#undef tFadeToGrayDelay +#undef tFadeFromGrayDelay +#undef tNumFades +#undef tFadeToGrayIncrement +#undef tFadeFromGrayIncrement +#undef tDelayTimer +#undef tBlend + +//----------------------------------- +// General transition functions +//----------------------------------- + static void InitTransitionData(void) { memset(sTransitionData, 0, sizeof(*sTransitionData)); @@ -3740,7 +4011,7 @@ static void GetBg0TilemapDst(u16 **tileset) { u16 charBase = REG_BG0CNT >> 2; charBase <<= 14; - *tileset = (u16*)(VRAM + charBase); + *tileset = (u16*)(BG_VRAM + charBase); } void GetBg0TilesDst(u16 **tilemap, u16 **tileset) @@ -3751,8 +4022,8 @@ void GetBg0TilesDst(u16 **tilemap, u16 **tileset) screenBase <<= 11; charBase <<= 14; - *tilemap = (u16*)(VRAM + screenBase); - *tileset = (u16*)(VRAM + charBase); + *tilemap = (u16*)(BG_VRAM + screenBase); + *tileset = (u16*)(BG_VRAM + charBase); } static void FadeScreenBlack(void) @@ -3767,126 +4038,151 @@ static void SetSinWave(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, array[i] = sinAdd + Sin(index & 0xFF, amplitude); } -static void sub_814A014(u16 *array, s16 x, s16 y, s16 amplitude) +static void SetCircularMask(u16 *buffer, s16 centerX, s16 centerY, s16 radius) { s16 i; - memset(array, 10, DISPLAY_HEIGHT * sizeof(s16)); + memset(buffer, 10, DISPLAY_HEIGHT * sizeof(u16)); for (i = 0; i < 64; i++) { s16 sinResult, cosResult; - s16 toStoreOrr, r2, r3, toStore, r7, r8; - - sinResult = Sin(i, amplitude); - cosResult = Cos(i, amplitude); - - toStoreOrr = x - sinResult; - toStore = x + sinResult; - r7 = y - cosResult; - r8 = y + cosResult; - - if (toStoreOrr < 0) - toStoreOrr = 0; - if (toStore > DISPLAY_WIDTH) - toStore = DISPLAY_WIDTH; - if (r7 < 0) - r7 = 0; - if (r8 > DISPLAY_HEIGHT - 1) - r8 = DISPLAY_HEIGHT - 1; - - toStore |= (toStoreOrr << 8); - array[r7] = toStore; - array[r8] = toStore; - - cosResult = Cos(i + 1, amplitude); - r3 = y - cosResult; - r2 = y + cosResult; - - if (r3 < 0) - r3 = 0; - if (r2 > DISPLAY_HEIGHT - 1) - r2 = DISPLAY_HEIGHT - 1; - - while (r7 > r3) - array[--r7] = toStore; - while (r7 < r3) - array[++r7] = toStore; - - while (r8 > r2) - array[--r8] = toStore; - while (r8 < r2) - array[++r8] = toStore; + s16 drawXLeft, drawYBottNext, drawYTopNext, drawX, drawYTop, drawYBott; + + sinResult = Sin(i, radius); + cosResult = Cos(i, radius); + + drawXLeft = centerX - sinResult; + drawX = centerX + sinResult; + drawYTop = centerY - cosResult; + drawYBott = centerY + cosResult; + + if (drawXLeft < 0) + drawXLeft = 0; + if (drawX > DISPLAY_WIDTH) + drawX = DISPLAY_WIDTH; + if (drawYTop < 0) + drawYTop = 0; + if (drawYBott > DISPLAY_HEIGHT - 1) + drawYBott = DISPLAY_HEIGHT - 1; + + drawX |= (drawXLeft << 8); + buffer[drawYTop] = drawX; + buffer[drawYBott] = drawX; + + cosResult = Cos(i + 1, radius); + drawYTopNext = centerY - cosResult; + drawYBottNext = centerY + cosResult; + + if (drawYTopNext < 0) + drawYTopNext = 0; + if (drawYBottNext > DISPLAY_HEIGHT - 1) + drawYBottNext = DISPLAY_HEIGHT - 1; + + while (drawYTop > drawYTopNext) + buffer[--drawYTop] = drawX; + while (drawYTop < drawYTopNext) + buffer[++drawYTop] = drawX; + + while (drawYBott > drawYBottNext) + buffer[--drawYBott] = drawX; + while (drawYBott < drawYBottNext) + buffer[++drawYBott] = drawX; } } -static void sub_814A1AC(s16 *data, s16 a1, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6) +static void InitBlackWipe(s16 *data, s16 startX, s16 startY, s16 endX, s16 endY, s16 xMove, s16 yMove) { - data[0] = a1; - data[1] = a2; - data[2] = a1; - data[3] = a2; - data[4] = a3; - data[5] = a4; - data[6] = a5; - data[7] = a6; - data[8] = a3 - a1; - if (data[8] < 0) + tWipeStartX = startX; + tWipeStartY = startY; + tWipeCurrX = startX; + tWipeCurrY = startY; + tWipeEndX = endX; + tWipeEndY = endY; + tWipeXMove = xMove; + tWipeYMove = yMove; + tWipeXDist = endX - startX; + if (tWipeXDist < 0) { - data[8] = -data[8]; - data[6] = -a5; + // If end was less than start, reverse direction + tWipeXDist = -tWipeXDist; + tWipeXMove = -xMove; } - data[9] = a4 - a2; - if (data[9] < 0) + tWipeYDist = endY - startY; + if (tWipeYDist < 0) { - data[9] = -data[9]; - data[7] = -a6; + // If end was less than start, reverse direction + tWipeYDist = -tWipeYDist; + tWipeYMove = -yMove; } - data[10] = 0; + tWipeTemp = 0; } -static bool8 sub_814A228(s16 *data, bool8 a1, bool8 a2) +static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) { - u8 var; - if (data[8] > data[9]) + u8 numFinished; + + if (tWipeXDist > tWipeYDist) { - data[2] += data[6]; - data[10] += data[9]; - if (data[10] > data[8]) + // X has further to move, move it first + tWipeCurrX += tWipeXMove; + + // If it has been far enough since Y's + // last move then move it too + tWipeTemp += tWipeYDist; + if (tWipeTemp > tWipeXDist) { - data[3] += data[7]; - data[10] -= data[8]; + tWipeCurrY += tWipeYMove; + tWipeTemp -= tWipeXDist; } } else { - data[3] += data[7]; - data[10] += data[8]; - if (data[10] > data[9]) + // Y has further to move, move it first + tWipeCurrY += tWipeYMove; + + // If it has been far enough since X's + // last move then move it too + tWipeTemp += tWipeXDist; + if (tWipeTemp > tWipeYDist) { - data[2] += data[6]; - data[10] -= data[9]; + tWipeCurrX += tWipeXMove; + tWipeTemp -= tWipeYDist; } } - var = 0; - if ((data[6] > 0 && data[2] >= data[4]) || (data[6] < 0 && data[2] <= data[4])) + + numFinished = 0; + + // Has X coord reached end? + if ((tWipeXMove > 0 && tWipeCurrX >= tWipeEndX) + || (tWipeXMove < 0 && tWipeCurrX <= tWipeEndX)) { - var++; - if (a1) - data[2] = data[4]; + numFinished++; + if (xExact) + tWipeCurrX = tWipeEndX; } - if ((data[7] > 0 && data[3] >= data[5]) || (data[7] < 0 && data[3] <= data[5])) + + // Has Y coord reached end? + if ((tWipeYMove > 0 && tWipeCurrY >= tWipeEndY) + || (tWipeYMove < 0 && tWipeCurrY <= tWipeEndY)) { - var++; - if (a2) - data[3] = data[5]; + numFinished++; + if (yExact) + tWipeCurrY = tWipeEndY; } - if (var == 2) + // Return TRUE if both coords have reached end + if (numFinished == 2) return TRUE; else return FALSE; } +//----------------------------------- +// B_TRANSITION_FRONTIER_LOGO_WIGGLE +//----------------------------------- + +#define tAmplitude data[5] + static bool8 FrontierLogoWiggle_Init(struct Task *task) { u16 *tilemap, *tileset; @@ -3907,7 +4203,7 @@ static bool8 FrontierLogoWiggle_SetGfx(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierLogo_Tilemap, tilemap); - SetSinWave(gScanlineEffectRegBuffers[0], 0, task->data[4], 0x84, task->data[5], DISPLAY_HEIGHT); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->data[4], 0x84, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return TRUE; @@ -3918,6 +4214,20 @@ static void Task_FrontierLogoWiggle(u8 taskId) while (sFrontierLogoWiggle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } +#undef tAmplitude + +//--------------------------------- +// B_TRANSITION_FRONTIER_LOGO_WAVE +//--------------------------------- + +#define tSinVal data[1] +#define tAmplitudeVal data[2] +#define tTimer data[3] +#define tStartedFade data[4] +#define tBlendTarget2 data[5] +#define tBlendTarget1 data[6] +#define tSinDecrement data[7] + static void Task_FrontierLogoWave(u8 taskId) { while (sFrontierLogoWave_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -3930,13 +4240,13 @@ static bool8 FrontierLogoWave_Init(struct Task *task) InitTransitionData(); ScanlineEffect_Clear(); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); - task->data[2] = 0x2000; - task->data[1] = 0x7FFF; - task->data[5] = 0; - task->data[6] = 16; - task->data[7] = 2560; + task->tAmplitudeVal = 32 << 8; + task->tSinVal = 0x7FFF; + task->tBlendTarget2 = 0; + task->tBlendTarget1 = 16; + task->tSinDecrement = 2560; sTransitionData->BLDCNT = BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL; - sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->data[5], task->data[6]); + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); REG_BLDCNT = sTransitionData->BLDCNT; REG_BLDALPHA = sTransitionData->BLDALPHA; GetBg0TilesDst(&tilemap, &tileset); @@ -3978,50 +4288,54 @@ static bool8 FrontierLogoWave_Func3(struct Task *task) static bool8 FrontierLogoWave_Func4(struct Task *task) { u8 i; - u16 var6, amplitude, var8; + u16 sinVal, amplitude, sinSpread; sTransitionData->VBlank_DMA = FALSE; - amplitude = task->data[2] >> 8; - var6 = task->data[1]; - var8 = 384; + amplitude = task->tAmplitudeVal >> 8; + sinVal = task->tSinVal; + sinSpread = 384; - task->data[1] = var6 - task->data[7]; + task->tSinVal -= task->tSinDecrement; - if (task->data[3] >= 70) + if (task->tTimer >= 70) { - if (task->data[2] - 384 >= 0) - task->data[2] -= 384; + // Decrease amount logo moves up and down + // until it rests in the middle of the screen. + if (task->tAmplitudeVal - 384 >= 0) + task->tAmplitudeVal -= 384; else - task->data[2] = 0; + task->tAmplitudeVal = 0; } - if (task->data[3] >= 0 && task->data[3] % 3 == 0) + if (task->tTimer >= 0 && task->tTimer % 3 == 0) { - if (task->data[5] < 16) - task->data[5]++; - else if (task->data[6] > 0) - task->data[6]--; + // Blend logo into view + if (task->tBlendTarget2 < 16) + task->tBlendTarget2++; + else if (task->tBlendTarget1 > 0) + task->tBlendTarget1--; - sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->data[5], task->data[6]); + sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); } - for (i = 0; i < DISPLAY_HEIGHT; i++, var6 += var8) + // Move logo up and down + for (i = 0; i < DISPLAY_HEIGHT; i++, sinVal += sinSpread) { - s16 index = var6 / 256; + s16 index = sinVal / 256; gScanlineEffectRegBuffers[0][i] = sTransitionData->cameraY + Sin(index & 0xff, amplitude); } - if (++task->data[3] == 101) + if (++task->tTimer == 101) { - task->data[4]++; + task->tStartedFade++; BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } - if (task->data[4] != 0 && !gPaletteFade.active) + if (task->tStartedFade && !gPaletteFade.active) DestroyTask(FindTaskIdByFunc(Task_FrontierLogoWave)); - task->data[7] -= 17; + task->tSinDecrement -= 17; sTransitionData->VBlank_DMA++; return FALSE; } @@ -4042,6 +4356,30 @@ static void HBlankCB_FrontierLogoWave(void) REG_BG0VOFS = var; } +#undef tSinVal +#undef tAmplitudeVal +#undef tTimer +#undef tStartedFade +#undef tBlendTarget2 +#undef tBlendTarget1 +#undef tSinDecrement + +//---------------------------------------------------------------------- +// B_TRANSITION_FRONTIER_SQUARES, B_TRANSITION_FRONTIER_SQUARES_SCROLL, +// and B_TRANSITION_FRONTIER_SQUARES_SPIRAL +//---------------------------------------------------------------------- + +#define NUM_SQUARES_PER_ROW 7 +#define NUM_SQUARES_PER_COL 5 +#define SQUARE_SIZE 4 + +#define tPosX data[2] +#define tPosY data[3] +#define tRowPos data[4] +#define tShrinkState data[5] +#define tShrinkDelayTimer data[6] +#define tShrinkDelay data[7] + static void Task_FrontierSquares(u8 taskId) { while (sFrontierSquares_Funcs[gTasks[taskId].tState](&gTasks[taskId])); @@ -4070,42 +4408,46 @@ static bool8 FrontierSquares_Init(struct Task *task) CopyBgTilemapBufferToVram(0); LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); - task->data[2] = 1; - task->data[3] = 0; - task->data[4] = 0; - task->data[7] = 10; + task->tPosX = 1; + task->tPosY = 0; + task->tRowPos = 0; + task->tShrinkDelay = 10; task->tState++; return FALSE; } -static bool8 FrontierSquares_Func2(struct Task *task) +static bool8 FrontierSquares_Draw(struct Task *task) { - CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, 4, 4, task->data[2], task->data[3], 4, 4, 0xF, 0, 0); + CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, + SQUARE_SIZE, SQUARE_SIZE, + task->tPosX, task->tPosY, + SQUARE_SIZE, SQUARE_SIZE, + 15, 0, 0); CopyBgTilemapBufferToVram(0); - task->data[2] += 4; - if (++task->data[4] == 7) + task->tPosX += SQUARE_SIZE; + if (++task->tRowPos == NUM_SQUARES_PER_ROW) { - task->data[2] = 1; - task->data[3] += 4; - task->data[4] = 0; - if (task->data[3] > 19) + task->tPosX = 1; + task->tPosY += SQUARE_SIZE; + task->tRowPos = 0; + if (task->tPosY >= NUM_SQUARES_PER_COL * SQUARE_SIZE) task->tState++; } return FALSE; } -static bool8 FrontierSquares_Func3(struct Task *task) +static bool8 FrontierSquares_Shrink(struct Task *task) { u8 i; u16 *tilemap, *tileset; GetBg0TilesDst(&tilemap, &tileset); - if (task->data[6]++ >= task->data[7]) + if (task->tShrinkDelayTimer++ >= task->tShrinkDelay) { - switch (task->data[5]) + switch (task->tShrinkState) { case 0: for (i = 250; i < 255; i++) @@ -4131,13 +4473,20 @@ static bool8 FrontierSquares_Func3(struct Task *task) return FALSE; } - task->data[6] = 0; - task->data[5]++; + task->tShrinkDelayTimer = 0; + task->tShrinkState++; } return FALSE; } +#undef tPosX +#undef tPosY +#undef tRowPos +#undef tShrinkState +#undef tShrinkDelayTimer +#undef tShrinkDelay + static bool8 FrontierSquaresSpiral_Init(struct Task *task) { u16 *tilemap, *tileset; From 901cd476b65b9212032f21b4ff19f6e77154af4a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 29 Oct 2021 11:51:47 -0400 Subject: [PATCH 347/762] Fix incorrect arguments on CopyRectToBgTilemapBufferRect --- gflib/bg.c | 18 +++++++++--------- gflib/bg.h | 2 +- src/party_menu.c | 13 ++++++------- src/pokemon_storage_system.c | 8 ++++---- 4 files changed, 20 insertions(+), 21 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index fd72f2d24011..c3a4be1d46ba 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -950,7 +950,7 @@ void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u CopyRectToBgTilemapBufferRect(bg, src, 0, 0, rectWidth, rectHeight, destX, destY, rectWidth, rectHeight, palette, 0, 0); } -void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 unused, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, s16 palette1, s16 tileOffset) +void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2) { u16 screenWidth, screenHeight, screenSize; u16 var; @@ -966,28 +966,28 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 { case BG_TYPE_NORMAL: srcPtr = src + ((srcY * srcWidth) + srcX) * 2; - for (i = destX; i < (destX + rectWidth); i++) + for (i = destY; i < (destY + rectHeight); i++) { - for (j = srcHeight; j < (srcHeight + destY); j++) + for (j = destX; j < (destX + rectWidth); j++) { u16 index = GetTileMapIndexFromCoords(j, i, screenSize, screenWidth, screenHeight); - CopyTileMapEntry(srcPtr, sGpuBgConfigs2[bg].tilemap + (index * 2), rectHeight, palette1, tileOffset); + CopyTileMapEntry(srcPtr, sGpuBgConfigs2[bg].tilemap + (index * 2), palette1, tileOffset, palette2); srcPtr += 2; } - srcPtr += (srcWidth - destY) * 2; + srcPtr += (srcWidth - rectWidth) * 2; } break; case BG_TYPE_AFFINE: srcPtr = src + ((srcY * srcWidth) + srcX); var = GetBgMetricAffineMode(bg, 0x1); - for (i = destX; i < (destX + rectWidth); i++) + for (i = destY; i < (destY + rectHeight); i++) { - for (j = srcHeight; j < (srcHeight + destY); j++) + for (j = destX; j < (destX + rectWidth); j++) { - *(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + palette1; + *(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + tileOffset; srcPtr++; } - srcPtr += (srcWidth - destY); + srcPtr += (srcWidth - rectWidth); } break; } diff --git a/gflib/bg.h b/gflib/bg.h index 9335875b5956..b5d18d6d03ca 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -72,7 +72,7 @@ void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset); void CopyBgTilemapBufferToVram(u8 bg); void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height); void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette); -void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 unused, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, s16 palette1, s16 tileOffset); +void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2); void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height); void FillBgTilemapBufferRect(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height, u8 palette); void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 width, u8 height, u8 paletteSlot, s16 tileNumDelta); diff --git a/src/party_menu.c b/src/party_menu.c index 9829d62e9a8c..5ef8699fa946 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2792,7 +2792,7 @@ static void SwitchSelectedMons(u8 taskId) // returns FALSE if the slot has slid fully offscreen / back onscreen static bool8 TryMovePartySlot(s16 x, s16 width, u8 *leftMove, u8 *newX, u8 *newWidth) { - if ((x + width) < 0) + if (x + width < 0) return FALSE; if (x > 31) return FALSE; @@ -2807,7 +2807,7 @@ static bool8 TryMovePartySlot(s16 x, s16 width, u8 *leftMove, u8 *newX, u8 *newW { *leftMove = 0; *newX = x; - if ((x + width) > 31) + if (x + width > 31) *newWidth = 32 - x; else *newWidth = width; @@ -2818,14 +2818,13 @@ static bool8 TryMovePartySlot(s16 x, s16 width, u8 *leftMove, u8 *newX, u8 *newW static void MoveAndBufferPartySlot(const void *rectSrc, s16 x, s16 y, s16 width, s16 height, s16 dir) { - // The use of the dimension parameters here is a mess - u8 leftMove, newX, newWidth; // leftMove is used as a srcX, newX is used as both x and srcHeight, newWidth is used as both width and destY + u8 srcX, newX, newWidth; - if (TryMovePartySlot(x, width, &leftMove, &newX, &newWidth)) + if (TryMovePartySlot(x, width, &srcX, &newX, &newWidth)) { FillBgTilemapBufferRect_Palette0(0, 0, newX, y, newWidth, height); - if (TryMovePartySlot(x + dir, width, &leftMove, &newX, &newWidth)) - CopyRectToBgTilemapBufferRect(0, rectSrc, leftMove, 0, width, height, newX, y, newWidth, height, 17, 0, 0); + if (TryMovePartySlot(x + dir, width, &srcX, &newX, &newWidth)) + CopyRectToBgTilemapBufferRect(0, rectSrc, srcX, 0, width, height, newX, y, newWidth, height, 17, 0, 0); } } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index e18a6db76b8a..36d54123cd45 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -5437,16 +5437,16 @@ static bool32 WaitForWallpaperGfxLoad(void) static void DrawWallpaper(const void *tilemap, s8 direction, u8 offset) { - s16 var = offset * 256; - s16 var2 = (offset * 2) + 3; + s16 tileOffset = offset * 256; + s16 paletteNum = (offset * 2) + 3; s16 x = ((sStorage->bg2_X / 8 + 10) + (direction * 24)) & 0x3F; - CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 0x14, 0x12, x, 2, 0x14, 0x12, 0x11, var, var2); + CopyRectToBgTilemapBufferRect(2, tilemap, 0, 0, 20, 18, x, 2, 20, 18, 17, tileOffset, paletteNum); if (direction == 0) return; if (direction > 0) - x += 0x14; + x += 20; else x -= 4; From 9a1764f83e579e473eaa4885a4dea8d3ec744a63 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Sat, 30 Oct 2021 01:37:49 +0800 Subject: [PATCH 348/762] Label some animation index numbers --- include/constants/event_object_movement.h | 73 +++ src/cable_car.c | 13 +- src/data/object_events/object_event_anims.h | 470 ++++++++++---------- src/event_object_movement.c | 276 ++++++------ src/field_effect.c | 4 +- src/field_player_avatar.c | 2 +- 6 files changed, 454 insertions(+), 384 deletions(-) diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 13e91c41573b..4ffb869e4f13 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -245,4 +245,77 @@ #define MOVEMENT_ACTION_STEP_END 0xFE #define MOVEMENT_ACTION_NONE 0xFF +#define ANIM_STD_FACE_SOUTH 0 +#define ANIM_STD_FACE_NORTH 1 +#define ANIM_STD_FACE_WEST 2 +#define ANIM_STD_FACE_EAST 3 +#define ANIM_STD_GO_SOUTH 4 +#define ANIM_STD_GO_NORTH 5 +#define ANIM_STD_GO_WEST 6 +#define ANIM_STD_GO_EAST 7 +#define ANIM_STD_GO_FAST_SOUTH 8 +#define ANIM_STD_GO_FAST_NORTH 9 +#define ANIM_STD_GO_FAST_WEST 10 +#define ANIM_STD_GO_FAST_EAST 11 +#define ANIM_STD_GO_FASTER_SOUTH 12 +#define ANIM_STD_GO_FASTER_NORTH 13 +#define ANIM_STD_GO_FASTER_WEST 14 +#define ANIM_STD_GO_FASTER_EAST 15 +#define ANIM_STD_GO_FASTEST_SOUTH 16 +#define ANIM_STD_GO_FASTEST_NORTH 17 +#define ANIM_STD_GO_FASTEST_WEST 18 +#define ANIM_STD_GO_FASTEST_EAST 19 +#define ANIM_STD_COUNT 20 + +#define ANIM_RUN_SOUTH (ANIM_STD_COUNT + 0) +#define ANIM_RUN_NORTH (ANIM_STD_COUNT + 1) +#define ANIM_RUN_WEST (ANIM_STD_COUNT + 2) +#define ANIM_RUN_EAST (ANIM_STD_COUNT + 3) + +#define ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH (ANIM_STD_COUNT + 0) +#define ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH (ANIM_STD_COUNT + 1) +#define ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST (ANIM_STD_COUNT + 2) +#define ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST (ANIM_STD_COUNT + 3) +#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH (ANIM_STD_COUNT + 4) +#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH (ANIM_STD_COUNT + 5) +#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST (ANIM_STD_COUNT + 6) +#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST (ANIM_STD_COUNT + 7) +#define ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH (ANIM_STD_COUNT + 8) +#define ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH (ANIM_STD_COUNT + 9) +#define ANIM_STANDING_WHEELIE_BACK_WHEEL_WEST (ANIM_STD_COUNT + 10) +#define ANIM_STANDING_WHEELIE_BACK_WHEEL_EAST (ANIM_STD_COUNT + 11) +#define ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH (ANIM_STD_COUNT + 12) +#define ANIM_STANDING_WHEELIE_FRONT_WHEEL_NORTH (ANIM_STD_COUNT + 13) +#define ANIM_STANDING_WHEELIE_FRONT_WHEEL_WEST (ANIM_STD_COUNT + 14) +#define ANIM_STANDING_WHEELIE_FRONT_WHEEL_EAST (ANIM_STD_COUNT + 15) +#define ANIM_MOVING_WHEELIE_SOUTH (ANIM_STD_COUNT + 16) +#define ANIM_MOVING_WHEELIE_NORTH (ANIM_STD_COUNT + 17) +#define ANIM_MOVING_WHEELIE_WEST (ANIM_STD_COUNT + 18) +#define ANIM_MOVING_WHEELIE_EAST (ANIM_STD_COUNT + 19) + +#define ANIM_GET_ON_OFF_POKEMON_SOUTH (ANIM_STD_COUNT + 0) +#define ANIM_GET_ON_OFF_POKEMON_NORTH (ANIM_STD_COUNT + 1) +#define ANIM_GET_ON_OFF_POKEMON_WEST (ANIM_STD_COUNT + 2) +#define ANIM_GET_ON_OFF_POKEMON_EAST (ANIM_STD_COUNT + 3) + +#define ANIM_NURSE_BOW (ANIM_STD_COUNT + 0) + +#define ANIM_FIELD_MOVE 0 + +#define ANIM_STAY_STILL 0 +#define ANIM_REMOVE_OBSTACLE 1 + +#define ANIM_TAKE_OUT_ROD_SOUTH 0 +#define ANIM_TAKE_OUT_ROD_NORTH 1 +#define ANIM_TAKE_OUT_ROD_WEST 2 +#define ANIM_TAKE_OUT_ROD_EAST 3 +#define ANIM_PUT_AWAY_ROD_SOUTH 4 +#define ANIM_PUT_AWAY_ROD_NORTH 5 +#define ANIM_PUT_AWAY_ROD_WEST 6 +#define ANIM_PUT_AWAY_ROD_EAST 7 +#define ANIM_HOOKED_POKEMON_SOUTH 8 +#define ANIM_HOOKED_POKEMON_NORTH 9 +#define ANIM_HOOKED_POKEMON_WEST 10 +#define ANIM_HOOKED_POKEMON_EAST 11 + #endif // GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H diff --git a/src/cable_car.c b/src/cable_car.c index 39154cd1d8ed..c3e6564f8d83 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -17,6 +17,7 @@ #include "sound.h" #include "sprite.h" #include "task.h" +#include "constants/event_object_movement.h" #include "constants/event_objects.h" #include "constants/rgb.h" #include "constants/songs.h" @@ -902,15 +903,13 @@ static void CreateCableCarSprites(void) { if (rval % 2) { - // Do walking west anim - StartSpriteAnim(&gSprites[spriteId], 6); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_WEST); gSprites[spriteId].sSameDir = TRUE; gSprites[spriteId].y += 2; } else { - // Do walking east anim - StartSpriteAnim(&gSprites[spriteId], 7); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_EAST); gSprites[spriteId].sSameDir = FALSE; } } @@ -918,15 +917,13 @@ static void CreateCableCarSprites(void) { if (rval % 2) { - // Do walking east anim - StartSpriteAnim(&gSprites[spriteId], 7); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_EAST); gSprites[spriteId].sSameDir = TRUE; gSprites[spriteId].y += 2; } else { - // Do walking west anim - StartSpriteAnim(&gSprites[spriteId], 6); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_WEST); gSprites[spriteId].sSameDir = FALSE; } } diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index a66d634b0764..a5fb41462878 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -796,99 +796,100 @@ static const union AnimCmd sAnim_HoOhStayStill[] = }; static const union AnimCmd *const sAnimTable_Inanimate[] = { - sAnim_StayStill, + [ANIM_STAY_STILL] = sAnim_StayStill, }; static const union AnimCmd *const sAnimTable_QuintyPlump[] = { - sAnim_QuintyPlumpFaceSouth, - sAnim_QuintyPlumpFaceNorth, - sAnim_QuintyPlumpFaceWest, - sAnim_QuintyPlumpFaceEast, - sAnim_QuintyPlumpGoSouth, - sAnim_QuintyPlumpGoNorth, - sAnim_QuintyPlumpGoWest, - sAnim_QuintyPlumpGoEast, - sAnim_QuintyPlumpGoFastSouth, - sAnim_QuintyPlumpGoFastNorth, - sAnim_QuintyPlumpGoFastWest, - sAnim_QuintyPlumpGoFastEast, - sAnim_QuintyPlumpGoFasterSouth, - sAnim_QuintyPlumpGoFasterNorth, - sAnim_QuintyPlumpGoFasterWest, - sAnim_QuintyPlumpGoFasterEast, - sAnim_QuintyPlumpGoFastestSouth, - sAnim_QuintyPlumpGoFastestNorth, - sAnim_QuintyPlumpGoFastestWest, - sAnim_QuintyPlumpGoFastestEast, + [ANIM_STD_FACE_SOUTH] = sAnim_QuintyPlumpFaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_QuintyPlumpFaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_QuintyPlumpFaceWest, + [ANIM_STD_FACE_EAST] = sAnim_QuintyPlumpFaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_QuintyPlumpGoSouth, + [ANIM_STD_GO_NORTH] = sAnim_QuintyPlumpGoNorth, + [ANIM_STD_GO_WEST] = sAnim_QuintyPlumpGoWest, + [ANIM_STD_GO_EAST] = sAnim_QuintyPlumpGoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_QuintyPlumpGoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_QuintyPlumpGoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_QuintyPlumpGoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_QuintyPlumpGoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_QuintyPlumpGoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_QuintyPlumpGoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_QuintyPlumpGoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_QuintyPlumpGoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_QuintyPlumpGoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_QuintyPlumpGoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_QuintyPlumpGoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_QuintyPlumpGoFastestEast, }; static const union AnimCmd *const sAnimTable_Standard[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoNorth, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoNorth, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, }; static const union AnimCmd *const sAnimTable_HoOh[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_HoOhFlapWings, - sAnim_HoOhStayStill, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, -}; - + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_HoOhFlapWings, + [ANIM_STD_GO_NORTH] = sAnim_HoOhStayStill, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, +}; + +// The movements for going up use the animations for going right instead. static const union AnimCmd *const sAnimTable_GroudonSide[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoEast, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastEast, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterEast, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestEast, - sAnim_GoFastestWest, - sAnim_GoFastestEast, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoEast, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastEast, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestEast, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, }; static const union AnimCmd sAnim_RayquazaCoiledAwake[] = @@ -952,186 +953,185 @@ static const union AnimCmd sAnim_RayquazaFaceEast[] = // Though they correspond to facing/walking movements, Rayquaza doesn't have // equivalent images aside from flying up. Its other frames aside from the 'normal' // frame are for the sequence where it awakens on Sky Pillar. -// The corresponding facing/walking movements are commented alongside static const union AnimCmd *const sAnimTable_Rayquaza[] = { - sAnim_RayquazaFaceSouth, // Face South - sAnim_RayquazaFaceNorth, // Face North - sAnim_RayquazaFaceWest, // Face West - sAnim_RayquazaFaceEast, // Face East - sAnim_RayquazaCoiledAsleep, // Go South - sAnim_RayquazaFlyUp, // Go North - sAnim_RayquazaCoiledMouthOpen, // Go West - sAnim_RayquazaNormal, // Go East - sAnim_RayquazaCoiledAsleep, // Go fast South - sAnim_RayquazaFlyUp, // Go fast North - sAnim_RayquazaCoiledAwake, // Go fast West - sAnim_RayquazaNormal, // Go fast East - sAnim_RayquazaCoiledAsleep, // Go faster South - sAnim_RayquazaFlyUp, // Go faster North - sAnim_RayquazaCoiledMouthOpen, // Go faster West - sAnim_RayquazaNormal, // Go faster East - sAnim_RayquazaCoiledAsleep, // Go fastest South - sAnim_RayquazaFlyUp, // Go fastest North - sAnim_RayquazaCoiledMouthOpen, // Go fastest West - sAnim_RayquazaNormal, // Go fastest East + [ANIM_STD_FACE_SOUTH] = sAnim_RayquazaFaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_RayquazaFaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_RayquazaFaceWest, + [ANIM_STD_FACE_EAST] = sAnim_RayquazaFaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_RayquazaCoiledAsleep, + [ANIM_STD_GO_NORTH] = sAnim_RayquazaFlyUp, + [ANIM_STD_GO_WEST] = sAnim_RayquazaCoiledMouthOpen, + [ANIM_STD_GO_EAST] = sAnim_RayquazaNormal, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_RayquazaCoiledAsleep, + [ANIM_STD_GO_FAST_NORTH] = sAnim_RayquazaFlyUp, + [ANIM_STD_GO_FAST_WEST] = sAnim_RayquazaCoiledAwake, + [ANIM_STD_GO_FAST_EAST] = sAnim_RayquazaNormal, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_RayquazaCoiledAsleep, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_RayquazaFlyUp, + [ANIM_STD_GO_FASTER_WEST] = sAnim_RayquazaCoiledMouthOpen, + [ANIM_STD_GO_FASTER_EAST] = sAnim_RayquazaNormal, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_RayquazaCoiledAsleep, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_RayquazaFlyUp, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_RayquazaCoiledMouthOpen, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_RayquazaNormal, }; static const union AnimCmd *const sAnimTable_BrendanMayNormal[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoNorth, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, - sAnim_RunSouth, - sAnim_RunNorth, - sAnim_RunWest, - sAnim_RunEast, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoNorth, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, + [ANIM_RUN_SOUTH] = sAnim_RunSouth, + [ANIM_RUN_NORTH] = sAnim_RunNorth, + [ANIM_RUN_WEST] = sAnim_RunWest, + [ANIM_RUN_EAST] = sAnim_RunEast, }; static const union AnimCmd *const sAnimTable_AcroBike[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoNorth, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, - sAnim_BunnyHoppyBackWheelSouth, - sAnim_BunnyHoppyBackWheelNorth, - sAnim_BunnyHoppyBackWheelWest, - sAnim_BunnyHoppyBackWheelEast, - sAnim_BunnyHoppyFrontWheelSouth, - sAnim_BunnyHoppyFrontWheelNorth, - sAnim_BunnyHoppyFrontWheelWest, - sAnim_BunnyHoppyFrontWheelEast, - sAnim_StandingWheelieBackWheelSouth, - sAnim_StandingWheelieBackWheelNorth, - sAnim_StandingWheelieBackWheelWest, - sAnim_StandingWheelieBackWheelEast, - sAnim_StandingWheelieFrontWheelSouth, - sAnim_StandingWheelieFrontWheelNorth, - sAnim_StandingWheelieFrontWheelWest, - sAnim_StandingWheelieFrontWheelEast, - sAnim_MovingWheelieSouth, - sAnim_MovingWheelieNorth, - sAnim_MovingWheelieWest, - sAnim_MovingWheelieEast, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoNorth, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, + [ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH] = sAnim_BunnyHoppyBackWheelSouth, + [ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH] = sAnim_BunnyHoppyBackWheelNorth, + [ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST] = sAnim_BunnyHoppyBackWheelWest, + [ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST] = sAnim_BunnyHoppyBackWheelEast, + [ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH] = sAnim_BunnyHoppyFrontWheelSouth, + [ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH] = sAnim_BunnyHoppyFrontWheelNorth, + [ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST] = sAnim_BunnyHoppyFrontWheelWest, + [ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST] = sAnim_BunnyHoppyFrontWheelEast, + [ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH] = sAnim_StandingWheelieBackWheelSouth, + [ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH] = sAnim_StandingWheelieBackWheelNorth, + [ANIM_STANDING_WHEELIE_BACK_WHEEL_WEST] = sAnim_StandingWheelieBackWheelWest, + [ANIM_STANDING_WHEELIE_BACK_WHEEL_EAST] = sAnim_StandingWheelieBackWheelEast, + [ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH] = sAnim_StandingWheelieFrontWheelSouth, + [ANIM_STANDING_WHEELIE_FRONT_WHEEL_NORTH] = sAnim_StandingWheelieFrontWheelNorth, + [ANIM_STANDING_WHEELIE_FRONT_WHEEL_WEST] = sAnim_StandingWheelieFrontWheelWest, + [ANIM_STANDING_WHEELIE_FRONT_WHEEL_EAST] = sAnim_StandingWheelieFrontWheelEast, + [ANIM_MOVING_WHEELIE_SOUTH] = sAnim_MovingWheelieSouth, + [ANIM_MOVING_WHEELIE_NORTH] = sAnim_MovingWheelieNorth, + [ANIM_MOVING_WHEELIE_WEST] = sAnim_MovingWheelieWest, + [ANIM_MOVING_WHEELIE_EAST] = sAnim_MovingWheelieEast, }; static const union AnimCmd *const sAnimTable_Surfing[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoNorth, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, - sAnim_GetOnOffSurfBlobSouth, - sAnim_GetOnOffSurfBlobNorth, - sAnim_GetOnOffSurfBlobWest, - sAnim_GetOnOffSurfBlobEast, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoNorth, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, + [ANIM_GET_ON_OFF_POKEMON_SOUTH] = sAnim_GetOnOffSurfBlobSouth, + [ANIM_GET_ON_OFF_POKEMON_NORTH] = sAnim_GetOnOffSurfBlobNorth, + [ANIM_GET_ON_OFF_POKEMON_WEST] = sAnim_GetOnOffSurfBlobWest, + [ANIM_GET_ON_OFF_POKEMON_EAST] = sAnim_GetOnOffSurfBlobEast, }; static const union AnimCmd *const sAnimTable_Nurse[] = { - sAnim_FaceSouth, - sAnim_FaceNorth, - sAnim_FaceWest, - sAnim_FaceEast, - sAnim_GoSouth, - sAnim_GoNorth, - sAnim_GoWest, - sAnim_GoEast, - sAnim_GoFastSouth, - sAnim_GoFastNorth, - sAnim_GoFastWest, - sAnim_GoFastEast, - sAnim_GoFasterSouth, - sAnim_GoFasterNorth, - sAnim_GoFasterWest, - sAnim_GoFasterEast, - sAnim_GoFastestSouth, - sAnim_GoFastestNorth, - sAnim_GoFastestWest, - sAnim_GoFastestEast, - sAnim_NurseBow, + [ANIM_STD_FACE_SOUTH] = sAnim_FaceSouth, + [ANIM_STD_FACE_NORTH] = sAnim_FaceNorth, + [ANIM_STD_FACE_WEST] = sAnim_FaceWest, + [ANIM_STD_FACE_EAST] = sAnim_FaceEast, + [ANIM_STD_GO_SOUTH] = sAnim_GoSouth, + [ANIM_STD_GO_NORTH] = sAnim_GoNorth, + [ANIM_STD_GO_WEST] = sAnim_GoWest, + [ANIM_STD_GO_EAST] = sAnim_GoEast, + [ANIM_STD_GO_FAST_SOUTH] = sAnim_GoFastSouth, + [ANIM_STD_GO_FAST_NORTH] = sAnim_GoFastNorth, + [ANIM_STD_GO_FAST_WEST] = sAnim_GoFastWest, + [ANIM_STD_GO_FAST_EAST] = sAnim_GoFastEast, + [ANIM_STD_GO_FASTER_SOUTH] = sAnim_GoFasterSouth, + [ANIM_STD_GO_FASTER_NORTH] = sAnim_GoFasterNorth, + [ANIM_STD_GO_FASTER_WEST] = sAnim_GoFasterWest, + [ANIM_STD_GO_FASTER_EAST] = sAnim_GoFasterEast, + [ANIM_STD_GO_FASTEST_SOUTH] = sAnim_GoFastestSouth, + [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, + [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, + [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, + [ANIM_NURSE_BOW] = sAnim_NurseBow, }; static const union AnimCmd *const sAnimTable_FieldMove[] = { - sAnim_FieldMove, + [ANIM_FIELD_MOVE] = sAnim_FieldMove, }; static const union AnimCmd *const sAnimTable_BerryTree[] = { - sAnim_BerryTreeStage0, - sAnim_BerryTreeStage1, - sAnim_BerryTreeStage2, - sAnim_BerryTreeStage3, - sAnim_BerryTreeStage4, + [BERRY_STAGE_PLANTED - 1] = sAnim_BerryTreeStage0, + [BERRY_STAGE_SPROUTED - 1] = sAnim_BerryTreeStage1, + [BERRY_STAGE_TALLER - 1] = sAnim_BerryTreeStage2, + [BERRY_STAGE_FLOWERING - 1] = sAnim_BerryTreeStage3, + [BERRY_STAGE_BERRIES - 1] = sAnim_BerryTreeStage4, }; static const union AnimCmd *const sAnimTable_BreakableRock[] = { - sAnim_StayStill, - sAnim_RockBreak, + [ANIM_STAY_STILL] = sAnim_StayStill, + [ANIM_REMOVE_OBSTACLE] = sAnim_RockBreak, }; static const union AnimCmd *const sAnimTable_CuttableTree[] = { - sAnim_StayStill, - sAnim_TreeCut, + [ANIM_STAY_STILL] = sAnim_StayStill, + [ANIM_REMOVE_OBSTACLE] = sAnim_TreeCut, }; static const union AnimCmd *const sAnimTable_Fishing[] = { - sAnim_TakeOutRodSouth, - sAnim_TakeOutRodNorth, - sAnim_TakeOutRodWest, - sAnim_TakeOutRodEast, - sAnim_PutAwayRodSouth, - sAnim_PutAwayRodNorth, - sAnim_PutAwayRodWest, - sAnim_PutAwayRodEast, - sAnim_HookedPokemonSouth, - sAnim_HookedPokemonNorth, - sAnim_HookedPokemonWest, - sAnim_HookedPokemonEast, + [ANIM_TAKE_OUT_ROD_SOUTH] = sAnim_TakeOutRodSouth, + [ANIM_TAKE_OUT_ROD_NORTH] = sAnim_TakeOutRodNorth, + [ANIM_TAKE_OUT_ROD_WEST] = sAnim_TakeOutRodWest, + [ANIM_TAKE_OUT_ROD_EAST] = sAnim_TakeOutRodEast, + [ANIM_PUT_AWAY_ROD_SOUTH] = sAnim_PutAwayRodSouth, + [ANIM_PUT_AWAY_ROD_NORTH] = sAnim_PutAwayRodNorth, + [ANIM_PUT_AWAY_ROD_WEST] = sAnim_PutAwayRodWest, + [ANIM_PUT_AWAY_ROD_EAST] = sAnim_PutAwayRodEast, + [ANIM_HOOKED_POKEMON_SOUTH] = sAnim_HookedPokemonSouth, + [ANIM_HOOKED_POKEMON_NORTH] = sAnim_HookedPokemonNorth, + [ANIM_HOOKED_POKEMON_WEST] = sAnim_HookedPokemonWest, + [ANIM_HOOKED_POKEMON_EAST] = sAnim_HookedPokemonEast, }; static const union AffineAnimCmd *const sAffineAnimTable_KyogreGroudon[] = { diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 2616b65e8153..074fa238630f 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -703,169 +703,169 @@ static const s16 sMovementDelaysShort[] = {32, 48, 64, 80}; #include "data/object_events/movement_type_func_tables.h" static const u8 sFaceDirectionAnimNums[] = { - [DIR_NONE] = 0, - [DIR_SOUTH] = 0, - [DIR_NORTH] = 1, - [DIR_WEST] = 2, - [DIR_EAST] = 3, - [DIR_SOUTHWEST] = 0, - [DIR_SOUTHEAST] = 0, - [DIR_NORTHWEST] = 1, - [DIR_NORTHEAST] = 1, + [DIR_NONE] = ANIM_STD_FACE_SOUTH, + [DIR_SOUTH] = ANIM_STD_FACE_SOUTH, + [DIR_NORTH] = ANIM_STD_FACE_NORTH, + [DIR_WEST] = ANIM_STD_FACE_WEST, + [DIR_EAST] = ANIM_STD_FACE_EAST, + [DIR_SOUTHWEST] = ANIM_STD_FACE_SOUTH, + [DIR_SOUTHEAST] = ANIM_STD_FACE_SOUTH, + [DIR_NORTHWEST] = ANIM_STD_FACE_NORTH, + [DIR_NORTHEAST] = ANIM_STD_FACE_NORTH, }; static const u8 sMoveDirectionAnimNums[] = { - [DIR_NONE] = 4, - [DIR_SOUTH] = 4, - [DIR_NORTH] = 5, - [DIR_WEST] = 6, - [DIR_EAST] = 7, - [DIR_SOUTHWEST] = 4, - [DIR_SOUTHEAST] = 4, - [DIR_NORTHWEST] = 5, - [DIR_NORTHEAST] = 5, + [DIR_NONE] = ANIM_STD_GO_SOUTH, + [DIR_SOUTH] = ANIM_STD_GO_SOUTH, + [DIR_NORTH] = ANIM_STD_GO_NORTH, + [DIR_WEST] = ANIM_STD_GO_WEST, + [DIR_EAST] = ANIM_STD_GO_EAST, + [DIR_SOUTHWEST] = ANIM_STD_GO_SOUTH, + [DIR_SOUTHEAST] = ANIM_STD_GO_SOUTH, + [DIR_NORTHWEST] = ANIM_STD_GO_NORTH, + [DIR_NORTHEAST] = ANIM_STD_GO_NORTH, }; static const u8 sMoveDirectionFastAnimNums[] = { - [DIR_NONE] = 8, - [DIR_SOUTH] = 8, - [DIR_NORTH] = 9, - [DIR_WEST] = 10, - [DIR_EAST] = 11, - [DIR_SOUTHWEST] = 8, - [DIR_SOUTHEAST] = 8, - [DIR_NORTHWEST] = 9, - [DIR_NORTHEAST] = 9, + [DIR_NONE] = ANIM_STD_GO_FAST_SOUTH, + [DIR_SOUTH] = ANIM_STD_GO_FAST_SOUTH, + [DIR_NORTH] = ANIM_STD_GO_FAST_NORTH, + [DIR_WEST] = ANIM_STD_GO_FAST_WEST, + [DIR_EAST] = ANIM_STD_GO_FAST_EAST, + [DIR_SOUTHWEST] = ANIM_STD_GO_FAST_SOUTH, + [DIR_SOUTHEAST] = ANIM_STD_GO_FAST_SOUTH, + [DIR_NORTHWEST] = ANIM_STD_GO_FAST_NORTH, + [DIR_NORTHEAST] = ANIM_STD_GO_FAST_NORTH, }; static const u8 sMoveDirectionFasterAnimNums[] = { - [DIR_NONE] = 12, - [DIR_SOUTH] = 12, - [DIR_NORTH] = 13, - [DIR_WEST] = 14, - [DIR_EAST] = 15, - [DIR_SOUTHWEST] = 12, - [DIR_SOUTHEAST] = 12, - [DIR_NORTHWEST] = 13, - [DIR_NORTHEAST] = 13, + [DIR_NONE] = ANIM_STD_GO_FASTER_SOUTH, + [DIR_SOUTH] = ANIM_STD_GO_FASTER_SOUTH, + [DIR_NORTH] = ANIM_STD_GO_FASTER_NORTH, + [DIR_WEST] = ANIM_STD_GO_FASTER_WEST, + [DIR_EAST] = ANIM_STD_GO_FASTER_EAST, + [DIR_SOUTHWEST] = ANIM_STD_GO_FASTER_SOUTH, + [DIR_SOUTHEAST] = ANIM_STD_GO_FASTER_SOUTH, + [DIR_NORTHWEST] = ANIM_STD_GO_FASTER_NORTH, + [DIR_NORTHEAST] = ANIM_STD_GO_FASTER_NORTH, }; static const u8 sMoveDirectionFastestAnimNums[] = { - [DIR_NONE] = 16, - [DIR_SOUTH] = 16, - [DIR_NORTH] = 17, - [DIR_WEST] = 18, - [DIR_EAST] = 19, - [DIR_SOUTHWEST] = 16, - [DIR_SOUTHEAST] = 16, - [DIR_NORTHWEST] = 17, - [DIR_NORTHEAST] = 17, + [DIR_NONE] = ANIM_STD_GO_FASTEST_SOUTH, + [DIR_SOUTH] = ANIM_STD_GO_FASTEST_SOUTH, + [DIR_NORTH] = ANIM_STD_GO_FASTEST_NORTH, + [DIR_WEST] = ANIM_STD_GO_FASTEST_WEST, + [DIR_EAST] = ANIM_STD_GO_FASTEST_EAST, + [DIR_SOUTHWEST] = ANIM_STD_GO_FASTEST_SOUTH, + [DIR_SOUTHEAST] = ANIM_STD_GO_FASTEST_SOUTH, + [DIR_NORTHWEST] = ANIM_STD_GO_FASTEST_NORTH, + [DIR_NORTHEAST] = ANIM_STD_GO_FASTEST_NORTH, }; static const u8 sJumpSpecialDirectionAnimNums[] = { // used for jumping onto surf mon - [DIR_NONE] = 20, - [DIR_SOUTH] = 20, - [DIR_NORTH] = 21, - [DIR_WEST] = 22, - [DIR_EAST] = 23, - [DIR_SOUTHWEST] = 20, - [DIR_SOUTHEAST] = 20, - [DIR_NORTHWEST] = 21, - [DIR_NORTHEAST] = 21, + [DIR_NONE] = ANIM_GET_ON_OFF_POKEMON_SOUTH, + [DIR_SOUTH] = ANIM_GET_ON_OFF_POKEMON_SOUTH, + [DIR_NORTH] = ANIM_GET_ON_OFF_POKEMON_NORTH, + [DIR_WEST] = ANIM_GET_ON_OFF_POKEMON_WEST, + [DIR_EAST] = ANIM_GET_ON_OFF_POKEMON_EAST, + [DIR_SOUTHWEST] = ANIM_GET_ON_OFF_POKEMON_SOUTH, + [DIR_SOUTHEAST] = ANIM_GET_ON_OFF_POKEMON_SOUTH, + [DIR_NORTHWEST] = ANIM_GET_ON_OFF_POKEMON_NORTH, + [DIR_NORTHEAST] = ANIM_GET_ON_OFF_POKEMON_NORTH, }; static const u8 sAcroWheelieDirectionAnimNums[] = { - [DIR_NONE] = 20, - [DIR_SOUTH] = 20, - [DIR_NORTH] = 21, - [DIR_WEST] = 22, - [DIR_EAST] = 23, - [DIR_SOUTHWEST] = 20, - [DIR_SOUTHEAST] = 20, - [DIR_NORTHWEST] = 21, - [DIR_NORTHEAST] = 21, + [DIR_NONE] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, + [DIR_WEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST, + [DIR_EAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, }; static const u8 sAcroUnusedDirectionAnimNums[] = { - [DIR_NONE] = 24, - [DIR_SOUTH] = 24, - [DIR_NORTH] = 25, - [DIR_WEST] = 26, - [DIR_EAST] = 27, - [DIR_SOUTHWEST] = 24, - [DIR_SOUTHEAST] = 24, - [DIR_NORTHWEST] = 25, - [DIR_NORTHEAST] = 25, + [DIR_NONE] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, + [DIR_WEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST, + [DIR_EAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, }; static const u8 sAcroEndWheelieDirectionAnimNums[] = { - [DIR_NONE] = 28, - [DIR_SOUTH] = 28, - [DIR_NORTH] = 29, - [DIR_WEST] = 30, - [DIR_EAST] = 31, - [DIR_SOUTHWEST] = 28, - [DIR_SOUTHEAST] = 28, - [DIR_NORTHWEST] = 29, - [DIR_NORTHEAST] = 29, + [DIR_NONE] = ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH, + [DIR_WEST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_WEST, + [DIR_EAST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH, }; static const u8 sAcroUnusedActionDirectionAnimNums[] = { - [DIR_NONE] = 32, - [DIR_SOUTH] = 32, - [DIR_NORTH] = 33, - [DIR_WEST] = 34, - [DIR_EAST] = 35, - [DIR_SOUTHWEST] = 32, - [DIR_SOUTHEAST] = 32, - [DIR_NORTHWEST] = 33, - [DIR_NORTHEAST] = 33, + [DIR_NONE] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_NORTH, + [DIR_WEST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_WEST, + [DIR_EAST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_STANDING_WHEELIE_FRONT_WHEEL_NORTH, }; static const u8 sAcroWheeliePedalDirectionAnimNums[] = { - [DIR_NONE] = 36, - [DIR_SOUTH] = 36, - [DIR_NORTH] = 37, - [DIR_WEST] = 38, - [DIR_EAST] = 39, - [DIR_SOUTHWEST] = 36, - [DIR_SOUTHEAST] = 36, - [DIR_NORTHWEST] = 37, - [DIR_NORTHEAST] = 37, + [DIR_NONE] = ANIM_MOVING_WHEELIE_SOUTH, + [DIR_SOUTH] = ANIM_MOVING_WHEELIE_SOUTH, + [DIR_NORTH] = ANIM_MOVING_WHEELIE_NORTH, + [DIR_WEST] = ANIM_MOVING_WHEELIE_WEST, + [DIR_EAST] = ANIM_MOVING_WHEELIE_EAST, + [DIR_SOUTHWEST] = ANIM_MOVING_WHEELIE_SOUTH, + [DIR_SOUTHEAST] = ANIM_MOVING_WHEELIE_SOUTH, + [DIR_NORTHWEST] = ANIM_MOVING_WHEELIE_NORTH, + [DIR_NORTHEAST] = ANIM_MOVING_WHEELIE_NORTH, }; static const u8 sFishingDirectionAnimNums[] = { - [DIR_NONE] = 0, - [DIR_SOUTH] = 0, - [DIR_NORTH] = 1, - [DIR_WEST] = 2, - [DIR_EAST] = 3, - [DIR_SOUTHWEST] = 0, - [DIR_SOUTHEAST] = 0, - [DIR_NORTHWEST] = 1, - [DIR_NORTHEAST] = 1, + [DIR_NONE] = ANIM_TAKE_OUT_ROD_SOUTH, + [DIR_SOUTH] = ANIM_TAKE_OUT_ROD_SOUTH, + [DIR_NORTH] = ANIM_TAKE_OUT_ROD_NORTH, + [DIR_WEST] = ANIM_TAKE_OUT_ROD_WEST, + [DIR_EAST] = ANIM_TAKE_OUT_ROD_EAST, + [DIR_SOUTHWEST] = ANIM_TAKE_OUT_ROD_SOUTH, + [DIR_SOUTHEAST] = ANIM_TAKE_OUT_ROD_SOUTH, + [DIR_NORTHWEST] = ANIM_TAKE_OUT_ROD_NORTH, + [DIR_NORTHEAST] = ANIM_TAKE_OUT_ROD_NORTH, }; static const u8 sFishingNoCatchDirectionAnimNums[] = { - [DIR_NONE] = 4, - [DIR_SOUTH] = 4, - [DIR_NORTH] = 5, - [DIR_WEST] = 6, - [DIR_EAST] = 7, - [DIR_SOUTHWEST] = 4, - [DIR_SOUTHEAST] = 4, - [DIR_NORTHWEST] = 5, - [DIR_NORTHEAST] = 5, + [DIR_NONE] = ANIM_PUT_AWAY_ROD_SOUTH, + [DIR_SOUTH] = ANIM_PUT_AWAY_ROD_SOUTH, + [DIR_NORTH] = ANIM_PUT_AWAY_ROD_NORTH, + [DIR_WEST] = ANIM_PUT_AWAY_ROD_WEST, + [DIR_EAST] = ANIM_PUT_AWAY_ROD_EAST, + [DIR_SOUTHWEST] = ANIM_PUT_AWAY_ROD_SOUTH, + [DIR_SOUTHEAST] = ANIM_PUT_AWAY_ROD_SOUTH, + [DIR_NORTHWEST] = ANIM_PUT_AWAY_ROD_NORTH, + [DIR_NORTHEAST] = ANIM_PUT_AWAY_ROD_NORTH, }; static const u8 sFishingBiteDirectionAnimNums[] = { - [DIR_NONE] = 8, - [DIR_SOUTH] = 8, - [DIR_NORTH] = 9, - [DIR_WEST] = 10, - [DIR_EAST] = 11, - [DIR_SOUTHWEST] = 8, - [DIR_SOUTHEAST] = 8, - [DIR_NORTHWEST] = 9, - [DIR_NORTHEAST] = 9, + [DIR_NONE] = ANIM_HOOKED_POKEMON_SOUTH, + [DIR_SOUTH] = ANIM_HOOKED_POKEMON_SOUTH, + [DIR_NORTH] = ANIM_HOOKED_POKEMON_NORTH, + [DIR_WEST] = ANIM_HOOKED_POKEMON_WEST, + [DIR_EAST] = ANIM_HOOKED_POKEMON_EAST, + [DIR_SOUTHWEST] = ANIM_HOOKED_POKEMON_SOUTH, + [DIR_SOUTHEAST] = ANIM_HOOKED_POKEMON_SOUTH, + [DIR_NORTHWEST] = ANIM_HOOKED_POKEMON_NORTH, + [DIR_NORTHEAST] = ANIM_HOOKED_POKEMON_NORTH, }; static const u8 sRunningDirectionAnimNums[] = { - [DIR_NONE] = 20, - [DIR_SOUTH] = 20, - [DIR_NORTH] = 21, - [DIR_WEST] = 22, - [DIR_EAST] = 23, - [DIR_SOUTHWEST] = 20, - [DIR_SOUTHEAST] = 20, - [DIR_NORTHWEST] = 21, - [DIR_NORTHEAST] = 21, + [DIR_NONE] = ANIM_RUN_SOUTH, + [DIR_SOUTH] = ANIM_RUN_SOUTH, + [DIR_NORTH] = ANIM_RUN_NORTH, + [DIR_WEST] = ANIM_RUN_WEST, + [DIR_EAST] = ANIM_RUN_EAST, + [DIR_SOUTHWEST] = ANIM_RUN_SOUTH, + [DIR_SOUTHEAST] = ANIM_RUN_SOUTH, + [DIR_NORTHWEST] = ANIM_RUN_NORTH, + [DIR_NORTHEAST] = ANIM_RUN_NORTH, }; const u8 gTrainerFacingDirectionMovementTypes[] = { @@ -6492,7 +6492,7 @@ bool8 MovementAction_FaceOriginalDirection_Step0(struct ObjectEvent *objectEvent bool8 MovementAction_NurseJoyBowDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - StartSpriteAnimInDirection(objectEvent, sprite, DIR_SOUTH, 0x14); + StartSpriteAnimInDirection(objectEvent, sprite, DIR_SOUTH, ANIM_NURSE_BOW); return FALSE; } @@ -6591,7 +6591,7 @@ bool8 MovementAction_RevealTrainer_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_RockSmashBreak_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - SetAndStartSpriteAnim(sprite, 1, 0); + SetAndStartSpriteAnim(sprite, ANIM_REMOVE_OBSTACLE, 0); sprite->sActionFuncId = 1; return FALSE; } @@ -6619,7 +6619,7 @@ bool8 MovementAction_RockSmashBreak_Step2(struct ObjectEvent *objectEvent, struc bool8 MovementAction_CutTree_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - SetAndStartSpriteAnim(sprite, 1, 0); + SetAndStartSpriteAnim(sprite, ANIM_REMOVE_OBSTACLE, 0); sprite->sActionFuncId = 1; return FALSE; } diff --git a/src/field_effect.c b/src/field_effect.c index 247744b879d3..7e1ebdff4d5b 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3240,7 +3240,7 @@ static void FlyOutFieldEffect_JumpOnBird(struct Task *task) { struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING)); - StartSpriteAnim(&gSprites[objectEvent->spriteId], 0x16); + StartSpriteAnim(&gSprites[objectEvent->spriteId], ANIM_GET_ON_OFF_POKEMON_WEST); objectEvent->inanimate = TRUE; ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_JUMP_IN_PLACE_LEFT); if (task->tAvatarFlags & PLAYER_AVATAR_FLAG_SURFING) @@ -3478,7 +3478,7 @@ static void FlyInFieldEffect_BirdSwoopDown(struct Task *task) ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING)); CameraObjectReset2(); ObjectEventTurn(objectEvent, DIR_WEST); - StartSpriteAnim(&gSprites[objectEvent->spriteId], 0x16); + StartSpriteAnim(&gSprites[objectEvent->spriteId], ANIM_GET_ON_OFF_POKEMON_WEST); objectEvent->invisible = FALSE; task->tBirdSpriteId = CreateFlyBirdSprite(); StartFlyBirdSwoopDown(task->tBirdSpriteId); diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index e770ce35dc4f..6ce304c2c083 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1403,7 +1403,7 @@ void SetPlayerInvisibility(bool8 invisible) void SetPlayerAvatarFieldMove(void) { ObjectEventSetGraphicsId(&gObjectEvents[gPlayerAvatar.objectEventId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_FIELD_MOVE)); - StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], 0); + StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], ANIM_FIELD_MOVE); } static void SetPlayerAvatarFishing(u8 direction) From 5536bce88d252a545822b185a399361fa8e17419 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 29 Oct 2021 18:39:31 -0300 Subject: [PATCH 349/762] SIZE -> FONT --- charmap.txt | 2 +- src/strings.c | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/charmap.txt b/charmap.txt index 84e1496f053f..335610b13163 100644 --- a/charmap.txt +++ b/charmap.txt @@ -414,7 +414,7 @@ HIGHLIGHT = FC 02 @ same as fc 01 SHADOW = FC 03 @ same as fc 01 COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes PALETTE = FC 05 @ used in credits -SIZE = FC 06 @ note that anything other than "SMALL" is invalid +FONT = FC 06 @ valid values are 0, 1, 2, 7 and 8 RESET_SIZE = FC 07 PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them PAUSE_UNTIL_PRESS = FC 09 diff --git a/src/strings.c b/src/strings.c index bebe8901103f..ae39e3d4dea8 100644 --- a/src/strings.c +++ b/src/strings.c @@ -839,17 +839,17 @@ const u8 gText_B4F[] = _("B4F"); const u8 gText_Rooftop[] = _("ROOFTOP"); const u8 gText_ElevatorNowOn[] = _("Now on:"); const u8 gText_BP[] = _("BP"); -const u8 gText_EnergyPowder50[] = _("ENERGYPOWDER{CLEAR_TO 0x72}{SIZE 0}50"); -const u8 gText_EnergyRoot80[] = _("ENERGY ROOT{CLEAR_TO 0x72}{SIZE 0}80"); -const u8 gText_HealPowder50[] = _("HEAL POWDER{CLEAR_TO 0x72}{SIZE 0}50"); -const u8 gText_RevivalHerb300[] = _("REVIVAL HERB{CLEAR_TO 0x6C}{SIZE 0}300"); -const u8 gText_Protein1000[] = _("PROTEIN{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_Iron1000[] = _("IRON{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_Carbos1000[] = _("CARBOS{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_Calcium1000[] = _("CALCIUM{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_Zinc1000[] = _("ZINC{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_HPUp1000[] = _("HP UP{CLEAR_TO 0x63}{SIZE 0}1,000"); -const u8 gText_PPUp3000[] = _("PP UP{CLEAR_TO 0x63}{SIZE 0}3,000"); +const u8 gText_EnergyPowder50[] = _("ENERGYPOWDER{CLEAR_TO 0x72}{FONT 0}50"); +const u8 gText_EnergyRoot80[] = _("ENERGY ROOT{CLEAR_TO 0x72}{FONT 0}80"); +const u8 gText_HealPowder50[] = _("HEAL POWDER{CLEAR_TO 0x72}{FONT 0}50"); +const u8 gText_RevivalHerb300[] = _("REVIVAL HERB{CLEAR_TO 0x6C}{FONT 0}300"); +const u8 gText_Protein1000[] = _("PROTEIN{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_Iron1000[] = _("IRON{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_Carbos1000[] = _("CARBOS{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_Calcium1000[] = _("CALCIUM{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_Zinc1000[] = _("ZINC{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_HPUp1000[] = _("HP UP{CLEAR_TO 0x63}{FONT 0}1,000"); +const u8 gText_PPUp3000[] = _("PP UP{CLEAR_TO 0x63}{FONT 0}3,000"); const u8 gText_RankingHall[] = _("RANKING HALL"); const u8 gText_ExchangeService[] = _("EXCHANGE SERVICE"); const u8 gText_LilycoveCity[] = _("LILYCOVE CITY"); From cde0ce878ce8344fe6149cb7015b6673bfb94bf3 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 29 Oct 2021 19:00:07 -0300 Subject: [PATCH 350/762] EXT_CTRL_CODE_SIZE -> EXT_CTRL_CODE_FONT --- gflib/string_util.c | 4 ++-- gflib/text.c | 8 ++++---- gflib/text.h | 2 +- src/battle_controller_player.c | 2 +- src/unk_text_util_2.c | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/gflib/string_util.c b/gflib/string_util.c index b7485184addd..4bf0d2ae9b06 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -386,7 +386,7 @@ u8 *StringBraille(u8 *dest, const u8 *src) { const u8 setBrailleFont[] = { EXT_CTRL_CODE_BEGIN, - EXT_CTRL_CODE_SIZE, + EXT_CTRL_CODE_FONT, 6, EOS }; @@ -664,7 +664,7 @@ u8 GetExtCtrlCodeLength(u8 code) [EXT_CTRL_CODE_SHADOW] = 2, [EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW] = 4, [EXT_CTRL_CODE_PALETTE] = 2, - [EXT_CTRL_CODE_SIZE] = 2, + [EXT_CTRL_CODE_FONT] = 2, [EXT_CTRL_CODE_RESET_SIZE] = 1, [EXT_CTRL_CODE_PAUSE] = 2, [EXT_CTRL_CODE_PAUSE_UNTIL_PRESS] = 1, diff --git a/gflib/text.c b/gflib/text.c index eb993c42145f..e3043230b0f9 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -906,7 +906,7 @@ u16 RenderText(struct TextPrinter *textPrinter) case EXT_CTRL_CODE_PALETTE: textPrinter->printerTemplate.currentChar++; return 2; - case EXT_CTRL_CODE_SIZE: + case EXT_CTRL_CODE_FONT: subStruct->glyphId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return 2; @@ -1170,7 +1170,7 @@ u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing) case EXT_CTRL_CODE_HIGHLIGHT: case EXT_CTRL_CODE_SHADOW: case EXT_CTRL_CODE_PALETTE: - case EXT_CTRL_CODE_SIZE: + case EXT_CTRL_CODE_FONT: case EXT_CTRL_CODE_PAUSE: case EXT_CTRL_CODE_ESCAPE: case EXT_CTRL_CODE_SHIFT_TEXT: @@ -1319,7 +1319,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) case EXT_CTRL_CODE_SHIFT_DOWN: ++str; break; - case EXT_CTRL_CODE_SIZE: + case EXT_CTRL_CODE_FONT: func = GetFontWidthFunc(*++str); if (func == NULL) return 0; @@ -1449,7 +1449,7 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) shadowColor = strLocal[strPos++]; GenerateFontHalfRowLookupTable(fgColor, bgColor, shadowColor); continue; - case EXT_CTRL_CODE_SIZE: + case EXT_CTRL_CODE_FONT: fontId = strLocal[strPos++]; break; case EXT_CTRL_CODE_PLAY_BGM: diff --git a/gflib/text.h b/gflib/text.h index ee3dfa34c567..9bb07580e0d8 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -211,7 +211,7 @@ #define EXT_CTRL_CODE_SHADOW 0x03 #define EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW 0x04 #define EXT_CTRL_CODE_PALETTE 0x05 -#define EXT_CTRL_CODE_SIZE 0x06 +#define EXT_CTRL_CODE_FONT 0x06 #define EXT_CTRL_CODE_RESET_SIZE 0x07 #define EXT_CTRL_CODE_PAUSE 0x08 #define EXT_CTRL_CODE_PAUSE_UNTIL_PRESS 0x09 diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index ac8babb6075b..f4e47b43477a 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1500,7 +1500,7 @@ static void MoveSelectionDisplayMoveType(void) txtPtr = StringCopy(gDisplayedStringBattle, gText_MoveInterfaceType); *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; - *(txtPtr)++ = EXT_CTRL_CODE_SIZE; + *(txtPtr)++ = EXT_CTRL_CODE_FONT; *(txtPtr)++ = 1; StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]); diff --git a/src/unk_text_util_2.c b/src/unk_text_util_2.c index 3459dde85814..a0eea575e7e8 100644 --- a/src/unk_text_util_2.c +++ b/src/unk_text_util_2.c @@ -80,7 +80,7 @@ u16 Font6Func(struct TextPrinter *textPrinter) case EXT_CTRL_CODE_PALETTE: textPrinter->printerTemplate.currentChar++; return 2; - case EXT_CTRL_CODE_SIZE: + case EXT_CTRL_CODE_FONT: subStruct->glyphId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return 2; From 7574af35588c5025bcf46759501b16d25956f35f Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 29 Oct 2021 19:08:21 -0300 Subject: [PATCH 351/762] Fixed charmap comment about the FONT text controller --- charmap.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charmap.txt b/charmap.txt index 335610b13163..1bca4e4f46f4 100644 --- a/charmap.txt +++ b/charmap.txt @@ -414,7 +414,7 @@ HIGHLIGHT = FC 02 @ same as fc 01 SHADOW = FC 03 @ same as fc 01 COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes PALETTE = FC 05 @ used in credits -FONT = FC 06 @ valid values are 0, 1, 2, 7 and 8 +FONT = FC 06 @ valid values are 0, 1, 2, 6 (braille), 7 and 8 RESET_SIZE = FC 07 PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them PAUSE_UNTIL_PRESS = FC 09 From f51247615e5734f1b9d61e22156b90ab1f1b489f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 29 Oct 2021 11:56:06 -0400 Subject: [PATCH 352/762] Finish documenting battle_transition --- include/palette.h | 4 +- src/battle_transition.c | 496 ++++++++++++++++++++++------------------ 2 files changed, 278 insertions(+), 222 deletions(-) diff --git a/include/palette.h b/include/palette.h index 072edef5636e..be2a0dd4878e 100644 --- a/include/palette.h +++ b/include/palette.h @@ -49,8 +49,8 @@ struct PaletteFadeControl extern struct PaletteFadeControl gPaletteFade; extern u32 gPlttBufferTransferPending; extern u8 gPaletteDecompressionBuffer[]; -extern u16 gPlttBufferUnfaded[]; -extern u16 gPlttBufferFaded[]; +extern u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE]; +extern u16 gPlttBufferFaded[PLTT_BUFFER_SIZE]; void LoadCompressedPalette(const u32 *, u16, u16); void LoadPalette(const void *, u16, u16); diff --git a/src/battle_transition.c b/src/battle_transition.c index 88194db2724b..6aa388302448 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -80,8 +80,8 @@ struct RectangularSpiralLine u8 state; s16 position; u8 moveIdx; - s16 skipPosition; - u8 field_8; + s16 reboundPosition; + bool8 outward; }; typedef bool8 (*TransitionStateFunc)(struct Task *task); @@ -227,8 +227,8 @@ static bool8 FrontierLogoWiggle_Init(struct Task *task); static bool8 FrontierLogoWiggle_SetGfx(struct Task *task); static bool8 FrontierLogoWave_Init(struct Task *task); static bool8 FrontierLogoWave_SetGfx(struct Task *task); -static bool8 FrontierLogoWave_Func3(struct Task *task); -static bool8 FrontierLogoWave_Func4(struct Task *task); +static bool8 FrontierLogoWave_InitScanline(struct Task *task); +static bool8 FrontierLogoWave_Main(struct Task *task); static bool8 Rayquaza_Init(struct Task *task); static bool8 Rayquaza_SetGfx(struct Task *task); static bool8 Rayquaza_PaletteFlash(struct Task *task); @@ -241,13 +241,13 @@ static bool8 FrontierSquares_Draw(struct Task *task); static bool8 FrontierSquares_Shrink(struct Task *task); static bool8 FrontierSquares_End(struct Task *task); static bool8 FrontierSquaresSpiral_Init(struct Task *task); -static bool8 FrontierSquaresSpiral_Func2(struct Task *task); -static bool8 FrontierSquaresSpiral_Func3(struct Task *task); -static bool8 FrontierSquaresSpiral_Func4(struct Task *task); +static bool8 FrontierSquaresSpiral_Outward(struct Task *task); +static bool8 FrontierSquaresSpiral_SetBlack(struct Task *task); +static bool8 FrontierSquaresSpiral_Inward(struct Task *task); static bool8 FrontierSquaresScroll_Init(struct Task *task); -static bool8 FrontierSquaresScroll_Func2(struct Task *task); -static bool8 FrontierSquaresScroll_Func3(struct Task *task); -static bool8 FrontierSquaresScroll_Func4(struct Task *task); +static bool8 FrontierSquaresScroll_Draw(struct Task *task); +static bool8 FrontierSquaresScroll_SetBlack(struct Task *task); +static bool8 FrontierSquaresScroll_Erase(struct Task *task); static bool8 FrontierSquaresScroll_End(struct Task *task); static bool8 Mugshot_Init(struct Task *task); static bool8 Mugshot_SetGfx(struct Task *task); @@ -625,52 +625,73 @@ static const TransitionStateFunc sRectangularSpiral_Funcs[] = }; #define SPIRAL_END (-1) -#define SPIRAL_SKIP (-2) +#define SPIRAL_REBOUND (-2) + +// Note that the directions are inverted for the lines originating at the bottom. +// i.e. MOVE_RIGHT is a right move for the top lines and a left move for the inverted bottom lines. +enum { + MOVE_RIGHT = 1, + MOVE_LEFT, + MOVE_UP, + MOVE_DOWN, +}; + +// Offsets of the movement data for spiraling in either direction. +#define SPIRAL_INWARD_START 0 +#define SPIRAL_INWARD_END 3 +#define SPIRAL_OUTWARD_START 4 +#define SPIRAL_OUTWARD_END 7 -static const s16 gUnknown_085C8C90[] = {1, 27, 275, SPIRAL_END}; -static const s16 gUnknown_085C8C98[] = {2, 486, SPIRAL_END}; -static const s16 gUnknown_085C8C9E[] = {3, 262, SPIRAL_END}; -static const s16 gUnknown_085C8CA4[] = {4, 507, SPIRAL_SKIP}; +static const s16 sRectangularSpiral_Major_InwardRight[] = {MOVE_RIGHT, 27, 275, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_InwardLeft[] = {MOVE_LEFT, 486, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_InwardUp[] = {MOVE_UP, 262, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_InwardDown[] = {MOVE_DOWN, 507, SPIRAL_REBOUND}; -static const s16 gUnknown_085C8CAA[] = {1, 213, SPIRAL_END}; -static const s16 gUnknown_085C8CB0[] = {2, 548, SPIRAL_SKIP}; -static const s16 gUnknown_085C8CB6[] = {3, 196, SPIRAL_END}; -static const s16 gUnknown_085C8CBC[] = {4, 573, 309, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_InwardRight[] = {MOVE_RIGHT, 213, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_InwardLeft[] = {MOVE_LEFT, 548, SPIRAL_REBOUND}; +static const s16 sRectangularSpiral_Minor_InwardUp[] = {MOVE_UP, 196, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_InwardDown[] = {MOVE_DOWN, 573, 309, SPIRAL_END}; -static const s16 gUnknown_085C8CC4[] = {1, 474, SPIRAL_END}; -static const s16 gUnknown_085C8CCA[] = {2, 295, 32, SPIRAL_END}; -static const s16 gUnknown_085C8CD2[] = {3, 58, SPIRAL_END}; -static const s16 gUnknown_085C8CD8[] = {4, 455, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_OutwardRight[] = {MOVE_RIGHT, 474, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_OutwardLeft[] = {MOVE_LEFT, 295, 32, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_OutwardUp[] = {MOVE_UP, 58, SPIRAL_END}; +static const s16 sRectangularSpiral_Minor_OutwardDown[] = {MOVE_DOWN, 455, SPIRAL_END}; -static const s16 gUnknown_085C8CDE[] = {1, 540, SPIRAL_END}; -static const s16 gUnknown_085C8CE4[] = {2, 229, SPIRAL_END}; -static const s16 gUnknown_085C8CEA[] = {3, 244, 28, SPIRAL_END}; -static const s16 gUnknown_085C8CF2[] = {4, 517, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_OutwardRight[] = {MOVE_RIGHT, 540, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_OutwardLeft[] = {MOVE_LEFT, 229, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_OutwardUp[] = {MOVE_UP, 244, 28, SPIRAL_END}; +static const s16 sRectangularSpiral_Major_OutwardDown[] = {MOVE_DOWN, 517, SPIRAL_END}; // Move data for spiral lines starting in the top left / bottom right static const s16 *const sRectangularSpiral_MoveDataTable_MajorDiagonal[] = { - gUnknown_085C8C90, - gUnknown_085C8CA4, - gUnknown_085C8C98, - gUnknown_085C8C9E, - gUnknown_085C8CEA, - gUnknown_085C8CE4, - gUnknown_085C8CF2, - gUnknown_085C8CDE + [SPIRAL_INWARD_START] = + sRectangularSpiral_Major_InwardRight, + sRectangularSpiral_Major_InwardDown, + sRectangularSpiral_Major_InwardLeft, + sRectangularSpiral_Major_InwardUp, + + [SPIRAL_OUTWARD_START] = + sRectangularSpiral_Major_OutwardUp, + sRectangularSpiral_Major_OutwardLeft, + sRectangularSpiral_Major_OutwardDown, + sRectangularSpiral_Major_OutwardRight }; // Move data for spiral lines starting in the top right / bottom left static const s16 *const sRectangularSpiral_MoveDataTable_MinorDiagonal[] = { - gUnknown_085C8CBC, - gUnknown_085C8CB0, - gUnknown_085C8CB6, - gUnknown_085C8CAA, - gUnknown_085C8CCA, - gUnknown_085C8CD8, - gUnknown_085C8CC4, - gUnknown_085C8CD2 + [SPIRAL_INWARD_START] = + sRectangularSpiral_Minor_InwardDown, + sRectangularSpiral_Minor_InwardLeft, + sRectangularSpiral_Minor_InwardUp, + sRectangularSpiral_Minor_InwardRight, + + [SPIRAL_OUTWARD_START] = + sRectangularSpiral_Minor_OutwardLeft, + sRectangularSpiral_Minor_OutwardDown, + sRectangularSpiral_Minor_OutwardRight, + sRectangularSpiral_Minor_OutwardUp }; static const s16 *const *const sRectangularSpiral_MoveDataTables[] = @@ -738,7 +759,7 @@ static const TransitionStateFunc sAngledWipes_Funcs[] = static const s16 sAngledWipes_MoveData[NUM_ANGLED_WIPES][5] = { -// startX startY endX endY yDirection +// startX startY endX endY yDirection {56, 0, 0, DISPLAY_HEIGHT, 0}, {104, DISPLAY_HEIGHT, DISPLAY_WIDTH, 88, 1}, {DISPLAY_WIDTH, 72, 56, 0, 1}, @@ -908,8 +929,8 @@ static const TransitionStateFunc sFrontierLogoWave_Funcs[] = { FrontierLogoWave_Init, FrontierLogoWave_SetGfx, - FrontierLogoWave_Func3, - FrontierLogoWave_Func4 + FrontierLogoWave_InitScanline, + FrontierLogoWave_Main }; static const TransitionStateFunc sFrontierSquares_Funcs[] = @@ -923,38 +944,54 @@ static const TransitionStateFunc sFrontierSquares_Funcs[] = static const TransitionStateFunc sFrontierSquaresSpiral_Funcs[] = { FrontierSquaresSpiral_Init, - FrontierSquaresSpiral_Func2, - FrontierSquaresSpiral_Func3, - FrontierSquaresSpiral_Func4, + FrontierSquaresSpiral_Outward, + FrontierSquaresSpiral_SetBlack, + FrontierSquaresSpiral_Inward, FrontierSquares_End }; static const TransitionStateFunc sFrontierSquaresScroll_Funcs[] = { FrontierSquaresScroll_Init, - FrontierSquaresScroll_Func2, - FrontierSquaresScroll_Func3, - FrontierSquaresScroll_Func4, + FrontierSquaresScroll_Draw, + FrontierSquaresScroll_SetBlack, + FrontierSquaresScroll_Erase, FrontierSquaresScroll_End }; -static const u8 gUnknown_085C9A30[] = { - 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, - 0x1b, 0x14, 0x0d, 0x06, 0x05, 0x04, 0x03, - 0x02, 0x01, 0x00, 0x07, 0x0e, 0x15, 0x16, - 0x17, 0x18, 0x19, 0x1a, 0x13, 0x0c, 0x0b, - 0x0a, 0x09, 0x08, 0x0f, 0x10, 0x11, 0x12 +// Dimensions for the 2 non-scrolling frontier square transitions. +// SQUARE_SIZE is the same in the scrolling version but it uses +// more because it needs to show more than can be shown at a single +// time n-screen. +#define SQUARE_SIZE 4 +#define MARGIN_SIZE 1 // Squares do not fit evenly across the width, so there is a margin on either side. +#define NUM_SQUARES_PER_ROW ((DISPLAY_WIDTH - (MARGIN_SIZE * 8 * 2)) / (SQUARE_SIZE * 8)) +#define NUM_SQUARES_PER_COL (DISPLAY_HEIGHT / (SQUARE_SIZE * 8)) +#define NUM_SQUARES (NUM_SQUARES_PER_ROW * NUM_SQUARES_PER_COL) + +// The order in which the squares should appear/disappear to create +// the spiral effect. Spiraling inward starts with the first element, +// and spiraling outward starts with the last. The positions are the +// squares numbered left-to-right top-to-bottom. +static const u8 sFrontierSquaresSpiral_Positions[NUM_SQUARES] = { + 28, 29, 30, 31, 32, 33, 34, + 27, 20, 13, 6, 5, 4, 3, + 2, 1, 0, 7, 14, 21, 22, + 23, 24, 25, 26, 19, 12, 11, + 10, 9, 8, 15, 16, 17, 18 }; -static const u8 gUnknown_085C9A53[] = { - 0x00, 0x10, 0x29, 0x16, 0x2c, 0x02, 0x2b, 0x15, - 0x2e, 0x1b, 0x09, 0x30, 0x26, 0x05, 0x39, 0x3b, - 0x0c, 0x3f, 0x23, 0x1c, 0x0a, 0x35, 0x07, 0x31, - 0x27, 0x17, 0x37, 0x01, 0x3e, 0x11, 0x3d, 0x1e, - 0x06, 0x22, 0x0f, 0x33, 0x20, 0x3a, 0x0d, 0x2d, - 0x25, 0x34, 0x0b, 0x18, 0x3c, 0x13, 0x38, 0x21, - 0x1d, 0x32, 0x28, 0x36, 0x0e, 0x03, 0x2f, 0x14, - 0x12, 0x19, 0x04, 0x24, 0x1a, 0x2a, 0x1f, 0x08 +// In the scrolling version the squares appear/disappear in a "random" order +// dictated by the list below. +static const u8 sFrontierSquaresScroll_Positions[] = { + 0, 16, 41, 22, 44, 2, 43, 21, + 46, 27, 9, 48, 38, 5, 57, 59, + 12, 63, 35, 28, 10, 53, 7, 49, + 39, 23, 55, 1, 62, 17, 61, 30, + 6, 34, 15, 51, 32, 58, 13, 45, + 37, 52, 11, 24, 60, 19, 56, 33, + 29, 50, 40, 54, 14, 3, 47, 20, + 18, 25, 4, 36, 26, 42, 31, 8 }; //--------------------------- @@ -1036,7 +1073,7 @@ static void Task_BattleTransition(u8 taskId) static bool8 Transition_StartIntro(struct Task *task) { SetWeatherScreenFadeOut(); - CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); + CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, sizeof(gPlttBufferUnfaded)); if (sTasks_Intro[task->tTransitionId] != NULL) { CreateTask(sTasks_Intro[task->tTransitionId], 4); @@ -3158,40 +3195,40 @@ static bool8 RectangularSpiral_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sShrinkingBoxTileset, tileset, 0x20); - CpuCopy16(sShrinkingBoxTileset + 0x70, tileset + 0x20, 0x20); + CpuCopy16(&sShrinkingBoxTileset[0x70], &tileset[0x20], 0x20); CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE); LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); task->data[3] = 1; task->tState++; - // Top left - sRectangularSpiralLines[0].state = 0; + // Line starting in top left + sRectangularSpiralLines[0].state = SPIRAL_INWARD_START; sRectangularSpiralLines[0].position = -1; sRectangularSpiralLines[0].moveIdx = 1; - sRectangularSpiralLines[0].skipPosition = 308; - sRectangularSpiralLines[0].field_8 = 0; + sRectangularSpiralLines[0].reboundPosition = 308; + sRectangularSpiralLines[0].outward = FALSE; - // Bottom right - sRectangularSpiralLines[1].state = 0; + // Line starting in bottom right + sRectangularSpiralLines[1].state = SPIRAL_INWARD_START; sRectangularSpiralLines[1].position = -1; sRectangularSpiralLines[1].moveIdx = 1; - sRectangularSpiralLines[1].skipPosition = 308; - sRectangularSpiralLines[1].field_8 = 0; + sRectangularSpiralLines[1].reboundPosition = 308; + sRectangularSpiralLines[1].outward = FALSE; - // Top right - sRectangularSpiralLines[2].state = 0; + // Line starting in top right + sRectangularSpiralLines[2].state = SPIRAL_INWARD_START; sRectangularSpiralLines[2].position = -3; sRectangularSpiralLines[2].moveIdx = 1; - sRectangularSpiralLines[2].skipPosition = 307; - sRectangularSpiralLines[2].field_8 = 0; + sRectangularSpiralLines[2].reboundPosition = 307; + sRectangularSpiralLines[2].outward = FALSE; - // Bottom left - sRectangularSpiralLines[3].state = 0; + // Line starting in bottom left + sRectangularSpiralLines[3].state = SPIRAL_INWARD_START; sRectangularSpiralLines[3].position = -3; sRectangularSpiralLines[3].moveIdx = 1; - sRectangularSpiralLines[3].skipPosition = 307; - sRectangularSpiralLines[3].field_8 = 0; + sRectangularSpiralLines[3].reboundPosition = 307; + sRectangularSpiralLines[3].outward = FALSE; return FALSE; } @@ -3219,7 +3256,7 @@ static bool8 RectangularSpiral_Main(struct Task *task) done = FALSE; position = sRectangularSpiralLines[j].position; - // Invert position for the two bottom lines + // Invert position for the two lines that start at the bottom. if ((j % 2) == 1) position = 637 - position; @@ -3248,6 +3285,10 @@ static bool8 RectangularSpiral_End(struct Task *task) 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) return FALSE; @@ -3257,18 +3298,22 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru sDebug_RectangularSpiralData = moveData[2]; sDebug_RectangularSpiralData = moveData[3]; + // Note that for the two lines originating at the bottom the + // position is inverted, so the directions are flipped. + // i.e. position += 1 is right for the top lines and left + // for their inverted partners on the bottom. switch (moveData[0]) { - case 1: + case MOVE_RIGHT: line->position += 1; break; - case 2: + case MOVE_LEFT: line->position -= 1; break; - case 3: + case MOVE_UP: line->position -= 32; break; - case 4: + case MOVE_DOWN: line->position += 32; break; } @@ -3278,31 +3323,40 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru if (line->position >= 640 || moveData[line->moveIdx] == SPIRAL_END) return FALSE; - if (line->field_8 == 0 && moveData[line->moveIdx] == SPIRAL_SKIP) + if (!line->outward && moveData[line->moveIdx] == SPIRAL_REBOUND) { - line->field_8 = 1; + // Line has reached the final point of spiraling inward. + // Time to flip and start spiraling outward. + line->outward = TRUE; line->moveIdx = 1; - line->position = line->skipPosition; - line->state = 4; + line->position = line->reboundPosition; + line->state = SPIRAL_OUTWARD_START; } + // Reached move target, advance to next movement. if (line->position == moveData[line->moveIdx]) { line->state++; - if (line->field_8 == 1) + if (line->outward == TRUE) { - if (line->state > 7) + if (line->state > SPIRAL_OUTWARD_END) { + // 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->state = 4; + line->state = SPIRAL_OUTWARD_START; } } else { - if (line->state > 3) + if (line->state > SPIRAL_INWARD_END) { + // 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->state = 0; + line->state = SPIRAL_INWARD_START; } } } @@ -4181,6 +4235,7 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) // B_TRANSITION_FRONTIER_LOGO_WIGGLE //----------------------------------- +#define tSinIndex data[4] #define tAmplitude data[5] static bool8 FrontierLogoWiggle_Init(struct Task *task) @@ -4203,7 +4258,7 @@ static bool8 FrontierLogoWiggle_SetGfx(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierLogo_Tilemap, tilemap); - SetSinWave(gScanlineEffectRegBuffers[0], 0, task->data[4], 0x84, task->tAmplitude, DISPLAY_HEIGHT); + SetSinWave(gScanlineEffectRegBuffers[0], 0, task->tSinIndex, 132, task->tAmplitude, DISPLAY_HEIGHT); task->tState++; return TRUE; @@ -4214,6 +4269,7 @@ static void Task_FrontierLogoWiggle(u8 taskId) while (sFrontierLogoWiggle_Funcs[gTasks[taskId].tState](&gTasks[taskId])); } +#undef tSinIndex #undef tAmplitude //--------------------------------- @@ -4270,7 +4326,7 @@ static bool8 FrontierLogoWave_SetGfx(struct Task *task) return TRUE; } -static bool8 FrontierLogoWave_Func3(struct Task *task) +static bool8 FrontierLogoWave_InitScanline(struct Task *task) { u8 i; @@ -4285,7 +4341,7 @@ static bool8 FrontierLogoWave_Func3(struct Task *task) return TRUE; } -static bool8 FrontierLogoWave_Func4(struct Task *task) +static bool8 FrontierLogoWave_Main(struct Task *task) { u8 i; u16 sinVal, amplitude, sinSpread; @@ -4300,8 +4356,8 @@ static bool8 FrontierLogoWave_Func4(struct Task *task) if (task->tTimer >= 70) { - // Decrease amount logo moves up and down - // until it rests in the middle of the screen. + // Decrease amount of logo movement and distortion + // until it rests normally in the middle of the screen. if (task->tAmplitudeVal - 384 >= 0) task->tAmplitudeVal -= 384; else @@ -4319,7 +4375,7 @@ static bool8 FrontierLogoWave_Func4(struct Task *task) sTransitionData->BLDALPHA = BLDALPHA_BLEND(task->tBlendTarget2, task->tBlendTarget1); } - // Move logo up and down + // Move logo up and down and distort it for (i = 0; i < DISPLAY_HEIGHT; i++, sinVal += sinSpread) { s16 index = sinVal / 256; @@ -4369,10 +4425,6 @@ static void HBlankCB_FrontierLogoWave(void) // and B_TRANSITION_FRONTIER_SQUARES_SPIRAL //---------------------------------------------------------------------- -#define NUM_SQUARES_PER_ROW 7 -#define NUM_SQUARES_PER_COL 5 -#define SQUARE_SIZE 4 - #define tPosX data[2] #define tPosY data[3] #define tRowPos data[4] @@ -4402,13 +4454,13 @@ static bool8 FrontierSquares_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierSquares_FilledBg_Tileset, tileset); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); - FillBgTilemapBufferRect(0, 1, 0, 0, 1, 0x20, 0xF); - FillBgTilemapBufferRect(0, 1, 0x1D, 0, 1, 0x20, 0xF); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); + FillBgTilemapBufferRect(0, 1, 0, 0, MARGIN_SIZE, 32, 15); + FillBgTilemapBufferRect(0, 1, 30 - MARGIN_SIZE, 0, MARGIN_SIZE, 32, 15); CopyBgTilemapBufferToVram(0); LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); - task->tPosX = 1; + task->tPosX = MARGIN_SIZE; task->tPosY = 0; task->tRowPos = 0; task->tShrinkDelay = 10; @@ -4429,7 +4481,7 @@ static bool8 FrontierSquares_Draw(struct Task *task) task->tPosX += SQUARE_SIZE; if (++task->tRowPos == NUM_SQUARES_PER_ROW) { - task->tPosX = 1; + task->tPosX = MARGIN_SIZE; task->tPosY += SQUARE_SIZE; task->tRowPos = 0; if (task->tPosY >= NUM_SQUARES_PER_COL * SQUARE_SIZE) @@ -4452,8 +4504,8 @@ static bool8 FrontierSquares_Shrink(struct Task *task) case 0: for (i = 250; i < 255; i++) { - gPlttBufferUnfaded[i] = 0; - gPlttBufferFaded[i] = 0; + gPlttBufferUnfaded[i] = RGB_BLACK; + gPlttBufferFaded[i] = RGB_BLACK; } break; case 1: @@ -4467,7 +4519,7 @@ static bool8 FrontierSquares_Shrink(struct Task *task) LZ77UnCompVram(sFrontierSquares_Shrink2_Tileset, tileset); break; default: - FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); + FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 32, 32); CopyBgTilemapBufferToVram(0); task->tState++; return FALSE; @@ -4487,6 +4539,9 @@ static bool8 FrontierSquares_Shrink(struct Task *task) #undef tShrinkDelayTimer #undef tShrinkDelay +#define tSquareNum data[2] +#define tFadeFlag data[3] + static bool8 FrontierSquaresSpiral_Init(struct Task *task) { u16 *tilemap, *tileset; @@ -4494,83 +4549,81 @@ static bool8 FrontierSquaresSpiral_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierSquares_FilledBg_Tileset, tileset); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); - FillBgTilemapBufferRect(0, 1, 0, 0, 1, 0x20, 0xF); - FillBgTilemapBufferRect(0, 1, 0x1D, 0, 1, 0x20, 0xF); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); + FillBgTilemapBufferRect(0, 1, 0, 0, MARGIN_SIZE, 32, 15); + FillBgTilemapBufferRect(0, 1, 30 - MARGIN_SIZE, 0, MARGIN_SIZE, 32, 15); CopyBgTilemapBufferToVram(0); LoadPalette(sFrontierSquares_Palette, 0xE0, sizeof(sFrontierSquares_Palette)); LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); - BlendPalette(0xE0, 16, 8, 0); + BlendPalette(0xE0, 16, 8, RGB_BLACK); - task->data[2] = 34; - task->data[3] = 0; + task->tSquareNum = NUM_SQUARES - 1; + task->tFadeFlag = 0; task->tState++; return FALSE; } -static bool8 FrontierSquaresSpiral_Func2(struct Task *task) +static bool8 FrontierSquaresSpiral_Outward(struct Task *task) { - u8 var = gUnknown_085C9A30[task->data[2]]; - u8 varMod = var % 7; - u8 varDiv = var / 7; - CopyRectToBgTilemapBufferRect(0, &sFrontierSquares_Tilemap, 0, 0, 4, 4, 4 * varMod + 1, 4 * varDiv, 4, 4, 0xF, 0, 0); + u8 pos = sFrontierSquaresSpiral_Positions[task->tSquareNum]; + u8 x = pos % NUM_SQUARES_PER_ROW; + u8 y = pos / NUM_SQUARES_PER_ROW; + CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, + SQUARE_SIZE, SQUARE_SIZE, + SQUARE_SIZE * x + MARGIN_SIZE, SQUARE_SIZE * y, + SQUARE_SIZE, SQUARE_SIZE, + 15, 0, 0); CopyBgTilemapBufferToVram(0); - if (--task->data[2] < 0) + if (--task->tSquareNum < 0) task->tState++; return FALSE; } -static bool8 FrontierSquaresSpiral_Func3(struct Task *task) +// Now that the overworld is completely covered by the squares, +// set it to black so it's not revealed when the squares are removed. +static bool8 FrontierSquaresSpiral_SetBlack(struct Task *task) { - BlendPalette(0xE0, 16, 3, 0); + BlendPalette(0xE0, 16, 3, RGB_BLACK); BlendPalettes(PALETTES_ALL & ~(1 << 15 | 1 << 14), 16, RGB_BLACK); - task->data[2] = 0; - task->data[3] = 0; + task->tSquareNum = 0; + task->tFadeFlag = 0; task->tState++; return FALSE; } -static bool8 FrontierSquaresSpiral_Func4(struct Task *task) +// Spiral inward erasing the squares +static bool8 FrontierSquaresSpiral_Inward(struct Task *task) { - if ((task->data[3] ^= 1)) + // Each square is faded first, then the one that was faded last move is erased. + if (task->tFadeFlag ^= 1) { - CopyRectToBgTilemapBufferRect( - 0, - sFrontierSquares_Tilemap, - 0, - 0, - 4, - 4, - 4 * (gUnknown_085C9A30[task->data[2]] % 7) + 1, - 4 * (gUnknown_085C9A30[task->data[2]] / 7), - 4, - 4, - 0xE, - 0, - 0); + // Shade square + CopyRectToBgTilemapBufferRect(0, sFrontierSquares_Tilemap, 0, 0, + SQUARE_SIZE, SQUARE_SIZE, + SQUARE_SIZE * (sFrontierSquaresSpiral_Positions[task->tSquareNum] % NUM_SQUARES_PER_ROW) + MARGIN_SIZE, + SQUARE_SIZE * (sFrontierSquaresSpiral_Positions[task->tSquareNum] / NUM_SQUARES_PER_ROW), + SQUARE_SIZE, SQUARE_SIZE, + 14, 0, 0); } else { - if (task->data[2] > 0) + if (task->tSquareNum > 0) { - FillBgTilemapBufferRect( - 0, - 1, - 4 * (gUnknown_085C9A30[task->data[2] - 1] % 7) + 1, - 4 * (gUnknown_085C9A30[task->data[2] - 1] / 7), - 4, - 4, - 0xF); + // Erase square + FillBgTilemapBufferRect(0, 1, + SQUARE_SIZE * (sFrontierSquaresSpiral_Positions[task->tSquareNum - 1] % NUM_SQUARES_PER_ROW) + MARGIN_SIZE, + SQUARE_SIZE * (sFrontierSquaresSpiral_Positions[task->tSquareNum - 1] / NUM_SQUARES_PER_ROW), + SQUARE_SIZE, SQUARE_SIZE, + 15); } - - task->data[2]++; + task->tSquareNum++; } - if (task->data[2] > 34) + if (task->tSquareNum >= NUM_SQUARES) task->tState++; CopyBgTilemapBufferToVram(0); @@ -4579,26 +4632,30 @@ static bool8 FrontierSquaresSpiral_Func4(struct Task *task) static bool8 FrontierSquares_End(struct Task *task) { - FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); + FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 32, 32); CopyBgTilemapBufferToVram(0); BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); DestroyTask(FindTaskIdByFunc(task->func)); return FALSE; } -// sub task for phase2 32 -#define tSub32_X_delta data[0] -#define tSub32_Y_delta data[1] -#define tSub32_Bool data[2] +#undef tSquareNum +#undef tFadeFlag + +#define tScrollXDir data[0] +#define tScrollYDir data[1] +#define tScrollUpdateFlag data[2] -static void sub_814ABE4(u8 taskId) +#define tSquareNum data[2] + +static void Task_ScrollBg(u8 taskId) { - if (!(gTasks[taskId].tSub32_Bool ^= 1)) + if (!(gTasks[taskId].tScrollUpdateFlag ^= 1)) { SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_X); SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_Y); - gBattle_BG0_X += gTasks[taskId].tSub32_X_delta; - gBattle_BG0_Y += gTasks[taskId].tSub32_Y_delta; + gBattle_BG0_X += gTasks[taskId].tScrollXDir; + gBattle_BG0_Y += gTasks[taskId].tScrollYDir; } } @@ -4609,7 +4666,7 @@ static bool8 FrontierSquaresScroll_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); LZ77UnCompVram(sFrontierSquares_FilledBg_Tileset, tileset); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); CopyBgTilemapBufferToVram(0); LoadPalette(sFrontierSquares_Palette, 0xF0, sizeof(sFrontierSquares_Palette)); @@ -4618,25 +4675,27 @@ static bool8 FrontierSquaresScroll_Init(struct Task *task) SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_X); SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_Y); - task->data[2] = 0; - taskId = CreateTask(sub_814ABE4, 1); + task->tSquareNum = 0; + + // Start scrolling bg in a random direction. + taskId = CreateTask(Task_ScrollBg, 1); switch (Random() % 4) { - case 0: - gTasks[taskId].tSub32_X_delta = 1; - gTasks[taskId].tSub32_Y_delta = 1; + case 0: // Down/right + gTasks[taskId].tScrollXDir = 1; + gTasks[taskId].tScrollYDir = 1; break; - case 1: - gTasks[taskId].tSub32_X_delta = -1; - gTasks[taskId].tSub32_Y_delta = -1; + case 1: // Up/left + gTasks[taskId].tScrollXDir = -1; + gTasks[taskId].tScrollYDir = -1; break; - case 2: - gTasks[taskId].tSub32_X_delta = 1; - gTasks[taskId].tSub32_Y_delta = -1; + case 2: // Up/right + gTasks[taskId].tScrollXDir = 1; + gTasks[taskId].tScrollYDir = -1; break; - default: - gTasks[taskId].tSub32_X_delta = -1; - gTasks[taskId].tSub32_Y_delta = 1; + default: // Down/left + gTasks[taskId].tScrollXDir = -1; + gTasks[taskId].tScrollYDir = 1; break; } @@ -4644,65 +4703,57 @@ static bool8 FrontierSquaresScroll_Init(struct Task *task) return FALSE; } -static bool8 FrontierSquaresScroll_Func2(struct Task *task) -{ - u8 var = gUnknown_085C9A53[task->data[2]]; - u8 varDiv = var / 8; - u8 varAnd = var & 7; - - CopyRectToBgTilemapBufferRect( - 0, - &sFrontierSquares_Tilemap, - 0, - 0, - 4, - 4, - 4 * varDiv + 1, - 4 * varAnd, - 4, - 4, - 0xF, - 0, - 0); +static bool8 FrontierSquaresScroll_Draw(struct Task *task) +{ + u8 pos = sFrontierSquaresScroll_Positions[task->tSquareNum]; + u8 x = pos / (NUM_SQUARES_PER_ROW + 1); // +1 because during scroll an additional column covers the margin. + u8 y = pos % (NUM_SQUARES_PER_ROW + 1); + + CopyRectToBgTilemapBufferRect(0, &sFrontierSquares_Tilemap, 0, 0, + SQUARE_SIZE, SQUARE_SIZE, + SQUARE_SIZE * x + MARGIN_SIZE, SQUARE_SIZE * y, + SQUARE_SIZE, SQUARE_SIZE, + 15, 0, 0); CopyBgTilemapBufferToVram(0); - if (++task->data[2] > 63) + if (++task->tSquareNum >= (int)ARRAY_COUNT(sFrontierSquaresScroll_Positions)) task->tState++; return 0; } -static bool8 FrontierSquaresScroll_Func3(struct Task *task) +// Now that the overworld is completely covered by the squares, +// set it to black so it's not revealed when the squares are removed. +static bool8 FrontierSquaresScroll_SetBlack(struct Task *task) { BlendPalettes(PALETTES_ALL & ~(1 << 15), 16, RGB_BLACK); - task->data[2] = 0; + task->tSquareNum = 0; task->tState++; return FALSE; } -static bool8 FrontierSquaresScroll_Func4(struct Task *task) +static bool8 FrontierSquaresScroll_Erase(struct Task *task) { - u8 var = gUnknown_085C9A53[task->data[2]]; - u8 varDiv = var / 8; - u8 varAnd = var % 8; + u8 pos = sFrontierSquaresScroll_Positions[task->tSquareNum]; + u8 x = pos / (NUM_SQUARES_PER_ROW + 1); + u8 y = pos % (NUM_SQUARES_PER_ROW + 1); - FillBgTilemapBufferRect(0, 1, 4 * varDiv + 1, 4 * varAnd, 4, 4, 0xF); + FillBgTilemapBufferRect(0, 1, + SQUARE_SIZE * x + MARGIN_SIZE, SQUARE_SIZE * y, + SQUARE_SIZE, SQUARE_SIZE, + 15); CopyBgTilemapBufferToVram(0); - if (++task->data[2] > 63) + if (++task->tSquareNum >= (int)ARRAY_COUNT(sFrontierSquaresScroll_Positions)) { - DestroyTask(FindTaskIdByFunc(sub_814ABE4)); + DestroyTask(FindTaskIdByFunc(Task_ScrollBg)); task->tState++; } return FALSE; } -#undef tSub32_X_delta -#undef tSub32_Y_delta -#undef tSub32_Bool - static bool8 FrontierSquaresScroll_End(struct Task *task) { gBattle_BG0_X = 0; @@ -4710,7 +4761,7 @@ static bool8 FrontierSquaresScroll_End(struct Task *task) SetGpuReg(REG_OFFSET_BG0VOFS, 0); SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_Y); - FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 0x20, 0x20); + FillBgTilemapBufferRect_Palette0(0, 1, 0, 0, 32, 32); CopyBgTilemapBufferToVram(0); BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); @@ -4721,3 +4772,8 @@ static bool8 FrontierSquaresScroll_End(struct Task *task) #endif return FALSE; } + +#undef tScrollXDir +#undef tScrollYDir +#undef tScrollUpdateFlag +#undef tSquareNum From 886551f655ee0651b47ad81e55404059f3e2673b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 29 Oct 2021 18:43:27 -0400 Subject: [PATCH 353/762] Clean up battle transition doc --- src/battle_transition.c | 352 ++++++++++++++++++++-------------------- 1 file changed, 174 insertions(+), 178 deletions(-) diff --git a/src/battle_transition.c b/src/battle_transition.c index 6aa388302448..1e421b5e470a 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -87,48 +87,48 @@ struct RectangularSpiralLine typedef bool8 (*TransitionStateFunc)(struct Task *task); typedef bool8 (*TransitionSpriteCallback)(struct Sprite *sprite); -static bool8 Transition_StartIntro(struct Task *task); -static bool8 Transition_WaitForIntro(struct Task *task); -static bool8 Transition_StartMain(struct Task *task); -static bool8 Transition_WaitForMain(struct Task *task); - -static void LaunchBattleTransitionTask(u8 transitionId); -static void Task_BattleTransition(u8 taskId); -static void Task_Intro(u8 taskId); -static void Task_Blur(u8 taskId); -static void Task_Swirl(u8 taskId); -static void Task_Shuffle(u8 taskId); -static void Task_BigPokeball(u8 taskId); -static void Task_PokeballsTrail(u8 taskId); -static void Task_ClockwiseWipe(u8 taskId); -static void Task_Ripple(u8 taskId); -static void Task_Wave(u8 taskId); -static void Task_Slice(u8 taskId); -static void Task_WhiteBarsFade(u8 taskId); -static void Task_GridSquares(u8 taskId); -static void Task_AngledWipes(u8 taskId); -static void Task_Sidney(u8 taskId); -static void Task_Phoebe(u8 taskId); -static void Task_Glacia(u8 taskId); -static void Task_Drake(u8 taskId); -static void Task_Champion(u8 taskId); -static void Task_Aqua(u8 taskId); -static void Task_Magma(u8 taskId); -static void Task_Regice(u8 taskId); -static void Task_Registeel(u8 taskId); -static void Task_Regirock(u8 taskId); -static void Task_Kyogre(u8 taskId); -static void Task_Groudon(u8 taskId); -static void Task_Rayquaza(u8 taskId); -static void Task_ShredSplit(u8 taskId); -static void Task_Blackhole(u8 taskId); -static void Task_BlackholePulsate(u8 taskId); -static void Task_RectangularSpiral(u8 taskId); -static void Task_FrontierLogoWiggle(u8 taskId); -static void Task_FrontierLogoWave(u8 taskId); -static void Task_FrontierSquares(u8 taskId); -static void Task_FrontierSquaresScroll(u8 taskId); -static void Task_FrontierSquaresSpiral(u8 taskId); +static bool8 Transition_StartIntro(struct Task *); +static bool8 Transition_WaitForIntro(struct Task *); +static bool8 Transition_StartMain(struct Task *); +static bool8 Transition_WaitForMain(struct Task *); + +static void LaunchBattleTransitionTask(u8); +static void Task_BattleTransition(u8); +static void Task_Intro(u8); +static void Task_Blur(u8); +static void Task_Swirl(u8); +static void Task_Shuffle(u8); +static void Task_BigPokeball(u8); +static void Task_PokeballsTrail(u8); +static void Task_ClockwiseWipe(u8); +static void Task_Ripple(u8); +static void Task_Wave(u8); +static void Task_Slice(u8); +static void Task_WhiteBarsFade(u8); +static void Task_GridSquares(u8); +static void Task_AngledWipes(u8); +static void Task_Sidney(u8); +static void Task_Phoebe(u8); +static void Task_Glacia(u8); +static void Task_Drake(u8); +static void Task_Champion(u8); +static void Task_Aqua(u8); +static void Task_Magma(u8); +static void Task_Regice(u8); +static void Task_Registeel(u8); +static void Task_Regirock(u8); +static void Task_Kyogre(u8); +static void Task_Groudon(u8); +static void Task_Rayquaza(u8); +static void Task_ShredSplit(u8); +static void Task_Blackhole(u8); +static void Task_BlackholePulsate(u8); +static void Task_RectangularSpiral(u8); +static void Task_FrontierLogoWiggle(u8); +static void Task_FrontierLogoWave(u8); +static void Task_FrontierSquares(u8); +static void Task_FrontierSquaresScroll(u8); +static void Task_FrontierSquaresSpiral(u8); static void VBlankCB_BattleTransition(void); static void VBlankCB_Swirl(void); static void HBlankCB_Swirl(void); @@ -149,144 +149,144 @@ static void VBlankCB_WhiteBarsFade_Blend(void); static void HBlankCB_WhiteBarsFade(void); static void VBlankCB_AngledWipes(void); static void VBlankCB_Rayquaza(void); -static bool8 Blur_Init(struct Task *task); -static bool8 Blur_Main(struct Task *task); -static bool8 Blur_End(struct Task *task); -static bool8 Swirl_Init(struct Task *task); -static bool8 Swirl_End(struct Task *task); -static bool8 Shuffle_Init(struct Task *task); -static bool8 Shuffle_End(struct Task *task); -static bool8 Aqua_Init(struct Task *task); -static bool8 Aqua_SetGfx(struct Task *task); -static bool8 Magma_Init(struct Task *task); -static bool8 Magma_SetGfx(struct Task *task); -static bool8 FramesCountdown(struct Task *task); -static bool8 Regi_Init(struct Task *task); -static bool8 Regice_SetGfx(struct Task *task); -static bool8 Registeel_SetGfx(struct Task *task); -static bool8 Regirock_SetGfx(struct Task *task); -static bool8 WeatherTrio_BgFadeBlack(struct Task *task); -static bool8 WeatherTrio_WaitFade(struct Task *task); -static bool8 Kyogre_Init(struct Task *task); -static bool8 Kyogre_PaletteFlash(struct Task *task); -static bool8 Kyogre_PaletteBrighten(struct Task *task); -static bool8 Groudon_Init(struct Task *task); -static bool8 Groudon_PaletteFlash(struct Task *task); -static bool8 Groudon_PaletteBrighten(struct Task *task); -static bool8 WeatherDuo_FadeOut(struct Task *task); -static bool8 WeatherDuo_End(struct Task *task); -static bool8 BigPokeball_Init(struct Task *task); -static bool8 BigPokeball_SetGfx(struct Task *task); -static bool8 PatternWeave_Blend1(struct Task *task); -static bool8 PatternWeave_Blend2(struct Task *task); -static bool8 PatternWeave_FinishAppear(struct Task *task); -static bool8 PatternWeave_CircularMask(struct Task *task); -static bool8 PokeballsTrail_Init(struct Task *task); -static bool8 PokeballsTrail_Main(struct Task *task); -static bool8 PokeballsTrail_End(struct Task *task); -static bool8 ClockwiseWipe_Init(struct Task *task); -static bool8 ClockwiseWipe_TopRight(struct Task *task); -static bool8 ClockwiseWipe_Right(struct Task *task); -static bool8 ClockwiseWipe_Bottom(struct Task *task); -static bool8 ClockwiseWipe_Left(struct Task *task); -static bool8 ClockwiseWipe_TopLeft(struct Task *task); -static bool8 ClockwiseWipe_End(struct Task *task); -static bool8 Ripple_Init(struct Task *task); -static bool8 Ripple_Main(struct Task *task); -static bool8 Wave_Init(struct Task *task); -static bool8 Wave_Main(struct Task *task); -static bool8 Wave_End(struct Task *task); -static bool8 Slice_Init(struct Task *task); -static bool8 Slice_Main(struct Task *task); -static bool8 Slice_End(struct Task *task); -static bool8 WhiteBarsFade_Init(struct Task *task); -static bool8 WhiteBarsFade_StartBars(struct Task *task); -static bool8 WhiteBarsFade_WaitBars(struct Task *task); -static bool8 WhiteBarsFade_BlendToBlack(struct Task *task); -static bool8 WhiteBarsFade_End(struct Task *task); -static bool8 GridSquares_Init(struct Task *task); -static bool8 GridSquares_Main(struct Task *task); -static bool8 GridSquares_End(struct Task *task); -static bool8 AngledWipes_Init(struct Task *task); -static bool8 AngledWipes_SetWipeData(struct Task *task); -static bool8 AngledWipes_DoWipe(struct Task *task); -static bool8 AngledWipes_TryEnd(struct Task *task); -static bool8 AngledWipes_StartNext(struct Task *task); -static bool8 ShredSplit_Init(struct Task *task); -static bool8 ShredSplit_Main(struct Task *task); -static bool8 ShredSplit_BrokenCheck(struct Task *task); -static bool8 ShredSplit_End(struct Task *task); -static bool8 Blackhole_Init(struct Task *task); -static bool8 Blackhole_Vibrate(struct Task *task); -static bool8 Blackhole_GrowEnd(struct Task *task); -static bool8 BlackholePulsate_Main(struct Task *task); -static bool8 RectangularSpiral_Init(struct Task *task); -static bool8 RectangularSpiral_Main(struct Task *task); -static bool8 RectangularSpiral_End(struct Task *task); -static bool8 FrontierLogoWiggle_Init(struct Task *task); -static bool8 FrontierLogoWiggle_SetGfx(struct Task *task); -static bool8 FrontierLogoWave_Init(struct Task *task); -static bool8 FrontierLogoWave_SetGfx(struct Task *task); -static bool8 FrontierLogoWave_InitScanline(struct Task *task); -static bool8 FrontierLogoWave_Main(struct Task *task); -static bool8 Rayquaza_Init(struct Task *task); -static bool8 Rayquaza_SetGfx(struct Task *task); -static bool8 Rayquaza_PaletteFlash(struct Task *task); -static bool8 Rayquaza_FadeToBlack(struct Task *task); -static bool8 Rayquaza_WaitFade(struct Task *task); -static bool8 Rayquaza_SetBlack(struct Task *task); -static bool8 Rayquaza_TriRing(struct Task *task); -static bool8 FrontierSquares_Init(struct Task *task); -static bool8 FrontierSquares_Draw(struct Task *task); -static bool8 FrontierSquares_Shrink(struct Task *task); -static bool8 FrontierSquares_End(struct Task *task); -static bool8 FrontierSquaresSpiral_Init(struct Task *task); -static bool8 FrontierSquaresSpiral_Outward(struct Task *task); -static bool8 FrontierSquaresSpiral_SetBlack(struct Task *task); -static bool8 FrontierSquaresSpiral_Inward(struct Task *task); -static bool8 FrontierSquaresScroll_Init(struct Task *task); -static bool8 FrontierSquaresScroll_Draw(struct Task *task); -static bool8 FrontierSquaresScroll_SetBlack(struct Task *task); -static bool8 FrontierSquaresScroll_Erase(struct Task *task); -static bool8 FrontierSquaresScroll_End(struct Task *task); -static bool8 Mugshot_Init(struct Task *task); -static bool8 Mugshot_SetGfx(struct Task *task); -static bool8 Mugshot_ShowBanner(struct Task *task); -static bool8 Mugshot_StartOpponentSlide(struct Task *task); -static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task); -static bool8 Mugshot_WaitPlayerSlide(struct Task *task); -static bool8 Mugshot_GradualWhiteFade(struct Task *task); -static bool8 Mugshot_InitFadeWhiteToBlack(struct Task *task); -static bool8 Mugshot_FadeToBlack(struct Task *task); -static bool8 Mugshot_End(struct Task *task); -static void DoMugshotTransition(u8 taskId); -static void Mugshots_CreateTrainerPics(struct Task *task); +static bool8 Blur_Init(struct Task *); +static bool8 Blur_Main(struct Task *); +static bool8 Blur_End(struct Task *); +static bool8 Swirl_Init(struct Task *); +static bool8 Swirl_End(struct Task *); +static bool8 Shuffle_Init(struct Task *); +static bool8 Shuffle_End(struct Task *); +static bool8 Aqua_Init(struct Task *); +static bool8 Aqua_SetGfx(struct Task *); +static bool8 Magma_Init(struct Task *); +static bool8 Magma_SetGfx(struct Task *); +static bool8 FramesCountdown(struct Task *); +static bool8 Regi_Init(struct Task *); +static bool8 Regice_SetGfx(struct Task *); +static bool8 Registeel_SetGfx(struct Task *); +static bool8 Regirock_SetGfx(struct Task *); +static bool8 WeatherTrio_BgFadeBlack(struct Task *); +static bool8 WeatherTrio_WaitFade(struct Task *); +static bool8 Kyogre_Init(struct Task *); +static bool8 Kyogre_PaletteFlash(struct Task *); +static bool8 Kyogre_PaletteBrighten(struct Task *); +static bool8 Groudon_Init(struct Task *); +static bool8 Groudon_PaletteFlash(struct Task *); +static bool8 Groudon_PaletteBrighten(struct Task *); +static bool8 WeatherDuo_FadeOut(struct Task *); +static bool8 WeatherDuo_End(struct Task *); +static bool8 BigPokeball_Init(struct Task *); +static bool8 BigPokeball_SetGfx(struct Task *); +static bool8 PatternWeave_Blend1(struct Task *); +static bool8 PatternWeave_Blend2(struct Task *); +static bool8 PatternWeave_FinishAppear(struct Task *); +static bool8 PatternWeave_CircularMask(struct Task *); +static bool8 PokeballsTrail_Init(struct Task *); +static bool8 PokeballsTrail_Main(struct Task *); +static bool8 PokeballsTrail_End(struct Task *); +static bool8 ClockwiseWipe_Init(struct Task *); +static bool8 ClockwiseWipe_TopRight(struct Task *); +static bool8 ClockwiseWipe_Right(struct Task *); +static bool8 ClockwiseWipe_Bottom(struct Task *); +static bool8 ClockwiseWipe_Left(struct Task *); +static bool8 ClockwiseWipe_TopLeft(struct Task *); +static bool8 ClockwiseWipe_End(struct Task *); +static bool8 Ripple_Init(struct Task *); +static bool8 Ripple_Main(struct Task *); +static bool8 Wave_Init(struct Task *); +static bool8 Wave_Main(struct Task *); +static bool8 Wave_End(struct Task *); +static bool8 Slice_Init(struct Task *); +static bool8 Slice_Main(struct Task *); +static bool8 Slice_End(struct Task *); +static bool8 WhiteBarsFade_Init(struct Task *); +static bool8 WhiteBarsFade_StartBars(struct Task *); +static bool8 WhiteBarsFade_WaitBars(struct Task *); +static bool8 WhiteBarsFade_BlendToBlack(struct Task *); +static bool8 WhiteBarsFade_End(struct Task *); +static bool8 GridSquares_Init(struct Task *); +static bool8 GridSquares_Main(struct Task *); +static bool8 GridSquares_End(struct Task *); +static bool8 AngledWipes_Init(struct Task *); +static bool8 AngledWipes_SetWipeData(struct Task *); +static bool8 AngledWipes_DoWipe(struct Task *); +static bool8 AngledWipes_TryEnd(struct Task *); +static bool8 AngledWipes_StartNext(struct Task *); +static bool8 ShredSplit_Init(struct Task *); +static bool8 ShredSplit_Main(struct Task *); +static bool8 ShredSplit_BrokenCheck(struct Task *); +static bool8 ShredSplit_End(struct Task *); +static bool8 Blackhole_Init(struct Task *); +static bool8 Blackhole_Vibrate(struct Task *); +static bool8 Blackhole_GrowEnd(struct Task *); +static bool8 BlackholePulsate_Main(struct Task *); +static bool8 RectangularSpiral_Init(struct Task *); +static bool8 RectangularSpiral_Main(struct Task *); +static bool8 RectangularSpiral_End(struct Task *); +static bool8 FrontierLogoWiggle_Init(struct Task *); +static bool8 FrontierLogoWiggle_SetGfx(struct Task *); +static bool8 FrontierLogoWave_Init(struct Task *); +static bool8 FrontierLogoWave_SetGfx(struct Task *); +static bool8 FrontierLogoWave_InitScanline(struct Task *); +static bool8 FrontierLogoWave_Main(struct Task *); +static bool8 Rayquaza_Init(struct Task *); +static bool8 Rayquaza_SetGfx(struct Task *); +static bool8 Rayquaza_PaletteFlash(struct Task *); +static bool8 Rayquaza_FadeToBlack(struct Task *); +static bool8 Rayquaza_WaitFade(struct Task *); +static bool8 Rayquaza_SetBlack(struct Task *); +static bool8 Rayquaza_TriRing(struct Task *); +static bool8 FrontierSquares_Init(struct Task *); +static bool8 FrontierSquares_Draw(struct Task *); +static bool8 FrontierSquares_Shrink(struct Task *); +static bool8 FrontierSquares_End(struct Task *); +static bool8 FrontierSquaresSpiral_Init(struct Task *); +static bool8 FrontierSquaresSpiral_Outward(struct Task *); +static bool8 FrontierSquaresSpiral_SetBlack(struct Task *); +static bool8 FrontierSquaresSpiral_Inward(struct Task *); +static bool8 FrontierSquaresScroll_Init(struct Task *); +static bool8 FrontierSquaresScroll_Draw(struct Task *); +static bool8 FrontierSquaresScroll_SetBlack(struct Task *); +static bool8 FrontierSquaresScroll_Erase(struct Task *); +static bool8 FrontierSquaresScroll_End(struct Task *); +static bool8 Mugshot_Init(struct Task *); +static bool8 Mugshot_SetGfx(struct Task *); +static bool8 Mugshot_ShowBanner(struct Task *); +static bool8 Mugshot_StartOpponentSlide(struct Task *); +static bool8 Mugshot_WaitStartPlayerSlide(struct Task *); +static bool8 Mugshot_WaitPlayerSlide(struct Task *); +static bool8 Mugshot_GradualWhiteFade(struct Task *); +static bool8 Mugshot_InitFadeWhiteToBlack(struct Task *); +static bool8 Mugshot_FadeToBlack(struct Task *); +static bool8 Mugshot_End(struct Task *); +static void DoMugshotTransition(u8); +static void Mugshots_CreateTrainerPics(struct Task *); static void VBlankCB_Mugshots(void); static void VBlankCB_MugshotsFadeOut(void); static void HBlankCB_Mugshots(void); static void InitTransitionData(void); static void FadeScreenBlack(void); -static void CreateIntroTask(s16 a0, s16 a1, s16 a2, s16 a3, s16 a4); -static void SetCircularMask(u16 *a0, s16 a1, s16 a2, s16 a3); -static void SetSinWave(s16 *array, s16 sinAdd, s16 index, s16 indexIncrementer, s16 amplitude, s16 arrSize); -static void GetBg0TilemapDst(u16 **tileset); -static void InitBlackWipe(s16 *a0, s16 a1, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6); -static bool8 UpdateBlackWipe(s16 *a0, bool8 a1, bool8 a2); -static void SetTrainerPicSlideDirection(s16 spriteId, s16 arrId); -static void IncrementTrainerPicState(s16 spriteId); -static s16 IsTrainerPicSlideDone(s16 spriteId); -static bool8 TransitionIntro_FadeToGray(struct Task *task); -static bool8 TransitionIntro_FadeFromGray(struct Task *task); +static void CreateIntroTask(s16, s16, s16, s16, s16); +static void SetCircularMask(u16 *, s16, s16, s16); +static void SetSinWave(s16 *, s16, s16, s16, s16, s16); +static void GetBg0TilemapDst(u16 **); +static void InitBlackWipe(s16 *, s16, s16, s16, s16, s16, s16); +static bool8 UpdateBlackWipe(s16 *, bool8, bool8); +static void SetTrainerPicSlideDirection(s16, s16); +static void IncrementTrainerPicState(s16); +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 *arg0, struct RectangularSpiralLine *arg1); -static void SpriteCB_FldEffPokeballTrail(struct Sprite *sprite); -static void SpriteCB_MugshotTrainerPic(struct Sprite *sprite); -static void SpriteCB_WhiteBarFade(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Pause(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Init(struct Sprite *sprite); -static bool8 MugshotTrainerPic_Slide(struct Sprite *sprite); -static bool8 MugshotTrainerPic_SlideSlow(struct Sprite *sprite); -static bool8 MugshotTrainerPic_SlideOffscreen(struct Sprite *sprite); +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 *); +static bool8 MugshotTrainerPic_Pause(struct Sprite *); +static bool8 MugshotTrainerPic_Init(struct Sprite *); +static bool8 MugshotTrainerPic_Slide(struct Sprite *); +static bool8 MugshotTrainerPic_SlideSlow(struct Sprite *); +static bool8 MugshotTrainerPic_SlideOffscreen(struct Sprite *); static s16 sDebug_RectangularSpiralData; static u8 sTestingTransitionId; @@ -959,10 +959,6 @@ static const TransitionStateFunc sFrontierSquaresScroll_Funcs[] = FrontierSquaresScroll_End }; -// Dimensions for the 2 non-scrolling frontier square transitions. -// SQUARE_SIZE is the same in the scrolling version but it uses -// more because it needs to show more than can be shown at a single -// time n-screen. #define SQUARE_SIZE 4 #define MARGIN_SIZE 1 // Squares do not fit evenly across the width, so there is a margin on either side. #define NUM_SQUARES_PER_ROW ((DISPLAY_WIDTH - (MARGIN_SIZE * 8 * 2)) / (SQUARE_SIZE * 8)) From 1a69eb33e8ae68e45c7ce886d26dbc59782f6767 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 29 Oct 2021 20:27:58 -0400 Subject: [PATCH 354/762] Add newlines around calcrom output --- .github/calcrom/webhook.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/calcrom/webhook.sh b/.github/calcrom/webhook.sh index 2a3015969e45..fd54b660b6c6 100755 --- a/.github/calcrom/webhook.sh +++ b/.github/calcrom/webhook.sh @@ -8,4 +8,4 @@ if [ ! -f $map_file ]; then fi output=$(perl $(dirname "$0")/calcrom.pl $build_name.map | sed -E ':a;N;$!ba;s/\r{0,1}\n/\\n/g') -curl -d "{\"username\": \"$CALCROM_DISCORD_WEBHOOK_USERNAME\", \"avatar_url\": \"$CALCROM_DISCORD_WEBHOOK_AVATAR_URL\", \"content\":\"\`\`\`$build_name progress:\\n$output\`\`\`\"}" -H "Content-Type: application/json" -X POST "$CALCROM_DISCORD_WEBHOOK_URL" +curl -d "{\"username\": \"$CALCROM_DISCORD_WEBHOOK_USERNAME\", \"avatar_url\": \"$CALCROM_DISCORD_WEBHOOK_AVATAR_URL\", \"content\":\"\`\`\`\\n$build_name progress:\\n$output\\n\`\`\`\"}" -H "Content-Type: application/json" -X POST "$CALCROM_DISCORD_WEBHOOK_URL" From 71605556ab6efef43fdaed3f4e84e41c85ac719b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 30 Oct 2021 11:59:14 -0400 Subject: [PATCH 355/762] Clean up braille_puzzles --- data/maps/SealedChamber_InnerRoom/scripts.inc | 8 +- data/specials.inc | 4 +- src/braille_puzzles.c | 97 ++++++++++--------- 3 files changed, 56 insertions(+), 53 deletions(-) diff --git a/data/maps/SealedChamber_InnerRoom/scripts.inc b/data/maps/SealedChamber_InnerRoom/scripts.inc index f81e5f9fde67..8c45c81ca2ad 100644 --- a/data/maps/SealedChamber_InnerRoom/scripts.inc +++ b/data/maps/SealedChamber_InnerRoom/scripts.inc @@ -12,18 +12,18 @@ SealedChamber_InnerRoom_EventScript_BrailleBackWall:: goto_if_eq SealedChamber_InnerRoom_EventScript_NoEffect fadeoutbgm 0 playse SE_TRUCK_MOVE - special DoSealedChamberShakingEffect1 + special DoSealedChamberShakingEffect_Long waitstate delay 40 - special DoSealedChamberShakingEffect2 + special DoSealedChamberShakingEffect_Short waitstate playse SE_DOOR delay 40 - special DoSealedChamberShakingEffect2 + special DoSealedChamberShakingEffect_Short waitstate playse SE_DOOR delay 40 - special DoSealedChamberShakingEffect2 + special DoSealedChamberShakingEffect_Short waitstate playse SE_DOOR delay 40 diff --git a/data/specials.inc b/data/specials.inc index 82eacbac0e96..a863b6e13705 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -315,7 +315,7 @@ gSpecials:: def_special IsStarterInParty def_special CopyCurSecretBaseOwnerName_StrVar1 def_special ScriptCheckFreePokemonStorageSpace - def_special DoSealedChamberShakingEffect1 + def_special DoSealedChamberShakingEffect_Long def_special ShowDeptStoreElevatorFloorSelect def_special InteractWithShieldOrTVDecoration def_special IsPokerusInParty @@ -325,7 +325,7 @@ gSpecials:: def_special BattleSetup_StartLegendaryBattle def_special StartRegiBattle def_special SetTrainerFacingDirection - def_special DoSealedChamberShakingEffect2 + def_special DoSealedChamberShakingEffect_Short def_special FoundBlackGlasses def_special StartDroughtWeatherBlend def_special DoDiveWarp diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index d8410988dd17..61fab39e28c1 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -13,16 +13,9 @@ #include "party_menu.h" #include "fldeff.h" -// why do this, GF? -enum -{ - REGIROCK_PUZZLE, - REGISTEEL_PUZZLE -}; - -EWRAM_DATA static u8 sBraillePuzzleCallbackFlag = 0; +EWRAM_DATA static bool8 sIsRegisteelPuzzle = 0; -static const u8 gRegicePathCoords[][2] = +static const u8 sRegicePathCoords[][2] = { {4, 21}, {5, 21}, @@ -62,9 +55,9 @@ static const u8 gRegicePathCoords[][2] = {4, 22}, }; -void SealedChamberShakingEffect(u8); -void DoBrailleRegirockEffect(void); -void DoBrailleRegisteelEffect(void); +static void Task_SealedChamberShakingEffect(u8); +static void DoBrailleRegirockEffect(void); +static void DoBrailleRegisteelEffect(void); bool8 ShouldDoBrailleDigEffect(void) { @@ -116,43 +109,48 @@ void ShouldDoBrailleRegirockEffectOld(void) { } -void DoSealedChamberShakingEffect1(void) +#define tDelayCounter data[1] +#define tShakeCounter data[2] +#define tVerticalPan data[4] +#define tDelay data[5] +#define tNumShakes data[6] + +void DoSealedChamberShakingEffect_Long(void) { - u8 taskId = CreateTask(SealedChamberShakingEffect, 9); + u8 taskId = CreateTask(Task_SealedChamberShakingEffect, 9); - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[4] = 2; - gTasks[taskId].data[5] = 5; - gTasks[taskId].data[6] = 50; + gTasks[taskId].tDelayCounter = 0; + gTasks[taskId].tShakeCounter = 0; + gTasks[taskId].tVerticalPan = 2; + gTasks[taskId].tDelay = 5; + gTasks[taskId].tNumShakes = 50; SetCameraPanningCallback(0); } -void DoSealedChamberShakingEffect2(void) +void DoSealedChamberShakingEffect_Short(void) { - u8 taskId = CreateTask(SealedChamberShakingEffect, 9); + u8 taskId = CreateTask(Task_SealedChamberShakingEffect, 9); - gTasks[taskId].data[1] = 0; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[4] = 3; - gTasks[taskId].data[5] = 5; - gTasks[taskId].data[6] = 2; + gTasks[taskId].tDelayCounter = 0; + gTasks[taskId].tShakeCounter = 0; + gTasks[taskId].tVerticalPan = 3; + gTasks[taskId].tDelay = 5; + gTasks[taskId].tNumShakes = 2; SetCameraPanningCallback(0); } -void SealedChamberShakingEffect(u8 taskId) +static void Task_SealedChamberShakingEffect(u8 taskId) { struct Task *task = &gTasks[taskId]; - task->data[1]++; - - if (!(task->data[1] % task->data[5])) + task->tDelayCounter++; + if (task->tDelayCounter % task->tDelay == 0) { - task->data[1] = 0; - task->data[2]++; - task->data[4] = -task->data[4]; - SetCameraPanning(0, task->data[4]); - if (task->data[2] == task->data[6]) + task->tDelayCounter = 0; + task->tShakeCounter++; + task->tVerticalPan = -task->tVerticalPan; + SetCameraPanning(0, task->tVerticalPan); + if (task->tShakeCounter == task->tNumShakes) { DestroyTask(taskId); EnableBothScriptContexts(); @@ -161,7 +159,12 @@ void SealedChamberShakingEffect(u8 taskId) } } -// moved later in the function because it was rewritten. +#undef tDelayCounter +#undef tShakeCounter +#undef tVerticalPan +#undef tDelay +#undef tNumShakes + bool8 ShouldDoBrailleRegirockEffect(void) { if (!FlagGet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED) @@ -170,17 +173,17 @@ bool8 ShouldDoBrailleRegirockEffect(void) { if (gSaveBlock1Ptr->pos.x == 6 && gSaveBlock1Ptr->pos.y == 23) { - sBraillePuzzleCallbackFlag = REGIROCK_PUZZLE; + sIsRegisteelPuzzle = FALSE; return TRUE; } else if (gSaveBlock1Ptr->pos.x == 5 && gSaveBlock1Ptr->pos.y == 23) { - sBraillePuzzleCallbackFlag = REGIROCK_PUZZLE; + sIsRegisteelPuzzle = FALSE; return TRUE; } else if (gSaveBlock1Ptr->pos.x == 7 && gSaveBlock1Ptr->pos.y == 23) { - sBraillePuzzleCallbackFlag = REGIROCK_PUZZLE; + sIsRegisteelPuzzle = FALSE; return TRUE; } } @@ -200,7 +203,7 @@ void UseRegirockHm_Callback(void) DoBrailleRegirockEffect(); } -void DoBrailleRegirockEffect(void) +static void DoBrailleRegirockEffect(void) { MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); @@ -220,7 +223,7 @@ bool8 ShouldDoBrailleRegisteelEffect(void) { if (gSaveBlock1Ptr->pos.x == 8 && gSaveBlock1Ptr->pos.y == 25) { - sBraillePuzzleCallbackFlag = REGISTEEL_PUZZLE; + sIsRegisteelPuzzle = TRUE; return TRUE; } } @@ -239,7 +242,7 @@ void UseRegisteelHm_Callback(void) DoBrailleRegisteelEffect(); } -void DoBrailleRegisteelEffect(void) +static void DoBrailleRegisteelEffect(void) { MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); @@ -254,7 +257,7 @@ void DoBrailleRegisteelEffect(void) } // theory: another commented out DoBrailleWait and Task_BrailleWait. -void DoBrailleWait(void) +static void DoBrailleWait(void) { } @@ -263,7 +266,7 @@ bool8 FldEff_UsePuzzleEffect(void) { u8 taskId = CreateFieldMoveTask(); - if (sBraillePuzzleCallbackFlag == REGISTEEL_PUZZLE) + if (sIsRegisteelPuzzle == TRUE) { gTasks[taskId].data[8] = (u32)UseRegisteelHm_Callback >> 16; gTasks[taskId].data[9] = (u32)UseRegisteelHm_Callback; @@ -290,10 +293,10 @@ bool8 ShouldDoBrailleRegicePuzzle(void) if (FlagGet(FLAG_TEMP_3) == TRUE) return FALSE; - for (i = 0; i < 36; i++) + for (i = 0; i < ARRAY_COUNT(sRegicePathCoords); i++) { - u8 xPos = gRegicePathCoords[i][0]; - u8 yPos = gRegicePathCoords[i][1]; + u8 xPos = sRegicePathCoords[i][0]; + u8 yPos = sRegicePathCoords[i][1]; if (gSaveBlock1Ptr->pos.x == xPos && gSaveBlock1Ptr->pos.y == yPos) { u16 varValue; From 13cd2a41f03ca56f45cab6769cb2738070cc5cf2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 30 Oct 2021 16:19:10 -0400 Subject: [PATCH 356/762] Better braille support --- asm/macros/event.inc | 6 + data/maps/AncientTomb/scripts.inc | 8 +- data/maps/DesertRuins/scripts.inc | 8 +- data/maps/SealedChamber_InnerRoom/scripts.inc | 28 +- data/maps/SealedChamber_OuterRoom/scripts.inc | 48 +-- .../maps/Underwater_SealedChamber/scripts.inc | 4 +- data/text/braille.inc | 4 + gflib/characters.h | 350 ++++++++++++++++++ gflib/string_util.c | 8 +- gflib/text.h | 268 +------------- src/contest.c | 8 +- src/pokedex.c | 4 +- src/union_room_chat.c | 8 +- tools/preproc/asm_file.cpp | 137 +++++-- tools/preproc/asm_file.h | 1 + 15 files changed, 502 insertions(+), 388 deletions(-) create mode 100644 gflib/characters.h diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 480684ef6e9d..62437ccb8abd 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1792,3 +1792,9 @@ setfieldeffectargument 2, \priority dofieldeffect FLDEFF_SPARKLE .endm + + .macro braillemsgbox text:req + braillemessage \text + waitbuttonpress + closebraillemessage + .endm diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index 40d9f0dff0f8..edbb75ccc560 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -40,9 +40,7 @@ AncientTomb_EventScript_HideRegiEntrance:: AncientTomb_EventScript_CaveEntranceMiddle:: lockall goto_if_set FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED, AncientTomb_EventScript_BigHoleInWall - braillemessage AncientTomb_Braille_ShineInTheMiddle - waitbuttonpress - closebraillemessage + braillemsgbox AncientTomb_Braille_ShineInTheMiddle releaseall end @@ -53,9 +51,7 @@ AncientTomb_EventScript_BigHoleInWall:: AncientTomb_EventScript_CaveEntranceSide:: lockall - braillemessage AncientTomb_Braille_ShineInTheMiddle - waitbuttonpress - closebraillemessage + braillemsgbox AncientTomb_Braille_ShineInTheMiddle releaseall end diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index 414dbfc572cf..1bcaa23bff34 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -40,9 +40,7 @@ DesertRuins_EventScript_ShowRegirock:: DesertRuins_EventScript_CaveEntranceMiddle:: lockall goto_if_set FLAG_SYS_REGIROCK_PUZZLE_COMPLETED, DesertRuins_EventScript_BigHoleInWall - braillemessage DesertRuins_Braille_UseRockSmash - waitbuttonpress - closebraillemessage + braillemsgbox DesertRuins_Braille_UseRockSmash releaseall end @@ -53,9 +51,7 @@ DesertRuins_EventScript_BigHoleInWall:: DesertRuins_EventScript_CaveEntranceSide:: lockall - braillemessage DesertRuins_Braille_UseRockSmash - waitbuttonpress - closebraillemessage + braillemsgbox DesertRuins_Braille_UseRockSmash releaseall end diff --git a/data/maps/SealedChamber_InnerRoom/scripts.inc b/data/maps/SealedChamber_InnerRoom/scripts.inc index 8c45c81ca2ad..7d240535ca24 100644 --- a/data/maps/SealedChamber_InnerRoom/scripts.inc +++ b/data/maps/SealedChamber_InnerRoom/scripts.inc @@ -3,9 +3,7 @@ SealedChamber_InnerRoom_MapScripts:: SealedChamber_InnerRoom_EventScript_BrailleBackWall:: lockall - braillemessage SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth goto_if_set FLAG_REGI_DOORS_OPENED, SealedChamber_InnerRoom_EventScript_NoEffect specialvar VAR_RESULT, CheckRelicanthWailord compare VAR_RESULT, FALSE @@ -40,49 +38,37 @@ SealedChamber_InnerRoom_EventScript_NoEffect:: SealedChamber_InnerRoom_EventScript_BrailleStoryPart1:: lockall - braillemessage SealedChamber_InnerRoom_Braille_InThisCaveWeHaveLived - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_InThisCaveWeHaveLived releaseall end SealedChamber_InnerRoom_EventScript_BrailleStoryPart2:: lockall - braillemessage SealedChamber_InnerRoom_Braille_WeOweAllToThePokemon - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_WeOweAllToThePokemon releaseall end SealedChamber_InnerRoom_EventScript_BrailleStoryPart3:: lockall - braillemessage SealedChamber_InnerRoom_Braille_ButWeSealedThePokemonAway - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_ButWeSealedThePokemonAway releaseall end SealedChamber_InnerRoom_EventScript_BrailleStoryPart4:: lockall - braillemessage SealedChamber_InnerRoom_Braille_WeFearedIt - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_WeFearedIt releaseall end SealedChamber_InnerRoom_EventScript_BrailleStoryPart5:: lockall - braillemessage SealedChamber_InnerRoom_Braille_ThoseWithCourageHope - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_ThoseWithCourageHope releaseall end SealedChamber_InnerRoom_EventScript_BrailleStoryPart6:: lockall - braillemessage SealedChamber_InnerRoom_Braille_OpenDoorEternalPokemonWaits - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_InnerRoom_Braille_OpenDoorEternalPokemonWaits releaseall end diff --git a/data/maps/SealedChamber_OuterRoom/scripts.inc b/data/maps/SealedChamber_OuterRoom/scripts.inc index 2e80d06c82bb..7d57ea544941 100644 --- a/data/maps/SealedChamber_OuterRoom/scripts.inc +++ b/data/maps/SealedChamber_OuterRoom/scripts.inc @@ -28,90 +28,68 @@ SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance:: SealedChamber_OuterRoom_EventScript_BrailleABC:: lockall - braillemessage SealedChamber_OuterRoom_Braille_ABC - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_ABC releaseall end SealedChamber_OuterRoom_EventScript_BrailleGHI:: lockall - braillemessage SealedChamber_OuterRoom_Braille_GHI - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_GHI releaseall end SealedChamber_OuterRoom_EventScript_BrailleMNO:: lockall - braillemessage SealedChamber_OuterRoom_Braille_MNO - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_MNO releaseall end SealedChamber_OuterRoom_EventScript_BrailleTUV:: lockall - braillemessage SealedChamber_OuterRoom_Braille_TUV - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_TUV releaseall end SealedChamber_OuterRoom_EventScript_BrailleDEF:: lockall - braillemessage SealedChamber_OuterRoom_Braille_DEF - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_DEF releaseall end SealedChamber_OuterRoom_EventScript_BrailleJKL:: lockall - braillemessage SealedChamber_OuterRoom_Braille_JKL - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_JKL releaseall end SealedChamber_OuterRoom_EventScript_BraillePQRS:: lockall - braillemessage SealedChamber_OuterRoom_Braille_PQRS - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_PQRS releaseall end SealedChamber_OuterRoom_EventScript_BraillePeriod:: lockall - braillemessage SealedChamber_OuterRoom_Braille_Period - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_Period releaseall end SealedChamber_OuterRoom_EventScript_BrailleWXYZ:: lockall - braillemessage SealedChamber_OuterRoom_Braille_WXYZ - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_WXYZ releaseall end SealedChamber_OuterRoom_EventScript_BrailleComma:: lockall - braillemessage SealedChamber_OuterRoom_Braille_Comma - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_Comma releaseall end SealedChamber_OuterRoom_EventScript_InnerRoomEntranceWall:: lockall goto_if_set FLAG_SYS_BRAILLE_DIG, SealedChamber_OuterRoom_EventScript_HoleInWall - braillemessage SealedChamber_OuterRoom_Braille_DigHere - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_DigHere releaseall end @@ -122,9 +100,7 @@ SealedChamber_OuterRoom_EventScript_HoleInWall:: SealedChamber_OuterRoom_EventScript_BrailleDigHere:: lockall - braillemessage SealedChamber_OuterRoom_Braille_DigHere - waitbuttonpress - closebraillemessage + braillemsgbox SealedChamber_OuterRoom_Braille_DigHere releaseall end diff --git a/data/maps/Underwater_SealedChamber/scripts.inc b/data/maps/Underwater_SealedChamber/scripts.inc index 3d8aaf979fe6..2b3fe5e0de24 100644 --- a/data/maps/Underwater_SealedChamber/scripts.inc +++ b/data/maps/Underwater_SealedChamber/scripts.inc @@ -20,9 +20,7 @@ Underwater_SealedChamber_EventScript_SurfaceSealedChamber:: Underwater_SealedChamber_EventScript_Braille:: lockall - braillemessage Underwater_SealedChamber_Braille_GoUpHere - waitbuttonpress - closebraillemessage + braillemsgbox Underwater_SealedChamber_Braille_GoUpHere releaseall end diff --git a/data/text/braille.inc b/data/text/braille.inc index 69f0a81e3851..4518c5769dd3 100644 --- a/data/text/braille.inc +++ b/data/text/braille.inc @@ -1,3 +1,7 @@ +@ NOTE: The brailleformat macro in this file is leftover from RS. +@ The numbers are simply skipped over. If you'd like to omit +@ this macro you must also stop it from skipping over this +@ section by editing ScrCmd_braillemessage. Underwater_SealedChamber_Braille_GoUpHere: brailleformat 4, 6, 26, 13, 7, 9 .braille "GO UP HERE.$" diff --git a/gflib/characters.h b/gflib/characters.h new file mode 100644 index 000000000000..ab003a3e3dec --- /dev/null +++ b/gflib/characters.h @@ -0,0 +1,350 @@ +#ifndef GUARD_CHARACTERS_H +#define GUARD_CHARACTERS_H + +#define CHAR_SPACE 0x00 +#define CHAR_A_GRAVE 0x01 +#define CHAR_A_ACUTE 0x02 +#define CHAR_A_CIRCUMFLEX 0x03 +#define CHAR_C_CEDILLA 0x04 +#define CHAR_E_GRAVE 0x05 +#define CHAR_E_ACUTE 0x06 +#define CHAR_E_CIRCUMFLEX 0x07 +#define CHAR_E_DIAERESIS 0x08 +#define CHAR_I_GRAVE 0x09 +//#define CHAR_I_ACUTE 0x0A // Is 0x5A instead +#define CHAR_I_CIRCUMFLEX 0x0B +#define CHAR_I_DIAERESIS 0x0C +#define CHAR_O_GRAVE 0x0D +#define CHAR_O_ACUTE 0x0E +#define CHAR_O_CIRCUMFLEX 0x0F +#define CHAR_OE 0x10 +#define CHAR_U_GRAVE 0x11 +#define CHAR_U_ACUTE 0x12 +#define CHAR_U_CIRCUMFLEX 0x13 +#define CHAR_N_TILDE 0x14 +#define CHAR_ESZETT 0x15 +#define CHAR_a_GRAVE 0x16 +#define CHAR_a_ACUTE 0x17 +//#define CHAR_a_CIRCUMFLEX 0x18 // Is 0x68 instead +#define CHAR_c_CEDILLA 0x19 +#define CHAR_e_GRAVE 0x1A +#define CHAR_e_ACUTE 0x1B +#define CHAR_e_CIRCUMFLEX 0x1C +#define CHAR_e_DIAERESIS 0x1D +#define CHAR_i_GRAVE 0x1E +//#define CHAR_i_ACUTE 0x1F // Is 0x6F instead +#define CHAR_i_CIRCUMFLEX 0x20 +#define CHAR_i_DIAERESIS 0x21 +#define CHAR_o_GRAVE 0x22 +#define CHAR_o_ACUTE 0x23 +#define CHAR_o_CIRCUMFLEX 0x24 +#define CHAR_oe 0x25 +#define CHAR_u_GRAVE 0x26 +#define CHAR_u_ACUTE 0x27 +#define CHAR_u_CIRCUMFLEX 0x28 +#define CHAR_n_TILDE 0x29 +#define CHAR_MASCULINE_ORDINAL 0x2A +#define CHAR_FEMININE_ORDINAL 0x2B +#define CHAR_SUPER_ER 0x2C +#define CHAR_AMPERSAND 0x2D +#define CHAR_PLUS 0x2E +// +#define CHAR_LV 0x34 +#define CHAR_EQUALS 0x35 +#define CHAR_SEMICOLON 0x36 +#define CHAR_BARD_WORD_DELIMIT 0x37 // Empty space to separate words in Bard's song +#define CHAR_INV_QUESTION_MARK 0x51 +#define CHAR_INV_EXCL_MARK 0x52 +#define CHAR_PK 0x53 +#define CHAR_MN 0x54 +#define CHAR_PO 0x55 +#define CHAR_KE 0x56 +#define CHAR_BLOCK_1 0x57 // Each of these 3 +#define CHAR_BLOCK_2 0x58 // chars contains 1/3 +#define CHAR_BLOCK_3 0x59 // of the word BLOCK +#define CHAR_I_ACUTE 0x5A +#define CHAR_PERCENT 0x5B +#define CHAR_LEFT_PAREN 0x5C +#define CHAR_RIGHT_PAREN 0x5D +// +#define CHAR_a_CIRCUMFLEX 0x68 +// +#define CHAR_i_ACUTE 0x6F +// +#define CHAR_SPACER 0x77 // Empty space +// +#define CHAR_UP_ARROW 0x79 +#define CHAR_DOWN_ARROW 0x7A +#define CHAR_LEFT_ARROW 0x7B +#define CHAR_RIGHT_ARROW 0x7C +// +#define CHAR_SUPER_E 0x84 +#define CHAR_LESS_THAN 0x85 +#define CHAR_GREATER_THAN 0x86 +// +#define CHAR_SUPER_RE 0xA0 +#define CHAR_0 0xA1 +#define CHAR_1 0xA2 +#define CHAR_2 0xA3 +#define CHAR_3 0xA4 +#define CHAR_4 0xA5 +#define CHAR_5 0xA6 +#define CHAR_6 0xA7 +#define CHAR_7 0xA8 +#define CHAR_8 0xA9 +#define CHAR_9 0xAA +#define CHAR_EXCL_MARK 0xAB +#define CHAR_QUESTION_MARK 0xAC +#define CHAR_PERIOD 0xAD +#define CHAR_HYPHEN 0xAE +#define CHAR_BULLET 0xAF +#define CHAR_ELLIPSIS 0xB0 +#define CHAR_DBL_QUOTE_LEFT 0xB1 +#define CHAR_DBL_QUOTE_RIGHT 0xB2 +#define CHAR_SGL_QUOTE_LEFT 0xB3 +#define CHAR_SGL_QUOTE_RIGHT 0xB4 +#define CHAR_MALE 0xB5 +#define CHAR_FEMALE 0xB6 +#define CHAR_CURRENCY 0xB7 +#define CHAR_COMMA 0xB8 +#define CHAR_MULT_SIGN 0xB9 +#define CHAR_SLASH 0xBA +#define CHAR_A 0xBB +#define CHAR_B 0xBC +#define CHAR_C 0xBD +#define CHAR_D 0xBE +#define CHAR_E 0xBF +#define CHAR_F 0xC0 +#define CHAR_G 0xC1 +#define CHAR_H 0xC2 +#define CHAR_I 0xC3 +#define CHAR_J 0xC4 +#define CHAR_K 0xC5 +#define CHAR_L 0xC6 +#define CHAR_M 0xC7 +#define CHAR_N 0xC8 +#define CHAR_O 0xC9 +#define CHAR_P 0xCA +#define CHAR_Q 0xCB +#define CHAR_R 0xCC +#define CHAR_S 0xCD +#define CHAR_T 0xCE +#define CHAR_U 0xCF +#define CHAR_V 0xD0 +#define CHAR_W 0xD1 +#define CHAR_X 0xD2 +#define CHAR_Y 0xD3 +#define CHAR_Z 0xD4 +#define CHAR_a 0xD5 +#define CHAR_b 0xD6 +#define CHAR_c 0xD7 +#define CHAR_d 0xD8 +#define CHAR_e 0xD9 +#define CHAR_f 0xDA +#define CHAR_g 0xDB +#define CHAR_h 0xDC +#define CHAR_i 0xDD +#define CHAR_j 0xDE +#define CHAR_k 0xDF +#define CHAR_l 0xE0 +#define CHAR_m 0xE1 +#define CHAR_n 0xE2 +#define CHAR_o 0xE3 +#define CHAR_p 0xE4 +#define CHAR_q 0xE5 +#define CHAR_r 0xE6 +#define CHAR_s 0xE7 +#define CHAR_t 0xE8 +#define CHAR_u 0xE9 +#define CHAR_v 0xEA +#define CHAR_w 0xEB +#define CHAR_x 0xEC +#define CHAR_y 0xED +#define CHAR_z 0xEE +#define CHAR_BLACK_TRIANGLE 0xEF +#define CHAR_COLON 0xF0 +#define CHAR_A_DIAERESIS 0xF1 +#define CHAR_O_DIAERESIS 0xF2 +#define CHAR_U_DIAERESIS 0xF3 +#define CHAR_a_DIAERESIS 0xF4 +#define CHAR_o_DIAERESIS 0xF5 +#define CHAR_u_DIAERESIS 0xF6 +#define CHAR_DYNAMIC 0xF7 +#define CHAR_KEYPAD_ICON 0xF8 +#define CHAR_EXTRA_SYMBOL 0xF9 +#define CHAR_PROMPT_SCROLL 0xFA // waits for button press and scrolls dialog +#define CHAR_PROMPT_CLEAR 0xFB // waits for button press and clears dialog +#define EXT_CTRL_CODE_BEGIN 0xFC // extended control code +#define PLACEHOLDER_BEGIN 0xFD // string placeholder +#define CHAR_NEWLINE 0xFE +#define EOS 0xFF // end of string + +// CHAR_KEYPAD_ICON chars +#define CHAR_A_BUTTON 0x00 +#define CHAR_B_BUTTON 0x01 +#define CHAR_L_BUTTON 0x02 +#define CHAR_R_BUTTON 0x03 +#define CHAR_START_BUTTON 0x04 +#define CHAR_SELECT_BUTTON 0x05 +#define CHAR_DPAD_UP 0x06 +#define CHAR_DPAD_DOWN 0x07 +#define CHAR_DPAD_LEFT 0x08 +#define CHAR_DPAD_RIGHT 0x09 +#define CHAR_DPAD_UPDOWN 0x0A +#define CHAR_DPAD_LEFTRIGHT 0x0B +#define CHAR_DPAD_NONE 0x0C + +// CHAR_EXTRA_SYMBOL chars +#define CHAR_UP_ARROW_2 0x00 +#define CHAR_DOWN_ARROW_2 0x01 +#define CHAR_LEFT_ARROW_2 0x02 +#define CHAR_RIGHT_ARROW_2 0x03 +#define CHAR_PLUS_2 0x04 +#define CHAR_LV_2 0x05 +#define CHAR_PP 0x06 +#define CHAR_ID 0x07 +#define CHAR_NO 0x08 +#define CHAR_UNDERSCORE 0x09 + +#define EXT_CTRL_CODE_COLOR 0x01 +#define EXT_CTRL_CODE_HIGHLIGHT 0x02 +#define EXT_CTRL_CODE_SHADOW 0x03 +#define EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW 0x04 +#define EXT_CTRL_CODE_PALETTE 0x05 +#define EXT_CTRL_CODE_FONT 0x06 +#define EXT_CTRL_CODE_RESET_SIZE 0x07 +#define EXT_CTRL_CODE_PAUSE 0x08 +#define EXT_CTRL_CODE_PAUSE_UNTIL_PRESS 0x09 +#define EXT_CTRL_CODE_WAIT_SE 0x0A +#define EXT_CTRL_CODE_PLAY_BGM 0x0B +#define EXT_CTRL_CODE_ESCAPE 0x0C +#define EXT_CTRL_CODE_SHIFT_TEXT 0x0D +#define EXT_CTRL_CODE_SHIFT_DOWN 0x0E +#define EXT_CTRL_CODE_FILL_WINDOW 0x0F +#define EXT_CTRL_CODE_PLAY_SE 0x10 +#define EXT_CTRL_CODE_CLEAR 0x11 +#define EXT_CTRL_CODE_SKIP 0x12 +#define EXT_CTRL_CODE_CLEAR_TO 0x13 +#define EXT_CTRL_CODE_MIN_LETTER_SPACING 0x14 +#define EXT_CTRL_CODE_JPN 0x15 +#define EXT_CTRL_CODE_ENG 0x16 +#define EXT_CTRL_CODE_PAUSE_MUSIC 0x17 +#define EXT_CTRL_CODE_RESUME_MUSIC 0x18 + +#define TEXT_COLOR_TRANSPARENT 0x0 +#define TEXT_COLOR_WHITE 0x1 +#define TEXT_COLOR_DARK_GRAY 0x2 +#define TEXT_COLOR_LIGHT_GRAY 0x3 +#define TEXT_COLOR_RED 0x4 +#define TEXT_COLOR_LIGHT_RED 0x5 +#define TEXT_COLOR_GREEN 0x6 +#define TEXT_COLOR_LIGHT_GREEN 0x7 +#define TEXT_COLOR_BLUE 0x8 +#define TEXT_COLOR_LIGHT_BLUE 0x9 +#define TEXT_DYNAMIC_COLOR_1 0xA // Usually white +#define TEXT_DYNAMIC_COLOR_2 0xB // Usually white w/ tinge of green +#define TEXT_DYNAMIC_COLOR_3 0xC // Usually white +#define TEXT_DYNAMIC_COLOR_4 0xD // Usually aquamarine +#define TEXT_DYNAMIC_COLOR_5 0xE // Usually blue-green +#define TEXT_DYNAMIC_COLOR_6 0xF // Usually cerulean + +#define FONT_0 0 +#define FONT_1 1 +#define FONT_2 2 +#define FONT_3 3 +#define FONT_4 4 +#define FONT_5 5 +#define FONT_6 6 +#define FONT_7 7 +#define FONT_8 8 + + +#define PLACEHOLDER_ID_UNKNOWN 0x0 +#define PLACEHOLDER_ID_PLAYER 0x1 +#define PLACEHOLDER_ID_STRING_VAR_1 0x2 +#define PLACEHOLDER_ID_STRING_VAR_2 0x3 +#define PLACEHOLDER_ID_STRING_VAR_3 0x4 +#define PLACEHOLDER_ID_KUN 0x5 +#define PLACEHOLDER_ID_RIVAL 0x6 +#define PLACEHOLDER_ID_VERSION 0x7 +#define PLACEHOLDER_ID_AQUA 0x8 +#define PLACEHOLDER_ID_MAGMA 0x9 +#define PLACEHOLDER_ID_ARCHIE 0xA +#define PLACEHOLDER_ID_MAXIE 0xB +#define PLACEHOLDER_ID_KYOGRE 0xC +#define PLACEHOLDER_ID_GROUDON 0xD + +// battle placeholders are located in battle_message.h + +// Hiragana from 0x1-0x50, Katakana from 0x51-0xA0. +// This excludes Japanese punctuation, which end at 0xB0 +#define JAPANESE_CHAR_END 0xA0 + +// Note that while all dot combinations are represented in +// the Braille font, they are not all meaningful characters. +// Only those that have direct single-character translations are listed. +#define BRAILLE_CHAR_SPACE 0x00 +#define BRAILLE_CHAR_A 0x01 +// +#define BRAILLE_CHAR_C 0x03 +#define BRAILLE_CHAR_COMMA 0x04 +#define BRAILLE_CHAR_B 0x05 +#define BRAILLE_CHAR_I 0x06 +#define BRAILLE_CHAR_F 0x07 +// +#define BRAILLE_CHAR_E 0x09 +// +#define BRAILLE_CHAR_D 0x0B +#define BRAILLE_CHAR_COLON 0x0C +#define BRAILLE_CHAR_H 0x0D +#define BRAILLE_CHAR_J 0x0E +#define BRAILLE_CHAR_G 0x0F +#define BRAILLE_CHAR_APOSTROPHE 0x10 +#define BRAILLE_CHAR_K 0x11 +#define BRAILLE_CHAR_SLASH 0x12 +#define BRAILLE_CHAR_M 0x13 +#define BRAILLE_CHAR_SEMICOLON 0x14 +#define BRAILLE_CHAR_L 0x15 +#define BRAILLE_CHAR_S 0x16 +#define BRAILLE_CHAR_P 0x17 +// +#define BRAILLE_CHAR_O 0x19 +// +#define BRAILLE_CHAR_N 0x1B +#define BRAILLE_CHAR_EXCL_MARK 0x1C +#define BRAILLE_CHAR_R 0x1D +#define BRAILLE_CHAR_T 0x1E +#define BRAILLE_CHAR_Q 0x1F +// +#define BRAILLE_CHAR_PERIOD 0x2C +// +#define BRAILLE_CHAR_W 0x2E +// +#define BRAILLE_CHAR_HYPHEN 0x30 +#define BRAILLE_CHAR_U 0x31 +// +#define BRAILLE_CHAR_X 0x33 +#define BRAILLE_CHAR_QUESTION_MARK 0x34 // Also double quote left +#define BRAILLE_CHAR_V 0x35 +// +#define BRAILLE_CHAR_DBL_QUOTE_RIGHT 0x38 +#define BRAILLE_CHAR_Z 0x39 +#define BRAILLE_CHAR_NUMBER 0x3A +#define BRAILLE_CHAR_Y 0x3B +#define BRAILLE_CHAR_PAREN 0x3C +// +#define NUM_BRAILLE_CHARS 0x40 + +// Digits must be preceded by BRAILLE_CHAR_NUMBER +#define BRAILLE_CHAR_1 BRAILLE_CHAR_A +#define BRAILLE_CHAR_2 BRAILLE_CHAR_B +#define BRAILLE_CHAR_3 BRAILLE_CHAR_C +#define BRAILLE_CHAR_4 BRAILLE_CHAR_D +#define BRAILLE_CHAR_5 BRAILLE_CHAR_E +#define BRAILLE_CHAR_6 BRAILLE_CHAR_F +#define BRAILLE_CHAR_7 BRAILLE_CHAR_G +#define BRAILLE_CHAR_8 BRAILLE_CHAR_H +#define BRAILLE_CHAR_9 BRAILLE_CHAR_I +#define BRAILLE_CHAR_0 BRAILLE_CHAR_J + +#endif // GUARD_CHARACTERS_H diff --git a/gflib/string_util.c b/gflib/string_util.c index 4bf0d2ae9b06..9463b4a7b467 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -206,7 +206,7 @@ u8 *ConvertIntToDecimalStringN(u8 *dest, s32 value, enum StringConvertMode mode, } else if (state == WRITING_SPACES) { - *dest++ = 0x77; + *dest++ = CHAR_SPACER; } value = temp; @@ -262,7 +262,7 @@ u8 *ConvertUIntToDecimalStringN(u8 *dest, u32 value, enum StringConvertMode mode } else if (state == WRITING_SPACES) { - *dest++ = 0x77; + *dest++ = CHAR_SPACER; } value = temp; @@ -322,7 +322,7 @@ u8 *ConvertIntToHexStringN(u8 *dest, s32 value, enum StringConvertMode mode, u8 } else if (state == WRITING_SPACES) { - *dest++ = 0x77; + *dest++ = CHAR_SPACER; } value = temp; @@ -414,7 +414,7 @@ u8 *StringBraille(u8 *dest, const u8 *src) break; default: *dest++ = c; - *dest++ = c + 0x40; + *dest++ = c + NUM_BRAILLE_CHARS; break; } } diff --git a/gflib/text.h b/gflib/text.h index 9bb07580e0d8..91b9ef77ff72 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -1,273 +1,7 @@ #ifndef GUARD_TEXT_H #define GUARD_TEXT_H -#define CHAR_SPACE 0x00 -#define CHAR_A_GRAVE 0x01 -#define CHAR_A_ACUTE 0x02 -#define CHAR_A_CIRCUMFLEX 0x03 -#define CHAR_C_CEDILLA 0x04 -#define CHAR_E_GRAVE 0x05 -#define CHAR_E_ACUTE 0x06 -#define CHAR_E_CIRCUMFLEX 0x07 -#define CHAR_E_DIAERESIS 0x08 -#define CHAR_I_GRAVE 0x09 -//#define CHAR_I_ACUTE 0x0A // Is 0x5A instead -#define CHAR_I_CIRCUMFLEX 0x0B -#define CHAR_I_DIAERESIS 0x0C -#define CHAR_O_GRAVE 0x0D -#define CHAR_O_ACUTE 0x0E -#define CHAR_O_CIRCUMFLEX 0x0F -#define CHAR_OE 0x10 -#define CHAR_U_GRAVE 0x11 -#define CHAR_U_ACUTE 0x12 -#define CHAR_U_CIRCUMFLEX 0x13 -#define CHAR_N_TILDE 0x14 -#define CHAR_ESZETT 0x15 -#define CHAR_a_GRAVE 0x16 -#define CHAR_a_ACUTE 0x17 -//#define CHAR_a_CIRCUMFLEX 0x18 // Is 0x68 instead -#define CHAR_c_CEDILLA 0x19 -#define CHAR_e_GRAVE 0x1A -#define CHAR_e_ACUTE 0x1B -#define CHAR_e_CIRCUMFLEX 0x1C -#define CHAR_e_DIAERESIS 0x1D -#define CHAR_i_GRAVE 0x1E -//#define CHAR_i_ACUTE 0x1F // Is 0x6F instead -#define CHAR_i_CIRCUMFLEX 0x20 -#define CHAR_i_DIAERESIS 0x21 -#define CHAR_o_GRAVE 0x22 -#define CHAR_o_ACUTE 0x23 -#define CHAR_o_CIRCUMFLEX 0x24 -#define CHAR_oe 0x25 -#define CHAR_u_GRAVE 0x26 -#define CHAR_u_ACUTE 0x27 -#define CHAR_u_CIRCUMFLEX 0x28 -#define CHAR_n_TILDE 0x29 -#define CHAR_MASCULINE_ORDINAL 0x2A -#define CHAR_FEMININE_ORDINAL 0x2B -#define CHAR_SUPER_ER 0x2C -#define CHAR_AMPERSAND 0x2D -#define CHAR_PLUS 0x2E -// -#define CHAR_LV 0x34 -#define CHAR_EQUALS 0x35 -#define CHAR_SEMICOLON 0x36 -#define CHAR_BARD_WORD_DELIMIT 0x37 // Empty space to separate words in Bard's song -#define CHAR_INV_QUESTION_MARK 0x51 -#define CHAR_INV_EXCL_MARK 0x52 -#define CHAR_PK 0x53 -#define CHAR_MN 0x54 -#define CHAR_PO 0x55 -#define CHAR_KE 0x56 -#define CHAR_BLOCK_1 0x57 // Each of these 3 -#define CHAR_BLOCK_2 0x58 // chars contains 1/3 -#define CHAR_BLOCK_3 0x59 // of the word BLOCK -#define CHAR_I_ACUTE 0x5A -#define CHAR_PERCENT 0x5B -#define CHAR_LEFT_PAREN 0x5C -#define CHAR_RIGHT_PAREN 0x5D -// -#define CHAR_a_CIRCUMFLEX 0x68 -// -#define CHAR_i_ACUTE 0x6F -// -#define CHAR_SPACER 0x77 // Empty space -// -#define CHAR_UP_ARROW 0x79 -#define CHAR_DOWN_ARROW 0x7A -#define CHAR_LEFT_ARROW 0x7B -#define CHAR_RIGHT_ARROW 0x7C -// -#define CHAR_SUPER_E 0x84 -#define CHAR_LESS_THAN 0x85 -#define CHAR_GREATER_THAN 0x86 -// -#define CHAR_SUPER_RE 0xA0 -#define CHAR_0 0xA1 -#define CHAR_1 0xA2 -#define CHAR_2 0xA3 -#define CHAR_3 0xA4 -#define CHAR_4 0xA5 -#define CHAR_5 0xA6 -#define CHAR_6 0xA7 -#define CHAR_7 0xA8 -#define CHAR_8 0xA9 -#define CHAR_9 0xAA -#define CHAR_EXCL_MARK 0xAB -#define CHAR_QUESTION_MARK 0xAC -#define CHAR_PERIOD 0xAD -#define CHAR_HYPHEN 0xAE -#define CHAR_BULLET 0xAF -#define CHAR_ELLIPSIS 0xB0 -#define CHAR_DBL_QUOT_LEFT 0xB1 -#define CHAR_DBL_QUOT_RIGHT 0xB2 -#define CHAR_SGL_QUOT_LEFT 0xB3 -#define CHAR_SGL_QUOT_RIGHT 0xB4 -#define CHAR_MALE 0xB5 -#define CHAR_FEMALE 0xB6 -#define CHAR_CURRENCY 0xB7 -#define CHAR_COMMA 0xB8 -#define CHAR_MULT_SIGN 0xB9 -#define CHAR_SLASH 0xBA -#define CHAR_A 0xBB -#define CHAR_B 0xBC -#define CHAR_C 0xBD -#define CHAR_D 0xBE -#define CHAR_E 0xBF -#define CHAR_F 0xC0 -#define CHAR_G 0xC1 -#define CHAR_H 0xC2 -#define CHAR_I 0xC3 -#define CHAR_J 0xC4 -#define CHAR_K 0xC5 -#define CHAR_L 0xC6 -#define CHAR_M 0xC7 -#define CHAR_N 0xC8 -#define CHAR_O 0xC9 -#define CHAR_P 0xCA -#define CHAR_Q 0xCB -#define CHAR_R 0xCC -#define CHAR_S 0xCD -#define CHAR_T 0xCE -#define CHAR_U 0xCF -#define CHAR_V 0xD0 -#define CHAR_W 0xD1 -#define CHAR_X 0xD2 -#define CHAR_Y 0xD3 -#define CHAR_Z 0xD4 -#define CHAR_a 0xD5 -#define CHAR_b 0xD6 -#define CHAR_c 0xD7 -#define CHAR_d 0xD8 -#define CHAR_e 0xD9 -#define CHAR_f 0xDA -#define CHAR_g 0xDB -#define CHAR_h 0xDC -#define CHAR_i 0xDD -#define CHAR_j 0xDE -#define CHAR_k 0xDF -#define CHAR_l 0xE0 -#define CHAR_m 0xE1 -#define CHAR_n 0xE2 -#define CHAR_o 0xE3 -#define CHAR_p 0xE4 -#define CHAR_q 0xE5 -#define CHAR_r 0xE6 -#define CHAR_s 0xE7 -#define CHAR_t 0xE8 -#define CHAR_u 0xE9 -#define CHAR_v 0xEA -#define CHAR_w 0xEB -#define CHAR_x 0xEC -#define CHAR_y 0xED -#define CHAR_z 0xEE -#define CHAR_BLACK_TRIANGLE 0xEF -#define CHAR_COLON 0xF0 -#define CHAR_A_DIAERESIS 0xF1 -#define CHAR_O_DIAERESIS 0xF2 -#define CHAR_U_DIAERESIS 0xF3 -#define CHAR_a_DIAERESIS 0xF4 -#define CHAR_o_DIAERESIS 0xF5 -#define CHAR_u_DIAERESIS 0xF6 -#define CHAR_DYNAMIC 0xF7 -#define CHAR_KEYPAD_ICON 0xF8 -#define CHAR_EXTRA_SYMBOL 0xF9 -#define CHAR_PROMPT_SCROLL 0xFA // waits for button press and scrolls dialog -#define CHAR_PROMPT_CLEAR 0xFB // waits for button press and clears dialog -#define EXT_CTRL_CODE_BEGIN 0xFC // extended control code -#define PLACEHOLDER_BEGIN 0xFD // string placeholder -#define CHAR_NEWLINE 0xFE -#define EOS 0xFF // end of string - -// CHAR_KEYPAD_ICON chars -#define CHAR_A_BUTTON 0x00 -#define CHAR_B_BUTTON 0x01 -#define CHAR_L_BUTTON 0x02 -#define CHAR_R_BUTTON 0x03 -#define CHAR_START_BUTTON 0x04 -#define CHAR_SELECT_BUTTON 0x05 -#define CHAR_DPAD_UP 0x06 -#define CHAR_DPAD_DOWN 0x07 -#define CHAR_DPAD_LEFT 0x08 -#define CHAR_DPAD_RIGHT 0x09 -#define CHAR_DPAD_UPDOWN 0x0A -#define CHAR_DPAD_LEFTRIGHT 0x0B -#define CHAR_DPAD_NONE 0x0C - -// CHAR_EXTRA_SYMBOL chars -#define CHAR_UP_ARROW_2 0x00 -#define CHAR_DOWN_ARROW_2 0x01 -#define CHAR_LEFT_ARROW_2 0x02 -#define CHAR_RIGHT_ARROW_2 0x03 -#define CHAR_PLUS_2 0x04 -#define CHAR_LV_2 0x05 -#define CHAR_PP 0x06 -#define CHAR_ID 0x07 -#define CHAR_NO 0x08 -#define CHAR_UNDERSCORE 0x09 - -#define EXT_CTRL_CODE_COLOR 0x01 -#define EXT_CTRL_CODE_HIGHLIGHT 0x02 -#define EXT_CTRL_CODE_SHADOW 0x03 -#define EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW 0x04 -#define EXT_CTRL_CODE_PALETTE 0x05 -#define EXT_CTRL_CODE_FONT 0x06 -#define EXT_CTRL_CODE_RESET_SIZE 0x07 -#define EXT_CTRL_CODE_PAUSE 0x08 -#define EXT_CTRL_CODE_PAUSE_UNTIL_PRESS 0x09 -#define EXT_CTRL_CODE_WAIT_SE 0x0A -#define EXT_CTRL_CODE_PLAY_BGM 0x0B -#define EXT_CTRL_CODE_ESCAPE 0x0C -#define EXT_CTRL_CODE_SHIFT_TEXT 0x0D -#define EXT_CTRL_CODE_SHIFT_DOWN 0x0E -#define EXT_CTRL_CODE_FILL_WINDOW 0x0F -#define EXT_CTRL_CODE_PLAY_SE 0x10 -#define EXT_CTRL_CODE_CLEAR 0x11 -#define EXT_CTRL_CODE_SKIP 0x12 -#define EXT_CTRL_CODE_CLEAR_TO 0x13 -#define EXT_CTRL_CODE_MIN_LETTER_SPACING 0x14 -#define EXT_CTRL_CODE_JPN 0x15 -#define EXT_CTRL_CODE_ENG 0x16 -#define EXT_CTRL_CODE_PAUSE_MUSIC 0x17 -#define EXT_CTRL_CODE_RESUME_MUSIC 0x18 - -#define TEXT_COLOR_TRANSPARENT 0x0 -#define TEXT_COLOR_WHITE 0x1 -#define TEXT_COLOR_DARK_GRAY 0x2 -#define TEXT_COLOR_LIGHT_GRAY 0x3 -#define TEXT_COLOR_RED 0x4 -#define TEXT_COLOR_LIGHT_RED 0x5 -#define TEXT_COLOR_GREEN 0x6 -#define TEXT_COLOR_LIGHT_GREEN 0x7 -#define TEXT_COLOR_BLUE 0x8 -#define TEXT_COLOR_LIGHT_BLUE 0x9 -#define TEXT_DYNAMIC_COLOR_1 0xA // Usually white -#define TEXT_DYNAMIC_COLOR_2 0xB // Usually white w/ tinge of green -#define TEXT_DYNAMIC_COLOR_3 0xC // Usually white -#define TEXT_DYNAMIC_COLOR_4 0xD // Usually aquamarine -#define TEXT_DYNAMIC_COLOR_5 0xE // Usually blue-green -#define TEXT_DYNAMIC_COLOR_6 0xF // Usually cerulean - -#define PLACEHOLDER_ID_UNKNOWN 0x0 -#define PLACEHOLDER_ID_PLAYER 0x1 -#define PLACEHOLDER_ID_STRING_VAR_1 0x2 -#define PLACEHOLDER_ID_STRING_VAR_2 0x3 -#define PLACEHOLDER_ID_STRING_VAR_3 0x4 -#define PLACEHOLDER_ID_KUN 0x5 -#define PLACEHOLDER_ID_RIVAL 0x6 -#define PLACEHOLDER_ID_VERSION 0x7 -#define PLACEHOLDER_ID_AQUA 0x8 -#define PLACEHOLDER_ID_MAGMA 0x9 -#define PLACEHOLDER_ID_ARCHIE 0xA -#define PLACEHOLDER_ID_MAXIE 0xB -#define PLACEHOLDER_ID_KYOGRE 0xC -#define PLACEHOLDER_ID_GROUDON 0xD - -// battle placeholders are located in battle_message.h - -// Hiragana from 0x1-0x50, Katakana from 0x51-0xA0. -// This excludes Japanese punctuation, which end at 0xB0 -#define JAPANESE_CHAR_END 0xA0 +#include "characters.h" #define NUM_TEXT_PRINTERS 32 diff --git a/src/contest.c b/src/contest.c index 05dd39483277..aebe437e69e5 100644 --- a/src/contest.c +++ b/src/contest.c @@ -6031,10 +6031,10 @@ static u8 GetMonNicknameLanguage(u8 *nickname) || *nickname == CHAR_SLASH || *nickname == CHAR_HYPHEN || *nickname == CHAR_ELLIPSIS - || *nickname == CHAR_DBL_QUOT_LEFT - || *nickname == CHAR_DBL_QUOT_RIGHT - || *nickname == CHAR_SGL_QUOT_LEFT - || *nickname == CHAR_DBL_QUOT_LEFT) // Most likely a typo, CHAR_SGL_QUOT_RIGHT should be here instead. + || *nickname == CHAR_DBL_QUOTE_LEFT + || *nickname == CHAR_DBL_QUOTE_RIGHT + || *nickname == CHAR_SGL_QUOTE_LEFT + || *nickname == CHAR_DBL_QUOTE_LEFT) // Most likely a typo, CHAR_SGL_QUOTE_RIGHT should be here instead. { nickname++; } diff --git a/src/pokedex.c b/src/pokedex.c index 81d7c6730504..d56b301833fa 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -4167,10 +4167,10 @@ static void PrintMonHeight(u16 height, u8 left, u8 top) buffer[i++] = feet / 10 + CHAR_0; buffer[i++] = (feet % 10) + CHAR_0; } - buffer[i++] = CHAR_SGL_QUOT_RIGHT; + buffer[i++] = CHAR_SGL_QUOTE_RIGHT; buffer[i++] = (inches / 10) + CHAR_0; buffer[i++] = (inches % 10) + CHAR_0; - buffer[i++] = CHAR_DBL_QUOT_RIGHT; + buffer[i++] = CHAR_DBL_QUOTE_RIGHT; buffer[i++] = EOS; PrintInfoScreenText(buffer, left, top); } diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 7debe3cd4f95..cb9b2f6a4b74 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -458,10 +458,10 @@ static const u8 sCaseToggleTable[256] = { [CHAR_LEFT_PAREN] = CHAR_LEFT_PAREN, [CHAR_RIGHT_PAREN] = CHAR_RIGHT_PAREN, [CHAR_AMPERSAND] = CHAR_AMPERSAND, - [CHAR_DBL_QUOT_LEFT] = CHAR_DBL_QUOT_LEFT, - [CHAR_DBL_QUOT_RIGHT] = CHAR_DBL_QUOT_RIGHT, - [CHAR_SGL_QUOT_LEFT] = CHAR_SGL_QUOT_LEFT, - [CHAR_SGL_QUOT_RIGHT] = CHAR_SGL_QUOT_RIGHT, + [CHAR_DBL_QUOTE_LEFT] = CHAR_DBL_QUOTE_LEFT, + [CHAR_DBL_QUOTE_RIGHT] = CHAR_DBL_QUOTE_RIGHT, + [CHAR_SGL_QUOTE_LEFT] = CHAR_SGL_QUOTE_LEFT, + [CHAR_SGL_QUOTE_RIGHT] = CHAR_SGL_QUOTE_RIGHT, [CHAR_MASCULINE_ORDINAL] = CHAR_MASCULINE_ORDINAL, [CHAR_FEMININE_ORDINAL] = CHAR_FEMININE_ORDINAL, [CHAR_BULLET] = CHAR_BULLET, diff --git a/tools/preproc/asm_file.cpp b/tools/preproc/asm_file.cpp index 7756cadc52af..be8d54fc4c3a 100644 --- a/tools/preproc/asm_file.cpp +++ b/tools/preproc/asm_file.cpp @@ -26,6 +26,7 @@ #include "char_util.h" #include "utf8.h" #include "string_parser.h" +#include "../../gflib/characters.h" AsmFile::AsmFile(std::string filename) : m_filename(filename) { @@ -281,7 +282,7 @@ int AsmFile::ReadString(unsigned char* s) while (length < padLength) { - s[length++] = 0; + s[length++] = CHAR_SPACE; } } @@ -290,40 +291,92 @@ int AsmFile::ReadString(unsigned char* s) return length; } +void AsmFile::VerifyStringLength(int length) +{ + if (length == kMaxStringLength) + RaiseError("mapped string longer than %d bytes", kMaxStringLength); +} + int AsmFile::ReadBraille(unsigned char* s) { static std::map encoding = { - { 'A', 0x01 }, - { 'B', 0x05 }, - { 'C', 0x03 }, - { 'D', 0x0B }, - { 'E', 0x09 }, - { 'F', 0x07 }, - { 'G', 0x0F }, - { 'H', 0x0D }, - { 'I', 0x06 }, - { 'J', 0x0E }, - { 'K', 0x11 }, - { 'L', 0x15 }, - { 'M', 0x13 }, - { 'N', 0x1B }, - { 'O', 0x19 }, - { 'P', 0x17 }, - { 'Q', 0x1F }, - { 'R', 0x1D }, - { 'S', 0x16 }, - { 'T', 0x1E }, - { 'U', 0x31 }, - { 'V', 0x35 }, - { 'W', 0x2E }, - { 'X', 0x33 }, - { 'Y', 0x3B }, - { 'Z', 0x39 }, - { ' ', 0x00 }, - { ',', 0x04 }, - { '.', 0x2C }, - { '$', 0xFF }, + { 'A', BRAILLE_CHAR_A }, + { 'B', BRAILLE_CHAR_B }, + { 'C', BRAILLE_CHAR_C }, + { 'D', BRAILLE_CHAR_D }, + { 'E', BRAILLE_CHAR_E }, + { 'F', BRAILLE_CHAR_F }, + { 'G', BRAILLE_CHAR_G }, + { 'H', BRAILLE_CHAR_H }, + { 'I', BRAILLE_CHAR_I }, + { 'J', BRAILLE_CHAR_J }, + { 'K', BRAILLE_CHAR_K }, + { 'L', BRAILLE_CHAR_L }, + { 'M', BRAILLE_CHAR_M }, + { 'N', BRAILLE_CHAR_N }, + { 'O', BRAILLE_CHAR_O }, + { 'P', BRAILLE_CHAR_P }, + { 'Q', BRAILLE_CHAR_Q }, + { 'R', BRAILLE_CHAR_R }, + { 'S', BRAILLE_CHAR_S }, + { 'T', BRAILLE_CHAR_T }, + { 'U', BRAILLE_CHAR_U }, + { 'V', BRAILLE_CHAR_V }, + { 'W', BRAILLE_CHAR_W }, + { 'X', BRAILLE_CHAR_X }, + { 'Y', BRAILLE_CHAR_Y }, + { 'Z', BRAILLE_CHAR_Z }, + { 'a', BRAILLE_CHAR_A }, + { 'b', BRAILLE_CHAR_B }, + { 'c', BRAILLE_CHAR_C }, + { 'd', BRAILLE_CHAR_D }, + { 'e', BRAILLE_CHAR_E }, + { 'f', BRAILLE_CHAR_F }, + { 'g', BRAILLE_CHAR_G }, + { 'h', BRAILLE_CHAR_H }, + { 'i', BRAILLE_CHAR_I }, + { 'j', BRAILLE_CHAR_J }, + { 'k', BRAILLE_CHAR_K }, + { 'l', BRAILLE_CHAR_L }, + { 'm', BRAILLE_CHAR_M }, + { 'n', BRAILLE_CHAR_N }, + { 'o', BRAILLE_CHAR_O }, + { 'p', BRAILLE_CHAR_P }, + { 'q', BRAILLE_CHAR_Q }, + { 'r', BRAILLE_CHAR_R }, + { 's', BRAILLE_CHAR_S }, + { 't', BRAILLE_CHAR_T }, + { 'u', BRAILLE_CHAR_U }, + { 'v', BRAILLE_CHAR_V }, + { 'w', BRAILLE_CHAR_W }, + { 'x', BRAILLE_CHAR_X }, + { 'y', BRAILLE_CHAR_Y }, + { 'z', BRAILLE_CHAR_Z }, + { '0', BRAILLE_CHAR_0 }, + { '1', BRAILLE_CHAR_1 }, + { '2', BRAILLE_CHAR_2 }, + { '3', BRAILLE_CHAR_3 }, + { '4', BRAILLE_CHAR_4 }, + { '5', BRAILLE_CHAR_5 }, + { '6', BRAILLE_CHAR_6 }, + { '7', BRAILLE_CHAR_7 }, + { '8', BRAILLE_CHAR_8 }, + { '9', BRAILLE_CHAR_9 }, + { ' ', BRAILLE_CHAR_SPACE }, + { ',', BRAILLE_CHAR_COMMA }, + { '.', BRAILLE_CHAR_PERIOD }, + { '?', BRAILLE_CHAR_QUESTION_MARK }, + { '!', BRAILLE_CHAR_EXCL_MARK }, + { ':', BRAILLE_CHAR_COLON }, + { ';', BRAILLE_CHAR_SEMICOLON }, + { '-', BRAILLE_CHAR_HYPHEN }, + { '/', BRAILLE_CHAR_PAREN }, + { '(', BRAILLE_CHAR_PAREN }, + { ')', BRAILLE_CHAR_PAREN }, + { '\'', BRAILLE_CHAR_APOSTROPHE }, + { '#', BRAILLE_CHAR_NUMBER }, + { '$', EOS }, }; SkipWhitespace(); @@ -335,14 +388,13 @@ int AsmFile::ReadBraille(unsigned char* s) m_pos++; + bool inNumber = false; while (m_buffer[m_pos] != '"') { - if (length == kMaxStringLength) - RaiseError("mapped string longer than %d bytes", kMaxStringLength); - if (m_buffer[m_pos] == '\\' && m_buffer[m_pos + 1] == 'n') { - s[length++] = 0xFE; + VerifyStringLength(length); + s[length++] = CHAR_NEWLINE; m_pos += 2; } else @@ -357,6 +409,21 @@ int AsmFile::ReadBraille(unsigned char* s) RaiseError("character '\\x%02X' not valid in braille string", m_buffer[m_pos]); } + if (!inNumber && c >= '0' && c <= '9' ) + { + // Output number indicator at start of a number + inNumber = true; + VerifyStringLength(length); + s[length++] = BRAILLE_CHAR_NUMBER; + } + else if (inNumber && encoding[c] == BRAILLE_CHAR_SPACE) + { + // Number ends at a space. + // Non-number characters encountered before a space will simply be output as is. + inNumber = false; + } + + VerifyStringLength(length); s[length++] = encoding[c]; m_pos++; } diff --git a/tools/preproc/asm_file.h b/tools/preproc/asm_file.h index d73b36e90bb1..29435f76a47a 100644 --- a/tools/preproc/asm_file.h +++ b/tools/preproc/asm_file.h @@ -67,6 +67,7 @@ class AsmFile void ReportDiagnostic(const char* type, const char* format, std::va_list args); void RaiseError(const char* format, ...); void RaiseWarning(const char* format, ...); + void VerifyStringLength(int length); }; #endif // ASM_FILE_H From fdaf436960b4a1feab037eafdb76e279ddc787e2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 30 Oct 2021 16:47:37 -0400 Subject: [PATCH 357/762] Add font id constants --- charmap.txt | 10 +- data/fonts.s | 56 +-- gflib/characters.h | 11 - gflib/text.c | 423 +++++++++++------- gflib/text.h | 51 +-- .../{font9_japanese.png => bold_japanese.png} | Bin .../fonts/{font6_braille.png => braille.png} | Bin .../{font7_latin.png => narrow/latin.png} | Bin .../latin_widths.inc} | 0 .../japanese.png} | Bin .../{font1_latin.png => normal/latin.png} | Bin .../latin_widths.inc} | 0 .../japanese.png} | Bin .../japanese_widths.inc} | 0 .../{font2_latin.png => short/latin.png} | Bin .../latin_widths.inc} | 0 .../japanese.png} | Bin .../{font0_latin.png => small/latin.png} | Bin .../latin_widths.inc} | 0 .../latin.png} | Bin .../latin_widths.inc} | 0 graphics_file_rules.mk | 20 +- ld_script.txt | 4 +- src/apprentice.c | 4 +- src/battle_dome.c | 12 +- src/battle_factory_screen.c | 60 +-- src/battle_interface.c | 35 +- src/battle_message.c | 94 ++-- src/battle_pyramid_bag.c | 48 +- src/battle_records.c | 26 +- src/battle_script_commands.c | 2 +- src/battle_tower.c | 2 +- src/berry_blender.c | 22 +- src/berry_crush.c | 82 ++-- src/berry_fix_program.c | 18 +- src/berry_powder.c | 4 +- src/berry_tag_screen.c | 20 +- src/{unk_text_util_2.c => braille.c} | 24 +- src/cable_club.c | 4 +- src/clear_save_data_screen.c | 4 +- src/coins.c | 4 +- src/contest.c | 24 +- src/contest_painting.c | 4 +- src/contest_util.c | 6 +- src/credits.c | 4 +- src/daycare.c | 6 +- src/decoration.c | 14 +- src/diploma.c | 2 +- src/dodrio_berry_picking.c | 74 +-- src/easy_chat.c | 22 +- src/egg_hatch.c | 2 +- src/field_player_avatar.c | 10 +- src/field_region_map.c | 6 +- src/field_specials.c | 30 +- src/frontier_pass.c | 30 +- src/frontier_util.c | 118 ++--- src/hall_of_fame.c | 42 +- src/international_string_util.c | 4 +- src/item_menu.c | 78 ++-- src/item_use.c | 26 +- src/link.c | 10 +- src/mail.c | 6 +- src/main_menu.c | 52 +-- src/map_name_popup.c | 4 +- src/match_call.c | 2 +- src/mauville_old_man.c | 10 +- src/menu.c | 66 +-- src/menu_specialized.c | 60 +-- src/money.c | 2 +- src/move_relearner.c | 4 +- src/mystery_event_menu.c | 2 +- src/mystery_gift_menu.c | 20 +- src/mystery_gift_view.c | 30 +- src/naming_screen.c | 14 +- src/option_menu.c | 28 +- src/party_menu.c | 30 +- src/player_pc.c | 22 +- src/pokeblock.c | 12 +- src/pokeblock_feed.c | 2 +- src/pokedex.c | 16 +- src/pokemon_jump.c | 34 +- src/pokemon_storage_system.c | 48 +- src/pokemon_summary_screen.c | 42 +- src/pokenav_conditions_2.c | 8 +- src/pokenav_conditions_3.c | 10 +- src/pokenav_main_menu.c | 2 +- src/pokenav_match_call_1.c | 6 +- src/pokenav_match_call_2.c | 20 +- src/pokenav_match_call_ui.c | 4 +- src/pokenav_menu_handler_2.c | 8 +- src/pokenav_region_map.c | 8 +- src/pokenav_ribbons_1.c | 10 +- src/pokenav_ribbons_2.c | 14 +- src/record_mixing.c | 2 +- src/region_map.c | 8 +- src/reset_rtc_screen.c | 10 +- src/roulette.c | 28 +- src/save_failed_screen.c | 2 +- src/scrcmd.c | 6 +- src/script_menu.c | 48 +- src/secret_base.c | 2 +- src/shop.c | 10 +- src/slot_machine.c | 10 +- src/start_menu.c | 34 +- src/starter_choose.c | 12 +- src/strings.c | 22 +- src/trade.c | 22 +- src/trader.c | 12 +- src/trainer_card.c | 60 +-- src/trainer_hill.c | 10 +- src/union_room.c | 4 +- src/union_room_battle.c | 2 +- src/union_room_chat.c | 28 +- src/use_pokeblock.c | 10 +- src/wallclock.c | 6 +- src/wireless_communication_status_screen.c | 10 +- 116 files changed, 1293 insertions(+), 1213 deletions(-) rename graphics/fonts/{font9_japanese.png => bold_japanese.png} (100%) rename graphics/fonts/{font6_braille.png => braille.png} (100%) rename graphics/fonts/{font7_latin.png => narrow/latin.png} (100%) rename graphics/fonts/{font7_latin_widths.inc => narrow/latin_widths.inc} (100%) rename graphics/fonts/{font1_japanese.png => normal/japanese.png} (100%) rename graphics/fonts/{font1_latin.png => normal/latin.png} (100%) rename graphics/fonts/{font1_latin_widths.inc => normal/latin_widths.inc} (100%) rename graphics/fonts/{font2_japanese.png => short/japanese.png} (100%) rename graphics/fonts/{font2_japanese_widths.inc => short/japanese_widths.inc} (100%) rename graphics/fonts/{font2_latin.png => short/latin.png} (100%) rename graphics/fonts/{font2_latin_widths.inc => short/latin_widths.inc} (100%) rename graphics/fonts/{font0_japanese.png => small/japanese.png} (100%) rename graphics/fonts/{font0_latin.png => small/latin.png} (100%) rename graphics/fonts/{font0_latin_widths.inc => small/latin_widths.inc} (100%) rename graphics/fonts/{font8_latin.png => small_narrow/latin.png} (100%) rename graphics/fonts/{font8_latin_widths.inc => small_narrow/latin_widths.inc} (100%) rename src/{unk_text_util_2.c => braille.c} (94%) diff --git a/charmap.txt b/charmap.txt index 1bca4e4f46f4..4c01451c8025 100644 --- a/charmap.txt +++ b/charmap.txt @@ -414,7 +414,7 @@ HIGHLIGHT = FC 02 @ same as fc 01 SHADOW = FC 03 @ same as fc 01 COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes PALETTE = FC 05 @ used in credits -FONT = FC 06 @ valid values are 0, 1, 2, 6 (braille), 7 and 8 +FONT = FC 06 @ Given a font id, or use font constants below instead RESET_SIZE = FC 07 PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them PAUSE_UNTIL_PRESS = FC 09 @@ -434,6 +434,14 @@ ENG = FC 16 PAUSE_MUSIC = FC 17 RESUME_MUSIC = FC 18 +@ fonts + +FONT_SMALL = FC 06 00 +FONT_NORMAL = FC 06 01 +FONT_SHORT = FC 06 02 +FONT_NARROW = FC 06 07 +FONT_SMALL_NARROW = FC 06 08 + @ colors TRANSPARENT = 00 diff --git a/data/fonts.s b/data/fonts.s index 9283724814fc..4fdf029b4f0a 100644 --- a/data/fonts.s +++ b/data/fonts.s @@ -4,52 +4,52 @@ .section .rodata .align 2 -gFont8LatinGlyphs:: - .incbin "graphics/fonts/font8.latfont" +gFontSmallNarrowLatinGlyphs:: + .incbin "graphics/fonts/small_narrow/glyphs.latfont" .align 2 -gFont8LatinGlyphWidths:: - .include "graphics/fonts/font8_latin_widths.inc" +gFontSmallNarrowLatinGlyphWidths:: + .include "graphics/fonts/small_narrow/latin_widths.inc" .align 2 -gFont0LatinGlyphs:: - .incbin "graphics/fonts/font0.latfont" +gFontSmallLatinGlyphs:: + .incbin "graphics/fonts/small/glyphs.latfont" .align 2 -gFont0LatinGlyphWidths:: - .include "graphics/fonts/font0_latin_widths.inc" +gFontSmallLatinGlyphWidths:: + .include "graphics/fonts/small/latin_widths.inc" .align 2 -gFont7LatinGlyphs:: - .incbin "graphics/fonts/font7.latfont" +gFontNarrowLatinGlyphs:: + .incbin "graphics/fonts/narrow/glyphs.latfont" .align 2 -gFont7LatinGlyphWidths:: - .include "graphics/fonts/font7_latin_widths.inc" +gFontNarrowLatinGlyphWidths:: + .include "graphics/fonts/narrow/latin_widths.inc" .align 2 -gFont2LatinGlyphs:: - .incbin "graphics/fonts/font2.latfont" +gFontShortLatinGlyphs:: + .incbin "graphics/fonts/short/glyphs.latfont" .align 2 -gFont2LatinGlyphWidths:: - .include "graphics/fonts/font2_latin_widths.inc" +gFontShortLatinGlyphWidths:: + .include "graphics/fonts/short/latin_widths.inc" .align 2 -gFont1LatinGlyphs:: - .incbin "graphics/fonts/font1.latfont" +gFontNormalLatinGlyphs:: + .incbin "graphics/fonts/normal/glyphs.latfont" .align 2 -gFont1LatinGlyphWidths:: - .include "graphics/fonts/font1_latin_widths.inc" +gFontNormalLatinGlyphWidths:: + .include "graphics/fonts/normal/latin_widths.inc" .align 2 -gFont0JapaneseGlyphs:: - .incbin "graphics/fonts/font0.hwjpnfont" +gFontSmallJapaneseGlyphs:: + .incbin "graphics/fonts/small/glyphs.hwjpnfont" .align 2 -gFont1JapaneseGlyphs:: - .incbin "graphics/fonts/font1.hwjpnfont" +gFontNormalJapaneseGlyphs:: + .incbin "graphics/fonts/normal/glyphs.hwjpnfont" .align 2 gUnusedJapaneseFireRedLeafGreenMaleFontGlyphs:: @@ -68,9 +68,9 @@ gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphWidths:: .include "graphics/fonts/unused_japanese_frlg_female_font_widths.inc" .align 2 -gFont2JapaneseGlyphs:: - .incbin "graphics/fonts/font2.fwjpnfont" +gFontShortJapaneseGlyphs:: + .incbin "graphics/fonts/short/glyphs.fwjpnfont" .align 2 -gFont2JapaneseGlyphWidths:: - .include "graphics/fonts/font2_japanese_widths.inc" +gFontShortJapaneseGlyphWidths:: + .include "graphics/fonts/short/japanese_widths.inc" diff --git a/gflib/characters.h b/gflib/characters.h index ab003a3e3dec..480652df0346 100644 --- a/gflib/characters.h +++ b/gflib/characters.h @@ -248,17 +248,6 @@ #define TEXT_DYNAMIC_COLOR_5 0xE // Usually blue-green #define TEXT_DYNAMIC_COLOR_6 0xF // Usually cerulean -#define FONT_0 0 -#define FONT_1 1 -#define FONT_2 2 -#define FONT_3 3 -#define FONT_4 4 -#define FONT_5 5 -#define FONT_6 6 -#define FONT_7 7 -#define FONT_8 8 - - #define PLACEHOLDER_ID_UNKNOWN 0x0 #define PLACEHOLDER_ID_PLAYER 0x1 #define PLACEHOLDER_ID_STRING_VAR_1 0x2 diff --git a/gflib/text.c b/gflib/text.c index e3043230b0f9..31a75e0d53dd 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -12,6 +12,26 @@ #include "menu.h" #include "dynamic_placeholder_text_util.h" +static u16 FontFunc_Small(struct TextPrinter *); +static u16 FontFunc_Normal(struct TextPrinter *); +static u16 FontFunc_Short(struct TextPrinter *); +static u16 FontFunc_ShortCopy1(struct TextPrinter *); +static u16 FontFunc_ShortCopy2(struct TextPrinter *); +static u16 FontFunc_ShortCopy3(struct TextPrinter *); +static u16 FontFunc_Narrow(struct TextPrinter *); +static u16 FontFunc_SmallNarrow(struct TextPrinter *); +static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese); +static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese); +static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese); +static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese); +static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese); +static void DecompressGlyph_Bold(u16 glyphId); +static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese); +static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese); +static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese); +static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese); +static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese); + EWRAM_DATA struct TextPrinter gTempTextPrinter = {0}; EWRAM_DATA struct TextPrinter gTextPrinters[NUM_TEXT_PRINTERS] = {0}; @@ -49,20 +69,20 @@ const u8 gDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow.4bpp"); const u8 gDarkDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow_RS.4bpp"); const u8 gUnusedFRLGBlankedDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_blanked_down_arrow.4bpp"); const u8 gUnusedFRLGDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_down_arrow.4bpp"); -const u8 gDownArrowYCoords[] = { 0x0, 0x1, 0x2, 0x1 }; -const u8 gWindowVerticalScrollSpeeds[] = { 0x1, 0x2, 0x4, 0x0 }; +const u8 gDownArrowYCoords[] = { 0, 1, 2, 1 }; +const u8 gWindowVerticalScrollSpeeds[] = { 1, 2, 4, 0x0 }; -const struct GlyphWidthFunc gGlyphWidthFuncs[] = +static const struct GlyphWidthFunc sGlyphWidthFuncs[] = { - { 0x0, GetGlyphWidthFont0 }, - { 0x1, GetGlyphWidthFont1 }, - { 0x2, GetGlyphWidthFont2 }, - { 0x3, GetGlyphWidthFont2 }, - { 0x4, GetGlyphWidthFont2 }, - { 0x5, GetGlyphWidthFont2 }, - { 0x6, GetGlyphWidthFont6 }, - { 0x7, GetGlyphWidthFont7 }, - { 0x8, GetGlyphWidthFont8 } + { FONT_SMALL, GetGlyphWidth_Small }, + { FONT_NORMAL, GetGlyphWidth_Normal }, + { FONT_SHORT, GetGlyphWidth_Short }, + { FONT_SHORT_COPY_1, GetGlyphWidth_Short }, + { FONT_SHORT_COPY_2, GetGlyphWidth_Short }, + { FONT_SHORT_COPY_3, GetGlyphWidth_Short }, + { FONT_BRAILLE, GetGlyphWidth_Braille }, + { FONT_NARROW, GetGlyphWidth_Narrow }, + { FONT_SMALL_NARROW, GetGlyphWidth_SmallNarrow } }; const struct KeypadIcon gKeypadIcons[] = @@ -84,52 +104,142 @@ const struct KeypadIcon gKeypadIcons[] = const u8 gKeypadIconTiles[] = INCBIN_U8("graphics/fonts/keypad_icons.4bpp"); -const struct FontInfo gFontInfos[] = +static const struct FontInfo sFontInfos[] = { - { Font0Func, 0x5, 0xC, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font1Func, 0x6, 0x10, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font2Func, 0x6, 0xE, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font3Func, 0x6, 0xE, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font4Func, 0x6, 0xE, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font5Func, 0x6, 0xE, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font6Func, 0x8, 0x10, 0x0, 0x8, 0x0, 0x2, 0x1, 0x3 }, - { Font7Func, 0x5, 0x10, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { Font8Func, 0x5, 0x8, 0x0, 0x0, 0x0, 0x2, 0x1, 0x3 }, - { NULL, 0x8, 0x8, 0x0, 0x0, 0x0, 0x1, 0x2, 0xF } + [FONT_SMALL] = { + .fontFunction = FontFunc_Small, + .maxLetterWidth = 5, + .maxLetterHeight = 12, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_NORMAL] = { + .fontFunction = FontFunc_Normal, + .maxLetterWidth = 6, + .maxLetterHeight = 16, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_SHORT] = { + .fontFunction = FontFunc_Short, + .maxLetterWidth = 6, + .maxLetterHeight = 14, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_SHORT_COPY_1] = { + .fontFunction = FontFunc_ShortCopy1, + .maxLetterWidth = 6, + .maxLetterHeight = 14, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_SHORT_COPY_2] = { + .fontFunction = FontFunc_ShortCopy2, + .maxLetterWidth = 6, + .maxLetterHeight = 14, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_SHORT_COPY_3] = { + .fontFunction = FontFunc_ShortCopy3, + .maxLetterWidth = 6, + .maxLetterHeight = 14, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_BRAILLE] = { + .fontFunction = FontFunc_Braille, + .maxLetterWidth = 8, + .maxLetterHeight = 16, + .letterSpacing = 0, + .lineSpacing = 8, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_NARROW] = { + .fontFunction = FontFunc_Narrow, + .maxLetterWidth = 5, + .maxLetterHeight = 16, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_SMALL_NARROW] = { + .fontFunction = FontFunc_SmallNarrow, + .maxLetterWidth = 5, + .maxLetterHeight = 8, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 2, + .bgColor = 1, + .shadowColor = 3, + }, + [FONT_BOLD] = { + .fontFunction = NULL, + .maxLetterWidth = 8, + .maxLetterHeight = 8, + .letterSpacing = 0, + .lineSpacing = 0, + .fgColor = 1, + .bgColor = 2, + .shadowColor = 15, + } }; -const u8 gMenuCursorDimensions[][2] = +static const u8 sMenuCursorDimensions[][2] = { - { 0x8, 0xC }, - { 0x8, 0xF }, - { 0x8, 0xE }, - { 0x8, 0xE }, - { 0x8, 0xE }, - { 0x8, 0xE }, - { 0x8, 0x10 }, - { 0x8, 0xF }, - { 0x8, 0x8 }, - { 0x0, 0x0 } + [FONT_SMALL] = { 8, 12 }, + [FONT_NORMAL] = { 8, 15 }, + [FONT_SHORT] = { 8, 14 }, + [FONT_SHORT_COPY_1] = { 8, 14 }, + [FONT_SHORT_COPY_2] = { 8, 14 }, + [FONT_SHORT_COPY_3] = { 8, 14 }, + [FONT_BRAILLE] = { 8, 16 }, + [FONT_NARROW] = { 8, 15 }, + [FONT_SMALL_NARROW] = { 8, 8 }, + [FONT_BOLD] = {} }; -const u16 gFont9JapaneseGlyphs[] = INCBIN_U16("graphics/fonts/font9.hwjpnfont"); - -extern const u16 gFont8LatinGlyphs[]; -extern const u8 gFont8LatinGlyphWidths[]; -extern const u16 gFont0LatinGlyphs[]; -extern const u8 gFont0LatinGlyphWidths[]; -extern const u16 gFont7LatinGlyphs[]; -extern const u8 gFont7LatinGlyphWidths[]; -extern const u16 gFont2LatinGlyphs[]; -extern const u8 gFont2LatinGlyphWidths[]; -extern const u16 gFont1LatinGlyphs[]; -extern const u8 gFont1LatinGlyphWidths[]; -extern const u16 gFont0JapaneseGlyphs[]; -extern const u16 gFont1JapaneseGlyphs[]; -extern const u16 gFont2JapaneseGlyphs[]; -extern const u8 gFont2JapaneseGlyphWidths[]; - -void SetFontsPointer(const struct FontInfo *fonts) +const u16 gFontBoldJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/bold_glyphs.hwjpnfont"); + +extern const u16 gFontNormalLatinGlyphs[]; +extern const u8 gFontNormalLatinGlyphWidths[]; +extern const u16 gFontNormalJapaneseGlyphs[]; +extern const u16 gFontSmallLatinGlyphs[]; +extern const u8 gFontSmallLatinGlyphWidths[]; +extern const u16 gFontSmallJapaneseGlyphs[]; +extern const u16 gFontShortLatinGlyphs[]; +extern const u8 gFontShortLatinGlyphWidths[]; +extern const u16 gFontShortJapaneseGlyphs[]; +extern const u8 gFontShortJapaneseGlyphWidths[]; +extern const u16 gFontNarrowLatinGlyphs[]; +extern const u8 gFontNarrowLatinGlyphWidths[]; +extern const u16 gFontSmallNarrowLatinGlyphs[]; +extern const u8 gFontSmallNarrowLatinGlyphWidths[]; + +static void SetFontsPointer(const struct FontInfo *fonts) { gFonts = fonts; } @@ -565,98 +675,98 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) } } -u16 Font0Func(struct TextPrinter *textPrinter) +static u16 FontFunc_Small(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 0; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SMALL; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font1Func(struct TextPrinter *textPrinter) +static u16 FontFunc_Normal(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 1; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_NORMAL; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font2Func(struct TextPrinter *textPrinter) +static u16 FontFunc_Short(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 2; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SHORT; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font3Func(struct TextPrinter *textPrinter) +static u16 FontFunc_ShortCopy1(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 3; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SHORT_COPY_1; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font4Func(struct TextPrinter *textPrinter) +static u16 FontFunc_ShortCopy2(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 4; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SHORT_COPY_2; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font5Func(struct TextPrinter *textPrinter) +static u16 FontFunc_ShortCopy3(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 5; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SHORT_COPY_3; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font7Func(struct TextPrinter *textPrinter) +static u16 FontFunc_Narrow(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 7; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_NARROW; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } -u16 Font8Func(struct TextPrinter *textPrinter) +static u16 FontFunc_SmallNarrow(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); - if (subStruct->hasGlyphIdBeenSet == FALSE) + if (subStruct->hasFontIdBeenSet == FALSE) { - subStruct->glyphId = 8; - subStruct->hasGlyphIdBeenSet = TRUE; + subStruct->fontId = FONT_SMALL_NARROW; + subStruct->hasFontIdBeenSet = TRUE; } return RenderText(textPrinter); } @@ -907,7 +1017,7 @@ u16 RenderText(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentChar++; return 2; case EXT_CTRL_CODE_FONT: - subStruct->glyphId = *textPrinter->printerTemplate.currentChar; + subStruct->fontId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return 2; case EXT_CTRL_CODE_RESET_SIZE: @@ -1022,27 +1132,27 @@ u16 RenderText(struct TextPrinter *textPrinter) return 1; } - switch (subStruct->glyphId) + switch (subStruct->fontId) { - case 0: - DecompressGlyphFont0(currChar, textPrinter->japanese); + case FONT_SMALL: + DecompressGlyph_Small(currChar, textPrinter->japanese); break; - case 1: - DecompressGlyphFont1(currChar, textPrinter->japanese); + case FONT_NORMAL: + DecompressGlyph_Normal(currChar, textPrinter->japanese); break; - case 2: - case 3: - case 4: - case 5: - DecompressGlyphFont2(currChar, textPrinter->japanese); + case FONT_SHORT: + case FONT_SHORT_COPY_1: + case FONT_SHORT_COPY_2: + case FONT_SHORT_COPY_3: + DecompressGlyph_Short(currChar, textPrinter->japanese); break; - case 7: - DecompressGlyphFont7(currChar, textPrinter->japanese); + case FONT_NARROW: + DecompressGlyph_Narrow(currChar, textPrinter->japanese); break; - case 8: - DecompressGlyphFont8(currChar, textPrinter->japanese); + case FONT_SMALL_NARROW: + DecompressGlyph_SmallNarrow(currChar, textPrinter->japanese); break; - case 6: + case FONT_BRAILLE: break; } @@ -1125,7 +1235,8 @@ u16 RenderText(struct TextPrinter *textPrinter) return 1; } -u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing) +// Unused +static u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing) { int i; u8 width; @@ -1136,10 +1247,8 @@ u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing) u8 lineWidths[8]; const u8 *strLocal; - for (i = 0; i < 8; i++) - { + for (i = 0; i < (int)ARRAY_COUNT(lineWidths); i++) lineWidths[i] = 0; - } width = 0; line = 0; @@ -1216,14 +1325,14 @@ u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing) return (u8)(GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH) + letterSpacing) * width; } -u32 (*GetFontWidthFunc(u8 glyphId))(u16, bool32) +static u32 (*GetFontWidthFunc(u8 fontId))(u16, bool32) { u32 i; - for (i = 0; i < 9; ++i) + for (i = 0; i < ARRAY_COUNT(sGlyphWidthFuncs); ++i) { - if (glyphId == gGlyphWidthFuncs[i].fontId) - return gGlyphWidthFuncs[i].func; + if (fontId == sGlyphWidthFuncs[i].fontId) + return sGlyphWidthFuncs[i].func; } return NULL; @@ -1233,7 +1342,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) { bool8 isJapanese; int minGlyphWidth; - u32 (*func)(u16 glyphId, bool32 isJapanese); + u32 (*func)(u16 fontId, bool32 isJapanese); int localLetterSpacing; u32 lineWidth; const u8 *bufferPointer; @@ -1490,12 +1599,12 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) default: switch (fontId) { - case 9: - DecompressGlyphFont9(temp); + case FONT_BOLD: + DecompressGlyph_Bold(temp); break; - case 1: + case FONT_NORMAL: default: - DecompressGlyphFont1(temp, 1); + DecompressGlyph_Normal(temp, TRUE); break; } CpuCopy32(gCurGlyph.gfxBufferTop, pixels, 0x20); @@ -1543,7 +1652,7 @@ u8 GetKeypadIconHeight(u8 keypadIconId) void SetDefaultFontsPointer(void) { - SetFontsPointer(&gFontInfos[0]); + SetFontsPointer(sFontInfos); } u8 GetFontAttribute(u8 fontId, u8 attributeId) @@ -1552,28 +1661,28 @@ u8 GetFontAttribute(u8 fontId, u8 attributeId) switch (attributeId) { case FONTATTR_MAX_LETTER_WIDTH: - result = gFontInfos[fontId].maxLetterWidth; + result = sFontInfos[fontId].maxLetterWidth; break; case FONTATTR_MAX_LETTER_HEIGHT: - result = gFontInfos[fontId].maxLetterHeight; + result = sFontInfos[fontId].maxLetterHeight; break; case FONTATTR_LETTER_SPACING: - result = gFontInfos[fontId].letterSpacing; + result = sFontInfos[fontId].letterSpacing; break; case FONTATTR_LINE_SPACING: - result = gFontInfos[fontId].lineSpacing; + result = sFontInfos[fontId].lineSpacing; break; case FONTATTR_UNKNOWN: - result = gFontInfos[fontId].unk; + result = sFontInfos[fontId].unk; break; case FONTATTR_COLOR_FOREGROUND: - result = gFontInfos[fontId].fgColor; + result = sFontInfos[fontId].fgColor; break; case FONTATTR_COLOR_BACKGROUND: - result = gFontInfos[fontId].bgColor; + result = sFontInfos[fontId].bgColor; break; case FONTATTR_COLOR_SHADOW: - result = gFontInfos[fontId].shadowColor; + result = sFontInfos[fontId].shadowColor; break; } return result; @@ -1581,16 +1690,16 @@ u8 GetFontAttribute(u8 fontId, u8 attributeId) u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension) { - return gMenuCursorDimensions[fontId][whichDimension]; + return sMenuCursorDimensions[fontId][whichDimension]; } -void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese) +static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese) { const u16* glyphs; if (isJapanese == 1) { - glyphs = gFont0JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); + glyphs = gFontSmallJapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; @@ -1598,8 +1707,8 @@ void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese) } else { - glyphs = gFont0LatinGlyphs + (0x20 * glyphId); - gCurGlyph.width = gFont0LatinGlyphWidths[glyphId]; + glyphs = gFontSmallLatinGlyphs + (0x20 * glyphId); + gCurGlyph.width = gFontSmallLatinGlyphWidths[glyphId]; if (gCurGlyph.width <= 8) { @@ -1618,21 +1727,21 @@ void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese) } } -u32 GetGlyphWidthFont0(u16 glyphId, bool32 isJapanese) +static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese) { if (isJapanese == TRUE) return 8; else - return gFont0LatinGlyphWidths[glyphId]; + return gFontSmallLatinGlyphWidths[glyphId]; } -void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese) +static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese) { const u16* glyphs; if (isJapanese == TRUE) { - glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); + glyphs = gFontNormalJapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; @@ -1640,8 +1749,8 @@ void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese) } else { - glyphs = gFont7LatinGlyphs + (0x20 * glyphId); - gCurGlyph.width = gFont7LatinGlyphWidths[glyphId]; + glyphs = gFontNarrowLatinGlyphs + (0x20 * glyphId); + gCurGlyph.width = gFontNarrowLatinGlyphWidths[glyphId]; if (gCurGlyph.width <= 8) { @@ -1660,21 +1769,21 @@ void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese) } } -u32 GetGlyphWidthFont7(u16 glyphId, bool32 isJapanese) +static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese) { if (isJapanese == TRUE) return 8; else - return gFont7LatinGlyphWidths[glyphId]; + return gFontNarrowLatinGlyphWidths[glyphId]; } -void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese) +static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese) { const u16* glyphs; if (isJapanese == TRUE) { - glyphs = gFont0JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); + glyphs = gFontSmallJapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId & 0xF)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; @@ -1682,8 +1791,8 @@ void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese) } else { - glyphs = gFont8LatinGlyphs + (0x20 * glyphId); - gCurGlyph.width = gFont8LatinGlyphWidths[glyphId]; + glyphs = gFontSmallNarrowLatinGlyphs + (0x20 * glyphId); + gCurGlyph.width = gFontSmallNarrowLatinGlyphWidths[glyphId]; if (gCurGlyph.width <= 8) { @@ -1702,32 +1811,32 @@ void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese) } } -u32 GetGlyphWidthFont8(u16 glyphId, bool32 isJapanese) +static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese) { if (isJapanese == TRUE) return 8; else - return gFont8LatinGlyphWidths[glyphId]; + return gFontSmallNarrowLatinGlyphWidths[glyphId]; } -void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese) +static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese) { const u16* glyphs; if (isJapanese == TRUE) { - glyphs = gFont2JapaneseGlyphs + (0x100 * (glyphId >> 0x3)) + (0x10 * (glyphId & 0x7)); + glyphs = gFontShortJapaneseGlyphs + (0x100 * (glyphId >> 0x3)) + (0x10 * (glyphId & 0x7)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); // gCurGlyph + 0x20 DecompressGlyphTile(glyphs + 0x88, gCurGlyph.gfxBufferBottom + 8); // gCurGlyph + 0x60 - gCurGlyph.width = gFont2JapaneseGlyphWidths[glyphId]; + gCurGlyph.width = gFontShortJapaneseGlyphWidths[glyphId]; gCurGlyph.height = 14; } else { - glyphs = gFont2LatinGlyphs + (0x20 * glyphId); - gCurGlyph.width = gFont2LatinGlyphWidths[glyphId]; + glyphs = gFontShortLatinGlyphs + (0x20 * glyphId); + gCurGlyph.width = gFontShortLatinGlyphWidths[glyphId]; if (gCurGlyph.width <= 8) { @@ -1746,21 +1855,21 @@ void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese) } } -u32 GetGlyphWidthFont2(u16 glyphId, bool32 isJapanese) +static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese) { if (isJapanese == TRUE) - return gFont2JapaneseGlyphWidths[glyphId]; + return gFontShortJapaneseGlyphWidths[glyphId]; else - return gFont2LatinGlyphWidths[glyphId]; + return gFontShortLatinGlyphWidths[glyphId]; } -void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese) +static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese) { const u16* glyphs; if (isJapanese == TRUE) { - glyphs = gFont1JapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); + glyphs = gFontNormalJapaneseGlyphs + (0x100 * (glyphId >> 0x4)) + (0x8 * (glyphId % 0x10)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; @@ -1768,8 +1877,8 @@ void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese) } else { - glyphs = gFont1LatinGlyphs + (0x20 * glyphId); - gCurGlyph.width = gFont1LatinGlyphWidths[glyphId]; + glyphs = gFontNormalLatinGlyphs + (0x20 * glyphId); + gCurGlyph.width = gFontNormalLatinGlyphWidths[glyphId]; if (gCurGlyph.width <= 8) { @@ -1788,19 +1897,19 @@ void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese) } } -u32 GetGlyphWidthFont1(u16 glyphId, bool32 isJapanese) +static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese) { if (isJapanese == TRUE) return 8; else - return gFont1LatinGlyphWidths[glyphId]; + return gFontNormalLatinGlyphWidths[glyphId]; } -void DecompressGlyphFont9(u16 glyphId) +static void DecompressGlyph_Bold(u16 glyphId) { const u16* glyphs; - glyphs = gFont9JapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); + glyphs = gFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; diff --git a/gflib/text.h b/gflib/text.h index 91b9ef77ff72..2c981de209a0 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -7,8 +7,20 @@ #define TEXT_SPEED_FF 0xFF -enum -{ +enum { + FONT_SMALL, + FONT_NORMAL, + FONT_SHORT, + FONT_SHORT_COPY_1, + FONT_SHORT_COPY_2, + FONT_SHORT_COPY_3, + FONT_BRAILLE, + FONT_NARROW, + FONT_SMALL_NARROW, // Very similar to FONT_SMALL, some glyphs are narrower + FONT_BOLD, // JP glyph set only +}; + +enum { FONTATTR_MAX_LETTER_WIDTH, FONTATTR_MAX_LETTER_HEIGHT, FONTATTR_LETTER_SPACING, @@ -21,12 +33,12 @@ enum struct TextPrinterSubStruct { - u8 glyphId:4; // 0x14 + u8 fontId:4; // 0x14 bool8 hasPrintBeenSpedUp:1; u8 unk:3; u8 downArrowDelay:5; u8 downArrowYPosIdx:2; - bool8 hasGlyphIdBeenSet:1; + bool8 hasFontIdBeenSet:1; u8 autoScrollDelay; }; @@ -111,7 +123,6 @@ extern TextFlags gTextFlags; extern u8 gDisableTextPrinters; extern struct TextGlyph gCurGlyph; -void SetFontsPointer(const struct FontInfo *fonts); 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)); @@ -127,15 +138,6 @@ void CopyGlyphToWindow(struct TextPrinter *x); void ClearTextSpan(struct TextPrinter *textPrinter, u32 width); u8 GetMenuCursorDimensionByFont(u8, u8); -u16 Font0Func(struct TextPrinter *textPrinter); -u16 Font1Func(struct TextPrinter *textPrinter); -u16 Font2Func(struct TextPrinter *textPrinter); -u16 Font3Func(struct TextPrinter *textPrinter); -u16 Font4Func(struct TextPrinter *textPrinter); -u16 Font5Func(struct TextPrinter *textPrinter); -u16 Font7Func(struct TextPrinter *textPrinter); -u16 Font8Func(struct TextPrinter *textPrinter); - void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter); void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter); void TextPrinterClearDownArrow(struct TextPrinter *textPrinter); @@ -144,8 +146,6 @@ bool16 TextPrinterWaitWithDownArrow(struct TextPrinter *textPrinter); bool16 TextPrinterWait(struct TextPrinter *textPrinter); void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *counter, u8 *yCoordIndex); u16 RenderText(struct TextPrinter *textPrinter); -u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing); -u32 (*GetFontWidthFunc(u8 glyphId))(u16, bool32); s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing); u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str); u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y); @@ -155,20 +155,9 @@ u8 GetKeypadIconHeight(u8 keypadIconId); void SetDefaultFontsPointer(void); u8 GetFontAttribute(u8 fontId, u8 attributeId); u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension); -void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont0(u16 glyphId, bool32 isJapanese); -void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont7(u16 glyphId, bool32 isJapanese); -void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont8(u16 glyphId, bool32 isJapanese); -void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont2(u16 glyphId, bool32 isJapanese); -void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont1(u16 glyphId, bool32 isJapanese); -void DecompressGlyphFont9(u16 glyphId); - -// unk_text_util_2.c -u16 Font6Func(struct TextPrinter *textPrinter); -u32 GetGlyphWidthFont6(u16 glyphId, bool32 isJapanese); + +// braille.c +u16 FontFunc_Braille(struct TextPrinter *textPrinter); +u32 GetGlyphWidth_Braille(u16 glyphId, bool32 isJapanese); #endif // GUARD_TEXT_H diff --git a/graphics/fonts/font9_japanese.png b/graphics/fonts/bold_japanese.png similarity index 100% rename from graphics/fonts/font9_japanese.png rename to graphics/fonts/bold_japanese.png diff --git a/graphics/fonts/font6_braille.png b/graphics/fonts/braille.png similarity index 100% rename from graphics/fonts/font6_braille.png rename to graphics/fonts/braille.png diff --git a/graphics/fonts/font7_latin.png b/graphics/fonts/narrow/latin.png similarity index 100% rename from graphics/fonts/font7_latin.png rename to graphics/fonts/narrow/latin.png diff --git a/graphics/fonts/font7_latin_widths.inc b/graphics/fonts/narrow/latin_widths.inc similarity index 100% rename from graphics/fonts/font7_latin_widths.inc rename to graphics/fonts/narrow/latin_widths.inc diff --git a/graphics/fonts/font1_japanese.png b/graphics/fonts/normal/japanese.png similarity index 100% rename from graphics/fonts/font1_japanese.png rename to graphics/fonts/normal/japanese.png diff --git a/graphics/fonts/font1_latin.png b/graphics/fonts/normal/latin.png similarity index 100% rename from graphics/fonts/font1_latin.png rename to graphics/fonts/normal/latin.png diff --git a/graphics/fonts/font1_latin_widths.inc b/graphics/fonts/normal/latin_widths.inc similarity index 100% rename from graphics/fonts/font1_latin_widths.inc rename to graphics/fonts/normal/latin_widths.inc diff --git a/graphics/fonts/font2_japanese.png b/graphics/fonts/short/japanese.png similarity index 100% rename from graphics/fonts/font2_japanese.png rename to graphics/fonts/short/japanese.png diff --git a/graphics/fonts/font2_japanese_widths.inc b/graphics/fonts/short/japanese_widths.inc similarity index 100% rename from graphics/fonts/font2_japanese_widths.inc rename to graphics/fonts/short/japanese_widths.inc diff --git a/graphics/fonts/font2_latin.png b/graphics/fonts/short/latin.png similarity index 100% rename from graphics/fonts/font2_latin.png rename to graphics/fonts/short/latin.png diff --git a/graphics/fonts/font2_latin_widths.inc b/graphics/fonts/short/latin_widths.inc similarity index 100% rename from graphics/fonts/font2_latin_widths.inc rename to graphics/fonts/short/latin_widths.inc diff --git a/graphics/fonts/font0_japanese.png b/graphics/fonts/small/japanese.png similarity index 100% rename from graphics/fonts/font0_japanese.png rename to graphics/fonts/small/japanese.png diff --git a/graphics/fonts/font0_latin.png b/graphics/fonts/small/latin.png similarity index 100% rename from graphics/fonts/font0_latin.png rename to graphics/fonts/small/latin.png diff --git a/graphics/fonts/font0_latin_widths.inc b/graphics/fonts/small/latin_widths.inc similarity index 100% rename from graphics/fonts/font0_latin_widths.inc rename to graphics/fonts/small/latin_widths.inc diff --git a/graphics/fonts/font8_latin.png b/graphics/fonts/small_narrow/latin.png similarity index 100% rename from graphics/fonts/font8_latin.png rename to graphics/fonts/small_narrow/latin.png diff --git a/graphics/fonts/font8_latin_widths.inc b/graphics/fonts/small_narrow/latin_widths.inc similarity index 100% rename from graphics/fonts/font8_latin_widths.inc rename to graphics/fonts/small_narrow/latin_widths.inc diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 9fd9091a467e..fb2eee5051b3 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -289,34 +289,34 @@ $(TILESETGFXDIR)/secondary/mystery_events_house/tiles.4bpp: %.4bpp: %.png ### Fonts ### -$(FONTGFXDIR)/font0.latfont: $(FONTGFXDIR)/font0_latin.png +$(FONTGFXDIR)/small/glyphs.latfont: $(FONTGFXDIR)/small/latin.png $(GFX) $< $@ -$(FONTGFXDIR)/font1.latfont: $(FONTGFXDIR)/font1_latin.png +$(FONTGFXDIR)/normal/glyphs.latfont: $(FONTGFXDIR)/normal/latin.png $(GFX) $< $@ -$(FONTGFXDIR)/font2.latfont: $(FONTGFXDIR)/font2_latin.png +$(FONTGFXDIR)/short/glyphs.latfont: $(FONTGFXDIR)/short/latin.png $(GFX) $< $@ -$(FONTGFXDIR)/font7.latfont: $(FONTGFXDIR)/font7_latin.png +$(FONTGFXDIR)/narrow/glyphs.latfont: $(FONTGFXDIR)/narrow/latin.png $(GFX) $< $@ -$(FONTGFXDIR)/font8.latfont: $(FONTGFXDIR)/font8_latin.png +$(FONTGFXDIR)/small_narrow/glyphs.latfont: $(FONTGFXDIR)/small_narrow/latin.png $(GFX) $< $@ -$(FONTGFXDIR)/font0.hwjpnfont: $(FONTGFXDIR)/font0_japanese.png +$(FONTGFXDIR)/small/glyphs.hwjpnfont: $(FONTGFXDIR)/small/japanese.png $(GFX) $< $@ -$(FONTGFXDIR)/font1.hwjpnfont: $(FONTGFXDIR)/font1_japanese.png +$(FONTGFXDIR)/normal/glyphs.hwjpnfont: $(FONTGFXDIR)/normal/japanese.png $(GFX) $< $@ -$(FONTGFXDIR)/font9.hwjpnfont: $(FONTGFXDIR)/font9_japanese.png +$(FONTGFXDIR)/bold_glyphs.hwjpnfont: $(FONTGFXDIR)/bold_japanese.png $(GFX) $< $@ -$(FONTGFXDIR)/font2.fwjpnfont: $(FONTGFXDIR)/font2_japanese.png +$(FONTGFXDIR)/short/glyphs.fwjpnfont: $(FONTGFXDIR)/short/japanese.png $(GFX) $< $@ -$(FONTGFXDIR)/font6.fwjpnfont: $(FONTGFXDIR)/font6_braille.png +$(FONTGFXDIR)/braille_glyphs.fwjpnfont: $(FONTGFXDIR)/braille.png $(GFX) $< $@ $(FONTGFXDIR)/unused_frlg_male.fwjpnfont: $(FONTGFXDIR)/unused_japanese_frlg_male_font.png diff --git a/ld_script.txt b/ld_script.txt index 3c1a2509440b..34ba15c5821c 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -299,7 +299,7 @@ SECTIONS { src/item_icon.o(.text); src/party_menu.o(.text); src/battle_tent.o(.text); - src/unk_text_util_2.o(.text); + src/braille.o(.text); src/multiboot.o(.text); src/berry_fix_graphics.o(.text); src/battle_controller_player_partner.o(.text); @@ -654,7 +654,7 @@ SECTIONS { src/item_icon.o(.rodata); src/party_menu.o(.rodata); src/battle_tent.o(.rodata); - src/unk_text_util_2.o(.rodata); + src/braille.o(.rodata); src/multiboot.o(.rodata); src/berry_fix_graphics.o(.rodata); src/battle_controller_player_partner.o(.rodata); diff --git a/src/apprentice.c b/src/apprentice.c index 5d1c4287b839..032b76715c0d 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -632,7 +632,7 @@ static void CreateApprenticeMenu(u8 menu) pixelWidth = 0; for (i = 0; i < count; i++) { - s32 width = GetStringWidth(1, strings[i], 0); + s32 width = GetStringWidth(FONT_NORMAL, strings[i], 0); if (width > pixelWidth) pixelWidth = width; } @@ -643,7 +643,7 @@ static void CreateApprenticeMenu(u8 menu) SetStandardWindowBorderStyle(windowId, 0); for (i = 0; i < count; i++) - AddTextPrinterParameterized(windowId, 1, strings[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, strings[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, 0); CreateChooseAnswerTask(TRUE, count, windowId); diff --git a/src/battle_dome.c b/src/battle_dome.c index 9449186310c3..429cc58d7e9e 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -4312,7 +4312,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) } // Initialize the text printer - textPrinter.fontId = 2; + textPrinter.fontId = FONT_SHORT; textPrinter.x = 0; textPrinter.y = 0; textPrinter.currentX = textPrinter.x; @@ -4393,7 +4393,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) else textPrinter.currentChar = sBattleDomePotentialTexts[trainerTourneyId]; - textPrinter.fontId = 1; + textPrinter.fontId = FONT_NORMAL; textPrinter.windowId = windowId + 4; textPrinter.currentX = 0; textPrinter.y = 4; @@ -4859,7 +4859,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) StringExpandPlaceholders(gStringVar4, sBattleDomeWinTexts[winStringId]); textPrinter.currentChar = gStringVar4; textPrinter.windowId = windowId + 8; - textPrinter.fontId = 1; + textPrinter.fontId = FONT_NORMAL; PutWindowTilemap(windowId + 8); CopyWindowToVram(windowId + 8, 3); textPrinter.currentX = 0; @@ -4874,7 +4874,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) else CopyDomeTrainerName(gStringVar1, trainerIds[0]); - textPrinter.fontId = 2; + textPrinter.fontId = FONT_SHORT; textPrinter.letterSpacing = 2; textPrinter.currentChar = gStringVar1; textPrinter.windowId = windowId + 6; @@ -5339,7 +5339,7 @@ static void Task_ShowTourneyTree(u8 taskId) gTasks[taskId].tState++; break; case 4: - textPrinter.fontId = 2; + textPrinter.fontId = FONT_SHORT; textPrinter.currentChar = gText_BattleTourney; textPrinter.windowId = 2; textPrinter.x = 0; @@ -5524,7 +5524,7 @@ static void Task_HandleStaticTourneyTreeInput(u8 taskId) { gTasks[taskId].tState = STATE_DELAY; gTasks[taskId].data[3] = 64; - textPrinter.fontId = 2; + textPrinter.fontId = FONT_SHORT; textPrinter.x = 0; textPrinter.y = 0; textPrinter.letterSpacing = 2; diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 64d564062254..cd0a44e38a3b 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1861,7 +1861,7 @@ static void Select_ErasePopupMenu(u8 windowId) static void Select_PrintRentalPkmnString(void) { FillWindowPixelBuffer(SELECT_WIN_TITLE, PIXEL_FILL(0)); - AddTextPrinterParameterized(SELECT_WIN_TITLE, 1, gText_RentalPkmn2, 2, 1, 0, NULL); + AddTextPrinterParameterized(SELECT_WIN_TITLE, FONT_NORMAL, gText_RentalPkmn2, 2, 1, 0, NULL); CopyWindowToVram(SELECT_WIN_TITLE, 3); } @@ -1874,8 +1874,8 @@ static void Select_PrintMonSpecies(void) FillWindowPixelBuffer(SELECT_WIN_SPECIES, PIXEL_FILL(0)); species = GetMonData(&sFactorySelectScreen->mons[monId].monData, MON_DATA_SPECIES, NULL); StringCopy(gStringVar4, gSpeciesNames[species]); - x = GetStringRightAlignXOffset(1, gStringVar4, 86); - AddTextPrinterParameterized3(SELECT_WIN_SPECIES, 1, x, 1, sSpeciesNameTextColors, 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); + AddTextPrinterParameterized3(SELECT_WIN_SPECIES, FONT_NORMAL, x, 1, sSpeciesNameTextColors, 0, gStringVar4); CopyWindowToVram(SELECT_WIN_SPECIES, 2); } @@ -1893,14 +1893,14 @@ static void Select_PrintSelectMonString(void) else str = gText_TheseThreePkmnOkay; - AddTextPrinterParameterized(SELECT_WIN_INFO, 1, str, 2, 5, 0, NULL); + AddTextPrinterParameterized(SELECT_WIN_INFO, FONT_NORMAL, str, 2, 5, 0, NULL); CopyWindowToVram(SELECT_WIN_INFO, 2); } static void Select_PrintCantSelectSameMon(void) { FillWindowPixelBuffer(SELECT_WIN_INFO, PIXEL_FILL(0)); - AddTextPrinterParameterized(SELECT_WIN_INFO, 1, gText_CantSelectSamePkmn, 2, 5, 0, NULL); + AddTextPrinterParameterized(SELECT_WIN_INFO, FONT_NORMAL, gText_CantSelectSamePkmn, 2, 5, 0, NULL); CopyWindowToVram(SELECT_WIN_INFO, 2); } @@ -1910,13 +1910,13 @@ static void Select_PrintMenuOptions(void) PutWindowTilemap(SELECT_WIN_OPTIONS); FillWindowPixelBuffer(SELECT_WIN_OPTIONS, PIXEL_FILL(0)); - AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, 1, 7, 1, sMenuOptionTextColors, 0, gText_Summary); + AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 1, sMenuOptionTextColors, 0, gText_Summary); if (selectedId != 0) - AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, 1, 7, 17, sMenuOptionTextColors, 0, gText_Deselect); + AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 17, sMenuOptionTextColors, 0, gText_Deselect); else - AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, 1, 7, 17, sMenuOptionTextColors, 0, gText_Rent); + AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 17, sMenuOptionTextColors, 0, gText_Rent); - AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, 1, 7, 33, sMenuOptionTextColors, 0, gText_Others2); + AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 33, sMenuOptionTextColors, 0, gText_Others2); CopyWindowToVram(SELECT_WIN_OPTIONS, 3); } @@ -1924,8 +1924,8 @@ static void Select_PrintYesNoOptions(void) { PutWindowTilemap(SELECT_WIN_YES_NO); FillWindowPixelBuffer(SELECT_WIN_YES_NO, PIXEL_FILL(0)); - AddTextPrinterParameterized3(SELECT_WIN_YES_NO, 1, 7, 1, sMenuOptionTextColors, 0, gText_Yes2); - AddTextPrinterParameterized3(SELECT_WIN_YES_NO, 1, 7, 17, sMenuOptionTextColors, 0, gText_No2); + AddTextPrinterParameterized3(SELECT_WIN_YES_NO, FONT_NORMAL, 7, 1, sMenuOptionTextColors, 0, gText_Yes2); + AddTextPrinterParameterized3(SELECT_WIN_YES_NO, FONT_NORMAL, 7, 17, sMenuOptionTextColors, 0, gText_No2); CopyWindowToVram(SELECT_WIN_YES_NO, 3); } @@ -1994,8 +1994,8 @@ static void Select_PrintMonCategory(void) FillWindowPixelBuffer(SELECT_WIN_MON_CATEGORY, PIXEL_FILL(0)); species = GetMonData(&sFactorySelectScreen->mons[monId].monData, MON_DATA_SPECIES, NULL); CopyMonCategoryText(SpeciesToNationalPokedexNum(species), text); - x = GetStringRightAlignXOffset(1, text, 0x76); - AddTextPrinterParameterized(SELECT_WIN_MON_CATEGORY, 1, text, x, 1, 0, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x76); + AddTextPrinterParameterized(SELECT_WIN_MON_CATEGORY, FONT_NORMAL, text, x, 1, 0, NULL); CopyWindowToVram(SELECT_WIN_MON_CATEGORY, 2); } } @@ -3753,7 +3753,7 @@ static void Swap_EraseActionFadeWindow(void) static void Swap_PrintPkmnSwap(void) { FillWindowPixelBuffer(SWAP_WIN_TITLE, PIXEL_FILL(1)); - AddTextPrinterParameterized(SWAP_WIN_TITLE, 1, gText_PkmnSwap, 2, 1, 0, NULL); + AddTextPrinterParameterized(SWAP_WIN_TITLE, FONT_NORMAL, gText_PkmnSwap, 2, 1, 0, NULL); CopyWindowToVram(SWAP_WIN_TITLE, 3); } @@ -3775,8 +3775,8 @@ static void Swap_PrintMonSpecies(void) else species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL); StringCopy(gStringVar4, gSpeciesNames[species]); - x = GetStringRightAlignXOffset(1, gStringVar4, 86); - AddTextPrinterParameterized3(SWAP_WIN_SPECIES, 1, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); + AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); CopyWindowToVram(SWAP_WIN_SPECIES, 3); } } @@ -3784,7 +3784,7 @@ static void Swap_PrintMonSpecies(void) static void Swap_PrintOnInfoWindow(const u8 *str) { FillWindowPixelBuffer(SWAP_WIN_INFO, PIXEL_FILL(0)); - AddTextPrinterParameterized(SWAP_WIN_INFO, 1, str, 2, 5, 0, NULL); + AddTextPrinterParameterized(SWAP_WIN_INFO, FONT_NORMAL, str, 2, 5, 0, NULL); CopyWindowToVram(SWAP_WIN_INFO, 2); } @@ -3792,9 +3792,9 @@ static void Swap_PrintMenuOptions(void) { PutWindowTilemap(SWAP_WIN_OPTIONS); FillWindowPixelBuffer(SWAP_WIN_OPTIONS, PIXEL_FILL(0)); - AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, 1, 15, 1, sSwapMenuOptionsTextColors, 0, gText_Summary2); - AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, 1, 15, 17, sSwapMenuOptionsTextColors, 0, gText_Swap); - AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, 1, 15, 33, sSwapMenuOptionsTextColors, 0, gText_Rechoose); + AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 1, sSwapMenuOptionsTextColors, 0, gText_Summary2); + AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 17, sSwapMenuOptionsTextColors, 0, gText_Swap); + AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 33, sSwapMenuOptionsTextColors, 0, gText_Rechoose); CopyWindowToVram(SWAP_WIN_OPTIONS, 3); } @@ -3802,15 +3802,15 @@ static void Swap_PrintYesNoOptions(void) { PutWindowTilemap(SWAP_WIN_YES_NO); FillWindowPixelBuffer(SWAP_WIN_YES_NO, PIXEL_FILL(0)); - AddTextPrinterParameterized3(SWAP_WIN_YES_NO, 1, 7, 1, sSwapMenuOptionsTextColors, 0, gText_Yes3); - AddTextPrinterParameterized3(SWAP_WIN_YES_NO, 1, 7, 17, sSwapMenuOptionsTextColors, 0, gText_No3); + AddTextPrinterParameterized3(SWAP_WIN_YES_NO, FONT_NORMAL, 7, 1, sSwapMenuOptionsTextColors, 0, gText_Yes3); + AddTextPrinterParameterized3(SWAP_WIN_YES_NO, FONT_NORMAL, 7, 17, sSwapMenuOptionsTextColors, 0, gText_No3); CopyWindowToVram(SWAP_WIN_YES_NO, 3); } static void Swap_PrintActionString(const u8 *str, u32 y, u32 windowId) { - s32 x = GetStringRightAlignXOffset(0, str, 0x46); - AddTextPrinterParameterized3(windowId, 0, x, y, sSwapMenuOptionsTextColors, 0, str); + s32 x = GetStringRightAlignXOffset(FONT_SMALL, str, 0x46); + AddTextPrinterParameterized3(windowId, FONT_SMALL, x, y, sSwapMenuOptionsTextColors, 0, str); } static void Swap_PrintActionStrings(void) @@ -3884,8 +3884,8 @@ static void Swap_PrintMonSpeciesAtFade(void) else species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL); StringCopy(gStringVar4, gSpeciesNames[species]); - x = GetStringRightAlignXOffset(1, gStringVar4, 86); - AddTextPrinterParameterized3(SWAP_WIN_SPECIES_AT_FADE, 1, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); + AddTextPrinterParameterized3(SWAP_WIN_SPECIES_AT_FADE, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, 3); } } @@ -3911,8 +3911,8 @@ static void Swap_PrintMonSpeciesForTransition(void) else species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL); StringCopy(gStringVar4, gSpeciesNames[species]); - x = GetStringRightAlignXOffset(1, gStringVar4, 86); - AddTextPrinterParameterized3(SWAP_WIN_SPECIES, 1, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); + AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); CopyWindowToVram(SWAP_WIN_SPECIES, 3); } } @@ -3937,8 +3937,8 @@ static void Swap_PrintMonCategory(void) else species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL); CopyMonCategoryText(SpeciesToNationalPokedexNum(species), text); - x = GetStringRightAlignXOffset(1, text, 0x76); - AddTextPrinterParameterized(SWAP_WIN_MON_CATEGORY, 1, text, x, 1, 0, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x76); + AddTextPrinterParameterized(SWAP_WIN_MON_CATEGORY, FONT_NORMAL, text, x, 1, 0, NULL); CopyWindowToVram(SWAP_WIN_MON_CATEGORY, 2); } } diff --git a/src/battle_interface.c b/src/battle_interface.c index 77308cb3cc5f..933a75d43679 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -718,21 +718,8 @@ static const struct SpriteTemplate sStatusSummaryBallsSpriteTemplates[2] = } }; -// possibly text -static const u8 sUnknown_0832C3C4[] = -{ - 0xfc, 0x01, 0x01, 0xfc, 0x02, 0x02, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, -}; - -// possibly text -static const u8 sUnknown_0832C3D8[] = -{ - 0xfc, 0x01, 0x01, 0xfc, 0x02, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, -}; +static const u8 sEmptyWhiteText_GrayHighlight[] = __("{COLOR WHITE}{HIGHLIGHT DARK_GRAY} "); +static const u8 sEmptyWhiteText_TransparentHighlight[] = __("{COLOR WHITE}{HIGHLIGHT TRANSPARENT} "); enum { @@ -1166,7 +1153,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) { u8 battler; - memcpy(text, sUnknown_0832C3C4, sizeof(sUnknown_0832C3C4)); + memcpy(text, sEmptyWhiteText_GrayHighlight, sizeof(sEmptyWhiteText_GrayHighlight)); battler = gSprites[healthboxSpriteId].hMain_Battler; if (IsDoubleBattle() == TRUE || GetBattlerSide(battler) == B_SIDE_OPPONENT) { @@ -1193,7 +1180,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) } ConvertIntToDecimalStringN(text + 6, value, STR_CONV_MODE_RIGHT_ALIGN, 3); - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, 9, text); + RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); for (i = 0; i < 3; i++) { @@ -1245,7 +1232,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 { u8 battlerId; - memcpy(text, sUnknown_0832C3D8, sizeof(sUnknown_0832C3D8)); + memcpy(text, sEmptyWhiteText_TransparentHighlight, sizeof(sEmptyWhiteText_TransparentHighlight)); battlerId = gSprites[healthboxSpriteId].hMain_Battler; if (gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars) // don't print text if only bars are visible @@ -1262,7 +1249,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 txtPtr = ConvertIntToDecimalStringN(text + 6, value, STR_CONV_MODE_RIGHT_ALIGN, 3); if (!maxOrCurrent) StringCopy(txtPtr, gText_Slash); - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, 9, text); + RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); for (i = var; i < var + 3; i++) { @@ -1308,12 +1295,12 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) u8 *barFontGfx; u8 i, var, nature, healthBarSpriteId; - memcpy(text, sUnknown_0832C3C4, sizeof(sUnknown_0832C3C4)); + memcpy(text, sEmptyWhiteText_GrayHighlight, sizeof(sEmptyWhiteText_GrayHighlight)); barFontGfx = &gMonSpritesGfxPtr->barFontGfx[0x520 + (GetBattlerPosition(gSprites[healthboxSpriteId].hMain_Battler) * 384)]; var = 5; nature = GetNature(mon); StringCopy(text + 6, gNatureNamePointers[nature]); - RenderTextFont9(barFontGfx, 9, text); + RenderTextFont9(barFontGfx, FONT_BOLD, text); for (j = 6, i = 0; i < var; i++, j++) { @@ -1345,7 +1332,7 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) ConvertIntToDecimalStringN(text + 9, gBattleStruct->safariEscapeFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); text[5] = CHAR_SPACE; text[8] = CHAR_SLASH; - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, 9, text); + RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); j = healthBarSpriteId; // Needed to match for some reason. for (j = 0; j < 5; j++) @@ -2130,7 +2117,7 @@ static void UpdateLeftNoOfBallsTextOnHealthbox(u8 healthboxSpriteId) txtPtr = StringCopy(text, gText_SafariBallLeft); ConvertIntToDecimalStringN(txtPtr, gNumSafariBalls, STR_CONV_MODE_LEFT_ALIGN, 2); - windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, GetStringRightAlignXOffset(0, text, 0x2F), 3, 2, &windowId); + windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, GetStringRightAlignXOffset(FONT_SMALL, text, 0x2F), 3, 2, &windowId); spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP; SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x2C0) + spriteTileNum, windowTileData, 2); SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0xA00) + spriteTileNum, windowTileData + 0x40, 4); @@ -2538,7 +2525,7 @@ static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, color[1] = 1; color[2] = 3; - AddTextPrinterParameterized4(winId, 0, x, y, 0, 0, color, -1, str); + AddTextPrinterParameterized4(winId, FONT_SMALL, x, y, 0, 0, color, -1, str); *windowId = winId; return (u8*)(GetWindowAttribute(winId, WINDOW_TILE_DATA)); diff --git a/src/battle_message.c b/src/battle_message.c index b69a171a1360..00f63bcad0d8 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1482,7 +1482,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = { [B_WIN_MSG] = { .fillValue = PIXEL_FILL(0xF), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1494,7 +1494,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_ACTION_PROMPT] = { .fillValue = PIXEL_FILL(0xF), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 1, .y = 1, .letterSpacing = 0, @@ -1506,7 +1506,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_ACTION_MENU] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1518,7 +1518,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_MOVE_NAME_1] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1530,7 +1530,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_MOVE_NAME_2] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1542,7 +1542,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_MOVE_NAME_3] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1554,7 +1554,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_MOVE_NAME_4] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1566,7 +1566,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_PP] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1578,7 +1578,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_DUMMY] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1590,7 +1590,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_PP_REMAINING] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 2, .y = 1, .letterSpacing = 0, @@ -1602,7 +1602,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_MOVE_TYPE] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1614,7 +1614,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_SWITCH_PROMPT] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1626,7 +1626,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_YESNO] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1638,7 +1638,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_LEVEL_UP_BOX] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1650,7 +1650,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_LEVEL_UP_BANNER] = { .fillValue = PIXEL_FILL(0), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 32, .y = 1, .letterSpacing = 0, @@ -1662,7 +1662,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_PLAYER] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1674,7 +1674,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_OPPONENT] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1686,7 +1686,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_MULTI_PLAYER_1] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1698,7 +1698,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_MULTI_PLAYER_2] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1710,7 +1710,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_MULTI_PLAYER_3] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1722,7 +1722,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_MULTI_PLAYER_4] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1734,7 +1734,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_OUTCOME_DRAW] = { .fillValue = PIXEL_FILL(0), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1746,7 +1746,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_OUTCOME_LEFT] = { .fillValue = PIXEL_FILL(0), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1758,7 +1758,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Normal[] = }, [B_WIN_VS_OUTCOME_RIGHT] = { .fillValue = PIXEL_FILL(0x0), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1774,7 +1774,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = { [B_WIN_MSG] = { .fillValue = PIXEL_FILL(0xF), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1786,7 +1786,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_ACTION_PROMPT] = { .fillValue = PIXEL_FILL(0xF), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 1, .y = 1, .letterSpacing = 0, @@ -1798,7 +1798,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_ACTION_MENU] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1810,7 +1810,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_MOVE_NAME_1] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1822,7 +1822,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_MOVE_NAME_2] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1834,7 +1834,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_MOVE_NAME_3] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1846,7 +1846,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_MOVE_NAME_4] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1858,7 +1858,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_PP] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1870,7 +1870,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_DUMMY] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1882,7 +1882,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_PP_REMAINING] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 2, .y = 1, .letterSpacing = 0, @@ -1894,7 +1894,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_MOVE_TYPE] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1906,7 +1906,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_SWITCH_PROMPT] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 7, + .fontId = FONT_NARROW, .x = 0, .y = 1, .letterSpacing = 0, @@ -1918,7 +1918,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_YESNO] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1930,7 +1930,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_LEVEL_UP_BOX] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, @@ -1942,7 +1942,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [B_WIN_LEVEL_UP_BANNER] = { .fillValue = PIXEL_FILL(0), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 32, .y = 1, .letterSpacing = 0, @@ -1954,7 +1954,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_PLAYER_NAME] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1966,7 +1966,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_VS] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1978,7 +1978,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_OPPONENT_NAME] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -1990,7 +1990,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_MIND] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -2002,7 +2002,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_SKILL] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -2014,7 +2014,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_BODY] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -2026,7 +2026,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_JUDGEMENT_TITLE] = { .fillValue = PIXEL_FILL(0xE), - .fontId = 1, + .fontId = FONT_NORMAL, .x = -1, .y = 1, .letterSpacing = 0, @@ -2038,7 +2038,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = }, [ARENA_WIN_JUDGEMENT_TEXT] = { .fillValue = PIXEL_FILL(0x1), - .fontId = 1, + .fontId = FONT_NORMAL, .x = 0, .y = 1, .letterSpacing = 0, diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 179f4dc65493..02e0e5c3a4e6 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -88,8 +88,8 @@ static void CopyBagItemName(u8 *, u16); static void FreeItemIconSpriteByAltId(u8); static void PrintItemDescription(s32); static void PrintSelectorArrowAtPos(u8, u8); -static void PrintOnWindow_Font1(u8, const u8 *, u8, u8, u8, u8, u8, u8); -static void PrintOnWindow_Font7(u8, const u8 *, u8, u8, u8, u8, u8, u8); +static void PyramidBagPrint(u8, const u8 *, u8, u8, u8, u8, u8, u8); +static void PyramidBagPrint_Quantity(u8, const u8 *, u8, u8, u8, u8, u8, u8); static u8 OpenMenuActionWindowById(u8); static void CloseMenuActionWindowById(u8); static void PrintMenuActionText_SingleRow(u8); @@ -159,7 +159,7 @@ static const struct ListMenuTemplate sListMenuTemplate = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, - .fontId = 7, + .fontId = FONT_NARROW, .cursorKind = 0 }; @@ -672,8 +672,8 @@ static void PrintItemQuantity(u8 windowId, u32 itemIndex, u8 y) STR_CONV_MODE_RIGHT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); - xAlign = GetStringRightAlignXOffset(7, gStringVar4, 119); - PrintOnWindow_Font7(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SPEED_FF, COLORID_DARK_GRAY); + xAlign = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); + PyramidBagPrint_Quantity(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SPEED_FF, COLORID_DARK_GRAY); } static void PrintItemDescription(s32 listMenuId) @@ -690,7 +690,7 @@ static void PrintItemDescription(s32 listMenuId) desc = gStringVar4; } FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, desc, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, desc, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); } static void AddScrollArrows(void) @@ -849,9 +849,9 @@ static void PrintSelectorArrow(u8 listMenuTaskId, u8 colorId) static void PrintSelectorArrowAtPos(u8 y, u8 colorId) { if (colorId == COLORID_NONE) // If 'no color', erase arrow - FillWindowPixelRect(WIN_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); + FillWindowPixelRect(WIN_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(FONT_NORMAL, 0), GetMenuCursorDimensionByFont(FONT_NORMAL, 1)); else - PrintOnWindow_Font1(WIN_LIST, gText_SelectorArrow2, 0, y, 0, 0, 0, colorId); + PyramidBagPrint(WIN_LIST, gText_SelectorArrow2, 0, y, 0, 0, 0, colorId); } void CloseBattlePyramidBag(u8 taskId) @@ -962,7 +962,7 @@ static void OpenContextMenu(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected); FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); if (gPyramidBagMenu->menuActionsCount == 1) PrintMenuActionText_SingleRow(OpenMenuActionWindowById(MENU_WIN_1x1)); else if (gPyramidBagMenu->menuActionsCount == 2) @@ -978,13 +978,13 @@ static void OpenContextMenu(u8 taskId) static void PrintMenuActionText_SingleRow(u8 windowId) { - AddItemMenuActionTextPrinters(windowId, 7, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); + AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gPyramidBagMenu->menuActionsCount, 0); } static void PrintMenuActionText_MultiRow(u8 windowId, u8 horizontalCount, u8 verticalCount) { - PrintMenuActionGrid(windowId, 7, 8, 1, 56, horizontalCount, verticalCount, sMenuActions, gPyramidBagMenu->menuActionIds); + PrintMenuActionGrid(windowId, FONT_NARROW, 8, 1, 56, horizontalCount, verticalCount, sMenuActions, gPyramidBagMenu->menuActionIds); InitMenuActionGrid(windowId, 56, horizontalCount, verticalCount, 0); } @@ -1137,7 +1137,7 @@ static void BagAction_Toss(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_TossHowManyVar1s); FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); ShowNumToToss(); gTasks[taskId].func = Task_ChooseHowManyToToss; } @@ -1151,7 +1151,7 @@ static void AskConfirmToss(u8 taskId) ConvertIntToDecimalStringN(gStringVar2, tNumToToss, STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_ConfirmTossItems); FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); CreatePyramidBagYesNo(taskId, &sYesNoTossFuncions); } @@ -1170,8 +1170,8 @@ static void ShowNumToToss(void) ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); DrawTossNumberWindow(WIN_TOSS_NUM); - x = GetStringCenterAlignXOffset(1, gStringVar4, 0x28); - AddTextPrinterParameterized(WIN_TOSS_NUM, 1, gStringVar4, x, 2, 0, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 0x28); + AddTextPrinterParameterized(WIN_TOSS_NUM, FONT_NORMAL, gStringVar4, x, 2, 0, NULL); } static void UpdateNumToToss(s16 num) @@ -1179,8 +1179,8 @@ static void UpdateNumToToss(s16 num) s32 x; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); - x = GetStringCenterAlignXOffset(1, gStringVar4, 0x28); - AddTextPrinterParameterized(WIN_TOSS_NUM, 1, gStringVar4, x, 2, 0, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 0x28); + AddTextPrinterParameterized(WIN_TOSS_NUM, FONT_NORMAL, gStringVar4, x, 2, 0, NULL); } static void Task_ChooseHowManyToToss(u8 taskId) @@ -1219,7 +1219,7 @@ static void TossItem(u8 taskId) ConvertIntToDecimalStringN(gStringVar2, tNumToToss, STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_ThrewAwayVar2Var1s); FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); gTasks[taskId].func = Task_TossItem; } @@ -1316,7 +1316,7 @@ static void Task_BeginItemSwap(u8 taskId) CopyItemName(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][tListPos], gStringVar1); StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where); FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0)); - PrintOnWindow_Font1(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); + PyramidBagPrint(WIN_INFO, gStringVar4, 3, 0, 0, 1, 0, COLORID_DARK_GRAY); PrintSelectorArrow(tListTaskId, COLORID_LIGHT_GRAY); UpdateSwapLinePos(tListPos); gTasks[taskId].func = Task_ItemSwapHandleInput; @@ -1454,14 +1454,14 @@ static void InitPyramidBagWindows(void) ScheduleBgCopyTilemapToVram(1); } -static void PrintOnWindow_Font1(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) +static void PyramidBagPrint(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) { - AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); } -static void PrintOnWindow_Font7(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) +static void PyramidBagPrint_Quantity(u8 windowId, const u8 *src, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorTableId) { - AddTextPrinterParameterized4(windowId, 7, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); + AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, letterSpacing, lineSpacing, sTextColors[colorTableId], speed, src); } static void DrawTossNumberWindow(u8 windowId) @@ -1509,7 +1509,7 @@ static void CreatePyramidBagYesNo(u8 taskId, const struct YesNoFuncTable *yesNoT void DisplayItemMessageInBattlePyramid(u8 taskId, const u8 *str, void (*callback)(u8 taskId)) { FillWindowPixelBuffer(WIN_MSG, PIXEL_FILL(1)); - DisplayMessageAndContinueTask(taskId, WIN_MSG, 0xA, 0xD, 1, GetPlayerTextSpeedDelay(), str, callback); + DisplayMessageAndContinueTask(taskId, WIN_MSG, 0xA, 0xD, FONT_NORMAL, GetPlayerTextSpeedDelay(), str, callback); ScheduleBgCopyTilemapToVram(1); } diff --git a/src/battle_records.c b/src/battle_records.c index 5dff8e6d3482..1004f7bc92ab 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -282,8 +282,8 @@ static void PrintLinkBattleWinsLossesDraws(struct LinkBattleRecord *records) ConvertIntToDecimalStringN(gStringVar3, GetGameStat(GAME_STAT_LINK_BATTLE_DRAWS), STR_CONV_MODE_LEFT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_TotalRecordWLD); - x = GetStringCenterAlignXOffset(1, gStringVar4, 0xD0); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x, 0x11, 0, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 0xD0); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x, 0x11, 0, NULL); } static void PrintLinkBattleRecord(struct LinkBattleRecord *record, u8 y, s32 language) @@ -291,10 +291,10 @@ static void PrintLinkBattleRecord(struct LinkBattleRecord *record, u8 y, s32 lan if (record->wins == 0 && record->losses == 0 && record->draws == 0) { // empty slot - AddTextPrinterParameterized(gRecordsWindowId, 1, sText_DashesNoPlayer, 8, (y * 8) + 1, 0, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, sText_DashesNoScore, 80, (y * 8) + 1, 0, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, sText_DashesNoScore, 128, (y * 8) + 1, 0, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, sText_DashesNoScore, 176, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sText_DashesNoPlayer, 8, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sText_DashesNoScore, 80, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sText_DashesNoScore, 128, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sText_DashesNoScore, 176, (y * 8) + 1, 0, NULL); } else { @@ -302,16 +302,16 @@ static void PrintLinkBattleRecord(struct LinkBattleRecord *record, u8 y, s32 lan StringCopyN(gStringVar1, record->name, 7); ConvertInternationalString(gStringVar1, language); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar1, 8, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar1, 8, (y * 8) + 1, 0, NULL); ConvertIntToDecimalStringN(gStringVar1, record->wins, STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar1, 80, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar1, 80, (y * 8) + 1, 0, NULL); ConvertIntToDecimalStringN(gStringVar1, record->losses, STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar1, 128, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar1, 128, (y * 8) + 1, 0, NULL); ConvertIntToDecimalStringN(gStringVar1, record->draws, STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar1, 176, (y * 8) + 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar1, 176, (y * 8) + 1, 0, NULL); } } @@ -324,12 +324,12 @@ void ShowLinkBattleRecords(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_PlayersBattleResults); - x = GetStringCenterAlignXOffset(1, gStringVar4, 208); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x, 1, 0, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 208); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x, 1, 0, NULL); PrintLinkBattleWinsLossesDraws(gSaveBlock1Ptr->linkBattleRecords.entries); StringExpandPlaceholders(gStringVar4, gText_WinLoseDraw); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, 0, 41, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, 0, 41, 0, NULL); for (i = 0; i < LINK_B_RECORDS_COUNT; i++) { diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 92d4b97079b7..d9447ac74693 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6041,7 +6041,7 @@ static void DrawLevelUpBannerText(void) printerTemplate.currentChar = gStringVar4; printerTemplate.windowId = B_WIN_LEVEL_UP_BANNER; - printerTemplate.fontId = 0; + printerTemplate.fontId = FONT_SMALL; printerTemplate.x = 32; printerTemplate.y = 0; printerTemplate.currentX = 32; diff --git a/src/battle_tower.c b/src/battle_tower.c index b2f81cc1ac60..d9bd18bf7368 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1909,7 +1909,7 @@ static void FillFactoryTentTrainerParty(u16 trainerId, u8 firstMonId) void FrontierSpeechToString(const u16 *words) { ConvertEasyChatWordsToString(gStringVar4, words, 3, 2); - if (GetStringWidth(1, gStringVar4, -1) > 204u) + if (GetStringWidth(FONT_NORMAL, gStringVar4, -1) > 204u) { s32 i = 0; diff --git a/src/berry_blender.c b/src/berry_blender.c index 9701c8c81b2b..65008dae0769 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1608,7 +1608,7 @@ static void PrintPlayerNames(void) text[0] = EOS; StringCopy(text, gLinkPlayers[sBerryBlender->arrowIdToPlayerId[i]].name); - xPos = GetStringCenterAlignXOffset(1, text, 0x38); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, text, 0x38); if (playerId == sBerryBlender->arrowIdToPlayerId[i]) Blender_AddTextPrinter(i, text, xPos, 1, 0, 2); // Highlight player's name in red @@ -3494,7 +3494,7 @@ static bool8 PrintBlendingResults(void) u16 minutes, seconds; u8 *txtPtr; - xPos = GetStringCenterAlignXOffset(1, sText_BlendingResults, 0xA8); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_BlendingResults, 0xA8); Blender_AddTextPrinter(5, sText_BlendingResults, xPos, 1, TEXT_SPEED_FF, 0); if (sBerryBlender->numPlayers == BLENDER_MAX_PLAYERS) @@ -3526,7 +3526,7 @@ static bool8 PrintBlendingResults(void) StringAppend(sBerryBlender->stringVar, text); StringAppend(sBerryBlender->stringVar, sText_RPM); - xPos = GetStringRightAlignXOffset(1, sBerryBlender->stringVar, 0xA8); + xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8); Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x51, TEXT_SPEED_FF, 3); Blender_AddTextPrinter(5, sText_Time, 0, 0x61, TEXT_SPEED_FF, 3); @@ -3539,7 +3539,7 @@ static bool8 PrintBlendingResults(void) ConvertIntToDecimalStringN(txtPtr, seconds, STR_CONV_MODE_LEADING_ZEROS, 2); StringAppend(sBerryBlender->stringVar, sText_Sec); - xPos = GetStringRightAlignXOffset(1, sBerryBlender->stringVar, 0xA8); + xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8); Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x61, TEXT_SPEED_FF, 3); sBerryBlender->framesToWait = 0; @@ -3693,7 +3693,7 @@ static bool8 PrintBlendingRanking(void) break; case 3: DrawStdFrameWithCustomTileAndPalette(5, 0, 1, 0xD); - xPos = GetStringCenterAlignXOffset(1, sText_Ranking, 168); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_Ranking, 168); Blender_AddTextPrinter(5, sText_Ranking, xPos, 1, TEXT_SPEED_FF, 0); sBerryBlender->scoreIconIds[SCORE_BEST] = CreateSprite(&sSpriteTemplate_ScoreSymbols, 128, 52, 0); @@ -3767,9 +3767,9 @@ void ShowBerryBlenderRecordWindow(void) DrawStdWindowFrame(gRecordsWindowId, 0); FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); - xPos = GetStringCenterAlignXOffset(1, gText_BlenderMaxSpeedRecord, 144); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_BlenderMaxSpeedRecord, xPos, 1, 0, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_234Players, 4, 41, 0, NULL); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gText_BlenderMaxSpeedRecord, 144); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_BlenderMaxSpeedRecord, xPos, 1, 0, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_234Players, 4, 41, 0, NULL); for (i = 0, yPos = 41; i < NUM_SCORE_TYPES; i++) { @@ -3783,8 +3783,8 @@ void ShowBerryBlenderRecordWindow(void) txtPtr = ConvertIntToDecimalStringN(txtPtr, record % 100, STR_CONV_MODE_LEADING_ZEROS, 2); txtPtr = StringAppend(txtPtr, sText_RPM); - xPos = GetStringRightAlignXOffset(1, text, 140); - AddTextPrinterParameterized(gRecordsWindowId, 1, text, xPos, yPos + (i * 16), 0, NULL); + xPos = GetStringRightAlignXOffset(FONT_NORMAL, text, 140); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, xPos, yPos + (i * 16), 0, NULL); } PutWindowTilemap(gRecordsWindowId); @@ -3879,7 +3879,7 @@ static void Blender_AddTextPrinter(u8 windowId, const u8 *string, u8 x, u8 y, s3 FillWindowPixelBuffer(windowId, PIXEL_FILL(txtColor[0])); } - AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, 1, txtColor, speed, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, 1, txtColor, speed, string); } static bool32 Blender_PrintText(s16 *textState, const u8 *string, s32 textSpeed) diff --git a/src/berry_crush.c b/src/berry_crush.c index dcd7363bd3bd..8ac6bb3123c6 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1591,8 +1591,8 @@ static void FramesToMinSec(struct BerryCrushGame_Gfx *gfx, u16 frames) static void PrintTextCentered(u8 windowId, u8 left, u8 colorId, const u8 *string) { - left = (left * 4) - (GetStringWidth(2, string, -1) / 2u); - AddTextPrinterParameterized3(windowId, 2, left, 0, sTextColorTable[colorId], 0, string); + left = (left * 4) - (GetStringWidth(FONT_SHORT, string, -1) / 2u); + AddTextPrinterParameterized3(windowId, FONT_SHORT, left, 0, sTextColorTable[colorId], 0, string); } static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 baseY) @@ -1652,8 +1652,8 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 StringExpandPlaceholders(gStringVar4, sResultsTexts[page]); break; } - x = GetStringRightAlignXOffset(2, gStringVar4, sp14 - 4); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_SHORT, gStringVar4, sp14 - 4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); if (playerId == game->localId) StringCopy(gStringVar3, gText_1DotBlueF700); else @@ -1661,7 +1661,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 gStringVar3[0] = ranking + CHAR_1; DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, game->players[playerId].name); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 4, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, 4, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); } } @@ -1676,34 +1676,34 @@ static void PrintCrushingResults(struct BerryCrushGame *game) FramesToMinSec(&game->gfx, results->time); // Print time text - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimeColon); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimeColon); // Print seconds text - x = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceSec); + x = 176 - (u8)GetStringWidth(FONT_SHORT, gText_SpaceSec, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceSec); // Print seconds value ConvertIntToDecimalStringN(gStringVar1, game->gfx.secondsInt, STR_CONV_MODE_LEADING_ZEROS, 2); ConvertIntToDecimalStringN(gStringVar2, game->gfx.secondsFrac, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY2); - x -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + x -= GetStringWidth(FONT_SHORT, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print minutes text - x -= GetStringWidth(2, gText_SpaceMin, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceMin); + x -= GetStringWidth(FONT_SHORT, gText_SpaceMin, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gText_SpaceMin); // Print minutes value ConvertIntToDecimalStringN(gStringVar1, game->gfx.minutes, STR_CONV_MODE_LEADING_ZEROS, 1); StringExpandPlaceholders(gStringVar4, gText_StrVar1); - x -= GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + x -= GetStringWidth(FONT_SHORT, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print pressing speed text y += 14; - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed); - x = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed); + x = 176 - (u8)GetStringWidth(FONT_SHORT, gText_TimesPerSec, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); // Print pressing speed value for (i = 0; i < 8; i++) @@ -1712,21 +1712,21 @@ static void PrintCrushingResults(struct BerryCrushGame *game) ConvertIntToDecimalStringN(gStringVar1, game->pressingSpeed >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); ConvertIntToDecimalStringN(gStringVar2, pressingSpeedFrac / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY3); - x -= GetStringWidth(2, gStringVar4, -1); + x -= GetStringWidth(FONT_SHORT, gStringVar4, -1); if (game->newRecord) - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_RED], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_RED], 0, gStringVar4); else - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); // Print silkiness text y += 14; - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_Silkiness); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, 0, y, sTextColorTable[COLORID_GRAY], 0, gText_Silkiness); // Print silkiness value ConvertIntToDecimalStringN(gStringVar1, results->silkiness, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_Var1Percent); - x = 176 - (u8)GetStringWidth(2, gStringVar4, -1); - AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + x = 176 - (u8)GetStringWidth(FONT_SHORT, gStringVar4, -1); + AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_SHORT, x, y, sTextColorTable[COLORID_GRAY], 0, gStringVar4); } static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGame_Gfx *gfx) @@ -1814,10 +1814,10 @@ static void Task_ShowRankings(u8 taskId) break; case 1: // Print header text - xPos = 96 - GetStringWidth(1, gText_BerryCrush2, -1) / 2u; - AddTextPrinterParameterized3(tWindowId, 1, xPos, 1, sTextColorTable[COLORID_BLUE], 0, gText_BerryCrush2); - xPos = 96 - GetStringWidth(1, gText_PressingSpeedRankings, -1) / 2u; - AddTextPrinterParameterized3(tWindowId, 1, xPos, 17, sTextColorTable[COLORID_BLUE], 0, gText_PressingSpeedRankings); + xPos = 96 - GetStringWidth(FONT_NORMAL, gText_BerryCrush2, -1) / 2u; + AddTextPrinterParameterized3(tWindowId, FONT_NORMAL, xPos, 1, sTextColorTable[COLORID_BLUE], 0, gText_BerryCrush2); + xPos = 96 - GetStringWidth(FONT_NORMAL, gText_PressingSpeedRankings, -1) / 2u; + AddTextPrinterParameterized3(tWindowId, FONT_NORMAL, xPos, 17, sTextColorTable[COLORID_BLUE], 0, gText_PressingSpeedRankings); // Print pressing speed record for each group size, ranked yPos = 41; @@ -1825,9 +1825,9 @@ static void Task_ShowRankings(u8 taskId) { ConvertIntToDecimalStringN(gStringVar1, i + 2, STR_CONV_MODE_LEFT_ALIGN, 1); StringExpandPlaceholders(gStringVar4, gText_Var1Players); - AddTextPrinterParameterized3(tWindowId, 1, 0, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); - xPos = 192 - (u8)GetStringWidth(1, gText_TimesPerSec, -1); - AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); + AddTextPrinterParameterized3(tWindowId, FONT_NORMAL, 0, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + xPos = 192 - (u8)GetStringWidth(FONT_NORMAL, gText_TimesPerSec, -1); + AddTextPrinterParameterized3(tWindowId, FONT_NORMAL, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec); for (j = 0; j < 8; j++) { if (((tPressingSpeeds(i) & 0xFF) >> (7 - j)) & 1) @@ -1836,8 +1836,8 @@ static void Task_ShowRankings(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, (u16)tPressingSpeeds(i) >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3); ConvertIntToDecimalStringN(gStringVar2, score / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(gStringVar4, gText_XDotY3); - xPos -= GetStringWidth(1, gStringVar4, -1); - AddTextPrinterParameterized3(tWindowId, 1, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); + xPos -= GetStringWidth(FONT_NORMAL, gStringVar4, -1); + AddTextPrinterParameterized3(tWindowId, FONT_NORMAL, xPos, yPos, sTextColorTable[COLORID_GRAY], 0, gStringVar4); yPos += 16; score = 0; } @@ -1913,8 +1913,8 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game) // Print the player's name AddTextPrinterParameterized4( game->gfx.nameWindowIds[i], - 2, - 36 - GetStringWidth(2, game->players[i].name, 0) / 2u, + FONT_SHORT, + 36 - GetStringWidth(FONT_SHORT, game->players[i].name, 0) / 2u, 1, 0, 0, @@ -1928,8 +1928,8 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game) // Print a partner's name AddTextPrinterParameterized4( game->gfx.nameWindowIds[i], - 2, - 36 - GetStringWidth(2, game->players[i].name, 0) / 2u, + FONT_SHORT, + 36 - GetStringWidth(FONT_SHORT, game->players[i].name, 0) / 2u, 1, 0, 0, @@ -2258,11 +2258,11 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) if (args[1] & F_MSG_EXPAND) { StringExpandPlaceholders(gStringVar4, sMessages[args[0]]); - AddTextPrinterParameterized2(0, 1, gStringVar4, game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, game->textSpeed, 0, 2, 1, 3); } else { - AddTextPrinterParameterized2(0, 1, sMessages[args[0]], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[args[0]], game->textSpeed, 0, 2, 1, 3); } CopyWindowToVram(0, 3); break; @@ -3242,7 +3242,7 @@ static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) if (!IsLinkTaskFinished()) return 0; DrawDialogueFrame(0, 0); - AddTextPrinterParameterized2(0, 1, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); CopyWindowToVram(0, 3); CreateTask(Task_LinkSave, 0); break; @@ -3391,9 +3391,9 @@ static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args) case 0: DrawDialogueFrame(0, 0); if (game->playAgainState == PLAY_AGAIN_NO_BERRIES) - AddTextPrinterParameterized2(0, 1, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); else - AddTextPrinterParameterized2(0, 1, sMessages[MSG_DROPPED], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_DROPPED], game->textSpeed, 0, 2, 1, 3); CopyWindowToVram(0, 3); break; case 1: diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index dc025c0a4925..9b0da5bd2ed5 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -303,21 +303,21 @@ static void BerryFix_GpuSet(void) FillWindowPixelBuffer(3, PIXEL_FILL(0)); FillWindowPixelBuffer(0, PIXEL_FILL(10)); - width = GetStringWidth(0, sText_Emerald, 0); + width = GetStringWidth(FONT_SMALL, sText_Emerald, 0); left = (120 - width) / 2; - AddTextPrinterParameterized3(2, 0, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_Emerald); + AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_Emerald); - width = GetStringWidth(0, sText_RubySapphire, 0); + width = GetStringWidth(FONT_SMALL, sText_RubySapphire, 0); left = (120 - width) / 2 + 120; - AddTextPrinterParameterized3(2, 0, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); + AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); - width = GetStringWidth(0, sText_RubySapphire, 0); + width = GetStringWidth(FONT_SMALL, sText_RubySapphire, 0); left = (112 - width) / 2; - AddTextPrinterParameterized3(3, 0, left, 0, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); + AddTextPrinterParameterized3(3, FONT_SMALL, left, 0, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); - width = GetStringWidth(1, sText_BerryProgramUpdate, 0); + width = GetStringWidth(FONT_NORMAL, sText_BerryProgramUpdate, 0); left = (208 - width) / 2; - AddTextPrinterParameterized3(0, 1, left, 2, sBerryProgramTextColors, TEXT_SPEED_FF, sText_BerryProgramUpdate); + AddTextPrinterParameterized3(0, FONT_NORMAL, left, 2, sBerryProgramTextColors, TEXT_SPEED_FF, sText_BerryProgramUpdate); CopyWindowToVram(2, 2); CopyWindowToVram(3, 2); @@ -346,7 +346,7 @@ static void BerryFix_SetScene(int scene) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); FillWindowPixelBuffer(1, PIXEL_FILL(10)); - AddTextPrinterParameterized3(1, 1, 0, 0, sBerryProgramTextColors, -1, sBerryProgramTexts[scene]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0, sBerryProgramTextColors, -1, sBerryProgramTexts[scene]); PutWindowTilemap(1); CopyWindowToVram(1, 2); switch (scene) diff --git a/src/berry_powder.c b/src/berry_powder.c index f77265412fb7..d933dbff130e 100755 --- a/src/berry_powder.c +++ b/src/berry_powder.c @@ -205,13 +205,13 @@ u32 GetBerryPowder(void) static void PrintBerryPowderAmount(u8 windowId, int amount, u8 x, u8 y, u8 speed) { ConvertIntToDecimalStringN(gStringVar1, amount, STR_CONV_MODE_RIGHT_ALIGN, 5); - AddTextPrinterParameterized(windowId, 1, gStringVar1, x, y, speed, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, y, speed, NULL); } static void DrawPlayerPowderAmount(u8 windowId, u16 baseTileOffset, u8 paletteNum, u32 amount) { DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, baseTileOffset, paletteNum); - AddTextPrinterParameterized(windowId, 1, gText_Powder, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_Powder, 0, 1, TEXT_SPEED_FF, NULL); PrintBerryPowderAmount(windowId, amount, 26, 17, 0); } diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index babbbb3eb2ce..fac8c12c2ac7 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -376,14 +376,14 @@ static void HandleInitWindows(void) static void PrintTextInBerryTagScreen(u8 windowId, const u8 *text, u8 x, u8 y, s32 speed, u8 colorStructId) { - AddTextPrinterParameterized4(windowId, 1, x, y, 0, 0, sTextColors[colorStructId], speed, text); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, 0, 0, sTextColors[colorStructId], speed, text); } static void AddBerryTagTextToBg0(void) { memcpy(GetBgTilemapBuffer(0), sBerryTag->tilemapBuffers[2], sizeof(sBerryTag->tilemapBuffers[2])); FillWindowPixelBuffer(WIN_BERRY_TAG, PIXEL_FILL(15)); - PrintTextInBerryTagScreen(WIN_BERRY_TAG, gText_BerryTag, GetStringCenterAlignXOffset(1, gText_BerryTag, 0x40), 1, 0, 1); + PrintTextInBerryTagScreen(WIN_BERRY_TAG, gText_BerryTag, GetStringCenterAlignXOffset(FONT_NORMAL, gText_BerryTag, 0x40), 1, 0, 1); PutWindowTilemap(WIN_BERRY_TAG); ScheduleBgCopyTilemapToVram(0); } @@ -409,7 +409,7 @@ static void PrintBerryNumberAndName(void) static void PrintBerrySize(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gText_SizeSlash, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_SizeSlash, 0, 1, TEXT_SPEED_FF, NULL); if (berry->size != 0) { u32 inches, fraction; @@ -423,34 +423,34 @@ static void PrintBerrySize(void) ConvertIntToDecimalStringN(gStringVar1, inches, STR_CONV_MODE_LEFT_ALIGN, 2); ConvertIntToDecimalStringN(gStringVar2, fraction, STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_Var1DotVar2); - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gStringVar4, 0x28, 1, 0, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gStringVar4, 0x28, 1, 0, NULL); } else { - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gText_ThreeMarks, 0x28, 1, 0, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_ThreeMarks, 0x28, 1, 0, NULL); } } static void PrintBerryFirmness(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gText_FirmSlash, 0, 0x11, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_FirmSlash, 0, 0x11, TEXT_SPEED_FF, NULL); if (berry->firmness != 0) - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, sBerryFirmnessStrings[berry->firmness - 1], 0x28, 0x11, 0, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, sBerryFirmnessStrings[berry->firmness - 1], 0x28, 0x11, 0, NULL); else - AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gText_ThreeMarks, 0x28, 0x11, 0, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_ThreeMarks, 0x28, 0x11, 0, NULL); } static void PrintBerryDescription1(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_DESC, 1, berry->description1, 0, 1, 0, NULL); + AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description1, 0, 1, 0, NULL); } static void PrintBerryDescription2(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_DESC, 1, berry->description2, 0, 0x11, 0, NULL); + AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description2, 0, 0x11, 0, NULL); } static void CreateBerrySprite(void) diff --git a/src/unk_text_util_2.c b/src/braille.c similarity index 94% rename from src/unk_text_util_2.c rename to src/braille.c index a0eea575e7e8..d43758f9e97a 100644 --- a/src/unk_text_util_2.c +++ b/src/braille.c @@ -6,11 +6,11 @@ ALIGNED(4) static const u8 sScrollDistances[] = {1, 2, 4}; -static const u16 sFont6BrailleGlyphs[] = INCBIN_U16("graphics/fonts/font6.fwjpnfont"); +static const u16 sFont_Braille[] = INCBIN_U16("graphics/fonts/braille_glyphs.fwjpnfont"); -static void DecompressGlyphFont6(u16); +static void DecompressGlyph_Braille(u16); -u16 Font6Func(struct TextPrinter *textPrinter) +u16 FontFunc_Braille(struct TextPrinter *textPrinter) { u16 char_; struct TextPrinterSubStruct *subStruct; @@ -81,7 +81,7 @@ u16 Font6Func(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentChar++; return 2; case EXT_CTRL_CODE_FONT: - subStruct->glyphId = *textPrinter->printerTemplate.currentChar; + subStruct->fontId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return 2; case EXT_CTRL_CODE_RESET_SIZE: @@ -133,7 +133,7 @@ u16 Font6Func(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentChar++; return 0; } - DecompressGlyphFont6(char_); + DecompressGlyph_Braille(char_); CopyGlyphToWindow(textPrinter); textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; return 0; @@ -201,20 +201,18 @@ u16 Font6Func(struct TextPrinter *textPrinter) return 1; } -static void DecompressGlyphFont6(u16 glyph) +static void DecompressGlyph_Braille(u16 glyph) { - const u16 *glyphs; - - glyphs = sFont6BrailleGlyphs + 0x100 * (glyph / 8) + 0x10 * (glyph % 8); + const u16 *glyphs = sFont_Braille + 0x100 * (glyph / 8) + 0x10 * (glyph % 8); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x8, gCurGlyph.gfxBufferTop + 8); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); DecompressGlyphTile(glyphs + 0x88, gCurGlyph.gfxBufferBottom + 8); - gCurGlyph.width = 0x10; - gCurGlyph.height = 0x10; + gCurGlyph.width = 16; + gCurGlyph.height = 16; } -u32 GetGlyphWidthFont6(u16 glyphId, bool32 isJapanese) +u32 GetGlyphWidth_Braille(u16 glyphId, bool32 isJapanese) { - return 0x10; + return 16; } diff --git a/src/cable_club.c b/src/cable_club.c index 3083ed9c0a13..1284aee77f58 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -99,8 +99,8 @@ static void PrintNumPlayersInLink(u16 windowId, u32 numPlayers) ConvertIntToDecimalStringN(gStringVar1, numPlayers, STR_CONV_MODE_LEFT_ALIGN, 1); SetStandardWindowBorderStyle(windowId, 0); StringExpandPlaceholders(gStringVar4, gText_NumPlayerLink); - xPos = GetStringCenterAlignXOffset(1, gStringVar4, 88); - AddTextPrinterParameterized(windowId, 1, gStringVar4, xPos, 1, 0xFF, NULL); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 88); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, xPos, 1, 0xFF, NULL); CopyWindowToVram(windowId, 3); } diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index 0d69eb0fa913..3dd58389cb73 100644 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -80,7 +80,7 @@ void CB2_InitClearSaveDataScreen(void) static void Task_DoClearSaveDataScreenYesNo(u8 taskId) { DrawStdFrameWithCustomTileAndPalette(0, 0, 2, 14); - AddTextPrinterParameterized(0, 1, gText_ClearAllSaveData, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_ClearAllSaveData, 0, 1, 0, 0); CreateYesNoMenu(sClearSaveYesNo, 2, 14, 1); gTasks[taskId].func = Task_ClearSaveDataScreenYesNoChoice; } @@ -91,7 +91,7 @@ static void Task_ClearSaveDataScreenYesNoChoice(u8 taskId) { case 0: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized(0, 1, gText_ClearingData, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_ClearingData, 0, 1, 0, 0); gTasks[taskId].func = Task_ClearSaveData; break; case 1: diff --git a/src/coins.c b/src/coins.c index 52c7dd3ece08..17fd147b7484 100644 --- a/src/coins.c +++ b/src/coins.c @@ -17,8 +17,8 @@ void PrintCoinsString(u32 coinAmount) ConvertIntToDecimalStringN(gStringVar1, coinAmount, STR_CONV_MODE_RIGHT_ALIGN, MAX_COIN_DIGITS); StringExpandPlaceholders(gStringVar4, gText_Coins); - xAlign = GetStringRightAlignXOffset(1, gStringVar4, 0x40); - AddTextPrinterParameterized(sCoinsWindowId, 1, gStringVar4, xAlign, 1, 0, NULL); + xAlign = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x40); + AddTextPrinterParameterized(sCoinsWindowId, FONT_NORMAL, gStringVar4, xAlign, 1, 0, NULL); } void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y) diff --git a/src/contest.c b/src/contest.c index aebe437e69e5..ed476de5a39f 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1543,7 +1543,7 @@ static void Task_ShowMoveSelectScreen(u8 taskId) moveNameBuffer = StringCopy(moveNameBuffer, gMoveNames[move]); FillWindowPixelBuffer(i + MOVE_WINDOWS_START, PIXEL_FILL(0)); - Contest_PrintTextToBg0WindowAt(i + MOVE_WINDOWS_START, moveName, 5, 1, 7); + Contest_PrintTextToBg0WindowAt(i + MOVE_WINDOWS_START, moveName, 5, 1, FONT_NARROW); } DrawMoveSelectArrow(eContest.playerMoveChoice); @@ -3029,10 +3029,10 @@ static void PrintContestantTrainerNameWithColor(u8 contestant, u8 color) StringCopy(buffer, gText_Slash); StringAppend(buffer, gContestMons[contestant].trainerName); Contest_CopyStringWithColor(buffer, color); - offset = GetStringRightAlignXOffset(7, gDisplayedStringBattle, 0x60); + offset = GetStringRightAlignXOffset(FONT_NARROW, gDisplayedStringBattle, 0x60); if (offset > 55) offset = 55; - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[contestant], gDisplayedStringBattle, offset, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[contestant], gDisplayedStringBattle, offset, 1, FONT_NARROW); } static void PrintContestantMonName(u8 contestant) @@ -3043,7 +3043,7 @@ static void PrintContestantMonName(u8 contestant) static void PrintContestantMonNameWithColor(u8 contestant, u8 color) { Contest_CopyStringWithColor(gContestMons[contestant].nickname, color); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[contestant], gDisplayedStringBattle, 5, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[contestant], gDisplayedStringBattle, 5, 1, FONT_NARROW); } static u16 CalculateContestantRound1Points(u8 who, u8 contestCategory) @@ -4273,7 +4273,7 @@ static void ContestDebugDoPrint(void) txtPtr = StringCopy(txtPtr, gText_OneDash); } ConvertIntToDecimalStringN(txtPtr, value, STR_CONV_MODE_LEFT_ALIGN, 4); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text, 55, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text, 55, 1, FONT_NARROW); } for (i = 0; i < CONTESTANT_COUNT; i++) { @@ -4285,7 +4285,7 @@ static void ContestDebugDoPrint(void) txtPtr = StringCopy(txtPtr, gText_OneDash); } ConvertIntToDecimalStringN(txtPtr, value, STR_CONV_MODE_LEFT_ALIGN, 4); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text, 5, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text, 5, 1, FONT_NARROW); } SwapMoveDescAndContestTilemaps(); break; @@ -5410,7 +5410,7 @@ static void Contest_PrintTextToBg0WindowStd(u32 windowId, const u8 *b) printerTemplate.currentChar = b; printerTemplate.windowId = windowId; - printerTemplate.fontId = 1; + printerTemplate.fontId = FONT_NORMAL; printerTemplate.x = 0; printerTemplate.y = 1; printerTemplate.currentX = 0; @@ -5457,7 +5457,7 @@ static void Contest_StartTextPrinter(const u8 *currChar, bool32 b) printerTemplate.currentChar = currChar; printerTemplate.windowId = 4; - printerTemplate.fontId = 1; + printerTemplate.fontId = FONT_NORMAL; printerTemplate.x = 0; printerTemplate.y = 1; printerTemplate.currentX = 0; @@ -5968,7 +5968,7 @@ static void ContestDebugPrintBitStrings(void) for (i = 0; i < CONTESTANT_COUNT; i++) { txtPtr = StringCopy(text1, gText_CDot); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1, 5, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1, 5, 1, FONT_NARROW); bits = gContestResources->tv[i].winnerFlags; for (j = 7; j > -1; j--) // Weird loop. { @@ -5981,7 +5981,7 @@ static void ContestDebugPrintBitStrings(void) text2[j] = EOS; Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text2, 5, 1, 7); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1 + j, 55, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1 + j, 55, 1, FONT_NARROW); } } else // CONTEST_DEBUG_MODE_PRINT_LOSER_FLAGS @@ -6001,8 +6001,8 @@ static void ContestDebugPrintBitStrings(void) text2[j] = text1[j]; text2[j] = EOS; - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text2, 5, 1, 7); - Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1 + j, 55, 1, 7); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text2, 5, 1, FONT_NARROW); + Contest_PrintTextToBg0WindowAt(gContestantTurnOrder[i], text1 + j, 55, 1, FONT_NARROW); } } SwapMoveDescAndContestTilemaps(); diff --git a/src/contest_painting.c b/src/contest_painting.c index c591fc9efe8d..db6bf445578f 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -306,8 +306,8 @@ static void PrintContestPaintingCaption(u8 contestType, bool8 isForArtist) StringExpandPlaceholders(gStringVar4, sMuseumCaptions[category]); } - x = GetStringCenterAlignXOffset(1, gStringVar4, 208); - AddTextPrinterParameterized(sWindowId, 1, gStringVar4, x, 1, 0, 0); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 208); + AddTextPrinterParameterized(sWindowId, FONT_NORMAL, gStringVar4, x, 1, 0, 0); CopyBgTilemapBufferToVram(1); } diff --git a/src/contest_util.c b/src/contest_util.c index d3e1a600e807..e1c95d4a2f11 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1176,12 +1176,12 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) windowId = AddWindow(&windowTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - origWidth = GetStringWidth(1, text, 0); + origWidth = GetStringWidth(FONT_NORMAL, text, 0); strWidth = (origWidth + 9) / 8; if (strWidth > 30) strWidth = 30; - AddTextPrinterParameterized3(windowId, 1, (strWidth * 8 - origWidth) / 2, 1, sContestLinkTextColors, -1, text); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, (strWidth * 8 - origWidth) / 2, 1, sContestLinkTextColors, -1, text); { s32 i; struct Sprite *sprite; @@ -1931,7 +1931,7 @@ static void AddContestTextPrinter(int windowId, u8 *str, int x) struct TextPrinterTemplate textPrinter; textPrinter.currentChar = str; textPrinter.windowId = windowId; - textPrinter.fontId = 7; + textPrinter.fontId = FONT_NARROW; textPrinter.x = x; textPrinter.y = 2; textPrinter.currentX = x; diff --git a/src/credits.c b/src/credits.c index 519cfe39e369..de7597e32196 100644 --- a/src/credits.c +++ b/src/credits.c @@ -400,8 +400,8 @@ static void PrintCreditsText(const u8 *string, u8 y, bool8 isTitle) color[2] = TEXT_COLOR_DARK_GRAY; } - x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, DISPLAY_WIDTH, 1); - AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string); + x = GetStringCenterAlignXOffsetWithLetterSpacing(FONT_NORMAL, string, DISPLAY_WIDTH, 1); + AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 1, 0, color, -1, string); } #define tMainTaskId data[1] diff --git a/src/daycare.c b/src/daycare.c index 8105c2e9ced8..eb17147b5d40 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -77,7 +77,7 @@ static const struct ListMenuTemplate sDaycareListMenuLevelTemplate = .lettersSpacing = 1, .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -1186,7 +1186,7 @@ static void DaycareAddTextPrinter(u8 windowId, const u8 *text, u32 x, u32 y) printer.currentChar = text; printer.windowId = windowId; - printer.fontId = 1; + printer.fontId = FONT_NORMAL; printer.x = x; printer.y = y; printer.currentX = x; @@ -1222,7 +1222,7 @@ static void DaycarePrintMonLvl(struct DayCare *daycare, u8 windowId, u32 daycare level = GetLevelAfterDaycareSteps(&daycare->mons[daycareSlotId].mon, daycare->mons[daycareSlotId].steps); ConvertIntToDecimalStringN(intText, level, STR_CONV_MODE_LEFT_ALIGN, 3); StringAppend(lvlText, intText); - x = GetStringRightAlignXOffset(1, lvlText, 112); + x = GetStringRightAlignXOffset(FONT_NORMAL, lvlText, 112); DaycareAddTextPrinter(windowId, lvlText, x, y); } diff --git a/src/decoration.c b/src/decoration.c index 838b5cb66a36..52d1054c9b5d 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -315,7 +315,7 @@ static const struct ListMenuTemplate sDecorationItemsListMenuTemplate = .lettersSpacing = FALSE, .itemVerticalPadding = 0, .scrollMultiple = FALSE, - .fontId = 7 + .fontId = FONT_NARROW }; #include "data/decoration/icon.h" @@ -615,7 +615,7 @@ static void HandleDecorationActionsMenuInput(u8 taskId) static void PrintCurMainMenuDescription(void) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sSecretBasePCMenuItemDescriptions[sDecorationActionsCursorPos], 0, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sSecretBasePCMenuItemDescriptions[sDecorationActionsCursorPos], 0, 0, 2, 1, 3); } static void DecorationMenuAction_Decorate(u8 taskId) @@ -728,7 +728,7 @@ static void PrintDecorationCategoryMenuItems(u8 taskId) PrintDecorationCategoryMenuItem(windowId, i, 8, i * 16, FALSE, TEXT_SPEED_FF); } - AddTextPrinterParameterized(windowId, 1, gTasks[taskId].tDecorationMenuCommand == DECOR_MENU_TRADE ? gText_Exit : gText_Cancel, 8, i * 16 + 1, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gTasks[taskId].tDecorationMenuCommand == DECOR_MENU_TRADE ? gText_Exit : gText_Cancel, 8, i * 16 + 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); } @@ -742,12 +742,12 @@ static void PrintDecorationCategoryMenuItem(u8 winid, u8 category, u8 x, u8 y, b ColorMenuItemString(gStringVar4, disabled); str = StringLength(gStringVar4) + gStringVar4; StringCopy(str, sDecorationCategoryNames[category]); - AddTextPrinterParameterized(winid, 1, gStringVar4, x, y, speed, NULL); + AddTextPrinterParameterized(winid, FONT_NORMAL, gStringVar4, x, y, speed, NULL); str = ConvertIntToDecimalStringN(str, GetNumOwnedDecorationsInCategory(category), STR_CONV_MODE_RIGHT_ALIGN, 2); *(str++) = CHAR_SLASH; ConvertIntToDecimalStringN(str, gDecorationInventories[category].size, STR_CONV_MODE_RIGHT_ALIGN, 2); - x = GetStringRightAlignXOffset(1, gStringVar4, width); - AddTextPrinterParameterized(winid, 1, gStringVar4, x, y, speed, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, width); + AddTextPrinterParameterized(winid, FONT_NORMAL, gStringVar4, x, y, speed, NULL); } static void ColorMenuItemString(u8 *str, bool8 disabled) @@ -1024,7 +1024,7 @@ static void PrintDecorationItemDescription(s32 itemIndex) else str = gDecorations[gCurDecorationItems[itemIndex]].description; - AddTextPrinterParameterized(windowId, 1, str, 0, 1, 0, 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, str, 0, 1, 0, 0); } static void RemoveDecorationItemsOtherWindows(void) diff --git a/src/diploma.c b/src/diploma.c index dca0912e3654..8c31c9962e6a 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -205,5 +205,5 @@ static void PrintDiplomaText(u8 *text, u8 var1, u8 var2) { u8 color[3] = {0, 2, 3}; - AddTextPrinterParameterized4(0, 1, var1, var2, 0, 0, color, -1, text); + AddTextPrinterParameterized4(0, FONT_NORMAL, var1, var2, 0, 0, color, -1, text); } diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index d7361ce9672d..838e8ed9450a 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -2954,10 +2954,10 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId) { case 0: window = sWindowTemplates_Records; - width = GetStringWidth(1, gText_BerryPickingRecords, 0); + width = GetStringWidth(FONT_NORMAL, gText_BerryPickingRecords, 0); for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) { - widthCurr = GetStringWidth(1, sRecordsTexts[i], 0) + 50; + widthCurr = GetStringWidth(FONT_NORMAL, sRecordsTexts[i], 0) + 50; if (widthCurr > width) width = widthCurr; } @@ -3008,14 +3008,14 @@ static void PrintRecordsText(u8 windowId, s32 width) LoadUserWindowBorderGfx_(windowId, 0x21D, 0xD0); DrawTextBorderOuter(windowId, 0x21D, 0xD); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(windowId, 1, gText_BerryPickingRecords, GetStringCenterAlignXOffset(1, gText_BerryPickingRecords, width * 8), 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_BerryPickingRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_BerryPickingRecords, width * 8), 1, TEXT_SPEED_FF, NULL); for (i = 0; i < NUM_RECORD_TYPES; i++) { ConvertIntToDecimalStringN(gStringVar1, recordNums[i], STR_CONV_MODE_LEFT_ALIGN, sRecordNumMaxDigits[i]); - numWidth = GetStringWidth(1, gStringVar1, -1); - AddTextPrinterParameterized(windowId, 1, sRecordsTexts[i], 0, sRecordTextYCoords[i][0], TEXT_SPEED_FF, NULL); + numWidth = GetStringWidth(FONT_NORMAL, gStringVar1, -1); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, sRecordTextYCoords[i][0], TEXT_SPEED_FF, NULL); x = (width * 8) - numWidth; - AddTextPrinterParameterized(windowId, 1, gStringVar1, x, sRecordNumYCoords[i][0], TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, sRecordNumYCoords[i][0], TEXT_SPEED_FF, NULL); } PutWindowTilemap(windowId); } @@ -4640,7 +4640,7 @@ static void ShowNames(void) { colorsId = COLORID_GRAY; playerId = GetPlayerIdByPos(i); - left = (56 - GetStringWidth(1, GetPlayerName(playerId), -1)) / 2u; + left = (56 - GetStringWidth(FONT_NORMAL, GetPlayerName(playerId), -1)) / 2u; window.tilemapLeft = coords->left; window.tilemapTop = coords->top; sGfx->windowIds[i] = AddWindow(&window); @@ -4649,7 +4649,7 @@ static void ShowNames(void) if (playerId == GetMultiplayerId()) colorsId = COLORID_BLUE; name = GetPlayerName(playerId); - AddTextPrinterParameterized3(sGfx->windowIds[i], 1, left, 1, sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[i], FONT_NORMAL, left, 1, sTextColorTable[colorsId], -1, name); CopyWindowToVram(sGfx->windowIds[i], 2); window.baseBlock += 0xE; DrawMessageWindow(&window); @@ -4726,22 +4726,22 @@ static void PrintRankedScores(u8 numPlayers_) } // Print text - x = 216 - GetStringWidth(1, gText_SpacePoints, 0); + x = 216 - GetStringWidth(FONT_NORMAL, gText_SpacePoints, 0); for (i = 0; i < numPlayers; i++) { u8 colorsId = COLORID_GRAY; u8 playerId = playersByRanking[i]; u32 points = scoreResults[playerId].score; - AddTextPrinterParameterized(sGfx->windowIds[1], 1, sRankingTexts[scoreResults[playerId].ranking], 8, sRankingYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, sRankingTexts[scoreResults[playerId].ranking], 8, sRankingYCoords[i], -1, NULL); if (playerId == GetMultiplayerId()) colorsId = COLORID_BLUE; name = GetPlayerName(playerId); - AddTextPrinterParameterized3(sGfx->windowIds[1], 1, 28, sRankingYCoords[i], sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 28, sRankingYCoords[i], sTextColorTable[colorsId], -1, name); ConvertIntToDecimalStringN(numString, points, STR_CONV_MODE_LEFT_ALIGN, 7); - numWidth = GetStringWidth(1, numString, -1); - AddTextPrinterParameterized(sGfx->windowIds[1], 1, numString, x - numWidth, sRankingYCoords[i], -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[1], 1, gText_SpacePoints, x, sRankingYCoords[i], -1, NULL); + numWidth = GetStringWidth(FONT_NORMAL, numString, -1); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, numString, x - numWidth, sRankingYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_SpacePoints, x, sRankingYCoords[i], -1, NULL); } } @@ -4770,10 +4770,10 @@ static void ShowResults(void) case 2: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); - strWidth = GetStringWidth(1, gText_BerryPickingResults, -1); + strWidth = GetStringWidth(FONT_NORMAL, gText_BerryPickingResults, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], 1, gText_BerryPickingResults, x, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[1], 1, gText_10P30P50P50P, 68, 17, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_BerryPickingResults, x, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_10P30P50P50P, 68, 17, -1, NULL); for (i = 0; i < numPlayers; i++) { u8 colorsId = COLORID_GRAY; @@ -4781,7 +4781,7 @@ static void ShowResults(void) colorsId = COLORID_BLUE; name = GetPlayerName(i); - AddTextPrinterParameterized3(sGfx->windowIds[1], 1, 0, sResultsYCoords[i], sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 0, sResultsYCoords[i], sTextColorTable[colorsId], -1, name); for (j = 0; j < 4; j++) { u32 width; @@ -4789,13 +4789,13 @@ static void ShowResults(void) u16 maxBerriesPicked = Min(GetHighestBerryResult(j), MAX_BERRIES); ConvertIntToDecimalStringN(gStringVar4, berriesPicked, STR_CONV_MODE_LEFT_ALIGN, 4); - width = GetStringWidth(1, gStringVar4, -1); + width = GetStringWidth(FONT_NORMAL, gStringVar4, -1); // If player got the most of a berry type, highlight their number in red if (maxBerriesPicked == berriesPicked && maxBerriesPicked != 0) - AddTextPrinterParameterized3(sGfx->windowIds[1], 1, sResultsXCoords[j] - width, sResultsYCoords[i], sTextColorTable[COLORID_RED], -1, gStringVar4); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, sResultsXCoords[j] - width, sResultsYCoords[i], sTextColorTable[COLORID_RED], -1, gStringVar4); else - AddTextPrinterParameterized(sGfx->windowIds[1], 1, gStringVar4, sResultsXCoords[j] - width, sResultsYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, sResultsXCoords[j] - width, sResultsYCoords[i], -1, NULL); } } CopyWindowToVram(sGfx->windowIds[0], 2); @@ -4824,9 +4824,9 @@ static void ShowResults(void) case 5: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); - strWidth = GetStringWidth(1, gText_AnnouncingRankings, -1); + strWidth = GetStringWidth(FONT_NORMAL, gText_AnnouncingRankings, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], 1, gText_AnnouncingRankings, x, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingRankings, x, 1, -1, NULL); sGfx->state++; break; case 6: @@ -4870,14 +4870,14 @@ static void ShowResults(void) PlayNewMapMusic(MUS_LEVEL_UP); FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); - strWidth = GetStringWidth(1, gText_AnnouncingPrizes, -1); + strWidth = GetStringWidth(FONT_NORMAL, gText_AnnouncingPrizes, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], 1, gText_AnnouncingPrizes, x, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingPrizes, x, 1, -1, NULL); DynamicPlaceholderTextUtil_Reset(); CopyItemName(GetPrizeItemId(), gStringVar1); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_FirstPlacePrize); - AddTextPrinterParameterized(sGfx->windowIds[1], 1, gStringVar4, 0, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 1, -1, NULL); prizeState = TryGivePrize(); if (prizeState != PRIZE_RECEIVED && prizeState != NO_PRIZE) { @@ -4888,7 +4888,7 @@ static void ShowResults(void) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_CantHoldAnyMore); else if (prizeState == PRIZE_FILLED_BAG) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_FilledStorageSpace); - AddTextPrinterParameterized(sGfx->windowIds[1], 1, gStringVar4, 0, 41, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 41, -1, NULL); } CopyWindowToVram(sGfx->windowIds[0], 2); CopyWindowToVram(sGfx->windowIds[1], 2); @@ -4946,10 +4946,10 @@ static void Msg_WantToPlayAgain(void) // Print text FillWindowPixelBuffer(sGfx->windowIds[WIN_PLAY_AGAIN], PIXEL_FILL(1)); FillWindowPixelBuffer(sGfx->windowIds[WIN_YES_NO], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[WIN_PLAY_AGAIN], 1, gText_WantToPlayAgain, 0, 5, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_Yes, 8, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_No, 8, 17, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_SelectorArrow2, 0, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_PLAY_AGAIN], FONT_NORMAL, gText_WantToPlayAgain, 0, 5, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, 1, -1, NULL); CopyWindowToVram(sGfx->windowIds[WIN_PLAY_AGAIN], 2); CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], 2); sGfx->state++; @@ -4970,9 +4970,9 @@ static void Msg_WantToPlayAgain(void) if (y == PLAY_AGAIN_NONE) y = PLAY_AGAIN_YES; FillWindowPixelBuffer(sGfx->windowIds[WIN_YES_NO], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_Yes, 8, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_No, 8, 17, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], 1, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, -1, NULL); CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], 3); // Increment state only if A or B button have been pressed. @@ -5025,7 +5025,7 @@ static void Msg_SavingDontTurnOff(void) { case 0: DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, 1, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); sGfx->state++; break; case 1: @@ -5063,7 +5063,7 @@ static void Msg_CommunicationStandby(void) break; case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[0], 1, gText_CommunicationStandby3, 0, 5, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_CommunicationStandby3, 0, 5, -1, NULL); CopyWindowToVram(sGfx->windowIds[0], 2); sGfx->state++; break; @@ -5103,7 +5103,7 @@ static void Msg_SomeoneDroppedOut(void) break; case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[0], 1, gText_SomeoneDroppedOut, 0, 5, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_SomeoneDroppedOut, 0, 5, -1, NULL); CopyWindowToVram(sGfx->windowIds[0], 2); sGfx->state++; break; diff --git a/src/easy_chat.c b/src/easy_chat.c index b18d09b8337c..ff4049cd7d08 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -3176,7 +3176,7 @@ static bool8 UpdateMainCursor(void) else { CopyEasyChatWord(str, *ecWord); - stringWidth = GetStringWidth(1, str, 0); + stringWidth = GetStringWidth(FONT_NORMAL, str, 0); } trueStringWidth = stringWidth + 17; @@ -3930,9 +3930,9 @@ static void PrintTitle(void) if (!titleText) return; - xOffset = GetStringCenterAlignXOffset(1, titleText, 144); + xOffset = GetStringCenterAlignXOffset(FONT_NORMAL, titleText, 144); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - PrintEasyChatTextWithColors(0, 1, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); + PrintEasyChatTextWithColors(0, FONT_NORMAL, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); PutWindowTilemap(0); CopyWindowToVram(0, 3); } @@ -4003,10 +4003,10 @@ static void PrintEasyChatStdMessage(u8 msgId) FillWindowPixelBuffer(1, PIXEL_FILL(1)); if (text1) - PrintEasyChatText(1, 1, text1, 0, 1, TEXT_SPEED_FF, 0); + PrintEasyChatText(1, FONT_NORMAL, text1, 0, 1, TEXT_SPEED_FF, 0); if (text2) - PrintEasyChatText(1, 1, text2, 0, 17, TEXT_SPEED_FF, 0); + PrintEasyChatText(1, FONT_NORMAL, text2, 0, 17, TEXT_SPEED_FF, 0); CopyWindowToVram(1, 3); } @@ -4099,7 +4099,7 @@ static void PrintCurrentPhrase(void) } *str = EOS; - PrintEasyChatText(sScreenControl->windowId, 1, sScreenControl->phrasePrintBuffer, 0, i * 16 + 1, TEXT_SPEED_FF, 0); + PrintEasyChatText(sScreenControl->windowId, FONT_NORMAL, sScreenControl->phrasePrintBuffer, 0, i * 16 + 1, TEXT_SPEED_FF, 0); } CopyWindowToVram(sScreenControl->windowId, 3); @@ -4245,7 +4245,7 @@ static void PrintKeyboardGroupNames(void) return; } - PrintEasyChatText(2, 1, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SPEED_FF, NULL); } y += 16; @@ -4257,7 +4257,7 @@ static void PrintKeyboardAlphabet(void) u32 i; for (i = 0; i < ARRAY_COUNT(sEasyChatKeyboardAlphabet); i++) - PrintEasyChatText(2, 1, sEasyChatKeyboardAlphabet[i], 10, 97 + i * 16, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, sEasyChatKeyboardAlphabet[i], 10, 97 + i * 16, TEXT_SPEED_FF, NULL); } static void PrintInitialWordSelectText(void) @@ -4328,9 +4328,9 @@ static void PrintWordSelectText(u8 scrollOffset, u8 numRows) { CopyEasyChatWordPadded(sScreenControl->wordSelectPrintBuffer, easyChatWord, 0); if (!DummyWordCheck(easyChatWord)) - PrintEasyChatText(2, 1, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, NULL); else // Never reached - PrintEasyChatTextWithColors(2, 1, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GRAY); + PrintEasyChatTextWithColors(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GRAY); } } @@ -5082,7 +5082,7 @@ static void AddMainScreenButtonWindow(void) if (str) { int x = sFooterOptionXOffsets[footerIndex][i]; - PrintEasyChatText(windowId, 1, str, x, 1, 0, NULL); + PrintEasyChatText(windowId, FONT_NORMAL, str, x, 1, 0, NULL); } } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index e491b7b144d6..25a61fcf6783 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -866,7 +866,7 @@ static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed) sEggHatchData->textColor[0] = 0; sEggHatchData->textColor[1] = 5; sEggHatchData->textColor[2] = 6; - AddTextPrinterParameterized4(windowId, 1, x, y, 0, 0, sEggHatchData->textColor, speed, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, 0, 0, sEggHatchData->textColor, speed, string); } u8 GetEggCyclesToSubtract(void) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 6ce304c2c083..dd6ce8d93f06 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1807,7 +1807,7 @@ static bool8 Fishing_ShowDots(struct Task *task) } else { - AddTextPrinterParameterized(0, 1, dot, task->tNumDots * 8, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, dot, task->tNumDots * 8, 1, 0, NULL); task->tNumDots++; } } @@ -1856,7 +1856,7 @@ static bool8 Fishing_CheckForBite(struct Task *task) static bool8 Fishing_GotBite(struct Task *task) { AlignFishingAnimationFrames(); - AddTextPrinterParameterized(0, 1, gText_OhABite, 0, 17, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_OhABite, 0, 17, 0, NULL); task->tStep++; task->tFrameCounter = 0; return FALSE; @@ -1911,7 +1911,7 @@ static bool8 Fishing_MonOnHook(struct Task *task) { AlignFishingAnimationFrames(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gText_PokemonOnHook, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PokemonOnHook, 1, 0, 2, 1, 3); task->tStep++; task->tFrameCounter = 0; return FALSE; @@ -1958,7 +1958,7 @@ static bool8 Fishing_NotEvenNibble(struct Task *task) AlignFishingAnimationFrames(); StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection())); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gText_NotEvenANibble, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_NotEvenANibble, 1, 0, 2, 1, 3); task->tStep = FISHING_SHOW_RESULT; return TRUE; } @@ -1968,7 +1968,7 @@ static bool8 Fishing_GotAway(struct Task *task) AlignFishingAnimationFrames(); StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection())); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gText_ItGotAway, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_ItGotAway, 1, 0, 2, 1, 3); task->tStep++; return TRUE; } diff --git a/src/field_region_map.c b/src/field_region_map.c index 99def4901683..9dcc65c9a4eb 100644 --- a/src/field_region_map.c +++ b/src/field_region_map.c @@ -151,8 +151,8 @@ static void FieldUpdateRegionMap(void) break; case 1: DrawStdFrameWithCustomTileAndPalette(1, 0, 0x27, 0xd); - offset = GetStringCenterAlignXOffset(1, gText_Hoenn, 0x38); - AddTextPrinterParameterized(1, 1, gText_Hoenn, offset, 1, 0, NULL); + offset = GetStringCenterAlignXOffset(FONT_NORMAL, gText_Hoenn, 0x38); + AddTextPrinterParameterized(1, FONT_NORMAL, gText_Hoenn, offset, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); DrawStdFrameWithCustomTileAndPalette(0, 0, 0x27, 0xd); PrintRegionMapSecName(); @@ -207,7 +207,7 @@ static void PrintRegionMapSecName(void) if (sFieldRegionMapHandler->regionMap.mapSecType != MAPSECTYPE_NONE) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized(0, 1, sFieldRegionMapHandler->regionMap.mapSecName, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sFieldRegionMapHandler->regionMap.mapSecName, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); } else diff --git a/src/field_specials.c b/src/field_specials.c index 22fd6872b58d..c859401622a4 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1910,11 +1910,11 @@ void ShowDeptStoreElevatorFloorSelect(void) sTutorMoveAndElevatorWindowId = AddWindow(&gElevatorFloor_WindowTemplate); SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, 0); - xPos = GetStringCenterAlignXOffset(1, gText_ElevatorNowOn, 64); - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, 1, gText_ElevatorNowOn, xPos, 1, TEXT_SPEED_FF, NULL); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gText_ElevatorNowOn, 64); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gText_ElevatorNowOn, xPos, 1, TEXT_SPEED_FF, NULL); - xPos = GetStringCenterAlignXOffset(1, gDeptStoreFloorNames[gSpecialVar_0x8005], 64); - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, 1, gDeptStoreFloorNames[gSpecialVar_0x8005], xPos, 17, TEXT_SPEED_FF, NULL); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], 64); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], xPos, 17, TEXT_SPEED_FF, NULL); PutWindowTilemap(sTutorMoveAndElevatorWindowId); CopyWindowToVram(sTutorMoveAndElevatorWindowId, 3); @@ -2653,7 +2653,7 @@ static void InitScrollableMultichoice(void) gScrollableMultichoice_ListMenuTemplate.lettersSpacing = 0; gScrollableMultichoice_ListMenuTemplate.itemVerticalPadding = 0; gScrollableMultichoice_ListMenuTemplate.scrollMultiple = 0; - gScrollableMultichoice_ListMenuTemplate.fontId = 1; + gScrollableMultichoice_ListMenuTemplate.fontId = FONT_NORMAL; gScrollableMultichoice_ListMenuTemplate.cursorKind = 0; } @@ -2957,8 +2957,8 @@ void UpdateBattlePointsWindow(void) u8 string[32]; u32 x; StringCopy(ConvertIntToDecimalStringN(string, gSaveBlock2Ptr->frontier.battlePoints, STR_CONV_MODE_RIGHT_ALIGN, 4), gText_BP); - x = GetStringRightAlignXOffset(1, string, 48); - AddTextPrinterParameterized(sBattlePointsWindowId, 1, string, x, 1, 0, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, string, 48); + AddTextPrinterParameterized(sBattlePointsWindowId, FONT_NORMAL, string, x, 1, 0, NULL); } void ShowBattlePointsWindow(void) @@ -3047,7 +3047,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) switch (menu) { case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: - AddTextPrinterParameterized2(0, 1, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, 2, 1, 3); if (sFrontierExchangeCorner_Decor1[selection] == 0xFFFF) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor1[selection]); @@ -3060,7 +3060,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: - AddTextPrinterParameterized2(0, 1, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, 2, 1, 3); if (sFrontierExchangeCorner_Decor2[selection] == 0xFFFF) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor2[selection]); @@ -3073,11 +3073,11 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: - AddTextPrinterParameterized2(0, 1, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, 2, 1, 3); ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Vitamins[selection]); break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: - AddTextPrinterParameterized2(0, 1, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, 2, 1, 3); ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_HoldItems[selection]); break; } @@ -3216,11 +3216,11 @@ static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection) FillWindowPixelRect(sTutorMoveAndElevatorWindowId, PIXEL_FILL(1), 0, 0, 96, 48); if (menu == SCROLL_MULTI_BF_MOVE_TUTOR_2) { - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, 1, sBattleFrontier_TutorMoveDescriptions2[selection], 0, 1, 0, NULL); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, sBattleFrontier_TutorMoveDescriptions2[selection], 0, 1, 0, NULL); } else { - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, 1, sBattleFrontier_TutorMoveDescriptions1[selection], 0, 1, 0, NULL); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, sBattleFrontier_TutorMoveDescriptions1[selection], 0, 1, 0, NULL); } } } @@ -3244,9 +3244,9 @@ void ScrollableMultichoice_RedrawPersistentMenu(void) SetStandardWindowBorderStyle(task->tWindowId, 0); for (i = 0; i < MAX_SCROLL_MULTI_ON_SCREEN; i++) - AddTextPrinterParameterized5(task->tWindowId, 1, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SPEED_FF, NULL, 0, 0); + AddTextPrinterParameterized5(task->tWindowId, FONT_NORMAL, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SPEED_FF, NULL, 0, 0); - AddTextPrinterParameterized(task->tWindowId, 1, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(task->tWindowId, FONT_NORMAL, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SPEED_FF, NULL); PutWindowTilemap(task->tWindowId); CopyWindowToVram(task->tWindowId, 3); } diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 53bd68eac241..699e19c7aa5c 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -1150,16 +1150,16 @@ static void ShowAndPrintWindows(void) FillWindowPixelBuffer(i, PIXEL_FILL(0)); } - x = GetStringCenterAlignXOffset(1, gText_SymbolsEarned, 96); - AddTextPrinterParameterized3(WINDOW_EARNED_SYMBOLS, 1, x, 5, sTextColors[0], 0, gText_SymbolsEarned); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gText_SymbolsEarned, 96); + AddTextPrinterParameterized3(WINDOW_EARNED_SYMBOLS, FONT_NORMAL, x, 5, sTextColors[0], 0, gText_SymbolsEarned); - x = GetStringCenterAlignXOffset(1, gText_BattleRecord, 96); - AddTextPrinterParameterized3(WINDOW_BATTLE_RECORD, 1, x, 5, sTextColors[0], 0, gText_BattleRecord); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gText_BattleRecord, 96); + AddTextPrinterParameterized3(WINDOW_BATTLE_RECORD, FONT_NORMAL, x, 5, sTextColors[0], 0, gText_BattleRecord); - AddTextPrinterParameterized3(WINDOW_BATTLE_POINTS, 8, 5, 4, sTextColors[0], 0, gText_BattlePoints); + AddTextPrinterParameterized3(WINDOW_BATTLE_POINTS, FONT_SMALL_NARROW, 5, 4, sTextColors[0], 0, gText_BattlePoints); ConvertIntToDecimalStringN(gStringVar4, sPassData->battlePoints, STR_CONV_MODE_LEFT_ALIGN, 5); - x = GetStringRightAlignXOffset(8, gStringVar4, 91); - AddTextPrinterParameterized3(WINDOW_BATTLE_POINTS, 8, x, 16, sTextColors[0], 0, gStringVar4); + x = GetStringRightAlignXOffset(FONT_SMALL_NARROW, gStringVar4, 91); + AddTextPrinterParameterized3(WINDOW_BATTLE_POINTS, FONT_SMALL_NARROW, x, 16, sTextColors[0], 0, gStringVar4); sPassData->cursorArea = GetCursorAreaFromCoords(sPassData->cursorX - 5, sPassData->cursorY + 5); sPassData->previousCursorArea = CURSOR_AREA_NOTHING; @@ -1176,9 +1176,9 @@ static void PrintAreaDescription(u8 cursorArea) FillWindowPixelBuffer(WINDOW_DESCRIPTION, PIXEL_FILL(0)); if (cursorArea == CURSOR_AREA_RECORD && !sPassData->hasBattleRecord) - AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[CURSOR_AREA_NOTHING]); + AddTextPrinterParameterized3(WINDOW_DESCRIPTION, FONT_NORMAL, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[CURSOR_AREA_NOTHING]); else if (cursorArea != CURSOR_AREA_NOTHING) - AddTextPrinterParameterized3(WINDOW_DESCRIPTION, 1, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[cursorArea]); + AddTextPrinterParameterized3(WINDOW_DESCRIPTION, FONT_NORMAL, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[cursorArea]); CopyWindowToVram(WINDOW_DESCRIPTION, 3); CopyBgTilemapBufferToVram(0); @@ -1715,12 +1715,12 @@ static void PrintOnFrontierMap(void) for (i = 0; i < NUM_FRONTIER_FACILITIES; i++) { if (i == sMapData->cursorPos) - AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (i * 16) + 1, sTextColors[2], 0, sMapLandmarks[i].name); + AddTextPrinterParameterized3(MAP_WINDOW_NAME, FONT_NARROW, 4, (i * 16) + 1, sTextColors[2], 0, sMapLandmarks[i].name); else - AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (i * 16) + 1, sTextColors[1], 0, sMapLandmarks[i].name); + AddTextPrinterParameterized3(MAP_WINDOW_NAME, FONT_NARROW, 4, (i * 16) + 1, sTextColors[1], 0, sMapLandmarks[i].name); } - AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, 1, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); + AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, FONT_NORMAL, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); for (i = 0; i < MAP_WINDOW_COUNT; i++) CopyWindowToVram(i, 3); @@ -1743,8 +1743,8 @@ static void HandleFrontierMapCursorMove(u8 direction) sMapData->cursorPos = (oldCursorPos + 1) % NUM_FRONTIER_FACILITIES; } - AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (oldCursorPos * 16) + 1, sTextColors[1], 0, sMapLandmarks[oldCursorPos].name); - AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (sMapData->cursorPos * 16) + 1, sTextColors[2], 0, sMapLandmarks[sMapData->cursorPos].name); + AddTextPrinterParameterized3(MAP_WINDOW_NAME, FONT_NARROW, 4, (oldCursorPos * 16) + 1, sTextColors[1], 0, sMapLandmarks[oldCursorPos].name); + AddTextPrinterParameterized3(MAP_WINDOW_NAME, FONT_NARROW, 4, (sMapData->cursorPos * 16) + 1, sTextColors[2], 0, sMapLandmarks[sMapData->cursorPos].name); sMapData->cursorSprite->y = (sMapData->cursorPos * 16) + 8; @@ -1752,7 +1752,7 @@ static void HandleFrontierMapCursorMove(u8 direction) sMapData->mapIndicatorSprite->x = sMapLandmarks[sMapData->cursorPos].x; sMapData->mapIndicatorSprite->y = sMapLandmarks[sMapData->cursorPos].y; FillWindowPixelBuffer(MAP_WINDOW_DESCRIPTION, PIXEL_FILL(0)); - AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, 1, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); + AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, FONT_NORMAL, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); for (i = 0; i < MAP_WINDOW_COUNT; i++) CopyWindowToVram(i, 3); diff --git a/src/frontier_util.c b/src/frontier_util.c index ec3eba43a4ad..25153b05c796 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -958,9 +958,9 @@ static bool8 IsWinStreakActive(u32 challenge) static void PrintAligned(const u8 *str, s32 y) { - s32 x = GetStringCenterAlignXOffset(1, str, 224); + s32 x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 224); y = (y * 8) + 1; - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, y, TEXT_SPEED_FF, NULL); } static void PrintHyphens(s32 y) @@ -973,18 +973,18 @@ static void PrintHyphens(s32 y) text[i] = EOS; y = (y * 8) + 1; - AddTextPrinterParameterized(gRecordsWindowId, 1, text, 4, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, 4, y, TEXT_SPEED_FF, NULL); } // Battle Tower records. static void TowerPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void TowerPrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1056,8 +1056,8 @@ static void ShowTowerResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_LinkMultiBattleRoomResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); TowerPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 72, 132, 49); TowerPrintRecordStreak(battleMode, FRONTIER_LVL_50, 72, 132, 65); @@ -1079,10 +1079,10 @@ static u16 DomeGetWinStreak(u8 battleMode, u8 lvlMode) static void PrintTwoStrings(const u8 *str1, const u8 *str2, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str1, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SPEED_FF, NULL); ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, str2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void DomePrintPrevOrCurrentStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1123,8 +1123,8 @@ static void ShowDomeResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_DoubleBattleTourneyResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); DomePrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 64, 121, 33); PrintTwoStrings(gText_Record, gText_ClearStreak, gSaveBlock2Ptr->frontier.domeRecordWinStreaks[battleMode][FRONTIER_LVL_50], 64, 121, 49); @@ -1139,12 +1139,12 @@ static void ShowDomeResultsWindow(u8 battleMode) // Battle Palace records. static void PalacePrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void PalacePrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1199,8 +1199,8 @@ static void ShowPalaceResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_DoubleBattleHallResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); PalacePrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 72, 131, 49); PalacePrintRecordStreak(battleMode, FRONTIER_LVL_50, 72, 131, 65); @@ -1222,10 +1222,10 @@ static u16 PikeGetWinStreak(u8 lvlMode) static void PikePrintCleared(const u8 *str1, const u8 *str2, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str1, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SPEED_FF, NULL); ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, str2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void PikePrintPrevOrCurrentStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1251,8 +1251,8 @@ static void ShowPikeResultsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_BattleChoiceResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); PikePrintPrevOrCurrentStreak(FRONTIER_LVL_50, 64, 114, 33); PikePrintCleared(gText_Record, gText_RoomsCleared, gSaveBlock2Ptr->frontier.pikeRecordStreaks[FRONTIER_LVL_50], 64, 114, 49); @@ -1267,12 +1267,12 @@ static void ShowPikeResultsWindow(void) // Battle Arena records. static void ArenaPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_KOsInARow); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void ArenaPrintRecordStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1314,8 +1314,8 @@ static void ShowArenaResultsWindow(void) PrintHyphens(10); StringExpandPlaceholders(gStringVar4, gText_SetKOTourneyResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); ArenaPrintPrevOrCurrentStreak(FRONTIER_LVL_50, 72, 126, 49); ArenaPrintRecordStreak(FRONTIER_LVL_50, 72, 126, 65); ArenaPrintPrevOrCurrentStreak(FRONTIER_LVL_OPEN, 72, 126, 97); @@ -1327,16 +1327,16 @@ static void ShowArenaResultsWindow(void) // Battle Factory records. static void FactoryPrintStreak(const u8 *str, u16 num1, u16 num2, u8 x1, u8 x2, u8 x3, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); if (num1 > MAX_STREAK) num1 = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num1, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); ConvertIntToDecimalStringN(gStringVar1, num2, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_TimesVar1); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x3, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x3, y, TEXT_SPEED_FF, NULL); } static void FactoryPrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 x3, u8 y) @@ -1403,9 +1403,9 @@ static void ShowFactoryResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_BattleSwapDoubleResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_RentalSwap, 152, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_RentalSwap, 152, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); FactoryPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 8, 64, 158, 49); FactoryPrintRecordStreak(battleMode, FRONTIER_LVL_50, 8, 64, 158, 65); @@ -1418,12 +1418,12 @@ static void ShowFactoryResultsWindow(u8 battleMode) // Battle Pyramid records. static void PyramidPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_FloorsCleared); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); } static void PyramidPrintRecordStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1464,8 +1464,8 @@ static void ShowPyramidResultsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_BattleQuestResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Lv502, 8, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); PrintHyphens(10); PyramidPrintPrevOrCurrentStreak(FRONTIER_LVL_50, 64, 111, 49); PyramidPrintRecordStreak(FRONTIER_LVL_50, 64, 111, 65); @@ -1487,38 +1487,38 @@ static void ShowLinkContestResultsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_LinkContestResults); - x = GetStringCenterAlignXOffset(1, gStringVar4, 208); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, x, 1, TEXT_SPEED_FF, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 208); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x, 1, TEXT_SPEED_FF, NULL); str = gText_1st; - x = GetStringRightAlignXOffset(1, str, 38) + 50; - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x, 25, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 50; + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); str = gText_2nd; - x = GetStringRightAlignXOffset(1, str, 38) + 88; - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x, 25, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 88; + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); str = gText_3rd; - x = GetStringRightAlignXOffset(1, str, 38) + 126; - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x, 25, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 126; + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); str = gText_4th; - x = GetStringRightAlignXOffset(1, str, 38) + 164; - AddTextPrinterParameterized(gRecordsWindowId, 1, str, x, 25, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 164; + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); x = 6; - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Cool, x, 41, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Beauty, x, 57, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Cute, x, 73, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Smart, x, 89, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_Tough, x, 105, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cool, x, 41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Beauty, x, 57, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cute, x, 73, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Smart, x, 89, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Tough, x, 105, TEXT_SPEED_FF, NULL); for (i = 0; i < CONTEST_CATEGORIES_COUNT; i++) { for (j = 0; j < CONTESTANT_COUNT; j++) { ConvertIntToDecimalStringN(gStringVar4, gSaveBlock2Ptr->contestLinkResults[i][j], STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, (j * 38) + 64, (i * 16) + 41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, (j * 38) + 64, (i * 16) + 41, TEXT_SPEED_FF, NULL); } } @@ -2224,18 +2224,18 @@ static void Print1PRecord(s32 position, s32 x, s32 y, struct RankingHall1P *hall u8 text[32]; u16 winStreak; - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); hallRecord->name[PLAYER_NAME_LENGTH] = EOS; if (hallRecord->winStreak) { TVShowConvertInternationalString(text, hallRecord->name, hallRecord->language); - AddTextPrinterParameterized(gRecordsWindowId, 1, text, (x + 2) * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); winStreak = hallRecord->winStreak; if (winStreak > MAX_STREAK) winStreak = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar2, winStreak, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[hallFacilityId]); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, GetStringRightAlignXOffset(1, sHallFacilityToRecordsText[hallFacilityId], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[hallFacilityId], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); } } @@ -2244,25 +2244,25 @@ static void Print2PRecord(s32 position, s32 x, s32 y, struct RankingHall2P *hall u8 text[32]; u16 winStreak; - AddTextPrinterParameterized(gRecordsWindowId, 1, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); if (hallRecord->winStreak) { hallRecord->name1[PLAYER_NAME_LENGTH] = EOS; hallRecord->name2[PLAYER_NAME_LENGTH] = EOS; TVShowConvertInternationalString(text, hallRecord->name1, hallRecord->language); - AddTextPrinterParameterized(gRecordsWindowId, 1, text, (x + 2) * 8, (8 * (y + 5 * position - 1)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position - 1)) + 1, TEXT_SPEED_FF, NULL); if (IsStringJapanese(hallRecord->name2)) TVShowConvertInternationalString(text, hallRecord->name2, LANGUAGE_JAPANESE); else StringCopy(text, hallRecord->name2); - AddTextPrinterParameterized(gRecordsWindowId, 1, text, (x + 4) * 8, (8 * (y + 5 * position + 1)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 4) * 8, (8 * (y + 5 * position + 1)) + 1, TEXT_SPEED_FF, NULL); winStreak = hallRecord->winStreak; if (winStreak > MAX_STREAK) winStreak = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar2, winStreak, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK]); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, GetStringRightAlignXOffset(1, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); } } @@ -2343,9 +2343,9 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) StringCopy(gStringVar1, sRecordsWindowChallengeTexts[hallFacilityId][0]); StringExpandPlaceholders(gStringVar4, sRecordsWindowChallengeTexts[hallFacilityId][1]); - AddTextPrinterParameterized(gRecordsWindowId, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); - x = GetStringRightAlignXOffset(1, sLevelModeText[lvlMode], 0xD0); - AddTextPrinterParameterized(gRecordsWindowId, 1, sLevelModeText[lvlMode], x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, sLevelModeText[lvlMode], 0xD0); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sLevelModeText[lvlMode], x, 1, TEXT_SPEED_FF, NULL); if (hallFacilityId == RANKING_HALL_TOWER_LINK) { gSaveBlock2Ptr->frontier.opponentNames[0][PLAYER_NAME_LENGTH] = EOS; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 3cbe8df6e770..8d69b03bc99e 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -514,7 +514,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) *lastSavedTeam = *sHofMonPtr; DrawDialogueFrame(0, 0); - AddTextPrinterParameterized2(0, 1, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_Hof_TrySaveData; } @@ -724,7 +724,7 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId) FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); HallOfFame_PrintPlayerInfo(1, 2); DrawDialogueFrame(0, 0); - AddTextPrinterParameterized2(0, 1, gText_LeagueChamp, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_LeagueChamp, 0, NULL, 2, 1, 3); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_Hof_ExitOnKeyPressed; } @@ -1093,7 +1093,7 @@ static void Task_HofPC_PrintDataIsCorrupted(u8 taskId) { sub_8198180(gText_AButtonExit, 8, TRUE); DrawDialogueFrame(0, 0); - AddTextPrinterParameterized2(0, 1, gText_HOFCorrupted, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, 2, 1, 3); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_HofPC_ExitOnButtonPress; } @@ -1114,7 +1114,7 @@ static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2) { FillWindowPixelBuffer(0, PIXEL_FILL(0)); PutWindowTilemap(0); - AddTextPrinterParameterized3(0, 1, GetStringCenterAlignXOffset(1, gText_WelcomeToHOF, 0xD0), 1, sMonInfoTextColors, 0, gText_WelcomeToHOF); + AddTextPrinterParameterized3(0, FONT_NORMAL, GetStringCenterAlignXOffset(FONT_NORMAL, gText_WelcomeToHOF, 0xD0), 1, sMonInfoTextColors, 0, gText_WelcomeToHOF); CopyWindowToVram(0, 3); } @@ -1150,7 +1150,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u *(stringPtr)++ = CHAR_QUESTION_MARK; } stringPtr[0] = EOS; - AddTextPrinterParameterized3(0, 1, 0x10, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x10, 1, sMonInfoTextColors, -1, text); } // nick, species names, gender and level @@ -1158,14 +1158,14 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u text[POKEMON_NAME_LENGTH] = EOS; if (currMon->species == SPECIES_EGG) { - width = GetStringCenterAlignXOffset(1, text, 0xD0); - AddTextPrinterParameterized3(0, 1, width, 1, sMonInfoTextColors, -1, text); + width = GetStringCenterAlignXOffset(FONT_NORMAL, text, 0xD0); + AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, -1, text); CopyWindowToVram(0, 3); } else { - width = GetStringRightAlignXOffset(1, text, 0x80); - AddTextPrinterParameterized3(0, 1, width, 1, sMonInfoTextColors, -1, text); + width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x80); + AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, -1, text); text[0] = CHAR_SLASH; stringPtr = StringCopy(text + 1, gSpeciesNames[currMon->species]); @@ -1186,15 +1186,15 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u } stringPtr[0] = EOS; - AddTextPrinterParameterized3(0, 1, 0x80, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x80, 1, sMonInfoTextColors, -1, text); stringPtr = StringCopy(text, gText_Level); ConvertIntToDecimalStringN(stringPtr, currMon->lvl, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized3(0, 1, 0x24, 0x11, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x24, 0x11, sMonInfoTextColors, -1, text); stringPtr = StringCopy(text, gText_IDNumber); ConvertIntToDecimalStringN(stringPtr, (u16)(currMon->tid), STR_CONV_MODE_LEADING_ZEROS, 5); - AddTextPrinterParameterized3(0, 1, 0x68, 0x11, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x68, 0x11, sMonInfoTextColors, -1, text); CopyWindowToVram(0, 3); } @@ -1209,23 +1209,23 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) FillWindowPixelBuffer(1, PIXEL_FILL(1)); PutWindowTilemap(1); DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 0xD); - AddTextPrinterParameterized3(1, 1, 0, 1, sPlayerInfoTextColors, -1, gText_Name); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sPlayerInfoTextColors, -1, gText_Name); - width = GetStringRightAlignXOffset(1, gSaveBlock2Ptr->playerName, 0x70); - AddTextPrinterParameterized3(1, 1, width, 1, sPlayerInfoTextColors, -1, gSaveBlock2Ptr->playerName); + width = GetStringRightAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 0x70); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 1, sPlayerInfoTextColors, -1, gSaveBlock2Ptr->playerName); trainerId = (gSaveBlock2Ptr->playerTrainerId[0]) | (gSaveBlock2Ptr->playerTrainerId[1] << 8); - AddTextPrinterParameterized3(1, 1, 0, 0x11, sPlayerInfoTextColors, 0, gText_IDNumber); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0x11, sPlayerInfoTextColors, 0, gText_IDNumber); text[0] = (trainerId % 100000) / 10000 + CHAR_0; text[1] = (trainerId % 10000) / 1000 + CHAR_0; text[2] = (trainerId % 1000) / 100 + CHAR_0; text[3] = (trainerId % 100) / 10 + CHAR_0; text[4] = (trainerId % 10) / 1 + CHAR_0; text[5] = EOS; - width = GetStringRightAlignXOffset(1, text, 0x70); - AddTextPrinterParameterized3(1, 1, width, 0x11, sPlayerInfoTextColors, -1, text); + width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x70); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x11, sPlayerInfoTextColors, -1, text); - AddTextPrinterParameterized3(1, 1, 0, 0x21, sPlayerInfoTextColors, -1, gText_Time); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0x21, sPlayerInfoTextColors, -1, gText_Time); text[0] = (gSaveBlock2Ptr->playTimeHours / 100) + CHAR_0; text[1] = (gSaveBlock2Ptr->playTimeHours % 100) / 10 + CHAR_0; text[2] = (gSaveBlock2Ptr->playTimeHours % 10) + CHAR_0; @@ -1240,8 +1240,8 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) text[5] = (gSaveBlock2Ptr->playTimeMinutes % 10) + CHAR_0; text[6] = EOS; - width = GetStringRightAlignXOffset(1, text, 0x70); - AddTextPrinterParameterized3(1, 1, width, 0x21, sPlayerInfoTextColors, -1, text); + width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x70); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x21, sPlayerInfoTextColors, -1, text); CopyWindowToVram(1, 3); } diff --git a/src/international_string_util.c b/src/international_string_util.c index b2ee9743ea0d..ef779c698007 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -40,7 +40,7 @@ int GetMaxWidthInMenuTable(const struct MenuAction *actions, int numActions) for (maxWidth = 0, i = 0; i < numActions; i++) { - int stringWidth = GetStringWidth(1, actions[i].text, 0); + int stringWidth = GetStringWidth(FONT_NORMAL, actions[i].text, 0); if (stringWidth > maxWidth) maxWidth = stringWidth; } @@ -54,7 +54,7 @@ int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8* a for (maxWidth = 0, i = 0; i < numActions; i++) { - int stringWidth = GetStringWidth(1, actions[actionIds[i]].text, 0); + int stringWidth = GetStringWidth(FONT_NORMAL, actions[actionIds[i]].text, 0); if (stringWidth > maxWidth) maxWidth = stringWidth; } diff --git a/src/item_menu.c b/src/item_menu.c index 53f478a31d98..3de5c17a35a4 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -260,7 +260,7 @@ static const struct ListMenuTemplate sItemListMenu = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 7, + .fontId = FONT_NARROW, .cursorKind = 0 }; @@ -973,16 +973,16 @@ static void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) // Print berry quantity ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BERRY_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); - offset = GetStringRightAlignXOffset(7, gStringVar4, 119); - BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); + offset = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); + BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); } else if (gBagPosition.pocket != KEYITEMS_POCKET && ItemId_GetImportance(itemId) == FALSE) { // Print item quantity ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); - offset = GetStringRightAlignXOffset(7, gStringVar4, 119); - BagMenu_Print(windowId, 7, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); + offset = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); + BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); } else { @@ -1008,7 +1008,7 @@ static void PrintItemDescription(int itemIndex) str = gStringVar4; } FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, str, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, str, 3, 1, 0, 0, 0, COLORID_NORMAL); } static void BagMenu_PrintCursor(u8 listTaskId, u8 colorIndex) @@ -1019,9 +1019,9 @@ static void BagMenu_PrintCursor(u8 listTaskId, u8 colorIndex) static void BagMenu_PrintCursorAtPos(u8 y, u8 colorIndex) { if (colorIndex == COLORID_NONE) - FillWindowPixelRect(WIN_ITEM_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); + FillWindowPixelRect(WIN_ITEM_LIST, PIXEL_FILL(0), 0, y, GetMenuCursorDimensionByFont(FONT_NORMAL, 0), GetMenuCursorDimensionByFont(FONT_NORMAL, 1)); else - BagMenu_Print(WIN_ITEM_LIST, 1, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIndex); + BagMenu_Print(WIN_ITEM_LIST, FONT_NORMAL, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIndex); } @@ -1195,7 +1195,7 @@ static void PrintItemQuantity(u8 windowId, s16 quantity) u8 numDigits = (gBagPosition.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_LEADING_ZEROS, numDigits); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 0x28), 2, 0, 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 0x28), 2, 0, 0); } // Prints the quantity of items to be sold and the amount that would be earned @@ -1204,7 +1204,7 @@ static void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned) u8 numDigits = (gBagPosition.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; ConvertIntToDecimalStringN(gStringVar1, numSold, STR_CONV_MODE_LEADING_ZEROS, numDigits); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, 0); PrintMoneyAmount(windowId, 38, 1, moneyEarned, 0); } @@ -1438,7 +1438,7 @@ static void StartItemSwap(u8 taskId) CopyItemName(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, tListPosition), gStringVar1); StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); UpdateItemMenuSwapLinePos(tListPosition); DestroyPocketSwitchArrowPair(); BagMenu_PrintCursor(tListTaskId, COLORID_GRAY_CURSOR); @@ -1653,7 +1653,7 @@ static void OpenContextMenu(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); } if (gBagMenu->contextMenuNumItems == 1) PrintContextMenuItems(BagMenu_AddWindow(ITEMWIN_1x1)); @@ -1667,13 +1667,13 @@ static void OpenContextMenu(u8 taskId) static void PrintContextMenuItems(u8 windowId) { - AddItemMenuActionTextPrinters(windowId, 7, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gBagMenu->contextMenuNumItems, 0); } static void PrintContextMenuItemGrid(u8 windowId, u8 columns, u8 rows) { - PrintMenuActionGrid(windowId, 7, 8, 1, 56, columns, rows, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + PrintMenuActionGrid(windowId, FONT_NARROW, 8, 1, 56, columns, rows, sItemMenuActions, gBagMenu->contextMenuItemsPtr); InitMenuActionGrid(windowId, 56, columns, rows, 0); } @@ -1819,7 +1819,7 @@ static void ItemMenu_Toss(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_TossHowManyVar1s); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); AddItemQuantityWindow(ITEMWIN_QUANTITY); gTasks[taskId].func = Task_ChooseHowManyToToss; } @@ -1833,7 +1833,7 @@ static void AskTossItems(u8 taskId) ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_ConfirmTossItems); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); BagMenu_YesNo(taskId, ITEMWIN_YESNO_LOW, &sYesNoTossFunctions); } @@ -1876,7 +1876,7 @@ static void ConfirmToss(u8 taskId) ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_ThrewAwayVar2Var1s); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); gTasks[taskId].func = Task_RemoveItemFromBag; } @@ -1924,7 +1924,7 @@ static void ItemMenu_Give(u8 taskId) RemoveContextWindow(); if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { - DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_CantWriteMail, HandleErrorMessage); } else if (!ItemId_GetImportance(gSpecialVar_ItemId)) { @@ -1946,14 +1946,14 @@ static void ItemMenu_Give(u8 taskId) static void PrintThereIsNoPokemon(u8 taskId) { - DisplayItemMessage(taskId, 1, gText_NoPokemon, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_NoPokemon, HandleErrorMessage); } static void PrintItemCantBeHeld(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeld); - DisplayItemMessage(taskId, 1, gStringVar4, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, HandleErrorMessage); } static void HandleErrorMessage(u8 taskId) @@ -2001,13 +2001,13 @@ static void Task_ItemContext_GiveToParty(u8 taskId) { if (!IsWritingMailAllowed(gSpecialVar_ItemId)) { - DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_CantWriteMail, HandleErrorMessage); } else if (!IsHoldingItemAllowed(gSpecialVar_ItemId)) { CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeldHere); - DisplayItemMessage(taskId, 1, gStringVar4, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, HandleErrorMessage); } else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) { @@ -2023,7 +2023,7 @@ static void Task_ItemContext_GiveToParty(u8 taskId) static void Task_ItemContext_GiveToPC(u8 taskId) { if (ItemIsMail(gSpecialVar_ItemId) == TRUE) - DisplayItemMessage(taskId, 1, gText_CantWriteMail, HandleErrorMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_CantWriteMail, HandleErrorMessage); else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId)) gTasks[taskId].func = Task_FadeAndCloseBagMenu; else @@ -2072,7 +2072,7 @@ static void Task_ItemContext_Sell(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gText_CantBuyKeyItem); - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); } else { @@ -2086,7 +2086,7 @@ static void Task_ItemContext_Sell(u8 taskId) { CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gText_HowManyToSell); - DisplayItemMessage(taskId, 1, gStringVar4, InitSellHowManyInput); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, InitSellHowManyInput); } } } @@ -2097,7 +2097,7 @@ static void DisplaySellItemPriceAndConfirm(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_ICanPayVar1); - DisplayItemMessage(taskId, 1, gStringVar4, AskSellItems); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, AskSellItems); } static void AskSellItems(u8 taskId) @@ -2157,7 +2157,7 @@ static void ConfirmSell(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar2); ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_TurnedOverVar1ForVar2); - DisplayItemMessage(taskId, 1, gStringVar4, SellItem); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, SellItem); } static void SellItem(u8 taskId) @@ -2203,7 +2203,7 @@ static void Task_ItemContext_Deposit(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gText_DepositHowManyVar1); FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); AddItemQuantityWindow(ITEMWIN_QUANTITY); gTasks[taskId].func = Task_ChooseHowManyToDeposit; } @@ -2241,7 +2241,7 @@ static void TryDepositItem(u8 taskId) if (ItemId_GetImportance(gSpecialVar_ItemId)) { // Can't deposit important items - BagMenu_Print(WIN_DESCRIPTION, 1, gText_CantStoreImportantItems, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gText_CantStoreImportantItems, 3, 1, 0, 0, 0, COLORID_NORMAL); gTasks[taskId].func = WaitDepositErrorMessage; } else if (AddPCItem(gSpecialVar_ItemId, tItemCount) == TRUE) @@ -2250,13 +2250,13 @@ static void TryDepositItem(u8 taskId) CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); StringExpandPlaceholders(gStringVar4, gText_DepositedVar2Var1s); - BagMenu_Print(WIN_DESCRIPTION, 1, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gStringVar4, 3, 1, 0, 0, 0, COLORID_NORMAL); gTasks[taskId].func = Task_RemoveItemFromBag; } else { // No room to deposit - BagMenu_Print(WIN_DESCRIPTION, 1, gText_NoRoomForItems, 3, 1, 0, 0, 0, COLORID_NORMAL); + BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gText_NoRoomForItems, 3, 1, 0, 0, 0, COLORID_NORMAL); gTasks[taskId].func = WaitDepositErrorMessage; } } @@ -2416,12 +2416,12 @@ static void PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) window.height = 2; windowId = AddWindow(&window); FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); - offset = GetStringCenterAlignXOffset(1, pocketName1, 0x40); - BagMenu_Print(windowId, 1, pocketName1, offset, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); + offset = GetStringCenterAlignXOffset(FONT_NORMAL, pocketName1, 0x40); + BagMenu_Print(windowId, FONT_NORMAL, pocketName1, offset, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); if (pocketName2) { - offset = GetStringCenterAlignXOffset(1, pocketName2, 0x40); - BagMenu_Print(windowId, 1, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); + offset = GetStringCenterAlignXOffset(FONT_NORMAL, pocketName2, 0x40); + BagMenu_Print(windowId, FONT_NORMAL, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); } CpuCopy32((u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, sizeof(gBagMenu->pocketNameBuffer)); RemoveWindow(windowId); @@ -2557,7 +2557,7 @@ static void PrintTMHMMoveData(u16 itemId) if (itemId == ITEM_NONE) { for (i = 0; i < 4; i++) - BagMenu_Print(WIN_TMHM_INFO, 1, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); CopyWindowToVram(WIN_TMHM_INFO, 2); } else @@ -2575,7 +2575,7 @@ static void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(WIN_TMHM_INFO, 1, text, 7, 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); // Print TMHM accuracy if (gBattleMoves[moveId].accuracy == 0) @@ -2587,11 +2587,11 @@ static void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(WIN_TMHM_INFO, 1, text, 7, 24, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 24, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); // Print TMHM pp ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, STR_CONV_MODE_RIGHT_ALIGN, 3); - BagMenu_Print(WIN_TMHM_INFO, 1, gStringVar1, 7, 36, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gStringVar1, 7, 36, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); CopyWindowToVram(WIN_TMHM_INFO, 2); } diff --git a/src/item_use.c b/src/item_use.c index 833e80b97643..394e7922bd72 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -143,7 +143,7 @@ static void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyIte if (!isUsingRegisteredKeyItemOnField) { if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage); } @@ -651,7 +651,7 @@ void ItemUseOutOfBattle_CoinCase(u8 taskId) if (!gTasks[taskId].tUsingRegisteredKeyItem) { - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); } else { @@ -666,7 +666,7 @@ void ItemUseOutOfBattle_PowderJar(u8 taskId) if (!gTasks[taskId].tUsingRegisteredKeyItem) { - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); } else { @@ -782,9 +782,9 @@ void ItemUseOutOfBattle_RareCandy(u8 taskId) void ItemUseOutOfBattle_TMHM(u8 taskId) { if (gSpecialVar_ItemId >= ITEM_HM01_CUT) - DisplayItemMessage(taskId, 1, gText_BootedUpHM, BootUpSoundTMHM); // HM + DisplayItemMessage(taskId, FONT_NORMAL, gText_BootedUpHM, BootUpSoundTMHM); // HM else - DisplayItemMessage(taskId, 1, gText_BootedUpTM, BootUpSoundTMHM); // TM + DisplayItemMessage(taskId, FONT_NORMAL, gText_BootedUpTM, BootUpSoundTMHM); // TM } static void BootUpSoundTMHM(u8 taskId) @@ -799,7 +799,7 @@ static void Task_ShowTMHMContainedMessage(u8 taskId) { StringCopy(gStringVar1, gMoveNames[ItemIdToBattleMoveId(gSpecialVar_ItemId)]); StringExpandPlaceholders(gStringVar4, gText_TMHMContainedVar1); - DisplayItemMessage(taskId, 1, gStringVar4, UseTMHMYesNo); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, UseTMHMYesNo); } } @@ -836,7 +836,7 @@ void ItemUseOutOfBattle_Repel(u8 taskId) if (VarGet(VAR_REPEL_STEP_COUNT) == 0) gTasks[taskId].func = Task_StartUseRepel; else if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gText_RepelEffectsLingered, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_RepelEffectsLingered, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_RepelEffectsLingered, Task_CloseBattlePyramidBagMessage); } @@ -860,7 +860,7 @@ static void Task_UseRepel(u8 taskId) VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId)); RemoveUsedItem(); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage); } @@ -872,7 +872,7 @@ static void Task_UsedBlackWhiteFlute(u8 taskId) { PlaySE(SE_GLASS_FLUTE); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage); } @@ -951,7 +951,7 @@ void ItemUseInBattle_PokeBall(u8 taskId) } else if (!InBattlePyramid()) { - DisplayItemMessage(taskId, 1, gText_BoxFull, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_BoxFull, CloseItemMessage); } else DisplayItemMessageInBattlePyramid(taskId, gText_BoxFull, Task_CloseBattlePyramidBagMessage); @@ -975,7 +975,7 @@ static void Task_UseStatIncreaseItem(u8 taskId) PlaySE(SE_USE_ITEM); RemoveBagItem(gSpecialVar_ItemId, 1); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage); + DisplayItemMessage(taskId, FONT_NORMAL, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage); else DisplayItemMessageInBattlePyramid(taskId, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage); } @@ -989,7 +989,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId) if (ExecuteTableBasedItemEffect(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE) { if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gText_WontHaveEffect, CloseItemMessage); + DisplayItemMessage(taskId, FONT_NORMAL, gText_WontHaveEffect, CloseItemMessage); else DisplayItemMessageInBattlePyramid(taskId, gText_WontHaveEffect, Task_CloseBattlePyramidBagMessage); } @@ -1041,7 +1041,7 @@ void ItemUseInBattle_Escape(u8 taskId) { RemoveUsedItem(); if (!InBattlePyramid()) - DisplayItemMessage(taskId, 1, gStringVar4, Task_FadeAndCloseBagMenu); + DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, Task_FadeAndCloseBagMenu); else DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBag); } diff --git a/src/link.c b/src/link.c index 19b6d0f813ac..cf5e265737d6 100644 --- a/src/link.c +++ b/src/link.c @@ -1644,8 +1644,8 @@ static void ErrorMsg_MoveCloserToPartner(void) LoadPalette(sWirelessLinkDisplayPal, 0, 0x20); FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0)); - AddTextPrinterParameterized3(0, 3, 2, 6, sTextColors, 0, gText_CommErrorEllipsis); - AddTextPrinterParameterized3(2, 3, 2, 1, sTextColors, 0, gText_MoveCloserToLinkPartner); + AddTextPrinterParameterized3(0, FONT_SHORT_COPY_1, 2, 6, sTextColors, 0, gText_CommErrorEllipsis); + AddTextPrinterParameterized3(2, FONT_SHORT_COPY_1, 2, 1, sTextColors, 0, gText_MoveCloserToLinkPartner); PutWindowTilemap(0); PutWindowTilemap(2); CopyWindowToVram(0, 0); @@ -1657,7 +1657,7 @@ static void ErrorMsg_CheckConnections(void) LoadBgTiles(0, sCommErrorBg_Gfx, 0x20, 0); FillWindowPixelBuffer(1, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0)); - AddTextPrinterParameterized3(1, 3, 2, 0, sTextColors, 0, gText_CommErrorCheckConnections); + AddTextPrinterParameterized3(1, FONT_SHORT_COPY_1, 2, 0, sTextColors, 0, gText_CommErrorCheckConnections); PutWindowTilemap(1); PutWindowTilemap(2); CopyWindowToVram(1, 0); @@ -1692,9 +1692,9 @@ static void CB2_PrintErrorMessage(void) break; case 130: if (gWirelessCommType == 2) - AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnTitleScreen); + AddTextPrinterParameterized3(0, FONT_SHORT_COPY_1, 2, 20, sTextColors, 0, gText_ABtnTitleScreen); else if (gWirelessCommType == 1) - AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnRegistrationCounter); + AddTextPrinterParameterized3(0, FONT_SHORT_COPY_1, 2, 20, sTextColors, 0, gText_ABtnRegistrationCounter); break; } if (gMain.state == 160) diff --git a/src/mail.c b/src/mail.c index 8bb6f69918b4..5b4e62bafaca 100644 --- a/src/mail.c +++ b/src/mail.c @@ -692,14 +692,14 @@ static void PrintMailText(void) if (sMailRead->message[i][0] == EOS || sMailRead->message[i][0] == CHAR_SPACE) continue; - AddTextPrinterParameterized3(0, 1, sMailRead->layout->lines[i].xOffset + sMailRead->layout->wordsXPos, y + sMailRead->layout->wordsYPos, sTextColors, 0, sMailRead->message[i]); + AddTextPrinterParameterized3(0, FONT_NORMAL, sMailRead->layout->lines[i].xOffset + sMailRead->layout->wordsXPos, y + sMailRead->layout->wordsYPos, sTextColors, 0, sMailRead->message[i]); y += sMailRead->layout->lines[i].height; } bufptr = StringCopy(signature, gText_FromSpace); StringCopy(bufptr, sMailRead->playerName); - box_x = GetStringCenterAlignXOffset(1, signature, sMailRead->signatureWidth) + 104; + box_x = GetStringCenterAlignXOffset(FONT_NORMAL, signature, sMailRead->signatureWidth) + 104; box_y = sMailRead->layout->signatureYPos + 88; - AddTextPrinterParameterized3(0, 1, box_x, box_y, sTextColors, 0, signature); + AddTextPrinterParameterized3(0, FONT_NORMAL, box_x, box_y, sTextColors, 0, signature); CopyWindowToVram(0, 3); CopyWindowToVram(1, 3); } diff --git a/src/main_menu.c b/src/main_menu.c index b2879968c950..637719dea759 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -780,8 +780,8 @@ static void Task_DisplayMainMenu(u8 taskId) default: FillWindowPixelBuffer(0, PIXEL_FILL(0xA)); FillWindowPixelBuffer(1, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(0, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(1, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); PutWindowTilemap(0); PutWindowTilemap(1); CopyWindowToVram(0, 2); @@ -793,9 +793,9 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(2, PIXEL_FILL(0xA)); FillWindowPixelBuffer(3, PIXEL_FILL(0xA)); FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -812,10 +812,10 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(3, PIXEL_FILL(0xA)); FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); FillWindowPixelBuffer(5, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift); - AddTextPrinterParameterized3(5, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift); + AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -836,11 +836,11 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); FillWindowPixelBuffer(5, PIXEL_FILL(0xA)); FillWindowPixelBuffer(6, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift2); - AddTextPrinterParameterized3(5, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryEvents); - AddTextPrinterParameterized3(6, 1, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift2); + AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryEvents); + AddTextPrinterParameterized3(6, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -2117,7 +2117,7 @@ static void NewGameBirchSpeech_SetDefaultPlayerName(u8 nameId) static void CreateMainMenuErrorWindow(const u8* str) { FillWindowPixelBuffer(7, PIXEL_FILL(1)); - AddTextPrinterParameterized(7, 1, str, 0, 1, 2, 0); + AddTextPrinterParameterized(7, FONT_NORMAL, str, 0, 1, 2, 0); PutWindowTilemap(7); CopyWindowToVram(7, 2); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[7], MAIN_MENU_BORDER_TILE); @@ -2136,8 +2136,8 @@ static void MainMenu_FormatSavegameText(void) static void MainMenu_FormatSavegamePlayer(void) { StringExpandPlaceholders(gStringVar4, gText_ContinueMenuPlayer); - AddTextPrinterParameterized3(2, 1, 0, 17, sTextColor_MenuInfo, -1, gStringVar4); - AddTextPrinterParameterized3(2, 1, GetStringRightAlignXOffset(1, gSaveBlock2Ptr->playerName, 100), 17, sTextColor_MenuInfo, -1, gSaveBlock2Ptr->playerName); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 17, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 100), 17, sTextColor_MenuInfo, -1, gSaveBlock2Ptr->playerName); } static void MainMenu_FormatSavegameTime(void) @@ -2146,11 +2146,11 @@ static void MainMenu_FormatSavegameTime(void) u8* ptr; StringExpandPlaceholders(gStringVar4, gText_ContinueMenuTime); - AddTextPrinterParameterized3(2, 1, 0x6C, 17, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 17, sTextColor_MenuInfo, -1, gStringVar4); ptr = ConvertIntToDecimalStringN(str, gSaveBlock2Ptr->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3); *ptr = 0xF0; ConvertIntToDecimalStringN(ptr + 1, gSaveBlock2Ptr->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2); - AddTextPrinterParameterized3(2, 1, GetStringRightAlignXOffset(1, str, 0xD0), 17, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 17, sTextColor_MenuInfo, -1, str); } static void MainMenu_FormatSavegamePokedex(void) @@ -2165,9 +2165,9 @@ static void MainMenu_FormatSavegamePokedex(void) else dexCount = GetHoennPokedexCount(FLAG_GET_CAUGHT); StringExpandPlaceholders(gStringVar4, gText_ContinueMenuPokedex); - AddTextPrinterParameterized3(2, 1, 0, 33, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 33, sTextColor_MenuInfo, -1, gStringVar4); ConvertIntToDecimalStringN(str, dexCount, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized3(2, 1, GetStringRightAlignXOffset(1, str, 100), 33, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 100), 33, sTextColor_MenuInfo, -1, str); } } @@ -2183,9 +2183,9 @@ static void MainMenu_FormatSavegameBadges(void) badgeCount++; } StringExpandPlaceholders(gStringVar4, gText_ContinueMenuBadges); - AddTextPrinterParameterized3(2, 1, 0x6C, 33, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 33, sTextColor_MenuInfo, -1, gStringVar4); ConvertIntToDecimalStringN(str, badgeCount, STR_CONV_MODE_LEADING_ZEROS, 1); - AddTextPrinterParameterized3(2, 1, GetStringRightAlignXOffset(1, str, 0xD0), 33, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 33, sTextColor_MenuInfo, -1, str); } static void LoadMainMenuWindowFrameTiles(u8 bgId, u16 tileOffset) @@ -2237,9 +2237,9 @@ static void NewGameBirchSpeech_ClearGenderWindow(u8 windowId, bool8 copyToVram) static void NewGameBirchSpeech_ClearWindow(u8 windowId) { - u8 bgColor = GetFontAttribute(1, FONTATTR_COLOR_BACKGROUND); - u8 maxCharWidth = GetFontAttribute(1, FONTATTR_MAX_LETTER_WIDTH); - u8 maxCharHeight = GetFontAttribute(1, FONTATTR_MAX_LETTER_HEIGHT); + u8 bgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_BACKGROUND); + u8 maxCharWidth = GetFontAttribute(FONT_NORMAL, FONTATTR_MAX_LETTER_WIDTH); + u8 maxCharHeight = GetFontAttribute(FONT_NORMAL, FONTATTR_MAX_LETTER_HEIGHT); u8 winWidth = GetWindowAttribute(windowId, WINDOW_WIDTH); u8 winHeight = GetWindowAttribute(windowId, WINDOW_HEIGHT); diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 97b02acf63a3..88a06eed424a 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -325,11 +325,11 @@ static void ShowMapNamePopUpWindow(void) } AddMapNamePopUpWindow(); LoadMapNamePopUpWindowBg(); - x = GetStringCenterAlignXOffset(7, withoutPrefixPtr, 80); + x = GetStringCenterAlignXOffset(FONT_NARROW, withoutPrefixPtr, 80); mapDisplayHeader[0] = EXT_CTRL_CODE_BEGIN; mapDisplayHeader[1] = EXT_CTRL_CODE_HIGHLIGHT; mapDisplayHeader[2] = TEXT_COLOR_TRANSPARENT; - AddTextPrinterParameterized(GetMapNamePopUpWindowId(), 7, mapDisplayHeader, x, 3, 0xFF, NULL); + AddTextPrinterParameterized(GetMapNamePopUpWindowId(), FONT_NARROW, mapDisplayHeader, x, 3, 0xFF, NULL); CopyWindowToVram(GetMapNamePopUpWindowId(), 3); } diff --git a/src/match_call.c b/src/match_call.c index 9939b09d271c..4c77b87646d2 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1401,7 +1401,7 @@ static void InitMatchCallTextPrinter(int windowId, const u8 *str) struct TextPrinterTemplate printerTemplate; printerTemplate.currentChar = str; printerTemplate.windowId = windowId; - printerTemplate.fontId = 1; + printerTemplate.fontId = FONT_NORMAL; printerTemplate.x = 32; printerTemplate.y = 1; printerTemplate.currentX = 32; diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 2fd0e67307e5..a9f7df744a90 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -447,7 +447,7 @@ static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) static void DrawSongTextWindow(const u8 * str) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, str, 0, 1, 1, DisableTextPrinters); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 0, 1, 1, DisableTextPrinters); gDisableTextPrinters = TRUE; CopyWindowToVram(0, 3); } @@ -1324,7 +1324,7 @@ static void StorytellerDisplayStory(u32 player) static void PrintStoryList(void) { s32 i; - s32 width = GetStringWidth(1, gText_Exit, 0); + s32 width = GetStringWidth(FONT_NORMAL, gText_Exit, 0); for (i = 0; i < NUM_STORYTELLER_TALES; i++) { s32 curWidth; @@ -1332,7 +1332,7 @@ static void PrintStoryList(void) if (gameStatID == 0) break; - curWidth = GetStringWidth(1, GetStoryTitleByStat(gameStatID), 0); + curWidth = GetStringWidth(FONT_NORMAL, GetStoryTitleByStat(gameStatID), 0); if (curWidth > width) width = curWidth; } @@ -1343,9 +1343,9 @@ static void PrintStoryList(void) u16 gameStatID = sStorytellerPtr->gameStatIDs[i]; if (gameStatID == 0) break; - AddTextPrinterParameterized(sStorytellerWindowId, 1, GetStoryTitleByStat(gameStatID), 8, 16 * i + 1, 0xFF, NULL); + AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, GetStoryTitleByStat(gameStatID), 8, 16 * i + 1, 0xFF, NULL); } - AddTextPrinterParameterized(sStorytellerWindowId, 1, gText_Exit, 8, 16 * i + 1, 0xFF, NULL); + AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 0xFF, NULL); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sStorytellerWindowId, GetFreeStorySlot() + 1, 0); CopyWindowToVram(sStorytellerWindowId, 3); } diff --git a/src/menu.c b/src/menu.c index dcc32319e972..e86d6717313a 100644 --- a/src/menu.c +++ b/src/menu.c @@ -193,19 +193,19 @@ void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress) { void (*callback)(struct TextPrinterTemplate *, u16) = NULL; gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); } void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress) { gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); } void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed) { gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, 1, gStringVar4, speed, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, speed, NULL, 2, 1, 3); } void LoadMessageBoxAndBorderGfx(void) @@ -458,7 +458,7 @@ u16 sub_81978D0(u8 colorNum) void DisplayItemMessageOnField(u8 taskId, const u8 *string, TaskFunc callback) { LoadMessageBoxAndBorderGfx(); - DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, 1, GetPlayerTextSpeedDelay(), string, callback); + DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, FONT_NORMAL, GetPlayerTextSpeedDelay(), string, callback); CopyWindowToVram(0, 3); } @@ -545,7 +545,7 @@ void RemoveMapNamePopUpWindow(void) void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextPrinterTemplate *, u16)) { gTextFlags.canABSpeedUpPrint = a1; - AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); } void sub_8197AE8(bool8 copyToVram) @@ -821,9 +821,9 @@ void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram) { PutWindowTilemap(sWindowId); FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); - width = GetStringWidth(0, string, 0); + width = GetStringWidth(FONT_SMALL, string, 0); AddTextPrinterParameterized3(sWindowId, - 0, + FONT_SMALL, 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a2 - width, 1, sTextColors, @@ -857,16 +857,16 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); if (string2 != NULL) { - width = GetStringWidth(0, string2, 0); + width = GetStringWidth(FONT_SMALL, string2, 0); AddTextPrinterParameterized3(sWindowId, - 0, + FONT_SMALL, 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a4 - width, 1, color, 0, string2); } - AddTextPrinterParameterized4(sWindowId, 1, 4, 1, 0, 0, color, 0, string); + AddTextPrinterParameterized4(sWindowId, FONT_NORMAL, 4, 1, 0, 0, color, 0, string); if (copyToVram) CopyWindowToVram(sWindowId, 3); } @@ -1200,7 +1200,7 @@ void sub_8198AF8(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top printer.letterSpacing = GetFontAttribute(fontId, FONTATTR_LETTER_SPACING); printer.lineSpacing = GetFontAttribute(fontId, FONTATTR_LINE_SPACING); - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); sub_81983AC(sYesNoWindowId, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos); } @@ -1578,7 +1578,7 @@ u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, boo sMenu.minCursorPos = 0; sMenu.maxCursorPos = itemCount - 1; sMenu.windowId = windowId; - sMenu.fontId = 1; + sMenu.fontId = FONT_NORMAL; sMenu.optionHeight = 16; sMenu.APressMuted = APressMuted; @@ -1615,11 +1615,11 @@ void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions struct TextPrinterTemplate printer; printer.windowId = windowId; - printer.fontId = 1; - printer.fgColor = GetFontAttribute(1, FONTATTR_COLOR_FOREGROUND); - printer.bgColor = GetFontAttribute(1, FONTATTR_COLOR_BACKGROUND); - printer.shadowColor = GetFontAttribute(1, FONTATTR_COLOR_SHADOW); - printer.unk = GetFontAttribute(1, FONTATTR_UNKNOWN); + printer.fontId = FONT_NORMAL; + printer.fgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_FOREGROUND); + printer.bgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_BACKGROUND); + printer.shadowColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_SHADOW); + printer.unk = GetFontAttribute(FONT_NORMAL, FONTATTR_UNKNOWN); printer.letterSpacing = 0; printer.lineSpacing = 0; printer.x = 8; @@ -1645,15 +1645,15 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa printer.currentChar = gText_YesNo; printer.windowId = sYesNoWindowId; - printer.fontId = 1; + printer.fontId = FONT_NORMAL; printer.x = 8; printer.y = 1; printer.currentX = printer.x; printer.currentY = printer.y; - printer.fgColor = GetFontAttribute(1, FONTATTR_COLOR_FOREGROUND); - printer.bgColor = GetFontAttribute(1, FONTATTR_COLOR_BACKGROUND); - printer.shadowColor = GetFontAttribute(1, FONTATTR_COLOR_SHADOW); - printer.unk = GetFontAttribute(1, FONTATTR_UNKNOWN); + printer.fgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_FOREGROUND); + printer.bgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_BACKGROUND); + printer.shadowColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_SHADOW); + printer.unk = GetFontAttribute(FONT_NORMAL, FONTATTR_UNKNOWN); printer.letterSpacing = 0; printer.lineSpacing = 0; @@ -1680,11 +1680,11 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M struct TextPrinterTemplate printer; printer.windowId = windowId; - printer.fontId = 1; - printer.fgColor = GetFontAttribute(1, FONTATTR_COLOR_FOREGROUND); - printer.bgColor = GetFontAttribute(1, FONTATTR_COLOR_BACKGROUND); - printer.shadowColor = GetFontAttribute(1, FONTATTR_COLOR_SHADOW); - printer.unk = GetFontAttribute(1, FONTATTR_UNKNOWN); + printer.fontId = FONT_NORMAL; + printer.fgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_FOREGROUND); + printer.bgColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_BACKGROUND); + printer.shadowColor = GetFontAttribute(FONT_NORMAL, FONTATTR_COLOR_SHADOW); + printer.unk = GetFontAttribute(FONT_NORMAL, FONTATTR_UNKNOWN); printer.letterSpacing = 0; printer.lineSpacing = 0; @@ -1713,7 +1713,7 @@ u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initi sMenu.minCursorPos = 0; sMenu.maxCursorPos = (columns * rows) - 1; sMenu.windowId = windowId; - sMenu.fontId = 1; + sMenu.fontId = FONT_NORMAL; sMenu.optionWidth = optionWidth; sMenu.optionHeight = 16; sMenu.columns = columns; @@ -1946,8 +1946,8 @@ void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 left, u8 top, const printer.y = top; printer.currentX = printer.x; printer.currentY = printer.y; - printer.letterSpacing = GetFontAttribute(fontId, 2); - printer.lineSpacing = GetFontAttribute(fontId, 3); + printer.letterSpacing = GetFontAttribute(fontId, FONTATTR_LETTER_SPACING); + printer.lineSpacing = GetFontAttribute(fontId, FONTATTR_LINE_SPACING); printer.unk = 0; printer.fgColor = color[1]; printer.bgColor = color[0]; @@ -1992,9 +1992,9 @@ void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 left printer.lineSpacing = lineSpacing; printer.unk = 0; - printer.fgColor = GetFontAttribute(fontId, 5); - printer.bgColor = GetFontAttribute(fontId, 6); - printer.shadowColor = GetFontAttribute(fontId, 7); + printer.fgColor = GetFontAttribute(fontId, FONTATTR_COLOR_FOREGROUND); + printer.bgColor = GetFontAttribute(fontId, FONTATTR_COLOR_BACKGROUND); + printer.shadowColor = GetFontAttribute(fontId, FONTATTR_COLOR_SHADOW); AddTextPrinter(&printer, speed, callback); } diff --git a/src/menu_specialized.c b/src/menu_specialized.c index c9d895e19310..a1abe4fcdf39 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -203,7 +203,7 @@ static const struct ListMenuTemplate sMoveRelearnerMovesListTemplate = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -268,7 +268,7 @@ static void MailboxMenu_ItemPrintFunc(u8 windowId, u32 itemId, u8 y) length = StringLength(buffer); if (length < PLAYER_NAME_LENGTH - 1) ConvertInternationalString(buffer, LANGUAGE_JAPANESE); - AddTextPrinterParameterized4(windowId, 1, 8, y, 0, 0, sPlayerNameTextColors, -1, buffer); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 8, y, 0, 0, sPlayerNameTextColors, -1, buffer); } u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page) @@ -296,7 +296,7 @@ u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page) gMultiuseListMenuTemplate.cursorShadowPal = 3; gMultiuseListMenuTemplate.moveCursorFunc = MailboxMenu_MoveCursorFunc; gMultiuseListMenuTemplate.itemPrintFunc = MailboxMenu_ItemPrintFunc; - gMultiuseListMenuTemplate.fontId = 1; + gMultiuseListMenuTemplate.fontId = FONT_NORMAL; gMultiuseListMenuTemplate.cursorKind = 0; gMultiuseListMenuTemplate.lettersSpacing = 0; gMultiuseListMenuTemplate.itemVerticalPadding = 0; @@ -739,19 +739,19 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) FillWindowPixelBuffer(0, PIXEL_FILL(1)); str = gText_MoveRelearnerBattleMoves; - x = GetStringCenterAlignXOffset(1, str, 0x80); - AddTextPrinterParameterized(0, 1, str, x, 1, TEXT_SPEED_FF, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 0x80); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 1, TEXT_SPEED_FF, NULL); str = gText_MoveRelearnerPP; - AddTextPrinterParameterized(0, 1, str, 4, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x29, TEXT_SPEED_FF, NULL); str = gText_MoveRelearnerPower; - x = GetStringRightAlignXOffset(1, str, 0x6A); - AddTextPrinterParameterized(0, 1, str, x, 0x19, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x6A); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x19, TEXT_SPEED_FF, NULL); str = gText_MoveRelearnerAccuracy; - x = GetStringRightAlignXOffset(1, str, 0x6A); - AddTextPrinterParameterized(0, 1, str, x, 0x29, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x6A); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x29, TEXT_SPEED_FF, NULL); if (chosenMove == LIST_CANCEL) { CopyWindowToVram(0, 2); @@ -759,11 +759,11 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) } move = &gBattleMoves[chosenMove]; str = gTypeNames[move->type]; - AddTextPrinterParameterized(0, 1, str, 4, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x19, TEXT_SPEED_FF, NULL); - x = 4 + GetStringWidth(1, gText_MoveRelearnerPP, 0); + x = 4 + GetStringWidth(FONT_NORMAL, gText_MoveRelearnerPP, 0); ConvertIntToDecimalStringN(buffer, move->pp, STR_CONV_MODE_LEFT_ALIGN, 2); - AddTextPrinterParameterized(0, 1, buffer, x, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, buffer, x, 0x29, TEXT_SPEED_FF, NULL); if (move->power < 2) { @@ -774,7 +774,7 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) ConvertIntToDecimalStringN(buffer, move->power, STR_CONV_MODE_LEFT_ALIGN, 3); str = buffer; } - AddTextPrinterParameterized(0, 1, str, 0x6A, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x19, TEXT_SPEED_FF, NULL); if (move->accuracy == 0) { @@ -785,10 +785,10 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) ConvertIntToDecimalStringN(buffer, move->accuracy, STR_CONV_MODE_LEFT_ALIGN, 3); str = buffer; } - AddTextPrinterParameterized(0, 1, str, 0x6A, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x29, TEXT_SPEED_FF, NULL); str = gMoveDescriptionPointers[chosenMove - 1]; - AddTextPrinterParameterized(0, 7, str, 0, 0x41, 0, NULL); + AddTextPrinterParameterized(0, FONT_NARROW, str, 0, 0x41, 0, NULL); } static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) @@ -800,16 +800,16 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) MoveRelearnerShowHideHearts(chosenMove); FillWindowPixelBuffer(1, PIXEL_FILL(1)); str = gText_MoveRelearnerContestMovesTitle; - x = GetStringCenterAlignXOffset(1, str, 0x80); - AddTextPrinterParameterized(1, 1, str, x, 1, TEXT_SPEED_FF, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 0x80); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 1, TEXT_SPEED_FF, NULL); str = gText_MoveRelearnerAppeal; - x = GetStringRightAlignXOffset(1, str, 0x5C); - AddTextPrinterParameterized(1, 1, str, x, 0x19, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x5C); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x19, TEXT_SPEED_FF, NULL); str = gText_MoveRelearnerJam; - x = GetStringRightAlignXOffset(1, str, 0x5C); - AddTextPrinterParameterized(1, 1, str, x, 0x29, TEXT_SPEED_FF, NULL); + x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x5C); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x29, TEXT_SPEED_FF, NULL); if (chosenMove == MENU_NOTHING_CHOSEN) { @@ -819,10 +819,10 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) move = &gContestMoves[chosenMove]; str = gContestMoveTypeTextPointers[move->contestCategory]; - AddTextPrinterParameterized(1, 1, str, 4, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, 4, 0x19, TEXT_SPEED_FF, NULL); str = gContestEffectDescriptionPointers[move->effect]; - AddTextPrinterParameterized(1, 7, str, 0, 0x41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NARROW, str, 0, 0x41, TEXT_SPEED_FF, NULL); CopyWindowToVram(1, 2); } @@ -842,7 +842,7 @@ void MoveRelearnerPrintText(u8 *str) FillWindowPixelBuffer(3, PIXEL_FILL(1)); gTextFlags.canABSpeedUpPrint = TRUE; speed = GetPlayerTextSpeedDelay(); - AddTextPrinterParameterized2(3, 1, str, speed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, 3); + AddTextPrinterParameterized2(3, FONT_NORMAL, str, speed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, 3); } bool16 MoveRelearnerRunTextPrinters(void) @@ -1512,7 +1512,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg { AddTextPrinterParameterized3(windowId, - 1, + FONT_NORMAL, 0, 15 * i, color, @@ -1521,7 +1521,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg StringCopy(text, (statsDiff[i] >= 0) ? gText_Plus : gText_Dash); AddTextPrinterParameterized3(windowId, - 1, + FONT_NORMAL, 56, 15 * i, color, @@ -1534,7 +1534,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg ConvertIntToDecimalStringN(text, abs(statsDiff[i]), STR_CONV_MODE_LEFT_ALIGN, 2); AddTextPrinterParameterized3(windowId, - 1, + FONT_NORMAL, 56 + x, 15 * i, color, @@ -1576,7 +1576,7 @@ void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 s x = 6 * (4 - numDigits); AddTextPrinterParameterized3(windowId, - 1, + FONT_NORMAL, 0, 15 * i, color, @@ -1584,7 +1584,7 @@ void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 s sLvlUpStatStrings[i]); AddTextPrinterParameterized3(windowId, - 1, + FONT_NORMAL, 56 + x, 15 * i, color, diff --git a/src/money.c b/src/money.c index 6213f2dd0084..db571939a862 100644 --- a/src/money.c +++ b/src/money.c @@ -149,7 +149,7 @@ void PrintMoneyAmount(u8 windowId, u8 x, u8 y, int amount, u8 speed) *(txtPtr++) = 0x77; StringExpandPlaceholders(txtPtr, gText_PokedollarVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, speed, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, x, y, speed, NULL); } void PrintMoneyAmountInMoneyBoxWithBorder(u8 windowId, u16 tileStart, u8 pallete, int amount) diff --git a/src/move_relearner.c b/src/move_relearner.c index 1fa947eba537..554f84fe9803 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -766,7 +766,7 @@ static void HideHeartSpritesAndShowTeachMoveText(bool8 onlyHideSprites) { StringExpandPlaceholders(gStringVar4, gText_TeachWhichMoveToPkmn); FillWindowPixelBuffer(3, 0x11); - AddTextPrinterParameterized(3, 1, gStringVar4, 0, 1, 0, NULL); + AddTextPrinterParameterized(3, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); } } @@ -836,7 +836,7 @@ static void ShowTeachMoveText(bool8 shouldDoNothingInstead) { StringExpandPlaceholders(gStringVar4, gText_TeachWhichMoveToPkmn); FillWindowPixelBuffer(3, 0x11); - AddTextPrinterParameterized(3, 1, gStringVar4, 0, 1, 0, NULL); + AddTextPrinterParameterized(3, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); } } diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 297883e9cdfd..0bf65a91c803 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -315,5 +315,5 @@ static void PrintMysteryMenuText(u8 windowId, const u8 *text, u8 x, u8 y, s32 sp textColor[2] = 3; FillWindowPixelBuffer(windowId, PIXEL_FILL(textColor[0])); - AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, lineSpacing, textColor, speed, text); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, lineSpacing, textColor, speed, text); } diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index e1236adfd3a3..cd12e163ceba 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -235,7 +235,7 @@ static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = { .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -280,7 +280,7 @@ static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -301,7 +301,7 @@ static const struct ListMenuTemplate sListMenu_ReceiveToss = { .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -322,7 +322,7 @@ static const struct ListMenuTemplate sListMenu_ReceiveSend = { .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -343,7 +343,7 @@ static const struct ListMenuTemplate sListMenu_Receive = { .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = 0, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0 }; @@ -490,8 +490,8 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) options = gJPText_DecideStop; } - AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); - AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); + AddTextPrinterParameterized4(0, FONT_NORMAL, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); + AddTextPrinterParameterized4(0, FONT_SMALL, GetStringRightAlignXOffset(FONT_SMALL, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); CopyWindowToVram(0, 2); PutWindowTilemap(0); } @@ -537,7 +537,7 @@ void AddTextPrinterToWindow1(const u8 *str) { StringExpandPlaceholders(gStringVar4, str); FillWindowPixelBuffer(1, 0x11); - AddTextPrinterParameterized4(1, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(1, 0x001, 0xF); PutWindowTilemap(1); CopyWindowToVram(1, 3); @@ -669,7 +669,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c else *windowId = AddWindow(&sWindowTemplate_YesNoMsg); FillWindowPixelBuffer(*windowId, 0x11); - AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); CopyWindowToVram(*windowId, 2); PutWindowTilemap(*windowId); @@ -726,7 +726,7 @@ static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotTos StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews); *windowId = AddWindow(&sWindowTemplate_GiftSelect); FillWindowPixelBuffer(*windowId, 0x11); - AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); + AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); CopyWindowToVram(*windowId, 2); PutWindowTilemap(*windowId); diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 0e1c11520ad5..400367b920e4 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -424,25 +424,25 @@ static void DrawCardWindow(u8 whichWindow) { // Print card title/subtitle s32 x; - AddTextPrinterParameterized3(windowId, 3, 0, 1, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->titleText); - x = 160 - GetStringWidth(3, sWonderCardData->subtitleText, GetFontAttribute(3, FONTATTR_LETTER_SPACING)); + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, 0, 1, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->titleText); + x = 160 - GetStringWidth(FONT_SHORT_COPY_1, sWonderCardData->subtitleText, GetFontAttribute(FONT_SHORT_COPY_1, FONTATTR_LETTER_SPACING)); if (x < 0) x = 0; - AddTextPrinterParameterized3(windowId, 3, x, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->subtitleText); + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, x, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->subtitleText); // Print id number if (sWonderCardData->card.idNumber != 0) - AddTextPrinterParameterized3(windowId, 1, 166, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->idNumberText); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, 166, 17, sCard_TextColorTable[sWonderCardData->gfx->titleTextPal], 0, sWonderCardData->idNumberText); break; } case CARD_WIN_BODY: // Print body text for (; i < WONDER_CARD_BODY_TEXT_LINES; i++) - AddTextPrinterParameterized3(windowId, 3, 0, 16 * i + 2, sCard_TextColorTable[sWonderCardData->gfx->bodyTextPal], 0, sWonderCardData->bodyText[i]); + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, 0, 16 * i + 2, sCard_TextColorTable[sWonderCardData->gfx->bodyTextPal], 0, sWonderCardData->bodyText[i]); break; case CARD_WIN_FOOTER: // Print footer line 1 - AddTextPrinterParameterized3(windowId, 3, 0, + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, 0, sCard_FooterTextOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->footerLine1Text); @@ -452,7 +452,7 @@ static void DrawCardWindow(u8 whichWindow) { // Print gift text // Odd that CARD_TYPE_STAMP is not ignored, it has empty text for this - AddTextPrinterParameterized3(windowId, 3, 0, + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, 0, 16 + sCard_FooterTextOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->giftText); @@ -461,19 +461,19 @@ static void DrawCardWindow(u8 whichWindow) { s32 x = 0; s32 y = sCard_FooterTextOffsets[sWonderCardData->card.type] + 16; - s32 spacing = GetFontAttribute(3, FONTATTR_LETTER_SPACING); + s32 spacing = GetFontAttribute(FONT_SHORT_COPY_1, FONTATTR_LETTER_SPACING); for (; i < sWonderCardData->statFooterWidth; i++) { // Print stat text - AddTextPrinterParameterized3(windowId, 3, x, y, sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->statTextData[i].statText); + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, x, y, sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->statTextData[i].statText); if (sWonderCardData->statTextData[i].statNumberText[0] != EOS) { // Print stat number - x += GetStringWidth(3, sWonderCardData->statTextData[i].statText, spacing); - AddTextPrinterParameterized3(windowId, 3, x, y, + x += GetStringWidth(FONT_SHORT_COPY_1, sWonderCardData->statTextData[i].statText, spacing); + AddTextPrinterParameterized3(windowId, FONT_SHORT_COPY_1, x, y, sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->statTextData[i].statNumberText); - x += GetStringWidth(3, sWonderCardData->statTextData[i].statNumberText, spacing) + sWonderCardData->statTextData[i].width; + x += GetStringWidth(FONT_SHORT_COPY_1, sWonderCardData->statTextData[i].statNumberText, spacing) + sWonderCardData->statTextData[i].width; } } } @@ -893,14 +893,14 @@ static void DrawNewsWindows(void) FillWindowPixelBuffer(sWonderNewsData->windowIds[NEWS_WIN_BODY], 0); // Print title text - x = (224 - GetStringWidth(3, sWonderNewsData->titleText, GetFontAttribute(3, FONTATTR_LETTER_SPACING))) / 2; + x = (224 - GetStringWidth(FONT_SHORT_COPY_1, sWonderNewsData->titleText, GetFontAttribute(FONT_SHORT_COPY_1, FONTATTR_LETTER_SPACING))) / 2; if (x < 0) x = 0; - AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 3, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], FONT_SHORT_COPY_1, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); // Print body text for (; i < WONDER_NEWS_BODY_TEXT_LINES; i++) - AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], 3, 0, + AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], FONT_SHORT_COPY_1, 0, 16 * i + 2, sNews_TextColorTable[sWonderNewsData->gfx->bodyTextPal], 0, sWonderNewsData->bodyText[i]); diff --git a/src/naming_screen.c b/src/naming_screen.c index f6558921b567..65629215ca0f 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -740,7 +740,7 @@ static void DisplaySentToPCMessage(void) StringExpandPlaceholders(gStringVar4, sTransferredToPCMessages[stringToDisplay]); DrawDialogueFrame(0, 0); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); CopyWindowToVram(0, 3); } @@ -1714,7 +1714,7 @@ static void HandleDpadMovement(struct Task *task) static void DrawNormalTextEntryBox(void) { FillWindowPixelBuffer(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], PIXEL_FILL(1)); - AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], 1, sNamingScreen->template->title, 8, 1, 0, 0); + AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], FONT_NORMAL, sNamingScreen->template->title, 8, 1, 0, 0); PutWindowTilemap(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX]); } @@ -1725,7 +1725,7 @@ static void DrawMonTextEntryBox(void) StringCopy(buffer, gSpeciesNames[sNamingScreen->monSpecies]); StringAppendN(buffer, sNamingScreen->template->title, 15); FillWindowPixelBuffer(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], PIXEL_FILL(1)); - AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], 1, buffer, 8, 1, 0, 0); + AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], FONT_NORMAL, buffer, 8, 1, 0, 0); PutWindowTilemap(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX]); } @@ -1781,7 +1781,7 @@ static void DrawGenderIcon(void) StringCopy(text, gText_FemaleSymbol); isFemale = TRUE; } - AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], 1, 0x68, 1, sGenderColors[isFemale], -1, text); + AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, 0x68, 1, sGenderColors[isFemale], -1, text); } } @@ -1921,7 +1921,7 @@ static void DrawTextEntry(void) temp[1] = gText_ExpandedPlaceholder_Empty[0]; extraWidth = (IsWideLetter(temp[0]) == TRUE) ? 2 : 0; - AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY], 1, temp, i * 8 + x + extraWidth, 1, 0xFF, NULL); + AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, temp, i * 8 + x + extraWidth, 1, 0xFF, NULL); } TryDrawGenderIcon(); @@ -1964,7 +1964,7 @@ static void PrintKeyboardKeys(u8 window, u8 page) FillWindowPixelBuffer(window, sFillValues[page]); for (i = 0; i < KBROW_COUNT; i++) - AddTextPrinterParameterized3(window, 1, 0, i * 16 + 1, sKeyboardTextColors[page], 0, sNamingScreenKeyboardText[page][i]); + AddTextPrinterParameterized3(window, FONT_NORMAL, 0, i * 16 + 1, sKeyboardTextColors[page], 0, sNamingScreenKeyboardText[page][i]); PutWindowTilemap(window); } @@ -2010,7 +2010,7 @@ static void PrintControls(void) const u8 color[3] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; FillWindowPixelBuffer(sNamingScreen->windows[WIN_BANNER], PIXEL_FILL(15)); - AddTextPrinterParameterized3(sNamingScreen->windows[WIN_BANNER], 0, 2, 1, color, 0, gText_MoveOkBack); + AddTextPrinterParameterized3(sNamingScreen->windows[WIN_BANNER], FONT_SMALL, 2, 1, color, 0, gText_MoveOkBack); PutWindowTilemap(sNamingScreen->windows[WIN_BANNER]); CopyWindowToVram(sNamingScreen->windows[WIN_BANNER], 3); } diff --git a/src/option_menu.c b/src/option_menu.c index 0174b69db70c..d96ed1ecfae3 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -400,7 +400,7 @@ static void DrawOptionMenuChoice(const u8 *text, u8 x, u8 y, u8 style) } dst[i] = EOS; - AddTextPrinterParameterized(WIN_OPTIONS, 1, dst, x, y + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, dst, x, y + 1, TEXT_SPEED_FF, NULL); } static u8 TextSpeed_ProcessInput(u8 selection) @@ -438,15 +438,15 @@ static void TextSpeed_DrawChoices(u8 selection) DrawOptionMenuChoice(gText_TextSpeedSlow, 104, YPOS_TEXTSPEED, styles[0]); - widthSlow = GetStringWidth(1, gText_TextSpeedSlow, 0); - widthMid = GetStringWidth(1, gText_TextSpeedMid, 0); - widthFast = GetStringWidth(1, gText_TextSpeedFast, 0); + widthSlow = GetStringWidth(FONT_NORMAL, gText_TextSpeedSlow, 0); + widthMid = GetStringWidth(FONT_NORMAL, gText_TextSpeedMid, 0); + widthFast = GetStringWidth(FONT_NORMAL, gText_TextSpeedFast, 0); widthMid -= 94; xMid = (widthSlow - widthMid - widthFast) / 2 + 104; DrawOptionMenuChoice(gText_TextSpeedMid, xMid, YPOS_TEXTSPEED, styles[1]); - DrawOptionMenuChoice(gText_TextSpeedFast, GetStringRightAlignXOffset(1, gText_TextSpeedFast, 198), YPOS_TEXTSPEED, styles[2]); + DrawOptionMenuChoice(gText_TextSpeedFast, GetStringRightAlignXOffset(FONT_NORMAL, gText_TextSpeedFast, 198), YPOS_TEXTSPEED, styles[2]); } static u8 BattleScene_ProcessInput(u8 selection) @@ -469,7 +469,7 @@ static void BattleScene_DrawChoices(u8 selection) styles[selection] = 1; DrawOptionMenuChoice(gText_BattleSceneOn, 104, YPOS_BATTLESCENE, styles[0]); - DrawOptionMenuChoice(gText_BattleSceneOff, GetStringRightAlignXOffset(1, gText_BattleSceneOff, 198), YPOS_BATTLESCENE, styles[1]); + DrawOptionMenuChoice(gText_BattleSceneOff, GetStringRightAlignXOffset(FONT_NORMAL, gText_BattleSceneOff, 198), YPOS_BATTLESCENE, styles[1]); } static u8 BattleStyle_ProcessInput(u8 selection) @@ -492,7 +492,7 @@ static void BattleStyle_DrawChoices(u8 selection) styles[selection] = 1; DrawOptionMenuChoice(gText_BattleStyleShift, 104, YPOS_BATTLESTYLE, styles[0]); - DrawOptionMenuChoice(gText_BattleStyleSet, GetStringRightAlignXOffset(1, gText_BattleStyleSet, 198), YPOS_BATTLESTYLE, styles[1]); + DrawOptionMenuChoice(gText_BattleStyleSet, GetStringRightAlignXOffset(FONT_NORMAL, gText_BattleStyleSet, 198), YPOS_BATTLESTYLE, styles[1]); } static u8 Sound_ProcessInput(u8 selection) @@ -516,7 +516,7 @@ static void Sound_DrawChoices(u8 selection) styles[selection] = 1; DrawOptionMenuChoice(gText_SoundMono, 104, YPOS_SOUND, styles[0]); - DrawOptionMenuChoice(gText_SoundStereo, GetStringRightAlignXOffset(1, gText_SoundStereo, 198), YPOS_SOUND, styles[1]); + DrawOptionMenuChoice(gText_SoundStereo, GetStringRightAlignXOffset(FONT_NORMAL, gText_SoundStereo, 198), YPOS_SOUND, styles[1]); } static u8 FrameType_ProcessInput(u8 selection) @@ -612,21 +612,21 @@ static void ButtonMode_DrawChoices(u8 selection) DrawOptionMenuChoice(gText_ButtonTypeNormal, 104, YPOS_BUTTONMODE, styles[0]); - widthNormal = GetStringWidth(1, gText_ButtonTypeNormal, 0); - widthLR = GetStringWidth(1, gText_ButtonTypeLR, 0); - widthLA = GetStringWidth(1, gText_ButtonTypeLEqualsA, 0); + widthNormal = GetStringWidth(FONT_NORMAL, gText_ButtonTypeNormal, 0); + widthLR = GetStringWidth(FONT_NORMAL, gText_ButtonTypeLR, 0); + widthLA = GetStringWidth(FONT_NORMAL, gText_ButtonTypeLEqualsA, 0); widthLR -= 94; xLR = (widthNormal - widthLR - widthLA) / 2 + 104; DrawOptionMenuChoice(gText_ButtonTypeLR, xLR, YPOS_BUTTONMODE, styles[1]); - DrawOptionMenuChoice(gText_ButtonTypeLEqualsA, GetStringRightAlignXOffset(1, gText_ButtonTypeLEqualsA, 198), YPOS_BUTTONMODE, styles[2]); + DrawOptionMenuChoice(gText_ButtonTypeLEqualsA, GetStringRightAlignXOffset(FONT_NORMAL, gText_ButtonTypeLEqualsA, 198), YPOS_BUTTONMODE, styles[2]); } static void DrawTextOption(void) { FillWindowPixelBuffer(WIN_TEXT_OPTION, PIXEL_FILL(1)); - AddTextPrinterParameterized(WIN_TEXT_OPTION, 1, gText_Option, 8, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_TEXT_OPTION, FONT_NORMAL, gText_Option, 8, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(WIN_TEXT_OPTION, 3); } @@ -637,7 +637,7 @@ static void DrawOptionMenuTexts(void) FillWindowPixelBuffer(WIN_OPTIONS, PIXEL_FILL(1)); for (i = 0; i < MENUITEM_COUNT; i++) { - AddTextPrinterParameterized(WIN_OPTIONS, 1, sOptionMenuItemsNames[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, sOptionMenuItemsNames[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); } CopyWindowToVram(WIN_OPTIONS, 3); } diff --git a/src/party_menu.c b/src/party_menu.c index 95a4852db6e0..2074073ef07c 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2035,8 +2035,8 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) { confirmWindowId = AddWindow(&sConfirmButtonWindowTemplate); FillWindowPixelBuffer(confirmWindowId, PIXEL_FILL(0)); - mainOffset = GetStringCenterAlignXOffset(0, gMenuText_Confirm, 48); - AddTextPrinterParameterized4(confirmWindowId, 0, mainOffset, 1, 0, 0, sFontColorTable[0], -1, gMenuText_Confirm); + mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gMenuText_Confirm, 48); + AddTextPrinterParameterized4(confirmWindowId, FONT_SMALL, mainOffset, 1, 0, 0, sFontColorTable[0], -1, gMenuText_Confirm); PutWindowTilemap(confirmWindowId); CopyWindowToVram(confirmWindowId, 2); cancelWindowId = AddWindow(&sMultiCancelButtonWindowTemplate); @@ -2052,13 +2052,13 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) // Branches are functionally identical. Second branch is never reached, Spin Trade wasnt fully implemented if (gPartyMenu.menuType != PARTY_MENU_TYPE_SPIN_TRADE) { - mainOffset = GetStringCenterAlignXOffset(0, gText_Cancel, 48); - AddTextPrinterParameterized3(cancelWindowId, 0, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel); + mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gText_Cancel, 48); + AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel); } else { - mainOffset = GetStringCenterAlignXOffset(0, gText_Cancel2, 48); - AddTextPrinterParameterized3(cancelWindowId, 0, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel2); + mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gText_Cancel2, 48); + AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel2); } PutWindowTilemap(cancelWindowId); CopyWindowToVram(cancelWindowId, 2); @@ -2205,7 +2205,7 @@ static void LoadPartyBoxPalette(struct PartyMenuBox *menuBox, u8 palFlags) static void DisplayPartyPokemonBarDetail(u8 windowId, const u8 *str, u8 color, const u8 *align) { - AddTextPrinterParameterized3(windowId, 0, align[0], align[1], sFontColorTable[color], 0, str); + AddTextPrinterParameterized3(windowId, FONT_SMALL, align[0], align[1], sFontColorTable[color], 0, str); } static void DisplayPartyPokemonNickname(struct Pokemon *mon, struct PartyMenuBox *menuBox, u8 c) @@ -2366,7 +2366,7 @@ static void DisplayPartyPokemonDescriptionText(u8 stringID, struct PartyMenuBox menuBox->infoRects->blitFunc(menuBox->windowId, menuBox->infoRects->descTextLeft >> 3, menuBox->infoRects->descTextTop >> 3, width, height, TRUE); } if (c != 2) - AddTextPrinterParameterized3(menuBox->windowId, 1, menuBox->infoRects->descTextLeft, menuBox->infoRects->descTextTop, sFontColorTable[0], 0, sDescriptionStringTable[stringID]); + AddTextPrinterParameterized3(menuBox->windowId, FONT_NORMAL, menuBox->infoRects->descTextLeft, menuBox->infoRects->descTextTop, sFontColorTable[0], 0, sDescriptionStringTable[stringID]); } static void PartyMenuRemoveWindow(u8 *ptr) @@ -2421,7 +2421,7 @@ void DisplayPartyMenuStdMessage(u32 stringId) } DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x4F, 0xD); StringExpandPlaceholders(gStringVar4, sActionStringTable[stringId]); - AddTextPrinterParameterized(*windowPtr, 1, gStringVar4, 0, 1, 0, 0); + AddTextPrinterParameterized(*windowPtr, FONT_NORMAL, gStringVar4, 0, 1, 0, 0); ScheduleBgCopyTilemapToVram(2); } } @@ -2449,7 +2449,7 @@ static u8 DisplaySelectionWindow(u8 windowType) { struct WindowTemplate window; u8 cursorDimension; - u8 fontAttribute; + u8 letterSpacing; u8 i; switch (windowType) @@ -2472,13 +2472,13 @@ static u8 DisplaySelectionWindow(u8 windowType) DrawStdFrameWithCustomTileAndPalette(sPartyMenuInternal->windowId[0], FALSE, 0x4F, 13); if (windowType == SELECTWINDOW_MOVES) return sPartyMenuInternal->windowId[0]; - cursorDimension = GetMenuCursorDimensionByFont(1, 0); - fontAttribute = GetFontAttribute(1, 2); + cursorDimension = GetMenuCursorDimensionByFont(FONT_NORMAL, 0); + letterSpacing = GetFontAttribute(FONT_NORMAL, FONTATTR_LETTER_SPACING); for (i = 0; i < sPartyMenuInternal->numActions; i++) { u8 fontColorsId = (sPartyMenuInternal->actions[i] >= MENU_FIELD_MOVES) ? 4 : 3; - AddTextPrinterParameterized4(sPartyMenuInternal->windowId[0], 1, cursorDimension, (i * 16) + 1, fontAttribute, 0, sFontColorTable[fontColorsId], 0, sCursorOptions[sPartyMenuInternal->actions[i]].text); + AddTextPrinterParameterized4(sPartyMenuInternal->windowId[0], FONT_NORMAL, cursorDimension, (i * 16) + 1, letterSpacing, 0, sFontColorTable[fontColorsId], 0, sCursorOptions[sPartyMenuInternal->actions[i]].text); } InitMenuInUpperLeftCorner(sPartyMenuInternal->windowId[0], sPartyMenuInternal->numActions, 0, 1); @@ -2491,7 +2491,7 @@ static void PartyMenuPrintText(const u8 *text) { DrawStdFrameWithCustomTileAndPalette(6, FALSE, 0x4F, 13); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(6, 1, text, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); + AddTextPrinterParameterized2(6, FONT_NORMAL, text, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); } static void PartyMenuDisplayYesNoMenu(void) @@ -4498,7 +4498,7 @@ static void ShowMoveSelectWindow(u8 slot) { u8 i; u8 moveCount = 0; - u8 fontId = 1; + u8 fontId = FONT_NORMAL; u8 windowId = DisplaySelectionWindow(SELECTWINDOW_MOVES); u16 move; diff --git a/src/player_pc.c b/src/player_pc.c index 3b37b02192cc..b83ecdaba7c7 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -291,7 +291,7 @@ static const struct ListMenuTemplate sListMenuTemplate_ItemStorage = .lettersSpacing = FALSE, .itemVerticalPadding = 0, .scrollMultiple = FALSE, - .fontId = 7 + .fontId = FONT_NARROW }; static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMPC_WIN_COUNT] = @@ -519,7 +519,7 @@ static void InitItemStorageMenu(u8 taskId, u8 var) static void ItemStorageMenuPrint(const u8 *textPtr) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, textPtr, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, textPtr, 0, 1, 0, 0); } static void ItemStorageMenuProcessInput(u8 taskId) @@ -691,7 +691,7 @@ static void Mailbox_DrawMailboxMenu(u8 taskId) { u8 windowId = MailboxMenu_AddWindow(MAILBOXWIN_TITLE); MailboxMenu_AddWindow(MAILBOXWIN_LIST); - AddTextPrinterParameterized(windowId, 1, gText_Mailbox, GetStringCenterAlignXOffset(1, gText_Mailbox, 0x40), 1, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_Mailbox, GetStringCenterAlignXOffset(FONT_NORMAL, gText_Mailbox, 0x40), 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].tListTaskId = MailboxMenu_CreateList(&gPlayerPCItemPageInfo); MailboxMenu_AddScrollArrows(&gPlayerPCItemPageInfo); @@ -1033,7 +1033,7 @@ static void ItemStorage_PrintMenuItem(u8 windowId, u32 id, u8 yOffset) } ConvertIntToDecimalStringN(gStringVar1, gSaveBlock1Ptr->pcItems[id].quantity, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, 7, gStringVar4, GetStringRightAlignXOffset(7, gStringVar4, 104), yOffset, 0xFF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, gStringVar4, GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 104), yOffset, 0xFF, NULL); } } @@ -1049,7 +1049,7 @@ static void ItemStorage_PrintDescription(s32 id) description = ItemStorage_GetMessage(MSG_GO_BACK_TO_PREV); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(windowId, 1, description, 0, 1, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, description, 0, 1, 0, NULL); } static void ItemStorage_AddScrollIndicator(void) @@ -1080,9 +1080,9 @@ static void ItemStorage_DrawSwapArrow(u8 y, u8 b, u8 speed) { u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_LIST]; if (b == 0xFF) - FillWindowPixelRect(windowId, PIXEL_FILL(1), 0, y, GetMenuCursorDimensionByFont(1, 0), GetMenuCursorDimensionByFont(1, 1)); + FillWindowPixelRect(windowId, PIXEL_FILL(1), 0, y, GetMenuCursorDimensionByFont(FONT_NORMAL, 0), GetMenuCursorDimensionByFont(FONT_NORMAL, 1)); else - AddTextPrinterParameterized4(windowId, 1, 0, y, 0, 0, sSwapArrowTextColors, speed, gText_SelectorArrow2); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, y, 0, 0, sSwapArrowTextColors, speed, gText_SelectorArrow2); } static void ItemStorage_DrawItemIcon(u16 itemId) @@ -1142,8 +1142,8 @@ static void ItemStorage_CreateListMenu(u8 taskId) text = gText_TossItem; if (!toss) text = gText_WithdrawItem; - x = GetStringCenterAlignXOffset(1, text, 104); - AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMPC_WIN_TITLE], 1, text, x, 1, 0, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, text, 104); + AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMPC_WIN_TITLE], FONT_NORMAL, text, x, 1, 0, NULL); CopyWindowToVram(sItemStorageMenu->windowIds[ITEMPC_WIN_ICON], 2); ItemStorage_CompactList(); ItemStorage_CompactCursor(); @@ -1199,7 +1199,7 @@ static void ItemStorage_PrintMessage(const u8 *string) u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_MESSAGE]; FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, string); - AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); } // Process input while on the item storage's item list @@ -1338,7 +1338,7 @@ static void ItemStorage_PrintItemQuantity(u8 windowId, u16 value, u32 mode, u8 x { ConvertIntToDecimalStringN(gStringVar1, value, mode, n); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 48), y, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 48), y, 0, NULL); } // Start an item Withdraw/Toss diff --git a/src/pokeblock.c b/src/pokeblock.c index 89c2bc962277..30107e9d54bb 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -443,7 +443,7 @@ static const struct ListMenuTemplate sPokeblockListMenuTemplate = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = LIST_MULTIPLE_SCROLL_DPAD, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 1 }; @@ -696,7 +696,7 @@ static void HandleInitWindows(void) static void PrintOnPokeblockWindow(u8 windowId, const u8 *string, s32 x) { - AddTextPrinterParameterized4(windowId, 1, x, 1, 0, 0, sTextColor, 0, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, 1, 0, 0, sTextColor, 0, string); } static void DrawPokeblockMenuTitleText(void) @@ -704,7 +704,7 @@ static void DrawPokeblockMenuTitleText(void) u8 i; const u8 *itemName = ItemId_GetName(ITEM_POKEBLOCK_CASE); - PrintOnPokeblockWindow(WIN_TITLE, itemName, GetStringCenterAlignXOffset(1, itemName, 0x48)); + PrintOnPokeblockWindow(WIN_TITLE, itemName, GetStringCenterAlignXOffset(FONT_NORMAL, itemName, 0x48)); PrintOnPokeblockWindow(WIN_SPICY, gText_Spicy, 0); PrintOnPokeblockWindow(WIN_DRY, gText_Dry, 0); @@ -732,7 +732,7 @@ static void UpdatePokeblockList(void) sPokeblockMenu->items[i].id = LIST_CANCEL; gMultiuseListMenuTemplate = sPokeblockListMenuTemplate; - gMultiuseListMenuTemplate.fontId = 7; + gMultiuseListMenuTemplate.fontId = FONT_NARROW; gMultiuseListMenuTemplate.totalItems = sPokeblockMenu->itemsNo; gMultiuseListMenuTemplate.items = sPokeblockMenu->items; gMultiuseListMenuTemplate.maxShowed = sPokeblockMenu->maxShowed; @@ -1208,7 +1208,7 @@ static void PokeblockAction_Toss(u8 taskId) ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); StringCopy(gStringVar1, gPokeblockNames[gSaveBlock1Ptr->pokeblocks[gSpecialVar_ItemId].color]); StringExpandPlaceholders(gStringVar4, gText_ThrowAwayVar1); - DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, CreateTossPokeblockYesNoMenu); + DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, FONT_NORMAL, GetPlayerTextSpeedDelay(), gStringVar4, CreateTossPokeblockYesNoMenu); } static void CreateTossPokeblockYesNoMenu(u8 taskId) @@ -1219,7 +1219,7 @@ static void CreateTossPokeblockYesNoMenu(u8 taskId) static void TossedPokeblockMessage(u8 taskId) { StringExpandPlaceholders(gStringVar4, gText_Var1ThrownAway); - DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, 1, GetPlayerTextSpeedDelay(), gStringVar4, TossPokeblock); + DisplayMessageAndContinueTask(taskId, WIN_TOSS_MSG, 10, 13, FONT_NORMAL, GetPlayerTextSpeedDelay(), gStringVar4, TossPokeblock); } static void TossPokeblock(u8 taskId) diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index a4395d760a49..1472c514b3cf 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -874,7 +874,7 @@ static void Task_PrintAtePokeblockMessage(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_Var1DisdainfullyAteVar2); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(0, 1, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); gTasks[taskId].func = Task_WaitForAtePokeblockMessage; } diff --git a/src/pokedex.c b/src/pokedex.c index d56b301833fa..8a85762436e1 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2427,7 +2427,7 @@ static void CreateMonDexNum(u16 entryNum, u8 left, u8 top, u16 unused) text[2] = CHAR_0 + dexNum / 100; text[3] = CHAR_0 + (dexNum % 100) / 10; text[4] = CHAR_0 + (dexNum % 100) % 10; - PrintMonDexNumAndName(0, 7, text, left, top); + PrintMonDexNumAndName(0, FONT_NARROW, text, left, top); } static void CreateCaughtBall(bool16 owned, u8 x, u8 y, u16 unused) @@ -2447,7 +2447,7 @@ static u8 CreateMonName(u16 num, u8 left, u8 top) str = gSpeciesNames[num]; else str = sText_TenDashes; - PrintMonDexNumAndName(0, 7, str, left, top); + PrintMonDexNumAndName(0, FONT_NARROW, str, left, top); return StringLength(str); } @@ -3167,7 +3167,7 @@ static void PrintInfoScreenText(const u8* str, u8 left, u8 top) color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(0, 1, left, top, 0, 0, color, -1, str); + AddTextPrinterParameterized4(0, FONT_NORMAL, left, top, 0, 0, color, -1, str); } #define tScrolling data[0] @@ -3752,7 +3752,7 @@ static void Task_LoadSizeScreen(u8 taskId) StringCopy(string, gText_SizeComparedTo); StringAppend(string, gSaveBlock2Ptr->playerName); - PrintInfoScreenText(string, GetStringCenterAlignXOffset(1, string, 0xF0), 0x79); + PrintInfoScreenText(string, GetStringCenterAlignXOffset(FONT_NORMAL, string, 0xF0), 0x79); gMain.state++; } break; @@ -4100,7 +4100,7 @@ static void PrintMonInfo(u32 num, u32 value, u32 owned, u32 newEntry) const u8 *description; if (newEntry) - PrintInfoScreenText(gText_PokedexRegistration, GetStringCenterAlignXOffset(1, gText_PokedexRegistration, 0xF0), 0); + PrintInfoScreenText(gText_PokedexRegistration, GetStringCenterAlignXOffset(FONT_NORMAL, gText_PokedexRegistration, 0xF0), 0); if (value == 0) value = NationalToHoennOrder(num); else @@ -4139,7 +4139,7 @@ static void PrintMonInfo(u32 num, u32 value, u32 owned, u32 newEntry) description = gPokedexEntries[num].description; else description = gExpandedPlaceholder_PokedexDescription; - PrintInfoScreenText(description, GetStringCenterAlignXOffset(1, description, 0xF0), 0x5F); + PrintInfoScreenText(description, GetStringCenterAlignXOffset(FONT_NORMAL, description, 0xF0), 0x5F); } static void PrintMonHeight(u16 height, u8 left, u8 top) @@ -4474,7 +4474,7 @@ static void PrintInfoSubMenuText(u8 windowId, const u8 *str, u8 left, u8 top) color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(windowId, 1, left, top, 0, 0, color, -1, str); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, left, top, 0, 0, color, -1, str); } static void UnusedPrintNum(u8 windowId, u16 num, u8 left, u8 top) @@ -4781,7 +4781,7 @@ static void PrintSearchText(const u8 *str, u32 x, u32 y) color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_DARK_GRAY; - AddTextPrinterParameterized4(0, 1, x, y, 0, 0, color, -1, str); + AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 0, 0, color, -1, str); } static void ClearSearchMenuRect(u32 x, u32 y, u32 width, u32 height) diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index ab86ee09fe0f..c95a86a41af4 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3313,7 +3313,7 @@ static void Msg_WantToPlayAgain(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(1, 8, 20, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, gText_WantToPlayAgain2, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_WantToPlayAgain2, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->mainState++; break; @@ -3340,7 +3340,7 @@ static void Msg_SavingDontTurnOff(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 7, 26, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, gText_SavingDontTurnOffPower, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->mainState++; break; @@ -3383,7 +3383,7 @@ static void Msg_SomeoneDroppedOut(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, gText_SomeoneDroppedOut2, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SomeoneDroppedOut2, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->mainState++; break; @@ -3409,7 +3409,7 @@ static void Msg_CommunicationStandby(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(7, 10, 16, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, gText_CommunicationStandby4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_CommunicationStandby4, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->mainState++; break; @@ -3487,7 +3487,7 @@ static void PrintPrizeMessage(u16 itemId, u16 quantity) DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, sPokemonJumpGfx->itemQuantityStr); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_AwesomeWonF701F700); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->fanfare = MUS_LEVEL_UP; sPokemonJumpGfx->msgWindowState = 0; @@ -3500,7 +3500,7 @@ static void PrintPrizeFilledBagMessage(u16 itemId) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_FilledStorageSpace2); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; @@ -3513,7 +3513,7 @@ static void PrintNoRoomForPrizeMessage(u16 itemId) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_CantHoldMore); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 9, 22, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 1, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; @@ -3634,8 +3634,8 @@ static void PrintScoreSuffixes(void) PutWindowTilemap(WIN_TIMES); FillWindowPixelBuffer(WIN_POINTS, 0); FillWindowPixelBuffer(WIN_TIMES, 0); - AddTextPrinterParameterized3(WIN_POINTS, 0, 0, 1, color, 0, gText_SpacePoints2); - AddTextPrinterParameterized3(WIN_TIMES, 0, 0, 1, color, 0, gText_SpaceTimes3); + AddTextPrinterParameterized3(WIN_POINTS, FONT_SMALL, 0, 1, color, 0, gText_SpacePoints2); + AddTextPrinterParameterized3(WIN_TIMES, FONT_SMALL, 0, 1, color, 0, gText_SpaceTimes3); } // The venusaurs in the background are actually an empty 256x512 bg with 3 pairs of venusaurs on it. @@ -3855,9 +3855,9 @@ static void PrintPokeJumpPlayerName(int multiplayerId, u8 bgColor, u8 fgColor, u u8 colors[3] = {bgColor, fgColor, shadow}; FillWindowPixelBuffer(sPokemonJumpGfx->nameWindowIds[multiplayerId], 0); - x = 64 - GetStringWidth(1, GetPokeJumpPlayerName(multiplayerId), -1); + x = 64 - GetStringWidth(FONT_NORMAL, GetPokeJumpPlayerName(multiplayerId), -1); x /= 2; - AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], 1, x, 1, colors, -1, GetPokeJumpPlayerName(multiplayerId)); + AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], FONT_NORMAL, x, 1, colors, -1, GetPokeJumpPlayerName(multiplayerId)); CopyWindowToVram(sPokemonJumpGfx->nameWindowIds[multiplayerId], 2); } @@ -4162,10 +4162,10 @@ static void Task_ShowPokemonJumpRecords(u8 taskId) { case 0: window = sWindowTemplate_Records; - width = GetStringWidth(1, gText_PkmnJumpRecords, 0); + width = GetStringWidth(FONT_NORMAL, gText_PkmnJumpRecords, 0); for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) { - widthCurr = GetStringWidth(1, sRecordsTexts[i], 0) + 38; + widthCurr = GetStringWidth(FONT_NORMAL, sRecordsTexts[i], 0) + 38; if (widthCurr > width) width = widthCurr; } @@ -4217,14 +4217,14 @@ static void PrintRecordsText(u16 windowId, int width) LoadUserWindowBorderGfx_(windowId, 0x21D, 0xD0); DrawTextBorderOuter(windowId, 0x21D, 0xD); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(windowId, 1, gText_PkmnJumpRecords, GetStringCenterAlignXOffset(1, gText_PkmnJumpRecords, width * 8), 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_PkmnJumpRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_PkmnJumpRecords, width * 8), 1, TEXT_SPEED_FF, NULL); for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) { - AddTextPrinterParameterized(windowId, 1, sRecordsTexts[i], 0, 25 + (i * 16), TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, 25 + (i * 16), TEXT_SPEED_FF, NULL); ConvertIntToDecimalStringN(gStringVar1, recordNums[i], STR_CONV_MODE_LEFT_ALIGN, 5); TruncateToFirstWordOnly(gStringVar1); - x = (width * 8) - GetStringWidth(1, gStringVar1, 0); - AddTextPrinterParameterized(windowId, 1, gStringVar1, x, 25 + (i * 16), TEXT_SPEED_FF, NULL); + x = (width * 8) - GetStringWidth(FONT_NORMAL, gStringVar1, 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, 25 + (i * 16), TEXT_SPEED_FF, NULL); } PutWindowTilemap(windowId); } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index e18a6db76b8a..61ded6a0002d 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1358,7 +1358,7 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero txtColor[0] = zero2; txtColor[1] = TEXT_DYNAMIC_COLOR_6; txtColor[2] = TEXT_DYNAMIC_COLOR_5; - AddTextPrinterParameterized4(windowId, 1, 0, 1, 0, 0, txtColor, -1, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 1, 0, 0, txtColor, -1, string); tileBytesToBuffer = bytesToBuffer; if (tileBytesToBuffer > 6u) @@ -1402,7 +1402,7 @@ static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgC txtColor[0] = bgColor; txtColor[1] = fgColor; txtColor[2] = shadowColor; - AddTextPrinterParameterized4(windowId, 1, 0, 2, 0, 0, txtColor, -1, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, txtColor, -1, string); CpuCopy16(tileData1, dst, tileSize); CpuCopy16(tileData2, dst + offset, tileSize); RemoveWindow(windowId); @@ -1561,7 +1561,7 @@ static void Task_PCMainMenu(u8 taskId) LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); CopyWindowToVram(0, 3); CopyWindowToVram(task->tWindowId, 3); task->tState++; @@ -1585,7 +1585,7 @@ static void Task_PCMainMenu(u8 taskId) { task->tSelectedOption = task->tNextOption; FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); } break; case MENU_B_PRESSED: @@ -1601,14 +1601,14 @@ static void Task_PCMainMenu(u8 taskId) { // Can't withdraw FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gText_PartyFull, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PartyFull, 0, NULL, 2, 1, 3); task->tState = STATE_ERROR_MSG; } else if (task->tInput == OPTION_DEPOSIT && CountPartyMons() == 1) { // Can't deposit FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, gText_JustOnePkmn, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_JustOnePkmn, 0, NULL, 2, 1, 3); task->tState = STATE_ERROR_MSG; } else @@ -1626,7 +1626,7 @@ static void Task_PCMainMenu(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON)) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_UP)) @@ -1636,7 +1636,7 @@ static void Task_PCMainMenu(u8 taskId) Menu_MoveCursor(-1); task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_DOWN)) @@ -1646,7 +1646,7 @@ static void Task_PCMainMenu(u8 taskId) Menu_MoveCursor(1); task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); task->tState = STATE_HANDLE_INPUT; } break; @@ -1950,14 +1950,14 @@ static void ChooseBoxMenu_PrintInfo(void) FillWindowPixelBuffer(windowId, PIXEL_FILL(4)); // Print box name - center = GetStringCenterAlignXOffset(1, boxName, 64); - AddTextPrinterParameterized3(windowId, 1, center, 1, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, boxName); + center = GetStringCenterAlignXOffset(FONT_NORMAL, boxName, 64); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 1, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, boxName); // Print #/30 for number of PokĂ©mon in the box ConvertIntToDecimalStringN(numBoxMonsText, numInBox, STR_CONV_MODE_RIGHT_ALIGN, 2); StringAppend(numBoxMonsText, sText_OutOf30); - center = GetStringCenterAlignXOffset(1, numBoxMonsText, 64); - AddTextPrinterParameterized3(windowId, 1, center, 17, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, numBoxMonsText); + center = GetStringCenterAlignXOffset(FONT_NORMAL, numBoxMonsText, 64); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 17, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, numBoxMonsText); winTileData = GetWindowAttribute(windowId, WINDOW_TILE_DATA); CpuCopy32((void *)winTileData, (void *)OBJ_VRAM0 + 0x100 + (GetSpriteTileStartByTag(sChooseBoxMenu->tileTag) * 32), 0x400); @@ -4005,17 +4005,17 @@ static void PrintDisplayMonInfo(void) FillWindowPixelBuffer(0, PIXEL_FILL(1)); if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - AddTextPrinterParameterized(0, 1, sStorage->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sStorage->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 0, sStorage->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); } else { - AddTextPrinterParameterized(0, 0, sStorage->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 1, sStorage->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sStorage->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, 2, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); } CopyWindowToVram(0, 2); @@ -4319,7 +4319,7 @@ static void PrintMessage(u8 id) DynamicPlaceholderTextUtil_ExpandPlaceholders(sStorage->messageText, sMessages[id].text); FillWindowPixelBuffer(1, PIXEL_FILL(1)); - AddTextPrinterParameterized(1, 1, sStorage->messageText, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); CopyWindowToVram(1, 2); @@ -5635,7 +5635,7 @@ static void CycleBoxTitleColor(void) static s16 GetBoxTitleBaseX(const u8 *string) { - return DISPLAY_WIDTH - 64 - GetStringWidth(1, string, 0) / 2; + return DISPLAY_WIDTH - 64 - GetStringWidth(FONT_NORMAL, string, 0) / 2; } @@ -9203,7 +9203,7 @@ static void PrintItemDescription(void) description = ItemId_GetDescription(sStorage->displayMonItemId); FillWindowPixelBuffer(2, PIXEL_FILL(1)); - AddTextPrinterParameterized5(2, 1, description, 4, 0, 0, NULL, 0, 1); + AddTextPrinterParameterized5(2, FONT_NORMAL, description, 4, 0, 0, NULL, 0, 1); } static void InitItemInfoWindow(void) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index f6371b088f40..e0ee5974cdb5 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -2700,7 +2700,7 @@ static void ResetWindows(void) static void PrintTextOnWindow(u8 windowId, const u8 *string, u8 x, u8 y, u8 lineSpacing, u8 colorId) { - AddTextPrinterParameterized4(windowId, 1, x, y, 0, lineSpacing, sTextColors[colorId], 0, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, 0, lineSpacing, sTextColors[colorId], 0, string); } static void PrintMonInfo(void) @@ -2803,21 +2803,21 @@ static void PrintPageNamesAndStats(void) PrintTextOnWindow(PSS_LABEL_WINDOW_BATTLE_MOVES_TITLE, gText_BattleMoves, 2, 1, 0, 1); PrintTextOnWindow(PSS_LABEL_WINDOW_CONTEST_MOVES_TITLE, gText_ContestMoves, 2, 1, 0, 1); - stringXPos = GetStringRightAlignXOffset(1, gText_Cancel2, 62); + stringXPos = GetStringRightAlignXOffset(FONT_NORMAL, gText_Cancel2, 62); iconXPos = stringXPos - 16; if (iconXPos < 0) iconXPos = 0; PrintAOrBButtonIcon(PSS_LABEL_WINDOW_PROMPT_CANCEL, FALSE, iconXPos); PrintTextOnWindow(PSS_LABEL_WINDOW_PROMPT_CANCEL, gText_Cancel2, stringXPos, 1, 0, 0); - stringXPos = GetStringRightAlignXOffset(1, gText_Info, 62); + stringXPos = GetStringRightAlignXOffset(FONT_NORMAL, gText_Info, 62); iconXPos = stringXPos - 16; if (iconXPos < 0) iconXPos = 0; PrintAOrBButtonIcon(PSS_LABEL_WINDOW_PROMPT_INFO, FALSE, iconXPos); PrintTextOnWindow(PSS_LABEL_WINDOW_PROMPT_INFO, gText_Info, stringXPos, 1, 0, 0); - stringXPos = GetStringRightAlignXOffset(1, gText_Switch, 62); + stringXPos = GetStringRightAlignXOffset(FONT_NORMAL, gText_Switch, 62); iconXPos = stringXPos - 16; if (iconXPos < 0) iconXPos = 0; @@ -2826,17 +2826,17 @@ static void PrintPageNamesAndStats(void) PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_INFO_RENTAL, gText_RentalPkmn, 0, 1, 0, 1); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_INFO_TYPE, gText_TypeSlash, 0, 1, 0, 0); - statsXPos = 6 + GetStringCenterAlignXOffset(1, gText_HP4, 42); + statsXPos = 6 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_HP4, 42); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_LEFT, gText_HP4, statsXPos, 1, 0, 1); - statsXPos = 6 + GetStringCenterAlignXOffset(1, gText_Attack3, 42); + statsXPos = 6 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_Attack3, 42); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_LEFT, gText_Attack3, statsXPos, 17, 0, 1); - statsXPos = 6 + GetStringCenterAlignXOffset(1, gText_Defense3, 42); + statsXPos = 6 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_Defense3, 42); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_LEFT, gText_Defense3, statsXPos, 33, 0, 1); - statsXPos = 2 + GetStringCenterAlignXOffset(1, gText_SpAtk4, 36); + statsXPos = 2 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_SpAtk4, 36); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_RIGHT, gText_SpAtk4, statsXPos, 1, 0, 1); - statsXPos = 2 + GetStringCenterAlignXOffset(1, gText_SpDef4, 36); + statsXPos = 2 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_SpDef4, 36); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_RIGHT, gText_SpDef4, statsXPos, 17, 0, 1); - statsXPos = 2 + GetStringCenterAlignXOffset(1, gText_Speed2, 36); + statsXPos = 2 + GetStringCenterAlignXOffset(FONT_NORMAL, gText_Speed2, 36); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATS_RIGHT, gText_Speed2, statsXPos, 33, 0, 1); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_EXP, gText_ExpPoints, 6, 1, 0, 1); PrintTextOnWindow(PSS_LABEL_WINDOW_POKEMON_SKILLS_EXP, gText_NextLv, 6, 17, 0, 1); @@ -3045,7 +3045,7 @@ static void PrintMonOTName(void) { windowId = AddWindowFromTemplateList(sPageInfoTemplate, PSS_DATA_WINDOW_INFO_ORIGINAL_TRAINER); PrintTextOnWindow(windowId, gText_OTSlash, 0, 1, 0, 1); - x = GetStringWidth(1, gText_OTSlash, 0); + x = GetStringWidth(FONT_NORMAL, gText_OTSlash, 0); if (sMonSummaryScreen->summary.OTGender == 0) PrintTextOnWindow(windowId, sMonSummaryScreen->summary.OTName, x, 1, 0, 5); else @@ -3059,7 +3059,7 @@ static void PrintMonOTID(void) if (InBattleFactory() != TRUE && InSlateportBattleTent() != TRUE) { ConvertIntToDecimalStringN(StringCopy(gStringVar1, gText_IDNumber2), (u16)sMonSummaryScreen->summary.OTID, STR_CONV_MODE_LEADING_ZEROS, 5); - xPos = GetStringRightAlignXOffset(1, gStringVar1, 56); + xPos = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar1, 56); PrintTextOnWindow(AddWindowFromTemplateList(sPageInfoTemplate, PSS_DATA_WINDOW_INFO_ID), gStringVar1, xPos, 1, 0, 1); } } @@ -3204,7 +3204,7 @@ static bool8 IsInGamePartnerMon(void) static void PrintEggOTName(void) { u32 windowId = AddWindowFromTemplateList(sPageInfoTemplate, PSS_DATA_WINDOW_INFO_ORIGINAL_TRAINER); - u32 width = GetStringWidth(1, gText_OTSlash, 0); + u32 width = GetStringWidth(FONT_NORMAL, gText_OTSlash, 0); PrintTextOnWindow(windowId, gText_OTSlash, 0, 1, 0, 1); PrintTextOnWindow(windowId, gText_FiveMarks, width, 1, 0, 1); } @@ -3214,7 +3214,7 @@ static void PrintEggOTID(void) int x; StringCopy(gStringVar1, gText_IDNumber2); StringAppend(gStringVar1, gText_FiveMarks); - x = GetStringRightAlignXOffset(1, gStringVar1, 56); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar1, 56); PrintTextOnWindow(AddWindowFromTemplateList(sPageInfoTemplate, PSS_DATA_WINDOW_INFO_ID), gStringVar1, x, 1, 0, 1); } @@ -3327,7 +3327,7 @@ static void PrintHeldItemName(void) text = gStringVar1; } - x = GetStringCenterAlignXOffset(1, text, 72) + 6; + x = GetStringCenterAlignXOffset(FONT_NORMAL, text, 72) + 6; PrintTextOnWindow(AddWindowFromTemplateList(sPageSkillsTemplate, PSS_DATA_WINDOW_SKILLS_HELD_ITEM), text, x, 1, 0, 0); } @@ -3347,7 +3347,7 @@ static void PrintRibbonCount(void) text = gStringVar4; } - x = GetStringCenterAlignXOffset(1, text, 70) + 6; + x = GetStringCenterAlignXOffset(FONT_NORMAL, text, 70) + 6; PrintTextOnWindow(AddWindowFromTemplateList(sPageSkillsTemplate, PSS_DATA_WINDOW_SKILLS_RIBBON_COUNT), text, x, 1, 0, 0); } @@ -3407,7 +3407,7 @@ static void PrintExpPointsNextLevel(void) u32 expToNextLevel; ConvertIntToDecimalStringN(gStringVar1, sum->exp, STR_CONV_MODE_RIGHT_ALIGN, 7); - x = GetStringRightAlignXOffset(1, gStringVar1, 42) + 2; + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar1, 42) + 2; PrintTextOnWindow(windowId, gStringVar1, x, 1, 0, 0); if (sum->level < MAX_LEVEL) @@ -3416,7 +3416,7 @@ static void PrintExpPointsNextLevel(void) expToNextLevel = 0; ConvertIntToDecimalStringN(gStringVar1, expToNextLevel, STR_CONV_MODE_RIGHT_ALIGN, 6); - x = GetStringRightAlignXOffset(1, gStringVar1, 42) + 2; + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar1, 42) + 2; PrintTextOnWindow(windowId, gStringVar1, x, 17, 0, 0); } @@ -3509,14 +3509,14 @@ static void PrintMoveNameAndPP(u8 moveIndex) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, sMovesPPLayout); text = gStringVar4; ppState = GetCurrentPpToMaxPpState(summary->pp[moveIndex], pp) + 9; - x = GetStringRightAlignXOffset(1, text, 44); + x = GetStringRightAlignXOffset(FONT_NORMAL, text, 44); } else { PrintTextOnWindow(moveNameWindowId, gText_OneDash, 0, moveIndex * 16 + 1, 0, 1); text = gText_TwoDashes; ppState = 12; - x = GetStringCenterAlignXOffset(1, text, 44); + x = GetStringCenterAlignXOffset(FONT_NORMAL, text, 44); } PrintTextOnWindow(ppValueWindowId, text, x, moveIndex * 16 + 1, 0, ppState); @@ -3669,7 +3669,7 @@ static void PrintNewMoveDetailsOrCancelText(void) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, sMovesPPLayout); - PrintTextOnWindow(windowId2, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 44), 65, 0, 12); + PrintTextOnWindow(windowId2, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 44), 65, 0, 12); } } diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index ef3792063fdb..089a56e263a4 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -572,23 +572,23 @@ bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) if (GetConditionGraphCurrentMonIndex() != GetMonListCount() - 1 || IsConditionMenuSearchMode() == TRUE) { str = GetConditionMonNameBuffer(bufferIndex); - AddTextPrinterParameterized(structPtr->nameGenderWindowId, 1, str, 0, 1, 0, NULL); + AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 1, 0, NULL); } break; case 2: if (IsConditionMenuSearchMode() == TRUE) { str = GetConditionMonLocationBuffer(bufferIndex); - AddTextPrinterParameterized(structPtr->nameGenderWindowId, 1, str, 0, 17, 0, NULL); + AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 17, 0, NULL); text[0] = EXT_CTRL_CODE_BEGIN; text[1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; text[2] = TEXT_COLOR_BLUE; text[3] = TEXT_COLOR_TRANSPARENT; text[4] = TEXT_COLOR_LIGHT_BLUE; StringCopy(text + 5, gText_Number2); - AddTextPrinterParameterized(structPtr->listIndexWindowId, 1, text, 4, 1, 0, NULL); + AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 4, 1, 0, NULL); ConvertIntToDecimalStringN(text + 5, GetConditionMonDataBuffer(), STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(structPtr->listIndexWindowId, 1, text, 28, 1, 0, NULL); + AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 28, 1, 0, NULL); } break; case 3: diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 53987d11dd85..0e5a9b7853aa 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -655,9 +655,9 @@ static void PrintSearchResultListMenuItems(struct PokenavSub8 *searchList) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); *gStringVar1 = EOS; DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar2, gText_NumberF700); - AddTextPrinterParameterized(searchList->winid, 1, gStringVar2, 4, 1, 0xFF, NULL); + AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar2, 4, 1, 0xFF, NULL); ConvertIntToDecimalStringN(gStringVar1, r7, STR_CONV_MODE_RIGHT_ALIGN, 3); - AddTextPrinterParameterized(searchList->winid, 1, gStringVar1, 34, 1, 0xFF, NULL); + AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar1, 34, 1, 0xFF, NULL); CopyWindowToVram(searchList->winid, 2); } @@ -674,7 +674,7 @@ static void InitConditionSearchListMenuTemplate(void) template.listTop = 1; template.maxShowed = 8; template.fillValue = 2; - template.fontId = 1; + template.fontId = FONT_NORMAL; template.listFunc.printMonFunc = PrintSearchMonListItem; template.unk14 = NULL; sub_81C81D4(&sConditionSearchResultBgTemplates[1], &template, 0); @@ -705,7 +705,7 @@ static void PrintSearchMonListItem(struct PokenavMonList * item, u8 * dest) } StringGetEnd10(gStringVar3); - dest = GetStringClearToWidth(dest, 1, gStringVar3, 60); + dest = GetStringClearToWidth(dest, FONT_NORMAL, gStringVar3, 60); switch (gender) { default: @@ -723,5 +723,5 @@ static void PrintSearchMonListItem(struct PokenavMonList * item, u8 * dest) *s++ = CHAR_EXTRA_SYMBOL; *s++ = CHAR_LV_2; ConvertIntToDecimalStringN(s, level, STR_CONV_MODE_LEFT_ALIGN, 3); - GetStringClearToWidth(dest, 1, gStringVar1, 40); + GetStringClearToWidth(dest, FONT_NORMAL, gStringVar1, 40); } diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 88c1773a6d5a..0166cc10c9ee 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -563,7 +563,7 @@ void PrintHelpBarText(u32 textId) struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); DrawHelpBar(structPtr->helpBarWindowId); - AddTextPrinterParameterized3(structPtr->helpBarWindowId, 1, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[textId]); + AddTextPrinterParameterized3(structPtr->helpBarWindowId, FONT_NORMAL, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[textId]); } bool32 WaitForHelpBar(void) diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index 64957995d589..5612ba6cb420 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -413,12 +413,12 @@ void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntries *matchCallEntry, if (className && trainerName) { - u8 *str2 = GetStringClearToWidth(str, 7, className, 69); - GetStringClearToWidth(str2, 7, trainerName, 51); + u8 *str2 = GetStringClearToWidth(str, FONT_NARROW, className, 69); + GetStringClearToWidth(str2, FONT_NARROW, trainerName, 51); } else { - GetStringClearToWidth(str, 7, NULL, 120); + GetStringClearToWidth(str, FONT_NARROW, NULL, 120); } } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index e3f0bb6efce5..727aa3694001 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -874,7 +874,7 @@ static void InitMatchCallPokenavListMenuTemplate(void) template.listTop = 1; template.maxShowed = 8; template.fillValue = 3; - template.fontId = 7; + template.fontId = FONT_NARROW; template.listFunc.unk10_2 = BufferMatchCallNameAndDesc; template.unk14 = TryDrawRematchPokeballIcon; sub_81C81D4(&sMatchCallBgTemplates[2], &template, 2); @@ -986,14 +986,14 @@ static void PrintNumberOfBattles(u16 windowId) static void PrintMatchCallInfoLabel(u16 windowId, const u8 *str, int top) { int y = top * 16 + 1; - AddTextPrinterParameterized(windowId, 7, str, 2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, str, 2, y, TEXT_SPEED_FF, NULL); } static void PrintMatchCallInfoNumber(u16 windowId, const u8 *str, int top) { - int x = GetStringRightAlignXOffset(7, str, 86); + int x = GetStringRightAlignXOffset(FONT_NARROW, str, 86); int y = top * 16 + 1; - AddTextPrinterParameterized(windowId, 7, str, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, str, x, y, TEXT_SPEED_FF, NULL); } static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) @@ -1007,9 +1007,9 @@ static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) else StringCopy(mapName, gText_Unknown); - x = GetStringCenterAlignXOffset(7, mapName, 88); + x = GetStringCenterAlignXOffset(FONT_NARROW, mapName, 88); FillWindowPixelBuffer(state->locWindowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(state->locWindowId, 7, mapName, x, 1, 0, NULL); + AddTextPrinterParameterized(state->locWindowId, FONT_NARROW, mapName, x, 1, 0, NULL); } static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *state) @@ -1023,7 +1023,7 @@ static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *state) if (optionText == MATCH_CALL_OPTION_COUNT) break; - AddTextPrinterParameterized(state->infoBoxWindowId, 7, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SPEED_FF, NULL); } CopyWindowToVram(state->infoBoxWindowId, 2); @@ -1095,7 +1095,7 @@ static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav4Struct *state) static void PrintCallingDots(struct Pokenav4Struct *state) { - AddTextPrinterParameterized(state->msgBoxWindowId, 1, sText_CallingDots, 32, 1, 1, NULL); + AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, sText_CallingDots, 32, 1, 1, NULL); } static bool32 WaitForCallingDotsText(struct Pokenav4Struct *state) @@ -1106,7 +1106,7 @@ static bool32 WaitForCallingDotsText(struct Pokenav4Struct *state) static void PrintTrainerIsCloseBy(struct Pokenav4Struct *state) { - AddTextPrinterParameterized(state->msgBoxWindowId, 1, gText_TrainerCloseBy, 0, 1, 1, NULL); + AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, gText_TrainerCloseBy, 0, 1, 1, NULL); } static bool32 WaitForTrainerIsCloseByText(struct Pokenav4Struct *state) @@ -1120,7 +1120,7 @@ static void PrintMatchCallMessage(struct Pokenav4Struct *state) int index = GetSelectedPokenavListIndex(); const u8 *str = GetMatchCallMessageText(index, &state->unkF); u8 speed = GetPlayerTextSpeedDelay(); - AddTextPrinterParameterized(state->msgBoxWindowId, 1, str, 32, 1, speed, NULL); + AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, str, 32, 1, speed, NULL); } static bool32 WaitForMatchCallMessageText(struct Pokenav4Struct *state) diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index ba495245b65d..dc3be8181302 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -734,7 +734,7 @@ void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) u32 top = (list->listWindow.unkA + 1 + (fieldId * 2)) & 0xF; FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, top << 4, list->listWindow.unk4, 16); - AddTextPrinterParameterized3(list->listWindow.windowId, 7, 2, (top << 4) + 1, colors, -1, fieldNames[fieldId]); + AddTextPrinterParameterized3(list->listWindow.windowId, FONT_NARROW, 2, (top << 4) + 1, colors, -1, fieldNames[fieldId]); CopyWindowRectToVram(list->listWindow.windowId, 2, 0, top << 1, list->listWindow.unk4, 2); } @@ -755,7 +755,7 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok if (str != NULL) { sub_81DB620(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); - AddTextPrinterParameterized(list->listWindow.windowId, 7, str, 2, (r6 << 4) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SPEED_FF, NULL); CopyWindowRectToVram(list->listWindow.windowId, 2, 0, r6 * 2, list->listWindow.unk4, 2); } } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index 5f6c4460a478..ded4c70077e7 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -1133,9 +1133,9 @@ static void PrintCurrentOptionDescription(void) struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); int menuItem = GetCurrentMenuItemId(); const u8 * s = sPageDescriptions[menuItem]; - u32 width = GetStringWidth(1, s, -1); + u32 width = GetStringWidth(FONT_NORMAL, s, -1); FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - AddTextPrinterParameterized3(ptr->optionDescWindowId, 1, (192 - width) / 2, 1, sOptionDescTextColors, 0, s); + AddTextPrinterParameterized3(ptr->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors, 0, s); } // Printed when Ribbons is selected if no PC/party mons have ribbons @@ -1144,9 +1144,9 @@ static void PrintNoRibbonWinners(void) { struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); const u8 * s = gText_NoRibbonWinners; - u32 width = GetStringWidth(1, s, -1); + u32 width = GetStringWidth(FONT_NORMAL, s, -1); FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - AddTextPrinterParameterized3(ptr->optionDescWindowId, 1, (192 - width) / 2, 1, sOptionDescTextColors2, 0, s); + AddTextPrinterParameterized3(ptr->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors2, 0, s); } static bool32 IsDma3ManagerBusyWithBgCopy_(void) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 13a7030da2ee..07788a5d3022 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -535,7 +535,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_CITY_CANFLY: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); - AddTextPrinterParameterized(state->infoWindowId, 7, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); DrawCityMap(state, regionMap->mapSecId, regionMap->posWithinMapSec); CopyWindowToVram(state->infoWindowId, 3); SetCityZoomTextInvisibility(FALSE); @@ -543,7 +543,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_CITY_CANTFLY: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); - AddTextPrinterParameterized(state->infoWindowId, 7, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); FillBgTilemapBufferRect(1, 0x1041, 17, 6, 12, 11, 17); CopyWindowToVram(state->infoWindowId, 3); SetCityZoomTextInvisibility(TRUE); @@ -552,7 +552,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_BATTLE_FRONTIER: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->infoWindowId); - AddTextPrinterParameterized(state->infoWindowId, 7, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); PrintLandmarkNames(state, regionMap->mapSecId, regionMap->posWithinMapSec); CopyWindowToVram(state->infoWindowId, 3); SetCityZoomTextInvisibility(TRUE); @@ -654,7 +654,7 @@ static void PrintLandmarkNames(struct Pokenav5Struct_2 *state, int mapSecId, int break; StringCopyPadded(gStringVar1, landmarkName, CHAR_SPACE, 12); - AddTextPrinterParameterized(state->infoWindowId, 7, gStringVar1, 0, i * 16 + 17, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, gStringVar1, 0, i * 16 + 17, TEXT_SPEED_FF, NULL); i++; } } diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index a8aaafa354d4..3d8611a4a43c 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -673,8 +673,8 @@ static void sub_81D02B0(s32 windowId, s32 val1, s32 val2) ptr = ConvertIntToDecimalStringN(ptr, val1, STR_CONV_MODE_RIGHT_ALIGN, 3); *ptr++ = CHAR_SLASH; ConvertIntToDecimalStringN(ptr, val2, STR_CONV_MODE_RIGHT_ALIGN, 3); - x = GetStringCenterAlignXOffset(1, strbuf, 56); - AddTextPrinterParameterized(windowId, 1, strbuf, x, 1, 0xFF, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, strbuf, 56); + AddTextPrinterParameterized(windowId, FONT_NORMAL, strbuf, x, 1, 0xFF, NULL); } static void InitMonRibbonPokenavListMenuTemplate(void) @@ -689,7 +689,7 @@ static void InitMonRibbonPokenavListMenuTemplate(void) template.listTop = 1; template.maxShowed = 8; template.fillValue = 2; - template.fontId = 1; + template.fontId = FONT_NORMAL; template.listFunc.printMonFunc = BufferRibbonMonInfoText; template.unk14 = NULL; sub_81C81D4(&sMonRibbonListBgTemplates[1], &template, 0); @@ -722,7 +722,7 @@ static void BufferRibbonMonInfoText(struct PokenavMonList * item0, u8 * dest) } StringGetEnd10(gStringVar3); - dest = GetStringClearToWidth(dest, 1, gStringVar3, 60); + dest = GetStringClearToWidth(dest, FONT_NORMAL, gStringVar3, 60); switch (gender) { default: @@ -741,6 +741,6 @@ static void BufferRibbonMonInfoText(struct PokenavMonList * item0, u8 * dest) *s++ = CHAR_EXTRA_SYMBOL; *s++ = CHAR_LV_2; ConvertIntToDecimalStringN(s, level, STR_CONV_MODE_LEFT_ALIGN, 3); - dest = GetStringClearToWidth(dest, 1, gStringVar1, 54); + dest = GetStringClearToWidth(dest, FONT_NORMAL, gStringVar1, 54); ConvertIntToDecimalStringN(dest, item->data, STR_CONV_MODE_RIGHT_ALIGN, 2); } diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index bf1886ed002a..75d9f5bd0076 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -809,7 +809,7 @@ static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_RibbonsF700); FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, 1, 0, 1, color, -1, gStringVar4); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, -1, gStringVar4); CopyWindowToVram(structPtr->ribbonCountWindowId, 2); } @@ -824,7 +824,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) { // Print normal ribbon name/description for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, 1, 0, (i * 16) + 1, color, -1, gRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, -1, gRibbonDescriptionPointers[ribbonId][i]); } else { @@ -840,7 +840,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) // Print gift ribbon name/description ribbonId--; for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, 1, 0, (i * 16) + 1, color, -1, gGiftRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, -1, gGiftRibbonDescriptionPointers[ribbonId][i]); } CopyWindowToVram(structPtr->ribbonCountWindowId, 2); @@ -877,7 +877,7 @@ static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); GetMonNicknameLevelGender(gStringVar3, &level, &gender); - AddTextPrinterParameterized(windowId, 1, gStringVar3, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar3, 0, 1, TEXT_SPEED_FF, NULL); switch (gender) { case MON_MALE: @@ -896,7 +896,7 @@ static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; ConvertIntToDecimalStringN(txtPtr, level, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized(windowId, 1, gStringVar1, 60, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, 60, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(windowId, 2); } @@ -932,8 +932,8 @@ static void PrintRibbonsMonListIndex(struct PokenavSub14 *structPtr) txtPtr = ConvertIntToDecimalStringN(gStringVar1, id, STR_CONV_MODE_RIGHT_ALIGN, 3); *(txtPtr++) = CHAR_SLASH; ConvertIntToDecimalStringN(txtPtr, count, STR_CONV_MODE_RIGHT_ALIGN, 3); - x = GetStringCenterAlignXOffset(1, gStringVar1, 56); - AddTextPrinterParameterized(structPtr->listIdxWindowId, 1, gStringVar1, x, 1, TEXT_SPEED_FF, NULL); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar1, 56); + AddTextPrinterParameterized(structPtr->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(structPtr->listIdxWindowId, 2); } diff --git a/src/record_mixing.c b/src/record_mixing.c index 7ffe6680f527..2197d8542110 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -286,7 +286,7 @@ static void ReceiveExchangePacket(u32 multiplayerId) static void PrintTextOnRecordMixing(const u8 *src) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, src, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, src, 0, 1, 0, NULL); CopyWindowToVram(0, 3); } diff --git a/src/region_map.c b/src/region_map.c index 4e547b5fb354..46539205b45e 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1718,7 +1718,7 @@ void CB2_OpenFlyMap(void) LoadPalette(sRegionMapFramePal, 0x10, 0x20); PutWindowTilemap(2); FillWindowPixelBuffer(2, PIXEL_FILL(0)); - AddTextPrinterParameterized(2, 1, gText_FlyToWhere, 0, 1, 0, NULL); + AddTextPrinterParameterized(2, FONT_NORMAL, gText_FlyToWhere, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); gMain.state++; break; @@ -1784,9 +1784,9 @@ static void DrawFlyDestTextWindow(void) namePrinted = TRUE; ClearStdWindowAndFrameToTransparent(0, FALSE); DrawStdFrameWithCustomTileAndPalette(1, FALSE, 101, 13); - AddTextPrinterParameterized(1, 1, sFlyMap->regionMap.mapSecName, 0, 1, 0, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, sFlyMap->regionMap.mapSecName, 0, 1, 0, NULL); name = sMultiNameFlyDestinations[i].name[sFlyMap->regionMap.posWithinMapSec]; - AddTextPrinterParameterized(1, 1, name, GetStringRightAlignXOffset(1, name, 96), 17, 0, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, name, GetStringRightAlignXOffset(FONT_NORMAL, name, 96), 17, 0, NULL); ScheduleBgCopyTilemapToVram(0); sDrawFlyDestTextWindow = TRUE; } @@ -1805,7 +1805,7 @@ static void DrawFlyDestTextWindow(void) // Window is already drawn, just empty it FillWindowPixelBuffer(0, PIXEL_FILL(1)); } - AddTextPrinterParameterized(0, 1, sFlyMap->regionMap.mapSecName, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sFlyMap->regionMap.mapSecName, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); sDrawFlyDestTextWindow = FALSE; } diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index 5e6fcd436151..5fe1a6013bc0 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -381,14 +381,14 @@ static void PrintTime(u8 windowId, u8 x, u8 y, u16 days, u8 hours, u8 minutes, u ConvertIntToDecimalStringN(gStringVar1, seconds, STR_CONV_MODE_LEADING_ZEROS, 2); dest = StringCopy(dest, gStringVar1); - AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, x, y, TEXT_SPEED_FF, NULL); } static void ShowChooseTimeWindow(u8 windowId, u16 days, u8 hours, u8 minutes, u8 seconds) { DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x214, 0xE); PrintTime(windowId, 0, 1, days, hours, minutes, seconds); - AddTextPrinterParameterized(windowId, 1, gText_Confirm2, 126, 1, 0, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_Confirm2, 126, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); } @@ -563,7 +563,7 @@ static void VBlankCB(void) static void ShowMessage(const u8 *str) { DrawDialogFrameWithCustomTileAndPalette(1, FALSE, 0x200, 0xF); - AddTextPrinterParameterized(1, 1, str, 0, 1, 0, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); } @@ -578,7 +578,7 @@ static void Task_ShowResetRtcPrompt(u8 taskId) case 0: DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x214, 0xE); - AddTextPrinterParameterized(0, 1, gText_PresentTime, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_PresentTime, 0, 1, TEXT_SPEED_FF, 0); PrintTime( 0, 0, @@ -588,7 +588,7 @@ static void Task_ShowResetRtcPrompt(u8 taskId) gLocalTime.minutes, gLocalTime.seconds); - AddTextPrinterParameterized(0, 1, gText_PreviousTime, 0, 33, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_PreviousTime, 0, 33, TEXT_SPEED_FF, 0); PrintTime( 0, 0, diff --git a/src/roulette.c b/src/roulette.c index b6ef1168b29f..29a8f779add9 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1223,7 +1223,7 @@ static void CB2_LoadRoulette(void) SetMultiplierSprite(SELECTION_NONE); DrawGridBackground(SELECTION_NONE); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_ControlsInstruction, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ControlsInstruction, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); gSpriteCoordOffsetX = -60; gSpriteCoordOffsetY = 0; @@ -1294,7 +1294,7 @@ static void Task_AskKeepPlaying(u8 taskId) { DisplayYesNoMenuDefaultYes(); DrawStdWindowFrame(sTextWindowId, 0); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_KeepPlaying, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_KeepPlaying, 0, 1, TEXT_SPEED_FF, 0); CopyWindowToVram(sTextWindowId, 3); DoYesNoFuncWithChoice(taskId, &sYesNoTable_KeepPlaying); } @@ -1806,14 +1806,14 @@ static void Task_PrintSpinResult(u8 taskId) { PlayFanfare(MUS_SLOTS_JACKPOT); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_Jackpot, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_Jackpot, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); } else { PlayFanfare(MUS_SLOTS_WIN); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_ItsAHit, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ItsAHit, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); } break; @@ -1821,7 +1821,7 @@ static void Task_PrintSpinResult(u8 taskId) default: m4aSongNumStart(SE_FAILURE); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_NothingDoing, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NothingDoing, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); break; } @@ -1866,7 +1866,7 @@ static void Task_PrintPayout(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, (sRoulette->minBet * gTasks[taskId].tMultiplier), STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, Roulette_Text_YouveWonXCoins); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); gTasks[taskId].tPayout = (sRoulette->minBet * gTasks[taskId].tMultiplier); gTasks[taskId].data[7] = 0; @@ -1902,7 +1902,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Reached Ball 6, clear board DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_BoardWillBeCleared, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_BoardWillBeCleared, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); StartTaskAfterDelayOrInput(taskId, Task_ClearBoard, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -1910,7 +1910,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Player maxed out coins DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -1924,7 +1924,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Player out of coins DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_NoCoinsLeft, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NoCoinsLeft, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); StartTaskAfterDelayOrInput(taskId, Task_StopPlaying, 60, A_BUTTON | B_BUTTON); } @@ -1949,7 +1949,7 @@ static void Task_ClearBoard(u8 taskId) if (gTasks[taskId].tCoins == MAX_COINS) { DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, 1, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(sTextWindowId, 3); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -3426,7 +3426,7 @@ static void Task_PrintMinBet(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, minBet, STR_CONV_MODE_LEADING_ZEROS, 1); StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_ShowMinBetYesNo; } @@ -3445,7 +3445,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) { // Special rate for Game Corner service day (only at second table) DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, 1, Roulette_Text_SpecialRateTable, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, Roulette_Text_SpecialRateTable, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_PrintMinBet; } @@ -3454,7 +3454,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) // Print minimum bet StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_ShowMinBetYesNo; } @@ -3464,7 +3464,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) // Not enough for minimum bet StringExpandPlaceholders(gStringVar4, Roulette_Text_NotEnoughCoins); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(0, 3); gTasks[taskId].func = Task_NotEnoughForMinBet; gTasks[taskId].tCoins = 0; diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 8f727310cdf9..9dff99bc12ae 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -153,7 +153,7 @@ static void SaveFailedScreenTextPrint(const u8 *text, u8 x, u8 y) color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(sWindowIds[TEXT_WIN_ID], 1, x * 8, y * 8 + 1, 0, 0, color, 0, text); + AddTextPrinterParameterized4(sWindowIds[TEXT_WIN_ID], FONT_NORMAL, x * 8, y * 8 + 1, 0, 0, color, 0, text); } void DoSaveFailedScreen(u8 saveType) diff --git a/src/scrcmd.c b/src/scrcmd.c index 3e3beee59cff..a6223bdf515b 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1310,7 +1310,7 @@ bool8 ScrCmd_messageinstant(struct ScriptContext *ctx) msg = (const u8 *)ctx->data[0]; LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 1); - AddTextPrinterParameterized(0, 1, msg, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, msg, 0, 1, 0, 0); return FALSE; } @@ -1497,7 +1497,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) // in Emerald they are unused and position is calculated below instead StringExpandPlaceholders(gStringVar4, ptr + 6); - width = GetStringWidth(6, gStringVar4, -1) / 8u; + width = GetStringWidth(FONT_BRAILLE, gStringVar4, -1) / 8u; if (width > 28) width = 28; @@ -1532,7 +1532,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) DrawStdWindowFrame(gBrailleWindowId, 0); PutWindowTilemap(gBrailleWindowId); FillWindowPixelBuffer(gBrailleWindowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(gBrailleWindowId, 6, gStringVar4, xText, yText, 0xFF, 0x0); + AddTextPrinterParameterized(gBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, 0xFF, 0x0); CopyWindowToVram(gBrailleWindowId, 3); return FALSE; } diff --git a/src/script_menu.c b/src/script_menu.c index f3317773afe2..f0dccd9f98ac 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -353,22 +353,22 @@ static void CreatePCMultichoice(void) numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, 1, gText_HallOfFame, y, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_LogOff, y, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SPEED_FF, NULL); } else { numChoices = 3; windowId = CreateWindowFromRect(0, 0, width, 6); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, 1, gText_LogOff, y, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SPEED_FF, NULL); } // Change PC name if player has met Lanette if (FlagGet(FLAG_SYS_PC_LANETTE)) - AddTextPrinterParameterized(windowId, 1, gText_LanettesPC, y, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SPEED_FF, NULL); else - AddTextPrinterParameterized(windowId, 1, gText_SomeonesPC, y, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SPEED_FF, NULL); StringExpandPlaceholders(gStringVar4, gText_PlayersPC); PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); @@ -380,7 +380,7 @@ static void CreatePCMultichoice(void) void ScriptMenu_DisplayPCStartupPrompt(void) { sub_819786C(0, TRUE); - AddTextPrinterParameterized2(0, 1, gText_WhichPCShouldBeAccessed, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_WhichPCShouldBeAccessed, 0, NULL, 2, 1, 3); } bool8 ScriptMenu_CreateLilycoveSSTidalMultichoice(void) @@ -414,7 +414,7 @@ static void CreateLilycoveSSTidalMultichoice(void) sLilycoveSSTidalSelections[i] = 0xFF; } - GetFontAttribute(1, FONTATTR_MAX_LETTER_WIDTH); + GetFontAttribute(FONT_NORMAL, FONTATTR_MAX_LETTER_WIDTH); if (gSpecialVar_0x8004 == 0) { @@ -527,7 +527,7 @@ static void CreateLilycoveSSTidalMultichoice(void) { if (sLilycoveSSTidalSelections[i] != 0xFF) { - AddTextPrinterParameterized(windowId, 1, sLilycoveSSTidalDestinations[sLilycoveSSTidalSelections[i]], 8, selectionCount * 16 + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sLilycoveSSTidalDestinations[sLilycoveSSTidalSelections[i]], 8, selectionCount * 16 + 1, TEXT_SPEED_FF, NULL); selectionCount++; } } @@ -645,27 +645,27 @@ static void DrawLinkServicesMultichoiceMenu(u8 multichoiceId) { case MULTI_WIRELESS_NO_BERRY: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sWirelessOptionsNoBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptionsNoBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; case MULTI_CABLE_CLUB_WITH_RECORD_MIX: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sCableClubOptions_WithRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_WithRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; case MULTI_WIRELESS_NO_RECORD: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sWirelessOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; case MULTI_WIRELESS_ALL_SERVICES: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sWirelessOptions_AllServices[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_AllServices[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; case MULTI_WIRELESS_NO_RECORD_BERRY: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sWirelessOptions_NoRecordMixBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMixBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; case MULTI_CABLE_CLUB_NO_RECORD_MIX: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, 1, sCableClubOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); break; } } @@ -688,15 +688,15 @@ static void CreateStartMenuForPokenavTutorial(void) { u8 windowId = CreateWindowFromRect(21, 0, 7, 18); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionPokedex, 8, 9, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionPokemon, 8, 25, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionBag, 8, 41, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionPokenav, 8, 57, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gSaveBlock2Ptr->playerName, 8, 73, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionSave, 8, 89, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionOption, 8, 105, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, 1, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); - sub_81983AC(windowId, 1, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokedex, 8, 9, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokemon, 8, 25, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionBag, 8, 41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokenav, 8, 57, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gSaveBlock2Ptr->playerName, 8, 73, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionSave, 8, 89, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionOption, 8, 105, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); + sub_81983AC(windowId, FONT_NORMAL, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); InitMultichoiceNoWrap(FALSE, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), windowId, MULTI_FORCED_START_MENU); CopyWindowToVram(windowId, 3); } @@ -727,7 +727,7 @@ static int DisplayTextAndGetWidthInternal(const u8 *str) { u8 temp[64]; StringExpandPlaceholders(temp, str); - return GetStringWidth(1, temp, 0); + return GetStringWidth(FONT_NORMAL, temp, 0); } int DisplayTextAndGetWidth(const u8 *str, int prevWidth) diff --git a/src/secret_base.c b/src/secret_base.c index e728f34884c5..12f6df5ab567 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -214,7 +214,7 @@ static const struct ListMenuTemplate sRegistryListMenuTemplate = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, - .fontId = 1, + .fontId = FONT_NORMAL, .cursorKind = 0, }; diff --git a/src/shop.c b/src/shop.c index f4e3fa2d86c1..817146d7859c 100755 --- a/src/shop.c +++ b/src/shop.c @@ -152,7 +152,7 @@ static const struct ListMenuTemplate sShopBuyMenuListTemplate = .lettersSpacing = 0, .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, - .fontId = 7, + .fontId = FONT_NARROW, .cursorKind = 0 }; @@ -576,8 +576,8 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) } StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1); - x = GetStringRightAlignXOffset(7, gStringVar4, 0x78); - AddTextPrinterParameterized4(windowId, 7, x, y, 0, 0, sShopBuyMenuTextColors[1], -1, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 0x78); + AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, 0, 0, sShopBuyMenuTextColors[1], -1, gStringVar4); } } @@ -692,12 +692,12 @@ static void BuyMenuInitWindows(void) static void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet) { - AddTextPrinterParameterized4(windowId, 1, x, y, 0, 0, sShopBuyMenuTextColors[colorSet], speed, text); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, 0, 0, sShopBuyMenuTextColors[colorSet], speed, text); } static void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback) { - DisplayMessageAndContinueTask(taskId, 5, 10, 14, 1, GetPlayerTextSpeedDelay(), text, callback); + DisplayMessageAndContinueTask(taskId, 5, 10, 14, FONT_NORMAL, GetPlayerTextSpeedDelay(), text, callback); ScheduleBgCopyTilemapToVram(0); } diff --git a/src/slot_machine.c b/src/slot_machine.c index af55e0d9b9d4..7d4610273632 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1253,7 +1253,7 @@ static bool8 SlotAction_HandleBetInput(struct Task *task) static bool8 SlotAction_PrintMsg_Need3Coins(struct Task *task) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, gText_YouDontHaveThreeCoins, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouDontHaveThreeCoins, 0, 1, 0, 0); CopyWindowToVram(0, 3); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NEED_3_COINS; return FALSE; @@ -1518,7 +1518,7 @@ static bool8 SlotAction_NoMatches(struct Task *task) static bool8 SlotAction_AskQuit(struct Task *task) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, gText_QuitTheGame, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_QuitTheGame, 0, 1, 0, 0); CopyWindowToVram(0, 3); CreateYesNoMenuParameterized(0x15, 7, 0x214, 0x180, 0xE, 0xF); sSlotMachine->state = SLOT_ACTION_HANDLE_QUIT_INPUT; @@ -1550,7 +1550,7 @@ static bool8 SlotAction_HandleQuitInput(struct Task *task) static bool8 SlotAction_PrintMsg_9999Coins(struct Task *task) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, gText_YouveGot9999Coins, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveGot9999Coins, 0, 1, 0, 0); CopyWindowToVram(0, 3); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_MAX_COINS; return FALSE; @@ -1571,7 +1571,7 @@ static bool8 SlotAction_WaitMsg_9999Coins(struct Task *task) static bool8 SlotAction_PrintMsg_NoMoreCoins(struct Task *task) { DrawDialogueFrame(0, 0); - AddTextPrinterParameterized(0, 1, gText_YouveRunOutOfCoins, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveRunOutOfCoins, 0, 1, 0, 0); CopyWindowToVram(0, 3); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NO_MORE_COINS; return FALSE; @@ -3444,7 +3444,7 @@ static void InfoBox_DrawWindow(struct Task *task) static void InfoBox_AddText(struct Task *task) { - AddTextPrinterParameterized3(1, 1, 2, 5, sColors_ReeltimeHelp, 0, gText_ReelTimeHelp); + AddTextPrinterParameterized3(1, FONT_NORMAL, 2, 5, sColors_ReeltimeHelp, 0, gText_ReelTimeHelp); CopyWindowToVram(1, 3); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(0, 0, 0)); task->tState++; diff --git a/src/start_menu.c b/src/start_menu.c index 59279d6b9fb2..a9d3ce15b1aa 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -386,7 +386,7 @@ static void ShowSafariBallsWindow(void) DrawStdWindowFrame(sSafariBallsWindowId, FALSE); ConvertIntToDecimalStringN(gStringVar1, gNumSafariBalls, STR_CONV_MODE_RIGHT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_SafariBallStock); - AddTextPrinterParameterized(sSafariBallsWindowId, 1, gStringVar4, 0, 1, 0xFF, NULL); + AddTextPrinterParameterized(sSafariBallsWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); CopyWindowToVram(sSafariBallsWindowId, 2); } @@ -401,7 +401,7 @@ static void ShowPyramidFloorWindow(void) DrawStdWindowFrame(sBattlePyramidFloorWindowId, FALSE); StringCopy(gStringVar1, sPyramidFloorNames[gSaveBlock2Ptr->frontier.curChallengeBattleNum]); StringExpandPlaceholders(gStringVar4, gText_BattlePyramidFloor); - AddTextPrinterParameterized(sBattlePyramidFloorWindowId, 1, gStringVar4, 0, 1, 0xFF, NULL); + AddTextPrinterParameterized(sBattlePyramidFloorWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); CopyWindowToVram(sBattlePyramidFloorWindowId, 2); } @@ -433,7 +433,7 @@ static bool32 PrintStartMenuActions(s8 *pIndex, u32 count) else { StringExpandPlaceholders(gStringVar4, sStartMenuItems[sCurrentStartMenuActions[index]].text); - AddTextPrinterParameterized(GetStartMenuWindowId(), 1, gStringVar4, 8, (index << 4) + 9, 0xFF, NULL); + AddTextPrinterParameterized(GetStartMenuWindowId(), FONT_NORMAL, gStringVar4, 8, (index << 4) + 9, 0xFF, NULL); } index++; @@ -482,7 +482,7 @@ static bool32 InitStartMenuStep(void) sInitStartMenuData[0]++; break; case 5: - sStartMenuCursorPos = sub_81983AC(GetStartMenuWindowId(), 1, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); + sStartMenuCursorPos = sub_81983AC(GetStartMenuWindowId(), FONT_NORMAL, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); CopyWindowToVram(GetStartMenuWindowId(), TRUE); return TRUE; } @@ -1238,7 +1238,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) case 0: FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, - 1, + FONT_NORMAL, gText_SavingDontTurnOffPower, TEXT_SPEED_FF, NULL, @@ -1330,38 +1330,38 @@ static void ShowSaveInfoWindow(void) // Print region name yOffset = 1; BufferSaveMenuText(SAVE_MENU_LOCATION, gStringVar4, TEXT_COLOR_GREEN); - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gStringVar4, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, 0, yOffset, 0xFF, NULL); // Print player name yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gText_SavingPlayer, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPlayer, 0, yOffset, 0xFF, NULL); BufferSaveMenuText(SAVE_MENU_NAME, gStringVar4, color); - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 0x70); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); PrintPlayerNameOnWindow(sSaveInfoWindowId, gStringVar4, xOffset, yOffset); // Print badge count yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gText_SavingBadges, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingBadges, 0, yOffset, 0xFF, NULL); BufferSaveMenuText(SAVE_MENU_BADGES, gStringVar4, color); - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gStringVar4, xOffset, yOffset, 0xFF, NULL); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE) { // Print pokedex count yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gText_SavingPokedex, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPokedex, 0, yOffset, 0xFF, NULL); BufferSaveMenuText(SAVE_MENU_CAUGHT, gStringVar4, color); - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gStringVar4, xOffset, yOffset, 0xFF, NULL); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); } // Print play time yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gText_SavingTime, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingTime, 0, yOffset, 0xFF, NULL); BufferSaveMenuText(SAVE_MENU_PLAY_TIME, gStringVar4, color); - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, 1, gStringVar4, xOffset, yOffset, 0xFF, NULL); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); CopyWindowToVram(sSaveInfoWindowId, 2); } diff --git a/src/starter_choose.c b/src/starter_choose.c index d14846130821..942f6027307a 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -480,7 +480,7 @@ static void Task_StarterChoose(u8 taskId) { CreateStarterPokemonLabel(gTasks[taskId].tStarterSelection); DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x2A8, 0xD); - AddTextPrinterParameterized(0, 1, gText_BirchInTrouble, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_BirchInTrouble, 0, 1, 0, NULL); PutWindowTilemap(0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Task_HandleStarterChooseInput; @@ -534,7 +534,7 @@ static void Task_AskConfirmStarter(u8 taskId) { PlayCry1(GetStarterPokemon(gTasks[taskId].tStarterSelection), 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized(0, 1, gText_ConfirmStarterChoice, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_ConfirmStarterChoice, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); CreateYesNoMenu(&sWindowTemplate_ConfirmStarter, 0x2A8, 0xD, 0); gTasks[taskId].func = Task_HandleConfirmStarterInput; @@ -591,11 +591,11 @@ static void CreateStarterPokemonLabel(u8 selection) sStarterLabelWindowId = AddWindow(&winTemplate); FillWindowPixelBuffer(sStarterLabelWindowId, PIXEL_FILL(0)); - width = GetStringCenterAlignXOffset(7, categoryText, 0x68); - AddTextPrinterParameterized3(sStarterLabelWindowId, 7, width, 1, sTextColors, 0, categoryText); + width = GetStringCenterAlignXOffset(FONT_NARROW, categoryText, 0x68); + AddTextPrinterParameterized3(sStarterLabelWindowId, FONT_NARROW, width, 1, sTextColors, 0, categoryText); - width = GetStringCenterAlignXOffset(1, speciesName, 0x68); - AddTextPrinterParameterized3(sStarterLabelWindowId, 1, width, 17, sTextColors, 0, speciesName); + width = GetStringCenterAlignXOffset(FONT_NORMAL, speciesName, 0x68); + AddTextPrinterParameterized3(sStarterLabelWindowId, FONT_NORMAL, width, 17, sTextColors, 0, speciesName); PutWindowTilemap(sStarterLabelWindowId); ScheduleBgCopyTilemapToVram(0); diff --git a/src/strings.c b/src/strings.c index ae39e3d4dea8..3785766ce931 100644 --- a/src/strings.c +++ b/src/strings.c @@ -839,17 +839,17 @@ const u8 gText_B4F[] = _("B4F"); const u8 gText_Rooftop[] = _("ROOFTOP"); const u8 gText_ElevatorNowOn[] = _("Now on:"); const u8 gText_BP[] = _("BP"); -const u8 gText_EnergyPowder50[] = _("ENERGYPOWDER{CLEAR_TO 0x72}{FONT 0}50"); -const u8 gText_EnergyRoot80[] = _("ENERGY ROOT{CLEAR_TO 0x72}{FONT 0}80"); -const u8 gText_HealPowder50[] = _("HEAL POWDER{CLEAR_TO 0x72}{FONT 0}50"); -const u8 gText_RevivalHerb300[] = _("REVIVAL HERB{CLEAR_TO 0x6C}{FONT 0}300"); -const u8 gText_Protein1000[] = _("PROTEIN{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_Iron1000[] = _("IRON{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_Carbos1000[] = _("CARBOS{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_Calcium1000[] = _("CALCIUM{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_Zinc1000[] = _("ZINC{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_HPUp1000[] = _("HP UP{CLEAR_TO 0x63}{FONT 0}1,000"); -const u8 gText_PPUp3000[] = _("PP UP{CLEAR_TO 0x63}{FONT 0}3,000"); +const u8 gText_EnergyPowder50[] = _("ENERGYPOWDER{CLEAR_TO 114}{FONT_SMALL}50"); +const u8 gText_EnergyRoot80[] = _("ENERGY ROOT{CLEAR_TO 114}{FONT_SMALL}80"); +const u8 gText_HealPowder50[] = _("HEAL POWDER{CLEAR_TO 114}{FONT_SMALL}50"); +const u8 gText_RevivalHerb300[] = _("REVIVAL HERB{CLEAR_TO 108}{FONT_SMALL}300"); +const u8 gText_Protein1000[] = _("PROTEIN{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_Iron1000[] = _("IRON{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_Carbos1000[] = _("CARBOS{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_Calcium1000[] = _("CALCIUM{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_Zinc1000[] = _("ZINC{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_HPUp1000[] = _("HP UP{CLEAR_TO 99}{FONT_SMALL}1,000"); +const u8 gText_PPUp3000[] = _("PP UP{CLEAR_TO 99}{FONT_SMALL}3,000"); const u8 gText_RankingHall[] = _("RANKING HALL"); const u8 gText_ExchangeService[] = _("EXCHANGE SERVICE"); const u8 gText_LilycoveCity[] = _("LILYCOVE CITY"); diff --git a/src/trade.c b/src/trade.c index be2091eceb49..4c083c3d7324 100644 --- a/src/trade.c +++ b/src/trade.c @@ -542,7 +542,7 @@ static void CB2_CreateTradeMenu(void) break; case 12: // Create player's name text sprites - xPos = GetStringCenterAlignXOffset(1, gSaveBlock2Ptr->playerName, 120); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 120); for (i = 0; i < GFXTAG_PLAYER_NAME; i++) { temp = sSpriteTemplate_MenuText; @@ -551,7 +551,7 @@ static void CB2_CreateTradeMenu(void) } // Create partner's name text sprites - xPos = GetStringCenterAlignXOffset(1, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); for (i = 0; i < GFXTAG_PARTNER_NAME; i++) { temp = sSpriteTemplate_MenuText; @@ -733,7 +733,7 @@ static void CB2_ReturnToTradeMenu(void) break; case 12: // Create player's name text sprites - xPos = GetStringCenterAlignXOffset(1, gSaveBlock2Ptr->playerName, 120); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 120); for (i = 0; i < GFXTAG_PLAYER_NAME; i++) { temp = sSpriteTemplate_MenuText; @@ -742,7 +742,7 @@ static void CB2_ReturnToTradeMenu(void) } // Create partner's name text sprites - xPos = GetStringCenterAlignXOffset(1, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gLinkPlayers[GetMultiplayerId() ^ 1].name, 120); for (i = 0; i < GFXTAG_PARTNER_NAME; i++) { temp = sSpriteTemplate_MenuText; @@ -1853,9 +1853,9 @@ static void DrawTradeMenuParty(u8 whichParty) gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].x2 = 0; gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].y2 = 0; nameStringWidth = GetMonNicknameWidth(nickname, selectedMonParty, partyIdx); - AddTextPrinterParameterized3((whichParty * 2) + 14, 0, (80 - nameStringWidth) / 2, 4, sTradeTextColors, 0, nickname); + AddTextPrinterParameterized3((whichParty * 2) + 14, FONT_SMALL, (80 - nameStringWidth) / 2, 4, sTradeTextColors, 0, nickname); BufferTradeMonMoves(movesString, selectedMonParty, partyIdx); - AddTextPrinterParameterized4((whichParty * 2) + 15, 1, 0, 0, 0, 0, sTradeTextColors, 0, movesString); + AddTextPrinterParameterized4((whichParty * 2) + 15, FONT_NORMAL, 0, 0, 0, 0, sTradeTextColors, 0, movesString); PutWindowTilemap((whichParty * 2) + 14); CopyWindowToVram((whichParty * 2) + 14, 3); PutWindowTilemap((whichParty * 2) + 15); @@ -1883,7 +1883,7 @@ static u8 GetMonNicknameWidth(u8 *str, u8 whichParty, u8 monIdx) GetMonData(&gEnemyParty[monIdx], MON_DATA_NICKNAME, nickname); StringCopy10(str, nickname); - return GetStringWidth(0, str, GetFontAttribute(0, FONTATTR_LETTER_SPACING)); + return GetStringWidth(FONT_SMALL, str, GetFontAttribute(FONT_SMALL, FONTATTR_LETTER_SPACING)); } static void BufferTradeMonMoves(u8 *str, u8 whichParty, u8 partyIdx) @@ -1928,8 +1928,8 @@ static void PrintMonNicknameForTradeMenu(u8 whichParty, u8 windowId, u8 *nicknam { u8 xPos; windowId += (whichParty * PARTY_SIZE) + 2; - xPos = GetStringCenterAlignXOffset(0, nickname, 64); - AddTextPrinterParameterized3(windowId, 0, xPos, 4, sTradeTextColors, 0, nickname); + xPos = GetStringCenterAlignXOffset(FONT_SMALL, nickname, 64); + AddTextPrinterParameterized3(windowId, FONT_SMALL, xPos, 4, sTradeTextColors, 0, nickname); PutWindowTilemap(windowId); CopyWindowToVram(windowId, 3); } @@ -2155,7 +2155,7 @@ static void DoQueuedActions(void) static void PrintTradeMessage(u8 messageId) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized(0, 1, sTradeMessages[messageId], 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sTradeMessages[messageId], 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(0, 20, 12); PutWindowTilemap(0); CopyWindowToVram(0, 3); @@ -4835,7 +4835,7 @@ void DrawTextOnTradeWindow(u8 windowId, const u8 *str, u8 speed) sTradeData->textColors[0] = TEXT_DYNAMIC_COLOR_6; sTradeData->textColors[1] = TEXT_COLOR_WHITE; sTradeData->textColors[2] = TEXT_COLOR_GREEN; - AddTextPrinterParameterized4(windowId, 1, 0, 2, 0, 0, sTradeData->textColors, speed, str); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, sTradeData->textColors, speed, str); CopyWindowToVram(windowId, 3); } diff --git a/src/trader.c b/src/trader.c index 98b4f464ca51..c65d5ff87b54 100644 --- a/src/trader.c +++ b/src/trader.c @@ -59,15 +59,15 @@ void CreateAvailableDecorationsMenu(u8 taskId) s16 * data = gTasks[taskId].data; struct MauvilleOldManTrader *trader = &gSaveBlock1Ptr->oldMan.trader; struct WindowTemplate windowTemplate = {0, 1, 1, 10, 10, 15, 1}; - s32 windowWidth = GetStringWidth(1, gText_Exit, 0); - s32 fiveMarksWidth = GetStringWidth(1, gText_FiveMarks, 0); + s32 windowWidth = GetStringWidth(FONT_NORMAL, gText_Exit, 0); + s32 fiveMarksWidth = GetStringWidth(FONT_NORMAL, gText_FiveMarks, 0); for (i = 0; i < 4; i++) { s32 curWidth; if (trader->decorations[i] > NUM_DECORATIONS) curWidth = fiveMarksWidth; else - curWidth = GetStringWidth(1, gDecorations[trader->decorations[i]].name, 0); + curWidth = GetStringWidth(FONT_NORMAL, gDecorations[trader->decorations[i]].name, 0); if (curWidth > windowWidth) windowWidth = curWidth; } @@ -77,11 +77,11 @@ void CreateAvailableDecorationsMenu(u8 taskId) for (i = 0; i < 4; i++) { if (trader->decorations[i] > NUM_DECORATIONS) - AddTextPrinterParameterized(data[3], 1, gText_FiveMarks, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, 255, NULL); else - AddTextPrinterParameterized(data[3], 1, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, 255, NULL); } - AddTextPrinterParameterized(data[3], 1, gText_Exit, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 255, NULL); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[3], 5, 0); ScheduleBgCopyTilemapToVram(0); } diff --git a/src/trainer_card.c b/src/trainer_card.c index bad015644ca1..a2c90e867f51 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -497,7 +497,7 @@ static void Task_TrainerCard(u8 taskId) case STATE_WAIT_LINK_PARTNER: SetCloseLinkCallback(); DrawDialogueFrame(0, 1); - AddTextPrinterParameterized(0, 1, gText_WaitingTrainerFinishReading, 0, 1, 255, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_WaitingTrainerFinishReading, 0, 1, 255, 0); CopyWindowToVram(0, 3); sData->mainState = STATE_CLOSE_CARD_LINK; break; @@ -1001,9 +1001,9 @@ static void PrintNameOnCardFront(void) StringCopy(txtPtr, sData->trainerCard.playerName); ConvertInternationalString(txtPtr, sData->language); if (sData->cardType == CARD_TYPE_FRLG) - AddTextPrinterParameterized3(1, 1, 20, 28, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 28, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); else - AddTextPrinterParameterized3(1, 1, 16, 33, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 33, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); } static void PrintIdOnCard(void) @@ -1016,16 +1016,16 @@ static void PrintIdOnCard(void) ConvertIntToDecimalStringN(txtPtr, sData->trainerCard.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5); if (sData->cardType == CARD_TYPE_FRLG) { - xPos = GetStringCenterAlignXOffset(1, buffer, 80) + 132; + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, buffer, 80) + 132; top = 9; } else { - xPos = GetStringCenterAlignXOffset(1, buffer, 96) + 120; + xPos = GetStringCenterAlignXOffset(FONT_NORMAL, buffer, 96) + 120; top = 9; } - AddTextPrinterParameterized3(1, 1, xPos, top, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, xPos, top, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); } static void PrintMoneyOnCard(void) @@ -1034,23 +1034,23 @@ static void PrintMoneyOnCard(void) u8 top; if (!sData->isHoenn) - AddTextPrinterParameterized3(1, 1, 20, 56, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 56, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); else - AddTextPrinterParameterized3(1, 1, 16, 57, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 57, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); ConvertIntToDecimalStringN(gStringVar1, sData->trainerCard.money, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1); if (!sData->isHoenn) { - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 144); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 144); top = 56; } else { - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 128); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 128); top = 57; } - AddTextPrinterParameterized3(1, 1, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); } static u16 GetCaughtMonsCount(void) @@ -1068,21 +1068,21 @@ static void PrintPokedexOnCard(void) if (FlagGet(FLAG_SYS_POKEDEX_GET)) { if (!sData->isHoenn) - AddTextPrinterParameterized3(1, 1, 20, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); else - AddTextPrinterParameterized3(1, 1, 16, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); StringCopy(ConvertIntToDecimalStringN(gStringVar4, sData->trainerCard.caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3), gText_EmptyString6); if (!sData->isHoenn) { - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 144); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 144); top = 72; } else { - xOffset = GetStringRightAlignXOffset(1, gStringVar4, 128); + xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 128); top = 73; } - AddTextPrinterParameterized3(1, 1, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); } } @@ -1096,9 +1096,9 @@ static void PrintTimeOnCard(void) u32 x, y, totalWidth; if (!sData->isHoenn) - AddTextPrinterParameterized3(1, 1, 20, 88, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 88, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); else - AddTextPrinterParameterized3(1, 1, 16, 89, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 89, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); if (sData->isLink) { @@ -1115,7 +1115,7 @@ static void PrintTimeOnCard(void) hours = 999; if (minutes > 59) minutes = 59; - width = GetStringWidth(1, gText_Colon2, 0); + width = GetStringWidth(FONT_NORMAL, gText_Colon2, 0); if (!sData->isHoenn) { @@ -1132,12 +1132,12 @@ static void PrintTimeOnCard(void) FillWindowPixelRect(1, PIXEL_FILL(0), x, y, totalWidth, 15); ConvertIntToDecimalStringN(gStringVar4, hours, STR_CONV_MODE_RIGHT_ALIGN, 3); - AddTextPrinterParameterized3(1, 1, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); x += 18; - AddTextPrinterParameterized3(1, 1, x, y, sTimeColonTextColors[sData->timeColonInvisible], TEXT_SPEED_FF, gText_Colon2); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTimeColonTextColors[sData->timeColonInvisible], TEXT_SPEED_FF, gText_Colon2); x += width; ConvertIntToDecimalStringN(gStringVar4, minutes, STR_CONV_MODE_LEADING_ZEROS, 2); - AddTextPrinterParameterized3(1, 1, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); } static void PrintProfilePhraseOnCard(void) @@ -1147,10 +1147,10 @@ static void PrintProfilePhraseOnCard(void) if (sData->isLink) { - AddTextPrinterParameterized3(1, 1, 8, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[0]); - AddTextPrinterParameterized3(1, 1, GetStringWidth(1, sData->easyChatProfile[0], 0) + 14, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[1]); - AddTextPrinterParameterized3(1, 1, 8, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[2]); - AddTextPrinterParameterized3(1, 1, GetStringWidth(1, sData->easyChatProfile[2], 0) + 14, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[3]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[0]); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[0], 0) + 14, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[1]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[2]); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[2], 0) + 14, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[3]); } } @@ -1168,9 +1168,9 @@ static void BufferNameForCardBack(void) static void PrintNameOnCardBack(void) { if (!sData->isHoenn) - AddTextPrinterParameterized3(1, 1, 136, 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); + AddTextPrinterParameterized3(1, FONT_NORMAL, 136, 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); else - AddTextPrinterParameterized3(1, 1, GetStringRightAlignXOffset(1, sData->textPlayersCard, 216), 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, sData->textPlayersCard, 216), 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); } static const u8 sText_HofTime[] = _("{STR_VAR_1}:{STR_VAR_2}:{STR_VAR_3}"); @@ -1191,8 +1191,8 @@ static void PrintStatOnBackOfCard(u8 top, const u8* statName, u8* stat, const u8 static const u8 xOffsets[] = {8, 16}; static const u8 widths[] = {216, 216}; - AddTextPrinterParameterized3(1, 1, xOffsets[sData->isHoenn], top * 16 + 33, sTrainerCardTextColors, TEXT_SPEED_FF, statName); - AddTextPrinterParameterized3(1, 1, GetStringRightAlignXOffset(1, stat, widths[sData->isHoenn]), top * 16 + 33, color, TEXT_SPEED_FF, stat); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffsets[sData->isHoenn], top * 16 + 33, sTrainerCardTextColors, TEXT_SPEED_FF, statName); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, stat, widths[sData->isHoenn]), top * 16 + 33, color, TEXT_SPEED_FF, stat); } static void PrintHofDebutTimeOnCard(void) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 34fa24f74775..621f81133672 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -590,13 +590,13 @@ void PrintOnTrainerHillRecordsWindow(void) SetUpDataStruct(); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - x = GetStringCenterAlignXOffset(1, gText_TimeBoard, 0xD0); - AddTextPrinterParameterized3(0, 1, x, 2, sRecordWinColors, TEXT_SPEED_FF, gText_TimeBoard); + x = GetStringCenterAlignXOffset(FONT_NORMAL, gText_TimeBoard, 0xD0); + AddTextPrinterParameterized3(0, FONT_NORMAL, x, 2, sRecordWinColors, TEXT_SPEED_FF, gText_TimeBoard); y = 18; for (i = 0; i < 4; i++) { - AddTextPrinterParameterized3(0, 1, 0, y, sRecordWinColors, TEXT_SPEED_FF, sTagMatchStrings[i]); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0, y, sRecordWinColors, TEXT_SPEED_FF, sTagMatchStrings[i]); y += 15; total = GetTimerValue(&gSaveBlock1Ptr->trainerHillTimes[i]); minutes = total / (60 * 60); @@ -608,8 +608,8 @@ void PrintOnTrainerHillRecordsWindow(void) secondsFraction = (total * 168) / 100; ConvertIntToDecimalStringN(gStringVar3, secondsFraction, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(StringCopy(gStringVar4, gText_TimeCleared), gText_XMinYDotZSec); - x = GetStringRightAlignXOffset(1, gStringVar4, 0xD0); - AddTextPrinterParameterized3(0, 1, x, y, sRecordWinColors, TEXT_SPEED_FF, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0xD0); + AddTextPrinterParameterized3(0, FONT_NORMAL, x, y, sRecordWinColors, TEXT_SPEED_FF, gStringVar4); y += 17; } diff --git a/src/union_room.c b/src/union_room.c index 18cb02c33a1e..5196c1cdb2c3 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -3982,7 +3982,7 @@ static void PrintGroupMemberOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlayer * ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x88), y, colorIdx); + PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x88), y, colorIdx); } } @@ -3997,7 +3997,7 @@ static void PrintGroupCandidateOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlaye ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(1, gStringVar4, 0x68), y, colorIdx); + PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x68), y, colorIdx); } } diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 1ca414d7975c..f6fb74f73b5e 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -78,7 +78,7 @@ static void AddTextPrinterForUnionRoomBattle(u8 windowId, const u8 * str, u8 x, s32 letterSpacing = 0; s32 lineSpacing = 1; FillWindowPixelBuffer(windowId, (sTextColors[0] << 4) | sTextColors[0]); - AddTextPrinterParameterized4(windowId, 1, x, y, letterSpacing, lineSpacing, sTextColors, speed, str); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, lineSpacing, sTextColors, speed, str); } static bool32 PrintUnionRoomBattleMessage(s16 * state, const u8 * str, s32 speed) diff --git a/src/union_room_chat.c b/src/union_room_chat.c index cb9b2f6a4b74..d6cc047beb6a 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2740,8 +2740,8 @@ static void AddYesNoMenuAt(u8 left, u8 top, u8 initialCursorPos) { FillWindowPixelBuffer(sDisplay->yesNoMenuWindowId, PIXEL_FILL(1)); PutWindowTilemap(sDisplay->yesNoMenuWindowId); - AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, 1, gText_Yes, 8, 1, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, 1, gText_No, 8, 17, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_Yes, 8, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_No, 8, 17, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(sDisplay->yesNoMenuWindowId, 1, 13); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sDisplay->yesNoMenuWindowId, 2, initialCursorPos); } @@ -2811,7 +2811,7 @@ static void AddStdMessageWindow(int msgId, u16 bg0vofs) DrawTextBorderInner(windowId, 0xA, 2); AddTextPrinterParameterized5( windowId, - 1, + FONT_NORMAL, str, sDisplayStdMessages[msgId].x + 8, sDisplayStdMessages[msgId].y + 8, @@ -2825,7 +2825,7 @@ static void AddStdMessageWindow(int msgId, u16 bg0vofs) DrawTextBorderOuter(windowId, 0xA, 2); AddTextPrinterParameterized5( windowId, - 1, + FONT_NORMAL, str, sDisplayStdMessages[msgId].x, sDisplayStdMessages[msgId].y, @@ -2877,7 +2877,7 @@ static void DrawTextEntryMessage(u16 x, u8 *str, u8 bgColor, u8 fgColor, u8 shad strBuffer[1] = EXT_CTRL_CODE_MIN_LETTER_SPACING; strBuffer[2] = 8; StringCopy(&strBuffer[3], str); - AddTextPrinterParameterized3(1, 2, x * 8, 1, color, TEXT_SPEED_FF, strBuffer); + AddTextPrinterParameterized3(1, FONT_SHORT, x * 8, 1, color, TEXT_SPEED_FF, strBuffer); } static void PrintCurrentKeyboardPage(void) @@ -2912,7 +2912,7 @@ static void PrintCurrentKeyboardPage(void) return; StringCopy(&str[3], sUnionRoomKeyboardText[page][i]); - AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str); } } else @@ -2921,9 +2921,9 @@ static void PrintCurrentKeyboardPage(void) for (i = 0, top = 0; i < UNION_ROOM_KB_ROW_COUNT; i++, top += 12) { str2 = GetRegisteredTextByRow(i); - if (GetStringWidth(0, str2, 0) <= 40) + if (GetStringWidth(FONT_SMALL, str2, 0) <= 40) { - AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str2); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str2); } else { @@ -2932,10 +2932,10 @@ static void PrintCurrentKeyboardPage(void) { length--; StringCopyN_Multibyte(str, str2, length); - } while (GetStringWidth(0, str, 0) > 35); + } while (GetStringWidth(FONT_SMALL, str, 0) > 35); - AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str); - AddTextPrinterParameterized3(2, 0, left + 35, top, color, TEXT_SPEED_FF, sText_Ellipsis); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str); + AddTextPrinterParameterized3(2, FONT_SMALL, left + 35, top, color, TEXT_SPEED_FF, sText_Ellipsis); } } } @@ -2987,8 +2987,8 @@ static void ShowKeyboardSwapMenu(void) { FillWindowPixelBuffer(3, PIXEL_FILL(1)); DrawTextBorderOuter(3, 1, 13); - PrintTextArray(3, 2, 8, 1, 14, 5, sKeyboardPageTitleTexts); - sub_81983AC(3, 2, 0, 1, 14, 5, GetCurrentKeyboardPage()); + PrintTextArray(3, FONT_SHORT, 8, 1, 14, 5, sKeyboardPageTitleTexts); + sub_81983AC(3, FONT_SHORT, 0, 1, 14, 5, GetCurrentKeyboardPage()); PutWindowTilemap(3); } @@ -3006,7 +3006,7 @@ static void PrintChatMessage(u16 row, u8 *str, u8 colorIdx) color[1] = colorIdx * 2 + 2; color[2] = colorIdx * 2 + 3; FillWindowPixelRect(0, PIXEL_FILL(1), 0, row * 15, 168, 15); - AddTextPrinterParameterized3(0, 2, 0, row * 15 + 1, color, TEXT_SPEED_FF, str); + AddTextPrinterParameterized3(0, FONT_SHORT, 0, row * 15 + 1, color, TEXT_SPEED_FF, str); } static void ResetGpuBgState(void) diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 6ebc707e54b1..dcfc27d916f5 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -876,7 +876,7 @@ static void AskUsePokeblock(void) StringCopy(gStringVar4, stringBuffer); FillWindowPixelBuffer(WIN_TEXT, 17); DrawTextBorderOuter(WIN_TEXT, 151, 14); - AddTextPrinterParameterized(WIN_TEXT, 1, gStringVar4, 0, 1, 0, NULL); + AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); PutWindowTilemap(WIN_TEXT); CopyWindowToVram(WIN_TEXT, 3); CreateYesNoMenu(&sUsePokeblockYesNoWinTemplate, 151, 14, 0); @@ -952,7 +952,7 @@ static void PrintWontEatAnymore(void) { FillWindowPixelBuffer(WIN_TEXT, 17); DrawTextBorderOuter(WIN_TEXT, 151, 14); - AddTextPrinterParameterized(WIN_TEXT, 1, gText_WontEatAnymore, 0, 1, 0, NULL); + AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gText_WontEatAnymore, 0, 1, 0, NULL); PutWindowTilemap(WIN_TEXT); CopyWindowToVram(WIN_TEXT, 3); } @@ -966,7 +966,7 @@ static void EraseMenuWindow(void) static void PrintMenuWindowText(const u8 *message) { - AddTextPrinterParameterized(WIN_TEXT, 1, gStringVar4, 0, 1, 0, NULL); + AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); } static void BufferEnhancedStatText(u8 *dest, u8 statId, s16 enhancement) @@ -1389,12 +1389,12 @@ static void UpdateMonInfoText(u16 loadId, bool8 firstPrint) FillWindowPixelBuffer(WIN_NATURE, PIXEL_FILL(0)); if (sMenu->info.curSelection != sMenu->info.numSelections - 1) { - AddTextPrinterParameterized(WIN_NAME, 1, sMenu->monNameStrings[loadId], 0, 1, 0, NULL); + AddTextPrinterParameterized(WIN_NAME, FONT_NORMAL, sMenu->monNameStrings[loadId], 0, 1, 0, NULL); partyIndex = GetPartyIdFromSelectionId(sMenu->info.curSelection); nature = GetNature(&gPlayerParty[partyIndex]); str = StringCopy(sMenu->info.natureText, gText_NatureSlash); str = StringCopy(str, gNatureNamePointers[nature]); - AddTextPrinterParameterized3(WIN_NATURE, 1, 2, 1, sNatureTextColors, 0, sMenu->info.natureText); + AddTextPrinterParameterized3(WIN_NATURE, FONT_NORMAL, 2, 1, sNatureTextColors, 0, sMenu->info.natureText); } if (firstPrint) diff --git a/src/wallclock.c b/src/wallclock.c index 6f9bc02aee8c..407c89c49a9c 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -715,7 +715,7 @@ void CB2_StartWallClock(void) WallClockInit(); - AddTextPrinterParameterized(1, 1, gText_Confirm3, 0, 1, 0, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, gText_Confirm3, 0, 1, 0, NULL); PutWindowTilemap(1); ScheduleBgCopyTilemapToVram(2); } @@ -763,7 +763,7 @@ void CB2_ViewWallClock(void) WallClockInit(); - AddTextPrinterParameterized(1, 1, gText_Cancel4, 0, 1, 0, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, gText_Cancel4, 0, 1, 0, NULL); PutWindowTilemap(1); ScheduleBgCopyTilemapToVram(2); } @@ -828,7 +828,7 @@ static void Task_SetClock_HandleInput(u8 taskId) static void Task_SetClock_AskConfirm(u8 taskId) { DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x250, 0x0d); - AddTextPrinterParameterized(0, 1, gText_IsThisTheCorrectTime, 0, 1, 0, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_IsThisTheCorrectTime, 0, 1, 0, NULL); PutWindowTilemap(0); ScheduleBgCopyTilemapToVram(0); CreateYesNoMenu(&sWindowTemplate_ConfirmYesNo, 0x250, 0x0d, 1); diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 5c5272a44bd1..295eab97fc9f 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -236,12 +236,12 @@ static void PrintHeaderTexts(void) FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(1, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0)); - WCSS_AddTextPrinterParameterized(0, 1, sHeaderTexts[0], GetStringCenterAlignXOffset(1, sHeaderTexts[0], 0xC0), 6, COLORMODE_GREEN); + WCSS_AddTextPrinterParameterized(0, FONT_NORMAL, sHeaderTexts[0], GetStringCenterAlignXOffset(FONT_NORMAL, sHeaderTexts[0], 0xC0), 6, COLORMODE_GREEN); for (i = 0; i < (int)ARRAY_COUNT(*sHeaderTexts) - 1; i++) { - WCSS_AddTextPrinterParameterized(1, 1, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_WHITE_LGRAY); + WCSS_AddTextPrinterParameterized(1, FONT_NORMAL, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_WHITE_LGRAY); } - WCSS_AddTextPrinterParameterized(1, 1, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_RED); + WCSS_AddTextPrinterParameterized(1, FONT_NORMAL, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_RED); PutWindowTilemap(0); CopyWindowToVram(0, 2); PutWindowTilemap(1); @@ -280,9 +280,9 @@ static void Task_WirelessCommunicationScreen(u8 taskId) { ConvertIntToDecimalStringN(gStringVar4, sStatusScreen->groupCounts[i], STR_CONV_MODE_RIGHT_ALIGN, 2); if (i != GROUPTYPE_TOTAL) - WCSS_AddTextPrinterParameterized(2, 1, gStringVar4, 12, 30 * i + 8, COLORMODE_WHITE_LGRAY); + WCSS_AddTextPrinterParameterized(2, FONT_NORMAL, gStringVar4, 12, 30 * i + 8, COLORMODE_WHITE_LGRAY); else - WCSS_AddTextPrinterParameterized(2, 1, gStringVar4, 12, 98, COLORMODE_RED); + WCSS_AddTextPrinterParameterized(2, FONT_NORMAL, gStringVar4, 12, 98, COLORMODE_RED); } PutWindowTilemap(2); CopyWindowToVram(2, 3); From 36039e1b86631bf92c6bb06ee27357a6a40ca4bd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 31 Oct 2021 01:44:18 -0400 Subject: [PATCH 358/762] Convert fonts.s to C --- data/fonts.s | 76 ----- gflib/text.c | 20 +- gflib/text.h | 2 +- .../{bold_japanese.png => japanese_bold.png} | Bin ...font.png => japanese_frlg_female_font.png} | Bin ...e_font.png => japanese_frlg_male_font.png} | Bin .../japanese.png => japanese_normal.png} | Bin .../japanese.png => japanese_short.png} | Bin .../japanese.png => japanese_small.png} | Bin .../{narrow/latin.png => latin_narrow.png} | Bin .../{normal/latin.png => latin_normal.png} | Bin .../{short/latin.png => latin_short.png} | Bin .../{small/latin.png => latin_small.png} | Bin .../latin.png => latin_small_narrow.png} | Bin graphics/fonts/narrow/latin_widths.inc | 32 -- graphics/fonts/normal/latin_widths.inc | 32 -- graphics/fonts/short/japanese_widths.inc | 32 -- graphics/fonts/short/latin_widths.inc | 32 -- graphics/fonts/small/latin_widths.inc | 32 -- graphics/fonts/small_narrow/latin_widths.inc | 32 -- ...nused_japanese_frlg_female_font_widths.inc | 32 -- .../unused_japanese_frlg_male_font_widths.inc | 32 -- graphics_file_rules.mk | 40 +-- include/fonts.h | 19 ++ ld_script.txt | 2 +- src/battle_interface.c | 8 +- src/braille.c | 5 +- src/fonts.c | 292 ++++++++++++++++++ 28 files changed, 336 insertions(+), 384 deletions(-) delete mode 100644 data/fonts.s rename graphics/fonts/{bold_japanese.png => japanese_bold.png} (100%) rename graphics/fonts/{unused_japanese_frlg_female_font.png => japanese_frlg_female_font.png} (100%) rename graphics/fonts/{unused_japanese_frlg_male_font.png => japanese_frlg_male_font.png} (100%) rename graphics/fonts/{normal/japanese.png => japanese_normal.png} (100%) rename graphics/fonts/{short/japanese.png => japanese_short.png} (100%) rename graphics/fonts/{small/japanese.png => japanese_small.png} (100%) rename graphics/fonts/{narrow/latin.png => latin_narrow.png} (100%) rename graphics/fonts/{normal/latin.png => latin_normal.png} (100%) rename graphics/fonts/{short/latin.png => latin_short.png} (100%) rename graphics/fonts/{small/latin.png => latin_small.png} (100%) rename graphics/fonts/{small_narrow/latin.png => latin_small_narrow.png} (100%) delete mode 100644 graphics/fonts/narrow/latin_widths.inc delete mode 100644 graphics/fonts/normal/latin_widths.inc delete mode 100644 graphics/fonts/short/japanese_widths.inc delete mode 100644 graphics/fonts/short/latin_widths.inc delete mode 100644 graphics/fonts/small/latin_widths.inc delete mode 100644 graphics/fonts/small_narrow/latin_widths.inc delete mode 100644 graphics/fonts/unused_japanese_frlg_female_font_widths.inc delete mode 100644 graphics/fonts/unused_japanese_frlg_male_font_widths.inc create mode 100644 include/fonts.h create mode 100644 src/fonts.c diff --git a/data/fonts.s b/data/fonts.s deleted file mode 100644 index 4fdf029b4f0a..000000000000 --- a/data/fonts.s +++ /dev/null @@ -1,76 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - - .align 2 -gFontSmallNarrowLatinGlyphs:: - .incbin "graphics/fonts/small_narrow/glyphs.latfont" - - .align 2 -gFontSmallNarrowLatinGlyphWidths:: - .include "graphics/fonts/small_narrow/latin_widths.inc" - - .align 2 -gFontSmallLatinGlyphs:: - .incbin "graphics/fonts/small/glyphs.latfont" - - .align 2 -gFontSmallLatinGlyphWidths:: - .include "graphics/fonts/small/latin_widths.inc" - - .align 2 -gFontNarrowLatinGlyphs:: - .incbin "graphics/fonts/narrow/glyphs.latfont" - - .align 2 -gFontNarrowLatinGlyphWidths:: - .include "graphics/fonts/narrow/latin_widths.inc" - - .align 2 -gFontShortLatinGlyphs:: - .incbin "graphics/fonts/short/glyphs.latfont" - - .align 2 -gFontShortLatinGlyphWidths:: - .include "graphics/fonts/short/latin_widths.inc" - - .align 2 -gFontNormalLatinGlyphs:: - .incbin "graphics/fonts/normal/glyphs.latfont" - - .align 2 -gFontNormalLatinGlyphWidths:: - .include "graphics/fonts/normal/latin_widths.inc" - - .align 2 -gFontSmallJapaneseGlyphs:: - .incbin "graphics/fonts/small/glyphs.hwjpnfont" - - .align 2 -gFontNormalJapaneseGlyphs:: - .incbin "graphics/fonts/normal/glyphs.hwjpnfont" - - .align 2 -gUnusedJapaneseFireRedLeafGreenMaleFontGlyphs:: - .incbin "graphics/fonts/unused_frlg_male.fwjpnfont" - - .align 2 -gUnusedJapaneseFireRedLeafGreenMaleFontGlyphWidths:: - .include "graphics/fonts/unused_japanese_frlg_male_font_widths.inc" - - .align 2 -gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphs:: - .incbin "graphics/fonts/unused_frlg_female.fwjpnfont" - - .align 2 -gUnusedJapaneseFireRedLeafGreenFemaleFontGlyphWidths:: - .include "graphics/fonts/unused_japanese_frlg_female_font_widths.inc" - - .align 2 -gFontShortJapaneseGlyphs:: - .incbin "graphics/fonts/short/glyphs.fwjpnfont" - - .align 2 -gFontShortJapaneseGlyphWidths:: - .include "graphics/fonts/short/japanese_widths.inc" diff --git a/gflib/text.c b/gflib/text.c index 31a75e0d53dd..54155affedf2 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -11,6 +11,7 @@ #include "blit.h" #include "menu.h" #include "dynamic_placeholder_text_util.h" +#include "fonts.h" static u16 FontFunc_Small(struct TextPrinter *); static u16 FontFunc_Normal(struct TextPrinter *); @@ -222,22 +223,7 @@ static const u8 sMenuCursorDimensions[][2] = [FONT_BOLD] = {} }; -const u16 gFontBoldJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/bold_glyphs.hwjpnfont"); - -extern const u16 gFontNormalLatinGlyphs[]; -extern const u8 gFontNormalLatinGlyphWidths[]; -extern const u16 gFontNormalJapaneseGlyphs[]; -extern const u16 gFontSmallLatinGlyphs[]; -extern const u8 gFontSmallLatinGlyphWidths[]; -extern const u16 gFontSmallJapaneseGlyphs[]; -extern const u16 gFontShortLatinGlyphs[]; -extern const u8 gFontShortLatinGlyphWidths[]; -extern const u16 gFontShortJapaneseGlyphs[]; -extern const u8 gFontShortJapaneseGlyphWidths[]; -extern const u16 gFontNarrowLatinGlyphs[]; -extern const u8 gFontNarrowLatinGlyphWidths[]; -extern const u16 gFontSmallNarrowLatinGlyphs[]; -extern const u8 gFontSmallNarrowLatinGlyphWidths[]; +const u16 gFontBoldJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/bold.hwjpnfont"); static void SetFontsPointer(const struct FontInfo *fonts) { @@ -1510,7 +1496,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) return width; } -u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str) +u8 RenderTextHandleBold(u8 *pixels, u8 fontId, u8 *str) { u8 shadowColor; u8 *strLocal; diff --git a/gflib/text.h b/gflib/text.h index 2c981de209a0..d23ee1be5a5c 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -147,7 +147,7 @@ bool16 TextPrinterWait(struct TextPrinter *textPrinter); void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *counter, u8 *yCoordIndex); u16 RenderText(struct TextPrinter *textPrinter); s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing); -u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str); +u8 RenderTextHandleBold(u8 *pixels, u8 fontId, u8 *str); u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y); u8 GetKeypadIconTileOffset(u8 keypadIconId); u8 GetKeypadIconWidth(u8 keypadIconId); diff --git a/graphics/fonts/bold_japanese.png b/graphics/fonts/japanese_bold.png similarity index 100% rename from graphics/fonts/bold_japanese.png rename to graphics/fonts/japanese_bold.png diff --git a/graphics/fonts/unused_japanese_frlg_female_font.png b/graphics/fonts/japanese_frlg_female_font.png similarity index 100% rename from graphics/fonts/unused_japanese_frlg_female_font.png rename to graphics/fonts/japanese_frlg_female_font.png diff --git a/graphics/fonts/unused_japanese_frlg_male_font.png b/graphics/fonts/japanese_frlg_male_font.png similarity index 100% rename from graphics/fonts/unused_japanese_frlg_male_font.png rename to graphics/fonts/japanese_frlg_male_font.png diff --git a/graphics/fonts/normal/japanese.png b/graphics/fonts/japanese_normal.png similarity index 100% rename from graphics/fonts/normal/japanese.png rename to graphics/fonts/japanese_normal.png diff --git a/graphics/fonts/short/japanese.png b/graphics/fonts/japanese_short.png similarity index 100% rename from graphics/fonts/short/japanese.png rename to graphics/fonts/japanese_short.png diff --git a/graphics/fonts/small/japanese.png b/graphics/fonts/japanese_small.png similarity index 100% rename from graphics/fonts/small/japanese.png rename to graphics/fonts/japanese_small.png diff --git a/graphics/fonts/narrow/latin.png b/graphics/fonts/latin_narrow.png similarity index 100% rename from graphics/fonts/narrow/latin.png rename to graphics/fonts/latin_narrow.png diff --git a/graphics/fonts/normal/latin.png b/graphics/fonts/latin_normal.png similarity index 100% rename from graphics/fonts/normal/latin.png rename to graphics/fonts/latin_normal.png diff --git a/graphics/fonts/short/latin.png b/graphics/fonts/latin_short.png similarity index 100% rename from graphics/fonts/short/latin.png rename to graphics/fonts/latin_short.png diff --git a/graphics/fonts/small/latin.png b/graphics/fonts/latin_small.png similarity index 100% rename from graphics/fonts/small/latin.png rename to graphics/fonts/latin_small.png diff --git a/graphics/fonts/small_narrow/latin.png b/graphics/fonts/latin_small_narrow.png similarity index 100% rename from graphics/fonts/small_narrow/latin.png rename to graphics/fonts/latin_small_narrow.png diff --git a/graphics/fonts/narrow/latin_widths.inc b/graphics/fonts/narrow/latin_widths.inc deleted file mode 100644 index b82b115403b1..000000000000 --- a/graphics/fonts/narrow/latin_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5 - .byte 8, 5, 5, 5, 5, 6, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3 - .byte 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 5, 6, 9, 6, 6, 3 - .byte 3, 3, 3, 3, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 5, 5, 4, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4 - .byte 3, 3, 3, 3, 3, 3, 3, 5, 3, 7, 7, 7, 7, 1, 2, 3 - .byte 4, 5, 6, 7, 5, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 3, 5, 3 - .byte 5, 5, 5, 3, 3, 5, 5, 6, 3, 6, 6, 5, 5, 5, 5, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5 - .byte 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8 - .byte 3, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 10, 10, 10, 10, 8, 8, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3 diff --git a/graphics/fonts/normal/latin_widths.inc b/graphics/fonts/normal/latin_widths.inc deleted file mode 100644 index 5d62068cd589..000000000000 --- a/graphics/fonts/normal/latin_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6 - .byte 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3 - .byte 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 7, 6, 3 - .byte 3, 3, 3, 3, 10, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 6, 6, 4, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6 - .byte 3, 3, 3, 3, 3, 3, 3, 6, 3, 7, 7, 7, 7, 1, 2, 3 - .byte 4, 5, 6, 7, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 6, 3, 6, 3 - .byte 6, 6, 6, 3, 3, 6, 6, 6, 3, 7, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6 - .byte 4, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 8 - .byte 3, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 10, 10, 10, 10, 8, 10, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3 diff --git a/graphics/fonts/short/japanese_widths.inc b/graphics/fonts/short/japanese_widths.inc deleted file mode 100644 index 22cad5281734..000000000000 --- a/graphics/fonts/short/japanese_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9 - .byte 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9 - .byte 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10 - .byte 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6 - .byte 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 diff --git a/graphics/fonts/short/latin_widths.inc b/graphics/fonts/short/latin_widths.inc deleted file mode 100644 index 79bf539bead0..000000000000 --- a/graphics/fonts/short/latin_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6 - .byte 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3 - .byte 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 8, 8, 3 - .byte 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6 - .byte 3, 3, 3, 3, 3, 3, 3, 6, 3, 12, 12, 12, 12, 1, 2, 3 - .byte 4, 5, 6, 7, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 5 - .byte 6, 6, 6, 3, 3, 6, 6, 8, 5, 9, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 4, 6, 5 - .byte 5, 6, 5, 6, 6, 6, 5, 5, 5, 6, 6, 6, 6, 6, 6, 8 - .byte 5, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 12, 12, 12, 12, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3 diff --git a/graphics/fonts/small/latin_widths.inc b/graphics/fonts/small/latin_widths.inc deleted file mode 100644 index 2392e9717967..000000000000 --- a/graphics/fonts/small/latin_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5 - .byte 5, 5, 5, 5, 5, 5, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3 - .byte 4, 4, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 8, 7, 8, 3 - .byte 3, 3, 3, 3, 8, 8, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 5, 5, 5, 8, 8, 8, 8, 8, 8, 8, 4, 7, 5, 5, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4 - .byte 3, 3, 3, 3, 3, 3, 3, 5, 3, 8, 8, 8, 8, 1, 2, 3 - .byte 4, 5, 6, 7, 5, 7, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5 - .byte 5, 5, 5, 5, 5, 5, 5, 8, 5, 8, 5, 5, 5, 5, 5, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5 - .byte 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8 - .byte 7, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3 diff --git a/graphics/fonts/small_narrow/latin_widths.inc b/graphics/fonts/small_narrow/latin_widths.inc deleted file mode 100644 index 2e2a8d7464bf..000000000000 --- a/graphics/fonts/small_narrow/latin_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5 - .byte 5, 5, 5, 5, 5, 5, 5, 5, 3, 4, 5, 5, 5, 5, 4, 3 - .byte 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, 5, 6, 3 - .byte 3, 3, 3, 3, 8, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 5, 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4 - .byte 3, 3, 3, 3, 3, 3, 3, 5, 3, 8, 8, 8, 8, 1, 2, 3 - .byte 4, 5, 6, 7, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 7, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 3, 5, 5 - .byte 5, 5, 5, 3, 3, 5, 5, 5, 3, 5, 5, 5, 5, 5, 5, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5 - .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 5 - .byte 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7 - .byte 3, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 - .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3 diff --git a/graphics/fonts/unused_japanese_frlg_female_font_widths.inc b/graphics/fonts/unused_japanese_frlg_female_font_widths.inc deleted file mode 100644 index 56bdecb28082..000000000000 --- a/graphics/fonts/unused_japanese_frlg_female_font_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9 - .byte 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9 - .byte 9, 9, 9, 9, 9, 9, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10 - .byte 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6 - .byte 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 diff --git a/graphics/fonts/unused_japanese_frlg_male_font_widths.inc b/graphics/fonts/unused_japanese_frlg_male_font_widths.inc deleted file mode 100644 index ad18d28849b2..000000000000 --- a/graphics/fonts/unused_japanese_frlg_male_font_widths.inc +++ /dev/null @@ -1,32 +0,0 @@ - .byte 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9 - .byte 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10 - .byte 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6 - .byte 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 - .byte 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 - .byte 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index fb2eee5051b3..c7beae14ace1 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -289,58 +289,42 @@ $(TILESETGFXDIR)/secondary/mystery_events_house/tiles.4bpp: %.4bpp: %.png ### Fonts ### -$(FONTGFXDIR)/small/glyphs.latfont: $(FONTGFXDIR)/small/latin.png +$(FONTGFXDIR)/small.latfont: $(FONTGFXDIR)/latin_small.png $(GFX) $< $@ -$(FONTGFXDIR)/normal/glyphs.latfont: $(FONTGFXDIR)/normal/latin.png +$(FONTGFXDIR)/normal.latfont: $(FONTGFXDIR)/latin_normal.png $(GFX) $< $@ -$(FONTGFXDIR)/short/glyphs.latfont: $(FONTGFXDIR)/short/latin.png +$(FONTGFXDIR)/short.latfont: $(FONTGFXDIR)/latin_short.png $(GFX) $< $@ -$(FONTGFXDIR)/narrow/glyphs.latfont: $(FONTGFXDIR)/narrow/latin.png +$(FONTGFXDIR)/narrow.latfont: $(FONTGFXDIR)/latin_narrow.png $(GFX) $< $@ -$(FONTGFXDIR)/small_narrow/glyphs.latfont: $(FONTGFXDIR)/small_narrow/latin.png +$(FONTGFXDIR)/small_narrow.latfont: $(FONTGFXDIR)/latin_small_narrow.png $(GFX) $< $@ -$(FONTGFXDIR)/small/glyphs.hwjpnfont: $(FONTGFXDIR)/small/japanese.png +$(FONTGFXDIR)/small.hwjpnfont: $(FONTGFXDIR)/japanese_small.png $(GFX) $< $@ -$(FONTGFXDIR)/normal/glyphs.hwjpnfont: $(FONTGFXDIR)/normal/japanese.png +$(FONTGFXDIR)/normal.hwjpnfont: $(FONTGFXDIR)/japanese_normal.png $(GFX) $< $@ -$(FONTGFXDIR)/bold_glyphs.hwjpnfont: $(FONTGFXDIR)/bold_japanese.png +$(FONTGFXDIR)/bold.hwjpnfont: $(FONTGFXDIR)/japanese_bold.png $(GFX) $< $@ -$(FONTGFXDIR)/short/glyphs.fwjpnfont: $(FONTGFXDIR)/short/japanese.png +$(FONTGFXDIR)/short.fwjpnfont: $(FONTGFXDIR)/japanese_short.png $(GFX) $< $@ -$(FONTGFXDIR)/braille_glyphs.fwjpnfont: $(FONTGFXDIR)/braille.png +$(FONTGFXDIR)/braille.fwjpnfont: $(FONTGFXDIR)/braille.png $(GFX) $< $@ -$(FONTGFXDIR)/unused_frlg_male.fwjpnfont: $(FONTGFXDIR)/unused_japanese_frlg_male_font.png +$(FONTGFXDIR)/frlg_male.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_male_font.png $(GFX) $< $@ -$(FONTGFXDIR)/unused_frlg_female.fwjpnfont: $(FONTGFXDIR)/unused_japanese_frlg_female_font.png +$(FONTGFXDIR)/frlg_female.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_female_font.png $(GFX) $< $@ -$(FONTGFXDIR)/down_arrow.4bpp: %.4bpp: %.png - $(GFX) $< $@ - -$(FONTGFXDIR)/down_arrow_rs.4bpp: %.4bpp: %.png - $(GFX) $< $@ - -$(FONTGFXDIR)/unused_frlg_blanked_down_arrow.4bpp: %.4bpp: %.png - $(GFX) $< $@ - -$(FONTGFXDIR)/unused_frlg_down_arrow.4bpp: %.4bpp: %.png - $(GFX) $< $@ - -$(FONTGFXDIR)/keypad_icons.4bpp: %.4bpp: %.png - $(GFX) $< $@ - - ### Miscellaneous ### graphics/title_screen/pokemon_logo.gbapal: %.gbapal: %.pal diff --git a/include/fonts.h b/include/fonts.h new file mode 100644 index 000000000000..c21c75942df5 --- /dev/null +++ b/include/fonts.h @@ -0,0 +1,19 @@ +#ifndef GUARD_FONTS_H +#define GUARD_FONTS_H + +extern const u16 gFontNormalLatinGlyphs[]; +extern const u8 gFontNormalLatinGlyphWidths[]; +extern const u16 gFontNormalJapaneseGlyphs[]; +extern const u16 gFontSmallLatinGlyphs[]; +extern const u8 gFontSmallLatinGlyphWidths[]; +extern const u16 gFontSmallJapaneseGlyphs[]; +extern const u16 gFontShortLatinGlyphs[]; +extern const u8 gFontShortLatinGlyphWidths[]; +extern const u16 gFontShortJapaneseGlyphs[]; +extern const u8 gFontShortJapaneseGlyphWidths[]; +extern const u16 gFontNarrowLatinGlyphs[]; +extern const u8 gFontNarrowLatinGlyphWidths[]; +extern const u16 gFontSmallNarrowLatinGlyphs[]; +extern const u8 gFontSmallNarrowLatinGlyphWidths[]; + +#endif // GUARD_FONTS_H diff --git a/ld_script.txt b/ld_script.txt index 34ba15c5821c..e310bf717ca8 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -686,7 +686,7 @@ SECTIONS { src/gym_leader_rematch.o(.rodata); src/battle_transition_frontier.o(.rodata); src/text_input_strings.o(.rodata); - data/fonts.o(.rodata); + src/fonts.o(.rodata); src/mystery_event_msg.o(.rodata); data/mystery_gift.o(.rodata); src/m4a_tables.o(.rodata); diff --git a/src/battle_interface.c b/src/battle_interface.c index 933a75d43679..085bb496795b 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1180,7 +1180,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) } ConvertIntToDecimalStringN(text + 6, value, STR_CONV_MODE_RIGHT_ALIGN, 3); - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); + RenderTextHandleBold(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); for (i = 0; i < 3; i++) { @@ -1249,7 +1249,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 txtPtr = ConvertIntToDecimalStringN(text + 6, value, STR_CONV_MODE_RIGHT_ALIGN, 3); if (!maxOrCurrent) StringCopy(txtPtr, gText_Slash); - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); + RenderTextHandleBold(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); for (i = var; i < var + 3; i++) { @@ -1300,7 +1300,7 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) var = 5; nature = GetNature(mon); StringCopy(text + 6, gNatureNamePointers[nature]); - RenderTextFont9(barFontGfx, FONT_BOLD, text); + RenderTextHandleBold(barFontGfx, FONT_BOLD, text); for (j = 6, i = 0; i < var; i++, j++) { @@ -1332,7 +1332,7 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) ConvertIntToDecimalStringN(text + 9, gBattleStruct->safariEscapeFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); text[5] = CHAR_SPACE; text[8] = CHAR_SLASH; - RenderTextFont9(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); + RenderTextHandleBold(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); j = healthBarSpriteId; // Needed to match for some reason. for (j = 0; j < 5; j++) diff --git a/src/braille.c b/src/braille.c index d43758f9e97a..4e22a12efea5 100644 --- a/src/braille.c +++ b/src/braille.c @@ -4,9 +4,12 @@ #include "text.h" #include "sound.h" +// This file handles the braille font. +// For printing braille messages, see ScrCmd_braillemessage + ALIGNED(4) static const u8 sScrollDistances[] = {1, 2, 4}; -static const u16 sFont_Braille[] = INCBIN_U16("graphics/fonts/braille_glyphs.fwjpnfont"); +static const u16 sFont_Braille[] = INCBIN_U16("graphics/fonts/braille.fwjpnfont"); static void DecompressGlyph_Braille(u16); diff --git a/src/fonts.c b/src/fonts.c new file mode 100644 index 000000000000..df904bacafec --- /dev/null +++ b/src/fonts.c @@ -0,0 +1,292 @@ +#include "global.h" + +ALIGNED(4) const u16 gFontSmallNarrowLatinGlyphs[] = INCBIN_U16("graphics/fonts/small_narrow.latfont"); +ALIGNED(4) const u8 gFontSmallNarrowLatinGlyphWidths[] = { + 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 3, 4, 5, 5, 5, 5, 4, 3, + 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, 5, 6, 3, + 3, 3, 3, 3, 8, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 5, 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, + 3, 3, 3, 3, 3, 3, 3, 5, 3, 8, 8, 8, 8, 1, 2, 3, + 4, 5, 6, 7, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 7, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 3, 5, 5, + 5, 5, 5, 3, 3, 5, 5, 5, 3, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 5, + 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, + 3, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, +}; + +ALIGNED(4) const u16 gFontSmallLatinGlyphs[] = INCBIN_U16("graphics/fonts/small.latfont"); +ALIGNED(4) const u8 gFontSmallLatinGlyphWidths[] = { + 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3, + 4, 4, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 8, 7, 8, 3, + 3, 3, 3, 3, 8, 8, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 5, 5, 5, 8, 8, 8, 8, 8, 8, 8, 4, 7, 5, 5, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, + 3, 3, 3, 3, 3, 3, 3, 5, 3, 8, 8, 8, 8, 1, 2, 3, + 4, 5, 6, 7, 5, 7, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 8, 5, 8, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, + 7, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, +}; + +ALIGNED(4) const u16 gFontNarrowLatinGlyphs[] = INCBIN_U16("graphics/fonts/narrow.latfont"); +ALIGNED(4) const u8 gFontNarrowLatinGlyphWidths[] = { + 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, + 8, 5, 5, 5, 5, 6, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3, + 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 5, 6, 9, 6, 6, 3, + 3, 3, 3, 3, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 5, 5, 4, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, + 3, 3, 3, 3, 3, 3, 3, 5, 3, 7, 7, 7, 7, 1, 2, 3, + 4, 5, 6, 7, 5, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 3, 5, 3, + 5, 5, 5, 3, 3, 5, 5, 6, 3, 6, 6, 5, 5, 5, 5, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5, + 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, + 3, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 10, 10, 10, 10, 8, 8, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, +}; + +ALIGNED(4) const u16 gFontShortLatinGlyphs[] = INCBIN_U16("graphics/fonts/short.latfont"); +ALIGNED(4) const u8 gFontShortLatinGlyphWidths[] = { + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, + 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3, + 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 8, 8, 3, + 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6, + 3, 3, 3, 3, 3, 3, 3, 6, 3, 12, 12, 12, 12, 1, 2, 3, + 4, 5, 6, 7, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 5, + 6, 6, 6, 3, 3, 6, 6, 8, 5, 9, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 4, 6, 5, + 5, 6, 5, 6, 6, 6, 5, 5, 5, 6, 6, 6, 6, 6, 6, 8, + 5, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 12, 12, 12, 12, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, +}; + +ALIGNED(4) const u16 gFontNormalLatinGlyphs[] = INCBIN_U16("graphics/fonts/normal.latfont"); +ALIGNED(4) const u8 gFontNormalLatinGlyphWidths[] = { + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, + 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3, + 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 7, 6, 3, + 3, 3, 3, 3, 10, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 6, 6, 4, 8, 8, 8, 7, 8, 8, 4, 6, 6, 4, 4, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6, + 3, 3, 3, 3, 3, 3, 3, 6, 3, 7, 7, 7, 7, 1, 2, 3, + 4, 5, 6, 7, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 6, 3, 6, 3, + 6, 6, 6, 3, 3, 6, 6, 6, 3, 7, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 5, 6, + 4, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 8, + 3, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 10, 10, 10, 10, 8, 10, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, +}; + +ALIGNED(4) const u16 gFontSmallJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/small.hwjpnfont"); +ALIGNED(4) const u16 gFontNormalJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/normal.hwjpnfont"); + +ALIGNED(4) const u16 gFontFRLGMaleJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/frlg_male.fwjpnfont"); +ALIGNED(4) const u8 gFontFRLGMaleJapaneseGlyphWidths[] = { + 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, + 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10, + 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6, + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, +}; + +ALIGNED(4) const u16 gFontFRLGFemaleJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/frlg_female.fwjpnfont"); +ALIGNED(4) const u8 gFontFRLGFemaleJapaneseGlyphWidths[] = { + 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, + 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, + 9, 9, 9, 9, 9, 9, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10, + 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6, + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, +}; + +ALIGNED(4) const u16 gFontShortJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/short.fwjpnfont"); +ALIGNED(4) const u8 gFontShortJapaneseGlyphWidths[] = { + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, + 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, + 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 9, 10, 10, 10, + 8, 10, 10, 10, 10, 8, 8, 8, 10, 10, 8, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 2, 4, 6, + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 5, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, +}; From dac4192fd3b875706a7f1ce8bfb97c813ea503de Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 31 Oct 2021 16:36:31 -0400 Subject: [PATCH 359/762] Split headers from crt0 --- ld_script.txt | 4 + src/crt0.s | 100 ------------------------- asm/rom_header.inc => src/rom_header.s | 7 ++ src/rom_header_gf.s | 89 ++++++++++++++++++++++ 4 files changed, 100 insertions(+), 100 deletions(-) rename asm/rom_header.inc => src/rom_header.s (73%) create mode 100644 src/rom_header_gf.s diff --git a/ld_script.txt b/ld_script.txt index 3c1a2509440b..10abd88105d3 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -47,6 +47,8 @@ SECTIONS { .text : ALIGN(4) { + src/rom_header.o(.text); + src/rom_header_gf.o(.text); src/crt0.o(.text); src/main.o(.text); gflib/malloc.o(.text); @@ -435,6 +437,8 @@ SECTIONS { .rodata : ALIGN(4) { + src/rom_header.o(.rodata); + src/rom_header_gf.o(.rodata); src/main.o(.rodata); gflib/bg.o(.rodata); gflib/window.o(.rodata); diff --git a/src/crt0.s b/src/crt0.s index 672fc94f2a57..6e3b86a72f4a 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -1,107 +1,7 @@ -#include "constants/global.h" .include "constants/gba_constants.inc" .syntax unified - .global Start - - .text - - .arm - -Start: @ 8000000 - b Init - - .include "asm/rom_header.inc" - -@ 80000C0 - .word 0 - - .global GPIOPortData -GPIOPortData: @ 80000C4 - .2byte 0 - - .global GPIOPortDirection -GPIOPortDirection: @ 80000C6 - .2byte 0 - - .global GPIOPortReadEnable -GPIOPortReadEnable: @ 80000C8 - .2byte 0 - -@ 80000CA - .2byte 0 - -@ 80000CC - .space 0x34 - - .4byte GAME_VERSION - .4byte GAME_LANGUAGE - - .ascii "pokemon emerald version" - .space 9 - - .4byte gMonFrontPicTable - .4byte gMonBackPicTable - .4byte gMonPaletteTable - .4byte gMonShinyPaletteTable - .4byte gMonIconTable - .4byte gMonIconPaletteIndices - .4byte gMonIconPaletteTable - .4byte gSpeciesNames - .4byte gMoveNames - .4byte gDecorations - - .4byte 0x00001270 @ offsetof(struct SaveBlock1, flags) - .4byte 0x0000139c @ offsetof(struct SaveBlock1, vars) - .4byte 0x00000018 @ offsetof(struct SaveBlock2, pokedex) - .4byte 0x00000988 @ offsetof(struct SaveBlock1, seen1) - .4byte 0x00003b24 @ offsetof(struct SaveBlock1, seen2) - .4byte 0x00000046 @ ? - .4byte 0x000008e4 @ ? - .4byte 0x000008ac @ ? - .4byte 0x00000182 @ NATIONAL_DEX_COUNT? - - .byte 0x07, 0x0a, 0x0a, 0x0a, 0x0c, 0x0c, 0x06, 0x0c - .byte 0x06, 0x10, 0x12, 0x0c, 0x0f, 0x0b, 0x01, 0x08 - - .4byte 0x0000000c @ ? - .4byte 0x00000f2c @ sizeof(struct SaveBlock2) - .4byte 0x00003d88 @ sizeof(struct SaveBlock1) - .4byte 0x00000234 @ offsetof(struct SaveBlock1, playerPartyCount) - .4byte 0x00000238 @ offsetof(struct SaveBlock1, playerParty) - .4byte 0x00000009 @ offsetof(struct SaveBlock2, specialSaveWarpFlags) - .4byte 0x0000000a @ offsetof(struct SaveBlock2, playerTrainerId) - .4byte 0x00000000 @ offsetof(struct SaveBlock2, playerName) - .4byte 0x00000008 @ offsetof(struct SaveBlock2, playerGender) - .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) - .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) - .4byte 0x000031c7 @ offsetof(struct SaveBlock1, externalEventFlags) - .4byte 0x000031b3 @ offsetof(struct SaveBlock1, externalEventData) - .4byte 0x00000000 - - .4byte gBaseStats - .4byte gAbilityNames - .4byte gAbilityDescriptionPointers - .4byte gItems - .4byte gBattleMoves - .4byte gBallSpriteSheets - .4byte gBallSpritePalettes - - .4byte 0x000000a8 @ offsetof(struct SaveBlock2, gcnLinkFlags) - .4byte 0x00000864 @ ? - .4byte 0x0000089b @ ? - - .byte 0x1e, 0x1e, 0x10, 0x40 - - .4byte 0x0000322e @ offsetof(struct SaveBlock1, ? part-way into mysteryGift) - .4byte 0x00000498 @ offsetof(struct SaveBlock1, pcItems) - .4byte 0x000031a8 @ offsetof(struct SaveBlock1, giftRibbons) - .4byte 0x000031f8 @ offsetof(struct SaveBlock1, enigmaBerry) - .4byte 0x00000034 @ offsetof(struct SaveBlock1, mapView) - .4byte 0x00000000 - .4byte 0x00000000 - .arm .align 2, 0 .global Init diff --git a/asm/rom_header.inc b/src/rom_header.s similarity index 73% rename from asm/rom_header.inc rename to src/rom_header.s index 6730efae28b4..596fd379f56b 100644 --- a/asm/rom_header.inc +++ b/src/rom_header.s @@ -1,3 +1,10 @@ +@ Note: ROM header data is empty space here. +@ It's populated by gbafix using data provided in the Makefile. + + .global Start +Start: @ 8000000 + b Init + .global RomHeaderNintendoLogo RomHeaderNintendoLogo: .space 156 diff --git a/src/rom_header_gf.s b/src/rom_header_gf.s new file mode 100644 index 000000000000..b021158f5390 --- /dev/null +++ b/src/rom_header_gf.s @@ -0,0 +1,89 @@ +#include "constants/global.h" + +@ 80000C0 + .word 0 + + .global GPIOPortData +GPIOPortData: @ 80000C4 + .2byte 0 + + .global GPIOPortDirection +GPIOPortDirection: @ 80000C6 + .2byte 0 + + .global GPIOPortReadEnable +GPIOPortReadEnable: @ 80000C8 + .2byte 0 + +@ 80000CA + .2byte 0 + +@ 80000CC + .space 0x34 + + .4byte GAME_VERSION + .4byte GAME_LANGUAGE + + .ascii "pokemon emerald version" + .space 9 + + .4byte gMonFrontPicTable + .4byte gMonBackPicTable + .4byte gMonPaletteTable + .4byte gMonShinyPaletteTable + .4byte gMonIconTable + .4byte gMonIconPaletteIndices + .4byte gMonIconPaletteTable + .4byte gSpeciesNames + .4byte gMoveNames + .4byte gDecorations + + .4byte 0x00001270 @ offsetof(struct SaveBlock1, flags) + .4byte 0x0000139c @ offsetof(struct SaveBlock1, vars) + .4byte 0x00000018 @ offsetof(struct SaveBlock2, pokedex) + .4byte 0x00000988 @ offsetof(struct SaveBlock1, seen1) + .4byte 0x00003b24 @ offsetof(struct SaveBlock1, seen2) + .4byte 0x00000046 @ ? + .4byte 0x000008e4 @ ? + .4byte 0x000008ac @ ? + .4byte 0x00000182 @ NATIONAL_DEX_COUNT? + + .byte 0x07, 0x0a, 0x0a, 0x0a, 0x0c, 0x0c, 0x06, 0x0c + .byte 0x06, 0x10, 0x12, 0x0c, 0x0f, 0x0b, 0x01, 0x08 + + .4byte 0x0000000c @ ? + .4byte 0x00000f2c @ sizeof(struct SaveBlock2) + .4byte 0x00003d88 @ sizeof(struct SaveBlock1) + .4byte 0x00000234 @ offsetof(struct SaveBlock1, playerPartyCount) + .4byte 0x00000238 @ offsetof(struct SaveBlock1, playerParty) + .4byte 0x00000009 @ offsetof(struct SaveBlock2, specialSaveWarpFlags) + .4byte 0x0000000a @ offsetof(struct SaveBlock2, playerTrainerId) + .4byte 0x00000000 @ offsetof(struct SaveBlock2, playerName) + .4byte 0x00000008 @ offsetof(struct SaveBlock2, playerGender) + .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) + .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) + .4byte 0x000031c7 @ offsetof(struct SaveBlock1, externalEventFlags) + .4byte 0x000031b3 @ offsetof(struct SaveBlock1, externalEventData) + .4byte 0x00000000 + + .4byte gBaseStats + .4byte gAbilityNames + .4byte gAbilityDescriptionPointers + .4byte gItems + .4byte gBattleMoves + .4byte gBallSpriteSheets + .4byte gBallSpritePalettes + + .4byte 0x000000a8 @ offsetof(struct SaveBlock2, gcnLinkFlags) + .4byte 0x00000864 @ ? + .4byte 0x0000089b @ ? + + .byte 0x1e, 0x1e, 0x10, 0x40 + + .4byte 0x0000322e @ offsetof(struct SaveBlock1, ? part-way into mysteryGift) + .4byte 0x00000498 @ offsetof(struct SaveBlock1, pcItems) + .4byte 0x000031a8 @ offsetof(struct SaveBlock1, giftRibbons) + .4byte 0x000031f8 @ offsetof(struct SaveBlock1, enigmaBerry) + .4byte 0x00000034 @ offsetof(struct SaveBlock1, mapView) + .4byte 0x00000000 + .4byte 0x00000000 From ef2971d8dcc0768265d9b8c0eec40ea55251db8b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 01:42:02 -0400 Subject: [PATCH 360/762] Convert GF ROM header to C --- include/item.h | 1 + include/pokeball.h | 2 + include/pokemon_icon.h | 2 + src/crt0.s | 1 + src/rom_header.s | 21 ++++++ src/rom_header_gf.c | 162 +++++++++++++++++++++++++++++++++++++++++ src/rom_header_gf.s | 89 ---------------------- 7 files changed, 189 insertions(+), 89 deletions(-) create mode 100644 src/rom_header_gf.c delete mode 100644 src/rom_header_gf.s diff --git a/include/item.h b/include/item.h index 87ff57bc79e8..ceca83bd5faa 100644 --- a/include/item.h +++ b/include/item.h @@ -29,6 +29,7 @@ struct BagPocket u8 capacity; }; +extern const struct Item gItems[]; extern struct BagPocket gBagPockets[]; void ApplyNewEncryptionKeyToBagItems(u32 newKey); diff --git a/include/pokeball.h b/include/pokeball.h index d88e80173beb..297788db12d4 100644 --- a/include/pokeball.h +++ b/include/pokeball.h @@ -26,6 +26,8 @@ enum { BALL_AFFINE_ANIM_4 }; +extern const struct CompressedSpriteSheet gBallSpriteSheets[]; +extern const struct CompressedSpritePalette gBallSpritePalettes[]; extern const struct SpriteTemplate gBallSpriteTemplates[]; #define POKEBALL_PLAYER_SENDOUT 0xFF diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index 4731da90e9ba..9b917c3bf467 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -2,6 +2,8 @@ #define GUARD_POKEMON_ICON_H extern const u8 gMonIconPaletteIndices[]; +extern const u8 *const gMonIconTable[]; +extern const struct SpritePalette gMonIconPaletteTable[]; const u8 *GetMonIconTiles(u16 species, bool32); void TryLoadAllMonIconPalettesAtOffset(u16 offset); diff --git a/src/crt0.s b/src/crt0.s index 6e3b86a72f4a..7c679c13b544 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -3,6 +3,7 @@ .syntax unified .arm + .align 2, 0 .global Init Init: @ 8000204 diff --git a/src/rom_header.s b/src/rom_header.s index 596fd379f56b..5ed45124defe 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -40,3 +40,24 @@ RomHeaderChecksum: RomHeaderReserved2: .space 2 + +@ 80000C0 + .word 0 + + .global GPIOPortData +GPIOPortData: @ 80000C4 + .2byte 0 + + .global GPIOPortDirection +GPIOPortDirection: @ 80000C6 + .2byte 0 + + .global GPIOPortReadEnable +GPIOPortReadEnable: @ 80000C8 + .2byte 0 + +@ 80000CA + .2byte 0 + +@ 80000CC + .space 0x34 diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c new file mode 100644 index 000000000000..dc61fa1e3660 --- /dev/null +++ b/src/rom_header_gf.c @@ -0,0 +1,162 @@ +#include "global.h" +#include "data.h" +#include "pokemon_icon.h" +#include "decoration.h" +#include "battle_main.h" +#include "item.h" +#include "pokeball.h" + +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; + u32 flagsOffset; + u32 varsOffset; + u32 pokedexOffset; + u32 seen1Offset; + u32 seen2Offset; + u32 unk_01; + u32 unk_02; + u32 unk_03; + u32 dexCount; + u8 unk_04; + u8 unk_05; + u8 unk_06; + u8 unk_07; + u8 unk_08; + u8 unk_09; + u8 unk_0A; + u8 unk_0B; + u8 unk_0C; + u8 unk_0D; + u8 unk_0E; + u8 unk_0F; + u8 unk_10; + u8 unk_11; + u8 unk_12; + u8 unk_13; + u8 unk_14; + u32 saveBlock2Size; + u32 saveBlock1Size; + u32 partyCountOffset; + u32 partyOffset; + u32 warpFlagsOffset; + u32 trainerIdOffset; + u32 playerNameOffset; + u32 playerGenderOffset; + u32 frontierStatusOffset; + u32 frontierStatusOffset2; + u32 externalEventFlagsOffset; + u32 externalEventDataOffset; + u32 unk_15; + const struct BaseStats * baseStats; + 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 unk_16; + u32 unk_17; + u8 unk_18; + u8 unk_19; + u8 unk_1A; + u8 unk_1B; + u32 unk_1C; + u32 pcItemsOffset; + u32 giftRibbonsOffset; + u32 enigmaBerryOffset; + u32 mapViewOffset; + u32 unk_1D; + u32 unk_1E; +}; + +__attribute__((section(".text"))) +static const struct GFRomHeader sGFRomHeader = { + .version = GAME_VERSION, + .language = GAME_LANGUAGE, + .gameName = "pokemon emerald version", + .monFrontPics = gMonFrontPicTable, + .monBackPics = gMonBackPicTable, + .monNormalPalettes = gMonPaletteTable, + .monShinyPalettes = gMonShinyPaletteTable, + .monIcons = gMonIconTable, + .monIconPaletteIds = gMonIconPaletteIndices, + .monIconPalettes = gMonIconPaletteTable, + .monSpeciesNames = gSpeciesNames, + .moveNames = gMoveNames, + .decorations = gDecorations, + .flagsOffset = offsetof(struct SaveBlock1, flags), + .varsOffset = offsetof(struct SaveBlock1, vars), + .pokedexOffset = offsetof(struct SaveBlock2, pokedex), + .seen1Offset = offsetof(struct SaveBlock1, seen1), + .seen2Offset = offsetof(struct SaveBlock1, seen2), + .unk_01 = 0x00000046, + .unk_02 = 0x000008e4, + .unk_03 = 0x000008ac, + .dexCount = NATIONAL_DEX_COUNT, + .unk_04 = 0x07, + .unk_05 = 0x0a, + .unk_06 = 0x0a, + .unk_07 = 0x0a, + .unk_08 = 0x0c, + .unk_09 = 0x0c, + .unk_0A = 0x06, + .unk_0B = 0x0c, + .unk_0C = 0x06, + .unk_0D = 0x10, + .unk_0E = 0x12, + .unk_0F = 0x0c, + .unk_10 = 0x0f, + .unk_11 = 0x0b, + .unk_12 = 0x01, + .unk_13 = 0x08, + .unk_14 = 0x0c, + .saveBlock2Size = sizeof(struct SaveBlock2), + .saveBlock1Size = sizeof(struct SaveBlock1), + .partyCountOffset = offsetof(struct SaveBlock1, playerPartyCount), + .partyOffset = offsetof(struct SaveBlock1, playerParty), + .warpFlagsOffset = offsetof(struct SaveBlock2, specialSaveWarpFlags), + .trainerIdOffset = offsetof(struct SaveBlock2, playerTrainerId), + .playerNameOffset = offsetof(struct SaveBlock2, playerName), + .playerGenderOffset = offsetof(struct SaveBlock2, playerGender), + .frontierStatusOffset = offsetof(struct SaveBlock2, frontier.challengeStatus), + .frontierStatusOffset2 = offsetof(struct SaveBlock2, frontier.challengeStatus), + .externalEventFlagsOffset = offsetof(struct SaveBlock1, externalEventFlags), + .externalEventDataOffset = offsetof(struct SaveBlock1, externalEventData), + .unk_15 = 0x00000000, + .baseStats = gBaseStats, + .abilityNames = gAbilityNames, + .abilityDescriptions = gAbilityDescriptionPointers, + .items = gItems, + .moves = gBattleMoves, + .ballGfx = gBallSpriteSheets, + .ballPalettes = gBallSpritePalettes, + .gcnLinkFlagsOffset = offsetof(struct SaveBlock2, gcnLinkFlags), + .unk_16 = 0x00000864, + .unk_17 = 0x0000089b, + .unk_18 = 0x1e, + .unk_19 = 0x1e, + .unk_1A = 0x10, + .unk_1B = 0x40, + .unk_1C = 0x0000322e, // offsetof(struct SaveBlock1, ? part-way into mysteryGift) + .pcItemsOffset = offsetof(struct SaveBlock1, pcItems), + .giftRibbonsOffset = offsetof(struct SaveBlock1, giftRibbons), + .enigmaBerryOffset = offsetof(struct SaveBlock1, enigmaBerry), + .mapViewOffset = offsetof(struct SaveBlock1, mapView), + .unk_1D = 0x00000000, + .unk_1E = 0x00000000, +}; + diff --git a/src/rom_header_gf.s b/src/rom_header_gf.s deleted file mode 100644 index b021158f5390..000000000000 --- a/src/rom_header_gf.s +++ /dev/null @@ -1,89 +0,0 @@ -#include "constants/global.h" - -@ 80000C0 - .word 0 - - .global GPIOPortData -GPIOPortData: @ 80000C4 - .2byte 0 - - .global GPIOPortDirection -GPIOPortDirection: @ 80000C6 - .2byte 0 - - .global GPIOPortReadEnable -GPIOPortReadEnable: @ 80000C8 - .2byte 0 - -@ 80000CA - .2byte 0 - -@ 80000CC - .space 0x34 - - .4byte GAME_VERSION - .4byte GAME_LANGUAGE - - .ascii "pokemon emerald version" - .space 9 - - .4byte gMonFrontPicTable - .4byte gMonBackPicTable - .4byte gMonPaletteTable - .4byte gMonShinyPaletteTable - .4byte gMonIconTable - .4byte gMonIconPaletteIndices - .4byte gMonIconPaletteTable - .4byte gSpeciesNames - .4byte gMoveNames - .4byte gDecorations - - .4byte 0x00001270 @ offsetof(struct SaveBlock1, flags) - .4byte 0x0000139c @ offsetof(struct SaveBlock1, vars) - .4byte 0x00000018 @ offsetof(struct SaveBlock2, pokedex) - .4byte 0x00000988 @ offsetof(struct SaveBlock1, seen1) - .4byte 0x00003b24 @ offsetof(struct SaveBlock1, seen2) - .4byte 0x00000046 @ ? - .4byte 0x000008e4 @ ? - .4byte 0x000008ac @ ? - .4byte 0x00000182 @ NATIONAL_DEX_COUNT? - - .byte 0x07, 0x0a, 0x0a, 0x0a, 0x0c, 0x0c, 0x06, 0x0c - .byte 0x06, 0x10, 0x12, 0x0c, 0x0f, 0x0b, 0x01, 0x08 - - .4byte 0x0000000c @ ? - .4byte 0x00000f2c @ sizeof(struct SaveBlock2) - .4byte 0x00003d88 @ sizeof(struct SaveBlock1) - .4byte 0x00000234 @ offsetof(struct SaveBlock1, playerPartyCount) - .4byte 0x00000238 @ offsetof(struct SaveBlock1, playerParty) - .4byte 0x00000009 @ offsetof(struct SaveBlock2, specialSaveWarpFlags) - .4byte 0x0000000a @ offsetof(struct SaveBlock2, playerTrainerId) - .4byte 0x00000000 @ offsetof(struct SaveBlock2, playerName) - .4byte 0x00000008 @ offsetof(struct SaveBlock2, playerGender) - .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) - .4byte 0x00000ca8 @ offsetof(struct SaveBlock2, frontier.challengeStatus) - .4byte 0x000031c7 @ offsetof(struct SaveBlock1, externalEventFlags) - .4byte 0x000031b3 @ offsetof(struct SaveBlock1, externalEventData) - .4byte 0x00000000 - - .4byte gBaseStats - .4byte gAbilityNames - .4byte gAbilityDescriptionPointers - .4byte gItems - .4byte gBattleMoves - .4byte gBallSpriteSheets - .4byte gBallSpritePalettes - - .4byte 0x000000a8 @ offsetof(struct SaveBlock2, gcnLinkFlags) - .4byte 0x00000864 @ ? - .4byte 0x0000089b @ ? - - .byte 0x1e, 0x1e, 0x10, 0x40 - - .4byte 0x0000322e @ offsetof(struct SaveBlock1, ? part-way into mysteryGift) - .4byte 0x00000498 @ offsetof(struct SaveBlock1, pcItems) - .4byte 0x000031a8 @ offsetof(struct SaveBlock1, giftRibbons) - .4byte 0x000031f8 @ offsetof(struct SaveBlock1, enigmaBerry) - .4byte 0x00000034 @ offsetof(struct SaveBlock1, mapView) - .4byte 0x00000000 - .4byte 0x00000000 From e0e2212db300566d17468fc237a2708455ed3034 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 01:47:38 -0400 Subject: [PATCH 361/762] Avoid changed section warning --- ld_script.txt | 2 +- src/rom_header_gf.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ld_script.txt b/ld_script.txt index 10abd88105d3..9c81f1da91b3 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -48,7 +48,7 @@ SECTIONS { ALIGN(4) { src/rom_header.o(.text); - src/rom_header_gf.o(.text); + src/rom_header_gf.o(.text.*); src/crt0.o(.text); src/main.o(.text); gflib/malloc.o(.text); diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index dc61fa1e3660..5e78e3a93231 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -83,7 +83,9 @@ struct GFRomHeader u32 unk_1E; }; -__attribute__((section(".text"))) +// This seems to need to be in the text section for some reason. +// To avoid a changed section warning it's put in a special .text.consts section instead of .text. +__attribute__((section(".text.consts"))) static const struct GFRomHeader sGFRomHeader = { .version = GAME_VERSION, .language = GAME_LANGUAGE, From 9b2038a9a55f49969a2c7f650865ed47bea9b99d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 02:34:38 -0400 Subject: [PATCH 362/762] Additional GF ROM header doc --- src/rom_header_gf.c | 129 ++++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 64 deletions(-) diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index 5e78e3a93231..782a05c75cb9 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -26,27 +26,27 @@ struct GFRomHeader u32 pokedexOffset; u32 seen1Offset; u32 seen2Offset; - u32 unk_01; - u32 unk_02; - u32 unk_03; - u32 dexCount; - u8 unk_04; - u8 unk_05; - u8 unk_06; - u8 unk_07; - u8 unk_08; - u8 unk_09; - u8 unk_0A; - u8 unk_0B; - u8 unk_0C; - u8 unk_0D; - u8 unk_0E; - u8 unk_0F; - u8 unk_10; - u8 unk_11; - u8 unk_12; - u8 unk_13; - u8 unk_14; + u32 pokedexVar; + u32 pokedexFlag; + u32 mysteryEventFlag; + u32 pokedexCount; + u8 unk1; + u8 unk2; + u8 unk3; + u8 unk4; + u8 unk5; + u8 unk6; + u8 unk7; + u8 unk8; + u8 unk9; + u8 unk10; + u8 unk11; + u8 unk12; + u8 unk13; + u8 unk14; + u8 unk15; + u8 unk16; + u8 unk17; u32 saveBlock2Size; u32 saveBlock1Size; u32 partyCountOffset; @@ -59,7 +59,7 @@ struct GFRomHeader u32 frontierStatusOffset2; u32 externalEventFlagsOffset; u32 externalEventDataOffset; - u32 unk_15; + u32 unk18; const struct BaseStats * baseStats; const u8 (* abilityNames)[]; const u8 * const * abilityDescriptions; @@ -68,23 +68,24 @@ struct GFRomHeader const struct CompressedSpriteSheet * ballGfx; const struct CompressedSpritePalette * ballPalettes; u32 gcnLinkFlagsOffset; - u32 unk_16; - u32 unk_17; - u8 unk_18; - u8 unk_19; - u8 unk_1A; - u8 unk_1B; - u32 unk_1C; + u32 gameClearFlag; + u32 ribbonFlag; + u8 bagCountItems; + u8 bagCountKeyItems; + u8 bagCountPokeballs; + u8 bagCountTMHMs; + u8 bagCountBerries; + u8 pcItemsCount; u32 pcItemsOffset; u32 giftRibbonsOffset; u32 enigmaBerryOffset; u32 mapViewOffset; - u32 unk_1D; - u32 unk_1E; + u32 unk19; + u32 unk20; }; // This seems to need to be in the text section for some reason. -// To avoid a changed section warning it's put in a special .text.consts section instead of .text. +// To avoid a changed section attributes warning it's put in a special .text.consts section. __attribute__((section(".text.consts"))) static const struct GFRomHeader sGFRomHeader = { .version = GAME_VERSION, @@ -105,27 +106,27 @@ static const struct GFRomHeader sGFRomHeader = { .pokedexOffset = offsetof(struct SaveBlock2, pokedex), .seen1Offset = offsetof(struct SaveBlock1, seen1), .seen2Offset = offsetof(struct SaveBlock1, seen2), - .unk_01 = 0x00000046, - .unk_02 = 0x000008e4, - .unk_03 = 0x000008ac, - .dexCount = NATIONAL_DEX_COUNT, - .unk_04 = 0x07, - .unk_05 = 0x0a, - .unk_06 = 0x0a, - .unk_07 = 0x0a, - .unk_08 = 0x0c, - .unk_09 = 0x0c, - .unk_0A = 0x06, - .unk_0B = 0x0c, - .unk_0C = 0x06, - .unk_0D = 0x10, - .unk_0E = 0x12, - .unk_0F = 0x0c, - .unk_10 = 0x0f, - .unk_11 = 0x0b, - .unk_12 = 0x01, - .unk_13 = 0x08, - .unk_14 = 0x0c, + .pokedexVar = VAR_NATIONAL_DEX - VARS_START, + .pokedexFlag = FLAG_RECEIVED_POKEDEX_FROM_BIRCH, + .mysteryEventFlag = FLAG_SYS_MYSTERY_EVENT_ENABLE, + .pokedexCount = NATIONAL_DEX_COUNT, + .unk1 = 0x07, + .unk2 = 0x0a, + .unk3 = 0x0a, + .unk4 = 0x0a, + .unk5 = 0x0c, + .unk6 = 0x0c, + .unk7 = 0x06, + .unk8 = 0x0c, + .unk9 = 0x06, + .unk10 = 0x10, + .unk11 = 0x12, + .unk12 = 0x0c, + .unk13 = 0x0f, + .unk14 = 0x0b, + .unk15 = 0x01, + .unk16 = 0x08, + .unk17 = 0x0c, .saveBlock2Size = sizeof(struct SaveBlock2), .saveBlock1Size = sizeof(struct SaveBlock1), .partyCountOffset = offsetof(struct SaveBlock1, playerPartyCount), @@ -138,7 +139,7 @@ static const struct GFRomHeader sGFRomHeader = { .frontierStatusOffset2 = offsetof(struct SaveBlock2, frontier.challengeStatus), .externalEventFlagsOffset = offsetof(struct SaveBlock1, externalEventFlags), .externalEventDataOffset = offsetof(struct SaveBlock1, externalEventData), - .unk_15 = 0x00000000, + .unk18 = 0x00000000, .baseStats = gBaseStats, .abilityNames = gAbilityNames, .abilityDescriptions = gAbilityDescriptionPointers, @@ -147,18 +148,18 @@ static const struct GFRomHeader sGFRomHeader = { .ballGfx = gBallSpriteSheets, .ballPalettes = gBallSpritePalettes, .gcnLinkFlagsOffset = offsetof(struct SaveBlock2, gcnLinkFlags), - .unk_16 = 0x00000864, - .unk_17 = 0x0000089b, - .unk_18 = 0x1e, - .unk_19 = 0x1e, - .unk_1A = 0x10, - .unk_1B = 0x40, - .unk_1C = 0x0000322e, // offsetof(struct SaveBlock1, ? part-way into mysteryGift) + .gameClearFlag = FLAG_SYS_GAME_CLEAR, + .ribbonFlag = FLAG_SYS_RIBBON_GET, + .bagCountItems = BAG_ITEMS_COUNT, + .bagCountKeyItems = BAG_KEYITEMS_COUNT, + .bagCountPokeballs = BAG_POKEBALLS_COUNT, + .bagCountTMHMs = BAG_TMHM_COUNT, + .bagCountBerries = BAG_BERRIES_COUNT, + .pcItemsCount = PC_ITEMS_COUNT, .pcItemsOffset = offsetof(struct SaveBlock1, pcItems), .giftRibbonsOffset = offsetof(struct SaveBlock1, giftRibbons), .enigmaBerryOffset = offsetof(struct SaveBlock1, enigmaBerry), .mapViewOffset = offsetof(struct SaveBlock1, mapView), - .unk_1D = 0x00000000, - .unk_1E = 0x00000000, + .unk19 = 0x00000000, + .unk20 = 0x00000000, // 0xFFFFFFFF in FRLG }; - From f3013d8ee923472e89fe01fdbc3d386bb5006cec Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Mon, 1 Nov 2021 18:36:35 -0300 Subject: [PATCH 363/762] Standarized Solarbeam into Solar Beam --- data/battle_ai_scripts.s | 4 +- data/battle_anim_scripts.s | 66 +++---- data/battle_scripts_1.s | 14 +- include/constants/battle_anim.h | 6 +- include/constants/battle_move_effects.h | 2 +- include/constants/items.h | 2 +- include/graphics.h | 2 +- src/battle_ai_script_commands.c | 2 +- src/battle_anim_effects_1.c | 72 +++---- src/battle_script_commands.c | 6 +- src/battle_tv.c | 2 +- src/data/battle_anim.h | 6 +- src/data/battle_moves.h | 2 +- src/data/items.h | 4 +- src/data/pokemon/tmhm_learnsets.h | 248 ++++++++++++------------ src/graphics.c | 4 +- 16 files changed, 221 insertions(+), 221 deletions(-) diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s index 0d4c85771d6b..d856b926a299 100644 --- a/data/battle_ai_scripts.s +++ b/data/battle_ai_scripts.s @@ -735,7 +735,7 @@ AI_CheckViability: if_effect EFFECT_PSYCH_UP, AI_CV_PsychUp if_effect EFFECT_MIRROR_COAT, AI_CV_MirrorCoat if_effect EFFECT_SKULL_BASH, AI_CV_ChargeUpMove - if_effect EFFECT_SOLARBEAM, AI_CV_ChargeUpMove + if_effect EFFECT_SOLAR_BEAM, AI_CV_ChargeUpMove if_effect EFFECT_SEMI_INVULNERABLE, AI_CV_SemiInvulnerable if_effect EFFECT_SOFTBOILED, AI_CV_Heal if_effect EFFECT_FAKE_OUT, AI_CV_FakeOut @@ -3051,7 +3051,7 @@ AI_HPAware_DiscouragedEffectsWhenLowHP: .byte EFFECT_BELLY_DRUM .byte EFFECT_PSYCH_UP .byte EFFECT_MIRROR_COAT - .byte EFFECT_SOLARBEAM + .byte EFFECT_SOLAR_BEAM .byte EFFECT_ERUPTION .byte EFFECT_TICKLE .byte EFFECT_COSMIC_POWER diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 45cf17c3485a..2c5c9ba046af 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -5474,45 +5474,45 @@ SolarBeamAbsorbEffect: delay 2 return SolarBeamUnleash: - call SetSolarbeamBg + call SetSolarBeamBg panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 - createvisualtask AnimTask_CreateSmallSolarbeamOrbs, 5 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 + createvisualtask AnimTask_CreateSmallSolarBeamOrbs, 5 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 delay 4 createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 0, 10, RGB(25, 31, 0) - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 delay 4 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 65, 1 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6 delay 4 call SolarBeamUnleash1 call SolarBeamUnleash1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 10, 0, RGB(25, 31, 0) - call UnsetSolarbeamBg + call UnsetSolarBeamBg goto SolarBeamEnd SolarBeamUnleash1: - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5 delay 4 - createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6 + createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6 delay 4 return @@ -10189,26 +10189,26 @@ UnsetSkyBg: waitbgfadein return -SetSolarbeamBg: +SetSolarBeamBg: createvisualtask AnimTask_IsContest, 2 - jumprettrue SetSolarbeamBgContest + jumprettrue SetSolarBeamBgContest createvisualtask AnimTask_IsTargetPlayerSide, 2 - jumpretfalse SetSolarbeamBgOpponent - goto SetSolarbeamBgPlayer -SetSolarbeamBgContinue: + jumpretfalse SetSolarBeamBgOpponent + goto SetSolarBeamBgPlayer +SetSolarBeamBgContinue: waitbgfadein return -SetSolarbeamBgContest: - fadetobg BG_SOLARBEAM_CONTESTS - goto SetSolarbeamBgContinue -SetSolarbeamBgPlayer: - fadetobg BG_SOLARBEAM_PLAYER - goto SetSolarbeamBgContinue -SetSolarbeamBgOpponent: - fadetobg BG_SOLARBEAM_OPPONENT - goto SetSolarbeamBgContinue - -UnsetSolarbeamBg: +SetSolarBeamBgContest: + fadetobg BG_SOLAR_BEAM_CONTESTS + goto SetSolarBeamBgContinue +SetSolarBeamBgPlayer: + fadetobg BG_SOLAR_BEAM_PLAYER + goto SetSolarBeamBgContinue +SetSolarBeamBgOpponent: + fadetobg BG_SOLAR_BEAM_OPPONENT + goto SetSolarBeamBgContinue + +UnsetSolarBeamBg: restorebg waitbgfadein return diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index eecb3d08df4e..e3408a3a789c 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -168,7 +168,7 @@ gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectFutureSight @ EFFECT_FUTURE_SIGHT .4byte BattleScript_EffectGust @ EFFECT_GUST .4byte BattleScript_EffectStomp @ EFFECT_FLINCH_MINIMIZE_HIT - .4byte BattleScript_EffectSolarbeam @ EFFECT_SOLARBEAM + .4byte BattleScript_EffectSolarBeam @ EFFECT_SOLAR_BEAM .4byte BattleScript_EffectThunder @ EFFECT_THUNDER .4byte BattleScript_EffectTeleport @ EFFECT_TELEPORT .4byte BattleScript_EffectBeatUp @ EFFECT_BEAT_UP @@ -1898,17 +1898,17 @@ BattleScript_EffectStomp:: setbyte sDMG_MULTIPLIER, 2 goto BattleScript_FlinchEffect -BattleScript_EffectSolarbeam:: - jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn - jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn - jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN, BattleScript_SolarbeamOnFirstTurn -BattleScript_SolarbeamDecideTurn:: +BattleScript_EffectSolarBeam:: + jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarBeamDecideTurn + jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarBeamDecideTurn + jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN, BattleScript_SolarBeamOnFirstTurn +BattleScript_SolarBeamDecideTurn:: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SOLAR_BEAM call BattleScriptFirstChargingTurn goto BattleScript_MoveEnd -BattleScript_SolarbeamOnFirstTurn:: +BattleScript_SolarBeamOnFirstTurn:: orword gHitMarker, HITMARKER_CHARGING setmoveeffect MOVE_EFFECT_CHARGING | MOVE_EFFECT_AFFECTS_USER seteffectprimary diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 48de594e2ae6..2ff9318be0cf 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -342,9 +342,9 @@ #define BG_FISSURE 21 #define BG_BUG_OPPONENT 22 #define BG_BUG_PLAYER 23 -#define BG_SOLARBEAM_OPPONENT 24 -#define BG_SOLARBEAM_PLAYER 25 -#define BG_SOLARBEAM_CONTESTS 26 +#define BG_SOLAR_BEAM_OPPONENT 24 +#define BG_SOLAR_BEAM_PLAYER 25 +#define BG_SOLAR_BEAM_CONTESTS 26 // table ids for general animations (gBattleAnims_General) #define B_ANIM_CASTFORM_CHANGE 0 diff --git a/include/constants/battle_move_effects.h b/include/constants/battle_move_effects.h index cc62208fa167..c4f79efc31e1 100644 --- a/include/constants/battle_move_effects.h +++ b/include/constants/battle_move_effects.h @@ -152,7 +152,7 @@ #define EFFECT_FUTURE_SIGHT 148 #define EFFECT_GUST 149 #define EFFECT_FLINCH_MINIMIZE_HIT 150 // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM -#define EFFECT_SOLARBEAM 151 +#define EFFECT_SOLAR_BEAM 151 #define EFFECT_THUNDER 152 #define EFFECT_TELEPORT 153 #define EFFECT_BEAT_UP 154 diff --git a/include/constants/items.h b/include/constants/items.h index c596dd3b8dec..e9d889cfa055 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -402,7 +402,7 @@ #define ITEM_TM19_GIGA_DRAIN ITEM_TM19 #define ITEM_TM20_SAFEGUARD ITEM_TM20 #define ITEM_TM21_FRUSTRATION ITEM_TM21 -#define ITEM_TM22_SOLARBEAM ITEM_TM22 +#define ITEM_TM22_SOLAR_BEAM ITEM_TM22 #define ITEM_TM23_IRON_TAIL ITEM_TM23 #define ITEM_TM24_THUNDERBOLT ITEM_TM24 #define ITEM_TM25_THUNDER ITEM_TM25 diff --git a/include/graphics.h b/include/graphics.h index cbb7fbb0804b..a58b0f0f134c 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4733,7 +4733,7 @@ extern const u32 gBattleAnimBgPalette_Sky[]; extern const u32 gBattleAnimBgPalette_Aurora[]; extern const u32 gBattleAnimBgPalette_Fissure[]; extern const u32 gBattleAnimBgPalette_Bug[]; -extern const u32 gBattleAnimBgPalette_Solarbeam[]; +extern const u32 gBattleAnimBgPalette_SolarBeam[]; extern const u32 gBattleAnimBgTilemap_Dark[]; extern const u32 gBattleAnimBgTilemap_Ghost[]; extern const u32 gBattleAnimBgTilemap_Psychic[]; diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 6fdfb0d7aeb1..e9f55bd8bc9f 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -274,7 +274,7 @@ static const u16 sIgnoredPowerfulMoveEffects[] = EFFECT_SKY_ATTACK, EFFECT_RECHARGE, EFFECT_SKULL_BASH, - EFFECT_SOLARBEAM, + EFFECT_SOLAR_BEAM, EFFECT_SPIT_UP, EFFECT_FOCUS_PUNCH, EFFECT_SUPERPOWER, diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index ebdb471bfd96..f54ebfbf7e8e 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -26,9 +26,9 @@ struct { static void AnimMovePowderParticle(struct Sprite *); static void AnimMovePowderParticle_Step(struct Sprite *); static void AnimPowerAbsorptionOrb(struct Sprite *); -static void AnimSolarbeamBigOrb(struct Sprite *); -static void AnimSolarbeamSmallOrb(struct Sprite *); -static void AnimSolarbeamSmallOrb_Step(struct Sprite *); +static void AnimSolarBeamBigOrb(struct Sprite *); +static void AnimSolarBeamSmallOrb(struct Sprite *); +static void AnimSolarBeamSmallOrb_Step(struct Sprite *); static void AnimAbsorptionOrb(struct Sprite *); static void AnimAbsorptionOrb_Step(struct Sprite *); static void AnimHyperBeamOrb(struct Sprite *); @@ -208,49 +208,49 @@ const struct SpriteTemplate gPoisonPowderParticleSpriteTemplate = .callback = AnimMovePowderParticle, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds1[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds2[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds3[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds3[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds4[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds4[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds5[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds5[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds6[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds6[] = { ANIMCMD_FRAME(5, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamBigOrbAnimCmds7[] = +const union AnimCmd gSolarBeamBigOrbAnimCmds7[] = { ANIMCMD_FRAME(6, 1), ANIMCMD_END, }; -const union AnimCmd gSolarbeamSmallOrbAnimCms[] = +const union AnimCmd gSolarBeamSmallOrbAnimCms[] = { ANIMCMD_FRAME(7, 1), ANIMCMD_END, @@ -262,20 +262,20 @@ const union AnimCmd gPowerAbsorptionOrbAnimCmds[] = ANIMCMD_END, }; -const union AnimCmd *const gSolarbeamBigOrbAnimTable[] = +const union AnimCmd *const gSolarBeamBigOrbAnimTable[] = { - gSolarbeamBigOrbAnimCmds1, - gSolarbeamBigOrbAnimCmds2, - gSolarbeamBigOrbAnimCmds3, - gSolarbeamBigOrbAnimCmds4, - gSolarbeamBigOrbAnimCmds5, - gSolarbeamBigOrbAnimCmds6, - gSolarbeamBigOrbAnimCmds7, + gSolarBeamBigOrbAnimCmds1, + gSolarBeamBigOrbAnimCmds2, + gSolarBeamBigOrbAnimCmds3, + gSolarBeamBigOrbAnimCmds4, + gSolarBeamBigOrbAnimCmds5, + gSolarBeamBigOrbAnimCmds6, + gSolarBeamBigOrbAnimCmds7, }; -const union AnimCmd *const gSolarbeamSmallOrbAnimTable[] = +const union AnimCmd *const gSolarBeamSmallOrbAnimTable[] = { - gSolarbeamSmallOrbAnimCms, + gSolarBeamSmallOrbAnimCms, }; const union AnimCmd *const gPowerAbsorptionOrbAnimTable[] = @@ -303,26 +303,26 @@ const struct SpriteTemplate gPowerAbsorptionOrbSpriteTemplate = .callback = AnimPowerAbsorptionOrb, }; -const struct SpriteTemplate gSolarbeamBigOrbSpriteTemplate = +const struct SpriteTemplate gSolarBeamBigOrbSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_ORBS, .oam = &gOamData_AffineOff_ObjNormal_8x8, - .anims = gSolarbeamBigOrbAnimTable, + .anims = gSolarBeamBigOrbAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimSolarbeamBigOrb, + .callback = AnimSolarBeamBigOrb, }; -const struct SpriteTemplate gSolarbeamSmallOrbSpriteTemplate = +const struct SpriteTemplate gSolarBeamSmallOrbSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_ORBS, .oam = &gOamData_AffineOff_ObjNormal_8x8, - .anims = gSolarbeamSmallOrbAnimTable, + .anims = gSolarBeamSmallOrbAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimSolarbeamSmallOrb, + .callback = AnimSolarBeamSmallOrb, }; const union AffineAnimCmd gStockpileAbsorptionOrbAffineCmds[] = { @@ -371,7 +371,7 @@ const struct SpriteTemplate gHyperBeamOrbSpriteTemplate = .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_ORBS, .oam = &gOamData_AffineOff_ObjNormal_8x8, - .anims = gSolarbeamBigOrbAnimTable, + .anims = gSolarBeamBigOrbAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb, @@ -2252,7 +2252,7 @@ static void AnimPowerAbsorptionOrb(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: duration // arg 3: sprite anim number -static void AnimSolarbeamBigOrb(struct Sprite* sprite) +static void AnimSolarBeamBigOrb(struct Sprite* sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); StartSpriteAnim(sprite, gBattleAnimArgs[3]); @@ -2264,12 +2264,12 @@ static void AnimSolarbeamBigOrb(struct Sprite* sprite) } // Moves a small orb in a wavy pattern towards the target mon. -// The small orb "circles" the big orbs in AnimSolarbeamBigOrb. +// The small orb "circles" the big orbs in AnimSolarBeamBigOrb. // arg 0: initial x pixel offset // arg 1: initial y pixel offset // arg 2: duration // arg 3: initial wave offset -static void AnimSolarbeamSmallOrb(struct Sprite* sprite) +static void AnimSolarBeamSmallOrb(struct Sprite* sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; @@ -2279,11 +2279,11 @@ static void AnimSolarbeamSmallOrb(struct Sprite* sprite) sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); sprite->data[5] = gBattleAnimArgs[3]; - sprite->callback = AnimSolarbeamSmallOrb_Step; + sprite->callback = AnimSolarBeamSmallOrb_Step; sprite->callback(sprite); } -static void AnimSolarbeamSmallOrb_Step(struct Sprite* sprite) +static void AnimSolarBeamSmallOrb_Step(struct Sprite* sprite) { if (AnimTranslateLinear(sprite)) { @@ -2302,10 +2302,10 @@ static void AnimSolarbeamSmallOrb_Step(struct Sprite* sprite) } } -// Creates 15 small secondary orbs used in the solarbeam anim effect. +// Creates 15 small secondary orbs used in the SolarBeam anim effect. // There is a 7-frame delay between each of them. // No args. -void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId) +void AnimTask_CreateSmallSolarBeamOrbs(u8 taskId) { if (--gTasks[taskId].data[0] == -1) { @@ -2315,7 +2315,7 @@ void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId) gBattleAnimArgs[1] = 0; gBattleAnimArgs[2] = 80; gBattleAnimArgs[3] = 0; - CreateSpriteAndAnimate(&gSolarbeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1); + CreateSpriteAndAnimate(&gSolarBeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1); } if (gTasks[taskId].data[1] == 15) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 92d4b97079b7..2bc1cfedb05a 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -8098,7 +8098,7 @@ static bool8 IsTwoTurnsMove(u16 move) if (gBattleMoves[move].effect == EFFECT_SKULL_BASH || gBattleMoves[move].effect == EFFECT_RAZOR_WIND || gBattleMoves[move].effect == EFFECT_SKY_ATTACK - || gBattleMoves[move].effect == EFFECT_SOLARBEAM + || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE || gBattleMoves[move].effect == EFFECT_BIDE) return TRUE; @@ -8118,14 +8118,14 @@ static bool8 IsInvalidForSleepTalkOrAssist(u16 move) static u8 AttacksThisTurn(u8 battlerId, u16 move) // Note: returns 1 if it's a charging turn, otherwise 2 { // first argument is unused - if (gBattleMoves[move].effect == EFFECT_SOLARBEAM + if (gBattleMoves[move].effect == EFFECT_SOLAR_BEAM && (gBattleWeather & B_WEATHER_SUN)) return 2; if (gBattleMoves[move].effect == EFFECT_SKULL_BASH || gBattleMoves[move].effect == EFFECT_RAZOR_WIND || gBattleMoves[move].effect == EFFECT_SKY_ATTACK - || gBattleMoves[move].effect == EFFECT_SOLARBEAM + || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE || gBattleMoves[move].effect == EFFECT_BIDE) { diff --git a/src/battle_tv.c b/src/battle_tv.c index c78f1bff4439..f65bf73ea099 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -237,7 +237,7 @@ static const u16 sPoints_MoveEffect[NUM_BATTLE_MOVE_EFFECTS] = [EFFECT_FUTURE_SIGHT] = 1, [EFFECT_GUST] = 1, [EFFECT_FLINCH_MINIMIZE_HIT] = 1, - [EFFECT_SOLARBEAM] = 1, + [EFFECT_SOLAR_BEAM] = 1, [EFFECT_THUNDER] = 1, [EFFECT_TELEPORT] = 1, [EFFECT_BEAT_UP] = 2, diff --git a/src/data/battle_anim.h b/src/data/battle_anim.h index 5b24981d57f2..58b990c7388a 100644 --- a/src/data/battle_anim.h +++ b/src/data/battle_anim.h @@ -1619,7 +1619,7 @@ const struct BattleAnimBackground gBattleAnimBackgroundTable[] = [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure}, [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent}, [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer}, - [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent}, - [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer}, - [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests}, + [BG_SOLAR_BEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactOpponent}, + [BG_SOLAR_BEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactPlayer}, + [BG_SOLAR_BEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactContests}, }; diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index f78fa2c8c7b9..82892120fa90 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -990,7 +990,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = [MOVE_SOLAR_BEAM] = { - .effect = EFFECT_SOLARBEAM, + .effect = EFFECT_SOLAR_BEAM, .power = 120, .type = TYPE_GRASS, .accuracy = 100, diff --git a/src/data/items.h b/src/data/items.h index 370cd2022c88..20ee057da88b 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -3744,10 +3744,10 @@ const struct Item gItems[] = .fieldUseFunc = ItemUseOutOfBattle_TMHM, }, - [ITEM_TM22_SOLARBEAM] = + [ITEM_TM22_SOLAR_BEAM] = { .name = _("TM22"), - .itemId = ITEM_TM22_SOLARBEAM, + .itemId = ITEM_TM22_SOLAR_BEAM, .price = 3000, .description = sTM22Desc, .pocket = POCKET_TM_HM, diff --git a/src/data/pokemon/tmhm_learnsets.h b/src/data/pokemon/tmhm_learnsets.h index deeeda16f865..cb42d7c6fc98 100644 --- a/src/data/pokemon/tmhm_learnsets.h +++ b/src/data/pokemon/tmhm_learnsets.h @@ -15,7 +15,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -35,7 +35,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -57,7 +57,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -239,7 +239,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -264,7 +264,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM31_BRICK_BREAK) | TMHM(TM32_DOUBLE_TEAM) @@ -758,7 +758,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -794,7 +794,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -867,7 +867,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -901,7 +901,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -974,7 +974,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -992,7 +992,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -1011,7 +1011,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -1029,7 +1029,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM32_DOUBLE_TEAM) @@ -1052,7 +1052,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM32_DOUBLE_TEAM) @@ -1073,7 +1073,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM32_DOUBLE_TEAM) @@ -1093,7 +1093,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM32_DOUBLE_TEAM) @@ -1607,7 +1607,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -1626,7 +1626,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -1646,7 +1646,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -1778,7 +1778,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM11_SUNNY_DAY) | TMHM(TM17_PROTECT) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -1797,7 +1797,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM15_HYPER_BEAM) | TMHM(TM17_PROTECT) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -2348,7 +2348,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM32_DOUBLE_TEAM) @@ -2372,7 +2372,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM32_DOUBLE_TEAM) @@ -2495,7 +2495,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -2647,7 +2647,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -2680,7 +2680,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -2706,7 +2706,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -2872,7 +2872,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -3021,7 +3021,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -3198,7 +3198,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -3356,7 +3356,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -3560,7 +3560,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -3608,7 +3608,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -3655,7 +3655,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -3676,7 +3676,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -3700,7 +3700,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) @@ -3874,7 +3874,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM27_RETURN) @@ -3903,7 +3903,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -3976,7 +3976,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM31_BRICK_BREAK) @@ -4000,7 +4000,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM31_BRICK_BREAK) @@ -4020,7 +4020,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM29_PSYCHIC) @@ -4040,7 +4040,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM29_PSYCHIC) @@ -4151,7 +4151,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -4177,7 +4177,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM29_PSYCHIC) @@ -4202,7 +4202,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -4229,7 +4229,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -4258,7 +4258,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -4284,7 +4284,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -4373,7 +4373,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -4493,7 +4493,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM40_AERIAL_ACE) @@ -4510,7 +4510,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM40_AERIAL_ACE) @@ -4528,7 +4528,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM40_AERIAL_ACE) @@ -4547,7 +4547,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -4577,7 +4577,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -4598,7 +4598,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -4615,7 +4615,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -4855,7 +4855,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -4877,7 +4877,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -4901,7 +4901,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -4982,7 +4982,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -5017,7 +5017,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -5455,7 +5455,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM12_TAUNT) | TMHM(TM17_PROTECT) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) @@ -5481,7 +5481,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM15_HYPER_BEAM) | TMHM(TM17_PROTECT) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) @@ -5568,7 +5568,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -5593,7 +5593,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -5731,7 +5731,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -5766,7 +5766,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -5826,7 +5826,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -6003,7 +6003,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -6039,7 +6039,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -6114,7 +6114,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -6140,7 +6140,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -6169,7 +6169,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) @@ -6450,7 +6450,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -6473,7 +6473,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) | TMHM(TM30_SHADOW_BALL) @@ -6499,7 +6499,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM42_FACADE) @@ -6522,7 +6522,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM31_BRICK_BREAK) | TMHM(TM32_DOUBLE_TEAM) @@ -6552,7 +6552,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM31_BRICK_BREAK) | TMHM(TM32_DOUBLE_TEAM) @@ -6575,7 +6575,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6595,7 +6595,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6621,7 +6621,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6646,7 +6646,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6666,7 +6666,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6688,7 +6688,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) | TMHM(TM30_SHADOW_BALL) @@ -6745,7 +6745,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -6767,7 +6767,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM27_RETURN) | TMHM(TM31_BRICK_BREAK) @@ -6866,7 +6866,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -6888,7 +6888,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -6960,7 +6960,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -6987,7 +6987,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -7014,7 +7014,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -7048,7 +7048,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -7073,7 +7073,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -7383,7 +7383,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -7404,7 +7404,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM28_DIG) @@ -7428,7 +7428,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) @@ -7660,7 +7660,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM37_SANDSTORM) @@ -7680,7 +7680,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM37_SANDSTORM) @@ -7769,7 +7769,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM29_PSYCHIC) @@ -7906,7 +7906,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM31_BRICK_BREAK) | TMHM(TM32_DOUBLE_TEAM) @@ -7982,7 +7982,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM40_AERIAL_ACE) @@ -8005,7 +8005,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) @@ -8085,7 +8085,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -8108,7 +8108,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -8140,7 +8140,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -8174,7 +8174,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -8204,7 +8204,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -8229,7 +8229,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -8253,7 +8253,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM19_GIGA_DRAIN) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -8279,7 +8279,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) | TMHM(TM32_DOUBLE_TEAM) @@ -8302,7 +8302,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) @@ -8332,7 +8332,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM30_SHADOW_BALL) @@ -8538,7 +8538,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -8649,7 +8649,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -8683,7 +8683,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -8710,7 +8710,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -8736,7 +8736,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) @@ -8759,7 +8759,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) | TMHM(TM36_SLUDGE_BOMB) @@ -8777,7 +8777,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM19_GIGA_DRAIN) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM26_EARTHQUAKE) | TMHM(TM27_RETURN) | TMHM(TM32_DOUBLE_TEAM) @@ -9160,7 +9160,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -9196,7 +9196,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM17_PROTECT) | TMHM(TM18_RAIN_DANCE) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM23_IRON_TAIL) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) @@ -9234,7 +9234,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -9272,7 +9272,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM26_EARTHQUAKE) @@ -9337,7 +9337,7 @@ const u32 gTMHMLearnsets[][2] = | TMHM(TM18_RAIN_DANCE) | TMHM(TM20_SAFEGUARD) | TMHM(TM21_FRUSTRATION) - | TMHM(TM22_SOLARBEAM) + | TMHM(TM22_SOLAR_BEAM) | TMHM(TM24_THUNDERBOLT) | TMHM(TM25_THUNDER) | TMHM(TM27_RETURN) diff --git a/src/graphics.c b/src/graphics.c index 68d7ea5b9cfb..b4e1dfabe07f 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1050,8 +1050,8 @@ const u32 gBattleAnimBgTilemap_Ghost[] = INCBIN_U32("graphics/battle_anims/backg const u32 gBattleAnimSpritePal_WhipHit[] = INCBIN_U32("graphics/battle_anims/sprites/whip_hit.gbapal.lz"); -const u32 gBattleAnimBgPalette_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz"); -const u32 gBattleAnimBgTilemap_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.bin.lz"); // Unused +const u32 gBattleAnimBgPalette_SolarBeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz"); +const u32 gBattleAnimBgTilemap_SolarBeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.bin.lz"); // Unused const u32 gBerryBlenderCenter_Gfx[] = INCBIN_U32("graphics/berry_blender/center.8bpp.lz"); const u32 gBerryBlenderOuter_Gfx[] = INCBIN_U32("graphics/berry_blender/outer.4bpp.lz"); From a2c2d7e230436f208e0d5e7aa3226310a5f6cc42 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 00:28:49 +0800 Subject: [PATCH 364/762] Label indexes for movement speeds --- .../movement_action_func_tables.h | 18 +++++-- src/event_object_movement.c | 52 +++++++++---------- 2 files changed, 39 insertions(+), 31 deletions(-) diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 4df07be0dd0f..97dace044070 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -602,12 +602,20 @@ u8 (*const gMovementActionFuncs_FaceRight[])(struct ObjectEvent *, struct Sprite MovementAction_PauseSpriteAnim, }; +enum { + MOVE_SPEED_NORMAL, // walking + MOVE_SPEED_FAST_1, // running / surfing / sliding (ice tile) + MOVE_SPEED_FAST_2, // water current / acro bike + MOVE_SPEED_FASTER, // mach bike's max speed + MOVE_SPEED_FASTEST, +}; + static u8 (*const sDirectionAnimFuncsBySpeed[])(u8) = { - GetMoveDirectionAnimNum, - GetMoveDirectionFastAnimNum, - GetMoveDirectionFastAnimNum, - GetMoveDirectionFasterAnimNum, - GetMoveDirectionFastestAnimNum, + [MOVE_SPEED_NORMAL] = GetMoveDirectionAnimNum, + [MOVE_SPEED_FAST_1] = GetMoveDirectionFastAnimNum, + [MOVE_SPEED_FAST_2] = GetMoveDirectionFastAnimNum, + [MOVE_SPEED_FASTER] = GetMoveDirectionFasterAnimNum, + [MOVE_SPEED_FASTEST] = GetMoveDirectionFastestAnimNum, }; u8 (*const gMovementActionFuncs_WalkSlowDiagonalUpLeft[])(struct ObjectEvent *, struct Sprite *) = { diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 074fa238630f..704896f199db 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -5356,7 +5356,7 @@ bool8 MovementAction_WalkSlowRight_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkNormalDiagonalUpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTHWEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTHWEST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalDiagonalUpLeft_Step1(objectEvent, sprite); } @@ -5372,7 +5372,7 @@ bool8 MovementAction_WalkNormalDiagonalUpLeft_Step1(struct ObjectEvent *objectEv bool8 MovementAction_WalkNormalDiagonalUpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTHEAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTHEAST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalDiagonalUpRight_Step1(objectEvent, sprite); } @@ -5388,7 +5388,7 @@ bool8 MovementAction_WalkNormalDiagonalUpRight_Step1(struct ObjectEvent *objectE bool8 MovementAction_WalkNormalDiagonalDownLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTHWEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTHWEST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalDiagonalDownLeft_Step1(objectEvent, sprite); } @@ -5404,7 +5404,7 @@ bool8 MovementAction_WalkNormalDiagonalDownLeft_Step1(struct ObjectEvent *object bool8 MovementAction_WalkNormalDiagonalDownRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTHEAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTHEAST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalDiagonalDownRight_Step1(objectEvent, sprite); } @@ -5420,7 +5420,7 @@ bool8 MovementAction_WalkNormalDiagonalDownRight_Step1(struct ObjectEvent *objec bool8 MovementAction_WalkNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 0); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalDown_Step1(objectEvent, sprite); } @@ -5436,7 +5436,7 @@ bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTH, 0); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalUp_Step1(objectEvent, sprite); } @@ -5452,7 +5452,7 @@ bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 0); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalLeft_Step1(objectEvent, sprite); } @@ -5468,7 +5468,7 @@ bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 0); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL); return MovementAction_WalkNormalRight_Step1(objectEvent, sprite); } @@ -5701,7 +5701,7 @@ bool8 MovementAction_Delay16_Step0(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_WalkFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 1); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); return MovementAction_WalkFastDown_Step1(objectEvent, sprite); } @@ -5717,7 +5717,7 @@ bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTH, 1); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); return MovementAction_WalkFastUp_Step1(objectEvent, sprite); } @@ -5733,7 +5733,7 @@ bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, struct Sp bool8 MovementAction_WalkFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 1); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); return MovementAction_WalkFastLeft_Step1(objectEvent, sprite); } @@ -5749,7 +5749,7 @@ bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 1); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); return MovementAction_WalkFastRight_Step1(objectEvent, sprite); } @@ -5891,7 +5891,7 @@ bool8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *objectEve bool8 MovementAction_RideWaterCurrentDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 2); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2); return MovementAction_RideWaterCurrentDown_Step1(objectEvent, sprite); } @@ -5907,7 +5907,7 @@ bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_RideWaterCurrentUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTH, 2); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2); return MovementAction_RideWaterCurrentUp_Step1(objectEvent, sprite); } @@ -5923,7 +5923,7 @@ bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_RideWaterCurrentLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 2); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2); return MovementAction_RideWaterCurrentLeft_Step1(objectEvent, sprite); } @@ -5939,7 +5939,7 @@ bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_RideWaterCurrentRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 2); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2); return MovementAction_RideWaterCurrentRight_Step1(objectEvent, sprite); } @@ -5955,7 +5955,7 @@ bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent bool8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 3); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FASTER); return MovementAction_WalkFastestDown_Step1(objectEvent, sprite); } @@ -5971,7 +5971,7 @@ bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTH, 3); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FASTER); return MovementAction_WalkFastestUp_Step1(objectEvent, sprite); } @@ -5987,7 +5987,7 @@ bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 3); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FASTER); return MovementAction_WalkFastestLeft_Step1(objectEvent, sprite); } @@ -6003,7 +6003,7 @@ bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 3); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FASTER); return MovementAction_WalkFastestRight_Step1(objectEvent, sprite); } @@ -6019,7 +6019,7 @@ bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_SlideDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 4); + InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FASTEST); return MovementAction_SlideDown_Step1(objectEvent, sprite); } @@ -6035,7 +6035,7 @@ bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_SlideUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_NORTH, 4); + InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FASTEST); return MovementAction_SlideUp_Step1(objectEvent, sprite); } @@ -6051,7 +6051,7 @@ bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_SlideLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 4); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FASTEST); return MovementAction_SlideLeft_Step1(objectEvent, sprite); } @@ -6067,7 +6067,7 @@ bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_SlideRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 4); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FASTEST); return MovementAction_SlideRight_Step1(objectEvent, sprite); } @@ -6728,7 +6728,7 @@ bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkLeftAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_WEST, 1); + InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); sprite->affineAnimPaused = FALSE; ChangeSpriteAffineAnimIfDifferent(sprite, 2); return MovementAction_WalkLeftAffine_Step1(objectEvent, sprite); @@ -6747,7 +6747,7 @@ bool8 MovementAction_WalkLeftAffine_Step1(struct ObjectEvent *objectEvent, struc bool8 MovementAction_WalkRightAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitMovementNormal(objectEvent, sprite, DIR_EAST, 1); + InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); sprite->affineAnimPaused = FALSE; ChangeSpriteAffineAnimIfDifferent(sprite, 3); return MovementAction_WalkRightAffine_Step1(objectEvent, sprite); From 4cedd2d551ee10cccb68f4f427a02e777d98c843 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 01:01:07 +0800 Subject: [PATCH 365/762] Rename WalkFastest functions to WalkFaster --- include/constants/event_object_movement.h | 8 +-- include/event_object_movement.h | 2 +- src/bike.c | 4 +- .../movement_action_func_tables.h | 56 +++++++++---------- src/event_object_movement.c | 40 ++++++------- src/field_player_avatar.c | 4 +- 6 files changed, 57 insertions(+), 57 deletions(-) diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 4ffb869e4f13..e7238b56e064 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -128,10 +128,10 @@ #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP 0x2A #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT 0x2B #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT 0x2C -#define MOVEMENT_ACTION_WALK_FASTEST_DOWN 0x2D -#define MOVEMENT_ACTION_WALK_FASTEST_UP 0x2E -#define MOVEMENT_ACTION_WALK_FASTEST_LEFT 0x2F -#define MOVEMENT_ACTION_WALK_FASTEST_RIGHT 0x30 +#define MOVEMENT_ACTION_WALK_FASTER_DOWN 0x2D +#define MOVEMENT_ACTION_WALK_FASTER_UP 0x2E +#define MOVEMENT_ACTION_WALK_FASTER_LEFT 0x2F +#define MOVEMENT_ACTION_WALK_FASTER_RIGHT 0x30 #define MOVEMENT_ACTION_SLIDE_DOWN 0x31 #define MOVEMENT_ACTION_SLIDE_UP 0x32 #define MOVEMENT_ACTION_SLIDE_LEFT 0x33 diff --git a/include/event_object_movement.h b/include/event_object_movement.h index a935502e641b..11dac813d929 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -136,7 +136,7 @@ u8 GetFaceDirectionMovementAction(u32); u8 GetWalkNormalMovementAction(u32); u8 GetWalkFastMovementAction(u32); u8 GetRideWaterCurrentMovementAction(u32); -u8 GetWalkFastestMovementAction(u32); +u8 GetWalkFasterMovementAction(u32); u8 GetPlayerRunMovementAction(u32); u8 GetJumpInPlaceMovementAction(u32); u8 GetAcroWheelieFaceDirectionMovementAction(u32); diff --git a/src/bike.c b/src/bike.c index 39433522ec22..5aa132a9e3c3 100644 --- a/src/bike.c +++ b/src/bike.c @@ -71,12 +71,12 @@ static void (*const sMachBikeTransitions[])(u8) = MachBikeTransition_TrySlowDown, }; -// bikeFrameCounter is input which is represented by sMachBikeSpeeds in order: 0 is normal speed (1 speed), 1 is fast speed (2 speed), 2 is fastest speed (4 speed) +// bikeFrameCounter is input which is represented by sMachBikeSpeeds in order: 0 is normal speed (1 speed), 1 is fast speed (2 speed), 2 is faster speed static void (*const sMachBikeSpeedCallbacks[])(u8) = { PlayerGoSpeed1, // normal speed (1 speed) PlayerGoSpeed2, // fast speed (2 speed) - PlayerGoSpeed4, // fastest speed (4 speed) + PlayerGoSpeed4, // faster speed }; static void (*const sAcroBikeTransitions[])(u8) = diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 97dace044070..729b4fe23498 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -85,14 +85,14 @@ u8 MovementAction_RideWaterCurrentLeft_Step0(struct ObjectEvent *, struct Sprite u8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_RideWaterCurrentRight_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterDown_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterDown_Step1(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterUp_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterUp_Step1(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterLeft_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterLeft_Step1(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterRight_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkFasterRight_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_SlideDown_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_SlideDown_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_SlideUp_Step0(struct ObjectEvent *, struct Sprite *); @@ -307,10 +307,10 @@ u8 (*const gMovementActionFuncs_RideWaterCurrentDown[])(struct ObjectEvent *, st u8 (*const gMovementActionFuncs_RideWaterCurrentUp[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_RideWaterCurrentLeft[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_RideWaterCurrentRight[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkFastestDown[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkFastestUp[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkFastestLeft[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkFastestRight[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkFasterDown[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkFasterUp[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkFasterLeft[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkFasterRight[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_SlideDown[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_SlideUp[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_SlideLeft[])(struct ObjectEvent *, struct Sprite *); @@ -467,10 +467,10 @@ u8 (*const *const gMovementActionFuncs[])(struct ObjectEvent *, struct Sprite *) [MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP] = gMovementActionFuncs_RideWaterCurrentUp, [MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT] = gMovementActionFuncs_RideWaterCurrentLeft, [MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT] = gMovementActionFuncs_RideWaterCurrentRight, - [MOVEMENT_ACTION_WALK_FASTEST_DOWN] = gMovementActionFuncs_WalkFastestDown, - [MOVEMENT_ACTION_WALK_FASTEST_UP] = gMovementActionFuncs_WalkFastestUp, - [MOVEMENT_ACTION_WALK_FASTEST_LEFT] = gMovementActionFuncs_WalkFastestLeft, - [MOVEMENT_ACTION_WALK_FASTEST_RIGHT] = gMovementActionFuncs_WalkFastestRight, + [MOVEMENT_ACTION_WALK_FASTER_DOWN] = gMovementActionFuncs_WalkFasterDown, + [MOVEMENT_ACTION_WALK_FASTER_UP] = gMovementActionFuncs_WalkFasterUp, + [MOVEMENT_ACTION_WALK_FASTER_LEFT] = gMovementActionFuncs_WalkFasterLeft, + [MOVEMENT_ACTION_WALK_FASTER_RIGHT] = gMovementActionFuncs_WalkFasterRight, [MOVEMENT_ACTION_SLIDE_DOWN] = gMovementActionFuncs_SlideDown, [MOVEMENT_ACTION_SLIDE_UP] = gMovementActionFuncs_SlideUp, [MOVEMENT_ACTION_SLIDE_LEFT] = gMovementActionFuncs_SlideLeft, @@ -915,27 +915,27 @@ u8 (*const gMovementActionFuncs_RideWaterCurrentRight[])(struct ObjectEvent *, s MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkFastestDown[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkFastestDown_Step0, - MovementAction_WalkFastestDown_Step1, +u8 (*const gMovementActionFuncs_WalkFasterDown[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkFasterDown_Step0, + MovementAction_WalkFasterDown_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkFastestUp[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkFastestUp_Step0, - MovementAction_WalkFastestUp_Step1, +u8 (*const gMovementActionFuncs_WalkFasterUp[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkFasterUp_Step0, + MovementAction_WalkFasterUp_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkFastestLeft[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkFastestLeft_Step0, - MovementAction_WalkFastestLeft_Step1, +u8 (*const gMovementActionFuncs_WalkFasterLeft[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkFasterLeft_Step0, + MovementAction_WalkFasterLeft_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkFastestRight[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkFastestRight_Step0, - MovementAction_WalkFastestRight_Step1, +u8 (*const gMovementActionFuncs_WalkFasterRight[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkFasterRight_Step0, + MovementAction_WalkFasterRight_Step1, MovementAction_PauseSpriteAnim, }; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 704896f199db..cddad9aa0dce 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -941,12 +941,12 @@ const u8 gRideWaterCurrentMovementActions[] = { MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT, MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT, }; -const u8 gWalkFastestMovementActions[] = { - MOVEMENT_ACTION_WALK_FASTEST_DOWN, - MOVEMENT_ACTION_WALK_FASTEST_DOWN, - MOVEMENT_ACTION_WALK_FASTEST_UP, - MOVEMENT_ACTION_WALK_FASTEST_LEFT, - MOVEMENT_ACTION_WALK_FASTEST_RIGHT, +const u8 gWalkFasterMovementActions[] = { + MOVEMENT_ACTION_WALK_FASTER_DOWN, + MOVEMENT_ACTION_WALK_FASTER_DOWN, + MOVEMENT_ACTION_WALK_FASTER_UP, + MOVEMENT_ACTION_WALK_FASTER_LEFT, + MOVEMENT_ACTION_WALK_FASTER_RIGHT, }; const u8 gSlideMovementActions[] = { MOVEMENT_ACTION_SLIDE_DOWN, @@ -4314,7 +4314,7 @@ bool8 CopyablePlayerMovement_GoSpeed2(struct ObjectEvent *objectEvent, struct Sp direction = playerDirection; direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); - ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFastestMovementAction(direction)); + ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFasterMovementAction(direction)); if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); @@ -5025,7 +5025,7 @@ dirn_to_anim(GetWalkSlowMovementAction, gWalkSlowMovementActions); dirn_to_anim(GetWalkNormalMovementAction, gWalkNormalMovementActions); dirn_to_anim(GetWalkFastMovementAction, gWalkFastMovementActions); dirn_to_anim(GetRideWaterCurrentMovementAction, gRideWaterCurrentMovementActions); -dirn_to_anim(GetWalkFastestMovementAction, gWalkFastestMovementActions); +dirn_to_anim(GetWalkFasterMovementAction, gWalkFasterMovementActions); dirn_to_anim(GetSlideMovementAction, gSlideMovementActions); dirn_to_anim(GetPlayerRunMovementAction, gPlayerRunMovementActions); dirn_to_anim(GetJump2MovementAction, gJump2MovementActions); @@ -5953,13 +5953,13 @@ bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent return FALSE; } -bool8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FASTER); - return MovementAction_WalkFastestDown_Step1(objectEvent, sprite); + return MovementAction_WalkFasterDown_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (UpdateMovementNormal(objectEvent, sprite)) { @@ -5969,13 +5969,13 @@ bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, stru return FALSE; } -bool8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FASTER); - return MovementAction_WalkFastestUp_Step1(objectEvent, sprite); + return MovementAction_WalkFasterUp_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (UpdateMovementNormal(objectEvent, sprite)) { @@ -5985,13 +5985,13 @@ bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct return FALSE; } -bool8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FASTER); - return MovementAction_WalkFastestLeft_Step1(objectEvent, sprite); + return MovementAction_WalkFasterLeft_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (UpdateMovementNormal(objectEvent, sprite)) { @@ -6001,13 +6001,13 @@ bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, stru return FALSE; } -bool8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FASTER); - return MovementAction_WalkFastestRight_Step1(objectEvent, sprite); + return MovementAction_WalkFasterRight_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkFasterRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (UpdateMovementNormal(objectEvent, sprite)) { diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 6ce304c2c083..84c70435d639 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -970,10 +970,10 @@ void PlayerRideWaterCurrent(u8 a) PlayerSetAnimId(GetRideWaterCurrentMovementAction(a), 2); } -// fastest speed (4 speed) +// faster speed void PlayerGoSpeed4(u8 a) { - PlayerSetAnimId(GetWalkFastestMovementAction(a), 2); + PlayerSetAnimId(GetWalkFasterMovementAction(a), 2); } static void PlayerRun(u8 a) From 3f5f057ebeebc7330af453fbc445e021ac64cbe7 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 01:20:41 +0800 Subject: [PATCH 366/762] Rename GoSpeedX functions to WalkNormal, WalkFast, etc. --- include/field_player_avatar.h | 6 ++--- src/bike.c | 8 +++---- src/field_player_avatar.c | 41 ++++++++++++++++------------------- 3 files changed, 26 insertions(+), 29 deletions(-) diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index e9174d589469..823564f2260c 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -11,10 +11,10 @@ void PlayerGetDestCoords(s16 *, s16 *); u8 GetPlayerFacingDirection(void); u8 GetPlayerMovementDirection(void); u8 PlayerGetCopyableMovement(void); -void PlayerGoSpeed1(u8); -void PlayerGoSpeed2(u8); +void PlayerWalkNormal(u8); +void PlayerWalkFast(u8); void PlayerRideWaterCurrent(u8); -void PlayerGoSpeed4(u8); +void PlayerWalkFaster(u8); void PlayerOnBikeCollide(u8); void PlayerFaceDirection(u8 a); void PlayerTurnInPlace(u8 a); diff --git a/src/bike.c b/src/bike.c index 5aa132a9e3c3..470b6412f132 100644 --- a/src/bike.c +++ b/src/bike.c @@ -71,12 +71,12 @@ static void (*const sMachBikeTransitions[])(u8) = MachBikeTransition_TrySlowDown, }; -// bikeFrameCounter is input which is represented by sMachBikeSpeeds in order: 0 is normal speed (1 speed), 1 is fast speed (2 speed), 2 is faster speed +// bikeFrameCounter is input which is represented by sMachBikeSpeeds in order static void (*const sMachBikeSpeedCallbacks[])(u8) = { - PlayerGoSpeed1, // normal speed (1 speed) - PlayerGoSpeed2, // fast speed (2 speed) - PlayerGoSpeed4, // faster speed + PlayerWalkNormal, + PlayerWalkFast, + PlayerWalkFaster, }; static void (*const sAcroBikeTransitions[])(u8) = diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 84c70435d639..00800636de83 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -470,27 +470,27 @@ static u8 DoForcedMovementInCurrentDirection(void (*a)(u8)) static bool8 ForcedMovement_Slip(void) { - return DoForcedMovementInCurrentDirection(PlayerGoSpeed2); + return DoForcedMovementInCurrentDirection(PlayerWalkFast); } static bool8 ForcedMovement_WalkSouth(void) { - return DoForcedMovement(DIR_SOUTH, PlayerGoSpeed1); + return DoForcedMovement(DIR_SOUTH, PlayerWalkNormal); } static bool8 ForcedMovement_WalkNorth(void) { - return DoForcedMovement(DIR_NORTH, PlayerGoSpeed1); + return DoForcedMovement(DIR_NORTH, PlayerWalkNormal); } static bool8 ForcedMovement_WalkWest(void) { - return DoForcedMovement(DIR_WEST, PlayerGoSpeed1); + return DoForcedMovement(DIR_WEST, PlayerWalkNormal); } static bool8 ForcedMovement_WalkEast(void) { - return DoForcedMovement(DIR_EAST, PlayerGoSpeed1); + return DoForcedMovement(DIR_EAST, PlayerWalkNormal); } static bool8 ForcedMovement_PushedSouthByCurrent(void) @@ -524,22 +524,22 @@ static u8 ForcedMovement_Slide(u8 direction, void (*b)(u8)) static bool8 ForcedMovement_SlideSouth(void) { - return ForcedMovement_Slide(DIR_SOUTH, PlayerGoSpeed2); + return ForcedMovement_Slide(DIR_SOUTH, PlayerWalkFast); } static bool8 ForcedMovement_SlideNorth(void) { - return ForcedMovement_Slide(DIR_NORTH, PlayerGoSpeed2); + return ForcedMovement_Slide(DIR_NORTH, PlayerWalkFast); } static bool8 ForcedMovement_SlideWest(void) { - return ForcedMovement_Slide(DIR_WEST, PlayerGoSpeed2); + return ForcedMovement_Slide(DIR_WEST, PlayerWalkFast); } static bool8 ForcedMovement_SlideEast(void) { - return ForcedMovement_Slide(DIR_EAST, PlayerGoSpeed2); + return ForcedMovement_Slide(DIR_EAST, PlayerWalkFast); } static bool8 ForcedMovement_MatJump(void) @@ -562,7 +562,7 @@ static bool8 ForcedMovement_MuddySlope(void) { Bike_UpdateBikeCounterSpeed(0); playerObjEvent->facingDirectionLocked = TRUE; - return DoForcedMovement(DIR_SOUTH, PlayerGoSpeed2); + return DoForcedMovement(DIR_SOUTH, PlayerWalkFast); } else { @@ -631,8 +631,8 @@ static void PlayerNotOnBikeMoving(u8 direction, u16 heldKeys) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) { - // speed 2 is fast, same speed as running - PlayerGoSpeed2(direction); + // same speed as running + PlayerWalkFast(direction); return; } @@ -645,7 +645,7 @@ static void PlayerNotOnBikeMoving(u8 direction, u16 heldKeys) } else { - PlayerGoSpeed1(direction); + PlayerWalkNormal(direction); } } @@ -953,16 +953,14 @@ void PlayerSetAnimId(u8 movementActionId, u8 copyableMovement) } } -// normal speed (1 speed) -void PlayerGoSpeed1(u8 a) +void PlayerWalkNormal(u8 direction) { - PlayerSetAnimId(GetWalkNormalMovementAction(a), 2); + PlayerSetAnimId(GetWalkNormalMovementAction(direction), 2); } -// fast speed (2 speed) -void PlayerGoSpeed2(u8 a) +void PlayerWalkFast(u8 direction) { - PlayerSetAnimId(GetWalkFastMovementAction(a), 2); + PlayerSetAnimId(GetWalkFastMovementAction(direction), 2); } void PlayerRideWaterCurrent(u8 a) @@ -970,10 +968,9 @@ void PlayerRideWaterCurrent(u8 a) PlayerSetAnimId(GetRideWaterCurrentMovementAction(a), 2); } -// faster speed -void PlayerGoSpeed4(u8 a) +void PlayerWalkFaster(u8 direction) { - PlayerSetAnimId(GetWalkFasterMovementAction(a), 2); + PlayerSetAnimId(GetWalkFasterMovementAction(direction), 2); } static void PlayerRun(u8 a) From 3556024a06b3d1c973cdd0ce64623652c5e0e5b8 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 02:51:30 +0800 Subject: [PATCH 367/762] Distinguish clearly the two enums related to speed --- include/bike.h | 10 +++++----- src/bike.c | 26 +++++++++++++------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/include/bike.h b/include/bike.h index 893b0b19e450..afe773d42ebb 100644 --- a/include/bike.h +++ b/include/bike.h @@ -17,11 +17,11 @@ struct BikeHistoryInputInfo // Player speeds enum { - SPEED_STANDING, - SPEED_NORMAL, - SPEED_FAST, - SPEED_FASTER, - SPEED_FASTEST, + BIKE_SPEED_STANDING, + BIKE_SPEED_NORMAL, + BIKE_SPEED_FAST, + BIKE_SPEED_FASTER, + BIKE_SPEED_FASTEST, }; // mach bike transitions enum diff --git a/src/bike.c b/src/bike.c index 470b6412f132..fd794a3c7a4b 100644 --- a/src/bike.c +++ b/src/bike.c @@ -108,7 +108,7 @@ static u8 (*const sAcroBikeInputHandlers[])(u8 *, u16, u16) = }; // used with bikeFrameCounter from mach bike -static const u16 sMachBikeSpeeds[] = {SPEED_NORMAL, SPEED_FAST, SPEED_FASTEST}; +static const u16 sMachBikeSpeeds[] = {BIKE_SPEED_NORMAL, BIKE_SPEED_FAST, BIKE_SPEED_FASTEST}; // this is a list of timers to compare against later, terminated with 0. the only timer being compared against is 4 frames in this list. static const u8 sAcroBikeJumpTimerList[] = {4, 0}; @@ -147,7 +147,7 @@ static u8 GetMachBikeTransition(u8 *dirTraveling) if (*dirTraveling == 0) { *dirTraveling = direction; // update the direction, since below we either faced a direction or we started moving. - if (gPlayerAvatar.bikeSpeed == SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed == BIKE_SPEED_STANDING) { gPlayerAvatar.runningState = NOT_MOVING; return MACH_TRANS_FACE_DIRECTION; @@ -159,7 +159,7 @@ static u8 GetMachBikeTransition(u8 *dirTraveling) // we need to check if the last traveled direction changed from the new direction as well as ensuring that we dont update the state while the player is moving: see the else check. if (*dirTraveling != direction && gPlayerAvatar.runningState != MOVING) { - if (gPlayerAvatar.bikeSpeed != SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed != BIKE_SPEED_STANDING) { *dirTraveling = direction; // implement the new direction gPlayerAvatar.runningState = MOVING; @@ -246,7 +246,7 @@ static void MachBikeTransition_TrySlowDown(u8 direction) { u8 collision; - if (gPlayerAvatar.bikeSpeed != SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed != BIKE_SPEED_STANDING) gPlayerAvatar.bikeFrameCounter = --gPlayerAvatar.bikeSpeed; collision = GetBikeCollision(direction); @@ -306,7 +306,7 @@ static u8 AcroBikeHandleInputNormal(u8 *newDirection, u16 newKeys, u16 heldKeys) return ACRO_TRANS_FACE_DIRECTION; } } - if (*newDirection == direction && (heldKeys & B_BUTTON) && gPlayerAvatar.bikeSpeed == SPEED_STANDING) + if (*newDirection == direction && (heldKeys & B_BUTTON) && gPlayerAvatar.bikeSpeed == BIKE_SPEED_STANDING) { gPlayerAvatar.bikeSpeed++; gPlayerAvatar.acroBikeState = ACRO_STATE_WHEELIE_MOVING; @@ -342,7 +342,7 @@ static u8 AcroBikeHandleInputTurning(u8 *newDirection, u16 newKeys, u16 heldKeys if (*newDirection == AcroBike_GetJumpDirection()) { Bike_SetBikeStill(); // Bike_SetBikeStill sets speed to standing, but the next line immediately overrides it. could have just reset acroBikeState to 0 here instead of wasting a jump. - gPlayerAvatar.bikeSpeed = SPEED_NORMAL; + gPlayerAvatar.bikeSpeed = BIKE_SPEED_NORMAL; if (*newDirection == GetOppositeDirection(direction)) { // do a turn jump. @@ -775,7 +775,7 @@ static void AcroBike_TryHistoryUpdate(u16 newKeys, u16 heldKeys) // newKeys is u else { Bike_UpdateDirTimerHistory(direction); - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; } direction = heldKeys & (A_BUTTON | B_BUTTON | SELECT_BUTTON | START_BUTTON); // directions is reused for some reason. @@ -787,7 +787,7 @@ static void AcroBike_TryHistoryUpdate(u16 newKeys, u16 heldKeys) // newKeys is u else { Bike_UpdateABStartSelectHistory(direction); - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; } } @@ -994,7 +994,7 @@ void BikeClearState(int newDirHistory, int newAbStartHistory) gPlayerAvatar.acroBikeState = ACRO_STATE_NORMAL; gPlayerAvatar.newDirBackup = DIR_NONE; gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; gPlayerAvatar.directionHistory = newDirHistory; gPlayerAvatar.abStartSelectHistory = newAbStartHistory; @@ -1014,7 +1014,7 @@ void Bike_UpdateBikeCounterSpeed(u8 counter) static void Bike_SetBikeStill(void) { gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; } s16 GetPlayerSpeed(void) @@ -1027,11 +1027,11 @@ s16 GetPlayerSpeed(void) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE) return machSpeeds[gPlayerAvatar.bikeFrameCounter]; else if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_ACRO_BIKE) - return SPEED_FASTER; + return BIKE_SPEED_FASTER; else if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_SURFING | PLAYER_AVATAR_FLAG_DASH)) - return SPEED_FAST; + return BIKE_SPEED_FAST; else - return SPEED_NORMAL; + return BIKE_SPEED_NORMAL; } void Bike_HandleBumpySlopeJump(void) From 510ccbdf4cdc380594d9ee253fc209cb477d9df4 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 02:56:23 +0800 Subject: [PATCH 368/762] Move definition of constants for movement speed --- src/data/object_events/movement_action_func_tables.h | 8 -------- src/event_object_movement.c | 8 ++++++++ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 729b4fe23498..aa55c31ef595 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -602,14 +602,6 @@ u8 (*const gMovementActionFuncs_FaceRight[])(struct ObjectEvent *, struct Sprite MovementAction_PauseSpriteAnim, }; -enum { - MOVE_SPEED_NORMAL, // walking - MOVE_SPEED_FAST_1, // running / surfing / sliding (ice tile) - MOVE_SPEED_FAST_2, // water current / acro bike - MOVE_SPEED_FASTER, // mach bike's max speed - MOVE_SPEED_FASTEST, -}; - static u8 (*const sDirectionAnimFuncsBySpeed[])(u8) = { [MOVE_SPEED_NORMAL] = GetMoveDirectionAnimNum, [MOVE_SPEED_FAST_1] = GetMoveDirectionFastAnimNum, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index cddad9aa0dce..1bb4991abb51 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -32,6 +32,14 @@ // this file was known as evobjmv.c in Game Freak's original source +enum { + MOVE_SPEED_NORMAL, // walking + MOVE_SPEED_FAST_1, // running / surfing / sliding (ice tile) + MOVE_SPEED_FAST_2, // water current / acro bike + MOVE_SPEED_FASTER, // mach bike's max speed + MOVE_SPEED_FASTEST, +}; + // Sprite data used throughout #define sObjEventId data[0] #define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table From afb9ff3a40dcfb2681ef274752bceb726d14b783 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 18:06:15 -0400 Subject: [PATCH 369/762] Document files with a few remaining symbols --- gflib/sprite.c | 103 ++- gflib/sprite.h | 7 +- include/constants/event_object_movement.h | 15 + include/constants/metatile_behaviors.h | 6 +- include/event_object_movement.h | 12 +- include/field_weather.h | 2 +- include/global.fieldmap.h | 2 +- include/international_string_util.h | 2 +- include/link.h | 3 +- include/menu_helpers.h | 4 +- include/metatile_behavior.h | 9 +- include/overworld.h | 4 +- include/palette_util.h | 2 +- include/text_window.h | 4 +- src/battle_dome.c | 18 +- src/battle_pyramid_bag.c | 14 +- src/berry_tag_screen.c | 6 +- src/bike.c | 2 +- src/confetti_util.c | 37 -- .../object_events/movement_type_func_tables.h | 22 +- src/decompress.c | 2 +- src/easy_chat.c | 2 +- src/event_object_movement.c | 604 +++++++----------- src/field_control_avatar.c | 7 +- src/field_player_avatar.c | 97 +-- src/field_weather.c | 4 +- src/field_weather_effect.c | 2 +- src/international_string_util.c | 9 +- src/item_menu.c | 16 +- src/item_use.c | 2 +- src/link.c | 4 +- src/mail.c | 6 +- src/menu_helpers.c | 38 +- src/metatile_behavior.c | 23 +- src/minigame_countdown.c | 2 +- src/mystery_event_menu.c | 7 +- src/mystery_gift_menu.c | 2 +- src/overworld.c | 34 +- src/palette_util.c | 39 +- src/party_menu.c | 16 +- src/pokeblock.c | 10 +- src/pokeblock_feed.c | 4 +- src/pokemon_jump.c | 2 +- src/pokemon_summary_screen.c | 14 +- src/pokenav.c | 4 +- src/pokenav_match_call_ui.c | 5 +- src/roulette.c | 8 +- src/scrcmd.c | 6 +- src/start_menu.c | 6 +- src/text_window.c | 4 +- src/trainer_card.c | 6 +- src/union_room_chat.c | 14 +- 52 files changed, 563 insertions(+), 710 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 9629fc31b446..f05fe76f2cd5 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -7,6 +7,9 @@ #define OAM_MATRIX_COUNT 32 +#define sAnchorX data[6] +#define sAnchorY data[7] + #define SET_SPRITE_TILE_RANGE(index, start, count) \ { \ sSpriteTileRanges[index * 2] = start; \ @@ -91,7 +94,7 @@ static void ApplyAffineAnimFrame(u8 matrixNum, struct AffineAnimFrameCmd *frameC static u8 IndexOfSpriteTileTag(u16 tag); static void AllocSpriteTileRange(u16 tag, u16 start, u16 count); static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset); -static void obj_update_pos2(struct Sprite* sprite, s32 a1, s32 a2); +static void UpdateSpriteMatrixAnchorPos(struct Sprite* sprite, s32 a1, s32 a2); typedef void (*AnimFunc)(struct Sprite *); typedef void (*AnimCmdFunc)(struct Sprite *); @@ -99,13 +102,13 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *); #define DUMMY_OAM_DATA \ { \ - .y = 160, \ + .y = DISPLAY_HEIGHT, \ .affineMode = 0, \ .objMode = 0, \ .mosaic = 0, \ .bpp = 0, \ .shape = SPRITE_SHAPE(8x8), \ - .x = 304, \ + .x = DISPLAY_WIDTH + 64, \ .matrixNum = 0, \ .size = SPRITE_SIZE(8x8), \ .tileNum = 0, \ @@ -159,41 +162,11 @@ static const struct Sprite sDummySprite = { .oam = DUMMY_OAM_DATA, .anims = gDummySpriteAnimTable, - .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .template = &gDummySpriteTemplate, - .subspriteTables = NULL, .callback = SpriteCallbackDummy, - .x = 304, .y = 160, - .x2 = 0, .y2 = 0, - .centerToCornerVecX = 0, - .centerToCornerVecY = 0, - .animNum = 0, - .animCmdIndex = 0, - .animDelayCounter = 0, - .animPaused = 0, - .affineAnimPaused = 0, - .animLoopCounter = 0, - .data = {0, 0, 0, 0, 0, 0, 0}, - .inUse = 0, - .coordOffsetEnabled = 0, - .invisible = FALSE, - .flags_3 = 0, - .flags_4 = 0, - .flags_5 = 0, - .flags_6 = 0, - .flags_7 = 0, - .hFlip = 0, - .vFlip = 0, - .animBeginning = 0, - .affineAnimBeginning = 0, - .animEnded = 0, - .affineAnimEnded = 0, - .usingSheet = 0, - .flags_f = 0, - .sheetTileStart = 0, - .subspriteTableNum = 0, - .subspriteMode = 0, + .x = DISPLAY_WIDTH + 64, + .y = DISPLAY_HEIGHT, .subpriority = 0xFF }; @@ -890,16 +863,26 @@ void ResetAllSprites(void) ResetSprite(&gSprites[i]); } -// UB: template pointer may point to freed temporary storage void FreeSpriteTiles(struct Sprite *sprite) { +// UB: template pointer may point to freed temporary storage +#ifdef UBFIX + if (!sprite || !sprite->template) + return; +#endif + if (sprite->template->tileTag != TAG_NONE) FreeSpriteTilesByTag(sprite->template->tileTag); } -// UB: template pointer may point to freed temporary storage void FreeSpritePalette(struct Sprite *sprite) { +// UB: template pointer may point to freed temporary storage +#ifdef UBFIX + if (!sprite || !sprite->template) + return; +#endif + FreeSpritePaletteByTag(sprite->template->paletteTag); } @@ -1098,8 +1081,8 @@ void BeginAffineAnim(struct Sprite *sprite) sprite->affineAnimEnded = FALSE; ApplyAffineAnimFrame(matrixNum, &frameCmd); sAffineAnimStates[matrixNum].delayCounter = frameCmd.duration; - if (sprite->flags_f) - obj_update_pos2(sprite, sprite->data[6], sprite->data[7]); + if (sprite->anchored) + UpdateSpriteMatrixAnchorPos(sprite, sprite->sAnchorX, sprite->sAnchorY); } } @@ -1124,8 +1107,8 @@ void ContinueAffineAnim(struct Sprite *sprite) funcIndex = type - 32765; sAffineAnimCmdFuncs[funcIndex](matrixNum, sprite); } - if (sprite->flags_f) - obj_update_pos2(sprite, sprite->data[6], sprite->data[7]); + if (sprite->anchored) + UpdateSpriteMatrixAnchorPos(sprite, sprite->sAnchorX, sprite->sAnchorY); } } @@ -1219,14 +1202,16 @@ u8 GetSpriteMatrixNum(struct Sprite *sprite) return matrixNum; } -void sub_8007E18(struct Sprite* sprite, s16 a2, s16 a3) +// Used to shift a sprite's position as it scales. +// Only used by the minigame countdown, so that for instance the numbers don't slide up as they squish down before jumping. +void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y) { - sprite->data[6] = a2; - sprite->data[7] = a3; - sprite->flags_f = 1; + sprite->sAnchorX = x; + sprite->sAnchorY = y; + sprite->anchored = TRUE; } -s32 sub_8007E28(s32 a0, s32 a1, s32 a2) +static s32 GetAnchorCoord(s32 a0, s32 a1, s32 coord) { s32 subResult, var1; @@ -1235,27 +1220,27 @@ s32 sub_8007E28(s32 a0, s32 a1, s32 a2) var1 = -(subResult) >> 9; else var1 = -(subResult >> 9); - return a2 - ((u32)(a2 * a1) / (u32)(a0) + var1); + return coord - ((u32)(coord * a1) / (u32)(a0) + var1); } -void obj_update_pos2(struct Sprite *sprite, s32 a1, s32 a2) +static void UpdateSpriteMatrixAnchorPos(struct Sprite *sprite, s32 x, s32 y) { - s32 var0, var1, var2; + s32 dimension, var1, var2; u32 matrixNum = sprite->oam.matrixNum; - if (a1 != 0x800) + if (x != NO_ANCHOR) { - var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].width; - var1 = var0 << 8; - var2 = (var0 << 16) / gOamMatrices[matrixNum].a; - sprite->x2 = sub_8007E28(var1, var2, a1); + dimension = sOamDimensions32[sprite->oam.shape][sprite->oam.size].width; + var1 = dimension << 8; + var2 = (dimension << 16) / gOamMatrices[matrixNum].a; + sprite->x2 = GetAnchorCoord(var1, var2, x); } - if (a2 != 0x800) + if (y != NO_ANCHOR) { - var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].height; - var1 = var0 << 8; - var2 = (var0 << 16) / gOamMatrices[matrixNum].d; - sprite->y2 = sub_8007E28(var1, var2, a2); + dimension = sOamDimensions32[sprite->oam.shape][sprite->oam.size].height; + var1 = dimension << 8; + var2 = (dimension << 16) / gOamMatrices[matrixNum].d; + sprite->y2 = GetAnchorCoord(var1, var2, y); } } diff --git a/gflib/sprite.h b/gflib/sprite.h index 89299d43ed04..595ecd7dbd9a 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -5,6 +5,9 @@ #define SPRITE_NONE 0xFF #define TAG_NONE 0xFFFF +// Given to SetSpriteMatrixAnchor to skip anchoring one of the coords. +#define NO_ANCHOR 0x800 + struct SpriteSheet { const void *data; // Raw uncompressed pixel data @@ -227,7 +230,7 @@ struct Sprite bool16 animEnded:1; //0x10 bool16 affineAnimEnded:1; //0x20 bool16 usingSheet:1; //0x40 - bool16 flags_f:1; //0x80 + bool16 anchored:1; //0x80 /*0x40*/ u16 sheetTileStart; @@ -280,7 +283,7 @@ void FreeSpriteOamMatrix(struct Sprite *sprite); void DestroySpriteAndFreeResources(struct Sprite *sprite); void sub_800142C(u32 a1, u32 a2, u16 *a3, u16 a4, u32 a5); void AnimateSprite(struct Sprite *sprite); -void sub_8007E18(struct Sprite* sprite, s16 a2, s16 a3); +void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y); void StartSpriteAnim(struct Sprite *sprite, u8 animNum); void StartSpriteAnimIfDifferent(struct Sprite *sprite, u8 animNum); void SeekSpriteAnim(struct Sprite *sprite, u8 animCmdIndex); diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index e7238b56e064..9611d008b136 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -82,6 +82,7 @@ #define MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP 0x4E #define MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT 0x4F #define MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT 0x50 +#define NUM_MOVEMENT_TYPES 0x51 #define MOVEMENT_ACTION_FACE_DOWN 0x0 #define MOVEMENT_ACTION_FACE_UP 0x1 @@ -318,4 +319,18 @@ #define ANIM_HOOKED_POKEMON_WEST 10 #define ANIM_HOOKED_POKEMON_EAST 11 +// IDs for how NPCs that copy player movement should respond. +// Most go unused. +#define COPY_MOVE_NONE 0 +#define COPY_MOVE_FACE 1 +#define COPY_MOVE_WALK 2 +#define COPY_MOVE_WALK_FAST 3 +#define COPY_MOVE_WALK_FASTER 4 +#define COPY_MOVE_SLIDE 5 +#define COPY_MOVE_JUMP_IN_PLACE 6 +#define COPY_MOVE_JUMP 7 +#define COPY_MOVE_JUMP2 8 +#define COPY_MOVE_EMPTY_1 9 +#define COPY_MOVE_EMPTY_2 10 + #endif // GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index df2d28c7df74..dde821358718 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -127,8 +127,8 @@ #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_1 0x7E -#define MB_UNUSED_BRIDGE_2 0x7F +#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 @@ -199,7 +199,7 @@ #define MB_HOLDS_LARGE_DECORATION 0xC3 #define MB_SECRET_BASE_TV_SHIELD 0xC4 #define MB_PLAYER_ROOM_PC_ON 0xC5 -#define MB_C6 0xC6 +#define MB_SECRET_BASE_DECORATION_BASE 0xC6 #define MB_SECRET_BASE_POSTER 0xC7 #define MB_UNUSED_C8 0xC8 #define MB_UNUSED_C9 0xC9 diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 11dac813d929..9ed524e6654f 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -1,6 +1,8 @@ #ifndef GUARD_EVENT_OBJECT_MOVEMENT_H #define GUARD_EVENT_OBJECT_MOVEMENT_H +#include "constants/event_object_movement.h" + enum SpinnerRunnerFollowPatterns { RUNFOLLOW_ANY, @@ -395,13 +397,13 @@ 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_GoSpeed0(struct ObjectEvent *, struct Sprite *, u8, bool8(u8)); -bool8 CopyablePlayerMovement_GoSpeed1(struct ObjectEvent *, struct Sprite *, u8, bool8(u8)); -bool8 CopyablePlayerMovement_GoSpeed2(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 cph_IM_DIFFERENT(struct ObjectEvent *, struct Sprite *, u8, bool8(u8)); -bool8 CopyablePlayerMovement_GoSpeed4(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 *); diff --git a/include/field_weather.h b/include/field_weather.h index 9c6a4ab7add9..72a56ab6ec0d 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -147,7 +147,7 @@ void SetNextWeather(u8 weather); void SetCurrentAndNextWeather(u8 weather); void SetCurrentAndNextWeatherNoDelay(u8 weather); void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex); -void sub_80ABC7C(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay); +void ApplyWeatherGammaShiftIfIdle_Gradual(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay); void FadeScreen(u8 mode, s8 delay); bool8 IsWeatherNotFadingIn(void); void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex); diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 71ccd70680c9..33be942c8092 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -211,7 +211,7 @@ struct ObjectEvent /*0x1F*/ u8 previousMetatileBehavior; /*0x20*/ u8 previousMovementDirection; /*0x21*/ u8 directionSequenceIndex; - /*0x22*/ u8 playerCopyableMovement; + /*0x22*/ u8 playerCopyableMovement; // COPY_MOVE_* /*size = 0x24*/ }; diff --git a/include/international_string_util.h b/include/international_string_util.h index 54f4c008fff4..dd5c6ac5feea 100644 --- a/include/international_string_util.h +++ b/include/international_string_util.h @@ -19,6 +19,6 @@ void PadNameString(u8 *dest, u8 padChar); void ConvertInternationalPlayerNameStripChar(u8 *, u8); void ConvertInternationalContestantName(u8 *); int GetNicknameLanguage(u8 *); -void sub_81DB620(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows); +void FillWindowTilesByRow(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows); #endif // GUARD_INTERNATIONAL_STRING_UTIL_H diff --git a/include/link.h b/include/link.h index 6061745af3e4..96a76e120c9e 100644 --- a/include/link.h +++ b/include/link.h @@ -5,6 +5,7 @@ #define MAX_RFU_PLAYERS 5 #define CMD_LENGTH 8 #define QUEUE_CAPACITY 50 +#define OVERWORLD_RECV_QUEUE_MAX 3 #define BLOCK_BUFFER_SIZE 0x100 #define LINK_SLAVE 0 @@ -301,7 +302,7 @@ bool32 Link_AnyPartnersPlayingFRLG_JP(void); void ResetLinkPlayerCount(void); void SaveLinkPlayers(u8 a0); void SetWirelessCommType0(void); -bool32 IsLinkRecvQueueLengthAtLeast3(void); +bool32 IsLinkRecvQueueAtOverworldMax(void); extern u16 gLinkPartnersHeldKeys[6]; extern u32 gLinkDebugSeed; diff --git a/include/menu_helpers.h b/include/menu_helpers.h index df71ce25213a..0e063e5c1f89 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -27,8 +27,8 @@ u8 GetLRKeysPressed(void); u8 GetLRKeysPressedAndHeld(void); bool8 IsHoldingItemAllowed(u16 itemId); bool8 IsWritingMailAllowed(u16 itemId); -bool8 MenuHelpers_LinkSomething(void); -bool8 MenuHelpers_CallLinkSomething(void); +bool8 MenuHelpers_IsLinkActive(void); +bool8 MenuHelpers_ShouldWaitForLinkRecv(void); void SetItemListPerPageCount(struct ItemSlot *slots, u8 slotsCount, u8 *pageItems, u8 *totalItems, u8 maxPerPage); void SetCursorWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 totalItems); void SetCursorScrollWithinListBounds(u16 *scrollOffset, u16 *cursorPos, u8 shownItems, u8 totalItems, u8 maxShownItems); diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index 87a9ebcc59c3..23c84dffb1df 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -23,7 +23,6 @@ bool8 MetatileBehavior_IsIce(u8); bool8 MetatileBehavior_IsWarpDoor(u8); bool8 MetatileBehavior_IsDoor(u8); bool8 MetatileBehavior_IsEscalator(u8); -bool8 MetatileBehavior_IsMB_04(u8); bool8 MetatileBehavior_IsLadder(u8); bool8 MetatileBehavior_IsNonAnimDoor(u8); bool8 MetatileBehavior_IsDeepSouthWarp(u8); @@ -36,7 +35,6 @@ bool8 MetatileBehavior_IsArrowWarp(u8); bool8 MetatileBehavior_IsForcedMovementTile(u8); bool8 MetatileBehavior_IsIce_2(u8); bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8); -bool8 MetatileBehavior_IsMB_05(u8); bool8 MetatileBehavior_IsWalkNorth(u8); bool8 MetatileBehavior_IsWalkSouth(u8); bool8 MetatileBehavior_IsWalkWest(u8); @@ -59,14 +57,12 @@ bool8 MetatileBehavior_IsSecretBaseTree(u8); bool8 MetatileBehavior_IsSecretBaseShrub(u8); bool8 MetatileBehavior_IsSecretBasePC(u8); bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8); -bool8 MetatileBehavior_IsMB_B2(u8); bool8 MetatileBehavior_IsBlockDecoration(u8); bool8 MetatileBehavior_IsSecretBaseImpassable(u8); -bool8 MetatileBehavior_IsMB_C6(u8); +bool8 MetatileBehavior_IsSecretBaseDecorationBase(u8); bool8 MetatileBehavior_IsSecretBasePoster(u8); bool8 MetatileBehavior_IsNormal(u8); bool8 MetatileBehavior_IsSecretBaseNorthWall(u8); -bool8 MetatileBehavior_IsMB_B2_Duplicate(u8); bool8 MetatileBehavior_HoldsSmallDecoration(u8); bool8 MetatileBehavior_HoldsLargeDecoration(u8); bool8 MetatileBehavior_IsSecretBaseHole(u8); @@ -97,7 +93,6 @@ bool8 MetatileBehavior_IsShallowFlowingWater(u8); bool8 MetatileBehavior_IsThinIce(u8); bool8 MetatileBehavior_IsCrackedIce(u8); bool8 MetatileBehavior_IsDeepOrOceanWater(u8); -bool8 MetatileBehavior_IsMB_18_OrMB_1A(u8); bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8); bool8 MetatileBehavior_IsEastBlocked(u8); bool8 MetatileBehavior_IsWestBlocked(u8); @@ -123,7 +118,7 @@ bool8 MetatileBehavior_IsSecretBaseSpinMat(u8); bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8); bool8 MetatileBehavior_IsLavaridge1FWarp(u8); bool8 MetatileBehavior_IsAquaHideoutWarp(u8); -bool8 MetatileBehavior_IsBridgeOverOcean(u8); +bool8 MetatileBehavior_IsUnionRoomWarp(u8); bool8 MetatileBehavior_IsMossdeepGymWarp(u8); bool8 MetatileBehavior_IsSurfableFishableWater(u8); bool8 MetatileBehavior_IsMtPyreHole(u8); diff --git a/include/overworld.h b/include/overworld.h index 8005a22228e2..e1cf100db58a 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -127,7 +127,7 @@ u8 GetSavedWarpRegionMapSectionId(void); u8 GetCurrentRegionMapSectionId(void); u8 GetCurrentMapBattleScene(void); void CleanupOverworldWindowsAndTilemaps(void); -bool32 IsUpdateLinkStateCBActive(void); +bool32 IsOverworldLinkActive(void); void CB1_Overworld(void); void CB2_OverworldBasic(void); void CB2_Overworld(void); @@ -151,7 +151,7 @@ u16 SetInCableClubSeat(void); u16 SetLinkWaitingForScript(void); u16 QueueExitLinkRoomKey(void); u16 SetStartedCableClubActivity(void); -bool32 Overworld_LinkRecvQueueLengthMoreThan2(void); +bool32 Overworld_IsRecvQueueAtMax(void); bool32 Overworld_RecvKeysFromLinkIsRunning(void); bool32 Overworld_SendKeysToLinkIsRunning(void); bool32 IsSendingKeysOverCable(void); diff --git a/include/palette_util.h b/include/palette_util.h index 46468c0a6a48..12ffc145e405 100644 --- a/include/palette_util.h +++ b/include/palette_util.h @@ -72,7 +72,7 @@ void MarkUsedPulseBlendPalettes(struct PulseBlend *, u16, u8); void UnloadUsedPulseBlendPalettes(struct PulseBlend *, u16, u8); void UnmarkUsedPulseBlendPalettes(struct PulseBlend *, u16, u8); void UpdatePulseBlend(struct PulseBlend *); -void ClearTilemapRect(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height); +void FillTilemapRect(u16 *dest, u16 src, 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); diff --git a/include/text_window.h b/include/text_window.h index 7bdcacd17c1c..aa7798c35847 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -14,14 +14,14 @@ extern const u16 gTextWindowFrame1_Pal[]; const struct TilesPal *GetWindowFrameTilesPal(u8 id); void LoadMessageBoxGfx(u8 windowId, u16 destOffset, u8 palOffset); -void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset); void LoadWindowGfx(u8 windowId, u8 frameId, u16 destOffset, u8 palOffset); +void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset); void LoadUserWindowBorderGfx_(u8 windowId, u16 destOffset, u8 palOffset); +void LoadUserWindowBorderGfxOnBg(u8 bg, u16 destOffset, u8 palOffset); void DrawTextBorderOuter(u8 windowId, u16 tileNum, u8 palNum); void DrawTextBorderInner(u8 windowId, u16 tileNum, u8 palNum); void rbox_fill_rectangle(u8 windowId); const u16 *GetTextWindowPalette(u8 id); const u16 *GetOverworldTextboxPalettePtr(void); -void sub_8098C6C(u8 bg, u16 destOffset, u8 palOffset); #endif // GUARD_TEXT_WINDOW_H diff --git a/src/battle_dome.c b/src/battle_dome.c index 9449186310c3..84bc774df1b1 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -104,7 +104,7 @@ static void HblankCb_TourneyTree(void); static void VblankCb_TourneyTree(void); static u8 UpdateTourneyTreeCursor(u8 taskId); static void DecideRoundWinners(u8 roundId); -static u8 sub_81953E8(u8 tournamentId, u8); +static u8 GetOpposingNPCTournamentIdByRound(u8 tournamentId, u8); static void DrawTourneyAdvancementLine(u8, u8); static void SpriteCb_HorizontalScrollArrow(struct Sprite *sprite); static void SpriteCb_VerticalScrollArrow(struct Sprite *sprite); @@ -1197,7 +1197,7 @@ static const u8 sLastMatchCardNum[DOME_ROUNDS_COUNT] = [DOME_FINAL] = 30 }; -static const u8 gUnknown_0860D1A0[DOME_TOURNAMENT_TRAINERS_COUNT / 2][DOME_ROUNDS_COUNT] = +static const u8 sTrainerAndRoundToLastMatchCardNum[DOME_TOURNAMENT_TRAINERS_COUNT / 2][DOME_ROUNDS_COUNT] = { {16, 24, 28, 30}, {17, 24, 28, 30}, @@ -1209,7 +1209,7 @@ static const u8 gUnknown_0860D1A0[DOME_TOURNAMENT_TRAINERS_COUNT / 2][DOME_ROUND {23, 27, 29, 30}, }; -static const u8 gUnknown_0860D1C0[DOME_TOURNAMENT_TRAINERS_COUNT] = {0, 15, 8, 7, 3, 12, 11, 4, 1, 14, 9, 6, 2, 13, 10, 5}; +static const u8 sTournamentIdToPairedTrainerIds[DOME_TOURNAMENT_TRAINERS_COUNT] = {0, 15, 8, 7, 3, 12, 11, 4, 1, 14, 9, 6, 2, 13, 10, 5}; // The first line of text on a trainers info card. It describes their potential to win, based on their seed in the tournament tree. // Dome Ace Tucker has their own separate potential text. @@ -4178,7 +4178,7 @@ static u8 Task_GetInfoCardInput(u8 taskId) if (input == INFOCARD_INPUT_AB) { if (sInfoCard->pos != 0) - gTasks[taskId2].data[1] = gUnknown_0860D1A0[position / 2][sInfoCard->pos - 1]; + gTasks[taskId2].data[1] = sTrainerAndRoundToLastMatchCardNum[position / 2][sInfoCard->pos - 1]; else gTasks[taskId2].data[1] = position; } @@ -4218,9 +4218,9 @@ static u8 Task_GetInfoCardInput(u8 taskId) if (input == INFOCARD_INPUT_AB) { if (sInfoCard->pos == 0) // On left trainer info card - gTasks[taskId2].data[1] = gUnknown_0860D1C0[sInfoCard->tournamentIds[0]]; + gTasks[taskId2].data[1] = sTournamentIdToPairedTrainerIds[sInfoCard->tournamentIds[0]]; else if (sInfoCard->pos == 2) // On right trainer info card - gTasks[taskId2].data[1] = gUnknown_0860D1C0[sInfoCard->tournamentIds[1]]; + gTasks[taskId2].data[1] = sTournamentIdToPairedTrainerIds[sInfoCard->tournamentIds[1]]; else // On match info card gTasks[taskId2].data[1] = position; } @@ -5224,7 +5224,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun { for (i = 0; i < roundId - 1; i++) { - if (gSaveBlock2Ptr->frontier.domeWinningMoves[sub_81953E8(winnerTournamentId, i)] == moveIds[j]) + if (gSaveBlock2Ptr->frontier.domeWinningMoves[GetOpposingNPCTournamentIdByRound(winnerTournamentId, i)] == moveIds[j]) break; } if (i != roundId - 1) @@ -5934,10 +5934,10 @@ int TrainerIdToDomeTournamentId(u16 trainerId) return i; } -static u8 sub_81953E8(u8 tournamentId, u8 round) +static u8 GetOpposingNPCTournamentIdByRound(u8 tournamentId, u8 round) { u8 tournamentIds[2]; - BufferDomeWinString(gUnknown_0860D1A0[gUnknown_0860D1C0[tournamentId] / 2][round] - 16, tournamentIds); + BufferDomeWinString(sTrainerAndRoundToLastMatchCardNum[sTournamentIdToPairedTrainerIds[tournamentId] / 2][round] - 16, tournamentIds); if (tournamentId == tournamentIds[0]) return tournamentIds[1]; else diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index d45770f746a0..286049e8b31b 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -452,9 +452,9 @@ static void VBlankCB_PyramidBag(void) static void CB2_LoadPyramidBagMenu(void) { - while (MenuHelpers_CallLinkSomething() != TRUE + while (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && LoadPyramidBagMenu() != TRUE - && MenuHelpers_LinkSomething() != TRUE); + && MenuHelpers_IsLinkActive() != TRUE); } static bool8 LoadPyramidBagMenu(void) @@ -484,7 +484,7 @@ static bool8 LoadPyramidBagMenu(void) gMain.state++; break; case 5: - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) ResetTasks(); gMain.state++; break; @@ -885,7 +885,7 @@ static void Task_ClosePyramidBag(u8 taskId) static void Task_HandlePyramidBagInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() == TRUE || gPaletteFade.active) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE || gPaletteFade.active) return; if (JOY_NEW(SELECT_BUTTON)) @@ -990,7 +990,7 @@ static void PrintMenuActionText_MultiRow(u8 windowId, u8 horizontalCount, u8 ver static void HandleMenuActionInput_SingleRow(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s32 id = Menu_ProcessInputNoWrap(); switch (id) @@ -1012,7 +1012,7 @@ static void HandleMenuActionInput_SingleRow(u8 taskId) static void HandleMenuActionInput_2x2(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s8 id = Menu_GetCursorPos(); if (JOY_NEW(DPAD_UP)) @@ -1325,7 +1325,7 @@ static void Task_BeginItemSwap(u8 taskId) static void Task_ItemSwapHandleInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (JOY_NEW(SELECT_BUTTON)) { diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index babbbb3eb2ce..5a6f6f694acf 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -200,11 +200,11 @@ static void CB2_InitBerryTagScreen(void) { while (1) { - if (MenuHelpers_CallLinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE) break; if (InitBerryTagScreen() == TRUE) break; - if (MenuHelpers_LinkSomething() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE) break; } } @@ -237,7 +237,7 @@ static bool8 InitBerryTagScreen(void) gMain.state++; break; case 5: - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) ResetTasks(); gMain.state++; break; diff --git a/src/bike.c b/src/bike.c index fd794a3c7a4b..20166392e99f 100644 --- a/src/bike.c +++ b/src/bike.c @@ -658,7 +658,7 @@ static void AcroBikeTransition_SideJump(u8 direction) playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; PlaySE(SE_BIKE_HOP); playerObjEvent->facingDirectionLocked = 1; - PlayerSetAnimId(GetJumpMovementAction(direction), 2); + PlayerSetAnimId(GetJumpMovementAction(direction), COPY_MOVE_WALK); } static void AcroBikeTransition_TurnJump(u8 direction) diff --git a/src/confetti_util.c b/src/confetti_util.c index bcf19f705cec..9ede3088a83a 100644 --- a/src/confetti_util.c +++ b/src/confetti_util.c @@ -10,43 +10,6 @@ static EWRAM_DATA struct struct ConfettiUtil *array; } *sWork = NULL; -static void sub_81520A8(void *dest, u16 value, u8 left, u8 top, u8 width, u8 height) // Unused. -{ - u8 i; - u8 j; - u8 x; - u8 y; - - for (i = 0, y = top; i < height; i++) - { - for (x = left, j = 0; j < width; j++) - { - *(u16 *)((dest) + (y * 64 + x * 2)) = value; - x = (x + 1) % 32; - } - y = (y + 1) % 32; - } -} - -static void sub_8152134(void *dest, const u16 *src, u8 left, u8 top, u8 width, u8 height) // Unused. -{ - u8 i; - u8 j; - u8 x; - u8 y; - const u16 *_src; - - for (i = 0, _src = src, y = top; i < height; i++) - { - for (x = left, j = 0; j < width; j++) - { - *(u16 *)((dest) + (y * 64 + x * 2)) = *(_src++); - x = (x + 1) % 32; - } - y = (y + 1) % 32; - } -} - bool32 ConfettiUtil_Init(u8 count) { u8 i = 0; diff --git a/src/data/object_events/movement_type_func_tables.h b/src/data/object_events/movement_type_func_tables.h index f4890d684669..f5189d838f74 100755 --- a/src/data/object_events/movement_type_func_tables.h +++ b/src/data/object_events/movement_type_func_tables.h @@ -388,17 +388,17 @@ u8 (*const gMovementTypeFuncs_CopyPlayer[])(struct ObjectEvent *, struct Sprite }; bool8 (*const gCopyPlayerMovementFuncs[])(struct ObjectEvent *, struct Sprite *, u8, bool8(u8)) = { - CopyablePlayerMovement_None, - CopyablePlayerMovement_FaceDirection, - CopyablePlayerMovement_GoSpeed0, - CopyablePlayerMovement_GoSpeed1, - CopyablePlayerMovement_GoSpeed2, - CopyablePlayerMovement_Slide, - cph_IM_DIFFERENT, - CopyablePlayerMovement_GoSpeed4, - CopyablePlayerMovement_Jump, - CopyablePlayerMovement_None, - CopyablePlayerMovement_None, + [COPY_MOVE_NONE] = CopyablePlayerMovement_None, + [COPY_MOVE_FACE] = CopyablePlayerMovement_FaceDirection, + [COPY_MOVE_WALK] = CopyablePlayerMovement_WalkNormal, + [COPY_MOVE_WALK_FAST] = CopyablePlayerMovement_WalkFast, + [COPY_MOVE_WALK_FASTER] = CopyablePlayerMovement_WalkFaster, + [COPY_MOVE_SLIDE] = CopyablePlayerMovement_Slide, + [COPY_MOVE_JUMP_IN_PLACE] = CopyablePlayerMovement_JumpInPlace, + [COPY_MOVE_JUMP] = CopyablePlayerMovement_Jump, + [COPY_MOVE_JUMP2] = CopyablePlayerMovement_Jump2, + [COPY_MOVE_EMPTY_1] = CopyablePlayerMovement_None, + [COPY_MOVE_EMPTY_2] = CopyablePlayerMovement_None, }; u8 (*const gMovementTypeFuncs_CopyPlayerInGrass[])(struct ObjectEvent *, struct Sprite *) = { diff --git a/src/decompress.c b/src/decompress.c index a65f38c2d7e8..b74d4e814ae6 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -113,7 +113,7 @@ void Unused_LZDecompressWramIndirect(const void **src, void *dest) LZ77UnCompWram(*src, dest); } -void sub_803471C(s32 object_size, s32 object_count, u8 *src_tiles, u8 *dest_tiles) +static void StitchObjectsOn8x8Canvas(s32 object_size, s32 object_count, u8 *src_tiles, u8 *dest_tiles) { /* This function appears to emulate behaviour found in the GB(C) versions regarding how the Pokemon images diff --git a/src/easy_chat.c b/src/easy_chat.c index b18d09b8337c..625e8cd9e2a9 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1310,7 +1310,7 @@ static void StartEasyChatScreen(u8 taskId, TaskFunc taskFunc) static void Task_InitEasyChatScreen(u8 taskId) { - if (!IsUpdateLinkStateCBActive()) + if (!IsOverworldLinkActive()) { while (InitEasyChatScreen(taskId)); } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 1bb4991abb51..5b1857297cf2 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -26,6 +26,7 @@ #include "constants/event_objects.h" #include "constants/field_effects.h" #include "constants/items.h" +#include "constants/maps.h" #include "constants/mauville_old_man.h" #include "constants/trainer_types.h" #include "constants/union_room.h" @@ -79,7 +80,7 @@ static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *, struct Sp static void SetMovementDelay(struct Sprite *, s16); static bool8 WaitForMovementDelay(struct Sprite *); static u8 GetCollisionInDirection(struct ObjectEvent *, u8); -static u32 state_to_direction(u8, u32, u32); +static u32 GetCopyDirection(u8, u32, u32); static void TryEnableObjectEventAnim(struct ObjectEvent *, struct Sprite *); static void ObjectEventExecHeldMovementAction(struct ObjectEvent *, struct Sprite *); static void UpdateObjectEventSpriteAnimPause(struct ObjectEvent *, struct Sprite *); @@ -267,88 +268,48 @@ static void (*const sMovementTypeCallbacks[])(struct Sprite *) = [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = MovementType_WalkSlowlyInPlace, }; -const u8 gRangedMovementTypes[] = { - [MOVEMENT_TYPE_NONE] = 0, - [MOVEMENT_TYPE_LOOK_AROUND] = 0, - [MOVEMENT_TYPE_WANDER_AROUND] = 1, - [MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = 1, - [MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = 1, - [MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = 1, - [MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = 1, - [MOVEMENT_TYPE_FACE_UP] = 0, - [MOVEMENT_TYPE_FACE_DOWN] = 0, - [MOVEMENT_TYPE_FACE_LEFT] = 0, - [MOVEMENT_TYPE_FACE_RIGHT] = 0, - [MOVEMENT_TYPE_PLAYER] = 0, - [MOVEMENT_TYPE_BERRY_TREE_GROWTH] = 0, - [MOVEMENT_TYPE_FACE_DOWN_AND_UP] = 0, - [MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT] = 0, - [MOVEMENT_TYPE_FACE_UP_AND_LEFT] = 0, - [MOVEMENT_TYPE_FACE_UP_AND_RIGHT] = 0, - [MOVEMENT_TYPE_FACE_DOWN_AND_LEFT] = 0, - [MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT] = 0, - [MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT] = 0, - [MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT] = 0, - [MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT] = 0, - [MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT] = 0, - [MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE] = 0, - [MOVEMENT_TYPE_ROTATE_CLOCKWISE] = 0, - [MOVEMENT_TYPE_WALK_UP_AND_DOWN] = 1, - [MOVEMENT_TYPE_WALK_DOWN_AND_UP] = 1, - [MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = 1, - [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = 1, - [MOVEMENT_TYPE_COPY_PLAYER] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = 1, - [MOVEMENT_TYPE_TREE_DISGUISE] = 0, - [MOVEMENT_TYPE_MOUNTAIN_DISGUISE] = 0, - [MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = 1, - [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = 1, - [MOVEMENT_TYPE_BURIED] = 0, - [MOVEMENT_TYPE_WALK_IN_PLACE_DOWN] = 0, - [MOVEMENT_TYPE_WALK_IN_PLACE_UP] = 0, - [MOVEMENT_TYPE_WALK_IN_PLACE_LEFT] = 0, - [MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT] = 0, - [MOVEMENT_TYPE_JOG_IN_PLACE_DOWN] = 0, - [MOVEMENT_TYPE_JOG_IN_PLACE_UP] = 0, - [MOVEMENT_TYPE_JOG_IN_PLACE_LEFT] = 0, - [MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT] = 0, - [MOVEMENT_TYPE_RUN_IN_PLACE_DOWN] = 0, - [MOVEMENT_TYPE_RUN_IN_PLACE_UP] = 0, - [MOVEMENT_TYPE_RUN_IN_PLACE_LEFT] = 0, - [MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT] = 0, - [MOVEMENT_TYPE_INVISIBLE] = 0, - [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN] = 0, - [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP] = 0, - [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT] = 0, - [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = 0, +static const bool8 sMovementTypeHasRange[NUM_MOVEMENT_TYPES] = { + [MOVEMENT_TYPE_WANDER_AROUND] = TRUE, + [MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = TRUE, + [MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = TRUE, + [MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = TRUE, + [MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_UP_AND_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_DOWN_AND_UP] = TRUE, + [MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = TRUE, + [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = TRUE, + [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = TRUE, }; const u8 gInitialMovementTypeFacingDirections[] = { @@ -517,7 +478,7 @@ static const struct SpritePalette sObjectEventSpritePalettes[] = { {gObjectEventPal_Lugia, OBJ_EVENT_PAL_TAG_LUGIA}, {gObjectEventPal_RubySapphireBrendan, OBJ_EVENT_PAL_TAG_RS_BRENDAN}, {gObjectEventPal_RubySapphireMay, OBJ_EVENT_PAL_TAG_RS_MAY}, - {NULL, 0x0000}, + {}, }; static const u16 sReflectionPaletteTags_Brendan[] = { @@ -1115,31 +1076,75 @@ static const u8 sOppositeDirections[] = { DIR_SOUTHWEST, }; -const u8 gUnknown_0850DC2F[][4] = { - {2, 1, 4, 3}, - {1, 2, 3, 4}, - {3, 4, 2, 1}, - {4, 3, 1, 2} +// Takes the player's original and current facing direction to get the direction that should be considered to copy. +// Note that this means an NPC who copies the player's movement changes how they copy them based on how +// the player entered the area. For instance an NPC who does the same movements as the player when they +// entered the area facing South will do the opposite movements as the player if they enter facing North. +static const u8 sPlayerDirectionsForCopy[][4] = { + [DIR_SOUTH - 1] = { + [DIR_SOUTH - 1] = DIR_NORTH, + [DIR_NORTH - 1] = DIR_SOUTH, + [DIR_WEST - 1] = DIR_EAST, + [DIR_EAST - 1] = DIR_WEST + }, + [DIR_NORTH - 1] = { + [DIR_SOUTH - 1] = DIR_SOUTH, + [DIR_NORTH - 1] = DIR_NORTH, + [DIR_WEST - 1] = DIR_WEST, + [DIR_EAST - 1] = DIR_EAST + }, + [DIR_WEST - 1] = { + [DIR_SOUTH - 1] = DIR_WEST, + [DIR_NORTH - 1] = DIR_EAST, + [DIR_WEST - 1] = DIR_NORTH, + [DIR_EAST - 1] = DIR_SOUTH + }, + [DIR_EAST - 1] = { + [DIR_SOUTH - 1] = DIR_EAST, + [DIR_NORTH - 1] = DIR_WEST, + [DIR_WEST - 1] = DIR_SOUTH, + [DIR_EAST - 1] = DIR_NORTH + } }; -const u8 gUnknown_0850DC3F[][4] = { - {2, 1, 4, 3}, - {1, 2, 3, 4}, - {4, 3, 1, 2}, - {3, 4, 2, 1} +// Indexed first with the NPC's initial facing direction based on movement type, and secondly with the player direction to copy. +// Returns the direction the copy NPC should travel in. +static const u8 sPlayerDirectionToCopyDirection[][4] = { + [DIR_SOUTH - 1] = { // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE(_IN_GRASS) + [DIR_SOUTH - 1] = DIR_NORTH, + [DIR_NORTH - 1] = DIR_SOUTH, + [DIR_WEST - 1] = DIR_EAST, + [DIR_EAST - 1] = DIR_WEST + }, + [DIR_NORTH - 1] = { // MOVEMENT_TYPE_COPY_PLAYER(_IN_GRASS) + [DIR_SOUTH - 1] = DIR_SOUTH, + [DIR_NORTH - 1] = DIR_NORTH, + [DIR_WEST - 1] = DIR_WEST, + [DIR_EAST - 1] = DIR_EAST + }, + [DIR_WEST - 1] = { // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE(_IN_GRASS) + [DIR_SOUTH - 1] = DIR_EAST, + [DIR_NORTH - 1] = DIR_WEST, + [DIR_WEST - 1] = DIR_SOUTH, + [DIR_EAST - 1] = DIR_NORTH + }, + [DIR_EAST - 1] = { // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE(_IN_GRASS) + [DIR_SOUTH - 1] = DIR_WEST, + [DIR_NORTH - 1] = DIR_EAST, + [DIR_WEST - 1] = DIR_NORTH, + [DIR_EAST - 1] = DIR_SOUTH + } }; #include "data/object_events/movement_action_func_tables.h" -// Code - static void ClearObjectEvent(struct ObjectEvent *objectEvent) { *objectEvent = (struct ObjectEvent){}; objectEvent->localId = 0xFF; - objectEvent->mapNum = 0xFF; - objectEvent->mapGroup = 0xFF; - objectEvent->movementActionId = 0xFF; + objectEvent->mapNum = MAP_NUM(UNDEFINED); + objectEvent->mapGroup = MAP_GROUP(UNDEFINED); + objectEvent->movementActionId = MOVEMENT_ACTION_NONE; } static void ClearAllObjectEvents(void) @@ -1188,9 +1193,8 @@ u8 GetFirstInactiveObjectEventId(void) u8 GetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId) { if (localId < OBJ_EVENT_ID_PLAYER) - { return GetObjectEventIdByLocalIdAndMapInternal(localId, mapNum, mapGroupId); - } + return GetObjectEventIdByLocalId(localId); } @@ -1275,16 +1279,12 @@ static u8 InitObjectEventStateFromTemplate(struct ObjectEventTemplate *template, objectEvent->previousMovementDirection = gInitialMovementTypeFacingDirections[template->movementType]; SetObjectEventDirection(objectEvent, objectEvent->previousMovementDirection); SetObjectEventDynamicGraphicsId(objectEvent); - if (gRangedMovementTypes[objectEvent->movementType]) + if (sMovementTypeHasRange[objectEvent->movementType]) { if (objectEvent->rangeX == 0) - { objectEvent->rangeX++; - } if (objectEvent->rangeY == 0) - { objectEvent->rangeY++; - } } return objectEventId; } @@ -1298,24 +1298,17 @@ u8 Unref_TryInitLocalObjectEvent(u8 localId) if (gMapHeader.events != NULL) { if (InBattlePyramid()) - { objectEventCount = GetNumBattlePyramidObjectEvents(); - } else if (InTrainerHill()) - { objectEventCount = 2; - } else - { objectEventCount = gMapHeader.events->objectEventCount; - } + for (i = 0; i < objectEventCount; i++) { template = &gSaveBlock1Ptr->objectEventTemplates[i]; if (template->localId == localId && !FlagGet(template->flagId)) - { return InitObjectEventStateFromTemplate(template, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); - } } } return OBJECT_EVENTS_COUNT; @@ -1540,9 +1533,8 @@ u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x spriteTemplate = malloc(sizeof(struct SpriteTemplate)); MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, callback, spriteTemplate, &subspriteTables); if (spriteTemplate->paletteTag != TAG_NONE) - { LoadObjectEventPalette(spriteTemplate->paletteTag); - } + spriteId = CreateSprite(spriteTemplate, x, y, subpriority); free(spriteTemplate); @@ -1580,20 +1572,16 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di sprite->y += sprite->centerToCornerVecY; sprite->oam.paletteNum = graphicsInfo->paletteSlot; if (sprite->oam.paletteNum >= 16) - { sprite->oam.paletteNum -= 16; - } + sprite->coordOffsetEnabled = TRUE; sprite->sObjEventId = objectEventId; sprite->data[1] = z; if (graphicsInfo->paletteSlot == 10) - { LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); - } else if (graphicsInfo->paletteSlot >= 16) - { _PatchObjectPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot | 0xf0); - } + if (subspriteTables != NULL) { SetSubspriteTables(sprite, subspriteTables); @@ -1817,9 +1805,7 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId) sprite->x += 8; sprite->y += 16 + sprite->centerToCornerVecY; if (objectEvent->trackedByCamera) - { CameraObjectReset1(); - } } void ObjectEventSetGraphicsIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 graphicsId) @@ -1827,9 +1813,7 @@ void ObjectEventSetGraphicsIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 objectEventId; if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { ObjectEventSetGraphicsId(&gObjectEvents[objectEventId], graphicsId); - } } void ObjectEventTurn(struct ObjectEvent *objectEvent, u8 direction) @@ -1847,9 +1831,7 @@ void ObjectEventTurnByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 direc u8 objectEventId; if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { ObjectEventTurn(&gObjectEvents[objectEventId], direction); - } } void PlayerObjectTurn(struct PlayerAvatar *playerAvatar, u8 direction) @@ -1886,9 +1868,8 @@ const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId) u8 bard; if (graphicsId >= OBJ_EVENT_GFX_VARS) - { graphicsId = VarGetObjectEventGraphicsId(graphicsId - OBJ_EVENT_GFX_VARS); - } + if (graphicsId == OBJ_EVENT_GFX_BARD) { bard = GetCurrentMauvilleOldMan(); @@ -1896,9 +1877,7 @@ const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId) } if (graphicsId >= NUM_OBJ_EVENT_GFX) - { graphicsId = OBJ_EVENT_GFX_NINJA_BOY; - } return gObjectEventGraphicsInfoPointers[graphicsId]; } @@ -1906,9 +1885,7 @@ const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId) static void SetObjectEventDynamicGraphicsId(struct ObjectEvent *objectEvent) { if (objectEvent->graphicsId >= OBJ_EVENT_GFX_VARS) - { objectEvent->graphicsId = VarGetObjectEventGraphicsId(objectEvent->graphicsId - OBJ_EVENT_GFX_VARS); - } } void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible) @@ -1916,9 +1893,7 @@ void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible) u8 objectEventId; if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { gObjectEvents[objectEventId].invisible = invisible; - } } void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup) @@ -2037,9 +2012,7 @@ static u8 FindObjectEventPaletteIndexByTag(u16 tag) for (i = 0; sObjectEventSpritePalettes[i].tag != OBJ_EVENT_PAL_TAG_NONE; i++) { if (sObjectEventSpritePalettes[i].tag == tag) - { return i; - } } return 0xFF; } @@ -2173,9 +2146,7 @@ u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z) if (gObjectEvents[i].active) { if (gObjectEvents[i].currentCoords.x == x && gObjectEvents[i].currentCoords.y == y && ObjectEventDoesZCoordMatch(&gObjectEvents[i], z)) - { return i; - } } } return OBJECT_EVENTS_COUNT; @@ -2184,9 +2155,8 @@ u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z) static bool8 ObjectEventDoesZCoordMatch(struct ObjectEvent *objectEvent, u8 z) { if (objectEvent->currentElevation != 0 && z != 0 && objectEvent->currentElevation != z) - { return FALSE; - } + return TRUE; } @@ -2288,9 +2258,8 @@ static u8 CameraObjectGetFollowedSpriteId(void) camera = FindCameraSprite(); if (camera == NULL) - { return MAX_SPRITES; - } + return camera->sLinkedSpriteId; } @@ -2298,13 +2267,9 @@ void CameraObjectReset2(void) { // UB: Possible null dereference #ifdef UBFIX - struct Sprite *camera; - - camera = FindCameraSprite(); - if (camera != NULL) - { + struct Sprite *camera = FindCameraSprite(); + if (camera) camera->sState = 2; - } #else FindCameraSprite()->sState = 2; #endif // UBFIX @@ -2390,9 +2355,8 @@ static u8 GetObjectTrainerTypeByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup u8 objectEventId; if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { return 0xFF; - } + return gObjectEvents[objectEventId].trainerType; } @@ -2408,9 +2372,8 @@ u8 GetObjectEventBerryTreeIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup) u8 objectEventId; if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { return 0xFF; - } + return gObjectEvents[objectEventId].trainerRange_berryTreeId; } @@ -2446,9 +2409,7 @@ static struct ObjectEventTemplate *FindObjectEventTemplateByLocalId(u8 localId, for (i = 0; i < count; i++) { if (templates[i].localId == localId) - { return &templates[i]; - } } return NULL; } @@ -2457,16 +2418,14 @@ struct ObjectEventTemplate *GetBaseTemplateForObjectEvent(const struct ObjectEve { int i; - if (objectEvent->mapNum != gSaveBlock1Ptr->location.mapNum || objectEvent->mapGroup != gSaveBlock1Ptr->location.mapGroup) - { + if (objectEvent->mapNum != gSaveBlock1Ptr->location.mapNum + || objectEvent->mapGroup != gSaveBlock1Ptr->location.mapGroup) return NULL; - } + for (i = 0; i < OBJECT_EVENT_TEMPLATES_COUNT; i++) { if (objectEvent->localId == gSaveBlock1Ptr->objectEventTemplates[i].localId) - { return &gSaveBlock1Ptr->objectEventTemplates[i]; - } } return NULL; } @@ -2498,9 +2457,7 @@ void TryOverrideTemplateCoordsForObjectEvent(const struct ObjectEvent *objectEve objectEventTemplate = GetBaseTemplateForObjectEvent(objectEvent); if (objectEventTemplate != NULL) - { objectEventTemplate->movementType = movementType; - } } void TryOverrideObjectEventTemplateCoords(u8 localId, u8 mapNum, u8 mapGroup) @@ -2548,15 +2505,12 @@ u16 GetObjectPaletteTag(u8 palSlot) u8 i; if (palSlot < 10) - { return sObjectPaletteTagSets[sCurrentReflectionType][palSlot]; - } + for (i = 0; sSpecialObjectReflectionPaletteSets[i].tag != OBJ_EVENT_PAL_TAG_NONE; i++) { if (sSpecialObjectReflectionPaletteSets[i].tag == sCurrentSpecialObjectPaletteTag) - { return sSpecialObjectReflectionPaletteSets[i].data[sCurrentReflectionType]; - } } return OBJ_EVENT_PAL_TAG_NONE; } @@ -2581,9 +2535,7 @@ bool8 MovementType_WanderAround_Step1(struct ObjectEvent *objectEvent, struct Sp bool8 MovementType_WanderAround_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!ObjectEventExecSingleMovementAction(objectEvent, sprite)) - { return FALSE; - } SetMovementDelay(sprite, sMovementDelaysMedium[Random() & 3]); sprite->sTypeFuncId = 3; return TRUE; @@ -2644,13 +2596,11 @@ bool8 ObjectEventIsTrainerAndCloseToPlayer(struct ObjectEvent *objectEvent) s16 maxY; if (!TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_DASH)) - { return FALSE; - } + if (objectEvent->trainerType != TRAINER_TYPE_NORMAL && objectEvent->trainerType != TRAINER_TYPE_BURIED) - { return FALSE; - } + PlayerGetDestCoords(&playerX, &playerY); objX = objectEvent->currentCoords.x; objY = objectEvent->currentCoords.y; @@ -2658,10 +2608,10 @@ bool8 ObjectEventIsTrainerAndCloseToPlayer(struct ObjectEvent *objectEvent) minY = objY - objectEvent->trainerRange_berryTreeId; maxX = objX + objectEvent->trainerRange_berryTreeId; maxY = objY + objectEvent->trainerRange_berryTreeId; - if (minX > playerX || maxX < playerX || minY > playerY || maxY < playerY) - { + if (minX > playerX || maxX < playerX + || minY > playerY || maxY < playerY) return FALSE; - } + return TRUE; } @@ -3229,10 +3179,8 @@ bool8 MovementType_FaceDownAndUp_Step4(struct ObjectEvent *objectEvent, struct S u8 directions[2]; memcpy(directions, gUpAndDownDirections, sizeof gUpAndDownDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_SOUTH); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3281,10 +3229,8 @@ bool8 MovementType_FaceLeftAndRight_Step4(struct ObjectEvent *objectEvent, struc u8 directions[2]; memcpy(directions, gLeftAndRightDirections, sizeof gLeftAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_EAST_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3333,10 +3279,8 @@ bool8 MovementType_FaceUpAndLeft_Step4(struct ObjectEvent *objectEvent, struct S u8 directions[2]; memcpy(directions, gUpAndLeftDirections, sizeof gUpAndLeftDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3385,10 +3329,8 @@ bool8 MovementType_FaceUpAndRight_Step4(struct ObjectEvent *objectEvent, struct u8 directions[2]; memcpy(directions, gUpAndRightDirections, sizeof gUpAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_EAST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3437,10 +3379,8 @@ bool8 MovementType_FaceDownAndLeft_Step4(struct ObjectEvent *objectEvent, struct u8 directions[2]; memcpy(directions, gDownAndLeftDirections, sizeof gDownAndLeftDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_SOUTH_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3489,10 +3429,8 @@ bool8 MovementType_FaceDownAndRight_Step4(struct ObjectEvent *objectEvent, struc u8 directions[2]; memcpy(directions, gDownAndRightDirections, sizeof gDownAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_SOUTH_EAST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 1]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3541,10 +3479,8 @@ bool8 MovementType_FaceDownUpAndLeft_Step4(struct ObjectEvent *objectEvent, stru u8 directions[4]; memcpy(directions, gDownUpAndLeftDirections, sizeof gDownUpAndLeftDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_SOUTH_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 3]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3593,10 +3529,8 @@ bool8 MovementType_FaceDownUpAndRight_Step4(struct ObjectEvent *objectEvent, str u8 directions[4]; memcpy(directions, gDownUpAndRightDirections, sizeof gDownUpAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_SOUTH_EAST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 3]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3645,10 +3579,8 @@ bool8 MovementType_FaceUpLeftAndRight_Step4(struct ObjectEvent *objectEvent, str u8 directions[4]; memcpy(directions, gUpLeftAndRightDirections, sizeof gUpLeftAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_NORTH_EAST_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 3]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3697,10 +3629,8 @@ bool8 MovementType_FaceDownLeftAndRight_Step4(struct ObjectEvent *objectEvent, s u8 directions[4]; memcpy(directions, gDownLeftAndRightDirections, sizeof gDownLeftAndRightDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_SOUTH_EAST_WEST); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[Random() & 3]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 1; return TRUE; @@ -3729,9 +3659,7 @@ bool8 MovementType_RotateCounterclockwise_Step1(struct ObjectEvent *objectEvent, bool8 MovementType_RotateCounterclockwise_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) - { sprite->sTypeFuncId = 3; - } return FALSE; } @@ -3741,10 +3669,8 @@ bool8 MovementType_RotateCounterclockwise_Step3(struct ObjectEvent *objectEvent, u8 directions[5]; memcpy(directions, gCounterclockwiseDirections, sizeof gCounterclockwiseDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_ANY); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[objectEvent->facingDirection]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 0; return TRUE; @@ -3773,9 +3699,7 @@ bool8 MovementType_RotateClockwise_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementType_RotateClockwise_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (WaitForMovementDelay(sprite) || ObjectEventIsTrainerAndCloseToPlayer(objectEvent)) - { sprite->sTypeFuncId = 3; - } return FALSE; } @@ -3785,10 +3709,8 @@ bool8 MovementType_RotateClockwise_Step3(struct ObjectEvent *objectEvent, struct u8 directions[5]; memcpy(directions, gClockwiseDirections, sizeof gClockwiseDirections); direction = TryGetTrainerEncounterDirection(objectEvent, RUNFOLLOW_ANY); - if (direction == 0) - { + if (direction == DIR_NONE) direction = directions[objectEvent->facingDirection]; - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 0; return TRUE; @@ -3809,9 +3731,7 @@ bool8 MovementType_WalkBackAndForth_Step1(struct ObjectEvent *objectEvent, struc direction = gInitialMovementTypeFacingDirections[objectEvent->movementType]; if (objectEvent->directionSequenceIndex) - { direction = GetOppositeDirection(direction); - } SetObjectEventDirection(objectEvent, direction); sprite->sTypeFuncId = 2; return TRUE; @@ -3908,9 +3828,8 @@ u8 MovementType_WalkSequenceUpRightLeftDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpRightLeftDownDirections)]; memcpy(directions, gUpRightLeftDownDirections, sizeof(gUpRightLeftDownDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3921,9 +3840,8 @@ u8 MovementType_WalkSequenceRightLeftDownUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightLeftDownUpDirections)]; memcpy(directions, gRightLeftDownUpDirections, sizeof(gRightLeftDownUpDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3934,9 +3852,8 @@ u8 MovementType_WalkSequenceDownUpRightLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gDownUpRightLeftDirections)]; memcpy(directions, gDownUpRightLeftDirections, sizeof(gDownUpRightLeftDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3947,9 +3864,8 @@ u8 MovementType_WalkSequenceLeftDownUpRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftDownUpRightDirections)]; memcpy(directions, gLeftDownUpRightDirections, sizeof(gLeftDownUpRightDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3960,9 +3876,8 @@ u8 MovementType_WalkSequenceUpLeftRightDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpLeftRightDownDirections)]; memcpy(directions, gUpLeftRightDownDirections, sizeof(gUpLeftRightDownDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3973,9 +3888,8 @@ u8 MovementType_WalkSequenceLeftRightDownUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftRightDownUpDirections)]; memcpy(directions, gLeftRightDownUpDirections, sizeof(gLeftRightDownUpDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3986,9 +3900,8 @@ u8 MovementType_WalkSequenceDownUpLeftRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gStandardDirections)]; memcpy(directions, gStandardDirections, sizeof(gStandardDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -3999,9 +3912,8 @@ u8 MovementType_WalkSequenceRightDownUpLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightDownUpLeftDirections)]; memcpy(directions, gRightDownUpLeftDirections, sizeof(gRightDownUpLeftDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4012,9 +3924,8 @@ u8 MovementType_WalkSequenceLeftUpDownRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftUpDownRightDirections)]; memcpy(directions, gLeftUpDownRightDirections, sizeof(gLeftUpDownRightDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4025,9 +3936,8 @@ u8 MovementType_WalkSequenceUpDownRightLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpDownRightLeftDirections)]; memcpy(directions, gUpDownRightLeftDirections, sizeof(gUpDownRightLeftDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4038,9 +3948,8 @@ u8 MovementType_WalkSequenceRightLeftUpDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightLeftUpDownDirections)]; memcpy(directions, gRightLeftUpDownDirections, sizeof(gRightLeftUpDownDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4051,9 +3960,8 @@ u8 MovementType_WalkSequenceDownRightLeftUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gDownRightLeftUpDirections)]; memcpy(directions, gDownRightLeftUpDirections, sizeof(gDownRightLeftUpDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4064,9 +3972,8 @@ u8 MovementType_WalkSequenceRightUpDownLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightUpDownLeftDirections)]; memcpy(directions, gRightUpDownLeftDirections, sizeof(gRightUpDownLeftDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4077,9 +3984,8 @@ u8 MovementType_WalkSequenceUpDownLeftRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpDownLeftRightDirections)]; memcpy(directions, gUpDownLeftRightDirections, sizeof(gUpDownLeftRightDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4090,9 +3996,8 @@ u8 MovementType_WalkSequenceLeftRightUpDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftRightUpDownDirections)]; memcpy(directions, gLeftRightUpDownDirections, sizeof(gLeftRightUpDownDirections)); if (objectEvent->directionSequenceIndex == 1 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 2; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4103,9 +4008,8 @@ u8 MovementType_WalkSequenceDownLeftRightUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gDownLeftRightUpDirections)]; memcpy(directions, gDownLeftRightUpDirections, sizeof(gDownLeftRightUpDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4116,9 +4020,8 @@ u8 MovementType_WalkSequenceUpLeftDownRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpLeftDownRightDirections)]; memcpy(directions, gUpLeftDownRightDirections, sizeof(gUpLeftDownRightDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4129,9 +4032,8 @@ u8 MovementType_WalkSequenceDownRightUpLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gDownRightUpLeftDirections)]; memcpy(directions, gDownRightUpLeftDirections, sizeof(gDownRightUpLeftDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4142,9 +4044,8 @@ u8 MovementType_WalkSequenceLeftDownRightUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftDownRightUpDirections)]; memcpy(directions, gLeftDownRightUpDirections, sizeof(gLeftDownRightUpDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4155,9 +4056,8 @@ u8 MovementType_WalkSequenceRightUpLeftDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightUpLeftDownDirections)]; memcpy(directions, gRightUpLeftDownDirections, sizeof(gRightUpLeftDownDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4168,9 +4068,8 @@ u8 MovementType_WalkSequenceUpRightDownLeft_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gUpRightDownLeftDirections)]; memcpy(directions, gUpRightDownLeftDirections, sizeof(gUpRightDownLeftDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4181,9 +4080,8 @@ u8 MovementType_WalkSequenceDownLeftUpRight_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gDownLeftUpRightDirections)]; memcpy(directions, gDownLeftUpRightDirections, sizeof(gDownLeftUpRightDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.y == objectEvent->currentCoords.y) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4194,9 +4092,8 @@ u8 MovementType_WalkSequenceLeftUpRightDown_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gLeftUpRightDownDirections)]; memcpy(directions, gLeftUpRightDownDirections, sizeof(gLeftUpRightDownDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4207,9 +4104,8 @@ u8 MovementType_WalkSequenceRightDownLeftUp_Step1(struct ObjectEvent *objectEven u8 directions[sizeof(gRightDownLeftUpDirections)]; memcpy(directions, gRightDownLeftUpDirections, sizeof(gRightDownLeftUpDirections)); if (objectEvent->directionSequenceIndex == 2 && objectEvent->initialCoords.x == objectEvent->currentCoords.x) - { objectEvent->directionSequenceIndex = 3; - } + return MoveNextDirectionInSequence(objectEvent, sprite, directions); } @@ -4219,19 +4115,16 @@ bool8 MovementType_CopyPlayer_Step0(struct ObjectEvent *objectEvent, struct Spri { ClearObjectEventMovement(objectEvent, sprite); if (objectEvent->directionSequenceIndex == 0) - { objectEvent->directionSequenceIndex = GetPlayerFacingDirection(); - } sprite->sTypeFuncId = 1; return TRUE; } bool8 MovementType_CopyPlayer_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - if (gObjectEvents[gPlayerAvatar.objectEventId].movementActionId == 0xFF || gPlayerAvatar.tileTransitionState == T_TILE_CENTER) - { + if (gObjectEvents[gPlayerAvatar.objectEventId].movementActionId == MOVEMENT_ACTION_NONE || gPlayerAvatar.tileTransitionState == T_TILE_CENTER) return FALSE; - } + return gCopyPlayerMovementFuncs[PlayerGetCopyableMovement()](objectEvent, sprite, GetPlayerMovementDirection(), NULL); } @@ -4252,13 +4145,13 @@ bool8 CopyablePlayerMovement_None(struct ObjectEvent *objectEvent, struct Sprite bool8 CopyablePlayerMovement_FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8)) { - ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, playerDirection))); + ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, playerDirection))); objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -bool8 CopyablePlayerMovement_GoSpeed0(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)) { u32 direction; s16 x; @@ -4271,7 +4164,7 @@ bool8 CopyablePlayerMovement_GoSpeed0(struct ObjectEvent *objectEvent, struct Sp if (direction == DIR_NONE) { direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); objectEvent->singleMovementActive = TRUE; @@ -4281,52 +4174,52 @@ bool8 CopyablePlayerMovement_GoSpeed0(struct ObjectEvent *objectEvent, struct Sp } else { - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); } ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkNormalMovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -bool8 CopyablePlayerMovement_GoSpeed1(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)) { u32 direction; s16 x; s16 y; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFastMovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -bool8 CopyablePlayerMovement_GoSpeed2(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)) { u32 direction; s16 x; s16 y; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFasterMovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; @@ -4339,65 +4232,65 @@ bool8 CopyablePlayerMovement_Slide(struct ObjectEvent *objectEvent, struct Sprit s16 y; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetSlideMovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -bool8 cph_IM_DIFFERENT(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)) { u32 direction; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventSetSingleMovement(objectEvent, sprite, GetJumpInPlaceMovementAction(direction)); objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -bool8 CopyablePlayerMovement_GoSpeed4(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)) { u32 direction; s16 x; s16 y; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); ObjectEventMoveDestCoords(objectEvent, direction, &x, &y); ObjectEventSetSingleMovement(objectEvent, sprite, GetJumpMovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; } -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)) { u32 direction; s16 x; s16 y; direction = playerDirection; - direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); + direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction); x = objectEvent->currentCoords.x; y = objectEvent->currentCoords.y; MoveCoordsInDirection(direction, &x, &y, 2, 2); ObjectEventSetSingleMovement(objectEvent, sprite, GetJump2MovementAction(direction)); + if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y)))) - { ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction)); - } + objectEvent->singleMovementActive = TRUE; sprite->sTypeFuncId = 2; return TRUE; @@ -4475,9 +4368,7 @@ bool8 MovementType_Buried_Step0(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementType_MoveInPlace_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (ObjectEventExecSingleMovementAction(objectEvent, sprite)) - { sprite->sTypeFuncId = 0; - } return FALSE; } @@ -4552,7 +4443,7 @@ static void ClearObjectEventMovement(struct ObjectEvent *objectEvent, struct Spr objectEvent->singleMovementActive = FALSE; objectEvent->heldMovementActive = FALSE; objectEvent->heldMovementFinished = FALSE; - objectEvent->movementActionId = 0xFF; + objectEvent->movementActionId = MOVEMENT_ACTION_NONE; sprite->sTypeFuncId = 0; } @@ -4780,9 +4671,8 @@ static bool8 IsMetatileDirectionallyImpassable(struct ObjectEvent *objectEvent, { if (gOppositeDirectionBlockedMetatileFuncs[direction - 1](objectEvent->currentMetatileBehavior) || gDirectionBlockedMetatileFuncs[direction - 1](MapGridGetMetatileBehaviorAt(x, y))) - { return TRUE; - } + return FALSE; } @@ -4799,9 +4689,7 @@ static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *objectEvent, s16 if ((curObject->currentCoords.x == x && curObject->currentCoords.y == y) || (curObject->previousCoords.x == x && curObject->previousCoords.y == y)) { if (AreZCoordsCompatible(objectEvent->currentElevation, curObject->currentElevation)) - { return TRUE; - } } } } @@ -4814,9 +4702,7 @@ bool8 IsBerryTreeSparkling(u8 localId, u8 mapNum, u8 mapGroup) if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) && gSprites[gObjectEvents[objectEventId].spriteId].sBerryTreeFlags & BERRY_FLAG_SPARKLING) - { return TRUE; - } return FALSE; } @@ -4826,9 +4712,7 @@ void SetBerryTreeJustPicked(u8 localId, u8 mapNum, u8 mapGroup) u8 objectEventId; if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) - { gSprites[gObjectEvents[objectEventId].spriteId].sBerryTreeFlags |= BERRY_FLAG_JUST_PICKED; - } } #undef sTimer @@ -4933,7 +4817,7 @@ bool8 ObjectEventIsMovementOverridden(struct ObjectEvent *objectEvent) bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *objectEvent) { - if (objectEvent->heldMovementActive && objectEvent->movementActionId != 0xFF) + if (objectEvent->heldMovementActive && objectEvent->movementActionId != MOVEMENT_ACTION_NONE) return TRUE; return FALSE; @@ -4966,7 +4850,7 @@ void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *objectEvent) void ObjectEventClearHeldMovement(struct ObjectEvent *objectEvent) { - objectEvent->movementActionId = 0xFF; + objectEvent->movementActionId = MOVEMENT_ACTION_NONE; objectEvent->heldMovementActive = FALSE; objectEvent->heldMovementFinished = FALSE; gSprites[objectEvent->spriteId].sTypeFuncId = 0; @@ -5002,14 +4886,12 @@ void UpdateObjectEventCurrentMovement(struct ObjectEvent *objectEvent, struct Sp { DoGroundEffects_OnSpawn(objectEvent, sprite); TryEnableObjectEventAnim(objectEvent, sprite); + if (ObjectEventIsHeldMovementActive(objectEvent)) - { ObjectEventExecHeldMovementAction(objectEvent, sprite); - } else if (!objectEvent->frozen) - { while (callback(objectEvent, sprite)); - } + DoGroundEffects_OnBeginStep(objectEvent, sprite); DoGroundEffects_OnFinishStep(objectEvent, sprite); UpdateObjectEventSpriteAnimPause(objectEvent, sprite); @@ -5068,46 +4950,45 @@ u8 GetOppositeDirection(u8 direction) memcpy(directions, sOppositeDirections, sizeof sOppositeDirections); if (direction <= DIR_NONE || direction > (sizeof sOppositeDirections)) - { return direction; - } + return directions[direction - 1]; } -static u32 zffu_offset_calc(u8 a0, u8 a1) +// Takes the player's original and current direction and gives a direction the copy NPC should consider as the player's direction. +// See comments at the table's definition. +static u32 GetPlayerDirectionForCopy(u8 initDir, u8 moveDir) { - return gUnknown_0850DC2F[a0 - 1][a1 - 1]; + return sPlayerDirectionsForCopy[initDir - 1][moveDir - 1]; } -static u32 state_to_direction(u8 a0, u32 a1, u32 a2) +// copyInitDir is the initial facing direction of the copying NPC. +// playerInitDir is the direction the player was facing when the copying NPC was spawned, as set by MovementType_CopyPlayer_Step0. +// playerMoveDir is the direction the player is currently moving. +static u32 GetCopyDirection(u8 copyInitDir, u32 playerInitDir, u32 playerMoveDir) { - u32 zffuOffset; - u8 a1_2; - u8 a2_2; + u32 dir; + u8 _playerInitDir = playerInitDir; + u8 _playerMoveDir = playerMoveDir; + if (_playerInitDir == DIR_NONE || _playerMoveDir == DIR_NONE + || _playerInitDir > DIR_EAST || _playerMoveDir > DIR_EAST) + return DIR_NONE; - a1_2 = a1; - a2_2 = a2; - if (a1_2 == 0 || a2_2 == 0 || a1_2 > DIR_EAST || a2_2 > DIR_EAST) - { - return 0; - } - zffuOffset = zffu_offset_calc(a1_2, a2); - return gUnknown_0850DC3F[a0 - 1][zffuOffset - 1]; + dir = GetPlayerDirectionForCopy(_playerInitDir, playerMoveDir); + return sPlayerDirectionToCopyDirection[copyInitDir - 1][dir - 1]; } static void ObjectEventExecHeldMovementAction(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (gMovementActionFuncs[objectEvent->movementActionId][sprite->sActionFuncId](objectEvent, sprite)) - { objectEvent->heldMovementFinished = TRUE; - } } static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (gMovementActionFuncs[objectEvent->movementActionId][sprite->sActionFuncId](objectEvent, sprite)) { - objectEvent->movementActionId = 0xFF; + objectEvent->movementActionId = MOVEMENT_ACTION_NONE; sprite->sActionFuncId = 0; return TRUE; } @@ -5795,9 +5676,8 @@ bool8 MovementAction_WalkInPlace_Step1(struct ObjectEvent *objectEvent, struct S bool8 MovementAction_WalkInPlaceSlow_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (sprite->data[3] & 1) - { sprite->animDelayCounter++; - } + return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } @@ -6255,9 +6135,10 @@ bool8 MovementAction_FacePlayer_Step0(struct ObjectEvent *objectEvent, struct Sp u8 playerObjectId; if (!TryGetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0, &playerObjectId)) - { - FaceDirection(objectEvent, sprite, GetDirectionToFace(objectEvent->currentCoords.x, objectEvent->currentCoords.y, gObjectEvents[playerObjectId].currentCoords.x, gObjectEvents[playerObjectId].currentCoords.y)); - } + FaceDirection(objectEvent, sprite, GetDirectionToFace(objectEvent->currentCoords.x, + objectEvent->currentCoords.y, + gObjectEvents[playerObjectId].currentCoords.x, + gObjectEvents[playerObjectId].currentCoords.y)); sprite->sActionFuncId = 1; return TRUE; } @@ -6267,9 +6148,10 @@ bool8 MovementAction_FaceAwayPlayer_Step0(struct ObjectEvent *objectEvent, struc u8 playerObjectId; if (!TryGetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0, &playerObjectId)) - { - FaceDirection(objectEvent, sprite, GetOppositeDirection(GetDirectionToFace(objectEvent->currentCoords.x, objectEvent->currentCoords.y, gObjectEvents[playerObjectId].currentCoords.x, gObjectEvents[playerObjectId].currentCoords.y))); - } + FaceDirection(objectEvent, sprite, GetOppositeDirection(GetDirectionToFace(objectEvent->currentCoords.x, + objectEvent->currentCoords.y, + gObjectEvents[playerObjectId].currentCoords.x, + gObjectEvents[playerObjectId].currentCoords.y))); sprite->sActionFuncId = 1; return TRUE; } @@ -7399,9 +7281,7 @@ bool8 MovementAction_PauseSpriteAnim(struct ObjectEvent *objectEvent, struct Spr static void UpdateObjectEventSpriteAnimPause(struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (objectEvent->disableAnim) - { sprite->animPaused = TRUE; - } } static void TryEnableObjectEventAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite) @@ -7552,14 +7432,10 @@ static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent *objEve static void GetGroundEffectFlags_Tracks(struct ObjectEvent *objEvent, u32 *flags) { if (MetatileBehavior_IsDeepSand(objEvent->previousMetatileBehavior)) - { *flags |= GROUND_EFFECT_FLAG_DEEP_SAND; - } else if (MetatileBehavior_IsSandOrDeepSand(objEvent->previousMetatileBehavior) || MetatileBehavior_IsFootprints(objEvent->previousMetatileBehavior)) - { *flags |= GROUND_EFFECT_FLAG_SAND; - } } static void GetGroundEffectFlags_SandHeap(struct ObjectEvent *objEvent, u32 *flags) @@ -7569,14 +7445,14 @@ static void GetGroundEffectFlags_SandHeap(struct ObjectEvent *objEvent, u32 *fla { if (!objEvent->inSandPile) { - objEvent->inSandPile = 0; - objEvent->inSandPile = 1; + objEvent->inSandPile = FALSE; + objEvent->inSandPile = TRUE; *flags |= GROUND_EFFECT_FLAG_SAND_PILE; } } else { - objEvent->inSandPile = 0; + objEvent->inSandPile = FALSE; } } @@ -7589,14 +7465,14 @@ static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent *objEven { if (!objEvent->inShallowFlowingWater) { - objEvent->inShallowFlowingWater = 0; - objEvent->inShallowFlowingWater = 1; + objEvent->inShallowFlowingWater = FALSE; + objEvent->inShallowFlowingWater = TRUE; *flags |= GROUND_EFFECT_FLAG_SHALLOW_FLOWING_WATER; } } else { - objEvent->inShallowFlowingWater = 0; + objEvent->inShallowFlowingWater = FALSE; } } @@ -7604,9 +7480,7 @@ static void GetGroundEffectFlags_Puddle(struct ObjectEvent *objEvent, u32 *flags { if (MetatileBehavior_IsPuddle(objEvent->currentMetatileBehavior) && MetatileBehavior_IsPuddle(objEvent->previousMetatileBehavior)) - { *flags |= GROUND_EFFECT_FLAG_PUDDLE; - } } static void GetGroundEffectFlags_Ripple(struct ObjectEvent *objEvent, u32 *flags) @@ -7622,14 +7496,14 @@ static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent *objEvent, u32 *f { if (!objEvent->inShortGrass) { - objEvent->inShortGrass = 0; - objEvent->inShortGrass = 1; + objEvent->inShortGrass = FALSE; + objEvent->inShortGrass = TRUE; *flags |= GROUND_EFFECT_FLAG_SHORT_GRASS; } } else { - objEvent->inShortGrass = 0; + objEvent->inShortGrass = FALSE; } } @@ -7640,14 +7514,14 @@ static void GetGroundEffectFlags_HotSprings(struct ObjectEvent *objEvent, u32 *f { if (!objEvent->inHotSprings) { - objEvent->inHotSprings = 0; - objEvent->inHotSprings = 1; + objEvent->inHotSprings = FALSE; + objEvent->inHotSprings = TRUE; *flags |= GROUND_EFFECT_FLAG_HOT_SPRINGS; } } else { - objEvent->inHotSprings = 0; + objEvent->inHotSprings = FALSE; } } @@ -8213,11 +8087,11 @@ bool8 FreezeObjectEvent(struct ObjectEvent *objectEvent) } else { - objectEvent->frozen = 1; + objectEvent->frozen = TRUE; objectEvent->spriteAnimPausedBackup = gSprites[objectEvent->spriteId].animPaused; objectEvent->spriteAffineAnimPausedBackup = gSprites[objectEvent->spriteId].affineAnimPaused; - gSprites[objectEvent->spriteId].animPaused = 1; - gSprites[objectEvent->spriteId].affineAnimPaused = 1; + gSprites[objectEvent->spriteId].animPaused = TRUE; + gSprites[objectEvent->spriteId].affineAnimPaused = TRUE; return FALSE; } } diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index e58fb783b3a8..6d338c06d7ed 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -421,7 +421,7 @@ static const u8 *GetInteractedMetatileScript(struct MapPosition *position, u8 me return SecretBase_EventScript_SandOrnament; if (MetatileBehavior_IsSecretBaseShieldOrToyTV(metatileBehavior) == TRUE) return SecretBase_EventScript_ShieldOrToyTV; - if (MetatileBehavior_IsMB_C6(metatileBehavior) == TRUE) + if (MetatileBehavior_IsSecretBaseDecorationBase(metatileBehavior) == TRUE) { CheckInteractedWithFriendsFurnitureBottom(); return NULL; @@ -729,9 +729,8 @@ static bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileB DoTeleportTileWarp(); return TRUE; } - if (MetatileBehavior_IsBridgeOverOcean(metatileBehavior) == TRUE) + if (MetatileBehavior_IsUnionRoomWarp(metatileBehavior) == TRUE) { - // Maybe unused? This MB is used by log bridges, but there's never a warp event on them. DoSpinExitWarp(); return TRUE; } @@ -762,7 +761,7 @@ static bool8 IsWarpMetatileBehavior(u16 metatileBehavior) && MetatileBehavior_IsAquaHideoutWarp(metatileBehavior) != TRUE && MetatileBehavior_IsMtPyreHole(metatileBehavior) != TRUE && MetatileBehavior_IsMossdeepGymWarp(metatileBehavior) != TRUE - && MetatileBehavior_IsBridgeOverOcean(metatileBehavior) != TRUE) + && MetatileBehavior_IsUnionRoomWarp(metatileBehavior) != TRUE) return FALSE; return TRUE; } diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 00800636de83..bc86a8008362 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -225,10 +225,10 @@ static void (*const sPlayerAvatarTransitionFuncs[])(struct ObjectEvent *) = static bool8 (*const sArrowWarpMetatileBehaviorChecks[])(u8) = { - MetatileBehavior_IsSouthArrowWarp, - MetatileBehavior_IsNorthArrowWarp, - MetatileBehavior_IsWestArrowWarp, - MetatileBehavior_IsEastArrowWarp, + [DIR_SOUTH - 1] = MetatileBehavior_IsSouthArrowWarp, + [DIR_NORTH - 1] = MetatileBehavior_IsNorthArrowWarp, + [DIR_WEST - 1] = MetatileBehavior_IsWestArrowWarp, + [DIR_EAST - 1] = MetatileBehavior_IsEastArrowWarp, }; static const u8 sRivalAvatarGfxIds[][2] = @@ -281,10 +281,10 @@ static const u8 sPlayerAvatarGfxToStateFlag[2][5][2] = static bool8 (*const sArrowWarpMetatileBehaviorChecks2[])(u8) = //Duplicate of sArrowWarpMetatileBehaviorChecks { - MetatileBehavior_IsSouthArrowWarp, - MetatileBehavior_IsNorthArrowWarp, - MetatileBehavior_IsWestArrowWarp, - MetatileBehavior_IsEastArrowWarp, + [DIR_SOUTH - 1] = MetatileBehavior_IsSouthArrowWarp, + [DIR_NORTH - 1] = MetatileBehavior_IsNorthArrowWarp, + [DIR_WEST - 1] = MetatileBehavior_IsWestArrowWarp, + [DIR_EAST - 1] = MetatileBehavior_IsEastArrowWarp, }; static bool8 (*const sPushBoulderFuncs[])(struct Task *, struct ObjectEvent *, struct ObjectEvent *) = @@ -929,9 +929,9 @@ static bool8 PlayerCheckIfAnimFinishedOrInactive(void) return ObjectEventCheckHeldMovementStatus(&gObjectEvents[gPlayerAvatar.objectEventId]); } -static void PlayerSetCopyableMovement(u8 a) +static void PlayerSetCopyableMovement(u8 movement) { - gObjectEvents[gPlayerAvatar.objectEventId].playerCopyableMovement = a; + gObjectEvents[gPlayerAvatar.objectEventId].playerCopyableMovement = movement; } u8 PlayerGetCopyableMovement(void) @@ -955,65 +955,65 @@ void PlayerSetAnimId(u8 movementActionId, u8 copyableMovement) void PlayerWalkNormal(u8 direction) { - PlayerSetAnimId(GetWalkNormalMovementAction(direction), 2); + PlayerSetAnimId(GetWalkNormalMovementAction(direction), COPY_MOVE_WALK); } void PlayerWalkFast(u8 direction) { - PlayerSetAnimId(GetWalkFastMovementAction(direction), 2); + PlayerSetAnimId(GetWalkFastMovementAction(direction), COPY_MOVE_WALK); } -void PlayerRideWaterCurrent(u8 a) +void PlayerRideWaterCurrent(u8 direction) { - PlayerSetAnimId(GetRideWaterCurrentMovementAction(a), 2); + PlayerSetAnimId(GetRideWaterCurrentMovementAction(direction), COPY_MOVE_WALK); } void PlayerWalkFaster(u8 direction) { - PlayerSetAnimId(GetWalkFasterMovementAction(direction), 2); + PlayerSetAnimId(GetWalkFasterMovementAction(direction), COPY_MOVE_WALK); } -static void PlayerRun(u8 a) +static void PlayerRun(u8 direction) { - PlayerSetAnimId(GetPlayerRunMovementAction(a), 2); + PlayerSetAnimId(GetPlayerRunMovementAction(direction), COPY_MOVE_WALK); } -void PlayerOnBikeCollide(u8 a) +void PlayerOnBikeCollide(u8 direction) { - PlayCollisionSoundIfNotFacingWarp(a); - PlayerSetAnimId(GetWalkInPlaceNormalMovementAction(a), 2); + PlayCollisionSoundIfNotFacingWarp(direction); + PlayerSetAnimId(GetWalkInPlaceNormalMovementAction(direction), COPY_MOVE_WALK); } -void PlayerOnBikeCollideWithFarawayIslandMew(u8 a) +void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction) { - PlayerSetAnimId(GetWalkInPlaceNormalMovementAction(a), 2); + PlayerSetAnimId(GetWalkInPlaceNormalMovementAction(direction), COPY_MOVE_WALK); } -static void PlayerNotOnBikeCollide(u8 a) +static void PlayerNotOnBikeCollide(u8 direction) { - PlayCollisionSoundIfNotFacingWarp(a); - PlayerSetAnimId(GetWalkInPlaceSlowMovementAction(a), 2); + PlayCollisionSoundIfNotFacingWarp(direction); + PlayerSetAnimId(GetWalkInPlaceSlowMovementAction(direction), COPY_MOVE_WALK); } -static void PlayerNotOnBikeCollideWithFarawayIslandMew(u8 a) +static void PlayerNotOnBikeCollideWithFarawayIslandMew(u8 direction) { - PlayerSetAnimId(GetWalkInPlaceSlowMovementAction(a), 2); + PlayerSetAnimId(GetWalkInPlaceSlowMovementAction(direction), COPY_MOVE_WALK); } void PlayerFaceDirection(u8 direction) { - PlayerSetAnimId(GetFaceDirectionMovementAction(direction), 1); + PlayerSetAnimId(GetFaceDirectionMovementAction(direction), COPY_MOVE_FACE); } void PlayerTurnInPlace(u8 direction) { - PlayerSetAnimId(GetWalkInPlaceFastMovementAction(direction), 1); + PlayerSetAnimId(GetWalkInPlaceFastMovementAction(direction), COPY_MOVE_FACE); } void PlayerJumpLedge(u8 direction) { PlaySE(SE_LEDGE); - PlayerSetAnimId(GetJump2MovementAction(direction), 8); + PlayerSetAnimId(GetJump2MovementAction(direction), COPY_MOVE_JUMP2); } // Stop player on current facing direction once they're done moving and if they're not currently Acro Biking on bumpy slope @@ -1029,81 +1029,82 @@ void PlayerFreeze(void) // wheelie idle void PlayerIdleWheelie(u8 direction) { - PlayerSetAnimId(GetAcroWheelieFaceDirectionMovementAction(direction), 1); + PlayerSetAnimId(GetAcroWheelieFaceDirectionMovementAction(direction), COPY_MOVE_FACE); } // normal to wheelie void PlayerStartWheelie(u8 direction) { - PlayerSetAnimId(GetAcroPopWheelieFaceDirectionMovementAction(direction), 1); + PlayerSetAnimId(GetAcroPopWheelieFaceDirectionMovementAction(direction), COPY_MOVE_FACE); } // wheelie to normal void PlayerEndWheelie(u8 direction) { - PlayerSetAnimId(GetAcroEndWheelieFaceDirectionMovementAction(direction), 1); + PlayerSetAnimId(GetAcroEndWheelieFaceDirectionMovementAction(direction), COPY_MOVE_FACE); } // wheelie hopping standing -void PlayerStandingHoppingWheelie(u8 a) +void PlayerStandingHoppingWheelie(u8 direction) { PlaySE(SE_BIKE_HOP); - PlayerSetAnimId(GetAcroWheelieHopFaceDirectionMovementAction(a), 1); + PlayerSetAnimId(GetAcroWheelieHopFaceDirectionMovementAction(direction), COPY_MOVE_FACE); } // wheelie hopping moving -void PlayerMovingHoppingWheelie(u8 a) +void PlayerMovingHoppingWheelie(u8 direction) { PlaySE(SE_BIKE_HOP); - PlayerSetAnimId(GetAcroWheelieHopDirectionMovementAction(a), 2); + PlayerSetAnimId(GetAcroWheelieHopDirectionMovementAction(direction), COPY_MOVE_WALK); } // wheelie hopping ledge -void PlayerLedgeHoppingWheelie(u8 a) +void PlayerLedgeHoppingWheelie(u8 direction) { PlaySE(SE_BIKE_HOP); - PlayerSetAnimId(GetAcroWheelieJumpDirectionMovementAction(a), 8); + PlayerSetAnimId(GetAcroWheelieJumpDirectionMovementAction(direction), COPY_MOVE_JUMP2); } // acro turn jump void PlayerAcroTurnJump(u8 direction) { PlaySE(SE_BIKE_HOP); - PlayerSetAnimId(GetJumpInPlaceTurnAroundMovementAction(direction), 1); + PlayerSetAnimId(GetJumpInPlaceTurnAroundMovementAction(direction), COPY_MOVE_FACE); } void PlayerWheelieInPlace(u8 direction) { PlaySE(SE_WALL_HIT); - PlayerSetAnimId(GetAcroWheelieInPlaceDirectionMovementAction(direction), 2); + PlayerSetAnimId(GetAcroWheelieInPlaceDirectionMovementAction(direction), COPY_MOVE_WALK); } void PlayerPopWheelieWhileMoving(u8 direction) { - PlayerSetAnimId(GetAcroPopWheelieMoveDirectionMovementAction(direction), 2); + PlayerSetAnimId(GetAcroPopWheelieMoveDirectionMovementAction(direction), COPY_MOVE_WALK); } void PlayerWheelieMove(u8 direction) { - PlayerSetAnimId(GetAcroWheelieMoveDirectionMovementAction(direction), 2); + PlayerSetAnimId(GetAcroWheelieMoveDirectionMovementAction(direction), COPY_MOVE_WALK); } void PlayerEndWheelieWhileMoving(u8 direction) { - PlayerSetAnimId(GetAcroEndWheelieMoveDirectionMovementAction(direction), 2); + PlayerSetAnimId(GetAcroEndWheelieMoveDirectionMovementAction(direction), COPY_MOVE_WALK); } -static void PlayCollisionSoundIfNotFacingWarp(u8 a) +static void PlayCollisionSoundIfNotFacingWarp(u8 direction) { s16 x, y; u8 metatileBehavior = gObjectEvents[gPlayerAvatar.objectEventId].currentMetatileBehavior; - if (!sArrowWarpMetatileBehaviorChecks[a - 1](metatileBehavior)) + if (!sArrowWarpMetatileBehaviorChecks[direction - 1](metatileBehavior)) { - if (a == 2) + // Check if walking up into a door + if (direction == DIR_NORTH) { PlayerGetDestCoords(&x, &y); - MoveCoords(2, &x, &y); + MoveCoords(direction, &x, &y); if (MetatileBehavior_IsWarpDoor(MapGridGetMetatileBehaviorAt(x, y))) return; } diff --git a/src/field_weather.c b/src/field_weather.c index c067e8ebd734..cd343644149a 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -719,7 +719,7 @@ void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex) } } -void sub_80ABC7C(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay) +void ApplyWeatherGammaShiftIfIdle_Gradual(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay) { if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { @@ -779,7 +779,7 @@ void FadeScreen(u8 mode, s8 delay) if (fadeOut) { if (useWeatherPal) - CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); + CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * 2); BeginNormalPaletteFade(PALETTES_ALL, delay, 0, 16, fadeColor); gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT; diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 27ade478f0bd..5720363c21e1 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -1181,7 +1181,7 @@ void Thunderstorm_Main(void) case TSTORM_STATE_FADE_THUNDER_LONG: if (--gWeatherPtr->thunderDelay == 0) { - sub_80ABC7C(19, 3, 5); + ApplyWeatherGammaShiftIfIdle_Gradual(19, 3, 5); gWeatherPtr->initStep++; } break; diff --git a/src/international_string_util.c b/src/international_string_util.c index b2ee9743ea0d..21e3e4bee96f 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -214,10 +214,11 @@ int GetNicknameLanguage(u8 *str) return GAME_LANGUAGE; } -void sub_81DB620(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows) +// Used by PokĂ©nav's Match Call to erase the previous trainer's flavor text when switching between their info pages. +void FillWindowTilesByRow(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows) { u8 *windowTileData; - int fillSize, windowRowSize, rowsToFill; + int fillSize, windowRowSize, i; struct Window *window = &gWindows[windowId]; fillSize = numFillTiles * TILE_SIZE_4BPP; @@ -225,12 +226,10 @@ void sub_81DB620(int windowId, int columnStart, int rowStart, int numFillTiles, windowTileData = window->tileData + (rowStart * windowRowSize) + (columnStart * TILE_SIZE_4BPP); if (numRows > 0) { - rowsToFill = numRows; - while (rowsToFill) + for (i = numRows; i != 0; i--) { CpuFastFill8(0x11, windowTileData, fillSize); windowTileData += windowRowSize; - rowsToFill--; } } } diff --git a/src/item_menu.c b/src/item_menu.c index 32b035ec91c7..720c6f398355 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -669,7 +669,7 @@ void VBlankCB_BagMenuRun(void) static void CB2_Bag(void) { - while(MenuHelpers_CallLinkSomething() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_LinkSomething() != TRUE) + while(MenuHelpers_ShouldWaitForLinkRecv() != TRUE && SetupBagMenu() != TRUE && MenuHelpers_IsLinkActive() != TRUE) {}; } @@ -705,7 +705,7 @@ static bool8 SetupBagMenu(void) gMain.state++; break; case 6: - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) ResetTasks(); gMain.state++; break; @@ -1215,7 +1215,7 @@ static void Task_BagMenu_HandleInput(u8 taskId) u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; s32 listPosition; - if (MenuHelpers_CallLinkSomething() != TRUE && !gPaletteFade.active) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && !gPaletteFade.active) { switch (GetSwitchBagPocketDirection()) { @@ -1354,7 +1354,7 @@ static void Task_SwitchBagPocket(u8 taskId) { s16* data = gTasks[taskId].data; - if (!MenuHelpers_LinkSomething() && !IsWallysBag()) + if (!MenuHelpers_IsLinkActive() && !IsWallysBag()) { switch (GetSwitchBagPocketDirection()) { @@ -1449,7 +1449,7 @@ static void Task_HandleSwappingItemsInput(u8 taskId) { s16* data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (JOY_NEW(SELECT_BUTTON)) { @@ -1589,7 +1589,7 @@ static void OpenContextMenu(u8 taskId) case ITEMMENULOCATION_BERRY_TREE: case ITEMMENULOCATION_ITEMPC: default: - if (MenuHelpers_LinkSomething() == TRUE || InUnionRoom() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE || InUnionRoom() == TRUE) { if (gBagPosition.pocket == KEYITEMS_POCKET || !IsHoldingItemAllowed(gSpecialVar_ItemId)) { @@ -1691,7 +1691,7 @@ static void Task_ItemContext_Normal(u8 taskId) static void Task_ItemContext_SingleRow(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s8 selection = Menu_ProcessInputNoWrap(); switch (selection) @@ -1712,7 +1712,7 @@ static void Task_ItemContext_SingleRow(u8 taskId) static void Task_ItemContext_MultipleRows(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s8 cursorPos = Menu_GetCursorPos(); if (JOY_NEW(DPAD_UP)) diff --git a/src/item_use.c b/src/item_use.c index 833e80b97643..cee451f360ee 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -612,7 +612,7 @@ static void Task_StandingOnHiddenItem(u8 taskId) void ItemUseOutOfBattle_PokeblockCase(u8 taskId) { - if (MenuHelpers_LinkSomething() == TRUE) // link func + if (MenuHelpers_IsLinkActive() == TRUE) { DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); } diff --git a/src/link.c b/src/link.c index 8ba7610ccc55..f5eb8b68c4aa 100644 --- a/src/link.c +++ b/src/link.c @@ -1832,9 +1832,9 @@ u32 GetLinkRecvQueueLength(void) return gLink.recvQueue.count; } -bool32 IsLinkRecvQueueLengthAtLeast3(void) +bool32 IsLinkRecvQueueAtOverworldMax(void) { - if (GetLinkRecvQueueLength() > 2) + if (GetLinkRecvQueueLength() >= OVERWORLD_RECV_QUEUE_MAX) return TRUE; return FALSE; diff --git a/src/mail.c b/src/mail.c index 8bb6f69918b4..1cbfd8baab65 100644 --- a/src/mail.c +++ b/src/mail.c @@ -593,10 +593,8 @@ static bool8 MailReadBuildGraphics(void) } break; case 15: - if (Overworld_LinkRecvQueueLengthMoreThan2() == TRUE) - { + if (Overworld_IsRecvQueueAtMax() == TRUE) return FALSE; - } break; case 16: SetVBlankCallback(VBlankCB_MailRead); @@ -641,7 +639,7 @@ static void CB2_InitMailRead(void) SetMainCallback2(CB2_MailRead); break; } - } while (MenuHelpers_LinkSomething() != TRUE); + } while (MenuHelpers_IsLinkActive() != TRUE); } static void BufferMailText(void) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 33175559080a..3e6b6a914d65 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -278,51 +278,45 @@ u8 GetLRKeysPressedAndHeld(void) bool8 IsHoldingItemAllowed(u16 itemId) { // Enigma Berry can't be held in link areas - if (itemId != ITEM_ENIGMA_BERRY) - return TRUE; - else if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) - && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER)) + if (itemId == ITEM_ENIGMA_BERRY + && ((gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER)) + || InUnionRoom() == TRUE)) return FALSE; - else if (InUnionRoom() != TRUE) - return TRUE; else - return FALSE; + return TRUE; } bool8 IsWritingMailAllowed(u16 itemId) { - if (IsUpdateLinkStateCBActive() != TRUE && InUnionRoom() != TRUE) - return TRUE; - else if (ItemIsMail(itemId) != TRUE) - return TRUE; - else + if ((IsOverworldLinkActive() == TRUE || InUnionRoom() == TRUE) && ItemIsMail(itemId) == TRUE) return FALSE; + else + return TRUE; } -bool8 MenuHelpers_LinkSomething(void) +bool8 MenuHelpers_IsLinkActive(void) { - if (IsUpdateLinkStateCBActive() == TRUE || gReceivedRemoteLinkPlayers == 1) + if (IsOverworldLinkActive() == TRUE || gReceivedRemoteLinkPlayers == 1) return TRUE; else return FALSE; } -static bool8 sub_81221D0(void) +static bool8 IsActiveOverworldLinkBusy(void) { - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) return FALSE; else - return Overworld_LinkRecvQueueLengthMoreThan2(); + return Overworld_IsRecvQueueAtMax(); } -bool8 MenuHelpers_CallLinkSomething(void) +bool8 MenuHelpers_ShouldWaitForLinkRecv(void) { - if (sub_81221D0() == TRUE) + if (IsActiveOverworldLinkBusy() == TRUE || IsLinkRecvQueueAtOverworldMax() == TRUE ) return TRUE; - else if (IsLinkRecvQueueLengthAtLeast3() != TRUE) - return FALSE; else - return TRUE; + return FALSE; } void SetItemListPerPageCount(struct ItemSlot *slots, u8 slotsCount, u8 *pageItems, u8 *totalItems, u8 maxPerPage) diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 3829523df2d6..ad5eb42ccd9c 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -136,8 +136,8 @@ static const u8 sTileBitAttributes[] = [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_UNUSED_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_BIKE_BRIDGE_OVER_BARRIER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_COUNTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_81] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_82] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), @@ -208,7 +208,7 @@ static const u8 sTileBitAttributes[] = [MB_HOLDS_LARGE_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_SECRET_BASE_TV_SHIELD] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_PLAYER_ROOM_PC_ON] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_C6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), + [MB_SECRET_BASE_DECORATION_BASE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_SECRET_BASE_POSTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_C8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_UNUSED_C9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), @@ -711,9 +711,9 @@ bool8 MetatileBehavior_IsSecretBaseImpassable(u8 metatileBehavior) return FALSE; } -bool8 MetatileBehavior_IsMB_C6(u8 metatileBehavior) +bool8 MetatileBehavior_IsSecretBaseDecorationBase(u8 metatileBehavior) { - if (metatileBehavior == MB_C6) + if (metatileBehavior == MB_SECRET_BASE_DECORATION_BASE) return TRUE; else return FALSE; @@ -901,8 +901,8 @@ bool8 MetatileBehavior_IsBridgeOverWater(u8 metatileBehavior) || metatileBehavior == MB_BRIDGE_OVER_POND_HIGH) || (metatileBehavior == MB_BRIDGE_OVER_POND_HIGH_EDGE_1 || metatileBehavior == MB_BRIDGE_OVER_POND_HIGH_EDGE_2 - || metatileBehavior == MB_UNUSED_BRIDGE_1 - || metatileBehavior == MB_UNUSED_BRIDGE_2)) + || metatileBehavior == MB_UNUSED_BRIDGE + || metatileBehavior == MB_BIKE_BRIDGE_OVER_BARRIER)) return TRUE; else return FALSE; @@ -1262,12 +1262,11 @@ bool8 MetatileBehavior_IsAquaHideoutWarp(u8 metatileBehavior) return FALSE; } -// Very odd, used to initiate a teleport-style warp. -// No warp events seem to be on a metatile of this kind, and it's -// used by log bridges over ocean-style water, which wouldn't make -// sense to have a warp like this. -bool8 MetatileBehavior_IsBridgeOverOcean(u8 metatileBehavior) +bool8 MetatileBehavior_IsUnionRoomWarp(u8 metatileBehavior) { + // This metatile behavior is re-used for some reason by + // the Union Room exit metatile. This function is used to + // initiate a teleport-style warp. if (metatileBehavior == MB_BRIDGE_OVER_OCEAN) return TRUE; else diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index cd29717321a4..178b6d5b79a8 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -447,7 +447,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId) switch (sprite->sState) { case 0: - sub_8007E18(sprite, 0x800, 0x1A); + SetSpriteMatrixAnchor(sprite, NO_ANCHOR, 26); sprite->sState++; // fallthrough case 1: diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 297883e9cdfd..f6c07acd1574 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -20,14 +20,11 @@ #include "decompress.h" #include "constants/rgb.h" -// this file's functions static void CB2_MysteryEventMenu(void); static void PrintMysteryMenuText(u8 windowId, const u8 *text, u8 x, u8 y, s32 speed); -// EWRAM vars -static EWRAM_DATA u8 sUnknown_0203BCF8 = 0; // set but unused +static EWRAM_DATA u8 sUnused = 0; // set but unused -// const rom data static const struct BgTemplate sBgTemplates[] = { { @@ -270,7 +267,7 @@ static void CB2_MysteryEventMenu(void) if (!IsTextPrinterActive(0)) { gMain.state++; - sUnknown_0203BCF8 = 0; + sUnused = 0; } break; case 14: diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index e1236adfd3a3..709aa28c00a8 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -347,7 +347,7 @@ static const struct ListMenuTemplate sListMenu_Receive = { .cursorKind = 0 }; -static const u8 *const Unref_082F0710[] = { +static const u8 *const sUnusedMenuTexts[] = { gText_VarietyOfEventsImportedWireless, gText_WonderCardsInPossession, gText_ReadNewsThatArrived, diff --git a/src/overworld.c b/src/overworld.c index a8d9a4a83316..8b32b286c23b 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -166,7 +166,7 @@ static void ResetPlayerHeldKeys(u16 *); static u16 KeyInterCB_SelfIdle(u32); static u16 KeyInterCB_DeferToEventScript(u32); static u16 GetDirectionForDpadKey(u16); -static void CB1_UpdateLinkState(void); +static void CB1_OverworldLink(void); static void SetKeyInterceptCallback(u16 (*func)(u32)); static void SetFieldVBlankCallback(void); static void FieldClearVBlankHBlankCallbacks(void); @@ -1417,9 +1417,9 @@ static void ResetSafariZoneFlag_(void) ResetSafariZoneFlag(); } -bool32 IsUpdateLinkStateCBActive(void) +bool32 IsOverworldLinkActive(void) { - if (gMain.callback1 == CB1_UpdateLinkState) + if (gMain.callback1 == CB1_OverworldLink) return TRUE; else return FALSE; @@ -1606,7 +1606,7 @@ static void CB2_LoadMapOnReturnToFieldCableClub(void) if (LoadMapInStepsLink(&gMain.state)) { SetFieldVBlankCallback(); - SetMainCallback1(CB1_UpdateLinkState); + SetMainCallback1(CB1_OverworldLink); ResetAllMultiplayerState(); SetMainCallback2(CB2_Overworld); } @@ -1614,7 +1614,7 @@ static void CB2_LoadMapOnReturnToFieldCableClub(void) void CB2_ReturnToField(void) { - if (IsUpdateLinkStateCBActive() == TRUE) + if (IsOverworldLinkActive() == TRUE) { SetMainCallback2(CB2_ReturnToFieldLink); } @@ -1636,7 +1636,7 @@ static void CB2_ReturnToFieldLocal(void) static void CB2_ReturnToFieldLink(void) { - if (!Overworld_LinkRecvQueueLengthMoreThan2() && ReturnToFieldLink(&gMain.state)) + if (!Overworld_IsRecvQueueAtMax() && ReturnToFieldLink(&gMain.state)) SetMainCallback2(CB2_Overworld); } @@ -1644,7 +1644,7 @@ void CB2_ReturnToFieldFromMultiplayer(void) { FieldClearVBlankHBlankCallbacks(); StopMapMusic(); - SetMainCallback1(CB1_UpdateLinkState); + SetMainCallback1(CB1_OverworldLink); ResetAllMultiplayerState(); if (gWirelessCommType != 0) @@ -2226,7 +2226,7 @@ static void CreateLinkPlayerSprites(void) } -static void CB1_UpdateLinkState(void) +static void CB1_OverworldLink(void) { if (gWirelessCommType == 0 || !IsRfuRecvQueueEmpty() || !IsSendingKeysToLink()) { @@ -2442,7 +2442,7 @@ static void UpdateHeldKeyCode(u16 key) if (gWirelessCommType != 0 && GetLinkSendQueueLength() > 1 - && IsUpdateLinkStateCBActive() == TRUE + && IsOverworldLinkActive() == TRUE && IsSendingKeysToLink() == TRUE) { switch (key) @@ -2541,7 +2541,7 @@ static u16 KeyInterCB_DeferToEventScript(u32 key) static u16 KeyInterCB_DeferToRecvQueue(u32 key) { u16 retVal; - if (GetLinkRecvQueueLength() > 2) + if (GetLinkRecvQueueLength() >= OVERWORLD_RECV_QUEUE_MAX) { retVal = LINK_KEY_CODE_EMPTY; } @@ -2613,7 +2613,7 @@ static u16 KeyInterCB_WaitForPlayersToExit(u32 keyOrPlayerId) { // keyOrPlayerId could be any keycode. This callback does no sanity checking // on the size of the key. It's assuming that it is being called from - // CB1_UpdateLinkState. + // CB1_OverworldLink. if (sPlayerLinkStates[keyOrPlayerId] != PLAYER_LINK_STATE_EXITING_ROOM) CheckRfuKeepAliveTimer(); if (AreAllPlayersInLinkState(PLAYER_LINK_STATE_EXITING_ROOM) == TRUE) @@ -2834,11 +2834,11 @@ static void RunTerminateLinkScript(void) ScriptContext2_Enable(); } -bool32 Overworld_LinkRecvQueueLengthMoreThan2(void) +bool32 Overworld_IsRecvQueueAtMax(void) { - if (!IsUpdateLinkStateCBActive()) + if (!IsOverworldLinkActive()) return FALSE; - if (GetLinkRecvQueueLength() >= 3) + if (GetLinkRecvQueueLength() >= OVERWORLD_RECV_QUEUE_MAX) sReceivingFromLink = TRUE; else sReceivingFromLink = FALSE; @@ -2849,9 +2849,9 @@ bool32 Overworld_RecvKeysFromLinkIsRunning(void) { u8 temp; - if (GetLinkRecvQueueLength() < 2) + if (GetLinkRecvQueueLength() < OVERWORLD_RECV_QUEUE_MAX - 1) return FALSE; - else if (IsUpdateLinkStateCBActive() != TRUE) + else if (IsOverworldLinkActive() != TRUE) return FALSE; else if (IsSendingKeysToLink() != TRUE) return FALSE; @@ -2875,7 +2875,7 @@ bool32 Overworld_SendKeysToLinkIsRunning(void) { if (GetLinkSendQueueLength() < 2) return FALSE; - else if (IsUpdateLinkStateCBActive() != TRUE) + else if (IsOverworldLinkActive() != TRUE) return FALSE; else if (IsSendingKeysToLink() != TRUE) return FALSE; diff --git a/src/palette_util.c b/src/palette_util.c index 3fbde9284e4c..08239c3363bd 100755 --- a/src/palette_util.c +++ b/src/palette_util.c @@ -439,7 +439,7 @@ void UpdatePulseBlend(struct PulseBlend *pulseBlend) } // Below used for the Roulette grid -void ClearTilemapRect(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height) +void FillTilemapRect(u16 *dest, u16 value, u8 left, u8 top, u8 width, u8 height) { u16 *_dest; u8 i; @@ -450,9 +450,7 @@ void ClearTilemapRect(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height) { _dest = dest + i * 32; for (j = 0; j < width; j++) - { - *_dest++ = src; - } + *_dest++ = value; } } @@ -468,8 +466,39 @@ void SetTilemapRect(u16 *dest, u16 *src, u8 left, u8 top, u8 width, u8 height) { _dest = dest + i * 32; for (j = 0; j < width; j++) - { *_dest++ = *_src++; + } +} + +static void FillTilemapRect_Unused(void *dest, u16 value, u8 left, u8 top, u8 width, u8 height) +{ + u8 i, j; + u8 x, y; + + for (i = 0, y = top; i < height; i++) + { + for (x = left, j = 0; j < width; j++) + { + *(u16 *)((dest) + (y * 64 + x * 2)) = value; + x = (x + 1) % 32; + } + y = (y + 1) % 32; + } +} + +static void SetTilemapRect_Unused(void *dest, const u16 *src, u8 left, u8 top, u8 width, u8 height) +{ + u8 i, j; + u8 x, y; + const u16 *_src; + + for (i = 0, _src = src, y = top; i < height; i++) + { + for (x = left, j = 0; j < width; j++) + { + *(u16 *)((dest) + (y * 64 + x * 2)) = *(_src++); + x = (x + 1) % 32; } + y = (y + 1) % 32; } } diff --git a/src/party_menu.c b/src/party_menu.c index 38ca8c9d51c5..14215f9c0cd5 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -476,7 +476,7 @@ static void CB2_InitPartyMenu(void) { while (TRUE) { - if (MenuHelpers_CallLinkSomething() == TRUE || ShowPartyMenu() == TRUE || MenuHelpers_LinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE || ShowPartyMenu() == TRUE || MenuHelpers_IsLinkActive() == TRUE) break; } } @@ -509,7 +509,7 @@ static bool8 ShowPartyMenu(void) gMain.state++; break; case 5: - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) ResetTasks(); gMain.state++; break; @@ -1182,7 +1182,7 @@ u8 GetPartyMenuType(void) void Task_HandleChooseMonInput(u8 taskId) { - if (!gPaletteFade.active && MenuHelpers_CallLinkSomething() != TRUE) + if (!gPaletteFade.active && MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s8 *slotPtr = GetCurrentPartySlotPtr(); @@ -1319,7 +1319,7 @@ static void HandleChooseMonCancel(u8 taskId, s8 *slotPtr) PlaySE(SE_SELECT); if (DisplayCancelChooseMonYesNo(taskId) != TRUE) { - if (!MenuHelpers_LinkSomething()) + if (!MenuHelpers_IsLinkActive()) gSpecialVar_0x8004 = PARTY_SIZE + 1; gPartyMenuUseExitCallback = FALSE; *slotPtr = PARTY_SIZE + 1; @@ -1659,7 +1659,7 @@ bool8 IsPartyMenuTextPrinterActive(void) static void Task_WaitForLinkAndReturnToChooseMon(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { DisplayPartyMenuStdMessage(PARTY_MSG_CHOOSE_MON); gTasks[taskId].func = Task_HandleChooseMonInput; @@ -1672,7 +1672,7 @@ static void Task_ReturnToChooseMonAfterText(u8 taskId) { ClearStdWindowAndFrameToTransparent(6, 0); ClearWindowTilemap(6); - if (MenuHelpers_LinkSomething() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE) { gTasks[taskId].func = Task_WaitForLinkAndReturnToChooseMon; } @@ -2663,7 +2663,7 @@ static void Task_TryCreateSelectionWindow(u8 taskId) static void Task_HandleSelectionMenuInput(u8 taskId) { - if (!gPaletteFade.active && MenuHelpers_CallLinkSomething() != TRUE) + if (!gPaletteFade.active && MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { s8 input; s16 *data = gTasks[taskId].data; @@ -3635,7 +3635,7 @@ static void CursorCb_FieldMove(u8 taskId) PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[0]); PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[1]); - if (MenuHelpers_LinkSomething() == TRUE || InUnionRoom() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE || InUnionRoom() == TRUE) { if (fieldMove == FIELD_MOVE_MILK_DRINK || fieldMove == FIELD_MOVE_SOFT_BOILED) DisplayPartyMenuStdMessage(PARTY_MSG_CANT_USE_HERE); diff --git a/src/pokeblock.c b/src/pokeblock.c index 647a85b10983..67c9602d2699 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -505,11 +505,11 @@ static void CB2_InitPokeblockMenu(void) { while (1) { - if (MenuHelpers_CallLinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE) break; if (InitPokeblockMenu() == TRUE) break; - if (MenuHelpers_LinkSomething() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE) break; } } @@ -1004,7 +1004,7 @@ static void Task_HandlePokeblockMenuInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (!gPaletteFade.active && MenuHelpers_CallLinkSomething() != TRUE) + if (!gPaletteFade.active && MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (JOY_NEW(SELECT_BUTTON)) { @@ -1057,7 +1057,7 @@ static void Task_HandlePokeblocksSwapInput(u8 taskId) { s16 *data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE) return; if (JOY_NEW(SELECT_BUTTON)) @@ -1161,7 +1161,7 @@ static void Task_HandlePokeblockActionsInput(u8 taskId) { s8 itemId; - if (MenuHelpers_CallLinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE) return; itemId = Menu_ProcessInputNoWrap(); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 2241d1668bcc..1253f2285211 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -688,11 +688,11 @@ void PreparePokeblockFeedScene(void) { while (1) { - if (MenuHelpers_CallLinkSomething() == TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() == TRUE) break; if (LoadPokeblockFeedScene() == TRUE) break; - if (MenuHelpers_LinkSomething() == TRUE) + if (MenuHelpers_IsLinkActive() == TRUE) break; } } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index ab86ee09fe0f..2ad25576f504 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3197,7 +3197,7 @@ static void LoadPokeJumpGfx(void) FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 0x20, 0x20); PrintScoreSuffixes(); PrintScore(0); - sub_8098C6C(0, 1, 0xE0); + LoadUserWindowBorderGfxOnBg(0, 1, 0xE0); CopyBgTilemapBufferToVram(BG_INTERFACE); CopyBgTilemapBufferToVram(BG_VENUSAUR); CopyBgTilemapBufferToVram(BG_BONUSES); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index dc05c52c4a92..4dbdd13348bc 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1146,7 +1146,7 @@ static void VBlank(void) static void CB2_InitSummaryScreen(void) { - while (MenuHelpers_CallLinkSomething() != TRUE && LoadGraphics() != TRUE && MenuHelpers_LinkSomething() != TRUE); + while (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && LoadGraphics() != TRUE && MenuHelpers_IsLinkActive() != TRUE); } static bool8 LoadGraphics(void) @@ -1490,7 +1490,7 @@ static void BeginCloseSummaryScreen(u8 taskId) static void CloseSummaryScreen(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE && !gPaletteFade.active) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && !gPaletteFade.active) { SetMainCallback2(sMonSummaryScreen->callback); gLastViewedMonIndex = sMonSummaryScreen->curMonIndex; @@ -1508,7 +1508,7 @@ static void CloseSummaryScreen(u8 taskId) static void Task_HandleInput(u8 taskId) { - if (MenuHelpers_CallLinkSomething() != TRUE && !gPaletteFade.active) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && !gPaletteFade.active) { if (JOY_NEW(DPAD_UP)) { @@ -1660,7 +1660,7 @@ static void Task_ChangeSummaryMon(u8 taskId) gSprites[sMonSummaryScreen->spriteIds[SPRITE_ARR_ID_MON]].data[2] = 0; break; default: - if (MenuHelpers_CallLinkSomething() == 0 && FuncIsActiveTask(Task_ShowStatusWindow) == 0) + if (!MenuHelpers_ShouldWaitForLinkRecv() && !FuncIsActiveTask(Task_ShowStatusWindow)) { data[0] = 0; gTasks[taskId].func = Task_HandleInput; @@ -1889,7 +1889,7 @@ static void Task_HandleInput_MoveSelect(u8 taskId) { s16 *data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != 1) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (JOY_NEW(DPAD_UP)) { @@ -2029,7 +2029,7 @@ static void Task_HandleInput_MovePositionSwitch(u8 taskId) { s16* data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (JOY_NEW(DPAD_UP)) { @@ -2170,7 +2170,7 @@ static void Task_HandleReplaceMoveInput(u8 taskId) { s16* data = gTasks[taskId].data; - if (MenuHelpers_CallLinkSomething() != TRUE) + if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { if (gPaletteFade.active != TRUE) { diff --git a/src/pokenav.c b/src/pokenav.c index 925560543b51..d30c523f9285 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -212,7 +212,7 @@ u32 CreateLoopedTask(LoopedTask loopedTask, u32 priority) { u16 taskId; - if (!IsUpdateLinkStateCBActive()) + if (!IsOverworldLinkActive()) taskId = CreateTask(Task_RunLoopedTask, priority); else taskId = CreateTask(Task_RunLoopedTask_LinkMode, priority); @@ -288,7 +288,7 @@ static void Task_RunLoopedTask_LinkMode(u8 taskId) s16 *state; u32 action; - if (Overworld_LinkRecvQueueLengthMoreThan2()) + if (Overworld_IsRecvQueueAtMax()) return; task = (LoopedTask)GetWordTaskArg(taskId, 1); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index ba495245b65d..f022f04bfcfb 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -6,6 +6,7 @@ #include "bg.h" #include "menu.h" #include "decompress.h" +#include "international_string_util.h" // TODO: This UI isnt just for match call, seems to be the general pokenav list UI @@ -66,8 +67,6 @@ struct PokenavSub17 u32 loopedTaskId; }; -extern void sub_81DB620(u32 windowId, u32 a1, u32 a2, u32 a3, u32 a4); - void sub_81C82E4(struct PokenavSub17 *matchCall); bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3); void InitMatchCallWindowState(struct MatchCallWindowState *a0, struct PokenavListTemplate *a1); @@ -754,7 +753,7 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok if (str != NULL) { - sub_81DB620(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); + FillWindowTilesByRow(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); AddTextPrinterParameterized(list->listWindow.windowId, 7, str, 2, (r6 << 4) + 1, TEXT_SPEED_FF, NULL); CopyWindowRectToVram(list->listWindow.windowId, 2, 0, r6 * 2, list->listWindow.unk4, 2); } diff --git a/src/roulette.c b/src/roulette.c index b6ef1168b29f..acfeea2b71e5 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1317,28 +1317,28 @@ static void UpdateGridSelectionRect(u8 selectionId) switch (selectionId) { case SELECTION_NONE: - ClearTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); + FillTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); break; case COL_WYNAUT: case COL_AZURILL: case COL_SKITTY: case COL_MAKUHITA: temp0 = (selectionId * 3 + 14); - ClearTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); + FillTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); SetTilemapRect(&sRoulette->tilemapBuffers[0][0], &sRoulette->gridTilemap[281], temp0, 7, 3, 13); break; case ROW_ORANGE: case ROW_GREEN: case ROW_PURPLE: temp1 = ((selectionId - 1) / 5 * 3 + 10); - ClearTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); + FillTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); SetTilemapRect(&sRoulette->tilemapBuffers[0][0], &sRoulette->gridTilemap[320], 14, temp1, 16, 3); break; // Individual square default: temp0 = GET_COL(selectionId) * 3 + 14; temp1 = ((selectionId - 1) / 5 * 3 + 7); - ClearTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); + FillTilemapRect(&sRoulette->tilemapBuffers[0][0], 0, 14, 7, 16, 13); SetTilemapRect(&sRoulette->tilemapBuffers[0][0], &sRoulette->gridTilemap[272], temp0, temp1, 3, 3); break; } diff --git a/src/scrcmd.c b/src/scrcmd.c index 3e3beee59cff..96d95da277d8 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1207,7 +1207,7 @@ bool8 ScrCmd_turnvobject(struct ScriptContext *ctx) // The player is frozen after waiting for their current movement to finish. bool8 ScrCmd_lockall(struct ScriptContext *ctx) { - if (IsUpdateLinkStateCBActive()) + if (IsOverworldLinkActive()) { return FALSE; } @@ -1223,7 +1223,7 @@ bool8 ScrCmd_lockall(struct ScriptContext *ctx) // The player and selected object are frozen after waiting for their current movement to finish. bool8 ScrCmd_lock(struct ScriptContext *ctx) { - if (IsUpdateLinkStateCBActive()) + if (IsOverworldLinkActive()) { return FALSE; } @@ -2196,7 +2196,7 @@ bool8 ScrCmd_selectapproachingtrainer(struct ScriptContext *ctx) bool8 ScrCmd_lockfortrainer(struct ScriptContext *ctx) { - if (IsUpdateLinkStateCBActive()) + if (IsOverworldLinkActive()) { return FALSE; } diff --git a/src/start_menu.c b/src/start_menu.c index 59279d6b9fb2..236c6e404184 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -251,7 +251,7 @@ static void BuildStartMenuActions(void) { sNumStartMenuActions = 0; - if (IsUpdateLinkStateCBActive() == TRUE) + if (IsOverworldLinkActive() == TRUE) { BuildLinkModeStartMenu(); } @@ -554,7 +554,7 @@ void Task_ShowStartMenu(u8 taskId) void ShowStartMenu(void) { - if (!IsUpdateLinkStateCBActive()) + if (!IsOverworldLinkActive()) { FreezeObjectEvents(); PlayerFreeze(); @@ -679,7 +679,7 @@ static bool8 StartMenuPlayerNameCallback(void) RemoveExtraStartMenuWindows(); CleanupOverworldWindowsAndTilemaps(); - if (IsUpdateLinkStateCBActive() || InUnionRoom()) + if (IsOverworldLinkActive() || InUnionRoom()) ShowPlayerTrainerCard(CB2_ReturnToFieldWithOpenMenu); // Display trainer card else if (FlagGet(FLAG_SYS_FRONTIER_PASS)) ShowFrontierPass(CB2_ReturnToFieldWithOpenMenu); // Display frontier pass diff --git a/src/text_window.c b/src/text_window.c index 864bd0831669..798b791ced02 100644 --- a/src/text_window.c +++ b/src/text_window.c @@ -6,7 +6,6 @@ #include "bg.h" #include "graphics.h" -// const rom data const u8 gTextWindowFrame1_Gfx[] = INCBIN_U8("graphics/text_window/1.4bpp"); static const u8 sTextWindowFrame2_Gfx[] = INCBIN_U8("graphics/text_window/2.4bpp"); static const u8 sTextWindowFrame3_Gfx[] = INCBIN_U8("graphics/text_window/3.4bpp"); @@ -190,7 +189,8 @@ const u16 *GetOverworldTextboxPalettePtr(void) return gMessageBox_Pal; } -void sub_8098C6C(u8 bg, u16 destOffset, u8 palOffset) +// Effectively LoadUserWindowBorderGfx but specifying the bg directly instead of a window from that bg +void LoadUserWindowBorderGfxOnBg(u8 bg, u16 destOffset, u8 palOffset) { LoadBgTiles(bg, sWindowFrames[gSaveBlock2Ptr->optionsWindowFrameType].tiles, 0x120, destOffset); LoadPalette(GetWindowFrameTilesPal(gSaveBlock2Ptr->optionsWindowFrameType)->pal, palOffset, 0x20); diff --git a/src/trainer_card.c b/src/trainer_card.c index bad015644ca1..45902e7f817b 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -456,7 +456,7 @@ static void Task_TrainerCard(u8 taskId) } break; case STATE_WAIT_FLIP_TO_BACK: - if (IsCardFlipTaskActive() && Overworld_LinkRecvQueueLengthMoreThan2() != TRUE) + if (IsCardFlipTaskActive() && Overworld_IsRecvQueueAtMax() != TRUE) { PlaySE(SE_RG_CARD_OPEN); sData->mainState = STATE_HANDLE_INPUT_BACK; @@ -513,7 +513,7 @@ static void Task_TrainerCard(u8 taskId) CloseTrainerCard(taskId); break; case STATE_WAIT_FLIP_TO_FRONT: - if (IsCardFlipTaskActive() && Overworld_LinkRecvQueueLengthMoreThan2() != TRUE) + if (IsCardFlipTaskActive() && Overworld_IsRecvQueueAtMax() != TRUE) { sData->mainState = STATE_HANDLE_INPUT_FRONT; PlaySE(SE_RG_CARD_OPEN); @@ -1663,7 +1663,7 @@ static bool8 Task_AnimateCardFlipDown(struct Task* task) static bool8 Task_DrawFlippedCardSide(struct Task* task) { sData->allowDMACopy = FALSE; - if (Overworld_LinkRecvQueueLengthMoreThan2() == TRUE) + if (Overworld_IsRecvQueueAtMax() == TRUE) return FALSE; do diff --git a/src/union_room_chat.c b/src/union_room_chat.c index ca6f8bd1d814..a1aae08cf352 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -249,7 +249,7 @@ static void SetBgTilemapBuffers(void); static void ClearBg0(void); static void LoadChatWindowBorderGfx(void); static void LoadChatWindowGfx(void); -static void sub_8020680(void); +static void LoadChatUnkPalette(void); static void LoadChatMessagesWindow(void); static void LoadKeyboardWindow(void); static void LoadKeyboardSwapWindow(void); @@ -1983,10 +1983,10 @@ static int GetShouldShowCaseToggleIcon(void) { u8 *str = GetLastCharOfMessagePtr(); u32 character = *str; - if (character > 0xFF || sCaseToggleTable[character] == character || sCaseToggleTable[character] == 0) - return 3; + if (character > EOS || sCaseToggleTable[character] == character || sCaseToggleTable[character] == CHAR_SPACE) + return 3; // Don't show else - return 0; + return 0; // Show } static u8 *GetChatHostName(void) @@ -2063,7 +2063,7 @@ static void Task_ReceiveChatMessage(u8 taskId) switch (buffer[0]) { default: - case CHAT_MESSAGE_CHAT: tNextState = 3; break; + case CHAT_MESSAGE_CHAT: tNextState = 3; break; case CHAT_MESSAGE_JOIN: tNextState = 3; break; case CHAT_MESSAGE_LEAVE: tNextState = 4; break; case CHAT_MESSAGE_DROP: tNextState = 5; break; @@ -2246,7 +2246,7 @@ static bool32 Display_LoadGfx(u8 *state) LoadChatWindowGfx(); break; case 4: - sub_8020680(); + LoadChatUnkPalette(); break; case 5: LoadChatMessagesWindow(); @@ -3074,7 +3074,7 @@ static void LoadChatWindowGfx(void) CopyBgTilemapBufferToVram(2); } -static void sub_8020680(void) +static void LoadChatUnkPalette(void) { LoadPalette(sUnk_Palette1, 0x80, sizeof(sUnk_Palette1)); RequestDma3Fill(0, (void *)BG_CHAR_ADDR(1) + 0x20, 0x20, 1); From 929aade0fd0e5ea0fba4e18650bda02e6a943ba5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 2 Nov 2021 18:34:05 -0400 Subject: [PATCH 370/762] Fix braille slash --- gflib/characters.h | 2 +- tools/preproc/asm_file.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gflib/characters.h b/gflib/characters.h index 480652df0346..714904aa42cb 100644 --- a/gflib/characters.h +++ b/gflib/characters.h @@ -300,7 +300,7 @@ #define BRAILLE_CHAR_O 0x19 // #define BRAILLE_CHAR_N 0x1B -#define BRAILLE_CHAR_EXCL_MARK 0x1C +#define BRAILLE_CHAR_EXCL_MARK 0x1C #define BRAILLE_CHAR_R 0x1D #define BRAILLE_CHAR_T 0x1E #define BRAILLE_CHAR_Q 0x1F diff --git a/tools/preproc/asm_file.cpp b/tools/preproc/asm_file.cpp index be8d54fc4c3a..af16e232d319 100644 --- a/tools/preproc/asm_file.cpp +++ b/tools/preproc/asm_file.cpp @@ -371,7 +371,7 @@ int AsmFile::ReadBraille(unsigned char* s) { ':', BRAILLE_CHAR_COLON }, { ';', BRAILLE_CHAR_SEMICOLON }, { '-', BRAILLE_CHAR_HYPHEN }, - { '/', BRAILLE_CHAR_PAREN }, + { '/', BRAILLE_CHAR_SLASH }, { '(', BRAILLE_CHAR_PAREN }, { ')', BRAILLE_CHAR_PAREN }, { '\'', BRAILLE_CHAR_APOSTROPHE }, From dc44548e43b8cc9dcd8e32061c67ed84073a8631 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 2 Nov 2021 20:28:17 -0400 Subject: [PATCH 371/762] Sync libgcnmultiboot --- src/libgcnmultiboot.s | 419 +++++++++++++++++++++++++----------------- 1 file changed, 255 insertions(+), 164 deletions(-) diff --git a/src/libgcnmultiboot.s b/src/libgcnmultiboot.s index dbf70ccf8635..5ecc7d2f90a8 100644 --- a/src/libgcnmultiboot.s +++ b/src/libgcnmultiboot.s @@ -4,11 +4,36 @@ .include "asm/macros.inc" .include "constants/constants.inc" + .equiv GCMB_STRUCT_COUNTER1, 0x00 + .equiv GCMB_STRUCT_COUNTER2, 0x01 + .equiv GCMB_STRUCT_MBPROGRESS, 0x02 + .equiv GCMB_STRUCT_SAVEDVCOUNT, 0x03 + .equiv GCMB_STRUCT_KEYA, 0x04 + .equiv GCMB_STRUCT_KEYB, 0x08 + .equiv GCMB_STRUCT_KEYC, 0x0C + .equiv GCMB_STRUCT_BOOT_KEY, 0x10 + .equiv GCMB_STRUCT_IMAGE_SIZE, 0x12 + .equiv GCMB_STRUCT_SESSION_KEY, 0x14 + .equiv GCMB_STRUCT_HASH_VAL, 0x18 + .equiv GCMB_STRUCT_KEYC_DERIVATION, 0x1C .equiv GCMB_STRUCT_BASE_DEST_PTR, 0x20 .equiv GCMB_STRUCT_CUR_DEST_PTR, 0x24 .equiv GCMB_STRUCT_SERIAL_INTR_HANDLER, 0x28 - .equiv ROM_HEADER_NINTENDO_LOGO_OFFSET, 0x4 + .equiv ROM_HEADER_NINTENDO_LOGO_OFFSET, 0x04 + .equiv ROM_HEADER_NINTENDO_LOGO_LENGTH, 0x98 + .equiv ROM_HEADER_NINTENDO_LOGO_END, 0xA0 + + .equiv MBPROGRESS_NONE, 0x00 + .equiv MBPROGRESS_LOGO_CORRECT, 0x01 + .equiv MBPROGRESS_READY_TO_BOOT, 0x02 + + .equiv GCMB_MAGIC_BOOTKEY_HASHVAL, 0xBB + .equiv GCMB_MAGIC_BOOTKEY, 0xBB + .equiv GCMB_MAGIC_COUNTER2, 0xCC + .equiv GCMB_MAGIC_KEYA, 0xDD + .equiv GCMB_MAGIC_KEYB, 0xEE + .equiv GCMB_MAGIC_KEYCDERIVATION, 0xFF .syntax unified @@ -22,7 +47,7 @@ GameCubeMultiBoot_Hash: @ 82DED70 movs r2, 0x20 GameCubeMultiBoot_Hash_Loop: - lsrs r3, #1 + lsrs r3, 1 bcc GameCubeMultiBoot_Hash_SkipEor eors r3, r4 @@ -37,137 +62,177 @@ GameCubeMultiBoot_Hash_SkipEor: thumb_func_start GameCubeMultiBoot_Main @ void GameCubeMultiBoot_Main(struct GameCubeMultiBoot *mb); GameCubeMultiBoot_Main: @ 82DED84 - ldr r1, [r0, #GCMB_STRUCT_SERIAL_INTR_HANDLER] - cmp r1, #0 - beq _082DEDAA - ldrb r1, [r0, 0x1] + @ If there is no interrupt handler, skip counter manipulation + ldr r1, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER] + cmp r1, 0 + beq GameCubeMultiBoot_Main_SkipCounters + @ Increment the second counter + ldrb r1, [r0, GCMB_STRUCT_COUNTER2] adds r1, 0x1 - strb r1, [r0, 0x1] - ldrb r1, [r0, 0x2] - cmp r1, 0x2 - beq _082DEDF4 + strb r1, [r0, GCMB_STRUCT_COUNTER2] + @ If there is nothing more to do, bail out + ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] + cmp r1, MBPROGRESS_READY_TO_BOOT + beq GameCubeMultiBoot_Main_Return + @ Save current interrupt master register value ldr r3, pool_InterruptRegs - ldrh r2, [r3, #OFFSET_REG_IME - 0x200] + ldrh r2, [r3, OFFSET_REG_IME - 0x200] + @ Disable all interrupts movs r1, 0 - strh r1, [r3, #OFFSET_REG_IME - 0x200] - ldrb r1, [r0] + strh r1, [r3, OFFSET_REG_IME - 0x200] + @ Increment the first counter, if it's less than or equal to 10. + ldrb r1, [r0, GCMB_STRUCT_COUNTER1] cmp r1, 0xA - bgt _082DEDA8 + bgt GameCubeMultiBoot_Main_SkipCounter1Inc adds r1, 0x1 - strb r1, [r0] -_082DEDA8: - strh r2, [r3, #OFFSET_REG_IME - 0x200] -_082DEDAA: + strb r1, [r0, GCMB_STRUCT_COUNTER1] +GameCubeMultiBoot_Main_SkipCounter1Inc: + @ Load the saved interrupt master register value (re-enables interrupts if they were enabled before) + strh r2, [r3, OFFSET_REG_IME - 0x200] +GameCubeMultiBoot_Main_SkipCounters: + @ Initialise multiboot structures if required bcs GameCubeMultiBoot_Init - ldrb r1, [r0, 0x2] - cmp r1, 0 - bne _082DEDF6 - ldr r1, [r0, #GCMB_STRUCT_CUR_DEST_PTR] - ldr r2, [r0, #GCMB_STRUCT_BASE_DEST_PTR] + @ Skip this section (check Nintendo logo) if the check has already passed + ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] + cmp r1, MBPROGRESS_NONE + bne GameCubeMultiBoot_Main_SkipLogoCheck + @ Bail out if no multiboot image data has been transferred yet + ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR] + ldr r2, [r0, GCMB_STRUCT_BASE_DEST_PTR] subs r1, r2 - beq _082DEE76 - cmp r1, 0xA0 - bcc _082DEE76 + beq GameCubeMultiBoot_Main_Return2 + @ Also bail out if not enough data has been transferred + cmp r1, ROM_HEADER_NINTENDO_LOGO_END + bcc GameCubeMultiBoot_Main_Return2 + @ Compare the Nintendo logo of the transferred multiboot image header, with the one in the ROM image of the inserted cart push {r4-r6} - movs r1, 0x98 - adds r2, #ROM_HEADER_NINTENDO_LOGO_OFFSET + movs r1, ROM_HEADER_NINTENDO_LOGO_LENGTH + adds r2, ROM_HEADER_NINTENDO_LOGO_OFFSET ldr r4, pool_NintendoLogo -_082DEDC6: +GameCubeMultiBoot_Main_LogoCmpLoop: ldm r2!, {r5} ldm r4!, {r6} cmp r5, r6 - bne _082DEDDC + bne GameCubeMultiBoot_Main_LogoCmpEnd subs r1, 0x4 - bne _082DEDC6 + bne GameCubeMultiBoot_Main_LogoCmpLoop ldm r2!, {r5} ldm r4!, {r6} eors r5, r6 - lsrs r5, #8 - str r2, [r0, #GCMB_STRUCT_BASE_DEST_PTR] -_082DEDDC: + lsrs r5, 8 + str r2, [r0, GCMB_STRUCT_BASE_DEST_PTR] +GameCubeMultiBoot_Main_LogoCmpEnd: pop {r4-r6} + @ Throw everything away if the logo data didn't match bne GameCubeMultiBoot_Init - movs r1, 0x1 - strb r1, [r0, 0x2] - ldr r1, [r0, 0x4] - ldr r2, [r0, 0x8] + @ Logo matched, set the relevent multiboot progress bit + movs r1, MBPROGRESS_LOGO_CORRECT + strb r1, [r0, GCMB_STRUCT_MBPROGRESS] + @ XOR together KeyA and KeyB to get the initial multiboot image checksum value + ldr r1, [r0, GCMB_STRUCT_KEYA] + ldr r2, [r0, GCMB_STRUCT_KEYB] eors r1, r2 - str r1, [r0, 0x18] + str r1, [r0, GCMB_STRUCT_HASH_VAL] + @ ...also use it as the initial value for the image encryption session key. Algorithm is the same as the GBA BIOS multiboot: sessionkey = (initialvalue * 0x6177614b) + 1 ldr r2, pool_Kawa muls r1, r2 adds r1, 0x1 - str r1, [r0, 0x14] -_082DEDF4: + str r1, [r0, GCMB_STRUCT_SESSION_KEY] +GameCubeMultiBoot_Main_Return: bx lr -_082DEDF6: - ldr r1, [r0, #GCMB_STRUCT_CUR_DEST_PTR] +GameCubeMultiBoot_Main_SkipLogoCheck: + @ If this code is executed, then the logo check has passed, and the data being transferred in is encrypted. + @ Set up registers. + ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR] mov r12, r1 - ldr r3, [r0, 0x18] + ldr r3, [r0, GCMB_STRUCT_HASH_VAL] push {r4-r7} - ldr r4, [r0, #GCMB_STRUCT_BASE_DEST_PTR] + ldr r4, [r0, GCMB_STRUCT_BASE_DEST_PTR] ldr r5, pool_Kawa - ldr r6, [r0, 0x14] + ldr r6, [r0, GCMB_STRUCT_SESSION_KEY] ldr r7, pool_HashVal -_082DEE06: +GameCubeMultiBoot_Main_ImageDecryptHashLoop: + @ If there's no more data, break out of the loop cmp r4, r12 - bcs _082DEE26 + bcs GameCubeMultiBoot_Main_ImageDecryptHashEnd + @ Get the next uint32 ldr r1, [r4] + @ Decrypt the ciphertext: plaintext = (ciphertext ^ sessionkey) + hashval eors r1, r6 adds r1, r3 + @ Save the current uint32 of plaintext and advance the pointer stm r4!, {r1} + @ Advance the hashval with this uint32 of plaintext -- this is the same code as GameCubeMultiBoot_Hash. eors r3, r1 movs r2, 0x20 -_082DEE16: - lsrs r3, #1 - bcc _082DEE1C +GameCubeMultiBoot_Main_HashLoop: + lsrs r3, 1 + bcc GameCubeMultiBoot_Main_HashSkipEor eors r3, r7 -_082DEE1C: +GameCubeMultiBoot_Main_HashSkipEor: subs r2, 0x1 - bne _082DEE16 + bne GameCubeMultiBoot_Main_HashLoop + @ Advance the sessionkey with the usual algorithm: sessionkey = (sessionkey * 0x6177614b) + 1 muls r6, r5 adds r6, 0x1 - b _082DEE06 -_082DEE26: - str r4, [r0, #GCMB_STRUCT_BASE_DEST_PTR] - str r6, [r0, 0x14] + b GameCubeMultiBoot_Main_ImageDecryptHashLoop +GameCubeMultiBoot_Main_ImageDecryptHashEnd: + @ Save the new pointer, sessionkey, hashval + str r4, [r0, GCMB_STRUCT_BASE_DEST_PTR] + str r6, [r0, GCMB_STRUCT_SESSION_KEY] pop {r4-r7} - str r3, [r0, 0x18] - ldrh r1, [r0, 0x12] - cmp r1, #0 - bne _082DEE76 - ldr r1, [r0, #GCMB_STRUCT_CUR_DEST_PTR] - ldr r2, [r0, #GCMB_STRUCT_BASE_DEST_PTR] + str r3, [r0, GCMB_STRUCT_HASH_VAL] + @ Bail out if the image size is unknown + ldrh r1, [r0, GCMB_STRUCT_IMAGE_SIZE] + cmp r1, 0 + bne GameCubeMultiBoot_Main_Return2 + @ Bail out if no image data has been transferred + ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR] + ldr r2, [r0, GCMB_STRUCT_BASE_DEST_PTR] cmp r1, r2 - bne _082DEE76 - ldr r1, [r0, 0xC] - cmp r1, #0 - beq _082DEE60 - ldrh r1, [r0, 0x10] - cmp r1, #0 - beq _082DEDF4 + bne GameCubeMultiBoot_Main_Return2 + @ If KeyC hasn't been generated yet, go generate it + ldr r1, [r0, GCMB_STRUCT_KEYC] + cmp r1, 0 + beq GameCubeMultiBoot_Main_GenerateKeyC + @ If the other side hasn't sent its boot key yet, bail out + ldrh r1, [r0, GCMB_STRUCT_BOOT_KEY] + cmp r1, 0 + beq GameCubeMultiBoot_Main_Return + @ Save off LR so it doesn't get clobbered by the upcoming function call mov r12, lr - movs r1, 0xBB - ldr r3, [r0, 0xC] + @ Generate the real boot key, which is the checksum of a hardcoded value and KeyC + movs r1, GCMB_MAGIC_BOOTKEY_HASHVAL + ldr r3, [r0, GCMB_STRUCT_KEYC] bl GameCubeMultiBoot_Hash - ldrh r1, [r0, 0x10] + ldrh r1, [r0, GCMB_STRUCT_BOOT_KEY] + @ Restore the saved LR value mov lr, r12 + @ Compare the two boot keys (real and passed in), if they don't match then throw everything away subs r1, r3 bne GameCubeMultiBoot_Init - movs r1, 0x2 - strb r1, [r0, 0x2] + @ The two boot keys matched, tell the caller that the image is ready to boot + movs r1, MBPROGRESS_READY_TO_BOOT + strb r1, [r0, GCMB_STRUCT_MBPROGRESS] + @ Nothing more to do, return. bx lr -_082DEE60: +GameCubeMultiBoot_Main_GenerateKeyC: + @ Save off LR so it doesn't get clobbered by the upcoming function call mov r12, lr - ldrb r1, [r0, 0x3] - lsls r1, #24 + @ KeyC = (SavedVCount << 24) - 1 + ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT] + lsls r1, 24 subs r1, 0x1 - str r1, [r0, 0xC] + str r1, [r0, GCMB_STRUCT_KEYC] + @ Hash the KeyC with the multiboot image checksum to generate the KeyC derivation material to be sent to the other side of the link bl GameCubeMultiBoot_Hash - lsls r3, #8 - adds r3, 0xFF - str r3, [r0, 0x1C] + @ Make sure the sent KeyC derivation material contains a magic value so that the other side can detect it + lsls r3, 8 + adds r3, GCMB_MAGIC_KEYCDERIVATION + @ Save off the KeyC derivation material and return to caller + str r3, [r0, GCMB_STRUCT_KEYC_DERIVATION] bx r12 -_082DEE76: +GameCubeMultiBoot_Main_Return2: bx lr thumb_func_end GameCubeMultiBoot_Main @@ -182,12 +247,15 @@ pool_NintendoLogo: .4byte RomHeaderNintendoLogo thumb_func_start GameCubeMultiBoot_ExecuteProgram @ void GameCubeMultiBoot_ExecuteProgram(struct GameCubeMultiBoot *mb); GameCubeMultiBoot_ExecuteProgram: @ 82DEE84 - ldrb r1, [r0, 0x2] - cmp r1, 0x2 + @ If there's no multiboot image ready, just return to caller + ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] + cmp r1, MBPROGRESS_READY_TO_BOOT bne GameCubeMultiBoot_ExecuteProgram_Fail + @ Disable interrupts ldr r3, pool_InterruptRegs - movs r1, #0 - strh r1, [r3, #OFFSET_REG_IME - 0x200] + movs r1, 0 + strh r1, [r3, OFFSET_REG_IME - 0x200] + @ Jump to the real entry point of the multiboot image (past the image header), in ARM mode ldr r1, pool_MultiBootLoadAddr adds r1, 0xC0 bx r1 @@ -201,25 +269,25 @@ GameCubeMultiBoot_Init: @ 82DEE98 ldr r3, pool_InterruptRegs @ Save IME register. - ldrh r2, [r3, #OFFSET_REG_IME - 0x200] + ldrh r2, [r3, OFFSET_REG_IME - 0x200] @ Disable interrupts. movs r1, 0 - strh r1, [r3, #OFFSET_REG_IME - 0x200] + strh r1, [r3, OFFSET_REG_IME - 0x200] @ Set the handler to the "Stop" routine. @ Unless the first command that is received is a device reset command, the @ "Stop" routine will be executed and no further commands will be processed. adr r3, GcMbIntrHandler_Stop - str r3, [r0, #GCMB_STRUCT_SERIAL_INTR_HANDLER] + str r3, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER] ldrb r3, [r0, 0x3] push {r3} ldrb r3, [r0, 0x1] push {r0,r3} - adds r3, r0, #0 - adds r3, #GCMB_STRUCT_BASE_DEST_PTR + adds r3, r0, 0 + adds r3, GCMB_STRUCT_BASE_DEST_PTR @ clear all but the last 3 fields of the struct GameCubeMultiBoot_Init_ClearStructLoop: @@ -261,7 +329,7 @@ GameCubeMultiBoot_Init_ClearStructLoop: strh r1, [r3, OFFSET_REG_IE - 0x200] @ Restore IME register. - strh r2, [r3, #OFFSET_REG_IME - 0x200] + strh r2, [r3, OFFSET_REG_IME - 0x200] bx lr thumb_func_end GameCubeMultiBoot_Init @@ -275,11 +343,11 @@ GameCubeMultiBoot_HandleSerialInterrupt: @ 82DEEE2 ldrh r1, [r3, OFFSET_REG_JOYCNT - 0x120] strh r1, [r3, OFFSET_REG_JOYCNT - 0x120] - movs r2, #0 + movs r2, 0 strb r2, [r0] - ldr r2, [r0, #GCMB_STRUCT_SERIAL_INTR_HANDLER] - cmp r2, #0 + ldr r2, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER] + cmp r2, 0 beq GameCubeMultiBoot_HandleSerialInterruptDone lsrs r1, 1 @ was a device reset command received? @@ -297,7 +365,7 @@ GcMbIntrHandler_Stop: strh r2, [r3, OFFSET_REG_JOYSTAT - 0x120] GameCubeMultiBoot_SetInterruptHandler: - str r2, [r0, #GCMB_STRUCT_SERIAL_INTR_HANDLER] + str r2, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER] GameCubeMultiBoot_ReadVCount: ldr r3, pool_RegDispstat @@ -308,19 +376,25 @@ GameCubeMultiBoot_HandleSerialInterruptDone: bx lr GameCubeMultiBoot_BeginHandshake: + @ Throw away anything that got sent ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] + @ Send the game code, the other side of the link must send back the same game code ldr r1, pool_RubyUSAGameCode str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120] movs r1, 0x10 strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120] - ldrb r1, [r0, 0x3] - strb r1, [r0, 0x9] - ldrb r1, [r0, 0x2] + @ Use the saved VCount value to provide 8 bits of entropy for KeyB + ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT] + strb r1, [r0, GCMB_STRUCT_KEYB + 1] + @ If a multiboot image has been transferred at least enough such that the Nintendo logo check has passed, stop everything. + ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] cmp r1, 0 bne GcMbIntrHandler_Stop + @ Set the image destination pointers. ldr r1, pool_MultiBootLoadAddr - str r1, [r0, #GCMB_STRUCT_BASE_DEST_PTR] - str r1, [r0, #GCMB_STRUCT_CUR_DEST_PTR] + str r1, [r0, GCMB_STRUCT_BASE_DEST_PTR] + str r1, [r0, GCMB_STRUCT_CUR_DEST_PTR] + @ Set the new interrupt handler. adr r2, GcMbIntrHandler_CheckGameCodeSent b GameCubeMultiBoot_SetInterruptHandler @@ -347,149 +421,166 @@ GameCubeMultiBoot_CheckHandshakeResponse: ldr r2, pool_RubyUSAGameCode cmp r1, r2 bne GcMbIntrHandler_Stop @ stop if the GameCube didn't reply with the same game code - ldrb r1, [r0, 0x3] - strb r1, [r0, 0xB] - adr r2, GcMbIntrHandler_82DEF44 + @ Use the saved VCount value to provide another 8 bits of entropy for KeyB. + ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT] + strb r1, [r0, GCMB_STRUCT_KEYB + 3] + adr r2, GcMbIntrHandler_ReceiveKeyA b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEF44: @ 82DEF44 +GcMbIntrHandler_ReceiveKeyA: @ 82DEF44 lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] + @ make sure top 8 bits of the received value is the KeyA magic number, stop if KeyA is invalid lsrs r2, r1, 24 - cmp r2, 0xDD + cmp r2, GCMB_MAGIC_KEYA bne GcMbIntrHandler_Stop - str r1, [r0, 0x4] - ldrb r1, [r0, 0x1] - strb r1, [r0, 0xA] + @ save received KeyA + str r1, [r0, GCMB_STRUCT_KEYA] + @ use the second GameCubeMultiBoot_Main() counter as another 8 bits of entropy for KeyB + ldrb r1, [r0, GCMB_STRUCT_COUNTER2] + strb r1, [r0, GCMB_STRUCT_KEYB + 2] movs r2, 0 movs r3, 0 - ldr r1, [r0, 0x8] + ldr r1, [r0, GCMB_STRUCT_KEYB] lsrs r1, 8 -_082DEF5E: + @ make sure KeyB is valid (other side of the link is supposed to check KeyB too), if it's not then change the byte that was just set so it is +GameCubeMultiBoot_KeyBCheckLoop: lsrs r1, 1 adcs r2, r3 cmp r1, 0 - bne _082DEF5E + bne GameCubeMultiBoot_KeyBCheckLoop cmp r2, 0xE - bgt _082DEF70 + bgt GameCubeMultiBoot_KeyBSaveNewByte cmp r2, 0x7 - bge _082DEF72 + bge GameCubeMultiBoot_KeyBCheckEnd movs r1, 0xFF -_082DEF70: - strb r1, [r0, 0xA] -_082DEF72: - ldr r1, [r0, 0x8] - adds r1, 0xEE +GameCubeMultiBoot_KeyBSaveNewByte: + strb r1, [r0, GCMB_STRUCT_KEYB + 2] +GameCubeMultiBoot_KeyBCheckEnd: + @ add in the KeyB magic number and send off KeyB + ldr r1, [r0, GCMB_STRUCT_KEYB] + adds r1, GCMB_MAGIC_KEYB ldr r3, pool_SerialRegs str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120] movs r1, 0x30 strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120] - adr r2, GcMbIntrHandler_82DEF84 + @ set new interrupt handler + adr r2, GcMbIntrHandler_CheckKeyBSent b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEF84: @ 82DEF84 +GcMbIntrHandler_CheckKeyBSent: @ 82DEF84 lsls r1, 31 bcc GcMbIntrHandler_Stop @ stop if send failed - bmi _082DEF94 @ branch if receive is complete - adr r2, GcMbIntrHandler_82DEF90 + bmi GameCubeMultiBoot_CheckImageSizeResponse @ branch if receive is complete + adr r2, GcMbIntrHandler_CheckImageSizeResponse b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEF90: @ 82DEF90 +GcMbIntrHandler_CheckImageSizeResponse: @ 82DEF90 lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not -_082DEF94: +GameCubeMultiBoot_CheckImageSizeResponse: ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] - ldr r2, _082DF034 + ldr r2, GameCubeMultiBoot_MaximumImageSizeUInt32s cmp r1, r2 bhs GcMbIntrHandler_Stop adds r1, 0x1 adds r1, r1 - strh r1, [r0, 0x12] - ldrb r1, [r0, 0x2] + strh r1, [r0, GCMB_STRUCT_IMAGE_SIZE] + ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] cmp r1, 0 -_082DEFA6: +GcMbIntrHandler_StopIfNotEqual: bne GcMbIntrHandler_Stop ldr r1, pool_MultiBootLoadAddr - str r1, [r0, #GCMB_STRUCT_BASE_DEST_PTR] - str r1, [r0, #GCMB_STRUCT_CUR_DEST_PTR] - adr r2, GcMbIntrHandler_82DEFB4 + str r1, [r0, GCMB_STRUCT_BASE_DEST_PTR] + str r1, [r0, GCMB_STRUCT_CUR_DEST_PTR] + adr r2, GcMbIntrHandler_CheckImageResponse b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEFB4: @ 82DEFB4 +GcMbIntrHandler_CheckImageResponse: @ 82DEFB4 lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not - ldr r2, [r0, #GCMB_STRUCT_CUR_DEST_PTR] + ldr r2, [r0, GCMB_STRUCT_CUR_DEST_PTR] movs r1, 0x4 ands r1, r2 adds r1, 0x8 lsls r1, 2 strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120] + @ get the recieved uint32 ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] + @ put it in the current destination pointer and advance that pointer stm r2!, {r1} - str r2, [r0, #GCMB_STRUCT_CUR_DEST_PTR] - ldrh r1, [r0, 0x12] + @ save off the advanced pointer + str r2, [r0, GCMB_STRUCT_CUR_DEST_PTR] + @ decrease the image size (in uint32s) + ldrh r1, [r0, GCMB_STRUCT_IMAGE_SIZE] subs r1, 0x1 - strh r1, [r0, 0x12] + strh r1, [r0, GCMB_STRUCT_IMAGE_SIZE] + @ branch away if the transfer is not yet complete bne GameCubeMultiBoot_ReadVCount -_082DEFD2: - ldrb r1, [r0, 0x1] +GcMbIntrHandler_SendCounter2: + @ send counter2 with magic number + ldrb r1, [r0, GCMB_STRUCT_COUNTER2] lsls r1, 8 - adds r1, 0xCC + adds r1, GCMB_MAGIC_COUNTER2 str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120] - adr r2, _082DEFE0 + adr r2, GcMbIntrHandler_CheckCounter2Sent b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -_082DEFE0: +GcMbIntrHandler_CheckCounter2Sent: lsls r1, 31 -_082DEFE2: - bcc GcMbIntrHandler_Stop - ldr r1, [r0, 0x1C] +GcMbIntrHandler_StopIfSendFailed: + bcc GcMbIntrHandler_Stop @ stop if send failed + @ if KeyC derivation value has not yet been generated, send Counter2 again, otherwise, send KeyC derivation + ldr r1, [r0, GCMB_STRUCT_KEYC_DERIVATION] cmp r1, 0 - beq _082DEFD2 + beq GcMbIntrHandler_SendCounter2 str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120] - adr r2, GcMbIntrHandler_82DEFF0 + adr r2, GcMbIntrHandler_CheckKeyCDerivationSent b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEFF0: @ 82DEFF0 +GcMbIntrHandler_CheckKeyCDerivationSent: @ 82DEFF0 lsls r1, 31 - bcc _082DEFE2 @ branch if send failed - bmi _082DF000 @ branch if receive is complete - adr r2, GcMbIntrHandler_82DEFFC + bcc GcMbIntrHandler_StopIfSendFailed @ branch if send failed + bmi GameCubeMultiBoot_CheckBootKeyResponse @ branch if receive is complete + adr r2, GcMbIntrHandler_CheckBootKeyResponse b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DEFFC: @ 82DEFFC +GcMbIntrHandler_CheckBootKeyResponse: @ 82DEFFC lsrs r1, 1 @ is receive complete? - bcc _082DEFE2 @ branch if not + bcc GcMbIntrHandler_StopIfSendFailed @ branch if not -_082DF000: +GameCubeMultiBoot_CheckBootKeyResponse: ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] + @ make sure received boot key contains expected magic number, stop if not lsrs r2, r1, 24 - cmp r2, 0xBB - bne _082DEFA6 - strh r1, [r0, 0x10] - adr r2, GcMbIntrHandler_82DF010 + cmp r2, GCMB_MAGIC_BOOTKEY + bne GcMbIntrHandler_StopIfNotEqual + @ save received bootkey to be checked in GameCubeMultiBoot_Main() + strh r1, [r0, GCMB_STRUCT_BOOT_KEY] + @ stop if anything more gets sent + adr r2, GcMbIntrHandler_StopUnconditionally b GameCubeMultiBoot_SetInterruptHandler .align 2, 0 -GcMbIntrHandler_82DF010: @ 82DF010 +GcMbIntrHandler_StopUnconditionally: @ 82DF010 b GcMbIntrHandler_Stop thumb_func_end GameCubeMultiBoot_HandleSerialInterrupt @@ -500,11 +591,11 @@ GameCubeMultiBoot_Quit: @ 82DF012 ldr r3, pool_InterruptRegs @ Save IME register. - ldrh r2, [r3, #OFFSET_REG_IME - 0x200] + ldrh r2, [r3, OFFSET_REG_IME - 0x200] @ Disable interrupts. movs r1, 0 - strh r1, [r3, #OFFSET_REG_IME - 0x200] + strh r1, [r3, OFFSET_REG_IME - 0x200] ldr r3, pool_SerialRegs @@ -528,14 +619,14 @@ GameCubeMultiBoot_Quit: @ 82DF012 strh r1, [r3, OFFSET_REG_IE - 0x200] @ Restore IME register. - strh r2, [r3, #OFFSET_REG_IME - 0x200] + strh r2, [r3, OFFSET_REG_IME - 0x200] bx lr thumb_func_end GameCubeMultiBoot_Quit .align 2, 0 -_082DF034: .4byte 0x4000 +GameCubeMultiBoot_MaximumImageSizeUInt32s: .4byte 0x4000 pool_InterruptRegs: .4byte REG_BASE + 0x200 From 87a094edcb4c043224f57944f1de211feae97c88 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 20:51:41 +0800 Subject: [PATCH 372/762] Use constants for movement speeds --- src/event_object_movement.c | 84 ++++++++++++++++++------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 1bb4991abb51..ea57e124d465 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -5184,7 +5184,7 @@ static void InitMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *s static void StartRunningAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - InitNpcForMovement(objectEvent, sprite, direction, 1); + InitNpcForMovement(objectEvent, sprite, direction, MOVE_SPEED_FAST_1); SetStepAnimHandleAlternation(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection)); } @@ -5595,7 +5595,7 @@ static bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_Jump2Down_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_Jump2Down_Step1(objectEvent, sprite); } @@ -5612,7 +5612,7 @@ bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Up_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_Jump2Up_Step1(objectEvent, sprite); } @@ -5629,7 +5629,7 @@ bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_Jump2Left_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_Jump2Left_Step1(objectEvent, sprite); } @@ -5646,7 +5646,7 @@ bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Right_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_Jump2Right_Step1(objectEvent, sprite); } @@ -6178,7 +6178,7 @@ bool8 MovementAction_WaitSpriteAnim(struct ObjectEvent *objectEvent, struct Spri static void InitJumpSpecial(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - InitJump(objectEvent, sprite, direction, 1, JUMP_TYPE_HIGH); + InitJump(objectEvent, sprite, direction, MOVE_SPEED_FAST_1, JUMP_TYPE_HIGH); StartSpriteAnim(sprite, GetJumpSpecialDirectionAnimNum(direction)); } @@ -6290,7 +6290,7 @@ bool8 MovementAction_UnlockFacingDirection_Step0(struct ObjectEvent *objectEvent bool8 MovementAction_JumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); return MovementAction_JumpDown_Step1(objectEvent, sprite); } @@ -6307,7 +6307,7 @@ bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); return MovementAction_JumpUp_Step1(objectEvent, sprite); } @@ -6324,7 +6324,7 @@ bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite bool8 MovementAction_JumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); return MovementAction_JumpLeft_Step1(objectEvent, sprite); } @@ -6341,7 +6341,7 @@ bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); return MovementAction_JumpRight_Step1(objectEvent, sprite); } @@ -6358,7 +6358,7 @@ bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_JumpInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceDown_Step1(objectEvent, sprite); } @@ -6375,7 +6375,7 @@ bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceUp_Step1(objectEvent, sprite); } @@ -6392,7 +6392,7 @@ bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_JumpInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceLeft_Step1(objectEvent, sprite); } @@ -6409,7 +6409,7 @@ bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceRight_Step1(objectEvent, sprite); } @@ -6426,7 +6426,7 @@ bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_JumpInPlaceDownUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceDownUp_Step1(objectEvent, sprite); } @@ -6443,7 +6443,7 @@ bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceUpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceUpDown_Step1(objectEvent, sprite); } @@ -6460,7 +6460,7 @@ bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceLeftRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceLeftRight_Step1(objectEvent, sprite); } @@ -6477,7 +6477,7 @@ bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_JumpInPlaceRightLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceRightLeft_Step1(objectEvent, sprite); } @@ -6921,7 +6921,7 @@ static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementAction_AcroWheelieHopFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceDown_Step1(objectEvent, sprite); } @@ -6938,7 +6938,7 @@ bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceUp_Step1(objectEvent, sprite); } @@ -6955,7 +6955,7 @@ bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieHopFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceLeft_Step1(objectEvent, sprite); } @@ -6972,7 +6972,7 @@ bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceRight_Step1(objectEvent, sprite); } @@ -6989,7 +6989,7 @@ bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_AcroWheelieHopDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopDown_Step1(objectEvent, sprite); } @@ -7006,7 +7006,7 @@ bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopUp_Step1(objectEvent, sprite); } @@ -7023,7 +7023,7 @@ bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_AcroWheelieHopLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopLeft_Step1(objectEvent, sprite); } @@ -7040,7 +7040,7 @@ bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopRight_Step1(objectEvent, sprite); } @@ -7057,7 +7057,7 @@ bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpDown_Step1(objectEvent, sprite); } @@ -7074,7 +7074,7 @@ bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpUp_Step1(objectEvent, sprite); } @@ -7091,7 +7091,7 @@ bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieJumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpLeft_Step1(objectEvent, sprite); } @@ -7108,7 +7108,7 @@ bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpRight_Step1(objectEvent, sprite); } @@ -7156,7 +7156,7 @@ static void InitAcroPopWheelie(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_AcroPopWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); return MovementAction_AcroPopWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7172,7 +7172,7 @@ bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); return MovementAction_AcroPopWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7188,7 +7188,7 @@ bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroPopWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); return MovementAction_AcroPopWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7204,7 +7204,7 @@ bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, 1); + InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); return MovementAction_AcroPopWheelieMoveRight_Step1(objectEvent, sprite); } @@ -7226,7 +7226,7 @@ static void InitAcroWheelieMove(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementAction_AcroWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); return MovementAction_AcroWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7242,7 +7242,7 @@ bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); return MovementAction_AcroWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7258,7 +7258,7 @@ bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); return MovementAction_AcroWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7274,7 +7274,7 @@ bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, 1); + InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); return MovementAction_AcroWheelieMoveRight_Step1(objectEvent, sprite); } @@ -7297,7 +7297,7 @@ static void InitAcroEndWheelie(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_AcroEndWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_SOUTH, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); return MovementAction_AcroEndWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7313,7 +7313,7 @@ bool8 MovementAction_AcroEndWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_NORTH, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); return MovementAction_AcroEndWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7329,7 +7329,7 @@ bool8 MovementAction_AcroEndWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroEndWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_WEST, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); return MovementAction_AcroEndWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7345,7 +7345,7 @@ bool8 MovementAction_AcroEndWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_EAST, 1); + InitAcroEndWheelie(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); return MovementAction_AcroEndWheelieMoveRight_Step1(objectEvent, sprite); } From 680f5f44583ae69b0149ba01a5f74a73492ff6e7 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 23:00:37 +0800 Subject: [PATCH 373/762] Revert movement speed constants for jump movements --- src/event_object_movement.c | 82 ++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index ea57e124d465..6c84f0eba254 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -5595,7 +5595,7 @@ static bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_Jump2Down_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Down_Step1(objectEvent, sprite); } @@ -5612,7 +5612,7 @@ bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Up_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Up_Step1(objectEvent, sprite); } @@ -5629,7 +5629,7 @@ bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_Jump2Left_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Left_Step1(objectEvent, sprite); } @@ -5646,7 +5646,7 @@ bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Right_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); return MovementAction_Jump2Right_Step1(objectEvent, sprite); } @@ -6178,7 +6178,7 @@ bool8 MovementAction_WaitSpriteAnim(struct ObjectEvent *objectEvent, struct Spri static void InitJumpSpecial(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - InitJump(objectEvent, sprite, direction, MOVE_SPEED_FAST_1, JUMP_TYPE_HIGH); + InitJump(objectEvent, sprite, direction, 1, JUMP_TYPE_HIGH); StartSpriteAnim(sprite, GetJumpSpecialDirectionAnimNum(direction)); } @@ -6290,7 +6290,7 @@ bool8 MovementAction_UnlockFacingDirection_Step0(struct ObjectEvent *objectEvent bool8 MovementAction_JumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpDown_Step1(objectEvent, sprite); } @@ -6307,7 +6307,7 @@ bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpUp_Step1(objectEvent, sprite); } @@ -6324,7 +6324,7 @@ bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite bool8 MovementAction_JumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpLeft_Step1(objectEvent, sprite); } @@ -6341,7 +6341,7 @@ bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_NORMAL); return MovementAction_JumpRight_Step1(objectEvent, sprite); } @@ -6358,7 +6358,7 @@ bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_JumpInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceDown_Step1(objectEvent, sprite); } @@ -6375,7 +6375,7 @@ bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceUp_Step1(objectEvent, sprite); } @@ -6392,7 +6392,7 @@ bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_JumpInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceLeft_Step1(objectEvent, sprite); } @@ -6409,7 +6409,7 @@ bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceRight_Step1(objectEvent, sprite); } @@ -6426,7 +6426,7 @@ bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_JumpInPlaceDownUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceDownUp_Step1(objectEvent, sprite); } @@ -6443,7 +6443,7 @@ bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceUpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceUpDown_Step1(objectEvent, sprite); } @@ -6460,7 +6460,7 @@ bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceLeftRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceLeftRight_Step1(objectEvent, sprite); } @@ -6477,7 +6477,7 @@ bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_JumpInPlaceRightLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceRightLeft_Step1(objectEvent, sprite); } @@ -6921,7 +6921,7 @@ static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementAction_AcroWheelieHopFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceDown_Step1(objectEvent, sprite); } @@ -6938,7 +6938,7 @@ bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceUp_Step1(objectEvent, sprite); } @@ -6955,7 +6955,7 @@ bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieHopFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceLeft_Step1(objectEvent, sprite); } @@ -6972,7 +6972,7 @@ bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceRight_Step1(objectEvent, sprite); } @@ -6989,7 +6989,7 @@ bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_AcroWheelieHopDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopDown_Step1(objectEvent, sprite); } @@ -7006,7 +7006,7 @@ bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopUp_Step1(objectEvent, sprite); } @@ -7023,7 +7023,7 @@ bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_AcroWheelieHopLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopLeft_Step1(objectEvent, sprite); } @@ -7040,7 +7040,7 @@ bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopRight_Step1(objectEvent, sprite); } @@ -7057,7 +7057,7 @@ bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpDown_Step1(objectEvent, sprite); } @@ -7074,7 +7074,7 @@ bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpUp_Step1(objectEvent, sprite); } @@ -7091,7 +7091,7 @@ bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieJumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpLeft_Step1(objectEvent, sprite); } @@ -7108,7 +7108,7 @@ bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpRight_Step1(objectEvent, sprite); } @@ -7156,7 +7156,7 @@ static void InitAcroPopWheelie(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_AcroPopWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); + InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroPopWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7172,7 +7172,7 @@ bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); + InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroPopWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7188,7 +7188,7 @@ bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroPopWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); + InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroPopWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7204,7 +7204,7 @@ bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroPopWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); + InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroPopWheelieMoveRight_Step1(objectEvent, sprite); } @@ -7226,7 +7226,7 @@ static void InitAcroWheelieMove(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementAction_AcroWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); + InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7242,7 +7242,7 @@ bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); + InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7258,7 +7258,7 @@ bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); + InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7274,7 +7274,7 @@ bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); + InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroWheelieMoveRight_Step1(objectEvent, sprite); } @@ -7297,7 +7297,7 @@ static void InitAcroEndWheelie(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_AcroEndWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1); + InitAcroEndWheelie(objectEvent, sprite, DIR_SOUTH, 1); return MovementAction_AcroEndWheelieMoveDown_Step1(objectEvent, sprite); } @@ -7313,7 +7313,7 @@ bool8 MovementAction_AcroEndWheelieMoveDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1); + InitAcroEndWheelie(objectEvent, sprite, DIR_NORTH, 1); return MovementAction_AcroEndWheelieMoveUp_Step1(objectEvent, sprite); } @@ -7329,7 +7329,7 @@ bool8 MovementAction_AcroEndWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroEndWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1); + InitAcroEndWheelie(objectEvent, sprite, DIR_WEST, 1); return MovementAction_AcroEndWheelieMoveLeft_Step1(objectEvent, sprite); } @@ -7345,7 +7345,7 @@ bool8 MovementAction_AcroEndWheelieMoveLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroEndWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroEndWheelie(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1); + InitAcroEndWheelie(objectEvent, sprite, DIR_EAST, 1); return MovementAction_AcroEndWheelieMoveRight_Step1(objectEvent, sprite); } From fca863244b9097c79dba14154eaeb3719c91bfbe Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 3 Nov 2021 23:07:05 +0800 Subject: [PATCH 374/762] Index sStepTimes and sNpcStepFuncTables --- src/event_object_movement.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 6c84f0eba254..593200893711 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -8349,15 +8349,19 @@ static const SpriteStepFunc sStep8Funcs[] = { }; static const SpriteStepFunc *const sNpcStepFuncTables[] = { - sStep1Funcs, - sStep2Funcs, - sStep3Funcs, - sStep4Funcs, - sStep8Funcs, + [MOVE_SPEED_NORMAL] = sStep1Funcs, + [MOVE_SPEED_FAST_1] = sStep2Funcs, + [MOVE_SPEED_FAST_2] = sStep3Funcs, + [MOVE_SPEED_FASTER] = sStep4Funcs, + [MOVE_SPEED_FASTEST] = sStep8Funcs, }; static const s16 sStepTimes[] = { - 16, 8, 6, 4, 2 + [MOVE_SPEED_NORMAL] = 16, + [MOVE_SPEED_FAST_1] = 8, + [MOVE_SPEED_FAST_2] = 6, + [MOVE_SPEED_FASTER] = 4, + [MOVE_SPEED_FASTEST] = 2, }; static bool8 NpcTakeStep(struct Sprite *sprite) From 9a0618afc3f7ccf8a5d19ee5815fd388003d4a95 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 15:29:18 -0400 Subject: [PATCH 375/762] Add COPYWIN constants --- gflib/text.c | 12 ++--- gflib/window.c | 18 +++---- gflib/window.h | 19 +++---- include/menu.h | 2 +- src/apprentice.c | 2 +- src/battle_dome.c | 22 ++++---- src/battle_factory_screen.c | 60 +++++++++++----------- src/battle_message.c | 2 +- src/battle_records.c | 4 +- src/battle_script_commands.c | 12 ++--- src/berry_blender.c | 16 +++--- src/berry_crush.c | 12 ++--- src/berry_fix_program.c | 8 +-- src/braille.c | 2 +- src/cable_club.c | 6 +-- src/contest.c | 4 +- src/contest_painting.c | 2 +- src/credits.c | 6 +-- src/daycare.c | 2 +- src/diploma.c | 2 +- src/dodrio_berry_picking.c | 30 +++++------ src/easy_chat.c | 12 ++--- src/egg_hatch.c | 2 +- src/field_region_map.c | 2 +- src/field_specials.c | 20 +++----- src/frontier_pass.c | 8 +-- src/frontier_util.c | 20 ++++---- src/hall_of_fame.c | 16 +++--- src/item_menu.c | 8 +-- src/link.c | 8 +-- src/list_menu.c | 14 ++--- src/mail.c | 4 +- src/main_menu.c | 40 +++++++-------- src/map_name_popup.c | 2 +- src/match_call.c | 4 +- src/mauville_old_man.c | 4 +- src/menu.c | 55 ++++++++++---------- src/menu_specialized.c | 6 +-- src/money.c | 4 +- src/move_relearner.c | 2 +- src/mystery_event_menu.c | 4 +- src/mystery_gift_menu.c | 20 ++++---- src/mystery_gift_view.c | 6 +-- src/naming_screen.c | 6 +-- src/option_menu.c | 10 ++-- src/party_menu.c | 14 ++--- src/player_pc.c | 2 +- src/pokeblock.c | 2 +- src/pokedex.c | 50 +++++++++--------- src/pokedex_cry_screen.c | 2 +- src/pokemon_jump.c | 24 ++++----- src/pokemon_storage_system.c | 12 ++--- src/pokemon_summary_screen.c | 2 +- src/pokenav_conditions_2.c | 12 ++--- src/pokenav_conditions_3.c | 4 +- src/pokenav_main_menu.c | 2 +- src/pokenav_match_call_2.c | 12 ++--- src/pokenav_match_call_ui.c | 22 ++++---- src/pokenav_menu_handler_2.c | 2 +- src/pokenav_region_map.c | 8 +-- src/pokenav_ribbons_1.c | 4 +- src/pokenav_ribbons_2.c | 8 +-- src/record_mixing.c | 2 +- src/region_map.c | 2 +- src/reset_rtc_screen.c | 4 +- src/roulette.c | 28 +++++----- src/save_failed_screen.c | 4 +- src/scrcmd.c | 2 +- src/script_menu.c | 8 +-- src/shop.c | 2 +- src/slot_machine.c | 12 ++--- src/start_menu.c | 12 ++--- src/trade.c | 22 ++++---- src/trainer_card.c | 4 +- src/trainer_hill.c | 2 +- src/union_room.c | 20 ++++---- src/union_room_battle.c | 2 +- src/union_room_chat.c | 46 ++++++++--------- src/use_pokeblock.c | 18 +++---- src/wireless_communication_status_screen.c | 6 +-- 80 files changed, 444 insertions(+), 454 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index 54155affedf2..9d1a5464f6d1 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -297,7 +297,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi } if (speed != TEXT_SPEED_FF) - CopyWindowToVram(gTempTextPrinter.printerTemplate.windowId, 2); + CopyWindowToVram(gTempTextPrinter.printerTemplate.windowId, COPYWIN_GFX); gTextPrinters[printerTemplate->windowId].active = 0; } gDisableTextPrinters = 0; @@ -318,7 +318,7 @@ void RunTextPrinters(void) switch (temp) { case 0: - CopyWindowToVram(gTextPrinters[i].printerTemplate.windowId, 2); + CopyWindowToVram(gTextPrinters[i].printerTemplate.windowId, COPYWIN_GFX); case 3: if (gTextPrinters[i].callback != 0) gTextPrinters[i].callback(&gTextPrinters[i].printerTemplate, temp); @@ -815,7 +815,7 @@ void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentY, 8, 16); - CopyWindowToVram(textPrinter->printerTemplate.windowId, 2); + CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); subStruct->downArrowDelay = 8; subStruct->downArrowYPosIdx++; @@ -832,7 +832,7 @@ void TextPrinterClearDownArrow(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentY, 8, 16); - CopyWindowToVram(textPrinter->printerTemplate.windowId, 2); + CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); } bool8 TextPrinterWaitAutoMode(struct TextPrinter *textPrinter) @@ -922,7 +922,7 @@ void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *c y - 2, 0x8, 0x10); - CopyWindowToVram(windowId, 0x2); + CopyWindowToVram(windowId, COPYWIN_GFX); *counter = 8; ++*yCoordIndex; } @@ -1199,7 +1199,7 @@ u16 RenderText(struct TextPrinter *textPrinter) ScrollWindow(textPrinter->printerTemplate.windowId, 0, speed, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); textPrinter->scrollDistance -= speed; } - CopyWindowToVram(textPrinter->printerTemplate.windowId, 2); + CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); } else { diff --git a/gflib/window.c b/gflib/window.c index c7b8c8917b10..8ca1a4b6288c 100644 --- a/gflib/window.c +++ b/gflib/window.c @@ -275,13 +275,13 @@ void CopyWindowToVram(u8 windowId, u8 mode) switch (mode) { - case 1: + case COPYWIN_MAP: CopyBgTilemapBufferToVram(windowLocal.window.bg); break; - case 2: + case COPYWIN_GFX: LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock); break; - case 3: + case COPYWIN_FULL: LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock); CopyBgTilemapBufferToVram(windowLocal.window.bg); break; @@ -307,13 +307,13 @@ void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h) switch (mode) { - case 1: + case COPYWIN_MAP: CopyBgTilemapBufferToVram(windowLocal.window.bg); break; - case 2: + case COPYWIN_GFX: LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos); break; - case 3: + case COPYWIN_FULL: LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos); CopyBgTilemapBufferToVram(windowLocal.window.bg); break; @@ -693,13 +693,13 @@ void CopyWindowToVram8Bit(u8 windowId, u8 mode) switch (mode) { - case 1: + case COPYWIN_MAP: CopyBgTilemapBufferToVram(sWindowPtr->window.bg); break; - case 2: + case COPYWIN_GFX: LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock); break; - case 3: + case COPYWIN_FULL: LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock); CopyBgTilemapBufferToVram(sWindowPtr->window.bg); break; diff --git a/gflib/window.h b/gflib/window.h index 3eac75a280c8..6cb98c8456af 100644 --- a/gflib/window.h +++ b/gflib/window.h @@ -3,8 +3,7 @@ #define PIXEL_FILL(num) ((num) | ((num) << 4)) -enum -{ +enum { WINDOW_BG, WINDOW_TILEMAP_LEFT, WINDOW_TILEMAP_TOP, @@ -15,6 +14,14 @@ enum WINDOW_TILE_DATA }; +// Mode for CopyWindowToVram, CopyWindowRectToVram and CopyWindowToVram8Bit +enum { + COPYWIN_NONE, + COPYWIN_MAP, + COPYWIN_GFX, + COPYWIN_FULL, +}; + struct WindowTemplate { u8 bg; @@ -28,13 +35,7 @@ struct WindowTemplate #define DUMMY_WIN_TEMPLATE \ { \ - 0xFF, \ - 0, \ - 0, \ - 0, \ - 0, \ - 0, \ - 0, \ + .bg = 0xFF, \ } #define WINDOW_NONE 0xFF diff --git a/include/menu.h b/include/menu.h index eb391e565476..cc65a51dcaaf 100644 --- a/include/menu.h +++ b/include/menu.h @@ -123,7 +123,7 @@ void sub_8198314(void); void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram); void ResetBgPositions(void); void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed); -void sub_8198C78(void); +void EraseYesNoWindow(void); void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs); void Menu_LoadStdPal(void); diff --git a/src/apprentice.c b/src/apprentice.c index 032b76715c0d..8421d4d8b25f 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -691,7 +691,7 @@ static u8 CreateAndShowWindow(u8 left, u8 top, u8 width, u8 height) windowId = AddWindow(&winTemplate); PutWindowTilemap(windowId); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); return windowId; } diff --git a/src/battle_dome.c b/src/battle_dome.c index 429cc58d7e9e..0075e84d6ac9 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -3428,7 +3428,7 @@ static void Task_HandleInfoCardInput(u8 taskId) for (i = windowId; i < windowId + 9; i++) { - CopyWindowToVram(i, 2); + CopyWindowToVram(i, COPYWIN_GFX); FillWindowPixelBuffer(i, PIXEL_FILL(0)); } gTasks[taskId].tState = STATE_REACT_INPUT; @@ -4358,7 +4358,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) textPrinter.currentChar = gStringVar1; textPrinter.windowId = windowId; PutWindowTilemap(windowId); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); AddTextPrinter(&textPrinter, 0, NULL); textPrinter.letterSpacing = 0; @@ -4380,12 +4380,12 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) textPrinter.currentX = 0; PutWindowTilemap(1 + i + windowId); - CopyWindowToVram(1 + i + windowId, 3); + CopyWindowToVram(1 + i + windowId, COPYWIN_FULL); AddTextPrinter(&textPrinter, 0, NULL); } PutWindowTilemap(windowId + 4); - CopyWindowToVram(windowId + 4, 3); + CopyWindowToVram(windowId + 4, COPYWIN_FULL); // Print text about trainers potential in the tourney if (trainerId == TRAINER_FRONTIER_BRAIN) @@ -4861,7 +4861,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) textPrinter.windowId = windowId + 8; textPrinter.fontId = FONT_NORMAL; PutWindowTilemap(windowId + 8); - CopyWindowToVram(windowId + 8, 3); + CopyWindowToVram(windowId + 8, COPYWIN_FULL); textPrinter.currentX = 0; textPrinter.currentY = textPrinter.y = 0; AddTextPrinter(&textPrinter, 0, NULL); @@ -4881,7 +4881,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) textPrinter.currentX = GetStringCenterAlignXOffsetWithLetterSpacing(textPrinter.fontId, textPrinter.currentChar, 0x40, textPrinter.letterSpacing); textPrinter.currentY = textPrinter.y = 2; PutWindowTilemap(windowId + 6); - CopyWindowToVram(windowId + 6, 3); + CopyWindowToVram(windowId + 6, COPYWIN_FULL); AddTextPrinter(&textPrinter, 0, NULL); // Print right trainer's name. @@ -4897,7 +4897,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) textPrinter.currentX = GetStringCenterAlignXOffsetWithLetterSpacing(textPrinter.fontId, textPrinter.currentChar, 0x40, textPrinter.letterSpacing); textPrinter.currentY = textPrinter.y = 2; PutWindowTilemap(windowId + 7); - CopyWindowToVram(windowId + 7, 3); + CopyWindowToVram(windowId + 7, COPYWIN_FULL); AddTextPrinter(&textPrinter, 0, NULL); // Print match number. @@ -4907,7 +4907,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) textPrinter.currentX = GetStringCenterAlignXOffsetWithLetterSpacing(textPrinter.fontId, textPrinter.currentChar, 0xA0, textPrinter.letterSpacing); textPrinter.currentY = textPrinter.y = 2; PutWindowTilemap(windowId + 5); - CopyWindowToVram(windowId + 5, 3); + CopyWindowToVram(windowId + 5, COPYWIN_FULL); AddTextPrinter(&textPrinter, 0, NULL); } @@ -5442,9 +5442,9 @@ static void Task_ShowTourneyTree(u8 taskId) PutWindowTilemap(0); PutWindowTilemap(1); PutWindowTilemap(2); - CopyWindowToVram(0, 3); - CopyWindowToVram(1, 3); - CopyWindowToVram(2, 3); + CopyWindowToVram(0, COPYWIN_FULL); + CopyWindowToVram(1, COPYWIN_FULL); + CopyWindowToVram(2, COPYWIN_FULL); SetHBlankCallback(HblankCb_TourneyTree); SetVBlankCallback(VblankCb_TourneyTree); if (r4 == 2) diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index cd0a44e38a3b..98caada1d9e4 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1854,7 +1854,7 @@ static void Select_ErasePopupMenu(u8 windowId) gSprites[sFactorySelectScreen->menuCursor1SpriteId].invisible = TRUE; gSprites[sFactorySelectScreen->menuCursor2SpriteId].invisible = TRUE; FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); ClearWindowTilemap(windowId); } @@ -1862,7 +1862,7 @@ static void Select_PrintRentalPkmnString(void) { FillWindowPixelBuffer(SELECT_WIN_TITLE, PIXEL_FILL(0)); AddTextPrinterParameterized(SELECT_WIN_TITLE, FONT_NORMAL, gText_RentalPkmn2, 2, 1, 0, NULL); - CopyWindowToVram(SELECT_WIN_TITLE, 3); + CopyWindowToVram(SELECT_WIN_TITLE, COPYWIN_FULL); } static void Select_PrintMonSpecies(void) @@ -1876,7 +1876,7 @@ static void Select_PrintMonSpecies(void) StringCopy(gStringVar4, gSpeciesNames[species]); x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); AddTextPrinterParameterized3(SELECT_WIN_SPECIES, FONT_NORMAL, x, 1, sSpeciesNameTextColors, 0, gStringVar4); - CopyWindowToVram(SELECT_WIN_SPECIES, 2); + CopyWindowToVram(SELECT_WIN_SPECIES, COPYWIN_GFX); } static void Select_PrintSelectMonString(void) @@ -1894,14 +1894,14 @@ static void Select_PrintSelectMonString(void) str = gText_TheseThreePkmnOkay; AddTextPrinterParameterized(SELECT_WIN_INFO, FONT_NORMAL, str, 2, 5, 0, NULL); - CopyWindowToVram(SELECT_WIN_INFO, 2); + CopyWindowToVram(SELECT_WIN_INFO, COPYWIN_GFX); } static void Select_PrintCantSelectSameMon(void) { FillWindowPixelBuffer(SELECT_WIN_INFO, PIXEL_FILL(0)); AddTextPrinterParameterized(SELECT_WIN_INFO, FONT_NORMAL, gText_CantSelectSamePkmn, 2, 5, 0, NULL); - CopyWindowToVram(SELECT_WIN_INFO, 2); + CopyWindowToVram(SELECT_WIN_INFO, COPYWIN_GFX); } static void Select_PrintMenuOptions(void) @@ -1917,7 +1917,7 @@ static void Select_PrintMenuOptions(void) AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 17, sMenuOptionTextColors, 0, gText_Rent); AddTextPrinterParameterized3(SELECT_WIN_OPTIONS, FONT_NORMAL, 7, 33, sMenuOptionTextColors, 0, gText_Others2); - CopyWindowToVram(SELECT_WIN_OPTIONS, 3); + CopyWindowToVram(SELECT_WIN_OPTIONS, COPYWIN_FULL); } static void Select_PrintYesNoOptions(void) @@ -1926,7 +1926,7 @@ static void Select_PrintYesNoOptions(void) FillWindowPixelBuffer(SELECT_WIN_YES_NO, PIXEL_FILL(0)); AddTextPrinterParameterized3(SELECT_WIN_YES_NO, FONT_NORMAL, 7, 1, sMenuOptionTextColors, 0, gText_Yes2); AddTextPrinterParameterized3(SELECT_WIN_YES_NO, FONT_NORMAL, 7, 17, sMenuOptionTextColors, 0, gText_No2); - CopyWindowToVram(SELECT_WIN_YES_NO, 3); + CopyWindowToVram(SELECT_WIN_YES_NO, COPYWIN_FULL); } static u8 Select_RunMenuOptionFunc(void) @@ -1996,7 +1996,7 @@ static void Select_PrintMonCategory(void) CopyMonCategoryText(SpeciesToNationalPokedexNum(species), text); x = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x76); AddTextPrinterParameterized(SELECT_WIN_MON_CATEGORY, FONT_NORMAL, text, x, 1, 0, NULL); - CopyWindowToVram(SELECT_WIN_MON_CATEGORY, 2); + CopyWindowToVram(SELECT_WIN_MON_CATEGORY, COPYWIN_GFX); } } @@ -3012,7 +3012,7 @@ static void Swap_Task_ScreenInfoTransitionOut(u8 taskId) if (!gPaletteFade.active) { FillWindowPixelBuffer(SWAP_WIN_ACTION_FADE, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_ACTION_FADE, 2); + CopyWindowToVram(SWAP_WIN_ACTION_FADE, COPYWIN_GFX); if (sFactorySwapScreen->inEnemyScreen == TRUE) { // Start "Pkmn for Swap" button slide offscreen @@ -3150,7 +3150,7 @@ static void Swap_Task_ScreenInfoTransitionIn(u8 taskId) break; case 6: FillWindowPixelBuffer(SWAP_WIN_ACTION_FADE, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_ACTION_FADE, 2); + CopyWindowToVram(SWAP_WIN_ACTION_FADE, COPYWIN_GFX); gTasks[taskId].tState++; break; case 7: @@ -3724,7 +3724,7 @@ static void Swap_ErasePopupMenu(u8 windowId) gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = TRUE; gSprites[sFactorySwapScreen->menuCursor2SpriteId].invisible = TRUE; FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); ClearWindowTilemap(windowId); } @@ -3732,14 +3732,14 @@ static void Swap_EraseSpeciesWindow(void) { PutWindowTilemap(SWAP_WIN_SPECIES); FillWindowPixelBuffer(SWAP_WIN_SPECIES, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_SPECIES, 2); + CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_GFX); } static void Swap_EraseSpeciesAtFadeWindow(void) { PutWindowTilemap(SWAP_WIN_SPECIES_AT_FADE); FillWindowPixelBuffer(SWAP_WIN_SPECIES_AT_FADE, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, 2); + CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, COPYWIN_GFX); } static void Swap_EraseActionFadeWindow(void) @@ -3747,14 +3747,14 @@ static void Swap_EraseActionFadeWindow(void) Swap_EraseSpeciesWindow(); PutWindowTilemap(SWAP_WIN_ACTION_FADE); FillWindowPixelBuffer(SWAP_WIN_ACTION_FADE, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_ACTION_FADE, 2); + CopyWindowToVram(SWAP_WIN_ACTION_FADE, COPYWIN_GFX); } static void Swap_PrintPkmnSwap(void) { FillWindowPixelBuffer(SWAP_WIN_TITLE, PIXEL_FILL(1)); AddTextPrinterParameterized(SWAP_WIN_TITLE, FONT_NORMAL, gText_PkmnSwap, 2, 1, 0, NULL); - CopyWindowToVram(SWAP_WIN_TITLE, 3); + CopyWindowToVram(SWAP_WIN_TITLE, COPYWIN_FULL); } static void Swap_PrintMonSpecies(void) @@ -3765,7 +3765,7 @@ static void Swap_PrintMonSpecies(void) FillWindowPixelBuffer(SWAP_WIN_SPECIES, PIXEL_FILL(0)); if (sFactorySwapScreen->cursorPos >= FRONTIER_PARTY_SIZE) { - CopyWindowToVram(SWAP_WIN_SPECIES, 2); + CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_GFX); } else { @@ -3777,7 +3777,7 @@ static void Swap_PrintMonSpecies(void) StringCopy(gStringVar4, gSpeciesNames[species]); x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); - CopyWindowToVram(SWAP_WIN_SPECIES, 3); + CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_FULL); } } @@ -3785,7 +3785,7 @@ static void Swap_PrintOnInfoWindow(const u8 *str) { FillWindowPixelBuffer(SWAP_WIN_INFO, PIXEL_FILL(0)); AddTextPrinterParameterized(SWAP_WIN_INFO, FONT_NORMAL, str, 2, 5, 0, NULL); - CopyWindowToVram(SWAP_WIN_INFO, 2); + CopyWindowToVram(SWAP_WIN_INFO, COPYWIN_GFX); } static void Swap_PrintMenuOptions(void) @@ -3795,7 +3795,7 @@ static void Swap_PrintMenuOptions(void) AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 1, sSwapMenuOptionsTextColors, 0, gText_Summary2); AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 17, sSwapMenuOptionsTextColors, 0, gText_Swap); AddTextPrinterParameterized3(SWAP_WIN_OPTIONS, FONT_NORMAL, 15, 33, sSwapMenuOptionsTextColors, 0, gText_Rechoose); - CopyWindowToVram(SWAP_WIN_OPTIONS, 3); + CopyWindowToVram(SWAP_WIN_OPTIONS, COPYWIN_FULL); } static void Swap_PrintYesNoOptions(void) @@ -3804,7 +3804,7 @@ static void Swap_PrintYesNoOptions(void) FillWindowPixelBuffer(SWAP_WIN_YES_NO, PIXEL_FILL(0)); AddTextPrinterParameterized3(SWAP_WIN_YES_NO, FONT_NORMAL, 7, 1, sSwapMenuOptionsTextColors, 0, gText_Yes3); AddTextPrinterParameterized3(SWAP_WIN_YES_NO, FONT_NORMAL, 7, 17, sSwapMenuOptionsTextColors, 0, gText_No3); - CopyWindowToVram(SWAP_WIN_YES_NO, 3); + CopyWindowToVram(SWAP_WIN_YES_NO, COPYWIN_FULL); } static void Swap_PrintActionString(const u8 *str, u32 y, u32 windowId) @@ -3824,7 +3824,7 @@ static void Swap_PrintActionStrings(void) Swap_PrintActionString(gText_Cancel3, 24, SWAP_WIN_ACTION_FADE); break; } - CopyWindowToVram(SWAP_WIN_ACTION_FADE, 3); + CopyWindowToVram(SWAP_WIN_ACTION_FADE, COPYWIN_FULL); } static void Swap_PrintActionStrings2(void) @@ -3838,7 +3838,7 @@ static void Swap_PrintActionStrings2(void) Swap_PrintActionString(gText_Cancel3, 32, SWAP_WIN_OPTIONS); break; } - CopyWindowToVram(SWAP_WIN_OPTIONS, 3); + CopyWindowToVram(SWAP_WIN_OPTIONS, COPYWIN_FULL); } static void Swap_PrintOneActionString(u8 which) @@ -3853,7 +3853,7 @@ static void Swap_PrintOneActionString(u8 which) Swap_PrintActionString(gText_Cancel3, 32, SWAP_WIN_OPTIONS); break; } - CopyWindowToVram(SWAP_WIN_OPTIONS, 3); + CopyWindowToVram(SWAP_WIN_OPTIONS, COPYWIN_FULL); } // For printing the species name once its selected. Keep the current fade but don't keep fading in and out @@ -3874,7 +3874,7 @@ static void Swap_PrintMonSpeciesAtFade(void) FillWindowPixelBuffer(SWAP_WIN_SPECIES_AT_FADE, PIXEL_FILL(0)); if (sFactorySwapScreen->cursorPos >= FRONTIER_PARTY_SIZE) { - CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, 3); + CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, COPYWIN_FULL); } else { @@ -3886,7 +3886,7 @@ static void Swap_PrintMonSpeciesAtFade(void) StringCopy(gStringVar4, gSpeciesNames[species]); x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); AddTextPrinterParameterized3(SWAP_WIN_SPECIES_AT_FADE, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); - CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, 3); + CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, COPYWIN_FULL); } } @@ -3901,7 +3901,7 @@ static void Swap_PrintMonSpeciesForTransition(void) if (sFactorySwapScreen->cursorPos >= FRONTIER_PARTY_SIZE) { - CopyWindowToVram(SWAP_WIN_SPECIES, 2); + CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_GFX); } else { @@ -3913,7 +3913,7 @@ static void Swap_PrintMonSpeciesForTransition(void) StringCopy(gStringVar4, gSpeciesNames[species]); x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86); AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4); - CopyWindowToVram(SWAP_WIN_SPECIES, 3); + CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_FULL); } } @@ -3927,7 +3927,7 @@ static void Swap_PrintMonCategory(void) FillWindowPixelBuffer(SWAP_WIN_MON_CATEGORY, PIXEL_FILL(0)); if (monId >= FRONTIER_PARTY_SIZE) { - CopyWindowToVram(SWAP_WIN_MON_CATEGORY, 2); + CopyWindowToVram(SWAP_WIN_MON_CATEGORY, COPYWIN_GFX); } else { @@ -3939,7 +3939,7 @@ static void Swap_PrintMonCategory(void) CopyMonCategoryText(SpeciesToNationalPokedexNum(species), text); x = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x76); AddTextPrinterParameterized(SWAP_WIN_MON_CATEGORY, FONT_NORMAL, text, x, 1, 0, NULL); - CopyWindowToVram(SWAP_WIN_MON_CATEGORY, 2); + CopyWindowToVram(SWAP_WIN_MON_CATEGORY, COPYWIN_GFX); } } @@ -4126,7 +4126,7 @@ static void Swap_TaskCantHaveSameMons(u8 taskId) if (sFactorySwapScreen->monPicAnimating != TRUE) { FillWindowPixelBuffer(SWAP_WIN_ACTION_FADE, PIXEL_FILL(0)); - CopyWindowToVram(SWAP_WIN_ACTION_FADE, 2); + CopyWindowToVram(SWAP_WIN_ACTION_FADE, COPYWIN_GFX); gTasks[taskId].tState++; } break; diff --git a/src/battle_message.c b/src/battle_message.c index 31f256e3c6fb..b88eedfb376e 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -3113,7 +3113,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) if (copyToVram) { PutWindowTilemap(windowId); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } } diff --git a/src/battle_records.c b/src/battle_records.c index 5c8c92d847c7..850feef59ea7 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -334,7 +334,7 @@ void ShowLinkBattleRecords(void) } PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } void RemoveRecordsWindow(void) @@ -382,7 +382,7 @@ static void RemoveTrainerHillRecordsWindow(u8 windowId) { FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); ClearWindowTilemap(windowId); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); RemoveWindow(windowId); } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 92e5b31e9ec2..c3263099f2c9 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5921,7 +5921,7 @@ static void Cmd_drawlvlupbox(void) // Draw page 1 of level up box DrawLevelUpWindow1(); PutWindowTilemap(B_WIN_LEVEL_UP_BOX); - CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 3); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, COPYWIN_FULL); gBattleScripting.drawlvlupboxState++; break; case 5: @@ -5939,7 +5939,7 @@ static void Cmd_drawlvlupbox(void) // Draw page 2 of level up box PlaySE(SE_SELECT); DrawLevelUpWindow2(); - CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 2); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, COPYWIN_GFX); gBattleScripting.drawlvlupboxState++; } break; @@ -5956,10 +5956,10 @@ static void Cmd_drawlvlupbox(void) if (!SlideOutLevelUpBanner()) { ClearWindowTilemap(B_WIN_LEVEL_UP_BANNER); - CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 1); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_MAP); ClearWindowTilemap(B_WIN_LEVEL_UP_BOX); - CopyWindowToVram(B_WIN_LEVEL_UP_BOX, 1); + CopyWindowToVram(B_WIN_LEVEL_UP_BOX, COPYWIN_MAP); SetBgAttribute(2, BG_ATTR_PRIORITY, 2); ShowBg(2); @@ -6004,7 +6004,7 @@ static void InitLevelUpBanner(void) LoadPalette(sLevelUpBanner_Pal, 0x60, 0x20); CopyToWindowPixelBuffer(B_WIN_LEVEL_UP_BANNER, sLevelUpBanner_Gfx, 0, 0); PutWindowTilemap(B_WIN_LEVEL_UP_BANNER); - CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 3); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_FULL); PutMonIconOnLvlUpBanner(); } @@ -6085,7 +6085,7 @@ static void DrawLevelUpBannerText(void) printerTemplate.currentY = 10; AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); - CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, 2); + CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_GFX); } static bool8 SlideOutLevelUpBanner(void) diff --git a/src/berry_blender.c b/src/berry_blender.c index 65008dae0769..6603f91fb17c 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1616,7 +1616,7 @@ static void PrintPlayerNames(void) Blender_AddTextPrinter(i, text, xPos, 1, 0, 1); PutWindowTilemap(i); - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); } } } @@ -2684,7 +2684,7 @@ static void CB2_EndBlenderGame(void) if (sBerryBlender->arrowIdToPlayerId[i] != NO_PLAYER) { PutWindowTilemap(i); - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); } } break; @@ -2696,7 +2696,7 @@ static void CB2_EndBlenderGame(void) if (sBerryBlender->arrowIdToPlayerId[i] != NO_PLAYER) { PutWindowTilemap(i); - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); } } break; @@ -3545,7 +3545,7 @@ static bool8 PrintBlendingResults(void) sBerryBlender->framesToWait = 0; sBerryBlender->mainState++; - CopyWindowToVram(5, 2); + CopyWindowToVram(5, COPYWIN_GFX); } break; case 4: @@ -3562,7 +3562,7 @@ static bool8 PrintBlendingResults(void) if (sBerryBlender->arrowIdToPlayerId[i] != NO_PLAYER) { PutWindowTilemap(i); - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); } } @@ -3731,7 +3731,7 @@ static bool8 PrintBlendingRanking(void) } PutWindowTilemap(5); - CopyWindowToVram(5, 3); + CopyWindowToVram(5, COPYWIN_FULL); sBerryBlender->framesToWait = 0; sBerryBlender->mainState++; @@ -3788,7 +3788,7 @@ void ShowBerryBlenderRecordWindow(void) } PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } static void Task_PlayPokeblockFanfare(u8 taskId) @@ -3890,7 +3890,7 @@ static bool32 Blender_PrintText(s16 *textState, const u8 *string, s32 textSpeed) DrawDialogFrameWithCustomTileAndPalette(4, FALSE, 0x14, 0xF); Blender_AddTextPrinter(4, string, 0, 1, textSpeed, 0); PutWindowTilemap(4); - CopyWindowToVram(4, 3); + CopyWindowToVram(4, COPYWIN_FULL); (*textState)++; break; case 1: diff --git a/src/berry_crush.c b/src/berry_crush.c index 8ac6bb3123c6..10f7987e0508 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1778,7 +1778,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGa PrintCrushingResults(game); break; case 5: - CopyWindowToVram(gfx->resultsWindowId, 3); + CopyWindowToVram(gfx->resultsWindowId, COPYWIN_FULL); gfx->resultsState = 0; return TRUE; } @@ -1841,7 +1841,7 @@ static void Task_ShowRankings(u8 taskId) yPos += 16; score = 0; } - CopyWindowToVram(tWindowId, 3); + CopyWindowToVram(tWindowId, COPYWIN_FULL); break; case 2: if (JOY_NEW(A_BUTTON | B_BUTTON)) @@ -1938,7 +1938,7 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game) game->players[i].name ); } - CopyWindowToVram(game->gfx.nameWindowIds[i], 3); + CopyWindowToVram(game->gfx.nameWindowIds[i], COPYWIN_FULL); } CopyBgTilemapBufferToVram(0); } @@ -2264,7 +2264,7 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) { AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[args[0]], game->textSpeed, 0, 2, 1, 3); } - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); break; case 1: if (!IsTextPrinterActive(0)) @@ -3243,7 +3243,7 @@ static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) return 0; DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); CreateTask(Task_LinkSave, 0); break; case 3: @@ -3394,7 +3394,7 @@ static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args) AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); else AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_DROPPED], game->textSpeed, 0, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); break; case 1: if (IsTextPrinterActive(0)) diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index 9b0da5bd2ed5..3a0e4c326127 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -319,9 +319,9 @@ static void BerryFix_GpuSet(void) left = (208 - width) / 2; AddTextPrinterParameterized3(0, FONT_NORMAL, left, 2, sBerryProgramTextColors, TEXT_SPEED_FF, sText_BerryProgramUpdate); - CopyWindowToVram(2, 2); - CopyWindowToVram(3, 2); - CopyWindowToVram(0, 2); + CopyWindowToVram(2, COPYWIN_GFX); + CopyWindowToVram(3, COPYWIN_GFX); + CopyWindowToVram(0, COPYWIN_GFX); } static int BerryFix_TrySetScene(int scene) @@ -348,7 +348,7 @@ static void BerryFix_SetScene(int scene) FillWindowPixelBuffer(1, PIXEL_FILL(10)); AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0, sBerryProgramTextColors, -1, sBerryProgramTexts[scene]); PutWindowTilemap(1); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); switch (scene) { case SCENE_ENSURE_CONNECT: diff --git a/src/braille.c b/src/braille.c index 4e22a12efea5..e9c2ddc40084 100644 --- a/src/braille.c +++ b/src/braille.c @@ -177,7 +177,7 @@ u16 FontFunc_Braille(struct TextPrinter *textPrinter) ScrollWindow(textPrinter->printerTemplate.windowId, 0, sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed], PIXEL_FILL(textPrinter->printerTemplate.bgColor)); textPrinter->scrollDistance -= sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]; } - CopyWindowToVram(textPrinter->printerTemplate.windowId, 2); + CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); } else { diff --git a/src/cable_club.c b/src/cable_club.c index 1284aee77f58..ef1d9ff0d238 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -101,15 +101,15 @@ static void PrintNumPlayersInLink(u16 windowId, u32 numPlayers) StringExpandPlaceholders(gStringVar4, gText_NumPlayerLink); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 88); AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, xPos, 1, 0xFF, NULL); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void ClearLinkPlayerCountWindow(u16 windowId) { - // Following this call with a copy-to-vram with mode 3 is identical to + // Following this call with a copy-to-vram with mode COPYWIN_FULL is identical to // calling ClearStdWindowAndFrame(windowId, TRUE). ClearStdWindowAndFrame(windowId, FALSE); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void UpdateLinkPlayerCountDisplay(u8 taskId, u8 numPlayers) diff --git a/src/contest.c b/src/contest.c index 1cd8f18b01e7..b5a035ff85db 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1667,7 +1667,7 @@ static void Task_HideMoveSelectScreen(u8 taskId) { FillWindowPixelBuffer(MOVE_WINDOWS_START + i, PIXEL_FILL(0)); PutWindowTilemap(MOVE_WINDOWS_START + i); - CopyWindowToVram(MOVE_WINDOWS_START + i, 2); + CopyWindowToVram(MOVE_WINDOWS_START + i, COPYWIN_GFX); } Contest_SetBgCopyFlags(0); // This seems to be a bug; it should have just copied PLTT_BUFFER_SIZE. @@ -3377,7 +3377,7 @@ static void DrawStatusSymbols(void) static void ContestClearGeneralTextWindow(void) { FillWindowPixelBuffer(WIN_GENERAL_TEXT, PIXEL_FILL(0)); - CopyWindowToVram(WIN_GENERAL_TEXT, 2); + CopyWindowToVram(WIN_GENERAL_TEXT, COPYWIN_GFX); Contest_SetBgCopyFlags(0); } diff --git a/src/contest_painting.c b/src/contest_painting.c index db6bf445578f..84b160eb825e 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -274,7 +274,7 @@ static void InitContestPaintingWindow(void) DeactivateAllTextPrinters(); FillWindowPixelBuffer(sWindowId, PIXEL_FILL(0)); PutWindowTilemap(sWindowId); - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); ShowBg(1); } diff --git a/src/credits.c b/src/credits.c index de7597e32196..0643f2c59716 100644 --- a/src/credits.c +++ b/src/credits.c @@ -369,7 +369,7 @@ static void InitCreditsBgsAndWindows(void) InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); ShowBg(0); } @@ -761,7 +761,7 @@ static void Task_UpdatePage(u8 taskId) sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->text, 5 + i * 16, sCreditsEntryPointerTable[gTasks[taskId].tCurrentPage][i]->isTitle); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); gTasks[taskId].tCurrentPage++; gTasks[taskId].tState++; @@ -811,7 +811,7 @@ static void Task_UpdatePage(u8 taskId) { // Still more Credits pages to show, return to state 2 to print FillWindowPixelBuffer(0, PIXEL_FILL(0)); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); gTasks[taskId].tState = 2; } return; diff --git a/src/daycare.c b/src/daycare.c index eb17147b5d40..ce11e4375933 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -1285,7 +1285,7 @@ void ShowDaycareLevelMenu(void) menuTemplate.windowId = windowId; listMenuTaskId = ListMenuInit(&menuTemplate, 0, 0); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); daycareMenuTaskId = CreateTask(Task_HandleDaycareLevelMenuInput, 3); gTasks[daycareMenuTaskId].tMenuListTaskId = listMenuTaskId; diff --git a/src/diploma.c b/src/diploma.c index ffb1447eb8d6..6b1b7fbf5fdc 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -140,7 +140,7 @@ static void DisplayDiplomaText(void) StringExpandPlaceholders(gStringVar4, gText_PokedexDiploma); PrintDiplomaText(gStringVar4, 0, 1); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static const struct BgTemplate sDiplomaBgTemplates[2] = diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 838e8ed9450a..41060415e0de 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -2968,7 +2968,7 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId) window.width = width; tWindowId = AddWindow(&window); PrintRecordsText(tWindowId, width); - CopyWindowToVram(tWindowId, 3); + CopyWindowToVram(tWindowId, COPYWIN_FULL); tState++; break; case 1: @@ -2979,7 +2979,7 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON)) { rbox_fill_rectangle(tWindowId); - CopyWindowToVram(tWindowId, 1); + CopyWindowToVram(tWindowId, COPYWIN_MAP); tState++; } break; @@ -4650,7 +4650,7 @@ static void ShowNames(void) colorsId = COLORID_BLUE; name = GetPlayerName(playerId); AddTextPrinterParameterized3(sGfx->windowIds[i], FONT_NORMAL, left, 1, sTextColorTable[colorsId], -1, name); - CopyWindowToVram(sGfx->windowIds[i], 2); + CopyWindowToVram(sGfx->windowIds[i], COPYWIN_GFX); window.baseBlock += 0xE; DrawMessageWindow(&window); } @@ -4798,8 +4798,8 @@ static void ShowResults(void) AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, sResultsXCoords[j] - width, sResultsYCoords[i], -1, NULL); } } - CopyWindowToVram(sGfx->windowIds[0], 2); - CopyWindowToVram(sGfx->windowIds[1], 2); + CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); + CopyWindowToVram(sGfx->windowIds[1], COPYWIN_GFX); sGfx->state++; break; case 3: @@ -4831,8 +4831,8 @@ static void ShowResults(void) break; case 6: PrintRankedScores(numPlayers); - CopyWindowToVram(sGfx->windowIds[0], 2); - CopyWindowToVram(sGfx->windowIds[1], 2); + CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); + CopyWindowToVram(sGfx->windowIds[1], COPYWIN_GFX); sGfx->state++; break; case 7: @@ -4890,8 +4890,8 @@ static void ShowResults(void) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_FilledStorageSpace); AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 41, -1, NULL); } - CopyWindowToVram(sGfx->windowIds[0], 2); - CopyWindowToVram(sGfx->windowIds[1], 2); + CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); + CopyWindowToVram(sGfx->windowIds[1], COPYWIN_GFX); sGfx->state++; break; case 10: @@ -4950,8 +4950,8 @@ static void Msg_WantToPlayAgain(void) AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, 1, -1, NULL); - CopyWindowToVram(sGfx->windowIds[WIN_PLAY_AGAIN], 2); - CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], 2); + CopyWindowToVram(sGfx->windowIds[WIN_PLAY_AGAIN], COPYWIN_GFX); + CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], COPYWIN_GFX); sGfx->state++; break; case 2: @@ -4973,7 +4973,7 @@ static void Msg_WantToPlayAgain(void) AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, -1, NULL); - CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], 3); + CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], COPYWIN_FULL); // Increment state only if A or B button have been pressed. if (JOY_NEW(A_BUTTON)) @@ -5029,7 +5029,7 @@ static void Msg_SavingDontTurnOff(void) sGfx->state++; break; case 1: - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sGfx->state++; break; case 2: @@ -5064,7 +5064,7 @@ static void Msg_CommunicationStandby(void) case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_CommunicationStandby3, 0, 5, -1, NULL); - CopyWindowToVram(sGfx->windowIds[0], 2); + CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); sGfx->state++; break; case 2: @@ -5104,7 +5104,7 @@ static void Msg_SomeoneDroppedOut(void) case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_SomeoneDroppedOut, 0, 5, -1, NULL); - CopyWindowToVram(sGfx->windowIds[0], 2); + CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); sGfx->state++; break; case 2: diff --git a/src/easy_chat.c b/src/easy_chat.c index ff4049cd7d08..078e07eb2fbc 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -3934,7 +3934,7 @@ static void PrintTitle(void) FillWindowPixelBuffer(0, PIXEL_FILL(0)); PrintEasyChatTextWithColors(0, FONT_NORMAL, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void PrintEasyChatText(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16)) @@ -4008,7 +4008,7 @@ static void PrintEasyChatStdMessage(u8 msgId) if (text2) PrintEasyChatText(1, FONT_NORMAL, text2, 0, 17, TEXT_SPEED_FF, 0); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); } static void CreateEasyChatYesNoMenu(u8 initialCursorPos) @@ -4102,7 +4102,7 @@ static void PrintCurrentPhrase(void) PrintEasyChatText(sScreenControl->windowId, FONT_NORMAL, sScreenControl->phrasePrintBuffer, 0, i * 16 + 1, TEXT_SPEED_FF, 0); } - CopyWindowToVram(sScreenControl->windowId, 3); + CopyWindowToVram(sScreenControl->windowId, COPYWIN_FULL); } static void BufferFrameTilemap(u16 *tilemap) @@ -4216,7 +4216,7 @@ static void InitLowerWindowText(u32 whichText) break; } - CopyWindowToVram(2, 2); + CopyWindowToVram(2, COPYWIN_GFX); } static void PrintKeyboardText(void) @@ -4337,7 +4337,7 @@ static void PrintWordSelectText(u8 scrollOffset, u8 numRows) y += 16; } - CopyWindowToVram(2, 2); + CopyWindowToVram(2, COPYWIN_GFX); } static void EraseWordSelectRows(u8 scrollOffset, u8 numRows) @@ -4369,7 +4369,7 @@ static void EraseWordSelectRows(u8 scrollOffset, u8 numRows) static void ClearWordSelectWindow(void) { FillWindowPixelBuffer(2, PIXEL_FILL(1)); - CopyWindowToVram(2, 2); + CopyWindowToVram(2, COPYWIN_GFX); } static void InitLowerWindowAnim(int winAnimType) diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 25a61fcf6783..c705cf24b5b7 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -644,7 +644,7 @@ static void CB2_EggHatch_1(void) PlayFanfare(MUS_EVOLVED); sEggHatchData->CB2_state++; PutWindowTilemap(sEggHatchData->windowId); - CopyWindowToVram(sEggHatchData->windowId, 3); + CopyWindowToVram(sEggHatchData->windowId, COPYWIN_FULL); break; case 6: if (IsFanfareTaskInactive()) diff --git a/src/field_region_map.c b/src/field_region_map.c index 9dcc65c9a4eb..26ae736a686f 100644 --- a/src/field_region_map.c +++ b/src/field_region_map.c @@ -213,6 +213,6 @@ static void PrintRegionMapSecName(void) else { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } } diff --git a/src/field_specials.c b/src/field_specials.c index c859401622a4..96cef93ba47c 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1917,7 +1917,7 @@ void ShowDeptStoreElevatorFloorSelect(void) AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], xPos, 17, TEXT_SPEED_FF, NULL); PutWindowTilemap(sTutorMoveAndElevatorWindowId); - CopyWindowToVram(sTutorMoveAndElevatorWindowId, 3); + CopyWindowToVram(sTutorMoveAndElevatorWindowId, COPYWIN_FULL); } void CloseDeptStoreElevatorWindow(void) @@ -2723,7 +2723,7 @@ static void CloseScrollableMultichoice(u8 taskId) Free(sScrollableMultichoice_ListMenuItem); ClearStdWindowAndFrameToTransparent(task->tWindowId, 1); FillWindowPixelBuffer(task->tWindowId, PIXEL_FILL(0)); - CopyWindowToVram(task->tWindowId, 2); + CopyWindowToVram(task->tWindowId, COPYWIN_GFX); RemoveWindow(task->tWindowId); DestroyTask(taskId); EnableBothScriptContexts(); @@ -2976,7 +2976,7 @@ void ShowBattlePointsWindow(void) sBattlePointsWindowId = AddWindow(&sBattlePoints_WindowTemplate); SetStandardWindowBorderStyle(sBattlePointsWindowId, 0); UpdateBattlePointsWindow(); - CopyWindowToVram(sBattlePointsWindowId, 2); + CopyWindowToVram(sBattlePointsWindowId, COPYWIN_GFX); } void CloseBattlePointsWindow(void) @@ -2988,25 +2988,17 @@ void CloseBattlePointsWindow(void) void TakeFrontierBattlePoints(void) { if (gSaveBlock2Ptr->frontier.battlePoints < gSpecialVar_0x8004) - { gSaveBlock2Ptr->frontier.battlePoints = 0; - } else - { gSaveBlock2Ptr->frontier.battlePoints -= gSpecialVar_0x8004; - } } void GiveFrontierBattlePoints(void) { if (gSaveBlock2Ptr->frontier.battlePoints + gSpecialVar_0x8004 > MAX_BATTLE_FRONTIER_POINTS) - { gSaveBlock2Ptr->frontier.battlePoints = MAX_BATTLE_FRONTIER_POINTS; - } else - { gSaveBlock2Ptr->frontier.battlePoints = gSaveBlock2Ptr->frontier.battlePoints + gSpecialVar_0x8004; - } } u16 GetFrontierBattlePoints(void) @@ -3028,7 +3020,7 @@ void ShowFrontierExchangeCornerItemIconWindow(void) sFrontierExchangeCorner_ItemIconWindowId = AddWindow(&sFrontierExchangeCorner_ItemIconWindowTemplate); SetStandardWindowBorderStyle(sFrontierExchangeCorner_ItemIconWindowId, 0); - CopyWindowToVram(sFrontierExchangeCorner_ItemIconWindowId, 2); + CopyWindowToVram(sFrontierExchangeCorner_ItemIconWindowId, COPYWIN_GFX); } void CloseFrontierExchangeCornerItemIconWindow(void) @@ -3248,7 +3240,7 @@ void ScrollableMultichoice_RedrawPersistentMenu(void) AddTextPrinterParameterized(task->tWindowId, FONT_NORMAL, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SPEED_FF, NULL); PutWindowTilemap(task->tWindowId); - CopyWindowToVram(task->tWindowId, 3); + CopyWindowToVram(task->tWindowId, COPYWIN_FULL); } } @@ -3303,7 +3295,7 @@ void ScrollableMultichoice_ClosePersistentMenu(void) ClearStdWindowAndFrameToTransparent(task->tWindowId, TRUE); FillWindowPixelBuffer(task->tWindowId, PIXEL_FILL(0)); ClearWindowTilemap(task->tWindowId); - CopyWindowToVram(task->tWindowId, 2); + CopyWindowToVram(task->tWindowId, COPYWIN_GFX); RemoveWindow(task->tWindowId); DestroyTask(taskId); } diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 699e19c7aa5c..9dfd5e9354b7 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -1166,7 +1166,7 @@ static void ShowAndPrintWindows(void) PrintAreaDescription(sPassData->cursorArea); for (i = 0; i < WINDOW_COUNT; i++) - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); } @@ -1180,7 +1180,7 @@ static void PrintAreaDescription(u8 cursorArea) else if (cursorArea != CURSOR_AREA_NOTHING) AddTextPrinterParameterized3(WINDOW_DESCRIPTION, FONT_NORMAL, 2, 0, sTextColors[1], 0, sPassAreaDescriptions[cursorArea]); - CopyWindowToVram(WINDOW_DESCRIPTION, 3); + CopyWindowToVram(WINDOW_DESCRIPTION, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); } @@ -1723,7 +1723,7 @@ static void PrintOnFrontierMap(void) AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, FONT_NORMAL, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); for (i = 0; i < MAP_WINDOW_COUNT; i++) - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); } @@ -1755,7 +1755,7 @@ static void HandleFrontierMapCursorMove(u8 direction) AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, FONT_NORMAL, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description); for (i = 0; i < MAP_WINDOW_COUNT; i++) - CopyWindowToVram(i, 3); + CopyWindowToVram(i, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); PlaySE(SE_DEX_SCROLL); diff --git a/src/frontier_util.c b/src/frontier_util.c index 25153b05c796..88db7af1fa37 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -1064,7 +1064,7 @@ static void ShowTowerResultsWindow(u8 battleMode) TowerPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_OPEN, 72, 132, 97); TowerPrintRecordStreak(battleMode, FRONTIER_LVL_OPEN, 72, 132, 113); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Dome records. @@ -1133,7 +1133,7 @@ static void ShowDomeResultsWindow(u8 battleMode) PrintTwoStrings(gText_Record, gText_ClearStreak, gSaveBlock2Ptr->frontier.domeRecordWinStreaks[battleMode][FRONTIER_LVL_OPEN], 64, 121, 113); PrintTwoStrings(gText_Total, gText_Championships, gSaveBlock2Ptr->frontier.domeTotalChampionships[battleMode][FRONTIER_LVL_OPEN], 64, 112, 129); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Palace records. @@ -1207,7 +1207,7 @@ static void ShowPalaceResultsWindow(u8 battleMode) PalacePrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_OPEN, 72, 131, 97); PalacePrintRecordStreak(battleMode, FRONTIER_LVL_OPEN, 72, 131, 113); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Pike records. @@ -1261,7 +1261,7 @@ static void ShowPikeResultsWindow(void) PikePrintCleared(gText_Record, gText_RoomsCleared, gSaveBlock2Ptr->frontier.pikeRecordStreaks[FRONTIER_LVL_OPEN], 64, 114, 113); PikePrintCleared(gText_Total, gText_TimesCleared, gSaveBlock2Ptr->frontier.pikeTotalStreaks[FRONTIER_LVL_OPEN], 64, 114, 129); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Arena records. @@ -1321,7 +1321,7 @@ static void ShowArenaResultsWindow(void) ArenaPrintPrevOrCurrentStreak(FRONTIER_LVL_OPEN, 72, 126, 97); ArenaPrintRecordStreak(FRONTIER_LVL_OPEN, 72, 126, 113); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Factory records. @@ -1412,7 +1412,7 @@ static void ShowFactoryResultsWindow(u8 battleMode) FactoryPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_OPEN, 8, 64, 158, 113); FactoryPrintRecordStreak(battleMode, FRONTIER_LVL_OPEN, 8, 64, 158, 129); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Battle Pyramid records. @@ -1472,7 +1472,7 @@ static void ShowPyramidResultsWindow(void) PyramidPrintPrevOrCurrentStreak(FRONTIER_LVL_OPEN, 64, 111, 97); PyramidPrintRecordStreak(FRONTIER_LVL_OPEN, 64, 111, 113); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } // Link contest records. Why is it in this file? @@ -1523,7 +1523,7 @@ static void ShowLinkContestResultsWindow(void) } PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } static void CheckPutFrontierTVShowOnAir(void) @@ -2369,14 +2369,14 @@ void ShowRankingHallRecordsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); PrintHallRecords(gSpecialVar_0x8005, FRONTIER_LVL_50); PutWindowTilemap(gRecordsWindowId); - CopyWindowToVram(gRecordsWindowId, 3); + CopyWindowToVram(gRecordsWindowId, COPYWIN_FULL); } void ScrollRankingHallRecordsWindow(void) { FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); PrintHallRecords(gSpecialVar_0x8005, FRONTIER_LVL_OPEN); - CopyWindowToVram(gRecordsWindowId, 2); + CopyWindowToVram(gRecordsWindowId, COPYWIN_GFX); } void ClearRankingHallRecords(void) diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 8d69b03bc99e..58e062d50cf7 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -515,7 +515,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_TrySaveData; } @@ -676,7 +676,7 @@ static void Task_Hof_DoConfetti(u8 taskId) } BeginNormalPaletteFade(sHofFadePalettes, 0, 12, 12, RGB(16, 29, 24)); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].tFrameCount = 7; gTasks[taskId].func = Task_Hof_WaitToDisplayPlayer; } @@ -725,7 +725,7 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId) HallOfFame_PrintPlayerInfo(1, 2); DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_LeagueChamp, 0, NULL, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_ExitOnKeyPressed; } } @@ -1094,7 +1094,7 @@ static void Task_HofPC_PrintDataIsCorrupted(u8 taskId) sub_8198180(gText_AButtonExit, 8, TRUE); DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_HofPC_ExitOnButtonPress; } @@ -1115,7 +1115,7 @@ static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2) FillWindowPixelBuffer(0, PIXEL_FILL(0)); PutWindowTilemap(0); AddTextPrinterParameterized3(0, FONT_NORMAL, GetStringCenterAlignXOffset(FONT_NORMAL, gText_WelcomeToHOF, 0xD0), 1, sMonInfoTextColors, 0, gText_WelcomeToHOF); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2) @@ -1160,7 +1160,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u { width = GetStringCenterAlignXOffset(FONT_NORMAL, text, 0xD0); AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, -1, text); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } else { @@ -1196,7 +1196,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u ConvertIntToDecimalStringN(stringPtr, (u16)(currMon->tid), STR_CONV_MODE_LEADING_ZEROS, 5); AddTextPrinterParameterized3(0, FONT_NORMAL, 0x68, 0x11, sMonInfoTextColors, -1, text); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } } @@ -1243,7 +1243,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x70); AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x21, sPlayerInfoTextColors, -1, text); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); } static void ClearVramOamPltt_LoadHofPal(void) diff --git a/src/item_menu.c b/src/item_menu.c index bee5dc716575..1baa3965cfc2 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2439,7 +2439,7 @@ static void CopyPocketNameToWindow(u32 a) CpuCopy32(tileDataBuffer[0][a], windowTileData, 0x100); // Top half of pocket name b = a + 16; CpuCopy32(tileDataBuffer[0][b], windowTileData + 0x100, 0x100); // Bottom half of pocket name - CopyWindowToVram(WIN_POCKET_NAME, 2); + CopyWindowToVram(WIN_POCKET_NAME, COPYWIN_GFX); } static void LoadBagMenuTextWindows(void) @@ -2544,7 +2544,7 @@ static void PrepareTMHMMoveWindow(void) BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_POWER, 0, 12); BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_ACCURACY, 0, 24); BlitMenuInfoIcon(WIN_TMHM_INFO_ICONS, MENU_INFO_ICON_PP, 0, 36); - CopyWindowToVram(WIN_TMHM_INFO_ICONS, 2); + CopyWindowToVram(WIN_TMHM_INFO_ICONS, COPYWIN_GFX); } static void PrintTMHMMoveData(u16 itemId) @@ -2558,7 +2558,7 @@ static void PrintTMHMMoveData(u16 itemId) { for (i = 0; i < 4; i++) BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); - CopyWindowToVram(WIN_TMHM_INFO, 2); + CopyWindowToVram(WIN_TMHM_INFO, COPYWIN_GFX); } else { @@ -2593,6 +2593,6 @@ static void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, STR_CONV_MODE_RIGHT_ALIGN, 3); BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gStringVar1, 7, 36, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); - CopyWindowToVram(WIN_TMHM_INFO, 2); + CopyWindowToVram(WIN_TMHM_INFO, COPYWIN_GFX); } } diff --git a/src/link.c b/src/link.c index 40f6ce786ced..3380514e13ac 100644 --- a/src/link.c +++ b/src/link.c @@ -1648,8 +1648,8 @@ static void ErrorMsg_MoveCloserToPartner(void) AddTextPrinterParameterized3(2, FONT_SHORT_COPY_1, 2, 1, sTextColors, 0, gText_MoveCloserToLinkPartner); PutWindowTilemap(0); PutWindowTilemap(2); - CopyWindowToVram(0, 0); - CopyWindowToVram(2, 3); + CopyWindowToVram(0, COPYWIN_NONE); // Does nothing + CopyWindowToVram(2, COPYWIN_FULL); } static void ErrorMsg_CheckConnections(void) @@ -1660,8 +1660,8 @@ static void ErrorMsg_CheckConnections(void) AddTextPrinterParameterized3(1, FONT_SHORT_COPY_1, 2, 0, sTextColors, 0, gText_CommErrorCheckConnections); PutWindowTilemap(1); PutWindowTilemap(2); - CopyWindowToVram(1, 0); - CopyWindowToVram(2, 3); + CopyWindowToVram(1, COPYWIN_NONE); // Does nothing + CopyWindowToVram(2, COPYWIN_FULL); } static void CB2_PrintErrorMessage(void) diff --git a/src/list_menu.c b/src/list_menu.c index 84b917eecc52..6b1c377f36d2 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -330,7 +330,7 @@ s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str gMultiuseListMenuTemplate = *listMenuTemplate; gMultiuseListMenuTemplate.windowId = sMysteryGiftLinkMenu.windowId; sMysteryGiftLinkMenu.listTaskId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0); - CopyWindowToVram(sMysteryGiftLinkMenu.windowId, 1); + CopyWindowToVram(sMysteryGiftLinkMenu.windowId, COPYWIN_MAP); sMysteryGiftLinkMenu.state = 1; break; case 1: @@ -364,7 +364,7 @@ s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str } } - CopyWindowToVram(sMysteryGiftLinkMenu.windowId, 1); + CopyWindowToVram(sMysteryGiftLinkMenu.windowId, COPYWIN_MAP); } break; case 2: @@ -381,7 +381,7 @@ u8 ListMenuInit(struct ListMenuTemplate *listMenuTemplate, u16 scrollOffset, u16 { u8 taskId = ListMenuInitInternal(listMenuTemplate, scrollOffset, selectedRow); PutWindowTilemap(listMenuTemplate->windowId); - CopyWindowToVram(listMenuTemplate->windowId, 2); + CopyWindowToVram(listMenuTemplate->windowId, COPYWIN_GFX); return taskId; } @@ -401,7 +401,7 @@ u8 ListMenuInitInRect(struct ListMenuTemplate *listMenuTemplate, struct ListMenu rect[i].height, rect[i].palNum); } - CopyWindowToVram(listMenuTemplate->windowId, 2); + CopyWindowToVram(listMenuTemplate->windowId, COPYWIN_GFX); return taskId; } @@ -489,7 +489,7 @@ void RedrawListMenu(u8 listTaskId) FillWindowPixelBuffer(list->template.windowId, PIXEL_FILL(list->template.fillValue)); ListMenuPrintEntries(list, list->scrollOffset, 0, list->template.maxShowed); ListMenuDrawCursor(list); - CopyWindowToVram(list->template.windowId, 2); + CopyWindowToVram(list->template.windowId, COPYWIN_GFX); } // unused @@ -862,7 +862,7 @@ static bool8 ListMenuChangeSelection(struct ListMenu *list, bool8 updateCursorAn ListMenuErasePrintedCursor(list, oldSelectedRow); ListMenuDrawCursor(list); ListMenuCallSelectionChangedCallback(list, FALSE); - CopyWindowToVram(list->template.windowId, 2); + CopyWindowToVram(list->template.windowId, COPYWIN_GFX); break; case 2: case 3: @@ -870,7 +870,7 @@ static bool8 ListMenuChangeSelection(struct ListMenu *list, bool8 updateCursorAn ListMenuScroll(list, cursorCount, movingDown); ListMenuDrawCursor(list); ListMenuCallSelectionChangedCallback(list, FALSE); - CopyWindowToVram(list->template.windowId, 2); + CopyWindowToVram(list->template.windowId, COPYWIN_GFX); break; } } diff --git a/src/mail.c b/src/mail.c index 5b4e62bafaca..f59e7edf14f2 100644 --- a/src/mail.c +++ b/src/mail.c @@ -700,8 +700,8 @@ static void PrintMailText(void) box_x = GetStringCenterAlignXOffset(FONT_NORMAL, signature, sMailRead->signatureWidth) + 104; box_y = sMailRead->layout->signatureYPos + 88; AddTextPrinterParameterized3(0, FONT_NORMAL, box_x, box_y, sTextColors, 0, signature); - CopyWindowToVram(0, 3); - CopyWindowToVram(1, 3); + CopyWindowToVram(0, COPYWIN_FULL); + CopyWindowToVram(1, COPYWIN_FULL); } static void VBlankCB_MailRead(void) diff --git a/src/main_menu.c b/src/main_menu.c index 637719dea759..bd7107963e89 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -784,8 +784,8 @@ static void Task_DisplayMainMenu(u8 taskId) AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); PutWindowTilemap(0); PutWindowTilemap(1); - CopyWindowToVram(0, 2); - CopyWindowToVram(1, 2); + CopyWindowToVram(0, COPYWIN_GFX); + CopyWindowToVram(1, COPYWIN_GFX); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[0], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[1], MAIN_MENU_BORDER_TILE); break; @@ -800,9 +800,9 @@ static void Task_DisplayMainMenu(u8 taskId) PutWindowTilemap(2); PutWindowTilemap(3); PutWindowTilemap(4); - CopyWindowToVram(2, 2); - CopyWindowToVram(3, 2); - CopyWindowToVram(4, 2); + CopyWindowToVram(2, COPYWIN_GFX); + CopyWindowToVram(3, COPYWIN_GFX); + CopyWindowToVram(4, COPYWIN_GFX); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[2], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[3], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[4], MAIN_MENU_BORDER_TILE); @@ -821,10 +821,10 @@ static void Task_DisplayMainMenu(u8 taskId) PutWindowTilemap(3); PutWindowTilemap(4); PutWindowTilemap(5); - CopyWindowToVram(2, 2); - CopyWindowToVram(3, 2); - CopyWindowToVram(4, 2); - CopyWindowToVram(5, 2); + CopyWindowToVram(2, COPYWIN_GFX); + CopyWindowToVram(3, COPYWIN_GFX); + CopyWindowToVram(4, COPYWIN_GFX); + CopyWindowToVram(5, COPYWIN_GFX); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[2], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[3], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[4], MAIN_MENU_BORDER_TILE); @@ -847,11 +847,11 @@ static void Task_DisplayMainMenu(u8 taskId) PutWindowTilemap(4); PutWindowTilemap(5); PutWindowTilemap(6); - CopyWindowToVram(2, 2); - CopyWindowToVram(3, 2); - CopyWindowToVram(4, 2); - CopyWindowToVram(5, 2); - CopyWindowToVram(6, 2); + CopyWindowToVram(2, COPYWIN_GFX); + CopyWindowToVram(3, COPYWIN_GFX); + CopyWindowToVram(4, COPYWIN_GFX); + CopyWindowToVram(5, COPYWIN_GFX); + CopyWindowToVram(6, COPYWIN_GFX); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[2], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[3], MAIN_MENU_BORDER_TILE); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[4], MAIN_MENU_BORDER_TILE); @@ -1330,7 +1330,7 @@ static void Task_NewGameBirchSpeech_WaitForSpriteFadeInWelcome(u8 taskId) LoadMessageBoxGfx(0, 0xFC, 0xF0); NewGameBirchSpeech_ShowDialogueWindow(0, 1); PutWindowTilemap(0); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_Welcome); AddTextPrinterForMessage(1); @@ -1855,7 +1855,7 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void) LoadMainMenuWindowFrameTiles(0, 0xF3); LoadMessageBoxGfx(0, 0xFC, 0xF0); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void SpriteCB_Null(struct Sprite *sprite) @@ -2092,7 +2092,7 @@ static void NewGameBirchSpeech_ShowGenderMenu(void) PrintMenuTable(1, ARRAY_COUNT(sMenuActions_Gender), sMenuActions_Gender); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(1, 2, 0); PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); } static s8 NewGameBirchSpeech_ProcessGenderMenuInput(void) @@ -2119,7 +2119,7 @@ static void CreateMainMenuErrorWindow(const u8* str) FillWindowPixelBuffer(7, PIXEL_FILL(1)); AddTextPrinterParameterized(7, FONT_NORMAL, str, 0, 1, 2, 0); PutWindowTilemap(7); - CopyWindowToVram(7, 2); + CopyWindowToVram(7, COPYWIN_GFX); DrawMainMenuWindowBorder(&sWindowTemplates_MainMenu[7], MAIN_MENU_BORDER_TILE); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(9, DISPLAY_WIDTH - 9)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(113, DISPLAY_HEIGHT - 1)); @@ -2232,7 +2232,7 @@ static void NewGameBirchSpeech_ClearGenderWindow(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); ClearWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void NewGameBirchSpeech_ClearWindow(u8 windowId) @@ -2244,7 +2244,7 @@ static void NewGameBirchSpeech_ClearWindow(u8 windowId) u8 winHeight = GetWindowAttribute(windowId, WINDOW_HEIGHT); FillWindowPixelRect(windowId, bgColor, 0, 0, maxCharWidth * winWidth, maxCharHeight * winHeight); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 a) diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 88a06eed424a..bc0b311622d1 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -330,7 +330,7 @@ static void ShowMapNamePopUpWindow(void) mapDisplayHeader[1] = EXT_CTRL_CODE_HIGHLIGHT; mapDisplayHeader[2] = TEXT_COLOR_TRANSPARENT; AddTextPrinterParameterized(GetMapNamePopUpWindowId(), FONT_NARROW, mapDisplayHeader, x, 3, 0xFF, NULL); - CopyWindowToVram(GetMapNamePopUpWindowId(), 3); + CopyWindowToVram(GetMapNamePopUpWindowId(), COPYWIN_FULL); } #define TILE_TOP_EDGE_START 0x21D diff --git a/src/match_call.c b/src/match_call.c index 4c77b87646d2..b292ede31ce0 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1277,7 +1277,7 @@ static bool32 MatchCall_DrawWindow(u8 taskId) DrawMatchCallTextBoxBorder_Internal(tWindowId, TILE_MC_WINDOW, 14); WriteSequenceToBgTilemapBuffer(0, (0xF << 12) | TILE_POKENAV_ICON, 1, 15, 4, 4, 17, 1); tIconTaskId = CreateTask(Task_SpinPokenavIcon, 10); - CopyWindowToVram(tWindowId, 2); + CopyWindowToVram(tWindowId, COPYWIN_GFX); CopyBgTilemapBufferToVram(0); return TRUE; } @@ -1329,7 +1329,7 @@ static bool32 MatchCall_PrintMessage(u8 taskId) if (!RunMatchCallTextPrinter(tWindowId) && !IsSEPlaying() && JOY_NEW(A_BUTTON | B_BUTTON)) { FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); - CopyWindowToVram(tWindowId, 2); + CopyWindowToVram(tWindowId, COPYWIN_GFX); PlaySE(SE_POKENAV_HANG_UP); return TRUE; } diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index a9f7df744a90..2525e065a8b7 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -449,7 +449,7 @@ static void DrawSongTextWindow(const u8 * str) DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, str, 0, 1, 1, DisableTextPrinters); gDisableTextPrinters = TRUE; - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void BardSing(struct Task *task, struct BardSong *song) @@ -1347,7 +1347,7 @@ static void PrintStoryList(void) } AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 0xFF, NULL); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sStorytellerWindowId, GetFreeStorySlot() + 1, 0); - CopyWindowToVram(sStorytellerWindowId, 3); + CopyWindowToVram(sStorytellerWindowId, COPYWIN_FULL); } static void Task_StoryListMenu(u8 taskId) diff --git a/src/menu.c b/src/menu.c index b8f09063daa6..7625f113cf29 100644 --- a/src/menu.c +++ b/src/menu.c @@ -138,7 +138,6 @@ void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8, u8, u8, u8, u8, u8); void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); void WindowFunc_ClearStdWindowAndFrameToTransparent(u8, u8, u8, u8, u8, u8); -void sub_8198C78(void); void task_free_buf_after_copying_tile_data_to_vram(u8 taskId); void InitStandardTextBoxWindows(void) @@ -220,7 +219,7 @@ void DrawDialogueFrame(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void DrawStdWindowFrame(u8 windowId, bool8 copyToVram) @@ -229,7 +228,7 @@ void DrawStdWindowFrame(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram) @@ -238,7 +237,7 @@ void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); ClearWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram) @@ -247,7 +246,7 @@ void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); ClearWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) @@ -461,7 +460,7 @@ void DisplayItemMessageOnField(u8 taskId, const u8 *string, TaskFunc callback) { LoadMessageBoxAndBorderGfx(); DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, FONT_NORMAL, GetPlayerTextSpeedDelay(), string, callback); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } void DisplayYesNoMenuDefaultYes(void) @@ -565,7 +564,7 @@ void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } // Never used. @@ -577,7 +576,7 @@ void DrawDialogFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 tileNum) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) @@ -682,7 +681,7 @@ void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); ClearWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) @@ -698,7 +697,7 @@ void DrawStdFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 bas FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } // Never used. @@ -710,7 +709,7 @@ void DrawStdFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 baseTileNum) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) @@ -779,7 +778,7 @@ void ClearStdWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); ClearWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } void WindowFunc_ClearStdWindowAndFrameToTransparent(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) @@ -832,7 +831,7 @@ void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram) 0, string); if (copyToVram) - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); } } @@ -870,14 +869,14 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo } AddTextPrinterParameterized4(sWindowId, FONT_NORMAL, 4, 1, 0, 0, color, 0, string); if (copyToVram) - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); } } void sub_81982D8(void) { if (sWindowId != WINDOW_NONE) - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); } void sub_81982F0(void) @@ -885,7 +884,7 @@ void sub_81982F0(void) if (sWindowId != WINDOW_NONE) { FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); } } @@ -895,7 +894,7 @@ void sub_8198314(void) { FillWindowPixelBuffer(sWindowId, PIXEL_FILL(0)); ClearWindowTilemap(sWindowId); - CopyWindowToVram(sWindowId, 3); + CopyWindowToVram(sWindowId, COPYWIN_FULL); RemoveWindow(sWindowId); sWindowId = WINDOW_NONE; } @@ -1106,7 +1105,7 @@ void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 i { AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_81987BC(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, u8 a6, u8 a7) @@ -1116,7 +1115,7 @@ void sub_81987BC(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 item { AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL, a6, a7); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_8198854(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) @@ -1148,7 +1147,7 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l AddTextPrinter(&printer, 0xFF, NULL); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) @@ -1216,11 +1215,11 @@ s8 Menu_ProcessInputNoWrapClearOnChoose(void) { s8 result = Menu_ProcessInputNoWrap(); if (result != MENU_NOTHING_CHOSEN) - sub_8198C78(); + EraseYesNoWindow(); return result; } -void sub_8198C78(void) +void EraseYesNoWindow(void) { ClearStdWindowAndFrameToTransparent(sYesNoWindowId, TRUE); RemoveWindow(sYesNoWindowId); @@ -1237,7 +1236,7 @@ void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, 0xFF, NULL); } } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) @@ -1273,7 +1272,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth } } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } // Unused @@ -1608,7 +1607,7 @@ void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActi AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, 0xFF, NULL); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) @@ -1635,7 +1634,7 @@ void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions AddTextPrinter(&printer, 0xFF, NULL); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 paletteNum, u8 initialCursorPos) @@ -1672,7 +1671,7 @@ void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const for (j = 0; j < columns; j++) AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, 0xFF, NULL); } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *menuActions, const u8 *actionIds) @@ -1703,7 +1702,7 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M } } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos) diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 6e13a769f6b1..d5bb975c8c17 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -754,7 +754,7 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x29, TEXT_SPEED_FF, NULL); if (chosenMove == LIST_CANCEL) { - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); return; } move = &gBattleMoves[chosenMove]; @@ -813,7 +813,7 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) if (chosenMove == MENU_NOTHING_CHOSEN) { - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); return; } @@ -824,7 +824,7 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) str = gContestEffectDescriptionPointers[move->effect]; AddTextPrinterParameterized(1, FONT_NARROW, str, 0, 0x41, TEXT_SPEED_FF, NULL); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); } static void MoveRelearnerCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *list) diff --git a/src/money.c b/src/money.c index db571939a862..c331462d4e3b 100644 --- a/src/money.c +++ b/src/money.c @@ -171,7 +171,7 @@ void DrawMoneyBox(int amount, u8 x, u8 y) sMoneyBoxWindowId = AddWindow(&template); FillWindowPixelBuffer(sMoneyBoxWindowId, PIXEL_FILL(0)); PutWindowTilemap(sMoneyBoxWindowId); - CopyWindowToVram(sMoneyBoxWindowId, 1); + CopyWindowToVram(sMoneyBoxWindowId, COPYWIN_MAP); PrintMoneyAmountInMoneyBoxWithBorder(sMoneyBoxWindowId, 0x214, 14, amount); AddMoneyLabelObject((8 * x) + 19, (8 * y) + 11); } @@ -180,7 +180,7 @@ void HideMoneyBox(void) { RemoveMoneyLabelObject(); ClearStdWindowAndFrameToTransparent(sMoneyBoxWindowId, FALSE); - CopyWindowToVram(sMoneyBoxWindowId, 2); + CopyWindowToVram(sMoneyBoxWindowId, COPYWIN_GFX); RemoveWindow(sMoneyBoxWindowId); } diff --git a/src/move_relearner.c b/src/move_relearner.c index 554f84fe9803..92d230616756 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -687,7 +687,7 @@ static void DoMoveRelearnerMain(void) ShowTeachMoveText(TRUE); } RemoveScrollArrows(); - CopyWindowToVram(3, 2); + CopyWindowToVram(3, COPYWIN_GFX); break; case MENU_STATE_TRY_OVERWRITE_MOVE: if (!gPaletteFade.active) diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 0bf65a91c803..f36995a9ce70 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -136,7 +136,7 @@ static void CB2_MysteryEventMenu(void) case 0: DrawStdFrameWithCustomTileAndPalette(0, 1, 1, 0xD); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); ShowBg(0); BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); gMain.state++; @@ -184,7 +184,7 @@ static void CB2_MysteryEventMenu(void) DrawStdFrameWithCustomTileAndPalette(1, 1, 1, 0xD); PrintMysteryMenuText(1, gText_LoadingEvent, 1, 2, 0); PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); gMain.state++; } else if (JOY_NEW(B_BUTTON)) diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index cd12e163ceba..a6d5953f99fb 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -492,7 +492,7 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) AddTextPrinterParameterized4(0, FONT_NORMAL, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); AddTextPrinterParameterized4(0, FONT_SMALL, GetStringRightAlignXOffset(FONT_SMALL, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); PutWindowTilemap(0); } @@ -540,14 +540,14 @@ void AddTextPrinterToWindow1(const u8 *str) AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(1, 0x001, 0xF); PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); } static void ClearTextWindow(void) { rbox_fill_rectangle(1); ClearWindowTilemap(1); - CopyWindowToVram(1, 1); + CopyWindowToVram(1, COPYWIN_MAP); } #define DOWN_ARROW_X 208 @@ -649,7 +649,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi if (response != LIST_NOTHING_CHOSEN) { ClearWindowTilemap(2); - CopyWindowToVram(2, 1); + CopyWindowToVram(2, COPYWIN_MAP); } return response; } @@ -671,7 +671,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); - CopyWindowToVram(*windowId, 2); + CopyWindowToVram(*windowId, COPYWIN_GFX); PutWindowTilemap(*windowId); (*textState)++; break; @@ -693,7 +693,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); + CopyWindowToVram(*windowId, COPYWIN_MAP); RemoveWindow(*windowId); return input; } @@ -702,7 +702,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); + CopyWindowToVram(*windowId, COPYWIN_MAP); RemoveWindow(*windowId); return MENU_B_PRESSED; } @@ -728,7 +728,7 @@ static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotTos FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4); DrawTextBorderOuter(*windowId, 0x001, 0x0F); - CopyWindowToVram(*windowId, 2); + CopyWindowToVram(*windowId, COPYWIN_GFX); PutWindowTilemap(*windowId); (*textState)++; break; @@ -753,7 +753,7 @@ static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotTos *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); + CopyWindowToVram(*windowId, COPYWIN_MAP); RemoveWindow(*windowId); return input; } @@ -762,7 +762,7 @@ static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotTos *textState = 0; rbox_fill_rectangle(*windowId); ClearWindowTilemap(*windowId); - CopyWindowToVram(*windowId, 1); + CopyWindowToVram(*windowId, COPYWIN_MAP); RemoveWindow(*windowId); return LIST_CANCEL; } diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 400367b920e4..cf3a019f5371 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -479,7 +479,7 @@ static void DrawCardWindow(u8 whichWindow) } break; } - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void CreateCardSprites(void) @@ -905,8 +905,8 @@ static void DrawNewsWindows(void) sNews_TextColorTable[sWonderNewsData->gfx->bodyTextPal], 0, sWonderNewsData->bodyText[i]); - CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_TITLE], 3); - CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_BODY], 3); + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_TITLE], COPYWIN_FULL); + CopyWindowToVram(sWonderNewsData->windowIds[NEWS_WIN_BODY], COPYWIN_FULL); } static void UpdateNewsScroll(void) diff --git a/src/naming_screen.c b/src/naming_screen.c index 65629215ca0f..1d42d70631a8 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -741,7 +741,7 @@ static void DisplaySentToPCMessage(void) DrawDialogueFrame(0, 0); gTextFlags.canABSpeedUpPrint = TRUE; AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static bool8 MainState_WaitSentToPCMessage(void) @@ -1925,7 +1925,7 @@ static void DrawTextEntry(void) } TryDrawGenderIcon(); - CopyWindowToVram(sNamingScreen->windows[WIN_TEXT_ENTRY], 2); + CopyWindowToVram(sNamingScreen->windows[WIN_TEXT_ENTRY], COPYWIN_GFX); PutWindowTilemap(sNamingScreen->windows[WIN_TEXT_ENTRY]); } @@ -2012,7 +2012,7 @@ static void PrintControls(void) FillWindowPixelBuffer(sNamingScreen->windows[WIN_BANNER], PIXEL_FILL(15)); AddTextPrinterParameterized3(sNamingScreen->windows[WIN_BANNER], FONT_SMALL, 2, 1, color, 0, gText_MoveOkBack); PutWindowTilemap(sNamingScreen->windows[WIN_BANNER]); - CopyWindowToVram(sNamingScreen->windows[WIN_BANNER], 3); + CopyWindowToVram(sNamingScreen->windows[WIN_BANNER], COPYWIN_FULL); } static void CB2_NamingScreen(void) diff --git a/src/option_menu.c b/src/option_menu.c index d96ed1ecfae3..58d63b19b247 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -251,7 +251,7 @@ void CB2_InitOptionMenu(void) FrameType_DrawChoices(gTasks[taskId].data[TD_FRAMETYPE]); HighlightOptionMenuItem(gTasks[taskId].data[TD_MENUSELECTION]); - CopyWindowToVram(WIN_OPTIONS, 3); + CopyWindowToVram(WIN_OPTIONS, COPYWIN_FULL); gMain.state++; break; } @@ -351,7 +351,7 @@ static void Task_OptionMenuProcessInput(u8 taskId) if (sArrowPressed) { sArrowPressed = FALSE; - CopyWindowToVram(WIN_OPTIONS, 2); + CopyWindowToVram(WIN_OPTIONS, COPYWIN_GFX); } } } @@ -627,7 +627,7 @@ static void DrawTextOption(void) { FillWindowPixelBuffer(WIN_TEXT_OPTION, PIXEL_FILL(1)); AddTextPrinterParameterized(WIN_TEXT_OPTION, FONT_NORMAL, gText_Option, 8, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(WIN_TEXT_OPTION, 3); + CopyWindowToVram(WIN_TEXT_OPTION, COPYWIN_FULL); } static void DrawOptionMenuTexts(void) @@ -636,10 +636,8 @@ static void DrawOptionMenuTexts(void) FillWindowPixelBuffer(WIN_OPTIONS, PIXEL_FILL(1)); for (i = 0; i < MENUITEM_COUNT; i++) - { AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, sOptionMenuItemsNames[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); - } - CopyWindowToVram(WIN_OPTIONS, 3); + CopyWindowToVram(WIN_OPTIONS, COPYWIN_FULL); } #define TILE_TOP_CORNER_L 0x1A2 diff --git a/src/party_menu.c b/src/party_menu.c index ae55463b8c98..609d5249ff6a 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -754,7 +754,7 @@ static void RenderPartyMenuBox(u8 slot) LoadPartyBoxPalette(&sPartyMenuBoxes[slot], PARTY_PAL_NO_MON); else LoadPartyBoxPalette(&sPartyMenuBoxes[slot], PARTY_PAL_MULTI_ALT); - CopyWindowToVram(sPartyMenuBoxes[slot].windowId, 2); + CopyWindowToVram(sPartyMenuBoxes[slot].windowId, COPYWIN_GFX); PutWindowTilemap(sPartyMenuBoxes[slot].windowId); ScheduleBgCopyTilemapToVram(2); } @@ -764,7 +764,7 @@ static void RenderPartyMenuBox(u8 slot) { DrawEmptySlot(sPartyMenuBoxes[slot].windowId); LoadPartyBoxPalette(&sPartyMenuBoxes[slot], PARTY_PAL_NO_MON); - CopyWindowToVram(sPartyMenuBoxes[slot].windowId, 2); + CopyWindowToVram(sPartyMenuBoxes[slot].windowId, COPYWIN_GFX); } else { @@ -2038,7 +2038,7 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gMenuText_Confirm, 48); AddTextPrinterParameterized4(confirmWindowId, FONT_SMALL, mainOffset, 1, 0, 0, sFontColorTable[0], -1, gMenuText_Confirm); PutWindowTilemap(confirmWindowId); - CopyWindowToVram(confirmWindowId, 2); + CopyWindowToVram(confirmWindowId, COPYWIN_GFX); cancelWindowId = AddWindow(&sMultiCancelButtonWindowTemplate); offset = 0; } @@ -2061,7 +2061,7 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel2); } PutWindowTilemap(cancelWindowId); - CopyWindowToVram(cancelWindowId, 2); + CopyWindowToVram(cancelWindowId, COPYWIN_GFX); ScheduleBgCopyTilemapToVram(0); } } @@ -2354,7 +2354,7 @@ static void DisplayPartyPokemonHPBar(u16 hp, u16 maxhp, struct PartyMenuBox *men FillWindowPixelRect(menuBox->windowId, 0x0D, menuBox->infoRects->dimensions[20] + hpFraction, menuBox->infoRects->dimensions[21], menuBox->infoRects->dimensions[22] - hpFraction, 1); FillWindowPixelRect(menuBox->windowId, 0x02, menuBox->infoRects->dimensions[20] + hpFraction, menuBox->infoRects->dimensions[21] + 1, menuBox->infoRects->dimensions[22] - hpFraction, 2); } - CopyWindowToVram(menuBox->windowId, 2); + CopyWindowToVram(menuBox->windowId, COPYWIN_GFX); } static void DisplayPartyPokemonDescriptionText(u8 stringID, struct PartyMenuBox *menuBox, u8 c) @@ -4954,7 +4954,7 @@ static void DisplayLevelUpStatsPg1(u8 taskId) arrayPtr[12] = CreateLevelUpStatsWindow(); DrawLevelUpWindowPg1(arrayPtr[12], arrayPtr, &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); - CopyWindowToVram(arrayPtr[12], 2); + CopyWindowToVram(arrayPtr[12], COPYWIN_GFX); ScheduleBgCopyTilemapToVram(2); } @@ -4963,7 +4963,7 @@ static void DisplayLevelUpStatsPg2(u8 taskId) s16 *arrayPtr = sPartyMenuInternal->data; DrawLevelUpWindowPg2(arrayPtr[12], &arrayPtr[6], TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); - CopyWindowToVram(arrayPtr[12], 2); + CopyWindowToVram(arrayPtr[12], COPYWIN_GFX); ScheduleBgCopyTilemapToVram(2); } diff --git a/src/player_pc.c b/src/player_pc.c index b83ecdaba7c7..0742341ece70 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -1144,7 +1144,7 @@ static void ItemStorage_CreateListMenu(u8 taskId) text = gText_WithdrawItem; x = GetStringCenterAlignXOffset(FONT_NORMAL, text, 104); AddTextPrinterParameterized(sItemStorageMenu->windowIds[ITEMPC_WIN_TITLE], FONT_NORMAL, text, x, 1, 0, NULL); - CopyWindowToVram(sItemStorageMenu->windowIds[ITEMPC_WIN_ICON], 2); + CopyWindowToVram(sItemStorageMenu->windowIds[ITEMPC_WIN_ICON], COPYWIN_GFX); ItemStorage_CompactList(); ItemStorage_CompactCursor(); ItemStorage_RefreshListMenu(); diff --git a/src/pokeblock.c b/src/pokeblock.c index 77c22d24abcd..b5f1c92987f2 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -802,7 +802,7 @@ static void DrawPokeblockInfo(s32 pkblId) for (i = 0; i < FLAVOR_COUNT; i++) CopyToBgTilemapBufferRect(2, rectTilemapSrc, (i / 3 * 6) + 1, (i % 3 * 2) + 13, 1, 2); - CopyWindowToVram(7, 2); + CopyWindowToVram(7, COPYWIN_GFX); } ScheduleBgCopyTilemapToVram(0); diff --git a/src/pokedex.c b/src/pokedex.c index 8a85762436e1..ae4def99a3c0 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2081,7 +2081,7 @@ static bool8 LoadPokedexListPage(u8 page) InitWindows(sPokemonList_WindowTemplate); DeactivateAllTextPrinters(); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gMain.state = 1; break; case 1: @@ -2412,7 +2412,7 @@ static void CreateMonListEntry(u8 position, u16 b, u16 ignored) } break; } - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); } static void CreateMonDexNum(u16 entryNum, u8 left, u8 top, u16 unused) @@ -3248,7 +3248,7 @@ static void Task_LoadInfoScreen(u8 taskId) PutWindowTilemap(WIN_INFO); PutWindowTilemap(WIN_FOOTPRINT); DrawFootprint(WIN_FOOTPRINT, sPokedexListItem->dexNum); - CopyWindowToVram(WIN_FOOTPRINT, 2); + CopyWindowToVram(WIN_FOOTPRINT, COPYWIN_GFX); gMain.state++; break; case 2: @@ -3264,7 +3264,7 @@ static void Task_LoadInfoScreen(u8 taskId) PrintMonInfo(sPokedexListItem->dexNum, sPokedexView->dexMode == DEX_MODE_HOENN ? FALSE : TRUE, sPokedexListItem->owned, 0); if (!sPokedexListItem->owned) LoadPalette(gPlttBufferUnfaded + 1, 0x31, 0x1E); - CopyWindowToVram(WIN_INFO, 3); + CopyWindowToVram(WIN_INFO, COPYWIN_FULL); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); @@ -3594,8 +3594,8 @@ static void Task_LoadCryScreen(u8 taskId) cryMeter.yPos = 3; if (LoadCryMeter(&cryMeter, 3)) gMain.state++; - CopyWindowToVram(WIN_VU_METER, 2); - CopyWindowToVram(WIN_INFO, 3); + CopyWindowToVram(WIN_VU_METER, COPYWIN_GFX); + CopyWindowToVram(WIN_INFO, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); @@ -3780,7 +3780,7 @@ static void Task_LoadSizeScreen(u8 taskId) SetOamMatrix(2, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale); LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20); gTasks[taskId].tMonSpriteId = spriteId; - CopyWindowToVram(WIN_INFO, 3); + CopyWindowToVram(WIN_INFO, COPYWIN_FULL); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); @@ -3975,7 +3975,7 @@ static void Task_DisplayCaughtMonDexPage(u8 taskId) PutWindowTilemap(WIN_INFO); PutWindowTilemap(WIN_FOOTPRINT); DrawFootprint(WIN_FOOTPRINT, gTasks[taskId].tDexNum); - CopyWindowToVram(WIN_FOOTPRINT, 2); + CopyWindowToVram(WIN_FOOTPRINT, COPYWIN_GFX); ResetPaletteFade(); LoadPokedexBgPalette(FALSE); gTasks[taskId].tState++; @@ -3985,7 +3985,7 @@ static void Task_DisplayCaughtMonDexPage(u8 taskId) break; case 3: PrintMonInfo(dexNum, IsNationalPokedexEnabled(), 1, 1); - CopyWindowToVram(WIN_INFO, 3); + CopyWindowToVram(WIN_INFO, COPYWIN_FULL); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); gTasks[taskId].tState++; @@ -4847,7 +4847,7 @@ static void Task_LoadSearchMenu(u8 taskId) SetDefaultSearchModeAndOrder(taskId); HighlightSelectedSearchTopBarItem(SEARCH_TOPBAR_SEARCH); PrintSelectedSearchParameters(taskId); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(3); @@ -4901,7 +4901,7 @@ static void Task_SwitchToSearchMenuTopBar(u8 taskId) { HighlightSelectedSearchTopBarItem(gTasks[taskId].tTopBarItem); PrintSelectedSearchParameters(taskId); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); gTasks[taskId].func = Task_HandleSearchTopBarInput; } @@ -4940,7 +4940,7 @@ static void Task_HandleSearchTopBarInput(u8 taskId) PlaySE(SE_DEX_PAGE); gTasks[taskId].tTopBarItem--; HighlightSelectedSearchTopBarItem(gTasks[taskId].tTopBarItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } if (JOY_NEW(DPAD_RIGHT) && gTasks[taskId].tTopBarItem < SEARCH_TOPBAR_CANCEL) @@ -4948,7 +4948,7 @@ static void Task_HandleSearchTopBarInput(u8 taskId) PlaySE(SE_DEX_PAGE); gTasks[taskId].tTopBarItem++; HighlightSelectedSearchTopBarItem(gTasks[taskId].tTopBarItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } } @@ -4957,7 +4957,7 @@ static void Task_SwitchToSearchMenu(u8 taskId) { HighlightSelectedSearchMenuItem(gTasks[taskId].tTopBarItem, gTasks[taskId].tMenuItem); PrintSelectedSearchParameters(taskId); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); gTasks[taskId].func = Task_HandleSearchMenuInput; } @@ -5013,7 +5013,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) EraseAndPrintSearchTextBox(gText_SearchingPleaseWait); gTasks[taskId].func = Task_StartPokedexSearch; PlaySE(SE_DEX_SEARCH); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); } } else @@ -5029,7 +5029,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][0]; HighlightSelectedSearchMenuItem(gTasks[taskId].tTopBarItem, gTasks[taskId].tMenuItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } if (JOY_NEW(DPAD_RIGHT) && movementMap[gTasks[taskId].tMenuItem][1] != 0xFF) @@ -5037,7 +5037,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][1]; HighlightSelectedSearchMenuItem(gTasks[taskId].tTopBarItem, gTasks[taskId].tMenuItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } if (JOY_NEW(DPAD_UP) && movementMap[gTasks[taskId].tMenuItem][2] != 0xFF) @@ -5045,7 +5045,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][2]; HighlightSelectedSearchMenuItem(gTasks[taskId].tTopBarItem, gTasks[taskId].tMenuItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } if (JOY_NEW(DPAD_DOWN) && movementMap[gTasks[taskId].tMenuItem][3] != 0xFF) @@ -5053,7 +5053,7 @@ static void Task_HandleSearchMenuInput(u8 taskId) PlaySE(SE_SELECT); gTasks[taskId].tMenuItem = movementMap[gTasks[taskId].tMenuItem][3]; HighlightSelectedSearchMenuItem(gTasks[taskId].tTopBarItem, gTasks[taskId].tMenuItem); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } } @@ -5086,7 +5086,7 @@ static void Task_WaitAndCompleteSearch(u8 taskId) EraseAndPrintSearchTextBox(gText_NoMatchingPkmnWereFound); } gTasks[taskId].func = Task_SearchCompleteWaitForInput; - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); } } @@ -5126,7 +5126,7 @@ static void Task_SelectSearchMenuItem(u8 taskId) PrintSearchParameterText(taskId); PrintSelectorArrow(*cursorPos); gTasks[taskId].func = Task_HandleSearchParameterInput; - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); } @@ -5151,7 +5151,7 @@ static void Task_HandleSearchParameterInput(u8 taskId) ClearSearchParameterBoxText(); DrawOrEraseSearchParameterBox(TRUE); gTasks[taskId].func = Task_SwitchToSearchMenu; - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); return; } @@ -5163,7 +5163,7 @@ static void Task_HandleSearchParameterInput(u8 taskId) *cursorPos = gTasks[taskId].tCursorPos; *scrollOffset = gTasks[taskId].tScrollOffset; gTasks[taskId].func = Task_SwitchToSearchMenu; - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); CopyBgTilemapBufferToVram(3); return; } @@ -5190,7 +5190,7 @@ static void Task_HandleSearchParameterInput(u8 taskId) { PlaySE(SE_SELECT); EraseAndPrintSearchTextBox(texts[*cursorPos + *scrollOffset].description); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); } return; } @@ -5216,7 +5216,7 @@ static void Task_HandleSearchParameterInput(u8 taskId) { PlaySE(SE_SELECT); EraseAndPrintSearchTextBox(texts[*cursorPos + *scrollOffset].description); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); } return; } diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index 350946f3b2c6..a01c06daab89 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -432,7 +432,7 @@ static void DrawWaveformSegment(u8 position, u8 amplitude) static void DrawWaveformWindow(u8 windowId) { - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } // rsVertical is leftover from a very different version of this function in RS diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index c95a86a41af4..dd213989cb05 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3314,7 +3314,7 @@ static void Msg_WantToPlayAgain(void) case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(1, 8, 20, 2); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_WantToPlayAgain2, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; case 1: @@ -3341,7 +3341,7 @@ static void Msg_SavingDontTurnOff(void) case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 7, 26, 4); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; case 1: @@ -3366,7 +3366,7 @@ static void EraseMessage(void) { case 0: ClearMessageWindow(); - sub_8198C78(); + EraseYesNoWindow(); CopyBgTilemapBufferToVram(BG_INTERFACE); sPokemonJumpGfx->mainState++; break; @@ -3384,7 +3384,7 @@ static void Msg_SomeoneDroppedOut(void) case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 8, 22, 4); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SomeoneDroppedOut2, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; case 1: @@ -3410,7 +3410,7 @@ static void Msg_CommunicationStandby(void) case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(7, 10, 16, 2); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_CommunicationStandby4, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; case 1: @@ -3488,7 +3488,7 @@ static void PrintPrizeMessage(u16 itemId, u16 quantity) DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_AwesomeWonF701F700); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_LEVEL_UP; sPokemonJumpGfx->msgWindowState = 0; } @@ -3501,7 +3501,7 @@ static void PrintPrizeFilledBagMessage(u16 itemId) DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_FilledStorageSpace2); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; } @@ -3514,7 +3514,7 @@ static void PrintNoRoomForPrizeMessage(u16 itemId) DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_CantHoldMore); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 9, 22, 2); AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 2); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; } @@ -3558,7 +3558,7 @@ static void ClearMessageWindow(void) if (sPokemonJumpGfx->msgWindowId != WINDOW_NONE) { rbox_fill_rectangle(sPokemonJumpGfx->msgWindowId); - CopyWindowToVram(sPokemonJumpGfx->msgWindowId, 1); + CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_MAP); sPokemonJumpGfx->msgWindowState = 0; } } @@ -3858,7 +3858,7 @@ static void PrintPokeJumpPlayerName(int multiplayerId, u8 bgColor, u8 fgColor, u x = 64 - GetStringWidth(FONT_NORMAL, GetPokeJumpPlayerName(multiplayerId), -1); x /= 2; AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], FONT_NORMAL, x, 1, colors, -1, GetPokeJumpPlayerName(multiplayerId)); - CopyWindowToVram(sPokemonJumpGfx->nameWindowIds[multiplayerId], 2); + CopyWindowToVram(sPokemonJumpGfx->nameWindowIds[multiplayerId], COPYWIN_GFX); } static void PrintPokeJumpPlayerNames(bool32 highlightSelf) @@ -4176,7 +4176,7 @@ static void Task_ShowPokemonJumpRecords(u8 taskId) window.width = width; tWindowId = AddWindow(&window); PrintRecordsText(tWindowId, width); - CopyWindowToVram(tWindowId, 3); + CopyWindowToVram(tWindowId, COPYWIN_FULL); tState++; break; case 1: @@ -4187,7 +4187,7 @@ static void Task_ShowPokemonJumpRecords(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON)) { rbox_fill_rectangle(tWindowId); - CopyWindowToVram(tWindowId, 1); + CopyWindowToVram(tWindowId, COPYWIN_MAP); tState++; } break; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index ee2d9b1a79ec..f936d871191b 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1562,8 +1562,8 @@ static void Task_PCMainMenu(u8 taskId) DrawDialogueFrame(0, 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); - CopyWindowToVram(0, 3); - CopyWindowToVram(task->tWindowId, 3); + CopyWindowToVram(0, COPYWIN_FULL); + CopyWindowToVram(task->tWindowId, COPYWIN_FULL); task->tState++; break; case STATE_FADE_IN: @@ -4018,7 +4018,7 @@ static void PrintDisplayMonInfo(void) AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); } - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); if (sStorage->displayMonSpecies != SPECIES_NONE) { UpdateMonMarkingTiles(sStorage->displayMonMarkings, sStorage->markingComboTilesPtr); @@ -4322,7 +4322,7 @@ static void PrintMessage(u8 id) AddTextPrinterParameterized(1, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); ScheduleBgCopyTilemapToVram(0); } @@ -8191,7 +8191,7 @@ static bool8 MultiMove_Start(void) MultiMove_SetIconToBg(sMultiMove->fromColumn, sMultiMove->fromRow); SetBgAttribute(0, BG_ATTR_PALETTEMODE, 1); PutWindowTilemap(sStorage->multiMoveWindowId); - CopyWindowToVram8Bit(sStorage->multiMoveWindowId, 3); + CopyWindowToVram8Bit(sStorage->multiMoveWindowId, COPYWIN_FULL); BlendPalettes(0x3F00, 8, RGB_WHITE); StartCursorAnim(CURSOR_ANIM_OPEN); SetGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR); @@ -8247,7 +8247,7 @@ static bool8 MultiMove_ChangeSelection(void) MultiMove_UpdateSelectedIcons(); sMultiMove->toColumn = sMultiMove->cursorColumn; sMultiMove->toRow = sMultiMove->cursorRow; - CopyWindowToVram8Bit(sStorage->multiMoveWindowId, 2); + CopyWindowToVram8Bit(sStorage->multiMoveWindowId, COPYWIN_GFX); sMultiMove->state++; } break; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 4c5b351abc27..c83ce727f66e 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3677,7 +3677,7 @@ static void AddAndFillMoveNamesWindow(void) { u8 windowId = AddWindowFromTemplateList(sPageMovesTemplate, PSS_DATA_WINDOW_MOVE_NAMES); FillWindowPixelRect(windowId, PIXEL_FILL(0), 0, 66, 72, 16); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } static void SwapMovesNamesPP(u8 moveIndex1, u8 moveIndex2) diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index 089a56e263a4..4862fdc6f6fc 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -596,9 +596,9 @@ bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) { case 0: if (winMode) - CopyWindowToVram(structPtr->nameGenderWindowId, 3); + CopyWindowToVram(structPtr->nameGenderWindowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->nameGenderWindowId, 2); + CopyWindowToVram(structPtr->nameGenderWindowId, COPYWIN_GFX); if (IsConditionMenuSearchMode() == TRUE) { @@ -612,9 +612,9 @@ bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) } case 1: if (winMode) - CopyWindowToVram(structPtr->listIndexWindowId, 3); + CopyWindowToVram(structPtr->listIndexWindowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->listIndexWindowId, 2); + CopyWindowToVram(structPtr->listIndexWindowId, COPYWIN_GFX); structPtr->windowModeState = 0; return TRUE; @@ -628,8 +628,8 @@ void CopyUnusedConditionWindowsToVram(void) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - CopyWindowToVram(structPtr->unusedWindowId1, 3); - CopyWindowToVram(structPtr->unusedWindowId2, 3); + CopyWindowToVram(structPtr->unusedWindowId1, COPYWIN_FULL); + CopyWindowToVram(structPtr->unusedWindowId2, COPYWIN_FULL); } void sub_81CE964(struct Sprite *sprite) diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 0e5a9b7853aa..37079b171815 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -644,7 +644,7 @@ static void AddSearchResultListMenuWindow(struct PokenavSub8 *searchList) { searchList->winid = AddWindow(&sSearchResultListMenuWindowTemplate); PutWindowTilemap(searchList->winid); - CopyWindowToVram(searchList->winid, 1); + CopyWindowToVram(searchList->winid, COPYWIN_MAP); PrintSearchResultListMenuItems(searchList); } @@ -658,7 +658,7 @@ static void PrintSearchResultListMenuItems(struct PokenavSub8 *searchList) AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar2, 4, 1, 0xFF, NULL); ConvertIntToDecimalStringN(gStringVar1, r7, STR_CONV_MODE_RIGHT_ALIGN, 3); AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar1, 34, 1, 0xFF, NULL); - CopyWindowToVram(searchList->winid, 2); + CopyWindowToVram(searchList->winid, COPYWIN_GFX); } static void InitConditionSearchListMenuTemplate(void) diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 0166cc10c9ee..5936ef9d214f 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -555,7 +555,7 @@ static void InitHelpBar(void) structPtr->helpBarWindowId = 0; DrawHelpBar(structPtr->helpBarWindowId); PutWindowTilemap(structPtr->helpBarWindowId); - CopyWindowToVram(structPtr->helpBarWindowId, 3); // TODO: Use a defined constant here. + CopyWindowToVram(structPtr->helpBarWindowId, COPYWIN_FULL); } void PrintHelpBarText(u32 textId) diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 727aa3694001..e8751e0bf92f 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -942,7 +942,7 @@ static void DrawMatchCallLeftColumnWindows(struct Pokenav4Struct *state) PutWindowTilemap(state->locWindowId); FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->infoBoxWindowId); - CopyWindowToVram(state->locWindowId, 1); + CopyWindowToVram(state->locWindowId, COPYWIN_MAP); } static void UpdateMatchCallInfoBox(struct Pokenav4Struct *state) @@ -952,7 +952,7 @@ static void UpdateMatchCallInfoBox(struct Pokenav4Struct *state) PrintNumberRegistered(state->infoBoxWindowId); PrintNumberOfBattlesLabel(state->infoBoxWindowId); PrintNumberOfBattles(state->infoBoxWindowId); - CopyWindowToVram(state->infoBoxWindowId, 2); + CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); } static void PrintNumberRegisteredLabel(u16 windowId) @@ -1026,7 +1026,7 @@ static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *state) AddTextPrinterParameterized(state->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SPEED_FF, NULL); } - CopyWindowToVram(state->infoBoxWindowId, 2); + CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); } static bool32 sub_81CBFC4(struct Pokenav4Struct *state) @@ -1055,7 +1055,7 @@ static void UpdateWindowsToShowCheckPage(struct Pokenav4Struct *state) { CloseMatchCallSelectOptionsWindow(state); FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); - CopyWindowToVram(state->infoBoxWindowId, 2); + CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); } static void sub_81CC034(struct Pokenav4Struct *state) @@ -1072,7 +1072,7 @@ static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state) DrawMatchCallTextBoxBorder(state->msgBoxWindowId, 1, 4); FillWindowPixelBuffer(state->msgBoxWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->msgBoxWindowId); - CopyWindowToVram(state->msgBoxWindowId, 3); + CopyWindowToVram(state->msgBoxWindowId, COPYWIN_FULL); sprite = PauseSpinningPokenavSprite(); sprite->x = 24; sprite->y = 112; @@ -1085,7 +1085,7 @@ static void DrawMsgBoxForCloseByMsg(struct Pokenav4Struct *state) DrawTextBorderOuter(state->msgBoxWindowId, 1, 4); FillWindowPixelBuffer(state->msgBoxWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->msgBoxWindowId); - CopyWindowToVram(state->msgBoxWindowId, 3); + CopyWindowToVram(state->msgBoxWindowId, COPYWIN_FULL); } static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav4Struct *state) diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index dc3be8181302..b8e543c67e6f 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -184,7 +184,7 @@ void sub_81C835C(struct PokenavListMenuWindow *listWindow) { FillWindowPixelBuffer(listWindow->windowId, PIXEL_FILL(1)); PutWindowTilemap(listWindow->windowId); - CopyWindowToVram(listWindow->windowId, 1); + CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } void sub_81C837C(struct MatchCallWindowState *state, struct PokenavSub17Substruct *a1) @@ -232,9 +232,9 @@ u32 LoopedTask_sub_81C83F0(s32 state) if (++structPtr->listWindow.unkC >= structPtr->listWindow.unkE) { if (structPtr->unk38 != NULL) - CopyWindowToVram(structPtr->listWindow.windowId, 3); + CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->listWindow.windowId, 2); + CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_GFX); return LT_INC_AND_PAUSE; } else @@ -495,7 +495,7 @@ void sub_81C8838(void) struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); struct MatchCallWindowState *subPtr = &structPtr->unk888; structPtr->list.unk38(structPtr->list.listWindow.windowId, subPtr->windowTopIndex + subPtr->selectedIndexOffset, (structPtr->list.listWindow.unkA + subPtr->selectedIndexOffset) & 0xF); - CopyWindowToVram(structPtr->list.listWindow.windowId, 1); + CopyWindowToVram(structPtr->list.listWindow.windowId, COPYWIN_MAP); } // TODO: @@ -673,7 +673,7 @@ void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) if (a1 + a2 <= 16) { CpuFastFill8(PIXEL_FILL(1), v1 + a1 * v2, a2 * v2); - CopyWindowToVram(listWindow->windowId, 2); + CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } else { @@ -682,13 +682,13 @@ void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) CpuFastFill8(PIXEL_FILL(1), v1 + a1 * v2, v3 * v2); CpuFastFill8(PIXEL_FILL(1), v1, v4 * v2); - CopyWindowToVram(listWindow->windowId, 2); + CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } for (a2--; a2 != -1; a1 = (a1 + 1) & 0xF, a2--) ClearRematchPokeballIcon(listWindow->windowId, a1); - CopyWindowToVram(listWindow->windowId, 1); + CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } void sub_81C8C64(struct PokenavListMenuWindow *listWindow, u32 a1) @@ -715,7 +715,7 @@ void sub_81C8CB4(struct MatchCallWindowState *state, struct PokenavSub17Substruc FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(4), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SPEED_FF, list->unkTextBuffer); sub_81C8C64(&list->listWindow, 1); - CopyWindowRectToVram(list->listWindow.windowId, 3, 0, list->listWindow.unkA * 2, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_FULL, 0, list->listWindow.unkA * 2, list->listWindow.unk4, 2); } void sub_81C8D4C(struct MatchCallWindowState *state, struct PokenavSub17Substruct *list) @@ -724,7 +724,7 @@ void sub_81C8D4C(struct MatchCallWindowState *state, struct PokenavSub17Substruc FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->unkTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SPEED_FF, NULL); sub_81C8C64(&list->listWindow, 0); - CopyWindowToVram(list->listWindow.windowId, 3); + CopyWindowToVram(list->listWindow.windowId, COPYWIN_FULL); } void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) @@ -735,7 +735,7 @@ void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, top << 4, list->listWindow.unk4, 16); AddTextPrinterParameterized3(list->listWindow.windowId, FONT_NARROW, 2, (top << 4) + 1, colors, -1, fieldNames[fieldId]); - CopyWindowRectToVram(list->listWindow.windowId, 2, 0, top << 1, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.unk4, 2); } static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) @@ -756,7 +756,7 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok { sub_81DB620(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SPEED_FF, NULL); - CopyWindowRectToVram(list->listWindow.windowId, 2, 0, r6 * 2, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, r6 * 2, list->listWindow.unk4, 2); } } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index ded4c70077e7..10b6703da38d 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -1125,7 +1125,7 @@ static void AddOptionDescriptionWindow(void) ptr->optionDescWindowId = AddWindow(&sOptionDescWindowTemplate); PutWindowTilemap(ptr->optionDescWindowId); FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - CopyWindowToVram(ptr->optionDescWindowId, 3); + CopyWindowToVram(ptr->optionDescWindowId, COPYWIN_FULL); } static void PrintCurrentOptionDescription(void) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 07788a5d3022..8da5ddc9081b 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -511,7 +511,7 @@ static void LoadPokenavRegionMapGfx(struct Pokenav5Struct_2 *state) DecompressAndCopyTileDataToVram(1, sRegionMapCityZoomTiles_Gfx, 0, 0, 0); FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->infoWindowId); - CopyWindowToVram(state->infoWindowId, 3); + CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); CopyPaletteIntoBufferUnfaded(sMapSecInfoWindow_Pal, 0x10, 0x20); CopyPaletteIntoBufferUnfaded(gRegionMapCityZoomTiles_Pal, 0x30, 0x20); if (!IsRegionMapZoomed()) @@ -537,7 +537,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); DrawCityMap(state, regionMap->mapSecId, regionMap->posWithinMapSec); - CopyWindowToVram(state->infoWindowId, 3); + CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(FALSE); break; case MAPSECTYPE_CITY_CANTFLY: @@ -545,7 +545,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); FillBgTilemapBufferRect(1, 0x1041, 17, 6, 12, 11, 17); - CopyWindowToVram(state->infoWindowId, 3); + CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(TRUE); break; case MAPSECTYPE_ROUTE: @@ -554,7 +554,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) PutWindowTilemap(state->infoWindowId); AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); PrintLandmarkNames(state, regionMap->mapSecId, regionMap->posWithinMapSec); - CopyWindowToVram(state->infoWindowId, 3); + CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(TRUE); break; case MAPSECTYPE_NONE: diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index 3d8611a4a43c..8f7e27fe103a 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -652,7 +652,7 @@ static void AddRibbonsMonListWindow(struct PokenavSub10 *monMenu) PutWindowTilemap(monMenu->winid); r2 = GetRibbonsMonListCount(); sub_81D02B0(monMenu->winid, 0, r2); - CopyWindowToVram(monMenu->winid, 1); + CopyWindowToVram(monMenu->winid, COPYWIN_MAP); sub_81D0288(monMenu); } @@ -661,7 +661,7 @@ static void sub_81D0288(struct PokenavSub10 *monMenu) s32 r4 = GetSelectedPokenavListIndex(); s32 r2 = GetRibbonsMonListCount(); sub_81D02B0(monMenu->winid, r4 + 1, r2); - CopyWindowToVram(monMenu->winid, 2); + CopyWindowToVram(monMenu->winid, COPYWIN_GFX); } static void sub_81D02B0(s32 windowId, s32 val1, s32 val2) diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index 75d9f5bd0076..c8c63f01785e 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -810,7 +810,7 @@ static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_RibbonsF700); FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, -1, gStringVar4); - CopyWindowToVram(structPtr->ribbonCountWindowId, 2); + CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); } static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) @@ -843,7 +843,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, -1, gGiftRibbonDescriptionPointers[ribbonId][i]); } - CopyWindowToVram(structPtr->ribbonCountWindowId, 2); + CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); } static const struct WindowTemplate sRibbonSummaryMonNameWindowTemplate = @@ -897,7 +897,7 @@ static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) *(txtPtr++) = CHAR_LV_2; ConvertIntToDecimalStringN(txtPtr, level, STR_CONV_MODE_LEFT_ALIGN, 3); AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, 60, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } static const struct WindowTemplate sRibbonMonListIndexWindowTemplate[] = @@ -934,7 +934,7 @@ static void PrintRibbonsMonListIndex(struct PokenavSub14 *structPtr) ConvertIntToDecimalStringN(txtPtr, count, STR_CONV_MODE_RIGHT_ALIGN, 3); x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar1, 56); AddTextPrinterParameterized(structPtr->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(structPtr->listIdxWindowId, 2); + CopyWindowToVram(structPtr->listIdxWindowId, COPYWIN_GFX); } static void ResetSpritesAndDrawMonFrontPic(struct PokenavSub14 *structPtr) diff --git a/src/record_mixing.c b/src/record_mixing.c index 2197d8542110..f308e5b3dff5 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -287,7 +287,7 @@ static void PrintTextOnRecordMixing(const u8 *src) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, src, 0, 1, 0, NULL); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } #define tCounter data[0] diff --git a/src/region_map.c b/src/region_map.c index 46539205b45e..021ef7c710e1 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1819,7 +1819,7 @@ static void DrawFlyDestTextWindow(void) DrawStdFrameWithCustomTileAndPalette(0, FALSE, 101, 13); } FillWindowPixelBuffer(0, PIXEL_FILL(1)); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); ScheduleBgCopyTilemapToVram(0); sDrawFlyDestTextWindow = FALSE; } diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index 5fe1a6013bc0..da434482e8fd 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -493,7 +493,7 @@ static void Task_ResetRtc_HandleInput(u8 taskId) { PlaySE(SE_SELECT); PrintTime(tWindowId, 0, 1, tDays, tHours, tMinutes, tSeconds); - CopyWindowToVram(tWindowId, 2); + CopyWindowToVram(tWindowId, COPYWIN_GFX); } } @@ -599,7 +599,7 @@ static void Task_ShowResetRtcPrompt(u8 taskId) gSaveBlock2Ptr->lastBerryTreeUpdate.seconds); ShowMessage(gText_ResetRTCConfirmCancel); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); ScheduleBgCopyTilemapToVram(0); tState++; case 1: diff --git a/src/roulette.c b/src/roulette.c index 29a8f779add9..7e43f5db3974 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1224,7 +1224,7 @@ static void CB2_LoadRoulette(void) DrawGridBackground(SELECTION_NONE); DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ControlsInstruction, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); gSpriteCoordOffsetX = -60; gSpriteCoordOffsetY = 0; break; @@ -1295,7 +1295,7 @@ static void Task_AskKeepPlaying(u8 taskId) DisplayYesNoMenuDefaultYes(); DrawStdWindowFrame(sTextWindowId, 0); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_KeepPlaying, 0, 1, TEXT_SPEED_FF, 0); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); DoYesNoFuncWithChoice(taskId, &sYesNoTable_KeepPlaying); } @@ -1807,14 +1807,14 @@ static void Task_PrintSpinResult(u8 taskId) PlayFanfare(MUS_SLOTS_JACKPOT); DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_Jackpot, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); } else { PlayFanfare(MUS_SLOTS_WIN); DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ItsAHit, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); } break; case FALSE: @@ -1822,7 +1822,7 @@ static void Task_PrintSpinResult(u8 taskId) m4aSongNumStart(SE_FAILURE); DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NothingDoing, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); break; } gTasks[taskId].data[1] = 0; @@ -1867,7 +1867,7 @@ static void Task_PrintPayout(u8 taskId) StringExpandPlaceholders(gStringVar4, Roulette_Text_YouveWonXCoins); DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); gTasks[taskId].tPayout = (sRoulette->minBet * gTasks[taskId].tMultiplier); gTasks[taskId].data[7] = 0; gTasks[taskId].func = Task_GivePayout; @@ -1903,7 +1903,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) // Reached Ball 6, clear board DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_BoardWillBeCleared, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_ClearBoard, NO_DELAY, A_BUTTON | B_BUTTON); } else if (gTasks[taskId].tCoins == MAX_COINS) @@ -1911,7 +1911,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) // Player maxed out coins DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } else @@ -1925,7 +1925,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) // Player out of coins DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NoCoinsLeft, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_StopPlaying, 60, A_BUTTON | B_BUTTON); } } @@ -1950,7 +1950,7 @@ static void Task_ClearBoard(u8 taskId) { DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(sTextWindowId, 3); + CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } else @@ -3427,7 +3427,7 @@ static void Task_PrintMinBet(u8 taskId) StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_ShowMinBetYesNo; } } @@ -3446,7 +3446,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) // Special rate for Game Corner service day (only at second table) DrawStdWindowFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, Roulette_Text_SpecialRateTable, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_PrintMinBet; } else @@ -3455,7 +3455,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_ShowMinBetYesNo; } } @@ -3465,7 +3465,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) StringExpandPlaceholders(gStringVar4, Roulette_Text_NotEnoughCoins); DrawStdWindowFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_NotEnoughForMinBet; gTasks[taskId].tCoins = 0; gTasks[taskId].data[0] = 0; diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 4f037327067d..e7bdc3400abc 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -222,8 +222,8 @@ static void CB2_SaveFailedScreen(void) DrawStdFrameWithCustomTileAndPalette(sWindowIds[CLOCK_WIN_ID], FALSE, 0x214, 0xE); FillWindowPixelBuffer(sWindowIds[CLOCK_WIN_ID], PIXEL_FILL(1)); // backwards? FillWindowPixelBuffer(sWindowIds[TEXT_WIN_ID], PIXEL_FILL(1)); - CopyWindowToVram(sWindowIds[CLOCK_WIN_ID], 2); // again? - CopyWindowToVram(sWindowIds[TEXT_WIN_ID], 1); + CopyWindowToVram(sWindowIds[CLOCK_WIN_ID], COPYWIN_GFX); // again? + CopyWindowToVram(sWindowIds[TEXT_WIN_ID], COPYWIN_MAP); SaveFailedScreenTextPrint(gText_SaveFailedCheckingBackup, 1, 0); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(1); diff --git a/src/scrcmd.c b/src/scrcmd.c index a6223bdf515b..ce312a563c14 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1533,7 +1533,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) PutWindowTilemap(gBrailleWindowId); FillWindowPixelBuffer(gBrailleWindowId, PIXEL_FILL(1)); AddTextPrinterParameterized(gBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, 0xFF, 0x0); - CopyWindowToVram(gBrailleWindowId, 3); + CopyWindowToVram(gBrailleWindowId, COPYWIN_FULL); return FALSE; } diff --git a/src/script_menu.c b/src/script_menu.c index f0dccd9f98ac..30aa4a0635be 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -280,7 +280,7 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignore SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, 0); PrintMenuGridTable(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, sMultichoiceLists[multichoiceId].list); InitMenuActionGrid(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, 0); - CopyWindowToVram(gTasks[taskId].tWindowId, 3); + CopyWindowToVram(gTasks[taskId].tWindowId, COPYWIN_FULL); return TRUE; } } @@ -373,7 +373,7 @@ static void CreatePCMultichoice(void) StringExpandPlaceholders(gStringVar4, gText_PlayersPC); PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, numChoices, 0); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC); } @@ -533,7 +533,7 @@ static void CreateLilycoveSSTidalMultichoice(void) } InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, count - 1); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, count, windowId, MULTI_SSTIDAL_LILYCOVE); } } @@ -698,7 +698,7 @@ static void CreateStartMenuForPokenavTutorial(void) AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); sub_81983AC(windowId, FONT_NORMAL, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); InitMultichoiceNoWrap(FALSE, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), windowId, MULTI_FORCED_START_MENU); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } #define tWindowId data[6] diff --git a/src/shop.c b/src/shop.c index 817146d7859c..43b7816f51b0 100755 --- a/src/shop.c +++ b/src/shop.c @@ -303,7 +303,7 @@ static u8 CreateShopMenu(u8 martType) PrintMenuTable(sMartInfo.windowId, numMenuItems, sMartInfo.menuActions); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sMartInfo.windowId, numMenuItems, 0); PutWindowTilemap(sMartInfo.windowId); - CopyWindowToVram(sMartInfo.windowId, 1); + CopyWindowToVram(sMartInfo.windowId, COPYWIN_MAP); return CreateTask(Task_ShopMenu, 8); } diff --git a/src/slot_machine.c b/src/slot_machine.c index 7d4610273632..1c21f230d3a9 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1254,7 +1254,7 @@ static bool8 SlotAction_PrintMsg_Need3Coins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouDontHaveThreeCoins, 0, 1, 0, 0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NEED_3_COINS; return FALSE; } @@ -1519,7 +1519,7 @@ static bool8 SlotAction_AskQuit(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_QuitTheGame, 0, 1, 0, 0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); CreateYesNoMenuParameterized(0x15, 7, 0x214, 0x180, 0xE, 0xF); sSlotMachine->state = SLOT_ACTION_HANDLE_QUIT_INPUT; return FALSE; @@ -1551,7 +1551,7 @@ static bool8 SlotAction_PrintMsg_9999Coins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveGot9999Coins, 0, 1, 0, 0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_MAX_COINS; return FALSE; } @@ -1572,7 +1572,7 @@ static bool8 SlotAction_PrintMsg_NoMoreCoins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveRunOutOfCoins, 0, 1, 0, 0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NO_MORE_COINS; return FALSE; } @@ -3445,7 +3445,7 @@ static void InfoBox_DrawWindow(struct Task *task) static void InfoBox_AddText(struct Task *task) { AddTextPrinterParameterized3(1, FONT_NORMAL, 2, 5, sColors_ReeltimeHelp, 0, gText_ReelTimeHelp); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(0, 0, 0)); task->tState++; } @@ -3456,7 +3456,7 @@ static void InfoBox_AwaitPlayerInput(struct Task *task) { FillWindowPixelBuffer(1, PIXEL_FILL(0)); ClearWindowTilemap(1); - CopyWindowToVram(1, 1); + CopyWindowToVram(1, COPYWIN_MAP); RemoveWindow(1); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB(0, 0, 0)); task->tState++; diff --git a/src/start_menu.c b/src/start_menu.c index a9d3ce15b1aa..1c0b006e6288 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -387,7 +387,7 @@ static void ShowSafariBallsWindow(void) ConvertIntToDecimalStringN(gStringVar1, gNumSafariBalls, STR_CONV_MODE_RIGHT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_SafariBallStock); AddTextPrinterParameterized(sSafariBallsWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); - CopyWindowToVram(sSafariBallsWindowId, 2); + CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX); } static void ShowPyramidFloorWindow(void) @@ -402,7 +402,7 @@ static void ShowPyramidFloorWindow(void) StringCopy(gStringVar1, sPyramidFloorNames[gSaveBlock2Ptr->frontier.curChallengeBattleNum]); StringExpandPlaceholders(gStringVar4, gText_BattlePyramidFloor); AddTextPrinterParameterized(sBattlePyramidFloorWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); - CopyWindowToVram(sBattlePyramidFloorWindowId, 2); + CopyWindowToVram(sBattlePyramidFloorWindowId, COPYWIN_GFX); } static void RemoveExtraStartMenuWindows(void) @@ -410,7 +410,7 @@ static void RemoveExtraStartMenuWindows(void) if (GetSafariZoneFlag()) { ClearStdWindowAndFrameToTransparent(sSafariBallsWindowId, FALSE); - CopyWindowToVram(sSafariBallsWindowId, 2); + CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX); RemoveWindow(sSafariBallsWindowId); } if (InBattlePyramid()) @@ -483,7 +483,7 @@ static bool32 InitStartMenuStep(void) break; case 5: sStartMenuCursorPos = sub_81983AC(GetStartMenuWindowId(), FONT_NORMAL, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); - CopyWindowToVram(GetStartMenuWindowId(), TRUE); + CopyWindowToVram(GetStartMenuWindowId(), COPYWIN_MAP); return TRUE; } @@ -1247,7 +1247,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) TEXT_COLOR_LIGHT_GRAY); DrawTextBorderOuter(0, 8, 14); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); if (gWirelessCommType != 0 && InUnionRoom()) @@ -1363,7 +1363,7 @@ static void ShowSaveInfoWindow(void) xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); - CopyWindowToVram(sSaveInfoWindowId, 2); + CopyWindowToVram(sSaveInfoWindowId, COPYWIN_GFX); } static void RemoveSaveInfoWindow(void) diff --git a/src/trade.c b/src/trade.c index 475b82d5ee8a..5716fdd84d82 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1397,7 +1397,7 @@ static void TradeMenuProcessInput(void) PrintMenuTable(1, ARRAY_COUNT(sSelectTradeMonActions), sSelectTradeMonActions); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(1, 2, 0); PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_SELECTED_MON; } // Cursor is in partner's party @@ -1584,7 +1584,7 @@ static void RestoreNicknamesCoveredByYesNo(void) for (i = 0; i < sTradeMenuData->partyCounts[1] - 4; i++) { PutWindowTilemap(i + 12); - CopyWindowToVram(i + 12, 1); + CopyWindowToVram(i + 12, COPYWIN_MAP); } } @@ -1855,9 +1855,9 @@ static void DrawTradeMenuParty(u8 whichParty) BufferTradeMonMoves(movesString, selectedMonParty, partyIdx); AddTextPrinterParameterized4((whichParty * 2) + 15, FONT_NORMAL, 0, 0, 0, 0, sTradeTextColors, 0, movesString); PutWindowTilemap((whichParty * 2) + 14); - CopyWindowToVram((whichParty * 2) + 14, 3); + CopyWindowToVram((whichParty * 2) + 14, COPYWIN_FULL); PutWindowTilemap((whichParty * 2) + 15); - CopyWindowToVram((whichParty * 2) + 15, 3); + CopyWindowToVram((whichParty * 2) + 15, COPYWIN_FULL); sTradeMenuData->drawPartyState[whichParty]++; break; case 4: @@ -1929,7 +1929,7 @@ static void PrintMonNicknameForTradeMenu(u8 whichParty, u8 windowId, u8 *nicknam xPos = GetStringCenterAlignXOffset(FONT_SMALL, nickname, 64); AddTextPrinterParameterized3(windowId, FONT_SMALL, xPos, 4, sTradeTextColors, 0, nickname); PutWindowTilemap(windowId); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void PrintPartyNicknamesForTradeMenu(u8 whichParty) @@ -2156,7 +2156,7 @@ static void PrintTradeMessage(u8 messageId) AddTextPrinterParameterized(0, FONT_NORMAL, sTradeMessages[messageId], 0, 1, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(0, 20, 12); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static bool8 LoadTradeMenuSpriteSheetsAndPalettes(void) @@ -2899,7 +2899,7 @@ void LinkTradeDrawWindow(void) { FillWindowPixelBuffer(0, PIXEL_FILL(15)); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void InitTradeBgInternal(void) @@ -2976,7 +2976,7 @@ static void CB2_InGameTrade(void) LoadTradeMonPic(TRADE_PARTNER, 1); FillWindowPixelBuffer(0, PIXEL_FILL(15)); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); gMain.state++; break; case 9: @@ -3433,7 +3433,7 @@ static bool8 AnimateTradeSequenceCable(void) { SetTradeSequenceBgGpuRegs(4); FillWindowPixelBuffer(0, PIXEL_FILL(15)); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sTradeData->state++; } break; @@ -3904,7 +3904,7 @@ static bool8 AnimateTradeSequenceWireless(void) { SetTradeSequenceBgGpuRegs(4); FillWindowPixelBuffer(0, PIXEL_FILL(15)); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sTradeData->state++; } break; @@ -4834,7 +4834,7 @@ void DrawTextOnTradeWindow(u8 windowId, const u8 *str, u8 speed) sTradeData->textColors[1] = TEXT_COLOR_WHITE; sTradeData->textColors[2] = TEXT_COLOR_GREEN; AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, sTradeData->textColors, speed, str); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } #define idx data[0] diff --git a/src/trainer_card.c b/src/trainer_card.c index a2c90e867f51..b72e454985a0 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -498,7 +498,7 @@ static void Task_TrainerCard(u8 taskId) SetCloseLinkCallback(); DrawDialogueFrame(0, 1); AddTextPrinterParameterized(0, FONT_NORMAL, gText_WaitingTrainerFinishReading, 0, 1, 255, 0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); sData->mainState = STATE_CLOSE_CARD_LINK; break; case STATE_CLOSE_CARD_LINK: @@ -1408,7 +1408,7 @@ static void LoadStickerGfx(void) static void DrawTrainerCardWindow(u8 windowId) { PutWindowTilemap(windowId); - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static u8 SetCardBgsAndPals(void) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 621f81133672..f0a633729389 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -614,7 +614,7 @@ void PrintOnTrainerHillRecordsWindow(void) } PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); FreeDataStruct(); } diff --git a/src/union_room.c b/src/union_room.c index 5196c1cdb2c3..a2fbd382def4 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -306,7 +306,7 @@ static void PrintNumPlayersWaitingForMsg(u8 windowId, u8 capacityCode, u8 string break; } - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); } static void PrintPlayerNameAndIdOnWindow(u8 windowId) @@ -434,7 +434,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_BButtonCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); - CopyWindowToVram(data->bButtonCancelWindowId, 2); + CopyWindowToVram(data->bButtonCancelWindowId, COPYWIN_GFX); DrawStdWindowFrame(data->listWindowId, FALSE); gMultiuseListMenuTemplate = sListMenuTemplate_PossibleGroupMembers; @@ -443,7 +443,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) DrawStdWindowFrame(data->nPlayerModeWindowId, FALSE); PutWindowTilemap(data->nPlayerModeWindowId); - CopyWindowToVram(data->nPlayerModeWindowId, 2); + CopyWindowToVram(data->nPlayerModeWindowId, COPYWIN_GFX); CopyBgTilemapBufferToVram(0); data->playerCount = 1; @@ -1014,7 +1014,7 @@ static void Task_TryJoinLinkGroup(u8 taskId) FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_ChooseJoinCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); - CopyWindowToVram(data->bButtonCancelWindowId, 2); + CopyWindowToVram(data->bButtonCancelWindowId, COPYWIN_GFX); DrawStdWindowFrame(data->listWindowId, FALSE); gMultiuseListMenuTemplate = sListMenuTemplate_UnionRoomGroups; @@ -1024,7 +1024,7 @@ static void Task_TryJoinLinkGroup(u8 taskId) DrawStdWindowFrame(data->playerNameAndIdWindowId, FALSE); PutWindowTilemap(data->playerNameAndIdWindowId); PrintPlayerNameAndIdOnWindow(data->playerNameAndIdWindowId); - CopyWindowToVram(data->playerNameAndIdWindowId, 2); + CopyWindowToVram(data->playerNameAndIdWindowId, COPYWIN_GFX); CopyBgTilemapBufferToVram(0); data->leaderId = 0; @@ -2131,7 +2131,7 @@ static void Task_CardOrNewsWithFriend(u8 taskId) FillWindowPixelBuffer(data->playerNameAndIdWindowId, PIXEL_FILL(1)); PutWindowTilemap(data->playerNameAndIdWindowId); PrintPlayerNameAndIdOnWindow(data->playerNameAndIdWindowId); - CopyWindowToVram(data->playerNameAndIdWindowId, 2); + CopyWindowToVram(data->playerNameAndIdWindowId, COPYWIN_GFX); CopyBgTilemapBufferToVram(0); data->leaderId = 0; @@ -3637,7 +3637,7 @@ static s8 UnionRoomHandleYesNo(u8 *state, bool32 noDraw) case 1: if (noDraw) { - sub_8198C78(); + EraseYesNoWindow(); *state = 0; return -3; } @@ -3658,7 +3658,7 @@ static u8 CreateTradeBoardWindow(const struct WindowTemplate * template) DrawStdWindowFrame(windowId, FALSE); FillWindowPixelBuffer(windowId, PIXEL_FILL(15)); PrintUnionRoomText(windowId, 1, sText_NameWantedOfferLv, 8, 1, UR_COLOR_TRADE_BOARD_OTHER); - CopyWindowToVram(windowId, 2); + CopyWindowToVram(windowId, COPYWIN_GFX); PutWindowTilemap(windowId); return windowId; } @@ -3689,7 +3689,7 @@ static s32 ListMenuHandler_AllItemsAvailable(u8 *state, u8 *windowId, u8 *listMe gMultiuseListMenuTemplate = *menuTemplate; gMultiuseListMenuTemplate.windowId = *windowId; *listMenuId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0); - CopyWindowToVram(*windowId, TRUE); + CopyWindowToVram(*windowId, COPYWIN_MAP); (*state)++; break; case 1: @@ -3736,7 +3736,7 @@ static s32 TradeBoardMenuHandler(u8 *state, u8 *mainWindowId, u8 *listMenuId, u8 (*state)++; break; case 1: - CopyWindowToVram(*mainWindowId, TRUE); + CopyWindowToVram(*mainWindowId, COPYWIN_MAP); (*state)++; break; case 2: diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 6c4dfc268e77..1ec8be77b5b0 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -89,7 +89,7 @@ static bool32 PrintUnionRoomBattleMessage(s16 * state, const u8 * str, s32 speed DrawTextBorderOuter(0, 0x001, 0xD); AddTextPrinterForUnionRoomBattle(0, str, 0, 1, speed); PutWindowTilemap(0); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); (*state)++; break; case 1: diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 90a9cda48087..96c2aa886239 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2276,7 +2276,7 @@ static bool32 Display_ShowKeyboardSwapMenu(u8 *state) { case 0: ShowKeyboardSwapMenu(); - CopyWindowToVram(3, 3); + CopyWindowToVram(3, COPYWIN_FULL); break; case 1: return IsDma3ManagerBusyWithBgCopy(); @@ -2292,7 +2292,7 @@ static bool32 Display_HideKeyboardSwapMenu(u8 *state) { case 0: HideKeyboardSwapMenu(); - CopyWindowToVram(3, 3); + CopyWindowToVram(3, COPYWIN_FULL); break; case 1: return IsDma3ManagerBusyWithBgCopy(); @@ -2312,7 +2312,7 @@ static bool32 Display_SwitchPages(u8 *state) return TRUE; PrintCurrentKeyboardPage(); - CopyWindowToVram(2, 2); + CopyWindowToVram(2, COPYWIN_GFX); break; case 1: if (IsDma3ManagerBusyWithBgCopy()) @@ -2345,7 +2345,7 @@ static bool32 Display_AskQuitChatting(u8 *state) case 0: AddStdMessageWindow(STDMESSAGE_QUIT_CHATTING, 0); AddYesNoMenuAt(23, 11, 1); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); break; case 1: return IsDma3ManagerBusyWithBgCopy(); @@ -2389,7 +2389,7 @@ static bool32 Display_UpdateMessageBuffer(u8 *state) FillTextEntryWindow(x, width, 0); str = GetMessageEntryBuffer(); DrawTextEntryMessage(0, str, 3, 1, 2); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); break; case 1: if (!IsDma3ManagerBusyWithBgCopy()) @@ -2418,13 +2418,13 @@ static bool32 Display_AskRegisterText(u8 *state) length = StringLength_Multibyte(str); FillTextEntryWindow(x, length, PIXEL_FILL(6)); DrawTextEntryMessage(x, str, 0, 4, 5); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); break; case 1: if (!IsDma3ManagerBusyWithBgCopy()) { AddStdMessageWindow(STDMESSAGE_REGISTER_WHERE, 16); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); } else { @@ -2459,13 +2459,13 @@ static bool32 Display_CancelRegister(u8 *state) length = StringLength_Multibyte(str); FillTextEntryWindow(x, length, PIXEL_FILL(0)); DrawTextEntryMessage(x, str, 3, 1, 2); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); break; case 1: if (!IsDma3ManagerBusyWithBgCopy()) { HideStdMessageWindow(); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); } else { @@ -2497,7 +2497,7 @@ static bool32 Display_ReturnToKeyboard(u8 *state) { case 0: PrintCurrentKeyboardPage(); - CopyWindowToVram(2, 2); + CopyWindowToVram(2, COPYWIN_GFX); (*state)++; break; case 1: @@ -2523,7 +2523,7 @@ static bool32 Display_ScrollChat(u8 *state) str = GetLastReceivedMessage(); colorIdx = GetReceivedPlayerIndex(); PrintChatMessage(row, str, colorIdx); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); break; case 1: if (IsDma3ManagerBusyWithBgCopy()) @@ -2543,7 +2543,7 @@ static bool32 Display_ScrollChat(u8 *state) // fall through case 2: ScrollWindow(0, 0, 5, PIXEL_FILL(1)); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); sDisplay->scrollCount++; (*state)++; // fall through @@ -2588,7 +2588,7 @@ static bool32 Display_PrintInputText(u8 *state) { case 0: AddStdMessageWindow(STDMESSAGE_INPUT_TEXT, 16); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2604,7 +2604,7 @@ static bool32 Display_PrintExitingChat(u8 *state) { case 0: AddStdMessageWindow(STDMESSAGE_EXITING_CHAT, 0); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2625,7 +2625,7 @@ static bool32 Display_PrintLeaderLeft(u8 *state) str = GetChatHostName(); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, str); AddStdMessageWindow(STDMESSAGE_LEADER_LEFT, 0); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2642,7 +2642,7 @@ static bool32 Display_AskSave(u8 *state) case 0: AddStdMessageWindow(STDMESSAGE_ASK_SAVE, 0); AddYesNoMenuAt(23, 10, 1); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2659,7 +2659,7 @@ static bool32 Display_AskOverwriteSave(u8 *state) case 0: AddStdMessageWindow(STDMESSAGE_ASK_OVERWRITE, 0); AddYesNoMenuAt(23, 10, 1); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2675,7 +2675,7 @@ static bool32 Display_PrintSavingDontTurnOff(u8 *state) { case 0: AddStdMessageWindow(STDMESSAGE_SAVING_NO_OFF, 0); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2693,7 +2693,7 @@ static bool32 Display_PrintSavedTheGame(u8 *state) DynamicPlaceholderTextUtil_Reset(); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gSaveBlock2Ptr->playerName); AddStdMessageWindow(STDMESSAGE_SAVED_THE_GAME, 0); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -2710,7 +2710,7 @@ static bool32 Display_AskConfirmLeaderLeave(u8 *state) case 0: AddStdMessageWindow(STDMESSAGE_WARN_LEADER_LEAVE, 0); AddYesNoMenuAt(23, 10, 1); - CopyWindowToVram(sDisplay->messageWindowId, 3); + CopyWindowToVram(sDisplay->messageWindowId, COPYWIN_FULL); (*state)++; break; case 1: @@ -3085,14 +3085,14 @@ static void LoadChatMessagesWindow(void) LoadPalette(sUnk_Palette2, 0xF0, sizeof(sUnk_Palette2)); PutWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - CopyWindowToVram(0, 3); + CopyWindowToVram(0, COPYWIN_FULL); } static void LoadKeyboardWindow(void) { PutWindowTilemap(2); PrintCurrentKeyboardPage(); - CopyWindowToVram(2, 3); + CopyWindowToVram(2, COPYWIN_FULL); } static void LoadTextEntryWindow(void) @@ -3107,7 +3107,7 @@ static void LoadTextEntryWindow(void) FillWindowPixelBuffer(1, PIXEL_FILL(0)); PutWindowTilemap(1); - CopyWindowToVram(1, 3); + CopyWindowToVram(1, COPYWIN_FULL); } static void LoadKeyboardSwapWindow(void) diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index dcfc27d916f5..e67ade342cfc 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -878,7 +878,7 @@ static void AskUsePokeblock(void) DrawTextBorderOuter(WIN_TEXT, 151, 14); AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); PutWindowTilemap(WIN_TEXT); - CopyWindowToVram(WIN_TEXT, 3); + CopyWindowToVram(WIN_TEXT, COPYWIN_FULL); CreateYesNoMenu(&sUsePokeblockYesNoWinTemplate, 151, 14, 0); } @@ -919,7 +919,7 @@ static void PrintFirstEnhancement(void) PrintMenuWindowText(gStringVar4); PutWindowTilemap(WIN_TEXT); - CopyWindowToVram(WIN_TEXT, 3); + CopyWindowToVram(WIN_TEXT, COPYWIN_FULL); } static bool8 TryPrintNextEnhancement(void) @@ -943,7 +943,7 @@ static bool8 TryPrintNextEnhancement(void) BufferEnhancedStatText(gStringVar4, sInfo->statId, sInfo->enhancements[sInfo->statId]); PrintMenuWindowText(gStringVar4); - CopyWindowToVram(WIN_TEXT, 2); + CopyWindowToVram(WIN_TEXT, COPYWIN_GFX); return TRUE; } @@ -954,14 +954,14 @@ static void PrintWontEatAnymore(void) DrawTextBorderOuter(WIN_TEXT, 151, 14); AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gText_WontEatAnymore, 0, 1, 0, NULL); PutWindowTilemap(WIN_TEXT); - CopyWindowToVram(WIN_TEXT, 3); + CopyWindowToVram(WIN_TEXT, COPYWIN_FULL); } static void EraseMenuWindow(void) { rbox_fill_rectangle(WIN_TEXT); ClearWindowTilemap(WIN_TEXT); - CopyWindowToVram(WIN_TEXT, 3); + CopyWindowToVram(WIN_TEXT, COPYWIN_FULL); } static void PrintMenuWindowText(const u8 *message) @@ -1399,13 +1399,13 @@ static void UpdateMonInfoText(u16 loadId, bool8 firstPrint) if (firstPrint) { - CopyWindowToVram(WIN_NAME, 3); - CopyWindowToVram(WIN_NATURE, 3); + CopyWindowToVram(WIN_NAME, COPYWIN_FULL); + CopyWindowToVram(WIN_NATURE, COPYWIN_FULL); } else { - CopyWindowToVram(WIN_NAME, 2); - CopyWindowToVram(WIN_NATURE, 2); + CopyWindowToVram(WIN_NAME, COPYWIN_GFX); + CopyWindowToVram(WIN_NATURE, COPYWIN_GFX); } } diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 295eab97fc9f..7a69cf6d628f 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -243,9 +243,9 @@ static void PrintHeaderTexts(void) } WCSS_AddTextPrinterParameterized(1, FONT_NORMAL, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_RED); PutWindowTilemap(0); - CopyWindowToVram(0, 2); + CopyWindowToVram(0, COPYWIN_GFX); PutWindowTilemap(1); - CopyWindowToVram(1, 2); + CopyWindowToVram(1, COPYWIN_GFX); } #define tState data[0] @@ -285,7 +285,7 @@ static void Task_WirelessCommunicationScreen(u8 taskId) WCSS_AddTextPrinterParameterized(2, FONT_NORMAL, gStringVar4, 12, 98, COLORMODE_RED); } PutWindowTilemap(2); - CopyWindowToVram(2, 3); + CopyWindowToVram(2, COPYWIN_FULL); } if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON)) { From 085f8adec62be6a1ecf7b4389148867408b30bed Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 16:06:58 -0400 Subject: [PATCH 376/762] Start remaining menu documentation --- .../{860F0B0.pal => hof_pc_topbar.pal} | 0 .../menu.png => interface/menu_info.png} | Bin .../menu1.pal => interface/menu_info1.pal} | 0 .../menu2.pal => interface/menu_info2.pal} | 0 .../menu3.pal => interface/menu_info3.pal} | 0 include/graphics.h | 8 +- include/menu.h | 19 +- src/apprentice.c | 2 +- src/battle_pyramid_bag.c | 2 +- src/cable_club.c | 2 +- src/decoration.c | 6 +- src/graphics.c | 8 +- src/hall_of_fame.c | 11 +- src/item_menu.c | 2 +- src/main_menu.c | 2 +- src/mauville_old_man.c | 2 +- src/menu.c | 214 +++++++++--------- src/party_menu.c | 4 +- src/player_pc.c | 6 +- src/pokeblock.c | 2 +- src/pokemon_storage_system.c | 4 +- src/script_menu.c | 8 +- src/secret_base.c | 2 +- src/shop.c | 2 +- src/start_menu.c | 4 +- src/trade.c | 2 +- src/trader.c | 2 +- src/union_room_chat.c | 6 +- 28 files changed, 161 insertions(+), 159 deletions(-) rename graphics/interface/{860F0B0.pal => hof_pc_topbar.pal} (100%) rename graphics/{interface_fr/menu.png => interface/menu_info.png} (100%) rename graphics/{interface_fr/menu1.pal => interface/menu_info1.pal} (100%) rename graphics/{interface_fr/menu2.pal => interface/menu_info2.pal} (100%) rename graphics/{interface_fr/menu3.pal => interface/menu_info3.pal} (100%) diff --git a/graphics/interface/860F0B0.pal b/graphics/interface/hof_pc_topbar.pal similarity index 100% rename from graphics/interface/860F0B0.pal rename to graphics/interface/hof_pc_topbar.pal diff --git a/graphics/interface_fr/menu.png b/graphics/interface/menu_info.png similarity index 100% rename from graphics/interface_fr/menu.png rename to graphics/interface/menu_info.png diff --git a/graphics/interface_fr/menu1.pal b/graphics/interface/menu_info1.pal similarity index 100% rename from graphics/interface_fr/menu1.pal rename to graphics/interface/menu_info1.pal diff --git a/graphics/interface_fr/menu2.pal b/graphics/interface/menu_info2.pal similarity index 100% rename from graphics/interface_fr/menu2.pal rename to graphics/interface/menu_info2.pal diff --git a/graphics/interface_fr/menu3.pal b/graphics/interface/menu_info3.pal similarity index 100% rename from graphics/interface_fr/menu3.pal rename to graphics/interface/menu_info3.pal diff --git a/include/graphics.h b/include/graphics.h index a58b0f0f134c..eeb8f65a30b3 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3855,10 +3855,10 @@ extern const u32 gItemIcon_ReturnToFieldArrow[]; extern const u32 gItemIconPalette_ReturnToFieldArrow[]; //menu graphics -extern const u16 gFireRedMenuElements1_Pal[16]; -extern const u16 gFireRedMenuElements2_Pal[16]; -extern const u16 gFireRedMenuElements3_Pal[16]; -extern const u8 gFireRedMenuElements_Gfx[]; +extern const u16 gMenuInfoElements1_Pal[16]; +extern const u16 gMenuInfoElements2_Pal[16]; +extern const u16 gMenuInfoElements3_Pal[16]; +extern const u8 gMenuInfoElements_Gfx[]; // item menu graphics extern const u32 gBagScreen_Gfx[]; diff --git a/include/menu.h b/include/menu.h index cc65a51dcaaf..3f9ccd721e2b 100644 --- a/include/menu.h +++ b/include/menu.h @@ -66,7 +66,7 @@ void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 ti 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 InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 windowId, u8 numItems, u8 initialCursorPos); +u8 InitMenuInUpperLeftCornerNormal(u8 windowId, u8 numItems, u8 initialCursorPos); u8 Menu_GetCursorPos(void); s8 Menu_ProcessInput(void); s8 Menu_ProcessInputNoWrap(void); @@ -85,7 +85,6 @@ void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterS void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 a2, u8 a3); void sub_81995E4(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram); -u16 sub_8198AA4(u8, u8, u8, u8, u8, u8, u16); void *malloc_and_decompress(const void *src, u32 *sizeOut); u16 copy_decompressed_tile_data_to_vram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode); void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); @@ -98,8 +97,8 @@ void ListMenuLoadStdPalAt(u8, u8); u8 Menu_MoveCursor(s8 cursorDelta); u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta); void DrawStdWindowFrame(u8 windowId, bool8 CopyToVram); -u8 sub_81979C4(u8 a1); -u8 sub_81983AC(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos); +u8 AddStartMenuWindow(u8 numActions); +u8 InitMenuNormal(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos); void sub_819786C(u8 windowId, bool8 copyToVram); void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress); void RemoveStartMenuWindow(void); @@ -111,20 +110,20 @@ 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 sub_8199D3C(void *ptr, int delta, int width, int height, bool32 is8BPP); -void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyToVram); -void sub_8197AE8(bool8 copyToVram); +void EraseFieldMessageBox(bool8 copyToVram); void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *strs); s8 Menu_ProcessInputGridLayout(void); u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, bool8 APressMuted); s8 Menu_ProcessInputNoWrapAround_other(void); void CopyToBufferFromBgTilemap(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 height); -u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile); -void sub_8198314(void); -void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram); +u8 HofPCTopBar_AddWindow(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile); +void HofPCTopBar_RemoveWindow(void); +void HofPCTopBar_Print(const u8 *string, u8 left, bool8 copyToVram); +void HofPCTopBar_PrintPair(const u8 *string, const u8 *string2, bool8 noBg, u8 left, bool8 copyToVram); void ResetBgPositions(void); void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed); void EraseYesNoWindow(void); -void PrintTextArray(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 *strs); void Menu_LoadStdPal(void); #endif // GUARD_MENU_H diff --git a/src/apprentice.c b/src/apprentice.c index 8421d4d8b25f..604891511772 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -645,7 +645,7 @@ static void CreateApprenticeMenu(u8 menu) for (i = 0; i < count; i++) AddTextPrinterParameterized(windowId, FONT_NORMAL, strings[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, 0); + InitMenuInUpperLeftCornerNormal(windowId, count, 0); CreateChooseAnswerTask(TRUE, count, windowId); } diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 7ba4c96e7a6f..fdd3f03789f0 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -979,7 +979,7 @@ static void OpenContextMenu(u8 taskId) static void PrintMenuActionText_SingleRow(u8 windowId) { AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gPyramidBagMenu->menuActionsCount, 0); + InitMenuInUpperLeftCornerNormal(windowId, gPyramidBagMenu->menuActionsCount, 0); } static void PrintMenuActionText_MultiRow(u8 windowId, u8 horizontalCount, u8 verticalCount) diff --git a/src/cable_club.c b/src/cable_club.c index ef1d9ff0d238..7d16c5b419e3 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -1078,7 +1078,7 @@ static void Task_EnterCableClubSeat(u8 taskId) case 3: // Exit, failure SetLinkWaitingForScript(); - sub_8197AE8(TRUE); + EraseFieldMessageBox(TRUE); DestroyTask(taskId); EnableBothScriptContexts(); break; diff --git a/src/decoration.c b/src/decoration.c index 52d1054c9b5d..3f93d9ccc2f9 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -557,7 +557,7 @@ static void AddDecorationActionsWindow(void) { u8 windowId = AddDecorationWindow(WINDOW_MAIN_MENU); PrintMenuTable(windowId, ARRAY_COUNT(sDecorationMainMenuActions), sDecorationMainMenuActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, ARRAY_COUNT(sDecorationMainMenuActions), sDecorationActionsCursorPos); + InitMenuInUpperLeftCornerNormal(windowId, ARRAY_COUNT(sDecorationMainMenuActions), sDecorationActionsCursorPos); } static void InitDecorationActionsWindow(void) @@ -697,7 +697,7 @@ static void InitDecorationCategoriesWindow(u8 taskId) { u8 windowId = AddDecorationWindow(WINDOW_DECORATION_CATEGORIES); PrintDecorationCategoryMenuItems(taskId); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, DECORCAT_COUNT + 1, sCurDecorationCategory); + InitMenuInUpperLeftCornerNormal(windowId, DECORCAT_COUNT + 1, sCurDecorationCategory); gTasks[taskId].func = HandleDecorationCategoriesMenuInput; } @@ -705,7 +705,7 @@ static void ReinitDecorationCategoriesWindow(u8 taskId) { FillWindowPixelBuffer(sDecorMenuWindowIds[WINDOW_DECORATION_CATEGORIES], PIXEL_FILL(1)); PrintDecorationCategoryMenuItems(taskId); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sDecorMenuWindowIds[WINDOW_DECORATION_CATEGORIES], DECORCAT_COUNT + 1, sCurDecorationCategory); + InitMenuInUpperLeftCornerNormal(sDecorMenuWindowIds[WINDOW_DECORATION_CATEGORIES], DECORCAT_COUNT + 1, sCurDecorationCategory); gTasks[taskId].func = HandleDecorationCategoriesMenuInput; } diff --git a/src/graphics.c b/src/graphics.c index b4e1dfabe07f..73825aebf3be 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1272,10 +1272,10 @@ const u32 gPokedexAreaScreenAreaUnknown_Gfx[] = INCBIN_U32("graphics/pokedex/are // seems to be fire red leftovers, but the menu elements is reused in the item menu for TM descriptions. -const u16 gFireRedMenuElements1_Pal[] = INCBIN_U16("graphics/interface_fr/menu1.gbapal"); -const u16 gFireRedMenuElements2_Pal[] = INCBIN_U16("graphics/interface_fr/menu2.gbapal"); -const u16 gFireRedMenuElements3_Pal[] = INCBIN_U16("graphics/interface_fr/menu3.gbapal"); -const u8 gFireRedMenuElements_Gfx[] = INCBIN_U8("graphics/interface_fr/menu.4bpp"); //the types are reused for item menu +const u16 gMenuInfoElements1_Pal[] = INCBIN_U16("graphics/interface/menu_info1.gbapal"); +const u16 gMenuInfoElements2_Pal[] = INCBIN_U16("graphics/interface/menu_info2.gbapal"); +const u16 gMenuInfoElements3_Pal[] = INCBIN_U16("graphics/interface/menu_info3.gbapal"); +const u8 gMenuInfoElements_Gfx[] = INCBIN_U8("graphics/interface/menu_info.4bpp"); //the types are reused for item menu const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/interface/hm.4bpp"); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 58e062d50cf7..e977828f9904 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -343,7 +343,6 @@ static const struct HallofFameMon sDummyFameMon = static const u8 sHallOfFame_SlotOrder[] = { 2, 1, 3, 6, 4, 5, - 0, 0 }; // code @@ -862,7 +861,7 @@ void CB2_DoHallOfFamePC(void) static void Task_HofPC_CopySaveData(u8 taskId) { - sub_81980F0(0, 0x1E, 0, 0xC, 0x226); + HofPCTopBar_AddWindow(0, 30, 0, 12, 0x226); if (Save_LoadGameData(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK) { gTasks[taskId].func = Task_HofPC_PrintDataIsCorrupted; @@ -950,9 +949,9 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_HOFNumber); if (gTasks[taskId].tCurrTeamNo <= 0) - sub_8198204(gStringVar4, gText_PickCancel, 0, 0, TRUE); + HofPCTopBar_PrintPair(gStringVar4, gText_PickCancel, FALSE, 0, TRUE); else - sub_8198204(gStringVar4, gText_PickNextCancel, 0, 0, TRUE); + HofPCTopBar_PrintPair(gStringVar4, gText_PickNextCancel, FALSE, 0, TRUE); gTasks[taskId].func = Task_HofPC_PrintMonInfo; } @@ -1073,7 +1072,7 @@ static void Task_HofPC_HandleExit(u8 taskId) HideBg(0); HideBg(1); HideBg(3); - sub_8198314(); + HofPCTopBar_RemoveWindow(); FreeAllWindowBuffers(); UnsetBgTilemapBuffer(1); UnsetBgTilemapBuffer(3); @@ -1091,7 +1090,7 @@ static void Task_HofPC_HandleExit(u8 taskId) static void Task_HofPC_PrintDataIsCorrupted(u8 taskId) { - sub_8198180(gText_AButtonExit, 8, TRUE); + HofPCTopBar_Print(gText_AButtonExit, 8, TRUE); DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); diff --git a/src/item_menu.c b/src/item_menu.c index 1baa3965cfc2..74e29fe873b8 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -1668,7 +1668,7 @@ static void OpenContextMenu(u8 taskId) static void PrintContextMenuItems(u8 windowId) { AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, gBagMenu->contextMenuNumItems, 0); + InitMenuInUpperLeftCornerNormal(windowId, gBagMenu->contextMenuNumItems, 0); } static void PrintContextMenuItemGrid(u8 windowId, u8 columns, u8 rows) diff --git a/src/main_menu.c b/src/main_menu.c index bd7107963e89..5a9a48d70bd3 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -2090,7 +2090,7 @@ static void NewGameBirchSpeech_ShowGenderMenu(void) DrawMainMenuWindowBorder(&gNewGameBirchSpeechTextWindows[1], 0xF3); FillWindowPixelBuffer(1, PIXEL_FILL(1)); PrintMenuTable(1, ARRAY_COUNT(sMenuActions_Gender), sMenuActions_Gender); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(1, 2, 0); + InitMenuInUpperLeftCornerNormal(1, 2, 0); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); } diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 2525e065a8b7..751e5f91c623 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -1346,7 +1346,7 @@ static void PrintStoryList(void) AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, GetStoryTitleByStat(gameStatID), 8, 16 * i + 1, 0xFF, NULL); } AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 0xFF, NULL); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sStorytellerWindowId, GetFreeStorySlot() + 1, 0); + InitMenuInUpperLeftCornerNormal(sStorytellerWindowId, GetFreeStorySlot() + 1, 0); CopyWindowToVram(sStorytellerWindowId, COPYWIN_FULL); } diff --git a/src/menu.c b/src/menu.c index 7625f113cf29..94ad65e21420 100644 --- a/src/menu.c +++ b/src/menu.c @@ -48,13 +48,24 @@ struct Menu bool8 APressMuted; }; +static u16 AddWindowParameterized(u8, u8, u8, u8, u8, u8, u16); +static void WindowFunc_DrawStandardFrame(u8, u8, u8, u8, u8, u8); +static void WindowFunc_DrawDialogueFrame(u8, u8, u8, u8, u8, u8); +static void WindowFunc_ClearStdWindowAndFrame(u8, u8, u8, u8, u8, u8); +static void WindowFunc_ClearDialogWindowAndFrame(u8, u8, u8, u8, u8, u8); +static void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); +static void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8, u8, u8, u8, u8, u8); +static void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); +static void WindowFunc_ClearStdWindowAndFrameToTransparent(u8, u8, u8, u8, u8, u8); +static void task_free_buf_after_copying_tile_data_to_vram(u8 taskId); + static EWRAM_DATA u8 sStartMenuWindowId = 0; static EWRAM_DATA u8 sMapNamePopupWindowId = 0; static EWRAM_DATA struct Menu sMenu = {0}; static EWRAM_DATA u16 sTileNum = 0; static EWRAM_DATA u8 sPaletteNum = 0; static EWRAM_DATA u8 sYesNoWindowId = 0; -static EWRAM_DATA u8 sWindowId = 0; +static EWRAM_DATA u8 sHofPCTopBarWindowId = 0; static EWRAM_DATA u16 sFiller = 0; // needed to align static EWRAM_DATA bool8 sScheduledBgCopiesToVram[4] = {FALSE}; static EWRAM_DATA u16 sTempTileDataBufferIdx = 0; @@ -94,10 +105,10 @@ static const struct WindowTemplate sYesNo_WindowTemplates = .baseBlock = 0x125 }; -const u16 gUnknown_0860F0B0[] = INCBIN_U16("graphics/interface/860F0B0.gbapal"); -const u8 sTextColors[] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; +static const u16 sHofPC_TopBar_Pal[] = INCBIN_U16("graphics/interface/hof_pc_topbar.gbapal"); +static const u8 sTextColors[] = { TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; -// Table of move info icon offsets in graphics/interface_fr/menu.png +// Table of move info icon offsets in graphics/interface/menu_info.png static const struct MenuInfoIcon sMenuInfoIcons[] = { // { width, height, offset } { 12, 12, 0x00 }, // Unused @@ -128,18 +139,6 @@ static const struct MenuInfoIcon sMenuInfoIcons[] = [MENU_INFO_ICON_BALL_BLUE] = { 8, 8, 0xAF }, // For placed decorations in player's room }; - -// Forward declarations -void WindowFunc_DrawStandardFrame(u8, u8, u8, u8, u8, u8); -void WindowFunc_DrawDialogueFrame(u8, u8, u8, u8, u8, u8); -void WindowFunc_ClearStdWindowAndFrame(u8, u8, u8, u8, u8, u8); -void WindowFunc_ClearDialogWindowAndFrame(u8, u8, u8, u8, u8, u8); -void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); -void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8, u8, u8, u8, u8, u8); -void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8, u8, u8, u8, u8, u8); -void WindowFunc_ClearStdWindowAndFrameToTransparent(u8, u8, u8, u8, u8, u8); -void task_free_buf_after_copying_tile_data_to_vram(u8 taskId); - void InitStandardTextBoxWindows(void) { InitWindows(sStandardTextBox_WindowTemplates); @@ -249,7 +248,7 @@ void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram) CopyWindowToVram(windowId, COPYWIN_FULL); } -void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { int i; @@ -316,7 +315,7 @@ void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width STD_WINDOW_PALETTE_NUM); } -void WindowFunc_DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, DLG_WINDOW_BASE_TILE_NUM + 1, @@ -411,12 +410,12 @@ void WindowFunc_DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width DLG_WINDOW_PALETTE_NUM); } -void WindowFunc_ClearStdWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_ClearStdWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, 0, tilemapLeft - 1, tilemapTop - 1, width + 2, height + 2, STD_WINDOW_PALETTE_NUM); } -void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, 0, tilemapLeft - 3, tilemapTop - 1, width + 6, height + 2, STD_WINDOW_PALETTE_NUM); } @@ -489,10 +488,10 @@ u8 GetPlayerTextSpeedDelay(void) return sTextSpeedFrameDelays[speed]; } -u8 sub_81979C4(u8 a1) +u8 AddStartMenuWindow(u8 numActions) { if (sStartMenuWindowId == WINDOW_NONE) - sStartMenuWindowId = sub_8198AA4(0, 0x16, 1, 7, (a1 * 2) + 2, 0xF, 0x139); + sStartMenuWindowId = AddWindowParameterized(0, 22, 1, 7, (numActions * 2) + 2, 15, 0x139); return sStartMenuWindowId; } @@ -525,7 +524,7 @@ static u16 GetStandardFrameBaseTileNum(void) u8 AddMapNamePopUpWindow(void) { if (sMapNamePopupWindowId == WINDOW_NONE) - sMapNamePopupWindowId = sub_8198AA4(0, 1, 1, 10, 3, 14, 0x107); + sMapNamePopupWindowId = AddWindowParameterized(0, 1, 1, 10, 3, 14, 0x107); return sMapNamePopupWindowId; } @@ -549,7 +548,7 @@ void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct Text AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); } -void sub_8197AE8(bool8 copyToVram) +void EraseFieldMessageBox(bool8 copyToVram) { FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11); if (copyToVram == TRUE) @@ -568,7 +567,7 @@ void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 } // Never used. -void DrawDialogFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 tileNum) +static void DrawDialogFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 tileNum) { sTileNum = tileNum; sPaletteNum = GetWindowAttribute(windowId, WINDOW_PALETTE_NUM); @@ -579,7 +578,7 @@ void DrawDialogFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 tileNum) CopyWindowToVram(windowId, COPYWIN_FULL); } -void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, sTileNum + 1, @@ -684,7 +683,7 @@ void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram) CopyWindowToVram(windowId, COPYWIN_FULL); } -void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, 0, tilemapLeft - 3, tilemapTop - 1, width + 6, height + 2, 0); } @@ -712,7 +711,7 @@ void DrawStdFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 baseTileNum) CopyWindowToVram(windowId, COPYWIN_FULL); } -void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, sTileNum + 0, @@ -781,12 +780,13 @@ void ClearStdWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram) CopyWindowToVram(windowId, COPYWIN_FULL); } -void WindowFunc_ClearStdWindowAndFrameToTransparent(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) +static void WindowFunc_ClearStdWindowAndFrameToTransparent(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) { FillBgTilemapBufferRect(bg, 0, tilemapLeft - 1, tilemapTop - 1, width + 2, height + 2, 0); } -u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile) +// Creates the window used to display the info bar at the top of the HOF PC that shows the controls and team number. +u8 HofPCTopBar_AddWindow(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile) { struct WindowTemplate window; memset(&window, 0, sizeof(window)); @@ -798,51 +798,54 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile) window.tilemapTop = yPos; window.height = 2; - window.tilemapLeft = 0x1E - xPos; + window.tilemapLeft = 30 - xPos; window.width = xPos; window.paletteNum = palette; window.baseBlock = baseTile; - sWindowId = AddWindow(&window); + sHofPCTopBarWindowId = AddWindow(&window); if (palette > 15) palette = 15 * 16; else palette *= 16; - LoadPalette(gUnknown_0860F0B0, palette, sizeof(gUnknown_0860F0B0)); - return sWindowId; + LoadPalette(sHofPC_TopBar_Pal, palette, sizeof(sHofPC_TopBar_Pal)); + return sHofPCTopBarWindowId; } -void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram) +// All the below functions checking WINDOW_NONE only handle failure of AddWindow in the above function. +// Because sHofPCTopBarWindowId is not initialized to WINDOW_NONE anywhere it does not handle +// the window not having been drawn yet. +void HofPCTopBar_Print(const u8 *string, u8 left, bool8 copyToVram) { u16 width = 0; - if (sWindowId != WINDOW_NONE) + if (sHofPCTopBarWindowId != WINDOW_NONE) { - PutWindowTilemap(sWindowId); - FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); + PutWindowTilemap(sHofPCTopBarWindowId); + FillWindowPixelBuffer(sHofPCTopBarWindowId, PIXEL_FILL(15)); width = GetStringWidth(FONT_SMALL, string, 0); - AddTextPrinterParameterized3(sWindowId, + AddTextPrinterParameterized3(sHofPCTopBarWindowId, FONT_SMALL, - 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a2 - width, + 236 - (GetWindowAttribute(sHofPCTopBarWindowId, WINDOW_TILEMAP_LEFT) * 8) - left - width, 1, sTextColors, 0, string); if (copyToVram) - CopyWindowToVram(sWindowId, COPYWIN_FULL); + CopyWindowToVram(sHofPCTopBarWindowId, COPYWIN_FULL); } } -void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyToVram) +void HofPCTopBar_PrintPair(const u8 *string, const u8 *string2, bool8 noBg, u8 left, bool8 copyToVram) { u8 color[3]; u16 width = 0; - if (sWindowId != WINDOW_NONE) + if (sHofPCTopBarWindowId != WINDOW_NONE) { - if (a3 != 0) + if (noBg) { color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_COLOR_WHITE; @@ -854,53 +857,55 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo color[1] = TEXT_COLOR_WHITE; color[2] = TEXT_COLOR_DARK_GRAY; } - PutWindowTilemap(sWindowId); - FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); + PutWindowTilemap(sHofPCTopBarWindowId); + FillWindowPixelBuffer(sHofPCTopBarWindowId, PIXEL_FILL(15)); if (string2 != NULL) { width = GetStringWidth(FONT_SMALL, string2, 0); - AddTextPrinterParameterized3(sWindowId, + AddTextPrinterParameterized3(sHofPCTopBarWindowId, FONT_SMALL, - 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a4 - width, + 236 - (GetWindowAttribute(sHofPCTopBarWindowId, WINDOW_TILEMAP_LEFT) * 8) - left - width, 1, color, 0, string2); } - AddTextPrinterParameterized4(sWindowId, FONT_NORMAL, 4, 1, 0, 0, color, 0, string); + AddTextPrinterParameterized4(sHofPCTopBarWindowId, FONT_NORMAL, 4, 1, 0, 0, color, 0, string); if (copyToVram) - CopyWindowToVram(sWindowId, COPYWIN_FULL); + CopyWindowToVram(sHofPCTopBarWindowId, COPYWIN_FULL); } } -void sub_81982D8(void) +// Unused +static void HofPCTopBar_CopyToVram(void) { - if (sWindowId != WINDOW_NONE) - CopyWindowToVram(sWindowId, COPYWIN_FULL); + if (sHofPCTopBarWindowId != WINDOW_NONE) + CopyWindowToVram(sHofPCTopBarWindowId, COPYWIN_FULL); } -void sub_81982F0(void) +// Unused +static void HofPCTopBar_Clear(void) { - if (sWindowId != WINDOW_NONE) + if (sHofPCTopBarWindowId != WINDOW_NONE) { - FillWindowPixelBuffer(sWindowId, PIXEL_FILL(15)); - CopyWindowToVram(sWindowId, COPYWIN_FULL); + FillWindowPixelBuffer(sHofPCTopBarWindowId, PIXEL_FILL(15)); + CopyWindowToVram(sHofPCTopBarWindowId, COPYWIN_FULL); } } -void sub_8198314(void) +void HofPCTopBar_RemoveWindow(void) { - if (sWindowId != WINDOW_NONE) + if (sHofPCTopBarWindowId != WINDOW_NONE) { - FillWindowPixelBuffer(sWindowId, PIXEL_FILL(0)); - ClearWindowTilemap(sWindowId); - CopyWindowToVram(sWindowId, COPYWIN_FULL); - RemoveWindow(sWindowId); - sWindowId = WINDOW_NONE; + FillWindowPixelBuffer(sHofPCTopBarWindowId, PIXEL_FILL(0)); + ClearWindowTilemap(sHofPCTopBarWindowId); + CopyWindowToVram(sHofPCTopBarWindowId, COPYWIN_FULL); + RemoveWindow(sHofPCTopBarWindowId); + sHofPCTopBarWindowId = WINDOW_NONE; } } -u8 sub_8198348(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos, u8 a7) +static u8 InitMenu(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos, bool8 muteAPress) { s32 pos; @@ -911,7 +916,7 @@ u8 sub_8198348(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numC sMenu.windowId = windowId; sMenu.fontId = fontId; sMenu.optionHeight = cursorHeight; - sMenu.APressMuted = a7; + sMenu.APressMuted = muteAPress; pos = initialCursorPos; @@ -924,15 +929,17 @@ u8 sub_8198348(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numC return sMenu.cursorPos; } -u8 sub_81983AC(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos) +// There is no muted version of this, so the version that plays sound when A is pressed is the "Normal" one. +u8 InitMenuNormal(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos) { - return sub_8198348(windowId, fontId, left, top, cursorHeight, numChoices, initialCursorPos, 0); + return InitMenu(windowId, fontId, left, top, cursorHeight, numChoices, initialCursorPos, FALSE); } -u8 sub_81983EC(u8 windowId, u8 fontId, u8 left, u8 top, u8 numChoices, u8 initialCursorPos) +// Unused +static u8 InitMenuDefaultCursorHeight(u8 windowId, u8 fontId, u8 left, u8 top, u8 numChoices, u8 initialCursorPos) { u8 cursorHeight = GetMenuCursorDimensionByFont(fontId, 1); - return sub_81983AC(windowId, fontId, left, top, cursorHeight, numChoices, initialCursorPos); + return InitMenuNormal(windowId, fontId, left, top, cursorHeight, numChoices, initialCursorPos); } void RedrawMenuCursor(u8 oldPos, u8 newPos) @@ -1098,29 +1105,27 @@ s8 Menu_ProcessInputNoWrapAround_other(void) return MENU_NOTHING_CHOSEN; } -void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) +void PrintMenuActionTextsAtPos(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) { u8 i; for (i = 0; i < itemCount; i++) - { - AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL); - } + AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SPEED_FF, NULL); CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_81987BC(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, u8 a6, u8 a7) +// Unused +static void PrintMenuActionTextsWithSpacing(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, u8 letterSpacing, u8 lineSpacing) { u8 i; for (i = 0; i < itemCount; i++) - { - AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, 0xFF, NULL, a6, a7); - } + AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SPEED_FF, NULL, letterSpacing, lineSpacing); CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_8198854(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) +// Unused +static void PrintMenuActionTextsAtTop(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions) { - PrintTextArray(windowId, fontId, GetFontAttribute(fontId, 0), 1, lineHeight, itemCount, menuActions); + PrintMenuActionTextsAtPos(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, lineHeight, itemCount, menuActions); } void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) @@ -1144,13 +1149,14 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l printer.currentChar = menuActions[actionIds[i]].text; printer.y = (lineHeight * i) + top; printer.currentY = printer.y; - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) +// Unused +static void AddItemMenuActionTextPrintersAtTop(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { AddItemMenuActionTextPrinters(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, GetFontAttribute(fontId, FONTATTR_LETTER_SPACING), lineHeight, itemCount, menuActions, actionIds); } @@ -1173,14 +1179,15 @@ struct WindowTemplate CreateWindowTemplate(u8 bg, u8 left, u8 top, u8 width, u8 return template; } -u16 sub_8198AA4(u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock) +u16 AddWindowParameterized(u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock) { struct WindowTemplate template; SetWindowTemplateFields(&template, bg, left, top, width, height, paletteNum, baseBlock); return AddWindow(&template); } -void sub_8198AF8(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top, u16 baseTileNum, u8 paletteNum, u8 initialCursorPos) +// As opposed to CreateYesNoMenu, which has a hard-coded position. +static void CreateYesNoMenuAtPos(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top, u16 baseTileNum, u8 paletteNum, u8 initialCursorPos) { struct TextPrinterTemplate printer; @@ -1203,12 +1210,12 @@ void sub_8198AF8(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); - sub_81983AC(sYesNoWindowId, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos); + InitMenuNormal(sYesNoWindowId, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos); } -void sub_8198C34(const struct WindowTemplate *window, u8 fontId, u16 baseTileNum, u8 paletteNum) +static void CreateYesNoMenuInTopLeft(const struct WindowTemplate *window, u8 fontId, u16 baseTileNum, u8 paletteNum) { - sub_8198AF8(window, fontId, 0, 1, baseTileNum, paletteNum, 0); + CreateYesNoMenuAtPos(window, fontId, 0, 1, baseTileNum, paletteNum, 0); } s8 Menu_ProcessInputNoWrapClearOnChoose(void) @@ -1232,9 +1239,7 @@ void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u for (i = 0; i < a7; i++) { for (j = 0; j < a6; j++) - { - AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, 0xFF, NULL); - } + AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, TEXT_SPEED_FF, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1268,7 +1273,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth printer.y = (GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT) * i) + top; printer.currentX = printer.x; printer.currentY = printer.y; - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); } } @@ -1593,7 +1598,8 @@ u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, boo return Menu_MoveCursor(0); } -u8 InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 windowId, u8 itemCount, u8 initialCursorPos) +// There is no muted version of this function, so the version that plays sound when A is pressed is the "Normal" one. +u8 InitMenuInUpperLeftCornerNormal(u8 windowId, u8 itemCount, u8 initialCursorPos) { return InitMenuInUpperLeftCorner(windowId, itemCount, initialCursorPos, FALSE); } @@ -1603,9 +1609,7 @@ void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActi u32 i; for (i = 0; i < itemCount; i++) - { - AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, 0xFF, NULL); - } + AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1631,7 +1635,7 @@ void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions printer.currentChar = menuActions[actionIds[i]].text; printer.y = (i * 16) + 1; printer.currentY = (i * 16) + 1; - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); @@ -1658,8 +1662,8 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa printer.letterSpacing = 0; printer.lineSpacing = 0; - AddTextPrinter(&printer, 0xFF, NULL); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sYesNoWindowId, 2, initialCursorPos); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + InitMenuInUpperLeftCornerNormal(sYesNoWindowId, 2, initialCursorPos); } void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *menuActions) @@ -1669,7 +1673,7 @@ void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const for (i = 0; i < rows; i++) { for (j = 0; j < columns; j++) - AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, 0xFF, NULL); + AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1698,7 +1702,7 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M printer.y = (16 * i) + 1; printer.currentX = printer.x; printer.currentY = printer.y; - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); } } @@ -2008,7 +2012,7 @@ void PrintPlayerNameOnWindow(u8 windowId, const u8 *src, u16 x, u16 y) StringExpandPlaceholders(gStringVar4, src); - AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, 0xFF, 0); + AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, TEXT_SPEED_FF, 0); } // Unused. Similar to BlitBitmapRect4Bit. @@ -2105,13 +2109,13 @@ void ListMenuLoadStdPalAt(u8 palOffset, u8 palId) { case 0: default: - palette = gFireRedMenuElements1_Pal; + palette = gMenuInfoElements1_Pal; break; case 1: - palette = gFireRedMenuElements2_Pal; + palette = gMenuInfoElements2_Pal; break; case 2: - palette = gFireRedMenuElements3_Pal; + palette = gMenuInfoElements3_Pal; break; } @@ -2120,7 +2124,7 @@ void ListMenuLoadStdPalAt(u8 palOffset, u8 palId) void BlitMenuInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y) { - BlitBitmapRectToWindow(windowId, gFireRedMenuElements_Gfx + sMenuInfoIcons[iconId].offset * 32, 0, 0, 128, 128, x, y, sMenuInfoIcons[iconId].width, sMenuInfoIcons[iconId].height); + BlitBitmapRectToWindow(windowId, &gMenuInfoElements_Gfx[sMenuInfoIcons[iconId].offset * 32], 0, 0, 128, 128, x, y, sMenuInfoIcons[iconId].width, sMenuInfoIcons[iconId].height); } void BufferSaveMenuText(u8 textId, u8 *dest, u8 color) diff --git a/src/party_menu.c b/src/party_menu.c index 609d5249ff6a..fd112c99590d 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2481,7 +2481,7 @@ static u8 DisplaySelectionWindow(u8 windowType) AddTextPrinterParameterized4(sPartyMenuInternal->windowId[0], FONT_NORMAL, cursorDimension, (i * 16) + 1, letterSpacing, 0, sFontColorTable[fontColorsId], 0, sCursorOptions[sPartyMenuInternal->actions[i]].text); } - InitMenuInUpperLeftCorner(sPartyMenuInternal->windowId[0], sPartyMenuInternal->numActions, 0, 1); + InitMenuInUpperLeftCorner(sPartyMenuInternal->windowId[0], sPartyMenuInternal->numActions, 0, TRUE); ScheduleBgCopyTilemapToVram(2); return sPartyMenuInternal->windowId[0]; @@ -4508,7 +4508,7 @@ static void ShowMoveSelectWindow(u8 slot) if (move != MOVE_NONE) moveCount++; } - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, moveCount, 0); + InitMenuInUpperLeftCornerNormal(windowId, moveCount, 0); ScheduleBgCopyTilemapToVram(2); } diff --git a/src/player_pc.c b/src/player_pc.c index 0742341ece70..a4e55bf32ae1 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -400,7 +400,7 @@ static void InitPlayerPCMenu(u8 taskId) tWindowId = AddWindow(&windowTemplate); SetStandardWindowBorderStyle(tWindowId, 0); sub_81995E4(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, sTopMenuNumOptions, 0); + InitMenuInUpperLeftCornerNormal(tWindowId, sTopMenuNumOptions, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = PlayerPCProcessMenuInput; } @@ -511,7 +511,7 @@ static void InitItemStorageMenu(u8 taskId, u8 var) tWindowId = AddWindow(&windowTemplate); SetStandardWindowBorderStyle(tWindowId, 0); PrintMenuTable(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), sItemStorage_MenuActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, 4, var); + InitMenuInUpperLeftCornerNormal(tWindowId, 4, var); ScheduleBgCopyTilemapToVram(0); ItemStorageMenuPrint(sItemStorage_OptionDescriptions[var]); } @@ -753,7 +753,7 @@ static void Mailbox_PrintMailOptions(u8 taskId) { u8 windowId = MailboxMenu_AddWindow(MAILBOXWIN_OPTIONS); PrintMenuTable(windowId, ARRAY_COUNT(gMailboxMailOptions), gMailboxMailOptions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, 4, 0); + InitMenuInUpperLeftCornerNormal(windowId, 4, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Mailbox_MailOptionsProcessInput; } diff --git a/src/pokeblock.c b/src/pokeblock.c index b5f1c92987f2..e07ad018eefc 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -1150,7 +1150,7 @@ static void ShowPokeblockActionsWindow(u8 taskId) DestroyScrollArrows(); DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 1, 0xE); sub_81995E4(tWindowId, sPokeblockMenu->numActions, sPokeblockMenuActions, sPokeblockMenu->pokeblockActionIds); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tWindowId, sPokeblockMenu->numActions, 0); + InitMenuInUpperLeftCornerNormal(tWindowId, sPokeblockMenu->numActions, 0); PutWindowTilemap(tWindowId); ScheduleBgCopyTilemapToVram(1); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index f936d871191b..ec3555088ceb 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1699,7 +1699,7 @@ static void CreateMainMenu(u8 whichMenu, s16 *windowIdPtr) DrawStdWindowFrame(windowId, FALSE); PrintMenuTable(windowId, OPTIONS_COUNT, (void *)sMainMenuTexts); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, OPTIONS_COUNT, whichMenu); + InitMenuInUpperLeftCornerNormal(windowId, OPTIONS_COUNT, whichMenu); *windowIdPtr = windowId; } @@ -8024,7 +8024,7 @@ static void AddMenu(void) ClearWindowTilemap(sStorage->menuWindowId); DrawStdFrameWithCustomTileAndPalette(sStorage->menuWindowId, FALSE, 11, 14); PrintMenuTable(sStorage->menuWindowId, sStorage->menuItemsCount, (void*)sStorage->menuItems); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sStorage->menuWindowId, sStorage->menuItemsCount, 0); + InitMenuInUpperLeftCornerNormal(sStorage->menuWindowId, sStorage->menuItemsCount, 0); ScheduleBgCopyTilemapToVram(0); sStorage->menuUnusedField = 0; } diff --git a/src/script_menu.c b/src/script_menu.c index 30aa4a0635be..8293b6f7a104 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -109,7 +109,7 @@ static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, bool8 ignoreB windowId = CreateWindowFromRect(left, top, newWidth, count * 2); SetStandardWindowBorderStyle(windowId, 0); PrintMenuTable(windowId, count, actions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, cursorPos); + InitMenuInUpperLeftCornerNormal(windowId, count, cursorPos); ScheduleBgCopyTilemapToVram(0); InitMultichoiceCheckWrap(ignoreBPress, count, windowId, multichoiceId); } @@ -372,7 +372,7 @@ static void CreatePCMultichoice(void) StringExpandPlaceholders(gStringVar4, gText_PlayersPC); PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, numChoices, 0); + InitMenuInUpperLeftCornerNormal(windowId, numChoices, 0); CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC); } @@ -532,7 +532,7 @@ static void CreateLilycoveSSTidalMultichoice(void) } } - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, count - 1); + InitMenuInUpperLeftCornerNormal(windowId, count, count - 1); CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, count, windowId, MULTI_SSTIDAL_LILYCOVE); } @@ -696,7 +696,7 @@ static void CreateStartMenuForPokenavTutorial(void) AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionSave, 8, 89, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionOption, 8, 105, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); - sub_81983AC(windowId, FONT_NORMAL, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); + InitMenuNormal(windowId, FONT_NORMAL, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); InitMultichoiceNoWrap(FALSE, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), windowId, MULTI_FORCED_START_MENU); CopyWindowToVram(windowId, COPYWIN_FULL); } diff --git a/src/secret_base.c b/src/secret_base.c index 12f6df5ab567..72560ee23b78 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1028,7 +1028,7 @@ static void ShowRegistryMenuActions(u8 taskId) tActionWindowId = AddWindow(&template); SetStandardWindowBorderStyle(tActionWindowId, 0); PrintMenuTable(tActionWindowId, ARRAY_COUNT(sRegistryMenuActions), sRegistryMenuActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(tActionWindowId, 2, 0); + InitMenuInUpperLeftCornerNormal(tActionWindowId, 2, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = HandleRegistryMenuActionsInput; } diff --git a/src/shop.c b/src/shop.c index 43b7816f51b0..604abd1ab503 100755 --- a/src/shop.c +++ b/src/shop.c @@ -301,7 +301,7 @@ static u8 CreateShopMenu(u8 martType) SetStandardWindowBorderStyle(sMartInfo.windowId, 0); PrintMenuTable(sMartInfo.windowId, numMenuItems, sMartInfo.menuActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sMartInfo.windowId, numMenuItems, 0); + InitMenuInUpperLeftCornerNormal(sMartInfo.windowId, numMenuItems, 0); PutWindowTilemap(sMartInfo.windowId); CopyWindowToVram(sMartInfo.windowId, COPYWIN_MAP); diff --git a/src/start_menu.c b/src/start_menu.c index 1c0b006e6288..0cf102efcd6c 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -466,7 +466,7 @@ static bool32 InitStartMenuStep(void) break; case 2: LoadMessageBoxAndBorderGfx(); - DrawStdWindowFrame(sub_81979C4(sNumStartMenuActions), FALSE); + DrawStdWindowFrame(AddStartMenuWindow(sNumStartMenuActions), FALSE); sInitStartMenuData[1] = 0; sInitStartMenuData[0]++; break; @@ -482,7 +482,7 @@ static bool32 InitStartMenuStep(void) sInitStartMenuData[0]++; break; case 5: - sStartMenuCursorPos = sub_81983AC(GetStartMenuWindowId(), FONT_NORMAL, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); + sStartMenuCursorPos = InitMenuNormal(GetStartMenuWindowId(), FONT_NORMAL, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); CopyWindowToVram(GetStartMenuWindowId(), COPYWIN_MAP); return TRUE; } diff --git a/src/trade.c b/src/trade.c index 5716fdd84d82..603d92c8713b 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1395,7 +1395,7 @@ static void TradeMenuProcessInput(void) DrawTextBorderOuter(1, 1, 14); FillWindowPixelBuffer(1, PIXEL_FILL(1)); PrintMenuTable(1, ARRAY_COUNT(sSelectTradeMonActions), sSelectTradeMonActions); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(1, 2, 0); + InitMenuInUpperLeftCornerNormal(1, 2, 0); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_SELECTED_MON; diff --git a/src/trader.c b/src/trader.c index c65d5ff87b54..1d4424e75132 100644 --- a/src/trader.c +++ b/src/trader.c @@ -82,7 +82,7 @@ void CreateAvailableDecorationsMenu(u8 taskId) AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, 255, NULL); } AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 255, NULL); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[3], 5, 0); + InitMenuInUpperLeftCornerNormal(data[3], 5, 0); ScheduleBgCopyTilemapToVram(0); } diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 96c2aa886239..d2bce295be10 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2743,7 +2743,7 @@ static void AddYesNoMenuAt(u8 left, u8 top, u8 initialCursorPos) AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_Yes, 8, 1, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_No, 8, 17, TEXT_SPEED_FF, NULL); DrawTextBorderOuter(sDisplay->yesNoMenuWindowId, 1, 13); - InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sDisplay->yesNoMenuWindowId, 2, initialCursorPos); + InitMenuInUpperLeftCornerNormal(sDisplay->yesNoMenuWindowId, 2, initialCursorPos); } } @@ -2987,8 +2987,8 @@ static void ShowKeyboardSwapMenu(void) { FillWindowPixelBuffer(3, PIXEL_FILL(1)); DrawTextBorderOuter(3, 1, 13); - PrintTextArray(3, FONT_SHORT, 8, 1, 14, 5, sKeyboardPageTitleTexts); - sub_81983AC(3, FONT_SHORT, 0, 1, 14, 5, GetCurrentKeyboardPage()); + PrintMenuActionTextsAtPos(3, FONT_SHORT, 8, 1, 14, 5, sKeyboardPageTitleTexts); + InitMenuNormal(3, FONT_SHORT, 0, 1, 14, 5, GetCurrentKeyboardPage()); PutWindowTilemap(3); } From 50d3003a0d66b30fa1bf50b33e1a7de6263dca5d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 18:29:18 -0400 Subject: [PATCH 377/762] Text clean-up, TEXT_SPEED_FF to TEXT_SKIP_DRAW --- gflib/text.c | 185 ++++++------ gflib/text.h | 25 +- src/apprentice.c | 2 +- src/battle_interface.c | 2 +- src/battle_main.c | 2 +- src/battle_pyramid_bag.c | 2 +- src/battle_script_commands.c | 4 +- src/berry_blender.c | 24 +- src/berry_fix_program.c | 10 +- src/berry_powder.c | 2 +- src/berry_tag_screen.c | 4 +- src/braille.c | 319 ++++++++++----------- src/cable_club.c | 2 +- src/contest_util.c | 2 +- src/credits.c | 2 +- src/daycare.c | 2 +- src/decoration.c | 4 +- src/diploma.c | 2 +- src/dodrio_berry_picking.c | 52 ++-- src/easy_chat.c | 16 +- src/egg_hatch.c | 2 +- src/field_specials.c | 8 +- src/frontier_util.c | 104 +++---- src/hall_of_fame.c | 22 +- src/item_menu.c | 18 +- src/list_menu.c | 4 +- src/main_menu.c | 44 +-- src/map_name_popup.c | 2 +- src/mauville_old_man.c | 4 +- src/menu.c | 24 +- src/menu_specialized.c | 28 +- src/mystery_gift_menu.c | 4 +- src/naming_screen.c | 4 +- src/option_menu.c | 6 +- src/party_menu.c | 8 +- src/player_pc.c | 6 +- src/pokedex.c | 8 +- src/pokedex_area_screen.c | 2 +- src/pokemon_jump.c | 22 +- src/pokemon_storage_system.c | 28 +- src/pokenav_conditions_3.c | 4 +- src/pokenav_match_call_2.c | 6 +- src/pokenav_match_call_ui.c | 8 +- src/pokenav_region_map.c | 8 +- src/pokenav_ribbons_1.c | 2 +- src/pokenav_ribbons_2.c | 12 +- src/reset_rtc_screen.c | 6 +- src/roulette.c | 28 +- src/scrcmd.c | 5 +- src/script_menu.c | 28 +- src/shop.c | 4 +- src/start_menu.c | 24 +- src/trade.c | 2 +- src/trainer_card.c | 44 +-- src/trainer_hill.c | 6 +- src/union_room.c | 2 +- src/union_room_chat.c | 20 +- src/wild_encounter.c | 2 +- src/wireless_communication_status_screen.c | 2 +- 59 files changed, 617 insertions(+), 607 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index 9d1a5464f6d1..bf5b01e4868b 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -13,6 +13,8 @@ #include "dynamic_placeholder_text_util.h" #include "fonts.h" +static u16 RenderText(struct TextPrinter *textPrinter); +static u32 RenderFont(struct TextPrinter *textPrinter); static u16 FontFunc_Small(struct TextPrinter *); static u16 FontFunc_Normal(struct TextPrinter *); static u16 FontFunc_Short(struct TextPrinter *); @@ -42,7 +44,7 @@ static u16 gLastTextFgColor; static u16 gLastTextShadowColor; const struct FontInfo *gFonts; -u8 gDisableTextPrinters; +bool8 gDisableTextPrinters; struct TextGlyph gCurGlyph; TextFlags gTextFlags; @@ -234,7 +236,7 @@ void DeactivateAllTextPrinters(void) { int printer; for (printer = 0; printer < NUM_TEXT_PRINTERS; ++printer) - gTextPrinters[printer].active = 0; + gTextPrinters[printer].active = FALSE; } u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16)) @@ -265,16 +267,14 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi if (!gFonts) return FALSE; - gTempTextPrinter.active = 1; - gTempTextPrinter.state = 0; + gTempTextPrinter.active = TRUE; + gTempTextPrinter.state = RENDER_STATE_HANDLE_CHAR; gTempTextPrinter.textSpeed = speed; gTempTextPrinter.delayCounter = 0; gTempTextPrinter.scrollDistance = 0; - for (i = 0; i < 7; i++) - { + for (i = 0; i < (int)ARRAY_COUNT(gTempTextPrinter.subStructFields); i++) gTempTextPrinter.subStructFields[i] = 0; - } gTempTextPrinter.printerTemplate = *printerTemplate; gTempTextPrinter.callback = callback; @@ -282,7 +282,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi gTempTextPrinter.japanese = 0; GenerateFontHalfRowLookupTable(printerTemplate->fgColor, printerTemplate->bgColor, printerTemplate->shadowColor); - if (speed != TEXT_SPEED_FF && speed != 0) + if (speed != TEXT_SKIP_DRAW && speed != 0) { --gTempTextPrinter.textSpeed; gTextPrinters[printerTemplate->windowId] = gTempTextPrinter; @@ -290,17 +290,20 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi else { gTempTextPrinter.textSpeed = 0; + + // Render all text (up to limit) at once for (j = 0; j < 0x400; ++j) { - if (RenderFont(&gTempTextPrinter) == 1) + if (RenderFont(&gTempTextPrinter) == RENDER_FINISH) break; } - if (speed != TEXT_SPEED_FF) + // All the text is rendered to the window but don't draw it yet. + if (speed != TEXT_SKIP_DRAW) CopyWindowToVram(gTempTextPrinter.printerTemplate.windowId, COPYWIN_GFX); - gTextPrinters[printerTemplate->windowId].active = 0; + gTextPrinters[printerTemplate->windowId].active = FALSE; } - gDisableTextPrinters = 0; + gDisableTextPrinters = FALSE; return TRUE; } @@ -308,7 +311,7 @@ void RunTextPrinters(void) { int i; - if (gDisableTextPrinters == 0) + if (!gDisableTextPrinters) { for (i = 0; i < NUM_TEXT_PRINTERS; ++i) { @@ -317,14 +320,14 @@ void RunTextPrinters(void) u16 temp = RenderFont(&gTextPrinters[i]); switch (temp) { - case 0: + case RENDER_PRINT: CopyWindowToVram(gTextPrinters[i].printerTemplate.windowId, COPYWIN_GFX); - case 3: + case RENDER_UPDATE: if (gTextPrinters[i].callback != 0) gTextPrinters[i].callback(&gTextPrinters[i].printerTemplate, temp); break; - case 1: - gTextPrinters[i].active = 0; + case RENDER_FINISH: + gTextPrinters[i].active = FALSE; break; } } @@ -337,13 +340,13 @@ bool16 IsTextPrinterActive(u8 id) return gTextPrinters[id].active; } -u32 RenderFont(struct TextPrinter *textPrinter) +static u32 RenderFont(struct TextPrinter *textPrinter) { u32 ret; while (TRUE) { ret = gFonts[textPrinter->printerTemplate.fontId].fontFunction(textPrinter); - if (ret != 2) + if (ret != RENDER_REPEAT) return ret; } } @@ -929,7 +932,7 @@ void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *c } } -u16 RenderText(struct TextPrinter *textPrinter) +static u16 RenderText(struct TextPrinter *textPrinter) { struct TextPrinterSubStruct *subStruct = (struct TextPrinterSubStruct *)(&textPrinter->subStructFields); u16 currChar; @@ -938,7 +941,7 @@ u16 RenderText(struct TextPrinter *textPrinter) switch (textPrinter->state) { - case 0: + case RENDER_STATE_HANDLE_CHAR: if ((JOY_HELD(A_BUTTON | B_BUTTON)) && subStruct->hasPrintBeenSpedUp) textPrinter->delayCounter = 0; @@ -950,7 +953,7 @@ u16 RenderText(struct TextPrinter *textPrinter) subStruct->hasPrintBeenSpedUp = TRUE; textPrinter->delayCounter = 0; } - return 3; + return RENDER_UPDATE; } if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED) && gTextFlags.autoScroll) @@ -966,10 +969,10 @@ u16 RenderText(struct TextPrinter *textPrinter) case CHAR_NEWLINE: textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; textPrinter->printerTemplate.currentY += (gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing); - return 2; + return RENDER_REPEAT; case PLACEHOLDER_BEGIN: textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_BEGIN: currChar = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; @@ -979,17 +982,17 @@ u16 RenderText(struct TextPrinter *textPrinter) textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_HIGHLIGHT: textPrinter->printerTemplate.bgColor = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_SHADOW: textPrinter->printerTemplate.shadowColor = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW: textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; @@ -998,36 +1001,36 @@ u16 RenderText(struct TextPrinter *textPrinter) textPrinter->printerTemplate.shadowColor = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_PALETTE: textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_FONT: subStruct->fontId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_RESET_SIZE: - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_PAUSE: textPrinter->delayCounter = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; - textPrinter->state = 6; - return 2; + textPrinter->state = RENDER_STATE_PAUSE; + return RENDER_REPEAT; case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: - textPrinter->state = 1; + textPrinter->state = RENDER_STATE_WAIT; if (gTextFlags.autoScroll) subStruct->autoScrollDelay = 0; - return 3; + return RENDER_UPDATE; case EXT_CTRL_CODE_WAIT_SE: - textPrinter->state = 5; - return 3; + textPrinter->state = RENDER_STATE_WAIT_SE; + return RENDER_UPDATE; case EXT_CTRL_CODE_PLAY_BGM: currChar = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; currChar |= *textPrinter->printerTemplate.currentChar << 8; textPrinter->printerTemplate.currentChar++; PlayBGM(currChar); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_ESCAPE: currChar = *textPrinter->printerTemplate.currentChar | 0x100; textPrinter->printerTemplate.currentChar++; @@ -1038,26 +1041,26 @@ u16 RenderText(struct TextPrinter *textPrinter) currChar |= (*textPrinter->printerTemplate.currentChar << 8); textPrinter->printerTemplate.currentChar++; PlaySE(currChar); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_SHIFT_TEXT: textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x + *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_SHIFT_DOWN: textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y + *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_FILL_WINDOW: FillWindowPixelBuffer(textPrinter->printerTemplate.windowId, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_PAUSE_MUSIC: m4aMPlayStop(&gMPlayInfo_BGM); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_RESUME_MUSIC: m4aMPlayContinue(&gMPlayInfo_BGM); - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_CLEAR: width = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; @@ -1065,13 +1068,13 @@ u16 RenderText(struct TextPrinter *textPrinter) { ClearTextSpan(textPrinter, width); textPrinter->printerTemplate.currentX += width; - return 0; + return RENDER_PRINT; } - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_SKIP: textPrinter->printerTemplate.currentX = *textPrinter->printerTemplate.currentChar + textPrinter->printerTemplate.x; textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_CLEAR_TO: { widthHelper = *textPrinter->printerTemplate.currentChar; @@ -1082,29 +1085,29 @@ u16 RenderText(struct TextPrinter *textPrinter) { ClearTextSpan(textPrinter, width); textPrinter->printerTemplate.currentX += width; - return 0; + return RENDER_PRINT; } } - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_MIN_LETTER_SPACING: textPrinter->minLetterSpacing = *textPrinter->printerTemplate.currentChar++; - return 2; + return RENDER_REPEAT; case EXT_CTRL_CODE_JPN: - textPrinter->japanese = 1; - return 2; + textPrinter->japanese = TRUE; + return RENDER_REPEAT; case EXT_CTRL_CODE_ENG: - textPrinter->japanese = 0; - return 2; + textPrinter->japanese = FALSE; + return RENDER_REPEAT; } break; case CHAR_PROMPT_CLEAR: - textPrinter->state = 2; + textPrinter->state = RENDER_STATE_CLEAR; TextPrinterInitDownArrowCounters(textPrinter); - return 3; + return RENDER_UPDATE; case CHAR_PROMPT_SCROLL: - textPrinter->state = 3; + textPrinter->state = RENDER_STATE_SCROLL_START; TextPrinterInitDownArrowCounters(textPrinter); - return 3; + return RENDER_UPDATE; case CHAR_EXTRA_SYMBOL: currChar = *textPrinter->printerTemplate.currentChar | 0x100; textPrinter->printerTemplate.currentChar++; @@ -1113,9 +1116,9 @@ u16 RenderText(struct TextPrinter *textPrinter) currChar = *textPrinter->printerTemplate.currentChar++; gCurGlyph.width = DrawKeypadIcon(textPrinter->printerTemplate.windowId, currChar, textPrinter->printerTemplate.currentX, textPrinter->printerTemplate.currentY); textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; - return 0; + return RENDER_PRINT; case EOS: - return 1; + return RENDER_FINISH; } switch (subStruct->fontId) @@ -1161,30 +1164,30 @@ u16 RenderText(struct TextPrinter *textPrinter) else textPrinter->printerTemplate.currentX += gCurGlyph.width; } - return 0; - case 1: + return RENDER_PRINT; + case RENDER_STATE_WAIT: if (TextPrinterWait(textPrinter)) - textPrinter->state = 0; - return 3; - case 2: + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; + case RENDER_STATE_CLEAR: if (TextPrinterWaitWithDownArrow(textPrinter)) { FillWindowPixelBuffer(textPrinter->printerTemplate.windowId, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y; - textPrinter->state = 0; + textPrinter->state = RENDER_STATE_HANDLE_CHAR; } - return 3; - case 3: + return RENDER_UPDATE; + case RENDER_STATE_SCROLL_START: if (TextPrinterWaitWithDownArrow(textPrinter)) { TextPrinterClearDownArrow(textPrinter); textPrinter->scrollDistance = gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing; textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; - textPrinter->state = 4; + textPrinter->state = RENDER_STATE_SCROLL; } - return 3; - case 4: + return RENDER_UPDATE; + case RENDER_STATE_SCROLL: if (textPrinter->scrollDistance) { int scrollSpeed = GetPlayerTextSpeed(); @@ -1203,22 +1206,22 @@ u16 RenderText(struct TextPrinter *textPrinter) } else { - textPrinter->state = 0; + textPrinter->state = RENDER_STATE_HANDLE_CHAR; } - return 3; - case 5: + return RENDER_UPDATE; + case RENDER_STATE_WAIT_SE: if (!IsSEPlaying()) - textPrinter->state = 0; - return 3; - case 6: + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; + case RENDER_STATE_PAUSE: if (textPrinter->delayCounter != 0) textPrinter->delayCounter--; else - textPrinter->state = 0; - return 3; + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; } - return 1; + return RENDER_FINISH; } // Unused @@ -1363,17 +1366,17 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) case PLACEHOLDER_BEGIN: switch (*++str) { - case PLACEHOLDER_ID_STRING_VAR_1: - bufferPointer = gStringVar1; - break; - case PLACEHOLDER_ID_STRING_VAR_2: - bufferPointer = gStringVar2; - break; - case PLACEHOLDER_ID_STRING_VAR_3: - bufferPointer = gStringVar3; - break; - default: - return 0; + case PLACEHOLDER_ID_STRING_VAR_1: + bufferPointer = gStringVar1; + break; + case PLACEHOLDER_ID_STRING_VAR_2: + bufferPointer = gStringVar2; + break; + case PLACEHOLDER_ID_STRING_VAR_3: + bufferPointer = gStringVar3; + break; + default: + return 0; } case CHAR_DYNAMIC: if (bufferPointer == NULL) diff --git a/gflib/text.h b/gflib/text.h index d23ee1be5a5c..110df8b87f0c 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -5,7 +5,9 @@ #define NUM_TEXT_PRINTERS 32 -#define TEXT_SPEED_FF 0xFF +// Given as a text speed when all the text should be +// loaded at once but not copied to vram yet. +#define TEXT_SKIP_DRAW 0xFF enum { FONT_SMALL, @@ -20,6 +22,25 @@ enum { FONT_BOLD, // JP glyph set only }; +// Return values for font functions +enum { + RENDER_PRINT, + RENDER_FINISH, + RENDER_REPEAT, // Run render function again, if e.g. a control code is encountered. + RENDER_UPDATE, +}; + +// Text printer states read by RenderText / FontFunc_Braille +enum { + RENDER_STATE_HANDLE_CHAR, + RENDER_STATE_WAIT, + RENDER_STATE_CLEAR, + RENDER_STATE_SCROLL_START, + RENDER_STATE_SCROLL, + RENDER_STATE_WAIT_SE, + RENDER_STATE_PAUSE, +}; + enum { FONTATTR_MAX_LETTER_WIDTH, FONTATTR_MAX_LETTER_HEIGHT, @@ -128,7 +149,6 @@ u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 bool16 AddTextPrinter(struct TextPrinterTemplate *template, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16)); void RunTextPrinters(void); bool16 IsTextPrinterActive(u8 id); -u32 RenderFont(struct TextPrinter *textPrinter); void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor); void SaveTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor); void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor); @@ -145,7 +165,6 @@ bool8 TextPrinterWaitAutoMode(struct TextPrinter *textPrinter); bool16 TextPrinterWaitWithDownArrow(struct TextPrinter *textPrinter); bool16 TextPrinterWait(struct TextPrinter *textPrinter); void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *counter, u8 *yCoordIndex); -u16 RenderText(struct TextPrinter *textPrinter); s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing); u8 RenderTextHandleBold(u8 *pixels, u8 fontId, u8 *str); u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y); diff --git a/src/apprentice.c b/src/apprentice.c index 604891511772..6255b9215a5b 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -643,7 +643,7 @@ static void CreateApprenticeMenu(u8 menu) SetStandardWindowBorderStyle(windowId, 0); for (i = 0; i < count; i++) - AddTextPrinterParameterized(windowId, FONT_NORMAL, strings[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, strings[i], 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); InitMenuInUpperLeftCornerNormal(windowId, count, 0); CreateChooseAnswerTask(TRUE, count, windowId); diff --git a/src/battle_interface.c b/src/battle_interface.c index 17497cb2f5bd..94850ec573de 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -2525,7 +2525,7 @@ static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, color[1] = 1; color[2] = 3; - AddTextPrinterParameterized4(winId, FONT_SMALL, x, y, 0, 0, color, -1, str); + AddTextPrinterParameterized4(winId, FONT_SMALL, x, y, 0, 0, color, TEXT_SKIP_DRAW, str); *windowId = winId; return (u8*)(GetWindowAttribute(winId, WINDOW_TILE_DATA)); diff --git a/src/battle_main.c b/src/battle_main.c index ec093ecc7b93..8079546d482a 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -682,7 +682,7 @@ static void CB2_InitBattleInternal(void) { CreateNPCTrainerParty(&gEnemyParty[0], gTrainerBattleOpponent_A, TRUE); if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) - CreateNPCTrainerParty(&gEnemyParty[3], gTrainerBattleOpponent_B, FALSE); + CreateNPCTrainerParty(&gEnemyParty[PARTY_SIZE / 2], gTrainerBattleOpponent_B, FALSE); SetWildMonHeldItem(); } diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index fdd3f03789f0..e18a29295028 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -673,7 +673,7 @@ static void PrintItemQuantity(u8 windowId, u32 itemIndex, u8 y) 2); StringExpandPlaceholders(gStringVar4, gText_xVar1); xAlign = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); - PyramidBagPrint_Quantity(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SPEED_FF, COLORID_DARK_GRAY); + PyramidBagPrint_Quantity(windowId, gStringVar4, xAlign, y, 0, 0, TEXT_SKIP_DRAW, COLORID_DARK_GRAY); } static void PrintItemDescription(s32 listMenuId) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index c3263099f2c9..391e8285028a 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6053,7 +6053,7 @@ static void DrawLevelUpBannerText(void) printerTemplate.bgColor = TEXT_COLOR_TRANSPARENT; printerTemplate.shadowColor = TEXT_COLOR_DARK_GRAY; - AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SKIP_DRAW, NULL); txtPtr = gStringVar4; *(txtPtr)++ = CHAR_EXTRA_SYMBOL; @@ -6083,7 +6083,7 @@ static void DrawLevelUpBannerText(void) printerTemplate.y = 10; printerTemplate.currentY = 10; - AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_GFX); } diff --git a/src/berry_blender.c b/src/berry_blender.c index 6603f91fb17c..4e7168fc1a02 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -3495,7 +3495,7 @@ static bool8 PrintBlendingResults(void) u8 *txtPtr; xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_BlendingResults, 0xA8); - Blender_AddTextPrinter(5, sText_BlendingResults, xPos, 1, TEXT_SPEED_FF, 0); + Blender_AddTextPrinter(5, sText_BlendingResults, xPos, 1, TEXT_SKIP_DRAW, 0); if (sBerryBlender->numPlayers == BLENDER_MAX_PLAYERS) yPos = 17; @@ -3510,15 +3510,15 @@ static bool8 PrintBlendingResults(void) StringAppend(sBerryBlender->stringVar, sText_Dot); StringAppend(sBerryBlender->stringVar, gText_Space); StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 8, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 8, yPos, TEXT_SKIP_DRAW, 3); StringCopy(sBerryBlender->stringVar, sBerryBlender->blendedBerries[place].name); ConvertInternationalString(sBerryBlender->stringVar, gLinkPlayers[place].language); StringAppend(sBerryBlender->stringVar, sText_SpaceBerry); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0x54, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0x54, yPos, TEXT_SKIP_DRAW, 3); } - Blender_AddTextPrinter(5, sText_MaximumSpeed, 0, 0x51, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sText_MaximumSpeed, 0, 0x51, TEXT_SKIP_DRAW, 3); ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->maxRPM / 100, STR_CONV_MODE_RIGHT_ALIGN, 3); StringAppend(sBerryBlender->stringVar, sText_Dot); @@ -3527,8 +3527,8 @@ static bool8 PrintBlendingResults(void) StringAppend(sBerryBlender->stringVar, sText_RPM); xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x51, TEXT_SPEED_FF, 3); - Blender_AddTextPrinter(5, sText_Time, 0, 0x61, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x51, TEXT_SKIP_DRAW, 3); + Blender_AddTextPrinter(5, sText_Time, 0, 0x61, TEXT_SKIP_DRAW, 3); seconds = (sBerryBlender->gameFrameTime / 60) % 60; minutes = (sBerryBlender->gameFrameTime / (60 * 60)); @@ -3540,7 +3540,7 @@ static bool8 PrintBlendingResults(void) StringAppend(sBerryBlender->stringVar, sText_Sec); xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x61, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x61, TEXT_SKIP_DRAW, 3); sBerryBlender->framesToWait = 0; sBerryBlender->mainState++; @@ -3694,7 +3694,7 @@ static bool8 PrintBlendingRanking(void) case 3: DrawStdFrameWithCustomTileAndPalette(5, 0, 1, 0xD); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_Ranking, 168); - Blender_AddTextPrinter(5, sText_Ranking, xPos, 1, TEXT_SPEED_FF, 0); + Blender_AddTextPrinter(5, sText_Ranking, xPos, 1, TEXT_SKIP_DRAW, 0); sBerryBlender->scoreIconIds[SCORE_BEST] = CreateSprite(&sSpriteTemplate_ScoreSymbols, 128, 52, 0); StartSpriteAnim(&gSprites[sBerryBlender->scoreIconIds[SCORE_BEST]], SCOREANIM_BEST_STATIC); @@ -3718,16 +3718,16 @@ static bool8 PrintBlendingRanking(void) StringAppend(sBerryBlender->stringVar, sText_Dot); StringAppend(sBerryBlender->stringVar, gText_Space); StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0, yPos, TEXT_SKIP_DRAW, 3); ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_BEST], STR_CONV_MODE_RIGHT_ALIGN, 3); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78, yPos, TEXT_SKIP_DRAW, 3); ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_GOOD], STR_CONV_MODE_RIGHT_ALIGN, 3); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 32, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 32, yPos, TEXT_SKIP_DRAW, 3); ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_MISS], STR_CONV_MODE_RIGHT_ALIGN, 3); - Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 64, yPos, TEXT_SPEED_FF, 3); + Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 64, yPos, TEXT_SKIP_DRAW, 3); } PutWindowTilemap(5); diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index 3a0e4c326127..e2f765179533 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -305,19 +305,19 @@ static void BerryFix_GpuSet(void) width = GetStringWidth(FONT_SMALL, sText_Emerald, 0); left = (120 - width) / 2; - AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_Emerald); + AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SKIP_DRAW, sText_Emerald); width = GetStringWidth(FONT_SMALL, sText_RubySapphire, 0); left = (120 - width) / 2 + 120; - AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); + AddTextPrinterParameterized3(2, FONT_SMALL, left, 3, sGameTitleTextColors, TEXT_SKIP_DRAW, sText_RubySapphire); width = GetStringWidth(FONT_SMALL, sText_RubySapphire, 0); left = (112 - width) / 2; - AddTextPrinterParameterized3(3, FONT_SMALL, left, 0, sGameTitleTextColors, TEXT_SPEED_FF, sText_RubySapphire); + AddTextPrinterParameterized3(3, FONT_SMALL, left, 0, sGameTitleTextColors, TEXT_SKIP_DRAW, sText_RubySapphire); width = GetStringWidth(FONT_NORMAL, sText_BerryProgramUpdate, 0); left = (208 - width) / 2; - AddTextPrinterParameterized3(0, FONT_NORMAL, left, 2, sBerryProgramTextColors, TEXT_SPEED_FF, sText_BerryProgramUpdate); + AddTextPrinterParameterized3(0, FONT_NORMAL, left, 2, sBerryProgramTextColors, TEXT_SKIP_DRAW, sText_BerryProgramUpdate); CopyWindowToVram(2, COPYWIN_GFX); CopyWindowToVram(3, COPYWIN_GFX); @@ -346,7 +346,7 @@ static void BerryFix_SetScene(int scene) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); FillWindowPixelBuffer(1, PIXEL_FILL(10)); - AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0, sBerryProgramTextColors, -1, sBerryProgramTexts[scene]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0, sBerryProgramTextColors, TEXT_SKIP_DRAW, sBerryProgramTexts[scene]); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_GFX); switch (scene) diff --git a/src/berry_powder.c b/src/berry_powder.c index d933dbff130e..96f14d6e4ea0 100755 --- a/src/berry_powder.c +++ b/src/berry_powder.c @@ -211,7 +211,7 @@ static void PrintBerryPowderAmount(u8 windowId, int amount, u8 x, u8 y, u8 speed static void DrawPlayerPowderAmount(u8 windowId, u16 baseTileOffset, u8 paletteNum, u32 amount) { DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, baseTileOffset, paletteNum); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_Powder, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_Powder, 0, 1, TEXT_SKIP_DRAW, NULL); PrintBerryPowderAmount(windowId, amount, 26, 17, 0); } diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index fac8c12c2ac7..80a66d0cb1ef 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -409,7 +409,7 @@ static void PrintBerryNumberAndName(void) static void PrintBerrySize(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_SizeSlash, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_SizeSlash, 0, 1, TEXT_SKIP_DRAW, NULL); if (berry->size != 0) { u32 inches, fraction; @@ -434,7 +434,7 @@ static void PrintBerrySize(void) static void PrintBerryFirmness(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_FirmSlash, 0, 0x11, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_FirmSlash, 0, 0x11, TEXT_SKIP_DRAW, NULL); if (berry->firmness != 0) AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, sBerryFirmnessStrings[berry->firmness - 1], 0x28, 0x11, 0, NULL); else diff --git a/src/braille.c b/src/braille.c index e9c2ddc40084..b4ee43ad023d 100644 --- a/src/braille.c +++ b/src/braille.c @@ -21,187 +21,174 @@ u16 FontFunc_Braille(struct TextPrinter *textPrinter) switch (textPrinter->state) { - case 0: - if (JOY_HELD(A_BUTTON | B_BUTTON) && subStruct->hasPrintBeenSpedUp) + case RENDER_STATE_HANDLE_CHAR: + if (JOY_HELD(A_BUTTON | B_BUTTON) && subStruct->hasPrintBeenSpedUp) + { + textPrinter->delayCounter = 0; + } + if (textPrinter->delayCounter && textPrinter->textSpeed) + { + textPrinter->delayCounter --; + if (gTextFlags.canABSpeedUpPrint && JOY_NEW(A_BUTTON | B_BUTTON)) { + subStruct->hasPrintBeenSpedUp = TRUE; textPrinter->delayCounter = 0; } - if (textPrinter->delayCounter && textPrinter->textSpeed) - { - textPrinter->delayCounter --; - if (gTextFlags.canABSpeedUpPrint && JOY_NEW(A_BUTTON | B_BUTTON)) - { - subStruct->hasPrintBeenSpedUp = TRUE; - textPrinter->delayCounter = 0; - } - return 3; - } - if (gTextFlags.autoScroll) - { - textPrinter->delayCounter = 3; - } - else - { - textPrinter->delayCounter = textPrinter->textSpeed; - } + return RENDER_UPDATE; + } + if (gTextFlags.autoScroll) + textPrinter->delayCounter = 3; + else + textPrinter->delayCounter = textPrinter->textSpeed; + + char_ = *textPrinter->printerTemplate.currentChar++; + switch (char_) + { + case EOS: + return RENDER_FINISH; + case CHAR_NEWLINE: + textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; + textPrinter->printerTemplate.currentY += gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing; + return RENDER_REPEAT; + case PLACEHOLDER_BEGIN: + textPrinter->printerTemplate.currentChar++; + return RENDER_REPEAT; + case EXT_CTRL_CODE_BEGIN: char_ = *textPrinter->printerTemplate.currentChar++; switch (char_) { - case EOS: - return 1; - case CHAR_NEWLINE: - textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; - textPrinter->printerTemplate.currentY += gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing; - return 2; - case PLACEHOLDER_BEGIN: - textPrinter->printerTemplate.currentChar++; - return 2; - case EXT_CTRL_CODE_BEGIN: - char_ = *textPrinter->printerTemplate.currentChar++; - switch (char_) - { - case EXT_CTRL_CODE_COLOR: - textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar++; - GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; - case EXT_CTRL_CODE_HIGHLIGHT: - textPrinter->printerTemplate.bgColor = *textPrinter->printerTemplate.currentChar++; - GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; - case EXT_CTRL_CODE_SHADOW: - textPrinter->printerTemplate.shadowColor = *textPrinter->printerTemplate.currentChar++; - GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; - case EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW: - textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar; - textPrinter->printerTemplate.bgColor = *++textPrinter->printerTemplate.currentChar; - textPrinter->printerTemplate.shadowColor = *++textPrinter->printerTemplate.currentChar; - textPrinter->printerTemplate.currentChar++; + case EXT_CTRL_CODE_COLOR: + textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar++; + GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); + return RENDER_REPEAT; + case EXT_CTRL_CODE_HIGHLIGHT: + textPrinter->printerTemplate.bgColor = *textPrinter->printerTemplate.currentChar++; + GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); + return RENDER_REPEAT; + case EXT_CTRL_CODE_SHADOW: + textPrinter->printerTemplate.shadowColor = *textPrinter->printerTemplate.currentChar++; + GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); + return RENDER_REPEAT; + case EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW: + textPrinter->printerTemplate.fgColor = *textPrinter->printerTemplate.currentChar; + textPrinter->printerTemplate.bgColor = *++textPrinter->printerTemplate.currentChar; + textPrinter->printerTemplate.shadowColor = *++textPrinter->printerTemplate.currentChar; + textPrinter->printerTemplate.currentChar++; - GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); - return 2; - case EXT_CTRL_CODE_PALETTE: - textPrinter->printerTemplate.currentChar++; - return 2; - case EXT_CTRL_CODE_FONT: - subStruct->fontId = *textPrinter->printerTemplate.currentChar; - textPrinter->printerTemplate.currentChar++; - return 2; - case EXT_CTRL_CODE_RESET_SIZE: - return 2; - case EXT_CTRL_CODE_PAUSE: - textPrinter->delayCounter = *textPrinter->printerTemplate.currentChar++; - textPrinter->state = 6; - return 2; - case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: - textPrinter->state = 1; - if (gTextFlags.autoScroll) - { - subStruct->autoScrollDelay = 0; - } - return 3; - case EXT_CTRL_CODE_WAIT_SE: - textPrinter->state = 5; - return 3; - case EXT_CTRL_CODE_PLAY_BGM: - case EXT_CTRL_CODE_PLAY_SE: - textPrinter->printerTemplate.currentChar += 2; - return 2; - case EXT_CTRL_CODE_ESCAPE: - char_ = *++textPrinter->printerTemplate.currentChar; - break; - case EXT_CTRL_CODE_SHIFT_TEXT: - textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x + *textPrinter->printerTemplate.currentChar++; - return 2; - case EXT_CTRL_CODE_SHIFT_DOWN: - textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y + *textPrinter->printerTemplate.currentChar++; - return 2; - case EXT_CTRL_CODE_FILL_WINDOW: - FillWindowPixelBuffer(textPrinter->printerTemplate.windowId, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); - return 2; - } - break; - case CHAR_PROMPT_CLEAR: - textPrinter->state = 2; - TextPrinterInitDownArrowCounters(textPrinter); - return 3; - case CHAR_PROMPT_SCROLL: - textPrinter->state = 3; - TextPrinterInitDownArrowCounters(textPrinter); - return 3; - case CHAR_EXTRA_SYMBOL: - char_ = *textPrinter->printerTemplate.currentChar++| 0x100; - break; - case CHAR_KEYPAD_ICON: - textPrinter->printerTemplate.currentChar++; - return 0; - } - DecompressGlyph_Braille(char_); - CopyGlyphToWindow(textPrinter); - textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; - return 0; - case 1: - if (TextPrinterWait(textPrinter)) - { - textPrinter->state = 0; - } - return 3; - case 2: - if (TextPrinterWaitWithDownArrow(textPrinter)) - { + GenerateFontHalfRowLookupTable(textPrinter->printerTemplate.fgColor, textPrinter->printerTemplate.bgColor, textPrinter->printerTemplate.shadowColor); + return RENDER_REPEAT; + case EXT_CTRL_CODE_PALETTE: + textPrinter->printerTemplate.currentChar++; + return RENDER_REPEAT; + case EXT_CTRL_CODE_FONT: + subStruct->fontId = *textPrinter->printerTemplate.currentChar; + textPrinter->printerTemplate.currentChar++; + return RENDER_REPEAT; + case EXT_CTRL_CODE_RESET_SIZE: + return RENDER_REPEAT; + case EXT_CTRL_CODE_PAUSE: + textPrinter->delayCounter = *textPrinter->printerTemplate.currentChar++; + textPrinter->state = RENDER_STATE_PAUSE; + return RENDER_REPEAT; + case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: + textPrinter->state = RENDER_STATE_WAIT; + if (gTextFlags.autoScroll) + subStruct->autoScrollDelay = 0; + return RENDER_UPDATE; + case EXT_CTRL_CODE_WAIT_SE: + textPrinter->state = RENDER_STATE_WAIT_SE; + return RENDER_UPDATE; + case EXT_CTRL_CODE_PLAY_BGM: + case EXT_CTRL_CODE_PLAY_SE: + textPrinter->printerTemplate.currentChar += 2; + return RENDER_REPEAT; + case EXT_CTRL_CODE_ESCAPE: + char_ = *++textPrinter->printerTemplate.currentChar; + break; + case EXT_CTRL_CODE_SHIFT_TEXT: + textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x + *textPrinter->printerTemplate.currentChar++; + return RENDER_REPEAT; + case EXT_CTRL_CODE_SHIFT_DOWN: + textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y + *textPrinter->printerTemplate.currentChar++; + return RENDER_REPEAT; + case EXT_CTRL_CODE_FILL_WINDOW: FillWindowPixelBuffer(textPrinter->printerTemplate.windowId, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); - textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; - textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y; - textPrinter->state = 0; - } - return 3; - case 3: - if (TextPrinterWaitWithDownArrow(textPrinter)) - { - TextPrinterClearDownArrow(textPrinter); - textPrinter->scrollDistance = gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing; - textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; - textPrinter->state = 4; - } - return 3; - case 4: - if (textPrinter->scrollDistance) - { - if (textPrinter->scrollDistance < sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]) - { - ScrollWindow(textPrinter->printerTemplate.windowId, 0, textPrinter->scrollDistance, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); - textPrinter->scrollDistance = 0; - } - else - { - ScrollWindow(textPrinter->printerTemplate.windowId, 0, sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed], PIXEL_FILL(textPrinter->printerTemplate.bgColor)); - textPrinter->scrollDistance -= sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]; - } - CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); - } - else - { - textPrinter->state = 0; - } - return 3; - case 5: - if (!IsSEPlaying()) - { - textPrinter->state = 0; + return RENDER_REPEAT; } - return 3; - case 6: - if (textPrinter->delayCounter) + break; + case CHAR_PROMPT_CLEAR: + textPrinter->state = RENDER_STATE_CLEAR; + TextPrinterInitDownArrowCounters(textPrinter); + return RENDER_UPDATE; + case CHAR_PROMPT_SCROLL: + textPrinter->state = RENDER_STATE_SCROLL_START; + TextPrinterInitDownArrowCounters(textPrinter); + return RENDER_UPDATE; + case CHAR_EXTRA_SYMBOL: + char_ = *textPrinter->printerTemplate.currentChar++| 0x100; + break; + case CHAR_KEYPAD_ICON: + textPrinter->printerTemplate.currentChar++; + return RENDER_PRINT; + } + DecompressGlyph_Braille(char_); + CopyGlyphToWindow(textPrinter); + textPrinter->printerTemplate.currentX += gCurGlyph.width + textPrinter->printerTemplate.letterSpacing; + return RENDER_PRINT; + case RENDER_STATE_WAIT: + if (TextPrinterWait(textPrinter)) + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; + case RENDER_STATE_CLEAR: + if (TextPrinterWaitWithDownArrow(textPrinter)) + { + FillWindowPixelBuffer(textPrinter->printerTemplate.windowId, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); + textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; + textPrinter->printerTemplate.currentY = textPrinter->printerTemplate.y; + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + } + return RENDER_UPDATE; + case RENDER_STATE_SCROLL_START: + if (TextPrinterWaitWithDownArrow(textPrinter)) + { + TextPrinterClearDownArrow(textPrinter); + textPrinter->scrollDistance = gFonts[textPrinter->printerTemplate.fontId].maxLetterHeight + textPrinter->printerTemplate.lineSpacing; + textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x; + textPrinter->state = RENDER_STATE_SCROLL; + } + return RENDER_UPDATE; + case RENDER_STATE_SCROLL: + if (textPrinter->scrollDistance) + { + if (textPrinter->scrollDistance < sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]) { - textPrinter->delayCounter --; + ScrollWindow(textPrinter->printerTemplate.windowId, 0, textPrinter->scrollDistance, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); + textPrinter->scrollDistance = 0; } else { - textPrinter->state = 0; + ScrollWindow(textPrinter->printerTemplate.windowId, 0, sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed], PIXEL_FILL(textPrinter->printerTemplate.bgColor)); + textPrinter->scrollDistance -= sScrollDistances[gSaveBlock2Ptr->optionsTextSpeed]; } - return 3; + CopyWindowToVram(textPrinter->printerTemplate.windowId, COPYWIN_GFX); + } + else + { + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + } + return RENDER_UPDATE; + case RENDER_STATE_WAIT_SE: + if (!IsSEPlaying()) + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; + case RENDER_STATE_PAUSE: + if (textPrinter->delayCounter) + textPrinter->delayCounter --; + else + textPrinter->state = RENDER_STATE_HANDLE_CHAR; + return RENDER_UPDATE; } - return 1; + return RENDER_FINISH; } static void DecompressGlyph_Braille(u16 glyph) diff --git a/src/cable_club.c b/src/cable_club.c index 7d16c5b419e3..1f943b03ab74 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -100,7 +100,7 @@ static void PrintNumPlayersInLink(u16 windowId, u32 numPlayers) SetStandardWindowBorderStyle(windowId, 0); StringExpandPlaceholders(gStringVar4, gText_NumPlayerLink); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 88); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, xPos, 1, 0xFF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, xPos, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(windowId, COPYWIN_FULL); } diff --git a/src/contest_util.c b/src/contest_util.c index e1c95d4a2f11..37a5dedcd99a 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1181,7 +1181,7 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) if (strWidth > 30) strWidth = 30; - AddTextPrinterParameterized3(windowId, FONT_NORMAL, (strWidth * 8 - origWidth) / 2, 1, sContestLinkTextColors, -1, text); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, (strWidth * 8 - origWidth) / 2, 1, sContestLinkTextColors, TEXT_SKIP_DRAW, text); { s32 i; struct Sprite *sprite; diff --git a/src/credits.c b/src/credits.c index 0643f2c59716..43c8d66283c8 100644 --- a/src/credits.c +++ b/src/credits.c @@ -401,7 +401,7 @@ static void PrintCreditsText(const u8 *string, u8 y, bool8 isTitle) } x = GetStringCenterAlignXOffsetWithLetterSpacing(FONT_NORMAL, string, DISPLAY_WIDTH, 1); - AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 1, 0, color, -1, string); + AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 1, 0, color, TEXT_SKIP_DRAW, string); } #define tMainTaskId data[1] diff --git a/src/daycare.c b/src/daycare.c index ce11e4375933..c900e3493363 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -1199,7 +1199,7 @@ static void DaycareAddTextPrinter(u8 windowId, const u8 *text, u32 x, u32 y) printer.bgColor = 1; printer.shadowColor = 3; - AddTextPrinter(&printer, 0xFF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); } static void DaycarePrintMonNickname(struct DayCare *daycare, u8 windowId, u32 daycareSlotId, u32 y) diff --git a/src/decoration.c b/src/decoration.c index 3f93d9ccc2f9..bb2dea7f975e 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -723,9 +723,9 @@ static void PrintDecorationCategoryMenuItems(u8 taskId) { // Only DOLL and CUSHION decorations are enabled when decorating the player's room. if (shouldDisable == TRUE && i != DECORCAT_DOLL && i != DECORCAT_CUSHION) - PrintDecorationCategoryMenuItem(windowId, i, 8, i * 16, TRUE, TEXT_SPEED_FF); + PrintDecorationCategoryMenuItem(windowId, i, 8, i * 16, TRUE, TEXT_SKIP_DRAW); else - PrintDecorationCategoryMenuItem(windowId, i, 8, i * 16, FALSE, TEXT_SPEED_FF); + PrintDecorationCategoryMenuItem(windowId, i, 8, i * 16, FALSE, TEXT_SKIP_DRAW); } AddTextPrinterParameterized(windowId, FONT_NORMAL, gTasks[taskId].tDecorationMenuCommand == DECOR_MENU_TRADE ? gText_Exit : gText_Cancel, 8, i * 16 + 1, 0, NULL); diff --git a/src/diploma.c b/src/diploma.c index 6b1b7fbf5fdc..52fe94a53021 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -205,5 +205,5 @@ static void PrintDiplomaText(u8 *text, u8 var1, u8 var2) { u8 color[3] = {0, 2, 3}; - AddTextPrinterParameterized4(0, FONT_NORMAL, var1, var2, 0, 0, color, -1, text); + AddTextPrinterParameterized4(0, FONT_NORMAL, var1, var2, 0, 0, color, TEXT_SKIP_DRAW, text); } diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 41060415e0de..8c09afeb3c1b 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3008,14 +3008,14 @@ static void PrintRecordsText(u8 windowId, s32 width) LoadUserWindowBorderGfx_(windowId, 0x21D, 0xD0); DrawTextBorderOuter(windowId, 0x21D, 0xD); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_BerryPickingRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_BerryPickingRecords, width * 8), 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_BerryPickingRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_BerryPickingRecords, width * 8), 1, TEXT_SKIP_DRAW, NULL); for (i = 0; i < NUM_RECORD_TYPES; i++) { ConvertIntToDecimalStringN(gStringVar1, recordNums[i], STR_CONV_MODE_LEFT_ALIGN, sRecordNumMaxDigits[i]); numWidth = GetStringWidth(FONT_NORMAL, gStringVar1, -1); - AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, sRecordTextYCoords[i][0], TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, sRecordTextYCoords[i][0], TEXT_SKIP_DRAW, NULL); x = (width * 8) - numWidth; - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, sRecordNumYCoords[i][0], TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, sRecordNumYCoords[i][0], TEXT_SKIP_DRAW, NULL); } PutWindowTilemap(windowId); } @@ -4649,7 +4649,7 @@ static void ShowNames(void) if (playerId == GetMultiplayerId()) colorsId = COLORID_BLUE; name = GetPlayerName(playerId); - AddTextPrinterParameterized3(sGfx->windowIds[i], FONT_NORMAL, left, 1, sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[i], FONT_NORMAL, left, 1, sTextColorTable[colorsId], TEXT_SKIP_DRAW, name); CopyWindowToVram(sGfx->windowIds[i], COPYWIN_GFX); window.baseBlock += 0xE; DrawMessageWindow(&window); @@ -4733,15 +4733,15 @@ static void PrintRankedScores(u8 numPlayers_) u8 playerId = playersByRanking[i]; u32 points = scoreResults[playerId].score; - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, sRankingTexts[scoreResults[playerId].ranking], 8, sRankingYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, sRankingTexts[scoreResults[playerId].ranking], 8, sRankingYCoords[i], TEXT_SKIP_DRAW, NULL); if (playerId == GetMultiplayerId()) colorsId = COLORID_BLUE; name = GetPlayerName(playerId); - AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 28, sRankingYCoords[i], sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 28, sRankingYCoords[i], sTextColorTable[colorsId], TEXT_SKIP_DRAW, name); ConvertIntToDecimalStringN(numString, points, STR_CONV_MODE_LEFT_ALIGN, 7); numWidth = GetStringWidth(FONT_NORMAL, numString, -1); - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, numString, x - numWidth, sRankingYCoords[i], -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_SpacePoints, x, sRankingYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, numString, x - numWidth, sRankingYCoords[i], TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_SpacePoints, x, sRankingYCoords[i], TEXT_SKIP_DRAW, NULL); } } @@ -4772,8 +4772,8 @@ static void ShowResults(void) FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); strWidth = GetStringWidth(FONT_NORMAL, gText_BerryPickingResults, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_BerryPickingResults, x, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_10P30P50P50P, 68, 17, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_BerryPickingResults, x, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gText_10P30P50P50P, 68, 17, TEXT_SKIP_DRAW, NULL); for (i = 0; i < numPlayers; i++) { u8 colorsId = COLORID_GRAY; @@ -4781,7 +4781,7 @@ static void ShowResults(void) colorsId = COLORID_BLUE; name = GetPlayerName(i); - AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 0, sResultsYCoords[i], sTextColorTable[colorsId], -1, name); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, 0, sResultsYCoords[i], sTextColorTable[colorsId], TEXT_SKIP_DRAW, name); for (j = 0; j < 4; j++) { u32 width; @@ -4793,9 +4793,9 @@ static void ShowResults(void) // If player got the most of a berry type, highlight their number in red if (maxBerriesPicked == berriesPicked && maxBerriesPicked != 0) - AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, sResultsXCoords[j] - width, sResultsYCoords[i], sTextColorTable[COLORID_RED], -1, gStringVar4); + AddTextPrinterParameterized3(sGfx->windowIds[1], FONT_NORMAL, sResultsXCoords[j] - width, sResultsYCoords[i], sTextColorTable[COLORID_RED], TEXT_SKIP_DRAW, gStringVar4); else - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, sResultsXCoords[j] - width, sResultsYCoords[i], -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, sResultsXCoords[j] - width, sResultsYCoords[i], TEXT_SKIP_DRAW, NULL); } } CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); @@ -4826,7 +4826,7 @@ static void ShowResults(void) FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); strWidth = GetStringWidth(FONT_NORMAL, gText_AnnouncingRankings, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingRankings, x, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingRankings, x, 1, TEXT_SKIP_DRAW, NULL); sGfx->state++; break; case 6: @@ -4872,12 +4872,12 @@ static void ShowResults(void) FillWindowPixelBuffer(sGfx->windowIds[1], PIXEL_FILL(1)); strWidth = GetStringWidth(FONT_NORMAL, gText_AnnouncingPrizes, -1); x = (224 - strWidth) / 2; - AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingPrizes, x, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_AnnouncingPrizes, x, 1, TEXT_SKIP_DRAW, NULL); DynamicPlaceholderTextUtil_Reset(); CopyItemName(GetPrizeItemId(), gStringVar1); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_FirstPlacePrize); - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); prizeState = TryGivePrize(); if (prizeState != PRIZE_RECEIVED && prizeState != NO_PRIZE) { @@ -4888,7 +4888,7 @@ static void ShowResults(void) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_CantHoldAnyMore); else if (prizeState == PRIZE_FILLED_BAG) DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_FilledStorageSpace); - AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 41, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[1], FONT_NORMAL, gStringVar4, 0, 41, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); CopyWindowToVram(sGfx->windowIds[1], COPYWIN_GFX); @@ -4946,10 +4946,10 @@ static void Msg_WantToPlayAgain(void) // Print text FillWindowPixelBuffer(sGfx->windowIds[WIN_PLAY_AGAIN], PIXEL_FILL(1)); FillWindowPixelBuffer(sGfx->windowIds[WIN_YES_NO], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[WIN_PLAY_AGAIN], FONT_NORMAL, gText_WantToPlayAgain, 0, 5, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_PLAY_AGAIN], FONT_NORMAL, gText_WantToPlayAgain, 0, 5, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sGfx->windowIds[WIN_PLAY_AGAIN], COPYWIN_GFX); CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], COPYWIN_GFX); sGfx->state++; @@ -4970,9 +4970,9 @@ static void Msg_WantToPlayAgain(void) if (y == PLAY_AGAIN_NONE) y = PLAY_AGAIN_YES; FillWindowPixelBuffer(sGfx->windowIds[WIN_YES_NO], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, -1, NULL); - AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_Yes, 8, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_No, 8, 17, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sGfx->windowIds[WIN_YES_NO], FONT_NORMAL, gText_SelectorArrow2, 0, ((y - 1) * 16) + 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sGfx->windowIds[WIN_YES_NO], COPYWIN_FULL); // Increment state only if A or B button have been pressed. @@ -5063,7 +5063,7 @@ static void Msg_CommunicationStandby(void) break; case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_CommunicationStandby3, 0, 5, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_CommunicationStandby3, 0, 5, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); sGfx->state++; break; @@ -5103,7 +5103,7 @@ static void Msg_SomeoneDroppedOut(void) break; case 1: FillWindowPixelBuffer(sGfx->windowIds[0], PIXEL_FILL(1)); - AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_SomeoneDroppedOut, 0, 5, -1, NULL); + AddTextPrinterParameterized(sGfx->windowIds[0], FONT_NORMAL, gText_SomeoneDroppedOut, 0, 5, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sGfx->windowIds[0], COPYWIN_GFX); sGfx->state++; break; diff --git a/src/easy_chat.c b/src/easy_chat.c index 078e07eb2fbc..c78e14ecf37e 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -3932,7 +3932,7 @@ static void PrintTitle(void) xOffset = GetStringCenterAlignXOffset(FONT_NORMAL, titleText, 144); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - PrintEasyChatTextWithColors(0, FONT_NORMAL, titleText, xOffset, 1, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); + PrintEasyChatTextWithColors(0, FONT_NORMAL, titleText, xOffset, 1, TEXT_SKIP_DRAW, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); } @@ -4003,10 +4003,10 @@ static void PrintEasyChatStdMessage(u8 msgId) FillWindowPixelBuffer(1, PIXEL_FILL(1)); if (text1) - PrintEasyChatText(1, FONT_NORMAL, text1, 0, 1, TEXT_SPEED_FF, 0); + PrintEasyChatText(1, FONT_NORMAL, text1, 0, 1, TEXT_SKIP_DRAW, 0); if (text2) - PrintEasyChatText(1, FONT_NORMAL, text2, 0, 17, TEXT_SPEED_FF, 0); + PrintEasyChatText(1, FONT_NORMAL, text2, 0, 17, TEXT_SKIP_DRAW, 0); CopyWindowToVram(1, COPYWIN_FULL); } @@ -4099,7 +4099,7 @@ static void PrintCurrentPhrase(void) } *str = EOS; - PrintEasyChatText(sScreenControl->windowId, FONT_NORMAL, sScreenControl->phrasePrintBuffer, 0, i * 16 + 1, TEXT_SPEED_FF, 0); + PrintEasyChatText(sScreenControl->windowId, FONT_NORMAL, sScreenControl->phrasePrintBuffer, 0, i * 16 + 1, TEXT_SKIP_DRAW, 0); } CopyWindowToVram(sScreenControl->windowId, COPYWIN_FULL); @@ -4245,7 +4245,7 @@ static void PrintKeyboardGroupNames(void) return; } - PrintEasyChatText(2, FONT_NORMAL, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SKIP_DRAW, NULL); } y += 16; @@ -4257,7 +4257,7 @@ static void PrintKeyboardAlphabet(void) u32 i; for (i = 0; i < ARRAY_COUNT(sEasyChatKeyboardAlphabet); i++) - PrintEasyChatText(2, FONT_NORMAL, sEasyChatKeyboardAlphabet[i], 10, 97 + i * 16, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, sEasyChatKeyboardAlphabet[i], 10, 97 + i * 16, TEXT_SKIP_DRAW, NULL); } static void PrintInitialWordSelectText(void) @@ -4328,9 +4328,9 @@ static void PrintWordSelectText(u8 scrollOffset, u8 numRows) { CopyEasyChatWordPadded(sScreenControl->wordSelectPrintBuffer, easyChatWord, 0); if (!DummyWordCheck(easyChatWord)) - PrintEasyChatText(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, NULL); + PrintEasyChatText(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SKIP_DRAW, NULL); else // Never reached - PrintEasyChatTextWithColors(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SPEED_FF, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GRAY); + PrintEasyChatTextWithColors(2, FONT_NORMAL, sScreenControl->wordSelectPrintBuffer, (j * 13 + 3) * 8, y, TEXT_SKIP_DRAW, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_RED, TEXT_COLOR_LIGHT_GRAY); } } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index c705cf24b5b7..4c9456f2e60f 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -640,7 +640,7 @@ static void CB2_EggHatch_1(void) case 5: GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyID], gStringVar1); StringExpandPlaceholders(gStringVar4, gText_HatchedFromEgg); - EggHatchPrintMessage(sEggHatchData->windowId, gStringVar4, 0, 3, 0xFF); + EggHatchPrintMessage(sEggHatchData->windowId, gStringVar4, 0, 3, TEXT_SKIP_DRAW); PlayFanfare(MUS_EVOLVED); sEggHatchData->CB2_state++; PutWindowTilemap(sEggHatchData->windowId); diff --git a/src/field_specials.c b/src/field_specials.c index 96cef93ba47c..ef569ca0061c 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1911,10 +1911,10 @@ void ShowDeptStoreElevatorFloorSelect(void) SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, 0); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gText_ElevatorNowOn, 64); - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gText_ElevatorNowOn, xPos, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gText_ElevatorNowOn, xPos, 1, TEXT_SKIP_DRAW, NULL); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], 64); - AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], xPos, 17, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gDeptStoreFloorNames[gSpecialVar_0x8005], xPos, 17, TEXT_SKIP_DRAW, NULL); PutWindowTilemap(sTutorMoveAndElevatorWindowId); CopyWindowToVram(sTutorMoveAndElevatorWindowId, COPYWIN_FULL); @@ -3236,9 +3236,9 @@ void ScrollableMultichoice_RedrawPersistentMenu(void) SetStandardWindowBorderStyle(task->tWindowId, 0); for (i = 0; i < MAX_SCROLL_MULTI_ON_SCREEN; i++) - AddTextPrinterParameterized5(task->tWindowId, FONT_NORMAL, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SPEED_FF, NULL, 0, 0); + AddTextPrinterParameterized5(task->tWindowId, FONT_NORMAL, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SKIP_DRAW, NULL, 0, 0); - AddTextPrinterParameterized(task->tWindowId, FONT_NORMAL, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(task->tWindowId, FONT_NORMAL, gText_SelectorArrow, 0, selectedRow * 16, TEXT_SKIP_DRAW, NULL); PutWindowTilemap(task->tWindowId); CopyWindowToVram(task->tWindowId, COPYWIN_FULL); } diff --git a/src/frontier_util.c b/src/frontier_util.c index 88db7af1fa37..03d7b0cb519a 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -960,7 +960,7 @@ static void PrintAligned(const u8 *str, s32 y) { s32 x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 224); y = (y * 8) + 1; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, y, TEXT_SKIP_DRAW, NULL); } static void PrintHyphens(s32 y) @@ -973,18 +973,18 @@ static void PrintHyphens(s32 y) text[i] = EOS; y = (y * 8) + 1; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, 4, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, 4, y, TEXT_SKIP_DRAW, NULL); } // Battle Tower records. static void TowerPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SKIP_DRAW, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void TowerPrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1056,8 +1056,8 @@ static void ShowTowerResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_LinkMultiBattleRoomResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); TowerPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 72, 132, 49); TowerPrintRecordStreak(battleMode, FRONTIER_LVL_50, 72, 132, 65); @@ -1079,10 +1079,10 @@ static u16 DomeGetWinStreak(u8 battleMode, u8 lvlMode) static void PrintTwoStrings(const u8 *str1, const u8 *str2, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SKIP_DRAW, NULL); ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, str2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void DomePrintPrevOrCurrentStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1123,8 +1123,8 @@ static void ShowDomeResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_DoubleBattleTourneyResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); DomePrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 64, 121, 33); PrintTwoStrings(gText_Record, gText_ClearStreak, gSaveBlock2Ptr->frontier.domeRecordWinStreaks[battleMode][FRONTIER_LVL_50], 64, 121, 49); @@ -1139,12 +1139,12 @@ static void ShowDomeResultsWindow(u8 battleMode) // Battle Palace records. static void PalacePrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SKIP_DRAW, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void PalacePrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1199,8 +1199,8 @@ static void ShowPalaceResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_DoubleBattleHallResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); PalacePrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 72, 131, 49); PalacePrintRecordStreak(battleMode, FRONTIER_LVL_50, 72, 131, 65); @@ -1222,10 +1222,10 @@ static u16 PikeGetWinStreak(u8 lvlMode) static void PikePrintCleared(const u8 *str1, const u8 *str2, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str1, x1, y, TEXT_SKIP_DRAW, NULL); ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, str2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void PikePrintPrevOrCurrentStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1251,8 +1251,8 @@ static void ShowPikeResultsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_BattleChoiceResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); PikePrintPrevOrCurrentStreak(FRONTIER_LVL_50, 64, 114, 33); PikePrintCleared(gText_Record, gText_RoomsCleared, gSaveBlock2Ptr->frontier.pikeRecordStreaks[FRONTIER_LVL_50], 64, 114, 49); @@ -1267,12 +1267,12 @@ static void ShowPikeResultsWindow(void) // Battle Arena records. static void ArenaPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SKIP_DRAW, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_KOsInARow); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void ArenaPrintRecordStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1314,8 +1314,8 @@ static void ShowArenaResultsWindow(void) PrintHyphens(10); StringExpandPlaceholders(gStringVar4, gText_SetKOTourneyResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 16, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 16, 97, TEXT_SKIP_DRAW, NULL); ArenaPrintPrevOrCurrentStreak(FRONTIER_LVL_50, 72, 126, 49); ArenaPrintRecordStreak(FRONTIER_LVL_50, 72, 126, 65); ArenaPrintPrevOrCurrentStreak(FRONTIER_LVL_OPEN, 72, 126, 97); @@ -1327,16 +1327,16 @@ static void ShowArenaResultsWindow(void) // Battle Factory records. static void FactoryPrintStreak(const u8 *str, u16 num1, u16 num2, u8 x1, u8 x2, u8 x3, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SKIP_DRAW, NULL); if (num1 > MAX_STREAK) num1 = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num1, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_WinStreak); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); ConvertIntToDecimalStringN(gStringVar1, num2, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_TimesVar1); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x3, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x3, y, TEXT_SKIP_DRAW, NULL); } static void FactoryPrintRecordStreak(u8 battleMode, u8 lvlMode, u8 x1, u8 x2, u8 x3, u8 y) @@ -1403,9 +1403,9 @@ static void ShowFactoryResultsWindow(u8 battleMode) StringExpandPlaceholders(gStringVar4, gText_BattleSwapDoubleResults); PrintAligned(gStringVar4, 0); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_RentalSwap, 152, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_RentalSwap, 152, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); FactoryPrintPrevOrCurrentStreak(battleMode, FRONTIER_LVL_50, 8, 64, 158, 49); FactoryPrintRecordStreak(battleMode, FRONTIER_LVL_50, 8, 64, 158, 65); @@ -1418,12 +1418,12 @@ static void ShowFactoryResultsWindow(u8 battleMode) // Battle Pyramid records. static void PyramidPrintStreak(const u8 *str, u16 num, u8 x1, u8 x2, u8 y) { - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x1, y, TEXT_SKIP_DRAW, NULL); if (num > MAX_STREAK) num = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, gText_FloorsCleared); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x2, y, TEXT_SKIP_DRAW, NULL); } static void PyramidPrintRecordStreak(u8 lvlMode, u8 x1, u8 x2, u8 y) @@ -1464,8 +1464,8 @@ static void ShowPyramidResultsWindow(void) FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); StringExpandPlaceholders(gStringVar4, gText_BattleQuestResults); PrintAligned(gStringVar4, 2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 49, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Lv502, 8, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_OpenLv, 8, 97, TEXT_SKIP_DRAW, NULL); PrintHyphens(10); PyramidPrintPrevOrCurrentStreak(FRONTIER_LVL_50, 64, 111, 49); PyramidPrintRecordStreak(FRONTIER_LVL_50, 64, 111, 65); @@ -1488,37 +1488,37 @@ static void ShowLinkContestResultsWindow(void) StringExpandPlaceholders(gStringVar4, gText_LinkContestResults); x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 208); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, x, 1, TEXT_SKIP_DRAW, NULL); str = gText_1st; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 50; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SKIP_DRAW, NULL); str = gText_2nd; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 88; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SKIP_DRAW, NULL); str = gText_3rd; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 126; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SKIP_DRAW, NULL); str = gText_4th; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 38) + 164; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, 25, TEXT_SKIP_DRAW, NULL); x = 6; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cool, x, 41, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Beauty, x, 57, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cute, x, 73, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Smart, x, 89, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Tough, x, 105, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cool, x, 41, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Beauty, x, 57, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Cute, x, 73, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Smart, x, 89, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_Tough, x, 105, TEXT_SKIP_DRAW, NULL); for (i = 0; i < CONTEST_CATEGORIES_COUNT; i++) { for (j = 0; j < CONTESTANT_COUNT; j++) { ConvertIntToDecimalStringN(gStringVar4, gSaveBlock2Ptr->contestLinkResults[i][j], STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, (j * 38) + 64, (i * 16) + 41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, (j * 38) + 64, (i * 16) + 41, TEXT_SKIP_DRAW, NULL); } } @@ -2224,18 +2224,18 @@ static void Print1PRecord(s32 position, s32 x, s32 y, struct RankingHall1P *hall u8 text[32]; u16 winStreak; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SKIP_DRAW, NULL); hallRecord->name[PLAYER_NAME_LENGTH] = EOS; if (hallRecord->winStreak) { TVShowConvertInternationalString(text, hallRecord->name, hallRecord->language); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position)) + 1, TEXT_SKIP_DRAW, NULL); winStreak = hallRecord->winStreak; if (winStreak > MAX_STREAK) winStreak = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar2, winStreak, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[hallFacilityId]); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[hallFacilityId], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[hallFacilityId], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SKIP_DRAW, NULL); } } @@ -2244,25 +2244,25 @@ static void Print2PRecord(s32 position, s32 x, s32 y, struct RankingHall2P *hall u8 text[32]; u16 winStreak; - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gText_123Dot[position], x * 8, (8 * (y + 5 * position)) + 1, TEXT_SKIP_DRAW, NULL); if (hallRecord->winStreak) { hallRecord->name1[PLAYER_NAME_LENGTH] = EOS; hallRecord->name2[PLAYER_NAME_LENGTH] = EOS; TVShowConvertInternationalString(text, hallRecord->name1, hallRecord->language); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position - 1)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 2) * 8, (8 * (y + 5 * position - 1)) + 1, TEXT_SKIP_DRAW, NULL); if (IsStringJapanese(hallRecord->name2)) TVShowConvertInternationalString(text, hallRecord->name2, LANGUAGE_JAPANESE); else StringCopy(text, hallRecord->name2); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 4) * 8, (8 * (y + 5 * position + 1)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, text, (x + 4) * 8, (8 * (y + 5 * position + 1)) + 1, TEXT_SKIP_DRAW, NULL); winStreak = hallRecord->winStreak; if (winStreak > MAX_STREAK) winStreak = MAX_STREAK; ConvertIntToDecimalStringN(gStringVar2, winStreak, STR_CONV_MODE_RIGHT_ALIGN, 4); StringExpandPlaceholders(gStringVar4, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK]); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, sHallFacilityToRecordsText[RANKING_HALL_TOWER_LINK], 0xC8), (8 * (y + 5 * position)) + 1, TEXT_SKIP_DRAW, NULL); } } @@ -2343,9 +2343,9 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) StringCopy(gStringVar1, sRecordsWindowChallengeTexts[hallFacilityId][0]); StringExpandPlaceholders(gStringVar4, sRecordsWindowChallengeTexts[hallFacilityId][1]); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); x = GetStringRightAlignXOffset(FONT_NORMAL, sLevelModeText[lvlMode], 0xD0); - AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sLevelModeText[lvlMode], x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sLevelModeText[lvlMode], x, 1, TEXT_SKIP_DRAW, NULL); if (hallFacilityId == RANKING_HALL_TOWER_LINK) { gSaveBlock2Ptr->frontier.opponentNames[0][PLAYER_NAME_LENGTH] = EOS; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index e977828f9904..ecc8b18ae452 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -1149,7 +1149,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u *(stringPtr)++ = CHAR_QUESTION_MARK; } stringPtr[0] = EOS; - AddTextPrinterParameterized3(0, FONT_NORMAL, 0x10, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x10, 1, sMonInfoTextColors, TEXT_SKIP_DRAW, text); } // nick, species names, gender and level @@ -1158,13 +1158,13 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u if (currMon->species == SPECIES_EGG) { width = GetStringCenterAlignXOffset(FONT_NORMAL, text, 0xD0); - AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, TEXT_SKIP_DRAW, text); CopyWindowToVram(0, COPYWIN_FULL); } else { width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x80); - AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, TEXT_SKIP_DRAW, text); text[0] = CHAR_SLASH; stringPtr = StringCopy(text + 1, gSpeciesNames[currMon->species]); @@ -1185,15 +1185,15 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u } stringPtr[0] = EOS; - AddTextPrinterParameterized3(0, FONT_NORMAL, 0x80, 1, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x80, 1, sMonInfoTextColors, TEXT_SKIP_DRAW, text); stringPtr = StringCopy(text, gText_Level); ConvertIntToDecimalStringN(stringPtr, currMon->lvl, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized3(0, FONT_NORMAL, 0x24, 0x11, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x24, 0x11, sMonInfoTextColors, TEXT_SKIP_DRAW, text); stringPtr = StringCopy(text, gText_IDNumber); ConvertIntToDecimalStringN(stringPtr, (u16)(currMon->tid), STR_CONV_MODE_LEADING_ZEROS, 5); - AddTextPrinterParameterized3(0, FONT_NORMAL, 0x68, 0x11, sMonInfoTextColors, -1, text); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0x68, 0x11, sMonInfoTextColors, TEXT_SKIP_DRAW, text); CopyWindowToVram(0, COPYWIN_FULL); } @@ -1208,10 +1208,10 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) FillWindowPixelBuffer(1, PIXEL_FILL(1)); PutWindowTilemap(1); DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 0xD); - AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sPlayerInfoTextColors, -1, gText_Name); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sPlayerInfoTextColors, TEXT_SKIP_DRAW, gText_Name); width = GetStringRightAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 0x70); - AddTextPrinterParameterized3(1, FONT_NORMAL, width, 1, sPlayerInfoTextColors, -1, gSaveBlock2Ptr->playerName); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 1, sPlayerInfoTextColors, TEXT_SKIP_DRAW, gSaveBlock2Ptr->playerName); trainerId = (gSaveBlock2Ptr->playerTrainerId[0]) | (gSaveBlock2Ptr->playerTrainerId[1] << 8); AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0x11, sPlayerInfoTextColors, 0, gText_IDNumber); @@ -1222,9 +1222,9 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) text[4] = (trainerId % 10) / 1 + CHAR_0; text[5] = EOS; width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x70); - AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x11, sPlayerInfoTextColors, -1, text); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x11, sPlayerInfoTextColors, TEXT_SKIP_DRAW, text); - AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0x21, sPlayerInfoTextColors, -1, gText_Time); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 0x21, sPlayerInfoTextColors, TEXT_SKIP_DRAW, gText_Time); text[0] = (gSaveBlock2Ptr->playTimeHours / 100) + CHAR_0; text[1] = (gSaveBlock2Ptr->playTimeHours % 100) / 10 + CHAR_0; text[2] = (gSaveBlock2Ptr->playTimeHours % 10) + CHAR_0; @@ -1240,7 +1240,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) text[6] = EOS; width = GetStringRightAlignXOffset(FONT_NORMAL, text, 0x70); - AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x21, sPlayerInfoTextColors, -1, text); + AddTextPrinterParameterized3(1, FONT_NORMAL, width, 0x21, sPlayerInfoTextColors, TEXT_SKIP_DRAW, text); CopyWindowToVram(1, COPYWIN_FULL); } diff --git a/src/item_menu.c b/src/item_menu.c index 74e29fe873b8..0c4b67452587 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -974,7 +974,7 @@ static void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BERRY_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); offset = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); - BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); + 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) { @@ -982,7 +982,7 @@ static void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y) ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); offset = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119); - BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SPEED_FF, COLORID_NORMAL); + BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SKIP_DRAW, COLORID_NORMAL); } else { @@ -1204,7 +1204,7 @@ static void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned) u8 numDigits = (gBagPosition.pocket == BERRIES_POCKET) ? BERRY_CAPACITY_DIGITS : BAG_ITEM_CAPACITY_DIGITS; ConvertIntToDecimalStringN(gStringVar1, numSold, STR_CONV_MODE_LEADING_ZEROS, numDigits); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, 0); PrintMoneyAmount(windowId, 38, 1, moneyEarned, 0); } @@ -2417,11 +2417,11 @@ static void PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) windowId = AddWindow(&window); FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); offset = GetStringCenterAlignXOffset(FONT_NORMAL, pocketName1, 0x40); - BagMenu_Print(windowId, FONT_NORMAL, pocketName1, offset, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); + BagMenu_Print(windowId, FONT_NORMAL, pocketName1, offset, 1, 0, 0, TEXT_SKIP_DRAW, COLORID_POCKET_NAME); if (pocketName2) { offset = GetStringCenterAlignXOffset(FONT_NORMAL, pocketName2, 0x40); - BagMenu_Print(windowId, FONT_NORMAL, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SPEED_FF, COLORID_POCKET_NAME); + BagMenu_Print(windowId, FONT_NORMAL, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SKIP_DRAW, COLORID_POCKET_NAME); } CpuCopy32((u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, sizeof(gBagMenu->pocketNameBuffer)); RemoveWindow(windowId); @@ -2557,7 +2557,7 @@ static void PrintTMHMMoveData(u16 itemId) if (itemId == ITEM_NONE) { for (i = 0; i < 4; i++) - BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gText_ThreeDashes, 7, i * 12, 0, 0, TEXT_SKIP_DRAW, COLORID_TMHM_INFO); CopyWindowToVram(WIN_TMHM_INFO, COPYWIN_GFX); } else @@ -2575,7 +2575,7 @@ static void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 12, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + 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) @@ -2587,11 +2587,11 @@ static void PrintTMHMMoveData(u16 itemId) ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3); text = gStringVar1; } - BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 24, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + 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); - BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gStringVar1, 7, 36, 0, 0, TEXT_SPEED_FF, COLORID_TMHM_INFO); + 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/list_menu.c b/src/list_menu.c index 6b1c377f36d2..ccb1838912dd 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -604,7 +604,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y) gListMenuOverride.fontId, x, y, gListMenuOverride.lettersSpacing, - 0, colors, TEXT_SPEED_FF, str); + 0, colors, TEXT_SKIP_DRAW, str); gListMenuOverride.enabled = FALSE; } @@ -617,7 +617,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y) list->template.fontId, x, y, list->template.lettersSpacing, - 0, colors, TEXT_SPEED_FF, str); + 0, colors, TEXT_SKIP_DRAW, str); } } diff --git a/src/main_menu.c b/src/main_menu.c index 5a9a48d70bd3..748575ce3405 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -780,8 +780,8 @@ static void Task_DisplayMainMenu(u8 taskId) default: FillWindowPixelBuffer(0, PIXEL_FILL(0xA)); FillWindowPixelBuffer(1, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(0, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuNewGame); + AddTextPrinterParameterized3(1, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuOption); PutWindowTilemap(0); PutWindowTilemap(1); CopyWindowToVram(0, COPYWIN_GFX); @@ -793,9 +793,9 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(2, PIXEL_FILL(0xA)); FillWindowPixelBuffer(3, PIXEL_FILL(0xA)); FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -812,10 +812,10 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(3, PIXEL_FILL(0xA)); FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); FillWindowPixelBuffer(5, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift); - AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuMysteryGift); + AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -836,11 +836,11 @@ static void Task_DisplayMainMenu(u8 taskId) FillWindowPixelBuffer(4, PIXEL_FILL(0xA)); FillWindowPixelBuffer(5, PIXEL_FILL(0xA)); FillWindowPixelBuffer(6, PIXEL_FILL(0xA)); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuContinue); - AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuNewGame); - AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryGift2); - AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuMysteryEvents); - AddTextPrinterParameterized3(6, FONT_NORMAL, 0, 1, sTextColor_Headers, -1, gText_MainMenuOption); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuContinue); + AddTextPrinterParameterized3(3, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuNewGame); + AddTextPrinterParameterized3(4, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuMysteryGift2); + AddTextPrinterParameterized3(5, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuMysteryEvents); + AddTextPrinterParameterized3(6, FONT_NORMAL, 0, 1, sTextColor_Headers, TEXT_SKIP_DRAW, gText_MainMenuOption); MainMenu_FormatSavegameText(); PutWindowTilemap(2); PutWindowTilemap(3); @@ -2136,8 +2136,8 @@ static void MainMenu_FormatSavegameText(void) static void MainMenu_FormatSavegamePlayer(void) { StringExpandPlaceholders(gStringVar4, gText_ContinueMenuPlayer); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 17, sTextColor_MenuInfo, -1, gStringVar4); - AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 100), 17, sTextColor_MenuInfo, -1, gSaveBlock2Ptr->playerName); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 17, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, gSaveBlock2Ptr->playerName, 100), 17, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gSaveBlock2Ptr->playerName); } static void MainMenu_FormatSavegameTime(void) @@ -2146,11 +2146,11 @@ static void MainMenu_FormatSavegameTime(void) u8* ptr; StringExpandPlaceholders(gStringVar4, gText_ContinueMenuTime); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 17, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 17, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gStringVar4); ptr = ConvertIntToDecimalStringN(str, gSaveBlock2Ptr->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3); *ptr = 0xF0; ConvertIntToDecimalStringN(ptr + 1, gSaveBlock2Ptr->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2); - AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 17, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 17, sTextColor_MenuInfo, TEXT_SKIP_DRAW, str); } static void MainMenu_FormatSavegamePokedex(void) @@ -2165,9 +2165,9 @@ static void MainMenu_FormatSavegamePokedex(void) else dexCount = GetHoennPokedexCount(FLAG_GET_CAUGHT); StringExpandPlaceholders(gStringVar4, gText_ContinueMenuPokedex); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 33, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0, 33, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gStringVar4); ConvertIntToDecimalStringN(str, dexCount, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 100), 33, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 100), 33, sTextColor_MenuInfo, TEXT_SKIP_DRAW, str); } } @@ -2183,9 +2183,9 @@ static void MainMenu_FormatSavegameBadges(void) badgeCount++; } StringExpandPlaceholders(gStringVar4, gText_ContinueMenuBadges); - AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 33, sTextColor_MenuInfo, -1, gStringVar4); + AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 33, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gStringVar4); ConvertIntToDecimalStringN(str, badgeCount, STR_CONV_MODE_LEADING_ZEROS, 1); - AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 33, sTextColor_MenuInfo, -1, str); + AddTextPrinterParameterized3(2, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, str, 0xD0), 33, sTextColor_MenuInfo, TEXT_SKIP_DRAW, str); } static void LoadMainMenuWindowFrameTiles(u8 bgId, u16 tileOffset) diff --git a/src/map_name_popup.c b/src/map_name_popup.c index bc0b311622d1..e44fb3383311 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -329,7 +329,7 @@ static void ShowMapNamePopUpWindow(void) mapDisplayHeader[0] = EXT_CTRL_CODE_BEGIN; mapDisplayHeader[1] = EXT_CTRL_CODE_HIGHLIGHT; mapDisplayHeader[2] = TEXT_COLOR_TRANSPARENT; - AddTextPrinterParameterized(GetMapNamePopUpWindowId(), FONT_NARROW, mapDisplayHeader, x, 3, 0xFF, NULL); + AddTextPrinterParameterized(GetMapNamePopUpWindowId(), FONT_NARROW, mapDisplayHeader, x, 3, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(GetMapNamePopUpWindowId(), COPYWIN_FULL); } diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 751e5f91c623..06c3b8288621 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -1343,9 +1343,9 @@ static void PrintStoryList(void) u16 gameStatID = sStorytellerPtr->gameStatIDs[i]; if (gameStatID == 0) break; - AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, GetStoryTitleByStat(gameStatID), 8, 16 * i + 1, 0xFF, NULL); + AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, GetStoryTitleByStat(gameStatID), 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); } - AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 0xFF, NULL); + AddTextPrinterParameterized(sStorytellerWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); InitMenuInUpperLeftCornerNormal(sStorytellerWindowId, GetFreeStorySlot() + 1, 0); CopyWindowToVram(sStorytellerWindowId, COPYWIN_FULL); } diff --git a/src/menu.c b/src/menu.c index 94ad65e21420..9f1077b465fe 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1109,7 +1109,7 @@ void PrintMenuActionTextsAtPos(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineH { u8 i; for (i = 0; i < itemCount; i++) - AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1118,7 +1118,7 @@ static void PrintMenuActionTextsWithSpacing(u8 windowId, u8 fontId, u8 left, u8 { u8 i; for (i = 0; i < itemCount; i++) - AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SPEED_FF, NULL, letterSpacing, lineSpacing); + AddTextPrinterParameterized5(windowId, fontId, menuActions[i].text, left, (lineHeight * i) + top, TEXT_SKIP_DRAW, NULL, letterSpacing, lineSpacing); CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1149,7 +1149,7 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l printer.currentChar = menuActions[actionIds[i]].text; printer.y = (lineHeight * i) + top; printer.currentY = printer.y; - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); @@ -1208,7 +1208,7 @@ static void CreateYesNoMenuAtPos(const struct WindowTemplate *window, u8 fontId, printer.letterSpacing = GetFontAttribute(fontId, FONTATTR_LETTER_SPACING); printer.lineSpacing = GetFontAttribute(fontId, FONTATTR_LINE_SPACING); - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); InitMenuNormal(sYesNoWindowId, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos); } @@ -1239,7 +1239,7 @@ void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u for (i = 0; i < a7; i++) { for (j = 0; j < a6; j++) - AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1273,7 +1273,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth printer.y = (GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT) * i) + top; printer.currentX = printer.x; printer.currentY = printer.y; - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); } } @@ -1609,7 +1609,7 @@ void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActi u32 i; for (i = 0; i < itemCount; i++) - AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, 1, menuActions[i].text, 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1635,7 +1635,7 @@ void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions printer.currentChar = menuActions[actionIds[i]].text; printer.y = (i * 16) + 1; printer.currentY = (i * 16) + 1; - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); @@ -1662,7 +1662,7 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa printer.letterSpacing = 0; printer.lineSpacing = 0; - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); InitMenuInUpperLeftCornerNormal(sYesNoWindowId, 2, initialCursorPos); } @@ -1673,7 +1673,7 @@ void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const for (i = 0; i < rows; i++) { for (j = 0; j < columns; j++) - AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, 1, menuActions[(i * columns) + j].text, (optionWidth * j) + 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -1702,7 +1702,7 @@ void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct M printer.y = (16 * i) + 1; printer.currentX = printer.x; printer.currentY = printer.y; - AddTextPrinter(&printer, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printer, TEXT_SKIP_DRAW, NULL); } } @@ -2012,7 +2012,7 @@ void PrintPlayerNameOnWindow(u8 windowId, const u8 *src, u16 x, u16 y) StringExpandPlaceholders(gStringVar4, src); - AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, TEXT_SKIP_DRAW, 0); } // Unused. Similar to BlitBitmapRect4Bit. diff --git a/src/menu_specialized.c b/src/menu_specialized.c index d5bb975c8c17..3a6a60885dc4 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -268,7 +268,7 @@ static void MailboxMenu_ItemPrintFunc(u8 windowId, u32 itemId, u8 y) length = StringLength(buffer); if (length < PLAYER_NAME_LENGTH - 1) ConvertInternationalString(buffer, LANGUAGE_JAPANESE); - AddTextPrinterParameterized4(windowId, FONT_NORMAL, 8, y, 0, 0, sPlayerNameTextColors, -1, buffer); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 8, y, 0, 0, sPlayerNameTextColors, TEXT_SKIP_DRAW, buffer); } u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page) @@ -740,18 +740,18 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) FillWindowPixelBuffer(0, PIXEL_FILL(1)); str = gText_MoveRelearnerBattleMoves; x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 0x80); - AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 1, TEXT_SKIP_DRAW, NULL); str = gText_MoveRelearnerPP; - AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x29, TEXT_SKIP_DRAW, NULL); str = gText_MoveRelearnerPower; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x6A); - AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x19, TEXT_SKIP_DRAW, NULL); str = gText_MoveRelearnerAccuracy; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x6A); - AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, x, 0x29, TEXT_SKIP_DRAW, NULL); if (chosenMove == LIST_CANCEL) { CopyWindowToVram(0, COPYWIN_GFX); @@ -759,11 +759,11 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) } move = &gBattleMoves[chosenMove]; str = gTypeNames[move->type]; - AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 4, 0x19, TEXT_SKIP_DRAW, NULL); x = 4 + GetStringWidth(FONT_NORMAL, gText_MoveRelearnerPP, 0); ConvertIntToDecimalStringN(buffer, move->pp, STR_CONV_MODE_LEFT_ALIGN, 2); - AddTextPrinterParameterized(0, FONT_NORMAL, buffer, x, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, buffer, x, 0x29, TEXT_SKIP_DRAW, NULL); if (move->power < 2) { @@ -774,7 +774,7 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) ConvertIntToDecimalStringN(buffer, move->power, STR_CONV_MODE_LEFT_ALIGN, 3); str = buffer; } - AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x19, TEXT_SKIP_DRAW, NULL); if (move->accuracy == 0) { @@ -785,7 +785,7 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) ConvertIntToDecimalStringN(buffer, move->accuracy, STR_CONV_MODE_LEFT_ALIGN, 3); str = buffer; } - AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, str, 0x6A, 0x29, TEXT_SKIP_DRAW, NULL); str = gMoveDescriptionPointers[chosenMove - 1]; AddTextPrinterParameterized(0, FONT_NARROW, str, 0, 0x41, 0, NULL); @@ -801,15 +801,15 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) FillWindowPixelBuffer(1, PIXEL_FILL(1)); str = gText_MoveRelearnerContestMovesTitle; x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 0x80); - AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 1, TEXT_SKIP_DRAW, NULL); str = gText_MoveRelearnerAppeal; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x5C); - AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x19, TEXT_SKIP_DRAW, NULL); str = gText_MoveRelearnerJam; x = GetStringRightAlignXOffset(FONT_NORMAL, str, 0x5C); - AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x29, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, x, 0x29, TEXT_SKIP_DRAW, NULL); if (chosenMove == MENU_NOTHING_CHOSEN) { @@ -819,10 +819,10 @@ static void MoveRelearnerMenuLoadContestMoveDescription(u32 chosenMove) move = &gContestMoves[chosenMove]; str = gContestMoveTypeTextPointers[move->contestCategory]; - AddTextPrinterParameterized(1, FONT_NORMAL, str, 4, 0x19, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, str, 4, 0x19, TEXT_SKIP_DRAW, NULL); str = gContestEffectDescriptionPointers[move->effect]; - AddTextPrinterParameterized(1, FONT_NARROW, str, 0, 0x41, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NARROW, str, 0, 0x41, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(1, COPYWIN_GFX); } diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index a6d5953f99fb..4a314b076a3c 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -490,8 +490,8 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) options = gJPText_DecideStop; } - AddTextPrinterParameterized4(0, FONT_NORMAL, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, header); - AddTextPrinterParameterized4(0, FONT_SMALL, GetStringRightAlignXOffset(FONT_SMALL, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SPEED_FF, options); + AddTextPrinterParameterized4(0, FONT_NORMAL, 4, 1, 0, 0, sTextColors_TopMenu, TEXT_SKIP_DRAW, header); + AddTextPrinterParameterized4(0, FONT_SMALL, GetStringRightAlignXOffset(FONT_SMALL, options, 0xDE), 1, 0, 0, sTextColors_TopMenu, TEXT_SKIP_DRAW, options); CopyWindowToVram(0, COPYWIN_GFX); PutWindowTilemap(0); } diff --git a/src/naming_screen.c b/src/naming_screen.c index 1d42d70631a8..cd48242d074d 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1781,7 +1781,7 @@ static void DrawGenderIcon(void) StringCopy(text, gText_FemaleSymbol); isFemale = TRUE; } - AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, 0x68, 1, sGenderColors[isFemale], -1, text); + AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, 0x68, 1, sGenderColors[isFemale], TEXT_SKIP_DRAW, text); } } @@ -1921,7 +1921,7 @@ static void DrawTextEntry(void) temp[1] = gText_ExpandedPlaceholder_Empty[0]; extraWidth = (IsWideLetter(temp[0]) == TRUE) ? 2 : 0; - AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, temp, i * 8 + x + extraWidth, 1, 0xFF, NULL); + AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, temp, i * 8 + x + extraWidth, 1, TEXT_SKIP_DRAW, NULL); } TryDrawGenderIcon(); diff --git a/src/option_menu.c b/src/option_menu.c index 58d63b19b247..f985e2c52ae7 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -400,7 +400,7 @@ static void DrawOptionMenuChoice(const u8 *text, u8 x, u8 y, u8 style) } dst[i] = EOS; - AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, dst, x, y + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, dst, x, y + 1, TEXT_SKIP_DRAW, NULL); } static u8 TextSpeed_ProcessInput(u8 selection) @@ -626,7 +626,7 @@ static void ButtonMode_DrawChoices(u8 selection) static void DrawTextOption(void) { FillWindowPixelBuffer(WIN_TEXT_OPTION, PIXEL_FILL(1)); - AddTextPrinterParameterized(WIN_TEXT_OPTION, FONT_NORMAL, gText_Option, 8, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_TEXT_OPTION, FONT_NORMAL, gText_Option, 8, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(WIN_TEXT_OPTION, COPYWIN_FULL); } @@ -636,7 +636,7 @@ static void DrawOptionMenuTexts(void) FillWindowPixelBuffer(WIN_OPTIONS, PIXEL_FILL(1)); for (i = 0; i < MENUITEM_COUNT; i++) - AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, sOptionMenuItemsNames[i], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(WIN_OPTIONS, FONT_NORMAL, sOptionMenuItemsNames[i], 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(WIN_OPTIONS, COPYWIN_FULL); } diff --git a/src/party_menu.c b/src/party_menu.c index fd112c99590d..30a8696086a5 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2036,7 +2036,7 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) confirmWindowId = AddWindow(&sConfirmButtonWindowTemplate); FillWindowPixelBuffer(confirmWindowId, PIXEL_FILL(0)); mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gMenuText_Confirm, 48); - AddTextPrinterParameterized4(confirmWindowId, FONT_SMALL, mainOffset, 1, 0, 0, sFontColorTable[0], -1, gMenuText_Confirm); + AddTextPrinterParameterized4(confirmWindowId, FONT_SMALL, mainOffset, 1, 0, 0, sFontColorTable[0], TEXT_SKIP_DRAW, gMenuText_Confirm); PutWindowTilemap(confirmWindowId); CopyWindowToVram(confirmWindowId, COPYWIN_GFX); cancelWindowId = AddWindow(&sMultiCancelButtonWindowTemplate); @@ -2053,12 +2053,12 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) if (gPartyMenu.menuType != PARTY_MENU_TYPE_SPIN_TRADE) { mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gText_Cancel, 48); - AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel); + AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], TEXT_SKIP_DRAW, gText_Cancel); } else { mainOffset = GetStringCenterAlignXOffset(FONT_SMALL, gText_Cancel2, 48); - AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], -1, gText_Cancel2); + AddTextPrinterParameterized3(cancelWindowId, FONT_SMALL, mainOffset + offset, 1, sFontColorTable[0], TEXT_SKIP_DRAW, gText_Cancel2); } PutWindowTilemap(cancelWindowId); CopyWindowToVram(cancelWindowId, COPYWIN_GFX); @@ -4504,7 +4504,7 @@ static void ShowMoveSelectWindow(u8 slot) for (i = 0; i < MAX_MON_MOVES; i++) { move = GetMonData(&gPlayerParty[slot], MON_DATA_MOVE1 + i); - AddTextPrinterParameterized(windowId, fontId, gMoveNames[move], 8, (i * 16) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, fontId, gMoveNames[move], 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); if (move != MOVE_NONE) moveCount++; } diff --git a/src/player_pc.c b/src/player_pc.c index a4e55bf32ae1..622c30ec02bf 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -1027,13 +1027,13 @@ static void ItemStorage_PrintMenuItem(u8 windowId, u32 id, u8 yOffset) if (sItemStorageMenu->toSwapPos != NOT_SWAPPING) { if (sItemStorageMenu->toSwapPos == (u8)id) - ItemStorage_DrawSwapArrow(yOffset, 0, TEXT_SPEED_FF); + ItemStorage_DrawSwapArrow(yOffset, 0, TEXT_SKIP_DRAW); else - ItemStorage_DrawSwapArrow(yOffset, 0xFF, TEXT_SPEED_FF); + ItemStorage_DrawSwapArrow(yOffset, 0xFF, TEXT_SKIP_DRAW); } ConvertIntToDecimalStringN(gStringVar1, gSaveBlock1Ptr->pcItems[id].quantity, STR_CONV_MODE_RIGHT_ALIGN, 3); StringExpandPlaceholders(gStringVar4, gText_xVar1); - AddTextPrinterParameterized(windowId, FONT_NARROW, gStringVar4, GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 104), yOffset, 0xFF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, gStringVar4, GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 104), yOffset, TEXT_SKIP_DRAW, NULL); } } diff --git a/src/pokedex.c b/src/pokedex.c index ae4def99a3c0..58676b215c87 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2324,7 +2324,7 @@ static void PrintMonDexNumAndName(u8 windowId, u8 fontId, const u8* str, u8 left color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(windowId, fontId, left * 8, (top * 8) + 1, 0, 0, color, -1, str); + AddTextPrinterParameterized4(windowId, fontId, left * 8, (top * 8) + 1, 0, 0, color, TEXT_SKIP_DRAW, str); } // u16 ignored is passed but never used @@ -3167,7 +3167,7 @@ static void PrintInfoScreenText(const u8* str, u8 left, u8 top) color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(0, FONT_NORMAL, left, top, 0, 0, color, -1, str); + AddTextPrinterParameterized4(0, FONT_NORMAL, left, top, 0, 0, color, TEXT_SKIP_DRAW, str); } #define tScrolling data[0] @@ -4474,7 +4474,7 @@ static void PrintInfoSubMenuText(u8 windowId, const u8 *str, u8 left, u8 top) color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_LIGHT_GRAY; - AddTextPrinterParameterized4(windowId, FONT_NORMAL, left, top, 0, 0, color, -1, str); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, left, top, 0, 0, color, TEXT_SKIP_DRAW, str); } static void UnusedPrintNum(u8 windowId, u16 num, u8 left, u8 top) @@ -4781,7 +4781,7 @@ static void PrintSearchText(const u8 *str, u32 x, u32 y) color[0] = TEXT_COLOR_TRANSPARENT; color[1] = TEXT_DYNAMIC_COLOR_6; color[2] = TEXT_COLOR_DARK_GRAY; - AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 0, 0, color, -1, str); + AddTextPrinterParameterized4(0, FONT_NORMAL, x, y, 0, 0, color, TEXT_SKIP_DRAW, str); } static void ClearSearchMenuRect(u32 x, u32 y, u32 width, u32 height) diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index 2f0d676cbe9a..1b6e6a388a5f 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -367,7 +367,7 @@ static void FindMapsWithMon(u16 species) } } - for (i = 0; gWildMonHeaders[i].mapGroup != 0xFF; i++) + for (i = 0; gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED); i++) { if (MapHasMon(&gWildMonHeaders[i], species)) { diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index dd213989cb05..a6b4b6f424e3 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3313,7 +3313,7 @@ static void Msg_WantToPlayAgain(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(1, 8, 20, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_WantToPlayAgain2, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_WantToPlayAgain2, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; @@ -3340,7 +3340,7 @@ static void Msg_SavingDontTurnOff(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 7, 26, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; @@ -3383,7 +3383,7 @@ static void Msg_SomeoneDroppedOut(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SomeoneDroppedOut2, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_SomeoneDroppedOut2, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; @@ -3409,7 +3409,7 @@ static void Msg_CommunicationStandby(void) { case 0: sPokemonJumpGfx->msgWindowId = AddMessageWindow(7, 10, 16, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_CommunicationStandby4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, gText_CommunicationStandby4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->mainState++; break; @@ -3487,7 +3487,7 @@ static void PrintPrizeMessage(u16 itemId, u16 quantity) DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, sPokemonJumpGfx->itemQuantityStr); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_AwesomeWonF701F700); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_LEVEL_UP; sPokemonJumpGfx->msgWindowState = 0; @@ -3500,7 +3500,7 @@ static void PrintPrizeFilledBagMessage(u16 itemId) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_FilledStorageSpace2); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; @@ -3513,7 +3513,7 @@ static void PrintNoRoomForPrizeMessage(u16 itemId) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName); DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_CantHoldMore); sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 9, 22, 2); - AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, FONT_NORMAL, sPokemonJumpGfx->prizeMsg, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX); sPokemonJumpGfx->fanfare = MUS_DUMMY; sPokemonJumpGfx->msgWindowState = 0; @@ -3857,7 +3857,7 @@ static void PrintPokeJumpPlayerName(int multiplayerId, u8 bgColor, u8 fgColor, u FillWindowPixelBuffer(sPokemonJumpGfx->nameWindowIds[multiplayerId], 0); x = 64 - GetStringWidth(FONT_NORMAL, GetPokeJumpPlayerName(multiplayerId), -1); x /= 2; - AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], FONT_NORMAL, x, 1, colors, -1, GetPokeJumpPlayerName(multiplayerId)); + AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], FONT_NORMAL, x, 1, colors, TEXT_SKIP_DRAW, GetPokeJumpPlayerName(multiplayerId)); CopyWindowToVram(sPokemonJumpGfx->nameWindowIds[multiplayerId], COPYWIN_GFX); } @@ -4217,14 +4217,14 @@ static void PrintRecordsText(u16 windowId, int width) LoadUserWindowBorderGfx_(windowId, 0x21D, 0xD0); DrawTextBorderOuter(windowId, 0x21D, 0xD); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_PkmnJumpRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_PkmnJumpRecords, width * 8), 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_PkmnJumpRecords, GetStringCenterAlignXOffset(FONT_NORMAL, gText_PkmnJumpRecords, width * 8), 1, TEXT_SKIP_DRAW, NULL); for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) { - AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, 25 + (i * 16), TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[i], 0, 25 + (i * 16), TEXT_SKIP_DRAW, NULL); ConvertIntToDecimalStringN(gStringVar1, recordNums[i], STR_CONV_MODE_LEFT_ALIGN, 5); TruncateToFirstWordOnly(gStringVar1); x = (width * 8) - GetStringWidth(FONT_NORMAL, gStringVar1, 0); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, 25 + (i * 16), TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, x, 25 + (i * 16), TEXT_SKIP_DRAW, NULL); } PutWindowTilemap(windowId); } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index ec3555088ceb..01133251b734 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1358,7 +1358,7 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero txtColor[0] = zero2; txtColor[1] = TEXT_DYNAMIC_COLOR_6; txtColor[2] = TEXT_DYNAMIC_COLOR_5; - AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 1, 0, 0, txtColor, -1, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 1, 0, 0, txtColor, TEXT_SKIP_DRAW, string); tileBytesToBuffer = bytesToBuffer; if (tileBytesToBuffer > 6u) @@ -1402,7 +1402,7 @@ static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgC txtColor[0] = bgColor; txtColor[1] = fgColor; txtColor[2] = shadowColor; - AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, txtColor, -1, string); + AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, txtColor, TEXT_SKIP_DRAW, string); CpuCopy16(tileData1, dst, tileSize); CpuCopy16(tileData2, dst + offset, tileSize); RemoveWindow(windowId); @@ -1561,7 +1561,7 @@ static void Task_PCMainMenu(u8 taskId) LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SPEED_FF, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SKIP_DRAW, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); CopyWindowToVram(task->tWindowId, COPYWIN_FULL); task->tState++; @@ -1951,13 +1951,13 @@ static void ChooseBoxMenu_PrintInfo(void) // Print box name center = GetStringCenterAlignXOffset(FONT_NORMAL, boxName, 64); - AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 1, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, boxName); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 1, sChooseBoxMenu_TextColors, TEXT_SKIP_DRAW, boxName); // Print #/30 for number of PokĂ©mon in the box ConvertIntToDecimalStringN(numBoxMonsText, numInBox, STR_CONV_MODE_RIGHT_ALIGN, 2); StringAppend(numBoxMonsText, sText_OutOf30); center = GetStringCenterAlignXOffset(FONT_NORMAL, numBoxMonsText, 64); - AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 17, sChooseBoxMenu_TextColors, TEXT_SPEED_FF, numBoxMonsText); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, center, 17, sChooseBoxMenu_TextColors, TEXT_SKIP_DRAW, numBoxMonsText); winTileData = GetWindowAttribute(windowId, WINDOW_TILE_DATA); CpuCopy32((void *)winTileData, (void *)OBJ_VRAM0 + 0x100 + (GetSpriteTileStartByTag(sChooseBoxMenu->tileTag) * 32), 0x400); @@ -4005,17 +4005,17 @@ static void PrintDisplayMonInfo(void) FillWindowPixelBuffer(0, PIXEL_FILL(1)); if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 15, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 43, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 0, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 15, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 43, TEXT_SKIP_DRAW, NULL); } else { - AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 0, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 13, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 28, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 0, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 13, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 28, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(0, COPYWIN_GFX); @@ -4319,7 +4319,7 @@ static void PrintMessage(u8 id) DynamicPlaceholderTextUtil_ExpandPlaceholders(sStorage->messageText, sMessages[id].text); FillWindowPixelBuffer(1, PIXEL_FILL(1)); - AddTextPrinterParameterized(1, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(1, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SKIP_DRAW, NULL); DrawTextBorderOuter(1, 2, 14); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_GFX); diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 37079b171815..6ce819c04ed4 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -655,9 +655,9 @@ static void PrintSearchResultListMenuItems(struct PokenavSub8 *searchList) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); *gStringVar1 = EOS; DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar2, gText_NumberF700); - AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar2, 4, 1, 0xFF, NULL); + AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar2, 4, 1, TEXT_SKIP_DRAW, NULL); ConvertIntToDecimalStringN(gStringVar1, r7, STR_CONV_MODE_RIGHT_ALIGN, 3); - AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar1, 34, 1, 0xFF, NULL); + AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar1, 34, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(searchList->winid, COPYWIN_GFX); } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index e8751e0bf92f..5af60a001d7a 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -986,14 +986,14 @@ static void PrintNumberOfBattles(u16 windowId) static void PrintMatchCallInfoLabel(u16 windowId, const u8 *str, int top) { int y = top * 16 + 1; - AddTextPrinterParameterized(windowId, FONT_NARROW, str, 2, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, str, 2, y, TEXT_SKIP_DRAW, NULL); } static void PrintMatchCallInfoNumber(u16 windowId, const u8 *str, int top) { int x = GetStringRightAlignXOffset(FONT_NARROW, str, 86); int y = top * 16 + 1; - AddTextPrinterParameterized(windowId, FONT_NARROW, str, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NARROW, str, x, y, TEXT_SKIP_DRAW, NULL); } static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) @@ -1023,7 +1023,7 @@ static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *state) if (optionText == MATCH_CALL_OPTION_COUNT) break; - AddTextPrinterParameterized(state->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index b8e543c67e6f..9e0ae89f181d 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -713,7 +713,7 @@ void sub_81C8CB4(struct MatchCallWindowState *state, struct PokenavSub17Substruc list->unk34(state->unk10 + state->unkC * state->windowTopIndex, list->unkTextBuffer); list->unk38(list->listWindow.windowId, state->windowTopIndex, list->listWindow.unkA); FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(4), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); - AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SPEED_FF, list->unkTextBuffer); + AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SKIP_DRAW, list->unkTextBuffer); sub_81C8C64(&list->listWindow, 1); CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_FULL, 0, list->listWindow.unkA * 2, list->listWindow.unk4, 2); } @@ -722,7 +722,7 @@ void sub_81C8D4C(struct MatchCallWindowState *state, struct PokenavSub17Substruc { list->unk34(state->unk10 + state->unkC * state->windowTopIndex, list->unkTextBuffer); FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); - AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->unkTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->unkTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SKIP_DRAW, NULL); sub_81C8C64(&list->listWindow, 0); CopyWindowToVram(list->listWindow.windowId, COPYWIN_FULL); } @@ -734,7 +734,7 @@ void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) u32 top = (list->listWindow.unkA + 1 + (fieldId * 2)) & 0xF; FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, top << 4, list->listWindow.unk4, 16); - AddTextPrinterParameterized3(list->listWindow.windowId, FONT_NARROW, 2, (top << 4) + 1, colors, -1, fieldNames[fieldId]); + AddTextPrinterParameterized3(list->listWindow.windowId, FONT_NARROW, 2, (top << 4) + 1, colors, TEXT_SKIP_DRAW, fieldNames[fieldId]); CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.unk4, 2); } @@ -755,7 +755,7 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok if (str != NULL) { sub_81DB620(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); - AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SKIP_DRAW, NULL); CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, r6 * 2, list->listWindow.unk4, 2); } } diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 8da5ddc9081b..78c60a09c0a5 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -535,7 +535,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_CITY_CANFLY: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); - AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SKIP_DRAW, NULL); DrawCityMap(state, regionMap->mapSecId, regionMap->posWithinMapSec); CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(FALSE); @@ -543,7 +543,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_CITY_CANTFLY: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowRectTilemap(state->infoWindowId, 0, 0, 12, 2); - AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SKIP_DRAW, NULL); FillBgTilemapBufferRect(1, 0x1041, 17, 6, 12, 11, 17); CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(TRUE); @@ -552,7 +552,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) case MAPSECTYPE_BATTLE_FRONTIER: FillWindowPixelBuffer(state->infoWindowId, PIXEL_FILL(1)); PutWindowTilemap(state->infoWindowId); - AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, regionMap->mapSecName, 0, 1, TEXT_SKIP_DRAW, NULL); PrintLandmarkNames(state, regionMap->mapSecId, regionMap->posWithinMapSec); CopyWindowToVram(state->infoWindowId, COPYWIN_FULL); SetCityZoomTextInvisibility(TRUE); @@ -654,7 +654,7 @@ static void PrintLandmarkNames(struct Pokenav5Struct_2 *state, int mapSecId, int break; StringCopyPadded(gStringVar1, landmarkName, CHAR_SPACE, 12); - AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, gStringVar1, 0, i * 16 + 17, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(state->infoWindowId, FONT_NARROW, gStringVar1, 0, i * 16 + 17, TEXT_SKIP_DRAW, NULL); i++; } } diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index 8f7e27fe103a..464e0b55cb61 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -674,7 +674,7 @@ static void sub_81D02B0(s32 windowId, s32 val1, s32 val2) *ptr++ = CHAR_SLASH; ConvertIntToDecimalStringN(ptr, val2, STR_CONV_MODE_RIGHT_ALIGN, 3); x = GetStringCenterAlignXOffset(FONT_NORMAL, strbuf, 56); - AddTextPrinterParameterized(windowId, FONT_NORMAL, strbuf, x, 1, 0xFF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, strbuf, x, 1, TEXT_SKIP_DRAW, NULL); } static void InitMonRibbonPokenavListMenuTemplate(void) diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index c8c63f01785e..bf1c156e587d 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -809,7 +809,7 @@ static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_RibbonsF700); FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, -1, gStringVar4); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, TEXT_SKIP_DRAW, gStringVar4); CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); } @@ -824,7 +824,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) { // Print normal ribbon name/description for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, -1, gRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gRibbonDescriptionPointers[ribbonId][i]); } else { @@ -840,7 +840,7 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) // Print gift ribbon name/description ribbonId--; for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, -1, gGiftRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gGiftRibbonDescriptionPointers[ribbonId][i]); } CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); @@ -877,7 +877,7 @@ static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); GetMonNicknameLevelGender(gStringVar3, &level, &gender); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar3, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar3, 0, 1, TEXT_SKIP_DRAW, NULL); switch (gender) { case MON_MALE: @@ -896,7 +896,7 @@ static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) *(txtPtr++) = CHAR_EXTRA_SYMBOL; *(txtPtr++) = CHAR_LV_2; ConvertIntToDecimalStringN(txtPtr, level, STR_CONV_MODE_LEFT_ALIGN, 3); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, 60, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar1, 60, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(windowId, COPYWIN_GFX); } @@ -933,7 +933,7 @@ static void PrintRibbonsMonListIndex(struct PokenavSub14 *structPtr) *(txtPtr++) = CHAR_SLASH; ConvertIntToDecimalStringN(txtPtr, count, STR_CONV_MODE_RIGHT_ALIGN, 3); x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar1, 56); - AddTextPrinterParameterized(structPtr->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(structPtr->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(structPtr->listIdxWindowId, COPYWIN_GFX); } diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index da434482e8fd..25e3a7330201 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -381,7 +381,7 @@ static void PrintTime(u8 windowId, u8 x, u8 y, u16 days, u8 hours, u8 minutes, u ConvertIntToDecimalStringN(gStringVar1, seconds, STR_CONV_MODE_LEADING_ZEROS, 2); dest = StringCopy(dest, gStringVar1); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, x, y, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, x, y, TEXT_SKIP_DRAW, NULL); } static void ShowChooseTimeWindow(u8 windowId, u16 days, u8 hours, u8 minutes, u8 seconds) @@ -578,7 +578,7 @@ static void Task_ShowResetRtcPrompt(u8 taskId) case 0: DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x214, 0xE); - AddTextPrinterParameterized(0, FONT_NORMAL, gText_PresentTime, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_PresentTime, 0, 1, TEXT_SKIP_DRAW, 0); PrintTime( 0, 0, @@ -588,7 +588,7 @@ static void Task_ShowResetRtcPrompt(u8 taskId) gLocalTime.minutes, gLocalTime.seconds); - AddTextPrinterParameterized(0, FONT_NORMAL, gText_PreviousTime, 0, 33, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, gText_PreviousTime, 0, 33, TEXT_SKIP_DRAW, 0); PrintTime( 0, 0, diff --git a/src/roulette.c b/src/roulette.c index 7e43f5db3974..1e5e1f513c20 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1223,7 +1223,7 @@ static void CB2_LoadRoulette(void) SetMultiplierSprite(SELECTION_NONE); DrawGridBackground(SELECTION_NONE); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ControlsInstruction, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ControlsInstruction, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); gSpriteCoordOffsetX = -60; gSpriteCoordOffsetY = 0; @@ -1294,7 +1294,7 @@ static void Task_AskKeepPlaying(u8 taskId) { DisplayYesNoMenuDefaultYes(); DrawStdWindowFrame(sTextWindowId, 0); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_KeepPlaying, 0, 1, TEXT_SPEED_FF, 0); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_KeepPlaying, 0, 1, TEXT_SKIP_DRAW, 0); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); DoYesNoFuncWithChoice(taskId, &sYesNoTable_KeepPlaying); } @@ -1806,14 +1806,14 @@ static void Task_PrintSpinResult(u8 taskId) { PlayFanfare(MUS_SLOTS_JACKPOT); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_Jackpot, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_Jackpot, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); } else { PlayFanfare(MUS_SLOTS_WIN); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ItsAHit, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_ItsAHit, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); } break; @@ -1821,7 +1821,7 @@ static void Task_PrintSpinResult(u8 taskId) default: m4aSongNumStart(SE_FAILURE); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NothingDoing, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NothingDoing, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); break; } @@ -1866,7 +1866,7 @@ static void Task_PrintPayout(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, (sRoulette->minBet * gTasks[taskId].tMultiplier), STR_CONV_MODE_LEFT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, Roulette_Text_YouveWonXCoins); DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); gTasks[taskId].tPayout = (sRoulette->minBet * gTasks[taskId].tMultiplier); gTasks[taskId].data[7] = 0; @@ -1902,7 +1902,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Reached Ball 6, clear board DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_BoardWillBeCleared, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_BoardWillBeCleared, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_ClearBoard, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -1910,7 +1910,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Player maxed out coins DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -1924,7 +1924,7 @@ static void Task_TryPrintEndTurnMsg(u8 taskId) { // Player out of coins DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NoCoinsLeft, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_NoCoinsLeft, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_StopPlaying, 60, A_BUTTON | B_BUTTON); } @@ -1949,7 +1949,7 @@ static void Task_ClearBoard(u8 taskId) if (gTasks[taskId].tCoins == MAX_COINS) { DrawStdWindowFrame(sTextWindowId, FALSE); - AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_CoinCaseIsFull, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); StartTaskAfterDelayOrInput(taskId, Task_AskKeepPlaying, NO_DELAY, A_BUTTON | B_BUTTON); } @@ -3426,7 +3426,7 @@ static void Task_PrintMinBet(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, minBet, STR_CONV_MODE_LEADING_ZEROS, 1); StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_ShowMinBetYesNo; } @@ -3445,7 +3445,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) { // Special rate for Game Corner service day (only at second table) DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, FONT_NORMAL, Roulette_Text_SpecialRateTable, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, Roulette_Text_SpecialRateTable, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_PrintMinBet; } @@ -3454,7 +3454,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) // Print minimum bet StringExpandPlaceholders(gStringVar4, Roulette_Text_PlayMinimumWagerIsX); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_ShowMinBetYesNo; } @@ -3464,7 +3464,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) // Not enough for minimum bet StringExpandPlaceholders(gStringVar4, Roulette_Text_NotEnoughCoins); DrawStdWindowFrame(0, FALSE); - AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_NotEnoughForMinBet; gTasks[taskId].tCoins = 0; diff --git a/src/scrcmd.c b/src/scrcmd.c index ce312a563c14..ffe75b370f27 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -49,6 +49,7 @@ #include "tv.h" #include "window.h" #include "constants/event_objects.h" +#include "constants/maps.h" typedef u16 (*SpecialFunc)(void); typedef void (*NativeFunc)(void); @@ -790,7 +791,7 @@ bool8 ScrCmd_warphole(struct ScriptContext *ctx) u16 y; PlayerGetDestCoords(&x, &y); - if (mapGroup == 0xFF && mapNum == 0xFF) + if (mapGroup == MAP_GROUP(UNDEFINED) && mapNum == MAP_NUM(UNDEFINED)) SetWarpDestinationToFixedHoleWarp(x - MAP_OFFSET, y - MAP_OFFSET); else SetWarpDestination(mapGroup, mapNum, -1, x - MAP_OFFSET, y - MAP_OFFSET); @@ -1532,7 +1533,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) DrawStdWindowFrame(gBrailleWindowId, 0); PutWindowTilemap(gBrailleWindowId); FillWindowPixelBuffer(gBrailleWindowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(gBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, 0xFF, 0x0); + AddTextPrinterParameterized(gBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(gBrailleWindowId, COPYWIN_FULL); return FALSE; } diff --git a/src/script_menu.c b/src/script_menu.c index 8293b6f7a104..c82440b79a79 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -353,22 +353,22 @@ static void CreatePCMultichoice(void) numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SKIP_DRAW, NULL); } else { numChoices = 3; windowId = CreateWindowFromRect(0, 0, width, 6); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SKIP_DRAW, NULL); } // Change PC name if player has met Lanette if (FlagGet(FLAG_SYS_PC_LANETTE)) - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SKIP_DRAW, NULL); else - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SKIP_DRAW, NULL); StringExpandPlaceholders(gStringVar4, gText_PlayersPC); PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); @@ -527,7 +527,7 @@ static void CreateLilycoveSSTidalMultichoice(void) { if (sLilycoveSSTidalSelections[i] != 0xFF) { - AddTextPrinterParameterized(windowId, FONT_NORMAL, sLilycoveSSTidalDestinations[sLilycoveSSTidalSelections[i]], 8, selectionCount * 16 + 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, sLilycoveSSTidalDestinations[sLilycoveSSTidalSelections[i]], 8, selectionCount * 16 + 1, TEXT_SKIP_DRAW, NULL); selectionCount++; } } @@ -688,14 +688,14 @@ static void CreateStartMenuForPokenavTutorial(void) { u8 windowId = CreateWindowFromRect(21, 0, 7, 18); SetStandardWindowBorderStyle(windowId, 0); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokedex, 8, 9, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokemon, 8, 25, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionBag, 8, 41, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokenav, 8, 57, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gSaveBlock2Ptr->playerName, 8, 73, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionSave, 8, 89, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionOption, 8, 105, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokedex, 8, 9, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokemon, 8, 25, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionBag, 8, 41, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokenav, 8, 57, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gSaveBlock2Ptr->playerName, 8, 73, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionSave, 8, 89, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionOption, 8, 105, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionExit, 8, 121, TEXT_SKIP_DRAW, NULL); InitMenuNormal(windowId, FONT_NORMAL, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); InitMultichoiceNoWrap(FALSE, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), windowId, MULTI_FORCED_START_MENU); CopyWindowToVram(windowId, COPYWIN_FULL); diff --git a/src/shop.c b/src/shop.c index 604abd1ab503..fa4a73bbbd37 100755 --- a/src/shop.c +++ b/src/shop.c @@ -577,7 +577,7 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1); x = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 0x78); - AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, 0, 0, sShopBuyMenuTextColors[1], -1, gStringVar4); + AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, 0, 0, sShopBuyMenuTextColors[1], TEXT_SKIP_DRAW, gStringVar4); } } @@ -1145,7 +1145,7 @@ static void BuyMenuPrintItemQuantityAndPrice(u8 taskId) s16 *data = gTasks[taskId].data; FillWindowPixelBuffer(4, PIXEL_FILL(1)); - PrintMoneyAmount(4, 38, 1, sShopData->totalCost, TEXT_SPEED_FF); + PrintMoneyAmount(4, 38, 1, sShopData->totalCost, TEXT_SKIP_DRAW); ConvertIntToDecimalStringN(gStringVar1, tItemCount, STR_CONV_MODE_LEADING_ZEROS, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); BuyMenuPrint(4, gStringVar4, 0, 1, 0, 0); diff --git a/src/start_menu.c b/src/start_menu.c index 0cf102efcd6c..05ceb11194b3 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -386,7 +386,7 @@ static void ShowSafariBallsWindow(void) DrawStdWindowFrame(sSafariBallsWindowId, FALSE); ConvertIntToDecimalStringN(gStringVar1, gNumSafariBalls, STR_CONV_MODE_RIGHT_ALIGN, 2); StringExpandPlaceholders(gStringVar4, gText_SafariBallStock); - AddTextPrinterParameterized(sSafariBallsWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); + AddTextPrinterParameterized(sSafariBallsWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX); } @@ -401,7 +401,7 @@ static void ShowPyramidFloorWindow(void) DrawStdWindowFrame(sBattlePyramidFloorWindowId, FALSE); StringCopy(gStringVar1, sPyramidFloorNames[gSaveBlock2Ptr->frontier.curChallengeBattleNum]); StringExpandPlaceholders(gStringVar4, gText_BattlePyramidFloor); - AddTextPrinterParameterized(sBattlePyramidFloorWindowId, FONT_NORMAL, gStringVar4, 0, 1, 0xFF, NULL); + AddTextPrinterParameterized(sBattlePyramidFloorWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sBattlePyramidFloorWindowId, COPYWIN_GFX); } @@ -433,7 +433,7 @@ static bool32 PrintStartMenuActions(s8 *pIndex, u32 count) else { StringExpandPlaceholders(gStringVar4, sStartMenuItems[sCurrentStartMenuActions[index]].text); - AddTextPrinterParameterized(GetStartMenuWindowId(), FONT_NORMAL, gStringVar4, 8, (index << 4) + 9, 0xFF, NULL); + AddTextPrinterParameterized(GetStartMenuWindowId(), FONT_NORMAL, gStringVar4, 8, (index << 4) + 9, TEXT_SKIP_DRAW, NULL); } index++; @@ -1240,7 +1240,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, - TEXT_SPEED_FF, + TEXT_SKIP_DRAW, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, @@ -1330,38 +1330,38 @@ static void ShowSaveInfoWindow(void) // Print region name yOffset = 1; BufferSaveMenuText(SAVE_MENU_LOCATION, gStringVar4, TEXT_COLOR_GREEN); - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, 0, yOffset, TEXT_SKIP_DRAW, NULL); // Print player name yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPlayer, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPlayer, 0, yOffset, TEXT_SKIP_DRAW, NULL); BufferSaveMenuText(SAVE_MENU_NAME, gStringVar4, color); xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); PrintPlayerNameOnWindow(sSaveInfoWindowId, gStringVar4, xOffset, yOffset); // Print badge count yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingBadges, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingBadges, 0, yOffset, TEXT_SKIP_DRAW, NULL); BufferSaveMenuText(SAVE_MENU_BADGES, gStringVar4, color); xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, TEXT_SKIP_DRAW, NULL); if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE) { // Print pokedex count yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPokedex, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPokedex, 0, yOffset, TEXT_SKIP_DRAW, NULL); BufferSaveMenuText(SAVE_MENU_CAUGHT, gStringVar4, color); xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, TEXT_SKIP_DRAW, NULL); } // Print play time yOffset += 16; - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingTime, 0, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingTime, 0, yOffset, TEXT_SKIP_DRAW, NULL); BufferSaveMenuText(SAVE_MENU_PLAY_TIME, gStringVar4, color); xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x70); - AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, 0xFF, NULL); + AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gStringVar4, xOffset, yOffset, TEXT_SKIP_DRAW, NULL); CopyWindowToVram(sSaveInfoWindowId, COPYWIN_GFX); } diff --git a/src/trade.c b/src/trade.c index 603d92c8713b..88bef1ea016d 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2153,7 +2153,7 @@ static void DoQueuedActions(void) static void PrintTradeMessage(u8 messageId) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized(0, FONT_NORMAL, sTradeMessages[messageId], 0, 1, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(0, FONT_NORMAL, sTradeMessages[messageId], 0, 1, TEXT_SKIP_DRAW, NULL); DrawTextBorderOuter(0, 20, 12); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); diff --git a/src/trainer_card.c b/src/trainer_card.c index b72e454985a0..8f3b61a3565a 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -1001,9 +1001,9 @@ static void PrintNameOnCardFront(void) StringCopy(txtPtr, sData->trainerCard.playerName); ConvertInternationalString(txtPtr, sData->language); if (sData->cardType == CARD_TYPE_FRLG) - AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 28, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 28, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer); else - AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 33, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 33, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer); } static void PrintIdOnCard(void) @@ -1025,7 +1025,7 @@ static void PrintIdOnCard(void) top = 9; } - AddTextPrinterParameterized3(1, FONT_NORMAL, xPos, top, sTrainerCardTextColors, TEXT_SPEED_FF, buffer); + AddTextPrinterParameterized3(1, FONT_NORMAL, xPos, top, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer); } static void PrintMoneyOnCard(void) @@ -1034,9 +1034,9 @@ static void PrintMoneyOnCard(void) u8 top; if (!sData->isHoenn) - AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 56, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 56, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardMoney); else - AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 57, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 57, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardMoney); ConvertIntToDecimalStringN(gStringVar1, sData->trainerCard.money, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1); @@ -1050,7 +1050,7 @@ static void PrintMoneyOnCard(void) xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 128); top = 57; } - AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SKIP_DRAW, gStringVar4); } static u16 GetCaughtMonsCount(void) @@ -1068,9 +1068,9 @@ static void PrintPokedexOnCard(void) if (FlagGet(FLAG_SYS_POKEDEX_GET)) { if (!sData->isHoenn) - AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 72, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardPokedex); else - AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 73, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardPokedex); StringCopy(ConvertIntToDecimalStringN(gStringVar4, sData->trainerCard.caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3), gText_EmptyString6); if (!sData->isHoenn) { @@ -1082,7 +1082,7 @@ static void PrintPokedexOnCard(void) xOffset = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 128); top = 73; } - AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffset, top, sTrainerCardTextColors, TEXT_SKIP_DRAW, gStringVar4); } } @@ -1096,9 +1096,9 @@ static void PrintTimeOnCard(void) u32 x, y, totalWidth; if (!sData->isHoenn) - AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 88, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); + AddTextPrinterParameterized3(1, FONT_NORMAL, 20, 88, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardTime); else - AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 89, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime); + AddTextPrinterParameterized3(1, FONT_NORMAL, 16, 89, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardTime); if (sData->isLink) { @@ -1132,12 +1132,12 @@ static void PrintTimeOnCard(void) FillWindowPixelRect(1, PIXEL_FILL(0), x, y, totalWidth, 15); ConvertIntToDecimalStringN(gStringVar4, hours, STR_CONV_MODE_RIGHT_ALIGN, 3); - AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SKIP_DRAW, gStringVar4); x += 18; - AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTimeColonTextColors[sData->timeColonInvisible], TEXT_SPEED_FF, gText_Colon2); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTimeColonTextColors[sData->timeColonInvisible], TEXT_SKIP_DRAW, gText_Colon2); x += width; ConvertIntToDecimalStringN(gStringVar4, minutes, STR_CONV_MODE_LEADING_ZEROS, 2); - AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(1, FONT_NORMAL, x, y, sTrainerCardTextColors, TEXT_SKIP_DRAW, gStringVar4); } static void PrintProfilePhraseOnCard(void) @@ -1147,10 +1147,10 @@ static void PrintProfilePhraseOnCard(void) if (sData->isLink) { - AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[0]); - AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[0], 0) + 14, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[1]); - AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[2]); - AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[2], 0) + 14, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SPEED_FF, sData->easyChatProfile[3]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->easyChatProfile[0]); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[0], 0) + 14, yOffsetsLine1[sData->isHoenn], sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->easyChatProfile[1]); + AddTextPrinterParameterized3(1, FONT_NORMAL, 8, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->easyChatProfile[2]); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringWidth(FONT_NORMAL, sData->easyChatProfile[2], 0) + 14, yOffsetsLine2[sData->isHoenn], sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->easyChatProfile[3]); } } @@ -1168,9 +1168,9 @@ static void BufferNameForCardBack(void) static void PrintNameOnCardBack(void) { if (!sData->isHoenn) - AddTextPrinterParameterized3(1, FONT_NORMAL, 136, 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); + AddTextPrinterParameterized3(1, FONT_NORMAL, 136, 9, sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->textPlayersCard); else - AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, sData->textPlayersCard, 216), 9, sTrainerCardTextColors, TEXT_SPEED_FF, sData->textPlayersCard); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, sData->textPlayersCard, 216), 9, sTrainerCardTextColors, TEXT_SKIP_DRAW, sData->textPlayersCard); } static const u8 sText_HofTime[] = _("{STR_VAR_1}:{STR_VAR_2}:{STR_VAR_3}"); @@ -1191,8 +1191,8 @@ static void PrintStatOnBackOfCard(u8 top, const u8* statName, u8* stat, const u8 static const u8 xOffsets[] = {8, 16}; static const u8 widths[] = {216, 216}; - AddTextPrinterParameterized3(1, FONT_NORMAL, xOffsets[sData->isHoenn], top * 16 + 33, sTrainerCardTextColors, TEXT_SPEED_FF, statName); - AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, stat, widths[sData->isHoenn]), top * 16 + 33, color, TEXT_SPEED_FF, stat); + AddTextPrinterParameterized3(1, FONT_NORMAL, xOffsets[sData->isHoenn], top * 16 + 33, sTrainerCardTextColors, TEXT_SKIP_DRAW, statName); + AddTextPrinterParameterized3(1, FONT_NORMAL, GetStringRightAlignXOffset(FONT_NORMAL, stat, widths[sData->isHoenn]), top * 16 + 33, color, TEXT_SKIP_DRAW, stat); } static void PrintHofDebutTimeOnCard(void) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index f0a633729389..2c34f196e5ad 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -591,12 +591,12 @@ void PrintOnTrainerHillRecordsWindow(void) SetUpDataStruct(); FillWindowPixelBuffer(0, PIXEL_FILL(0)); x = GetStringCenterAlignXOffset(FONT_NORMAL, gText_TimeBoard, 0xD0); - AddTextPrinterParameterized3(0, FONT_NORMAL, x, 2, sRecordWinColors, TEXT_SPEED_FF, gText_TimeBoard); + AddTextPrinterParameterized3(0, FONT_NORMAL, x, 2, sRecordWinColors, TEXT_SKIP_DRAW, gText_TimeBoard); y = 18; for (i = 0; i < 4; i++) { - AddTextPrinterParameterized3(0, FONT_NORMAL, 0, y, sRecordWinColors, TEXT_SPEED_FF, sTagMatchStrings[i]); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0, y, sRecordWinColors, TEXT_SKIP_DRAW, sTagMatchStrings[i]); y += 15; total = GetTimerValue(&gSaveBlock1Ptr->trainerHillTimes[i]); minutes = total / (60 * 60); @@ -609,7 +609,7 @@ void PrintOnTrainerHillRecordsWindow(void) ConvertIntToDecimalStringN(gStringVar3, secondsFraction, STR_CONV_MODE_LEADING_ZEROS, 2); StringExpandPlaceholders(StringCopy(gStringVar4, gText_TimeCleared), gText_XMinYDotZSec); x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0xD0); - AddTextPrinterParameterized3(0, FONT_NORMAL, x, y, sRecordWinColors, TEXT_SPEED_FF, gStringVar4); + AddTextPrinterParameterized3(0, FONT_NORMAL, x, y, sRecordWinColors, TEXT_SKIP_DRAW, gStringVar4); y += 17; } diff --git a/src/union_room.c b/src/union_room.c index a2fbd382def4..1400a0b1d440 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -3852,7 +3852,7 @@ static void PrintUnionRoomText(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y break; } - AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL); + AddTextPrinter(&printerTemplate, TEXT_SKIP_DRAW, NULL); } static void ClearRfuPlayerList(struct RfuPlayer *players, u8 count) diff --git a/src/union_room_chat.c b/src/union_room_chat.c index d2bce295be10..c6fe7413e100 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2740,8 +2740,8 @@ static void AddYesNoMenuAt(u8 left, u8 top, u8 initialCursorPos) { FillWindowPixelBuffer(sDisplay->yesNoMenuWindowId, PIXEL_FILL(1)); PutWindowTilemap(sDisplay->yesNoMenuWindowId); - AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_Yes, 8, 1, TEXT_SPEED_FF, NULL); - AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_No, 8, 17, TEXT_SPEED_FF, NULL); + AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_Yes, 8, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(sDisplay->yesNoMenuWindowId, FONT_NORMAL, gText_No, 8, 17, TEXT_SKIP_DRAW, NULL); DrawTextBorderOuter(sDisplay->yesNoMenuWindowId, 1, 13); InitMenuInUpperLeftCornerNormal(sDisplay->yesNoMenuWindowId, 2, initialCursorPos); } @@ -2815,7 +2815,7 @@ static void AddStdMessageWindow(int msgId, u16 bg0vofs) str, sDisplayStdMessages[msgId].x + 8, sDisplayStdMessages[msgId].y + 8, - TEXT_SPEED_FF, + TEXT_SKIP_DRAW, NULL, sDisplayStdMessages[msgId].letterSpacing, sDisplayStdMessages[msgId].lineSpacing); @@ -2829,7 +2829,7 @@ static void AddStdMessageWindow(int msgId, u16 bg0vofs) str, sDisplayStdMessages[msgId].x, sDisplayStdMessages[msgId].y, - TEXT_SPEED_FF, + TEXT_SKIP_DRAW, NULL, sDisplayStdMessages[msgId].letterSpacing, sDisplayStdMessages[msgId].lineSpacing); @@ -2877,7 +2877,7 @@ static void DrawTextEntryMessage(u16 x, u8 *str, u8 bgColor, u8 fgColor, u8 shad strBuffer[1] = EXT_CTRL_CODE_MIN_LETTER_SPACING; strBuffer[2] = 8; StringCopy(&strBuffer[3], str); - AddTextPrinterParameterized3(1, FONT_SHORT, x * 8, 1, color, TEXT_SPEED_FF, strBuffer); + AddTextPrinterParameterized3(1, FONT_SHORT, x * 8, 1, color, TEXT_SKIP_DRAW, strBuffer); } static void PrintCurrentKeyboardPage(void) @@ -2912,7 +2912,7 @@ static void PrintCurrentKeyboardPage(void) return; StringCopy(&str[3], sUnionRoomKeyboardText[page][i]); - AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SKIP_DRAW, str); } } else @@ -2923,7 +2923,7 @@ static void PrintCurrentKeyboardPage(void) str2 = GetRegisteredTextByRow(i); if (GetStringWidth(FONT_SMALL, str2, 0) <= 40) { - AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str2); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SKIP_DRAW, str2); } else { @@ -2934,8 +2934,8 @@ static void PrintCurrentKeyboardPage(void) StringCopyN_Multibyte(str, str2, length); } while (GetStringWidth(FONT_SMALL, str, 0) > 35); - AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SPEED_FF, str); - AddTextPrinterParameterized3(2, FONT_SMALL, left + 35, top, color, TEXT_SPEED_FF, sText_Ellipsis); + AddTextPrinterParameterized3(2, FONT_SMALL, left, top, color, TEXT_SKIP_DRAW, str); + AddTextPrinterParameterized3(2, FONT_SMALL, left + 35, top, color, TEXT_SKIP_DRAW, sText_Ellipsis); } } } @@ -3006,7 +3006,7 @@ static void PrintChatMessage(u16 row, u8 *str, u8 colorIdx) color[1] = colorIdx * 2 + 2; color[2] = colorIdx * 2 + 3; FillWindowPixelRect(0, PIXEL_FILL(1), 0, row * 15, 168, 15); - AddTextPrinterParameterized3(0, FONT_SHORT, 0, row * 15 + 1, color, TEXT_SPEED_FF, str); + AddTextPrinterParameterized3(0, FONT_SHORT, 0, row * 15 + 1, color, TEXT_SKIP_DRAW, str); } static void ResetGpuBgState(void) diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 458882853a84..65d8c86d099c 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -301,7 +301,7 @@ static u16 GetCurrentMapWildMonHeaderId(void) for (i = 0; ; i++) { const struct WildPokemonHeader *wildHeader = &gWildMonHeaders[i]; - if (wildHeader->mapGroup == 0xFF) + if (wildHeader->mapGroup == MAP_GROUP(UNDEFINED)) break; if (gWildMonHeaders[i].mapGroup == gSaveBlock1Ptr->location.mapGroup && diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 7a69cf6d628f..a12a8920c115 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -344,7 +344,7 @@ static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 * break; } - AddTextPrinterParameterized4(windowId, fontId, x, y, 0, 0, color, -1, str); + AddTextPrinterParameterized4(windowId, fontId, x, y, 0, 0, color, TEXT_SKIP_DRAW, str); } static u32 CountPlayersInGroupAndGetActivity(struct RfuPlayer * player, u32 * groupCounts) From d6f873ba69af5e4dd9733c2f9f3f75be0d4c6816 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 20:28:43 -0400 Subject: [PATCH 378/762] Continue menu documentation --- include/menu.h | 2 +- src/menu.c | 65 ++++++++++++++++++----------------- src/pokedex_area_region_map.c | 7 ++-- 3 files changed, 39 insertions(+), 35 deletions(-) diff --git a/include/menu.h b/include/menu.h index 3f9ccd721e2b..7ecb04e53ea2 100644 --- a/include/menu.h +++ b/include/menu.h @@ -109,7 +109,7 @@ 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 sub_8199D3C(void *ptr, int delta, int width, int height, bool32 is8BPP); +void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 is8BPP); void EraseFieldMessageBox(bool8 copyToVram); void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *strs); s8 Menu_ProcessInputGridLayout(void); diff --git a/src/menu.c b/src/menu.c index 9f1077b465fe..0e7c0c6e4682 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1232,7 +1232,7 @@ void EraseYesNoWindow(void) RemoveWindow(sYesNoWindowId); } -void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *menuActions) +static void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *menuActions) { u8 i; u8 j; @@ -1244,7 +1244,8 @@ void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) +// Unused +static void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) { sub_8198C94(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a3, a4, a5, menuActions); } @@ -1286,7 +1287,7 @@ static void PrintMenuActionGrid_TopLeft(u8 windowId, u8 fontId, u8 optionWidth, PrintMenuActionGrid(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, optionWidth, horizontalCount, verticalCount, menuActions, actionIds); } -u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight, u8 a6, u8 a7, u8 numChoices, u8 a9) +static u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 optionHeight, u8 columns, u8 rows, u8 numChoices, u8 cursorPos) { s32 pos; @@ -1296,12 +1297,12 @@ u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight, sMenu.maxCursorPos = numChoices - 1; sMenu.windowId = windowId; sMenu.fontId = fontId; - sMenu.optionWidth = a4; - sMenu.optionHeight = cursorHeight; - sMenu.columns = a6; - sMenu.rows = a7; + sMenu.optionWidth = optionWidth; + sMenu.optionHeight = optionHeight; + sMenu.columns = columns; + sMenu.rows = rows; - pos = a9; + pos = cursorPos; if (pos < 0 || pos > sMenu.maxCursorPos) sMenu.cursorPos = 0; @@ -1314,14 +1315,14 @@ u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight, } // Unused -u8 sub_8198FD4(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7) +static u8 sub_8198FD4(u8 windowId, u8 fontId, u8 left, u8 top, u8 width, u8 columns, u8 rows, u8 cursorPos) { u8 cursorHeight = GetMenuCursorDimensionByFont(fontId, 1); - u8 numChoices = a5 * a6; - return sub_8198F58(windowId, fontId, left, top, a4, cursorHeight, a5, a6, numChoices, a7); + u8 numChoices = columns * rows; + return sub_8198F58(windowId, fontId, left, top, width, cursorHeight, columns, rows, numChoices, cursorPos); } -void sub_8199060(u8 oldCursorPos, u8 newCursorPos) +static void sub_8199060(u8 oldCursorPos, u8 newCursorPos) { u8 cursorWidth = GetMenuCursorDimensionByFont(sMenu.fontId, 0); u8 cursorHeight = GetMenuCursorDimensionByFont(sMenu.fontId, 1); @@ -1414,7 +1415,8 @@ u8 ChangeGridMenuCursorPosition(s8 deltaX, s8 deltaY) } } -s8 sub_8199284(void) +// Unused +static s8 sub_8199284(void) { if (JOY_NEW(A_BUTTON)) { @@ -1494,7 +1496,8 @@ s8 Menu_ProcessInputGridLayout(void) return MENU_NOTHING_CHOSEN; } -s8 sub_81993D8(void) +// Unused +static s8 sub_81993D8(void) { if (JOY_NEW(A_BUTTON)) { @@ -1505,25 +1508,25 @@ s8 sub_81993D8(void) { return MENU_B_PRESSED; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_UP) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_UP) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_DOWN) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_DOWN) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_LEFT || GetLRKeysPressedAndHeld() == MENU_L_PRESSED) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_LEFT || GetLRKeysPressedAndHeld() == MENU_L_PRESSED) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_RIGHT || GetLRKeysPressedAndHeld() == MENU_R_PRESSED) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_RIGHT || GetLRKeysPressedAndHeld() == MENU_R_PRESSED) { PlaySE(SE_SELECT); ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); @@ -1533,8 +1536,8 @@ s8 sub_81993D8(void) return MENU_NOTHING_CHOSEN; } -//Unused -s8 sub_8199484(void) +// Unused +static s8 sub_8199484(void) { u8 oldPos = sMenu.cursorPos; @@ -1678,7 +1681,8 @@ void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *menuActions, const u8 *actionIds) +// Unused +static void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; u8 j; @@ -1893,31 +1897,26 @@ void CopyToBufferFromBgTilemap(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 for (i = 0; i < height; i++) { for (j = 0; j < width; j++) - { dest[(i * width) + j] = src[(i + top) * 32 + j + left]; - } } } -void sub_8199D3C(void *ptr, int delta, int width, int height, bool32 is8BPP) +void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 isAffine) { int i; int area = width * height; - if (is8BPP == TRUE) + if (isAffine == TRUE) { u8 *as8BPP = ptr; for (i = 0; i < area; i++) - { as8BPP[i] += delta; - } } else { + // Limit add to first 10 bits u16 *as4BPP = ptr; for (i = 0; i < area; i++) - { as4BPP[i] = (as4BPP[i] & 0xFC00) | ((as4BPP[i] + delta) & 0x3FF); - } } } @@ -2016,7 +2015,7 @@ void PrintPlayerNameOnWindow(u8 windowId, const u8 *src, u16 x, u16 y) } // Unused. Similar to BlitBitmapRect4Bit. -void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height) +static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height) { int loopSrcY, loopDstY, loopSrcX, loopDstX, xEnd, yEnd, multiplierSrcY, multiplierDstY; const u8 *pixelsSrc; @@ -2091,12 +2090,14 @@ void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 src } } -void sub_819A25C(u8 palOffset, u16 speciesId) +// Unused +static void sub_819A25C(u8 palOffset, u16 speciesId) { LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, 0x20); } -void sub_819A27C(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y) +// Unused +static void sub_819A27C(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y) { BlitBitmapToWindow(windowId, GetMonIconPtr(speciesId, personality, 1), x, y, 32, 32); } diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c index 1ee5ca988d9e..fce550bde023 100644 --- a/src/pokedex_area_region_map.c +++ b/src/pokedex_area_region_map.c @@ -17,6 +17,7 @@ static const u32 sPokedexAreaMapAffine_Tilemap[] = INCBIN_U32("graphics/interfac void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) { u8 mode; + void * tilemap; sPokedexAreaMapBgNum = Alloc(sizeof(sPokedexAreaMapBgNum)); mode = template->mode; @@ -24,7 +25,8 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) { SetBgAttribute(template->bg, BG_ATTR_METRIC, 0); DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMap_Gfx, 0, template->offset, 0); - sub_8199D3C(DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMap_Tilemap, 0, 0, 1), template->offset, 32, 32, FALSE); + tilemap = DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMap_Tilemap, 0, 0, 1); + AddValToTilemapBuffer(tilemap, template->offset, 32, 32, FALSE); // template->offset is always 0, so this does nothing. } else { @@ -32,7 +34,8 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) SetBgAttribute(template->bg, BG_ATTR_METRIC, 2); SetBgAttribute(template->bg, BG_ATTR_TYPE, BG_TYPE_AFFINE); // This does nothing. BG_ATTR_TYPE can't be set with this function DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMapAffine_Gfx, 0, template->offset, 0); - sub_8199D3C(DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMapAffine_Tilemap, 0, 0, 1), template->offset, 64, 64, TRUE); + tilemap = DecompressAndCopyTileDataToVram(template->bg, sPokedexAreaMapAffine_Tilemap, 0, 0, 1); + AddValToTilemapBuffer(tilemap, template->offset, 64, 64, TRUE); // template->offset is always 0, so this does nothing. } ChangeBgX(template->bg, 0, 0); From c291fa8e7fc8f823544e483eccb9b87fd7f99206 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 23:02:06 -0400 Subject: [PATCH 379/762] Propagate BG_COORD constants --- gflib/bg.h | 1 + src/battle_dome.c | 16 +++++------ src/battle_factory_screen.c | 28 +++++++++---------- src/battle_records.c | 16 +++++------ src/battle_transition_frontier.c | 6 ++-- src/berry_blender.c | 8 +++--- src/berry_crush.c | 16 +++++------ src/berry_fix_program.c | 8 +++--- src/contest_painting.c | 4 +-- src/dodrio_berry_picking.c | 32 +++++++++++----------- src/easy_chat.c | 22 +++++++-------- src/egg_hatch.c | 8 +++--- src/frontier_pass.c | 16 +++++------ src/hall_of_fame.c | 12 ++++---- src/item_menu.c | 2 +- src/main_menu.c | 24 ++++++++-------- src/match_call.c | 10 +++---- src/menu.c | 20 +++++++------- src/menu_helpers.c | 16 +++++------ src/mirage_tower.c | 4 +-- src/mystery_gift_menu.c | 16 +++++------ src/mystery_gift_view.c | 14 +++++----- src/naming_screen.c | 16 +++++------ src/option_menu.c | 16 +++++------ src/overworld.c | 16 +++++------ src/party_menu.c | 4 +-- src/pokedex_area_region_map.c | 6 ++-- src/pokedex_area_screen.c | 2 +- src/pokedex_cry_screen.c | 2 +- src/pokemon_jump.c | 8 +++--- src/pokemon_storage_system.c | 16 +++++------ src/pokemon_summary_screen.c | 16 +++++------ src/pokenav_conditions_2.c | 12 ++++---- src/pokenav_conditions_3.c | 4 +-- src/pokenav_main_menu.c | 8 +++--- src/pokenav_match_call_2.c | 8 +++--- src/pokenav_match_call_ui.c | 16 +++++------ src/pokenav_menu_handler_2.c | 14 +++++----- src/pokenav_region_map.c | 14 +++++----- src/pokenav_ribbons_1.c | 4 +-- src/pokenav_ribbons_2.c | 8 +++--- src/rayquaza_scene.c | 28 +++++++++---------- src/starter_choose.c | 16 +++++------ src/trade.c | 4 +-- src/trainer_card.c | 16 +++++------ src/union_room_chat.c | 20 +++++++------- src/use_pokeblock.c | 16 +++++------ src/wallclock.c | 16 +++++------ src/wireless_communication_status_screen.c | 8 +++--- 49 files changed, 307 insertions(+), 306 deletions(-) diff --git a/gflib/bg.h b/gflib/bg.h index b5d18d6d03ca..3a0bf3bf903a 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -21,6 +21,7 @@ enum { BG_TYPE_NONE = 0xFFFF }; +// Modes for ChangeBgX / ChangeBgY enum { BG_COORD_SET, BG_COORD_ADD, diff --git a/src/battle_dome.c b/src/battle_dome.c index 0075e84d6ac9..08f1fa934315 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5281,10 +5281,10 @@ static void Task_ShowTourneyTree(u8 taskId) gBattle_BG0_Y = 0; gBattle_BG1_X = 0; gBattle_BG1_Y = 0; - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0xB00, 0); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0xB00, BG_COORD_SET); gTasks[taskId].tState++; break; case 1: @@ -5597,8 +5597,8 @@ static void CB2_TourneyTree(void) static void VblankCb_TourneyInfoCard(void) { - ChangeBgX(3, 0x80, 1); - ChangeBgY(3, 0x80, 2); + ChangeBgX(3, 0x80, BG_COORD_ADD); + ChangeBgY(3, 0x80, BG_COORD_SUB); SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_X); SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_Y); SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); @@ -5693,8 +5693,8 @@ static void VblankCb_TourneyTree(void) SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_Y); SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); - ChangeBgY(2, 0x80, 2); - ChangeBgY(3, 0x80, 1); + ChangeBgY(2, 0x80, BG_COORD_SUB); + ChangeBgY(3, 0x80, BG_COORD_ADD); LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 98caada1d9e4..247b8712fe92 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1147,12 +1147,12 @@ static void CB2_InitSelectScreen(void) sSelectMonPicBgTilesetBuffer = AllocZeroed(0x440); sSelectMenuTilemapBuffer = Alloc(BG_SCREEN_SIZE); sSelectMonPicBgTilemapBuffer = AllocZeroed(BG_SCREEN_SIZE); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); @@ -3280,14 +3280,14 @@ static void CB2_InitSwapScreen(void) sSwapMonPicBgTilesetBuffer = AllocZeroed(0x440); sSwapMenuTilemapBuffer = Alloc(BG_SCREEN_SIZE); sSwapMonPicBgTilemapBuffer = AllocZeroed(BG_SCREEN_SIZE); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuReg(REG_OFFSET_WIN0H, 0); diff --git a/src/battle_records.c b/src/battle_records.c index 850feef59ea7..f576d5912de5 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -425,14 +425,14 @@ static void ClearTasksAndGraphicalStructs(void) static void ResetBgCoordinates(void) { - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); } static void SetDispcntReg(void) diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c index e1cb03d8df15..a1a39abdab78 100644 --- a/src/battle_transition_frontier.c +++ b/src/battle_transition_frontier.c @@ -378,9 +378,9 @@ static bool8 Circles_Init(struct Task *task) LoadLogoGfx(); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgY(0, 0x500, 2); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgY(0, 0x500, BG_COORD_SUB); task->tTimer = 0; task->tState++; diff --git a/src/berry_blender.c b/src/berry_blender.c index 4e7168fc1a02..7d22eae7749d 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1013,10 +1013,10 @@ static void DrawBlenderBg(void) ShowBg(0); ShowBg(1); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); } static void InitBerryBlenderWindows(void) diff --git a/src/berry_crush.c b/src/berry_crush.c index 10f7987e0508..6f432a3f983f 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1202,12 +1202,12 @@ static s32 ShowGameDisplay(void) SetBgTilemapBuffer(1, game->gfx.bgBuffers[0]); SetBgTilemapBuffer(2, game->gfx.bgBuffers[2]); SetBgTilemapBuffer(3, game->gfx.bgBuffers[3]); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); break; @@ -1249,8 +1249,8 @@ static s32 ShowGameDisplay(void) CreateWirelessStatusIndicatorSprite(0, 0); CreateGameSprites(game); SetGpuReg(REG_OFFSET_BG1VOFS, -gSpriteCoordOffsetY); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); break; case 9: gPaletteFade.bufferTransferDisabled = FALSE; diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index e2f765179533..e8c4bc7e6862 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -290,10 +290,10 @@ static void BerryFix_GpuSet(void) ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBerryFixBgTemplates, ARRAY_COUNT(sBerryFixBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); InitWindows(sBerryFixWindowTemplates); DeactivateAllTextPrinters(); diff --git a/src/contest_painting.c b/src/contest_painting.c index 84b160eb825e..e71cf391f80d 100644 --- a/src/contest_painting.c +++ b/src/contest_painting.c @@ -267,8 +267,8 @@ static void InitContestPaintingWindow(void) { ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); SetBgTilemapBuffer(1, AllocZeroed(BG_SCREEN_SIZE)); sWindowId = AddWindow(&sWindowTemplate); DeactivateAllTextPrinters(); diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 8c09afeb3c1b..e680b56d392e 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -1352,14 +1352,14 @@ static void ResetGame(void) } break; case 2: - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); sGame->state++; break; case 3: @@ -5172,14 +5172,14 @@ static void InitBgs(void) SetGpuReg(REG_OFFSET_DISPCNT, 0); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); InitStandardTextBoxWindows(); InitTextBoxGfxAndPrinters(); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); diff --git a/src/easy_chat.c b/src/easy_chat.c index c78e14ecf37e..3257a122db01 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -3900,14 +3900,14 @@ static bool8 InitEasyChatScreenControl_(void) static void InitEasyChatBgs(void) { - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON); } @@ -4550,7 +4550,7 @@ static void BufferLowerWindowFrame(int left, int top, int width, int height) static void ResetLowerWindowScroll(void) { - ChangeBgY(2, 0x800, 0); + ChangeBgY(2, 0x800, BG_COORD_SET); sScreenControl->scrollOffset = 0; } @@ -4572,7 +4572,7 @@ static void InitLowerWindowScroll(s16 scrollChange, u8 speed) } else { - ChangeBgY(2, bgY, 0); + ChangeBgY(2, bgY, BG_COORD_SET); } } @@ -4587,7 +4587,7 @@ static bool8 UpdateLowerWindowScroll(void) } else { - ChangeBgY(2, sScreenControl->scrollSpeed, 1); + ChangeBgY(2, sScreenControl->scrollSpeed, BG_COORD_ADD); return TRUE; } } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 4c9456f2e60f..283ec753af5a 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -495,10 +495,10 @@ static void CB2_EggHatch_0(void) ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates_EggHatch, ARRAY_COUNT(sBgTemplates_EggHatch)); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); SetBgAttribute(1, BG_ATTR_PRIORITY, 2); SetBgTilemapBuffer(1, Alloc(0x1000)); diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 9dfd5e9354b7..8ce1e14dc47f 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -561,14 +561,14 @@ static void ResetGpuRegsAndBgs(void) SetGpuReg(REG_OFFSET_BG2CNT, 0); SetGpuReg(REG_OFFSET_BG1CNT, 0); SetGpuReg(REG_OFFSET_BG0CNT, 0); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index ecc8b18ae452..84f7d8fe67f9 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -1295,12 +1295,12 @@ static void InitHofBgs(void) InitBgsFromTemplates(0, sHof_BgTemplates, ARRAY_COUNT(sHof_BgTemplates)); SetBgTilemapBuffer(1, sHofGfxPtr->tilemap1); SetBgTilemapBuffer(3, sHofGfxPtr->tilemap2); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); } static bool8 LoadHofBgs(void) diff --git a/src/item_menu.c b/src/item_menu.c index 0c4b67452587..037567daa7af 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2039,7 +2039,7 @@ bool8 UseRegisteredKeyItemOnField(void) if (InUnionRoom() == TRUE || InBattlePyramid() || InBattlePike() || InMultiPartnerRoom() == TRUE) return FALSE; HideMapNamePopUpWindow(); - ChangeBgY_ScreenOff(0, 0, 0); + ChangeBgY_ScreenOff(0, 0, BG_COORD_SET); if (gSaveBlock1Ptr->registeredItem != ITEM_NONE) { if (CheckBagHasItem(gSaveBlock1Ptr->registeredItem, 1) == TRUE) diff --git a/src/main_menu.c b/src/main_menu.c index 748575ce3405..601e66cb9d5b 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -583,10 +583,10 @@ static u32 InitMainMenu(bool8 returningFromOptionsMenu) BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_WHITEALPHA); // fade to white ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sMainMenuBgTemplates, ARRAY_COUNT(sMainMenuBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); InitWindows(sWindowTemplates_MainMenu); DeactivateAllTextPrinters(); LoadMainMenuWindowFrameTiles(0, MAIN_MENU_BORDER_TILE); @@ -861,8 +861,8 @@ static void Task_DisplayMainMenu(u8 taskId) gTasks[tScrollArrowTaskId].func = Task_ScrollIndicatorArrowPairOnMainMenu; if (sCurrItemAndOptionMenuCheck == 4) { - ChangeBgY(0, 0x2000, 1); - ChangeBgY(1, 0x2000, 1); + ChangeBgY(0, 0x2000, BG_COORD_ADD); + ChangeBgY(1, 0x2000, BG_COORD_ADD); tIsScrolled = TRUE; gTasks[tScrollArrowTaskId].tArrowTaskIsScrolled = TRUE; } @@ -901,8 +901,8 @@ static bool8 HandleMainMenuInput(u8 taskId) { if (tMenuType == HAS_MYSTERY_EVENTS && tIsScrolled == TRUE && tCurrItem == 1) { - ChangeBgY(0, 0x2000, 2); - ChangeBgY(1, 0x2000, 2); + ChangeBgY(0, 0x2000, BG_COORD_SUB); + ChangeBgY(1, 0x2000, BG_COORD_SUB); gTasks[tScrollArrowTaskId].tArrowTaskIsScrolled = tIsScrolled = FALSE; } tCurrItem--; @@ -913,8 +913,8 @@ static bool8 HandleMainMenuInput(u8 taskId) { if (tMenuType == HAS_MYSTERY_EVENTS && tCurrItem == 3 && tIsScrolled == FALSE) { - ChangeBgY(0, 0x2000, 1); - ChangeBgY(1, 0x2000, 1); + ChangeBgY(0, 0x2000, BG_COORD_ADD); + ChangeBgY(1, 0x2000, BG_COORD_ADD); gTasks[tScrollArrowTaskId].tArrowTaskIsScrolled = tIsScrolled = TRUE; } tCurrItem++; @@ -1048,8 +1048,8 @@ static void Task_HandleMainMenuAPressed(u8 taskId) } break; } - ChangeBgY(0, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); switch (action) { case ACTION_NEW_GAME: diff --git a/src/match_call.c b/src/match_call.c index b292ede31ce0..9e4659ee6057 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1263,7 +1263,7 @@ static bool32 MatchCall_LoadGfx(u8 taskId) FillWindowPixelBuffer(tWindowId, PIXEL_FILL(8)); LoadPalette(sMatchCallWindow_Pal, 0xE0, sizeof(sMatchCallWindow_Pal)); LoadPalette(sPokenavIcon_Pal, 0xF0, sizeof(sPokenavIcon_Pal)); - ChangeBgY(0, -0x2000, 0); + ChangeBgY(0, -0x2000, BG_COORD_SET); return TRUE; } @@ -1297,9 +1297,9 @@ static bool32 MatchCall_ReadyIntro(u8 taskId) static bool32 MatchCall_SlideWindowIn(u8 taskId) { - if (ChangeBgY(0, 0x600, 1) >= 0) + if (ChangeBgY(0, 0x600, BG_COORD_ADD) >= 0) { - ChangeBgY(0, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); return TRUE; } @@ -1340,7 +1340,7 @@ static bool32 MatchCall_PrintMessage(u8 taskId) static bool32 MatchCall_SlideWindowOut(u8 taskId) { s16 *data = gTasks[taskId].data; - if (ChangeBgY(0, 0x600, 2) <= -0x2000) + if (ChangeBgY(0, 0x600, BG_COORD_SUB) <= -0x2000) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 14, 30, 6); DestroyTask(tIconTaskId); @@ -1357,7 +1357,7 @@ static bool32 MatchCall_EndCall(u8 taskId) u8 playerObjectId; if (!IsDma3ManagerBusyWithBgCopy() && !IsSEPlaying()) { - ChangeBgY(0, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); if (!sMatchCallState.triggeredFromScript) { LoadMessageBoxAndBorderGfx(); diff --git a/src/menu.c b/src/menu.c index 0e7c0c6e4682..ddbc82686901 100644 --- a/src/menu.c +++ b/src/menu.c @@ -153,8 +153,8 @@ void FreeAllOverworldWindowBuffers(void) void InitTextBoxGfxAndPrinters(void) { - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); DeactivateAllTextPrinters(); LoadMessageBoxAndBorderGfx(); } @@ -1922,14 +1922,14 @@ void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 i void ResetBgPositions(void) { - ChangeBgX(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); } void sub_8199DF0(u32 bg, u8 a1, int a2, int a3) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 33175559080a..7670c6925150 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -106,14 +106,14 @@ void ResetVramOamAndBgCntRegs(void) void ResetAllBgsCoordinates(void) { - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); } void SetVBlankHBlankCallbacksToNull(void) diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 7fc883ca18d4..9473b0f82eb8 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -536,8 +536,8 @@ static void InitMirageTowerShake(u8 taskId) case 1: sMirageTowerGfxBuffer = (u8 *)AllocZeroed(MIRAGE_TOWER_GFX_LENGTH); sMirageTowerTilemapBuffer = (u8 *)AllocZeroed(BG_SCREEN_SIZE); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); gTasks[taskId].tState++; break; case 2: diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 4a314b076a3c..429922e58fd3 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -387,14 +387,14 @@ static bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBGTemplates, ARRAY_COUNT(sBGTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(2, Alloc(BG_SCREEN_SIZE)); diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index cf3a019f5371..3047a219e8e5 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -678,10 +678,10 @@ s32 WonderNews_Enter(void) case 1: if (UpdatePaletteFade()) return 0; - ChangeBgY(0, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(26, 152)); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ); @@ -753,7 +753,7 @@ s32 WonderNews_Exit(bool32 useCancel) case 1: if (UpdatePaletteFade()) return 0; - ChangeBgY(2, 0, 0); + ChangeBgY(2, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_WIN0H, 0); SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WININ, 0); @@ -777,8 +777,8 @@ s32 WonderNews_Exit(bool32 useCancel) RemoveWindow(sWonderNewsData->windowIds[NEWS_WIN_TITLE]); break; case 4: - ChangeBgY(2, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); if (sWonderNewsData->arrowTaskId != TASK_NONE) { RemoveScrollIndicatorArrowPair(sWonderNewsData->arrowTaskId); diff --git a/src/naming_screen.c b/src/naming_screen.c index cd48242d074d..dcd60259b753 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -516,14 +516,14 @@ static void NamingScreen_InitBGs(void) ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); InitStandardTextBoxWindows(); InitTextBoxGfxAndPrinters(); diff --git a/src/option_menu.c b/src/option_menu.c index f985e2c52ae7..e66bddd7f2cf 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -173,14 +173,14 @@ void CB2_InitOptionMenu(void) SetGpuReg(REG_OFFSET_DISPCNT, 0); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sOptionMenuBgTemplates, ARRAY_COUNT(sOptionMenuBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); InitWindows(sOptionMenuWinTemplates); DeactivateAllTextPrinters(); SetGpuReg(REG_OFFSET_WIN0H, 0); diff --git a/src/overworld.c b/src/overworld.c index a8d9a4a83316..776d30c7540e 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2101,14 +2101,14 @@ static void InitOverworldGraphicsRegisters(void) ScheduleBgCopyTilemapToVram(1); ScheduleBgCopyTilemapToVram(2); ScheduleBgCopyTilemapToVram(3); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJ_1D_MAP | DISPCNT_HBLANK_INTERVAL); ShowBg(0); diff --git a/src/party_menu.c b/src/party_menu.c index 30a8696086a5..202b57a529b8 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -6056,7 +6056,7 @@ static void Task_InitMultiPartnerPartySlideIn(u8 taskId) // The first slide step also sets the sprites offscreen gTasks[taskId].tXPos = 256; SlideMultiPartyMenuBoxSpritesOneStep(taskId); - ChangeBgX(2, 0x10000, 0); + ChangeBgX(2, 0x10000, BG_COORD_SET); gTasks[taskId].func = Task_MultiPartnerPartySlideIn; } @@ -6112,7 +6112,7 @@ static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId) MoveMultiPartyMenuBoxSprite(sPartyMenuBoxes[i].statusSpriteId, tXPos - 8); } } - ChangeBgX(2, 0x800, 1); + ChangeBgX(2, 0x800, BG_COORD_ADD); } #undef tXpos diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c index fce550bde023..2ec2c5c8d741 100644 --- a/src/pokedex_area_region_map.c +++ b/src/pokedex_area_region_map.c @@ -38,8 +38,8 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) AddValToTilemapBuffer(tilemap, template->offset, 64, 64, TRUE); // template->offset is always 0, so this does nothing. } - ChangeBgX(template->bg, 0, 0); - ChangeBgY(template->bg, 0, 0); + ChangeBgX(template->bg, 0, BG_COORD_SET); + ChangeBgY(template->bg, 0, BG_COORD_SET); SetBgAttribute(template->bg, BG_ATTR_PALETTEMODE, 1); CpuCopy32(sPokedexAreaMap_Pal, &gPlttBufferUnfaded[0x70], 0x60); *sPokedexAreaMapBgNum = template->bg; @@ -65,5 +65,5 @@ void FreePokedexAreaMapBgNum(void) void PokedexAreaMapChangeBgY(u32 a0) { - ChangeBgY(*sPokedexAreaMapBgNum, a0 * 0x100, 0); + ChangeBgY(*sPokedexAreaMapBgNum, a0 * 0x100, BG_COORD_SET); } diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index 1b6e6a388a5f..e2973dcab3a7 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -319,7 +319,7 @@ static bool8 DrawAreaGlow(void) } return TRUE; case 4: - ChangeBgY(2, -0x800, 0); + ChangeBgY(2, -0x800, BG_COORD_SET); break; default: return FALSE; diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index a01c06daab89..4c9bfe15cba6 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -443,7 +443,7 @@ static void ShiftWaveformOver(u8 windowId, s16 offset, bool8 rsVertical) if (!rsVertical) { u8 bg = GetWindowAttribute(windowId, WINDOW_BG); - ChangeBgX(bg, offset << 8, 0); + ChangeBgX(bg, offset << 8, BG_COORD_SET); } } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index a6b4b6f424e3..c86682273a2c 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3732,7 +3732,7 @@ static void SetMonSpriteY(u32 id, s16 y) static void UpdateVineSwing(int vineState) { UpdateVineAnim(sPokemonJumpGfx, vineState); - ChangeBgY(BG_VENUSAUR, (sVenusaurStates[vineState] * 5) << 13, 0); + ChangeBgY(BG_VENUSAUR, (sVenusaurStates[vineState] * 5) << 13, BG_COORD_SET); } static int DoSameJumpTimeBonus(u8 flags) @@ -3896,8 +3896,8 @@ static void DrawPlayerNameWindows(void) static void ShowBonus(u8 bonusId) { sPokemonJumpGfx->bonusTimer = 0; - ChangeBgX(BG_BONUSES, (bonusId / 2) * 256 * 256, 0); - ChangeBgY(BG_BONUSES, (((bonusId % 2) * 256) - 40) * 256, 0); + ChangeBgX(BG_BONUSES, (bonusId / 2) * 256 * 256, BG_COORD_SET); + ChangeBgY(BG_BONUSES, (((bonusId % 2) * 256) - 40) * 256, BG_COORD_SET); ShowBg(BG_BONUSES); CreateTask(Task_UpdateBonus, 4); } @@ -3910,7 +3910,7 @@ static bool32 UpdateBonus(void) } else { - ChangeBgY(BG_BONUSES, 128, 1); + ChangeBgY(BG_BONUSES, 128, BG_COORD_ADD); if (++sPokemonJumpGfx->bonusTimer >= 32) HideBg(BG_BONUSES); return TRUE; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 01133251b734..f18dc68d1327 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -3827,8 +3827,8 @@ static void SetScrollingBackground(void) static void ScrollBackground(void) { - ChangeBgX(3, 128, 1); - ChangeBgY(3, 128, 2); + ChangeBgX(3, 128, BG_COORD_ADD); + ChangeBgY(3, 128, BG_COORD_SUB); } static void LoadPokeStorageMenuGfx(void) @@ -8184,8 +8184,8 @@ static bool8 MultiMove_Start(void) GetCursorBoxColumnAndRow(&sMultiMove->fromColumn, &sMultiMove->fromRow); sMultiMove->toColumn = sMultiMove->fromColumn; sMultiMove->toRow = sMultiMove->fromRow; - ChangeBgX(0, -1024, 0); - ChangeBgY(0, -1024, 0); + ChangeBgX(0, -1024, BG_COORD_SET); + ChangeBgY(0, -1024, BG_COORD_SET); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); FillWindowPixelBuffer8Bit(sStorage->multiMoveWindowId, PIXEL_FILL(0)); MultiMove_SetIconToBg(sMultiMove->fromColumn, sMultiMove->fromRow); @@ -8499,8 +8499,8 @@ static u8 MultiMove_UpdateMove(void) { if (sMultiMove->bgMoveSteps != 0) { - ChangeBgX(0, sMultiMove->bgX, 1); - ChangeBgY(0, sMultiMove->bgY, 1); + ChangeBgX(0, sMultiMove->bgX, BG_COORD_ADD); + ChangeBgY(0, sMultiMove->bgY, BG_COORD_ADD); sMultiMove->bgMoveSteps--; } @@ -8605,8 +8605,8 @@ static void MultiMove_SetPlacedMonData(void) static void MultiMove_ResetBg(void) { - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); SetBgAttribute(0, BG_ATTR_PALETTEMODE, 0); ClearGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR); FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index c83ce727f66e..6567cc4caf94 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1462,7 +1462,7 @@ static void SetDefaultTilemaps(void) TilemapFiveMovesDisplay(sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], 1, FALSE); SetBgTilemapBuffer(1, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0]); SetBgTilemapBuffer(2, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0]); - ChangeBgX(2, 0x10000, 1); + ChangeBgX(2, 0x10000, BG_COORD_ADD); ClearWindowTilemap(PSS_LABEL_WINDOW_PORTRAIT_SPECIES); ClearWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATUS); } @@ -1778,12 +1778,12 @@ static void PssScrollRight(u8 taskId) // Scroll right SetBgAttribute(1, BG_ATTR_PRIORITY, 2); ScheduleBgCopyTilemapToVram(2); } - ChangeBgX(data[1], 0, 0); + ChangeBgX(data[1], 0, BG_COORD_SET); SetBgTilemapBuffer(data[1], sMonSummaryScreen->bgTilemapBuffers[sMonSummaryScreen->currPageIndex][0]); ShowBg(1); ShowBg(2); } - ChangeBgX(data[1], 0x2000, 1); + ChangeBgX(data[1], 0x2000, BG_COORD_ADD); data[0] += 32; if (data[0] > 0xFF) gTasks[taskId].func = PssScrollRightEnd; @@ -1811,9 +1811,9 @@ static void PssScrollLeft(u8 taskId) // Scroll left data[1] = 2; else data[1] = 1; - ChangeBgX(data[1], 0x10000, 0); + ChangeBgX(data[1], 0x10000, BG_COORD_SET); } - ChangeBgX(data[1], 0x2000, 2); + ChangeBgX(data[1], 0x2000, BG_COORD_SUB); data[0] += 32; if (data[0] > 0xFF) gTasks[taskId].func = PssScrollLeftEnd; @@ -1837,7 +1837,7 @@ static void PssScrollLeftEnd(u8 taskId) // display left if (sMonSummaryScreen->currPageIndex > 1) { SetBgTilemapBuffer(data[1], sMonSummaryScreen->bgTilemapBuffers[sMonSummaryScreen->currPageIndex - 1][0]); - ChangeBgX(data[1], 0x10000, 0); + ChangeBgX(data[1], 0x10000, BG_COORD_SET); } ShowBg(1); ShowBg(2); @@ -2681,9 +2681,9 @@ static void DrawContestMoveHearts(u16 move) static void LimitEggSummaryPageDisplay(void) // If the pokemon is an egg, limit the number of pages displayed to 1 { if (sMonSummaryScreen->summary.isEgg) - ChangeBgX(3, 0x10000, 0); + ChangeBgX(3, 0x10000, BG_COORD_SET); else - ChangeBgX(3, 0, 0); + ChangeBgX(3, 0, BG_COORD_SET); } static void ResetWindows(void) diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index 4862fdc6f6fc..9fc7d33a1556 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -199,12 +199,12 @@ u32 LoopedTask_OpenPartyConditionGraph(s32 state) return LT_INC_AND_PAUSE; case 1: InitBgTemplates(sPartyConditionBgTemplates, ARRAY_COUNT(sPartyConditionBgTemplates)); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG3_ON); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG3); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(11, 4)); diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 6ce819c04ed4..1172774d79de 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -448,8 +448,8 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) case 4: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); ShowBg(1); ShowBg(2); HideBg(3); diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 5936ef9d214f..714c8221a310 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -421,9 +421,9 @@ static u32 LoopedTask_SlideMenuHeaderUp(s32 a0) case 0: return LT_INC_AND_PAUSE; case 2: - if (ChangeBgY(0, 384, 1) >= 0x2000u) + if (ChangeBgY(0, 384, BG_COORD_ADD) >= 0x2000u) { - ChangeBgY(0, 0x2000, 0); + ChangeBgY(0, 0x2000, BG_COORD_SET); return LT_FINISH; } @@ -433,9 +433,9 @@ static u32 LoopedTask_SlideMenuHeaderUp(s32 a0) static u32 LoopedTask_SlideMenuHeaderDown(s32 a0) { - if (ChangeBgY(0, 384, 2) <= 0) + if (ChangeBgY(0, 384, BG_COORD_SUB) <= 0) { - ChangeBgY(0, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); return LT_FINISH; } return LT_PAUSE; diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 5af60a001d7a..3bfacfede49f 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -322,8 +322,8 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) { case 0: InitBgTemplates(sMatchCallBgTemplates, ARRAY_COUNT(sMatchCallBgTemplates)); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); DecompressAndCopyTileDataToVram(2, sMatchCallUI_Gfx, 0, 0, 0); SetBgTilemapBuffer(2, state->unk1024); CopyToBgTilemapBuffer(2, sMatchCallUI_Tilemap, 0, 0); @@ -367,8 +367,8 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) PrintMatchCallLocation(state, 0); return LT_INC_AND_PAUSE; case 6: - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); ShowBg(2); ShowBg(3); ShowBg(1); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 9e0ae89f181d..5f95f2493544 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -174,9 +174,9 @@ void sub_81C82E4(struct PokenavSub17 *matchCall) sub_8199DF0(matchCall->list.listWindow.bg, PIXEL_FILL(4), matchCall->list.listWindow.unk6 + 1, 1); SetBgTilemapBuffer(matchCall->list.listWindow.bg, matchCall->tilemapBuffer); FillBgTilemapBufferRect_Palette0(matchCall->list.listWindow.bg, tileNum, 0, 0, 32, 32); - ChangeBgY(matchCall->list.listWindow.bg, 0, 0); - ChangeBgX(matchCall->list.listWindow.bg, 0, 0); - ChangeBgY(matchCall->list.listWindow.bg, matchCall->list.listWindow.unk3 << 11, 2); + ChangeBgY(matchCall->list.listWindow.bg, 0, BG_COORD_SET); + ChangeBgX(matchCall->list.listWindow.bg, 0, BG_COORD_SET); + ChangeBgY(matchCall->list.listWindow.bg, matchCall->list.listWindow.unk3 << 11, BG_COORD_SUB); CopyBgTilemapBufferToVram(matchCall->list.listWindow.bg); } @@ -296,9 +296,9 @@ void sub_81C8568(s32 a0, struct PokenavSub17Substruct *list) list->unk20 = GetBgY(list->listWindow.bg); list->unk24 = list->unk20 + (a0 << 12); if (a0 > 0) - list->unk30 = 1; + list->unk30 = BG_COORD_ADD; else - list->unk30 = 2; + list->unk30 = BG_COORD_SUB; list->unk2C = a0; list->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C85A0, 6); } @@ -320,12 +320,12 @@ u32 LoopedTask_sub_81C85A0(s32 state) flag = FALSE; y = GetBgY(subPtr->listWindow.bg); v1 = ChangeBgY(subPtr->listWindow.bg, 0x1000, subPtr->unk30); - if (subPtr->unk30 == 2) + if (subPtr->unk30 == BG_COORD_SUB) { if ((y > subPtr->unk24 || y <= subPtr->unk20) && v1 <= subPtr->unk24) flag = TRUE; } - else + else // BG_COORD_ADD { if ((y < subPtr->unk24 || y >= subPtr->unk20) && v1 >= subPtr->unk24) flag = TRUE; @@ -334,7 +334,7 @@ u32 LoopedTask_sub_81C85A0(s32 state) if (flag) { subPtr->listWindow.unkA = (subPtr->listWindow.unkA + subPtr->unk2C) & 0xF; - ChangeBgY(subPtr->listWindow.bg, subPtr->unk24, 0); + ChangeBgY(subPtr->listWindow.bg, subPtr->unk24, BG_COORD_SET); return LT_FINISH; } return LT_PAUSE; diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index 10b6703da38d..bcfe94cb7aa1 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -415,12 +415,12 @@ static u32 LoopedTask_OpenMenu(s32 state) CopyToBgTilemapBuffer(1, gPokenavMessageBox_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); CopyPaletteIntoBufferUnfaded(gPokenavMessageBox_Pal, 0x10, 0x20); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); return LT_INC_AND_PAUSE; case 1: if (FreeTempTileDataBuffersIfPossible()) @@ -1168,7 +1168,7 @@ static void DestroyMovingDotsBgTask(void) static void Task_MoveBgDots(u8 taskId) { - ChangeBgX(3, 0x80, 1); + ChangeBgX(3, 0x80, BG_COORD_ADD); } static void CreateBgDotPurplePalTask(void) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 78c60a09c0a5..c117dce3bd87 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -515,11 +515,11 @@ static void LoadPokenavRegionMapGfx(struct Pokenav5Struct_2 *state) CopyPaletteIntoBufferUnfaded(sMapSecInfoWindow_Pal, 0x10, 0x20); CopyPaletteIntoBufferUnfaded(gRegionMapCityZoomTiles_Pal, 0x30, 0x20); if (!IsRegionMapZoomed()) - ChangeBgY(1, -0x6000, 0); + ChangeBgY(1, -0x6000, BG_COORD_SET); else - ChangeBgY(1, 0, 0); + ChangeBgY(1, 0, BG_COORD_SET); - ChangeBgX(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); } static bool32 TryFreeTempTileDataBuffers(void) @@ -587,9 +587,9 @@ static void Task_ChangeBgYForZoom(u8 taskId) { if (gTasks[taskId].tZoomIn) { - if (ChangeBgY(1, 0x480, 1) >= 0) + if (ChangeBgY(1, 0x480, BG_COORD_ADD) >= 0) { - ChangeBgY(1, 0, 0); + ChangeBgY(1, 0, BG_COORD_SET); DestroyTask(taskId); } @@ -597,9 +597,9 @@ static void Task_ChangeBgYForZoom(u8 taskId) } else { - if (ChangeBgY(1, 0x480, 2) <= -0x6000) + if (ChangeBgY(1, 0x480, BG_COORD_SUB) <= -0x6000) { - ChangeBgY(1, -0x6000, 0); + ChangeBgY(1, -0x6000, BG_COORD_SET); DestroyTask(taskId); } diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_1.c index 464e0b55cb61..862128967c0b 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_1.c @@ -439,8 +439,8 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) return LT_PAUSE; if (!UpdateMonListBgs()) return LT_PAUSE; - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); ShowBg(1); return LT_INC_AND_PAUSE; case 2: diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index bf1c156e587d..361ec950d95e 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -631,10 +631,10 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) if (!IsDma3ManagerBusyWithBgCopy()) { CreateBigRibbonSprite(structPtr); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); ShowBg(1); ShowBg(2); HideBg(3); diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 642fe6233b26..51498fa1d68e 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -1757,8 +1757,8 @@ static void DuoFight_LightningLong(void) static void DuoFight_AnimateRain(void) { - ChangeBgX(2, 0x400, 1); - ChangeBgY(2, 0x800, 2); + ChangeBgX(2, 0x400, BG_COORD_ADD); + ChangeBgY(2, 0x800, BG_COORD_SUB); } // Only used by the full version, which pans up at the end (so scene objects move down) @@ -1772,7 +1772,7 @@ static void DuoFight_PanOffScene(u8 taskId) bgY = GetBgY(1); if (GetBgY(1) == 0 || bgY > 0x8000) - ChangeBgY(1, 0x400, 2); + ChangeBgY(1, 0x400, BG_COORD_SUB); if (tTimer != 16) { @@ -1795,7 +1795,7 @@ static void Task_DuoFightEnd(u8 taskId) if (!gPaletteFade.active) { DestroyTask(tHelperTaskId); - ChangeBgY(1, 0, 0); + ChangeBgY(1, 0, BG_COORD_SET); SetVBlankCallback(NULL); ScanlineEffect_Stop(); ResetSpriteData(); @@ -2579,8 +2579,8 @@ static void Task_RayCharges_ShakeRayquaza(u8 taskId) s16 *data = gTasks[taskId].data; if ((tTimer & 3) == 0) { - ChangeBgX(1, (Random() % 8 - 4) << 8, 0); - ChangeBgY(1, (Random() % 8 - 4) << 8, 0); + ChangeBgX(1, (Random() % 8 - 4) << 8, BG_COORD_SET); + ChangeBgY(1, (Random() % 8 - 4) << 8, BG_COORD_SET); } tTimer++; @@ -2592,16 +2592,16 @@ static void Task_RayCharges_FlyOffscreen(u8 taskId) s16 *data = gTasks[taskId].data; if (tState == 0) { - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); tState++; tOffset = 10; tShakeDir = -1; } else if (tState == 1) { - ChangeBgX(1, tOffset << 8, 2); - ChangeBgY(1, tOffset << 8, 1); + ChangeBgX(1, tOffset << 8, BG_COORD_SUB); + ChangeBgY(1, tOffset << 8, BG_COORD_ADD); tOffset += tShakeDir; if (tOffset == -10) tShakeDir *= -1; @@ -2616,12 +2616,12 @@ static void Task_RayCharges_FlyOffscreen(u8 taskId) static void RayCharges_AnimateBg(void) { // Update yellow orbs - ChangeBgX(2, 0x400, 2); - ChangeBgY(2, 0x400, 1); + ChangeBgX(2, 0x400, BG_COORD_SUB); + ChangeBgY(2, 0x400, BG_COORD_ADD); // Update blue streaks - ChangeBgX(0, 0x800, 2); - ChangeBgY(0, 0x800, 1); + ChangeBgX(0, 0x800, BG_COORD_SUB); + ChangeBgY(0, 0x800, BG_COORD_ADD); } static void Task_RayChargesEnd(u8 taskId) diff --git a/src/starter_choose.c b/src/starter_choose.c index 942f6027307a..403964684f21 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -389,14 +389,14 @@ void CB2_ChooseStarter(void) SetGpuReg(REG_OFFSET_BG1CNT, 0); SetGpuReg(REG_OFFSET_BG0CNT, 0); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); DmaFill16(3, 0, VRAM, VRAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE); diff --git a/src/trade.c b/src/trade.c index 88bef1ea016d..4089cf1dfd8e 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2907,8 +2907,8 @@ static void InitTradeBgInternal(void) SetGpuReg(REG_OFFSET_DISPCNT, 0); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sTradeSequenceBgTemplates, ARRAY_COUNT(sTradeSequenceBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(3, Alloc(BG_SCREEN_SIZE)); diff --git a/src/trainer_card.c b/src/trainer_card.c index 8f3b61a3565a..02c705631437 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -884,14 +884,14 @@ static void InitBgsAndWindows(void) { ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sTrainerCardBgTemplates, ARRAY_COUNT(sTrainerCardBgTemplates)); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); InitWindows(sTrainerCardWindowTemplates); DeactivateAllTextPrinters(); LoadMessageBoxAndBorderGfx(); diff --git a/src/union_room_chat.c b/src/union_room_chat.c index c6fe7413e100..34aef1a887b8 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2803,7 +2803,7 @@ static void AddStdMessageWindow(int msgId, u16 bg0vofs) str = sDisplayStdMessages[msgId].text; } - ChangeBgY(0, bg0vofs * 256, 0); + ChangeBgY(0, bg0vofs * 256, BG_COORD_SET); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (sDisplayStdMessages[msgId].boxType == 1) @@ -2846,7 +2846,7 @@ static void HideStdMessageWindow(void) ClearWindowTilemap(sDisplay->messageWindowId); } - ChangeBgY(0, 0, 0); + ChangeBgY(0, 0, BG_COORD_SET); } static void DestroyStdMessageWindow(void) @@ -3011,14 +3011,14 @@ static void PrintChatMessage(u16 row, u8 *str, u8 colorIdx) static void ResetGpuBgState(void) { - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); ShowBg(0); ShowBg(1); ShowBg(2); diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index e67ade342cfc..9f8918ba2d74 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -1316,14 +1316,14 @@ static bool8 LoadUsePokeblockMenuGfx(void) switch (sMenu->info.helperState) { case 0: - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 136 << 6, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 136 << 6, BG_COORD_SET); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON | DISPCNT_WIN1_ON); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(11, 4)); diff --git a/src/wallclock.c b/src/wallclock.c index 407c89c49a9c..759b1d11ffbe 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -628,14 +628,14 @@ static void LoadWallClockGraphics(void) SetGpuReg(REG_OFFSET_BG2CNT, 0); SetGpuReg(REG_OFFSET_BG1CNT, 0); SetGpuReg(REG_OFFSET_BG0CNT, 0); - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); - ChangeBgX(2, 0, 0); - ChangeBgY(2, 0, 0); - ChangeBgX(3, 0, 0); - ChangeBgY(3, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); + ChangeBgX(2, 0, BG_COORD_SET); + ChangeBgY(2, 0, BG_COORD_SET); + ChangeBgX(3, 0, BG_COORD_SET); + ChangeBgY(3, 0, BG_COORD_SET); DmaFillLarge16(3, 0, (void *)VRAM, VRAM_SIZE, 0x1000); DmaClear32(3, (void *)OAM, OAM_SIZE); DmaClear16(3, (void *)PLTT, PLTT_SIZE); diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index a12a8920c115..ffb86488aae0 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -189,10 +189,10 @@ static void CB2_InitWirelessCommunicationScreen(void) sStatusScreen->taskId = CreateTask(Task_WirelessCommunicationScreen, 0); sStatusScreen->rfuTaskId = CreateTask_ListenToWireless(); sStatusScreen->prevGroupCounts[GROUPTYPE_TOTAL] = 1; - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - ChangeBgX(1, 0, 0); - ChangeBgY(1, 0, 0); + ChangeBgX(0, 0, BG_COORD_SET); + ChangeBgY(0, 0, BG_COORD_SET); + ChangeBgX(1, 0, BG_COORD_SET); + ChangeBgY(1, 0, BG_COORD_SET); LoadPalette(sBgTiles_Pal, 0x00, 0x20); Menu_LoadStdPalAt(0xF0); DynamicPlaceholderTextUtil_Reset(); From 17b657d83a29919253675b06c12a9ea5471385b2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Nov 2021 23:20:59 -0400 Subject: [PATCH 380/762] Finish menu documentation --- graphics/interface/855C604.pal | 19 --- graphics/interface/855C624.bin | 1 - .../interface/{860F074.pal => std_menu.pal} | 0 graphics/slot_machine/85A8524.pal | 19 --- include/menu.h | 12 +- src/battle_pyramid_bag.c | 10 +- src/field_player_avatar.c | 2 +- src/field_screen_effect.c | 4 +- src/item_menu.c | 10 +- src/menu.c | 121 ++++++++---------- src/player_pc.c | 2 +- src/pokeblock.c | 2 +- src/pokenav_conditions_2.c | 4 +- src/pokenav_match_call_2.c | 2 +- src/pokenav_match_call_ui.c | 4 +- src/pokenav_region_map.c | 4 +- src/pokenav_ribbons_2.c | 2 +- src/script_menu.c | 4 +- src/start_menu.c | 2 +- 19 files changed, 88 insertions(+), 136 deletions(-) delete mode 100644 graphics/interface/855C604.pal delete mode 100644 graphics/interface/855C624.bin rename graphics/interface/{860F074.pal => std_menu.pal} (100%) delete mode 100644 graphics/slot_machine/85A8524.pal diff --git a/graphics/interface/855C604.pal b/graphics/interface/855C604.pal deleted file mode 100644 index e7d6c330aeae..000000000000 --- a/graphics/interface/855C604.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -255 255 255 -255 180 82 -197 123 0 -255 139 131 -255 49 24 -74 74 74 -213 213 205 -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/interface/855C624.bin b/graphics/interface/855C624.bin deleted file mode 100644 index 6f48b39f69a8..000000000000 --- a/graphics/interface/855C624.bin +++ /dev/null @@ -1 +0,0 @@ -˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙řŹř˙˙˙˙řŹř˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ \ No newline at end of file diff --git a/graphics/interface/860F074.pal b/graphics/interface/std_menu.pal similarity index 100% rename from graphics/interface/860F074.pal rename to graphics/interface/std_menu.pal diff --git a/graphics/slot_machine/85A8524.pal b/graphics/slot_machine/85A8524.pal deleted file mode 100644 index b93d15ddc3dd..000000000000 --- a/graphics/slot_machine/85A8524.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -255 255 255 -0 0 0 -65 65 65 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -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/include/menu.h b/include/menu.h index 7ecb04e53ea2..69000d4089de 100644 --- a/include/menu.h +++ b/include/menu.h @@ -59,7 +59,7 @@ u32 GetPlayerTextSpeed(void); u8 GetPlayerTextSpeedDelay(void); void Menu_LoadStdPalAt(u16 arg0); void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextPrinterTemplate *, u16)); -void sub_8199DF0(u32 bg, u8 a1, int a2, int a3); +void BgDmaFill(u32 bg, u8 a1, int a2, int a3); 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); @@ -83,15 +83,15 @@ 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 DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 a2, u8 a3); -void sub_81995E4(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); +void PrintMenuActionTextsInUpperLeftCorner(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram); void *malloc_and_decompress(const void *src, u32 *sizeOut); u16 copy_decompressed_tile_data_to_vram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode); void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress); -void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8); +void PrintMenuActionTexts(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8); void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8); u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); -u8 ChangeListMenuCursorPosition(s8 deltaX, s8 deltaY); +u8 ChangeMenuGridCursorPosition(s8 deltaX, s8 deltaY); u8 GetStartMenuWindowId(void); void ListMenuLoadStdPalAt(u8, u8); u8 Menu_MoveCursor(s8 cursorDelta); @@ -99,7 +99,7 @@ u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta); 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 sub_819786C(u8 windowId, bool8 copyToVram); +void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram); void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress); void RemoveStartMenuWindow(void); void DisplayYesNoMenuWithDefault(u8 initialCursorPos); @@ -112,7 +112,7 @@ void SetBgTilemapPalette(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palet void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 is8BPP); void EraseFieldMessageBox(bool8 copyToVram); void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *strs); -s8 Menu_ProcessInputGridLayout(void); +s8 Menu_ProcessGridInput(void); u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, bool8 APressMuted); s8 Menu_ProcessInputNoWrapAround_other(void); void CopyToBufferFromBgTilemap(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 height); diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index e18a29295028..9e17817e0082 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -978,7 +978,7 @@ static void OpenContextMenu(u8 taskId) static void PrintMenuActionText_SingleRow(u8 windowId) { - AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); + PrintMenuActionTexts(windowId, FONT_NARROW, 8, 1, 0, 0x10, gPyramidBagMenu->menuActionsCount, sMenuActions, gPyramidBagMenu->menuActionIds); InitMenuInUpperLeftCornerNormal(windowId, gPyramidBagMenu->menuActionsCount, 0); } @@ -1020,7 +1020,7 @@ static void HandleMenuActionInput_2x2(u8 taskId) if (id > 0 && IsValidMenuAction(id - 2)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); } } else if (JOY_NEW(DPAD_DOWN)) @@ -1028,7 +1028,7 @@ static void HandleMenuActionInput_2x2(u8 taskId) if (id < gPyramidBagMenu->menuActionsCount - 2 && IsValidMenuAction(id + 2)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); } } else if (JOY_NEW(DPAD_LEFT) || GetLRKeysPressed() == MENU_L_PRESSED) @@ -1036,7 +1036,7 @@ static void HandleMenuActionInput_2x2(u8 taskId) if (id & 1 && IsValidMenuAction(id - 1)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); } } else if (JOY_NEW(DPAD_RIGHT) || GetLRKeysPressed() == MENU_R_PRESSED) @@ -1044,7 +1044,7 @@ static void HandleMenuActionInput_2x2(u8 taskId) if (!(id & 1) && IsValidMenuAction(id + 1)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); } } else if (JOY_NEW(A_BUTTON)) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 06b582756832..f694628ff659 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1763,7 +1763,7 @@ static bool8 Fishing_InitDots(struct Task *task) { u32 randVal; - sub_819786C(0, TRUE); + LoadMessageBoxAndFrameGfx(0, TRUE); task->tStep++; task->tFrameCounter = 0; task->tNumDots = 0; diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index e573fe5ab9ee..c27ec6c4c325 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -1145,7 +1145,7 @@ static void Task_OrbEffect(u8 taskId) tState = 1; break; case 1: - sub_8199DF0(0, PIXEL_FILL(1), 0, 1); + BgDmaFill(0, PIXEL_FILL(1), 0, 1); LoadOrbEffectPalette(tBlueOrb); StartUpdateOrbFlashEffect(tCenterX, tCenterY, 1, 160, 1, 2); tState = 2; @@ -1190,7 +1190,7 @@ static void Task_OrbEffect(u8 taskId) if (UpdateOrbEffectBlend(tShakeDir) == TRUE) { tState = 5; - sub_8199DF0(0, PIXEL_FILL(0), 0, 1); + BgDmaFill(0, PIXEL_FILL(0), 0, 1); } } break; diff --git a/src/item_menu.c b/src/item_menu.c index 037567daa7af..4a21c07903b5 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -1667,7 +1667,7 @@ static void OpenContextMenu(u8 taskId) static void PrintContextMenuItems(u8 windowId) { - AddItemMenuActionTextPrinters(windowId, FONT_NARROW, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); + PrintMenuActionTexts(windowId, FONT_NARROW, 8, 1, 0, 16, gBagMenu->contextMenuNumItems, sItemMenuActions, gBagMenu->contextMenuItemsPtr); InitMenuInUpperLeftCornerNormal(windowId, gBagMenu->contextMenuNumItems, 0); } @@ -1720,7 +1720,7 @@ static void Task_ItemContext_MultipleRows(u8 taskId) if (cursorPos > 0 && IsValidContextMenuPos(cursorPos - 2)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); } } else if (JOY_NEW(DPAD_DOWN)) @@ -1728,7 +1728,7 @@ static void Task_ItemContext_MultipleRows(u8 taskId) if (cursorPos < (gBagMenu->contextMenuNumItems - 2) && IsValidContextMenuPos(cursorPos + 2)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); } } else if (JOY_NEW(DPAD_LEFT) || GetLRKeysPressed() == MENU_L_PRESSED) @@ -1736,7 +1736,7 @@ static void Task_ItemContext_MultipleRows(u8 taskId) if ((cursorPos & 1) && IsValidContextMenuPos(cursorPos - 1)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); } } else if (JOY_NEW(DPAD_RIGHT) || GetLRKeysPressed() == MENU_R_PRESSED) @@ -1744,7 +1744,7 @@ static void Task_ItemContext_MultipleRows(u8 taskId) if (!(cursorPos & 1) && IsValidContextMenuPos(cursorPos + 1)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); } } else if (JOY_NEW(A_BUTTON)) diff --git a/src/menu.c b/src/menu.c index ddbc82686901..6b915f9cec68 100644 --- a/src/menu.c +++ b/src/menu.c @@ -71,7 +71,7 @@ static EWRAM_DATA bool8 sScheduledBgCopiesToVram[4] = {FALSE}; static EWRAM_DATA u16 sTempTileDataBufferIdx = 0; static EWRAM_DATA void *sTempTileDataBuffer[0x20] = {NULL}; -const u16 gStandardMenuPalette[] = INCBIN_U16("graphics/interface/860F074.gbapal"); +const u16 gStandardMenuPalette[] = INCBIN_U16("graphics/interface/std_menu.gbapal"); static const u8 sTextSpeedFrameDelays[] = { @@ -425,7 +425,7 @@ void SetStandardWindowBorderStyle(u8 windowId, bool8 copyToVram) DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM); } -void sub_819786C(u8 windowId, bool8 copyToVram) +void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram) { LoadMessageBoxGfx(windowId, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10); DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, 0xF); @@ -1128,7 +1128,7 @@ static void PrintMenuActionTextsAtTop(u8 windowId, u8 fontId, u8 lineHeight, u8 PrintMenuActionTextsAtPos(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, lineHeight, itemCount, menuActions); } -void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) +void PrintMenuActionTexts(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; struct TextPrinterTemplate printer; @@ -1156,9 +1156,9 @@ void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 l } // Unused -static void AddItemMenuActionTextPrintersAtTop(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) +static void PrintMenuActionTextsAtTopById(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { - AddItemMenuActionTextPrinters(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, GetFontAttribute(fontId, FONTATTR_LETTER_SPACING), lineHeight, itemCount, menuActions, actionIds); + PrintMenuActionTexts(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 1, GetFontAttribute(fontId, FONTATTR_LETTER_SPACING), lineHeight, itemCount, menuActions, actionIds); } void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock) @@ -1232,22 +1232,22 @@ void EraseYesNoWindow(void) RemoveWindow(sYesNoWindowId); } -static void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *menuActions) +static void PrintMenuActionGridText(u8 windowId, u8 fontId, u8 left, u8 top, u8 width, u8 height, u8 columns, u8 rows, const struct MenuAction *menuActions) { u8 i; u8 j; - for (i = 0; i < a7; i++) + for (i = 0; i < rows; i++) { - for (j = 0; j < a6; j++) - AddTextPrinterParameterized(windowId, fontId, menuActions[(i * a6) + j].text, (a4 * j) + left, (a5 * i) + top, TEXT_SKIP_DRAW, NULL); + for (j = 0; j < columns; j++) + AddTextPrinterParameterized(windowId, fontId, menuActions[(i * columns) + j].text, (width * j) + left, (height * i) + top, TEXT_SKIP_DRAW, NULL); } CopyWindowToVram(windowId, COPYWIN_GFX); } // Unused -static void sub_8198D54(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) +static void PrintMenuActionGridTextAtTop(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) { - sub_8198C94(windowId, fontId, GetFontAttribute(fontId, 0), 0, a2, a3, a4, a5, menuActions); + PrintMenuActionGridText(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, a2, a3, a4, a5, menuActions); } void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *menuActions, const u8 *actionIds) @@ -1287,7 +1287,7 @@ static void PrintMenuActionGrid_TopLeft(u8 windowId, u8 fontId, u8 optionWidth, PrintMenuActionGrid(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, optionWidth, horizontalCount, verticalCount, menuActions, actionIds); } -static u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 optionHeight, u8 columns, u8 rows, u8 numChoices, u8 cursorPos) +static u8 InitMenuGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 optionHeight, u8 columns, u8 rows, u8 numChoices, u8 cursorPos) { s32 pos; @@ -1310,42 +1310,34 @@ static u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u sMenu.cursorPos = pos; // Why call this when it's not gonna move? - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_NONE); return sMenu.cursorPos; } // Unused -static u8 sub_8198FD4(u8 windowId, u8 fontId, u8 left, u8 top, u8 width, u8 columns, u8 rows, u8 cursorPos) +static u8 InitMenuGridDefaultCursorHeight(u8 windowId, u8 fontId, u8 left, u8 top, u8 width, u8 columns, u8 rows, u8 cursorPos) { u8 cursorHeight = GetMenuCursorDimensionByFont(fontId, 1); u8 numChoices = columns * rows; - return sub_8198F58(windowId, fontId, left, top, width, cursorHeight, columns, rows, numChoices, cursorPos); + return InitMenuGrid(windowId, fontId, left, top, width, cursorHeight, columns, rows, numChoices, cursorPos); } -static void sub_8199060(u8 oldCursorPos, u8 newCursorPos) +// Erase cursor at old position, draw cursor at new position. +static void MoveMenuGridCursor(u8 oldCursorPos, u8 newCursorPos) { u8 cursorWidth = GetMenuCursorDimensionByFont(sMenu.fontId, 0); u8 cursorHeight = GetMenuCursorDimensionByFont(sMenu.fontId, 1); + u8 xPos = (oldCursorPos % sMenu.columns) * sMenu.optionWidth + sMenu.left; u8 yPos = (oldCursorPos / sMenu.columns) * sMenu.optionHeight + sMenu.top; - FillWindowPixelRect(sMenu.windowId, - PIXEL_FILL(1), - xPos, - yPos, - cursorWidth, - cursorHeight); + FillWindowPixelRect(sMenu.windowId, PIXEL_FILL(1), xPos, yPos, cursorWidth, cursorHeight); + xPos = (newCursorPos % sMenu.columns) * sMenu.optionWidth + sMenu.left; yPos = (newCursorPos / sMenu.columns) * sMenu.optionHeight + sMenu.top; - AddTextPrinterParameterized(sMenu.windowId, - sMenu.fontId, - gText_SelectorArrow3, - xPos, - yPos, - 0, - 0); + AddTextPrinterParameterized(sMenu.windowId, sMenu.fontId, gText_SelectorArrow3, xPos, yPos, 0, 0); } -u8 ChangeListMenuCursorPosition(s8 deltaX, s8 deltaY) +u8 ChangeMenuGridCursorPosition(s8 deltaX, s8 deltaY) { u8 oldPos = sMenu.cursorPos; @@ -1376,7 +1368,7 @@ u8 ChangeListMenuCursorPosition(s8 deltaX, s8 deltaY) } else { - sub_8199060(oldPos, sMenu.cursorPos); + MoveMenuGridCursor(oldPos, sMenu.cursorPos); return sMenu.cursorPos; } } @@ -1410,13 +1402,13 @@ u8 ChangeGridMenuCursorPosition(s8 deltaX, s8 deltaY) } else { - sub_8199060(oldPos, sMenu.cursorPos); + MoveMenuGridCursor(oldPos, sMenu.cursorPos); return sMenu.cursorPos; } } // Unused -static s8 sub_8199284(void) +static s8 Menu_ProcessGridInput_NoSoundLimit(void) { if (JOY_NEW(A_BUTTON)) { @@ -1430,32 +1422,32 @@ static s8 sub_8199284(void) else if (JOY_NEW(DPAD_UP)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); return MENU_NOTHING_CHOSEN; } else if (JOY_NEW(DPAD_DOWN)) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); return MENU_NOTHING_CHOSEN; } else if (JOY_NEW(DPAD_LEFT) || GetLRKeysPressed() == MENU_L_PRESSED) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); return MENU_NOTHING_CHOSEN; } else if (JOY_NEW(DPAD_RIGHT) || GetLRKeysPressed() == MENU_R_PRESSED) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); return MENU_NOTHING_CHOSEN; } return MENU_NOTHING_CHOSEN; } -s8 Menu_ProcessInputGridLayout(void) +s8 Menu_ProcessGridInput(void) { u8 oldPos = sMenu.cursorPos; @@ -1497,7 +1489,7 @@ s8 Menu_ProcessInputGridLayout(void) } // Unused -static s8 sub_81993D8(void) +static s8 Menu_ProcessGridInputRepeat_NoSoundLimit(void) { if (JOY_NEW(A_BUTTON)) { @@ -1511,25 +1503,25 @@ static s8 sub_81993D8(void) else if (JOY_REPEAT(DPAD_ANY) == DPAD_UP) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_UP); return MENU_NOTHING_CHOSEN; } else if (JOY_REPEAT(DPAD_ANY) == DPAD_DOWN) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_DOWN); return MENU_NOTHING_CHOSEN; } else if (JOY_REPEAT(DPAD_ANY) == DPAD_LEFT || GetLRKeysPressedAndHeld() == MENU_L_PRESSED) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_LEFT, MENU_CURSOR_DELTA_NONE); return MENU_NOTHING_CHOSEN; } else if (JOY_REPEAT(DPAD_ANY) == DPAD_RIGHT || GetLRKeysPressedAndHeld() == MENU_R_PRESSED) { PlaySE(SE_SELECT); - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_RIGHT, MENU_CURSOR_DELTA_NONE); return MENU_NOTHING_CHOSEN; } @@ -1537,7 +1529,7 @@ static s8 sub_81993D8(void) } // Unused -static s8 sub_8199484(void) +static s8 Menu_ProcessGridInputRepeat(void) { u8 oldPos = sMenu.cursorPos; @@ -1617,7 +1609,7 @@ void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActi CopyWindowToVram(windowId, COPYWIN_GFX); } -void sub_81995E4(u8 windowId, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) +void PrintMenuActionTextsInUpperLeftCorner(u8 windowId, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; struct TextPrinterTemplate printer; @@ -1682,7 +1674,7 @@ void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const } // Unused -static void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *menuActions, const u8 *actionIds) +static void PrintMenuActionGridTextNoSpacing(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *menuActions, const u8 *actionIds) { u8 i; u8 j; @@ -1697,12 +1689,12 @@ static void sub_819983C(u8 windowId, u8 a4, u8 itemCount, u8 itemCount2, const s printer.letterSpacing = 0; printer.lineSpacing = 0; - for (i = 0; i < itemCount2; i++) + for (i = 0; i < rows; i++) { - for (j = 0; j < itemCount; j++) + for (j = 0; j < columns; j++) { - printer.currentChar = menuActions[actionIds[(itemCount * i) + j]].text; - printer.x = (a4 * j) + 8; + printer.currentChar = menuActions[actionIds[(columns * i) + j]].text; + printer.x = (optionWidth * j) + 8; printer.y = (16 * i) + 1; printer.currentX = printer.x; printer.currentY = printer.y; @@ -1736,7 +1728,7 @@ u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initi sMenu.cursorPos = pos; // Why call this when it's not gonna move? - ChangeListMenuCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_NONE); + ChangeMenuGridCursorPosition(MENU_CURSOR_DELTA_NONE, MENU_CURSOR_DELTA_NONE); return sMenu.cursorPos; } @@ -1932,11 +1924,11 @@ void ResetBgPositions(void) ChangeBgY(3, 0, BG_COORD_SET); } -void sub_8199DF0(u32 bg, u8 a1, int a2, int a3) +void BgDmaFill(u32 bg, u8 value, int offset, int size) { - int temp = (!GetBgAttribute(bg, BG_ATTR_PALETTEMODE)) ? 0x20 : 0x40; - void *addr = (void *)((GetBgAttribute(bg, BG_ATTR_CHARBASEINDEX) * 0x4000) + (GetBgAttribute(bg, BG_ATTR_BASETILE) + a2) * temp); - RequestDma3Fill(a1 << 24 | a1 << 16 | a1 << 8 | a1, addr + VRAM, a3 * temp, 1); + int temp = (!GetBgAttribute(bg, BG_ATTR_PALETTEMODE)) ? 32 : 64; + void *addr = (void *)((GetBgAttribute(bg, BG_ATTR_CHARBASEINDEX) * 0x4000) + (GetBgAttribute(bg, BG_ATTR_BASETILE) + offset) * temp); + RequestDma3Fill(value << 24 | value << 16 | value << 8 | value, VRAM + addr, size * temp, 1); } void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str) @@ -2014,8 +2006,7 @@ void PrintPlayerNameOnWindow(u8 windowId, const u8 *src, u16 x, u16 y) AddTextPrinterParameterized(windowId, 1, gStringVar4, x, y, TEXT_SKIP_DRAW, 0); } -// Unused. Similar to BlitBitmapRect4Bit. -static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height) +static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height) { int loopSrcY, loopDstY, loopSrcX, loopDstX, xEnd, yEnd, multiplierSrcY, multiplierDstY; const u8 *pixelsSrc; @@ -2032,8 +2023,8 @@ static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, else yEnd = srcY + height; - multiplierSrcY = (src->width + (src->width & 7)) >> 3; - multiplierDstY = (dst->width + (dst->width & 7)) >> 3; + multiplierSrcY = (src->width + (src->width % 8)) >> 3; + multiplierDstY = (dst->width + (dst->width % 8)) >> 3; for (loopSrcY = srcY, loopDstY = dstY; loopSrcY < yEnd; loopSrcY++, loopDstY++) { @@ -2042,14 +2033,14 @@ static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, pixelsSrc = src->pixels + ((loopSrcX >> 1) & 3) + ((loopSrcX >> 3) << 5) + (((loopSrcY >> 3) * multiplierSrcY) << 5) + ((u32)(loopSrcY << 29) >> 27); pixelsDst = (void*) dst->pixels + ((loopDstX >> 1) & 3) + ((loopDstX >> 3) << 5) + ((( loopDstY >> 3) * multiplierDstY) << 5) + ((u32)(loopDstY << 29) >> 27); - if ((uintptr_t)pixelsDst & 0x1) + if ((uintptr_t)pixelsDst & 1) { pixelsDst--; - if (loopDstX & 0x1) + if (loopDstX & 1) { toOrr = *(vu16*)pixelsDst; toOrr &= 0x0fff; - if (loopSrcX & 0x1) + if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) << 8); else toOrr |= ((*pixelsSrc & 0x0f) << 12); @@ -2058,7 +2049,7 @@ static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, { toOrr = *(vu16*)pixelsDst; toOrr &= 0xf0ff; - if (loopSrcX & 0x1) + if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) << 4); else toOrr |= ((*pixelsSrc & 0x0f) << 8); @@ -2091,13 +2082,13 @@ static void sub_819A080(const struct Bitmap *src, struct Bitmap *dst, u16 srcX, } // Unused -static void sub_819A25C(u8 palOffset, u16 speciesId) +static void LoadMonIconPalAtOffset(u8 palOffset, u16 speciesId) { LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, 0x20); } // Unused -static void sub_819A27C(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y) +static void DrawMonIconAtPos(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y) { BlitBitmapToWindow(windowId, GetMonIconPtr(speciesId, personality, 1), x, y, 32, 32); } diff --git a/src/player_pc.c b/src/player_pc.c index 622c30ec02bf..06f58fdeb454 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -399,7 +399,7 @@ static void InitPlayerPCMenu(u8 taskId) windowTemplate.width = GetMaxWidthInSubsetOfMenuTable(sPlayerPCMenuActions, sTopMenuOptionOrder, sTopMenuNumOptions); tWindowId = AddWindow(&windowTemplate); SetStandardWindowBorderStyle(tWindowId, 0); - sub_81995E4(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); + PrintMenuActionTextsInUpperLeftCorner(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); InitMenuInUpperLeftCornerNormal(tWindowId, sTopMenuNumOptions, 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = PlayerPCProcessMenuInput; diff --git a/src/pokeblock.c b/src/pokeblock.c index e07ad018eefc..3ea593841033 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -1149,7 +1149,7 @@ static void ShowPokeblockActionsWindow(u8 taskId) DestroyScrollArrows(); DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 1, 0xE); - sub_81995E4(tWindowId, sPokeblockMenu->numActions, sPokeblockMenuActions, sPokeblockMenu->pokeblockActionIds); + PrintMenuActionTextsInUpperLeftCorner(tWindowId, sPokeblockMenu->numActions, sPokeblockMenuActions, sPokeblockMenu->pokeblockActionIds); InitMenuInUpperLeftCornerNormal(tWindowId, sPokeblockMenu->numActions, 0); PutWindowTilemap(tWindowId); ScheduleBgCopyTilemapToVram(1); diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index 9fc7d33a1556..4799b163c266 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -240,8 +240,8 @@ u32 LoopedTask_OpenPartyConditionGraph(s32 state) SetConditionGraphIOWindows(2); return LT_INC_AND_PAUSE; case 5: - sub_8199DF0(1, 0, 0, 1); - sub_8199DF0(1, 17, 1, 1); + BgDmaFill(1, 0, 0, 1); + BgDmaFill(1, 17, 1, 1); CpuFill32(0, structPtr->tilemapBuffers[1], BG_SCREEN_SIZE); SetBgTilemapBuffer(1, structPtr->tilemapBuffers[1]); return LT_INC_AND_PAUSE; diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 3bfacfede49f..8f222095790a 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -335,7 +335,7 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - sub_8199DF0(1, 0, 0, 1); + BgDmaFill(1, 0, 0, 1); SetBgTilemapBuffer(1, state->unk24); FillBgTilemapBufferRect_Palette0(1, 0x1000, 0, 0, 32, 20); CopyPaletteIntoBufferUnfaded(gUnknown_086226E0, 0x10, 0x20); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 5f95f2493544..fd0af90e08be 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -170,8 +170,8 @@ u32 LoopedTask_sub_81C8254(s32 state) void sub_81C82E4(struct PokenavSub17 *matchCall) { u16 tileNum = (matchCall->list.listWindow.unk1 << 12) | matchCall->list.listWindow.unk6; - sub_8199DF0(matchCall->list.listWindow.bg, PIXEL_FILL(1), matchCall->list.listWindow.unk6, 1); - sub_8199DF0(matchCall->list.listWindow.bg, PIXEL_FILL(4), matchCall->list.listWindow.unk6 + 1, 1); + BgDmaFill(matchCall->list.listWindow.bg, PIXEL_FILL(1), matchCall->list.listWindow.unk6, 1); + BgDmaFill(matchCall->list.listWindow.bg, PIXEL_FILL(4), matchCall->list.listWindow.unk6 + 1, 1); SetBgTilemapBuffer(matchCall->list.listWindow.bg, matchCall->tilemapBuffer); FillBgTilemapBufferRect_Palette0(matchCall->list.listWindow.bg, tileNum, 0, 0, 32, 32); ChangeBgY(matchCall->list.listWindow.bg, 0, BG_COORD_SET); diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index c117dce3bd87..89bd2f7c7517 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -501,8 +501,8 @@ static void FreeCityZoomViewGfx(void) static void LoadPokenavRegionMapGfx(struct Pokenav5Struct_2 *state) { - sub_8199DF0(1, PIXEL_FILL(0), 0x40, 1); - sub_8199DF0(1, PIXEL_FILL(1), 0x41, 1); + BgDmaFill(1, PIXEL_FILL(0), 0x40, 1); + BgDmaFill(1, PIXEL_FILL(1), 0x41, 1); CpuFill16(0x1040, state->tilemapBuffer, 0x800); SetBgTilemapBuffer(1, state->tilemapBuffer); state->infoWindowId = AddWindow(&sMapSecInfoWindowTemplate); diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_2.c index 361ec950d95e..ef08ba3927ea 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_2.c @@ -578,7 +578,7 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) case 1: if (!FreeTempTileDataBuffersIfPossible()) { - sub_8199DF0(1, 0, 0, 1); + BgDmaFill(1, 0, 0, 1); DecompressAndCopyTileDataToVram(1, sRibbonIconsSmall_Gfx, 0, 1, 0); SetBgTilemapBuffer(1, structPtr->tilemapBuffers[1]); FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 32, 20); diff --git a/src/script_menu.c b/src/script_menu.c index c82440b79a79..ae0fe91e6702 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -288,7 +288,7 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignore static void Task_HandleMultichoiceGridInput(u8 taskId) { s16 *data = gTasks[taskId].data; - s8 selection = Menu_ProcessInputGridLayout(); + s8 selection = Menu_ProcessGridInput(); switch (selection) { @@ -379,7 +379,7 @@ static void CreatePCMultichoice(void) void ScriptMenu_DisplayPCStartupPrompt(void) { - sub_819786C(0, TRUE); + LoadMessageBoxAndFrameGfx(0, TRUE); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_WhichPCShouldBeAccessed, 0, NULL, 2, 1, 3); } diff --git a/src/start_menu.c b/src/start_menu.c index 05ceb11194b3..540073b7f1fd 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -876,7 +876,7 @@ void SaveGame(void) static void ShowSaveMessage(const u8 *message, u8 (*saveCallback)(void)) { StringExpandPlaceholders(gStringVar4, message); - sub_819786C(0, TRUE); + LoadMessageBoxAndFrameGfx(0, TRUE); AddTextPrinterForMessage_2(TRUE); sSavingComplete = TRUE; sSaveDialogCallback = saveCallback; From c6b83bbb215ad25f533346873286f103c582d906 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 4 Nov 2021 12:18:34 -0400 Subject: [PATCH 381/762] Fix merge --- src/pokenav_match_call_ui.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 2c981d07f806..47226ca729dc 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -755,6 +755,7 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok { FillWindowTilesByRow(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SKIP_DRAW, NULL); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, r6 * 2, list->listWindow.unk4, 2); } } From 0fe38819616372d8de160fbd2ab8c38c2a109540 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Fri, 5 Nov 2021 01:54:34 +0800 Subject: [PATCH 382/762] Rename WalkInPlaceFastest to WalkInPlaceFaster --- include/constants/event_object_movement.h | 8 ++-- include/event_object_movement.h | 2 +- .../movement_action_func_tables.h | 40 +++++++++---------- src/event_object_movement.c | 24 +++++------ src/field_effect.c | 2 +- src/field_player_avatar.c | 2 +- 6 files changed, 39 insertions(+), 39 deletions(-) diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 9611d008b136..2c4273524838 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -121,10 +121,10 @@ #define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_UP 0x22 #define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_LEFT 0x23 #define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_RIGHT 0x24 -#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_DOWN 0x25 -#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_UP 0x26 -#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_LEFT 0x27 -#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_RIGHT 0x28 +#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN 0x25 +#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_UP 0x26 +#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_LEFT 0x27 +#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT 0x28 #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN 0x29 #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP 0x2A #define MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT 0x2B diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 9ed524e6654f..6ad4b55e4f07 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -121,7 +121,7 @@ void InitObjectEventPalettes(u8 palSlot); void UpdateObjectEventCurrentMovement(struct ObjectEvent *, struct Sprite *, bool8(struct ObjectEvent *, struct Sprite *)); u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8); u8 GetOppositeDirection(u8); -u8 GetWalkInPlaceFastestMovementAction(u32); +u8 GetWalkInPlaceFasterMovementAction(u32); u8 GetWalkInPlaceFastMovementAction(u32); u8 GetWalkInPlaceNormalMovementAction(u32); u8 GetWalkInPlaceSlowMovementAction(u32); diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index aa55c31ef595..f601cf82b6fa 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -73,10 +73,10 @@ u8 MovementAction_WalkInPlaceFastDown_Step0(struct ObjectEvent *, struct Sprite u8 MovementAction_WalkInPlaceFastUp_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_WalkInPlaceFastLeft_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_WalkInPlaceFastRight_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkInPlaceFastestDown_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkInPlaceFastestUp_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkInPlaceFastestLeft_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkInPlaceFasterDown_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkInPlaceFasterUp_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkInPlaceFasterLeft_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_WalkInPlaceFasterRight_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_RideWaterCurrentDown_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_RideWaterCurrentUp_Step0(struct ObjectEvent *, struct Sprite *); @@ -299,10 +299,10 @@ u8 (*const gMovementActionFuncs_WalkInPlaceFastDown[])(struct ObjectEvent *, str u8 (*const gMovementActionFuncs_WalkInPlaceFastUp[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkInPlaceFastLeft[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkInPlaceFastRight[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkInPlaceFastestDown[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkInPlaceFastestUp[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkInPlaceFastestLeft[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_WalkInPlaceFastestRight[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkInPlaceFasterDown[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkInPlaceFasterUp[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkInPlaceFasterLeft[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_WalkInPlaceFasterRight[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_RideWaterCurrentDown[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_RideWaterCurrentUp[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_RideWaterCurrentLeft[])(struct ObjectEvent *, struct Sprite *); @@ -459,10 +459,10 @@ u8 (*const *const gMovementActionFuncs[])(struct ObjectEvent *, struct Sprite *) [MOVEMENT_ACTION_WALK_IN_PLACE_FAST_UP] = gMovementActionFuncs_WalkInPlaceFastUp, [MOVEMENT_ACTION_WALK_IN_PLACE_FAST_LEFT] = gMovementActionFuncs_WalkInPlaceFastLeft, [MOVEMENT_ACTION_WALK_IN_PLACE_FAST_RIGHT] = gMovementActionFuncs_WalkInPlaceFastRight, - [MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_DOWN] = gMovementActionFuncs_WalkInPlaceFastestDown, - [MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_UP] = gMovementActionFuncs_WalkInPlaceFastestUp, - [MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_LEFT] = gMovementActionFuncs_WalkInPlaceFastestLeft, - [MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_RIGHT] = gMovementActionFuncs_WalkInPlaceFastestRight, + [MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN] = gMovementActionFuncs_WalkInPlaceFasterDown, + [MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_UP] = gMovementActionFuncs_WalkInPlaceFasterUp, + [MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_LEFT] = gMovementActionFuncs_WalkInPlaceFasterLeft, + [MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT] = gMovementActionFuncs_WalkInPlaceFasterRight, [MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN] = gMovementActionFuncs_RideWaterCurrentDown, [MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP] = gMovementActionFuncs_RideWaterCurrentUp, [MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT] = gMovementActionFuncs_RideWaterCurrentLeft, @@ -859,26 +859,26 @@ u8 (*const gMovementActionFuncs_WalkInPlaceFastRight[])(struct ObjectEvent *, st MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkInPlaceFastestDown[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkInPlaceFastestDown_Step0, +u8 (*const gMovementActionFuncs_WalkInPlaceFasterDown[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkInPlaceFasterDown_Step0, MovementAction_WalkInPlace_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkInPlaceFastestUp[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkInPlaceFastestUp_Step0, +u8 (*const gMovementActionFuncs_WalkInPlaceFasterUp[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkInPlaceFasterUp_Step0, MovementAction_WalkInPlace_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkInPlaceFastestLeft[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkInPlaceFastestLeft_Step0, +u8 (*const gMovementActionFuncs_WalkInPlaceFasterLeft[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkInPlaceFasterLeft_Step0, MovementAction_WalkInPlace_Step1, MovementAction_PauseSpriteAnim, }; -u8 (*const gMovementActionFuncs_WalkInPlaceFastestRight[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_WalkInPlaceFastestRight_Step0, +u8 (*const gMovementActionFuncs_WalkInPlaceFasterRight[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_WalkInPlaceFasterRight_Step0, MovementAction_WalkInPlace_Step1, MovementAction_PauseSpriteAnim, }; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index a1fbb0b6e5d7..107ee47abe87 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -987,12 +987,12 @@ const u8 gWalkInPlaceFastMovementActions[] = { MOVEMENT_ACTION_WALK_IN_PLACE_FAST_LEFT, MOVEMENT_ACTION_WALK_IN_PLACE_FAST_RIGHT, }; -const u8 gWalkInPlaceFastestMovementActions[] = { - MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_DOWN, - MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_DOWN, - MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_UP, - MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_LEFT, - MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_RIGHT, +const u8 gWalkInPlaceFasterMovementActions[] = { + MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN, + MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN, + MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_UP, + MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_LEFT, + MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT, }; const u8 gAcroWheelieFaceDirectionMovementActions[] = { MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN, @@ -4407,7 +4407,7 @@ movement_type_def(MovementType_RunInPlace, gMovementTypeFuncs_RunInPlace) bool8 MovementType_RunInPlace_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { ClearObjectEventMovement(objectEvent, sprite); - ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceFastestMovementAction(objectEvent->facingDirection)); + ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkInPlaceFasterMovementAction(objectEvent->facingDirection)); sprite->sTypeFuncId = 1; return TRUE; } @@ -4926,7 +4926,7 @@ dirn_to_anim(GetJumpSpecialMovementAction, gJumpSpecialMovementActions); dirn_to_anim(GetWalkInPlaceSlowMovementAction, gWalkInPlaceSlowMovementActions); dirn_to_anim(GetWalkInPlaceNormalMovementAction, gWalkInPlaceNormalMovementActions); dirn_to_anim(GetWalkInPlaceFastMovementAction, gWalkInPlaceFastMovementActions); -dirn_to_anim(GetWalkInPlaceFastestMovementAction, gWalkInPlaceFastestMovementActions); +dirn_to_anim(GetWalkInPlaceFasterMovementAction, gWalkInPlaceFasterMovementActions); bool8 ObjectEventFaceOppositeDirection(struct ObjectEvent *objectEvent, u8 direction) { @@ -5753,25 +5753,25 @@ bool8 MovementAction_WalkInPlaceFastRight_Step0(struct ObjectEvent *objectEvent, return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkInPlaceFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkInPlaceFasterDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFasterAnimNum(DIR_SOUTH), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkInPlaceFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkInPlaceFasterUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFasterAnimNum(DIR_NORTH), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkInPlaceFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkInPlaceFasterLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionFasterAnimNum(DIR_WEST), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); } -bool8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +bool8 MovementAction_WalkInPlaceFasterRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionFasterAnimNum(DIR_EAST), 4); return MovementAction_WalkInPlace_Step1(objectEvent, sprite); diff --git a/src/field_effect.c b/src/field_effect.c index 7e1ebdff4d5b..574bec879d07 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -2163,7 +2163,7 @@ static bool8 LavaridgeGym1FWarpEffect_AshPuff(struct Task *task, struct ObjectEv } else { task->data[1]++; - ObjectEventSetHeldMovement(objectEvent, GetWalkInPlaceFastestMovementAction(objectEvent->facingDirection)); + ObjectEventSetHeldMovement(objectEvent, GetWalkInPlaceFasterMovementAction(objectEvent->facingDirection)); PlaySE(SE_LAVARIDGE_FALL_WARP); } } diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 00ac41e52597..6e0e3cb678a2 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -903,7 +903,7 @@ static bool8 PlayerAnimIsMultiFrameStationary(void) if (movementActionId <= MOVEMENT_ACTION_FACE_RIGHT || (movementActionId >= MOVEMENT_ACTION_DELAY_1 && movementActionId <= MOVEMENT_ACTION_DELAY_16) - || (movementActionId >= MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_DOWN && movementActionId <= MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_RIGHT) + || (movementActionId >= MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_DOWN && movementActionId <= MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT) || (movementActionId >= MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN && movementActionId <= MOVEMENT_ACTION_ACRO_END_WHEELIE_FACE_RIGHT) || (movementActionId >= MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_DOWN && movementActionId <= MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_RIGHT)) return TRUE; From 32aaf6912feb59f48782f7e0f176de7c5391ae7b Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Fri, 5 Nov 2021 02:22:28 +0800 Subject: [PATCH 383/762] Rename movement scripts to use Faster over Fastest --- asm/macros/movement.inc | 16 +- data/event_scripts.s | 2 +- data/maps/AquaHideout_B2F/scripts.inc | 4 +- .../scripts.inc | 16 +- .../scripts.inc | 4 +- .../scripts.inc | 4 +- .../scripts.inc | 8 +- .../scripts.inc | 4 +- .../scripts.inc | 12 +- .../scripts.inc | 12 +- .../scripts.inc | 6 +- .../scripts.inc | 4 +- .../scripts.inc | 8 +- .../scripts.inc | 6 +- .../BattleFrontier_OutsideWest/scripts.inc | 28 +- .../BattleFrontier_ReceptionGate/scripts.inc | 12 +- .../BattleFrontier_ScottsHouse/scripts.inc | 8 +- data/maps/BirthIsland_Harbor/scripts.inc | 2 +- data/maps/CaveOfOrigin_B1F/scripts.inc | 2 +- data/maps/DewfordTown/scripts.inc | 596 +++++++++--------- data/maps/DewfordTown_Hall/scripts.inc | 12 +- .../EverGrandeCity_ChampionsRoom/scripts.inc | 26 +- .../EverGrandeCity_HallOfFame/scripts.inc | 12 +- .../scripts.inc | 8 +- .../scripts.inc | 12 +- data/maps/FarawayIsland_Entrance/scripts.inc | 2 +- data/maps/FarawayIsland_Interior/scripts.inc | 2 +- data/maps/FortreeCity_House4/scripts.inc | 2 +- data/maps/GraniteCave_StevensRoom/scripts.inc | 2 +- data/maps/LavaridgeTown/scripts.inc | 8 +- data/maps/LilycoveCity/scripts.inc | 2 +- .../LilycoveCity_ContestLobby/scripts.inc | 22 +- .../LilycoveCity_CoveLilyMotel_1F/scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/LilycoveCity_Harbor/scripts.inc | 30 +- .../scripts.inc | 2 +- .../scripts.inc | 12 +- data/maps/LittlerootTown/scripts.inc | 54 +- .../scripts.inc | 38 +- .../scripts.inc | 36 +- .../LittlerootTown_MaysHouse_1F/scripts.inc | 38 +- .../LittlerootTown_MaysHouse_2F/scripts.inc | 40 +- .../scripts.inc | 26 +- data/maps/MagmaHideout_4F/scripts.inc | 4 +- data/maps/MauvilleCity/scripts.inc | 30 +- data/maps/MeteorFalls_1F_1R/scripts.inc | 30 +- data/maps/MossdeepCity/scripts.inc | 2 +- .../MossdeepCity_SpaceCenter_1F/scripts.inc | 8 +- .../MossdeepCity_SpaceCenter_2F/scripts.inc | 16 +- .../MossdeepCity_StevensHouse/scripts.inc | 6 +- data/maps/MtChimney/scripts.inc | 10 +- .../MtChimney_CableCarStation/scripts.inc | 2 +- data/maps/MtPyre_Summit/scripts.inc | 52 +- data/maps/NavelRock_Harbor/scripts.inc | 2 +- data/maps/NewMauville_Entrance/scripts.inc | 2 +- data/maps/OldaleTown/scripts.inc | 18 +- data/maps/PetalburgCity/scripts.inc | 54 +- data/maps/PetalburgCity_Gym/scripts.inc | 90 +-- data/maps/PetalburgWoods/scripts.inc | 20 +- data/maps/Route101/scripts.inc | 6 +- data/maps/Route103/scripts.inc | 6 +- data/maps/Route104/scripts.inc | 572 ++++++++--------- data/maps/Route109/scripts.inc | 312 ++++----- data/maps/Route110/scripts.inc | 14 +- data/maps/Route110_TrickHouseEnd/scripts.inc | 10 +- .../Route110_TrickHouseEntrance/scripts.inc | 4 +- data/maps/Route111/scripts.inc | 10 +- data/maps/Route112/scripts.inc | 8 +- .../maps/Route112_CableCarStation/scripts.inc | 2 +- .../Route114_FossilManiacsTunnel/scripts.inc | 4 +- data/maps/Route116/scripts.inc | 4 +- data/maps/Route118/scripts.inc | 2 +- data/maps/Route119/scripts.inc | 10 +- .../Route119_WeatherInstitute_2F/scripts.inc | 4 +- data/maps/Route120/scripts.inc | 12 +- .../Route121_SafariZoneEntrance/scripts.inc | 2 +- data/maps/Route128/scripts.inc | 26 +- data/maps/RustboroCity/scripts.inc | 84 +-- .../RustboroCity_DevonCorp_3F/scripts.inc | 8 +- .../RustboroCity_PokemonSchool/scripts.inc | 12 +- data/maps/RusturfTunnel/scripts.inc | 36 +- data/maps/SSTidalCorridor/scripts.inc | 12 +- data/maps/SafariZone_South/scripts.inc | 8 +- data/maps/SeafloorCavern_Entrance/scripts.inc | 10 +- data/maps/SeafloorCavern_Room9/scripts.inc | 18 +- data/maps/SkyPillar_Outside/scripts.inc | 8 +- data/maps/SkyPillar_Top/scripts.inc | 2 +- data/maps/SlateportCity/scripts.inc | 38 +- .../scripts.inc | 4 +- .../scripts.inc | 4 +- data/maps/SlateportCity_Harbor/scripts.inc | 16 +- .../scripts.inc | 8 +- .../scripts.inc | 18 +- data/maps/SootopolisCity/scripts.inc | 34 +- .../scripts.inc | 8 +- data/maps/SouthernIsland_Exterior/scripts.inc | 4 +- data/maps/SouthernIsland_Interior/scripts.inc | 2 +- .../scripts.inc | 8 +- data/maps/VictoryRoad_1F/scripts.inc | 2 +- data/scripts/berry_blender.inc | 2 +- data/scripts/cable_club.inc | 2 +- data/scripts/contest_hall.inc | 40 +- data/scripts/gabby_and_ty.inc | 4 +- data/scripts/movement.inc | 16 +- data/scripts/pkmn_center_nurse.inc | 4 +- data/scripts/players_house.inc | 68 +- 108 files changed, 1491 insertions(+), 1491 deletions(-) diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc index e26a00d76c2d..0220c11a96a5 100644 --- a/asm/macros/movement.inc +++ b/asm/macros/movement.inc @@ -43,18 +43,18 @@ create_movement_action walk_in_place_fast_up create_movement_action walk_in_place_fast_left create_movement_action walk_in_place_fast_right - create_movement_action walk_in_place_fastest_down - create_movement_action walk_in_place_fastest_up - create_movement_action walk_in_place_fastest_left - create_movement_action walk_in_place_fastest_right + create_movement_action walk_in_place_faster_down + create_movement_action walk_in_place_faster_up + create_movement_action walk_in_place_faster_left + create_movement_action walk_in_place_faster_right create_movement_action ride_water_current_down create_movement_action ride_water_current_up create_movement_action ride_water_current_left create_movement_action ride_water_current_right - create_movement_action walk_fastest_down - create_movement_action walk_fastest_up - create_movement_action walk_fastest_left - create_movement_action walk_fastest_right + create_movement_action walk_faster_down + create_movement_action walk_faster_up + create_movement_action walk_faster_left + create_movement_action walk_faster_right create_movement_action slide_down create_movement_action slide_up create_movement_action slide_left diff --git a/data/event_scripts.s b/data/event_scripts.s index bbf25c93cfa0..720875735b81 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -786,7 +786,7 @@ RusturfTunnel_EventScript_SetRusturfTunnelOpen:: EventScript_UnusedBoardFerry:: delay 30 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 showobjectat OBJ_EVENT_ID_PLAYER, 0 delay 30 diff --git a/data/maps/AquaHideout_B2F/scripts.inc b/data/maps/AquaHideout_B2F/scripts.inc index 95059fb6d3aa..7dc34676b3bf 100644 --- a/data/maps/AquaHideout_B2F/scripts.inc +++ b/data/maps/AquaHideout_B2F/scripts.inc @@ -34,14 +34,14 @@ AquaHideout_B2F_EventScript_Matt:: AquaHideout_B2F_EventScript_SubmarineEscape:: setvar VAR_0x8008, LOCALID_MATT setvar VAR_0x8009, LOCALID_SUBMARINE - applymovement VAR_0x8008, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8008, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 20 applymovement VAR_0x8008, Common_Movement_FacePlayer waitmovement 0 msgbox AquaHideout_B2F_Text_OurBossGotThroughHisPreparations, MSGBOX_DEFAULT closemessage - applymovement VAR_0x8008, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8008, Common_Movement_WalkInPlaceFasterLeft applymovement VAR_0x8009, AquaHideout_B2F_Movement_SumbarineDepartLeft waitmovement 0 removeobject VAR_0x8009 diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index 4f7d3bd87368..adea508ae6c9 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -426,15 +426,15 @@ BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward: BattleFrontier_BattleArenaBattleRoom_Movement_PlayerWalkBackToLine: walk_left walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft: - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight: - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter: @@ -475,12 +475,12 @@ BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp: step_end BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown: - walk_in_place_fastest_down + walk_in_place_faster_down step_end @ Unused, redundant BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight2: - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleArenaBattleRoom_OnWarp: @@ -497,19 +497,19 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects:: BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 delay_16 delay_16 walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattleArenaBattleRoom_Text_PlayerStepForward: diff --git a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc index fe808159e249..1752b934211b 100644 --- a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc @@ -78,12 +78,12 @@ BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor: step_end BattleFrontier_BattleArenaCorridor_Movement_AttendantFacePlayer: - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattleArenaCorridor_Movement_AttendantMoveOutOfWay: walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end BattleFrontier_BattleArenaCorridor_Text_PleaseStepIn: diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index 287fd4639a2a..12b600f69b87 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -247,7 +247,7 @@ BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor: @@ -289,7 +289,7 @@ BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattleArenaLobby_EventScript_ShowResults:: diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index b092d560349e..76088f54d198 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -758,7 +758,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance: delay_16 walk_left walk_left - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 delay_16 @@ -800,7 +800,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance: delay_16 walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end BattleFrontier_BattleDomeBattleRoom_Movement_TuckerStepForward: @@ -936,7 +936,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat: walk_down walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter: @@ -947,7 +947,7 @@ BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter: step_end BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerFaceLeft: - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit: diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc index 2c35779c7e2a..32f3c82ba356 100644 --- a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc @@ -56,7 +56,7 @@ BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLv50: @@ -100,7 +100,7 @@ BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLvOpen: diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc index 367756054f4c..24f5ebe103ac 100644 --- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc @@ -257,12 +257,12 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles:: end BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle:: - applymovement LOCALID_SCIENTIST_1, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_SCIENTIST_2, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_SCIENTIST_3, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_SCIENTIST_4, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_SCIENTIST_5, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_SCIENTIST_6, Common_Movement_WalkInPlaceFastestLeft + 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 waitmovement 0 return diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index a838c7eadd94..13015dd3e100 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -252,8 +252,8 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: frontier_givesymbol applymovement LOCALID_OPPONENT, Common_Movement_WalkInPlaceLeft waitmovement 0 - applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserAwaitNextTime, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon @@ -287,8 +287,8 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold:: frontier_givesymbol applymovement LOCALID_OPPONENT, Common_Movement_WalkInPlaceLeft waitmovement 0 - applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserComeSeeMeAgain, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon @@ -435,7 +435,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter: walk_down walk_right walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter: @@ -447,7 +447,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter: walk_fast_down walk_fast_down walk_fast_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 step_end diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc index 1f031ea40f02..0c1db1eea84a 100644 --- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc @@ -204,12 +204,12 @@ BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle:: BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside: walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath: walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop: @@ -218,7 +218,7 @@ BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer: diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc index b7354d9a2046..9bfcfddc2ff7 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc @@ -408,7 +408,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant: step_end BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle: - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter: @@ -449,7 +449,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer: BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos: walk_left walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft: diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc index 9c6a8bb2bf2c..70922d473cae 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc @@ -76,8 +76,8 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor:: applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor waitmovement 0 delay 40 - applymovement LOCALID_ATTENDANT_2, Common_Movement_WalkInPlaceFastestUp - applymovement LOCALID_ATTENDANT_1, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_ATTENDANT_2, Common_Movement_WalkInPlaceFasterUp + applymovement LOCALID_ATTENDANT_1, Common_Movement_WalkInPlaceFasterUp waitmovement 0 opendoor 7, 1 waitdooranim @@ -149,7 +149,7 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor: walk_right walk_right walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor: @@ -160,7 +160,7 @@ BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor: walk_left walk_left walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor: diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc index 4a6d29446e44..06038b43cd9b 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc @@ -64,7 +64,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom:: applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit waitmovement 0 copyobjectxytoperm LOCALID_ATTENDANT - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner, MSGBOX_DEFAULT special HealPlayerParty @@ -78,7 +78,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom: BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: @@ -101,7 +101,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge:: BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator:: msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_ThankYouForChoosingPartner, MSGBOX_DEFAULT closemessage - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 opendoor 10, 1 waitdooranim diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index 19f05625853b..d359ee89ad9f 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -72,7 +72,7 @@ BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination:: BattleFrontier_OutsideWest_EventScript_BoardFerry:: closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 hideobjectat LOCALID_FERRY_ATTENDANT, MAP_BATTLE_FRONTIER_OUTSIDE_WEST @@ -137,16 +137,16 @@ BattleFrontier_OutsideWest_EventScript_Maniac2:: end BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk:: - applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox BattleFrontier_OutsideWest_Text_SureWeCanChallengeWithNoMons, MSGBOX_DEFAULT - applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox BattleFrontier_OutsideWest_Text_BigGuySaidIllLendYouMons, MSGBOX_DEFAULT closemessage delay 25 - applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFastestUp - applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFasterUp + applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFasterUp waitmovement 0 release end @@ -168,7 +168,7 @@ BattleFrontier_OutsideWest_EventScript_Camper:: end BattleFrontier_OutsideWest_EventScript_CamperFaceFactory:: - applymovement LOCALID_CAMPER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_CAMPER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return @@ -213,23 +213,23 @@ BattleFrontier_OutsideWest_EventScript_GirlShudderEast:: return BattleFrontier_OutsideWest_Movement_GirlShudderNorth: - walk_in_place_fastest_down - walk_in_place_fastest_down + walk_in_place_faster_down + walk_in_place_faster_down step_end BattleFrontier_OutsideWest_Movement_GirlShudderSouth: - walk_in_place_fastest_up - walk_in_place_fastest_up + walk_in_place_faster_up + walk_in_place_faster_up step_end BattleFrontier_OutsideWest_Movement_GirlShudderWest: - walk_in_place_fastest_right - walk_in_place_fastest_right + walk_in_place_faster_right + walk_in_place_faster_right step_end BattleFrontier_OutsideWest_Movement_GirlShudderEast: - walk_in_place_fastest_left - walk_in_place_fastest_left + walk_in_place_faster_left + walk_in_place_faster_left step_end BattleFrontier_OutsideWest_EventScript_Woman2:: diff --git a/data/maps/BattleFrontier_ReceptionGate/scripts.inc b/data/maps/BattleFrontier_ReceptionGate/scripts.inc index 410eb747d72c..151bc665b5cf 100644 --- a/data/maps/BattleFrontier_ReceptionGate/scripts.inc +++ b/data/maps/BattleFrontier_ReceptionGate/scripts.inc @@ -42,9 +42,9 @@ BattleFrontier_ReceptionGate_EventScript_ScottScene:: msgbox BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier, MSGBOX_DEFAULT msgbox BattleFrontier_ReceptionGate_Text_IfItIsntPlayerYouCame, MSGBOX_DEFAULT closemessage - applymovement LOCALID_GREETER, Common_Movement_WalkInPlaceFastestUp - applymovement LOCALID_GUIDE, Common_Movement_WalkInPlaceFastestUp - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_GREETER, Common_Movement_WalkInPlaceFasterUp + applymovement LOCALID_GUIDE, Common_Movement_WalkInPlaceFasterUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_GREETER, Common_Movement_ExclamationMark @@ -78,7 +78,7 @@ BattleFrontier_ReceptionGate_Movement_PlayerFaceScott: delay_16 delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end @ Unused @@ -112,7 +112,7 @@ BattleFrontier_ReceptionGate_Movement_GreeterFaceScott: delay_16 delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott: @@ -120,7 +120,7 @@ BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott: delay_16 delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end BattleFrontier_ReceptionGate_EventScript_Greeter:: diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc index 5c793517eeac..edb4bdf411c8 100644 --- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc +++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc @@ -209,22 +209,22 @@ BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints:: end BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth:: - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth:: - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast:: - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest:: - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc index 7ec88ae18804..06c5b08e9dcc 100644 --- a/data/maps/BirthIsland_Harbor/scripts.inc +++ b/data/maps/BirthIsland_Harbor/scripts.inc @@ -12,7 +12,7 @@ BirthIsland_Harbor_EventScript_Sailor:: goto_if_eq BirthIsland_Harbor_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 hideobjectat LOCALID_SAILOR, MAP_BIRTH_ISLAND_HARBOR diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc index 511364cfa583..11ca66aab07a 100644 --- a/data/maps/CaveOfOrigin_B1F/scripts.inc +++ b/data/maps/CaveOfOrigin_B1F/scripts.inc @@ -8,7 +8,7 @@ CaveOfOrigin_B1F_EventScript_Wallace:: faceplayer msgbox CaveOfOrigin_B1F_Text_WallaceStory, MSGBOX_DEFAULT closemessage - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 60 playse SE_PIN diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index 52b9be26423c..281648aeb65f 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -230,46 +230,46 @@ DewfordTown_Movement_SailToPetalburg: walk_fast_left walk_fast_left walk_fast_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left walk_fast_left walk_fast_left walk_fast_left @@ -278,119 +278,119 @@ DewfordTown_Movement_SailToPetalburg: walk_fast_up walk_fast_up walk_fast_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up walk_fast_up walk_fast_up walk_fast_up walk_fast_up walk_fast_left walk_fast_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left walk_fast_left walk_fast_left walk_fast_up walk_fast_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up walk_fast_up walk_fast_up walk_fast_up @@ -405,164 +405,164 @@ DewfordTown_Movement_SailToSlateport: walk_right walk_fast_right walk_fast_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_up walk_fast_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up walk_fast_up walk_fast_up walk_fast_up @@ -590,7 +590,7 @@ DewfordTown_Movement_ExitBoatSlateport: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end DewfordTown_Movement_BrineyBoardBoat: diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc index db9d13518b56..9d8392ff162a 100644 --- a/data/maps/DewfordTown_Hall/scripts.inc +++ b/data/maps/DewfordTown_Hall/scripts.inc @@ -58,7 +58,7 @@ DewfordTown_Hall_EventScript_ExpertM:: call Common_EventScript_BufferTrendyPhrase msgbox DewfordTown_Hall_Text_TVShowAboutTrend, MSGBOX_DEFAULT closemessage - applymovement LOCALID_EXPERT_M, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_EXPERT_M, Common_Movement_WalkInPlaceFasterUp waitmovement 0 release end @@ -69,7 +69,7 @@ DewfordTown_Hall_EventScript_Twin:: call Common_EventScript_BufferTrendyPhrase msgbox DewfordTown_Hall_Text_IsTrendMorePopularAcrossSea, MSGBOX_DEFAULT closemessage - applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFasterUp waitmovement 0 release end @@ -205,7 +205,7 @@ DewfordTown_Hall_EventScript_DebateReact1:: DewfordTown_Hall_EventScript_PlayerReactWest:: compare VAR_FACING, DIR_EAST goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -229,19 +229,19 @@ DewfordTown_Hall_EventScript_PlayerReactNorthSouth:: return DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return DewfordTown_Hall_EventScript_PlayerReactEast:: compare VAR_FACING, DIR_WEST goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index dc2bb4d72223..6b9281ae6da1 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -109,26 +109,26 @@ EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: addobject LOCALID_BIRCH applymovement LOCALID_BIRCH, EverGrandeCity_ChampionsRoom_Movement_BirchArrives waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestUp + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 20 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_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_WalkInPlaceFastestUp + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterUp applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalFollows waitmovement 0 delay 20 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox EverGrandeCity_ChampionsRoom_Text_WallaceWaitOutside, MSGBOX_DEFAULT checkplayergender @@ -157,7 +157,7 @@ EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations:: EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer:: applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -187,17 +187,17 @@ EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer: walk_up walk_left walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth: - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 step_end @@ -209,7 +209,7 @@ EverGrandeCity_ChampionsRoom_Movement_RivalFollows: EverGrandeCity_ChampionsRoom_Movement_WallaceExitStart: walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end EverGrandeCity_ChampionsRoom_Movement_WallaceExit: @@ -226,7 +226,7 @@ EverGrandeCity_ChampionsRoom_Movement_BirchArrives: walk_up walk_right walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end EverGrandeCity_ChampionsRoom_Text_IntroSpeech: diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc index f5e4155652ba..b494408f1361 100644 --- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc +++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc @@ -22,8 +22,8 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: applymovement LOCALID_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1 applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1 waitmovement 0 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox EverGrandeCity_HallOfFame_Text_HereWeHonorLeagueChampions, MSGBOX_DEFAULT closemessage @@ -31,13 +31,13 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2 waitmovement 0 delay 20 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox EverGrandeCity_HallOfFame_Text_LetsRecordYouAndYourPartnersNames, MSGBOX_DEFAULT closemessage - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestUp - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 20 dofieldeffect FLDEFF_HALL_OF_FAME_RECORD diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc index 1be2e7c1f345..ac7d4f9b453e 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc @@ -108,23 +108,23 @@ EverGrandeCity_PokemonLeague_1F_EventScript_GoForth:: EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight: walk_down walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft: walk_down walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end EverGrandeCity_PokemonLeague_1F_Movement_LeftGuardOutOfWay: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end EverGrandeCity_PokemonLeague_1F_Movement_RightGuardOutOfWay: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end EverGrandeCity_PokemonLeague_1F_Text_MustHaveAllGymBadges: diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index 947bbb8bba16..3f51ba3935f3 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -185,15 +185,15 @@ FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: - walk_in_place_fastest_right + walk_in_place_faster_right step_end FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: - walk_in_place_fastest_left + walk_in_place_faster_left step_end FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @@ -201,7 +201,7 @@ FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end @ Unused @@ -225,14 +225,14 @@ FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: walk_down walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end FallarborTown_BattleTentBattleRoom_OnWarp: diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc index c4b4c9ab08e0..15deb95e6f69 100644 --- a/data/maps/FarawayIsland_Entrance/scripts.inc +++ b/data/maps/FarawayIsland_Entrance/scripts.inc @@ -27,7 +27,7 @@ FarawayIsland_Entrance_EventScript_Sailor:: goto_if_eq FarawayIsland_Entrance_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 hideobjectat LOCALID_SAILOR, MAP_FARAWAY_ISLAND_ENTRANCE diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index bd2b479f70cd..adb55d72ee66 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -73,7 +73,7 @@ FarawayIsland_Interior_Movement_MewMoveAndHide: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down set_invisible step_end diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc index 8a6d71eb4d3d..db17e3474004 100644 --- a/data/maps/FortreeCity_House4/scripts.inc +++ b/data/maps/FortreeCity_House4/scripts.inc @@ -51,7 +51,7 @@ FortreeCity_House4_Movement_WingullExit: walk_fast_down walk_fast_down walk_fast_right - walk_in_place_fastest_down + walk_in_place_faster_down delay_8 step_end diff --git a/data/maps/GraniteCave_StevensRoom/scripts.inc b/data/maps/GraniteCave_StevensRoom/scripts.inc index 73c50b70a51a..b57eb0de6d32 100644 --- a/data/maps/GraniteCave_StevensRoom/scripts.inc +++ b/data/maps/GraniteCave_StevensRoom/scripts.inc @@ -72,7 +72,7 @@ GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit: delay_16 delay_16 delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end GraniteCave_StevensRoom_Movement_StevenExitSouth: diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc index baa9027a94b5..2b7f8f331fd8 100644 --- a/data/maps/LavaridgeTown/scripts.inc +++ b/data/maps/LavaridgeTown/scripts.inc @@ -113,7 +113,7 @@ LavaridgeTown_EventScript_PlayBrendanMusic:: return LavaridgeTown_EventScript_RivalNoticePlayer:: - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -130,14 +130,14 @@ LavaridgeTown_EventScript_RivalExitHerbShop:: waitmovement 0 closedoor 12, 15 waitdooranim - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -178,7 +178,7 @@ LavaridgeTown_Movement_RivalExit2: LavaridgeTown_Movement_PlayerWatchRivalExit: delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LavaridgeTown_Movement_RivalExit1: diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index 048cabacbce3..eb3f140a86dc 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -390,7 +390,7 @@ LilycoveCity_EventScript_BrendanBattleFrontier:: LilycoveCity_EventScript_RivalFlyAway:: closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 50 setfieldeffectargument 0, 1 diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 48a8e6b92697..7bfa1419ad61 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -188,7 +188,7 @@ LilycoveCity_ContestLobby_Movement_ArtistExit: step_end LilycoveCity_ContestLobby_Movement_PlayerFaceArtist: - walk_in_place_fastest_left + walk_in_place_faster_left step_end LilycoveCity_ContestLobby_Movement_ArtistBeginToExit: @@ -205,7 +205,7 @@ LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer: walk_fast_up walk_fast_up walk_fast_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end LilycoveCity_ContestLobby_EventScript_TryDoLinkContestArtist:: @@ -303,7 +303,7 @@ LilycoveCity_ContestLobby_Movement_LinkArtistExit: step_end LilycoveCity_ContestLobby_Movement_PlayerFaceLinkArtist: - walk_in_place_fastest_right + walk_in_place_faster_right step_end LilycoveCity_ContestLobby_Movement_LinkArtistBeginExit: @@ -320,7 +320,7 @@ LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer: walk_fast_up walk_fast_up walk_fast_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end @ EventScript_SpeakToContestReceptionist either ends or returns after a contest entry is submitted @@ -453,20 +453,20 @@ LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall: step_end LilycoveCity_ContestLobby_Movement_PlayerApproachReceptionist: - walk_in_place_fastest_left + walk_in_place_faster_left walk_left step_end LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter: walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter: walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall: @@ -481,7 +481,7 @@ LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall: step_end LilycoveCity_ContestLobby_Movement_ReceptionistFacePlayer: - walk_in_place_fastest_right + walk_in_place_faster_right step_end LilycoveCity_ContestLobby_EventScript_BlackBelt:: @@ -984,13 +984,13 @@ LilycoveCity_ContestLobby_Movement_PlayerApproachLinkReceptionist: LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter: walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter: walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall: @@ -1006,7 +1006,7 @@ LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall: step_end LilycoveCity_ContestLobby_Movement_LinkReceptionistFacePlayer: - walk_in_place_fastest_left + walk_in_place_faster_left step_end LilycoveCity_ContestLobby_EventScript_LittleGirl:: diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc index 8ce2a97df2ff..796645f47fcd 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc +++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc @@ -46,7 +46,7 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_BlockingTV:: waitmovement 0 applymovement LOCALID_OWNER, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox LilycoveCity_CoveLilyMotel_1F_Text_CantSeeTheTV, MSGBOX_DEFAULT closemessage diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc index a7b062096f68..b6ad2e4e6f5e 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc @@ -115,7 +115,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect:: LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator:: special CloseDeptStoreElevatorWindow closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 waitse special MoveElevator diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc index e1167ad7ea9f..ab4616cb5057 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc @@ -24,7 +24,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: copyvar VAR_0x8008, VAR_RESULT special BufferLottoTicketNumber msgbox LilycoveCity_DepartmentStore_1F_Text_TicketNumberIsXPleaseWait, MSGBOX_DEFAULT - applymovement LOCALID_LOTTERY_CLERK, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_LOTTERY_CLERK, Common_Movement_WalkInPlaceFasterRight waitmovement 0 playse SE_PC_ON special DoLotteryCornerComputerEffect diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc index 185d49551ce4..d1d074c8ce71 100644 --- a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc @@ -145,7 +145,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_WalkInPlaceFastestUp + applymovement LOCALID_WOMAN, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index 0e15c204866b..216a6ff03366 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -252,7 +252,7 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: call LilycoveCity_Harbor_EventScript_GetEventTicketSailor msgbox EventTicket_Text_OldSeaMapTooFar, MSGBOX_DEFAULT closemessage - applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_FERRY_SAILOR, Common_Movement_ExclamationMark @@ -334,12 +334,12 @@ LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime:: LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect:: msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT closemessage - applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 30 removeobject LOCALID_FERRY_SAILOR delay 30 - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterDown waitmovement 0 showobjectat LOCALID_ATTENDANT, MAP_LILYCOVE_CITY_HARBOR delay 30 @@ -348,7 +348,7 @@ LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect:: end LilycoveCity_Harbor_EventScript_GetEventTicketSailor:: - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 30 hideobjectat VAR_LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR @@ -360,7 +360,7 @@ LilycoveCity_Harbor_EventScript_GetEventTicketSailor:: return LilycoveCity_Harbor_EventScript_BoardFerryWithSailor:: - applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 30 removeobject LOCALID_FERRY_SAILOR @@ -424,7 +424,7 @@ LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind:: LilycoveCity_Harbor_EventScript_BoardFerry:: msgbox LilycoveCity_Harbor_Text_PleaseBoard, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 30 hideobjectat VAR_LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR @@ -455,7 +455,7 @@ LilycoveCity_Harbor_EventScript_ExitSailSelect:: LilycoveCity_Harbor_Movement_PlayerBoardFerryEast: walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth: @@ -490,7 +490,7 @@ LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast:: return LilycoveCity_Harbor_Movement_SailorOutOfWayNorth: - walk_in_place_fastest_right + walk_in_place_faster_right lock_facing_direction walk_left unlock_facing_direction @@ -503,22 +503,22 @@ LilycoveCity_Harbor_Movement_SailorOutOfWayEast: step_end LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth:: - applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast:: - applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth:: - applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast:: - applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -537,7 +537,7 @@ LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast:: return LilycoveCity_Harbor_Movement_BrineyBoardFerry: - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 set_invisible step_end @@ -554,7 +554,7 @@ LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth: delay_16 delay_16 walk_right - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 set_invisible step_end @@ -562,7 +562,7 @@ LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth: LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast: delay_16 walk_right - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 set_invisible step_end diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index 27b59502cd20..929bba3e17ce 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -83,7 +83,7 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall:: end LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft: - walk_in_place_fastest_left + walk_in_place_faster_left step_end LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall: diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc index 211073c581be..63e70848805a 100644 --- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc +++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc @@ -20,18 +20,18 @@ LilycoveCity_PokemonTrainerFanClub_OnFrame: LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans:: lockall - applymovement LOCALID_LASS, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_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 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox LilycoveCity_PokemonTrainerFanClub_Text_HeardAboutYouImYourFan, MSGBOX_DEFAULT applymovement LOCALID_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement LOCALID_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer waitmovement 0 @@ -41,7 +41,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans:: LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer: delay_8 - walk_in_place_fastest_down + walk_in_place_faster_down walk_down walk_down walk_down @@ -60,7 +60,7 @@ LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer: LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer: walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: @@ -68,7 +68,7 @@ LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: walk_fast_up walk_fast_up walk_fast_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end LilycoveCity_PokemonTrainerFanClub_OnTransition: diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc index 2d74a261831b..1936b5ad8303 100644 --- a/data/maps/LittlerootTown/scripts.inc +++ b/data/maps/LittlerootTown/scripts.inc @@ -185,7 +185,7 @@ LittlerootTown_Movement_MomExitHouse: LittlerootTown_Movement_MomApproachPlayerAtTruck: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_Movement_MomApproachDoor: @@ -203,7 +203,7 @@ LittlerootTown_Movement_PlayerApproachDoor: delay_16 delay_8 walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_PlayerEnterHouse: @@ -347,7 +347,7 @@ LittlerootTown_Movement_TwinReturnLeft: walk_left walk_left walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end LittlerootTown_Movement_PushPlayerBackFromRoute: @@ -387,14 +387,14 @@ LittlerootTown_Movement_TwinReturnRight: walk_left walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end LittlerootTown_EventScript_GoSaveBirchTrigger:: lockall - applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFasterRight waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 special GetPlayerBigGuyGirlString msgbox LittlerootTown_Text_CanYouGoSeeWhatsHappening, MSGBOX_DEFAULT @@ -525,12 +525,12 @@ LittlerootTown_EventScript_SetHomeDoorCoordsFemale:: return LittlerootTown_EventScript_MomNoticePlayerMale:: - applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return LittlerootTown_EventScript_MomNoticePlayerFemale:: - applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -565,70 +565,70 @@ LittlerootTown_EventScript_MomApproachPlayerFemale:: return LittlerootTown_EventScript_MomApproachPlayer0:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer0 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayer1:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer1 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerMale2:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale2 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerMale3:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale3 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerMale4:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale4 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerMale5:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale5 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerFemale2:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale2 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerFemale3:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale3 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerFemale4:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale4 waitmovement 0 return LittlerootTown_EventScript_MomApproachPlayerFemale5:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale5 waitmovement 0 @@ -861,7 +861,7 @@ LittlerootTown_Movement_MomReturnHomeMale2: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeMale3: @@ -870,33 +870,33 @@ LittlerootTown_Movement_MomReturnHomeMale3: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeMale4: walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeMale5: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeFemale2: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeFemale3: walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeFemale4: @@ -905,7 +905,7 @@ LittlerootTown_Movement_MomReturnHomeFemale4: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomReturnHomeFemale5: @@ -913,7 +913,7 @@ LittlerootTown_Movement_MomReturnHomeFemale5: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_Movement_MomExitThroughDoor: @@ -929,7 +929,7 @@ LittlerootTown_EventScript_Mom:: compare VAR_RESULT, FEMALE call_if_eq LittlerootTown_EventScript_SetHomeDoorCoordsFemale call LittlerootTown_EventScript_GiveRunningShoes - applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterUp waitmovement 0 opendoor VAR_0x8009, VAR_0x800A waitdooranim diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index 9d19519c8183..2e4ff739d133 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -100,7 +100,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_YoureNewNeighbor:: waitmovement 0 applymovement LOCALID_RIVAL_MOM, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft applymovement LOCALID_RIVAL_MOM, LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach waitmovement 0 special GetRivalSonDaughterString @@ -123,7 +123,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_GoSeeRoom:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, MALE - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 goto PlayersHouse_1F_EventScript_MomGoSeeRoom end @@ -187,7 +187,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: end LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -207,9 +207,9 @@ LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2:: return LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0: - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up walk_up @@ -223,9 +223,9 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1: step_end LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up walk_up @@ -253,48 +253,48 @@ LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2:: LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0: delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1: delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2: delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up step_end LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up step_end LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2: - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up step_end diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index 5d6af5cf00a0..b4db71e2901f 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -95,7 +95,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT closemessage @@ -107,7 +107,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth:: LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT closemessage @@ -119,7 +119,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth:: LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT closemessage @@ -131,7 +131,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest:: LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast:: applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT closemessage @@ -142,7 +142,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast:: LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters: walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth: @@ -161,17 +161,17 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth: @@ -186,22 +186,22 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest: walk_left walk_left walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest: @@ -212,16 +212,16 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest: delay_8 delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast: @@ -230,21 +230,21 @@ LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast: walk_left walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast: walk_up walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end @ Unused, the player is already facing this direction so its unneeded LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanEast: delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_BrendansHouse_2F_EventScript_PC:: diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index 80c8c919e343..5fcec19512b1 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -99,7 +99,7 @@ LittlerootTown_MaysHouse_1F_EventScript_YoureNewNeighbor:: waitmovement 0 applymovement LOCALID_RIVAL_MOM, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight applymovement LOCALID_RIVAL_MOM, LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach waitmovement 0 special GetRivalSonDaughterString @@ -157,7 +157,7 @@ LittlerootTown_MaysHouse_1F_EventScript_GoSeeRoom:: lockall setvar VAR_0x8004, LOCALID_MOM setvar VAR_0x8005, FEMALE - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterRight waitmovement 0 goto PlayersHouse_1F_EventScript_MomGoSeeRoom end @@ -221,7 +221,7 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: end LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -241,9 +241,9 @@ LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2:: return LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0: - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up walk_up @@ -257,9 +257,9 @@ LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1: step_end LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up walk_up @@ -287,48 +287,48 @@ LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2:: LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0: delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1: delay_16 delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2: delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up step_end LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1: - walk_in_place_fastest_right + walk_in_place_faster_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up step_end LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2: - walk_in_place_fastest_left + walk_in_place_faster_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up walk_up walk_up step_end diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc index 1483a845c34e..af6877a8875a 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc @@ -95,7 +95,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT closemessage @@ -107,7 +107,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth:: LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT closemessage @@ -119,7 +119,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth:: LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT closemessage @@ -130,7 +130,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest:: LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast:: applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT closemessage @@ -142,7 +142,7 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast:: LittlerootTown_MaysHouse_2F_Movement_MayEnters: walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth: @@ -157,22 +157,22 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right walk_right walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth: @@ -183,20 +183,20 @@ LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth: LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth: walk_up - walk_in_place_fastest_right + walk_in_place_faster_right walk_right walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest: @@ -205,28 +205,28 @@ LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest: walk_right walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest: walk_up walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end @ Unused, the player is already facing this direction so its unneeded LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayWest: delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast: walk_right walk_right walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast: @@ -237,15 +237,15 @@ LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end RivalsHouse_2F_EventScript_Rival:: diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index 2bff65b31339..0a828c426bae 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -191,8 +191,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: delay 10 playse SE_CLICK delay 20 - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 checkplayergender compare VAR_RESULT, MALE @@ -204,8 +204,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: delay 20 applymovement LOCALID_BIRCH, LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex waitmovement 0 - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestUp - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox LittlerootTown_ProfessorBirchsLab_Text_OkayAllDone, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_ITEM @@ -236,11 +236,11 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanUpgradeComment:: LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 walk_right - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 walk_right @@ -251,7 +251,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex: @@ -263,7 +263,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex: walk_up walk_up walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end LittlerootTown_ProfessorBirchsLab_EventScript_ChooseJohtoStarter:: @@ -310,7 +310,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_CYNDAQUIL, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeCyndaquil, MSGBOX_YESNO @@ -323,7 +323,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Totodile:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_TOTODILE, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeTotodile, MSGBOX_YESNO @@ -336,7 +336,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita:: release compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_CHIKORITA, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeChikorita, MSGBOX_YESNO @@ -553,7 +553,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: closemessage applymovement LOCALID_RIVAL, LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 checkplayergender compare VAR_RESULT, MALE @@ -611,7 +611,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanNoRoomForPokeBalls:: LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end LittlerootTown_ProfessorBirchsLab_EventScript_Machine:: diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc index a89054b7af6a..ef29d1180a68 100644 --- a/data/maps/MagmaHideout_4F/scripts.inc +++ b/data/maps/MagmaHideout_4F/scripts.inc @@ -23,7 +23,7 @@ MagmaHideout_4F_EventScript_Maxie:: playfanfare MUS_AWAKEN_LEGEND playse SE_ORB special DoOrbEffect - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 150 removeobject LOCALID_GROUDON_SLEEPING @@ -55,7 +55,7 @@ MagmaHideout_4F_EventScript_Maxie:: waitmovement 0 msgbox MagmaHideout_4F_Text_MaxieGroudonWhatsWrong, MSGBOX_DEFAULT closemessage - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 30 applymovement LOCALID_MAXIE, Common_Movement_FacePlayer diff --git a/data/maps/MauvilleCity/scripts.inc b/data/maps/MauvilleCity/scripts.inc index 748fbd3c7971..eb243ec59300 100644 --- a/data/maps/MauvilleCity/scripts.inc +++ b/data/maps/MauvilleCity/scripts.inc @@ -90,7 +90,7 @@ MauvilleCity_EventScript_UncleAskPlayerToBattleWally:: MauvilleCity_EventScript_Wally:: lockall goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_WallyRequestBattleAgain - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox MauvilleCity_Text_WallyWantToChallengeGym, MSGBOX_DEFAULT msgbox MauvilleCity_Text_UncleYourePushingIt, MSGBOX_DEFAULT @@ -122,7 +122,7 @@ MauvilleCity_EventScript_WallyAndUncleExitNorth:: applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitNorth1 applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth1 waitmovement 0 - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 30 applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerFaceUncleNorth @@ -142,7 +142,7 @@ MauvilleCity_EventScript_WallyAndUncleExitEast:: applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitEast1 applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast1 waitmovement 0 - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 30 applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleApproachPlayerEast @@ -168,7 +168,7 @@ MauvilleCity_EventScript_DefeatedWally:: call_if_eq MauvilleCity_EventScript_ScottApproachPlayerNorth compare VAR_FACING, DIR_EAST call_if_eq MauvilleCity_EventScript_ScottApproachPlayerEast - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox MauvilleCity_Text_ScottYouDidntHoldBack, MSGBOX_DEFAULT closemessage @@ -209,13 +209,13 @@ MauvilleCity_EventScript_ScottExitEast:: MauvilleCity_EventScript_BattleWally:: msgbox MauvilleCity_Text_WallyHereICome, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_WALLY_MAUVILLE, MauvilleCity_Text_WallyDefeat - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox MauvilleCity_Text_WallyIllGoBackToVerdanturf, MSGBOX_DEFAULT applymovement LOCALID_WALLY, Common_Movement_FacePlayer waitmovement 0 msgbox MauvilleCity_Text_ThankYouNotEnoughToBattle, MSGBOX_DEFAULT - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox MauvilleCity_Text_UncleNoNeedToBeDown, MSGBOX_DEFAULT return @@ -280,35 +280,35 @@ MauvilleCity_Movement_WallyExitEast2: MauvilleCity_Movement_PlayerWatchWallyExitNorth2: delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MauvilleCity_Movement_PlayerWatchWallyExitEast2: delay_16 delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MauvilleCity_Movement_PlayerWatchScottExitNorth: delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MauvilleCity_Movement_PlayerWatchScottExitEast: delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MauvilleCity_Movement_PlayerWatchWallyExitEast1: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MauvilleCity_Movement_PlayerWatchWallyExitNorth1: delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MauvilleCity_Movement_WallysUncleExitNorth1: @@ -331,13 +331,13 @@ MauvilleCity_Movement_PlayerFaceUncleNorth: delay_16 delay_8 delay_4 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MauvilleCity_Movement_WallysUncleApproachPlayerNorth: walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end MauvilleCity_Movement_WallysUncleApproachPlayerEast: @@ -379,7 +379,7 @@ MauvilleCity_Movement_ScottApproachPlayerNorth: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end MauvilleCity_Movement_ScottApproachPlayerEast: diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc index 4a40912697c8..23ae9728deb6 100644 --- a/data/maps/MeteorFalls_1F_1R/scripts.inc +++ b/data/maps/MeteorFalls_1F_1R/scripts.inc @@ -29,8 +29,8 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: waitmovement 0 msgbox MeteorFalls_1F_1R_Text_WithThisMeteorite, MSGBOX_DEFAULT closemessage - applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFastestUp - applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterUp + applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_ExclamationMark @@ -43,9 +43,9 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: waitmovement 0 msgbox MeteorFalls_1F_1R_Text_HoldItRightThereMagma, MSGBOX_DEFAULT closemessage - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 addobject LOCALID_ARCHIE addobject LOCALID_AQUA_GRUNT_1 @@ -55,8 +55,8 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: applymovement LOCALID_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive applymovement LOCALID_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive waitmovement 0 - applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox MeteorFalls_1F_1R_Text_BeSeeingYouTeamAqua, MSGBOX_DEFAULT closemessage @@ -74,10 +74,10 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: applymovement LOCALID_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie waitmovement 0 msgbox MeteorFalls_1F_1R_Text_BossWeShouldChaseMagma, MSGBOX_DEFAULT - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox MeteorFalls_1F_1R_Text_ArchieYesNoTellingWhatMagmaWillDo, MSGBOX_DEFAULT - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox MeteorFalls_1F_1R_Text_ArchieFarewell, MSGBOX_DEFAULT closemessage @@ -99,7 +99,7 @@ MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: MeteorFalls_1F_1R_Movement_MagmaGruntApproachPlayer: walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit: @@ -171,7 +171,7 @@ MeteorFalls_1F_1R_Movement_ArchieApproachPlayer: walk_right walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end MeteorFalls_1F_1R_Movement_AquaGrunt1Exit: @@ -190,7 +190,7 @@ MeteorFalls_1F_1R_Movement_AquaGrunt1ApproachArchie: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end MeteorFalls_1F_1R_Movement_AquaGrunt2Exit: @@ -210,13 +210,13 @@ MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay: - walk_in_place_fastest_down + walk_in_place_faster_down delay_4 - walk_in_place_fastest_right + walk_in_place_faster_right lock_facing_direction walk_left unlock_facing_direction diff --git a/data/maps/MossdeepCity/scripts.inc b/data/maps/MossdeepCity/scripts.inc index 07758873d831..f5af3a391bf3 100644 --- a/data/maps/MossdeepCity/scripts.inc +++ b/data/maps/MossdeepCity/scripts.inc @@ -286,7 +286,7 @@ MossdeepCity_EventScript_ScottExitEast:: MossdeepCity_Movement_PlayerWatchScottExit: delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MossdeepCity_Movement_ScottExitNorth: diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc index 4d69725b4c50..b44b343a65b4 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc @@ -90,7 +90,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: compare VAR_RESULT, 1 call_if_ge MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end @@ -114,7 +114,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter, MSGBOX_DEFAULT - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end @@ -147,14 +147,14 @@ MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: goto_if_eq Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc index 839ab8f24812..044979c123c3 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc @@ -68,13 +68,13 @@ MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts:: trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_5, MossdeepCity_SpaceCenter_2F_Text_Grunt5Defeat applymovement LOCALID_GRUNT_5, MossdeepCity_SpaceCenter_2F_Movement_Grunt5Defeated waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_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 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_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 @@ -250,13 +250,13 @@ MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt:: goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle msgbox MossdeepCity_SpaceCenter_2F_Text_StevenHurryGetReadyQuickly, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 releaseall end MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 special SavePlayerParty fadescreen FADE_TO_BLACK @@ -286,12 +286,12 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided, MSGBOX_DEFAULT closemessage delay 20 - applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 60 - applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFastestUp - applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFasterUp + applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 20 msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieWeWillGiveUp, MSGBOX_DEFAULT diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index 1f5a9e09a9f0..22b26f392701 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -31,7 +31,7 @@ MossdeepCity_StevensHouse_OnFrame: MossdeepCity_StevensHouse_EventScript_StevenGivesDive:: lockall - applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 playse SE_PIN applymovement LOCALID_STEVEN, Common_Movement_ExclamationMark @@ -62,7 +62,7 @@ MossdeepCity_StevensHouse_Movement_StevenApproachPlayer: walk_left walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end MossdeepCity_StevensHouse_Movement_StevenReturn: @@ -70,7 +70,7 @@ MossdeepCity_StevensHouse_Movement_StevenReturn: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end MossdeepCity_StevensHouse_EventScript_BeldumPokeball:: diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index cd07667b5b88..320e2dc19464 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -67,7 +67,7 @@ MtChimney_EventScript_Maxie:: call_if_eq MtChimney_EventScript_ArchieApproachPlayerEast compare VAR_FACING, DIR_NORTH call_if_eq MtChimney_EventScript_ArchieApproachPlayerNorth - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox MtChimney_Text_ArchieThankYou, MSGBOX_DEFAULT closemessage @@ -323,7 +323,7 @@ MtChimney_Movement_Unused8: walk_left walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtChimney_Movement_Unused9: @@ -359,7 +359,7 @@ MtChimney_Movement_Unused11: MtChimney_Movement_Unused12: delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 walk_down walk_down @@ -375,7 +375,7 @@ MtChimney_Movement_Unused13: delay_16 delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 walk_down walk_down @@ -390,7 +390,7 @@ MtChimney_Movement_Unused14: MtChimney_Movement_Unused15: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 step_end diff --git a/data/maps/MtChimney_CableCarStation/scripts.inc b/data/maps/MtChimney_CableCarStation/scripts.inc index c2e8da486e6f..a3a2b360e028 100644 --- a/data/maps/MtChimney_CableCarStation/scripts.inc +++ b/data/maps/MtChimney_CableCarStation/scripts.inc @@ -64,7 +64,7 @@ MtChimney_CableCarStation_Movement_LeadPlayerToCableCar: walk_up walk_up walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar: diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc index d55872792b52..cd58627aff9c 100644 --- a/data/maps/MtPyre_Summit/scripts.inc +++ b/data/maps/MtPyre_Summit/scripts.inc @@ -42,7 +42,7 @@ MtPyre_Summit_EventScript_TeamAquaExits:: playbgm MUS_ENCOUNTER_AQUA, FALSE applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp waitmovement 0 - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 50 compare VAR_0x8008, 0 @@ -95,7 +95,7 @@ MtPyre_Summit_EventScript_ArchieFacePlayer2:: MtPyre_Summit_EventScript_OldLadyApproachPlayer0:: applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer0 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -107,14 +107,14 @@ MtPyre_Summit_EventScript_OldLadyApproachPlayer1:: MtPyre_Summit_EventScript_OldLadyApproachPlayer2:: applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer2 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return MtPyre_Summit_Movement_OldLadyApproachPlayer0: walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end MtPyre_Summit_Movement_OldLadyApproachPlayer1: @@ -124,17 +124,17 @@ MtPyre_Summit_Movement_OldLadyApproachPlayer1: MtPyre_Summit_Movement_OldLadyApproachPlayer2: walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end MtPyre_Summit_Movement_ArchieFacePlayer0: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_Movement_ArchieFacePlayer2: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_EventScript_OldMan:: @@ -216,7 +216,7 @@ MtPyre_Summit_EventScript_ArchieMaxieTrigger2:: end MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 60 compare VAR_0x8008, 0 @@ -301,7 +301,7 @@ MtPyre_Summit_EventScript_MaxieApproachArchie0:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie0 waitmovement 0 - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -309,7 +309,7 @@ MtPyre_Summit_EventScript_MaxieApproachArchie1:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie1 waitmovement 0 - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -317,20 +317,20 @@ MtPyre_Summit_EventScript_MaxieApproachArchie2:: applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie2 waitmovement 0 - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return MtPyre_Summit_Movement_PlayerFaceMaxie0: delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end MtPyre_Summit_Movement_PlayerFaceMaxie: delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end MtPyre_Summit_Movement_ArchieExit: @@ -355,26 +355,26 @@ MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0: delay_16 delay_8 walk_left - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1: delay_16 delay_8 walk_right - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2: delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_Movement_MaxieApproachPlayer0: @@ -388,24 +388,24 @@ MtPyre_Summit_Movement_MaxieApproachPlayer1: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end MtPyre_Summit_Movement_MaxieApproachPlayer2: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end MtPyre_Summit_Movement_ArchieWatchMaxie: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end MtPyre_Summit_Movement_PlayerWatchMaxie: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end MtPyre_Summit_Movement_MaxieApproachArchie0: @@ -413,21 +413,21 @@ MtPyre_Summit_Movement_MaxieApproachArchie0: walk_right walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end MtPyre_Summit_Movement_MaxieApproachArchie1: walk_down walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end MtPyre_Summit_Movement_MaxieApproachArchie2: walk_down walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end MtPyre_Summit_EventScript_Grunt1:: diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc index 586085cbfb76..b12e62248f21 100644 --- a/data/maps/NavelRock_Harbor/scripts.inc +++ b/data/maps/NavelRock_Harbor/scripts.inc @@ -12,7 +12,7 @@ NavelRock_Harbor_EventScript_Sailor:: goto_if_eq NavelRock_Harbor_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 hideobjectat LOCALID_SAILOR, MAP_NAVEL_ROCK_HARBOR diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc index 7bc134d5024d..0a98d4ba6252 100644 --- a/data/maps/NewMauville_Entrance/scripts.inc +++ b/data/maps/NewMauville_Entrance/scripts.inc @@ -23,7 +23,7 @@ NewMauville_Entrance_OnTransition: NewMauville_Entrance_EventScript_Door:: lockall - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox NewMauville_Entrance_Text_DoorIsLocked, MSGBOX_DEFAULT checkitem ITEM_BASEMENT_KEY, 1 diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc index 8ba0e4d25dff..7d4ce4389e77 100644 --- a/data/maps/OldaleTown/scripts.inc +++ b/data/maps/OldaleTown/scripts.inc @@ -103,7 +103,7 @@ OldaleTown_Movement_EmployeeEast: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end OldaleTown_Movement_EmployeeSouth: @@ -116,7 +116,7 @@ OldaleTown_Movement_EmployeeSouth: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end OldaleTown_Movement_EmployeeNorth: @@ -127,7 +127,7 @@ OldaleTown_Movement_EmployeeNorth: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end OldaleTown_Movement_Unknown1: @@ -143,7 +143,7 @@ OldaleTown_Movement_Unknown1: walk_up walk_up delay_8 - walk_in_place_fastest_down + walk_in_place_faster_down step_end OldaleTown_Movement_PlayerEast: @@ -232,7 +232,7 @@ OldaleTown_EventScript_RivalTrigger1:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer1 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 setvar VAR_0x8009, 1 goto OldaleTown_EventScript_ShowRivalMessage @@ -242,7 +242,7 @@ OldaleTown_EventScript_RivalTrigger2:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer2 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 setvar VAR_0x8009, 1 goto OldaleTown_EventScript_ShowRivalMessage @@ -252,7 +252,7 @@ OldaleTown_EventScript_RivalTrigger3:: lockall applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer3 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 setvar VAR_0x8009, 1 goto OldaleTown_EventScript_ShowRivalMessage @@ -328,7 +328,7 @@ OldaleTown_Movement_RivalExit: OldaleTown_Movement_WatchRivalExit: delay_8 delay_4 - walk_in_place_fastest_down + walk_in_place_faster_down step_end OldaleTown_Movement_PlayerStepBack: @@ -338,7 +338,7 @@ OldaleTown_Movement_PlayerStepBack: OldaleTown_Movement_BackUp: walk_fast_up - walk_in_place_fastest_left + walk_in_place_faster_left lock_facing_direction walk_right unlock_facing_direction diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc index 49f1efadb2a5..a77939c4de13 100644 --- a/data/maps/PetalburgCity/scripts.inc +++ b/data/maps/PetalburgCity/scripts.inc @@ -50,7 +50,7 @@ PetalburgCity_EventScript_WallyTutorial:: special StartWallyTutorialBattle waitstate msgbox Route102_Text_WallyIDidIt, MSGBOX_DEFAULT - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestLeft, MAP_PETALBURG_CITY + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterLeft, MAP_PETALBURG_CITY waitmovement LOCALID_WALLY, MAP_PETALBURG_CITY msgbox Route102_Text_LetsGoBack, MSGBOX_DEFAULT closemessage @@ -186,7 +186,7 @@ PetalburgCity_Movement_WallyTutorialPlayer: walk_right walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end PetalburgCity_Movement_WallyTutorialWally: @@ -222,10 +222,10 @@ PetalburgCity_Movement_WallyTutorialWally: walk_up walk_right delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end PetalburgCity_EventScript_GymSign:: @@ -296,8 +296,8 @@ PetalburgCity_EventScript_ShowGymToPlayer:: compare VAR_0x8008, 3 call_if_eq PetalburgCity_EventScript_LeadPlayerToGym3 msgbox PetalburgCity_Text_ThisIsPetalburgGym, MSGBOX_DEFAULT - applymovement LOCALID_GYM_BOY, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_GYM_BOY, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox PetalburgCity_Text_ThisIsGymSign, MSGBOX_DEFAULT closemessage @@ -310,7 +310,7 @@ PetalburgCity_EventScript_ShowGymToPlayer:: PetalburgCity_EventScript_BoyApproachPlayer0:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer0 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -322,14 +322,14 @@ PetalburgCity_EventScript_BoyApproachPlayer1:: PetalburgCity_EventScript_BoyApproachPlayer2:: applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer2 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return @@ -368,7 +368,7 @@ PetalburgCity_Movement_BoyApproachPlayer0: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Movement_BoyApproachPlayer1: @@ -380,7 +380,7 @@ PetalburgCity_Movement_BoyApproachPlayer2: walk_right walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end PetalburgCity_Movement_BoyApproachPlayer3: @@ -388,7 +388,7 @@ PetalburgCity_Movement_BoyApproachPlayer3: walk_right walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end PetalburgCity_Movement_BoyWalkToGym0: @@ -401,7 +401,7 @@ PetalburgCity_Movement_BoyWalkToGym0: walk_right walk_up walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Movement_BoyWalkToGym1: @@ -417,7 +417,7 @@ PetalburgCity_Movement_BoyWalkToGym1: walk_up walk_up walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Movement_BoyWalkToGym2: @@ -430,7 +430,7 @@ PetalburgCity_Movement_BoyWalkToGym2: walk_right walk_up walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Movement_BoyWalkToGym3: @@ -444,7 +444,7 @@ PetalburgCity_Movement_BoyWalkToGym3: walk_up walk_up walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Movement_BoyWalkAway: @@ -556,17 +556,17 @@ PetalburgCity_EventScript_Scott:: waitmovement 0 applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 setvar VAR_SCOTT_STATE, 1 msgbox PetalburgCity_Text_AreYouATrainer, MSGBOX_DEFAULT closemessage - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 30 msgbox PetalburgCity_Text_WellMaybeNot, MSGBOX_DEFAULT closemessage - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 30 msgbox PetalburgCity_Text_ImLookingForTalentedTrainers, MSGBOX_DEFAULT @@ -640,11 +640,11 @@ PetalburgCity_Movement_ScottExit0: PetalburgCity_Movement_PlayerWatchScottExit0: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end PetalburgCity_Movement_ScottExit1: @@ -664,10 +664,10 @@ PetalburgCity_Movement_ScottExit1: PetalburgCity_Movement_PlayerWatchScottExit1: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end PetalburgCity_Movement_ScottExit2: @@ -687,10 +687,10 @@ PetalburgCity_Movement_ScottExit2: PetalburgCity_Movement_PlayerWatchScottExit2: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end PetalburgCity_Movement_ScottExit3: @@ -710,10 +710,10 @@ PetalburgCity_Movement_ScottExit3: PetalburgCity_Movement_PlayerWatchScottExit3: delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end PetalburgCity_EventScript_GymBoy:: diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index 43e8c4108cff..cae696a50a39 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -88,14 +88,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_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitGym waitmovement 0 playse SE_EXIT removeobject LOCALID_WALLY setflag FLAG_HIDE_PETALBURG_CITY_WALLY delay 30 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox PetalburgCity_Gym_Text_DadGoCollectBadges, MSGBOX_DEFAULT setvar VAR_PETALBURG_GYM_STATE, 2 @@ -226,7 +226,7 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial:: end PetalburgCity_Gym_EventScript_WallyArriveSouth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive waitmovement 0 return @@ -234,20 +234,20 @@ PetalburgCity_Gym_EventScript_WallyArriveSouth:: PetalburgCity_Gym_EventScript_WallyArriveNorth:: applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArriveNorth waitmovement 0 - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PetalburgCity_Gym_EventScript_WallyArriveWestEast:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive waitmovement 0 return PetalburgCity_Gym_EventScript_ExitGymWithWallySouth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallySouth waitmovement 0 @@ -272,45 +272,45 @@ PetalburgCity_Gym_EventScript_ExitGymWithWallyEast:: return PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressPlayerWest:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressPlayerEast:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestLeft - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressWallySouth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressWallyNorth:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressWallyWest:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return PetalburgCity_Gym_EventScript_NormanAddressWallyEast:: - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -320,7 +320,7 @@ PetalburgCity_Gym_EventScript_WallyFacePlayer:: return PetalburgCity_Gym_EventScript_WallyFaceDown:: - applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -349,7 +349,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_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -503,47 +503,47 @@ PetalburgCity_Gym_EventScript_WallysDadArrives:: end PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth:: - applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast:: - applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest:: - applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth:: applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitNorth - applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth waitmovement 0 return @@ -567,7 +567,7 @@ PetalburgCity_Gym_Movement_WallysDadExitNorth: walk_left walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 walk_in_place_down set_invisible @@ -580,7 +580,7 @@ PetalburgCity_Gym_Movement_WallysDadExitEast: walk_left walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 walk_in_place_down set_invisible @@ -595,7 +595,7 @@ PetalburgCity_Gym_Movement_WallysDadExitWest: walk_left walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 walk_in_place_down set_invisible @@ -636,11 +636,11 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest: PetalburgCity_Gym_Movement_WallysDadEnterGym: walk_up delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth: @@ -649,7 +649,7 @@ PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast: @@ -671,14 +671,14 @@ PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest: step_end PetalburgCity_Gym_Movement_Unused: - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 delay_16 delay_16 delay_16 delay_8 - walk_in_place_fastest_down + walk_in_place_faster_down step_end PetalburgCity_Gym_Movement_WallyArriveNorth: @@ -690,7 +690,7 @@ PetalburgCity_Gym_Movement_WallyArriveNorth: walk_right walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end PetalburgCity_Gym_Movement_WallyArrive: @@ -707,7 +707,7 @@ PetalburgCity_Gym_Movement_WallyExitNorth: walk_down walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 walk_in_place_down step_end @@ -717,7 +717,7 @@ PetalburgCity_Gym_Movement_WallyExitEast: walk_down walk_right walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 walk_in_place_down step_end @@ -726,7 +726,7 @@ PetalburgCity_Gym_Movement_WallyExitSouthWest: walk_down walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 walk_in_place_down step_end @@ -764,7 +764,7 @@ PetalburgCity_Gym_Movement_PlayerExitWithWallyWest: step_end PetalburgCity_Gym_Movement_PlayerExitWithWallyEast: - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 walk_down diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc index 2ade8964212c..dd2d9273f508 100644 --- a/data/maps/PetalburgWoods/scripts.inc +++ b/data/maps/PetalburgWoods/scripts.inc @@ -18,7 +18,7 @@ PetalburgWoods_EventScript_DevonResearcherLeft:: closemessage applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherLeft waitmovement 0 - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox PetalburgWoods_Text_HandOverThosePapers, MSGBOX_DEFAULT closemessage @@ -44,7 +44,7 @@ PetalburgWoods_EventScript_DevonResearcherRight:: call PetalburgWoods_EventScript_DevonResearcherIntro applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerRight waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox PetalburgWoods_Text_HaveYouSeenShroomish, MSGBOX_DEFAULT closemessage @@ -55,14 +55,14 @@ PetalburgWoods_EventScript_DevonResearcherRight:: closemessage applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherRight waitmovement 0 - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox PetalburgWoods_Text_HandOverThosePapers, MSGBOX_DEFAULT closemessage applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight waitmovement 0 msgbox PetalburgWoods_Text_YouHaveToHelpMe, MSGBOX_DEFAULT - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox PetalburgWoods_Text_NoOneCrossesTeamAqua, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_GRUNT_PETALBURG_WOODS, PetalburgWoods_Text_YoureKiddingMe @@ -88,7 +88,7 @@ PetalburgWoods_EventScript_DevonResearcherPostBattle:: applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaRunAway waitmovement 0 removeobject LOCALID_GRUNT - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox PetalburgWoods_Text_ThatWasAwfullyClose, MSGBOX_DEFAULT giveitem ITEM_GREAT_BALL @@ -159,7 +159,7 @@ PetalburgWoods_Movement_DevonResearcherApproachPlayerRight: walk_down walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end PetalburgWoods_Movement_DevonResearcherExitRight: @@ -176,7 +176,7 @@ PetalburgWoods_Movement_DevonResearcherExitRight: PetalburgWoods_Movement_WatchResearcherLeave: delay_16 delay_16 - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft: @@ -184,17 +184,17 @@ PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft: walk_fast_down walk_fast_down walk_fast_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight: walk_fast_down walk_fast_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end PetalburgWoods_Movement_DevonResearcherStartExit: - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 delay_16 diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index d83c8213b6c5..a41bc2fcbc19 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -33,7 +33,7 @@ Route101_EventScript_StartBirchRescue:: applymovement LOCALID_ZIGZAGOON, Route101_Movement_ZigzagoonChaseInCircles applymovement LOCALID_BIRCH, Route101_Movement_BirchRunInCircles waitmovement 0 - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_ZIGZAGOON, Route101_Movement_ZigzagoonFaceBirch applymovement LOCALID_BIRCH, Route101_Movement_BirchFaceZigzagoon @@ -140,7 +140,7 @@ Route101_Movement_EnterScene: walk_fast_up walk_fast_up walk_fast_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route101_Movement_BirchRunInCircles: @@ -226,7 +226,7 @@ Route101_EventScript_BirchsBag:: fadescreen FADE_TO_BLACK removeobject LOCALID_ZIGZAGOON setobjectxy OBJ_EVENT_ID_PLAYER, 6, 13 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 special ChooseStarter waitstate diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index f0ac53949dce..4553f431c038 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -169,9 +169,9 @@ Route103_EventScript_RivalExitFacingNorth2: Route103_Movement_WatchRivalExitFacingNorth: delay_16 delay_4 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route103_Movement_RivalExit1: @@ -188,7 +188,7 @@ Route103_Movement_RivalExit2: Route103_Movement_WatchRivalExitFacingEastOrWest: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route103_EventScript_Boy:: diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index e527c055e3a8..d58bc5060065 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -55,7 +55,7 @@ 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_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 10 addobject LOCALID_RIVAL @@ -139,7 +139,7 @@ Route104_Movement_RivalApproachPlayer: Route104_Movement_PlayerFaceRival: delay_4 - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route104_EventScript_MayAskToBattle:: @@ -446,122 +446,122 @@ Route104_Movement_SailToDewfordBeforeDadCalls: walk_fast_down walk_fast_down walk_fast_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down walk_fast_down walk_fast_down walk_fast_down walk_fast_down walk_fast_right walk_fast_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_down walk_fast_down walk_fast_down walk_fast_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down step_end Route104_Movement_SailToDewfordAfterDadCalls: - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down walk_fast_down walk_fast_down walk_fast_down @@ -570,46 +570,46 @@ Route104_Movement_SailToDewfordAfterDadCalls: walk_fast_right walk_fast_right walk_fast_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_right @@ -646,119 +646,119 @@ Route104_Movement_SailToDewford: walk_fast_down walk_fast_down walk_fast_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down walk_fast_down walk_fast_down walk_fast_down walk_fast_down walk_fast_right walk_fast_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_down walk_fast_down walk_fast_down walk_fast_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down walk_fast_down walk_fast_down walk_fast_down @@ -767,46 +767,46 @@ Route104_Movement_SailToDewford: walk_fast_right walk_fast_right walk_fast_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_right @@ -847,7 +847,7 @@ Route104_Movement_PlayerExitBoat: Route104_Movement_PlayerMoveForBriney: walk_down walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end Route104_Movement_BrineyBoardBoat: @@ -857,7 +857,7 @@ Route104_Movement_BrineyBoardBoat: Route104_Movement_BrineyExitBoat: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route104_EventScript_Ivan:: diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index 6c38a8bd7623..03bd51b43d0d 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -66,167 +66,167 @@ Route109_EventScript_DoSailToDewford:: end Route109_Movement_SailToDewford: - walk_in_place_fastest_down + walk_in_place_faster_down walk_down walk_down walk_fast_down walk_fast_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down - walk_fastest_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down + walk_faster_down walk_fast_down walk_fast_down walk_fast_left walk_fast_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left - walk_fastest_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left + walk_faster_left walk_fast_left walk_fast_left walk_fast_left @@ -238,7 +238,7 @@ Route109_Movement_SailToDewford: walk_fast_left walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route109_Movement_PlayerEnterBoatSouth: @@ -250,7 +250,7 @@ Route109_Movement_PlayerExitBoat: walk_down walk_down walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end Route109_Movement_PlayerEnterBoatEast: @@ -269,7 +269,7 @@ Route109_Movement_BrineyEnterBoat: Route109_Movement_BrineyExitBoat: walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route109_EventScript_MrBriney:: diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc index e9caf68adeb9..abb42cc127e5 100644 --- a/data/maps/Route110/scripts.inc +++ b/data/maps/Route110/scripts.inc @@ -312,7 +312,7 @@ Route110_EventScript_Alyssa:: Route110_EventScript_CyclingChallengeEnd:: lockall - applymovement LOCALID_CHALLENGE_BIKER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_CHALLENGE_BIKER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 call Route110_EventScript_CyclingChallengeResults releaseall @@ -388,7 +388,7 @@ Route110_EventScript_RivalScene:: call_if_eq Route110_EventScript_PlayMayMusic compare VAR_RESULT, FEMALE call_if_eq Route110_EventScript_PlayBrendanMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark waitmovement 0 @@ -552,7 +552,7 @@ Route110_EventScript_MoveRival3:: Route110_Movement_RivalApproachPlayer1: walk_down walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route110_Movement_RivalApproachPlayer2: @@ -562,7 +562,7 @@ Route110_Movement_RivalApproachPlayer2: Route110_Movement_RivalApproachPlayer3: walk_down walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route110_Movement_RivalExit1: @@ -636,13 +636,13 @@ Route110_EventScript_BirchScene:: msgbox Route110_Text_ImagineSeeingYouHere, MSGBOX_DEFAULT closemessage delay 20 - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 10 - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 20 - applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 msgbox Route110_Text_HeardYouInstallMatchCall, MSGBOX_DEFAULT diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc index 9167cbd34abf..f30d74f01c81 100644 --- a/data/maps/Route110_TrickHouseEnd/scripts.inc +++ b/data/maps/Route110_TrickHouseEnd/scripts.inc @@ -214,22 +214,22 @@ Route110_TrickHouseEnd_EventScript_NoRoomForTent:: return Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth:: - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth:: - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest:: - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast:: - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -243,7 +243,7 @@ Route110_TrickHouseEnd_EventScript_TrickMasterExitTrigger:: applymovement LOCALID_TRICK_MASTER, Route110_TrickHouseEnd_Movement_TrickMasterSurprise waitmovement 0 playse SE_M_EXPLOSION - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox Route110_TrickHouseEnd_Text_YoureIgnoringMe, MSGBOX_DEFAULT closemessage diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index 9375f2046f8b..e756feadca51 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -343,7 +343,7 @@ Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle:: applymovement LOCALID_TRICK_MASTER, Common_Movement_Delay48 waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges, MSGBOX_DEFAULT - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end @@ -441,7 +441,7 @@ Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: Route110_TrickHouseEntrance_EventScript_GotReward:: setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 - applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 95f262dd2414..72e30958a5df 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -294,7 +294,7 @@ 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_WalkInPlaceFastestUp + applymovement LOCALID_VICTOR, Common_Movement_WalkInPlaceFasterUp waitmovement 0 call Route111_EventScript_OpenWinstrateDoor msgbox Route111_Text_VictorPostBattle, MSGBOX_DEFAULT @@ -312,7 +312,7 @@ Route111_EventScript_BattleWinstrates:: call Route111_EventScript_CloseWinstrateDoor msgbox Route111_Text_VictoriaIntro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_VICTORIA, Route111_Text_VictoriaDefeat - applymovement LOCALID_VICTORIA, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_VICTORIA, Common_Movement_WalkInPlaceFasterUp waitmovement 0 call Route111_EventScript_OpenWinstrateDoor msgbox Route111_Text_VictoriaPostBattle, MSGBOX_DEFAULT @@ -330,7 +330,7 @@ Route111_EventScript_BattleWinstrates:: call Route111_EventScript_CloseWinstrateDoor msgbox Route111_Text_ViviIntro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_VIVI, Route111_Text_ViviDefeat - applymovement LOCALID_VIVI, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_VIVI, Common_Movement_WalkInPlaceFasterUp waitmovement 0 call Route111_EventScript_OpenWinstrateDoor msgbox Route111_Text_ViviPostBattle, MSGBOX_DEFAULT @@ -350,7 +350,7 @@ Route111_EventScript_BattleWinstrates:: trainerbattle_no_intro TRAINER_VICKY, Route111_Text_VickyDefeat msgbox Route111_Text_VickyPostBattle, MSGBOX_DEFAULT closemessage - applymovement LOCALID_VICKY, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_VICKY, Common_Movement_WalkInPlaceFasterUp waitmovement 0 call Route111_EventScript_OpenWinstrateDoor applymovement LOCALID_VICKY, Route111_Movement_WinstrateEnterHouse @@ -371,7 +371,7 @@ Route111_EventScript_CloseWinstrateDoor:: return Route111_Movement_WinstrateEnterHouse: - walk_in_place_fastest_up + walk_in_place_faster_up walk_up step_end diff --git a/data/maps/Route112/scripts.inc b/data/maps/Route112/scripts.inc index 4f9d60206ba6..abea230be1ba 100644 --- a/data/maps/Route112/scripts.inc +++ b/data/maps/Route112/scripts.inc @@ -13,7 +13,7 @@ Route112_OnTransition: Route112_EventScript_MagmaGrunts:: lockall delay 40 - applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 20 msgbox Route112_Text_LeaderGoingToAwakenThing, MSGBOX_DEFAULT @@ -21,7 +21,7 @@ Route112_EventScript_MagmaGrunts:: applymovement LOCALID_GRUNT_1, Common_Movement_FaceOriginalDirection waitmovement 0 delay 40 - applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 20 msgbox Route112_Text_YeahWeNeedMeteorite, MSGBOX_DEFAULT @@ -29,7 +29,7 @@ Route112_EventScript_MagmaGrunts:: applymovement LOCALID_GRUNT_2, Common_Movement_FaceOriginalDirection waitmovement 0 delay 40 - applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 20 msgbox Route112_Text_OhThatsWhyCrewWentToFallarbor, MSGBOX_DEFAULT @@ -37,7 +37,7 @@ Route112_EventScript_MagmaGrunts:: applymovement LOCALID_GRUNT_1, Common_Movement_FaceOriginalDirection waitmovement 0 delay 40 - applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 20 msgbox Route112_Text_CantLetAnyonePassUntilTheyreBack, MSGBOX_DEFAULT diff --git a/data/maps/Route112_CableCarStation/scripts.inc b/data/maps/Route112_CableCarStation/scripts.inc index ebc5142ae2e3..86fe61a05b80 100644 --- a/data/maps/Route112_CableCarStation/scripts.inc +++ b/data/maps/Route112_CableCarStation/scripts.inc @@ -65,7 +65,7 @@ Route112_CableCarStation_Movement_LeadPlayerToCableCar: walk_up walk_up walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar: diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc index a5181be7930f..3a6dd785cc47 100644 --- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc +++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc @@ -25,8 +25,8 @@ Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass:: Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn:: lockall - applymovement LOCALID_FOSSIL_MANIAC, Common_Movement_WalkInPlaceFastestUp - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_FOSSIL_MANIAC, Common_Movement_WalkInPlaceFasterUp + applymovement OBJ_EVENT_ID_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/scripts.inc b/data/maps/Route116/scripts.inc index 2b974035a02f..0ef6a05e1aa5 100644 --- a/data/maps/Route116/scripts.inc +++ b/data/maps/Route116/scripts.inc @@ -154,8 +154,8 @@ Route116_EventScript_Briney:: Route116_EventScript_BrineyTrigger:: lockall - applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFastestRight - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox Route116_Text_ScoundrelMadeOffWithPeeko, MSGBOX_DEFAULT setvar VAR_ROUTE116_STATE, 2 diff --git a/data/maps/Route118/scripts.inc b/data/maps/Route118/scripts.inc index 723f3c0b54eb..5b68804b5b2e 100644 --- a/data/maps/Route118/scripts.inc +++ b/data/maps/Route118/scripts.inc @@ -134,7 +134,7 @@ Route118_EventScript_StevenExit2:: Route118_Movement_PlayerWatchStevenExit: delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end Route118_Movement_StevenApproachLedge0: diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc index 5e53f4ac8f04..839f4101ba56 100644 --- a/data/maps/Route119/scripts.inc +++ b/data/maps/Route119/scripts.inc @@ -55,7 +55,7 @@ Route119_EventScript_RivalEncounter:: call_if_eq Route119_EventScript_RivalEnter1 compare VAR_TEMP_1, 2 call_if_eq Route119_EventScript_RivalEnter2 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 compare VAR_TEMP_1, 1 @@ -234,16 +234,16 @@ Route119_EventScript_SetRivalPos2:: Route119_Movement_PlayerWatchRivalExit1: delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right delay_8 - walk_in_place_fastest_up + walk_in_place_faster_up step_end Route119_Movement_PlayerWatchRivalExit2: delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left delay_8 - walk_in_place_fastest_up + walk_in_place_faster_up step_end Route119_Movement_RivalEnter1: diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index af281ea0a598..3b94d5cc140a 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -197,12 +197,12 @@ Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay: delay_16 delay_16 ride_water_current_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition: slide_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer: diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index f07395824657..9e0e43bd20ca 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -200,12 +200,12 @@ Route120_EventScript_StevenBattleKecleon:: call_if_eq Route120_EventScript_PlayerApproachKecleonNorth compare VAR_FACING, DIR_WEST call_if_eq Route120_EventScript_PlayerApproachKecleonWest - applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 20 msgbox Route120_Text_StevenUsedDevonScope, MSGBOX_DEFAULT closemessage - applymovement LOCALID_BRIDGE_KECLEON, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_BRIDGE_KECLEON, Common_Movement_WalkInPlaceFasterRight waitmovement 0 applymovement LOCALID_BRIDGE_KECLEON, Movement_KecleonAppears waitmovement 0 @@ -237,15 +237,15 @@ Route120_EventScript_RemoveBridgeKecleonPostBattle:: end Route120_EventScript_StevenGiveDeconScope:: - applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestDown - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestDown + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 50 setfieldeffectargument 0, 1 @@ -262,7 +262,7 @@ Route120_EventScript_StevenGiveDeconScope:: end Route120_EventScript_PlayerApproachKecleonNorth:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc index 6945f69dcb7a..8bd5dac04f4d 100644 --- a/data/maps/Route121_SafariZoneEntrance/scripts.inc +++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc @@ -46,7 +46,7 @@ Route121_SafariZoneEntrance_EventScript_FirstTimeInfo:: Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: lockall - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 showmoneybox 0, 0, 0 msgbox Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay, MSGBOX_YESNO diff --git a/data/maps/Route128/scripts.inc b/data/maps/Route128/scripts.inc index 09b5c404ac07..e550f2bd1257 100644 --- a/data/maps/Route128/scripts.inc +++ b/data/maps/Route128/scripts.inc @@ -28,18 +28,18 @@ Route128_EventScript_KyogreAwakenedScene:: closemessage applymovement LOCALID_MAXIE, Route128_Movement_MaxieApproachArchie waitmovement 0 - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox Route128_Text_MaxieDoYouUnderstandNow, MSGBOX_DEFAULT closemessage applymovement LOCALID_MAXIE, Route128_Movement_MaxieApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft applymovement LOCALID_MAXIE, Route128_Movement_MaxieWalkLeft waitmovement 0 msgbox Route128_Text_MaxieThisDefiesBelief, MSGBOX_DEFAULT @@ -57,19 +57,19 @@ Route128_EventScript_KyogreAwakenedScene:: addobject LOCALID_STEVEN applymovement LOCALID_STEVEN, Route128_Movement_StevenApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox Route128_Text_StevenWholeWorldWillDrown, MSGBOX_DEFAULT - applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox Route128_Text_StevenImGoingToSootopolis, MSGBOX_DEFAULT closemessage - applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 50 setfieldeffectargument 0, 1 @@ -111,12 +111,12 @@ Route128_Movement_StevenApproachPlayer: Route128_Movement_ArchieLookAround: walk_fast_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route128_Movement_ArchieBackUp: @@ -130,7 +130,7 @@ Route128_Movement_ArchieRunLeft: walk_fast_left walk_fast_left walk_fast_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end Route128_Movement_ArchieExit: @@ -157,7 +157,7 @@ Route128_Movement_MaxieWalkLeft: Route128_Movement_MaxieApproachArchie: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route128_Movement_MaxieExit: @@ -175,7 +175,7 @@ Route128_Movement_MaxieExit: Route128_Movement_MaxieApproachPlayer: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end Route128_EventScript_Isaiah:: diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc index 5c6ef0902256..8d286d5de2fd 100644 --- a/data/maps/RustboroCity/scripts.inc +++ b/data/maps/RustboroCity/scripts.inc @@ -53,14 +53,14 @@ RustboroCity_EventScript_ScientistAddMatchCall:: waitmovement 0 applymovement LOCALID_SCIENTIST, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 applymovement LOCALID_SCIENTIST, RustboroCity_Movement_ScientistWalkInPlaceDown waitmovement 0 msgbox RustboroCity_Text_DevelopedNewPokenavFeature, MSGBOX_DEFAULT closemessage setflag FLAG_HAS_MATCH_CALL - applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 playse SE_CLICK delay 10 @@ -70,7 +70,7 @@ RustboroCity_EventScript_ScientistAddMatchCall:: delay 10 playse SE_CLICK delay 20 - applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox RustboroCity_Text_AddedMatchCallPleaseCallMrStone, MSGBOX_DEFAULT closemessage @@ -131,7 +131,7 @@ RustboroCity_Movement_ScientistWalkAroundPlayer: walk_down walk_down walk_right - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 step_end @@ -360,14 +360,14 @@ RustboroCity_EventScript_EmployeeApproachDown:: RustboroCity_EventScript_EmployeeApproachPlayerFar:: applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerFar waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return @ Unused RustboroCity_Movement_GruntEscapeExtended: - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_right @@ -386,8 +386,8 @@ RustboroCity_Movement_GruntEscapeExtended: step_end RustboroCity_Movement_GruntEscape: - walk_fastest_right - walk_fastest_right + walk_faster_right + walk_faster_right walk_fast_right walk_fast_right walk_fast_right @@ -411,7 +411,7 @@ RustboroCity_Movement_EmployeeChaseGrunt1: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end RustboroCity_Movement_EmployeeChaseGrunt2: @@ -464,7 +464,7 @@ RustboroCity_Movement_EmployeeApproachPlayerFar: walk_right walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end RustboroCity_EventScript_DevonEmployee1:: @@ -523,19 +523,19 @@ RustboroCity_EventScript_EmployeeAskToGetGoods:: @ 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_WalkInPlaceFastestUp + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return RustboroCity_EventScript_EmployeeFacePlayerLeft1:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark @@ -547,19 +547,19 @@ RustboroCity_EventScript_EmployeeFacePlayerLeft1:: return RustboroCity_EventScript_EmployeeFacePlayerDown1:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return RustboroCity_EventScript_EmployeeApproachPlayerDown1:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark @@ -568,7 +568,7 @@ RustboroCity_EventScript_EmployeeApproachPlayerDown1:: waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return @@ -631,19 +631,19 @@ RustboroCity_EventScript_BagFull:: return RustboroCity_EventScript_EmployeeFacePlayerUp2:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return RustboroCity_EventScript_EmployeeFacePlayerLeft2:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterRight waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark @@ -655,19 +655,19 @@ RustboroCity_EventScript_EmployeeFacePlayerLeft2:: return RustboroCity_EventScript_EmployeeFacePlayerDown2:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return RustboroCity_EventScript_EmployeeApproachPlayerDown2:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark @@ -676,12 +676,12 @@ RustboroCity_EventScript_EmployeeApproachPlayerDown2:: waitmovement 0 applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return RustboroCity_EventScript_EmployeeFacePlayerRight:: - applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 playse SE_PIN applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark @@ -716,7 +716,7 @@ RustboroCity_EventScript_PlayBrendanMusic:: RustboroCity_EventScript_RivalTrigger0:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -725,14 +725,14 @@ RustboroCity_EventScript_RivalTrigger0:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer0 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger1:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -741,14 +741,14 @@ RustboroCity_EventScript_RivalTrigger1:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer1 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger2:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -757,14 +757,14 @@ RustboroCity_EventScript_RivalTrigger2:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer2 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger3:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -773,14 +773,14 @@ RustboroCity_EventScript_RivalTrigger3:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer3 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger4:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -789,14 +789,14 @@ RustboroCity_EventScript_RivalTrigger4:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer4 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger5:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -805,14 +805,14 @@ RustboroCity_EventScript_RivalTrigger5:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer5 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger6:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -821,14 +821,14 @@ RustboroCity_EventScript_RivalTrigger6:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer6 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter RustboroCity_EventScript_RivalTrigger7:: lockall call RustboroCity_EventScript_PlayRivalMusic - applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 playse SE_PIN applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -837,7 +837,7 @@ RustboroCity_EventScript_RivalTrigger7:: waitmovement 0 applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer7 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto RustboroCity_EventScript_RivalEncounter diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc index cfd6709983e1..d249cc51f648 100644 --- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc @@ -78,7 +78,7 @@ RustboroCity_DevonCorp_3F_Movement_Unused: walk_up walk_up walk_up - walk_in_place_fastest_left + walk_in_place_faster_left step_end RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident: @@ -95,12 +95,12 @@ RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident: walk_right walk_right walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end RustboroCity_DevonCorp_3F_Movement_EmployeeFaceDesk: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen: @@ -146,7 +146,7 @@ RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk: delay_16 walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end RustboroCity_DevonCorp_3F_EventScript_MrStone:: diff --git a/data/maps/RustboroCity_PokemonSchool/scripts.inc b/data/maps/RustboroCity_PokemonSchool/scripts.inc index 791f5ee84149..fcc374ddc79e 100644 --- a/data/maps/RustboroCity_PokemonSchool/scripts.inc +++ b/data/maps/RustboroCity_PokemonSchool/scripts.inc @@ -87,7 +87,7 @@ RustboroCity_PokemonSchool_EventScript_Teacher:: compare VAR_RESULT, 0 goto_if_eq Common_EventScript_ShowBagIsFull closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 setflag FLAG_RECEIVED_QUICK_CLAW release @@ -106,7 +106,7 @@ RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsWest:: RustboroCity_PokemonSchool_EventScript_GaveQuickClaw:: msgbox RustboroCity_PokemonSchool_Text_ExplainQuickClaw, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 release end @@ -116,12 +116,12 @@ RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsWest: walk_down walk_down walk_right - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 delay_16 walk_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 walk_right @@ -143,12 +143,12 @@ RustboroCity_PokemonSchool_Movement_TeacherCheckOnStudentsEast: walk_down walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 delay_16 walk_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 walk_right diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc index 1ba3c240c4a5..b8ffe49d0cce 100644 --- a/data/maps/RusturfTunnel/scripts.inc +++ b/data/maps/RusturfTunnel/scripts.inc @@ -100,7 +100,7 @@ RusturfTunnel_EventScript_BoyfriendApproachWanda2:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda waitmovement 0 - applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -108,14 +108,14 @@ RusturfTunnel_EventScript_BoyfriendApproachWanda3:: applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda waitmovement 0 - applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return RusturfTunnel_EventScript_FaceWandasBoyfriend1:: - applymovement LOCALID_WANDAS_BF, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_WANDAS_BF, Common_Movement_WalkInPlaceFasterUp waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return @@ -184,44 +184,44 @@ RusturfTunnel_Movement_WandaExit: RusturfTunnel_Movement_PlayerWatchWandaExit: delay_8 - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_Unused1: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_Unused2: walk_down - walk_in_place_fastest_up + walk_in_place_faster_up delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_Unused3: walk_up - walk_in_place_fastest_down + walk_in_place_faster_down delay_8 - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_PlayerWatchBoyfriend1: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_PlayerWatchBoyfriend: walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end RusturfTunnel_Movement_BoyfriendFaceRight: walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end RusturfTunnel_Movement_WandasBoyfriendExit1: @@ -269,7 +269,7 @@ RusturfTunnel_Movement_BoyfriendApproachWanda: walk_in_place_fast_right walk_in_place_fast_right walk_fast_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end RusturfTunnel_EventScript_TunnelBlockagePos1:: @@ -362,12 +362,12 @@ RusturfTunnel_Movement_PushPlayerAsideForGrunt: lock_facing_direction walk_up unlock_facing_direction - walk_in_place_fastest_left + walk_in_place_faster_left step_end RusturfTunnel_Movement_PlayerMoveAsideForBriney: walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end RusturfTunnel_Movement_GruntEscape: @@ -410,7 +410,7 @@ RusturfTunnel_Movement_PlayerWatchBrineyExit: delay_16 delay_8 delay_4 - walk_in_place_fastest_left + walk_in_place_faster_left step_end RusturfTunnel_Movement_BrineyApproachPeeko2: diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc index 07c397e8c85c..a94d50ec3faf 100644 --- a/data/maps/SSTidalCorridor/scripts.inc +++ b/data/maps/SSTidalCorridor/scripts.inc @@ -196,7 +196,7 @@ SSTidalCorridor_EventScript_ScottScene:: lockall applymovement LOCALID_SCOTT, SSTidalCorridor_Movement_ScottApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox SSTidalCorridor_Text_ScottBattleFrontierInvite, MSGBOX_DEFAULT closemessage @@ -226,7 +226,7 @@ SSTidalCorridor_Movement_ScottApproachPlayer: step_end SSTidalCorridor_Movement_ScottExit: - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 delay_16 @@ -241,22 +241,22 @@ SSTidalCorridor_Movement_PlayerWatchScottExit: delay_16 delay_16 delay_8 - walk_in_place_fastest_down + walk_in_place_faster_down step_end SSTidalCorridor_Movement_SailorMoveForScott: delay_16 walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end SSTidalCorridor_Movement_SailorReturn: walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end SSTidalCorridor_Text_ScottBattleFrontierInvite: diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc index ee9844340060..791572fe0c7e 100644 --- a/data/maps/SafariZone_South/scripts.inc +++ b/data/maps/SafariZone_South/scripts.inc @@ -35,7 +35,7 @@ SafariZone_South_Movement_PlayerEnter: SafariZone_South_Movement_ExitAttendantBlockDoor: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end SafariZone_South_EventScript_Boy:: @@ -104,17 +104,17 @@ SafariZone_South_Movement_PlayerExitNorth: SafariZone_South_Movement_PlayerExitEast: walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end SafariZone_South_Movement_MoveExitAttendantNorth: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end SafariZone_South_Movement_MoveExitAttendantEast: walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end SafariZone_South_EventScript_ConstructionWorker1:: diff --git a/data/maps/SeafloorCavern_Entrance/scripts.inc b/data/maps/SeafloorCavern_Entrance/scripts.inc index b6b7b667595b..a4c621e3e0e2 100644 --- a/data/maps/SeafloorCavern_Entrance/scripts.inc +++ b/data/maps/SeafloorCavern_Entrance/scripts.inc @@ -31,7 +31,7 @@ SeafloorCavern_Entrance_EventScript_Grunt:: copyobjectxytoperm LOCALID_GRUNT msgbox SeafloorCavern_Entrance_Text_HearMagmaNearMossdeep, MSGBOX_DEFAULT closemessage - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end @@ -45,23 +45,23 @@ SeafloorCavern_Entrance_EventScript_GruntSpeechShort:: call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth msgbox SeafloorCavern_Entrance_Text_HearMagmaNearMossdeepShort, MSGBOX_DEFAULT closemessage - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast:: - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest:: - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth:: - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc index 7749d7a194be..3db2348a4a89 100644 --- a/data/maps/SeafloorCavern_Room9/scripts.inc +++ b/data/maps/SeafloorCavern_Room9/scripts.inc @@ -14,7 +14,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: setvar VAR_0x8005, LOCALID_MAXIE setvar VAR_0x8006, LOCALID_GRUNT_1 setvar VAR_0x8007, LOCALID_GRUNT_2 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, SeafloorCavern_Room9_Movement_Delay32 waitmovement 0 @@ -22,12 +22,12 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: msgbox SeafloorCavern_Room9_Text_ArchieHoldItRightThere, MSGBOX_DEFAULT closemessage addobject VAR_0x8004 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 applymovement VAR_0x8004, SeafloorCavern_Room9_Movement_ArchieApproachPlayer waitmovement 0 msgbox SeafloorCavern_Room9_Text_ArchieSoItWasYou, MSGBOX_DEFAULT - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox SeafloorCavern_Room9_Text_ArchieBeholdKyogre, MSGBOX_DEFAULT applymovement VAR_0x8004, Common_Movement_FacePlayer @@ -51,8 +51,8 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: playfanfare MUS_AWAKEN_LEGEND playse SE_ORB special DoOrbEffect - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestUp - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 150 removeobject LOCALID_KYOGRE_SLEEPING @@ -86,7 +86,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: setvar VAR_0x8007, LOCALID_GRUNT_2 msgbox SeafloorCavern_Room9_Text_ArchieWhereDidKyogreGo, MSGBOX_DEFAULT playse SE_PC_LOGIN - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox SeafloorCavern_Room9_Text_ArchieAMessageFromOutside, MSGBOX_DEFAULT closemessage @@ -96,7 +96,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: closemessage playse SE_PC_OFF delay 20 - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox SeafloorCavern_Room9_Text_ArchieWhyDidKyogreDisappear, MSGBOX_DEFAULT closemessage @@ -107,7 +107,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: applymovement VAR_0x8006, SeafloorCavern_Room9_Movement_MagmaGruntArrive applymovement VAR_0x8005, SeafloorCavern_Room9_Movement_MaxieArrive waitmovement 0 - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox SeafloorCavern_Room9_Text_MaxieWhatHaveYouWrought, MSGBOX_DEFAULT playse SE_PIN @@ -179,7 +179,7 @@ SeafloorCavern_Room9_Movement_ArchieExit: lock_facing_direction walk_down unlock_facing_direction - walk_in_place_fastest_right + walk_in_place_faster_right step_end SeafloorCavern_Room9_Movement_KyogreApproach: diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc index f11b378ed370..9ffcd2de73b7 100644 --- a/data/maps/SkyPillar_Outside/scripts.inc +++ b/data/maps/SkyPillar_Outside/scripts.inc @@ -38,7 +38,7 @@ SkyPillar_Outside_EventScript_WallaceScene:: lockall applymovement LOCALID_WALLACE, SkyPillar_Outside_Movement_WallaceApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox SkyPillar_Outside_Text_OpenedDoorToSkyPillar, MSGBOX_DEFAULT closemessage @@ -62,13 +62,13 @@ SkyPillar_Outside_EventScript_WallaceScene:: special ShakeCamera waitstate delay 20 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 10 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 20 - applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 msgbox SkyPillar_Outside_Text_SituationGettingWorse, MSGBOX_DEFAULT diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index acbdb4c8bd40..0406509d2ee9 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -165,7 +165,7 @@ SkyPillar_Top_Movement_RayquazaFlyOff: delay_8 walk_in_place_right @ Normal, awake delay_8 - walk_fastest_up @ Fly up + walk_faster_up @ Fly up slide_up slide_up slide_up diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 4a567171493a..3e8648531f7b 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -82,11 +82,11 @@ SlateportCity_EventScript_ScottScene:: waitmovement 0 msgbox SlateportCity_Text_YouDroveTeamAquaAway, MSGBOX_DEFAULT closemessage - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 delay 60 msgbox SlateportCity_Text_MaybeThisTrainer, MSGBOX_DEFAULT - applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox SlateportCity_Text_LetsRegisterEachOther, MSGBOX_DEFAULT closemessage @@ -113,7 +113,7 @@ SlateportCity_EventScript_ScottScene:: SlateportCity_Movement_PlayerFaceScott: delay_16 delay_8 - walk_in_place_fastest_left + walk_in_place_faster_left step_end SlateportCity_Movement_ScottApproachPlayer: @@ -588,10 +588,10 @@ SlateportCity_EventScript_CaptStern:: msgbox SlateportCity_Text_SternMoveAheadWithExploration, MSGBOX_DEFAULT msgbox SlateportCity_Text_GabbyWonderfulThanksForInterview, MSGBOX_DEFAULT closemessage - applymovement LOCALID_GABBY, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_GABBY, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 10 - applymovement LOCALID_TY, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_TY, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 25 applymovement LOCALID_CAPT_STERN, SlateportCity_Movement_SternWatchGabbyAndTyExit @@ -602,18 +602,18 @@ SlateportCity_EventScript_CaptStern:: removeobject LOCALID_GABBY removeobject LOCALID_TY msgbox SlateportCity_Text_SternWhewFirstInterview, MSGBOX_DEFAULT - applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_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_WalkInPlaceFastestLeft - applymovement LOCALID_FAT_MAN, Common_Movement_WalkInPlaceFastestLeft + 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 waitmovement 0 - applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox SlateportCity_Text_SternWhatWasAllThat, MSGBOX_DEFAULT playse SE_PIN @@ -621,7 +621,7 @@ SlateportCity_EventScript_CaptStern:: waitmovement 0 applymovement LOCALID_CAPT_STERN, Common_Movement_Delay48 waitmovement 0 - applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox SlateportCity_Text_FromHarborTryingToTakeSub, MSGBOX_DEFAULT msgbox SlateportCity_Text_PleaseComeWithMe, MSGBOX_DEFAULT @@ -644,20 +644,20 @@ SlateportCity_Movement_OldWomanConcern: delay_16 delay_16 emote_question_mark - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end SlateportCity_Movement_ManConcern: emote_question_mark - walk_in_place_fastest_up + walk_in_place_faster_up delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left step_end SlateportCity_Movement_GabbyExit: @@ -693,7 +693,7 @@ SlateportCity_Movement_TyExit: SlateportCity_Movement_Unused: walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end SlateportCity_Movement_SternEnterHarbor: @@ -714,7 +714,7 @@ SlateportCity_Movement_SternWatchGabbyAndTyExit: step_end SlateportCity_Movement_PlayerEnterHarbor: - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 walk_right @@ -729,7 +729,7 @@ SlateportCity_Movement_PlayerFaceStern: delay_16 delay_16 delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end SlateportCity_EventScript_Ty:: @@ -939,7 +939,7 @@ SlateportCity_Movement_PushPlayerDown: SlateportCity_Movement_PlayerWatchScottExit: delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end SlateportCity_Movement_ScottExitBattleTent: diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc index c1e9bfc532e0..06052e145141 100644 --- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc +++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc @@ -94,7 +94,7 @@ SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: @@ -102,6 +102,6 @@ SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: walk_down walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index 08b19391cee0..37b0f6fc88f8 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -43,7 +43,7 @@ SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT closemessage - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 opendoor 2, 1 waitdooranim @@ -151,7 +151,7 @@ SlateportCity_BattleTentCorridor_Movement_AttendantEnter: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end SlateportCity_BattleTentCorridor_Movement_AttendantExit: diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index fb73f5b9383d..58e5978cf0cb 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -54,10 +54,10 @@ SlateportCity_Harbor_EventScript_AquaEscapeTrigger3:: end SlateportCity_Harbor_EventScript_AquaEscapeScene:: - applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFastestDown + applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 - applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFastestDown - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox SlateportCity_Harbor_Text_ArchieYouAgainHideoutInLilycove, MSGBOX_DEFAULT closemessage @@ -91,21 +91,21 @@ SlateportCity_Harbor_EventScript_AquaEscapeScene:: SlateportCity_Harbor_EventScript_SternApproachPlayer0:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer0 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 return SlateportCity_Harbor_EventScript_SternApproachPlayer1:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer1 waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return SlateportCity_Harbor_EventScript_SternApproachPlayer:: applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -234,7 +234,7 @@ SlateportCity_Harbor_EventScript_ChooseNewDestination:: SlateportCity_Harbor_EventScript_BoardFerry:: msgbox SlateportCity_Harbor_Text_PleaseBoardFerry, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 30 hideobjectat VAR_LAST_TALKED, MAP_SLATEPORT_CITY_HARBOR @@ -265,7 +265,7 @@ SlateportCity_Harbor_EventScript_BoardFerryNorth:: SlateportCity_Harbor_Movement_BoardFerryEast: walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end SlateportCity_Harbor_Movement_BoardFerryNorth: diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc index 38ec344649d4..cfe547de56d9 100644 --- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc @@ -9,14 +9,14 @@ SlateportCity_OceanicMuseum_1F_EventScript_EntranceAttendant:: SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeLeft:: lockall - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 goto SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee end @@ -205,12 +205,12 @@ SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth: delay_16 delay_8 delay_4 - walk_in_place_fastest_down + walk_in_place_faster_down step_end SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast: delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit: diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc index 90b5c83de0cf..b993c9fab1fa 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc @@ -48,8 +48,8 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: trainerbattle_no_intro TRAINER_GRUNT_MUSEUM_2, SlateportCity_OceanicMuseum_2F_Text_Grunt2Defeat applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated waitmovement 0 - applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFastestDown - applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterDown + applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox SlateportCity_OceanicMuseum_2F_Text_MeddlingKid, MSGBOX_DEFAULT closemessage @@ -73,7 +73,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: fadescreen FADE_FROM_BLACK delay 30 setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs, MSGBOX_DEFAULT setvar VAR_0x8004, ITEM_DEVON_GOODS @@ -101,12 +101,12 @@ SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch:: return SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts:: - applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFastestLeft + applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -123,7 +123,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest:: SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth: walk_left walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest: @@ -131,7 +131,7 @@ SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest: walk_left walk_left walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end SlateportCity_OceanicMuseum_2F_Movement_Unused: @@ -173,7 +173,7 @@ SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle: SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter: walk_down walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach: @@ -217,7 +217,7 @@ SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie: delay_16 delay_8 walk_fast_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end SlateportCity_OceanicMuseum_2F_EventScript_WaterQualitySample1:: diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index efeae33d1e58..a9f9ebb39b12 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -238,8 +238,8 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: setvar VAR_0x8004, FALSE @ Just do Groudon/Kyogre fight scene special Script_DoRayquazaScene waitstate - applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 60 waitse @@ -338,8 +338,8 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: setvar VAR_0x8004, FALSE @ Just do Groudon/Kyogre fight scene special Script_DoRayquazaScene waitstate - applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFastestLeft - applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFasterLeft + applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFasterRight waitmovement 0 delay 60 waitse @@ -651,12 +651,12 @@ SootopolisCity_EventScript_SetRoughWater:: SootopolisCity_Movement_RayquazaFlyOff: walk_fast_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up - walk_fastest_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up + walk_faster_up step_end SootopolisCity_Movement_PanUp: @@ -1055,7 +1055,7 @@ SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin: walk_up walk_up walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest: @@ -1186,7 +1186,7 @@ SootopolisCity_Movement_StevenWalkToCaveOfOrigin: walk_right walk_right delay_4 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 walk_right @@ -1249,7 +1249,7 @@ SootopolisCity_Movement_PlayerWalkToCaveOfOrigin: SootopolisCity_Movement_ExpertMoveAside: walk_slow_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end SootopolisCity_Movement_StevenArriveCaveEntrance: @@ -1262,7 +1262,7 @@ SootopolisCity_Movement_StevenArriveCaveEntrance: walk_up walk_up walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end SootopolisCity_Movement_PlayerArriveCaveEntrance: @@ -1275,7 +1275,7 @@ SootopolisCity_Movement_PlayerArriveCaveEntrance: walk_up walk_up walk_up - walk_in_place_fastest_right + walk_in_place_faster_right step_end SootopolisCity_Movement_PlayerEnterCaveOfOrigin: @@ -1413,12 +1413,12 @@ SootopolisCity_EventScript_GoToGym:: SootopolisCity_Movement_WallaceMoveFromGym: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end SootopolisCity_Movement_WallaceMoveFromGymWest: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end SootopolisCity_EventScript_Maxie:: diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc index 6b1bc0eb564c..1fb8a8f723f2 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc @@ -38,7 +38,7 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle:: applymovement LOCALID_OLD_MAN, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer waitmovement 0 copyobjectxytoperm LOCALID_OLD_MAN - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 compare VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 1 call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleWonComment @@ -69,7 +69,7 @@ SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs: SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer: walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end SootopolisCity_MysteryEventsHouse_1F_EventScript_OldMan:: @@ -171,12 +171,12 @@ SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest: SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideRight: walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end SootopolisCity_MysteryEventsHouse_1F_Text_OnlyAmusementWatchingBattles: diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc index 3769f164ce5d..b491c2f6c51e 100644 --- a/data/maps/SouthernIsland_Exterior/scripts.inc +++ b/data/maps/SouthernIsland_Exterior/scripts.inc @@ -17,7 +17,7 @@ SouthernIsland_Exterior_EventScript_Sailor:: goto_if_eq SouthernIsland_Exterior_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage - applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 30 hideobjectat LOCALID_SAILOR, MAP_SOUTHERN_ISLAND_EXTERIOR @@ -49,7 +49,7 @@ Ferry_EventScript_DepartIslandBoardSouth: Ferry_EventScript_DepartIslandBoardWest: walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end SouthernIsland_Exterior_EventScript_Sign:: diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index 20ed1e58d5f8..a4c2c4960e13 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -145,7 +145,7 @@ SouthernIsland_Interior_Movement_CameraPanDown: walk_down walk_down walk_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end SouthernIsland_Interior_Movement_LatiApproach: diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index 755e6d8be724..b349a395cf09 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -71,8 +71,8 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: applymovement LOCALID_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit waitmovement 0 removeobject LOCALID_OPPONENT - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestDown - applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterDown + applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox BattleFrontier_BattlePalaceBattleRoom_Text_LetMeRestoreYourMons, MSGBOX_DEFAULT special LoadPlayerParty @@ -111,8 +111,8 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: - applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFastestRight - applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight + applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 closemessage goto VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc index 7f6669f7bd7f..e07da7e60dad 100644 --- a/data/maps/VictoryRoad_1F/scripts.inc +++ b/data/maps/VictoryRoad_1F/scripts.inc @@ -40,7 +40,7 @@ VictoryRoad_1F_EventScript_WallyBattleTrigger2:: end VictoryRoad_1F_EventScript_WallyEntranceBattle:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_WALLY_VR_1, VictoryRoad_1F_Text_WallyEntranceDefeat diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index 1e4f551690bb..1d833f470c71 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -567,7 +567,7 @@ BerryBlender_EventScript_ExpertMGiveBerry: end BerryBlender_Movement_BlendLeaderWalkInPlace: - walk_in_place_fastest_right + walk_in_place_faster_right step_end BerryBlender_EventScript_BerryBlenderLink:: diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index ab76428990a6..d6ea1a707e76 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -245,7 +245,7 @@ CableClub_EventScript_PlayerExitLinkRoom:: CableClub_EventScript_Tutorial:: lockall - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox CableClub_Text_FirstTimeRightThisWay, MSGBOX_DEFAULT closemessage diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 0d9e023371d2..17364559bb26 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -1285,7 +1285,7 @@ ContestHall_Movement_MCBackUp: step_end ContestHall_Movement_MCFaceJudge: - walk_in_place_fastest_right + walk_in_place_faster_right step_end ContestHall_Movement_Heart: @@ -1293,24 +1293,24 @@ ContestHall_Movement_Heart: step_end ContestHall_Movement_FaceContestants: - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_WalkStageLeft: walk_left walk_left - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_WalkStageRight: walk_right walk_right - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_WinningPlayerWalkUp: walk_up - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_ContestantDelay32: @@ -1319,15 +1319,15 @@ ContestHall_Movement_ContestantDelay32: step_end ContestHall_Movement_MCFaceJudge2: - walk_in_place_fastest_right + walk_in_place_faster_right step_end ContestHall_Movement_JudgeFaceMC: - walk_in_place_fastest_left + walk_in_place_faster_left step_end ContestHall_Movement_FaceContestants2: - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_Player3ApproachForPrize: @@ -1375,20 +1375,20 @@ ContestHall_Movement_Player4FaceUp: ContestHall_Movement_MCLookAtJudge: face_up delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right step_end ContestHall_Movement_JudgeLookAtMC: - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_MCWalkInPlaceDown: delay_16 delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end ContestHall_Movement_Player1WalkToCenter: @@ -1396,7 +1396,7 @@ ContestHall_Movement_Player1WalkToCenter: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player1WalkBack: @@ -1404,31 +1404,31 @@ ContestHall_Movement_Player1WalkBack: walk_fast_left walk_fast_left walk_fast_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player2WalkToCenter: walk_up walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player2WalkBack: walk_fast_left walk_fast_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player3WalkToCenter: walk_up walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player3WalkBack: walk_fast_right walk_fast_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player4WalkToCenter: @@ -1436,7 +1436,7 @@ ContestHall_Movement_Player4WalkToCenter: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player4WalkBack: @@ -1444,7 +1444,7 @@ ContestHall_Movement_Player4WalkBack: walk_fast_right walk_fast_right walk_fast_down - walk_in_place_fastest_up + walk_in_place_faster_up step_end ContestHall_Movement_Player1ApproachForPrize: diff --git a/data/scripts/gabby_and_ty.inc b/data/scripts/gabby_and_ty.inc index baee6c96fd74..68be27a0287a 100644 --- a/data/scripts/gabby_and_ty.inc +++ b/data/scripts/gabby_and_ty.inc @@ -217,13 +217,13 @@ GabbyAndTy_EventScript_FacePlayerNorth:: GabbyAndTy_EventScript_FacePlayerSouth:: applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceUp - applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterUp waitmovement 0 return GabbyAndTy_EventScript_FacePlayerEast:: applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceLeft - applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return diff --git a/data/scripts/movement.inc b/data/scripts/movement.inc index 3f75d30dd4e0..383c014130cb 100644 --- a/data/scripts/movement.inc +++ b/data/scripts/movement.inc @@ -24,20 +24,20 @@ Common_Movement_FaceOriginalDirection: face_original_direction step_end -Common_Movement_WalkInPlaceFastestLeft: - walk_in_place_fastest_left +Common_Movement_WalkInPlaceFasterLeft: + walk_in_place_faster_left step_end -Common_Movement_WalkInPlaceFastestUp: - walk_in_place_fastest_up +Common_Movement_WalkInPlaceFasterUp: + walk_in_place_faster_up step_end -Common_Movement_WalkInPlaceFastestRight: - walk_in_place_fastest_right +Common_Movement_WalkInPlaceFasterRight: + walk_in_place_faster_right step_end -Common_Movement_WalkInPlaceFastestDown: - walk_in_place_fastest_down +Common_Movement_WalkInPlaceFasterDown: + walk_in_place_faster_down step_end Common_Movement_FaceRight: diff --git a/data/scripts/pkmn_center_nurse.inc b/data/scripts/pkmn_center_nurse.inc index 7797b306154a..21f2abe0a20a 100644 --- a/data/scripts/pkmn_center_nurse.inc +++ b/data/scripts/pkmn_center_nurse.inc @@ -38,11 +38,11 @@ EventScript_PkmnCenterNurse_IllTakeYourPkmn2:: return EventScript_PkmnCenterNurse_TakeAndHealPkmn:: - applymovement VAR_0x800B, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 dofieldeffect FLDEFF_POKECENTER_HEAL waitfieldeffect FLDEFF_POKECENTER_HEAL - applymovement VAR_0x800B, Common_Movement_WalkInPlaceFastestDown + applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterDown waitmovement 0 special HealPlayerParty return diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index e7e862039ad0..571b61e62fed 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -19,18 +19,18 @@ PlayersHouse_1F_EventScript_EnterHouseMovingIn:: closemessage setvar VAR_LITTLEROOT_INTRO_STATE, 4 applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerWalkIn - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -41,7 +41,7 @@ PlayersHouse_1F_Movement_PlayerWalkIn: PlayersHouse_1F_EventScript_MomGoSeeRoom:: msgbox PlayersHouse_1F_Text_ArentYouInterestedInRoom, MSGBOX_DEFAULT closemessage - applymovement VAR_0x8004, Common_Movement_WalkInPlaceFastestUp + applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_MovePlayerAwayFromDoor waitmovement 0 releaseall @@ -83,7 +83,7 @@ PlayersHouse_2F_EventScript_MomComesUpstairsMale:: addobject VAR_0x8008 applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersMale waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox PlayersHouse_2F_Text_HowDoYouLikeYourRoom, MSGBOX_DEFAULT closemessage @@ -96,7 +96,7 @@ PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: addobject VAR_0x8008 applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersFemale waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox PlayersHouse_2F_Text_HowDoYouLikeYourRoom, MSGBOX_DEFAULT closemessage @@ -121,7 +121,7 @@ PlayersHouse_2F_EventScript_SetWallClock:: PlayersHouse_2F_Movement_MomEntersMale: delay_8 walk_down - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_8 walk_left @@ -136,7 +136,7 @@ PlayersHouse_2F_Movement_MomExitsMale: PlayersHouse_2F_Movement_MomEntersFemale: delay_8 walk_down - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_8 walk_right @@ -154,7 +154,7 @@ PlayersHouse_1F_EventScript_SetWatchedBroadcast:: end PlayersHouse_1F_EventScript_PetalburgGymReportMale:: - applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterRight waitmovement 0 call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymMale @@ -167,7 +167,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportMale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVMale waitmovement 0 call PlayersHouse_1F_EventScript_WatchGymBroadcast - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 msgbox PlayersHouse_1F_Text_ItsOverWeMissedHim, MSGBOX_DEFAULT msgbox PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor, MSGBOX_DEFAULT @@ -179,7 +179,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportMale:: end PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: - applymovement VAR_0x8005, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale @@ -192,7 +192,7 @@ PlayersHouse_1F_EventScript_PetalburgGymReportFemale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVFemale waitmovement 0 call PlayersHouse_1F_EventScript_WatchGymBroadcast - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 msgbox PlayersHouse_1F_Text_ItsOverWeMissedHim, MSGBOX_DEFAULT msgbox PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor, MSGBOX_DEFAULT @@ -214,7 +214,7 @@ PlayersHouse_1F_EventScript_MomNoticeGymBroadcast:: return PlayersHouse_1F_EventScript_WatchGymBroadcast:: - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestUp + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox PlayersHouse_1F_Text_ReportFromPetalburgGym, MSGBOX_DEFAULT fadedefaultbgm @@ -230,7 +230,7 @@ PlayersHouse_1F_Movement_MomApproachDadMale: walk_right walk_right walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end PlayersHouse_1F_Movement_MomApproachDadFemale: @@ -240,7 +240,7 @@ PlayersHouse_1F_Movement_MomApproachDadFemale: walk_left walk_left walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end PlayersHouse_1F_Movement_MomApproachPlayerMale: @@ -252,23 +252,23 @@ PlayersHouse_1F_Movement_MomApproachPlayerFemale: step_end PlayersHouse_1F_Movement_MomNoticesLatiBroadcastMale: - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 delay_16 delay_16 - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 step_end PlayersHouse_1F_Movement_MomNoticesLatiBroadcastFemale: - walk_in_place_fastest_right + walk_in_place_faster_right delay_16 delay_16 delay_16 delay_16 - walk_in_place_fastest_left + walk_in_place_faster_left delay_16 delay_16 step_end @@ -287,24 +287,24 @@ PlayersHouse_1F_Movement_MomApproachPlayerAfterTVFemale: PlayersHouse_1F_Movement_MomMakeRoomToSeeTVMale: walk_left - walk_in_place_fastest_right + walk_in_place_faster_right step_end PlayersHouse_1F_Movement_MomMakeRoomToSeeTVFemale: walk_right - walk_in_place_fastest_left + walk_in_place_faster_left step_end PlayersHouse_1F_Movement_MomReturnToSeatMale: walk_left walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end PlayersHouse_1F_Movement_MomReturnToSeatFemale: walk_right walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end PlayersHouse_1F_EventScript_Mom:: @@ -580,28 +580,28 @@ PlayersHouse_1F_EventScript_PlayerEnterRoomFemale:: PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale waitmovement 0 - applymovement VAR_0x800A, Common_Movement_WalkInPlaceFastestLeft + applymovement VAR_0x800A, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale:: applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale waitmovement 0 - applymovement VAR_0x800A, Common_Movement_WalkInPlaceFastestRight + applymovement VAR_0x800A, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return PlayersHouse_1F_EventScript_MomApproachPlayerMale:: applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerMale waitmovement 0 - applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -618,14 +618,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_WalkInPlaceFastestRight + applymovement OBJ_EVENT_ID_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_WalkInPlaceFastestLeft + applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -666,14 +666,14 @@ PlayersHouse_1F_Movement_PlayerEnterRoomMale: walk_down walk_down walk_down - walk_in_place_fastest_left + walk_in_place_faster_left step_end PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit: delay_8 delay_16 delay_16 - walk_in_place_fastest_down + walk_in_place_faster_down step_end PlayersHouse_1F_Movement_PlayerEnterRoomFemale: @@ -681,7 +681,7 @@ PlayersHouse_1F_Movement_PlayerEnterRoomFemale: walk_down walk_down walk_down - walk_in_place_fastest_right + walk_in_place_faster_right step_end PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale: @@ -690,7 +690,7 @@ PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale: walk_left walk_left walk_left - walk_in_place_fastest_up + walk_in_place_faster_up step_end PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale: @@ -699,7 +699,7 @@ PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale: walk_right walk_right walk_right - walk_in_place_fastest_up + walk_in_place_faster_up step_end EventScript_RunningShoesManual:: From e65677c944b786c8f94adc8c962b7ee180bfe548 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 4 Nov 2021 17:28:41 -0400 Subject: [PATCH 384/762] Update modern linker script --- include/crt0.h | 5 ----- ld_script_modern.txt | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/include/crt0.h b/include/crt0.h index 3121eeaedbd8..a4a5c7f79bc5 100644 --- a/include/crt0.h +++ b/include/crt0.h @@ -1,11 +1,6 @@ #ifndef GUARD_CRT0_H #define GUARD_CRT0_H -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations extern u32 IntrMain[]; #endif //GUARD_CRT0_H diff --git a/ld_script_modern.txt b/ld_script_modern.txt index c5c711bfdb47..ac62abe2768a 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -47,7 +47,7 @@ SECTIONS { .text : ALIGN(4) { - src/crt0.o(.text*); + src/rom_header.o(.text*); src/*.o(.text*); gflib/*.o(.text*); asm/*.o(.text*); From 6e49b45eb63c26854a05f9b0aae25254f9833fbd Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 5 Nov 2021 21:58:13 +0000 Subject: [PATCH 385/762] Use relevant constants for BlendPalettes --- src/diploma.c | 2 +- src/start_menu.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/diploma.c b/src/diploma.c index ffb1447eb8d6..e1c292b541fb 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -83,7 +83,7 @@ void CB2_ShowDiploma(void) LZDecompressWram(sDiplomaTilemap, sDiplomaTilemapPtr); CopyBgTilemapBufferToVram(1); DisplayDiplomaText(); - BlendPalettes(-1, 16, 0); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); EnableInterrupts(1); SetVBlankCallback(VBlankCB); diff --git a/src/start_menu.c b/src/start_menu.c index dcff75ff6000..7fc4c6ddba4e 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -1200,7 +1200,7 @@ static bool32 InitSaveWindowAfterLinkBattle(u8 *state) break; case 3: ShowBg(0); - BlendPalettes(-1, 16, 0); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); SetVBlankCallback(VBlankCB_LinkBattleSave); EnableInterrupts(1); break; From abab6cef098601c32dac909e17a8e9456b71bd81 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 6 Nov 2021 11:42:34 -0400 Subject: [PATCH 386/762] Label remaining m4a functions --- src/m4a_1.s | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/m4a_1.s b/src/m4a_1.s index 62b913c8633c..f71a5546e4e5 100644 --- a/src/m4a_1.s +++ b/src/m4a_1.s @@ -302,7 +302,7 @@ _081DD044: ldrb r0, [r4, o_SoundChannel_type] tst r0, TONEDATA_TYPE_CMP | TONEDATA_TYPE_REV beq _081DD068 - bl sub_82DF49C + bl SoundMainRAM_Unk1 b _081DD228 _081DD068: mov r10, r10, lsl 16 @@ -465,8 +465,9 @@ _081DD25E: .pool thumb_func_end SoundMainRAM - arm_func_start sub_82DF49C -sub_82DF49C: +@ Not present in GBA SDK 3.0 + arm_func_start SoundMainRAM_Unk1 +SoundMainRAM_Unk1: ldr r6, [r4, o_SoundChannel_wav] ldrb r0, [r4, o_SoundChannel_statusFlags] tst r0, SOUND_CHANNEL_SF_SPECIAL @@ -505,10 +506,10 @@ _081DD2B4: ldrb r0, [r4, o_SoundChannel_type] tst r0, TONEDATA_TYPE_REV bne _081DD3C0 - bl sub_82DF758 + bl SoundMainRAM_Unk2 mov r0, r1 add r3, r3, 0x1 - bl sub_82DF758 + bl SoundMainRAM_Unk2 sub r1, r1, r0 _081DD308: ldr r6, [r5] @@ -534,11 +535,11 @@ _081DD310: b _081DD364 _081DD358: add r3, r3, lr - bl sub_82DF758 + bl SoundMainRAM_Unk2 mov r0, r1 _081DD364: add r3, r3, 0x1 - bl sub_82DF758 + bl SoundMainRAM_Unk2 sub r1, r1, r0 _081DD370: adds r5, r5, 0x40000000 @@ -565,10 +566,10 @@ _081DD3B0: b _081DD3B0 _081DD3C0: sub r3, r3, 0x1 - bl sub_82DF758 + bl SoundMainRAM_Unk2 mov r0, r1 sub r3, r3, 0x1 - bl sub_82DF758 + bl SoundMainRAM_Unk2 sub r1, r1, r0 _081DD3D8: ldr r6, [r5] @@ -594,11 +595,11 @@ _081DD3E0: b _081DD434 _081DD428: sub r3, r3, lr - bl sub_82DF758 + bl SoundMainRAM_Unk2 mov r0, r1 _081DD434: sub r3, r3, 0x1 - bl sub_82DF758 + bl SoundMainRAM_Unk2 sub r1, r1, r0 _081DD440: adds r5, r5, 0x40000000 @@ -663,10 +664,11 @@ _081DD4F4: str r7, [r5, 0x630] str r6, [r5], 0x4 pop {r8,r12,pc} - arm_func_end sub_82DF49C + arm_func_end SoundMainRAM_Unk1 - arm_func_start sub_82DF758 -sub_82DF758: +@ Not present in GBA SDK 3.0 + arm_func_start SoundMainRAM_Unk2 +SoundMainRAM_Unk2: push {r0,r2,r5-r7,lr} mov r0, r3, lsr 6 ldr r1, [r4, o_SoundChannel_xpi] @@ -704,7 +706,7 @@ _081DD594: ldrsb r1, [r5, r0] pop {r0,r2,r5-r7,pc} .pool - arm_func_end sub_82DF758 + arm_func_end SoundMainRAM_Unk2 thumb_func_start SoundMainBTM SoundMainBTM: From 44295261b0839a521168aca379f66c9ce7d01282 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 6 Nov 2021 12:07:42 -0400 Subject: [PATCH 387/762] Give programmable wave samples generic names --- sound/programmable_wave_data.inc | 104 +++++++++--------- .../{86B4830.pcm => 01.pcm} | 0 .../{86B4840.pcm => 02.pcm} | 0 .../{86B4850.pcm => 03.pcm} | 0 .../{86B4860.pcm => 04.pcm} | 0 .../{86B4870.pcm => 05.pcm} | 0 .../{86B4880.pcm => 06.pcm} | 0 .../{86B4890.pcm => 07.pcm} | Bin .../{86B48A0.pcm => 08.pcm} | Bin .../{86B48B0.pcm => 09.pcm} | Bin .../{86B48C0.pcm => 10.pcm} | 0 .../{86B48D0.pcm => 11.pcm} | 0 .../{86B48E0.pcm => 12.pcm} | 0 .../{86B48F0.pcm => 13.pcm} | 0 .../{86B4900.pcm => 14.pcm} | 0 .../{86B4910.pcm => 15.pcm} | Bin .../{86B4920.pcm => 16.pcm} | 0 .../{unused_86B4930.pcm => 17.pcm} | 0 .../{unused_86B4940.pcm => 18.pcm} | 0 .../{unused_86B4950.pcm => 19.pcm} | 0 .../{unused_86B4960.pcm => 20.pcm} | 0 .../{86B4970.pcm => 21.pcm} | 0 .../{86B4980.pcm => 22.pcm} | 0 .../{86B4990.pcm => 23.pcm} | Bin .../{86B49A0.pcm => 24.pcm} | Bin .../{86B49B0.pcm => 25.pcm} | Bin sound/voicegroups/voicegroup001.inc | 4 +- sound/voicegroups/voicegroup010.inc | 2 +- sound/voicegroups/voicegroup011.inc | 2 +- sound/voicegroups/voicegroup012.inc | 4 +- sound/voicegroups/voicegroup013.inc | 2 +- sound/voicegroups/voicegroup014.inc | 4 +- sound/voicegroups/voicegroup015.inc | 4 +- sound/voicegroups/voicegroup017.inc | 6 +- sound/voicegroups/voicegroup018.inc | 2 +- sound/voicegroups/voicegroup019.inc | 2 +- sound/voicegroups/voicegroup022.inc | 8 +- sound/voicegroups/voicegroup023.inc | 2 +- sound/voicegroups/voicegroup024.inc | 6 +- sound/voicegroups/voicegroup025.inc | 2 +- sound/voicegroups/voicegroup026.inc | 2 +- sound/voicegroups/voicegroup027.inc | 4 +- sound/voicegroups/voicegroup028.inc | 2 +- sound/voicegroups/voicegroup029.inc | 2 +- sound/voicegroups/voicegroup031.inc | 2 +- sound/voicegroups/voicegroup032.inc | 4 +- sound/voicegroups/voicegroup034.inc | 2 +- sound/voicegroups/voicegroup035.inc | 4 +- sound/voicegroups/voicegroup036.inc | 2 +- sound/voicegroups/voicegroup037.inc | 4 +- sound/voicegroups/voicegroup038.inc | 2 +- sound/voicegroups/voicegroup039.inc | 2 +- sound/voicegroups/voicegroup040.inc | 2 +- sound/voicegroups/voicegroup041.inc | 2 +- sound/voicegroups/voicegroup042.inc | 2 +- sound/voicegroups/voicegroup044.inc | 2 +- sound/voicegroups/voicegroup045.inc | 4 +- sound/voicegroups/voicegroup046.inc | 4 +- sound/voicegroups/voicegroup047.inc | 4 +- sound/voicegroups/voicegroup048.inc | 4 +- sound/voicegroups/voicegroup049.inc | 2 +- sound/voicegroups/voicegroup050.inc | 2 +- sound/voicegroups/voicegroup052.inc | 6 +- sound/voicegroups/voicegroup053.inc | 2 +- sound/voicegroups/voicegroup054.inc | 2 +- sound/voicegroups/voicegroup055.inc | 4 +- sound/voicegroups/voicegroup056.inc | 2 +- sound/voicegroups/voicegroup057.inc | 2 +- sound/voicegroups/voicegroup058.inc | 2 +- sound/voicegroups/voicegroup059.inc | 8 +- sound/voicegroups/voicegroup061.inc | 4 +- sound/voicegroups/voicegroup062.inc | 2 +- sound/voicegroups/voicegroup063.inc | 4 +- sound/voicegroups/voicegroup064.inc | 2 +- sound/voicegroups/voicegroup065.inc | 6 +- sound/voicegroups/voicegroup066.inc | 2 +- sound/voicegroups/voicegroup067.inc | 4 +- sound/voicegroups/voicegroup068.inc | 4 +- sound/voicegroups/voicegroup069.inc | 2 +- sound/voicegroups/voicegroup070.inc | 2 +- sound/voicegroups/voicegroup071.inc | 2 +- sound/voicegroups/voicegroup072.inc | 4 +- sound/voicegroups/voicegroup073.inc | 2 +- sound/voicegroups/voicegroup074.inc | 4 +- sound/voicegroups/voicegroup075.inc | 6 +- sound/voicegroups/voicegroup076.inc | 4 +- sound/voicegroups/voicegroup077.inc | 2 +- sound/voicegroups/voicegroup078.inc | 2 +- sound/voicegroups/voicegroup079.inc | 6 +- sound/voicegroups/voicegroup080.inc | 2 +- sound/voicegroups/voicegroup082.inc | 4 +- sound/voicegroups/voicegroup083.inc | 4 +- sound/voicegroups/voicegroup084.inc | 2 +- sound/voicegroups/voicegroup085.inc | 4 +- sound/voicegroups/voicegroup086.inc | 2 +- sound/voicegroups/voicegroup087.inc | 4 +- sound/voicegroups/voicegroup088.inc | 6 +- sound/voicegroups/voicegroup089.inc | 6 +- sound/voicegroups/voicegroup090.inc | 2 +- sound/voicegroups/voicegroup091.inc | 4 +- sound/voicegroups/voicegroup092.inc | 2 +- sound/voicegroups/voicegroup093.inc | 2 +- sound/voicegroups/voicegroup094.inc | 2 +- sound/voicegroups/voicegroup095.inc | 2 +- sound/voicegroups/voicegroup096.inc | 2 +- sound/voicegroups/voicegroup097.inc | 2 +- sound/voicegroups/voicegroup098.inc | 2 +- sound/voicegroups/voicegroup099.inc | 2 +- sound/voicegroups/voicegroup100.inc | 4 +- sound/voicegroups/voicegroup101.inc | 8 +- sound/voicegroups/voicegroup103.inc | 6 +- sound/voicegroups/voicegroup104.inc | 6 +- sound/voicegroups/voicegroup105.inc | 2 +- sound/voicegroups/voicegroup106.inc | 8 +- sound/voicegroups/voicegroup107.inc | 8 +- sound/voicegroups/voicegroup108.inc | 6 +- sound/voicegroups/voicegroup109.inc | 2 +- sound/voicegroups/voicegroup110.inc | 6 +- sound/voicegroups/voicegroup111.inc | 6 +- sound/voicegroups/voicegroup112.inc | 2 +- sound/voicegroups/voicegroup113.inc | 24 ++-- sound/voicegroups/voicegroup115.inc | 6 +- sound/voicegroups/voicegroup116.inc | 6 +- sound/voicegroups/voicegroup117.inc | 2 +- sound/voicegroups/voicegroup118.inc | 4 +- sound/voicegroups/voicegroup119.inc | 4 +- sound/voicegroups/voicegroup120.inc | 4 +- sound/voicegroups/voicegroup121.inc | 2 +- sound/voicegroups/voicegroup122.inc | 2 +- sound/voicegroups/voicegroup124.inc | 2 +- sound/voicegroups/voicegroup125.inc | 2 +- sound/voicegroups/voicegroup126.inc | 2 +- sound/voicegroups/voicegroup131.inc | 2 +- sound/voicegroups/voicegroup132.inc | 6 +- sound/voicegroups/voicegroup133.inc | 4 +- sound/voicegroups/voicegroup134.inc | 2 +- sound/voicegroups/voicegroup136.inc | 4 +- sound/voicegroups/voicegroup137.inc | 4 +- sound/voicegroups/voicegroup138.inc | 2 +- sound/voicegroups/voicegroup139.inc | 2 +- sound/voicegroups/voicegroup140.inc | 2 +- sound/voicegroups/voicegroup141.inc | 4 +- sound/voicegroups/voicegroup142.inc | 2 +- sound/voicegroups/voicegroup143.inc | 2 +- sound/voicegroups/voicegroup144.inc | 2 +- sound/voicegroups/voicegroup145.inc | 2 +- sound/voicegroups/voicegroup146.inc | 2 +- sound/voicegroups/voicegroup147.inc | 2 +- sound/voicegroups/voicegroup148.inc | 2 +- sound/voicegroups/voicegroup149.inc | 4 +- sound/voicegroups/voicegroup150.inc | 2 +- sound/voicegroups/voicegroup151.inc | 2 +- sound/voicegroups/voicegroup152.inc | 6 +- sound/voicegroups/voicegroup153.inc | 2 +- sound/voicegroups/voicegroup154.inc | 4 +- sound/voicegroups/voicegroup155.inc | 8 +- sound/voicegroups/voicegroup156.inc | 2 +- sound/voicegroups/voicegroup157.inc | 6 +- sound/voicegroups/voicegroup158.inc | 6 +- sound/voicegroups/voicegroup159.inc | 2 +- sound/voicegroups/voicegroup160.inc | 2 +- sound/voicegroups/voicegroup161.inc | 2 +- sound/voicegroups/voicegroup162.inc | 2 +- sound/voicegroups/voicegroup163.inc | 2 +- sound/voicegroups/voicegroup164.inc | 4 +- sound/voicegroups/voicegroup165.inc | 2 +- sound/voicegroups/voicegroup166.inc | 4 +- sound/voicegroups/voicegroup167.inc | 2 +- sound/voicegroups/voicegroup168.inc | 2 +- sound/voicegroups/voicegroup169.inc | 2 +- sound/voicegroups/voicegroup170.inc | 2 +- sound/voicegroups/voicegroup171.inc | 6 +- sound/voicegroups/voicegroup172.inc | 2 +- sound/voicegroups/voicegroup173.inc | 2 +- sound/voicegroups/voicegroup174.inc | 6 +- sound/voicegroups/voicegroup176.inc | 2 +- sound/voicegroups/voicegroup178.inc | 2 +- sound/voicegroups/voicegroup179.inc | 2 +- sound/voicegroups/voicegroup180.inc | 2 +- sound/voicegroups/voicegroup182.inc | 2 +- sound/voicegroups/voicegroup183.inc | 2 +- sound/voicegroups/voicegroup184.inc | 2 +- sound/voicegroups/voicegroup185.inc | 6 +- sound/voicegroups/voicegroup187.inc | 2 +- sound/voicegroups/voicegroup188.inc | 2 +- sound/voicegroups/voicegroup190.inc | 2 +- 186 files changed, 324 insertions(+), 320 deletions(-) rename sound/programmable_wave_samples/{86B4830.pcm => 01.pcm} (100%) rename sound/programmable_wave_samples/{86B4840.pcm => 02.pcm} (100%) rename sound/programmable_wave_samples/{86B4850.pcm => 03.pcm} (100%) rename sound/programmable_wave_samples/{86B4860.pcm => 04.pcm} (100%) rename sound/programmable_wave_samples/{86B4870.pcm => 05.pcm} (100%) rename sound/programmable_wave_samples/{86B4880.pcm => 06.pcm} (100%) rename sound/programmable_wave_samples/{86B4890.pcm => 07.pcm} (100%) rename sound/programmable_wave_samples/{86B48A0.pcm => 08.pcm} (100%) rename sound/programmable_wave_samples/{86B48B0.pcm => 09.pcm} (100%) rename sound/programmable_wave_samples/{86B48C0.pcm => 10.pcm} (100%) rename sound/programmable_wave_samples/{86B48D0.pcm => 11.pcm} (100%) rename sound/programmable_wave_samples/{86B48E0.pcm => 12.pcm} (100%) rename sound/programmable_wave_samples/{86B48F0.pcm => 13.pcm} (100%) rename sound/programmable_wave_samples/{86B4900.pcm => 14.pcm} (100%) rename sound/programmable_wave_samples/{86B4910.pcm => 15.pcm} (100%) rename sound/programmable_wave_samples/{86B4920.pcm => 16.pcm} (100%) rename sound/programmable_wave_samples/{unused_86B4930.pcm => 17.pcm} (100%) rename sound/programmable_wave_samples/{unused_86B4940.pcm => 18.pcm} (100%) rename sound/programmable_wave_samples/{unused_86B4950.pcm => 19.pcm} (100%) rename sound/programmable_wave_samples/{unused_86B4960.pcm => 20.pcm} (100%) rename sound/programmable_wave_samples/{86B4970.pcm => 21.pcm} (100%) rename sound/programmable_wave_samples/{86B4980.pcm => 22.pcm} (100%) rename sound/programmable_wave_samples/{86B4990.pcm => 23.pcm} (100%) rename sound/programmable_wave_samples/{86B49A0.pcm => 24.pcm} (100%) rename sound/programmable_wave_samples/{86B49B0.pcm => 25.pcm} (100%) diff --git a/sound/programmable_wave_data.inc b/sound/programmable_wave_data.inc index 45da43b00148..3e354d88a592 100644 --- a/sound/programmable_wave_data.inc +++ b/sound/programmable_wave_data.inc @@ -1,74 +1,78 @@ -ProgrammableWaveData_86B4830:: - .incbin "sound/programmable_wave_samples/86B4830.pcm" +ProgrammableWaveData_1:: + .incbin "sound/programmable_wave_samples/01.pcm" -ProgrammableWaveData_86B4840:: - .incbin "sound/programmable_wave_samples/86B4840.pcm" +ProgrammableWaveData_2:: + .incbin "sound/programmable_wave_samples/02.pcm" -ProgrammableWaveData_86B4850:: - .incbin "sound/programmable_wave_samples/86B4850.pcm" +ProgrammableWaveData_3:: + .incbin "sound/programmable_wave_samples/03.pcm" -ProgrammableWaveData_86B4860:: - .incbin "sound/programmable_wave_samples/86B4860.pcm" +ProgrammableWaveData_4:: + .incbin "sound/programmable_wave_samples/04.pcm" -ProgrammableWaveData_86B4870:: - .incbin "sound/programmable_wave_samples/86B4870.pcm" +ProgrammableWaveData_5:: + .incbin "sound/programmable_wave_samples/05.pcm" -ProgrammableWaveData_86B4880:: - .incbin "sound/programmable_wave_samples/86B4880.pcm" +ProgrammableWaveData_6:: + .incbin "sound/programmable_wave_samples/06.pcm" -ProgrammableWaveData_86B4890:: - .incbin "sound/programmable_wave_samples/86B4890.pcm" +ProgrammableWaveData_7:: + .incbin "sound/programmable_wave_samples/07.pcm" -ProgrammableWaveData_86B48A0:: - .incbin "sound/programmable_wave_samples/86B48A0.pcm" +ProgrammableWaveData_8:: + .incbin "sound/programmable_wave_samples/08.pcm" -ProgrammableWaveData_86B48B0:: - .incbin "sound/programmable_wave_samples/86B48B0.pcm" +ProgrammableWaveData_9:: + .incbin "sound/programmable_wave_samples/09.pcm" -ProgrammableWaveData_86B48C0:: - .incbin "sound/programmable_wave_samples/86B48C0.pcm" +ProgrammableWaveData_10:: + .incbin "sound/programmable_wave_samples/10.pcm" -ProgrammableWaveData_86B48D0:: - .incbin "sound/programmable_wave_samples/86B48D0.pcm" +ProgrammableWaveData_11:: + .incbin "sound/programmable_wave_samples/11.pcm" -ProgrammableWaveData_86B48E0:: - .incbin "sound/programmable_wave_samples/86B48E0.pcm" +ProgrammableWaveData_12:: + .incbin "sound/programmable_wave_samples/12.pcm" -ProgrammableWaveData_86B48F0:: - .incbin "sound/programmable_wave_samples/86B48F0.pcm" +ProgrammableWaveData_13:: + .incbin "sound/programmable_wave_samples/13.pcm" -ProgrammableWaveData_86B4900:: - .incbin "sound/programmable_wave_samples/86B4900.pcm" +ProgrammableWaveData_14:: + .incbin "sound/programmable_wave_samples/14.pcm" -ProgrammableWaveData_86B4910:: - .incbin "sound/programmable_wave_samples/86B4910.pcm" +ProgrammableWaveData_15:: + .incbin "sound/programmable_wave_samples/15.pcm" -ProgrammableWaveData_86B4920:: - .incbin "sound/programmable_wave_samples/86B4920.pcm" +ProgrammableWaveData_16:: + .incbin "sound/programmable_wave_samples/16.pcm" -ProgrammableWaveData_Unused_86B4930:: - .incbin "sound/programmable_wave_samples/unused_86B4930.pcm" +@ Unused +ProgrammableWaveData_17:: + .incbin "sound/programmable_wave_samples/17.pcm" -ProgrammableWaveData_Unused_86B4940:: - .incbin "sound/programmable_wave_samples/unused_86B4940.pcm" +@ Unused +ProgrammableWaveData_18:: + .incbin "sound/programmable_wave_samples/18.pcm" -ProgrammableWaveData_Unused_86B4950:: - .incbin "sound/programmable_wave_samples/unused_86B4950.pcm" +@ Unused +ProgrammableWaveData_19:: + .incbin "sound/programmable_wave_samples/19.pcm" -ProgrammableWaveData_Unused_86B4960:: - .incbin "sound/programmable_wave_samples/unused_86B4960.pcm" +@ Unused +ProgrammableWaveData_20:: + .incbin "sound/programmable_wave_samples/20.pcm" -ProgrammableWaveData_86B4970:: - .incbin "sound/programmable_wave_samples/86B4970.pcm" +ProgrammableWaveData_21:: + .incbin "sound/programmable_wave_samples/21.pcm" -ProgrammableWaveData_86B4980:: - .incbin "sound/programmable_wave_samples/86B4980.pcm" +ProgrammableWaveData_22:: + .incbin "sound/programmable_wave_samples/22.pcm" -ProgrammableWaveData_86B4990:: - .incbin "sound/programmable_wave_samples/86B4990.pcm" +ProgrammableWaveData_23:: + .incbin "sound/programmable_wave_samples/23.pcm" -ProgrammableWaveData_86B49A0:: - .incbin "sound/programmable_wave_samples/86B49A0.pcm" +ProgrammableWaveData_24:: + .incbin "sound/programmable_wave_samples/24.pcm" -ProgrammableWaveData_86B49B0:: - .incbin "sound/programmable_wave_samples/86B49B0.pcm" +ProgrammableWaveData_25:: + .incbin "sound/programmable_wave_samples/25.pcm" diff --git a/sound/programmable_wave_samples/86B4830.pcm b/sound/programmable_wave_samples/01.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4830.pcm rename to sound/programmable_wave_samples/01.pcm diff --git a/sound/programmable_wave_samples/86B4840.pcm b/sound/programmable_wave_samples/02.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4840.pcm rename to sound/programmable_wave_samples/02.pcm diff --git a/sound/programmable_wave_samples/86B4850.pcm b/sound/programmable_wave_samples/03.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4850.pcm rename to sound/programmable_wave_samples/03.pcm diff --git a/sound/programmable_wave_samples/86B4860.pcm b/sound/programmable_wave_samples/04.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4860.pcm rename to sound/programmable_wave_samples/04.pcm diff --git a/sound/programmable_wave_samples/86B4870.pcm b/sound/programmable_wave_samples/05.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4870.pcm rename to sound/programmable_wave_samples/05.pcm diff --git a/sound/programmable_wave_samples/86B4880.pcm b/sound/programmable_wave_samples/06.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4880.pcm rename to sound/programmable_wave_samples/06.pcm diff --git a/sound/programmable_wave_samples/86B4890.pcm b/sound/programmable_wave_samples/07.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4890.pcm rename to sound/programmable_wave_samples/07.pcm diff --git a/sound/programmable_wave_samples/86B48A0.pcm b/sound/programmable_wave_samples/08.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48A0.pcm rename to sound/programmable_wave_samples/08.pcm diff --git a/sound/programmable_wave_samples/86B48B0.pcm b/sound/programmable_wave_samples/09.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48B0.pcm rename to sound/programmable_wave_samples/09.pcm diff --git a/sound/programmable_wave_samples/86B48C0.pcm b/sound/programmable_wave_samples/10.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48C0.pcm rename to sound/programmable_wave_samples/10.pcm diff --git a/sound/programmable_wave_samples/86B48D0.pcm b/sound/programmable_wave_samples/11.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48D0.pcm rename to sound/programmable_wave_samples/11.pcm diff --git a/sound/programmable_wave_samples/86B48E0.pcm b/sound/programmable_wave_samples/12.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48E0.pcm rename to sound/programmable_wave_samples/12.pcm diff --git a/sound/programmable_wave_samples/86B48F0.pcm b/sound/programmable_wave_samples/13.pcm similarity index 100% rename from sound/programmable_wave_samples/86B48F0.pcm rename to sound/programmable_wave_samples/13.pcm diff --git a/sound/programmable_wave_samples/86B4900.pcm b/sound/programmable_wave_samples/14.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4900.pcm rename to sound/programmable_wave_samples/14.pcm diff --git a/sound/programmable_wave_samples/86B4910.pcm b/sound/programmable_wave_samples/15.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4910.pcm rename to sound/programmable_wave_samples/15.pcm diff --git a/sound/programmable_wave_samples/86B4920.pcm b/sound/programmable_wave_samples/16.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4920.pcm rename to sound/programmable_wave_samples/16.pcm diff --git a/sound/programmable_wave_samples/unused_86B4930.pcm b/sound/programmable_wave_samples/17.pcm similarity index 100% rename from sound/programmable_wave_samples/unused_86B4930.pcm rename to sound/programmable_wave_samples/17.pcm diff --git a/sound/programmable_wave_samples/unused_86B4940.pcm b/sound/programmable_wave_samples/18.pcm similarity index 100% rename from sound/programmable_wave_samples/unused_86B4940.pcm rename to sound/programmable_wave_samples/18.pcm diff --git a/sound/programmable_wave_samples/unused_86B4950.pcm b/sound/programmable_wave_samples/19.pcm similarity index 100% rename from sound/programmable_wave_samples/unused_86B4950.pcm rename to sound/programmable_wave_samples/19.pcm diff --git a/sound/programmable_wave_samples/unused_86B4960.pcm b/sound/programmable_wave_samples/20.pcm similarity index 100% rename from sound/programmable_wave_samples/unused_86B4960.pcm rename to sound/programmable_wave_samples/20.pcm diff --git a/sound/programmable_wave_samples/86B4970.pcm b/sound/programmable_wave_samples/21.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4970.pcm rename to sound/programmable_wave_samples/21.pcm diff --git a/sound/programmable_wave_samples/86B4980.pcm b/sound/programmable_wave_samples/22.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4980.pcm rename to sound/programmable_wave_samples/22.pcm diff --git a/sound/programmable_wave_samples/86B4990.pcm b/sound/programmable_wave_samples/23.pcm similarity index 100% rename from sound/programmable_wave_samples/86B4990.pcm rename to sound/programmable_wave_samples/23.pcm diff --git a/sound/programmable_wave_samples/86B49A0.pcm b/sound/programmable_wave_samples/24.pcm similarity index 100% rename from sound/programmable_wave_samples/86B49A0.pcm rename to sound/programmable_wave_samples/24.pcm diff --git a/sound/programmable_wave_samples/86B49B0.pcm b/sound/programmable_wave_samples/25.pcm similarity index 100% rename from sound/programmable_wave_samples/86B49B0.pcm rename to sound/programmable_wave_samples/25.pcm diff --git a/sound/voicegroups/voicegroup001.inc b/sound/voicegroups/voicegroup001.inc index 9960daf4a91a..20a2795dc1c3 100644 --- a/sound/voicegroups/voicegroup001.inc +++ b/sound/voicegroups/voicegroup001.inc @@ -11,7 +11,7 @@ voicegroup001:: voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -19,7 +19,7 @@ voicegroup001:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 6, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 voice_square_2 60, 0, 3, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup010.inc b/sound/voicegroups/voicegroup010.inc index e2b38fcbd232..8d0f7a56dd93 100644 --- a/sound/voicegroups/voicegroup010.inc +++ b/sound/voicegroups/voicegroup010.inc @@ -81,7 +81,7 @@ voicegroup010:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup011.inc b/sound/voicegroups/voicegroup011.inc index a8655cb8c915..5527cc3698c2 100644 --- a/sound/voicegroups/voicegroup011.inc +++ b/sound/voicegroups/voicegroup011.inc @@ -74,7 +74,7 @@ voicegroup011:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup012.inc b/sound/voicegroups/voicegroup012.inc index d92c270cbb56..2fe7cf818009 100644 --- a/sound/voicegroups/voicegroup012.inc +++ b/sound/voicegroups/voicegroup012.inc @@ -87,8 +87,8 @@ voicegroup012:: voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 1, 4, 1 diff --git a/sound/voicegroups/voicegroup013.inc b/sound/voicegroups/voicegroup013.inc index f17ad599a01f..f99c6f3cdc6f 100644 --- a/sound/voicegroups/voicegroup013.inc +++ b/sound/voicegroups/voicegroup013.inc @@ -87,7 +87,7 @@ voicegroup013:: voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup014.inc b/sound/voicegroups/voicegroup014.inc index c3136f2fd2a9..6ce0897d103d 100644 --- a/sound/voicegroups/voicegroup014.inc +++ b/sound/voicegroups/voicegroup014.inc @@ -81,8 +81,8 @@ voicegroup014:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 diff --git a/sound/voicegroups/voicegroup015.inc b/sound/voicegroups/voicegroup015.inc index 81e200180e31..a5284763561c 100644 --- a/sound/voicegroups/voicegroup015.inc +++ b/sound/voicegroups/voicegroup015.inc @@ -74,14 +74,14 @@ voicegroup015:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup017.inc b/sound/voicegroups/voicegroup017.inc index f963fb77e835..06738d297b25 100644 --- a/sound/voicegroups/voicegroup017.inc +++ b/sound/voicegroups/voicegroup017.inc @@ -74,18 +74,18 @@ voicegroup017:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 1, 1, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 voice_square_1_alt 60, 0, 0, 2, 1, 1, 7, 2 voice_square_2_alt 60, 0, 3, 1, 1, 7, 2 voice_square_1_alt 60, 0, 0, 3, 1, 1, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 3 voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 2 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 2 voice_square_2_alt 60, 0, 1, 1, 2, 6, 2 diff --git a/sound/voicegroups/voicegroup018.inc b/sound/voicegroups/voicegroup018.inc index 0364349f04a0..30b63bb26eb7 100644 --- a/sound/voicegroups/voicegroup018.inc +++ b/sound/voicegroups/voicegroup018.inc @@ -81,7 +81,7 @@ voicegroup018:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup019.inc b/sound/voicegroups/voicegroup019.inc index d15be40a14e7..a983659c3926 100644 --- a/sound/voicegroups/voicegroup019.inc +++ b/sound/voicegroups/voicegroup019.inc @@ -81,7 +81,7 @@ voicegroup019:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 2 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 1 voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 voice_square_1_alt 60, 0, 0, 1, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup022.inc b/sound/voicegroups/voicegroup022.inc index 2a1bba75d47f..877f57d6ce72 100644 --- a/sound/voicegroups/voicegroup022.inc +++ b/sound/voicegroups/voicegroup022.inc @@ -30,11 +30,11 @@ voicegroup022:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup023.inc b/sound/voicegroups/voicegroup023.inc index df0f663a79fe..eede8dc019c6 100644 --- a/sound/voicegroups/voicegroup023.inc +++ b/sound/voicegroups/voicegroup023.inc @@ -81,7 +81,7 @@ voicegroup023:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 voice_square_2_alt 60, 0, 2, 0, 1, 6, 1 voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 1 diff --git a/sound/voicegroups/voicegroup024.inc b/sound/voicegroups/voicegroup024.inc index d4e139704668..3806b462d633 100644 --- a/sound/voicegroups/voicegroup024.inc +++ b/sound/voicegroups/voicegroup024.inc @@ -81,7 +81,7 @@ voicegroup024:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @@ -89,6 +89,6 @@ voicegroup024:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup025.inc b/sound/voicegroups/voicegroup025.inc index 1be1beea6b98..3449629469c3 100644 --- a/sound/voicegroups/voicegroup025.inc +++ b/sound/voicegroups/voicegroup025.inc @@ -81,7 +81,7 @@ voicegroup025:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup026.inc b/sound/voicegroups/voicegroup026.inc index 5012411663fc..d18047d582f4 100644 --- a/sound/voicegroups/voicegroup026.inc +++ b/sound/voicegroups/voicegroup026.inc @@ -81,7 +81,7 @@ voicegroup026:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 9, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 9, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 diff --git a/sound/voicegroups/voicegroup027.inc b/sound/voicegroups/voicegroup027.inc index ef84f846ec19..517ee87d43a9 100644 --- a/sound/voicegroups/voicegroup027.inc +++ b/sound/voicegroups/voicegroup027.inc @@ -73,7 +73,7 @@ voicegroup027:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -81,7 +81,7 @@ voicegroup027:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup028.inc b/sound/voicegroups/voicegroup028.inc index 6d1071850d15..9af19f1879b0 100644 --- a/sound/voicegroups/voicegroup028.inc +++ b/sound/voicegroups/voicegroup028.inc @@ -81,6 +81,6 @@ voicegroup028:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 2, 0, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_2 60, 0, 3, 0, 4, 0, 0 diff --git a/sound/voicegroups/voicegroup029.inc b/sound/voicegroups/voicegroup029.inc index e65818f90f48..7c801afcb339 100644 --- a/sound/voicegroups/voicegroup029.inc +++ b/sound/voicegroups/voicegroup029.inc @@ -81,7 +81,7 @@ voicegroup029:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 0 voice_square_2_alt 60, 0, 3, 0, 1, 0, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup031.inc b/sound/voicegroups/voicegroup031.inc index a24251c78c35..178d7ec63dc8 100644 --- a/sound/voicegroups/voicegroup031.inc +++ b/sound/voicegroups/voicegroup031.inc @@ -26,7 +26,7 @@ voicegroup031:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup032.inc b/sound/voicegroups/voicegroup032.inc index f50eb844bab2..dc60bbdf3b29 100644 --- a/sound/voicegroups/voicegroup032.inc +++ b/sound/voicegroups/voicegroup032.inc @@ -74,14 +74,14 @@ voicegroup032:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup034.inc b/sound/voicegroups/voicegroup034.inc index 6dc04e97a69d..fe973b84c3fb 100644 --- a/sound/voicegroups/voicegroup034.inc +++ b/sound/voicegroups/voicegroup034.inc @@ -83,5 +83,5 @@ voicegroup034:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 2 + voice_programmable_wave 60, 0, ProgrammableWaveData_16, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup035.inc b/sound/voicegroups/voicegroup035.inc index 359a43a8c986..2c3ac4bddd99 100644 --- a/sound/voicegroups/voicegroup035.inc +++ b/sound/voicegroups/voicegroup035.inc @@ -81,8 +81,8 @@ voicegroup035:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 1 diff --git a/sound/voicegroups/voicegroup036.inc b/sound/voicegroups/voicegroup036.inc index b3ef9cfbc7eb..c3d2df146c17 100644 --- a/sound/voicegroups/voicegroup036.inc +++ b/sound/voicegroups/voicegroup036.inc @@ -73,7 +73,7 @@ voicegroup036:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup037.inc b/sound/voicegroups/voicegroup037.inc index d05a4c6e241c..057891c01b16 100644 --- a/sound/voicegroups/voicegroup037.inc +++ b/sound/voicegroups/voicegroup037.inc @@ -81,12 +81,12 @@ voicegroup037:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup038.inc b/sound/voicegroups/voicegroup038.inc index 61ecc67460a5..bcb211d6f59e 100644 --- a/sound/voicegroups/voicegroup038.inc +++ b/sound/voicegroups/voicegroup038.inc @@ -81,5 +81,5 @@ voicegroup038:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup039.inc b/sound/voicegroups/voicegroup039.inc index 887f238dc8d0..9e8d16df0b01 100644 --- a/sound/voicegroups/voicegroup039.inc +++ b/sound/voicegroups/voicegroup039.inc @@ -83,7 +83,7 @@ voicegroup039:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup040.inc b/sound/voicegroups/voicegroup040.inc index 4e523072a7db..f390cb3d85aa 100644 --- a/sound/voicegroups/voicegroup040.inc +++ b/sound/voicegroups/voicegroup040.inc @@ -83,7 +83,7 @@ voicegroup040:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup041.inc b/sound/voicegroups/voicegroup041.inc index 101a6ddb7bef..def4e46b00d6 100644 --- a/sound/voicegroups/voicegroup041.inc +++ b/sound/voicegroups/voicegroup041.inc @@ -83,7 +83,7 @@ voicegroup041:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup042.inc b/sound/voicegroups/voicegroup042.inc index 55fa84d60d67..1298ddbd52b6 100644 --- a/sound/voicegroups/voicegroup042.inc +++ b/sound/voicegroups/voicegroup042.inc @@ -83,7 +83,7 @@ voicegroup042:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup044.inc b/sound/voicegroups/voicegroup044.inc index 838f58fbded0..9a057754b352 100644 --- a/sound/voicegroups/voicegroup044.inc +++ b/sound/voicegroups/voicegroup044.inc @@ -80,5 +80,5 @@ voicegroup044:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup045.inc b/sound/voicegroups/voicegroup045.inc index 9647f7e4575b..2e2016e43909 100644 --- a/sound/voicegroups/voicegroup045.inc +++ b/sound/voicegroups/voicegroup045.inc @@ -4,10 +4,10 @@ voicegroup045:: voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 0, 2, 0, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 1, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 1, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_keysplit voicegroup005, KeySplitTable1 diff --git a/sound/voicegroups/voicegroup046.inc b/sound/voicegroups/voicegroup046.inc index e8165dcc6e94..f653241e35b5 100644 --- a/sound/voicegroups/voicegroup046.inc +++ b/sound/voicegroups/voicegroup046.inc @@ -1,10 +1,10 @@ .align 2 voicegroup046:: voice_keysplit voicegroup005, KeySplitTable1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 1, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 1, 12, 0 voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 216 voice_square_2_alt 60, 0, 1, 0, 2, 6, 3 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup047.inc b/sound/voicegroups/voicegroup047.inc index 80faa09c3c08..84fa9335a879 100644 --- a/sound/voicegroups/voicegroup047.inc +++ b/sound/voicegroups/voicegroup047.inc @@ -81,9 +81,9 @@ voicegroup047:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 1, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 1, 7, 15, 2 voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup048.inc b/sound/voicegroups/voicegroup048.inc index c81ebf39ff48..eeb5b682a38c 100644 --- a/sound/voicegroups/voicegroup048.inc +++ b/sound/voicegroups/voicegroup048.inc @@ -73,7 +73,7 @@ voicegroup048:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -84,7 +84,7 @@ voicegroup048:: voice_square_1_alt 60, 0, 0, 3, 0, 3, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 12, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 12, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 3 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 0, 0, 2, 4, 0 diff --git a/sound/voicegroups/voicegroup049.inc b/sound/voicegroups/voicegroup049.inc index 4ece4cb76abe..b6b0774cf3d7 100644 --- a/sound/voicegroups/voicegroup049.inc +++ b/sound/voicegroups/voicegroup049.inc @@ -83,7 +83,7 @@ voicegroup049:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 1, 7, 15, 0 voice_square_2_alt 60, 0, 2, 0, 2, 4, 2 voice_square_2_alt 60, 0, 1, 1, 3, 4, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup050.inc b/sound/voicegroups/voicegroup050.inc index 6f401b9593c8..6b45664eb0b6 100644 --- a/sound/voicegroups/voicegroup050.inc +++ b/sound/voicegroups/voicegroup050.inc @@ -83,7 +83,7 @@ voicegroup050:: voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup052.inc b/sound/voicegroups/voicegroup052.inc index ce6c19e3a027..438e2d5f1785 100644 --- a/sound/voicegroups/voicegroup052.inc +++ b/sound/voicegroups/voicegroup052.inc @@ -29,7 +29,7 @@ voicegroup052:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -82,9 +82,9 @@ voicegroup052:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 0, 1, 6, 1 voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 7, 6, 1 diff --git a/sound/voicegroups/voicegroup053.inc b/sound/voicegroups/voicegroup053.inc index f9c21afe3a21..e5f1a4d7e8e6 100644 --- a/sound/voicegroups/voicegroup053.inc +++ b/sound/voicegroups/voicegroup053.inc @@ -83,7 +83,7 @@ voicegroup053:: voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup054.inc b/sound/voicegroups/voicegroup054.inc index 4cd90843c486..ddd17ed99522 100644 --- a/sound/voicegroups/voicegroup054.inc +++ b/sound/voicegroups/voicegroup054.inc @@ -82,7 +82,7 @@ voicegroup054:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup055.inc b/sound/voicegroups/voicegroup055.inc index aa9f7d113918..9157030e8339 100644 --- a/sound/voicegroups/voicegroup055.inc +++ b/sound/voicegroups/voicegroup055.inc @@ -82,8 +82,8 @@ voicegroup055:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 0, 7, 15, 2 voice_square_2_alt 60, 0, 1, 1, 1, 4, 1 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup056.inc b/sound/voicegroups/voicegroup056.inc index 42f779100135..ec543b9b336a 100644 --- a/sound/voicegroups/voicegroup056.inc +++ b/sound/voicegroups/voicegroup056.inc @@ -87,7 +87,7 @@ voicegroup056:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup057.inc b/sound/voicegroups/voicegroup057.inc index 6bd58e87ebe6..391b7cf8bc3b 100644 --- a/sound/voicegroups/voicegroup057.inc +++ b/sound/voicegroups/voicegroup057.inc @@ -82,7 +82,7 @@ voicegroup057:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 1, 4, 10, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 1, 4, 10, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup058.inc b/sound/voicegroups/voicegroup058.inc index af043d943e1b..56dff5f5bbf5 100644 --- a/sound/voicegroups/voicegroup058.inc +++ b/sound/voicegroups/voicegroup058.inc @@ -75,7 +75,7 @@ voicegroup058:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup059.inc b/sound/voicegroups/voicegroup059.inc index f0c4d3415d31..5a45d437d3cd 100644 --- a/sound/voicegroups/voicegroup059.inc +++ b/sound/voicegroups/voicegroup059.inc @@ -5,8 +5,8 @@ voicegroup059:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 242 @@ -82,11 +82,11 @@ voicegroup059:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 6, 2 voice_square_2_alt 60, 0, 2, 0, 1, 6, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 1, 1, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup061.inc b/sound/voicegroups/voicegroup061.inc index af46400940c9..d73730ecbc41 100644 --- a/sound/voicegroups/voicegroup061.inc +++ b/sound/voicegroups/voicegroup061.inc @@ -83,8 +83,8 @@ voicegroup061:: voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup062.inc b/sound/voicegroups/voicegroup062.inc index d3745820e977..ad2e6cad7fe5 100644 --- a/sound/voicegroups/voicegroup062.inc +++ b/sound/voicegroups/voicegroup062.inc @@ -29,7 +29,7 @@ voicegroup062:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup063.inc b/sound/voicegroups/voicegroup063.inc index bd316ea2c55d..966ae2080917 100644 --- a/sound/voicegroups/voicegroup063.inc +++ b/sound/voicegroups/voicegroup063.inc @@ -83,8 +83,8 @@ voicegroup063:: voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup064.inc b/sound/voicegroups/voicegroup064.inc index e617f0ffd224..fa56af03ead3 100644 --- a/sound/voicegroups/voicegroup064.inc +++ b/sound/voicegroups/voicegroup064.inc @@ -82,7 +82,7 @@ voicegroup064:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup065.inc b/sound/voicegroups/voicegroup065.inc index d435a0a3063c..163bce0c7e7e 100644 --- a/sound/voicegroups/voicegroup065.inc +++ b/sound/voicegroups/voicegroup065.inc @@ -83,11 +83,11 @@ voicegroup065:: voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup066.inc b/sound/voicegroups/voicegroup066.inc index d5bffde63eab..af4a7f841044 100644 --- a/sound/voicegroups/voicegroup066.inc +++ b/sound/voicegroups/voicegroup066.inc @@ -82,7 +82,7 @@ voicegroup066:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 3 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup067.inc b/sound/voicegroups/voicegroup067.inc index dffd21a7060b..ed8ccef4f800 100644 --- a/sound/voicegroups/voicegroup067.inc +++ b/sound/voicegroups/voicegroup067.inc @@ -83,8 +83,8 @@ voicegroup067:: voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup068.inc b/sound/voicegroups/voicegroup068.inc index fc3f7246d84f..787ce997b7d2 100644 --- a/sound/voicegroups/voicegroup068.inc +++ b/sound/voicegroups/voicegroup068.inc @@ -83,8 +83,8 @@ voicegroup068:: voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup069.inc b/sound/voicegroups/voicegroup069.inc index 477fd538b4bf..26ea29405180 100644 --- a/sound/voicegroups/voicegroup069.inc +++ b/sound/voicegroups/voicegroup069.inc @@ -83,7 +83,7 @@ voicegroup069:: voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 3 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup070.inc b/sound/voicegroups/voicegroup070.inc index aaa40780283f..59a43180dfc0 100644 --- a/sound/voicegroups/voicegroup070.inc +++ b/sound/voicegroups/voicegroup070.inc @@ -83,7 +83,7 @@ voicegroup070:: voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup071.inc b/sound/voicegroups/voicegroup071.inc index c6c7414e3f32..a4cb9c721f84 100644 --- a/sound/voicegroups/voicegroup071.inc +++ b/sound/voicegroups/voicegroup071.inc @@ -83,7 +83,7 @@ voicegroup071:: voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup072.inc b/sound/voicegroups/voicegroup072.inc index 7c040a3e77ca..50fa4e4cfaa6 100644 --- a/sound/voicegroups/voicegroup072.inc +++ b/sound/voicegroups/voicegroup072.inc @@ -82,8 +82,8 @@ voicegroup072:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup073.inc b/sound/voicegroups/voicegroup073.inc index 9692cc87db81..b10ab81d1ae6 100644 --- a/sound/voicegroups/voicegroup073.inc +++ b/sound/voicegroups/voicegroup073.inc @@ -82,7 +82,7 @@ voicegroup073:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup074.inc b/sound/voicegroups/voicegroup074.inc index 5be06711b55f..1c3c67f8dcd5 100644 --- a/sound/voicegroups/voicegroup074.inc +++ b/sound/voicegroups/voicegroup074.inc @@ -82,12 +82,12 @@ voicegroup074:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 0 voice_square_2_alt 60, 0, 2, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup075.inc b/sound/voicegroups/voicegroup075.inc index 72b144a13a2f..86af71af4b81 100644 --- a/sound/voicegroups/voicegroup075.inc +++ b/sound/voicegroups/voicegroup075.inc @@ -82,10 +82,10 @@ voicegroup075:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 2, 3, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup076.inc b/sound/voicegroups/voicegroup076.inc index a4eadcef3f66..378a8ff66929 100644 --- a/sound/voicegroups/voicegroup076.inc +++ b/sound/voicegroups/voicegroup076.inc @@ -82,8 +82,8 @@ voicegroup076:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup077.inc b/sound/voicegroups/voicegroup077.inc index 08f0e5e389fe..994d9f411d2f 100644 --- a/sound/voicegroups/voicegroup077.inc +++ b/sound/voicegroups/voicegroup077.inc @@ -82,7 +82,7 @@ voicegroup077:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup078.inc b/sound/voicegroups/voicegroup078.inc index b6dba9dca12e..e3ef10feb73f 100644 --- a/sound/voicegroups/voicegroup078.inc +++ b/sound/voicegroups/voicegroup078.inc @@ -82,7 +82,7 @@ voicegroup078:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup079.inc b/sound/voicegroups/voicegroup079.inc index ecea4eca18ab..42b51faea45b 100644 --- a/sound/voicegroups/voicegroup079.inc +++ b/sound/voicegroups/voicegroup079.inc @@ -39,7 +39,7 @@ voicegroup079:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 6, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 6, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -82,9 +82,9 @@ voicegroup079:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 4, 4 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 6, 2 diff --git a/sound/voicegroups/voicegroup080.inc b/sound/voicegroups/voicegroup080.inc index a6827083c61a..6d627ad92e46 100644 --- a/sound/voicegroups/voicegroup080.inc +++ b/sound/voicegroups/voicegroup080.inc @@ -82,7 +82,7 @@ voicegroup080:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup082.inc b/sound/voicegroups/voicegroup082.inc index 9aa1d7c5b470..b6b5506f1a6d 100644 --- a/sound/voicegroups/voicegroup082.inc +++ b/sound/voicegroups/voicegroup082.inc @@ -82,8 +82,8 @@ voicegroup082:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 1 voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 4, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 4, 4 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup083.inc b/sound/voicegroups/voicegroup083.inc index 09cee33e1511..4f2fcd809ff9 100644 --- a/sound/voicegroups/voicegroup083.inc +++ b/sound/voicegroups/voicegroup083.inc @@ -82,6 +82,6 @@ voicegroup083:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 6, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 6, 4 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 2, 6, 1 diff --git a/sound/voicegroups/voicegroup084.inc b/sound/voicegroups/voicegroup084.inc index ee994d84d37c..510b37c23aa2 100644 --- a/sound/voicegroups/voicegroup084.inc +++ b/sound/voicegroups/voicegroup084.inc @@ -87,7 +87,7 @@ voicegroup084:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup085.inc b/sound/voicegroups/voicegroup085.inc index bd2cc348f032..6260fb198ad5 100644 --- a/sound/voicegroups/voicegroup085.inc +++ b/sound/voicegroups/voicegroup085.inc @@ -83,8 +83,8 @@ voicegroup085:: voice_square_1_alt 60, 0, 0, 2, 1, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 13, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 13, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup086.inc b/sound/voicegroups/voicegroup086.inc index 482a7729e38b..d5298f9b03f5 100644 --- a/sound/voicegroups/voicegroup086.inc +++ b/sound/voicegroups/voicegroup086.inc @@ -83,7 +83,7 @@ voicegroup086:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 0 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup087.inc b/sound/voicegroups/voicegroup087.inc index d9295b3fe716..1ccb69ea559b 100644 --- a/sound/voicegroups/voicegroup087.inc +++ b/sound/voicegroups/voicegroup087.inc @@ -29,7 +29,7 @@ voicegroup087:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -83,7 +83,7 @@ voicegroup087:: voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup088.inc b/sound/voicegroups/voicegroup088.inc index 82afd10f6311..8f6f21688427 100644 --- a/sound/voicegroups/voicegroup088.inc +++ b/sound/voicegroups/voicegroup088.inc @@ -6,7 +6,7 @@ voicegroup088:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -82,12 +82,12 @@ voicegroup088:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 6, 2 voice_square_2_alt 60, 0, 1, 0, 2, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 6, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup089.inc b/sound/voicegroups/voicegroup089.inc index 7d71119ba3ff..4b5e7d57bd4f 100644 --- a/sound/voicegroups/voicegroup089.inc +++ b/sound/voicegroups/voicegroup089.inc @@ -82,9 +82,9 @@ voicegroup089:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 3 voice_square_2_alt 60, 0, 2, 0, 2, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup090.inc b/sound/voicegroups/voicegroup090.inc index f66d09b65c49..4039ad8d1456 100644 --- a/sound/voicegroups/voicegroup090.inc +++ b/sound/voicegroups/voicegroup090.inc @@ -82,7 +82,7 @@ voicegroup090:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 2, 4, 1 voice_square_2_alt 60, 0, 0, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup091.inc b/sound/voicegroups/voicegroup091.inc index df866235edf7..28a64ab48876 100644 --- a/sound/voicegroups/voicegroup091.inc +++ b/sound/voicegroups/voicegroup091.inc @@ -82,8 +82,8 @@ voicegroup091:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 5, 2 voice_square_2_alt 60, 0, 2, 0, 1, 5, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 6, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 2, 6, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup092.inc b/sound/voicegroups/voicegroup092.inc index 9b91a44aa295..90e2858175c2 100644 --- a/sound/voicegroups/voicegroup092.inc +++ b/sound/voicegroups/voicegroup092.inc @@ -82,7 +82,7 @@ voicegroup092:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 2, 0, 1, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup093.inc b/sound/voicegroups/voicegroup093.inc index 44149b083c82..8cea3573355a 100644 --- a/sound/voicegroups/voicegroup093.inc +++ b/sound/voicegroups/voicegroup093.inc @@ -82,7 +82,7 @@ voicegroup093:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup094.inc b/sound/voicegroups/voicegroup094.inc index 21cab6cd2a61..b52e95892642 100644 --- a/sound/voicegroups/voicegroup094.inc +++ b/sound/voicegroups/voicegroup094.inc @@ -82,7 +82,7 @@ voicegroup094:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup095.inc b/sound/voicegroups/voicegroup095.inc index 0c791dc9ebd7..96b531f8ed7a 100644 --- a/sound/voicegroups/voicegroup095.inc +++ b/sound/voicegroups/voicegroup095.inc @@ -82,7 +82,7 @@ voicegroup095:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 3 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup096.inc b/sound/voicegroups/voicegroup096.inc index 8fe0892e6992..b0cb653cafa6 100644 --- a/sound/voicegroups/voicegroup096.inc +++ b/sound/voicegroups/voicegroup096.inc @@ -84,7 +84,7 @@ voicegroup096:: voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup097.inc b/sound/voicegroups/voicegroup097.inc index e18409347941..fb0542dac6eb 100644 --- a/sound/voicegroups/voicegroup097.inc +++ b/sound/voicegroups/voicegroup097.inc @@ -82,7 +82,7 @@ voicegroup097:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup098.inc b/sound/voicegroups/voicegroup098.inc index 001bd5222a2d..d670cb16d0b8 100644 --- a/sound/voicegroups/voicegroup098.inc +++ b/sound/voicegroups/voicegroup098.inc @@ -82,7 +82,7 @@ voicegroup098:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup099.inc b/sound/voicegroups/voicegroup099.inc index f4031beebbec..e750f95831db 100644 --- a/sound/voicegroups/voicegroup099.inc +++ b/sound/voicegroups/voicegroup099.inc @@ -82,7 +82,7 @@ voicegroup099:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 0 voice_square_2_alt 60, 0, 0, 0, 1, 4, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 7, 0 voice_square_1_alt 60, 0, 0, 1, 2, 1, 5, 0 voice_square_2_alt 60, 0, 1, 2, 1, 5, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup100.inc b/sound/voicegroups/voicegroup100.inc index fa936e9590ae..577d05c35495 100644 --- a/sound/voicegroups/voicegroup100.inc +++ b/sound/voicegroups/voicegroup100.inc @@ -29,7 +29,7 @@ voicegroup100:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -85,7 +85,7 @@ voicegroup100:: voice_square_2_alt 60, 0, 2, 1, 1, 4, 1 voice_square_2_alt 60, 0, 1, 0, 1, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup101.inc b/sound/voicegroups/voicegroup101.inc index 5527ec79647a..768c18dea2e3 100644 --- a/sound/voicegroups/voicegroup101.inc +++ b/sound/voicegroups/voicegroup101.inc @@ -6,7 +6,7 @@ voicegroup101:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 voice_square_2_alt 60, 0, 1, 1, 5, 2, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -74,7 +74,7 @@ voicegroup101:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -82,12 +82,12 @@ voicegroup101:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 1, 6, 0 voice_square_1_alt 60, 0, 0, 0, 0, 4, 6, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 4, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup103.inc b/sound/voicegroups/voicegroup103.inc index e60c3c1aae69..cc743edb22cb 100644 --- a/sound/voicegroups/voicegroup103.inc +++ b/sound/voicegroups/voicegroup103.inc @@ -83,8 +83,8 @@ voicegroup103:: voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 0, 0, 10, 1 @@ -92,7 +92,7 @@ voicegroup103:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup104.inc b/sound/voicegroups/voicegroup104.inc index 9ca1a88484ae..c1b623918bbd 100644 --- a/sound/voicegroups/voicegroup104.inc +++ b/sound/voicegroups/voicegroup104.inc @@ -83,8 +83,8 @@ voicegroup104:: voice_square_1_alt 60, 0, 0, 1, 2, 0, 12, 5 voice_square_2_alt 60, 0, 0, 0, 0, 10, 4 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 2, 0, 12, 5 @@ -92,7 +92,7 @@ voicegroup104:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup105.inc b/sound/voicegroups/voicegroup105.inc index c3bfdec9aa78..a1a1bc2d61f5 100644 --- a/sound/voicegroups/voicegroup105.inc +++ b/sound/voicegroups/voicegroup105.inc @@ -82,5 +82,5 @@ voicegroup105:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 4 voice_square_2_alt 60, 0, 2, 0, 2, 9, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup106.inc b/sound/voicegroups/voicegroup106.inc index 834b9a8a268e..1a1125be8af3 100644 --- a/sound/voicegroups/voicegroup106.inc +++ b/sound/voicegroups/voicegroup106.inc @@ -6,7 +6,7 @@ voicegroup106:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -74,7 +74,7 @@ voicegroup106:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 0, 255, 165 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -84,10 +84,10 @@ voicegroup106:: voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup107.inc b/sound/voicegroups/voicegroup107.inc index e2945809e6c3..c43a518ec763 100644 --- a/sound/voicegroups/voicegroup107.inc +++ b/sound/voicegroups/voicegroup107.inc @@ -6,7 +6,7 @@ voicegroup107:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -74,7 +74,7 @@ voicegroup107:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -84,10 +84,10 @@ voicegroup107:: voice_square_2_alt 60, 0, 2, 0, 1, 4, 1 voice_square_2_alt 60, 0, 0, 0, 1, 4, 1 voice_square_1_alt 60, 0, 0, 0, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 0 voice_square_1_alt 60, 0, 0, 3, 0, 1, 4, 1 voice_square_2_alt 60, 0, 3, 0, 1, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup108.inc b/sound/voicegroups/voicegroup108.inc index b539070109b2..a92ee43c6ac4 100644 --- a/sound/voicegroups/voicegroup108.inc +++ b/sound/voicegroups/voicegroup108.inc @@ -84,15 +84,15 @@ voicegroup108:: voice_square_2_alt 60, 0, 0, 0, 0, 9, 2 voice_square_2_alt 60, 0, 1, 0, 0, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup109.inc b/sound/voicegroups/voicegroup109.inc index 52942e9ecf92..a9991437377b 100644 --- a/sound/voicegroups/voicegroup109.inc +++ b/sound/voicegroups/voicegroup109.inc @@ -82,5 +82,5 @@ voicegroup109:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 0, 13, 1 voice_square_2_alt 60, 0, 0, 0, 0, 12, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup110.inc b/sound/voicegroups/voicegroup110.inc index a13facb2cf04..25b6fdaae0c7 100644 --- a/sound/voicegroups/voicegroup110.inc +++ b/sound/voicegroups/voicegroup110.inc @@ -83,8 +83,8 @@ voicegroup110:: voice_square_1_alt 60, 0, 0, 1, 1, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 0, 10, 1 @@ -92,7 +92,7 @@ voicegroup110:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup111.inc b/sound/voicegroups/voicegroup111.inc index 546ed3a465a2..27b418f462b0 100644 --- a/sound/voicegroups/voicegroup111.inc +++ b/sound/voicegroups/voicegroup111.inc @@ -83,8 +83,8 @@ voicegroup111:: voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 @@ -92,7 +92,7 @@ voicegroup111:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup112.inc b/sound/voicegroups/voicegroup112.inc index ad1c4a1b7d5c..9cb2f415a901 100644 --- a/sound/voicegroups/voicegroup112.inc +++ b/sound/voicegroups/voicegroup112.inc @@ -4,7 +4,7 @@ voicegroup112:: voice_keysplit voicegroup005, KeySplitTable1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup113.inc b/sound/voicegroups/voicegroup113.inc index cfe06aa97b2b..0fa279c8a64d 100644 --- a/sound/voicegroups/voicegroup113.inc +++ b/sound/voicegroups/voicegroup113.inc @@ -1,16 +1,16 @@ .align 2 voicegroup113:: voice_keysplit_all voicegroup002 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4990, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49B0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B49A0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4980, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48B0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48C0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48D0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48E0, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48F0, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_23, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_25, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_24, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_22, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_9, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_10, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_11, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_12, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_13, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -39,7 +39,7 @@ voicegroup113:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 99 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -87,7 +87,7 @@ voicegroup113:: voice_square_2_alt 60, 0, 3, 0, 7, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup115.inc b/sound/voicegroups/voicegroup115.inc index afdfebaf7b81..eb4f52b87827 100644 --- a/sound/voicegroups/voicegroup115.inc +++ b/sound/voicegroups/voicegroup115.inc @@ -87,9 +87,9 @@ voicegroup115:: voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 voice_square_1_alt 60, 0, 0, 0, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 1, 9, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 diff --git a/sound/voicegroups/voicegroup116.inc b/sound/voicegroups/voicegroup116.inc index c5b16797ae1d..a86a87f5d1b4 100644 --- a/sound/voicegroups/voicegroup116.inc +++ b/sound/voicegroups/voicegroup116.inc @@ -82,12 +82,12 @@ voicegroup116:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 3, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 3, 6, 5 voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4970, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup117.inc b/sound/voicegroups/voicegroup117.inc index da6a16d7afec..3a86ec4f583f 100644 --- a/sound/voicegroups/voicegroup117.inc +++ b/sound/voicegroups/voicegroup117.inc @@ -81,5 +81,5 @@ voicegroup117:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup118.inc b/sound/voicegroups/voicegroup118.inc index 129831d75e32..89e66b21d230 100644 --- a/sound/voicegroups/voicegroup118.inc +++ b/sound/voicegroups/voicegroup118.inc @@ -81,10 +81,10 @@ voicegroup118:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup119.inc b/sound/voicegroups/voicegroup119.inc index 063ed24b96d1..8b7fe24c79ac 100644 --- a/sound/voicegroups/voicegroup119.inc +++ b/sound/voicegroups/voicegroup119.inc @@ -81,7 +81,7 @@ voicegroup119:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 voice_square_2 60, 0, 1, 0, 1, 9, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -90,5 +90,5 @@ voicegroup119:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup120.inc b/sound/voicegroups/voicegroup120.inc index f80380fc48f8..2c104fb10b67 100644 --- a/sound/voicegroups/voicegroup120.inc +++ b/sound/voicegroups/voicegroup120.inc @@ -81,7 +81,7 @@ voicegroup120:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 7, 1 voice_square_2 60, 0, 3, 0, 1, 7, 1 @@ -90,5 +90,5 @@ voicegroup120:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 diff --git a/sound/voicegroups/voicegroup121.inc b/sound/voicegroups/voicegroup121.inc index 2c9e9fa3e6b9..f09ddd774172 100644 --- a/sound/voicegroups/voicegroup121.inc +++ b/sound/voicegroups/voicegroup121.inc @@ -81,7 +81,7 @@ voicegroup121:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 1, 7, 1 voice_square_2 60, 0, 0, 0, 1, 7, 1 voice_square_1 60, 0, 0, 0, 0, 1, 7, 1 diff --git a/sound/voicegroups/voicegroup122.inc b/sound/voicegroups/voicegroup122.inc index ca64a7c009e0..65356a3d175e 100644 --- a/sound/voicegroups/voicegroup122.inc +++ b/sound/voicegroups/voicegroup122.inc @@ -81,7 +81,7 @@ voicegroup122:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 3, 0, 1, 9, 1 voice_square_1 60, 0, 0, 3, 0, 0, 9, 1 diff --git a/sound/voicegroups/voicegroup124.inc b/sound/voicegroups/voicegroup124.inc index 6f5d263b3db4..274d76dcd1a2 100644 --- a/sound/voicegroups/voicegroup124.inc +++ b/sound/voicegroups/voicegroup124.inc @@ -81,7 +81,7 @@ voicegroup124:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 7, 1 diff --git a/sound/voicegroups/voicegroup125.inc b/sound/voicegroups/voicegroup125.inc index afe16b0b0f30..644002abf76d 100644 --- a/sound/voicegroups/voicegroup125.inc +++ b/sound/voicegroups/voicegroup125.inc @@ -81,7 +81,7 @@ voicegroup125:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 3, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 3, 0, 1, 7, 1 voice_square_1 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup126.inc b/sound/voicegroups/voicegroup126.inc index a2e663cf12f7..51959b4f1e30 100644 --- a/sound/voicegroups/voicegroup126.inc +++ b/sound/voicegroups/voicegroup126.inc @@ -81,7 +81,7 @@ voicegroup126:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 3, 1, 1, 6, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 voice_square_1 60, 0, 0, 3, 1, 1, 6, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup131.inc b/sound/voicegroups/voicegroup131.inc index e0e8c6ceed8d..029afa5be524 100644 --- a/sound/voicegroups/voicegroup131.inc +++ b/sound/voicegroups/voicegroup131.inc @@ -92,7 +92,7 @@ voicegroup131:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 9, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup132.inc b/sound/voicegroups/voicegroup132.inc index 2e7dbc825ad1..2806916bcae2 100644 --- a/sound/voicegroups/voicegroup132.inc +++ b/sound/voicegroups/voicegroup132.inc @@ -82,9 +82,9 @@ voicegroup132:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 2 voice_square_2_alt 60, 0, 3, 0, 1, 7, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 4, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 4, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 0, 0, 4, 2, 2 @@ -92,7 +92,7 @@ voicegroup132:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 2, 9, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup133.inc b/sound/voicegroups/voicegroup133.inc index 23bfa9249567..be70f6ae33f7 100644 --- a/sound/voicegroups/voicegroup133.inc +++ b/sound/voicegroups/voicegroup133.inc @@ -87,12 +87,12 @@ voicegroup133:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup134.inc b/sound/voicegroups/voicegroup134.inc index 2266c55dee91..1bc01fed0739 100644 --- a/sound/voicegroups/voicegroup134.inc +++ b/sound/voicegroups/voicegroup134.inc @@ -87,7 +87,7 @@ voicegroup134:: voice_square_2_alt 60, 0, 3, 0, 1, 7, 1 voice_square_1_alt 60, 0, 0, 3, 0, 1, 7, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 2, 0, 0, 7, 1 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 1 diff --git a/sound/voicegroups/voicegroup136.inc b/sound/voicegroups/voicegroup136.inc index 672c9435c3cc..0428c8c0042b 100644 --- a/sound/voicegroups/voicegroup136.inc +++ b/sound/voicegroups/voicegroup136.inc @@ -86,8 +86,8 @@ voicegroup136:: voice_square_2_alt 60, 0, 0, 0, 5, 0, 0 voice_square_1_alt 60, 0, 0, 1, 0, 5, 0, 0 voice_square_2_alt 60, 0, 3, 2, 4, 10, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 1, 5, 0, 3 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 1, 5, 0, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 1, 5, 0, 3 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 1, 5, 0, 3 voice_square_2_alt 60, 0, 1, 0, 1, 10, 2 voice_square_1_alt 60, 0, 0, 1, 0, 1, 10, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup137.inc b/sound/voicegroups/voicegroup137.inc index 494b82d375b8..cf7422cd2321 100644 --- a/sound/voicegroups/voicegroup137.inc +++ b/sound/voicegroups/voicegroup137.inc @@ -87,8 +87,8 @@ voicegroup137:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 2, 4, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 2, 4, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 2, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup138.inc b/sound/voicegroups/voicegroup138.inc index 599dd92fffe9..227538f5dca0 100644 --- a/sound/voicegroups/voicegroup138.inc +++ b/sound/voicegroups/voicegroup138.inc @@ -92,7 +92,7 @@ voicegroup138:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup139.inc b/sound/voicegroups/voicegroup139.inc index 32250fd92e36..e8969de570e1 100644 --- a/sound/voicegroups/voicegroup139.inc +++ b/sound/voicegroups/voicegroup139.inc @@ -92,7 +92,7 @@ voicegroup139:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup140.inc b/sound/voicegroups/voicegroup140.inc index a12a9f30a863..8206cca1d273 100644 --- a/sound/voicegroups/voicegroup140.inc +++ b/sound/voicegroups/voicegroup140.inc @@ -3,5 +3,5 @@ voicegroup140:: voice_keysplit_all voicegroup001 voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup141.inc b/sound/voicegroups/voicegroup141.inc index 6373309ed50b..1e556a21b6a6 100644 --- a/sound/voicegroups/voicegroup141.inc +++ b/sound/voicegroups/voicegroup141.inc @@ -83,9 +83,9 @@ voicegroup141:: voice_square_1_alt 60, 0, 0, 0, 0, 2, 5, 2 voice_square_2_alt 60, 0, 3, 0, 2, 7, 3 voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 1, 7, 0, 6 voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 2, 9, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 2, 9, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup142.inc b/sound/voicegroups/voicegroup142.inc index 3764a327f30b..af5b809bf84c 100644 --- a/sound/voicegroups/voicegroup142.inc +++ b/sound/voicegroups/voicegroup142.inc @@ -83,5 +83,5 @@ voicegroup142:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 4 voice_square_2_alt 60, 0, 2, 0, 2, 5, 5 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup143.inc b/sound/voicegroups/voicegroup143.inc index 346c644d80a8..9cb286ac13d0 100644 --- a/sound/voicegroups/voicegroup143.inc +++ b/sound/voicegroups/voicegroup143.inc @@ -83,7 +83,7 @@ voicegroup143:: voice_square_2_alt 60, 0, 3, 0, 2, 3, 2 voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup144.inc b/sound/voicegroups/voicegroup144.inc index 60bd142adedc..87830a387b05 100644 --- a/sound/voicegroups/voicegroup144.inc +++ b/sound/voicegroups/voicegroup144.inc @@ -83,7 +83,7 @@ voicegroup144:: voice_square_2_alt 60, 0, 3, 0, 2, 4, 2 voice_square_2_alt 60, 0, 1, 0, 2, 4, 3 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup145.inc b/sound/voicegroups/voicegroup145.inc index 374987162b81..96cda70e488a 100644 --- a/sound/voicegroups/voicegroup145.inc +++ b/sound/voicegroups/voicegroup145.inc @@ -92,7 +92,7 @@ voicegroup145:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup146.inc b/sound/voicegroups/voicegroup146.inc index fcbfedcfedd2..b0f1b92d6fc5 100644 --- a/sound/voicegroups/voicegroup146.inc +++ b/sound/voicegroups/voicegroup146.inc @@ -92,7 +92,7 @@ voicegroup146:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup147.inc b/sound/voicegroups/voicegroup147.inc index de4c5a02fffe..47678158241f 100644 --- a/sound/voicegroups/voicegroup147.inc +++ b/sound/voicegroups/voicegroup147.inc @@ -83,5 +83,5 @@ voicegroup147:: voice_square_1_alt 60, 0, 0, 2, 0, 0, 6, 1 voice_square_2_alt 60, 0, 2, 0, 0, 6, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 2, 4, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 2, 4, 2 diff --git a/sound/voicegroups/voicegroup148.inc b/sound/voicegroups/voicegroup148.inc index ba25340f0dcf..4fc324df883f 100644 --- a/sound/voicegroups/voicegroup148.inc +++ b/sound/voicegroups/voicegroup148.inc @@ -87,7 +87,7 @@ voicegroup148:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup149.inc b/sound/voicegroups/voicegroup149.inc index 50c47bc35654..c0239fef958a 100644 --- a/sound/voicegroups/voicegroup149.inc +++ b/sound/voicegroups/voicegroup149.inc @@ -87,10 +87,10 @@ voicegroup149:: voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup150.inc b/sound/voicegroups/voicegroup150.inc index 97de70ac6479..c51150d78236 100644 --- a/sound/voicegroups/voicegroup150.inc +++ b/sound/voicegroups/voicegroup150.inc @@ -83,7 +83,7 @@ voicegroup150:: voice_square_2_alt 60, 0, 1, 0, 1, 4, 6 voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 5 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup151.inc b/sound/voicegroups/voicegroup151.inc index c7e150baf295..29571169d642 100644 --- a/sound/voicegroups/voicegroup151.inc +++ b/sound/voicegroups/voicegroup151.inc @@ -87,5 +87,5 @@ voicegroup151:: voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup152.inc b/sound/voicegroups/voicegroup152.inc index 19340b82c3d1..06ccc3ae9d04 100644 --- a/sound/voicegroups/voicegroup152.inc +++ b/sound/voicegroups/voicegroup152.inc @@ -82,9 +82,9 @@ voicegroup152:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 4, 2, 1 voice_square_2_alt 60, 0, 3, 0, 1, 5, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 4, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 4, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 4, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 4, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 2, 4, 1 @@ -92,7 +92,7 @@ voicegroup152:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 2, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 2, 9, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup153.inc b/sound/voicegroups/voicegroup153.inc index 4284b8991331..7206c7ba3d98 100644 --- a/sound/voicegroups/voicegroup153.inc +++ b/sound/voicegroups/voicegroup153.inc @@ -92,7 +92,7 @@ voicegroup153:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B48A0, 0, 1, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_8, 0, 1, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup154.inc b/sound/voicegroups/voicegroup154.inc index e38e7a44831f..ce70e65d57cc 100644 --- a/sound/voicegroups/voicegroup154.inc +++ b/sound/voicegroups/voicegroup154.inc @@ -87,10 +87,10 @@ voicegroup154:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4860, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 0, 12, 0 diff --git a/sound/voicegroups/voicegroup155.inc b/sound/voicegroups/voicegroup155.inc index 87cd504986a4..8150754aab67 100644 --- a/sound/voicegroups/voicegroup155.inc +++ b/sound/voicegroups/voicegroup155.inc @@ -83,13 +83,13 @@ voicegroup155:: voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 voice_square_2_alt 60, 0, 3, 0, 3, 6, 2 voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 3, 6, 5 voice_square_2_alt 60, 0, 0, 0, 2, 6, 5 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4850, 0, 7, 15, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 1, 9, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 1, 9, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 diff --git a/sound/voicegroups/voicegroup156.inc b/sound/voicegroups/voicegroup156.inc index 76291c1e6a2e..374464fff9d7 100644 --- a/sound/voicegroups/voicegroup156.inc +++ b/sound/voicegroups/voicegroup156.inc @@ -3,7 +3,7 @@ voicegroup156:: voice_keysplit_all voicegroup002 voice_keysplit voicegroup005, KeySplitTable1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup157.inc b/sound/voicegroups/voicegroup157.inc index 66cd6ff1cd4d..7dd93abd0ade 100644 --- a/sound/voicegroups/voicegroup157.inc +++ b/sound/voicegroups/voicegroup157.inc @@ -82,12 +82,12 @@ voicegroup157:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 0, 2, 7, 2 voice_square_2_alt 60, 0, 3, 0, 3, 3, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 3, 6, 5 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 3, 6, 5 voice_square_1_alt 60, 0, 0, 0, 0, 2, 7, 2 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup158.inc b/sound/voicegroups/voicegroup158.inc index 6a8ca184b4d9..50fa5660686c 100644 --- a/sound/voicegroups/voicegroup158.inc +++ b/sound/voicegroups/voicegroup158.inc @@ -84,15 +84,15 @@ voicegroup158:: voice_square_2_alt 60, 0, 3, 0, 1, 10, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 1, 0, 9, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup159.inc b/sound/voicegroups/voicegroup159.inc index 7ee1e3a56ec6..f1d20465601d 100644 --- a/sound/voicegroups/voicegroup159.inc +++ b/sound/voicegroups/voicegroup159.inc @@ -82,7 +82,7 @@ voicegroup159:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 7, 0, 6 voice_square_2_alt 60, 0, 1, 1, 5, 1, 6 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 1, 7, 0, 6 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 1, 7, 0, 6 voice_square_1_alt 60, 0, 0, 0, 1, 4, 3, 6 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup160.inc b/sound/voicegroups/voicegroup160.inc index faff8109589e..160d0cad8fbf 100644 --- a/sound/voicegroups/voicegroup160.inc +++ b/sound/voicegroups/voicegroup160.inc @@ -87,5 +87,5 @@ voicegroup160:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup161.inc b/sound/voicegroups/voicegroup161.inc index 71374e1a06d7..c334fa26470a 100644 --- a/sound/voicegroups/voicegroup161.inc +++ b/sound/voicegroups/voicegroup161.inc @@ -87,7 +87,7 @@ voicegroup161:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup162.inc b/sound/voicegroups/voicegroup162.inc index 53edb3b0e886..3a532b23ee59 100644 --- a/sound/voicegroups/voicegroup162.inc +++ b/sound/voicegroups/voicegroup162.inc @@ -92,5 +92,5 @@ voicegroup162:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup163.inc b/sound/voicegroups/voicegroup163.inc index 86ff86ef941f..b8a3303f07e7 100644 --- a/sound/voicegroups/voicegroup163.inc +++ b/sound/voicegroups/voicegroup163.inc @@ -92,7 +92,7 @@ voicegroup163:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup164.inc b/sound/voicegroups/voicegroup164.inc index fe48fbfb99fe..d64cfd33adf1 100644 --- a/sound/voicegroups/voicegroup164.inc +++ b/sound/voicegroups/voicegroup164.inc @@ -82,7 +82,7 @@ voicegroup164:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 2, 6, 2 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 4 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -92,7 +92,7 @@ voicegroup164:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup165.inc b/sound/voicegroups/voicegroup165.inc index e633e5671a3d..c3262766cb3c 100644 --- a/sound/voicegroups/voicegroup165.inc +++ b/sound/voicegroups/voicegroup165.inc @@ -92,7 +92,7 @@ voicegroup165:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup166.inc b/sound/voicegroups/voicegroup166.inc index e4ac4a28e71d..edd94624c0ab 100644 --- a/sound/voicegroups/voicegroup166.inc +++ b/sound/voicegroups/voicegroup166.inc @@ -87,12 +87,12 @@ voicegroup166:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup167.inc b/sound/voicegroups/voicegroup167.inc index 307379eb9192..0213b7aec042 100644 --- a/sound/voicegroups/voicegroup167.inc +++ b/sound/voicegroups/voicegroup167.inc @@ -84,7 +84,7 @@ voicegroup167:: voice_square_2_alt 60, 0, 3, 0, 2, 8, 3 voice_square_2_alt 60, 0, 2, 0, 2, 6, 5 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 6, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 0, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup168.inc b/sound/voicegroups/voicegroup168.inc index 05dbf3954a55..ea6b59d2ef4a 100644 --- a/sound/voicegroups/voicegroup168.inc +++ b/sound/voicegroups/voicegroup168.inc @@ -92,7 +92,7 @@ voicegroup168:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup169.inc b/sound/voicegroups/voicegroup169.inc index 220425ff015c..77ee6ffee49e 100644 --- a/sound/voicegroups/voicegroup169.inc +++ b/sound/voicegroups/voicegroup169.inc @@ -75,7 +75,7 @@ voicegroup169:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup170.inc b/sound/voicegroups/voicegroup170.inc index 68c29a6c9dba..43c8ae6df7b1 100644 --- a/sound/voicegroups/voicegroup170.inc +++ b/sound/voicegroups/voicegroup170.inc @@ -81,7 +81,7 @@ voicegroup170:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 0, 1, 7, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 1, 0, 1, 7, 1 voice_square_2_alt 60, 0, 2, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup171.inc b/sound/voicegroups/voicegroup171.inc index 76eee5f8a32d..f4ae315ce51e 100644 --- a/sound/voicegroups/voicegroup171.inc +++ b/sound/voicegroups/voicegroup171.inc @@ -81,7 +81,7 @@ voicegroup171:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 1 voice_square_1_alt 60, 0, 0, 2, 0, 1, 7, 0 voice_square_2_alt 60, 0, 2, 0, 2, 0, 0 voice_square_2_alt 60, 0, 3, 0, 1, 7, 0 @@ -89,6 +89,6 @@ voicegroup171:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 0 voice_square_1_alt 60, 0, 0, 3, 0, 0, 7, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4880, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4890, 0, 7, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_6, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 diff --git a/sound/voicegroups/voicegroup172.inc b/sound/voicegroups/voicegroup172.inc index 3e04a358c4b1..ffd981c830d1 100644 --- a/sound/voicegroups/voicegroup172.inc +++ b/sound/voicegroups/voicegroup172.inc @@ -92,7 +92,7 @@ voicegroup172:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4900, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup173.inc b/sound/voicegroups/voicegroup173.inc index ee4a2c866256..46979c625881 100644 --- a/sound/voicegroups/voicegroup173.inc +++ b/sound/voicegroups/voicegroup173.inc @@ -92,7 +92,7 @@ voicegroup173:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup174.inc b/sound/voicegroups/voicegroup174.inc index 82be8ccf9b28..ab7d43fc72b2 100644 --- a/sound/voicegroups/voicegroup174.inc +++ b/sound/voicegroups/voicegroup174.inc @@ -92,7 +92,7 @@ voicegroup174:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4840, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -131,7 +131,7 @@ voicegroup174:: voice_keysplit_all voicegroup177 voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -156,5 +156,5 @@ voicegroup174:: voice_keysplit_all voicegroup002 voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup176.inc b/sound/voicegroups/voicegroup176.inc index 9743d50e20f0..ee3c97e4936f 100644 --- a/sound/voicegroups/voicegroup176.inc +++ b/sound/voicegroups/voicegroup176.inc @@ -35,7 +35,7 @@ voicegroup176:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup178.inc b/sound/voicegroups/voicegroup178.inc index 1dc6971d7570..026d7bb3d8b2 100644 --- a/sound/voicegroups/voicegroup178.inc +++ b/sound/voicegroups/voicegroup178.inc @@ -87,5 +87,5 @@ voicegroup178:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 0, 15, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 0, 15, 1 diff --git a/sound/voicegroups/voicegroup179.inc b/sound/voicegroups/voicegroup179.inc index b7df91e68c6d..e69cace5b8a4 100644 --- a/sound/voicegroups/voicegroup179.inc +++ b/sound/voicegroups/voicegroup179.inc @@ -87,5 +87,5 @@ voicegroup179:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup180.inc b/sound/voicegroups/voicegroup180.inc index 82e98196d3ae..ea182d38e5f1 100644 --- a/sound/voicegroups/voicegroup180.inc +++ b/sound/voicegroups/voicegroup180.inc @@ -92,7 +92,7 @@ voicegroup180:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup182.inc b/sound/voicegroups/voicegroup182.inc index 1fb444fec6c0..ec395549586c 100644 --- a/sound/voicegroups/voicegroup182.inc +++ b/sound/voicegroups/voicegroup182.inc @@ -87,5 +87,5 @@ voicegroup182:: voice_square_1_alt 60, 0, 0, 0, 0, 2, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup183.inc b/sound/voicegroups/voicegroup183.inc index 92b953fc4c58..ff49e3763b32 100644 --- a/sound/voicegroups/voicegroup183.inc +++ b/sound/voicegroups/voicegroup183.inc @@ -83,7 +83,7 @@ voicegroup183:: voice_square_1_alt 60, 0, 0, 2, 0, 2, 4, 1 voice_square_2_alt 60, 0, 2, 0, 2, 4, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup184.inc b/sound/voicegroups/voicegroup184.inc index e0d1c958d7d6..86f392e65c90 100644 --- a/sound/voicegroups/voicegroup184.inc +++ b/sound/voicegroups/voicegroup184.inc @@ -3,7 +3,7 @@ voicegroup184:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup185.inc b/sound/voicegroups/voicegroup185.inc index 8417a2407b1c..879a4e88832a 100644 --- a/sound/voicegroups/voicegroup185.inc +++ b/sound/voicegroups/voicegroup185.inc @@ -84,10 +84,10 @@ voicegroup185:: voice_square_1_alt 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4920, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4910, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_16, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_15, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4870, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup187.inc b/sound/voicegroups/voicegroup187.inc index 46c5c1f9da98..640912505ac5 100644 --- a/sound/voicegroups/voicegroup187.inc +++ b/sound/voicegroups/voicegroup187.inc @@ -92,7 +92,7 @@ voicegroup187:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 0, 12, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup188.inc b/sound/voicegroups/voicegroup188.inc index c6afe243b32a..8556bcd4d25c 100644 --- a/sound/voicegroups/voicegroup188.inc +++ b/sound/voicegroups/voicegroup188.inc @@ -92,7 +92,7 @@ voicegroup188:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup190.inc b/sound/voicegroups/voicegroup190.inc index 6faa27c6208c..25a84e84edc4 100644 --- a/sound/voicegroups/voicegroup190.inc +++ b/sound/voicegroups/voicegroup190.inc @@ -1,6 +1,6 @@ .align 2 voicegroup190:: - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_86B4830, 0, 7, 15, 2 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 From 93705bc257934a07061e6dd918507f6e9f4bfd53 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 6 Nov 2021 12:30:40 -0400 Subject: [PATCH 388/762] Label phonemes --- sound/direct_sound_data.inc | 204 +++++++++--------- .../{88DBBC0.aif => phonemes/01.aif} | Bin .../{88DC220.aif => phonemes/02.aif} | Bin .../{88DC704.aif => phonemes/03.aif} | Bin .../{88DD054.aif => phonemes/04.aif} | Bin .../{88DDAC4.aif => phonemes/05.aif} | Bin .../{88DDDE4.aif => phonemes/06.aif} | Bin .../{88DEA6C.aif => phonemes/07.aif} | Bin .../{88DF08C.aif => phonemes/08.aif} | Bin .../{88DF414.aif => phonemes/09.aif} | Bin .../{88E01F8.aif => phonemes/10.aif} | Bin .../{88E0B68.aif => phonemes/11.aif} | Bin .../{88E0F04.aif => phonemes/12.aif} | Bin .../{88E16B8.aif => phonemes/13.aif} | Bin .../{88E2414.aif => phonemes/14.aif} | Bin .../{88E2658.aif => phonemes/15.aif} | Bin .../{88E3498.aif => phonemes/16.aif} | Bin .../{88E3DEC.aif => phonemes/17.aif} | Bin .../{88E4140.aif => phonemes/18.aif} | Bin .../{88E4774.aif => phonemes/19.aif} | Bin .../{88E53E0.aif => phonemes/20.aif} | Bin .../{88E5978.aif => phonemes/21.aif} | Bin .../{88E647C.aif => phonemes/22.aif} | Bin .../{88E6A80.aif => phonemes/23.aif} | Bin .../{88E6C78.aif => phonemes/24.aif} | Bin .../{88E75DC.aif => phonemes/25.aif} | Bin .../{88E8568.aif => phonemes/26.aif} | Bin .../{88E8BA0.aif => phonemes/27.aif} | Bin .../{88E9674.aif => phonemes/28.aif} | Bin .../{88EA5B8.aif => phonemes/29.aif} | Bin .../{88EAB30.aif => phonemes/30.aif} | Bin .../{88EB97C.aif => phonemes/31.aif} | Bin .../{88EC884.aif => phonemes/32.aif} | Bin .../{88ED358.aif => phonemes/33.aif} | Bin .../{88EDEEC.aif => phonemes/34.aif} | Bin .../{88EE8C4.aif => phonemes/35.aif} | Bin .../{88EEF04.aif => phonemes/36.aif} | Bin .../{88EF9E4.aif => phonemes/37.aif} | Bin .../{88F0020.aif => phonemes/38.aif} | Bin .../{88F0738.aif => phonemes/39.aif} | Bin .../{88F1074.aif => phonemes/40.aif} | Bin .../{88F1830.aif => phonemes/41.aif} | Bin .../{88F1D94.aif => phonemes/42.aif} | Bin .../{88F2B08.aif => phonemes/43.aif} | Bin .../{88F2F84.aif => phonemes/44.aif} | Bin .../{88F3470.aif => phonemes/45.aif} | Bin .../{88F3C38.aif => phonemes/46.aif} | Bin .../{88F4834.aif => phonemes/47.aif} | Bin .../{88F4BAC.aif => phonemes/48.aif} | Bin .../{88F5368.aif => phonemes/49.aif} | Bin .../{88F5FCC.aif => phonemes/50.aif} | Bin .../{88F6498.aif => phonemes/51.aif} | Bin sound/voicegroups/voicegroup130.inc | 102 ++++----- 53 files changed, 153 insertions(+), 153 deletions(-) rename sound/direct_sound_samples/{88DBBC0.aif => phonemes/01.aif} (100%) rename sound/direct_sound_samples/{88DC220.aif => phonemes/02.aif} (100%) rename sound/direct_sound_samples/{88DC704.aif => phonemes/03.aif} (100%) rename sound/direct_sound_samples/{88DD054.aif => phonemes/04.aif} (100%) rename sound/direct_sound_samples/{88DDAC4.aif => phonemes/05.aif} (100%) rename sound/direct_sound_samples/{88DDDE4.aif => phonemes/06.aif} (100%) rename sound/direct_sound_samples/{88DEA6C.aif => phonemes/07.aif} (100%) rename sound/direct_sound_samples/{88DF08C.aif => phonemes/08.aif} (100%) rename sound/direct_sound_samples/{88DF414.aif => phonemes/09.aif} (100%) rename sound/direct_sound_samples/{88E01F8.aif => phonemes/10.aif} (100%) rename sound/direct_sound_samples/{88E0B68.aif => phonemes/11.aif} (100%) rename sound/direct_sound_samples/{88E0F04.aif => phonemes/12.aif} (100%) rename sound/direct_sound_samples/{88E16B8.aif => phonemes/13.aif} (100%) rename sound/direct_sound_samples/{88E2414.aif => phonemes/14.aif} (100%) rename sound/direct_sound_samples/{88E2658.aif => phonemes/15.aif} (100%) rename sound/direct_sound_samples/{88E3498.aif => phonemes/16.aif} (100%) rename sound/direct_sound_samples/{88E3DEC.aif => phonemes/17.aif} (100%) rename sound/direct_sound_samples/{88E4140.aif => phonemes/18.aif} (100%) rename sound/direct_sound_samples/{88E4774.aif => phonemes/19.aif} (100%) rename sound/direct_sound_samples/{88E53E0.aif => phonemes/20.aif} (100%) rename sound/direct_sound_samples/{88E5978.aif => phonemes/21.aif} (100%) rename sound/direct_sound_samples/{88E647C.aif => phonemes/22.aif} (100%) rename sound/direct_sound_samples/{88E6A80.aif => phonemes/23.aif} (100%) rename sound/direct_sound_samples/{88E6C78.aif => phonemes/24.aif} (100%) rename sound/direct_sound_samples/{88E75DC.aif => phonemes/25.aif} (100%) rename sound/direct_sound_samples/{88E8568.aif => phonemes/26.aif} (100%) rename sound/direct_sound_samples/{88E8BA0.aif => phonemes/27.aif} (100%) rename sound/direct_sound_samples/{88E9674.aif => phonemes/28.aif} (100%) rename sound/direct_sound_samples/{88EA5B8.aif => phonemes/29.aif} (100%) rename sound/direct_sound_samples/{88EAB30.aif => phonemes/30.aif} (100%) rename sound/direct_sound_samples/{88EB97C.aif => phonemes/31.aif} (100%) rename sound/direct_sound_samples/{88EC884.aif => phonemes/32.aif} (100%) rename sound/direct_sound_samples/{88ED358.aif => phonemes/33.aif} (100%) rename sound/direct_sound_samples/{88EDEEC.aif => phonemes/34.aif} (100%) rename sound/direct_sound_samples/{88EE8C4.aif => phonemes/35.aif} (100%) rename sound/direct_sound_samples/{88EEF04.aif => phonemes/36.aif} (100%) rename sound/direct_sound_samples/{88EF9E4.aif => phonemes/37.aif} (100%) rename sound/direct_sound_samples/{88F0020.aif => phonemes/38.aif} (100%) rename sound/direct_sound_samples/{88F0738.aif => phonemes/39.aif} (100%) rename sound/direct_sound_samples/{88F1074.aif => phonemes/40.aif} (100%) rename sound/direct_sound_samples/{88F1830.aif => phonemes/41.aif} (100%) rename sound/direct_sound_samples/{88F1D94.aif => phonemes/42.aif} (100%) rename sound/direct_sound_samples/{88F2B08.aif => phonemes/43.aif} (100%) rename sound/direct_sound_samples/{88F2F84.aif => phonemes/44.aif} (100%) rename sound/direct_sound_samples/{88F3470.aif => phonemes/45.aif} (100%) rename sound/direct_sound_samples/{88F3C38.aif => phonemes/46.aif} (100%) rename sound/direct_sound_samples/{88F4834.aif => phonemes/47.aif} (100%) rename sound/direct_sound_samples/{88F4BAC.aif => phonemes/48.aif} (100%) rename sound/direct_sound_samples/{88F5368.aif => phonemes/49.aif} (100%) rename sound/direct_sound_samples/{88F5FCC.aif => phonemes/50.aif} (100%) rename sound/direct_sound_samples/{88F6498.aif => phonemes/51.aif} (100%) diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 508e6a6c4440..bc277d144c57 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -1955,208 +1955,208 @@ DirectSoundWaveData_sd90_special_scream_drive:: .incbin "sound/direct_sound_samples/sd90_special_scream_drive.bin" .align 2 -DirectSoundWaveData_88DBBC0:: - .incbin "sound/direct_sound_samples/88DBBC0.bin" +DirectSoundWaveData_Phoneme_1:: + .incbin "sound/direct_sound_samples/phonemes/01.bin" .align 2 -DirectSoundWaveData_88DC220:: - .incbin "sound/direct_sound_samples/88DC220.bin" +DirectSoundWaveData_Phoneme_2:: + .incbin "sound/direct_sound_samples/phonemes/02.bin" .align 2 -DirectSoundWaveData_88DC704:: - .incbin "sound/direct_sound_samples/88DC704.bin" +DirectSoundWaveData_Phoneme_3:: + .incbin "sound/direct_sound_samples/phonemes/03.bin" .align 2 -DirectSoundWaveData_88DD054:: - .incbin "sound/direct_sound_samples/88DD054.bin" +DirectSoundWaveData_Phoneme_4:: + .incbin "sound/direct_sound_samples/phonemes/04.bin" .align 2 -DirectSoundWaveData_88DDAC4:: - .incbin "sound/direct_sound_samples/88DDAC4.bin" +DirectSoundWaveData_Phoneme_5:: + .incbin "sound/direct_sound_samples/phonemes/05.bin" .align 2 -DirectSoundWaveData_88DDDE4:: - .incbin "sound/direct_sound_samples/88DDDE4.bin" +DirectSoundWaveData_Phoneme_6:: + .incbin "sound/direct_sound_samples/phonemes/06.bin" .align 2 -DirectSoundWaveData_88DEA6C:: - .incbin "sound/direct_sound_samples/88DEA6C.bin" +DirectSoundWaveData_Phoneme_7:: + .incbin "sound/direct_sound_samples/phonemes/07.bin" .align 2 -DirectSoundWaveData_88DF08C:: - .incbin "sound/direct_sound_samples/88DF08C.bin" +DirectSoundWaveData_Phoneme_8:: + .incbin "sound/direct_sound_samples/phonemes/08.bin" .align 2 -DirectSoundWaveData_88DF414:: - .incbin "sound/direct_sound_samples/88DF414.bin" +DirectSoundWaveData_Phoneme_9:: + .incbin "sound/direct_sound_samples/phonemes/09.bin" .align 2 -DirectSoundWaveData_88E01F8:: - .incbin "sound/direct_sound_samples/88E01F8.bin" +DirectSoundWaveData_Phoneme_10:: + .incbin "sound/direct_sound_samples/phonemes/10.bin" .align 2 -DirectSoundWaveData_88E0B68:: - .incbin "sound/direct_sound_samples/88E0B68.bin" +DirectSoundWaveData_Phoneme_11:: + .incbin "sound/direct_sound_samples/phonemes/11.bin" .align 2 -DirectSoundWaveData_88E0F04:: - .incbin "sound/direct_sound_samples/88E0F04.bin" +DirectSoundWaveData_Phoneme_12:: + .incbin "sound/direct_sound_samples/phonemes/12.bin" .align 2 -DirectSoundWaveData_88E16B8:: - .incbin "sound/direct_sound_samples/88E16B8.bin" +DirectSoundWaveData_Phoneme_13:: + .incbin "sound/direct_sound_samples/phonemes/13.bin" .align 2 -DirectSoundWaveData_88E2414:: - .incbin "sound/direct_sound_samples/88E2414.bin" +DirectSoundWaveData_Phoneme_14:: + .incbin "sound/direct_sound_samples/phonemes/14.bin" .align 2 -DirectSoundWaveData_88E2658:: - .incbin "sound/direct_sound_samples/88E2658.bin" +DirectSoundWaveData_Phoneme_15:: + .incbin "sound/direct_sound_samples/phonemes/15.bin" .align 2 -DirectSoundWaveData_88E3498:: - .incbin "sound/direct_sound_samples/88E3498.bin" +DirectSoundWaveData_Phoneme_16:: + .incbin "sound/direct_sound_samples/phonemes/16.bin" .align 2 -DirectSoundWaveData_88E3DEC:: - .incbin "sound/direct_sound_samples/88E3DEC.bin" +DirectSoundWaveData_Phoneme_17:: + .incbin "sound/direct_sound_samples/phonemes/17.bin" .align 2 -DirectSoundWaveData_88E4140:: - .incbin "sound/direct_sound_samples/88E4140.bin" +DirectSoundWaveData_Phoneme_18:: + .incbin "sound/direct_sound_samples/phonemes/18.bin" .align 2 -DirectSoundWaveData_88E4774:: - .incbin "sound/direct_sound_samples/88E4774.bin" +DirectSoundWaveData_Phoneme_19:: + .incbin "sound/direct_sound_samples/phonemes/19.bin" .align 2 -DirectSoundWaveData_88E53E0:: - .incbin "sound/direct_sound_samples/88E53E0.bin" +DirectSoundWaveData_Phoneme_20:: + .incbin "sound/direct_sound_samples/phonemes/20.bin" .align 2 -DirectSoundWaveData_88E5978:: - .incbin "sound/direct_sound_samples/88E5978.bin" +DirectSoundWaveData_Phoneme_21:: + .incbin "sound/direct_sound_samples/phonemes/21.bin" .align 2 -DirectSoundWaveData_88E647C:: - .incbin "sound/direct_sound_samples/88E647C.bin" +DirectSoundWaveData_Phoneme_22:: + .incbin "sound/direct_sound_samples/phonemes/22.bin" .align 2 -DirectSoundWaveData_88E6A80:: - .incbin "sound/direct_sound_samples/88E6A80.bin" +DirectSoundWaveData_Phoneme_23:: + .incbin "sound/direct_sound_samples/phonemes/23.bin" .align 2 -DirectSoundWaveData_88E6C78:: - .incbin "sound/direct_sound_samples/88E6C78.bin" +DirectSoundWaveData_Phoneme_24:: + .incbin "sound/direct_sound_samples/phonemes/24.bin" .align 2 -DirectSoundWaveData_88E75DC:: - .incbin "sound/direct_sound_samples/88E75DC.bin" +DirectSoundWaveData_Phoneme_25:: + .incbin "sound/direct_sound_samples/phonemes/25.bin" .align 2 -DirectSoundWaveData_88E8568:: - .incbin "sound/direct_sound_samples/88E8568.bin" +DirectSoundWaveData_Phoneme_26:: + .incbin "sound/direct_sound_samples/phonemes/26.bin" .align 2 -DirectSoundWaveData_88E8BA0:: - .incbin "sound/direct_sound_samples/88E8BA0.bin" +DirectSoundWaveData_Phoneme_27:: + .incbin "sound/direct_sound_samples/phonemes/27.bin" .align 2 -DirectSoundWaveData_88E9674:: - .incbin "sound/direct_sound_samples/88E9674.bin" +DirectSoundWaveData_Phoneme_28:: + .incbin "sound/direct_sound_samples/phonemes/28.bin" .align 2 -DirectSoundWaveData_88EA5B8:: - .incbin "sound/direct_sound_samples/88EA5B8.bin" +DirectSoundWaveData_Phoneme_29:: + .incbin "sound/direct_sound_samples/phonemes/29.bin" .align 2 -DirectSoundWaveData_88EAB30:: - .incbin "sound/direct_sound_samples/88EAB30.bin" +DirectSoundWaveData_Phoneme_30:: + .incbin "sound/direct_sound_samples/phonemes/30.bin" .align 2 -DirectSoundWaveData_88EB97C:: - .incbin "sound/direct_sound_samples/88EB97C.bin" +DirectSoundWaveData_Phoneme_31:: + .incbin "sound/direct_sound_samples/phonemes/31.bin" .align 2 -DirectSoundWaveData_88EC884:: - .incbin "sound/direct_sound_samples/88EC884.bin" +DirectSoundWaveData_Phoneme_32:: + .incbin "sound/direct_sound_samples/phonemes/32.bin" .align 2 -DirectSoundWaveData_88ED358:: - .incbin "sound/direct_sound_samples/88ED358.bin" +DirectSoundWaveData_Phoneme_33:: + .incbin "sound/direct_sound_samples/phonemes/33.bin" .align 2 -DirectSoundWaveData_88EDEEC:: - .incbin "sound/direct_sound_samples/88EDEEC.bin" +DirectSoundWaveData_Phoneme_34:: + .incbin "sound/direct_sound_samples/phonemes/34.bin" .align 2 -DirectSoundWaveData_88EE8C4:: - .incbin "sound/direct_sound_samples/88EE8C4.bin" +DirectSoundWaveData_Phoneme_35:: + .incbin "sound/direct_sound_samples/phonemes/35.bin" .align 2 -DirectSoundWaveData_88EEF04:: - .incbin "sound/direct_sound_samples/88EEF04.bin" +DirectSoundWaveData_Phoneme_36:: + .incbin "sound/direct_sound_samples/phonemes/36.bin" .align 2 -DirectSoundWaveData_88EF9E4:: - .incbin "sound/direct_sound_samples/88EF9E4.bin" +DirectSoundWaveData_Phoneme_37:: + .incbin "sound/direct_sound_samples/phonemes/37.bin" .align 2 -DirectSoundWaveData_88F0020:: - .incbin "sound/direct_sound_samples/88F0020.bin" +DirectSoundWaveData_Phoneme_38:: + .incbin "sound/direct_sound_samples/phonemes/38.bin" .align 2 -DirectSoundWaveData_88F0738:: - .incbin "sound/direct_sound_samples/88F0738.bin" +DirectSoundWaveData_Phoneme_39:: + .incbin "sound/direct_sound_samples/phonemes/39.bin" .align 2 -DirectSoundWaveData_88F1074:: - .incbin "sound/direct_sound_samples/88F1074.bin" +DirectSoundWaveData_Phoneme_40:: + .incbin "sound/direct_sound_samples/phonemes/40.bin" .align 2 -DirectSoundWaveData_88F1830:: - .incbin "sound/direct_sound_samples/88F1830.bin" +DirectSoundWaveData_Phoneme_41:: + .incbin "sound/direct_sound_samples/phonemes/41.bin" .align 2 -DirectSoundWaveData_88F1D94:: - .incbin "sound/direct_sound_samples/88F1D94.bin" +DirectSoundWaveData_Phoneme_42:: + .incbin "sound/direct_sound_samples/phonemes/42.bin" .align 2 -DirectSoundWaveData_88F2B08:: - .incbin "sound/direct_sound_samples/88F2B08.bin" +DirectSoundWaveData_Phoneme_43:: + .incbin "sound/direct_sound_samples/phonemes/43.bin" .align 2 -DirectSoundWaveData_88F2F84:: - .incbin "sound/direct_sound_samples/88F2F84.bin" +DirectSoundWaveData_Phoneme_44:: + .incbin "sound/direct_sound_samples/phonemes/44.bin" .align 2 -DirectSoundWaveData_88F3470:: - .incbin "sound/direct_sound_samples/88F3470.bin" +DirectSoundWaveData_Phoneme_45:: + .incbin "sound/direct_sound_samples/phonemes/45.bin" .align 2 -DirectSoundWaveData_88F3C38:: - .incbin "sound/direct_sound_samples/88F3C38.bin" +DirectSoundWaveData_Phoneme_46:: + .incbin "sound/direct_sound_samples/phonemes/46.bin" .align 2 -DirectSoundWaveData_88F4834:: - .incbin "sound/direct_sound_samples/88F4834.bin" +DirectSoundWaveData_Phoneme_47:: + .incbin "sound/direct_sound_samples/phonemes/47.bin" .align 2 -DirectSoundWaveData_88F4BAC:: - .incbin "sound/direct_sound_samples/88F4BAC.bin" +DirectSoundWaveData_Phoneme_48:: + .incbin "sound/direct_sound_samples/phonemes/48.bin" .align 2 -DirectSoundWaveData_88F5368:: - .incbin "sound/direct_sound_samples/88F5368.bin" +DirectSoundWaveData_Phoneme_49:: + .incbin "sound/direct_sound_samples/phonemes/49.bin" .align 2 -DirectSoundWaveData_88F5FCC:: - .incbin "sound/direct_sound_samples/88F5FCC.bin" +DirectSoundWaveData_Phoneme_50:: + .incbin "sound/direct_sound_samples/phonemes/50.bin" .align 2 -DirectSoundWaveData_88F6498:: - .incbin "sound/direct_sound_samples/88F6498.bin" +DirectSoundWaveData_Phoneme_51:: + .incbin "sound/direct_sound_samples/phonemes/51.bin" .align 2 DirectSoundWaveData_sc88pro_accordion_duplicate:: diff --git a/sound/direct_sound_samples/88DBBC0.aif b/sound/direct_sound_samples/phonemes/01.aif similarity index 100% rename from sound/direct_sound_samples/88DBBC0.aif rename to sound/direct_sound_samples/phonemes/01.aif diff --git a/sound/direct_sound_samples/88DC220.aif b/sound/direct_sound_samples/phonemes/02.aif similarity index 100% rename from sound/direct_sound_samples/88DC220.aif rename to sound/direct_sound_samples/phonemes/02.aif diff --git a/sound/direct_sound_samples/88DC704.aif b/sound/direct_sound_samples/phonemes/03.aif similarity index 100% rename from sound/direct_sound_samples/88DC704.aif rename to sound/direct_sound_samples/phonemes/03.aif diff --git a/sound/direct_sound_samples/88DD054.aif b/sound/direct_sound_samples/phonemes/04.aif similarity index 100% rename from sound/direct_sound_samples/88DD054.aif rename to sound/direct_sound_samples/phonemes/04.aif diff --git a/sound/direct_sound_samples/88DDAC4.aif b/sound/direct_sound_samples/phonemes/05.aif similarity index 100% rename from sound/direct_sound_samples/88DDAC4.aif rename to sound/direct_sound_samples/phonemes/05.aif diff --git a/sound/direct_sound_samples/88DDDE4.aif b/sound/direct_sound_samples/phonemes/06.aif similarity index 100% rename from sound/direct_sound_samples/88DDDE4.aif rename to sound/direct_sound_samples/phonemes/06.aif diff --git a/sound/direct_sound_samples/88DEA6C.aif b/sound/direct_sound_samples/phonemes/07.aif similarity index 100% rename from sound/direct_sound_samples/88DEA6C.aif rename to sound/direct_sound_samples/phonemes/07.aif diff --git a/sound/direct_sound_samples/88DF08C.aif b/sound/direct_sound_samples/phonemes/08.aif similarity index 100% rename from sound/direct_sound_samples/88DF08C.aif rename to sound/direct_sound_samples/phonemes/08.aif diff --git a/sound/direct_sound_samples/88DF414.aif b/sound/direct_sound_samples/phonemes/09.aif similarity index 100% rename from sound/direct_sound_samples/88DF414.aif rename to sound/direct_sound_samples/phonemes/09.aif diff --git a/sound/direct_sound_samples/88E01F8.aif b/sound/direct_sound_samples/phonemes/10.aif similarity index 100% rename from sound/direct_sound_samples/88E01F8.aif rename to sound/direct_sound_samples/phonemes/10.aif diff --git a/sound/direct_sound_samples/88E0B68.aif b/sound/direct_sound_samples/phonemes/11.aif similarity index 100% rename from sound/direct_sound_samples/88E0B68.aif rename to sound/direct_sound_samples/phonemes/11.aif diff --git a/sound/direct_sound_samples/88E0F04.aif b/sound/direct_sound_samples/phonemes/12.aif similarity index 100% rename from sound/direct_sound_samples/88E0F04.aif rename to sound/direct_sound_samples/phonemes/12.aif diff --git a/sound/direct_sound_samples/88E16B8.aif b/sound/direct_sound_samples/phonemes/13.aif similarity index 100% rename from sound/direct_sound_samples/88E16B8.aif rename to sound/direct_sound_samples/phonemes/13.aif diff --git a/sound/direct_sound_samples/88E2414.aif b/sound/direct_sound_samples/phonemes/14.aif similarity index 100% rename from sound/direct_sound_samples/88E2414.aif rename to sound/direct_sound_samples/phonemes/14.aif diff --git a/sound/direct_sound_samples/88E2658.aif b/sound/direct_sound_samples/phonemes/15.aif similarity index 100% rename from sound/direct_sound_samples/88E2658.aif rename to sound/direct_sound_samples/phonemes/15.aif diff --git a/sound/direct_sound_samples/88E3498.aif b/sound/direct_sound_samples/phonemes/16.aif similarity index 100% rename from sound/direct_sound_samples/88E3498.aif rename to sound/direct_sound_samples/phonemes/16.aif diff --git a/sound/direct_sound_samples/88E3DEC.aif b/sound/direct_sound_samples/phonemes/17.aif similarity index 100% rename from sound/direct_sound_samples/88E3DEC.aif rename to sound/direct_sound_samples/phonemes/17.aif diff --git a/sound/direct_sound_samples/88E4140.aif b/sound/direct_sound_samples/phonemes/18.aif similarity index 100% rename from sound/direct_sound_samples/88E4140.aif rename to sound/direct_sound_samples/phonemes/18.aif diff --git a/sound/direct_sound_samples/88E4774.aif b/sound/direct_sound_samples/phonemes/19.aif similarity index 100% rename from sound/direct_sound_samples/88E4774.aif rename to sound/direct_sound_samples/phonemes/19.aif diff --git a/sound/direct_sound_samples/88E53E0.aif b/sound/direct_sound_samples/phonemes/20.aif similarity index 100% rename from sound/direct_sound_samples/88E53E0.aif rename to sound/direct_sound_samples/phonemes/20.aif diff --git a/sound/direct_sound_samples/88E5978.aif b/sound/direct_sound_samples/phonemes/21.aif similarity index 100% rename from sound/direct_sound_samples/88E5978.aif rename to sound/direct_sound_samples/phonemes/21.aif diff --git a/sound/direct_sound_samples/88E647C.aif b/sound/direct_sound_samples/phonemes/22.aif similarity index 100% rename from sound/direct_sound_samples/88E647C.aif rename to sound/direct_sound_samples/phonemes/22.aif diff --git a/sound/direct_sound_samples/88E6A80.aif b/sound/direct_sound_samples/phonemes/23.aif similarity index 100% rename from sound/direct_sound_samples/88E6A80.aif rename to sound/direct_sound_samples/phonemes/23.aif diff --git a/sound/direct_sound_samples/88E6C78.aif b/sound/direct_sound_samples/phonemes/24.aif similarity index 100% rename from sound/direct_sound_samples/88E6C78.aif rename to sound/direct_sound_samples/phonemes/24.aif diff --git a/sound/direct_sound_samples/88E75DC.aif b/sound/direct_sound_samples/phonemes/25.aif similarity index 100% rename from sound/direct_sound_samples/88E75DC.aif rename to sound/direct_sound_samples/phonemes/25.aif diff --git a/sound/direct_sound_samples/88E8568.aif b/sound/direct_sound_samples/phonemes/26.aif similarity index 100% rename from sound/direct_sound_samples/88E8568.aif rename to sound/direct_sound_samples/phonemes/26.aif diff --git a/sound/direct_sound_samples/88E8BA0.aif b/sound/direct_sound_samples/phonemes/27.aif similarity index 100% rename from sound/direct_sound_samples/88E8BA0.aif rename to sound/direct_sound_samples/phonemes/27.aif diff --git a/sound/direct_sound_samples/88E9674.aif b/sound/direct_sound_samples/phonemes/28.aif similarity index 100% rename from sound/direct_sound_samples/88E9674.aif rename to sound/direct_sound_samples/phonemes/28.aif diff --git a/sound/direct_sound_samples/88EA5B8.aif b/sound/direct_sound_samples/phonemes/29.aif similarity index 100% rename from sound/direct_sound_samples/88EA5B8.aif rename to sound/direct_sound_samples/phonemes/29.aif diff --git a/sound/direct_sound_samples/88EAB30.aif b/sound/direct_sound_samples/phonemes/30.aif similarity index 100% rename from sound/direct_sound_samples/88EAB30.aif rename to sound/direct_sound_samples/phonemes/30.aif diff --git a/sound/direct_sound_samples/88EB97C.aif b/sound/direct_sound_samples/phonemes/31.aif similarity index 100% rename from sound/direct_sound_samples/88EB97C.aif rename to sound/direct_sound_samples/phonemes/31.aif diff --git a/sound/direct_sound_samples/88EC884.aif b/sound/direct_sound_samples/phonemes/32.aif similarity index 100% rename from sound/direct_sound_samples/88EC884.aif rename to sound/direct_sound_samples/phonemes/32.aif diff --git a/sound/direct_sound_samples/88ED358.aif b/sound/direct_sound_samples/phonemes/33.aif similarity index 100% rename from sound/direct_sound_samples/88ED358.aif rename to sound/direct_sound_samples/phonemes/33.aif diff --git a/sound/direct_sound_samples/88EDEEC.aif b/sound/direct_sound_samples/phonemes/34.aif similarity index 100% rename from sound/direct_sound_samples/88EDEEC.aif rename to sound/direct_sound_samples/phonemes/34.aif diff --git a/sound/direct_sound_samples/88EE8C4.aif b/sound/direct_sound_samples/phonemes/35.aif similarity index 100% rename from sound/direct_sound_samples/88EE8C4.aif rename to sound/direct_sound_samples/phonemes/35.aif diff --git a/sound/direct_sound_samples/88EEF04.aif b/sound/direct_sound_samples/phonemes/36.aif similarity index 100% rename from sound/direct_sound_samples/88EEF04.aif rename to sound/direct_sound_samples/phonemes/36.aif diff --git a/sound/direct_sound_samples/88EF9E4.aif b/sound/direct_sound_samples/phonemes/37.aif similarity index 100% rename from sound/direct_sound_samples/88EF9E4.aif rename to sound/direct_sound_samples/phonemes/37.aif diff --git a/sound/direct_sound_samples/88F0020.aif b/sound/direct_sound_samples/phonemes/38.aif similarity index 100% rename from sound/direct_sound_samples/88F0020.aif rename to sound/direct_sound_samples/phonemes/38.aif diff --git a/sound/direct_sound_samples/88F0738.aif b/sound/direct_sound_samples/phonemes/39.aif similarity index 100% rename from sound/direct_sound_samples/88F0738.aif rename to sound/direct_sound_samples/phonemes/39.aif diff --git a/sound/direct_sound_samples/88F1074.aif b/sound/direct_sound_samples/phonemes/40.aif similarity index 100% rename from sound/direct_sound_samples/88F1074.aif rename to sound/direct_sound_samples/phonemes/40.aif diff --git a/sound/direct_sound_samples/88F1830.aif b/sound/direct_sound_samples/phonemes/41.aif similarity index 100% rename from sound/direct_sound_samples/88F1830.aif rename to sound/direct_sound_samples/phonemes/41.aif diff --git a/sound/direct_sound_samples/88F1D94.aif b/sound/direct_sound_samples/phonemes/42.aif similarity index 100% rename from sound/direct_sound_samples/88F1D94.aif rename to sound/direct_sound_samples/phonemes/42.aif diff --git a/sound/direct_sound_samples/88F2B08.aif b/sound/direct_sound_samples/phonemes/43.aif similarity index 100% rename from sound/direct_sound_samples/88F2B08.aif rename to sound/direct_sound_samples/phonemes/43.aif diff --git a/sound/direct_sound_samples/88F2F84.aif b/sound/direct_sound_samples/phonemes/44.aif similarity index 100% rename from sound/direct_sound_samples/88F2F84.aif rename to sound/direct_sound_samples/phonemes/44.aif diff --git a/sound/direct_sound_samples/88F3470.aif b/sound/direct_sound_samples/phonemes/45.aif similarity index 100% rename from sound/direct_sound_samples/88F3470.aif rename to sound/direct_sound_samples/phonemes/45.aif diff --git a/sound/direct_sound_samples/88F3C38.aif b/sound/direct_sound_samples/phonemes/46.aif similarity index 100% rename from sound/direct_sound_samples/88F3C38.aif rename to sound/direct_sound_samples/phonemes/46.aif diff --git a/sound/direct_sound_samples/88F4834.aif b/sound/direct_sound_samples/phonemes/47.aif similarity index 100% rename from sound/direct_sound_samples/88F4834.aif rename to sound/direct_sound_samples/phonemes/47.aif diff --git a/sound/direct_sound_samples/88F4BAC.aif b/sound/direct_sound_samples/phonemes/48.aif similarity index 100% rename from sound/direct_sound_samples/88F4BAC.aif rename to sound/direct_sound_samples/phonemes/48.aif diff --git a/sound/direct_sound_samples/88F5368.aif b/sound/direct_sound_samples/phonemes/49.aif similarity index 100% rename from sound/direct_sound_samples/88F5368.aif rename to sound/direct_sound_samples/phonemes/49.aif diff --git a/sound/direct_sound_samples/88F5FCC.aif b/sound/direct_sound_samples/phonemes/50.aif similarity index 100% rename from sound/direct_sound_samples/88F5FCC.aif rename to sound/direct_sound_samples/phonemes/50.aif diff --git a/sound/direct_sound_samples/88F6498.aif b/sound/direct_sound_samples/phonemes/51.aif similarity index 100% rename from sound/direct_sound_samples/88F6498.aif rename to sound/direct_sound_samples/phonemes/51.aif diff --git a/sound/voicegroups/voicegroup130.inc b/sound/voicegroups/voicegroup130.inc index 6f06938aae7a..7044bb38e4b9 100644 --- a/sound/voicegroups/voicegroup130.inc +++ b/sound/voicegroups/voicegroup130.inc @@ -1,56 +1,56 @@ .align 2 voicegroup130:: - voice_directsound 60, 0, DirectSoundWaveData_88DBBC0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DC220, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DC704, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DD054, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DDAC4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DDDE4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DEA6C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DF08C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88DF414, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E01F8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E0B68, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E0F04, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E16B8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E2414, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E2658, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E3498, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E3DEC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E4140, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E4774, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E53E0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E5978, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E647C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E6A80, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E6C78, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E75DC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E8568, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E8BA0, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88E9674, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EA5B8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EAB30, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EB97C, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EC884, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88ED358, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EDEEC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EE8C4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EEF04, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88EF9E4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F0020, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F0738, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1074, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1830, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F1D94, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F2B08, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F2F84, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F3470, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F3C38, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F4834, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F4BAC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F5368, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F5FCC, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_88F6498, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_1, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_2, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_3, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_5, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_6, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_7, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_9, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_10, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_11, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_12, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_13, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_14, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_15, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_16, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_17, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_18, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_19, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_20, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_21, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_22, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_23, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_24, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_25, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_26, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_27, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_28, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_29, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_30, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_31, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_32, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_33, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_34, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_35, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_36, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_37, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_38, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_39, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_40, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_41, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_42, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_43, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_44, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_45, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_46, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_47, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_48, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_49, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_50, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_51, 255, 0, 255, 0 voice_keysplit_all voicegroup001 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 From b282bbc2702f57322401247fae1a5e8a1281d149 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Sat, 6 Nov 2021 14:55:27 -0300 Subject: [PATCH 389/762] Using WEATHER_SANDSTORM in battle_setup --- src/battle_setup.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/battle_setup.c b/src/battle_setup.c index a1b01f9c1592..a9d4eeddf53c 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -46,6 +46,7 @@ #include "constants/maps.h" #include "constants/trainers.h" #include "constants/trainer_hill.h" +#include "constants/weather.h" enum { TRANSITION_TYPE_NORMAL, @@ -686,7 +687,7 @@ u8 BattleSetup_GetTerrainId(void) } if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE113)) return BATTLE_TERRAIN_SAND; - if (GetSav1Weather() == 8) + if (GetSav1Weather() == WEATHER_SANDSTORM) return BATTLE_TERRAIN_SAND; return BATTLE_TERRAIN_PLAIN; From 4f825a6ee012c925b3da100b67d363676a03029d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 6 Nov 2021 17:00:24 -0400 Subject: [PATCH 390/762] Give generic names to unknown direct sound wave data --- sound/direct_sound_data.inc | 72 +++++++++--------- .../{8725A2C.aif => unknown_01.aif} | Bin .../{872762C.aif => unknown_02.aif} | Bin .../{872921C.aif => unknown_03.aif} | Bin .../{872A5D0.aif => unknown_04.aif} | Bin .../{872EEA8.aif => unknown_05.aif} | Bin .../{87301B0.aif => unknown_06.aif} | Bin .../{8734298.aif => unknown_07.aif} | Bin .../{87364A8.aif => unknown_08.aif} | Bin .../{87385E4.aif => unknown_09.aif} | Bin .../{873ECD8.aif => unknown_10.aif} | Bin .../{8740818.aif => unknown_11.aif} | Bin .../{87424B0.aif => unknown_12.aif} | Bin .../{87430C0.aif => unknown_13.aif} | Bin .../{8743C50.aif => unknown_14.aif} | Bin .../{87446EC.aif => unknown_15.aif} | Bin .../{8745034.aif => unknown_16.aif} | Bin .../{8745A7C.aif => unknown_17.aif} | Bin .../{88D6978.aif => unknown_18.aif} | Bin sound/voicegroups/voicegroup098.inc | 2 +- sound/voicegroups/voicegroup128.inc | 36 ++++----- sound/voicegroups/voicegroup129.inc | 4 +- sound/voicegroups/voicegroup163.inc | 2 +- 23 files changed, 58 insertions(+), 58 deletions(-) rename sound/direct_sound_samples/{8725A2C.aif => unknown_01.aif} (100%) rename sound/direct_sound_samples/{872762C.aif => unknown_02.aif} (100%) rename sound/direct_sound_samples/{872921C.aif => unknown_03.aif} (100%) rename sound/direct_sound_samples/{872A5D0.aif => unknown_04.aif} (100%) rename sound/direct_sound_samples/{872EEA8.aif => unknown_05.aif} (100%) rename sound/direct_sound_samples/{87301B0.aif => unknown_06.aif} (100%) rename sound/direct_sound_samples/{8734298.aif => unknown_07.aif} (100%) rename sound/direct_sound_samples/{87364A8.aif => unknown_08.aif} (100%) rename sound/direct_sound_samples/{87385E4.aif => unknown_09.aif} (100%) rename sound/direct_sound_samples/{873ECD8.aif => unknown_10.aif} (100%) rename sound/direct_sound_samples/{8740818.aif => unknown_11.aif} (100%) rename sound/direct_sound_samples/{87424B0.aif => unknown_12.aif} (100%) rename sound/direct_sound_samples/{87430C0.aif => unknown_13.aif} (100%) rename sound/direct_sound_samples/{8743C50.aif => unknown_14.aif} (100%) rename sound/direct_sound_samples/{87446EC.aif => unknown_15.aif} (100%) rename sound/direct_sound_samples/{8745034.aif => unknown_16.aif} (100%) rename sound/direct_sound_samples/{8745A7C.aif => unknown_17.aif} (100%) rename sound/direct_sound_samples/{88D6978.aif => unknown_18.aif} (100%) diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index bc277d144c57..298088ef417c 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -283,24 +283,24 @@ DirectSoundWaveData_bicycle_bell:: .incbin "sound/direct_sound_samples/bicycle_bell.bin" .align 2 -DirectSoundWaveData_8725A2C:: - .incbin "sound/direct_sound_samples/8725A2C.bin" +DirectSoundWaveData_unknown_1:: + .incbin "sound/direct_sound_samples/unknown_01.bin" .align 2 DirectSoundWaveData_sc88pro_pizzicato_strings:: .incbin "sound/direct_sound_samples/sc88pro_pizzicato_strings.bin" .align 2 -DirectSoundWaveData_872762C:: - .incbin "sound/direct_sound_samples/872762C.bin" +DirectSoundWaveData_unknown_2:: + .incbin "sound/direct_sound_samples/unknown_02.bin" .align 2 -DirectSoundWaveData_872921C:: - .incbin "sound/direct_sound_samples/872921C.bin" +DirectSoundWaveData_unknown_3:: + .incbin "sound/direct_sound_samples/unknown_03.bin" .align 2 -DirectSoundWaveData_872A5D0:: - .incbin "sound/direct_sound_samples/872A5D0.bin" +DirectSoundWaveData_unknown_4:: + .incbin "sound/direct_sound_samples/unknown_04.bin" .align 2 DirectSoundWaveData_sc88pro_wind:: @@ -311,32 +311,32 @@ DirectSoundWaveData_sc88pro_bubbles:: .incbin "sound/direct_sound_samples/sc88pro_bubbles.bin" .align 2 -DirectSoundWaveData_872EEA8:: - .incbin "sound/direct_sound_samples/872EEA8.bin" +DirectSoundWaveData_unknown_5:: + .incbin "sound/direct_sound_samples/unknown_05.bin" .align 2 -DirectSoundWaveData_87301B0:: - .incbin "sound/direct_sound_samples/87301B0.bin" +DirectSoundWaveData_unknown_6:: + .incbin "sound/direct_sound_samples/unknown_06.bin" .align 2 DirectSoundWaveData_trinity_30303_mega_bass:: .incbin "sound/direct_sound_samples/trinity_30303_mega_bass.bin" .align 2 -DirectSoundWaveData_8734298:: - .incbin "sound/direct_sound_samples/8734298.bin" +DirectSoundWaveData_unknown_7:: + .incbin "sound/direct_sound_samples/unknown_07.bin" .align 2 -DirectSoundWaveData_87364A8:: - .incbin "sound/direct_sound_samples/87364A8.bin" +DirectSoundWaveData_unknown_8:: + .incbin "sound/direct_sound_samples/unknown_08.bin" .align 2 DirectSoundWaveData_sc88pro_tubular_bell:: .incbin "sound/direct_sound_samples/sc88pro_tubular_bell.bin" .align 2 -DirectSoundWaveData_87385E4:: - .incbin "sound/direct_sound_samples/87385E4.bin" +DirectSoundWaveData_unknown_9:: + .incbin "sound/direct_sound_samples/unknown_09.bin" .align 2 DirectSoundWaveData_trinity_big_boned:: @@ -351,40 +351,40 @@ DirectSoundWaveData_sc88pro_xylophone:: .incbin "sound/direct_sound_samples/sc88pro_xylophone.bin" .align 2 -DirectSoundWaveData_873ECD8:: - .incbin "sound/direct_sound_samples/873ECD8.bin" +DirectSoundWaveData_unknown_10:: + .incbin "sound/direct_sound_samples/unknown_10.bin" .align 2 -DirectSoundWaveData_8740818:: - .incbin "sound/direct_sound_samples/8740818.bin" +DirectSoundWaveData_unknown_11:: + .incbin "sound/direct_sound_samples/unknown_11.bin" .align 2 DirectSoundWaveData_sc88pro_accordion:: .incbin "sound/direct_sound_samples/sc88pro_accordion.bin" .align 2 -DirectSoundWaveData_87424B0:: - .incbin "sound/direct_sound_samples/87424B0.bin" +DirectSoundWaveData_unknown_12:: + .incbin "sound/direct_sound_samples/unknown_12.bin" .align 2 -DirectSoundWaveData_87430C0:: - .incbin "sound/direct_sound_samples/87430C0.bin" +DirectSoundWaveData_unknown_13:: + .incbin "sound/direct_sound_samples/unknown_13.bin" .align 2 -DirectSoundWaveData_8743C50:: - .incbin "sound/direct_sound_samples/8743C50.bin" +DirectSoundWaveData_unknown_14:: + .incbin "sound/direct_sound_samples/unknown_14.bin" .align 2 -DirectSoundWaveData_87446EC:: - .incbin "sound/direct_sound_samples/87446EC.bin" +DirectSoundWaveData_unknown_15:: + .incbin "sound/direct_sound_samples/unknown_15.bin" .align 2 -DirectSoundWaveData_8745034:: - .incbin "sound/direct_sound_samples/8745034.bin" +DirectSoundWaveData_unknown_16:: + .incbin "sound/direct_sound_samples/unknown_16.bin" .align 2 -DirectSoundWaveData_8745A7C:: - .incbin "sound/direct_sound_samples/8745A7C.bin" +DirectSoundWaveData_unknown_17:: + .incbin "sound/direct_sound_samples/unknown_17.bin" .align 2 Cry_Bulbasaur:: @@ -1943,8 +1943,8 @@ DirectSoundWaveData_register_noise:: .incbin "sound/direct_sound_samples/register_noise.bin" .align 2 -DirectSoundWaveData_88D6978:: - .incbin "sound/direct_sound_samples/88D6978.bin" +DirectSoundWaveData_unknown_18:: + .incbin "sound/direct_sound_samples/unknown_18.bin" .align 2 DirectSoundWaveData_sc88pro_nylon_str_guitar:: diff --git a/sound/direct_sound_samples/8725A2C.aif b/sound/direct_sound_samples/unknown_01.aif similarity index 100% rename from sound/direct_sound_samples/8725A2C.aif rename to sound/direct_sound_samples/unknown_01.aif diff --git a/sound/direct_sound_samples/872762C.aif b/sound/direct_sound_samples/unknown_02.aif similarity index 100% rename from sound/direct_sound_samples/872762C.aif rename to sound/direct_sound_samples/unknown_02.aif diff --git a/sound/direct_sound_samples/872921C.aif b/sound/direct_sound_samples/unknown_03.aif similarity index 100% rename from sound/direct_sound_samples/872921C.aif rename to sound/direct_sound_samples/unknown_03.aif diff --git a/sound/direct_sound_samples/872A5D0.aif b/sound/direct_sound_samples/unknown_04.aif similarity index 100% rename from sound/direct_sound_samples/872A5D0.aif rename to sound/direct_sound_samples/unknown_04.aif diff --git a/sound/direct_sound_samples/872EEA8.aif b/sound/direct_sound_samples/unknown_05.aif similarity index 100% rename from sound/direct_sound_samples/872EEA8.aif rename to sound/direct_sound_samples/unknown_05.aif diff --git a/sound/direct_sound_samples/87301B0.aif b/sound/direct_sound_samples/unknown_06.aif similarity index 100% rename from sound/direct_sound_samples/87301B0.aif rename to sound/direct_sound_samples/unknown_06.aif diff --git a/sound/direct_sound_samples/8734298.aif b/sound/direct_sound_samples/unknown_07.aif similarity index 100% rename from sound/direct_sound_samples/8734298.aif rename to sound/direct_sound_samples/unknown_07.aif diff --git a/sound/direct_sound_samples/87364A8.aif b/sound/direct_sound_samples/unknown_08.aif similarity index 100% rename from sound/direct_sound_samples/87364A8.aif rename to sound/direct_sound_samples/unknown_08.aif diff --git a/sound/direct_sound_samples/87385E4.aif b/sound/direct_sound_samples/unknown_09.aif similarity index 100% rename from sound/direct_sound_samples/87385E4.aif rename to sound/direct_sound_samples/unknown_09.aif diff --git a/sound/direct_sound_samples/873ECD8.aif b/sound/direct_sound_samples/unknown_10.aif similarity index 100% rename from sound/direct_sound_samples/873ECD8.aif rename to sound/direct_sound_samples/unknown_10.aif diff --git a/sound/direct_sound_samples/8740818.aif b/sound/direct_sound_samples/unknown_11.aif similarity index 100% rename from sound/direct_sound_samples/8740818.aif rename to sound/direct_sound_samples/unknown_11.aif diff --git a/sound/direct_sound_samples/87424B0.aif b/sound/direct_sound_samples/unknown_12.aif similarity index 100% rename from sound/direct_sound_samples/87424B0.aif rename to sound/direct_sound_samples/unknown_12.aif diff --git a/sound/direct_sound_samples/87430C0.aif b/sound/direct_sound_samples/unknown_13.aif similarity index 100% rename from sound/direct_sound_samples/87430C0.aif rename to sound/direct_sound_samples/unknown_13.aif diff --git a/sound/direct_sound_samples/8743C50.aif b/sound/direct_sound_samples/unknown_14.aif similarity index 100% rename from sound/direct_sound_samples/8743C50.aif rename to sound/direct_sound_samples/unknown_14.aif diff --git a/sound/direct_sound_samples/87446EC.aif b/sound/direct_sound_samples/unknown_15.aif similarity index 100% rename from sound/direct_sound_samples/87446EC.aif rename to sound/direct_sound_samples/unknown_15.aif diff --git a/sound/direct_sound_samples/8745034.aif b/sound/direct_sound_samples/unknown_16.aif similarity index 100% rename from sound/direct_sound_samples/8745034.aif rename to sound/direct_sound_samples/unknown_16.aif diff --git a/sound/direct_sound_samples/8745A7C.aif b/sound/direct_sound_samples/unknown_17.aif similarity index 100% rename from sound/direct_sound_samples/8745A7C.aif rename to sound/direct_sound_samples/unknown_17.aif diff --git a/sound/direct_sound_samples/88D6978.aif b/sound/direct_sound_samples/unknown_18.aif similarity index 100% rename from sound/direct_sound_samples/88D6978.aif rename to sound/direct_sound_samples/unknown_18.aif diff --git a/sound/voicegroups/voicegroup098.inc b/sound/voicegroups/voicegroup098.inc index d670cb16d0b8..3a927368bca3 100644 --- a/sound/voicegroups/voicegroup098.inc +++ b/sound/voicegroups/voicegroup098.inc @@ -125,7 +125,7 @@ voicegroup098:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_10, 255, 255, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 voice_noise_alt 60, 0, 0, 0, 1, 0, 0 diff --git a/sound/voicegroups/voicegroup128.inc b/sound/voicegroups/voicegroup128.inc index ce4904626ab0..69b52d29d67e 100644 --- a/sound/voicegroups/voicegroup128.inc +++ b/sound/voicegroups/voicegroup128.inc @@ -8,17 +8,17 @@ voicegroup128:: voice_noise_alt 60, 0, 1, 0, 1, 0, 1 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 255, 165 voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_1, 255, 0, 255, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_872762C, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_2, 255, 0, 255, 127 voice_noise_alt 60, 0, 1, 0, 2, 0, 0 voice_square_1 60, 0, 103, 3, 2, 7, 0, 0 voice_square_2 60, 0, 3, 2, 7, 0, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 226, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_3, 255, 0, 255, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 204, 0, 127 voice_square_1_alt 60, 0, 0, 2, 0, 2, 0, 1 - voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_4, 255, 0, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_square_wave, 255, 0, 255, 127 voice_square_1 60, 0, 103, 0, 0, 7, 0, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 127 @@ -26,22 +26,22 @@ voicegroup128:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_bubbles, 255, 0, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 127 voice_noise_alt 60, 0, 0, 0, 7, 15, 1 - voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_5, 255, 0, 255, 127 voice_noise_alt 60, 0, 1, 0, 7, 15, 1 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 246, 0, 127 - voice_directsound 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_6, 255, 0, 255, 127 voice_square_1_alt 60, 0, 19, 2, 0, 2, 0, 0 voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 0, 255, 127 voice_square_1 60, 0, 103, 0, 0, 0, 15, 0 - voice_directsound_alt 60, 0, DirectSoundWaveData_87301B0, 255, 0, 255, 127 + voice_directsound_alt 60, 0, DirectSoundWaveData_unknown_6, 255, 0, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 255, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 0, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_8734298, 255, 0, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_7, 255, 0, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 242, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_87364A8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_unknown_8, 255, 0, 255, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 voice_directsound 60, 0, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 - voice_directsound 60, 0, DirectSoundWaveData_87385E4, 255, 249, 0, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_9, 255, 249, 0, 165 voice_square_1 60, 0, 0, 0, 4, 6, 0, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 13, 0, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 13, 0, 255, 127 @@ -60,10 +60,10 @@ voicegroup128:: voice_noise_alt 60, 0, 0, 1, 6, 0, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 255, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound 60, 0, DirectSoundWaveData_873ECD8, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_10, 255, 255, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 11, 242, 0, 127 voice_square_1_alt 60, 0, 0, 2, 4, 6, 0, 0 - voice_directsound 60, 0, DirectSoundWaveData_8740818, 255, 255, 255, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_11, 255, 255, 255, 127 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 voice_directsound 60, 0, DirectSoundWaveData_unused_sc55_tom, 255, 0, 255, 165 voice_noise_alt 60, 0, 0, 5, 7, 15, 1 @@ -122,10 +122,10 @@ voicegroup128:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_87424B0, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_87430C0, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8743C50, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_87446EC, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8745034, 255, 0, 255, 165 - voice_directsound 60, 0, DirectSoundWaveData_8745A7C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_12, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_13, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_14, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_15, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_16, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_17, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup129.inc b/sound/voicegroups/voicegroup129.inc index ad94d1f70417..8e136bdf48dc 100644 --- a/sound/voicegroups/voicegroup129.inc +++ b/sound/voicegroups/voicegroup129.inc @@ -5,11 +5,11 @@ voicegroup129:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 226, 25, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_8725A2C, 255, 0, 255, 165 + voice_directsound 60, 0, DirectSoundWaveData_unknown_1, 255, 0, 255, 165 voice_directsound 60, 0, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 voice_directsound 60, 0, DirectSoundWaveData_sd90_open_triangle, 255, 204, 128, 249 voice_directsound 60, 0, DirectSoundWaveData_register_noise, 255, 0, 255, 76 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_directsound 60, 0, DirectSoundWaveData_unknown_18, 255, 0, 206, 204 voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 206, 38 voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 206, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup163.inc b/sound/voicegroups/voicegroup163.inc index b8a3303f07e7..cd7c6ebef27e 100644 --- a/sound/voicegroups/voicegroup163.inc +++ b/sound/voicegroups/voicegroup163.inc @@ -58,7 +58,7 @@ voicegroup163:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_keysplit voicegroup007, KeySplitTable3 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_88D6978, 255, 0, 206, 204 + voice_directsound 60, 0, DirectSoundWaveData_unknown_18, 255, 0, 206, 204 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 From 54b254a829d973345b0d282b7a4ffd7458a5c7da Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 7 Nov 2021 12:58:11 -0500 Subject: [PATCH 391/762] Add CRY_MODE constants --- asm/macros/event.inc | 10 +- asm/macros/music_voice.inc | 2 +- data/battle_anim_scripts.s | 6 +- data/event_scripts.s | 1 + data/maps/AncientTomb/scripts.inc | 2 +- data/maps/AquaHideout_B1F/scripts.inc | 4 +- .../scripts.inc | 12 +- .../BattleFrontier_OutsideEast/scripts.inc | 4 +- .../scripts.inc | 2 +- data/maps/BirthIsland_Exterior/scripts.inc | 2 +- data/maps/DesertRuins/scripts.inc | 2 +- data/maps/DewfordTown_House1/scripts.inc | 2 +- data/maps/FallarborTown/scripts.inc | 2 +- data/maps/FallarborTown_Mart/scripts.inc | 2 +- data/maps/FarawayIsland_Interior/scripts.inc | 2 +- data/maps/FortreeCity/scripts.inc | 2 +- data/maps/FortreeCity_House1/scripts.inc | 2 +- data/maps/FortreeCity_House4/scripts.inc | 2 +- data/maps/FortreeCity_House5/scripts.inc | 2 +- data/maps/IslandCave/scripts.inc | 2 +- data/maps/LavaridgeTown_House/scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/LilycoveCity_House1/scripts.inc | 2 +- data/maps/MarineCave_End/scripts.inc | 2 +- data/maps/MossdeepCity_House2/scripts.inc | 2 +- data/maps/MossdeepCity_House4/scripts.inc | 2 +- data/maps/NavelRock_Bottom/scripts.inc | 2 +- data/maps/NavelRock_Top/scripts.inc | 2 +- data/maps/NewMauville_Inside/scripts.inc | 6 +- data/maps/PacifidlogTown_House2/scripts.inc | 4 +- data/maps/Route104_MrBrineysHouse/scripts.inc | 2 +- data/maps/Route109/scripts.inc | 2 +- data/maps/Route114/scripts.inc | 2 +- data/maps/Route119_House/scripts.inc | 2 +- data/maps/Route120/scripts.inc | 2 +- data/maps/RustboroCity_Flat2_1F/scripts.inc | 2 +- data/maps/RustboroCity_House3/scripts.inc | 2 +- data/maps/RusturfTunnel/scripts.inc | 4 +- data/maps/SSTidalCorridor/scripts.inc | 2 +- data/maps/SkyPillar_Top/scripts.inc | 6 +- .../SlateportCity_PokemonFanClub/scripts.inc | 6 +- data/maps/SootopolisCity/scripts.inc | 20 +- data/maps/SootopolisCity_House1/scripts.inc | 2 +- data/maps/SootopolisCity_House4/scripts.inc | 2 +- data/maps/SouthernIsland_Interior/scripts.inc | 2 +- data/maps/TerraCave_End/scripts.inc | 2 +- .../scripts.inc | 2 +- data/scripts/cave_of_origin.inc | 2 +- data/scripts/day_care.inc | 4 +- data/scripts/kecleon.inc | 2 +- data/scripts/lilycove_lady.inc | 12 +- data/scripts/players_house.inc | 4 +- include/constants/sound.h | 41 + include/sound.h | 21 +- sound/cry_tables.inc | 778 +++++++++--------- src/battle_anim_sound_tasks.c | 25 +- src/battle_controller_link_opponent.c | 2 +- src/battle_controller_link_partner.c | 2 +- src/battle_controller_opponent.c | 2 +- src/battle_controller_player.c | 2 +- src/battle_controller_player_partner.c | 2 +- src/battle_controller_recorded_opponent.c | 2 +- src/battle_controller_recorded_player.c | 2 +- src/intro.c | 2 +- src/pokeball.c | 14 +- src/pokemon_summary_screen.c | 4 +- src/sound.c | 66 +- 67 files changed, 586 insertions(+), 556 deletions(-) create mode 100644 include/constants/sound.h diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 62437ccb8abd..27a43972589b 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -334,10 +334,10 @@ .byte 0x30 .endm - @ Plays the specified (fanfare_number) fanfare. - .macro playfanfare fanfare_number:req + @ 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 songNumber:req .byte 0x31 - .2byte \fanfare_number + .2byte \songNumber .endm @ Blocks script execution until all currently-playing fanfares finish. @@ -1208,10 +1208,10 @@ .endm @ Plays the specified (species) Pokemon's cry. You can use waitcry to block script execution until the sound finishes. - .macro playmoncry species:req, effect:req + .macro playmoncry species:req, mode:req .byte 0xa1 .2byte \species - .2byte \effect + .2byte \mode .endm @ Changes the metatile at (x, y) on the current map. diff --git a/asm/macros/music_voice.inc b/asm/macros/music_voice.inc index 64dd3821407b..ff87c56d6ba2 100644 --- a/asm/macros/music_voice.inc +++ b/asm/macros/music_voice.inc @@ -145,7 +145,7 @@ .byte 0xff, 0, 0xff, 0 .endm - .macro cry2 sample:req + .macro cry_reverse sample:req .byte 0x30, 60, 0, 0 .4byte \sample .byte 0xff, 0, 0xff, 0 diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 2c5c9ba046af..aea55fcd17d2 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -2,6 +2,7 @@ #include "constants/battle_anim.h" #include "constants/rgb.h" #include "constants/songs.h" +#include "constants/sound.h" #include "constants/moves.h" .include "asm/macros.inc" .include "asm/macros/battle_anim_script.inc" @@ -4960,7 +4961,7 @@ Move_ROAR: monbg ANIM_ATTACKER splitbgprio ANIM_ATTACKER setalpha 8, 8 - createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, 2 + createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_ROAR createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1 call RoarEffect delay 20 @@ -4985,7 +4986,7 @@ RoarEffect: Move_GROWL: loadspritegfx ANIM_TAG_NOISE_LINE - createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, 255 + createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_GROWL call RoarEffect delay 10 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 9, 1 @@ -8507,6 +8508,7 @@ Move_HYPER_VOICE: call HyperVoiceEffect waitforvisualfinish end + HyperVoiceEffect: createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 8, 0, RGB_YELLOW createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 diff --git a/data/event_scripts.s b/data/event_scripts.s index bbf25c93cfa0..77af6761b731 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -44,6 +44,7 @@ #include "constants/script_menu.h" #include "constants/secret_bases.h" #include "constants/songs.h" +#include "constants/sound.h" #include "constants/species.h" #include "constants/trade.h" #include "constants/trainer_hill.h" diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index edbb75ccc560..f2e242bbd693 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -59,7 +59,7 @@ AncientTomb_EventScript_Registeel:: lock faceplayer waitse - playmoncry SPECIES_REGISTEEL, 2 + playmoncry SPECIES_REGISTEEL, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_REGISTEEL, 40, ITEM_NONE diff --git a/data/maps/AquaHideout_B1F/scripts.inc b/data/maps/AquaHideout_B1F/scripts.inc index 4a4a95cc4414..2a6f156e5c52 100644 --- a/data/maps/AquaHideout_B1F/scripts.inc +++ b/data/maps/AquaHideout_B1F/scripts.inc @@ -32,7 +32,7 @@ AquaHideout_B1F_EventScript_Electrode1:: faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playmoncry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, CRY_MODE_ENCOUNTER delay 40 waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE @@ -59,7 +59,7 @@ AquaHideout_B1F_EventScript_Electrode2:: faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playmoncry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, CRY_MODE_ENCOUNTER delay 40 waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 6ab862287c04..5bd04bfb4035 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -303,7 +303,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_KirliaStop, MSGBOX_DEFAULT closemessage waitse - playmoncry SPECIES_KIRLIA, 0 + playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL waitmoncry pike_getstatus compare VAR_RESULT, PIKE_STATUS_TOXIC @@ -321,11 +321,11 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC waitmovement 0 waitse - playmoncry SPECIES_KIRLIA, 0 + playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL waitmoncry msgbox BattleFrontier_BattlePikeRoomNormal_Text_ThatsEnough, MSGBOX_DEFAULT waitse - playmoncry SPECIES_KIRLIA, 0 + playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL waitmoncry closemessage applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside @@ -338,7 +338,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_DusclopsStop, MSGBOX_DEFAULT closemessage waitse - playmoncry SPECIES_DUSCLOPS, 0 + playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL waitmoncry pike_getstatus compare VAR_RESULT, PIKE_STATUS_FREEZE @@ -352,11 +352,11 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC waitmovement 0 waitse - playmoncry SPECIES_DUSCLOPS, 0 + playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL waitmoncry msgbox BattleFrontier_BattlePikeRoomNormal_Text_ThatsEnough, MSGBOX_DEFAULT waitse - playmoncry SPECIES_DUSCLOPS, 0 + playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL waitmoncry closemessage applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc index 8166f91869f6..9157f0befea6 100644 --- a/data/maps/BattleFrontier_OutsideEast/scripts.inc +++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc @@ -72,7 +72,7 @@ BattleFrontier_OutsideEast_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox BattleFrontier_OutsideEast_Text_ZigzagoonLooksVacant, MSGBOX_DEFAULT waitmoncry release @@ -126,7 +126,7 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: msgbox gText_Sudowoodo_Attacked, MSGBOX_DEFAULT closemessage waitse - playmoncry SPECIES_SUDOWOODO, 2 + playmoncry SPECIES_SUDOWOODO, CRY_MODE_ENCOUNTER delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_SUDOWOODO diff --git a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc index 6479270503bc..44806858fbe0 100644 --- a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc +++ b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc @@ -33,7 +33,7 @@ BattleFrontier_PokemonCenter_1F_EventScript_Skitty:: lock faceplayer waitse - playmoncry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, CRY_MODE_NORMAL msgbox BattleFrontier_PokemonCenter_1F_Text_Skitty, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index 03463729cb19..cd1583b420e3 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -79,7 +79,7 @@ BirthIsland_Exterior_EventScript_Deoxys:: applymovement LOCALID_DEOXYS, BirthIsland_Exterior_Movement_DeoxysApproach waitmovement 0 waitse - playmoncry SPECIES_DEOXYS, 2 + playmoncry SPECIES_DEOXYS, CRY_MODE_ENCOUNTER delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_DEOXYS diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index 1bcaa23bff34..443915d7e213 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -59,7 +59,7 @@ DesertRuins_EventScript_Regirock:: lock faceplayer waitse - playmoncry SPECIES_REGIROCK, 2 + playmoncry SPECIES_REGIROCK, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_REGIROCK, 40, ITEM_NONE diff --git a/data/maps/DewfordTown_House1/scripts.inc b/data/maps/DewfordTown_House1/scripts.inc index 0aba45d3c7d4..cdd9d0cd296e 100644 --- a/data/maps/DewfordTown_House1/scripts.inc +++ b/data/maps/DewfordTown_House1/scripts.inc @@ -13,7 +13,7 @@ DewfordTown_House1_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox DewfordTown_House1_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/FallarborTown/scripts.inc b/data/maps/FallarborTown/scripts.inc index 809909a5ca36..96f408843621 100644 --- a/data/maps/FallarborTown/scripts.inc +++ b/data/maps/FallarborTown/scripts.inc @@ -33,7 +33,7 @@ FallarborTown_EventScript_Azurill:: lock faceplayer waitse - playmoncry SPECIES_AZURILL, 0 + playmoncry SPECIES_AZURILL, CRY_MODE_NORMAL msgbox FallarborTown_Text_Azurill, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/FallarborTown_Mart/scripts.inc b/data/maps/FallarborTown_Mart/scripts.inc index 2b18a9e14310..cb92f28f520e 100644 --- a/data/maps/FallarborTown_Mart/scripts.inc +++ b/data/maps/FallarborTown_Mart/scripts.inc @@ -41,7 +41,7 @@ FallarborTown_Mart_EventScript_Skitty:: lock faceplayer waitse - playmoncry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, CRY_MODE_NORMAL msgbox FallarborTown_Mart_Text_Skitty, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index bd2b479f70cd..5f9444f87b20 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -126,7 +126,7 @@ FarawayIsland_Interior_EventScript_Mew:: special SetMewAboveGrass message FarawayIsland_Interior_Text_Mew waitse - playmoncry SPECIES_MEW, 2 + playmoncry SPECIES_MEW, CRY_MODE_ENCOUNTER compare VAR_FACING, DIR_NORTH call_if_eq FarawayIsland_Interior_EventScript_FoundMewNorth compare VAR_FACING, DIR_SOUTH diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc index 1ef3cffc73bc..6371d5b0cd27 100644 --- a/data/maps/FortreeCity/scripts.inc +++ b/data/maps/FortreeCity/scripts.inc @@ -75,7 +75,7 @@ FortreeCity_EventScript_UseDevonScope:: applymovement VAR_LAST_TALKED, Movement_KecleonAppears waitmovement 0 waitse - playmoncry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, CRY_MODE_ENCOUNTER delay 40 waitmoncry applymovement VAR_LAST_TALKED, FortreeCity_Movement_KecleonFlee diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc index 3dd58ca34454..e25334ee9aa9 100644 --- a/data/maps/FortreeCity_House1/scripts.inc +++ b/data/maps/FortreeCity_House1/scripts.inc @@ -57,7 +57,7 @@ FortreeCity_House1_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox FortreeCity_House1_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc index 8a6d71eb4d3d..ad94337a0e67 100644 --- a/data/maps/FortreeCity_House4/scripts.inc +++ b/data/maps/FortreeCity_House4/scripts.inc @@ -59,7 +59,7 @@ FortreeCity_House4_EventScript_Wingull:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox FortreeCity_House4_Text_Wingull, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/FortreeCity_House5/scripts.inc b/data/maps/FortreeCity_House5/scripts.inc index 71fcc78cadde..eee6d358bf83 100644 --- a/data/maps/FortreeCity_House5/scripts.inc +++ b/data/maps/FortreeCity_House5/scripts.inc @@ -13,7 +13,7 @@ FortreeCity_House5_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox FortreeCity_House5_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc index af93863b7c05..d660aadf0667 100644 --- a/data/maps/IslandCave/scripts.inc +++ b/data/maps/IslandCave/scripts.inc @@ -92,7 +92,7 @@ IslandCave_EventScript_Regice:: lock faceplayer waitse - playmoncry SPECIES_REGICE, 2 + playmoncry SPECIES_REGICE, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_REGICE, 40, ITEM_NONE diff --git a/data/maps/LavaridgeTown_House/scripts.inc b/data/maps/LavaridgeTown_House/scripts.inc index 58fd8ecb259c..30f4e99ba482 100644 --- a/data/maps/LavaridgeTown_House/scripts.inc +++ b/data/maps/LavaridgeTown_House/scripts.inc @@ -9,7 +9,7 @@ LavaridgeTown_House_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox LavaridgeTown_House_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc index e1167ad7ea9f..965e4bbbcfa5 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc @@ -141,7 +141,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_Azumarill:: lock faceplayer waitse - playmoncry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, CRY_MODE_NORMAL msgbox LilycoveCity_DepartmentStore_1F_Text_Azumarill, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/LilycoveCity_House1/scripts.inc b/data/maps/LilycoveCity_House1/scripts.inc index 34e9e6d90e89..c2bd21cdc2fb 100644 --- a/data/maps/LilycoveCity_House1/scripts.inc +++ b/data/maps/LilycoveCity_House1/scripts.inc @@ -9,7 +9,7 @@ LilycoveCity_House1_EventScript_Kecleon:: lock faceplayer waitse - playmoncry SPECIES_KECLEON, 0 + playmoncry SPECIES_KECLEON, CRY_MODE_NORMAL msgbox LilycoveCity_House1_Text_Kecleon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc index 47bbf9aada76..296ef02f8270 100644 --- a/data/maps/MarineCave_End/scripts.inc +++ b/data/maps/MarineCave_End/scripts.inc @@ -32,7 +32,7 @@ MarineCave_End_EventScript_Kyogre:: applymovement LOCALID_KYOGRE, MarineCave_End_Movement_KyogreApproach waitmovement 0 waitse - playmoncry SPECIES_KYOGRE, 2 + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_KYOGRE diff --git a/data/maps/MossdeepCity_House2/scripts.inc b/data/maps/MossdeepCity_House2/scripts.inc index 63036814b2ee..5f568ac772bd 100644 --- a/data/maps/MossdeepCity_House2/scripts.inc +++ b/data/maps/MossdeepCity_House2/scripts.inc @@ -15,7 +15,7 @@ MossdeepCity_House2_EventScript_Wingull:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox MossdeepCity_House2_Text_Wingull, MSGBOX_DEFAULT waitmoncry closemessage diff --git a/data/maps/MossdeepCity_House4/scripts.inc b/data/maps/MossdeepCity_House4/scripts.inc index 85c0e5ebc055..7b7348f4e650 100644 --- a/data/maps/MossdeepCity_House4/scripts.inc +++ b/data/maps/MossdeepCity_House4/scripts.inc @@ -34,7 +34,7 @@ MossdeepCity_House4_EventScript_Skitty:: lock faceplayer waitse - playmoncry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, CRY_MODE_NORMAL msgbox MossdeepCity_House4_Text_Skitty, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc index da9e06cff30a..d79c00c687b7 100644 --- a/data/maps/NavelRock_Bottom/scripts.inc +++ b/data/maps/NavelRock_Bottom/scripts.inc @@ -51,7 +51,7 @@ NavelRock_Bottom_EventScript_Lugia:: delay 30 delay 50 waitse - playmoncry SPECIES_LUGIA, 2 + playmoncry SPECIES_LUGIA, CRY_MODE_ENCOUNTER waitmoncry delay 20 setvar VAR_0x8004, SPECIES_LUGIA diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc index 4355699ee5d3..e8b3e7e29694 100644 --- a/data/maps/NavelRock_Top/scripts.inc +++ b/data/maps/NavelRock_Top/scripts.inc @@ -47,7 +47,7 @@ NavelRock_Top_EventScript_HoOh:: setweather WEATHER_NONE doweather waitse - playmoncry SPECIES_HO_OH, 2 + playmoncry SPECIES_HO_OH, CRY_MODE_ENCOUNTER delay 30 waitmoncry delay 60 diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc index ac9572ea85f2..d924651cef7a 100644 --- a/data/maps/NewMauville_Inside/scripts.inc +++ b/data/maps/NewMauville_Inside/scripts.inc @@ -183,7 +183,7 @@ NewMauville_Inside_EventScript_Voltorb1:: faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playmoncry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE @@ -210,7 +210,7 @@ NewMauville_Inside_EventScript_Voltorb2:: faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playmoncry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE @@ -237,7 +237,7 @@ NewMauville_Inside_EventScript_Voltorb3:: faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playmoncry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index 3c0be269e26c..27f966e961a3 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -77,7 +77,7 @@ PacifidlogTown_House2_EventScript_HappyAzurill:: lock faceplayer waitse - playmoncry SPECIES_AZURILL, 0 + playmoncry SPECIES_AZURILL, CRY_MODE_NORMAL msgbox PacifidlogTown_House2_Text_Rurii, MSGBOX_DEFAULT waitmoncry msgbox PacifidlogTown_House2_Text_VeryFriendlyWithTrainer, MSGBOX_DEFAULT @@ -88,7 +88,7 @@ PacifidlogTown_House2_EventScript_UnhappyAzurill:: lock faceplayer waitse - playmoncry SPECIES_AZURILL, 2 + playmoncry SPECIES_AZURILL, CRY_MODE_ENCOUNTER msgbox PacifidlogTown_House2_Text_Rururi, MSGBOX_DEFAULT waitmoncry msgbox PacifidlogTown_House2_Text_DoesntLikeTrainerVeryMuch, MSGBOX_DEFAULT diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc index 60e08c7b89ed..f2e169d10549 100644 --- a/data/maps/Route104_MrBrineysHouse/scripts.inc +++ b/data/maps/Route104_MrBrineysHouse/scripts.inc @@ -95,7 +95,7 @@ Route104_MrBrineysHouse_EventScript_Peeko:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox Route104_MrBrineysHouse_Text_Peeko, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index 6c38a8bd7623..6370caec72d7 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -362,7 +362,7 @@ Route109_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox Route109_Text_ZigzagoonCry, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/Route114/scripts.inc b/data/maps/Route114/scripts.inc index 3eb92d0f1e6e..c0420fbf611d 100644 --- a/data/maps/Route114/scripts.inc +++ b/data/maps/Route114/scripts.inc @@ -68,7 +68,7 @@ Route114_EventScript_Poochyena:: lock faceplayer waitse - playmoncry SPECIES_POOCHYENA, 2 + playmoncry SPECIES_POOCHYENA, CRY_MODE_ENCOUNTER msgbox Route114_Text_Poochyena, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/Route119_House/scripts.inc b/data/maps/Route119_House/scripts.inc index 548b2c3948cf..9a44179a58e6 100644 --- a/data/maps/Route119_House/scripts.inc +++ b/data/maps/Route119_House/scripts.inc @@ -9,7 +9,7 @@ Route119_House_EventScript_Wingull:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox Route119_House_Text_Wingull, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index f07395824657..23eaec8c2d4d 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -210,7 +210,7 @@ Route120_EventScript_StevenBattleKecleon:: applymovement LOCALID_BRIDGE_KECLEON, Movement_KecleonAppears waitmovement 0 waitse - playmoncry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_KECLEON, 30, ITEM_NONE diff --git a/data/maps/RustboroCity_Flat2_1F/scripts.inc b/data/maps/RustboroCity_Flat2_1F/scripts.inc index eda27c71689e..7d965e8f3dbc 100644 --- a/data/maps/RustboroCity_Flat2_1F/scripts.inc +++ b/data/maps/RustboroCity_Flat2_1F/scripts.inc @@ -9,7 +9,7 @@ RustboroCity_Flat2_1F_EventScript_Skitty:: lock faceplayer waitse - playmoncry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, CRY_MODE_NORMAL msgbox RustboroCity_Flat2_1F_Text_Skitty, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/RustboroCity_House3/scripts.inc b/data/maps/RustboroCity_House3/scripts.inc index 70a359df63fb..549b4246c704 100644 --- a/data/maps/RustboroCity_House3/scripts.inc +++ b/data/maps/RustboroCity_House3/scripts.inc @@ -14,7 +14,7 @@ RustboroCity_House3_EventScript_Pekachu:: lock faceplayer waitse - playmoncry SPECIES_PIKACHU, 0 + playmoncry SPECIES_PIKACHU, CRY_MODE_NORMAL msgbox RustboroCity_House3_Text_Pekachu, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc index 1ba3c240c4a5..17408a5d17c4 100644 --- a/data/maps/RusturfTunnel/scripts.inc +++ b/data/maps/RusturfTunnel/scripts.inc @@ -307,7 +307,7 @@ RusturfTunnel_EventScript_Peeko:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox RusturfTunnel_Text_Peeko, MSGBOX_DEFAULT waitmoncry release @@ -339,7 +339,7 @@ RusturfTunnel_EventScript_Grunt:: message RusturfTunnel_Text_ThankYouLetsGoHomePeeko waitmessage waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL waitbuttonpress waitmoncry closemessage diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc index 07c397e8c85c..4ab8104f71e8 100644 --- a/data/maps/SSTidalCorridor/scripts.inc +++ b/data/maps/SSTidalCorridor/scripts.inc @@ -92,7 +92,7 @@ SSTidalCorridor_EventScript_Peeko:: lock faceplayer waitse - playmoncry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, CRY_MODE_NORMAL msgbox SSTidalCorridor_Text_Peeko, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index acbdb4c8bd40..089856d770ad 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -48,7 +48,7 @@ SkyPillar_Top_EventScript_RayquazaFaceDown:: SkyPillar_Top_EventScript_Rayquaza:: lockall waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_RAYQUAZA, 70, ITEM_NONE @@ -105,7 +105,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: applymovement LOCALID_RAYQUAZA_SLEEPING, SkyPillar_Top_Movement_RayquazaStir waitmovement 0 waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes @@ -113,7 +113,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: special ShakeCamera waitstate waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 2 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index 3bff728164f7..96e1a7633dec 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -240,7 +240,7 @@ SlateportCity_PokemonFanClub_EventScript_Skitty:: lock faceplayer waitse - playmoncry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, CRY_MODE_NORMAL msgbox SlateportCity_PokemonFanClub_Text_Skitty, MSGBOX_DEFAULT waitmoncry release @@ -250,7 +250,7 @@ SlateportCity_PokemonFanClub_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, CRY_MODE_NORMAL msgbox SlateportCity_PokemonFanClub_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release @@ -260,7 +260,7 @@ SlateportCity_PokemonFanClub_EventScript_Azumarill:: lock faceplayer waitse - playmoncry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, CRY_MODE_NORMAL msgbox SlateportCity_PokemonFanClub_Text_Azumarill, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index efeae33d1e58..bff49ede0412 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -243,7 +243,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: waitmovement 0 delay 60 waitse - playmoncry SPECIES_KYOGRE, 2 + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend waitmovement 0 @@ -257,7 +257,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack waitmovement 0 waitse - playmoncry SPECIES_GROUDON, 2 + playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack waitmovement 0 @@ -271,7 +271,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack waitmovement 0 waitse - playmoncry SPECIES_KYOGRE, 2 + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend waitmovement 0 @@ -343,7 +343,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: waitmovement 0 delay 60 waitse - playmoncry SPECIES_KYOGRE, 2 + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend waitmovement 0 @@ -357,7 +357,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack waitmovement 0 waitse - playmoncry SPECIES_GROUDON, 2 + playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack waitmovement 0 @@ -371,7 +371,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack waitmovement 0 waitse - playmoncry SPECIES_KYOGRE, 2 + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend waitmovement 0 @@ -536,7 +536,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanUp waitmovement 0 waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes @@ -544,7 +544,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: special ShakeCamera waitstate waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 2 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes @@ -589,7 +589,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerApproachLegendaries waitmovement 0 waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 1 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes @@ -597,7 +597,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: special ShakeCamera waitstate waitse - playmoncry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER setvar VAR_0x8004, 1 @ vertical pan setvar VAR_0x8005, 2 @ horizontal pan setvar VAR_0x8006, 8 @ num shakes diff --git a/data/maps/SootopolisCity_House1/scripts.inc b/data/maps/SootopolisCity_House1/scripts.inc index 1cedf7c5799a..65df8587f380 100644 --- a/data/maps/SootopolisCity_House1/scripts.inc +++ b/data/maps/SootopolisCity_House1/scripts.inc @@ -23,7 +23,7 @@ SootopolisCity_House1_EventScript_Kecleon:: lock faceplayer waitse - playmoncry SPECIES_KECLEON, 0 + playmoncry SPECIES_KECLEON, CRY_MODE_NORMAL msgbox SootopolisCity_House1_Text_Kecleon, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/SootopolisCity_House4/scripts.inc b/data/maps/SootopolisCity_House4/scripts.inc index a1102bdd9fb8..1bc2b62ea3b4 100644 --- a/data/maps/SootopolisCity_House4/scripts.inc +++ b/data/maps/SootopolisCity_House4/scripts.inc @@ -13,7 +13,7 @@ SootopolisCity_House4_EventScript_Azumarill:: lock faceplayer waitse - playmoncry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, CRY_MODE_NORMAL msgbox SootopolisCity_House4_Text_Azumarill, MSGBOX_DEFAULT waitmoncry release diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index 20ed1e58d5f8..76cbeb8483a7 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -68,7 +68,7 @@ SouthernIsland_Interior_EventScript_Lati:: waitmovement 0 delay 50 waitse - playmoncry VAR_TEMP_4, 0 + playmoncry VAR_TEMP_4, CRY_MODE_NORMAL delay 30 waitmoncry addobject LOCALID_LATI diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc index 2b35b3c51398..0036f33b5ad5 100644 --- a/data/maps/TerraCave_End/scripts.inc +++ b/data/maps/TerraCave_End/scripts.inc @@ -32,7 +32,7 @@ TerraCave_End_EventScript_Groudon:: applymovement LOCALID_GROUDON, TerraCave_End_Movement_GroudonApproach waitmovement 0 waitse - playmoncry SPECIES_GROUDON, 2 + playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_GROUDON diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc index 9d0485a77622..84cdef029ed3 100644 --- a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc +++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc @@ -56,7 +56,7 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_Pikachu:: lock faceplayer waitse - playmoncry SPECIES_PIKACHU, 0 + playmoncry SPECIES_PIKACHU, CRY_MODE_NORMAL msgbox VerdanturfTown_FriendshipRatersHouse_Text_Pikachu, MSGBOX_DEFAULT waitmoncry release diff --git a/data/scripts/cave_of_origin.inc b/data/scripts/cave_of_origin.inc index abffd07ff1cd..6773c066247f 100644 --- a/data/scripts/cave_of_origin.inc +++ b/data/scripts/cave_of_origin.inc @@ -2,7 +2,7 @@ CaveOfOrigin_EventScript_LegendaryCry:: lockall waitse - playmoncry SPECIES_KYOGRE, 2 @ SPECIES_GROUDON in Ruby + playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER @ SPECIES_GROUDON in Ruby waitmoncry setvar VAR_TEMP_5, 1 releaseall diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index f5c023147b05..8d529d5e105f 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -114,7 +114,7 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: goto_if_eq Route117_PokemonDayCare_EventScript_OnlyOneAliveMon specialvar VAR_0x8005, GetSelectedMonNicknameAndSpecies waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox Route117_PokemonDayCare_Text_WellRaiseYourMon, MSGBOX_DEFAULT waitmoncry special StoreSelectedPokemonInDaycare @@ -220,7 +220,7 @@ Route117_PokemonDayCare_EventScript_RetrieveMon:: playse SE_SHOP msgbox Route117_PokemonDayCare_Text_HeresYourMon, MSGBOX_DEFAULT waitse - playmoncry VAR_RESULT, 0 + playmoncry VAR_RESULT, CRY_MODE_NORMAL msgbox Route117_PokemonDayCare_Text_TookBackMon, MSGBOX_DEFAULT waitmoncry specialvar VAR_RESULT, GetDaycareState diff --git a/data/scripts/kecleon.inc b/data/scripts/kecleon.inc index 414217499090..82eca777d5e3 100644 --- a/data/scripts/kecleon.inc +++ b/data/scripts/kecleon.inc @@ -70,7 +70,7 @@ EventScript_BattleKecleon:: applymovement VAR_LAST_TALKED, Movement_KecleonAppears waitmovement 0 waitse - playmoncry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, CRY_MODE_ENCOUNTER delay 40 waitmoncry setwildbattle SPECIES_KECLEON, 30, ITEM_NONE diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index 137af87524dd..576fa28adeb0 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -454,7 +454,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock:: waitmovement 0 delay 60 waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL delay 120 waitmoncry compare VAR_0x8004, 1 @@ -552,7 +552,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: lock faceplayer waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox LilycoveCity_PokemonCenter_1F_Text_Zigzagoon, MSGBOX_DEFAULT waitmoncry release @@ -562,7 +562,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Skitty:: lock faceplayer waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox LilycoveCity_PokemonCenter_1F_Text_Skitty, MSGBOX_DEFAULT waitmoncry release @@ -572,7 +572,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Poochyena:: lock faceplayer waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox LilycoveCity_PokemonCenter_1F_Text_Poochyena, MSGBOX_DEFAULT waitmoncry release @@ -582,7 +582,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Kecleon:: lock faceplayer waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox LilycoveCity_PokemonCenter_1F_Text_Kecleon, MSGBOX_DEFAULT waitmoncry release @@ -592,7 +592,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_Pikachu:: lock faceplayer waitse - playmoncry VAR_0x8005, 0 + playmoncry VAR_0x8005, CRY_MODE_NORMAL msgbox LilycoveCity_PokemonCenter_1F_Text_Pikachu, MSGBOX_DEFAULT waitmoncry release diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index e7e862039ad0..ce558c588078 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -385,7 +385,7 @@ PlayersHouse_1F_EventScript_Vigoroth1:: lock faceplayer waitse - playmoncry SPECIES_VIGOROTH, 0 + playmoncry SPECIES_VIGOROTH, CRY_MODE_NORMAL msgbox PlayersHouse_1F_Text_Vigoroth1, MSGBOX_DEFAULT waitmoncry release @@ -395,7 +395,7 @@ PlayersHouse_1F_EventScript_Vigoroth2:: lock faceplayer waitse - playmoncry SPECIES_VIGOROTH, 0 + playmoncry SPECIES_VIGOROTH, CRY_MODE_NORMAL msgbox PlayersHouse_1F_Text_Vigoroth2, MSGBOX_DEFAULT waitmoncry release diff --git a/include/constants/sound.h b/include/constants/sound.h new file mode 100644 index 000000000000..82cc4ffac307 --- /dev/null +++ b/include/constants/sound.h @@ -0,0 +1,41 @@ +#ifndef GUARD_CONSTANTS_SOUND_H +#define GUARD_CONSTANTS_SOUND_H + +#define FANFARE_LEVEL_UP 0 +#define FANFARE_OBTAIN_ITEM 1 +#define FANFARE_EVOLVED 2 +#define FANFARE_OBTAIN_TMHM 3 +#define FANFARE_HEAL 4 +#define FANFARE_OBTAIN_BADGE 5 +#define FANFARE_MOVE_DELETED 6 +#define FANFARE_OBTAIN_BERRY 7 +#define FANFARE_AWAKEN_LEGEND 8 +#define FANFARE_SLOTS_JACKPOT 9 +#define FANFARE_SLOTS_WIN 10 +#define FANFARE_TOO_BAD 11 +#define FANFARE_RG_POKE_FLUTE 12 +#define FANFARE_RG_OBTAIN_KEY_ITEM 13 +#define FANFARE_RG_DEX_RATING 14 +#define FANFARE_OBTAIN_B_POINTS 15 +#define FANFARE_OBTAIN_SYMBOL 16 +#define FANFARE_REGISTER_MATCH_CALL 17 + +#define CRY_MODE_NORMAL 0 // Default +#define CRY_MODE_DOUBLES 1 // Shortened cry for double battles +#define CRY_MODE_ENCOUNTER 2 // Used when starting a static encounter, or when a PokĂ©mon is "aggressive" +#define CRY_MODE_HIGH_PITCH 3 // Highest pitch mode, used exclusively by the move Howl +#define CRY_MODE_ECHO_END 4 // For 2nd cry used by the move Hyper Voice. Played in reverse +#define CRY_MODE_FAINT 5 // Used when a PokĂ©mon faints +#define CRY_MODE_ECHO_START 6 // For 1st cry used by the move Hyper Voice +#define CRY_MODE_ROAR_1 7 // For 1st cry used by the move Roar +#define CRY_MODE_ROAR_2 8 // For 2nd cry used by the move Roar +#define CRY_MODE_GROWL_1 9 // For 1st cry used by the move Growl. Played in reverse +#define CRY_MODE_GROWL_2 10 // For 2nd cry used by the move Growl +#define CRY_MODE_WEAK 11 // Used when a PokĂ©mon is unhealthy +#define CRY_MODE_WEAK_DOUBLES 12 // Equivalent to CRY_MODE_DOUBLES for CRY_MODE_WEAK + +// Given to SoundTask_PlayDoubleCry to determine which cry mode to use. Values are arbitrary +#define DOUBLE_CRY_ROAR 2 +#define DOUBLE_CRY_GROWL 255 + +#endif // GUARD_CONSTANTS_SOUND_H diff --git a/include/sound.h b/include/sound.h index 25ffa2d6e427..5b34b69ba7d9 100644 --- a/include/sound.h +++ b/include/sound.h @@ -1,26 +1,7 @@ #ifndef GUARD_SOUND_H #define GUARD_SOUND_H -enum { - FANFARE_LEVEL_UP, - FANFARE_OBTAIN_ITEM, - FANFARE_EVOLVED, - FANFARE_OBTAIN_TMHM, - FANFARE_HEAL, - FANFARE_OBTAIN_BADGE, - FANFARE_MOVE_DELETED, - FANFARE_OBTAIN_BERRY, - FANFARE_AWAKEN_LEGEND, - FANFARE_SLOTS_JACKPOT, - FANFARE_SLOTS_WIN, - FANFARE_TOO_BAD, - FANFARE_RG_POKE_FLUTE, - FANFARE_RG_OBTAIN_KEY_ITEM, - FANFARE_RG_DEX_RATING, - FANFARE_OBTAIN_B_POINTS, - FANFARE_OBTAIN_SYMBOL, - FANFARE_REGISTER_MATCH_CALL, -}; +#include "constants/sound.h" void InitMapMusic(void); void MapMusicMain(void); diff --git a/sound/cry_tables.inc b/sound/cry_tables.inc index bceb1ccb49f0..22e7433635a6 100644 --- a/sound/cry_tables.inc +++ b/sound/cry_tables.inc @@ -390,392 +390,392 @@ gCryTable:: cry Cry_Chimecho .align 2 -gCryTable2:: - cry2 Cry_Bulbasaur - cry2 Cry_Ivysaur - cry2 Cry_Venusaur - cry2 Cry_Charmander - cry2 Cry_Charmeleon - cry2 Cry_Charizard - cry2 Cry_Squirtle - cry2 Cry_Wartortle - cry2 Cry_Blastoise - cry2 Cry_Caterpie - cry2 Cry_Metapod - cry2 Cry_Butterfree - cry2 Cry_Weedle - cry2 Cry_Kakuna - cry2 Cry_Beedrill - cry2 Cry_Pidgey - cry2 Cry_Pidgeotto - cry2 Cry_Pidgeot - cry2 Cry_Rattata - cry2 Cry_Raticate - cry2 Cry_Spearow - cry2 Cry_Fearow - cry2 Cry_Ekans - cry2 Cry_Arbok - cry2 Cry_Pikachu - cry2 Cry_Raichu - cry2 Cry_Sandshrew - cry2 Cry_Sandslash - cry2 Cry_NidoranF - cry2 Cry_Nidorina - cry2 Cry_Nidoqueen - cry2 Cry_NidoranM - cry2 Cry_Nidorino - cry2 Cry_Nidoking - cry2 Cry_Clefairy - cry2 Cry_Clefable - cry2 Cry_Vulpix - cry2 Cry_Ninetales - cry2 Cry_Jigglypuff - cry2 Cry_Wigglytuff - cry2 Cry_Zubat - cry2 Cry_Golbat - cry2 Cry_Oddish - cry2 Cry_Gloom - cry2 Cry_Vileplume - cry2 Cry_Paras - cry2 Cry_Parasect - cry2 Cry_Venonat - cry2 Cry_Venomoth - cry2 Cry_Diglett - cry2 Cry_Dugtrio - cry2 Cry_Meowth - cry2 Cry_Persian - cry2 Cry_Psyduck - cry2 Cry_Golduck - cry2 Cry_Mankey - cry2 Cry_Primeape - cry2 Cry_Growlithe - cry2 Cry_Arcanine - cry2 Cry_Poliwag - cry2 Cry_Poliwhirl - cry2 Cry_Poliwrath - cry2 Cry_Abra - cry2 Cry_Kadabra - cry2 Cry_Alakazam - cry2 Cry_Machop - cry2 Cry_Machoke - cry2 Cry_Machamp - cry2 Cry_Bellsprout - cry2 Cry_Weepinbell - cry2 Cry_Victreebel - cry2 Cry_Tentacool - cry2 Cry_Tentacruel - cry2 Cry_Geodude - cry2 Cry_Graveler - cry2 Cry_Golem - cry2 Cry_Ponyta - cry2 Cry_Rapidash - cry2 Cry_Slowpoke - cry2 Cry_Slowbro - cry2 Cry_Magnemite - cry2 Cry_Magneton - cry2 Cry_Farfetchd - cry2 Cry_Doduo - cry2 Cry_Dodrio - cry2 Cry_Seel - cry2 Cry_Dewgong - cry2 Cry_Grimer - cry2 Cry_Muk - cry2 Cry_Shellder - cry2 Cry_Cloyster - cry2 Cry_Gastly - cry2 Cry_Haunter - cry2 Cry_Gengar - cry2 Cry_Onix - cry2 Cry_Drowzee - cry2 Cry_Hypno - cry2 Cry_Krabby - cry2 Cry_Kingler - cry2 Cry_Voltorb - cry2 Cry_Electrode - cry2 Cry_Exeggcute - cry2 Cry_Exeggutor - cry2 Cry_Cubone - cry2 Cry_Marowak - cry2 Cry_Hitmonlee - cry2 Cry_Hitmonchan - cry2 Cry_Lickitung - cry2 Cry_Koffing - cry2 Cry_Weezing - cry2 Cry_Rhyhorn - cry2 Cry_Rhydon - cry2 Cry_Chansey - cry2 Cry_Tangela - cry2 Cry_Kangaskhan - cry2 Cry_Horsea - cry2 Cry_Seadra - cry2 Cry_Goldeen - cry2 Cry_Seaking - cry2 Cry_Staryu - cry2 Cry_Starmie - cry2 Cry_MrMime - cry2 Cry_Scyther - cry2 Cry_Jynx - cry2 Cry_Electabuzz - cry2 Cry_Magmar - cry2 Cry_Pinsir - cry2 Cry_Tauros - cry2 Cry_Magikarp - cry2 Cry_Gyarados - cry2 Cry_Lapras - cry2 Cry_Ditto - cry2 Cry_Eevee - cry2 Cry_Vaporeon - cry2 Cry_Jolteon - cry2 Cry_Flareon - cry2 Cry_Porygon - cry2 Cry_Omanyte - cry2 Cry_Omastar - cry2 Cry_Kabuto - cry2 Cry_Kabutops - cry2 Cry_Aerodactyl - cry2 Cry_Snorlax - cry2 Cry_Articuno - cry2 Cry_Zapdos - cry2 Cry_Moltres - cry2 Cry_Dratini - cry2 Cry_Dragonair - cry2 Cry_Dragonite - cry2 Cry_Mewtwo - cry2 Cry_Mew - cry2 Cry_Chikorita - cry2 Cry_Bayleef - cry2 Cry_Meganium - cry2 Cry_Cyndaquil - cry2 Cry_Quilava - cry2 Cry_Typhlosion - cry2 Cry_Totodile - cry2 Cry_Croconaw - cry2 Cry_Feraligatr - cry2 Cry_Sentret - cry2 Cry_Furret - cry2 Cry_Hoothoot - cry2 Cry_Noctowl - cry2 Cry_Ledyba - cry2 Cry_Ledian - cry2 Cry_Spinarak - cry2 Cry_Ariados - cry2 Cry_Crobat - cry2 Cry_Chinchou - cry2 Cry_Lanturn - cry2 Cry_Pichu - cry2 Cry_Cleffa - cry2 Cry_Igglybuff - cry2 Cry_Togepi - cry2 Cry_Togetic - cry2 Cry_Natu - cry2 Cry_Xatu - cry2 Cry_Mareep - cry2 Cry_Flaaffy - cry2 Cry_Ampharos - cry2 Cry_Bellossom - cry2 Cry_Marill - cry2 Cry_Azumarill - cry2 Cry_Sudowoodo - cry2 Cry_Politoed - cry2 Cry_Hoppip - cry2 Cry_Skiploom - cry2 Cry_Jumpluff - cry2 Cry_Aipom - cry2 Cry_Sunkern - cry2 Cry_Sunflora - cry2 Cry_Yanma - cry2 Cry_Wooper - cry2 Cry_Quagsire - cry2 Cry_Espeon - cry2 Cry_Umbreon - cry2 Cry_Murkrow - cry2 Cry_Slowking - cry2 Cry_Misdreavus - cry2 Cry_Unown - cry2 Cry_Wobbuffet - cry2 Cry_Girafarig - cry2 Cry_Pineco - cry2 Cry_Forretress - cry2 Cry_Dunsparce - cry2 Cry_Gligar - cry2 Cry_Steelix - cry2 Cry_Snubbull - cry2 Cry_Granbull - cry2 Cry_Qwilfish - cry2 Cry_Scizor - cry2 Cry_Shuckle - cry2 Cry_Heracross - cry2 Cry_Sneasel - cry2 Cry_Teddiursa - cry2 Cry_Ursaring - cry2 Cry_Slugma - cry2 Cry_Magcargo - cry2 Cry_Swinub - cry2 Cry_Piloswine - cry2 Cry_Corsola - cry2 Cry_Remoraid - cry2 Cry_Octillery - cry2 Cry_Delibird - cry2 Cry_Mantine - cry2 Cry_Skarmory - cry2 Cry_Houndour - cry2 Cry_Houndoom - cry2 Cry_Kingdra - cry2 Cry_Phanpy - cry2 Cry_Donphan - cry2 Cry_Porygon2 - cry2 Cry_Stantler - cry2 Cry_Smeargle - cry2 Cry_Tyrogue - cry2 Cry_Hitmontop - cry2 Cry_Smoochum - cry2 Cry_Elekid - cry2 Cry_Magby - cry2 Cry_Miltank - cry2 Cry_Blissey - cry2 Cry_Raikou - cry2 Cry_Entei - cry2 Cry_Suicune - cry2 Cry_Larvitar - cry2 Cry_Pupitar - cry2 Cry_Tyranitar - cry2 Cry_Lugia - cry2 Cry_HoOh - cry2 Cry_Celebi - cry2 Cry_Kecleon - cry2 Cry_Roselia - cry2 Cry_Torkoal - cry2 Cry_Electrike - cry2 Cry_Manectric - cry2 Cry_Duskull - cry2 Cry_Latias - cry2 Cry_Wynaut - cry2 Cry_Seviper - cry2 Cry_Sharpedo - cry2 Cry_Zangoose - cry2 Cry_Azurill - cry2 Cry_Swablu - cry2 Cry_Altaria - cry2 Cry_Unused265 - cry2 Cry_Taillow - cry2 Cry_Swellow - cry2 Cry_Unused268 - cry2 Cry_Spinda - cry2 Cry_Torchic - cry2 Cry_Combusken - cry2 Cry_Blaziken - cry2 Cry_Treecko - cry2 Cry_Grovyle - cry2 Cry_Sceptile - cry2 Cry_Mudkip - cry2 Cry_Marshtomp - cry2 Cry_Swampert - cry2 Cry_Pelipper - cry2 Cry_Wingull - cry2 Cry_Banette - cry2 Cry_Shuppet - cry2 Cry_Lotad - cry2 Cry_Lombre - cry2 Cry_Ludicolo - cry2 Cry_Seedot - cry2 Cry_Nuzleaf - cry2 Cry_Shiftry - cry2 Cry_Carvanha - cry2 Cry_Wurmple - cry2 Cry_Silcoon - cry2 Cry_Beautifly - cry2 Cry_Cascoon - cry2 Cry_Dustox - cry2 Cry_Ralts - cry2 Cry_Kirlia - cry2 Cry_Gardevoir - cry2 Cry_Slakoth - cry2 Cry_Vigoroth - cry2 Cry_Slaking - cry2 Cry_Nincada - cry2 Cry_Ninjask - cry2 Cry_Shedinja - cry2 Cry_Makuhita - cry2 Cry_Hariyama - cry2 Cry_Nosepass - cry2 Cry_Glalie - cry2 Cry_Plusle - cry2 Cry_Minun - cry2 Cry_Surskit - cry2 Cry_Masquerain - cry2 Cry_Skitty - cry2 Cry_Delcatty - cry2 Cry_Gulpin - cry2 Cry_Swalot - cry2 Cry_Numel - cry2 Cry_Camerupt - cry2 Cry_Barboach - cry2 Cry_Whiscash - cry2 Cry_Corphish - cry2 Cry_Crawdaunt - cry2 Cry_Spoink - cry2 Cry_Grumpig - cry2 Cry_Trapinch - cry2 Cry_Vibrava - cry2 Cry_Flygon - cry2 Cry_Cacnea - cry2 Cry_Cacturne - cry2 Cry_Baltoy - cry2 Cry_Claydol - cry2 Cry_Lunatone - cry2 Cry_Solrock - cry2 Cry_Feebas - cry2 Cry_Milotic - cry2 Cry_Absol - cry2 Cry_Meditite - cry2 Cry_Medicham - cry2 Cry_Spheal - cry2 Cry_Sealeo - cry2 Cry_Walrein - cry2 Cry_Clamperl - cry2 Cry_Huntail - cry2 Cry_Gorebyss - cry2 Cry_Lileep - cry2 Cry_Cradily - cry2 Cry_Anorith - cry2 Cry_Armaldo - cry2 Cry_Beldum - cry2 Cry_Metang - cry2 Cry_Metagross - cry2 Cry_Bagon - cry2 Cry_Shelgon - cry2 Cry_Regirock - cry2 Cry_Regice - cry2 Cry_Registeel - cry2 Cry_Castform - cry2 Cry_Volbeat - cry2 Cry_Illumise - cry2 Cry_Poochyena - cry2 Cry_Mightyena - cry2 Cry_Dusclops - cry2 Cry_Sableye - cry2 Cry_Mawile - cry2 Cry_Aron - cry2 Cry_Lairon - cry2 Cry_Aggron - cry2 Cry_Relicanth - cry2 Cry_Luvdisc - cry2 Cry_Groudon - cry2 Cry_Kyogre - cry2 Cry_Rayquaza - cry2 Cry_Salamence - cry2 Cry_Breloom - cry2 Cry_Shroomish - cry2 Cry_Linoone - cry2 Cry_Tropius - cry2 Cry_Wailmer - cry2 Cry_Zigzagoon - cry2 Cry_Exploud - cry2 Cry_Loudred - cry2 Cry_Wailord - cry2 Cry_Whismur - cry2 Cry_Snorunt - cry2 Cry_Latios - cry2 Cry_Jirachi - cry2 Cry_Deoxys - cry2 Cry_Chimecho +gCryTable_Reverse:: + cry_reverse Cry_Bulbasaur + cry_reverse Cry_Ivysaur + cry_reverse Cry_Venusaur + cry_reverse Cry_Charmander + cry_reverse Cry_Charmeleon + cry_reverse Cry_Charizard + cry_reverse Cry_Squirtle + cry_reverse Cry_Wartortle + cry_reverse Cry_Blastoise + cry_reverse Cry_Caterpie + cry_reverse Cry_Metapod + cry_reverse Cry_Butterfree + cry_reverse Cry_Weedle + cry_reverse Cry_Kakuna + cry_reverse Cry_Beedrill + cry_reverse Cry_Pidgey + cry_reverse Cry_Pidgeotto + cry_reverse Cry_Pidgeot + cry_reverse Cry_Rattata + cry_reverse Cry_Raticate + cry_reverse Cry_Spearow + cry_reverse Cry_Fearow + cry_reverse Cry_Ekans + cry_reverse Cry_Arbok + cry_reverse Cry_Pikachu + cry_reverse Cry_Raichu + cry_reverse Cry_Sandshrew + cry_reverse Cry_Sandslash + cry_reverse Cry_NidoranF + cry_reverse Cry_Nidorina + cry_reverse Cry_Nidoqueen + cry_reverse Cry_NidoranM + cry_reverse Cry_Nidorino + cry_reverse Cry_Nidoking + cry_reverse Cry_Clefairy + cry_reverse Cry_Clefable + cry_reverse Cry_Vulpix + cry_reverse Cry_Ninetales + cry_reverse Cry_Jigglypuff + cry_reverse Cry_Wigglytuff + cry_reverse Cry_Zubat + cry_reverse Cry_Golbat + cry_reverse Cry_Oddish + cry_reverse Cry_Gloom + cry_reverse Cry_Vileplume + cry_reverse Cry_Paras + cry_reverse Cry_Parasect + cry_reverse Cry_Venonat + cry_reverse Cry_Venomoth + cry_reverse Cry_Diglett + cry_reverse Cry_Dugtrio + cry_reverse Cry_Meowth + cry_reverse Cry_Persian + cry_reverse Cry_Psyduck + cry_reverse Cry_Golduck + cry_reverse Cry_Mankey + cry_reverse Cry_Primeape + cry_reverse Cry_Growlithe + cry_reverse Cry_Arcanine + cry_reverse Cry_Poliwag + cry_reverse Cry_Poliwhirl + cry_reverse Cry_Poliwrath + cry_reverse Cry_Abra + cry_reverse Cry_Kadabra + cry_reverse Cry_Alakazam + cry_reverse Cry_Machop + cry_reverse Cry_Machoke + cry_reverse Cry_Machamp + cry_reverse Cry_Bellsprout + cry_reverse Cry_Weepinbell + cry_reverse Cry_Victreebel + cry_reverse Cry_Tentacool + cry_reverse Cry_Tentacruel + cry_reverse Cry_Geodude + cry_reverse Cry_Graveler + cry_reverse Cry_Golem + cry_reverse Cry_Ponyta + cry_reverse Cry_Rapidash + cry_reverse Cry_Slowpoke + cry_reverse Cry_Slowbro + cry_reverse Cry_Magnemite + cry_reverse Cry_Magneton + cry_reverse Cry_Farfetchd + cry_reverse Cry_Doduo + cry_reverse Cry_Dodrio + cry_reverse Cry_Seel + cry_reverse Cry_Dewgong + cry_reverse Cry_Grimer + cry_reverse Cry_Muk + cry_reverse Cry_Shellder + cry_reverse Cry_Cloyster + cry_reverse Cry_Gastly + cry_reverse Cry_Haunter + cry_reverse Cry_Gengar + cry_reverse Cry_Onix + cry_reverse Cry_Drowzee + cry_reverse Cry_Hypno + cry_reverse Cry_Krabby + cry_reverse Cry_Kingler + cry_reverse Cry_Voltorb + cry_reverse Cry_Electrode + cry_reverse Cry_Exeggcute + cry_reverse Cry_Exeggutor + cry_reverse Cry_Cubone + cry_reverse Cry_Marowak + cry_reverse Cry_Hitmonlee + cry_reverse Cry_Hitmonchan + cry_reverse Cry_Lickitung + cry_reverse Cry_Koffing + cry_reverse Cry_Weezing + cry_reverse Cry_Rhyhorn + cry_reverse Cry_Rhydon + cry_reverse Cry_Chansey + cry_reverse Cry_Tangela + cry_reverse Cry_Kangaskhan + cry_reverse Cry_Horsea + cry_reverse Cry_Seadra + cry_reverse Cry_Goldeen + cry_reverse Cry_Seaking + cry_reverse Cry_Staryu + cry_reverse Cry_Starmie + cry_reverse Cry_MrMime + cry_reverse Cry_Scyther + cry_reverse Cry_Jynx + cry_reverse Cry_Electabuzz + cry_reverse Cry_Magmar + cry_reverse Cry_Pinsir + cry_reverse Cry_Tauros + cry_reverse Cry_Magikarp + cry_reverse Cry_Gyarados + cry_reverse Cry_Lapras + cry_reverse Cry_Ditto + cry_reverse Cry_Eevee + cry_reverse Cry_Vaporeon + cry_reverse Cry_Jolteon + cry_reverse Cry_Flareon + cry_reverse Cry_Porygon + cry_reverse Cry_Omanyte + cry_reverse Cry_Omastar + cry_reverse Cry_Kabuto + cry_reverse Cry_Kabutops + cry_reverse Cry_Aerodactyl + cry_reverse Cry_Snorlax + cry_reverse Cry_Articuno + cry_reverse Cry_Zapdos + cry_reverse Cry_Moltres + cry_reverse Cry_Dratini + cry_reverse Cry_Dragonair + cry_reverse Cry_Dragonite + cry_reverse Cry_Mewtwo + cry_reverse Cry_Mew + cry_reverse Cry_Chikorita + cry_reverse Cry_Bayleef + cry_reverse Cry_Meganium + cry_reverse Cry_Cyndaquil + cry_reverse Cry_Quilava + cry_reverse Cry_Typhlosion + cry_reverse Cry_Totodile + cry_reverse Cry_Croconaw + cry_reverse Cry_Feraligatr + cry_reverse Cry_Sentret + cry_reverse Cry_Furret + cry_reverse Cry_Hoothoot + cry_reverse Cry_Noctowl + cry_reverse Cry_Ledyba + cry_reverse Cry_Ledian + cry_reverse Cry_Spinarak + cry_reverse Cry_Ariados + cry_reverse Cry_Crobat + cry_reverse Cry_Chinchou + cry_reverse Cry_Lanturn + cry_reverse Cry_Pichu + cry_reverse Cry_Cleffa + cry_reverse Cry_Igglybuff + cry_reverse Cry_Togepi + cry_reverse Cry_Togetic + cry_reverse Cry_Natu + cry_reverse Cry_Xatu + cry_reverse Cry_Mareep + cry_reverse Cry_Flaaffy + cry_reverse Cry_Ampharos + cry_reverse Cry_Bellossom + cry_reverse Cry_Marill + cry_reverse Cry_Azumarill + cry_reverse Cry_Sudowoodo + cry_reverse Cry_Politoed + cry_reverse Cry_Hoppip + cry_reverse Cry_Skiploom + cry_reverse Cry_Jumpluff + cry_reverse Cry_Aipom + cry_reverse Cry_Sunkern + cry_reverse Cry_Sunflora + cry_reverse Cry_Yanma + cry_reverse Cry_Wooper + cry_reverse Cry_Quagsire + cry_reverse Cry_Espeon + cry_reverse Cry_Umbreon + cry_reverse Cry_Murkrow + cry_reverse Cry_Slowking + cry_reverse Cry_Misdreavus + cry_reverse Cry_Unown + cry_reverse Cry_Wobbuffet + cry_reverse Cry_Girafarig + cry_reverse Cry_Pineco + cry_reverse Cry_Forretress + cry_reverse Cry_Dunsparce + cry_reverse Cry_Gligar + cry_reverse Cry_Steelix + cry_reverse Cry_Snubbull + cry_reverse Cry_Granbull + cry_reverse Cry_Qwilfish + cry_reverse Cry_Scizor + cry_reverse Cry_Shuckle + cry_reverse Cry_Heracross + cry_reverse Cry_Sneasel + cry_reverse Cry_Teddiursa + cry_reverse Cry_Ursaring + cry_reverse Cry_Slugma + cry_reverse Cry_Magcargo + cry_reverse Cry_Swinub + cry_reverse Cry_Piloswine + cry_reverse Cry_Corsola + cry_reverse Cry_Remoraid + cry_reverse Cry_Octillery + cry_reverse Cry_Delibird + cry_reverse Cry_Mantine + cry_reverse Cry_Skarmory + cry_reverse Cry_Houndour + cry_reverse Cry_Houndoom + cry_reverse Cry_Kingdra + cry_reverse Cry_Phanpy + cry_reverse Cry_Donphan + cry_reverse Cry_Porygon2 + cry_reverse Cry_Stantler + cry_reverse Cry_Smeargle + cry_reverse Cry_Tyrogue + cry_reverse Cry_Hitmontop + cry_reverse Cry_Smoochum + cry_reverse Cry_Elekid + cry_reverse Cry_Magby + cry_reverse Cry_Miltank + cry_reverse Cry_Blissey + cry_reverse Cry_Raikou + cry_reverse Cry_Entei + cry_reverse Cry_Suicune + cry_reverse Cry_Larvitar + cry_reverse Cry_Pupitar + cry_reverse Cry_Tyranitar + cry_reverse Cry_Lugia + cry_reverse Cry_HoOh + cry_reverse Cry_Celebi + cry_reverse Cry_Kecleon + cry_reverse Cry_Roselia + cry_reverse Cry_Torkoal + cry_reverse Cry_Electrike + cry_reverse Cry_Manectric + cry_reverse Cry_Duskull + cry_reverse Cry_Latias + cry_reverse Cry_Wynaut + cry_reverse Cry_Seviper + cry_reverse Cry_Sharpedo + cry_reverse Cry_Zangoose + cry_reverse Cry_Azurill + cry_reverse Cry_Swablu + cry_reverse Cry_Altaria + cry_reverse Cry_Unused265 + cry_reverse Cry_Taillow + cry_reverse Cry_Swellow + cry_reverse Cry_Unused268 + cry_reverse Cry_Spinda + cry_reverse Cry_Torchic + cry_reverse Cry_Combusken + cry_reverse Cry_Blaziken + cry_reverse Cry_Treecko + cry_reverse Cry_Grovyle + cry_reverse Cry_Sceptile + cry_reverse Cry_Mudkip + cry_reverse Cry_Marshtomp + cry_reverse Cry_Swampert + cry_reverse Cry_Pelipper + cry_reverse Cry_Wingull + cry_reverse Cry_Banette + cry_reverse Cry_Shuppet + cry_reverse Cry_Lotad + cry_reverse Cry_Lombre + cry_reverse Cry_Ludicolo + cry_reverse Cry_Seedot + cry_reverse Cry_Nuzleaf + cry_reverse Cry_Shiftry + cry_reverse Cry_Carvanha + cry_reverse Cry_Wurmple + cry_reverse Cry_Silcoon + cry_reverse Cry_Beautifly + cry_reverse Cry_Cascoon + cry_reverse Cry_Dustox + cry_reverse Cry_Ralts + cry_reverse Cry_Kirlia + cry_reverse Cry_Gardevoir + cry_reverse Cry_Slakoth + cry_reverse Cry_Vigoroth + cry_reverse Cry_Slaking + cry_reverse Cry_Nincada + cry_reverse Cry_Ninjask + cry_reverse Cry_Shedinja + cry_reverse Cry_Makuhita + cry_reverse Cry_Hariyama + cry_reverse Cry_Nosepass + cry_reverse Cry_Glalie + cry_reverse Cry_Plusle + cry_reverse Cry_Minun + cry_reverse Cry_Surskit + cry_reverse Cry_Masquerain + cry_reverse Cry_Skitty + cry_reverse Cry_Delcatty + cry_reverse Cry_Gulpin + cry_reverse Cry_Swalot + cry_reverse Cry_Numel + cry_reverse Cry_Camerupt + cry_reverse Cry_Barboach + cry_reverse Cry_Whiscash + cry_reverse Cry_Corphish + cry_reverse Cry_Crawdaunt + cry_reverse Cry_Spoink + cry_reverse Cry_Grumpig + cry_reverse Cry_Trapinch + cry_reverse Cry_Vibrava + cry_reverse Cry_Flygon + cry_reverse Cry_Cacnea + cry_reverse Cry_Cacturne + cry_reverse Cry_Baltoy + cry_reverse Cry_Claydol + cry_reverse Cry_Lunatone + cry_reverse Cry_Solrock + cry_reverse Cry_Feebas + cry_reverse Cry_Milotic + cry_reverse Cry_Absol + cry_reverse Cry_Meditite + cry_reverse Cry_Medicham + cry_reverse Cry_Spheal + cry_reverse Cry_Sealeo + cry_reverse Cry_Walrein + cry_reverse Cry_Clamperl + cry_reverse Cry_Huntail + cry_reverse Cry_Gorebyss + cry_reverse Cry_Lileep + cry_reverse Cry_Cradily + cry_reverse Cry_Anorith + cry_reverse Cry_Armaldo + cry_reverse Cry_Beldum + cry_reverse Cry_Metang + cry_reverse Cry_Metagross + cry_reverse Cry_Bagon + cry_reverse Cry_Shelgon + cry_reverse Cry_Regirock + cry_reverse Cry_Regice + cry_reverse Cry_Registeel + cry_reverse Cry_Castform + cry_reverse Cry_Volbeat + cry_reverse Cry_Illumise + cry_reverse Cry_Poochyena + cry_reverse Cry_Mightyena + cry_reverse Cry_Dusclops + cry_reverse Cry_Sableye + cry_reverse Cry_Mawile + cry_reverse Cry_Aron + cry_reverse Cry_Lairon + cry_reverse Cry_Aggron + cry_reverse Cry_Relicanth + cry_reverse Cry_Luvdisc + cry_reverse Cry_Groudon + cry_reverse Cry_Kyogre + cry_reverse Cry_Rayquaza + cry_reverse Cry_Salamence + cry_reverse Cry_Breloom + cry_reverse Cry_Shroomish + cry_reverse Cry_Linoone + cry_reverse Cry_Tropius + cry_reverse Cry_Wailmer + cry_reverse Cry_Zigzagoon + cry_reverse Cry_Exploud + cry_reverse Cry_Loudred + cry_reverse Cry_Wailord + cry_reverse Cry_Whismur + cry_reverse Cry_Snorunt + cry_reverse Cry_Latios + cry_reverse Cry_Jirachi + cry_reverse Cry_Deoxys + cry_reverse Cry_Chimecho diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 6068b0f33a05..435c5dcdc67b 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -168,7 +168,7 @@ void SoundTask_PlayCryHighPitch(u8 taskId) } if (species != SPECIES_NONE) - PlayCry3(species, pan, 3); + PlayCry3(species, pan, CRY_MODE_HIGH_PITCH); DestroyAnimVisualTask(taskId); } @@ -219,10 +219,10 @@ void SoundTask_PlayDoubleCry(u8 taskId) if (species != SPECIES_NONE) { - if (gBattleAnimArgs[1] == 0xFF) - PlayCry3(species, pan, 9); - else - PlayCry3(species, pan, 7); + if (gBattleAnimArgs[1] == DOUBLE_CRY_GROWL) + PlayCry3(species, pan, CRY_MODE_GROWL_1); + else // DOUBLE_CRY_ROAR + PlayCry3(species, pan, CRY_MODE_ROAR_1); gTasks[taskId].func = SoundTask_PlayDoubleCry_Step; } @@ -243,19 +243,19 @@ static void SoundTask_PlayDoubleCry_Step(u8 taskId) } else { - if (gTasks[taskId].data[0] == 0xFF) + if (gTasks[taskId].data[0] == DOUBLE_CRY_GROWL) { if (!IsCryPlaying()) { - PlayCry3(species, pan, 10); + PlayCry3(species, pan, CRY_MODE_GROWL_2); DestroyAnimVisualTask(taskId); } } - else + else // DOUBLE_CRY_ROAR { if (!IsCryPlaying()) { - PlayCry3(species, pan, 8); + PlayCry3(species, pan, CRY_MODE_ROAR_2); DestroyAnimVisualTask(taskId); } } @@ -302,10 +302,11 @@ static void SoundTask_PlayCryWithEcho_Step(u8 taskId) u16 species = gTasks[taskId].data[1]; s8 pan = gTasks[taskId].data[2]; + // Note the cases are not in order of execution switch (gTasks[taskId].data[9]) { case 2: - PlayCry6(species, pan, 4); + PlayCry6(species, pan, CRY_MODE_ECHO_END); gTasks[taskId].data[9]++; break; case 1: @@ -322,9 +323,9 @@ static void SoundTask_PlayCryWithEcho_Step(u8 taskId) break; default: if (gTasks[taskId].data[10] == 0) - PlayCry6(species, pan, 6); + PlayCry6(species, pan, CRY_MODE_ECHO_START); else - PlayCry3(species, pan, 6); + PlayCry3(species, pan, CRY_MODE_ECHO_START); DestroyAnimVisualTask(taskId); break; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 1660f6ec18fc..e45b0c64b7b9 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -1681,7 +1681,7 @@ static void LinkOpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, 5); + PlayCry3(species, 25, CRY_MODE_FAINT); LinkOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index a9240b0ac7da..ac65596878a0 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -1513,7 +1513,7 @@ static void LinkPartnerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, 5); + PlayCry3(species, -25, CRY_MODE_FAINT); LinkPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index ac330be76acf..d0aaf01fac09 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1847,7 +1847,7 @@ static void OpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, 5); + PlayCry3(species, 25, CRY_MODE_FAINT); OpponentBufferExecCompleted(); } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index f4e47b43477a..34559541e641 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2926,7 +2926,7 @@ static void PlayerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, 5); + PlayCry3(species, -25, CRY_MODE_FAINT); PlayerBufferExecCompleted(); } diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 91fea6cde2ac..863cdbdea8c6 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -1763,7 +1763,7 @@ static void PlayerPartnerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, 5); + PlayCry3(species, -25, CRY_MODE_FAINT); PlayerPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index c6e649508fc1..5394250ee128 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -1621,7 +1621,7 @@ static void RecordedOpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, 5); + PlayCry3(species, 25, CRY_MODE_FAINT); RecordedOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 93d059fe9902..d634fca5d892 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -1644,7 +1644,7 @@ static void RecordedPlayerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, 5); + PlayCry3(species, -25, CRY_MODE_FAINT); RecordedPlayerBufferExecCompleted(); } diff --git a/src/intro.c b/src/intro.c index 5cf99c97e609..00cb42ac2d34 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1925,7 +1925,7 @@ static void Task_Scene3_Groudon(u8 taskId) tScreenX = 80; tScreenY = 41; tDelay = 16; - PlayCryInternal(SPECIES_GROUDON, 0, 100, 10, 0); + PlayCryInternal(SPECIES_GROUDON, 0, 100, 10, CRY_MODE_NORMAL); tState++; } break; diff --git a/src/pokeball.c b/src/pokeball.c index 11f03eefed7f..4e7386f4f17b 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -641,7 +641,7 @@ static void SpriteCB_BallThrow_Shake(struct Sprite *sprite) #define tCryTaskSpecies data[0] #define tCryTaskPan data[1] #define tCryTaskWantedCry data[2] -#define tCryTaskBattler data[3] +#define tCryTaskBattler data[3] #define tCryTaskMonSpriteId data[4] #define tCryTaskMonPtr1 data[5] #define tCryTaskMonPtr2 data[6] @@ -666,9 +666,9 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) break; case 1: if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry3(species, pan, 0); + PlayCry3(species, pan, CRY_MODE_NORMAL); else - PlayCry3(species, pan, 11); + PlayCry3(species, pan, CRY_MODE_WEAK); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); break; @@ -681,9 +681,9 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) if (gTasks[taskId].tCryTaskFrames == 0) { if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry4(species, pan, 1); + PlayCry4(species, pan, CRY_MODE_DOUBLES); else - PlayCry4(species, pan, 12); + PlayCry4(species, pan, CRY_MODE_WEAK_DOUBLES); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); @@ -720,9 +720,9 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) break; } if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry4(species, pan, 0); + PlayCry4(species, pan, CRY_MODE_NORMAL); else - PlayCry4(species, pan, 11); + PlayCry4(species, pan, CRY_MODE_WEAK); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 5a4858620083..ca31a0045a07 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3929,9 +3929,9 @@ static void PlayMonCry(void) if (!summary->isEgg) { if (ShouldPlayNormalMonCry(&sMonSummaryScreen->currentMon) == TRUE) - PlayCry3(summary->species2, 0, 0); + PlayCry3(summary->species2, 0, CRY_MODE_NORMAL); else - PlayCry3(summary->species2, 0, 11); + PlayCry3(summary->species2, 0, CRY_MODE_WEAK); } } diff --git a/src/sound.c b/src/sound.c index 8c3cd399785f..ee5113f89036 100644 --- a/src/sound.c +++ b/src/sound.c @@ -26,7 +26,7 @@ static u16 sFanfareCounter; bool8 gDisableMusic; extern struct ToneData gCryTable[]; -extern struct ToneData gCryTable2[]; +extern struct ToneData gCryTable_Reverse[]; static void Task_Fanfare(u8 taskId); static void CreateFanfareTask(void); @@ -303,21 +303,21 @@ bool8 IsBGMStopped(void) void PlayCry1(u16 species, s8 pan) { m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, pan, CRY_VOLUME, 10, 0); + PlayCryInternal(species, pan, CRY_VOLUME, 10, CRY_MODE_NORMAL); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); } void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority) { - PlayCryInternal(species, pan, volume, priority, 0); + PlayCryInternal(species, pan, volume, priority, CRY_MODE_NORMAL); } void PlayCry3(u16 species, s8 pan, u8 mode) { - if (mode == 1) + if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, 1); + PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); } else { @@ -330,9 +330,9 @@ void PlayCry3(u16 species, s8 pan, u8 mode) void PlayCry4(u16 species, s8 pan, u8 mode) { - if (mode == 1) + if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, 1); + PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); } else { @@ -344,9 +344,9 @@ void PlayCry4(u16 species, s8 pan, u8 mode) void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S { - if (mode == 1) + if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, 1); + PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); } else { @@ -366,7 +366,7 @@ void PlayCry5(u16 species, u8 mode) void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) { - bool32 v0; + bool32 reverse; u32 release; u32 length; u32 pitch; @@ -375,76 +375,80 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) u8 table; species--; + + // Set default values + // May be overridden depending on mode. length = 140; - v0 = FALSE; + reverse = FALSE; release = 0; pitch = 15360; chorus = 0; switch (mode) { - case 0: + case CRY_MODE_NORMAL: break; - case 1: + case CRY_MODE_DOUBLES: length = 20; release = 225; break; - case 2: + case CRY_MODE_ENCOUNTER: release = 225; pitch = 15600; chorus = 20; volume = 90; break; - case 3: + case CRY_MODE_HIGH_PITCH: length = 50; release = 200; pitch = 15800; chorus = 20; volume = 90; break; - case 4: + case CRY_MODE_ECHO_END: length = 25; - v0 = TRUE; + reverse = TRUE; release = 100; pitch = 15600; chorus = 192; volume = 90; break; - case 5: + case CRY_MODE_FAINT: release = 200; pitch = 14440; break; - case 6: + case CRY_MODE_ECHO_START: release = 220; pitch = 15555; chorus = 192; volume = 70; break; - case 7: + case CRY_MODE_ROAR_1: length = 10; release = 100; pitch = 14848; break; - case 8: + case CRY_MODE_ROAR_2: length = 60; release = 225; pitch = 15616; break; - case 9: + case CRY_MODE_GROWL_1: length = 15; - v0 = TRUE; + reverse = TRUE; release = 125; pitch = 15200; break; - case 10: + case CRY_MODE_GROWL_2: length = 100; release = 225; pitch = 15200; break; - case 12: + case CRY_MODE_WEAK_DOUBLES: length = 20; release = 225; - case 11: + // fallthrough + case CRY_MODE_WEAK: pitch = 15000; break; } @@ -463,26 +467,26 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) // If you wish to expand pokemon, you need to // append new cases to the switch. species = SpeciesToCryId(species); - index = species & 0x7F; + index = species % 128; table = species / 128; switch (table) { case 0: gMPlay_PokemonCry = SetPokemonCryTone( - v0 ? &gCryTable2[(128 * 0) + index] : &gCryTable[(128 * 0) + index]); + reverse ? &gCryTable_Reverse[(128 * 0) + index] : &gCryTable[(128 * 0) + index]); break; case 1: gMPlay_PokemonCry = SetPokemonCryTone( - v0 ? &gCryTable2[(128 * 1) + index] : &gCryTable[(128 * 1) + index]); + reverse ? &gCryTable_Reverse[(128 * 1) + index] : &gCryTable[(128 * 1) + index]); break; case 2: gMPlay_PokemonCry = SetPokemonCryTone( - v0 ? &gCryTable2[(128 * 2) + index] : &gCryTable[(128 * 2) + index]); + reverse ? &gCryTable_Reverse[(128 * 2) + index] : &gCryTable[(128 * 2) + index]); break; case 3: gMPlay_PokemonCry = SetPokemonCryTone( - v0 ? &gCryTable2[(128 * 3) + index] : &gCryTable[(128 * 3) + index]); + reverse ? &gCryTable_Reverse[(128 * 3) + index] : &gCryTable[(128 * 3) + index]); break; } } From c4169cfd290dcf7703b79debd66142b277af5613 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 7 Nov 2021 13:54:44 -0500 Subject: [PATCH 392/762] Disambiguate cry functions --- data/battle_anim_scripts.s | 4 +- include/constants/sound.h | 7 ++++ include/sound.h | 12 +++--- src/battle_anim_sound_tasks.c | 47 +++++++++++++-------- src/battle_controller_link_opponent.c | 2 +- src/battle_controller_link_partner.c | 2 +- src/battle_controller_opponent.c | 2 +- src/battle_controller_player.c | 2 +- src/battle_controller_player_partner.c | 2 +- src/battle_controller_recorded_opponent.c | 2 +- src/battle_controller_recorded_player.c | 2 +- src/battle_controller_safari.c | 2 +- src/battle_controller_wally.c | 4 +- src/contest_util.c | 2 +- src/evolution_scene.c | 2 +- src/field_effect.c | 24 +++++------ src/hall_of_fame.c | 2 +- src/intro.c | 4 +- src/overworld.c | 2 +- src/pokeball.c | 15 ++++--- src/pokeblock_feed.c | 2 +- src/pokedex.c | 4 +- src/pokedex_cry_screen.c | 2 +- src/pokemon.c | 4 +- src/pokemon_summary_screen.c | 4 +- src/rayquaza_scene.c | 2 +- src/roulette.c | 10 ++--- src/scrcmd.c | 2 +- src/sound.c | 50 ++++++++++++----------- src/starter_choose.c | 2 +- src/trade.c | 4 +- 31 files changed, 125 insertions(+), 102 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index aea55fcd17d2..7e970ed176b6 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -8500,11 +8500,11 @@ Move_BLAZE_KICK: Move_HYPER_VOICE: loadspritegfx ANIM_TAG_THIN_RING - createvisualtask SoundTask_PlayCryWithEcho, 5, 0 + createvisualtask SoundTask_PlayCryWithEcho, 5, FALSE call HyperVoiceEffect waitforvisualfinish delay 8 - createvisualtask SoundTask_PlayCryWithEcho, 5, 1 + createvisualtask SoundTask_PlayCryWithEcho, 5, TRUE call HyperVoiceEffect waitforvisualfinish end diff --git a/include/constants/sound.h b/include/constants/sound.h index 82cc4ffac307..40c3b7d58f5a 100644 --- a/include/constants/sound.h +++ b/include/constants/sound.h @@ -38,4 +38,11 @@ #define DOUBLE_CRY_ROAR 2 #define DOUBLE_CRY_GROWL 255 +#define CRY_PRIORITY_NORMAL 10 +#define CRY_PRIORITY_AMBIENT 1 + +// Cry volume was changed from 125 in R/S to 120 for FRLG/Em, but was (accidentally?) not updated outside of sound.c +#define CRY_VOLUME 120 +#define CRY_VOLUME_RS 125 + #endif // GUARD_CONSTANTS_SOUND_H diff --git a/include/sound.h b/include/sound.h index 5b34b69ba7d9..a5463a456159 100644 --- a/include/sound.h +++ b/include/sound.h @@ -25,12 +25,12 @@ bool8 IsBGMPausedOrStopped(void); void FadeInBGM(u8 speed); void FadeOutBGM(u8 speed); bool8 IsBGMStopped(void); -void PlayCry1(u16 species, s8 pan); -void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority); -void PlayCry3(u16 species, s8 pan, u8 mode); -void PlayCry4(u16 species, s8 pan, u8 mode); -void PlayCry5(u16 species, u8 mode); -void PlayCry6(u16 species, s8 pan, u8 mode); +void PlayCry_Normal(u16 species, s8 pan); +void PlayCry_NormalNoDucking(u16 species, s8 pan, s8 volume, u8 priority); +void PlayCry_ByMode(u16 species, s8 pan, u8 mode); +void PlayCry_ReleaseDouble(u16 species, s8 pan, u8 mode); +void PlayCry_Script(u16 species, u8 mode); +void PlayCry_DuckNoRestore(u16 species, s8 pan, u8 mode); void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode); bool8 IsCryFinished(void); void StopCryAndClearCrySongs(void); diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 435c5dcdc67b..7180041b3296 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -168,7 +168,7 @@ void SoundTask_PlayCryHighPitch(u8 taskId) } if (species != SPECIES_NONE) - PlayCry3(species, pan, CRY_MODE_HIGH_PITCH); + PlayCry_ByMode(species, pan, CRY_MODE_HIGH_PITCH); DestroyAnimVisualTask(taskId); } @@ -220,9 +220,9 @@ void SoundTask_PlayDoubleCry(u8 taskId) if (species != SPECIES_NONE) { if (gBattleAnimArgs[1] == DOUBLE_CRY_GROWL) - PlayCry3(species, pan, CRY_MODE_GROWL_1); + PlayCry_ByMode(species, pan, CRY_MODE_GROWL_1); else // DOUBLE_CRY_ROAR - PlayCry3(species, pan, CRY_MODE_ROAR_1); + PlayCry_ByMode(species, pan, CRY_MODE_ROAR_1); gTasks[taskId].func = SoundTask_PlayDoubleCry_Step; } @@ -247,7 +247,7 @@ static void SoundTask_PlayDoubleCry_Step(u8 taskId) { if (!IsCryPlaying()) { - PlayCry3(species, pan, CRY_MODE_GROWL_2); + PlayCry_ByMode(species, pan, CRY_MODE_GROWL_2); DestroyAnimVisualTask(taskId); } } @@ -255,7 +255,7 @@ static void SoundTask_PlayDoubleCry_Step(u8 taskId) { if (!IsCryPlaying()) { - PlayCry3(species, pan, CRY_MODE_ROAR_2); + PlayCry_ByMode(species, pan, CRY_MODE_ROAR_2); DestroyAnimVisualTask(taskId); } } @@ -275,12 +275,18 @@ void SoundTask_WaitForCry(u8 taskId) } } + +#define tSpecies data[1] +#define tPan data[2] +#define tState data[9] +#define tLastCry data[10] // If it's not the last cry, don't try to restore the BGM, because another is coming + void SoundTask_PlayCryWithEcho(u8 taskId) { u16 species; s8 pan; - gTasks[taskId].data[10] = gBattleAnimArgs[0]; + gTasks[taskId].tLastCry = gBattleAnimArgs[0]; pan = BattleAnimAdjustPanning(SOUND_PAN_ATTACKER); if (IsContest()) @@ -288,8 +294,8 @@ void SoundTask_PlayCryWithEcho(u8 taskId) else species = gAnimBattlerSpecies[gBattleAnimAttacker]; - gTasks[taskId].data[1] = species; - gTasks[taskId].data[2] = pan; + gTasks[taskId].tSpecies = species; + gTasks[taskId].tPan = pan; if (species != SPECIES_NONE) gTasks[taskId].func = SoundTask_PlayCryWithEcho_Step; @@ -299,39 +305,44 @@ void SoundTask_PlayCryWithEcho(u8 taskId) static void SoundTask_PlayCryWithEcho_Step(u8 taskId) { - u16 species = gTasks[taskId].data[1]; - s8 pan = gTasks[taskId].data[2]; + u16 species = gTasks[taskId].tSpecies; + s8 pan = gTasks[taskId].tPan; // Note the cases are not in order of execution - switch (gTasks[taskId].data[9]) + switch (gTasks[taskId].tState) { case 2: - PlayCry6(species, pan, CRY_MODE_ECHO_END); - gTasks[taskId].data[9]++; + PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_END); + gTasks[taskId].tState++; break; case 1: case 3: case 4: - gTasks[taskId].data[9]++; + gTasks[taskId].tState++; break; case 5: if (IsCryPlaying()) break; case 0: StopCryAndClearCrySongs(); - gTasks[taskId].data[9]++; + gTasks[taskId].tState++; break; default: - if (gTasks[taskId].data[10] == 0) - PlayCry6(species, pan, CRY_MODE_ECHO_START); + if (!gTasks[taskId].tLastCry) + PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_START); else - PlayCry3(species, pan, CRY_MODE_ECHO_START); + PlayCry_ByMode(species, pan, CRY_MODE_ECHO_START); DestroyAnimVisualTask(taskId); break; } } +#undef tSpecies +#undef tPan +#undef tState +#undef tLastCry + void SoundTask_PlaySE1WithPanning(u8 taskId) { u16 songId = gBattleAnimArgs[0]; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index e45b0c64b7b9..efc3270911b3 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -1681,7 +1681,7 @@ static void LinkOpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, CRY_MODE_FAINT); + PlayCry_ByMode(species, 25, CRY_MODE_FAINT); LinkOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index ac65596878a0..682618c07af0 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -1513,7 +1513,7 @@ static void LinkPartnerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, CRY_MODE_FAINT); + PlayCry_ByMode(species, -25, CRY_MODE_FAINT); LinkPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index d0aaf01fac09..2bea4183bffc 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1847,7 +1847,7 @@ static void OpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, CRY_MODE_FAINT); + PlayCry_ByMode(species, 25, CRY_MODE_FAINT); OpponentBufferExecCompleted(); } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 34559541e641..02dc7ce2943d 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2926,7 +2926,7 @@ static void PlayerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, CRY_MODE_FAINT); + PlayCry_ByMode(species, -25, CRY_MODE_FAINT); PlayerBufferExecCompleted(); } diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 863cdbdea8c6..745354795c90 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -1763,7 +1763,7 @@ static void PlayerPartnerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, CRY_MODE_FAINT); + PlayCry_ByMode(species, -25, CRY_MODE_FAINT); PlayerPartnerBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 5394250ee128..0af395693c88 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -1621,7 +1621,7 @@ static void RecordedOpponentHandleFaintingCry(void) { u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, 25, CRY_MODE_FAINT); + PlayCry_ByMode(species, 25, CRY_MODE_FAINT); RecordedOpponentBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index d634fca5d892..264e27344956 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -1644,7 +1644,7 @@ static void RecordedPlayerHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry3(species, -25, CRY_MODE_FAINT); + PlayCry_ByMode(species, -25, CRY_MODE_FAINT); RecordedPlayerBufferExecCompleted(); } diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index a26f31b92966..78a57a0f797a 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -616,7 +616,7 @@ static void SafariHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry1(species, 25); + PlayCry_Normal(species, 25); SafariBufferExecCompleted(); } diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index d018fe1c011f..29e8d2b7d8d6 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -1415,7 +1415,9 @@ static void WallyHandleFaintingCry(void) { u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES); - PlayCry1(species, 25); + // Seems that it doesn't bother using CRY_MODE_FAINT because + // Wally's PokĂ©mon during the tutorial is never intended to faint. + PlayCry_Normal(species, 25); WallyBufferExecCompleted(); } diff --git a/src/contest_util.c b/src/contest_util.c index e1c95d4a2f11..5f23231ac55e 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1578,7 +1578,7 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite) { if (++sprite->data[0] == 10) { - PlayCry1(sprite->data[1], 0); + PlayCry_Normal(sprite->data[1], 0); sprite->data[1] = 0; } } diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 1d583343f8c2..99ff26821313 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -1094,7 +1094,7 @@ static void Task_TradeEvolutionScene(u8 taskId) case T_EVOSTATE_INTRO_CRY: if (!IsTextPrinterActive(0)) { - PlayCry1(gTasks[taskId].tPreEvoSpecies, 0); + PlayCry_Normal(gTasks[taskId].tPreEvoSpecies, 0); gTasks[taskId].tState++; } break; diff --git a/src/field_effect.c b/src/field_effect.c index 7e1ebdff4d5b..3d0c179be987 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -2565,15 +2565,17 @@ bool8 FldEff_FieldMoveShowMon(void) return FALSE; } +#define SHOW_MON_CRY_NO_DUCKING (1 << 31) + bool8 FldEff_FieldMoveShowMonInit(void) { struct Pokemon *pokemon; - u32 flag = gFieldEffectArguments[0] & 0x80000000; + bool32 noDucking = gFieldEffectArguments[0] & SHOW_MON_CRY_NO_DUCKING; pokemon = &gPlayerParty[(u8)gFieldEffectArguments[0]]; gFieldEffectArguments[0] = GetMonData(pokemon, MON_DATA_SPECIES); gFieldEffectArguments[1] = GetMonData(pokemon, MON_DATA_OT_ID); gFieldEffectArguments[2] = GetMonData(pokemon, MON_DATA_PERSONALITY); - gFieldEffectArguments[0] |= flag; + gFieldEffectArguments[0] |= noDucking; FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON); FieldEffectActiveListRemove(FLDEFF_FIELD_MOVE_SHOW_MON_INIT); return FALSE; @@ -2913,17 +2915,17 @@ static bool8 SlideIndoorBannerOffscreen(struct Task *task) static u8 InitFieldMoveMonSprite(u32 species, u32 otId, u32 personality) { - u16 v0; + bool16 noDucking; u8 monSprite; struct Sprite *sprite; - v0 = (species & 0x80000000) >> 16; - species &= 0x7fffffff; + noDucking = (species & SHOW_MON_CRY_NO_DUCKING) >> 16; + species &= ~SHOW_MON_CRY_NO_DUCKING; monSprite = CreateMonSprite_FieldMove(species, otId, personality, 320, 80, 0); sprite = &gSprites[monSprite]; sprite->callback = SpriteCallbackDummy; sprite->oam.priority = 0; sprite->sSpecies = species; - sprite->data[6] = v0; + sprite->data[6] = noDucking; return monSprite; } @@ -2935,13 +2937,9 @@ static void SpriteCB_FieldMoveMonSlideOnscreen(struct Sprite *sprite) sprite->sOnscreenTimer = 30; sprite->callback = SpriteCB_FieldMoveMonWaitAfterCry; if (sprite->data[6]) - { - PlayCry2(sprite->sSpecies, 0, 0x7d, 0xa); - } + PlayCry_NormalNoDucking(sprite->sSpecies, 0, CRY_VOLUME_RS, CRY_PRIORITY_NORMAL); else - { - PlayCry1(sprite->sSpecies, 0); - } + PlayCry_Normal(sprite->sSpecies, 0); } } @@ -3021,7 +3019,7 @@ static void SurfFieldEffect_ShowMon(struct Task *task) objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; if (ObjectEventCheckHeldMovementStatus(objectEvent)) { - gFieldEffectArguments[0] = task->tMonId | 0x80000000; + gFieldEffectArguments[0] = task->tMonId | SHOW_MON_CRY_NO_DUCKING; FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT); task->tState++; } diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 8d69b03bc99e..8c10d1400ba0 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -983,7 +983,7 @@ static void Task_HofPC_PrintMonInfo(u8 taskId) if (currMon->species != SPECIES_EGG) { StopCryAndClearCrySongs(); - PlayCry1(currMon->species, 0); + PlayCry_Normal(currMon->species, 0); } HallOfFame_PrintMonInfo(currMon, 0, 14); diff --git a/src/intro.c b/src/intro.c index 00cb42ac2d34..3e805dca4c89 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1925,7 +1925,7 @@ static void Task_Scene3_Groudon(u8 taskId) tScreenX = 80; tScreenY = 41; tDelay = 16; - PlayCryInternal(SPECIES_GROUDON, 0, 100, 10, CRY_MODE_NORMAL); + PlayCryInternal(SPECIES_GROUDON, 0, 100, CRY_PRIORITY_NORMAL, CRY_MODE_NORMAL); tState++; } break; @@ -2127,7 +2127,7 @@ static void Task_Scene3_Kyogre(u8 taskId) { tDelay = 1; tState++; - PlayCryInternal(SPECIES_KYOGRE, 0, 120, 10, 0); + PlayCryInternal(SPECIES_KYOGRE, 0, 120, CRY_PRIORITY_NORMAL, CRY_MODE_NORMAL); } } break; diff --git a/src/overworld.c b/src/overworld.c index 8b32b286c23b..0e1c211c1123 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -1254,7 +1254,7 @@ static void PlayAmbientCry(void) return; pan = (Random() % 88) + 212; volume = (Random() % 30) + 50; - PlayCry2(sAmbientCrySpecies, pan, volume, 1); + PlayCry_NormalNoDucking(sAmbientCrySpecies, pan, volume, CRY_PRIORITY_AMBIENT); } void UpdateAmbientCry(s16 *state, u16 *delayCounter) diff --git a/src/pokeball.c b/src/pokeball.c index 4e7386f4f17b..a0800d38fc91 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -665,10 +665,11 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) gTasks[taskId].tCryTaskState = wantedCry + 1; break; case 1: + // Play single cry if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry3(species, pan, CRY_MODE_NORMAL); + PlayCry_ByMode(species, pan, CRY_MODE_NORMAL); else - PlayCry3(species, pan, CRY_MODE_WEAK); + PlayCry_ByMode(species, pan, CRY_MODE_WEAK); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); break; @@ -680,10 +681,11 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) case 20: if (gTasks[taskId].tCryTaskFrames == 0) { + // Play first doubles cry if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry4(species, pan, CRY_MODE_DOUBLES); + PlayCry_ReleaseDouble(species, pan, CRY_MODE_DOUBLES); else - PlayCry4(species, pan, CRY_MODE_WEAK_DOUBLES); + PlayCry_ReleaseDouble(species, pan, CRY_MODE_WEAK_DOUBLES); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); @@ -719,10 +721,11 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) gTasks[taskId].tCryTaskFrames--; break; } + // Play second doubles cry if (ShouldPlayNormalMonCry(mon) == TRUE) - PlayCry4(species, pan, CRY_MODE_NORMAL); + PlayCry_ReleaseDouble(species, pan, CRY_MODE_NORMAL); else - PlayCry4(species, pan, CRY_MODE_WEAK); + PlayCry_ReleaseDouble(species, pan, CRY_MODE_WEAK); gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE; DestroyTask(taskId); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index da9b7767cd67..98a76421c1e6 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -945,7 +945,7 @@ static void SpriteCB_MonJumpForPokeblock(struct Sprite* sprite) // Play cry at jump peak if (sprite->sSpeed == 0) - PlayCry1(sprite->sSpecies, 0); + PlayCry_Normal(sprite->sSpecies, 0); if (sprite->sSpeed == 9) sprite->callback = SpriteCallbackDummy; diff --git a/src/pokedex.c b/src/pokedex.c index 8a85762436e1..91ca5887e1e1 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -3309,7 +3309,7 @@ static void Task_LoadInfoScreen(u8 taskId) if (!gTasks[taskId].tSkipCry) { StopCryAndClearCrySongs(); - PlayCry2(NationalPokedexNumToSpecies(sPokedexListItem->dexNum), 0, 125, 10); + PlayCry_NormalNoDucking(NationalPokedexNumToSpecies(sPokedexListItem->dexNum), 0, CRY_VOLUME_RS, CRY_PRIORITY_NORMAL); } else { @@ -4010,7 +4010,7 @@ static void Task_DisplayCaughtMonDexPage(u8 taskId) case 6: if (!gPaletteFade.active) { - PlayCry1(NationalPokedexNumToSpecies(dexNum), 0); + PlayCry_Normal(NationalPokedexNumToSpecies(dexNum), 0); gTasks[taskId].tPalTimer = 0; gTasks[taskId].func = Task_HandleCaughtMonPageInput; } diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index 350946f3b2c6..d62cf86cb91f 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -345,7 +345,7 @@ void CryScreenPlayButton(u16 species) static void PlayCryScreenCry(u16 species) { - PlayCry2(species, 0, 125, 10); + PlayCry_NormalNoDucking(species, 0, CRY_VOLUME_RS, CRY_PRIORITY_NORMAL); sDexCryScreen->cryState = 1; } diff --git a/src/pokemon.c b/src/pokemon.c index 0f943734b81c..1607e1a40f4f 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6690,14 +6690,14 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, { // No animation, only check if cry needs to be played if (!noCry) - PlayCry1(species, pan); + PlayCry_Normal(species, pan); sprite->callback = SpriteCallbackDummy; } else { if (!noCry) { - PlayCry1(species, pan); + PlayCry_Normal(species, pan); if (HasTwoFramesAnimation(species)) StartSpriteAnim(sprite, 1); } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index ca31a0045a07..72289fa759ad 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3929,9 +3929,9 @@ static void PlayMonCry(void) if (!summary->isEgg) { if (ShouldPlayNormalMonCry(&sMonSummaryScreen->currentMon) == TRUE) - PlayCry3(summary->species2, 0, CRY_MODE_NORMAL); + PlayCry_ByMode(summary->species2, 0, CRY_MODE_NORMAL); else - PlayCry3(summary->species2, 0, CRY_MODE_WEAK); + PlayCry_ByMode(summary->species2, 0, CRY_MODE_WEAK); } } diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 642fe6233b26..7dfe141c1108 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -3064,7 +3064,7 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite) ChasesAway_SetRayquazaAnim(sprite, 3, 48, 16); sprite->x2 = 1; gSprites[sprite->sTailSpriteId].x2 = 1; - PlayCry1(SPECIES_RAYQUAZA, 0); + PlayCry_Normal(SPECIES_RAYQUAZA, 0); CreateTask(Task_ChasesAway_AnimateRing, 0); } else diff --git a/src/roulette.c b/src/roulette.c index ea0f9332b4ee..6c1dce1edfbf 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -4449,13 +4449,13 @@ static void SetBallStuck(struct Sprite *sprite) if (sRoulette->useTaillow) { if (sprite->sStuckOnWheelLeft) - PlayCry1(SPECIES_TAILLOW, -63); + PlayCry_Normal(SPECIES_TAILLOW, -63); else - PlayCry1(SPECIES_TAILLOW, 63); + PlayCry_Normal(SPECIES_TAILLOW, 63); } else { - PlayCry1(SPECIES_SHROOMISH, -63); + PlayCry_Normal(SPECIES_SHROOMISH, -63); } slotsToSkip = 2; @@ -4719,9 +4719,9 @@ static void SpriteCB_Taillow_FlyIn(struct Sprite *sprite) { m4aSongNumStartOrChange(SE_TAILLOW_WING_FLAP); if (sRoulette->ball->sStuckOnWheelLeft == 0) - PlayCry1(SPECIES_TAILLOW, 63); + PlayCry_Normal(SPECIES_TAILLOW, 63); else - PlayCry1(SPECIES_TAILLOW, -63); + PlayCry_Normal(SPECIES_TAILLOW, -63); StartSpriteAnim(sprite, sRoulette->ball->sStuckOnWheelLeft + 2); sprite->data[1] = 45; sprite->callback = SpriteCB_Taillow_PickUpBall; diff --git a/src/scrcmd.c b/src/scrcmd.c index 57f133d0d980..1fe8e6338f3f 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -2026,7 +2026,7 @@ bool8 ScrCmd_playmoncry(struct ScriptContext *ctx) u16 species = VarGet(ScriptReadHalfword(ctx)); u16 mode = VarGet(ScriptReadHalfword(ctx)); - PlayCry5(species, mode); + PlayCry_Script(species, mode); return FALSE; } diff --git a/src/sound.c b/src/sound.c index ee5113f89036..c2a8c9e8c885 100644 --- a/src/sound.c +++ b/src/sound.c @@ -54,8 +54,6 @@ static const struct Fanfare sFanfares[] = { [FANFARE_REGISTER_MATCH_CALL] = { MUS_REGISTER_MATCH_CALL, 135 }, }; -#define CRY_VOLUME 120 // was 125 in R/S - void InitMapMusic(void) { gDisableMusic = FALSE; @@ -300,66 +298,69 @@ bool8 IsBGMStopped(void) return FALSE; } -void PlayCry1(u16 species, s8 pan) +void PlayCry_Normal(u16 species, s8 pan) { m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, pan, CRY_VOLUME, 10, CRY_MODE_NORMAL); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, CRY_MODE_NORMAL); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); } -void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority) +void PlayCry_NormalNoDucking(u16 species, s8 pan, s8 volume, u8 priority) { PlayCryInternal(species, pan, volume, priority, CRY_MODE_NORMAL); } -void PlayCry3(u16 species, s8 pan, u8 mode) +// Assuming it's not CRY_MODE_DOUBLES, this is equivalent to PlayCry_Normal except it allows other modes. +void PlayCry_ByMode(u16 species, s8 pan, u8 mode) { if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); } else { m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); } } -void PlayCry4(u16 species, s8 pan, u8 mode) +// Used when releasing multiple PokĂ©mon at once in battle. +void PlayCry_ReleaseDouble(u16 species, s8 pan, u8 mode) { if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); } else { if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); } } -void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S +// Duck the BGM but don't restore it. Not present in R/S +void PlayCry_DuckNoRestore(u16 species, s8 pan, u8 mode) { if (mode == CRY_MODE_DOUBLES) { - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); } else { m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, pan, CRY_VOLUME, 10, mode); + PlayCryInternal(species, pan, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); gPokemonCryBGMDuckingCounter = 2; } } -void PlayCry5(u16 species, u8 mode) +void PlayCry_Script(u16 species, u8 mode) { m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 85); - PlayCryInternal(species, 0, CRY_VOLUME, 10, mode); + PlayCryInternal(species, 0, CRY_VOLUME, CRY_PRIORITY_NORMAL, mode); gPokemonCryBGMDuckingCounter = 2; RestoreBGMVolumeAfterPokemonCry(); } @@ -470,25 +471,26 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) index = species % 128; table = species / 128; + #define GET_CRY(speciesIndex, tableId, reversed) \ + ((reversed) ? &gCryTable_Reverse[(128 * (tableId)) + (speciesIndex)] : &gCryTable[(128 * (tableId)) + (speciesIndex)]) + switch (table) { case 0: - gMPlay_PokemonCry = SetPokemonCryTone( - reverse ? &gCryTable_Reverse[(128 * 0) + index] : &gCryTable[(128 * 0) + index]); + gMPlay_PokemonCry = SetPokemonCryTone(GET_CRY(index, 0, reverse)); break; case 1: - gMPlay_PokemonCry = SetPokemonCryTone( - reverse ? &gCryTable_Reverse[(128 * 1) + index] : &gCryTable[(128 * 1) + index]); + gMPlay_PokemonCry = SetPokemonCryTone(GET_CRY(index, 1, reverse)); break; case 2: - gMPlay_PokemonCry = SetPokemonCryTone( - reverse ? &gCryTable_Reverse[(128 * 2) + index] : &gCryTable[(128 * 2) + index]); + gMPlay_PokemonCry = SetPokemonCryTone(GET_CRY(index, 2, reverse)); break; case 3: - gMPlay_PokemonCry = SetPokemonCryTone( - reverse ? &gCryTable_Reverse[(128 * 3) + index] : &gCryTable[(128 * 3) + index]); + gMPlay_PokemonCry = SetPokemonCryTone(GET_CRY(index, 3, reverse)); break; } + + #undef GET_CRY } bool8 IsCryFinished(void) diff --git a/src/starter_choose.c b/src/starter_choose.c index 942f6027307a..f8282c822d62 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -532,7 +532,7 @@ static void Task_WaitForStarterSprite(u8 taskId) static void Task_AskConfirmStarter(u8 taskId) { - PlayCry1(GetStarterPokemon(gTasks[taskId].tStarterSelection), 0); + PlayCry_Normal(GetStarterPokemon(gTasks[taskId].tStarterSelection), 0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized(0, FONT_NORMAL, gText_ConfirmStarterChoice, 0, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); diff --git a/src/trade.c b/src/trade.c index 475b82d5ee8a..c120e3310b89 100644 --- a/src/trade.c +++ b/src/trade.c @@ -3398,7 +3398,7 @@ static bool8 AnimateTradeSequenceCable(void) DrawTextOnTradeWindow(0, gStringVar4, 0); if (sTradeData->monSpecies[TRADE_PLAYER] != SPECIES_EGG) - PlayCry1(sTradeData->monSpecies[TRADE_PLAYER], 0); + PlayCry_Normal(sTradeData->monSpecies[TRADE_PLAYER], 0); sTradeData->state = TS_STATE_BYE_BYE; sTradeData->timer = 0; @@ -3869,7 +3869,7 @@ static bool8 AnimateTradeSequenceWireless(void) DrawTextOnTradeWindow(0, gStringVar4, 0); if (sTradeData->monSpecies[TRADE_PLAYER] != SPECIES_EGG) - PlayCry1(sTradeData->monSpecies[TRADE_PLAYER], 0); + PlayCry_Normal(sTradeData->monSpecies[TRADE_PLAYER], 0); sTradeData->state = TS_STATE_BYE_BYE; sTradeData->timer = 0; From 1548e902cd6d9515362b171ae9aa5ff36c60b230 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 12:02:08 -0400 Subject: [PATCH 393/762] Add MonCoods size macro --- include/constants/pokemon.h | 4 +- include/data.h | 4 + include/global.h | 8 +- src/battle_anim_mons.c | 70 +- .../pokemon_graphics/back_pic_coordinates.h | 884 +++++++++--------- .../pokemon_graphics/front_pic_coordinates.h | 884 +++++++++--------- 6 files changed, 934 insertions(+), 920 deletions(-) diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 827725fc2923..5b6b8cb5e7b0 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -337,7 +337,9 @@ #define NUM_MALE_LINK_FACILITY_CLASSES 8 #define NUM_FEMALE_LINK_FACILITY_CLASSES 8 -#define MON_PIC_SIZE (64 * 64 / 2) +#define MON_PIC_WIDTH 64 +#define MON_PIC_HEIGHT 64 +#define MON_PIC_SIZE (MON_PIC_WIDTH * MON_PIC_HEIGHT / 2) #define BATTLE_ALIVE_EXCEPT_ACTIVE 0 #define BATTLE_ALIVE_ATK_SIDE 1 diff --git a/include/data.h b/include/data.h index 374435cbab7f..2d3619e679ee 100644 --- a/include/data.h +++ b/include/data.h @@ -21,6 +21,10 @@ 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) + struct TrainerMonNoItemDefaultMoves { u16 iv; diff --git a/include/global.h b/include/global.h index dd02a1790195..53e9ba134178 100644 --- a/include/global.h +++ b/include/global.h @@ -120,10 +120,12 @@ f; \ }) -#define ROUND_BITS_TO_BYTES(numBits)(((numBits) / 8) + (((numBits) % 8) ? 1 : 0)) +#define DIV_ROUND_UP(val, roundBy)(((val) / (roundBy)) + (((val) % (roundBy)) ? 1 : 0)) -#define DEX_FLAGS_NO (ROUND_BITS_TO_BYTES(NUM_SPECIES)) -#define NUM_FLAG_BYTES (ROUND_BITS_TO_BYTES(FLAGS_COUNT)) +#define ROUND_BITS_TO_BYTES(numBits) DIV_ROUND_UP(numBits, 8) + +#define DEX_FLAGS_NO ROUND_BITS_TO_BYTES(NUM_SPECIES) +#define NUM_FLAG_BYTES ROUND_BITS_TO_BYTES(FLAGS_COUNT) struct Coords8 { diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index d0ddfdd771ba..5c170adf2262 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -33,10 +33,8 @@ static void AnimTask_BlendMonInAndOut_Step(u8 taskId); static bool8 sub_80A7238(void); static void sub_80A8D78(struct Task *task, u8 taskId); -// EWRAM vars -EWRAM_DATA static union AffineAnimCmd *gAnimTaskAffineAnim = NULL; +EWRAM_DATA static union AffineAnimCmd *sAnimTaskAffineAnim = NULL; -// Const rom data static const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] = { { // Single battle @@ -56,10 +54,10 @@ static const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] = // One entry for each of the four Castform forms. const struct MonCoords gCastformFrontSpriteCoords[NUM_CASTFORM_FORMS] = { - [CASTFORM_NORMAL] = { .size = 0x44, .y_offset = 17 }, - [CASTFORM_FIRE] = { .size = 0x66, .y_offset = 9 }, - [CASTFORM_WATER] = { .size = 0x46, .y_offset = 9 }, - [CASTFORM_ICE] = { .size = 0x86, .y_offset = 8 }, + [CASTFORM_NORMAL] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [CASTFORM_FIRE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [CASTFORM_WATER] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [CASTFORM_ICE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, }; static const u8 sCastformElevations[NUM_CASTFORM_FORMS] = @@ -1740,34 +1738,34 @@ void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union Aff bool8 RunAffineAnimFromTaskData(struct Task *task) { - gAnimTaskAffineAnim = &((union AffineAnimCmd *)LoadPointerFromVars(task->data[13], task->data[14]))[task->data[7]]; - switch (gAnimTaskAffineAnim->type) + sAnimTaskAffineAnim = &((union AffineAnimCmd *)LoadPointerFromVars(task->data[13], task->data[14]))[task->data[7]]; + switch (sAnimTaskAffineAnim->type) { default: - if (!gAnimTaskAffineAnim->frame.duration) + if (!sAnimTaskAffineAnim->frame.duration) { - task->data[10] = gAnimTaskAffineAnim->frame.xScale; - task->data[11] = gAnimTaskAffineAnim->frame.yScale; - task->data[12] = gAnimTaskAffineAnim->frame.rotation; + task->data[10] = sAnimTaskAffineAnim->frame.xScale; + task->data[11] = sAnimTaskAffineAnim->frame.yScale; + task->data[12] = sAnimTaskAffineAnim->frame.rotation; task->data[7]++; - gAnimTaskAffineAnim++; + sAnimTaskAffineAnim++; } - task->data[10] += gAnimTaskAffineAnim->frame.xScale; - task->data[11] += gAnimTaskAffineAnim->frame.yScale; - task->data[12] += gAnimTaskAffineAnim->frame.rotation; + task->data[10] += sAnimTaskAffineAnim->frame.xScale; + task->data[11] += sAnimTaskAffineAnim->frame.yScale; + task->data[12] += sAnimTaskAffineAnim->frame.rotation; SetSpriteRotScale(task->data[15], task->data[10], task->data[11], task->data[12]); SetBattlerSpriteYOffsetFromYScale(task->data[15]); - if (++task->data[8] >= gAnimTaskAffineAnim->frame.duration) + if (++task->data[8] >= sAnimTaskAffineAnim->frame.duration) { task->data[8] = 0; task->data[7]++; } break; case AFFINEANIMCMDTYPE_JUMP: - task->data[7] = gAnimTaskAffineAnim->jump.target; + task->data[7] = sAnimTaskAffineAnim->jump.target; break; case AFFINEANIMCMDTYPE_LOOP: - if (gAnimTaskAffineAnim->loop.count) + if (sAnimTaskAffineAnim->loop.count) { if (task->data[9]) { @@ -1779,7 +1777,7 @@ bool8 RunAffineAnimFromTaskData(struct Task *task) } else { - task->data[9] = gAnimTaskAffineAnim->loop.count; + task->data[9] = sAnimTaskAffineAnim->loop.count; } if (!task->data[7]) { @@ -1788,8 +1786,8 @@ bool8 RunAffineAnimFromTaskData(struct Task *task) for (;;) { task->data[7]--; - gAnimTaskAffineAnim--; - if (gAnimTaskAffineAnim->type == AFFINEANIMCMDTYPE_LOOP) + sAnimTaskAffineAnim--; + if (sAnimTaskAffineAnim->type == AFFINEANIMCMDTYPE_LOOP) { task->data[7]++; return TRUE; @@ -1813,12 +1811,12 @@ bool8 RunAffineAnimFromTaskData(struct Task *task) // matrix's scale in the y dimension. void SetBattlerSpriteYOffsetFromYScale(u8 spriteId) { - int var = 64 - GetBattlerYDeltaFromSpriteId(spriteId) * 2; + int var = MON_PIC_HEIGHT - GetBattlerYDeltaFromSpriteId(spriteId) * 2; u16 matrix = gSprites[spriteId].oam.matrixNum; int var2 = SAFE_DIV(var << 8, gOamMatrices[matrix].d); - if (var2 > 128) - var2 = 128; + if (var2 > MON_PIC_HEIGHT * 2) + var2 = MON_PIC_HEIGHT * 2; gSprites[spriteId].y2 = (var - var2) / 2; } @@ -1826,12 +1824,12 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId) // matrix's scale in the y dimension. void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId) { - int var = 64 - GetBattlerYDeltaFromSpriteId(otherSpriteId) * 2; + int var = MON_PIC_HEIGHT - GetBattlerYDeltaFromSpriteId(otherSpriteId) * 2; u16 matrix = gSprites[spriteId].oam.matrixNum; int var2 = SAFE_DIV(var << 8, gOamMatrices[matrix].d); - if (var2 > 128) - var2 = 128; + if (var2 > MON_PIC_HEIGHT * 2) + var2 = MON_PIC_HEIGHT * 2; gSprites[spriteId].y2 = (var - var2) / 2; } @@ -1882,7 +1880,7 @@ static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId) } } } - return 64; + return MON_PIC_HEIGHT; } void StorePointerInVars(s16 *lo, s16 *hi, const void *ptr) @@ -2209,17 +2207,17 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr) switch (attr) { case BATTLER_COORD_ATTR_HEIGHT: - return (coords->size & 0xf) * 8; + return GET_MON_COORDS_HEIGHT(coords->size); case BATTLER_COORD_ATTR_WIDTH: - return (coords->size >> 4) * 8; + return GET_MON_COORDS_WIDTH(coords->size); case BATTLER_COORD_ATTR_LEFT: - return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) - ((coords->size >> 4) * 4); + return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) - (GET_MON_COORDS_WIDTH(coords->size) / 2); case BATTLER_COORD_ATTR_RIGHT: - return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + ((coords->size >> 4) * 4); + return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + (GET_MON_COORDS_WIDTH(coords->size) / 2); case BATTLER_COORD_ATTR_TOP: - return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) - ((coords->size & 0xf) * 4); + return GetBattlerSpriteCoord(battlerId, 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) + ((coords->size & 0xf) * 4); + return GetBattlerSpriteCoord(battlerId, 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; return ret - coords->y_offset; diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index 131ac13d9b8e..ea817060802a 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -1,2203 +1,2207 @@ +// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 the +// non-trasparent area of pixels the sprite actually occupies are. +// .size is the dimensions of this drawn pixel area. +// .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonBackPicCoords[] = { [SPECIES_NONE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_BULBASAUR] = { - .size = 0x64, + .size = MON_COORDS_SIZE(48, 32), .y_offset = 16, }, [SPECIES_IVYSAUR] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_VENUSAUR] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_CHARMANDER] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_CHARMELEON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_CHARIZARD] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_SQUIRTLE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_WARTORTLE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_BLASTOISE] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_CATERPIE] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_METAPOD] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_BUTTERFREE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_WEEDLE] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_KAKUNA] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_BEEDRILL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_PIDGEY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_PIDGEOTTO] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 12, }, [SPECIES_PIDGEOT] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 2, }, [SPECIES_RATTATA] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_RATICATE] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_SPEAROW] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_FEAROW] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_EKANS] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_ARBOK] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_PIKACHU] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_RAICHU] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_SANDSHREW] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_SANDSLASH] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_NIDORAN_F] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_NIDORINA] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_NIDOQUEEN] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_NIDORAN_M] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_NIDORINO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_NIDOKING] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_CLEFAIRY] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_CLEFABLE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_VULPIX] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_NINETALES] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_JIGGLYPUFF] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_WIGGLYTUFF] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_ZUBAT] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_GOLBAT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_ODDISH] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_GLOOM] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_VILEPLUME] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_PARAS] = { - .size = 0x63, + .size = MON_COORDS_SIZE(48, 24), .y_offset = 20, }, [SPECIES_PARASECT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_VENONAT] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_VENOMOTH] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_DIGLETT] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_DUGTRIO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_MEOWTH] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_PERSIAN] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_PSYDUCK] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_GOLDUCK] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_MANKEY] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_PRIMEAPE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_GROWLITHE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_ARCANINE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_POLIWAG] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 16, }, [SPECIES_POLIWHIRL] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_POLIWRATH] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_ABRA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_KADABRA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_ALAKAZAM] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_MACHOP] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_MACHOKE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_MACHAMP] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 4, }, [SPECIES_BELLSPROUT] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_WEEPINBELL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_VICTREEBEL] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_TENTACOOL] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_TENTACRUEL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_GEODUDE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_GRAVELER] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 12, }, [SPECIES_GOLEM] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 16, }, [SPECIES_PONYTA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_RAPIDASH] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_SLOWPOKE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_SLOWBRO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_MAGNEMITE] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 20, }, [SPECIES_MAGNETON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_FARFETCHD] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_DODUO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_DODRIO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SEEL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_DEWGONG] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_GRIMER] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 12, }, [SPECIES_MUK] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_SHELLDER] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_CLOYSTER] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_GASTLY] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_HAUNTER] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_GENGAR] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_ONIX] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_DROWZEE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_HYPNO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_KRABBY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_KINGLER] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_VOLTORB] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_ELECTRODE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_EXEGGCUTE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_EXEGGUTOR] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_CUBONE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_MAROWAK] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_HITMONLEE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_HITMONCHAN] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_LICKITUNG] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_KOFFING] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_WEEZING] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_RHYHORN] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 12, }, [SPECIES_RHYDON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_CHANSEY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_TANGELA] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_KANGASKHAN] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_HORSEA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_SEADRA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_GOLDEEN] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_SEAKING] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_STARYU] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_STARMIE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_MR_MIME] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_SCYTHER] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_JYNX] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_ELECTABUZZ] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_MAGMAR] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_PINSIR] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_TAUROS] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_MAGIKARP] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_GYARADOS] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_LAPRAS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_DITTO] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 17, }, [SPECIES_EEVEE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_VAPOREON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_JOLTEON] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_FLAREON] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_PORYGON] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_OMANYTE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_OMASTAR] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_KABUTO] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_KABUTOPS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_AERODACTYL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SNORLAX] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_ARTICUNO] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_ZAPDOS] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_MOLTRES] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_DRATINI] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_DRAGONAIR] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_DRAGONITE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_MEWTWO] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 1, }, [SPECIES_MEW] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_CHIKORITA] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_BAYLEEF] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_MEGANIUM] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_CYNDAQUIL] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_QUILAVA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_TYPHLOSION] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_TOTODILE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_CROCONAW] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_FERALIGATR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SENTRET] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_FURRET] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_HOOTHOOT] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_NOCTOWL] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 3, }, [SPECIES_LEDYBA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_LEDIAN] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_SPINARAK] = { - .size = 0x73, + .size = MON_COORDS_SIZE(56, 24), .y_offset = 21, }, [SPECIES_ARIADOS] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_CROBAT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_CHINCHOU] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_LANTURN] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_PICHU] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_CLEFFA] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 15, }, [SPECIES_IGGLYBUFF] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_TOGEPI] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_TOGETIC] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_NATU] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 17, }, [SPECIES_XATU] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_MAREEP] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_FLAAFFY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_AMPHAROS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_BELLOSSOM] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_MARILL] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 12, }, [SPECIES_AZUMARILL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SUDOWOODO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_POLITOED] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_HOPPIP] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_SKIPLOOM] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_JUMPLUFF] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_AIPOM] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_SUNKERN] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_SUNFLORA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_YANMA] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_WOOPER] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_QUAGSIRE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_ESPEON] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_UMBREON] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_MURKROW] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_SLOWKING] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_MISDREAVUS] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_UNOWN] = { - .size = 0x36, + .size = MON_COORDS_SIZE(24, 48), .y_offset = 8, }, [SPECIES_WOBBUFFET] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 12, }, [SPECIES_GIRAFARIG] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_PINECO] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 15, }, [SPECIES_FORRETRESS] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 16, }, [SPECIES_DUNSPARCE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_GLIGAR] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_STEELIX] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SNUBBULL] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_GRANBULL] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_QWILFISH] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_SCIZOR] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_SHUCKLE] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_HERACROSS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_SNEASEL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_TEDDIURSA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_URSARING] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_SLUGMA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_MAGCARGO] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_SWINUB] = { - .size = 0x63, + .size = MON_COORDS_SIZE(48, 24), .y_offset = 21, }, [SPECIES_PILOSWINE] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_CORSOLA] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_REMORAID] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_OCTILLERY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_DELIBIRD] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_MANTINE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_SKARMORY] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_HOUNDOUR] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_HOUNDOOM] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_KINGDRA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_PHANPY] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_DONPHAN] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_PORYGON2] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_STANTLER] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_SMEARGLE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_TYROGUE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_HITMONTOP] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_SMOOCHUM] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 9, }, [SPECIES_ELEKID] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_MAGBY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_MILTANK] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_BLISSEY] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_RAIKOU] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_ENTEI] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_SUICUNE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_LARVITAR] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_PUPITAR] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_TYRANITAR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_LUGIA] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_HO_OH] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_CELEBI] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_OLD_UNOWN_B] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_C] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_D] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_E] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_F] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_G] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_H] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_I] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_J] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_K] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_L] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_M] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_N] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_O] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_P] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_Q] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_R] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_S] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_T] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_U] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_V] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_W] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_X] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_Y] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_OLD_UNOWN_Z] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_TREECKO] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_GROVYLE] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SCEPTILE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_TORCHIC] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_COMBUSKEN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_BLAZIKEN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_MUDKIP] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_MARSHTOMP] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_SWAMPERT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_POOCHYENA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_MIGHTYENA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_ZIGZAGOON] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_LINOONE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_WURMPLE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_SILCOON] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 21, }, [SPECIES_BEAUTIFLY] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CASCOON] = { - .size = 0x73, + .size = MON_COORDS_SIZE(56, 24), .y_offset = 20, }, [SPECIES_DUSTOX] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 20, }, [SPECIES_LOTAD] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 15, }, [SPECIES_LOMBRE] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_LUDICOLO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_SEEDOT] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_NUZLEAF] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_SHIFTRY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_NINCADA] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 20, }, [SPECIES_NINJASK] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SHEDINJA] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_TAILLOW] = { - .size = 0x64, + .size = MON_COORDS_SIZE(48, 32), .y_offset = 17, }, [SPECIES_SWELLOW] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SHROOMISH] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_BRELOOM] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_SPINDA] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_WINGULL] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_PELIPPER] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_SURSKIT] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_MASQUERAIN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_WAILMER] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 21, }, [SPECIES_WAILORD] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 22, }, [SPECIES_SKITTY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_DELCATTY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_KECLEON] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_BALTOY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_CLAYDOL] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_NOSEPASS] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 12, }, [SPECIES_TORKOAL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_SABLEYE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_BARBOACH] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_WHISCASH] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_LUVDISC] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_CORPHISH] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_CRAWDAUNT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_FEEBAS] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_MILOTIC] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 2, }, [SPECIES_CARVANHA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_SHARPEDO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_TRAPINCH] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 14, }, [SPECIES_VIBRAVA] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 17, }, [SPECIES_FLYGON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_MAKUHITA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_HARIYAMA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_ELECTRIKE] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 16, }, [SPECIES_MANECTRIC] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_NUMEL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_CAMERUPT] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 19, }, [SPECIES_SPHEAL] = { - .size = 0x64, + .size = MON_COORDS_SIZE(48, 32), .y_offset = 18, }, [SPECIES_SEALEO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_WALREIN] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_CACNEA] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_CACTURNE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_SNORUNT] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_GLALIE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 12, }, [SPECIES_LUNATONE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_SOLROCK] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_AZURILL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_SPOINK] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_GRUMPIG] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_PLUSLE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_MINUN] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_MAWILE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_MEDITITE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_MEDICHAM] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 3, }, [SPECIES_SWABLU] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_ALTARIA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_WYNAUT] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_DUSKULL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_DUSCLOPS] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_ROSELIA] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_SLAKOTH] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_VIGOROTH] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_SLAKING] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_GULPIN] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_SWALOT] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_TROPIUS] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_WHISMUR] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_LOUDRED] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_EXPLOUD] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_CLAMPERL] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_HUNTAIL] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 2, }, [SPECIES_GOREBYSS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_ABSOL] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_SHUPPET] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_BANETTE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_SEVIPER] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_ZANGOOSE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_RELICANTH] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_ARON] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 17, }, [SPECIES_LAIRON] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 17, }, [SPECIES_AGGRON] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_CASTFORM] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_VOLBEAT] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_ILLUMISE] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_LILEEP] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_CRADILY] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_ANORITH] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 23, }, [SPECIES_ARMALDO] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_RALTS] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_KIRLIA] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 6, }, [SPECIES_GARDEVOIR] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_BAGON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_SHELGON] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_SALAMENCE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_BELDUM] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_METANG] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 16, }, [SPECIES_METAGROSS] = { - .size = 0x83, + .size = MON_COORDS_SIZE(64, 24), .y_offset = 20, }, [SPECIES_REGIROCK] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_REGICE] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_REGISTEEL] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 14, }, [SPECIES_KYOGRE] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 19, }, [SPECIES_GROUDON] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_RAYQUAZA] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_LATIAS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_LATIOS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_JIRACHI] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_DEOXYS] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_CHIMECHO] = { - .size = 0x47, + .size = MON_COORDS_SIZE(32, 56), .y_offset = 7, }, [SPECIES_EGG] = { - .size = 0x36, + .size = MON_COORDS_SIZE(24, 48), .y_offset = 10, }, [SPECIES_UNOWN_B] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 9, }, [SPECIES_UNOWN_C] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_UNOWN_D] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_UNOWN_E] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_UNOWN_F] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_UNOWN_G] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 5, }, [SPECIES_UNOWN_H] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_UNOWN_I] = { - .size = 0x37, + .size = MON_COORDS_SIZE(24, 56), .y_offset = 7, }, [SPECIES_UNOWN_J] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_UNOWN_K] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 7, }, [SPECIES_UNOWN_L] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_UNOWN_M] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_UNOWN_N] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_UNOWN_O] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_UNOWN_P] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_UNOWN_Q] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_UNOWN_R] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 12, }, [SPECIES_UNOWN_S] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 4, }, [SPECIES_UNOWN_T] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_UNOWN_U] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_UNOWN_V] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_UNOWN_W] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 13, }, [SPECIES_UNOWN_X] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_UNOWN_Y] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_UNOWN_Z] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 10, }, [SPECIES_UNOWN_EMARK] = { - .size = 0x37, + .size = MON_COORDS_SIZE(24, 56), .y_offset = 6, }, [SPECIES_UNOWN_QMARK] = { - .size = 0x47, + .size = MON_COORDS_SIZE(32, 56), .y_offset = 6, }, }; diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index b787877b9563..f0cebf1f51af 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -1,2203 +1,2207 @@ +// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 the +// non-trasparent area of pixels the sprite actually occupies are. +// .size is the dimensions of this drawn pixel area. +// .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonFrontPicCoords[] = { [SPECIES_NONE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_BULBASAUR] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 14, }, [SPECIES_IVYSAUR] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_VENUSAUR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_CHARMANDER] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_CHARMELEON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_CHARIZARD] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SQUIRTLE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_WARTORTLE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_BLASTOISE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CATERPIE] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 16, }, [SPECIES_METAPOD] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 20, }, [SPECIES_BUTTERFREE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_WEEDLE] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 18, }, [SPECIES_KAKUNA] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 14, }, [SPECIES_BEEDRILL] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_PIDGEY] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_PIDGEOTTO] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 11, }, [SPECIES_PIDGEOT] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_RATTATA] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_RATICATE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_SPEAROW] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 15, }, [SPECIES_FEAROW] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_EKANS] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_ARBOK] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_PIKACHU] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 9, }, [SPECIES_RAICHU] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 4, }, [SPECIES_SANDSHREW] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_SANDSLASH] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_NIDORAN_F] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 15, }, [SPECIES_NIDORINA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_NIDOQUEEN] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_NIDORAN_M] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_NIDORINO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_NIDOKING] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 2, }, [SPECIES_CLEFAIRY] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 16, }, [SPECIES_CLEFABLE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_VULPIX] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_NINETALES] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_JIGGLYPUFF] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 16, }, [SPECIES_WIGGLYTUFF] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 8, }, [SPECIES_ZUBAT] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_GOLBAT] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_ODDISH] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 15, }, [SPECIES_GLOOM] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_VILEPLUME] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_PARAS] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_PARASECT] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_VENONAT] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_VENOMOTH] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_DIGLETT] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 18, }, [SPECIES_DUGTRIO] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_MEOWTH] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_PERSIAN] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_PSYDUCK] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 9, }, [SPECIES_GOLDUCK] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 2, }, [SPECIES_MANKEY] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_PRIMEAPE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_GROWLITHE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_ARCANINE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_POLIWAG] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 19, }, [SPECIES_POLIWHIRL] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_POLIWRATH] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_ABRA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_KADABRA] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_ALAKAZAM] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_MACHOP] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_MACHOKE] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_MACHAMP] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_BELLSPROUT] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 15, }, [SPECIES_WEEPINBELL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_VICTREEBEL] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_TENTACOOL] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_TENTACRUEL] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_GEODUDE] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 18, }, [SPECIES_GRAVELER] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_GOLEM] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_PONYTA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_RAPIDASH] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SLOWPOKE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_SLOWBRO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_MAGNEMITE] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 21, }, [SPECIES_MAGNETON] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_FARFETCHD] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_DODUO] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 5, }, [SPECIES_DODRIO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SEEL] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_DEWGONG] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_GRIMER] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_MUK] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_SHELLDER] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 16, }, [SPECIES_CLOYSTER] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_GASTLY] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_HAUNTER] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_GENGAR] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_ONIX] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 2, }, [SPECIES_DROWZEE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_HYPNO] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_KRABBY] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 13, }, [SPECIES_KINGLER] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_VOLTORB] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 19, }, [SPECIES_ELECTRODE] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_EXEGGCUTE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_EXEGGUTOR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CUBONE] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_MAROWAK] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 11, }, [SPECIES_HITMONLEE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_HITMONCHAN] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 4, }, [SPECIES_LICKITUNG] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_KOFFING] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_WEEZING] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_RHYHORN] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_RHYDON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_CHANSEY] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_TANGELA] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_KANGASKHAN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_HORSEA] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 15, }, [SPECIES_SEADRA] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_GOLDEEN] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_SEAKING] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_STARYU] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_STARMIE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_MR_MIME] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_SCYTHER] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_JYNX] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_ELECTABUZZ] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 2, }, [SPECIES_MAGMAR] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_PINSIR] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_TAUROS] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_MAGIKARP] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_GYARADOS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 8, }, [SPECIES_LAPRAS] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 13, }, [SPECIES_DITTO] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 17, }, [SPECIES_EEVEE] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 9, }, [SPECIES_VAPOREON] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_JOLTEON] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_FLAREON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_PORYGON] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 13, }, [SPECIES_OMANYTE] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 15, }, [SPECIES_OMASTAR] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_KABUTO] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 17, }, [SPECIES_KABUTOPS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_AERODACTYL] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SNORLAX] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_ARTICUNO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_ZAPDOS] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_MOLTRES] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_DRATINI] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 14, }, [SPECIES_DRAGONAIR] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_DRAGONITE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_MEWTWO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_MEW] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 13, }, [SPECIES_CHIKORITA] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_BAYLEEF] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_MEGANIUM] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CYNDAQUIL] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_QUILAVA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_TYPHLOSION] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_TOTODILE] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_CROCONAW] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_FERALIGATR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SENTRET] = { - .size = 0x47, + .size = MON_COORDS_SIZE(32, 56), .y_offset = 4, }, [SPECIES_FURRET] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_HOOTHOOT] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 13, }, [SPECIES_NOCTOWL] = { - .size = 0x58, + .size = MON_COORDS_SIZE(40, 64), .y_offset = 3, }, [SPECIES_LEDYBA] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 12, }, [SPECIES_LEDIAN] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 4, }, [SPECIES_SPINARAK] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 19, }, [SPECIES_ARIADOS] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_CROBAT] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CHINCHOU] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 16, }, [SPECIES_LANTURN] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 11, }, [SPECIES_PICHU] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 12, }, [SPECIES_CLEFFA] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 20, }, [SPECIES_IGGLYBUFF] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 18, }, [SPECIES_TOGEPI] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 20, }, [SPECIES_TOGETIC] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_NATU] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 20, }, [SPECIES_XATU] = { - .size = 0x47, + .size = MON_COORDS_SIZE(32, 56), .y_offset = 7, }, [SPECIES_MAREEP] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 16, }, [SPECIES_FLAAFFY] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_AMPHAROS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_BELLOSSOM] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 14, }, [SPECIES_MARILL] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_AZUMARILL] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_SUDOWOODO] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_POLITOED] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_HOPPIP] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_SKIPLOOM] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_JUMPLUFF] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_AIPOM] = { - .size = 0x58, + .size = MON_COORDS_SIZE(40, 64), .y_offset = 3, }, [SPECIES_SUNKERN] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_SUNFLORA] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_YANMA] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_WOOPER] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_QUAGSIRE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 7, }, [SPECIES_ESPEON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_UMBREON] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 8, }, [SPECIES_MURKROW] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_SLOWKING] = { - .size = 0x58, + .size = MON_COORDS_SIZE(40, 64), .y_offset = 1, }, [SPECIES_MISDREAVUS] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_UNOWN] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 15, }, [SPECIES_WOBBUFFET] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_GIRAFARIG] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_PINECO] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_FORRETRESS] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_DUNSPARCE] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 17, }, [SPECIES_GLIGAR] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_STEELIX] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SNUBBULL] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 13, }, [SPECIES_GRANBULL] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 6, }, [SPECIES_QWILFISH] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 10, }, [SPECIES_SCIZOR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SHUCKLE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_HERACROSS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_SNEASEL] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_TEDDIURSA] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_URSARING] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 1, }, [SPECIES_SLUGMA] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_MAGCARGO] = { - .size = 0x57, + .size = MON_COORDS_SIZE(40, 56), .y_offset = 13, }, [SPECIES_SWINUB] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 20, }, [SPECIES_PILOSWINE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_CORSOLA] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_REMORAID] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_OCTILLERY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_DELIBIRD] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_MANTINE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_SKARMORY] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_HOUNDOUR] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_HOUNDOOM] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_KINGDRA] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 4, }, [SPECIES_PHANPY] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_DONPHAN] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_PORYGON2] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_STANTLER] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SMEARGLE] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_TYROGUE] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_HITMONTOP] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 5, }, [SPECIES_SMOOCHUM] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 15, }, [SPECIES_ELEKID] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_MAGBY] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 13, }, [SPECIES_MILTANK] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_BLISSEY] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 6, }, [SPECIES_RAIKOU] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_ENTEI] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SUICUNE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_LARVITAR] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_PUPITAR] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 9, }, [SPECIES_TYRANITAR] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_LUGIA] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_HO_OH] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CELEBI] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_OLD_UNOWN_B] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_C] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_D] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_E] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_F] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_G] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_H] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_I] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_J] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_K] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_L] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_M] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_N] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_O] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_P] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_Q] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_R] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_S] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_T] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_U] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_V] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_W] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_X] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_Y] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_OLD_UNOWN_Z] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_TREECKO] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_GROVYLE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_SCEPTILE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_TORCHIC] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_COMBUSKEN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_BLAZIKEN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_MUDKIP] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 12, }, [SPECIES_MARSHTOMP] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_SWAMPERT] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_POOCHYENA] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_MIGHTYENA] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_ZIGZAGOON] = { - .size = 0x85, + .size = MON_COORDS_SIZE(64, 40), .y_offset = 15, }, [SPECIES_LINOONE] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_WURMPLE] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 14, }, [SPECIES_SILCOON] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 17, }, [SPECIES_BEAUTIFLY] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 9, }, [SPECIES_CASCOON] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 16, }, [SPECIES_DUSTOX] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 15, }, [SPECIES_LOTAD] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 14, }, [SPECIES_LOMBRE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_LUDICOLO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SEEDOT] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 16, }, [SPECIES_NUZLEAF] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_SHIFTRY] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_NINCADA] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 18, }, [SPECIES_NINJASK] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_SHEDINJA] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_TAILLOW] = { - .size = 0x64, + .size = MON_COORDS_SIZE(48, 32), .y_offset = 16, }, [SPECIES_SWELLOW] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_SHROOMISH] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_BRELOOM] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_SPINDA] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 8, }, [SPECIES_WINGULL] = { - .size = 0x84, + .size = MON_COORDS_SIZE(64, 32), .y_offset = 24, }, [SPECIES_PELIPPER] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 4, }, [SPECIES_SURSKIT] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 15, }, [SPECIES_MASQUERAIN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_WAILMER] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 15, }, [SPECIES_WAILORD] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 10, }, [SPECIES_SKITTY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 11, }, [SPECIES_DELCATTY] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_KECLEON] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_BALTOY] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 16, }, [SPECIES_CLAYDOL] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 6, }, [SPECIES_NOSEPASS] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 12, }, [SPECIES_TORKOAL] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_SABLEYE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_BARBOACH] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 11, }, [SPECIES_WHISCASH] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 9, }, [SPECIES_LUVDISC] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 24, }, [SPECIES_CORPHISH] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 12, }, [SPECIES_CRAWDAUNT] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_FEEBAS] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 13, }, [SPECIES_MILOTIC] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CARVANHA] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 6, }, [SPECIES_SHARPEDO] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_TRAPINCH] = { - .size = 0x54, + .size = MON_COORDS_SIZE(40, 32), .y_offset = 16, }, [SPECIES_VIBRAVA] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 12, }, [SPECIES_FLYGON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_MAKUHITA] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_HARIYAMA] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_ELECTRIKE] = { - .size = 0x64, + .size = MON_COORDS_SIZE(48, 32), .y_offset = 18, }, [SPECIES_MANECTRIC] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 4, }, [SPECIES_NUMEL] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 15, }, [SPECIES_CAMERUPT] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 9, }, [SPECIES_SPHEAL] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 16, }, [SPECIES_SEALEO] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 10, }, [SPECIES_WALREIN] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_CACNEA] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 16, }, [SPECIES_CACTURNE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_SNORUNT] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_GLALIE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 10, }, [SPECIES_LUNATONE] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_SOLROCK] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_AZURILL] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_SPOINK] = { - .size = 0x46, + .size = MON_COORDS_SIZE(32, 48), .y_offset = 9, }, [SPECIES_GRUMPIG] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_PLUSLE] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 14, }, [SPECIES_MINUN] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 12, }, [SPECIES_MAWILE] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_MEDITITE] = { - .size = 0x65, + .size = MON_COORDS_SIZE(48, 40), .y_offset = 12, }, [SPECIES_MEDICHAM] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 1, }, [SPECIES_SWABLU] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 17, }, [SPECIES_ALTARIA] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_WYNAUT] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_DUSKULL] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 10, }, [SPECIES_DUSCLOPS] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 5, }, [SPECIES_ROSELIA] = { - .size = 0x76, + .size = MON_COORDS_SIZE(56, 48), .y_offset = 8, }, [SPECIES_SLAKOTH] = { - .size = 0x74, + .size = MON_COORDS_SIZE(56, 32), .y_offset = 18, }, [SPECIES_VIGOROTH] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_SLAKING] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 8, }, [SPECIES_GULPIN] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 18, }, [SPECIES_SWALOT] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_TROPIUS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_WHISMUR] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_LOUDRED] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_EXPLOUD] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_CLAMPERL] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 14, }, [SPECIES_HUNTAIL] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 3, }, [SPECIES_GOREBYSS] = { - .size = 0x86, + .size = MON_COORDS_SIZE(64, 48), .y_offset = 11, }, [SPECIES_ABSOL] = { - .size = 0x68, + .size = MON_COORDS_SIZE(48, 64), .y_offset = 0, }, [SPECIES_SHUPPET] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 14, }, [SPECIES_BANETTE] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 12, }, [SPECIES_SEVIPER] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 8, }, [SPECIES_ZANGOOSE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 5, }, [SPECIES_RELICANTH] = { - .size = 0x77, + .size = MON_COORDS_SIZE(56, 56), .y_offset = 11, }, [SPECIES_ARON] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 20, }, [SPECIES_LAIRON] = { - .size = 0x75, + .size = MON_COORDS_SIZE(56, 40), .y_offset = 13, }, [SPECIES_AGGRON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_CASTFORM] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 17, }, [SPECIES_VOLBEAT] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_ILLUMISE] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 8, }, [SPECIES_LILEEP] = { - .size = 0x67, + .size = MON_COORDS_SIZE(48, 56), .y_offset = 7, }, [SPECIES_CRADILY] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 0, }, [SPECIES_ANORITH] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 8, }, [SPECIES_ARMALDO] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_RALTS] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 15, }, [SPECIES_KIRLIA] = { - .size = 0x47, + .size = MON_COORDS_SIZE(32, 56), .y_offset = 6, }, [SPECIES_GARDEVOIR] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 1, }, [SPECIES_BAGON] = { - .size = 0x56, + .size = MON_COORDS_SIZE(40, 48), .y_offset = 11, }, [SPECIES_SHELGON] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 9, }, [SPECIES_SALAMENCE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_BELDUM] = { - .size = 0x55, + .size = MON_COORDS_SIZE(40, 40), .y_offset = 15, }, [SPECIES_METANG] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 7, }, [SPECIES_METAGROSS] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 6, }, [SPECIES_REGIROCK] = { - .size = 0x78, + .size = MON_COORDS_SIZE(56, 64), .y_offset = 4, }, [SPECIES_REGICE] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_REGISTEEL] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 3, }, [SPECIES_KYOGRE] = { - .size = 0x87, + .size = MON_COORDS_SIZE(64, 56), .y_offset = 4, }, [SPECIES_GROUDON] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_RAYQUAZA] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 0, }, [SPECIES_LATIAS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_LATIOS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 2, }, [SPECIES_JIRACHI] = { - .size = 0x66, + .size = MON_COORDS_SIZE(48, 48), .y_offset = 13, }, [SPECIES_DEOXYS] = { - .size = 0x88, + .size = MON_COORDS_SIZE(64, 64), .y_offset = 1, }, [SPECIES_CHIMECHO] = { - .size = 0x37, + .size = MON_COORDS_SIZE(24, 56), .y_offset = 6, }, [SPECIES_EGG] = { - .size = 0x33, + .size = MON_COORDS_SIZE(24, 24), .y_offset = 20, }, [SPECIES_UNOWN_B] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 16, }, [SPECIES_UNOWN_C] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_UNOWN_D] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_UNOWN_E] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 17, }, [SPECIES_UNOWN_F] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 17, }, [SPECIES_UNOWN_G] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 14, }, [SPECIES_UNOWN_H] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_UNOWN_I] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 16, }, [SPECIES_UNOWN_J] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 17, }, [SPECIES_UNOWN_K] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 17, }, [SPECIES_UNOWN_L] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 19, }, [SPECIES_UNOWN_M] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 19, }, [SPECIES_UNOWN_N] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 20, }, [SPECIES_UNOWN_O] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 16, }, [SPECIES_UNOWN_P] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 19, }, [SPECIES_UNOWN_Q] = { - .size = 0x43, + .size = MON_COORDS_SIZE(32, 24), .y_offset = 21, }, [SPECIES_UNOWN_R] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 19, }, [SPECIES_UNOWN_S] = { - .size = 0x45, + .size = MON_COORDS_SIZE(32, 40), .y_offset = 12, }, [SPECIES_UNOWN_T] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 18, }, [SPECIES_UNOWN_U] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 18, }, [SPECIES_UNOWN_V] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 18, }, [SPECIES_UNOWN_W] = { - .size = 0x44, + .size = MON_COORDS_SIZE(32, 32), .y_offset = 19, }, [SPECIES_UNOWN_X] = { - .size = 0x33, + .size = MON_COORDS_SIZE(24, 24), .y_offset = 21, }, [SPECIES_UNOWN_Y] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 17, }, [SPECIES_UNOWN_Z] = { - .size = 0x34, + .size = MON_COORDS_SIZE(24, 32), .y_offset = 16, }, [SPECIES_UNOWN_EMARK] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 15, }, [SPECIES_UNOWN_QMARK] = { - .size = 0x35, + .size = MON_COORDS_SIZE(24, 40), .y_offset = 13, }, }; From d20341646a2ddf40ec4f8bfde235ba442093abb0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 12:41:21 -0400 Subject: [PATCH 394/762] Start battle_anim_mons doc --- include/battle_anim.h | 8 +- src/battle_anim_effects_1.c | 6 +- src/battle_anim_effects_2.c | 4 +- src/battle_anim_effects_3.c | 4 +- src/battle_anim_ghost.c | 4 +- src/battle_anim_ice.c | 4 +- src/battle_anim_mon_movement.c | 12 +- src/battle_anim_mons.c | 210 ++++++++++++++++++++------------ src/battle_anim_psychic.c | 2 +- src/battle_anim_utility_funcs.c | 2 +- src/pokemon_icon.c | 2 +- 11 files changed, 155 insertions(+), 103 deletions(-) diff --git a/include/battle_anim.h b/include/battle_anim.h index 3f73f1daf621..01931125fcbe 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -113,7 +113,7 @@ void GetBattleAnimBgData(struct BattleAnimBgData*, u32 arg1); u8 GetBattlerSpriteSubpriority(u8 battlerId); bool8 TranslateAnimHorizontalArc(struct Sprite *sprite); void sub_80A6630(struct Sprite *sprite); -void TranslateMonSpriteLinearFixedPoint(struct Sprite *sprite); +void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite); void ResetSpriteRotScale(u8 spriteId); void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation); void InitSpriteDataForLinearTranslation(struct Sprite *sprite); @@ -123,7 +123,7 @@ u32 GetBattleBgPalettesMask(u8 battleBackground, u8 attacker, u8 target, u8 atta u32 GetBattleMonSpritePalettesMask(u8 playerLeft, u8 playerRight, u8 opponentLeft, u8 opponentRight); u8 AnimDummyReturnArg(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); -void obj_delete_but_dont_free_vram(struct Sprite*); +void DestroySpriteWithActiveSheet(struct Sprite*); u8 CreateInvisibleSpriteCopy(int, u8, int); void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void*, bool32); void AnimLoadCompressedBgGfx(u32, const u32*, u32); @@ -138,7 +138,7 @@ void AnimLoadCompressedBgTilemap(u32 bgId, const void *src); void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite); bool8 AnimFastTranslateLinear(struct Sprite *sprite); void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite); -void TranslateMonSpriteLinear(struct Sprite *sprite); +void TranslateSpriteLinearById(struct Sprite *sprite); void TranslateSpriteLinear(struct Sprite *sprite); void AnimSpriteOnMonPos(struct Sprite *sprite); void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite); @@ -157,7 +157,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId); u8 GetBattlerSide(u8 battler); u8 GetBattlerPosition(u8 battler); u8 GetBattlerAtPosition(u8 position); -void sub_80A64EC(struct Sprite *sprite); +void ConvertPosDataToTranslateLinearData(struct Sprite *sprite); void InitAnimFastLinearTranslationWithSpeedAndPos(struct Sprite *sprite); enum diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index f54ebfbf7e8e..1966250ad6ed 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -4442,7 +4442,7 @@ static void AnimBowMon_Step1(struct Sprite* sprite) sprite->data[2] = 0; sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker]; StoreSpriteCallbackInData6(sprite, AnimBowMon_Step1_Callback); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void AnimBowMon_Step1_Callback(struct Sprite* sprite) @@ -4472,7 +4472,7 @@ static void AnimBowMon_Step2(struct Sprite* sprite) sprite->data[2] = 0; sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker]; StoreSpriteCallbackInData6(sprite, AnimBowMon_Step4); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void AnimBowMon_Step3(struct Sprite* sprite) @@ -5226,7 +5226,7 @@ static void AnimDoubleTeam(struct Sprite* sprite) if (sprite->data[0] > 64) { gTasks[sprite->data[2]].data[3]--; - obj_delete_but_dont_free_vram(sprite); + DestroySpriteWithActiveSheet(sprite); } else { diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 27149873d6a6..e25c71007f6e 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -2113,7 +2113,7 @@ static void CreateMinimizeSprite(struct Task* task, u8 taskId) { if ((matrixNum = AllocOamMatrix()) == 0xFF) { - obj_delete_but_dont_free_vram(&gSprites[spriteId]); + DestroySpriteWithActiveSheet(&gSprites[spriteId]); } else { @@ -2141,7 +2141,7 @@ static void ClonedMinizeSprite_Step(struct Sprite *sprite) { gTasks[sprite->data[1]].data[sprite->data[2]]--; FreeOamMatrix(sprite->oam.matrixNum); - obj_delete_but_dont_free_vram(sprite); + DestroySpriteWithActiveSheet(sprite); } } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 85dee52871b4..6bf53c5d6e47 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -4896,7 +4896,7 @@ void AnimTask_OdorSleuthMovement(u8 taskId) spriteId2 = CloneBattlerSpriteWithBlend(ANIM_TARGET); if (spriteId2 < 0) { - obj_delete_but_dont_free_vram(&gSprites[spriteId1]); + DestroySpriteWithActiveSheet(&gSprites[spriteId1]); DestroyAnimVisualTask(taskId); return; } @@ -4974,7 +4974,7 @@ static void MoveOdorSleuthClone(struct Sprite *sprite) if (sprite->data[5] < 0) { gTasks[sprite->data[6]].data[sprite->data[7]]--; - obj_delete_but_dont_free_vram(sprite); + DestroySpriteWithActiveSheet(sprite); } } break; diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 03a003c604fb..16daa42196b8 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -567,7 +567,7 @@ static void AnimTask_NightmareClone_Step(u8 taskId) break; if (task->data[1] <= 80) break; - obj_delete_but_dont_free_vram(&gSprites[task->data[0]]); + DestroySpriteWithActiveSheet(&gSprites[task->data[0]]); task->data[4] = 1; break; case 1: @@ -723,7 +723,7 @@ static void AnimTask_SpiteTargetShadow_Step3(u8 taskId) break; case 2: gSprites[task->data[14]].invisible = TRUE; - obj_delete_but_dont_free_vram(&gSprites[task->data[0]]); + DestroySpriteWithActiveSheet(&gSprites[task->data[0]]); FreeSpritePaletteByTag(ANIM_TAG_BENT_SPOON); SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0); diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 95c64f7cadc9..1d65d9570cec 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -538,7 +538,7 @@ static void AnimUnusedIceCrystalThrow(struct Sprite *sprite) sprite->data[2] = gBattleAnimArgs[2] + targetX; sprite->data[3] = gBattleAnimArgs[1] + attackerY; sprite->data[4] = gBattleAnimArgs[3] + targetY; - sub_80A64EC(sprite); + ConvertPosDataToTranslateLinearData(sprite); for (;(targetX >= -32 && targetX <= DISPLAY_WIDTH + 32) && (targetY >= -32 && targetY <= DISPLAY_HEIGHT + 32); targetX += sprite->data[1], targetY += sprite->data[2]) @@ -557,7 +557,7 @@ static void AnimUnusedIceCrystalThrow(struct Sprite *sprite) sprite->data[2] = targetX; sprite->data[3] = attackerY; sprite->data[4] = targetY; - sub_80A64EC(sprite); + ConvertPosDataToTranslateLinearData(sprite); sprite->data[3] = gBattleAnimArgs[5]; sprite->data[4] = gBattleAnimArgs[6]; sprite->callback = AnimUnusedIceCrystalThrow_Step; diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index 31857c4dcc7f..ba2cbe29ac0f 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -441,14 +441,14 @@ static void DoHorizontalLunge(struct Sprite *sprite) sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker]; sprite->data[4] = gBattleAnimArgs[0]; StoreSpriteCallbackInData6(sprite, ReverseHorizontalLungeDirection); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void ReverseHorizontalLungeDirection(struct Sprite *sprite) { sprite->data[0] = sprite->data[4]; sprite->data[1] = -sprite->data[1]; - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -468,14 +468,14 @@ static void DoVerticalDip(struct Sprite *sprite) sprite->data[3] = spriteId; sprite->data[4] = gBattleAnimArgs[0]; StoreSpriteCallbackInData6(sprite, ReverseVerticalDipDirection); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void ReverseVerticalDipDirection(struct Sprite *sprite) { sprite->data[0] = sprite->data[4]; sprite->data[2] = -sprite->data[2]; - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -581,7 +581,7 @@ static void SlideMonToOffset(struct Sprite *sprite) sprite->data[5] = monSpriteId; sprite->invisible = TRUE; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - sprite->callback = TranslateMonSpriteLinearFixedPoint; + sprite->callback = TranslateSpriteLinearByIdFixedPoint; } static void SlideMonToOffsetAndBack(struct Sprite *sprite) @@ -622,7 +622,7 @@ static void SlideMonToOffsetAndBack(struct Sprite *sprite) { StoreSpriteCallbackInData6(sprite, SlideMonToOffsetAndBack_End); } - sprite->callback = TranslateMonSpriteLinearFixedPoint; + sprite->callback = TranslateSpriteLinearByIdFixedPoint; } diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 5c170adf2262..75e1dadf7ec1 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -23,15 +23,15 @@ extern const struct OamData gOamData_AffineNormal_ObjNormal_64x64; static void sub_80A6FB4(struct Sprite *sprite); static void AnimFastTranslateLinearWaitEnd(struct Sprite *sprite); static void AnimThrowProjectile_Step(struct Sprite *sprite); -static void sub_80A8DFC(struct Sprite *sprite); +static void AnimBattlerTrace(struct Sprite *sprite); static void AnimWeatherBallUp_Step(struct Sprite *sprite); static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId); static void AnimTask_BlendPalInAndOutSetup(struct Task *task); static void AnimTask_AlphaFadeIn_Step(u8 taskId); static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId); static void AnimTask_BlendMonInAndOut_Step(u8 taskId); -static bool8 sub_80A7238(void); -static void sub_80A8D78(struct Task *task, u8 taskId); +static bool8 ShouldRotScaleSpeciesBeFlipped(void); +static void CreateBattlerTrace(struct Task *task, u8 taskId); EWRAM_DATA static union AffineAnimCmd *sAnimTaskAffineAnim = NULL; @@ -285,8 +285,8 @@ u8 GetBattlerSpriteFinal_Y(u8 battlerId, u16 species, bool8 a3) { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) y += 8; - if (y > 104) - y = 104; + if (y > DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8) + y = DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8; } return y; } @@ -465,7 +465,8 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite) } } -void sub_80A63C8(struct Sprite *sprite) +// Unused +static void sub_80A63C8(struct Sprite *sprite) { if (sprite->data[3]) { @@ -519,34 +520,47 @@ void WaitAnimForDuration(struct Sprite *sprite) SetCallbackToStoredInData6(sprite); } -static void sub_80A64D0(struct Sprite *sprite) +// Sprite data for ConvertPosDataToTranslateLinearData +#define sStepsX data[0] +#define sStartX data[1] +#define sTargetX data[2] +#define sStartY data[3] +#define sTargetY data[4] + +// Sprite data for TranslateSpriteLinear +#define sMoveSteps data[0] +#define sSpeedX data[1] +#define sSpeedY data[2] + +// Functionally unused +static void AnimPosToTranslateLinear(struct Sprite *sprite) { - sub_80A64EC(sprite); + ConvertPosDataToTranslateLinearData(sprite); sprite->callback = TranslateSpriteLinear; sprite->callback(sprite); } -void sub_80A64EC(struct Sprite *sprite) +void ConvertPosDataToTranslateLinearData(struct Sprite *sprite) { s16 old; int xDiff; - if (sprite->data[1] > sprite->data[2]) - sprite->data[0] = -sprite->data[0]; - xDiff = sprite->data[2] - sprite->data[1]; - old = sprite->data[0]; - sprite->data[0] = abs(xDiff / sprite->data[0]); - sprite->data[2] = (sprite->data[4] - sprite->data[3]) / sprite->data[0]; - sprite->data[1] = old; + if (sprite->sStartX > sprite->sTargetX) + sprite->sStepsX = -sprite->sStepsX; + xDiff = sprite->sTargetX - sprite->sStartX; + old = sprite->sStepsX; + sprite->sMoveSteps = abs(xDiff / sprite->sStepsX); + sprite->sSpeedY = (sprite->sTargetY - sprite->sStartY) / sprite->sMoveSteps; + sprite->sSpeedX = old; } void TranslateSpriteLinear(struct Sprite *sprite) { - if (sprite->data[0] > 0) + if (sprite->sMoveSteps > 0) { - sprite->data[0]--; - sprite->x2 += sprite->data[1]; - sprite->y2 += sprite->data[2]; + sprite->sMoveSteps--; + sprite->x2 += sprite->sSpeedX; + sprite->y2 += sprite->sSpeedY; } else { @@ -588,16 +602,18 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite) UpdateMonIconFrame(sprite); } -void sub_80A65EC(struct Sprite *sprite) +// Unused +static void TranslateSpriteToBattleTargetPos(struct Sprite *sprite) { - sprite->data[1] = sprite->x + sprite->x2; - sprite->data[3] = sprite->y + sprite->y2; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); - sprite->callback = sub_80A64D0; + sprite->sStartX = sprite->x + sprite->x2; + sprite->sStartY = sprite->y + sprite->y2; + sprite->sTargetX = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->sTargetY = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + sprite->callback = AnimPosToTranslateLinear; } -void TranslateMonSpriteLinear(struct Sprite *sprite) +// Same as TranslateSpriteLinear but takes an id to specify which sprite to move +void TranslateSpriteLinearById(struct Sprite *sprite) { if (sprite->data[0] > 0) { @@ -611,7 +627,7 @@ void TranslateMonSpriteLinear(struct Sprite *sprite) } } -void TranslateMonSpriteLinearFixedPoint(struct Sprite *sprite) +void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite) { if (sprite->data[0] > 0) { @@ -654,16 +670,18 @@ void DestroySpriteAndMatrix(struct Sprite *sprite) DestroyAnimSprite(sprite); } -void sub_80A6760(struct Sprite *sprite) +// Unused +static void TranslateSpriteToBattleAttackerPos(struct Sprite *sprite) { - sprite->data[1] = sprite->x + sprite->x2; - sprite->data[3] = sprite->y + sprite->y2; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); - sprite->callback = sub_80A64D0; + sprite->sStartX = sprite->x + sprite->x2; + sprite->sStartY = sprite->y + sprite->y2; + sprite->sTargetX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->sTargetY = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + sprite->callback = AnimPosToTranslateLinear; } -void sub_80A67A4(struct Sprite *sprite) +// Unused +static void sub_80A67A4(struct Sprite *sprite) { ResetPaletteStructByUid(sprite->data[5]); DestroySpriteAndMatrix(sprite); @@ -1038,7 +1056,8 @@ void StartAnimLinearTranslation(struct Sprite *sprite) sprite->callback(sprite); } -void sub_80A6F14(struct Sprite *sprite) +// Unused +static void sub_80A6F14(struct Sprite *sprite) { sprite->data[1] = sprite->x; sprite->data[3] = sprite->y; @@ -1083,6 +1102,7 @@ void AnimTranslateLinear_WaitEnd(struct Sprite *sprite) SetCallbackToStoredInData6(sprite); } +// Functionally unused static void sub_80A6FB4(struct Sprite *sprite) { sub_8039E9C(sprite); @@ -1204,7 +1224,7 @@ void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation) src.xScale = xScale; src.yScale = yScale; src.rotation = rotation; - if (sub_80A7238()) + if (ShouldRotScaleSpeciesBeFlipped()) src.xScale = -src.xScale; i = gSprites[spriteId].oam.matrixNum; ObjAffineSet(&src, &matrix, 1, 2); @@ -1214,7 +1234,8 @@ void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation) gOamMatrices[i].d = matrix.d; } -static bool8 sub_80A7238(void) +// PokĂ©mon in Contests (except Unown) should be flipped. +static bool8 ShouldRotScaleSpeciesBeFlipped(void) { if (IsContest()) { @@ -1279,7 +1300,7 @@ void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 x src.xScale = xScale; src.yScale = yScale; src.rotation = rotation; - if (sub_80A7238()) + if (ShouldRotScaleSpeciesBeFlipped()) src.xScale = -src.xScale; i = sprite->oam.matrixNum; ObjAffineSet(&src, &matrix, 1, 2); @@ -1583,7 +1604,7 @@ s16 CloneBattlerSpriteWithBlend(u8 animBattler) return -1; } -void obj_delete_but_dont_free_vram(struct Sprite *sprite) +void DestroySpriteWithActiveSheet(struct Sprite *sprite) { sprite->usingSheet = TRUE; DestroySprite(sprite); @@ -2329,6 +2350,19 @@ void AnimSpinningSparkle(struct Sprite *sprite) StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } +// Task and sprite data for AnimTask_AttackerPunchWithTrace +#define tBattlerSpriteId data[0] +#define tMoveSpeed data[1] +#define tState data[2] +#define tCounter data[3] +#define tPaletteNum data[4] +#define tNumTracesActive data[5] +#define tPriority data[6] + +#define sActiveTime data[0] +#define sTaskId data[1] +#define sSpriteId data[2] + // Slides attacker to right and back with a cloned trace of the specified color // arg0: Trace palette blend color // arg1: Trace palette blend coeff @@ -2338,21 +2372,24 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) u16 dest; struct Task *task = &gTasks[taskId]; - task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER); - task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8; - task->data[2] = 0; - task->data[3] = 0; - gSprites[task->data[0]].x2 -= task->data[0]; - task->data[4] = AllocSpritePalette(ANIM_TAG_BENT_SPOON); - task->data[5] = 0; - - dest = (task->data[4] + 0x10) * 0x10; - src = (gSprites[task->data[0]].oam.paletteNum + 0x10) * 0x10; - task->data[6] = GetBattlerSpriteSubpriority(gBattleAnimAttacker); - if (task->data[6] == 20 || task->data[6] == 40) - task->data[6] = 2; + task->tBattlerSpriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); + task->tMoveSpeed = (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) ? -8 : 8; + task->tState = 0; + task->tCounter = 0; + gSprites[task->tBattlerSpriteId].x2 -= task->tBattlerSpriteId; + task->tPaletteNum = AllocSpritePalette(ANIM_TAG_BENT_SPOON); + task->tNumTracesActive = 0; + + dest = (task->tPaletteNum + 16) * 16; + src = (gSprites[task->tBattlerSpriteId].oam.paletteNum + 0x10) * 0x10; + + // Set trace's priority based on battler's subpriority + task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); + if (task->tPriority == 20 || task->tPriority == 40) + task->tPriority = 2; else - task->data[6] = 3; + task->tPriority = 3; + CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20); BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]); task->func = AnimTask_AttackerPunchWithTrace_Step; @@ -2361,28 +2398,30 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[2]) + switch (task->tState) { case 0: - sub_80A8D78(task, taskId); - gSprites[task->data[0]].x2 += task->data[1]; - if (++task->data[3] == 5) + // Move forward + CreateBattlerTrace(task, taskId); + gSprites[task->tBattlerSpriteId].x2 += task->tMoveSpeed; + if (++task->tCounter == 5) { - task->data[3]--; - task->data[2]++; + task->tCounter--; + task->tState++; } break; case 1: - sub_80A8D78(task, taskId); - gSprites[task->data[0]].x2 -= task->data[1]; - if (--task->data[3] == 0) + // Move back (do same number of traces as before) + CreateBattlerTrace(task, taskId); + gSprites[task->tBattlerSpriteId].x2 -= task->tMoveSpeed; + if (--task->tCounter == 0) { - gSprites[task->data[0]].x2 = 0; - task->data[2]++; + gSprites[task->tBattlerSpriteId].x2 = 0; + task->tState++; } break; case 2: - if (!task->data[5]) + if (task->tNumTracesActive == 0) { FreeSpritePaletteByTag(ANIM_TAG_BENT_SPOON); DestroyAnimVisualTask(taskId); @@ -2391,31 +2430,44 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId) } } -static void sub_80A8D78(struct Task *task, u8 taskId) +static void CreateBattlerTrace(struct Task *task, u8 taskId) { s16 spriteId = CloneBattlerSpriteWithBlend(0); if (spriteId >= 0) { - gSprites[spriteId].oam.priority = task->data[6]; - gSprites[spriteId].oam.paletteNum = task->data[4]; - gSprites[spriteId].data[0] = 8; - gSprites[spriteId].data[1] = taskId; - gSprites[spriteId].data[2] = spriteId; - gSprites[spriteId].x2 = gSprites[task->data[0]].x2; - gSprites[spriteId].callback = sub_80A8DFC; - task->data[5]++; + gSprites[spriteId].oam.priority = task->tPriority; + gSprites[spriteId].oam.paletteNum = task->tPaletteNum; + gSprites[spriteId].sActiveTime = 8; + gSprites[spriteId].sTaskId = taskId; + gSprites[spriteId].sSpriteId = spriteId; + gSprites[spriteId].x2 = gSprites[task->tBattlerSpriteId].x2; + gSprites[spriteId].callback = AnimBattlerTrace; + task->tNumTracesActive++; } } -static void sub_80A8DFC(struct Sprite *sprite) +// Just waits until destroyed +static void AnimBattlerTrace(struct Sprite *sprite) { - if (--sprite->data[0] == 0) + if (--sprite->sActiveTime == 0) { - gTasks[sprite->data[1]].data[5]--; - obj_delete_but_dont_free_vram(sprite); + gTasks[sprite->sTaskId].tNumTracesActive--; + DestroySpriteWithActiveSheet(sprite); } } +#undef tBattlerSpriteId +#undef tMoveSpeed +#undef tState +#undef tCounter +#undef tPaletteNum +#undef tNumTracesActive +#undef tPriority + +#undef sActiveTime +#undef sTaskId +#undef sSpriteId + void AnimWeatherBallUp(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index b3c7b4ce8e77..c98f311bd175 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -1108,7 +1108,7 @@ static void AnimTask_TransparentCloneGrowAndShrink_Step(u8 taskId) task->data[0]++; break; case 2: - obj_delete_but_dont_free_vram(&gSprites[task->data[15]]); + DestroySpriteWithActiveSheet(&gSprites[task->data[15]]); task->data[0]++; break; case 3: diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index b0eab5b743e0..e2c674c57ff7 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -267,7 +267,7 @@ static void AnimMonTrace(struct Sprite *sprite) else { gTasks[sprite->data[1]].data[sprite->data[2]]--; - obj_delete_but_dont_free_vram(sprite); + DestroySpriteWithActiveSheet(sprite); } } diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 58d0b3420012..2c010f35e678 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1116,7 +1116,7 @@ u16 GetIconSpeciesNoPersonality(u16 species) } else { - if (species > (SPECIES_UNOWN_B - 1)) + if (species > NUM_SPECIES) species = INVALID_ICON_SPECIES; return GetIconSpecies(species, 0); } From ae2602b5a576c2bcbea1c978b7943ce3c747e329 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 8 Nov 2021 11:46:38 -0500 Subject: [PATCH 395/762] Add missing BATTLER_COORD usage --- src/battle_anim_effects_1.c | 57 ++++++++++---------- src/battle_anim_effects_2.c | 104 ++++++++++++++++++------------------ src/battle_anim_effects_3.c | 76 +++++++++++++------------- src/battle_anim_electric.c | 4 +- src/battle_anim_fight.c | 52 +++++++++--------- src/battle_anim_fire.c | 12 ++--- src/battle_anim_flying.c | 30 +++++------ src/battle_anim_ghost.c | 38 ++++++------- src/battle_anim_ground.c | 28 +++++----- src/battle_anim_poison.c | 4 +- src/battle_anim_psychic.c | 4 +- src/battle_anim_rock.c | 12 ++--- src/battle_anim_water.c | 42 +++++++-------- 13 files changed, 231 insertions(+), 232 deletions(-) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 1966250ad6ed..9d1842176e16 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2548,7 +2548,7 @@ static void AnimPetalDanceSmallFlower(struct Sprite* sprite) sprite->data[1] = sprite->x; sprite->data[2] = sprite->x; sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; InitAnimLinearTranslation(sprite); sprite->data[5] = 0x40; sprite->callback = AnimPetalDanceSmallFlower_Step; @@ -2971,8 +2971,8 @@ static void AnimIngrainOrb(struct Sprite* sprite) { if (!sprite->data[0]) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -3309,8 +3309,8 @@ void AnimTask_LeafBlade(u8 taskId) struct Task *task = &gTasks[taskId]; task->data[4] = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1; - task->data[6] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - task->data[7] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + task->data[6] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + task->data[7] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); task->data[10] = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_WIDTH); task->data[11] = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_HEIGHT); task->data[5] = (GetBattlerSide(gBattleAnimTarget) == B_SIDE_OPPONENT) ? 1 : -1; @@ -3601,11 +3601,11 @@ static void AnimFlyingParticle(struct Sprite* sprite) sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; case 2: - sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[0]; sprite->oam.priority = GetBattlerSpriteBGPriority(battler); break; case 3: - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[0]; GetAnimBattlerSpriteId(ANIM_TARGET); sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; @@ -3681,13 +3681,13 @@ static void AnimNeedleArmSpike(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - a = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - b = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + a = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } else { - a = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + a = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } sprite->data[0] = gBattleAnimArgs[4]; @@ -3790,8 +3790,8 @@ static void AnimFlickeringPunch(struct Sprite* sprite) // arg 2: slice direction; 0 = right-to-left, 1 = left-to-right static void AnimCuttingSlice(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) sprite->y += 8; @@ -3816,32 +3816,31 @@ static void AnimCuttingSlice(struct Sprite* sprite) static void AnimAirCutterSlice(struct Sprite* sprite) { - u8 a; - u8 b; + u8 x, y; switch (gBattleAnimArgs[3]) { case 1: - a = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 0); - b = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 1); + x = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_X); + y = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_Y); break; case 2: - a = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget))) { - a = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 0) + a) / 2; - b = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 1) + b) / 2; + x = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_X) + x) / 2; + y = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_Y) + y) / 2; } break; case 0: default: - a = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); break; } - sprite->x = a; - sprite->y = b; + sprite->x = x; + sprite->y = y; if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) sprite->y += 8; @@ -3956,8 +3955,8 @@ static void AnimProtect(struct Sprite* sprite) if (IsContest()) gBattleAnimArgs[1] += 8; - sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER || IsContest()) sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker) + 1; else @@ -4016,8 +4015,8 @@ static void AnimProtect_Step(struct Sprite *sprite) static void AnimMilkBottle(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 0xFFE8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 0xFFE8; sprite->data[0] = 0; sprite->data[1] = 0; sprite->data[2] = 0; diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index e25c71007f6e..fcdb56a10341 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1329,8 +1329,8 @@ static void AnimVibrateBattlerBack_Step(struct Sprite *sprite) static void AnimVibrateBattlerBack(struct Sprite *sprite) { u8 spriteId; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); spriteId = gBattlerSpriteIds[gBattleAnimTarget]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) sprite->x -= gBattleAnimArgs[0]; @@ -1498,8 +1498,8 @@ static void AnimSonicBoomProjectile(struct Sprite *sprite) } InitSpritePosToAnimAttacker(sprite, TRUE); - targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; - targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; + targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; rotation = ArcTan2Neg(targetXPos - sprite->x, targetYPos - sprite->y); rotation += 0xF000; if (IsContest()) @@ -1772,8 +1772,8 @@ static void AnimCoinThrow(struct Sprite *sprite) u16 var; InitSpritePosToAnimAttacker(sprite, TRUE); - r6 = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - r7 = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + r6 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + r7 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; @@ -2467,7 +2467,7 @@ static void AnimTask_SketchDrawMon_Step(u8 taskId) static void AnimPencil(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) - 16; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) - 16; sprite->y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16; sprite->data[0] = 0; sprite->data[1] = 0; @@ -2555,9 +2555,9 @@ static void AnimBlendThinRing(struct Sprite *sprite) { SetAverageBattlerPositions(battler, r4, &sp0, &sp1); if (r4 == 0) - r4 = GetBattlerSpriteCoord(battler, 0); + r4 = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); else - r4 = GetBattlerSpriteCoord(battler, 2); + r4 = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); if (GetBattlerSide(battler) != B_SIDE_PLAYER) gBattleAnimArgs[0] -= (sp0 - r4) - gBattleAnimArgs[0]; // This is weird. @@ -2580,14 +2580,14 @@ static void AnimHyperVoiceRing_WaitEnd(struct Sprite *sprite) static void AnimHyperVoiceRing(struct Sprite *sprite) { - u16 r9 = 0; - u16 r6 = 0; - s16 sp0 = 0; - s16 sp1 = 0; - u8 sp4; + u16 startX = 0; + u16 startY = 0; + s16 x = 0; + s16 y = 0; + u8 yCoordType; u8 battler1; u8 battler2; - u8 r10; + u8 xCoordType; if (gBattleAnimArgs[5] == 0) { @@ -2602,18 +2602,18 @@ static void AnimHyperVoiceRing(struct Sprite *sprite) if (!gBattleAnimArgs[6]) { - r10 = 0; - sp4 = 1; + xCoordType = BATTLER_COORD_X; + yCoordType = BATTLER_COORD_Y; } else { - r10 = 2; - sp4 = 3; + xCoordType = BATTLER_COORD_X_2; + yCoordType = BATTLER_COORD_Y_PIC_OFFSET; } if (GetBattlerSide(battler1) != B_SIDE_PLAYER) { - r9 = GetBattlerSpriteCoord(battler1, r10) + gBattleAnimArgs[0]; + startX = GetBattlerSpriteCoord(battler1, xCoordType) + gBattleAnimArgs[0]; if (IsBattlerSpriteVisible(BATTLE_PARTNER(battler2))) sprite->subpriority = gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler2)]].subpriority - 1; else @@ -2621,7 +2621,7 @@ static void AnimHyperVoiceRing(struct Sprite *sprite) } else { - r9 = GetBattlerSpriteCoord(battler1, r10) - gBattleAnimArgs[0]; + startX = GetBattlerSpriteCoord(battler1, xCoordType) - gBattleAnimArgs[0]; if (!IsContest() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler1))) { if (gSprites[gBattlerSpriteIds[battler1]].x < gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].x) @@ -2636,27 +2636,27 @@ static void AnimHyperVoiceRing(struct Sprite *sprite) } - r6 = GetBattlerSpriteCoord(battler1, sp4) + gBattleAnimArgs[1]; + startY = GetBattlerSpriteCoord(battler1, yCoordType) + gBattleAnimArgs[1]; if (!IsContest() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler2))) { - SetAverageBattlerPositions(battler2, gBattleAnimArgs[6], &sp0, &sp1); + SetAverageBattlerPositions(battler2, gBattleAnimArgs[6], &x, &y); } else { - sp0 = GetBattlerSpriteCoord(battler2, r10); - sp1 = GetBattlerSpriteCoord(battler2, sp4); + x = GetBattlerSpriteCoord(battler2, xCoordType); + y = GetBattlerSpriteCoord(battler2, yCoordType); } if (GetBattlerSide(battler2)) - sp0 += gBattleAnimArgs[3]; + x += gBattleAnimArgs[3]; else - sp0 -= gBattleAnimArgs[3]; + x -= gBattleAnimArgs[3]; - sp1 += gBattleAnimArgs[4]; - sprite->x = sprite->data[1] = r9; - sprite->y = sprite->data[3] = r6; - sprite->data[2] = sp0; - sprite->data[4] = sp1; + y += gBattleAnimArgs[4]; + sprite->x = sprite->data[1] = startX; + sprite->y = sprite->data[3] = startY; + sprite->data[2] = x; + sprite->data[4] = y; sprite->data[0] = gBattleAnimArgs[0]; InitAnimLinearTranslation(sprite); sprite->callback = AnimHyperVoiceRing_WaitEnd; @@ -2923,8 +2923,8 @@ void AnimTask_SpeedDust(u8 taskId) task->data[7] = 0; task->data[8] = 0; task->data[13] = 0; - task->data[14] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_ATTACKER); - task->data[15] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_TARGET); + task->data[14] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + task->data[15] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); task->func = AnimTask_SpeedDust_Step; } @@ -3047,8 +3047,8 @@ static void AnimHealBellMusicNote(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2]; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[3]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); SetMusicNotePalette(sprite, gBattleAnimArgs[5], gBattleAnimArgs[6]); @@ -3165,9 +3165,9 @@ static void AnimRedHeartProjectile(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = 95; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); sprite->callback = AnimRedHeartProjectile_Step; } @@ -3402,8 +3402,8 @@ static void AnimTask_ScaryFace_Step(u8 taskId) // arg 1: initial wave offset static void AnimOrbitFast(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->affineAnimPaused = 1; sprite->data[0] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[1]; @@ -3453,8 +3453,8 @@ static void AnimOrbitFast_Step(struct Sprite *sprite) // arg 0: initial wave offset static void AnimOrbitScatter(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->callback = AnimOrbitScatter_Step; @@ -3479,8 +3479,8 @@ static void AnimSpitUpOrb_Step(struct Sprite *sprite) static void AnimSpitUpOrb(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->data[2] = gBattleAnimArgs[1]; @@ -3617,13 +3617,13 @@ static void AnimMovementWaves(struct Sprite *sprite) { if (!gBattleAnimArgs[0]) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } if (!gBattleAnimArgs[1]) @@ -3671,8 +3671,8 @@ static void AnimJaggedMusicNote(struct Sprite *sprite) if (GetBattlerSide(battler) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->x = GetBattlerSpriteCoord(battler, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->data[0] = 0; sprite->data[1] = (u16)sprite->x << 3; sprite->data[2] = (u16)sprite->y << 3; @@ -3804,8 +3804,8 @@ static void AnimGuardRing(struct Sprite *sprite) } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 40; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 40; } sprite->data[0] = 13; diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 6bf53c5d6e47..cd8051998105 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1211,8 +1211,8 @@ static void AnimBlackSmoke_Step(struct Sprite *sprite) void AnimTask_SmokescreenImpact(u8 taskId) { SmokescreenImpact( - GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 8, - GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 8, + GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 8, + GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 8, 0); DestroyAnimVisualTask(taskId); } @@ -1247,8 +1247,8 @@ static void AnimWhiteHalo_Step2(struct Sprite *sprite) static void AnimTealAlert(struct Sprite *sprite) { u16 rotation; - u8 x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - u8 y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + u8 x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + u8 y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitSpritePosToAnimTarget(sprite, TRUE); @@ -1608,8 +1608,8 @@ static void AnimClappingHand(struct Sprite *sprite) { if (gBattleAnimArgs[3] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); } sprite->x += gBattleAnimArgs[0]; @@ -1710,13 +1710,13 @@ static void AnimRapidSpin(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); } sprite->y2 = gBattleAnimArgs[2]; @@ -1896,8 +1896,8 @@ void AnimTask_TormentAttacker(u8 taskId) task->data[0] = 0; task->data[1] = 0; - task->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - task->data[3] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + task->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + task->data[3] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); task->data[4] = 32; task->data[5] = -20; task->data[6] = 0; @@ -2038,8 +2038,8 @@ static void AnimTriAttackTriangle(struct Sprite *sprite) sprite->x2 = 0; sprite->y2 = 0; sprite->data[0] = 20; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = StartAnimLinearTranslation; } } @@ -2066,8 +2066,8 @@ static void AnimBatonPassPokeball(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); sprite->data[1] = 256; sprite->data[2] = 256; @@ -2222,7 +2222,7 @@ static void AnimSwallowBlueOrb(struct Sprite *sprite) case 0: InitSpritePosToAnimAttacker(sprite, FALSE); sprite->data[1] = 0x900; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0]++; break; case 1: @@ -2476,8 +2476,8 @@ static void AnimGreenStar(struct Sprite *sprite) if (xOffset > 31) xOffset = 32 - xOffset; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + xOffset; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + xOffset; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 32; sprite->data[1] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; @@ -3246,8 +3246,8 @@ void AnimTask_RolePlaySilhouette(u8 taskId) } } - coord1 = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - coord2 = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + coord1 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + coord2 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); spriteId = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, coord1 + xOffset, coord2, 5, personality, otId, gBattleAnimTarget, TRUE); gSprites[spriteId].oam.priority = priority; @@ -4165,7 +4165,7 @@ static void AnimSmellingSaltsHand(struct Sprite *sprite) sprite->oam.tileNum += 16; sprite->data[6] = gBattleAnimArgs[2]; sprite->data[7] = gBattleAnimArgs[1] == 0 ? -1 : 1; - sprite->y = GetBattlerSpriteCoord(battler, 3); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); if (gBattleAnimArgs[1] == 0) { sprite->oam.matrixNum |= ST_OAM_HFLIP; @@ -4280,12 +4280,12 @@ static void AnimSmellingSaltExclamation(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_TOP); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_TOP); } @@ -4426,9 +4426,9 @@ void AnimTask_HelpingHandAttackerMovement(u8 taskId) { if (IsDoubleBattle() == TRUE) { - int x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - int y = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimAttacker), 0); - if (x > y) + int attackerX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + int partnerX = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimAttacker), BATTLER_COORD_X); + if (attackerX > partnerX) task->data[14] = 1; else task->data[14] = -1; @@ -4566,24 +4566,24 @@ static void AnimForesightMagnifyingGlass_Step(struct Sprite *sprite) sprite->data[6] = 0; case 0: case 4: - x = GetBattlerSpriteCoordAttr(sprite->data[7], 5) - 4; - y = GetBattlerSpriteCoordAttr(sprite->data[7], 3) - 4; + x = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_RIGHT) - 4; + y = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_BOTTOM) - 4; break; case 1: - x = GetBattlerSpriteCoordAttr(sprite->data[7], 5) - 4; - y = GetBattlerSpriteCoordAttr(sprite->data[7], 2) + 4; + x = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_RIGHT) - 4; + y = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_TOP) + 4; break; case 2: - x = GetBattlerSpriteCoordAttr(sprite->data[7], 4) + 4; - y = GetBattlerSpriteCoordAttr(sprite->data[7], 3) - 4; + x = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_LEFT) + 4; + y = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_BOTTOM) - 4; break; case 3: - x = GetBattlerSpriteCoordAttr(sprite->data[7], 4) + 4; - y = GetBattlerSpriteCoordAttr(sprite->data[7], 2) - 4; + x = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_LEFT) + 4; + y = GetBattlerSpriteCoordAttr(sprite->data[7], BATTLER_COORD_ATTR_TOP) - 4; break; case 5: - x = GetBattlerSpriteCoord(sprite->data[7], 2); - y = GetBattlerSpriteCoord(sprite->data[7], 3); + x = GetBattlerSpriteCoord(sprite->data[7], BATTLER_COORD_X_2); + y = GetBattlerSpriteCoord(sprite->data[7], BATTLER_COORD_Y_PIC_OFFSET); break; } @@ -4814,7 +4814,7 @@ static void AnimBlockX(struct Sprite *sprite) y = -96; } - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y2 = y; sprite->callback = AnimBlockX_Step; } diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index a9a876920f11..bd527d244cfe 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -682,8 +682,8 @@ static void AnimElectricity(struct Sprite *sprite) // The vertical falling thunder bolt used in Thunder Wave/Shock/Bolt void AnimTask_ElectricBolt(u8 taskId) { - gTasks[taskId].data[0] = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[0]; - gTasks[taskId].data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[1]; + gTasks[taskId].data[0] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[0]; + gTasks[taskId].data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[1]; gTasks[taskId].data[2] = gBattleAnimArgs[2]; gTasks[taskId].func = AnimTask_ElectricBolt_Step; } diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index 47bb9312fc8b..76cefcd2cc7b 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -478,8 +478,8 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite) gBattleAnimArgs[2] = Random2() % 5; StartSpriteAnim(sprite, gBattleAnimArgs[2]); - sprite->x = GetBattlerSpriteCoord(battler, 2); - sprite->y = GetBattlerSpriteCoord(battler, 3); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); xMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_WIDTH) / 2; yMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; @@ -646,8 +646,8 @@ static void AnimStompFoot_Step(struct Sprite *sprite) if (--sprite->data[0] == -1) { sprite->data[0] = 6; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimStompFoot_End); @@ -691,13 +691,13 @@ static void AnimBrickBreakWall(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); } sprite->x += gBattleAnimArgs[1]; @@ -745,13 +745,13 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[2]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[3]; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[2]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[3]; } sprite->oam.tileNum += gBattleAnimArgs[1] * 16; @@ -796,8 +796,8 @@ static void AnimSuperpowerOrb(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->data[7] = gBattleAnimTarget; } @@ -821,9 +821,9 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite) sprite->data[0] = 16; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(sprite->data[7], 2); + sprite->data[2] = GetBattlerSpriteCoord(sprite->data[7], BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(sprite->data[7], 3); + sprite->data[4] = GetBattlerSpriteCoord(sprite->data[7], BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); @@ -865,10 +865,10 @@ static void AnimSuperpowerRock_Step1(struct Sprite *sprite) } else { - s16 pos0 = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - s16 pos1 = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); - s16 pos2 = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - s16 pos3 = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + s16 pos0 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + s16 pos1 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); + s16 pos2 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + s16 pos3 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = pos2 - pos0; sprite->data[1] = pos3 - pos1; @@ -899,8 +899,8 @@ static void AnimSuperpowerFireball(struct Sprite *sprite) if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, BATTLER_COORD_Y_PIC_OFFSET); battler = gBattleAnimTarget; sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); } @@ -917,9 +917,9 @@ static void AnimSuperpowerFireball(struct Sprite *sprite) sprite->data[0] = 16; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(battler, 2); + sprite->data[2] = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(battler, 3); + sprite->data[4] = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -938,8 +938,8 @@ static void AnimArmThrustHit(struct Sprite *sprite) { u8 turn; - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[1] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[0]; sprite->data[3] = gBattleAnimArgs[1]; diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 9123912801f0..e06ebca7b271 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -665,9 +665,9 @@ static void AnimFireRing_Step1(struct Sprite *sprite) { sprite->data[0] = 0x19; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); @@ -681,8 +681,8 @@ static void AnimFireRing_Step2(struct Sprite *sprite) { sprite->data[0] = 0; - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y2 = 0; sprite->x2 = 0; @@ -1101,9 +1101,9 @@ static void AnimWillOWispOrb(struct Sprite *sprite) sprite->data[0] = 256; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslationWithSpeed(sprite); sprite->callback = AnimWillOWispOrb_Step; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index b1098ad807c9..3c6341faa217 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -895,8 +895,8 @@ static void AnimFallingFeather_Step(struct Sprite *sprite) static void AnimUnusedBubbleThrow(struct Sprite *sprite) { sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget); - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = TranslateAnimSpriteToTargetMonLocation; } @@ -955,8 +955,8 @@ void AnimTask_DrillPeckHitSplats(u8 task) gBattleAnimArgs[3] = 3; CreateSpriteAndAnimate(&gFlashingHitSplatSpriteTemplate, - GetBattlerSpriteCoord(gBattleAnimTarget, 2), - GetBattlerSpriteCoord(gBattleAnimTarget, 3), + GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2), + GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET), 3); } @@ -987,7 +987,7 @@ static void AnimBounceBallLand(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); sprite->y2 = -sprite->y - 32; sprite->data[0]++; break; @@ -1056,13 +1056,13 @@ static void AnimDiveWaterSplash(struct Sprite *sprite) case 0: if (!gBattleAnimArgs[0]) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); } sprite->data[1] = 0x200; @@ -1123,13 +1123,13 @@ static void AnimSprayWaterDroplet(struct Sprite *sprite) if (gBattleAnimArgs[1] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 32; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 32; } sprite->callback = AnimSprayWaterDroplet_Step; @@ -1190,8 +1190,8 @@ static void AnimSkyAttackBird(struct Sprite *sprite) s16 posx = sprite->x; s16 posy = sprite->y; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[4] = sprite->x << 4; sprite->data[5] = sprite->y << 4; diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 16daa42196b8..c6005ebc21e3 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -222,9 +222,9 @@ static void AnimConfuseRayBallBounce(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslationWithSpeed(sprite); sprite->callback = AnimConfuseRayBallBounce_Step1; sprite->data[6] = 16; @@ -400,8 +400,8 @@ static void AnimShadowBall(struct Sprite *sprite) s16 oldPosX = sprite->x; s16 oldPosY = sprite->y; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[1]; @@ -431,8 +431,8 @@ static void AnimShadowBall_Step(struct Sprite *sprite) sprite->data[2] -= 1; if (sprite->data[2] > 0) break; - sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[4] = sprite->x << 4; sprite->data[5] = sprite->y << 4; sprite->data[6] = ((sprite->data[1] - sprite->x) << 4) / sprite->data[3]; @@ -447,8 +447,8 @@ static void AnimShadowBall_Step(struct Sprite *sprite) sprite->data[3] -= 1; if (sprite->data[3] > 0) break; - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] += 1; break; case 3: @@ -747,17 +747,17 @@ static void AnimDestinyBondWhiteShadow(struct Sprite *sprite) if (gBattleAnimArgs[0] == 0) { - battler1X = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - battler1Y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 28; - battler2X = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - battler2Y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 28; + battler1X = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + battler1Y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 28; + battler2X = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + battler2Y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 28; } else { - battler1X = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - battler1Y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 28; - battler2X = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - battler2Y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 28; + battler1X = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + battler1Y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 28; + battler2X = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + battler2Y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 28; } yDiff = battler2Y - battler1Y; @@ -807,7 +807,7 @@ void AnimTask_DestinyBondWhiteShadow(u8 taskId) task->data[9] = 16; task->data[10] = gBattleAnimArgs[0]; - baseX = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + baseX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); baseY = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_BOTTOM); if (!IsContest()) { @@ -820,7 +820,7 @@ void AnimTask_DestinyBondWhiteShadow(u8 taskId) spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55); if (spriteId != MAX_SPRITES) { - x = GetBattlerSpriteCoord(battler, 2); + x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_BOTTOM); gSprites[spriteId].data[0] = baseX << 4; gSprites[spriteId].data[1] = baseY << 4; @@ -1175,7 +1175,7 @@ void AnimTask_GrudgeFlames(u8 taskId) task->data[0] = 0; task->data[1] = 16; - task->data[9] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); + task->data[9] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); task->data[10] = GetBattlerYCoordWithElevation(gBattleAnimAttacker); task->data[11] = (GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_WIDTH) / 2) + 8; task->data[7] = 0; diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index 81b3d160f02a..0e581035e815 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -141,11 +141,11 @@ const struct SpriteTemplate gDirtMoundSpriteTemplate = // a boomerang. After hitting the target mon, it comes back to the user. static void AnimBonemerangProjectile(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[0] = 20; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[5] = -40; InitAnimArcTranslation(sprite); sprite->callback = AnimBonemerangProjectile_Step; @@ -160,8 +160,8 @@ static void AnimBonemerangProjectile_Step(struct Sprite *sprite) sprite->y2 = 0; sprite->x2 = 0; sprite->data[0] = 20; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[5] = 40; InitAnimArcTranslation(sprite); sprite->callback = AnimBonemerangProjectile_End; @@ -188,8 +188,8 @@ static void AnimBoneHitProjectile(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -207,8 +207,8 @@ static void AnimDirtScatter(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, 1); - targetXPos = GetBattlerSpriteCoord2(gBattleAnimTarget, 2); - targetYPos = GetBattlerSpriteCoord2(gBattleAnimTarget, 3); + targetXPos = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X_2); + targetYPos = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); xOffset = Random2() & 0x1F; yOffset = Random2() & 0x1F; @@ -234,8 +234,8 @@ static void AnimMudSportDirt(struct Sprite *sprite) sprite->oam.tileNum++; if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[1] > 0 ? 1 : -1; sprite->callback = AnimMudSportDirtRising; } @@ -518,7 +518,7 @@ void AnimDirtPlumeParticle(struct Sprite *sprite) gBattleAnimArgs[2] *= -1; } - sprite->x = GetBattlerSpriteCoord(battler, 2) + xOffset; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + xOffset; sprite->y = GetBattlerYCoordWithElevation(battler) + 30; sprite->data[0] = gBattleAnimArgs[5]; sprite->data[2] = sprite->x + gBattleAnimArgs[2]; @@ -549,7 +549,7 @@ static void AnimDigDirtMound(struct Sprite *sprite) else battler = gBattleAnimTarget; - sprite->x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X) - 16 + (gBattleAnimArgs[1] * 32); sprite->y = GetBattlerYCoordWithElevation(battler) + 32; sprite->oam.tileNum += gBattleAnimArgs[1] * 8; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); diff --git a/src/battle_anim_poison.c b/src/battle_anim_poison.c index 6dedbd9555a0..664df389d68e 100644 --- a/src/battle_anim_poison.c +++ b/src/battle_anim_poison.c @@ -193,8 +193,8 @@ static void AnimSludgeProjectile(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, 1); sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[5] = -30; InitAnimArcTranslation(sprite); diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index c98f311bd175..a7faa7658602 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -650,8 +650,8 @@ static void AnimQuestionMark(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) x = -x; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + x; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + y; if (sprite->y < 16) sprite->y = 16; diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index 905f51a79ef0..f1dc4b734bee 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -564,10 +564,10 @@ void AnimTask_Rollout(u8 taskId) task = &gTasks[taskId]; - var0 = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - var1 = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 24; - var2 = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - var3 = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 24; + var0 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + var1 = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 24; + var2 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + var3 = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 24; if (BATTLE_PARTNER(gBattleAnimAttacker) == gBattleAnimTarget) var3 = var1; @@ -787,8 +787,8 @@ static void AnimRockBlastRock(struct Sprite *sprite) static void AnimRockScatter(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); sprite->x += gBattleAnimArgs[0]; sprite->y += gBattleAnimArgs[1]; diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 50918a24edbf..3d6733d47120 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -517,23 +517,23 @@ static void AnimWaterBubbleProjectile(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->animPaused = TRUE; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->animPaused = TRUE; } if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[6]; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); spriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy); sprite->data[5] = spriteId; @@ -595,9 +595,9 @@ static void AnimAuroraBeamRings(struct Sprite *sprite) unkArg = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + unkArg; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + unkArg; sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; InitAnimLinearTranslation(sprite); sprite->callback = AnimAuroraBeamRings_Step; sprite->affineAnimPaused = TRUE; @@ -650,9 +650,9 @@ static void AnimToTargetInSinWave(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = 30; sprite->data[1] = sprite->x; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); InitAnimLinearTranslation(sprite); sprite->data[5] = 0xD200 / sprite->data[0]; sprite->data[7] = gBattleAnimArgs[3]; @@ -705,8 +705,8 @@ static void AnimHydroCannonCharge(struct Sprite *sprite) { u8 priority; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); sprite->y2 = -10; priority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); if (!IsContest()) @@ -752,14 +752,14 @@ static void AnimHydroCannonBeam(struct Sprite *sprite) else animType = FALSE; if ((u8)gBattleAnimArgs[5] == 0) - coordType = 3; + coordType = BATTLER_COORD_Y_PIC_OFFSET; else - coordType = 1; + coordType = BATTLER_COORD_Y; InitSpritePosToAnimAttacker(sprite, animType); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, coordType) + gBattleAnimArgs[3]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -1167,8 +1167,8 @@ static u8 GetWaterSpoutPowerForAnim(void) static void CreateWaterSpoutLaunchDroplets(struct Task *task, u8 taskId) { s16 i; - s16 attackerCoordX = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - s16 attackerCoordY = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + s16 attackerCoordX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + s16 attackerCoordY = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); s16 trigIndex = 172; u8 subpriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker) - 1; s16 increment = 4 - task->data[1]; @@ -1341,8 +1341,8 @@ void AnimTask_WaterSport(u8 taskId) { struct Task *task = &gTasks[taskId]; - task->data[3] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - task->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + task->data[3] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + task->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); task->data[7] = (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) ? 1 : -1; if (IsContest()) task->data[7] *= -1; @@ -1514,8 +1514,8 @@ static void AnimWaterPulseRingBubble(struct Sprite *sprite) void AnimWaterPulseRing(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); - sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[3] = gBattleAnimArgs[2]; sprite->data[4] = gBattleAnimArgs[3]; sprite->callback = AnimWaterPulseRing_Step; From e3b6337c3ad4b57b293344b1ef71e85055ed3b44 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 8 Nov 2021 13:18:58 -0500 Subject: [PATCH 396/762] Finish battle_anim_mons doc --- include/battle_anim.h | 10 +- include/battle_main.h | 2 +- src/battle_anim_bug.c | 36 ++--- src/battle_anim_dragon.c | 24 ++-- src/battle_anim_effects_1.c | 70 ++++----- src/battle_anim_effects_2.c | 22 ++- src/battle_anim_effects_3.c | 2 +- src/battle_anim_electric.c | 2 +- src/battle_anim_fight.c | 4 +- src/battle_anim_fire.c | 2 +- src/battle_anim_ice.c | 2 +- src/battle_anim_mons.c | 167 ++++++++++++++-------- src/battle_anim_normal.c | 2 +- src/battle_anim_rock.c | 4 +- src/battle_controller_link_opponent.c | 4 +- src/battle_controller_link_partner.c | 4 +- src/battle_controller_opponent.c | 4 +- src/battle_controller_player.c | 2 +- src/battle_controller_player_partner.c | 4 +- src/battle_controller_recorded_opponent.c | 4 +- src/battle_controller_recorded_player.c | 4 +- src/battle_controller_wally.c | 2 +- src/battle_gfx_sfx_util.c | 10 +- src/battle_main.c | 8 +- src/pokeball.c | 4 +- src/reshow_battle_screen.c | 4 +- 26 files changed, 231 insertions(+), 172 deletions(-) diff --git a/include/battle_anim.h b/include/battle_anim.h index 01931125fcbe..8745b0d26434 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -74,7 +74,7 @@ void HandleIntroSlide(u8 terrainId); int GetAnimBgAttribute(u8 bgId, u8 attributeId); // battle_anim_mons.c -void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite); +void TranslateSpriteInEllipse(struct Sprite *sprite); void AnimTranslateLinearAndFlicker(struct Sprite *sprite); void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite); void AnimWeatherBallUp(struct Sprite *sprite); @@ -103,7 +103,7 @@ u8 GetBattlerYCoordWithElevation(u8 battlerId); void WaitAnimForDuration(struct Sprite *sprite); void AnimTravelDiagonally(struct Sprite *sprite); void InitAnimLinearTranslation(struct Sprite *sprite); -void AnimTranslateLinear_WaitEnd(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); @@ -128,7 +128,7 @@ u8 CreateInvisibleSpriteCopy(int, u8, int); void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void*, bool32); void AnimLoadCompressedBgGfx(u32, const u32*, u32); void UpdateAnimBg3ScreenSize(bool8); -void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *); +void TranslateSpriteInGrowingCircle(struct Sprite *); void sub_80A653C(struct Sprite *); void SetBattlerSpriteYOffsetFromYScale(u8 spriteId); void PrepareEruptAnimTaskData(struct Task *task, u8 a2, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7); @@ -142,12 +142,12 @@ void TranslateSpriteLinearById(struct Sprite *sprite); void TranslateSpriteLinear(struct Sprite *sprite); void AnimSpriteOnMonPos(struct Sprite *sprite); void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite); -void TranslateSpriteInCircleOverDuration(struct Sprite *sprite); +void TranslateSpriteInCircle(struct Sprite *sprite); void SetGrayscaleOrOriginalPalette(u16 palNum, bool8 restoreOriginal); void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union AffineAnimCmd *affineAnimCmds); bool8 RunAffineAnimFromTaskData(struct Task *task); void AnimThrowProjectile(struct Sprite *sprite); -void sub_80A6BFC(struct BattleAnimBgData *unk, u8 unused); +void GetBgDataForTransform(struct BattleAnimBgData *dest, u8 battlerId); u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 a3, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm); void ResetSpriteRotScale_PreserveAffine(struct Sprite *sprite); void TradeMenuBouncePartySprites(struct Sprite *sprite); diff --git a/include/battle_main.h b/include/battle_main.h index f3e961b7bf00..b7691b4fd14e 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -65,7 +65,7 @@ void DoBounceEffect(u8 battlerId, u8 b, s8 c, s8 d); void EndBounceEffect(u8 battlerId, bool8 b); void SpriteCB_PlayerMonFromBall(struct Sprite *sprite); void SpriteCB_TrainerThrowObject(struct Sprite *sprite); -void sub_8039E9C(struct Sprite *sprite); +void AnimSetCenterToCornerVecX(struct Sprite *sprite); void BeginBattleIntroDummy(void); void BeginBattleIntro(void); void SwitchInClearSetData(void); diff --git a/src/battle_anim_bug.c b/src/battle_anim_bug.c index 105cc611eabf..14b98fcb215f 100644 --- a/src/battle_anim_bug.c +++ b/src/battle_anim_bug.c @@ -212,12 +212,12 @@ static void AnimMegahornHorn(struct Sprite *sprite) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; } - sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -236,12 +236,12 @@ static void AnimLeechLifeNeedle(struct Sprite *sprite) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; } - sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -266,8 +266,8 @@ static void AnimTranslateWebThread(struct Sprite *sprite) if (!gBattleAnimArgs[4]) { - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } else { @@ -394,8 +394,8 @@ static void AnimTranslateStinger(struct Sprite *sprite) InitSpritePosToAnimAttacker(sprite, 1); - lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; - lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; + lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; rot = ArcTan2Neg(lVarX - sprite->x, lVarY - sprite->y); rot += 0xC000; TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rot); @@ -423,8 +423,8 @@ static void AnimMissileArc(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[5]; InitAnimArcTranslation(sprite); @@ -473,13 +473,13 @@ static void AnimTailGlowOrb(struct Sprite *sprite) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + 18; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 18; } StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); diff --git a/src/battle_anim_dragon.c b/src/battle_anim_dragon.c index 1bc0f569b991..029a5c30ddec 100644 --- a/src/battle_anim_dragon.c +++ b/src/battle_anim_dragon.c @@ -189,8 +189,8 @@ const struct SpriteTemplate gOverheatFlameSpriteTemplate = static void AnimOutrageFlame(struct Sprite *sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { sprite->x -= gBattleAnimArgs[0]; @@ -215,8 +215,8 @@ static void AnimOutrageFlame(struct Sprite *sprite) static void StartDragonFireTranslation(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { sprite->x -= gBattleAnimArgs[1]; @@ -242,13 +242,13 @@ static void AnimDragonRageFirePlume(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]); @@ -270,8 +270,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite) { u16 r5; u16 r0; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[4] = 0; sprite->data[5] = 1; sprite->data[6] = gBattleAnimArgs[0]; @@ -417,8 +417,8 @@ static void AnimOverheatFlame(struct Sprite *sprite) { int i; int yAmplitude = (gBattleAnimArgs[2] * 3) / 5; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[4]; sprite->data[1] = Cos(gBattleAnimArgs[1], gBattleAnimArgs[2]); sprite->data[2] = Sin(gBattleAnimArgs[1], yAmplitude); sprite->x += sprite->data[1] * gBattleAnimArgs[0]; diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 9d1842176e16..d460b9236b68 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -4155,13 +4155,13 @@ static void AnimSparkingStars(struct Sprite* sprite) { if (!gBattleAnimArgs[6]) { - sprite->x = GetBattlerSpriteCoord(battler, 0); - sprite->y = GetBattlerSpriteCoord(battler, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + gBattleAnimArgs[1]; } else { - sprite->x = GetBattlerSpriteCoord(battler, 2); - sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); @@ -4324,8 +4324,8 @@ static void AnimLockOnTarget_Step3(struct Sprite* sprite) sprite->y2 = 0; sprite->x2 = 0; sprite->data[0] = 6; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + a; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + b; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + a; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + b; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step5); } @@ -4709,13 +4709,13 @@ static void AnimSlashSlice(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4726,16 +4726,16 @@ static void AnimSlashSlice(struct Sprite* sprite) static void AnimFalseSwipeSlice(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); StoreSpriteCallbackInData6(sprite, AnimFalseSwipeSlice_Step1); sprite->callback = RunStoredCallbackWhenAnimEnds; } static void AnimFalseSwipePositionedSlice(struct Sprite* sprite) { - sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0 + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0 + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); StartSpriteAnim(sprite, 1); sprite->data[0] = 0; sprite->data[1] = 0; @@ -4776,13 +4776,13 @@ static void AnimEndureEnergy(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[2]; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4805,8 +4805,8 @@ static void AnimEndureEnergy_Step(struct Sprite* sprite) static void AnimSharpenSphere(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) - 12; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) - 12; sprite->data[0] = 0; sprite->data[1] = 2; sprite->data[2] = 0; @@ -4844,8 +4844,8 @@ static void AnimConversion(struct Sprite* sprite) { if (sprite->data[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; if (IsContest()) sprite->y += 10; @@ -4898,8 +4898,8 @@ static void AnimConversion2_Step(struct Sprite* sprite) { sprite->animPaused = 0; sprite->data[0] = 30; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -4970,7 +4970,7 @@ static void AnimMoon_Step(struct Sprite* sprite) static void AnimMoonlightSparkle(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; sprite->y = gBattleAnimArgs[1]; sprite->data[0] = 0; sprite->data[1] = 0; @@ -5111,8 +5111,8 @@ static void AnimHornHit(struct Sprite* sprite) sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[2]; - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->data[6] = sprite->x; sprite->data[7] = sprite->y; if (IsContest()) @@ -5299,8 +5299,8 @@ static void AnimWavyMusicNotes(struct Sprite* sprite) } else { - a = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + a = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } sprite->data[4] = sprite->x << 4; @@ -5363,8 +5363,8 @@ static void AnimFlyingMusicNotes(struct Sprite* sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; StartSpriteAnim(sprite, gBattleAnimArgs[0]); sprite->data[2] = 0; sprite->data[3] = 0; @@ -5407,8 +5407,8 @@ static void AnimBellyDrumHand(struct Sprite* sprite) a = -16; } - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + a; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + a; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + 8; sprite->data[0] = 8; sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -5462,7 +5462,7 @@ void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) else sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; - sprite->y = GetBattlerSpriteCoord(battler, 3) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; } static void AnimThoughtBubble(struct Sprite* sprite) @@ -5525,7 +5525,7 @@ static void AnimFollowMeFinger(struct Sprite* sprite) else battler = gBattleAnimTarget; - sprite->x = GetBattlerSpriteCoord(battler, 0); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP); if (sprite->y <= 9) sprite->y = 10; diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index fcdb56a10341..c2a89ed4bac9 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1262,20 +1262,30 @@ const struct SpriteTemplate gGuardRingSpriteTemplate = .callback = AnimGuardRing, }; +#define sAmplitudeX data[1] +#define sCircleSpeed data[2] +#define sMoveSteps data[3] +#define sAmplitudeY data[4] + static void AnimCirclingFinger(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); sprite->y += gBattleAnimArgs[1]; - sprite->data[1] = gBattleAnimArgs[2]; - sprite->data[2] = gBattleAnimArgs[4]; - sprite->data[3] = gBattleAnimArgs[5]; - sprite->data[4] = gBattleAnimArgs[3]; + sprite->sAmplitudeX = gBattleAnimArgs[2]; + sprite->sCircleSpeed = gBattleAnimArgs[4]; + sprite->sMoveSteps = gBattleAnimArgs[5]; + sprite->sAmplitudeY = gBattleAnimArgs[3]; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = TranslateSpriteInEllipseOverDuration; + sprite->callback = TranslateSpriteInEllipse; sprite->callback(sprite); } +#undef sAmplitudeX +#undef sCircleSpeed +#undef sMoveSteps +#undef sAmplitudeY + static void AnimBouncingMusicNote(struct Sprite *sprite) { u8 battler; @@ -1883,7 +1893,7 @@ static void AnimRazorWindTornado(struct Sprite *sprite) sprite->data[2] = gBattleAnimArgs[5]; sprite->data[3] = gBattleAnimArgs[6]; sprite->data[4] = gBattleAnimArgs[3]; - sprite->callback = TranslateSpriteInCircleOverDuration; + sprite->callback = TranslateSpriteInCircle; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); sprite->callback(sprite); } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index cd8051998105..f73393de4ec7 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2283,7 +2283,7 @@ void AnimTask_TransformMon(u8 taskId) break; case 2: HandleSpeciesGfxDataChange(gBattleAnimAttacker, gBattleAnimTarget, gTasks[taskId].data[10]); - sub_80A6BFC(&animBg, gBattleAnimAttacker); + GetBgDataForTransform(&animBg, gBattleAnimAttacker); if (IsContest()) position = B_POSITION_PLAYER_LEFT; diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index bd527d244cfe..635aa550e79c 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -509,7 +509,7 @@ static void AnimUnusedCirclingShock(struct Sprite *sprite) sprite->data[2] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = TranslateSpriteInCircleOverDuration; + sprite->callback = TranslateSpriteInCircle; } static void AnimSparkElectricity(struct Sprite *sprite) diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index 76cefcd2cc7b..ca4668e0239b 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -827,7 +827,7 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite) InitAnimLinearTranslation(sprite); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = AnimTranslateLinear_WaitEnd; + sprite->callback = AnimTranslateLinear_WithFollowup; } } @@ -923,7 +923,7 @@ static void AnimSuperpowerFireball(struct Sprite *sprite) InitAnimLinearTranslation(sprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - sprite->callback = AnimTranslateLinear_WaitEnd; + sprite->callback = AnimTranslateLinear_WithFollowup; } static void AnimArmThrustHit_Step(struct Sprite *sprite) diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index e06ebca7b271..8ecb60713251 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -472,7 +472,7 @@ static void AnimFireSpiralInward(struct Sprite *sprite) StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - sprite->callback = TranslateSpriteInGrowingCircleOverDuration; + sprite->callback = TranslateSpriteInGrowingCircle; sprite->callback(sprite); } diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 1d65d9570cec..0b89c1f5931e 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -592,7 +592,7 @@ static void AnimIcePunchSwirlingParticle(struct Sprite *sprite) sprite->data[3] = 30; sprite->data[4] = -512; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - sprite->callback = TranslateSpriteInGrowingCircleOverDuration; + sprite->callback = TranslateSpriteInGrowingCircle; sprite->callback(sprite); } diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 75e1dadf7ec1..ae0db0b874fc 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -20,7 +20,7 @@ extern const struct OamData gOamData_AffineNormal_ObjNormal_64x64; -static void sub_80A6FB4(struct Sprite *sprite); +static void AnimTranslateLinear_WithFollowup_SetCornerVecX(struct Sprite *sprite); static void AnimFastTranslateLinearWaitEnd(struct Sprite *sprite); static void AnimThrowProjectile_Step(struct Sprite *sprite); static void AnimBattlerTrace(struct Sprite *sprite); @@ -383,7 +383,7 @@ u8 GetAnimBattlerSpriteId(u8 animBattler) } else { - return 0xff; + return SPRITE_NONE; } } else if (animBattler == ANIM_TARGET) @@ -395,13 +395,13 @@ u8 GetAnimBattlerSpriteId(u8 animBattler) } else { - return 0xff; + return SPRITE_NONE; } } else if (animBattler == ANIM_ATK_PARTNER) { if (!IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) - return 0xff; + return SPRITE_NONE; else return gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]; } @@ -410,7 +410,7 @@ u8 GetAnimBattlerSpriteId(u8 animBattler) if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget))) return gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimTarget)]; else - return 0xff; + return SPRITE_NONE; } } @@ -426,18 +426,38 @@ void SetCallbackToStoredInData6(struct Sprite *sprite) sprite->callback = (void (*)(struct Sprite *))callback; } -void TranslateSpriteInCircleOverDuration(struct Sprite *sprite) +// Sprite data for TranslateSpriteInCircle/Ellipse and related +#define sCirclePos data[0] +#define sAmplitude data[1] +#define sCircleSpeed data[2] +#define sDuration data[3] + +// TranslateSpriteInGrowingCircle +#define sAmplitudeSpeed data[4] +#define sAmplitudeChange data[5] + +// TranslateSpriteInEllipse +#define sAmplitudeX sAmplitude +#define sAmplitudeY data[4] + +// TranslateSpriteInWavePattern +#define sCirclePosX sCirclePos +#define sCircleSpeedX sCircleSpeed +#define sCirclePosY data[4] +#define sCircleSpeedY data[5] + +void TranslateSpriteInCircle(struct Sprite *sprite) { - if (sprite->data[3]) + if (sprite->sDuration) { - sprite->x2 = Sin(sprite->data[0], sprite->data[1]); - sprite->y2 = Cos(sprite->data[0], sprite->data[1]); - sprite->data[0] += sprite->data[2]; - if (sprite->data[0] >= 0x100) - sprite->data[0] -= 0x100; - else if (sprite->data[0] < 0) - sprite->data[0] += 0x100; - sprite->data[3]--; + sprite->x2 = Sin(sprite->sCirclePos, sprite->sAmplitude); + sprite->y2 = Cos(sprite->sCirclePos, sprite->sAmplitude); + sprite->sCirclePos += sprite->sCircleSpeed; + if (sprite->sCirclePos >= 0x100) + sprite->sCirclePos -= 0x100; + else if (sprite->sCirclePos < 0) + sprite->sCirclePos += 0x100; + sprite->sDuration--; } else { @@ -445,19 +465,19 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite) } } -void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite) +void TranslateSpriteInGrowingCircle(struct Sprite *sprite) { - if (sprite->data[3]) + if (sprite->sDuration) { - sprite->x2 = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); - sprite->y2 = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); - sprite->data[0] += sprite->data[2]; - sprite->data[5] += sprite->data[4]; - if (sprite->data[0] >= 0x100) - sprite->data[0] -= 0x100; - else if (sprite->data[0] < 0) - sprite->data[0] += 0x100; - sprite->data[3]--; + sprite->x2 = Sin(sprite->sCirclePos, (sprite->sAmplitudeChange >> 8) + sprite->sAmplitude); + sprite->y2 = Cos(sprite->sCirclePos, (sprite->sAmplitudeChange >> 8) + sprite->sAmplitude); + sprite->sCirclePos += sprite->sCircleSpeed; + sprite->sAmplitudeChange += sprite->sAmplitudeSpeed; + if (sprite->sCirclePos >= 0x100) + sprite->sCirclePos -= 0x100; + else if (sprite->sCirclePos < 0) + sprite->sCirclePos += 0x100; + sprite->sDuration--; } else { @@ -466,23 +486,27 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite) } // Unused -static void sub_80A63C8(struct Sprite *sprite) -{ - if (sprite->data[3]) - { - sprite->x2 = Sin(sprite->data[0], sprite->data[1]); - sprite->y2 = Cos(sprite->data[4], sprite->data[1]); - sprite->data[0] += sprite->data[2]; - sprite->data[4] += sprite->data[5]; - if (sprite->data[0] >= 0x100) - sprite->data[0] -= 0x100; - else if (sprite->data[0] < 0) - sprite->data[0] += 0x100; - if (sprite->data[4] >= 0x100) - sprite->data[4] -= 0x100; - else if (sprite->data[4] < 0) - sprite->data[4] += 0x100; - sprite->data[3]--; +// Exact shape depends on arguments. Can move in a figure-8-like pattern, or circular, etc. +static void TranslateSpriteInWavePattern(struct Sprite *sprite) +{ + if (sprite->sDuration) + { + sprite->x2 = Sin(sprite->sCirclePosX, sprite->sAmplitude); + sprite->y2 = Cos(sprite->sCirclePosY, sprite->sAmplitude); + sprite->sCirclePosX += sprite->sCircleSpeedX; + sprite->sCirclePosY += sprite->sCircleSpeedY; + + if (sprite->sCirclePosX >= 0x100) + sprite->sCirclePosX -= 0x100; + else if (sprite->sCirclePosX < 0) + sprite->sCirclePosX += 0x100; + + if (sprite->sCirclePosY >= 0x100) + sprite->sCirclePosY -= 0x100; + else if (sprite->sCirclePosY < 0) + sprite->sCirclePosY += 0x100; + + sprite->sDuration--; } else { @@ -490,18 +514,18 @@ static void sub_80A63C8(struct Sprite *sprite) } } -void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite) +void TranslateSpriteInEllipse(struct Sprite *sprite) { - if (sprite->data[3]) + if (sprite->sDuration) { - sprite->x2 = Sin(sprite->data[0], sprite->data[1]); - sprite->y2 = Cos(sprite->data[0], sprite->data[4]); - sprite->data[0] += sprite->data[2]; - if (sprite->data[0] >= 0x100) - sprite->data[0] -= 0x100; - else if (sprite->data[0] < 0) - sprite->data[0] += 0x100; - sprite->data[3]--; + sprite->x2 = Sin(sprite->sCirclePos, sprite->sAmplitudeX); + sprite->y2 = Cos(sprite->sCirclePos, sprite->sAmplitudeY); + sprite->sCirclePos += sprite->sCircleSpeed; + if (sprite->sCirclePos >= 0x100) + sprite->sCirclePos -= 0x100; + else if (sprite->sCirclePos < 0) + sprite->sCirclePos += 0x100; + sprite->sDuration--; } else { @@ -509,6 +533,19 @@ void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite) } } +#undef sCirclePos +#undef sAmplitude +#undef sCircleSpeed +#undef sDuration +#undef sAmplitudeSpeed +#undef sAmplitudeChange +#undef sAmplitudeX +#undef sAmplitudeY +#undef sCirclePosX +#undef sCircleSpeedX +#undef sCirclePosY +#undef sCircleSpeedY + // Simply waits until the sprite's data[0] hits zero. // This is used to let sprite anims or affine anims to run for a designated // duration. @@ -521,7 +558,7 @@ void WaitAnimForDuration(struct Sprite *sprite) } // Sprite data for ConvertPosDataToTranslateLinearData -#define sStepsX data[0] +#define sStepsX data[0] #define sStartX data[1] #define sTargetX data[2] #define sStartY data[3] @@ -680,6 +717,12 @@ static void TranslateSpriteToBattleAttackerPos(struct Sprite *sprite) sprite->callback = AnimPosToTranslateLinear; } +#undef sStepsX +#undef sStartX +#undef sTargetX +#undef sStartY +#undef sTargetY + // Unused static void sub_80A67A4(struct Sprite *sprite) { @@ -913,7 +956,7 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) } } -void sub_80A6BFC(struct BattleAnimBgData *out, u8 unused) +void GetBgDataForTransform(struct BattleAnimBgData *out, u8 battlerId) { out->bgTiles = gBattleAnimBgTileBuffer; out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; @@ -1052,17 +1095,17 @@ void StartAnimLinearTranslation(struct Sprite *sprite) sprite->data[1] = sprite->x; sprite->data[3] = sprite->y; InitAnimLinearTranslation(sprite); - sprite->callback = AnimTranslateLinear_WaitEnd; + sprite->callback = AnimTranslateLinear_WithFollowup; sprite->callback(sprite); } // Unused -static void sub_80A6F14(struct Sprite *sprite) +static void StartAnimLinearTranslation_SetCornerVecX(struct Sprite *sprite) { sprite->data[1] = sprite->x; sprite->data[3] = sprite->y; InitAnimLinearTranslation(sprite); - sprite->callback = sub_80A6FB4; + sprite->callback = AnimTranslateLinear_WithFollowup_SetCornerVecX; sprite->callback(sprite); } @@ -1096,16 +1139,16 @@ bool8 AnimTranslateLinear(struct Sprite *sprite) return FALSE; } -void AnimTranslateLinear_WaitEnd(struct Sprite *sprite) +void AnimTranslateLinear_WithFollowup(struct Sprite *sprite) { if (AnimTranslateLinear(sprite)) SetCallbackToStoredInData6(sprite); } // Functionally unused -static void sub_80A6FB4(struct Sprite *sprite) +static void AnimTranslateLinear_WithFollowup_SetCornerVecX(struct Sprite *sprite) { - sub_8039E9C(sprite); + AnimSetCenterToCornerVecX(sprite); if (AnimTranslateLinear(sprite)) SetCallbackToStoredInData6(sprite); } @@ -1122,7 +1165,7 @@ void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite) sprite->data[1] = sprite->x; sprite->data[3] = sprite->y; InitAnimLinearTranslationWithSpeed(sprite); - sprite->callback = AnimTranslateLinear_WaitEnd; + sprite->callback = AnimTranslateLinear_WithFollowup; sprite->callback(sprite); } diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index d79f344edf6c..ebf9a588f663 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -409,7 +409,7 @@ static void AnimCirclingSparkle(struct Sprite *sprite) sprite->data[4] = 112; sprite->data[5] = 0; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = TranslateSpriteInGrowingCircleOverDuration; + sprite->callback = TranslateSpriteInGrowingCircle; sprite->callback(sprite); } diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index f1dc4b734bee..5aa8f28c306a 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -313,7 +313,7 @@ static void AnimFallingRock(struct Sprite *sprite) sprite->data[5] = gBattleAnimArgs[2]; StoreSpriteCallbackInData6(sprite, AnimFallingRock_Step); - sprite->callback = TranslateSpriteInEllipseOverDuration; + sprite->callback = TranslateSpriteInEllipse; sprite->callback(sprite); } @@ -328,7 +328,7 @@ static void AnimFallingRock_Step(struct Sprite *sprite) sprite->data[4] = -24; StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = TranslateSpriteInEllipseOverDuration; + sprite->callback = TranslateSpriteInEllipse; sprite->callback(sprite); } diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 1660f6ec18fc..6def518702dd 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -1127,7 +1127,7 @@ static void LinkOpponentHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); @@ -1161,7 +1161,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) gBattlerSpriteIds[battlerId] = CreateSprite( &gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index a9240b0ac7da..a8cbd7dfdc90 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -1017,7 +1017,7 @@ static void LinkPartnerHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; @@ -1048,7 +1048,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) gBattlerSpriteIds[battlerId] = CreateSprite( &gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index ac330be76acf..9aeb3e81bbe7 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1136,7 +1136,7 @@ static void OpponentHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); @@ -1171,7 +1171,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId)); gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index f4e47b43477a..20ef730bd07d 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2205,7 +2205,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) gBattlerSpriteIds[battlerId] = CreateSprite( &gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 91fea6cde2ac..b2fd4520fe6c 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -1201,7 +1201,7 @@ static void PlayerPartnerHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; @@ -1232,7 +1232,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) gBattlerSpriteIds[battlerId] = CreateSprite( &gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index c6e649508fc1..a8c159563a19 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -1110,7 +1110,7 @@ static void RecordedOpponentHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); @@ -1143,7 +1143,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId)); gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 93d059fe9902..c7015dd0bace 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -1092,7 +1092,7 @@ static void RecordedPlayerHandleLoadMonSprite(void) SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(gActiveBattler, 2), + GetBattlerSpriteCoord(gActiveBattler, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteSubpriority(gActiveBattler)); gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH; @@ -1123,7 +1123,7 @@ static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit) gBattlerSpriteIds[battlerId] = CreateSprite( &gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index d018fe1c011f..376f76ab68de 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -1466,7 +1466,7 @@ static void StartSendOutAnim(u8 battlerId) gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim); SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId)); gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate, - GetBattlerSpriteCoord(battlerId, 2), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2), GetBattlerSpriteDefault_Y(battlerId), GetBattlerSpriteSubpriority(battlerId)); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index f36524f370e9..2a690d129d2a 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1147,13 +1147,19 @@ void LoadAndCreateEnemyShadowSprites(void) LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow); battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); - gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, GetBattlerSpriteCoord(battlerId, 0), GetBattlerSpriteCoord(battlerId, 1) + 29, 0xC8); + gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 29, + 0xC8); gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].data[0] = battlerId; if (IsDoubleBattle()) { battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT); - gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, GetBattlerSpriteCoord(battlerId, 0), GetBattlerSpriteCoord(battlerId, 1) + 29, 0xC8); + gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X), + GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 29, + 0xC8); gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].data[0] = battlerId; } } diff --git a/src/battle_main.c b/src/battle_main.c index ec093ecc7b93..2b849aaf9316 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -307,7 +307,7 @@ static const u16 *const sUnused1Ptr = sUnused1; static const u16 sUnused2[] = {0xfff0, 0, 0x0400, 0, 0, 0, 0x3c00, 0, 0x7ffe, 1, 0, 0}; static const u16 *const sUnused2Ptr = sUnused2; -static const s8 gUnknown_0831ACE0[] ={-32, -16, -16, -32, -32, 0, 0, 0}; +static const s8 sCenterToCornerVecXs[8] ={-32, -16, -16, -32, -32}; // format: attacking type, defending type, damage multiplier // the multiplier is a (decimal) fixed-point number: @@ -2983,7 +2983,7 @@ void SpriteCB_PlayerMonFromBall(struct Sprite *sprite) static void SpriteCB_TrainerThrowObject_Main(struct Sprite *sprite) { - sub_8039E9C(sprite); + AnimSetCenterToCornerVecX(sprite); if (sprite->animEnded) sprite->callback = SpriteCB_Idle; } @@ -2996,10 +2996,10 @@ void SpriteCB_TrainerThrowObject(struct Sprite *sprite) sprite->callback = SpriteCB_TrainerThrowObject_Main; } -void sub_8039E9C(struct Sprite *sprite) +void AnimSetCenterToCornerVecX(struct Sprite *sprite) { if (sprite->animDelayCounter == 0) - sprite->centerToCornerVecX = gUnknown_0831ACE0[sprite->animCmdIndex]; + sprite->centerToCornerVecX = sCenterToCornerVecXs[sprite->animCmdIndex]; } void BeginBattleIntroDummy(void) diff --git a/src/pokeball.c b/src/pokeball.c index 11f03eefed7f..bf485c0f0940 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -894,8 +894,8 @@ static void SpriteCB_BallThrow_CaptureMon(struct Sprite *sprite) static void SpriteCB_PlayerMonSendOut_1(struct Sprite *sprite) { sprite->data[0] = 25; - sprite->data[2] = GetBattlerSpriteCoord(sprite->sBattler, 2); - sprite->data[4] = GetBattlerSpriteCoord(sprite->sBattler, 3) + 24; + sprite->data[2] = GetBattlerSpriteCoord(sprite->sBattler, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(sprite->sBattler, BATTLER_COORD_Y_PIC_OFFSET) + 24; sprite->data[5] = -30; sprite->oam.affineParam = sprite->sBattler; InitAnimArcTranslation(sprite); diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index c8c03ede2936..1b49a374c862 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -222,7 +222,7 @@ static void CreateBattlerSprite(u8 battler) return; SetMultiuseSpriteTemplateToPokemon(GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES), GetBattlerPosition(battler)); - gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, 2), posY, GetBattlerSpriteSubpriority(battler)); + gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2), posY, GetBattlerSpriteSubpriority(battler)); gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler; gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy; gSprites[gBattlerSpriteIds[battler]].data[0] = battler; @@ -258,7 +258,7 @@ static void CreateBattlerSprite(u8 battler) return; SetMultiuseSpriteTemplateToPokemon(GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES), GetBattlerPosition(battler)); - gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, 2), posY, GetBattlerSpriteSubpriority(battler)); + gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2), posY, GetBattlerSpriteSubpriority(battler)); gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler; gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy; gSprites[gBattlerSpriteIds[battler]].data[0] = battler; From 684f599a4420c65635aa5e764ae06c2147968dfe Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 6 Nov 2021 11:41:47 -0400 Subject: [PATCH 397/762] Label remaining battle_interface symbols --- include/constants/battle.h | 3 + include/strings.h | 4 + src/battle_interface.c | 288 +++++++++++++++++++------------------ src/battle_main.c | 6 +- src/strings.c | 8 +- 5 files changed, 163 insertions(+), 146 deletions(-) diff --git a/include/constants/battle.h b/include/constants/battle.h index 2534ade4b3ea..d87a800e2bb0 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -358,4 +358,7 @@ // Flag for BattlePutTextOnWindow. Never set #define B_WIN_COPYTOVRAM (1 << 7) +// Indicator for the party summary bar to display an empty slot. +#define HP_EMPTY_SLOT 0xFFFF + #endif // GUARD_CONSTANTS_BATTLE_H diff --git a/include/strings.h b/include/strings.h index 7317f8aac8e5..845e96a8c705 100644 --- a/include/strings.h +++ b/include/strings.h @@ -611,6 +611,10 @@ extern const u8 gText_PlayersBattleResults[]; extern const u8 gText_WinLoseDraw[]; extern const u8 gText_ColorTransparent[]; extern const u8 gText_Slash[]; +extern const u8 gText_HealthboxNickname[]; +extern const u8 gText_HealthboxGender_None[]; +extern const u8 gText_HealthboxGender_Male[]; +extern const u8 gText_HealthboxGender_Female[]; extern const u8 gText_99TimesPlus[]; extern const u8 gText_1MinutePlus[]; diff --git a/src/battle_interface.c b/src/battle_interface.c index 17497cb2f5bd..c1307da760f4 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -9,7 +9,6 @@ #include "string_util.h" #include "text.h" #include "sound.h" -#include "constants/songs.h" #include "decompress.h" #include "task.h" #include "util.h" @@ -20,10 +19,12 @@ #include "international_string_util.h" #include "safari_zone.h" #include "battle_anim.h" -#include "constants/battle_anim.h" -#include "constants/rgb.h" #include "data.h" #include "pokemon_summary_screen.h" +#include "strings.h" +#include "constants/battle_anim.h" +#include "constants/rgb.h" +#include "constants/songs.h" struct TestingBar { @@ -157,15 +158,6 @@ enum HEALTHBOX_GFX_FRAME_END_BAR, }; -// strings -extern const u8 gText_Slash[]; -extern const u8 gText_HighlightDarkGray[]; -extern const u8 gText_DynColor2[]; -extern const u8 gText_DynColor2Male[]; -extern const u8 gText_DynColor1Female[]; - -// this file's functions - static const u8 *GetHealthboxElementGfxPtr(u8 elementId); static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 bgColor, u32 *windowId); @@ -178,27 +170,26 @@ static void SafariTextIntoHealthboxObject(void *dest, u8 *windowTileData, u32 wi static void HpTextIntoHealthboxObject(void *dest, u8 *windowTileData, u32 windowWidth); static void FillHealthboxObject(void *dest, u32 arg1, u32 arg2); -static void sub_8073E08(u8 taskId); -static void sub_8073F98(u8 taskId); -static void sub_8073E64(u8 taskId); +static void Task_HidePartyStatusSummary_BattleStart_1(u8 taskId); +static void Task_HidePartyStatusSummary_BattleStart_2(u8 taskId); +static void Task_HidePartyStatusSummary_DuringBattle(u8 taskId); static void SpriteCB_HealthBoxOther(struct Sprite *sprite); static void SpriteCB_HealthBar(struct Sprite *sprite); -static void sub_8074158(struct Sprite *sprite); -static void sub_8074090(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBar(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite); +static void SpriteCB_StatusSummaryBar_Enter(struct Sprite *sprite); +static void SpriteCB_StatusSummaryBar_Exit(struct Sprite *sprite); +static void SpriteCB_StatusSummaryBalls_Enter(struct Sprite *sprite); +static void SpriteCB_StatusSummaryBalls_Exit(struct Sprite *sprite); +static void SpriteCB_StatusSummaryBalls_OnSwitchout(struct Sprite *sprite); static u8 GetStatusIconForBattlerId(u8 statusElementId, u8 battlerId); static s32 CalcNewBarValue(s32 maxValue, s32 currValue, s32 receivedValue, s32 *arg3, u8 arg4, u16 arg5); static u8 GetScaledExpFraction(s32 currValue, s32 receivedValue, s32 maxValue, u8 scale); static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar); static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 *currValue, u8 *arg4, u8 scale); -static void sub_8074F88(struct TestingBar *barInfo, s32 *arg1, u16 *arg2); +static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *arg1, u16 *arg2); -// const rom data -static const struct OamData sUnknown_0832C138 = +static const struct OamData sOamData_64x32 = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -220,7 +211,7 @@ static const struct SpriteTemplate sHealthboxPlayerSpriteTemplates[2] = { .tileTag = TAG_HEALTHBOX_PLAYER1_TILE, .paletteTag = TAG_HEALTHBOX_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -229,7 +220,7 @@ static const struct SpriteTemplate sHealthboxPlayerSpriteTemplates[2] = { .tileTag = TAG_HEALTHBOX_PLAYER2_TILE, .paletteTag = TAG_HEALTHBOX_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -242,7 +233,7 @@ static const struct SpriteTemplate sHealthboxOpponentSpriteTemplates[2] = { .tileTag = TAG_HEALTHBOX_OPPONENT1_TILE, .paletteTag = TAG_HEALTHBOX_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -251,7 +242,7 @@ static const struct SpriteTemplate sHealthboxOpponentSpriteTemplates[2] = { .tileTag = TAG_HEALTHBOX_OPPONENT2_TILE, .paletteTag = TAG_HEALTHBOX_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -263,7 +254,7 @@ static const struct SpriteTemplate sHealthboxSafariSpriteTemplate = { .tileTag = TAG_HEALTHBOX_SAFARI_TILE, .paletteTag = TAG_HEALTHBOX_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -327,7 +318,7 @@ static const struct SpriteTemplate sHealthbarSpriteTemplates[MAX_BATTLERS_COUNT] } }; -static const struct Subsprite sUnknown_0832C220[] = +static const struct Subsprite sUnused_Subsprites_0[] = { { .x = DISPLAY_WIDTH, @@ -371,7 +362,7 @@ static const struct Subsprite sUnknown_0832C220[] = } }; -static const struct Subsprite sUnknown_0832C234[] = +static const struct Subsprite sUnused_Subsprites_2[] = { { .x = DISPLAY_WIDTH, @@ -415,7 +406,7 @@ static const struct Subsprite sUnknown_0832C234[] = } }; -static const struct Subsprite sUnknown_0832C248[] = +static const struct Subsprite sUnused_Subsprites_1[] = { { .x = DISPLAY_WIDTH, @@ -435,7 +426,7 @@ static const struct Subsprite sUnknown_0832C248[] = } }; -static const struct Subsprite sUnknown_0832C250[] = +static const struct Subsprite sUnused_Subsprites_3[] = { { .x = DISPLAY_WIDTH, @@ -455,7 +446,7 @@ static const struct Subsprite sUnknown_0832C250[] = } }; -static const struct Subsprite sUnknown_0832C258[] = +static const struct Subsprite sHealthBar_Subsprites_Player[] = { { .x = DISPLAY_WIDTH, @@ -475,7 +466,7 @@ static const struct Subsprite sUnknown_0832C258[] = } }; -static const struct Subsprite sUnknown_0832C260[] = +static const struct Subsprite sHealthBar_Subsprites_Opponent[] = { { .x = DISPLAY_WIDTH, @@ -503,25 +494,24 @@ static const struct Subsprite sUnknown_0832C260[] = } }; -// unused subsprite table -static const struct SubspriteTable sUnknown_0832C26C[] = +static const struct SubspriteTable sUnused_SubspriteTable[] = { - {ARRAY_COUNT(sUnknown_0832C220), sUnknown_0832C220}, - {ARRAY_COUNT(sUnknown_0832C248), sUnknown_0832C248}, - {ARRAY_COUNT(sUnknown_0832C234), sUnknown_0832C234}, - {ARRAY_COUNT(sUnknown_0832C250), sUnknown_0832C250} + {ARRAY_COUNT(sUnused_Subsprites_0), sUnused_Subsprites_0}, + {ARRAY_COUNT(sUnused_Subsprites_1), sUnused_Subsprites_1}, + {ARRAY_COUNT(sUnused_Subsprites_2), sUnused_Subsprites_2}, + {ARRAY_COUNT(sUnused_Subsprites_3), sUnused_Subsprites_3} }; -static const struct SubspriteTable sUnknown_0832C28C[] = +static const struct SubspriteTable sHealthBar_SubspriteTables[] = { - {ARRAY_COUNT(sUnknown_0832C258), sUnknown_0832C258}, - {ARRAY_COUNT(sUnknown_0832C260), sUnknown_0832C260} + [B_SIDE_PLAYER] = {ARRAY_COUNT(sHealthBar_Subsprites_Player), sHealthBar_Subsprites_Player}, + [B_SIDE_OPPONENT] = {ARRAY_COUNT(sHealthBar_Subsprites_Opponent), sHealthBar_Subsprites_Opponent} }; -static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = +static const struct Subsprite sStatusSummaryBar_Subsprites_Enter[] = { { - .x = 160, + .x = 32 * 5, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -529,7 +519,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = .priority = 1 }, { - .x = 192, + .x = 32 * 6, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -537,7 +527,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = .priority = 1 }, { - .x = 224, + .x = 32 * 7, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -554,10 +544,10 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_0[] = } }; -static const struct Subsprite sUnknown_0832C2AC[] = +static const struct Subsprite sStatusSummaryBar_Subsprites_Exit[] = { { - .x = 160, + .x = 32 * 5, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -565,7 +555,7 @@ static const struct Subsprite sUnknown_0832C2AC[] = .priority = 1 }, { - .x = 192, + .x = 32 * 6, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -573,7 +563,7 @@ static const struct Subsprite sUnknown_0832C2AC[] = .priority = 1 }, { - .x = 224, + .x = 32 * 7, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -581,7 +571,7 @@ static const struct Subsprite sUnknown_0832C2AC[] = .priority = 1 }, { - .x = 0, + .x = 32 * 0, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -589,7 +579,7 @@ static const struct Subsprite sUnknown_0832C2AC[] = .priority = 1 }, { - .x = 32, + .x = 32 * 1, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -597,7 +587,7 @@ static const struct Subsprite sUnknown_0832C2AC[] = .priority = 1 }, { - .x = 64, + .x = 32 * 2, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -606,14 +596,14 @@ static const struct Subsprite sUnknown_0832C2AC[] = } }; -static const struct SubspriteTable sStatusSummaryBar_SubspriteTable[] = +static const struct SubspriteTable sStatusSummaryBar_SubspriteTable_Enter[] = { - {ARRAY_COUNT(sStatusSummaryBar_Subsprites_0), sStatusSummaryBar_Subsprites_0} + {ARRAY_COUNT(sStatusSummaryBar_Subsprites_Enter), sStatusSummaryBar_Subsprites_Enter} }; -static const struct SubspriteTable sUnknown_0832C2CC[] = +static const struct SubspriteTable sStatusSummaryBar_SubspriteTable_Exit[] = { - {ARRAY_COUNT(sUnknown_0832C2AC), sUnknown_0832C2AC} + {ARRAY_COUNT(sStatusSummaryBar_Subsprites_Exit), sStatusSummaryBar_Subsprites_Exit} }; // unused unknown image @@ -676,23 +666,23 @@ static const struct OamData sOamData_StatusSummaryBalls = static const struct SpriteTemplate sStatusSummaryBarSpriteTemplates[2] = { - { + { // Player .tileTag = TAG_STATUS_SUMMARY_BAR_TILE, .paletteTag = TAG_STATUS_SUMMARY_BAR_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_StatusSummaryBar + .callback = SpriteCB_StatusSummaryBar_Enter }, - { + { // Opponent .tileTag = TAG_STATUS_SUMMARY_BAR_TILE, .paletteTag = TAG_STATUS_SUMMARY_BAR_PAL, - .oam = &sUnknown_0832C138, + .oam = &sOamData_64x32, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_StatusSummaryBar + .callback = SpriteCB_StatusSummaryBar_Enter } }; @@ -705,7 +695,7 @@ static const struct SpriteTemplate sStatusSummaryBallsSpriteTemplates[2] = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_StatusSummaryBallsOnBattleStart + .callback = SpriteCB_StatusSummaryBalls_Enter }, { .tileTag = TAG_STATUS_SUMMARY_BALLS_TILE, @@ -714,7 +704,7 @@ static const struct SpriteTemplate sStatusSummaryBallsSpriteTemplates[2] = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_StatusSummaryBallsOnBattleStart + .callback = SpriteCB_StatusSummaryBalls_Enter } }; @@ -739,23 +729,28 @@ static const u16 sStatusIconColors[] = [PAL_STATUS_BRN] = RGB(28, 14, 10), }; -static const struct WindowTemplate sHealthboxWindowTemplate = {0, 0, 0, 8, 2, 0, 0}; // width = 8, height = 2 - -// code +static const struct WindowTemplate sHealthboxWindowTemplate = { + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 8, + .height = 2, + .paletteNum = 0, + .baseBlock = 0 +}; static s32 DummiedOutFunction(s16 unused1, s16 unused2, s32 unused3) { return 9; } -void sub_8072308(s16 number, u16 *dest, bool8 unk) + +static void Debug_DrawNumber(s16 number, u16 *dest, bool8 unk) { s8 i, j; u8 buff[4]; for (i = 0; i < 4; i++) - { buff[i] = 0; - } for (i = 3; ; i--) { @@ -767,9 +762,8 @@ void sub_8072308(s16 number, u16 *dest, bool8 unk) else { for (; i > -1; i--) - { buff[i] = 0xFF; - } + if (buff[3] == 0xFF) buff[3] = 0; break; @@ -819,12 +813,12 @@ void sub_8072308(s16 number, u16 *dest, bool8 unk) } } - -void sub_80724A8(s16 arg0, s16 arg1, u16 *arg2) +// Unused +static void Debug_DrawNumberPair(s16 number1, s16 number2, u16 *arg2) { arg2[4] = 0x1E; - sub_8072308(arg1, arg2, 0); - sub_8072308(arg0, arg2 + 5, 1); + Debug_DrawNumber(number2, arg2, 0); + Debug_DrawNumber(number1, arg2 + 5, 1); } // Because the healthbox is too large to fit into one sprite, it is divided into two sprites. @@ -910,7 +904,7 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) healthbarSpriteId = CreateSpriteAtEnd(&sHealthbarSpriteTemplates[gBattlerPositions[battlerId]], 140, 60, 0); healthBarSpritePtr = &gSprites[healthbarSpriteId]; - SetSubspriteTables(healthBarSpritePtr, &sUnknown_0832C28C[GetBattlerSide(battlerId)]); + SetSubspriteTables(healthBarSpritePtr, &sHealthBar_SubspriteTables[GetBattlerSide(battlerId)]); healthBarSpritePtr->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; healthBarSpritePtr->oam.priority = 1; @@ -1299,7 +1293,7 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) barFontGfx = &gMonSpritesGfxPtr->barFontGfx[0x520 + (GetBattlerPosition(gSprites[healthboxSpriteId].hMain_Battler) * 384)]; var = 5; nature = GetNature(mon); - StringCopy(text + 6, gNatureNamePointers[nature]); + StringCopy(&text[6], gNatureNamePointers[nature]); RenderTextHandleBold(barFontGfx, FONT_BOLD, text); for (j = 6, i = 0; i < var; i++, j++) @@ -1328,8 +1322,8 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) } healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId; - ConvertIntToDecimalStringN(text + 6, gBattleStruct->safariCatchFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); - ConvertIntToDecimalStringN(text + 9, gBattleStruct->safariEscapeFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); + ConvertIntToDecimalStringN(&text[6], gBattleStruct->safariCatchFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); + ConvertIntToDecimalStringN(&text[9], gBattleStruct->safariEscapeFactor, STR_CONV_MODE_RIGHT_ALIGN, 2); text[5] = CHAR_SPACE; text[8] = CHAR_SLASH; RenderTextHandleBold(gMonSpritesGfxPtr->barFontGfx, FONT_BOLD, text); @@ -1424,7 +1418,7 @@ void SwapHpBarsWithHpText(void) #define tSummaryBarSpriteId data[1] #define tBallIconSpriteId(n) data[3 + n] #define tIsBattleStart data[10] -#define tData15 data[15] +#define tBlend data[15] u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart) { @@ -1471,7 +1465,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, LoadSpritePalette(&sStatusSummaryBallsSpritePal); summaryBarSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10); - SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable); + SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable_Enter); gSprites[summaryBarSpriteId].x2 = bar_pos2_X; gSprites[summaryBarSpriteId].data[0] = bar_data0; @@ -1490,7 +1484,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, ballIconSpritesIds[i] = CreateSpriteAtEnd(&sStatusSummaryBallsSpriteTemplates[isOpponent], bar_X, bar_Y - 4, 9); if (!isBattleStart) - gSprites[ballIconSpritesIds[i]].callback = SpriteCB_StatusSummaryBallsOnSwitchout; + gSprites[ballIconSpritesIds[i]].callback = SpriteCB_StatusSummaryBalls_OnSwitchout; if (!isOpponent) { @@ -1522,42 +1516,49 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, { for (i = 0; i < PARTY_SIZE; i++) { - if (partyInfo[i].hp == 0xFFFF) // empty slot or an egg + if (partyInfo[i].hp == HP_EMPTY_SLOT) { + // empty slot or an egg gSprites[ballIconSpritesIds[i]].oam.tileNum += 1; gSprites[ballIconSpritesIds[i]].data[7] = 1; } - else if (partyInfo[i].hp == 0) // fainted mon + else if (partyInfo[i].hp == 0) { + // fainted mon gSprites[ballIconSpritesIds[i]].oam.tileNum += 3; } - else if (partyInfo[i].status != 0) // mon with major status + else if (partyInfo[i].status != 0) { + // mon with major status gSprites[ballIconSpritesIds[i]].oam.tileNum += 2; } } } else { - for (i = 0, var = 5, j = 0; j < PARTY_SIZE; j++) + for (i = 0, var = PARTY_SIZE - 1, j = 0; j < PARTY_SIZE; j++) { - if (partyInfo[j].hp == 0xFFFF) // empty slot or an egg + if (partyInfo[j].hp == HP_EMPTY_SLOT) { + // empty slot or an egg gSprites[ballIconSpritesIds[var]].oam.tileNum += 1; gSprites[ballIconSpritesIds[var]].data[7] = 1; var--; continue; } - else if (partyInfo[j].hp == 0) // fainted mon + else if (partyInfo[j].hp == 0) { + // fainted mon gSprites[ballIconSpritesIds[i]].oam.tileNum += 3; } else if (gBattleTypeFlags & BATTLE_TYPE_ARENA && gBattleStruct->arenaLostPlayerMons & gBitTable[j]) { + // fainted arena mon gSprites[ballIconSpritesIds[i]].oam.tileNum += 3; } - else if (partyInfo[j].status != 0) // mon with major status + else if (partyInfo[j].status != 0) { + // mon with primary status gSprites[ballIconSpritesIds[i]].oam.tileNum += 2; } i++; @@ -1568,19 +1569,22 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, { if (gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_TWO_OPPONENTS)) { - for (var = 5, i = 0; i < PARTY_SIZE; i++) + for (var = PARTY_SIZE - 1, i = 0; i < PARTY_SIZE; i++) { - if (partyInfo[i].hp == 0xFFFF) // empty slot or an egg + if (partyInfo[i].hp == HP_EMPTY_SLOT) { + // empty slot or an egg gSprites[ballIconSpritesIds[var]].oam.tileNum += 1; gSprites[ballIconSpritesIds[var]].data[7] = 1; } - else if (partyInfo[i].hp == 0) // fainted mon + else if (partyInfo[i].hp == 0) { + // fainted mon gSprites[ballIconSpritesIds[var]].oam.tileNum += 3; } - else if (partyInfo[i].status != 0) // mon with major status + else if (partyInfo[i].status != 0) { + // mon with primary status gSprites[ballIconSpritesIds[var]].oam.tileNum += 2; } var--; @@ -1590,24 +1594,28 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, { for (var = 0, i = 0, j = 0; j < PARTY_SIZE; j++) { - if (partyInfo[j].hp == 0xFFFF) // empty slot or an egg + if (partyInfo[j].hp == HP_EMPTY_SLOT) { + // empty slot or an egg gSprites[ballIconSpritesIds[i]].oam.tileNum += 1; gSprites[ballIconSpritesIds[i]].data[7] = 1; i++; continue; } - else if (partyInfo[j].hp == 0) // fainted mon + else if (partyInfo[j].hp == 0) { - gSprites[ballIconSpritesIds[5 - var]].oam.tileNum += 3; + // fainted mon + gSprites[ballIconSpritesIds[PARTY_SIZE - 1 - var]].oam.tileNum += 3; } - else if (gBattleTypeFlags & BATTLE_TYPE_ARENA && gBattleStruct->arenaLostOpponentMons & gBitTable[j]) // hmm...? + else if (gBattleTypeFlags & BATTLE_TYPE_ARENA && gBattleStruct->arenaLostOpponentMons & gBitTable[j]) { - gSprites[ballIconSpritesIds[5 - var]].oam.tileNum += 3; + // fainted arena mon + gSprites[ballIconSpritesIds[PARTY_SIZE - 1 - var]].oam.tileNum += 3; } - else if (partyInfo[j].status != 0) // mon with major status + else if (partyInfo[j].status != 0) { - gSprites[ballIconSpritesIds[5 - var]].oam.tileNum += 2; + // mon with primary status + gSprites[ballIconSpritesIds[PARTY_SIZE - 1 - var]].oam.tileNum += 2; } var++; } @@ -1632,6 +1640,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, return taskId; } +// Slide the party summary tray back offscreen void Task_HidePartyStatusSummary(u8 taskId) { u8 ballIconSpriteIds[PARTY_SIZE]; @@ -1650,7 +1659,7 @@ void Task_HidePartyStatusSummary(u8 taskId) SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); - gTasks[taskId].tData15 = 16; + gTasks[taskId].tBlend = 16; for (i = 0; i < PARTY_SIZE; i++) gSprites[ballIconSpriteIds[i]].oam.objMode = ST_OAM_OBJ_BLEND; @@ -1663,51 +1672,51 @@ void Task_HidePartyStatusSummary(u8 taskId) { if (GetBattlerSide(battlerId) != B_SIDE_PLAYER) { - gSprites[ballIconSpriteIds[5 - i]].data[1] = 7 * i; - gSprites[ballIconSpriteIds[5 - i]].data[3] = 0; - gSprites[ballIconSpriteIds[5 - i]].data[4] = 0; - gSprites[ballIconSpriteIds[5 - i]].callback = sub_8074158; + gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].data[1] = 7 * i; + gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].data[3] = 0; + gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].data[4] = 0; + gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].callback = SpriteCB_StatusSummaryBalls_Exit; } else { gSprites[ballIconSpriteIds[i]].data[1] = 7 * i; gSprites[ballIconSpriteIds[i]].data[3] = 0; gSprites[ballIconSpriteIds[i]].data[4] = 0; - gSprites[ballIconSpriteIds[i]].callback = sub_8074158; + gSprites[ballIconSpriteIds[i]].callback = SpriteCB_StatusSummaryBalls_Exit; } } gSprites[summaryBarSpriteId].data[0] /= 2; gSprites[summaryBarSpriteId].data[1] = 0; - gSprites[summaryBarSpriteId].callback = sub_8074090; - SetSubspriteTables(&gSprites[summaryBarSpriteId], sUnknown_0832C2CC); - gTasks[taskId].func = sub_8073E08; + gSprites[summaryBarSpriteId].callback = SpriteCB_StatusSummaryBar_Exit; + SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable_Exit); + gTasks[taskId].func = Task_HidePartyStatusSummary_BattleStart_1; } else { - gTasks[taskId].func = sub_8073F98; + gTasks[taskId].func = Task_HidePartyStatusSummary_DuringBattle; } } -static void sub_8073E08(u8 taskId) +static void Task_HidePartyStatusSummary_BattleStart_1(u8 taskId) { if ((gTasks[taskId].data[11]++ % 2) == 0) { - if (--gTasks[taskId].tData15 < 0) + if (--gTasks[taskId].tBlend < 0) return; - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[15], 16 - gTasks[taskId].data[15])); + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend)); } - if (gTasks[taskId].tData15 == 0) - gTasks[taskId].func = sub_8073E64; + if (gTasks[taskId].tBlend == 0) + gTasks[taskId].func = Task_HidePartyStatusSummary_BattleStart_2; } -static void sub_8073E64(u8 taskId) +static void Task_HidePartyStatusSummary_BattleStart_2(u8 taskId) { u8 ballIconSpriteIds[PARTY_SIZE]; s32 i; u8 battlerId = gTasks[taskId].tBattler; - if (--gTasks[taskId].tData15 == -1) + if (--gTasks[taskId].tBlend == -1) { u8 summaryBarSpriteId = gTasks[taskId].tSummaryBarSpriteId; @@ -1731,7 +1740,7 @@ static void sub_8073E64(u8 taskId) for (i = 1; i < PARTY_SIZE; i++) DestroySprite(&gSprites[ballIconSpriteIds[i]]); } - else if (gTasks[taskId].tData15 == -3) + else if (gTasks[taskId].tBlend == -3) { gBattleSpritesDataPtr->healthBoxesData[battlerId].partyStatusSummaryShown = 0; SetGpuReg(REG_OFFSET_BLDCNT, 0); @@ -1740,17 +1749,17 @@ static void sub_8073E64(u8 taskId) } } -static void sub_8073F98(u8 taskId) +static void Task_HidePartyStatusSummary_DuringBattle(u8 taskId) { u8 ballIconSpriteIds[PARTY_SIZE]; s32 i; u8 battlerId = gTasks[taskId].tBattler; - if (--gTasks[taskId].tData15 >= 0) + if (--gTasks[taskId].tBlend >= 0) { - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[15], 16 - gTasks[taskId].data[15])); + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend)); } - else if (gTasks[taskId].tData15 == -1) + else if (gTasks[taskId].tBlend == -1) { u8 summaryBarSpriteId = gTasks[taskId].tSummaryBarSpriteId; @@ -1763,7 +1772,7 @@ static void sub_8073F98(u8 taskId) for (i = 1; i < PARTY_SIZE; i++) DestroySprite(&gSprites[ballIconSpriteIds[i]]); } - else if (gTasks[taskId].tData15 == -3) + else if (gTasks[taskId].tBlend == -3) { gBattleSpritesDataPtr->healthBoxesData[battlerId].partyStatusSummaryShown = 0; SetGpuReg(REG_OFFSET_BLDCNT, 0); @@ -1776,15 +1785,15 @@ static void sub_8073F98(u8 taskId) #undef tSummaryBarSpriteId #undef tBallIconSpriteId #undef tIsBattleStart -#undef tData15 +#undef tBlend -static void SpriteCB_StatusSummaryBar(struct Sprite *sprite) +static void SpriteCB_StatusSummaryBar_Enter(struct Sprite *sprite) { if (sprite->x2 != 0) sprite->x2 += sprite->data[0]; } -static void sub_8074090(struct Sprite *sprite) +static void SpriteCB_StatusSummaryBar_Exit(struct Sprite *sprite) { sprite->data[1] += 32; if (sprite->data[0] > 0) @@ -1794,7 +1803,7 @@ static void sub_8074090(struct Sprite *sprite) sprite->data[1] &= 0xF; } -static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) +static void SpriteCB_StatusSummaryBalls_Enter(struct Sprite *sprite) { u8 var1; u16 var2; @@ -1839,7 +1848,7 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) } } -static void sub_8074158(struct Sprite *sprite) +static void SpriteCB_StatusSummaryBalls_Exit(struct Sprite *sprite) { u8 var1; u16 var2; @@ -1865,7 +1874,7 @@ static void sub_8074158(struct Sprite *sprite) } } -static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite) +static void SpriteCB_StatusSummaryBalls_OnSwitchout(struct Sprite *sprite) { u8 barSpriteId = sprite->data[0]; @@ -1882,7 +1891,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) u16 species; u8 gender; - StringCopy(gDisplayedStringBattle, gText_HighlightDarkGray); + StringCopy(gDisplayedStringBattle, gText_HealthboxNickname); GetMonData(mon, MON_DATA_NICKNAME, nickname); StringGetEnd10(nickname); ptr = StringAppend(gDisplayedStringBattle, nickname); @@ -1898,15 +1907,15 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) switch (gender) { default: - StringCopy(ptr, gText_DynColor2); + StringCopy(ptr, gText_HealthboxGender_None); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(gDisplayedStringBattle, 0, 3, 2, &windowId); break; case MON_MALE: - StringCopy(ptr, gText_DynColor2Male); + StringCopy(ptr, gText_HealthboxGender_Male); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(gDisplayedStringBattle, 0, 3, 2, &windowId); break; case MON_FEMALE: - StringCopy(ptr, gText_DynColor1Female); + StringCopy(ptr, gText_HealthboxGender_Female); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(gDisplayedStringBattle, 0, 3, 2, &windowId); break; } @@ -2422,8 +2431,9 @@ static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 return filledPixels; } +// Unused // These two functions seem as if they were made for testing the health bar. -static s16 sub_8074F28(struct TestingBar *barInfo, s32 *currValue, u16 *arg2, s32 arg3) +static s16 Debug_TestHealthBar(struct TestingBar *barInfo, s32 *currValue, u16 *arg2, s32 arg3) { s16 ret, var; @@ -2431,7 +2441,7 @@ static s16 sub_8074F28(struct TestingBar *barInfo, s32 *currValue, u16 *arg2, s3 barInfo->oldValue, barInfo->receivedValue, currValue, B_HEALTHBAR_PIXELS / 8, 1); - sub_8074F88(barInfo, currValue, arg2); + Debug_TestHealthBar_Helper(barInfo, currValue, arg2); if (barInfo->maxValue < B_HEALTHBAR_PIXELS) var = *currValue >> 8; @@ -2443,7 +2453,7 @@ static s16 sub_8074F28(struct TestingBar *barInfo, s32 *currValue, u16 *arg2, s3 return ret; } -static void sub_8074F88(struct TestingBar *barInfo, s32 *currValue, u16 *arg2) +static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *currValue, u16 *arg2) { u8 sp8[6]; u16 sp10[6]; diff --git a/src/battle_main.c b/src/battle_main.c index ec093ecc7b93..cca992b436a5 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3492,7 +3492,7 @@ static void BattleIntroDrawPartySummaryScreens(void) if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2) == SPECIES_NONE || GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2) == SPECIES_EGG) { - hpStatus[i].hp = 0xFFFF; + hpStatus[i].hp = HP_EMPTY_SLOT; hpStatus[i].status = 0; } else @@ -3510,7 +3510,7 @@ static void BattleIntroDrawPartySummaryScreens(void) if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_NONE || GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_EGG) { - hpStatus[i].hp = 0xFFFF; + hpStatus[i].hp = HP_EMPTY_SLOT; hpStatus[i].status = 0; } else @@ -3536,7 +3536,7 @@ static void BattleIntroDrawPartySummaryScreens(void) if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_NONE || GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_EGG) { - hpStatus[i].hp = 0xFFFF; + hpStatus[i].hp = HP_EMPTY_SLOT; hpStatus[i].status = 0; } else diff --git a/src/strings.c b/src/strings.c index 3785766ce931..a77e67a8471d 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1242,11 +1242,11 @@ const u8 gText_ContestantsMonWon[] = _("{STR_VAR_1}'s {STR_VAR_2} won!"); const u8 gText_CommunicationStandby[] = _("Communication standby…"); const u8 gText_ColorDarkGray[] = _("{COLOR DARK_GRAY}"); const u8 gText_ColorDynamic6WhiteDynamic5[] = _("{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR6 WHITE DYNAMIC_COLOR5}"); // Unused -const u8 gText_HighlightDarkGray[] = _("{HIGHLIGHT DARK_GRAY}"); +const u8 gText_HealthboxNickname[] = _("{HIGHLIGHT DARK_GRAY}"); const u8 gText_EmptySpace2[] = _(" "); // Unused -const u8 gText_DynColor2Male[] = _("{COLOR DYNAMIC_COLOR2}♂"); -const u8 gText_DynColor1Female[] = _("{COLOR DYNAMIC_COLOR1}♀"); -const u8 gText_DynColor2[] = _("{COLOR DYNAMIC_COLOR2}"); +const u8 gText_HealthboxGender_Male[] = _("{COLOR DYNAMIC_COLOR2}♂"); +const u8 gText_HealthboxGender_Female[] = _("{COLOR DYNAMIC_COLOR1}♀"); +const u8 gText_HealthboxGender_None[] = _("{COLOR DYNAMIC_COLOR2}"); const u8 gText_Upper[] = _("UPPER"); const u8 gText_Lower[] = _("lower"); const u8 gText_Others[] = _("OTHERS"); From ab1074e629da97a7a68cc1babc0f4840858adb1b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 1 Nov 2021 12:01:51 -0400 Subject: [PATCH 398/762] Label unknown palette functions --- include/palette.h | 8 +- src/battle_anim_mons.c | 5 +- src/palette.c | 244 +++++++++++++++++++++-------------------- 3 files changed, 127 insertions(+), 130 deletions(-) diff --git a/include/palette.h b/include/palette.h index be2a0dd4878e..81a1e1caec7c 100644 --- a/include/palette.h +++ b/include/palette.h @@ -58,15 +58,9 @@ void FillPalette(u16, u16, u16); void TransferPlttBuffer(void); u8 UpdatePaletteFade(void); void ResetPaletteFade(void); -void ReadPlttIntoBuffers(void); bool8 BeginNormalPaletteFade(u32, s8, u8, u8, u16); -bool8 unref_sub_8073D3C(u32, u8, u8, u8, u16); -void unref_sub_8073D84(u8, u32 *); -void ResetPaletteStructByUid(u16); -void ResetPaletteStruct(u8); +void PaletteStruct_ResetById(u16); void ResetPaletteFadeControl(void); -void unref_sub_8074168(u16); -void unref_sub_8074194(u16); void InvertPlttBuffer(u32); void TintPlttBuffer(u32, s8, s8, s8); void UnfadePlttBuffer(u32); diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index d0ddfdd771ba..6471c67d5348 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -665,9 +665,10 @@ void sub_80A6760(struct Sprite *sprite) sprite->callback = sub_80A64D0; } -void sub_80A67A4(struct Sprite *sprite) +// Unused +static void EndUnkPaletteAnim(struct Sprite *sprite) { - ResetPaletteStructByUid(sprite->data[5]); + PaletteStruct_ResetById(sprite->data[5]); DestroySpriteAndMatrix(sprite); } diff --git a/src/palette.c b/src/palette.c index e106ce685877..9fec449bc485 100644 --- a/src/palette.c +++ b/src/palette.c @@ -16,36 +16,38 @@ enum // These are structs for some unused palette system. // The full functionality of this system is unknown. +#define NUM_PALETTE_STRUCTS 16 + struct PaletteStructTemplate { - u16 uid; + u16 id; u16 *src; - u16 pst_field_8_0:1; - u16 pst_field_8_1:9; + bool16 pst_field_8_0:1; + u16 unused:9; u16 size:5; - u16 pst_field_9_7:1; - u8 pst_field_A; + u8 time1; u8 srcCount:5; - u8 pst_field_B_5:3; - u8 pst_field_C; + u8 state:3; + u8 time2; }; struct PaletteStruct { - const struct PaletteStructTemplate *base; - u32 ps_field_4_0:1; - u16 ps_field_4_1:1; + const struct PaletteStructTemplate *template; + bool32 active:1; + bool32 flag:1; u32 baseDestOffset:9; - u16 destOffset:10; - u16 srcIndex:7; - u8 ps_field_8; - u8 ps_field_9; + u32 destOffset:10; + u32 srcIndex:7; + u8 countdown1; + u8 countdown2; }; -static void unused_sub_80A1CDC(struct PaletteStruct *, u32 *); -static void unused_sub_80A1E40(struct PaletteStruct *, u32 *); -static void unused_sub_80A1F00(struct PaletteStruct *); -static u8 GetPaletteNumByUid(u16); +static void PaletteStruct_Copy(struct PaletteStruct *, u32 *); +static void PaletteStruct_Blend(struct PaletteStruct *, u32 *); +static void PaletteStruct_TryEnd(struct PaletteStruct *); +static void PaletteStruct_Reset(u8); +static u8 PaletteStruct_GetPalNum(u16); static u8 UpdateNormalPaletteFade(void); static void BeginFastPaletteFadeInternal(u8); static u8 UpdateFastPaletteFade(void); @@ -58,15 +60,15 @@ static void Task_BlendPalettesGradually(u8 taskId); // unaligned word reads are issued in BlendPalette otherwise ALIGNED(4) EWRAM_DATA u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE] = {0}; ALIGNED(4) EWRAM_DATA u16 gPlttBufferFaded[PLTT_BUFFER_SIZE] = {0}; -EWRAM_DATA struct PaletteStruct sPaletteStructs[0x10] = {0}; +EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0}; EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0}; static EWRAM_DATA u32 sFiller = 0; static EWRAM_DATA u32 sPlttBufferTransferPending = 0; EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_DECOMP_BUFFER_SIZE] = {0}; static const struct PaletteStructTemplate gDummyPaletteStructTemplate = { - .uid = 0xFFFF, - .pst_field_B_5 = 1 + .id = 0xFFFF, + .state = 1 }; static const u8 sRoundedDownGrayscaleMap[] = { @@ -82,20 +84,20 @@ static const u8 sRoundedDownGrayscaleMap[] = { void LoadCompressedPalette(const u32 *src, u16 offset, u16 size) { LZDecompressWram(src, gPaletteDecompressionBuffer); - CpuCopy16(gPaletteDecompressionBuffer, gPlttBufferUnfaded + offset, size); - CpuCopy16(gPaletteDecompressionBuffer, gPlttBufferFaded + offset, size); + CpuCopy16(gPaletteDecompressionBuffer, &gPlttBufferUnfaded[offset], size); + CpuCopy16(gPaletteDecompressionBuffer, &gPlttBufferFaded[offset], size); } void LoadPalette(const void *src, u16 offset, u16 size) { - CpuCopy16(src, gPlttBufferUnfaded + offset, size); - CpuCopy16(src, gPlttBufferFaded + offset, size); + CpuCopy16(src, &gPlttBufferUnfaded[offset], size); + CpuCopy16(src, &gPlttBufferFaded[offset], size); } void FillPalette(u16 value, u16 offset, u16 size) { - CpuFill16(value, gPlttBufferUnfaded + offset, size); - CpuFill16(value, gPlttBufferFaded + offset, size); + CpuFill16(value, &gPlttBufferUnfaded[offset], size); + CpuFill16(value, &gPlttBufferFaded[offset], size); } void TransferPlttBuffer(void) @@ -105,7 +107,7 @@ void TransferPlttBuffer(void) void *src = gPlttBufferFaded; void *dest = (void *)PLTT; DmaCopy16(3, src, dest, PLTT_SIZE); - sPlttBufferTransferPending = 0; + sPlttBufferTransferPending = FALSE; if (gPaletteFade.mode == HARDWARE_FADE && gPaletteFade.active) UpdateBlendRegisters(); } @@ -135,13 +137,13 @@ void ResetPaletteFade(void) { u8 i; - for (i = 0; i < 16; i++) - ResetPaletteStruct(i); + for (i = 0; i < NUM_PALETTE_STRUCTS; i++) + PaletteStruct_Reset(i); ResetPaletteFadeControl(); } -void ReadPlttIntoBuffers(void) +static void ReadPlttIntoBuffers(void) { u16 i; u16 *pltt = (u16 *)PLTT; @@ -178,7 +180,7 @@ bool8 BeginNormalPaletteFade(u32 selectedPalettes, s8 delay, u8 startY, u8 targe gPaletteFade.y = startY; gPaletteFade.targetY = targetY; gPaletteFade.blendColor = color; - gPaletteFade.active = 1; + gPaletteFade.active = TRUE; gPaletteFade.mode = NORMAL_FADE; if (startY < targetY) @@ -189,9 +191,9 @@ bool8 BeginNormalPaletteFade(u32 selectedPalettes, s8 delay, u8 startY, u8 targe UpdatePaletteFade(); temp = gPaletteFade.bufferTransferDisabled; - gPaletteFade.bufferTransferDisabled = 0; + gPaletteFade.bufferTransferDisabled = FALSE; CpuCopy32(gPlttBufferFaded, (void *)PLTT, PLTT_SIZE); - sPlttBufferTransferPending = 0; + sPlttBufferTransferPending = FALSE; if (gPaletteFade.mode == HARDWARE_FADE && gPaletteFade.active) UpdateBlendRegisters(); gPaletteFade.bufferTransferDisabled = temp; @@ -199,55 +201,55 @@ bool8 BeginNormalPaletteFade(u32 selectedPalettes, s8 delay, u8 startY, u8 targe } } -bool8 unref_sub_80A1C1C(u32 a1, u8 a2, u8 a3, u8 a4, u16 a5) +// Unused +static bool8 BeginPlttFade(u32 selectedPalettes, u8 delay, u8 startY, u8 targetY, u16 blendColor) { ReadPlttIntoBuffers(); - return BeginNormalPaletteFade(a1, a2, a3, a4, a5); + return BeginNormalPaletteFade(selectedPalettes, delay, startY, targetY, blendColor); } -void unref_sub_80A1C64(u8 a1, u32 *a2) +// Unused +static void PaletteStruct_Run(u8 a1, u32 *unkFlags) { u8 i; - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_PALETTE_STRUCTS; i++) { struct PaletteStruct *palstruct = &sPaletteStructs[i]; - if (palstruct->ps_field_4_0) + if (palstruct->active) { - if (palstruct->base->pst_field_8_0 == a1) + if (palstruct->template->pst_field_8_0 == a1) { - u8 val1 = palstruct->srcIndex; - u8 val2 = palstruct->base->srcCount; - if (val1 == val2) + if (palstruct->srcIndex == palstruct->template->srcCount) { - unused_sub_80A1F00(palstruct); - if (!palstruct->ps_field_4_0) + PaletteStruct_TryEnd(palstruct); + if (!palstruct->active) continue; } - if (palstruct->ps_field_8 == 0) - unused_sub_80A1CDC(palstruct, a2); + if (palstruct->countdown1 == 0) + PaletteStruct_Copy(palstruct, unkFlags); else - palstruct->ps_field_8--; + palstruct->countdown1--; - unused_sub_80A1E40(palstruct, a2); + PaletteStruct_Blend(palstruct, unkFlags); } } } } -static void unused_sub_80A1CDC(struct PaletteStruct *a1, u32 *a2) +static void PaletteStruct_Copy(struct PaletteStruct *a1, u32 *unkFlags) { s32 srcIndex; s32 srcCount; u8 i = 0; - u16 srcOffset = a1->srcIndex * a1->base->size; + u16 srcOffset = a1->srcIndex * a1->template->size; - if (!a1->base->pst_field_8_0) + if (!a1->template->pst_field_8_0) { - while (i < a1->base->size) + while (i < a1->template->size) { - gPlttBufferUnfaded[a1->destOffset] = a1->base->src[srcOffset]; - gPlttBufferFaded[a1->destOffset] = a1->base->src[srcOffset]; + gPlttBufferUnfaded[a1->destOffset] = a1->template->src[srcOffset]; + gPlttBufferFaded[a1->destOffset] = a1->template->src[srcOffset]; i++; a1->destOffset++; srcOffset++; @@ -255,9 +257,9 @@ static void unused_sub_80A1CDC(struct PaletteStruct *a1, u32 *a2) } else { - while (i < a1->base->size) + while (i < a1->template->size) { - gPlttBufferFaded[a1->destOffset] = a1->base->src[srcOffset]; + gPlttBufferFaded[a1->destOffset] = a1->template->src[srcOffset]; i++; a1->destOffset++; srcOffset++; @@ -265,33 +267,33 @@ static void unused_sub_80A1CDC(struct PaletteStruct *a1, u32 *a2) } a1->destOffset = a1->baseDestOffset; - a1->ps_field_8 = a1->base->pst_field_A; + a1->countdown1 = a1->template->time1; a1->srcIndex++; srcIndex = a1->srcIndex; - srcCount = a1->base->srcCount; + srcCount = a1->template->srcCount; if (srcIndex >= srcCount) { - if (a1->ps_field_9) - a1->ps_field_9--; + if (a1->countdown2) + a1->countdown2--; a1->srcIndex = 0; } - *a2 |= 1 << (a1->baseDestOffset >> 4); + *unkFlags |= 1 << (a1->baseDestOffset >> 4); } -static void unused_sub_80A1E40(struct PaletteStruct *a1, u32 *a2) +static void PaletteStruct_Blend(struct PaletteStruct *a1, u32 *unkFlags) { if (gPaletteFade.active && ((1 << (a1->baseDestOffset >> 4)) & gPaletteFade_selectedPalettes)) { - if (!a1->base->pst_field_8_0) + if (!a1->template->pst_field_8_0) { if (gPaletteFade.delayCounter != gPaletteFade_delay) { BlendPalette( a1->baseDestOffset, - a1->base->size, + a1->template->size, gPaletteFade.y, gPaletteFade.blendColor); } @@ -300,64 +302,64 @@ static void unused_sub_80A1E40(struct PaletteStruct *a1, u32 *a2) { if (!gPaletteFade.delayCounter) { - if (a1->ps_field_8 != a1->base->pst_field_A) + if (a1->countdown1 != a1->template->time1) { - u32 srcOffset = a1->srcIndex * a1->base->size; + u32 srcOffset = a1->srcIndex * a1->template->size; u8 i; - for (i = 0; i < a1->base->size; i++) - gPlttBufferFaded[a1->baseDestOffset + i] = a1->base->src[srcOffset + i]; + for (i = 0; i < a1->template->size; i++) + gPlttBufferFaded[a1->baseDestOffset + i] = a1->template->src[srcOffset + i]; } } } } } -static void unused_sub_80A1F00(struct PaletteStruct *a1) +static void PaletteStruct_TryEnd(struct PaletteStruct *pal) { - if (!a1->ps_field_9) + if (pal->countdown2 == 0) { - s32 val = a1->base->pst_field_B_5; + s32 state = pal->template->state; - if (!val) + if (state == 0) { - a1->srcIndex = 0; - a1->ps_field_8 = a1->base->pst_field_A; - a1->ps_field_9 = a1->base->pst_field_C; - a1->destOffset = a1->baseDestOffset; + pal->srcIndex = 0; + pal->countdown1 = pal->template->time1; + pal->countdown2 = pal->template->time2; + pal->destOffset = pal->baseDestOffset; } else { - if (val < 0) + if (state < 0) return; - if (val > 2) + if (state > 2) return; - ResetPaletteStructByUid(a1->base->uid); + PaletteStruct_ResetById(pal->template->id); } } else { - a1->ps_field_9--; + pal->countdown2--; } } -void ResetPaletteStructByUid(u16 a1) +void PaletteStruct_ResetById(u16 id) { - u8 paletteNum = GetPaletteNumByUid(a1); - if (paletteNum != 16) - ResetPaletteStruct(paletteNum); + u8 paletteNum = PaletteStruct_GetPalNum(id); + if (paletteNum != NUM_PALETTE_STRUCTS) + PaletteStruct_Reset(paletteNum); } -void ResetPaletteStruct(u8 paletteNum) +static void PaletteStruct_Reset(u8 paletteNum) { - sPaletteStructs[paletteNum].base = &gDummyPaletteStructTemplate; - sPaletteStructs[paletteNum].ps_field_4_0 = 0; + sPaletteStructs[paletteNum].template = &gDummyPaletteStructTemplate; + sPaletteStructs[paletteNum].active = FALSE; sPaletteStructs[paletteNum].baseDestOffset = 0; sPaletteStructs[paletteNum].destOffset = 0; sPaletteStructs[paletteNum].srcIndex = 0; - sPaletteStructs[paletteNum].ps_field_4_1 = 0; - sPaletteStructs[paletteNum].ps_field_8 = 0; - sPaletteStructs[paletteNum].ps_field_9 = 0; + sPaletteStructs[paletteNum].flag = 0; + sPaletteStructs[paletteNum].countdown1 = 0; + sPaletteStructs[paletteNum].countdown2 = 0; } void ResetPaletteFadeControl(void) @@ -368,41 +370,41 @@ void ResetPaletteFadeControl(void) gPaletteFade.y = 0; gPaletteFade.targetY = 0; gPaletteFade.blendColor = 0; - gPaletteFade.active = 0; + gPaletteFade.active = FALSE; gPaletteFade.multipurpose2 = 0; // assign same value twice gPaletteFade.yDec = 0; - gPaletteFade.bufferTransferDisabled = 0; - gPaletteFade.shouldResetBlendRegisters = 0; - gPaletteFade.hardwareFadeFinishing = 0; - gPaletteFade.softwareFadeFinishing = 0; + gPaletteFade.bufferTransferDisabled = FALSE; + gPaletteFade.shouldResetBlendRegisters = FALSE; + gPaletteFade.hardwareFadeFinishing = FALSE; + gPaletteFade.softwareFadeFinishing = FALSE; gPaletteFade.softwareFadeFinishingCounter = 0; gPaletteFade.objPaletteToggle = 0; gPaletteFade.deltaY = 2; } -void unref_sub_80A2048(u16 uid) +static void PaletteStruct_SetUnusedFlag(u16 id) { - u8 paletteNum = GetPaletteNumByUid(uid); - if (paletteNum != 16) - sPaletteStructs[paletteNum].ps_field_4_1 = 1; + u8 paletteNum = PaletteStruct_GetPalNum(id); + if (paletteNum != NUM_PALETTE_STRUCTS) + sPaletteStructs[paletteNum].flag = TRUE; } -void unref_sub_80A2074(u16 uid) +static void PaletteStruct_ClearUnusedFlag(u16 id) { - u8 paletteNum = GetPaletteNumByUid(uid); - if (paletteNum != 16) - sPaletteStructs[paletteNum].ps_field_4_1 = 0; + u8 paletteNum = PaletteStruct_GetPalNum(id); + if (paletteNum != NUM_PALETTE_STRUCTS) + sPaletteStructs[paletteNum].flag = FALSE; } -static u8 GetPaletteNumByUid(u16 uid) +static u8 PaletteStruct_GetPalNum(u16 id) { u8 i; - for (i = 0; i < 16; i++) - if (sPaletteStructs[i].base->uid == uid) + for (i = 0; i < NUM_PALETTE_STRUCTS; i++) + if (sPaletteStructs[i].template->id == id) return i; - return 16; + return NUM_PALETTE_STRUCTS; } static u8 UpdateNormalPaletteFade(void) @@ -460,7 +462,7 @@ static u8 UpdateNormalPaletteFade(void) if (gPaletteFade.y == gPaletteFade.targetY) { gPaletteFade_selectedPalettes = 0; - gPaletteFade.softwareFadeFinishing = 1; + gPaletteFade.softwareFadeFinishing = TRUE; } else { @@ -557,7 +559,7 @@ static void BeginFastPaletteFadeInternal(u8 submode) { gPaletteFade.y = 31; gPaletteFade_submode = submode & 0x3F; - gPaletteFade.active = 1; + gPaletteFade.active = TRUE; gPaletteFade.mode = FAST_FADE; if (submode == FAST_FADE_IN_FROM_BLACK) @@ -719,7 +721,7 @@ static u8 UpdateFastPaletteFade(void) } gPaletteFade.mode = NORMAL_FADE; - gPaletteFade.softwareFadeFinishing = 1; + gPaletteFade.softwareFadeFinishing = TRUE; } // gPaletteFade.active cannot change since the last time it was checked. So this @@ -734,10 +736,10 @@ void BeginHardwarePaletteFade(u8 blendCnt, u8 delay, u8 y, u8 targetY, u8 should gPaletteFade_delay = delay; gPaletteFade.y = y; gPaletteFade.targetY = targetY; - gPaletteFade.active = 1; + gPaletteFade.active = TRUE; gPaletteFade.mode = HARDWARE_FADE; gPaletteFade.shouldResetBlendRegisters = shouldResetBlendRegisters & 1; - gPaletteFade.hardwareFadeFinishing = 0; + gPaletteFade.hardwareFadeFinishing = FALSE; if (y < targetY) gPaletteFade.yDec = 0; @@ -784,7 +786,7 @@ static u8 UpdateHardwarePaletteFade(void) gPaletteFade_blendCnt = 0; gPaletteFade.y = 0; } - gPaletteFade.shouldResetBlendRegisters = 0; + gPaletteFade.shouldResetBlendRegisters = FALSE; } // gPaletteFade.active cannot change since the last time it was checked. So this @@ -798,11 +800,11 @@ static void UpdateBlendRegisters(void) SetGpuReg(REG_OFFSET_BLDY, gPaletteFade.y); if (gPaletteFade.hardwareFadeFinishing) { - gPaletteFade.hardwareFadeFinishing = 0; + gPaletteFade.hardwareFadeFinishing = FALSE; gPaletteFade.mode = 0; gPaletteFade_blendCnt = 0; gPaletteFade.y = 0; - gPaletteFade.active = 0; + gPaletteFade.active = FALSE; } } @@ -812,8 +814,8 @@ static bool8 IsSoftwarePaletteFadeFinishing(void) { if (gPaletteFade.softwareFadeFinishingCounter == 4) { - gPaletteFade.active = 0; - gPaletteFade.softwareFadeFinishing = 0; + gPaletteFade.active = FALSE; + gPaletteFade.softwareFadeFinishing = FALSE; gPaletteFade.softwareFadeFinishingCounter = 0; } else @@ -950,7 +952,7 @@ void TintPalette_CustomTone(u16 *palette, u16 count, u16 rTone, u16 gTone, u16 b #define tId data[8] // Blend the selected palettes in a series of steps toward or away from the color. -// Only used by the Groudon/Kyogre fight scene to flash the screen for lightning +// Only used by the Groudon/Kyogre fight scene to flash the screen for lightning. // One call is used to fade the bg from white, while another fades the duo from black void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTarget, u16 color, u8 priority, u8 id) { @@ -987,8 +989,8 @@ static bool32 IsBlendPalettesGraduallyTaskActive(u8 id) for (i = 0; i < NUM_TASKS; i++) if ((gTasks[i].isActive == TRUE) - && (gTasks[i].func == Task_BlendPalettesGradually) - && (gTasks[i].tId == id)) + && (gTasks[i].func == Task_BlendPalettesGradually) + && (gTasks[i].tId == id)) return TRUE; return FALSE; From adf773f1ed272f31ae34e2613d20ec796b651bf8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 28 Oct 2021 22:54:41 -0400 Subject: [PATCH 399/762] Document remainder of save.c --- common_syms/save.txt | 6 +- include/load_save.h | 4 +- include/save.h | 129 ++++----- src/berry_blender.c | 4 +- src/berry_crush.c | 4 +- src/dodrio_berry_picking.c | 4 +- src/ereader_helpers.c | 4 +- src/hall_of_fame.c | 12 +- src/intro.c | 2 +- src/load_save.c | 4 +- src/pokemon_jump.c | 4 +- src/record_mixing.c | 10 +- src/recorded_battle.c | 16 +- src/reload_save.c | 2 +- src/save.c | 544 +++++++++++++++++++++---------------- src/save_failed_screen.c | 6 +- src/start_menu.c | 18 +- src/trade.c | 19 +- 18 files changed, 428 insertions(+), 364 deletions(-) diff --git a/common_syms/save.txt b/common_syms/save.txt index 190a658406fa..131031d5063b 100644 --- a/common_syms/save.txt +++ b/common_syms/save.txt @@ -3,11 +3,11 @@ gLastSaveCounter gLastKnownGoodSector gDamagedSaveSectors gSaveCounter -gFastSaveSection -gUnknown_03006208 +gReadWriteSector +gIncrementalSectorId gSaveUnusedVar gSaveFileStatus gGameContinueCallback -gRamSaveSectionLocations +gRamSaveSectorLocations gSaveUnusedVar2 gSaveAttemptStatus diff --git a/include/load_save.h b/include/load_save.h index 2f4a9ace6b1b..14a979b45303 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -24,8 +24,8 @@ void SavePlayerParty(void); void LoadPlayerParty(void); void SaveObjectEvents(void); void LoadObjectEvents(void); -void SaveSerializedGame(void); -void LoadSerializedGame(void); +void CopyPartyAndObjectsToSave(void); +void CopyPartyAndObjectsFromSave(void); void LoadPlayerBag(void); void SavePlayerBag(void); void ApplyNewEncryptionKeyToHword(u16 *hWord, u32 newKey); diff --git a/include/save.h b/include/save.h index 406e2e492e8b..be7961136ecb 100644 --- a/include/save.h +++ b/include/save.h @@ -1,43 +1,43 @@ #ifndef GUARD_SAVE_H #define GUARD_SAVE_H -struct SaveSectionLocation -{ - void *data; - u16 size; -}; - -struct SaveSection -{ - u8 data[0xFF4]; - u16 id; - u16 checksum; - u32 security; - u32 counter; -}; // size is 0x1000 - -// headless save section? -struct UnkSaveSection -{ - u8 data[0xFF4]; - u32 security; -}; // size is 0xFF8 - -struct SaveSectionOffsets -{ - u16 toAdd; - u16 size; -}; - -// Each 4 KiB flash sector contains 3968 bytes of actual data followed by a 128 byte footer +// Each 4 KiB flash sector contains 3968 bytes of actual data followed by a 128 byte footer. +// Only 12 bytes of the footer are used. #define SECTOR_DATA_SIZE 3968 #define SECTOR_FOOTER_SIZE 128 #define SECTOR_SIZE (SECTOR_DATA_SIZE + SECTOR_FOOTER_SIZE) #define NUM_SAVE_SLOTS 2 -#define UNKNOWN_CHECK_VALUE 0x8012025 -#define SPECIAL_SECTION_SENTINEL 0xB39D +// If the sector's security field is not this value then the sector is either invalid or empty. +#define SECTOR_SECURITY_NUM 0x8012025 + +#define SPECIAL_SECTOR_SENTINEL 0xB39D + +#define SECTOR_ID_SAVEBLOCK2 0 +#define SECTOR_ID_SAVEBLOCK1_START 1 +#define SECTOR_ID_SAVEBLOCK1_END 4 +#define SECTOR_ID_PKMN_STORAGE_START 5 +#define SECTOR_ID_PKMN_STORAGE_END 13 +#define NUM_SECTORS_PER_SLOT 14 +// Save Slot 1: 0-13; Save Slot 2: 14-27 +#define SECTOR_ID_HOF_1 28 +#define SECTOR_ID_HOF_2 29 +#define SECTOR_ID_TRAINER_HILL 30 +#define SECTOR_ID_RECORDED_BATTLE 31 +#define SECTORS_COUNT 32 + +#define NUM_HOF_SECTORS 2 + +#define SAVE_STATUS_EMPTY 0 +#define SAVE_STATUS_OK 1 +#define SAVE_STATUS_CORRUPT 2 +#define SAVE_STATUS_NO_FLASH 4 +#define SAVE_STATUS_ERROR 0xFF + +// Special sector id value for certain save functions to +// indicate that no specific sector should be used. +#define FULL_SAVE_SLOT 0xFFFF // SetDamagedSectorBits states enum @@ -51,7 +51,7 @@ enum enum { SAVE_NORMAL, - SAVE_LINK, + SAVE_LINK, // Link / Battle Frontier //EREADER_SAVE, // deprecated in Emerald SAVE_LINK2, // unknown 2nd link save SAVE_HALL_OF_FAME, @@ -59,54 +59,55 @@ enum SAVE_HALL_OF_FAME_ERASE_BEFORE // unused }; -#define SECTOR_ID_SAVEBLOCK2 0 -#define SECTOR_ID_SAVEBLOCK1_START 1 -#define SECTOR_ID_SAVEBLOCK1_END 4 -#define SECTOR_ID_PKMN_STORAGE_START 5 -#define SECTOR_ID_PKMN_STORAGE_END 13 -#define NUM_SECTORS_PER_SLOT 14 -// Save Slot 1: 0-13; Save Slot 2: 14-27 -#define SECTOR_ID_HOF_1 28 -#define SECTOR_ID_HOF_2 29 -#define SECTOR_ID_TRAINER_HILL 30 -#define SECTOR_ID_RECORDED_BATTLE 31 -#define SECTORS_COUNT 32 +// A save sector location holds a pointer to the data for a particular sector +// and the size of that data. Size cannot be greater than SECTOR_DATA_SIZE. +struct SaveSectorLocation +{ + void *data; + u16 size; +}; -#define SAVE_STATUS_EMPTY 0 -#define SAVE_STATUS_OK 1 -#define SAVE_STATUS_CORRUPT 2 -#define SAVE_STATUS_NO_FLASH 4 -#define SAVE_STATUS_ERROR 0xFF +struct SaveSector +{ + u8 data[SECTOR_DATA_SIZE]; + u8 unused[SECTOR_FOOTER_SIZE - 12]; // Unused portion of the footer + u16 id; + u16 checksum; + u32 security; + u32 counter; +}; // size is SECTOR_SIZE (0x1000) + +#define SECTOR_SECURITY_OFFSET offsetof(struct SaveSector, security) +#define SECTOR_COUNTER_OFFSET offsetof(struct SaveSector, counter) extern u16 gLastWrittenSector; extern u32 gLastSaveCounter; extern u16 gLastKnownGoodSector; extern u32 gDamagedSaveSectors; extern u32 gSaveCounter; -extern struct SaveSection *gFastSaveSection; -extern u16 gUnknown_03006208; +extern struct SaveSector *gFastSaveSector; +extern u16 gIncrementalSectorId; extern u16 gSaveFileStatus; extern void (*gGameContinueCallback)(void); -extern struct SaveSectionLocation gRamSaveSectionLocations[]; -extern u16 gUnknown_03006294; +extern struct SaveSectorLocation gRamSaveSectorLocations[]; -extern struct SaveSection gSaveDataBuffer; +extern struct SaveSector gSaveDataBuffer; void ClearSaveData(void); void Save_ResetSaveCounters(void); u8 HandleSavingData(u8 saveType); u8 TrySavingData(u8 saveType); -bool8 sub_8153380(void); -bool8 sub_81533AC(void); -bool8 sub_81533E0(void); -bool8 sub_8153408(void); -bool8 FullSaveGame(void); -bool8 CheckSaveFile(void); -u8 Save_LoadGameData(u8 saveType); +bool8 LinkFullSave_Init(void); +bool8 LinkFullSave_WriteSector(void); +bool8 LinkFullSave_ReplaceLastSector(void); +bool8 LinkFullSave_SetLastSectorSecurity(void); +bool8 WriteSaveBlock2(void); +bool8 WriteSaveBlock1Sector(void); +u8 LoadGameSave(u8 saveType); u16 GetSaveBlocksPointersBaseOffset(void); -u32 TryReadSpecialSaveSection(u8 sector, u8* dst); -u32 TryWriteSpecialSaveSection(u8 sector, u8* src); -void Task_LinkSave(u8 taskId); +u32 TryReadSpecialSaveSector(u8 sector, u8* dst); +u32 TryWriteSpecialSaveSector(u8 sector, u8* src); +void Task_LinkFullSave(u8 taskId); // save_failed_screen.c void DoSaveFailedScreen(u8 saveType); diff --git a/src/berry_blender.c b/src/berry_blender.c index 65008dae0769..3ef2c42398d3 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -2785,7 +2785,7 @@ static bool8 LinkPlayAgainHandleSaving(void) } break; case 2: - FullSaveGame(); + WriteSaveBlock2(); sBerryBlender->linkPlayAgainState++; sBerryBlender->framesToWait = 0; break; @@ -2799,7 +2799,7 @@ static bool8 LinkPlayAgainHandleSaving(void) case 4: if (IsLinkTaskFinished()) { - if (CheckSaveFile()) + if (WriteSaveBlock1Sector()) { sBerryBlender->linkPlayAgainState = 5; } diff --git a/src/berry_crush.c b/src/berry_crush.c index 8ac6bb3123c6..ca70e05e0e0b 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -3244,10 +3244,10 @@ static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) DrawDialogueFrame(0, 0); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); CopyWindowToVram(0, 3); - CreateTask(Task_LinkSave, 0); + CreateTask(Task_LinkFullSave, 0); break; case 3: - if (FuncIsActiveTask(Task_LinkSave)) + if (FuncIsActiveTask(Task_LinkFullSave)) return 0; break; case 4: diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 838e8ed9450a..8e226312a48c 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -5035,12 +5035,12 @@ static void Msg_SavingDontTurnOff(void) case 2: if (!IsDma3ManagerBusyWithBgCopy()) { - CreateTask(Task_LinkSave, 0); + CreateTask(Task_LinkFullSave, 0); sGfx->state++; } break; case 3: - if (!FuncIsActiveTask(Task_LinkSave)) + if (!FuncIsActiveTask(Task_LinkFullSave)) sGfx->state++; break; default: diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index 9a93707d85cb..0de87602ee1b 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -481,7 +481,7 @@ static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSe } hillTag->checksum = CalcByteArraySum((u8 *)hillTag->floors, NUM_TRAINER_HILL_FLOORS * sizeof(struct TrHillFloor)); - if (TryWriteSpecialSaveSection(SECTOR_ID_TRAINER_HILL, (u8 *)hillTag) != SAVE_STATUS_OK) + if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_HILL, (u8 *)hillTag) != SAVE_STATUS_OK) return FALSE; return TRUE; @@ -497,7 +497,7 @@ bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet * hillSet) static bool32 TryReadTrainerHill_Internal(struct EReaderTrainerHillSet * dest, u8 * buffer) { - if (TryReadSpecialSaveSection(SECTOR_ID_TRAINER_HILL, buffer) != SAVE_STATUS_OK) + if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_HILL, buffer) != SAVE_STATUS_OK) return FALSE; memcpy(dest, buffer, sizeof(struct EReaderTrainerHillSet)); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 8d69b03bc99e..467cd1588d12 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -487,12 +487,12 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) if (!gHasHallOfFameRecords) { - memset(gDecompressionBuffer, 0, 0x2000); + memset(gDecompressionBuffer, 0, SECTOR_SIZE * NUM_HOF_SECTORS); } else { - if (Save_LoadGameData(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK) - memset(gDecompressionBuffer, 0, 0x2000); + if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK) + memset(gDecompressionBuffer, 0, SECTOR_SIZE * NUM_HOF_SECTORS); } for (i = 0; i < HALL_OF_FAME_MAX_TEAMS; i++, lastSavedTeam++) @@ -853,7 +853,7 @@ void CB2_DoHallOfFamePC(void) gTasks[taskId].tMonSpriteId(i) = SPRITE_NONE; } - sHofMonPtr = AllocZeroed(0x2000); + sHofMonPtr = AllocZeroed(SECTOR_SIZE * NUM_HOF_SECTORS); SetMainCallback2(CB2_HallOfFame); } break; @@ -863,7 +863,7 @@ void CB2_DoHallOfFamePC(void) static void Task_HofPC_CopySaveData(u8 taskId) { sub_81980F0(0, 0x1E, 0, 0xC, 0x226); - if (Save_LoadGameData(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK) + if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK) { gTasks[taskId].func = Task_HofPC_PrintDataIsCorrupted; } @@ -872,7 +872,7 @@ static void Task_HofPC_CopySaveData(u8 taskId) u16 i; struct HallofFameTeam* savedTeams; - CpuCopy16(gDecompressionBuffer, sHofMonPtr, 0x2000); + CpuCopy16(gDecompressionBuffer, sHofMonPtr, SECTOR_SIZE * NUM_HOF_SECTORS); savedTeams = sHofMonPtr; for (i = 0; i < HALL_OF_FAME_MAX_TEAMS; i++, savedTeams++) { diff --git a/src/intro.c b/src/intro.c index 5cf99c97e609..0f044c642f6c 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1145,7 +1145,7 @@ void CB2_InitCopyrightScreenAfterBootup(void) SetSaveBlocksPointers(GetSaveBlocksPointersBaseOffset()); ResetMenuAndMonGlobals(); Save_ResetSaveCounters(); - Save_LoadGameData(SAVE_NORMAL); + LoadGameSave(SAVE_NORMAL); if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_CORRUPT) Sav2_ClearSetDefault(); SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound); diff --git a/src/load_save.c b/src/load_save.c index 1ba5a1600af7..4e788859c4e4 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -198,13 +198,13 @@ void LoadObjectEvents(void) gObjectEvents[i] = gSaveBlock1Ptr->objectEvents[i]; } -void SaveSerializedGame(void) +void CopyPartyAndObjectsToSave(void) { SavePlayerParty(); SaveObjectEvents(); } -void LoadSerializedGame(void) +void CopyPartyAndObjectsFromSave(void) { LoadPlayerParty(); LoadObjectEvents(); diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index fb1505c6c227..ad3f62c568a1 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -1282,12 +1282,12 @@ static bool32 SavePokeJump(void) case 2: if (AreLinkQueuesEmpty()) { - CreateTask(Task_LinkSave, 6); + CreateTask(Task_LinkFullSave, 6); sPokemonJump->mainState++; } break; case 3: - if (!FuncIsActiveTask(Task_LinkSave)) + if (!FuncIsActiveTask(Task_LinkFullSave)) { ClearMessageWindow(); sPokemonJump->mainState++; diff --git a/src/record_mixing.c b/src/record_mixing.c index 2197d8542110..6613b1311c7b 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -1002,11 +1002,11 @@ static void Task_DoRecordMixing(u8 taskId) case 2: // Mixing Ruby/Sapphire records. SetContinueGameWarpStatusToDynamicWarp(); - FullSaveGame(); + WriteSaveBlock2(); task->tState++; break; case 3: - if (CheckSaveFile()) + if (WriteSaveBlock1Sector()) { ClearContinueGameWarpStatus2(); task->tState = 4; @@ -1030,12 +1030,12 @@ static void Task_DoRecordMixing(u8 taskId) case 6: if (!Rfu_SetLinkRecovery(FALSE)) { - CreateTask(Task_LinkSave, 5); + CreateTask(Task_LinkFullSave, 5); task->tState++; } break; - case 7: // wait for Task_LinkSave to finish. - if (!FuncIsActiveTask(Task_LinkSave)) + case 7: // wait for Task_LinkFullSave to finish. + if (!FuncIsActiveTask(Task_LinkFullSave)) { if (gWirelessCommType) { diff --git a/src/recorded_battle.c b/src/recorded_battle.c index e6d5b165b8f1..fd2b3a06b3a4 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -306,14 +306,14 @@ static bool32 IsRecordedBattleSaveValid(struct RecordedBattleSave *save) return TRUE; } -static bool32 RecordedBattleToSave(struct RecordedBattleSave *battleSave, struct RecordedBattleSave *saveSection) +static bool32 RecordedBattleToSave(struct RecordedBattleSave *battleSave, struct RecordedBattleSave *saveSector) { - memset(saveSection, 0, SECTOR_SIZE); - memcpy(saveSection, battleSave, sizeof(*battleSave)); + memset(saveSector, 0, SECTOR_SIZE); + memcpy(saveSector, battleSave, sizeof(*battleSave)); - saveSection->checksum = CalcByteArraySum((void*)(saveSection), sizeof(*saveSection) - 4); + saveSector->checksum = CalcByteArraySum((void*)(saveSector), sizeof(*saveSector) - 4); - if (TryWriteSpecialSaveSection(SECTOR_ID_RECORDED_BATTLE, (void*)(saveSection)) != SAVE_STATUS_OK) + if (TryWriteSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void*)(saveSector)) != SAVE_STATUS_OK) return FALSE; else return TRUE; @@ -477,9 +477,9 @@ bool32 MoveRecordedBattleToSaveData(void) return ret; } -static bool32 TryCopyRecordedBattleSaveData(struct RecordedBattleSave *dst, struct SaveSection *saveBuffer) +static bool32 TryCopyRecordedBattleSaveData(struct RecordedBattleSave *dst, struct SaveSector *saveBuffer) { - if (TryReadSpecialSaveSection(SECTOR_ID_RECORDED_BATTLE, (void*)(saveBuffer)) != SAVE_STATUS_OK) + if (TryReadSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void*)(saveBuffer)) != SAVE_STATUS_OK) return FALSE; memcpy(dst, saveBuffer, sizeof(struct RecordedBattleSave)); @@ -492,7 +492,7 @@ static bool32 TryCopyRecordedBattleSaveData(struct RecordedBattleSave *dst, stru static bool32 CopyRecordedBattleFromSave(struct RecordedBattleSave *dst) { - struct SaveSection *savBuffer = AllocZeroed(sizeof(struct SaveSection)); + struct SaveSector *savBuffer = AllocZeroed(SECTOR_SIZE); bool32 ret = TryCopyRecordedBattleSaveData(dst, savBuffer); Free(savBuffer); diff --git a/src/reload_save.c b/src/reload_save.c index cdbb2f227dd3..5425d1c7c46d 100644 --- a/src/reload_save.c +++ b/src/reload_save.c @@ -21,7 +21,7 @@ void ReloadSave(void) SetSaveBlocksPointers(GetSaveBlocksPointersBaseOffset()); ResetMenuAndMonGlobals(); Save_ResetSaveCounters(); - Save_LoadGameData(SAVE_NORMAL); + LoadGameSave(SAVE_NORMAL); if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_CORRUPT) Sav2_ClearSetDefault(); SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound); diff --git a/src/save.c b/src/save.c index 3c8f4360dc79..cd25977e1cd4 100644 --- a/src/save.c +++ b/src/save.c @@ -13,13 +13,13 @@ #include "link.h" #include "constants/game_stat.h" -static u16 CalculateChecksum(void *data, u16 size); -static bool8 DoReadFlashWholeSection(u8 sector, struct SaveSection *section); -static u8 GetSaveValidStatus(const struct SaveSectionLocation *location); -static u8 sub_8152E10(u16 a1, const struct SaveSectionLocation *location); -static u8 ClearSaveData_2(u16 a1, const struct SaveSectionLocation *location); -static u8 TryWriteSector(u8 sector, u8 *data); -static u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location); +static u16 CalculateChecksum(void *, u16); +static bool8 ReadFlashSector(u8, struct SaveSector *); +static u8 GetSaveValidStatus(const struct SaveSectorLocation *); +static u8 CopySaveSlotData(u16, struct SaveSectorLocation *); +static u8 TryWriteSector(u8, u8 *); +static u8 HandleWriteSector(u16, const struct SaveSectorLocation *); +static u8 HandleReplaceSector(u16, const struct SaveSectorLocation *); // Divide save blocks into individual chunks to be written to flash sectors @@ -38,11 +38,10 @@ static u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location); * so that the same data is not always being written to the same sector. This * might be done to reduce wear on the flash memory, but I'm not sure, since all * 14 sectors get written anyway. + * + * See SECTOR_ID_* constants in save.h */ -// (u8 *)structure was removed from the first statement of the macro in Emerald. -// This is because malloc is used to allocate addresses so storing the raw -// addresses should not be done in the offsets information. #define SAVEBLOCK_CHUNK(structure, chunkNum) \ { \ chunkNum * SECTOR_DATA_SIZE, \ @@ -50,16 +49,20 @@ static u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location); min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) : 0 \ } -static const struct SaveSectionOffsets sSaveSectionOffsets[] = +struct +{ + u16 offset; + u16 size; +} static const sSaveSlotLayout[NUM_SECTORS_PER_SLOT] = { - SAVEBLOCK_CHUNK(gSaveblock2, 0), + SAVEBLOCK_CHUNK(gSaveblock2, 0), // SECTOR_ID_SAVEBLOCK2 - SAVEBLOCK_CHUNK(gSaveblock1, 0), + SAVEBLOCK_CHUNK(gSaveblock1, 0), // SECTOR_ID_SAVEBLOCK1_START SAVEBLOCK_CHUNK(gSaveblock1, 1), SAVEBLOCK_CHUNK(gSaveblock1, 2), - SAVEBLOCK_CHUNK(gSaveblock1, 3), + SAVEBLOCK_CHUNK(gSaveblock1, 3), // SECTOR_ID_SAVEBLOCK1_END - SAVEBLOCK_CHUNK(gPokemonStorage, 0), + SAVEBLOCK_CHUNK(gPokemonStorage, 0), // SECTOR_ID_PKMN_STORAGE_START SAVEBLOCK_CHUNK(gPokemonStorage, 1), SAVEBLOCK_CHUNK(gPokemonStorage, 2), SAVEBLOCK_CHUNK(gPokemonStorage, 3), @@ -67,25 +70,24 @@ static const struct SaveSectionOffsets sSaveSectionOffsets[] = SAVEBLOCK_CHUNK(gPokemonStorage, 5), SAVEBLOCK_CHUNK(gPokemonStorage, 6), SAVEBLOCK_CHUNK(gPokemonStorage, 7), - SAVEBLOCK_CHUNK(gPokemonStorage, 8), + SAVEBLOCK_CHUNK(gPokemonStorage, 8), // SECTOR_ID_PKMN_STORAGE_END }; -// iwram common u16 gLastWrittenSector; u32 gLastSaveCounter; u16 gLastKnownGoodSector; u32 gDamagedSaveSectors; u32 gSaveCounter; -struct SaveSection *gFastSaveSection; -u16 gUnknown_03006208; +struct SaveSector *gReadWriteSector; // Pointer to a buffer for reading/writing a sector +u16 gIncrementalSectorId; u16 gSaveUnusedVar; u16 gSaveFileStatus; void (*gGameContinueCallback)(void); -struct SaveSectionLocation gRamSaveSectionLocations[NUM_SECTORS_PER_SLOT]; +struct SaveSectorLocation gRamSaveSectorLocations[NUM_SECTORS_PER_SLOT]; u16 gSaveUnusedVar2; u16 gSaveAttemptStatus; -EWRAM_DATA struct SaveSection gSaveDataBuffer = {0}; +EWRAM_DATA struct SaveSector gSaveDataBuffer = {0}; // Buffer used for reading/writing sectors EWRAM_DATA static u8 sUnusedVar = 0; void ClearSaveData(void) @@ -107,20 +109,20 @@ void Save_ResetSaveCounters(void) gDamagedSaveSectors = 0; } -static bool32 SetDamagedSectorBits(u8 op, u8 bit) +static bool32 SetDamagedSectorBits(u8 op, u8 sectorId) { bool32 retVal = FALSE; switch (op) { case ENABLE: - gDamagedSaveSectors |= (1 << bit); + gDamagedSaveSectors |= (1 << sectorId); break; case DISABLE: - gDamagedSaveSectors &= ~(1 << bit); + gDamagedSaveSectors &= ~(1 << sectorId); break; case CHECK: // unused - if (gDamagedSaveSectors & (1 << bit)) + if (gDamagedSaveSectors & (1 << sectorId)) retVal = TRUE; break; } @@ -128,31 +130,35 @@ static bool32 SetDamagedSectorBits(u8 op, u8 bit) return retVal; } -static u8 SaveWriteToFlash(u16 sectorId, const struct SaveSectionLocation *location) +static u8 WriteSaveSectorOrSlot(u16 sectorId, const struct SaveSectorLocation *locations) { u32 status; u16 i; - gFastSaveSection = &gSaveDataBuffer; + gReadWriteSector = &gSaveDataBuffer; - if (sectorId != 0xFFFF) // for link + if (sectorId != FULL_SAVE_SLOT) { - status = HandleWriteSector(sectorId, location); + // A sector was specified, just write that sector. + // This is never reached, FULL_SAVE_SLOT is always used instead. + status = HandleWriteSector(sectorId, locations); } else { + // No sector was specified, write full save slot. gLastKnownGoodSector = gLastWrittenSector; // backup the current written sector before attempting to write. gLastSaveCounter = gSaveCounter; gLastWrittenSector++; - gLastWrittenSector = gLastWrittenSector % NUM_SECTORS_PER_SLOT; // array count save sector locations + gLastWrittenSector = gLastWrittenSector % NUM_SECTORS_PER_SLOT; gSaveCounter++; status = SAVE_STATUS_OK; for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) - HandleWriteSector(i, location); + HandleWriteSector(i, locations); - if (gDamagedSaveSectors != 0) // skip the damaged sector. + if (gDamagedSaveSectors) { + // At least one sector save failed status = SAVE_STATUS_ERROR; gLastWrittenSector = gLastKnownGoodSector; gSaveCounter = gLastSaveCounter; @@ -162,98 +168,107 @@ static u8 SaveWriteToFlash(u16 sectorId, const struct SaveSectionLocation *locat return status; } -static u8 HandleWriteSector(u16 sectorId, const struct SaveSectionLocation *location) +static u8 HandleWriteSector(u16 sectorId, const struct SaveSectorLocation *locations) { u16 i; u16 sector; u8 *data; u16 size; + // Adjust sector id for current save slot sector = sectorId + gLastWrittenSector; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - data = location[sectorId].data; - size = location[sectorId].size; + // Get current save data + data = locations[sectorId].data; + size = locations[sectorId].size; - // clear save section. - for (i = 0; i < sizeof(struct SaveSection); i++) - ((char *)gFastSaveSection)[i] = 0; + // Clear temp save sector + for (i = 0; i < SECTOR_SIZE; i++) + ((u8 *)gReadWriteSector)[i] = 0; - gFastSaveSection->id = sectorId; - gFastSaveSection->security = UNKNOWN_CHECK_VALUE; - gFastSaveSection->counter = gSaveCounter; + // Set footer data + gReadWriteSector->id = sectorId; + gReadWriteSector->security = SECTOR_SECURITY_NUM; + gReadWriteSector->counter = gSaveCounter; + // Copy current data to temp buffer for writing for (i = 0; i < size; i++) - gFastSaveSection->data[i] = data[i]; + gReadWriteSector->data[i] = data[i]; + + gReadWriteSector->checksum = CalculateChecksum(data, size); - gFastSaveSection->checksum = CalculateChecksum(data, size); - return TryWriteSector(sector, gFastSaveSection->data); + return TryWriteSector(sector, gReadWriteSector->data); } -static u8 HandleWriteSectorNBytes(u8 sector, u8 *data, u16 size) +static u8 HandleWriteSectorNBytes(u8 sectorId, u8 *data, u16 size) { u16 i; - struct SaveSection *section = &gSaveDataBuffer; + struct SaveSector *sector = &gSaveDataBuffer; - for (i = 0; i < sizeof(struct SaveSection); i++) - ((char *)section)[i] = 0; + // Clear temp save sector + for (i = 0; i < SECTOR_SIZE; i++) + ((u8 *)sector)[i] = 0; - section->security = UNKNOWN_CHECK_VALUE; + sector->security = SECTOR_SECURITY_NUM; + // Copy data to temp buffer for writing for (i = 0; i < size; i++) - section->data[i] = data[i]; + sector->data[i] = data[i]; - section->id = CalculateChecksum(data, size); // though this appears to be incorrect, it might be some sector checksum instead of a whole save checksum and only appears to be relevent to HOF data, if used. - return TryWriteSector(sector, section->data); + sector->id = CalculateChecksum(data, size); // though this appears to be incorrect, it might be some sector checksum instead of a whole save checksum and only appears to be relevent to HOF data, if used. + return TryWriteSector(sectorId, sector->data); } static u8 TryWriteSector(u8 sector, u8 *data) { - if (ProgramFlashSectorAndVerify(sector, data) != 0) // is damaged? + if (ProgramFlashSectorAndVerify(sector, data)) // is damaged? { - SetDamagedSectorBits(ENABLE, sector); // set damaged sector bits. + // Failed + SetDamagedSectorBits(ENABLE, sector); return SAVE_STATUS_ERROR; } else { - SetDamagedSectorBits(DISABLE, sector); // unset damaged sector bits. it's safe now. + // Succeeded + SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } } -static u32 RestoreSaveBackupVarsAndIncrement(const struct SaveSectionLocation *location) // location is unused +static u32 RestoreSaveBackupVarsAndIncrement(const struct SaveSectorLocation *locations) { - gFastSaveSection = &gSaveDataBuffer; + gReadWriteSector = &gSaveDataBuffer; gLastKnownGoodSector = gLastWrittenSector; gLastSaveCounter = gSaveCounter; gLastWrittenSector++; gLastWrittenSector %= NUM_SECTORS_PER_SLOT; gSaveCounter++; - gUnknown_03006208 = 0; + gIncrementalSectorId = 0; gDamagedSaveSectors = 0; return 0; } -static u32 RestoreSaveBackupVars(const struct SaveSectionLocation *location) // only ever called once, and gSaveBlock2 is passed to this function. location is unused +static u32 RestoreSaveBackupVars(const struct SaveSectorLocation *locations) { - gFastSaveSection = &gSaveDataBuffer; + gReadWriteSector = &gSaveDataBuffer; gLastKnownGoodSector = gLastWrittenSector; gLastSaveCounter = gSaveCounter; - gUnknown_03006208 = 0; + gIncrementalSectorId = 0; gDamagedSaveSectors = 0; return 0; } -static u8 sub_81529D4(u16 sectorId, const struct SaveSectionLocation *location) +static u8 HandleWriteIncrementalSector(u16 numSectors, const struct SaveSectorLocation *locations) { u8 status; - if (gUnknown_03006208 < sectorId - 1) + if (gIncrementalSectorId < numSectors - 1) { status = SAVE_STATUS_OK; - HandleWriteSector(gUnknown_03006208, location); - gUnknown_03006208++; + HandleWriteSector(gIncrementalSectorId, locations); + gIncrementalSectorId++; if (gDamagedSaveSectors) { status = SAVE_STATUS_ERROR; @@ -269,11 +284,11 @@ static u8 sub_81529D4(u16 sectorId, const struct SaveSectionLocation *location) return status; } -static u8 sub_8152A34(u16 sectorId, const struct SaveSectionLocation *location) +static u8 HandleReplaceSectorAndVerify(u16 sectorId, const struct SaveSectorLocation *locations) { u8 status = SAVE_STATUS_OK; - ClearSaveData_2(sectorId - 1, location); + HandleReplaceSector(sectorId - 1, locations); if (gDamagedSaveSectors) { @@ -284,7 +299,8 @@ static u8 sub_8152A34(u16 sectorId, const struct SaveSectionLocation *location) return status; } -static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *location) +// Similar to HandleWriteSector, but fully erases the sector first, and skips writing the first security byte +static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *locations) { u16 i; u16 sector; @@ -292,35 +308,39 @@ static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *locati u16 size; u8 status; + // Adjust sector id for current save slot sector = sectorId + gLastWrittenSector; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - data = location[sectorId].data; - size = location[sectorId].size; + // Get current save data + data = locations[sectorId].data; + size = locations[sectorId].size; - // clear temp save section. - for (i = 0; i < sizeof(struct SaveSection); i++) - ((char *)gFastSaveSection)[i] = 0; + // Clear temp save sector. + for (i = 0; i < SECTOR_SIZE; i++) + ((u8 *)gReadWriteSector)[i] = 0; - gFastSaveSection->id = sectorId; - gFastSaveSection->security = UNKNOWN_CHECK_VALUE; - gFastSaveSection->counter = gSaveCounter; + // Set footer data + gReadWriteSector->id = sectorId; + gReadWriteSector->security = SECTOR_SECURITY_NUM; + gReadWriteSector->counter = gSaveCounter; - // set temp section's data. + // Copy current data to temp buffer for writing for (i = 0; i < size; i++) - gFastSaveSection->data[i] = data[i]; + gReadWriteSector->data[i] = data[i]; - // calculate checksum. - gFastSaveSection->checksum = CalculateChecksum(data, size); + gReadWriteSector->checksum = CalculateChecksum(data, size); + // Erase old save data EraseFlashSector(sector); status = SAVE_STATUS_OK; - for (i = 0; i < sizeof(struct UnkSaveSection); i++) + // Write new save data up to security field + for (i = 0; i < SECTOR_SECURITY_OFFSET; i++) { - if (ProgramFlashByte(sector, i, ((u8 *)gFastSaveSection)[i])) + if (ProgramFlashByte(sector, i, ((u8 *)gReadWriteSector)[i])) { status = SAVE_STATUS_ERROR; break; @@ -329,16 +349,20 @@ static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *locati if (status == SAVE_STATUS_ERROR) { + // Writing save data failed SetDamagedSectorBits(ENABLE, sector); return SAVE_STATUS_ERROR; } else { + // Writing save data succeeded, write security and counter status = SAVE_STATUS_OK; - for (i = 0; i < 7; i++) + // Write security (skipping the first byte) and counter fields. + // The byte of security that is skipped is instead written by WriteSectorSecurityByte or WriteSectorSecurityByte_NoOffset + for (i = 0; i < SECTOR_SIZE - (SECTOR_SECURITY_OFFSET + 1); i++) { - if (ProgramFlashByte(sector, 0xFF9 + i, ((u8 *)gFastSaveSection)[0xFF9 + i])) + if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET + 1 + i, ((u8 *)gReadWriteSector)[SECTOR_SECURITY_OFFSET + 1 + i])) { status = SAVE_STATUS_ERROR; break; @@ -347,28 +371,31 @@ static u8 ClearSaveData_2(u16 sectorId, const struct SaveSectionLocation *locati if (status == SAVE_STATUS_ERROR) { + // Writing security/counter failed SetDamagedSectorBits(ENABLE, sector); return SAVE_STATUS_ERROR; } else { + // Succeeded SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } } } -static u8 sav12_xor_get(u16 sectorId, const struct SaveSectionLocation *location) +static u8 WriteSectorSecurityByte_NoOffset(u16 sectorId, const struct SaveSectorLocation *locations) { - u16 sector; - - sector = sectorId + gLastWrittenSector; // no sub 1? + // Adjust sector id for current save slot + // This first line lacking -1 is the only difference from WriteSectorSecurityByte + u16 sector = sectorId + gLastWrittenSector; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) + // Write just the first byte of the security field, which was skipped by HandleReplaceSector + if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, SECTOR_SECURITY_NUM & 0xFF)) { - // sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. + // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); gLastWrittenSector = gLastKnownGoodSector; gSaveCounter = gLastSaveCounter; @@ -376,22 +403,23 @@ static u8 sav12_xor_get(u16 sectorId, const struct SaveSectionLocation *location } else { + // Succeeded SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } } -static u8 sub_8152CAC(u16 sectorId, const struct SaveSectionLocation *location) +static u8 CopySectorSecurityByte(u16 sectorId, const struct SaveSectorLocation *locations) { - u16 sector; - - sector = sectorId + gLastWrittenSector - 1; + // Adjust sector id for current save slot + u16 sector = sectorId + gLastWrittenSector - 1; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), ((u8 *)gFastSaveSection)[sizeof(struct UnkSaveSection)])) + // Copy just the first byte of the security field from the read/write buffer + if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, ((u8 *)gReadWriteSector)[SECTOR_SECURITY_OFFSET])) { - // sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. + // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); gLastWrittenSector = gLastKnownGoodSector; gSaveCounter = gLastSaveCounter; @@ -399,22 +427,23 @@ static u8 sub_8152CAC(u16 sectorId, const struct SaveSectionLocation *location) } else { + // Succeded SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } } -static u8 sub_8152D44(u16 sectorId, const struct SaveSectionLocation *location) +static u8 WriteSectorSecurityByte(u16 sectorId, const struct SaveSectorLocation *locations) { - u16 sector; - - sector = sectorId + gLastWrittenSector - 1; // no sub 1? + // Adjust sector id for current save slot + u16 sector = sectorId + gLastWrittenSector - 1; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) + // Write just the first byte of the security field, which was skipped by HandleReplaceSector + if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, SECTOR_SECURITY_NUM & 0xFF)) { - // sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. + // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); gLastWrittenSector = gLastKnownGoodSector; gSaveCounter = gLastSaveCounter; @@ -422,29 +451,32 @@ static u8 sub_8152D44(u16 sectorId, const struct SaveSectionLocation *location) } else { + // Succeeded SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } } -static u8 sub_8152DD0(u16 a1, const struct SaveSectionLocation *location) +static u8 TryLoadSaveSlot(u16 sectorId, struct SaveSectorLocation *locations) { u8 status; - gFastSaveSection = &gSaveDataBuffer; - if (a1 != 0xFFFF) + gReadWriteSector = &gSaveDataBuffer; + if (sectorId != FULL_SAVE_SLOT) { + // This function may not be used with a specific sector id status = SAVE_STATUS_ERROR; } else { - status = GetSaveValidStatus(location); - sub_8152E10(0xFFFF, location); + status = GetSaveValidStatus(locations); + CopySaveSlotData(FULL_SAVE_SLOT, locations); } return status; } -static u8 sub_8152E10(u16 a1, const struct SaveSectionLocation *location) +// sectorId arg is ignored, this always reads the full save slot +static u8 CopySaveSlotData(u16 sectorId, struct SaveSectorLocation *locations) { u16 i; u16 checksum; @@ -453,96 +485,102 @@ static u8 sub_8152E10(u16 a1, const struct SaveSectionLocation *location) for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { - DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); - id = gFastSaveSection->id; + ReadFlashSector(i + slotOffset, gReadWriteSector); + + id = gReadWriteSector->id; if (id == 0) gLastWrittenSector = i; - checksum = CalculateChecksum(gFastSaveSection->data, location[id].size); - if (gFastSaveSection->security == UNKNOWN_CHECK_VALUE - && gFastSaveSection->checksum == checksum) + + checksum = CalculateChecksum(gReadWriteSector->data, locations[id].size); + + // Only copy data for sectors whose security and checksum fields are correct + if (gReadWriteSector->security == SECTOR_SECURITY_NUM && gReadWriteSector->checksum == checksum) { u16 j; - for (j = 0; j < location[id].size; j++) - ((u8 *)location[id].data)[j] = gFastSaveSection->data[j]; + for (j = 0; j < locations[id].size; j++) + ((u8 *)locations[id].data)[j] = gReadWriteSector->data[j]; } } return SAVE_STATUS_OK; } -static u8 GetSaveValidStatus(const struct SaveSectionLocation *location) +static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) { u16 i; u16 checksum; u32 saveSlot1Counter = 0; u32 saveSlot2Counter = 0; - u32 slotCheckField = 0; + u32 validSectorFlags = 0; bool8 securityPassed = FALSE; u8 saveSlot1Status; u8 saveSlot2Status; - // check save slot 1. + // Check save slot 1 for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { - DoReadFlashWholeSection(i, gFastSaveSection); - if (gFastSaveSection->security == UNKNOWN_CHECK_VALUE) + ReadFlashSector(i, gReadWriteSector); + if (gReadWriteSector->security == SECTOR_SECURITY_NUM) { securityPassed = TRUE; - checksum = CalculateChecksum(gFastSaveSection->data, location[gFastSaveSection->id].size); - if (gFastSaveSection->checksum == checksum) + checksum = CalculateChecksum(gReadWriteSector->data, locations[gReadWriteSector->id].size); + if (gReadWriteSector->checksum == checksum) { - saveSlot1Counter = gFastSaveSection->counter; - slotCheckField |= 1 << gFastSaveSection->id; + saveSlot1Counter = gReadWriteSector->counter; + validSectorFlags |= 1 << gReadWriteSector->id; } } } if (securityPassed) { - if (slotCheckField == 0x3FFF) + if (validSectorFlags == (1 << NUM_SECTORS_PER_SLOT) - 1) saveSlot1Status = SAVE_STATUS_OK; else saveSlot1Status = SAVE_STATUS_ERROR; } else { + // No sectors in slot 1 have the security number, treat it as empty saveSlot1Status = SAVE_STATUS_EMPTY; } - slotCheckField = 0; + validSectorFlags = 0; securityPassed = FALSE; - // check save slot 2. + // Check save slot 2 for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { - DoReadFlashWholeSection(i + NUM_SECTORS_PER_SLOT, gFastSaveSection); - if (gFastSaveSection->security == UNKNOWN_CHECK_VALUE) + ReadFlashSector(i + NUM_SECTORS_PER_SLOT, gReadWriteSector); + if (gReadWriteSector->security == SECTOR_SECURITY_NUM) { securityPassed = TRUE; - checksum = CalculateChecksum(gFastSaveSection->data, location[gFastSaveSection->id].size); - if (gFastSaveSection->checksum == checksum) + checksum = CalculateChecksum(gReadWriteSector->data, locations[gReadWriteSector->id].size); + if (gReadWriteSector->checksum == checksum) { - saveSlot2Counter = gFastSaveSection->counter; - slotCheckField |= 1 << gFastSaveSection->id; + saveSlot2Counter = gReadWriteSector->counter; + validSectorFlags |= 1 << gReadWriteSector->id; } } } if (securityPassed) { - if (slotCheckField == 0x3FFF) + if (validSectorFlags == (1 << NUM_SECTORS_PER_SLOT) - 1) saveSlot2Status = SAVE_STATUS_OK; else saveSlot2Status = SAVE_STATUS_ERROR; } else { + // No sectors in slot 2 have the security number, treat it as empty. saveSlot2Status = SAVE_STATUS_EMPTY; } if (saveSlot1Status == SAVE_STATUS_OK && saveSlot2Status == SAVE_STATUS_OK) { - if ((saveSlot1Counter == -1 && saveSlot2Counter == 0) || (saveSlot1Counter == 0 && saveSlot2Counter == -1)) + if ((saveSlot1Counter == -1 && saveSlot2Counter == 0) + || (saveSlot1Counter == 0 && saveSlot2Counter == -1)) { if ((unsigned)(saveSlot1Counter + 1) < (unsigned)(saveSlot2Counter + 1)) gSaveCounter = saveSlot2Counter; @@ -559,63 +597,71 @@ static u8 GetSaveValidStatus(const struct SaveSectionLocation *location) return SAVE_STATUS_OK; } + // One or both save slots are not OK + if (saveSlot1Status == SAVE_STATUS_OK) { gSaveCounter = saveSlot1Counter; if (saveSlot2Status == SAVE_STATUS_ERROR) - return SAVE_STATUS_ERROR; - return SAVE_STATUS_OK; + return SAVE_STATUS_ERROR; // Slot 2 errored + return SAVE_STATUS_OK; // Slot 1 is OK, slot 2 is empty } if (saveSlot2Status == SAVE_STATUS_OK) { gSaveCounter = saveSlot2Counter; if (saveSlot1Status == SAVE_STATUS_ERROR) - return SAVE_STATUS_ERROR; - return SAVE_STATUS_OK; + return SAVE_STATUS_ERROR; // Slot 1 errored + return SAVE_STATUS_OK; // Slot 2 is OK, slot 1 is empty } - if (saveSlot1Status == SAVE_STATUS_EMPTY && saveSlot2Status == SAVE_STATUS_EMPTY) + // Neither slot is OK, check if both are empty + if (saveSlot1Status == SAVE_STATUS_EMPTY + && saveSlot2Status == SAVE_STATUS_EMPTY) { gSaveCounter = 0; gLastWrittenSector = 0; return SAVE_STATUS_EMPTY; } + // Both slots errored gSaveCounter = 0; gLastWrittenSector = 0; return SAVE_STATUS_CORRUPT; } -static u8 sub_81530DC(u8 sectorId, u8 *data, u16 size) +static u8 TryLoadSaveSector(u8 sectorId, u8 *data, u16 size) { u16 i; - struct SaveSection *section = &gSaveDataBuffer; - DoReadFlashWholeSection(sectorId, section); - if (section->security == UNKNOWN_CHECK_VALUE) + struct SaveSector *sector = &gSaveDataBuffer; + ReadFlashSector(sectorId, sector); + if (sector->security == SECTOR_SECURITY_NUM) { - u16 checksum = CalculateChecksum(section->data, size); - if (section->id == checksum) + u16 checksum = CalculateChecksum(sector->data, size); + if (sector->id == checksum) { + // Security and checksum are correct, copy data for (i = 0; i < size; i++) - data[i] = section->data[i]; + data[i] = sector->data[i]; return SAVE_STATUS_OK; } else { + // Incorrect checksum return SAVE_STATUS_CORRUPT; } } else { + // Incorrect security value return SAVE_STATUS_EMPTY; } } // Return value always ignored -static bool8 DoReadFlashWholeSection(u8 sector, struct SaveSection *section) +static bool8 ReadFlashSector(u8 sectorId, struct SaveSector *sector) { - ReadFlash(sector, 0, section->data, sizeof(struct SaveSection)); + ReadFlash(sectorId, 0, sector->data, SECTOR_SIZE); return TRUE; } @@ -635,21 +681,20 @@ static u16 CalculateChecksum(void *data, u16 size) static void UpdateSaveAddresses(void) { - int i = 0; - - gRamSaveSectionLocations[i].data = (void*)(gSaveBlock2Ptr) + sSaveSectionOffsets[i].toAdd; - gRamSaveSectionLocations[i].size = sSaveSectionOffsets[i].size; + int i = SECTOR_ID_SAVEBLOCK2; + gRamSaveSectorLocations[i].data = (void*)(gSaveBlock2Ptr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; for (i = SECTOR_ID_SAVEBLOCK1_START; i <= SECTOR_ID_SAVEBLOCK1_END; i++) { - gRamSaveSectionLocations[i].data = (void*)(gSaveBlock1Ptr) + sSaveSectionOffsets[i].toAdd; - gRamSaveSectionLocations[i].size = sSaveSectionOffsets[i].size; + gRamSaveSectorLocations[i].data = (void*)(gSaveBlock1Ptr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; } for (; i <= SECTOR_ID_PKMN_STORAGE_END; i++) //setting i to SECTOR_ID_PKMN_STORAGE_START does not match { - gRamSaveSectionLocations[i].data = (void*)(gPokemonStoragePtr) + sSaveSectionOffsets[i].toAdd; - gRamSaveSectionLocations[i].size = sSaveSectionOffsets[i].size; + gRamSaveSectorLocations[i].data = (void*)(gPokemonStoragePtr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; } } @@ -663,43 +708,48 @@ u8 HandleSavingData(u8 saveType) UpdateSaveAddresses(); switch (saveType) { - case SAVE_HALL_OF_FAME_ERASE_BEFORE: // deletes HOF before overwriting HOF completely. unused + case SAVE_HALL_OF_FAME_ERASE_BEFORE: + // Unused. Erases the special save sectors (HOF, Trainer Hill, Recorded Battle) + // before overwriting HOF. for (i = SECTOR_ID_HOF_1; i < SECTORS_COUNT; i++) EraseFlashSector(i); - case SAVE_HALL_OF_FAME: // hall of fame. + // fallthrough + case SAVE_HALL_OF_FAME: if (GetGameStat(GAME_STAT_ENTERED_HOF) < 999) IncrementGameStat(GAME_STAT_ENTERED_HOF); - SaveSerializedGame(); - SaveWriteToFlash(0xFFFF, gRamSaveSectionLocations); + + // Write the full save slot first + CopyPartyAndObjectsToSave(); + WriteSaveSectorOrSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations); + + // Save the Hall of Fame tempAddr = gDecompressionBuffer; HandleWriteSectorNBytes(SECTOR_ID_HOF_1, tempAddr, SECTOR_DATA_SIZE); HandleWriteSectorNBytes(SECTOR_ID_HOF_2, tempAddr + SECTOR_DATA_SIZE, SECTOR_DATA_SIZE); break; - case SAVE_NORMAL: // normal save. also called by overwriting your own save. + case SAVE_NORMAL: default: - SaveSerializedGame(); - SaveWriteToFlash(0xFFFF, gRamSaveSectionLocations); + CopyPartyAndObjectsToSave(); + WriteSaveSectorOrSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations); break; - case SAVE_LINK: // Link and Battle Frontier - case SAVE_LINK2: // Unused - SaveSerializedGame(); + case SAVE_LINK: + case SAVE_LINK2: + // Used by link / Battle Frontier + // Write only SaveBlocks 1 and 2 (skips the PC) + CopyPartyAndObjectsToSave(); for(i = SECTOR_ID_SAVEBLOCK2; i <= SECTOR_ID_SAVEBLOCK1_END; i++) - ClearSaveData_2(i, gRamSaveSectionLocations); + HandleReplaceSector(i, gRamSaveSectorLocations); for(i = SECTOR_ID_SAVEBLOCK2; i <= SECTOR_ID_SAVEBLOCK1_END; i++) - sav12_xor_get(i, gRamSaveSectionLocations); - break; - // Support for Ereader was removed in Emerald. - /* - case EREADER_SAVE: // used in mossdeep "game corner" before/after battling old man e-reader trainer - SaveSerializedGame(); - SaveWriteToFlash(0, gRamSaveSectionLocations); + WriteSectorSecurityByte_NoOffset(i, gRamSaveSectorLocations); break; - */ case SAVE_OVERWRITE_DIFFERENT_FILE: + // Erase Hall of Fame for (i = SECTOR_ID_HOF_1; i < SECTORS_COUNT; i++) - EraseFlashSector(i); // erase HOF. - SaveSerializedGame(); - SaveWriteToFlash(0xFFFF, gRamSaveSectionLocations); + EraseFlashSector(i); + + // Overwrite save slot + CopyPartyAndObjectsToSave(); + WriteSaveSectorOrSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations); break; } gTrainerHillVBlankCounter = backupVar; @@ -728,19 +778,19 @@ u8 TrySavingData(u8 saveType) } } -bool8 sub_8153380(void) // trade.c +bool8 LinkFullSave_Init(void) { if (gFlashMemoryPresent != TRUE) return TRUE; UpdateSaveAddresses(); - SaveSerializedGame(); - RestoreSaveBackupVarsAndIncrement(gRamSaveSectionLocations); + CopyPartyAndObjectsToSave(); + RestoreSaveBackupVarsAndIncrement(gRamSaveSectorLocations); return FALSE; } -bool8 sub_81533AC(void) // trade.c +bool8 LinkFullSave_WriteSector(void) { - u8 status = sub_81529D4(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); + u8 status = HandleWriteIncrementalSector(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); if (status == SAVE_STATUS_ERROR) @@ -749,54 +799,66 @@ bool8 sub_81533AC(void) // trade.c return FALSE; } -bool8 sub_81533E0(void) // trade.c +bool8 LinkFullSave_ReplaceLastSector(void) { - sub_8152A34(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); + HandleReplaceSectorAndVerify(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); return FALSE; } -bool8 sub_8153408(void) // trade.c +bool8 LinkFullSave_SetLastSectorSecurity(void) { - sub_8152CAC(NUM_SECTORS_PER_SLOT, gRamSaveSectionLocations); + CopySectorSecurityByte(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); return FALSE; } -u8 FullSaveGame(void) +u8 WriteSaveBlock2(void) { if (gFlashMemoryPresent != TRUE) return TRUE; UpdateSaveAddresses(); - SaveSerializedGame(); - RestoreSaveBackupVars(gRamSaveSectionLocations); - sub_8152A34(gUnknown_03006208 + 1, gRamSaveSectionLocations); + CopyPartyAndObjectsToSave(); + RestoreSaveBackupVars(gRamSaveSectorLocations); + + // Because RestoreSaveBackupVars is called immediately prior, gIncrementalSectorId will always be 0 below, + // so this function only saves the first sector (SECTOR_ID_SAVEBLOCK2) + HandleReplaceSectorAndVerify(gIncrementalSectorId + 1, gRamSaveSectorLocations); return FALSE; } -bool8 CheckSaveFile(void) +// Used in conjunction with WriteSaveBlock2 to write both for certain link saves. +// This will be called repeatedly in a task, writing each sector of SaveBlock1 incrementally. +// It returns TRUE when finished. +bool8 WriteSaveBlock1Sector(void) { - u8 retVal = FALSE; - u16 sectorId = ++gUnknown_03006208; + u8 finished = FALSE; + u16 sectorId = ++gIncrementalSectorId; // Because WriteSaveBlock2 will have been called prior, this will be SECTOR_ID_SAVEBLOCK1_START if (sectorId <= SECTOR_ID_SAVEBLOCK1_END) { - sub_8152A34(gUnknown_03006208 + 1, gRamSaveSectionLocations); - sub_8152D44(sectorId, gRamSaveSectionLocations); + // Write a single sector of SaveBlock1 + HandleReplaceSectorAndVerify(gIncrementalSectorId + 1, gRamSaveSectorLocations); + WriteSectorSecurityByte(sectorId, gRamSaveSectorLocations); } else { - sub_8152D44(sectorId, gRamSaveSectionLocations); - retVal = TRUE; + // Beyond SaveBlock1, don't write the sector. + // Does write 1 byte of the next sector's security field, but as these + // are the same for all valid sectors it doesn't matter. + WriteSectorSecurityByte(sectorId, gRamSaveSectorLocations); + finished = TRUE; } + if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_LINK); - return retVal; + + return finished; } -u8 Save_LoadGameData(u8 saveType) +u8 LoadGameSave(u8 saveType) { u8 status; @@ -811,15 +873,15 @@ u8 Save_LoadGameData(u8 saveType) { case SAVE_NORMAL: default: - status = sub_8152DD0(0xFFFF, gRamSaveSectionLocations); - LoadSerializedGame(); + status = TryLoadSaveSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations); + CopyPartyAndObjectsFromSave(); gSaveFileStatus = status; gGameContinueCallback = 0; break; case SAVE_HALL_OF_FAME: - status = sub_81530DC(SECTOR_ID_HOF_1, gDecompressionBuffer, SECTOR_DATA_SIZE); + status = TryLoadSaveSector(SECTOR_ID_HOF_1, gDecompressionBuffer, SECTOR_DATA_SIZE); if (status == SAVE_STATUS_OK) - status = sub_81530DC(SECTOR_ID_HOF_2, gDecompressionBuffer + SECTOR_DATA_SIZE, SECTOR_DATA_SIZE); + status = TryLoadSaveSector(SECTOR_ID_HOF_2, &gDecompressionBuffer[SECTOR_DATA_SIZE], SECTOR_DATA_SIZE); break; } @@ -829,29 +891,29 @@ u8 Save_LoadGameData(u8 saveType) u16 GetSaveBlocksPointersBaseOffset(void) { u16 i, slotOffset; - struct SaveSection* savSection; + struct SaveSector* sector; - savSection = gFastSaveSection = &gSaveDataBuffer; + sector = gReadWriteSector = &gSaveDataBuffer; if (gFlashMemoryPresent != TRUE) return 0; UpdateSaveAddresses(); - GetSaveValidStatus(gRamSaveSectionLocations); + GetSaveValidStatus(gRamSaveSectorLocations); slotOffset = NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { - DoReadFlashWholeSection(i + slotOffset, gFastSaveSection); + ReadFlashSector(i + slotOffset, gReadWriteSector); // Base offset for SaveBlock2 is calculated using the trainer id - if (gFastSaveSection->id == SECTOR_ID_SAVEBLOCK2) - return savSection->data[offsetof(struct SaveBlock2, playerTrainerId[0])] + - savSection->data[offsetof(struct SaveBlock2, playerTrainerId[1])] + - savSection->data[offsetof(struct SaveBlock2, playerTrainerId[2])] + - savSection->data[offsetof(struct SaveBlock2, playerTrainerId[3])]; + if (gReadWriteSector->id == SECTOR_ID_SAVEBLOCK2) + return sector->data[offsetof(struct SaveBlock2, playerTrainerId[0])] + + sector->data[offsetof(struct SaveBlock2, playerTrainerId[1])] + + sector->data[offsetof(struct SaveBlock2, playerTrainerId[2])] + + sector->data[offsetof(struct SaveBlock2, playerTrainerId[3])]; } return 0; } -u32 TryReadSpecialSaveSection(u8 sector, u8* dst) +u32 TryReadSpecialSaveSector(u8 sector, u8* dst) { s32 i; s32 size; @@ -859,19 +921,21 @@ u32 TryReadSpecialSaveSection(u8 sector, u8* dst) if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE) return SAVE_STATUS_ERROR; - ReadFlash(sector, 0, (u8 *)&gSaveDataBuffer, sizeof(struct SaveSection)); - if (*(u32*)(&gSaveDataBuffer.data[0]) != SPECIAL_SECTION_SENTINEL) + + ReadFlash(sector, 0, (u8 *)&gSaveDataBuffer, SECTOR_SIZE); + if (*(u32*)(&gSaveDataBuffer.data[0]) != SPECIAL_SECTOR_SENTINEL) return SAVE_STATUS_ERROR; - // copies whole save section except u32 counter + + // Copies whole save sector except u32 counter i = 0; - size = 0xFFB; - savData = &gSaveDataBuffer.data[4]; + size = SECTOR_COUNTER_OFFSET - 1; + savData = &gSaveDataBuffer.data[4]; // data[4] to skip past SPECIAL_SECTOR_SENTINEL for (; i <= size; i++) dst[i] = savData[i]; return SAVE_STATUS_OK; } -u32 TryWriteSpecialSaveSection(u8 sector, u8* src) +u32 TryWriteSpecialSaveSector(u8 sector, u8* src) { s32 i; s32 size; @@ -882,12 +946,12 @@ u32 TryWriteSpecialSaveSection(u8 sector, u8* src) return SAVE_STATUS_ERROR; savDataBuffer = &gSaveDataBuffer; - *(u32*)(savDataBuffer) = SPECIAL_SECTION_SENTINEL; + *(u32*)(savDataBuffer) = SPECIAL_SECTOR_SENTINEL; - // copies whole save section except u32 counter + // Copies whole save sector except u32 counter i = 0; - size = 0xFFB; - savData = &gSaveDataBuffer.data[4]; + size = SECTOR_COUNTER_OFFSET - 1; + savData = &gSaveDataBuffer.data[4]; // data[4] to skip past SPECIAL_SECTOR_SENTINEL for (; i <= size; i++) savData[i] = src[i]; if (ProgramFlashSectorAndVerify(sector, savDataBuffer) != 0) @@ -895,11 +959,13 @@ u32 TryWriteSpecialSaveSection(u8 sector, u8* src) return SAVE_STATUS_OK; } -#define tState data[0] -#define tTimer data[1] -#define tPartialSave data[2] +#define tState data[0] +#define tTimer data[1] +#define tInBattleTower data[2] -void Task_LinkSave(u8 taskId) +// Note that this is very different from TrySavingData(SAVE_LINK). +// Most notably it does save the PC data. +void Task_LinkFullSave(u8 taskId) { s16* data = gTasks[taskId].data; @@ -916,15 +982,15 @@ void Task_LinkSave(u8 taskId) case 2: if (IsLinkTaskFinished()) { - if (!tPartialSave) + if (!tInBattleTower) SaveMapView(); tState = 3; } break; case 3: - if (!tPartialSave) + if (!tInBattleTower) SetContinueGameWarpStatusToDynamicWarp(); - sub_8153380(); + LinkFullSave_Init(); tState = 4; break; case 4: @@ -935,17 +1001,17 @@ void Task_LinkSave(u8 taskId) } break; case 5: - if (sub_81533AC()) + if (LinkFullSave_WriteSector()) tState = 6; else - tState = 4; + tState = 4; // Not finished, delay again break; case 6: - sub_81533E0(); + LinkFullSave_ReplaceLastSector(); tState = 7; break; case 7: - if (!tPartialSave) + if (!tInBattleTower) ClearContinueGameWarpStatus2(); SetLinkStandbyCallback(); tState = 8; @@ -953,7 +1019,7 @@ void Task_LinkSave(u8 taskId) case 8: if (IsLinkTaskFinished()) { - sub_8153408(); + LinkFullSave_SetLastSectorSecurity(); tState = 9; } break; @@ -974,7 +1040,3 @@ void Task_LinkSave(u8 taskId) break; } } - -#undef tState -#undef tTimer -#undef tPartialSave diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 4f037327067d..ff8c92b3352e 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -363,9 +363,10 @@ static bool8 VerifySectorWipe(u16 sector) ReadFlash(sector, 0, (u8 *)ptr, SECTOR_SIZE); - for (i = 0; i < 0x400; i++, ptr++) + // 1/4 because ptr is u32 + for (i = 0; i < SECTOR_SIZE / 4; i++, ptr++) if (*ptr) - return TRUE; + return TRUE; // Sector has nonzero data, failed return FALSE; } @@ -375,6 +376,7 @@ static bool8 WipeSector(u16 sector) u16 i, j; bool8 failed = TRUE; + // Attempt to wipe sector with an arbitrary attempt limit of 130 for (i = 0; failed && i < 130; i++) { for (j = 0; j < SECTOR_SIZE; j++) diff --git a/src/start_menu.c b/src/start_menu.c index dcff75ff6000..a46d11e9815a 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -1269,11 +1269,11 @@ static void Task_SaveAfterLinkBattle(u8 taskId) break; case 1: SetContinueGameWarpStatusToDynamicWarp(); - FullSaveGame(); + WriteSaveBlock2(); *state = 2; break; case 2: - if (CheckSaveFile()) + if (WriteSaveBlock1Sector()) { ClearContinueGameWarpStatus2(); *state = 3; @@ -1290,11 +1290,11 @@ static void Task_SaveAfterLinkBattle(u8 taskId) DestroyTask(taskId); break; case 5: - CreateTask(Task_LinkSave, 5); + CreateTask(Task_LinkFullSave, 5); *state = 6; break; case 6: - if (!FuncIsActiveTask(Task_LinkSave)) + if (!FuncIsActiveTask(Task_LinkFullSave)) { *state = 3; } @@ -1374,23 +1374,23 @@ static void RemoveSaveInfoWindow(void) static void Task_WaitForBattleTowerLinkSave(u8 taskId) { - if (!FuncIsActiveTask(Task_LinkSave)) + if (!FuncIsActiveTask(Task_LinkFullSave)) { DestroyTask(taskId); EnableBothScriptContexts(); } } -#define tPartialSave data[2] +#define tInBattleTower data[2] void SaveForBattleTowerLink(void) { - u8 taskId = CreateTask(Task_LinkSave, 5); - gTasks[taskId].tPartialSave = TRUE; + u8 taskId = CreateTask(Task_LinkFullSave, 5); + gTasks[taskId].tInBattleTower = TRUE; gTasks[CreateTask(Task_WaitForBattleTowerLinkSave, 6)].data[1] = taskId; } -#undef tPartialSave +#undef tInBattleTower static void HideStartMenuWindow(void) { diff --git a/src/trade.c b/src/trade.c index 475b82d5ee8a..ba4faed28386 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4654,30 +4654,29 @@ static void CB2_SaveAndEndTrade(void) MysteryGift_TryIncrementStat(CARD_STAT_NUM_TRADES, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId); SetContinueGameWarpStatusToDynamicWarp(); - sub_8153380(); + LinkFullSave_Init(); gMain.state++; sTradeData->timer = 0; break; case 51: if (++sTradeData->timer == 5) - { gMain.state++; - } break; case 52: - if (sub_81533AC()) + if (LinkFullSave_WriteSector()) { ClearContinueGameWarpStatus2(); gMain.state = 4; } else { + // Save isn't finished, delay again sTradeData->timer = 0; gMain.state = 51; } break; case 4: - sub_81533E0(); + LinkFullSave_ReplaceLastSector(); gMain.state = 40; sTradeData->timer = 0; break; @@ -4709,7 +4708,7 @@ static void CB2_SaveAndEndTrade(void) case 42: if (_IsLinkTaskFinished()) { - sub_8153408(); + LinkFullSave_SetLastSectorSecurity(); gMain.state = 5; } break; @@ -4965,7 +4964,7 @@ static void CB2_SaveAndEndWirelessTrade(void) StringExpandPlaceholders(gStringVar4, gText_SavingDontTurnOffPower); DrawTextOnTradeWindow(0, gStringVar4, 0); IncrementGameStat(GAME_STAT_POKEMON_TRADES); - sub_8153380(); + LinkFullSave_Init(); sTradeData->timer = 0; } break; @@ -4974,7 +4973,7 @@ static void CB2_SaveAndEndWirelessTrade(void) gMain.state = 4; break; case 4: - if (sub_81533AC()) + if (LinkFullSave_WriteSector()) { gMain.state = 5; } @@ -4985,7 +4984,7 @@ static void CB2_SaveAndEndWirelessTrade(void) } break; case 5: - sub_81533E0(); + LinkFullSave_ReplaceLastSector(); gMain.state = 6; sTradeData->timer = 0; break; @@ -5013,7 +5012,7 @@ static void CB2_SaveAndEndWirelessTrade(void) case 8: if (_IsLinkTaskFinished()) { - sub_8153408(); + LinkFullSave_SetLastSectorSecurity(); gMain.state = 9; } break; From 43e942c3af39bf230e37dde9b406e99b12800f63 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 9 Nov 2021 12:50:35 -0500 Subject: [PATCH 400/762] Clean up pokenav ribbons --- include/pokenav.h | 8 +- ld_script.txt | 8 +- src/pokenav.c | 8 +- ...nav_ribbons_1.c => pokenav_ribbons_list.c} | 260 +++++----- ..._ribbons_2.c => pokenav_ribbons_summary.c} | 452 +++++++++--------- sym_bss.txt | 2 +- 6 files changed, 369 insertions(+), 369 deletions(-) rename src/{pokenav_ribbons_1.c => pokenav_ribbons_list.c} (66%) rename src/{pokenav_ribbons_2.c => pokenav_ribbons_summary.c} (67%) diff --git a/include/pokenav.h b/include/pokenav.h index 3fc01ede3d6c..b1c73056d4a3 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -459,18 +459,18 @@ void CreateSearchResultsLoopedTask(s32); u32 IsSearchResultLoopedTaskActive(void); void FreeSearchResultSubstruct2(void); -// pokenav_ribbons_1.c +// pokenav_ribbons_list.c u32 PokenavCallback_Init_MonRibbonList(void); u32 PokenavCallback_Init_RibbonsMonListFromSummary(void); u32 GetRibbonsMonListCallback(void); -void FreeRibbonsMonList1(void); +void FreeRibbonsMonList(void); bool32 OpenRibbonsMonList(void); bool32 OpenRibbonsMonListFromRibbonsSummary(void); void CreateRibbonsMonListLoopedTask(s32); u32 IsRibbonsMonListLoopedTaskActive(void); -void FreeRibbonsMonList2(void); +void FreeRibbonsMonMenu(void); -// pokenav_ribbons_2.c +// pokenav_ribbons_summary.c u32 PokenavCallback_Init_RibbonsSummaryMenu(void); u32 GetRibbonsSummaryMenuCallback(void); void FreeRibbonsSummaryScreen1(void); diff --git a/ld_script.txt b/ld_script.txt index e310bf717ca8..ca0480e0fd05 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -319,8 +319,8 @@ SECTIONS { src/pokenav_conditions_1.o(.text); src/pokenav_conditions_2.o(.text); src/pokenav_conditions_3.o(.text); - src/pokenav_ribbons_1.o(.text); - src/pokenav_ribbons_2.o(.text); + src/pokenav_ribbons_list.o(.text); + src/pokenav_ribbons_summary.o(.text); src/pokenav_match_call_data.o(.text); src/menu_specialized.o(.text); src/ereader_helpers.o(.text); @@ -673,8 +673,8 @@ SECTIONS { src/pokenav_region_map.o(.rodata); src/pokenav_conditions_2.o(.rodata); src/pokenav_conditions_3.o(.rodata); - src/pokenav_ribbons_1.o(.rodata); - src/pokenav_ribbons_2.o(.rodata); + src/pokenav_ribbons_list.o(.rodata); + src/pokenav_ribbons_summary.o(.rodata); src/pokenav_match_call_data.o(.rodata); src/menu_specialized.o(.rodata); src/ereader_helpers.o(.rodata); diff --git a/src/pokenav.c b/src/pokenav.c index d30c523f9285..4338023dbd6c 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -179,8 +179,8 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .open = OpenRibbonsMonList, .createLoopTask = CreateRibbonsMonListLoopedTask, .isLoopTaskActive = IsRibbonsMonListLoopedTaskActive, - .free1 = FreeRibbonsMonList1, - .free2 = FreeRibbonsMonList2, + .free1 = FreeRibbonsMonList, + .free2 = FreeRibbonsMonMenu, }, [POKENAV_RIBBONS_SUMMARY_SCREEN - POKENAV_MENU_IDS_START] = { @@ -199,8 +199,8 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .open = OpenRibbonsMonListFromRibbonsSummary, .createLoopTask = CreateRibbonsMonListLoopedTask, .isLoopTaskActive = IsRibbonsMonListLoopedTaskActive, - .free1 = FreeRibbonsMonList1, - .free2 = FreeRibbonsMonList2, + .free1 = FreeRibbonsMonList, + .free2 = FreeRibbonsMonMenu, }, }; diff --git a/src/pokenav_ribbons_1.c b/src/pokenav_ribbons_list.c similarity index 66% rename from src/pokenav_ribbons_1.c rename to src/pokenav_ribbons_list.c index 862128967c0b..b5d412e127f5 100644 --- a/src/pokenav_ribbons_1.c +++ b/src/pokenav_ribbons_list.c @@ -20,9 +20,9 @@ enum }; -struct PokenavSub9 +struct Pokenav_RibbonsMonList { - u32 (*callback)(struct PokenavSub9*); + u32 (*callback)(struct Pokenav_RibbonsMonList*); u32 loopedTaskId; u16 winid; s32 boxId; @@ -32,35 +32,35 @@ struct PokenavSub9 struct PokenavSub18 *monList; }; -struct PokenavSub10 +struct Pokenav_RibbonsMonMenu { bool32 (*callback)(void); - u32 ltid; + u32 loopedTaskId; u16 winid; bool32 fromSummary; u8 buff[BG_SCREEN_SIZE]; }; -static u32 HandleRibbonsMonListInput_WaitListInit(struct PokenavSub9 *structPtr); -static u32 HandleRibbonsMonListInput(struct PokenavSub9 *structPtr); -static u32 RibbonsMonMenu_ReturnToMainMenu(struct PokenavSub9 *structPtr); -static u32 RibbonsMonMenu_ToSummaryScreen(struct PokenavSub9 *structPtr); -static u32 BuildPartyMonRibbonList(s32 state); -static u32 InitBoxMonRibbonList(s32 state); -static u32 BuildBoxMonRibbonList(s32 state); -static u32 GetMonRibbonListLoopTaskFunc(s32 state); -static void sub_81CFCEC(struct PokenavSub9 *structPtr, struct PokenavMonList *item); -static u32 LoopedTask_OpenRibbonsMonList(s32 state); +static u32 HandleRibbonsMonListInput_WaitListInit(struct Pokenav_RibbonsMonList *); +static u32 HandleRibbonsMonListInput(struct Pokenav_RibbonsMonList *); +static u32 RibbonsMonMenu_ReturnToMainMenu(struct Pokenav_RibbonsMonList *); +static u32 RibbonsMonMenu_ToSummaryScreen(struct Pokenav_RibbonsMonList *); +static u32 BuildPartyMonRibbonList(s32); +static u32 InitBoxMonRibbonList(s32); +static u32 BuildBoxMonRibbonList(s32); +static u32 GetMonRibbonListLoopTaskFunc(s32); +static void InsertMonListItem(struct Pokenav_RibbonsMonList *, struct PokenavMonList *); +static u32 LoopedTask_OpenRibbonsMonList(s32); static bool32 GetRibbonsMonCurrentLoopedTaskActive(void); -static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state); -static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state); -static u32 LoopedTask_RibbonsListMovePageUp(s32 state); -static u32 LoopedTask_RibbonsListMovePageDown(s32 state); -static u32 LoopedTask_RibbonsListReturnToMainMenu(s32 state); -static u32 LoopedTask_RibbonsListOpenSummary(s32 state); -static void sub_81D02B0(s32 windowId, s32 val1, s32 val2); -static void AddRibbonsMonListWindow(struct PokenavSub10 *ptr); -static void sub_81D0288(struct PokenavSub10 *ptr); +static u32 LoopedTask_RibbonsListMoveCursorUp(s32); +static u32 LoopedTask_RibbonsListMoveCursorDown(s32); +static u32 LoopedTask_RibbonsListMovePageUp(s32); +static u32 LoopedTask_RibbonsListMovePageDown(s32); +static u32 LoopedTask_RibbonsListReturnToMainMenu(s32); +static u32 LoopedTask_RibbonsListOpenSummary(s32); +static void DrawListIndexNumber(s32, s32, s32); +static void AddRibbonsMonListWindow(struct Pokenav_RibbonsMonMenu *); +static void UpdateIndexNumberDisplay(struct Pokenav_RibbonsMonMenu *); static void InitMonRibbonPokenavListMenuTemplate(void); static void BufferRibbonMonInfoText(struct PokenavMonList *, u8 *); @@ -125,54 +125,54 @@ static const u8 sText_NoGenderSymbol[] = _("{UNK_SPACER}"); bool32 PokenavCallback_Init_MonRibbonList(void) { - struct PokenavSub9 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST, sizeof(struct PokenavSub9)); - if (structPtr == NULL) + struct Pokenav_RibbonsMonList *list = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST, sizeof(struct Pokenav_RibbonsMonList)); + if (list == NULL) return FALSE; - structPtr->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); - if (structPtr->monList == NULL) + list->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); + if (list->monList == NULL) return FALSE; - structPtr->callback = HandleRibbonsMonListInput_WaitListInit; - structPtr->loopedTaskId = CreateLoopedTask(GetMonRibbonListLoopTaskFunc, 1); - structPtr->changeBgs = 0; + list->callback = HandleRibbonsMonListInput_WaitListInit; + list->loopedTaskId = CreateLoopedTask(GetMonRibbonListLoopTaskFunc, 1); + list->changeBgs = 0; return TRUE; } bool32 PokenavCallback_Init_RibbonsMonListFromSummary(void) { - struct PokenavSub9 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST, sizeof(struct PokenavSub9)); - if (structPtr == NULL) + struct Pokenav_RibbonsMonList *list = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST, sizeof(struct Pokenav_RibbonsMonList)); + if (list == NULL) return FALSE; - structPtr->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - structPtr->callback = HandleRibbonsMonListInput; - structPtr->changeBgs = 1; + list->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + list->callback = HandleRibbonsMonListInput; + list->changeBgs = 1; return TRUE; } u32 GetRibbonsMonListCallback(void) { - struct PokenavSub9 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - return structPtr->callback(structPtr); + struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + return list->callback(list); } -void FreeRibbonsMonList1(void) +void FreeRibbonsMonList(void) { - struct PokenavSub9 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - if (!structPtr->saveMonList) + struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + if (!list->saveMonList) FreePokenavSubstruct(POKENAV_SUBSTRUCT_MON_LIST); FreePokenavSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); } -static u32 HandleRibbonsMonListInput_WaitListInit(struct PokenavSub9 *structPtr) +static u32 HandleRibbonsMonListInput_WaitListInit(struct Pokenav_RibbonsMonList *list) { - if (!IsLoopedTaskActive(structPtr->loopedTaskId)) - structPtr->callback = HandleRibbonsMonListInput; + if (!IsLoopedTaskActive(list->loopedTaskId)) + list->callback = HandleRibbonsMonListInput; return 0; } -static u32 HandleRibbonsMonListInput(struct PokenavSub9 *structPtr) +static u32 HandleRibbonsMonListInput(struct Pokenav_RibbonsMonList *list) { if (JOY_REPEAT(DPAD_UP)) return RIBBONS_MON_LIST_FUNC_MOVE_UP; @@ -184,60 +184,60 @@ static u32 HandleRibbonsMonListInput(struct PokenavSub9 *structPtr) return RIBBONS_MON_LIST_FUNC_PAGE_DOWN; if (JOY_NEW(B_BUTTON)) { - structPtr->saveMonList = 0; - structPtr->callback = RibbonsMonMenu_ReturnToMainMenu; + list->saveMonList = 0; + list->callback = RibbonsMonMenu_ReturnToMainMenu; return RIBBONS_MON_LIST_FUNC_EXIT; } if (JOY_NEW(A_BUTTON)) { - structPtr->monList->currIndex = GetSelectedPokenavListIndex(); - structPtr->saveMonList = 1; - structPtr->callback = RibbonsMonMenu_ToSummaryScreen; + list->monList->currIndex = GetSelectedPokenavListIndex(); + list->saveMonList = 1; + list->callback = RibbonsMonMenu_ToSummaryScreen; return RIBBONS_MON_LIST_FUNC_OPEN_RIBBONS_SUMMARY; } return RIBBONS_MON_LIST_FUNC_NONE; } -static u32 RibbonsMonMenu_ReturnToMainMenu(struct PokenavSub9 *structPtr) +static u32 RibbonsMonMenu_ReturnToMainMenu(struct Pokenav_RibbonsMonList *list) { return POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS; } -static u32 RibbonsMonMenu_ToSummaryScreen(struct PokenavSub9 *structPtr) +static u32 RibbonsMonMenu_ToSummaryScreen(struct Pokenav_RibbonsMonList *list) { return POKENAV_RIBBONS_SUMMARY_SCREEN; } static u32 UpdateMonListBgs(void) { - struct PokenavSub9 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - return structPtr->changeBgs; + struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + return list->changeBgs; } static struct PokenavMonList *GetMonRibbonMonListData(void) { - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - return ptr->monList->monData; + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + return list->monList->monData; } static s32 GetRibbonsMonListCount(void) { - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - return ptr->monList->listCount; + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + return list->monList->listCount; } //unused static s32 GetMonRibbonSelectedMonData(void) { - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); s32 idx = GetSelectedPokenavListIndex(); - return ptr->monList->monData[idx].data; + return list->monList->monData[idx].data; } static s32 GetRibbonListMenuCurrIndex(void) { - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - return ptr->monList->currIndex; + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + return list->monList->currIndex; } static u32 GetMonRibbonListLoopTaskFunc(s32 state) @@ -249,10 +249,10 @@ static u32 BuildPartyMonRibbonList(s32 state) { s32 i; struct PokenavMonList item; - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - ptr->monList->listCount = 0; - ptr->monList->currIndex = 0; + list->monList->listCount = 0; + list->monList->currIndex = 0; item.boxId = TOTAL_BOXES_COUNT; for (i = 0; i < PARTY_SIZE; i++) { @@ -266,7 +266,7 @@ static u32 BuildPartyMonRibbonList(s32 state) { item.monId = i; item.data = ribbonCount; - sub_81CFCEC(ptr, &item); + InsertMonListItem(list, &item); } } } @@ -276,17 +276,17 @@ static u32 BuildPartyMonRibbonList(s32 state) static u32 InitBoxMonRibbonList(s32 state) { - struct PokenavSub9 *ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - ptr->monId = 0; - ptr->boxId = 0; + struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + list->monId = 0; + list->boxId = 0; return LT_INC_AND_CONTINUE; } static u32 BuildBoxMonRibbonList(s32 state) { - struct PokenavSub9 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - s32 boxId = ptr->boxId; - s32 monId = ptr->monId; + struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); + s32 boxId = list->boxId; + s32 monId = list->monId; s32 boxCount = 0; struct PokenavMonList item; @@ -302,15 +302,15 @@ static u32 BuildBoxMonRibbonList(s32 state) item.boxId = boxId; item.monId = monId; item.data = ribbonCount; - sub_81CFCEC(ptr, &item); + InsertMonListItem(list, &item); } } boxCount++; monId++; if (boxCount > TOTAL_BOXES_COUNT) { - ptr->boxId = boxId; - ptr->monId = monId; + list->boxId = boxId; + list->monId = monId; return LT_CONTINUE; } } @@ -318,28 +318,28 @@ static u32 BuildBoxMonRibbonList(s32 state) boxId++; } - ptr->changeBgs = 1; + list->changeBgs = 1; return LT_FINISH; } -static void sub_81CFCEC(struct PokenavSub9 *structPtr, struct PokenavMonList *item) +static void InsertMonListItem(struct Pokenav_RibbonsMonList *list, struct PokenavMonList *item) { u32 left = 0; - u32 right = structPtr->monList->listCount; + u32 right = list->monList->listCount; u32 insertionIdx = left + (right - left) / 2; while (right != insertionIdx) { - if (item->data > structPtr->monList->monData[insertionIdx].data) + if (item->data > list->monList->monData[insertionIdx].data) right = insertionIdx; else left = insertionIdx + 1; insertionIdx = left + (right - left) / 2; } - for (right = structPtr->monList->listCount; right > insertionIdx; right--) - structPtr->monList->monData[right] = structPtr->monList->monData[right - 1]; - structPtr->monList->monData[insertionIdx] = *item; - structPtr->monList->listCount++; + for (right = list->monList->listCount; right > insertionIdx; right--) + list->monList->monData[right] = list->monList->monData[right - 1]; + list->monList->monData[insertionIdx] = *item; + list->monList->listCount++; } // Unused @@ -374,62 +374,62 @@ static bool32 PlayerHasRibbonsMon(void) bool32 OpenRibbonsMonList(void) { - struct PokenavSub10 *ptr = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU, sizeof(struct PokenavSub10)); - if (ptr == NULL) + struct Pokenav_RibbonsMonMenu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU, sizeof(struct Pokenav_RibbonsMonMenu)); + if (menu == NULL) return FALSE; - ptr->ltid = CreateLoopedTask(LoopedTask_OpenRibbonsMonList, 1); - ptr->callback = GetRibbonsMonCurrentLoopedTaskActive; - ptr->fromSummary = FALSE; + menu->loopedTaskId = CreateLoopedTask(LoopedTask_OpenRibbonsMonList, 1); + menu->callback = GetRibbonsMonCurrentLoopedTaskActive; + menu->fromSummary = FALSE; return TRUE; } bool32 OpenRibbonsMonListFromRibbonsSummary(void) { - struct PokenavSub10 *monMenu = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU, sizeof(struct PokenavSub10)); - if (monMenu == NULL) + struct Pokenav_RibbonsMonMenu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU, sizeof(struct Pokenav_RibbonsMonMenu)); + if (menu == NULL) return FALSE; - monMenu->ltid = CreateLoopedTask(LoopedTask_OpenRibbonsMonList, 1); - monMenu->callback = GetRibbonsMonCurrentLoopedTaskActive; - monMenu->fromSummary = TRUE; + menu->loopedTaskId = CreateLoopedTask(LoopedTask_OpenRibbonsMonList, 1); + menu->callback = GetRibbonsMonCurrentLoopedTaskActive; + menu->fromSummary = TRUE; return TRUE; } void CreateRibbonsMonListLoopedTask(s32 idx) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); - monMenu->ltid = CreateLoopedTask(sRibbonsMonMenuLoopTaskFuncs[idx], 1); - monMenu->callback = GetRibbonsMonCurrentLoopedTaskActive; + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + menu->loopedTaskId = CreateLoopedTask(sRibbonsMonMenuLoopTaskFuncs[idx], 1); + menu->callback = GetRibbonsMonCurrentLoopedTaskActive; } bool32 IsRibbonsMonListLoopedTaskActive(void) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); - return monMenu->callback(); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + return menu->callback(); } bool32 GetRibbonsMonCurrentLoopedTaskActive(void) { - struct PokenavSub10 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); - return IsLoopedTaskActive(ptr->ltid); + struct Pokenav_RibbonsMonMenu * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + return IsLoopedTaskActive(menu->loopedTaskId); } -void FreeRibbonsMonList2(void) +void FreeRibbonsMonMenu(void) { - struct PokenavSub10 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); sub_81C8234(); - RemoveWindow(ptr->winid); + RemoveWindow(menu->winid); FreePokenavSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); } static u32 LoopedTask_OpenRibbonsMonList(s32 state) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); switch (state) { case 0: InitBgTemplates(sMonRibbonListBgTemplates, ARRAY_COUNT(sMonRibbonListBgTemplates)); DecompressAndCopyTileDataToVram(1, sMonRibbonListFrameTiles, 0, 0, 0); - SetBgTilemapBuffer(1, monMenu->buff); + SetBgTilemapBuffer(1, menu->buff); CopyToBgTilemapBuffer(1, sMonRibbonListFrameTilemap, 0, 0); CopyPaletteIntoBufferUnfaded(sMonRibbonListFramePal, 0x10, 0x20); CopyBgTilemapBufferToVram(1); @@ -452,7 +452,7 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) case 3: if (sub_81C8224()) return LT_PAUSE; - AddRibbonsMonListWindow(monMenu); + AddRibbonsMonListWindow(menu); return LT_INC_AND_PAUSE; case 4: if (FreeTempTileDataBuffersIfPossible()) @@ -461,7 +461,7 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) HideBg(3); PrintHelpBarText(HELPBAR_RIBBONS_MON_LIST); PokenavFadeScreen(1); - if (!monMenu->fromSummary) + if (!menu->fromSummary) { LoadLeftHeaderGfxForIndex(POKENAV_GFX_RIBBONS_MENU); ShowLeftHeaderGfx(POKENAV_GFX_RIBBONS_MENU, 1, 0); @@ -479,7 +479,7 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); switch (state) { case 0: @@ -500,7 +500,7 @@ static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) return LT_PAUSE; // fallthrough case 2: - sub_81D0288(monMenu); + UpdateIndexNumberDisplay(menu); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -512,7 +512,7 @@ static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); switch (state) { case 0: @@ -533,7 +533,7 @@ static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) return LT_PAUSE; // fallthrough case 2: - sub_81D0288(monMenu); + UpdateIndexNumberDisplay(menu); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -545,7 +545,7 @@ static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) static u32 LoopedTask_RibbonsListMovePageUp(s32 state) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); switch (state) { case 0: @@ -566,7 +566,7 @@ static u32 LoopedTask_RibbonsListMovePageUp(s32 state) return LT_PAUSE; // fallthrough case 2: - sub_81D0288(monMenu); + UpdateIndexNumberDisplay(menu); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -578,7 +578,7 @@ static u32 LoopedTask_RibbonsListMovePageUp(s32 state) static u32 LoopedTask_RibbonsListMovePageDown(s32 state) { - struct PokenavSub10 *monMenu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); + struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); switch (state) { case 0: @@ -599,7 +599,7 @@ static u32 LoopedTask_RibbonsListMovePageDown(s32 state) return LT_PAUSE; // fallthrough case 2: - sub_81D0288(monMenu); + UpdateIndexNumberDisplay(menu); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -645,34 +645,34 @@ static u32 LoopedTask_RibbonsListOpenSummary(s32 state) return LT_FINISH; } -static void AddRibbonsMonListWindow(struct PokenavSub10 *monMenu) +static void AddRibbonsMonListWindow(struct Pokenav_RibbonsMonMenu *menu) { - s32 r2; - monMenu->winid = AddWindow(&sRibbonsMonListWindowTemplate); - PutWindowTilemap(monMenu->winid); - r2 = GetRibbonsMonListCount(); - sub_81D02B0(monMenu->winid, 0, r2); - CopyWindowToVram(monMenu->winid, COPYWIN_MAP); - sub_81D0288(monMenu); + s32 listCount; + menu->winid = AddWindow(&sRibbonsMonListWindowTemplate); + PutWindowTilemap(menu->winid); + listCount = GetRibbonsMonListCount(); + DrawListIndexNumber(menu->winid, 0, listCount); + CopyWindowToVram(menu->winid, COPYWIN_MAP); + UpdateIndexNumberDisplay(menu); } -static void sub_81D0288(struct PokenavSub10 *monMenu) +static void UpdateIndexNumberDisplay(struct Pokenav_RibbonsMonMenu *menu) { - s32 r4 = GetSelectedPokenavListIndex(); - s32 r2 = GetRibbonsMonListCount(); - sub_81D02B0(monMenu->winid, r4 + 1, r2); - CopyWindowToVram(monMenu->winid, COPYWIN_GFX); + s32 listIndex = GetSelectedPokenavListIndex(); + s32 listCount = GetRibbonsMonListCount(); + DrawListIndexNumber(menu->winid, listIndex + 1, listCount); + CopyWindowToVram(menu->winid, COPYWIN_GFX); } -static void sub_81D02B0(s32 windowId, s32 val1, s32 val2) +static void DrawListIndexNumber(s32 windowId, s32 index, s32 max) { u8 strbuf[16]; u32 x; u8 * ptr = strbuf; - ptr = ConvertIntToDecimalStringN(ptr, val1, STR_CONV_MODE_RIGHT_ALIGN, 3); + ptr = ConvertIntToDecimalStringN(ptr, index, STR_CONV_MODE_RIGHT_ALIGN, 3); *ptr++ = CHAR_SLASH; - ConvertIntToDecimalStringN(ptr, val2, STR_CONV_MODE_RIGHT_ALIGN, 3); + ConvertIntToDecimalStringN(ptr, max, STR_CONV_MODE_RIGHT_ALIGN, 3); x = GetStringCenterAlignXOffset(FONT_NORMAL, strbuf, 56); AddTextPrinterParameterized(windowId, FONT_NORMAL, strbuf, x, 1, TEXT_SKIP_DRAW, NULL); } diff --git a/src/pokenav_ribbons_2.c b/src/pokenav_ribbons_summary.c similarity index 67% rename from src/pokenav_ribbons_2.c rename to src/pokenav_ribbons_summary.c index ef08ba3927ea..a7a27ee31fd5 100644 --- a/src/pokenav_ribbons_2.c +++ b/src/pokenav_ribbons_summary.c @@ -39,7 +39,7 @@ enum #define MON_SPRITE_X_OFF -32 #define MON_SPRITE_Y 104 -struct PokenavSub13 +struct Pokenav_RibbonsSummaryList { u8 unused1[8]; struct PokenavSub18 *monList; @@ -50,10 +50,10 @@ struct PokenavSub13 u32 ribbonIds[FIRST_GIFT_RIBBON]; u32 giftRibbonIds[NUM_GIFT_RIBBONS]; u32 unused2; - u32 (*callback)(struct PokenavSub13 *); + u32 (*callback)(struct Pokenav_RibbonsSummaryList *); }; -struct PokenavSub14 +struct Pokenav_RibbonsSummaryMenu { u32 (*callback)(void); u32 loopedTaskId; @@ -71,31 +71,31 @@ struct PokenavSub14 static u32 sRibbonDraw_Total; static u32 sRibbonDraw_Current; -static void PrintCurrentMonRibbonCount(struct PokenavSub14 *); -static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *); -static void PrintRibbonsMonListIndex(struct PokenavSub14 *); -static void ZoomOutSelectedRibbon(struct PokenavSub14 *); -static void UpdateAndZoomInSelectedRibbon(struct PokenavSub14 *); -static void PrintRibbonNameAndDescription(struct PokenavSub14 *); -static void ResetSpritesAndDrawMonFrontPic(struct PokenavSub14 *); -static void AddRibbonListIndexWindow(struct PokenavSub14 *); -static void DestroyRibbonsMonFrontPic(struct PokenavSub14 *); -static void SlideMonSpriteOff(struct PokenavSub14 *); -static void SlideMonSpriteOn(struct PokenavSub14 *); -static void AddRibbonCountWindow(struct PokenavSub14 *); -static void CreateBigRibbonSprite(struct PokenavSub14 *); -static void AddRibbonSummaryMonNameWindow(struct PokenavSub14 *); -static void DrawAllRibbonsSmall(struct PokenavSub14 *); -static bool32 IsRibbonAnimating(struct PokenavSub14 *); -static bool32 IsMonSpriteAnimating(struct PokenavSub14 *); -static void GetMonRibbons(struct PokenavSub13 *); -static u32 HandleExpandedRibbonInput(struct PokenavSub13 *); -static u32 RibbonsSummaryHandleInput(struct PokenavSub13 *); -static u32 ReturnToRibbonsListFromSummary(struct PokenavSub13 *); -static bool32 TrySelectRibbonUp(struct PokenavSub13 *); -static bool32 TrySelectRibbonRight(struct PokenavSub13 *); -static bool32 TrySelectRibbonLeft(struct PokenavSub13 *); -static bool32 TrySelectRibbonDown(struct PokenavSub13 *); +static void PrintCurrentMonRibbonCount(struct Pokenav_RibbonsSummaryMenu *); +static void PrintRibbbonsSummaryMonInfo(struct Pokenav_RibbonsSummaryMenu *); +static void PrintRibbonsMonListIndex(struct Pokenav_RibbonsSummaryMenu *); +static void ZoomOutSelectedRibbon(struct Pokenav_RibbonsSummaryMenu *); +static void UpdateAndZoomInSelectedRibbon(struct Pokenav_RibbonsSummaryMenu *); +static void PrintRibbonNameAndDescription(struct Pokenav_RibbonsSummaryMenu *); +static void ResetSpritesAndDrawMonFrontPic(struct Pokenav_RibbonsSummaryMenu *); +static void AddRibbonListIndexWindow(struct Pokenav_RibbonsSummaryMenu *); +static void DestroyRibbonsMonFrontPic(struct Pokenav_RibbonsSummaryMenu *); +static void SlideMonSpriteOff(struct Pokenav_RibbonsSummaryMenu *); +static void SlideMonSpriteOn(struct Pokenav_RibbonsSummaryMenu *); +static void AddRibbonCountWindow(struct Pokenav_RibbonsSummaryMenu *); +static void CreateBigRibbonSprite(struct Pokenav_RibbonsSummaryMenu *); +static void AddRibbonSummaryMonNameWindow(struct Pokenav_RibbonsSummaryMenu *); +static void DrawAllRibbonsSmall(struct Pokenav_RibbonsSummaryMenu *); +static bool32 IsRibbonAnimating(struct Pokenav_RibbonsSummaryMenu *); +static bool32 IsMonSpriteAnimating(struct Pokenav_RibbonsSummaryMenu *); +static void GetMonRibbons(struct Pokenav_RibbonsSummaryList *); +static u32 HandleExpandedRibbonInput(struct Pokenav_RibbonsSummaryList *); +static u32 RibbonsSummaryHandleInput(struct Pokenav_RibbonsSummaryList *); +static u32 ReturnToRibbonsListFromSummary(struct Pokenav_RibbonsSummaryList *); +static bool32 TrySelectRibbonUp(struct Pokenav_RibbonsSummaryList *); +static bool32 TrySelectRibbonRight(struct Pokenav_RibbonsSummaryList *); +static bool32 TrySelectRibbonLeft(struct Pokenav_RibbonsSummaryList *); +static bool32 TrySelectRibbonDown(struct Pokenav_RibbonsSummaryList *); static bool32 GetCurrentLoopedTaskActive(void); static u32 GetRibbonsSummaryCurrentIndex(void); static u32 GetRibbonsSummaryMonListCount(void); @@ -186,16 +186,16 @@ static const LoopedTask sRibbonsSummaryMenuLoopTaskFuncs[] = bool32 PokenavCallback_Init_RibbonsSummaryMenu(void) { - struct PokenavSub13 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST, sizeof(struct PokenavSub13)); - if (structPtr == NULL) + struct Pokenav_RibbonsSummaryList *list = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST, sizeof(struct Pokenav_RibbonsSummaryList)); + if (list == NULL) return FALSE; - structPtr->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (structPtr->monList == NULL) + list->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + if (list->monList == NULL) return FALSE; - GetMonRibbons(structPtr); - structPtr->callback = RibbonsSummaryHandleInput; + GetMonRibbons(list); + list->callback = RibbonsSummaryHandleInput; gKeyRepeatContinueDelay = 3; gKeyRepeatStartDelay = 10; return TRUE; @@ -203,8 +203,8 @@ bool32 PokenavCallback_Init_RibbonsSummaryMenu(void) u32 GetRibbonsSummaryMenuCallback(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - return structPtr->callback(structPtr); + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + return list->callback(list); } void FreeRibbonsSummaryScreen1(void) @@ -213,150 +213,150 @@ void FreeRibbonsSummaryScreen1(void) } // Handles input when a specific ribbon is not currently selected -static u32 RibbonsSummaryHandleInput(struct PokenavSub13 *structPtr) +static u32 RibbonsSummaryHandleInput(struct Pokenav_RibbonsSummaryList *list) { // Handle Up/Down movement to select a new PokĂ©mon to show ribbons for - if (JOY_REPEAT(DPAD_UP) && structPtr->monList->currIndex != 0) + if (JOY_REPEAT(DPAD_UP) && list->monList->currIndex != 0) { - structPtr->monList->currIndex--; - structPtr->selectedPos = 0; - GetMonRibbons(structPtr); + list->monList->currIndex--; + list->selectedPos = 0; + GetMonRibbons(list); return RIBBONS_SUMMARY_FUNC_SWITCH_MONS; } - if (JOY_REPEAT(DPAD_DOWN) && structPtr->monList->currIndex < structPtr->monList->listCount - 1) + if (JOY_REPEAT(DPAD_DOWN) && list->monList->currIndex < list->monList->listCount - 1) { - structPtr->monList->currIndex++; - structPtr->selectedPos = 0; - GetMonRibbons(structPtr); + list->monList->currIndex++; + list->selectedPos = 0; + GetMonRibbons(list); return RIBBONS_SUMMARY_FUNC_SWITCH_MONS; } if (JOY_NEW(A_BUTTON)) { // Enter ribbon selection - structPtr->callback = HandleExpandedRibbonInput; + list->callback = HandleExpandedRibbonInput; return RIBBONS_SUMMARY_FUNC_SELECT_RIBBON; } if (JOY_NEW(B_BUTTON)) { // Exit ribbon summary menu - structPtr->callback = ReturnToRibbonsListFromSummary; + list->callback = ReturnToRibbonsListFromSummary; return RIBBONS_SUMMARY_FUNC_EXIT; } return RIBBONS_SUMMARY_FUNC_NONE; } // Handles input when a ribbon is selected -static u32 HandleExpandedRibbonInput(struct PokenavSub13 *structPtr) +static u32 HandleExpandedRibbonInput(struct Pokenav_RibbonsSummaryList *list) { // Handle movement while a ribbon is selected - if (JOY_REPEAT(DPAD_UP) && TrySelectRibbonUp(structPtr)) + if (JOY_REPEAT(DPAD_UP) && TrySelectRibbonUp(list)) return RIBBONS_SUMMARY_FUNC_EXPANDED_CURSOR_MOVE; - if (JOY_REPEAT(DPAD_DOWN) && TrySelectRibbonDown(structPtr)) + if (JOY_REPEAT(DPAD_DOWN) && TrySelectRibbonDown(list)) return RIBBONS_SUMMARY_FUNC_EXPANDED_CURSOR_MOVE; - if (JOY_REPEAT(DPAD_LEFT) && TrySelectRibbonLeft(structPtr)) + if (JOY_REPEAT(DPAD_LEFT) && TrySelectRibbonLeft(list)) return RIBBONS_SUMMARY_FUNC_EXPANDED_CURSOR_MOVE; - if (JOY_REPEAT(DPAD_RIGHT) && TrySelectRibbonRight(structPtr)) + if (JOY_REPEAT(DPAD_RIGHT) && TrySelectRibbonRight(list)) return RIBBONS_SUMMARY_FUNC_EXPANDED_CURSOR_MOVE; if (JOY_NEW(B_BUTTON)) { // Exit ribbon selection - structPtr->callback = RibbonsSummaryHandleInput; + list->callback = RibbonsSummaryHandleInput; return RIBBONS_SUMMARY_FUNC_EXPANDED_CANCEL; } return RIBBONS_SUMMARY_FUNC_NONE; } -static u32 ReturnToRibbonsListFromSummary(struct PokenavSub13 *structPtr) +static u32 ReturnToRibbonsListFromSummary(struct Pokenav_RibbonsSummaryList *list) { return POKENAV_RIBBONS_RETURN_TO_MON_LIST; } -static bool32 TrySelectRibbonUp(struct PokenavSub13 *structPtr) +static bool32 TrySelectRibbonUp(struct Pokenav_RibbonsSummaryList *list) { - if (structPtr->selectedPos < FIRST_GIFT_RIBBON) + if (list->selectedPos < FIRST_GIFT_RIBBON) { // In normal ribbons, try to move up a row - if (structPtr->selectedPos < RIBBONS_PER_ROW) + if (list->selectedPos < RIBBONS_PER_ROW) return FALSE; - structPtr->selectedPos -= RIBBONS_PER_ROW; + list->selectedPos -= RIBBONS_PER_ROW; return TRUE; } - if (structPtr->numNormalRibbons != 0) + if (list->numNormalRibbons != 0) { // In gift ribbons, try to move up into normal ribbons // If there's > 1 row of gift ribbons (not normally possible) // it's impossible to move up between them - u32 ribbonPos = structPtr->selectedPos - GIFT_RIBBON_START_POS; - structPtr->selectedPos = ribbonPos + structPtr->normalRibbonLastRowStart; - if (structPtr->selectedPos >= structPtr->numNormalRibbons) - structPtr->selectedPos = structPtr->numNormalRibbons - 1; + u32 ribbonPos = list->selectedPos - GIFT_RIBBON_START_POS; + list->selectedPos = ribbonPos + list->normalRibbonLastRowStart; + if (list->selectedPos >= list->numNormalRibbons) + list->selectedPos = list->numNormalRibbons - 1; return TRUE; } return FALSE; } -static bool32 TrySelectRibbonDown(struct PokenavSub13 *structPtr) +static bool32 TrySelectRibbonDown(struct Pokenav_RibbonsSummaryList *list) { - if (structPtr->selectedPos >= FIRST_GIFT_RIBBON) + if (list->selectedPos >= FIRST_GIFT_RIBBON) return FALSE; - if (structPtr->selectedPos < structPtr->normalRibbonLastRowStart) + if (list->selectedPos < list->normalRibbonLastRowStart) { // Not in last row of normal ribbons, advance to next row - structPtr->selectedPos += RIBBONS_PER_ROW; - if (structPtr->selectedPos >= structPtr->numNormalRibbons) - structPtr->selectedPos = structPtr->numNormalRibbons - 1; + list->selectedPos += RIBBONS_PER_ROW; + if (list->selectedPos >= list->numNormalRibbons) + list->selectedPos = list->numNormalRibbons - 1; return TRUE; } - if (structPtr->numGiftRibbons != 0) + if (list->numGiftRibbons != 0) { // In/beyond last of row of normal ribbons and gift ribbons present, move down to gift ribbon row - int ribbonPos = structPtr->selectedPos - structPtr->normalRibbonLastRowStart; - if (ribbonPos >= structPtr->numGiftRibbons) - ribbonPos = structPtr->numGiftRibbons - 1; + int ribbonPos = list->selectedPos - list->normalRibbonLastRowStart; + if (ribbonPos >= list->numGiftRibbons) + ribbonPos = list->numGiftRibbons - 1; - structPtr->selectedPos = ribbonPos + GIFT_RIBBON_START_POS; + list->selectedPos = ribbonPos + GIFT_RIBBON_START_POS; return TRUE; } return FALSE; } -static bool32 TrySelectRibbonLeft(struct PokenavSub13 *structPtr) +static bool32 TrySelectRibbonLeft(struct Pokenav_RibbonsSummaryList *list) { - u16 column = structPtr->selectedPos % RIBBONS_PER_ROW; + u16 column = list->selectedPos % RIBBONS_PER_ROW; if (column != 0) { - structPtr->selectedPos--; + list->selectedPos--; return TRUE; } return FALSE; } -static bool32 TrySelectRibbonRight(struct PokenavSub13 *structPtr) +static bool32 TrySelectRibbonRight(struct Pokenav_RibbonsSummaryList *list) { - int column = structPtr->selectedPos % RIBBONS_PER_ROW; + int column = list->selectedPos % RIBBONS_PER_ROW; if (column >= RIBBONS_PER_ROW - 1) return FALSE; - if (structPtr->selectedPos < GIFT_RIBBON_START_POS) + if (list->selectedPos < GIFT_RIBBON_START_POS) { // Move right in normal ribbon row - if (structPtr->selectedPos < structPtr->numNormalRibbons - 1) + if (list->selectedPos < list->numNormalRibbons - 1) { - structPtr->selectedPos++; + list->selectedPos++; return TRUE; } } else { // Move right in gift ribbon row - if (column < structPtr->numGiftRibbons - 1) + if (column < list->numGiftRibbons - 1) { - structPtr->selectedPos++; + list->selectedPos++; return TRUE; } } @@ -365,20 +365,20 @@ static bool32 TrySelectRibbonRight(struct PokenavSub13 *structPtr) static u32 GetRibbonsSummaryCurrentIndex(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - return structPtr->monList->currIndex; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + return list->monList->currIndex; } static u32 GetRibbonsSummaryMonListCount(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - return structPtr->monList->listCount; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + return list->monList->listCount; } static void GetMonNicknameLevelGender(u8 *nick, u8 *level, u8 *gender) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = structPtr->monList; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + struct PokenavSub18 *mons = list->monList; struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) @@ -402,8 +402,8 @@ static void GetMonNicknameLevelGender(u8 *nick, u8 *level, u8 *gender) static void GetMonSpeciesPersonalityOtId(u16 *species, u32 *personality, u32 *otId) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = structPtr->monList; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + struct PokenavSub18 *mons = list->monList; struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) @@ -426,8 +426,8 @@ static void GetMonSpeciesPersonalityOtId(u16 *species, u32 *personality, u32 *ot static u32 GetCurrMonRibbonCount(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = structPtr->monList; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + struct PokenavSub18 *mons = list->monList; struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) @@ -436,11 +436,11 @@ static u32 GetCurrMonRibbonCount(void) return GetBoxMonDataAt(monInfo->boxId, monInfo->monId, MON_DATA_RIBBON_COUNT); } -static void GetMonRibbons(struct PokenavSub13 *structPtr) +static void GetMonRibbons(struct Pokenav_RibbonsSummaryList *list) { u32 ribbonFlags; s32 i, j; - struct PokenavSub18 *mons = structPtr->monList; + struct PokenavSub18 *mons = list->monList; struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) @@ -448,8 +448,8 @@ static void GetMonRibbons(struct PokenavSub13 *structPtr) else ribbonFlags = GetBoxMonDataAt(monInfo->boxId, monInfo->monId, MON_DATA_RIBBONS); - structPtr->numNormalRibbons = 0; - structPtr->numGiftRibbons = 0; + list->numNormalRibbons = 0; + list->numGiftRibbons = 0; for (i = 0; i < ARRAY_COUNT(sRibbonData); i++) { // For all non-contest ribbons, numRibbons will be 1 if they have it, 0 if they don't @@ -458,119 +458,119 @@ static void GetMonRibbons(struct PokenavSub13 *structPtr) if (!sRibbonData[i].isGiftRibbon) { for (j = 0; j < numRibbons; j++) - structPtr->ribbonIds[structPtr->numNormalRibbons++] = sRibbonData[i].ribbonId + j; + list->ribbonIds[list->numNormalRibbons++] = sRibbonData[i].ribbonId + j; } else { for (j = 0; j < numRibbons; j++) - structPtr->giftRibbonIds[structPtr->numGiftRibbons++] = sRibbonData[i].ribbonId + j; + list->giftRibbonIds[list->numGiftRibbons++] = sRibbonData[i].ribbonId + j; } ribbonFlags >>= sRibbonData[i].numBits; } - if (structPtr->numNormalRibbons != 0) + if (list->numNormalRibbons != 0) { - structPtr->normalRibbonLastRowStart = ((structPtr->numNormalRibbons - 1) / RIBBONS_PER_ROW) * RIBBONS_PER_ROW; - structPtr->selectedPos = 0; + list->normalRibbonLastRowStart = ((list->numNormalRibbons - 1) / RIBBONS_PER_ROW) * RIBBONS_PER_ROW; + list->selectedPos = 0; } else { // There are no normal ribbons, move cursor to first gift ribbon - structPtr->normalRibbonLastRowStart = 0; - structPtr->selectedPos = GIFT_RIBBON_START_POS; + list->normalRibbonLastRowStart = 0; + list->selectedPos = GIFT_RIBBON_START_POS; } } static u32 *GetNormalRibbonIds(u32 *size) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - *size = structPtr->numNormalRibbons; - return structPtr->ribbonIds; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + *size = list->numNormalRibbons; + return list->ribbonIds; } static u32 *GetGiftRibbonIds(u32 *size) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - *size = structPtr->numGiftRibbons; - return structPtr->giftRibbonIds; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + *size = list->numGiftRibbons; + return list->giftRibbonIds; } static u16 GetSelectedPosition(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - return structPtr->selectedPos; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + return list->selectedPos; } static u32 GetRibbonId(void) { - struct PokenavSub13 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - int ribbonPos = structPtr->selectedPos; + struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); + int ribbonPos = list->selectedPos; if (ribbonPos < FIRST_GIFT_RIBBON) - return structPtr->ribbonIds[ribbonPos]; + return list->ribbonIds[ribbonPos]; else - return structPtr->giftRibbonIds[ribbonPos - GIFT_RIBBON_START_POS]; + return list->giftRibbonIds[ribbonPos - GIFT_RIBBON_START_POS]; } bool32 OpenRibbonsSummaryMenu(void) { - struct PokenavSub14 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU, sizeof(struct PokenavSub14)); - if (structPtr == NULL) + struct Pokenav_RibbonsSummaryMenu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU, sizeof(struct Pokenav_RibbonsSummaryMenu)); + if (menu == NULL) return FALSE; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_OpenRibbonsSummaryMenu, 1); - structPtr->callback = GetCurrentLoopedTaskActive; + menu->loopedTaskId = CreateLoopedTask(LoopedTask_OpenRibbonsSummaryMenu, 1); + menu->callback = GetCurrentLoopedTaskActive; return TRUE; } void CreateRibbonsSummaryLoopedTask(s32 id) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); - structPtr->loopedTaskId = CreateLoopedTask(sRibbonsSummaryMenuLoopTaskFuncs[id], 1); - structPtr->callback = GetCurrentLoopedTaskActive; + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + menu->loopedTaskId = CreateLoopedTask(sRibbonsSummaryMenuLoopTaskFuncs[id], 1); + menu->callback = GetCurrentLoopedTaskActive; } u32 IsRibbonsSummaryLoopedTaskActive(void) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); - return structPtr->callback(); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + return menu->callback(); } void FreeRibbonsSummaryScreen2(void) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); - RemoveWindow(structPtr->ribbonCountWindowId); - RemoveWindow(structPtr->nameWindowId); - RemoveWindow(structPtr->listIdxWindowId); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + RemoveWindow(menu->ribbonCountWindowId); + RemoveWindow(menu->nameWindowId); + RemoveWindow(menu->listIdxWindowId); #ifndef BUGFIX - RemoveWindow(structPtr->unusedWindowId); // Removing window, but window id is never set + RemoveWindow(menu->unusedWindowId); // Removing window, but window id is never set #endif - DestroyRibbonsMonFrontPic(structPtr); + DestroyRibbonsMonFrontPic(menu); FreeSpriteTilesByTag(GFXTAG_RIBBON_ICONS_BIG); FreeSpritePaletteByTag(PALTAG_RIBBON_ICONS_1); FreeSpritePaletteByTag(PALTAG_RIBBON_ICONS_2); FreeSpritePaletteByTag(PALTAG_RIBBON_ICONS_3); FreeSpritePaletteByTag(PALTAG_RIBBON_ICONS_4); FreeSpritePaletteByTag(PALTAG_RIBBON_ICONS_5); - FreeSpriteOamMatrix(structPtr->bigRibbonSprite); - DestroySprite(structPtr->bigRibbonSprite); + FreeSpriteOamMatrix(menu->bigRibbonSprite); + DestroySprite(menu->bigRibbonSprite); FreePokenavSubstruct(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); } static bool32 GetCurrentLoopedTaskActive(void) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); - return IsLoopedTaskActive(structPtr->loopedTaskId); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + return IsLoopedTaskActive(menu->loopedTaskId); } static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); switch (state) { case 0: InitBgTemplates(sBgTemplates, ARRAY_COUNT(sBgTemplates)); DecompressAndCopyTileDataToVram(2, gPokenavRibbonsSummaryBg_Gfx, 0, 0, 0); - SetBgTilemapBuffer(2, structPtr->tilemapBuffers[0]); + SetBgTilemapBuffer(2, menu->tilemapBuffers[0]); CopyToBgTilemapBuffer(2, gPokenavRibbonsSummaryBg_Tilemap, 0, 0); CopyPaletteIntoBufferUnfaded(gPokenavRibbonsSummaryBg_Pal, 0x10, 0x20); CopyBgTilemapBufferToVram(2); @@ -580,7 +580,7 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) { BgDmaFill(1, 0, 0, 1); DecompressAndCopyTileDataToVram(1, sRibbonIconsSmall_Gfx, 0, 1, 0); - SetBgTilemapBuffer(1, structPtr->tilemapBuffers[1]); + SetBgTilemapBuffer(1, menu->tilemapBuffers[1]); FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 32, 20); CopyPaletteIntoBufferUnfaded(sRibbonIcons1_Pal, 0x20, 0xA0); CopyPaletteIntoBufferUnfaded(sMonInfo_Pal, 0xA0, 0x20); @@ -591,21 +591,21 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) case 2: if (!FreeTempTileDataBuffersIfPossible()) { - AddRibbonCountWindow(structPtr); + AddRibbonCountWindow(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; case 3: if (!FreeTempTileDataBuffersIfPossible()) { - AddRibbonSummaryMonNameWindow(structPtr); + AddRibbonSummaryMonNameWindow(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; case 4: if (!FreeTempTileDataBuffersIfPossible()) { - AddRibbonListIndexWindow(structPtr); + AddRibbonListIndexWindow(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; @@ -619,18 +619,18 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) case 6: if (!IsDma3ManagerBusyWithBgCopy()) { - ResetSpritesAndDrawMonFrontPic(structPtr); + ResetSpritesAndDrawMonFrontPic(menu); return LT_INC_AND_CONTINUE; } return LT_PAUSE; case 7: - DrawAllRibbonsSmall(structPtr); + DrawAllRibbonsSmall(menu); PrintHelpBarText(HELPBAR_RIBBONS_LIST); return LT_INC_AND_PAUSE; case 8: if (!IsDma3ManagerBusyWithBgCopy()) { - CreateBigRibbonSprite(structPtr); + CreateBigRibbonSprite(menu); ChangeBgX(1, 0, BG_COORD_SET); ChangeBgY(1, 0, BG_COORD_SET); ChangeBgX(2, 0, BG_COORD_SET); @@ -667,38 +667,38 @@ static u32 LoopedTask_ExitRibbonsSummaryMenu(s32 state) static u32 LoopedTask_SwitchRibbonsSummaryMon(s32 state) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); switch (state) { case 0: PlaySE(SE_SELECT); - SlideMonSpriteOff(structPtr); + SlideMonSpriteOff(menu); return LT_INC_AND_PAUSE; case 1: - if (!IsMonSpriteAnimating(structPtr)) + if (!IsMonSpriteAnimating(menu)) { - PrintRibbbonsSummaryMonInfo(structPtr); + PrintRibbbonsSummaryMonInfo(menu); return LT_INC_AND_CONTINUE; } return LT_PAUSE; case 2: - DrawAllRibbonsSmall(structPtr); + DrawAllRibbonsSmall(menu); return LT_INC_AND_CONTINUE; case 3: - PrintRibbonsMonListIndex(structPtr); + PrintRibbonsMonListIndex(menu); return LT_INC_AND_CONTINUE; case 4: - PrintCurrentMonRibbonCount(structPtr); + PrintCurrentMonRibbonCount(menu); return LT_INC_AND_CONTINUE; case 5: if (!IsDma3ManagerBusyWithBgCopy()) { - SlideMonSpriteOn(structPtr); + SlideMonSpriteOn(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; case 6: - if (IsMonSpriteAnimating(structPtr)) + if (IsMonSpriteAnimating(menu)) return LT_PAUSE; } return LT_FINISH; @@ -706,17 +706,17 @@ static u32 LoopedTask_SwitchRibbonsSummaryMon(s32 state) static u32 LoopedTask_ExpandSelectedRibbon(s32 state) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); switch (state) { case 0: PlaySE(SE_SELECT); - UpdateAndZoomInSelectedRibbon(structPtr); + UpdateAndZoomInSelectedRibbon(menu); return LT_INC_AND_PAUSE; case 1: - if (!IsRibbonAnimating(structPtr)) + if (!IsRibbonAnimating(menu)) { - PrintRibbonNameAndDescription(structPtr); + PrintRibbonNameAndDescription(menu); PrintHelpBarText(HELPBAR_RIBBONS_CHECK); return LT_INC_AND_PAUSE; } @@ -730,24 +730,24 @@ static u32 LoopedTask_ExpandSelectedRibbon(s32 state) static u32 LoopedTask_MoveRibbonsCursorExpanded(s32 state) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); switch (state) { case 0: PlaySE(SE_SELECT); - ZoomOutSelectedRibbon(structPtr); + ZoomOutSelectedRibbon(menu); return LT_INC_AND_PAUSE; case 1: - if (!IsRibbonAnimating(structPtr)) + if (!IsRibbonAnimating(menu)) { - UpdateAndZoomInSelectedRibbon(structPtr); + UpdateAndZoomInSelectedRibbon(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; case 2: - if (!IsRibbonAnimating(structPtr)) + if (!IsRibbonAnimating(menu)) { - PrintRibbonNameAndDescription(structPtr); + PrintRibbonNameAndDescription(menu); return LT_INC_AND_PAUSE; } return LT_PAUSE; @@ -760,17 +760,17 @@ static u32 LoopedTask_MoveRibbonsCursorExpanded(s32 state) static u32 LoopedTask_ShrinkExpandedRibbon(s32 state) { - struct PokenavSub14 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); + struct Pokenav_RibbonsSummaryMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU); switch (state) { case 0: PlaySE(SE_SELECT); - ZoomOutSelectedRibbon(structPtr); + ZoomOutSelectedRibbon(menu); return LT_INC_AND_PAUSE; case 1: - if (!IsRibbonAnimating(structPtr)) + if (!IsRibbonAnimating(menu)) { - PrintCurrentMonRibbonCount(structPtr); + PrintCurrentMonRibbonCount(menu); PrintHelpBarText(HELPBAR_RIBBONS_LIST); return LT_INC_AND_PAUSE; } @@ -793,14 +793,14 @@ static const struct WindowTemplate sRibbonCountWindowTemplate = .baseBlock = 0x14, }; -static void AddRibbonCountWindow(struct PokenavSub14 *structPtr) +static void AddRibbonCountWindow(struct Pokenav_RibbonsSummaryMenu *menu) { - structPtr->ribbonCountWindowId = AddWindow(&sRibbonCountWindowTemplate); - PutWindowTilemap(structPtr->ribbonCountWindowId); - PrintCurrentMonRibbonCount(structPtr); + menu->ribbonCountWindowId = AddWindow(&sRibbonCountWindowTemplate); + PutWindowTilemap(menu->ribbonCountWindowId); + PrintCurrentMonRibbonCount(menu); } -static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) +static void PrintCurrentMonRibbonCount(struct Pokenav_RibbonsSummaryMenu *menu) { u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; @@ -808,23 +808,23 @@ static void PrintCurrentMonRibbonCount(struct PokenavSub14 *structPtr) DynamicPlaceholderTextUtil_Reset(); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_RibbonsF700); - FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, TEXT_SKIP_DRAW, gStringVar4); - CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); + FillWindowPixelBuffer(menu->ribbonCountWindowId, PIXEL_FILL(4)); + AddTextPrinterParameterized3(menu->ribbonCountWindowId, FONT_NORMAL, 0, 1, color, TEXT_SKIP_DRAW, gStringVar4); + CopyWindowToVram(menu->ribbonCountWindowId, COPYWIN_GFX); } -static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) +static void PrintRibbonNameAndDescription(struct Pokenav_RibbonsSummaryMenu *menu) { s32 i; u32 ribbonId = GetRibbonId(); u8 color[] = {TEXT_COLOR_RED, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; - FillWindowPixelBuffer(structPtr->ribbonCountWindowId, PIXEL_FILL(4)); + FillWindowPixelBuffer(menu->ribbonCountWindowId, PIXEL_FILL(4)); if (ribbonId < FIRST_GIFT_RIBBON) { // Print normal ribbon name/description for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(menu->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gRibbonDescriptionPointers[ribbonId][i]); } else { @@ -840,10 +840,10 @@ static void PrintRibbonNameAndDescription(struct PokenavSub14 *structPtr) // Print gift ribbon name/description ribbonId--; for (i = 0; i < 2; i++) - AddTextPrinterParameterized3(structPtr->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gGiftRibbonDescriptionPointers[ribbonId][i]); + AddTextPrinterParameterized3(menu->ribbonCountWindowId, FONT_NORMAL, 0, (i * 16) + 1, color, TEXT_SKIP_DRAW, gGiftRibbonDescriptionPointers[ribbonId][i]); } - CopyWindowToVram(structPtr->ribbonCountWindowId, COPYWIN_GFX); + CopyWindowToVram(menu->ribbonCountWindowId, COPYWIN_GFX); } static const struct WindowTemplate sRibbonSummaryMonNameWindowTemplate = @@ -857,23 +857,23 @@ static const struct WindowTemplate sRibbonSummaryMonNameWindowTemplate = .baseBlock = 0x54, }; -static void AddRibbonSummaryMonNameWindow(struct PokenavSub14 *structPtr) +static void AddRibbonSummaryMonNameWindow(struct Pokenav_RibbonsSummaryMenu *menu) { - structPtr->nameWindowId = AddWindow(&sRibbonSummaryMonNameWindowTemplate); - PutWindowTilemap(structPtr->nameWindowId); - PrintRibbbonsSummaryMonInfo(structPtr); + menu->nameWindowId = AddWindow(&sRibbonSummaryMonNameWindowTemplate); + PutWindowTilemap(menu->nameWindowId); + PrintRibbbonsSummaryMonInfo(menu); } static const u8 sMaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); static const u8 sFemaleIconString[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GRAY}{WHITE}{LIGHT_GRAY}"); static const u8 sGenderlessIconString[] = _("{UNK_SPACER}"); -static void PrintRibbbonsSummaryMonInfo(struct PokenavSub14 *structPtr) +static void PrintRibbbonsSummaryMonInfo(struct Pokenav_RibbonsSummaryMenu *menu) { const u8 *genderTxt; u8 *txtPtr; u8 level, gender; - u16 windowId = structPtr->nameWindowId; + u16 windowId = menu->nameWindowId; FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); GetMonNicknameLevelGender(gStringVar3, &level, &gender); @@ -914,15 +914,15 @@ static const struct WindowTemplate sRibbonMonListIndexWindowTemplate[] = {}, }; -static void AddRibbonListIndexWindow(struct PokenavSub14 *structPtr) +static void AddRibbonListIndexWindow(struct Pokenav_RibbonsSummaryMenu *menu) { - structPtr->listIdxWindowId = AddWindow(sRibbonMonListIndexWindowTemplate); - FillWindowPixelBuffer(structPtr->listIdxWindowId, PIXEL_FILL(1)); - PutWindowTilemap(structPtr->listIdxWindowId); - PrintRibbonsMonListIndex(structPtr); + menu->listIdxWindowId = AddWindow(sRibbonMonListIndexWindowTemplate); + FillWindowPixelBuffer(menu->listIdxWindowId, PIXEL_FILL(1)); + PutWindowTilemap(menu->listIdxWindowId); + PrintRibbonsMonListIndex(menu); } -static void PrintRibbonsMonListIndex(struct PokenavSub14 *structPtr) +static void PrintRibbonsMonListIndex(struct Pokenav_RibbonsSummaryMenu *menu) { s32 x; u8 *txtPtr; @@ -933,24 +933,24 @@ static void PrintRibbonsMonListIndex(struct PokenavSub14 *structPtr) *(txtPtr++) = CHAR_SLASH; ConvertIntToDecimalStringN(txtPtr, count, STR_CONV_MODE_RIGHT_ALIGN, 3); x = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar1, 56); - AddTextPrinterParameterized(structPtr->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SKIP_DRAW, NULL); - CopyWindowToVram(structPtr->listIdxWindowId, COPYWIN_GFX); + AddTextPrinterParameterized(menu->listIdxWindowId, FONT_NORMAL, gStringVar1, x, 1, TEXT_SKIP_DRAW, NULL); + CopyWindowToVram(menu->listIdxWindowId, COPYWIN_GFX); } -static void ResetSpritesAndDrawMonFrontPic(struct PokenavSub14 *structPtr) +static void ResetSpritesAndDrawMonFrontPic(struct Pokenav_RibbonsSummaryMenu *menu) { u16 species; u32 personality, otId; GetMonSpeciesPersonalityOtId(&species, &personality, &otId); ResetAllPicSprites(); - structPtr->monSpriteId = DrawRibbonsMonFrontPic(MON_SPRITE_X_ON, MON_SPRITE_Y); + menu->monSpriteId = DrawRibbonsMonFrontPic(MON_SPRITE_X_ON, MON_SPRITE_Y); PokenavFillPalette(15, 0); } -static void DestroyRibbonsMonFrontPic(struct PokenavSub14 *structPtr) +static void DestroyRibbonsMonFrontPic(struct Pokenav_RibbonsSummaryMenu *menu) { - FreeAndDestroyMonPicSprite(structPtr->monSpriteId); + FreeAndDestroyMonPicSprite(menu->monSpriteId); } // x and y arguments are ignored @@ -967,25 +967,25 @@ static u16 DrawRibbonsMonFrontPic(s32 x, s32 y) return spriteId; } -static void SlideMonSpriteOff(struct PokenavSub14 *structPtr) +static void SlideMonSpriteOff(struct Pokenav_RibbonsSummaryMenu *menu) { - StartMonSpriteSlide(&gSprites[structPtr->monSpriteId], MON_SPRITE_X_ON, MON_SPRITE_X_OFF, 6); + StartMonSpriteSlide(&gSprites[menu->monSpriteId], MON_SPRITE_X_ON, MON_SPRITE_X_OFF, 6); } -static void SlideMonSpriteOn(struct PokenavSub14 *structPtr) +static void SlideMonSpriteOn(struct Pokenav_RibbonsSummaryMenu *menu) { // Switch to new mon sprite - FreeAndDestroyMonPicSprite(structPtr->monSpriteId); - structPtr->monSpriteId = DrawRibbonsMonFrontPic(MON_SPRITE_X_OFF, MON_SPRITE_Y); + FreeAndDestroyMonPicSprite(menu->monSpriteId); + menu->monSpriteId = DrawRibbonsMonFrontPic(MON_SPRITE_X_OFF, MON_SPRITE_Y); // Slide on - StartMonSpriteSlide(&gSprites[structPtr->monSpriteId], MON_SPRITE_X_OFF, MON_SPRITE_X_ON, 6); + StartMonSpriteSlide(&gSprites[menu->monSpriteId], MON_SPRITE_X_OFF, MON_SPRITE_X_ON, 6); } // Is PokĂ©mon summary sprite still sliding off/on -static bool32 IsMonSpriteAnimating(struct PokenavSub14 *structPtr) +static bool32 IsMonSpriteAnimating(struct Pokenav_RibbonsSummaryMenu *menu) { - return (gSprites[structPtr->monSpriteId].callback != SpriteCallbackDummy); + return (gSprites[menu->monSpriteId].callback != SpriteCallbackDummy); } #define sCurrX data[0] @@ -1030,7 +1030,7 @@ static void SpriteCB_MonSpriteSlide(struct Sprite *sprite) #undef sTime #undef sDestX -static void DrawAllRibbonsSmall(struct PokenavSub14 *structPtr) +static void DrawAllRibbonsSmall(struct Pokenav_RibbonsSummaryMenu *menu) { u32 *ribbonIds; @@ -1211,7 +1211,7 @@ static const struct SpriteTemplate sSpriteTemplate_RibbonIconBig = }; // Create dummy sprite to be used for the zoomed in version of the selected ribbon -static void CreateBigRibbonSprite(struct PokenavSub14 *structPtr) +static void CreateBigRibbonSprite(struct Pokenav_RibbonsSummaryMenu *menu) { u8 spriteId; @@ -1219,45 +1219,45 @@ static void CreateBigRibbonSprite(struct PokenavSub14 *structPtr) Pokenav_AllocAndLoadPalettes(sSpritePalettes_RibbonIcons); spriteId = CreateSprite(&sSpriteTemplate_RibbonIconBig, 0, 0, 0); - structPtr->bigRibbonSprite = &gSprites[spriteId]; - structPtr->bigRibbonSprite->invisible = TRUE; + menu->bigRibbonSprite = &gSprites[spriteId]; + menu->bigRibbonSprite->invisible = TRUE; } #define sInvisibleWhenDone data[0] -static void UpdateAndZoomInSelectedRibbon(struct PokenavSub14 *structPtr) +static void UpdateAndZoomInSelectedRibbon(struct Pokenav_RibbonsSummaryMenu *menu) { u32 ribbonId; s32 position = GetSelectedPosition(); s32 x = (position % RIBBONS_PER_ROW) * 16 + 96; s32 y = (position / RIBBONS_PER_ROW) * 16 + 40; - structPtr->bigRibbonSprite->x = x; - structPtr->bigRibbonSprite->y = y; + menu->bigRibbonSprite->x = x; + menu->bigRibbonSprite->y = y; // Set new selected ribbon's gfx data ribbonId = GetRibbonId(); - structPtr->bigRibbonSprite->oam.tileNum = (sRibbonGfxData[ribbonId].tileNumOffset * 16) + GetSpriteTileStartByTag(GFXTAG_RIBBON_ICONS_BIG); - structPtr->bigRibbonSprite->oam.paletteNum = IndexOfSpritePaletteTag(sRibbonGfxData[ribbonId].palNumOffset + PALTAG_RIBBON_ICONS_1); + menu->bigRibbonSprite->oam.tileNum = (sRibbonGfxData[ribbonId].tileNumOffset * 16) + GetSpriteTileStartByTag(GFXTAG_RIBBON_ICONS_BIG); + menu->bigRibbonSprite->oam.paletteNum = IndexOfSpritePaletteTag(sRibbonGfxData[ribbonId].palNumOffset + PALTAG_RIBBON_ICONS_1); // Start zoom in animation - StartSpriteAffineAnim(structPtr->bigRibbonSprite, RIBBONANIM_ZOOM_IN); - structPtr->bigRibbonSprite->invisible = FALSE; - structPtr->bigRibbonSprite->sInvisibleWhenDone = FALSE; - structPtr->bigRibbonSprite->callback = SpriteCB_WaitForRibbonAnimation; + StartSpriteAffineAnim(menu->bigRibbonSprite, RIBBONANIM_ZOOM_IN); + menu->bigRibbonSprite->invisible = FALSE; + menu->bigRibbonSprite->sInvisibleWhenDone = FALSE; + menu->bigRibbonSprite->callback = SpriteCB_WaitForRibbonAnimation; } // Start animation to zoom out of selected ribbon -static void ZoomOutSelectedRibbon(struct PokenavSub14 *structPtr) +static void ZoomOutSelectedRibbon(struct Pokenav_RibbonsSummaryMenu *menu) { - structPtr->bigRibbonSprite->sInvisibleWhenDone = TRUE; - StartSpriteAffineAnim(structPtr->bigRibbonSprite, RIBBONANIM_ZOOM_OUT); - structPtr->bigRibbonSprite->callback = SpriteCB_WaitForRibbonAnimation; + menu->bigRibbonSprite->sInvisibleWhenDone = TRUE; + StartSpriteAffineAnim(menu->bigRibbonSprite, RIBBONANIM_ZOOM_OUT); + menu->bigRibbonSprite->callback = SpriteCB_WaitForRibbonAnimation; } -static bool32 IsRibbonAnimating(struct PokenavSub14 *structPtr) +static bool32 IsRibbonAnimating(struct Pokenav_RibbonsSummaryMenu *menu) { - return (structPtr->bigRibbonSprite->callback != SpriteCallbackDummy); + return (menu->bigRibbonSprite->callback != SpriteCallbackDummy); } static void SpriteCB_WaitForRibbonAnimation(struct Sprite *sprite) diff --git a/sym_bss.txt b/sym_bss.txt index 3166aee4552d..8724f02d7f41 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -51,7 +51,7 @@ .include "src/mirage_tower.o" .include "src/berry_fix_program.o" .include "src/pokenav_conditions_2.o" - .include "src/pokenav_ribbons_2.o" + .include "src/pokenav_ribbons_summary.o" .include "src/ereader_helpers.o" .include "src/faraway_island.o" .include "src/m4a_1.o" From 342b7da5d36460bb5780ea60da4b6b5be46ddc38 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Nov 2021 11:59:15 -0500 Subject: [PATCH 401/762] Fix CRY_MODE_ECHO --- include/constants/sound.h | 4 ++-- src/battle_anim_sound_tasks.c | 6 +++--- src/sound.c | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/constants/sound.h b/include/constants/sound.h index 40c3b7d58f5a..dc434bcf8a76 100644 --- a/include/constants/sound.h +++ b/include/constants/sound.h @@ -24,9 +24,9 @@ #define CRY_MODE_DOUBLES 1 // Shortened cry for double battles #define CRY_MODE_ENCOUNTER 2 // Used when starting a static encounter, or when a PokĂ©mon is "aggressive" #define CRY_MODE_HIGH_PITCH 3 // Highest pitch mode, used exclusively by the move Howl -#define CRY_MODE_ECHO_END 4 // For 2nd cry used by the move Hyper Voice. Played in reverse +#define CRY_MODE_ECHO_START 4 // For 1st half of cry used by the move Hyper Voice. Played in reverse #define CRY_MODE_FAINT 5 // Used when a PokĂ©mon faints -#define CRY_MODE_ECHO_START 6 // For 1st cry used by the move Hyper Voice +#define CRY_MODE_ECHO_END 6 // For 2nd half of cry used by the move Hyper Voice #define CRY_MODE_ROAR_1 7 // For 1st cry used by the move Roar #define CRY_MODE_ROAR_2 8 // For 2nd cry used by the move Roar #define CRY_MODE_GROWL_1 9 // For 1st cry used by the move Growl. Played in reverse diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 7180041b3296..6b14d3863113 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -312,7 +312,7 @@ static void SoundTask_PlayCryWithEcho_Step(u8 taskId) switch (gTasks[taskId].tState) { case 2: - PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_END); + PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_START); gTasks[taskId].tState++; break; case 1: @@ -329,9 +329,9 @@ static void SoundTask_PlayCryWithEcho_Step(u8 taskId) break; default: if (!gTasks[taskId].tLastCry) - PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_START); + PlayCry_DuckNoRestore(species, pan, CRY_MODE_ECHO_END); else - PlayCry_ByMode(species, pan, CRY_MODE_ECHO_START); + PlayCry_ByMode(species, pan, CRY_MODE_ECHO_END); DestroyAnimVisualTask(taskId); break; diff --git a/src/sound.c b/src/sound.c index c2a8c9e8c885..ad9993b5462d 100644 --- a/src/sound.c +++ b/src/sound.c @@ -406,7 +406,7 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) chorus = 20; volume = 90; break; - case CRY_MODE_ECHO_END: + case CRY_MODE_ECHO_START: length = 25; reverse = TRUE; release = 100; @@ -418,7 +418,7 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) release = 200; pitch = 14440; break; - case CRY_MODE_ECHO_START: + case CRY_MODE_ECHO_END: release = 220; pitch = 15555; chorus = 192; From 57be596ce43bed86594412d598d3058c4a3d1d2d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Nov 2021 13:14:11 -0500 Subject: [PATCH 402/762] Fix calcrom partial doc becoming negative --- .github/calcrom/calcrom.pl | 6 +++--- src/dodrio_berry_picking.c | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/calcrom/calcrom.pl b/.github/calcrom/calcrom.pl index c351c76122db..37ebcb4d2035 100755 --- a/.github/calcrom/calcrom.pl +++ b/.github/calcrom/calcrom.pl @@ -63,14 +63,14 @@ # though. Uniq is pretty fast! my $base_cmd = "nm $elffname | awk '{print \$3}' | grep '^[^_].\\{4\\}' | uniq"; -# This looks for Unknown_, Unknown_, or sub_, followed by just numbers. Note that +# This looks for Unknown_, Unknown_, or sub_, followed by an address. Note that # it matches even if stuff precedes the unknown, like sUnknown/gUnknown. -my $undoc_cmd = "grep '[Uu]nknown_[0-9a-fA-F]*\\|sub_[0-9a-fA-F]*'"; +my $undoc_cmd = "grep '[Uu]nknown_[0-9a-fA-F]\\{5,7\\}\\|sub_[0-9a-fA-F]\\{5,7\\}'"; # This looks for every symbol with an address at the end of it. Some things are # given a name based on their type / location, but still have an unknown purpose. # For example, FooMap_EventScript_FFFFFFF. -my $partial_doc_cmd = "grep '_[0-28][0-9a-fA-F]\\{5,6\\}'"; +my $partial_doc_cmd = "grep '_[0-28][0-9a-fA-F]\\{5,7\\}'"; my $count_cmd = "wc -l"; diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 838e8ed9450a..d343876fc48f 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3056,16 +3056,16 @@ static const u16 sDebug_BerryResults[MAX_RFU_PLAYERS][4] = }; static const u8 sJPText_Vowels[] = _("ă‚ă„ă†ăăŠă‹ăŤ"); -static const u8 sText_ABCDEFG[] = _("ABCDEFG"); -static const u8 sText_0123456[] = _("0123456"); +static const u8 sText_Letters[] = _("ABCDEFG"); +static const u8 sText_Digits[] = _("0123456"); static const u8 *const sDebug_PlayerNames[] = { sJPText_Vowels, sJPText_Vowels, sJPText_Vowels, - sText_ABCDEFG, - sText_0123456 + sText_Letters, + sText_Digits }; static void Debug_UpdateNumPlayers(void) From 343ac990496dd4adb551bb15001f5fb1845666cb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 9 Nov 2021 20:02:12 -0500 Subject: [PATCH 403/762] Start pokenav conditions doc --- .../{8623228.png => condition/graph_data.png} | Bin include/constants/pokemon.h | 4 +- include/gba/defines.h | 1 - include/menu_specialized.h | 60 +++- include/pokenav.h | 16 +- src/menu_specialized.c | 278 ++++++++---------- src/pokenav_conditions_1.c | 193 ++++++------ src/pokenav_conditions_2.c | 182 ++++++------ src/pokenav_menu_handler_2.c | 8 +- src/use_pokeblock.c | 164 +++++------ 10 files changed, 455 insertions(+), 451 deletions(-) rename graphics/pokenav/{8623228.png => condition/graph_data.png} (100%) diff --git a/graphics/pokenav/8623228.png b/graphics/pokenav/condition/graph_data.png similarity index 100% rename from graphics/pokenav/8623228.png rename to graphics/pokenav/condition/graph_data.png diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 827725fc2923..af5d0ea8a5db 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -270,7 +270,9 @@ #define FRIENDSHIP_EVENT_FAINT_FIELD_PSN 7 #define FRIENDSHIP_EVENT_FAINT_LARGE 8 // If opponent was >= 30 levels higher. See AdjustFriendshipOnBattleFaint -#define MAX_FRIENDSHIP 0xFF +#define MAX_FRIENDSHIP 255 +#define MAX_SHEEN 255 +#define MAX_CONDITION 255 #define MAX_PER_STAT_IVS 31 #define MAX_IV_MASK 31 diff --git a/include/gba/defines.h b/include/gba/defines.h index ad06aaad2db8..c52d7ef4f9a3 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -6,7 +6,6 @@ #define TRUE 1 #define FALSE 0 -#define BSS_DATA __attribute__((section(".bss"))) #define IWRAM_DATA __attribute__((section("iwram_data"))) #define EWRAM_DATA __attribute__((section("ewram_data"))) #define UNUSED __attribute__((unused)) diff --git a/include/menu_specialized.h b/include/menu_specialized.h index c29110662be4..2f212b5d6921 100644 --- a/include/menu_specialized.h +++ b/include/menu_specialized.h @@ -7,14 +7,24 @@ #include "pokemon.h" #include "constants/berry.h" -#define TAG_CONDITION_MON 100 -#define TAG_CONDITION_BALL 101 -#define TAG_CONDITION_CANCEL 102 -#define TAG_CONDITION_BALL_PLACEHOLDER 103 -#define TAG_CONDITION_SPARKLE 104 +enum { + TAG_CONDITION_MON = 100, + TAG_CONDITION_BALL, + TAG_CONDITION_CANCEL, + TAG_CONDITION_BALL_PLACEHOLDER, + TAG_CONDITION_SPARKLE, + TAG_CONDITION_MON_MARKINGS, + TAG_CONDITION_MARKINGS_MENU, + TAG_CONDITION_MARKINGS_MENU_2, // Used implicitly by CreateMonMarkingsMenuSprites +}; + #define MAX_CONDITION_SPARKLES 10 +// 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; + // Window IDs for the Player PC Mailbox enum { MAILBOXWIN_TITLE, @@ -29,17 +39,35 @@ struct UnknownSubStruct_81D1ED4 u16 unk2; }; +#define CONDITION_GRAPH_CENTER_X 155 +#define CONDITION_GRAPH_TOP_Y 56 +#define CONDITION_GRAPH_BOTTOM_Y 121 +#define CONDITION_GRAPH_HEIGHT (CONDITION_GRAPH_BOTTOM_Y - CONDITION_GRAPH_TOP_Y + 1) +#define CONDITION_GRAPH_UNK_1 10 +#define CONDITION_GRAPH_UNK_2 9 +#define CONDITION_GRAPH_UNK 91 + +// Equivalent to flavor and contest values, but in a different order. +enum { + CONDITION_COOL, + CONDITION_TOUGH, + CONDITION_SMART, + CONDITION_CUTE, + CONDITION_BEAUTY, + CONDITION_COUNT +}; + struct ConditionGraph { - /*0x000*/ u8 stat[4][FLAVOR_COUNT]; - /*0x014*/ struct UnknownSubStruct_81D1ED4 unk14[4][FLAVOR_COUNT]; - /*0x064*/ struct UnknownSubStruct_81D1ED4 unk64[10][FLAVOR_COUNT]; - /*0x12C*/ struct UnknownSubStruct_81D1ED4 unk12C[FLAVOR_COUNT]; - /*0x140*/ u16 unk140[66][2]; - /*0x248*/ u16 unk248[66][2]; + /*0x000*/ u8 conditions[4][CONDITION_COUNT]; + /*0x014*/ struct UnknownSubStruct_81D1ED4 unk14[4][CONDITION_COUNT]; + /*0x064*/ struct UnknownSubStruct_81D1ED4 unk64[CONDITION_GRAPH_UNK_1][CONDITION_COUNT]; + /*0x12C*/ struct UnknownSubStruct_81D1ED4 unk12C[CONDITION_COUNT]; + /*0x140*/ u16 scanlineRight[CONDITION_GRAPH_HEIGHT][2]; + /*0x248*/ u16 scanlineLeft[CONDITION_GRAPH_HEIGHT][2]; /*0x350*/ u16 unk350; /*0x352*/ u16 unk352; - /*0x354*/ u8 unk354; + /*0x354*/ bool8 unk354; /*0x355*/ u8 state; }; @@ -49,13 +77,13 @@ u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page); void MailboxMenu_AddScrollArrows(struct PlayerPCItemPageStruct *page); void MailboxMenu_Free(void); void MailboxMenu_RemoveWindow(u8 windowIdx); -void InitConditionGraphData(struct ConditionGraph *graph); +void ConditionGraph_Init(struct ConditionGraph *graph); void sub_81D2108(struct ConditionGraph *graph); void SetConditionGraphIOWindows(u8 bg); void InitConditionGraphState(struct ConditionGraph *graph); void sub_81D2230(struct ConditionGraph *graph); bool8 SetupConditionGraphScanlineParams(struct ConditionGraph *graph); -bool32 TransitionConditionGraph(struct ConditionGraph *graph); +bool8 TransitionConditionGraph(struct ConditionGraph *graph); void sub_81D2754(u8 *arg0, struct UnknownSubStruct_81D1ED4 *arg1); void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 *arg1, struct UnknownSubStruct_81D1ED4 *arg2); void MoveRelearnerPrintText(u8 *str); @@ -69,8 +97,8 @@ void GetConditionMenuMonConditions(struct ConditionGraph *graph, u8 *sheen, u16 void GetConditionMenuMonGfx(void *tilesDst, void *palDst, u16 boxId, u16 monId, u16 partyId, u16 numMons, bool8 excludesCancel); bool8 MoveConditionMonOnscreen(s16 *x); bool8 MoveConditionMonOffscreen(s16 *x); -bool8 TryUpdateConditionMonTransitionOn(struct ConditionGraph *graph, s16 *x); -bool8 TryUpdateConditionMonTransitionOff(struct ConditionGraph *graph, s16 *x); +bool8 ConditionGraph_UpdateMonEnter(struct ConditionGraph *graph, s16 *x); +bool8 ConditionGraph_UpdateMonExit(struct ConditionGraph *graph, s16 *x); void LoadConditionMonPicTemplate(struct SpriteSheet *sheet, struct SpriteTemplate *template, struct SpritePalette *pal); void LoadConditionSelectionIcons(struct SpriteSheet *sheets, struct SpriteTemplate * template, struct SpritePalette *pals); void LoadConditionSparkle(struct SpriteSheet *sheet, struct SpritePalette *pal); diff --git a/include/pokenav.h b/include/pokenav.h index b1c73056d4a3..445ce752be48 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -256,6 +256,14 @@ enum PartyConditionFuncIds PARTY_CONDITION_FUNC_CLOSE_MARKINGS, }; +enum +{ + CONDITION_MON_0, + CONDITION_MON_1, + CONDITION_MON_2, + NUM_CONDITION_MONS +}; + #define POKENAV_MENU_FUNC_EXIT -1 enum @@ -432,11 +440,11 @@ bool32 IsConditionMenuSearchMode(void); struct ConditionGraph *GetConditionGraphDataPtr(void); u16 GetConditionGraphCurrentMonIndex(void); u16 GetMonListCount(void); -u8 GetMonSheen(void); -bool32 SetConditionGraphData(u8 arg0); +u8 GetNumConditionMonSparkles(void); +bool32 SetConditionGraphData(u8 mode); u8 TryGetMonMarkId(void); -u8 *GetConditionMonNameBuffer(u8 id); -u8 *GetConditionMonLocationBuffer(u8 id); +u8 *GetConditionMonNameText(u8 id); +u8 *GetConditionMonLocationText(u8 id); u16 GetConditionMonDataBuffer(void); void *GetConditionMonPicGfx(u8 id); void *GetConditionMonPal(u8 id); diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 3a6a60885dc4..abeaba2c95d3 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -31,14 +31,14 @@ extern const struct CompressedSpriteSheet gMonFrontPicTable[]; EWRAM_DATA static u8 sMailboxWindowIds[MAILBOXWIN_COUNT] = {0}; EWRAM_DATA static struct ListMenuItem *sMailboxList = NULL; -static void MailboxMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list); -static void sub_81D24A4(struct ConditionGraph *a0); -static void sub_81D2634(struct ConditionGraph *a0); -static void MoveRelearnerCursorCallback(s32 itemIndex, bool8 onInit, struct ListMenu *list); -static void nullsub_79(void); -static void SetNextConditionSparkle(struct Sprite *sprite); -static void SpriteCB_ConditionSparkle(struct Sprite *sprite); -static void ShowAllConditionSparkles(struct Sprite *sprite); +static void MailboxMenu_MoveCursorFunc(s32, bool8, struct ListMenu *); +static void sub_81D24A4(struct ConditionGraph *); +static void sub_81D2634(struct ConditionGraph *); +static void MoveRelearnerCursorCallback(s32, bool8, struct ListMenu *); +static void MoveRelearnerDummy(void); +static void SetNextConditionSparkle(struct Sprite *); +static void SpriteCB_ConditionSparkle(struct Sprite *); +static void ShowAllConditionSparkles(struct Sprite *); static const struct WindowTemplate sWindowTemplates_MailboxMenu[MAILBOXWIN_COUNT] = { @@ -80,46 +80,29 @@ static const u8 sEmptyItemName[] = _(""); static const struct ScanlineEffectParams sConditionGraphScanline = { - .dmaDest = (void*)REG_ADDR_WIN0H, + .dmaDest = ®_WIN0H, .dmaControl = SCANLINE_EFFECT_DMACNT_32BIT, .initState = 1, }; -static const u8 sUnknown_08625410[] = -{ - 4, - 5, - 6, - 7, - 8, - 9, 9, - 10, 10, - 0xB, 0xB, - 0xC, 0xC, - 0xD, 0xD, - 0xD, 0xD, - 0xE, 0xE, 0xE, 0xE, - 0xF, 0xF, 0xF, 0xF, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, - 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, - 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, - 0x13, 0x13, 0x13, 0x13, 0x13, 0x13, 0x13, 0x13, - 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, - 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, - 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, 0x16, - 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, - 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, - 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, 0x1A, - 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, - 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, - 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, - 0x23 +static const u8 sUnknown_08625410[MAX_CONDITION + 1] = +{ + 4, 5, 6, 7, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 13, + 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 17, + 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, + 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, + 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, + 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, + 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 34, 34, 34, + 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 35 }; @@ -320,29 +303,29 @@ void MailboxMenu_Free(void) Free(sMailboxList); } -void InitConditionGraphData(struct ConditionGraph *graph) +void ConditionGraph_Init(struct ConditionGraph *graph) { u8 i, j; - for (j = 0; j < FLAVOR_COUNT; j++) + for (j = 0; j < CONDITION_COUNT; j++) { - for (i = 0; i < 10; i++) + for (i = 0; i < CONDITION_GRAPH_UNK_1; i++) { graph->unk64[i][j].unk0 = 0; graph->unk64[i][j].unk2 = 0; } for (i = 0; i < 4; i++) { - graph->stat[i][j] = 0; - graph->unk14[i][j].unk0 = 155; - graph->unk14[i][j].unk2 = 91; + graph->conditions[i][j] = 0; + graph->unk14[i][j].unk0 = CONDITION_GRAPH_CENTER_X; + graph->unk14[i][j].unk2 = CONDITION_GRAPH_UNK; } graph->unk12C[j].unk0 = 0; graph->unk12C[j].unk2 = 0; } - graph->unk354 = 0; + graph->unk354 = FALSE; graph->unk352 = 0; } @@ -351,11 +334,11 @@ void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 * u16 i, j; s32 r5, r6; - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { r5 = arg1[i].unk0 << 8; - r6 = ((arg2[i].unk0 - arg1[i].unk0) << 8) / 10; - for (j = 0; j < 9; j++) + r6 = ((arg2[i].unk0 - arg1[i].unk0) << 8) / CONDITION_GRAPH_UNK_1; + for (j = 0; j < CONDITION_GRAPH_UNK_2; j++) { graph->unk64[j][i].unk0 = (r5 >> 8) + ((r5 >> 7) & 1); r5 += r6; @@ -363,8 +346,8 @@ void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 * graph->unk64[j][i].unk0 = arg2[i].unk0; r5 = arg1[i].unk2 << 8; - r6 = ((arg2[i].unk2 - arg1[i].unk2) << 8) / 10; - for (j = 0; j < 9; j++) + r6 = ((arg2[i].unk2 - arg1[i].unk2) << 8) / CONDITION_GRAPH_UNK_1; + for (j = 0; j < CONDITION_GRAPH_UNK_2; j++) { graph->unk64[j][i].unk2 = (r5 >> 8) + ((r5 >> 7) & 1); r5 += r6; @@ -375,12 +358,12 @@ void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 * graph->unk352 = 0; } -bool32 TransitionConditionGraph(struct ConditionGraph *graph) +bool8 TransitionConditionGraph(struct ConditionGraph *graph) { - if (graph->unk352 < 10) + if (graph->unk352 < CONDITION_GRAPH_UNK_1) { sub_81D2230(graph); - return (++graph->unk352 != 10); + return (++graph->unk352 != CONDITION_GRAPH_UNK_1); } else { @@ -417,35 +400,36 @@ void sub_81D2108(struct ConditionGraph *graph) { u16 i; - if (graph->unk354 == 0) + if (!graph->unk354) return; sub_81D24A4(graph); sub_81D2634(graph); - for (i = 0; i < 66; i++) + for (i = 0; i < CONDITION_GRAPH_HEIGHT; i++) { - gScanlineEffectRegBuffers[1][(i + 55) * 2] = gScanlineEffectRegBuffers[0][(i + 55) * 2] = (graph->unk140[i][0] << 8) | (graph->unk140[i][1]); - gScanlineEffectRegBuffers[1][(i + 55) * 2 + 1] = gScanlineEffectRegBuffers[0][(i + 55) * 2 + 1] = (graph->unk248[i][0] << 8) | (graph->unk248[i][1]); + gScanlineEffectRegBuffers[1][(i + 55) * 2] = gScanlineEffectRegBuffers[0][(i + 55) * 2] = (graph->scanlineRight[i][0] << 8) | (graph->scanlineRight[i][1]); + gScanlineEffectRegBuffers[1][(i + 55) * 2 + 1] = gScanlineEffectRegBuffers[0][(i + 55) * 2 + 1] = (graph->scanlineLeft[i][0] << 8) | (graph->scanlineLeft[i][1]); } - graph->unk354 = 0; + graph->unk354 = FALSE; } void SetConditionGraphIOWindows(u8 bg) { u32 flags; - if (bg > 3) + if (bg >= NUM_BACKGROUNDS) bg = 0; // Unset the WINOUT flag for the bg. flags = (WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ) & ~(1 << bg); - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE( 0, DISPLAY_WIDTH)); - SetGpuReg(REG_OFFSET_WIN1H, WIN_RANGE( 0, 155)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(56, 121)); - SetGpuReg(REG_OFFSET_WIN1V, WIN_RANGE(56, 121)); + // Set limits for graph data + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE( 0, DISPLAY_WIDTH)); // Right side horizontal + SetGpuReg(REG_OFFSET_WIN1H, WIN_RANGE( 0, CONDITION_GRAPH_CENTER_X)); // Left side horizontal + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(CONDITION_GRAPH_TOP_Y, CONDITION_GRAPH_BOTTOM_Y)); // Right side vertical + SetGpuReg(REG_OFFSET_WIN1V, WIN_RANGE(CONDITION_GRAPH_TOP_Y, CONDITION_GRAPH_BOTTOM_Y)); // Left side vertical SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); SetGpuReg(REG_OFFSET_WINOUT, flags); } @@ -453,19 +437,18 @@ void SetConditionGraphIOWindows(u8 bg) void sub_81D2230(struct ConditionGraph *graph) { u16 i; - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) graph->unk12C[i] = graph->unk64[graph->unk352][i]; - graph->unk354 = 1; + graph->unk354 = TRUE; } static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownSubStruct_81D1ED4 *arg2, struct UnknownSubStruct_81D1ED4 *arg3, u8 arg4, u16 *arg5) { u16 i, r8, r10, r0, var_30; u16 *ptr; - s32 r4, var_2C; + s32 r4, var_2C = 0; - var_2C = 0; if (arg2->unk2 < arg3->unk2) { r10 = arg2->unk2; @@ -490,7 +473,7 @@ static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownS r8++; if (arg5 == NULL) { - arg1 += (r10 - 56) * 2; + arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; for (i = 0; i < r8; i++) { arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; @@ -502,16 +485,16 @@ static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownS } else if (var_2C > 0) { - arg5 += (r10 - 56) * 2; + arg5 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; // Less readable than the other loops, but it has to be written this way to match. for (i = 0; i < r8; arg5[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4, r4 += var_2C, arg5 += 2, i++) { - if (r4 >= (155 << 10)) + if (r4 >= (CONDITION_GRAPH_CENTER_X << 10)) break; } graph->unk350 = r10 + i; - arg1 += (graph->unk350 - 56) * 2; + arg1 += (graph->unk350 - CONDITION_GRAPH_TOP_Y) * 2; for (; i < r8; i++) { arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; @@ -523,13 +506,13 @@ static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownS } else if (var_2C < 0) { - arg1 += (r10 - 56) * 2; + arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; for (i = 0; i < r8; i++) { arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; - if (r4 < (155 << 10)) + if (r4 < (CONDITION_GRAPH_CENTER_X << 10)) { - arg1[arg4] = 155; + arg1[arg4] = CONDITION_GRAPH_CENTER_X; break; } r4 += var_2C; @@ -537,7 +520,7 @@ static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownS } graph->unk350 = r10 + i; - arg5 += (graph->unk350 - 56) * 2; + arg5 += (graph->unk350 - CONDITION_GRAPH_TOP_Y) * 2; for (; i < r8; i++) { arg5[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; @@ -550,11 +533,11 @@ static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownS else { graph->unk350 = r10; - arg1 += (r10 - 56) * 2; - arg5 += (r10 - 56) * 2; + arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; + arg5 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; arg1[1] = arg2->unk0 + 1; arg5[0] = arg3->unk0; - arg5[1] = 155; + arg5[1] = CONDITION_GRAPH_CENTER_X; return; } @@ -568,38 +551,38 @@ static void sub_81D24A4(struct ConditionGraph *graph) if (graph->unk12C[0].unk2 < graph->unk12C[1].unk2) { r6 = graph->unk12C[0].unk2; - sub_81D2278(graph, graph->unk140[0], &graph->unk12C[0], &graph->unk12C[1], 1, NULL); + sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[0], &graph->unk12C[1], 1, NULL); } else { r6 = graph->unk12C[1].unk2; - sub_81D2278(graph, graph->unk140[0], &graph->unk12C[1], &graph->unk12C[0], 0, NULL); + sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[1], &graph->unk12C[0], 0, NULL); } - sub_81D2278(graph, graph->unk140[0], &graph->unk12C[1], &graph->unk12C[2], 1, NULL); + sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[1], &graph->unk12C[2], 1, NULL); i = (graph->unk12C[2].unk2 <= graph->unk12C[3].unk2); - sub_81D2278(graph, graph->unk140[0], &graph->unk12C[2], &graph->unk12C[3], i, graph->unk248[0]); - for (i = 56; i < r6; i++) + sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[2], &graph->unk12C[3], i, graph->scanlineLeft[0]); + for (i = CONDITION_GRAPH_TOP_Y; i < r6; i++) { - graph->unk140[i - 56][0] = 0; - graph->unk140[i - 56][1] = 0; + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = 0; + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][1] = 0; } for (i = graph->unk12C[0].unk2; i <= graph->unk350; i++) - graph->unk140[i - 56][0] = 155; + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = CONDITION_GRAPH_CENTER_X; varMax = max(graph->unk350, graph->unk12C[2].unk2); - for (i = varMax + 1; i < 122; i++) + for (i = varMax + 1; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { - graph->unk140[i - 56][0] = 0; - graph->unk140[i - 56][1] = 0; + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = 0; + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][1] = 0; } - for (i = 56; i < 122; i++) + for (i = CONDITION_GRAPH_TOP_Y; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { - if (graph->unk140[i - 56][0] == 0 && graph->unk140[i - 56][1] != 0) - graph->unk140[i - 56][0] = 155; + if (graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] == 0 && graph->scanlineRight[i - 56][1] != 0) + graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = CONDITION_GRAPH_CENTER_X; } } @@ -610,69 +593,69 @@ static void sub_81D2634(struct ConditionGraph *graph) if (graph->unk12C[0].unk2 < graph->unk12C[4].unk2) { r6 = graph->unk12C[0].unk2; - sub_81D2278(graph, graph->unk248[0], &graph->unk12C[0], &graph->unk12C[4], 0, NULL); + sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[0], &graph->unk12C[4], 0, NULL); } else { r6 = graph->unk12C[4].unk2; - sub_81D2278(graph, graph->unk248[0], &graph->unk12C[4], &graph->unk12C[0], 1, NULL); + sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[4], &graph->unk12C[0], 1, NULL); } - sub_81D2278(graph, graph->unk248[0], &graph->unk12C[4], &graph->unk12C[3], 0, NULL); + sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[4], &graph->unk12C[3], 0, NULL); - for (i = 56; i < r6; i++) + for (i = CONDITION_GRAPH_TOP_Y; i < r6; i++) { - graph->unk140[i + 10][0] = 0; - graph->unk140[i + 10][1] = 0; + graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][0] = 0; + graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = 0; } for (i = graph->unk12C[0].unk2; i <= graph->unk350; i++) - graph->unk140[i + 10][1] = 155; + graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = CONDITION_GRAPH_CENTER_X; varMax = max(graph->unk350, graph->unk12C[3].unk2 + 1); - for (i = varMax; i < 122; i++) + for (i = varMax; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { - graph->unk140[i + 10][0] = 0; - graph->unk140[i + 10][1] = 0; + graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][0] = 0; + graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = 0; } - for (i = 0; i < 66; i++) + for (i = 0; i < CONDITION_GRAPH_HEIGHT; i++) { - if (graph->unk248[i][0] >= graph->unk248[i][1]) + if (graph->scanlineLeft[i][0] >= graph->scanlineLeft[i][1]) { - graph->unk248[i][1] = 0; - graph->unk248[i][0] = 0; + graph->scanlineLeft[i][1] = 0; + graph->scanlineLeft[i][0] = 0; } } } -void sub_81D2754(u8 *arg0, struct UnknownSubStruct_81D1ED4 *arg1) +void sub_81D2754(u8 *conditions, struct UnknownSubStruct_81D1ED4 *arg1) { - u8 r2, r7; + u8 r2, sinIdx; s8 r12; u16 i; - r2 = sUnknown_08625410[*(arg0++)]; - arg1->unk0 = 155; - arg1->unk2 = 91 - r2; + r2 = sUnknown_08625410[*(conditions++)]; + arg1->unk0 = CONDITION_GRAPH_CENTER_X; + arg1->unk2 = CONDITION_GRAPH_UNK - r2; - r7 = 64; + sinIdx = 64; r12 = 0; - for (i = 1; i < 5; i++) + for (i = 1; i < CONDITION_COUNT; i++) { - r7 += 51; + sinIdx += 51; if (--r12 < 0) r12 = 4; if (r12 == 2) - r7++; + sinIdx++; - r2 = sUnknown_08625410[*(arg0++)]; - arg1[r12].unk0 = 155 + ((r2 * gSineTable[64 + r7]) >> 8); - arg1[r12].unk2 = 91 - ((r2 * gSineTable[r7]) >> 8); + r2 = sUnknown_08625410[*(conditions++)]; + arg1[r12].unk0 = CONDITION_GRAPH_CENTER_X + ((r2 * gSineTable[64 + sinIdx]) >> 8); + arg1[r12].unk2 = CONDITION_GRAPH_UNK - ((r2 * gSineTable[sinIdx]) >> 8); if (r12 < 3 && (r2 != 32 || r12 != 2)) - arg1[r12].unk0 = 156 + ((r2 * gSineTable[64 + r7]) >> 8); + arg1[r12].unk0 = CONDITION_GRAPH_CENTER_X + 1 + ((r2 * gSineTable[64 + sinIdx]) >> 8); } } @@ -685,10 +668,8 @@ void InitMoveRelearnerWindows(bool8 useContextWindow) LoadUserWindowBorderGfx(0, 1, 0xE0); LoadPalette(gStandardMenuPalette, 0xF0, 0x20); - for (i = 0; i < 5; i++) - { + for (i = 0; i < ARRAY_COUNT(sMoveRelearnerWindowTemplates) - 1; i++) FillWindowPixelBuffer(i, PIXEL_FILL(1)); - } if (!useContextWindow) { @@ -704,11 +685,11 @@ void InitMoveRelearnerWindows(bool8 useContextWindow) PutWindowTilemap(3); DrawStdFrameWithCustomTileAndPalette(2, 0, 1, 0xE); DrawStdFrameWithCustomTileAndPalette(3, 0, 1, 0xE); - nullsub_79(); + MoveRelearnerDummy(); ScheduleBgCopyTilemapToVram(1); } -static void nullsub_79(void) +static void MoveRelearnerDummy(void) { } @@ -720,13 +701,10 @@ u8 LoadMoveRelearnerMovesList(const struct ListMenuItem *items, u16 numChoices) gMultiuseListMenuTemplate.items = items; if (numChoices < 6) - { gMultiuseListMenuTemplate.maxShowed = numChoices; - } else - { gMultiuseListMenuTemplate.maxShowed = 6; - } + return gMultiuseListMenuTemplate.maxShowed; } @@ -734,7 +712,7 @@ static void MoveRelearnerLoadBattleMoveDescription(u32 chosenMove) { s32 x; const struct BattleMove *move; - u8 buffer[0x20]; + u8 buffer[32]; const u8 *str; FillWindowPixelBuffer(0, PIXEL_FILL(1)); @@ -1010,7 +988,7 @@ void GetConditionMenuMonNameAndLocString(u8 *locationDst, u8 *nameDst, u16 boxId } } -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) { u16 i; @@ -1019,25 +997,23 @@ void GetConditionMenuMonConditions(struct ConditionGraph *graph, u8 *sheen, u16 if (partyId != numMons) { - graph->stat[id][0] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); - graph->stat[id][1] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); - graph->stat[id][2] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); - graph->stat[id][3] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); - graph->stat[id][4] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); + graph->conditions[id][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); + graph->conditions[id][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); + graph->conditions[id][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); + graph->conditions[id][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); + graph->conditions[id][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); - sheen[id] = (GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL) != 0xFF) - ? GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL) / 29u - : 9; + numSparkles[id] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); - sub_81D2754(graph->stat[id], graph->unk14[id]); + sub_81D2754(graph->conditions[id], graph->unk14[id]); } else { - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { - graph->stat[id][i] = 0; - graph->unk14[id][i].unk0 = 155; - graph->unk14[id][i].unk2 = 91; + graph->conditions[id][i] = 0; + graph->unk14[id][i].unk0 = CONDITION_GRAPH_CENTER_X; + graph->unk14[id][i].unk2 = CONDITION_GRAPH_UNK; } } } @@ -1076,7 +1052,7 @@ bool8 MoveConditionMonOffscreen(s16 *x) return (*x != -80); } -bool8 TryUpdateConditionMonTransitionOn(struct ConditionGraph *graph, s16 *x) +bool8 ConditionGraph_UpdateMonEnter(struct ConditionGraph *graph, s16 *x) { bool8 graphUpdating = TransitionConditionGraph(graph); bool8 monUpdating = MoveConditionMonOnscreen(x); @@ -1084,7 +1060,7 @@ bool8 TryUpdateConditionMonTransitionOn(struct ConditionGraph *graph, s16 *x) return (graphUpdating || monUpdating); } -bool8 TryUpdateConditionMonTransitionOff(struct ConditionGraph *graph, s16 *x) +bool8 ConditionGraph_UpdateMonExit(struct ConditionGraph *graph, s16 *x) { bool8 graphUpdating = TransitionConditionGraph(graph); bool8 monUpdating = MoveConditionMonOffscreen(x); diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index a01b93a80333..8eacf2e70175 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -15,18 +15,18 @@ struct PokenavSub11 { - u32 monPal[3][0x20]; + u32 monPal[NUM_CONDITION_MONS][0x20]; u8 fill[0x180]; - u32 monPicGfx[3][MON_PIC_SIZE]; + u32 monPicGfx[NUM_CONDITION_MONS][MON_PIC_SIZE]; u8 searchMode; s16 monIndex; u32 (*callback)(struct PokenavSub11 *); u8 fill2[0x6320 - 0x6308]; - u8 searchLocBuffer[3][24]; - u8 nameBuffer[3][64]; + u8 locationText[NUM_CONDITION_MONS][24]; + u8 nameText[NUM_CONDITION_MONS][64]; struct ConditionGraph conditionData; - u8 sheen[3]; - u8 monMarks[3]; + u8 numSparkles[NUM_CONDITION_MONS]; + u8 monMarks[NUM_CONDITION_MONS]; s8 mark; s8 unk6787; s8 unk6788; @@ -34,18 +34,17 @@ struct PokenavSub11 u8 state; }; -void InitPartyConditionListParameters(void); -void sub_81CD9F8(void); -u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr); -u32 GetConditionReturnCallback(struct PokenavSub11 *structPtr); -u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *structPtr); -u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr); -u8 SwitchConditionSummaryIndex(u8 moveUp); -void CopyMonNameGenderLocation(s16 id, u8 arg1); -void GetMonConditionGraphData(s16 id, u8 arg1); -void ConditionGraphDrawMonPic(s16 id, u8 arg1); - -// code +static void InitPartyConditionListParameters(void); +static void InitSearchResultsConditionList(void); +static u32 HandlePartyConditionInput(struct PokenavSub11 *); +static u32 GetConditionReturnCallback(struct PokenavSub11 *); +static u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *); +static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *); +static u8 SwitchConditionSummaryIndex(bool8); +static void CopyMonNameGenderLocation(s16, u8); +static void GetMonConditionGraphData(s16, u8); +static void ConditionGraphDrawMonPic(s16, u8); + bool32 PokenavCallback_Init_PartyCondition(void) { struct PokenavSub11 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH, sizeof(struct PokenavSub11)); @@ -53,7 +52,7 @@ bool32 PokenavCallback_Init_PartyCondition(void) if (structPtr == NULL) return FALSE; - InitConditionGraphData(&structPtr->conditionData); + ConditionGraph_Init(&structPtr->conditionData); InitPartyConditionListParameters(); gKeyRepeatStartDelay = 20; structPtr->callback = HandlePartyConditionInput; @@ -67,8 +66,8 @@ bool32 PokenavCallback_Init_ConditionGraphFromSearch(void) if (structPtr == NULL) return FALSE; - InitConditionGraphData(&structPtr->conditionData); - sub_81CD9F8(); + ConditionGraph_Init(&structPtr->conditionData); + InitSearchResultsConditionList(); gKeyRepeatStartDelay = 20; structPtr->callback = HandlePartyConditionInput; return TRUE; @@ -81,7 +80,7 @@ u32 GetPartyConditionCallback(void) return structPtr->callback(structPtr); } -u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr) +static u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr) { struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); u32 ret = ConditionGraphHandleDpadInput(structPtr); @@ -117,7 +116,7 @@ u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr) return ret; } -u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *structPtr) +static u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *structPtr) { struct PokenavSub18 *monListPtr; u8 markings; @@ -143,7 +142,7 @@ u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *structPtr) return ret; } -u32 GetConditionReturnCallback(struct PokenavSub11 *structPtr) +static u32 GetConditionReturnCallback(struct PokenavSub11 *structPtr) { if (structPtr->searchMode == 0) return POKENAV_CONDITION_MENU; @@ -160,7 +159,7 @@ void FreePartyConditionSubstruct1(void) FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH); } -u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) +static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) { struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); u8 ret = 0; @@ -170,7 +169,7 @@ u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) if (structPtr->searchMode == 0 || monListPtr->currIndex != 0) { PlaySE(SE_SELECT); - ret = SwitchConditionSummaryIndex(1); + ret = SwitchConditionSummaryIndex(TRUE); } } else if (JOY_HELD(DPAD_DOWN)) @@ -178,14 +177,14 @@ u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) if (structPtr->searchMode == 0 || monListPtr->currIndex < monListPtr->listCount - 1) { PlaySE(SE_SELECT); - ret = SwitchConditionSummaryIndex(0); + ret = SwitchConditionSummaryIndex(FALSE); } } return ret; } -u8 SwitchConditionSummaryIndex(u8 moveUp) +static u8 SwitchConditionSummaryIndex(u8 moveUp) { u16 r7; bool8 wasNotLastMon, isNotLastMon; @@ -235,28 +234,28 @@ bool32 LoadPartyConditionMenuGfx(void) switch (structPtr->state) { case 0: - CopyMonNameGenderLocation(monListPtr->currIndex, 0); + CopyMonNameGenderLocation(monListPtr->currIndex, CONDITION_MON_0); break; case 1: - GetMonConditionGraphData(monListPtr->currIndex, 0); + GetMonConditionGraphData(monListPtr->currIndex, CONDITION_MON_0); break; case 2: - ConditionGraphDrawMonPic(monListPtr->currIndex, 0); + ConditionGraphDrawMonPic(monListPtr->currIndex, CONDITION_MON_0); break; case 3: if (monListPtr->listCount == 1) { - structPtr->mark = 0; - structPtr->unk6787 = 0; - structPtr->unk6788 = 0; + structPtr->mark = CONDITION_MON_0; + structPtr->unk6787 = CONDITION_MON_0; + structPtr->unk6788 = CONDITION_MON_0; structPtr->state = 0; return TRUE; } else { - structPtr->mark = 0; - structPtr->unk6787 = 1; - structPtr->unk6788 = 2; + structPtr->mark = CONDITION_MON_0; + structPtr->unk6787 = CONDITION_MON_1; + structPtr->unk6788 = CONDITION_MON_2; } break; // These were probably ternaries just like cases 7-9, but couldn't match it any other way. @@ -264,28 +263,28 @@ bool32 LoadPartyConditionMenuGfx(void) var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - CopyMonNameGenderLocation(var, 1); + CopyMonNameGenderLocation(var, CONDITION_MON_1); break; case 5: var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - GetMonConditionGraphData(var, 1); + GetMonConditionGraphData(var, CONDITION_MON_1); break; case 6: var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - ConditionGraphDrawMonPic(var, 1); + ConditionGraphDrawMonPic(var, CONDITION_MON_1); break; case 7: - CopyMonNameGenderLocation((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); + CopyMonNameGenderLocation((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); break; case 8: - GetMonConditionGraphData((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); + GetMonConditionGraphData((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); break; case 9: - ConditionGraphDrawMonPic((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); + ConditionGraphDrawMonPic((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); structPtr->state = 0; return TRUE; } @@ -326,15 +325,15 @@ u8 *CopyStringLeftAlignedToConditionData(u8 *dst, const u8 *src, s16 n) return dst; } -u8 *CopyMonConditionNameGender(u8 *str, u16 id, bool8 arg3) +static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) { u16 boxId, monId, gender, species, level, lvlDigits; struct BoxPokemon *boxMon; u8 *txtPtr, *str_; struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - boxId = monListPtr->monData[id].boxId; - monId = monListPtr->monData[id].monId; + boxId = monListPtr->monData[listId].boxId; + monId = monListPtr->monData[listId].monId; *(str++) = EXT_CTRL_CODE_BEGIN; *(str++) = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; *(str++) = TEXT_COLOR_BLUE; @@ -417,39 +416,39 @@ u8 *CopyMonConditionNameGender(u8 *str, u16 id, bool8 arg3) return str_; } -void CopyMonNameGenderLocation(s16 id, u8 arg1) +static void CopyMonNameGenderLocation(s16 listId, u8 loadId) { u16 boxId, i; struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (id != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) { - CopyMonConditionNameGender(structPtr->nameBuffer[arg1], id, FALSE); - boxId = monListPtr->monData[id].boxId; - structPtr->searchLocBuffer[arg1][0] = EXT_CTRL_CODE_BEGIN; - structPtr->searchLocBuffer[arg1][1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; - structPtr->searchLocBuffer[arg1][2] = TEXT_COLOR_BLUE; - structPtr->searchLocBuffer[arg1][3] = TEXT_COLOR_TRANSPARENT; - structPtr->searchLocBuffer[arg1][4] = TEXT_COLOR_LIGHT_BLUE; + CopyConditionMonNameGender(structPtr->nameText[loadId], listId, FALSE); + boxId = monListPtr->monData[listId].boxId; + structPtr->locationText[loadId][0] = EXT_CTRL_CODE_BEGIN; + structPtr->locationText[loadId][1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; + structPtr->locationText[loadId][2] = TEXT_COLOR_BLUE; + structPtr->locationText[loadId][3] = TEXT_COLOR_TRANSPARENT; + structPtr->locationText[loadId][4] = TEXT_COLOR_LIGHT_BLUE; if (boxId == TOTAL_BOXES_COUNT) - CopyStringLeftAlignedToConditionData(&structPtr->searchLocBuffer[arg1][5], gText_InParty, 8); + CopyStringLeftAlignedToConditionData(&structPtr->locationText[loadId][5], gText_InParty, BOX_NAME_LENGTH); else - CopyStringLeftAlignedToConditionData(&structPtr->searchLocBuffer[arg1][5], GetBoxNamePtr(boxId), BOX_NAME_LENGTH); + CopyStringLeftAlignedToConditionData(&structPtr->locationText[loadId][5], GetBoxNamePtr(boxId), BOX_NAME_LENGTH); } else { for (i = 0; i < 12; i++) - structPtr->nameBuffer[arg1][i] = CHAR_SPACE; - structPtr->nameBuffer[arg1][i] = EOS; + structPtr->nameText[loadId][i] = CHAR_SPACE; + structPtr->nameText[loadId][i] = EOS; - for (i = 0; i < 8; i++) - structPtr->searchLocBuffer[arg1][i] = CHAR_SPACE; - structPtr->searchLocBuffer[arg1][i] = EOS; + for (i = 0; i < BOX_NAME_LENGTH; i++) + structPtr->locationText[loadId][i] = CHAR_SPACE; + structPtr->locationText[loadId][i] = EOS; } } -void InitPartyConditionListParameters(void) +static void InitPartyConditionListParameters(void) { u16 i, count; struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); @@ -475,62 +474,60 @@ void InitPartyConditionListParameters(void) structPtr->state = 0; } -void sub_81CD9F8(void) +static void InitSearchResultsConditionList(void) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); structPtr->searchMode = 1; structPtr->state = 0; } -void GetMonConditionGraphData(s16 id, u8 arg1) +static void GetMonConditionGraphData(s16 listId, u8 loadId) { u16 boxId, monId, i; struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (id != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) { - boxId = monListPtr->monData[id].boxId; - monId = monListPtr->monData[id].monId; - structPtr->conditionData.stat[arg1][0] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); - structPtr->conditionData.stat[arg1][1] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); - structPtr->conditionData.stat[arg1][2] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); - structPtr->conditionData.stat[arg1][3] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); - structPtr->conditionData.stat[arg1][4] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); - structPtr->sheen[arg1] = (GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL) != 255) - ? GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL) / 29u - : 9; - structPtr->monMarks[arg1] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_MARKINGS, NULL); - sub_81D2754(structPtr->conditionData.stat[arg1], structPtr->conditionData.unk14[arg1]); + boxId = monListPtr->monData[listId].boxId; + monId = monListPtr->monData[listId].monId; + structPtr->conditionData.conditions[loadId][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); + structPtr->conditionData.conditions[loadId][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); + structPtr->conditionData.conditions[loadId][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); + structPtr->conditionData.conditions[loadId][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); + structPtr->conditionData.conditions[loadId][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); + structPtr->numSparkles[loadId] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); + structPtr->monMarks[loadId] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_MARKINGS, NULL); + sub_81D2754(structPtr->conditionData.conditions[loadId], structPtr->conditionData.unk14[loadId]); } else { - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { - structPtr->conditionData.stat[arg1][i] = 0; - structPtr->conditionData.unk14[arg1][i].unk0 = 155; - structPtr->conditionData.unk14[arg1][i].unk2 = 91; + structPtr->conditionData.conditions[loadId][i] = 0; + structPtr->conditionData.unk14[loadId][i].unk0 = CONDITION_GRAPH_CENTER_X; + structPtr->conditionData.unk14[loadId][i].unk2 = CONDITION_GRAPH_UNK; } } } -void ConditionGraphDrawMonPic(s16 index, u8 arg1) +static void ConditionGraphDrawMonPic(s16 listId, u8 loadId) { u16 boxId, monId, species; u32 personality, tid; struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (index == (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId == (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) return; - boxId = monListPtr->monData[index].boxId; - monId = monListPtr->monData[index].monId; + boxId = monListPtr->monData[listId].boxId; + monId = monListPtr->monData[listId].monId; species = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SPECIES2, NULL); tid = GetBoxOrPartyMonData(boxId, monId, MON_DATA_OT_ID, NULL); personality = GetBoxOrPartyMonData(boxId, monId, MON_DATA_PERSONALITY, NULL); - LoadSpecialPokePic(&gMonFrontPicTable[species], structPtr->monPicGfx[arg1], species, personality, TRUE); - LZ77UnCompWram(GetMonSpritePalFromSpeciesAndPersonality(species, tid, personality), structPtr->monPal[arg1]); + LoadSpecialPokePic(&gMonFrontPicTable[species], structPtr->monPicGfx[loadId], species, personality, TRUE); + LZ77UnCompWram(GetMonSpritePalFromSpeciesAndPersonality(species, tid, personality), structPtr->monPal[loadId]); } u16 GetMonListCount(void) @@ -563,16 +560,16 @@ u8 sub_81CDC9C(void) return structPtr->monIndex; } -void *GetConditionMonPicGfx(u8 id) +void *GetConditionMonPicGfx(u8 loadId) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->monPicGfx[id]; + return structPtr->monPicGfx[loadId]; } -void *GetConditionMonPal(u8 id) +void *GetConditionMonPal(u8 loadId) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->monPal[id]; + return structPtr->monPal[loadId]; } u8 sub_81CDCEC(void) @@ -581,16 +578,16 @@ u8 sub_81CDCEC(void) return structPtr->unk6789; } -u8 *GetConditionMonNameBuffer(u8 id) +u8 *GetConditionMonNameText(u8 loadId) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->nameBuffer[id]; + return structPtr->nameText[loadId]; } -u8 *GetConditionMonLocationBuffer(u8 id) +u8 *GetConditionMonLocationText(u8 loadId) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->searchLocBuffer[id]; + return structPtr->locationText[loadId]; } u16 GetConditionMonDataBuffer(void) @@ -617,8 +614,8 @@ u8 TryGetMonMarkId(void) return 0; } -u8 GetMonSheen(void) +u8 GetNumConditionMonSparkles(void) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->sheen[structPtr->mark]; + return structPtr->numSparkles[structPtr->mark]; } diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index 4799b163c266..ef07c9be623c 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -15,22 +15,22 @@ #include "strings.h" #include "text.h" -u32 LoopedTask_TransitionMons(s32); -u32 LoopedTask_ExitPartyConditionMenu(s32); -u32 LoopedTask_MoveCursorNoTransition(s32); -u32 LoopedTask_SlideMonOut(s32); -u32 LoopedTask_OpenMonMarkingsWindow(s32); -u32 LoopedTask_CloseMonMarkingsWindow(s32); +static u32 LoopedTask_TransitionMons(s32); +static u32 LoopedTask_ExitPartyConditionMenu(s32); +static u32 LoopedTask_MoveCursorNoTransition(s32); +static u32 LoopedTask_SlideMonOut(s32); +static u32 LoopedTask_OpenMonMarkingsWindow(s32); +static u32 LoopedTask_CloseMonMarkingsWindow(s32); -BSS_DATA u8 gUnknown_030012BC; +static u8 sUnknown_030012BC; const u16 gConditionGraphData_Pal[] = INCBIN_U16("graphics/pokenav/condition/graph_data.gbapal"); const u16 gConditionText_Pal[] = INCBIN_U16("graphics/pokenav/condition/text.gbapal"); -const u32 gUnknown_08623228[] = INCBIN_U32("graphics/pokenav/8623228.4bpp.lz"); -const u32 sConditionGraph_Tilemap[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz"); -const u16 sConditionGraphMonMarkingsPal[] = INCBIN_U16("graphics/pokenav/8623338.gbapal"); +static const u32 sUnknown_08623228[] = INCBIN_U32("graphics/pokenav/condition/graph_data.4bpp.lz"); +static const u32 sConditionGraph_Tilemap[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz"); +static const u16 sConditionGraphMonMarkingsPal[] = INCBIN_U16("graphics/pokenav/8623338.gbapal"); -const struct BgTemplate sPartyConditionBgTemplates[3] = +static const struct BgTemplate sPartyConditionBgTemplates[3] = { { .bg = 1, @@ -61,7 +61,7 @@ const struct BgTemplate sPartyConditionBgTemplates[3] = } }; -const struct WindowTemplate sMonNameGenderWindowTemplate = +static const struct WindowTemplate sMonNameGenderWindowTemplate = { .bg = 1, .tilemapLeft = 13, @@ -72,7 +72,7 @@ const struct WindowTemplate sMonNameGenderWindowTemplate = .baseBlock = 2 }; -const struct WindowTemplate sConditionGraphListIdWindowTemplate = +static const struct WindowTemplate sConditionGraphListIdWindowTemplate = { .bg = 1, .tilemapLeft = 1, @@ -83,7 +83,7 @@ const struct WindowTemplate sConditionGraphListIdWindowTemplate = .baseBlock = 0x36 }; -const struct WindowTemplate sUnusedWindowTemplate1 = +static const struct WindowTemplate sUnusedWindowTemplate1 = { .bg = 1, .tilemapLeft = 1, @@ -94,7 +94,7 @@ const struct WindowTemplate sUnusedWindowTemplate1 = .baseBlock = 0x44 }; -const struct WindowTemplate sUnusedWindowTemplate2 = +static const struct WindowTemplate sUnusedWindowTemplate2 = { .bg = 1, .tilemapLeft = 13, @@ -105,7 +105,7 @@ const struct WindowTemplate sUnusedWindowTemplate2 = .baseBlock = 0x44 }; -const LoopedTask sPartyConditionLoopedTaskFuncs[] = +static const LoopedTask sPartyConditionLoopedTaskFuncs[] = { [PARTY_CONDITION_FUNC_NONE] = NULL, [PARTY_CONDITION_FUNC_SLIDE_MON_IN] = LoopedTask_TransitionMons, @@ -132,26 +132,26 @@ struct Pokenav7Struct u8 listIndexWindowId; u8 unusedWindowId1; u8 unusedWindowId2; - struct MonMarkingsMenu monMarks; + struct MonMarkingsMenu marksMenu; struct Sprite *monMarksSprite; struct Sprite *conditionSparkleSprites[MAX_CONDITION_SPARKLES]; u8 windowModeState; - u8 filler2[0x38ac - 0x2909]; + u8 filler2[0xFA3]; }; extern s8 GetMonMarkIndex(void); // This function's declaration here is s8 vs. u8 in pokenav_conditions_1.c -u32 LoopedTask_OpenPartyConditionGraph(s32 state); -u32 GetPartyConditionLoopedTaskActive(void); -void CreateConditionMonPic(u8 var); -void CreateMonMarkingsOrPokeballIndicators(void); -void CopyUnusedConditionWindowsToVram(void); -bool32 UpdateConditionGraphWindows(u8 a0, u16 a1, bool8 a2); -void sub_81CEE44(void); -void DoConditionGraphTransition(void); -void sub_81CEEC8(void); -void sub_81CEE68(void); -void ToggleBg2(bool8 showBg); +static u32 LoopedTask_OpenPartyConditionGraph(s32 state); +static u32 GetPartyConditionLoopedTaskActive(void); +static void CreateConditionMonPic(u8 var); +static void CreateMonMarkingsOrPokeballIndicators(void); +static void CopyUnusedConditionWindowsToVram(void); +static bool32 UpdateConditionGraphWindows(u8 a0, u16 a1, bool8 a2); +static void sub_81CEE44(void); +static void DoConditionGraphTransition(void); +static void sub_81CEEC8(void); +static void sub_81CEE68(void); +static void ToggleGraphData(bool8 showBg); // code bool32 OpenPartyConditionMenu(void) @@ -181,13 +181,13 @@ u32 IsPartyConditionLoopedTaskActive(void) return structPtr->callback(); } -u32 GetPartyConditionLoopedTaskActive(void) +static u32 GetPartyConditionLoopedTaskActive(void) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); return IsLoopedTaskActive(structPtr->loopedTaskId); } -u32 LoopedTask_OpenPartyConditionGraph(s32 state) +static u32 LoopedTask_OpenPartyConditionGraph(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); @@ -213,7 +213,7 @@ u32 LoopedTask_OpenPartyConditionGraph(s32 state) case 2: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - DecompressAndCopyTileDataToVram(2, gUnknown_08623228, 0, 0, 0); + DecompressAndCopyTileDataToVram(2, sUnknown_08623228, 0, 0, 0); return LT_INC_AND_PAUSE; case 3: if (FreeTempTileDataBuffersIfPossible()) @@ -320,14 +320,14 @@ u32 LoopedTask_OpenPartyConditionGraph(s32 state) return LT_PAUSE; return LT_INC_AND_PAUSE; case 19: - ToggleBg2(TRUE); + ToggleGraphData(TRUE); return LT_INC_AND_PAUSE; case 20: - if (!TryUpdateConditionMonTransitionOn(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionGraph_UpdateMonEnter(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); if (IsConditionMenuSearchMode() == TRUE || GetConditionGraphCurrentMonIndex() != GetMonListCount()) - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetMonSheen()); + CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); return LT_FINISH; } @@ -337,7 +337,7 @@ u32 LoopedTask_OpenPartyConditionGraph(s32 state) return LT_FINISH; } -u32 LoopedTask_ExitPartyConditionMenu(s32 state) +static u32 LoopedTask_ExitPartyConditionMenu(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); @@ -348,9 +348,9 @@ u32 LoopedTask_ExitPartyConditionMenu(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 1: - if (TryUpdateConditionMonTransitionOff(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (ConditionGraph_UpdateMonExit(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) return 2; - ToggleBg2(FALSE); + ToggleGraphData(FALSE); return LT_INC_AND_CONTINUE; case 2: PokenavFadeScreen(0); @@ -370,10 +370,10 @@ u32 LoopedTask_ExitPartyConditionMenu(s32 state) return LT_FINISH; } -u32 LoopedTask_TransitionMons(s32 state) +static u32 LoopedTask_TransitionMons(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - struct ConditionGraph *unkPtr = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphDataPtr(); switch (state) { @@ -388,7 +388,7 @@ u32 LoopedTask_TransitionMons(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: - TransitionConditionGraph(unkPtr); + TransitionConditionGraph(graph); return LT_INC_AND_CONTINUE; case 4: if (!MoveConditionMonOffscreen(&structPtr->monTransitionX)) @@ -411,14 +411,14 @@ u32 LoopedTask_TransitionMons(s32 state) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 9: - unkPtr = GetConditionGraphDataPtr(); - if (!TryUpdateConditionMonTransitionOn(unkPtr, &structPtr->monTransitionX)) + graph = GetConditionGraphDataPtr(); + if (!ConditionGraph_UpdateMonEnter(graph, &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); if (IsConditionMenuSearchMode() != TRUE && GetConditionGraphCurrentMonIndex() == GetMonListCount()) return LT_INC_AND_CONTINUE; - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetMonSheen()); + CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); return LT_INC_AND_CONTINUE; } return LT_PAUSE; @@ -427,7 +427,7 @@ u32 LoopedTask_TransitionMons(s32 state) return LT_FINISH; } -u32 LoopedTask_MoveCursorNoTransition(s32 state) +static u32 LoopedTask_MoveCursorNoTransition(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); @@ -459,10 +459,10 @@ u32 LoopedTask_MoveCursorNoTransition(s32 state) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 8: - if (!TryUpdateConditionMonTransitionOn(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionGraph_UpdateMonEnter(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetMonSheen()); + CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); return LT_INC_AND_CONTINUE; } return LT_PAUSE; @@ -471,7 +471,7 @@ u32 LoopedTask_MoveCursorNoTransition(s32 state) return LT_FINISH; } -u32 LoopedTask_SlideMonOut(s32 state) +static u32 LoopedTask_SlideMonOut(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); @@ -488,7 +488,7 @@ u32 LoopedTask_SlideMonOut(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: - if (!TryUpdateConditionMonTransitionOff(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionGraph_UpdateMonExit(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 4: @@ -509,7 +509,7 @@ u32 LoopedTask_SlideMonOut(s32 state) return LT_FINISH; } -u32 LoopedTask_OpenMonMarkingsWindow(s32 state) +static u32 LoopedTask_OpenMonMarkingsWindow(s32 state) { switch (state) { @@ -528,7 +528,7 @@ u32 LoopedTask_OpenMonMarkingsWindow(s32 state) return LT_FINISH; } -u32 LoopedTask_CloseMonMarkingsWindow(s32 state) +static u32 LoopedTask_CloseMonMarkingsWindow(s32 state) { switch (state) { @@ -555,7 +555,7 @@ static u8 *UnusedPrintNumberString(u8 *dst, u16 num) return txtPtr; } -bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) +static bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) { u8 text[32]; const u8 *str; @@ -571,23 +571,23 @@ bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) case 1: if (GetConditionGraphCurrentMonIndex() != GetMonListCount() - 1 || IsConditionMenuSearchMode() == TRUE) { - str = GetConditionMonNameBuffer(bufferIndex); + str = GetConditionMonNameText(bufferIndex); AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 1, 0, NULL); } break; case 2: if (IsConditionMenuSearchMode() == TRUE) { - str = GetConditionMonLocationBuffer(bufferIndex); + str = GetConditionMonLocationText(bufferIndex); AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 17, 0, NULL); text[0] = EXT_CTRL_CODE_BEGIN; text[1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; text[2] = TEXT_COLOR_BLUE; text[3] = TEXT_COLOR_TRANSPARENT; text[4] = TEXT_COLOR_LIGHT_BLUE; - StringCopy(text + 5, gText_Number2); + StringCopy(&text[5], gText_Number2); AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 4, 1, 0, NULL); - ConvertIntToDecimalStringN(text + 5, GetConditionMonDataBuffer(), STR_CONV_MODE_RIGHT_ALIGN, 4); + ConvertIntToDecimalStringN(&text[5], GetConditionMonDataBuffer(), STR_CONV_MODE_RIGHT_ALIGN, 4); AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 28, 1, 0, NULL); } break; @@ -624,7 +624,7 @@ bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) return FALSE; } -void CopyUnusedConditionWindowsToVram(void) +static void CopyUnusedConditionWindowsToVram(void) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); @@ -643,9 +643,9 @@ void sub_81CE964(struct Sprite *sprite) void HighlightCurrentPartyIndexPokeball(struct Sprite *sprite) { if (GetConditionGraphCurrentMonIndex() == GetMonListCount() - 1) - sprite->oam.paletteNum = IndexOfSpritePaletteTag(0x65); + sprite->oam.paletteNum = IndexOfSpritePaletteTag(TAG_CONDITION_BALL); else - sprite->oam.paletteNum = IndexOfSpritePaletteTag(0x66); + sprite->oam.paletteNum = IndexOfSpritePaletteTag(TAG_CONDITION_CANCEL); } void MonMarkingsCallback(struct Sprite *sprite) @@ -653,7 +653,7 @@ void MonMarkingsCallback(struct Sprite *sprite) StartSpriteAnim(sprite, TryGetMonMarkId()); } -void CreateMonMarkingsOrPokeballIndicators(void) +static void CreateMonMarkingsOrPokeballIndicators(void) { struct SpriteSheet sprSheets[4]; struct SpriteTemplate sprTemplate; @@ -666,17 +666,17 @@ void CreateMonMarkingsOrPokeballIndicators(void) LoadConditionSelectionIcons(sprSheets, &sprTemplate, sprPals); if (IsConditionMenuSearchMode() == TRUE) { - structPtr->monMarks.baseTileTag = 0x6A; - structPtr->monMarks.basePaletteTag = 0x6A; - InitMonMarkingsMenu(&structPtr->monMarks); + structPtr->marksMenu.baseTileTag = TAG_CONDITION_MARKINGS_MENU; + structPtr->marksMenu.basePaletteTag = TAG_CONDITION_MARKINGS_MENU; + InitMonMarkingsMenu(&structPtr->marksMenu); BufferMonMarkingsMenuTiles(); - sprite = CreateMonMarkingAllCombosSprite(0x69, 0x69, sConditionGraphMonMarkingsPal); + sprite = CreateMonMarkingAllCombosSprite(TAG_CONDITION_MON_MARKINGS, TAG_CONDITION_MON_MARKINGS, sConditionGraphMonMarkingsPal); sprite->oam.priority = 3; sprite->x = 192; sprite->y = 32; sprite->callback = MonMarkingsCallback; structPtr->monMarksSprite = sprite; - PokenavFillPalette(IndexOfSpritePaletteTag(0x69), 0); + PokenavFillPalette(IndexOfSpritePaletteTag(TAG_CONDITION_MON_MARKINGS), 0); } else { @@ -698,7 +698,7 @@ void CreateMonMarkingsOrPokeballIndicators(void) } } - sprTemplate.tileTag = 0x67; + sprTemplate.tileTag = TAG_CONDITION_BALL_PLACEHOLDER; sprTemplate.callback = SpriteCallbackDummy; for (; i < 6; i++) { @@ -714,7 +714,7 @@ void CreateMonMarkingsOrPokeballIndicators(void) } } - sprTemplate.tileTag = 0x66; + sprTemplate.tileTag = TAG_CONDITION_CANCEL; sprTemplate.callback = HighlightCurrentPartyIndexPokeball; spriteId = CreateSprite(&sprTemplate, 222, (i * 20) + 8, 0); if (spriteId != MAX_SPRITES) @@ -742,28 +742,28 @@ void sub_81CEBF4(struct Pokenav7Struct *structPtr) if (IsConditionMenuSearchMode() == TRUE) { DestroySprite(structPtr->monMarksSprite); - FreeSpriteTilesByTag(0x6A); - FreeSpriteTilesByTag(0x69); - FreeSpritePaletteByTag(0x6A); - FreeSpritePaletteByTag(0x69); + FreeSpriteTilesByTag(TAG_CONDITION_MARKINGS_MENU); + FreeSpriteTilesByTag(TAG_CONDITION_MON_MARKINGS); + FreeSpritePaletteByTag(TAG_CONDITION_MARKINGS_MENU); + FreeSpritePaletteByTag(TAG_CONDITION_MON_MARKINGS); } else { for (i = 0; i < 7; i++) DestroySprite(&gSprites[structPtr->partyPokeballSpriteIds[i]]); - FreeSpriteTilesByTag(0x65); - FreeSpriteTilesByTag(0x66); - FreeSpriteTilesByTag(0x67); - FreeSpritePaletteByTag(0x65); - FreeSpritePaletteByTag(0x66); + FreeSpriteTilesByTag(TAG_CONDITION_BALL); + FreeSpriteTilesByTag(TAG_CONDITION_CANCEL); + FreeSpriteTilesByTag(TAG_CONDITION_BALL_PLACEHOLDER); + FreeSpritePaletteByTag(TAG_CONDITION_BALL); + FreeSpritePaletteByTag(TAG_CONDITION_CANCEL); } if (structPtr->monPicSpriteId != SPRITE_NONE) { DestroySprite(&gSprites[structPtr->monPicSpriteId]); - FreeSpriteTilesByTag(0x64); - FreeSpritePaletteByTag(0x64); + FreeSpriteTilesByTag(TAG_CONDITION_MON); + FreeSpritePaletteByTag(TAG_CONDITION_MON); } } @@ -795,7 +795,7 @@ void MonPicGfxSpriteCallback(struct Sprite *sprite) sprite->x = structPtr->monTransitionX + 38; } -void CreateConditionMonPic(u8 id) +static void CreateConditionMonPic(u8 id) { struct SpriteTemplate sprTemplate; struct SpriteSheet sprSheet; @@ -814,15 +814,15 @@ void CreateConditionMonPic(u8 id) structPtr->monPicSpriteId = spriteId; if (spriteId == MAX_SPRITES) { - FreeSpriteTilesByTag(0x64); - FreeSpritePaletteByTag(0x64); + FreeSpriteTilesByTag(TAG_CONDITION_MON); + FreeSpritePaletteByTag(TAG_CONDITION_MON); structPtr->monPicSpriteId = SPRITE_NONE; } else { structPtr->monPicSpriteId = spriteId; gSprites[structPtr->monPicSpriteId].callback = MonPicGfxSpriteCallback; - structPtr->unk181C = (void*)(VRAM) + 0x10000 + (structPtr->monGfxTileStart * 32); + structPtr->unk181C = (void*)VRAM + BG_VRAM_SIZE + (structPtr->monGfxTileStart * 32); structPtr->monPalIndex = (structPtr->monPalIndex * 16) + 0x100; } } @@ -833,22 +833,22 @@ void CreateConditionMonPic(u8 id) } } -void sub_81CEE44(void) +static void sub_81CEE44(void) { - struct ConditionGraph *unk = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphDataPtr(); LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); - sub_81D2108(unk); + sub_81D2108(graph); ScanlineEffect_InitHBlankDmaTransfer(); } -void sub_81CEE68(void) +static void sub_81CEE68(void) { SetPokenavVBlankCallback(); } -void ToggleBg2(bool8 showBg) +static void ToggleGraphData(bool8 showBg) { if (showBg) ShowBg(2); @@ -856,17 +856,17 @@ void ToggleBg2(bool8 showBg) HideBg(2); } -void DoConditionGraphTransition(void) +static void DoConditionGraphTransition(void) { struct ConditionGraph *conditionPtr = GetConditionGraphDataPtr(); u8 id = GetMonMarkIndex(); - gUnknown_030012BC = id; + sUnknown_030012BC = id; sub_81D1F84(conditionPtr, conditionPtr->unk14[3], conditionPtr->unk14[id]); TransitionConditionGraph(conditionPtr); } -void sub_81CEEC8(void) +static void sub_81CEEC8(void) { struct ConditionGraph *conditionPtr = GetConditionGraphDataPtr(); @@ -879,7 +879,7 @@ u8 GetMonMarkingsData(void) struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); if (IsConditionMenuSearchMode() == 1) - return structPtr->monMarks.markings; + return structPtr->marksMenu.markings; else return 0; } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index bcfe94cb7aa1..4724eab0e02b 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -314,10 +314,10 @@ static const struct SpriteTemplate sMatchCallBlueLightSpriteTemplate = static const struct ScanlineEffectParams sPokenavMainMenuScanlineEffectParams = { - (void *)REG_ADDR_WIN0H, - ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, - 1, - 0 + ®_WIN0H, + ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, + 1, + 0 }; static bool32 PlayerHasTrainerRematches(void) diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 9f8918ba2d74..a8b01b827742 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -57,14 +57,14 @@ struct UsePokeblockSession u8 mainState; u8 unused1; u8 timer; - u8 statId; + u8 condition; u8 numEnhancements; u8 unused2; bool8 monInTopHalf; - u8 conditionsBeforeBlock[FLAVOR_COUNT]; - u8 conditionsAfterBlock[FLAVOR_COUNT]; - u8 enhancements[FLAVOR_COUNT]; - s16 pokeblockStatBoosts[FLAVOR_COUNT]; + u8 conditionsBeforeBlock[CONDITION_COUNT]; + u8 conditionsAfterBlock[CONDITION_COUNT]; + u8 enhancements[CONDITION_COUNT]; + s16 pokeblockStatBoosts[CONDITION_COUNT]; u8 numSelections; // num in party + 1 (for Cancel) u8 curSelection; bool8 (*loadNewSelection)(void); @@ -142,7 +142,7 @@ static void LoadAndCreateUpDownSprites(void); static void CalculateNumAdditionalSparkles(u8); static void PrintFirstEnhancement(void); static bool8 TryPrintNextEnhancement(void); -static void BufferEnhancedStatText(u8 *, u8, s16); +static void BufferEnhancedText(u8 *, u8, s16); static void PrintMenuWindowText(const u8 *); static void CalculatePokeblockEffectiveness(struct Pokeblock *, struct Pokemon *); static void SpriteCB_UpDown(struct Sprite *); @@ -178,22 +178,22 @@ static const u32 sGraphData_Tilemap[] = INCBIN_U32("graphics/pokeblock/use_scree // The condition/flavors aren't listed in their normal order in this file, they're listed as shown on the graph going counter-clockwise // Normally they would go Cool/Spicy, Beauty/Dry, Cute/Sweet, Smart/Bitter, Tough/Sour (also graph order, but clockwise) -static const u32 sMonDataConditions[FLAVOR_COUNT] = +static const u32 sConditionToMonData[CONDITION_COUNT] = { - MON_DATA_COOL, - MON_DATA_TOUGH, - MON_DATA_SMART, - MON_DATA_CUTE, - MON_DATA_BEAUTY + [CONDITION_COOL] = MON_DATA_COOL, + [CONDITION_TOUGH] = MON_DATA_TOUGH, + [CONDITION_SMART] = MON_DATA_SMART, + [CONDITION_CUTE] = MON_DATA_CUTE, + [CONDITION_BEAUTY] = MON_DATA_BEAUTY }; -static const u8 sFlavors[FLAVOR_COUNT] = +static const u8 sConditionToFlavor[CONDITION_COUNT] = { - FLAVOR_SPICY, - FLAVOR_SOUR, - FLAVOR_BITTER, - FLAVOR_SWEET, - FLAVOR_DRY + [CONDITION_COOL] = FLAVOR_SPICY, + [CONDITION_TOUGH] = FLAVOR_SOUR, + [CONDITION_SMART] = FLAVOR_BITTER, + [CONDITION_CUTE] = FLAVOR_SWEET, + [CONDITION_BEAUTY] = FLAVOR_DRY }; static const u8 sNatureTextColors[] = @@ -286,13 +286,13 @@ static const struct WindowTemplate sUsePokeblockYesNoWinTemplate = .baseBlock = 0x83 }; -static const u8 *const sContestStatNames[] = +static const u8 *const sConditionNames[CONDITION_COUNT] = { - gText_Coolness, - gText_Toughness, - gText_Smartness, - gText_Cuteness, - gText_Beauty3 + [CONDITION_COOL] = gText_Coolness, + [CONDITION_TOUGH] = gText_Toughness, + [CONDITION_SMART] = gText_Smartness, + [CONDITION_CUTE] = gText_Cuteness, + [CONDITION_BEAUTY] = gText_Beauty3 }; static const struct SpriteSheet sSpriteSheet_UpDown = @@ -305,13 +305,13 @@ static const struct SpritePalette sSpritePalette_UpDown = gUsePokeblockUpDown_Pal, TAG_UP_DOWN }; -static const s16 sUpDownCoordsOnGraph[FLAVOR_COUNT][2] = +static const s16 sUpDownCoordsOnGraph[CONDITION_COUNT][2] = { - {156, 36}, - {117, 59}, - {117, 118}, - {197, 118}, - {197, 59} + [CONDITION_COOL] = {156, 36}, + [CONDITION_TOUGH] = {117, 59}, + [CONDITION_SMART] = {117, 118}, + [CONDITION_CUTE] = {197, 118}, + [CONDITION_BEAUTY] = {197, 59} }; static const struct OamData sOam_UpDown = @@ -487,7 +487,7 @@ static void LoadUsePokeblockMenu(void) { case 0: sMenu->curMonSpriteId = SPRITE_NONE; - InitConditionGraphData(&sMenu->graph); + ConditionGraph_Init(&sMenu->graph); sInfo->mainState++; break; case 1: @@ -537,7 +537,7 @@ static void LoadUsePokeblockMenu(void) sInfo->mainState++; break; case 11: - sub_81D2754(sMenu->graph.stat[0], sMenu->graph.unk14[0]); + sub_81D2754(sMenu->graph.conditions[0], sMenu->graph.unk14[0]); InitConditionGraphState(&sMenu->graph); sInfo->mainState++; break; @@ -767,8 +767,6 @@ static void ShowUsePokeblockMenuForResults(void) static void ShowPokeblockResults(void) { - u8 var; - switch (sInfo->mainState) { case 0: @@ -789,8 +787,7 @@ static void ShowPokeblockResults(void) sInfo->mainState++; break; case 3: - var = TransitionConditionGraph(&sMenu->graph); - if (!var) + if (!TransitionConditionGraph(&sMenu->graph)) { CalculateNumAdditionalSparkles(GetPartyIdFromSelectionId(sMenu->info.curSelection)); if (sMenu->info.curSelection != sMenu->info.numSelections - 1) @@ -906,16 +903,16 @@ static void PrintFirstEnhancement(void) DrawTextBorderOuter(WIN_TEXT, 151, 14); FillWindowPixelBuffer(WIN_TEXT, 17); - for (sInfo->statId = 0; sInfo->statId < FLAVOR_COUNT; sInfo->statId++) + for (sInfo->condition = 0; sInfo->condition < CONDITION_COUNT; sInfo->condition++) { - if (sInfo->enhancements[sInfo->statId] != 0) + if (sInfo->enhancements[sInfo->condition] != 0) break; } - if (sInfo->statId < FLAVOR_COUNT) - BufferEnhancedStatText(gStringVar4, sInfo->statId, sInfo->enhancements[sInfo->statId]); + if (sInfo->condition < CONDITION_COUNT) + BufferEnhancedText(gStringVar4, sInfo->condition, sInfo->enhancements[sInfo->condition]); else - BufferEnhancedStatText(gStringVar4, sInfo->statId, 0); + BufferEnhancedText(gStringVar4, sInfo->condition, 0); PrintMenuWindowText(gStringVar4); PutWindowTilemap(WIN_TEXT); @@ -928,20 +925,20 @@ static bool8 TryPrintNextEnhancement(void) while (1) { - sInfo->statId++; - if (sInfo->statId < FLAVOR_COUNT) + sInfo->condition++; + if (sInfo->condition < CONDITION_COUNT) { - if (sInfo->enhancements[sInfo->statId] != 0) + if (sInfo->enhancements[sInfo->condition] != 0) break; } else { - sInfo->statId = FLAVOR_COUNT; + sInfo->condition = CONDITION_COUNT; return FALSE; } } - BufferEnhancedStatText(gStringVar4, sInfo->statId, sInfo->enhancements[sInfo->statId]); + BufferEnhancedText(gStringVar4, sInfo->condition, sInfo->enhancements[sInfo->condition]); PrintMenuWindowText(gStringVar4); CopyWindowToVram(WIN_TEXT, COPYWIN_GFX); @@ -969,7 +966,7 @@ static void PrintMenuWindowText(const u8 *message) AddTextPrinterParameterized(WIN_TEXT, FONT_NORMAL, gStringVar4, 0, 1, 0, NULL); } -static void BufferEnhancedStatText(u8 *dest, u8 statId, s16 enhancement) +static void BufferEnhancedText(u8 *dest, u8 condition, s16 enhancement) { switch (enhancement) { @@ -979,7 +976,7 @@ static void BufferEnhancedStatText(u8 *dest, u8 statId, s16 enhancement) case -32768 ... -1: // if < 0 if (enhancement) dest[(u16)enhancement] += 0; // something you can't imagine - StringCopy(dest, sContestStatNames[statId]); + StringCopy(dest, sConditionNames[condition]); StringAppend(dest, gText_WasEnhanced); break; case 0: @@ -992,36 +989,36 @@ static void GetMonConditions(struct Pokemon *mon, u8 *data) { u16 i; - for (i = 0; i < FLAVOR_COUNT; i++) - data[i] = GetMonData(mon, sMonDataConditions[i]); + for (i = 0; i < CONDITION_COUNT; i++) + data[i] = GetMonData(mon, sConditionToMonData[i]); } static void AddPokeblockToConditions(struct Pokeblock *pokeblock, struct Pokemon *mon) { u16 i; - s16 cstat; + s16 stat; u8 data; - if (GetMonData(mon, MON_DATA_SHEEN) != 255) + if (GetMonData(mon, MON_DATA_SHEEN) != MAX_SHEEN) { CalculatePokeblockEffectiveness(pokeblock, mon); - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { - data = GetMonData(mon, sMonDataConditions[i]); - cstat = data + sInfo->pokeblockStatBoosts[i]; - if (cstat < 0) - cstat = 0; - if (cstat > 255) - cstat = 255; - data = cstat; - SetMonData(mon, sMonDataConditions[i], &data); + data = GetMonData(mon, sConditionToMonData[i]); + stat = data + sInfo->pokeblockStatBoosts[i]; + if (stat < 0) + stat = 0; + if (stat > MAX_CONDITION) + stat = MAX_CONDITION; + data = stat; + SetMonData(mon, sConditionToMonData[i], &data); } - cstat = (u8)(GetMonData(mon, MON_DATA_SHEEN)) + pokeblock->feel; - if (cstat > 255) - cstat = 255; + stat = (u8)(GetMonData(mon, MON_DATA_SHEEN)) + pokeblock->feel; + if (stat > MAX_SHEEN) + stat = MAX_SHEEN; - data = cstat; + data = stat; SetMonData(mon, MON_DATA_SHEEN, &data); } } @@ -1035,19 +1032,19 @@ static void CalculateConditionEnhancements(void) GetMonConditions(mon, sInfo->conditionsBeforeBlock); AddPokeblockToConditions(sInfo->pokeblock, mon); GetMonConditions(mon, sInfo->conditionsAfterBlock); - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) sInfo->enhancements[i] = sInfo->conditionsAfterBlock[i] - sInfo->conditionsBeforeBlock[i]; } static void CalculatePokeblockEffectiveness(struct Pokeblock *pokeblock, struct Pokemon *mon) { - s8 i, direction, taste; + s8 i, direction, flavor; - sInfo->pokeblockStatBoosts[0] = pokeblock->spicy; - sInfo->pokeblockStatBoosts[1] = pokeblock->sour; - sInfo->pokeblockStatBoosts[2] = pokeblock->bitter; - sInfo->pokeblockStatBoosts[3] = pokeblock->sweet; - sInfo->pokeblockStatBoosts[4] = pokeblock->dry; + sInfo->pokeblockStatBoosts[CONDITION_COOL] = pokeblock->spicy; + sInfo->pokeblockStatBoosts[CONDITION_TOUGH] = pokeblock->sour; + sInfo->pokeblockStatBoosts[CONDITION_SMART] = pokeblock->bitter; + sInfo->pokeblockStatBoosts[CONDITION_CUTE] = pokeblock->sweet; + sInfo->pokeblockStatBoosts[CONDITION_BEAUTY] = pokeblock->dry; if (gPokeblockGain > 0) direction = 1; @@ -1056,7 +1053,7 @@ static void CalculatePokeblockEffectiveness(struct Pokeblock *pokeblock, struct else return; - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { s16 amount = sInfo->pokeblockStatBoosts[i]; s8 boost = amount / 10; @@ -1064,9 +1061,9 @@ static void CalculatePokeblockEffectiveness(struct Pokeblock *pokeblock, struct if (amount % 10 >= 5) // round to the nearest boost++; - taste = GetMonFlavorRelation(mon, sFlavors[i]); - if (taste == direction) - sInfo->pokeblockStatBoosts[i] += boost * taste; + flavor = GetMonFlavorRelation(mon, sConditionToFlavor[i]); + if (flavor == direction) + sInfo->pokeblockStatBoosts[i] += boost * flavor; } } @@ -1075,7 +1072,7 @@ static bool8 IsSheenMaxed(void) if (GetBoxOrPartyMonData(sMenu->party[sMenu->info.curSelection].boxId, sMenu->party[sMenu->info.curSelection].monId, MON_DATA_SHEEN, - NULL) == 255) + NULL) == MAX_SHEEN) return TRUE; else return FALSE; @@ -1125,7 +1122,7 @@ static void LoadAndCreateUpDownSprites(void) LoadSpritePalette(&sSpritePalette_UpDown); sInfo->numEnhancements = 0; - for (i = 0; i < FLAVOR_COUNT; i++) + for (i = 0; i < CONDITION_COUNT; i++) { if (sInfo->enhancements[i] != 0) { @@ -1487,7 +1484,7 @@ static bool8 LoadNewSelection_CancelToMon(void) sMenu->info.helperState++; break; case 2: - if (!TryUpdateConditionMonTransitionOn(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionGraph_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) { // Load the new adjacent pokemon (not the one being shown) LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId); @@ -1514,7 +1511,7 @@ static bool8 LoadNewSelection_MonToCancel(void) switch (sMenu->info.helperState) { case 0: - if (!TryUpdateConditionMonTransitionOff(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionGraph_UpdateMonExit(&sMenu->graph, &sMenu->curMonXOffset)) sMenu->info.helperState++; break; case 1: @@ -1550,7 +1547,7 @@ static bool8 LoadNewSelection_MonToMon(void) sMenu->info.helperState++; break; case 2: - if (!TryUpdateConditionMonTransitionOn(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionGraph_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) { // Load the new adjacent pokemon (not the one being shown) LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId); @@ -1599,10 +1596,7 @@ static void SpriteCB_SelectionIconCancel(struct Sprite *sprite) static void CalculateNumAdditionalSparkles(u8 monIndex) { u8 sheen = GetMonData(&gPlayerParty[monIndex], MON_DATA_SHEEN); - - sMenu->numSparkles[sMenu->curLoadId] = (sheen != 255) - ? sheen / (255 / (MAX_CONDITION_SPARKLES - 1) + 1) - : MAX_CONDITION_SPARKLES - 1; + sMenu->numSparkles[sMenu->curLoadId] = GET_NUM_CONDITION_SPARKLES(sheen); } static void LoadConditionGfx(void) From 45908873591abb9fcb87a68721690c9a35559139 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Nov 2021 17:01:21 -0500 Subject: [PATCH 404/762] Clean up some register constant use --- include/gba/io_reg.h | 1 + src/battle_anim_effects_2.c | 4 ++-- src/battle_anim_ghost.c | 4 ++-- src/battle_anim_water.c | 2 +- src/battle_dome.c | 2 +- src/battle_main.c | 4 ++-- src/field_screen_effect.c | 2 +- src/intro.c | 4 ++-- src/libisagbprn.c | 10 +++++----- src/librfu_intr.c | 4 ++-- src/multiboot.c | 18 +++++++++--------- src/overworld.c | 2 +- src/rayquaza_scene.c | 2 +- 13 files changed, 30 insertions(+), 29 deletions(-) diff --git a/include/gba/io_reg.h b/include/gba/io_reg.h index 1daa99e1d794..148ce31db432 100644 --- a/include/gba/io_reg.h +++ b/include/gba/io_reg.h @@ -482,6 +482,7 @@ #define REG_SIODATA32 (*(vu32 *)REG_ADDR_SIODATA32) #define REG_SIOMLT_SEND (*(vu16 *)REG_ADDR_SIOMLT_SEND) #define REG_SIOMLT_RECV (*(vu64 *)REG_ADDR_SIOMLT_RECV) +#define REG_SIOMULTI(n) (*(vu16 *)(REG_ADDR_SIOMULTI0 + (n) * 2)) #define REG_SIOMULTI0 (*(vu16 *)REG_ADDR_SIOMULTI0) #define REG_SIOMULTI1 (*(vu16 *)REG_ADDR_SIOMULTI1) #define REG_SIOMULTI2 (*(vu16 *)REG_ADDR_SIOMULTI2) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 27149873d6a6..5944bc511974 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -2394,12 +2394,12 @@ void AnimTask_SketchDrawMon(u8 taskId) if (GetBattlerSpriteBGPriorityRank(gBattleAnimTarget) == 1) { task->data[6] = gBattle_BG1_X; - params.dmaDest = (u16 *)REG_ADDR_BG1HOFS; + params.dmaDest = ®_BG1HOFS; } else { task->data[6] = gBattle_BG2_X; - params.dmaDest = (u16 *)REG_ADDR_BG2HOFS; + params.dmaDest = ®_BG2HOFS; } for (i = task->data[0] - 0x40; i <= task->data[0]; i++) diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 03a003c604fb..60e943adf6e8 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -653,9 +653,9 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId) startLine = 0; if (position == 1) - task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, 4, 1); + task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG1HOFS, 1); else - task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, 8, 1); + task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG2HOFS, 1); task->data[15]++; break; diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 50918a24edbf..44df78421709 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -960,7 +960,7 @@ static void AnimTask_SurfWaveScanlineEffect(u8 taskId) else gScanlineEffectRegBuffers[0][i] = gScanlineEffectRegBuffers[1][i] = task->data[2]; - params.dmaDest = (vu16 *)REG_ADDR_BLDALPHA; + params.dmaDest = ®_BLDALPHA; params.dmaControl = SCANLINE_EFFECT_DMACNT_16BIT; params.initState = 1; params.unused9 = 0; diff --git a/src/battle_dome.c b/src/battle_dome.c index 45df83c7c5e7..1b067924ff49 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -870,7 +870,7 @@ static const struct WindowTemplate sInfoCardWindowTemplates[] = static const struct ScanlineEffectParams sTourneyTreeScanlineEffectParams = { - .dmaDest = (void *)REG_ADDR_BG3CNT, + .dmaDest = ®_BG3CNT, .dmaControl = SCANLINE_EFFECT_DMACNT_16BIT, .initState = 1, }; diff --git a/src/battle_main.c b/src/battle_main.c index 8079546d482a..85e1e17969e2 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -249,13 +249,13 @@ u8 gBattleControllerData[MAX_BATTLERS_COUNT]; // Used by the battle controllers static const struct ScanlineEffectParams sIntroScanlineParams16Bit = { - (void *)REG_ADDR_BG3HOFS, SCANLINE_EFFECT_DMACNT_16BIT, 1 + ®_BG3HOFS, SCANLINE_EFFECT_DMACNT_16BIT, 1 }; // unused static const struct ScanlineEffectParams sIntroScanlineParams32Bit = { - (void *)REG_ADDR_BG3HOFS, SCANLINE_EFFECT_DMACNT_32BIT, 1 + ®_BG3HOFS, SCANLINE_EFFECT_DMACNT_32BIT, 1 }; const struct SpriteTemplate gUnusedBattleInitSprite = diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index c27ec6c4c325..0cf5e414569a 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -56,7 +56,7 @@ const s32 gMaxFlashLevel = ARRAY_COUNT(sFlashLevelPixelRadii) - 1; const struct ScanlineEffectParams sFlashEffectParams = { - (void *)REG_ADDR_WIN0H, + ®_WIN0H, ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, 1 }; diff --git a/src/intro.c b/src/intro.c index 5cf99c97e609..024706f6c29a 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1848,7 +1848,7 @@ static void Task_Scene3_StartGroudon(u8 taskId) { gTasks[taskId].tState = 0; gTasks[taskId].func = Task_Scene3_Groudon; - ScanlineEffect_InitWave(0, 160, 4, 4, 1, 4, 0); + ScanlineEffect_InitWave(0, 160, 4, 4, 1, SCANLINE_EFFECT_REG_BG1HOFS, 0); } #define tScreenX data[1] @@ -2058,7 +2058,7 @@ static void Task_Scene3_LoadKyogre(u8 taskId) gTasks[taskId].tDelay = 16; gTasks[taskId].tZoom = 256; PanFadeAndZoomScreen(gTasks[taskId].tScreenX, gTasks[taskId].tScreenY, gTasks[taskId].tZoom, 0); - ScanlineEffect_InitWave(0, 0xA0, 4, 4, 1, 6, 0); + ScanlineEffect_InitWave(0, 0xA0, 4, 4, 1, SCANLINE_EFFECT_REG_BG1VOFS, 0); } static void Task_Scene3_Kyogre(u8 taskId) diff --git a/src/libisagbprn.c b/src/libisagbprn.c index e0e979e95e8d..69c6986aef3e 100644 --- a/src/libisagbprn.c +++ b/src/libisagbprn.c @@ -31,7 +31,7 @@ void AGBPrintFlush1Block(void); void AGBPrintInit(void) { volatile struct AGBPrintStruct *pPrint = (struct AGBPrintStruct *)AGB_PRINT_STRUCT_ADDR; - u16 *pWSCNT = (u16 *)REG_ADDR_WAITCNT; + u16 *pWSCNT = ®_WAITCNT; u16 *pProtect = (u16 *)AGB_PRINT_PROTECT_ADDR; u16 nOldWSCNT = *pWSCNT; *pWSCNT = WSCNT_DATA; @@ -57,7 +57,7 @@ static void AGBPutcInternal(const char cChr) void AGBPutc(const char cChr) { - u16 *pWSCNT = (u16 *)REG_ADDR_WAITCNT; + u16 *pWSCNT = ®_WAITCNT; u16 nOldWSCNT = *pWSCNT; volatile struct AGBPrintStruct *pPrint; *pWSCNT = WSCNT_DATA; @@ -71,7 +71,7 @@ void AGBPutc(const char cChr) void AGBPrint(const char *pBuf) { volatile struct AGBPrintStruct *pPrint = (struct AGBPrintStruct *)AGB_PRINT_STRUCT_ADDR; - u16 *pWSCNT = (u16 *)REG_ADDR_WAITCNT; + u16 *pWSCNT = ®_WAITCNT; u16 nOldWSCNT = *pWSCNT; *pWSCNT = WSCNT_DATA; while (*pBuf) @@ -105,9 +105,9 @@ static void AGBPrintTransferDataInternal(u32 bAllData) pProtect = (u16 *)AGB_PRINT_PROTECT_ADDR; pPrint = (struct AGBPrintStruct *)AGB_PRINT_STRUCT_ADDR; lpfnFuncFlush = (LPFN_PRINT_FLUSH)AGB_PRINT_FLUSH_ADDR; - pIME = (u16 *)REG_ADDR_IME; + pIME = ®_IME; nIME = *pIME; - pWSCNT = (u16 *)REG_ADDR_WAITCNT; + pWSCNT = ®_WAITCNT; nOldWSCNT = *pWSCNT; *pIME = nIME & ~1; *pWSCNT = WSCNT_DATA; diff --git a/src/librfu_intr.c b/src/librfu_intr.c index 19ea60b0674a..d902b1c45be6 100644 --- a/src/librfu_intr.c +++ b/src/librfu_intr.c @@ -336,8 +336,8 @@ static u16 handshake_wait(u16 slot) static void STWI_set_timer_in_RAM(u8 count) { - vu16* regTMCNTL = (vu16*)(REG_ADDR_TMCNT_L + gSTWIStatus->timerSelect * 4); - vu16* regTMCNTH = (vu16*)(REG_ADDR_TMCNT_H + gSTWIStatus->timerSelect * 4); + vu16* regTMCNTL = ®_TMCNT_L(gSTWIStatus->timerSelect); + vu16* regTMCNTH = ®_TMCNT_H(gSTWIStatus->timerSelect); REG_IME = 0; switch (count) { diff --git a/src/multiboot.c b/src/multiboot.c index 19245b5b33b3..15b062ed65ee 100644 --- a/src/multiboot.c +++ b/src/multiboot.c @@ -90,7 +90,7 @@ int MultiBootMain(struct MultiBootParam *mp) k = 0x0e; for (i = MULTIBOOT_NCHILD; i != 0; i--) { - if (*(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2) != 0xffff) + if (REG_SIOMULTI(i) != 0xffff) { break; } @@ -102,7 +102,7 @@ int MultiBootMain(struct MultiBootParam *mp) for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if (mp->client_bit & (1 << i)) { if (j != ((MULTIBOOT_CLIENT_INFO << 8) | (1 << i))) @@ -141,7 +141,7 @@ int MultiBootMain(struct MultiBootParam *mp) mp->probe_target_bit = 0; for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if ((j >> 8) == MULTIBOOT_CLIENT_INFO) { MultiBoot_required_data[i - 1] = j; @@ -166,7 +166,7 @@ int MultiBootMain(struct MultiBootParam *mp) { if (mp->probe_target_bit & (1 << i)) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if (j != MultiBoot_required_data[i - 1]) { mp->probe_target_bit ^= 1 << i; @@ -179,7 +179,7 @@ int MultiBootMain(struct MultiBootParam *mp) k = 1; for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); mp->client_data[i - 1] = j; if (mp->probe_target_bit & (1 << i)) { @@ -214,7 +214,7 @@ int MultiBootMain(struct MultiBootParam *mp) case 0xd1: for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if (mp->probe_target_bit & (1 << i)) { if ((j >> 8) != MULTIBOOT_CLIENT_DLREADY) @@ -242,7 +242,7 @@ int MultiBootMain(struct MultiBootParam *mp) { if (mp->probe_target_bit & (1 << i)) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if ((j >> 8) != (MULTIBOOT_MASTER_START_PROBE + 1 - (mp->probe_count >> 1)) || ((j & 0xff) != (1 << i))) { @@ -391,7 +391,7 @@ static int MultiBootHandShake(struct MultiBootParam *mp) default: for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if ((mp->client_bit & (1 << i)) && j != must_data) { @@ -413,7 +413,7 @@ static int MultiBootHandShake(struct MultiBootParam *mp) case 0xe8: for (i = MULTIBOOT_NCHILD; i != 0; i--) { - j = *(vu16 *)(REG_ADDR_SIOMULTI0 + i * 2); + j = REG_SIOMULTI(i); if ((mp->client_bit & (1 << i)) && j != must_data) { MultiBootInit(mp); diff --git a/src/overworld.c b/src/overworld.c index 9a5c41a7f114..c9aa9ba57f7f 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -313,7 +313,7 @@ static const struct BgTemplate sOverworldBgTemplates[] = static const struct ScanlineEffectParams sFlashEffectParams = { - (void *)REG_ADDR_WIN0H, + ®_WIN0H, ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, 1, 0, diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 51498fa1d68e..6525daa1e501 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -490,7 +490,7 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_KyogreDorsalFin = static const struct ScanlineEffectParams sScanlineParams_DuoFight_Clouds = { - .dmaDest = (vu16 *)REG_ADDR_BG1HOFS, + .dmaDest = ®_BG1HOFS, .dmaControl = SCANLINE_EFFECT_DMACNT_16BIT, .initState = 1 }; From 7efdc0902b5951575560ee44023c6ce8f240a4b5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Nov 2021 18:52:30 -0500 Subject: [PATCH 405/762] Finish condition graph doc --- include/menu_specialized.h | 107 ++++++----- include/pokenav.h | 2 +- src/menu_specialized.c | 370 +++++++++++++++++++++---------------- src/pokenav_conditions_1.c | 30 +-- src/pokenav_conditions_2.c | 42 ++--- src/use_pokeblock.c | 30 +-- 6 files changed, 320 insertions(+), 261 deletions(-) diff --git a/include/menu_specialized.h b/include/menu_specialized.h index 2f212b5d6921..146b930b4315 100644 --- a/include/menu_specialized.h +++ b/include/menu_specialized.h @@ -7,6 +7,14 @@ #include "pokemon.h" #include "constants/berry.h" +// Window IDs for the Player PC Mailbox +enum { + MAILBOXWIN_TITLE, + MAILBOXWIN_LIST, + MAILBOXWIN_OPTIONS, + MAILBOXWIN_COUNT +}; + enum { TAG_CONDITION_MON = 100, TAG_CONDITION_BALL, @@ -18,34 +26,19 @@ enum { TAG_CONDITION_MARKINGS_MENU_2, // Used implicitly by CreateMonMarkingsMenuSprites }; - #define MAX_CONDITION_SPARKLES 10 // 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; -// Window IDs for the Player PC Mailbox -enum { - MAILBOXWIN_TITLE, - MAILBOXWIN_LIST, - MAILBOXWIN_OPTIONS, - MAILBOXWIN_COUNT -}; - -struct UnknownSubStruct_81D1ED4 -{ - u16 unk0; - u16 unk2; -}; - -#define CONDITION_GRAPH_CENTER_X 155 -#define CONDITION_GRAPH_TOP_Y 56 +#define CONDITION_GRAPH_TOP_Y 56 #define CONDITION_GRAPH_BOTTOM_Y 121 -#define CONDITION_GRAPH_HEIGHT (CONDITION_GRAPH_BOTTOM_Y - CONDITION_GRAPH_TOP_Y + 1) -#define CONDITION_GRAPH_UNK_1 10 -#define CONDITION_GRAPH_UNK_2 9 -#define CONDITION_GRAPH_UNK 91 +#define CONDITION_GRAPH_HEIGHT (CONDITION_GRAPH_BOTTOM_Y - CONDITION_GRAPH_TOP_Y + 1) +#define CONDITION_GRAPH_CENTER_X 155 +#define CONDITION_GRAPH_CENTER_Y ((CONDITION_GRAPH_BOTTOM_Y + CONDITION_GRAPH_TOP_Y) / 2 + 3) +#define CONDITION_GRAPH_UPDATE_STEPS 10 +#define CONDITION_GRAPH_LOAD_MAX 4 // Equivalent to flavor and contest values, but in a different order. enum { @@ -57,55 +50,75 @@ enum { CONDITION_COUNT }; +// Yet another order. This one is the same (by coincidence) as the contest categories +enum { + GRAPH_COOL, + GRAPH_BEAUTY, + GRAPH_CUTE, + GRAPH_SMART, + GRAPH_TOUGH, +}; + struct ConditionGraph { - /*0x000*/ u8 conditions[4][CONDITION_COUNT]; - /*0x014*/ struct UnknownSubStruct_81D1ED4 unk14[4][CONDITION_COUNT]; - /*0x064*/ struct UnknownSubStruct_81D1ED4 unk64[CONDITION_GRAPH_UNK_1][CONDITION_COUNT]; - /*0x12C*/ struct UnknownSubStruct_81D1ED4 unk12C[CONDITION_COUNT]; + /*0x000*/ u8 conditions[CONDITION_GRAPH_LOAD_MAX][CONDITION_COUNT]; + /*0x014*/ struct UCoords16 savedPositions[CONDITION_GRAPH_LOAD_MAX][CONDITION_COUNT]; + /*0x064*/ struct UCoords16 newPositions[CONDITION_GRAPH_UPDATE_STEPS][CONDITION_COUNT]; + /*0x12C*/ struct UCoords16 curPositions[CONDITION_COUNT]; /*0x140*/ u16 scanlineRight[CONDITION_GRAPH_HEIGHT][2]; /*0x248*/ u16 scanlineLeft[CONDITION_GRAPH_HEIGHT][2]; - /*0x350*/ u16 unk350; - /*0x352*/ u16 unk352; - /*0x354*/ bool8 unk354; - /*0x355*/ u8 state; + /*0x350*/ u16 bottom; + /*0x352*/ u16 updateCounter; + /*0x354*/ bool8 needsDraw; + /*0x355*/ u8 scanlineResetState; }; +// Mailbox menu bool8 MailboxMenu_Alloc(u8 count); u8 MailboxMenu_AddWindow(u8 windowIdx); u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page); void MailboxMenu_AddScrollArrows(struct PlayerPCItemPageStruct *page); void MailboxMenu_Free(void); void MailboxMenu_RemoveWindow(u8 windowIdx); + +// Condition graph void ConditionGraph_Init(struct ConditionGraph *graph); -void sub_81D2108(struct ConditionGraph *graph); -void SetConditionGraphIOWindows(u8 bg); -void InitConditionGraphState(struct ConditionGraph *graph); -void sub_81D2230(struct ConditionGraph *graph); -bool8 SetupConditionGraphScanlineParams(struct ConditionGraph *graph); -bool8 TransitionConditionGraph(struct ConditionGraph *graph); -void sub_81D2754(u8 *arg0, struct UnknownSubStruct_81D1ED4 *arg1); -void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 *arg1, struct UnknownSubStruct_81D1ED4 *arg2); -void MoveRelearnerPrintText(u8 *str); -bool16 MoveRelearnerRunTextPrinters(void); -void MoveRelearnerCreateYesNoMenu(void); -u8 LoadMoveRelearnerMovesList(const struct ListMenuItem *items, u16 numChoices); -void InitMoveRelearnerWindows(bool8 useContextWindow); -s32 GetBoxOrPartyMonData(u16 boxId, u16 monId, s32 request, u8 *dst); +void ConditionGraph_InitWindow(u8 bg); +void ConditionGraph_InitResetScanline(struct ConditionGraph *graph); +bool8 ConditionGraph_ResetScanline(struct ConditionGraph *graph); +void ConditionGraph_Draw(struct ConditionGraph *graph); +bool8 ConditionGraph_TryUpdate(struct ConditionGraph *graph); +void ConditionGraph_Update(struct ConditionGraph *graph); +void ConditionGraph_CalcPositions(u8 *conditions, struct UCoords16 *positions); +void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords16 *arg1, struct UCoords16 *arg2); + +// Condition menu +bool8 ConditionMenu_UpdateMonEnter(struct ConditionGraph *graph, s16 *x); +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 GetConditionMenuMonGfx(void *tilesDst, void *palDst, u16 boxId, u16 monId, u16 partyId, u16 numMons, bool8 excludesCancel); -bool8 MoveConditionMonOnscreen(s16 *x); -bool8 MoveConditionMonOffscreen(s16 *x); -bool8 ConditionGraph_UpdateMonEnter(struct ConditionGraph *graph, s16 *x); -bool8 ConditionGraph_UpdateMonExit(struct ConditionGraph *graph, s16 *x); void LoadConditionMonPicTemplate(struct SpriteSheet *sheet, struct SpriteTemplate *template, struct SpritePalette *pal); 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 DestroyConditionSparkleSprites(struct Sprite **sprites); void FreeConditionSparkles(struct Sprite **sprites); + +// Move relearner +void MoveRelearnerPrintText(u8 *str); +bool16 MoveRelearnerRunTextPrinters(void); +void MoveRelearnerCreateYesNoMenu(void); +u8 LoadMoveRelearnerMovesList(const struct ListMenuItem *items, u16 numChoices); +void InitMoveRelearnerWindows(bool8 useContextWindow); + +// Level up window void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bgClr, u8 fgClr, u8 shadowClr); void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 shadowClr); void GetMonLevelUpWindowStats(struct Pokemon *mon, u16 *currStats); diff --git a/include/pokenav.h b/include/pokenav.h index 445ce752be48..b8c2178d1bba 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -437,7 +437,7 @@ u32 GetPartyConditionCallback(void); void FreePartyConditionSubstruct1(void); bool32 LoadPartyConditionMenuGfx(void); bool32 IsConditionMenuSearchMode(void); -struct ConditionGraph *GetConditionGraphDataPtr(void); +struct ConditionGraph *GetConditionGraphPtr(void); u16 GetConditionGraphCurrentMonIndex(void); u16 GetMonListCount(void); u8 GetNumConditionMonSparkles(void); diff --git a/src/menu_specialized.c b/src/menu_specialized.c index abeaba2c95d3..074621de4be7 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -32,8 +32,8 @@ EWRAM_DATA static u8 sMailboxWindowIds[MAILBOXWIN_COUNT] = {0}; EWRAM_DATA static struct ListMenuItem *sMailboxList = NULL; static void MailboxMenu_MoveCursorFunc(s32, bool8, struct ListMenu *); -static void sub_81D24A4(struct ConditionGraph *); -static void sub_81D2634(struct ConditionGraph *); +static void ConditionGraph_CalcRightHalf(struct ConditionGraph *); +static void ConditionGraph_CalcLeftHalf(struct ConditionGraph *); static void MoveRelearnerCursorCallback(s32, bool8, struct ListMenu *); static void MoveRelearnerDummy(void); static void SetNextConditionSparkle(struct Sprite *); @@ -85,7 +85,7 @@ static const struct ScanlineEffectParams sConditionGraphScanline = .initState = 1, }; -static const u8 sUnknown_08625410[MAX_CONDITION + 1] = +static const u8 sConditionToLineLength[MAX_CONDITION + 1] = { 4, 5, 6, 7, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 17, @@ -190,6 +190,10 @@ static const struct ListMenuTemplate sMoveRelearnerMovesListTemplate = .cursorKind = 0 }; +//-------------- +// Mailbox menu +//-------------- + bool8 MailboxMenu_Alloc(u8 count) { u8 i; @@ -303,67 +307,83 @@ void MailboxMenu_Free(void) Free(sMailboxList); } +//--------------------------------------- +// Condition graph +// +// This is the graph in the PokĂ©nav and +// PokĂ©block case that shows a PokĂ©mon's +// conditions (Beauty, Tough, etc.). +// It works by using scanlines to +// selectively reveal a bg that has been +// filled with the graph color. +//--------------------------------------- + +#define UNK_VAL(n, s)(((n) >> (s)) + (((n) >> ((s) - 1)) & 1)) + void ConditionGraph_Init(struct ConditionGraph *graph) { u8 i, j; for (j = 0; j < CONDITION_COUNT; j++) { - for (i = 0; i < CONDITION_GRAPH_UNK_1; i++) + for (i = 0; i < CONDITION_GRAPH_UPDATE_STEPS; i++) { - graph->unk64[i][j].unk0 = 0; - graph->unk64[i][j].unk2 = 0; + graph->newPositions[i][j].x = 0; + graph->newPositions[i][j].y = 0; } - for (i = 0; i < 4; i++) + + for (i = 0; i < CONDITION_GRAPH_LOAD_MAX; i++) { graph->conditions[i][j] = 0; - graph->unk14[i][j].unk0 = CONDITION_GRAPH_CENTER_X; - graph->unk14[i][j].unk2 = CONDITION_GRAPH_UNK; + graph->savedPositions[i][j].x = CONDITION_GRAPH_CENTER_X; + graph->savedPositions[i][j].y = CONDITION_GRAPH_CENTER_Y; } - graph->unk12C[j].unk0 = 0; - graph->unk12C[j].unk2 = 0; + graph->curPositions[j].x = 0; + graph->curPositions[j].y = 0; } - graph->unk354 = FALSE; - graph->unk352 = 0; + graph->needsDraw = FALSE; + graph->updateCounter = 0; } -void sub_81D1F84(struct ConditionGraph *graph, struct UnknownSubStruct_81D1ED4 *arg1, struct UnknownSubStruct_81D1ED4 *arg2) +// Fills the newPositions array with incremental positions between +// old and new for the graph transition when switching between PokĂ©mon. +void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords16 *old, struct UCoords16 *new) { u16 i, j; - s32 r5, r6; + s32 coord, increment; for (i = 0; i < CONDITION_COUNT; i++) { - r5 = arg1[i].unk0 << 8; - r6 = ((arg2[i].unk0 - arg1[i].unk0) << 8) / CONDITION_GRAPH_UNK_1; - for (j = 0; j < CONDITION_GRAPH_UNK_2; j++) + coord = old[i].x << 8; + increment = ((new[i].x - old[i].x) << 8) / CONDITION_GRAPH_UPDATE_STEPS; + for (j = 0; j < CONDITION_GRAPH_UPDATE_STEPS - 1; j++) { - graph->unk64[j][i].unk0 = (r5 >> 8) + ((r5 >> 7) & 1); - r5 += r6; + graph->newPositions[j][i].x = UNK_VAL(coord, 8); + coord += increment; } - graph->unk64[j][i].unk0 = arg2[i].unk0; + graph->newPositions[j][i].x = new[i].x; - r5 = arg1[i].unk2 << 8; - r6 = ((arg2[i].unk2 - arg1[i].unk2) << 8) / CONDITION_GRAPH_UNK_1; - for (j = 0; j < CONDITION_GRAPH_UNK_2; j++) + coord = old[i].y << 8; + increment = ((new[i].y - old[i].y) << 8) / CONDITION_GRAPH_UPDATE_STEPS; + for (j = 0; j < CONDITION_GRAPH_UPDATE_STEPS - 1; j++) { - graph->unk64[j][i].unk2 = (r5 >> 8) + ((r5 >> 7) & 1); - r5 += r6; + graph->newPositions[j][i].y = UNK_VAL(coord, 8); + coord += increment; } - graph->unk64[j][i].unk2 = arg2[i].unk2; + graph->newPositions[j][i].y = new[i].y; } - graph->unk352 = 0; + graph->updateCounter = 0; } -bool8 TransitionConditionGraph(struct ConditionGraph *graph) +bool8 ConditionGraph_TryUpdate(struct ConditionGraph *graph) { - if (graph->unk352 < CONDITION_GRAPH_UNK_1) + if (graph->updateCounter < CONDITION_GRAPH_UPDATE_STEPS) { - sub_81D2230(graph); - return (++graph->unk352 != CONDITION_GRAPH_UNK_1); + ConditionGraph_Update(graph); + return (++graph->updateCounter != CONDITION_GRAPH_UPDATE_STEPS); } else { @@ -371,51 +391,55 @@ bool8 TransitionConditionGraph(struct ConditionGraph *graph) } } -void InitConditionGraphState(struct ConditionGraph *graph) +void ConditionGraph_InitResetScanline(struct ConditionGraph *graph) { - graph->state = 0; + graph->scanlineResetState = 0; } -bool8 SetupConditionGraphScanlineParams(struct ConditionGraph *graph) +bool8 ConditionGraph_ResetScanline(struct ConditionGraph *graph) { struct ScanlineEffectParams params; - switch (graph->state) + switch (graph->scanlineResetState) { case 0: ScanlineEffect_Clear(); - graph->state++; + graph->scanlineResetState++; return TRUE; case 1: params = sConditionGraphScanline; ScanlineEffect_SetParams(params); - graph->state++; + graph->scanlineResetState++; return FALSE; default: return FALSE; } } -void sub_81D2108(struct ConditionGraph *graph) +void ConditionGraph_Draw(struct ConditionGraph *graph) { u16 i; - if (!graph->unk354) + if (!graph->needsDraw) return; - sub_81D24A4(graph); - sub_81D2634(graph); + ConditionGraph_CalcRightHalf(graph); + ConditionGraph_CalcLeftHalf(graph); for (i = 0; i < CONDITION_GRAPH_HEIGHT; i++) { - gScanlineEffectRegBuffers[1][(i + 55) * 2] = gScanlineEffectRegBuffers[0][(i + 55) * 2] = (graph->scanlineRight[i][0] << 8) | (graph->scanlineRight[i][1]); - gScanlineEffectRegBuffers[1][(i + 55) * 2 + 1] = gScanlineEffectRegBuffers[0][(i + 55) * 2 + 1] = (graph->scanlineLeft[i][0] << 8) | (graph->scanlineLeft[i][1]); + // Draw right half + gScanlineEffectRegBuffers[1][(i + CONDITION_GRAPH_TOP_Y - 1) * 2 + 0] = // double assignment + gScanlineEffectRegBuffers[0][(i + CONDITION_GRAPH_TOP_Y - 1) * 2 + 0] = (graph->scanlineRight[i][0] << 8) | (graph->scanlineRight[i][1]); + // Draw left half + gScanlineEffectRegBuffers[1][(i + CONDITION_GRAPH_TOP_Y - 1) * 2 + 1] = // double assignment + gScanlineEffectRegBuffers[0][(i + CONDITION_GRAPH_TOP_Y - 1) * 2 + 1] = (graph->scanlineLeft[i][0] << 8) | (graph->scanlineLeft[i][1]); } - graph->unk354 = FALSE; + graph->needsDraw = FALSE; } -void SetConditionGraphIOWindows(u8 bg) +void ConditionGraph_InitWindow(u8 bg) { u32 flags; @@ -434,146 +458,153 @@ void SetConditionGraphIOWindows(u8 bg) SetGpuReg(REG_OFFSET_WINOUT, flags); } -void sub_81D2230(struct ConditionGraph *graph) +void ConditionGraph_Update(struct ConditionGraph *graph) { u16 i; for (i = 0; i < CONDITION_COUNT; i++) - graph->unk12C[i] = graph->unk64[graph->unk352][i]; + graph->curPositions[i] = graph->newPositions[graph->updateCounter][i]; - graph->unk354 = TRUE; + graph->needsDraw = TRUE; } -static void sub_81D2278(struct ConditionGraph *graph, u16 *arg1, struct UnknownSubStruct_81D1ED4 *arg2, struct UnknownSubStruct_81D1ED4 *arg3, u8 arg4, u16 *arg5) +static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, struct UCoords16 *pos1, struct UCoords16 *pos2, bool8 dir, u16 *overflowScanline) { - u16 i, r8, r10, r0, var_30; + u16 i, height, top, bottom, x2; u16 *ptr; - s32 r4, var_2C = 0; + s32 x, xIncrement = 0; - if (arg2->unk2 < arg3->unk2) + if (pos1->y < pos2->y) { - r10 = arg2->unk2; - r0 = arg3->unk2; - r4 = arg2->unk0 << 10; - var_30 = arg3->unk0; - r8 = r0 - r10; - if (r8 != 0) - var_2C = ((var_30 - arg2->unk0) << 10) / r8; + top = pos1->y; + bottom = pos2->y; + x = pos1->x << 10; + x2 = pos2->x; + height = bottom - top; + if (height != 0) + xIncrement = ((x2 - pos1->x) << 10) / height; } else { - r0 = arg2->unk2; - r10 = arg3->unk2; - r4 = arg3->unk0 << 10; - var_30 = arg2->unk0; - r8 = r0 - r10; - if (r8 != 0) - var_2C = ((var_30 - arg3->unk0) << 10) / r8; + bottom = pos1->y; + top = pos2->y; + x = pos2->x << 10; + x2 = pos1->x; + height = bottom - top; + if (height != 0) + xIncrement = ((x2 - pos2->x) << 10) / height; } - r8++; - if (arg5 == NULL) + height++; + if (overflowScanline == NULL) { - arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; - for (i = 0; i < r8; i++) + scanline += (top - CONDITION_GRAPH_TOP_Y) * 2; + for (i = 0; i < height; i++) { - arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; - r4 += var_2C; - arg1 += 2; + scanline[dir] = UNK_VAL(x, 10) + dir; + x += xIncrement; + scanline += 2; } - ptr = arg1 - 2; + ptr = scanline - 2; } - else if (var_2C > 0) + else if (xIncrement > 0) { - arg5 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; + overflowScanline += (top - CONDITION_GRAPH_TOP_Y) * 2; // Less readable than the other loops, but it has to be written this way to match. - for (i = 0; i < r8; arg5[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4, r4 += var_2C, arg5 += 2, i++) + for (i = 0; i < height; overflowScanline[dir] = UNK_VAL(x, 10) + dir, x += xIncrement, overflowScanline += 2, i++) { - if (r4 >= (CONDITION_GRAPH_CENTER_X << 10)) + if (x >= (CONDITION_GRAPH_CENTER_X << 10)) break; } - graph->unk350 = r10 + i; - arg1 += (graph->unk350 - CONDITION_GRAPH_TOP_Y) * 2; - for (; i < r8; i++) + graph->bottom = top + i; + scanline += (graph->bottom - CONDITION_GRAPH_TOP_Y) * 2; + for (; i < height; i++) { - arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; - r4 += var_2C; - arg1 += 2; + scanline[dir] = UNK_VAL(x, 10) + dir; + x += xIncrement; + scanline += 2; } - ptr = arg1 - 2; + ptr = scanline - 2; } - else if (var_2C < 0) + else if (xIncrement < 0) { - arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; - for (i = 0; i < r8; i++) + scanline += (top - CONDITION_GRAPH_TOP_Y) * 2; + for (i = 0; i < height; i++) { - arg1[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; - if (r4 < (CONDITION_GRAPH_CENTER_X << 10)) + scanline[dir] = UNK_VAL(x, 10) + dir; + if (x < (CONDITION_GRAPH_CENTER_X << 10)) { - arg1[arg4] = CONDITION_GRAPH_CENTER_X; + scanline[dir] = CONDITION_GRAPH_CENTER_X; break; } - r4 += var_2C; - arg1 += 2; + x += xIncrement; + scanline += 2; } - graph->unk350 = r10 + i; - arg5 += (graph->unk350 - CONDITION_GRAPH_TOP_Y) * 2; - for (; i < r8; i++) + graph->bottom = top + i; + overflowScanline += (graph->bottom - CONDITION_GRAPH_TOP_Y) * 2; + for (; i < height; i++) { - arg5[arg4] = (r4 >> 10) + ((r4 >> 9) & 1) + arg4; - r4 += var_2C; - arg5 += 2; + overflowScanline[dir] = UNK_VAL(x, 10) + dir; + x += xIncrement; + overflowScanline += 2; } - ptr = arg5 - 2; + ptr = overflowScanline - 2; } else { - graph->unk350 = r10; - arg1 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; - arg5 += (r10 - CONDITION_GRAPH_TOP_Y) * 2; - arg1[1] = arg2->unk0 + 1; - arg5[0] = arg3->unk0; - arg5[1] = CONDITION_GRAPH_CENTER_X; + graph->bottom = top; + scanline += (top - CONDITION_GRAPH_TOP_Y) * 2; + overflowScanline += (top - CONDITION_GRAPH_TOP_Y) * 2; + scanline[1] = pos1->x + 1; + overflowScanline[0] = pos2->x; + overflowScanline[1] = CONDITION_GRAPH_CENTER_X; return; } - ptr[arg4] = arg4 + var_30; + ptr[dir] = dir + x2; } -static void sub_81D24A4(struct ConditionGraph *graph) +static void ConditionGraph_CalcRightHalf(struct ConditionGraph *graph) { - u16 i, r6, varMax; + u16 i, y, bottom; - if (graph->unk12C[0].unk2 < graph->unk12C[1].unk2) + // Calculate Cool -> Beauty line + if (graph->curPositions[GRAPH_COOL].y < graph->curPositions[GRAPH_BEAUTY].y) { - r6 = graph->unk12C[0].unk2; - sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[0], &graph->unk12C[1], 1, NULL); + y = graph->curPositions[GRAPH_COOL].y; + ConditionGraph_CalcLine(graph, graph->scanlineRight[0], &graph->curPositions[GRAPH_COOL], &graph->curPositions[GRAPH_BEAUTY], TRUE, NULL); } else { - r6 = graph->unk12C[1].unk2; - sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[1], &graph->unk12C[0], 0, NULL); + y = graph->curPositions[GRAPH_BEAUTY].y; + ConditionGraph_CalcLine(graph, graph->scanlineRight[0], &graph->curPositions[GRAPH_BEAUTY], &graph->curPositions[GRAPH_COOL], FALSE, NULL); } - sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[1], &graph->unk12C[2], 1, NULL); + // Calculate Beauty -> Cute line + // No need for conditional, positions on the Beauty line are always above the Cute line + ConditionGraph_CalcLine(graph, graph->scanlineRight[0], &graph->curPositions[GRAPH_BEAUTY], &graph->curPositions[GRAPH_CUTE], TRUE, NULL); - i = (graph->unk12C[2].unk2 <= graph->unk12C[3].unk2); - sub_81D2278(graph, graph->scanlineRight[0], &graph->unk12C[2], &graph->unk12C[3], i, graph->scanlineLeft[0]); - for (i = CONDITION_GRAPH_TOP_Y; i < r6; i++) + // Calculate Cute -> Tough line (includes left scanline because this crosses the halfway point) + i = (graph->curPositions[GRAPH_CUTE].y <= graph->curPositions[GRAPH_SMART].y); + ConditionGraph_CalcLine(graph, graph->scanlineRight[0], &graph->curPositions[GRAPH_CUTE], &graph->curPositions[GRAPH_SMART], i, graph->scanlineLeft[0]); + + // Clear down to new top + for (i = CONDITION_GRAPH_TOP_Y; i < y; i++) { graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = 0; graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][1] = 0; } - for (i = graph->unk12C[0].unk2; i <= graph->unk350; i++) + for (i = graph->curPositions[GRAPH_COOL].y; i <= graph->bottom; i++) graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = CONDITION_GRAPH_CENTER_X; - varMax = max(graph->unk350, graph->unk12C[2].unk2); - for (i = varMax + 1; i <= CONDITION_GRAPH_BOTTOM_Y; i++) + // Clear after new bottom + bottom = max(graph->bottom, graph->curPositions[GRAPH_CUTE].y); + for (i = bottom + 1; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = 0; graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][1] = 0; @@ -581,42 +612,48 @@ static void sub_81D24A4(struct ConditionGraph *graph) for (i = CONDITION_GRAPH_TOP_Y; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { - if (graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] == 0 && graph->scanlineRight[i - 56][1] != 0) + if (graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] == 0 + && graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][1] != 0) graph->scanlineRight[i - CONDITION_GRAPH_TOP_Y][0] = CONDITION_GRAPH_CENTER_X; } } -static void sub_81D2634(struct ConditionGraph *graph) +static void ConditionGraph_CalcLeftHalf(struct ConditionGraph *graph) { - s32 i, r6, varMax; + s32 i, y, bottom; - if (graph->unk12C[0].unk2 < graph->unk12C[4].unk2) + // Calculate Cool -> Tough line + if (graph->curPositions[GRAPH_COOL].y < graph->curPositions[GRAPH_TOUGH].y) { - r6 = graph->unk12C[0].unk2; - sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[0], &graph->unk12C[4], 0, NULL); + y = graph->curPositions[GRAPH_COOL].y; + ConditionGraph_CalcLine(graph, graph->scanlineLeft[0], &graph->curPositions[GRAPH_COOL], &graph->curPositions[GRAPH_TOUGH], FALSE, NULL); } else { - r6 = graph->unk12C[4].unk2; - sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[4], &graph->unk12C[0], 1, NULL); + y = graph->curPositions[GRAPH_TOUGH].y; + ConditionGraph_CalcLine(graph, graph->scanlineLeft[0], &graph->curPositions[GRAPH_TOUGH], &graph->curPositions[GRAPH_COOL], TRUE, NULL); } - sub_81D2278(graph, graph->scanlineLeft[0], &graph->unk12C[4], &graph->unk12C[3], 0, NULL); + // Calculate Tough -> Smart line + // No need for conditional, positions on the Tough line are always above the Smart line + ConditionGraph_CalcLine(graph, graph->scanlineLeft[0], &graph->curPositions[GRAPH_TOUGH], &graph->curPositions[GRAPH_SMART], FALSE, NULL); - for (i = CONDITION_GRAPH_TOP_Y; i < r6; i++) + // Clear down to new top + for (i = CONDITION_GRAPH_TOP_Y; i < y; i++) { - graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][0] = 0; - graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = 0; + graph->scanlineLeft[i - CONDITION_GRAPH_TOP_Y][0] = 0; + graph->scanlineLeft[i - CONDITION_GRAPH_TOP_Y][1] = 0; } - for (i = graph->unk12C[0].unk2; i <= graph->unk350; i++) - graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = CONDITION_GRAPH_CENTER_X; + for (i = graph->curPositions[GRAPH_COOL].y; i <= graph->bottom; i++) + graph->scanlineLeft[i - CONDITION_GRAPH_TOP_Y][1] = CONDITION_GRAPH_CENTER_X; - varMax = max(graph->unk350, graph->unk12C[3].unk2 + 1); - for (i = varMax; i <= CONDITION_GRAPH_BOTTOM_Y; i++) + // Clear after new bottom + bottom = max(graph->bottom, graph->curPositions[GRAPH_SMART].y + 1); + for (i = bottom; i <= CONDITION_GRAPH_BOTTOM_Y; i++) { - graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][0] = 0; - graph->scanlineRight[i + CONDITION_GRAPH_UNK_1][1] = 0; + graph->scanlineLeft[i - CONDITION_GRAPH_TOP_Y][0] = 0; + graph->scanlineLeft[i - CONDITION_GRAPH_TOP_Y][1] = 0; } for (i = 0; i < CONDITION_GRAPH_HEIGHT; i++) @@ -629,36 +666,41 @@ static void sub_81D2634(struct ConditionGraph *graph) } } -void sub_81D2754(u8 *conditions, struct UnknownSubStruct_81D1ED4 *arg1) +void ConditionGraph_CalcPositions(u8 *conditions, struct UCoords16 *positions) { - u8 r2, sinIdx; - s8 r12; + u8 lineLength, sinIdx; + s8 posIdx; u16 i; - r2 = sUnknown_08625410[*(conditions++)]; - arg1->unk0 = CONDITION_GRAPH_CENTER_X; - arg1->unk2 = CONDITION_GRAPH_UNK - r2; + // Cool is straight up-and-down (not angled), so no need for Sin + lineLength = sConditionToLineLength[*(conditions++)]; + positions[GRAPH_COOL].x = CONDITION_GRAPH_CENTER_X; + positions[GRAPH_COOL].y = CONDITION_GRAPH_CENTER_Y - lineLength; sinIdx = 64; - r12 = 0; + posIdx = GRAPH_COOL; for (i = 1; i < CONDITION_COUNT; i++) { sinIdx += 51; - if (--r12 < 0) - r12 = 4; + if (--posIdx < 0) + posIdx = CONDITION_COUNT - 1; - if (r12 == 2) + if (posIdx == GRAPH_CUTE) sinIdx++; - r2 = sUnknown_08625410[*(conditions++)]; - arg1[r12].unk0 = CONDITION_GRAPH_CENTER_X + ((r2 * gSineTable[64 + sinIdx]) >> 8); - arg1[r12].unk2 = CONDITION_GRAPH_UNK - ((r2 * gSineTable[sinIdx]) >> 8); + lineLength = sConditionToLineLength[*(conditions++)]; + positions[posIdx].x = CONDITION_GRAPH_CENTER_X + ((lineLength * gSineTable[64 + sinIdx]) >> 8); + positions[posIdx].y = CONDITION_GRAPH_CENTER_Y - ((lineLength * gSineTable[sinIdx]) >> 8); - if (r12 < 3 && (r2 != 32 || r12 != 2)) - arg1[r12].unk0 = CONDITION_GRAPH_CENTER_X + 1 + ((r2 * gSineTable[64 + sinIdx]) >> 8); + if (posIdx <= GRAPH_CUTE && (lineLength != 32 || posIdx != GRAPH_CUTE)) + positions[posIdx].x++; } } +//---------------- +// Move relearner +//---------------- + void InitMoveRelearnerWindows(bool8 useContextWindow) { u8 i; @@ -834,6 +876,10 @@ void MoveRelearnerCreateYesNoMenu(void) CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, 1, 0xE, 0); } +//---------------- +// Condition menu +//---------------- + s32 GetBoxOrPartyMonData(u16 boxId, u16 monId, s32 request, u8 *dst) { s32 ret; @@ -1005,15 +1051,15 @@ void GetConditionMenuMonConditions(struct ConditionGraph *graph, u8 *numSparkles numSparkles[id] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); - sub_81D2754(graph->conditions[id], graph->unk14[id]); + ConditionGraph_CalcPositions(graph->conditions[id], graph->savedPositions[id]); } else { for (i = 0; i < CONDITION_COUNT; i++) { graph->conditions[id][i] = 0; - graph->unk14[id][i].unk0 = CONDITION_GRAPH_CENTER_X; - graph->unk14[id][i].unk2 = CONDITION_GRAPH_UNK; + graph->savedPositions[id][i].x = CONDITION_GRAPH_CENTER_X; + graph->savedPositions[id][i].y = CONDITION_GRAPH_CENTER_Y; } } } @@ -1052,17 +1098,17 @@ bool8 MoveConditionMonOffscreen(s16 *x) return (*x != -80); } -bool8 ConditionGraph_UpdateMonEnter(struct ConditionGraph *graph, s16 *x) +bool8 ConditionMenu_UpdateMonEnter(struct ConditionGraph *graph, s16 *x) { - bool8 graphUpdating = TransitionConditionGraph(graph); + bool8 graphUpdating = ConditionGraph_TryUpdate(graph); bool8 monUpdating = MoveConditionMonOnscreen(x); return (graphUpdating || monUpdating); } -bool8 ConditionGraph_UpdateMonExit(struct ConditionGraph *graph, s16 *x) +bool8 ConditionMenu_UpdateMonExit(struct ConditionGraph *graph, s16 *x) { - bool8 graphUpdating = TransitionConditionGraph(graph); + bool8 graphUpdating = ConditionGraph_TryUpdate(graph); bool8 monUpdating = MoveConditionMonOffscreen(x); return (graphUpdating || monUpdating); diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index 8eacf2e70175..607437c47035 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -24,7 +24,7 @@ struct PokenavSub11 u8 fill2[0x6320 - 0x6308]; u8 locationText[NUM_CONDITION_MONS][24]; u8 nameText[NUM_CONDITION_MONS][64]; - struct ConditionGraph conditionData; + struct ConditionGraph graph; u8 numSparkles[NUM_CONDITION_MONS]; u8 monMarks[NUM_CONDITION_MONS]; s8 mark; @@ -52,7 +52,7 @@ bool32 PokenavCallback_Init_PartyCondition(void) if (structPtr == NULL) return FALSE; - ConditionGraph_Init(&structPtr->conditionData); + ConditionGraph_Init(&structPtr->graph); InitPartyConditionListParameters(); gKeyRepeatStartDelay = 20; structPtr->callback = HandlePartyConditionInput; @@ -66,7 +66,7 @@ bool32 PokenavCallback_Init_ConditionGraphFromSearch(void) if (structPtr == NULL) return FALSE; - ConditionGraph_Init(&structPtr->conditionData); + ConditionGraph_Init(&structPtr->graph); InitSearchResultsConditionList(); gKeyRepeatStartDelay = 20; structPtr->callback = HandlePartyConditionInput; @@ -192,7 +192,7 @@ static u8 SwitchConditionSummaryIndex(u8 moveUp) struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); r7 = (moveUp) ? structPtr->unk6788 : structPtr->unk6787; - sub_81D1F84(&structPtr->conditionData, structPtr->conditionData.unk14[structPtr->mark], structPtr->conditionData.unk14[r7]); + ConditionGraph_SetNewPositions(&structPtr->graph, structPtr->graph.savedPositions[structPtr->mark], structPtr->graph.savedPositions[r7]); wasNotLastMon = (monListPtr->currIndex != ((IsConditionMenuSearchMode() != 0) ? monListPtr->listCount : monListPtr->listCount - 1)); if (moveUp) { @@ -491,22 +491,22 @@ static void GetMonConditionGraphData(s16 listId, u8 loadId) { boxId = monListPtr->monData[listId].boxId; monId = monListPtr->monData[listId].monId; - structPtr->conditionData.conditions[loadId][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); - structPtr->conditionData.conditions[loadId][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); - structPtr->conditionData.conditions[loadId][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); - structPtr->conditionData.conditions[loadId][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); - structPtr->conditionData.conditions[loadId][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); + structPtr->graph.conditions[loadId][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); + structPtr->graph.conditions[loadId][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); + structPtr->graph.conditions[loadId][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); + structPtr->graph.conditions[loadId][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); + structPtr->graph.conditions[loadId][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); structPtr->numSparkles[loadId] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); structPtr->monMarks[loadId] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_MARKINGS, NULL); - sub_81D2754(structPtr->conditionData.conditions[loadId], structPtr->conditionData.unk14[loadId]); + ConditionGraph_CalcPositions(structPtr->graph.conditions[loadId], structPtr->graph.savedPositions[loadId]); } else { for (i = 0; i < CONDITION_COUNT; i++) { - structPtr->conditionData.conditions[loadId][i] = 0; - structPtr->conditionData.unk14[loadId][i].unk0 = CONDITION_GRAPH_CENTER_X; - structPtr->conditionData.unk14[loadId][i].unk2 = CONDITION_GRAPH_UNK; + structPtr->graph.conditions[loadId][i] = 0; + structPtr->graph.savedPositions[loadId][i].x = CONDITION_GRAPH_CENTER_X; + structPtr->graph.savedPositions[loadId][i].y = CONDITION_GRAPH_CENTER_Y; } } } @@ -542,10 +542,10 @@ u16 GetConditionGraphCurrentMonIndex(void) return monListPtr->currIndex; } -struct ConditionGraph *GetConditionGraphDataPtr(void) +struct ConditionGraph *GetConditionGraphPtr(void) { struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return &structPtr->conditionData; + return &structPtr->graph; } u8 GetMonMarkIndex(void) diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index ef07c9be623c..c2e8cadea0e9 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -147,7 +147,7 @@ static void CreateConditionMonPic(u8 var); static void CreateMonMarkingsOrPokeballIndicators(void); static void CopyUnusedConditionWindowsToVram(void); static bool32 UpdateConditionGraphWindows(u8 a0, u16 a1, bool8 a2); -static void sub_81CEE44(void); +static void VBlankCB_PokenavConditionGraph(void); static void DoConditionGraphTransition(void); static void sub_81CEEC8(void); static void sub_81CEE68(void); @@ -237,7 +237,7 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) SetBgTilemapBuffer(2, structPtr->tilemapBuffers[2]); CopyBgTilemapBufferToVram(2); CopyPaletteIntoBufferUnfaded(gConditionGraphData_Pal, 0x30, 0x20); - SetConditionGraphIOWindows(2); + ConditionGraph_InitWindow(2); return LT_INC_AND_PAUSE; case 5: BgDmaFill(1, 0, 0, 1); @@ -309,21 +309,21 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) return LT_PAUSE; if (!IsConditionMenuSearchMode() && AreLeftHeaderSpritesMoving()) return LT_PAUSE; - SetVBlankCallback_(sub_81CEE44); + SetVBlankCallback_(VBlankCB_PokenavConditionGraph); return LT_INC_AND_PAUSE; case 17: DoConditionGraphTransition(); - InitConditionGraphState(GetConditionGraphDataPtr()); + ConditionGraph_InitResetScanline(GetConditionGraphPtr()); return LT_INC_AND_PAUSE; case 18: - if (SetupConditionGraphScanlineParams(GetConditionGraphDataPtr())) + if (ConditionGraph_ResetScanline(GetConditionGraphPtr())) return LT_PAUSE; return LT_INC_AND_PAUSE; case 19: ToggleGraphData(TRUE); return LT_INC_AND_PAUSE; case 20: - if (!ConditionGraph_UpdateMonEnter(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); if (IsConditionMenuSearchMode() == TRUE || GetConditionGraphCurrentMonIndex() != GetMonListCount()) @@ -348,7 +348,7 @@ static u32 LoopedTask_ExitPartyConditionMenu(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 1: - if (ConditionGraph_UpdateMonExit(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &structPtr->monTransitionX)) return 2; ToggleGraphData(FALSE); return LT_INC_AND_CONTINUE; @@ -373,7 +373,7 @@ static u32 LoopedTask_ExitPartyConditionMenu(s32 state) static u32 LoopedTask_TransitionMons(s32 state) { struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - struct ConditionGraph *graph = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphPtr(); switch (state) { @@ -388,7 +388,7 @@ static u32 LoopedTask_TransitionMons(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: - TransitionConditionGraph(graph); + ConditionGraph_TryUpdate(graph); return LT_INC_AND_CONTINUE; case 4: if (!MoveConditionMonOffscreen(&structPtr->monTransitionX)) @@ -411,8 +411,8 @@ static u32 LoopedTask_TransitionMons(s32 state) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 9: - graph = GetConditionGraphDataPtr(); - if (!ConditionGraph_UpdateMonEnter(graph, &structPtr->monTransitionX)) + graph = GetConditionGraphPtr(); + if (!ConditionMenu_UpdateMonEnter(graph, &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); if (IsConditionMenuSearchMode() != TRUE && GetConditionGraphCurrentMonIndex() == GetMonListCount()) @@ -459,7 +459,7 @@ static u32 LoopedTask_MoveCursorNoTransition(s32 state) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 8: - if (!ConditionGraph_UpdateMonEnter(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &structPtr->monTransitionX)) { ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); @@ -488,7 +488,7 @@ static u32 LoopedTask_SlideMonOut(s32 state) DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: - if (!ConditionGraph_UpdateMonExit(GetConditionGraphDataPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &structPtr->monTransitionX)) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 4: @@ -833,13 +833,13 @@ static void CreateConditionMonPic(u8 id) } } -static void sub_81CEE44(void) +static void VBlankCB_PokenavConditionGraph(void) { - struct ConditionGraph *graph = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphPtr(); LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); - sub_81D2108(graph); + ConditionGraph_Draw(graph); ScanlineEffect_InitHBlankDmaTransfer(); } @@ -858,20 +858,20 @@ static void ToggleGraphData(bool8 showBg) static void DoConditionGraphTransition(void) { - struct ConditionGraph *conditionPtr = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphPtr(); u8 id = GetMonMarkIndex(); sUnknown_030012BC = id; - sub_81D1F84(conditionPtr, conditionPtr->unk14[3], conditionPtr->unk14[id]); - TransitionConditionGraph(conditionPtr); + ConditionGraph_SetNewPositions(graph, graph->savedPositions[CONDITION_GRAPH_LOAD_MAX - 1], graph->savedPositions[id]); + ConditionGraph_TryUpdate(graph); } static void sub_81CEEC8(void) { - struct ConditionGraph *conditionPtr = GetConditionGraphDataPtr(); + struct ConditionGraph *graph = GetConditionGraphPtr(); if (IsConditionMenuSearchMode() || GetConditionGraphCurrentMonIndex() != GetMonListCount() - 1) - sub_81D1F84(conditionPtr, conditionPtr->unk14[GetMonMarkIndex()], conditionPtr->unk14[3]); + ConditionGraph_SetNewPositions(graph, graph->savedPositions[GetMonMarkIndex()], graph->savedPositions[CONDITION_GRAPH_LOAD_MAX - 1]); } u8 GetMonMarkingsData(void) diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index a8b01b827742..8cf8480ccd05 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -471,7 +471,7 @@ static void VBlankCB_UsePokeblockMenu(void) LoadOam(); ProcessSpriteCopyRequests(); TransferPlttBuffer(); - sub_81D2108(&sMenu->graph); + ConditionGraph_Draw(&sMenu->graph); ScanlineEffect_InitHBlankDmaTransfer(); } @@ -537,19 +537,19 @@ static void LoadUsePokeblockMenu(void) sInfo->mainState++; break; case 11: - sub_81D2754(sMenu->graph.conditions[0], sMenu->graph.unk14[0]); - InitConditionGraphState(&sMenu->graph); + ConditionGraph_CalcPositions(sMenu->graph.conditions[0], sMenu->graph.savedPositions[0]); + ConditionGraph_InitResetScanline(&sMenu->graph); sInfo->mainState++; break; case 12: - if (!SetupConditionGraphScanlineParams(&sMenu->graph)) + if (!ConditionGraph_ResetScanline(&sMenu->graph)) { - sub_81D1F84(&sMenu->graph, sMenu->graph.unk14[0], sMenu->graph.unk14[0]); + ConditionGraph_SetNewPositions(&sMenu->graph, sMenu->graph.savedPositions[0], sMenu->graph.savedPositions[0]); sInfo->mainState++; } break; case 13: - sub_81D2230(&sMenu->graph); + ConditionGraph_Update(&sMenu->graph); sInfo->mainState++; break; case 14: @@ -781,13 +781,13 @@ static void ShowPokeblockResults(void) break; case 2: CalculateConditionEnhancements(); - sub_81D2754(sInfo->conditionsAfterBlock, sMenu->graph.unk14[3]); - sub_81D1F84(&sMenu->graph, sMenu->graph.unk14[sMenu->curLoadId], sMenu->graph.unk14[3]); + ConditionGraph_CalcPositions(sInfo->conditionsAfterBlock, sMenu->graph.savedPositions[CONDITION_GRAPH_LOAD_MAX - 1]); + ConditionGraph_SetNewPositions(&sMenu->graph, sMenu->graph.savedPositions[sMenu->curLoadId], sMenu->graph.savedPositions[CONDITION_GRAPH_LOAD_MAX - 1]); LoadAndCreateUpDownSprites(); sInfo->mainState++; break; case 3: - if (!TransitionConditionGraph(&sMenu->graph)) + if (!ConditionGraph_TryUpdate(&sMenu->graph)) { CalculateNumAdditionalSparkles(GetPartyIdFromSelectionId(sMenu->info.curSelection)); if (sMenu->info.curSelection != sMenu->info.numSelections - 1) @@ -1365,7 +1365,7 @@ static bool8 LoadUsePokeblockMenuGfx(void) LoadBgTilemap(2, sMenu->tilemapBuffer, 1280, 0); LoadPalette(gConditionGraphData_Pal, 48, 32); LoadPalette(gConditionText_Pal, 240, 32); - SetConditionGraphIOWindows(2); + ConditionGraph_InitWindow(2); break; default: sMenu->info.helperState = 0; @@ -1416,7 +1416,7 @@ static void UpdateSelection(bool8 up) else newLoadId = sMenu->nextLoadId; - sub_81D1F84(&sMenu->graph, sMenu->graph.unk14[sMenu->curLoadId], sMenu->graph.unk14[newLoadId]); + ConditionGraph_SetNewPositions(&sMenu->graph, sMenu->graph.savedPositions[sMenu->curLoadId], sMenu->graph.savedPositions[newLoadId]); if (sMenu->info.curSelection == sMenu->info.numSelections - 1) startedOnMon = FALSE; // moving off of Cancel @@ -1484,7 +1484,7 @@ static bool8 LoadNewSelection_CancelToMon(void) sMenu->info.helperState++; break; case 2: - if (!ConditionGraph_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionMenu_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) { // Load the new adjacent pokemon (not the one being shown) LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId); @@ -1511,7 +1511,7 @@ static bool8 LoadNewSelection_MonToCancel(void) switch (sMenu->info.helperState) { case 0: - if (!ConditionGraph_UpdateMonExit(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionMenu_UpdateMonExit(&sMenu->graph, &sMenu->curMonXOffset)) sMenu->info.helperState++; break; case 1: @@ -1535,7 +1535,7 @@ static bool8 LoadNewSelection_MonToMon(void) switch (sMenu->info.helperState) { case 0: - TransitionConditionGraph(&sMenu->graph); + ConditionGraph_TryUpdate(&sMenu->graph); if (!MoveConditionMonOffscreen(&sMenu->curMonXOffset)) { UpdateMonPic(sMenu->curLoadId); @@ -1547,7 +1547,7 @@ static bool8 LoadNewSelection_MonToMon(void) sMenu->info.helperState++; break; case 2: - if (!ConditionGraph_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) + if (!ConditionMenu_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset)) { // Load the new adjacent pokemon (not the one being shown) LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId); From f5152094a9521222e64f003785662295ad8931e7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 11 Nov 2021 16:50:36 -0500 Subject: [PATCH 406/762] Finish pokenav conditions doc --- .../{862323C.bin => condition/graph_data.bin} | 0 .../mon_markings.pal} | 0 .../search_results.bin} | Bin .../search_results.png} | Bin .../search_results_list.pal} | 0 include/menu_specialized.h | 5 + include/pokenav.h | 74 ++-- include/strings.h | 4 +- src/menu_specialized.c | 20 +- src/pokenav.c | 32 +- src/pokenav_conditions_1.c | 317 +++++++------- src/pokenav_conditions_2.c | 397 +++++++++--------- src/pokenav_conditions_3.c | 317 +++++++------- src/pokenav_menu_handler_1.c | 2 +- src/pokenav_menu_handler_2.c | 2 +- src/strings.c | 2 +- src/use_pokeblock.c | 4 +- 17 files changed, 604 insertions(+), 572 deletions(-) rename graphics/pokenav/{862323C.bin => condition/graph_data.bin} (100%) rename graphics/pokenav/{8623338.pal => condition/mon_markings.pal} (100%) rename graphics/pokenav/{condition_search2.bin => condition/search_results.bin} (100%) rename graphics/pokenav/{condition_search2.png => condition/search_results.png} (100%) rename graphics/pokenav/{8623570.pal => condition/search_results_list.pal} (100%) diff --git a/graphics/pokenav/862323C.bin b/graphics/pokenav/condition/graph_data.bin similarity index 100% rename from graphics/pokenav/862323C.bin rename to graphics/pokenav/condition/graph_data.bin diff --git a/graphics/pokenav/8623338.pal b/graphics/pokenav/condition/mon_markings.pal similarity index 100% rename from graphics/pokenav/8623338.pal rename to graphics/pokenav/condition/mon_markings.pal diff --git a/graphics/pokenav/condition_search2.bin b/graphics/pokenav/condition/search_results.bin similarity index 100% rename from graphics/pokenav/condition_search2.bin rename to graphics/pokenav/condition/search_results.bin diff --git a/graphics/pokenav/condition_search2.png b/graphics/pokenav/condition/search_results.png similarity index 100% rename from graphics/pokenav/condition_search2.png rename to graphics/pokenav/condition/search_results.png diff --git a/graphics/pokenav/8623570.pal b/graphics/pokenav/condition/search_results_list.pal similarity index 100% rename from graphics/pokenav/8623570.pal rename to graphics/pokenav/condition/search_results_list.pal diff --git a/include/menu_specialized.h b/include/menu_specialized.h index 146b930b4315..d1e30d4d6b52 100644 --- a/include/menu_specialized.h +++ b/include/menu_specialized.h @@ -26,6 +26,11 @@ enum { TAG_CONDITION_MARKINGS_MENU_2, // Used implicitly by CreateMonMarkingsMenuSprites }; +enum { + CONDITION_ICON_SELECTED, + CONDITION_ICON_UNSELECTED, +}; + #define MAX_CONDITION_SPARKLES 10 // The number of extra sparkles shown on a PokĂ©mon's condition screen. diff --git a/include/pokenav.h b/include/pokenav.h index b8c2178d1bba..847d4b7e7613 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -65,8 +65,7 @@ enum POKENAV_MODE_FORCE_CALL_EXIT, // Pokenav tutorial after calling Mr. Stone }; -// TODO - refine these names -enum Substructures +enum { POKENAV_SUBSTRUCT_MAIN_MENU, POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, @@ -76,11 +75,11 @@ enum Substructures POKENAV_SUBSTRUCT_MATCH_CALL_MAIN, POKENAV_SUBSTRUCT_MATCH_CALL_OPEN, POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS, - POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST, + POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX, POKENAV_SUBSTRUCT_RIBBONS_MON_LIST, POKENAV_SUBSTRUCT_RIBBONS_MON_MENU, - POKENAV_SUBSTRUCT_CONDITION_GRAPH, - POKENAV_SUBSTRUCT_MON_MARK_MENU, + POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU, + POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX, POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST, POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU, POKENAV_SUBSTRUCT_15, //unused @@ -113,21 +112,21 @@ enum #define POKENAV_MENU_IDS_START 100000 enum { - POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, + POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons POKENAV_MAIN_MENU_CURSOR_ON_MAP, - POKENAV_CONDITION_MENU, - POKENAV_CONDITION_SEARCH_MENU, + POKENAV_CONDITION_MENU, // The first Condition screen where the player selects Party or Search + POKENAV_CONDITION_SEARCH_MENU, // The Condition search menu where the player selects a search parameter POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL, POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS, POKENAV_REGION_MAP, - POKENAV_CONDITION_PARTY, - POKENAV_CONDITION_SEARCH_RESULTS, - POKENAV_CONDITION_GRAPH_FROM_SEARCH, // opening condition graph from search list - POKENAV_RETURN_CONDITION_SEARCH, //return to search list from condition graph + POKENAV_CONDITION_GRAPH_PARTY, // The Condition graph screen when Party has been selected + POKENAV_CONDITION_SEARCH_RESULTS, // The list of results from a Condition search + POKENAV_CONDITION_GRAPH_SEARCH, // The Condition graph screen when a search result has been selected + POKENAV_RETURN_CONDITION_SEARCH, // Exited the graph screen back to the list of Condition search results POKENAV_MATCH_CALL, - POKENAV_RIBBONS_MON_LIST, - POKENAV_RIBBONS_SUMMARY_SCREEN, - POKENAV_RIBBONS_RETURN_TO_MON_LIST, + POKENAV_RIBBONS_MON_LIST, // The list of PokĂ©mon with ribbons + POKENAV_RIBBONS_SUMMARY_SCREEN, // The ribbon summary screen shown when a PokĂ©mon has been selected + POKENAV_RIBBONS_RETURN_TO_MON_LIST, // Exited the summary screen back to the ribbon list }; enum @@ -245,15 +244,15 @@ enum RegionMapFuncIds POKENAV_MENU_FUNC_OPEN_FEATURE, }; -enum PartyConditionFuncIds +enum { - PARTY_CONDITION_FUNC_NONE, - PARTY_CONDITION_FUNC_SLIDE_MON_IN, - PARTY_CONDITION_FUNC_RETURN, - PARTY_CONDITION_FUNC_NO_TRANSITION, - PARTY_CONDITION_FUNC_SLIDE_MON_OUT, - PARTY_CONDITION_FUNC_ADD_MARKINGS, - PARTY_CONDITION_FUNC_CLOSE_MARKINGS, + CONDITION_FUNC_NONE, + CONDITION_FUNC_SLIDE_MON_IN, + CONDITION_FUNC_RETURN, + CONDITION_FUNC_NO_TRANSITION, + CONDITION_FUNC_SLIDE_MON_OUT, + CONDITION_FUNC_ADD_MARKINGS, + CONDITION_FUNC_CLOSE_MARKINGS, }; enum @@ -264,6 +263,13 @@ enum NUM_CONDITION_MONS }; +enum +{ + CONDITION_LOAD_MON_INFO, + CONDITION_LOAD_GRAPH, + CONDITION_LOAD_MON_PIC, +}; + #define POKENAV_MENU_FUNC_EXIT -1 enum @@ -431,17 +437,17 @@ void FreeRegionMapSubstruct1(void); void FreeRegionMapSubstruct2(void); // pokenav_conditions_1.c -u32 PokenavCallback_Init_PartyCondition(void); -u32 PokenavCallback_Init_ConditionGraphFromSearch(void); -u32 GetPartyConditionCallback(void); -void FreePartyConditionSubstruct1(void); -bool32 LoadPartyConditionMenuGfx(void); +u32 PokenavCallback_Init_ConditionGraph_Party(void); +u32 PokenavCallback_Init_ConditionGraph_Search(void); +u32 GetConditionGraphMenuCallback(void); +void FreeConditionGraphMenuSubstruct1(void); +bool32 LoadConditionGraphMenuGfx(void); bool32 IsConditionMenuSearchMode(void); struct ConditionGraph *GetConditionGraphPtr(void); -u16 GetConditionGraphCurrentMonIndex(void); +u16 GetConditionGraphCurrentListIndex(void); u16 GetMonListCount(void); u8 GetNumConditionMonSparkles(void); -bool32 SetConditionGraphData(u8 mode); +bool32 LoadNextConditionMenuMonData(u8 mode); u8 TryGetMonMarkId(void); u8 *GetConditionMonNameText(u8 id); u8 *GetConditionMonLocationText(u8 id); @@ -450,10 +456,10 @@ void *GetConditionMonPicGfx(u8 id); void *GetConditionMonPal(u8 id); // pokenav_conditions_2.c -bool32 OpenPartyConditionMenu(void); -void CreatePartyConditionLoopedTask(s32); -u32 IsPartyConditionLoopedTaskActive(void); -void FreePartyConditionSubstruct2(void); +bool32 OpenConditionGraphMenu(void); +void CreateConditionGraphMenuLoopedTask(s32); +u32 IsConditionGraphMenuLoopedTaskActive(void); +void FreeConditionGraphMenuSubstruct2(void); u8 GetMonMarkingsData(void); // pokenav_conditions_3.c diff --git a/include/strings.h b/include/strings.h index 7317f8aac8e5..48a2eccd75f0 100644 --- a/include/strings.h +++ b/include/strings.h @@ -2974,8 +2974,8 @@ extern const u8 gText_FindToughPokemon[]; extern const u8 gText_ReturnToConditionMenu[]; extern const u8 gText_NoRibbonWinners[]; -// Pokenav Ribbons -extern const u8 gText_NumberF700[]; +// Pokenav +extern const u8 gText_NumberIndex[]; extern const u8 gText_RibbonsF700[]; // use_pokeblock diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 074621de4be7..d1cc3ff58fc6 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -318,7 +318,7 @@ void MailboxMenu_Free(void) // filled with the graph color. //--------------------------------------- -#define UNK_VAL(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) { @@ -360,7 +360,7 @@ void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords increment = ((new[i].x - old[i].x) << 8) / CONDITION_GRAPH_UPDATE_STEPS; for (j = 0; j < CONDITION_GRAPH_UPDATE_STEPS - 1; j++) { - graph->newPositions[j][i].x = UNK_VAL(coord, 8); + graph->newPositions[j][i].x = SHIFT_RIGHT_ADJUSTED(coord, 8); coord += increment; } graph->newPositions[j][i].x = new[i].x; @@ -369,7 +369,7 @@ void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords increment = ((new[i].y - old[i].y) << 8) / CONDITION_GRAPH_UPDATE_STEPS; for (j = 0; j < CONDITION_GRAPH_UPDATE_STEPS - 1; j++) { - graph->newPositions[j][i].y = UNK_VAL(coord, 8); + graph->newPositions[j][i].y = SHIFT_RIGHT_ADJUSTED(coord, 8); coord += increment; } graph->newPositions[j][i].y = new[i].y; @@ -500,7 +500,7 @@ static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, scanline += (top - CONDITION_GRAPH_TOP_Y) * 2; for (i = 0; i < height; i++) { - scanline[dir] = UNK_VAL(x, 10) + dir; + scanline[dir] = SHIFT_RIGHT_ADJUSTED(x, 10) + dir; x += xIncrement; scanline += 2; } @@ -511,7 +511,7 @@ static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, { overflowScanline += (top - CONDITION_GRAPH_TOP_Y) * 2; // Less readable than the other loops, but it has to be written this way to match. - for (i = 0; i < height; overflowScanline[dir] = UNK_VAL(x, 10) + dir, x += xIncrement, overflowScanline += 2, i++) + for (i = 0; i < height; overflowScanline[dir] = SHIFT_RIGHT_ADJUSTED(x, 10) + dir, x += xIncrement, overflowScanline += 2, i++) { if (x >= (CONDITION_GRAPH_CENTER_X << 10)) break; @@ -521,7 +521,7 @@ static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, scanline += (graph->bottom - CONDITION_GRAPH_TOP_Y) * 2; for (; i < height; i++) { - scanline[dir] = UNK_VAL(x, 10) + dir; + scanline[dir] = SHIFT_RIGHT_ADJUSTED(x, 10) + dir; x += xIncrement; scanline += 2; } @@ -533,7 +533,7 @@ static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, scanline += (top - CONDITION_GRAPH_TOP_Y) * 2; for (i = 0; i < height; i++) { - scanline[dir] = UNK_VAL(x, 10) + dir; + scanline[dir] = SHIFT_RIGHT_ADJUSTED(x, 10) + dir; if (x < (CONDITION_GRAPH_CENTER_X << 10)) { scanline[dir] = CONDITION_GRAPH_CENTER_X; @@ -547,7 +547,7 @@ static void ConditionGraph_CalcLine(struct ConditionGraph *graph, u16 *scanline, overflowScanline += (graph->bottom - CONDITION_GRAPH_TOP_Y) * 2; for (; i < height; i++) { - overflowScanline[dir] = UNK_VAL(x, 10) + dir; + overflowScanline[dir] = SHIFT_RIGHT_ADJUSTED(x, 10) + dir; x += xIncrement; overflowScanline += 2; } @@ -1167,8 +1167,8 @@ static const union AnimCmd sAnim_ConditionSelectionIcon_Unselected[] = static const union AnimCmd *const sAnims_ConditionSelectionIcon[] = { - sAnim_ConditionSelectionIcon_Selected, - sAnim_ConditionSelectionIcon_Unselected + [CONDITION_ICON_SELECTED] = sAnim_ConditionSelectionIcon_Selected, + [CONDITION_ICON_UNSELECTED] = sAnim_ConditionSelectionIcon_Unselected }; // Just loads the generic data, up to the caller to load the actual sheet/pal for the specific mon diff --git a/src/pokenav.c b/src/pokenav.c index 4338023dbd6c..b09fc9da096e 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -122,15 +122,15 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeRegionMapSubstruct1, .free2 = FreeRegionMapSubstruct2, }, - [POKENAV_CONDITION_PARTY - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_GRAPH_PARTY - POKENAV_MENU_IDS_START] = { - .init = PokenavCallback_Init_PartyCondition, - .callback = GetPartyConditionCallback, - .open = OpenPartyConditionMenu, - .createLoopTask = CreatePartyConditionLoopedTask, - .isLoopTaskActive = IsPartyConditionLoopedTaskActive, - .free1 = FreePartyConditionSubstruct1, - .free2 = FreePartyConditionSubstruct2, + .init = PokenavCallback_Init_ConditionGraph_Party, + .callback = GetConditionGraphMenuCallback, + .open = OpenConditionGraphMenu, + .createLoopTask = CreateConditionGraphMenuLoopedTask, + .isLoopTaskActive = IsConditionGraphMenuLoopedTaskActive, + .free1 = FreeConditionGraphMenuSubstruct1, + .free2 = FreeConditionGraphMenuSubstruct2, }, [POKENAV_CONDITION_SEARCH_RESULTS - POKENAV_MENU_IDS_START] = { @@ -142,15 +142,15 @@ const struct PokenavCallbacks PokenavMenuCallbacks[15] = .free1 = FreeSearchResultSubstruct1, .free2 = FreeSearchResultSubstruct2, }, - [POKENAV_CONDITION_GRAPH_FROM_SEARCH - POKENAV_MENU_IDS_START] = + [POKENAV_CONDITION_GRAPH_SEARCH - POKENAV_MENU_IDS_START] = { - .init = PokenavCallback_Init_ConditionGraphFromSearch, - .callback = GetPartyConditionCallback, - .open = OpenPartyConditionMenu, - .createLoopTask = CreatePartyConditionLoopedTask, - .isLoopTaskActive = IsPartyConditionLoopedTaskActive, - .free1 = FreePartyConditionSubstruct1, - .free2 = FreePartyConditionSubstruct2, + .init = PokenavCallback_Init_ConditionGraph_Search, + .callback = GetConditionGraphMenuCallback, + .open = OpenConditionGraphMenu, + .createLoopTask = CreateConditionGraphMenuLoopedTask, + .isLoopTaskActive = IsConditionGraphMenuLoopedTaskActive, + .free1 = FreeConditionGraphMenuSubstruct1, + .free2 = FreeConditionGraphMenuSubstruct2, }, [POKENAV_RETURN_CONDITION_SEARCH - POKENAV_MENU_IDS_START] = { diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions_1.c index 607437c47035..fc188db71512 100644 --- a/src/pokenav_conditions_1.c +++ b/src/pokenav_conditions_1.c @@ -13,102 +13,105 @@ #include "text.h" #include "constants/songs.h" -struct PokenavSub11 +struct Pokenav_ConditionMenu { u32 monPal[NUM_CONDITION_MONS][0x20]; u8 fill[0x180]; u32 monPicGfx[NUM_CONDITION_MONS][MON_PIC_SIZE]; - u8 searchMode; - s16 monIndex; - u32 (*callback)(struct PokenavSub11 *); - u8 fill2[0x6320 - 0x6308]; + bool8 inSearchMode; + s16 toLoadListIndex; + u32 (*callback)(struct Pokenav_ConditionMenu *); + u8 fill2[0x18]; u8 locationText[NUM_CONDITION_MONS][24]; u8 nameText[NUM_CONDITION_MONS][64]; struct ConditionGraph graph; u8 numSparkles[NUM_CONDITION_MONS]; u8 monMarks[NUM_CONDITION_MONS]; - s8 mark; - s8 unk6787; - s8 unk6788; - s8 unk6789; + s8 loadId; + s8 nextLoadIdDown; + s8 nextLoadIdUp; + s8 toLoadId; u8 state; }; static void InitPartyConditionListParameters(void); static void InitSearchResultsConditionList(void); -static u32 HandlePartyConditionInput(struct PokenavSub11 *); -static u32 GetConditionReturnCallback(struct PokenavSub11 *); -static u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *); -static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *); +static u32 HandleConditionMenuInput(struct Pokenav_ConditionMenu *); +static u32 GetConditionReturnCallback(struct Pokenav_ConditionMenu *); +static u32 OpenMarkingsMenu(struct Pokenav_ConditionMenu *); +static u8 ConditionGraphHandleDpadInput(struct Pokenav_ConditionMenu *); static u8 SwitchConditionSummaryIndex(bool8); static void CopyMonNameGenderLocation(s16, u8); static void GetMonConditionGraphData(s16, u8); static void ConditionGraphDrawMonPic(s16, u8); -bool32 PokenavCallback_Init_PartyCondition(void) +bool32 PokenavCallback_Init_ConditionGraph_Party(void) { - struct PokenavSub11 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH, sizeof(struct PokenavSub11)); + struct Pokenav_ConditionMenu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU, sizeof(struct Pokenav_ConditionMenu)); - if (structPtr == NULL) + if (menu == NULL) return FALSE; - ConditionGraph_Init(&structPtr->graph); + ConditionGraph_Init(&menu->graph); InitPartyConditionListParameters(); gKeyRepeatStartDelay = 20; - structPtr->callback = HandlePartyConditionInput; + menu->callback = HandleConditionMenuInput; return TRUE; } -bool32 PokenavCallback_Init_ConditionGraphFromSearch(void) +bool32 PokenavCallback_Init_ConditionGraph_Search(void) { - struct PokenavSub11 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH, sizeof(struct PokenavSub11)); + struct Pokenav_ConditionMenu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU, sizeof(struct Pokenav_ConditionMenu)); - if (structPtr == NULL) + if (menu == NULL) return FALSE; - ConditionGraph_Init(&structPtr->graph); + ConditionGraph_Init(&menu->graph); InitSearchResultsConditionList(); gKeyRepeatStartDelay = 20; - structPtr->callback = HandlePartyConditionInput; + menu->callback = HandleConditionMenuInput; return TRUE; } -u32 GetPartyConditionCallback(void) +u32 GetConditionGraphMenuCallback(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - return structPtr->callback(structPtr); + return menu->callback(menu); } -static u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr) +static u32 HandleConditionMenuInput(struct Pokenav_ConditionMenu *menu) { struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - u32 ret = ConditionGraphHandleDpadInput(structPtr); + u32 ret = ConditionGraphHandleDpadInput(menu); - if (ret == PARTY_CONDITION_FUNC_NONE) + if (ret == CONDITION_FUNC_NONE) { if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - structPtr->callback = GetConditionReturnCallback; - ret = PARTY_CONDITION_FUNC_RETURN; + menu->callback = GetConditionReturnCallback; + ret = CONDITION_FUNC_RETURN; } else if (JOY_NEW(A_BUTTON)) { - if (structPtr->searchMode == 0) + if (!menu->inSearchMode) { + // In Party mode, pressing A only applies to the Cancel button if (monListPtr->currIndex == monListPtr->listCount - 1) { + // Cancel PlaySE(SE_SELECT); - structPtr->callback = GetConditionReturnCallback; - ret = PARTY_CONDITION_FUNC_RETURN; + menu->callback = GetConditionReturnCallback; + ret = CONDITION_FUNC_RETURN; } } else { + // In Search mode pressing A brings up the markings menu PlaySE(SE_SELECT); - ret = PARTY_CONDITION_FUNC_ADD_MARKINGS; - structPtr->callback = ConditionMenu_OpenMarkingsMenu; + ret = CONDITION_FUNC_ADD_MARKINGS; + menu->callback = OpenMarkingsMenu; } } } @@ -116,57 +119,58 @@ static u32 HandlePartyConditionInput(struct PokenavSub11 *structPtr) return ret; } -static u32 ConditionMenu_OpenMarkingsMenu(struct PokenavSub11 *structPtr) +static u32 OpenMarkingsMenu(struct Pokenav_ConditionMenu *menu) { struct PokenavSub18 *monListPtr; u8 markings; - u32 ret = PARTY_CONDITION_FUNC_NONE, boxId, monId; + u32 ret = CONDITION_FUNC_NONE, boxId, monId; if (!HandleMonMarkingsMenuInput()) { - structPtr->monMarks[structPtr->mark] = GetMonMarkingsData(); + menu->monMarks[menu->loadId] = GetMonMarkingsData(); monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); boxId = monListPtr->monData[monListPtr->currIndex].boxId; monId = monListPtr->monData[monListPtr->currIndex].monId; - markings = structPtr->monMarks[structPtr->mark]; + markings = menu->monMarks[menu->loadId]; if (boxId == TOTAL_BOXES_COUNT) SetMonData(&gPlayerParty[monId], MON_DATA_MARKINGS, &markings); else SetBoxMonDataAt(boxId, monId, MON_DATA_MARKINGS, &markings); - structPtr->callback = HandlePartyConditionInput; - ret = PARTY_CONDITION_FUNC_CLOSE_MARKINGS; + menu->callback = HandleConditionMenuInput; + ret = CONDITION_FUNC_CLOSE_MARKINGS; } return ret; } -static u32 GetConditionReturnCallback(struct PokenavSub11 *structPtr) +static u32 GetConditionReturnCallback(struct Pokenav_ConditionMenu *menu) { - if (structPtr->searchMode == 0) + if (!menu->inSearchMode) return POKENAV_CONDITION_MENU; else return POKENAV_RETURN_CONDITION_SEARCH; } -void FreePartyConditionSubstruct1(void) +void FreeConditionGraphMenuSubstruct1(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - if (structPtr->searchMode == 0) + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + if (!menu->inSearchMode) FreePokenavSubstruct(POKENAV_SUBSTRUCT_MON_LIST); - FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); } -static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) +static u8 ConditionGraphHandleDpadInput(struct Pokenav_ConditionMenu *menu) { struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - u8 ret = 0; + u8 ret = CONDITION_FUNC_NONE; if (JOY_HELD(DPAD_UP)) { - if (structPtr->searchMode == 0 || monListPtr->currIndex != 0) + // Prevent input wrapping in search mode + if (!menu->inSearchMode || monListPtr->currIndex != 0) { PlaySE(SE_SELECT); ret = SwitchConditionSummaryIndex(TRUE); @@ -174,7 +178,8 @@ static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) } else if (JOY_HELD(DPAD_DOWN)) { - if (structPtr->searchMode == 0 || monListPtr->currIndex < monListPtr->listCount - 1) + // Prevent input wrapping in search mode + if (!menu->inSearchMode || monListPtr->currIndex < monListPtr->listCount - 1) { PlaySE(SE_SELECT); ret = SwitchConditionSummaryIndex(FALSE); @@ -186,52 +191,52 @@ static u8 ConditionGraphHandleDpadInput(struct PokenavSub11 *structPtr) static u8 SwitchConditionSummaryIndex(u8 moveUp) { - u16 r7; + u16 newLoadId; bool8 wasNotLastMon, isNotLastMon; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - r7 = (moveUp) ? structPtr->unk6788 : structPtr->unk6787; - ConditionGraph_SetNewPositions(&structPtr->graph, structPtr->graph.savedPositions[structPtr->mark], structPtr->graph.savedPositions[r7]); - wasNotLastMon = (monListPtr->currIndex != ((IsConditionMenuSearchMode() != 0) ? monListPtr->listCount : monListPtr->listCount - 1)); + newLoadId = (moveUp) ? menu->nextLoadIdUp : menu->nextLoadIdDown; + ConditionGraph_SetNewPositions(&menu->graph, menu->graph.savedPositions[menu->loadId], menu->graph.savedPositions[newLoadId]); + wasNotLastMon = (monListPtr->currIndex != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)); if (moveUp) { - structPtr->unk6788 = structPtr->unk6787; - structPtr->unk6787 = structPtr->mark; - structPtr->mark = r7; - structPtr->unk6789 = structPtr->unk6788; + menu->nextLoadIdUp = menu->nextLoadIdDown; + menu->nextLoadIdDown = menu->loadId; + menu->loadId = newLoadId; + menu->toLoadId = menu->nextLoadIdUp; monListPtr->currIndex = (monListPtr->currIndex == 0) ? monListPtr->listCount - 1 : monListPtr->currIndex - 1; - structPtr->monIndex = (monListPtr->currIndex != 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1; + menu->toLoadListIndex = (monListPtr->currIndex != 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1; } else { - structPtr->unk6787 = structPtr->unk6788; - structPtr->unk6788 = structPtr->mark; - structPtr->mark = r7; - structPtr->unk6789 = structPtr->unk6787; + menu->nextLoadIdDown = menu->nextLoadIdUp; + menu->nextLoadIdUp = menu->loadId; + menu->loadId = newLoadId; + menu->toLoadId = menu->nextLoadIdDown; monListPtr->currIndex = (monListPtr->currIndex < monListPtr->listCount - 1) ? monListPtr->currIndex + 1 : 0; - structPtr->monIndex = (monListPtr->currIndex < monListPtr->listCount - 1) ? monListPtr->currIndex + 1 : 0; + menu->toLoadListIndex = (monListPtr->currIndex < monListPtr->listCount - 1) ? monListPtr->currIndex + 1 : 0; } - isNotLastMon = (monListPtr->currIndex != ((IsConditionMenuSearchMode() != 0) ? monListPtr->listCount : monListPtr->listCount - 1)); + isNotLastMon = (monListPtr->currIndex != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)); if (!wasNotLastMon) - return PARTY_CONDITION_FUNC_NO_TRANSITION; + return CONDITION_FUNC_NO_TRANSITION; else if (!isNotLastMon) - return PARTY_CONDITION_FUNC_SLIDE_MON_OUT; + return CONDITION_FUNC_SLIDE_MON_OUT; else - return PARTY_CONDITION_FUNC_SLIDE_MON_IN; + return CONDITION_FUNC_SLIDE_MON_IN; } -bool32 LoadPartyConditionMenuGfx(void) +bool32 LoadConditionGraphMenuGfx(void) { s32 var; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - switch (structPtr->state) + switch (menu->state) { case 0: CopyMonNameGenderLocation(monListPtr->currIndex, CONDITION_MON_0); @@ -245,17 +250,17 @@ bool32 LoadPartyConditionMenuGfx(void) case 3: if (monListPtr->listCount == 1) { - structPtr->mark = CONDITION_MON_0; - structPtr->unk6787 = CONDITION_MON_0; - structPtr->unk6788 = CONDITION_MON_0; - structPtr->state = 0; + menu->loadId = CONDITION_MON_0; + menu->nextLoadIdDown = CONDITION_MON_0; + menu->nextLoadIdUp = CONDITION_MON_0; + menu->state = 0; return TRUE; } else { - structPtr->mark = CONDITION_MON_0; - structPtr->unk6787 = CONDITION_MON_1; - structPtr->unk6788 = CONDITION_MON_2; + menu->loadId = CONDITION_MON_0; + menu->nextLoadIdDown = CONDITION_MON_1; + menu->nextLoadIdUp = CONDITION_MON_2; } break; // These were probably ternaries just like cases 7-9, but couldn't match it any other way. @@ -285,28 +290,28 @@ bool32 LoadPartyConditionMenuGfx(void) break; case 9: ConditionGraphDrawMonPic((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); - structPtr->state = 0; + menu->state = 0; return TRUE; } - structPtr->state++; + menu->state++; return FALSE; } -bool32 SetConditionGraphData(u8 mode) +bool32 LoadNextConditionMenuMonData(u8 mode) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); switch (mode) { - case 0: - CopyMonNameGenderLocation(structPtr->monIndex, structPtr->unk6789); + case CONDITION_LOAD_MON_INFO: + CopyMonNameGenderLocation(menu->toLoadListIndex, menu->toLoadId); break; - case 1: - GetMonConditionGraphData(structPtr->monIndex, structPtr->unk6789); + case CONDITION_LOAD_GRAPH: + GetMonConditionGraphData(menu->toLoadListIndex, menu->toLoadId); break; - case 2: - ConditionGraphDrawMonPic(structPtr->monIndex, structPtr->unk6789); + case CONDITION_LOAD_MON_PIC: + ConditionGraphDrawMonPic(menu->toLoadListIndex, menu->toLoadId); return TRUE; } @@ -419,42 +424,42 @@ static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) static void CopyMonNameGenderLocation(s16 listId, u8 loadId) { u16 boxId, i; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (listId != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) { - CopyConditionMonNameGender(structPtr->nameText[loadId], listId, FALSE); + CopyConditionMonNameGender(menu->nameText[loadId], listId, FALSE); boxId = monListPtr->monData[listId].boxId; - structPtr->locationText[loadId][0] = EXT_CTRL_CODE_BEGIN; - structPtr->locationText[loadId][1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; - structPtr->locationText[loadId][2] = TEXT_COLOR_BLUE; - structPtr->locationText[loadId][3] = TEXT_COLOR_TRANSPARENT; - structPtr->locationText[loadId][4] = TEXT_COLOR_LIGHT_BLUE; + menu->locationText[loadId][0] = EXT_CTRL_CODE_BEGIN; + menu->locationText[loadId][1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; + menu->locationText[loadId][2] = TEXT_COLOR_BLUE; + menu->locationText[loadId][3] = TEXT_COLOR_TRANSPARENT; + menu->locationText[loadId][4] = TEXT_COLOR_LIGHT_BLUE; if (boxId == TOTAL_BOXES_COUNT) - CopyStringLeftAlignedToConditionData(&structPtr->locationText[loadId][5], gText_InParty, BOX_NAME_LENGTH); + CopyStringLeftAlignedToConditionData(&menu->locationText[loadId][5], gText_InParty, BOX_NAME_LENGTH); else - CopyStringLeftAlignedToConditionData(&structPtr->locationText[loadId][5], GetBoxNamePtr(boxId), BOX_NAME_LENGTH); + CopyStringLeftAlignedToConditionData(&menu->locationText[loadId][5], GetBoxNamePtr(boxId), BOX_NAME_LENGTH); } else { for (i = 0; i < 12; i++) - structPtr->nameText[loadId][i] = CHAR_SPACE; - structPtr->nameText[loadId][i] = EOS; + menu->nameText[loadId][i] = CHAR_SPACE; + menu->nameText[loadId][i] = EOS; for (i = 0; i < BOX_NAME_LENGTH; i++) - structPtr->locationText[loadId][i] = CHAR_SPACE; - structPtr->locationText[loadId][i] = EOS; + menu->locationText[loadId][i] = CHAR_SPACE; + menu->locationText[loadId][i] = EOS; } } static void InitPartyConditionListParameters(void) { u16 i, count; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); - structPtr->searchMode = 0; + menu->inSearchMode = FALSE; for (i = 0, count = 0; i < CalculatePlayerPartyCount(); i++) { if (!GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) @@ -471,42 +476,43 @@ static void InitPartyConditionListParameters(void) monListPtr->monData[count].data = 0; monListPtr->currIndex = 0; monListPtr->listCount = count + 1; - structPtr->state = 0; + menu->state = 0; } static void InitSearchResultsConditionList(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - structPtr->searchMode = 1; - structPtr->state = 0; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + menu->inSearchMode = TRUE; + menu->state = 0; } static void GetMonConditionGraphData(s16 listId, u8 loadId) { u16 boxId, monId, i; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (listId != (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) { boxId = monListPtr->monData[listId].boxId; monId = monListPtr->monData[listId].monId; - structPtr->graph.conditions[loadId][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); - structPtr->graph.conditions[loadId][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); - structPtr->graph.conditions[loadId][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); - structPtr->graph.conditions[loadId][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); - structPtr->graph.conditions[loadId][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); - structPtr->numSparkles[loadId] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); - structPtr->monMarks[loadId] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_MARKINGS, NULL); - ConditionGraph_CalcPositions(structPtr->graph.conditions[loadId], structPtr->graph.savedPositions[loadId]); + menu->graph.conditions[loadId][CONDITION_COOL] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_COOL, NULL); + menu->graph.conditions[loadId][CONDITION_TOUGH] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_TOUGH, NULL); + menu->graph.conditions[loadId][CONDITION_SMART] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SMART, NULL); + menu->graph.conditions[loadId][CONDITION_CUTE] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_CUTE, NULL); + menu->graph.conditions[loadId][CONDITION_BEAUTY] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_BEAUTY, NULL); + menu->numSparkles[loadId] = GET_NUM_CONDITION_SPARKLES(GetBoxOrPartyMonData(boxId, monId, MON_DATA_SHEEN, NULL)); + menu->monMarks[loadId] = GetBoxOrPartyMonData(boxId, monId, MON_DATA_MARKINGS, NULL); + ConditionGraph_CalcPositions(menu->graph.conditions[loadId], menu->graph.savedPositions[loadId]); } else { + // Set empty graph point for (i = 0; i < CONDITION_COUNT; i++) { - structPtr->graph.conditions[loadId][i] = 0; - structPtr->graph.savedPositions[loadId][i].x = CONDITION_GRAPH_CENTER_X; - structPtr->graph.savedPositions[loadId][i].y = CONDITION_GRAPH_CENTER_Y; + menu->graph.conditions[loadId][i] = 0; + menu->graph.savedPositions[loadId][i].x = CONDITION_GRAPH_CENTER_X; + menu->graph.savedPositions[loadId][i].y = CONDITION_GRAPH_CENTER_Y; } } } @@ -515,10 +521,10 @@ static void ConditionGraphDrawMonPic(s16 listId, u8 loadId) { u16 boxId, monId, species; u32 personality, tid; - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - if (listId == (IsConditionMenuSearchMode() != 0 ? monListPtr->listCount : monListPtr->listCount - 1)) + if (listId == (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) return; boxId = monListPtr->monData[listId].boxId; @@ -526,8 +532,8 @@ static void ConditionGraphDrawMonPic(s16 listId, u8 loadId) species = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SPECIES2, NULL); tid = GetBoxOrPartyMonData(boxId, monId, MON_DATA_OT_ID, NULL); personality = GetBoxOrPartyMonData(boxId, monId, MON_DATA_PERSONALITY, NULL); - LoadSpecialPokePic(&gMonFrontPicTable[species], structPtr->monPicGfx[loadId], species, personality, TRUE); - LZ77UnCompWram(GetMonSpritePalFromSpeciesAndPersonality(species, tid, personality), structPtr->monPal[loadId]); + LoadSpecialPokePic(&gMonFrontPicTable[species], menu->monPicGfx[loadId], species, personality, TRUE); + LZ77UnCompWram(GetMonSpritePalFromSpeciesAndPersonality(species, tid, personality), menu->monPal[loadId]); } u16 GetMonListCount(void) @@ -536,7 +542,7 @@ u16 GetMonListCount(void) return monListPtr->listCount; } -u16 GetConditionGraphCurrentMonIndex(void) +u16 GetConditionGraphCurrentListIndex(void) { struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); return monListPtr->currIndex; @@ -544,50 +550,50 @@ u16 GetConditionGraphCurrentMonIndex(void) struct ConditionGraph *GetConditionGraphPtr(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return &structPtr->graph; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return &menu->graph; } -u8 GetMonMarkIndex(void) +u8 GetConditionGraphMenuCurrentLoadIndex(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->mark; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->loadId; } -u8 sub_81CDC9C(void) +u8 GetConditionGraphMenuToLoadListIndex(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->monIndex; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->toLoadListIndex; } void *GetConditionMonPicGfx(u8 loadId) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->monPicGfx[loadId]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->monPicGfx[loadId]; } void *GetConditionMonPal(u8 loadId) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->monPal[loadId]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->monPal[loadId]; } -u8 sub_81CDCEC(void) +u8 GetConditionGraphMenuToLoadId(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->unk6789; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->toLoadId; } u8 *GetConditionMonNameText(u8 loadId) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->nameText[loadId]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->nameText[loadId]; } u8 *GetConditionMonLocationText(u8 loadId) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->locationText[loadId]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->locationText[loadId]; } u16 GetConditionMonDataBuffer(void) @@ -598,24 +604,25 @@ u16 GetConditionMonDataBuffer(void) bool32 IsConditionMenuSearchMode(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - if (structPtr->searchMode == 1) + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + if (menu->inSearchMode == TRUE) return TRUE; else return FALSE; } +// Markings are only shown in search mode u8 TryGetMonMarkId(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - if (structPtr->searchMode == 1) - return structPtr->monMarks[structPtr->mark]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + if (menu->inSearchMode == TRUE) + return menu->monMarks[menu->loadId]; else return 0; } u8 GetNumConditionMonSparkles(void) { - struct PokenavSub11 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH); - return structPtr->numSparkles[structPtr->mark]; + struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); + return menu->numSparkles[menu->loadId]; } diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_2.c index c2e8cadea0e9..cecba800ca4c 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_2.c @@ -16,21 +16,21 @@ #include "text.h" static u32 LoopedTask_TransitionMons(s32); -static u32 LoopedTask_ExitPartyConditionMenu(s32); +static u32 LoopedTask_ExitConditionGraphMenu(s32); static u32 LoopedTask_MoveCursorNoTransition(s32); static u32 LoopedTask_SlideMonOut(s32); static u32 LoopedTask_OpenMonMarkingsWindow(s32); static u32 LoopedTask_CloseMonMarkingsWindow(s32); -static u8 sUnknown_030012BC; +static u8 sInitialLoadId; // Never read const u16 gConditionGraphData_Pal[] = INCBIN_U16("graphics/pokenav/condition/graph_data.gbapal"); const u16 gConditionText_Pal[] = INCBIN_U16("graphics/pokenav/condition/text.gbapal"); -static const u32 sUnknown_08623228[] = INCBIN_U32("graphics/pokenav/condition/graph_data.4bpp.lz"); -static const u32 sConditionGraph_Tilemap[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz"); -static const u16 sConditionGraphMonMarkingsPal[] = INCBIN_U16("graphics/pokenav/8623338.gbapal"); +static const u32 sConditionGraphData_Gfx[] = INCBIN_U32("graphics/pokenav/condition/graph_data.4bpp.lz"); +static const u32 sConditionGraphData_Tilemap[] = INCBIN_U32("graphics/pokenav/condition/graph_data.bin.lz"); +static const u16 sMonMarkings_Pal[] = INCBIN_U16("graphics/pokenav/condition/mon_markings.gbapal"); -static const struct BgTemplate sPartyConditionBgTemplates[3] = +static const struct BgTemplate sMenuBgTemplates[3] = { { .bg = 1, @@ -72,7 +72,7 @@ static const struct WindowTemplate sMonNameGenderWindowTemplate = .baseBlock = 2 }; -static const struct WindowTemplate sConditionGraphListIdWindowTemplate = +static const struct WindowTemplate sListIndexWindowTemplate = { .bg = 1, .tilemapLeft = 1, @@ -105,29 +105,29 @@ static const struct WindowTemplate sUnusedWindowTemplate2 = .baseBlock = 0x44 }; -static const LoopedTask sPartyConditionLoopedTaskFuncs[] = +static const LoopedTask sLoopedTaskFuncs[] = { - [PARTY_CONDITION_FUNC_NONE] = NULL, - [PARTY_CONDITION_FUNC_SLIDE_MON_IN] = LoopedTask_TransitionMons, - [PARTY_CONDITION_FUNC_RETURN] = LoopedTask_ExitPartyConditionMenu, - [PARTY_CONDITION_FUNC_NO_TRANSITION] = LoopedTask_MoveCursorNoTransition, - [PARTY_CONDITION_FUNC_SLIDE_MON_OUT] = LoopedTask_SlideMonOut, - [PARTY_CONDITION_FUNC_ADD_MARKINGS] = LoopedTask_OpenMonMarkingsWindow, - [PARTY_CONDITION_FUNC_CLOSE_MARKINGS] = LoopedTask_CloseMonMarkingsWindow + [CONDITION_FUNC_NONE] = NULL, + [CONDITION_FUNC_SLIDE_MON_IN] = LoopedTask_TransitionMons, + [CONDITION_FUNC_RETURN] = LoopedTask_ExitConditionGraphMenu, + [CONDITION_FUNC_NO_TRANSITION] = LoopedTask_MoveCursorNoTransition, + [CONDITION_FUNC_SLIDE_MON_OUT] = LoopedTask_SlideMonOut, + [CONDITION_FUNC_ADD_MARKINGS] = LoopedTask_OpenMonMarkingsWindow, + [CONDITION_FUNC_CLOSE_MARKINGS] = LoopedTask_CloseMonMarkingsWindow }; -struct Pokenav7Struct +struct Pokenav_ConditionMenuGfx { u32 loopedTaskId; u8 tilemapBuffers[3][BG_SCREEN_SIZE]; u8 filler[2]; - u8 partyPokeballSpriteIds[10]; + u8 partyPokeballSpriteIds[PARTY_SIZE + 1]; u32 (*callback)(void); s16 monTransitionX; u8 monPicSpriteId; u16 monPalIndex; u16 monGfxTileStart; - void *unk181C; + void *monGfxPtr; u8 nameGenderWindowId; u8 listIndexWindowId; u8 unusedWindowId1; @@ -139,66 +139,65 @@ struct Pokenav7Struct u8 filler2[0xFA3]; }; -extern s8 GetMonMarkIndex(void); // This function's declaration here is s8 vs. u8 in pokenav_conditions_1.c +extern s8 GetConditionGraphMenuCurrentLoadIndex(void); // This function's declaration here is s8 vs. u8 in pokenav_conditions_1.c -static u32 LoopedTask_OpenPartyConditionGraph(s32 state); -static u32 GetPartyConditionLoopedTaskActive(void); -static void CreateConditionMonPic(u8 var); +static u32 LoopedTask_OpenConditionGraphMenu(s32); +static u32 GetConditionGraphMenuLoopedTaskActive(void); +static void CreateConditionMonPic(u8); static void CreateMonMarkingsOrPokeballIndicators(void); static void CopyUnusedConditionWindowsToVram(void); -static bool32 UpdateConditionGraphWindows(u8 a0, u16 a1, bool8 a2); +static bool32 UpdateConditionGraphMenuWindows(u8, u16, bool8); static void VBlankCB_PokenavConditionGraph(void); -static void DoConditionGraphTransition(void); -static void sub_81CEEC8(void); -static void sub_81CEE68(void); -static void ToggleGraphData(bool8 showBg); +static void DoConditionGraphEnterTransition(void); +static void DoConditionGraphExitTransition(void); +static void SetExitVBlank(void); +static void ToggleGraphData(bool8); -// code -bool32 OpenPartyConditionMenu(void) +bool32 OpenConditionGraphMenu(void) { - struct Pokenav7Struct *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MON_MARK_MENU, sizeof(struct Pokenav7Struct)); + struct Pokenav_ConditionMenuGfx *menu = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX, sizeof(struct Pokenav_ConditionMenuGfx)); - if (structPtr == NULL) + if (menu == NULL) return FALSE; - structPtr->monPicSpriteId = SPRITE_NONE; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_OpenPartyConditionGraph, 1); - structPtr->callback = GetPartyConditionLoopedTaskActive; - structPtr->windowModeState = 0; + menu->monPicSpriteId = SPRITE_NONE; + menu->loopedTaskId = CreateLoopedTask(LoopedTask_OpenConditionGraphMenu, 1); + menu->callback = GetConditionGraphMenuLoopedTaskActive; + menu->windowModeState = 0; return TRUE; } -void CreatePartyConditionLoopedTask(s32 id) +void CreateConditionGraphMenuLoopedTask(s32 id) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - structPtr->loopedTaskId = CreateLoopedTask(sPartyConditionLoopedTaskFuncs[id], 1); - structPtr->callback = GetPartyConditionLoopedTaskActive; + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); + menu->loopedTaskId = CreateLoopedTask(sLoopedTaskFuncs[id], 1); + menu->callback = GetConditionGraphMenuLoopedTaskActive; } -u32 IsPartyConditionLoopedTaskActive(void) +u32 IsConditionGraphMenuLoopedTaskActive(void) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - return structPtr->callback(); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); + return menu->callback(); } -static u32 GetPartyConditionLoopedTaskActive(void) +static u32 GetConditionGraphMenuLoopedTaskActive(void) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - return IsLoopedTaskActive(structPtr->loopedTaskId); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); + return IsLoopedTaskActive(menu->loopedTaskId); } -static u32 LoopedTask_OpenPartyConditionGraph(s32 state) +static u32 LoopedTask_OpenConditionGraphMenu(s32 state) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); switch (state) { case 0: - if (LoadPartyConditionMenuGfx() != TRUE) + if (LoadConditionGraphMenuGfx() != TRUE) return LT_PAUSE; return LT_INC_AND_PAUSE; case 1: - InitBgTemplates(sPartyConditionBgTemplates, ARRAY_COUNT(sPartyConditionBgTemplates)); + InitBgTemplates(sMenuBgTemplates, ARRAY_COUNT(sMenuBgTemplates)); ChangeBgX(1, 0, BG_COORD_SET); ChangeBgY(1, 0, BG_COORD_SET); ChangeBgX(2, 0, BG_COORD_SET); @@ -213,28 +212,28 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) case 2: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - DecompressAndCopyTileDataToVram(2, sUnknown_08623228, 0, 0, 0); + DecompressAndCopyTileDataToVram(2, sConditionGraphData_Gfx, 0, 0, 0); return LT_INC_AND_PAUSE; case 3: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - LZ77UnCompVram(gPokenavCondition_Tilemap, structPtr->tilemapBuffers[0]); - SetBgTilemapBuffer(3, structPtr->tilemapBuffers[0]); + LZ77UnCompVram(gPokenavCondition_Tilemap, menu->tilemapBuffers[0]); + SetBgTilemapBuffer(3, menu->tilemapBuffers[0]); if (IsConditionMenuSearchMode() == TRUE) CopyToBgTilemapBufferRect(3, gPokenavOptions_Tilemap, 0, 5, 9, 4); CopyBgTilemapBufferToVram(3); CopyPaletteIntoBufferUnfaded(gPokenavCondition_Pal, 0x10, 0x20); CopyPaletteIntoBufferUnfaded(gConditionText_Pal, 0xF0, 0x20); - structPtr->monTransitionX = -80; + menu->monTransitionX = -80; return LT_INC_AND_PAUSE; case 4: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - LZ77UnCompVram(sConditionGraph_Tilemap, structPtr->tilemapBuffers[2]); - SetBgTilemapBuffer(2, structPtr->tilemapBuffers[2]); + LZ77UnCompVram(sConditionGraphData_Tilemap, menu->tilemapBuffers[2]); + SetBgTilemapBuffer(2, menu->tilemapBuffers[2]); CopyBgTilemapBufferToVram(2); CopyPaletteIntoBufferUnfaded(gConditionGraphData_Pal, 0x30, 0x20); ConditionGraph_InitWindow(2); @@ -242,19 +241,19 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) case 5: BgDmaFill(1, 0, 0, 1); BgDmaFill(1, 17, 1, 1); - CpuFill32(0, structPtr->tilemapBuffers[1], BG_SCREEN_SIZE); - SetBgTilemapBuffer(1, structPtr->tilemapBuffers[1]); + CpuFill32(0, menu->tilemapBuffers[1], BG_SCREEN_SIZE); + SetBgTilemapBuffer(1, menu->tilemapBuffers[1]); return LT_INC_AND_PAUSE; case 6: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - structPtr->nameGenderWindowId = AddWindow(&sMonNameGenderWindowTemplate); + menu->nameGenderWindowId = AddWindow(&sMonNameGenderWindowTemplate); if (IsConditionMenuSearchMode() == TRUE) { - structPtr->listIndexWindowId = AddWindow(&sConditionGraphListIdWindowTemplate); - structPtr->unusedWindowId1 = AddWindow(&sUnusedWindowTemplate1); - structPtr->unusedWindowId2 = AddWindow(&sUnusedWindowTemplate2); + menu->listIndexWindowId = AddWindow(&sListIndexWindowTemplate); + menu->unusedWindowId1 = AddWindow(&sUnusedWindowTemplate1); + menu->unusedWindowId2 = AddWindow(&sUnusedWindowTemplate2); } DeactivateAllTextPrinters(); return LT_INC_AND_PAUSE; @@ -269,23 +268,23 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) CopyUnusedConditionWindowsToVram(); return LT_INC_AND_PAUSE; case 10: - UpdateConditionGraphWindows(0, GetMonMarkIndex(), TRUE); + UpdateConditionGraphMenuWindows(0, GetConditionGraphMenuCurrentLoadIndex(), TRUE); return LT_INC_AND_PAUSE; case 11: - UpdateConditionGraphWindows(1, GetMonMarkIndex(), TRUE); + UpdateConditionGraphMenuWindows(1, GetConditionGraphMenuCurrentLoadIndex(), TRUE); return LT_INC_AND_PAUSE; case 12: - UpdateConditionGraphWindows(2, GetMonMarkIndex(), TRUE); + UpdateConditionGraphMenuWindows(2, GetConditionGraphMenuCurrentLoadIndex(), TRUE); return LT_INC_AND_PAUSE; case 13: - if (UpdateConditionGraphWindows(3, GetMonMarkIndex(), TRUE) != TRUE) + if (UpdateConditionGraphMenuWindows(3, GetConditionGraphMenuCurrentLoadIndex(), TRUE) != TRUE) return LT_PAUSE; - PutWindowTilemap(structPtr->nameGenderWindowId); + PutWindowTilemap(menu->nameGenderWindowId); if (IsConditionMenuSearchMode() == TRUE) { - PutWindowTilemap(structPtr->listIndexWindowId); - PutWindowTilemap(structPtr->unusedWindowId1); - PutWindowTilemap(structPtr->unusedWindowId2); + PutWindowTilemap(menu->listIndexWindowId); + PutWindowTilemap(menu->unusedWindowId1); + PutWindowTilemap(menu->unusedWindowId2); } return LT_INC_AND_PAUSE; case 14: @@ -312,7 +311,7 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) SetVBlankCallback_(VBlankCB_PokenavConditionGraph); return LT_INC_AND_PAUSE; case 17: - DoConditionGraphTransition(); + DoConditionGraphEnterTransition(); ConditionGraph_InitResetScanline(GetConditionGraphPtr()); return LT_INC_AND_PAUSE; case 18: @@ -323,11 +322,11 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) ToggleGraphData(TRUE); return LT_INC_AND_PAUSE; case 20: - if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &menu->monTransitionX)) { - ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); - if (IsConditionMenuSearchMode() == TRUE || GetConditionGraphCurrentMonIndex() != GetMonListCount()) - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); + ResetConditionSparkleSprites(menu->conditionSparkleSprites); + if (IsConditionMenuSearchMode() == TRUE || GetConditionGraphCurrentListIndex() != GetMonListCount()) + CreateConditionSparkleSprites(menu->conditionSparkleSprites, menu->monPicSpriteId, GetNumConditionMonSparkles()); return LT_FINISH; } @@ -337,18 +336,18 @@ static u32 LoopedTask_OpenPartyConditionGraph(s32 state) return LT_FINISH; } -static u32 LoopedTask_ExitPartyConditionMenu(s32 state) +static u32 LoopedTask_ExitConditionGraphMenu(s32 state) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); switch (state) { case 0: - sub_81CEEC8(); - DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); + DoConditionGraphExitTransition(); + DestroyConditionSparkleSprites(menu->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 1: - if (ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &structPtr->monTransitionX)) + if (ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &menu->monTransitionX)) return 2; ToggleGraphData(FALSE); return LT_INC_AND_CONTINUE; @@ -360,7 +359,7 @@ static u32 LoopedTask_ExitPartyConditionMenu(s32 state) case 3: if (IsPaletteFadeActive() || MainMenuLoopedTaskIsBusy()) return LT_PAUSE; - FreeConditionSparkles(structPtr->conditionSparkleSprites); + FreeConditionSparkles(menu->conditionSparkleSprites); HideBg(1); HideBg(2); HideBg(3); @@ -372,53 +371,53 @@ static u32 LoopedTask_ExitPartyConditionMenu(s32 state) static u32 LoopedTask_TransitionMons(s32 state) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); struct ConditionGraph *graph = GetConditionGraphPtr(); switch (state) { case 0: - SetConditionGraphData(0); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_INFO); return LT_INC_AND_CONTINUE; case 1: - SetConditionGraphData(1); + LoadNextConditionMenuMonData(CONDITION_LOAD_GRAPH); return LT_INC_AND_CONTINUE; case 2: - SetConditionGraphData(2); - DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_PIC); + DestroyConditionSparkleSprites(menu->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: ConditionGraph_TryUpdate(graph); return LT_INC_AND_CONTINUE; case 4: - if (!MoveConditionMonOffscreen(&structPtr->monTransitionX)) + if (!MoveConditionMonOffscreen(&menu->monTransitionX)) { - CreateConditionMonPic(GetMonMarkIndex()); + CreateConditionMonPic(GetConditionGraphMenuCurrentLoadIndex()); return LT_INC_AND_CONTINUE; } return LT_PAUSE; case 5: - UpdateConditionGraphWindows(0, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(0, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 6: - UpdateConditionGraphWindows(1, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(1, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 7: - UpdateConditionGraphWindows(2, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(2, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 8: - if (UpdateConditionGraphWindows(3, GetMonMarkIndex(), FALSE) == TRUE) + if (UpdateConditionGraphMenuWindows(3, GetConditionGraphMenuCurrentLoadIndex(), FALSE) == TRUE) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 9: graph = GetConditionGraphPtr(); - if (!ConditionMenu_UpdateMonEnter(graph, &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonEnter(graph, &menu->monTransitionX)) { - ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); - if (IsConditionMenuSearchMode() != TRUE && GetConditionGraphCurrentMonIndex() == GetMonListCount()) + ResetConditionSparkleSprites(menu->conditionSparkleSprites); + if (IsConditionMenuSearchMode() != TRUE && GetConditionGraphCurrentListIndex() == GetMonListCount()) return LT_INC_AND_CONTINUE; - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); + CreateConditionSparkleSprites(menu->conditionSparkleSprites, menu->monPicSpriteId, GetNumConditionMonSparkles()); return LT_INC_AND_CONTINUE; } return LT_PAUSE; @@ -429,40 +428,40 @@ static u32 LoopedTask_TransitionMons(s32 state) static u32 LoopedTask_MoveCursorNoTransition(s32 state) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); switch (state) { case 0: - SetConditionGraphData(0); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_INFO); return LT_INC_AND_CONTINUE; case 1: - SetConditionGraphData(1); + LoadNextConditionMenuMonData(CONDITION_LOAD_GRAPH); return LT_INC_AND_CONTINUE; case 2: - SetConditionGraphData(2); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_PIC); return LT_INC_AND_CONTINUE; case 3: - CreateConditionMonPic(GetMonMarkIndex()); + CreateConditionMonPic(GetConditionGraphMenuCurrentLoadIndex()); return LT_INC_AND_CONTINUE; case 4: - UpdateConditionGraphWindows(0, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(0, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 5: - UpdateConditionGraphWindows(1, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(1, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 6: - UpdateConditionGraphWindows(2, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(2, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 7: - if (UpdateConditionGraphWindows(3, GetMonMarkIndex(), FALSE) == TRUE) + if (UpdateConditionGraphMenuWindows(3, GetConditionGraphMenuCurrentLoadIndex(), FALSE) == TRUE) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 8: - if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonEnter(GetConditionGraphPtr(), &menu->monTransitionX)) { - ResetConditionSparkleSprites(structPtr->conditionSparkleSprites); - CreateConditionSparkleSprites(structPtr->conditionSparkleSprites, structPtr->monPicSpriteId, GetNumConditionMonSparkles()); + ResetConditionSparkleSprites(menu->conditionSparkleSprites); + CreateConditionSparkleSprites(menu->conditionSparkleSprites, menu->monPicSpriteId, GetNumConditionMonSparkles()); return LT_INC_AND_CONTINUE; } return LT_PAUSE; @@ -473,35 +472,35 @@ static u32 LoopedTask_MoveCursorNoTransition(s32 state) static u32 LoopedTask_SlideMonOut(s32 state) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); switch (state) { case 0: - SetConditionGraphData(0); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_INFO); return LT_INC_AND_CONTINUE; case 1: - SetConditionGraphData(1); + LoadNextConditionMenuMonData(CONDITION_LOAD_GRAPH); return LT_INC_AND_CONTINUE; case 2: - SetConditionGraphData(2); - DestroyConditionSparkleSprites(structPtr->conditionSparkleSprites); + LoadNextConditionMenuMonData(CONDITION_LOAD_MON_PIC); + DestroyConditionSparkleSprites(menu->conditionSparkleSprites); return LT_INC_AND_CONTINUE; case 3: - if (!ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &structPtr->monTransitionX)) + if (!ConditionMenu_UpdateMonExit(GetConditionGraphPtr(), &menu->monTransitionX)) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 4: - UpdateConditionGraphWindows(0, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(0, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 5: - UpdateConditionGraphWindows(1, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(1, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 6: - UpdateConditionGraphWindows(2, GetMonMarkIndex(), FALSE); + UpdateConditionGraphMenuWindows(2, GetConditionGraphMenuCurrentLoadIndex(), FALSE); return LT_INC_AND_CONTINUE; case 7: - if (UpdateConditionGraphWindows(3, GetMonMarkIndex(), FALSE) == TRUE) + if (UpdateConditionGraphMenuWindows(3, GetConditionGraphMenuCurrentLoadIndex(), FALSE) == TRUE) return LT_INC_AND_CONTINUE; return LT_PAUSE; } @@ -555,68 +554,68 @@ static u8 *UnusedPrintNumberString(u8 *dst, u16 num) return txtPtr; } -static bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMode) +static bool32 UpdateConditionGraphMenuWindows(u8 mode, u16 bufferIndex, bool8 winMode) { u8 text[32]; const u8 *str; - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); switch (mode) { case 0: - FillWindowPixelBuffer(structPtr->nameGenderWindowId, 0); + FillWindowPixelBuffer(menu->nameGenderWindowId, 0); if (IsConditionMenuSearchMode() == TRUE) - FillWindowPixelBuffer(structPtr->listIndexWindowId, 0); + FillWindowPixelBuffer(menu->listIndexWindowId, 0); break; case 1: - if (GetConditionGraphCurrentMonIndex() != GetMonListCount() - 1 || IsConditionMenuSearchMode() == TRUE) + if (GetConditionGraphCurrentListIndex() != GetMonListCount() - 1 || IsConditionMenuSearchMode() == TRUE) { str = GetConditionMonNameText(bufferIndex); - AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 1, 0, NULL); + AddTextPrinterParameterized(menu->nameGenderWindowId, FONT_NORMAL, str, 0, 1, 0, NULL); } break; case 2: if (IsConditionMenuSearchMode() == TRUE) { str = GetConditionMonLocationText(bufferIndex); - AddTextPrinterParameterized(structPtr->nameGenderWindowId, FONT_NORMAL, str, 0, 17, 0, NULL); + AddTextPrinterParameterized(menu->nameGenderWindowId, FONT_NORMAL, str, 0, 17, 0, NULL); text[0] = EXT_CTRL_CODE_BEGIN; text[1] = EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW; text[2] = TEXT_COLOR_BLUE; text[3] = TEXT_COLOR_TRANSPARENT; text[4] = TEXT_COLOR_LIGHT_BLUE; StringCopy(&text[5], gText_Number2); - AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 4, 1, 0, NULL); + AddTextPrinterParameterized(menu->listIndexWindowId, FONT_NORMAL, text, 4, 1, 0, NULL); ConvertIntToDecimalStringN(&text[5], GetConditionMonDataBuffer(), STR_CONV_MODE_RIGHT_ALIGN, 4); - AddTextPrinterParameterized(structPtr->listIndexWindowId, FONT_NORMAL, text, 28, 1, 0, NULL); + AddTextPrinterParameterized(menu->listIndexWindowId, FONT_NORMAL, text, 28, 1, 0, NULL); } break; case 3: - switch (structPtr->windowModeState) + switch (menu->windowModeState) { case 0: if (winMode) - CopyWindowToVram(structPtr->nameGenderWindowId, COPYWIN_FULL); + CopyWindowToVram(menu->nameGenderWindowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->nameGenderWindowId, COPYWIN_GFX); + CopyWindowToVram(menu->nameGenderWindowId, COPYWIN_GFX); if (IsConditionMenuSearchMode() == TRUE) { - structPtr->windowModeState++; + menu->windowModeState++; return FALSE; } else { - structPtr->windowModeState = 0; + menu->windowModeState = 0; return TRUE; } case 1: if (winMode) - CopyWindowToVram(structPtr->listIndexWindowId, COPYWIN_FULL); + CopyWindowToVram(menu->listIndexWindowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->listIndexWindowId, COPYWIN_GFX); + CopyWindowToVram(menu->listIndexWindowId, COPYWIN_GFX); - structPtr->windowModeState = 0; + menu->windowModeState = 0; return TRUE; } } @@ -626,23 +625,23 @@ static bool32 UpdateConditionGraphWindows(u8 mode, u16 bufferIndex, bool8 winMod static void CopyUnusedConditionWindowsToVram(void) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); - CopyWindowToVram(structPtr->unusedWindowId1, COPYWIN_FULL); - CopyWindowToVram(structPtr->unusedWindowId2, COPYWIN_FULL); + CopyWindowToVram(menu->unusedWindowId1, COPYWIN_FULL); + CopyWindowToVram(menu->unusedWindowId2, COPYWIN_FULL); } -void sub_81CE964(struct Sprite *sprite) +static void SpriteCB_PartyPokeball(struct Sprite *sprite) { - if (sprite->data[0] == GetConditionGraphCurrentMonIndex()) - StartSpriteAnim(sprite, 0); + if (sprite->data[0] == GetConditionGraphCurrentListIndex()) + StartSpriteAnim(sprite, CONDITION_ICON_SELECTED); else - StartSpriteAnim(sprite, 1); + StartSpriteAnim(sprite, CONDITION_ICON_UNSELECTED); } void HighlightCurrentPartyIndexPokeball(struct Sprite *sprite) { - if (GetConditionGraphCurrentMonIndex() == GetMonListCount() - 1) + if (GetConditionGraphCurrentListIndex() == GetMonListCount() - 1) sprite->oam.paletteNum = IndexOfSpritePaletteTag(TAG_CONDITION_BALL); else sprite->oam.paletteNum = IndexOfSpritePaletteTag(TAG_CONDITION_CANCEL); @@ -661,71 +660,76 @@ static void CreateMonMarkingsOrPokeballIndicators(void) struct SpriteSheet sprSheet; struct Sprite *sprite; u16 i, spriteId; - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); LoadConditionSelectionIcons(sprSheets, &sprTemplate, sprPals); if (IsConditionMenuSearchMode() == TRUE) { - structPtr->marksMenu.baseTileTag = TAG_CONDITION_MARKINGS_MENU; - structPtr->marksMenu.basePaletteTag = TAG_CONDITION_MARKINGS_MENU; - InitMonMarkingsMenu(&structPtr->marksMenu); + // Search Mode, load markings menu + menu->marksMenu.baseTileTag = TAG_CONDITION_MARKINGS_MENU; + menu->marksMenu.basePaletteTag = TAG_CONDITION_MARKINGS_MENU; + InitMonMarkingsMenu(&menu->marksMenu); BufferMonMarkingsMenuTiles(); - sprite = CreateMonMarkingAllCombosSprite(TAG_CONDITION_MON_MARKINGS, TAG_CONDITION_MON_MARKINGS, sConditionGraphMonMarkingsPal); + sprite = CreateMonMarkingAllCombosSprite(TAG_CONDITION_MON_MARKINGS, TAG_CONDITION_MON_MARKINGS, sMonMarkings_Pal); sprite->oam.priority = 3; sprite->x = 192; sprite->y = 32; sprite->callback = MonMarkingsCallback; - structPtr->monMarksSprite = sprite; + menu->monMarksSprite = sprite; PokenavFillPalette(IndexOfSpritePaletteTag(TAG_CONDITION_MON_MARKINGS), 0); } else { - // party mode -> add pokeballs on right hand side + // Party Mode, load PokĂ©ball selection icons LoadSpriteSheets(sprSheets); Pokenav_AllocAndLoadPalettes(sprPals); + + // Add icons for occupied slots for (i = 0; i < GetMonListCount() - 1; i++) { spriteId = CreateSprite(&sprTemplate, 226, (i * 20) + 8, 0); if (spriteId != MAX_SPRITES) { - structPtr->partyPokeballSpriteIds[i] = spriteId; + menu->partyPokeballSpriteIds[i] = spriteId; gSprites[spriteId].data[0] = i; - gSprites[spriteId].callback = sub_81CE964; + gSprites[spriteId].callback = SpriteCB_PartyPokeball; } else { - structPtr->partyPokeballSpriteIds[i] = SPRITE_NONE; + menu->partyPokeballSpriteIds[i] = SPRITE_NONE; } } + // Add icons for empty slots sprTemplate.tileTag = TAG_CONDITION_BALL_PLACEHOLDER; sprTemplate.callback = SpriteCallbackDummy; - for (; i < 6; i++) + for (; i < PARTY_SIZE; i++) { spriteId = CreateSprite(&sprTemplate, 230, (i * 20) + 8, 0); if (spriteId != MAX_SPRITES) { - structPtr->partyPokeballSpriteIds[i] = spriteId; + menu->partyPokeballSpriteIds[i] = spriteId; gSprites[spriteId].oam.size = 0; } else { - structPtr->partyPokeballSpriteIds[i] = SPRITE_NONE; + menu->partyPokeballSpriteIds[i] = SPRITE_NONE; } } + // Add cancel icon sprTemplate.tileTag = TAG_CONDITION_CANCEL; sprTemplate.callback = HighlightCurrentPartyIndexPokeball; spriteId = CreateSprite(&sprTemplate, 222, (i * 20) + 8, 0); if (spriteId != MAX_SPRITES) { - structPtr->partyPokeballSpriteIds[i] = spriteId; + menu->partyPokeballSpriteIds[i] = spriteId; gSprites[spriteId].oam.shape = SPRITE_SHAPE(32x16); gSprites[spriteId].oam.size = SPRITE_SIZE(32x16); } else { - structPtr->partyPokeballSpriteIds[i] = SPRITE_NONE; + menu->partyPokeballSpriteIds[i] = SPRITE_NONE; } } @@ -735,13 +739,13 @@ static void CreateMonMarkingsOrPokeballIndicators(void) Pokenav_AllocAndLoadPalettes(sprPals); } -void sub_81CEBF4(struct Pokenav7Struct *structPtr) +static void FreeConditionMenuGfx(struct Pokenav_ConditionMenuGfx *menu) { u8 i; if (IsConditionMenuSearchMode() == TRUE) { - DestroySprite(structPtr->monMarksSprite); + DestroySprite(menu->monMarksSprite); FreeSpriteTilesByTag(TAG_CONDITION_MARKINGS_MENU); FreeSpriteTilesByTag(TAG_CONDITION_MON_MARKINGS); FreeSpritePaletteByTag(TAG_CONDITION_MARKINGS_MENU); @@ -749,8 +753,8 @@ void sub_81CEBF4(struct Pokenav7Struct *structPtr) } else { - for (i = 0; i < 7; i++) - DestroySprite(&gSprites[structPtr->partyPokeballSpriteIds[i]]); + for (i = 0; i < PARTY_SIZE + 1; i++) + DestroySprite(&gSprites[menu->partyPokeballSpriteIds[i]]); FreeSpriteTilesByTag(TAG_CONDITION_BALL); FreeSpriteTilesByTag(TAG_CONDITION_CANCEL); @@ -759,24 +763,24 @@ void sub_81CEBF4(struct Pokenav7Struct *structPtr) FreeSpritePaletteByTag(TAG_CONDITION_CANCEL); } - if (structPtr->monPicSpriteId != SPRITE_NONE) + if (menu->monPicSpriteId != SPRITE_NONE) { - DestroySprite(&gSprites[structPtr->monPicSpriteId]); + DestroySprite(&gSprites[menu->monPicSpriteId]); FreeSpriteTilesByTag(TAG_CONDITION_MON); FreeSpritePaletteByTag(TAG_CONDITION_MON); } } -void FreePartyConditionSubstruct2(void) +void FreeConditionGraphMenuSubstruct2(void) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); - RemoveWindow(structPtr->nameGenderWindowId); + RemoveWindow(menu->nameGenderWindowId); if (IsConditionMenuSearchMode() == TRUE) { - RemoveWindow(structPtr->listIndexWindowId); - RemoveWindow(structPtr->unusedWindowId1); - RemoveWindow(structPtr->unusedWindowId2); + RemoveWindow(menu->listIndexWindowId); + RemoveWindow(menu->unusedWindowId1); + RemoveWindow(menu->unusedWindowId2); } else { @@ -784,15 +788,15 @@ void FreePartyConditionSubstruct2(void) } SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG0_ON | DISPCNT_OBJ_1D_MAP); - sub_81CEBF4(structPtr); - sub_81CEE68(); - FreePokenavSubstruct(POKENAV_SUBSTRUCT_MON_MARK_MENU); + FreeConditionMenuGfx(menu); + SetExitVBlank(); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); } void MonPicGfxSpriteCallback(struct Sprite *sprite) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); - sprite->x = structPtr->monTransitionX + 38; + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); + sprite->x = menu->monTransitionX + 38; } static void CreateConditionMonPic(u8 id) @@ -801,35 +805,35 @@ static void CreateConditionMonPic(u8 id) struct SpriteSheet sprSheet; struct SpritePalette sprPal; u8 spriteId; - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); - if (structPtr->monPicSpriteId == SPRITE_NONE) + if (menu->monPicSpriteId == SPRITE_NONE) { LoadConditionMonPicTemplate(&sprSheet, &sprTemplate, &sprPal); sprSheet.data = GetConditionMonPicGfx(id); sprPal.data = GetConditionMonPal(id); - structPtr->monPalIndex = LoadSpritePalette(&sprPal); - structPtr->monGfxTileStart = LoadSpriteSheet(&sprSheet); + menu->monPalIndex = LoadSpritePalette(&sprPal); + menu->monGfxTileStart = LoadSpriteSheet(&sprSheet); spriteId = CreateSprite(&sprTemplate, 38, 104, 0); - structPtr->monPicSpriteId = spriteId; + menu->monPicSpriteId = spriteId; if (spriteId == MAX_SPRITES) { FreeSpriteTilesByTag(TAG_CONDITION_MON); FreeSpritePaletteByTag(TAG_CONDITION_MON); - structPtr->monPicSpriteId = SPRITE_NONE; + menu->monPicSpriteId = SPRITE_NONE; } else { - structPtr->monPicSpriteId = spriteId; - gSprites[structPtr->monPicSpriteId].callback = MonPicGfxSpriteCallback; - structPtr->unk181C = (void*)VRAM + BG_VRAM_SIZE + (structPtr->monGfxTileStart * 32); - structPtr->monPalIndex = (structPtr->monPalIndex * 16) + 0x100; + menu->monPicSpriteId = spriteId; + gSprites[menu->monPicSpriteId].callback = MonPicGfxSpriteCallback; + menu->monGfxPtr = (void*)VRAM + BG_VRAM_SIZE + (menu->monGfxTileStart * 32); + menu->monPalIndex = (menu->monPalIndex * 16) + 0x100; } } else { - DmaCopy16Defvars(3, GetConditionMonPicGfx(id), structPtr->unk181C, MON_PIC_SIZE); - LoadPalette(GetConditionMonPal(id), structPtr->monPalIndex, 0x20); + DmaCopy16Defvars(3, GetConditionMonPicGfx(id), menu->monGfxPtr, MON_PIC_SIZE); + LoadPalette(GetConditionMonPal(id), menu->monPalIndex, 0x20); } } @@ -843,7 +847,7 @@ static void VBlankCB_PokenavConditionGraph(void) ScanlineEffect_InitHBlankDmaTransfer(); } -static void sub_81CEE68(void) +static void SetExitVBlank(void) { SetPokenavVBlankCallback(); } @@ -856,30 +860,33 @@ static void ToggleGraphData(bool8 showBg) HideBg(2); } -static void DoConditionGraphTransition(void) +static void DoConditionGraphEnterTransition(void) { struct ConditionGraph *graph = GetConditionGraphPtr(); - u8 id = GetMonMarkIndex(); + u8 id = GetConditionGraphMenuCurrentLoadIndex(); - sUnknown_030012BC = id; + sInitialLoadId = id; ConditionGraph_SetNewPositions(graph, graph->savedPositions[CONDITION_GRAPH_LOAD_MAX - 1], graph->savedPositions[id]); ConditionGraph_TryUpdate(graph); } -static void sub_81CEEC8(void) +// Transition the graph back to empty before exiting. +// This is skipped if the player is in party mode and the cursor +// is on Cancel, in which case the graph is already empty. +static void DoConditionGraphExitTransition(void) { struct ConditionGraph *graph = GetConditionGraphPtr(); - if (IsConditionMenuSearchMode() || GetConditionGraphCurrentMonIndex() != GetMonListCount() - 1) - ConditionGraph_SetNewPositions(graph, graph->savedPositions[GetMonMarkIndex()], graph->savedPositions[CONDITION_GRAPH_LOAD_MAX - 1]); + if (IsConditionMenuSearchMode() || GetConditionGraphCurrentListIndex() != GetMonListCount() - 1) + ConditionGraph_SetNewPositions(graph, graph->savedPositions[GetConditionGraphMenuCurrentLoadIndex()], graph->savedPositions[CONDITION_GRAPH_LOAD_MAX - 1]); } u8 GetMonMarkingsData(void) { - struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU); + struct Pokenav_ConditionMenuGfx *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX); if (IsConditionMenuSearchMode() == 1) - return structPtr->marksMenu.markings; + return menu->marksMenu.markings; else return 0; } diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_3.c index 1172774d79de..d9bd2273f6d7 100644 --- a/src/pokenav_conditions_3.c +++ b/src/pokenav_conditions_3.c @@ -21,48 +21,48 @@ enum CONDITION_SEARCH_FUNC_SELECT_MON, }; -struct PokenavSub7 +struct Pokenav_SearchResults { - u32 (*callback)(struct PokenavSub7 *); + u32 (*callback)(struct Pokenav_SearchResults *); u32 loopedTaskId; u8 fill1[4]; s32 boxId; s32 monId; u32 conditionDataId; - u32 returnFromGraph; - u32 isPartyCondition; + bool32 returnFromGraph; + bool32 saveResultsList; struct PokenavSub18 *monList; }; -struct PokenavSub8 +struct Pokenav_SearchResultsGfx { bool32 (*callback)(void); - u32 ltid; //looped task Id + u32 loopedTaskId; u16 winid; bool32 fromGraph; u8 buff[BG_SCREEN_SIZE]; }; // size: 0x810 -static u32 HandleConditionSearchInput_WaitSetup(struct PokenavSub7 *structPtr); -static u32 HandleConditionSearchInput(struct PokenavSub7 *structPtr); -static u32 OpenConditionGraphFromSearchList(struct PokenavSub7 *structPtr); -static u32 ReturnToConditionSearchList(struct PokenavSub7 *structPtr); -static u32 GetConditionSearchLoopedTask(s32 state); -static u32 BuildPartyMonSearchResults(s32 state); -static u32 InitBoxMonSearchResults(s32 state); -static u32 BuildBoxMonSearchResults(s32 state); -static u32 sub_81CF278(s32 state); -static u32 LoopedTask_MoveSearchListCursorUp(s32 state); -static u32 LoopedTask_MoveSearchListCursorDown(s32 state); -static u32 LoopedTask_MoveSearchListPageUp(s32 state); -static u32 LoopedTask_MoveSearchListPageDown(s32 state); -static u32 LoopedTask_ExitConditionSearchMenu(s32 state); -static u32 LoopedTask_SelectSearchResult(s32 state); -static void sub_81CF2C4(struct PokenavSub7 *structPtr, struct PokenavMonList *item); +static u32 HandleConditionSearchInput_WaitSetup(struct Pokenav_SearchResults *); +static u32 HandleConditionSearchInput(struct Pokenav_SearchResults *); +static u32 OpenConditionGraphFromSearchList(struct Pokenav_SearchResults *); +static u32 ReturnToConditionSearchList(struct Pokenav_SearchResults *); +static u32 GetConditionSearchLoopedTask(s32); +static u32 BuildPartyMonSearchResults(s32); +static u32 InitBoxMonSearchResults(s32); +static u32 BuildBoxMonSearchResults(s32); +static u32 ConvertConditionsToListRanks(s32); +static u32 LoopedTask_MoveSearchListCursorUp(s32); +static u32 LoopedTask_MoveSearchListCursorDown(s32); +static u32 LoopedTask_MoveSearchListPageUp(s32); +static u32 LoopedTask_MoveSearchListPageDown(s32); +static u32 LoopedTask_ExitConditionSearchMenu(s32); +static u32 LoopedTask_SelectSearchResult(s32); +static void InsertMonListItem(struct Pokenav_SearchResults *, struct PokenavMonList *); static bool32 GetSearchResultCurrentLoopedTaskActive(void); -static u32 LoopedTask_OpenConditionSearchResults(s32 state); -static void AddSearchResultListMenuWindow(struct PokenavSub8 *); -static void PrintSearchResultListMenuItems(struct PokenavSub8 *); +static u32 LoopedTask_OpenConditionSearchResults(s32); +static void AddSearchResultListMenuWindow(struct Pokenav_SearchResultsGfx *); +static void PrintSearchResultListMenuItems(struct Pokenav_SearchResultsGfx *); static void InitConditionSearchListMenuTemplate(void); static void PrintSearchMonListItem(struct PokenavMonList *, u8 *); @@ -73,13 +73,13 @@ static const LoopedTask sConditionSearchLoopedTaskFuncs[] = BuildPartyMonSearchResults, InitBoxMonSearchResults, BuildBoxMonSearchResults, - sub_81CF278 + ConvertConditionsToListRanks }; -static const u16 sConditionSearchResultFramePal[] = INCBIN_U16("graphics/pokenav/condition_search2.gbapal"); -static const u32 sConditionSearchResultTiles[] = INCBIN_U32("graphics/pokenav/condition_search2.4bpp.lz"); -static const u32 sConditionSearchResultTilemap[] = INCBIN_U32("graphics/pokenav/condition_search2.bin.lz"); -static const u16 gUnknown_08623570[] = INCBIN_U16("graphics/pokenav/8623570.gbapal"); +static const u16 sConditionSearchResultFramePal[] = INCBIN_U16("graphics/pokenav/condition/search_results.gbapal"); +static const u32 sConditionSearchResultTiles[] = INCBIN_U32("graphics/pokenav/condition/search_results.4bpp.lz"); +static const u32 sConditionSearchResultTilemap[] = INCBIN_U32("graphics/pokenav/condition/search_results.bin.lz"); +static const u16 sListBg_Pal[] = INCBIN_U16("graphics/pokenav/condition/search_results_list.gbapal"); static const struct BgTemplate sConditionSearchResultBgTemplates[] = { @@ -130,57 +130,57 @@ static const u8 sText_NoGenderSymbol[] = _("{UNK_SPACER}"); bool32 PokenavCallback_Init_ConditionSearch(void) { - struct PokenavSub7 *structPtr = AllocSubstruct(7, sizeof(struct PokenavSub7)); - if (structPtr == NULL) + struct Pokenav_SearchResults *menu = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS, sizeof(struct Pokenav_SearchResults)); + if (menu == NULL) return FALSE; - structPtr->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); - if (structPtr->monList == NULL) + menu->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); + if (menu->monList == NULL) return FALSE; - structPtr->callback = HandleConditionSearchInput_WaitSetup; - structPtr->loopedTaskId = CreateLoopedTask(GetConditionSearchLoopedTask, 1); - structPtr->returnFromGraph = 0; - structPtr->conditionDataId = sSearchMonDataIds[GetSelectedConditionSearch()]; + menu->callback = HandleConditionSearchInput_WaitSetup; + menu->loopedTaskId = CreateLoopedTask(GetConditionSearchLoopedTask, 1); + menu->returnFromGraph = FALSE; + menu->conditionDataId = sSearchMonDataIds[GetSelectedConditionSearch()]; return TRUE; } // return to search results from condition graph bool32 PokenavCallback_Init_ReturnToMonSearchList(void) { - struct PokenavSub7 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS, sizeof(struct PokenavSub7)); - if (structPtr == NULL) + struct Pokenav_SearchResults *menu = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS, sizeof(struct Pokenav_SearchResults)); + if (menu == NULL) return FALSE; - structPtr->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); - structPtr->callback = HandleConditionSearchInput; - structPtr->returnFromGraph = 1; - structPtr->conditionDataId = sSearchMonDataIds[GetSelectedConditionSearch()]; + menu->monList = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + menu->callback = HandleConditionSearchInput; + menu->returnFromGraph = TRUE; + menu->conditionDataId = sSearchMonDataIds[GetSelectedConditionSearch()]; return TRUE; } u32 GetConditionSearchResultsCallback(void) { - struct PokenavSub7 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - return structPtr->callback(structPtr); + struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + return menu->callback(menu); } void FreeSearchResultSubstruct1(void) { - struct PokenavSub7 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - if (structPtr->isPartyCondition == 0) + struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + if (!menu->saveResultsList) FreePokenavSubstruct(POKENAV_SUBSTRUCT_MON_LIST); FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); } -static bool32 HandleConditionSearchInput_WaitSetup(struct PokenavSub7 *structPtr) +static bool32 HandleConditionSearchInput_WaitSetup(struct Pokenav_SearchResults *menu) { - if (!IsLoopedTaskActive(structPtr->loopedTaskId)) - structPtr->callback = HandleConditionSearchInput; + if (!IsLoopedTaskActive(menu->loopedTaskId)) + menu->callback = HandleConditionSearchInput; return FALSE; } -static u32 HandleConditionSearchInput(struct PokenavSub7 *structPtr) +static u32 HandleConditionSearchInput(struct Pokenav_SearchResults *menu) { if (JOY_REPEAT(DPAD_UP)) return CONDITION_SEARCH_FUNC_MOVE_UP; @@ -192,60 +192,63 @@ static u32 HandleConditionSearchInput(struct PokenavSub7 *structPtr) return CONDITION_SEARCH_FUNC_PAGE_DOWN; else if (JOY_NEW(B_BUTTON)) { - structPtr->isPartyCondition = 0; - structPtr->callback = ReturnToConditionSearchList; + // Exiting back to main search menu + menu->saveResultsList = FALSE; + menu->callback = ReturnToConditionSearchList; return CONDITION_SEARCH_FUNC_EXIT; } else if (JOY_NEW(A_BUTTON)) { - structPtr->monList->currIndex = GetSelectedPokenavListIndex(); - structPtr->isPartyCondition = 1; - structPtr->callback = OpenConditionGraphFromSearchList; + // Entering graph menu + menu->monList->currIndex = GetSelectedPokenavListIndex(); + menu->saveResultsList = TRUE; + menu->callback = OpenConditionGraphFromSearchList; return CONDITION_SEARCH_FUNC_SELECT_MON; } else return CONDITION_SEARCH_FUNC_NONE; } -static u32 ReturnToConditionSearchList(struct PokenavSub7 *structPtr) +static u32 ReturnToConditionSearchList(struct Pokenav_SearchResults *menu) { return POKENAV_CONDITION_SEARCH_MENU; } -static u32 OpenConditionGraphFromSearchList(struct PokenavSub7 *structPtr) +static u32 OpenConditionGraphFromSearchList(struct Pokenav_SearchResults *menu) { - return POKENAV_CONDITION_GRAPH_FROM_SEARCH; + return POKENAV_CONDITION_GRAPH_SEARCH; } -static u32 sub_81CF0C0(void) +static u32 GetReturningFromGraph(void) { - struct PokenavSub7 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - return structPtr->returnFromGraph; + struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + return menu->returnFromGraph; } static struct PokenavMonList * GetSearchResultsMonDataList(void) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - return ptr->monList->monData; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + return menu->monList->monData; } static u16 GetSearchResultsMonListCount(void) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - return ptr->monList->listCount; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + return menu->monList->listCount; } -static s32 GetSearchResultsSelectedMonData(void) +// data below has been set by ConvertConditionsToListRanks +static s32 GetSearchResultsSelectedMonRank(void) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); s32 i = GetSelectedPokenavListIndex(); - return ptr->monList->monData[i].data; + return menu->monList->monData[i].data; } -static u16 sub_81CF10C(void) +static u16 GetSearchResultsCurrentListIndex(void) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - return ptr->monList->currIndex; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + return menu->monList->currIndex; } static u32 GetConditionSearchLoopedTask(s32 state) @@ -257,11 +260,11 @@ static u32 BuildPartyMonSearchResults(s32 state) { s32 i; struct PokenavMonList item; - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - ptr->monList->listCount = 0; - ptr->monList->currIndex = 0; - item.boxId = 14; + menu->monList->listCount = 0; + menu->monList->currIndex = 0; + item.boxId = TOTAL_BOXES_COUNT; for (i = 0; i < PARTY_SIZE; i++) { struct Pokemon * pokemon = &gPlayerParty[i]; @@ -270,8 +273,8 @@ static u32 BuildPartyMonSearchResults(s32 state) if (!GetMonData(pokemon, MON_DATA_SANITY_IS_EGG)) { item.monId = i; - item.data = GetMonData(pokemon, ptr->conditionDataId); - sub_81CF2C4(ptr, &item); + item.data = GetMonData(pokemon, menu->conditionDataId); + InsertMonListItem(menu, &item); } } @@ -280,17 +283,17 @@ static u32 BuildPartyMonSearchResults(s32 state) static u32 InitBoxMonSearchResults(s32 state) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - ptr->monId = 0; - ptr->boxId = 0; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + menu->monId = 0; + menu->boxId = 0; return LT_INC_AND_CONTINUE; } static u32 BuildBoxMonSearchResults(s32 state) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - s32 boxId = ptr->boxId; - s32 monId = ptr->monId; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + s32 boxId = menu->boxId; + s32 monId = menu->monId; s32 boxCount = 0; struct PokenavMonList item; @@ -302,15 +305,15 @@ static u32 BuildBoxMonSearchResults(s32 state) { item.boxId = boxId; item.monId = monId; - item.data = GetBoxMonDataAt(boxId, monId, ptr->conditionDataId); - sub_81CF2C4(ptr, &item); + item.data = GetBoxMonDataAt(boxId, monId, menu->conditionDataId); + InsertMonListItem(menu, &item); } boxCount++; monId++; - if (boxCount > 14) + if (boxCount > TOTAL_BOXES_COUNT) { - ptr->boxId = boxId; - ptr->monId = monId; + menu->boxId = boxId; + menu->monId = monId; return LT_CONTINUE; } } @@ -321,107 +324,111 @@ static u32 BuildBoxMonSearchResults(s32 state) return LT_INC_AND_CONTINUE; } -static u32 sub_81CF278(s32 state) +// Data below is initially set by BuildPartyMonSearchResults / BuildBoxMonSearchResults, and +// is the PokĂ©mon's condition value for the condition they are sorted by. +// The condition value in data is then overwritten with their ranking. +static u32 ConvertConditionsToListRanks(s32 state) { - struct PokenavSub7 * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - s32 r6 = ptr->monList->listCount; - s32 r4 = ptr->monList->monData[0].data; + struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); + s32 listCount = menu->monList->listCount; + s32 prevCondition = menu->monList->monData[0].data; s32 i; - ptr->monList->monData[0].data = 1; - for (i = 1; i < r6; i++) + menu->monList->monData[0].data = 1; + for (i = 1; i < listCount; i++) { - if (ptr->monList->monData[i].data == r4) + if (menu->monList->monData[i].data == prevCondition) { - ptr->monList->monData[i].data = ptr->monList->monData[i - 1].data; + // Same condition value as prev, share rank + menu->monList->monData[i].data = menu->monList->monData[i - 1].data; } else { - r4 = ptr->monList->monData[i].data; - ptr->monList->monData[i].data = i + 1; + prevCondition = menu->monList->monData[i].data; + menu->monList->monData[i].data = i + 1; } } - ptr->returnFromGraph = 1; + menu->returnFromGraph = TRUE; return LT_FINISH; } -static void sub_81CF2C4(struct PokenavSub7 *structPtr, struct PokenavMonList *item) +static void InsertMonListItem(struct Pokenav_SearchResults *menu, struct PokenavMonList *item) { u32 left = 0; - u32 right = structPtr->monList->listCount; + u32 right = menu->monList->listCount; u32 insertionIdx = left + (right - left) / 2; while (right != insertionIdx) { - if (item->data > structPtr->monList->monData[insertionIdx].data) + if (item->data > menu->monList->monData[insertionIdx].data) right = insertionIdx; else left = insertionIdx + 1; insertionIdx = left + (right - left) / 2; } - for (right = structPtr->monList->listCount; right > insertionIdx; right--) - structPtr->monList->monData[right] = structPtr->monList->monData[right - 1]; - structPtr->monList->monData[insertionIdx] = *item; - structPtr->monList->listCount++; + for (right = menu->monList->listCount; right > insertionIdx; right--) + menu->monList->monData[right] = menu->monList->monData[right - 1]; + menu->monList->monData[insertionIdx] = *item; + menu->monList->listCount++; } bool32 OpenConditionSearchResults(void) { - struct PokenavSub8 *searchList = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST, sizeof(struct PokenavSub8)); - if (searchList == NULL) + struct Pokenav_SearchResultsGfx *gfx = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX, sizeof(struct Pokenav_SearchResultsGfx)); + if (gfx == NULL) return FALSE; - searchList->ltid = CreateLoopedTask(LoopedTask_OpenConditionSearchResults, 1); - searchList->callback = GetSearchResultCurrentLoopedTaskActive; - searchList->fromGraph = FALSE; + gfx->loopedTaskId = CreateLoopedTask(LoopedTask_OpenConditionSearchResults, 1); + gfx->callback = GetSearchResultCurrentLoopedTaskActive; + gfx->fromGraph = FALSE; return TRUE; } bool32 OpenConditionSearchListFromGraph(void) { - struct PokenavSub8 *searchList = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST, sizeof(struct PokenavSub8)); - if (searchList == NULL) + struct Pokenav_SearchResultsGfx *gfx = AllocSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX, sizeof(struct Pokenav_SearchResultsGfx)); + if (gfx == NULL) return FALSE; - searchList->ltid = CreateLoopedTask(LoopedTask_OpenConditionSearchResults, 1); - searchList->callback = GetSearchResultCurrentLoopedTaskActive; - searchList->fromGraph = TRUE; + gfx->loopedTaskId = CreateLoopedTask(LoopedTask_OpenConditionSearchResults, 1); + gfx->callback = GetSearchResultCurrentLoopedTaskActive; + gfx->fromGraph = TRUE; return TRUE; } void CreateSearchResultsLoopedTask(s32 idx) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); - searchList->ltid = CreateLoopedTask(sSearchResultLoopTaskFuncs[idx], 1); - searchList->callback = GetSearchResultCurrentLoopedTaskActive; + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); + gfx->loopedTaskId = CreateLoopedTask(sSearchResultLoopTaskFuncs[idx], 1); + gfx->callback = GetSearchResultCurrentLoopedTaskActive; } bool32 IsSearchResultLoopedTaskActive(void) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); - return searchList->callback(); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); + return gfx->callback(); } bool32 GetSearchResultCurrentLoopedTaskActive(void) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); - return IsLoopedTaskActive(searchList->ltid); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); + return IsLoopedTaskActive(gfx->loopedTaskId); } void FreeSearchResultSubstruct2(void) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); sub_81C8234(); - RemoveWindow(searchList->winid); - FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + RemoveWindow(gfx->winid); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); } static u32 LoopedTask_OpenConditionSearchResults(s32 state) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); switch (state) { case 0: InitBgTemplates(sConditionSearchResultBgTemplates, ARRAY_COUNT(sConditionSearchResultBgTemplates)); DecompressAndCopyTileDataToVram(1, sConditionSearchResultTiles, 0, 0, 0); - SetBgTilemapBuffer(1, searchList->buff); + SetBgTilemapBuffer(1, gfx->buff); CopyToBgTilemapBuffer(1, sConditionSearchResultTilemap, 0, 0); CopyBgTilemapBufferToVram(1); CopyPaletteIntoBufferUnfaded(sConditionSearchResultFramePal, 0x10, 0x20); @@ -430,19 +437,19 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) case 1: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - if (!sub_81CF0C0()) + if (!GetReturningFromGraph()) return LT_PAUSE; return LT_INC_AND_PAUSE; case 2: if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - CopyPaletteIntoBufferUnfaded(gUnknown_08623570, 0x20, 32); + CopyPaletteIntoBufferUnfaded(sListBg_Pal, 0x20, 32); InitConditionSearchListMenuTemplate(); return LT_INC_AND_PAUSE; case 3: if (sub_81C8224()) return LT_PAUSE; - AddSearchResultListMenuWindow(searchList); + AddSearchResultListMenuWindow(gfx); PrintHelpBarText(HELPBAR_CONDITION_MON_LIST); return LT_INC_AND_PAUSE; case 4: @@ -453,7 +460,7 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) ShowBg(1); ShowBg(2); HideBg(3); - if (!searchList->fromGraph) + if (!gfx->fromGraph) { u8 searchGfxId = GetSelectedConditionSearch() + POKENAV_MENUITEM_CONDITION_SEARCH_COOL; LoadLeftHeaderGfxForIndex(searchGfxId); @@ -474,7 +481,7 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) static u32 LoopedTask_MoveSearchListCursorUp(s32 state) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); switch (state) { case 0: @@ -495,7 +502,7 @@ static u32 LoopedTask_MoveSearchListCursorUp(s32 state) return LT_PAUSE; // fallthrough case 2: - PrintSearchResultListMenuItems(searchList); + PrintSearchResultListMenuItems(gfx); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -507,7 +514,7 @@ static u32 LoopedTask_MoveSearchListCursorUp(s32 state) static u32 LoopedTask_MoveSearchListCursorDown(s32 state) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); switch (state) { case 0: @@ -528,7 +535,7 @@ static u32 LoopedTask_MoveSearchListCursorDown(s32 state) return LT_PAUSE; // fallthrough case 2: - PrintSearchResultListMenuItems(searchList); + PrintSearchResultListMenuItems(gfx); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -540,7 +547,7 @@ static u32 LoopedTask_MoveSearchListCursorDown(s32 state) static u32 LoopedTask_MoveSearchListPageUp(s32 state) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); switch (state) { case 0: @@ -561,7 +568,7 @@ static u32 LoopedTask_MoveSearchListPageUp(s32 state) return LT_PAUSE; // fallthrough case 2: - PrintSearchResultListMenuItems(searchList); + PrintSearchResultListMenuItems(gfx); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -573,7 +580,7 @@ static u32 LoopedTask_MoveSearchListPageUp(s32 state) static u32 LoopedTask_MoveSearchListPageDown(s32 state) { - struct PokenavSub8 *searchList = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULT_LIST); + struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); switch (state) { case 0: @@ -594,7 +601,7 @@ static u32 LoopedTask_MoveSearchListPageDown(s32 state) return LT_PAUSE; // fallthrough case 2: - PrintSearchResultListMenuItems(searchList); + PrintSearchResultListMenuItems(gfx); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -640,25 +647,25 @@ static u32 LoopedTask_SelectSearchResult(s32 state) return LT_FINISH; } -static void AddSearchResultListMenuWindow(struct PokenavSub8 *searchList) +static void AddSearchResultListMenuWindow(struct Pokenav_SearchResultsGfx *gfx) { - searchList->winid = AddWindow(&sSearchResultListMenuWindowTemplate); - PutWindowTilemap(searchList->winid); - CopyWindowToVram(searchList->winid, COPYWIN_MAP); - PrintSearchResultListMenuItems(searchList); + gfx->winid = AddWindow(&sSearchResultListMenuWindowTemplate); + PutWindowTilemap(gfx->winid); + CopyWindowToVram(gfx->winid, COPYWIN_MAP); + PrintSearchResultListMenuItems(gfx); } -static void PrintSearchResultListMenuItems(struct PokenavSub8 *searchList) +static void PrintSearchResultListMenuItems(struct Pokenav_SearchResultsGfx *gfx) { - s32 r7 = GetSearchResultsSelectedMonData(); + s32 rank = GetSearchResultsSelectedMonRank(); DynamicPlaceholderTextUtil_Reset(); DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, gStringVar1); *gStringVar1 = EOS; - DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar2, gText_NumberF700); - AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar2, 4, 1, TEXT_SKIP_DRAW, NULL); - ConvertIntToDecimalStringN(gStringVar1, r7, STR_CONV_MODE_RIGHT_ALIGN, 3); - AddTextPrinterParameterized(searchList->winid, FONT_NORMAL, gStringVar1, 34, 1, TEXT_SKIP_DRAW, NULL); - CopyWindowToVram(searchList->winid, COPYWIN_GFX); + DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar2, gText_NumberIndex); + AddTextPrinterParameterized(gfx->winid, FONT_NORMAL, gStringVar2, 4, 1, TEXT_SKIP_DRAW, NULL); + ConvertIntToDecimalStringN(gStringVar1, rank, STR_CONV_MODE_RIGHT_ALIGN, 3); + AddTextPrinterParameterized(gfx->winid, FONT_NORMAL, gStringVar1, 34, 1, TEXT_SKIP_DRAW, NULL); + CopyWindowToVram(gfx->winid, COPYWIN_GFX); } static void InitConditionSearchListMenuTemplate(void) @@ -668,7 +675,7 @@ static void InitConditionSearchListMenuTemplate(void) template.list.monList = GetSearchResultsMonDataList(); template.count = GetSearchResultsMonListCount(); template.unk8 = 4; - template.unk6 = sub_81CF10C(); + template.unk6 = GetSearchResultsCurrentListIndex(); template.item_X = 13; template.windowWidth = 17; template.listTop = 1; diff --git a/src/pokenav_menu_handler_1.c b/src/pokenav_menu_handler_1.c index 4792756c1826..a500e7c18d64 100644 --- a/src/pokenav_menu_handler_1.c +++ b/src/pokenav_menu_handler_1.c @@ -355,7 +355,7 @@ static u32 HandleConditionMenuInput(struct Pokenav1Struct *state) return POKENAV_MENU_FUNC_OPEN_CONDITION_SEARCH; case POKENAV_MENUITEM_CONDITION_PARTY: state->helpBarIndex = 0; - SetMenuIdAndCB(state, POKENAV_CONDITION_PARTY); + SetMenuIdAndCB(state, POKENAV_CONDITION_GRAPH_PARTY); return POKENAV_MENU_FUNC_OPEN_FEATURE; case POKENAV_MENUITEM_CONDITION_CANCEL: PlaySE(SE_SELECT); diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index 4724eab0e02b..a50f4510669c 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -359,7 +359,7 @@ bool32 OpenPokenavMenuNotInitial(void) static struct Pokenav2Struct * OpenPokenavMenu(void) { - struct Pokenav2Struct * state = AllocSubstruct(2, sizeof(struct Pokenav2Struct)); + struct Pokenav2Struct * state = AllocSubstruct(POKENAV_SUBSTRUCT_MENU_ICONS, sizeof(struct Pokenav2Struct)); if (state != NULL) { diff --git a/src/strings.c b/src/strings.c index 3785766ce931..eebf367d74af 100644 --- a/src/strings.c +++ b/src/strings.c @@ -990,7 +990,7 @@ const u8 gText_Unknown[] = _("UNKNOWN"); const u8 gText_Call[] = _("CALL"); const u8 gText_Check[] = _("CHECK"); const u8 gText_Cancel6[] = _("CANCEL"); -const u8 gText_NumberF700[] = _("No. {DYNAMIC 0}"); +const u8 gText_NumberIndex[] = _("No. {DYNAMIC 0}"); const u8 gText_RibbonsF700[] = _("RIBBONS {DYNAMIC 0}"); const u8 gText_PokemonMaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_RED WHITE GREEN}♂{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused const u8 gText_PokemonFemaleLv2[] = _("{DYNAMIC 0}{COLOR_HIGHLIGHT_SHADOW LIGHT_GREEN WHITE BLUE}♀{COLOR_HIGHLIGHT_SHADOW DARK_GRAY WHITE LIGHT_GRAY}/{LV}{DYNAMIC 1}{DYNAMIC 2}"); // Unused diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 8cf8480ccd05..ef5fdfaf5e38 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -1577,9 +1577,9 @@ static void SpriteCB_MonPic(struct Sprite *sprite) static void SpriteCB_SelectionIconPokeball(struct Sprite *sprite) { if (sprite->data[0] == sMenu->info.curSelection) - StartSpriteAnim(sprite, 0); + StartSpriteAnim(sprite, CONDITION_ICON_SELECTED); else - StartSpriteAnim(sprite, 1); + StartSpriteAnim(sprite, CONDITION_ICON_UNSELECTED); } static void SpriteCB_SelectionIconCancel(struct Sprite *sprite) From 35aeff1b6df8efc4e088bd20c71e4243b95c6599 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 11:07:52 -0500 Subject: [PATCH 407/762] Rename pokenav conditions files --- include/pokenav.h | 6 +++--- ld_script.txt | 10 +++++----- src/{pokenav_conditions_1.c => pokenav_conditions.c} | 0 ...pokenav_conditions_2.c => pokenav_conditions_gfx.c} | 2 +- ...ditions_3.c => pokenav_conditions_search_results.c} | 0 sym_bss.txt | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) rename src/{pokenav_conditions_1.c => pokenav_conditions.c} (100%) rename src/{pokenav_conditions_2.c => pokenav_conditions_gfx.c} (99%) rename src/{pokenav_conditions_3.c => pokenav_conditions_search_results.c} (100%) diff --git a/include/pokenav.h b/include/pokenav.h index 847d4b7e7613..9713546335c2 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -436,7 +436,7 @@ bool32 IsRegionMapLoopedTaskActive(void); void FreeRegionMapSubstruct1(void); void FreeRegionMapSubstruct2(void); -// pokenav_conditions_1.c +// pokenav_conditions.c u32 PokenavCallback_Init_ConditionGraph_Party(void); u32 PokenavCallback_Init_ConditionGraph_Search(void); u32 GetConditionGraphMenuCallback(void); @@ -455,14 +455,14 @@ u16 GetConditionMonDataBuffer(void); void *GetConditionMonPicGfx(u8 id); void *GetConditionMonPal(u8 id); -// pokenav_conditions_2.c +// pokenav_conditions_gfx.c bool32 OpenConditionGraphMenu(void); void CreateConditionGraphMenuLoopedTask(s32); u32 IsConditionGraphMenuLoopedTaskActive(void); void FreeConditionGraphMenuSubstruct2(void); u8 GetMonMarkingsData(void); -// pokenav_conditions_3.c +// pokenav_conditions_search_results.c u32 PokenavCallback_Init_ConditionSearch(void); u32 PokenavCallback_Init_ReturnToMonSearchList(void); u32 GetConditionSearchResultsCallback(void); diff --git a/ld_script.txt b/ld_script.txt index ca0480e0fd05..c4283265d823 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -316,9 +316,9 @@ SECTIONS { src/pokenav_match_call_1.o(.text); src/pokenav_match_call_2.o(.text); src/pokenav_region_map.o(.text); - src/pokenav_conditions_1.o(.text); - src/pokenav_conditions_2.o(.text); - src/pokenav_conditions_3.o(.text); + src/pokenav_conditions.o(.text); + src/pokenav_conditions_gfx.o(.text); + src/pokenav_conditions_search_results.o(.text); src/pokenav_ribbons_list.o(.text); src/pokenav_ribbons_summary.o(.text); src/pokenav_match_call_data.o(.text); @@ -671,8 +671,8 @@ SECTIONS { src/pokenav_match_call_1.o(.rodata); src/pokenav_match_call_2.o(.rodata); src/pokenav_region_map.o(.rodata); - src/pokenav_conditions_2.o(.rodata); - src/pokenav_conditions_3.o(.rodata); + src/pokenav_conditions_gfx.o(.rodata); + src/pokenav_conditions_search_results.o(.rodata); src/pokenav_ribbons_list.o(.rodata); src/pokenav_ribbons_summary.o(.rodata); src/pokenav_match_call_data.o(.rodata); diff --git a/src/pokenav_conditions_1.c b/src/pokenav_conditions.c similarity index 100% rename from src/pokenav_conditions_1.c rename to src/pokenav_conditions.c diff --git a/src/pokenav_conditions_2.c b/src/pokenav_conditions_gfx.c similarity index 99% rename from src/pokenav_conditions_2.c rename to src/pokenav_conditions_gfx.c index cecba800ca4c..a1593983d273 100644 --- a/src/pokenav_conditions_2.c +++ b/src/pokenav_conditions_gfx.c @@ -139,7 +139,7 @@ struct Pokenav_ConditionMenuGfx u8 filler2[0xFA3]; }; -extern s8 GetConditionGraphMenuCurrentLoadIndex(void); // This function's declaration here is s8 vs. u8 in pokenav_conditions_1.c +extern s8 GetConditionGraphMenuCurrentLoadIndex(void); // This function's declaration here is s8 vs. u8 in pokenav_conditions.c static u32 LoopedTask_OpenConditionGraphMenu(s32); static u32 GetConditionGraphMenuLoopedTaskActive(void); diff --git a/src/pokenav_conditions_3.c b/src/pokenav_conditions_search_results.c similarity index 100% rename from src/pokenav_conditions_3.c rename to src/pokenav_conditions_search_results.c diff --git a/sym_bss.txt b/sym_bss.txt index 8724f02d7f41..75da960bf96b 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -50,7 +50,7 @@ .include "src/multiboot.o" .include "src/mirage_tower.o" .include "src/berry_fix_program.o" - .include "src/pokenav_conditions_2.o" + .include "src/pokenav_conditions_gfx.o" .include "src/pokenav_ribbons_summary.o" .include "src/ereader_helpers.o" .include "src/faraway_island.o" From 004d1cab3fd7eb7b67fd32b457848604836b3c1a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 11:13:49 -0500 Subject: [PATCH 408/762] Clean up pokenav conditions doc --- include/pokenav.h | 8 -------- src/menu_specialized.c | 2 +- src/pokenav_conditions.c | 44 +++++++++++++++++++++------------------- 3 files changed, 24 insertions(+), 30 deletions(-) diff --git a/include/pokenav.h b/include/pokenav.h index 9713546335c2..a0e2934535a6 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -255,14 +255,6 @@ enum CONDITION_FUNC_CLOSE_MARKINGS, }; -enum -{ - CONDITION_MON_0, - CONDITION_MON_1, - CONDITION_MON_2, - NUM_CONDITION_MONS -}; - enum { CONDITION_LOAD_MON_INFO, diff --git a/src/menu_specialized.c b/src/menu_specialized.c index d1cc3ff58fc6..20d67ca7f98b 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -591,7 +591,7 @@ static void ConditionGraph_CalcRightHalf(struct ConditionGraph *graph) // Calculate Cute -> Tough line (includes left scanline because this crosses the halfway point) i = (graph->curPositions[GRAPH_CUTE].y <= graph->curPositions[GRAPH_SMART].y); ConditionGraph_CalcLine(graph, graph->scanlineRight[0], &graph->curPositions[GRAPH_CUTE], &graph->curPositions[GRAPH_SMART], i, graph->scanlineLeft[0]); - + // Clear down to new top for (i = CONDITION_GRAPH_TOP_Y; i < y; i++) { diff --git a/src/pokenav_conditions.c b/src/pokenav_conditions.c index fc188db71512..6007acc2bbb4 100644 --- a/src/pokenav_conditions.c +++ b/src/pokenav_conditions.c @@ -13,20 +13,22 @@ #include "text.h" #include "constants/songs.h" +#define CONDITION_MONS_LOADED 3 + struct Pokenav_ConditionMenu { - u32 monPal[NUM_CONDITION_MONS][0x20]; + u32 monPal[CONDITION_MONS_LOADED][0x20]; u8 fill[0x180]; - u32 monPicGfx[NUM_CONDITION_MONS][MON_PIC_SIZE]; + u32 monPicGfx[CONDITION_MONS_LOADED][MON_PIC_SIZE]; bool8 inSearchMode; s16 toLoadListIndex; u32 (*callback)(struct Pokenav_ConditionMenu *); u8 fill2[0x18]; - u8 locationText[NUM_CONDITION_MONS][24]; - u8 nameText[NUM_CONDITION_MONS][64]; + u8 locationText[CONDITION_MONS_LOADED][24]; + u8 nameText[CONDITION_MONS_LOADED][64]; struct ConditionGraph graph; - u8 numSparkles[NUM_CONDITION_MONS]; - u8 monMarks[NUM_CONDITION_MONS]; + u8 numSparkles[CONDITION_MONS_LOADED]; + u8 monMarks[CONDITION_MONS_LOADED]; s8 loadId; s8 nextLoadIdDown; s8 nextLoadIdUp; @@ -239,28 +241,28 @@ bool32 LoadConditionGraphMenuGfx(void) switch (menu->state) { case 0: - CopyMonNameGenderLocation(monListPtr->currIndex, CONDITION_MON_0); + CopyMonNameGenderLocation(monListPtr->currIndex, 0); break; case 1: - GetMonConditionGraphData(monListPtr->currIndex, CONDITION_MON_0); + GetMonConditionGraphData(monListPtr->currIndex, 0); break; case 2: - ConditionGraphDrawMonPic(monListPtr->currIndex, CONDITION_MON_0); + ConditionGraphDrawMonPic(monListPtr->currIndex, 0); break; case 3: if (monListPtr->listCount == 1) { - menu->loadId = CONDITION_MON_0; - menu->nextLoadIdDown = CONDITION_MON_0; - menu->nextLoadIdUp = CONDITION_MON_0; + menu->loadId = 0; + menu->nextLoadIdDown = 0; + menu->nextLoadIdUp = 0; menu->state = 0; return TRUE; } else { - menu->loadId = CONDITION_MON_0; - menu->nextLoadIdDown = CONDITION_MON_1; - menu->nextLoadIdUp = CONDITION_MON_2; + menu->loadId = 0; + menu->nextLoadIdDown = 1; + menu->nextLoadIdUp = 2; } break; // These were probably ternaries just like cases 7-9, but couldn't match it any other way. @@ -268,28 +270,28 @@ bool32 LoadConditionGraphMenuGfx(void) var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - CopyMonNameGenderLocation(var, CONDITION_MON_1); + CopyMonNameGenderLocation(var, 1); break; case 5: var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - GetMonConditionGraphData(var, CONDITION_MON_1); + GetMonConditionGraphData(var, 1); break; case 6: var = monListPtr->currIndex + 1; if (var >= monListPtr->listCount) var = 0; - ConditionGraphDrawMonPic(var, CONDITION_MON_1); + ConditionGraphDrawMonPic(var, 1); break; case 7: - CopyMonNameGenderLocation((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); + CopyMonNameGenderLocation((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); break; case 8: - GetMonConditionGraphData((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); + GetMonConditionGraphData((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); break; case 9: - ConditionGraphDrawMonPic((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, CONDITION_MON_2); + ConditionGraphDrawMonPic((monListPtr->currIndex - 1 >= 0) ? monListPtr->currIndex - 1 : monListPtr->listCount - 1, 2); menu->state = 0; return TRUE; } From baeacbe2f10ef69468d3bdb223d8ca74c963e9d6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 12:40:36 -0500 Subject: [PATCH 409/762] Clean up pokenav general menus, organize pokenav graphics --- graphics/pokenav/icon2_unused.png | Bin 194 -> 0 bytes .../{arrows_matchcall.png => list_arrows.png} | Bin graphics/pokenav/{ => match_call}/86226E0.pal | 0 graphics/pokenav/{ => match_call}/8622700.pal | 0 .../{arrow2.png => match_call/arrow.png} | Bin .../{icon.png => match_call/nav_icon.png} | Bin .../{8622720.pal => match_call/pokeball.pal} | 0 .../pokeball.png} | Bin .../{ui_matchcall.bin => match_call/ui.bin} | Bin .../{ui_matchcall.png => match_call/ui.png} | Bin .../window.png} | Bin graphics/pokenav/{icon2.png => nav_icon.png} | Bin graphics/pokenav/pokeball_matchcall.pal | 35 - .../pokenav/{ => region_map}/brendan_icon.png | Bin graphics/pokenav/{ => region_map}/cursor.pal | 0 .../pokenav/{ => region_map}/cursor_large.png | Bin .../pokenav/{ => region_map}/cursor_small.png | Bin .../{ => region_map}/fly_target_icons.png | Bin .../{map_frame.bin => region_map/frame.bin} | Bin .../{map_frame.png => region_map/frame.png} | Bin .../info_window.pal} | 0 .../pokenav/{ => region_map}/may_icon.png | Bin graphics_file_rules.mk | 2 +- include/pokenav.h | 6 +- src/match_call.c | 8 +- src/pokenav.c | 1 - src/pokenav_main_menu.c | 273 ++++---- src/pokenav_match_call_2.c | 20 +- src/pokenav_match_call_ui.c | 4 +- src/pokenav_menu_handler_1.c | 302 ++++----- src/pokenav_menu_handler_2.c | 638 ++++++++++-------- src/pokenav_region_map.c | 4 +- src/region_map.c | 33 +- 33 files changed, 689 insertions(+), 637 deletions(-) delete mode 100644 graphics/pokenav/icon2_unused.png rename graphics/pokenav/{arrows_matchcall.png => list_arrows.png} (100%) rename graphics/pokenav/{ => match_call}/86226E0.pal (100%) rename graphics/pokenav/{ => match_call}/8622700.pal (100%) rename graphics/pokenav/{arrow2.png => match_call/arrow.png} (100%) rename graphics/pokenav/{icon.png => match_call/nav_icon.png} (100%) rename graphics/pokenav/{8622720.pal => match_call/pokeball.pal} (100%) rename graphics/pokenav/{pokeball_matchcall.png => match_call/pokeball.png} (100%) rename graphics/pokenav/{ui_matchcall.bin => match_call/ui.bin} (100%) rename graphics/pokenav/{ui_matchcall.png => match_call/ui.png} (100%) rename graphics/pokenav/{match_call_window.png => match_call/window.png} (100%) rename graphics/pokenav/{icon2.png => nav_icon.png} (100%) delete mode 100644 graphics/pokenav/pokeball_matchcall.pal rename graphics/pokenav/{ => region_map}/brendan_icon.png (100%) rename graphics/pokenav/{ => region_map}/cursor.pal (100%) rename graphics/pokenav/{ => region_map}/cursor_large.png (100%) rename graphics/pokenav/{ => region_map}/cursor_small.png (100%) rename graphics/pokenav/{ => region_map}/fly_target_icons.png (100%) rename graphics/pokenav/{map_frame.bin => region_map/frame.bin} (100%) rename graphics/pokenav/{map_frame.png => region_map/frame.png} (100%) rename graphics/pokenav/{region_map_info_window.pal => region_map/info_window.pal} (100%) rename graphics/pokenav/{ => region_map}/may_icon.png (100%) diff --git a/graphics/pokenav/icon2_unused.png b/graphics/pokenav/icon2_unused.png deleted file mode 100644 index c32a9b9be9f17feb7585d641a220838974e2e0dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 194 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Et!VDx^^%AmxltF+`i0l9V|JNjGu9-4r%bGR+ zj~0KcPFk|$Y*NxUpg6~t|3Fo6aQ5ugHEZ@NEI8W&6!P_SaSV}|y0zbsiNTPCWpBgx z)t^l57x*5QeK%``v1qUkx0cB4%GQO>LKCWImHWsvcMIqyZi&`eEVO8UK?~o*{=OZ` i$8LVSQBga^`n7%Z*Gfgh6Q@3c?DBN=b6Mw<&;$ULGfE%; diff --git a/graphics/pokenav/arrows_matchcall.png b/graphics/pokenav/list_arrows.png similarity index 100% rename from graphics/pokenav/arrows_matchcall.png rename to graphics/pokenav/list_arrows.png diff --git a/graphics/pokenav/86226E0.pal b/graphics/pokenav/match_call/86226E0.pal similarity index 100% rename from graphics/pokenav/86226E0.pal rename to graphics/pokenav/match_call/86226E0.pal diff --git a/graphics/pokenav/8622700.pal b/graphics/pokenav/match_call/8622700.pal similarity index 100% rename from graphics/pokenav/8622700.pal rename to graphics/pokenav/match_call/8622700.pal diff --git a/graphics/pokenav/arrow2.png b/graphics/pokenav/match_call/arrow.png similarity index 100% rename from graphics/pokenav/arrow2.png rename to graphics/pokenav/match_call/arrow.png diff --git a/graphics/pokenav/icon.png b/graphics/pokenav/match_call/nav_icon.png similarity index 100% rename from graphics/pokenav/icon.png rename to graphics/pokenav/match_call/nav_icon.png diff --git a/graphics/pokenav/8622720.pal b/graphics/pokenav/match_call/pokeball.pal similarity index 100% rename from graphics/pokenav/8622720.pal rename to graphics/pokenav/match_call/pokeball.pal diff --git a/graphics/pokenav/pokeball_matchcall.png b/graphics/pokenav/match_call/pokeball.png similarity index 100% rename from graphics/pokenav/pokeball_matchcall.png rename to graphics/pokenav/match_call/pokeball.png diff --git a/graphics/pokenav/ui_matchcall.bin b/graphics/pokenav/match_call/ui.bin similarity index 100% rename from graphics/pokenav/ui_matchcall.bin rename to graphics/pokenav/match_call/ui.bin diff --git a/graphics/pokenav/ui_matchcall.png b/graphics/pokenav/match_call/ui.png similarity index 100% rename from graphics/pokenav/ui_matchcall.png rename to graphics/pokenav/match_call/ui.png diff --git a/graphics/pokenav/match_call_window.png b/graphics/pokenav/match_call/window.png similarity index 100% rename from graphics/pokenav/match_call_window.png rename to graphics/pokenav/match_call/window.png diff --git a/graphics/pokenav/icon2.png b/graphics/pokenav/nav_icon.png similarity index 100% rename from graphics/pokenav/icon2.png rename to graphics/pokenav/nav_icon.png diff --git a/graphics/pokenav/pokeball_matchcall.pal b/graphics/pokenav/pokeball_matchcall.pal deleted file mode 100644 index 25baec5176af..000000000000 --- a/graphics/pokenav/pokeball_matchcall.pal +++ /dev/null @@ -1,35 +0,0 @@ -JASC-PAL -0100 -32 -0 197 0 -246 197 123 -255 255 255 -106 115 123 -0 0 0 -189 106 65 -49 65 74 -255 222 156 -180 131 82 -189 139 106 -197 197 197 -255 255 255 -0 0 0 -0 0 0 -0 0 0 -255 74 16 -0 197 0 -246 197 123 -255 255 255 -106 115 123 -0 0 0 -189 106 65 -49 65 74 -255 222 156 -180 131 82 -189 139 106 -197 197 197 -197 197 197 -0 0 0 -0 0 0 -0 0 0 -189 106 65 diff --git a/graphics/pokenav/brendan_icon.png b/graphics/pokenav/region_map/brendan_icon.png similarity index 100% rename from graphics/pokenav/brendan_icon.png rename to graphics/pokenav/region_map/brendan_icon.png diff --git a/graphics/pokenav/cursor.pal b/graphics/pokenav/region_map/cursor.pal similarity index 100% rename from graphics/pokenav/cursor.pal rename to graphics/pokenav/region_map/cursor.pal diff --git a/graphics/pokenav/cursor_large.png b/graphics/pokenav/region_map/cursor_large.png similarity index 100% rename from graphics/pokenav/cursor_large.png rename to graphics/pokenav/region_map/cursor_large.png diff --git a/graphics/pokenav/cursor_small.png b/graphics/pokenav/region_map/cursor_small.png similarity index 100% rename from graphics/pokenav/cursor_small.png rename to graphics/pokenav/region_map/cursor_small.png diff --git a/graphics/pokenav/fly_target_icons.png b/graphics/pokenav/region_map/fly_target_icons.png similarity index 100% rename from graphics/pokenav/fly_target_icons.png rename to graphics/pokenav/region_map/fly_target_icons.png diff --git a/graphics/pokenav/map_frame.bin b/graphics/pokenav/region_map/frame.bin similarity index 100% rename from graphics/pokenav/map_frame.bin rename to graphics/pokenav/region_map/frame.bin diff --git a/graphics/pokenav/map_frame.png b/graphics/pokenav/region_map/frame.png similarity index 100% rename from graphics/pokenav/map_frame.png rename to graphics/pokenav/region_map/frame.png diff --git a/graphics/pokenav/region_map_info_window.pal b/graphics/pokenav/region_map/info_window.pal similarity index 100% rename from graphics/pokenav/region_map_info_window.pal rename to graphics/pokenav/region_map/info_window.pal diff --git a/graphics/pokenav/may_icon.png b/graphics/pokenav/region_map/may_icon.png similarity index 100% rename from graphics/pokenav/may_icon.png rename to graphics/pokenav/region_map/may_icon.png diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index bc503eec259f..eb36d4255f05 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -697,7 +697,7 @@ $(PKNAVGFXDIR)/header.4bpp: %.4bpp: %.png $(PKNAVGFXDIR)/device_outline.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 53 -$(PKNAVGFXDIR)/ui_matchcall.4bpp: %.4bpp: %.png +$(PKNAVGFXDIR)/match_call/ui.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 13 $(INTERFACEGFXDIR)/region_map.8bpp: %.8bpp: %.png diff --git a/include/pokenav.h b/include/pokenav.h index a0e2934535a6..6dc88cab7971 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -69,7 +69,7 @@ enum { POKENAV_SUBSTRUCT_MAIN_MENU, POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, - POKENAV_SUBSTRUCT_MENU_ICONS, + POKENAV_SUBSTRUCT_MENU_GFX, POKENAV_SUBSTRUCT_REGION_MAP_STATE, POKENAV_SUBSTRUCT_REGION_MAP_ZOOM, POKENAV_SUBSTRUCT_MATCH_CALL_MAIN, @@ -82,7 +82,7 @@ enum POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU_GFX, POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST, POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU, - POKENAV_SUBSTRUCT_15, //unused + POKENAV_SUBSTRUCT_UNUSED, POKENAV_SUBSTRUCT_REGION_MAP, POKENAV_SUBSTRUCT_MATCH_CALL_LIST, POKENAV_SUBSTRUCT_MON_LIST, @@ -358,7 +358,7 @@ 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 sub_81C7B40(void); +void FadeToBlackExceptPrimary(void); struct Sprite *PauseSpinningPokenavSprite(void); void ResumeSpinningPokenavSprite(void); void UpdateRegionMapRightHeaderTiles(u32 arg0); diff --git a/src/match_call.c b/src/match_call.c index 9e4659ee6057..0595ad3e33da 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1187,10 +1187,10 @@ static void StartMatchCall(void) CreateTask(ExecuteMatchCall, 1); } -static const u16 sMatchCallWindow_Pal[] = INCBIN_U16("graphics/pokenav/match_call_window.gbapal"); -static const u8 sMatchCallWindow_Gfx[] = INCBIN_U8("graphics/pokenav/match_call_window.4bpp"); -static const u16 sPokenavIcon_Pal[] = INCBIN_U16("graphics/pokenav/icon.gbapal"); -static const u32 sPokenavIcon_Gfx[] = INCBIN_U32("graphics/pokenav/icon.4bpp.lz"); +static const u16 sMatchCallWindow_Pal[] = INCBIN_U16("graphics/pokenav/match_call/window.gbapal"); +static const u8 sMatchCallWindow_Gfx[] = INCBIN_U8("graphics/pokenav/match_call/window.4bpp"); +static const u16 sPokenavIcon_Pal[] = INCBIN_U16("graphics/pokenav/match_call/nav_icon.gbapal"); +static const u32 sPokenavIcon_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/nav_icon.4bpp.lz"); static const u8 sText_PokenavCallEllipsis[] = _("………………\p"); diff --git a/src/pokenav.c b/src/pokenav.c index b09fc9da096e..f9a6614a8957 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -49,7 +49,6 @@ static void Task_RunLoopedTask(u8 taskId); static void Task_Pokenav(u8 taskId); static void CB2_InitPokenavForTutorial(void); -// TODO: Use MENU ids const struct PokenavCallbacks PokenavMenuCallbacks[15] = { [POKENAV_MAIN_MENU - POKENAV_MENU_IDS_START] = diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 714c8221a310..77faecaa3980 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -13,7 +13,7 @@ #include "menu.h" #include "dma3.h" -struct PokenavMainMenuResources +struct Pokenav_MainMenu { void (*loopTask)(u32); u32 (*isLoopTaskActiveFunc)(void); @@ -24,7 +24,7 @@ struct PokenavMainMenuResources struct Sprite *spinningPokenav; struct Sprite *leftHeaderSprites[2]; struct Sprite *submenuLeftHeaderSprites[2]; - u8 tilemapBuffer[0x800]; + u8 tilemapBuffer[BG_SCREEN_SIZE]; }; // This struct uses a 32bit tag, and doesn't have a size field. @@ -36,26 +36,26 @@ struct CompressedSpriteSheetNoSize }; static void CleanupPokenavMainMenuResources(void); -static void LoadLeftHeaderGfxForSubMenu(u32 arg0); -static void LoadLeftHeaderGfxForMenu(u32 index); -static void HideLeftHeaderSubmenuSprites(bool32 isOnRightSide); -static void HideLeftHeaderSprites(bool32 isOnRightSide); -static void ShowLeftHeaderSprites(u32 startY, bool32 isOnRightSide); -static void ShowLeftHeaderSubmenuSprites(u32 startY, bool32 isOnRightSide); -static void MoveLeftHeader(struct Sprite *sprite, s32 startX, s32 endX, s32 duration); -static void SpriteCB_MoveLeftHeader(struct Sprite *sprite); +static void LoadLeftHeaderGfxForSubMenu(u32); +static void LoadLeftHeaderGfxForMenu(u32); +static void HideLeftHeaderSubmenuSprites(bool32); +static void HideLeftHeaderSprites(bool32); +static void ShowLeftHeaderSprites(u32, bool32); +static void ShowLeftHeaderSubmenuSprites(u32, bool32); +static void MoveLeftHeader(struct Sprite *, s32, s32, s32); +static void SpriteCB_MoveLeftHeader(struct Sprite *); static void InitPokenavMainMenuResources(void); -static void InitHoennMapHeaderSprites(void); +static void CreateLeftHeaderSprites(void); static void InitHelpBar(void); -static u32 LoopedTask_SlideMenuHeaderUp(s32 a0); -static u32 LoopedTask_SlideMenuHeaderDown(s32 a0); -static void DrawHelpBar(u32 windowId); -static void SpriteCB_SpinningPokenav(struct Sprite* sprite); -static u32 LoopedTask_InitPokenavMenu(s32 a0); +static u32 LoopedTask_SlideMenuHeaderUp(s32); +static u32 LoopedTask_SlideMenuHeaderDown(s32); +static void DrawHelpBar(u32); +static void SpriteCB_SpinningPokenav(struct Sprite*); +static u32 LoopedTask_InitPokenavMenu(s32); -const u16 gSpinningPokenavPaletteData[] = INCBIN_U16("graphics/pokenav/icon2.gbapal"); -const u32 gSpinningPokenavGfx[] = INCBIN_U32("graphics/pokenav/icon2.4bpp.lz"); -const u32 gUnused_SpinningPokenavGfx2[] = INCBIN_U32("graphics/pokenav/icon2_unused.4bpp.lz"); +static const u16 sSpinningPokenav_Pal[] = INCBIN_U16("graphics/pokenav/nav_icon.gbapal"); +static const u32 sSpinningPokenav_Gfx[] = INCBIN_U32("graphics/pokenav/nav_icon.4bpp.lz"); +static const u32 sBlueLightCopy[] = INCBIN_U32("graphics/pokenav/blue_light.4bpp.lz"); // Unused copy of sMatchCallBlueLightTiles const struct BgTemplate gPokenavMainMenuBgTemplates[] = { @@ -108,7 +108,7 @@ static const u8 sHelpBarTextColors[3] = static const struct CompressedSpriteSheet gSpinningPokenavSpriteSheet[] = { { - .data = gSpinningPokenavGfx, + .data = sSpinningPokenav_Gfx, .size = 0x1000, .tag = 0, } @@ -117,20 +117,20 @@ static const struct CompressedSpriteSheet gSpinningPokenavSpriteSheet[] = static const struct SpritePalette gSpinningNavgearPalettes[] = { { - .data = gSpinningPokenavPaletteData, + .data = sSpinningPokenav_Pal, .tag = 0, }, {} }; -static const struct CompressedSpriteSheet sPokenavHoennMapLeftHeaderSpriteSheet = +static const struct CompressedSpriteSheet sMenuLeftHeaderSpriteSheet = { - .data = gPokenavLeftHeaderHoennMap_Gfx, + .data = gPokenavLeftHeaderHoennMap_Gfx, // Hoenn map is the first of the headers listed .size = 0xC00, .tag = 2 }; -static const struct CompressedSpriteSheet sPokenavMenuLeftHeaderSpriteSheets[] = +static const struct CompressedSpriteSheet sMenuLeftHeaderSpriteSheets[] = { [POKENAV_GFX_MAIN_MENU] = { .data = gPokenavLeftHeaderMainMenu_Gfx, @@ -239,7 +239,7 @@ static const struct SpriteTemplate sSpinningPokenavSpriteTemplate = .callback = SpriteCB_SpinningPokenav }; -static const struct OamData sPokenavLeftHeaderHoennMapSpriteOam = +static const struct OamData sOamData_LeftHeader = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -253,7 +253,7 @@ static const struct OamData sPokenavLeftHeaderHoennMapSpriteOam = .paletteNum = 0, }; -static const struct OamData sUnknown_0861FB24 = +static const struct OamData sOamData_SubmenuLeftHeader = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -268,22 +268,22 @@ static const struct OamData sUnknown_0861FB24 = .paletteNum = 0, }; -static const struct SpriteTemplate sPokenavLeftHeaderHoennMapSpriteTemplate = +static const struct SpriteTemplate sLeftHeaderSpriteTemplate = { .tileTag = 2, .paletteTag = 1, - .oam = &sPokenavLeftHeaderHoennMapSpriteOam, + .oam = &sOamData_LeftHeader, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const struct SpriteTemplate sUnknown_0861FB44 = +static const struct SpriteTemplate sSubmenuLeftHeaderSpriteTemplate = { .tileTag = 2, .paletteTag = 2, - .oam = &sUnknown_0861FB24, + .oam = &sOamData_SubmenuLeftHeader, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, @@ -292,22 +292,22 @@ static const struct SpriteTemplate sUnknown_0861FB44 = bool32 InitPokenavMainMenu(void) { - struct PokenavMainMenuResources *structPtr; + struct Pokenav_MainMenu *menu; - structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU, sizeof(struct PokenavMainMenuResources)); - if (structPtr == NULL) + menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU, sizeof(struct Pokenav_MainMenu)); + if (menu == NULL) return FALSE; ResetSpriteData(); FreeAllSpritePalettes(); - structPtr->currentTaskId = CreateLoopedTask(LoopedTask_InitPokenavMenu, 1); + menu->currentTaskId = CreateLoopedTask(LoopedTask_InitPokenavMenu, 1); return TRUE; } u32 PokenavMainMenuLoopedTaskIsActive(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - return IsLoopedTaskActive(structPtr->currentTaskId); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + return IsLoopedTaskActive(menu->currentTaskId); } void ShutdownPokenav(void) @@ -330,11 +330,11 @@ bool32 WaitForPokenavShutdownFade(void) return TRUE; } -static u32 LoopedTask_InitPokenavMenu(s32 a0) +static u32 LoopedTask_InitPokenavMenu(s32 state) { - struct PokenavMainMenuResources *structPtr; + struct Pokenav_MainMenu *menu; - switch (a0) + switch (state) { case 0: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); @@ -345,9 +345,9 @@ static u32 LoopedTask_InitPokenavMenu(s32 a0) ResetTempTileDataBuffers(); return LT_INC_AND_CONTINUE; case 1: - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); DecompressAndCopyTileDataToVram(0, &gPokenavHeader_Gfx, 0, 0, 0); - SetBgTilemapBuffer(0, structPtr->tilemapBuffer); + SetBgTilemapBuffer(0, menu->tilemapBuffer); CopyToBgTilemapBuffer(0, &gPokenavHeader_Tilemap, 0, 0); CopyPaletteIntoBufferUnfaded(gPokenavHeader_Pal, 0, 0x20); CopyBgTilemapBufferToVram(0); @@ -363,7 +363,7 @@ static u32 LoopedTask_InitPokenavMenu(s32 a0) return LT_PAUSE; InitPokenavMainMenuResources(); - InitHoennMapHeaderSprites(); + CreateLeftHeaderSprites(); ShowBg(0); return LT_FINISH; default: @@ -373,46 +373,46 @@ static u32 LoopedTask_InitPokenavMenu(s32 a0) void SetActiveMenuLoopTasks(void *createLoopTask, void *isLoopTaskActive) // Fix types later. { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->loopTask = createLoopTask; - structPtr->isLoopTaskActiveFunc = isLoopTaskActive; - structPtr->unused = 0; + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + menu->loopTask = createLoopTask; + menu->isLoopTaskActiveFunc = isLoopTaskActive; + menu->unused = 0; } -void RunMainMenuLoopedTask(u32 a0) +void RunMainMenuLoopedTask(u32 state) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->unused = 0; - structPtr->loopTask(a0); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + menu->unused = 0; + menu->loopTask(state); } u32 IsActiveMenuLoopTaskActive(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - return structPtr->isLoopTaskActiveFunc(); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + return menu->isLoopTaskActiveFunc(); } void SlideMenuHeaderUp(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->currentTaskId = CreateLoopedTask(LoopedTask_SlideMenuHeaderUp, 4); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + menu->currentTaskId = CreateLoopedTask(LoopedTask_SlideMenuHeaderUp, 4); } void SlideMenuHeaderDown(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->currentTaskId = CreateLoopedTask(LoopedTask_SlideMenuHeaderDown, 4); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + menu->currentTaskId = CreateLoopedTask(LoopedTask_SlideMenuHeaderDown, 4); } bool32 MainMenuLoopedTaskIsBusy(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - return IsLoopedTaskActive(structPtr->currentTaskId); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + return IsLoopedTaskActive(menu->currentTaskId); } -static u32 LoopedTask_SlideMenuHeaderUp(s32 a0) +static u32 LoopedTask_SlideMenuHeaderUp(s32 state) { - switch (a0) + switch (state) { default: return LT_FINISH; @@ -431,7 +431,7 @@ static u32 LoopedTask_SlideMenuHeaderUp(s32 a0) } } -static u32 LoopedTask_SlideMenuHeaderDown(s32 a0) +static u32 LoopedTask_SlideMenuHeaderDown(s32 state) { if (ChangeBgY(0, 384, BG_COORD_SUB) <= 0) { @@ -510,15 +510,15 @@ void PokenavCopyPalette(const u16 *src, const u16 *dest, int size, int a3, int a void PokenavFadeScreen(s32 fadeType) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); switch (fadeType) { case 0: - BeginNormalPaletteFade(structPtr->palettes, -2, 0, 16, RGB_BLACK); + BeginNormalPaletteFade(menu->palettes, -2, 0, 16, RGB_BLACK); break; case 1: - BeginNormalPaletteFade(structPtr->palettes, -2, 16, 0, RGB_BLACK); + BeginNormalPaletteFade(menu->palettes, -2, 16, 0, RGB_BLACK); break; case 2: BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK); @@ -534,9 +534,10 @@ bool32 IsPaletteFadeActive(void) return gPaletteFade.active; } -void sub_81C7B40(void) +// Excludes the first obj and bg palettes +void FadeToBlackExceptPrimary(void) { - BlendPalettes(PALETTES_ALL & ~(0x10000 | 0x1), 16, RGB_BLACK); + BlendPalettes(PALETTES_ALL & ~(1 << 16 | 1), 16, RGB_BLACK); } void InitBgTemplates(const struct BgTemplate *templates, int count) @@ -549,21 +550,21 @@ void InitBgTemplates(const struct BgTemplate *templates, int count) static void InitHelpBar(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); InitWindows(&sHelpBarWindowTemplate[0]); - structPtr->helpBarWindowId = 0; - DrawHelpBar(structPtr->helpBarWindowId); - PutWindowTilemap(structPtr->helpBarWindowId); - CopyWindowToVram(structPtr->helpBarWindowId, COPYWIN_FULL); + menu->helpBarWindowId = 0; + DrawHelpBar(menu->helpBarWindowId); + PutWindowTilemap(menu->helpBarWindowId); + CopyWindowToVram(menu->helpBarWindowId, COPYWIN_FULL); } void PrintHelpBarText(u32 textId) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - DrawHelpBar(structPtr->helpBarWindowId); - AddTextPrinterParameterized3(structPtr->helpBarWindowId, FONT_NORMAL, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[textId]); + DrawHelpBar(menu->helpBarWindowId); + AddTextPrinterParameterized3(menu->helpBarWindowId, FONT_NORMAL, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[textId]); } bool32 WaitForHelpBar(void) @@ -581,22 +582,22 @@ static void InitPokenavMainMenuResources(void) { s32 i; u8 spriteId; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); for (i = 0; i < ARRAY_COUNT(gSpinningPokenavSpriteSheet); i++) LoadCompressedSpriteSheet(&gSpinningPokenavSpriteSheet[i]); Pokenav_AllocAndLoadPalettes(gSpinningNavgearPalettes); - structPtr->palettes = ~1 & ~(0x10000 << IndexOfSpritePaletteTag(0)); + menu->palettes = ~1 & ~(0x10000 << IndexOfSpritePaletteTag(0)); spriteId = CreateSprite(&sSpinningPokenavSpriteTemplate, 220, 12, 0); - structPtr->spinningPokenav = &gSprites[spriteId]; + menu->spinningPokenav = &gSprites[spriteId]; } static void CleanupPokenavMainMenuResources(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - DestroySprite(structPtr->spinningPokenav); + DestroySprite(menu->spinningPokenav); FreeSpriteTilesByTag(0); FreeSpritePaletteByTag(0); } @@ -609,45 +610,47 @@ static void SpriteCB_SpinningPokenav(struct Sprite *sprite) struct Sprite *PauseSpinningPokenavSprite(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->spinningPokenav->callback = SpriteCallbackDummy; - return structPtr->spinningPokenav; + menu->spinningPokenav->callback = SpriteCallbackDummy; + return menu->spinningPokenav; } void ResumeSpinningPokenavSprite(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - structPtr->spinningPokenav->x = 220; - structPtr->spinningPokenav->y = 12; - structPtr->spinningPokenav->callback = SpriteCB_SpinningPokenav; - structPtr->spinningPokenav->invisible = FALSE; - structPtr->spinningPokenav->oam.priority = 0; - structPtr->spinningPokenav->subpriority = 0; + menu->spinningPokenav->x = 220; + menu->spinningPokenav->y = 12; + menu->spinningPokenav->callback = SpriteCB_SpinningPokenav; + menu->spinningPokenav->invisible = FALSE; + menu->spinningPokenav->oam.priority = 0; + menu->spinningPokenav->subpriority = 0; } -static void InitHoennMapHeaderSprites(void) +static void CreateLeftHeaderSprites(void) { s32 i, spriteId; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - LoadCompressedSpriteSheet(&sPokenavHoennMapLeftHeaderSpriteSheet); + LoadCompressedSpriteSheet(&sMenuLeftHeaderSpriteSheet); AllocSpritePalette(1); AllocSpritePalette(2); - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->leftHeaderSprites); i++) { - spriteId = CreateSprite(&sPokenavLeftHeaderHoennMapSpriteTemplate, 0, 0, 1); - structPtr->leftHeaderSprites[i] = &gSprites[spriteId]; - structPtr->leftHeaderSprites[i]->invisible = TRUE; - structPtr->leftHeaderSprites[i]->x2 = i * 64; - - spriteId = CreateSprite(&sUnknown_0861FB44, 0, 0, 2); - structPtr->submenuLeftHeaderSprites[i] = &gSprites[spriteId]; - structPtr->submenuLeftHeaderSprites[i]->invisible = TRUE; - structPtr->submenuLeftHeaderSprites[i]->x2 = i * 32; - structPtr->submenuLeftHeaderSprites[i]->y2 = 18; - structPtr->submenuLeftHeaderSprites[i]->oam.tileNum += (i * 8) + 64; + // Create main left header + spriteId = CreateSprite(&sLeftHeaderSpriteTemplate, 0, 0, 1); + menu->leftHeaderSprites[i] = &gSprites[spriteId]; + menu->leftHeaderSprites[i]->invisible = TRUE; + menu->leftHeaderSprites[i]->x2 = i * 64; + + // Create submenu left header + spriteId = CreateSprite(&sSubmenuLeftHeaderSpriteTemplate, 0, 0, 2); + menu->submenuLeftHeaderSprites[i] = &gSprites[spriteId]; + menu->submenuLeftHeaderSprites[i]->invisible = TRUE; + menu->submenuLeftHeaderSprites[i]->x2 = i * 32; + menu->submenuLeftHeaderSprites[i]->y2 = 18; + menu->submenuLeftHeaderSprites[i]->oam.tileNum += (i * 8) + 64; } } @@ -661,34 +664,34 @@ void LoadLeftHeaderGfxForIndex(u32 menuGfxId) void UpdateRegionMapRightHeaderTiles(u32 menuGfxId) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); if (menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_OUT) - structPtr->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + 32; + menu->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + 32; else - structPtr->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + 64; + menu->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + 64; } static void LoadLeftHeaderGfxForMenu(u32 menuGfxId) { - struct PokenavMainMenuResources *structPtr; + struct Pokenav_MainMenu *menu; u32 size, tag; if (menuGfxId >= POKENAV_GFX_SUBMENUS_START) return; - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - tag = sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].tag; - size = GetDecompressedDataSize(sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].data); + menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + tag = sMenuLeftHeaderSpriteSheets[menuGfxId].tag; + size = GetDecompressedDataSize(sMenuLeftHeaderSpriteSheets[menuGfxId].data); LoadPalette(&gPokenavLeftHeader_Pal[tag * 16], (IndexOfSpritePaletteTag(1) * 16) + 0x100, 0x20); - LZ77UnCompWram(sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].data, gDecompressionBuffer); + LZ77UnCompWram(sMenuLeftHeaderSpriteSheets[menuGfxId].data, gDecompressionBuffer); RequestDma3Copy(gDecompressionBuffer, (void *)OBJ_VRAM0 + (GetSpriteTileStartByTag(2) * 32), size, 1); - structPtr->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].size; + menu->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + sMenuLeftHeaderSpriteSheets[menuGfxId].size; if (menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_OUT || menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_IN) - structPtr->leftHeaderSprites[1]->x2 = 56; + menu->leftHeaderSprites[1]->x2 = 56; else - structPtr->leftHeaderSprites[1]->x2 = 64; + menu->leftHeaderSprites[1]->x2 = 64; } static void LoadLeftHeaderGfxForSubMenu(u32 menuGfxId) @@ -731,20 +734,20 @@ void HideMainOrSubMenuLeftHeader(u32 id, bool32 onRightSide) void SetLeftHeaderSpritesInvisibility(void) { s32 i; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->leftHeaderSprites); i++) { - structPtr->leftHeaderSprites[i]->invisible = TRUE; - structPtr->submenuLeftHeaderSprites[i]->invisible = TRUE; + menu->leftHeaderSprites[i]->invisible = TRUE; + menu->submenuLeftHeaderSprites[i]->invisible = TRUE; } } bool32 AreLeftHeaderSpritesMoving(void) { - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - if (structPtr->leftHeaderSprites[0]->callback == SpriteCallbackDummy && structPtr->submenuLeftHeaderSprites[0]->callback == SpriteCallbackDummy) + if (menu->leftHeaderSprites[0]->callback == SpriteCallbackDummy && menu->submenuLeftHeaderSprites[0]->callback == SpriteCallbackDummy) return FALSE; else return TRUE; @@ -753,66 +756,66 @@ bool32 AreLeftHeaderSpritesMoving(void) static void ShowLeftHeaderSprites(u32 startY, bool32 isOnRightSide) { s32 start, end, i; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); if (!isOnRightSide) start = -96, end = 32; else start = 256, end = 160; - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->leftHeaderSprites); i++) { - structPtr->leftHeaderSprites[i]->y = startY; - MoveLeftHeader(structPtr->leftHeaderSprites[i], start, end, 12); + menu->leftHeaderSprites[i]->y = startY; + MoveLeftHeader(menu->leftHeaderSprites[i], start, end, 12); } } static void ShowLeftHeaderSubmenuSprites(u32 startY, bool32 isOnRightSide) { s32 start, end, i; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); if (!isOnRightSide) start = -96, end = 16; else start = 256, end = 192; - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->submenuLeftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->submenuLeftHeaderSprites); i++) { - structPtr->submenuLeftHeaderSprites[i]->y = startY; - MoveLeftHeader(structPtr->submenuLeftHeaderSprites[i], start, end, 12); + menu->submenuLeftHeaderSprites[i]->y = startY; + MoveLeftHeader(menu->submenuLeftHeaderSprites[i], start, end, 12); } } static void HideLeftHeaderSprites(bool32 isOnRightSide) { s32 start, end, i; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); if (!isOnRightSide) start = 32, end = -96; else start = 192, end = 256; - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->leftHeaderSprites); i++) { - MoveLeftHeader(structPtr->leftHeaderSprites[i], start, end, 12); + MoveLeftHeader(menu->leftHeaderSprites[i], start, end, 12); } } static void HideLeftHeaderSubmenuSprites(bool32 isOnRightSide) { s32 start, end, i; - struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); if (!isOnRightSide) start = 16, end = -96; else start = 192, end = 256; - for (i = 0; i < (s32)ARRAY_COUNT(structPtr->submenuLeftHeaderSprites); i++) + for (i = 0; i < (s32)ARRAY_COUNT(menu->submenuLeftHeaderSprites); i++) { - MoveLeftHeader(structPtr->submenuLeftHeaderSprites[i], start, end, 12); + MoveLeftHeader(menu->submenuLeftHeaderSprites[i], start, end, 12); } } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 8f222095790a..29cb0a06d9b6 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -109,15 +109,15 @@ u32 ShowCheckPageDown(s32); u32 ExitCheckPage(s32); u32 ExitMatchCall(s32); -static const u16 sMatchCallUI_Pal[] = INCBIN_U16("graphics/pokenav/ui_matchcall.gbapal"); -static const u32 sMatchCallUI_Gfx[] = INCBIN_U32("graphics/pokenav/ui_matchcall.4bpp.lz"); -static const u32 sMatchCallUI_Tilemap[] = INCBIN_U32("graphics/pokenav/ui_matchcall.bin.lz"); -static const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/arrow2.gbapal"); -static const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/arrow2.4bpp.lz"); -static const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/86226E0.gbapal"); -static const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/8622700.gbapal"); -static const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/pokeball_matchcall.gbapal"); -static const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/pokeball_matchcall.4bpp.lz"); +static const u16 sMatchCallUI_Pal[] = INCBIN_U16("graphics/pokenav/match_call/ui.gbapal"); +static const u32 sMatchCallUI_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/ui.4bpp.lz"); +static const u32 sMatchCallUI_Tilemap[] = INCBIN_U32("graphics/pokenav/match_call/ui.bin.lz"); +static const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/match_call/arrow.gbapal"); +static const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/match_call/arrow.4bpp.lz"); +static const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/match_call/86226E0.gbapal"); +static const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/match_call/8622700.gbapal"); +static const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/match_call/pokeball.gbapal"); +static const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/match_call/pokeball.4bpp.lz"); const struct BgTemplate sMatchCallBgTemplates[3] = { @@ -1062,7 +1062,7 @@ static void sub_81CC034(struct Pokenav4Struct *state) { state->msgBoxWindowId = AddWindow(&sCallMsgBoxWindowTemplate); LoadMatchCallWindowGfx(state->msgBoxWindowId, 1, 4); - sub_81C7B40(); + FadeToBlackExceptPrimary(); } static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state) diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 47226ca729dc..ce3db25c5996 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -94,8 +94,8 @@ u32 LoopedTask_sub_81C8870(s32 state); u32 LoopedTask_sub_81C8A28(s32 state); u32 LoopedTask_PrintCheckPageInfo(s32 state); -static const u16 sMatchcallArrowPaletteData[] = INCBIN_U16("graphics/pokenav/arrows_matchcall.gbapal"); -static const u32 sMatchcallArrowSpriteSheetData[] = INCBIN_U32("graphics/pokenav/arrows_matchcall.4bpp.lz"); +static const u16 sMatchcallArrowPaletteData[] = INCBIN_U16("graphics/pokenav/list_arrows.gbapal"); +static const u32 sMatchcallArrowSpriteSheetData[] = INCBIN_U32("graphics/pokenav/list_arrows.4bpp.lz"); EWRAM_DATA u32 gUnknown_0203CF44 = 0; diff --git a/src/pokenav_menu_handler_1.c b/src/pokenav_menu_handler_1.c index a500e7c18d64..b72247742cc7 100644 --- a/src/pokenav_menu_handler_1.c +++ b/src/pokenav_menu_handler_1.c @@ -5,31 +5,31 @@ #include "sound.h" #include "constants/songs.h" -struct Pokenav1Struct +struct Pokenav_Menu { u16 menuType; s16 cursorPos; u16 currMenuItem; u16 helpBarIndex; u32 menuId; - u32 (*callback)(struct Pokenav1Struct*); + u32 (*callback)(struct Pokenav_Menu*); }; -static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state); -static void ReturnToConditionMenu(struct Pokenav1Struct *state); -static void ReturnToMainMenu(struct Pokenav1Struct *state); -static u32 GetMenuId(struct Pokenav1Struct *state); -static void SetMenuIdAndCB(struct Pokenav1Struct *state, u32 a1); -static u32 CB2_ReturnToConditionMenu(struct Pokenav1Struct *state); -static u32 CB2_ReturnToMainMenu(struct Pokenav1Struct *state); -static u32 HandleConditionSearchMenuInput(struct Pokenav1Struct *state); -static u32 HandleConditionMenuInput(struct Pokenav1Struct *state); -static u32 HandleCantOpenRibbonsInput(struct Pokenav1Struct *state); -static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state); -static u32 HandleMainMenuInputTutorial(struct Pokenav1Struct *state); -static u32 HandleMainMenuInput(struct Pokenav1Struct *state); -static u32 (*GetMainMenuInputHandler(void))(struct Pokenav1Struct*); -static void SetMenuInputHandler(struct Pokenav1Struct *state); +static bool32 UpdateMenuCursorPos(struct Pokenav_Menu *); +static void ReturnToConditionMenu(struct Pokenav_Menu *); +static void ReturnToMainMenu(struct Pokenav_Menu *); +static u32 GetMenuId(struct Pokenav_Menu *); +static void SetMenuIdAndCB(struct Pokenav_Menu *, u32); +static u32 CB2_ReturnToConditionMenu(struct Pokenav_Menu *); +static u32 CB2_ReturnToMainMenu(struct Pokenav_Menu *); +static u32 HandleConditionSearchMenuInput(struct Pokenav_Menu *); +static u32 HandleConditionMenuInput(struct Pokenav_Menu *); +static u32 HandleCantOpenRibbonsInput(struct Pokenav_Menu *); +static u32 HandleMainMenuInputEndTutorial(struct Pokenav_Menu *); +static u32 HandleMainMenuInputTutorial(struct Pokenav_Menu *); +static u32 HandleMainMenuInput(struct Pokenav_Menu *); +static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu*); +static void SetMenuInputHandler(struct Pokenav_Menu *); // Number of entries - 1 for that menu type static const u8 sLastCursorPositions[] = @@ -41,20 +41,20 @@ static const u8 sLastCursorPositions[] = [POKENAV_MENU_TYPE_CONDITION_SEARCH] = 5 }; -static const u8 sMenuItems[][6] = +static const u8 sMenuItems[][MAX_POKENAV_MENUITEMS] = { [POKENAV_MENU_TYPE_DEFAULT] = { POKENAV_MENUITEM_MAP, POKENAV_MENUITEM_CONDITION, - [2 ... 5] = POKENAV_MENUITEM_SWITCH_OFF + [2 ... MAX_POKENAV_MENUITEMS - 1] = POKENAV_MENUITEM_SWITCH_OFF }, [POKENAV_MENU_TYPE_UNLOCK_MC] = { POKENAV_MENUITEM_MAP, POKENAV_MENUITEM_CONDITION, POKENAV_MENUITEM_MATCH_CALL, - [3 ... 5] = POKENAV_MENUITEM_SWITCH_OFF + [3 ... MAX_POKENAV_MENUITEMS - 1] = POKENAV_MENUITEM_SWITCH_OFF }, [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = { @@ -62,14 +62,14 @@ static const u8 sMenuItems[][6] = POKENAV_MENUITEM_CONDITION, POKENAV_MENUITEM_MATCH_CALL, POKENAV_MENUITEM_RIBBONS, - [4 ... 5] = POKENAV_MENUITEM_SWITCH_OFF + [4 ... MAX_POKENAV_MENUITEMS - 1] = POKENAV_MENUITEM_SWITCH_OFF }, [POKENAV_MENU_TYPE_CONDITION] = { POKENAV_MENUITEM_CONDITION_PARTY, POKENAV_MENUITEM_CONDITION_SEARCH, POKENAV_MENUITEM_CONDITION_CANCEL, - [3 ... 5] = POKENAV_MENUITEM_SWITCH_OFF + [3 ... MAX_POKENAV_MENUITEMS - 1] = POKENAV_MENUITEM_SWITCH_OFF }, [POKENAV_MENU_TYPE_CONDITION_SEARCH] = { @@ -99,94 +99,94 @@ static u8 GetPokenavMainMenuType(void) bool32 PokenavCallback_Init_MainMenuCursorOnMap(void) { - struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct)); - if (!state) + struct Pokenav_Menu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav_Menu)); + if (!menu) return FALSE; - state->menuType = GetPokenavMainMenuType(); - state->cursorPos = POKENAV_MENUITEM_MAP; - state->currMenuItem = POKENAV_MENUITEM_MAP; - state->helpBarIndex = HELPBAR_NONE; - SetMenuInputHandler(state); + menu->menuType = GetPokenavMainMenuType(); + menu->cursorPos = POKENAV_MENUITEM_MAP; + menu->currMenuItem = POKENAV_MENUITEM_MAP; + menu->helpBarIndex = HELPBAR_NONE; + SetMenuInputHandler(menu); return TRUE; } bool32 PokenavCallback_Init_MainMenuCursorOnMatchCall(void) { - struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct)); - if (!state) + struct Pokenav_Menu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav_Menu)); + if (!menu) return FALSE; - state->menuType = GetPokenavMainMenuType(); - state->cursorPos = POKENAV_MENUITEM_MATCH_CALL; - state->currMenuItem = POKENAV_MENUITEM_MATCH_CALL; - state->helpBarIndex = HELPBAR_NONE; - SetMenuInputHandler(state); + menu->menuType = GetPokenavMainMenuType(); + menu->cursorPos = POKENAV_MENUITEM_MATCH_CALL; + menu->currMenuItem = POKENAV_MENUITEM_MATCH_CALL; + menu->helpBarIndex = HELPBAR_NONE; + SetMenuInputHandler(menu); return TRUE; } bool32 PokenavCallback_Init_MainMenuCursorOnRibbons(void) { - struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct)); - if (!state) + struct Pokenav_Menu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav_Menu)); + if (!menu) return FALSE; - state->menuType = GetPokenavMainMenuType(); - state->cursorPos = POKENAV_MENUITEM_RIBBONS; - state->currMenuItem = POKENAV_MENUITEM_RIBBONS; - SetMenuInputHandler(state); + menu->menuType = GetPokenavMainMenuType(); + menu->cursorPos = POKENAV_MENUITEM_RIBBONS; + menu->currMenuItem = POKENAV_MENUITEM_RIBBONS; + SetMenuInputHandler(menu); return TRUE; } bool32 PokenavCallback_Init_ConditionMenu(void) { - struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct)); - if (!state) + struct Pokenav_Menu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav_Menu)); + if (!menu) return FALSE; - state->menuType = POKENAV_MENU_TYPE_CONDITION; - state->cursorPos = 0; //party - state->currMenuItem = POKENAV_MENUITEM_CONDITION_PARTY; - state->helpBarIndex = HELPBAR_NONE; - SetMenuInputHandler(state); + menu->menuType = POKENAV_MENU_TYPE_CONDITION; + menu->cursorPos = 0; //party + menu->currMenuItem = POKENAV_MENUITEM_CONDITION_PARTY; + menu->helpBarIndex = HELPBAR_NONE; + SetMenuInputHandler(menu); return TRUE; } bool32 PokenavCallback_Init_ConditionSearchMenu(void) { - struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct)); - if (!state) + struct Pokenav_Menu *menu = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav_Menu)); + if (!menu) return FALSE; - state->menuType = POKENAV_MENU_TYPE_CONDITION_SEARCH; - state->cursorPos = GetSelectedConditionSearch(); - state->currMenuItem = state->cursorPos + POKENAV_MENUITEM_CONDITION_SEARCH_COOL; - state->helpBarIndex = HELPBAR_NONE; - SetMenuInputHandler(state); + menu->menuType = POKENAV_MENU_TYPE_CONDITION_SEARCH; + menu->cursorPos = GetSelectedConditionSearch(); + menu->currMenuItem = menu->cursorPos + POKENAV_MENUITEM_CONDITION_SEARCH_COOL; + menu->helpBarIndex = HELPBAR_NONE; + SetMenuInputHandler(menu); return TRUE; } -static void SetMenuInputHandler(struct Pokenav1Struct *state) +static void SetMenuInputHandler(struct Pokenav_Menu *menu) { - switch (state->menuType) + switch (menu->menuType) { case POKENAV_MENU_TYPE_DEFAULT: SetPokenavMode(POKENAV_MODE_NORMAL); // fallthrough case POKENAV_MENU_TYPE_UNLOCK_MC: case POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS: - state->callback = GetMainMenuInputHandler(); + menu->callback = GetMainMenuInputHandler(); break; case POKENAV_MENU_TYPE_CONDITION: - state->callback = HandleConditionMenuInput; + menu->callback = HandleConditionMenuInput; break; case POKENAV_MENU_TYPE_CONDITION_SEARCH: - state->callback = HandleConditionSearchMenuInput; + menu->callback = HandleConditionSearchMenuInput; break; } } -static u32 (*GetMainMenuInputHandler(void))(struct Pokenav1Struct*) +static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu*) { switch (GetPokenavMode()) { @@ -202,8 +202,8 @@ static u32 (*GetMainMenuInputHandler(void))(struct Pokenav1Struct*) u32 GetMenuHandlerCallback(void) { - struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); - return state->callback(state); + struct Pokenav_Menu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); + return menu->callback(menu); } void FreeMenuHandlerSubstruct1(void) @@ -211,39 +211,39 @@ void FreeMenuHandlerSubstruct1(void) FreePokenavSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); } -static u32 HandleMainMenuInput(struct Pokenav1Struct *state) +static u32 HandleMainMenuInput(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) return POKENAV_MENU_FUNC_MOVE_CURSOR; if (JOY_NEW(A_BUTTON)) { - switch (sMenuItems[state->menuType][state->cursorPos]) + switch (sMenuItems[menu->menuType][menu->cursorPos]) { case POKENAV_MENUITEM_MAP: - state->helpBarIndex = gSaveBlock2Ptr->regionMapZoom ? HELPBAR_MAP_ZOOMED_IN : HELPBAR_MAP_ZOOMED_OUT; - SetMenuIdAndCB(state, POKENAV_REGION_MAP); + menu->helpBarIndex = gSaveBlock2Ptr->regionMapZoom ? HELPBAR_MAP_ZOOMED_IN : HELPBAR_MAP_ZOOMED_OUT; + SetMenuIdAndCB(menu, POKENAV_REGION_MAP); return POKENAV_MENU_FUNC_OPEN_FEATURE; case POKENAV_MENUITEM_CONDITION: - state->menuType = POKENAV_MENU_TYPE_CONDITION; - state->cursorPos = 0; - state->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION][0]; - state->callback = HandleConditionMenuInput; + menu->menuType = POKENAV_MENU_TYPE_CONDITION; + menu->cursorPos = 0; + menu->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION][0]; + menu->callback = HandleConditionMenuInput; return POKENAV_MENU_FUNC_OPEN_CONDITION; case POKENAV_MENUITEM_MATCH_CALL: - state->helpBarIndex = HELPBAR_MC_TRAINER_LIST; - SetMenuIdAndCB(state, POKENAV_MATCH_CALL); + menu->helpBarIndex = HELPBAR_MC_TRAINER_LIST; + SetMenuIdAndCB(menu, POKENAV_MATCH_CALL); return POKENAV_MENU_FUNC_OPEN_FEATURE; case POKENAV_MENUITEM_RIBBONS: if (CanViewRibbonsMenu()) { - state->helpBarIndex = HELPBAR_RIBBONS_MON_LIST; - SetMenuIdAndCB(state, POKENAV_RIBBONS_MON_LIST); + menu->helpBarIndex = HELPBAR_RIBBONS_MON_LIST; + SetMenuIdAndCB(menu, POKENAV_RIBBONS_MON_LIST); return POKENAV_MENU_FUNC_OPEN_FEATURE; } else { - state->callback = HandleCantOpenRibbonsInput; + menu->callback = HandleCantOpenRibbonsInput; return POKENAV_MENU_FUNC_NO_RIBBON_WINNERS; } case POKENAV_MENUITEM_SWITCH_OFF: @@ -258,17 +258,17 @@ static u32 HandleMainMenuInput(struct Pokenav1Struct *state) } // Force the player to select Match Call during the call Mr. Stone pokenav tutorial -static u32 HandleMainMenuInputTutorial(struct Pokenav1Struct *state) +static u32 HandleMainMenuInputTutorial(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) return POKENAV_MENU_FUNC_MOVE_CURSOR; if (JOY_NEW(A_BUTTON)) { - if (sMenuItems[state->menuType][state->cursorPos] == POKENAV_MENUITEM_MATCH_CALL) + if (sMenuItems[menu->menuType][menu->cursorPos] == POKENAV_MENUITEM_MATCH_CALL) { - state->helpBarIndex = HELPBAR_MC_TRAINER_LIST; - SetMenuIdAndCB(state, POKENAV_MATCH_CALL); + menu->helpBarIndex = HELPBAR_MC_TRAINER_LIST; + SetMenuIdAndCB(menu, POKENAV_MATCH_CALL); return POKENAV_MENU_FUNC_OPEN_FEATURE; } else @@ -288,14 +288,14 @@ static u32 HandleMainMenuInputTutorial(struct Pokenav1Struct *state) } // After calling Mr. Stone during the pokenav tutorial, force player to exit or use Match Call again -static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state) +static u32 HandleMainMenuInputEndTutorial(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) return POKENAV_MENU_FUNC_MOVE_CURSOR; if (JOY_NEW(A_BUTTON)) { - u32 menuItem = sMenuItems[state->menuType][state->cursorPos]; + u32 menuItem = sMenuItems[menu->menuType][menu->cursorPos]; if (menuItem != POKENAV_MENUITEM_MATCH_CALL && menuItem != POKENAV_MENUITEM_SWITCH_OFF) { PlaySE(SE_FAILURE); @@ -303,8 +303,8 @@ static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state) } else if (menuItem == POKENAV_MENUITEM_MATCH_CALL) { - state->helpBarIndex = HELPBAR_MC_TRAINER_LIST; - SetMenuIdAndCB(state, POKENAV_MATCH_CALL); + menu->helpBarIndex = HELPBAR_MC_TRAINER_LIST; + SetMenuIdAndCB(menu, POKENAV_MATCH_CALL); return POKENAV_MENU_FUNC_OPEN_FEATURE; } else @@ -321,60 +321,60 @@ static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state) // Handles input after selecting Ribbons when there are no ribbon winners left // Selecting it again just reprints the Ribbon description to replace the "No Ribbon winners" message -static u32 HandleCantOpenRibbonsInput(struct Pokenav1Struct *state) +static u32 HandleCantOpenRibbonsInput(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) { - state->callback = GetMainMenuInputHandler(); + menu->callback = GetMainMenuInputHandler(); return POKENAV_MENU_FUNC_MOVE_CURSOR; } if (JOY_NEW(A_BUTTON | B_BUTTON)) { - state->callback = GetMainMenuInputHandler(); + menu->callback = GetMainMenuInputHandler(); return POKENAV_MENU_FUNC_RESHOW_DESCRIPTION; } return POKENAV_MENU_FUNC_NONE; } -static u32 HandleConditionMenuInput(struct Pokenav1Struct *state) +static u32 HandleConditionMenuInput(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) return POKENAV_MENU_FUNC_MOVE_CURSOR; if (JOY_NEW(A_BUTTON)) { - switch (sMenuItems[state->menuType][state->cursorPos]) + switch (sMenuItems[menu->menuType][menu->cursorPos]) { case POKENAV_MENUITEM_CONDITION_SEARCH: - state->menuType = POKENAV_MENU_TYPE_CONDITION_SEARCH; - state->cursorPos = 0; - state->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION_SEARCH][0]; - state->callback = HandleConditionSearchMenuInput; + menu->menuType = POKENAV_MENU_TYPE_CONDITION_SEARCH; + menu->cursorPos = 0; + menu->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION_SEARCH][0]; + menu->callback = HandleConditionSearchMenuInput; return POKENAV_MENU_FUNC_OPEN_CONDITION_SEARCH; case POKENAV_MENUITEM_CONDITION_PARTY: - state->helpBarIndex = 0; - SetMenuIdAndCB(state, POKENAV_CONDITION_GRAPH_PARTY); + menu->helpBarIndex = 0; + SetMenuIdAndCB(menu, POKENAV_CONDITION_GRAPH_PARTY); return POKENAV_MENU_FUNC_OPEN_FEATURE; case POKENAV_MENUITEM_CONDITION_CANCEL: PlaySE(SE_SELECT); - ReturnToMainMenu(state); + ReturnToMainMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_MAIN; } } if (JOY_NEW(B_BUTTON)) { - if (state->cursorPos != sLastCursorPositions[state->menuType]) + if (menu->cursorPos != sLastCursorPositions[menu->menuType]) { - state->cursorPos = sLastCursorPositions[state->menuType]; - state->callback = CB2_ReturnToMainMenu; + menu->cursorPos = sLastCursorPositions[menu->menuType]; + menu->callback = CB2_ReturnToMainMenu; return POKENAV_MENU_FUNC_MOVE_CURSOR; } else { PlaySE(SE_SELECT); - ReturnToMainMenu(state); + ReturnToMainMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_MAIN; } } @@ -382,102 +382,102 @@ static u32 HandleConditionMenuInput(struct Pokenav1Struct *state) return POKENAV_MENU_FUNC_NONE; } -static u32 HandleConditionSearchMenuInput(struct Pokenav1Struct *state) +static u32 HandleConditionSearchMenuInput(struct Pokenav_Menu *menu) { - if (UpdateMenuCursorPos(state)) + if (UpdateMenuCursorPos(menu)) return POKENAV_MENU_FUNC_MOVE_CURSOR; if (JOY_NEW(A_BUTTON)) { - u8 menuItem = sMenuItems[state->menuType][state->cursorPos]; + u8 menuItem = sMenuItems[menu->menuType][menu->cursorPos]; if (menuItem != POKENAV_MENUITEM_CONDITION_SEARCH_CANCEL) { SetSelectedConditionSearch(menuItem - POKENAV_MENUITEM_CONDITION_SEARCH_COOL); - SetMenuIdAndCB(state, POKENAV_CONDITION_SEARCH_RESULTS); - state->helpBarIndex = HELPBAR_CONDITION_MON_LIST; + SetMenuIdAndCB(menu, POKENAV_CONDITION_SEARCH_RESULTS); + menu->helpBarIndex = HELPBAR_CONDITION_MON_LIST; return POKENAV_MENU_FUNC_OPEN_FEATURE; } else { PlaySE(SE_SELECT); - ReturnToConditionMenu(state); + ReturnToConditionMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_CONDITION; } } if (JOY_NEW(B_BUTTON)) { - if (state->cursorPos != sLastCursorPositions[state->menuType]) + if (menu->cursorPos != sLastCursorPositions[menu->menuType]) { - state->cursorPos = sLastCursorPositions[state->menuType]; - state->callback = CB2_ReturnToConditionMenu; + menu->cursorPos = sLastCursorPositions[menu->menuType]; + menu->callback = CB2_ReturnToConditionMenu; return POKENAV_MENU_FUNC_MOVE_CURSOR; } else { PlaySE(SE_SELECT); - ReturnToConditionMenu(state); + ReturnToConditionMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_CONDITION; } } return POKENAV_MENU_FUNC_NONE; } -static u32 CB2_ReturnToMainMenu(struct Pokenav1Struct *state) +static u32 CB2_ReturnToMainMenu(struct Pokenav_Menu *menu) { - ReturnToMainMenu(state); + ReturnToMainMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_MAIN; } -static u32 CB2_ReturnToConditionMenu(struct Pokenav1Struct *state) +static u32 CB2_ReturnToConditionMenu(struct Pokenav_Menu *menu) { - ReturnToConditionMenu(state); + ReturnToConditionMenu(menu); return POKENAV_MENU_FUNC_RETURN_TO_CONDITION; } -static void SetMenuIdAndCB(struct Pokenav1Struct *state, u32 menuId) +static void SetMenuIdAndCB(struct Pokenav_Menu *menu, u32 menuId) { - state->menuId = menuId; - state->callback = GetMenuId; + menu->menuId = menuId; + menu->callback = GetMenuId; } -static u32 GetMenuId(struct Pokenav1Struct *state) +static u32 GetMenuId(struct Pokenav_Menu *menu) { - return state->menuId; + return menu->menuId; } -static void ReturnToMainMenu(struct Pokenav1Struct *state) +static void ReturnToMainMenu(struct Pokenav_Menu *menu) { - state->menuType = GetPokenavMainMenuType(); - state->cursorPos = 1; - state->currMenuItem = sMenuItems[state->menuType][state->cursorPos]; - state->callback = HandleMainMenuInput; + menu->menuType = GetPokenavMainMenuType(); + menu->cursorPos = 1; + menu->currMenuItem = sMenuItems[menu->menuType][menu->cursorPos]; + menu->callback = HandleMainMenuInput; } -static void ReturnToConditionMenu(struct Pokenav1Struct *state) +static void ReturnToConditionMenu(struct Pokenav_Menu *menu) { - state->menuType = POKENAV_MENU_TYPE_CONDITION; - state->cursorPos = 1; - state->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION][1]; - state->callback = HandleConditionMenuInput; + menu->menuType = POKENAV_MENU_TYPE_CONDITION; + menu->cursorPos = 1; + menu->currMenuItem = sMenuItems[POKENAV_MENU_TYPE_CONDITION][1]; + menu->callback = HandleConditionMenuInput; } -static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state) +static bool32 UpdateMenuCursorPos(struct Pokenav_Menu *menu) { if (JOY_NEW(DPAD_UP)) { - if (--state->cursorPos < 0) - state->cursorPos = sLastCursorPositions[state->menuType]; + if (--menu->cursorPos < 0) + menu->cursorPos = sLastCursorPositions[menu->menuType]; - state->currMenuItem = sMenuItems[state->menuType][state->cursorPos]; + menu->currMenuItem = sMenuItems[menu->menuType][menu->cursorPos]; return TRUE; } else if (JOY_NEW(DPAD_DOWN)) { - state->cursorPos++; - if (state->cursorPos > sLastCursorPositions[state->menuType]) - state->cursorPos = 0; + menu->cursorPos++; + if (menu->cursorPos > sLastCursorPositions[menu->menuType]) + menu->cursorPos = 0; - state->currMenuItem = sMenuItems[state->menuType][state->cursorPos]; + menu->currMenuItem = sMenuItems[menu->menuType][menu->cursorPos]; return TRUE; } else @@ -488,26 +488,26 @@ static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state) int GetPokenavMenuType(void) { - struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); - return state->menuType; + struct Pokenav_Menu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); + return menu->menuType; } // Position of cursor relative to number of current menu options int GetPokenavCursorPos(void) { - struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); - return state->cursorPos; + struct Pokenav_Menu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); + return menu->cursorPos; } // ID of menu item the cursor is currently on int GetCurrentMenuItemId(void) { - struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); - return state->currMenuItem; + struct Pokenav_Menu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); + return menu->currMenuItem; } u16 GetHelpBarTextId(void) { - struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); - return state->helpBarIndex; + struct Pokenav_Menu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER); + return menu->helpBarIndex; } diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_2.c index a50f4510669c..1738142acf79 100644 --- a/src/pokenav_menu_handler_2.c +++ b/src/pokenav_menu_handler_2.c @@ -17,68 +17,86 @@ #include "constants/songs.h" #include "constants/rgb.h" -struct Pokenav2Struct +#define GFXTAG_BLUE_LIGHT 1 +#define GFXTAG_OPTIONS 3 + +#define PALTAG_BLUE_LIGHT 3 +#define PALTAG_OPTIONS_DEFAULT 4 // Includes green for Smart/Region Map and yellow for Tough +#define PALTAG_OPTIONS_BLUE 5 +#define PALTAG_OPTIONS_PINK 6 +#define PALTAG_OPTIONS_BEIGE 7 +#define PALTAG_OPTIONS_RED 8 + +#define PALTAG_OPTIONS_START PALTAG_OPTIONS_DEFAULT + +#define NUM_OPTION_SUBSPRITES 4 + +#define OPTION_DEFAULT_X 140 +#define OPTION_SELECTED_X 130 +#define OPTION_EXIT_X (DISPLAY_WIDTH + 16) + +struct Pokenav_MenuGfx { bool32 (*isTaskActiveCB)(void); u32 loopedTaskId; u16 optionDescWindowId; u8 bg3ScrollTaskId; u8 cursorPos; - bool8 otherIconsInMotion; + u8 numIconsBlending; bool8 pokenavAlreadyOpen; bool32 iconVisible[MAX_POKENAV_MENUITEMS]; - struct Sprite * blueLightSpriteId; - struct Sprite * iconSprites[MAX_POKENAV_MENUITEMS][4]; - u16 bg1TilemapBuffer[0x400]; + struct Sprite * blueLightSprite; + struct Sprite * iconSprites[MAX_POKENAV_MENUITEMS][NUM_OPTION_SUBSPRITES]; + u8 bg1TilemapBuffer[BG_SCREEN_SIZE]; }; -static struct Pokenav2Struct * OpenPokenavMenu(void); +static struct Pokenav_MenuGfx * OpenPokenavMenu(void); static bool32 GetCurrentLoopedTaskActive(void); -static u32 LoopedTask_OpenMenu(s32 state); -static u32 LoopedTask_MoveMenuCursor(s32 state); -static u32 LoopedTask_OpenConditionMenu(s32 state); -static u32 LoopedTask_ReturnToMainMenu(s32 state); -static u32 LoopedTask_OpenConditionSearchMenu(s32 state); -static u32 LoopedTask_ReturnToConditionMenu(s32 state); -static u32 LoopedTask_SelectRibbonsNoWinners(s32 state); -static u32 LoopedTask_ReShowDescription(s32 state); -static u32 LoopedTask_OpenPokenavFeature(s32 state); +static u32 LoopedTask_OpenMenu(s32); +static u32 LoopedTask_MoveMenuCursor(s32); +static u32 LoopedTask_OpenConditionMenu(s32); +static u32 LoopedTask_ReturnToMainMenu(s32); +static u32 LoopedTask_OpenConditionSearchMenu(s32); +static u32 LoopedTask_ReturnToConditionMenu(s32); +static u32 LoopedTask_SelectRibbonsNoWinners(s32); +static u32 LoopedTask_ReShowDescription(s32); +static u32 LoopedTask_OpenPokenavFeature(s32); static void LoadPokenavOptionPalettes(void); static void FreeAndDestroyMainMenuSprites(void); static void CreateMenuOptionSprites(void); static void DestroyMenuOptionSprites(void); -static void sub_81CA0C8(void); -static void DrawOptionLabelGfx(const u16 *const * a0, s32 yPos, s32 a2); -static void SetupCurrentMenuOptionsGfx(void); -static void SetMenuOptionGfxParams_CursorMoved(void); -static void SetMenuOptionGfxParamsInactive(struct Sprite ** sprites, s32 x, s32 a2, s32 a3); -static void SetMenuOptionGfxParamsActive(struct Sprite ** sprites); -static void SetupPokenavMenuOptions(void); +static void DrawCurrentMenuOptionLabels(void); +static void DrawOptionLabelGfx(const u16 *const *, s32, s32); +static void StartOptionAnimations_Enter(void); +static void StartOptionAnimations_CursorMoved(void); +static void StartOptionAnimations_Exit(void); +static void StartOptionSlide(struct Sprite **, s32, s32, s32); +static void StartOptionZoom(struct Sprite **); static bool32 AreMenuOptionSpritesMoving(void); -static void SetMenuOptionGfxInvisibility(struct Sprite ** sprites, bool32 a1); -static void sub_81CA474(struct Sprite * sprite); -static void sub_81CA4AC(struct Sprite * sprite); -static void sub_81CA580(u8 taskId); +static void SetOptionInvisibility(struct Sprite **, bool32); +static void SpriteCB_OptionSlide(struct Sprite *); +static void SpriteCB_OptionZoom(struct Sprite *); +static void Task_OptionBlend(u8); static void CreateMatchCallBlueLightSprite(void); -static void SpriteCB_BlinkingBlueLight(struct Sprite * sprite); -static void DestroyRematchBlueLightSpriteId(void); +static void SpriteCB_BlinkingBlueLight(struct Sprite *); +static void DestroyRematchBlueLightSprite(void); static void AddOptionDescriptionWindow(void); static void PrintCurrentOptionDescription(void); static void PrintNoRibbonWinners(void); static bool32 IsDma3ManagerBusyWithBgCopy_(void); static void CreateMovingBgDotsTask(void); static void DestroyMovingDotsBgTask(void); -static void Task_MoveBgDots(u8 taskId); +static void Task_MoveBgDots(u8); static void CreateBgDotPurplePalTask(void); static void ChangeBgDotsColorToPurple(void); static void CreateBgDotLightBluePalTask(void); static bool32 IsTaskActive_UpdateBgDotsPalette(void); -static void Task_UpdateBgDotsPalette(u8 taskId); +static void Task_UpdateBgDotsPalette(u8); static void SetupPokenavMenuScanlineEffects(void); static void DestroyMenuOptionGlowTask(void); static void ResetBldCnt(void); static void InitMenuOptionGlow(void); -static void Task_CurrentMenuOptionGlow(u8 taskId); +static void Task_CurrentMenuOptionGlow(u8); static void SetMenuOptionGlow(void); static const u16 sPokenavBgDotsPal[] = INCBIN_U16("graphics/pokenav/bg_dots.gbapal"); @@ -136,78 +154,103 @@ static const struct CompressedSpriteSheet sPokenavOptionsSpriteSheets[] = { .data = gPokenavOptions_Gfx, .size = 0x3400, - .tag = 0x0003 + .tag = GFXTAG_OPTIONS }, { .data = sMatchCallBlueLightTiles, .size = 0x0100, - .tag = 0x0001 + .tag = GFXTAG_BLUE_LIGHT } }; static const struct SpritePalette sPokenavOptionsSpritePalettes[] = { - {gPokenavOptions_Pal + 0x00, 4}, - {gPokenavOptions_Pal + 0x10, 5}, - {gPokenavOptions_Pal + 0x20, 6}, - {gPokenavOptions_Pal + 0x30, 7}, - {gPokenavOptions_Pal + 0x40, 8}, - {sMatchCallBlueLightPal, 3}, + {&gPokenavOptions_Pal[0x00], PALTAG_OPTIONS_DEFAULT}, + {&gPokenavOptions_Pal[0x10], PALTAG_OPTIONS_BLUE}, + {&gPokenavOptions_Pal[0x20], PALTAG_OPTIONS_PINK}, + {&gPokenavOptions_Pal[0x30], PALTAG_OPTIONS_BEIGE}, + {&gPokenavOptions_Pal[0x40], PALTAG_OPTIONS_RED}, + {sMatchCallBlueLightPal, PALTAG_BLUE_LIGHT}, {} }; -static const u16 sOptionsLabelGfx_RegionMap[] = {0, 0}; -static const u16 sOptionsLabelGfx_Condition[] = {0x20, 1}; -static const u16 sOptionsLabelGfx_MatchCall[] = {0x40, 4}; -static const u16 sOptionsLabelGfx_Ribbons[] = {0x60, 2}; -static const u16 sOptionsLabelGfx_SwitchOff[] = {0x80, 3}; -static const u16 sOptionsLabelGfx_Party[] = {0xA0, 1}; -static const u16 sOptionsLabelGfx_Search[] = {0xC0, 1}; -static const u16 sOptionsLabelGfx_Cool[] = {0xE0, 4}; -static const u16 sOptionsLabelGfx_Beauty[] = {0x100, 1}; -static const u16 sOptionsLabelGfx_Cute[] = {0x120, 2}; -static const u16 sOptionsLabelGfx_Smart[] = {0x140, 0}; -static const u16 sOptionsLabelGfx_Tough[] = {0x160, 0}; -static const u16 sOptionsLabelGfx_Cancel[] = {0x180, 3}; - -struct OptionsLabelGfx +// Tile number, palette tag offset +static const u16 sOptionsLabelGfx_RegionMap[] = {0x000, PALTAG_OPTIONS_DEFAULT - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Condition[] = {0x020, PALTAG_OPTIONS_BLUE - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_MatchCall[] = {0x040, PALTAG_OPTIONS_RED - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Ribbons[] = {0x060, PALTAG_OPTIONS_PINK - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_SwitchOff[] = {0x080, PALTAG_OPTIONS_BEIGE - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Party[] = {0x0A0, PALTAG_OPTIONS_BLUE - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Search[] = {0x0C0, PALTAG_OPTIONS_BLUE - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Cool[] = {0x0E0, PALTAG_OPTIONS_RED - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Beauty[] = {0x100, PALTAG_OPTIONS_BLUE - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Cute[] = {0x120, PALTAG_OPTIONS_PINK - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Smart[] = {0x140, PALTAG_OPTIONS_DEFAULT - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Tough[] = {0x160, PALTAG_OPTIONS_DEFAULT - PALTAG_OPTIONS_START}; +static const u16 sOptionsLabelGfx_Cancel[] = {0x180, PALTAG_OPTIONS_BEIGE - PALTAG_OPTIONS_START}; + +struct { u16 yStart; u16 deltaY; - const u16 *tiles[MAX_POKENAV_MENUITEMS]; -}; - -static const struct OptionsLabelGfx sPokenavMenuOptionLabelGfx[POKENAV_MENU_TYPE_COUNT] = + const u16 *gfx[MAX_POKENAV_MENUITEMS]; +} static const sPokenavMenuOptionLabelGfx[POKENAV_MENU_TYPE_COUNT] = { [POKENAV_MENU_TYPE_DEFAULT] = { .yStart = 42, .deltaY = 20, - {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_SwitchOff} + .gfx = { + sOptionsLabelGfx_RegionMap, + sOptionsLabelGfx_Condition, + sOptionsLabelGfx_SwitchOff + } }, [POKENAV_MENU_TYPE_UNLOCK_MC] = { .yStart = 42, .deltaY = 20, - {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_MatchCall, sOptionsLabelGfx_SwitchOff} + .gfx = { + sOptionsLabelGfx_RegionMap, + sOptionsLabelGfx_Condition, + sOptionsLabelGfx_MatchCall, + sOptionsLabelGfx_SwitchOff + } }, [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = { .yStart = 42, .deltaY = 20, - {sOptionsLabelGfx_RegionMap, sOptionsLabelGfx_Condition, sOptionsLabelGfx_MatchCall, sOptionsLabelGfx_Ribbons, sOptionsLabelGfx_SwitchOff} + .gfx = { + sOptionsLabelGfx_RegionMap, + sOptionsLabelGfx_Condition, + sOptionsLabelGfx_MatchCall, + sOptionsLabelGfx_Ribbons, + sOptionsLabelGfx_SwitchOff + } }, [POKENAV_MENU_TYPE_CONDITION] = { .yStart = 56, .deltaY = 20, - {sOptionsLabelGfx_Party, sOptionsLabelGfx_Search, sOptionsLabelGfx_Cancel} + .gfx = { + sOptionsLabelGfx_Party, + sOptionsLabelGfx_Search, + sOptionsLabelGfx_Cancel + } }, [POKENAV_MENU_TYPE_CONDITION_SEARCH] = { .yStart = 40, .deltaY = 16, - {sOptionsLabelGfx_Cool, sOptionsLabelGfx_Beauty, sOptionsLabelGfx_Cute, sOptionsLabelGfx_Smart, sOptionsLabelGfx_Tough, sOptionsLabelGfx_Cancel} + .gfx = { + sOptionsLabelGfx_Cool, + sOptionsLabelGfx_Beauty, + sOptionsLabelGfx_Cute, + sOptionsLabelGfx_Smart, + sOptionsLabelGfx_Tough, + sOptionsLabelGfx_Cancel + } }, }; @@ -216,8 +259,8 @@ static const struct WindowTemplate sOptionDescWindowTemplate = .bg = 1, .tilemapLeft = 3, .tilemapTop = 17, - .width = 0x18, - .height = 0x2, + .width = 24, + .height = 2, .paletteNum = 1, .baseBlock = 8 }; @@ -257,33 +300,33 @@ static const struct OamData sOamData_MenuOption = .paletteNum = 0, }; -static const union AffineAnimCmd gUnknown_0862031C[] = +static const union AffineAnimCmd sAffineAnim_MenuOption_Normal[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gUnknown_0862032C[] = +static const union AffineAnimCmd sAffineAnim_MenuOption_Zoom[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0x12), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd *const sSpriteAnims_MenuOption[] = +static const union AffineAnimCmd *const sAffineAnims_MenuOption[] = { - gUnknown_0862031C, - gUnknown_0862032C + sAffineAnim_MenuOption_Normal, + sAffineAnim_MenuOption_Zoom }; static const struct SpriteTemplate sMenuOptionSpriteTemplate = { - .tileTag = 3, - .paletteTag = 4, + .tileTag = GFXTAG_OPTIONS, + .paletteTag = PALTAG_OPTIONS_START, .oam = &sOamData_MenuOption, .anims = gDummySpriteAnimTable, .images = NULL, - .affineAnims = sSpriteAnims_MenuOption, + .affineAnims = sAffineAnims_MenuOption, .callback = SpriteCallbackDummy, }; @@ -303,8 +346,8 @@ static const struct OamData sBlueLightOamData = static const struct SpriteTemplate sMatchCallBlueLightSpriteTemplate = { - .tileTag = 1, - .paletteTag = 3, + .tileTag = GFXTAG_BLUE_LIGHT, + .paletteTag = PALTAG_BLUE_LIGHT, .oam = &sBlueLightOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -320,7 +363,7 @@ static const struct ScanlineEffectParams sPokenavMainMenuScanlineEffectParams = 0 }; -static bool32 PlayerHasTrainerRematches(void) +static bool32 AreAnyTrainerRematchesNearby(void) { s32 i; @@ -337,81 +380,81 @@ static bool32 PlayerHasTrainerRematches(void) bool32 OpenPokenavMenuInitial(void) { - struct Pokenav2Struct * state = OpenPokenavMenu(); + struct Pokenav_MenuGfx * gfx = OpenPokenavMenu(); - if (state == NULL) + if (gfx == NULL) return FALSE; - state->pokenavAlreadyOpen = FALSE; + gfx->pokenavAlreadyOpen = FALSE; return TRUE; } bool32 OpenPokenavMenuNotInitial(void) { - struct Pokenav2Struct * state = OpenPokenavMenu(); + struct Pokenav_MenuGfx * gfx = OpenPokenavMenu(); - if (state == NULL) + if (gfx == NULL) return FALSE; - state->pokenavAlreadyOpen = TRUE; + gfx->pokenavAlreadyOpen = TRUE; return TRUE; } -static struct Pokenav2Struct * OpenPokenavMenu(void) +static struct Pokenav_MenuGfx * OpenPokenavMenu(void) { - struct Pokenav2Struct * state = AllocSubstruct(POKENAV_SUBSTRUCT_MENU_ICONS, sizeof(struct Pokenav2Struct)); + struct Pokenav_MenuGfx * gfx = AllocSubstruct(POKENAV_SUBSTRUCT_MENU_GFX, sizeof(struct Pokenav_MenuGfx)); - if (state != NULL) + if (gfx != NULL) { - state->otherIconsInMotion = FALSE; - state->loopedTaskId = CreateLoopedTask(LoopedTask_OpenMenu, 1); - state->isTaskActiveCB = GetCurrentLoopedTaskActive; + gfx->numIconsBlending = 0; + gfx->loopedTaskId = CreateLoopedTask(LoopedTask_OpenMenu, 1); + gfx->isTaskActiveCB = GetCurrentLoopedTaskActive; } - return state; + return gfx; } void CreateMenuHandlerLoopedTask(s32 ltIdx) { - struct Pokenav2Struct * state = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - state->loopedTaskId = CreateLoopedTask(sMenuHandlerLoopTaskFuncs[ltIdx], 1); - state->isTaskActiveCB = GetCurrentLoopedTaskActive; + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + gfx->loopedTaskId = CreateLoopedTask(sMenuHandlerLoopTaskFuncs[ltIdx], 1); + gfx->isTaskActiveCB = GetCurrentLoopedTaskActive; } bool32 IsMenuHandlerLoopedTaskActive(void) { - struct Pokenav2Struct * state = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - return state->isTaskActiveCB(); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + return gfx->isTaskActiveCB(); } void FreeMenuHandlerSubstruct2(void) { - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); DestroyMovingDotsBgTask(); - RemoveWindow(unk->optionDescWindowId); + RemoveWindow(gfx->optionDescWindowId); FreeAndDestroyMainMenuSprites(); DestroyMenuOptionGlowTask(); - FreePokenavSubstruct(POKENAV_SUBSTRUCT_MENU_ICONS); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_MENU_GFX); } static bool32 GetCurrentLoopedTaskActive(void) { - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); - return IsLoopedTaskActive(unk->loopedTaskId); + return IsLoopedTaskActive(gfx->loopedTaskId); } static u32 LoopedTask_OpenMenu(s32 state) { - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); switch (state) { case 0: InitBgTemplates(sPokenavMainMenuBgTemplates, ARRAY_COUNT(sPokenavMainMenuBgTemplates)); DecompressAndCopyTileDataToVram(1, gPokenavMessageBox_Gfx, 0, 0, 0); - SetBgTilemapBuffer(1, unk->bg1TilemapBuffer); + SetBgTilemapBuffer(1, gfx->bg1TilemapBuffer); CopyToBgTilemapBuffer(1, gPokenavMessageBox_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); CopyPaletteIntoBufferUnfaded(gPokenavMessageBox_Pal, 0x10, 0x20); @@ -451,7 +494,7 @@ static u32 LoopedTask_OpenMenu(s32 state) PrintCurrentOptionDescription(); CreateMenuOptionSprites(); CreateMatchCallBlueLightSprite(); - sub_81CA0C8(); + DrawCurrentMenuOptionLabels(); return LT_INC_AND_PAUSE; case 6: if (IsDma3ManagerBusyWithBgCopy_()) @@ -461,7 +504,7 @@ static u32 LoopedTask_OpenMenu(s32 state) ShowBg(1); ShowBg(2); ShowBg(3); - if (unk->pokenavAlreadyOpen) + if (gfx->pokenavAlreadyOpen) PokenavFadeScreen(1); else { @@ -496,7 +539,7 @@ static u32 LoopedTask_OpenMenu(s32 state) ShowLeftHeaderGfx(0, FALSE, FALSE); break; } - SetupCurrentMenuOptionsGfx(); + StartOptionAnimations_Enter(); SetupPokenavMenuScanlineEffects(); return LT_INC_AND_CONTINUE; case 9: @@ -515,7 +558,7 @@ static u32 LoopedTask_MoveMenuCursor(s32 state) { case 0: SetMenuOptionGlow(); - SetMenuOptionGfxParams_CursorMoved(); + StartOptionAnimations_CursorMoved(); PrintCurrentOptionDescription(); PlaySE(SE_SELECT); return LT_INC_AND_PAUSE; @@ -535,7 +578,7 @@ static u32 LoopedTask_OpenConditionMenu(s32 state) { case 0: ResetBldCnt(); - SetupPokenavMenuOptions(); + StartOptionAnimations_Exit(); HideMainOrSubMenuLeftHeader(POKENAV_GFX_MAIN_MENU, 0); PlaySE(SE_SELECT); return LT_INC_AND_PAUSE; @@ -544,11 +587,11 @@ static u32 LoopedTask_OpenConditionMenu(s32 state) return LT_PAUSE; if (AreLeftHeaderSpritesMoving()) return LT_PAUSE; - sub_81CA0C8(); + DrawCurrentMenuOptionLabels(); LoadLeftHeaderGfxForIndex(1); return LT_INC_AND_PAUSE; case 2: - SetupCurrentMenuOptionsGfx(); + StartOptionAnimations_Enter(); ShowLeftHeaderGfx(1, FALSE, FALSE); CreateBgDotPurplePalTask(); PrintCurrentOptionDescription(); @@ -574,7 +617,7 @@ static u32 LoopedTask_ReturnToMainMenu(s32 state) { case 0: ResetBldCnt(); - SetupPokenavMenuOptions(); + StartOptionAnimations_Exit(); HideMainOrSubMenuLeftHeader(POKENAV_GFX_CONDITION_MENU, 0); return LT_INC_AND_PAUSE; case 1: @@ -582,11 +625,11 @@ static u32 LoopedTask_ReturnToMainMenu(s32 state) return LT_PAUSE; if (AreLeftHeaderSpritesMoving()) return LT_PAUSE; - sub_81CA0C8(); + DrawCurrentMenuOptionLabels(); LoadLeftHeaderGfxForIndex(0); return LT_INC_AND_PAUSE; case 2: - SetupCurrentMenuOptionsGfx(); + StartOptionAnimations_Enter(); ShowLeftHeaderGfx(0, FALSE, FALSE); CreateBgDotLightBluePalTask(); PrintCurrentOptionDescription(); @@ -612,17 +655,17 @@ static u32 LoopedTask_OpenConditionSearchMenu(s32 state) { case 0: ResetBldCnt(); - SetupPokenavMenuOptions(); + StartOptionAnimations_Exit(); PlaySE(SE_SELECT); return LT_INC_AND_PAUSE; case 1: if (AreMenuOptionSpritesMoving()) return LT_PAUSE; LoadLeftHeaderGfxForIndex(7); - sub_81CA0C8(); + DrawCurrentMenuOptionLabels(); return LT_INC_AND_PAUSE; case 2: - SetupCurrentMenuOptionsGfx(); + StartOptionAnimations_Enter(); ShowLeftHeaderGfx(7, FALSE, FALSE); PrintCurrentOptionDescription(); return LT_INC_AND_PAUSE; @@ -645,7 +688,7 @@ static u32 LoopedTask_ReturnToConditionMenu(s32 state) { case 0: ResetBldCnt(); - SetupPokenavMenuOptions(); + StartOptionAnimations_Exit(); HideMainOrSubMenuLeftHeader(POKENAV_GFX_SEARCH_MENU, 0); return LT_INC_AND_PAUSE; case 1: @@ -653,10 +696,10 @@ static u32 LoopedTask_ReturnToConditionMenu(s32 state) return LT_PAUSE; if (AreLeftHeaderSpritesMoving()) return LT_PAUSE; - sub_81CA0C8(); + DrawCurrentMenuOptionLabels(); return LT_INC_AND_PAUSE; case 2: - SetupCurrentMenuOptionsGfx(); + StartOptionAnimations_Enter(); PrintCurrentOptionDescription(); return LT_INC_AND_PAUSE; case 3: @@ -716,7 +759,7 @@ static u32 LoopedTask_OpenPokenavFeature(s32 state) return LT_PAUSE; SlideMenuHeaderUp(); ResetBldCnt(); - SetupPokenavMenuOptions(); + StartOptionAnimations_Exit(); switch (GetPokenavMenuType()) { case POKENAV_MENU_TYPE_CONDITION_SEARCH: @@ -757,30 +800,29 @@ static void LoadPokenavOptionPalettes(void) static void FreeAndDestroyMainMenuSprites(void) { - FreeSpriteTilesByTag(3); - FreeSpriteTilesByTag(1); - FreeSpritePaletteByTag(4); - FreeSpritePaletteByTag(5); - FreeSpritePaletteByTag(6); - FreeSpritePaletteByTag(7); - FreeSpritePaletteByTag(8); - FreeSpritePaletteByTag(3); + FreeSpriteTilesByTag(GFXTAG_OPTIONS); + FreeSpriteTilesByTag(GFXTAG_BLUE_LIGHT); + FreeSpritePaletteByTag(PALTAG_OPTIONS_DEFAULT); + FreeSpritePaletteByTag(PALTAG_OPTIONS_BLUE); + FreeSpritePaletteByTag(PALTAG_OPTIONS_PINK); + FreeSpritePaletteByTag(PALTAG_OPTIONS_BEIGE); + FreeSpritePaletteByTag(PALTAG_OPTIONS_RED); + FreeSpritePaletteByTag(PALTAG_BLUE_LIGHT); DestroyMenuOptionSprites(); - DestroyRematchBlueLightSpriteId(); + DestroyRematchBlueLightSprite(); } static void CreateMenuOptionSprites(void) { s32 i, j; - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - // Each menu option is 4 subsprites - for (j = 0; j < 4; j++) + for (j = 0; j < NUM_OPTION_SUBSPRITES; j++) { u8 spriteId = CreateSprite(&sMenuOptionSpriteTemplate, 0x8c, 20 * i + 40, 3); - unk->iconSprites[i][j] = &gSprites[spriteId]; + gfx->iconSprites[i][j] = &gSprites[spriteId]; gSprites[spriteId].x2 = 32 * j; } } @@ -789,97 +831,102 @@ static void CreateMenuOptionSprites(void) static void DestroyMenuOptionSprites(void) { s32 i, j; - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - for (j = 0; j < 4; j++) + for (j = 0; j < NUM_OPTION_SUBSPRITES; j++) { - FreeSpriteOamMatrix(unk->iconSprites[i][j]); - DestroySprite(unk->iconSprites[i][j]); + FreeSpriteOamMatrix(gfx->iconSprites[i][j]); + DestroySprite(gfx->iconSprites[i][j]); } } } -static void sub_81CA0C8(void) +static void DrawCurrentMenuOptionLabels(void) { s32 menuType = GetPokenavMenuType(); - DrawOptionLabelGfx(sPokenavMenuOptionLabelGfx[menuType].tiles, sPokenavMenuOptionLabelGfx[menuType].yStart, sPokenavMenuOptionLabelGfx[menuType].deltaY); + DrawOptionLabelGfx(sPokenavMenuOptionLabelGfx[menuType].gfx, sPokenavMenuOptionLabelGfx[menuType].yStart, sPokenavMenuOptionLabelGfx[menuType].deltaY); } -static void DrawOptionLabelGfx(const u16 *const *tiles, s32 yPos, s32 deltaY) +static void DrawOptionLabelGfx(const u16 *const *optionGfx, s32 yPos, s32 deltaY) { s32 i, j; - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - s32 sp04 = GetSpriteTileStartByTag(3); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + s32 baseTile = GetSpriteTileStartByTag(GFXTAG_OPTIONS); for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - if (*tiles != NULL) + if (*optionGfx != NULL) { - for (j = 0; j < 4; j++) + for (j = 0; j < NUM_OPTION_SUBSPRITES; j++) { - unk->iconSprites[i][j]->oam.tileNum = (*tiles)[0] + sp04 + 8 * j; - unk->iconSprites[i][j]->oam.paletteNum = IndexOfSpritePaletteTag((*tiles)[1] + 4); - unk->iconSprites[i][j]->invisible = TRUE; - unk->iconSprites[i][j]->y = yPos; - unk->iconSprites[i][j]->x = 0x8c; - unk->iconSprites[i][j]->x2 = 32 * j; + gfx->iconSprites[i][j]->oam.tileNum = (*optionGfx)[0] + baseTile + 8 * j; + gfx->iconSprites[i][j]->oam.paletteNum = IndexOfSpritePaletteTag((*optionGfx)[1] + PALTAG_OPTIONS_START); + gfx->iconSprites[i][j]->invisible = TRUE; + gfx->iconSprites[i][j]->y = yPos; + gfx->iconSprites[i][j]->x = OPTION_DEFAULT_X; + gfx->iconSprites[i][j]->x2 = 32 * j; } - unk->iconVisible[i] = TRUE; + gfx->iconVisible[i] = TRUE; } else { - for (j = 0; j < 4; j++) - { - unk->iconSprites[i][j]->invisible = TRUE; - } - unk->iconVisible[i] = FALSE; + for (j = 0; j < NUM_OPTION_SUBSPRITES; j++) + gfx->iconSprites[i][j]->invisible = TRUE; + + gfx->iconVisible[i] = FALSE; } - tiles++; + optionGfx++; yPos += deltaY; } } -static void SetupCurrentMenuOptionsGfx(void) +static void StartOptionAnimations_Enter(void) { s32 i; - struct Pokenav2Struct *icons = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - s32 r8 = GetPokenavCursorPos(); - s32 r7 = 0; - s32 r2; + struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + s32 cursorPos = GetPokenavCursorPos(); + s32 iconCount = 0; + s32 x; for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - if (icons->iconVisible[i]) + if (gfx->iconVisible[i]) { - if (r7++ == r8) + if (iconCount++ == cursorPos) { - r2 = 0x82; - icons->cursorPos = i; + x = OPTION_SELECTED_X; + gfx->cursorPos = i; } else - r2 = 0x8c; - SetMenuOptionGfxParamsInactive(icons->iconSprites[i], 0x100, r2, 0xC); - SetMenuOptionGfxInvisibility(icons->iconSprites[i], FALSE); + { + // Not selected, set default position + x = OPTION_DEFAULT_X; + } + + // Slide new options in + StartOptionSlide(gfx->iconSprites[i], OPTION_EXIT_X, x, 12); + SetOptionInvisibility(gfx->iconSprites[i], FALSE); } else { - SetMenuOptionGfxInvisibility(icons->iconSprites[i], TRUE); + SetOptionInvisibility(gfx->iconSprites[i], TRUE); } } } -static void SetMenuOptionGfxParams_CursorMoved(void) +static void StartOptionAnimations_CursorMoved(void) { s32 i; - struct Pokenav2Struct *icons = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); s32 prevPos = GetPokenavCursorPos(); s32 newPos; + // Get the index of the next visible option for (i = 0, newPos = 0; i < MAX_POKENAV_MENUITEMS; i++) { - if (icons->iconVisible[i]) + if (gfx->iconVisible[i]) { if (newPos == prevPos) { @@ -890,24 +937,28 @@ static void SetMenuOptionGfxParams_CursorMoved(void) } } - SetMenuOptionGfxParamsInactive(icons->iconSprites[icons->cursorPos], 0x82, 0x8c, 0x4); - SetMenuOptionGfxParamsInactive(icons->iconSprites[newPos], 0x8c, 0x82, 0x4); - icons->cursorPos = newPos; + // The selected option slides out a bit and the previously + // selected option slides back to its original position. + StartOptionSlide(gfx->iconSprites[gfx->cursorPos], OPTION_SELECTED_X, OPTION_DEFAULT_X, 4); + StartOptionSlide(gfx->iconSprites[newPos], OPTION_DEFAULT_X, OPTION_SELECTED_X, 4); + gfx->cursorPos = newPos; } -static void SetupPokenavMenuOptions(void) +static void StartOptionAnimations_Exit(void) { s32 i; - struct Pokenav2Struct *optionIcons = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - if (optionIcons->iconVisible[i]) + if (gfx->iconVisible[i]) { - if (optionIcons->cursorPos != i) - SetMenuOptionGfxParamsInactive(optionIcons->iconSprites[i], 0x8C, 0x100, 0x8); + // Unselected options slide out, + // selected option zooms in + if (gfx->cursorPos != i) + StartOptionSlide(gfx->iconSprites[i], OPTION_DEFAULT_X, OPTION_EXIT_X, 8); else - SetMenuOptionGfxParamsActive(optionIcons->iconSprites[i]); + StartOptionZoom(gfx->iconSprites[i]); } } } @@ -915,120 +966,145 @@ static void SetupPokenavMenuOptions(void) static bool32 AreMenuOptionSpritesMoving(void) { s32 i; - struct Pokenav2Struct *icons = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); for (i = 0; i < MAX_POKENAV_MENUITEMS; i++) { - if (icons->iconSprites[i][0]->callback != SpriteCallbackDummy) + if (gfx->iconSprites[i][0]->callback != SpriteCallbackDummy) return TRUE; } - if (icons->otherIconsInMotion) + if (gfx->numIconsBlending != 0) return TRUE; return FALSE; } -static void SetMenuOptionGfxParamsInactive(struct Sprite ** sprites, s32 x, s32 a2, s32 a3) +#define sSlideTime data[0] +#define sSlideAccel data[1] +#define sSlideSpeed data[2] +#define sSlideEndX data[7] + +static void StartOptionSlide(struct Sprite ** sprites, s32 startX, s32 endX, s32 time) { s32 i; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_OPTION_SUBSPRITES; i++) { - (*sprites)->x = x; - (*sprites)->data[0] = a3; - (*sprites)->data[1] = 16 * (a2 - x) / a3; - (*sprites)->data[2] = 16 * x; - (*sprites)->data[7] = a2; - (*sprites)->callback = sub_81CA474; + (*sprites)->x = startX; + (*sprites)->sSlideTime = time; + (*sprites)->sSlideAccel = 16 * (endX - startX) / time; + (*sprites)->sSlideSpeed = 16 * startX; + (*sprites)->sSlideEndX = endX; + (*sprites)->callback = SpriteCB_OptionSlide; sprites++; } } -static void SetMenuOptionGfxParamsActive(struct Sprite ** sprites) +#define sZoomDelay data[0] +#define sZoomSetAffine data[1] +#define sZoomSpeed data[2] +#define sZoomSubspriteId data[7] + +#define tBlendDelay data[0] +#define tBlendState data[1] +#define tBlendTarget1 data[2] +#define tBlendTarget2 data[3] +#define tBlendCounter data[4] + +// 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) { s32 i; - struct Pokenav2Struct * unk = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); u8 taskId; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_OPTION_SUBSPRITES; i++) { (*sprites)->oam.objMode = ST_OAM_OBJ_BLEND; (*sprites)->oam.affineMode = ST_OAM_AFFINE_DOUBLE; - (*sprites)->callback = sub_81CA4AC; - (*sprites)->data[0] = 8; - (*sprites)->data[1] = 0; - (*sprites)->data[7] = i; + (*sprites)->callback = SpriteCB_OptionZoom; + (*sprites)->sZoomDelay = 8; + (*sprites)->sZoomSetAffine = FALSE; + (*sprites)->sZoomSubspriteId = i; InitSpriteAffineAnim(sprites[0]); StartSpriteAffineAnim(sprites[0], 0); sprites++; } - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0x10, 0x00)); - taskId = CreateTask(sub_81CA580, 3); - gTasks[taskId].data[0] = 8; - unk->otherIconsInMotion++; + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); + taskId = CreateTask(Task_OptionBlend, 3); + gTasks[taskId].tBlendDelay = 8; + gfx->numIconsBlending++; } -static void SetMenuOptionGfxInvisibility(struct Sprite ** sprites, bool32 invisible) +static void SetOptionInvisibility(struct Sprite ** sprites, bool32 invisible) { s32 i; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_OPTION_SUBSPRITES; i++) { (*sprites)->invisible = invisible; sprites++; } } -static void sub_81CA474(struct Sprite * sprite) +static void SpriteCB_OptionSlide(struct Sprite * sprite) { - sprite->data[0]--; - if (sprite->data[0] != -1) + sprite->sSlideTime--; + if (sprite->sSlideTime != -1) { - sprite->data[2] += sprite->data[1]; - sprite->x = sprite->data[2] >> 4; + sprite->sSlideSpeed += sprite->sSlideAccel; + sprite->x = sprite->sSlideSpeed >> 4; } else { - sprite->x = sprite->data[7]; + sprite->x = sprite->sSlideEndX; sprite->callback = SpriteCallbackDummy; } } -static void sub_81CA4AC(struct Sprite * sprite) +#undef sSlideTime +#undef sSlideAccel +#undef sSlideSpeed +#undef sSlideEndX + +static void SpriteCB_OptionZoom(struct Sprite * sprite) { - s32 r0; - s32 r1; - if (sprite->data[0] == 0) + s32 temp; + s32 x; + if (sprite->sZoomDelay == 0) { - if (sprite->data[1] == 0) + if (!sprite->sZoomSetAffine) { StartSpriteAffineAnim(sprite, 1); - sprite->data[1]++; - sprite->data[2] = 0x100; + sprite->sZoomSetAffine++; + sprite->sZoomSpeed = 0x100; sprite->x += sprite->x2; sprite->x2 = 0; } else { - sprite->data[2] += 16; - r0 = sprite->data[2]; - r1 = r0 >> 3; - r1 = (r1 - 32) / 2; - switch (sprite->data[7]) + sprite->sZoomSpeed += 16; + temp = sprite->sZoomSpeed; + x = temp >> 3; + x = (x - 32) / 2; + + // Each subsprite needs to zoom to a different degree/direction + switch (sprite->sZoomSubspriteId) { case 0: - sprite->x2 = -r1 * 3; + sprite->x2 = -x * 3; break; case 1: - sprite->x2 = -r1; + sprite->x2 = -x; break; case 2: - sprite->x2 = r1; + sprite->x2 = x; break; case 3: - sprite->x2 = r1 * 3; + sprite->x2 = x * 3; break; } if (sprite->affineAnimEnded) @@ -1044,68 +1120,82 @@ static void sub_81CA4AC(struct Sprite * sprite) } else { - sprite->data[0]--; + sprite->sZoomDelay--; } } -static void sub_81CA580(u8 taskId) +#undef sZoomDelay +#undef sZoomSetAffine +#undef sZoomSpeed +#undef sZoomSubspriteId + +static void Task_OptionBlend(u8 taskId) { s16 * data = gTasks[taskId].data; - if (data[0] == 0) + if (tBlendDelay == 0) { - switch (data[1]) + switch (tBlendState) { case 0: - data[2] = 16; - data[3] = 0; + tBlendTarget1 = 16; + tBlendTarget2 = 0; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_NONE | BLDCNT_TGT2_ALL); - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0x10, 0x00)); - data[1]++; + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); + tBlendState++; break; case 1: - if (data[4] & 1) + if (tBlendCounter & 1) { - data[2] -= 3; - if (data[2] < 0) - data[2] = 0; + tBlendTarget1 -= 3; + if (tBlendTarget1 < 0) + tBlendTarget1 = 0; } else { - data[3] += 3; - if (data[3] > 16) - data[3] = 16; + tBlendTarget2 += 3; + if (tBlendTarget2 > 16) + tBlendTarget2 = 16; } - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(data[2], data[3])); - data[4]++; - if (data[4] == 12) + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(tBlendTarget1, tBlendTarget2)); + tBlendCounter++; + if (tBlendCounter == 12) { - ((struct Pokenav2Struct *)GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS))->otherIconsInMotion--; - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0x00, 0x10)); + ((struct Pokenav_MenuGfx *)GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX))->numIconsBlending--; + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16)); DestroyTask(taskId); } break; } } else - data[0]--; + { + tBlendDelay--; + } } +#undef tBlendDelay +#undef tBlendState +#undef tBlendTarget1 +#undef tBlendTarget2 +#undef tBlendCounter + +// Blue light that blinks if there are available rematches nearby static void CreateMatchCallBlueLightSprite(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); u8 spriteId = CreateSprite(&sMatchCallBlueLightSpriteTemplate, 0x10, 0x60, 4); - ptr->blueLightSpriteId = &gSprites[spriteId]; - if (PlayerHasTrainerRematches()) - ptr->blueLightSpriteId->callback = SpriteCB_BlinkingBlueLight; + gfx->blueLightSprite = &gSprites[spriteId]; + if (AreAnyTrainerRematchesNearby()) + gfx->blueLightSprite->callback = SpriteCB_BlinkingBlueLight; else - ptr->blueLightSpriteId->invisible = TRUE; + gfx->blueLightSprite->invisible = TRUE; } -static void DestroyRematchBlueLightSpriteId(void) +static void DestroyRematchBlueLightSprite(void) { - struct Pokenav2Struct *ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - DestroySprite(ptr->blueLightSpriteId); + struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + DestroySprite(gfx->blueLightSprite); } static void SpriteCB_BlinkingBlueLight(struct Sprite * sprite) @@ -1120,33 +1210,33 @@ static void SpriteCB_BlinkingBlueLight(struct Sprite * sprite) static void AddOptionDescriptionWindow(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); - ptr->optionDescWindowId = AddWindow(&sOptionDescWindowTemplate); - PutWindowTilemap(ptr->optionDescWindowId); - FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - CopyWindowToVram(ptr->optionDescWindowId, COPYWIN_FULL); + gfx->optionDescWindowId = AddWindow(&sOptionDescWindowTemplate); + PutWindowTilemap(gfx->optionDescWindowId); + FillWindowPixelBuffer(gfx->optionDescWindowId, PIXEL_FILL(6)); + CopyWindowToVram(gfx->optionDescWindowId, COPYWIN_FULL); } static void PrintCurrentOptionDescription(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); int menuItem = GetCurrentMenuItemId(); - const u8 * s = sPageDescriptions[menuItem]; - u32 width = GetStringWidth(FONT_NORMAL, s, -1); - FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - AddTextPrinterParameterized3(ptr->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors, 0, s); + 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); } // Printed when Ribbons is selected if no PC/party mons have ribbons // Can occur by obtaining a mon with a ribbon and then releasing all ribbon winners static void PrintNoRibbonWinners(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); const u8 * s = gText_NoRibbonWinners; u32 width = GetStringWidth(FONT_NORMAL, s, -1); - FillWindowPixelBuffer(ptr->optionDescWindowId, PIXEL_FILL(6)); - AddTextPrinterParameterized3(ptr->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors2, 0, s); + FillWindowPixelBuffer(gfx->optionDescWindowId, PIXEL_FILL(6)); + AddTextPrinterParameterized3(gfx->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors2, 0, s); } static bool32 IsDma3ManagerBusyWithBgCopy_(void) @@ -1156,14 +1246,14 @@ static bool32 IsDma3ManagerBusyWithBgCopy_(void) static void CreateMovingBgDotsTask(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - ptr->bg3ScrollTaskId = CreateTask(Task_MoveBgDots, 2); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + gfx->bg3ScrollTaskId = CreateTask(Task_MoveBgDots, 2); } static void DestroyMovingDotsBgTask(void) { - struct Pokenav2Struct * ptr = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_ICONS); - DestroyTask(ptr->bg3ScrollTaskId); + struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX); + DestroyTask(gfx->bg3ScrollTaskId); } static void Task_MoveBgDots(u8 taskId) @@ -1269,8 +1359,8 @@ static void SetMenuOptionGlow(void) int menuType = GetPokenavMenuType(); int cursorPos = GetPokenavCursorPos(); int r4 = sPokenavMenuOptionLabelGfx[menuType].deltaY * cursorPos + sPokenavMenuOptionLabelGfx[menuType].yStart - 8; - CpuFill16(0, gScanlineEffectRegBuffers[0], 0x140); - CpuFill16(0, gScanlineEffectRegBuffers[1], 0x140); + CpuFill16(0, gScanlineEffectRegBuffers[0], DISPLAY_HEIGHT * 2); + CpuFill16(0, gScanlineEffectRegBuffers[1], DISPLAY_HEIGHT * 2); CpuFill16(RGB(16, 23, 28), &gScanlineEffectRegBuffers[0][r4], 0x20); CpuFill16(RGB(16, 23, 28), &gScanlineEffectRegBuffers[1][r4], 0x20); } diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 89bd2f7c7517..4ea3b3b193da 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -74,7 +74,7 @@ static u32 LoopedTask_ExitRegionMap(s32); extern const u16 gRegionMapCityZoomTiles_Pal[]; extern const u32 gRegionMapCityZoomText_Gfx[]; -static const u16 sMapSecInfoWindow_Pal[] = INCBIN_U16("graphics/pokenav/region_map_info_window.gbapal"); +static const u16 sMapSecInfoWindow_Pal[] = INCBIN_U16("graphics/pokenav/region_map/info_window.gbapal"); static const u32 sRegionMapCityZoomTiles_Gfx[] = INCBIN_U32("graphics/pokenav/zoom_tiles.4bpp.lz"); #include "data/region_map/city_map_tilemaps.h" @@ -346,7 +346,7 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) return LT_PAUSE; UpdateMapSecInfoWindow(state); - sub_81C7B40(); + FadeToBlackExceptPrimary(); return LT_INC_AND_PAUSE; case 5: if (IsDma3ManagerBusyWithBgCopy_(state)) diff --git a/src/region_map.c b/src/region_map.c index 021ef7c710e1..759a26e84a4c 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -116,19 +116,18 @@ static void CB_FadeInFlyMap(void); static void CB_HandleFlyMapInput(void); static void CB_ExitFlyMap(void); -// .rodata - -static const u16 sRegionMapCursorPal[] = INCBIN_U16("graphics/pokenav/cursor.gbapal"); -static const u32 sRegionMapCursorSmallGfxLZ[] = INCBIN_U32("graphics/pokenav/cursor_small.4bpp.lz"); -static const u32 sRegionMapCursorLargeGfxLZ[] = INCBIN_U32("graphics/pokenav/cursor_large.4bpp.lz"); +// NOTE: Some of the below graphics are not in graphics/pokenav/region_map +// because porymap expects them to be in their current location. +static const u16 sRegionMapCursorPal[] = INCBIN_U16("graphics/pokenav/region_map/cursor.gbapal"); +static const u32 sRegionMapCursorSmallGfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/cursor_small.4bpp.lz"); +static const u32 sRegionMapCursorLargeGfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/cursor_large.4bpp.lz"); static const u16 sRegionMapBg_Pal[] = INCBIN_U16("graphics/pokenav/region_map.gbapal"); static const u32 sRegionMapBg_GfxLZ[] = INCBIN_U32("graphics/pokenav/region_map.8bpp.lz"); static const u32 sRegionMapBg_TilemapLZ[] = INCBIN_U32("graphics/pokenav/region_map_map.bin.lz"); -static const u16 sRegionMapPlayerIcon_BrendanPal[] = INCBIN_U16("graphics/pokenav/brendan_icon.gbapal"); -static const u8 sRegionMapPlayerIcon_BrendanGfx[] = INCBIN_U8("graphics/pokenav/brendan_icon.4bpp"); -static const u16 sRegionMapPlayerIcon_MayPal[] = INCBIN_U16("graphics/pokenav/may_icon.gbapal"); -static const u8 sRegionMapPlayerIcon_MayGfx[] = INCBIN_U8("graphics/pokenav/may_icon.4bpp"); - +static const u16 sRegionMapPlayerIcon_BrendanPal[] = INCBIN_U16("graphics/pokenav/region_map/brendan_icon.gbapal"); +static const u8 sRegionMapPlayerIcon_BrendanGfx[] = INCBIN_U8("graphics/pokenav/region_map/brendan_icon.4bpp"); +static const u16 sRegionMapPlayerIcon_MayPal[] = INCBIN_U16("graphics/pokenav/region_map/may_icon.gbapal"); +static const u8 sRegionMapPlayerIcon_MayGfx[] = INCBIN_U8("graphics/pokenav/region_map/may_icon.4bpp"); static const u8 sRegionMap_MapSectionLayout[] = INCBIN_U8("graphics/pokenav/region_map_section_layout.bin"); #include "data/region_map/region_map_entries.h" @@ -283,15 +282,11 @@ static const u8 sMapSecIdsOffMap[] = MAPSEC_NAVEL_ROCK }; -static const u16 sRegionMapFramePal[] = INCBIN_U16("graphics/pokenav/map_frame.gbapal"); - -static const u32 sRegionMapFrameGfxLZ[] = INCBIN_U32("graphics/pokenav/map_frame.4bpp.lz"); - -static const u32 sRegionMapFrameTilemapLZ[] = INCBIN_U32("graphics/pokenav/map_frame.bin.lz"); - -static const u16 sFlyTargetIcons_Pal[] = INCBIN_U16("graphics/pokenav/fly_target_icons.gbapal"); - -static const u32 sFlyTargetIcons_Gfx[] = INCBIN_U32("graphics/pokenav/fly_target_icons.4bpp.lz"); +static const u16 sRegionMapFramePal[] = INCBIN_U16("graphics/pokenav/region_map/frame.gbapal"); +static const u32 sRegionMapFrameGfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/frame.4bpp.lz"); +static const u32 sRegionMapFrameTilemapLZ[] = INCBIN_U32("graphics/pokenav/region_map/frame.bin.lz"); +static const u16 sFlyTargetIcons_Pal[] = INCBIN_U16("graphics/pokenav/region_map/fly_target_icons.gbapal"); +static const u32 sFlyTargetIcons_Gfx[] = INCBIN_U32("graphics/pokenav/region_map/fly_target_icons.4bpp.lz"); static const u8 sMapHealLocations[][3] = { From ffe2970e30f64f46a7539ac69d61ab4ea353a92c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 17:13:50 -0500 Subject: [PATCH 410/762] Rename pokenav menu handler files --- include/pokenav.h | 4 ++-- ld_script.txt | 8 ++++---- src/{pokenav_menu_handler_1.c => pokenav_menu_handler.c} | 0 ...okenav_menu_handler_2.c => pokenav_menu_handler_gfx.c} | 0 4 files changed, 6 insertions(+), 6 deletions(-) rename src/{pokenav_menu_handler_1.c => pokenav_menu_handler.c} (100%) rename src/{pokenav_menu_handler_2.c => pokenav_menu_handler_gfx.c} (100%) diff --git a/include/pokenav.h b/include/pokenav.h index 6dc88cab7971..59f670089621 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -370,7 +370,7 @@ bool32 WaitForPokenavShutdownFade(void); void SetActiveMenuLoopTasks(void *func1, void *func2); void ShutdownPokenav(void); -// pokenav_menu_handler_1.c +// pokenav_menu_handler.c bool32 PokenavCallback_Init_MainMenuCursorOnMap(void); bool32 PokenavCallback_Init_MainMenuCursorOnMatchCall(void); bool32 PokenavCallback_Init_MainMenuCursorOnRibbons(void); @@ -383,7 +383,7 @@ int GetPokenavCursorPos(void); int GetCurrentMenuItemId(void); u16 GetHelpBarTextId(void); -// pokenav_menu_handler_2.c +// pokenav_menu_handler_gfx.c bool32 OpenPokenavMenuInitial(void); bool32 OpenPokenavMenuNotInitial(void); void CreateMenuHandlerLoopedTask(s32 ltIdx); diff --git a/ld_script.txt b/ld_script.txt index c4283265d823..257fb3c6e2d0 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -311,8 +311,8 @@ SECTIONS { src/pokenav.o(.text); src/pokenav_main_menu.o(.text); src/pokenav_match_call_ui.o(.text); - src/pokenav_menu_handler_1.o(.text); - src/pokenav_menu_handler_2.o(.text); + src/pokenav_menu_handler.o(.text); + src/pokenav_menu_handler_gfx.o(.text); src/pokenav_match_call_1.o(.text); src/pokenav_match_call_2.o(.text); src/pokenav_region_map.o(.text); @@ -666,8 +666,8 @@ SECTIONS { src/pokenav.o(.rodata); src/pokenav_main_menu.o(.rodata); src/pokenav_match_call_ui.o(.rodata); - src/pokenav_menu_handler_1.o(.rodata); - src/pokenav_menu_handler_2.o(.rodata); + src/pokenav_menu_handler.o(.rodata); + src/pokenav_menu_handler_gfx.o(.rodata); src/pokenav_match_call_1.o(.rodata); src/pokenav_match_call_2.o(.rodata); src/pokenav_region_map.o(.rodata); diff --git a/src/pokenav_menu_handler_1.c b/src/pokenav_menu_handler.c similarity index 100% rename from src/pokenav_menu_handler_1.c rename to src/pokenav_menu_handler.c diff --git a/src/pokenav_menu_handler_2.c b/src/pokenav_menu_handler_gfx.c similarity index 100% rename from src/pokenav_menu_handler_2.c rename to src/pokenav_menu_handler_gfx.c From da5752fd0d94a1b7fdef354b7fe4bfb055b4a545 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 17:28:06 -0500 Subject: [PATCH 411/762] Start match call menu doc --- .../{arrow.png => options_cursor.png} | Bin include/pokenav.h | 14 +- src/pokenav_conditions_gfx.c | 4 +- src/pokenav_conditions_search_results.c | 6 +- src/pokenav_main_menu.c | 22 +- src/pokenav_match_call_1.c | 14 +- src/pokenav_match_call_2.c | 791 +++++++++--------- src/pokenav_match_call_ui.c | 4 +- src/pokenav_menu_handler_gfx.c | 6 +- src/pokenav_region_map.c | 4 +- src/pokenav_ribbons_list.c | 6 +- src/pokenav_ribbons_summary.c | 4 +- 12 files changed, 452 insertions(+), 423 deletions(-) rename graphics/pokenav/match_call/{arrow.png => options_cursor.png} (100%) diff --git a/graphics/pokenav/match_call/arrow.png b/graphics/pokenav/match_call/options_cursor.png similarity index 100% rename from graphics/pokenav/match_call/arrow.png rename to graphics/pokenav/match_call/options_cursor.png diff --git a/include/pokenav.h b/include/pokenav.h index 59f670089621..ba9f1cbe95df 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -276,7 +276,7 @@ enum POKENAV_MC_FUNC_CANCEL, POKENAV_MC_FUNC_CALL_MSG, POKENAV_MC_FUNC_NEARBY_MSG, - POKENAV_MC_FUNC_10, + POKENAV_MC_FUNC_EXIT_CALL, POKENAV_MC_FUNC_SHOW_CHECK_PAGE, POKENAV_MC_FUNC_CHECK_PAGE_UP, POKENAV_MC_FUNC_CHECK_PAGE_DOWN, @@ -293,6 +293,14 @@ enum POKENAV_MAP_FUNC_EXIT, }; +// Modes for PokenavFadeScreen +enum { + POKENAV_FADE_TO_BLACK, + POKENAV_FADE_FROM_BLACK, + POKENAV_FADE_TO_BLACK_ALL, + POKENAV_FADE_FROM_BLACK_ALL, +}; + // pokenav.c void SetSelectedConditionSearch(u32); u32 GetSelectedConditionSearch(void); @@ -359,8 +367,8 @@ bool32 MainMenuLoopedTaskIsBusy(void); void SetLeftHeaderSpritesInvisibility(void); void PokenavCopyPalette(const u16 *a0, const u16 *a1, int a2, int a3, int a4, u16 *palette); void FadeToBlackExceptPrimary(void); -struct Sprite *PauseSpinningPokenavSprite(void); -void ResumeSpinningPokenavSprite(void); +struct Sprite *GetSpinningPokenavSprite(void); +void HideSpinningPokenavSprite(void); void UpdateRegionMapRightHeaderTiles(u32 arg0); void HideMainOrSubMenuLeftHeader(u32 id, bool32 onRightSide); void SlideMenuHeaderUp(void); diff --git a/src/pokenav_conditions_gfx.c b/src/pokenav_conditions_gfx.c index a1593983d273..d2fb715ab80b 100644 --- a/src/pokenav_conditions_gfx.c +++ b/src/pokenav_conditions_gfx.c @@ -295,7 +295,7 @@ static u32 LoopedTask_OpenConditionGraphMenu(s32 state) PrintHelpBarText(HELPBAR_CONDITION_MON_STATUS); return LT_INC_AND_PAUSE; case 15: - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); if (!IsConditionMenuSearchMode()) { LoadLeftHeaderGfxForIndex(POKENAV_GFX_PARTY_MENU); @@ -352,7 +352,7 @@ static u32 LoopedTask_ExitConditionGraphMenu(s32 state) ToggleGraphData(FALSE); return LT_INC_AND_CONTINUE; case 2: - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); if (!IsConditionMenuSearchMode()) SlideMenuHeaderDown(); return LT_INC_AND_PAUSE; diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index d9bd2273f6d7..770d0d01ab7e 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -467,7 +467,7 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) ShowLeftHeaderGfx(searchGfxId, 1, 0); ShowLeftHeaderGfx(POKENAV_GFX_CONDITION_MENU, 1, 0); } - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; case 5: if (IsPaletteFadeActive()) @@ -617,7 +617,7 @@ static u32 LoopedTask_ExitConditionSearchMenu(s32 state) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); SlideMenuHeaderDown(); return LT_INC_AND_PAUSE; case 1: @@ -637,7 +637,7 @@ static u32 LoopedTask_SelectSearchResult(s32 state) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); return LT_INC_AND_PAUSE; case 1: if (IsPaletteFadeActive()) diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 77faecaa3980..318ed520d870 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -473,7 +473,6 @@ void PokenavFillPalette(u32 palIndex, u16 fillValue) void PokenavCopyPalette(const u16 *src, const u16 *dest, int size, int a3, int a4, u16 *palette) { - if (a4 == 0) { CpuCopy16(src, palette, size * 2); @@ -496,11 +495,11 @@ void PokenavCopyPalette(const u16 *src, const u16 *dest, int size, int a3, int a g1 = ((((GET_G(*dest) << 8) - (g << 8)) / a3) * a4) >> 8; b1 = ((((GET_B(*dest) << 8) - (b << 8)) / a3) * a4) >> 8; - r = (r + r1) & 0x1F; //_RGB(r + r1, g + g1, b + b1); doesn't match; I have to assign the value of ((r + r1) & 0x1F) to r - g = (g + g1) & 0x1F; //See above - b = (b + b1) & 0x1F; //See above + r = (r + r1) & 0x1F; //_RGB(r + r1, g + g1, b + b1); doesn't match + g = (g + g1) & 0x1F; + b = (b + b1) & 0x1F; - *palette = RGB2(r, g, b); //See above comment + *palette = RGB2(r, g, b); src++, dest++; palette++; @@ -514,16 +513,16 @@ void PokenavFadeScreen(s32 fadeType) switch (fadeType) { - case 0: + case POKENAV_FADE_TO_BLACK: BeginNormalPaletteFade(menu->palettes, -2, 0, 16, RGB_BLACK); break; - case 1: + case POKENAV_FADE_FROM_BLACK: BeginNormalPaletteFade(menu->palettes, -2, 16, 0, RGB_BLACK); break; - case 2: + case POKENAV_FADE_TO_BLACK_ALL: BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK); break; - case 3: + case POKENAV_FADE_FROM_BLACK_ALL: BeginNormalPaletteFade(PALETTES_ALL, -2, 16, 0, RGB_BLACK); break; } @@ -608,7 +607,7 @@ static void SpriteCB_SpinningPokenav(struct Sprite *sprite) sprite->y2 = (GetBgY(0) / 256u) * -1; } -struct Sprite *PauseSpinningPokenavSprite(void) +struct Sprite *GetSpinningPokenavSprite(void) { struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); @@ -616,10 +615,11 @@ struct Sprite *PauseSpinningPokenavSprite(void) return menu->spinningPokenav; } -void ResumeSpinningPokenavSprite(void) +void HideSpinningPokenavSprite(void) { struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); + // Move sprite so it's no longer visible menu->spinningPokenav->x = 220; menu->spinningPokenav->y = 12; menu->spinningPokenav->callback = SpriteCB_SpinningPokenav; diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index 5612ba6cb420..63b8fcbf53d2 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -32,9 +32,9 @@ static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *); static u32 GetExitMatchCallMenuId(struct Pokenav3Struct *); static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *); static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *); -static u32 CB2_HandleCallInput(struct Pokenav3Struct *); +static u32 CB2_HandleCallExitInput(struct Pokenav3Struct *); static u32 sub_81CAD20(s32); -static bool32 sub_81CB1D0(void); +static bool32 ShouldDoNearbyMessage(void); #include "data/text/match_call_messages.h" @@ -155,8 +155,8 @@ static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *state) if (GetPokenavMode() == POKENAV_MODE_FORCE_CALL_READY) SetPokenavMode(POKENAV_MODE_FORCE_CALL_EXIT); - state->callback = CB2_HandleCallInput; - if (sub_81CB1D0()) + state->callback = CB2_HandleCallExitInput; + if (ShouldDoNearbyMessage()) return POKENAV_MC_FUNC_NEARBY_MSG; return POKENAV_MC_FUNC_CALL_MSG; @@ -191,12 +191,12 @@ static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *state) return POKENAV_MC_FUNC_NONE; } -static u32 CB2_HandleCallInput(struct Pokenav3Struct *state) +static u32 CB2_HandleCallExitInput(struct Pokenav3Struct *state) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { state->callback = CB2_HandleMatchCallInput; - return POKENAV_MC_FUNC_10; + return POKENAV_MC_FUNC_EXIT_CALL; } return POKENAV_MC_FUNC_NONE; @@ -486,7 +486,7 @@ bool32 unref_sub_81CB16C(void) return FALSE; } -static bool32 sub_81CB1D0(void) +static bool32 ShouldDoNearbyMessage(void) { struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); int selection = GetSelectedPokenavListIndex(); diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 29cb0a06d9b6..e91257d14aa4 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -24,100 +24,105 @@ #include "constants/region_map_sections.h" #include "constants/songs.h" -struct Pokenav4Struct +#define GFXTAG_CURSOR 7 +#define GFXTAG_TRAINER_PIC 8 +#define PALTAG_CURSOR 12 +#define PALTAG_TRAINER_PIC 13 + +struct Pokenav_MatchCallGfx { bool32 (*isTaskActiveCB)(void); u32 loopTaskId; - u8 filler8[0x6]; - u8 unkE; + u8 filler8[6]; + bool8 unkE; u8 unkF; u16 locWindowId; u16 infoBoxWindowId; u16 msgBoxWindowId; - s16 unk16; + s16 pageDelta; u8 unused18; u8 unused19; - u16 unk1A; + u16 trainerPicPalOffset; struct Sprite *optionsCursorSprite; struct Sprite *trainerPicSprite; - u8 unk24[0x800]; - u8 unk824[0x800]; - u8 unk1024[0x800]; - u8 *unk1824; - u8 unk1828[0x800]; - u8 unk2028[0x20]; + u8 bgTilemapBuffer1[BG_SCREEN_SIZE]; + u8 unusedTilemapBuffer[BG_SCREEN_SIZE]; + u8 bgTilemapBuffer2[BG_SCREEN_SIZE]; + u8 *trainerPicGfxPtr; + u8 trainerPicGfx[0x800]; + u8 trainerPicPal[0x20]; }; static bool32 GetCurrentLoopedTaskActive(void); static u32 LoopedTask_OpenMatchCall(s32); static void InitMatchCallPokenavListMenuTemplate(void); static void sub_81CBC1C(void); -static void RemoveMatchCallSprites(void); -static void sub_81CC034(struct Pokenav4Struct *); -static void DrawMatchCallLeftColumnWindows(struct Pokenav4Struct *); -static void UpdateMatchCallInfoBox(struct Pokenav4Struct *); -static void PrintMatchCallLocation(struct Pokenav4Struct *, int); -static void sub_81CC214(void); -static void sub_81CBC38(int); -static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *); -static bool32 sub_81CBFC4(struct Pokenav4Struct *); -static void UpdateCursorGfxPos(struct Pokenav4Struct *, int); -static bool32 IsDma3ManagerBusyWithBgCopy1(struct Pokenav4Struct *); -static void UpdateWindowsReturnToTrainerList(struct Pokenav4Struct *); -static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *); -static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav4Struct *); -static void PrintCallingDots(struct Pokenav4Struct *); -static bool32 WaitForCallingDotsText(struct Pokenav4Struct *); -static void PrintMatchCallMessage(struct Pokenav4Struct *); -static bool32 WaitForMatchCallMessageText(struct Pokenav4Struct *); -static void DrawMsgBoxForCloseByMsg(struct Pokenav4Struct *); -static void PrintTrainerIsCloseBy(struct Pokenav4Struct *); -static bool32 WaitForTrainerIsCloseByText(struct Pokenav4Struct *); -static void DrawSpinningPokenavForCall(struct Pokenav4Struct *); -static bool32 WaitForSpinningPokenav(struct Pokenav4Struct *); -static void UpdateWindowsToShowCheckPage(struct Pokenav4Struct *); -static void LoadCheckPageTrainerPic(struct Pokenav4Struct *); -static bool32 WaitForTrainerPic(struct Pokenav4Struct *); -static void TrainerPicSlideOffscreen(struct Pokenav4Struct *); -static void sub_81CBC64(u8 taskId); -static void TryDrawRematchPokeballIcon(u16 windowId, u32, u32); -static void PrintNumberRegisteredLabel(u16 windowId); -static void PrintNumberRegistered(u16 windowId); -static void PrintNumberOfBattlesLabel(u16 windowId); -static void PrintNumberOfBattles(u16 windowId); -static void PrintMatchCallInfoLabel(u16 windowId, const u8 *str, int top); -static void PrintMatchCallInfoNumber(u16 windowId, const u8 *str, int top); -static void sub_81CC2F0(struct Pokenav4Struct *, int); -static void CloseMatchCallSelectOptionsWindow(struct Pokenav4Struct *); +static void FreeMatchCallSprites(void); +static void LoadCallWindowAndFade(struct Pokenav_MatchCallGfx *); +static void DrawMatchCallLeftColumnWindows(struct Pokenav_MatchCallGfx *); +static void UpdateMatchCallInfoBox(struct Pokenav_MatchCallGfx *); +static void PrintMatchCallLocation(struct Pokenav_MatchCallGfx *, int); +static void AllocMatchCallSprites(void); +static void SetPokeballIconsFlashing(bool32); +static void PrintMatchCallSelectionOptions(struct Pokenav_MatchCallGfx *); +static bool32 ShowOptionsCursor(struct Pokenav_MatchCallGfx *); +static void UpdateCursorGfxPos(struct Pokenav_MatchCallGfx *, int); +static bool32 IsDma3ManagerBusyWithBgCopy1(struct Pokenav_MatchCallGfx *); +static void UpdateWindowsReturnToTrainerList(struct Pokenav_MatchCallGfx *); +static void DrawMsgBoxForMatchCallMsg(struct Pokenav_MatchCallGfx *); +static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav_MatchCallGfx *); +static void PrintCallingDots(struct Pokenav_MatchCallGfx *); +static bool32 WaitForCallingDotsText(struct Pokenav_MatchCallGfx *); +static void PrintMatchCallMessage(struct Pokenav_MatchCallGfx *); +static bool32 WaitForMatchCallMessageText(struct Pokenav_MatchCallGfx *); +static void DrawMsgBoxForCloseByMsg(struct Pokenav_MatchCallGfx *); +static void PrintTrainerIsCloseBy(struct Pokenav_MatchCallGfx *); +static bool32 WaitForTrainerIsCloseByText(struct Pokenav_MatchCallGfx *); +static void EraseCallMessageBox(struct Pokenav_MatchCallGfx *); +static bool32 WaitForCallMessageBoxErase(struct Pokenav_MatchCallGfx *); +static void UpdateWindowsToShowCheckPage(struct Pokenav_MatchCallGfx *); +static void LoadCheckPageTrainerPic(struct Pokenav_MatchCallGfx *); +static bool32 WaitForTrainerPic(struct Pokenav_MatchCallGfx *); +static void TrainerPicSlideOffscreen(struct Pokenav_MatchCallGfx *); +static void Task_FlashPokeballIcons(u8); +static void TryDrawRematchPokeballIcon(u16, u32, u32); +static void PrintNumberRegisteredLabel(u16); +static void PrintNumberRegistered(u16); +static void PrintNumberOfBattlesLabel(u16); +static void PrintNumberOfBattles(u16); +static void PrintMatchCallInfoLabel(u16, const u8 *, int); +static void PrintMatchCallInfoNumber(u16, const u8 *, int); +static void CreateOptionsCursorSprite(struct Pokenav_MatchCallGfx *, int); +static void CloseMatchCallSelectOptionsWindow(struct Pokenav_MatchCallGfx *); static struct Sprite *CreateTrainerPicSprite(void); -static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite); -static void SpriteCB_TrainerPicSlideOffscreen(struct Sprite *sprite); -void SpriteCB_OptionsCursor(struct Sprite *sprite); -u32 MatchCallListCursorDown(s32); -u32 MatchCallListCursorUp(s32); -u32 MatchCallListPageDown(s32); -u32 MatchCallListPageUp(s32); -u32 SelectMatchCallEntry(s32); -u32 MoveMatchCallOptionsCursor(s32); +static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *); +static void SpriteCB_TrainerPicSlideOffscreen(struct Sprite *); +static void SpriteCB_OptionsCursor(struct Sprite *); +static u32 MatchCallListCursorDown(s32); +static u32 MatchCallListCursorUp(s32); +static u32 MatchCallListPageDown(s32); +static u32 MatchCallListPageUp(s32); +static u32 SelectMatchCallEntry(s32); +static u32 MoveMatchCallOptionsCursor(s32); static u32 CancelMatchCallSelection(s32); -u32 DoMatchCallMessage(s32); -u32 DoTrainerCloseByMessage(s32); -u32 sub_81CB888(s32); -u32 ShowCheckPage(s32); -u32 ShowCheckPageUp(s32); -u32 ShowCheckPageDown(s32); -u32 ExitCheckPage(s32); -u32 ExitMatchCall(s32); +static u32 DoMatchCallMessage(s32); +static u32 DoTrainerCloseByMessage(s32); +static u32 CloseMatchCallMessage(s32); +static u32 ShowCheckPage(s32); +static u32 ShowCheckPageUp(s32); +static u32 ShowCheckPageDown(s32); +static u32 ExitCheckPage(s32); +static u32 ExitMatchCall(s32); static const u16 sMatchCallUI_Pal[] = INCBIN_U16("graphics/pokenav/match_call/ui.gbapal"); static const u32 sMatchCallUI_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/ui.4bpp.lz"); static const u32 sMatchCallUI_Tilemap[] = INCBIN_U32("graphics/pokenav/match_call/ui.bin.lz"); -static const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/match_call/arrow.gbapal"); -static const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/match_call/arrow.4bpp.lz"); +static const u16 sOptionsCursor_Pal[] = INCBIN_U16("graphics/pokenav/match_call/options_cursor.gbapal"); +static const u32 sOptionsCursor_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/options_cursor.4bpp.lz"); static const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/match_call/86226E0.gbapal"); static const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/match_call/8622700.gbapal"); -static const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/match_call/pokeball.gbapal"); -static const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/match_call/pokeball.4bpp.lz"); +static const u16 sPokeball_Pal[] = INCBIN_U16("graphics/pokenav/match_call/pokeball.gbapal"); +static const u32 sPokeball_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/pokeball.4bpp.lz"); const struct BgTemplate sMatchCallBgTemplates[3] = { @@ -162,7 +167,7 @@ static const LoopedTask sMatchCallLoopTaskFuncs[] = [POKENAV_MC_FUNC_CANCEL] = CancelMatchCallSelection, [POKENAV_MC_FUNC_CALL_MSG] = DoMatchCallMessage, [POKENAV_MC_FUNC_NEARBY_MSG] = DoTrainerCloseByMessage, - [POKENAV_MC_FUNC_10] = sub_81CB888, + [POKENAV_MC_FUNC_EXIT_CALL] = CloseMatchCallMessage, [POKENAV_MC_FUNC_SHOW_CHECK_PAGE] = ShowCheckPage, [POKENAV_MC_FUNC_CHECK_PAGE_UP] = ShowCheckPageUp, [POKENAV_MC_FUNC_CHECK_PAGE_DOWN] = ShowCheckPageDown, @@ -200,27 +205,27 @@ static const u8 *const sMatchCallOptionTexts[MATCH_CALL_OPTION_COUNT] = }; // The series of 5 dots that appear when someone is called with Match Call -static const u8 sText_CallingDots[] = _("·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p"); +static const u8 sText_CallingDots[] = _("·{PAUSE 4}·{PAUSE 4}·{PAUSE 4}·{PAUSE 4}·\p"); static const struct WindowTemplate sCallMsgBoxWindowTemplate = { .bg = 1, .tilemapLeft = 1, .tilemapTop = 12, - .width = 0x1C, - .height = 0x04, + .width = 28, + .height = 4, .paletteNum = 1, .baseBlock = 10 }; -const struct CompressedSpriteSheet gUnknown_08622810[1] = +static const struct CompressedSpriteSheet sOptionsCursorSpriteSheets[1] = { - {gUnknown_086226B8, 0x40, 7} + {sOptionsCursor_Gfx, 0x40, GFXTAG_CURSOR} }; -const struct SpritePalette gUnknown_08622818[2] = +const struct SpritePalette sOptionsCursorSpritePalettes[2] = { - {gUnknown_08622698, 12} + {sOptionsCursor_Pal, PALTAG_CURSOR} }; static const struct OamData sOptionsCursorOamData = @@ -239,8 +244,8 @@ static const struct OamData sOptionsCursorOamData = static const struct SpriteTemplate sOptionsCursorSpriteTemplate = { - .tileTag = 7, - .paletteTag = 12, + .tileTag = GFXTAG_CURSOR, + .paletteTag = PALTAG_CURSOR, .oam = &sOptionsCursorOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -264,8 +269,8 @@ static const struct OamData sTrainerPicOamData = static const struct SpriteTemplate sTrainerPicSpriteTemplate = { - .tileTag = 8, - .paletteTag = 13, + .tileTag = GFXTAG_TRAINER_PIC, + .paletteTag = PALTAG_TRAINER_PIC, .oam = &sTrainerPicOamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -275,57 +280,57 @@ static const struct SpriteTemplate sTrainerPicSpriteTemplate = bool32 OpenMatchCall(void) { - struct Pokenav4Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN, sizeof(struct Pokenav4Struct)); - if (!state) + struct Pokenav_MatchCallGfx *gfx = AllocSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN, sizeof(struct Pokenav_MatchCallGfx)); + if (!gfx) return FALSE; - state->unused19 = 0; - state->loopTaskId = CreateLoopedTask(LoopedTask_OpenMatchCall, 1); - state->isTaskActiveCB = GetCurrentLoopedTaskActive; + gfx->unused19 = 0; + gfx->loopTaskId = CreateLoopedTask(LoopedTask_OpenMatchCall, 1); + gfx->isTaskActiveCB = GetCurrentLoopedTaskActive; return TRUE; } void CreateMatchCallLoopedTask(s32 index) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - state->loopTaskId = CreateLoopedTask(sMatchCallLoopTaskFuncs[index], 1); - state->isTaskActiveCB = GetCurrentLoopedTaskActive; + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + gfx->loopTaskId = CreateLoopedTask(sMatchCallLoopTaskFuncs[index], 1); + gfx->isTaskActiveCB = GetCurrentLoopedTaskActive; } bool32 IsMatchCallLoopedTaskActive(void) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - return state->isTaskActiveCB(); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + return gfx->isTaskActiveCB(); } void FreeMatchCallSubstruct2(void) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - RemoveMatchCallSprites(); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + FreeMatchCallSprites(); sub_81CBC1C(); - RemoveWindow(state->infoBoxWindowId); - RemoveWindow(state->locWindowId); - RemoveWindow(state->msgBoxWindowId); - FreePokenavSubstruct(6); + RemoveWindow(gfx->infoBoxWindowId); + RemoveWindow(gfx->locWindowId); + RemoveWindow(gfx->msgBoxWindowId); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); } static bool32 GetCurrentLoopedTaskActive(void) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - return IsLoopedTaskActive(state->loopTaskId); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + return IsLoopedTaskActive(gfx->loopTaskId); } -static u32 LoopedTask_OpenMatchCall(s32 taskState) +static u32 LoopedTask_OpenMatchCall(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: InitBgTemplates(sMatchCallBgTemplates, ARRAY_COUNT(sMatchCallBgTemplates)); ChangeBgX(2, 0, BG_COORD_SET); ChangeBgY(2, 0, BG_COORD_SET); DecompressAndCopyTileDataToVram(2, sMatchCallUI_Gfx, 0, 0, 0); - SetBgTilemapBuffer(2, state->unk1024); + SetBgTilemapBuffer(2, gfx->bgTilemapBuffer2); CopyToBgTilemapBuffer(2, sMatchCallUI_Tilemap, 0, 0); CopyBgTilemapBufferToVram(2); CopyPaletteIntoBufferUnfaded(sMatchCallUI_Pal, 0x20, 0x20); @@ -336,7 +341,7 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) return LT_PAUSE; BgDmaFill(1, 0, 0, 1); - SetBgTilemapBuffer(1, state->unk24); + SetBgTilemapBuffer(1, gfx->bgTilemapBuffer1); FillBgTilemapBufferRect_Palette0(1, 0x1000, 0, 0, 32, 20); CopyPaletteIntoBufferUnfaded(gUnknown_086226E0, 0x10, 0x20); CopyBgTilemapBufferToVram(1); @@ -345,10 +350,10 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; - sub_81CC034(state); - DecompressAndCopyTileDataToVram(3, gUnknown_08622760, 0, 0, 0); + LoadCallWindowAndFade(gfx); + DecompressAndCopyTileDataToVram(3, sPokeball_Gfx, 0, 0, 0); CopyPaletteIntoBufferUnfaded(gUnknown_08622700, 0x30, 0x20); - CopyPaletteIntoBufferUnfaded(gUnknown_08622720, 0x50, 0x20); + CopyPaletteIntoBufferUnfaded(sPokeball_Pal, 0x50, 0x20); return LT_INC_AND_PAUSE; case 3: if (FreeTempTileDataBuffersIfPossible() || !sub_81CAE28()) @@ -360,11 +365,11 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) if (sub_81C8224()) return LT_PAUSE; - DrawMatchCallLeftColumnWindows(state); + DrawMatchCallLeftColumnWindows(gfx); return LT_INC_AND_PAUSE; case 5: - UpdateMatchCallInfoBox(state); - PrintMatchCallLocation(state, 0); + UpdateMatchCallInfoBox(gfx); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 6: ChangeBgX(1, 0, BG_COORD_SET); @@ -372,50 +377,50 @@ static u32 LoopedTask_OpenMatchCall(s32 taskState) ShowBg(2); ShowBg(3); ShowBg(1); - sub_81CC214(); + AllocMatchCallSprites(); LoadLeftHeaderGfxForIndex(3); ShowLeftHeaderGfx(POKENAV_GFX_MATCH_CALL_MENU, 1, 0); - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; case 7: if (IsPaletteFadeActive() || AreLeftHeaderSpritesMoving()) return LT_PAUSE; - sub_81CBC38(1); + SetPokeballIconsFlashing(TRUE); return LT_FINISH; default: return LT_FINISH; } } -u32 MatchCallListCursorDown(s32 taskState) +static u32 MatchCallListCursorDown(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: switch (MatchCall_MoveCursorDown()) { - case 0: - break; - case 1: - PlaySE(SE_SELECT); - return 7; - case 2: - PlaySE(SE_SELECT); - // fall through - default: - return LT_INC_AND_PAUSE; + case 0: + break; + case 1: + PlaySE(SE_SELECT); + return LT_SET_STATE(2); + case 2: + PlaySE(SE_SELECT); + // fall through + default: + return LT_INC_AND_PAUSE; } break; case 1: if (IsMonListLoopedTaskActive()) return LT_PAUSE; - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 2: - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -425,34 +430,34 @@ u32 MatchCallListCursorDown(s32 taskState) return LT_FINISH; } -u32 MatchCallListCursorUp(s32 taskState) +static u32 MatchCallListCursorUp(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: switch (MatchCall_MoveCursorUp()) { - case 0: - break; - case 1: - PlaySE(SE_SELECT); - return 7; - case 2: - PlaySE(SE_SELECT); - // fall through - default: - return LT_INC_AND_PAUSE; + case 0: + break; + case 1: + PlaySE(SE_SELECT); + return LT_SET_STATE(2); + case 2: + PlaySE(SE_SELECT); + // fall through + default: + return LT_INC_AND_PAUSE; } break; case 1: if (IsMonListLoopedTaskActive()) return LT_PAUSE; - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 2: - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -462,34 +467,34 @@ u32 MatchCallListCursorUp(s32 taskState) return LT_FINISH; } -u32 MatchCallListPageDown(s32 taskState) +static u32 MatchCallListPageDown(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: switch (MatchCall_PageDown()) { - case 0: - break; - case 1: - PlaySE(SE_SELECT); - return 7; - case 2: - PlaySE(SE_SELECT); - // fall through - default: - return LT_INC_AND_PAUSE; + case 0: + break; + case 1: + PlaySE(SE_SELECT); + return LT_SET_STATE(2); + case 2: + PlaySE(SE_SELECT); + // fall through + default: + return LT_INC_AND_PAUSE; } break; case 1: if (IsMonListLoopedTaskActive()) return LT_PAUSE; - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 2: - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -499,34 +504,34 @@ u32 MatchCallListPageDown(s32 taskState) return LT_FINISH; } -u32 MatchCallListPageUp(s32 taskState) +static u32 MatchCallListPageUp(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: switch (MatchCall_PageUp()) { - case 0: - break; - case 1: - PlaySE(SE_SELECT); - return 7; - case 2: - PlaySE(SE_SELECT); - // fall through - default: - return LT_INC_AND_PAUSE; + case 0: + break; + case 1: + PlaySE(SE_SELECT); + return LT_SET_STATE(2); + case 2: + PlaySE(SE_SELECT); + // fall through + default: + return LT_INC_AND_PAUSE; } break; case 1: if (IsMonListLoopedTaskActive()) return LT_PAUSE; - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 2: - PrintMatchCallLocation(state, 0); + PrintMatchCallLocation(gfx, 0); return LT_INC_AND_PAUSE; case 3: if (IsDma3ManagerBusyWithBgCopy()) @@ -536,18 +541,18 @@ u32 MatchCallListPageUp(s32 taskState) return LT_FINISH; } -u32 SelectMatchCallEntry(s32 taskState) +static u32 SelectMatchCallEntry(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: PlaySE(SE_SELECT); - PrintMatchCallSelectionOptions(state); + PrintMatchCallSelectionOptions(gfx); PrintHelpBarText(HELPBAR_MC_CALL_MENU); return LT_INC_AND_PAUSE; case 1: - if (sub_81CBFC4(state)) + if (ShowOptionsCursor(gfx)) return LT_PAUSE; break; } @@ -555,30 +560,30 @@ u32 SelectMatchCallEntry(s32 taskState) return LT_FINISH; } -u32 MoveMatchCallOptionsCursor(s32 taskState) +static u32 MoveMatchCallOptionsCursor(s32 state) { - struct Pokenav4Struct *state; + struct Pokenav_MatchCallGfx *gfx; u16 cursorPos; PlaySE(SE_SELECT); - state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); cursorPos = GetMatchCallOptionCursorPos(); - UpdateCursorGfxPos(state, cursorPos); + UpdateCursorGfxPos(gfx, cursorPos); return LT_FINISH; } -u32 CancelMatchCallSelection(s32 taskState) +static u32 CancelMatchCallSelection(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: PlaySE(SE_SELECT); - UpdateWindowsReturnToTrainerList(state); + UpdateWindowsReturnToTrainerList(gfx); PrintHelpBarText(HELPBAR_MC_TRAINER_LIST); return LT_INC_AND_PAUSE; case 1: - if (IsDma3ManagerBusyWithBgCopy1(state)) + if (IsDma3ManagerBusyWithBgCopy1(gfx)) return LT_PAUSE; break; } @@ -586,31 +591,31 @@ u32 CancelMatchCallSelection(s32 taskState) return LT_FINISH; } -u32 DoMatchCallMessage(s32 taskState) +static u32 DoMatchCallMessage(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: ToggleMatchCallVerticalArrows(TRUE); - DrawMsgBoxForMatchCallMsg(state); + DrawMsgBoxForMatchCallMsg(gfx); return LT_INC_AND_PAUSE; case 1: - if (IsDma3ManagerBusyWithBgCopy2(state)) + if (IsDma3ManagerBusyWithBgCopy2(gfx)) return LT_PAUSE; - PrintCallingDots(state); + PrintCallingDots(gfx); PlaySE(SE_POKENAV_CALL); - state->unkE = 0; + gfx->unkE = 0; return LT_INC_AND_PAUSE; case 2: - if (WaitForCallingDotsText(state)) + if (WaitForCallingDotsText(gfx)) return LT_PAUSE; - PrintMatchCallMessage(state); + PrintMatchCallMessage(gfx); return LT_INC_AND_PAUSE; case 3: - if (WaitForMatchCallMessageText(state)) + if (WaitForMatchCallMessageText(gfx)) return LT_PAUSE; break; } @@ -618,25 +623,25 @@ u32 DoMatchCallMessage(s32 taskState) return LT_FINISH; } -u32 DoTrainerCloseByMessage(s32 taskState) +static u32 DoTrainerCloseByMessage(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: PlaySE(SE_SELECT); - DrawMsgBoxForCloseByMsg(state); + DrawMsgBoxForCloseByMsg(gfx); ToggleMatchCallVerticalArrows(TRUE); - state->unkE = 1; + gfx->unkE = 1; return LT_INC_AND_PAUSE; case 1: - if (IsDma3ManagerBusyWithBgCopy2(state)) + if (IsDma3ManagerBusyWithBgCopy2(gfx)) return LT_PAUSE; - PrintTrainerIsCloseBy(state); + PrintTrainerIsCloseBy(gfx); return LT_INC_AND_PAUSE; case 2: - if (WaitForTrainerIsCloseByText(state)) + if (WaitForTrainerIsCloseByText(gfx)) return LT_PAUSE; break; } @@ -644,31 +649,31 @@ u32 DoTrainerCloseByMessage(s32 taskState) return LT_FINISH; } -u32 sub_81CB888(s32 taskState) +static u32 CloseMatchCallMessage(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); u32 result = LT_INC_AND_PAUSE; - switch (taskState) + switch (state) { case 0: - if (!state->unkE) + if (!gfx->unkE) PlaySE(SE_POKENAV_HANG_UP); PlaySE(SE_SELECT); break; case 1: - DrawSpinningPokenavForCall(state); + EraseCallMessageBox(gfx); break; case 2: - if (WaitForSpinningPokenav(state)) + if (WaitForCallMessageBoxErase(gfx)) result = LT_PAUSE; break; case 3: - UpdateWindowsReturnToTrainerList(state); + UpdateWindowsReturnToTrainerList(gfx); break; case 4: - if (IsDma3ManagerBusyWithBgCopy1(state)) + if (IsDma3ManagerBusyWithBgCopy1(gfx)) result = LT_PAUSE; PrintHelpBarText(HELPBAR_MC_TRAINER_LIST); @@ -680,7 +685,7 @@ u32 sub_81CB888(s32 taskState) } else { - if (state->unkF) + if (gfx->unkF) { sub_81C8838(); result = LT_INC_AND_CONTINUE; @@ -708,28 +713,28 @@ u32 sub_81CB888(s32 taskState) return result; } -u32 ShowCheckPage(s32 taskState) +static u32 ShowCheckPage(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: PlaySE(SE_SELECT); sub_81C877C(); - UpdateWindowsToShowCheckPage(state); + UpdateWindowsToShowCheckPage(gfx); return LT_INC_AND_PAUSE; case 1: - if (IsMatchCallListTaskActive() || IsDma3ManagerBusyWithBgCopy1(state)) + if (IsMatchCallListTaskActive() || IsDma3ManagerBusyWithBgCopy1(gfx)) return LT_PAUSE; PrintHelpBarText(HELPBAR_MC_CHECK_PAGE); return LT_INC_AND_PAUSE; case 2: PrintCheckPageInfo(0); - LoadCheckPageTrainerPic(state); + LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 3: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(state) || WaitForHelpBar()) + if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx) || WaitForHelpBar()) return LT_PAUSE; break; } @@ -737,12 +742,12 @@ u32 ShowCheckPage(s32 taskState) return LT_FINISH; } -u32 ShowCheckPageDown(s32 taskState) +static u32 ShowCheckPageDown(s32 state) { int topId; int delta; - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: topId = GetMatchCallListTopIndex(); @@ -750,25 +755,25 @@ u32 ShowCheckPageDown(s32 taskState) if (delta) { PlaySE(SE_SELECT); - state->unk16 = delta; - TrainerPicSlideOffscreen(state); + gfx->pageDelta = delta; + TrainerPicSlideOffscreen(gfx); return LT_INC_AND_PAUSE; } break; case 1: - if (WaitForTrainerPic(state)) + if (WaitForTrainerPic(gfx)) return LT_PAUSE; - PrintMatchCallLocation(state, state->unk16); + PrintMatchCallLocation(gfx, gfx->pageDelta); return LT_INC_AND_PAUSE; case 2: - PrintCheckPageInfo(state->unk16); + PrintCheckPageInfo(gfx->pageDelta); return LT_INC_AND_PAUSE; case 3: - LoadCheckPageTrainerPic(state); + LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 4: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(state)) + if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; break; } @@ -776,22 +781,22 @@ u32 ShowCheckPageDown(s32 taskState) return LT_FINISH; } -u32 ExitCheckPage(s32 taskState) +static u32 ExitCheckPage(s32 state) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: PlaySE(SE_SELECT); - TrainerPicSlideOffscreen(state); + TrainerPicSlideOffscreen(gfx); sub_81C87F0(); return LT_INC_AND_PAUSE; case 1: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(state)) + if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; PrintHelpBarText(HELPBAR_MC_TRAINER_LIST); - UpdateMatchCallInfoBox(state); + UpdateMatchCallInfoBox(gfx); return LT_INC_AND_PAUSE; case 2: if (IsDma3ManagerBusyWithBgCopy()) @@ -802,12 +807,12 @@ u32 ExitCheckPage(s32 taskState) return LT_FINISH; } -u32 ShowCheckPageUp(s32 taskState) +static u32 ShowCheckPageUp(s32 state) { int topId; int delta; - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - switch (taskState) + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + switch (state) { case 0: topId = GetMatchCallListTopIndex(); @@ -815,25 +820,25 @@ u32 ShowCheckPageUp(s32 taskState) if (delta) { PlaySE(SE_SELECT); - state->unk16 = delta; - TrainerPicSlideOffscreen(state); + gfx->pageDelta = delta; + TrainerPicSlideOffscreen(gfx); return LT_INC_AND_PAUSE; } break; case 1: - if (WaitForTrainerPic(state)) + if (WaitForTrainerPic(gfx)) return LT_PAUSE; - PrintMatchCallLocation(state, state->unk16); + PrintMatchCallLocation(gfx, gfx->pageDelta); return LT_INC_AND_PAUSE; case 2: - PrintCheckPageInfo(state->unk16); + PrintCheckPageInfo(gfx->pageDelta); return LT_INC_AND_PAUSE; case 3: - LoadCheckPageTrainerPic(state); + LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 4: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(state)) + if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; break; } @@ -841,14 +846,14 @@ u32 ShowCheckPageUp(s32 taskState) return LT_FINISH; } -u32 ExitMatchCall(s32 taskState) +static u32 ExitMatchCall(s32 state) { - switch (taskState) + switch (state) { case 0: PlaySE(SE_SELECT); - sub_81CBC38(0); - PokenavFadeScreen(0); + SetPokeballIconsFlashing(FALSE); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); SlideMenuHeaderDown(); return LT_INC_AND_PAUSE; case 1: @@ -878,36 +883,50 @@ static void InitMatchCallPokenavListMenuTemplate(void) template.listFunc.unk10_2 = BufferMatchCallNameAndDesc; template.unk14 = TryDrawRematchPokeballIcon; sub_81C81D4(&sMatchCallBgTemplates[2], &template, 2); - CreateTask(sub_81CBC64, 7); + CreateTask(Task_FlashPokeballIcons, 7); } static void sub_81CBC1C(void) { sub_81C8234(); - DestroyTask(FindTaskIdByFunc(sub_81CBC64)); + DestroyTask(FindTaskIdByFunc(Task_FlashPokeballIcons)); } -static void sub_81CBC38(int arg0) +#define tSinIdx data[0] +#define tSinVal data[1] +#define tActive data[15] + +static void SetPokeballIconsFlashing(bool32 active) { - u8 taskId = FindTaskIdByFunc(sub_81CBC64); + u8 taskId = FindTaskIdByFunc(Task_FlashPokeballIcons); if (taskId != TASK_NONE) - gTasks[taskId].data[15] = arg0; + gTasks[taskId].tActive = active; } -static void sub_81CBC64(u8 taskId) +static void Task_FlashPokeballIcons(u8 taskId) { - s16 *taskData = gTasks[taskId].data; - if (taskData[15]) + s16 *data = gTasks[taskId].data; + if (tActive) { - taskData[0] += 4; - taskData[0] &= 0x7F; - taskData[1] = gSineTable[taskData[0]] >> 4; - PokenavCopyPalette(gUnknown_08622720, gUnknown_08622720 + 0x10, 0x10, 0x10, taskData[1], gPlttBufferUnfaded + 0x50); + tSinIdx += 4; + tSinIdx &= 0x7F; + tSinVal = gSineTable[tSinIdx] >> 4; + PokenavCopyPalette(sPokeball_Pal, &sPokeball_Pal[0x10], 0x10, 0x10, tSinVal, &gPlttBufferUnfaded[0x50]); if (!gPaletteFade.active) - CpuCopy32(gPlttBufferUnfaded + 0x50, gPlttBufferFaded + 0x50, 0x20); + CpuCopy32(&gPlttBufferUnfaded[0x50], &gPlttBufferFaded[0x50], 0x20); } } +#undef tSinIdx +#undef tSinVal +#undef tActive + +enum { + POKEBALL_ICON_TOP = 0x5000, + POKEBALL_ICON_BOTTOM, + POKEBALL_ICON_EMPTY, +}; + static void TryDrawRematchPokeballIcon(u16 windowId, u32 rematchId, u32 arg2) { u8 bg = GetWindowAttribute(windowId, WINDOW_BG); @@ -915,13 +934,13 @@ static void TryDrawRematchPokeballIcon(u16 windowId, u32 rematchId, u32 arg2) tilemap += arg2 * 0x40 + 0x1D; if (ShouldDrawRematchPokeballIcon(rematchId)) { - tilemap[0] = 0x5000; - tilemap[0x20] = 0x5001; + tilemap[0] = POKEBALL_ICON_TOP; + tilemap[0x20] = POKEBALL_ICON_BOTTOM; } else { - tilemap[0] = 0x5002; - tilemap[0x20] = 0x5002; + tilemap[0] = POKEBALL_ICON_EMPTY; + tilemap[0x20] = POKEBALL_ICON_EMPTY; } } @@ -930,29 +949,29 @@ void ClearRematchPokeballIcon(u16 windowId, u32 arg0) u8 bg = GetWindowAttribute(windowId, WINDOW_BG); u16 *tilemap = GetBgTilemapBuffer(bg); tilemap += arg0 * 0x40 + 0x1D; - tilemap[0] = 0x5002; - tilemap[0x20] = 0x5002; + tilemap[0] = POKEBALL_ICON_EMPTY; + tilemap[0x20] = POKEBALL_ICON_EMPTY; } -static void DrawMatchCallLeftColumnWindows(struct Pokenav4Struct *state) +static void DrawMatchCallLeftColumnWindows(struct Pokenav_MatchCallGfx *gfx) { - state->locWindowId = AddWindow(&sMatchCallLocationWindowTemplate); - state->infoBoxWindowId = AddWindow(&sMatchCallInfoBoxWindowTemplate); - FillWindowPixelBuffer(state->locWindowId, PIXEL_FILL(1)); - PutWindowTilemap(state->locWindowId); - FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); - PutWindowTilemap(state->infoBoxWindowId); - CopyWindowToVram(state->locWindowId, COPYWIN_MAP); + gfx->locWindowId = AddWindow(&sMatchCallLocationWindowTemplate); + gfx->infoBoxWindowId = AddWindow(&sMatchCallInfoBoxWindowTemplate); + FillWindowPixelBuffer(gfx->locWindowId, PIXEL_FILL(1)); + PutWindowTilemap(gfx->locWindowId); + FillWindowPixelBuffer(gfx->infoBoxWindowId, PIXEL_FILL(1)); + PutWindowTilemap(gfx->infoBoxWindowId); + CopyWindowToVram(gfx->locWindowId, COPYWIN_MAP); } -static void UpdateMatchCallInfoBox(struct Pokenav4Struct *state) +static void UpdateMatchCallInfoBox(struct Pokenav_MatchCallGfx *gfx) { - FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); - PrintNumberRegisteredLabel(state->infoBoxWindowId); - PrintNumberRegistered(state->infoBoxWindowId); - PrintNumberOfBattlesLabel(state->infoBoxWindowId); - PrintNumberOfBattles(state->infoBoxWindowId); - CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); + FillWindowPixelBuffer(gfx->infoBoxWindowId, PIXEL_FILL(1)); + PrintNumberRegisteredLabel(gfx->infoBoxWindowId); + PrintNumberRegistered(gfx->infoBoxWindowId); + PrintNumberOfBattlesLabel(gfx->infoBoxWindowId); + PrintNumberOfBattles(gfx->infoBoxWindowId); + CopyWindowToVram(gfx->infoBoxWindowId, COPYWIN_GFX); } static void PrintNumberRegisteredLabel(u16 windowId) @@ -996,11 +1015,11 @@ static void PrintMatchCallInfoNumber(u16 windowId, const u8 *str, int top) AddTextPrinterParameterized(windowId, FONT_NARROW, str, x, y, TEXT_SKIP_DRAW, NULL); } -static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) +static void PrintMatchCallLocation(struct Pokenav_MatchCallGfx *gfx, int delta) { u8 mapName[32]; int x; - int index = GetSelectedPokenavListIndex() + arg1; + int index = GetSelectedPokenavListIndex() + delta; int mapSec = GetMatchCallMapSec(index); if (mapSec != MAPSEC_NONE) GetMapName(mapName, mapSec, 0); @@ -1008,207 +1027,209 @@ static void PrintMatchCallLocation(struct Pokenav4Struct *state, int arg1) StringCopy(mapName, gText_Unknown); x = GetStringCenterAlignXOffset(FONT_NARROW, mapName, 88); - FillWindowPixelBuffer(state->locWindowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(state->locWindowId, FONT_NARROW, mapName, x, 1, 0, NULL); + FillWindowPixelBuffer(gfx->locWindowId, PIXEL_FILL(1)); + AddTextPrinterParameterized(gfx->locWindowId, FONT_NARROW, mapName, x, 1, 0, NULL); } -static void PrintMatchCallSelectionOptions(struct Pokenav4Struct *state) +static void PrintMatchCallSelectionOptions(struct Pokenav_MatchCallGfx *gfx) { u32 i; - FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); + FillWindowPixelBuffer(gfx->infoBoxWindowId, PIXEL_FILL(1)); for (i = 0; i < MATCH_CALL_OPTION_COUNT; i++) { int optionText = GetMatchCallOptionId(i); if (optionText == MATCH_CALL_OPTION_COUNT) break; - AddTextPrinterParameterized(state->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(gfx->infoBoxWindowId, FONT_NARROW, sMatchCallOptionTexts[optionText], 16, i * 16 + 1, TEXT_SKIP_DRAW, NULL); } - CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); + CopyWindowToVram(gfx->infoBoxWindowId, COPYWIN_GFX); } -static bool32 sub_81CBFC4(struct Pokenav4Struct *state) +static bool32 ShowOptionsCursor(struct Pokenav_MatchCallGfx *gfx) { if (!IsDma3ManagerBusyWithBgCopy()) { - sub_81CC2F0(state, GetMatchCallOptionCursorPos()); + CreateOptionsCursorSprite(gfx, GetMatchCallOptionCursorPos()); return FALSE; } return TRUE; } -static void UpdateWindowsReturnToTrainerList(struct Pokenav4Struct *state) +static void UpdateWindowsReturnToTrainerList(struct Pokenav_MatchCallGfx *gfx) { - CloseMatchCallSelectOptionsWindow(state); - UpdateMatchCallInfoBox(state); + CloseMatchCallSelectOptionsWindow(gfx); + UpdateMatchCallInfoBox(gfx); } -static bool32 IsDma3ManagerBusyWithBgCopy1(struct Pokenav4Struct *state) +static bool32 IsDma3ManagerBusyWithBgCopy1(struct Pokenav_MatchCallGfx *gfx) { return IsDma3ManagerBusyWithBgCopy(); } -static void UpdateWindowsToShowCheckPage(struct Pokenav4Struct *state) +static void UpdateWindowsToShowCheckPage(struct Pokenav_MatchCallGfx *gfx) { - CloseMatchCallSelectOptionsWindow(state); - FillWindowPixelBuffer(state->infoBoxWindowId, PIXEL_FILL(1)); - CopyWindowToVram(state->infoBoxWindowId, COPYWIN_GFX); + CloseMatchCallSelectOptionsWindow(gfx); + FillWindowPixelBuffer(gfx->infoBoxWindowId, PIXEL_FILL(1)); + CopyWindowToVram(gfx->infoBoxWindowId, COPYWIN_GFX); } -static void sub_81CC034(struct Pokenav4Struct *state) +static void LoadCallWindowAndFade(struct Pokenav_MatchCallGfx *gfx) { - state->msgBoxWindowId = AddWindow(&sCallMsgBoxWindowTemplate); - LoadMatchCallWindowGfx(state->msgBoxWindowId, 1, 4); + gfx->msgBoxWindowId = AddWindow(&sCallMsgBoxWindowTemplate); + LoadMatchCallWindowGfx(gfx->msgBoxWindowId, 1, 4); FadeToBlackExceptPrimary(); } -static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state) +static void DrawMsgBoxForMatchCallMsg(struct Pokenav_MatchCallGfx *gfx) { struct Sprite *sprite; - LoadMatchCallWindowGfx(state->msgBoxWindowId, 1, 4); - DrawMatchCallTextBoxBorder(state->msgBoxWindowId, 1, 4); - FillWindowPixelBuffer(state->msgBoxWindowId, PIXEL_FILL(1)); - PutWindowTilemap(state->msgBoxWindowId); - CopyWindowToVram(state->msgBoxWindowId, COPYWIN_FULL); - sprite = PauseSpinningPokenavSprite(); + LoadMatchCallWindowGfx(gfx->msgBoxWindowId, 1, 4); + DrawMatchCallTextBoxBorder(gfx->msgBoxWindowId, 1, 4); + FillWindowPixelBuffer(gfx->msgBoxWindowId, PIXEL_FILL(1)); + PutWindowTilemap(gfx->msgBoxWindowId); + CopyWindowToVram(gfx->msgBoxWindowId, COPYWIN_FULL); + sprite = GetSpinningPokenavSprite(); sprite->x = 24; sprite->y = 112; sprite->y2 = 0; } -static void DrawMsgBoxForCloseByMsg(struct Pokenav4Struct *state) +static void DrawMsgBoxForCloseByMsg(struct Pokenav_MatchCallGfx *gfx) { - LoadUserWindowBorderGfx(state->msgBoxWindowId, 1, 0x40); - DrawTextBorderOuter(state->msgBoxWindowId, 1, 4); - FillWindowPixelBuffer(state->msgBoxWindowId, PIXEL_FILL(1)); - PutWindowTilemap(state->msgBoxWindowId); - CopyWindowToVram(state->msgBoxWindowId, COPYWIN_FULL); + LoadUserWindowBorderGfx(gfx->msgBoxWindowId, 1, 0x40); + DrawTextBorderOuter(gfx->msgBoxWindowId, 1, 4); + FillWindowPixelBuffer(gfx->msgBoxWindowId, PIXEL_FILL(1)); + PutWindowTilemap(gfx->msgBoxWindowId); + CopyWindowToVram(gfx->msgBoxWindowId, COPYWIN_FULL); } -static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav4Struct *state) +static bool32 IsDma3ManagerBusyWithBgCopy2(struct Pokenav_MatchCallGfx *gfx) { return IsDma3ManagerBusyWithBgCopy(); } -static void PrintCallingDots(struct Pokenav4Struct *state) +static void PrintCallingDots(struct Pokenav_MatchCallGfx *gfx) { - AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, sText_CallingDots, 32, 1, 1, NULL); + AddTextPrinterParameterized(gfx->msgBoxWindowId, FONT_NORMAL, sText_CallingDots, 32, 1, 1, NULL); } -static bool32 WaitForCallingDotsText(struct Pokenav4Struct *state) +static bool32 WaitForCallingDotsText(struct Pokenav_MatchCallGfx *gfx) { RunTextPrinters(); - return IsTextPrinterActive(state->msgBoxWindowId); + return IsTextPrinterActive(gfx->msgBoxWindowId); } -static void PrintTrainerIsCloseBy(struct Pokenav4Struct *state) +static void PrintTrainerIsCloseBy(struct Pokenav_MatchCallGfx *gfx) { - AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, gText_TrainerCloseBy, 0, 1, 1, NULL); + AddTextPrinterParameterized(gfx->msgBoxWindowId, FONT_NORMAL, gText_TrainerCloseBy, 0, 1, 1, NULL); } -static bool32 WaitForTrainerIsCloseByText(struct Pokenav4Struct *state) +static bool32 WaitForTrainerIsCloseByText(struct Pokenav_MatchCallGfx *gfx) { RunTextPrinters(); - return IsTextPrinterActive(state->msgBoxWindowId); + return IsTextPrinterActive(gfx->msgBoxWindowId); } -static void PrintMatchCallMessage(struct Pokenav4Struct *state) +static void PrintMatchCallMessage(struct Pokenav_MatchCallGfx *gfx) { int index = GetSelectedPokenavListIndex(); - const u8 *str = GetMatchCallMessageText(index, &state->unkF); + const u8 *str = GetMatchCallMessageText(index, &gfx->unkF); u8 speed = GetPlayerTextSpeedDelay(); - AddTextPrinterParameterized(state->msgBoxWindowId, FONT_NORMAL, str, 32, 1, speed, NULL); + AddTextPrinterParameterized(gfx->msgBoxWindowId, FONT_NORMAL, str, 32, 1, speed, NULL); } -static bool32 WaitForMatchCallMessageText(struct Pokenav4Struct *state) +static bool32 WaitForMatchCallMessageText(struct Pokenav_MatchCallGfx *gfx) { if (JOY_HELD(A_BUTTON)) - gTextFlags.canABSpeedUpPrint = 1; + gTextFlags.canABSpeedUpPrint = TRUE; else - gTextFlags.canABSpeedUpPrint = 0; + gTextFlags.canABSpeedUpPrint = FALSE; RunTextPrinters(); - return IsTextPrinterActive(state->msgBoxWindowId); + return IsTextPrinterActive(gfx->msgBoxWindowId); } -static void DrawSpinningPokenavForCall(struct Pokenav4Struct *state) +static void EraseCallMessageBox(struct Pokenav_MatchCallGfx *gfx) { - ResumeSpinningPokenavSprite(); + HideSpinningPokenavSprite(); FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 32, 20); CopyBgTilemapBufferToVram(1); } -static bool32 WaitForSpinningPokenav(struct Pokenav4Struct *state) +static bool32 WaitForCallMessageBoxErase(struct Pokenav_MatchCallGfx *gfx) { return IsDma3ManagerBusyWithBgCopy(); } -static void sub_81CC214(void) +static void AllocMatchCallSprites(void) { int i; u8 paletteNum; struct SpriteSheet spriteSheet; - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - for (i = 0; i < ARRAY_COUNT(gUnknown_08622810); i++) - LoadCompressedSpriteSheet(&gUnknown_08622810[i]); + // Load options cursor gfx + for (i = 0; i < ARRAY_COUNT(sOptionsCursorSpriteSheets); i++) + LoadCompressedSpriteSheet(&sOptionsCursorSpriteSheets[i]); + Pokenav_AllocAndLoadPalettes(sOptionsCursorSpritePalettes); + gfx->optionsCursorSprite = NULL; - Pokenav_AllocAndLoadPalettes(gUnknown_08622818); - state->optionsCursorSprite = NULL; - spriteSheet.data = state->unk1828; - spriteSheet.size = 0x800; - spriteSheet.tag = 8; - state->unk1824 = (u8 *)OBJ_VRAM0 + LoadSpriteSheet(&spriteSheet) * 0x20; - paletteNum = AllocSpritePalette(13); - state->unk1A = 0x100 + paletteNum * 0x10; - state->trainerPicSprite = CreateTrainerPicSprite(); - state->trainerPicSprite->invisible = TRUE; + // Load trainer pic gfx + spriteSheet.data = gfx->trainerPicGfx; + spriteSheet.size = sizeof(gfx->trainerPicGfx); + spriteSheet.tag = GFXTAG_TRAINER_PIC; + gfx->trainerPicGfxPtr = (u8 *)OBJ_VRAM0 + LoadSpriteSheet(&spriteSheet) * 0x20; + paletteNum = AllocSpritePalette(PALTAG_TRAINER_PIC); + gfx->trainerPicPalOffset = 0x100 + paletteNum * 0x10; + gfx->trainerPicSprite = CreateTrainerPicSprite(); + gfx->trainerPicSprite->invisible = TRUE; } -static void RemoveMatchCallSprites(void) +static void FreeMatchCallSprites(void) { - struct Pokenav4Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); - if (state->optionsCursorSprite) - DestroySprite(state->optionsCursorSprite); - if (state->trainerPicSprite) - DestroySprite(state->trainerPicSprite); + struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); + if (gfx->optionsCursorSprite) + DestroySprite(gfx->optionsCursorSprite); + if (gfx->trainerPicSprite) + DestroySprite(gfx->trainerPicSprite); - FreeSpriteTilesByTag(8); - FreeSpriteTilesByTag(7); - FreeSpritePaletteByTag(12); - FreeSpritePaletteByTag(13); + FreeSpriteTilesByTag(GFXTAG_TRAINER_PIC); + FreeSpriteTilesByTag(GFXTAG_CURSOR); + FreeSpritePaletteByTag(PALTAG_CURSOR); + FreeSpritePaletteByTag(PALTAG_TRAINER_PIC); } -static void sub_81CC2F0(struct Pokenav4Struct *state, int top) +static void CreateOptionsCursorSprite(struct Pokenav_MatchCallGfx *gfx, int top) { - if (!state->optionsCursorSprite) + if (!gfx->optionsCursorSprite) { u8 spriteId = CreateSprite(&sOptionsCursorSpriteTemplate, 4, 80, 5); - state->optionsCursorSprite = &gSprites[spriteId]; - UpdateCursorGfxPos(state, top); + gfx->optionsCursorSprite = &gSprites[spriteId]; + UpdateCursorGfxPos(gfx, top); } } -static void CloseMatchCallSelectOptionsWindow(struct Pokenav4Struct *state) +static void CloseMatchCallSelectOptionsWindow(struct Pokenav_MatchCallGfx *gfx) { - DestroySprite(state->optionsCursorSprite); - state->optionsCursorSprite = NULL; + DestroySprite(gfx->optionsCursorSprite); + gfx->optionsCursorSprite = NULL; } -static void UpdateCursorGfxPos(struct Pokenav4Struct *state, int top) +static void UpdateCursorGfxPos(struct Pokenav_MatchCallGfx *gfx, int top) { - state->optionsCursorSprite->y2 = top * 16; + gfx->optionsCursorSprite->y2 = top * 16; } -void SpriteCB_OptionsCursor(struct Sprite *sprite) +static void SpriteCB_OptionsCursor(struct Sprite *sprite) { if (++sprite->data[0] > 3) { sprite->data[0] = 0; - sprite->x2 = (sprite->x2 + 1) & 0x7; + sprite->x2 = (sprite->x2 + 1) & 7; } } @@ -1218,30 +1239,30 @@ static struct Sprite *CreateTrainerPicSprite(void) return &gSprites[spriteId]; } -static void LoadCheckPageTrainerPic(struct Pokenav4Struct *state) +static void LoadCheckPageTrainerPic(struct Pokenav_MatchCallGfx *gfx) { u16 cursor; int trainerPic = GetMatchCallTrainerPic(GetSelectedPokenavListIndex()); if (trainerPic >= 0) { - DecompressPicFromTable(&gTrainerFrontPicTable[trainerPic], state->unk1828, SPECIES_NONE); - LZ77UnCompWram(gTrainerFrontPicPaletteTable[trainerPic].data, state->unk2028); - cursor = RequestDma3Copy(state->unk1828, state->unk1824, 0x800, 1); - LoadPalette(state->unk2028, state->unk1A, 0x20); - state->trainerPicSprite->data[0] = 0; - state->trainerPicSprite->data[7] = cursor; - state->trainerPicSprite->callback = SpriteCB_TrainerPicSlideOnscreen; + DecompressPicFromTable(&gTrainerFrontPicTable[trainerPic], gfx->trainerPicGfx, SPECIES_NONE); + LZ77UnCompWram(gTrainerFrontPicPaletteTable[trainerPic].data, gfx->trainerPicPal); + cursor = RequestDma3Copy(gfx->trainerPicGfx, gfx->trainerPicGfxPtr, sizeof(gfx->trainerPicGfx), 1); + LoadPalette(gfx->trainerPicPal, gfx->trainerPicPalOffset, sizeof(gfx->trainerPicPal)); + gfx->trainerPicSprite->data[0] = 0; + gfx->trainerPicSprite->data[7] = cursor; + gfx->trainerPicSprite->callback = SpriteCB_TrainerPicSlideOnscreen; } } -static void TrainerPicSlideOffscreen(struct Pokenav4Struct *state) +static void TrainerPicSlideOffscreen(struct Pokenav_MatchCallGfx *gfx) { - state->trainerPicSprite->callback = SpriteCB_TrainerPicSlideOffscreen; + gfx->trainerPicSprite->callback = SpriteCB_TrainerPicSlideOffscreen; } -static bool32 WaitForTrainerPic(struct Pokenav4Struct *state) +static bool32 WaitForTrainerPic(struct Pokenav_MatchCallGfx *gfx) { - return state->trainerPicSprite->callback != SpriteCallbackDummy; + return gfx->trainerPicSprite->callback != SpriteCallbackDummy; } static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite) diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index ce3db25c5996..83720f4cf4a5 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -468,10 +468,10 @@ void sub_81C877C(void) structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C8870, 6); } -void PrintCheckPageInfo(s16 a0) +void PrintCheckPageInfo(s16 delta) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - structPtr->unk888.windowTopIndex += a0; + structPtr->unk888.windowTopIndex += delta; structPtr->unk89C = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); } diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c index 1738142acf79..b9dd130468c4 100644 --- a/src/pokenav_menu_handler_gfx.c +++ b/src/pokenav_menu_handler_gfx.c @@ -505,11 +505,11 @@ static u32 LoopedTask_OpenMenu(s32 state) ShowBg(2); ShowBg(3); if (gfx->pokenavAlreadyOpen) - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); else { PlaySE(SE_POKENAV_ON); - PokenavFadeScreen(3); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK_ALL); } switch (GetPokenavMenuType()) { @@ -779,7 +779,7 @@ static u32 LoopedTask_OpenPokenavFeature(s32 state) return LT_PAUSE; if (AreLeftHeaderSpritesMoving()) return LT_PAUSE; - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); return LT_INC_AND_PAUSE; case 3: if (IsPaletteFadeActive()) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 4ea3b3b193da..4b9ff9f10e83 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -364,7 +364,7 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) LoadLeftHeaderGfxForIndex(menuGfxId); ShowLeftHeaderGfx(menuGfxId, 1, 1); - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; case 7: if (IsPaletteFadeActive() || AreLeftHeaderSpritesMoving()) @@ -457,7 +457,7 @@ static u32 LoopedTask_ExitRegionMap(s32 taskState) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); return LT_INC_AND_PAUSE; case 1: if (IsPaletteFadeActive()) diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index b5d412e127f5..9f4ea5d4aded 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -460,7 +460,7 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) ShowBg(2); HideBg(3); PrintHelpBarText(HELPBAR_RIBBONS_MON_LIST); - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); if (!menu->fromSummary) { LoadLeftHeaderGfxForIndex(POKENAV_GFX_RIBBONS_MENU); @@ -615,7 +615,7 @@ static u32 LoopedTask_RibbonsListReturnToMainMenu(s32 state) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); SlideMenuHeaderDown(); return LT_INC_AND_PAUSE; case 1: @@ -635,7 +635,7 @@ static u32 LoopedTask_RibbonsListOpenSummary(s32 state) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); return LT_INC_AND_PAUSE; case 1: if (IsPaletteFadeActive()) diff --git a/src/pokenav_ribbons_summary.c b/src/pokenav_ribbons_summary.c index a7a27ee31fd5..c12f78ef50d9 100644 --- a/src/pokenav_ribbons_summary.c +++ b/src/pokenav_ribbons_summary.c @@ -638,7 +638,7 @@ static u32 LoopedTask_OpenRibbonsSummaryMenu(s32 state) ShowBg(1); ShowBg(2); HideBg(3); - PokenavFadeScreen(1); + PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; } return LT_PAUSE; @@ -655,7 +655,7 @@ static u32 LoopedTask_ExitRibbonsSummaryMenu(s32 state) { case 0: PlaySE(SE_SELECT); - PokenavFadeScreen(0); + PokenavFadeScreen(POKENAV_FADE_TO_BLACK); return LT_INC_AND_PAUSE; case 1: if (IsPaletteFadeActive()) From 3b91d8fdaf2a1e13c4af938dfb867d407ccb280f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Nov 2021 20:24:14 -0500 Subject: [PATCH 412/762] Start pokenav list ui doc --- include/pokenav.h | 20 +++++++++---------- src/pokenav_conditions.c | 26 ++++++++++++------------- src/pokenav_conditions_search_results.c | 20 +++++++++---------- src/pokenav_match_call_1.c | 6 +++--- src/pokenav_match_call_2.c | 2 +- src/pokenav_match_call_ui.c | 9 ++++----- src/pokenav_ribbons_list.c | 22 ++++++++++----------- src/pokenav_ribbons_summary.c | 18 ++++++++--------- src/use_pokeblock.c | 2 +- 9 files changed, 62 insertions(+), 63 deletions(-) diff --git a/include/pokenav.h b/include/pokenav.h index ba9f1cbe95df..254f9c7f7bf7 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -7,14 +7,14 @@ typedef u32 (*LoopedTask)(s32 state); -struct PokenavMonList +struct PokenavMonListItem { u8 boxId; u8 monId; u16 data; }; -struct PokenavMatchCallEntries +struct PokenavMatchCallEntry { bool8 isSpecialTrainer; u8 mapSec; @@ -24,8 +24,8 @@ struct PokenavMatchCallEntries struct PokenavListTemplate { union { - struct PokenavMonList *monList; - struct PokenavMatchCallEntries *matchCallEntries; + struct PokenavMonListItem *monList; + struct PokenavMatchCallEntry *matchCallEntries; } list; u16 count; u16 unk6; @@ -37,17 +37,17 @@ struct PokenavListTemplate u8 fillValue; u8 fontId; union { - void (*printMonFunc)(struct PokenavMonList *item, u8 *dest); - void (*unk10_2)(struct PokenavMatchCallEntries *, u8 *a1); + void (*bufferMonItemFunc)(struct PokenavMonListItem *, u8 *); + void (*bufferMatchCallItemFunc)(struct PokenavMatchCallEntry *, u8 *); } listFunc; void (*unk14)(u16 a0, u32 a1, u32 a2); }; -struct PokenavSub18 +struct PokenavMonList { u16 listCount; u16 currIndex; - struct PokenavMonList monData[TOTAL_BOXES_COUNT * IN_BOX_COUNT + PARTY_SIZE]; + struct PokenavMonListItem monData[TOTAL_BOXES_COUNT * IN_BOX_COUNT + PARTY_SIZE]; }; // Return values of LoopedTask functions. @@ -406,7 +406,7 @@ void FreeMatchCallSubstruct1(void); int sub_81CAE28(void); int GetNumberRegistered(void); int sub_81CAE48(void); -struct PokenavMatchCallEntries *sub_81CAE94(void); +struct PokenavMatchCallEntry *sub_81CAE94(void); u16 GetMatchCallMapSec(int); bool32 ShouldDrawRematchPokeballIcon(int index); void ClearRematchPokeballIcon(u16 windowId, u32 a1); @@ -415,7 +415,7 @@ const u8 *GetMatchCallFlavorText(int index, int textType); const u8 *GetMatchCallMessageText(int index, u8 *arg1); u16 GetMatchCallOptionCursorPos(void); u16 GetMatchCallOptionId(int arg0); -void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntries * arg0, u8 *str); +void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry * arg0, u8 *str); u8 GetMatchTableMapSectionId(int rematchIndex); int GetIndexDeltaOfNextCheckPageDown(int index); int GetIndexDeltaOfNextCheckPageUp(int index); diff --git a/src/pokenav_conditions.c b/src/pokenav_conditions.c index 6007acc2bbb4..e61b1156863f 100644 --- a/src/pokenav_conditions.c +++ b/src/pokenav_conditions.c @@ -84,7 +84,7 @@ u32 GetConditionGraphMenuCallback(void) static u32 HandleConditionMenuInput(struct Pokenav_ConditionMenu *menu) { - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); u32 ret = ConditionGraphHandleDpadInput(menu); if (ret == CONDITION_FUNC_NONE) @@ -123,7 +123,7 @@ static u32 HandleConditionMenuInput(struct Pokenav_ConditionMenu *menu) static u32 OpenMarkingsMenu(struct Pokenav_ConditionMenu *menu) { - struct PokenavSub18 *monListPtr; + struct PokenavMonList *monListPtr; u8 markings; u32 ret = CONDITION_FUNC_NONE, boxId, monId; @@ -166,7 +166,7 @@ void FreeConditionGraphMenuSubstruct1(void) static u8 ConditionGraphHandleDpadInput(struct Pokenav_ConditionMenu *menu) { - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); u8 ret = CONDITION_FUNC_NONE; if (JOY_HELD(DPAD_UP)) @@ -196,7 +196,7 @@ static u8 SwitchConditionSummaryIndex(u8 moveUp) u16 newLoadId; bool8 wasNotLastMon, isNotLastMon; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); newLoadId = (moveUp) ? menu->nextLoadIdUp : menu->nextLoadIdDown; ConditionGraph_SetNewPositions(&menu->graph, menu->graph.savedPositions[menu->loadId], menu->graph.savedPositions[newLoadId]); @@ -236,7 +236,7 @@ bool32 LoadConditionGraphMenuGfx(void) { s32 var; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); switch (menu->state) { @@ -337,7 +337,7 @@ static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) u16 boxId, monId, gender, species, level, lvlDigits; struct BoxPokemon *boxMon; u8 *txtPtr, *str_; - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); boxId = monListPtr->monData[listId].boxId; monId = monListPtr->monData[listId].monId; @@ -427,7 +427,7 @@ static void CopyMonNameGenderLocation(s16 listId, u8 loadId) { u16 boxId, i; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); if (listId != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) { @@ -459,7 +459,7 @@ static void InitPartyConditionListParameters(void) { u16 i, count; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); + struct PokenavMonList *monListPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavMonList)); menu->inSearchMode = FALSE; for (i = 0, count = 0; i < CalculatePlayerPartyCount(); i++) @@ -492,7 +492,7 @@ static void GetMonConditionGraphData(s16 listId, u8 loadId) { u16 boxId, monId, i; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); if (listId != (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) { @@ -524,7 +524,7 @@ static void ConditionGraphDrawMonPic(s16 listId, u8 loadId) u16 boxId, monId, species; u32 personality, tid; struct Pokenav_ConditionMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_GRAPH_MENU); - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); if (listId == (IsConditionMenuSearchMode() ? monListPtr->listCount : monListPtr->listCount - 1)) return; @@ -540,13 +540,13 @@ static void ConditionGraphDrawMonPic(s16 listId, u8 loadId) u16 GetMonListCount(void) { - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); return monListPtr->listCount; } u16 GetConditionGraphCurrentListIndex(void) { - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); return monListPtr->currIndex; } @@ -600,7 +600,7 @@ u8 *GetConditionMonLocationText(u8 loadId) u16 GetConditionMonDataBuffer(void) { - struct PokenavSub18 *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); + struct PokenavMonList *monListPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_LIST); return monListPtr->monData[monListPtr->currIndex].data; } diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index 770d0d01ab7e..2151fdc42ba3 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -31,7 +31,7 @@ struct Pokenav_SearchResults u32 conditionDataId; bool32 returnFromGraph; bool32 saveResultsList; - struct PokenavSub18 *monList; + struct PokenavMonList *monList; }; struct Pokenav_SearchResultsGfx @@ -58,13 +58,13 @@ static u32 LoopedTask_MoveSearchListPageUp(s32); static u32 LoopedTask_MoveSearchListPageDown(s32); static u32 LoopedTask_ExitConditionSearchMenu(s32); static u32 LoopedTask_SelectSearchResult(s32); -static void InsertMonListItem(struct Pokenav_SearchResults *, struct PokenavMonList *); +static void InsertMonListItem(struct Pokenav_SearchResults *, struct PokenavMonListItem *); static bool32 GetSearchResultCurrentLoopedTaskActive(void); static u32 LoopedTask_OpenConditionSearchResults(s32); static void AddSearchResultListMenuWindow(struct Pokenav_SearchResultsGfx *); static void PrintSearchResultListMenuItems(struct Pokenav_SearchResultsGfx *); static void InitConditionSearchListMenuTemplate(void); -static void PrintSearchMonListItem(struct PokenavMonList *, u8 *); +static void BufferSearchMonListItem(struct PokenavMonListItem *, u8 *); static const u32 sSearchMonDataIds[] = {MON_DATA_COOL, MON_DATA_BEAUTY, MON_DATA_CUTE, MON_DATA_SMART, MON_DATA_TOUGH}; @@ -134,7 +134,7 @@ bool32 PokenavCallback_Init_ConditionSearch(void) if (menu == NULL) return FALSE; - menu->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); + menu->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavMonList)); if (menu->monList == NULL) return FALSE; @@ -225,7 +225,7 @@ static u32 GetReturningFromGraph(void) return menu->returnFromGraph; } -static struct PokenavMonList * GetSearchResultsMonDataList(void) +static struct PokenavMonListItem * GetSearchResultsMonDataList(void) { struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); return menu->monList->monData; @@ -259,7 +259,7 @@ static u32 GetConditionSearchLoopedTask(s32 state) static u32 BuildPartyMonSearchResults(s32 state) { s32 i; - struct PokenavMonList item; + struct PokenavMonListItem item; struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); menu->monList->listCount = 0; @@ -295,7 +295,7 @@ static u32 BuildBoxMonSearchResults(s32 state) s32 boxId = menu->boxId; s32 monId = menu->monId; s32 boxCount = 0; - struct PokenavMonList item; + struct PokenavMonListItem item; while (boxId < TOTAL_BOXES_COUNT) { @@ -351,7 +351,7 @@ static u32 ConvertConditionsToListRanks(s32 state) return LT_FINISH; } -static void InsertMonListItem(struct Pokenav_SearchResults *menu, struct PokenavMonList *item) +static void InsertMonListItem(struct Pokenav_SearchResults *menu, struct PokenavMonListItem *item) { u32 left = 0; u32 right = menu->monList->listCount; @@ -682,12 +682,12 @@ static void InitConditionSearchListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.listFunc.printMonFunc = PrintSearchMonListItem; + template.listFunc.bufferMonItemFunc = BufferSearchMonListItem; template.unk14 = NULL; sub_81C81D4(&sConditionSearchResultBgTemplates[1], &template, 0); } -static void PrintSearchMonListItem(struct PokenavMonList * item, u8 * dest) +static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest) { u8 gender; u8 level; diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index 63b8fcbf53d2..65698c344e1d 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -25,7 +25,7 @@ struct Pokenav3Struct u32 unk10; u32 unk14; u32 (*callback)(struct Pokenav3Struct*); - struct PokenavMatchCallEntries matchCallEntries[MAX_REMATCH_ENTRIES - 1]; + struct PokenavMatchCallEntry matchCallEntries[MAX_REMATCH_ENTRIES - 1]; }; static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *); @@ -298,7 +298,7 @@ int unref_sub_81CAE6C(int arg0) return state->matchCallEntries[arg0].headerId; } -struct PokenavMatchCallEntries *sub_81CAE94(void) +struct PokenavMatchCallEntry *sub_81CAE94(void) { struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->matchCallEntries; @@ -394,7 +394,7 @@ u16 GetMatchCallOptionId(int optionId) return state->matchCallOptions[optionId]; } -void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntries *matchCallEntry, u8 *str) +void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry *matchCallEntry, u8 *str) { const u8 *trainerName; const u8 *className; diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index e91257d14aa4..ae900c61d20d 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -880,7 +880,7 @@ static void InitMatchCallPokenavListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 3; template.fontId = FONT_NARROW; - template.listFunc.unk10_2 = BufferMatchCallNameAndDesc; + template.listFunc.bufferMatchCallItemFunc = BufferMatchCallNameAndDesc; template.unk14 = TryDrawRematchPokeballIcon; sub_81C81D4(&sMatchCallBgTemplates[2], &template, 2); CreateTask(Task_FlashPokeballIcons, 7); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 83720f4cf4a5..2cf6bf24e2c3 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -49,7 +49,7 @@ struct PokenavSub17Substruct u32 loopedTaskId; s32 unk2C; u32 unk30; - void (*unk34)(struct PokenavMatchCallEntries *, u8*); + void (*unk34)(struct PokenavMatchCallEntry *, u8*); void (*unk38)(u16, u32, u32); struct Sprite *rightArrow; struct Sprite *upArrow; @@ -57,7 +57,6 @@ struct PokenavSub17Substruct u8 unkTextBuffer[0x40]; }; -// Generally at index 0x11 (17) struct PokenavSub17 { struct PokenavSub17Substruct list; @@ -68,7 +67,7 @@ struct PokenavSub17 }; void sub_81C82E4(struct PokenavSub17 *matchCall); -bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3); +static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3); void InitMatchCallWindowState(struct MatchCallWindowState *a0, struct PokenavListTemplate *a1); void SpriteCB_MatchCallUpArrow(struct Sprite *sprite); void SpriteCB_MatchCallDownArrow(struct Sprite *sprite); @@ -963,13 +962,13 @@ void InitMatchCallWindowState(struct MatchCallWindowState *dst, struct PokenavLi } } -bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 a3) +static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 a3) { struct WindowTemplate window; dest->listWindow.bg = bgTemplate->bg; dest->listWindow.unk6 = a3; - dest->unk34 = template->listFunc.unk10_2; + dest->unk34 = template->listFunc.bufferMatchCallItemFunc; dest->unk38 = template->unk14; dest->listWindow.unk1 = template->fillValue; dest->listWindow.unk2 = template->item_X; diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index 9f4ea5d4aded..c07460beeff9 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -29,7 +29,7 @@ struct Pokenav_RibbonsMonList s32 monId; u32 changeBgs; u32 saveMonList; - struct PokenavSub18 *monList; + struct PokenavMonList *monList; }; struct Pokenav_RibbonsMonMenu @@ -49,7 +49,7 @@ static u32 BuildPartyMonRibbonList(s32); static u32 InitBoxMonRibbonList(s32); static u32 BuildBoxMonRibbonList(s32); static u32 GetMonRibbonListLoopTaskFunc(s32); -static void InsertMonListItem(struct Pokenav_RibbonsMonList *, struct PokenavMonList *); +static void InsertMonListItem(struct Pokenav_RibbonsMonList *, struct PokenavMonListItem *); static u32 LoopedTask_OpenRibbonsMonList(s32); static bool32 GetRibbonsMonCurrentLoopedTaskActive(void); static u32 LoopedTask_RibbonsListMoveCursorUp(s32); @@ -62,7 +62,7 @@ static void DrawListIndexNumber(s32, s32, s32); static void AddRibbonsMonListWindow(struct Pokenav_RibbonsMonMenu *); static void UpdateIndexNumberDisplay(struct Pokenav_RibbonsMonMenu *); static void InitMonRibbonPokenavListMenuTemplate(void); -static void BufferRibbonMonInfoText(struct PokenavMonList *, u8 *); +static void BufferRibbonMonInfoText(struct PokenavMonListItem *, u8 *); static const LoopedTask sMonRibbonListLoopTaskFuncs[] = { @@ -129,7 +129,7 @@ bool32 PokenavCallback_Init_MonRibbonList(void) if (list == NULL) return FALSE; - list->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavSub18)); + list->monList = AllocSubstruct(POKENAV_SUBSTRUCT_MON_LIST, sizeof(struct PokenavMonList)); if (list->monList == NULL) return FALSE; @@ -214,7 +214,7 @@ static u32 UpdateMonListBgs(void) return list->changeBgs; } -static struct PokenavMonList *GetMonRibbonMonListData(void) +static struct PokenavMonListItem *GetMonRibbonMonListData(void) { struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); return list->monList->monData; @@ -248,7 +248,7 @@ static u32 GetMonRibbonListLoopTaskFunc(s32 state) static u32 BuildPartyMonRibbonList(s32 state) { s32 i; - struct PokenavMonList item; + struct PokenavMonListItem item; struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); list->monList->listCount = 0; @@ -288,7 +288,7 @@ static u32 BuildBoxMonRibbonList(s32 state) s32 boxId = list->boxId; s32 monId = list->monId; s32 boxCount = 0; - struct PokenavMonList item; + struct PokenavMonListItem item; while (boxId < TOTAL_BOXES_COUNT) { @@ -322,7 +322,7 @@ static u32 BuildBoxMonRibbonList(s32 state) return LT_FINISH; } -static void InsertMonListItem(struct Pokenav_RibbonsMonList *list, struct PokenavMonList *item) +static void InsertMonListItem(struct Pokenav_RibbonsMonList *list, struct PokenavMonListItem *item) { u32 left = 0; u32 right = list->monList->listCount; @@ -690,19 +690,19 @@ static void InitMonRibbonPokenavListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.listFunc.printMonFunc = BufferRibbonMonInfoText; + template.listFunc.bufferMonItemFunc = BufferRibbonMonInfoText; template.unk14 = NULL; sub_81C81D4(&sMonRibbonListBgTemplates[1], &template, 0); } // Buffers the "Nickname gender/level" text for the ribbon mon list -static void BufferRibbonMonInfoText(struct PokenavMonList * item0, u8 * dest) +static void BufferRibbonMonInfoText(struct PokenavMonListItem * item0, u8 * dest) { u8 gender; u8 level; u8 * s; const u8 * genderStr; - struct PokenavMonList * item = item0; + struct PokenavMonListItem * item = item0; // Mon is in party if (item->boxId == TOTAL_BOXES_COUNT) diff --git a/src/pokenav_ribbons_summary.c b/src/pokenav_ribbons_summary.c index c12f78ef50d9..81d5b900bd77 100644 --- a/src/pokenav_ribbons_summary.c +++ b/src/pokenav_ribbons_summary.c @@ -42,7 +42,7 @@ enum struct Pokenav_RibbonsSummaryList { u8 unused1[8]; - struct PokenavSub18 *monList; + struct PokenavMonList *monList; u16 selectedPos; u16 normalRibbonLastRowStart; u16 numNormalRibbons; @@ -378,8 +378,8 @@ static u32 GetRibbonsSummaryMonListCount(void) static void GetMonNicknameLevelGender(u8 *nick, u8 *level, u8 *gender) { struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = list->monList; - struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; + struct PokenavMonList *mons = list->monList; + struct PokenavMonListItem *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) { @@ -403,8 +403,8 @@ static void GetMonNicknameLevelGender(u8 *nick, u8 *level, u8 *gender) static void GetMonSpeciesPersonalityOtId(u16 *species, u32 *personality, u32 *otId) { struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = list->monList; - struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; + struct PokenavMonList *mons = list->monList; + struct PokenavMonListItem *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) { @@ -427,8 +427,8 @@ static void GetMonSpeciesPersonalityOtId(u16 *species, u32 *personality, u32 *ot static u32 GetCurrMonRibbonCount(void) { struct Pokenav_RibbonsSummaryList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_LIST); - struct PokenavSub18 *mons = list->monList; - struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; + struct PokenavMonList *mons = list->monList; + struct PokenavMonListItem *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) return GetMonData(&gPlayerParty[monInfo->monId], MON_DATA_RIBBON_COUNT); @@ -440,8 +440,8 @@ static void GetMonRibbons(struct Pokenav_RibbonsSummaryList *list) { u32 ribbonFlags; s32 i, j; - struct PokenavSub18 *mons = list->monList; - struct PokenavMonList *monInfo = &mons->monData[mons->currIndex]; + struct PokenavMonList *mons = list->monList; + struct PokenavMonListItem *monInfo = &mons->monData[mons->currIndex]; if (monInfo->boxId == TOTAL_BOXES_COUNT) ribbonFlags = GetMonData(&gPlayerParty[monInfo->monId], MON_DATA_RIBBONS); diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index ef5fdfaf5e38..312e2107e811 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -73,7 +73,7 @@ struct UsePokeblockSession u8 natureText[34]; }; -// This struct is identical to PokenavMonList, the struct used for managing lists of pokemon in the pokenav +// This struct is identical to PokenavMonListItem, the struct used for managing lists of pokemon in the pokenav // 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 From ec051575683a781d912ded5837936f409057539e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 13 Nov 2021 11:27:11 -0500 Subject: [PATCH 413/762] Move pokenav list item union out of list struct --- include/pokenav.h | 19 +++++++++++-------- src/pokenav_conditions_search_results.c | 4 ++-- src/pokenav_match_call_2.c | 4 ++-- src/pokenav_match_call_ui.c | 6 +++--- src/pokenav_ribbons_list.c | 4 ++-- 5 files changed, 20 insertions(+), 17 deletions(-) diff --git a/include/pokenav.h b/include/pokenav.h index 254f9c7f7bf7..68c33bf7c80d 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -6,6 +6,7 @@ #include "pokemon_storage_system.h" typedef u32 (*LoopedTask)(s32 state); +typedef void (*PokenavListItemBufferFunc)(struct PokenavListItem *, u8 *); struct PokenavMonListItem { @@ -21,12 +22,17 @@ struct PokenavMatchCallEntry u16 headerId; }; -struct PokenavListTemplate +struct PokenavListItem { union { - struct PokenavMonListItem *monList; - struct PokenavMatchCallEntry *matchCallEntries; - } list; + struct PokenavMonListItem mon; + struct PokenavMatchCallEntry call; + } item; +}; + +struct PokenavListTemplate +{ + struct PokenavListItem * list; u16 count; u16 unk6; u8 unk8; @@ -36,10 +42,7 @@ struct PokenavListTemplate u8 maxShowed; u8 fillValue; u8 fontId; - union { - void (*bufferMonItemFunc)(struct PokenavMonListItem *, u8 *); - void (*bufferMatchCallItemFunc)(struct PokenavMatchCallEntry *, u8 *); - } listFunc; + PokenavListItemBufferFunc bufferItemFunc; void (*unk14)(u16 a0, u32 a1, u32 a2); }; diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index 2151fdc42ba3..c58b22ecf7bf 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -672,7 +672,7 @@ static void InitConditionSearchListMenuTemplate(void) { struct PokenavListTemplate template; - template.list.monList = GetSearchResultsMonDataList(); + template.list = (struct PokenavListItem *)GetSearchResultsMonDataList(); template.count = GetSearchResultsMonListCount(); template.unk8 = 4; template.unk6 = GetSearchResultsCurrentListIndex(); @@ -682,7 +682,7 @@ static void InitConditionSearchListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.listFunc.bufferMonItemFunc = BufferSearchMonListItem; + template.bufferItemFunc = (PokenavListItemBufferFunc)BufferSearchMonListItem; template.unk14 = NULL; sub_81C81D4(&sConditionSearchResultBgTemplates[1], &template, 0); } diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index ae900c61d20d..5f579250448e 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -870,7 +870,7 @@ static u32 ExitMatchCall(s32 state) static void InitMatchCallPokenavListMenuTemplate(void) { struct PokenavListTemplate template; - template.list.matchCallEntries = sub_81CAE94(); + template.list = (struct PokenavListItem *)sub_81CAE94(); template.count = GetNumberRegistered(); template.unk8 = 4; template.unk6 = 0; @@ -880,7 +880,7 @@ static void InitMatchCallPokenavListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 3; template.fontId = FONT_NARROW; - template.listFunc.bufferMatchCallItemFunc = BufferMatchCallNameAndDesc; + template.bufferItemFunc = (PokenavListItemBufferFunc)BufferMatchCallNameAndDesc; template.unk14 = TryDrawRematchPokeballIcon; sub_81C81D4(&sMatchCallBgTemplates[2], &template, 2); CreateTask(Task_FlashPokeballIcons, 7); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 2cf6bf24e2c3..8392b613cdbe 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -49,7 +49,7 @@ struct PokenavSub17Substruct u32 loopedTaskId; s32 unk2C; u32 unk30; - void (*unk34)(struct PokenavMatchCallEntry *, u8*); + PokenavListItemBufferFunc unk34; void (*unk38)(u16, u32, u32); struct Sprite *rightArrow; struct Sprite *upArrow; @@ -936,7 +936,7 @@ void ToggleMatchCallVerticalArrows(bool32 shouldHide) void InitMatchCallWindowState(struct MatchCallWindowState *dst, struct PokenavListTemplate *template) { - dst->unk10 = template->list.matchCallEntries; + dst->unk10 = template->list; dst->windowTopIndex = template->unk6; dst->listLength = template->count; dst->unkC = template->unk8; @@ -968,7 +968,7 @@ static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, co dest->listWindow.bg = bgTemplate->bg; dest->listWindow.unk6 = a3; - dest->unk34 = template->listFunc.bufferMatchCallItemFunc; + dest->unk34 = template->bufferItemFunc; dest->unk38 = template->unk14; dest->listWindow.unk1 = template->fillValue; dest->listWindow.unk2 = template->item_X; diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index c07460beeff9..4233819a38d8 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -680,7 +680,7 @@ static void DrawListIndexNumber(s32 windowId, s32 index, s32 max) static void InitMonRibbonPokenavListMenuTemplate(void) { struct PokenavListTemplate template; - template.list.monList = GetMonRibbonMonListData(); + template.list = (struct PokenavListItem *)GetMonRibbonMonListData(); template.count = GetRibbonsMonListCount(); template.unk8 = 4; template.unk6 = GetRibbonListMenuCurrIndex(); @@ -690,7 +690,7 @@ static void InitMonRibbonPokenavListMenuTemplate(void) template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.listFunc.bufferMonItemFunc = BufferRibbonMonInfoText; + template.bufferItemFunc = (PokenavListItemBufferFunc)BufferRibbonMonInfoText; template.unk14 = NULL; sub_81C81D4(&sMonRibbonListBgTemplates[1], &template, 0); } From b3e593dff5cf8f062afe5b03bb38937f5c23f4ec Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 13 Nov 2021 12:52:41 -0500 Subject: [PATCH 414/762] Continue pokenav list ui doc --- include/pokenav.h | 35 +- src/match_call.c | 6 +- src/pokenav_conditions_search_results.c | 36 +- src/pokenav_match_call_1.c | 6 +- src/pokenav_match_call_2.c | 54 +- src/pokenav_match_call_ui.c | 650 ++++++++++++------------ src/pokenav_ribbons_list.c | 42 +- 7 files changed, 423 insertions(+), 406 deletions(-) diff --git a/include/pokenav.h b/include/pokenav.h index 68c33bf7c80d..9c530e11ef69 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -6,7 +6,6 @@ #include "pokemon_storage_system.h" typedef u32 (*LoopedTask)(s32 state); -typedef void (*PokenavListItemBufferFunc)(struct PokenavListItem *, u8 *); struct PokenavMonListItem { @@ -30,20 +29,22 @@ struct PokenavListItem } item; }; +typedef void (*PokenavListBufferItemFunc)(struct PokenavListItem *, u8 *); + struct PokenavListTemplate { struct PokenavListItem * list; u16 count; - u16 unk6; - u8 unk8; + u16 startIndex; + u8 itemSize; u8 item_X; u8 windowWidth; u8 listTop; u8 maxShowed; u8 fillValue; u8 fontId; - PokenavListItemBufferFunc bufferItemFunc; - void (*unk14)(u16 a0, u32 a1, u32 a2); + PokenavListBufferItemFunc bufferItemFunc; + void (*iconDrawFunc)(u16 windowId, u32 listItemId, u32 baseTile); }; struct PokenavMonList @@ -87,7 +88,7 @@ enum POKENAV_SUBSTRUCT_RIBBONS_SUMMARY_MENU, POKENAV_SUBSTRUCT_UNUSED, POKENAV_SUBSTRUCT_REGION_MAP, - POKENAV_SUBSTRUCT_MATCH_CALL_LIST, + POKENAV_SUBSTRUCT_LIST, POKENAV_SUBSTRUCT_MON_LIST, POKENAV_SUBSTRUCT_COUNT, }; @@ -323,22 +324,22 @@ void SetPokenavVBlankCallback(void); void SetVBlankCallback_(IntrCallback callback); // pokenav_match_call_ui.c +bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset); +bool32 IsCreatePokenavListTaskActive(void); +void DestroyPokenavList(void); u32 GetSelectedPokenavListIndex(void); -bool32 sub_81C8224(void); -int MatchCall_MoveCursorUp(void); -int MatchCall_MoveCursorDown(void); -int MatchCall_PageDown(void); -int MatchCall_PageUp(void); -bool32 IsMonListLoopedTaskActive(void); -void ToggleMatchCallVerticalArrows(bool32 shouldHide); -void sub_81C8838(void); +int PokenavList_MoveCursorUp(void); +int PokenavList_MoveCursorDown(void); +int PokenavList_PageDown(void); +int PokenavList_PageUp(void); +bool32 IsMovePokenavListWindowTaskActive(void); +void PokenavList_ToggleVerticalArrows(bool32 shouldHide); +void PokenavList_DrawCurrentItemIcon(void); void sub_81C877C(void); bool32 IsMatchCallListTaskActive(void); void PrintCheckPageInfo(s16 a0); u32 GetMatchCallListTopIndex(void); void sub_81C87F0(void); -bool32 sub_81C81D4(const struct BgTemplate *arg0, struct PokenavListTemplate *arg1, s32 arg2); -void sub_81C8234(void); // pokenav_match_call_data.c bool32 MatchCall_HasCheckPage(u32 idx); @@ -415,7 +416,7 @@ bool32 ShouldDrawRematchPokeballIcon(int index); void ClearRematchPokeballIcon(u16 windowId, u32 a1); int GetMatchCallTrainerPic(int index); const u8 *GetMatchCallFlavorText(int index, int textType); -const u8 *GetMatchCallMessageText(int index, u8 *arg1); +const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest); u16 GetMatchCallOptionCursorPos(void); u16 GetMatchCallOptionId(int arg0); void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry * arg0, u8 *str); diff --git a/src/match_call.c b/src/match_call.c index 0595ad3e33da..85df5822d244 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1499,7 +1499,7 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) { u32 matchCallId; const struct MatchCallText *matchCallText; - bool32 retVal = FALSE; + bool32 newRematchRequest = FALSE; matchCallId = GetTrainerMatchCallId(trainerId); sBattleFrontierStreakInfo.facilityId = 0; @@ -1517,7 +1517,7 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) else if (ShouldTrainerRequestBattle(matchCallId)) { matchCallText = GetDifferentRouteMatchCallText(matchCallId, str); - retVal = TRUE; + newRematchRequest = TRUE; UpdateRematchIfDefeated(matchCallId); } else if (Random() % 3) @@ -1532,7 +1532,7 @@ bool32 SelectMatchCallMessage(int trainerId, u8 *str) } BuildMatchCallString(matchCallId, matchCallText, str); - return retVal; + return newRematchRequest; } static int GetTrainerMatchCallId(int trainerId) diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index c58b22ecf7bf..09bb7c9ac5ac 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -63,7 +63,7 @@ static bool32 GetSearchResultCurrentLoopedTaskActive(void); static u32 LoopedTask_OpenConditionSearchResults(s32); static void AddSearchResultListMenuWindow(struct Pokenav_SearchResultsGfx *); static void PrintSearchResultListMenuItems(struct Pokenav_SearchResultsGfx *); -static void InitConditionSearchListMenuTemplate(void); +static void CreateSearchResultsList(void); static void BufferSearchMonListItem(struct PokenavMonListItem *, u8 *); static const u32 sSearchMonDataIds[] = {MON_DATA_COOL, MON_DATA_BEAUTY, MON_DATA_CUTE, MON_DATA_SMART, MON_DATA_TOUGH}; @@ -415,7 +415,7 @@ bool32 GetSearchResultCurrentLoopedTaskActive(void) void FreeSearchResultSubstruct2(void) { struct Pokenav_SearchResultsGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); - sub_81C8234(); + DestroyPokenavList(); RemoveWindow(gfx->winid); FreePokenavSubstruct(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS_GFX); } @@ -444,10 +444,10 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; CopyPaletteIntoBufferUnfaded(sListBg_Pal, 0x20, 32); - InitConditionSearchListMenuTemplate(); + CreateSearchResultsList(); return LT_INC_AND_PAUSE; case 3: - if (sub_81C8224()) + if (IsCreatePokenavListTaskActive()) return LT_PAUSE; AddSearchResultListMenuWindow(gfx); PrintHelpBarText(HELPBAR_CONDITION_MON_LIST); @@ -485,7 +485,7 @@ static u32 LoopedTask_MoveSearchListCursorUp(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorUp()) + switch (PokenavList_MoveCursorUp()) { case 0: return LT_FINISH; @@ -498,7 +498,7 @@ static u32 LoopedTask_MoveSearchListCursorUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -518,7 +518,7 @@ static u32 LoopedTask_MoveSearchListCursorDown(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorDown()) + switch (PokenavList_MoveCursorDown()) { case 0: return LT_FINISH; @@ -531,7 +531,7 @@ static u32 LoopedTask_MoveSearchListCursorDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -551,7 +551,7 @@ static u32 LoopedTask_MoveSearchListPageUp(s32 state) switch (state) { case 0: - switch (MatchCall_PageUp()) + switch (PokenavList_PageUp()) { case 0: return LT_FINISH; @@ -564,7 +564,7 @@ static u32 LoopedTask_MoveSearchListPageUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -584,7 +584,7 @@ static u32 LoopedTask_MoveSearchListPageDown(s32 state) switch (state) { case 0: - switch (MatchCall_PageDown()) + switch (PokenavList_PageDown()) { case 0: return LT_FINISH; @@ -597,7 +597,7 @@ static u32 LoopedTask_MoveSearchListPageDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -668,23 +668,23 @@ static void PrintSearchResultListMenuItems(struct Pokenav_SearchResultsGfx *gfx) CopyWindowToVram(gfx->winid, COPYWIN_GFX); } -static void InitConditionSearchListMenuTemplate(void) +static void CreateSearchResultsList(void) { struct PokenavListTemplate template; template.list = (struct PokenavListItem *)GetSearchResultsMonDataList(); template.count = GetSearchResultsMonListCount(); - template.unk8 = 4; - template.unk6 = GetSearchResultsCurrentListIndex(); + template.itemSize = sizeof(struct PokenavListItem); + template.startIndex = GetSearchResultsCurrentListIndex(); template.item_X = 13; template.windowWidth = 17; template.listTop = 1; template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.bufferItemFunc = (PokenavListItemBufferFunc)BufferSearchMonListItem; - template.unk14 = NULL; - sub_81C81D4(&sConditionSearchResultBgTemplates[1], &template, 0); + template.bufferItemFunc = (PokenavListBufferItemFunc)BufferSearchMonListItem; + template.iconDrawFunc = NULL; + CreatePokenavList(&sConditionSearchResultBgTemplates[1], &template, 0); } static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest) diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index 65698c344e1d..b2b9179c366c 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -346,15 +346,15 @@ int GetMatchCallTrainerPic(int index) return gFacilityClassToPicIndex[index]; } -const u8 *GetMatchCallMessageText(int index, u8 *arg1) +const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest) { struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - *arg1 = 0; + *newRematchRequest = FALSE; if (!Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType)) return gText_CallCantBeMadeHere; if (!state->matchCallEntries[index].isSpecialTrainer) - *arg1 = SelectMatchCallMessage(GetTrainerIdxByRematchIdx(state->matchCallEntries[index].headerId), gStringVar4); + *newRematchRequest = SelectMatchCallMessage(GetTrainerIdxByRematchIdx(state->matchCallEntries[index].headerId), gStringVar4); else MatchCall_GetMessage(state->matchCallEntries[index].headerId, gStringVar4); diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 5f579250448e..420dac5f8838 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -35,7 +35,7 @@ struct Pokenav_MatchCallGfx u32 loopTaskId; u8 filler8[6]; bool8 unkE; - u8 unkF; + bool8 newRematchRequest; u16 locWindowId; u16 infoBoxWindowId; u16 msgBoxWindowId; @@ -55,7 +55,7 @@ struct Pokenav_MatchCallGfx static bool32 GetCurrentLoopedTaskActive(void); static u32 LoopedTask_OpenMatchCall(s32); -static void InitMatchCallPokenavListMenuTemplate(void); +static void CreateMatchCallList(void); static void sub_81CBC1C(void); static void FreeMatchCallSprites(void); static void LoadCallWindowAndFade(struct Pokenav_MatchCallGfx *); @@ -359,10 +359,10 @@ static u32 LoopedTask_OpenMatchCall(s32 state) if (FreeTempTileDataBuffersIfPossible() || !sub_81CAE28()) return LT_PAUSE; - InitMatchCallPokenavListMenuTemplate(); + CreateMatchCallList(); return LT_INC_AND_PAUSE; case 4: - if (sub_81C8224()) + if (IsCreatePokenavListTaskActive()) return LT_PAUSE; DrawMatchCallLeftColumnWindows(gfx); @@ -399,7 +399,7 @@ static u32 MatchCallListCursorDown(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorDown()) + switch (PokenavList_MoveCursorDown()) { case 0: break; @@ -414,7 +414,7 @@ static u32 MatchCallListCursorDown(s32 state) } break; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -436,7 +436,7 @@ static u32 MatchCallListCursorUp(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorUp()) + switch (PokenavList_MoveCursorUp()) { case 0: break; @@ -451,7 +451,7 @@ static u32 MatchCallListCursorUp(s32 state) } break; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -473,7 +473,7 @@ static u32 MatchCallListPageDown(s32 state) switch (state) { case 0: - switch (MatchCall_PageDown()) + switch (PokenavList_PageDown()) { case 0: break; @@ -488,7 +488,7 @@ static u32 MatchCallListPageDown(s32 state) } break; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -510,7 +510,7 @@ static u32 MatchCallListPageUp(s32 state) switch (state) { case 0: - switch (MatchCall_PageUp()) + switch (PokenavList_PageUp()) { case 0: break; @@ -525,7 +525,7 @@ static u32 MatchCallListPageUp(s32 state) } break; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -597,7 +597,7 @@ static u32 DoMatchCallMessage(s32 state) switch (state) { case 0: - ToggleMatchCallVerticalArrows(TRUE); + PokenavList_ToggleVerticalArrows(TRUE); DrawMsgBoxForMatchCallMsg(gfx); return LT_INC_AND_PAUSE; case 1: @@ -631,7 +631,7 @@ static u32 DoTrainerCloseByMessage(s32 state) case 0: PlaySE(SE_SELECT); DrawMsgBoxForCloseByMsg(gfx); - ToggleMatchCallVerticalArrows(TRUE); + PokenavList_ToggleVerticalArrows(TRUE); gfx->unkE = 1; return LT_INC_AND_PAUSE; case 1: @@ -685,14 +685,16 @@ static u32 CloseMatchCallMessage(s32 state) } else { - if (gfx->unkF) + if (gfx->newRematchRequest) { - sub_81C8838(); + // This call was a new rematch request, + // add the PokĂ©ball icon to their entry + PokenavList_DrawCurrentItemIcon(); result = LT_INC_AND_CONTINUE; } else { - ToggleMatchCallVerticalArrows(FALSE); + PokenavList_ToggleVerticalArrows(FALSE); result = LT_FINISH; } } @@ -704,7 +706,7 @@ static u32 CloseMatchCallMessage(s32 state) } else { - ToggleMatchCallVerticalArrows(FALSE); + PokenavList_ToggleVerticalArrows(FALSE); result = LT_FINISH; } break; @@ -867,28 +869,28 @@ static u32 ExitMatchCall(s32 state) return LT_FINISH; } -static void InitMatchCallPokenavListMenuTemplate(void) +static void CreateMatchCallList(void) { struct PokenavListTemplate template; template.list = (struct PokenavListItem *)sub_81CAE94(); template.count = GetNumberRegistered(); - template.unk8 = 4; - template.unk6 = 0; + template.itemSize = sizeof(struct PokenavListItem); + template.startIndex = 0; template.item_X = 13; template.windowWidth = 16; template.listTop = 1; template.maxShowed = 8; template.fillValue = 3; template.fontId = FONT_NARROW; - template.bufferItemFunc = (PokenavListItemBufferFunc)BufferMatchCallNameAndDesc; - template.unk14 = TryDrawRematchPokeballIcon; - sub_81C81D4(&sMatchCallBgTemplates[2], &template, 2); + template.bufferItemFunc = (PokenavListBufferItemFunc)BufferMatchCallNameAndDesc; + template.iconDrawFunc = TryDrawRematchPokeballIcon; + CreatePokenavList(&sMatchCallBgTemplates[2], &template, 2); CreateTask(Task_FlashPokeballIcons, 7); } static void sub_81CBC1C(void) { - sub_81C8234(); + DestroyPokenavList(); DestroyTask(FindTaskIdByFunc(Task_FlashPokeballIcons)); } @@ -1137,7 +1139,7 @@ static bool32 WaitForTrainerIsCloseByText(struct Pokenav_MatchCallGfx *gfx) static void PrintMatchCallMessage(struct Pokenav_MatchCallGfx *gfx) { int index = GetSelectedPokenavListIndex(); - const u8 *str = GetMatchCallMessageText(index, &gfx->unkF); + const u8 *str = GetMatchCallMessageText(index, &gfx->newRematchRequest); u8 speed = GetPlayerTextSpeedDelay(); AddTextPrinterParameterized(gfx->msgBoxWindowId, FONT_NORMAL, str, 32, 1, speed, NULL); } diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 8392b613cdbe..70e541b55bd8 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -8,23 +8,24 @@ #include "decompress.h" #include "international_string_util.h" -// TODO: This UI isnt just for match call, seems to be the general pokenav list UI +#define GFXTAG_ARROW 10 +#define PALTAG_ARROW 20 struct PokenavListMenuWindow { u8 bg; - u8 unk1; - u8 unk2; - u8 unk3; - u8 unk4; + u8 fillValue; + u8 x; + u8 y; + u8 width; u8 fontId; - u16 unk6; + u16 tileOffset; u16 windowId; u16 unkA; - u16 unkC; - u16 unkE; + u16 numPrinted; + u16 numToPrint; }; -struct MatchCallWindowState { +struct PokenavListWindowState { // The index of the element at the top of the window. u16 windowTopIndex; u16 listLength; @@ -33,203 +34,203 @@ struct MatchCallWindowState { u16 selectedIndexOffset; u16 visibleEntries; u16 unkA; - u32 unkC; - void * unk10; + u32 listItemSize; + void * listPtr; }; struct PokenavSub17Substruct { struct PokenavListMenuWindow listWindow; u32 unk10; - u32 unk14; - u32 unk18; - void * unk1C; - s32 unk20; - s32 unk24; + u32 printIndex; + u32 itemSize; + void * listPtr; + s32 startBgY; + s32 endBgY; u32 loopedTaskId; - s32 unk2C; - u32 unk30; - PokenavListItemBufferFunc unk34; - void (*unk38)(u16, u32, u32); + s32 moveDelta; + u32 bgMoveType; + PokenavListBufferItemFunc bufferItemFunc; + void (*iconDrawFunc)(u16, u32, u32); struct Sprite *rightArrow; struct Sprite *upArrow; struct Sprite *downArrow; - u8 unkTextBuffer[0x40]; + u8 itemTextBuffer[64]; }; struct PokenavSub17 { struct PokenavSub17Substruct list; - u8 tilemapBuffer[0x800]; - struct MatchCallWindowState unk888; + u8 tilemapBuffer[BG_SCREEN_SIZE]; + struct PokenavListWindowState windowState; s32 unk89C; u32 loopedTaskId; }; -void sub_81C82E4(struct PokenavSub17 *matchCall); -static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3); -void InitMatchCallWindowState(struct MatchCallWindowState *a0, struct PokenavListTemplate *a1); -void SpriteCB_MatchCallUpArrow(struct Sprite *sprite); -void SpriteCB_MatchCallDownArrow(struct Sprite *sprite); -void SpriteCB_MatchCallRightArrow(struct Sprite *sprite); -void ToggleMatchCallArrows(struct PokenavSub17Substruct *a0, u32 a1); -void DestroyMatchCallListArrows(struct PokenavSub17Substruct *a0); -void CreateMatchCallArrowSprites(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1); -void sub_81C8ED0(void); -static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1, u32 a2); -void PrintMatchCallFieldNames(struct PokenavSub17Substruct *a0, u32 a1); -void sub_81C8D4C(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1); -void sub_81C8CB4(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1); -void sub_81C8B70(struct PokenavListMenuWindow *a0, s32 a1, s32 a2); -void sub_81C8568(s32 a0, struct PokenavSub17Substruct *a1); -void sub_81C83AC(void * a0, u32 a1, u32 a2, u32 a3, u32 a4, struct PokenavSub17Substruct *a5); -void sub_81C837C(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1); -void sub_81C835C(struct PokenavListMenuWindow *a0); -u32 LoopedTask_sub_81C8254(s32 state); -bool32 sub_81C83E0(void); -u32 LoopedTask_sub_81C83F0(s32 state); -u32 LoopedTask_sub_81C85A0(s32 state); -u32 LoopedTask_sub_81C8870(s32 state); -u32 LoopedTask_sub_81C8A28(s32 state); -u32 LoopedTask_PrintCheckPageInfo(s32 state); - -static const u16 sMatchcallArrowPaletteData[] = INCBIN_U16("graphics/pokenav/list_arrows.gbapal"); -static const u32 sMatchcallArrowSpriteSheetData[] = INCBIN_U32("graphics/pokenav/list_arrows.4bpp.lz"); - -EWRAM_DATA u32 gUnknown_0203CF44 = 0; - -bool32 sub_81C81D4(const struct BgTemplate *arg0, struct PokenavListTemplate *arg1, s32 arg2) -{ - struct PokenavSub17 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_LIST, sizeof(struct PokenavSub17)); +static void InitPokenavListBg(struct PokenavSub17 *); +static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *, const struct BgTemplate *, struct PokenavListTemplate *, s32); +static void InitPokenavListWindowState(struct PokenavListWindowState *, struct PokenavListTemplate *); +static void SpriteCB_UpArrow(struct Sprite *); +static void SpriteCB_DownArrow(struct Sprite *); +static void SpriteCB_RightArrow(struct Sprite *); +static void ToggleListArrows(struct PokenavSub17Substruct *, u32); +static void DestroyListArrows(struct PokenavSub17Substruct *); +static void CreateListArrowSprites(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void LoadListArrowGfx(void); +static void PrintMatchCallFlavorText(struct PokenavListWindowState *, struct PokenavSub17Substruct *, u32); +static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *, u32); +static void PrintMatchCallListTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void PrintCheckPageTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void sub_81C8B70(struct PokenavListMenuWindow *, s32, s32); +static void CreateMoveListWindowTask(s32, struct PokenavSub17Substruct *); +static void PrintListItems(void *, u32, u32, u32, u32, struct PokenavSub17Substruct *); +static void InitListItems(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void InitPokenavListWindow(struct PokenavListMenuWindow *); +static u32 LoopedTask_CreatePokenavList(s32); +static bool32 IsPrintListItemsTaskActive(void); +static u32 LoopedTask_PrintListItems(s32); +static u32 LoopedTask_MoveListWindow(s32); +static u32 LoopedTask_sub_81C8870(s32); +static u32 LoopedTask_sub_81C8A28(s32); +static u32 LoopedTask_PrintCheckPageInfo(s32); + +static const u16 sListArrow_Pal[] = INCBIN_U16("graphics/pokenav/list_arrows.gbapal"); +static const u32 sListArrow_Gfx[] = INCBIN_U32("graphics/pokenav/list_arrows.4bpp.lz"); + +static EWRAM_DATA u32 gUnknown_0203CF44 = 0; + +bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset) +{ + struct PokenavSub17 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_LIST, sizeof(struct PokenavSub17)); if (structPtr == NULL) return FALSE; - InitMatchCallWindowState(&structPtr->unk888, arg1); - if (!CopyPokenavListMenuTemplate(&structPtr->list, arg0, arg1, arg2)) + InitPokenavListWindowState(&structPtr->windowState, listTemplate); + if (!CopyPokenavListMenuTemplate(&structPtr->list, bgTemplate, listTemplate, tileOffset)) return FALSE; - CreateLoopedTask(LoopedTask_sub_81C8254, 6); + CreateLoopedTask(LoopedTask_CreatePokenavList, 6); return TRUE; } -bool32 sub_81C8224(void) +bool32 IsCreatePokenavListTaskActive(void) { - return FuncIsActiveLoopedTask(LoopedTask_sub_81C8254); + return FuncIsActiveLoopedTask(LoopedTask_CreatePokenavList); } -void sub_81C8234(void) +void DestroyPokenavList(void) { - struct PokenavSub17 *structPtr; - - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - DestroyMatchCallListArrows(&structPtr->list); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + DestroyListArrows(&structPtr->list); RemoveWindow(structPtr->list.listWindow.windowId); - FreePokenavSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + FreePokenavSubstruct(POKENAV_SUBSTRUCT_LIST); } -u32 LoopedTask_sub_81C8254(s32 state) +static u32 LoopedTask_CreatePokenavList(s32 state) { struct PokenavSub17 *structPtr; if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - sub_81C82E4(structPtr); + InitPokenavListBg(structPtr); return LT_INC_AND_PAUSE; case 1: - sub_81C835C(&structPtr->list.listWindow); + InitPokenavListWindow(&structPtr->list.listWindow); return LT_INC_AND_PAUSE; case 2: - sub_81C837C(&structPtr->unk888, &structPtr->list); + InitListItems(&structPtr->windowState, &structPtr->list); return LT_INC_AND_PAUSE; case 3: - if (sub_81C83E0()) + if (IsPrintListItemsTaskActive()) { return LT_PAUSE; } else { - sub_81C8ED0(); + LoadListArrowGfx(); return LT_INC_AND_CONTINUE; } case 4: - CreateMatchCallArrowSprites(&structPtr->unk888, &structPtr->list); + CreateListArrowSprites(&structPtr->windowState, &structPtr->list); return LT_FINISH; default: return LT_FINISH; } } -void sub_81C82E4(struct PokenavSub17 *matchCall) +static void InitPokenavListBg(struct PokenavSub17 *a0) { - u16 tileNum = (matchCall->list.listWindow.unk1 << 12) | matchCall->list.listWindow.unk6; - BgDmaFill(matchCall->list.listWindow.bg, PIXEL_FILL(1), matchCall->list.listWindow.unk6, 1); - BgDmaFill(matchCall->list.listWindow.bg, PIXEL_FILL(4), matchCall->list.listWindow.unk6 + 1, 1); - SetBgTilemapBuffer(matchCall->list.listWindow.bg, matchCall->tilemapBuffer); - FillBgTilemapBufferRect_Palette0(matchCall->list.listWindow.bg, tileNum, 0, 0, 32, 32); - ChangeBgY(matchCall->list.listWindow.bg, 0, BG_COORD_SET); - ChangeBgX(matchCall->list.listWindow.bg, 0, BG_COORD_SET); - ChangeBgY(matchCall->list.listWindow.bg, matchCall->list.listWindow.unk3 << 11, BG_COORD_SUB); - CopyBgTilemapBufferToVram(matchCall->list.listWindow.bg); + u16 tileNum = (a0->list.listWindow.fillValue << 12) | a0->list.listWindow.tileOffset; + BgDmaFill(a0->list.listWindow.bg, PIXEL_FILL(1), a0->list.listWindow.tileOffset, 1); + BgDmaFill(a0->list.listWindow.bg, PIXEL_FILL(4), a0->list.listWindow.tileOffset + 1, 1); + SetBgTilemapBuffer(a0->list.listWindow.bg, a0->tilemapBuffer); + FillBgTilemapBufferRect_Palette0(a0->list.listWindow.bg, tileNum, 0, 0, 32, 32); + ChangeBgY(a0->list.listWindow.bg, 0, BG_COORD_SET); + ChangeBgX(a0->list.listWindow.bg, 0, BG_COORD_SET); + ChangeBgY(a0->list.listWindow.bg, a0->list.listWindow.y << 11, BG_COORD_SUB); + CopyBgTilemapBufferToVram(a0->list.listWindow.bg); } -void sub_81C835C(struct PokenavListMenuWindow *listWindow) +static void InitPokenavListWindow(struct PokenavListMenuWindow *listWindow) { FillWindowPixelBuffer(listWindow->windowId, PIXEL_FILL(1)); PutWindowTilemap(listWindow->windowId); CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } -void sub_81C837C(struct MatchCallWindowState *state, struct PokenavSub17Substruct *a1) +static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavSub17Substruct *a1) { - s32 arg2 = state->listLength - state->windowTopIndex; - if (arg2 > state->visibleEntries) - arg2 = state->visibleEntries; + s32 numToPrint = windowState->listLength - windowState->windowTopIndex; + if (numToPrint > windowState->visibleEntries) + numToPrint = windowState->visibleEntries; - sub_81C83AC(state->unk10, state->windowTopIndex, arg2, state->unkC, 0, a1); + PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, a1); } -void sub_81C83AC(void * a0, u32 a1, u32 a2, u32 a3, u32 a4, struct PokenavSub17Substruct *list) +static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 a4, struct PokenavSub17Substruct *list) { - if (a2 == 0) + if (numItems == 0) return; - list->unk1C = a0 + a1 * a3; - list->unk18 = a3; - list->listWindow.unkC = 0; - list->listWindow.unkE = a2; - list->unk14 = a1; + list->listPtr = listPtr + topIndex * itemSize; + list->itemSize = itemSize; + list->listWindow.numPrinted = 0; + list->listWindow.numToPrint = numItems; + list->printIndex = topIndex; list->unk10 = a4; - CreateLoopedTask(LoopedTask_sub_81C83F0, 5); + CreateLoopedTask(LoopedTask_PrintListItems, 5); } -bool32 sub_81C83E0(void) +static bool32 IsPrintListItemsTaskActive(void) { - return FuncIsActiveLoopedTask(LoopedTask_sub_81C83F0); + return FuncIsActiveLoopedTask(LoopedTask_PrintListItems); } -u32 LoopedTask_sub_81C83F0(s32 state) +static u32 LoopedTask_PrintListItems(s32 state) { u32 v1; - struct PokenavSub17Substruct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17Substruct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - v1 = (structPtr->listWindow.unkA + structPtr->listWindow.unkC + structPtr->unk10) & 0xF; - structPtr->unk34(structPtr->unk1C, structPtr->unkTextBuffer); - if (structPtr->unk38 != NULL) - structPtr->unk38(structPtr->listWindow.windowId, structPtr->unk14, v1); + v1 = (structPtr->listWindow.unkA + structPtr->listWindow.numPrinted + structPtr->unk10) & 0xF; + structPtr->bufferItemFunc(structPtr->listPtr, structPtr->itemTextBuffer); + if (structPtr->iconDrawFunc != NULL) + structPtr->iconDrawFunc(structPtr->listWindow.windowId, structPtr->printIndex, v1); - AddTextPrinterParameterized(structPtr->listWindow.windowId, structPtr->listWindow.fontId, structPtr->unkTextBuffer, 8, (v1 << 4) + 1, 255, NULL); - if (++structPtr->listWindow.unkC >= structPtr->listWindow.unkE) + AddTextPrinterParameterized(structPtr->listWindow.windowId, structPtr->listWindow.fontId, structPtr->itemTextBuffer, 8, (v1 << 4) + 1, 255, NULL); + if (++structPtr->listWindow.numPrinted >= structPtr->listWindow.numToPrint) { - if (structPtr->unk38 != NULL) + // Finished printing items. If icons were being drawn, draw the + // window tilemap and graphics. Otherwise just do the graphics + if (structPtr->iconDrawFunc != NULL) CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_FULL); else CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_GFX); @@ -237,8 +238,8 @@ u32 LoopedTask_sub_81C83F0(s32 state) } else { - structPtr->unk1C += structPtr->unk18; - structPtr->unk14++; + structPtr->listPtr += structPtr->itemSize; + structPtr->printIndex++; return LT_CONTINUE; } case 1: @@ -251,88 +252,88 @@ u32 LoopedTask_sub_81C83F0(s32 state) bool32 ShouldShowUpArrow(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - return (structPtr->unk888.windowTopIndex != 0); + return (structPtr->windowState.windowTopIndex != 0); } bool32 ShouldShowDownArrow(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - struct MatchCallWindowState *subPtr = &structPtr->unk888; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *subPtr = &structPtr->windowState; return (subPtr->windowTopIndex + subPtr->visibleEntries < subPtr->listLength); } -void MatchCall_MoveWindow(s32 a0, bool32 a1) +static void MoveListWindow(s32 delta, bool32 a1) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - struct MatchCallWindowState *subPtr = &structPtr->unk888; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *subPtr = &structPtr->windowState; - if (a0 < 0) + if (delta < 0) { - if (subPtr->windowTopIndex + a0 < 0) - a0 = -1 * subPtr->windowTopIndex; + if (subPtr->windowTopIndex + delta < 0) + delta = -1 * subPtr->windowTopIndex; if (a1) - sub_81C83AC(subPtr->unk10, subPtr->windowTopIndex + a0, a0 * -1, subPtr->unkC, a0, &structPtr->list); + PrintListItems(subPtr->listPtr, subPtr->windowTopIndex + delta, delta * -1, subPtr->listItemSize, delta, &structPtr->list); } else if (a1) { s32 temp = gUnknown_0203CF44 = subPtr->windowTopIndex + subPtr->visibleEntries; - if (temp + a0 >= subPtr->listLength) - a0 = subPtr->listLength - temp; + if (temp + delta >= subPtr->listLength) + delta = subPtr->listLength - temp; - sub_81C83AC(subPtr->unk10, gUnknown_0203CF44, a0, subPtr->unkC, subPtr->visibleEntries, &structPtr->list); + PrintListItems(subPtr->listPtr, gUnknown_0203CF44, delta, subPtr->listItemSize, subPtr->visibleEntries, &structPtr->list); } - sub_81C8568(a0, &structPtr->list); - subPtr->windowTopIndex += a0; + CreateMoveListWindowTask(delta, &structPtr->list); + subPtr->windowTopIndex += delta; } -void sub_81C8568(s32 a0, struct PokenavSub17Substruct *list) +static void CreateMoveListWindowTask(s32 delta, struct PokenavSub17Substruct *list) { - list->unk20 = GetBgY(list->listWindow.bg); - list->unk24 = list->unk20 + (a0 << 12); - if (a0 > 0) - list->unk30 = BG_COORD_ADD; + list->startBgY = GetBgY(list->listWindow.bg); + list->endBgY = list->startBgY + (delta << 12); + if (delta > 0) + list->bgMoveType = BG_COORD_ADD; else - list->unk30 = BG_COORD_SUB; - list->unk2C = a0; - list->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C85A0, 6); + list->bgMoveType = BG_COORD_SUB; + list->moveDelta = delta; + list->loopedTaskId = CreateLoopedTask(LoopedTask_MoveListWindow, 6); } -u32 LoopedTask_sub_81C85A0(s32 state) +static u32 LoopedTask_MoveListWindow(s32 state) { - s32 y, v1; - bool32 flag; - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + s32 oldY, newY; + bool32 finished; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavSub17Substruct *subPtr = &structPtr->list; switch (state) { case 0: - if (!sub_81C83E0()) + if (!IsPrintListItemsTaskActive()) return LT_INC_AND_CONTINUE; return LT_PAUSE; case 1: - flag = FALSE; - y = GetBgY(subPtr->listWindow.bg); - v1 = ChangeBgY(subPtr->listWindow.bg, 0x1000, subPtr->unk30); - if (subPtr->unk30 == BG_COORD_SUB) + finished = FALSE; + oldY = GetBgY(subPtr->listWindow.bg); + newY = ChangeBgY(subPtr->listWindow.bg, 0x1000, subPtr->bgMoveType); + if (subPtr->bgMoveType == BG_COORD_SUB) { - if ((y > subPtr->unk24 || y <= subPtr->unk20) && v1 <= subPtr->unk24) - flag = TRUE; + if ((oldY > subPtr->endBgY || oldY <= subPtr->startBgY) && newY <= subPtr->endBgY) + finished = TRUE; } else // BG_COORD_ADD { - if ((y < subPtr->unk24 || y >= subPtr->unk20) && v1 >= subPtr->unk24) - flag = TRUE; + if ((oldY < subPtr->endBgY || oldY >= subPtr->startBgY) && newY >= subPtr->endBgY) + finished = TRUE; } - if (flag) + if (finished) { - subPtr->listWindow.unkA = (subPtr->listWindow.unkA + subPtr->unk2C) & 0xF; - ChangeBgY(subPtr->listWindow.bg, subPtr->unk24, BG_COORD_SET); + subPtr->listWindow.unkA = (subPtr->listWindow.unkA + subPtr->moveDelta) & 0xF; + ChangeBgY(subPtr->listWindow.bg, subPtr->endBgY, BG_COORD_SET); return LT_FINISH; } return LT_PAUSE; @@ -340,21 +341,21 @@ u32 LoopedTask_sub_81C85A0(s32 state) return LT_FINISH; } -bool32 IsMonListLoopedTaskActive(void) +bool32 IsMovePokenavListWindowTaskActive(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->list.loopedTaskId); } -struct MatchCallWindowState *GetMatchCallWindowStruct(void) +static struct PokenavListWindowState *GetPokenavListWindowState(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - return &structPtr->unk888; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + return &structPtr->windowState; } -int MatchCall_MoveCursorUp(void) +int PokenavList_MoveCursorUp(void) { - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); if (structPtr->selectedIndexOffset != 0) { @@ -363,15 +364,15 @@ int MatchCall_MoveCursorUp(void) } if (ShouldShowUpArrow()) { - MatchCall_MoveWindow(-1, TRUE); + MoveListWindow(-1, TRUE); return 2; } return 0; } -int MatchCall_MoveCursorDown(void) +int PokenavList_MoveCursorDown(void) { - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); if (structPtr->windowTopIndex + structPtr->selectedIndexOffset >= structPtr->listLength - 1) return 0; @@ -382,16 +383,16 @@ int MatchCall_MoveCursorDown(void) } if (ShouldShowDownArrow()) { - MatchCall_MoveWindow(1, TRUE); + MoveListWindow(1, TRUE); return 2; } return 0; } -int MatchCall_PageUp(void) +int PokenavList_PageUp(void) { s32 scroll; - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); if (ShouldShowUpArrow()) { @@ -399,7 +400,7 @@ int MatchCall_PageUp(void) scroll = structPtr->visibleEntries; else scroll = structPtr->windowTopIndex; - MatchCall_MoveWindow(scroll * -1, TRUE); + MoveListWindow(scroll * -1, TRUE); return 2; } else if (structPtr->selectedIndexOffset != 0) @@ -410,9 +411,9 @@ int MatchCall_PageUp(void) return 0; } -int MatchCall_PageDown(void) +int PokenavList_PageDown(void) { - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); if (ShouldShowDownArrow()) { @@ -421,7 +422,7 @@ int MatchCall_PageDown(void) if (windowBottomIndex <= structPtr->unk4) scroll = structPtr->visibleEntries; - MatchCall_MoveWindow(scroll, TRUE); + MoveListWindow(scroll, TRUE); return 2; } else @@ -448,66 +449,65 @@ int MatchCall_PageDown(void) u32 GetSelectedPokenavListIndex(void) { - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); return structPtr->windowTopIndex + structPtr->selectedIndexOffset; } u32 GetMatchCallListTopIndex(void) { - struct MatchCallWindowState *structPtr = GetMatchCallWindowStruct(); + struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); return structPtr->windowTopIndex; } void sub_81C877C(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->unk89C = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C8870, 6); } void PrintCheckPageInfo(s16 delta) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - structPtr->unk888.windowTopIndex += delta; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + structPtr->windowState.windowTopIndex += delta; structPtr->unk89C = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); } void sub_81C87F0(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->unk89C = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C8A28, 6); } bool32 IsMatchCallListTaskActive(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->loopedTaskId); } -void sub_81C8838(void) +void PokenavList_DrawCurrentItemIcon(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - struct MatchCallWindowState *subPtr = &structPtr->unk888; - structPtr->list.unk38(structPtr->list.listWindow.windowId, subPtr->windowTopIndex + subPtr->selectedIndexOffset, (structPtr->list.listWindow.unkA + subPtr->selectedIndexOffset) & 0xF); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *subPtr = &structPtr->windowState; + structPtr->list.iconDrawFunc(structPtr->list.listWindow.windowId, subPtr->windowTopIndex + subPtr->selectedIndexOffset, (structPtr->list.listWindow.unkA + subPtr->selectedIndexOffset) & 0xF); CopyWindowToVram(structPtr->list.listWindow.windowId, COPYWIN_MAP); } -// TODO: -u32 LoopedTask_sub_81C8870(s32 state) +static u32 LoopedTask_sub_81C8870(s32 state) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - ToggleMatchCallArrows(&structPtr->list, 1); + ToggleListArrows(&structPtr->list, 1); // fall-through case 1: - if (structPtr->unk89C != structPtr->unk888.selectedIndexOffset) + if (structPtr->unk89C != structPtr->windowState.selectedIndexOffset) sub_81C8B70(&structPtr->list.listWindow, structPtr->unk89C, 1); structPtr->unk89C++; @@ -515,10 +515,10 @@ u32 LoopedTask_sub_81C8870(s32 state) case 2: if (!IsDma3ManagerBusyWithBgCopy()) { - if (structPtr->unk89C != structPtr->unk888.visibleEntries) + if (structPtr->unk89C != structPtr->windowState.visibleEntries) return 6; - if (structPtr->unk888.selectedIndexOffset != 0) - sub_81C8B70(&structPtr->list.listWindow, structPtr->unk89C, structPtr->unk888.selectedIndexOffset); + if (structPtr->windowState.selectedIndexOffset != 0) + sub_81C8B70(&structPtr->list.listWindow, structPtr->unk89C, structPtr->windowState.selectedIndexOffset); return LT_INC_AND_PAUSE; } @@ -526,55 +526,55 @@ u32 LoopedTask_sub_81C8870(s32 state) case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - if (structPtr->unk888.selectedIndexOffset != 0) + if (structPtr->windowState.selectedIndexOffset != 0) { - MatchCall_MoveWindow(structPtr->unk888.selectedIndexOffset, FALSE); + MoveListWindow(structPtr->windowState.selectedIndexOffset, FALSE); return LT_INC_AND_PAUSE; } return LT_FINISH; } return LT_PAUSE; case 4: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; - structPtr->unk888.selectedIndexOffset = 0; + structPtr->windowState.selectedIndexOffset = 0; return LT_FINISH; } return LT_FINISH; } -u32 LoopedTask_PrintCheckPageInfo(s32 state) +static u32 LoopedTask_PrintCheckPageInfo(s32 state) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; switch (state) { case 0: - sub_81C8CB4(&structPtr->unk888, &structPtr->list); + PrintCheckPageTrainerName(&structPtr->windowState, &structPtr->list); break; case 1: PrintMatchCallFieldNames(&structPtr->list, 0); break; case 2: - PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->list, CHECK_PAGE_STRATEGY); + PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_STRATEGY); break; case 3: PrintMatchCallFieldNames(&structPtr->list, 1); break; case 4: - PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->list, CHECK_PAGE_POKEMON); + PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_POKEMON); break; case 5: PrintMatchCallFieldNames(&structPtr->list, 2); break; case 6: - PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->list, CHECK_PAGE_INTRO_1); + PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_INTRO_1); break; case 7: - PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->list, CHECK_PAGE_INTRO_2); + PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_INTRO_2); break; default: return LT_FINISH; @@ -582,95 +582,95 @@ u32 LoopedTask_PrintCheckPageInfo(s32 state) return LT_INC_AND_PAUSE; } -u32 LoopedTask_sub_81C8A28(s32 state) +static u32 LoopedTask_sub_81C8A28(s32 state) { struct PokenavSub17 *structPtr; - struct MatchCallWindowState *subPtr888; + struct PokenavListWindowState *windowState; struct PokenavSub17Substruct *subPtr0; s32 r5, *ptr; if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - subPtr888 = &structPtr->unk888; + structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + windowState = &structPtr->windowState; subPtr0 = &structPtr->list; switch (state) { case 0: - sub_81C8D4C(subPtr888, subPtr0); + PrintMatchCallListTrainerName(windowState, subPtr0); return LT_INC_AND_PAUSE; case 1: ptr = &structPtr->unk89C; - if (++(*ptr) < structPtr->unk888.visibleEntries) + if (++(*ptr) < structPtr->windowState.visibleEntries) { sub_81C8B70(&subPtr0->listWindow, *ptr, 1); return LT_PAUSE; } *ptr = 0; - if (subPtr888->listLength <= subPtr888->visibleEntries) + if (windowState->listLength <= windowState->visibleEntries) { - if (subPtr888->windowTopIndex != 0) + if (windowState->windowTopIndex != 0) { - s32 r4 = subPtr888->windowTopIndex; + s32 r4 = windowState->windowTopIndex; r5 = -r4; sub_81C8B70(&subPtr0->listWindow, r5, r4); - subPtr888->selectedIndexOffset = r4; + windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; } } else { - if (subPtr888->windowTopIndex + subPtr888->visibleEntries > subPtr888->listLength) + if (windowState->windowTopIndex + windowState->visibleEntries > windowState->listLength) { - s32 r4 = subPtr888->windowTopIndex + subPtr888->visibleEntries - subPtr888->listLength; + s32 r4 = windowState->windowTopIndex + windowState->visibleEntries - windowState->listLength; r5 = -r4; sub_81C8B70(&subPtr0->listWindow, r5, r4); - subPtr888->selectedIndexOffset = r4; + windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; } } return 9; case 2: - MatchCall_MoveWindow(structPtr->unk89C, FALSE); + MoveListWindow(structPtr->unk89C, FALSE); return LT_INC_AND_PAUSE; case 3: - if (!IsMonListLoopedTaskActive()) + if (!IsMovePokenavListWindowTaskActive()) { structPtr->unk89C = 0; return 1; } return 2; case 4: - sub_81C83AC(subPtr888->unk10, subPtr888->windowTopIndex + structPtr->unk89C, 1, subPtr888->unkC, structPtr->unk89C, &structPtr->list); + PrintListItems(windowState->listPtr, windowState->windowTopIndex + structPtr->unk89C, 1, windowState->listItemSize, structPtr->unk89C, &structPtr->list); return LT_INC_AND_PAUSE; case 5: - if (sub_81C83E0()) + if (IsPrintListItemsTaskActive()) return LT_PAUSE; - if (++structPtr->unk89C >= subPtr888->listLength || structPtr->unk89C >= subPtr888->visibleEntries) + if (++structPtr->unk89C >= windowState->listLength || structPtr->unk89C >= windowState->visibleEntries) return LT_INC_AND_CONTINUE; return 9; case 6: - ToggleMatchCallArrows(subPtr0, 0); + ToggleListArrows(subPtr0, 0); return LT_FINISH; } return LT_FINISH; } -void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) +static void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) { - u8 *v1 = (u8*)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); - u32 v2 = listWindow->unk4 * 64; + u8 *tileData = (u8*)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); + u32 v2 = listWindow->width * 64; a1 = (listWindow->unkA + a1) & 0xF; if (a1 + a2 <= 16) { - CpuFastFill8(PIXEL_FILL(1), v1 + a1 * v2, a2 * v2); + CpuFastFill8(PIXEL_FILL(1), tileData + a1 * v2, a2 * v2); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } else @@ -678,8 +678,8 @@ void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) u32 v3 = 16 - a1; u32 v4 = a2 - v3; - CpuFastFill8(PIXEL_FILL(1), v1 + a1 * v2, v3 * v2); - CpuFastFill8(PIXEL_FILL(1), v1, v4 * v2); + CpuFastFill8(PIXEL_FILL(1), tileData + a1 * v2, v3 * v2); + CpuFastFill8(PIXEL_FILL(1), tileData, v4 * v2); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } @@ -693,50 +693,56 @@ void sub_81C8C64(struct PokenavListMenuWindow *listWindow, u32 a1) { u16 var; u16 *v1 = (u16*)GetBgTilemapBuffer(GetWindowAttribute(listWindow->windowId, WINDOW_BG)); - v1 += ((listWindow->unkA << 6) + listWindow->unk2) - 1; + v1 += ((listWindow->unkA << 6) + listWindow->x) - 1; if (a1 != 0) - var = (listWindow->unk1 << 12) | (listWindow->unk6 + 1); + var = (listWindow->fillValue << 12) | (listWindow->tileOffset + 1); else - var = (listWindow->unk1 << 12) | (listWindow->unk6); + var = (listWindow->fillValue << 12) | (listWindow->tileOffset); v1[0] = var; v1[0x20] = var; } -void sub_81C8CB4(struct MatchCallWindowState *state, struct PokenavSub17Substruct *list) +// Print the trainer's name and title at the top of their check page +static void PrintCheckPageTrainerName(struct PokenavListWindowState *state, struct PokenavSub17Substruct *list) { u8 colors[3] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_RED}; - list->unk34(state->unk10 + state->unkC * state->windowTopIndex, list->unkTextBuffer); - list->unk38(list->listWindow.windowId, state->windowTopIndex, list->listWindow.unkA); - FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(4), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); - AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SKIP_DRAW, list->unkTextBuffer); + list->bufferItemFunc(state->listPtr + state->listItemSize * state->windowTopIndex, list->itemTextBuffer); + list->iconDrawFunc(list->listWindow.windowId, state->windowTopIndex, list->listWindow.unkA); + FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(4), 0, list->listWindow.unkA * 16, list->listWindow.width * 8, 16); + AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SKIP_DRAW, list->itemTextBuffer); sub_81C8C64(&list->listWindow, 1); - CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_FULL, 0, list->listWindow.unkA * 2, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_FULL, 0, list->listWindow.unkA * 2, list->listWindow.width, 2); } -void sub_81C8D4C(struct MatchCallWindowState *state, struct PokenavSub17Substruct *list) +// Print the trainer's name and title for the list (to replace the check page name and title, which has a red background) +static void PrintMatchCallListTrainerName(struct PokenavListWindowState *state, struct PokenavSub17Substruct *list) { - list->unk34(state->unk10 + state->unkC * state->windowTopIndex, list->unkTextBuffer); - FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.unk4 * 8, 16); - AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->unkTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SKIP_DRAW, NULL); + list->bufferItemFunc(state->listPtr + state->listItemSize * state->windowTopIndex, list->itemTextBuffer); + FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.width * 8, 16); + AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->itemTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SKIP_DRAW, NULL); sub_81C8C64(&list->listWindow, 0); CopyWindowToVram(list->listWindow.windowId, COPYWIN_FULL); } -void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) +static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) { - const u8 *fieldNames[] = {gText_PokenavMatchCall_Strategy, gText_PokenavMatchCall_TrainerPokemon, gText_PokenavMatchCall_SelfIntroduction}; + const u8 *fieldNames[] = { + gText_PokenavMatchCall_Strategy, + gText_PokenavMatchCall_TrainerPokemon, + gText_PokenavMatchCall_SelfIntroduction + }; u8 colors[3] = {TEXT_COLOR_WHITE, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED}; u32 top = (list->listWindow.unkA + 1 + (fieldId * 2)) & 0xF; - FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, top << 4, list->listWindow.unk4, 16); + FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, top << 4, list->listWindow.width, 16); AddTextPrinterParameterized3(list->listWindow.windowId, FONT_NARROW, 2, (top << 4) + 1, colors, TEXT_SKIP_DRAW, fieldNames[fieldId]); - CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.width, 2); } -static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) +static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) { // lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = @@ -752,31 +758,31 @@ static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct Pok if (str != NULL) { - FillWindowTilesByRow(list->listWindow.windowId, 1, r6 * 2, list->listWindow.unk4 - 1, 2); + FillWindowTilesByRow(list->listWindow.windowId, 1, r6 * 2, list->listWindow.width - 1, 2); AddTextPrinterParameterized(list->listWindow.windowId, FONT_NARROW, str, 2, (r6 << 4) + 1, TEXT_SKIP_DRAW, NULL); - CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, r6 * 2, list->listWindow.unk4, 2); + CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, r6 * 2, list->listWindow.width, 2); } } -static const struct CompressedSpriteSheet sMatchcallArrowSpriteSheets[] = +static const struct CompressedSpriteSheet sListArrowSpriteSheets[] = { { - .data = sMatchcallArrowSpriteSheetData, + .data = sListArrow_Gfx, .size = 192, - .tag = 0xA + .tag = GFXTAG_ARROW } }; -static const struct SpritePalette sMatchcallArrowPalettes[] = +static const struct SpritePalette sListArrowPalettes[] = { { - .data = sMatchcallArrowPaletteData, - .tag = 0x14 + .data = sListArrow_Pal, + .tag = PALTAG_ARROW }, {} }; -static const struct OamData sMatchCallRightArrowSpriteOam = +static const struct OamData sOamData_RightArrow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -790,18 +796,18 @@ static const struct OamData sMatchCallRightArrowSpriteOam = .paletteNum = 0 }; -static const struct SpriteTemplate sMatchCallRightArrowSprite = +static const struct SpriteTemplate sSpriteTemplate_RightArrow = { - .tileTag = 0xA, - .paletteTag = 0x14, - .oam = &sMatchCallRightArrowSpriteOam, + .tileTag = GFXTAG_ARROW, + .paletteTag = PALTAG_ARROW, + .oam = &sOamData_RightArrow, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_MatchCallRightArrow + .callback = SpriteCB_RightArrow }; -static const struct OamData sMatchCallUpDownArrowSpriteOam = +static const struct OamData sOamData_UpDownArrow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -815,60 +821,60 @@ static const struct OamData sMatchCallUpDownArrowSpriteOam = .paletteNum = 0 }; -static const struct SpriteTemplate sMatchCallUpDownArrowSprite = +static const struct SpriteTemplate sSpriteTemplate_UpDownArrow = { - .tileTag = 0xA, - .paletteTag = 0x14, - .oam = &sMatchCallUpDownArrowSpriteOam, + .tileTag = GFXTAG_ARROW, + .paletteTag = PALTAG_ARROW, + .oam = &sOamData_UpDownArrow, .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -void sub_81C8ED0(void) +static void LoadListArrowGfx(void) { u32 i; const struct CompressedSpriteSheet *ptr; - for (i = 0, ptr = sMatchcallArrowSpriteSheets; i < ARRAY_COUNT(sMatchcallArrowSpriteSheets); ptr++, i++) + for (i = 0, ptr = sListArrowSpriteSheets; i < ARRAY_COUNT(sListArrowSpriteSheets); ptr++, i++) LoadCompressedSpriteSheet(ptr); - Pokenav_AllocAndLoadPalettes(sMatchcallArrowPalettes); + Pokenav_AllocAndLoadPalettes(sListArrowPalettes); } -void CreateMatchCallArrowSprites(struct MatchCallWindowState *windowState, struct PokenavSub17Substruct *list) +static void CreateListArrowSprites(struct PokenavListWindowState *windowState, struct PokenavSub17Substruct *list) { u32 spriteId; s16 x; - spriteId = CreateSprite(&sMatchCallRightArrowSprite, list->listWindow.unk2 * 8 + 3, (list->listWindow.unk3 + 1) * 8, 7); + spriteId = CreateSprite(&sSpriteTemplate_RightArrow, list->listWindow.x * 8 + 3, (list->listWindow.y + 1) * 8, 7); list->rightArrow = &gSprites[spriteId]; - x = list->listWindow.unk2 * 8 + (list->listWindow.unk4 - 1) * 4; - spriteId = CreateSprite(&sMatchCallUpDownArrowSprite, x, list->listWindow.unk3 * 8 + windowState->visibleEntries * 16, 7); + x = list->listWindow.x * 8 + (list->listWindow.width - 1) * 4; + spriteId = CreateSprite(&sSpriteTemplate_UpDownArrow, x, list->listWindow.y * 8 + windowState->visibleEntries * 16, 7); list->downArrow = &gSprites[spriteId]; list->downArrow->oam.tileNum += 2; - list->downArrow->callback = SpriteCB_MatchCallDownArrow; + list->downArrow->callback = SpriteCB_DownArrow; - spriteId = CreateSprite(&sMatchCallUpDownArrowSprite, x, list->listWindow.unk3 * 8, 7); + spriteId = CreateSprite(&sSpriteTemplate_UpDownArrow, x, list->listWindow.y * 8, 7); list->upArrow = &gSprites[spriteId]; list->upArrow->oam.tileNum += 4; - list->upArrow->callback = SpriteCB_MatchCallUpArrow; + list->upArrow->callback = SpriteCB_UpArrow; } -void DestroyMatchCallListArrows(struct PokenavSub17Substruct *list) +static void DestroyListArrows(struct PokenavSub17Substruct *list) { DestroySprite(list->rightArrow); DestroySprite(list->upArrow); DestroySprite(list->downArrow); - FreeSpriteTilesByTag(0xA); - FreeSpritePaletteByTag(0x14); + FreeSpriteTilesByTag(GFXTAG_ARROW); + FreeSpritePaletteByTag(PALTAG_ARROW); } -void ToggleMatchCallArrows(struct PokenavSub17Substruct *list, bool32 shouldHide) +static void ToggleListArrows(struct PokenavSub17Substruct *list, bool32 invisible) { - if (shouldHide) + if (invisible) { list->rightArrow->callback = SpriteCallbackDummy; list->upArrow->callback = SpriteCallbackDummy; @@ -876,76 +882,84 @@ void ToggleMatchCallArrows(struct PokenavSub17Substruct *list, bool32 shouldHide } else { - list->rightArrow->callback = SpriteCB_MatchCallRightArrow; - list->upArrow->callback = SpriteCB_MatchCallUpArrow; - list->downArrow->callback = SpriteCB_MatchCallDownArrow; + list->rightArrow->callback = SpriteCB_RightArrow; + list->upArrow->callback = SpriteCB_UpArrow; + list->downArrow->callback = SpriteCB_DownArrow; } - list->rightArrow->invisible = shouldHide; - list->upArrow->invisible = shouldHide; - list->downArrow->invisible = shouldHide; + list->rightArrow->invisible = invisible; + list->upArrow->invisible = invisible; + list->downArrow->invisible = invisible; } -void SpriteCB_MatchCallRightArrow(struct Sprite *sprite) +static void SpriteCB_RightArrow(struct Sprite *sprite) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - sprite->y2 = structPtr->unk888.selectedIndexOffset << 4; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + sprite->y2 = structPtr->windowState.selectedIndexOffset << 4; } -void SpriteCB_MatchCallDownArrow(struct Sprite *sprite) +#define sTimer data[0] +#define sOffset data[1] +#define sInvisible data[7] + +static void SpriteCB_DownArrow(struct Sprite *sprite) { - if (sprite->data[7] == 0 && ShouldShowDownArrow()) + if (!sprite->sInvisible && ShouldShowDownArrow()) sprite->invisible = FALSE; else sprite->invisible = TRUE; - if (++sprite->data[0] > 3) + if (++sprite->sTimer > 3) { s16 offset; - sprite->data[0] = 0; - offset = (sprite->data[1] + 1) & 7; - sprite->data[1] = offset; + sprite->sTimer = 0; + offset = (sprite->sOffset + 1) & 7; + sprite->sOffset = offset; sprite->y2 = offset; } } -void SpriteCB_MatchCallUpArrow(struct Sprite *sprite) +static void SpriteCB_UpArrow(struct Sprite *sprite) { - if (sprite->data[7] == 0 && ShouldShowUpArrow()) + if (!sprite->sInvisible && ShouldShowUpArrow()) sprite->invisible = FALSE; else sprite->invisible = TRUE; - if (++sprite->data[0] > 3) + if (++sprite->sTimer > 3) { s16 offset; - sprite->data[0] = 0; - offset = (sprite->data[1] + 1) & 7; - sprite->data[1] = offset; + sprite->sTimer = 0; + offset = (sprite->sOffset + 1) & 7; + sprite->sOffset = offset; sprite->y2 = -1 * offset; } } -void ToggleMatchCallVerticalArrows(bool32 shouldHide) +void PokenavList_ToggleVerticalArrows(bool32 invisible) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST); - structPtr->list.upArrow->data[7] = shouldHide; - structPtr->list.downArrow->data[7] = shouldHide; + struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + structPtr->list.upArrow->sInvisible = invisible; + structPtr->list.downArrow->sInvisible = invisible; } -void InitMatchCallWindowState(struct MatchCallWindowState *dst, struct PokenavListTemplate *template) +#undef sTimer +#undef sOffset +#undef sInvisible + +static void InitPokenavListWindowState(struct PokenavListWindowState *dst, struct PokenavListTemplate *template) { - dst->unk10 = template->list; - dst->windowTopIndex = template->unk6; + dst->listPtr = template->list; + dst->windowTopIndex = template->startIndex; dst->listLength = template->count; - dst->unkC = template->unk8; + dst->listItemSize = template->itemSize; dst->visibleEntries = template->maxShowed; if (dst->visibleEntries >= dst->listLength) { dst->windowTopIndex = 0; dst->unk4 = 0; - dst->selectedIndexOffset = template->unk6; + dst->selectedIndexOffset = template->startIndex; } else { @@ -953,7 +967,7 @@ void InitMatchCallWindowState(struct MatchCallWindowState *dst, struct PokenavLi if (dst->windowTopIndex + dst->visibleEntries > dst->listLength) { dst->selectedIndexOffset = dst->windowTopIndex + dst->visibleEntries - dst->listLength; - dst->windowTopIndex = template->unk6 - dst->selectedIndexOffset; + dst->windowTopIndex = template->startIndex - dst->selectedIndexOffset; } else { @@ -962,18 +976,18 @@ void InitMatchCallWindowState(struct MatchCallWindowState *dst, struct PokenavLi } } -static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 a3) +static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 tileOffset) { struct WindowTemplate window; dest->listWindow.bg = bgTemplate->bg; - dest->listWindow.unk6 = a3; - dest->unk34 = template->bufferItemFunc; - dest->unk38 = template->unk14; - dest->listWindow.unk1 = template->fillValue; - dest->listWindow.unk2 = template->item_X; - dest->listWindow.unk3 = template->listTop; - dest->listWindow.unk4 = template->windowWidth; + dest->listWindow.tileOffset = tileOffset; + dest->bufferItemFunc = template->bufferItemFunc; + dest->iconDrawFunc = template->iconDrawFunc; + dest->listWindow.fillValue = template->fillValue; + dest->listWindow.x = template->item_X; + dest->listWindow.y = template->listTop; + dest->listWindow.width = template->windowWidth; dest->listWindow.fontId = template->fontId; window.bg = bgTemplate->bg; @@ -982,7 +996,7 @@ static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, co window.width = template->windowWidth; window.height = 32; window.paletteNum = template->fillValue; - window.baseBlock = a3 + 2; + window.baseBlock = tileOffset + 2; dest->listWindow.windowId = AddWindow(&window); if (dest->listWindow.windowId == WINDOW_NONE) diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index 4233819a38d8..c70554eb0ef9 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -61,8 +61,8 @@ static u32 LoopedTask_RibbonsListOpenSummary(s32); static void DrawListIndexNumber(s32, s32, s32); static void AddRibbonsMonListWindow(struct Pokenav_RibbonsMonMenu *); static void UpdateIndexNumberDisplay(struct Pokenav_RibbonsMonMenu *); -static void InitMonRibbonPokenavListMenuTemplate(void); -static void BufferRibbonMonInfoText(struct PokenavMonListItem *, u8 *); +static void CreateRibbonMonsList(void); +static void BufferRibbonMonInfoText(struct PokenavListItem *, u8 *); static const LoopedTask sMonRibbonListLoopTaskFuncs[] = { @@ -416,7 +416,7 @@ bool32 GetRibbonsMonCurrentLoopedTaskActive(void) void FreeRibbonsMonMenu(void) { struct Pokenav_RibbonsMonMenu * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); - sub_81C8234(); + DestroyPokenavList(); RemoveWindow(menu->winid); FreePokenavSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU); } @@ -447,10 +447,10 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) if (FreeTempTileDataBuffersIfPossible()) return LT_PAUSE; CopyPaletteIntoBufferUnfaded(sMonRibbonListUi_Pal, 0x20, 0x20); - InitMonRibbonPokenavListMenuTemplate(); + CreateRibbonMonsList(); return LT_INC_AND_PAUSE; case 3: - if (sub_81C8224()) + if (IsCreatePokenavListTaskActive()) return LT_PAUSE; AddRibbonsMonListWindow(menu); return LT_INC_AND_PAUSE; @@ -483,7 +483,7 @@ static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorUp()) + switch (PokenavList_MoveCursorUp()) { case 0: return LT_FINISH; @@ -496,7 +496,7 @@ static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -516,7 +516,7 @@ static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) switch (state) { case 0: - switch (MatchCall_MoveCursorDown()) + switch (PokenavList_MoveCursorDown()) { case 0: return LT_FINISH; @@ -529,7 +529,7 @@ static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -549,7 +549,7 @@ static u32 LoopedTask_RibbonsListMovePageUp(s32 state) switch (state) { case 0: - switch (MatchCall_PageUp()) + switch (PokenavList_PageUp()) { case 0: return LT_FINISH; @@ -562,7 +562,7 @@ static u32 LoopedTask_RibbonsListMovePageUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -582,7 +582,7 @@ static u32 LoopedTask_RibbonsListMovePageDown(s32 state) switch (state) { case 0: - switch (MatchCall_PageDown()) + switch (PokenavList_PageDown()) { case 0: return LT_FINISH; @@ -595,7 +595,7 @@ static u32 LoopedTask_RibbonsListMovePageDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMonListLoopedTaskActive()) + if (IsMovePokenavListWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -677,32 +677,32 @@ static void DrawListIndexNumber(s32 windowId, s32 index, s32 max) AddTextPrinterParameterized(windowId, FONT_NORMAL, strbuf, x, 1, TEXT_SKIP_DRAW, NULL); } -static void InitMonRibbonPokenavListMenuTemplate(void) +static void CreateRibbonMonsList(void) { struct PokenavListTemplate template; template.list = (struct PokenavListItem *)GetMonRibbonMonListData(); template.count = GetRibbonsMonListCount(); - template.unk8 = 4; - template.unk6 = GetRibbonListMenuCurrIndex(); + template.itemSize = sizeof(struct PokenavListItem); + template.startIndex = GetRibbonListMenuCurrIndex(); template.item_X = 13; template.windowWidth = 17; template.listTop = 1; template.maxShowed = 8; template.fillValue = 2; template.fontId = FONT_NORMAL; - template.bufferItemFunc = (PokenavListItemBufferFunc)BufferRibbonMonInfoText; - template.unk14 = NULL; - sub_81C81D4(&sMonRibbonListBgTemplates[1], &template, 0); + template.bufferItemFunc = BufferRibbonMonInfoText; + template.iconDrawFunc = NULL; + CreatePokenavList(&sMonRibbonListBgTemplates[1], &template, 0); } // Buffers the "Nickname gender/level" text for the ribbon mon list -static void BufferRibbonMonInfoText(struct PokenavMonListItem * item0, u8 * dest) +static void BufferRibbonMonInfoText(struct PokenavListItem * listItem, u8 * dest) { u8 gender; u8 level; u8 * s; const u8 * genderStr; - struct PokenavMonListItem * item = item0; + struct PokenavMonListItem * item = (struct PokenavMonListItem *)listItem; // Mon is in party if (item->boxId == TOTAL_BOXES_COUNT) From 4c4fa1f25e55e41f469604a984a820f5a7f30e90 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 13 Nov 2021 16:56:45 -0500 Subject: [PATCH 415/762] Typo fix --- src/data/pokemon_graphics/back_pic_coordinates.h | 4 ++-- src/data/pokemon_graphics/front_pic_coordinates.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index ea817060802a..addb482851eb 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -1,5 +1,5 @@ -// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 the -// non-trasparent area of pixels the sprite actually occupies are. +// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 frame +// the sprite's non-transparent pixels actually are. // .size is the dimensions of this drawn pixel area. // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonBackPicCoords[] = diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index f0cebf1f51af..6022f9cc1812 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -1,5 +1,5 @@ -// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 the -// non-trasparent area of pixels the sprite actually occupies are. +// All PokĂ©mon pics are 64x64, but this data table defines where in this 64x64 frame +// the sprite's non-transparent pixels actually are. // .size is the dimensions of this drawn pixel area. // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonFrontPicCoords[] = From 8e8b70c15c1e34074d27acaa07f8e28d0d3d9e89 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 13 Nov 2021 17:22:01 -0500 Subject: [PATCH 416/762] Add clarifying comment to LinkFullSave_WriteSector --- src/save.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/save.c b/src/save.c index cd25977e1cd4..4cd2982a1b9d 100644 --- a/src/save.c +++ b/src/save.c @@ -278,6 +278,7 @@ static u8 HandleWriteIncrementalSector(u16 numSectors, const struct SaveSectorLo } else { + // Exceeded max sector, finished status = SAVE_STATUS_ERROR; } @@ -793,6 +794,10 @@ bool8 LinkFullSave_WriteSector(void) u8 status = HandleWriteIncrementalSector(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); + + // In this case "error" either means that an actual error was encountered + // or that the given max sector has been reached (meaning it has finished successfully). + // If there was an actual error the save failed screen above will also be shown. if (status == SAVE_STATUS_ERROR) return TRUE; else From 9d3345a6d69c38bf31014df69c52583c877eed24 Mon Sep 17 00:00:00 2001 From: ProjectRevoTPP Date: Sat, 13 Nov 2021 21:41:16 -0500 Subject: [PATCH 417/762] Enforce structs to enforce save block order for modern toolchains. --- include/load_save.h | 30 +++++++++++++++++++++++++++--- src/load_save.c | 15 +++++---------- src/main.c | 4 ++-- src/save.c | 32 ++++++++++++++++---------------- 4 files changed, 50 insertions(+), 31 deletions(-) diff --git a/include/load_save.h b/include/load_save.h index 2f4a9ace6b1b..9e7b1bc92a2d 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -1,9 +1,33 @@ #ifndef GUARD_LOAD_SAVE_H #define GUARD_LOAD_SAVE_H -extern struct SaveBlock1 gSaveblock1; -extern struct SaveBlock2 gSaveblock2; -extern struct PokemonStorage gPokemonStorage; +#include "pokemon_storage_system.h" + +#define SAVEBLOCK_MOVE_RANGE 128 + +/** + * These structs are to prevent them from being reordered on newer or modern + * toolchains. If this is not done, the ClearSav functions will end up erasing + * the wrong memory leading to various glitches. + */ +struct SaveBlock2DMA { + struct SaveBlock2 block; + u8 dma[SAVEBLOCK_MOVE_RANGE]; +}; + +struct SaveBlock1DMA { + struct SaveBlock1 block; + u8 dma[SAVEBLOCK_MOVE_RANGE]; +}; + +struct PokemonStorageDMA { + struct PokemonStorage block; + u8 dma[SAVEBLOCK_MOVE_RANGE]; +}; + +extern struct SaveBlock1DMA gSaveblock1; +extern struct SaveBlock2DMA gSaveblock2; +extern struct PokemonStorageDMA gPokemonStorage; extern bool32 gFlashMemoryPresent; extern struct SaveBlock1 *gSaveBlock1Ptr; diff --git a/src/load_save.c b/src/load_save.c index 1ba5a1600af7..889f42b14ccd 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -29,14 +29,9 @@ struct LoadedSaveData }; // EWRAM DATA -EWRAM_DATA struct SaveBlock2 gSaveblock2 = {0}; -EWRAM_DATA u8 gSaveblock2_DMA[SAVEBLOCK_MOVE_RANGE] = {0}; - -EWRAM_DATA struct SaveBlock1 gSaveblock1 = {0}; -EWRAM_DATA u8 gSaveblock1_DMA[SAVEBLOCK_MOVE_RANGE] = {0}; - -EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; -EWRAM_DATA u8 gSaveblock3_DMA[SAVEBLOCK_MOVE_RANGE] = {0}; +EWRAM_DATA struct SaveBlock2DMA gSaveblock2 = {0}; +EWRAM_DATA struct SaveBlock1DMA gSaveblock1 = {0}; +EWRAM_DATA struct PokemonStorageDMA gPokemonStorage = {0}; EWRAM_DATA struct LoadedSaveData gLoadedSaveData = {0}; EWRAM_DATA u32 gLastEncryptionKey = 0; @@ -63,12 +58,12 @@ void CheckForFlashMemory(void) void ClearSav2(void) { - CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2) + sizeof(gSaveblock2_DMA)); + CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2DMA)); } void ClearSav1(void) { - CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1) + sizeof(gSaveblock1_DMA)); + CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1DMA)); } // Offset is the sum of the trainer id bytes diff --git a/src/main.c b/src/main.c index 215f85c468cb..2b96a8698c57 100644 --- a/src/main.c +++ b/src/main.c @@ -172,8 +172,8 @@ static void InitMainCallbacks(void) gMain.vblankCounter2 = 0; gMain.callback1 = NULL; SetMainCallback2(CB2_InitCopyrightScreenAfterBootup); - gSaveBlock2Ptr = &gSaveblock2; - gPokemonStoragePtr = &gPokemonStorage; + gSaveBlock2Ptr = &gSaveblock2.block; + gPokemonStoragePtr = &gPokemonStorage.block; } static void CallCallbacks(void) diff --git a/src/save.c b/src/save.c index 3c8f4360dc79..253e7763d989 100644 --- a/src/save.c +++ b/src/save.c @@ -52,22 +52,22 @@ static u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location); static const struct SaveSectionOffsets sSaveSectionOffsets[] = { - SAVEBLOCK_CHUNK(gSaveblock2, 0), - - SAVEBLOCK_CHUNK(gSaveblock1, 0), - SAVEBLOCK_CHUNK(gSaveblock1, 1), - SAVEBLOCK_CHUNK(gSaveblock1, 2), - SAVEBLOCK_CHUNK(gSaveblock1, 3), - - SAVEBLOCK_CHUNK(gPokemonStorage, 0), - SAVEBLOCK_CHUNK(gPokemonStorage, 1), - SAVEBLOCK_CHUNK(gPokemonStorage, 2), - SAVEBLOCK_CHUNK(gPokemonStorage, 3), - SAVEBLOCK_CHUNK(gPokemonStorage, 4), - SAVEBLOCK_CHUNK(gPokemonStorage, 5), - SAVEBLOCK_CHUNK(gPokemonStorage, 6), - SAVEBLOCK_CHUNK(gPokemonStorage, 7), - SAVEBLOCK_CHUNK(gPokemonStorage, 8), + SAVEBLOCK_CHUNK(struct SaveBlock2, 0), + + SAVEBLOCK_CHUNK(struct SaveBlock1, 0), + SAVEBLOCK_CHUNK(struct SaveBlock1, 1), + SAVEBLOCK_CHUNK(struct SaveBlock1, 2), + SAVEBLOCK_CHUNK(struct SaveBlock1, 3), + + SAVEBLOCK_CHUNK(struct PokemonStorage, 0), + SAVEBLOCK_CHUNK(struct PokemonStorage, 1), + SAVEBLOCK_CHUNK(struct PokemonStorage, 2), + SAVEBLOCK_CHUNK(struct PokemonStorage, 3), + SAVEBLOCK_CHUNK(struct PokemonStorage, 4), + SAVEBLOCK_CHUNK(struct PokemonStorage, 5), + SAVEBLOCK_CHUNK(struct PokemonStorage, 6), + SAVEBLOCK_CHUNK(struct PokemonStorage, 7), + SAVEBLOCK_CHUNK(struct PokemonStorage, 8), }; // iwram common From 927f9d27dfcbf8ff169475e3d32e8e27a8591d1e Mon Sep 17 00:00:00 2001 From: Wiz <94323898+GBAWiz420@users.noreply.github.com> Date: Sun, 14 Nov 2021 16:51:56 -0500 Subject: [PATCH 418/762] Designate gBattleAnimBgImage_Attract and related as arrays --- include/graphics.h | 6 +++--- src/battle_anim_effects_2.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/graphics.h b/include/graphics.h index eeb8f65a30b3..e2fe5cf778a6 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4637,9 +4637,9 @@ extern const u32 gBattleAnimSpritePal_RedHeart[]; extern const u32 gBattleAnimSpritePal_RedOrb[]; extern const u32 gBattleAnimSpritePal_EyeSparkle[]; extern const u32 gBattleAnimSpritePal_PinkHeart[]; -extern const u32 gBattleAnimBgImage_Attract; -extern const u32 gBattleAnimBgPalette_Attract; -extern const u32 gBattleAnimBgTilemap_Attract; +extern const u32 gBattleAnimBgImage_Attract[]; +extern const u32 gBattleAnimBgPalette_Attract[]; +extern const u32 gBattleAnimBgTilemap_Attract[]; extern const u32 gBattleAnimSpritePal_Angel[]; extern const u32 gBattleAnimSpritePal_Devil[]; extern const u32 gBattleAnimSpritePal_Swipe[]; diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index c2a89ed4bac9..36e959ca0b8f 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3259,9 +3259,9 @@ void AnimTask_HeartsBackground(u8 taskId) SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); GetBattleAnimBg1Data(&animBg); - AnimLoadCompressedBgGfx(animBg.bgId, &gBattleAnimBgImage_Attract, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, &gBattleAnimBgTilemap_Attract, FALSE); - LoadCompressedPalette(&gBattleAnimBgPalette_Attract, animBg.paletteId * 16, 32); + AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Attract, animBg.tilesOffset); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_Attract, FALSE); + LoadCompressedPalette(gBattleAnimBgPalette_Attract, animBg.paletteId * 16, 32); gTasks[taskId].func = AnimTask_HeartsBackground_Step; } From 7e27a0746de931a99d78e5db584e8fbdb84c8edd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 14 Nov 2021 09:55:30 -0500 Subject: [PATCH 419/762] Misc text clean-up --- gflib/text.c | 252 +++++++++--------- gflib/text.h | 8 - .../{down_arrow_RS.png => down_arrow_alt.png} | Bin src/braille.c | 6 +- 4 files changed, 131 insertions(+), 135 deletions(-) rename graphics/fonts/{down_arrow_RS.png => down_arrow_alt.png} (100%) diff --git a/gflib/text.c b/gflib/text.c index bf5b01e4868b..557c11704b9d 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -13,8 +13,8 @@ #include "dynamic_placeholder_text_util.h" #include "fonts.h" -static u16 RenderText(struct TextPrinter *textPrinter); -static u32 RenderFont(struct TextPrinter *textPrinter); +static u16 RenderText(struct TextPrinter *); +static u32 RenderFont(struct TextPrinter *); static u16 FontFunc_Small(struct TextPrinter *); static u16 FontFunc_Normal(struct TextPrinter *); static u16 FontFunc_Short(struct TextPrinter *); @@ -23,32 +23,32 @@ static u16 FontFunc_ShortCopy2(struct TextPrinter *); static u16 FontFunc_ShortCopy3(struct TextPrinter *); static u16 FontFunc_Narrow(struct TextPrinter *); static u16 FontFunc_SmallNarrow(struct TextPrinter *); -static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese); -static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese); -static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese); -static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese); -static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese); -static void DecompressGlyph_Bold(u16 glyphId); -static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese); -static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese); -static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese); -static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese); -static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese); - -EWRAM_DATA struct TextPrinter gTempTextPrinter = {0}; -EWRAM_DATA struct TextPrinter gTextPrinters[NUM_TEXT_PRINTERS] = {0}; - -static u16 gFontHalfRowLookupTable[0x51]; -static u16 gLastTextBgColor; -static u16 gLastTextFgColor; -static u16 gLastTextShadowColor; +static void DecompressGlyph_Small(u16, bool32); +static void DecompressGlyph_Normal(u16, bool32); +static void DecompressGlyph_Short(u16, bool32); +static void DecompressGlyph_Narrow(u16, bool32); +static void DecompressGlyph_SmallNarrow(u16, bool32); +static void DecompressGlyph_Bold(u16); +static u32 GetGlyphWidth_Small(u16, bool32); +static u32 GetGlyphWidth_Normal(u16, bool32); +static u32 GetGlyphWidth_Short(u16, bool32); +static u32 GetGlyphWidth_Narrow(u16, bool32); +static u32 GetGlyphWidth_SmallNarrow(u16, bool32); + +static EWRAM_DATA struct TextPrinter sTempTextPrinter = {0}; +static EWRAM_DATA struct TextPrinter sTextPrinters[NUM_TEXT_PRINTERS] = {0}; + +static u16 sFontHalfRowLookupTable[0x51]; +static u16 sLastTextBgColor; +static u16 sLastTextFgColor; +static u16 sLastTextShadowColor; const struct FontInfo *gFonts; bool8 gDisableTextPrinters; struct TextGlyph gCurGlyph; TextFlags gTextFlags; -const u8 gFontHalfRowOffsets[] = +static const u8 sFontHalfRowOffsets[] = { 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00, 0x09, 0x0A, 0x0B, 0x09, 0x0C, 0x0D, 0x0E, 0x0C, 0x0F, 0x10, 0x11, 0x0F, 0x09, 0x0A, 0x0B, 0x09, @@ -68,12 +68,16 @@ const u8 gFontHalfRowOffsets[] = 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00 }; -const u8 gDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow.4bpp"); -const u8 gDarkDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow_RS.4bpp"); -const u8 gUnusedFRLGBlankedDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_blanked_down_arrow.4bpp"); -const u8 gUnusedFRLGDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_down_arrow.4bpp"); -const u8 gDownArrowYCoords[] = { 0, 1, 2, 1 }; -const u8 gWindowVerticalScrollSpeeds[] = { 1, 2, 4, 0x0 }; +static const u8 sDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow.4bpp"); +static const u8 sDarkDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow_alt.4bpp"); +static const u8 sUnusedFRLGBlankedDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_blanked_down_arrow.4bpp"); +static const u8 sUnusedFRLGDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_down_arrow.4bpp"); +static const u8 sDownArrowYCoords[] = { 0, 1, 2, 1 }; +static const u8 sWindowVerticalScrollSpeeds[] = { + [OPTIONS_TEXT_SPEED_SLOW] = 1, + [OPTIONS_TEXT_SPEED_MID] = 2, + [OPTIONS_TEXT_SPEED_FAST] = 4, +}; static const struct GlyphWidthFunc sGlyphWidthFuncs[] = { @@ -88,24 +92,29 @@ static const struct GlyphWidthFunc sGlyphWidthFuncs[] = { FONT_SMALL_NARROW, GetGlyphWidth_SmallNarrow } }; -const struct KeypadIcon gKeypadIcons[] = +struct +{ + u16 tileOffset; + u8 width; + u8 height; +} static const sKeypadIcons[] = { - [CHAR_A_BUTTON] = { 0x0, 0x8, 0xC }, - [CHAR_B_BUTTON] = { 0x1, 0x8, 0xC }, - [CHAR_L_BUTTON] = { 0x2, 0x10, 0xC }, - [CHAR_R_BUTTON] = { 0x4, 0x10, 0xC }, - [CHAR_START_BUTTON] = { 0x6, 0x18, 0xC }, - [CHAR_SELECT_BUTTON] = { 0x9, 0x18, 0xC }, - [CHAR_DPAD_UP] = { 0xC, 0x8, 0xC }, - [CHAR_DPAD_DOWN] = { 0xD, 0x8, 0xC }, - [CHAR_DPAD_LEFT] = { 0xE, 0x8, 0xC }, - [CHAR_DPAD_RIGHT] = { 0xF, 0x8, 0xC }, - [CHAR_DPAD_UPDOWN] = { 0x20, 0x8, 0xC }, - [CHAR_DPAD_LEFTRIGHT] = { 0x21, 0x8, 0xC }, - [CHAR_DPAD_NONE] = { 0x22, 0x8, 0xC } + [CHAR_A_BUTTON] = { 0x00, 8, 12 }, + [CHAR_B_BUTTON] = { 0x01, 8, 12 }, + [CHAR_L_BUTTON] = { 0x02, 16, 12 }, + [CHAR_R_BUTTON] = { 0x04, 16, 12 }, + [CHAR_START_BUTTON] = { 0x06, 24, 12 }, + [CHAR_SELECT_BUTTON] = { 0x09, 24, 12 }, + [CHAR_DPAD_UP] = { 0x0C, 8, 12 }, + [CHAR_DPAD_DOWN] = { 0x0D, 8, 12 }, + [CHAR_DPAD_LEFT] = { 0x0E, 8, 12 }, + [CHAR_DPAD_RIGHT] = { 0x0F, 8, 12 }, + [CHAR_DPAD_UPDOWN] = { 0x20, 8, 12 }, + [CHAR_DPAD_LEFTRIGHT] = { 0x21, 8, 12 }, + [CHAR_DPAD_NONE] = { 0x22, 8, 12 } }; -const u8 gKeypadIconTiles[] = INCBIN_U8("graphics/fonts/keypad_icons.4bpp"); +static const u8 sKeypadIconTiles[] = INCBIN_U8("graphics/fonts/keypad_icons.4bpp"); static const struct FontInfo sFontInfos[] = { @@ -225,7 +234,7 @@ static const u8 sMenuCursorDimensions[][2] = [FONT_BOLD] = {} }; -const u16 gFontBoldJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/bold.hwjpnfont"); +static const u16 sFontBoldJapaneseGlyphs[] = INCBIN_U16("graphics/fonts/bold.hwjpnfont"); static void SetFontsPointer(const struct FontInfo *fonts) { @@ -236,7 +245,7 @@ void DeactivateAllTextPrinters(void) { int printer; for (printer = 0; printer < NUM_TEXT_PRINTERS; ++printer) - gTextPrinters[printer].active = FALSE; + sTextPrinters[printer].active = FALSE; } u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16)) @@ -267,41 +276,41 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi if (!gFonts) return FALSE; - gTempTextPrinter.active = TRUE; - gTempTextPrinter.state = RENDER_STATE_HANDLE_CHAR; - gTempTextPrinter.textSpeed = speed; - gTempTextPrinter.delayCounter = 0; - gTempTextPrinter.scrollDistance = 0; + sTempTextPrinter.active = TRUE; + sTempTextPrinter.state = RENDER_STATE_HANDLE_CHAR; + sTempTextPrinter.textSpeed = speed; + sTempTextPrinter.delayCounter = 0; + sTempTextPrinter.scrollDistance = 0; - for (i = 0; i < (int)ARRAY_COUNT(gTempTextPrinter.subStructFields); i++) - gTempTextPrinter.subStructFields[i] = 0; + for (i = 0; i < (int)ARRAY_COUNT(sTempTextPrinter.subStructFields); i++) + sTempTextPrinter.subStructFields[i] = 0; - gTempTextPrinter.printerTemplate = *printerTemplate; - gTempTextPrinter.callback = callback; - gTempTextPrinter.minLetterSpacing = 0; - gTempTextPrinter.japanese = 0; + sTempTextPrinter.printerTemplate = *printerTemplate; + sTempTextPrinter.callback = callback; + sTempTextPrinter.minLetterSpacing = 0; + sTempTextPrinter.japanese = 0; GenerateFontHalfRowLookupTable(printerTemplate->fgColor, printerTemplate->bgColor, printerTemplate->shadowColor); if (speed != TEXT_SKIP_DRAW && speed != 0) { - --gTempTextPrinter.textSpeed; - gTextPrinters[printerTemplate->windowId] = gTempTextPrinter; + --sTempTextPrinter.textSpeed; + sTextPrinters[printerTemplate->windowId] = sTempTextPrinter; } else { - gTempTextPrinter.textSpeed = 0; + sTempTextPrinter.textSpeed = 0; // Render all text (up to limit) at once for (j = 0; j < 0x400; ++j) { - if (RenderFont(&gTempTextPrinter) == RENDER_FINISH) + if (RenderFont(&sTempTextPrinter) == RENDER_FINISH) break; } // All the text is rendered to the window but don't draw it yet. if (speed != TEXT_SKIP_DRAW) - CopyWindowToVram(gTempTextPrinter.printerTemplate.windowId, COPYWIN_GFX); - gTextPrinters[printerTemplate->windowId].active = FALSE; + CopyWindowToVram(sTempTextPrinter.printerTemplate.windowId, COPYWIN_GFX); + sTextPrinters[printerTemplate->windowId].active = FALSE; } gDisableTextPrinters = FALSE; return TRUE; @@ -315,19 +324,19 @@ void RunTextPrinters(void) { for (i = 0; i < NUM_TEXT_PRINTERS; ++i) { - if (gTextPrinters[i].active) + if (sTextPrinters[i].active) { - u16 temp = RenderFont(&gTextPrinters[i]); + u16 temp = RenderFont(&sTextPrinters[i]); switch (temp) { case RENDER_PRINT: - CopyWindowToVram(gTextPrinters[i].printerTemplate.windowId, COPYWIN_GFX); + CopyWindowToVram(sTextPrinters[i].printerTemplate.windowId, COPYWIN_GFX); case RENDER_UPDATE: - if (gTextPrinters[i].callback != 0) - gTextPrinters[i].callback(&gTextPrinters[i].printerTemplate, temp); + if (sTextPrinters[i].callback != 0) + sTextPrinters[i].callback(&sTextPrinters[i].printerTemplate, temp); break; case RENDER_FINISH: - gTextPrinters[i].active = FALSE; + sTextPrinters[i].active = FALSE; break; } } @@ -337,7 +346,7 @@ void RunTextPrinters(void) bool16 IsTextPrinterActive(u8 id) { - return gTextPrinters[id].active; + return sTextPrinters[id].active; } static u32 RenderFont(struct TextPrinter *textPrinter) @@ -356,11 +365,11 @@ void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor) u32 fg12, bg12, shadow12; u32 temp; - u16 *current = gFontHalfRowLookupTable; + u16 *current = sFontHalfRowLookupTable; - gLastTextBgColor = bgColor; - gLastTextFgColor = fgColor; - gLastTextShadowColor = shadowColor; + sLastTextBgColor = bgColor; + sLastTextFgColor = fgColor; + sLastTextShadowColor = shadowColor; bg12 = bgColor << 12; fg12 = fgColor << 12; @@ -504,9 +513,9 @@ void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor) void SaveTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor) { - *bgColor = gLastTextBgColor; - *fgColor = gLastTextFgColor; - *shadowColor = gLastTextShadowColor; + *bgColor = sLastTextBgColor; + *fgColor = sLastTextFgColor; + *shadowColor = sLastTextShadowColor; } void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor) @@ -521,40 +530,41 @@ void DecompressGlyphTile(const void *src_, void *dest_) u32 *dest = dest_; temp = *(src++); - *(dest)++ = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest)++ = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); temp = *(src++); - *(dest++) = ((gFontHalfRowLookupTable[gFontHalfRowOffsets[temp & 0xFF]]) << 16) | (gFontHalfRowLookupTable[gFontHalfRowOffsets[temp >> 8]]); + *(dest++) = ((sFontHalfRowLookupTable[sFontHalfRowOffsets[temp & 0xFF]]) << 16) | (sFontHalfRowLookupTable[sFontHalfRowOffsets[temp >> 8]]); } -u8 GetLastTextColor(u8 colorType) +// Unused +static u8 GetLastTextColor(u8 colorType) { switch (colorType) { case 0: - return gLastTextFgColor; + return sLastTextFgColor; case 2: - return gLastTextBgColor; + return sLastTextBgColor; case 1: - return gLastTextShadowColor; + return sLastTextShadowColor; default: return 0; } @@ -644,7 +654,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) struct TextGlyph *glyph; u8* glyphHeight; - if (gLastTextBgColor != 0) + if (sLastTextBgColor != TEXT_COLOR_TRANSPARENT) { window = &gWindows[textPrinter->printerTemplate.windowId]; pixels_data.pixels = window->tileData; @@ -660,7 +670,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) textPrinter->printerTemplate.currentY, width, *glyphHeight, - gLastTextBgColor); + sLastTextBgColor); } } @@ -798,20 +808,20 @@ void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter) switch (gTextFlags.useAlternateDownArrow) { - case FALSE: - default: - arrowTiles = gDownArrowTiles; - break; - case TRUE: - arrowTiles = gDarkDownArrowTiles; - break; + case FALSE: + default: + arrowTiles = sDownArrowTiles; + break; + case TRUE: + arrowTiles = sDarkDownArrowTiles; + break; } BlitBitmapRectToWindow( textPrinter->printerTemplate.windowId, arrowTiles, 0, - gDownArrowYCoords[subStruct->downArrowYPosIdx], + sDownArrowYCoords[subStruct->downArrowYPosIdx], 8, 16, textPrinter->printerTemplate.currentX, @@ -905,26 +915,16 @@ void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *c { switch (gTextFlags.useAlternateDownArrow) { - case 0: - default: - arrowTiles = gDownArrowTiles; - break; - case 1: - arrowTiles = gDarkDownArrowTiles; - break; + case FALSE: + default: + arrowTiles = sDownArrowTiles; + break; + case TRUE: + arrowTiles = sDarkDownArrowTiles; + break; } - BlitBitmapRectToWindow( - windowId, - arrowTiles, - 0, - gDownArrowYCoords[*yCoordIndex & 3], - 0x8, - 0x10, - x, - y - 2, - 0x8, - 0x10); + BlitBitmapRectToWindow(windowId, arrowTiles, 0, sDownArrowYCoords[*yCoordIndex & 3], 8, 16, x, y - 2, 8, 16); CopyWindowToVram(windowId, COPYWIN_GFX); *counter = 8; ++*yCoordIndex; @@ -942,7 +942,7 @@ static u16 RenderText(struct TextPrinter *textPrinter) switch (textPrinter->state) { case RENDER_STATE_HANDLE_CHAR: - if ((JOY_HELD(A_BUTTON | B_BUTTON)) && subStruct->hasPrintBeenSpedUp) + if (JOY_HELD(A_BUTTON | B_BUTTON) && subStruct->hasPrintBeenSpedUp) textPrinter->delayCounter = 0; if (textPrinter->delayCounter && textPrinter->textSpeed) @@ -1191,7 +1191,7 @@ static u16 RenderText(struct TextPrinter *textPrinter) if (textPrinter->scrollDistance) { int scrollSpeed = GetPlayerTextSpeed(); - int speed = gWindowVerticalScrollSpeeds[scrollSpeed]; + int speed = sWindowVerticalScrollSpeeds[scrollSpeed]; if (textPrinter->scrollDistance < speed) { ScrollWindow(textPrinter->printerTemplate.windowId, 0, textPrinter->scrollDistance, PIXEL_FILL(textPrinter->printerTemplate.bgColor)); @@ -1612,31 +1612,31 @@ u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y) { BlitBitmapRectToWindow( windowId, - gKeypadIconTiles + (gKeypadIcons[keypadIconId].tileOffset * 0x20), + sKeypadIconTiles + (sKeypadIcons[keypadIconId].tileOffset * 0x20), 0, 0, 0x80, 0x80, x, y, - gKeypadIcons[keypadIconId].width, - gKeypadIcons[keypadIconId].height); - return gKeypadIcons[keypadIconId].width; + sKeypadIcons[keypadIconId].width, + sKeypadIcons[keypadIconId].height); + return sKeypadIcons[keypadIconId].width; } u8 GetKeypadIconTileOffset(u8 keypadIconId) { - return gKeypadIcons[keypadIconId].tileOffset; + return sKeypadIcons[keypadIconId].tileOffset; } u8 GetKeypadIconWidth(u8 keypadIconId) { - return gKeypadIcons[keypadIconId].width; + return sKeypadIcons[keypadIconId].width; } u8 GetKeypadIconHeight(u8 keypadIconId) { - return gKeypadIcons[keypadIconId].height; + return sKeypadIcons[keypadIconId].height; } void SetDefaultFontsPointer(void) @@ -1898,7 +1898,7 @@ static void DecompressGlyph_Bold(u16 glyphId) { const u16* glyphs; - glyphs = gFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); + glyphs = sFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); DecompressGlyphTile(glyphs + 0x80, gCurGlyph.gfxBufferBottom); gCurGlyph.width = 8; diff --git a/gflib/text.h b/gflib/text.h index 110df8b87f0c..2f660354fcaf 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -117,13 +117,6 @@ struct GlyphWidthFunc u32 (*func)(u16 glyphId, bool32 isJapanese); }; -struct KeypadIcon -{ - u16 tileOffset; - u8 width; - u8 height; -}; - typedef struct { bool8 canABSpeedUpPrint:1; bool8 useAlternateDownArrow:1; @@ -153,7 +146,6 @@ 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_); -u8 GetLastTextColor(u8 colorType); void CopyGlyphToWindow(struct TextPrinter *x); void ClearTextSpan(struct TextPrinter *textPrinter, u32 width); u8 GetMenuCursorDimensionByFont(u8, u8); diff --git a/graphics/fonts/down_arrow_RS.png b/graphics/fonts/down_arrow_alt.png similarity index 100% rename from graphics/fonts/down_arrow_RS.png rename to graphics/fonts/down_arrow_alt.png diff --git a/src/braille.c b/src/braille.c index b4ee43ad023d..704f50760b4f 100644 --- a/src/braille.c +++ b/src/braille.c @@ -8,7 +8,11 @@ // For printing braille messages, see ScrCmd_braillemessage ALIGNED(4) -static const u8 sScrollDistances[] = {1, 2, 4}; +static const u8 sScrollDistances[] = { + [OPTIONS_TEXT_SPEED_SLOW] = 1, + [OPTIONS_TEXT_SPEED_MID] = 2, + [OPTIONS_TEXT_SPEED_FAST] = 4, +}; static const u16 sFont_Braille[] = INCBIN_U16("graphics/fonts/braille.fwjpnfont"); static void DecompressGlyph_Braille(u16); From d4d42342839719389596f26cc291b89e77f69813 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 14 Nov 2021 22:21:50 -0500 Subject: [PATCH 420/762] Finish pokenav list ui doc --- include/pokenav.h | 12 +- src/pokenav_conditions_search_results.c | 12 +- src/pokenav_match_call_1.c | 4 +- src/pokenav_match_call_2.c | 40 ++--- src/pokenav_match_call_ui.c | 187 ++++++++++++------------ src/pokenav_ribbons_list.c | 14 +- 6 files changed, 135 insertions(+), 134 deletions(-) diff --git a/include/pokenav.h b/include/pokenav.h index 9c530e11ef69..b5eb20a7fc47 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -327,19 +327,19 @@ void SetVBlankCallback_(IntrCallback callback); bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset); bool32 IsCreatePokenavListTaskActive(void); void DestroyPokenavList(void); -u32 GetSelectedPokenavListIndex(void); +u32 PokenavList_GetSelectedIndex(void); int PokenavList_MoveCursorUp(void); int PokenavList_MoveCursorDown(void); int PokenavList_PageDown(void); int PokenavList_PageUp(void); -bool32 IsMovePokenavListWindowTaskActive(void); +bool32 PokenavList_IsMoveWindowTaskActive(void); void PokenavList_ToggleVerticalArrows(bool32 shouldHide); void PokenavList_DrawCurrentItemIcon(void); -void sub_81C877C(void); -bool32 IsMatchCallListTaskActive(void); +void PokenavList_EraseListForCheckPage(void); +bool32 PokenavList_IsTaskActive(void); void PrintCheckPageInfo(s16 a0); -u32 GetMatchCallListTopIndex(void); -void sub_81C87F0(void); +u32 PokenavList_GetTopIndex(void); +void PokenavList_ReshowListFromCheckPage(void); // pokenav_match_call_data.c bool32 MatchCall_HasCheckPage(u32 idx); diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index 09bb7c9ac5ac..c8790e3598b7 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -200,7 +200,7 @@ static u32 HandleConditionSearchInput(struct Pokenav_SearchResults *menu) else if (JOY_NEW(A_BUTTON)) { // Entering graph menu - menu->monList->currIndex = GetSelectedPokenavListIndex(); + menu->monList->currIndex = PokenavList_GetSelectedIndex(); menu->saveResultsList = TRUE; menu->callback = OpenConditionGraphFromSearchList; return CONDITION_SEARCH_FUNC_SELECT_MON; @@ -241,7 +241,7 @@ static u16 GetSearchResultsMonListCount(void) static s32 GetSearchResultsSelectedMonRank(void) { struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS); - s32 i = GetSelectedPokenavListIndex(); + s32 i = PokenavList_GetSelectedIndex(); return menu->monList->monData[i].data; } @@ -498,7 +498,7 @@ static u32 LoopedTask_MoveSearchListCursorUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -531,7 +531,7 @@ static u32 LoopedTask_MoveSearchListCursorDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -564,7 +564,7 @@ static u32 LoopedTask_MoveSearchListPageUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -597,7 +597,7 @@ static u32 LoopedTask_MoveSearchListPageDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index b2b9179c366c..e0e5306e19c3 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -92,7 +92,7 @@ static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *state) { state->callback = CB2_HandleMatchCallOptionsInput; state->optionCursorPos = 0; - selection = GetSelectedPokenavListIndex(); + selection = PokenavList_GetSelectedIndex(); if (!state->matchCallEntries[selection].isSpecialTrainer || MatchCall_HasCheckPage(state->matchCallEntries[selection].headerId)) { @@ -489,7 +489,7 @@ bool32 unref_sub_81CB16C(void) static bool32 ShouldDoNearbyMessage(void) { struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - int selection = GetSelectedPokenavListIndex(); + int selection = PokenavList_GetSelectedIndex(); if (!state->matchCallEntries[selection].isSpecialTrainer) { if (GetMatchCallMapSec(selection) == gMapHeader.regionMapSectionId) diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index 420dac5f8838..d8704919f511 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -414,7 +414,7 @@ static u32 MatchCallListCursorDown(s32 state) } break; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -451,7 +451,7 @@ static u32 MatchCallListCursorUp(s32 state) } break; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -488,7 +488,7 @@ static u32 MatchCallListPageDown(s32 state) } break; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -525,7 +525,7 @@ static u32 MatchCallListPageUp(s32 state) } break; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; PrintMatchCallLocation(gfx, 0); @@ -722,11 +722,11 @@ static u32 ShowCheckPage(s32 state) { case 0: PlaySE(SE_SELECT); - sub_81C877C(); + PokenavList_EraseListForCheckPage(); UpdateWindowsToShowCheckPage(gfx); return LT_INC_AND_PAUSE; case 1: - if (IsMatchCallListTaskActive() || IsDma3ManagerBusyWithBgCopy1(gfx)) + if (PokenavList_IsTaskActive() || IsDma3ManagerBusyWithBgCopy1(gfx)) return LT_PAUSE; PrintHelpBarText(HELPBAR_MC_CHECK_PAGE); @@ -736,7 +736,7 @@ static u32 ShowCheckPage(s32 state) LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 3: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx) || WaitForHelpBar()) + if (PokenavList_IsTaskActive() || WaitForTrainerPic(gfx) || WaitForHelpBar()) return LT_PAUSE; break; } @@ -752,7 +752,7 @@ static u32 ShowCheckPageDown(s32 state) switch (state) { case 0: - topId = GetMatchCallListTopIndex(); + topId = PokenavList_GetTopIndex(); delta = GetIndexDeltaOfNextCheckPageDown(topId); if (delta) { @@ -775,7 +775,7 @@ static u32 ShowCheckPageDown(s32 state) LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 4: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) + if (PokenavList_IsTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; break; } @@ -791,10 +791,10 @@ static u32 ExitCheckPage(s32 state) case 0: PlaySE(SE_SELECT); TrainerPicSlideOffscreen(gfx); - sub_81C87F0(); + PokenavList_ReshowListFromCheckPage(); return LT_INC_AND_PAUSE; case 1: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) + if (PokenavList_IsTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; PrintHelpBarText(HELPBAR_MC_TRAINER_LIST); @@ -817,7 +817,7 @@ static u32 ShowCheckPageUp(s32 state) switch (state) { case 0: - topId = GetMatchCallListTopIndex(); + topId = PokenavList_GetTopIndex(); delta = GetIndexDeltaOfNextCheckPageUp(topId); if (delta) { @@ -840,7 +840,7 @@ static u32 ShowCheckPageUp(s32 state) LoadCheckPageTrainerPic(gfx); return LT_INC_AND_PAUSE; case 4: - if (IsMatchCallListTaskActive() || WaitForTrainerPic(gfx)) + if (PokenavList_IsTaskActive() || WaitForTrainerPic(gfx)) return LT_PAUSE; break; } @@ -929,11 +929,11 @@ enum { POKEBALL_ICON_EMPTY, }; -static void TryDrawRematchPokeballIcon(u16 windowId, u32 rematchId, u32 arg2) +static void TryDrawRematchPokeballIcon(u16 windowId, u32 rematchId, u32 tileOffset) { u8 bg = GetWindowAttribute(windowId, WINDOW_BG); u16 *tilemap = GetBgTilemapBuffer(bg); - tilemap += arg2 * 0x40 + 0x1D; + tilemap += tileOffset * 64 + 0x1D; if (ShouldDrawRematchPokeballIcon(rematchId)) { tilemap[0] = POKEBALL_ICON_TOP; @@ -946,11 +946,11 @@ static void TryDrawRematchPokeballIcon(u16 windowId, u32 rematchId, u32 arg2) } } -void ClearRematchPokeballIcon(u16 windowId, u32 arg0) +void ClearRematchPokeballIcon(u16 windowId, u32 tileOffset) { u8 bg = GetWindowAttribute(windowId, WINDOW_BG); u16 *tilemap = GetBgTilemapBuffer(bg); - tilemap += arg0 * 0x40 + 0x1D; + tilemap += tileOffset * 64 + 0x1D; tilemap[0] = POKEBALL_ICON_EMPTY; tilemap[0x20] = POKEBALL_ICON_EMPTY; } @@ -1021,7 +1021,7 @@ static void PrintMatchCallLocation(struct Pokenav_MatchCallGfx *gfx, int delta) { u8 mapName[32]; int x; - int index = GetSelectedPokenavListIndex() + delta; + int index = PokenavList_GetSelectedIndex() + delta; int mapSec = GetMatchCallMapSec(index); if (mapSec != MAPSEC_NONE) GetMapName(mapName, mapSec, 0); @@ -1138,7 +1138,7 @@ static bool32 WaitForTrainerIsCloseByText(struct Pokenav_MatchCallGfx *gfx) static void PrintMatchCallMessage(struct Pokenav_MatchCallGfx *gfx) { - int index = GetSelectedPokenavListIndex(); + int index = PokenavList_GetSelectedIndex(); const u8 *str = GetMatchCallMessageText(index, &gfx->newRematchRequest); u8 speed = GetPlayerTextSpeedDelay(); AddTextPrinterParameterized(gfx->msgBoxWindowId, FONT_NORMAL, str, 32, 1, speed, NULL); @@ -1244,7 +1244,7 @@ static struct Sprite *CreateTrainerPicSprite(void) static void LoadCheckPageTrainerPic(struct Pokenav_MatchCallGfx *gfx) { u16 cursor; - int trainerPic = GetMatchCallTrainerPic(GetSelectedPokenavListIndex()); + int trainerPic = GetMatchCallTrainerPic(PokenavList_GetSelectedIndex()); if (trainerPic >= 0) { DecompressPicFromTable(&gTrainerFrontPicTable[trainerPic], gfx->trainerPicGfx, SPECIES_NONE); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_match_call_ui.c index 70e541b55bd8..97437e3cdfa9 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_match_call_ui.c @@ -29,11 +29,10 @@ struct PokenavListWindowState { // The index of the element at the top of the window. u16 windowTopIndex; u16 listLength; - u16 unk4; + u16 entriesOffscreen; // The index of the cursor, relative to the top of the window. u16 selectedIndexOffset; - u16 visibleEntries; - u16 unkA; + u16 entriesOnscreen; u32 listItemSize; void * listPtr; }; @@ -63,7 +62,7 @@ struct PokenavSub17 struct PokenavSub17Substruct list; u8 tilemapBuffer[BG_SCREEN_SIZE]; struct PokenavListWindowState windowState; - s32 unk89C; + s32 eraseIndex; u32 loopedTaskId; }; @@ -81,7 +80,7 @@ static void PrintMatchCallFlavorText(struct PokenavListWindowState *, struct Pok static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *, u32); static void PrintMatchCallListTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); static void PrintCheckPageTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); -static void sub_81C8B70(struct PokenavListMenuWindow *, s32, s32); +static void EraseListEntry(struct PokenavListMenuWindow *, s32, s32); static void CreateMoveListWindowTask(s32, struct PokenavSub17Substruct *); static void PrintListItems(void *, u32, u32, u32, u32, struct PokenavSub17Substruct *); static void InitListItems(struct PokenavListWindowState *, struct PokenavSub17Substruct *); @@ -90,14 +89,14 @@ static u32 LoopedTask_CreatePokenavList(s32); static bool32 IsPrintListItemsTaskActive(void); static u32 LoopedTask_PrintListItems(s32); static u32 LoopedTask_MoveListWindow(s32); -static u32 LoopedTask_sub_81C8870(s32); -static u32 LoopedTask_sub_81C8A28(s32); +static u32 LoopedTask_EraseListForCheckPage(s32); +static u32 LoopedTask_ReshowListFromCheckPage(s32); static u32 LoopedTask_PrintCheckPageInfo(s32); static const u16 sListArrow_Pal[] = INCBIN_U16("graphics/pokenav/list_arrows.gbapal"); static const u32 sListArrow_Gfx[] = INCBIN_U32("graphics/pokenav/list_arrows.4bpp.lz"); -static EWRAM_DATA u32 gUnknown_0203CF44 = 0; +static EWRAM_DATA u32 sMoveWindowDownIndex = 0; // Read, but pointlessly bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset) { @@ -187,8 +186,8 @@ static void InitPokenavListWindow(struct PokenavListMenuWindow *listWindow) static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavSub17Substruct *a1) { s32 numToPrint = windowState->listLength - windowState->windowTopIndex; - if (numToPrint > windowState->visibleEntries) - numToPrint = windowState->visibleEntries; + if (numToPrint > windowState->entriesOnscreen) + numToPrint = windowState->entriesOnscreen; PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, a1); } @@ -214,18 +213,18 @@ static bool32 IsPrintListItemsTaskActive(void) static u32 LoopedTask_PrintListItems(s32 state) { - u32 v1; + u32 row; struct PokenavSub17Substruct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - v1 = (structPtr->listWindow.unkA + structPtr->listWindow.numPrinted + structPtr->unk10) & 0xF; + row = (structPtr->listWindow.unkA + structPtr->listWindow.numPrinted + structPtr->unk10) & 0xF; structPtr->bufferItemFunc(structPtr->listPtr, structPtr->itemTextBuffer); if (structPtr->iconDrawFunc != NULL) - structPtr->iconDrawFunc(structPtr->listWindow.windowId, structPtr->printIndex, v1); + structPtr->iconDrawFunc(structPtr->listWindow.windowId, structPtr->printIndex, row); - AddTextPrinterParameterized(structPtr->listWindow.windowId, structPtr->listWindow.fontId, structPtr->itemTextBuffer, 8, (v1 << 4) + 1, 255, NULL); + AddTextPrinterParameterized(structPtr->listWindow.windowId, structPtr->listWindow.fontId, structPtr->itemTextBuffer, 8, (row << 4) + 1, TEXT_SKIP_DRAW, NULL); if (++structPtr->listWindow.numPrinted >= structPtr->listWindow.numToPrint) { // Finished printing items. If icons were being drawn, draw the @@ -250,22 +249,22 @@ static u32 LoopedTask_PrintListItems(s32 state) return LT_FINISH; } -bool32 ShouldShowUpArrow(void) +static bool32 ShouldShowUpArrow(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return (structPtr->windowState.windowTopIndex != 0); } -bool32 ShouldShowDownArrow(void) +static bool32 ShouldShowDownArrow(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavListWindowState *subPtr = &structPtr->windowState; - return (subPtr->windowTopIndex + subPtr->visibleEntries < subPtr->listLength); + return (subPtr->windowTopIndex + subPtr->entriesOnscreen < subPtr->listLength); } -static void MoveListWindow(s32 delta, bool32 a1) +static void MoveListWindow(s32 delta, bool32 printItems) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavListWindowState *subPtr = &structPtr->windowState; @@ -274,16 +273,16 @@ static void MoveListWindow(s32 delta, bool32 a1) { if (subPtr->windowTopIndex + delta < 0) delta = -1 * subPtr->windowTopIndex; - if (a1) + if (printItems) PrintListItems(subPtr->listPtr, subPtr->windowTopIndex + delta, delta * -1, subPtr->listItemSize, delta, &structPtr->list); } - else if (a1) + else if (printItems) { - s32 temp = gUnknown_0203CF44 = subPtr->windowTopIndex + subPtr->visibleEntries; - if (temp + delta >= subPtr->listLength) - delta = subPtr->listLength - temp; + s32 index = sMoveWindowDownIndex = subPtr->windowTopIndex + subPtr->entriesOnscreen; + if (index + delta >= subPtr->listLength) + delta = subPtr->listLength - index; - PrintListItems(subPtr->listPtr, gUnknown_0203CF44, delta, subPtr->listItemSize, subPtr->visibleEntries, &structPtr->list); + PrintListItems(subPtr->listPtr, index, delta, subPtr->listItemSize, subPtr->entriesOnscreen, &structPtr->list); } CreateMoveListWindowTask(delta, &structPtr->list); @@ -341,7 +340,7 @@ static u32 LoopedTask_MoveListWindow(s32 state) return LT_FINISH; } -bool32 IsMovePokenavListWindowTaskActive(void) +bool32 PokenavList_IsMoveWindowTaskActive(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->list.loopedTaskId); @@ -376,7 +375,7 @@ int PokenavList_MoveCursorDown(void) if (structPtr->windowTopIndex + structPtr->selectedIndexOffset >= structPtr->listLength - 1) return 0; - if (structPtr->selectedIndexOffset < structPtr->visibleEntries - 1) + if (structPtr->selectedIndexOffset < structPtr->entriesOnscreen - 1) { structPtr->selectedIndexOffset++; return 1; @@ -396,8 +395,8 @@ int PokenavList_PageUp(void) if (ShouldShowUpArrow()) { - if (structPtr->windowTopIndex >= structPtr->visibleEntries) - scroll = structPtr->visibleEntries; + if (structPtr->windowTopIndex >= structPtr->entriesOnscreen) + scroll = structPtr->entriesOnscreen; else scroll = structPtr->windowTopIndex; MoveListWindow(scroll * -1, TRUE); @@ -417,21 +416,21 @@ int PokenavList_PageDown(void) if (ShouldShowDownArrow()) { - s32 windowBottomIndex = structPtr->windowTopIndex + structPtr->visibleEntries; - s32 scroll = structPtr->unk4 - structPtr->windowTopIndex; + s32 windowBottomIndex = structPtr->windowTopIndex + structPtr->entriesOnscreen; + s32 scroll = structPtr->entriesOffscreen - structPtr->windowTopIndex; - if (windowBottomIndex <= structPtr->unk4) - scroll = structPtr->visibleEntries; + if (windowBottomIndex <= structPtr->entriesOffscreen) + scroll = structPtr->entriesOnscreen; MoveListWindow(scroll, TRUE); return 2; } else { s32 cursor, lastVisibleIndex; - if (structPtr->listLength >= structPtr->visibleEntries) + if (structPtr->listLength >= structPtr->entriesOnscreen) { cursor = structPtr->selectedIndexOffset; - lastVisibleIndex = structPtr->visibleEntries; + lastVisibleIndex = structPtr->entriesOnscreen; } else { @@ -447,43 +446,43 @@ int PokenavList_PageDown(void) } } -u32 GetSelectedPokenavListIndex(void) +u32 PokenavList_GetSelectedIndex(void) { struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); return structPtr->windowTopIndex + structPtr->selectedIndexOffset; } -u32 GetMatchCallListTopIndex(void) +u32 PokenavList_GetTopIndex(void) { struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); return structPtr->windowTopIndex; } -void sub_81C877C(void) +void PokenavList_EraseListForCheckPage(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->unk89C = 0; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C8870, 6); + structPtr->eraseIndex = 0; + structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_EraseListForCheckPage, 6); } void PrintCheckPageInfo(s16 delta) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->windowState.windowTopIndex += delta; - structPtr->unk89C = 0; + structPtr->eraseIndex = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); } -void sub_81C87F0(void) +void PokenavList_ReshowListFromCheckPage(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->unk89C = 0; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_sub_81C8A28, 6); + structPtr->eraseIndex = 0; + structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_ReshowListFromCheckPage, 6); } -bool32 IsMatchCallListTaskActive(void) +bool32 PokenavList_IsTaskActive(void) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->loopedTaskId); @@ -497,7 +496,7 @@ void PokenavList_DrawCurrentItemIcon(void) CopyWindowToVram(structPtr->list.listWindow.windowId, COPYWIN_MAP); } -static u32 LoopedTask_sub_81C8870(s32 state) +static u32 LoopedTask_EraseListForCheckPage(s32 state) { struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); @@ -507,18 +506,18 @@ static u32 LoopedTask_sub_81C8870(s32 state) ToggleListArrows(&structPtr->list, 1); // fall-through case 1: - if (structPtr->unk89C != structPtr->windowState.selectedIndexOffset) - sub_81C8B70(&structPtr->list.listWindow, structPtr->unk89C, 1); + if (structPtr->eraseIndex != structPtr->windowState.selectedIndexOffset) + EraseListEntry(&structPtr->list.listWindow, structPtr->eraseIndex, 1); - structPtr->unk89C++; + structPtr->eraseIndex++; return LT_INC_AND_PAUSE; case 2: if (!IsDma3ManagerBusyWithBgCopy()) { - if (structPtr->unk89C != structPtr->windowState.visibleEntries) - return 6; + if (structPtr->eraseIndex != structPtr->windowState.entriesOnscreen) + return LT_SET_STATE(1); if (structPtr->windowState.selectedIndexOffset != 0) - sub_81C8B70(&structPtr->list.listWindow, structPtr->unk89C, structPtr->windowState.selectedIndexOffset); + EraseListEntry(&structPtr->list.listWindow, structPtr->eraseIndex, structPtr->windowState.selectedIndexOffset); return LT_INC_AND_PAUSE; } @@ -535,7 +534,7 @@ static u32 LoopedTask_sub_81C8870(s32 state) } return LT_PAUSE; case 4: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; structPtr->windowState.selectedIndexOffset = 0; @@ -582,7 +581,7 @@ static u32 LoopedTask_PrintCheckPageInfo(s32 state) return LT_INC_AND_PAUSE; } -static u32 LoopedTask_sub_81C8A28(s32 state) +static u32 LoopedTask_ReshowListFromCheckPage(s32 state) { struct PokenavSub17 *structPtr; struct PokenavListWindowState *windowState; @@ -599,24 +598,26 @@ static u32 LoopedTask_sub_81C8A28(s32 state) switch (state) { case 0: + // Rewrite the name of the trainer whose check page was just being viewed. + // This is done to erase the red background it had. PrintMatchCallListTrainerName(windowState, subPtr0); return LT_INC_AND_PAUSE; case 1: - ptr = &structPtr->unk89C; - if (++(*ptr) < structPtr->windowState.visibleEntries) + ptr = &structPtr->eraseIndex; + if (++(*ptr) < structPtr->windowState.entriesOnscreen) { - sub_81C8B70(&subPtr0->listWindow, *ptr, 1); + EraseListEntry(&subPtr0->listWindow, *ptr, 1); return LT_PAUSE; } *ptr = 0; - if (windowState->listLength <= windowState->visibleEntries) + if (windowState->listLength <= windowState->entriesOnscreen) { if (windowState->windowTopIndex != 0) { s32 r4 = windowState->windowTopIndex; r5 = -r4; - sub_81C8B70(&subPtr0->listWindow, r5, r4); + EraseListEntry(&subPtr0->listWindow, r5, r4); windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; @@ -624,36 +625,36 @@ static u32 LoopedTask_sub_81C8A28(s32 state) } else { - if (windowState->windowTopIndex + windowState->visibleEntries > windowState->listLength) + if (windowState->windowTopIndex + windowState->entriesOnscreen > windowState->listLength) { - s32 r4 = windowState->windowTopIndex + windowState->visibleEntries - windowState->listLength; + s32 r4 = windowState->windowTopIndex + windowState->entriesOnscreen - windowState->listLength; r5 = -r4; - sub_81C8B70(&subPtr0->listWindow, r5, r4); + EraseListEntry(&subPtr0->listWindow, r5, r4); windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; } } - return 9; + return LT_SET_STATE(4); case 2: - MoveListWindow(structPtr->unk89C, FALSE); + MoveListWindow(structPtr->eraseIndex, FALSE); return LT_INC_AND_PAUSE; case 3: - if (!IsMovePokenavListWindowTaskActive()) + if (!PokenavList_IsMoveWindowTaskActive()) { - structPtr->unk89C = 0; - return 1; + structPtr->eraseIndex = 0; + return LT_INC_AND_CONTINUE; } - return 2; + return LT_PAUSE; case 4: - PrintListItems(windowState->listPtr, windowState->windowTopIndex + structPtr->unk89C, 1, windowState->listItemSize, structPtr->unk89C, &structPtr->list); + PrintListItems(windowState->listPtr, windowState->windowTopIndex + structPtr->eraseIndex, 1, windowState->listItemSize, structPtr->eraseIndex, &structPtr->list); return LT_INC_AND_PAUSE; case 5: if (IsPrintListItemsTaskActive()) return LT_PAUSE; - if (++structPtr->unk89C >= windowState->listLength || structPtr->unk89C >= windowState->visibleEntries) + if (++structPtr->eraseIndex >= windowState->listLength || structPtr->eraseIndex >= windowState->entriesOnscreen) return LT_INC_AND_CONTINUE; - return 9; + return LT_SET_STATE(4); case 6: ToggleListArrows(subPtr0, 0); return LT_FINISH; @@ -662,15 +663,15 @@ static u32 LoopedTask_sub_81C8A28(s32 state) return LT_FINISH; } -static void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) +static void EraseListEntry(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) { u8 *tileData = (u8*)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); - u32 v2 = listWindow->width * 64; + u32 width = listWindow->width * 64; a1 = (listWindow->unkA + a1) & 0xF; if (a1 + a2 <= 16) { - CpuFastFill8(PIXEL_FILL(1), tileData + a1 * v2, a2 * v2); + CpuFastFill8(PIXEL_FILL(1), tileData + a1 * width, a2 * width); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } else @@ -678,8 +679,8 @@ static void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2 u32 v3 = 16 - a1; u32 v4 = a2 - v3; - CpuFastFill8(PIXEL_FILL(1), tileData + a1 * v2, v3 * v2); - CpuFastFill8(PIXEL_FILL(1), tileData, v4 * v2); + CpuFastFill8(PIXEL_FILL(1), tileData + a1 * width, v3 * width); + CpuFastFill8(PIXEL_FILL(1), tileData, v4 * width); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } @@ -689,19 +690,20 @@ static void sub_81C8B70(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2 CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } -void sub_81C8C64(struct PokenavListMenuWindow *listWindow, u32 a1) +// Pointless +static void SetListMarginTile(struct PokenavListMenuWindow *listWindow, bool32 draw) { u16 var; - u16 *v1 = (u16*)GetBgTilemapBuffer(GetWindowAttribute(listWindow->windowId, WINDOW_BG)); - v1 += ((listWindow->unkA << 6) + listWindow->x) - 1; + u16 *tilemapBuffer = (u16*)GetBgTilemapBuffer(GetWindowAttribute(listWindow->windowId, WINDOW_BG)); + tilemapBuffer += (listWindow->unkA << 6) + listWindow->x - 1; - if (a1 != 0) + if (draw) var = (listWindow->fillValue << 12) | (listWindow->tileOffset + 1); else var = (listWindow->fillValue << 12) | (listWindow->tileOffset); - v1[0] = var; - v1[0x20] = var; + tilemapBuffer[0] = var; + tilemapBuffer[0x20] = var; } // Print the trainer's name and title at the top of their check page @@ -713,7 +715,7 @@ static void PrintCheckPageTrainerName(struct PokenavListWindowState *state, stru list->iconDrawFunc(list->listWindow.windowId, state->windowTopIndex, list->listWindow.unkA); FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(4), 0, list->listWindow.unkA * 16, list->listWindow.width * 8, 16); AddTextPrinterParameterized3(list->listWindow.windowId, list->listWindow.fontId, 8, (list->listWindow.unkA * 16) + 1, colors, TEXT_SKIP_DRAW, list->itemTextBuffer); - sub_81C8C64(&list->listWindow, 1); + SetListMarginTile(&list->listWindow, TRUE); CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_FULL, 0, list->listWindow.unkA * 2, list->listWindow.width, 2); } @@ -723,7 +725,7 @@ static void PrintMatchCallListTrainerName(struct PokenavListWindowState *state, list->bufferItemFunc(state->listPtr + state->listItemSize * state->windowTopIndex, list->itemTextBuffer); FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.width * 8, 16); AddTextPrinterParameterized(list->listWindow.windowId, list->listWindow.fontId, list->itemTextBuffer, 8, list->listWindow.unkA * 16 + 1, TEXT_SKIP_DRAW, NULL); - sub_81C8C64(&list->listWindow, 0); + SetListMarginTile(&list->listWindow, FALSE); CopyWindowToVram(list->listWindow.windowId, COPYWIN_FULL); } @@ -745,8 +747,7 @@ static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fie static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) { // lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames - static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = - { + static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = { [CHECK_PAGE_STRATEGY] = 2, [CHECK_PAGE_POKEMON] = 4, [CHECK_PAGE_INTRO_1] = 6, @@ -768,7 +769,7 @@ static const struct CompressedSpriteSheet sListArrowSpriteSheets[] = { { .data = sListArrow_Gfx, - .size = 192, + .size = 0xC0, .tag = GFXTAG_ARROW } }; @@ -852,7 +853,7 @@ static void CreateListArrowSprites(struct PokenavListWindowState *windowState, s list->rightArrow = &gSprites[spriteId]; x = list->listWindow.x * 8 + (list->listWindow.width - 1) * 4; - spriteId = CreateSprite(&sSpriteTemplate_UpDownArrow, x, list->listWindow.y * 8 + windowState->visibleEntries * 16, 7); + spriteId = CreateSprite(&sSpriteTemplate_UpDownArrow, x, list->listWindow.y * 8 + windowState->entriesOnscreen * 16, 7); list->downArrow = &gSprites[spriteId]; list->downArrow->oam.tileNum += 2; list->downArrow->callback = SpriteCB_DownArrow; @@ -954,19 +955,19 @@ static void InitPokenavListWindowState(struct PokenavListWindowState *dst, struc dst->windowTopIndex = template->startIndex; dst->listLength = template->count; dst->listItemSize = template->itemSize; - dst->visibleEntries = template->maxShowed; - if (dst->visibleEntries >= dst->listLength) + dst->entriesOnscreen = template->maxShowed; + if (dst->entriesOnscreen >= dst->listLength) { dst->windowTopIndex = 0; - dst->unk4 = 0; + dst->entriesOffscreen = 0; dst->selectedIndexOffset = template->startIndex; } else { - dst->unk4 = dst->listLength - dst->visibleEntries; - if (dst->windowTopIndex + dst->visibleEntries > dst->listLength) + dst->entriesOffscreen = dst->listLength - dst->entriesOnscreen; + if (dst->windowTopIndex + dst->entriesOnscreen > dst->listLength) { - dst->selectedIndexOffset = dst->windowTopIndex + dst->visibleEntries - dst->listLength; + dst->selectedIndexOffset = dst->windowTopIndex + dst->entriesOnscreen - dst->listLength; dst->windowTopIndex = template->startIndex - dst->selectedIndexOffset; } else diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index c70554eb0ef9..1d72f6a980a0 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -190,7 +190,7 @@ static u32 HandleRibbonsMonListInput(struct Pokenav_RibbonsMonList *list) } if (JOY_NEW(A_BUTTON)) { - list->monList->currIndex = GetSelectedPokenavListIndex(); + list->monList->currIndex = PokenavList_GetSelectedIndex(); list->saveMonList = 1; list->callback = RibbonsMonMenu_ToSummaryScreen; return RIBBONS_MON_LIST_FUNC_OPEN_RIBBONS_SUMMARY; @@ -230,7 +230,7 @@ static s32 GetRibbonsMonListCount(void) static s32 GetMonRibbonSelectedMonData(void) { struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST); - s32 idx = GetSelectedPokenavListIndex(); + s32 idx = PokenavList_GetSelectedIndex(); return list->monList->monData[idx].data; } @@ -496,7 +496,7 @@ static u32 LoopedTask_RibbonsListMoveCursorUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -529,7 +529,7 @@ static u32 LoopedTask_RibbonsListMoveCursorDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -562,7 +562,7 @@ static u32 LoopedTask_RibbonsListMovePageUp(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -595,7 +595,7 @@ static u32 LoopedTask_RibbonsListMovePageDown(s32 state) } return LT_INC_AND_PAUSE; case 1: - if (IsMovePokenavListWindowTaskActive()) + if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; // fallthrough case 2: @@ -658,7 +658,7 @@ static void AddRibbonsMonListWindow(struct Pokenav_RibbonsMonMenu *menu) static void UpdateIndexNumberDisplay(struct Pokenav_RibbonsMonMenu *menu) { - s32 listIndex = GetSelectedPokenavListIndex(); + s32 listIndex = PokenavList_GetSelectedIndex(); s32 listCount = GetRibbonsMonListCount(); DrawListIndexNumber(menu->winid, listIndex + 1, listCount); CopyWindowToVram(menu->winid, COPYWIN_GFX); From c779d03b3e9032254bbd7a08f4c9203e14373933 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 00:21:40 -0500 Subject: [PATCH 421/762] Rename pokenav_match_call_ui --- include/pokenav.h | 4 +- ld_script.txt | 4 +- ...pokenav_match_call_ui.c => pokenav_list.c} | 98 +++++++++---------- sym_ewram.txt | 2 +- 4 files changed, 54 insertions(+), 54 deletions(-) rename src/{pokenav_match_call_ui.c => pokenav_list.c} (90%) diff --git a/include/pokenav.h b/include/pokenav.h index b5eb20a7fc47..34206d3ae615 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -323,7 +323,7 @@ bool32 CanViewRibbonsMenu(void); void SetPokenavVBlankCallback(void); void SetVBlankCallback_(IntrCallback callback); -// pokenav_match_call_ui.c +// pokenav_list.c bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset); bool32 IsCreatePokenavListTaskActive(void); void DestroyPokenavList(void); @@ -337,7 +337,7 @@ void PokenavList_ToggleVerticalArrows(bool32 shouldHide); void PokenavList_DrawCurrentItemIcon(void); void PokenavList_EraseListForCheckPage(void); bool32 PokenavList_IsTaskActive(void); -void PrintCheckPageInfo(s16 a0); +void PrintCheckPageInfo(s16 delta); u32 PokenavList_GetTopIndex(void); void PokenavList_ReshowListFromCheckPage(void); diff --git a/ld_script.txt b/ld_script.txt index 257fb3c6e2d0..5a312cba275c 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -310,7 +310,7 @@ SECTIONS { src/battle_pyramid_bag.o(.text); src/pokenav.o(.text); src/pokenav_main_menu.o(.text); - src/pokenav_match_call_ui.o(.text); + src/pokenav_list.o(.text); src/pokenav_menu_handler.o(.text); src/pokenav_menu_handler_gfx.o(.text); src/pokenav_match_call_1.o(.text); @@ -665,7 +665,7 @@ SECTIONS { src/battle_pyramid_bag.o(.rodata); src/pokenav.o(.rodata); src/pokenav_main_menu.o(.rodata); - src/pokenav_match_call_ui.o(.rodata); + src/pokenav_list.o(.rodata); src/pokenav_menu_handler.o(.rodata); src/pokenav_menu_handler_gfx.o(.rodata); src/pokenav_match_call_1.o(.rodata); diff --git a/src/pokenav_match_call_ui.c b/src/pokenav_list.c similarity index 90% rename from src/pokenav_match_call_ui.c rename to src/pokenav_list.c index 97437e3cdfa9..bdba1d2c09b1 100644 --- a/src/pokenav_match_call_ui.c +++ b/src/pokenav_list.c @@ -37,7 +37,7 @@ struct PokenavListWindowState { void * listPtr; }; -struct PokenavSub17Substruct +struct PokenavListSub { struct PokenavListMenuWindow listWindow; u32 unk10; @@ -57,33 +57,33 @@ struct PokenavSub17Substruct u8 itemTextBuffer[64]; }; -struct PokenavSub17 +struct PokenavList { - struct PokenavSub17Substruct list; + struct PokenavListSub list; u8 tilemapBuffer[BG_SCREEN_SIZE]; struct PokenavListWindowState windowState; s32 eraseIndex; u32 loopedTaskId; }; -static void InitPokenavListBg(struct PokenavSub17 *); -static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *, const struct BgTemplate *, struct PokenavListTemplate *, s32); +static void InitPokenavListBg(struct PokenavList *); +static bool32 CopyPokenavListMenuTemplate(struct PokenavListSub *, const struct BgTemplate *, struct PokenavListTemplate *, s32); static void InitPokenavListWindowState(struct PokenavListWindowState *, struct PokenavListTemplate *); static void SpriteCB_UpArrow(struct Sprite *); static void SpriteCB_DownArrow(struct Sprite *); static void SpriteCB_RightArrow(struct Sprite *); -static void ToggleListArrows(struct PokenavSub17Substruct *, u32); -static void DestroyListArrows(struct PokenavSub17Substruct *); -static void CreateListArrowSprites(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void ToggleListArrows(struct PokenavListSub *, u32); +static void DestroyListArrows(struct PokenavListSub *); +static void CreateListArrowSprites(struct PokenavListWindowState *, struct PokenavListSub *); static void LoadListArrowGfx(void); -static void PrintMatchCallFlavorText(struct PokenavListWindowState *, struct PokenavSub17Substruct *, u32); -static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *, u32); -static void PrintMatchCallListTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); -static void PrintCheckPageTrainerName(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void PrintMatchCallFlavorText(struct PokenavListWindowState *, struct PokenavListSub *, u32); +static void PrintMatchCallFieldNames(struct PokenavListSub *, u32); +static void PrintMatchCallListTrainerName(struct PokenavListWindowState *, struct PokenavListSub *); +static void PrintCheckPageTrainerName(struct PokenavListWindowState *, struct PokenavListSub *); static void EraseListEntry(struct PokenavListMenuWindow *, s32, s32); -static void CreateMoveListWindowTask(s32, struct PokenavSub17Substruct *); -static void PrintListItems(void *, u32, u32, u32, u32, struct PokenavSub17Substruct *); -static void InitListItems(struct PokenavListWindowState *, struct PokenavSub17Substruct *); +static void CreateMoveListWindowTask(s32, struct PokenavListSub *); +static void PrintListItems(void *, u32, u32, u32, u32, struct PokenavListSub *); +static void InitListItems(struct PokenavListWindowState *, struct PokenavListSub *); static void InitPokenavListWindow(struct PokenavListMenuWindow *); static u32 LoopedTask_CreatePokenavList(s32); static bool32 IsPrintListItemsTaskActive(void); @@ -100,7 +100,7 @@ static EWRAM_DATA u32 sMoveWindowDownIndex = 0; // Read, but pointlessly bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset) { - struct PokenavSub17 *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_LIST, sizeof(struct PokenavSub17)); + struct PokenavList *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_LIST, sizeof(struct PokenavList)); if (structPtr == NULL) return FALSE; @@ -119,7 +119,7 @@ bool32 IsCreatePokenavListTaskActive(void) void DestroyPokenavList(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); DestroyListArrows(&structPtr->list); RemoveWindow(structPtr->list.listWindow.windowId); FreePokenavSubstruct(POKENAV_SUBSTRUCT_LIST); @@ -127,7 +127,7 @@ void DestroyPokenavList(void) static u32 LoopedTask_CreatePokenavList(s32 state) { - struct PokenavSub17 *structPtr; + struct PokenavList *structPtr; if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; @@ -163,7 +163,7 @@ static u32 LoopedTask_CreatePokenavList(s32 state) } } -static void InitPokenavListBg(struct PokenavSub17 *a0) +static void InitPokenavListBg(struct PokenavList *a0) { u16 tileNum = (a0->list.listWindow.fillValue << 12) | a0->list.listWindow.tileOffset; BgDmaFill(a0->list.listWindow.bg, PIXEL_FILL(1), a0->list.listWindow.tileOffset, 1); @@ -183,7 +183,7 @@ static void InitPokenavListWindow(struct PokenavListMenuWindow *listWindow) CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } -static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavSub17Substruct *a1) +static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavListSub *a1) { s32 numToPrint = windowState->listLength - windowState->windowTopIndex; if (numToPrint > windowState->entriesOnscreen) @@ -192,7 +192,7 @@ static void InitListItems(struct PokenavListWindowState *windowState, struct Pok PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, a1); } -static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 a4, struct PokenavSub17Substruct *list) +static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 a4, struct PokenavListSub *list) { if (numItems == 0) return; @@ -214,7 +214,7 @@ static bool32 IsPrintListItemsTaskActive(void) static u32 LoopedTask_PrintListItems(s32 state) { u32 row; - struct PokenavSub17Substruct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListSub *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { @@ -251,14 +251,14 @@ static u32 LoopedTask_PrintListItems(s32 state) static bool32 ShouldShowUpArrow(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return (structPtr->windowState.windowTopIndex != 0); } static bool32 ShouldShowDownArrow(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavListWindowState *subPtr = &structPtr->windowState; return (subPtr->windowTopIndex + subPtr->entriesOnscreen < subPtr->listLength); @@ -266,7 +266,7 @@ static bool32 ShouldShowDownArrow(void) static void MoveListWindow(s32 delta, bool32 printItems) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavListWindowState *subPtr = &structPtr->windowState; if (delta < 0) @@ -289,7 +289,7 @@ static void MoveListWindow(s32 delta, bool32 printItems) subPtr->windowTopIndex += delta; } -static void CreateMoveListWindowTask(s32 delta, struct PokenavSub17Substruct *list) +static void CreateMoveListWindowTask(s32 delta, struct PokenavListSub *list) { list->startBgY = GetBgY(list->listWindow.bg); list->endBgY = list->startBgY + (delta << 12); @@ -305,8 +305,8 @@ static u32 LoopedTask_MoveListWindow(s32 state) { s32 oldY, newY; bool32 finished; - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - struct PokenavSub17Substruct *subPtr = &structPtr->list; + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListSub *subPtr = &structPtr->list; switch (state) { @@ -342,13 +342,13 @@ static u32 LoopedTask_MoveListWindow(s32 state) bool32 PokenavList_IsMoveWindowTaskActive(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->list.loopedTaskId); } static struct PokenavListWindowState *GetPokenavListWindowState(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return &structPtr->windowState; } @@ -462,14 +462,14 @@ u32 PokenavList_GetTopIndex(void) void PokenavList_EraseListForCheckPage(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->eraseIndex = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_EraseListForCheckPage, 6); } void PrintCheckPageInfo(s16 delta) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->windowState.windowTopIndex += delta; structPtr->eraseIndex = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); @@ -477,20 +477,20 @@ void PrintCheckPageInfo(s16 delta) void PokenavList_ReshowListFromCheckPage(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->eraseIndex = 0; structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_ReshowListFromCheckPage, 6); } bool32 PokenavList_IsTaskActive(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); return IsLoopedTaskActive(structPtr->loopedTaskId); } void PokenavList_DrawCurrentItemIcon(void) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); struct PokenavListWindowState *subPtr = &structPtr->windowState; structPtr->list.iconDrawFunc(structPtr->list.listWindow.windowId, subPtr->windowTopIndex + subPtr->selectedIndexOffset, (structPtr->list.listWindow.unkA + subPtr->selectedIndexOffset) & 0xF); CopyWindowToVram(structPtr->list.listWindow.windowId, COPYWIN_MAP); @@ -498,7 +498,7 @@ void PokenavList_DrawCurrentItemIcon(void) static u32 LoopedTask_EraseListForCheckPage(s32 state) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { @@ -545,7 +545,7 @@ static u32 LoopedTask_EraseListForCheckPage(s32 state) static u32 LoopedTask_PrintCheckPageInfo(s32 state) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; @@ -583,9 +583,9 @@ static u32 LoopedTask_PrintCheckPageInfo(s32 state) static u32 LoopedTask_ReshowListFromCheckPage(s32 state) { - struct PokenavSub17 *structPtr; + struct PokenavList *structPtr; struct PokenavListWindowState *windowState; - struct PokenavSub17Substruct *subPtr0; + struct PokenavListSub *subPtr0; s32 r5, *ptr; if (IsDma3ManagerBusyWithBgCopy()) @@ -707,7 +707,7 @@ static void SetListMarginTile(struct PokenavListMenuWindow *listWindow, bool32 d } // Print the trainer's name and title at the top of their check page -static void PrintCheckPageTrainerName(struct PokenavListWindowState *state, struct PokenavSub17Substruct *list) +static void PrintCheckPageTrainerName(struct PokenavListWindowState *state, struct PokenavListSub *list) { u8 colors[3] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_RED}; @@ -720,7 +720,7 @@ static void PrintCheckPageTrainerName(struct PokenavListWindowState *state, stru } // Print the trainer's name and title for the list (to replace the check page name and title, which has a red background) -static void PrintMatchCallListTrainerName(struct PokenavListWindowState *state, struct PokenavSub17Substruct *list) +static void PrintMatchCallListTrainerName(struct PokenavListWindowState *state, struct PokenavListSub *list) { list->bufferItemFunc(state->listPtr + state->listItemSize * state->windowTopIndex, list->itemTextBuffer); FillWindowPixelRect(list->listWindow.windowId, PIXEL_FILL(1), 0, list->listWindow.unkA * 16, list->listWindow.width * 8, 16); @@ -729,7 +729,7 @@ static void PrintMatchCallListTrainerName(struct PokenavListWindowState *state, CopyWindowToVram(list->listWindow.windowId, COPYWIN_FULL); } -static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fieldId) +static void PrintMatchCallFieldNames(struct PokenavListSub *list, u32 fieldId) { const u8 *fieldNames[] = { gText_PokenavMatchCall_Strategy, @@ -744,7 +744,7 @@ static void PrintMatchCallFieldNames(struct PokenavSub17Substruct *list, u32 fie CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.width, 2); } -static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct PokenavSub17Substruct *list, u32 checkPageEntry) +static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct PokenavListSub *list, u32 checkPageEntry) { // lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = { @@ -844,7 +844,7 @@ static void LoadListArrowGfx(void) Pokenav_AllocAndLoadPalettes(sListArrowPalettes); } -static void CreateListArrowSprites(struct PokenavListWindowState *windowState, struct PokenavSub17Substruct *list) +static void CreateListArrowSprites(struct PokenavListWindowState *windowState, struct PokenavListSub *list) { u32 spriteId; s16 x; @@ -864,7 +864,7 @@ static void CreateListArrowSprites(struct PokenavListWindowState *windowState, s list->upArrow->callback = SpriteCB_UpArrow; } -static void DestroyListArrows(struct PokenavSub17Substruct *list) +static void DestroyListArrows(struct PokenavListSub *list) { DestroySprite(list->rightArrow); DestroySprite(list->upArrow); @@ -873,7 +873,7 @@ static void DestroyListArrows(struct PokenavSub17Substruct *list) FreeSpritePaletteByTag(PALTAG_ARROW); } -static void ToggleListArrows(struct PokenavSub17Substruct *list, bool32 invisible) +static void ToggleListArrows(struct PokenavListSub *list, bool32 invisible) { if (invisible) { @@ -894,7 +894,7 @@ static void ToggleListArrows(struct PokenavSub17Substruct *list, bool32 invisibl static void SpriteCB_RightArrow(struct Sprite *sprite) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); sprite->y2 = structPtr->windowState.selectedIndexOffset << 4; } @@ -940,7 +940,7 @@ static void SpriteCB_UpArrow(struct Sprite *sprite) void PokenavList_ToggleVerticalArrows(bool32 invisible) { - struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); structPtr->list.upArrow->sInvisible = invisible; structPtr->list.downArrow->sInvisible = invisible; } @@ -977,7 +977,7 @@ static void InitPokenavListWindowState(struct PokenavListWindowState *dst, struc } } -static bool32 CopyPokenavListMenuTemplate(struct PokenavSub17Substruct *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 tileOffset) +static bool32 CopyPokenavListMenuTemplate(struct PokenavListSub *dest, const struct BgTemplate *bgTemplate, struct PokenavListTemplate *template, s32 tileOffset) { struct WindowTemplate window; diff --git a/sym_ewram.txt b/sym_ewram.txt index a9ec00e3b9cf..414b7a3b235c 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -143,7 +143,7 @@ .include "src/pokedex_area_region_map.o" .include "src/battle_pyramid_bag.o" .include "src/pokenav.o" - .include "src/pokenav_match_call_ui.o" + .include "src/pokenav_list.o" .include "src/menu_specialized.o" .include "src/faraway_island.o" .include "src/trainer_hill.o" From 14d78d76332a99f0942f1ad5c05f439ce27d789f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 00:42:23 -0500 Subject: [PATCH 422/762] Finish match call menu doc --- .../{86226E0.pal => call_window.pal} | 0 .../{8622700.pal => list_window.pal} | 0 include/pokenav.h | 5 +- src/pokenav_match_call_1.c | 114 +++++++++--------- src/pokenav_match_call_2.c | 22 ++-- 5 files changed, 73 insertions(+), 68 deletions(-) rename graphics/pokenav/match_call/{86226E0.pal => call_window.pal} (100%) rename graphics/pokenav/match_call/{8622700.pal => list_window.pal} (100%) diff --git a/graphics/pokenav/match_call/86226E0.pal b/graphics/pokenav/match_call/call_window.pal similarity index 100% rename from graphics/pokenav/match_call/86226E0.pal rename to graphics/pokenav/match_call/call_window.pal diff --git a/graphics/pokenav/match_call/8622700.pal b/graphics/pokenav/match_call/list_window.pal similarity index 100% rename from graphics/pokenav/match_call/8622700.pal rename to graphics/pokenav/match_call/list_window.pal diff --git a/include/pokenav.h b/include/pokenav.h index 34206d3ae615..5951981365fa 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -407,10 +407,9 @@ void ResetBldCnt_(void); bool32 PokenavCallback_Init_MatchCall(void); u32 GetMatchCallCallback(void); void FreeMatchCallSubstruct1(void); -int sub_81CAE28(void); +int IsMatchCallListInitFinished(void); int GetNumberRegistered(void); -int sub_81CAE48(void); -struct PokenavMatchCallEntry *sub_81CAE94(void); +struct PokenavMatchCallEntry *GetMatchCallList(void); u16 GetMatchCallMapSec(int); bool32 ShouldDrawRematchPokeballIcon(int index); void ClearRematchPokeballIcon(u16 windowId, u32 a1); diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_1.c index e0e5306e19c3..d56cfdb62ec7 100755 --- a/src/pokenav_match_call_1.c +++ b/src/pokenav_match_call_1.c @@ -14,26 +14,26 @@ #include "strings.h" #include "constants/songs.h" -struct Pokenav3Struct +struct Pokenav_MatchCallMenu { u16 optionCursorPos; u16 maxOptionId; const u8 *matchCallOptions; u16 headerId; u16 numRegistered; - u16 unkC; - u32 unk10; - u32 unk14; - u32 (*callback)(struct Pokenav3Struct*); + u16 numSpecialTrainers; + bool32 initFinished; + u32 loopedTaskId; + u32 (*callback)(struct Pokenav_MatchCallMenu*); struct PokenavMatchCallEntry matchCallEntries[MAX_REMATCH_ENTRIES - 1]; }; -static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *); -static u32 GetExitMatchCallMenuId(struct Pokenav3Struct *); -static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *); -static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *); -static u32 CB2_HandleCallExitInput(struct Pokenav3Struct *); -static u32 sub_81CAD20(s32); +static u32 CB2_HandleMatchCallInput(struct Pokenav_MatchCallMenu *); +static u32 GetExitMatchCallMenuId(struct Pokenav_MatchCallMenu *); +static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav_MatchCallMenu *); +static u32 CB2_HandleCheckPageInput(struct Pokenav_MatchCallMenu *); +static u32 CB2_HandleCallExitInput(struct Pokenav_MatchCallMenu *); +static u32 LoopedTask_BuildMatchCallList(s32); static bool32 ShouldDoNearbyMessage(void); #include "data/text/match_call_messages.h" @@ -53,20 +53,20 @@ static const u8 sMatchCallOptionsHasCheckPage[] = bool32 PokenavCallback_Init_MatchCall(void) { - struct Pokenav3Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN, sizeof(struct Pokenav3Struct)); + struct Pokenav_MatchCallMenu *state = AllocSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN, sizeof(struct Pokenav_MatchCallMenu)); if (!state) return FALSE; state->callback = CB2_HandleMatchCallInput; state->headerId = 0; - state->unk10 = 0; - state->unk14 = CreateLoopedTask(sub_81CAD20, 1); + state->initFinished = FALSE; + state->loopedTaskId = CreateLoopedTask(LoopedTask_BuildMatchCallList, 1); return TRUE; } u32 GetMatchCallCallback(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->callback(state); } @@ -75,7 +75,7 @@ void FreeMatchCallSubstruct1(void) FreePokenavSubstruct(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); } -static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *state) +static u32 CB2_HandleMatchCallInput(struct Pokenav_MatchCallMenu *state) { int selection; @@ -125,20 +125,20 @@ static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *state) return POKENAV_MC_FUNC_NONE; } -static u32 GetExitMatchCallMenuId(struct Pokenav3Struct *state) +static u32 GetExitMatchCallMenuId(struct Pokenav_MatchCallMenu *state) { return POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL; } -static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *state) +static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav_MatchCallMenu *state) { - if ((JOY_NEW(DPAD_UP)) && state->optionCursorPos) + if (JOY_NEW(DPAD_UP) && state->optionCursorPos) { state->optionCursorPos--; return POKENAV_MC_FUNC_MOVE_OPTIONS_CURSOR; } - if ((JOY_NEW(DPAD_DOWN)) && state->optionCursorPos < state->maxOptionId) + if (JOY_NEW(DPAD_DOWN) && state->optionCursorPos < state->maxOptionId) { state->optionCursorPos++; return POKENAV_MC_FUNC_MOVE_OPTIONS_CURSOR; @@ -175,7 +175,7 @@ static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *state) return POKENAV_MC_FUNC_NONE; } -static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *state) +static u32 CB2_HandleCheckPageInput(struct Pokenav_MatchCallMenu *state) { if (JOY_REPEAT(DPAD_UP)) return POKENAV_MC_FUNC_CHECK_PAGE_UP; @@ -191,7 +191,7 @@ static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *state) return POKENAV_MC_FUNC_NONE; } -static u32 CB2_HandleCallExitInput(struct Pokenav3Struct *state) +static u32 CB2_HandleCallExitInput(struct Pokenav_MatchCallMenu *state) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { @@ -202,10 +202,10 @@ static u32 CB2_HandleCallExitInput(struct Pokenav3Struct *state) return POKENAV_MC_FUNC_NONE; } -static u32 sub_81CAD20(s32 taskState) +static u32 LoopedTask_BuildMatchCallList(s32 taskState) { int i, j; - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); switch (taskState) { case 0: @@ -213,6 +213,7 @@ static u32 sub_81CAD20(s32 taskState) state->numRegistered = 0; return LT_INC_AND_CONTINUE; case 1: + // Load special trainers (e.g. Rival, gym leaders) for (i = 0, j = state->headerId; i < 30; i++, j++) { if (MatchCall_GetEnabled(j)) @@ -225,7 +226,7 @@ static u32 sub_81CAD20(s32 taskState) if (++state->headerId >= MC_HEADER_COUNT) { - state->unkC = state->headerId; + state->numSpecialTrainers = state->headerId; state->headerId = 0; return LT_INC_AND_CONTINUE; } @@ -233,6 +234,7 @@ static u32 sub_81CAD20(s32 taskState) return LT_CONTINUE; case 2: + // Load normal trainers for (i = 0, j = state->headerId; i < 30; i++, j++) { if (!MatchCall_HasRematchId(state->headerId) && IsRematchEntryRegistered(state->headerId)) @@ -249,7 +251,7 @@ static u32 sub_81CAD20(s32 taskState) return LT_CONTINUE; case 3: - state->unk10 = 1; + state->initFinished = TRUE; break; } @@ -264,55 +266,58 @@ bool32 IsRematchEntryRegistered(int rematchIndex) return FALSE; } -int sub_81CAE28(void) +int IsMatchCallListInitFinished(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - return state->unk10; + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + return state->initFinished; } int GetNumberRegistered(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->numRegistered; } -int sub_81CAE48(void) +// Unused +static int GetNumSpecialTrainers(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - return state->unkC; + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + return state->numSpecialTrainers; } -int unref_sub_81CAE58(void) +// Unused +static int GetNumNormalTrainers(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - return state->numRegistered - state->unkC; + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + return state->numRegistered - state->numSpecialTrainers; } -int unref_sub_81CAE6C(int arg0) +// Unused +static int GetNormalTrainerHeaderId(int index) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); - arg0 += state->unkC; - if (arg0 >= state->numRegistered) + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + index += state->numSpecialTrainers; + if (index >= state->numRegistered) return REMATCH_TABLE_ENTRIES; - return state->matchCallEntries[arg0].headerId; + return state->matchCallEntries[index].headerId; } -struct PokenavMatchCallEntry *sub_81CAE94(void) +struct PokenavMatchCallEntry *GetMatchCallList(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->matchCallEntries; } u16 GetMatchCallMapSec(int index) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->matchCallEntries[index].mapSec; } bool32 ShouldDrawRematchPokeballIcon(int index) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); if (!state->matchCallEntries[index].isSpecialTrainer) index = state->matchCallEntries[index].headerId; else @@ -327,7 +332,7 @@ bool32 ShouldDrawRematchPokeballIcon(int index) int GetMatchCallTrainerPic(int index) { int headerId; - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); if (!state->matchCallEntries[index].isSpecialTrainer) { index = GetTrainerIdxByRematchIdx(state->matchCallEntries[index].headerId); @@ -348,7 +353,7 @@ int GetMatchCallTrainerPic(int index) const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); *newRematchRequest = FALSE; if (!Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType)) return gText_CallCantBeMadeHere; @@ -364,7 +369,7 @@ const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest) const u8 *GetMatchCallFlavorText(int index, int checkPageEntry) { int rematchId; - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); if (state->matchCallEntries[index].isSpecialTrainer) { rematchId = MatchCall_GetRematchTableIdx(state->matchCallEntries[index].headerId); @@ -381,13 +386,13 @@ const u8 *GetMatchCallFlavorText(int index, int checkPageEntry) u16 GetMatchCallOptionCursorPos(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); return state->optionCursorPos; } u16 GetMatchCallOptionId(int optionId) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); if (state->maxOptionId < optionId) return MATCH_CALL_OPTION_COUNT; @@ -431,7 +436,7 @@ u8 GetMatchTableMapSectionId(int rematchIndex) int GetIndexDeltaOfNextCheckPageDown(int index) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); int count = 1; while (++index < state->numRegistered) { @@ -448,7 +453,7 @@ int GetIndexDeltaOfNextCheckPageDown(int index) int GetIndexDeltaOfNextCheckPageUp(int index) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); int count = -1; while (--index >= 0) { @@ -463,7 +468,8 @@ int GetIndexDeltaOfNextCheckPageUp(int index) return 0; } -bool32 unref_sub_81CB16C(void) +// Unused +static bool32 HasRematchEntry(void) { int i; @@ -488,7 +494,7 @@ bool32 unref_sub_81CB16C(void) static bool32 ShouldDoNearbyMessage(void) { - struct Pokenav3Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); + struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN); int selection = PokenavList_GetSelectedIndex(); if (!state->matchCallEntries[selection].isSpecialTrainer) { diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_2.c index d8704919f511..d7e9476f980d 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_2.c @@ -56,7 +56,7 @@ struct Pokenav_MatchCallGfx static bool32 GetCurrentLoopedTaskActive(void); static u32 LoopedTask_OpenMatchCall(s32); static void CreateMatchCallList(void); -static void sub_81CBC1C(void); +static void DestroyMatchCallList(void); static void FreeMatchCallSprites(void); static void LoadCallWindowAndFade(struct Pokenav_MatchCallGfx *); static void DrawMatchCallLeftColumnWindows(struct Pokenav_MatchCallGfx *); @@ -119,12 +119,12 @@ static const u32 sMatchCallUI_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/ui static const u32 sMatchCallUI_Tilemap[] = INCBIN_U32("graphics/pokenav/match_call/ui.bin.lz"); static const u16 sOptionsCursor_Pal[] = INCBIN_U16("graphics/pokenav/match_call/options_cursor.gbapal"); static const u32 sOptionsCursor_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/options_cursor.4bpp.lz"); -static const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/match_call/86226E0.gbapal"); -static const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/match_call/8622700.gbapal"); +static const u16 sCallWindow_Pal[] = INCBIN_U16("graphics/pokenav/match_call/call_window.gbapal"); +static const u16 sListWindow_Pal[] = INCBIN_U16("graphics/pokenav/match_call/list_window.gbapal"); static const u16 sPokeball_Pal[] = INCBIN_U16("graphics/pokenav/match_call/pokeball.gbapal"); static const u32 sPokeball_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/pokeball.4bpp.lz"); -const struct BgTemplate sMatchCallBgTemplates[3] = +static const struct BgTemplate sMatchCallBgTemplates[3] = { { .bg = 1, @@ -223,7 +223,7 @@ static const struct CompressedSpriteSheet sOptionsCursorSpriteSheets[1] = {sOptionsCursor_Gfx, 0x40, GFXTAG_CURSOR} }; -const struct SpritePalette sOptionsCursorSpritePalettes[2] = +static const struct SpritePalette sOptionsCursorSpritePalettes[2] = { {sOptionsCursor_Pal, PALTAG_CURSOR} }; @@ -307,7 +307,7 @@ void FreeMatchCallSubstruct2(void) { struct Pokenav_MatchCallGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_OPEN); FreeMatchCallSprites(); - sub_81CBC1C(); + DestroyMatchCallList(); RemoveWindow(gfx->infoBoxWindowId); RemoveWindow(gfx->locWindowId); RemoveWindow(gfx->msgBoxWindowId); @@ -343,7 +343,7 @@ static u32 LoopedTask_OpenMatchCall(s32 state) BgDmaFill(1, 0, 0, 1); SetBgTilemapBuffer(1, gfx->bgTilemapBuffer1); FillBgTilemapBufferRect_Palette0(1, 0x1000, 0, 0, 32, 20); - CopyPaletteIntoBufferUnfaded(gUnknown_086226E0, 0x10, 0x20); + CopyPaletteIntoBufferUnfaded(sCallWindow_Pal, 0x10, 0x20); CopyBgTilemapBufferToVram(1); return LT_INC_AND_PAUSE; case 2: @@ -352,11 +352,11 @@ static u32 LoopedTask_OpenMatchCall(s32 state) LoadCallWindowAndFade(gfx); DecompressAndCopyTileDataToVram(3, sPokeball_Gfx, 0, 0, 0); - CopyPaletteIntoBufferUnfaded(gUnknown_08622700, 0x30, 0x20); + CopyPaletteIntoBufferUnfaded(sListWindow_Pal, 0x30, 0x20); CopyPaletteIntoBufferUnfaded(sPokeball_Pal, 0x50, 0x20); return LT_INC_AND_PAUSE; case 3: - if (FreeTempTileDataBuffersIfPossible() || !sub_81CAE28()) + if (FreeTempTileDataBuffersIfPossible() || !IsMatchCallListInitFinished()) return LT_PAUSE; CreateMatchCallList(); @@ -872,7 +872,7 @@ static u32 ExitMatchCall(s32 state) static void CreateMatchCallList(void) { struct PokenavListTemplate template; - template.list = (struct PokenavListItem *)sub_81CAE94(); + template.list = (struct PokenavListItem *)GetMatchCallList(); template.count = GetNumberRegistered(); template.itemSize = sizeof(struct PokenavListItem); template.startIndex = 0; @@ -888,7 +888,7 @@ static void CreateMatchCallList(void) CreateTask(Task_FlashPokeballIcons, 7); } -static void sub_81CBC1C(void) +static void DestroyMatchCallList(void) { DestroyPokenavList(); DestroyTask(FindTaskIdByFunc(Task_FlashPokeballIcons)); From 4275cf4b9033c6a4350057169af49fdcfa4a097a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 01:23:27 -0500 Subject: [PATCH 423/762] Rename pokenav match call files --- include/pokenav.h | 4 ++-- ld_script.txt | 8 ++++---- src/{pokenav_match_call_2.c => pokenav_match_call_gfx.c} | 8 ++++---- src/{pokenav_match_call_1.c => pokenav_match_call_list.c} | 0 4 files changed, 10 insertions(+), 10 deletions(-) rename src/{pokenav_match_call_2.c => pokenav_match_call_gfx.c} (99%) rename src/{pokenav_match_call_1.c => pokenav_match_call_list.c} (100%) diff --git a/include/pokenav.h b/include/pokenav.h index 5951981365fa..d3edb14223fb 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -403,7 +403,7 @@ bool32 IsMenuHandlerLoopedTaskActive(void); void FreeMenuHandlerSubstruct2(void); void ResetBldCnt_(void); -// pokenav_match_call_1.c +// pokenav_match_call_list.c bool32 PokenavCallback_Init_MatchCall(void); u32 GetMatchCallCallback(void); void FreeMatchCallSubstruct1(void); @@ -424,7 +424,7 @@ int GetIndexDeltaOfNextCheckPageDown(int index); int GetIndexDeltaOfNextCheckPageUp(int index); bool32 IsRematchEntryRegistered(int index); -// pokenav_match_call_2.c +// pokenav_match_call_gfx.c bool32 OpenMatchCall(void); void CreateMatchCallLoopedTask(s32 index); bool32 IsMatchCallLoopedTaskActive(void); diff --git a/ld_script.txt b/ld_script.txt index 5a312cba275c..b9302e47bfff 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -313,8 +313,8 @@ SECTIONS { src/pokenav_list.o(.text); src/pokenav_menu_handler.o(.text); src/pokenav_menu_handler_gfx.o(.text); - src/pokenav_match_call_1.o(.text); - src/pokenav_match_call_2.o(.text); + src/pokenav_match_call_list.o(.text); + src/pokenav_match_call_gfx.o(.text); src/pokenav_region_map.o(.text); src/pokenav_conditions.o(.text); src/pokenav_conditions_gfx.o(.text); @@ -668,8 +668,8 @@ SECTIONS { src/pokenav_list.o(.rodata); src/pokenav_menu_handler.o(.rodata); src/pokenav_menu_handler_gfx.o(.rodata); - src/pokenav_match_call_1.o(.rodata); - src/pokenav_match_call_2.o(.rodata); + src/pokenav_match_call_list.o(.rodata); + src/pokenav_match_call_gfx.o(.rodata); src/pokenav_region_map.o(.rodata); src/pokenav_conditions_gfx.o(.rodata); src/pokenav_conditions_search_results.o(.rodata); diff --git a/src/pokenav_match_call_2.c b/src/pokenav_match_call_gfx.c similarity index 99% rename from src/pokenav_match_call_2.c rename to src/pokenav_match_call_gfx.c index d7e9476f980d..056ab2f1d2c7 100755 --- a/src/pokenav_match_call_2.c +++ b/src/pokenav_match_call_gfx.c @@ -34,7 +34,7 @@ struct Pokenav_MatchCallGfx bool32 (*isTaskActiveCB)(void); u32 loopTaskId; u8 filler8[6]; - bool8 unkE; + bool8 skipHangUpSE; bool8 newRematchRequest; u16 locWindowId; u16 infoBoxWindowId; @@ -606,7 +606,7 @@ static u32 DoMatchCallMessage(s32 state) PrintCallingDots(gfx); PlaySE(SE_POKENAV_CALL); - gfx->unkE = 0; + gfx->skipHangUpSE = FALSE; return LT_INC_AND_PAUSE; case 2: if (WaitForCallingDotsText(gfx)) @@ -632,7 +632,7 @@ static u32 DoTrainerCloseByMessage(s32 state) PlaySE(SE_SELECT); DrawMsgBoxForCloseByMsg(gfx); PokenavList_ToggleVerticalArrows(TRUE); - gfx->unkE = 1; + gfx->skipHangUpSE = TRUE; return LT_INC_AND_PAUSE; case 1: if (IsDma3ManagerBusyWithBgCopy2(gfx)) @@ -657,7 +657,7 @@ static u32 CloseMatchCallMessage(s32 state) switch (state) { case 0: - if (!gfx->unkE) + if (!gfx->skipHangUpSE) PlaySE(SE_POKENAV_HANG_UP); PlaySE(SE_SELECT); diff --git a/src/pokenav_match_call_1.c b/src/pokenav_match_call_list.c similarity index 100% rename from src/pokenav_match_call_1.c rename to src/pokenav_match_call_list.c From d98bd4dba70eed415d36cb67e12c79d851b1964a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 01:37:17 -0500 Subject: [PATCH 424/762] Name pokenav region map structs --- src/pokenav_region_map.c | 89 +++++++++++++++++++++------------------- 1 file changed, 46 insertions(+), 43 deletions(-) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 4b9ff9f10e83..16ba480703c7 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -17,22 +17,25 @@ #include "constants/songs.h" #include "constants/region_map_sections.h" +#define GFXTAG_CITY_ZOOM 6 +#define PALTAG_CITY_ZOOM 11 + #define NUM_CITY_MAPS 22 -struct Pokenav5Struct +struct Pokenav_RegionMapMenu { - u8 filler0[0xC]; + u8 unused[12]; bool32 zoomDisabled; - u32 (*callback)(struct Pokenav5Struct *); + u32 (*callback)(struct Pokenav_RegionMapMenu *); }; -struct Pokenav5Struct_2 +struct Pokenav_RegionMapGfx { bool32 (*isTaskActiveCB)(void); u32 loopTaskId; u16 infoWindowId; struct Sprite *cityZoomTextSprites[3]; - u8 tilemapBuffer[0x800]; + u8 tilemapBuffer[BG_SCREEN_SIZE]; u8 cityZoomPics[NUM_CITY_MAPS][200]; }; @@ -43,9 +46,9 @@ struct CityMapEntry const u32 *tilemap; }; -static u32 HandleRegionMapInput(struct Pokenav5Struct *); -static u32 HandleRegionMapInputZoomDisabled(struct Pokenav5Struct *); -static u32 GetExitRegionMapMenuId(struct Pokenav5Struct *); +static u32 HandleRegionMapInput(struct Pokenav_RegionMapMenu *); +static u32 HandleRegionMapInputZoomDisabled(struct Pokenav_RegionMapMenu *); +static u32 GetExitRegionMapMenuId(struct Pokenav_RegionMapMenu *); static u32 LoopedTask_OpenRegionMap(s32); static u32 LoopedTask_DecompressCityMaps(s32); static bool32 GetCurrentLoopedTaskActive(void); @@ -53,15 +56,15 @@ static void FreeCityZoomViewGfx(void); static void LoadCityZoomViewGfx(void); static void DecompressCityMaps(void); static bool32 IsDecompressCityMapsActive(void); -static void LoadPokenavRegionMapGfx(struct Pokenav5Struct_2 *); +static void LoadPokenavRegionMapGfx(struct Pokenav_RegionMapGfx *); static bool32 TryFreeTempTileDataBuffers(void); -static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *); -static bool32 IsDma3ManagerBusyWithBgCopy_(struct Pokenav5Struct_2 *); +static void UpdateMapSecInfoWindow(struct Pokenav_RegionMapGfx *); +static bool32 IsDma3ManagerBusyWithBgCopy_(struct Pokenav_RegionMapGfx *); static void ChangeBgYForZoom(bool32); static bool32 IsChangeBgYForZoomActive(void); static void CreateCityZoomTextSprites(void); -static void DrawCityMap(struct Pokenav5Struct_2 *, int, int); -static void PrintLandmarkNames(struct Pokenav5Struct_2 *, int, int); +static void DrawCityMap(struct Pokenav_RegionMapGfx *, int, int); +static void PrintLandmarkNames(struct Pokenav_RegionMapGfx *, int, int); static void SetCityZoomTextInvisibility(bool32); static void Task_ChangeBgYForZoom(u8 taskId); static void UpdateCityZoomTextPosition(void); @@ -121,12 +124,12 @@ static const LoopedTask sRegionMapLoopTaskFuncs[] = static const struct CompressedSpriteSheet sCityZoomTextSpriteSheet[1] = { - {gRegionMapCityZoomText_Gfx, 0x800, 6} + {gRegionMapCityZoomText_Gfx, 0x800, GFXTAG_CITY_ZOOM} }; static const struct SpritePalette sCityZoomTilesSpritePalette[] = { - {gRegionMapCityZoomTiles_Pal, 11}, + {gRegionMapCityZoomTiles_Pal, PALTAG_CITY_ZOOM}, {} }; @@ -159,8 +162,8 @@ const struct OamData sCityZoomTextSprite_OamData = static const struct SpriteTemplate sCityZoomTextSpriteTemplate = { - .tileTag = 6, - .paletteTag = 11, + .tileTag = GFXTAG_CITY_ZOOM, + .paletteTag = PALTAG_CITY_ZOOM, .oam = &sCityZoomTextSprite_OamData, .anims = gDummySpriteAnimTable, .images = NULL, @@ -170,7 +173,7 @@ static const struct SpriteTemplate sCityZoomTextSpriteTemplate = u32 PokenavCallback_Init_RegionMap(void) { - struct Pokenav5Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_REGION_MAP_STATE, sizeof(struct Pokenav5Struct)); + struct Pokenav_RegionMapMenu *state = AllocSubstruct(POKENAV_SUBSTRUCT_REGION_MAP_STATE, sizeof(struct Pokenav_RegionMapMenu)); if (!state) return FALSE; @@ -195,11 +198,11 @@ void FreeRegionMapSubstruct1(void) u32 GetRegionMapCallback(void) { - struct Pokenav5Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_STATE); + struct Pokenav_RegionMapMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_STATE); return state->callback(state); } -static u32 HandleRegionMapInput(struct Pokenav5Struct *state) +static u32 HandleRegionMapInput(struct Pokenav_RegionMapMenu *state) { switch (DoRegionMapInputCallback()) { @@ -217,7 +220,7 @@ static u32 HandleRegionMapInput(struct Pokenav5Struct *state) return POKENAV_MAP_FUNC_NONE; } -static u32 HandleRegionMapInputZoomDisabled(struct Pokenav5Struct *state) +static u32 HandleRegionMapInputZoomDisabled(struct Pokenav_RegionMapMenu *state) { if (JOY_NEW(B_BUTTON)) { @@ -228,20 +231,20 @@ static u32 HandleRegionMapInputZoomDisabled(struct Pokenav5Struct *state) return POKENAV_MAP_FUNC_NONE; } -static u32 GetExitRegionMapMenuId(struct Pokenav5Struct *state) +static u32 GetExitRegionMapMenuId(struct Pokenav_RegionMapMenu *state) { return POKENAV_MAIN_MENU_CURSOR_ON_MAP; } bool32 GetZoomDisabled(void) { - struct Pokenav5Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_STATE); + struct Pokenav_RegionMapMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_STATE); return state->zoomDisabled; } bool32 OpenPokenavRegionMap(void) { - struct Pokenav5Struct_2 *state = AllocSubstruct(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM, sizeof(struct Pokenav5Struct_2)); + struct Pokenav_RegionMapGfx *state = AllocSubstruct(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM, sizeof(struct Pokenav_RegionMapGfx)); if (!state) return FALSE; @@ -252,20 +255,20 @@ bool32 OpenPokenavRegionMap(void) void CreateRegionMapLoopedTask(s32 index) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); state->loopTaskId = CreateLoopedTask(sRegionMapLoopTaskFuncs[index], 1); state->isTaskActiveCB = GetCurrentLoopedTaskActive; } bool32 IsRegionMapLoopedTaskActive(void) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); return state->isTaskActiveCB(); } void FreeRegionMapSubstruct2(void) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); FreeRegionMapIconResources(); FreeCityZoomViewGfx(); RemoveWindow(state->infoWindowId); @@ -285,7 +288,7 @@ static void VBlankCB_RegionMap(void) static bool32 GetCurrentLoopedTaskActive(void) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); return IsLoopedTaskActive(state->loopTaskId); } @@ -301,7 +304,7 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) { int menuGfxId; struct RegionMap *regionMap; - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); switch (taskState) { case 0: @@ -377,7 +380,7 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) static u32 LoopedTask_UpdateInfoAfterCursorMove(s32 taskState) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); switch (taskState) { case 0: @@ -420,7 +423,7 @@ static u32 LoopedTask_RegionMapZoomOut(s32 taskState) static u32 LoopedTask_RegionMapZoomIn(s32 taskState) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); switch (taskState) { case 0: @@ -492,14 +495,14 @@ static void LoadCityZoomViewGfx(void) static void FreeCityZoomViewGfx(void) { int i; - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); - FreeSpriteTilesByTag(6); - FreeSpritePaletteByTag(11); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + FreeSpriteTilesByTag(GFXTAG_CITY_ZOOM); + FreeSpritePaletteByTag(PALTAG_CITY_ZOOM); for (i = 0; i < (int)ARRAY_COUNT(state->cityZoomTextSprites); i++) DestroySprite(state->cityZoomTextSprites[i]); } -static void LoadPokenavRegionMapGfx(struct Pokenav5Struct_2 *state) +static void LoadPokenavRegionMapGfx(struct Pokenav_RegionMapGfx *state) { BgDmaFill(1, PIXEL_FILL(0), 0x40, 1); BgDmaFill(1, PIXEL_FILL(1), 0x41, 1); @@ -527,7 +530,7 @@ static bool32 TryFreeTempTileDataBuffers(void) return FreeTempTileDataBuffersIfPossible(); } -static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) +static void UpdateMapSecInfoWindow(struct Pokenav_RegionMapGfx *state) { struct RegionMap *regionMap = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP); switch (regionMap->mapSecType) @@ -565,7 +568,7 @@ static void UpdateMapSecInfoWindow(struct Pokenav5Struct_2 *state) } } -static bool32 IsDma3ManagerBusyWithBgCopy_(struct Pokenav5Struct_2 *state) +static bool32 IsDma3ManagerBusyWithBgCopy_(struct Pokenav_RegionMapGfx *state) { return IsDma3ManagerBusyWithBgCopy(); } @@ -621,7 +624,7 @@ static bool32 IsDecompressCityMapsActive(void) static u32 LoopedTask_DecompressCityMaps(s32 taskState) { - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); if (taskState < NUM_CITY_MAPS) { LZ77UnCompWram(sPokenavCityMaps[taskState].tilemap, state->cityZoomPics[taskState]); @@ -631,7 +634,7 @@ static u32 LoopedTask_DecompressCityMaps(s32 taskState) return LT_FINISH; } -static void DrawCityMap(struct Pokenav5Struct_2 *state, int mapSecId, int pos) +static void DrawCityMap(struct Pokenav_RegionMapGfx *state, int mapSecId, int pos) { int i; for (i = 0; i < NUM_CITY_MAPS && (sPokenavCityMaps[i].mapSecId != mapSecId || sPokenavCityMaps[i].index != pos); i++) @@ -644,7 +647,7 @@ static void DrawCityMap(struct Pokenav5Struct_2 *state, int mapSecId, int pos) CopyToBgTilemapBufferRect(1, state->cityZoomPics[i], 18, 6, 10, 10); } -static void PrintLandmarkNames(struct Pokenav5Struct_2 *state, int mapSecId, int pos) +static void PrintLandmarkNames(struct Pokenav_RegionMapGfx *state, int mapSecId, int pos) { int i = 0; while (1) @@ -664,7 +667,7 @@ static void CreateCityZoomTextSprites(void) int i; int y; struct Sprite *sprite; - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); // When not zoomed in the text is still created but its pushed off screen if (!IsRegionMapZoomed()) @@ -724,7 +727,7 @@ static void SpriteCB_CityZoomText(struct Sprite *sprite) static void UpdateCityZoomTextPosition(void) { int i; - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); int y = 132 - (GetBgY(1) >> 8); for (i = 0; i < (int)ARRAY_COUNT(state->cityZoomTextSprites); i++) state->cityZoomTextSprites[i]->y = y; @@ -733,7 +736,7 @@ static void UpdateCityZoomTextPosition(void) static void SetCityZoomTextInvisibility(bool32 invisible) { int i; - struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); + struct Pokenav_RegionMapGfx *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM); for (i = 0; i < (int)ARRAY_COUNT(state->cityZoomTextSprites); i++) state->cityZoomTextSprites[i]->invisible = invisible; } From f85de6eca57ee9497bf81f023bd7784b3115f2ce Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 5 Aug 2021 12:46:11 -0400 Subject: [PATCH 425/762] Start event macro comment updates --- asm/macros/event.inc | 343 +++++++++--------- data/event_scripts.s | 2 +- .../AbandonedShip_CaptainsOffice/scripts.inc | 2 +- .../AbandonedShip_Corridors_B1F/scripts.inc | 2 +- .../scripts.inc | 8 +- .../scripts.inc | 2 +- .../BattleFrontier_OutsideWest/scripts.inc | 2 +- .../FallarborTown_CozmosHouse/scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/FortreeCity/scripts.inc | 2 +- data/maps/JaggedPass/scripts.inc | 2 +- .../scripts.inc | 22 +- data/maps/LilycoveCity_Harbor/scripts.inc | 8 +- data/maps/MauvilleCity_BikeShop/scripts.inc | 4 +- data/maps/MauvilleCity_GameCorner/scripts.inc | 56 +-- data/maps/MauvilleCity_House2/scripts.inc | 2 +- data/maps/MtChimney/scripts.inc | 10 +- data/maps/NewMauville_Entrance/scripts.inc | 2 +- data/maps/PetalburgCity_Gym/scripts.inc | 4 +- data/maps/Route109_SeashoreHouse/scripts.inc | 10 +- data/maps/Route111/scripts.inc | 2 +- data/maps/Route113_GlassWorkshop/scripts.inc | 2 +- .../Route114_FossilManiacsTunnel/scripts.inc | 4 +- data/maps/Route116/scripts.inc | 2 +- .../Route121_SafariZoneEntrance/scripts.inc | 10 +- .../scripts.inc | 10 +- .../RustboroCity_DevonCorp_2F/scripts.inc | 8 +- .../ShoalCave_LowTideEntranceRoom/scripts.inc | 6 +- data/maps/SlateportCity_Harbor/scripts.inc | 2 +- .../scripts.inc | 8 +- .../SlateportCity_PokemonFanClub/scripts.inc | 10 +- data/scripts/berry_blender.inc | 12 +- data/scripts/berry_tree.inc | 4 +- data/scripts/cable_club.inc | 16 +- data/scripts/gift_aurora_ticket.inc | 4 +- data/scripts/gift_mystic_ticket.inc | 4 +- data/scripts/gift_old_sea_map.inc | 4 +- data/scripts/kecleon.inc | 4 +- data/scripts/lilycove_lady.inc | 2 +- data/scripts/obtain_item.inc | 77 ++-- data/scripts/roulette.inc | 4 +- data/scripts/std_msgbox.inc | 3 +- 42 files changed, 352 insertions(+), 333 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 27a43972589b..01a7889fecc5 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -56,20 +56,20 @@ STD_OBTAIN_DECORATION = 7 STD_REGISTER_MATCH_CALL = 8 - @ Calls the standard function at index function. + @ Executes the script in gStdScripts at index function. .macro callstd function:req .byte 0x09 .byte \function .endm - @ If the result of the last comparison matches condition (see Comparison operators), jumps to the standard function at index function. + @ 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 \condition .byte \function .endm - @ If the result of the last comparison matches condition (see Comparison operators), calls the standard function at index function. + @ 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 \condition @@ -120,6 +120,7 @@ .4byte \source .endm + @ TODO @ Not sure. Judging from XSE's description I think it takes the least-significant byte in bank source and writes it to destination. .macro setptrbyte source:req, destination:req .byte 0x13 @@ -233,7 +234,7 @@ .endm @ Generic compare macro which attempts to deduce argument types based on their values - @ Any values between 0x4000 to 0x40FF and 0x8000 to 0x8015 are considered event variable identifiers + @ Any values between VARS_START to VARS_END and SPECIAL_VARS_START to SPECIAL_VARS_END are considered event variable identifiers .macro compare var:req, arg:req .if ((\arg >= VARS_START && \arg <= VARS_END) || (\arg >= SPECIAL_VARS_START && \arg <= SPECIAL_VARS_END)) compare_var_to_var \var, \arg @@ -242,39 +243,33 @@ .endif .endm - @ Calls the native C function stored at `func`. + @ Calls the native C function stored at func. .macro callnative func:req .byte 0x23 .4byte \func .endm - @ Replaces the script with the function stored at `func`. Execution returns to the bytecode script when func returns TRUE. + @ 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 .4byte \func .endm - @ Calls a special function; that is, a function designed for use by scripts and listed in a table of pointers. + @ Calls a function listed in the table in data/specials.inc. .macro special function:req .byte 0x25 .2byte SPECIAL_\function .endm - @ Calls a special function. That function's output (if any) will be written to the variable you specify. + @ 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 .2byte \output .2byte SPECIAL_\function .endm - @ temporary solution - .macro specialvar_ output:req, functionId:req - .byte 0x26 - .2byte \output - .2byte \functionId - .endm - - @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific + @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific @ commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock @ state, the script will remain blocked indefinitely (essentially a hang). .macro waitstate @@ -287,46 +282,46 @@ .2byte \frames .endm - @ Sets a to 1. - .macro setflag a:req + @ Sets flag to TRUE. + .macro setflag flag:req .byte 0x29 - .2byte \a + .2byte \flag .endm - @ Sets a to 0. - .macro clearflag a:req + @ Sets flag to FALSE. + .macro clearflag flag:req .byte 0x2a - .2byte \a + .2byte \flag .endm - @ Compares a to 1. - .macro checkflag a:req + @ 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 - .2byte \a + .2byte \flag .endm - @ Initializes the RTC`s local time offset to the given hour and minute. In FireRed, this command is a nop. + @ Initializes the RTC`s local time offset to the given hour and minute. .macro initclock hour:req, minute:req .byte 0x2c .2byte \hour .2byte \minute .endm - @ Runs time based events. In FireRed, this command is a nop. + @ Runs time based events. .macro dotimebasedevents .byte 0x2d .endm - @ Sets the values of variables 0x8000, 0x8001, and 0x8002 to the current hour, minute, and second. In FRLG, - @ this command sets those variables to zero. + @ Sets the values of variables VAR_0x8000, VAR_0x8001, and VAR_0x8002 to the current hour, minute, and second. .macro gettime .byte 0x2e .endm - @ Plays the specified (sound_number) sound. Only one sound may play at a time, with newer ones interrupting older ones. - .macro playse sound_number:req + @ Plays the specified (song) sound. Only one sound may play at a time, with newer ones interrupting older ones. + .macro playse song:req .byte 0x2f - .2byte \sound_number + .2byte \song .endm @ Blocks script execution until the currently-playing sound (triggered by playse) finishes playing. @@ -335,9 +330,9 @@ .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 songNumber:req + .macro playfanfare song:req .byte 0x31 - .2byte \songNumber + .2byte \song .endm @ Blocks script execution until all currently-playing fanfares finish. @@ -345,18 +340,18 @@ .byte 0x32 .endm - @ Plays the specified (song_number) song. If save_song is TRUE, the - @ specified (song_number) will be saved as if savebgm was called with it. - .macro playbgm song_number:req, save_song:req + @ 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 - .2byte \song_number + .2byte \song .byte \save_song .endm - @ Saves the specified (song_number) song to be played later. - .macro savebgm song_number:req + @ Saves the specified song to be played later. + .macro savebgm song:req .byte 0x34 - .2byte \song_number + .2byte \song .endm @ Crossfades the currently-playing song into the map's default song. @@ -364,10 +359,10 @@ .byte 0x35 .endm - @ Crossfades the currently-playng song into the specified (song_number) song. - .macro fadenewbgm song_number:req + @ Crossfades the currently-playng song into the specified song. + .macro fadenewbgm song:req .byte 0x36 - .2byte \song_number + .2byte \song .endm @ Fades out the currently-playing song. @@ -382,32 +377,37 @@ .byte \speed .endm - @ Sends the player to Warp warp on Map bank.map. If the specified warp is 0xFF, - @ then the player will instead be sent to (X, Y) on the map. - .macro warp map:req, warp:req, X:req, Y:req + @ Warps the player to the specified map. + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warp map:req, warp:req, x=0, y=0 .byte 0x39 map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm - @ Clone of warp that does not play a sound effect. - .macro warpsilent map:req, warp:req, X:req, Y:req + @ Warps the player to the specified map without playing a sound effect. + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpsilent map:req, warp:req, x=0, y=0 .byte 0x3a map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm - @ Clone of warp that plays a door opening animation before stepping upwards into it. - .macro warpdoor map:req, warp:req, X:req, Y:req + @ Warps the player to the specified map and plays a door opening animation before stepping upwards into it. + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpdoor map:req, warp:req, x=0, y=0 .byte 0x3b map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Warps the player to another map using a hole animation. @@ -416,57 +416,62 @@ map \map .endm - @ Clone of warp that uses a teleport effect. It is apparently only used in R/S/E. - .macro warpteleport map:req, warp:req, X:req, Y:req + @ Warps the player to the specified map using a teleport effect. + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpteleport map:req, warp:req, x=0, y=0 .byte 0x3d map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Sets the warp destination to be used later. - .macro setwarp map:req, warp:req, X:req, Y:req + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro setwarp map:req, warp:req, x=0, y=0 .byte 0x3e map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm + @ TODO @ Sets the warp destination that a warp to Warp 127 on Map 127.127 will connect to. @ Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). - .macro setdynamicwarp map:req, warp:req, X:req, Y:req + .macro setdynamicwarp map:req, warp:req, x:req, y:req .byte 0x3f map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Sets the destination that diving or emerging from a dive will take the player to. - .macro setdivewarp map:req, warp:req, X:req, Y:req + .macro setdivewarp map:req, warp:req, x:req, y:req .byte 0x40 map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Sets the destination that falling into a hole will take the player to. - .macro setholewarp map:req, warp:req, X:req, Y:req + .macro setholewarp map:req, warp:req, x:req, y:req .byte 0x41 map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .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 + @ 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 - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Retrieves the number of Pokemon in the player's party, and stores that number in VAR_RESULT. @@ -482,7 +487,8 @@ .2byte \quantity .endm - @ Removes quantity of item index from the player's Bag. + @ Removes quantity of item index 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 index:req, quantity=1 .byte 0x45 .2byte \index @@ -491,7 +497,7 @@ @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets VAR_RESULT to @ TRUE if there is room, or FALSE is there is no room. - .macro checkitemspace index:req, quantity:req + .macro checkitemspace index:req, quantity=1 .byte 0x46 .2byte \index .2byte \quantity @@ -499,53 +505,53 @@ @ Checks if the player has quantity or more of item index 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 index:req, quantity:req + .macro checkitem index:req, quantity=1 .byte 0x47 .2byte \index .2byte \quantity .endm @ Checks which Bag pocket the specified item belongs in, and writes the pocket value (POCKET_*) to VAR_RESULT. - @ This script is used to show the name of the proper Bag pocket when the player receives an item via callstd (simplified to giveitem in XSE). + @ This is used to show the name of the proper Bag pocket when the player receives an item via callstd. .macro checkitemtype index:req .byte 0x48 .2byte \index .endm - @ Adds a quantity amount of item index to the player's PC. Both arguments can be variables. - .macro addpcitem index:req, quantity:req + @ Adds a quantity amount of item index to the player's PC. + .macro addpcitem index:req, quantity=1 .byte 0x49 .2byte \index .2byte \quantity .endm - @ Checks for quantity amount of item index in the player's PC. Both arguments can be variables. - .macro checkpcitem index:req, quantity:req + @ Checks for quantity amount of item index in the player's PC. + .macro checkpcitem index:req, quantity=1 .byte 0x4a .2byte \index .2byte \quantity .endm - @ Adds decoration to the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + @ Adds decoration to the player's PC. .macro adddecoration decoration:req .byte 0x4b .2byte \decoration .endm - @ Removes a decoration from the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + @ Removes a decoration from the player's PC. .macro removedecoration decoration:req .byte 0x4c .2byte \decoration .endm - @ Checks for decoration in the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + @ Checks for decoration in the player's PC. .macro checkdecor decoration:req .byte 0x4d .2byte \decoration .endm - @ Checks if the player has enough space in their PC to hold decoration. Sets VAR_RESULT to TRUE if there is room, or - @ FALSE is there is no room. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + @ Checks if the player has enough space in their PC to hold decoration. + @ Sets VAR_RESULT to TRUE if there is room, or FALSE is there is no room. .macro checkdecorspace decoration:req .byte 0x4e .2byte \decoration @@ -568,7 +574,7 @@ .endm @ Blocks script execution until the movements being applied to the specified (index) Object finish. - @ If the specified Object is 0x0000, then the command will block script execution until all Objects + @ If the specified Object is 0, then the command will block script execution until all Objects @ affected by applymovement finish their movements. 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. @@ -583,9 +589,8 @@ .endif .endm - @ Attempts to hide the specified (index) Object on the specified (map_group, map_num) map, - @ by setting its visibility flag if it has a valid one. If the Object does not have a valid - @ visibility flag, this command does nothing. + @ Attempts to despawn the specified (index) Object on the specified (map_group, map_num) map. + @ It also sets the object's visibility flag if it has one. @ If no map is specified, then the current map is used. .macro removeobject index:req, map .ifb \map @@ -598,8 +603,8 @@ .endif .endm - @ Unsets the specified (index) Object's visibility flag on the specified (map_group, map_num) map if it has a valid one. - @ If the Object does not have a valid visibility flag, this command does nothing. + @ Attempts to spawn the specified (index) Object the specified (map_group, map_num) map. + @ Note that unlike removeobject this does not modify the OObject's flag. @ If no map is specified, then the current map is used. .macro addobject index:req, map .ifb \map @@ -632,7 +637,7 @@ map \map .endm - @ If the script was called by an Object, then that Object will turn to face toward the metatile that the player is standing on. + @ If the script was called by an Object, then that Object will turn to face toward the player. .macro faceplayer .byte 0x5a .endm @@ -643,7 +648,7 @@ .byte \direction .endm - @ If the Trainer flag for Trainer index is not set, this command does absolutely nothing. + @ TODO .macro trainerbattle type:req, trainer:req, local_id:req, pointer1:req, pointer2, pointer3, pointer4 .byte 0x5c .byte \type @@ -996,15 +1001,15 @@ .2byte \slot .endm - @ Writes the name of the item at index item to the specified buffer. If the specified index is larger than - @ the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. + @ Writes the name of the item at index item to the specified buffer. If the specified index is >= ITEMS_COUNT, + @ then the name of ITEM_NONE ("????????") is buffered instead. .macro bufferitemname out:req, item:req .byte 0x80 .byte \out .2byte \item .endm - @ Writes the name of the decoration at index decoration to the specified buffer. In FireRed, this command is a nop. + @ Writes the name of the decoration at index 'decoration' to the specified buffer. .macro bufferdecorationname out:req, decoration:req .byte 0x81 .byte \out @@ -1052,7 +1057,7 @@ .4byte \products .endm - @ Apparent clone of pokemartdecoration. + @ Identical to pokemartdecoration, but with slight changes to the clerk dialogue. See uses of MART_TYPE_DECOR2. .macro pokemartdecoration2 products:req .byte 0x88 .4byte \products @@ -1064,7 +1069,7 @@ .2byte \word .endm - @ Sets a berry tree's specific berry and growth stage. In FireRed, this command is a nop. + @ Sets a berry tree's specific berry and growth stage. .macro setberrytree tree_id:req, berry:req, growth_stage:req .byte 0x8a .byte \tree_id @@ -1072,60 +1077,63 @@ .byte \growth_stage .endm - @ This allows you to choose a Pokemon to use in a contest. In FireRed, this command sets the byte at 0x03000EA8 to 0x01. + @ This allows you to choose a Pokemon to use in a contest .macro choosecontestmon .byte 0x8b .endm - @ Starts a contest. In FireRed, this command is a nop. + @ Starts a contest. .macro startcontest .byte 0x8c .endm - @ Shows the results of a contest. In FireRed, this command is a nop. + @ Shows the results of a contest. .macro showcontestresults .byte 0x8d .endm - @ Starts a contest over a link connection. In FireRed, this command is a nop. + @ Starts a contest over a link connection. .macro contestlinktransfer .byte 0x8e .endm - @ Stores a random integer between 0 and limit in VAR_RESULT. + @ Stores a random integer between 0 and limit (exclusive of limit) in VAR_RESULT. .macro random limit:req .byte 0x8f .2byte \limit .endm - @ If check is 0x00, this command adds value to the player's money. - .macro addmoney value:req, check:req + @ 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 .4byte \value - .byte \check + .byte \disable .endm - @ If check is 0x00, this command subtracts value from the player's money. - .macro removemoney value:req, check:req + @ 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 .4byte \value - .byte \check + .byte \disable .endm - @ If check is 0x00, this command will check if the player has money >= value; VAR_RESULT is set to TRUE if the player - @ has enough money, or FALSE if they do not. - .macro checkmoney value:req, check:req + @ 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 .4byte \value - .byte \check + .byte \disable .endm @ Spawns a secondary box showing how much money the player has. - .macro showmoneybox x:req, y:req, check:req + @ If 'disable' is set to anything but 0 then this command does nothing. + .macro showmoneybox x:req, y:req, disable=0 .byte 0x93 .byte \x .byte \y - .byte \check + .byte \disable .endm @ Hides the secondary box spawned by showmoney. Consumption of the x and y arguments was dummied out. @@ -1135,15 +1143,16 @@ .byte 0 @ \y .endm - @ Updates the secondary box spawned by showmoney. Consumes but does not use arguments. - .macro updatemoneybox x:req, y:req + @ Updates the secondary box spawned by showmoney. 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 \x - .byte \y - .byte 0 @ 1 = don't perform this command. Always 0 in vanilla. Why this is a thing is beyond me. + .byte 0 @ \x + .byte 0 @ \y + .byte \disable .endm - @ Gets the price reduction for the index given. In FireRed, this command is a nop. + @ Gets the price reduction for the index given. .macro getpricereduction index:req .byte 0x96 .2byte \index @@ -1177,7 +1186,7 @@ .4byte \pointer .endm - @ Executes the specified field move animation. + @ Executes the specified field effect animation. .macro dofieldeffect animation:req .byte 0x9c .2byte \animation @@ -1202,12 +1211,12 @@ .2byte \heallocation .endm - @ Checks the player's gender. If male, then MALE (0) is stored in VAR_RESULT. If female, then FEMALE (1) is stored in VAR_RESULT. + @ Checks the player's gender. Stores the result (MALE (0) or FEMALE (1)) in VAR_RESULT. .macro checkplayergender .byte 0xa0 .endm - @ Plays the specified (species) Pokemon's cry. You can use waitcry to block script execution until the sound finishes. + @ Plays the specified (species) Pokemon's cry. You can use waitmoncry to block script execution until the sound finishes. .macro playmoncry species:req, mode:req .byte 0xa1 .2byte \species @@ -1279,14 +1288,14 @@ .byte \direction .endm - @ Opens the door metatile at (X, Y) with an animation. + @ Opens the door metatile at (x, y) with an animation. .macro opendoor x:req, y:req .byte 0xac .2byte \x .2byte \y .endm - @ Closes the door metatile at (X, Y) with an animation. + @ Closes the door metatile at (x, y) with an animation. .macro closedoor x:req, y:req .byte 0xad .2byte \x @@ -1312,7 +1321,7 @@ .2byte \y .endm - @ In Emerald, this command consumes its parameters and does nothing. In FireRed, this command is a nop. + @ 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 \a @@ -1321,27 +1330,33 @@ .2byte \d .endm - @ In FireRed and Emerald, this command is a nop. + @ Does nothing. It is implemented but unused in Ruby/Sapphire. .macro showelevmenu .byte 0xb2 .endm + @ Gets the number of coins the player has and stores it in the variable 'out'. .macro checkcoins out:req .byte 0xb3 .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 .2byte \count .endm + @ Takes 'count' coins from the player. + @ 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 .2byte \count .endm - @ Prepares to start a wild battle against a species at Level level holding item. Running this command will not affect + @ 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:req .byte 0xb6 @@ -1419,14 +1434,16 @@ .byte \y .endm - @ Increases the value of the specified game stat by 1. The stat's value will not be allowed to exceed 0x00FFFFFF. + @ 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 \stat .endm @ Sets the destination that using an Escape Rope or Dig will take the player to. - .macro setescapewarp map:req, warp:req, x:req, y:req + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro setescapewarp map:req, warp:req, x=0, y=0 .byte 0xc4 map \map .byte \warp @@ -1446,42 +1463,33 @@ .2byte \box .endm - @ Sets the color of the text in standard message boxes. 0x00 produces blue (male) text, 0x01 produces red (female) text, - @ 0xFF resets the color to the default for the current OW's gender, and all other values produce black text. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro textcolor color:req .byte 0xc7 .byte \color .endm - @ The exact purpose of this command is unknown, but it is related to the blue help-text box that appears on the bottom - @ of the screen when the Main Menu is opened. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro loadhelp pointer:req .byte 0xc8 .4byte \pointer .endm - @ The exact purpose of this command is unknown, but it is related to the blue help-text box that appears on the bottom of - @ the screen when the Main Menu is opened. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro unloadhelp .byte 0xc9 .endm - @ After using this command, all standard message boxes will use the signpost frame. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro signmsg .byte 0xca .endm - @ Ends the effects of signmsg, returning message box frames to normal. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro normalmsg .byte 0xcb .endm - @ Compares the value of a hidden variable to a dword. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro comparehiddenvar a:req, value:req .byte 0xcc @@ -1489,26 +1497,25 @@ .4byte \value .endm - @ Sets the Pokemon in the specified slot of the player party's eventLegal bit. + @ Sets the eventLegal bit for the Pokemon in the specified slot of the player's party. .macro setmoneventlegal slot:req .byte 0xcd .2byte \slot .endm - @ Checks if the Pokemon in the specified slot of the player's party has its eventLegal bit set. If it isn't set, + @ Checks if the eventLegal 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 checkmoneventlegal slot:req .byte 0xce .2byte \slot .endm - @ Depending on factors I haven't managed to understand yet, this command may cause script execution to jump to the - @ offset specified by the pointer at 0x020375C0. - .macro gotoram + @ 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 gotowondercardscript .byte 0xcf .endm - @ Sets worldmapflag to 1. This allows the player to Fly to the corresponding map, if that map has a flightspot. @ Used only in FireRed/LeafGreen, does nothing in Emerald. .macro setworldmapflag worldmapflag:req .byte 0xd0 @@ -1516,7 +1523,9 @@ .endm @ Clone of warpteleport? It is apparently only used in FR/LG, and only with specials.[source] - .macro warpteleport2 map:req, warp:req, x:req, y:req + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpteleport2 map:req, warp:req, x=0, y=0 .byte 0xd1 map \map .byte \warp @@ -1545,7 +1554,7 @@ @ 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. In FireRed, this command is a nop. + @ the puzzle tiles start. .macro initrotatingtilepuzzle isTrickHouse:req .byte 0xd5 .2byte \isTrickHouse @@ -1556,10 +1565,12 @@ .byte 0xd6 .endm - .macro warpmossdeepgym map:req, warpId:req, x:req, y:req + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpmossdeepgym map:req, warp:req, x=0, y=0 .byte 0xd7 map \map - .byte \warpId + .byte \warp .2byte \x .2byte \y .endm @@ -1603,12 +1614,14 @@ .4byte \pointer .endm - .macro warpsootopolislegend map:req, byte:req, word1:req, word2:req + @ The player will warp to the coordinates of the given 'warp'. + @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. + .macro warpsootopolislegend map:req, warp:req, x=0, y=0 .byte 0xe0 map \map - .byte \byte - .2byte \word1 - .2byte \word2 + .byte \warp + .2byte \x + .2byte \y .endm .macro buffercontesttypestring out:req, word:req @@ -1617,10 +1630,9 @@ .2byte \word .endm - @ Writes the name of the specified (item) item to the specified buffer. If the specified item is a Berry (0x85 - 0xAE) or - @ Poke Ball (0x4) and if the quantity is 2 or more, the buffered string will be pluralized ("IES" or "S" appended). - @ If the specified item is the Enigma Berry, I have no idea what this command does (but testing showed no pluralization). - @ If the specified index is larger than the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. + @ Writes the name of the specified (item) item to the specified buffer. If 'item' is a Berry or ITEM_POKE_BALL + @ 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 out:req, item:req, quantity:req .byte 0xe2 .byte \out @@ -1753,6 +1765,7 @@ MSGBOX_YESNO = 5 MSGBOX_AUTOCLOSE = 6 MSGBOX_GETPOINTS = 9 + MSGBOX_POKENAV = 10 YES = 1 NO = 0 @@ -1762,6 +1775,10 @@ callstd \type .endm + @ Gives 'amount' of the specified 'item' to the player and prints a message with fanfare. + @ If the player doesn't have space for all the items then as many are added as possible, the + @ message indicates there is no room, and VAR_RESULT is set to FALSE. + @ Otherwise VAR_RESULT is set to TRUE, and the message indicates they have received the item(s). .macro giveitem item:req, amount=1 setorcopyvar VAR_0x8000, \item setorcopyvar VAR_0x8001, \amount diff --git a/data/event_scripts.s b/data/event_scripts.s index c33932a53085..5c7db08d6229 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -99,7 +99,7 @@ gStdScripts:: .4byte Std_ObtainDecoration @ STD_OBTAIN_DECORATION .4byte Std_RegisteredInMatchCall @ STD_REGISTER_MATCH_CALL .4byte Std_MsgboxGetPoints @ MSGBOX_GETPOINTS - .4byte Std_10 + .4byte Std_MsgboxPokenav @ MSGBOX_POKENAV gStdScripts_End:: .include "data/maps/PetalburgCity/scripts.inc" diff --git a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc index 99dfa7bd8048..6bb3352ab751 100644 --- a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc +++ b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc @@ -5,7 +5,7 @@ AbandonedShip_CaptainsOffice_EventScript_CaptSternAide:: lock faceplayer goto_if_set FLAG_EXCHANGED_SCANNER, AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus - checkitem ITEM_SCANNER, 1 + checkitem ITEM_SCANNER compare VAR_RESULT, TRUE goto_if_eq AbandonedShip_CaptainsOffice_EventScript_CanYouDeliverScanner goto_if_set FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER, AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc index dd70c9dd3291..a2fab1bb9305 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc @@ -27,7 +27,7 @@ AbandonedShip_Corridors_B1F_EventScript_TuberM:: AbandonedShip_Corridors_B1F_EventScript_StorageRoomDoor:: lockall goto_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_DoorIsUnlocked - checkitem ITEM_STORAGE_KEY, 1 + checkitem ITEM_STORAGE_KEY compare VAR_RESULT, FALSE goto_if_eq AbandonedShip_Corridors_B1F_EventScript_DoorIsLocked msgbox AbandonedShip_Corridors_B1F_Text_InsertedStorageKey, MSGBOX_DEFAULT diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc index 4ec63a7e103c..a30c448d3755 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc @@ -53,7 +53,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom6:: AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: lockall goto_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen - checkitem ITEM_ROOM_1_KEY, 1 + checkitem ITEM_ROOM_1_KEY compare VAR_RESULT, FALSE goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT @@ -68,7 +68,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: lockall goto_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen - checkitem ITEM_ROOM_2_KEY, 1 + checkitem ITEM_ROOM_2_KEY compare VAR_RESULT, FALSE goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT @@ -83,7 +83,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: lockall goto_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen - checkitem ITEM_ROOM_4_KEY, 1 + checkitem ITEM_ROOM_4_KEY compare VAR_RESULT, FALSE goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT @@ -98,7 +98,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door:: lockall goto_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen - checkitem ITEM_ROOM_6_KEY, 1 + checkitem ITEM_ROOM_6_KEY compare VAR_RESULT, FALSE goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT diff --git a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc index 360b8162cf46..bba92ebe40e7 100644 --- a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc +++ b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc @@ -56,7 +56,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor:: end BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem:: - checkitemspace VAR_0x8009, 1 + checkitemspace VAR_0x8009 compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_BagFull copyvar VAR_0x8004, VAR_0x8008 diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index d359ee89ad9f..635b27c2cbd4 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -20,7 +20,7 @@ BattleFrontier_OutsideWest_EventScript_FerryAttendant:: lock faceplayer msgbox BattleFrontier_OutsideWest_Text_MayISeeYourTicket, MSGBOX_DEFAULT - checkitem ITEM_SS_TICKET, 1 + checkitem ITEM_SS_TICKET compare VAR_RESULT, FALSE goto_if_eq BattleFrontier_OutsideWest_EventScript_NoSSTicket message BattleFrontier_OutsideWest_Text_WhereWouldYouLikeToGo diff --git a/data/maps/FallarborTown_CozmosHouse/scripts.inc b/data/maps/FallarborTown_CozmosHouse/scripts.inc index 43a9dca7f304..3e5d02f2d3e6 100644 --- a/data/maps/FallarborTown_CozmosHouse/scripts.inc +++ b/data/maps/FallarborTown_CozmosHouse/scripts.inc @@ -5,7 +5,7 @@ FallarborTown_CozmosHouse_EventScript_ProfCozmo:: lock faceplayer goto_if_set FLAG_RECEIVED_TM27, FallarborTown_CozmosHouse_EventScript_GaveMeteorite - checkitem ITEM_METEORITE, 1 + checkitem ITEM_METEORITE compare VAR_RESULT, TRUE goto_if_eq FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite msgbox FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow, MSGBOX_DEFAULT diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc index 1bd54b4b8df6..945d6164679a 100644 --- a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc +++ b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc @@ -14,7 +14,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_MoveRelearner:: end FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove:: - checkitem ITEM_HEART_SCALE, 1 + checkitem ITEM_HEART_SCALE compare VAR_RESULT, FALSE goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale msgbox FallarborTown_MoveRelearnersHouse_Text_ThatsAHeartScaleWantMeToTeachMove, MSGBOX_YESNO diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc index 6371d5b0cd27..a9fe64ade376 100644 --- a/data/maps/FortreeCity/scripts.inc +++ b/data/maps/FortreeCity/scripts.inc @@ -55,7 +55,7 @@ FortreeCity_EventScript_GymSign:: FortreeCity_EventScript_Kecleon:: lock faceplayer - checkitem ITEM_DEVON_SCOPE, 1 + checkitem ITEM_DEVON_SCOPE compare VAR_RESULT, TRUE goto_if_eq FortreeCity_EventScript_AskUseDevonScope msgbox FortreeCity_Text_SomethingUnseeable, MSGBOX_DEFAULT diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc index 754ee00cf5bb..3ab89691351a 100644 --- a/data/maps/JaggedPass/scripts.inc +++ b/data/maps/JaggedPass/scripts.inc @@ -13,7 +13,7 @@ JaggedPass_OnResume: end JaggedPass_EventScript_CheckHasMagmaEmblem:: - checkitem ITEM_MAGMA_EMBLEM, 1 + checkitem ITEM_MAGMA_EMBLEM compare VAR_RESULT, TRUE goto_if_eq JaggedPass_EventScript_SetReadyToOpenHideout return diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index e91ca7745c90..65f7adc67ec7 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -71,7 +71,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_VendingMachine:: lockall message LilycoveCity_DepartmentStoreRooftop_Text_WhichDrinkWouldYouLike waitmessage - showmoneybox 0, 0, 0 + showmoneybox 0, 0 goto LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseDrink end @@ -102,27 +102,27 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_Lemonade:: end LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater:: - checkmoney 200, 0 + checkmoney 200 return LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneySodaPop:: - checkmoney 300, 0 + checkmoney 300 return LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade:: - checkmoney 350, 0 + checkmoney 350 return LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyFreshWater:: - removemoney 200, 0 + removemoney 200 return LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop:: - removemoney 300, 0 + removemoney 300 return LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade:: - removemoney 350, 0 + removemoney 350 return LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: @@ -134,7 +134,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NotEnoughMoneyForDrink - checkitemspace VAR_TEMP_0, 1 + checkitemspace VAR_TEMP_0 compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink compare VAR_TEMP_1, 0 @@ -143,7 +143,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop compare VAR_TEMP_1, 2 call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade - updatemoneybox 0, 0 + updatemoneybox bufferitemname 0, VAR_TEMP_0 playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_CanOfDrinkDroppedDown, MSGBOX_DEFAULT @@ -154,7 +154,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: random 64 @ 1/64 chance of an additional drink dropping compare VAR_RESULT, 0 goto_if_ne LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink - checkitemspace VAR_TEMP_0, 1 + checkitemspace VAR_TEMP_0 compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink playse SE_VEND @@ -166,7 +166,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: random 64 @ 1/64 * the prev 1/64 chance of a third additional drink dropping, ~ 0.02% chance compare VAR_RESULT, 0 goto_if_ne LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink - checkitemspace VAR_TEMP_0, 1 + checkitemspace VAR_TEMP_0 compare VAR_RESULT, 0 goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink playse SE_VEND diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index 216a6ff03366..a22e8302934f 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -114,7 +114,7 @@ LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: LilycoveCity_Harbor_EventScript_GetEonTicketState:: setvar VAR_TEMP_E, 0 goto_if_unset FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, Common_EventScript_NopReturn - checkitem ITEM_EON_TICKET, 1 + checkitem ITEM_EON_TICKET compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_NopReturn setvar VAR_TEMP_E, 1 @@ -125,7 +125,7 @@ LilycoveCity_Harbor_EventScript_GetEonTicketState:: LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: setvar VAR_TEMP_D, 0 goto_if_unset FLAG_ENABLE_SHIP_BIRTH_ISLAND, Common_EventScript_NopReturn - checkitem ITEM_AURORA_TICKET, 1 + checkitem ITEM_AURORA_TICKET compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_NopReturn setvar VAR_TEMP_D, 1 @@ -136,7 +136,7 @@ LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: setvar VAR_TEMP_C, 0 goto_if_unset FLAG_ENABLE_SHIP_FARAWAY_ISLAND, Common_EventScript_NopReturn - checkitem ITEM_OLD_SEA_MAP, 1 + checkitem ITEM_OLD_SEA_MAP compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_NopReturn setvar VAR_TEMP_C, 1 @@ -147,7 +147,7 @@ LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: LilycoveCity_Harbor_EventScript_GetMysticTicketState:: setvar VAR_TEMP_9, 0 goto_if_unset FLAG_ENABLE_SHIP_NAVEL_ROCK, Common_EventScript_NopReturn - checkitem ITEM_MYSTIC_TICKET, 1 + checkitem ITEM_MYSTIC_TICKET compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_NopReturn setvar VAR_TEMP_9, 1 diff --git a/data/maps/MauvilleCity_BikeShop/scripts.inc b/data/maps/MauvilleCity_BikeShop/scripts.inc index 45efbe8f3b93..5ce43c1baa46 100644 --- a/data/maps/MauvilleCity_BikeShop/scripts.inc +++ b/data/maps/MauvilleCity_BikeShop/scripts.inc @@ -71,10 +71,10 @@ MauvilleCity_BikeShop_EventScript_AskSwitchBikes:: @ If the player does not have a bike on them Rydel assumes its stored in the PC MauvilleCity_BikeShop_EventScript_SwitchBikes:: msgbox MauvilleCity_BikeShop_Text_IllSwitchBikes, MSGBOX_DEFAULT - checkitem ITEM_ACRO_BIKE, 1 + checkitem ITEM_ACRO_BIKE compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchAcroForMach - checkitem ITEM_MACH_BIKE, 1 + checkitem ITEM_MACH_BIKE compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchMachForAcro msgbox MauvilleCity_BikeShop_Text_OhYourBikeIsInPC, MSGBOX_DEFAULT diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc index 896dfa680750..ab1c248e0882 100644 --- a/data/maps/MauvilleCity_GameCorner/scripts.inc +++ b/data/maps/MauvilleCity_GameCorner/scripts.inc @@ -16,12 +16,12 @@ MauvilleCity_GameCorner_EventScript_CoinsClerk:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ThisIsMauvilleGameCorner, MSGBOX_DEFAULT - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NeedCoinCase message MauvilleCity_GameCorner_Text_WereYouLookingForCoins waitmessage - showmoneybox 0, 0, 0 + showmoneybox 0, 0 showcoinsbox 1, 6 goto MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault50 @@ -46,12 +46,12 @@ MauvilleCity_GameCorner_EventScript_Buy50Coins:: checkcoins VAR_TEMP_1 compare VAR_TEMP_1, (MAX_COINS + 1 - 50) goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins - checkmoney COINS_PRICE_50, 0 + checkmoney COINS_PRICE_50 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NotEnoughMoney addcoins 50 - removemoney COINS_PRICE_50, 0 - updatemoneybox 0, 0 + removemoney COINS_PRICE_50 + updatemoneybox updatecoinsbox 1, 6 playse SE_SHOP msgbox MauvilleCity_GameCorner_Text_ThankYouHereAreYourCoins, MSGBOX_DEFAULT @@ -64,12 +64,12 @@ MauvilleCity_GameCorner_EventScript_Buy500Coins:: checkcoins VAR_TEMP_1 compare VAR_TEMP_1, (MAX_COINS + 1 - 500) goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins - checkmoney COINS_PRICE_500, 0 + checkmoney COINS_PRICE_500 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NotEnoughMoney addcoins 500 - removemoney COINS_PRICE_500, 0 - updatemoneybox 0, 0 + removemoney COINS_PRICE_500 + updatemoneybox updatecoinsbox 1, 6 playse SE_SHOP msgbox MauvilleCity_GameCorner_Text_ThankYouHereAreYourCoins, MSGBOX_DEFAULT @@ -108,7 +108,7 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerDolls:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_GameCorner_EventScript_ChooseDollPrizeMessage release @@ -229,7 +229,7 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerTMs:: lock faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_GameCorner_EventScript_ChooseTMPrizeMessage release @@ -306,7 +306,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM32:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM32_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM - checkitemspace ITEM_TM32, 1 + checkitemspace ITEM_TM32 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM32_COINS @@ -321,7 +321,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM29:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM29_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM - checkitemspace ITEM_TM29, 1 + checkitemspace ITEM_TM29 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM29_COINS @@ -336,7 +336,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM35:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM35_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM - checkitemspace ITEM_TM35, 1 + checkitemspace ITEM_TM35 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM35_COINS @@ -351,7 +351,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM24:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM24_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM - checkitemspace ITEM_TM24, 1 + checkitemspace ITEM_TM24 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM24_COINS @@ -366,7 +366,7 @@ MauvilleCity_GameCorner_EventScript_BuyTM13:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, TM13_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM - checkitemspace ITEM_TM13, 1 + checkitemspace ITEM_TM13 compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM13_COINS @@ -466,7 +466,7 @@ MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll:: MauvilleCity_GameCorner_EventScript_PokefanM:: lock faceplayer - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_GameCorner_EventScript_TryGive20Coins msgbox MauvilleCity_GameCorner_Text_NeedCoinCaseGoNextDoor, MSGBOX_DEFAULT @@ -534,7 +534,7 @@ MauvilleCity_GameCorner_EventScript_Woman:: MauvilleCity_GameCorner_EventScript_SlotMachine0:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 0 @@ -545,7 +545,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine0:: MauvilleCity_GameCorner_EventScript_SlotMachine1:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 1 @@ -556,7 +556,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine1:: MauvilleCity_GameCorner_EventScript_SlotMachine2:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 2 @@ -567,7 +567,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine2:: MauvilleCity_GameCorner_EventScript_SlotMachine3:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 3 @@ -578,7 +578,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine3:: MauvilleCity_GameCorner_EventScript_SlotMachine4:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 4 @@ -589,7 +589,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine4:: MauvilleCity_GameCorner_EventScript_SlotMachine5:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 5 @@ -600,7 +600,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine5:: MauvilleCity_GameCorner_EventScript_SlotMachine6:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 6 @@ -611,7 +611,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine6:: MauvilleCity_GameCorner_EventScript_SlotMachine7:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 7 @@ -622,7 +622,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine7:: MauvilleCity_GameCorner_EventScript_SlotMachine8:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 8 @@ -633,7 +633,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine8:: MauvilleCity_GameCorner_EventScript_SlotMachine9:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 9 @@ -644,7 +644,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine9:: MauvilleCity_GameCorner_EventScript_SlotMachine10:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 10 @@ -655,7 +655,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine10:: MauvilleCity_GameCorner_EventScript_SlotMachine11:: lockall - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 11 diff --git a/data/maps/MauvilleCity_House2/scripts.inc b/data/maps/MauvilleCity_House2/scripts.inc index 178b79f9b4ed..441a4f1658c9 100644 --- a/data/maps/MauvilleCity_House2/scripts.inc +++ b/data/maps/MauvilleCity_House2/scripts.inc @@ -6,7 +6,7 @@ MauvilleCity_House2_EventScript_Woman:: faceplayer goto_if_set FLAG_RECEIVED_COIN_CASE, MauvilleCity_House2_EventScript_ReceivedCoinCase msgbox MauvilleCity_House2_Text_BuyHarborMailAtSlateport, MSGBOX_DEFAULT - checkitem ITEM_HARBOR_MAIL, 1 + checkitem ITEM_HARBOR_MAIL compare VAR_RESULT, TRUE goto_if_eq MauvilleCity_House2_EventScript_AskToTradeForHarborMail release diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index 320e2dc19464..7081e54de61a 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -107,15 +107,15 @@ MtChimney_EventScript_ArchieExitNorth:: MtChimney_EventScript_LavaCookieLady:: lock faceplayer - showmoneybox 0, 0, 0 + showmoneybox 0, 0 msgbox MtChimney_Text_LavaCookiesJust200, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq MtChimney_EventScript_DeclineLavaCookie - checkmoney 200, 0 + checkmoney 200 compare VAR_RESULT, FALSE goto_if_eq MtChimney_EventScript_NotEnoughMoney msgbox MtChimney_Text_ThankYouDear, MSGBOX_DEFAULT - checkitemspace ITEM_LAVA_COOKIE, 1 + checkitemspace ITEM_LAVA_COOKIE compare VAR_RESULT, TRUE call_if_eq MtChimney_EventScript_RemoveMoney giveitem ITEM_LAVA_COOKIE @@ -132,8 +132,8 @@ MtChimney_EventScript_BagIsFull:: end MtChimney_EventScript_RemoveMoney:: - removemoney 200, 0 - updatemoneybox 0, 0 + removemoney 200 + updatemoneybox return MtChimney_EventScript_DeclineLavaCookie:: diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc index 0a98d4ba6252..1304db33745a 100644 --- a/data/maps/NewMauville_Entrance/scripts.inc +++ b/data/maps/NewMauville_Entrance/scripts.inc @@ -26,7 +26,7 @@ NewMauville_Entrance_EventScript_Door:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 msgbox NewMauville_Entrance_Text_DoorIsLocked, MSGBOX_DEFAULT - checkitem ITEM_BASEMENT_KEY, 1 + checkitem ITEM_BASEMENT_KEY compare VAR_RESULT, FALSE goto_if_eq NewMauville_Entrance_EventScript_DontOpenDoor msgbox NewMauville_Entrance_Text_UseBasementKey, MSGBOX_YESNO diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index cae696a50a39..bbb329462781 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -383,10 +383,10 @@ PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry:: specialvar VAR_RESULT, IsEnigmaBerryValid compare VAR_RESULT, FALSE goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry - checkitem ITEM_ENIGMA_BERRY, 1 + checkitem ITEM_ENIGMA_BERRY compare VAR_RESULT, TRUE goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry - checkpcitem ITEM_ENIGMA_BERRY, 1 + checkpcitem ITEM_ENIGMA_BERRY compare VAR_RESULT, TRUE goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry compare VAR_ENIGMA_BERRY_AVAILABLE, 0 diff --git a/data/maps/Route109_SeashoreHouse/scripts.inc b/data/maps/Route109_SeashoreHouse/scripts.inc index c4cfd1576e5e..d1a892b7c078 100644 --- a/data/maps/Route109_SeashoreHouse/scripts.inc +++ b/data/maps/Route109_SeashoreHouse/scripts.inc @@ -37,7 +37,7 @@ Route109_SeashoreHouse_EventScript_BagFull:: end Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: - showmoneybox 0, 0, 0 + showmoneybox 0, 0 msgbox Route109_SeashoreHouse_Text_WantToBuySodaPop, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route109_SeashoreHouse_EventScript_BuySodaPop @@ -47,15 +47,15 @@ Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: end Route109_SeashoreHouse_EventScript_BuySodaPop:: - checkmoney 300, 0 + checkmoney 300 compare VAR_RESULT, FALSE goto_if_eq Route109_SeashoreHouse_EventScript_NotEnoughMoney - checkitemspace ITEM_SODA_POP, 1 + checkitemspace ITEM_SODA_POP compare VAR_RESULT, FALSE goto_if_eq Route109_SeashoreHouse_EventScript_NotEnoughSpace msgbox Route109_SeashoreHouse_Text_HereYouGo, MSGBOX_DEFAULT - removemoney 300, 0 - updatemoneybox 0, 0 + removemoney 300 + updatemoneybox giveitem ITEM_SODA_POP hidemoneybox release diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 72e30958a5df..8b0ee51c4291 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -210,7 +210,7 @@ Route111_EventScript_ViciousSandstormTriggerRight:: end Route111_EventScript_ViciousSandstormTrigger:: - checkitem ITEM_GO_GOGGLES, 1 + checkitem ITEM_GO_GOGGLES compare VAR_RESULT, FALSE goto_if_eq Route111_EventScript_PreventRouteAccess setvar VAR_TEMP_3, 1 diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc index bad739806f5c..31fad1ceaa22 100644 --- a/data/maps/Route113_GlassWorkshop/scripts.inc +++ b/data/maps/Route113_GlassWorkshop/scripts.inc @@ -43,7 +43,7 @@ Route113_GlassWorkshop_EventScript_ExplainSootSack:: end Route113_GlassWorkshop_EventScript_CheckCollectedAsh:: - checkitem ITEM_SOOT_SACK, 1 + checkitem ITEM_SOOT_SACK compare VAR_RESULT, FALSE goto_if_eq Route113_GlassWorkshop_EventScript_SootSackNotInBag msgbox Route113_GlassWorkshop_Text_LetsSeeCollectedAshes, MSGBOX_DEFAULT diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc index 3a6dd785cc47..a9bfc39b85ac 100644 --- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc +++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc @@ -37,10 +37,10 @@ Route114_FossilManiacsTunnel_EventScript_FossilManiac:: lock faceplayer goto_if_set FLAG_RECEIVED_REVIVED_FOSSIL_MON, Route114_FossilManiacsTunnel_EventScript_PlayerRevivedFossil - checkitem ITEM_ROOT_FOSSIL, 1 + checkitem ITEM_ROOT_FOSSIL compare VAR_RESULT, TRUE goto_if_eq Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil - checkitem ITEM_CLAW_FOSSIL, 1 + checkitem ITEM_CLAW_FOSSIL compare VAR_RESULT, TRUE goto_if_eq Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil msgbox Route114_FossilManiacsTunnel_Text_LookInDesertForFossils, MSGBOX_DEFAULT diff --git a/data/maps/Route116/scripts.inc b/data/maps/Route116/scripts.inc index 0ef6a05e1aa5..7657e2061ed6 100644 --- a/data/maps/Route116/scripts.inc +++ b/data/maps/Route116/scripts.inc @@ -165,7 +165,7 @@ Route116_EventScript_BrineyTrigger:: Route116_EventScript_GlassesMan:: lock faceplayer - checkitem ITEM_BLACK_GLASSES, 1 + checkitem ITEM_BLACK_GLASSES compare VAR_RESULT, TRUE goto_if_eq Route116_EventScript_PlayerHasGlasses specialvar VAR_RESULT, FoundBlackGlasses diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc index 8bd5dac04f4d..1a0102cf4ea3 100644 --- a/data/maps/Route121_SafariZoneEntrance/scripts.inc +++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc @@ -48,7 +48,7 @@ Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: lockall applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 - showmoneybox 0, 0, 0 + showmoneybox 0, 0 msgbox Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone @@ -57,17 +57,17 @@ Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: end Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, 0 goto_if_eq Route121_SafariZoneEntrance_EventScript_NoPokeblockCase call Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon - checkmoney 500, 0 + checkmoney 500 compare VAR_RESULT, 0 goto_if_eq Route121_SafariZoneEntrance_EventScript_NotEnoughMoney playse SE_SHOP msgbox Route121_SafariZoneEntrance_Text_ThatWillBe500Please, MSGBOX_DEFAULT - removemoney 500, 0 - updatemoneybox 0, 0 + removemoney 500 + updatemoneybox msgbox Route121_SafariZoneEntrance_Text_HereAreYourSafariBalls, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_ITEM message Route121_SafariZoneEntrance_Text_Received30SafariBalls diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc index 63bee6ed5b21..54304e03e38a 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc +++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc @@ -29,16 +29,16 @@ Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard:: Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards:: setvar VAR_TEMP_1, 0 - checkitem ITEM_RED_SHARD, 1 + checkitem ITEM_RED_SHARD compare VAR_RESULT, TRUE call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard - checkitem ITEM_YELLOW_SHARD, 1 + checkitem ITEM_YELLOW_SHARD compare VAR_RESULT, TRUE call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasYellowShard - checkitem ITEM_BLUE_SHARD, 1 + checkitem ITEM_BLUE_SHARD compare VAR_RESULT, TRUE call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasBlueShard - checkitem ITEM_GREEN_SHARD, 1 + checkitem ITEM_GREEN_SHARD compare VAR_RESULT, TRUE call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard return @@ -248,7 +248,7 @@ Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: msgbox Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade - checkitemspace VAR_0x8009, 1 + checkitemspace VAR_0x8009 compare VAR_RESULT, TRUE goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_TradeShard checkitem VAR_0x8008, 2 diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index 326cd946e692..7db701c40eb6 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -69,10 +69,10 @@ RustboroCity_DevonCorp_2F_EventScript_FossilScientist:: compare VAR_FOSSIL_RESURRECTION_STATE, 1 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_StillRegenerating msgbox RustboroCity_DevonCorp_2F_Text_DevelopDeviceToResurrectFossils, MSGBOX_DEFAULT - checkitem ITEM_ROOT_FOSSIL, 1 + checkitem ITEM_ROOT_FOSSIL compare VAR_RESULT, TRUE goto_if_eq RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil - checkitem ITEM_CLAW_FOSSIL, 1 + checkitem ITEM_CLAW_FOSSIL compare VAR_RESULT, TRUE goto_if_eq RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil release @@ -89,7 +89,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: msgbox RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil - checkitem ITEM_CLAW_FOSSIL, 1 + checkitem ITEM_CLAW_FOSSIL compare VAR_RESULT, TRUE goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ChooseFossil goto RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil @@ -114,7 +114,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: msgbox RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil - checkitem ITEM_ROOT_FOSSIL, 1 + checkitem ITEM_ROOT_FOSSIL compare VAR_RESULT, TRUE goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ChooseFossil goto RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc index a1206dfb47c2..74f24c8598af 100644 --- a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc @@ -29,7 +29,7 @@ ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: msgbox ShoalCave_LowTideEntranceRoom_Text_WouldYouLikeShellBell, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_DeclineShellBell - checkitemspace ITEM_SHELL_BELL, 1 + checkitemspace ITEM_SHELL_BELL compare VAR_RESULT, FALSE call_if_eq ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed compare VAR_RESULT, 2 @@ -68,10 +68,10 @@ ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell:: end ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells:: - checkitem ITEM_SHOAL_SALT, 1 + checkitem ITEM_SHOAL_SALT compare VAR_RESULT, TRUE goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell - checkitem ITEM_SHOAL_SHELL, 1 + checkitem ITEM_SHOAL_SHELL compare VAR_RESULT, TRUE goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell msgbox ShoalCave_LowTideEntranceRoom_Text_AreYouPlanningOnGoingInThere, MSGBOX_DEFAULT diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index 58e5978cf0cb..0cc07b73f310 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -332,7 +332,7 @@ SlateportCity_Harbor_EventScript_NeedDive:: SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment:: compare VAR_TEMP_1, 1 goto_if_eq SlateportCity_Harbor_EventScript_TradedScanner - checkitem ITEM_SCANNER, 1 + checkitem ITEM_SCANNER compare VAR_RESULT, TRUE goto_if_eq SlateportCity_Harbor_EventScript_AskToTradeScanner goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_FerryFinished diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc index cfe547de56d9..901b05e2a51d 100644 --- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc @@ -22,7 +22,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeRight:: end SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: - showmoneybox 0, 0, 0 + showmoneybox 0, 0 msgbox SlateportCity_OceanicMuseum_1F_Text_WouldYouLikeToEnter, MSGBOX_YESNO compare VAR_RESULT, YES goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee @@ -34,12 +34,12 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: end SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee:: - checkmoney 50, 0 + checkmoney 50 compare VAR_RESULT, FALSE goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney playse SE_SHOP - removemoney 50, 0 - updatemoneybox 0, 0 + removemoney 50 + updatemoneybox msgbox SlateportCity_OceanicMuseum_1F_Text_PleaseEnjoyYourself, MSGBOX_DEFAULT setvar VAR_SLATEPORT_MUSEUM_1F_STATE, 1 hidemoneybox diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index 96e1a7633dec..b974ebed17d8 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -72,7 +72,7 @@ SlateportCity_PokemonFanClub_EventScript_NoHighConditions:: end SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: - checkitemspace ITEM_RED_SCARF, 1 + checkitemspace ITEM_RED_SCARF compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT @@ -83,7 +83,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: end SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: - checkitemspace ITEM_BLUE_SCARF, 1 + checkitemspace ITEM_BLUE_SCARF compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT @@ -94,7 +94,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: end SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: - checkitemspace ITEM_PINK_SCARF, 1 + checkitemspace ITEM_PINK_SCARF compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT @@ -105,7 +105,7 @@ SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: end SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: - checkitemspace ITEM_GREEN_SCARF, 1 + checkitemspace ITEM_GREEN_SCARF compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT @@ -116,7 +116,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: end SlateportCity_PokemonFanClub_EventScript_GiveYellowScarf:: - checkitemspace ITEM_YELLOW_SCARF, 1 + checkitemspace ITEM_YELLOW_SCARF compare VAR_RESULT, FALSE goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index 1d833f470c71..71f3a1276023 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -296,7 +296,7 @@ BerryBlender_EventScript_ExplainBlending1: end BerryBlender_EventScript_TryUseBerryBlender1: - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender1NoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot @@ -370,7 +370,7 @@ BerryBlender_EventScript_TryUseBerryBlender2: specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender2NoBerries - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender2NoCase msgbox BerryBlender_Text_Okay, MSGBOX_DEFAULT @@ -436,7 +436,7 @@ BerryBlender_EventScript_TryUseBlender3: specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender3NoBerries - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_Blender3NoCase msgbox BerryBlender_Text_OhDear, MSGBOX_DEFAULT @@ -473,7 +473,7 @@ BerryBlender_EventScript_BlendMasterNoBerries: end BerryBlender_EventScript_TryBlendWithBlendMaster: - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_BlendMasterNoCase specialvar VAR_RESULT, PlayerHasBerries @@ -542,7 +542,7 @@ BerryBlender_EventScript_ExpertMPlayerHasBerries: end BerryBlender_EventScript_ExpertMNoBerries: - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_ExpertMNoSpareBerries specialvar VAR_RESULT, GetFirstFreePokeblockSlot @@ -575,7 +575,7 @@ BerryBlender_EventScript_BerryBlenderLink:: specialvar VAR_RESULT, PlayerHasBerries compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_LinkBlenderNoBerries - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq BerryBlender_EventScript_LinkBlenderNoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index e415d0c657da..9602d3b77fb0 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -154,8 +154,8 @@ BerryTree_EventScript_ItemUsePlantBerry:: end BerryTree_EventScript_WantToWater:: - checkitem ITEM_WAILMER_PAIL, 1 - compare VAR_RESULT, 0 + checkitem ITEM_WAILMER_PAIL + compare VAR_RESULT, FALSE goto_if_eq BerryTree_EventScript_DontWater special ObjectEventInteractionGetBerryName msgbox BerryTree_Text_WantToWater, MSGBOX_YESNO diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index d6ea1a707e76..ea9a2b4e3fd9 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -24,22 +24,20 @@ CableClub_EventScript_MysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket compare VAR_RESULT, TRUE goto_if_eq CableClub_EventScript_DistributeEonTicket - goto CableClub_EventScript_AlreadyGotEonTicket + goto CableClub_EventScript_TryWonderCardScript end -CableClub_EventScript_AlreadyGotEonTicket:: - gotoram - -@ Unused? +CableClub_EventScript_TryWonderCardScript:: + gotowondercardscript CableClub_EventScript_MysteryGiftThankYou:: msgbox gText_ThankYouForAccessingMysteryGift, MSGBOX_NPC end CableClub_EventScript_DistributeEonTicket:: - checkitem ITEM_EON_TICKET, 1 + checkitem ITEM_EON_TICKET compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_AlreadyGotEonTicket - goto_if_set FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, CableClub_EventScript_AlreadyGotEonTicket + goto_if_eq CableClub_EventScript_TryWonderCardScript + goto_if_set FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, CableClub_EventScript_TryWonderCardScript msgbox MysteryGift_Text_TheresATicketForYou, MSGBOX_DEFAULT giveitem ITEM_EON_TICKET setflag FLAG_ENABLE_SHIP_SOUTHERN_ISLAND @@ -1035,7 +1033,7 @@ CableClub_EventScript_DirectCornerAttendant:: end CableClub_EventScript_DirectCornerSelectService:: - checkitem ITEM_POWDER_JAR, 1 + checkitem ITEM_POWDER_JAR compare VAR_RESULT, FALSE goto_if_eq CableClub_EventScript_DirectCornerNoBerry goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_DirectCornerSelectAllServices diff --git a/data/scripts/gift_aurora_ticket.inc b/data/scripts/gift_aurora_ticket.inc index c9250b9f93eb..760bea93937b 100644 --- a/data/scripts/gift_aurora_ticket.inc +++ b/data/scripts/gift_aurora_ticket.inc @@ -4,13 +4,13 @@ MysteryGiftScript_AuroraTicket:: faceplayer vgoto_if_set FLAG_RECEIVED_AURORA_TICKET, AuroraTicket_Obtained vgoto_if_set FLAG_BATTLED_DEOXYS, AuroraTicket_Obtained - checkitem ITEM_AURORA_TICKET, 1 + checkitem ITEM_AURORA_TICKET compare VAR_RESULT, TRUE vgoto_if_eq AuroraTicket_Obtained vmessage sText_AuroraTicketForYou waitmessage waitbuttonpress - checkitemspace ITEM_AURORA_TICKET, 1 + checkitemspace ITEM_AURORA_TICKET compare VAR_RESULT, FALSE vgoto_if_eq AuroraTicket_NoBagSpace giveitem ITEM_AURORA_TICKET diff --git a/data/scripts/gift_mystic_ticket.inc b/data/scripts/gift_mystic_ticket.inc index 29c325f72d41..1a28dd4ce0fb 100644 --- a/data/scripts/gift_mystic_ticket.inc +++ b/data/scripts/gift_mystic_ticket.inc @@ -5,13 +5,13 @@ MysteryGiftScript_MysticTicket:: vgoto_if_set FLAG_RECEIVED_MYSTIC_TICKET, MysticTicket_Obtained vgoto_if_set FLAG_CAUGHT_LUGIA, MysticTicket_Obtained vgoto_if_set FLAG_CAUGHT_HO_OH, MysticTicket_Obtained - checkitem ITEM_MYSTIC_TICKET, 1 + checkitem ITEM_MYSTIC_TICKET compare VAR_RESULT, TRUE vgoto_if_eq MysticTicket_Obtained vmessage sText_MysticTicketForYou waitmessage waitbuttonpress - checkitemspace ITEM_MYSTIC_TICKET, 1 + checkitemspace ITEM_MYSTIC_TICKET compare VAR_RESULT, FALSE vgoto_if_eq MysticTicket_NoBagSpace giveitem ITEM_MYSTIC_TICKET diff --git a/data/scripts/gift_old_sea_map.inc b/data/scripts/gift_old_sea_map.inc index 5e47a10df14c..b0f258807e4c 100644 --- a/data/scripts/gift_old_sea_map.inc +++ b/data/scripts/gift_old_sea_map.inc @@ -4,13 +4,13 @@ MysteryGiftScript_OldSeaMap:: faceplayer vgoto_if_set FLAG_RECEIVED_OLD_SEA_MAP, OldSeaMap_Obtained vgoto_if_set FLAG_CAUGHT_MEW, OldSeaMap_Obtained - checkitem ITEM_OLD_SEA_MAP, 1 + checkitem ITEM_OLD_SEA_MAP compare VAR_RESULT, TRUE vgoto_if_eq OldSeaMap_Obtained vmessage sText_MysteryGiftOldSeaMapForYou waitmessage waitbuttonpress - checkitemspace ITEM_OLD_SEA_MAP, 1 + checkitemspace ITEM_OLD_SEA_MAP compare VAR_RESULT, FALSE vgoto_if_eq OldSeaMap_NoBagSpace giveitem ITEM_OLD_SEA_MAP diff --git a/data/scripts/kecleon.inc b/data/scripts/kecleon.inc index 82eca777d5e3..355e9ad4a7cc 100644 --- a/data/scripts/kecleon.inc +++ b/data/scripts/kecleon.inc @@ -48,8 +48,8 @@ Route119_EventScript_Kecleon2:: end EventScript_Kecleon:: - checkitem ITEM_DEVON_SCOPE, 1 - compare VAR_RESULT, 1 + checkitem ITEM_DEVON_SCOPE + compare VAR_RESULT, TRUE goto_if_eq EventScript_AskUseDevonScope msgbox Kecleon_Text_SomethingUnseeable, MSGBOX_DEFAULT release diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index 576fa28adeb0..6c11da105a0d 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -405,7 +405,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock:: LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: special Script_BufferContestLadyCategoryAndMonName msgbox LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality, MSGBOX_DEFAULT - checkitem ITEM_POKEBLOCK_CASE, 1 + checkitem ITEM_POKEBLOCK_CASE compare VAR_RESULT, FALSE goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase msgbox LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock, MSGBOX_YESNO diff --git a/data/scripts/obtain_item.inc b/data/scripts/obtain_item.inc index 382f5ce3206d..8e24d4709935 100644 --- a/data/scripts/obtain_item.inc +++ b/data/scripts/obtain_item.inc @@ -1,55 +1,58 @@ +.set ITEMID, VAR_0x8000 +.set AMOUNT, VAR_0x8001 + Std_ObtainItem:: - additem VAR_0x8000, VAR_0x8001 + additem ITEMID, AMOUNT copyvar VAR_0x8007, VAR_RESULT call EventScript_ObtainItemMessage return EventScript_ObtainItemMessage:: - bufferitemnameplural 1, VAR_0x8000, VAR_0x8001 - checkitemtype VAR_0x8000 + bufferitemnameplural 1, ITEMID, AMOUNT + checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_ObtainedItem - compare VAR_0x8007, 0 + compare VAR_0x8007, FALSE call_if_eq EventScript_NoRoomForItem return EventScript_BufferPocketNameAndTryFanfare:: switch VAR_RESULT - case POCKET_ITEMS, EventScript_BufferItemsPocket - case POCKET_KEY_ITEMS, EventScript_BufferKeyItemsPocket + case POCKET_ITEMS, EventScript_BufferItemsPocket + case POCKET_KEY_ITEMS, EventScript_BufferKeyItemsPocket case POCKET_POKE_BALLS, EventScript_BufferPokeballsPocket - case POCKET_TM_HM, EventScript_BufferTMHMsPocket - case POCKET_BERRIES, EventScript_BufferBerriesPocket + case POCKET_TM_HM, EventScript_BufferTMHMsPocket + case POCKET_BERRIES, EventScript_BufferBerriesPocket end EventScript_BufferItemsPocket:: bufferstdstring 2, STDSTRING_ITEMS - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferKeyItemsPocket:: bufferstdstring 2, STDSTRING_KEYITEMS - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferPokeballsPocket:: bufferstdstring 2, STDSTRING_POKEBALLS - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferTMHMsPocket:: bufferstdstring 2, STDSTRING_TMHMS - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedTMHM return EventScript_BufferBerriesPocket:: bufferstdstring 2, STDSTRING_BERRIES - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return @@ -57,11 +60,11 @@ EventScript_ObtainedItem:: message gText_ObtainedTheItem waitfanfare msgbox gText_PutItemInPocket, MSGBOX_DEFAULT - setvar VAR_RESULT, 1 + setvar VAR_RESULT, TRUE return EventScript_NoRoomForItem:: - setvar VAR_RESULT, 0 + setvar VAR_RESULT, FALSE return EventScript_PlayFanfareObtainedItem:: @@ -73,16 +76,16 @@ EventScript_PlayFanfareObtainedTMHM:: return Std_ObtainDecoration:: - adddecoration VAR_0x8000 + adddecoration ITEMID copyvar VAR_0x8007, VAR_RESULT call EventScript_ObtainDecorationMessage return EventScript_ObtainDecorationMessage:: - bufferdecorationname 1, VAR_0x8000 - compare VAR_0x8007, 1 + bufferdecorationname 1, ITEMID + compare VAR_0x8007, TRUE call_if_eq EventScript_ObtainedDecor - compare VAR_0x8007, 0 + compare VAR_0x8007, FALSE call_if_eq EventScript_NoRoomForDecor return @@ -91,27 +94,27 @@ EventScript_ObtainedDecor:: message gText_ObtainedTheDecor waitfanfare msgbox gText_TheDecorWasTransferredToThePC, MSGBOX_DEFAULT - setvar VAR_RESULT, 1 + setvar VAR_RESULT, TRUE return EventScript_NoRoomForDecor:: - setvar VAR_RESULT, 0 + setvar VAR_RESULT, FALSE return Std_FindItem:: lock faceplayer waitse - copyvar VAR_0x8004, VAR_0x8000 - copyvar VAR_0x8005, VAR_0x8001 - checkitemspace VAR_0x8000, VAR_0x8001 + copyvar VAR_0x8004, ITEMID + copyvar VAR_0x8005, AMOUNT + checkitemspace ITEMID, AMOUNT copyvar VAR_0x8007, VAR_RESULT - bufferitemnameplural 1, VAR_0x8000, VAR_0x8001 - checkitemtype VAR_0x8000 + bufferitemnameplural 1, ITEMID, AMOUNT + checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE call_if_eq EventScript_PickUpItem - compare VAR_0x8007, 0 + compare VAR_0x8007, FALSE call_if_eq EventScript_NoRoomToPickUpItem release return @@ -121,15 +124,15 @@ EventScript_PickUpItem:: additem VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName copyvar VAR_0x8008, VAR_RESULT - compare VAR_0x8008, 1 + compare VAR_0x8008, TRUE call_if_eq EventScript_FoundTMHM - compare VAR_0x8008, 0 + compare VAR_0x8008, FALSE call_if_eq EventScript_FoundItem waitfanfare waitmessage bufferitemnameplural 1, VAR_0x8004, VAR_0x8005 pyramid_inchallenge - compare VAR_RESULT, 1 + compare VAR_RESULT, TRUE goto_if_eq EventScript_PutBattlePyramidItemInBag msgbox gText_PutItemInPocket, MSGBOX_DEFAULT return @@ -150,7 +153,7 @@ EventScript_FoundItem:: EventScript_NoRoomToPickUpItem:: msgbox gText_ObtainedTheItem, MSGBOX_DEFAULT msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT - setvar VAR_RESULT, 0 + setvar VAR_RESULT, FALSE return EventScript_HiddenItemScript:: @@ -161,9 +164,9 @@ EventScript_HiddenItemScript:: bufferitemnameplural 1, VAR_0x8005, 1 checkitemtype VAR_0x8005 call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, 1 + compare VAR_0x8007, TRUE goto_if_eq EventScript_PickUpHiddenItem - compare VAR_0x8007, 0 + compare VAR_0x8007, FALSE goto_if_eq EventScript_NoRoomForHiddenItem end @@ -171,9 +174,9 @@ EventScript_PickUpHiddenItem:: copyvar VAR_0x8008, VAR_0x8004 copyvar VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName - compare VAR_RESULT, 1 + compare VAR_RESULT, TRUE goto_if_eq EventScript_FoundHiddenTMHM - compare VAR_RESULT, 0 + compare VAR_RESULT, FALSE goto_if_eq EventScript_FoundHiddenItem end diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index 1167a765bdd7..241b0d31c218 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -1,5 +1,5 @@ Roulette_EventScript_Table1:: - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 0 @@ -11,7 +11,7 @@ Roulette_EventScript_Table1:: end Roulette_EventScript_Table2:: - checkitem ITEM_COIN_CASE, 1 + checkitem ITEM_COIN_CASE compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 1 diff --git a/data/scripts/std_msgbox.inc b/data/scripts/std_msgbox.inc index 941cc0e96176..f94d28ba0ec2 100644 --- a/data/scripts/std_msgbox.inc +++ b/data/scripts/std_msgbox.inc @@ -34,7 +34,8 @@ Std_MsgboxGetPoints: waitmessage return -Std_10: +@ Never used, pokenavcall is always used directly instead +Std_MsgboxPokenav: pokenavcall 0x0 waitmessage return From 65d3b583748bf1a8e03bc55baa31760bd5bdc384 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 10:57:06 -0500 Subject: [PATCH 426/762] Add PARTY_NOTHING_CHOSEN --- data/maps/BattleFrontier_Lounge1/scripts.inc | 4 ++-- data/maps/BattleFrontier_Lounge5/scripts.inc | 2 +- data/maps/BattleFrontier_Lounge6/scripts.inc | 2 +- data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc | 2 +- data/maps/FortreeCity_House1/scripts.inc | 2 +- data/maps/LilycoveCity_ContestLobby/scripts.inc | 2 +- data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc | 2 +- data/maps/PacifidlogTown_House3/scripts.inc | 2 +- data/maps/RustboroCity_House1/scripts.inc | 2 +- data/maps/SlateportCity_NameRatersHouse/scripts.inc | 4 ++-- data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc | 4 ++-- data/script_cmd_table.inc | 2 +- data/scripts/contest_hall.inc | 2 +- data/scripts/day_care.inc | 2 +- include/constants/party_menu.h | 2 ++ include/mail.h | 2 +- src/mail_data.c | 3 ++- src/party_menu.c | 8 ++++---- 18 files changed, 26 insertions(+), 23 deletions(-) diff --git a/data/maps/BattleFrontier_Lounge1/scripts.inc b/data/maps/BattleFrontier_Lounge1/scripts.inc index 0455d577ce10..4447e1032e0d 100644 --- a/data/maps/BattleFrontier_Lounge1/scripts.inc +++ b/data/maps/BattleFrontier_Lounge1/scripts.inc @@ -14,9 +14,9 @@ BattleFrontier_Lounge1_EventScript_Breeder:: BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder:: special ChoosePartyMon waitstate - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_ne BattleFrontier_Lounge1_EventScript_ShowMonToBreeder - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq BattleFrontier_Lounge1_EventScript_CancelMonSelect end diff --git a/data/maps/BattleFrontier_Lounge5/scripts.inc b/data/maps/BattleFrontier_Lounge5/scripts.inc index 61ac0cb9e247..d680156f334e 100644 --- a/data/maps/BattleFrontier_Lounge5/scripts.inc +++ b/data/maps/BattleFrontier_Lounge5/scripts.inc @@ -11,7 +11,7 @@ BattleFrontier_Lounge5_EventScript_NatureGirl:: waitstate lock faceplayer - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown specialvar VAR_RESULT, ScriptGetPartyMonSpecies compare VAR_RESULT, SPECIES_EGG diff --git a/data/maps/BattleFrontier_Lounge6/scripts.inc b/data/maps/BattleFrontier_Lounge6/scripts.inc index f88c69324d39..678ea6e33036 100644 --- a/data/maps/BattleFrontier_Lounge6/scripts.inc +++ b/data/maps/BattleFrontier_Lounge6/scripts.inc @@ -15,7 +15,7 @@ BattleFrontier_Lounge6_EventScript_Trader:: special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq BattleFrontier_Lounge6_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc index 945d6164679a..096f13877145 100644 --- a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc +++ b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc @@ -27,7 +27,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon:: msgbox FallarborTown_MoveRelearnersHouse_Text_TutorWhichMon, MSGBOX_DEFAULT special ChooseMonForMoveRelearner waitstate - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale special IsSelectedMonEgg compare VAR_RESULT, TRUE diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc index e25334ee9aa9..111a1b7c8658 100644 --- a/data/maps/FortreeCity_House1/scripts.inc +++ b/data/maps/FortreeCity_House1/scripts.inc @@ -15,7 +15,7 @@ FortreeCity_House1_EventScript_Trader:: special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq FortreeCity_House1_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 7bfa1419ad61..c572fdc02bda 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -724,7 +724,7 @@ LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon3, MSGBOX_DEFAULT setvar VAR_CONTEST_RANK, 0 choosecontestmon - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest special TryEnterContestMon compare VAR_RESULT, CANT_ENTER_CONTEST diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc index ff340c9f33f4..eead1f675f14 100644 --- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc +++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc @@ -18,7 +18,7 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMonShouldForget, MSGBOX_DEFAULT special ChoosePartyMon waitstate - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_ComeAgain special IsSelectedMonEgg compare VAR_RESULT, TRUE diff --git a/data/maps/PacifidlogTown_House3/scripts.inc b/data/maps/PacifidlogTown_House3/scripts.inc index c53ef051968c..a2f70e2cc6c8 100644 --- a/data/maps/PacifidlogTown_House3/scripts.inc +++ b/data/maps/PacifidlogTown_House3/scripts.inc @@ -15,7 +15,7 @@ PacifidlogTown_House3_EventScript_Trader:: special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq PacifidlogTown_House3_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies diff --git a/data/maps/RustboroCity_House1/scripts.inc b/data/maps/RustboroCity_House1/scripts.inc index 0b7de48bc54b..3d64f72a76eb 100644 --- a/data/maps/RustboroCity_House1/scripts.inc +++ b/data/maps/RustboroCity_House1/scripts.inc @@ -15,7 +15,7 @@ RustboroCity_House1_EventScript_Trader:: special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq RustboroCity_House1_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies diff --git a/data/maps/SlateportCity_NameRatersHouse/scripts.inc b/data/maps/SlateportCity_NameRatersHouse/scripts.inc index 87ed2d07f868..3242050e77b1 100644 --- a/data/maps/SlateportCity_NameRatersHouse/scripts.inc +++ b/data/maps/SlateportCity_NameRatersHouse/scripts.inc @@ -15,9 +15,9 @@ SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate:: msgbox SlateportCity_NameRatersHouse_Text_CritiqueWhichMonNickname, MSGBOX_DEFAULT special ChoosePartyMon waitstate - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_ne SlateportCity_NameRatersHouse_EventScript_RateMonNickname - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end diff --git a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc index ab087696e8cb..5620bb3e4612 100644 --- a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc +++ b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc @@ -9,7 +9,7 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotBrother:: special ChoosePartyMon waitstate copyvar VAR_RESULT, VAR_0x8004 - compare VAR_RESULT, 255 + compare VAR_RESULT, PARTY_NOTHING_CHOSEN goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowSeedot special CompareSeedotSize compare VAR_RESULT, 1 @@ -58,7 +58,7 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_LotadBrother:: special ChoosePartyMon waitstate copyvar VAR_RESULT, VAR_0x8004 - compare VAR_RESULT, 255 + compare VAR_RESULT, PARTY_NOTHING_CHOSEN goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowLotad special CompareLotadSize compare VAR_RESULT, 1 diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index dcc0da9f7f6a..566ac3b36814 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -207,7 +207,7 @@ gScriptCmdTable:: .4byte ScrCmd_nop1 @ 0xcc .4byte ScrCmd_setmoneventlegal @ 0xcd .4byte ScrCmd_checkmoneventlegal @ 0xce - .4byte ScrCmd_gotoram @ 0xcf + .4byte ScrCmd_gotowondercardscript @ 0xcf .4byte ScrCmd_nop1 @ 0xd0 .4byte ScrCmd_warpspinenter @ 0xd1 .4byte ScrCmd_setmonmetlocation @ 0xd2 diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 17364559bb26..13f31e9bd72c 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -103,7 +103,7 @@ LilycoveCity_ContestLobby_EventScript_CancelEnterContest:: LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon1, MSGBOX_DEFAULT choosecontestmon - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelEnterContest special TryEnterContestMon compare VAR_RESULT, CANT_ENTER_CONTEST diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index 8d529d5e105f..ba61fb0047a3 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -107,7 +107,7 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: fadescreen FADE_TO_BLACK special ChooseSendDaycareMon waitstate - compare VAR_0x8004, 255 + compare VAR_0x8004, PARTY_NOTHING_CHOSEN goto_if_eq Route117_PokemonDayCare_EventScript_ComeAgain specialvar VAR_RESULT, CountPartyAliveNonEggMons_IgnoreVar0x8004Slot compare VAR_RESULT, 0 diff --git a/include/constants/party_menu.h b/include/constants/party_menu.h index e31debb49be0..f95bfa90ff94 100644 --- a/include/constants/party_menu.h +++ b/include/constants/party_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_CONSTANTS_PARTY_MENU_H #define GUARD_CONSTANTS_PARTY_MENU_H +#define PARTY_NOTHING_CHOSEN 0xFF + #define AILMENT_NONE 0 #define AILMENT_PSN 1 #define AILMENT_PRZ 2 diff --git a/include/mail.h b/include/mail.h index 8236811cbda2..68c532b31057 100644 --- a/include/mail.h +++ b/include/mail.h @@ -27,7 +27,7 @@ u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer); u8 GiveMailToMon(struct Pokemon *mon, struct Mail *mail); void TakeMailFromMon(struct Pokemon *mon); void ClearMailItemId(u8 mailId); -u8 TakeMailFromMon2(struct Pokemon *mon); +u8 TakeMailFromMonAndSave(struct Pokemon *mon); bool8 ItemIsMail(u16 itemId); #endif // GUARD_MAIL_H diff --git a/src/mail_data.c b/src/mail_data.c index 683bd854eadd..ca50a687e760 100644 --- a/src/mail_data.c +++ b/src/mail_data.c @@ -157,7 +157,7 @@ void ClearMailItemId(u8 mailId) gSaveBlock1Ptr->mail[mailId].itemId = ITEM_NONE; } -u8 TakeMailFromMon2(struct Pokemon *mon) +u8 TakeMailFromMonAndSave(struct Pokemon *mon) { u8 i; u8 newHeldItem[2]; @@ -179,6 +179,7 @@ u8 TakeMailFromMon2(struct Pokemon *mon) } } + // No space to save mail return MAIL_NONE; } diff --git a/src/party_menu.c b/src/party_menu.c index 43f5220346b5..ad8d78ad31ae 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -3343,7 +3343,7 @@ static void Task_HandleSendMailToPCYesNoInput(u8 taskId) switch (Menu_ProcessInputNoWrapClearOnChoose()) { case 0: // Yes, send to PC - if (TakeMailFromMon2(&gPlayerParty[gPartyMenu.slotId]) != 0xFF) + if (TakeMailFromMonAndSave(&gPlayerParty[gPartyMenu.slotId]) != MAIL_NONE) { DisplayPartyMenuMessage(gText_MailSentToPC, FALSE); gTasks[taskId].func = Task_UpdateHeldItemSprite; @@ -6133,7 +6133,7 @@ static void BufferMonSelection(void) { gSpecialVar_0x8004 = GetCursorSelectionMonId(); if (gSpecialVar_0x8004 >= PARTY_SIZE) - gSpecialVar_0x8004 = 0xFF; + gSpecialVar_0x8004 = PARTY_NOTHING_CHOSEN; gFieldCallback2 = CB2_FadeFromPartyMenu; SetMainCallback2(CB2_ReturnToField); } @@ -6176,7 +6176,7 @@ static void CB2_ChooseContestMon(void) { gContestMonPartyIndex = GetCursorSelectionMonId(); if (gContestMonPartyIndex >= PARTY_SIZE) - gContestMonPartyIndex = 0xFF; + gContestMonPartyIndex = PARTY_NOTHING_CHOSEN; gSpecialVar_0x8004 = gContestMonPartyIndex; gFieldCallback2 = CB2_FadeFromPartyMenu; SetMainCallback2(CB2_ReturnToField); @@ -6221,7 +6221,7 @@ static void CB2_ChooseMonForMoveRelearner(void) { gSpecialVar_0x8004 = GetCursorSelectionMonId(); if (gSpecialVar_0x8004 >= PARTY_SIZE) - gSpecialVar_0x8004 = 0xFF; + gSpecialVar_0x8004 = PARTY_NOTHING_CHOSEN; else gSpecialVar_0x8005 = GetNumberOfRelearnableMoves(&gPlayerParty[gSpecialVar_0x8004]); gFieldCallback2 = CB2_FadeFromPartyMenu; From c1130592faa26f4e555142c48bdc02c1378ff1ee Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 10:57:22 -0500 Subject: [PATCH 427/762] Drop some overworld prefixes --- include/overworld.h | 8 ++--- src/battle_setup.c | 2 +- src/event_object_movement.c | 2 +- src/field_screen_effect.c | 2 +- src/field_specials.c | 22 ++++++------ src/overworld.c | 22 +++++------- src/scrcmd.c | 67 +++++++++++++++++-------------------- src/script.c | 9 +++-- 8 files changed, 64 insertions(+), 70 deletions(-) diff --git a/include/overworld.h b/include/overworld.h index e1cf100db58a..04b61f7fd740 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -67,8 +67,8 @@ void SetGameStat(u8 index, u32 value); void ApplyNewEncryptionKeyToGameStats(u32 newKey); void LoadObjEventTemplatesFromHeader(void); void LoadSaveblockObjEventScripts(void); -void Overworld_SetObjEventTemplateCoords(u8 localId, s16 x, s16 y); -void Overworld_SetObjEventTemplateMovementType(u8 localId, u8 movementType); +void SetObjEventTemplateCoords(u8 localId, s16 x, s16 y); +void SetObjEventTemplateMovementType(u8 localId, u8 movementType); const struct MapLayout *GetMapLayout(void); void ApplyCurrentWarp(void); struct MapHeader const *const Overworld_GetMapHeaderByGroupAndId(u16 mapGroup, u16 mapNum); @@ -98,8 +98,8 @@ void ResetInitialPlayerAvatarState(void); void StoreInitialPlayerAvatarState(void); bool32 Overworld_IsBikingAllowed(void); void SetDefaultFlashLevel(void); -void Overworld_SetFlashLevel(s32 flashLevel); -u8 Overworld_GetFlashLevel(void); +void SetFlashLevel(s32 flashLevel); +u8 GetFlashLevel(void); void SetCurrentMapLayout(u16 mapLayoutId); void SetObjectEventLoadFlag(u8 var); u16 GetLocationMusic(struct WarpData *warp); diff --git a/src/battle_setup.c b/src/battle_setup.c index a9d4eeddf53c..d94034cff648 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -700,7 +700,7 @@ static u8 GetBattleTransitionTypeByMap(void) PlayerGetDestCoords(&x, &y); tileBehavior = MapGridGetMetatileBehaviorAt(x, y); - if (Overworld_GetFlashLevel()) + if (GetFlashLevel()) return TRANSITION_TYPE_FLASH; if (!MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) { diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 107ee47abe87..9a5ae07b14da 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1141,7 +1141,7 @@ static const u8 sPlayerDirectionToCopyDirection[][4] = { static void ClearObjectEvent(struct ObjectEvent *objectEvent) { *objectEvent = (struct ObjectEvent){}; - objectEvent->localId = 0xFF; + objectEvent->localId = OBJ_EVENT_ID_PLAYER; objectEvent->mapNum = MAP_NUM(UNDEFINED); objectEvent->mapGroup = MAP_GROUP(UNDEFINED); objectEvent->movementActionId = MOVEMENT_ACTION_NONE; diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index c27ec6c4c325..b17617eff910 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -974,7 +974,7 @@ static u8 StartUpdateOrbFlashEffect(s32 centerX, s32 centerY, s32 initialFlashRa // A higher flashLevel value is a smaller flash radius (more darkness). 0 is full brightness void AnimateFlash(u8 flashLevel) { - u8 curFlashLevel = Overworld_GetFlashLevel(); + u8 curFlashLevel = GetFlashLevel(); bool8 fullBrightness = FALSE; if (!flashLevel) fullBrightness = TRUE; diff --git a/src/field_specials.c b/src/field_specials.c index ef569ca0061c..e3a259999ef0 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3029,6 +3029,8 @@ void CloseFrontierExchangeCornerItemIconWindow(void) RemoveWindow(sFrontierExchangeCorner_ItemIconWindowId); } +#define TAG_ITEM_ICON 5500 + static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) { #include "data/battle_frontier/battle_frontier_exchange_corner.h" @@ -3046,9 +3048,9 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } else { - FreeSpriteTilesByTag(5500); - FreeSpritePaletteByTag(5500); - sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor1[selection], 33, 88, 0, 5500, 5500); + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor1[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: @@ -3059,9 +3061,9 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } else { - FreeSpriteTilesByTag(5500); - FreeSpritePaletteByTag(5500); - sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor2[selection], 33, 88, 0, 5500, 5500); + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor2[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: @@ -3078,9 +3080,9 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) static void ShowFrontierExchangeCornerItemIcon(u16 item) { - FreeSpriteTilesByTag(5500); - FreeSpritePaletteByTag(5500); - sScrollableMultichoice_ItemSpriteId = AddItemIconSprite(5500, 5500, item); + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + sScrollableMultichoice_ItemSpriteId = AddItemIconSprite(TAG_ITEM_ICON, TAG_ITEM_ICON, item); if (sScrollableMultichoice_ItemSpriteId != MAX_SPRITES) { @@ -3416,7 +3418,7 @@ static void ChangeDeoxysRockLevel(u8 rockLevel) gFieldEffectArguments[5] = 5; FieldEffectStart(FLDEFF_MOVE_DEOXYS_ROCK); - Overworld_SetObjEventTemplateCoords(1, sDeoxysRockCoords[rockLevel][0], sDeoxysRockCoords[rockLevel][1]); + SetObjEventTemplateCoords(LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK, sDeoxysRockCoords[rockLevel][0], sDeoxysRockCoords[rockLevel][1]); } static void WaitForDeoxysRockMovement(u8 taskId) diff --git a/src/overworld.c b/src/overworld.c index a44d3c050eaa..6d2b8ae4b3cb 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -175,7 +175,6 @@ static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState *, u static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *, u8, u16, u8); static u16 GetCenterScreenMetatileBehavior(void); -// IWRAM bss vars static void *sUnusedOverworldCallback; static u8 sPlayerLinkStates[MAX_LINK_PLAYERS]; // This callback is called with a player's key code. It then returns an @@ -185,7 +184,6 @@ static u16 (*sPlayerKeyInterceptCallback)(u32); static bool8 sReceivingFromLink; static u8 sRfuKeepAliveTimer; -// IWRAM common u16 *gBGTilemapBuffers1; u16 *gBGTilemapBuffers2; u16 *gBGTilemapBuffers3; @@ -195,7 +193,6 @@ bool8 (*gFieldCallback2)(void); u8 gLocalLinkPlayerId; // This is our player id in a multiplayer mode. u8 gFieldLinkPlayerCount; -// EWRAM vars EWRAM_DATA static u8 sObjectEventLoadFlag = 0; EWRAM_DATA struct WarpData gLastUsedWarp = {0}; EWRAM_DATA static struct WarpData sWarpDestination = {0}; // new warp position @@ -207,11 +204,10 @@ EWRAM_DATA static u16 sAmbientCrySpecies = 0; EWRAM_DATA static bool8 sIsAmbientCryWaterMon = FALSE; EWRAM_DATA struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4] = {0}; -// const rom data static const struct WarpData sDummyWarpData = { - .mapGroup = -1, - .mapNum = -1, + .mapGroup = MAP_GROUP(UNDEFINED), + .mapNum = MAP_NUM(UNDEFINED), .warpId = -1, .x = -1, .y = -1, @@ -495,7 +491,7 @@ void LoadSaveblockObjEventScripts(void) savObjTemplates[i].script = mapHeaderObjTemplates[i].script; } -void Overworld_SetObjEventTemplateCoords(u8 localId, s16 x, s16 y) +void SetObjEventTemplateCoords(u8 localId, s16 x, s16 y) { s32 i; struct ObjectEventTemplate *savObjTemplates = gSaveBlock1Ptr->objectEventTemplates; @@ -512,7 +508,7 @@ void Overworld_SetObjEventTemplateCoords(u8 localId, s16 x, s16 y) } } -void Overworld_SetObjEventTemplateMovementType(u8 localId, u8 movementType) +void SetObjEventTemplateMovementType(u8 localId, u8 movementType) { s32 i; @@ -570,9 +566,9 @@ static void SetWarpData(struct WarpData *warp, s8 mapGroup, s8 mapNum, s8 warpId static bool32 IsDummyWarp(struct WarpData *warp) { - if (warp->mapGroup != -1) + if (warp->mapGroup != (s8)MAP_GROUP(UNDEFINED)) return FALSE; - else if (warp->mapNum != -1) + else if (warp->mapNum != (s8)MAP_NUM(UNDEFINED)) return FALSE; else if (warp->warpId != -1) return FALSE; @@ -978,14 +974,14 @@ void SetDefaultFlashLevel(void) gSaveBlock1Ptr->flashLevel = gMaxFlashLevel - 1; } -void Overworld_SetFlashLevel(s32 flashLevel) +void SetFlashLevel(s32 flashLevel) { if (flashLevel < 0 || flashLevel > gMaxFlashLevel) flashLevel = 0; gSaveBlock1Ptr->flashLevel = flashLevel; } -u8 Overworld_GetFlashLevel(void) +u8 GetFlashLevel(void) { return gSaveBlock1Ptr->flashLevel; } @@ -1790,7 +1786,7 @@ static void InitCurrentFlashLevelScanlineEffect(void) WriteBattlePyramidViewScanlineEffectBuffer(); ScanlineEffect_SetParams(sFlashEffectParams); } - else if ((flashLevel = Overworld_GetFlashLevel())) + else if ((flashLevel = GetFlashLevel())) { WriteFlashScanlineEffectBuffer(flashLevel); ScanlineEffect_SetParams(sFlashEffectParams); diff --git a/src/scrcmd.c b/src/scrcmd.c index 6007fb49314b..1c13d46c9881 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -58,11 +58,11 @@ EWRAM_DATA const u8 *gRamScriptRetAddr = NULL; static EWRAM_DATA u32 sAddressOffset = 0; // For relative addressing in vgoto etc., used by saved scripts (e.g. Mystery Event) static EWRAM_DATA u16 sPauseCounter = 0; static EWRAM_DATA u16 sMovingNpcId = 0; -static EWRAM_DATA u16 sMovingNpcMapBank = 0; -static EWRAM_DATA u16 sMovingNpcMapId = 0; +static EWRAM_DATA u16 sMovingNpcMapGroup = 0; +static EWRAM_DATA u16 sMovingNpcMapNum = 0; static EWRAM_DATA u16 sFieldEffectScriptId = 0; -static u8 gBrailleWindowId; +static u8 sBrailleWindowId; extern const SpecialFunc gSpecials[]; extern const u8 *gStdScripts[]; @@ -612,9 +612,7 @@ bool8 ScrCmd_animateflash(struct ScriptContext *ctx) bool8 ScrCmd_setflashradius(struct ScriptContext *ctx) { - u16 flashLevel = VarGet(ScriptReadHalfword(ctx)); - - Overworld_SetFlashLevel(flashLevel); + SetFlashLevel(VarGet(ScriptReadHalfword(ctx))); return FALSE; } @@ -668,9 +666,7 @@ bool8 ScrCmd_fadescreenswapbuffers(struct ScriptContext *ctx) static bool8 RunPauseTimer(void) { - sPauseCounter--; - - if (sPauseCounter == 0) + if (--sPauseCounter == 0) return TRUE; else return FALSE; @@ -945,9 +941,9 @@ bool8 ScrCmd_waitfanfare(struct ScriptContext *ctx) bool8 ScrCmd_playbgm(struct ScriptContext *ctx) { u16 songId = ScriptReadHalfword(ctx); - bool8 val = ScriptReadByte(ctx); + bool8 save = ScriptReadByte(ctx); - if (val == TRUE) + if (save == TRUE) Overworld_SetSavedMusic(songId); PlayNewMapMusic(songId); return FALSE; @@ -1018,7 +1014,7 @@ bool8 ScrCmd_applymovement_at(struct ScriptContext *ctx) static bool8 WaitForMovementFinish(void) { - return ScriptMovement_IsObjectMovementFinished(sMovingNpcId, sMovingNpcMapId, sMovingNpcMapBank); + return ScriptMovement_IsObjectMovementFinished(sMovingNpcId, sMovingNpcMapNum, sMovingNpcMapGroup); } bool8 ScrCmd_waitmovement(struct ScriptContext *ctx) @@ -1027,8 +1023,8 @@ bool8 ScrCmd_waitmovement(struct ScriptContext *ctx) if (localId != 0) sMovingNpcId = localId; - sMovingNpcMapBank = gSaveBlock1Ptr->location.mapGroup; - sMovingNpcMapId = gSaveBlock1Ptr->location.mapNum; + sMovingNpcMapGroup = gSaveBlock1Ptr->location.mapGroup; + sMovingNpcMapNum = gSaveBlock1Ptr->location.mapNum; SetupNativeScript(ctx, WaitForMovementFinish); return TRUE; } @@ -1036,15 +1032,15 @@ bool8 ScrCmd_waitmovement(struct ScriptContext *ctx) bool8 ScrCmd_waitmovement_at(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); - u8 mapBank; - u8 mapId; + u8 mapGroup; + u8 mapNum; if (localId != 0) sMovingNpcId = localId; - mapBank = ScriptReadByte(ctx); - mapId = ScriptReadByte(ctx); - sMovingNpcMapBank = mapBank; - sMovingNpcMapId = mapId; + mapGroup = ScriptReadByte(ctx); + mapNum = ScriptReadByte(ctx); + sMovingNpcMapGroup = mapGroup; + sMovingNpcMapNum = mapNum; SetupNativeScript(ctx, WaitForMovementFinish); return TRUE; } @@ -1101,7 +1097,7 @@ bool8 ScrCmd_setobjectxyperm(struct ScriptContext *ctx) u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - Overworld_SetObjEventTemplateCoords(localId, x, y); + SetObjEventTemplateCoords(localId, x, y); return FALSE; } @@ -1178,7 +1174,7 @@ bool8 ScrCmd_setobjectmovementtype(struct ScriptContext *ctx) u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 movementType = ScriptReadByte(ctx); - Overworld_SetObjEventTemplateMovementType(localId, movementType); + SetObjEventTemplateMovementType(localId, movementType); return FALSE; } @@ -1311,7 +1307,7 @@ bool8 ScrCmd_messageinstant(struct ScriptContext *ctx) msg = (const u8 *)ctx->data[0]; LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, 1); - AddTextPrinterParameterized(0, FONT_NORMAL, msg, 0, 1, 0, 0); + AddTextPrinterParameterized(0, FONT_NORMAL, msg, 0, 1, 0, NULL); return FALSE; } @@ -1528,13 +1524,13 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) yText = (yText - yWindow - 1) * 8; winTemplate = CreateWindowTemplate(0, xWindow, yWindow + 1, width, height, 0xF, 0x1); - gBrailleWindowId = AddWindow(&winTemplate); - LoadUserWindowBorderGfx(gBrailleWindowId, 0x214, 0xE0); - DrawStdWindowFrame(gBrailleWindowId, 0); - PutWindowTilemap(gBrailleWindowId); - FillWindowPixelBuffer(gBrailleWindowId, PIXEL_FILL(1)); - AddTextPrinterParameterized(gBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, TEXT_SKIP_DRAW, NULL); - CopyWindowToVram(gBrailleWindowId, COPYWIN_FULL); + sBrailleWindowId = AddWindow(&winTemplate); + LoadUserWindowBorderGfx(sBrailleWindowId, 0x214, 0xE0); + DrawStdWindowFrame(sBrailleWindowId, 0); + PutWindowTilemap(sBrailleWindowId); + FillWindowPixelBuffer(sBrailleWindowId, PIXEL_FILL(1)); + AddTextPrinterParameterized(sBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, TEXT_SKIP_DRAW, NULL); + CopyWindowToVram(sBrailleWindowId, COPYWIN_FULL); return FALSE; } @@ -1933,7 +1929,7 @@ bool8 ScrCmd_setberrytree(struct ScriptContext *ctx) u8 growthStage = ScriptReadByte(ctx); if (berry == 0) - PlantBerryTree(treeId, 0, growthStage, FALSE); + PlantBerryTree(treeId, berry, growthStage, FALSE); else PlantBerryTree(treeId, berry, growthStage, FALSE); return FALSE; @@ -2230,9 +2226,7 @@ bool8 ScrCmd_checkmoneventlegal(struct ScriptContext *ctx) return FALSE; } -// TODO: Should be renamed. Name implies general usage, but its specifically for Wonder Card -// See GetSavedRamScriptIfValid, which is NULL if ValidateSavedWonderCard returns FALSE -bool8 ScrCmd_gotoram(struct ScriptContext *ctx) +bool8 ScrCmd_gotowondercardscript(struct ScriptContext *ctx) { const u8* script = GetSavedRamScriptIfValid(); @@ -2244,7 +2238,6 @@ bool8 ScrCmd_gotoram(struct ScriptContext *ctx) return FALSE; } -// Unused // For the warp used by the Aqua Hideout, see DoTeleportTileWarp bool8 ScrCmd_warpspinenter(struct ScriptContext *ctx) { @@ -2273,8 +2266,8 @@ bool8 ScrCmd_setmonmetlocation(struct ScriptContext *ctx) static void CloseBrailleWindow(void) { - ClearStdWindowAndFrame(gBrailleWindowId, 1); - RemoveWindow(gBrailleWindowId); + ClearStdWindowAndFrame(sBrailleWindowId, 1); + RemoveWindow(sBrailleWindowId); } bool8 ScrCmd_buffertrainerclassname(struct ScriptContext *ctx) diff --git a/src/script.c b/src/script.c index b10e0db49d12..468989fb517d 100644 --- a/src/script.c +++ b/src/script.c @@ -3,6 +3,7 @@ #include "event_data.h" #include "mystery_gift.h" #include "util.h" +#include "constants/event_objects.h" #include "constants/maps.h" #include "constants/map_scripts.h" @@ -399,6 +400,8 @@ const u8 *GetRamScript(u8 objectId, const u8 *script) } } +#define NO_OBJECT OBJ_EVENT_ID_PLAYER + bool32 ValidateSavedRamScript(void) { struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data; @@ -408,7 +411,7 @@ bool32 ValidateSavedRamScript(void) return FALSE; if (scriptData->mapNum != MAP_NUM(UNDEFINED)) return FALSE; - if (scriptData->objectId != 0xFF) + if (scriptData->objectId != NO_OBJECT) return FALSE; if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum) return FALSE; @@ -426,7 +429,7 @@ u8 *GetSavedRamScriptIfValid(void) return NULL; if (scriptData->mapNum != MAP_NUM(UNDEFINED)) return NULL; - if (scriptData->objectId != 0xFF) + if (scriptData->objectId != NO_OBJECT) return NULL; if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum) { @@ -443,5 +446,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), 0xFF); + InitRamScript(script, scriptSize, MAP_GROUP(UNDEFINED), MAP_NUM(UNDEFINED), NO_OBJECT); } From 04cc923d6c17edae778f14cb431991867a05cf65 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 15 Nov 2021 12:04:54 -0500 Subject: [PATCH 428/762] Handle optional arguments for warp commands, add WARP_ID_NONE --- asm/macros/event.inc | 173 +++++++++--------- .../AbandonedShip_Corridors_B1F/scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/AbandonedShip_Rooms_B1F/scripts.inc | 2 +- .../AbandonedShip_Underwater1/scripts.inc | 2 +- .../AbandonedShip_Underwater2/scripts.inc | 2 +- .../scripts.inc | 4 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 6 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 6 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 4 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 6 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- .../scripts.inc | 8 +- .../scripts.inc | 2 +- .../scripts.inc | 8 +- .../scripts.inc | 2 +- .../scripts.inc | 6 +- .../scripts.inc | 4 +- .../BattleFrontier_OutsideWest/scripts.inc | 4 +- data/maps/BirthIsland_Harbor/scripts.inc | 2 +- data/maps/CaveOfOrigin_Entrance/scripts.inc | 2 +- data/maps/ContestHall/scripts.inc | 10 +- data/maps/DewfordTown/scripts.inc | 2 +- .../EverGrandeCity_ChampionsRoom/scripts.inc | 2 +- .../scripts.inc | 4 +- .../scripts.inc | 2 +- .../FallarborTown_BattleTentLobby/scripts.inc | 2 +- data/maps/FarawayIsland_Entrance/scripts.inc | 2 +- data/maps/GraniteCave_B1F/scripts.inc | 2 +- data/maps/InsideOfTruck/scripts.inc | 4 +- .../LilycoveCity_ContestLobby/scripts.inc | 10 +- .../scripts.inc | 10 +- data/maps/LilycoveCity_Harbor/scripts.inc | 28 +-- .../scripts.inc | 6 +- data/maps/LittlerootTown/scripts.inc | 6 +- .../scripts.inc | 2 +- .../LittlerootTown_MaysHouse_1F/scripts.inc | 2 +- data/maps/MarineCave_Entrance/scripts.inc | 2 +- data/maps/MirageTower_2F/scripts.inc | 2 +- data/maps/MirageTower_3F/scripts.inc | 2 +- data/maps/MirageTower_4F/scripts.inc | 2 +- data/maps/MossdeepCity_Gym/scripts.inc | 2 +- .../MossdeepCity_SpaceCenter_2F/scripts.inc | 2 +- data/maps/MtPyre_2F/scripts.inc | 2 +- data/maps/NavelRock_Harbor/scripts.inc | 2 +- data/maps/PetalburgCity/scripts.inc | 4 +- data/maps/PetalburgCity_Gym/scripts.inc | 6 +- data/maps/Route101/scripts.inc | 2 +- data/maps/Route104_MrBrineysHouse/scripts.inc | 2 +- .../Route110_TrickHouseEntrance/scripts.inc | 18 +- .../Route110_TrickHousePuzzle5/scripts.inc | 2 +- .../Route110_TrickHousePuzzle7/scripts.inc | 2 +- .../maps/Route112_CableCarStation/scripts.inc | 2 +- .../Route121_SafariZoneEntrance/scripts.inc | 2 +- data/maps/Route134/scripts.inc | 2 +- data/maps/RustboroCity/scripts.inc | 2 +- data/maps/SSTidalCorridor/scripts.inc | 4 +- data/maps/SafariZone_South/scripts.inc | 2 +- data/maps/SeafloorCavern_Entrance/scripts.inc | 4 +- data/maps/SeafloorCavern_Room9/scripts.inc | 2 +- data/maps/SealedChamber_OuterRoom/scripts.inc | 4 +- data/maps/SkyPillar_2F/scripts.inc | 2 +- data/maps/SkyPillar_4F/scripts.inc | 2 +- data/maps/SlateportCity/scripts.inc | 2 +- .../scripts.inc | 6 +- .../scripts.inc | 2 +- .../SlateportCity_BattleTentLobby/scripts.inc | 2 +- data/maps/SlateportCity_Harbor/scripts.inc | 6 +- data/maps/SootopolisCity/scripts.inc | 10 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- data/maps/SouthernIsland_Exterior/scripts.inc | 2 +- data/maps/TrainerHill_Elevator/scripts.inc | 4 +- data/maps/Underwater_MarineCave/scripts.inc | 2 +- data/maps/Underwater_Route134/scripts.inc | 2 +- .../Underwater_SeafloorCavern/scripts.inc | 2 +- .../maps/Underwater_SealedChamber/scripts.inc | 4 +- .../Underwater_SootopolisCity/scripts.inc | 2 +- .../scripts.inc | 4 +- .../scripts.inc | 2 +- .../scripts.inc | 2 +- data/scripts/abnormal_weather.inc | 16 +- data/scripts/battle_pike.inc | 10 +- data/scripts/cable_club.inc | 10 +- data/scripts/safari_zone.inc | 4 +- data/scripts/trainer_hill.inc | 4 +- include/constants/maps.h | 12 ++ include/global.h | 1 + src/battle_arena.c | 2 +- src/battle_dome.c | 2 +- src/battle_factory.c | 2 +- src/battle_palace.c | 2 +- src/battle_pyramid.c | 1 - src/battle_setup.c | 1 - src/battle_tent.c | 6 +- src/battle_tower.c | 2 +- src/braille_puzzles.c | 1 - src/cable_club.c | 2 +- src/contest_util.c | 2 +- src/decoration.c | 2 +- src/event_object_movement.c | 1 - src/faraway_island.c | 1 - src/field_control_avatar.c | 9 +- src/field_door.c | 1 - src/field_player_avatar.c | 1 - src/field_special_scene.c | 2 +- src/field_specials.c | 9 +- src/frontier_pass.c | 1 - src/heal_location.c | 1 - src/link.c | 5 +- src/match_call.c | 1 - src/menu_helpers.c | 1 - src/mirage_tower.c | 1 - src/new_game.c | 3 +- src/overworld.c | 29 +-- src/party_menu.c | 1 - src/pokedex_area_screen.c | 1 - src/pokemon_storage_system.c | 1 - src/region_map.c | 3 +- src/roamer.c | 1 - src/rotating_gate.c | 1 - src/save_location.c | 1 - src/scrcmd.c | 4 +- src/script.c | 1 - src/secret_base.c | 7 +- src/trainer_hill.c | 1 - src/tv.c | 1 - src/union_room.c | 7 +- src/wild_encounter.c | 1 - 145 files changed, 341 insertions(+), 351 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 01a7889fecc5..c5fc6e205261 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -377,37 +377,64 @@ .byte \speed .endm + @ Helper macro for warp commands. It formats the arguments for a warp command. + @ It allows warp macros to either provide 1. a valid id for which warp location to use, + @ or 2. a pair of x/y coordinates to use. Both may be provided but at least one will be + @ ignored by SetPlayerCoordsFromWard. If none are provided it will use dummy arguments, + @ and the warp will send the player to the center of the map. + @ Examples of valid inputs for a warp command: + @ - warp MAP, x, y + @ - warp MAP, warpId + @ - warp MAP + @ - warp MAP, warpId, x, y + .macro formatwarp map:req, a, b, c + map \map + .ifb \a @ No arguments provided, use dummy warpId and coords. + .byte WARP_ID_NONE + .2byte -1 @ x + .2byte -1 @ y + .else + .ifb \b @ Only one argument provided, treat it as a warpId and use dummy coords. + .byte \a @ warpId + .2byte -1 @ x + .2byte -1 @ y + .else + .ifb \c @ Only two arguments provided, treat them as a coord pair and use dummy warpId. + .byte WARP_ID_NONE + .2byte \a @ x + .2byte \b @ y + .else @ All three arguments provided. Output them and let the warp sort out which to use. + .byte \a @ warpId + .2byte \b @ x + .2byte \c @ y + .endif + .endif + .endif + .endm + + @ Warps the player to the specified map. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warp map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Warps the player to the specified map without playing a sound effect. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpsilent map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Warps the player to the specified map and plays a door opening animation before stepping upwards into it. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpdoor map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Warps the player to another map using a hole animation. @@ -416,55 +443,48 @@ map \map .endm - @ Warps the player to the specified map using a teleport effect. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpteleport map:req, warp:req, x=0, y=0 + @ Warps the player to the specified map using a teleport effect. Effect is similar to warpspinenter but + @ this warp has a fade out first and doesn't maintain the original facing direction. + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Sets the warp destination to be used later. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro setwarp map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm - @ TODO - @ Sets the warp destination that a warp to Warp 127 on Map 127.127 will connect to. - @ Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). - .macro setdynamicwarp map:req, warp:req, x:req, y:req + @ Sets the dynamic warp destination. Warps with a destination map of MAP_NONE will target this destination. + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Sets the destination that diving or emerging from a dive will take the player to. - .macro setdivewarp map:req, warp:req, x:req, y:req + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Sets the destination that falling into a hole will take the player to. - .macro setholewarp map:req, warp:req, x:req, y:req + @ While it does accept and set the x/y coordinates and warpId, they are ultimately ignored. + @ This is only used to set the map the player should fall to. The exact location on the + @ map to fall to is determined by warphole. + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + 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. @@ -1441,14 +1461,11 @@ .endm @ Sets the destination that using an Escape Rope or Dig will take the player to. - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro setescapewarp map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Blocks script execution until cry finishes. @@ -1522,15 +1539,11 @@ .2byte \worldmapflag .endm - @ Clone of warpteleport? It is apparently only used in FR/LG, and only with specials.[source] - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpteleport2 map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm @ Changes the location where the player caught the Pokemon in the specified slot of their party. @@ -1565,14 +1578,11 @@ .byte 0xd6 .endm - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpmossdeepgym map:req, warp:req, x=0, y=0 + @ 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 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm .macro selectapproachingtrainer @@ -1614,14 +1624,11 @@ .4byte \pointer .endm - @ The player will warp to the coordinates of the given 'warp'. - @ If 'warp' is set to an invalid id (e.g. 255) then the coordinates x/y will be used instead. - .macro warpsootopolislegend map:req, warp:req, x=0, y=0 + @ 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 warpsootopolislegend map:req, a, b, c .byte 0xe0 - map \map - .byte \warp - .2byte \x - .2byte \y + formatwarp \map, \a, \b, \c .endm .macro buffercontesttypestring out:req, word:req diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc index a2fab1bb9305..7f0288e0c1fa 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc @@ -4,7 +4,7 @@ AbandonedShip_Corridors_B1F_MapScripts:: .byte 0 AbandonedShip_Corridors_B1F_OnResume: - setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 255, 5, 4 + setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 5, 4 end AbandonedShip_Corridors_B1F_OnLoad: diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc index a30c448d3755..cdc350f3e97a 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc @@ -4,7 +4,7 @@ AbandonedShip_HiddenFloorCorridors_MapScripts:: .byte 0 AbandonedShip_HiddenFloorCorridors_OnResume: - setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 255, 5, 4 + setdivewarp MAP_ABANDONED_SHIP_UNDERWATER1, 5, 4 end AbandonedShip_HiddenFloorCorridors_OnLoad: diff --git a/data/maps/AbandonedShip_Rooms_B1F/scripts.inc b/data/maps/AbandonedShip_Rooms_B1F/scripts.inc index a716972ff487..484f15ba1208 100644 --- a/data/maps/AbandonedShip_Rooms_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms_B1F/scripts.inc @@ -3,7 +3,7 @@ AbandonedShip_Rooms_B1F_MapScripts:: .byte 0 AbandonedShip_Rooms_B1F_OnResume: - setdivewarp MAP_ABANDONED_SHIP_UNDERWATER2, 255, 17, 4 + setdivewarp MAP_ABANDONED_SHIP_UNDERWATER2, 17, 4 end AbandonedShip_Rooms_B1F_EventScript_FatMan:: diff --git a/data/maps/AbandonedShip_Underwater1/scripts.inc b/data/maps/AbandonedShip_Underwater1/scripts.inc index 9b3528b7796b..0f47704d1a1c 100644 --- a/data/maps/AbandonedShip_Underwater1/scripts.inc +++ b/data/maps/AbandonedShip_Underwater1/scripts.inc @@ -3,6 +3,6 @@ AbandonedShip_Underwater1_MapScripts:: .byte 0 AbandonedShip_Underwater1_OnResume: - setdivewarp MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS, 255, 0, 10 + setdivewarp MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS, 0, 10 end diff --git a/data/maps/AbandonedShip_Underwater2/scripts.inc b/data/maps/AbandonedShip_Underwater2/scripts.inc index bb139bd510db..6258b50c1859 100644 --- a/data/maps/AbandonedShip_Underwater2/scripts.inc +++ b/data/maps/AbandonedShip_Underwater2/scripts.inc @@ -3,6 +3,6 @@ AbandonedShip_Underwater2_MapScripts:: .byte 0 AbandonedShip_Underwater2_OnResume: - setdivewarp MAP_ABANDONED_SHIP_ROOMS_B1F, 255, 13, 7 + setdivewarp MAP_ABANDONED_SHIP_ROOMS_B1F, 13, 7 end diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index adea508ae6c9..36e7a8d11a69 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -110,7 +110,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT BattleFrontier_BattleArenaBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST - warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 255, 7, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 7, 8 waitstate BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent:: @@ -210,7 +210,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge:: BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon:: delay 60 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON - warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 255, 7, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY, 7, 8 waitstate BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor2ndOpponent:: diff --git a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc index 1752b934211b..7086819569b9 100644 --- a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc @@ -22,7 +22,7 @@ BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaCorridor_Movement_PlayerEnterDoor waitmovement 0 setvar VAR_0x8006, 0 - warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM, 255, 7, 5 + warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM, 7, 5 waitstate end diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index 12b600f69b87..e6394d2a8090 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -173,7 +173,7 @@ BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge:: call_if_eq BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50 compare VAR_RESULT, FRONTIER_LVL_OPEN call_if_eq BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen - warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR, 255, 9, 13 + warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR, 9, 13 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index 76088f54d198..809be00f38c6 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -164,7 +164,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent:: switch VAR_RESULT case DOME_ROUNDS_COUNT, BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney setvar VAR_0x8006, 1 - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 255, 5, 3 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 5, 3 waitstate BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney:: @@ -885,12 +885,12 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 255, 5, 11 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 5, 11 waitstate end BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles:: - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 255, 17, 11 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 17, 11 waitstate end diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc index 32f3c82ba356..246694439045 100644 --- a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc @@ -40,7 +40,7 @@ BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen:: BattleFrontier_BattleDomeCorridor_EventScript_WarpToPreBattleRoom:: waitmovement 0 setvar VAR_0x8006, 0 - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 255, 5, 7 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM, 5, 7 waitstate end diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc index 04df6f38c6c5..ae82a555887b 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc @@ -202,7 +202,7 @@ BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: closemessage call BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor special HealPlayerParty - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR, 255, 23, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR, 23, 6 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc index ca441cf1f8dc..da5b4371ade0 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc @@ -163,7 +163,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge:: waitmovement 0 closedoor 5, 1 waitdooranim - warp MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM, 255, 9, 5 + warp MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM, 9, 5 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc index 24f5ebe103ac..b0529153e344 100644 --- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc @@ -119,7 +119,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum:: switch VAR_RESULT case 7, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon setvar VAR_0x8006, 1 - warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 255, 8, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 8, 8 waitstate BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON @@ -247,12 +247,12 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles - warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 255, 4, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 4, 8 waitstate end BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles:: - warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 255, 14, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 14, 8 waitstate end diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc index 3b11392947b4..da36d96e253c 100644 --- a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc @@ -181,7 +181,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge:: applymovement VAR_LAST_TALKED, BattleFrontier_BattleFactoryLobby_Movement_AttendantEnterDoor applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor waitmovement 0 - warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 255, 8, 13 + warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 8, 13 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index ce3cb357c281..f83b77fbbfed 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -54,7 +54,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom:: compare VAR_RESULT, FRONTIER_LVL_OPEN call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen waitmovement 0 - warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM, 255, 6, 11 + warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM, 6, 11 waitstate end diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index 13015dd3e100..1d46ea0440d5 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -419,12 +419,12 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE compare VAR_RESULT, FRONTIER_MODE_DOUBLES goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles - warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 255, 5, 7 + warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 5, 7 waitstate end BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles:: - warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 255, 19, 7 + warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 19, 7 waitstate end diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc index 011170bae846..68de944c09e3 100644 --- a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc @@ -53,7 +53,7 @@ BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom:: closedoor 10, 3 waitdooranim BattleFrontier_BattlePalaceCorridor_EventScript_WarpToBattleRoom:: - warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM, 255, 7, 4 + warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM, 7, 4 waitstate end diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index a51fa48fde8a..0bd08ae44b5b 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -192,7 +192,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: msgbox BattleFrontier_BattlePalaceLobby_Text_FollowMe, MSGBOX_DEFAULT closemessage call BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor - warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR, 255, 8, 13 + warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR, 8, 13 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc index 44539747b812..fe2c6ed00f50 100644 --- a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc @@ -25,7 +25,7 @@ BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor:: waitmovement 0 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 99 call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 255, 6, 10 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 6, 10 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index ecbbafef245a..4bb6e232754d 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -159,7 +159,7 @@ BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge:: call BattleFrontier_BattlePikeLobby_EventScript_WalkToCorridor special HealPlayerParty call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR, 255, 6, 7 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR, 6, 7 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc index 15ebbeb3fd19..e0246ed57de7 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc @@ -18,7 +18,7 @@ BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom:: msgbox BattleFrontier_BattlePikeRoomFinal_Text_CongratsThisWayPlease, MSGBOX_DEFAULT closemessage releaseall - warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 5, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 5bd04bfb4035..2023d44f59c1 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -44,7 +44,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterSingleBattleRoom:: case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_WonSingleBattle BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST - warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 5, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc index ee9e548f6ebd..0c055f631507 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc @@ -16,7 +16,7 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_SetInWildMonRoom:: BattleFrontier_BattlePikeRoomWildMons_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST - warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 5, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc index 37737554f5a3..301a8f476638 100644 --- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc @@ -28,7 +28,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus:: end BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpToLobby:: - warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 5, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc index 8993418ee8b9..ebc3a8d3e390 100644 --- a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc @@ -70,7 +70,7 @@ BattleFrontier_BattlePyramid_EventScript_WarpToLobby:: pyramid_updatelight 0, PYRAMID_LIGHT_SET_RADIUS pyramid_clearhelditems special HealPlayerParty - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 255, 7, 13 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 7, 13 waitstate end @@ -102,12 +102,12 @@ BattlePyramid_WarpToNextFloor:: pyramid_seedfloor frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_RESULT, 0 - warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR, 255, 1, 1 + warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR, 1, 1 waitstate end BattlePyramid_WarpToTop:: - warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP, 255, 17, 17 + warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP, 17, 17 waitstate end diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc index c93deee3eca9..761f5f6635a1 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc @@ -173,7 +173,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_RESULT, 0 special HealPlayerParty - warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR, 255, 1, 1 + warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR, 1, 1 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc index 0c1db1eea84a..f7054d20258d 100644 --- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc @@ -93,7 +93,7 @@ BattleFrontier_BattlePyramidTop_EventScript_Attendant:: closemessage BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON - warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 255, 7, 13 + warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 7, 13 waitstate end diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc index c909239beac4..ab25442a2639 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc @@ -428,23 +428,23 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby:: goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis compare VAR_RESULT, FRONTIER_MODE_LINK_MULTIS goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 6, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 6, 6 waitstate end BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 10, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 10, 6 waitstate end BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 14, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 14, 6 waitstate end BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis:: tower_closelink - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 255, 18, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 18, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc index c09c897e9866..13abf7027808 100644 --- a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc @@ -37,7 +37,7 @@ BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor:: BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom:: setvar VAR_TEMP_0, 0 - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 255, 4, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 4, 8 waitstate end diff --git a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc index 0021b9e84206..1f7e05ca5f3c 100644 --- a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc @@ -37,23 +37,23 @@ BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom:: return BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR, 255, 8, 1 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR, 8, 1 waitstate return BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoomMulti:: goto_if_unset FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerElevator_EventScript_WarpToPartnerRoom - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 255, 7, 2 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 7, 2 waitstate return BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 255, 7, 2 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR, 7, 2 waitstate return BattleFrontier_BattleTowerElevator_EventScript_WarpToPartnerRoom:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 255, 10, 1 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 10, 1 waitstate return diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index ab2a620436cb..4d4438ae6c9f 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -615,7 +615,7 @@ BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad call BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom clearflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 255, 1, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 1, 6 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc index 70922d473cae..c977ecb5f65c 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc @@ -106,18 +106,18 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToBattleRoom:: return BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 255, 4, 8 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM, 4, 8 waitstate return BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToMultiBattleRoom:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 255, 4, 5 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 4, 5 waitstate return @ Unnecessary duplicate of the above BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom:: - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 255, 4, 5 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 4, 5 waitstate return diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc index 06038b43cd9b..3beaa38c71dd 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc @@ -108,7 +108,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator:: call BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevator closedoor 10, 1 waitdooranim - warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 255, 1, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 1, 6 waitstate releaseall end @@ -189,7 +189,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: call_if_eq BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExitSouth removeobject VAR_LAST_TALKED setflag FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER - warpsilent MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 255, 10, 3 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 10, 3 waitstate release end diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index 635b27c2cbd4..f3af2b058140 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -48,7 +48,7 @@ BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination msgbox BattleFrontier_OutsideWest_Text_PleaseBoardFerry, MSGBOX_DEFAULT call BattleFrontier_OutsideWest_EventScript_BoardFerry - warp MAP_SLATEPORT_CITY_HARBOR, 255, 8, 11 + warp MAP_SLATEPORT_CITY_HARBOR, 8, 11 waitstate release end @@ -59,7 +59,7 @@ BattleFrontier_OutsideWest_EventScript_FerryToLilycove:: goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination msgbox BattleFrontier_OutsideWest_Text_PleaseBoardFerry, MSGBOX_DEFAULT call BattleFrontier_OutsideWest_EventScript_BoardFerry - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc index 06c5b08e9dcc..8d3fa5b5e414 100644 --- a/data/maps/BirthIsland_Harbor/scripts.inc +++ b/data/maps/BirthIsland_Harbor/scripts.inc @@ -18,7 +18,7 @@ BirthIsland_Harbor_EventScript_Sailor:: hideobjectat LOCALID_SAILOR, MAP_BIRTH_ISLAND_HARBOR setvar VAR_0x8004, LOCALID_SS_TIDAL call Common_EventScript_FerryDepartIsland - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/CaveOfOrigin_Entrance/scripts.inc b/data/maps/CaveOfOrigin_Entrance/scripts.inc index 091246ae0df3..40ca7a654d3f 100644 --- a/data/maps/CaveOfOrigin_Entrance/scripts.inc +++ b/data/maps/CaveOfOrigin_Entrance/scripts.inc @@ -3,6 +3,6 @@ CaveOfOrigin_Entrance_MapScripts:: .byte 0 CaveOfOrigin_Entrance_OnResume: - setescapewarp MAP_SOOTOPOLIS_CITY, 255, 31, 17 + setescapewarp MAP_SOOTOPOLIS_CITY, 31, 17 end diff --git a/data/maps/ContestHall/scripts.inc b/data/maps/ContestHall/scripts.inc index 535e28b7892a..3dd633f8f7f0 100644 --- a/data/maps/ContestHall/scripts.inc +++ b/data/maps/ContestHall/scripts.inc @@ -418,27 +418,27 @@ ContestHall_EventScript_SetExitWarp:: return ContestHall_EventScript_SetExitWarpNormalContest:: - warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 + warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 14, 4 waitstate end ContestHall_EventScript_SetExitWarpSuperContest:: - warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 + warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 14, 4 waitstate end ContestHall_EventScript_SetExitWarpHyperContest:: - warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 + warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 14, 4 waitstate end ContestHall_EventScript_SetExitWarpMasterContest:: - warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 14, 4 + warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 14, 4 waitstate end ContestHall_EventScript_SetExitWarpLinkContest:: - warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 255, 15, 4 + warp MAP_LILYCOVE_CITY_CONTEST_LOBBY, 15, 4 waitstate end diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index 281648aeb65f..a21ebd0baf0d 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -152,7 +152,7 @@ DewfordTown_EventScript_SailToPetalburg:: hideobjectat LOCALID_BOAT_DEWFORD, MAP_DEWFORD_TOWN setvar VAR_BOARD_BRINEY_BOAT_STATE, 2 resetobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN - warp MAP_ROUTE104_MR_BRINEYS_HOUSE, 255, 5, 4 + warp MAP_ROUTE104_MR_BRINEYS_HOUSE, 5, 4 copyvar VAR_BRINEY_LOCATION, VAR_0x8008 waitstate release diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index 6b9281ae6da1..d16937151711 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -141,7 +141,7 @@ EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerExit waitmovement 0 setflag FLAG_HIDE_PETALBURG_GYM_GREETER - warp MAP_EVER_GRANDE_CITY_HALL_OF_FAME, 255, 7, 16 + warp MAP_EVER_GRANDE_CITY_HALL_OF_FAME, 7, 16 waitstate releaseall end diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index 3f51ba3935f3..7fc90e4e160b 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -71,7 +71,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty - warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 6, 6 waitstate FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @@ -142,7 +142,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: delay 60 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty - warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 6, 6 waitstate @ Unreachable code block? The flow into the next block also doesnt make sense diff --git a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc index 077cdfe7986c..023dc919f823 100644 --- a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc +++ b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc @@ -22,7 +22,7 @@ FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: closedoor 2, 1 waitdooranim setvar VAR_0x8006, 0 - warp MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM, 255, 4, 4 + warp MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM, 4, 4 waitstate releaseall end diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc index 6a2c8713fadd..d6826f037ffe 100644 --- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc +++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc @@ -161,7 +161,7 @@ FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: msgbox FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent, MSGBOX_DEFAULT closemessage call FallarborTown_BattleTentLobby_EventScript_WalkToDoor - warp MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7 + warp MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR, 2, 7 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc index 15deb95e6f69..2f4db2651c57 100644 --- a/data/maps/FarawayIsland_Entrance/scripts.inc +++ b/data/maps/FarawayIsland_Entrance/scripts.inc @@ -33,7 +33,7 @@ FarawayIsland_Entrance_EventScript_Sailor:: hideobjectat LOCALID_SAILOR, MAP_FARAWAY_ISLAND_ENTRANCE setvar VAR_0x8004, LOCALID_SS_TIDAL call Common_EventScript_FerryDepartIsland - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/GraniteCave_B1F/scripts.inc b/data/maps/GraniteCave_B1F/scripts.inc index f1b52ce6626a..24519aef6568 100644 --- a/data/maps/GraniteCave_B1F/scripts.inc +++ b/data/maps/GraniteCave_B1F/scripts.inc @@ -6,6 +6,6 @@ GraniteCave_B1F_MapScripts:: GraniteCave_B1F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_GRANITE_CAVE_B2F, 255, 0, 0 + setholewarp MAP_GRANITE_CAVE_B2F end diff --git a/data/maps/InsideOfTruck/scripts.inc b/data/maps/InsideOfTruck/scripts.inc index 3068b11841c5..472e27e36f0f 100644 --- a/data/maps/InsideOfTruck/scripts.inc +++ b/data/maps/InsideOfTruck/scripts.inc @@ -32,7 +32,7 @@ InsideOfTruck_EventScript_SetIntroFlagsMale:: setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL setvar VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 1 - setdynamicwarp MAP_LITTLEROOT_TOWN, 255, 3, 10 + setdynamicwarp MAP_LITTLEROOT_TOWN, 3, 10 releaseall end @@ -45,7 +45,7 @@ InsideOfTruck_EventScript_SetIntroFlagsFemale:: setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL setvar VAR_LITTLEROOT_HOUSES_STATE_MAY, 1 - setdynamicwarp MAP_LITTLEROOT_TOWN, 255, 12, 10 + setdynamicwarp MAP_LITTLEROOT_TOWN, 12, 10 releaseall end diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index c572fdc02bda..94ccc21bd40a 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -384,31 +384,31 @@ LilycoveCity_ContestLobby_EventScript_WarpToContestHall:: return LilycoveCity_ContestLobby_EventScript_WarpToCoolContestHall:: - setwarp MAP_CONTEST_HALL_COOL, 255, 7, 5 + setwarp MAP_CONTEST_HALL_COOL, 7, 5 special DoContestHallWarp waitstate return LilycoveCity_ContestLobby_EventScript_WarpToBeautyContestHall:: - setwarp MAP_CONTEST_HALL_BEAUTY, 255, 7, 5 + setwarp MAP_CONTEST_HALL_BEAUTY, 7, 5 special DoContestHallWarp waitstate return LilycoveCity_ContestLobby_EventScript_WarpToCuteContestHall:: - setwarp MAP_CONTEST_HALL_CUTE, 255, 7, 5 + setwarp MAP_CONTEST_HALL_CUTE, 7, 5 special DoContestHallWarp waitstate return LilycoveCity_ContestLobby_EventScript_WarpToSmartContestHall:: - setwarp MAP_CONTEST_HALL_SMART, 255, 7, 5 + setwarp MAP_CONTEST_HALL_SMART, 7, 5 special DoContestHallWarp waitstate return LilycoveCity_ContestLobby_EventScript_WarpToToughContestHall:: - setwarp MAP_CONTEST_HALL_TOUGH, 255, 7, 5 + setwarp MAP_CONTEST_HALL_TOUGH, 7, 5 special DoContestHallWarp waitstate return diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc index b6ad2e4e6f5e..3e7c4c4f66b7 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc @@ -59,7 +59,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_1F - setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F, 255, 2, 1 + setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator @@ -69,7 +69,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_2F - setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F, 255, 2, 1 + setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator @@ -79,7 +79,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_3F - setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F, 255, 2, 1 + setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator @@ -89,7 +89,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_4F - setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F, 255, 2, 1 + setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator @@ -99,7 +99,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_5F - setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F, 255, 2, 1 + setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F, 2, 1 compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index a22e8302934f..d8dfa0f218fd 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -8,7 +8,7 @@ LilycoveCity_Harbor_MapScripts:: .byte 0 LilycoveCity_Harbor_OnTransition: - setescapewarp MAP_LILYCOVE_CITY, 255, 12, 33 + setescapewarp MAP_LILYCOVE_CITY, 12, 33 end LilycoveCity_Harbor_EventScript_FerryAttendant:: @@ -64,28 +64,28 @@ LilycoveCity_Harbor_EventScript_FerryRegularLocationSelect:: LilycoveCity_Harbor_EventScript_GoToSouthernIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_SOUTHERN_ISLAND_EXTERIOR, 255, 13, 22 + warp MAP_SOUTHERN_ISLAND_EXTERIOR, 13, 22 waitstate release end LilycoveCity_Harbor_EventScript_GoToNavelRock:: call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_NAVEL_ROCK_HARBOR, 255, 8, 4 + warp MAP_NAVEL_ROCK_HARBOR, 8, 4 waitstate release end LilycoveCity_Harbor_EventScript_GoToBirthIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_BIRTH_ISLAND_HARBOR, 255, 8, 4 + warp MAP_BIRTH_ISLAND_HARBOR, 8, 4 waitstate release end LilycoveCity_Harbor_EventScript_GoToFarawayIsland:: call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_FARAWAY_ISLAND_ENTRANCE, 255, 13, 38 + warp MAP_FARAWAY_ISLAND_ENTRANCE, 13, 38 waitstate release end @@ -96,7 +96,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateport:: goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_LILYCOVE call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_SS_TIDAL_CORRIDOR, 255, 1, 10 + warp MAP_SS_TIDAL_CORRIDOR, 1, 10 waitstate release end @@ -106,7 +106,7 @@ LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 255, 19, 67 + warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate release end @@ -223,7 +223,7 @@ LilycoveCity_Harbor_EventScript_EonTicketFirstTime:: LilycoveCity_Harbor_EventScript_GoToSouthernIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor - warp MAP_SOUTHERN_ISLAND_EXTERIOR, 255, 13, 22 + warp MAP_SOUTHERN_ISLAND_EXTERIOR, 13, 22 waitstate release end @@ -240,7 +240,7 @@ LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime:: LilycoveCity_Harbor_EventScript_GoToBirthIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor - warp MAP_BIRTH_ISLAND_HARBOR, 255, 8, 4 + warp MAP_BIRTH_ISLAND_HARBOR, 8, 4 waitstate release end @@ -281,7 +281,7 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: call_if_eq LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast setvar VAR_0x8004, LOCALID_SS_TIDAL call Common_EventScript_FerryDepart - warp MAP_FARAWAY_ISLAND_ENTRANCE, 255, 13, 38 + warp MAP_FARAWAY_ISLAND_ENTRANCE, 13, 38 waitstate release end @@ -289,7 +289,7 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: LilycoveCity_Harbor_EventScript_GoToFarawayIslandFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor - warp MAP_FARAWAY_ISLAND_ENTRANCE, 255, 13, 38 + warp MAP_FARAWAY_ISLAND_ENTRANCE, 13, 38 waitstate release end @@ -306,7 +306,7 @@ LilycoveCity_Harbor_EventScript_MysticTicketFirstTime:: LilycoveCity_Harbor_EventScript_GoToNavelRockFirstTime:: closemessage call LilycoveCity_Harbor_EventScript_BoardFerryWithSailor - warp MAP_NAVEL_ROCK_HARBOR, 255, 8, 4 + warp MAP_NAVEL_ROCK_HARBOR, 8, 4 waitstate release end @@ -399,7 +399,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_LILYCOVE call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_SS_TIDAL_CORRIDOR, 255, 1, 10 + warp MAP_SS_TIDAL_CORRIDOR, 1, 10 waitstate release end @@ -410,7 +410,7 @@ LilycoveCity_Harbor_EventScript_GoToBattleFrontierUnused:: compare VAR_RESULT, NO goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind call LilycoveCity_Harbor_EventScript_BoardFerry - warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 255, 19, 67 + warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate release end diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc index e5d855633eb9..12c4ead3ee4d 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc @@ -52,7 +52,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth waitmovement 0 - warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 255, 11, 8 + warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8 waitstate end @@ -60,7 +60,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest waitmovement 0 - warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 255, 11, 8 + warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8 waitstate end @@ -68,7 +68,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast:: lockall applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast waitmovement 0 - warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 255, 11, 8 + warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8 waitstate end diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc index 1936b5ad8303..f8a7244bf6bf 100644 --- a/data/maps/LittlerootTown/scripts.inc +++ b/data/maps/LittlerootTown/scripts.inc @@ -129,7 +129,7 @@ LittlerootTown_EventScript_StepOffTruckMale:: setvar VAR_0x8005, 8 call LittlerootTown_EventScript_GoInsideWithMom setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_TRUCK - warpsilent MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F, 255, 8, 8 + warpsilent MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F, 8, 8 waitstate releaseall end @@ -140,7 +140,7 @@ LittlerootTown_EventScript_StepOffTruckFemale:: setvar VAR_0x8005, 8 call LittlerootTown_EventScript_GoInsideWithMom setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_TRUCK - warpsilent MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F, 255, 2, 8 + warpsilent MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F, 2, 8 waitstate releaseall end @@ -230,7 +230,7 @@ LittlerootTown_EventScript_BeginDexUpgradeScene:: clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCH delay 20 clearflag FLAG_HIDE_MAP_NAME_POPUP - warp MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, 255, 6, 5 + warp MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, 6, 5 waitstate releaseall end diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index 2e4ff739d133..95399eaeaa04 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -70,7 +70,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs applymovement LOCALID_MOM, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs waitmovement 0 - warp MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F, 255, 7, 1 + warp MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F, 7, 1 waitstate releaseall end diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index 5fcec19512b1..2a73a94c8fcd 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -69,7 +69,7 @@ LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock:: applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs applymovement LOCALID_MOM, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs waitmovement 0 - warp MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F, 255, 1, 1 + warp MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F, 1, 1 waitstate releaseall end diff --git a/data/maps/MarineCave_Entrance/scripts.inc b/data/maps/MarineCave_Entrance/scripts.inc index a075d2c30d69..172a19d26c56 100644 --- a/data/maps/MarineCave_Entrance/scripts.inc +++ b/data/maps/MarineCave_Entrance/scripts.inc @@ -3,6 +3,6 @@ MarineCave_Entrance_MapScripts:: .byte 0 MarineCave_Entrance_OnResume: - setdivewarp MAP_UNDERWATER_MARINE_CAVE, 255, 9, 6 + setdivewarp MAP_UNDERWATER_MARINE_CAVE, 9, 6 end diff --git a/data/maps/MirageTower_2F/scripts.inc b/data/maps/MirageTower_2F/scripts.inc index 3d53359d4c14..39d2be7f43bc 100644 --- a/data/maps/MirageTower_2F/scripts.inc +++ b/data/maps/MirageTower_2F/scripts.inc @@ -6,6 +6,6 @@ MirageTower_2F_MapScripts:: MirageTower_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_MIRAGE_TOWER_1F, 255, 0, 0 + setholewarp MAP_MIRAGE_TOWER_1F end diff --git a/data/maps/MirageTower_3F/scripts.inc b/data/maps/MirageTower_3F/scripts.inc index 02b08640083e..1b2f04aeee05 100644 --- a/data/maps/MirageTower_3F/scripts.inc +++ b/data/maps/MirageTower_3F/scripts.inc @@ -6,6 +6,6 @@ MirageTower_3F_MapScripts:: MirageTower_3F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_MIRAGE_TOWER_2F, 255, 0, 0 + setholewarp MAP_MIRAGE_TOWER_2F end diff --git a/data/maps/MirageTower_4F/scripts.inc b/data/maps/MirageTower_4F/scripts.inc index 2c96710d13e7..8d88c699042a 100644 --- a/data/maps/MirageTower_4F/scripts.inc +++ b/data/maps/MirageTower_4F/scripts.inc @@ -57,7 +57,7 @@ MirageTower_4F_EventScript_CollapseMirageTower:: waitstate setvar VAR_MIRAGE_TOWER_STATE, 1 clearflag FLAG_LANDMARK_MIRAGE_TOWER - warp MAP_ROUTE111, 255, 19, 59 + warp MAP_ROUTE111, 19, 59 waitstate release end diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc index 22c2e17ab915..d6df2b3807d3 100644 --- a/data/maps/MossdeepCity_Gym/scripts.inc +++ b/data/maps/MossdeepCity_Gym/scripts.inc @@ -201,7 +201,7 @@ MossdeepCity_Gym_EventScript_ClearSwitch4:: MossdeepCity_Gym_EventScript_WarpToEntrance:: lockall - warpmossdeepgym MAP_MOSSDEEP_CITY_GYM, 255, 7, 30 + warpmossdeepgym MAP_MOSSDEEP_CITY_GYM, 7, 30 waitstate releaseall end diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc index 044979c123c3..02278a13b9cc 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc @@ -54,7 +54,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts:: closemessage applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_SpaceCenter_2F_Movement_PlayerExit waitmovement 0 - warp MAP_MOSSDEEP_CITY_SPACE_CENTER_1F, 255, 13, 1 + warp MAP_MOSSDEEP_CITY_SPACE_CENTER_1F, 13, 1 waitstate releaseall end diff --git a/data/maps/MtPyre_2F/scripts.inc b/data/maps/MtPyre_2F/scripts.inc index 9fe7bf9d2f98..381d0345963f 100644 --- a/data/maps/MtPyre_2F/scripts.inc +++ b/data/maps/MtPyre_2F/scripts.inc @@ -6,7 +6,7 @@ MtPyre_2F_MapScripts:: MtPyre_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_MT_PYRE_1F, 255, 0, 0 + setholewarp MAP_MT_PYRE_1F end MtPyre_2F_EventScript_Woman:: diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc index b12e62248f21..759434cde3c9 100644 --- a/data/maps/NavelRock_Harbor/scripts.inc +++ b/data/maps/NavelRock_Harbor/scripts.inc @@ -18,7 +18,7 @@ NavelRock_Harbor_EventScript_Sailor:: hideobjectat LOCALID_SAILOR, MAP_NAVEL_ROCK_HARBOR setvar VAR_0x8004, LOCALID_SS_TIDAL call Common_EventScript_FerryDepartIsland - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc index a77939c4de13..25b39a3eb00a 100644 --- a/data/maps/PetalburgCity/scripts.inc +++ b/data/maps/PetalburgCity/scripts.inc @@ -60,7 +60,7 @@ PetalburgCity_EventScript_WallyTutorial:: clearflag FLAG_DONT_TRANSITION_MUSIC special LoadPlayerParty setvar VAR_PETALBURG_GYM_STATE, 1 - warp MAP_PETALBURG_CITY_GYM, 255, 4, 108 + warp MAP_PETALBURG_CITY_GYM, 4, 108 waitstate releaseall end @@ -85,7 +85,7 @@ PetalburgCity_EventScript_WalkToWallyHouse:: clearflag FLAG_HIDE_MAP_NAME_POPUP fadedefaultbgm clearflag FLAG_DONT_TRANSITION_MUSIC - warp MAP_PETALBURG_CITY_WALLYS_HOUSE, 255, 2, 4 + warp MAP_PETALBURG_CITY_WALLYS_HOUSE, 2, 4 waitstate releaseall end diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index bbb329462781..6c8da5847a72 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -220,7 +220,7 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial:: clearflag FLAG_HIDE_PETALBURG_GYM_WALLY setflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL special InitBirchState - warp MAP_PETALBURG_CITY, 255, 15, 8 + warp MAP_PETALBURG_CITY, 15, 8 waitstate release end @@ -497,7 +497,7 @@ PetalburgCity_Gym_EventScript_WallysDadArrives:: removeobject LOCALID_WALLYS_DAD setvar VAR_PETALBURG_CITY_STATE, 4 clearflag FLAG_HIDE_PETALBURG_CITY_WALLYS_DAD - warp MAP_PETALBURG_CITY, 255, 15, 8 + warp MAP_PETALBURG_CITY, 15, 8 waitstate release end @@ -796,7 +796,7 @@ PetalburgCity_Gym_EventScript_SpeedRoomDoor:: PetalburgCity_Gym_EventScript_EnterRoom:: closemessage delay 30 - warpdoor MAP_PETALBURG_CITY_GYM, 255, VAR_0x8008, VAR_0x8009 + warpdoor MAP_PETALBURG_CITY_GYM, VAR_0x8008, VAR_0x8009 waitstate releaseall end diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index a41bc2fcbc19..02071aad11ee 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -245,7 +245,7 @@ Route101_EventScript_BirchsBag:: call_if_eq Route101_EventScript_HideMayInBedroom compare VAR_RESULT, FEMALE call_if_eq Route101_EventScript_HideBrendanInBedroom - warp MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, 255, 6, 5 + warp MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, 6, 5 waitstate release end diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc index f2e169d10549..ed2a5d7174d4 100644 --- a/data/maps/Route104_MrBrineysHouse/scripts.inc +++ b/data/maps/Route104_MrBrineysHouse/scripts.inc @@ -86,7 +86,7 @@ Route104_MrBrineysHouse_EventScript_SailToDewford:: setvar VAR_ROUTE104_STATE, 2 setflag FLAG_HIDE_RUSTBORO_CITY_RIVAL setflag FLAG_HIDE_ROUTE_104_RIVAL - warp MAP_ROUTE104, 255, 13, 51 + warp MAP_ROUTE104, 13, 51 waitstate releaseall end diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index e756feadca51..ef8e45b45ed1 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -269,7 +269,7 @@ Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion closemessage setvar VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1 - warpsilent MAP_ROUTE110_TRICK_HOUSE_ENTRANCE, 255, 6, 2 + warpsilent MAP_ROUTE110_TRICK_HOUSE_ENTRANCE, 6, 2 waitstate releaseall end @@ -535,49 +535,49 @@ Route110_TrickHouseEntrance_Movement_EnterRoom: step_end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE1, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE1, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom2:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE2, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE2, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom3:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE3, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE3, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom4:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE4, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE4, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom5:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom6:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE6, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE6, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom7:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8:: - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE8, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE8, 0, 21 waitstate releaseall end diff --git a/data/maps/Route110_TrickHousePuzzle5/scripts.inc b/data/maps/Route110_TrickHousePuzzle5/scripts.inc index 3c574441ec92..c15c4ee7304c 100644 --- a/data/maps/Route110_TrickHousePuzzle5/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle5/scripts.inc @@ -465,7 +465,7 @@ Route110_TrickHousePuzzle5_EventScript_IncorrectAnswer:: waitmovement 0 msgbox Route110_TrickHousePuzzle5_Text_WaitForNextChallenge, MSGBOX_DEFAULT closemessage - warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 255, 0, 21 + warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 0, 21 waitstate releaseall end diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc index b0f1cbea12d8..1890eb2c4897 100644 --- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc @@ -113,7 +113,7 @@ Route110_TrickHousePuzzle7_EventScript_FoundScroll:: Route110_TrickHousePuzzle7_EventScript_TeleportPad:: lockall setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 - warpteleport MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 255, 3, 19 + warpteleport MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 3, 19 waitstate releaseall end diff --git a/data/maps/Route112_CableCarStation/scripts.inc b/data/maps/Route112_CableCarStation/scripts.inc index 86fe61a05b80..0fcbc0a34f68 100644 --- a/data/maps/Route112_CableCarStation/scripts.inc +++ b/data/maps/Route112_CableCarStation/scripts.inc @@ -6,7 +6,7 @@ Route112_CableCarStation_MapScripts:: .byte 0 Route112_CableCarStation_OnTransition: - setescapewarp MAP_ROUTE112, 255, 28, 28 + setescapewarp MAP_ROUTE112, 28, 28 compare VAR_CABLE_CAR_STATION_STATE, 2 call_if_eq Route112_CableCarStation_EventScript_MoveAttendantAside end diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc index 1a0102cf4ea3..5050612f74c5 100644 --- a/data/maps/Route121_SafariZoneEntrance/scripts.inc +++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc @@ -80,7 +80,7 @@ Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: special EnterSafariMode setvar VAR_SAFARI_ZONE_STATE, 2 clearflag FLAG_GOOD_LUCK_SAFARI_ZONE - warp MAP_SAFARI_ZONE_SOUTH, 255, 32, 33 + warp MAP_SAFARI_ZONE_SOUTH, 32, 33 waitstate end diff --git a/data/maps/Route134/scripts.inc b/data/maps/Route134/scripts.inc index 043835373e6a..226135c1d5d4 100644 --- a/data/maps/Route134/scripts.inc +++ b/data/maps/Route134/scripts.inc @@ -3,7 +3,7 @@ Route134_MapScripts:: .byte 0 Route134_OnResume: - setdivewarp MAP_UNDERWATER_ROUTE134, 255, 8, 6 + setdivewarp MAP_UNDERWATER_ROUTE134, 8, 6 end Route134_EventScript_Jack:: diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc index 8d286d5de2fd..48c413b0422d 100644 --- a/data/maps/RustboroCity/scripts.inc +++ b/data/maps/RustboroCity/scripts.inc @@ -621,7 +621,7 @@ RustboroCity_EventScript_ReturnGoods:: setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1 setvar VAR_RUSTBORO_CITY_STATE, 5 delay 30 - warp MAP_RUSTBORO_CITY_DEVON_CORP_3F, 255, 2, 2 + warp MAP_RUSTBORO_CITY_DEVON_CORP_3F, 2, 2 waitstate releaseall end diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc index 4aa94de2373f..c99d3ad03360 100644 --- a/data/maps/SSTidalCorridor/scripts.inc +++ b/data/maps/SSTidalCorridor/scripts.inc @@ -129,7 +129,7 @@ SSTidalCorridor_EventScript_ExitLilycove:: setrespawn HEAL_LOCATION_LILYCOVE_CITY msgbox SSTidalCorridor_Text_WeveArrived, MSGBOX_DEFAULT call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_HideSnatchGiver - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end @@ -138,7 +138,7 @@ SSTidalCorridor_EventScript_ExitSlateport:: setrespawn HEAL_LOCATION_SLATEPORT_CITY msgbox SSTidalCorridor_Text_WeveArrived, MSGBOX_DEFAULT call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_HideSnatchGiver - warp MAP_SLATEPORT_CITY_HARBOR, 255, 8, 11 + warp MAP_SLATEPORT_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc index 791572fe0c7e..c361d9f2eb91 100644 --- a/data/maps/SafariZone_South/scripts.inc +++ b/data/maps/SafariZone_South/scripts.inc @@ -94,7 +94,7 @@ SafariZone_South_EventScript_ExitEarlyEast:: SafariZone_South_EventScript_Exit:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode - warpdoor MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 + warpdoor MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 2, 5 waitstate end diff --git a/data/maps/SeafloorCavern_Entrance/scripts.inc b/data/maps/SeafloorCavern_Entrance/scripts.inc index a4c621e3e0e2..a999c4a152bf 100644 --- a/data/maps/SeafloorCavern_Entrance/scripts.inc +++ b/data/maps/SeafloorCavern_Entrance/scripts.inc @@ -5,8 +5,8 @@ SeafloorCavern_Entrance_MapScripts:: .byte 0 SeafloorCavern_Entrance_OnResume: - setdivewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 255, 6, 5 - setescapewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 255, 6, 5 + setdivewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 6, 5 + setescapewarp MAP_UNDERWATER_SEAFLOOR_CAVERN, 6, 5 end SeafloorCavern_Entrance_EventScript_Grunt:: diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc index 3db2348a4a89..63e6baf3c77e 100644 --- a/data/maps/SeafloorCavern_Room9/scripts.inc +++ b/data/maps/SeafloorCavern_Room9/scripts.inc @@ -145,7 +145,7 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre:: setflag FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE setflag FLAG_HIDE_SEAFLOOR_CAVERN_AQUA_GRUNTS setflag FLAG_HIDE_MAP_NAME_POPUP - warp MAP_ROUTE128, 255, 38, 22 + warp MAP_ROUTE128, 38, 22 waitstate releaseall end diff --git a/data/maps/SealedChamber_OuterRoom/scripts.inc b/data/maps/SealedChamber_OuterRoom/scripts.inc index 7d57ea544941..0a8c3aa4aff6 100644 --- a/data/maps/SealedChamber_OuterRoom/scripts.inc +++ b/data/maps/SealedChamber_OuterRoom/scripts.inc @@ -5,8 +5,8 @@ SealedChamber_OuterRoom_MapScripts:: .byte 0 SealedChamber_OuterRoom_OnResume: - setdivewarp MAP_UNDERWATER_SEALED_CHAMBER, 255, 12, 44 - setescapewarp MAP_UNDERWATER_SEALED_CHAMBER, 255, 12, 44 + setdivewarp MAP_UNDERWATER_SEALED_CHAMBER, 12, 44 + setescapewarp MAP_UNDERWATER_SEALED_CHAMBER, 12, 44 end SealedChamber_OuterRoom_OnTransition: diff --git a/data/maps/SkyPillar_2F/scripts.inc b/data/maps/SkyPillar_2F/scripts.inc index 9990ebba9668..ba2fe889be8b 100644 --- a/data/maps/SkyPillar_2F/scripts.inc +++ b/data/maps/SkyPillar_2F/scripts.inc @@ -16,6 +16,6 @@ SkyPillar_2F_EventScript_CleanFloor:: SkyPillar_2F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_SKY_PILLAR_1F, 255, 0, 0 + setholewarp MAP_SKY_PILLAR_1F end diff --git a/data/maps/SkyPillar_4F/scripts.inc b/data/maps/SkyPillar_4F/scripts.inc index bed91a1751f8..b3ff931ad45a 100644 --- a/data/maps/SkyPillar_4F/scripts.inc +++ b/data/maps/SkyPillar_4F/scripts.inc @@ -16,6 +16,6 @@ SkyPillar_4F_EventScript_CleanFloor:: SkyPillar_4F_SetHoleWarp: setstepcallback STEP_CB_CRACKED_FLOOR - setholewarp MAP_SKY_PILLAR_3F, 255, 0, 0 + setholewarp MAP_SKY_PILLAR_3F end diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 3e8648531f7b..693a99e49aa8 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -635,7 +635,7 @@ SlateportCity_EventScript_CaptStern:: clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE setvar VAR_SLATEPORT_CITY_STATE, 2 - warp MAP_SLATEPORT_CITY_HARBOR, 255, 11, 14 + warp MAP_SLATEPORT_CITY_HARBOR, 11, 14 waitstate releaseall end diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc index 06052e145141..285c567ec301 100644 --- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc +++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc @@ -68,7 +68,7 @@ SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: SlateportCity_BattleTent_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty - warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 6, 6 waitstate @ forced stop @@ -79,14 +79,14 @@ SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: switch VAR_RESULT case 3, SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon setvar VAR_0x8006, 1 - warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 3 + warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 2, 3 waitstate @ forced stop SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty - warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 6, 6 waitstate @ forced stop diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index 37b0f6fc88f8..309b709d1af5 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -52,7 +52,7 @@ SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: waitmovement 0 closedoor 2, 1 waitdooranim - warp MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM, 255, 4, 4 + warp MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM, 4, 4 waitstate end diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc index 8361cdfcc37b..7ed9420b0e88 100644 --- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc +++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc @@ -134,7 +134,7 @@ SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: msgbox SlateportCity_BattleTentLobby_Text_StepThisWay, MSGBOX_DEFAULT closemessage call SlateportCity_BattleTentLobby_EventScript_WalkToDoor - warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 7 + warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 2, 7 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index 0cc07b73f310..ff1315923e21 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -9,7 +9,7 @@ SlateportCity_Harbor_MapScripts:: .byte 0 SlateportCity_Harbor_OnTransition: - setescapewarp MAP_SLATEPORT_CITY, 255, 28, 13 + setescapewarp MAP_SLATEPORT_CITY, 28, 13 setvar VAR_TEMP_1, 0 compare VAR_SLATEPORT_HARBOR_STATE, 1 call_if_eq SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene @@ -210,7 +210,7 @@ SlateportCity_Harbor_EventScript_Lilycove:: goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_SLATEPORT call SlateportCity_Harbor_EventScript_BoardFerry - warp MAP_SS_TIDAL_CORRIDOR, 255, 1, 10 + warp MAP_SS_TIDAL_CORRIDOR, 1, 10 waitstate release end @@ -220,7 +220,7 @@ SlateportCity_Harbor_EventScript_BattleFrontier:: compare VAR_RESULT, NO goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination call SlateportCity_Harbor_EventScript_BoardFerry - warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 255, 19, 67 + warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate release end diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index f3f8ea024a85..0a2d4b44752a 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -206,7 +206,7 @@ SootopolisCity_EventScript_PlayerFaceLegendaries2:: return SootopolisCity_OnResume: - setdivewarp MAP_UNDERWATER_SOOTOPOLIS_CITY, 255, 9, 6 + setdivewarp MAP_UNDERWATER_SOOTOPOLIS_CITY, 9, 6 end SootopolisCity_OnFrame: @@ -565,7 +565,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: fadenewbgm MUS_SOOTOPOLIS delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warpsootopolislegend MAP_SOOTOPOLIS_CITY, 255, 43, 32 + warpsootopolislegend MAP_SOOTOPOLIS_CITY, 43, 32 waitstate end @@ -618,7 +618,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: fadenewbgm MUS_SURF delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warpsootopolislegend MAP_SOOTOPOLIS_CITY, 255, 29, 53 + warpsootopolislegend MAP_SOOTOPOLIS_CITY, 29, 53 waitstate end @@ -1003,7 +1003,7 @@ SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin:: setflag FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerEnterCaveOfOrigin waitmovement 0 - warp MAP_CAVE_OF_ORIGIN_ENTRANCE, 255, 9, 20 + warp MAP_CAVE_OF_ORIGIN_ENTRANCE, 9, 20 waitstate end @@ -1460,7 +1460,7 @@ SootopolisCity_EventScript_MaxieArchieLeave:: clearflag FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE clearflag FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE setvar VAR_MT_PYRE_STATE, 2 - warpsilent MAP_SOOTOPOLIS_CITY, 255, 31, 34 + warpsilent MAP_SOOTOPOLIS_CITY, 31, 34 waitstate releaseall end diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc index 1fb8a8f723f2..70dbc98aa525 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc @@ -115,7 +115,7 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting:: call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast compare VAR_FACING, DIR_WEST call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest - warp MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F, 255, 3, 1 + warp MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F, 3, 1 waitstate release end diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc index f0ebbf516fcc..93f008925189 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc @@ -34,7 +34,7 @@ SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer:: waitmovement 0 special LoadPlayerParty setvar VAR_TEMP_1, 1 - warp MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F, 255, 3, 1 + warp MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F, 3, 1 waitstate releaseall end diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc index b491c2f6c51e..e40c7819ed9a 100644 --- a/data/maps/SouthernIsland_Exterior/scripts.inc +++ b/data/maps/SouthernIsland_Exterior/scripts.inc @@ -23,7 +23,7 @@ SouthernIsland_Exterior_EventScript_Sailor:: hideobjectat LOCALID_SAILOR, MAP_SOUTHERN_ISLAND_EXTERIOR setvar VAR_0x8004, LOCALID_SS_TIDAL call Common_EventScript_FerryDepartIsland - warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 + warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 waitstate release end diff --git a/data/maps/TrainerHill_Elevator/scripts.inc b/data/maps/TrainerHill_Elevator/scripts.inc index f4ebc7ea918c..05878fe8565c 100644 --- a/data/maps/TrainerHill_Elevator/scripts.inc +++ b/data/maps/TrainerHill_Elevator/scripts.inc @@ -15,7 +15,7 @@ TrainerHill_Elevator_EventScript_ExitToRoof:: applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof waitmovement 0 releaseall - warp MAP_TRAINER_HILL_ROOF, 255, 15, 5 + warp MAP_TRAINER_HILL_ROOF, 15, 5 waitstate end @@ -37,7 +37,7 @@ TrainerHill_Elevator_EventScript_EnterElevator:: delay 25 applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevator waitmovement 0 - warp MAP_TRAINER_HILL_ENTRANCE, 255, 17, 8 + warp MAP_TRAINER_HILL_ENTRANCE, 17, 8 waitstate end diff --git a/data/maps/Underwater_MarineCave/scripts.inc b/data/maps/Underwater_MarineCave/scripts.inc index cbd158e27316..6c876283516a 100644 --- a/data/maps/Underwater_MarineCave/scripts.inc +++ b/data/maps/Underwater_MarineCave/scripts.inc @@ -8,6 +8,6 @@ Underwater_MarineCave_OnTransition: end Underwater_MarineCave_OnResume: - setdivewarp MAP_MARINE_CAVE_ENTRANCE, 255, 10, 17 + setdivewarp MAP_MARINE_CAVE_ENTRANCE, 10, 17 end diff --git a/data/maps/Underwater_Route134/scripts.inc b/data/maps/Underwater_Route134/scripts.inc index 909b2f8b10d0..b5ab48e26ac3 100644 --- a/data/maps/Underwater_Route134/scripts.inc +++ b/data/maps/Underwater_Route134/scripts.inc @@ -3,6 +3,6 @@ Underwater_Route134_MapScripts:: .byte 0 Underwater_Route134_OnResume: - setdivewarp MAP_ROUTE134, 255, 60, 31 + setdivewarp MAP_ROUTE134, 60, 31 end diff --git a/data/maps/Underwater_SeafloorCavern/scripts.inc b/data/maps/Underwater_SeafloorCavern/scripts.inc index 2e0613c04cbd..c4931c1ad006 100644 --- a/data/maps/Underwater_SeafloorCavern/scripts.inc +++ b/data/maps/Underwater_SeafloorCavern/scripts.inc @@ -33,7 +33,7 @@ Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles:: return Underwater_SeafloorCavern_OnResume: - setdivewarp MAP_SEAFLOOR_CAVERN_ENTRANCE, 255, 10, 17 + setdivewarp MAP_SEAFLOOR_CAVERN_ENTRANCE, 10, 17 end Underwater_SeafloorCavern_EventScript_CheckStolenSub:: diff --git a/data/maps/Underwater_SealedChamber/scripts.inc b/data/maps/Underwater_SealedChamber/scripts.inc index 2b3fe5e0de24..f670cce0b87b 100644 --- a/data/maps/Underwater_SealedChamber/scripts.inc +++ b/data/maps/Underwater_SealedChamber/scripts.inc @@ -11,11 +11,11 @@ Underwater_SealedChamber_OnDive: goto Underwater_SealedChamber_EventScript_SurfaceSealedChamber Underwater_SealedChamber_EventScript_SurfaceRoute134:: - setdivewarp MAP_ROUTE134, 255, 60, 31 + setdivewarp MAP_ROUTE134, 60, 31 end Underwater_SealedChamber_EventScript_SurfaceSealedChamber:: - setdivewarp MAP_SEALED_CHAMBER_OUTER_ROOM, 255, 10, 19 + setdivewarp MAP_SEALED_CHAMBER_OUTER_ROOM, 10, 19 end Underwater_SealedChamber_EventScript_Braille:: diff --git a/data/maps/Underwater_SootopolisCity/scripts.inc b/data/maps/Underwater_SootopolisCity/scripts.inc index 4346c284fac9..8bf30560ca29 100644 --- a/data/maps/Underwater_SootopolisCity/scripts.inc +++ b/data/maps/Underwater_SootopolisCity/scripts.inc @@ -3,6 +3,6 @@ Underwater_SootopolisCity_MapScripts:: .byte 0 Underwater_SootopolisCity_OnResume: - setdivewarp MAP_SOOTOPOLIS_CITY, 255, 29, 53 + setdivewarp MAP_SOOTOPOLIS_CITY, 29, 53 end diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index b349a395cf09..badbe1849061 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -59,7 +59,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST special LoadPlayerParty - warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 6, 6 waitstate VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @@ -120,7 +120,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON special LoadPlayerParty - warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6 + warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 6, 6 waitstate VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc index c2e9dbd6a724..debf1b177f37 100644 --- a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc @@ -22,7 +22,7 @@ VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: closedoor 2, 1 waitdooranim setvar VAR_0x8006, 0 - warp MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM, 255, 6, 5 + warp MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM, 6, 5 waitstate releaseall end diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc index dd8f0eaa4524..4f863f1719e7 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc @@ -162,7 +162,7 @@ VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: msgbox VerdanturfTown_BattleTentLobby_Text_NowFollowMe, MSGBOX_DEFAULT closemessage call VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor - warp MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7 + warp MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR, 2, 7 setvar VAR_TEMP_0, 0 waitstate end diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc index 9af24c45d52f..bc4a867e3372 100644 --- a/data/scripts/abnormal_weather.inc +++ b/data/scripts/abnormal_weather.inc @@ -394,33 +394,33 @@ AbnormalWeather_Underwater_SetupEscapeWarp:: return AbnormalWeather_Underwater_SetupEscapeWarpRoute105North:: - setescapewarp MAP_ROUTE105, 255, 11, 29 + setescapewarp MAP_ROUTE105, 11, 29 return AbnormalWeather_Underwater_SetupEscapeWarpRoute105South:: - setescapewarp MAP_ROUTE105, 255, 21, 54 + setescapewarp MAP_ROUTE105, 21, 54 return AbnormalWeather_Underwater_SetupEscapeWarpRoute125West:: - setescapewarp MAP_ROUTE125, 255, 9, 17 + setescapewarp MAP_ROUTE125, 9, 17 return AbnormalWeather_Underwater_SetupEscapeWarpRoute125East:: - setescapewarp MAP_ROUTE125, 255, 54, 19 + setescapewarp MAP_ROUTE125, 54, 19 return AbnormalWeather_Underwater_SetupEscapeWarpRoute127North:: - setescapewarp MAP_ROUTE127, 255, 58, 10 + setescapewarp MAP_ROUTE127, 58, 10 return AbnormalWeather_Underwater_SetupEscapeWarpRoute127South:: - setescapewarp MAP_ROUTE127, 255, 62, 31 + setescapewarp MAP_ROUTE127, 62, 31 return AbnormalWeather_Underwater_SetupEscapeWarpRoute129West:: - setescapewarp MAP_ROUTE129, 255, 17, 15 + setescapewarp MAP_ROUTE129, 17, 15 return AbnormalWeather_Underwater_SetupEscapeWarpRoute129East:: - setescapewarp MAP_ROUTE129, 255, 43, 20 + setescapewarp MAP_ROUTE129, 43, 20 return diff --git a/data/scripts/battle_pike.inc b/data/scripts/battle_pike.inc index 3260bcfd829f..e11f997626c6 100644 --- a/data/scripts/battle_pike.inc +++ b/data/scripts/battle_pike.inc @@ -114,7 +114,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL, 255, 4, 7 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL, 4, 7 waitstate end @@ -122,7 +122,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpWildMonRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS, 255, 4, 19 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS, 4, 19 waitstate end @@ -184,14 +184,14 @@ BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL, 255, 2, 7 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL, 2, 7 return BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer waitmovement 0 call BattleFrontier_BattlePike_EventScript_CloseCurtain - warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 255, 6, 10 + warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 6, 10 return BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: @@ -230,7 +230,7 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_NoTurningBack:: BattleFrontier_BattlePike_EventScript_Retire:: frontier_set FRONTIER_DATA_CHALLENGE_STATUS CHALLENGE_STATUS_LOST - warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 + warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 5, 6 waitstate end diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index ea9a2b4e3fd9..714792fc6939 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -388,7 +388,7 @@ CableClub_EventScript_EnterColosseum:: compare VAR_0x8004, USING_MULTI_BATTLE goto_if_eq CableClub_EventScript_WarpTo4PColosseum special SetCableClubWarp - warp MAP_BATTLE_COLOSSEUM_2P, 255, 6, 8 + warp MAP_BATTLE_COLOSSEUM_2P, 6, 8 special DoCableClubWarp waitstate end @@ -401,7 +401,7 @@ CableClub_EventScript_PlayerApproachLinkRoomRight:: CableClub_EventScript_WarpTo4PColosseum:: special SetCableClubWarp - warp MAP_BATTLE_COLOSSEUM_4P, 255, 5, 8 + warp MAP_BATTLE_COLOSSEUM_4P, 5, 8 special DoCableClubWarp waitstate end @@ -491,7 +491,7 @@ CableClub_EventScript_EnterTradeCenter:: waitdooranim release special SetCableClubWarp - setwarp MAP_TRADE_CENTER, 255, 5, 8 + setwarp MAP_TRADE_CENTER, 5, 8 special DoCableClubWarp waitstate end @@ -566,7 +566,7 @@ CableClub_EventScript_EnterRecordCorner:: waitdooranim release special SetCableClubWarp - setwarp MAP_RECORD_CORNER, 255, 8, 9 + setwarp MAP_RECORD_CORNER, 8, 9 special DoCableClubWarp waitstate end @@ -968,7 +968,7 @@ CableClub_EventScript_EnterUnionRoom:: waitdooranim special Script_ResetUnionRoomTrade special SetCableClubWarp - warpteleport2 MAP_UNION_ROOM, 255, 7, 11 + warpspinenter MAP_UNION_ROOM, 7, 11 waitstate special RunUnionRoom waitstate diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc index 6dd0767f0cce..3b7d85a674c8 100644 --- a/data/scripts/safari_zone.inc +++ b/data/scripts/safari_zone.inc @@ -1,13 +1,13 @@ SafariZone_EventScript_OutOfBallsMidBattle:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode - setwarp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 + setwarp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 2, 5 end SafariZone_EventScript_Exit:: setvar VAR_SAFARI_ZONE_STATE, 1 special ExitSafariMode - warp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 255, 2, 5 + warp MAP_ROUTE121_SAFARI_ZONE_ENTRANCE, 2, 5 waitstate end diff --git a/data/scripts/trainer_hill.inc b/data/scripts/trainer_hill.inc index f3ba5f035a2f..8804b71b0afc 100644 --- a/data/scripts/trainer_hill.inc +++ b/data/scripts/trainer_hill.inc @@ -41,7 +41,7 @@ TrainerHill_1F_EventScript_DummyWarpToEntranceCounter:: @ Never reached TrainerHill_1F_EventScript_WarpSilentToEntranceCounter:: - warpsilent MAP_TRAINER_HILL_ENTRANCE, 255, 9, 6 + warpsilent MAP_TRAINER_HILL_ENTRANCE, 9, 6 waitstate end @@ -53,7 +53,7 @@ TrainerHill_1F_EventScript_Lost:: TrainerHill_EventScript_WarpToEntranceCounter:: setvar VAR_TEMP_1, 0 - warp MAP_TRAINER_HILL_ENTRANCE, 255, 9, 6 + warp MAP_TRAINER_HILL_ENTRANCE, 9, 6 waitstate end diff --git a/include/constants/maps.h b/include/constants/maps.h index b849749a95ba..6524f8c14afd 100644 --- a/include/constants/maps.h +++ b/include/constants/maps.h @@ -15,4 +15,16 @@ #define MAP_GROUP_SPECIAL_MONS_1 MAP_GROUP(METEOR_FALLS_1F_1R) #define MAP_GROUP_SPECIAL_MONS_2 MAP_GROUP(SAFARI_ZONE_NORTHWEST) +// 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_NONE is used to indicate that a +// dynamic warp should be used, at which point the warp id is ignored. It can be passed to +// SetDynamicWarp/SetDynamicWarpWithCoords as the first argument, but this argument is unused. +// As only one dynamic warp is saved at a time there's no need to distinguish between them. +#define WARP_ID_SECRET_BASE 0x7E +#define WARP_ID_DYNAMIC 0x7F + +// Used to indicate an invalid warp id, for dummy warps or when a warp should +// use the given coordinates rather than the coordinates of a target warp. +#define WARP_ID_NONE (-1) + #endif // GUARD_CONSTANTS_MAPS_H diff --git a/include/global.h b/include/global.h index 53e9ba134178..9aac66fda005 100644 --- a/include/global.h +++ b/include/global.h @@ -10,6 +10,7 @@ #include "constants/vars.h" #include "constants/species.h" #include "constants/berry.h" +#include "constants/maps.h" // Prevent cross-jump optimization. #define BLOCK_CROSS_JUMP asm(""); diff --git a/src/battle_arena.c b/src/battle_arena.c index 8a993f770f9f..f744a3b2b58e 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -798,7 +798,7 @@ static void InitArenaChallenge(void) if (!isCurrent) gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode] = 0; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); gTrainerBattleOpponent_A = 0; } diff --git a/src/battle_dome.c b/src/battle_dome.c index 45df83c7c5e7..acdf2e49f721 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2099,7 +2099,7 @@ static void InitDomeChallenge(void) if (!(gSaveBlock2Ptr->frontier.winStreakActiveFlags & sWinStreakFlags[battleMode][lvlMode])) gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode] = 0; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); gTrainerBattleOpponent_A = 0; } diff --git a/src/battle_factory.c b/src/battle_factory.c index 8f1001e9cac8..23fa664f3388 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -217,7 +217,7 @@ static void InitFactoryChallenge(void) for (i = 0; i < FRONTIER_PARTY_SIZE; i++) gFrontierTempParty[i] = 0xFFFF; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); gTrainerBattleOpponent_A = 0; } diff --git a/src/battle_palace.c b/src/battle_palace.c index c4e48a4b2b7c..0fa65200a6f0 100644 --- a/src/battle_palace.c +++ b/src/battle_palace.c @@ -93,7 +93,7 @@ static void InitPalaceChallenge(void) if (!(gSaveBlock2Ptr->frontier.winStreakActiveFlags & sWinStreakFlags[battleMode][lvlMode])) gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode] = 0; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); gTrainerBattleOpponent_A = 0; } diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 48155c833981..b10690ce454b 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -34,7 +34,6 @@ #include "constants/frontier_util.h" #include "constants/items.h" #include "constants/layouts.h" -#include "constants/maps.h" #include "constants/metatile_labels.h" #include "constants/moves.h" #include "constants/trainers.h" diff --git a/src/battle_setup.c b/src/battle_setup.c index d94034cff648..0e8d697ba2b7 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -43,7 +43,6 @@ #include "constants/items.h" #include "constants/songs.h" #include "constants/map_types.h" -#include "constants/maps.h" #include "constants/trainers.h" #include "constants/trainer_hill.h" #include "constants/weather.h" diff --git a/src/battle_tent.c b/src/battle_tent.c index 26b2e8bb1152..53c91c87137c 100644 --- a/src/battle_tent.c +++ b/src/battle_tent.c @@ -114,7 +114,7 @@ static void InitVerdanturfTentChallenge(void) gSaveBlock2Ptr->frontier.challengeStatus = 0; gSaveBlock2Ptr->frontier.curChallengeBattleNum = 0; gSaveBlock2Ptr->frontier.challengePaused = FALSE; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); } static void GetVerdanturfTentPrize(void) @@ -176,7 +176,7 @@ static void InitFallarborTentChallenge(void) gSaveBlock2Ptr->frontier.challengeStatus = 0; gSaveBlock2Ptr->frontier.curChallengeBattleNum = 0; gSaveBlock2Ptr->frontier.challengePaused = FALSE; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); } static void GetFallarborTentPrize(void) @@ -231,7 +231,7 @@ static void InitSlateportTentChallenge(void) gSaveBlock2Ptr->frontier.challengeStatus = 0; gSaveBlock2Ptr->frontier.curChallengeBattleNum = 0; gSaveBlock2Ptr->frontier.challengePaused = FALSE; - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); } static void GetSlateportTentPrize(void) diff --git a/src/battle_tower.c b/src/battle_tower.c index d9bd18bf7368..accdca3b4e26 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -918,7 +918,7 @@ static void InitTowerChallenge(void) gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] = 0; ValidateBattleTowerRecordChecksums(); - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); gTrainerBattleOpponent_A = 0; } diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index 61fab39e28c1..26caa830d300 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -6,7 +6,6 @@ #include "sound.h" #include "task.h" #include "constants/field_effects.h" -#include "constants/maps.h" #include "constants/songs.h" #include "constants/metatile_labels.h" #include "fieldmap.h" diff --git a/src/cable_club.c b/src/cable_club.c index 1f943b03ab74..4ee2797f4d6d 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -1031,7 +1031,7 @@ void CleanupLinkRoomState(void) LoadPlayerParty(); SavePlayerBag(); } - SetWarpDestinationToDynamicWarp(0x7F); + SetWarpDestinationToDynamicWarp(WARP_ID_DYNAMIC); } void ExitLinkRoom(void) diff --git a/src/contest_util.c b/src/contest_util.c index 6fd74a68aaf0..7533d4349a3d 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -2256,7 +2256,7 @@ void Task_LinkContest_FinalizeConnection(u8 taskId) StringGetEnd10(gContestMons[i].nickname); DestroyTask(taskId); - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); ScriptContext2_Disable(); EnableBothScriptContexts(); } diff --git a/src/decoration.c b/src/decoration.c index bb2dea7f975e..9aa4bdf4d8d7 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1175,7 +1175,7 @@ static void SetInitialPositions(u8 taskId) static void WarpToInitialPosition(u8 taskId) { DrawWholeMapView(); - SetWarpDestination(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, gTasks[taskId].tInitialX, gTasks[taskId].tInitialY); + SetWarpDestination(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE, gTasks[taskId].tInitialX, gTasks[taskId].tInitialY); WarpIntoMap(); } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 9a5ae07b14da..c29f8466b715 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -26,7 +26,6 @@ #include "constants/event_objects.h" #include "constants/field_effects.h" #include "constants/items.h" -#include "constants/maps.h" #include "constants/mauville_old_man.h" #include "constants/trainer_types.h" #include "constants/union_room.h" diff --git a/src/faraway_island.c b/src/faraway_island.c index 3927d9ad545e..9ddb66de5c2e 100755 --- a/src/faraway_island.c +++ b/src/faraway_island.c @@ -7,7 +7,6 @@ #include "sprite.h" #include "constants/event_objects.h" #include "constants/field_effects.h" -#include "constants/maps.h" #include "constants/metatile_behaviors.h" static u8 GetValidMewMoveDirection(u8); diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 6d338c06d7ed..8d6b564d2590 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -32,7 +32,6 @@ #include "constants/event_objects.h" #include "constants/field_poison.h" #include "constants/map_types.h" -#include "constants/maps.h" #include "constants/songs.h" #include "constants/trainer_hill.h" @@ -691,7 +690,7 @@ static bool8 TryArrowWarp(struct MapPosition *position, u16 metatileBehavior, u8 { s8 warpEventId = GetWarpEventAtMapPosition(&gMapHeader, position); - if (IsArrowWarpMetatileBehavior(metatileBehavior, direction) == TRUE && warpEventId != -1) + if (IsArrowWarpMetatileBehavior(metatileBehavior, direction) == TRUE && warpEventId != WARP_ID_NONE) { StoreInitialPlayerAvatarState(); SetupWarp(&gMapHeader, warpEventId, position); @@ -705,7 +704,7 @@ static bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileB { s8 warpEventId = GetWarpEventAtMapPosition(&gMapHeader, position); - if (warpEventId != -1 && IsWarpMetatileBehavior(metatileBehavior) == TRUE) + if (warpEventId != WARP_ID_NONE && IsWarpMetatileBehavior(metatileBehavior) == TRUE) { StoreInitialPlayerAvatarState(); SetupWarp(&gMapHeader, warpEventId, position); @@ -847,7 +846,7 @@ static bool8 TryDoorWarp(struct MapPosition *position, u16 metatileBehavior, u8 if (MetatileBehavior_IsWarpDoor(metatileBehavior) == TRUE) { warpEventId = GetWarpEventAtMapPosition(&gMapHeader, position); - if (warpEventId != -1 && IsWarpMetatileBehavior(metatileBehavior) == TRUE) + if (warpEventId != WARP_ID_NONE && IsWarpMetatileBehavior(metatileBehavior) == TRUE) { StoreInitialPlayerAvatarState(); SetupWarp(&gMapHeader, warpEventId, position); @@ -873,7 +872,7 @@ static s8 GetWarpEventAtPosition(struct MapHeader *mapHeader, u16 x, u16 y, u8 e return i; } } - return -1; + return WARP_ID_NONE; } static u8 *TryRunCoordEventScript(struct CoordEvent *coordEvent) diff --git a/src/field_door.c b/src/field_door.c index f53e83d7a697..988ea615d0ca 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -5,7 +5,6 @@ #include "fieldmap.h" #include "metatile_behavior.h" #include "task.h" -#include "constants/maps.h" #include "constants/songs.h" #include "constants/metatile_labels.h" diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 9e54823a63a8..6cf468b3e00c 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -26,7 +26,6 @@ #include "constants/event_object_movement.h" #include "constants/field_effects.h" #include "constants/items.h" -#include "constants/maps.h" #include "constants/moves.h" #include "constants/songs.h" #include "constants/trainer_types.h" diff --git a/src/field_special_scene.c b/src/field_special_scene.c index 39e5d669809a..b7c93e510e98 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -349,7 +349,7 @@ void LookThroughPorthole(void) FlagSet(FLAG_SYS_CRUISE_MODE); FlagSet(FLAG_DONT_TRANSITION_MUSIC); FlagSet(FLAG_HIDE_MAP_NAME_POPUP); - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); TrySetPortholeWarpDestination(); DoPortholeWarp(); } diff --git a/src/field_specials.c b/src/field_specials.c index e3a259999ef0..dce9d8efaf39 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -55,7 +55,6 @@ #include "constants/items.h" #include "constants/heal_locations.h" #include "constants/map_types.h" -#include "constants/maps.h" #include "constants/mystery_gift.h" #include "constants/script_menu.h" #include "constants/slot_machine.h" @@ -960,13 +959,9 @@ u8 GetBattleOutcome(void) void CableCarWarp(void) { if (gSpecialVar_0x8004 != 0) - { - SetWarpDestination(MAP_GROUP(ROUTE112_CABLE_CAR_STATION), MAP_NUM(ROUTE112_CABLE_CAR_STATION), -1, 6, 4); - } + SetWarpDestination(MAP_GROUP(ROUTE112_CABLE_CAR_STATION), MAP_NUM(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), -1, 6, 4); - } + SetWarpDestination(MAP_GROUP(MT_CHIMNEY_CABLE_CAR_STATION), MAP_NUM(MT_CHIMNEY_CABLE_CAR_STATION), WARP_ID_NONE, 6, 4); } void SetHiddenItemFlag(void) diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 8ce1e14dc47f..07dd8f2289b6 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -26,7 +26,6 @@ #include "overworld.h" #include "math_util.h" #include "constants/battle_frontier.h" -#include "constants/maps.h" #include "constants/rgb.h" #include "constants/region_map_sections.h" #include "constants/songs.h" diff --git a/src/heal_location.c b/src/heal_location.c index 5eda24d67ad5..ab8dc52650b9 100644 --- a/src/heal_location.c +++ b/src/heal_location.c @@ -1,6 +1,5 @@ #include "global.h" #include "heal_location.h" -#include "constants/maps.h" #include "constants/heal_locations.h" #include "data/heal_locations.h" diff --git a/src/link.c b/src/link.c index 01cc06e7c0cf..1084d4a6debf 100644 --- a/src/link.c +++ b/src/link.c @@ -292,10 +292,9 @@ static void LinkTestScreen(void) gLinkType = LINKTYPE_TRADE; OpenLink(); SeedRng(gMain.vblankCounter2); - for (i = 0; i < MAX_LINK_PLAYERS; i++) - { + for (i = 0; i < TRAINER_ID_LENGTH; i++) gSaveBlock2Ptr->playerTrainerId[i] = Random() % 256; - } + InitLinkTestBG(0, 2, 4, 0, 0); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON); CreateTask(Task_DestroySelf, 0); diff --git a/src/match_call.c b/src/match_call.c index 9e4659ee6057..aaae06b12e30 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -29,7 +29,6 @@ #include "constants/abilities.h" #include "constants/battle_frontier.h" #include "constants/event_objects.h" -#include "constants/maps.h" #include "constants/region_map_sections.h" #include "constants/songs.h" #include "constants/trainers.h" diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 5bc197010be6..d5cf83bd24c7 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -16,7 +16,6 @@ #include "decompress.h" #include "constants/songs.h" #include "constants/items.h" -#include "constants/maps.h" #define TAG_SWAP_LINE 109 diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 9473b0f82eb8..7300262988b2 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -15,7 +15,6 @@ #include "task.h" #include "window.h" #include "constants/event_objects.h" -#include "constants/maps.h" #include "constants/rgb.h" #include "constants/songs.h" #include "constants/metatile_labels.h" diff --git a/src/new_game.c b/src/new_game.c index 4bd3d37041c9..077b86775c0e 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -29,7 +29,6 @@ #include "pokedex.h" #include "apprentice.h" #include "frontier_util.h" -#include "constants/maps.h" #include "pokedex.h" #include "save.h" #include "link_rfu.h" @@ -126,7 +125,7 @@ static void ClearFrontierRecord(void) static void WarpToTruck(void) { - SetWarpDestination(MAP_GROUP(INSIDE_OF_TRUCK), MAP_NUM(INSIDE_OF_TRUCK), -1, -1, -1); + SetWarpDestination(MAP_GROUP(INSIDE_OF_TRUCK), MAP_NUM(INSIDE_OF_TRUCK), WARP_ID_NONE, -1, -1); WarpIntoMap(); } diff --git a/src/overworld.c b/src/overworld.c index 6d2b8ae4b3cb..b53de3ebc916 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -62,7 +62,6 @@ #include "constants/abilities.h" #include "constants/layouts.h" #include "constants/map_types.h" -#include "constants/maps.h" #include "constants/region_map_sections.h" #include "constants/songs.h" #include "constants/trainer_hill.h" @@ -208,7 +207,7 @@ static const struct WarpData sDummyWarpData = { .mapGroup = MAP_GROUP(UNDEFINED), .mapNum = MAP_NUM(UNDEFINED), - .warpId = -1, + .warpId = WARP_ID_NONE, .x = -1, .y = -1, }; @@ -570,7 +569,7 @@ static bool32 IsDummyWarp(struct WarpData *warp) return FALSE; else if (warp->mapNum != (s8)MAP_NUM(UNDEFINED)) return FALSE; - else if (warp->warpId != -1) + else if (warp->warpId != WARP_ID_NONE) return FALSE; else if (warp->x != -1) return FALSE; @@ -608,16 +607,20 @@ static void SetPlayerCoordsFromWarp(void) { if (gSaveBlock1Ptr->location.warpId >= 0 && gSaveBlock1Ptr->location.warpId < gMapHeader.events->warpCount) { + // warpId is a valid warp for this map, use the coords of that warp. gSaveBlock1Ptr->pos.x = gMapHeader.events->warps[gSaveBlock1Ptr->location.warpId].x; gSaveBlock1Ptr->pos.y = gMapHeader.events->warps[gSaveBlock1Ptr->location.warpId].y; } else if (gSaveBlock1Ptr->location.x >= 0 && gSaveBlock1Ptr->location.y >= 0) { + // Invalid warpId given. The given coords are valid, use those instead. + // WARP_ID_NONE is used to reach this intentionally. gSaveBlock1Ptr->pos.x = gSaveBlock1Ptr->location.x; gSaveBlock1Ptr->pos.y = gSaveBlock1Ptr->location.y; } else { + // Invalid warpId and coords given. Put player in center of map. gSaveBlock1Ptr->pos.x = gMapHeader.mapLayout->width / 2; gSaveBlock1Ptr->pos.y = gMapHeader.mapLayout->height / 2; } @@ -659,7 +662,7 @@ void SetWarpDestinationToHealLocation(u8 healLocationId) { const struct HealLocation *warp = GetHealLocation(healLocationId); if (warp) - SetWarpDestination(warp->group, warp->map, -1, warp->x, warp->y); + SetWarpDestination(warp->group, warp->map, WARP_ID_NONE, warp->x, warp->y); } void SetWarpDestinationToLastHealLocation(void) @@ -671,7 +674,7 @@ void SetLastHealLocationWarp(u8 healLocationId) { const struct HealLocation *healLocation = GetHealLocation(healLocationId); if (healLocation) - SetWarpData(&gSaveBlock1Ptr->lastHealLocation, healLocation->group, healLocation->map, -1, healLocation->x, healLocation->y); + SetWarpData(&gSaveBlock1Ptr->lastHealLocation, healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y); } void UpdateEscapeWarp(s16 x, s16 y) @@ -679,7 +682,7 @@ void UpdateEscapeWarp(s16 x, s16 y) u8 currMapType = GetCurrentMapType(); u8 destMapType = GetMapTypeByGroupAndId(sWarpDestination.mapGroup, sWarpDestination.mapNum); if (IsMapTypeOutdoors(currMapType) && IsMapTypeOutdoors(destMapType) != TRUE) - SetEscapeWarp(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, x - MAP_OFFSET, y - MAP_OFFSET + 1); + SetEscapeWarp(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE, x - MAP_OFFSET, y - MAP_OFFSET + 1); } void SetEscapeWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y) @@ -712,7 +715,7 @@ void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y) if (IsDummyWarp(&sFixedHoleWarp) == TRUE) sWarpDestination = gLastUsedWarp; else - SetWarpDestination(sFixedHoleWarp.mapGroup, sFixedHoleWarp.mapNum, -1, x, y); + SetWarpDestination(sFixedHoleWarp.mapGroup, sFixedHoleWarp.mapNum, WARP_ID_NONE, x, y); } static void SetWarpDestinationToContinueGameWarp(void) @@ -729,7 +732,7 @@ void SetContinueGameWarpToHealLocation(u8 healLocationId) { const struct HealLocation *warp = GetHealLocation(healLocationId); if (warp) - SetWarpData(&gSaveBlock1Ptr->continueGameWarp, warp->group, warp->map, -1, warp->x, warp->y); + SetWarpData(&gSaveBlock1Ptr->continueGameWarp, warp->group, warp->map, WARP_ID_NONE, warp->x, warp->y); } void SetContinueGameWarpToDynamicWarp(int unused) @@ -759,7 +762,7 @@ static bool8 SetDiveWarp(u8 dir, u16 x, u16 y) if (connection != NULL) { - SetWarpDestination(connection->mapGroup, connection->mapNum, -1, x, y); + SetWarpDestination(connection->mapGroup, connection->mapNum, WARP_ID_NONE, x, y); } else { @@ -785,7 +788,7 @@ void LoadMapFromCameraTransition(u8 mapGroup, u8 mapNum) { s32 paletteIndex; - SetWarpDestination(mapGroup, mapNum, -1, -1, -1); + SetWarpDestination(mapGroup, mapNum, WARP_ID_NONE, -1, -1); // Dont transition map music between BF Outside West/East if (gMapHeader.regionMapSectionId != MAPSEC_BATTLE_FRONTIER) @@ -3143,17 +3146,17 @@ static u8 FlipVerticalAndClearForced(u8 newFacing, u8 oldFacing) return oldFacing; } -static u8 LinkPlayerDetectCollision(u8 selfObjEventId, u8 a2, s16 x, s16 y) +static bool8 LinkPlayerDetectCollision(u8 selfObjEventId, u8 direction, s16 x, s16 y) { u8 i; - for (i = 0; i < 16; i++) + for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { if (i != selfObjEventId) { if ((gObjectEvents[i].currentCoords.x == x && gObjectEvents[i].currentCoords.y == y) || (gObjectEvents[i].previousCoords.x == x && gObjectEvents[i].previousCoords.y == y)) { - return 1; + return TRUE; } } } diff --git a/src/party_menu.c b/src/party_menu.c index ad8d78ad31ae..d654afa337af 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -69,7 +69,6 @@ #include "constants/field_effects.h" #include "constants/item_effects.h" #include "constants/items.h" -#include "constants/maps.h" #include "constants/moves.h" #include "constants/party_menu.h" #include "constants/rgb.h" diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index e2973dcab3a7..141041f4f18d 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -16,7 +16,6 @@ #include "trig.h" #include "pokedex_area_region_map.h" #include "wild_encounter.h" -#include "constants/maps.h" #include "constants/region_map_sections.h" #include "constants/rgb.h" #include "constants/songs.h" diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index f18dc68d1327..727cc5538d20 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -37,7 +37,6 @@ #include "walda_phrase.h" #include "window.h" #include "constants/items.h" -#include "constants/maps.h" #include "constants/moves.h" #include "constants/rgb.h" #include "constants/songs.h" diff --git a/src/region_map.c b/src/region_map.c index 021ef7c710e1..7a44efd1047a 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -7,7 +7,6 @@ #include "palette.h" #include "party_menu.h" #include "trig.h" -#include "constants/maps.h" #include "overworld.h" #include "event_data.h" #include "secret_base.h" @@ -2018,7 +2017,7 @@ static void CB_ExitFlyMap(void) if (sMapHealLocations[sFlyMap->regionMap.mapSecId][2] != 0) SetWarpDestinationToHealLocation(sMapHealLocations[sFlyMap->regionMap.mapSecId][2]); else - SetWarpDestinationToMapWarp(sMapHealLocations[sFlyMap->regionMap.mapSecId][0], sMapHealLocations[sFlyMap->regionMap.mapSecId][1], -1); + SetWarpDestinationToMapWarp(sMapHealLocations[sFlyMap->regionMap.mapSecId][0], sMapHealLocations[sFlyMap->regionMap.mapSecId][1], WARP_ID_NONE); break; } ReturnToFieldFromFlyMapSelect(); diff --git a/src/roamer.c b/src/roamer.c index b8d10096742b..4811ac3b22ad 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -3,7 +3,6 @@ #include "pokemon.h" #include "random.h" #include "roamer.h" -#include "constants/maps.h" // Despite having a variable to track it, the roamer is // hard-coded to only ever be in map group 0 diff --git a/src/rotating_gate.c b/src/rotating_gate.c index ea2eec126187..23fbb3e1d6be 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -5,7 +5,6 @@ #include "fieldmap.h" #include "sound.h" #include "sprite.h" -#include "constants/maps.h" #include "constants/songs.h" #define ROTATING_GATE_TILE_TAG 0x1300 diff --git a/src/save_location.c b/src/save_location.c index b201ca1c0d8c..74d2f2c44d0f 100644 --- a/src/save_location.c +++ b/src/save_location.c @@ -1,6 +1,5 @@ #include "global.h" #include "save_location.h" -#include "constants/maps.h" #define LIST_END 0xFFFF diff --git a/src/scrcmd.c b/src/scrcmd.c index 1c13d46c9881..563ff2222a5d 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -49,7 +49,6 @@ #include "tv.h" #include "window.h" #include "constants/event_objects.h" -#include "constants/maps.h" typedef u16 (*SpecialFunc)(void); typedef void (*NativeFunc)(void); @@ -790,7 +789,7 @@ bool8 ScrCmd_warphole(struct ScriptContext *ctx) if (mapGroup == MAP_GROUP(UNDEFINED) && mapNum == MAP_NUM(UNDEFINED)) SetWarpDestinationToFixedHoleWarp(x - MAP_OFFSET, y - MAP_OFFSET); else - SetWarpDestination(mapGroup, mapNum, -1, x - MAP_OFFSET, y - MAP_OFFSET); + SetWarpDestination(mapGroup, mapNum, WARP_ID_NONE, x - MAP_OFFSET, y - MAP_OFFSET); DoFallWarp(); ResetInitialPlayerAvatarState(); return TRUE; @@ -2238,6 +2237,7 @@ bool8 ScrCmd_gotowondercardscript(struct ScriptContext *ctx) return FALSE; } +// This warp is only used by the Union Room. // For the warp used by the Aqua Hideout, see DoTeleportTileWarp bool8 ScrCmd_warpspinenter(struct ScriptContext *ctx) { diff --git a/src/script.c b/src/script.c index 468989fb517d..4728e739cdc2 100644 --- a/src/script.c +++ b/src/script.c @@ -4,7 +4,6 @@ #include "mystery_gift.h" #include "util.h" #include "constants/event_objects.h" -#include "constants/maps.h" #include "constants/map_scripts.h" #define RAM_SCRIPT_MAGIC 51 diff --git a/src/secret_base.c b/src/secret_base.c index 72560ee23b78..f971e24f67c2 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -39,7 +39,6 @@ #include "constants/event_objects.h" #include "constants/field_specials.h" #include "constants/items.h" -#include "constants/maps.h" #include "constants/map_types.h" #include "constants/metatile_behaviors.h" #include "constants/metatile_labels.h" @@ -446,7 +445,7 @@ void EnterSecretBase(void) { CreateTask(Task_EnterSecretBase, 0); FadeScreen(FADE_TO_BLACK, 0); - SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); + SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); } bool8 SecretBaseMapPopupEnabled(void) @@ -490,7 +489,7 @@ static void Task_EnterNewlyCreatedSecretBase(u8 taskId) SetWarpDestination( gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, - -1, + WARP_ID_NONE, GET_BASE_COMPUTER_X(secretBaseGroup), GET_BASE_COMPUTER_Y(secretBaseGroup)); WarpIntoMap(); @@ -700,7 +699,7 @@ static void Task_WarpOutOfSecretBase(u8 taskId) gTasks[taskId].data[0] = 2; break; case 2: - SetWarpDestinationToDynamicWarp(0x7e); + SetWarpDestinationToDynamicWarp(WARP_ID_SECRET_BASE); WarpIntoMap(); gFieldCallback = FieldCB_DefaultWarpExit; SetMainCallback2(CB2_LoadMap); diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 2c34f196e5ad..04312a2dd146 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -28,7 +28,6 @@ #include "constants/items.h" #include "constants/layouts.h" #include "constants/moves.h" -#include "constants/maps.h" #include "constants/trainers.h" #include "constants/easy_chat.h" #include "constants/trainer_hill.h" diff --git a/src/tv.c b/src/tv.c index 310163e94ddb..4638fc62172c 100644 --- a/src/tv.c +++ b/src/tv.c @@ -40,7 +40,6 @@ #include "constants/items.h" #include "constants/layouts.h" #include "constants/lilycove_lady.h" -#include "constants/maps.h" #include "constants/metatile_behaviors.h" #include "constants/metatile_labels.h" #include "constants/moves.h" diff --git a/src/union_room.c b/src/union_room.c index 1400a0b1d440..c624a978417a 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -49,7 +49,6 @@ #include "constants/battle_frontier.h" #include "constants/cable_club.h" #include "constants/game_stat.h" -#include "constants/maps.h" #include "constants/party_menu.h" #include "constants/rgb.h" #include "constants/songs.h" @@ -1593,8 +1592,8 @@ void StartUnionRoomBattle(u16 battleFlags) static void WarpForWirelessMinigame(u16 linkService, u16 x, u16 y) { VarSet(VAR_CABLE_CLUB_STATE, linkService); - SetWarpDestination(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, x, y); - SetDynamicWarpWithCoords(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1, x, y); + SetWarpDestination(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE, x, y); + SetDynamicWarpWithCoords(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE, x, y); WarpIntoMap(); } @@ -1605,7 +1604,7 @@ static void WarpForCableClubActivity(s8 mapGroup, s8 mapNum, s32 x, s32 y, u16 l gFieldLinkPlayerCount = GetLinkPlayerCount(); gLocalLinkPlayerId = GetMultiplayerId(); SetCableClubWarp(); - SetWarpDestination(mapGroup, mapNum, -1, x, y); + SetWarpDestination(mapGroup, mapNum, WARP_ID_NONE, x, y); WarpIntoMap(); } diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 65d8c86d099c..5960692a2061 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -20,7 +20,6 @@ #include "constants/game_stat.h" #include "constants/items.h" #include "constants/layouts.h" -#include "constants/maps.h" #include "constants/weather.h" extern const u8 EventScript_RepelWoreOff[]; From 63c5905914b40d33e45a6a3101ab5a7da4375918 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Nov 2021 10:53:18 -0500 Subject: [PATCH 429/762] Continue updating event macro comments --- asm/macros/event.inc | 238 ++++++++++++++++++-------------- data/scripts/std_msgbox.inc | 12 +- data/scripts/trainer_battle.inc | 2 +- include/script_menu.h | 2 +- src/scrcmd.c | 4 +- src/script_menu.c | 3 +- src/script_pokemon_util.c | 5 + 7 files changed, 149 insertions(+), 117 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index c5fc6e205261..9c735f666152 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -44,7 +44,7 @@ .4byte \destination .endm - @ Jumps to the standard function at index function. + @ Jumps to the script in gStdScripts at index function. .macro gotostd function:req .byte 0x08 .byte \function @@ -56,7 +56,7 @@ STD_OBTAIN_DECORATION = 7 STD_REGISTER_MATCH_CALL = 8 - @ Executes the script in gStdScripts at index function. + @ Calls the script in gStdScripts at index function. .macro callstd function:req .byte 0x09 .byte \function @@ -318,7 +318,7 @@ .byte 0x2e .endm - @ Plays the specified (song) sound. Only one sound may play at a time, with newer ones interrupting older ones. + @ Plays the specified sound. Only one sound may play at a time, with newer ones interrupting older ones. .macro playse song:req .byte 0x2f .2byte \song @@ -348,7 +348,8 @@ .byte \save_song .endm - @ Saves the specified song to be played later. + @ 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 .2byte \song @@ -359,7 +360,7 @@ .byte 0x35 .endm - @ Crossfades the currently-playng song into the specified song. + @ Crossfades the currently-playing song into the specified song. .macro fadenewbgm song:req .byte 0x36 .2byte \song @@ -377,10 +378,10 @@ .byte \speed .endm - @ Helper macro for warp commands. It formats the arguments for a warp command. + @ Helper macro for warp commands that formats their arguments. @ It allows warp macros to either provide 1. a valid id for which warp location to use, @ or 2. a pair of x/y coordinates to use. Both may be provided but at least one will be - @ ignored by SetPlayerCoordsFromWard. If none are provided it will use dummy arguments, + @ ignored by SetPlayerCoordsFromWarp. If none are provided it will use dummy arguments, @ and the warp will send the player to the center of the map. @ Examples of valid inputs for a warp command: @ - warp MAP, x, y @@ -437,7 +438,9 @@ formatwarp \map, \a, \b, \c .endm - @ Warps the player to another map using a hole animation. + @ Warps the player to another map using a hole animation. If the specified map is MAP_UNDEFINED it will instead + @ 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 map \map @@ -468,7 +471,9 @@ formatwarp \map, \a, \b, \c .endm - @ Sets the destination that diving or emerging from a dive will take the player to. + @ Sets the destination that diving or emerging from a dive will take the player to. Note that this only + @ applies if the current map does not have a dive/emerge connection. If it does have a corresponding + @ map connection then that map and the player's current coordinates will be used as the destination instead. @ 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 @@ -499,60 +504,60 @@ .byte 0x43 .endm - @ Attempts to add quantity of item index 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 index:req, quantity=1 + @ 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 - .2byte \index + .2byte \itemId .2byte \quantity .endm - @ Removes quantity of item index from the player's Bag. If the player has fewer than 'quantity' in their bag + @ 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 index:req, quantity=1 + .macro removeitem itemId:req, quantity=1 .byte 0x45 - .2byte \index + .2byte \itemId .2byte \quantity .endm - @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets VAR_RESULT to + @ 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 index:req, quantity=1 + .macro checkitemspace itemId:req, quantity=1 .byte 0x46 - .2byte \index + .2byte \itemId .2byte \quantity .endm - @ Checks if the player has quantity or more of item index in their Bag. Sets VAR_RESULT to TRUE if the player has + @ 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 index:req, quantity=1 + .macro checkitem itemId:req, quantity=1 .byte 0x47 - .2byte \index + .2byte \itemId .2byte \quantity .endm @ 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 index:req + .macro checkitemtype itemId:req .byte 0x48 - .2byte \index + .2byte \itemId .endm - @ Adds a quantity amount of item index to the player's PC. - .macro addpcitem index:req, quantity=1 + @ Adds quantity of the specified item to the player's PC. + .macro addpcitem itemId:req, quantity=1 .byte 0x49 - .2byte \index + .2byte \itemId .2byte \quantity .endm - @ Checks for quantity amount of item index in the player's PC. - .macro checkpcitem index:req, quantity=1 + @ Checks for quantity of the specified item in the player's PC. + .macro checkpcitem itemId:req, quantity=1 .byte 0x4a - .2byte \index + .2byte \itemId .2byte \quantity .endm - @ Adds decoration to the player's PC. + @ Adds a decoration to the player's PC. .macro adddecoration decoration:req .byte 0x4b .2byte \decoration @@ -570,101 +575,101 @@ .2byte \decoration .endm - @ Checks if the player has enough space in their PC to hold decoration. + @ 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 .2byte \decoration .endm - @ Applies the movement data at movements to the specified (index) Object. Also closes any standard message boxes that are still open. - @ If no map is specified, then the current map is used. - .macro applymovement index:req, movements:req, map + @ 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 - .2byte \index + .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 - .2byte \index + .2byte \localId .4byte \movements map \map .endif .endm - @ Blocks script execution until the movements being applied to the specified (index) Object finish. + @ Blocks script execution until the movements being applied to the specified (localId) Object finish. @ If the specified Object is 0, then the command will block script execution until all Objects @ affected by applymovement finish their movements. 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 index:req, map + .macro waitmovement localId:req, map .ifb \map .byte 0x51 - .2byte \index + .2byte \localId .else .byte 0x52 - .2byte \index + .2byte \localId map \map .endif .endm - @ Attempts to despawn the specified (index) Object on the specified (map_group, map_num) map. + @ Attempts to despawn the specified (localId) Object on the specified (map_group, map_num) map. @ It also sets the object's visibility flag if it has one. @ If no map is specified, then the current map is used. - .macro removeobject index:req, map + .macro removeobject localId:req, map .ifb \map .byte 0x53 - .2byte \index + .2byte \localId .else .byte 0x54 - .2byte \index + .2byte \localId map \map .endif .endm - @ Attempts to spawn the specified (index) Object the specified (map_group, map_num) map. + @ Attempts to spawn the specified (localId) Object the specified (map_group, map_num) map. @ Note that unlike removeobject this does not modify the OObject's flag. @ If no map is specified, then the current map is used. - .macro addobject index:req, map + .macro addobject localId:req, map .ifb \map .byte 0x55 - .2byte \index + .2byte \localId .else .byte 0x56 - .2byte \index + .2byte \localId map \map .endif .endm - @ Sets the specified (index) Object's position on the current map. - .macro setobjectxy index:req, x:req, y:req + @ Sets the specified (localId) Object's position on the current map. + .macro setobjectxy localId:req, x:req, y:req .byte 0x57 - .2byte \index + .2byte \localId .2byte \x .2byte \y .endm - .macro showobjectat index:req, map:req + .macro showobjectat localId:req, map:req .byte 0x58 - .2byte \index + .2byte \localId map \map .endm - .macro hideobjectat index:req, map:req + .macro hideobjectat localId:req, map:req .byte 0x59 - .2byte \index + .2byte \localId map \map .endm - @ If the script was called by an Object, then that Object will turn to face toward the player. + @ Turns the currently selected object (if there is one) to face the player. .macro faceplayer .byte 0x5a .endm - .macro turnobject index:req, direction:req + @ Turns the specified object in the specified direction. + .macro turnobject localId:req, direction:req .byte 0x5b - .2byte \index + .2byte \localId .byte \direction .endm @@ -725,8 +730,8 @@ NO_MUSIC = FALSE - @ Starts a single trainer battle, takes a trainer, intro text, loss text, and an optional event script - @ when used with an event script, you can also pass in an optional flag to disable music + @ Starts a single trainer battle. Takes a trainer, intro text, loss text, and an optional event script. + @ 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 @@ -737,8 +742,8 @@ .endif .endm - @ Starts a double trainer battle, takes a trainer, intro text, loss text, text for when you have too few pokemon - @ and an optional event script, when used with an event script you can pass in an optional flag to disable music + @ Starts a double trainer battle. Takes a trainer, intro text, loss text, text for when you have too few pokemon + @ 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 @@ -749,17 +754,17 @@ .endif .endm - @ Starts a rematch battle, takes a trainer, intro text and loss text + @ 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 .endm - @ Starts a rematch double battle, takes a trainer, intro text, loss text, and text for when you have too few pokemon + @ 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 .endm - @ Starts a trainer battle, skipping intro text, takes a trainer and loss text + @ 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 .endm @@ -781,38 +786,41 @@ .byte 0x5f .endm - @ Compares Flag (trainer + 0x500) to 1. (If the flag is set, then the trainer has been defeated by the player.) + @ 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 .2byte \trainer .endm - @ Sets Flag (trainer + 0x500). + @ Sets the trainer flag (trainer + TRAINER_FLAGS_START) to TRUE (defeated). .macro settrainerflag trainer:req .byte 0x61 .2byte \trainer .endm - @ Clears Flag (trainer + 0x500). + @ Sets the trainer flag (trainer + TRAINER_FLAGS_START) to FALSE (not defeated). .macro cleartrainerflag trainer:req .byte 0x62 .2byte \trainer .endm - .macro setobjectxyperm index:req, x:req, y:req + @ 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 - .2byte \index + .2byte \localId .2byte \x .2byte \y .endm - @ Copies a live object event's xy position to its template, so that if the sprite goes off screen, + @ 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 index:req + .macro copyobjectxytoperm localId:req .byte 0x64 - .2byte \index + .2byte \localId .endm + @ Sets the movement type (MOVEMENT_TYPE_*) for an object's template. .macro setobjectmovementtype word:req, byte:req .byte 0x65 .2byte \word @@ -826,8 +834,8 @@ .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 script bank 0, then the value of script bank 0 will be treated as - @ a pointer to the text. (You can use loadpointer to place a string pointer in a script bank.) + @ 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 .4byte \text @@ -848,17 +856,17 @@ .byte 0x6a .endm - @ Resumes normal movement for all Objects on-screen, and closes any standard message boxes that are still open. + @ Resumes normal movement for all objects on-screen, and closes any standard message boxes that are still open. .macro releaseall .byte 0x6b .endm - @ If the script was called by an Object, then that Object's movement will resume. This command also closes any standard message boxes that are still open. + @ 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 .endm - @ Blocks script execution until the player presses any key. + @ Blocks script execution until the player presses the A or B button. .macro waitbuttonpress .byte 0x6d .endm @@ -884,7 +892,7 @@ @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. @ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with multichoiceId. - @ 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 0x00. + @ 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 @@ -931,7 +939,7 @@ .byte \ignoreBPress .endm - @ Displays a box containing the front sprite for the specified (species) Pokemon species. + @ Displays a box containing the front sprite for the specified Pokemon species. .macro showmonpic species:req, x:req, y:req .byte 0x75 .2byte \species @@ -939,7 +947,7 @@ .byte \y .endm - @ Hides all boxes displayed with showmonpic. + @ Hides the box displayed by showmonpic. .macro hidemonpic .byte 0x76 .endm @@ -950,9 +958,9 @@ .byte \winnerId .endm - @ Displays the string at pointer as braille text in a standard message box. The string must be formatted to use braille - @ characters and needs to provide six extra starting characters that are skipped (in RS, these characters determined the - @ box's size and position, but in Emerald these are calculated automatically). + @ Displays the given string as braille text in a standard message box. The string should use the .braille directive + @ 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 .4byte \text @@ -969,38 +977,45 @@ .byte \textTop .endm - @ Gives the player one of the specified (species) Pokemon at level level holding item. The trailing 0s are unused parameters + @ 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:req .byte 0x79 .2byte \species .byte \level .2byte \item - .4byte 0x0 - .4byte 0x0 + .4byte 0 + .4byte 0 .byte 0 .endm + @ 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 .2byte \species .endm - .macro setmonmove index:req, slot:req, move:req + @ Replaces the move at 'slot' of the PokĂ©mon in the player's party at 'partyIndex' with the specified move. + @ 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 \index + .byte \partyIndex .byte \slot .2byte \move .endm - @ Checks if at least one Pokemon in the player's party knows the specified (index) attack. If so, VAR_RESULT is set to the + @ Checks if at least one Pokemon in the player's party knows the specified move. If so, VAR_RESULT is set to the @ (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 index:req + .macro checkpartymove move:req .byte 0x7c - .2byte \index + .2byte \move .endm - @ Writes the name of the Pokemon at index species to the specified buffer. + @ Writes the name of the given Pokemon species to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferspeciesname out:req, species:req .byte 0x7d .byte \out @@ -1008,35 +1023,40 @@ .endm @ Writes the name of the species of the first Pokemon in the player's party to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferleadmonspeciesname out:req .byte 0x7e .byte \out .endm - @ Writes the nickname of the Pokemon in slot slot (zero-indexed) of the player's party to the specified buffer. + @ 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. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferpartymonnick out:req, slot:req .byte 0x7f .byte \out .2byte \slot .endm - @ Writes the name of the item at index item to the specified buffer. If the specified index is >= ITEMS_COUNT, + @ 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. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferitemname out:req, item:req .byte 0x80 .byte \out .2byte \item .endm - @ Writes the name of the decoration at index 'decoration' to the specified buffer. + @ Writes the name of the specified decoration to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferdecorationname out:req, decoration:req .byte 0x81 .byte \out .2byte \decoration .endm - @ Writes the name of the move at index move to the specified buffer. + @ Writes the name of the specified move to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffermovename out:req, move:req .byte 0x82 .byte \out @@ -1044,34 +1064,38 @@ .endm @ Converts the value of input to a decimal string, and writes that string to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffernumberstring out:req, input:req .byte 0x83 .byte \out .2byte \input .endm - @ Writes the standard string identified by index to the specified buffer. This command has no protections in place at all, - @ so specifying an invalid standard string (e.x. 0x2B) can and usually will cause crashes or garbage characters. + @ Writes the given standard string (STDSTRING_*) to the specified buffer. Invalid std string ids are not handled. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferstdstring out:req, index:req .byte 0x84 .byte \out .2byte \index .endm - @ Copies the string at offset to the specified buffer. - .macro bufferstring out:req, offset:req + @ Copies the string at the given pointer to the specified buffer. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 + .macro bufferstring out:req, text:req .byte 0x85 .byte \out - .4byte \offset + .4byte \text .endm @ 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 .4byte \products .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 .4byte \products @@ -1279,16 +1303,16 @@ .2byte \index .endm - .macro setobjectpriority index:req, map:req, priority:req + .macro setobjectpriority localId:req, map:req, priority:req .byte 0xa8 - .2byte \index + .2byte \localId map \map .byte \priority .endm - .macro resetobjectpriority index:req, map:req + .macro resetobjectpriority localId:req, map:req .byte 0xa9 - .2byte \index + .2byte \localId map \map .endm diff --git a/data/scripts/std_msgbox.inc b/data/scripts/std_msgbox.inc index f94d28ba0ec2..c46da56cbf6f 100644 --- a/data/scripts/std_msgbox.inc +++ b/data/scripts/std_msgbox.inc @@ -1,7 +1,7 @@ Std_MsgboxNPC: lock faceplayer - message 0x0 + message NULL waitmessage waitbuttonpress release @@ -9,26 +9,26 @@ Std_MsgboxNPC: Std_MsgboxSign: lockall - message 0x0 + message NULL waitmessage waitbuttonpress releaseall return Std_MsgboxDefault: - message 0x0 + message NULL waitmessage waitbuttonpress return Std_MsgboxYesNo: - message 0x0 + message NULL waitmessage yesnobox 20, 8 return Std_MsgboxGetPoints: - message 0x0 + message NULL playfanfare MUS_OBTAIN_B_POINTS waitfanfare waitmessage @@ -36,7 +36,7 @@ Std_MsgboxGetPoints: @ Never used, pokenavcall is always used directly instead Std_MsgboxPokenav: - pokenavcall 0x0 + pokenavcall NULL waitmessage return diff --git a/data/scripts/trainer_battle.inc b/data/scripts/trainer_battle.inc index a59b58a6f7f1..0528c815c67a 100644 --- a/data/scripts/trainer_battle.inc +++ b/data/scripts/trainer_battle.inc @@ -136,7 +136,7 @@ EventScript_EndTrainerBattle:: end Std_MsgboxAutoclose:: - message 0x0 + message NULL waitmessage waitbuttonpress release diff --git a/include/script_menu.h b/include/script_menu.h index 086ad147f064..a690ef8b8b58 100644 --- a/include/script_menu.h +++ b/include/script_menu.h @@ -8,7 +8,7 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 multichoiceId, bool8 bool8 ScriptMenu_YesNo(u8 left, u8 top); bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress, u8 columnCount); bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y); -bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void); +bool8 (*ScriptMenu_HidePokemonPic(void))(void); int ConvertPixelWidthToTileWidth(int width); u8 CreateWindowFromRect(u8 x, u8 y, u8 width, u8 height); void ClearToTransparentAndRemoveWindow(u8 windowId); diff --git a/src/scrcmd.c b/src/scrcmd.c index 563ff2222a5d..98eaaf12ce1c 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1458,7 +1458,9 @@ bool8 ScrCmd_showmonpic(struct ScriptContext *ctx) bool8 ScrCmd_hidemonpic(struct ScriptContext *ctx) { - bool8 (*func)(void) = ScriptMenu_GetPicboxWaitFunc(); + // The hide function returns a pointer to a function + // that returns true once the pic is hidden + bool8 (*func)(void) = ScriptMenu_HidePokemonPic(); if (func == NULL) return FALSE; diff --git a/src/script_menu.c b/src/script_menu.c index ae0fe91e6702..1680758f2126 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -563,6 +563,7 @@ static void Task_PokemonPicWindow(u8 taskId) task->tState++; break; case 1: + // Wait until state is advanced by ScriptMenu_HidePokemonPic break; case 2: FreeResourcesAndDestroySprite(&gSprites[task->tMonSpriteId], task->tMonSpriteId); @@ -600,7 +601,7 @@ bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y) } } -bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void) +bool8 (*ScriptMenu_HidePokemonPic(void))(void) { u8 taskId = FindTaskIdByFunc(Task_PokemonPicWindow); diff --git a/src/script_pokemon_util.c b/src/script_pokemon_util.c index 07e86656e020..ae7aa92dc809 100755 --- a/src/script_pokemon_util.c +++ b/src/script_pokemon_util.c @@ -150,7 +150,12 @@ void CreateScriptedWildMon(u16 species, u8 level, u16 item) void ScriptSetMonMoveSlot(u8 monIndex, u16 move, u8 slot) { +// Allows monIndex to go out of bounds of gPlayerParty. Doesn't occur in vanilla +#ifdef BUGFIX + if (monIndex >= PARTY_SIZE) +#else if (monIndex > PARTY_SIZE) +#endif monIndex = gPlayerPartyCount - 1; SetMonMoveSlot(&gPlayerParty[monIndex], move, slot); From 5d9c31a610d8a6680a44b772fc1b88135d3884c3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Nov 2021 13:55:02 -0500 Subject: [PATCH 430/762] Label slot machine ids, fix GetPriceReduction --- asm/macros/event.inc | 8 +- .../LilycoveCity_ContestLobby/scripts.inc | 2 +- .../scripts.inc | 4 +- data/script_cmd_table.inc | 2 +- data/scripts/roulette.inc | 4 +- include/constants/slot_machine.h | 9 ++ include/tv.h | 2 +- src/field_specials.c | 37 +++++- src/scrcmd.c | 4 +- src/shop.c | 6 +- src/slot_machine.c | 124 +++++++++++++----- src/tv.c | 14 +- 12 files changed, 153 insertions(+), 63 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 9c735f666152..58b3b8329228 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1107,10 +1107,10 @@ .4byte \products .endm - @ Starts up the slot machine minigame. - .macro playslotmachine word:req + @ 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 - .2byte \word + .2byte \id .endm @ Sets a berry tree's specific berry and growth stage. @@ -1197,7 +1197,7 @@ .endm @ Gets the price reduction for the index given. - .macro getpricereduction index:req + .macro getpokenewsactive index:req .byte 0x96 .2byte \index .endm diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 94ccc21bd40a..6dbd1eb8429d 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -17,7 +17,7 @@ LilycoveCity_ContestLobby_OnTransition: end LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster:: - getpricereduction POKENEWS_BLENDMASTER + getpokenewsactive POKENEWS_BLENDMASTER compare VAR_RESULT, TRUE goto_if_eq LilycoveCity_ContestLobby_EventScript_ShowBlendMaster clearflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_REPLACEMENT diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index 65f7adc67ec7..b0fda2731f40 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -3,7 +3,7 @@ LilycoveCity_DepartmentStoreRooftop_MapScripts:: .byte 0 LilycoveCity_DepartmentStoreRooftop_OnTransition: - getpricereduction POKENEWS_LILYCOVE + getpokenewsactive POKENEWS_LILYCOVE compare VAR_RESULT, TRUE call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman compare VAR_RESULT, FALSE @@ -51,7 +51,7 @@ LilycoveCity_DepartmentStoreRooftop_PokemartDecor_ClearOutSale: LilycoveCity_DepartmentStoreRooftop_EventScript_Man:: lock faceplayer - getpricereduction POKENEWS_LILYCOVE + getpokenewsactive POKENEWS_LILYCOVE compare VAR_RESULT, TRUE call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_ManClearOutSale msgbox LilycoveCity_DepartmentStoreRooftop_Text_SetDatesForClearOutSales, MSGBOX_DEFAULT diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 566ac3b36814..322ac0bac186 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -150,7 +150,7 @@ gScriptCmdTable:: .4byte ScrCmd_showmoneybox @ 0x93 .4byte ScrCmd_hidemoneybox @ 0x94 .4byte ScrCmd_updatemoneybox @ 0x95 - .4byte ScrCmd_getpricereduction @ 0x96 + .4byte ScrCmd_getpokenewsactive @ 0x96 .4byte ScrCmd_fadescreen @ 0x97 .4byte ScrCmd_fadescreenspeed @ 0x98 .4byte ScrCmd_setflashradius @ 0x99 diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index 241b0d31c218..96f5809d7b51 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -3,7 +3,7 @@ Roulette_EventScript_Table1:: compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 0 - getpricereduction POKENEWS_GAME_CORNER + getpokenewsactive POKENEWS_GAME_CORNER compare VAR_RESULT, FALSE goto_if_eq Roulette_EventScript_Play addvar VAR_0x8004, ROULETTE_SPECIAL_RATE @@ -15,7 +15,7 @@ Roulette_EventScript_Table2:: compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 1 - getpricereduction POKENEWS_GAME_CORNER + getpokenewsactive POKENEWS_GAME_CORNER compare VAR_RESULT, FALSE goto_if_eq Roulette_EventScript_Play addvar VAR_0x8004, ROULETTE_SPECIAL_RATE diff --git a/include/constants/slot_machine.h b/include/constants/slot_machine.h index 81848f20844a..865d7e5d0b79 100644 --- a/include/constants/slot_machine.h +++ b/include/constants/slot_machine.h @@ -3,4 +3,13 @@ #define SLOT_MACHINE_COUNT 12 +// Slot machine IDs +#define SLOT_MACHINE_UNLUCKIEST 0 +#define SLOT_MACHINE_UNLUCKIER 1 +#define SLOT_MACHINE_UNLUCKY 2 +#define SLOT_MACHINE_LUCKY 3 +#define SLOT_MACHINE_LUCKIER 4 +#define SLOT_MACHINE_LUCKIEST 5 +#define NUM_SLOT_MACHINE_IDS 6 + #endif // GUARD_CONSTANTS_SLOT_MACHINE_H diff --git a/include/tv.h b/include/tv.h index 30cd13326512..31c8fcc50fb0 100644 --- a/include/tv.h +++ b/include/tv.h @@ -19,7 +19,7 @@ void HideBattleTowerReporter(void); void ReceiveTvShowsData(void *src, u32 size, u8 masterIdx); void TryPutSpotTheCutiesOnAir(struct Pokemon *pokemon, u8 ribbonMonDataIdx); u32 GetPlayerIDAsU32(void); -bool8 GetPriceReduction(u8 newsKind); +bool8 IsPokeNewsActive(u8 newsKind); void SanitizeTVShowLocationsForRuby(TVShow *shows); size_t CountDigits(int value); u8 GetRibbonCount(struct Pokemon *pokemon); diff --git a/src/field_specials.c b/src/field_specials.c index dce9d8efaf39..22467cfeef06 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1330,15 +1330,40 @@ void BufferEReaderTrainerName(void) u16 GetSlotMachineId(void) { - static const u8 sSlotMachineRandomSeeds[] = {12, 2, 4, 5, 1, 8, 7, 11, 3, 10, 9, 6}; - static const u8 sSlotMachineIds[] = {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5}; - static const u8 sSlotMachineServiceDayIds[] = {3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5}; + static const u8 sSlotMachineRandomSeeds[SLOT_MACHINE_COUNT] = {12, 2, 4, 5, 1, 8, 7, 11, 3, 10, 9, 6}; + static const u8 sSlotMachineIds[SLOT_MACHINE_COUNT] = { + SLOT_MACHINE_UNLUCKIEST, + SLOT_MACHINE_UNLUCKIER, + SLOT_MACHINE_UNLUCKIER, + SLOT_MACHINE_UNLUCKY, + SLOT_MACHINE_UNLUCKY, + SLOT_MACHINE_UNLUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIEST + }; + static const u8 sSlotMachineServiceDayIds[SLOT_MACHINE_COUNT] = { + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKY, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIER, + SLOT_MACHINE_LUCKIEST, + SLOT_MACHINE_LUCKIEST + }; u32 rnd = gSaveBlock1Ptr->dewfordTrends[0].trendiness + gSaveBlock1Ptr->dewfordTrends[0].rand + sSlotMachineRandomSeeds[gSpecialVar_0x8004]; - if (GetPriceReduction(POKENEWS_GAME_CORNER)) - { + if (IsPokeNewsActive(POKENEWS_GAME_CORNER)) return sSlotMachineServiceDayIds[rnd % SLOT_MACHINE_COUNT]; - } + return sSlotMachineIds[rnd % SLOT_MACHINE_COUNT]; } diff --git a/src/scrcmd.c b/src/scrcmd.c index 98eaaf12ce1c..04dff470b2d1 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1936,11 +1936,11 @@ bool8 ScrCmd_setberrytree(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getpricereduction(struct ScriptContext *ctx) +bool8 ScrCmd_getpokenewsactive(struct ScriptContext *ctx) { u16 newsKind = VarGet(ScriptReadHalfword(ctx)); - gSpecialVar_Result = GetPriceReduction(newsKind); + gSpecialVar_Result = IsPokeNewsActive(newsKind); return FALSE; } diff --git a/src/shop.c b/src/shop.c index fa4a73bbbd37..f6fb2b9a034f 100755 --- a/src/shop.c +++ b/src/shop.c @@ -562,7 +562,7 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) { ConvertIntToDecimalStringN( gStringVar1, - ItemId_GetPrice(itemId) >> GetPriceReduction(POKENEWS_SLATEPORT), + ItemId_GetPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT), STR_CONV_MODE_LEFT_ALIGN, 5); } @@ -934,7 +934,7 @@ static void Task_BuyMenu(u8 taskId) if (sMartInfo.martType == MART_TYPE_NORMAL) { - sShopData->totalCost = (ItemId_GetPrice(itemId) >> GetPriceReduction(POKENEWS_SLATEPORT)); + sShopData->totalCost = (ItemId_GetPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT)); } else { @@ -1014,7 +1014,7 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) if (AdjustQuantityAccordingToDPadInput(&tItemCount, sShopData->maxQuantity) == TRUE) { - sShopData->totalCost = (ItemId_GetPrice(tItemId) >> GetPriceReduction(POKENEWS_SLATEPORT)) * tItemCount; + sShopData->totalCost = (ItemId_GetPrice(tItemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT)) * tItemCount; BuyMenuPrintItemQuantityAndPrice(taskId); } else diff --git a/src/slot_machine.c b/src/slot_machine.c index 1c21f230d3a9..6cbcd76fdf3b 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -557,10 +557,10 @@ static struct SpriteFrameImage *sImageTables_DigitalDisplay[NUM_DIG_DISPLAY_SPRI // Const rom data. static const struct DigitalDisplaySprite *const sDigitalDisplayScenes[]; static const u16 sUnkPalette[]; -static const u8 sLuckyRoundProbabilities[][3]; +static const u8 sLuckyRoundProbabilities[NUM_SLOT_MACHINE_IDS][MAX_BET]; static const u8 sBiasTags[]; -static const u16 sLuckyFlagSettings_Top3[]; -static const u16 sLuckyFlagSettings_NotTop3[]; +static const u16 sLuckyFlagSettings_Top3[3]; +static const u16 sLuckyFlagSettings_NotTop3[5]; static const s16 sDigitalDisplay_SpriteCoords[][2]; static const SpriteCallback sDigitalDisplay_SpriteCallbacks[]; static const struct SpriteTemplate *const sSpriteTemplates_DigitalDisplay[NUM_DIG_DISPLAY_SPRITES]; @@ -582,8 +582,8 @@ static const struct SpriteSheet sSlotMachineSpriteSheets[22]; static const struct SpritePalette sSlotMachineSpritePalettes[]; static const u16 *const sDigitalDisplay_Pal; static const s16 sInitialReelPositions[NUM_REELS][2]; -static const u8 sLuckyFlagProbabilities_Top3[][6]; -static const u8 sLuckyFlagProbabilities_NotTop3[][6]; +static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS]; +static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS]; static const u8 sReeltimeProbabilities_UnluckyGame[][17]; static const u8 sReelTimeProbabilities_LuckyGame[][17]; static const u8 sSymToMatch[]; @@ -1651,22 +1651,18 @@ static void DrawLuckyFlags(void) if (IsThisRoundLucky()) { attempts = AttemptsAtLuckyFlags_Top3(); - if (attempts != 3) // if you found a lucky number + if (attempts != ARRAY_COUNT(sLuckyFlagSettings_Top3)) // if you found a lucky number { // attempts == 1: reelTime flag set sSlotMachine->luckyFlags |= sLuckyFlagSettings_Top3[attempts]; if (attempts != 1) - { return; - } } } // if it's not a lucky round or you got reel time, roll for the lower lucky flags attempts = AttemptsAtLuckyFlags_NotTop3(); - if (attempts != 5) // if you found a lucky number - { + if (attempts != ARRAY_COUNT(sLuckyFlagSettings_NotTop3)) // if you found a lucky number sSlotMachine->luckyFlags |= sLuckyFlagSettings_NotTop3[attempts]; - } } } } @@ -1704,7 +1700,7 @@ static u8 AttemptsAtLuckyFlags_Top3(void) { s16 count; - for (count = 0; count < 3; count++) + for (count = 0; count < (int)ARRAY_COUNT(sLuckyFlagSettings_Top3); count++) { s16 rval = Random() & 0xff; s16 value = sLuckyFlagProbabilities_Top3[count][sSlotMachine->machineId]; @@ -1718,7 +1714,7 @@ static u8 AttemptsAtLuckyFlags_NotTop3(void) { s16 count; - for (count = 0; count < 5; count++) + for (count = 0; count < (int)ARRAY_COUNT(sLuckyFlagSettings_NotTop3); count++) { s16 rval = Random() & 0xff; // random byte s16 value = sLuckyFlagProbabilities_NotTop3[count][sSlotMachine->machineId]; @@ -4807,27 +4803,83 @@ static const s16 sInitialReelPositions[NUM_REELS][2] = { [RIGHT_REEL] = {0, 2} }; -static const u8 sLuckyRoundProbabilities[][3] = { - {1, 1, 12}, - {1, 1, 14}, - {2, 2, 14}, - {2, 2, 14}, - {2, 3, 16}, - {3, 3, 16} +static const u8 sLuckyRoundProbabilities[NUM_SLOT_MACHINE_IDS][MAX_BET] = { + [SLOT_MACHINE_UNLUCKIEST] = {1, 1, 12}, + [SLOT_MACHINE_UNLUCKIER] = {1, 1, 14}, + [SLOT_MACHINE_UNLUCKY] = {2, 2, 14}, + [SLOT_MACHINE_LUCKY] = {2, 2, 14}, + [SLOT_MACHINE_LUCKIER] = {2, 3, 16}, + [SLOT_MACHINE_LUCKIEST] = {3, 3, 16} }; -static const u8 sLuckyFlagProbabilities_Top3[][6] = { - {25, 25, 30, 40, 40, 50}, - {25, 25, 30, 30, 35, 35}, - {25, 25, 30, 25, 25, 30} -}; - -static const u8 sLuckyFlagProbabilities_NotTop3[][6] = { - {20, 25, 25, 20, 25, 25}, - {12, 15, 15, 18, 19, 22}, - {25, 25, 25, 30, 30, 40}, - {25, 25, 20, 20, 15, 15}, - {40, 40, 35, 35, 40, 40} +static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS] = { + { // Probabilities for LUCKY_BIAS_777 + [SLOT_MACHINE_UNLUCKIEST] = 25, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 30, + [SLOT_MACHINE_LUCKY] = 40, + [SLOT_MACHINE_LUCKIER] = 40, + [SLOT_MACHINE_LUCKIEST] = 50 + }, + { // Probabilities for LUCKY_BIAS_REELTIME + [SLOT_MACHINE_UNLUCKIEST] = 25, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 30, + [SLOT_MACHINE_LUCKY] = 30, + [SLOT_MACHINE_LUCKIER] = 35, + [SLOT_MACHINE_LUCKIEST] = 35 + }, + { // Probabilities for LUCKY_BIAS_MIXED_777 + [SLOT_MACHINE_UNLUCKIEST] = 25, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 30, + [SLOT_MACHINE_LUCKY] = 25, + [SLOT_MACHINE_LUCKIER] = 25, + [SLOT_MACHINE_LUCKIEST] = 30 + } +}; + +static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { + { // Probabilities for LUCKY_BIAS_POWER + [SLOT_MACHINE_UNLUCKIEST] = 20, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 25, + [SLOT_MACHINE_LUCKY] = 20, + [SLOT_MACHINE_LUCKIER] = 25, + [SLOT_MACHINE_LUCKIEST] = 25 + }, + { // Probabilities for LUCKY_BIAS_AZURILL + [SLOT_MACHINE_UNLUCKIEST] = 12, + [SLOT_MACHINE_UNLUCKIER] = 15, + [SLOT_MACHINE_UNLUCKY] = 15, + [SLOT_MACHINE_LUCKY] = 18, + [SLOT_MACHINE_LUCKIER] = 19, + [SLOT_MACHINE_LUCKIEST] = 22 + }, + { // Probabilities for LUCKY_BIAS_LOTAD + [SLOT_MACHINE_UNLUCKIEST] = 25, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 25, + [SLOT_MACHINE_LUCKY] = 30, + [SLOT_MACHINE_LUCKIER] = 30, + [SLOT_MACHINE_LUCKIEST] = 40 + }, + { // Probabilities for LUCKY_BIAS_CHERRY + [SLOT_MACHINE_UNLUCKIEST] = 25, + [SLOT_MACHINE_UNLUCKIER] = 25, + [SLOT_MACHINE_UNLUCKY] = 20, + [SLOT_MACHINE_LUCKY] = 20, + [SLOT_MACHINE_LUCKIER] = 15, + [SLOT_MACHINE_LUCKIEST] = 15 + }, + { // Probabilities for LUCKY_BIAS_REPLAY + [SLOT_MACHINE_UNLUCKIEST] = 40, + [SLOT_MACHINE_UNLUCKIER] = 40, + [SLOT_MACHINE_UNLUCKY] = 35, + [SLOT_MACHINE_LUCKY] = 35, + [SLOT_MACHINE_LUCKIER] = 40, + [SLOT_MACHINE_LUCKIEST] = 40 + } }; static const u8 sReeltimeProbabilities_UnluckyGame[][17] = { @@ -5708,7 +5760,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Insert = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Stop = { - .tileTag = 18, + .tileTag = GFXTAG_STOP, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5741,7 +5793,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Lose = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Bonus = { - .tileTag = 19, + .tileTag = GFXTAG_BONUS, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5752,7 +5804,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Bonus = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Big = { - .tileTag = 20, + .tileTag = GFXTAG_BIG, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, @@ -5763,7 +5815,7 @@ static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Big = static const struct SpriteTemplate sSpriteTemplate_DigitalDisplay_Reg = { - .tileTag = 21, + .tileTag = GFXTAG_REG, .paletteTag = PALTAG_DIG_DISPLAY, .oam = &sOam_8x8, .anims = sAnims_SingleFrame, diff --git a/src/tv.c b/src/tv.c index 4638fc62172c..64c3eb78374b 100644 --- a/src/tv.c +++ b/src/tv.c @@ -145,7 +145,7 @@ static void ResolveNumberOneShow(u16); static void TryPutFishingAdviceOnAir(void); static u8 MonDataIdxToRibbon(u8); static void TryPutNumberOneOnAir(u8); -static bool8 IsPriceDiscounted(u8); +static bool8 ShouldApplyPokeNewsEffect(u8); static void TryPutWorldOfMastersOnAir(void); static void InterviewBefore_FanClubLetter(void); static void InterviewBefore_RecentHappenings(void); @@ -1525,7 +1525,7 @@ void TryPutSmartShopperOnAir(void) show->smartshopperShow.itemIds[i] = gMartPurchaseHistory[i].itemId; show->smartshopperShow.itemAmounts[i] = gMartPurchaseHistory[i].quantity; } - show->smartshopperShow.priceReduced = GetPriceReduction(POKENEWS_SLATEPORT); + show->smartshopperShow.priceReduced = IsPokeNewsActive(POKENEWS_SLATEPORT); StringCopy(show->smartshopperShow.playerName, gSaveBlock2Ptr->playerName); StorePlayerIdInRecordMixShow(show); show->smartshopperShow.language = gGameLanguage; @@ -2641,7 +2641,7 @@ void DoPokeNews(void) } } -bool8 GetPriceReduction(u8 newsKind) +bool8 IsPokeNewsActive(u8 newsKind) { u8 i; @@ -2652,7 +2652,7 @@ bool8 GetPriceReduction(u8 newsKind) { if (gSaveBlock1Ptr->pokeNews[i].kind == newsKind) { - if (gSaveBlock1Ptr->pokeNews[i].state == 2 && IsPriceDiscounted(newsKind)) + if (gSaveBlock1Ptr->pokeNews[i].state == 2 && ShouldApplyPokeNewsEffect(newsKind)) return TRUE; return FALSE; @@ -2661,7 +2661,11 @@ bool8 GetPriceReduction(u8 newsKind) return FALSE; } -static bool8 IsPriceDiscounted(u8 newsKind) +// Returns TRUE if the effects of the given PokeNews should be applied. +// For POKENEWS_SLATEPORT / POKENEWS_LILYCOVE, only apply the effect (price reduction) +// if the player is talking to the Energy Guru / at the Dept Store Rooftop. +// For any other type of PokeNews this is always TRUE. +static bool8 ShouldApplyPokeNewsEffect(u8 newsKind) { switch (newsKind) { From d4147879320c563254059a92eb7a07b5cfcc2143 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Nov 2021 16:13:52 -0500 Subject: [PATCH 431/762] Some TV clean-up --- data/maps/SlateportCity/scripts.inc | 2 + data/scripts/tv.inc | 4 +- include/constants/event_objects.h | 1 + include/constants/tv.h | 8 + include/global.h | 6 +- include/global.tv.h | 22 +- src/tv.c | 334 ++++++++++++++-------------- 7 files changed, 198 insertions(+), 179 deletions(-) diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 693a99e49aa8..be2f3f3e51e7 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -19,6 +19,8 @@ .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 diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc index 14f3ade48d76..f8832a3abd0d 100644 --- a/data/scripts/tv.inc +++ b/data/scripts/tv.inc @@ -52,11 +52,13 @@ EventScript_PlayersHouseLatiNewsFlash:: releaseall end +@ The following is a loop for the TV show messages +@ VAR_RESULT is set to TRUE when the show has printed its final message EventScript_DoTVShow:: special DoTVShow waitmessage waitbuttonpress - compare VAR_RESULT, 1 + compare VAR_RESULT, TRUE goto_if_ne EventScript_DoTVShow goto EventScript_TurnOffTV end diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 1958c792e16a..6b99f19bd4ee 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -311,5 +311,6 @@ #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 #endif // GUARD_CONSTANTS_EVENT_OBJECTS_H diff --git a/include/constants/tv.h b/include/constants/tv.h index 3fe6c57b24e0..4c8dd4fa8389 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -8,6 +8,14 @@ #define POKENEWS_BLENDMASTER 4 #define NUM_POKENEWS_TYPES 4 // Excludes NONE +#define POKENEWS_STATE_INACTIVE 0 +#define POKENEWS_STATE_UPCOMING 1 +#define POKENEWS_STATE_ACTIVE 2 + +// Number of days to count down until the news event occurs. +// Nothing is aired on TV the first day +#define POKENEWS_COUNTDOWN 4 + // TV shows are categorized as being in one of 3 groups // - TVGROUP_NORMAL, TV shows that can appear without Record Mixing // - TVGROUP_RECORD_MIX, TV shows that can only appear via Record Mixing diff --git a/include/global.h b/include/global.h index 9aac66fda005..024280f98697 100644 --- a/include/global.h +++ b/include/global.h @@ -972,10 +972,10 @@ struct SaveBlock1 /*0x2B92*/ u8 outbreakLocationMapNum; /*0x2B93*/ u8 outbreakLocationMapGroup; /*0x2B94*/ u8 outbreakPokemonLevel; - /*0x2B95*/ u8 outbreakUnk1; - /*0x2B96*/ u16 outbreakUnk2; + /*0x2B95*/ u8 outbreakUnused1; + /*0x2B96*/ u16 outbreakUnused2; /*0x2B98*/ u16 outbreakPokemonMoves[MAX_MON_MOVES]; - /*0x2BA0*/ u8 outbreakUnk4; + /*0x2BA0*/ u8 outbreakUnused3; /*0x2BA1*/ u8 outbreakPokemonProbability; /*0x2BA2*/ u16 outbreakDaysLeft; /*0x2BA4*/ struct GabbyAndTyData gabbyAndTyData; diff --git a/include/global.tv.h b/include/global.tv.h index 2bc7dda99816..e24ead3f21d6 100644 --- a/include/global.tv.h +++ b/include/global.tv.h @@ -61,7 +61,7 @@ typedef union // size = 0x24 /*0x0F*/ u8 filler_0F[1]; /*0x10*/ u8 nickname[PLAYER_NAME_LENGTH + 1]; /*0x18*/ u16 words18[2]; - /*0x1C*/ u16 words[4]; + /*0x1C*/ u16 words[2]; } fanclubOpinions; // TVSHOW_DUMMY @@ -334,7 +334,7 @@ typedef union // size = 0x24 /*0x00*/ u8 kind; /*0x01*/ bool8 active; /*0x02*/ u8 avgLevel; - /*0x03*/ u8 nDecorations; + /*0x03*/ u8 numDecorations; /*0x04*/ u8 decorations[4]; /*0x08*/ u16 species; /*0x0a*/ u16 move; @@ -437,8 +437,8 @@ typedef union // size = 0x24 struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; - /*0x02*/ u8 nMonsCaught; - /*0x03*/ u8 nPkblkUsed; + /*0x02*/ u8 monsCaught; + /*0x03*/ u8 pokeblocksUsed; /*0x04*/ u8 language; /*0x05*/ u8 filler_05[14]; /*0x13*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; @@ -449,27 +449,27 @@ typedef union // size = 0x24 struct { /*0x00*/ u8 kind; /*0x01*/ bool8 active; - /*0x02*/ u8 var02; - /*0x03*/ u8 var03; + /*0x02*/ u8 unused1; + /*0x03*/ u8 unused3; /*0x04*/ u16 moves[MAX_MON_MOVES]; /*0x0C*/ u16 species; - /*0x0E*/ u16 var0E; + /*0x0E*/ u16 unused2; /*0x10*/ u8 locationMapNum; /*0x11*/ u8 locationMapGroup; - /*0x12*/ u8 var12; + /*0x12*/ u8 unused4; /*0x13*/ u8 probability; /*0x14*/ u8 level; - /*0x15*/ u8 var15; + /*0x15*/ u8 unused5; /*0x16*/ u16 daysLeft; /*0x18*/ u8 language; } massOutbreak; } TVShow; -typedef struct // 2b50 +typedef struct { u8 kind; u8 state; - u16 days; + u16 dayCountdown; } PokeNews; struct GabbyAndTyData diff --git a/src/tv.c b/src/tv.c index 64c3eb78374b..de16578137d2 100644 --- a/src/tv.c +++ b/src/tv.c @@ -36,6 +36,7 @@ #include "data.h" #include "constants/battle_frontier.h" #include "constants/contest.h" +#include "constants/decorations.h" #include "constants/event_objects.h" #include "constants/items.h" #include "constants/layouts.h" @@ -139,7 +140,7 @@ static void TryPutRandomPokeNewsOnAir(void); static void SortPurchasesByQuantity(void); static void UpdateMassOutbreakTimeLeft(u16); static void TryEndMassOutbreak(u16); -static void UpdatePokeNewsTimeLeft(u16); +static void UpdatePokeNewsCountdown(u16); static void ResolveWorldOfMastersShow(u16); static void ResolveNumberOneShow(u16); static void TryPutFishingAdviceOnAir(void); @@ -227,24 +228,24 @@ static const struct { } }; -static const u16 sGoldSymbolFlags[] = { - FLAG_SYS_TOWER_GOLD, - FLAG_SYS_DOME_GOLD, - FLAG_SYS_PALACE_GOLD, - FLAG_SYS_ARENA_GOLD, - FLAG_SYS_FACTORY_GOLD, - FLAG_SYS_PIKE_GOLD, - FLAG_SYS_PYRAMID_GOLD +static const u16 sGoldSymbolFlags[NUM_FRONTIER_FACILITIES] = { + [FRONTIER_FACILITY_TOWER] = FLAG_SYS_TOWER_GOLD, + [FRONTIER_FACILITY_DOME] = FLAG_SYS_DOME_GOLD, + [FRONTIER_FACILITY_PALACE] = FLAG_SYS_PALACE_GOLD, + [FRONTIER_FACILITY_ARENA] = FLAG_SYS_ARENA_GOLD, + [FRONTIER_FACILITY_FACTORY] = FLAG_SYS_FACTORY_GOLD, + [FRONTIER_FACILITY_PIKE] = FLAG_SYS_PIKE_GOLD, + [FRONTIER_FACILITY_PYRAMID] = FLAG_SYS_PYRAMID_GOLD }; -static const u16 sSilverSymbolFlags[] = { - FLAG_SYS_TOWER_SILVER, - FLAG_SYS_DOME_SILVER, - FLAG_SYS_PALACE_SILVER, - FLAG_SYS_ARENA_SILVER, - FLAG_SYS_FACTORY_SILVER, - FLAG_SYS_PIKE_SILVER, - FLAG_SYS_PYRAMID_SILVER +static const u16 sSilverSymbolFlags[NUM_FRONTIER_FACILITIES] = { + [FRONTIER_FACILITY_TOWER] = FLAG_SYS_TOWER_SILVER, + [FRONTIER_FACILITY_DOME] = FLAG_SYS_DOME_SILVER, + [FRONTIER_FACILITY_PALACE] = FLAG_SYS_PALACE_SILVER, + [FRONTIER_FACILITY_ARENA] = FLAG_SYS_ARENA_SILVER, + [FRONTIER_FACILITY_FACTORY] = FLAG_SYS_FACTORY_SILVER, + [FRONTIER_FACILITY_PIKE] = FLAG_SYS_PIKE_SILVER, + [FRONTIER_FACILITY_PYRAMID] = FLAG_SYS_PYRAMID_SILVER }; static const u16 sNumberOneVarsAndThresholds[][2] = { @@ -257,28 +258,28 @@ static const u16 sNumberOneVarsAndThresholds[][2] = { {VAR_DAILY_BP, 30} }; -static const u8 *const sPokeNewsTextGroup_Upcoming[] = { - NULL, - gPokeNewsTextSlateport_Upcoming, - gPokeNewsTextGameCorner_Upcoming, - gPokeNewsTextLilycove_Upcoming, - gPokeNewsTextBlendMaster_Upcoming +static const u8 *const sPokeNewsTextGroup_Upcoming[NUM_POKENEWS_TYPES + 1] = { + [POKENEWS_NONE] = NULL, + [POKENEWS_SLATEPORT] = gPokeNewsTextSlateport_Upcoming, + [POKENEWS_GAME_CORNER] = gPokeNewsTextGameCorner_Upcoming, + [POKENEWS_LILYCOVE] = gPokeNewsTextLilycove_Upcoming, + [POKENEWS_BLENDMASTER] = gPokeNewsTextBlendMaster_Upcoming }; -static const u8 *const sPokeNewsTextGroup_Ongoing[] = { - NULL, - gPokeNewsTextSlateport_Ongoing, - gPokeNewsTextGameCorner_Ongoing, - gPokeNewsTextLilycove_Ongoing, - gPokeNewsTextBlendMaster_Ongoing +static const u8 *const sPokeNewsTextGroup_Ongoing[NUM_POKENEWS_TYPES + 1] = { + [POKENEWS_NONE] = NULL, + [POKENEWS_SLATEPORT] = gPokeNewsTextSlateport_Ongoing, + [POKENEWS_GAME_CORNER] = gPokeNewsTextGameCorner_Ongoing, + [POKENEWS_LILYCOVE] = gPokeNewsTextLilycove_Ongoing, + [POKENEWS_BLENDMASTER] = gPokeNewsTextBlendMaster_Ongoing }; -static const u8 *const sPokeNewsTextGroup_Ending[] = { - NULL, - gPokeNewsTextSlateport_Ending, - gPokeNewsTextGameCorner_Ending, - gPokeNewsTextLilycove_Ending, - gPokeNewsTextBlendMaster_Ending +static const u8 *const sPokeNewsTextGroup_Ending[NUM_POKENEWS_TYPES + 1] = { + [POKENEWS_NONE] = NULL, + [POKENEWS_SLATEPORT] = gPokeNewsTextSlateport_Ending, + [POKENEWS_GAME_CORNER] = gPokeNewsTextGameCorner_Ending, + [POKENEWS_LILYCOVE] = gPokeNewsTextLilycove_Ending, + [POKENEWS_BLENDMASTER] = gPokeNewsTextBlendMaster_Ending }; u8 *const gTVStringVarPtrs[] = { @@ -1568,13 +1569,13 @@ void StartMassOutbreak(void) gSaveBlock1Ptr->outbreakLocationMapNum = show->massOutbreak.locationMapNum; gSaveBlock1Ptr->outbreakLocationMapGroup = show->massOutbreak.locationMapGroup; gSaveBlock1Ptr->outbreakPokemonLevel = show->massOutbreak.level; - gSaveBlock1Ptr->outbreakUnk1 = show->massOutbreak.var02; - gSaveBlock1Ptr->outbreakUnk2 = show->massOutbreak.var0E; + gSaveBlock1Ptr->outbreakUnused1 = show->massOutbreak.unused1; + gSaveBlock1Ptr->outbreakUnused2 = show->massOutbreak.unused2; gSaveBlock1Ptr->outbreakPokemonMoves[0] = show->massOutbreak.moves[0]; gSaveBlock1Ptr->outbreakPokemonMoves[1] = show->massOutbreak.moves[1]; gSaveBlock1Ptr->outbreakPokemonMoves[2] = show->massOutbreak.moves[2]; gSaveBlock1Ptr->outbreakPokemonMoves[3] = show->massOutbreak.moves[3]; - gSaveBlock1Ptr->outbreakUnk4 = show->massOutbreak.var03; + gSaveBlock1Ptr->outbreakUnused3 = show->massOutbreak.unused3; gSaveBlock1Ptr->outbreakPokemonProbability = show->massOutbreak.probability; gSaveBlock1Ptr->outbreakDaysLeft = 2; } @@ -1667,19 +1668,19 @@ static void TryStartRandomMassOutbreak(void) show->massOutbreak.kind = TVSHOW_MASS_OUTBREAK; show->massOutbreak.active = TRUE; show->massOutbreak.level = sPokeOutbreakSpeciesList[outbreakIdx].level; - show->massOutbreak.var02 = 0; - show->massOutbreak.var03 = 0; + show->massOutbreak.unused1 = 0; + show->massOutbreak.unused3 = 0; show->massOutbreak.species = sPokeOutbreakSpeciesList[outbreakIdx].species; - show->massOutbreak.var0E = 0; + show->massOutbreak.unused2 = 0; show->massOutbreak.moves[0] = sPokeOutbreakSpeciesList[outbreakIdx].moves[0]; show->massOutbreak.moves[1] = sPokeOutbreakSpeciesList[outbreakIdx].moves[1]; show->massOutbreak.moves[2] = sPokeOutbreakSpeciesList[outbreakIdx].moves[2]; show->massOutbreak.moves[3] = sPokeOutbreakSpeciesList[outbreakIdx].moves[3]; show->massOutbreak.locationMapNum = sPokeOutbreakSpeciesList[outbreakIdx].location; show->massOutbreak.locationMapGroup = 0; - show->massOutbreak.var12 = 0; + show->massOutbreak.unused4 = 0; show->massOutbreak.probability = 50; - show->massOutbreak.var15 = 0; + show->massOutbreak.unused5 = 0; show->massOutbreak.daysLeft = 1; StorePlayerIdInNormalShow(show); show->massOutbreak.language = gGameLanguage; @@ -1694,13 +1695,13 @@ void EndMassOutbreak(void) gSaveBlock1Ptr->outbreakLocationMapNum = 0; gSaveBlock1Ptr->outbreakLocationMapGroup = 0; gSaveBlock1Ptr->outbreakPokemonLevel = 0; - gSaveBlock1Ptr->outbreakUnk1 = 0; - gSaveBlock1Ptr->outbreakUnk2 = 0; + gSaveBlock1Ptr->outbreakUnused1 = 0; + gSaveBlock1Ptr->outbreakUnused2 = 0; gSaveBlock1Ptr->outbreakPokemonMoves[0] = MOVE_NONE; gSaveBlock1Ptr->outbreakPokemonMoves[1] = MOVE_NONE; gSaveBlock1Ptr->outbreakPokemonMoves[2] = MOVE_NONE; gSaveBlock1Ptr->outbreakPokemonMoves[3] = MOVE_NONE; - gSaveBlock1Ptr->outbreakUnk4 = 0; + gSaveBlock1Ptr->outbreakUnused3 = 0; gSaveBlock1Ptr->outbreakPokemonProbability = 0; gSaveBlock1Ptr->outbreakDaysLeft = 0; } @@ -1709,7 +1710,7 @@ void UpdateTVShowsPerDay(u16 days) { UpdateMassOutbreakTimeLeft(days); TryEndMassOutbreak(days); - UpdatePokeNewsTimeLeft(days); + UpdatePokeNewsCountdown(days); ResolveWorldOfMastersShow(days); ResolveNumberOneShow(days); } @@ -1797,9 +1798,7 @@ void SetPokemonAnglerSpecies(u16 species) // Either way the temporary version of the show in the last slot is deleted. static void ResolveWorldOfMastersShow(u16 days) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; + TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; if (show->worldOfMasters.kind == TVSHOW_WORLD_OF_MASTERS) { if (show->worldOfMasters.numPokeCaught >= 20) @@ -1863,7 +1862,7 @@ void TryPutTodaysRivalTrainerOnAir(void) show->rivalTrainer.mapLayoutId = gMapHeader.mapLayoutId; show->rivalTrainer.nSilverSymbols = 0; show->rivalTrainer.nGoldSymbols = 0; - for (i = 0; i < 7; i++) + for (i = 0; i < NUM_FRONTIER_FACILITIES; i++) { if (FlagGet(sSilverSymbolFlags[i]) == TRUE) show->rivalTrainer.nSilverSymbols++; @@ -1989,33 +1988,39 @@ static void SecretBaseVisit_CalculateDecorationData(TVShow *show) u8 decoration; for (i = 0; i < DECOR_MAX_SECRET_BASE; i++) - sTV_DecorationsBuffer[i] = 0; + sTV_DecorationsBuffer[i] = DECOR_NONE; + // Count (and save) the unique decorations in the base for (i = 0, n = 0; i < DECOR_MAX_SECRET_BASE; i++) { decoration = gSaveBlock1Ptr->secretBases[0].decorations[i]; - if (decoration) + if (decoration != DECOR_NONE) { + // Search for an empty spot to save decoration for (j = 0; j < DECOR_MAX_SECRET_BASE; j++) { - if (sTV_DecorationsBuffer[j] == 0) + if (sTV_DecorationsBuffer[j] == DECOR_NONE) { + // Save and count new unique decoration sTV_DecorationsBuffer[j] = decoration; n++; break; } + + // Decoration has already been saved, skip and move on to the next base decoration if (sTV_DecorationsBuffer[j] == decoration) break; } } } - if (n > 4) - show->secretBaseVisit.nDecorations = 4; + // Cap the number of unique decorations to the number the TV show will talk about + if (n > ARRAY_COUNT(show->secretBaseVisit.decorations)) + show->secretBaseVisit.numDecorations = ARRAY_COUNT(show->secretBaseVisit.decorations); else - show->secretBaseVisit.nDecorations = n; + show->secretBaseVisit.numDecorations = n; - switch (show->secretBaseVisit.nDecorations) + switch (show->secretBaseVisit.numDecorations) { case 0: break; @@ -2023,16 +2028,16 @@ static void SecretBaseVisit_CalculateDecorationData(TVShow *show) show->secretBaseVisit.decorations[0] = sTV_DecorationsBuffer[0]; break; default: + // More than 1 decoration, randomize the full list for (k = 0; k < n * n; k++) { decoration = Random() % n; j = Random() % n; - i = sTV_DecorationsBuffer[decoration]; - sTV_DecorationsBuffer[decoration] = sTV_DecorationsBuffer[j]; - sTV_DecorationsBuffer[j] = i; + SWAP(sTV_DecorationsBuffer[decoration], sTV_DecorationsBuffer[j], i); } - for (i = 0; i < show->secretBaseVisit.nDecorations; i++) + // Pick the first decorations in the randomized list to talk about on the show + for (i = 0; i < show->secretBaseVisit.numDecorations; i++) show->secretBaseVisit.decorations[i] = sTV_DecorationsBuffer[i]; break; } @@ -2043,50 +2048,55 @@ static void SecretBaseVisit_CalculatePartyData(TVShow *show) u8 i; u16 move; u16 j; - u8 nMoves; - u8 nPokemon; + u8 numMoves; + u8 numPokemon; u16 sum; - for (i = 0, nPokemon = 0; i < PARTY_SIZE; i++) + for (i = 0, numPokemon = 0; i < PARTY_SIZE; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) != SPECIES_NONE && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) { - sTV_SecretBaseVisitMonsTemp[nPokemon].level = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); - sTV_SecretBaseVisitMonsTemp[nPokemon].species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); - nMoves = 0; + sTV_SecretBaseVisitMonsTemp[numPokemon].level = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); + sTV_SecretBaseVisitMonsTemp[numPokemon].species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); + + // Check all the PokĂ©mon's moves, then randomly select one to save + numMoves = 0; move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE1); if (move != MOVE_NONE) { - sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves++; + sTV_SecretBaseVisitMovesTemp[numMoves] = move; + numMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE2); if (move != MOVE_NONE) { - sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves++; + sTV_SecretBaseVisitMovesTemp[numMoves] = move; + numMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE3); if (move != MOVE_NONE) { - sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves++; + sTV_SecretBaseVisitMovesTemp[numMoves] = move; + numMoves++; } move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE4); if (move != MOVE_NONE) { - sTV_SecretBaseVisitMovesTemp[nMoves] = move; - nMoves++; + sTV_SecretBaseVisitMovesTemp[numMoves] = move; + numMoves++; } - sTV_SecretBaseVisitMonsTemp[nPokemon].move = sTV_SecretBaseVisitMovesTemp[Random() % nMoves]; - nPokemon++; + sTV_SecretBaseVisitMonsTemp[numPokemon].move = sTV_SecretBaseVisitMovesTemp[Random() % numMoves]; + numPokemon++; } } - for (i = 0, sum = 0; i < nPokemon; i++) + + for (i = 0, sum = 0; i < numPokemon; i++) sum += sTV_SecretBaseVisitMonsTemp[i].level; - show->secretBaseVisit.avgLevel = sum / nPokemon; - j = Random() % nPokemon; + // Using the data calculated above, save the data to talk about on the show + // (average level, and one randomly selected species / move) + show->secretBaseVisit.avgLevel = sum / numPokemon; + j = Random() % numPokemon; show->secretBaseVisit.species = sTV_SecretBaseVisitMonsTemp[j].species; show->secretBaseVisit.move = sTV_SecretBaseVisitMonsTemp[j].move; } @@ -2224,7 +2234,7 @@ void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16 } } -void TryPutSafariFanClubOnAir(u8 nMonsCaught, u8 nPkblkUsed) +void TryPutSafariFanClubOnAir(u8 monsCaught, u8 pokeblocksUsed) { TVShow *show; @@ -2235,8 +2245,8 @@ void TryPutSafariFanClubOnAir(u8 nMonsCaught, u8 nPkblkUsed) show->safariFanClub.kind = TVSHOW_SAFARI_FAN_CLUB; show->safariFanClub.active = FALSE; // NOTE: Show is not active until passed via Record Mix. StringCopy(show->safariFanClub.playerName, gSaveBlock2Ptr->playerName); - show->safariFanClub.nMonsCaught = nMonsCaught; - show->safariFanClub.nPkblkUsed = nPkblkUsed; + show->safariFanClub.monsCaught = monsCaught; + show->safariFanClub.pokeblocksUsed = pokeblocksUsed; StorePlayerIdInRecordMixShow(show); show->safariFanClub.language = gGameLanguage; } @@ -2536,12 +2546,12 @@ static void TryPutRandomPokeNewsOnAir(void) sCurTVShowSlot = GetFirstEmptyPokeNewsSlot(gSaveBlock1Ptr->pokeNews); if (sCurTVShowSlot != -1 && rbernoulli(1, 100) != TRUE) { - u8 newsKind = (Random() % NUM_POKENEWS_TYPES) + POKENEWS_SLATEPORT; + u8 newsKind = (Random() % NUM_POKENEWS_TYPES) + 1; // +1 to skip over POKENEWS_NONE if (IsAddingPokeNewsDisallowed(newsKind) != TRUE) { gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].kind = newsKind; - gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].days = 4; - gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].state = 1; + gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].dayCountdown = POKENEWS_COUNTDOWN; + gSaveBlock1Ptr->pokeNews[sCurTVShowSlot].state = POKENEWS_STATE_UPCOMING; } } } @@ -2570,8 +2580,8 @@ static void ClearPokeNews(void) static void ClearPokeNewsBySlot(u8 i) { gSaveBlock1Ptr->pokeNews[i].kind = POKENEWS_NONE; - gSaveBlock1Ptr->pokeNews[i].state = FALSE; - gSaveBlock1Ptr->pokeNews[i].days = 0; + gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_INACTIVE; + gSaveBlock1Ptr->pokeNews[i].dayCountdown = 0; } static void CompactPokeNews(void) @@ -2603,8 +2613,8 @@ static u8 FindAnyPokeNewsOnTheAir(void) for (i = 0; i < POKE_NEWS_COUNT; i++) { if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE - && gSaveBlock1Ptr->pokeNews[i].state == 1 - && gSaveBlock1Ptr->pokeNews[i].days < 3) + && gSaveBlock1Ptr->pokeNews[i].state == POKENEWS_STATE_UPCOMING + && gSaveBlock1Ptr->pokeNews[i].dayCountdown < POKENEWS_COUNTDOWN - 1) return i; } return 0xFF; @@ -2612,19 +2622,17 @@ static u8 FindAnyPokeNewsOnTheAir(void) void DoPokeNews(void) { - u8 i; - u16 n; - - i = FindAnyPokeNewsOnTheAir(); + u8 i = FindAnyPokeNewsOnTheAir(); if (i == 0xFF) { gSpecialVar_Result = FALSE; } else { - if (gSaveBlock1Ptr->pokeNews[i].days == 0) + if (gSaveBlock1Ptr->pokeNews[i].dayCountdown == 0) { - gSaveBlock1Ptr->pokeNews[i].state = 2; + // News event is occurring, make comment depending on how much time is left + gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_ACTIVE; if (gLocalTime.hours < 20) ShowFieldMessage(sPokeNewsTextGroup_Ongoing[gSaveBlock1Ptr->pokeNews[i].kind]); else @@ -2632,9 +2640,13 @@ void DoPokeNews(void) } else { - n = gSaveBlock1Ptr->pokeNews[i].days; - ConvertIntToDecimalStringN(gStringVar1, n, STR_CONV_MODE_LEFT_ALIGN, 1); - gSaveBlock1Ptr->pokeNews[i].state = 0; + // News event is upcoming, make comment about countdown to event + u16 dayCountdown = gSaveBlock1Ptr->pokeNews[i].dayCountdown; + ConvertIntToDecimalStringN(gStringVar1, dayCountdown, STR_CONV_MODE_LEFT_ALIGN, 1); + + // Mark as inactive so the countdown TV airing doesn't repeat + // Will be flagged as "upcoming" again by UpdatePokeNewsCountdown + gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_INACTIVE; ShowFieldMessage(sPokeNewsTextGroup_Upcoming[gSaveBlock1Ptr->pokeNews[i].kind]); } gSpecialVar_Result = TRUE; @@ -2652,7 +2664,7 @@ bool8 IsPokeNewsActive(u8 newsKind) { if (gSaveBlock1Ptr->pokeNews[i].kind == newsKind) { - if (gSaveBlock1Ptr->pokeNews[i].state == 2 && ShouldApplyPokeNewsEffect(newsKind)) + if (gSaveBlock1Ptr->pokeNews[i].state == POKENEWS_STATE_ACTIVE && ShouldApplyPokeNewsEffect(newsKind)) return TRUE; return FALSE; @@ -2662,19 +2674,22 @@ bool8 IsPokeNewsActive(u8 newsKind) } // Returns TRUE if the effects of the given PokeNews should be applied. -// For POKENEWS_SLATEPORT / POKENEWS_LILYCOVE, only apply the effect (price reduction) -// if the player is talking to the Energy Guru / at the Dept Store Rooftop. +// For POKENEWS_SLATEPORT / POKENEWS_LILYCOVE, only apply the effect if +// the player is talking to the Energy Guru / at the Dept Store Rooftop. // For any other type of PokeNews this is always TRUE. 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) && gSpecialVar_LastTalked == 25) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SLATEPORT_CITY) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(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(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP)) return TRUE; return FALSE; } @@ -2696,7 +2711,7 @@ static bool8 IsAddingPokeNewsDisallowed(u8 newsKind) return FALSE; } -static void UpdatePokeNewsTimeLeft(u16 days) +static void UpdatePokeNewsCountdown(u16 days) { u8 i; @@ -2704,16 +2719,18 @@ static void UpdatePokeNewsTimeLeft(u16 days) { if (gSaveBlock1Ptr->pokeNews[i].kind != POKENEWS_NONE) { - if (gSaveBlock1Ptr->pokeNews[i].days < days) + if (gSaveBlock1Ptr->pokeNews[i].dayCountdown < days) { + // News event has elapsed, clear it from list ClearPokeNewsBySlot(i); } else { - if (gSaveBlock1Ptr->pokeNews[i].state == 0 && FlagGet(FLAG_SYS_GAME_CLEAR) == TRUE) - gSaveBlock1Ptr->pokeNews[i].state = 1; + // Progress countdown to news event + if (gSaveBlock1Ptr->pokeNews[i].state == POKENEWS_STATE_INACTIVE && FlagGet(FLAG_SYS_GAME_CLEAR) == TRUE) + gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_UPCOMING; - gSaveBlock1Ptr->pokeNews[i].days -= days; + gSaveBlock1Ptr->pokeNews[i].dayCountdown -= days; } } } @@ -2763,9 +2780,7 @@ void CopyContestCategoryToStringVar(u8 varIdx, u8 category) void SetContestCategoryStringVarForInterview(void) { - TVShow *show; - - show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; + TVShow *show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004]; CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory); } @@ -2792,9 +2807,7 @@ size_t CountDigits(int value) static void SmartShopper_BufferPurchaseTotal(u8 varIdx, TVShow *show) { u8 i; - int price; - - price = 0; + int price = 0; for (i = 0; i < SMARTSHOPPER_NUM_ITEMS; i++) { if (show->smartshopperShow.itemIds[i] != ITEM_NONE) @@ -2835,21 +2848,19 @@ static bool8 IsRecordMixShowAlreadySpawned(u8 kind, bool8 delete) static void SortPurchasesByQuantity(void) { u8 i, j; - u16 tmpId; - u16 tmpQn; - + for (i = 0; i < SMARTSHOPPER_NUM_ITEMS - 1; i++) { for (j = i + 1; j < SMARTSHOPPER_NUM_ITEMS; j++) { if (gMartPurchaseHistory[i].quantity < gMartPurchaseHistory[j].quantity) { - tmpId = gMartPurchaseHistory[i].itemId; - tmpQn = gMartPurchaseHistory[i].quantity; + u16 tempItemId = gMartPurchaseHistory[i].itemId; + u16 tempQuantity = gMartPurchaseHistory[i].quantity; gMartPurchaseHistory[i].itemId = gMartPurchaseHistory[j].itemId; gMartPurchaseHistory[i].quantity = gMartPurchaseHistory[j].quantity; - gMartPurchaseHistory[j].itemId = tmpId; - gMartPurchaseHistory[j].quantity = tmpQn; + gMartPurchaseHistory[j].itemId = tempItemId; + gMartPurchaseHistory[j].quantity = tempQuantity; } } } @@ -2926,7 +2937,8 @@ static void InterviewBefore_FanClubLetter(void) if (!gSpecialVar_Result) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]); - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubLetter.words, 6); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubLetter.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubLetter.words)); } } @@ -2935,7 +2947,8 @@ static void InterviewBefore_RecentHappenings(void) TryReplaceOldTVShowOfKind(TVSHOW_RECENT_HAPPENINGS); if (!gSpecialVar_Result) { - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].recentHappenings.words, 6); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].recentHappenings.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].recentHappenings.words)); } } @@ -2947,7 +2960,8 @@ static void InterviewBefore_PkmnFanClubOpinions(void) StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]); GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_NICKNAME, gStringVar2); StringGetEnd10(gStringVar2); - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words, 2); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words)); } } @@ -2965,7 +2979,8 @@ static void InterviewBefore_BravoTrainerPkmnProfile(void) { TryReplaceOldTVShowOfKind(TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE); if (!gSpecialVar_Result) - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainer.words, 2); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainer.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainer.words)); } static void InterviewBefore_ContestLiveUpdates(void) @@ -2982,14 +2997,16 @@ static void InterviewBefore_BravoTrainerBTProfile(void) { TryReplaceOldTVShowOfKind(TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE); if (!gSpecialVar_Result) - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainerTower.words, 1); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainerTower.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].bravoTrainerTower.words)); } static void InterviewBefore_FanClubSpecial(void) { TryReplaceOldTVShowOfKind(TVSHOW_FAN_CLUB_SPECIAL); if (!gSpecialVar_Result) - InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanClubSpecial.words, 1); + InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanClubSpecial.words, + ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanClubSpecial.words)); } static bool8 IsPartyMonNicknamedOrNotEnglish(u8 monIdx) @@ -3061,23 +3078,19 @@ static void CompactTVShowArray(TVShow *shows) } } -static u16 GetRandomDifferentSpeciesAndNameSeenByPlayer(u8 varIdx, u16 passedSpecies) +static u16 GetRandomDifferentSpeciesAndNameSeenByPlayer(u8 varIdx, u16 excludedSpecies) { - u16 species; - - species = GetRandomDifferentSpeciesSeenByPlayer(passedSpecies); + u16 species = GetRandomDifferentSpeciesSeenByPlayer(excludedSpecies); StringCopy(gTVStringVarPtrs[varIdx], gSpeciesNames[species]); return species; } -static u16 GetRandomDifferentSpeciesSeenByPlayer(u16 passedSpecies) +static u16 GetRandomDifferentSpeciesSeenByPlayer(u16 excludedSpecies) { - u16 species; - u16 initSpecies; + u16 species = Random() % (NUM_SPECIES - 1) + 1; + u16 initSpecies = species; - species = (Random() % (NUM_SPECIES - 1)) + 1; - initSpecies = species; - while (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_SEEN) != TRUE || species == passedSpecies) + while (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_SEEN) != TRUE || species == excludedSpecies) { if (species == SPECIES_NONE + 1) species = NUM_SPECIES - 1; @@ -3086,7 +3099,8 @@ static u16 GetRandomDifferentSpeciesSeenByPlayer(u16 passedSpecies) if (species == initSpecies) { - species = passedSpecies; + // Looped back to initial species (only PokĂ©mon seen), must choose excluded species + species = excludedSpecies; return species; } }; @@ -3801,7 +3815,7 @@ void DeactivateAllNormalTVShows(void) } } -// Ensures a minimum of 5 empty mixed show slots +// Ensures a minimum of 5 empty record mixed show slots static void DeleteExcessMixedShows(void) { s8 i; @@ -3900,8 +3914,8 @@ static bool8 TryMixPokeNewsShow(PokeNews *dest, PokeNews *src, s8 slot) return FALSE; } dest[slot].kind = src->kind; - dest[slot].state = 1; - dest[slot].days = src->days; + dest[slot].state = POKENEWS_STATE_UPCOMING; + dest[slot].dayCountdown = src->dayCountdown; return TRUE; } @@ -3932,7 +3946,7 @@ static void ClearPokeNewsIfGameNotComplete(void) if (FlagGet(FLAG_SYS_GAME_CLEAR) != TRUE) { for (i = 0; i < POKE_NEWS_COUNT; i++) - gSaveBlock1Ptr->pokeNews[i].state = 0; + gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_INACTIVE; } } @@ -5910,21 +5924,21 @@ static void DoTVShowSecretBaseVisit(void) { case 0: TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language); - if (show->secretBaseVisit.nDecorations == 0) + if (show->secretBaseVisit.numDecorations == 0) sTVShowState = 2; else sTVShowState = 1; break; case 1: StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[0]].name); - if (show->secretBaseVisit.nDecorations == 1) + if (show->secretBaseVisit.numDecorations == 1) sTVShowState = 4; else sTVShowState = 3; break; case 3: StringCopy(gStringVar2, gDecorations[show->secretBaseVisit.decorations[1]].name); - switch (show->secretBaseVisit.nDecorations) + switch (show->secretBaseVisit.numDecorations) { case 2: sTVShowState = 7; @@ -5988,21 +6002,13 @@ static void DoTVShowPokemonLotteryWinnerFlashReport(void) state = sTVShowState; TVShowConvertInternationalString(gStringVar1, show->lottoWinner.playerName, show->lottoWinner.language); if (show->lottoWinner.whichPrize == 0) - { StringCopy(gStringVar2, gText_Jackpot); - } else if (show->lottoWinner.whichPrize == 1) - { StringCopy(gStringVar2, gText_First); - } else if (show->lottoWinner.whichPrize == 2) - { StringCopy(gStringVar2, gText_Second); - } else - { StringCopy(gStringVar2, gText_Third); - } StringCopy(gStringVar3, ItemId_GetName(show->lottoWinner.item)); TVShowDone(); ShowFieldMessage(sTVPokemonLotteryWinnerFlashReportTextGroup[state]); @@ -6715,23 +6721,23 @@ static void DoTVShowSafariFanClub(void) switch (state) { case 0: - if (show->safariFanClub.nMonsCaught == 0) + if (show->safariFanClub.monsCaught == 0) sTVShowState = 6; - else if (show->safariFanClub.nMonsCaught < 4) + else if (show->safariFanClub.monsCaught < 4) sTVShowState = 5; else sTVShowState = 1; break; case 1: TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - ConvertIntToDecimalString(1, show->safariFanClub.nMonsCaught); - if (show->safariFanClub.nPkblkUsed == 0) + ConvertIntToDecimalString(1, show->safariFanClub.monsCaught); + if (show->safariFanClub.pokeblocksUsed == 0) sTVShowState = 3; else sTVShowState = 2; break; case 2: - ConvertIntToDecimalString(1, show->safariFanClub.nPkblkUsed); + ConvertIntToDecimalString(1, show->safariFanClub.pokeblocksUsed); sTVShowState = 4; break; case 3: @@ -6743,21 +6749,21 @@ static void DoTVShowSafariFanClub(void) break; case 5: TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - ConvertIntToDecimalString(1, show->safariFanClub.nMonsCaught); - if (show->safariFanClub.nPkblkUsed == 0) + ConvertIntToDecimalString(1, show->safariFanClub.monsCaught); + if (show->safariFanClub.pokeblocksUsed == 0) sTVShowState = 8; else sTVShowState = 7; break; case 6: TVShowConvertInternationalString(gStringVar1, show->safariFanClub.playerName, show->safariFanClub.language); - if (show->safariFanClub.nPkblkUsed == 0) + if (show->safariFanClub.pokeblocksUsed == 0) sTVShowState = 8; else sTVShowState = 7; break; case 7: - ConvertIntToDecimalString(1, show->safariFanClub.nPkblkUsed); + ConvertIntToDecimalString(1, show->safariFanClub.pokeblocksUsed); sTVShowState = 9; break; case 8: From 61aa9c3ba983462ab3420920ce8b5de5601f54f8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Nov 2021 17:12:16 -0500 Subject: [PATCH 432/762] More updating event macro comments --- asm/macros/event.inc | 64 +-- .../AbandonedShip_Corridors_B1F/scripts.inc | 4 +- .../scripts.inc | 16 +- data/maps/AncientTomb/scripts.inc | 12 +- .../scripts.inc | 56 +-- .../scripts.inc | 8 +- data/maps/DesertRuins/scripts.inc | 12 +- data/maps/DewfordTown_Gym/scripts.inc | 64 +-- .../EverGrandeCity_ChampionsRoom/scripts.inc | 4 +- data/maps/InsideOfTruck/scripts.inc | 6 +- data/maps/IslandCave/scripts.inc | 24 +- data/maps/JaggedPass/scripts.inc | 8 +- data/maps/LilycoveCity/scripts.inc | 24 +- .../LilycoveCity_ContestLobby/scripts.inc | 16 +- .../scripts.inc | 20 +- .../scripts.inc | 6 +- .../LittlerootTown_MaysHouse_1F/scripts.inc | 6 +- data/maps/MauvilleCity_Gym/scripts.inc | 52 +- data/maps/MeteorFalls_1F_1R/scripts.inc | 8 +- data/maps/MossdeepCity_Gym/scripts.inc | 48 +- .../MossdeepCity_SpaceCenter_1F/scripts.inc | 2 +- .../MossdeepCity_StevensHouse/scripts.inc | 2 +- data/maps/NewMauville_Entrance/scripts.inc | 24 +- data/maps/NewMauville_Inside/scripts.inc | 166 +++---- data/maps/PetalburgCity_Gym/scripts.inc | 48 +- data/maps/Route103/scripts.inc | 4 +- data/maps/Route105/scripts.inc | 4 +- data/maps/Route110_TrickHouseEnd/scripts.inc | 2 +- .../Route110_TrickHouseEntrance/scripts.inc | 18 +- .../Route110_TrickHousePuzzle1/scripts.inc | 2 +- .../Route110_TrickHousePuzzle2/scripts.inc | 16 +- .../Route110_TrickHousePuzzle3/scripts.inc | 312 ++++++------ .../Route110_TrickHousePuzzle7/scripts.inc | 40 +- data/maps/Route111/scripts.inc | 40 +- .../Route114_FossilManiacsTunnel/scripts.inc | 4 +- data/maps/Route120/scripts.inc | 20 +- data/maps/SealedChamber_OuterRoom/scripts.inc | 12 +- .../ShoalCave_LowTideInnerRoom/scripts.inc | 24 +- .../ShoalCave_LowTideLowerRoom/scripts.inc | 4 +- .../ShoalCave_LowTideStairsRoom/scripts.inc | 4 +- data/maps/SkyPillar_Outside/scripts.inc | 4 +- data/maps/SootopolisCity/scripts.inc | 68 +-- data/maps/SootopolisCity_Gym_1F/scripts.inc | 12 +- data/maps/TrainerHill_Entrance/scripts.inc | 4 +- .../Underwater_SeafloorCavern/scripts.inc | 24 +- data/script_cmd_table.inc | 4 +- data/scripts/abnormal_weather.inc | 448 +++++++++--------- data/scripts/cable_club.inc | 24 +- data/scripts/elite_four.inc | 84 ++-- data/scripts/flash.inc | 2 +- include/field_screen_effect.h | 2 +- include/field_weather.h | 6 +- src/battle_setup.c | 2 +- src/field_screen_effect.c | 17 +- src/field_specials.c | 8 +- src/field_weather_effect.c | 18 +- src/overworld.c | 10 +- src/scrcmd.c | 8 +- 58 files changed, 979 insertions(+), 972 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 58b3b8329228..d077103dcda7 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1113,12 +1113,13 @@ .2byte \id .endm - @ Sets a berry tree's specific berry and growth stage. - .macro setberrytree tree_id:req, berry:req, growth_stage:req + @ 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 \tree_id + .byte \treeId .byte \berry - .byte \growth_stage + .byte \growthStage .endm @ This allows you to choose a Pokemon to use in a contest @@ -1126,17 +1127,17 @@ .byte 0x8b .endm - @ Starts a contest. + @ Starts the appeals round of a contest. .macro startcontest .byte 0x8c .endm - @ Shows the results of a contest. + @ Shows the results screen of a contest. .macro showcontestresults .byte 0x8d .endm - @ Starts a contest over a link connection. + @ Starts communication to initialize a link contest. .macro contestlinktransfer .byte 0x8e .endm @@ -1171,7 +1172,7 @@ .byte \disable .endm - @ Spawns a secondary box showing how much money the player has. + @ 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 @@ -1180,14 +1181,14 @@ .byte \disable .endm - @ Hides the secondary box spawned by showmoney. Consumption of the x and y arguments was dummied out. + @ Destroys the window created by showmoneybox. Consumption of the x and y arguments was dummied out. .macro hidemoneybox .byte 0x94 .byte 0 @ \x .byte 0 @ \y .endm - @ Updates the secondary box spawned by showmoney. Consumption of the x and y arguments was dummied out. + @ 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 @@ -1196,10 +1197,10 @@ .byte \disable .endm - @ Gets the price reduction for the index given. - .macro getpokenewsactive index:req + @ Gets whether the effects of the specified PokeNews program are active. newsKind is a POKENEWS_* constant. + .macro getpokenewsactive newsKind:req .byte 0x96 - .2byte \index + .2byte \newsKind .endm @ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK) @@ -1215,14 +1216,18 @@ .byte \speed .endm - .macro setflashradius word:req + @ 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 - .2byte \word + .2byte \level .endm - .macro animateflash byte:req + @ 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 \byte + .byte \level .endm .macro messageautoscroll pointer:req @@ -1230,20 +1235,20 @@ .4byte \pointer .endm - @ Executes the specified field effect animation. + @ Executes the specified field effect animation (FLDEFF_*). .macro dofieldeffect animation:req .byte 0x9c .2byte \animation .endm - @ Sets up the field effect argument argument with the value value. - .macro setfieldeffectargument argument:req, param:req + @ Sets the field effect argument at index 'argNum' to 'value.' + .macro setfieldeffectargument argNum:req, value:req .byte 0x9d - .byte \argument - .2byte \param + .byte \argNum + .2byte \value .endm - @ Blocks script execution until all playing field move animations complete. + @ Blocks script execution until all playing field effect animations complete. .macro waitfieldeffect animation:req .byte 0x9e .2byte \animation @@ -1260,20 +1265,21 @@ .byte 0xa0 .endm - @ Plays the specified (species) Pokemon's cry. You can use waitmoncry to block script execution until the sound finishes. + @ 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 .2byte \species .2byte \mode .endm - @ Changes the metatile at (x, y) on the current map. - .macro setmetatile x:req, y:req, metatile_number:req, has_collision:req + @ 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 .2byte \x .2byte \y - .2byte \metatile_number - .2byte \has_collision + .2byte \metatileId + .2byte \impassable .endm @ Queues a weather change to the default weather for the map. @@ -1292,7 +1298,7 @@ .byte 0xa5 .endm - @ This command manages cases in which maps have tiles that change state when stepped on (specifically, cracked/breakable floors). + @ Enables a function that gets called every step by Task_RunPerStepCallback. .macro setstepcallback subroutine:req .byte 0xa6 .byte \subroutine diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc index 7f0288e0c1fa..09d758495945 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc @@ -13,11 +13,11 @@ AbandonedShip_Corridors_B1F_OnLoad: end AbandonedShip_Corridors_B1F_EventScript_LockStorageRoom:: - setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 + setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Locked, TRUE return AbandonedShip_Corridors_B1F_EventScript_UnlockStorageRoom:: - setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 + setmetatile 11, 4, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, TRUE return AbandonedShip_Corridors_B1F_EventScript_TuberM:: diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc index cdc350f3e97a..3a7bc773180b 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc @@ -19,35 +19,35 @@ AbandonedShip_HiddenFloorCorridors_OnLoad: end AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom1:: - setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 + setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, TRUE return AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom2:: - setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, 1 + setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Unlocked, TRUE return AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom4:: - setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Unlocked, 0 + setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Unlocked, FALSE return AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom6:: - setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Unlocked, 0 + setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Unlocked, FALSE return AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom1:: - setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 + setmetatile 3, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, TRUE return AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom2:: - setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, 1 + setmetatile 6, 8, METATILE_InsideShip_IntactDoor_Bottom_Locked, TRUE return AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom4:: - setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Locked, 0 + setmetatile 3, 3, METATILE_InsideShip_DoorIndent_Locked, FALSE return AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom6:: - setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Locked, 0 + setmetatile 9, 3, METATILE_InsideShip_DoorIndent_Locked, FALSE return AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index f2e242bbd693..03070a731efb 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -29,12 +29,12 @@ AncientTomb_OnLoad: end AncientTomb_EventScript_HideRegiEntrance:: - setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 + setmetatile 7, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 8, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 9, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE return AncientTomb_EventScript_CaveEntranceMiddle:: diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 2023d44f59c1..5888c140d67f 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -608,46 +608,46 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_StatusMon:: end BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesMostlyClosed:: - setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage1_Tile0, 1 - setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage1_Tile1, 1 - setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage1_Tile2, 1 - setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage1_Tile3, 1 - setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage1_Tile4, 1 - setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage1_Tile5, 0 - setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage1_Tile6, 1 + setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage1_Tile0, TRUE + setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage1_Tile1, TRUE + setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage1_Tile2, TRUE + setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage1_Tile3, TRUE + setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage1_Tile4, TRUE + setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage1_Tile5, FALSE + setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage1_Tile6, TRUE special DrawWholeMapView return BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed:: - setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage2_Tile0, 1 - setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage2_Tile1, 1 - setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage2_Tile2, 1 - setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage2_Tile3, 1 - setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage2_Tile4, 1 - setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage2_Tile5, 0 - setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage2_Tile6, 1 + setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage2_Tile0, TRUE + setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage2_Tile1, TRUE + setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage2_Tile2, TRUE + setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage2_Tile3, TRUE + setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage2_Tile4, TRUE + setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage2_Tile5, FALSE + setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage2_Tile6, TRUE special DrawWholeMapView return BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesOpen:: - setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage3_Tile0, 1 - setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage3_Tile1, 1 - setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage3_Tile2, 1 - setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage3_Tile3, 1 - setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage3_Tile4, 1 - setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage3_Tile5, 0 - setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage3_Tile6, 1 + setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage3_Tile0, TRUE + setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage3_Tile1, TRUE + setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage3_Tile2, TRUE + setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage3_Tile3, TRUE + setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage3_Tile4, TRUE + setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage3_Tile5, FALSE + setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage3_Tile6, TRUE special DrawWholeMapView return BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesClosed:: - setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage0_Tile0, 1 - setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage0_Tile1, 1 - setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage0_Tile2, 1 - setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage0_Tile3, 1 - setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage0_Tile4, 1 - setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage0_Tile5, 0 - setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage0_Tile6, 1 + setmetatile 4, 1, METATILE_BattlePike_Curtain_Stage0_Tile0, TRUE + setmetatile 3, 2, METATILE_BattlePike_Curtain_Stage0_Tile1, TRUE + setmetatile 4, 2, METATILE_BattlePike_Curtain_Stage0_Tile2, TRUE + setmetatile 5, 2, METATILE_BattlePike_Curtain_Stage0_Tile3, TRUE + setmetatile 3, 3, METATILE_BattlePike_Curtain_Stage0_Tile4, TRUE + setmetatile 4, 3, METATILE_BattlePike_Curtain_Stage0_Tile5, FALSE + setmetatile 5, 3, METATILE_BattlePike_Curtain_Stage0_Tile6, TRUE special DrawWholeMapView return diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc index 13abf7027808..b4ddb0788bd0 100644 --- a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc @@ -8,13 +8,13 @@ BattleFrontier_BattleTowerCorridor_MapScripts:: BattleFrontier_BattleTowerCorridor_OnLoad: compare VAR_0x8006, 1 goto_if_eq BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor - setmetatile 12, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, 0 - setmetatile 12, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, 0 + setmetatile 12, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, FALSE + setmetatile 12, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, FALSE end BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor:: - setmetatile 15, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, 0 - setmetatile 15, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, 0 + setmetatile 15, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, FALSE + setmetatile 15, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, FALSE end BattleFrontier_BattleTowerCorridor_OnFrame: diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index 443915d7e213..0e7a3c28145c 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -20,12 +20,12 @@ DesertRuins_OnLoad: end DesertRuins_EventScript_HideRegiEntrance:: - setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 + setmetatile 7, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 8, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 9, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE return DesertRuins_OnTransition: diff --git a/data/maps/DewfordTown_Gym/scripts.inc b/data/maps/DewfordTown_Gym/scripts.inc index d2b51766afad..355ca15f4dc3 100644 --- a/data/maps/DewfordTown_Gym/scripts.inc +++ b/data/maps/DewfordTown_Gym/scripts.inc @@ -3,57 +3,59 @@ DewfordTown_Gym_MapScripts:: .byte 0 DewfordTown_Gym_OnTransition: - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel end -DewfordTown_Gym_EventScript_SetFlashRadius:: +DewfordTown_Gym_EventScript_SetFlashLevel:: goto_if_defeated TRAINER_BRAWLY_1, DewfordTown_Gym_EventScript_SetLightsOn call DewfordTown_Gym_EventScript_CountTrainersDefeated copyvar VAR_0x8001, VAR_0x8000 compare VAR_0x8000, 0 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius7 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel7 compare VAR_0x8000, 1 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius6 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel6 compare VAR_0x8000, 2 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius5 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel5 compare VAR_0x8000, 3 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius4 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel4 compare VAR_0x8000, 4 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius3 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel3 compare VAR_0x8000, 5 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashRadius2 - goto DewfordTown_Gym_EventScript_SetFlashRadius1 + goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel2 + goto DewfordTown_Gym_EventScript_SetFlashLevel1 DewfordTown_Gym_EventScript_SetLightsOn:: - setflashradius 0 + setflashlevel 0 return -DewfordTown_Gym_EventScript_SetFlashRadius1:: - setflashradius 1 +@ Brightest +DewfordTown_Gym_EventScript_SetFlashLevel1:: + setflashlevel 1 return -DewfordTown_Gym_EventScript_SetFlashRadius2:: - setflashradius 2 +DewfordTown_Gym_EventScript_SetFlashLevel2:: + setflashlevel 2 return -DewfordTown_Gym_EventScript_SetFlashRadius3:: - setflashradius 3 +DewfordTown_Gym_EventScript_SetFlashLevel3:: + setflashlevel 3 return -DewfordTown_Gym_EventScript_SetFlashRadius4:: - setflashradius 4 +DewfordTown_Gym_EventScript_SetFlashLevel4:: + setflashlevel 4 return -DewfordTown_Gym_EventScript_SetFlashRadius5:: - setflashradius 5 +DewfordTown_Gym_EventScript_SetFlashLevel5:: + setflashlevel 5 return -DewfordTown_Gym_EventScript_SetFlashRadius6:: - setflashradius 6 +DewfordTown_Gym_EventScript_SetFlashLevel6:: + setflashlevel 6 return -DewfordTown_Gym_EventScript_SetFlashRadius7:: - setflashradius 7 +@ Darkest +DewfordTown_Gym_EventScript_SetFlashLevel7:: + setflashlevel 7 return DewfordTown_Gym_EventScript_BrightenRoom:: @@ -82,43 +84,43 @@ DewfordTown_Gym_EventScript_NoLightChange:: DewfordTown_Gym_EventScript_AnimateFlash1Trainer:: playse SE_SWITCH animateflash 6 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlash2Trainers:: playse SE_SWITCH animateflash 5 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlash3Trainers:: playse SE_SWITCH animateflash 4 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlash4Trainers:: playse SE_SWITCH animateflash 3 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlash5Trainers:: playse SE_SWITCH animateflash 2 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlash6Trainers:: playse SE_SWITCH animateflash 1 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_AnimateFlashFullBrightness:: playse SE_SWITCH animateflash 0 - call DewfordTown_Gym_EventScript_SetFlashRadius + call DewfordTown_Gym_EventScript_SetFlashLevel return DewfordTown_Gym_EventScript_CountTrainersDefeated:: diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index d16937151711..d33c57df86e5 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -50,8 +50,8 @@ EverGrandeCity_ChampionsRoom_EventScript_Wallace:: EverGrandeCity_ChampionsRoom_EventScript_Defeated:: playse SE_DOOR - setmetatile 6, 1, METATILE_EliteFour_OpenDoorChampion_Frame, 0 - setmetatile 6, 2, METATILE_EliteFour_OpenDoorChampion_Opening, 0 + setmetatile 6, 1, METATILE_EliteFour_OpenDoorChampion_Frame, FALSE + setmetatile 6, 2, METATILE_EliteFour_OpenDoorChampion_Opening, FALSE special DrawWholeMapView msgbox EverGrandeCity_ChampionsRoom_Text_PostBattleSpeech, MSGBOX_DEFAULT closemessage diff --git a/data/maps/InsideOfTruck/scripts.inc b/data/maps/InsideOfTruck/scripts.inc index 472e27e36f0f..515279449866 100644 --- a/data/maps/InsideOfTruck/scripts.inc +++ b/data/maps/InsideOfTruck/scripts.inc @@ -4,9 +4,9 @@ InsideOfTruck_MapScripts:: .byte 0 InsideOfTruck_OnLoad: - setmetatile 4, 1, METATILE_InsideOfTruck_ExitLight_Top, 0 - setmetatile 4, 2, METATILE_InsideOfTruck_ExitLight_Mid, 0 - setmetatile 4, 3, METATILE_InsideOfTruck_ExitLight_Bottom, 0 + setmetatile 4, 1, METATILE_InsideOfTruck_ExitLight_Top, FALSE + setmetatile 4, 2, METATILE_InsideOfTruck_ExitLight_Mid, FALSE + setmetatile 4, 3, METATILE_InsideOfTruck_ExitLight_Bottom, FALSE end InsideOfTruck_OnResume: diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc index d660aadf0667..83e4d015a6ac 100644 --- a/data/maps/IslandCave/scripts.inc +++ b/data/maps/IslandCave/scripts.inc @@ -20,12 +20,12 @@ IslandCave_OnLoad: end IslandCave_EventScript_HideRegiEntrance:: - setmetatile 7, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 8, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 9, 19, METATILE_Cave_EntranceCover, 1 - setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, 1 + setmetatile 7, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 8, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 9, 19, METATILE_Cave_EntranceCover, TRUE + setmetatile 7, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 8, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 9, 20, METATILE_Cave_SealedChamberBraille_Mid, TRUE return IslandCave_OnTransition: @@ -39,12 +39,12 @@ IslandCave_EventScript_ShowRegice:: return IslandCave_EventScript_OpenRegiEntrance:: - setmetatile 7, 19, METATILE_Cave_SealedChamberEntrance_TopLeft, 1 - setmetatile 8, 19, METATILE_Cave_SealedChamberEntrance_TopMid, 1 - setmetatile 9, 19, METATILE_Cave_SealedChamberEntrance_TopRight, 1 - setmetatile 7, 20, METATILE_Cave_SealedChamberEntrance_BottomLeft, 1 - setmetatile 8, 20, METATILE_Cave_SealedChamberEntrance_BottomMid, 0 - setmetatile 9, 20, METATILE_Cave_SealedChamberEntrance_BottomRight, 1 + setmetatile 7, 19, METATILE_Cave_SealedChamberEntrance_TopLeft, TRUE + setmetatile 8, 19, METATILE_Cave_SealedChamberEntrance_TopMid, TRUE + setmetatile 9, 19, METATILE_Cave_SealedChamberEntrance_TopRight, TRUE + setmetatile 7, 20, METATILE_Cave_SealedChamberEntrance_BottomLeft, TRUE + setmetatile 8, 20, METATILE_Cave_SealedChamberEntrance_BottomMid, FALSE + setmetatile 9, 20, METATILE_Cave_SealedChamberEntrance_BottomRight, TRUE special DrawWholeMapView playse SE_BANG setflag FLAG_SYS_BRAILLE_REGICE_COMPLETED diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc index 3ab89691351a..18a8c2999417 100644 --- a/data/maps/JaggedPass/scripts.inc +++ b/data/maps/JaggedPass/scripts.inc @@ -38,8 +38,8 @@ JaggedPass_OnLoad: end JaggedPass_EventScript_ConcealHideoutEntrance:: - setmetatile 16, 17, METATILE_Lavaridge_RockWall, 1 - setmetatile 16, 18, METATILE_Lavaridge_RockWall, 1 + setmetatile 16, 17, METATILE_Lavaridge_RockWall, TRUE + setmetatile 16, 18, METATILE_Lavaridge_RockWall, TRUE end JaggedPass_EventScript_OpenMagmaHideout:: @@ -59,8 +59,8 @@ JaggedPass_EventScript_OpenMagmaHideout:: special ShakeCamera waitstate playse SE_EFFECTIVE - setmetatile 16, 17, METATILE_Lavaridge_CaveEntrance_Top, 1 - setmetatile 16, 18, METATILE_Lavaridge_CaveEntrance_Bottom, 0 + setmetatile 16, 17, METATILE_Lavaridge_CaveEntrance_Top, TRUE + setmetatile 16, 18, METATILE_Lavaridge_CaveEntrance_Bottom, FALSE special DrawWholeMapView delay 30 setvar VAR_JAGGED_PASS_STATE, 2 diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index eb3f140a86dc..648aae564244 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -19,18 +19,18 @@ LilycoveCity_OnLoad: end LilycoveCity_EventScript_SetWailmerMetatiles:: - setmetatile 76, 12, METATILE_Lilycove_Wailmer0, 1 - setmetatile 77, 12, METATILE_Lilycove_Wailmer1, 1 - setmetatile 76, 13, METATILE_Lilycove_Wailmer2, 1 - setmetatile 77, 13, METATILE_Lilycove_Wailmer3, 1 - setmetatile 76, 14, METATILE_Lilycove_Wailmer0_Alt, 1 - setmetatile 77, 14, METATILE_Lilycove_Wailmer1_Alt, 1 - setmetatile 76, 15, METATILE_Lilycove_Wailmer2, 1 - setmetatile 77, 15, METATILE_Lilycove_Wailmer3, 1 - setmetatile 77, 16, METATILE_Lilycove_Wailmer0_Alt, 1 - setmetatile 78, 16, METATILE_Lilycove_Wailmer1_Alt, 1 - setmetatile 77, 17, METATILE_Lilycove_Wailmer2, 1 - setmetatile 78, 17, METATILE_Lilycove_Wailmer3, 1 + setmetatile 76, 12, METATILE_Lilycove_Wailmer0, TRUE + setmetatile 77, 12, METATILE_Lilycove_Wailmer1, TRUE + setmetatile 76, 13, METATILE_Lilycove_Wailmer2, TRUE + setmetatile 77, 13, METATILE_Lilycove_Wailmer3, TRUE + setmetatile 76, 14, METATILE_Lilycove_Wailmer0_Alt, TRUE + setmetatile 77, 14, METATILE_Lilycove_Wailmer1_Alt, TRUE + setmetatile 76, 15, METATILE_Lilycove_Wailmer2, TRUE + setmetatile 77, 15, METATILE_Lilycove_Wailmer3, TRUE + setmetatile 77, 16, METATILE_Lilycove_Wailmer0_Alt, TRUE + setmetatile 78, 16, METATILE_Lilycove_Wailmer1_Alt, TRUE + setmetatile 77, 17, METATILE_Lilycove_Wailmer2, TRUE + setmetatile 78, 17, METATILE_Lilycove_Wailmer3, TRUE return LilycoveCity_EventScript_BerryGentleman:: diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 6dbd1eb8429d..fc5ea1d7a850 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -418,14 +418,14 @@ LilycoveCity_ContestLobby_EventScript_LeadToContestHall:: applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter waitmovement 0 playse SE_BRIDGE_WALK - setmetatile 12, 2, METATILE_Contest_WallShadow, 1 - setmetatile 12, 3, METATILE_Contest_FloorShadow, 1 + setmetatile 12, 2, METATILE_Contest_WallShadow, TRUE + setmetatile 12, 3, METATILE_Contest_FloorShadow, TRUE special DrawWholeMapView applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter waitmovement 0 playse SE_BRIDGE_WALK - setmetatile 12, 2, METATILE_Contest_CounterFlap_Top, 1 - setmetatile 12, 3, METATILE_Contest_CounterFlap_Bottom, 1 + 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 @@ -939,14 +939,14 @@ LilycoveCity_ContestLobby_EventScript_LeadToLinkContestHall:: applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter waitmovement 0 playse SE_BRIDGE_WALK - setmetatile 17, 2, METATILE_Contest_WallShadow, 1 - setmetatile 17, 3, METATILE_Contest_FloorShadow, 1 + setmetatile 17, 2, METATILE_Contest_WallShadow, TRUE + setmetatile 17, 3, METATILE_Contest_FloorShadow, TRUE special DrawWholeMapView applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter waitmovement 0 playse SE_BRIDGE_WALK - setmetatile 17, 2, METATILE_Contest_CounterFlap_Top, 1 - setmetatile 17, 3, METATILE_Contest_CounterFlap_Bottom, 1 + 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 diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index 929bba3e17ce..bf220b04f949 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -30,32 +30,32 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting:: end LilycoveCity_LilycoveMuseum_2F_EventScript_SetCoolPainting:: - setmetatile 10, 6, METATILE_LilycoveMuseum_Painting2_Left, 1 - setmetatile 11, 6, METATILE_LilycoveMuseum_Painting2_Right, 1 + setmetatile 10, 6, METATILE_LilycoveMuseum_Painting2_Left, TRUE + setmetatile 11, 6, METATILE_LilycoveMuseum_Painting2_Right, TRUE goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckBeautyPainting end LilycoveCity_LilycoveMuseum_2F_EventScript_SetBeautyPainting:: - setmetatile 18, 6, METATILE_LilycoveMuseum_Painting1_Left, 1 - setmetatile 19, 6, METATILE_LilycoveMuseum_Painting1_Right, 1 + setmetatile 18, 6, METATILE_LilycoveMuseum_Painting1_Left, TRUE + setmetatile 19, 6, METATILE_LilycoveMuseum_Painting1_Right, TRUE goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckCutePainting end LilycoveCity_LilycoveMuseum_2F_EventScript_SetCutePainting:: - setmetatile 14, 10, METATILE_LilycoveMuseum_Painting3_Left, 1 - setmetatile 15, 10, METATILE_LilycoveMuseum_Painting3_Right, 1 + setmetatile 14, 10, METATILE_LilycoveMuseum_Painting3_Left, TRUE + setmetatile 15, 10, METATILE_LilycoveMuseum_Painting3_Right, TRUE goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckSmartPainting end LilycoveCity_LilycoveMuseum_2F_EventScript_SetSmartPainting:: - setmetatile 6, 10, METATILE_LilycoveMuseum_Painting0_Left, 1 - setmetatile 7, 10, METATILE_LilycoveMuseum_Painting0_Right, 1 + setmetatile 6, 10, METATILE_LilycoveMuseum_Painting0_Left, TRUE + setmetatile 7, 10, METATILE_LilycoveMuseum_Painting0_Right, TRUE goto LilycoveCity_LilycoveMuseum_2F_EventScript_CheckToughPainting end LilycoveCity_LilycoveMuseum_2F_EventScript_SetToughPainting:: - setmetatile 2, 6, METATILE_LilycoveMuseum_Painting4_Left, 1 - setmetatile 3, 6, METATILE_LilycoveMuseum_Painting4_Right, 1 + setmetatile 2, 6, METATILE_LilycoveMuseum_Painting4_Left, TRUE + setmetatile 3, 6, METATILE_LilycoveMuseum_Painting4_Right, TRUE end LilycoveCity_LilycoveMuseum_2F_OnFrame: diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index 95399eaeaa04..15bd96f253bd 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -15,8 +15,8 @@ LittlerootTown_BrendansHouse_1F_OnLoad: end LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes:: - setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, 1 - setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, 1 + setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, TRUE + setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, TRUE return LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual:: @@ -26,7 +26,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual:: return LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual:: - setmetatile 3, 7, METATILE_BrendansMaysHouse_BookOnTable, 1 + setmetatile 3, 7, METATILE_BrendansMaysHouse_BookOnTable, TRUE return LittlerootTown_BrendansHouse_1F_OnTransition: diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index 2a73a94c8fcd..b022402d05c9 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -15,8 +15,8 @@ LittlerootTown_MaysHouse_1F_OnLoad: end LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes:: - setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, 1 - setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, 1 + setmetatile 5, 4, METATILE_BrendansMaysHouse_MovingBox_Open, TRUE + setmetatile 5, 2, METATILE_BrendansMaysHouse_MovingBox_Closed, TRUE return LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual:: @@ -26,7 +26,7 @@ LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual:: return LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual:: - setmetatile 6, 7, METATILE_BrendansMaysHouse_BookOnTable, 1 + setmetatile 6, 7, METATILE_BrendansMaysHouse_BookOnTable, TRUE return LittlerootTown_MaysHouse_1F_OnTransition: diff --git a/data/maps/MauvilleCity_Gym/scripts.inc b/data/maps/MauvilleCity_Gym/scripts.inc index 3c09ecfa2042..d446e44b9afc 100644 --- a/data/maps/MauvilleCity_Gym/scripts.inc +++ b/data/maps/MauvilleCity_Gym/scripts.inc @@ -17,32 +17,32 @@ MauvilleCity_Gym_EventScript_UpdateBarriers:: end MauvilleCity_Gym_EventScript_SetAltBarriers:: - setmetatile 3, 11, METATILE_MauvilleGym_RedBeamV1_On, 1 - setmetatile 3, 12, METATILE_MauvilleGym_RedBeamV2_On, 1 - setmetatile 3, 13, METATILE_MauvilleGym_PoleTop_On, 1 - setmetatile 4, 10, METATILE_MauvilleGym_RedBeamH1_On, 0 - setmetatile 5, 10, METATILE_MauvilleGym_RedBeamH2_On, 0 - setmetatile 4, 11, METATILE_MauvilleGym_RedBeamH3_On, 1 - setmetatile 5, 11, METATILE_MauvilleGym_RedBeamH4_On, 1 - setmetatile 7, 10, METATILE_MauvilleGym_RedBeamH1_On, 0 - setmetatile 8, 10, METATILE_MauvilleGym_RedBeamH2_On, 0 - setmetatile 7, 11, METATILE_MauvilleGym_RedBeamH3_On, 1 - setmetatile 8, 11, METATILE_MauvilleGym_RedBeamH4_On, 1 - setmetatile 4, 13, METATILE_MauvilleGym_GreenBeamH1_Off, 0 - setmetatile 5, 13, METATILE_MauvilleGym_GreenBeamH2_Off, 0 - setmetatile 4, 14, METATILE_MauvilleGym_GreenBeamH3_Off, 0 - setmetatile 5, 14, METATILE_MauvilleGym_GreenBeamH4_Off, 0 - setmetatile 1, 10, METATILE_MauvilleGym_GreenBeamH1_Off, 0 - setmetatile 2, 10, METATILE_MauvilleGym_GreenBeamH2_Off, 0 - setmetatile 1, 11, METATILE_MauvilleGym_GreenBeamH3_Off, 0 - setmetatile 2, 11, METATILE_MauvilleGym_GreenBeamH4_Off, 0 - setmetatile 6, 8, METATILE_MauvilleGym_PoleBottom_On, 1 - setmetatile 6, 9, METATILE_MauvilleGym_FloorTile, 0 - setmetatile 6, 10, METATILE_MauvilleGym_PoleTop_Off, 0 - setmetatile 4, 6, METATILE_MauvilleGym_GreenBeamH1_Off, 0 - setmetatile 5, 6, METATILE_MauvilleGym_GreenBeamH2_Off, 0 - setmetatile 4, 7, METATILE_MauvilleGym_GreenBeamH3_Off, 0 - setmetatile 5, 7, METATILE_MauvilleGym_GreenBeamH4_Off, 0 + setmetatile 3, 11, METATILE_MauvilleGym_RedBeamV1_On, TRUE + setmetatile 3, 12, METATILE_MauvilleGym_RedBeamV2_On, TRUE + setmetatile 3, 13, METATILE_MauvilleGym_PoleTop_On, TRUE + setmetatile 4, 10, METATILE_MauvilleGym_RedBeamH1_On, FALSE + setmetatile 5, 10, METATILE_MauvilleGym_RedBeamH2_On, FALSE + setmetatile 4, 11, METATILE_MauvilleGym_RedBeamH3_On, TRUE + setmetatile 5, 11, METATILE_MauvilleGym_RedBeamH4_On, TRUE + setmetatile 7, 10, METATILE_MauvilleGym_RedBeamH1_On, FALSE + setmetatile 8, 10, METATILE_MauvilleGym_RedBeamH2_On, FALSE + setmetatile 7, 11, METATILE_MauvilleGym_RedBeamH3_On, TRUE + setmetatile 8, 11, METATILE_MauvilleGym_RedBeamH4_On, TRUE + setmetatile 4, 13, METATILE_MauvilleGym_GreenBeamH1_Off, FALSE + setmetatile 5, 13, METATILE_MauvilleGym_GreenBeamH2_Off, FALSE + setmetatile 4, 14, METATILE_MauvilleGym_GreenBeamH3_Off, FALSE + setmetatile 5, 14, METATILE_MauvilleGym_GreenBeamH4_Off, FALSE + setmetatile 1, 10, METATILE_MauvilleGym_GreenBeamH1_Off, FALSE + setmetatile 2, 10, METATILE_MauvilleGym_GreenBeamH2_Off, FALSE + setmetatile 1, 11, METATILE_MauvilleGym_GreenBeamH3_Off, FALSE + setmetatile 2, 11, METATILE_MauvilleGym_GreenBeamH4_Off, FALSE + setmetatile 6, 8, METATILE_MauvilleGym_PoleBottom_On, TRUE + setmetatile 6, 9, METATILE_MauvilleGym_FloorTile, FALSE + setmetatile 6, 10, METATILE_MauvilleGym_PoleTop_Off, FALSE + setmetatile 4, 6, METATILE_MauvilleGym_GreenBeamH1_Off, FALSE + setmetatile 5, 6, METATILE_MauvilleGym_GreenBeamH2_Off, FALSE + setmetatile 4, 7, METATILE_MauvilleGym_GreenBeamH3_Off, FALSE + setmetatile 5, 7, METATILE_MauvilleGym_GreenBeamH4_Off, FALSE end MauvilleCity_Gym_EventScript_Switch1Pressed:: diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc index 23ae9728deb6..b81f5de267e8 100644 --- a/data/maps/MeteorFalls_1F_1R/scripts.inc +++ b/data/maps/MeteorFalls_1F_1R/scripts.inc @@ -13,10 +13,10 @@ MeteorFalls_1F_1R_OnLoad: end MeteorFalls_1F_1R_EventScript_OpenStevensCave:: - setmetatile 4, 1, METATILE_MeteorFalls_CaveEntrance_Top, 1 - setmetatile 3, 2, METATILE_MeteorFalls_CaveEntrance_Left, 1 - setmetatile 4, 2, METATILE_MeteorFalls_CaveEntrance_Bottom, 0 - setmetatile 5, 2, METATILE_MeteorFalls_CaveEntrance_Right, 1 + setmetatile 4, 1, METATILE_MeteorFalls_CaveEntrance_Top, TRUE + setmetatile 3, 2, METATILE_MeteorFalls_CaveEntrance_Left, TRUE + setmetatile 4, 2, METATILE_MeteorFalls_CaveEntrance_Bottom, FALSE + setmetatile 5, 2, METATILE_MeteorFalls_CaveEntrance_Right, TRUE return MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene:: diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc index d6df2b3807d3..7b63de2e7365 100644 --- a/data/maps/MossdeepCity_Gym/scripts.inc +++ b/data/maps/MossdeepCity_Gym/scripts.inc @@ -26,26 +26,26 @@ MossdeepCity_Gym_EventScript_CheckSwitch4:: @ All the below set metatile scripts are leftover from RS and are functionally unused MossdeepCity_Gym_EventScript_SetSwitch1Metatiles:: - setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_CheckSwitch2 end MossdeepCity_Gym_EventScript_SetSwitch2Metatiles:: - setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_CheckSwitch3 end MossdeepCity_Gym_EventScript_SetSwitch3Metatiles:: - setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Left, 0 - setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Left, FALSE + setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_CheckSwitch4 end MossdeepCity_Gym_EventScript_SetSwitch4Metatiles:: - setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Up, 0 - setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Up, FALSE + setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Down, TRUE end MossdeepCity_Gym_EventScript_TateAndLiza:: @@ -119,8 +119,8 @@ MossdeepCity_Gym_EventScript_Switch1:: setflag FLAG_MOSSDEEP_GYM_SWITCH_1 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -134,8 +134,8 @@ MossdeepCity_Gym_EventScript_ClearSwitch1:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_1 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Left, 0 - setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Up, 1 + setmetatile 5, 5, METATILE_RS_MossdeepGym_RedArrow_Left, FALSE + setmetatile 2, 7, METATILE_RS_MossdeepGym_Switch_Up, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -145,8 +145,8 @@ MossdeepCity_Gym_EventScript_Switch2:: setflag FLAG_MOSSDEEP_GYM_SWITCH_2 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -154,8 +154,8 @@ MossdeepCity_Gym_EventScript_ClearSwitch2:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_2 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Down, 0 - setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Up, 1 + setmetatile 8, 14, METATILE_RS_MossdeepGym_RedArrow_Down, FALSE + setmetatile 8, 10, METATILE_RS_MossdeepGym_Switch_Up, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -165,8 +165,8 @@ MossdeepCity_Gym_EventScript_Switch3:: setflag FLAG_MOSSDEEP_GYM_SWITCH_3 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Left, 0 - setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Left, FALSE + setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -174,8 +174,8 @@ MossdeepCity_Gym_EventScript_ClearSwitch3:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_3 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Up, 1 + setmetatile 15, 17, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 17, 15, METATILE_RS_MossdeepGym_Switch_Up, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -185,8 +185,8 @@ MossdeepCity_Gym_EventScript_Switch4:: setflag FLAG_MOSSDEEP_GYM_SWITCH_4 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Up, 0 - setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Down, 1 + setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Up, FALSE + setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Down, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end @@ -194,8 +194,8 @@ MossdeepCity_Gym_EventScript_ClearSwitch4:: clearflag FLAG_MOSSDEEP_GYM_SWITCH_4 applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse waitmovement 0 - setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Right, 0 - setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Up, 1 + setmetatile 1, 23, METATILE_RS_MossdeepGym_RedArrow_Right, FALSE + setmetatile 5, 24, METATILE_RS_MossdeepGym_Switch_Up, TRUE goto MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed end diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc index b44b343a65b4..b7c08839e3f8 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc @@ -52,7 +52,7 @@ MossdeepCity_SpaceCenter_1F_OnLoad: end MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: - setmetatile 2, 5, METATILE_Facility_DataPad, 1 + setmetatile 2, 5, METATILE_Facility_DataPad, TRUE return MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index 22b26f392701..af7c601e005e 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -12,7 +12,7 @@ MossdeepCity_StevensHouse_OnLoad: end MossdeepCity_StevensHouse_EventScript_HideStevensNote:: - setmetatile 6, 4, METATILE_GenericBuilding_TableEdge, 1 + setmetatile 6, 4, METATILE_GenericBuilding_TableEdge, TRUE return MossdeepCity_StevensHouse_OnTransition: diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc index 1304db33745a..50582ce380ac 100644 --- a/data/maps/NewMauville_Entrance/scripts.inc +++ b/data/maps/NewMauville_Entrance/scripts.inc @@ -9,12 +9,12 @@ NewMauville_Entrance_OnLoad: end NewMauville_Entrance_EventScript_CloseDoor:: - setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile0, 1 - setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile1, 1 - setmetatile 5, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile2, 1 - setmetatile 3, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile3, 1 - setmetatile 4, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile4, 1 - setmetatile 5, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile5, 1 + setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile0, TRUE + setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile1, TRUE + setmetatile 5, 0, METATILE_Facility_NewMauvilleDoor_Closed_Tile2, TRUE + setmetatile 3, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile3, TRUE + setmetatile 4, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile4, TRUE + setmetatile 5, 1, METATILE_Facility_NewMauvilleDoor_Closed_Tile5, TRUE return NewMauville_Entrance_OnTransition: @@ -33,12 +33,12 @@ NewMauville_Entrance_EventScript_Door:: compare VAR_RESULT, NO goto_if_eq NewMauville_Entrance_EventScript_DontOpenDoor msgbox NewMauville_Entrance_Text_UsedBasementKey, MSGBOX_DEFAULT - setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile0, 0 - setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile1, 0 - setmetatile 5, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile2, 0 - setmetatile 3, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile3, 1 - setmetatile 4, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile4, 0 - setmetatile 5, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile5, 1 + setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile0, FALSE + setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile1, FALSE + setmetatile 5, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile2, FALSE + setmetatile 3, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile3, TRUE + setmetatile 4, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile4, FALSE + setmetatile 5, 1, METATILE_Facility_NewMauvilleDoor_Open_Tile5, TRUE special DrawWholeMapView playse SE_BANG setvar VAR_NEW_MAUVILLE_STATE, 1 diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc index d924651cef7a..543b030e142f 100644 --- a/data/maps/NewMauville_Inside/scripts.inc +++ b/data/maps/NewMauville_Inside/scripts.inc @@ -65,83 +65,83 @@ NewMauville_Inside_EventScript_GreenButton:: end NewMauville_Inside_EventScript_SetBarrierStateBlueButton:: - setmetatile 23, 34, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 23, 35, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 23, 36, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 23, 37, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 10, 16, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 10, 17, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 10, 18, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 10, 19, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 10, 0, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 10, 1, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 10, 2, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 10, 3, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 37, 33, METATILE_BikeShop_Barrier_Green_Top, 1 - setmetatile 37, 34, METATILE_BikeShop_Barrier_Green_TopMid, 1 - setmetatile 37, 35, METATILE_BikeShop_Barrier_Green_BottomMid, 1 - setmetatile 37, 36, METATILE_BikeShop_Barrier_Green_Bottom, 1 - setmetatile 28, 22, METATILE_BikeShop_Barrier_Green_Top, 1 - setmetatile 28, 23, METATILE_BikeShop_Barrier_Green_TopMid, 1 - setmetatile 28, 24, METATILE_BikeShop_Barrier_Green_BottomMid, 1 - setmetatile 28, 25, METATILE_BikeShop_Barrier_Green_Bottom, 1 - setmetatile 10, 24, METATILE_BikeShop_Barrier_Green_Top, 1 - setmetatile 10, 25, METATILE_BikeShop_Barrier_Green_TopMid, 1 - setmetatile 10, 26, METATILE_BikeShop_Barrier_Green_BottomMid, 1 - setmetatile 10, 27, METATILE_BikeShop_Barrier_Green_Bottom, 1 - setmetatile 21, 2, METATILE_BikeShop_Barrier_Green_Top, 1 - setmetatile 21, 3, METATILE_BikeShop_Barrier_Green_TopMid, 1 - setmetatile 21, 4, METATILE_BikeShop_Barrier_Green_BottomMid, 1 - setmetatile 21, 5, METATILE_BikeShop_Barrier_Green_Bottom, 1 - setmetatile 6, 11, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 13, 10, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 16, 22, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 4, 26, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 30, 38, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 2, 11, METATILE_BikeShop_Button_Green, 0 - setmetatile 17, 10, METATILE_BikeShop_Button_Green, 0 - setmetatile 25, 18, METATILE_BikeShop_Button_Green, 0 - setmetatile 18, 36, METATILE_BikeShop_Button_Green, 0 + setmetatile 23, 34, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 23, 35, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 23, 36, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 23, 37, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 10, 16, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 10, 17, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 10, 18, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 10, 19, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 10, 0, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 10, 1, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 10, 2, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 10, 3, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 37, 33, METATILE_BikeShop_Barrier_Green_Top, TRUE + setmetatile 37, 34, METATILE_BikeShop_Barrier_Green_TopMid, TRUE + setmetatile 37, 35, METATILE_BikeShop_Barrier_Green_BottomMid, TRUE + setmetatile 37, 36, METATILE_BikeShop_Barrier_Green_Bottom, TRUE + setmetatile 28, 22, METATILE_BikeShop_Barrier_Green_Top, TRUE + setmetatile 28, 23, METATILE_BikeShop_Barrier_Green_TopMid, TRUE + setmetatile 28, 24, METATILE_BikeShop_Barrier_Green_BottomMid, TRUE + setmetatile 28, 25, METATILE_BikeShop_Barrier_Green_Bottom, TRUE + setmetatile 10, 24, METATILE_BikeShop_Barrier_Green_Top, TRUE + setmetatile 10, 25, METATILE_BikeShop_Barrier_Green_TopMid, TRUE + setmetatile 10, 26, METATILE_BikeShop_Barrier_Green_BottomMid, TRUE + setmetatile 10, 27, METATILE_BikeShop_Barrier_Green_Bottom, TRUE + setmetatile 21, 2, METATILE_BikeShop_Barrier_Green_Top, TRUE + setmetatile 21, 3, METATILE_BikeShop_Barrier_Green_TopMid, TRUE + setmetatile 21, 4, METATILE_BikeShop_Barrier_Green_BottomMid, TRUE + setmetatile 21, 5, METATILE_BikeShop_Barrier_Green_Bottom, TRUE + setmetatile 6, 11, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 13, 10, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 16, 22, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 4, 26, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 30, 38, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 2, 11, METATILE_BikeShop_Button_Green, FALSE + setmetatile 17, 10, METATILE_BikeShop_Button_Green, FALSE + setmetatile 25, 18, METATILE_BikeShop_Button_Green, FALSE + setmetatile 18, 36, METATILE_BikeShop_Button_Green, FALSE return NewMauville_Inside_EventScript_SetBarrierStateGreenButton:: - setmetatile 23, 34, METATILE_BikeShop_Barrier_Blue_Top, 1 - setmetatile 23, 35, METATILE_BikeShop_Barrier_Blue_TopMid, 1 - setmetatile 23, 36, METATILE_BikeShop_Barrier_Blue_BottomMid, 1 - setmetatile 23, 37, METATILE_BikeShop_Barrier_Blue_Bottom, 1 - setmetatile 10, 16, METATILE_BikeShop_Barrier_Blue_Top, 1 - setmetatile 10, 17, METATILE_BikeShop_Barrier_Blue_TopMid, 1 - setmetatile 10, 18, METATILE_BikeShop_Barrier_Blue_BottomMid, 1 - setmetatile 10, 19, METATILE_BikeShop_Barrier_Blue_Bottom, 1 - setmetatile 10, 0, METATILE_BikeShop_Barrier_Blue_Top, 1 - setmetatile 10, 1, METATILE_BikeShop_Barrier_Blue_TopMid, 1 - setmetatile 10, 2, METATILE_BikeShop_Barrier_Blue_BottomMid, 1 - setmetatile 10, 3, METATILE_BikeShop_Barrier_Blue_Bottom, 1 - setmetatile 37, 33, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 37, 34, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 37, 35, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 37, 36, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 28, 22, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 28, 23, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 28, 24, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 28, 25, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 10, 24, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 10, 25, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 10, 26, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 10, 27, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 21, 2, METATILE_BikeShop_Barrier_Hidden_Top, 1 - setmetatile 21, 3, METATILE_BikeShop_Barrier_Hidden_Bottom, 1 - setmetatile 21, 4, METATILE_BikeShop_Floor_Shadow_Top, 0 - setmetatile 21, 5, METATILE_BikeShop_Wall_Edge_Top, 0 - setmetatile 2, 11, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 17, 10, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 25, 18, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 18, 36, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 6, 11, METATILE_BikeShop_Button_Blue, 0 - setmetatile 13, 10, METATILE_BikeShop_Button_Blue, 0 - setmetatile 16, 22, METATILE_BikeShop_Button_Blue, 0 - setmetatile 4, 26, METATILE_BikeShop_Button_Blue, 0 - setmetatile 30, 38, METATILE_BikeShop_Button_Blue, 0 + setmetatile 23, 34, METATILE_BikeShop_Barrier_Blue_Top, TRUE + setmetatile 23, 35, METATILE_BikeShop_Barrier_Blue_TopMid, TRUE + setmetatile 23, 36, METATILE_BikeShop_Barrier_Blue_BottomMid, TRUE + setmetatile 23, 37, METATILE_BikeShop_Barrier_Blue_Bottom, TRUE + setmetatile 10, 16, METATILE_BikeShop_Barrier_Blue_Top, TRUE + setmetatile 10, 17, METATILE_BikeShop_Barrier_Blue_TopMid, TRUE + setmetatile 10, 18, METATILE_BikeShop_Barrier_Blue_BottomMid, TRUE + setmetatile 10, 19, METATILE_BikeShop_Barrier_Blue_Bottom, TRUE + setmetatile 10, 0, METATILE_BikeShop_Barrier_Blue_Top, TRUE + setmetatile 10, 1, METATILE_BikeShop_Barrier_Blue_TopMid, TRUE + setmetatile 10, 2, METATILE_BikeShop_Barrier_Blue_BottomMid, TRUE + setmetatile 10, 3, METATILE_BikeShop_Barrier_Blue_Bottom, TRUE + setmetatile 37, 33, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 37, 34, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 37, 35, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 37, 36, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 28, 22, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 28, 23, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 28, 24, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 28, 25, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 10, 24, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 10, 25, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 10, 26, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 10, 27, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 21, 2, METATILE_BikeShop_Barrier_Hidden_Top, TRUE + setmetatile 21, 3, METATILE_BikeShop_Barrier_Hidden_Bottom, TRUE + setmetatile 21, 4, METATILE_BikeShop_Floor_Shadow_Top, FALSE + setmetatile 21, 5, METATILE_BikeShop_Wall_Edge_Top, FALSE + setmetatile 2, 11, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 17, 10, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 25, 18, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 18, 36, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 6, 11, METATILE_BikeShop_Button_Blue, FALSE + setmetatile 13, 10, METATILE_BikeShop_Button_Blue, FALSE + setmetatile 16, 22, METATILE_BikeShop_Button_Blue, FALSE + setmetatile 4, 26, METATILE_BikeShop_Button_Blue, FALSE + setmetatile 30, 38, METATILE_BikeShop_Button_Blue, FALSE return NewMauville_Inside_EventScript_RedButton:: @@ -153,15 +153,15 @@ NewMauville_Inside_EventScript_RedButton:: end NewMauville_Inside_EventScript_SetGeneratorOffMetatiles:: - setmetatile 33, 6, METATILE_BikeShop_Button_Pressed, 0 - setmetatile 32, 2, METATILE_BikeShop_Generator_Off_Tile0, 1 - setmetatile 33, 2, METATILE_BikeShop_Generator_Off_Tile1, 1 - setmetatile 34, 2, METATILE_BikeShop_Generator_Off_Tile2, 1 - setmetatile 35, 2, METATILE_BikeShop_Generator_Off_Tile3, 1 - setmetatile 32, 3, METATILE_BikeShop_Generator_Off_Tile4, 1 - setmetatile 33, 3, METATILE_BikeShop_Generator_Off_Tile5, 1 - setmetatile 34, 3, METATILE_BikeShop_Generator_Off_Tile6, 1 - setmetatile 35, 3, METATILE_BikeShop_Generator_Off_Tile7, 1 + setmetatile 33, 6, METATILE_BikeShop_Button_Pressed, FALSE + setmetatile 32, 2, METATILE_BikeShop_Generator_Off_Tile0, TRUE + setmetatile 33, 2, METATILE_BikeShop_Generator_Off_Tile1, TRUE + setmetatile 34, 2, METATILE_BikeShop_Generator_Off_Tile2, TRUE + setmetatile 35, 2, METATILE_BikeShop_Generator_Off_Tile3, TRUE + setmetatile 32, 3, METATILE_BikeShop_Generator_Off_Tile4, TRUE + setmetatile 33, 3, METATILE_BikeShop_Generator_Off_Tile5, TRUE + setmetatile 34, 3, METATILE_BikeShop_Generator_Off_Tile6, TRUE + setmetatile 35, 3, METATILE_BikeShop_Generator_Off_Tile7, TRUE special DrawWholeMapView return diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index 6c8da5847a72..251f24aa6c5f 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -1138,51 +1138,51 @@ PetalburgCity_Gym_EventScript_OpenOHKORoomDoors:: return PetalburgCity_Gym_EventScript_SetEntranceRoomDoorMetatiles:: - setmetatile 6, 85, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 85, METATILE_PetalburgGym_RoomEntrance_Right, 0 - setmetatile 1, 98, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 98, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 85, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 85, METATILE_PetalburgGym_RoomEntrance_Right, FALSE + setmetatile 1, 98, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 98, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetSpeedRoomDoorMetatiles:: - setmetatile 6, 46, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 46, METATILE_PetalburgGym_RoomEntrance_Right, 0 - setmetatile 1, 59, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 59, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 46, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 46, METATILE_PetalburgGym_RoomEntrance_Right, FALSE + setmetatile 1, 59, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 59, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetAccuracyRoomDoorMetatiles:: - setmetatile 6, 59, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 59, METATILE_PetalburgGym_RoomEntrance_Right, 0 - setmetatile 1, 72, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 72, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 59, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 59, METATILE_PetalburgGym_RoomEntrance_Right, FALSE + setmetatile 1, 72, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 72, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetConfusionRoomDoorMetatiles:: - setmetatile 1, 20, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 20, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 1, 20, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 20, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetDefenseRoomDoorMetatiles:: - setmetatile 6, 20, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 20, METATILE_PetalburgGym_RoomEntrance_Right, 0 - setmetatile 1, 33, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 33, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 20, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 20, METATILE_PetalburgGym_RoomEntrance_Right, FALSE + setmetatile 1, 33, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 33, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetRecoveryRoomDoorMetatiles:: - setmetatile 6, 33, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 33, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 33, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 33, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetStrengthRoomDoorMetatiles:: - setmetatile 1, 7, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 2, 7, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 1, 7, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 2, 7, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SetOHKORoomDoorMetatiles:: - setmetatile 6, 7, METATILE_PetalburgGym_RoomEntrance_Left, 0 - setmetatile 7, 7, METATILE_PetalburgGym_RoomEntrance_Right, 0 + setmetatile 6, 7, METATILE_PetalburgGym_RoomEntrance_Left, FALSE + setmetatile 7, 7, METATILE_PetalburgGym_RoomEntrance_Right, FALSE return PetalburgCity_Gym_EventScript_SlideOpenRoomDoors:: diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index 4553f431c038..cf7bc72b51ea 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -15,8 +15,8 @@ Route103_OnLoad: end Route103_EventScript_OpenAlteringCave:: - setmetatile 45, 5, METATILE_General_CaveEntrance_Top, 1 - setmetatile 45, 6, METATILE_General_CaveEntrance_Bottom, 0 + setmetatile 45, 5, METATILE_General_CaveEntrance_Top, TRUE + setmetatile 45, 6, METATILE_General_CaveEntrance_Bottom, FALSE return Route103_EventScript_Rival:: diff --git a/data/maps/Route105/scripts.inc b/data/maps/Route105/scripts.inc index b60cd181fa5a..2184edf5addc 100644 --- a/data/maps/Route105/scripts.inc +++ b/data/maps/Route105/scripts.inc @@ -13,8 +13,8 @@ Route105_OnLoad: end Route105_CloseRegiEntrance:: - setmetatile 9, 19, METATILE_General_RockWall_RockBase, 1 - setmetatile 9, 20, METATILE_General_RockWall_SandBase, 1 + setmetatile 9, 19, METATILE_General_RockWall_RockBase, TRUE + setmetatile 9, 20, METATILE_General_RockWall_SandBase, TRUE return Route105_OnTransition: diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc index f30d74f01c81..116c3a4febf4 100644 --- a/data/maps/Route110_TrickHouseEnd/scripts.inc +++ b/data/maps/Route110_TrickHouseEnd/scripts.inc @@ -39,7 +39,7 @@ Route110_TrickHouseEnd_EventScript_CloseDoor:: end Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile:: - setmetatile 10, 1, METATILE_GenericBuilding_TrickHouse_Door_Closed, 1 + setmetatile 10, 1, METATILE_GenericBuilding_TrickHouse_Door_Closed, TRUE return Route110_TrickHouseEnd_EventScript_TrickMaster:: diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index ef8e45b45ed1..a0250c44ce3f 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -512,7 +512,7 @@ Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom:: - setmetatile 5, 1, METATILE_GenericBuilding_TrickHouse_Stairs_Down, 0 + setmetatile 5, 1, METATILE_GenericBuilding_TrickHouse_Stairs_Down, FALSE special DrawWholeMapView delay 20 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp @@ -618,7 +618,7 @@ Route110_TrickHousePuzzle1_EventScript_Door:: msgbox Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -629,7 +629,7 @@ Route110_TrickHousePuzzle2_EventScript_Door:: msgbox Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_2_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -640,7 +640,7 @@ Route110_TrickHousePuzzle3_EventScript_Door:: msgbox Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_3_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -651,7 +651,7 @@ Route110_TrickHousePuzzle4_EventScript_Door:: msgbox Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_4_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -662,7 +662,7 @@ Route110_TrickHousePuzzle5_EventScript_Door:: msgbox Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_5_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -673,7 +673,7 @@ Route110_TrickHousePuzzle6_EventScript_Door:: msgbox Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_6_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -684,7 +684,7 @@ Route110_TrickHousePuzzle7_EventScript_Door:: msgbox Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end @@ -695,7 +695,7 @@ Route110_TrickHousePuzzle8_EventScript_Door:: msgbox Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_8_STATE, 2 - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end diff --git a/data/maps/Route110_TrickHousePuzzle1/scripts.inc b/data/maps/Route110_TrickHousePuzzle1/scripts.inc index 6fc6adcd5622..920a43819f8b 100644 --- a/data/maps/Route110_TrickHousePuzzle1/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle1/scripts.inc @@ -8,7 +8,7 @@ Route110_TrickHousePuzzle1_OnLoad: end Route110_TrickHousePuzzle1_EventScript_OpenDoor:: - setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, 0 + setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE end Route110_TrickHousePuzzle1_EventScript_Scroll:: diff --git a/data/maps/Route110_TrickHousePuzzle2/scripts.inc b/data/maps/Route110_TrickHousePuzzle2/scripts.inc index a0222733a9dd..4e8c52cf4a37 100644 --- a/data/maps/Route110_TrickHousePuzzle2/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle2/scripts.inc @@ -70,23 +70,23 @@ Route110_TrickHousePuzzle2_EventScript_Button4:: end Route110_TrickHousePuzzle2_EventScript_PressButton1:: - setmetatile 11, 12, METATILE_TrickHousePuzzle_Button_Pressed, 0 - setmetatile 1, 13, METATILE_TrickHousePuzzle_Door_Shuttered, 0 + setmetatile 11, 12, METATILE_TrickHousePuzzle_Button_Pressed, FALSE + setmetatile 1, 13, METATILE_TrickHousePuzzle_Door_Shuttered, FALSE return Route110_TrickHousePuzzle2_EventScript_PressButton2:: - setmetatile 0, 4, METATILE_TrickHousePuzzle_Button_Pressed, 0 - setmetatile 5, 6, METATILE_TrickHousePuzzle_Door_Shuttered, 0 + setmetatile 0, 4, METATILE_TrickHousePuzzle_Button_Pressed, FALSE + setmetatile 5, 6, METATILE_TrickHousePuzzle_Door_Shuttered, FALSE return Route110_TrickHousePuzzle2_EventScript_PressButton3:: - setmetatile 14, 5, METATILE_TrickHousePuzzle_Button_Pressed, 0 - setmetatile 7, 15, METATILE_TrickHousePuzzle_Door_Shuttered, 0 + setmetatile 14, 5, METATILE_TrickHousePuzzle_Button_Pressed, FALSE + setmetatile 7, 15, METATILE_TrickHousePuzzle_Door_Shuttered, FALSE return Route110_TrickHousePuzzle2_EventScript_PressButton4:: - setmetatile 7, 11, METATILE_TrickHousePuzzle_Button_Pressed, 0 - setmetatile 14, 12, METATILE_TrickHousePuzzle_Door_Shuttered, 0 + setmetatile 7, 11, METATILE_TrickHousePuzzle_Button_Pressed, FALSE + setmetatile 14, 12, METATILE_TrickHousePuzzle_Door_Shuttered, FALSE return Route110_TrickHousePuzzle2_EventScript_Ted:: diff --git a/data/maps/Route110_TrickHousePuzzle3/scripts.inc b/data/maps/Route110_TrickHousePuzzle3/scripts.inc index 4e706268c0ca..2b732124fb4a 100644 --- a/data/maps/Route110_TrickHousePuzzle3/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle3/scripts.inc @@ -21,10 +21,10 @@ Route110_TrickHousePuzzle3_OnTransition: end Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: - setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Up, 0 - setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Up, 0 - setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Up, 0 - setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Up, 0 + setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Up, FALSE + setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Up, FALSE + setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Up, FALSE + setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Up, FALSE compare VAR_TEMP_8, 1 call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile compare VAR_TEMP_8, 2 @@ -36,173 +36,173 @@ Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: return Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile:: - setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Pressed, 0 + setmetatile 4, 14, METATILE_TrickHousePuzzle_Button_Pressed, FALSE return Route110_TrickHousePuzzle3_EventScript_PressedButton2Metatile:: - setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Pressed, 0 + setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Pressed, FALSE return Route110_TrickHousePuzzle3_EventScript_PressedButton3Metatile:: - setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Pressed, 0 + setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Pressed, FALSE return Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile:: - setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Pressed, 0 + setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Pressed, FALSE return Route110_TrickHousePuzzle3_EventScript_SetDoorsState0:: - setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 - setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 - setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 - setmetatile 2, 7, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, 0 - setmetatile 1, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 - setmetatile 2, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 - setmetatile 1, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 - setmetatile 2, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, 0 - setmetatile 4, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 - setmetatile 5, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 - setmetatile 4, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 - setmetatile 5, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, 0 - setmetatile 13, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 - setmetatile 14, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 - setmetatile 13, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 - setmetatile 14, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, 0 - setmetatile 13, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, 0 - setmetatile 14, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, 0 - setmetatile 13, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, 0 - setmetatile 14, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, 0 - setmetatile 3, 7, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, 1 - setmetatile 3, 8, METATILE_TrickHousePuzzle_Floor_ShadowTop, 0 - setmetatile 3, 13, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, 1 - setmetatile 3, 14, METATILE_TrickHousePuzzle_Floor_ShadowTop, 0 - setmetatile 6, 4, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, 1 - setmetatile 6, 5, METATILE_TrickHousePuzzle_Floor_ShadowTop, 0 - setmetatile 9, 16, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, 1 - setmetatile 9, 17, METATILE_TrickHousePuzzle_Floor_ShadowTop, 0 - setmetatile 12, 7, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, 1 - setmetatile 12, 8, METATILE_TrickHousePuzzle_Floor_ShadowTop, 0 - setmetatile 1, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 2, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 1, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 2, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 1, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 2, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 1, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 2, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 4, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 5, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 4, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 5, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 4, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 5, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 4, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 5, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 4, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 5, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 4, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 5, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 7, 9, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 8, 9, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 7, 10, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 8, 10, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 10, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 11, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 10, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 11, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 10, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 11, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 10, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 11, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 10, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 11, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 10, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 11, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 13, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, 0 - setmetatile 14, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, 0 - setmetatile 13, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, 1 - setmetatile 14, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, 1 - setmetatile 3, 16, METATILE_TrickHousePuzzle_RedDoorV_Open0, 1 - setmetatile 3, 17, METATILE_TrickHousePuzzle_RedDoorV_Open1, 1 - setmetatile 9, 4, METATILE_TrickHousePuzzle_RedDoorV_Open0, 1 - setmetatile 9, 5, METATILE_TrickHousePuzzle_RedDoorV_Open1, 1 + setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, FALSE + setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, FALSE + setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, FALSE + setmetatile 2, 7, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, FALSE + setmetatile 1, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, FALSE + setmetatile 2, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, FALSE + setmetatile 1, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, FALSE + setmetatile 2, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, FALSE + setmetatile 4, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, FALSE + setmetatile 5, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, FALSE + setmetatile 4, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, FALSE + setmetatile 5, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, FALSE + setmetatile 13, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, FALSE + setmetatile 14, 9, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, FALSE + setmetatile 13, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, FALSE + setmetatile 14, 10, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, FALSE + setmetatile 13, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile0, FALSE + setmetatile 14, 15, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile1, FALSE + setmetatile 13, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile2, FALSE + setmetatile 14, 16, METATILE_TrickHousePuzzle_BlueDoorH_Open_Tile3, FALSE + setmetatile 3, 7, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, TRUE + setmetatile 3, 8, METATILE_TrickHousePuzzle_Floor_ShadowTop, FALSE + setmetatile 3, 13, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, TRUE + setmetatile 3, 14, METATILE_TrickHousePuzzle_Floor_ShadowTop, FALSE + setmetatile 6, 4, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, TRUE + setmetatile 6, 5, METATILE_TrickHousePuzzle_Floor_ShadowTop, FALSE + setmetatile 9, 16, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, TRUE + setmetatile 9, 17, METATILE_TrickHousePuzzle_Floor_ShadowTop, FALSE + setmetatile 12, 7, METATILE_TrickHousePuzzle_BlueDoorV_Retracted, TRUE + setmetatile 12, 8, METATILE_TrickHousePuzzle_Floor_ShadowTop, FALSE + setmetatile 1, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 2, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 1, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 2, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 1, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 2, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 1, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 2, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 4, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 5, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 4, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 5, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 4, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 5, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 4, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 5, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 4, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 5, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 4, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 5, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 7, 9, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 8, 9, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 7, 10, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 8, 10, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 10, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 11, 6, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 10, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 11, 7, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 10, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 11, 12, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 10, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 11, 13, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 10, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 11, 18, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 10, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 11, 19, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 13, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile0, FALSE + setmetatile 14, 3, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile1, FALSE + setmetatile 13, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile2, TRUE + setmetatile 14, 4, METATILE_TrickHousePuzzle_RedDoorH_Closed_Tile3, TRUE + setmetatile 3, 16, METATILE_TrickHousePuzzle_RedDoorV_Open0, TRUE + setmetatile 3, 17, METATILE_TrickHousePuzzle_RedDoorV_Open1, TRUE + setmetatile 9, 4, METATILE_TrickHousePuzzle_RedDoorV_Open0, TRUE + setmetatile 9, 5, METATILE_TrickHousePuzzle_RedDoorV_Open1, TRUE return Route110_TrickHousePuzzle3_EventScript_SetDoorsState1:: - setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 - setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 - setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 - setmetatile 2, 7, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, 1 - setmetatile 1, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 - setmetatile 2, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 - setmetatile 1, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 - setmetatile 2, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, 1 - setmetatile 4, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 - setmetatile 5, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 - setmetatile 4, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 - setmetatile 5, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, 1 - setmetatile 13, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 - setmetatile 14, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 - setmetatile 13, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 - setmetatile 14, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, 1 - setmetatile 13, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, 0 - setmetatile 14, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, 0 - setmetatile 13, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, 1 - setmetatile 14, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, 1 - setmetatile 3, 7, METATILE_TrickHousePuzzle_BlueDoorV_Open0, 1 - setmetatile 3, 8, METATILE_TrickHousePuzzle_BlueDoorV_Open1, 1 - setmetatile 3, 13, METATILE_TrickHousePuzzle_BlueDoorV_Open0, 1 - setmetatile 3, 14, METATILE_TrickHousePuzzle_BlueDoorV_Open1, 1 - setmetatile 6, 4, METATILE_TrickHousePuzzle_BlueDoorV_Open0, 1 - setmetatile 6, 5, METATILE_TrickHousePuzzle_BlueDoorV_Open1, 1 - setmetatile 9, 16, METATILE_TrickHousePuzzle_BlueDoorV_Open0, 1 - setmetatile 9, 17, METATILE_TrickHousePuzzle_BlueDoorV_Open1, 1 - setmetatile 12, 7, METATILE_TrickHousePuzzle_BlueDoorV_Open0, 1 - setmetatile 12, 8, METATILE_TrickHousePuzzle_BlueDoorV_Open1, 1 - setmetatile 1, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 2, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 1, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 2, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 1, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 2, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 1, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 2, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 4, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 5, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 4, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 5, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 4, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 5, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 4, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 5, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 4, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 5, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 4, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 5, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 7, 9, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 8, 9, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 7, 10, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 8, 10, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 10, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 11, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 10, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 11, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 10, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 11, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 10, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 11, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 10, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 11, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 10, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 11, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 13, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, 0 - setmetatile 14, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, 0 - setmetatile 13, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, 0 - setmetatile 14, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, 0 - setmetatile 3, 16, METATILE_TrickHousePuzzle_RedDoorV_Retracted, 1 - setmetatile 3, 17, METATILE_TrickHousePuzzle_Floor_ShadowTop_Alt, 0 - setmetatile 9, 4, METATILE_TrickHousePuzzle_RedDoorV_Retracted, 1 - setmetatile 9, 5, METATILE_TrickHousePuzzle_Floor_ShadowTop_Alt, 0 + setmetatile 1, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, FALSE + setmetatile 2, 6, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, FALSE + setmetatile 1, 7, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, TRUE + setmetatile 2, 7, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, TRUE + setmetatile 1, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, FALSE + setmetatile 2, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, FALSE + setmetatile 1, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, TRUE + setmetatile 2, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, TRUE + setmetatile 4, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, FALSE + setmetatile 5, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, FALSE + setmetatile 4, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, TRUE + setmetatile 5, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, TRUE + setmetatile 13, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, FALSE + setmetatile 14, 9, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, FALSE + setmetatile 13, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, TRUE + setmetatile 14, 10, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, TRUE + setmetatile 13, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile0, FALSE + setmetatile 14, 15, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile1, FALSE + setmetatile 13, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile2, TRUE + setmetatile 14, 16, METATILE_TrickHousePuzzle_BlueDoorH_Closed_Tile3, TRUE + setmetatile 3, 7, METATILE_TrickHousePuzzle_BlueDoorV_Open0, TRUE + setmetatile 3, 8, METATILE_TrickHousePuzzle_BlueDoorV_Open1, TRUE + setmetatile 3, 13, METATILE_TrickHousePuzzle_BlueDoorV_Open0, TRUE + setmetatile 3, 14, METATILE_TrickHousePuzzle_BlueDoorV_Open1, TRUE + setmetatile 6, 4, METATILE_TrickHousePuzzle_BlueDoorV_Open0, TRUE + setmetatile 6, 5, METATILE_TrickHousePuzzle_BlueDoorV_Open1, TRUE + setmetatile 9, 16, METATILE_TrickHousePuzzle_BlueDoorV_Open0, TRUE + setmetatile 9, 17, METATILE_TrickHousePuzzle_BlueDoorV_Open1, TRUE + setmetatile 12, 7, METATILE_TrickHousePuzzle_BlueDoorV_Open0, TRUE + setmetatile 12, 8, METATILE_TrickHousePuzzle_BlueDoorV_Open1, TRUE + setmetatile 1, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 2, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 1, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 2, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 1, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 2, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 1, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 2, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 4, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 5, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 4, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 5, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 4, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 5, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 4, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 5, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 4, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 5, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 4, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 5, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 7, 9, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 8, 9, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 7, 10, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 8, 10, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 10, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 11, 6, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 10, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 11, 7, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 10, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 11, 12, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 10, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 11, 13, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 10, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 11, 18, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 10, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 11, 19, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 13, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile0, FALSE + setmetatile 14, 3, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile1, FALSE + setmetatile 13, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile2, FALSE + setmetatile 14, 4, METATILE_TrickHousePuzzle_RedDoorH_Open_Tile3, FALSE + setmetatile 3, 16, METATILE_TrickHousePuzzle_RedDoorV_Retracted, TRUE + setmetatile 3, 17, METATILE_TrickHousePuzzle_Floor_ShadowTop_Alt, FALSE + setmetatile 9, 4, METATILE_TrickHousePuzzle_RedDoorV_Retracted, TRUE + setmetatile 9, 5, METATILE_TrickHousePuzzle_Floor_ShadowTop_Alt, FALSE return Route110_TrickHousePuzzle3_EventScript_Button1:: diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc index 1890eb2c4897..473c39992ab3 100644 --- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc @@ -22,53 +22,53 @@ Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles:: @ Leftover from R/S, none of the below metatile scripts are ever called Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn:: - setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 - setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_On, 1 + setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE + setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_On, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn:: - setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 - setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_On, 1 + setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE + setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_On, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn:: - setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, 0 - setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_On, 1 + setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE + setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_On, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn:: - setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right_Alt, 0 - setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_On, 1 + setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right_Alt, FALSE + setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_On, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn:: - setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, 0 - setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_On, 1 + setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, FALSE + setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_On, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOff:: - setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, 0 - setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_Off, 1 + setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, FALSE + setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_Off, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOff:: - setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, 0 - setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_Off, 1 + setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, FALSE + setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_Off, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOff:: - setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, 0 - setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_Off, 1 + setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, FALSE + setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_Off, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOff:: - setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left_Alt, 0 - setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_Off, 1 + setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left_Alt, FALSE + setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_Off, TRUE return Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff:: - setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right, 0 - setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_Off, 1 + setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right, FALSE + setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_Off, TRUE return Route110_TrickHousePuzzle7_OnTransition: diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 8b0ee51c4291..2007c89f6c91 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -20,30 +20,30 @@ Route111_OnLoad: end Route111_EventScript_CloseDesertRuins:: - setmetatile 29, 86, METATILE_General_RockWall_RockBase, 1 - setmetatile 29, 87, METATILE_General_RockWall_SandBase, 1 + setmetatile 29, 86, METATILE_General_RockWall_RockBase, TRUE + setmetatile 29, 87, METATILE_General_RockWall_SandBase, TRUE return @ Show Mirage Tower just prior to disintegration. Mirage Tower is otherwise handled by the map layout Route111_EventScript_ShowTemporaryMirageTower:: - setmetatile 18, 53, METATILE_Mauville_MirageTower_Tile0, 0 - setmetatile 19, 53, METATILE_Mauville_MirageTower_Tile1, 0 - setmetatile 20, 53, METATILE_Mauville_MirageTower_Tile2, 0 - setmetatile 18, 54, METATILE_Mauville_MirageTower_Tile3, 0 - setmetatile 19, 54, METATILE_Mauville_MirageTower_Tile4, 0 - setmetatile 20, 54, METATILE_Mauville_MirageTower_Tile5, 0 - setmetatile 18, 55, METATILE_Mauville_MirageTower_Tile6, 0 - setmetatile 19, 55, METATILE_Mauville_MirageTower_Tile7, 0 - setmetatile 20, 55, METATILE_Mauville_MirageTower_Tile8, 0 - setmetatile 18, 56, METATILE_Mauville_MirageTower_Tile9, 0 - setmetatile 19, 56, METATILE_Mauville_MirageTower_TileA, 0 - setmetatile 20, 56, METATILE_Mauville_MirageTower_TileB, 0 - setmetatile 18, 57, METATILE_Mauville_MirageTower_TileC, 0 - setmetatile 19, 57, METATILE_Mauville_MirageTower_TileD, 0 - setmetatile 20, 57, METATILE_Mauville_MirageTower_TileE, 0 - setmetatile 18, 58, METATILE_Mauville_MirageTower_TileF, 0 - setmetatile 19, 58, METATILE_Mauville_MirageTower_Tile10, 0 - setmetatile 20, 58, METATILE_Mauville_MirageTower_Tile11, 0 + setmetatile 18, 53, METATILE_Mauville_MirageTower_Tile0, FALSE + setmetatile 19, 53, METATILE_Mauville_MirageTower_Tile1, FALSE + setmetatile 20, 53, METATILE_Mauville_MirageTower_Tile2, FALSE + setmetatile 18, 54, METATILE_Mauville_MirageTower_Tile3, FALSE + setmetatile 19, 54, METATILE_Mauville_MirageTower_Tile4, FALSE + setmetatile 20, 54, METATILE_Mauville_MirageTower_Tile5, FALSE + setmetatile 18, 55, METATILE_Mauville_MirageTower_Tile6, FALSE + setmetatile 19, 55, METATILE_Mauville_MirageTower_Tile7, FALSE + setmetatile 20, 55, METATILE_Mauville_MirageTower_Tile8, FALSE + setmetatile 18, 56, METATILE_Mauville_MirageTower_Tile9, FALSE + setmetatile 19, 56, METATILE_Mauville_MirageTower_TileA, FALSE + setmetatile 20, 56, METATILE_Mauville_MirageTower_TileB, FALSE + setmetatile 18, 57, METATILE_Mauville_MirageTower_TileC, FALSE + setmetatile 19, 57, METATILE_Mauville_MirageTower_TileD, FALSE + setmetatile 20, 57, METATILE_Mauville_MirageTower_TileE, FALSE + setmetatile 18, 58, METATILE_Mauville_MirageTower_TileF, FALSE + setmetatile 19, 58, METATILE_Mauville_MirageTower_Tile10, FALSE + setmetatile 20, 58, METATILE_Mauville_MirageTower_Tile11, FALSE return Route111_OnTransition: diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc index a9bfc39b85ac..500e12beed2b 100644 --- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc +++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc @@ -19,8 +19,8 @@ Route114_FossilManiacsTunnel_OnLoad: end Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass:: - setmetatile 6, 1, METATILE_Fallarbor_RedRockWall, 1 - setmetatile 6, 2, METATILE_Fallarbor_RedRockWall, 1 + setmetatile 6, 1, METATILE_Fallarbor_RedRockWall, TRUE + setmetatile 6, 2, METATILE_Fallarbor_RedRockWall, TRUE return Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn:: diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index 588fa17a0ab3..e28637592139 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -49,15 +49,15 @@ Route120_OnLoad: end Route120_EventScript_CloseAncientTomb:: - setmetatile 7, 54, METATILE_General_RockWall_RockBase, 1 - setmetatile 7, 55, METATILE_General_RockWall_SandBase, 1 + setmetatile 7, 54, METATILE_General_RockWall_RockBase, TRUE + setmetatile 7, 55, METATILE_General_RockWall_SandBase, TRUE return Route120_EventScript_SetBridgeClearMetatiles:: - setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, 0 - setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, 0 - setmetatile 12, 17, METATILE_General_ReflectiveWater, 0 - setmetatile 13, 17, METATILE_General_ReflectiveWater, 0 + setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, FALSE + setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, FALSE + setmetatile 12, 17, METATILE_General_ReflectiveWater, FALSE + setmetatile 13, 17, METATILE_General_ReflectiveWater, FALSE return Route120_EventScript_SetBridgeKecleonMovement:: @@ -253,10 +253,10 @@ Route120_EventScript_StevenGiveDeconScope:: delay 15 removeobject LOCALID_STEVEN waitfieldeffect FLDEFF_NPCFLY_OUT - setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, 0 - setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, 0 - setmetatile 12, 17, METATILE_General_ReflectiveWater, 0 - setmetatile 13, 17, METATILE_General_ReflectiveWater, 0 + setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, FALSE + setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, FALSE + setmetatile 12, 17, METATILE_General_ReflectiveWater, FALSE + setmetatile 13, 17, METATILE_General_ReflectiveWater, FALSE special DrawWholeMapView release end diff --git a/data/maps/SealedChamber_OuterRoom/scripts.inc b/data/maps/SealedChamber_OuterRoom/scripts.inc index 0a8c3aa4aff6..bf02c7fe3762 100644 --- a/data/maps/SealedChamber_OuterRoom/scripts.inc +++ b/data/maps/SealedChamber_OuterRoom/scripts.inc @@ -18,12 +18,12 @@ SealedChamber_OuterRoom_OnLoad: end SealedChamber_OuterRoom_EventScript_CloseInnerRoomEntrance:: - setmetatile 9, 1, METATILE_Cave_EntranceCover, 1 - setmetatile 10, 1, METATILE_Cave_EntranceCover, 1 - setmetatile 11, 1, METATILE_Cave_EntranceCover, 1 - setmetatile 9, 2, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 10, 2, METATILE_Cave_SealedChamberBraille_Mid, 1 - setmetatile 11, 2, METATILE_Cave_SealedChamberBraille_Mid, 1 + setmetatile 9, 1, METATILE_Cave_EntranceCover, TRUE + setmetatile 10, 1, METATILE_Cave_EntranceCover, TRUE + setmetatile 11, 1, METATILE_Cave_EntranceCover, TRUE + setmetatile 9, 2, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 10, 2, METATILE_Cave_SealedChamberBraille_Mid, TRUE + setmetatile 11, 2, METATILE_Cave_SealedChamberBraille_Mid, TRUE return SealedChamber_OuterRoom_EventScript_BrailleABC:: diff --git a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc index 9692d2f6944f..37b7beb041dc 100644 --- a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc @@ -22,38 +22,38 @@ ShoalCave_LowTideInnerRoom_OnLoad: ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 - setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Large, 1 + setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Large, TRUE goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2 end ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles2:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 - setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Large, 1 + setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Large, TRUE goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3 end ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles3:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4 - setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Large, 1 + setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Large, TRUE goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4 end ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles4:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5 - setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Large, 1 + setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Large, TRUE goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5 end ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles5:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6 - setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Large, 1 + setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Large, TRUE goto ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6 end ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatiles6:: goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatilesEnd - setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Large, 1 + setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Large, TRUE return ShoalCave_LowTideInnerRoom_EventScript_SetShoalItemMetatilesEnd:: @@ -65,7 +65,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell1:: giveitem ITEM_SHOAL_SHELL compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Small, 0 + setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_1 releaseall @@ -82,7 +82,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell2:: giveitem ITEM_SHOAL_SHELL compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Small, 0 + setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_2 releaseall @@ -94,7 +94,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell3:: giveitem ITEM_SHOAL_SHELL compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Small, 0 + setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_3 releaseall @@ -106,7 +106,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell4:: giveitem ITEM_SHOAL_SHELL compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Small, 0 + setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_4 releaseall @@ -118,7 +118,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt1:: giveitem ITEM_SHOAL_SALT compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Small, 0 + setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_1 releaseall @@ -135,7 +135,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt2:: giveitem ITEM_SHOAL_SALT compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Small, 0 + setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_2 releaseall diff --git a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc index d7937998ee74..15dcd326db69 100644 --- a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc @@ -8,7 +8,7 @@ ShoalCave_LowTideLowerRoom_OnLoad: ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatilesEnd - setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Large, 1 + setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Large, TRUE return ShoalCave_LowTideLowerRoom_EventScript_SetShoalItemMetatilesEnd:: @@ -20,7 +20,7 @@ ShoalCave_LowTideLowerRoom_EventScript_ShoalSalt4:: giveitem ITEM_SHOAL_SALT compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Small, 0 + setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_4 releaseall diff --git a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc index a778a18e11b6..f1a5b030b396 100644 --- a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc @@ -8,7 +8,7 @@ ShoalCave_LowTideStairsRoom_OnLoad: ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatiles:: goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatilesEnd - setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Large, 1 + setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Large, TRUE return ShoalCave_LowTideStairsRoom_EventScript_SetShoalItemMetatilesEnd:: @@ -20,7 +20,7 @@ ShoalCave_LowTideStairsRoom_EventScript_ShoalSalt3:: giveitem ITEM_SHOAL_SALT compare VAR_RESULT, FALSE goto_if_eq Common_EventScript_ShowBagIsFull - setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Small, 0 + setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_3 releaseall diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc index 9ffcd2de73b7..89e71a1ce9d6 100644 --- a/data/maps/SkyPillar_Outside/scripts.inc +++ b/data/maps/SkyPillar_Outside/scripts.inc @@ -26,8 +26,8 @@ SkyPillar_Outside_OnLoad: end SkyPillar_Outside_EventScript_OpenDoor:: - setmetatile 14, 4, METATILE_Pacifidlog_SkyPillar_DoorOpen_Top, 0 - setmetatile 14, 5, METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom, 0 + setmetatile 14, 4, METATILE_Pacifidlog_SkyPillar_DoorOpen_Top, FALSE + setmetatile 14, 5, METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom, FALSE return SkyPillar_Outside_OnFrame: diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index 0a2d4b44752a..6ef5b7790e09 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -34,19 +34,19 @@ SootopolisCity_EventScript_LegendariesNotArrived:: end SootopolisCity_EventScript_LockHouseDoors:: - setmetatile 9, 6, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 9, 17, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 9, 26, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 44, 17, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 8, 35, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 53, 28, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 45, 6, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 48, 25, METATILE_Sootopolis_Door_Closed, 1 - setmetatile 51, 36, METATILE_Sootopolis_Door_Closed, 1 + setmetatile 9, 6, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 9, 17, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 9, 26, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 44, 17, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 8, 35, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 53, 28, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 45, 6, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 48, 25, METATILE_Sootopolis_Door_Closed, TRUE + setmetatile 51, 36, METATILE_Sootopolis_Door_Closed, TRUE return SootopolisCity_EventScript_LockGymDoor:: - setmetatile 31, 32, METATILE_Sootopolis_GymDoor_Closed, 1 + setmetatile 31, 32, METATILE_Sootopolis_GymDoor_Closed, TRUE return SootopolisCity_OnTransition: @@ -623,30 +623,30 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: end SootopolisCity_EventScript_SetRoughWater:: - setmetatile 27, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 28, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 29, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 30, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 27, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 28, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 29, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 30, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 27, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 28, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 29, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 30, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 32, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 33, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 34, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 35, 43, METATILE_Sootopolis_RoughWater, 0 - setmetatile 32, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 33, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 34, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 35, 44, METATILE_Sootopolis_RoughWater, 0 - setmetatile 32, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 33, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 34, 45, METATILE_Sootopolis_RoughWater, 0 - setmetatile 35, 45, METATILE_Sootopolis_RoughWater, 0 + setmetatile 27, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 28, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 29, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 30, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 27, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 28, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 29, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 30, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 27, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 28, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 29, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 30, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 32, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 33, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 34, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 35, 43, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 32, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 33, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 34, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 35, 44, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 32, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 33, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 34, 45, METATILE_Sootopolis_RoughWater, FALSE + setmetatile 35, 45, METATILE_Sootopolis_RoughWater, FALSE return SootopolisCity_Movement_RayquazaFlyOff: diff --git a/data/maps/SootopolisCity_Gym_1F/scripts.inc b/data/maps/SootopolisCity_Gym_1F/scripts.inc index b20cf788872f..4a21dcdcdbd4 100644 --- a/data/maps/SootopolisCity_Gym_1F/scripts.inc +++ b/data/maps/SootopolisCity_Gym_1F/scripts.inc @@ -25,14 +25,14 @@ SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstStairs compare VAR_ICE_STEP_COUNT, 67 goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs - setmetatile 8, 4, METATILE_SootopolisGym_Stairs, 0 - setmetatile 8, 5, METATILE_SootopolisGym_Stairs, 0 + setmetatile 8, 4, METATILE_SootopolisGym_Stairs, FALSE + setmetatile 8, 5, METATILE_SootopolisGym_Stairs, FALSE SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs:: - setmetatile 8, 10, METATILE_SootopolisGym_Stairs, 0 - setmetatile 8, 11, METATILE_SootopolisGym_Stairs, 0 + setmetatile 8, 10, METATILE_SootopolisGym_Stairs, FALSE + setmetatile 8, 11, METATILE_SootopolisGym_Stairs, FALSE SootopolisCity_Gym_1F_EventScript_OpenFirstStairs:: - setmetatile 8, 15, METATILE_SootopolisGym_Stairs, 0 - setmetatile 8, 16, METATILE_SootopolisGym_Stairs, 0 + setmetatile 8, 15, METATILE_SootopolisGym_Stairs, FALSE + setmetatile 8, 16, METATILE_SootopolisGym_Stairs, FALSE SootopolisCity_Gym_1F_EventScript_StopCheckingStairs:: return diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index af4a4c12352e..4c76ccb52676 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -53,7 +53,7 @@ TrainerHill_Entrance_OnLoad: end TrainerHill_Entrance_EventScript_OpenCounterDoor:: - setmetatile 17, 10, METATILE_TrainerHill_GreenFloorTile, 0 + setmetatile 17, 10, METATILE_TrainerHill_GreenFloorTile, FALSE return TrainerHill_Entrance_OnFrame: @@ -67,7 +67,7 @@ TrainerHill_Entrance_EventScript_ExitElevator:: lockall applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerExitElevator waitmovement 0 - setmetatile 17, 10, METATILE_TrainerHill_CounterDoor, 1 + setmetatile 17, 10, METATILE_TrainerHill_CounterDoor, TRUE special DrawWholeMapView playse SE_CLICK waitse diff --git a/data/maps/Underwater_SeafloorCavern/scripts.inc b/data/maps/Underwater_SeafloorCavern/scripts.inc index c4931c1ad006..7f1231feffe9 100644 --- a/data/maps/Underwater_SeafloorCavern/scripts.inc +++ b/data/maps/Underwater_SeafloorCavern/scripts.inc @@ -18,18 +18,18 @@ Underwater_SeafloorCavern_OnLoad: end Underwater_SeafloorCavern_EventScript_SetSubmarineGoneMetatiles:: - setmetatile 5, 3, METATILE_Underwater_RockWall, 1 - setmetatile 6, 3, METATILE_Underwater_RockWall, 1 - setmetatile 7, 3, METATILE_Underwater_RockWall, 1 - setmetatile 8, 3, METATILE_Underwater_RockWall, 1 - setmetatile 5, 4, METATILE_Underwater_FloorShadow, 0 - setmetatile 6, 4, METATILE_Underwater_FloorShadow, 0 - setmetatile 7, 4, METATILE_Underwater_FloorShadow, 0 - setmetatile 8, 4, METATILE_Underwater_FloorShadow, 0 - setmetatile 5, 5, METATILE_Underwater_FloorShadow, 0 - setmetatile 6, 5, METATILE_Underwater_FloorShadow, 0 - setmetatile 7, 5, METATILE_Underwater_FloorShadow, 0 - setmetatile 8, 5, METATILE_Underwater_FloorShadow, 0 + setmetatile 5, 3, METATILE_Underwater_RockWall, TRUE + setmetatile 6, 3, METATILE_Underwater_RockWall, TRUE + setmetatile 7, 3, METATILE_Underwater_RockWall, TRUE + setmetatile 8, 3, METATILE_Underwater_RockWall, TRUE + setmetatile 5, 4, METATILE_Underwater_FloorShadow, FALSE + setmetatile 6, 4, METATILE_Underwater_FloorShadow, FALSE + setmetatile 7, 4, METATILE_Underwater_FloorShadow, FALSE + setmetatile 8, 4, METATILE_Underwater_FloorShadow, FALSE + setmetatile 5, 5, METATILE_Underwater_FloorShadow, FALSE + setmetatile 6, 5, METATILE_Underwater_FloorShadow, FALSE + setmetatile 7, 5, METATILE_Underwater_FloorShadow, FALSE + setmetatile 8, 5, METATILE_Underwater_FloorShadow, FALSE return Underwater_SeafloorCavern_OnResume: diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 322ac0bac186..f3afb2e4311f 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -153,11 +153,11 @@ gScriptCmdTable:: .4byte ScrCmd_getpokenewsactive @ 0x96 .4byte ScrCmd_fadescreen @ 0x97 .4byte ScrCmd_fadescreenspeed @ 0x98 - .4byte ScrCmd_setflashradius @ 0x99 + .4byte ScrCmd_setflashlevel @ 0x99 .4byte ScrCmd_animateflash @ 0x9a .4byte ScrCmd_messageautoscroll @ 0x9b .4byte ScrCmd_dofieldeffect @ 0x9c - .4byte ScrCmd_setfieldeffectarg @ 0x9d + .4byte ScrCmd_setfieldeffectargument @ 0x9d .4byte ScrCmd_waitfieldeffect @ 0x9e .4byte ScrCmd_setrespawn @ 0x9f .4byte ScrCmd_checkplayergender @ 0xa0 diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc index bc4a867e3372..c38982da8ff8 100644 --- a/data/scripts/abnormal_weather.inc +++ b/data/scripts/abnormal_weather.inc @@ -1,161 +1,161 @@ AbnormalWeather_EventScript_PlaceTilesRoute114North:: - setmetatile 7, 3, METATILE_Fallarbor_RedCaveEntrance_Top, 1 - setmetatile 7, 4, METATILE_Fallarbor_RedCaveEntrance_Bottom, 0 + setmetatile 7, 3, METATILE_Fallarbor_RedCaveEntrance_Top, TRUE + setmetatile 7, 4, METATILE_Fallarbor_RedCaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute114South:: - setmetatile 6, 45, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 - setmetatile 6, 46, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 + setmetatile 6, 45, METATILE_Fallarbor_BrownCaveEntrance_Top, TRUE + setmetatile 6, 46, METATILE_Fallarbor_BrownCaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute115West:: - setmetatile 21, 5, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 - setmetatile 21, 6, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 + setmetatile 21, 5, METATILE_Fallarbor_BrownCaveEntrance_Top, TRUE + setmetatile 21, 6, METATILE_Fallarbor_BrownCaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute115East:: - setmetatile 36, 9, METATILE_Fallarbor_BrownCaveEntrance_Top, 1 - setmetatile 36, 10, METATILE_Fallarbor_BrownCaveEntrance_Bottom, 0 + setmetatile 36, 9, METATILE_Fallarbor_BrownCaveEntrance_Top, TRUE + setmetatile 36, 10, METATILE_Fallarbor_BrownCaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute116North:: - setmetatile 59, 12, METATILE_General_CaveEntrance_Top, 1 - setmetatile 59, 13, METATILE_General_CaveEntrance_Bottom, 0 + setmetatile 59, 12, METATILE_General_CaveEntrance_Top, TRUE + setmetatile 59, 13, METATILE_General_CaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute116South:: - setmetatile 79, 5, METATILE_General_CaveEntrance_Top, 1 - setmetatile 79, 6, METATILE_General_CaveEntrance_Bottom, 0 + setmetatile 79, 5, METATILE_General_CaveEntrance_Top, TRUE + setmetatile 79, 6, METATILE_General_CaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute118East:: - setmetatile 42, 5, METATILE_General_CaveEntrance_Top, 1 - setmetatile 42, 6, METATILE_General_CaveEntrance_Bottom, 0 + setmetatile 42, 5, METATILE_General_CaveEntrance_Top, TRUE + setmetatile 42, 6, METATILE_General_CaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute118West:: - setmetatile 9, 5, METATILE_General_CaveEntrance_Top, 1 - setmetatile 9, 6, METATILE_General_CaveEntrance_Bottom, 0 + setmetatile 9, 5, METATILE_General_CaveEntrance_Top, TRUE + setmetatile 9, 6, METATILE_General_CaveEntrance_Bottom, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute105North:: - setmetatile 10, 28, METATILE_General_RoughWater, 0 - setmetatile 11, 28, METATILE_General_RoughWater, 0 - setmetatile 9, 29, METATILE_General_RoughWater, 0 - setmetatile 10, 29, METATILE_General_RoughDeepWater, 0 - setmetatile 11, 29, METATILE_General_RoughDeepWater, 0 - setmetatile 12, 29, METATILE_General_RoughWater, 0 - setmetatile 9, 30, METATILE_General_RoughWater, 0 - setmetatile 10, 30, METATILE_General_RoughDeepWater, 0 - setmetatile 11, 30, METATILE_General_RoughDeepWater, 0 - setmetatile 12, 30, METATILE_General_RoughWater, 0 - setmetatile 10, 31, METATILE_General_RoughWater, 0 - setmetatile 11, 31, METATILE_General_RoughWater, 0 + setmetatile 10, 28, METATILE_General_RoughWater, FALSE + setmetatile 11, 28, METATILE_General_RoughWater, FALSE + setmetatile 9, 29, METATILE_General_RoughWater, FALSE + setmetatile 10, 29, METATILE_General_RoughDeepWater, FALSE + setmetatile 11, 29, METATILE_General_RoughDeepWater, FALSE + setmetatile 12, 29, METATILE_General_RoughWater, FALSE + setmetatile 9, 30, METATILE_General_RoughWater, FALSE + setmetatile 10, 30, METATILE_General_RoughDeepWater, FALSE + setmetatile 11, 30, METATILE_General_RoughDeepWater, FALSE + setmetatile 12, 30, METATILE_General_RoughWater, FALSE + setmetatile 10, 31, METATILE_General_RoughWater, FALSE + setmetatile 11, 31, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute105South:: - setmetatile 20, 53, METATILE_General_RoughWater, 0 - setmetatile 21, 53, METATILE_General_RoughWater, 0 - setmetatile 19, 54, METATILE_General_RoughWater, 0 - setmetatile 20, 54, METATILE_General_RoughDeepWater, 0 - setmetatile 21, 54, METATILE_General_RoughDeepWater, 0 - setmetatile 22, 54, METATILE_General_RoughWater, 0 - setmetatile 19, 55, METATILE_General_RoughWater, 0 - setmetatile 20, 55, METATILE_General_RoughDeepWater, 0 - setmetatile 21, 55, METATILE_General_RoughDeepWater, 0 - setmetatile 22, 55, METATILE_General_RoughWater, 0 - setmetatile 20, 56, METATILE_General_RoughWater, 0 - setmetatile 21, 56, METATILE_General_RoughWater, 0 + setmetatile 20, 53, METATILE_General_RoughWater, FALSE + setmetatile 21, 53, METATILE_General_RoughWater, FALSE + setmetatile 19, 54, METATILE_General_RoughWater, FALSE + setmetatile 20, 54, METATILE_General_RoughDeepWater, FALSE + setmetatile 21, 54, METATILE_General_RoughDeepWater, FALSE + setmetatile 22, 54, METATILE_General_RoughWater, FALSE + setmetatile 19, 55, METATILE_General_RoughWater, FALSE + setmetatile 20, 55, METATILE_General_RoughDeepWater, FALSE + setmetatile 21, 55, METATILE_General_RoughDeepWater, FALSE + setmetatile 22, 55, METATILE_General_RoughWater, FALSE + setmetatile 20, 56, METATILE_General_RoughWater, FALSE + setmetatile 21, 56, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute125West:: - setmetatile 8, 16, METATILE_General_RoughWater, 0 - setmetatile 9, 16, METATILE_General_RoughWater, 0 - setmetatile 7, 17, METATILE_General_RoughWater, 0 - setmetatile 8, 17, METATILE_General_RoughDeepWater, 0 - setmetatile 9, 17, METATILE_General_RoughDeepWater, 0 - setmetatile 10, 17, METATILE_General_RoughWater, 0 - setmetatile 7, 18, METATILE_General_RoughWater, 0 - setmetatile 8, 18, METATILE_General_RoughDeepWater, 0 - setmetatile 9, 18, METATILE_General_RoughDeepWater, 0 - setmetatile 10, 18, METATILE_General_RoughWater, 0 - setmetatile 8, 19, METATILE_General_RoughWater, 0 - setmetatile 9, 19, METATILE_General_RoughWater, 0 + setmetatile 8, 16, METATILE_General_RoughWater, FALSE + setmetatile 9, 16, METATILE_General_RoughWater, FALSE + setmetatile 7, 17, METATILE_General_RoughWater, FALSE + setmetatile 8, 17, METATILE_General_RoughDeepWater, FALSE + setmetatile 9, 17, METATILE_General_RoughDeepWater, FALSE + setmetatile 10, 17, METATILE_General_RoughWater, FALSE + setmetatile 7, 18, METATILE_General_RoughWater, FALSE + setmetatile 8, 18, METATILE_General_RoughDeepWater, FALSE + setmetatile 9, 18, METATILE_General_RoughDeepWater, FALSE + setmetatile 10, 18, METATILE_General_RoughWater, FALSE + setmetatile 8, 19, METATILE_General_RoughWater, FALSE + setmetatile 9, 19, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute125East:: - setmetatile 53, 18, METATILE_General_RoughWater, 0 - setmetatile 54, 18, METATILE_General_RoughWater, 0 - setmetatile 52, 19, METATILE_General_RoughWater, 0 - setmetatile 53, 19, METATILE_General_RoughDeepWater, 0 - setmetatile 54, 19, METATILE_General_RoughDeepWater, 0 - setmetatile 55, 19, METATILE_General_RoughWater, 0 - setmetatile 52, 20, METATILE_General_RoughWater, 0 - setmetatile 53, 20, METATILE_General_RoughDeepWater, 0 - setmetatile 54, 20, METATILE_General_RoughDeepWater, 0 - setmetatile 55, 20, METATILE_General_RoughWater, 0 - setmetatile 53, 21, METATILE_General_RoughWater, 0 - setmetatile 54, 21, METATILE_General_RoughWater, 0 + setmetatile 53, 18, METATILE_General_RoughWater, FALSE + setmetatile 54, 18, METATILE_General_RoughWater, FALSE + setmetatile 52, 19, METATILE_General_RoughWater, FALSE + setmetatile 53, 19, METATILE_General_RoughDeepWater, FALSE + setmetatile 54, 19, METATILE_General_RoughDeepWater, FALSE + setmetatile 55, 19, METATILE_General_RoughWater, FALSE + setmetatile 52, 20, METATILE_General_RoughWater, FALSE + setmetatile 53, 20, METATILE_General_RoughDeepWater, FALSE + setmetatile 54, 20, METATILE_General_RoughDeepWater, FALSE + setmetatile 55, 20, METATILE_General_RoughWater, FALSE + setmetatile 53, 21, METATILE_General_RoughWater, FALSE + setmetatile 54, 21, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute127North:: - setmetatile 57, 9, METATILE_General_RoughWater, 0 - setmetatile 58, 9, METATILE_General_RoughWater, 0 - setmetatile 56, 10, METATILE_General_RoughWater, 0 - setmetatile 57, 10, METATILE_General_RoughDeepWater, 0 - setmetatile 58, 10, METATILE_General_RoughDeepWater, 0 - setmetatile 59, 10, METATILE_General_RoughWater, 0 - setmetatile 56, 11, METATILE_General_RoughWater, 0 - setmetatile 57, 11, METATILE_General_RoughDeepWater, 0 - setmetatile 58, 11, METATILE_General_RoughDeepWater, 0 - setmetatile 59, 11, METATILE_General_RoughWater, 0 - setmetatile 57, 12, METATILE_General_RoughWater, 0 - setmetatile 58, 12, METATILE_General_RoughWater, 0 + setmetatile 57, 9, METATILE_General_RoughWater, FALSE + setmetatile 58, 9, METATILE_General_RoughWater, FALSE + setmetatile 56, 10, METATILE_General_RoughWater, FALSE + setmetatile 57, 10, METATILE_General_RoughDeepWater, FALSE + setmetatile 58, 10, METATILE_General_RoughDeepWater, FALSE + setmetatile 59, 10, METATILE_General_RoughWater, FALSE + setmetatile 56, 11, METATILE_General_RoughWater, FALSE + setmetatile 57, 11, METATILE_General_RoughDeepWater, FALSE + setmetatile 58, 11, METATILE_General_RoughDeepWater, FALSE + setmetatile 59, 11, METATILE_General_RoughWater, FALSE + setmetatile 57, 12, METATILE_General_RoughWater, FALSE + setmetatile 58, 12, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute127South:: - setmetatile 61, 30, METATILE_General_RoughWater, 0 - setmetatile 62, 30, METATILE_General_RoughWater, 0 - setmetatile 60, 31, METATILE_General_RoughWater, 0 - setmetatile 61, 31, METATILE_General_RoughDeepWater, 0 - setmetatile 62, 31, METATILE_General_RoughDeepWater, 0 - setmetatile 63, 31, METATILE_General_RoughWater, 0 - setmetatile 60, 32, METATILE_General_RoughWater, 0 - setmetatile 61, 32, METATILE_General_RoughDeepWater, 0 - setmetatile 62, 32, METATILE_General_RoughDeepWater, 0 - setmetatile 63, 32, METATILE_General_RoughWater, 0 - setmetatile 61, 33, METATILE_General_RoughWater, 0 - setmetatile 62, 33, METATILE_General_RoughWater, 0 + setmetatile 61, 30, METATILE_General_RoughWater, FALSE + setmetatile 62, 30, METATILE_General_RoughWater, FALSE + setmetatile 60, 31, METATILE_General_RoughWater, FALSE + setmetatile 61, 31, METATILE_General_RoughDeepWater, FALSE + setmetatile 62, 31, METATILE_General_RoughDeepWater, FALSE + setmetatile 63, 31, METATILE_General_RoughWater, FALSE + setmetatile 60, 32, METATILE_General_RoughWater, FALSE + setmetatile 61, 32, METATILE_General_RoughDeepWater, FALSE + setmetatile 62, 32, METATILE_General_RoughDeepWater, FALSE + setmetatile 63, 32, METATILE_General_RoughWater, FALSE + setmetatile 61, 33, METATILE_General_RoughWater, FALSE + setmetatile 62, 33, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute129West:: - setmetatile 16, 14, METATILE_General_RoughWater, 0 - setmetatile 17, 14, METATILE_General_RoughWater, 0 - setmetatile 15, 15, METATILE_General_RoughWater, 0 - setmetatile 16, 15, METATILE_General_RoughDeepWater, 0 - setmetatile 17, 15, METATILE_General_RoughDeepWater, 0 - setmetatile 18, 15, METATILE_General_RoughWater, 0 - setmetatile 15, 16, METATILE_General_RoughWater, 0 - setmetatile 16, 16, METATILE_General_RoughDeepWater, 0 - setmetatile 17, 16, METATILE_General_RoughDeepWater, 0 - setmetatile 18, 16, METATILE_General_RoughWater, 0 - setmetatile 16, 17, METATILE_General_RoughWater, 0 - setmetatile 17, 17, METATILE_General_RoughWater, 0 + setmetatile 16, 14, METATILE_General_RoughWater, FALSE + setmetatile 17, 14, METATILE_General_RoughWater, FALSE + setmetatile 15, 15, METATILE_General_RoughWater, FALSE + setmetatile 16, 15, METATILE_General_RoughDeepWater, FALSE + setmetatile 17, 15, METATILE_General_RoughDeepWater, FALSE + setmetatile 18, 15, METATILE_General_RoughWater, FALSE + setmetatile 15, 16, METATILE_General_RoughWater, FALSE + setmetatile 16, 16, METATILE_General_RoughDeepWater, FALSE + setmetatile 17, 16, METATILE_General_RoughDeepWater, FALSE + setmetatile 18, 16, METATILE_General_RoughWater, FALSE + setmetatile 16, 17, METATILE_General_RoughWater, FALSE + setmetatile 17, 17, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_PlaceTilesRoute129East:: - setmetatile 42, 19, METATILE_General_RoughWater, 0 - setmetatile 43, 19, METATILE_General_RoughWater, 0 - setmetatile 41, 20, METATILE_General_RoughWater, 0 - setmetatile 42, 20, METATILE_General_RoughDeepWater, 0 - setmetatile 43, 20, METATILE_General_RoughDeepWater, 0 - setmetatile 44, 20, METATILE_General_RoughWater, 0 - setmetatile 41, 21, METATILE_General_RoughWater, 0 - setmetatile 42, 21, METATILE_General_RoughDeepWater, 0 - setmetatile 43, 21, METATILE_General_RoughDeepWater, 0 - setmetatile 44, 21, METATILE_General_RoughWater, 0 - setmetatile 42, 22, METATILE_General_RoughWater, 0 - setmetatile 43, 22, METATILE_General_RoughWater, 0 + setmetatile 42, 19, METATILE_General_RoughWater, FALSE + setmetatile 43, 19, METATILE_General_RoughWater, FALSE + setmetatile 41, 20, METATILE_General_RoughWater, FALSE + setmetatile 42, 20, METATILE_General_RoughDeepWater, FALSE + setmetatile 43, 20, METATILE_General_RoughDeepWater, FALSE + setmetatile 44, 20, METATILE_General_RoughWater, FALSE + setmetatile 41, 21, METATILE_General_RoughWater, FALSE + setmetatile 42, 21, METATILE_General_RoughDeepWater, FALSE + setmetatile 43, 21, METATILE_General_RoughDeepWater, FALSE + setmetatile 44, 21, METATILE_General_RoughWater, FALSE + setmetatile 42, 22, METATILE_General_RoughWater, FALSE + setmetatile 43, 22, METATILE_General_RoughWater, FALSE return AbnormalWeather_EventScript_HideMapNamePopup:: @@ -222,163 +222,163 @@ AbnormalWeather_EventScript_CleanupMapTiles:: return AbnormalWeather_EventScript_CleanupRoute114North:: - setmetatile 7, 3, METATILE_Fallarbor_RedRockWall, 1 - setmetatile 7, 4, METATILE_Fallarbor_RedRockWall, 1 + setmetatile 7, 3, METATILE_Fallarbor_RedRockWall, TRUE + setmetatile 7, 4, METATILE_Fallarbor_RedRockWall, TRUE return AbnormalWeather_EventScript_CleanupRoute114South:: - setmetatile 6, 45, METATILE_Fallarbor_BrownRockWall, 1 - setmetatile 6, 46, METATILE_Fallarbor_BrownRockWall, 1 + setmetatile 6, 45, METATILE_Fallarbor_BrownRockWall, TRUE + setmetatile 6, 46, METATILE_Fallarbor_BrownRockWall, TRUE return AbnormalWeather_EventScript_CleanupRoute115West:: - setmetatile 21, 5, METATILE_Fallarbor_BrownRockWall, 1 - setmetatile 21, 6, METATILE_Fallarbor_BrownRockWall, 1 + setmetatile 21, 5, METATILE_Fallarbor_BrownRockWall, TRUE + setmetatile 21, 6, METATILE_Fallarbor_BrownRockWall, TRUE return AbnormalWeather_EventScript_CleanupRoute115East:: - setmetatile 36, 9, METATILE_Fallarbor_BrownRockWall, 1 - setmetatile 36, 10, METATILE_Fallarbor_BrownRockWall, 1 + setmetatile 36, 9, METATILE_Fallarbor_BrownRockWall, TRUE + setmetatile 36, 10, METATILE_Fallarbor_BrownRockWall, TRUE return AbnormalWeather_EventScript_CleanupRoute116North:: - setmetatile 59, 12, METATILE_General_RockWall_RockBase, 1 - setmetatile 59, 13, METATILE_General_RockWall_RockBase, 1 + setmetatile 59, 12, METATILE_General_RockWall_RockBase, TRUE + setmetatile 59, 13, METATILE_General_RockWall_RockBase, TRUE return AbnormalWeather_EventScript_CleanupRoute116South:: - setmetatile 79, 5, METATILE_General_RockWall_RockBase, 1 - setmetatile 79, 6, METATILE_General_RockWall_RockBase, 1 + setmetatile 79, 5, METATILE_General_RockWall_RockBase, TRUE + setmetatile 79, 6, METATILE_General_RockWall_RockBase, TRUE return AbnormalWeather_EventScript_CleanupRoute118East:: - setmetatile 42, 5, METATILE_General_RockWall_RockBase, 1 - setmetatile 42, 6, METATILE_General_RockWall_GrassBase, 1 + setmetatile 42, 5, METATILE_General_RockWall_RockBase, TRUE + setmetatile 42, 6, METATILE_General_RockWall_GrassBase, TRUE return AbnormalWeather_EventScript_CleanupRoute118West:: - setmetatile 9, 5, METATILE_General_RockWall_RockBase, 1 - setmetatile 9, 6, METATILE_General_RockWall_GrassBase, 1 + setmetatile 9, 5, METATILE_General_RockWall_RockBase, TRUE + setmetatile 9, 6, METATILE_General_RockWall_GrassBase, TRUE return AbnormalWeather_EventScript_CleanupRoute105North:: - setmetatile 10, 28, METATILE_General_CalmWater, 0 - setmetatile 11, 28, METATILE_General_CalmWater, 0 - setmetatile 9, 29, METATILE_General_CalmWater, 0 - setmetatile 10, 29, METATILE_General_CalmWater, 0 - setmetatile 11, 29, METATILE_General_CalmWater, 0 - setmetatile 12, 29, METATILE_General_CalmWater, 0 - setmetatile 9, 30, METATILE_General_CalmWater, 0 - setmetatile 10, 30, METATILE_General_CalmWater, 0 - setmetatile 11, 30, METATILE_General_CalmWater, 0 - setmetatile 12, 30, METATILE_General_CalmWater, 0 - setmetatile 10, 31, METATILE_General_CalmWater, 0 - setmetatile 11, 31, METATILE_General_CalmWater, 0 + setmetatile 10, 28, METATILE_General_CalmWater, FALSE + setmetatile 11, 28, METATILE_General_CalmWater, FALSE + setmetatile 9, 29, METATILE_General_CalmWater, FALSE + setmetatile 10, 29, METATILE_General_CalmWater, FALSE + setmetatile 11, 29, METATILE_General_CalmWater, FALSE + setmetatile 12, 29, METATILE_General_CalmWater, FALSE + setmetatile 9, 30, METATILE_General_CalmWater, FALSE + setmetatile 10, 30, METATILE_General_CalmWater, FALSE + setmetatile 11, 30, METATILE_General_CalmWater, FALSE + setmetatile 12, 30, METATILE_General_CalmWater, FALSE + setmetatile 10, 31, METATILE_General_CalmWater, FALSE + setmetatile 11, 31, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute105South:: - setmetatile 20, 53, METATILE_General_CalmWater, 0 - setmetatile 21, 53, METATILE_General_CalmWater, 0 - setmetatile 19, 54, METATILE_General_CalmWater, 0 - setmetatile 20, 54, METATILE_General_CalmWater, 0 - setmetatile 21, 54, METATILE_General_CalmWater, 0 - setmetatile 22, 54, METATILE_General_CalmWater, 0 - setmetatile 19, 55, METATILE_General_CalmWater, 0 - setmetatile 20, 55, METATILE_General_CalmWater, 0 - setmetatile 21, 55, METATILE_General_CalmWater, 0 - setmetatile 22, 55, METATILE_General_CalmWater, 0 - setmetatile 20, 56, METATILE_General_CalmWater, 0 - setmetatile 21, 56, METATILE_General_CalmWater, 0 + setmetatile 20, 53, METATILE_General_CalmWater, FALSE + setmetatile 21, 53, METATILE_General_CalmWater, FALSE + setmetatile 19, 54, METATILE_General_CalmWater, FALSE + setmetatile 20, 54, METATILE_General_CalmWater, FALSE + setmetatile 21, 54, METATILE_General_CalmWater, FALSE + setmetatile 22, 54, METATILE_General_CalmWater, FALSE + setmetatile 19, 55, METATILE_General_CalmWater, FALSE + setmetatile 20, 55, METATILE_General_CalmWater, FALSE + setmetatile 21, 55, METATILE_General_CalmWater, FALSE + setmetatile 22, 55, METATILE_General_CalmWater, FALSE + setmetatile 20, 56, METATILE_General_CalmWater, FALSE + setmetatile 21, 56, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute125West:: - setmetatile 8, 16, METATILE_General_CalmWater, 0 - setmetatile 9, 16, METATILE_General_CalmWater, 0 - setmetatile 7, 17, METATILE_General_CalmWater, 0 - setmetatile 8, 17, METATILE_General_CalmWater, 0 - setmetatile 9, 17, METATILE_General_CalmWater, 0 - setmetatile 10, 17, METATILE_General_CalmWater, 0 - setmetatile 7, 18, METATILE_General_CalmWater, 0 - setmetatile 8, 18, METATILE_General_CalmWater, 0 - setmetatile 9, 18, METATILE_General_CalmWater, 0 - setmetatile 10, 18, METATILE_General_CalmWater, 0 - setmetatile 8, 19, METATILE_General_CalmWater, 0 - setmetatile 9, 19, METATILE_General_CalmWater, 0 + setmetatile 8, 16, METATILE_General_CalmWater, FALSE + setmetatile 9, 16, METATILE_General_CalmWater, FALSE + setmetatile 7, 17, METATILE_General_CalmWater, FALSE + setmetatile 8, 17, METATILE_General_CalmWater, FALSE + setmetatile 9, 17, METATILE_General_CalmWater, FALSE + setmetatile 10, 17, METATILE_General_CalmWater, FALSE + setmetatile 7, 18, METATILE_General_CalmWater, FALSE + setmetatile 8, 18, METATILE_General_CalmWater, FALSE + setmetatile 9, 18, METATILE_General_CalmWater, FALSE + setmetatile 10, 18, METATILE_General_CalmWater, FALSE + setmetatile 8, 19, METATILE_General_CalmWater, FALSE + setmetatile 9, 19, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute125East:: - setmetatile 53, 18, METATILE_General_CalmWater, 0 - setmetatile 54, 18, METATILE_General_CalmWater, 0 - setmetatile 52, 19, METATILE_General_CalmWater, 0 - setmetatile 53, 19, METATILE_General_CalmWater, 0 - setmetatile 54, 19, METATILE_General_CalmWater, 0 - setmetatile 55, 19, METATILE_General_CalmWater, 0 - setmetatile 52, 20, METATILE_General_CalmWater, 0 - setmetatile 53, 20, METATILE_General_CalmWater, 0 - setmetatile 54, 20, METATILE_General_CalmWater, 0 - setmetatile 55, 20, METATILE_General_CalmWater, 0 - setmetatile 53, 21, METATILE_General_CalmWater, 0 - setmetatile 54, 21, METATILE_General_CalmWater, 0 + setmetatile 53, 18, METATILE_General_CalmWater, FALSE + setmetatile 54, 18, METATILE_General_CalmWater, FALSE + setmetatile 52, 19, METATILE_General_CalmWater, FALSE + setmetatile 53, 19, METATILE_General_CalmWater, FALSE + setmetatile 54, 19, METATILE_General_CalmWater, FALSE + setmetatile 55, 19, METATILE_General_CalmWater, FALSE + setmetatile 52, 20, METATILE_General_CalmWater, FALSE + setmetatile 53, 20, METATILE_General_CalmWater, FALSE + setmetatile 54, 20, METATILE_General_CalmWater, FALSE + setmetatile 55, 20, METATILE_General_CalmWater, FALSE + setmetatile 53, 21, METATILE_General_CalmWater, FALSE + setmetatile 54, 21, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute127North:: - setmetatile 57, 9, METATILE_General_CalmWater, 0 - setmetatile 58, 9, METATILE_General_CalmWater, 0 - setmetatile 56, 10, METATILE_General_CalmWater, 0 - setmetatile 57, 10, METATILE_General_CalmWater, 0 - setmetatile 58, 10, METATILE_General_CalmWater, 0 - setmetatile 59, 10, METATILE_General_CalmWater, 0 - setmetatile 56, 11, METATILE_General_CalmWater, 0 - setmetatile 57, 11, METATILE_General_CalmWater, 0 - setmetatile 58, 11, METATILE_General_CalmWater, 0 - setmetatile 59, 11, METATILE_General_CalmWater, 0 - setmetatile 57, 12, METATILE_General_CalmWater, 0 - setmetatile 58, 12, METATILE_General_CalmWater, 0 + setmetatile 57, 9, METATILE_General_CalmWater, FALSE + setmetatile 58, 9, METATILE_General_CalmWater, FALSE + setmetatile 56, 10, METATILE_General_CalmWater, FALSE + setmetatile 57, 10, METATILE_General_CalmWater, FALSE + setmetatile 58, 10, METATILE_General_CalmWater, FALSE + setmetatile 59, 10, METATILE_General_CalmWater, FALSE + setmetatile 56, 11, METATILE_General_CalmWater, FALSE + setmetatile 57, 11, METATILE_General_CalmWater, FALSE + setmetatile 58, 11, METATILE_General_CalmWater, FALSE + setmetatile 59, 11, METATILE_General_CalmWater, FALSE + setmetatile 57, 12, METATILE_General_CalmWater, FALSE + setmetatile 58, 12, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute127South:: - setmetatile 61, 30, METATILE_General_CalmWater, 0 - setmetatile 62, 30, METATILE_General_CalmWater, 0 - setmetatile 60, 31, METATILE_General_CalmWater, 0 - setmetatile 61, 31, METATILE_General_CalmWater, 0 - setmetatile 62, 31, METATILE_General_CalmWater, 0 - setmetatile 63, 31, METATILE_General_CalmWater, 0 - setmetatile 60, 32, METATILE_General_CalmWater, 0 - setmetatile 61, 32, METATILE_General_CalmWater, 0 - setmetatile 62, 32, METATILE_General_CalmWater, 0 - setmetatile 63, 32, METATILE_General_CalmWater, 0 - setmetatile 61, 33, METATILE_General_CalmWater, 0 - setmetatile 62, 33, METATILE_General_CalmWater, 0 + setmetatile 61, 30, METATILE_General_CalmWater, FALSE + setmetatile 62, 30, METATILE_General_CalmWater, FALSE + setmetatile 60, 31, METATILE_General_CalmWater, FALSE + setmetatile 61, 31, METATILE_General_CalmWater, FALSE + setmetatile 62, 31, METATILE_General_CalmWater, FALSE + setmetatile 63, 31, METATILE_General_CalmWater, FALSE + setmetatile 60, 32, METATILE_General_CalmWater, FALSE + setmetatile 61, 32, METATILE_General_CalmWater, FALSE + setmetatile 62, 32, METATILE_General_CalmWater, FALSE + setmetatile 63, 32, METATILE_General_CalmWater, FALSE + setmetatile 61, 33, METATILE_General_CalmWater, FALSE + setmetatile 62, 33, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute129West:: - setmetatile 16, 14, METATILE_General_CalmWater, 0 - setmetatile 17, 14, METATILE_General_CalmWater, 0 - setmetatile 15, 15, METATILE_General_CalmWater, 0 - setmetatile 16, 15, METATILE_General_CalmWater, 0 - setmetatile 17, 15, METATILE_General_CalmWater, 0 - setmetatile 18, 15, METATILE_General_CalmWater, 0 - setmetatile 15, 16, METATILE_General_CalmWater, 0 - setmetatile 16, 16, METATILE_General_CalmWater, 0 - setmetatile 17, 16, METATILE_General_CalmWater, 0 - setmetatile 18, 16, METATILE_General_CalmWater, 0 - setmetatile 16, 17, METATILE_General_CalmWater, 0 - setmetatile 17, 17, METATILE_General_CalmWater, 0 + setmetatile 16, 14, METATILE_General_CalmWater, FALSE + setmetatile 17, 14, METATILE_General_CalmWater, FALSE + setmetatile 15, 15, METATILE_General_CalmWater, FALSE + setmetatile 16, 15, METATILE_General_CalmWater, FALSE + setmetatile 17, 15, METATILE_General_CalmWater, FALSE + setmetatile 18, 15, METATILE_General_CalmWater, FALSE + setmetatile 15, 16, METATILE_General_CalmWater, FALSE + setmetatile 16, 16, METATILE_General_CalmWater, FALSE + setmetatile 17, 16, METATILE_General_CalmWater, FALSE + setmetatile 18, 16, METATILE_General_CalmWater, FALSE + setmetatile 16, 17, METATILE_General_CalmWater, FALSE + setmetatile 17, 17, METATILE_General_CalmWater, FALSE return AbnormalWeather_EventScript_CleanupRoute129East:: - setmetatile 42, 19, METATILE_General_CalmWater, 0 - setmetatile 43, 19, METATILE_General_CalmWater, 0 - setmetatile 41, 20, METATILE_General_CalmWater, 0 - setmetatile 42, 20, METATILE_General_CalmWater, 0 - setmetatile 43, 20, METATILE_General_CalmWater, 0 - setmetatile 44, 20, METATILE_General_CalmWater, 0 - setmetatile 41, 21, METATILE_General_CalmWater, 0 - setmetatile 42, 21, METATILE_General_CalmWater, 0 - setmetatile 43, 21, METATILE_General_CalmWater, 0 - setmetatile 44, 21, METATILE_General_CalmWater, 0 - setmetatile 42, 22, METATILE_General_CalmWater, 0 - setmetatile 43, 22, METATILE_General_CalmWater, 0 + setmetatile 42, 19, METATILE_General_CalmWater, FALSE + setmetatile 43, 19, METATILE_General_CalmWater, FALSE + setmetatile 41, 20, METATILE_General_CalmWater, FALSE + setmetatile 42, 20, METATILE_General_CalmWater, FALSE + setmetatile 43, 20, METATILE_General_CalmWater, FALSE + setmetatile 44, 20, METATILE_General_CalmWater, FALSE + setmetatile 41, 21, METATILE_General_CalmWater, FALSE + setmetatile 42, 21, METATILE_General_CalmWater, FALSE + setmetatile 43, 21, METATILE_General_CalmWater, FALSE + setmetatile 44, 21, METATILE_General_CalmWater, FALSE + setmetatile 42, 22, METATILE_General_CalmWater, FALSE + setmetatile 43, 22, METATILE_General_CalmWater, FALSE return AbnormalWeather_Underwater_SetupEscapeWarp:: diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 714792fc6939..2022c5c8faf8 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -1320,33 +1320,33 @@ CableClub_EventScript_AdapterNotConnected:: end CableClub_EventScript_OpenUnionRoomBarrier:: - setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, 0 - setmetatile 5, 3, METATILE_PokemonCenter_Floor_Plain_Alt, 0 + setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, FALSE + setmetatile 5, 3, METATILE_PokemonCenter_Floor_Plain_Alt, FALSE return CableClub_EventScript_CloseUnionRoomBarrier:: - setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop, 1 - setmetatile 5, 3, METATILE_PokemonCenter_CounterBarrier, 1 + setmetatile 5, 2, METATILE_PokemonCenter_Floor_ShadowTop, TRUE + setmetatile 5, 3, METATILE_PokemonCenter_CounterBarrier, TRUE return CableClub_EventScript_OpenDirectCornerBarrier:: - setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, 0 - setmetatile 9, 3, METATILE_PokemonCenter_Floor_Plain_Alt, 0 + setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop_Alt, FALSE + setmetatile 9, 3, METATILE_PokemonCenter_Floor_Plain_Alt, FALSE return CableClub_EventScript_CloseDirectCornerBarrier:: - setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop, 1 - setmetatile 9, 3, METATILE_PokemonCenter_CounterBarrier, 1 + setmetatile 9, 2, METATILE_PokemonCenter_Floor_ShadowTop, TRUE + setmetatile 9, 3, METATILE_PokemonCenter_CounterBarrier, TRUE return EventScript_OpenMossdeepGameCornerBarrier:: - setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterOpen_Top, 0 - setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterOpen_Bottom, 0 + setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterOpen_Top, FALSE + setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterOpen_Bottom, FALSE return EventScript_CloseMossdeepGameCornerBarrier:: - setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterClosed_Top, 1 - setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterClosed_Bottom, 1 + setmetatile 5, 2, METATILE_MossdeepGameCorner_CounterClosed_Top, TRUE + setmetatile 5, 3, METATILE_MossdeepGameCorner_CounterClosed_Bottom, TRUE return CableClub_OnResume: diff --git a/data/scripts/elite_four.inc b/data/scripts/elite_four.inc index 0ae319061ab9..97d7f413149f 100644 --- a/data/scripts/elite_four.inc +++ b/data/scripts/elite_four.inc @@ -2,18 +2,18 @@ PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay32 waitmovement 0 playse SE_DOOR - setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, 0 - setmetatile 6, 2, METATILE_EliteFour_OpenDoor_Opening, 0 - setmetatile 0, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 1, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 2, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 3, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 4, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 8, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 9, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 10, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 11, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 12, 2, METATILE_EliteFour_LeftSpotlightOff, 1 + setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, FALSE + setmetatile 6, 2, METATILE_EliteFour_OpenDoor_Opening, FALSE + setmetatile 0, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 1, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 2, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 3, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 4, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 8, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 9, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 10, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 11, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 12, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE special DrawWholeMapView return @@ -21,42 +21,42 @@ PokemonLeague_EliteFour_EventScript_WalkInCloseDoor:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp6 waitmovement 0 playse SE_TRUCK_DOOR - setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 + setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE special DrawWholeMapView return @ Essentially unused, only necessary when re-entering an Elite Four room after defeating the member, which isnt normally possible PokemonLeague_EliteFour_EventScript_ResetAdvanceToNextRoom:: - setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, 0 - setmetatile 6, 2, METATILE_EliteFour_OpenDoor_Opening, 0 - setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 0, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 1, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 2, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 3, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 4, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 8, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 9, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 10, 2, METATILE_EliteFour_LeftSpotlightOff, 1 - setmetatile 11, 2, METATILE_EliteFour_RightSpotlightOff, 1 - setmetatile 12, 2, METATILE_EliteFour_LeftSpotlightOff, 1 + setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, FALSE + setmetatile 6, 2, METATILE_EliteFour_OpenDoor_Opening, FALSE + setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 0, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 1, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 2, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 3, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 4, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 8, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 9, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 10, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE + setmetatile 11, 2, METATILE_EliteFour_RightSpotlightOff, TRUE + setmetatile 12, 2, METATILE_EliteFour_LeftSpotlightOff, TRUE return PokemonLeague_EliteFour_EventScript_CloseDoor:: - setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, 1 - setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 - setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, 1 + setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 6, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 7, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE + setmetatile 5, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 6, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE + setmetatile 7, 13, METATILE_EliteFour_EntryDoor_ClosedBottom, TRUE return diff --git a/data/scripts/flash.inc b/data/scripts/flash.inc index a69975a16514..dbfec2314dc2 100644 --- a/data/scripts/flash.inc +++ b/data/scripts/flash.inc @@ -1,4 +1,4 @@ EventScript_UseFlash:: animateflash 1 - setflashradius 1 + setflashlevel 1 end diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h index 4e4725041a89..5a2e424785b3 100644 --- a/include/field_screen_effect.h +++ b/include/field_screen_effect.h @@ -33,7 +33,7 @@ void DoMossdeepGymWarp(void); void DoPortholeWarp(void); void DoCableClubWarp(void); void DoContestHallWarp(void); -void AnimateFlash(u8 flashLevel); +void AnimateFlash(u8 newFlashLevel); void WriteBattlePyramidViewScanlineEffectBuffer(void); void DoSpinEnterWarp(void); void DoSpinExitWarp(void); diff --git a/include/field_weather.h b/include/field_weather.h index 72a56ab6ec0d..1d8cfe422000 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -221,9 +221,9 @@ void Bubbles_Main(void); void Bubbles_InitAll(void); bool8 Bubbles_Finish(void); -u8 GetSav1Weather(void); -void SetSav1Weather(u32 weather); -void SetSav1WeatherFromCurrMapHeader(void); +u8 GetSavedWeather(void); +void SetSavedWeather(u32 weather); +void SetSavedWeatherFromCurrMapHeader(void); void SetWeather(u32 weather); void DoCurrentWeather(void); void UpdateWeatherPerDay(u16 increment); diff --git a/src/battle_setup.c b/src/battle_setup.c index 0e8d697ba2b7..f928cf3f94fb 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -686,7 +686,7 @@ u8 BattleSetup_GetTerrainId(void) } if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE113)) return BATTLE_TERRAIN_SAND; - if (GetSav1Weather() == WEATHER_SANDSTORM) + if (GetSavedWeather() == WEATHER_SANDSTORM) return BATTLE_TERRAIN_SAND; return BATTLE_TERRAIN_PLAIN; diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index b17617eff910..5a7351bf2587 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -35,7 +35,6 @@ #include "trainer_hill.h" #include "fldeff.h" -// This file's functions. static void Task_ExitNonAnimDoor(u8); static void Task_ExitNonDoor(u8); static void Task_DoContestHallWarp(u8); @@ -50,9 +49,9 @@ static void Task_EnableScriptAfterMusicFade(u8 taskId); // data[0] is used universally by tasks in this file as a state for switches #define tState data[0] -// const -static const u16 sFlashLevelPixelRadii[] = { 200, 72, 64, 56, 48, 40, 32, 24, 0 }; -const s32 gMaxFlashLevel = ARRAY_COUNT(sFlashLevelPixelRadii) - 1; +// Smaller flash level -> larger flash radius +static const u16 sFlashLevelToRadius[] = { 200, 72, 64, 56, 48, 40, 32, 24, 0 }; +const s32 gMaxFlashLevel = ARRAY_COUNT(sFlashLevelToRadius) - 1; const struct ScanlineEffectParams sFlashEffectParams = { @@ -971,14 +970,14 @@ static u8 StartUpdateOrbFlashEffect(s32 centerX, s32 centerY, s32 initialFlashRa #undef tFlashRadiusDelta #undef tClearScanlineEffect -// A higher flashLevel value is a smaller flash radius (more darkness). 0 is full brightness -void AnimateFlash(u8 flashLevel) +// A higher flash level is a smaller flash radius (more darkness). 0 is full brightness +void AnimateFlash(u8 newFlashLevel) { u8 curFlashLevel = GetFlashLevel(); bool8 fullBrightness = FALSE; - if (!flashLevel) + if (newFlashLevel == 0) fullBrightness = TRUE; - StartUpdateFlashLevelEffect(DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelPixelRadii[curFlashLevel], sFlashLevelPixelRadii[flashLevel], fullBrightness, 1); + StartUpdateFlashLevelEffect(DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelToRadius[curFlashLevel], sFlashLevelToRadius[newFlashLevel], fullBrightness, 1); StartWaitForFlashUpdate(); ScriptContext2_Enable(); } @@ -987,7 +986,7 @@ void WriteFlashScanlineEffectBuffer(u8 flashLevel) { if (flashLevel) { - SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelPixelRadii[flashLevel]); + SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelToRadius[flashLevel]); CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480); } } diff --git a/src/field_specials.c b/src/field_specials.c index 22467cfeef06..96eb949e5579 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1570,17 +1570,13 @@ bool8 FoundBlackGlasses(void) void SetRoute119Weather(void) { if (IsMapTypeOutdoors(GetLastUsedWarpMapType()) != TRUE) - { - SetSav1Weather(WEATHER_ROUTE119_CYCLE); - } + SetSavedWeather(WEATHER_ROUTE119_CYCLE); } void SetRoute123Weather(void) { if (IsMapTypeOutdoors(GetLastUsedWarpMapType()) != TRUE) - { - SetSav1Weather(WEATHER_ROUTE123_CYCLE); - } + SetSavedWeather(WEATHER_ROUTE123_CYCLE); } u8 GetLeadMonIndex(void) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 5720363c21e1..2b87557c21a6 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -2487,19 +2487,19 @@ static void CreateAbnormalWeatherTask(void) static u8 TranslateWeatherNum(u8); static void UpdateRainCounter(u8, u8); -void SetSav1Weather(u32 weather) +void SetSavedWeather(u32 weather) { u8 oldWeather = gSaveBlock1Ptr->weather; gSaveBlock1Ptr->weather = TranslateWeatherNum(weather); UpdateRainCounter(gSaveBlock1Ptr->weather, oldWeather); } -u8 GetSav1Weather(void) +u8 GetSavedWeather(void) { return gSaveBlock1Ptr->weather; } -void SetSav1WeatherFromCurrMapHeader(void) +void SetSavedWeatherFromCurrMapHeader(void) { u8 oldWeather = gSaveBlock1Ptr->weather; gSaveBlock1Ptr->weather = TranslateWeatherNum(gMapHeader.weather); @@ -2508,19 +2508,19 @@ void SetSav1WeatherFromCurrMapHeader(void) void SetWeather(u32 weather) { - SetSav1Weather(weather); - SetNextWeather(GetSav1Weather()); + SetSavedWeather(weather); + SetNextWeather(GetSavedWeather()); } void SetWeather_Unused(u32 weather) { - SetSav1Weather(weather); - SetCurrentAndNextWeather(GetSav1Weather()); + SetSavedWeather(weather); + SetCurrentAndNextWeather(GetSavedWeather()); } void DoCurrentWeather(void) { - u8 weather = GetSav1Weather(); + u8 weather = GetSavedWeather(); if (weather == WEATHER_ABNORMAL) { @@ -2539,7 +2539,7 @@ void DoCurrentWeather(void) void ResumePausedWeather(void) { - u8 weather = GetSav1Weather(); + u8 weather = GetSavedWeather(); if (weather == WEATHER_ABNORMAL) { diff --git a/src/overworld.c b/src/overworld.c index b53de3ebc916..a0fd7dbb3089 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -803,7 +803,7 @@ void LoadMapFromCameraTransition(u8 mapGroup, u8 mapNum) RestartWildEncounterImmunitySteps(); TryUpdateRandomTrainerRematches(mapGroup, mapNum); DoTimeBasedEvents(); - SetSav1WeatherFromCurrMapHeader(); + SetSavedWeatherFromCurrMapHeader(); ChooseAmbientCrySpecies(); SetDefaultFlashLevel(); Overworld_ClearSavedMusic(); @@ -854,7 +854,7 @@ static void LoadMapFromWarp(bool32 a1) TryUpdateRandomTrainerRematches(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum); if (a1 != TRUE) DoTimeBasedEvents(); - SetSav1WeatherFromCurrMapHeader(); + SetSavedWeatherFromCurrMapHeader(); ChooseAmbientCrySpecies(); if (isOutdoors) FlagClear(FLAG_SYS_USE_FLASH); @@ -967,6 +967,10 @@ bool32 Overworld_IsBikingAllowed(void) return TRUE; } +// Flash level of 0 is fully bright +// Flash level of 1 is the largest flash radius +// Flash level of 7 is the smallest flash radius +// Flash level of 8 is fully black void SetDefaultFlashLevel(void) { if (!gMapHeader.cave) @@ -1099,7 +1103,7 @@ u16 GetCurrLocationDefaultMusic(void) // 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) - && GetSav1Weather() == WEATHER_SANDSTORM) + && GetSavedWeather() == WEATHER_SANDSTORM) return MUS_ROUTE111; music = GetLocationMusic(&gSaveBlock1Ptr->location); diff --git a/src/scrcmd.c b/src/scrcmd.c index 04dff470b2d1..1dad3575c7d0 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -609,7 +609,7 @@ bool8 ScrCmd_animateflash(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_setflashradius(struct ScriptContext *ctx) +bool8 ScrCmd_setflashlevel(struct ScriptContext *ctx) { SetFlashLevel(VarGet(ScriptReadHalfword(ctx))); return FALSE; @@ -706,13 +706,13 @@ bool8 ScrCmd_setweather(struct ScriptContext *ctx) { u16 weather = VarGet(ScriptReadHalfword(ctx)); - SetSav1Weather(weather); + SetSavedWeather(weather); return FALSE; } bool8 ScrCmd_resetweather(struct ScriptContext *ctx) { - SetSav1WeatherFromCurrMapHeader(); + SetSavedWeatherFromCurrMapHeader(); return FALSE; } @@ -1982,7 +1982,7 @@ bool8 ScrCmd_dofieldeffect(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_setfieldeffectarg(struct ScriptContext *ctx) +bool8 ScrCmd_setfieldeffectargument(struct ScriptContext *ctx) { u8 argNum = ScriptReadByte(ctx); From f23d9ff30e0109e4ca4a5a4d63fa94f5e6c75bc4 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Thu, 18 Nov 2021 02:43:39 +0800 Subject: [PATCH 433/762] Use movement action constant values over enum --- asm/macros/movement.inc | 287 ++++++++++++++++++++++------------------ 1 file changed, 161 insertions(+), 126 deletions(-) diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc index 0220c11a96a5..2e52ba11d396 100644 --- a/asm/macros/movement.inc +++ b/asm/macros/movement.inc @@ -1,131 +1,166 @@ - .macro create_movement_action name - enum _\name + .macro create_movement_action name, value .macro \name - .byte _\name + .byte \value .endm .endm - enum_start - create_movement_action face_down - create_movement_action face_up - create_movement_action face_left - create_movement_action face_right - create_movement_action walk_slow_down - create_movement_action walk_slow_up - create_movement_action walk_slow_left - create_movement_action walk_slow_right - create_movement_action walk_down - create_movement_action walk_up - create_movement_action walk_left - create_movement_action walk_right - create_movement_action jump_2_down - create_movement_action jump_2_up - create_movement_action jump_2_left - create_movement_action jump_2_right - create_movement_action delay_1 - create_movement_action delay_2 - create_movement_action delay_4 - create_movement_action delay_8 - create_movement_action delay_16 - create_movement_action walk_fast_down - create_movement_action walk_fast_up - create_movement_action walk_fast_left - create_movement_action walk_fast_right - create_movement_action walk_in_place_slow_down - create_movement_action walk_in_place_slow_up - create_movement_action walk_in_place_slow_left - create_movement_action walk_in_place_slow_right - create_movement_action walk_in_place_down - create_movement_action walk_in_place_up - create_movement_action walk_in_place_left - create_movement_action walk_in_place_right - create_movement_action walk_in_place_fast_down - create_movement_action walk_in_place_fast_up - create_movement_action walk_in_place_fast_left - create_movement_action walk_in_place_fast_right - create_movement_action walk_in_place_faster_down - create_movement_action walk_in_place_faster_up - create_movement_action walk_in_place_faster_left - create_movement_action walk_in_place_faster_right - create_movement_action ride_water_current_down - create_movement_action ride_water_current_up - create_movement_action ride_water_current_left - create_movement_action ride_water_current_right - create_movement_action walk_faster_down - create_movement_action walk_faster_up - create_movement_action walk_faster_left - create_movement_action walk_faster_right - create_movement_action slide_down - create_movement_action slide_up - create_movement_action slide_left - create_movement_action slide_right - create_movement_action player_run_down - create_movement_action player_run_up - create_movement_action player_run_left - create_movement_action player_run_right - create_movement_action start_anim_in_direction - create_movement_action jump_special_down - create_movement_action jump_special_up - create_movement_action jump_special_left - create_movement_action jump_special_right - create_movement_action face_player - create_movement_action face_away_player - create_movement_action lock_facing_direction - create_movement_action unlock_facing_direction - create_movement_action jump_down - create_movement_action jump_up - create_movement_action jump_left - create_movement_action jump_right - create_movement_action jump_in_place_down - create_movement_action jump_in_place_up - create_movement_action jump_in_place_left - create_movement_action jump_in_place_right - create_movement_action jump_in_place_down_up - create_movement_action jump_in_place_up_down - create_movement_action jump_in_place_left_right - create_movement_action jump_in_place_right_left - create_movement_action face_original_direction - create_movement_action nurse_joy_bow - create_movement_action enable_jump_landing_ground_effect - create_movement_action disable_jump_landing_ground_effect - create_movement_action disable_anim - create_movement_action restore_anim - create_movement_action set_invisible - create_movement_action set_visible - create_movement_action emote_exclamation_mark - create_movement_action emote_question_mark - create_movement_action emote_heart - create_movement_action reveal_trainer - create_movement_action rock_smash_break - create_movement_action cut_tree - create_movement_action set_fixed_priority - create_movement_action clear_fixed_priority - create_movement_action init_affine_anim - create_movement_action clear_affine_anim - create_movement_action hide_reflection - create_movement_action show_reflection - create_movement_action walk_down_start_affine - create_movement_action walk_down_affine + create_movement_action face_down, MOVEMENT_ACTION_FACE_DOWN + create_movement_action face_up, MOVEMENT_ACTION_FACE_UP + create_movement_action face_left, MOVEMENT_ACTION_FACE_LEFT + create_movement_action face_right, MOVEMENT_ACTION_FACE_RIGHT + create_movement_action walk_slow_down, MOVEMENT_ACTION_WALK_SLOW_DOWN + create_movement_action walk_slow_up, MOVEMENT_ACTION_WALK_SLOW_UP + create_movement_action walk_slow_left, MOVEMENT_ACTION_WALK_SLOW_LEFT + create_movement_action walk_slow_right, MOVEMENT_ACTION_WALK_SLOW_RIGHT + create_movement_action walk_down, MOVEMENT_ACTION_WALK_NORMAL_DOWN + create_movement_action walk_up, MOVEMENT_ACTION_WALK_NORMAL_UP + create_movement_action walk_left, MOVEMENT_ACTION_WALK_NORMAL_LEFT + create_movement_action walk_right, MOVEMENT_ACTION_WALK_NORMAL_RIGHT + create_movement_action jump_2_down, MOVEMENT_ACTION_JUMP_2_DOWN + create_movement_action jump_2_up, MOVEMENT_ACTION_JUMP_2_UP + create_movement_action jump_2_left, MOVEMENT_ACTION_JUMP_2_LEFT + create_movement_action jump_2_right, MOVEMENT_ACTION_JUMP_2_RIGHT + create_movement_action delay_1, MOVEMENT_ACTION_DELAY_1 + create_movement_action delay_2, MOVEMENT_ACTION_DELAY_2 + create_movement_action delay_4, MOVEMENT_ACTION_DELAY_4 + create_movement_action delay_8, MOVEMENT_ACTION_DELAY_8 + create_movement_action delay_16, MOVEMENT_ACTION_DELAY_16 + create_movement_action walk_fast_down, MOVEMENT_ACTION_WALK_FAST_DOWN + create_movement_action walk_fast_up, MOVEMENT_ACTION_WALK_FAST_UP + create_movement_action walk_fast_left, MOVEMENT_ACTION_WALK_FAST_LEFT + create_movement_action walk_fast_right, MOVEMENT_ACTION_WALK_FAST_RIGHT + create_movement_action walk_in_place_slow_down, MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_DOWN + create_movement_action walk_in_place_slow_up, MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_UP + create_movement_action walk_in_place_slow_left, MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_LEFT + create_movement_action walk_in_place_slow_right, MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_RIGHT + create_movement_action walk_in_place_down, MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_DOWN + create_movement_action walk_in_place_up, MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_UP + create_movement_action walk_in_place_left, MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_LEFT + create_movement_action walk_in_place_right, MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_RIGHT + create_movement_action walk_in_place_fast_down, MOVEMENT_ACTION_WALK_IN_PLACE_FAST_DOWN + create_movement_action walk_in_place_fast_up, MOVEMENT_ACTION_WALK_IN_PLACE_FAST_UP + create_movement_action walk_in_place_fast_left, MOVEMENT_ACTION_WALK_IN_PLACE_FAST_LEFT + create_movement_action walk_in_place_fast_right, MOVEMENT_ACTION_WALK_IN_PLACE_FAST_RIGHT + create_movement_action walk_in_place_faster_down, MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN + create_movement_action walk_in_place_faster_up, MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_UP + create_movement_action walk_in_place_faster_left, MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_LEFT + create_movement_action walk_in_place_faster_right, MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT + create_movement_action ride_water_current_down, MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN + create_movement_action ride_water_current_up, MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP + create_movement_action ride_water_current_left, MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT + create_movement_action ride_water_current_right, MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT + create_movement_action walk_faster_down, MOVEMENT_ACTION_WALK_FASTER_DOWN + create_movement_action walk_faster_up, MOVEMENT_ACTION_WALK_FASTER_UP + create_movement_action walk_faster_left, MOVEMENT_ACTION_WALK_FASTER_LEFT + create_movement_action walk_faster_right, MOVEMENT_ACTION_WALK_FASTER_RIGHT + create_movement_action slide_down, MOVEMENT_ACTION_SLIDE_DOWN + create_movement_action slide_up, MOVEMENT_ACTION_SLIDE_UP + create_movement_action slide_left, MOVEMENT_ACTION_SLIDE_LEFT + create_movement_action slide_right, MOVEMENT_ACTION_SLIDE_RIGHT + create_movement_action player_run_down, MOVEMENT_ACTION_PLAYER_RUN_DOWN + create_movement_action player_run_up, MOVEMENT_ACTION_PLAYER_RUN_UP + create_movement_action player_run_left, MOVEMENT_ACTION_PLAYER_RUN_LEFT + create_movement_action player_run_right, MOVEMENT_ACTION_PLAYER_RUN_RIGHT + create_movement_action start_anim_in_direction, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION + create_movement_action jump_special_down, MOVEMENT_ACTION_JUMP_SPECIAL_DOWN + create_movement_action jump_special_up, MOVEMENT_ACTION_JUMP_SPECIAL_UP + create_movement_action jump_special_left, MOVEMENT_ACTION_JUMP_SPECIAL_LEFT + create_movement_action jump_special_right, MOVEMENT_ACTION_JUMP_SPECIAL_RIGHT + create_movement_action face_player, MOVEMENT_ACTION_FACE_PLAYER + create_movement_action face_away_player, MOVEMENT_ACTION_FACE_AWAY_PLAYER + create_movement_action lock_facing_direction, MOVEMENT_ACTION_LOCK_FACING_DIRECTION + create_movement_action unlock_facing_direction, MOVEMENT_ACTION_UNLOCK_FACING_DIRECTION + create_movement_action jump_down, MOVEMENT_ACTION_JUMP_DOWN + create_movement_action jump_up, MOVEMENT_ACTION_JUMP_UP + create_movement_action jump_left, MOVEMENT_ACTION_JUMP_LEFT + create_movement_action jump_right, MOVEMENT_ACTION_JUMP_RIGHT + create_movement_action jump_in_place_down, MOVEMENT_ACTION_JUMP_IN_PLACE_DOWN + create_movement_action jump_in_place_up, MOVEMENT_ACTION_JUMP_IN_PLACE_UP + create_movement_action jump_in_place_left, MOVEMENT_ACTION_JUMP_IN_PLACE_LEFT + create_movement_action jump_in_place_right, MOVEMENT_ACTION_JUMP_IN_PLACE_RIGHT + create_movement_action jump_in_place_down_up, MOVEMENT_ACTION_JUMP_IN_PLACE_DOWN_UP + create_movement_action jump_in_place_up_down, MOVEMENT_ACTION_JUMP_IN_PLACE_UP_DOWN + create_movement_action jump_in_place_left_right, MOVEMENT_ACTION_JUMP_IN_PLACE_LEFT_RIGHT + create_movement_action jump_in_place_right_left, MOVEMENT_ACTION_JUMP_IN_PLACE_RIGHT_LEFT + create_movement_action face_original_direction, MOVEMENT_ACTION_FACE_ORIGINAL_DIRECTION + create_movement_action nurse_joy_bow, MOVEMENT_ACTION_NURSE_JOY_BOW_DOWN + create_movement_action enable_jump_landing_ground_effect, MOVEMENT_ACTION_ENABLE_JUMP_LANDING_GROUND_EFFECT + create_movement_action disable_jump_landing_ground_effect, MOVEMENT_ACTION_DISABLE_JUMP_LANDING_GROUND_EFFECT + create_movement_action disable_anim, MOVEMENT_ACTION_DISABLE_ANIMATION + create_movement_action restore_anim, MOVEMENT_ACTION_RESTORE_ANIMATION + create_movement_action set_invisible, MOVEMENT_ACTION_SET_INVISIBLE + create_movement_action set_visible, MOVEMENT_ACTION_SET_VISIBLE + create_movement_action emote_exclamation_mark, MOVEMENT_ACTION_EMOTE_EXCLAMATION_MARK + create_movement_action emote_question_mark, MOVEMENT_ACTION_EMOTE_QUESTION_MARK + create_movement_action emote_heart, MOVEMENT_ACTION_EMOTE_HEART + create_movement_action reveal_trainer, MOVEMENT_ACTION_REVEAL_TRAINER + create_movement_action rock_smash_break, MOVEMENT_ACTION_ROCK_SMASH_BREAK + create_movement_action cut_tree, MOVEMENT_ACTION_CUT_TREE + create_movement_action set_fixed_priority, MOVEMENT_ACTION_SET_FIXED_PRIORITY + create_movement_action clear_fixed_priority, MOVEMENT_ACTION_CLEAR_FIXED_PRIORITY + create_movement_action init_affine_anim, MOVEMENT_ACTION_INIT_AFFINE_ANIM + create_movement_action clear_affine_anim, MOVEMENT_ACTION_CLEAR_AFFINE_ANIM + create_movement_action hide_reflection, MOVEMENT_ACTION_HIDE_REFLECTION + create_movement_action show_reflection, MOVEMENT_ACTION_SHOW_REFLECTION + create_movement_action walk_down_start_affine, MOVEMENT_ACTION_WALK_DOWN_START_AFFINE + create_movement_action walk_down_affine, MOVEMENT_ACTION_WALK_DOWN_AFFINE + create_movement_action acro_wheelie_face_down, MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN + create_movement_action acro_wheelie_face_up, MOVEMENT_ACTION_ACRO_WHEELIE_FACE_UP + create_movement_action acro_wheelie_face_left, MOVEMENT_ACTION_ACRO_WHEELIE_FACE_LEFT + create_movement_action acro_wheelie_face_right, MOVEMENT_ACTION_ACRO_WHEELIE_FACE_RIGHT + create_movement_action acro_pop_wheelie_down, MOVEMENT_ACTION_ACRO_POP_WHEELIE_DOWN + create_movement_action acro_pop_wheelie_up, MOVEMENT_ACTION_ACRO_POP_WHEELIE_UP + create_movement_action acro_pop_wheelie_left, MOVEMENT_ACTION_ACRO_POP_WHEELIE_LEFT + create_movement_action acro_pop_wheelie_right, MOVEMENT_ACTION_ACRO_POP_WHEELIE_RIGHT + create_movement_action acro_end_wheelie_face_down, MOVEMENT_ACTION_ACRO_END_WHEELIE_FACE_DOWN + create_movement_action acro_end_wheelie_face_up, MOVEMENT_ACTION_ACRO_END_WHEELIE_FACE_UP + create_movement_action acro_end_wheelie_face_left, MOVEMENT_ACTION_ACRO_END_WHEELIE_FACE_LEFT + create_movement_action acro_end_wheelie_face_right, MOVEMENT_ACTION_ACRO_END_WHEELIE_FACE_RIGHT + create_movement_action acro_wheelie_hop_face_down, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_FACE_DOWN + create_movement_action acro_wheelie_hop_face_up, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_FACE_UP + create_movement_action acro_wheelie_hop_face_left, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_FACE_LEFT + create_movement_action acro_wheelie_hop_face_right, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_FACE_RIGHT + create_movement_action acro_wheelie_hop_down, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_DOWN + create_movement_action acro_wheelie_hop_up, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_UP + create_movement_action acro_wheelie_hop_left, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_LEFT + create_movement_action acro_wheelie_hop_right, MOVEMENT_ACTION_ACRO_WHEELIE_HOP_RIGHT + create_movement_action acro_wheelie_jump_down, MOVEMENT_ACTION_ACRO_WHEELIE_JUMP_DOWN + create_movement_action acro_wheelie_jump_up, MOVEMENT_ACTION_ACRO_WHEELIE_JUMP_UP + create_movement_action acro_wheelie_jump_left, MOVEMENT_ACTION_ACRO_WHEELIE_JUMP_LEFT + create_movement_action acro_wheelie_jump_right, MOVEMENT_ACTION_ACRO_WHEELIE_JUMP_RIGHT + create_movement_action acro_wheelie_in_place_down, MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_DOWN + create_movement_action acro_wheelie_in_place_up, MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_UP + create_movement_action acro_wheelie_in_place_left, MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_LEFT + create_movement_action acro_wheelie_in_place_right, MOVEMENT_ACTION_ACRO_WHEELIE_IN_PLACE_RIGHT + create_movement_action acro_pop_wheelie_move_down, MOVEMENT_ACTION_ACRO_POP_WHEELIE_MOVE_DOWN + create_movement_action acro_pop_wheelie_move_up, MOVEMENT_ACTION_ACRO_POP_WHEELIE_MOVE_UP + create_movement_action acro_pop_wheelie_move_left, MOVEMENT_ACTION_ACRO_POP_WHEELIE_MOVE_LEFT + create_movement_action acro_pop_wheelie_move_right, MOVEMENT_ACTION_ACRO_POP_WHEELIE_MOVE_RIGHT + create_movement_action acro_wheelie_move_down, MOVEMENT_ACTION_ACRO_WHEELIE_MOVE_DOWN + create_movement_action acro_wheelie_move_up, MOVEMENT_ACTION_ACRO_WHEELIE_MOVE_UP + create_movement_action acro_wheelie_move_left, MOVEMENT_ACTION_ACRO_WHEELIE_MOVE_LEFT + create_movement_action acro_wheelie_move_right, MOVEMENT_ACTION_ACRO_WHEELIE_MOVE_RIGHT + create_movement_action acro_end_wheelie_move_down, MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_DOWN + create_movement_action acro_end_wheelie_move_up, MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_UP + create_movement_action acro_end_wheelie_move_left, MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_LEFT + create_movement_action acro_end_wheelie_move_right, MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_RIGHT + create_movement_action walk_diag_northwest, MOVEMENT_ACTION_WALK_NORMAL_DIAGONAL_UP_LEFT + create_movement_action walk_diag_northeast, MOVEMENT_ACTION_WALK_NORMAL_DIAGONAL_UP_RIGHT + create_movement_action walk_diag_southwest, MOVEMENT_ACTION_WALK_NORMAL_DIAGONAL_DOWN_LEFT + create_movement_action walk_diag_southeast, MOVEMENT_ACTION_WALK_NORMAL_DIAGONAL_DOWN_RIGHT + create_movement_action walk_slow_diag_northwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_LEFT + create_movement_action walk_slow_diag_northeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT + create_movement_action walk_slow_diag_southwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT + create_movement_action walk_slow_diag_southeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT + create_movement_action store_lock_anim, MOVEMENT_ACTION_STORE_AND_LOCK_ANIM + create_movement_action free_unlock_anim, MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM + create_movement_action walk_left_affine, MOVEMENT_ACTION_WALK_LEFT_AFFINE + create_movement_action walk_right_affine, MOVEMENT_ACTION_WALK_RIGHT_AFFINE + create_movement_action levitate, MOVEMENT_ACTION_LEVITATE + create_movement_action stop_levitate, MOVEMENT_ACTION_STOP_LEVITATE + create_movement_action destroy_extra_task, MOVEMENT_ACTION_STOP_LEVITATE_AT_TOP + create_movement_action figure_8, MOVEMENT_ACTION_FIGURE_8 + create_movement_action fly_up, MOVEMENT_ACTION_FLY_UP + create_movement_action fly_down, MOVEMENT_ACTION_FLY_DOWN - enum_start 0x8C - create_movement_action walk_diag_northwest - create_movement_action walk_diag_northeast - create_movement_action walk_diag_southwest - create_movement_action walk_diag_southeast - create_movement_action walk_slow_diag_northwest - create_movement_action walk_slow_diag_northeast - create_movement_action walk_slow_diag_southwest - create_movement_action walk_slow_diag_southeast - create_movement_action store_lock_anim - create_movement_action free_unlock_anim - create_movement_action walk_left_affine - create_movement_action walk_right_affine - create_movement_action levitate - create_movement_action stop_levitate - create_movement_action destroy_extra_task - create_movement_action figure_8 - create_movement_action fly_up - create_movement_action fly_down - - enum_start 0xfe - create_movement_action step_end + create_movement_action step_end, MOVEMENT_ACTION_STEP_END From 9d18ad0b5a01f17163dd6cb4228a1f7bb72e43a1 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Thu, 18 Nov 2021 03:07:09 +0800 Subject: [PATCH 434/762] Make arguments for create_movement_action required --- asm/macros/movement.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc index 2e52ba11d396..62618379b6fd 100644 --- a/asm/macros/movement.inc +++ b/asm/macros/movement.inc @@ -1,4 +1,4 @@ - .macro create_movement_action name, value + .macro create_movement_action name:req, value:req .macro \name .byte \value .endm From eb95ac0b9ce342a39955679bbd7df32e54675d70 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Nov 2021 21:34:47 -0500 Subject: [PATCH 435/762] Document field_tasks --- asm/macros/event.inc | 2 +- include/constants/metatile_behaviors.h | 8 +- include/constants/metatile_labels.h | 32 +- include/metatile_behavior.h | 8 +- src/field_tasks.c | 933 +++++++++++++++---------- src/metatile_behavior.c | 32 +- src/secret_base.c | 181 +++-- 7 files changed, 693 insertions(+), 503 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index d077103dcda7..4c0bc2922ac2 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1298,7 +1298,7 @@ .byte 0xa5 .endm - @ Enables a function that gets called every step by Task_RunPerStepCallback. + @ .macro setstepcallback subroutine:req .byte 0xa6 .byte \subroutine diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index dde821358718..5f37713f30b6 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -117,10 +117,10 @@ #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_1 0x74 -#define MB_PACIFIDLOG_VERTICAL_LOG_2 0x75 -#define MB_PACIFIDLOG_HORIZONTAL_LOG_1 0x76 -#define MB_PACIFIDLOG_HORIZONTAL_LOG_2 0x77 +#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 diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index 51912008282e..3c484e39a2c1 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -182,22 +182,22 @@ #define METATILE_Cave_ShoalCave_BlueStone_Small 0x35B // gTileset_Pacifidlog -#define METATILE_Pacifidlog_Door 0x21A -#define METATILE_Pacifidlog_FloatingLogs_Horizontal0 0x250 -#define METATILE_Pacifidlog_FloatingLogs_Horizontal1 0x251 -#define METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal0 0x252 -#define METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal1 0x253 -#define METATILE_Pacifidlog_SubmergedLogs_Horizontal0 0x254 -#define METATILE_Pacifidlog_SubmergedLogs_Horizontal1 0x255 -#define METATILE_Pacifidlog_FloatingLogs_Vertical0 0x258 -#define METATILE_Pacifidlog_FloatingLogs_Vertical1 0x260 -#define METATILE_Pacifidlog_HalfSubmergedLogs_Vertical0 0x259 -#define METATILE_Pacifidlog_HalfSubmergedLogs_Vertical1 0x261 -#define METATILE_Pacifidlog_SubmergedLogs_Vertical0 0x25A -#define METATILE_Pacifidlog_SubmergedLogs_Vertical1 0x262 -#define METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole 0x237 -#define METATILE_Pacifidlog_SkyPillar_DoorOpen_Top 0x2AA -#define METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom 0x2B2 +#define METATILE_Pacifidlog_Door 0x21A +#define METATILE_Pacifidlog_FloatingLogs_HorizontalLeft 0x250 +#define METATILE_Pacifidlog_FloatingLogs_HorizontalRight 0x251 +#define METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalLeft 0x252 +#define METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalRight 0x253 +#define METATILE_Pacifidlog_SubmergedLogs_HorizontalLeft 0x254 +#define METATILE_Pacifidlog_SubmergedLogs_HorizontalRight 0x255 +#define METATILE_Pacifidlog_FloatingLogs_VerticalTop 0x258 +#define METATILE_Pacifidlog_FloatingLogs_VerticalBottom 0x260 +#define METATILE_Pacifidlog_HalfSubmergedLogs_VerticalTop 0x259 +#define METATILE_Pacifidlog_HalfSubmergedLogs_VerticalBottom 0x261 +#define METATILE_Pacifidlog_SubmergedLogs_VerticalTop 0x25A +#define METATILE_Pacifidlog_SubmergedLogs_VerticalBottom 0x262 +#define METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole 0x237 +#define METATILE_Pacifidlog_SkyPillar_DoorOpen_Top 0x2AA +#define METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom 0x2B2 // gTileset_Fortree #define METATILE_Fortree_LongGrass_Root 0x208 diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index 23c84dffb1df..5895426cf0c2 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -102,10 +102,10 @@ bool8 MetatileBehavior_IsShortGrass(u8); bool8 MetatileBehavior_IsHotSprings(u8); bool8 MetatileBehavior_IsWaterfall(u8); bool8 MetatileBehavior_IsFortreeBridge(u8); -bool8 MetatileBehavior_IsPacifidlogVerticalLog1(u8); -bool8 MetatileBehavior_IsPacifidlogVerticalLog2(u8); -bool8 MetatileBehavior_IsPacifidlogHorizontalLog1(u8); -bool8 MetatileBehavior_IsPacifidlogHorizontalLog2(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); diff --git a/src/field_tasks.c b/src/field_tasks.c index 187270f7a8be..760d853693d9 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -21,20 +21,40 @@ #include "constants/songs.h" #include "constants/metatile_labels.h" +/* This file handles some persistent tasks that run in the overworld. + * - Task_RunTimeBasedEvents: Periodically updates local time and RTC events. Also triggers ambient cries. + * - Task_MuddySlope: Handles the metatile animation when the player steps on muddy slopes. + * - Task_RunPerStepCallback: Calls one of the functions in sPerStepCallbacks, listed below... + * . DummyPerStepCallback: Default, does nothing + * . AshGrassPerStepCallback: Removes the ash from ash-covered grass that the player steps on. + * . FortreeBridgePerStepCallback: Depresses Fortree log bridges that the player steps on. + * . PacifidlogBridgePerStepCallback: Submerges Pacifidlog log bridges that the player steps on. + * . SootopolisGymIcePerStepCallback: Cracks/breaks ice in Sootopolis Gym that the player steps on. + * . EndTruckSequence: Sets the moving truck boxes to their final position when the truck sequence ends. + * . SecretBasePerStepCallback: Records the decorations in a friend's secret base that the player steps on. + * . CrackedFloorPerStepCallback: Breaks cracked floors that the player steps on. + * + * NOTE: "PerStep" is perhaps misleading. One function in sPerStepCallbacks is called + * every frame while in the overworld by Task_RunPerStepCallback regardless of + * whether or not steps are being taken. However, nearly all of the functions in + * the table check if the player has moved from their previous position before + * doing anything else. + */ + struct PacifidlogMetatileOffsets { s8 x; s8 y; - u16 tileId; + u16 metatileId; }; -static void DummyPerStepCallback(u8 taskId); -static void AshGrassPerStepCallback(u8 taskId); -static void FortreeBridgePerStepCallback(u8 taskId); -static void PacifidlogBridgePerStepCallback(u8 taskId); -static void SootopolisGymIcePerStepCallback(u8 taskId); -static void CrackedFloorPerStepCallback(u8 taskId); -static void Task_MuddySlope(u8 taskId); +static void DummyPerStepCallback(u8); +static void AshGrassPerStepCallback(u8); +static void FortreeBridgePerStepCallback(u8); +static void PacifidlogBridgePerStepCallback(u8); +static void SootopolisGymIcePerStepCallback(u8); +static void CrackedFloorPerStepCallback(u8); +static void Task_MuddySlope(u8); static const TaskFunc sPerStepCallbacks[] = { @@ -48,29 +68,35 @@ static const TaskFunc sPerStepCallbacks[] = [STEP_CB_CRACKED_FLOOR] = CrackedFloorPerStepCallback }; -// they are in pairs but declared as 1D array +// Each array has 4 pairs of data, each pair representing two metatiles of a log and their relative position. +// The 4 pairs are for: +// 0: If the player is standing on the top of a vertical log +// 1: If the player is standing on the bottom of a vertical log +// 2: If the player is standing on the left of a horizontal log +// 3: If the player is standing on the right of a horizontal log +// i.e. the element with an offset of 0,0 is the one the player is standing on. static const struct PacifidlogMetatileOffsets sHalfSubmergedBridgeMetatileOffsets[] = { - { 0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Vertical0}, {0, 1, METATILE_Pacifidlog_HalfSubmergedLogs_Vertical1}, - { 0, -1, METATILE_Pacifidlog_HalfSubmergedLogs_Vertical0}, {0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Vertical1}, - { 0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal0}, {1, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal1}, - {-1, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal0}, {0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_Horizontal1} + { 0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_VerticalTop}, {0, 1, METATILE_Pacifidlog_HalfSubmergedLogs_VerticalBottom}, + { 0, -1, METATILE_Pacifidlog_HalfSubmergedLogs_VerticalTop}, {0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_VerticalBottom}, + { 0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalLeft}, {1, 0, METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalRight}, + {-1, 0, METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalLeft}, {0, 0, METATILE_Pacifidlog_HalfSubmergedLogs_HorizontalRight} }; static const struct PacifidlogMetatileOffsets sFullySubmergedBridgeMetatileOffsets[] = { - { 0, 0, METATILE_Pacifidlog_SubmergedLogs_Vertical0}, {0, 1, METATILE_Pacifidlog_SubmergedLogs_Vertical1}, - { 0, -1, METATILE_Pacifidlog_SubmergedLogs_Vertical0}, {0, 0, METATILE_Pacifidlog_SubmergedLogs_Vertical1}, - { 0, 0, METATILE_Pacifidlog_SubmergedLogs_Horizontal0}, {1, 0, METATILE_Pacifidlog_SubmergedLogs_Horizontal1}, - {-1, 0, METATILE_Pacifidlog_SubmergedLogs_Horizontal0}, {0, 0, METATILE_Pacifidlog_SubmergedLogs_Horizontal1} + { 0, 0, METATILE_Pacifidlog_SubmergedLogs_VerticalTop}, {0, 1, METATILE_Pacifidlog_SubmergedLogs_VerticalBottom}, + { 0, -1, METATILE_Pacifidlog_SubmergedLogs_VerticalTop}, {0, 0, METATILE_Pacifidlog_SubmergedLogs_VerticalBottom}, + { 0, 0, METATILE_Pacifidlog_SubmergedLogs_HorizontalLeft}, {1, 0, METATILE_Pacifidlog_SubmergedLogs_HorizontalRight}, + {-1, 0, METATILE_Pacifidlog_SubmergedLogs_HorizontalLeft}, {0, 0, METATILE_Pacifidlog_SubmergedLogs_HorizontalRight} }; static const struct PacifidlogMetatileOffsets sFloatingBridgeMetatileOffsets[] = { - { 0, 0, METATILE_Pacifidlog_FloatingLogs_Vertical0}, {0, 1, METATILE_Pacifidlog_FloatingLogs_Vertical1}, - { 0, -1, METATILE_Pacifidlog_FloatingLogs_Vertical0}, {0, 0, METATILE_Pacifidlog_FloatingLogs_Vertical1}, - { 0, 0, METATILE_Pacifidlog_FloatingLogs_Horizontal0}, {1, 0, METATILE_Pacifidlog_FloatingLogs_Horizontal1}, - {-1, 0, METATILE_Pacifidlog_FloatingLogs_Horizontal0}, {0, 0, METATILE_Pacifidlog_FloatingLogs_Horizontal1} + { 0, 0, METATILE_Pacifidlog_FloatingLogs_VerticalTop}, {0, 1, METATILE_Pacifidlog_FloatingLogs_VerticalBottom}, + { 0, -1, METATILE_Pacifidlog_FloatingLogs_VerticalTop}, {0, 0, METATILE_Pacifidlog_FloatingLogs_VerticalBottom}, + { 0, 0, METATILE_Pacifidlog_FloatingLogs_HorizontalLeft}, {1, 0, METATILE_Pacifidlog_FloatingLogs_HorizontalRight}, + {-1, 0, METATILE_Pacifidlog_FloatingLogs_HorizontalLeft}, {0, 0, METATILE_Pacifidlog_FloatingLogs_HorizontalRight} }; // Each element corresponds to a y coordinate row in the sootopolis gym 1F map. @@ -104,16 +130,11 @@ static const u16 sSootopolisGymIceRowVars[] = 0 }; -static const u16 sMuddySlopeMetatiles[] = { - METATILE_General_MuddySlope_Frame0, - METATILE_General_MuddySlope_Frame3, - METATILE_General_MuddySlope_Frame2, - METATILE_General_MuddySlope_Frame1 -}; +#define tCallbackId data[0] static void Task_RunPerStepCallback(u8 taskId) { - int idx = gTasks[taskId].data[0]; + int idx = gTasks[taskId].tCallbackId; sPerStepCallbacks[idx](taskId); } @@ -121,23 +142,23 @@ static void Task_RunPerStepCallback(u8 taskId) #define tAmbientCryState data[1] #define tAmbientCryDelay data[2] +#define TIME_UPDATE_INTERVAL (1 << 12) + static void RunTimeBasedEvents(s16 *data) { switch (tState) { - case 0: - if (gMain.vblankCounter1 & 0x1000) - { - DoTimeBasedEvents(); - tState++; - } - break; - case 1: - if (!(gMain.vblankCounter1 & 0x1000)) - { - tState--; - } - break; + case 0: + if (gMain.vblankCounter1 & TIME_UPDATE_INTERVAL) + { + DoTimeBasedEvents(); + tState++; + } + break; + case 1: + if (!(gMain.vblankCounter1 & TIME_UPDATE_INTERVAL)) + tState--; + break; } } @@ -153,22 +174,20 @@ static void Task_RunTimeBasedEvents(u8 taskId) } #undef tState -#undef tAmbientCryState -#undef tAmbientCryDelay void SetUpFieldTasks(void) { if (!FuncIsActiveTask(Task_RunPerStepCallback)) { - u8 taskId = CreateTask(Task_RunPerStepCallback, 0x50); - gTasks[taskId].data[0] = 0; + u8 taskId = CreateTask(Task_RunPerStepCallback, 80); + gTasks[taskId].tCallbackId = STEP_CB_DUMMY; } if (!FuncIsActiveTask(Task_MuddySlope)) - CreateTask(Task_MuddySlope, 0x50); + CreateTask(Task_MuddySlope, 80); if (!FuncIsActiveTask(Task_RunTimeBasedEvents)) - CreateTask(Task_RunTimeBasedEvents, 0x50); + CreateTask(Task_RunTimeBasedEvents, 80); } void ActivatePerStepCallback(u8 callbackId) @@ -179,17 +198,13 @@ void ActivatePerStepCallback(u8 callbackId) s32 i; s16 *data = gTasks[taskId].data; - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_TASK_DATA; i++) data[i] = 0; if (callbackId >= ARRAY_COUNT(sPerStepCallbacks)) - { - data[0] = 0; - } + tCallbackId = STEP_CB_DUMMY; else - { - data[0] = callbackId; - } + tCallbackId = callbackId; } } @@ -200,18 +215,20 @@ void ResetFieldTasksArgs(void) taskId = FindTaskIdByFunc(Task_RunPerStepCallback); if (taskId != TASK_NONE) - { data = gTasks[taskId].data; - } + taskId = FindTaskIdByFunc(Task_RunTimeBasedEvents); if (taskId != TASK_NONE) { data = gTasks[taskId].data; - data[1] = 0; - data[2] = 0; + tAmbientCryState = 0; + tAmbientCryDelay = 0; } } +#undef tAmbientCryState +#undef tAmbientCryDelay + static void DummyPerStepCallback(u8 taskId) { @@ -219,282 +236,377 @@ static void DummyPerStepCallback(u8 taskId) static const struct PacifidlogMetatileOffsets *GetPacifidlogBridgeMetatileOffsets(const struct PacifidlogMetatileOffsets *offsets, u16 metatileBehavior) { - if (MetatileBehavior_IsPacifidlogVerticalLog1(metatileBehavior)) + if (MetatileBehavior_IsPacifidlogVerticalLogTop(metatileBehavior)) return &offsets[0 * 2]; - else if (MetatileBehavior_IsPacifidlogVerticalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogVerticalLogBottom(metatileBehavior)) return &offsets[1 * 2]; - else if (MetatileBehavior_IsPacifidlogHorizontalLog1(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(metatileBehavior)) return &offsets[2 * 2]; - else if (MetatileBehavior_IsPacifidlogHorizontalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogRight(metatileBehavior)) return &offsets[3 * 2]; else return NULL; } -static void SetPacifidlogBridgeMetatiles(const struct PacifidlogMetatileOffsets *offsets, s16 x, s16 y, bool32 redrawMap) +static void TrySetPacifidlogBridgeMetatiles(const struct PacifidlogMetatileOffsets *offsets, s16 x, s16 y, bool32 redrawMap) { offsets = GetPacifidlogBridgeMetatileOffsets(offsets, MapGridGetMetatileBehaviorAt(x, y)); + + // If offsets is NULL, position is not a log (don't set it) if (offsets) { - MapGridSetMetatileIdAt(x + offsets[0].x, y + offsets[0].y, offsets[0].tileId); + // Set both metatiles of the log + MapGridSetMetatileIdAt(x + offsets[0].x, y + offsets[0].y, offsets[0].metatileId); if (redrawMap) CurrentMapDrawMetatileAt(x + offsets[0].x, y + offsets[0].y); - MapGridSetMetatileIdAt(x + offsets[1].x, y + offsets[1].y, offsets[1].tileId); + MapGridSetMetatileIdAt(x + offsets[1].x, y + offsets[1].y, offsets[1].metatileId); if (redrawMap) CurrentMapDrawMetatileAt(x + offsets[1].x, y + offsets[1].y); } } -static void UpdateHalfSubmergedBridgeMetatiles(s16 x, s16 y, bool32 redrawMap) +static void TrySetLogBridgeHalfSubmerged(s16 x, s16 y, bool32 redrawMap) { - SetPacifidlogBridgeMetatiles(sHalfSubmergedBridgeMetatileOffsets, x, y, redrawMap); + TrySetPacifidlogBridgeMetatiles(sHalfSubmergedBridgeMetatileOffsets, x, y, redrawMap); } -static void UpdateFullySubmergedBridgeMetatiles(s16 x, s16 y, bool32 redrawMap) +static void TrySetLogBridgeFullySubmerged(s16 x, s16 y, bool32 redrawMap) { - SetPacifidlogBridgeMetatiles(sFullySubmergedBridgeMetatileOffsets, x, y, redrawMap); + TrySetPacifidlogBridgeMetatiles(sFullySubmergedBridgeMetatileOffsets, x, y, redrawMap); } -static void UpdateFloatingBridgeMetatiles(s16 x, s16 y, bool32 redrawMap) +static void TrySetLogBridgeFloating(s16 x, s16 y, bool32 redrawMap) { - SetPacifidlogBridgeMetatiles(sFloatingBridgeMetatileOffsets, x, y, redrawMap); + TrySetPacifidlogBridgeMetatiles(sFloatingBridgeMetatileOffsets, x, y, redrawMap); } -static bool32 StandingOnNewPacifidlogBridge(s16 x1, s16 y1, s16 x2, s16 y2) +// Returns FALSE if player has moved from one end of a log to the other (log should remain submerged). +// Otherwise it returns TRUE. +static bool32 ShouldRaisePacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) { - u16 metatileBehavior = MapGridGetMetatileBehaviorAt(x2, y2); + u16 oldBehavior = MapGridGetMetatileBehaviorAt(oldX, oldY); - if (MetatileBehavior_IsPacifidlogVerticalLog1(metatileBehavior)) + if (MetatileBehavior_IsPacifidlogVerticalLogTop(oldBehavior)) { - if (y1 > y2) + // Still on same one if moved from top to bottom + if (newY > oldY) return FALSE; } - else if (MetatileBehavior_IsPacifidlogVerticalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogVerticalLogBottom(oldBehavior)) { - if (y1 < y2) + // Still on same one if moved from bottom to top + if (newY < oldY) return FALSE; } - else if (MetatileBehavior_IsPacifidlogHorizontalLog1(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(oldBehavior)) { - if (x1 > x2) + // Still on same one if moved from left to right + if (newX > oldX) return FALSE; } - else if (MetatileBehavior_IsPacifidlogHorizontalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogRight(oldBehavior)) { - if (x1 < x2) + // Still on same one if moved from right to left + if (newX < oldX) return FALSE; } + + // Player is either on a different log or no log at all return TRUE; } -static bool32 StandingOnSamePacifidlogBridge(s16 x1, s16 y1, s16 x2, s16 y2) +// Returns FALSE if player has moved from one end of a log to the other (log should remain submerged). +// Otherwise it returns TRUE. +// This is the effectively the same as ShouldRaisePacifidlogLogs, as it swaps both the conditions and which position's behavior to check. +// In effect the previous function asks "was the player's previous position not the other end of a log they're standing on?" +// while this function asks "is the player's current position not the other end of a log they were previously standing on?" +// and with the same positions both questions always have the same answer. +static bool32 ShouldSinkPacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) { - u16 metatileBehavior = MapGridGetMetatileBehaviorAt(x1, y1); + u16 newBehavior = MapGridGetMetatileBehaviorAt(newX, newY); - if (MetatileBehavior_IsPacifidlogVerticalLog1(metatileBehavior)) + if (MetatileBehavior_IsPacifidlogVerticalLogTop(newBehavior)) { - if (y1 < y2) + // Still on same one if moved from bottom to top + if (newY < oldY) return FALSE; } - else if (MetatileBehavior_IsPacifidlogVerticalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogVerticalLogBottom(newBehavior)) { - if (y1 > y2) + // Still on same one if moved from top to bottom + if (newY > oldY) return FALSE; } - else if (MetatileBehavior_IsPacifidlogHorizontalLog1(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(newBehavior)) { - if (x1 < x2) + // Still on same one if moved from right to left + if (newX < oldX) return FALSE; } - else if (MetatileBehavior_IsPacifidlogHorizontalLog2(metatileBehavior)) + else if (MetatileBehavior_IsPacifidlogHorizontalLogRight(newBehavior)) { - if (x1 > x2) + // Still on same one if moved from left to right + if (newX > oldX) return FALSE; } return TRUE; } +#define tState data[1] +#define tPrevX data[2] +#define tPrevY data[3] +#define tToRaiseX data[4] +#define tToRaiseY data[5] +#define tDelay data[6] + static void PacifidlogBridgePerStepCallback(u8 taskId) { s16 *data; s16 x, y; data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); - switch (data[1]) + switch (tState) { - case 0: - data[2] = x; - data[3] = y; - UpdateFullySubmergedBridgeMetatiles(x, y, TRUE); - data[1] = 1; - break; - case 1: - if (x != data[2] || y != data[3]) - { - if (StandingOnNewPacifidlogBridge(x, y, data[2], data[3])) - { - UpdateHalfSubmergedBridgeMetatiles(data[2], data[3], TRUE); - UpdateFloatingBridgeMetatiles(data[2], data[3], FALSE); - data[4] = data[2]; - data[5] = data[3]; - data[1] = 2; - data[6] = 8; - } - else - { - data[4] = -1; - data[5] = -1; - } + case 0: + tPrevX = x; + tPrevY = y; + + // If player is already standing on a log when the callback + // is set then immediately set it to submerged + TrySetLogBridgeFullySubmerged(x, y, TRUE); + tState = 1; + break; + case 1: + // Skip if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + if (ShouldRaisePacifidlogLogs(x, y, tPrevX, tPrevY)) + { + // Player's previous position is not the other end of a log + // they're standing on, try and set it half-submerged (rising to surface). + // The floating metatile is queued up by setting it but not drawing it, + // but this is pointless as state 2 will handle it in full anyway. + TrySetLogBridgeHalfSubmerged(tPrevX, tPrevY, TRUE); + TrySetLogBridgeFloating(tPrevX, tPrevY, FALSE); + tToRaiseX = tPrevX; + tToRaiseY = tPrevY; + tState = 2; + tDelay = 8; + } + else + { + // Player has moved but is still on the same log bridge section. + // Keep it submerged. + tToRaiseX = -1; + tToRaiseY = -1; + } - if (StandingOnSamePacifidlogBridge(x, y, data[2], data[3])) - { - UpdateHalfSubmergedBridgeMetatiles(x, y, TRUE); - data[1] = 2; - data[6] = 8; - } + if (ShouldSinkPacifidlogLogs(x, y, tPrevX, tPrevY)) + { + // Player's current position is not the other end of a log + // they were previously standing on, try and set it half-submerged (sinking) + TrySetLogBridgeHalfSubmerged(x, y, TRUE); + tState = 2; + tDelay = 8; + } - data[2] = x; - data[3] = y; - if (MetatileBehavior_IsPacifidlogLog(MapGridGetMetatileBehaviorAt(x, y))) - PlaySE(SE_PUDDLE); - } - break; - case 2: - if ((--data[6]) == 0) - { - UpdateFullySubmergedBridgeMetatiles(x, y, TRUE); - if (data[4] != -1 && data[5] != -1) - UpdateFloatingBridgeMetatiles(data[4], data[5], TRUE); + tPrevX = x; + tPrevY = y; - data[1] = 1; - } - break; + // If player's new position is a log play the puddle SE + if (MetatileBehavior_IsPacifidlogLog(MapGridGetMetatileBehaviorAt(x, y))) + PlaySE(SE_PUDDLE); + break; + case 2: + if (--tDelay == 0) + { + // If player's current position is a log submerge it fully. + TrySetLogBridgeFullySubmerged(x, y, TRUE); + + // Player's previous position is not the other end of a log + // they're standing on, try to raise their previous position. + if (tToRaiseX != -1 && tToRaiseY != -1) + TrySetLogBridgeFloating(tToRaiseX, tToRaiseY, TRUE); + + tState = 1; + } + break; } } -static void SetLoweredForetreeBridgeMetatile(s16 x, s16 y) +#undef tState +#undef tPrevX +#undef tPrevY +#undef tToRaiseX +#undef tToRaiseY +#undef tDelay + +static void TryLowerFortreeBridge(s16 x, s16 y) { u8 z = PlayerGetZCoord(); if (!(z & 1)) { switch (MapGridGetMetatileIdAt(x, y)) { - case METATILE_Fortree_BridgeOverGrass_Raised: - MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverGrass_Lowered); - break; - case METATILE_Fortree_BridgeOverTrees_Raised: - MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverTrees_Lowered); - break; + case METATILE_Fortree_BridgeOverGrass_Raised: + MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverGrass_Lowered); + break; + case METATILE_Fortree_BridgeOverTrees_Raised: + MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverTrees_Lowered); + break; } } } -static void SetNormalFortreeBridgeMetatile(s16 x, s16 y) +static void TryRaiseFortreeBridge(s16 x, s16 y) { u8 z = PlayerGetZCoord(); if (!(z & 1)) { switch (MapGridGetMetatileIdAt(x, y)) { - case METATILE_Fortree_BridgeOverGrass_Lowered: - MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverGrass_Raised); - break; - case METATILE_Fortree_BridgeOverTrees_Lowered: - MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverTrees_Raised); - break; + case METATILE_Fortree_BridgeOverGrass_Lowered: + MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverGrass_Raised); + break; + case METATILE_Fortree_BridgeOverTrees_Lowered: + MapGridSetMetatileIdAt(x, y, METATILE_Fortree_BridgeOverTrees_Raised); + break; } } } +#define tState data[1] +#define tPrevX data[2] +#define tPrevY data[3] +#define tOldBridgeX data[4] +#define tOldBridgeY data[5] +#define tBounceTime data[6] + static void FortreeBridgePerStepCallback(u8 taskId) { bool8 isFortreeBridgeCur; bool8 isFortreeBridgePrev; - u8 z, flag; - s16 x, y, x2, y2; + u8 z, onBridgeElevation; + s16 x, y, prevX, prevY; s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); - switch (data[1]) + switch (tState) { - default: - break; - case 0: - data[2] = x; - data[3] = y; - if (MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y))) - { - SetLoweredForetreeBridgeMetatile(x, y); - CurrentMapDrawMetatileAt(x, y); - } - data[1] = 1; + default: + break; + case 0: + tPrevX = x; + tPrevY = y; + + // If player is already on bridge when callback is set then lower it immediately. + if (MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y))) + { + TryLowerFortreeBridge(x, y); + CurrentMapDrawMetatileAt(x, y); + } + tState = 1; + break; + case 1: + prevX = tPrevX; + prevY = tPrevY; + + // Skip if player hasn't moved + if (x == prevX && y == prevY) break; - case 1: - x2 = data[2]; - y2 = data[3]; - if (x == x2 && y == y2) - break; - - isFortreeBridgeCur = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y)); - isFortreeBridgePrev = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x2, y2)); - z = PlayerGetZCoord(); - flag = 0; - if ((u8)(z & 1) == 0) - flag = 1; - - if (flag && (isFortreeBridgeCur == 1 || isFortreeBridgePrev == 1)) - PlaySE(SE_BRIDGE_WALK); - - if (isFortreeBridgePrev) - { - SetNormalFortreeBridgeMetatile(x2, y2); - CurrentMapDrawMetatileAt(x2, y2); - SetLoweredForetreeBridgeMetatile(x, y); - CurrentMapDrawMetatileAt(x, y); - } - data[4] = x2; - data[5] = y2; - data[2] = x; - data[3] = y; - if (!isFortreeBridgePrev) - break; + isFortreeBridgeCur = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y)); + isFortreeBridgePrev = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(prevX, prevY)); + + // Make sure player isn't below bridge + z = PlayerGetZCoord(); + onBridgeElevation = FALSE; + if ((u8)(z & 1) == 0) + onBridgeElevation = TRUE; + + if (onBridgeElevation && (isFortreeBridgeCur == TRUE || isFortreeBridgePrev == TRUE)) + PlaySE(SE_BRIDGE_WALK); + + // Because this doesn't check for isFortreeBridgeCur, bridge sections aren't + // lowered when first stepping onto them from anything other than another bridge. + #ifdef BUGFIX + if (isFortreeBridgePrev || isFortreeBridgeCur) + #else + if (isFortreeBridgePrev) + #endif + { + // Raise old bridge + TryRaiseFortreeBridge(prevX, prevY); + CurrentMapDrawMetatileAt(prevX, prevY); + + // Lower new bridge + TryLowerFortreeBridge(x, y); + CurrentMapDrawMetatileAt(x, y); + } + + // These should really be set below the !isFortreeBridgePrev conditional, + // but it doesn't matter because it's not read until case 2 anyway. + tOldBridgeX = prevX; + tOldBridgeY = prevY; + + tPrevX = x; + tPrevY = y; + if (!isFortreeBridgePrev) + break; - data[6] = 16; - data[1] = 2; - // fallthrough + tBounceTime = 16; + tState = 2; + // fallthrough + case 2: + tBounceTime--; + prevX = tOldBridgeX; + prevY = tOldBridgeY; + switch (tBounceTime % 7) + { + case 0: + CurrentMapDrawMetatileAt(prevX, prevY); + case 1: case 2: - data[6]--; - x2 = data[4]; - y2 = data[5]; - switch (data[6] % 7) - { - case 0: - CurrentMapDrawMetatileAt(x2, y2); - case 1: - case 2: - case 3: - break; - case 4: - SetLoweredForetreeBridgeMetatile(x2, y2); - CurrentMapDrawMetatileAt(x2, y2); - SetNormalFortreeBridgeMetatile(x2, y2); - case 5: - case 6: - case 7: - break; - } - if (data[6] == 0) - { - data[1] = 1; - } + case 3: break; + case 4: + // Bounce bridge section that player has stepped off of + TryLowerFortreeBridge(prevX, prevY); + CurrentMapDrawMetatileAt(prevX, prevY); + TryRaiseFortreeBridge(prevX, prevY); + case 5: + case 6: + case 7: // Not possible with % 7 + break; + } + if (tBounceTime == 0) + tState = 1; + break; } } +#undef tState +#undef tPrevX +#undef tPrevY +#undef tOldBridgeX +#undef tOldBridgeY +#undef tBounceTime + +// Boundaries of the ice puzzle in Sootopolis Gym +#define ICE_PUZZLE_L 3 +#define ICE_PUZZLE_R 13 +#define ICE_PUZZLE_T 6 +#define ICE_PUZZLE_B 19 + +#define ICE_PUZZLE_WIDTH (ICE_PUZZLE_R - ICE_PUZZLE_L + 1) +#define ICE_PUZZLE_HEIGHT (ICE_PUZZLE_B - ICE_PUZZLE_T + 1) + static bool32 CoordInIcePuzzleRegion(s16 x, s16 y) { - if ((u16)(x - 3) < 11 && (u16)(y - 6) < 14 && sSootopolisGymIceRowVars[y]) + if ((u16)(x - ICE_PUZZLE_L) < ICE_PUZZLE_WIDTH + && (u16)(y - ICE_PUZZLE_T) < ICE_PUZZLE_HEIGHT + && sSootopolisGymIceRowVars[y]) return TRUE; else return FALSE; @@ -503,17 +615,17 @@ static bool32 CoordInIcePuzzleRegion(s16 x, s16 y) static void MarkIcePuzzleCoordVisited(s16 x, s16 y) { if (CoordInIcePuzzleRegion(x, y)) - *GetVarPointer(sSootopolisGymIceRowVars[y]) |= (1 << (x - 3)); + *GetVarPointer(sSootopolisGymIceRowVars[y]) |= (1 << (x - ICE_PUZZLE_L)); } static bool32 IsIcePuzzleCoordVisited(s16 x, s16 y) { - u32 var; + u16 var; if (!CoordInIcePuzzleRegion(x, y)) return FALSE; - var = VarGet(sSootopolisGymIceRowVars[y]) << 16; - if ((0x10000 << (x - 3)) & var) // TODO: fix that if + var = VarGet(sSootopolisGymIceRowVars[y]); + if (var &= (1 << (x - ICE_PUZZLE_L))) return TRUE; else return FALSE; @@ -534,116 +646,155 @@ void SetSootopolisGymCrackedIceMetatiles(void) } } +#define tState data[1] +#define tPrevX data[2] +#define tPrevY data[3] +#define tIceX data[4] +#define tIceY data[5] +#define tDelay data[6] + static void SootopolisGymIcePerStepCallback(u8 taskId) { s16 x, y; u16 tileBehavior; u16 *iceStepCount; s16 *data = gTasks[taskId].data; - switch (data[1]) + switch (tState) { - case 0: - PlayerGetDestCoords(&x, &y); - data[2] = x; - data[3] = y; - data[1] = 1; - break; - case 1: - PlayerGetDestCoords(&x, &y); - if (x != data[2] || y != data[3]) - { - data[2] = x; - data[3] = y; - tileBehavior = MapGridGetMetatileBehaviorAt(x, y); - iceStepCount = GetVarPointer(VAR_ICE_STEP_COUNT); - if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE) - { - (*iceStepCount)++; - data[6] = 4; - data[1] = 2; - data[4] = x; - data[5] = y; - } - else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE) - { - *iceStepCount = 0; - data[6] = 4; - data[1] = 3; - data[4] = x; - data[5] = y; - } - } - break; - case 2: - if (data[6] != 0) - { - data[6]--; - } - else - { - x = data[4]; - y = data[5]; - PlaySE(SE_ICE_CRACK); - MapGridSetMetatileIdAt(x, y, METATILE_SootopolisGym_Ice_Cracked); - CurrentMapDrawMetatileAt(x, y); - MarkIcePuzzleCoordVisited(x - MAP_OFFSET, y - MAP_OFFSET); - data[1] = 1; - } - break; - case 3: - if (data[6] != 0) - { - data[6]--; - } - else - { - x = data[4]; - y = data[5]; - PlaySE(SE_ICE_BREAK); - MapGridSetMetatileIdAt(x, y, METATILE_SootopolisGym_Ice_Broken); - CurrentMapDrawMetatileAt(x, y); - data[1] = 1; - } - break; + case 0: + PlayerGetDestCoords(&x, &y); + tPrevX = x; + tPrevY = y; + tState = 1; + break; + case 1: + PlayerGetDestCoords(&x, &y); + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + tileBehavior = MapGridGetMetatileBehaviorAt(x, y); + iceStepCount = GetVarPointer(VAR_ICE_STEP_COUNT); + if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE) + { + // Thin ice, set it to cracked ice + (*iceStepCount)++; + tDelay = 4; + tState = 2; + tIceX = x; + tIceY = y; + } + else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE) + { + // Cracked ice, set it to broken ice + *iceStepCount = 0; + tDelay = 4; + tState = 3; + tIceX = x; + tIceY = y; + } + break; + case 2: + if (tDelay != 0) + { + tDelay--; + } + else + { + // Crack ice + x = tIceX; + y = tIceY; + PlaySE(SE_ICE_CRACK); + MapGridSetMetatileIdAt(x, y, METATILE_SootopolisGym_Ice_Cracked); + CurrentMapDrawMetatileAt(x, y); + MarkIcePuzzleCoordVisited(x - MAP_OFFSET, y - MAP_OFFSET); + tState = 1; + } + break; + case 3: + if (tDelay != 0) + { + tDelay--; + } + else + { + // Break ice + x = tIceX; + y = tIceY; + PlaySE(SE_ICE_BREAK); + MapGridSetMetatileIdAt(x, y, METATILE_SootopolisGym_Ice_Broken); + CurrentMapDrawMetatileAt(x, y); + tState = 1; + } + break; } } +#undef tState +#undef tPrevX +#undef tPrevY +#undef tIceX +#undef tIceY +#undef tDelay + +#define tPrevX data[1] +#define tPrevY data[2] + static void AshGrassPerStepCallback(u8 taskId) { s16 x, y; u16 *ashGatherCount; s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); - if (x != data[1] || y != data[2]) + + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + if (MetatileBehavior_IsAshGrass(MapGridGetMetatileBehaviorAt(x, y))) { - data[1] = x; - data[2] = y; - if (MetatileBehavior_IsAshGrass(MapGridGetMetatileBehaviorAt(x, y))) - { - if (MapGridGetMetatileIdAt(x, y) == METATILE_Fallarbor_AshGrass) - StartAshFieldEffect(x, y, METATILE_Fallarbor_NormalGrass, 4); - else - StartAshFieldEffect(x, y, METATILE_Lavaridge_NormalGrass, 4); + // Remove ash from grass + if (MapGridGetMetatileIdAt(x, y) == METATILE_Fallarbor_AshGrass) + StartAshFieldEffect(x, y, METATILE_Fallarbor_NormalGrass, 4); + else + StartAshFieldEffect(x, y, METATILE_Lavaridge_NormalGrass, 4); - if (CheckBagHasItem(ITEM_SOOT_SACK, 1)) - { - ashGatherCount = GetVarPointer(VAR_ASH_GATHER_COUNT); - if (*ashGatherCount < 9999) - (*ashGatherCount)++; - } + // Try to gather ash + if (CheckBagHasItem(ITEM_SOOT_SACK, 1)) + { + ashGatherCount = GetVarPointer(VAR_ASH_GATHER_COUNT); + if (*ashGatherCount < 9999) + (*ashGatherCount)++; } } } +#undef tPrevX +#undef tPrevY + // This function uses the constants for gTileset_Cave's metatile labels, but other tilesets with // the CrackedFloorPerStepCallback callback use the same metatile numbers for the cracked floor // and hole metatiles, such as gTileset_MirageTower. static void SetCrackedFloorHoleMetatile(s16 x, s16 y) { - MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == METATILE_Cave_CrackedFloor ? METATILE_Cave_CrackedFloor_Hole : METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole); + u16 metatileId = MapGridGetMetatileIdAt(x, y) == METATILE_Cave_CrackedFloor ? METATILE_Cave_CrackedFloor_Hole : METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole; + MapGridSetMetatileIdAt(x, y, metatileId); CurrentMapDrawMetatileAt(x, y); } +#define tPrevX data[2] +#define tPrevY data[3] +#define tFloor1Delay data[4] +#define tFloor1X data[5] +#define tFloor1Y data[6] +#define tFloor2Delay data[7] +#define tFloor2X data[8] +#define tFloor2Y data[9] + static void CrackedFloorPerStepCallback(u8 taskId) { s16 x, y; @@ -651,113 +802,153 @@ static void CrackedFloorPerStepCallback(u8 taskId) s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); behavior = MapGridGetMetatileBehaviorAt(x, y); - if (data[4] != 0 && (--data[4]) == 0) - SetCrackedFloorHoleMetatile(data[5], data[6]); - if (data[7] != 0 && (--data[7]) == 0) - SetCrackedFloorHoleMetatile(data[8], data[9]); + // Update up to 2 previous cracked floor spaces + if (tFloor1Delay != 0 && (--tFloor1Delay) == 0) + SetCrackedFloorHoleMetatile(tFloor1X, tFloor1Y); + if (tFloor2Delay != 0 && (--tFloor2Delay) == 0) + SetCrackedFloorHoleMetatile(tFloor2X, tFloor2Y); if (MetatileBehavior_IsCrackedFloorHole(behavior)) VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty - if ((x != data[2] || y != data[3])) + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + if (MetatileBehavior_IsCrackedFloor(behavior)) { - data[2] = x; - data[3] = y; - if (MetatileBehavior_IsCrackedFloor(behavior)) - { - if (GetPlayerSpeed() != 4) - VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty + if (GetPlayerSpeed() != BIKE_SPEED_FASTEST) + VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty - if (data[4] == 0) - { - data[4] = 3; - data[5] = x; - data[6] = y; - } - else if (data[7] == 0) - { - data[7] = 3; - data[8] = x; - data[9] = y; - } + if (tFloor1Delay == 0) + { + tFloor1Delay = 3; + tFloor1X = x; + tFloor1Y = y; + } + else if (tFloor2Delay == 0) + { + tFloor2Delay = 3; + tFloor2X = x; + tFloor2Y = y; } } } +#undef tPrevX +#undef tPrevY +#undef tFloor1Delay +#undef tFloor1X +#undef tFloor1Y +#undef tFloor2Delay +#undef tFloor2X +#undef tFloor2Y + +#define tMapId data[0] +#define tState data[1] +#define tPrevX data[2] +#define tPrevY data[3] +// data[4] - data[15] are data about up to 4 individual animating muddy slope metatiles +// They're divided into groups of 3, i.e data[4]-[6] track one metatile, data[7]-[9] another, and so on. +// For each data triplet, the 1sst is the animation time, and the 2nd/3rd are the x/y coordinates. +#define SLOPE_DATA_START 4 +#define SLOPE_DATA_END (3 * SLOPE_DATA_SIZE + SLOPE_DATA_START) // 13, which is the last slope data start point +enum { + SLOPE_TIME, + SLOPE_X, + SLOPE_Y, + SLOPE_DATA_SIZE +}; +#define tSlopeAnimTime(i) data[(i) * SLOPE_DATA_SIZE + SLOPE_DATA_START + SLOPE_TIME] + +static const u16 sMuddySlopeMetatiles[] = { + METATILE_General_MuddySlope_Frame0, + METATILE_General_MuddySlope_Frame3, + METATILE_General_MuddySlope_Frame2, + METATILE_General_MuddySlope_Frame1 +}; + +#define SLOPE_ANIM_TIME 32 +#define SLOPE_ANIM_STEP_TIME (SLOPE_ANIM_TIME / (int)ARRAY_COUNT(sMuddySlopeMetatiles)) + static void SetMuddySlopeMetatile(s16 *data, s16 x, s16 y) { - u16 tile; - if ((--data[0]) == 0) - tile = METATILE_General_MuddySlope_Frame0; + u16 metatileId; + if ((--data[SLOPE_TIME]) == 0) + metatileId = METATILE_General_MuddySlope_Frame0; else - tile = sMuddySlopeMetatiles[data[0] / 8]; + metatileId = sMuddySlopeMetatiles[data[SLOPE_TIME] / SLOPE_ANIM_STEP_TIME]; - MapGridSetMetatileIdAt(x, y, tile); + MapGridSetMetatileIdAt(x, y, metatileId); CurrentMapDrawMetatileAt(x, y); MapGridSetMetatileIdAt(x, y, METATILE_General_MuddySlope_Frame0); } static void Task_MuddySlope(u8 taskId) { - s16 x, y, x2, y2; + s16 x, y, cameraOffsetX, cameraOffsetY; int i; u16 mapId; s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); mapId = (gSaveBlock1Ptr->location.mapGroup << 8) | gSaveBlock1Ptr->location.mapNum; - switch (data[1]) + switch (tState) { - case 0: - data[0] = mapId; - data[2] = x; - data[3] = y; - data[1] = 1; - data[4] = 0; - data[7] = 0; - data[10] = 0; - data[13] = 0; + case 0: + tMapId = mapId; + tPrevX = x; + tPrevY = y; + tState = 1; + tSlopeAnimTime(0) = 0; + tSlopeAnimTime(1) = 0; + tSlopeAnimTime(2) = 0; + tSlopeAnimTime(3) = 0; + break; + case 1: + // Skip if player hasn't moved + if (tPrevX == x && tPrevY == y) break; - case 1: - if (data[2] != x || data[3] != y) + + tPrevX = x; + tPrevY = y; + if (MetatileBehavior_IsMuddySlope(MapGridGetMetatileBehaviorAt(x, y))) + { + for (i = SLOPE_DATA_START; i <= SLOPE_DATA_END; i += SLOPE_DATA_SIZE) { - data[2] = x; - data[3] = y; - if (MetatileBehavior_IsMuddySlope(MapGridGetMetatileBehaviorAt(x, y))) + if (data[i] == 0) { - for (i = 4; i < 14; i += 3) - { - if (data[i] == 0) - { - data[i] = 32; - data[i + 1] = x; - data[i + 2] = y; - break; - } - } + data[i + SLOPE_TIME] = SLOPE_ANIM_TIME; + data[i + SLOPE_X] = x; + data[i + SLOPE_Y] = y; + break; } } - break; + } + break; } - if (gCamera.active && mapId != data[0]) + + if (gCamera.active && mapId != tMapId) { - data[0] = mapId; - x2 = gCamera.x; - y2 = gCamera.y; + tMapId = mapId; + cameraOffsetX = gCamera.x; + cameraOffsetY = gCamera.y; } else { - x2 = 0; - y2 = 0; + cameraOffsetX = 0; + cameraOffsetY = 0; } - for (i = 4; i < 14; i += 3) + for (i = SLOPE_DATA_START; i <= SLOPE_DATA_END; i += SLOPE_DATA_SIZE) { - if (data[i]) + if (data[i + SLOPE_TIME]) { - data[i + 1] -= x2; - data[i + 2] -= y2; - SetMuddySlopeMetatile(&data[i], data[i + 1], data[i + 2]); + data[i + SLOPE_X] -= cameraOffsetX; + data[i + SLOPE_Y] -= cameraOffsetY; + SetMuddySlopeMetatile(&data[i + SLOPE_TIME], data[i + SLOPE_X], data[i + SLOPE_Y]); } } } diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index ad5eb42ccd9c..6b58e3f05b5c 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -126,10 +126,10 @@ static const u8 sTileBitAttributes[] = [MB_BRIDGE_OVER_POND_LOW] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_BRIDGE_OVER_POND_MED] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_BRIDGE_OVER_POND_HIGH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_VERTICAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_VERTICAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_HORIZONTAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_HORIZONTAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_PACIFIDLOG_VERTICAL_LOG_TOP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_FORTREE_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_UNUSED_79] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), @@ -1131,33 +1131,33 @@ bool8 MetatileBehavior_IsFortreeBridge(u8 metatileBehavior) return FALSE; } -bool8 MetatileBehavior_IsPacifidlogVerticalLog1(u8 metatileBehavior) +bool8 MetatileBehavior_IsPacifidlogVerticalLogTop(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_1) + if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_TOP) return TRUE; else return FALSE; } -bool8 MetatileBehavior_IsPacifidlogVerticalLog2(u8 metatileBehavior) +bool8 MetatileBehavior_IsPacifidlogVerticalLogBottom(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_2) + if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM) return TRUE; else return FALSE; } -bool8 MetatileBehavior_IsPacifidlogHorizontalLog1(u8 metatileBehavior) +bool8 MetatileBehavior_IsPacifidlogHorizontalLogLeft(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_1) + if (metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT) return TRUE; else return FALSE; } -bool8 MetatileBehavior_IsPacifidlogHorizontalLog2(u8 metatileBehavior) +bool8 MetatileBehavior_IsPacifidlogHorizontalLogRight(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_2) + if (metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT) return TRUE; else return FALSE; @@ -1165,10 +1165,10 @@ bool8 MetatileBehavior_IsPacifidlogHorizontalLog2(u8 metatileBehavior) bool8 MetatileBehavior_IsPacifidlogLog(u8 metatileBehavior) { - if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_1 - || metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_2 - || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_1 - || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_2) + if (metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_TOP + || metatileBehavior == MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM + || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT + || metatileBehavior == MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT) return TRUE; else return FALSE; diff --git a/src/secret_base.c b/src/secret_base.c index f971e24f67c2..8fc97141fce3 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1214,108 +1214,107 @@ void SecretBasePerStepCallback(u8 taskId) tState = 1; break; case 1: + // End if player hasn't moved PlayerGetDestCoords(&x, &y); - if (x != tPlayerX || y != tPlayerY) + if (x == tPlayerX && y == tPlayerY) + return; + + tPlayerX = x; + tPlayerY = y; + VarSet(VAR_SECRET_BASE_STEP_COUNTER, VarGet(VAR_SECRET_BASE_STEP_COUNTER) + 1); + behavior = MapGridGetMetatileBehaviorAt(x, y); + tileId = MapGridGetMetatileIdAt(x, y); + if (tileId == METATILE_SecretBase_SolidBoard_Top || tileId == METATILE_SecretBase_SolidBoard_Bottom) { - tPlayerX = x; - tPlayerY = y; - VarSet(VAR_SECRET_BASE_STEP_COUNTER, VarGet(VAR_SECRET_BASE_STEP_COUNTER) + 1); - behavior = MapGridGetMetatileBehaviorAt(x, y); - tileId = MapGridGetMetatileIdAt(x, y); - if (tileId == METATILE_SecretBase_SolidBoard_Top || tileId == METATILE_SecretBase_SolidBoard_Bottom) - { - if (sInFriendSecretBase == TRUE) - { - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SOLID_BOARD); - } - } - else if (tileId == METATILE_SecretBase_SmallChair - || tileId == METATILE_SecretBase_PokemonChair - || tileId == METATILE_SecretBase_HeavyChair - || tileId == METATILE_SecretBase_PrettyChair - || tileId == METATILE_SecretBase_ComfortChair - || tileId == METATILE_SecretBase_RaggedChair - || tileId == METATILE_SecretBase_BrickChair - || tileId == METATILE_SecretBase_CampChair - || tileId == METATILE_SecretBase_HardChair) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_CHAIR); - } - else if (tileId == METATILE_SecretBase_RedTent_DoorTop - || tileId == METATILE_SecretBase_RedTent_Door - || tileId == METATILE_SecretBase_BlueTent_DoorTop - || tileId == METATILE_SecretBase_BlueTent_Door) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_TENT); - } - else if ((behavior == MB_IMPASSABLE_NORTHEAST && tileId == METATILE_SecretBase_Stand_CornerRight) - || (behavior == MB_IMPASSABLE_NORTHWEST && MapGridGetMetatileIdAt(x, y) == METATILE_SecretBase_Stand_CornerLeft)) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_STAND); - } - else if (behavior == MB_IMPASSABLE_WEST_AND_EAST && tileId == METATILE_SecretBase_Slide_StairLanding) - { - if (sInFriendSecretBase == TRUE) - { - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) ^ SECRET_BASE_USED_SLIDE); - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_DECLINED_SLIDE); - } - } - else if (behavior == MB_SLIDE_SOUTH && tileId == METATILE_SecretBase_Slide_SlideTop) + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SOLID_BOARD); + } + else if (tileId == METATILE_SecretBase_SmallChair + || tileId == METATILE_SecretBase_PokemonChair + || tileId == METATILE_SecretBase_HeavyChair + || tileId == METATILE_SecretBase_PrettyChair + || tileId == METATILE_SecretBase_ComfortChair + || tileId == METATILE_SecretBase_RaggedChair + || tileId == METATILE_SecretBase_BrickChair + || tileId == METATILE_SecretBase_CampChair + || tileId == METATILE_SecretBase_HardChair) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_CHAIR); + } + else if (tileId == METATILE_SecretBase_RedTent_DoorTop + || tileId == METATILE_SecretBase_RedTent_Door + || tileId == METATILE_SecretBase_BlueTent_DoorTop + || tileId == METATILE_SecretBase_BlueTent_Door) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_TENT); + } + else if ((behavior == MB_IMPASSABLE_NORTHEAST && tileId == METATILE_SecretBase_Stand_CornerRight) + || (behavior == MB_IMPASSABLE_NORTHWEST && MapGridGetMetatileIdAt(x, y) == METATILE_SecretBase_Stand_CornerLeft)) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_STAND); + } + else if (behavior == MB_IMPASSABLE_WEST_AND_EAST && tileId == METATILE_SecretBase_Slide_StairLanding) + { + if (sInFriendSecretBase == TRUE) { - if (sInFriendSecretBase == TRUE) - { - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SLIDE); - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) ^ SECRET_BASE_DECLINED_SLIDE); - } + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) ^ SECRET_BASE_USED_SLIDE); + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_DECLINED_SLIDE); } - else if (MetatileBehavior_IsSecretBaseGlitterMat(behavior) == TRUE) + } + else if (behavior == MB_SLIDE_SOUTH && tileId == METATILE_SecretBase_Slide_SlideTop) + { + if (sInFriendSecretBase == TRUE) { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_GLITTER_MAT); + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SLIDE); + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) ^ SECRET_BASE_DECLINED_SLIDE); } - else if (MetatileBehavior_IsSecretBaseBalloon(behavior) == TRUE) + } + else if (MetatileBehavior_IsSecretBaseGlitterMat(behavior) == TRUE) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_GLITTER_MAT); + } + else if (MetatileBehavior_IsSecretBaseBalloon(behavior) == TRUE) + { + PopSecretBaseBalloon(MapGridGetMetatileIdAt(x, y), x, y); + if (sInFriendSecretBase == TRUE) { - PopSecretBaseBalloon(MapGridGetMetatileIdAt(x, y), x, y); - if (sInFriendSecretBase == TRUE) + switch ((int)MapGridGetMetatileIdAt(x, y)) { - switch ((int)MapGridGetMetatileIdAt(x, y)) - { - case METATILE_SecretBase_RedBalloon: - case METATILE_SecretBase_BlueBalloon: - case METATILE_SecretBase_YellowBalloon: - VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_BALLOON); - break; - case METATILE_SecretBase_MudBall: - VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_MUD_BALL); - break; - } + case METATILE_SecretBase_RedBalloon: + case METATILE_SecretBase_BlueBalloon: + case METATILE_SecretBase_YellowBalloon: + VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_BALLOON); + break; + case METATILE_SecretBase_MudBall: + VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_MUD_BALL); + break; } } - else if (MetatileBehavior_IsSecretBaseBreakableDoor(behavior) == TRUE) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_BREAKABLE_DOOR); + } + else if (MetatileBehavior_IsSecretBaseBreakableDoor(behavior) == TRUE) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_BREAKABLE_DOOR); - ShatterSecretBaseBreakableDoor(x, y); - } - else if (MetatileBehavior_IsSecretBaseSoundMat(behavior) == TRUE){ - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_NOTE_MAT); - } - else if (MetatileBehavior_IsSecretBaseJumpMat(behavior) == TRUE) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_JUMP_MAT); - } - else if (MetatileBehavior_IsSecretBaseSpinMat(behavior) == TRUE) - { - if (sInFriendSecretBase == TRUE) - VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SPIN_MAT); - } + ShatterSecretBaseBreakableDoor(x, y); + } + else if (MetatileBehavior_IsSecretBaseSoundMat(behavior) == TRUE){ + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_LOW_TV_FLAGS, VarGet(VAR_SECRET_BASE_LOW_TV_FLAGS) | SECRET_BASE_USED_NOTE_MAT); + } + else if (MetatileBehavior_IsSecretBaseJumpMat(behavior) == TRUE) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_JUMP_MAT); + } + else if (MetatileBehavior_IsSecretBaseSpinMat(behavior) == TRUE) + { + if (sInFriendSecretBase == TRUE) + VarSet(VAR_SECRET_BASE_HIGH_TV_FLAGS, VarGet(VAR_SECRET_BASE_HIGH_TV_FLAGS) | SECRET_BASE_USED_SPIN_MAT); } break; case 2: From ec97a21f95c82f3ec8c6c42de5e71dbdf80f4049 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 15:04:42 -0500 Subject: [PATCH 436/762] Fix calcrom's handling of 0s --- .github/calcrom/calcrom.pl | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/calcrom/calcrom.pl b/.github/calcrom/calcrom.pl index 37ebcb4d2035..9fbd959945d8 100755 --- a/.github/calcrom/calcrom.pl +++ b/.github/calcrom/calcrom.pl @@ -104,16 +104,19 @@ # Performing addition on a string converts it to a number. Any string that fails # to convert to a number becomes 0. So if our converted number is 0, but our string # is nonzero, then the conversion was an error. +$undocumented_as_string =~ s/^\s+|\s+$//g; my $undocumented = $undocumented_as_string + 0; -(($undocumented != 0) and ($undocumented_as_string ne "0")) +(($undocumented != 0) or (($undocumented == 0) and ($undocumented_as_string eq "0"))) or die "ERROR: Cannot convert string to num: '$undocumented_as_string'"; +$partial_documented_as_string =~ s/^\s+|\s+$//g; my $partial_documented = $partial_documented_as_string + 0; -(($partial_documented != 0) and ($partial_documented_as_string ne "0")) +(($partial_documented != 0) or (($partial_documented == 0) and ($partial_documented_as_string eq "0"))) or die "ERROR: Cannot convert string to num: '$partial_documented_as_string'"; +$total_syms_as_string =~ s/^\s+|\s+$//g; my $total_syms = $total_syms_as_string + 0; -(($total_syms != 0) and ($total_syms_as_string ne "0")) +(($total_syms != 0) or (($total_syms == 0) and ($total_syms_as_string eq "0"))) or die "ERROR: Cannot convert string to num: '$total_syms_as_string'"; ($total_syms != 0) From c1970a4bc827cffbaccdd8af11ecd054f6a5728f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 15:47:47 -0500 Subject: [PATCH 437/762] Remove dead sub references --- asm/macros/battle_ai_script.inc | 20 ++++++++++---------- gflib/sprite.h | 1 - include/battle_anim.h | 2 -- include/field_control_avatar.h | 6 ------ include/field_screen_effect.h | 1 - include/field_special_scene.h | 1 - include/mauville_old_man.h | 2 -- src/pokeball.c | 2 +- 8 files changed, 11 insertions(+), 24 deletions(-) diff --git a/asm/macros/battle_ai_script.inc b/asm/macros/battle_ai_script.inc index 4c7646d6f6e4..5341e5a4311c 100644 --- a/asm/macros/battle_ai_script.inc +++ b/asm/macros/battle_ai_script.inc @@ -251,11 +251,11 @@ .4byte \param1 .endm - .macro nullsub_2A + .macro nop_2A .byte 0x2a .endm - .macro nullsub_2B + .macro nop_2B .byte 0x2b .endm @@ -287,11 +287,11 @@ .4byte \param1 .endm - .macro nullsub_32 + .macro nop_32 .byte 0x32 .endm - .macro nullsub_33 + .macro nop_33 .byte 0x33 .endm @@ -467,27 +467,27 @@ .byte \battler .endm - .macro nullsub_52 + .macro nop_52 .byte 0x52 .endm - .macro nullsub_53 + .macro nop_53 .byte 0x53 .endm - .macro nullsub_54 + .macro nop_54 .byte 0x54 .endm - .macro nullsub_55 + .macro nop_55 .byte 0x55 .endm - .macro nullsub_56 + .macro nop_56 .byte 0x56 .endm - .macro nullsub_57 + .macro nop_57 .byte 0x57 .endm diff --git a/gflib/sprite.h b/gflib/sprite.h index 595ecd7dbd9a..e53737981b2d 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -281,7 +281,6 @@ void FreeSpriteTiles(struct Sprite *sprite); void FreeSpritePalette(struct Sprite *sprite); void FreeSpriteOamMatrix(struct Sprite *sprite); void DestroySpriteAndFreeResources(struct Sprite *sprite); -void sub_800142C(u32 a1, u32 a2, u16 *a3, u16 a4, u32 a5); void AnimateSprite(struct Sprite *sprite); void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y); void StartSpriteAnim(struct Sprite *sprite, u8 animNum); diff --git a/include/battle_anim.h b/include/battle_anim.h index 8745b0d26434..d8b2cd4dbcfe 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -112,7 +112,6 @@ void GetBattleAnimBg1Data(struct BattleAnimBgData*); void GetBattleAnimBgData(struct BattleAnimBgData*, u32 arg1); u8 GetBattlerSpriteSubpriority(u8 battlerId); bool8 TranslateAnimHorizontalArc(struct Sprite *sprite); -void sub_80A6630(struct Sprite *sprite); void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite); void ResetSpriteRotScale(u8 spriteId); void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation); @@ -129,7 +128,6 @@ void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const vo void AnimLoadCompressedBgGfx(u32, const u32*, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircle(struct Sprite *); -void sub_80A653C(struct Sprite *); void SetBattlerSpriteYOffsetFromYScale(u8 spriteId); void PrepareEruptAnimTaskData(struct Task *task, u8 a2, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7); u8 UpdateEruptAnimTask(struct Task *task); diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h index 17e5afb63e62..e02fcd5afe0c 100644 --- a/include/field_control_avatar.h +++ b/include/field_control_avatar.h @@ -25,15 +25,9 @@ struct FieldInput void FieldClearPlayerInput(struct FieldInput *pStruct); void FieldGetPlayerInput(struct FieldInput *pStruct, u16 keys, u16 heldKeys); int ProcessPlayerFieldInput(struct FieldInput *pStruct); -u8 *sub_80682A8(struct MapPosition *, u8, u8); void overworld_poison_timer_set(void); void RestartWildEncounterImmunitySteps(void); -u8 *sub_8068E24(struct MapPosition *); const u8 *GetObjectEventScriptPointerPlayerFacing(void); -bool8 sub_8068870(u16 a); -bool8 sub_8068894(void); -bool8 sub_8068A64(struct MapPosition *, u16); -u8 sub_8068F18(void); bool8 TryDoDiveWarp(struct MapPosition *position, u16 b); int SetCableClubWarp(void); u8 TrySetDiveWarp(void); diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h index 5a2e424785b3..973e06ef305c 100644 --- a/include/field_screen_effect.h +++ b/include/field_screen_effect.h @@ -39,7 +39,6 @@ void DoSpinEnterWarp(void); void DoSpinExitWarp(void); void DoOrbEffect(void); void FadeOutOrbEffect(void); -void sub_80B05B4(void); void WriteFlashScanlineEffectBuffer(u8 flashLevel); bool8 IsPlayerStandingStill(void); diff --git a/include/field_special_scene.h b/include/field_special_scene.h index a54b344d9b9f..3f701f41bf05 100644 --- a/include/field_special_scene.h +++ b/include/field_special_scene.h @@ -9,7 +9,6 @@ void Task_Truck3(u8 taskId); void Task_HandleTruckSequence(u8 taskId); void ExecuteTruckSequence(void); void EndTruckSequence(u8); -void sub_80C791C(void); void FieldCB_ShowPortholeView(void); #endif // GUARD_FIELD_SPECIAL_SCENE_H diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h index 23a3cabfb45c..b22294f1bef5 100644 --- a/include/mauville_old_man.h +++ b/include/mauville_old_man.h @@ -6,9 +6,7 @@ extern struct BardSong gBardSong; void SetMauvilleOldMan(void); u8 GetCurrentMauvilleOldMan(void); void SetMauvilleOldManObjEventGfx(void); -u8 sub_81201C8(void); void SanitizeMauvilleOldManForRuby(OldMan *dest); -void sub_8120670(void); void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 r1, u32 r6); void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 unused, u32 a2); void ResetMauvilleOldManFlag(void); diff --git a/src/pokeball.c b/src/pokeball.c index 501d86ca3569..cb68d6883367 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1138,7 +1138,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) sprite->callback = SpriteCB_TradePokeballSendOff; #ifdef BUGFIX // FIX: If this is used on a sprite that has previously had an affine animation, it will not - // play the shrink anim properly due to being paused. Works together with the fix to `sub_817F77C`. + // play the shrink anim properly due to being paused. Works together with the fix to ResetSpriteAfterAnim. gSprites[monSpriteId].affineAnimPaused = FALSE; #endif // BUGFIX StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_RETURN); From 700425ef5fcdd5114fb76e362f745f558084638b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 15:52:04 -0500 Subject: [PATCH 438/762] Index sMapHealLocations --- src/region_map.c | 100 +++++++++++++++++++++++------------------------ 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/src/region_map.c b/src/region_map.c index 7a44efd1047a..dd63b1d83dcc 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -294,56 +294,56 @@ static const u32 sFlyTargetIcons_Gfx[] = INCBIN_U32("graphics/pokenav/fly_target static const u8 sMapHealLocations[][3] = { - {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F}, - {MAP_GROUP(OLDALE_TOWN), MAP_NUM(OLDALE_TOWN), HEAL_LOCATION_OLDALE_TOWN}, - {MAP_GROUP(DEWFORD_TOWN), MAP_NUM(DEWFORD_TOWN), HEAL_LOCATION_DEWFORD_TOWN}, - {MAP_GROUP(LAVARIDGE_TOWN), MAP_NUM(LAVARIDGE_TOWN), HEAL_LOCATION_LAVARIDGE_TOWN}, - {MAP_GROUP(FALLARBOR_TOWN), MAP_NUM(FALLARBOR_TOWN), HEAL_LOCATION_FALLARBOR_TOWN}, - {MAP_GROUP(VERDANTURF_TOWN), MAP_NUM(VERDANTURF_TOWN), HEAL_LOCATION_VERDANTURF_TOWN}, - {MAP_GROUP(PACIFIDLOG_TOWN), MAP_NUM(PACIFIDLOG_TOWN), HEAL_LOCATION_PACIFIDLOG_TOWN}, - {MAP_GROUP(PETALBURG_CITY), MAP_NUM(PETALBURG_CITY), HEAL_LOCATION_PETALBURG_CITY}, - {MAP_GROUP(SLATEPORT_CITY), MAP_NUM(SLATEPORT_CITY), HEAL_LOCATION_SLATEPORT_CITY}, - {MAP_GROUP(MAUVILLE_CITY), MAP_NUM(MAUVILLE_CITY), HEAL_LOCATION_MAUVILLE_CITY}, - {MAP_GROUP(RUSTBORO_CITY), MAP_NUM(RUSTBORO_CITY), HEAL_LOCATION_RUSTBORO_CITY}, - {MAP_GROUP(FORTREE_CITY), MAP_NUM(FORTREE_CITY), HEAL_LOCATION_FORTREE_CITY}, - {MAP_GROUP(LILYCOVE_CITY), MAP_NUM(LILYCOVE_CITY), HEAL_LOCATION_LILYCOVE_CITY}, - {MAP_GROUP(MOSSDEEP_CITY), MAP_NUM(MOSSDEEP_CITY), HEAL_LOCATION_MOSSDEEP_CITY}, - {MAP_GROUP(SOOTOPOLIS_CITY), MAP_NUM(SOOTOPOLIS_CITY), HEAL_LOCATION_SOOTOPOLIS_CITY}, - {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), HEAL_LOCATION_EVER_GRANDE_CITY}, - {MAP_GROUP(ROUTE101), MAP_NUM(ROUTE101), 0}, - {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), 0}, - {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), 0}, - {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), 0}, - {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), 0}, - {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), 0}, - {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), 0}, - {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), 0}, - {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), 0}, - {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), 0}, - {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), 0}, - {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), 0}, - {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), 0}, - {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), 0}, - {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), 0}, - {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), 0}, - {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), 0}, - {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), 0}, - {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), 0}, - {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), 0}, - {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), 0}, - {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), 0}, - {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), 0}, - {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), 0}, - {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), 0}, - {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), 0}, - {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), 0}, - {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), 0}, - {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), 0}, - {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), 0}, - {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), 0}, - {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), 0}, - {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), 0}, - {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), 0} + [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), 0}, + [MAPSEC_ROUTE_102] = {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), 0}, + [MAPSEC_ROUTE_103] = {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), 0}, + [MAPSEC_ROUTE_104] = {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), 0}, + [MAPSEC_ROUTE_105] = {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), 0}, + [MAPSEC_ROUTE_106] = {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), 0}, + [MAPSEC_ROUTE_107] = {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), 0}, + [MAPSEC_ROUTE_108] = {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), 0}, + [MAPSEC_ROUTE_109] = {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), 0}, + [MAPSEC_ROUTE_110] = {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), 0}, + [MAPSEC_ROUTE_111] = {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), 0}, + [MAPSEC_ROUTE_112] = {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), 0}, + [MAPSEC_ROUTE_113] = {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), 0}, + [MAPSEC_ROUTE_114] = {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), 0}, + [MAPSEC_ROUTE_115] = {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), 0}, + [MAPSEC_ROUTE_116] = {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), 0}, + [MAPSEC_ROUTE_117] = {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), 0}, + [MAPSEC_ROUTE_118] = {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), 0}, + [MAPSEC_ROUTE_119] = {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), 0}, + [MAPSEC_ROUTE_120] = {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), 0}, + [MAPSEC_ROUTE_121] = {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), 0}, + [MAPSEC_ROUTE_122] = {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), 0}, + [MAPSEC_ROUTE_123] = {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), 0}, + [MAPSEC_ROUTE_124] = {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), 0}, + [MAPSEC_ROUTE_125] = {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), 0}, + [MAPSEC_ROUTE_126] = {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), 0}, + [MAPSEC_ROUTE_127] = {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), 0}, + [MAPSEC_ROUTE_128] = {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), 0}, + [MAPSEC_ROUTE_129] = {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), 0}, + [MAPSEC_ROUTE_130] = {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), 0}, + [MAPSEC_ROUTE_131] = {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), 0}, + [MAPSEC_ROUTE_132] = {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), 0}, + [MAPSEC_ROUTE_133] = {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), 0}, + [MAPSEC_ROUTE_134] = {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), 0} }; static const u8 *const sEverGrandeCityNames[] = From c940b6771687f7f303e2380a1994939a60e8a139 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 17:15:45 -0500 Subject: [PATCH 439/762] Continue macro comment updating --- asm/macros/event.inc | 116 +++++++++++++++++------------- data/maps/DewfordTown/scripts.inc | 16 ++--- data/maps/Route104/scripts.inc | 10 +-- data/maps/Route109/scripts.inc | 10 +-- data/script_cmd_table.inc | 6 +- data/scripts/contest_hall.inc | 2 +- include/event_object_movement.h | 4 +- src/data/lilycove_lady.h | 50 ++++++------- src/event_object_movement.c | 4 +- src/scrcmd.c | 14 ++-- 10 files changed, 124 insertions(+), 108 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 4c0bc2922ac2..057ebe3922ac 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1016,74 +1016,74 @@ @ Writes the name of the given Pokemon species to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferspeciesname out:req, species:req + .macro bufferspeciesname stringVarId:req, species:req .byte 0x7d - .byte \out + .byte \stringVarId .2byte \species .endm @ Writes the name of the species of the first Pokemon in the player's party to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferleadmonspeciesname out:req + .macro bufferleadmonspeciesname stringVarId:req .byte 0x7e - .byte \out + .byte \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. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferpartymonnick out:req, slot:req + .macro bufferpartymonnick stringVarId:req, slot:req .byte 0x7f - .byte \out + .byte \stringVarId .2byte \slot .endm @ 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. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferitemname out:req, item:req + .macro bufferitemname stringVarId:req, item:req .byte 0x80 - .byte \out + .byte \stringVarId .2byte \item .endm @ Writes the name of the specified decoration to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferdecorationname out:req, decoration:req + .macro bufferdecorationname stringVarId:req, decoration:req .byte 0x81 - .byte \out + .byte \stringVarId .2byte \decoration .endm @ Writes the name of the specified move to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro buffermovename out:req, move:req + .macro buffermovename stringVarId:req, move:req .byte 0x82 - .byte \out + .byte \stringVarId .2byte \move .endm @ Converts the value of input to a decimal string, and writes that string to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro buffernumberstring out:req, input:req + .macro buffernumberstring stringVarId:req, input:req .byte 0x83 - .byte \out + .byte \stringVarId .2byte \input .endm @ Writes the given standard string (STDSTRING_*) to the specified buffer. Invalid std string ids are not handled. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferstdstring out:req, index:req + .macro bufferstdstring stringVarId:req, index:req .byte 0x84 - .byte \out + .byte \stringVarId .2byte \index .endm @ Copies the string at the given pointer to the specified buffer. @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 - .macro bufferstring out:req, text:req + .macro bufferstring stringVarId:req, text:req .byte 0x85 - .byte \out + .byte \stringVarId .4byte \text .endm @@ -1298,25 +1298,30 @@ .byte 0xa5 .endm - @ - .macro setstepcallback subroutine:req + @ 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 \subroutine + .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 .2byte \index .endm - .macro setobjectpriority localId:req, map:req, priority:req + @ 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 .2byte \localId map \map - .byte \priority + .byte \subpriority .endm - .macro resetobjectpriority localId:req, map:req + @ Sets the specified object's fixedPriority to FALSE. Does not change the subpriority field. + .macro resetobjectsubpriority localId:req, map:req .byte 0xa9 .2byte \localId map \map @@ -1357,14 +1362,14 @@ .byte 0xae .endm - @ Sets the door tile at (x, y) to be open without an animation. + @ Sets the door metatile at (x, y) to be open without an animation. .macro setdooropen x:req, y:req .byte 0xaf .2byte \x .2byte \y .endm - @ Sets the door tile at (x, y) to be closed without an animation. + @ Sets the door metatile at (x, y) to be closed without an animation. .macro setdoorclosed x:req, y:req .byte 0xb0 .2byte \x @@ -1463,21 +1468,21 @@ .4byte \pointer .endm - @ Spawns a secondary box showing how many Coins the player has. + @ Create a window showing how many Coins the player has. .macro showcoinsbox x:req, y:req .byte 0xc0 .byte \x .byte \y .endm - @ Hides the secondary box spawned by showcoins. It consumes its arguments but doesn't use them. + @ Destroys the window created by showcoins. It consumes its arguments but doesn't use them. .macro hidecoinsbox x:req, y:req .byte 0xc1 .byte \x .byte \y .endm - @ Updates the secondary box spawned by showcoins. It consumes its arguments but doesn't use them. + @ Updates the window created by showcoins. It consumes its arguments but doesn't use them. .macro updatecoinsbox x:req, y:req .byte 0xc2 .byte \x @@ -1504,9 +1509,10 @@ .endm @ Writes the name of the specified (box) PC box to the specified buffer. - .macro bufferboxname out:req, box:req + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 + .macro bufferboxname stringVarId:req, box:req .byte 0xc6 - .byte \out + .byte \stringVarId .2byte \box .endm @@ -1583,27 +1589,27 @@ .byte \location .endm - @ For the rotating tile puzzles in Mossdeep Gym/Trick House Room 7. Moves the objects on the colored puzzle - @ specified by puzzleNumber one rotation + @ 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 .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 + @ 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 .endm - @ For the rotating tile puzzles in Mossdeep Gym/Trick House Room 7. Allocates memory for the puzzle objects. + @ 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. + @ the puzzle tiles start (TRUE for Trick House Room, FALSE for Mossdeep Gym). .macro initrotatingtilepuzzle isTrickHouse:req .byte 0xd5 .2byte \isTrickHouse .endm - @ For the rotating tile puzzles in Mossdeep Gym/Trick House Room 7. Frees the memory allocated for the puzzle objects. + @ For the rotating tile puzzles in Mossdeep Gym / Trick House Room 7. Frees the memory allocated for the puzzle objects. .macro freerotatingtilepuzzle .byte 0xd6 .endm @@ -1623,6 +1629,7 @@ .byte 0xd9 .endm + @ Destroys the window created by braillemessage. .macro closebraillemessage .byte 0xda .endm @@ -1637,21 +1644,26 @@ .byte \mode .endm - .macro buffertrainerclassname out:req, class:req + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 + .macro buffertrainerclassname stringVarId:req, class:req .byte 0xdd - .byte \out + .byte \stringVarId .2byte \class .endm - .macro buffertrainername out:req, trainer:req + @ 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. + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 + .macro buffertrainername stringVarId:req, trainerId:req .byte 0xde - .byte \out - .2byte \trainer + .byte \stringVarId + .2byte \trainerId .endm - .macro pokenavcall pointer:req + @ Starts a Pokenav call with the given text. + .macro pokenavcall text:req .byte 0xdf - .4byte \pointer + .4byte \text .endm @ Warp commands can be given either the id of which warp location to go to on the destination map @@ -1661,18 +1673,21 @@ formatwarp \map, \a, \b, \c .endm - .macro buffercontesttypestring out:req, word:req + @ 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 \out - .2byte \word + .byte \stringVarId + .2byte \category .endm - @ Writes the name of the specified (item) item to the specified buffer. If 'item' is a Berry or ITEM_POKE_BALL + @ Writes the name of the specified item to the specified buffer. If 'item' is a Berry or ITEM_POKE_BALL @ 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 out:req, item:req, quantity:req + @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 + .macro bufferitemnameplural stringVarId:req, item:req, quantity:req .byte 0xe2 - .byte \out + .byte \stringVarId .2byte \item .2byte \quantity .endm @@ -1847,6 +1862,7 @@ dofieldeffect FLDEFF_SPARKLE .endm + @ Prints a braille message, waits for an A or B press, then closes the message. .macro braillemsgbox text:req braillemessage \text waitbuttonpress diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index a21ebd0baf0d..ca6e8225073e 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -128,8 +128,8 @@ DewfordTown_EventScript_FishingNotSoGood:: DewfordTown_EventScript_SailToPetalburg:: call EventScript_BackupMrBrineyLocation - setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 - setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 0 + setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 + setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 0 applymovement LOCALID_BRINEY_DEWFORD, DewfordTown_Movement_BrineyBoardBoat waitmovement 0 removeobject LOCALID_BRINEY_DEWFORD @@ -151,7 +151,7 @@ DewfordTown_EventScript_SailToPetalburg:: setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN hideobjectat LOCALID_BOAT_DEWFORD, MAP_DEWFORD_TOWN setvar VAR_BOARD_BRINEY_BOAT_STATE, 2 - resetobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN + resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN warp MAP_ROUTE104_MR_BRINEYS_HOUSE, 5, 4 copyvar VAR_BRINEY_LOCATION, VAR_0x8008 waitstate @@ -160,8 +160,8 @@ DewfordTown_EventScript_SailToPetalburg:: DewfordTown_EventScript_SailToSlateport:: call EventScript_BackupMrBrineyLocation - setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 - setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 1 + setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 + setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 1 applymovement LOCALID_BRINEY_DEWFORD, DewfordTown_Movement_BrineyBoardBoat waitmovement 0 removeobject LOCALID_BRINEY_DEWFORD @@ -178,7 +178,7 @@ DewfordTown_EventScript_SailToSlateport:: waitmovement 0 setobjectxyperm LOCALID_BRINEY_R109, 21, 26 addobject LOCALID_BRINEY_R109 - setobjectpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0 + setobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0 applymovement LOCALID_BRINEY_R109, DewfordTown_Movement_BrineyExitBoat waitmovement 0 clearflag FLAG_HIDE_ROUTE_109_MR_BRINEY @@ -190,8 +190,8 @@ DewfordTown_EventScript_SailToSlateport:: call_if_set FLAG_DELIVERED_DEVON_GOODS, DewfordTown_EventScript_LandedSlateport closemessage copyvar VAR_BRINEY_LOCATION, VAR_0x8008 - resetobjectpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN - resetobjectpriority LOCALID_BRINEY_R109, MAP_ROUTE109 + resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN + resetobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109 copyobjectxytoperm LOCALID_BRINEY_R109 release end diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index d58bc5060065..4cbe5c045443 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -361,8 +361,8 @@ Route104_EventScript_Girl2:: end Route104_EventScript_SailToDewford:: - setobjectpriority LOCALID_BRINEY_R104, MAP_ROUTE104, 0 - setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104, 0 + setobjectsubpriority LOCALID_BRINEY_R104, MAP_ROUTE104, 0 + setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104, 0 applymovement LOCALID_BRINEY_R104, Route104_Movement_BrineyBoardBoat waitmovement 0 removeobject LOCALID_BRINEY_R104 @@ -409,7 +409,7 @@ Route104_EventScript_ArriveInDewford:: waitmovement 0 setobjectxyperm LOCALID_BRINEY_DEWFORD, 12, 8 addobject LOCALID_BRINEY_DEWFORD - setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 + setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN applymovement LOCALID_BRINEY_DEWFORD, Route104_Movement_BrineyExitBoat waitmovement 0 @@ -419,8 +419,8 @@ Route104_EventScript_ArriveInDewford:: setflag FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT hideobjectat LOCALID_BOAT_R104, MAP_ROUTE104 copyvar VAR_BRINEY_LOCATION, VAR_0x8008 - resetobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104 - resetobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN + resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104 + resetobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN copyobjectxytoperm LOCALID_BRINEY_DEWFORD setvar VAR_BOARD_BRINEY_BOAT_STATE, 0 goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_DeliverLetterReminder diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index 37852c873f0e..08f0a1701f54 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -6,8 +6,8 @@ Route109_MapScripts:: Route109_EventScript_StartDepartForDewford:: call EventScript_BackupMrBrineyLocation - setobjectpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0 - setobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109, 0 + setobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0 + setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109, 0 applymovement LOCALID_BRINEY_R109, Route109_Movement_BrineyEnterBoat waitmovement 0 removeobject LOCALID_BRINEY_R109 @@ -50,7 +50,7 @@ Route109_EventScript_DoSailToDewford:: clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN setobjectxyperm LOCALID_BRINEY_DEWFORD, 12, 8 addobject LOCALID_BRINEY_DEWFORD - setobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 + setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0 applymovement LOCALID_BRINEY_DEWFORD, Route109_Movement_BrineyExitBoat waitmovement 0 clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN @@ -59,8 +59,8 @@ Route109_EventScript_DoSailToDewford:: msgbox DewfordTown_Text_BrineyLandedInDewford, MSGBOX_DEFAULT closemessage copyvar VAR_BRINEY_LOCATION, VAR_0x8008 - resetobjectpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109 - resetobjectpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN + resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109 + resetobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN copyobjectxytoperm LOCALID_BRINEY_DEWFORD release end diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index f3afb2e4311f..3d2ab82a9eb9 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -168,8 +168,8 @@ gScriptCmdTable:: .4byte ScrCmd_doweather @ 0xa5 .4byte ScrCmd_setstepcallback @ 0xa6 .4byte ScrCmd_setmaplayoutindex @ 0xa7 - .4byte ScrCmd_setobjectpriority @ 0xa8 - .4byte ScrCmd_resetobjectpriority @ 0xa9 + .4byte ScrCmd_setobjectsubpriority @ 0xa8 + .4byte ScrCmd_resetobjectsubpriority @ 0xa9 .4byte ScrCmd_createvobject @ 0xaa .4byte ScrCmd_turnvobject @ 0xab .4byte ScrCmd_opendoor @ 0xac @@ -225,7 +225,7 @@ gScriptCmdTable:: .4byte ScrCmd_buffertrainername @ 0xde .4byte ScrCmd_pokenavcall @ 0xdf .4byte ScrCmd_warpsootopolislegend @ 0xe0 - .4byte ScrCmd_buffercontesttype @ 0xe1 + .4byte ScrCmd_buffercontestname @ 0xe1 .4byte ScrCmd_bufferitemnameplural @ 0xe2 gScriptCmdTableEnd:: diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 13f31e9bd72c..696903e2f5ae 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -283,7 +283,7 @@ ContestHall_EventScript_GetCategoryTough:: return ContestHall_EventScript_ContestGettingStarted:: - buffercontesttypestring 1, VAR_0x8008 + buffercontestname 1, VAR_0x8008 bufferstdstring 2, VAR_0x8009 call ContestHall_EventScript_GettingStarted lockall diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 6ad4b55e4f07..8ceea4d2983a 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -110,8 +110,8 @@ const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId); void SetObjectInvisibility(u8, u8, u8, bool8); void FreeAndReserveObjectSpritePalettes(void); void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y); -void ResetObjectPriority(u8, u8, u8); -void SetObjectPriority(u8, u8, u8, u8); +void ResetObjectSubpriority(u8, u8, u8); +void SetObjectSubpriority(u8, u8, u8, u8); void AllowObjectAtPosTriggerGroundEffects(s16, s16); void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup); void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16); diff --git a/src/data/lilycove_lady.h b/src/data/lilycove_lady.h index 1f1caa35f33f..dd0885ff820e 100644 --- a/src/data/lilycove_lady.h +++ b/src/data/lilycove_lady.h @@ -5,11 +5,11 @@ static const u16 sContestLadyMonGfxId[] = { - OBJ_EVENT_GFX_ZIGZAGOON_1, - OBJ_EVENT_GFX_SKITTY, - OBJ_EVENT_GFX_POOCHYENA, - OBJ_EVENT_GFX_KECLEON, - OBJ_EVENT_GFX_PIKACHU + [CONTEST_CATEGORY_COOL] = OBJ_EVENT_GFX_ZIGZAGOON_1, + [CONTEST_CATEGORY_BEAUTY] = OBJ_EVENT_GFX_SKITTY, + [CONTEST_CATEGORY_CUTE] = OBJ_EVENT_GFX_POOCHYENA, + [CONTEST_CATEGORY_SMART] = OBJ_EVENT_GFX_KECLEON, + [CONTEST_CATEGORY_TOUGH] = OBJ_EVENT_GFX_PIKACHU }; static const u16 sLilycoveLadyGfxId[] = @@ -434,36 +434,36 @@ static const u16 sFavorLadyPrizes[] = static const u8 *const sContestLadyMonNames[] = { - gText_ContestLady_Handsome, - gText_ContestLady_Vinny, - gText_ContestLady_Moreme, - gText_ContestLady_Ironhard, - gText_ContestLady_Muscle + [CONTEST_CATEGORY_COOL] = gText_ContestLady_Handsome, + [CONTEST_CATEGORY_BEAUTY] = gText_ContestLady_Vinny, + [CONTEST_CATEGORY_CUTE] = gText_ContestLady_Moreme, + [CONTEST_CATEGORY_SMART] = gText_ContestLady_Ironhard, + [CONTEST_CATEGORY_TOUGH] = gText_ContestLady_Muscle }; static const u8 *const sContestLadyCategoryNames[] = { - gText_ContestLady_Coolness, - gText_ContestLady_Beauty, - gText_ContestLady_Cuteness, - gText_ContestLady_Smartness, - gText_ContestLady_Toughness + [CONTEST_CATEGORY_COOL] = gText_ContestLady_Coolness, + [CONTEST_CATEGORY_BEAUTY] = gText_ContestLady_Beauty, + [CONTEST_CATEGORY_CUTE] = gText_ContestLady_Cuteness, + [CONTEST_CATEGORY_SMART] = gText_ContestLady_Smartness, + [CONTEST_CATEGORY_TOUGH] = gText_ContestLady_Toughness }; static const u8 *const sContestNames[] = { - gText_CoolnessContest, - gText_BeautyContest, - gText_CutenessContest, - gText_SmartnessContest, - gText_ToughnessContest + [CONTEST_CATEGORY_COOL] = gText_CoolnessContest, + [CONTEST_CATEGORY_BEAUTY] = gText_BeautyContest, + [CONTEST_CATEGORY_CUTE] = gText_CutenessContest, + [CONTEST_CATEGORY_SMART] = gText_SmartnessContest, + [CONTEST_CATEGORY_TOUGH] = gText_ToughnessContest }; static const u16 sContestLadyMonSpecies[] = { - SPECIES_ZIGZAGOON, - SPECIES_SKITTY, - SPECIES_POOCHYENA, - SPECIES_KECLEON, - SPECIES_PIKACHU + [CONTEST_CATEGORY_COOL] = SPECIES_ZIGZAGOON, + [CONTEST_CATEGORY_BEAUTY] = SPECIES_SKITTY, + [CONTEST_CATEGORY_CUTE] = SPECIES_POOCHYENA, + [CONTEST_CATEGORY_SMART] = SPECIES_KECLEON, + [CONTEST_CATEGORY_TOUGH] = SPECIES_PIKACHU }; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index c29f8466b715..b9a8fe3a714c 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1915,7 +1915,7 @@ void AllowObjectAtPosTriggerGroundEffects(s16 x, s16 y) } } -void SetObjectPriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority) +void SetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority) { u8 objectEventId; struct ObjectEvent *objectEvent; @@ -1930,7 +1930,7 @@ void SetObjectPriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority) } } -void ResetObjectPriority(u8 localId, u8 mapNum, u8 mapGroup) +void ResetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup) { u8 objectEventId; struct ObjectEvent *objectEvent; diff --git a/src/scrcmd.c b/src/scrcmd.c index 1dad3575c7d0..5b7c95e8e01c 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1128,24 +1128,24 @@ bool8 ScrCmd_hideobject_at(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_setobjectpriority(struct ScriptContext *ctx) +bool8 ScrCmd_setobjectsubpriority(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx); u8 priority = ScriptReadByte(ctx); - SetObjectPriority(localId, mapNum, mapGroup, priority + 83); + SetObjectSubpriority(localId, mapNum, mapGroup, priority + 83); return FALSE; } -bool8 ScrCmd_resetobjectpriority(struct ScriptContext *ctx) +bool8 ScrCmd_resetobjectsubpriority(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx); - ResetObjectPriority(localId, mapNum, mapGroup); + ResetObjectSubpriority(localId, mapNum, mapGroup); return FALSE; } @@ -1635,12 +1635,12 @@ bool8 ScrCmd_bufferstdstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_buffercontesttype(struct ScriptContext *ctx) +bool8 ScrCmd_buffercontestname(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); - u16 index = VarGet(ScriptReadHalfword(ctx)); + u16 category = VarGet(ScriptReadHalfword(ctx)); - BufferContestName(sScriptStringVars[stringVarIndex], index); + BufferContestName(sScriptStringVars[stringVarIndex], category); return FALSE; } From c4f8f4d11aeb2255fb0e7ccaa1256be7a2a0f63b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 22:00:44 -0500 Subject: [PATCH 440/762] Add STR_VAR_# ids to string buffer macros --- asm/macros/event.inc | 61 ++++++++++--------- data/event_scripts.s | 4 +- .../scripts.inc | 8 +-- data/maps/BattleFrontier_Lounge2/scripts.inc | 20 +++--- data/maps/BattleFrontier_Lounge3/scripts.inc | 6 +- data/maps/BattleFrontier_Lounge6/scripts.inc | 2 +- data/maps/BattleFrontier_Lounge7/scripts.inc | 2 +- .../BattleFrontier_ScottsHouse/scripts.inc | 8 +-- data/maps/FortreeCity_House1/scripts.inc | 4 +- .../LilycoveCity_ContestLobby/scripts.inc | 2 +- .../scripts.inc | 14 ++--- .../scripts.inc | 2 +- .../scripts.inc | 8 +-- data/maps/MauvilleCity_GameCorner/scripts.inc | 28 ++++----- data/maps/MossdeepCity_House1/scripts.inc | 2 +- .../MossdeepCity_SpaceCenter_1F/scripts.inc | 4 +- .../MossdeepCity_StevensHouse/scripts.inc | 4 +- data/maps/PacifidlogTown_House2/scripts.inc | 2 +- data/maps/PacifidlogTown_House3/scripts.inc | 4 +- data/maps/Route113_GlassWorkshop/scripts.inc | 32 +++++----- .../Route119_WeatherInstitute_2F/scripts.inc | 2 +- .../scripts.inc | 4 +- .../RustboroCity_DevonCorp_2F/scripts.inc | 16 ++--- data/maps/RustboroCity_House1/scripts.inc | 2 +- data/maps/SkyPillar_Top/scripts.inc | 2 +- data/maps/SlateportCity/scripts.inc | 24 ++++---- .../SlateportCity_PokemonFanClub/scripts.inc | 2 +- data/maps/SootopolisCity_House6/scripts.inc | 2 +- data/scripts/berry_tree.inc | 8 +-- data/scripts/cable_club.inc | 2 +- data/scripts/contest_hall.inc | 8 +-- data/scripts/field_move_scripts.inc | 14 ++--- data/scripts/gift_stamp_card.inc | 2 +- data/scripts/obtain_item.inc | 26 ++++---- data/scripts/pc_transfer.inc | 10 +-- data/scripts/prof_birch.inc | 8 +-- data/scripts/secret_base.inc | 12 ++-- data/scripts/surf.inc | 2 +- data/scripts/trainer_script.inc | 6 +- 39 files changed, 186 insertions(+), 183 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 057ebe3922ac..38a53f1e285c 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1014,76 +1014,83 @@ .2byte \move .endm + @ Converts STR_VAR_1, STR_VAR_2, or STR_VAR_3 to its corresponding index into sScriptStringVars (0, 1, or 2). + @ If given anything else it will output it directly. + @ Note: because the STR_VAR_# arguments given to this macro are not part of a processed string they are not + @ replaced with their charmap values, they are just passed as the literal characters "STR_VAR_#". + .macro stringvar id:req + .if \id == STR_VAR_1 + .byte 0 + .elseif \id == STR_VAR_2 + .byte 1 + .elseif \id == STR_VAR_3 + .byte 2 + .else + .byte \id + .endif + .endm + @ Writes the name of the given Pokemon species to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferspeciesname stringVarId:req, species:req .byte 0x7d - .byte \stringVarId + stringvar \stringVarId .2byte \species .endm @ Writes the name of the species of the first Pokemon in the player's party to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferleadmonspeciesname stringVarId:req .byte 0x7e - .byte \stringVarId + 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. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferpartymonnick stringVarId:req, slot:req .byte 0x7f - .byte \stringVarId + stringvar \stringVarId .2byte \slot .endm @ 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. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferitemname stringVarId:req, item:req .byte 0x80 - .byte \stringVarId + stringvar \stringVarId .2byte \item .endm @ Writes the name of the specified decoration to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferdecorationname stringVarId:req, decoration:req .byte 0x81 - .byte \stringVarId + stringvar \stringVarId .2byte \decoration .endm @ Writes the name of the specified move to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffermovename stringVarId:req, move:req .byte 0x82 - .byte \stringVarId + stringvar \stringVarId .2byte \move .endm @ Converts the value of input to a decimal string, and writes that string to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffernumberstring stringVarId:req, input:req .byte 0x83 - .byte \stringVarId + stringvar \stringVarId .2byte \input .endm @ Writes the given standard string (STDSTRING_*) to the specified buffer. Invalid std string ids are not handled. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferstdstring stringVarId:req, index:req .byte 0x84 - .byte \stringVarId + stringvar \stringVarId .2byte \index .endm @ Copies the string at the given pointer to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferstring stringVarId:req, text:req .byte 0x85 - .byte \stringVarId + stringvar \stringVarId .4byte \text .endm @@ -1462,9 +1469,9 @@ .4byte \pointer .endm - .macro vbufferstring byte:req, pointer:req + .macro vbufferstring stringVarIndex:req, pointer:req .byte 0xbf - .byte \byte + stringvar \stringVarIndex .4byte \pointer .endm @@ -1509,10 +1516,9 @@ .endm @ Writes the name of the specified (box) PC box to the specified buffer. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferboxname stringVarId:req, box:req .byte 0xc6 - .byte \stringVarId + stringvar \stringVarId .2byte \box .endm @@ -1644,19 +1650,17 @@ .byte \mode .endm - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffertrainerclassname stringVarId:req, class:req .byte 0xdd - .byte \stringVarId + stringvar \stringVarId .2byte \class .endm @ 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. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro buffertrainername stringVarId:req, trainerId:req .byte 0xde - .byte \stringVarId + stringvar \stringVarId .2byte \trainerId .endm @@ -1677,17 +1681,16 @@ @ For example a category of CONTEST_CATEGORY_COOL will buffer the string "COOLNESS CONTEST". .macro buffercontestname stringVarId:req, category:req .byte 0xe1 - .byte \stringVarId + stringvar \stringVarId .2byte \category .endm @ Writes the name of the specified item to the specified buffer. If 'item' is a Berry or ITEM_POKE_BALL @ 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. - @ 0: STR_VAR_1, 1: STR_VAR_2, 2: STR_VAR_3 .macro bufferitemnameplural stringVarId:req, item:req, quantity:req .byte 0xe2 - .byte \stringVarId + stringvar \stringVarId .2byte \item .2byte \quantity .endm diff --git a/data/event_scripts.s b/data/event_scripts.s index 5c7db08d6229..c6d6a5fa29d5 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -820,7 +820,7 @@ Common_EventScript_NameReceivedPartyMon:: return Common_EventScript_PlayerHandedOverTheItem:: - bufferitemname 0, VAR_0x8004 + bufferitemname STR_VAR_1, VAR_0x8004 playfanfare MUS_OBTAIN_TMHM message gText_PlayerHandedOverTheItem waitmessage @@ -1001,7 +1001,7 @@ Common_EventScript_LegendaryFlewAway:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK - bufferspeciesname 0, VAR_0x8004 + bufferspeciesname STR_VAR_1, VAR_0x8004 msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT release end diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index 4d4438ae6c9f..3d10a08a02af 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -686,19 +686,19 @@ BattleFrontier_BattleTowerLobby_EventScript_BufferModeText:: return BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle:: - bufferstdstring 0, STDSTRING_SINGLE + bufferstdstring STR_VAR_1, STDSTRING_SINGLE return BattleFrontier_BattleTowerLobby_EventScript_BufferTextDouble:: - bufferstdstring 0, STDSTRING_DOUBLE + bufferstdstring STR_VAR_1, STDSTRING_DOUBLE return BattleFrontier_BattleTowerLobby_EventScript_BufferTextMulti:: - bufferstdstring 0, STDSTRING_MULTI + bufferstdstring STR_VAR_1, STDSTRING_MULTI return BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti:: - bufferstdstring 0, STDSTRING_MULTI_LINK + bufferstdstring STR_VAR_1, STDSTRING_MULTI_LINK return BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo:: diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc index d98a9f64e128..e3a7fc1721f3 100644 --- a/data/maps/BattleFrontier_Lounge2/scripts.inc +++ b/data/maps/BattleFrontier_Lounge2/scripts.inc @@ -61,43 +61,43 @@ BattleFrontier_Lounge2_EventScript_FacilityNews:: return BattleFrontier_Lounge2_EventScript_BufferSingle:: - bufferstdstring 0, STDSTRING_SINGLE + bufferstdstring STR_VAR_1, STDSTRING_SINGLE return BattleFrontier_Lounge2_EventScript_BufferDouble:: - bufferstdstring 0, STDSTRING_DOUBLE + bufferstdstring STR_VAR_1, STDSTRING_DOUBLE return BattleFrontier_Lounge2_EventScript_BufferMulti:: - bufferstdstring 0, STDSTRING_MULTI + bufferstdstring STR_VAR_1, STDSTRING_MULTI return BattleFrontier_Lounge2_EventScript_BufferMultiLink:: - bufferstdstring 0, STDSTRING_MULTI_LINK + bufferstdstring STR_VAR_1, STDSTRING_MULTI_LINK return BattleFrontier_Lounge2_EventScript_BufferBattleDome:: - bufferstdstring 0, STDSTRING_BATTLE_DOME + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_DOME return BattleFrontier_Lounge2_EventScript_BufferBattleFactory:: - bufferstdstring 0, STDSTRING_BATTLE_FACTORY + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_FACTORY return BattleFrontier_Lounge2_EventScript_BufferBattlePalace:: - bufferstdstring 0, STDSTRING_BATTLE_PALACE + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_PALACE return BattleFrontier_Lounge2_EventScript_BufferBattleArena:: - bufferstdstring 0, STDSTRING_BATTLE_ARENA + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_ARENA return BattleFrontier_Lounge2_EventScript_BufferBattlePike:: - bufferstdstring 0, STDSTRING_BATTLE_PIKE + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_PIKE return BattleFrontier_Lounge2_EventScript_BufferBattlePyramid:: - bufferstdstring 0, STDSTRING_BATTLE_PYRAMID + bufferstdstring STR_VAR_1, STDSTRING_BATTLE_PYRAMID return BattleFrontier_Lounge2_EventScript_Maniac1:: diff --git a/data/maps/BattleFrontier_Lounge3/scripts.inc b/data/maps/BattleFrontier_Lounge3/scripts.inc index c0a941738581..1c9c5bc3b208 100644 --- a/data/maps/BattleFrontier_Lounge3/scripts.inc +++ b/data/maps/BattleFrontier_Lounge3/scripts.inc @@ -144,17 +144,17 @@ BattleFrontier_Lounge3_EventScript_LostChallenge:: end BattleFrontier_Lounge3_EventScript_RewardBet5:: - buffernumberstring 0, (BET_AMOUNT_5 * 2) + buffernumberstring STR_VAR_1, (BET_AMOUNT_5 * 2) setvar VAR_0x8004, (BET_AMOUNT_5 * 2) return BattleFrontier_Lounge3_EventScript_RewardBet10:: - buffernumberstring 0, (BET_AMOUNT_10 * 2) + buffernumberstring STR_VAR_1, (BET_AMOUNT_10 * 2) setvar VAR_0x8004, (BET_AMOUNT_10 * 2) return BattleFrontier_Lounge3_EventScript_RewardBet15:: - buffernumberstring 0, (BET_AMOUNT_15 * 2) + buffernumberstring STR_VAR_1, (BET_AMOUNT_15 * 2) setvar VAR_0x8004, (BET_AMOUNT_15 * 2) return diff --git a/data/maps/BattleFrontier_Lounge6/scripts.inc b/data/maps/BattleFrontier_Lounge6/scripts.inc index 678ea6e33036..65fd940c1abb 100644 --- a/data/maps/BattleFrontier_Lounge6/scripts.inc +++ b/data/maps/BattleFrontier_Lounge6/scripts.inc @@ -38,7 +38,7 @@ BattleFrontier_Lounge6_EventScript_DeclineTrade:: end BattleFrontier_Lounge6_EventScript_NotRequestedMon:: - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox BattleFrontier_Lounge6_Text_DontTradeForAnythingButMon, MSGBOX_DEFAULT release end diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc index 2878444706bb..7953ec820100 100644 --- a/data/maps/BattleFrontier_Lounge7/scripts.inc +++ b/data/maps/BattleFrontier_Lounge7/scripts.inc @@ -249,7 +249,7 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: copyvar VAR_0x8004, VAR_TEMP_D copyvar VAR_0x8005, VAR_TEMP_E special BufferBattleFrontierTutorMoveName - buffernumberstring 1, VAR_0x8008 + buffernumberstring STR_VAR_2, VAR_0x8008 copyvar VAR_0x8004, VAR_TEMP_C msgbox BattleFrontier_Lounge7_Text_MoveWillBeXBattlePoints, MSGBOX_YESNO compare VAR_RESULT, NO diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc index edb4bdf411c8..9d2bc59474c3 100644 --- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc +++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc @@ -176,25 +176,25 @@ BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier:: end BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints:: - buffernumberstring 0, 4 + buffernumberstring STR_VAR_1, 4 setvar VAR_0x8004, 4 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end BattleFrontier_ScottsHouse_EventScript_Give3BattlePoints:: - buffernumberstring 0, 3 + buffernumberstring STR_VAR_1, 3 setvar VAR_0x8004, 3 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end BattleFrontier_ScottsHouse_EventScript_Give2BattlePoints:: - buffernumberstring 0, 2 + buffernumberstring STR_VAR_1, 2 setvar VAR_0x8004, 2 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end BattleFrontier_ScottsHouse_EventScript_Give1BattlePoint:: - buffernumberstring 0, 1 + buffernumberstring STR_VAR_1, 1 setvar VAR_0x8004, 1 goto BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints end diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc index 111a1b7c8658..a16c26112897 100644 --- a/data/maps/FortreeCity_House1/scripts.inc +++ b/data/maps/FortreeCity_House1/scripts.inc @@ -27,7 +27,7 @@ FortreeCity_House1_EventScript_Trader:: special CreateInGameTradePokemon special DoInGameTradeScene waitstate - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox FortreeCity_House1_Text_MonYouTakeCare, MSGBOX_DEFAULT setflag FLAG_FORTREE_NPC_TRADE_COMPLETED release @@ -39,7 +39,7 @@ FortreeCity_House1_EventScript_DeclineTrade:: end FortreeCity_House1_EventScript_NotRequestedMon:: - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox FortreeCity_House1_Text_ThisIsntAMon, MSGBOX_DEFAULT release end diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index fc5ea1d7a850..84a790aede1e 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -836,7 +836,7 @@ LilycoveCity_ContestLobby_EventScript_CancelLinkTransmissionError:: LilycoveCity_ContestLobby_EventScript_StartLinkContest:: special GetContestPlayerId addvar VAR_0x8004, 1 - buffernumberstring 1, VAR_0x8004 + buffernumberstring STR_VAR_2, VAR_0x8004 messageautoscroll LilycoveCity_ContestLobby_Text_YourMonIsEntryNumX waitmessage subvar VAR_0x8004, 1 diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index b0fda2731f40..224d3c778a79 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -144,12 +144,12 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: compare VAR_TEMP_1, 2 call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade updatemoneybox - bufferitemname 0, VAR_TEMP_0 + bufferitemname STR_VAR_1, VAR_TEMP_0 playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_CanOfDrinkDroppedDown, MSGBOX_DEFAULT additem VAR_TEMP_0 - bufferitemname 1, VAR_TEMP_0 - bufferstdstring 2, STDSTRING_ITEMS + bufferitemname STR_VAR_2, VAR_TEMP_0 + bufferstdstring STR_VAR_3, STDSTRING_ITEMS msgbox gText_PutItemInPocket, MSGBOX_DEFAULT random 64 @ 1/64 chance of an additional drink dropping compare VAR_RESULT, 0 @@ -160,8 +160,8 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown, MSGBOX_DEFAULT additem VAR_TEMP_0 - bufferitemname 1, VAR_TEMP_0 - bufferstdstring 2, STDSTRING_ITEMS + bufferitemname STR_VAR_2, VAR_TEMP_0 + bufferstdstring STR_VAR_3, STDSTRING_ITEMS msgbox gText_PutItemInPocket, MSGBOX_DEFAULT random 64 @ 1/64 * the prev 1/64 chance of a third additional drink dropping, ~ 0.02% chance compare VAR_RESULT, 0 @@ -172,8 +172,8 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown, MSGBOX_DEFAULT additem VAR_TEMP_0 - bufferitemname 1, VAR_TEMP_0 - bufferstdstring 2, STDSTRING_ITEMS + bufferitemname STR_VAR_2, VAR_TEMP_0 + bufferstdstring STR_VAR_3, STDSTRING_ITEMS msgbox gText_PutItemInPocket, MSGBOX_DEFAULT goto LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink end diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc index fb82ba47a6ab..45a0a844e6ea 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc @@ -41,7 +41,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPartyMon compare VAR_0x8006, 1 call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPCMon - bufferitemname 0, VAR_0x8005 + bufferitemname STR_VAR_1, VAR_0x8005 compare VAR_0x8004, 1 call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TwoDigitMatch compare VAR_0x8004, 2 diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index 0a828c426bae..857099f26dd2 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -117,7 +117,7 @@ LittlerootTown_ProfessorBirchsLab_OnFrame: @ This is just where the game tells you its yours and lets you nickname it LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent:: lockall - bufferleadmonspeciesname 0 + bufferleadmonspeciesname STR_VAR_1 message LittlerootTown_ProfessorBirchsLab_Text_LikeYouToHavePokemon waitmessage playfanfare MUS_OBTAIN_ITEM @@ -357,7 +357,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime:: end LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: - bufferspeciesname 0, SPECIES_CYNDAQUIL + bufferspeciesname STR_VAR_1, SPECIES_CYNDAQUIL setvar VAR_TEMP_1, SPECIES_CYNDAQUIL givemon SPECIES_CYNDAQUIL, 5, ITEM_NONE compare VAR_RESULT, 0 @@ -402,7 +402,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil:: end LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: - bufferspeciesname 0, SPECIES_TOTODILE + bufferspeciesname STR_VAR_1, SPECIES_TOTODILE setvar VAR_TEMP_1, SPECIES_TOTODILE givemon SPECIES_TOTODILE, 5, ITEM_NONE compare VAR_RESULT, 0 @@ -447,7 +447,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile:: end LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: - bufferspeciesname 0, SPECIES_CHIKORITA + bufferspeciesname STR_VAR_1, SPECIES_CHIKORITA setvar VAR_TEMP_1, SPECIES_CHIKORITA givemon SPECIES_CHIKORITA, 5, ITEM_NONE compare VAR_RESULT, 0 diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc index ab1c248e0882..451e8acb5a84 100644 --- a/data/maps/MauvilleCity_GameCorner/scripts.inc +++ b/data/maps/MauvilleCity_GameCorner/scripts.inc @@ -138,17 +138,17 @@ MauvilleCity_GameCorner_EventScript_ChooseDollPrize:: MauvilleCity_GameCorner_EventScript_TreeckoDoll:: setvar VAR_TEMP_1, 1 - bufferdecorationname 0, DECOR_TREECKO_DOLL + bufferdecorationname STR_VAR_1, DECOR_TREECKO_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize MauvilleCity_GameCorner_EventScript_TorchicDoll:: setvar VAR_TEMP_1, 2 - bufferdecorationname 0, DECOR_TORCHIC_DOLL + bufferdecorationname STR_VAR_1, DECOR_TORCHIC_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize MauvilleCity_GameCorner_EventScript_MudkipDoll:: setvar VAR_TEMP_1, 3 - bufferdecorationname 0, DECOR_MUDKIP_DOLL + bufferdecorationname STR_VAR_1, DECOR_MUDKIP_DOLL goto MauvilleCity_GameCorner_EventScript_ConfirmDollPrize MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: @@ -165,7 +165,7 @@ MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll - bufferdecorationname 1, DECOR_TREECKO_DOLL + bufferdecorationname STR_VAR_2, DECOR_TREECKO_DOLL checkdecorspace DECOR_TREECKO_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll @@ -181,7 +181,7 @@ MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll - bufferdecorationname 1, DECOR_TORCHIC_DOLL + bufferdecorationname STR_VAR_2, DECOR_TORCHIC_DOLL checkdecorspace DECOR_TORCHIC_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll @@ -197,7 +197,7 @@ MauvilleCity_GameCorner_EventScript_BuyMudkipDoll:: checkcoins VAR_TEMP_2 compare VAR_TEMP_2, DOLL_COINS goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll - bufferdecorationname 1, DECOR_MUDKIP_DOLL + bufferdecorationname STR_VAR_2, DECOR_MUDKIP_DOLL checkdecorspace DECOR_MUDKIP_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll @@ -261,31 +261,31 @@ MauvilleCity_GameCorner_EventScript_ChooseTMPrize:: MauvilleCity_GameCorner_EventScript_TM32:: setvar VAR_TEMP_1, 1 - bufferitemname 0, ITEM_TM32 + bufferitemname STR_VAR_1, ITEM_TM32 setvar VAR_0x8004, ITEM_TM32 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize MauvilleCity_GameCorner_EventScript_TM29:: setvar VAR_TEMP_1, 2 - bufferitemname 0, ITEM_TM29 + bufferitemname STR_VAR_1, ITEM_TM29 setvar VAR_0x8004, ITEM_TM29 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize MauvilleCity_GameCorner_EventScript_TM35:: setvar VAR_TEMP_1, 3 - bufferitemname 0, ITEM_TM35 + bufferitemname STR_VAR_1, ITEM_TM35 setvar VAR_0x8004, ITEM_TM35 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize MauvilleCity_GameCorner_EventScript_TM24:: setvar VAR_TEMP_1, 4 - bufferitemname 0, ITEM_TM24 + bufferitemname STR_VAR_1, ITEM_TM24 setvar VAR_0x8004, ITEM_TM24 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize MauvilleCity_GameCorner_EventScript_TM13:: setvar VAR_TEMP_1, 5 - bufferitemname 0, ITEM_TM13 + bufferitemname STR_VAR_1, ITEM_TM13 setvar VAR_0x8004, ITEM_TM13 goto MauvilleCity_GameCorner_EventScript_ConfirmTMPrize @@ -415,7 +415,7 @@ MauvilleCity_GameCorner_EventScript_Girl:: end MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: - bufferdecorationname 1, DECOR_TREECKO_DOLL + bufferdecorationname STR_VAR_2, DECOR_TREECKO_DOLL checkdecorspace DECOR_TREECKO_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll @@ -426,7 +426,7 @@ MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: end MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: - bufferdecorationname 1, DECOR_TORCHIC_DOLL + bufferdecorationname STR_VAR_2, DECOR_TORCHIC_DOLL checkdecorspace DECOR_TORCHIC_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll @@ -437,7 +437,7 @@ MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: end MauvilleCity_GameCorner_EventScript_GiveMudkipDoll:: - bufferdecorationname 1, DECOR_MUDKIP_DOLL + bufferdecorationname STR_VAR_2, DECOR_MUDKIP_DOLL checkdecorspace DECOR_MUDKIP_DOLL compare VAR_RESULT, FALSE goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll diff --git a/data/maps/MossdeepCity_House1/scripts.inc b/data/maps/MossdeepCity_House1/scripts.inc index 99224a795e05..1bb1dede6fce 100644 --- a/data/maps/MossdeepCity_House1/scripts.inc +++ b/data/maps/MossdeepCity_House1/scripts.inc @@ -4,7 +4,7 @@ MossdeepCity_House1_MapScripts:: MossdeepCity_House1_EventScript_BlackBelt:: lock faceplayer - bufferleadmonspeciesname 0 + bufferleadmonspeciesname STR_VAR_1 msgbox MossdeepCity_House1_Text_HmmYourPokemon, MSGBOX_DEFAULT specialvar VAR_RESULT, GetPokeblockNameByMonNature compare VAR_RESULT, 0 diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc index b7c08839e3f8..4177c73ac1f2 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc @@ -62,7 +62,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma dotimebasedevents specialvar VAR_RESULT, GetWeekCount - buffernumberstring 0, VAR_RESULT + buffernumberstring STR_VAR_1, VAR_RESULT compare VAR_RESULT, 0 call_if_eq MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet compare VAR_RESULT, 1 @@ -84,7 +84,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber:: MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: dotimebasedevents specialvar VAR_RESULT, GetWeekCount - buffernumberstring 0, VAR_RESULT + buffernumberstring STR_VAR_1, VAR_RESULT compare VAR_RESULT, 0 call_if_eq MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma compare VAR_RESULT, 1 diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index af7c601e005e..a5a3d0980453 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -121,13 +121,13 @@ MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC:: end MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare:: - bufferspeciesname 1, SPECIES_BELDUM + bufferspeciesname STR_VAR_2, SPECIES_BELDUM removeobject LOCALID_BELDUM_BALL playfanfare MUS_OBTAIN_ITEM message MossdeepCity_StevensHouse_Text_ObtainedBeldum waitmessage waitfanfare - bufferspeciesname 0, SPECIES_BELDUM + bufferspeciesname STR_VAR_1, SPECIES_BELDUM return MossdeepCity_StevensHouse_EventScript_ReceivedBeldum:: diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index 27f966e961a3..ea0710c3d653 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -68,7 +68,7 @@ PacifidlogTown_House2_EventScript_GiveFrustration:: PacifidlogTown_House2_EventScript_ComeBackInXDays:: specialvar VAR_RESULT, GetDaysUntilPacifidlogTMAvailable - buffernumberstring 0, VAR_RESULT + buffernumberstring STR_VAR_1, VAR_RESULT msgbox PacifidlogTown_House2_Text_GetGoodTMInXDays, MSGBOX_DEFAULT release end diff --git a/data/maps/PacifidlogTown_House3/scripts.inc b/data/maps/PacifidlogTown_House3/scripts.inc index a2f70e2cc6c8..fbdeb74a5f30 100644 --- a/data/maps/PacifidlogTown_House3/scripts.inc +++ b/data/maps/PacifidlogTown_House3/scripts.inc @@ -27,7 +27,7 @@ PacifidlogTown_House3_EventScript_Trader:: special CreateInGameTradePokemon special DoInGameTradeScene waitstate - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox PacifidlogTown_House3_Text_ItsSubtlyDifferentThankYou, MSGBOX_DEFAULT setflag FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED release @@ -39,7 +39,7 @@ PacifidlogTown_House3_EventScript_DeclineTrade:: end PacifidlogTown_House3_EventScript_NotRequestedMon:: - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox PacifidlogTown_House3_Text_WontAcceptAnyLessThanRealMon, MSGBOX_DEFAULT release end diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc index 31fad1ceaa22..fd980bf843b8 100644 --- a/data/maps/Route113_GlassWorkshop/scripts.inc +++ b/data/maps/Route113_GlassWorkshop/scripts.inc @@ -78,7 +78,7 @@ Route113_GlassWorkshop_EventScript_ChooseGlassItem:: Route113_GlassWorkshop_EventScript_BlueFlute:: setvar VAR_0x8008, ITEM_BLUE_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, BLUE_FLUTE_PRICE compare VAR_ASH_GATHER_COUNT, BLUE_FLUTE_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -92,7 +92,7 @@ Route113_GlassWorkshop_EventScript_BlueFlute:: Route113_GlassWorkshop_EventScript_YellowFlute:: setvar VAR_0x8008, ITEM_YELLOW_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, YELLOW_FLUTE_PRICE compare VAR_ASH_GATHER_COUNT, YELLOW_FLUTE_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -106,7 +106,7 @@ Route113_GlassWorkshop_EventScript_YellowFlute:: Route113_GlassWorkshop_EventScript_RedFlute:: setvar VAR_0x8008, ITEM_RED_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, RED_FLUTE_PRICE compare VAR_ASH_GATHER_COUNT, RED_FLUTE_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -120,7 +120,7 @@ Route113_GlassWorkshop_EventScript_RedFlute:: Route113_GlassWorkshop_EventScript_WhiteFlute:: setvar VAR_0x8008, ITEM_WHITE_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, WHITE_FLUTE_PRICE compare VAR_ASH_GATHER_COUNT, WHITE_FLUTE_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -134,7 +134,7 @@ Route113_GlassWorkshop_EventScript_WhiteFlute:: Route113_GlassWorkshop_EventScript_BlackFlute:: setvar VAR_0x8008, ITEM_BLACK_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, BLACK_FLUTE_PRICE compare VAR_ASH_GATHER_COUNT, BLACK_FLUTE_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -149,7 +149,7 @@ Route113_GlassWorkshop_EventScript_BlackFlute:: Route113_GlassWorkshop_EventScript_PrettyChair:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_CHAIR - bufferdecorationname 0, VAR_0x8008 + bufferdecorationname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, PRETTY_CHAIR_PRICE compare VAR_ASH_GATHER_COUNT, PRETTY_CHAIR_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -164,7 +164,7 @@ Route113_GlassWorkshop_EventScript_PrettyChair:: Route113_GlassWorkshop_EventScript_PrettyDesk:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_DESK - bufferdecorationname 0, VAR_0x8008 + bufferdecorationname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, PRETTY_DESK_PRICE compare VAR_ASH_GATHER_COUNT, PRETTY_DESK_PRICE goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem @@ -184,14 +184,14 @@ Route113_GlassWorkshop_EventScript_CancelGlassItemSelect:: Route113_GlassWorkshop_EventScript_NotEnoughAsh:: setvar VAR_0x800A, LOWEST_ASH_PRICE subvar VAR_0x800A, VAR_ASH_GATHER_COUNT - buffernumberstring 0, VAR_0x800A + buffernumberstring STR_VAR_1, VAR_0x800A msgbox Route113_GlassWorkshop_Text_NotEnoughAshNeedX, MSGBOX_DEFAULT release end Route113_GlassWorkshop_EventScript_NotEnoughAshForItem:: subvar VAR_0x800A, VAR_ASH_GATHER_COUNT - buffernumberstring 1, VAR_0x800A + buffernumberstring STR_VAR_2, VAR_0x800A message Route113_GlassWorkshop_Text_NotEnoughAshToMakeItem waitmessage goto Route113_GlassWorkshop_EventScript_ChooseGlassItem @@ -257,49 +257,49 @@ Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom:: Route113_GlassWorkshop_EventScript_GiveBlueFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_BLUE_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GiveYellowFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_YELLOW_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GiveRedFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_RED_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GiveWhiteFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_WHITE_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GiveBlackFlute:: setvar VAR_0x8009, 0 setvar VAR_0x8008, ITEM_BLACK_FLUTE - bufferitemname 0, VAR_0x8008 + bufferitemname STR_VAR_1, VAR_0x8008 goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GivePrettyChair:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_CHAIR - bufferdecorationname 0, DECOR_PRETTY_CHAIR + bufferdecorationname STR_VAR_1, DECOR_PRETTY_CHAIR goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end Route113_GlassWorkshop_EventScript_GivePrettyDesk:: setvar VAR_0x8009, 1 setvar VAR_0x8008, DECOR_PRETTY_DESK - bufferdecorationname 0, DECOR_PRETTY_DESK + bufferdecorationname STR_VAR_1, DECOR_PRETTY_DESK goto Route113_GlassWorkshop_EventScript_TryGiveItemAgain end diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index 3b94d5cc140a..3a2957d5ee87 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -128,7 +128,7 @@ Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare:: message Route119_WeatherInstitute_2F_Text_PlayerReceivedCastform waitmessage waitfanfare - bufferspeciesname 0, SPECIES_CASTFORM + bufferspeciesname STR_VAR_1, SPECIES_CASTFORM return Route119_WeatherInstitute_2F_EventScript_ExplainCastform:: diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc index 54304e03e38a..06e16be35399 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc +++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc @@ -243,8 +243,8 @@ Route124_DivingTreasureHuntersHouse_EventScript_TradeGreenShard:: goto Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: - bufferitemname 0, VAR_0x8008 - bufferitemname 1, VAR_0x8009 + bufferitemname STR_VAR_1, VAR_0x8008 + bufferitemname STR_VAR_2, VAR_0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index 7db701c40eb6..1f2f1ea8047e 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -96,7 +96,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: end RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil:: - bufferitemname 0, ITEM_ROOT_FOSSIL + bufferitemname STR_VAR_1, ITEM_ROOT_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher, MSGBOX_DEFAULT removeitem ITEM_ROOT_FOSSIL setvar VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -121,7 +121,7 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: end RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil:: - bufferitemname 0, ITEM_CLAW_FOSSIL + bufferitemname STR_VAR_1, ITEM_CLAW_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_HandedFossilToResearcher, MSGBOX_DEFAULT removeitem ITEM_CLAW_FOSSIL setvar VAR_FOSSIL_RESURRECTION_STATE, 1 @@ -147,13 +147,13 @@ RustboroCity_DevonCorp_2F_EventScript_FossilMonReady:: end RustboroCity_DevonCorp_2F_EventScript_LileepReady:: - bufferspeciesname 1, SPECIES_LILEEP + bufferspeciesname STR_VAR_2, SPECIES_LILEEP msgbox RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife, MSGBOX_DEFAULT goto RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep end RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: - bufferspeciesname 1, SPECIES_ANORITH + bufferspeciesname STR_VAR_2, SPECIES_ANORITH msgbox RustboroCity_DevonCorp_2F_Text_FossilizedMonBroughtBackToLife, MSGBOX_DEFAULT goto RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith end @@ -193,12 +193,12 @@ RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC:: end RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare:: - bufferspeciesname 1, SPECIES_LILEEP + bufferspeciesname STR_VAR_2, SPECIES_LILEEP playfanfare MUS_OBTAIN_ITEM message RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher waitmessage waitfanfare - bufferspeciesname 0, SPECIES_LILEEP + bufferspeciesname STR_VAR_1, SPECIES_LILEEP return RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: @@ -242,12 +242,12 @@ RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC:: end RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare:: - bufferspeciesname 1, SPECIES_ANORITH + bufferspeciesname STR_VAR_2, SPECIES_ANORITH playfanfare MUS_OBTAIN_ITEM message RustboroCity_DevonCorp_2F_Text_ReceivedMonFromResearcher waitmessage waitfanfare - bufferspeciesname 0, SPECIES_ANORITH + bufferspeciesname STR_VAR_1, SPECIES_ANORITH return RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith:: diff --git a/data/maps/RustboroCity_House1/scripts.inc b/data/maps/RustboroCity_House1/scripts.inc index 3d64f72a76eb..20e93506bc2d 100644 --- a/data/maps/RustboroCity_House1/scripts.inc +++ b/data/maps/RustboroCity_House1/scripts.inc @@ -38,7 +38,7 @@ RustboroCity_House1_EventScript_DeclineTrade:: end RustboroCity_House1_EventScript_NotRequestedMon:: - bufferspeciesname 0, VAR_0x8009 + bufferspeciesname STR_VAR_1, VAR_0x8009 msgbox RustboroCity_House1_Text_DoesntLookLikeMonToMe, MSGBOX_DEFAULT release end diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index 2b3c0212002b..c59707e146a3 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -88,7 +88,7 @@ SkyPillar_Top_EventScript_RanFromRayquaza2:: fadescreenswapbuffers FADE_TO_BLACK removeobject VAR_LAST_TALKED fadescreenswapbuffers FADE_FROM_BLACK - bufferspeciesname 0, VAR_0x8004 + bufferspeciesname STR_VAR_1, VAR_0x8004 msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT releaseall end diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index be2f3f3e51e7..2e7ed6cbec21 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -164,7 +164,7 @@ SlateportCity_Pokemart_EnergyGuru: SlateportCity_EventScript_EffortRibbonWoman:: lock faceplayer - bufferleadmonspeciesname 0 + bufferleadmonspeciesname STR_VAR_1 msgbox SlateportCity_Text_OhYourPokemon, MSGBOX_DEFAULT specialvar VAR_RESULT, LeadMonHasEffortRibbon compare VAR_RESULT, TRUE @@ -795,77 +795,77 @@ SlateportCity_EventScript_ChooseBerryPowderItem:: end SlateportCity_EventScript_EnergyPowder:: - bufferitemname 0, ITEM_ENERGY_POWDER + bufferitemname STR_VAR_1, ITEM_ENERGY_POWDER setvar VAR_0x8008, ITEM_ENERGY_POWDER setvar VAR_0x8009, 50 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_EnergyRoot:: - bufferitemname 0, ITEM_ENERGY_ROOT + bufferitemname STR_VAR_1, ITEM_ENERGY_ROOT setvar VAR_0x8008, ITEM_ENERGY_ROOT setvar VAR_0x8009, 80 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_HealPowder:: - bufferitemname 0, ITEM_HEAL_POWDER + bufferitemname STR_VAR_1, ITEM_HEAL_POWDER setvar VAR_0x8008, ITEM_HEAL_POWDER setvar VAR_0x8009, 50 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_RevivalHerb:: - bufferitemname 0, ITEM_REVIVAL_HERB + bufferitemname STR_VAR_1, ITEM_REVIVAL_HERB setvar VAR_0x8008, ITEM_REVIVAL_HERB setvar VAR_0x8009, 300 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_Protein:: - bufferitemname 0, ITEM_PROTEIN + bufferitemname STR_VAR_1, ITEM_PROTEIN setvar VAR_0x8008, ITEM_PROTEIN setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_Iron:: - bufferitemname 0, ITEM_IRON + bufferitemname STR_VAR_1, ITEM_IRON setvar VAR_0x8008, ITEM_IRON setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_Carbos:: - bufferitemname 0, ITEM_CARBOS + bufferitemname STR_VAR_1, ITEM_CARBOS setvar VAR_0x8008, ITEM_CARBOS setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_Calcium:: - bufferitemname 0, ITEM_CALCIUM + bufferitemname STR_VAR_1, ITEM_CALCIUM setvar VAR_0x8008, ITEM_CALCIUM setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_Zinc:: - bufferitemname 0, ITEM_ZINC + bufferitemname STR_VAR_1, ITEM_ZINC setvar VAR_0x8008, ITEM_ZINC setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_HPUp:: - bufferitemname 0, ITEM_HP_UP + bufferitemname STR_VAR_1, ITEM_HP_UP setvar VAR_0x8008, ITEM_HP_UP setvar VAR_0x8009, 1000 goto SlateportCity_EventScript_TryBuyBerryPowderItem end SlateportCity_EventScript_PPUp:: - bufferitemname 0, ITEM_PP_UP + bufferitemname STR_VAR_1, ITEM_PP_UP setvar VAR_0x8008, ITEM_PP_UP setvar VAR_0x8009, 3000 goto SlateportCity_EventScript_TryBuyBerryPowderItem diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index b974ebed17d8..4599548b536a 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -47,7 +47,7 @@ SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon:: call_if_unset FLAG_RECEIVED_PINK_SCARF, SlateportCity_PokemonFanClub_EventScript_CheckMonCute call_if_unset FLAG_RECEIVED_BLUE_SCARF, SlateportCity_PokemonFanClub_EventScript_CheckMonBeauty call_if_unset FLAG_RECEIVED_RED_SCARF, SlateportCity_PokemonFanClub_EventScript_CheckMonCool - bufferleadmonspeciesname 0 + bufferleadmonspeciesname STR_VAR_1 switch VAR_TEMP_1 case 0, SlateportCity_PokemonFanClub_EventScript_NoHighConditions case 1, SlateportCity_PokemonFanClub_EventScript_GiveRedScarf diff --git a/data/maps/SootopolisCity_House6/scripts.inc b/data/maps/SootopolisCity_House6/scripts.inc index be2dad11f26e..fd570fc68350 100644 --- a/data/maps/SootopolisCity_House6/scripts.inc +++ b/data/maps/SootopolisCity_House6/scripts.inc @@ -27,7 +27,7 @@ SootopolisCity_House6_EventScript_ReceivedWailmerDoll:: end SootopolisCity_House6_EventScript_NoRoomForWailmerDoll:: - bufferdecorationname 1, DECOR_WAILMER_DOLL + bufferdecorationname STR_VAR_2, DECOR_WAILMER_DOLL msgbox gText_NoRoomLeftForAnother, MSGBOX_DEFAULT msgbox SootopolisCity_House6_Text_IllHoldItForYou, MSGBOX_DEFAULT release diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index 9602d3b77fb0..a1f743681cda 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -92,20 +92,20 @@ BerryTree_EventScript_GetCareAdverb:: goto_if_eq BerryTree_EventScript_SetAdverbPoor compare VAR_0x8005, 4 goto_if_eq BerryTree_EventScript_SetAdverbGreat - bufferstring 1, BerryTree_Text_CareAdverbGood + bufferstring STR_VAR_2, BerryTree_Text_CareAdverbGood return BerryTree_EventScript_SetAdverbGreat:: - bufferstring 1, BerryTree_Text_CareAdverbGreat + bufferstring STR_VAR_2, BerryTree_Text_CareAdverbGreat return BerryTree_EventScript_SetAdverbPoor:: - bufferstring 1, BerryTree_Text_CareAdverbPoor + bufferstring STR_VAR_2, BerryTree_Text_CareAdverbPoor return @ VAR_0x8006 here is the number of berries BerryTree_EventScript_CheckBerryFullyGrown:: - buffernumberstring 1, VAR_0x8006 + buffernumberstring STR_VAR_2, VAR_0x8006 lock faceplayer special ObjectEventInteractionGetBerryCountString diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 2022c5c8faf8..790871d1403b 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -827,7 +827,7 @@ EventScript_RecordCenter_Spot3:: end RecordCorner_EventScript_ReceivedGiftItem:: - bufferitemname 1, VAR_TEMP_1 + bufferitemname STR_VAR_2, VAR_TEMP_1 message RecordCorner_Text_PlayerSentOverOneX waitmessage waitbuttonpress diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 696903e2f5ae..5ff2abe0c4d6 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -283,8 +283,8 @@ ContestHall_EventScript_GetCategoryTough:: return ContestHall_EventScript_ContestGettingStarted:: - buffercontestname 1, VAR_0x8008 - bufferstdstring 2, VAR_0x8009 + buffercontestname STR_VAR_2, VAR_0x8008 + bufferstdstring STR_VAR_3, VAR_0x8009 call ContestHall_EventScript_GettingStarted lockall applymovement LOCALID_MC, ContestHall_Movement_MCBackUp @@ -393,7 +393,7 @@ ContestHall_EventScript_Player4WalkToCenter:: ContestHall_EventScript_ShowContestMonPic:: special BufferContestTrainerAndMonNames addvar VAR_0x8006, 1 - buffernumberstring 1, VAR_0x8006 + buffernumberstring STR_VAR_2, VAR_0x8006 lockall applymovement VAR_0x800B, ContestHall_Movement_ContestantDelay32 waitmovement 0 @@ -1000,7 +1000,7 @@ ContestHall_EventScript_CongratulateWinner:: special BufferContestWinnerTrainerName special BufferContestWinnerMonName addvar VAR_0x8005, 1 - buffernumberstring 1, VAR_0x8005 + buffernumberstring STR_VAR_2, VAR_0x8005 addvar VAR_0x8005, -1 call ContestHall_EventScript_CongratsWinner applymovement VAR_TEMP_3, ContestHall_Movement_WinningPlayerWalkUp diff --git a/data/scripts/field_move_scripts.inc b/data/scripts/field_move_scripts.inc index b81ca21dd1ce..39a04ae1a155 100644 --- a/data/scripts/field_move_scripts.inc +++ b/data/scripts/field_move_scripts.inc @@ -6,8 +6,8 @@ EventScript_CutTree:: compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_CheckTreeCantCut setfieldeffectargument 0, VAR_RESULT - bufferpartymonnick 0, VAR_RESULT - buffermovename 1, MOVE_CUT + bufferpartymonnick STR_VAR_1, VAR_RESULT + buffermovename STR_VAR_2, MOVE_CUT msgbox Text_WantToCut, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq EventScript_CancelCut @@ -67,8 +67,8 @@ EventScript_RockSmash:: compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_CantSmashRock setfieldeffectargument 0, VAR_RESULT - bufferpartymonnick 0, VAR_RESULT - buffermovename 1, MOVE_ROCK_SMASH + bufferpartymonnick STR_VAR_1, VAR_RESULT + buffermovename STR_VAR_2, MOVE_ROCK_SMASH msgbox Text_WantToSmash, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq EventScript_CancelSmash @@ -195,7 +195,7 @@ EventScript_UseWaterfall:: checkpartymove MOVE_WATERFALL compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_CantWaterfall - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT msgbox Text_WantToWaterfall, MSGBOX_YESNO compare VAR_RESULT, NO @@ -230,7 +230,7 @@ EventScript_UseDive:: checkpartymove MOVE_DIVE compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_CantDive - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT setfieldeffectargument 1, 1 msgbox Text_WantToDive, MSGBOX_YESNO @@ -255,7 +255,7 @@ EventScript_UseDiveUnderwater:: checkpartymove MOVE_DIVE compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_CantSurface - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT setfieldeffectargument 1, 1 msgbox Text_WantToSurface, MSGBOX_YESNO diff --git a/data/scripts/gift_stamp_card.inc b/data/scripts/gift_stamp_card.inc index f6e1eb7c7c4d..4ac399bec54c 100644 --- a/data/scripts/gift_stamp_card.inc +++ b/data/scripts/gift_stamp_card.inc @@ -5,7 +5,7 @@ MysteryGiftScript_StampCard:: setorcopyvar VAR_RESULT, GET_NUM_STAMPS specialvar VAR_0x8009, GetMysteryGiftCardStat subvar VAR_0x8008, VAR_0x8009 - buffernumberstring 0, VAR_0x8008 + buffernumberstring STR_VAR_1, VAR_0x8008 lock faceplayer vmessage sText_MysteryGiftStampCard diff --git a/data/scripts/obtain_item.inc b/data/scripts/obtain_item.inc index 8e24d4709935..8fa6a68a7edc 100644 --- a/data/scripts/obtain_item.inc +++ b/data/scripts/obtain_item.inc @@ -8,7 +8,7 @@ Std_ObtainItem:: return EventScript_ObtainItemMessage:: - bufferitemnameplural 1, ITEMID, AMOUNT + bufferitemnameplural STR_VAR_2, ITEMID, AMOUNT checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare compare VAR_0x8007, TRUE @@ -27,31 +27,31 @@ EventScript_BufferPocketNameAndTryFanfare:: end EventScript_BufferItemsPocket:: - bufferstdstring 2, STDSTRING_ITEMS + bufferstdstring STR_VAR_3, STDSTRING_ITEMS compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferKeyItemsPocket:: - bufferstdstring 2, STDSTRING_KEYITEMS + bufferstdstring STR_VAR_3, STDSTRING_KEYITEMS compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferPokeballsPocket:: - bufferstdstring 2, STDSTRING_POKEBALLS + bufferstdstring STR_VAR_3, STDSTRING_POKEBALLS compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return EventScript_BufferTMHMsPocket:: - bufferstdstring 2, STDSTRING_TMHMS + bufferstdstring STR_VAR_3, STDSTRING_TMHMS compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedTMHM return EventScript_BufferBerriesPocket:: - bufferstdstring 2, STDSTRING_BERRIES + bufferstdstring STR_VAR_3, STDSTRING_BERRIES compare VAR_0x8007, TRUE call_if_eq EventScript_PlayFanfareObtainedItem return @@ -82,7 +82,7 @@ Std_ObtainDecoration:: return EventScript_ObtainDecorationMessage:: - bufferdecorationname 1, ITEMID + bufferdecorationname STR_VAR_2, ITEMID compare VAR_0x8007, TRUE call_if_eq EventScript_ObtainedDecor compare VAR_0x8007, FALSE @@ -109,7 +109,7 @@ Std_FindItem:: copyvar VAR_0x8005, AMOUNT checkitemspace ITEMID, AMOUNT copyvar VAR_0x8007, VAR_RESULT - bufferitemnameplural 1, ITEMID, AMOUNT + bufferitemnameplural STR_VAR_2, ITEMID, AMOUNT checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare compare VAR_0x8007, TRUE @@ -130,7 +130,7 @@ EventScript_PickUpItem:: call_if_eq EventScript_FoundItem waitfanfare waitmessage - bufferitemnameplural 1, VAR_0x8004, VAR_0x8005 + bufferitemnameplural STR_VAR_2, VAR_0x8004, VAR_0x8005 pyramid_inchallenge compare VAR_RESULT, TRUE goto_if_eq EventScript_PutBattlePyramidItemInBag @@ -142,7 +142,7 @@ EventScript_PutBattlePyramidItemInBag:: return EventScript_FoundTMHM:: - bufferitemnameplural 0, VAR_0x8004, VAR_0x8005 + bufferitemnameplural STR_VAR_1, VAR_0x8004, VAR_0x8005 message gText_PlayerFoundOneTMHM return @@ -161,7 +161,7 @@ EventScript_HiddenItemScript:: waitse additem VAR_0x8005 copyvar VAR_0x8007, VAR_RESULT - bufferitemnameplural 1, VAR_0x8005, 1 + bufferitemnameplural STR_VAR_2, VAR_0x8005, 1 checkitemtype VAR_0x8005 call EventScript_BufferPocketNameAndTryFanfare compare VAR_0x8007, TRUE @@ -181,7 +181,7 @@ EventScript_PickUpHiddenItem:: end EventScript_FoundHiddenTMHM:: - bufferitemnameplural 0, VAR_0x8004, 1 + bufferitemnameplural STR_VAR_1, VAR_0x8004, 1 message gText_PlayerFoundOneTMHM goto EventScript_PutHiddenItemInPocket end @@ -194,7 +194,7 @@ EventScript_FoundHiddenItem:: EventScript_PutHiddenItemInPocket:: waitmessage waitfanfare - bufferitemnameplural 1, VAR_0x8004, 1 + bufferitemnameplural STR_VAR_2, VAR_0x8004, 1 copyvar VAR_0x8004, VAR_0x8008 msgbox gText_PutItemInPocket, MSGBOX_DEFAULT special TryPutTreasureInvestigatorsOnAir diff --git a/data/scripts/pc_transfer.inc b/data/scripts/pc_transfer.inc index 1fe575d55115..da92ef1d52cf 100644 --- a/data/scripts/pc_transfer.inc +++ b/data/scripts/pc_transfer.inc @@ -14,22 +14,22 @@ Common_EventScript_NameReceivedBoxMon:: return Common_EventScript_TransferredToPC:: - bufferboxname 0, VAR_PC_BOX_TO_SEND_MON - bufferspeciesname 1, VAR_TEMP_1 + bufferboxname STR_VAR_1, VAR_PC_BOX_TO_SEND_MON + bufferspeciesname STR_VAR_2, VAR_TEMP_1 call_if_unset FLAG_SYS_PC_LANETTE, EventScript_TransferredSomeonesPC call_if_set FLAG_SYS_PC_LANETTE, EventScript_TransferredLanettesPC return EventScript_TransferredSomeonesPC:: specialvar VAR_RESULT, ShouldShowBoxWasFullMessage - compare VAR_RESULT, 1 + compare VAR_RESULT, TRUE goto_if_eq EventScript_SomeonesPCBoxFull msgbox gText_PkmnTransferredSomeonesPC, MSGBOX_DEFAULT return EventScript_SomeonesPCBoxFull:: specialvar VAR_RESULT, GetPCBoxToSendMon - bufferboxname 2, VAR_RESULT + bufferboxname STR_VAR_3, VAR_RESULT msgbox gText_PkmnTransferredSomeonesPCBoxFull, MSGBOX_DEFAULT return @@ -42,7 +42,7 @@ EventScript_TransferredLanettesPC:: EventScript_LanettesPCBoxFull:: specialvar VAR_RESULT, GetPCBoxToSendMon - bufferboxname 2, VAR_RESULT + bufferboxname STR_VAR_3, VAR_RESULT msgbox gText_PkmnTransferredLanettesPCBoxFull, MSGBOX_DEFAULT return diff --git a/data/scripts/prof_birch.inc b/data/scripts/prof_birch.inc index 7eb1730fcdfc..97a967138f35 100644 --- a/data/scripts/prof_birch.inc +++ b/data/scripts/prof_birch.inc @@ -73,8 +73,8 @@ ProfBirch_EventScript_RatePokedex:: copyvar VAR_0x8008, VAR_0x8005 copyvar VAR_0x8009, VAR_0x8006 copyvar VAR_0x800A, VAR_RESULT - buffernumberstring 0, VAR_0x8008 @ Num Hoenn seen - buffernumberstring 1, VAR_0x8009 @ Num Hoenn caught + buffernumberstring STR_VAR_1, VAR_0x8008 @ Num Hoenn seen + buffernumberstring STR_VAR_2, VAR_0x8009 @ Num Hoenn caught msgbox gBirchDexRatingText_SoYouveSeenAndCaught, MSGBOX_DEFAULT call ProfBirch_EventScript_ShowRatingMessage compare VAR_0x800A, 0 @@ -83,7 +83,7 @@ ProfBirch_EventScript_RatePokedex:: specialvar VAR_RESULT, ScriptGetPokedexInfo copyvar VAR_0x8008, VAR_0x8005 copyvar VAR_0x8009, VAR_0x8006 - buffernumberstring 0, VAR_0x8008 @ Num National seen - buffernumberstring 1, VAR_0x8009 @ Num National caught + buffernumberstring STR_VAR_1, VAR_0x8008 @ Num National seen + buffernumberstring STR_VAR_2, VAR_0x8009 @ Num National caught msgbox gBirchDexRatingText_OnANationwideBasis, MSGBOX_DEFAULT return diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc index ae802cdfd2a2..f024f090147c 100644 --- a/data/scripts/secret_base.inc +++ b/data/scripts/secret_base.inc @@ -31,7 +31,7 @@ SecretBase_EventScript_CheckEntrance:: goto_if_eq SecretBase_EventScript_AlreadyHasSecretBase checkpartymove MOVE_SECRET_POWER setfieldeffectargument 0, VAR_RESULT - buffermovename 1, MOVE_SECRET_POWER + buffermovename STR_VAR_2, MOVE_SECRET_POWER compare VAR_0x8007, SECRET_BASE_RED_CAVE goto_if_eq SecretBase_EventScript_Cave compare VAR_0x8007, SECRET_BASE_BROWN_CAVE @@ -50,7 +50,7 @@ SecretBase_EventScript_Cave:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_CaveNoSecretPower - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_IndentUseSecretPower, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance @@ -82,7 +82,7 @@ SecretBase_EventScript_Tree:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_TreeNoSecretPower - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_TreeUseSecretPower, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance @@ -114,7 +114,7 @@ SecretBase_EventScript_Shrub:: lockall compare VAR_RESULT, PARTY_SIZE goto_if_eq SecretBase_EventScript_ShrubNoSecretPower - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_ClumpUseSecretPower, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance @@ -221,8 +221,8 @@ SecretBase_EventScript_AlreadyHasSecretBase:: msgbox SecretBase_Text_MovingCompletedUseSecretPower, MSGBOX_YESNO compare VAR_RESULT, NO goto_if_eq SecretBase_EventScript_CancelOnEntrance - bufferpartymonnick 0, VAR_0x8004 - buffermovename 1, MOVE_SECRET_POWER + bufferpartymonnick STR_VAR_1, VAR_0x8004 + buffermovename STR_VAR_2, MOVE_SECRET_POWER msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage closemessage diff --git a/data/scripts/surf.inc b/data/scripts/surf.inc index 91580422e1cb..c2bc35d5a09e 100644 --- a/data/scripts/surf.inc +++ b/data/scripts/surf.inc @@ -2,7 +2,7 @@ EventScript_UseSurf:: checkpartymove MOVE_SURF compare VAR_RESULT, PARTY_SIZE goto_if_eq EventScript_EndUseSurf - bufferpartymonnick 0, VAR_RESULT + bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT lockall msgbox gText_WantToUseSurf, MSGBOX_YESNO diff --git a/data/scripts/trainer_script.inc b/data/scripts/trainer_script.inc index 2a2384c667f6..5c630308213d 100644 --- a/data/scripts/trainer_script.inc +++ b/data/scripts/trainer_script.inc @@ -1,6 +1,6 @@ Std_RegisteredInMatchCall:: - buffertrainerclassname 0, VAR_0x8000 - buffertrainername 1, VAR_0x8000 + buffertrainerclassname STR_VAR_1, VAR_0x8000 + buffertrainername STR_VAR_2, VAR_0x8000 closemessage delay 30 playfanfare MUS_REGISTER_MATCH_CALL @@ -12,7 +12,7 @@ Std_RegisteredInMatchCall:: EventScript_TryGetTrainerScript:: special ShouldTryGetTrainerScript - compare VAR_RESULT, 1 + compare VAR_RESULT, TRUE goto_if_eq EventScript_GotoTrainerScript releaseall end From 1b35f9adad4f7471cb8a95ab78b9512d2c239156 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 22:11:03 -0500 Subject: [PATCH 441/762] Use specific name limits for string limit functions --- gflib/string_util.c | 12 ++++++------ gflib/string_util.h | 6 +++--- src/apprentice.c | 2 +- src/battle_controller_link_opponent.c | 2 +- src/battle_controller_link_partner.c | 2 +- src/battle_controller_opponent.c | 2 +- src/battle_controller_player.c | 2 +- src/battle_controller_player_partner.c | 2 +- src/battle_controller_recorded_opponent.c | 2 +- src/battle_controller_recorded_player.c | 2 +- src/battle_controller_wally.c | 2 +- src/battle_interface.c | 2 +- src/battle_message.c | 24 +++++++++++------------ src/battle_tower.c | 4 ++-- src/contest.c | 2 +- src/contest_util.c | 2 +- src/daycare.c | 4 ++-- src/evolution_scene.c | 8 ++++---- src/field_poison.c | 2 +- src/lilycove_lady.c | 12 ++++++------ src/lottery_corner.c | 2 +- src/menu_specialized.c | 2 +- src/move_relearner.c | 2 +- src/party_menu.c | 4 ++-- src/pokemon.c | 2 +- src/pokemon_storage_system.c | 4 ++-- src/pokenav_conditions.c | 2 +- src/pokenav_conditions_search_results.c | 2 +- src/pokenav_ribbons_list.c | 2 +- src/pokenav_ribbons_summary.c | 2 +- src/scrcmd.c | 2 +- src/trade.c | 14 ++++++------- src/tv.c | 4 ++-- src/union_room.c | 2 +- src/use_pokeblock.c | 2 +- 35 files changed, 72 insertions(+), 72 deletions(-) diff --git a/gflib/string_util.c b/gflib/string_util.c index 9463b4a7b467..bc6f976c7131 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -25,10 +25,10 @@ static const s32 sPowersOfTen[] = 1000000000, }; -u8 *StringCopy10(u8 *dest, const u8 *src) +u8 *StringCopy_Nickname(u8 *dest, const u8 *src) { u8 i; - u32 limit = 10; + u32 limit = POKEMON_NAME_LENGTH; for (i = 0; i < limit; i++) { @@ -42,10 +42,10 @@ u8 *StringCopy10(u8 *dest, const u8 *src) return &dest[i]; } -u8 *StringGetEnd10(u8 *str) +u8 *StringGet_Nickname(u8 *str) { u8 i; - u32 limit = 10; + u32 limit = POKEMON_NAME_LENGTH; for (i = 0; i < limit; i++) if (str[i] == EOS) @@ -55,10 +55,10 @@ u8 *StringGetEnd10(u8 *str) return &str[i]; } -u8 *StringCopy7(u8 *dest, const u8 *src) +u8 *StringCopy_PlayerName(u8 *dest, const u8 *src) { s32 i; - s32 limit = 7; + s32 limit = PLAYER_NAME_LENGTH; for (i = 0; i < limit; i++) { diff --git a/gflib/string_util.h b/gflib/string_util.h index 7f3b64add81c..0a8a99fb98d3 100644 --- a/gflib/string_util.h +++ b/gflib/string_util.h @@ -13,9 +13,9 @@ enum StringConvertMode STR_CONV_MODE_LEADING_ZEROS }; -u8 *StringCopy10(u8 *dest, const u8 *src); -u8 *StringGetEnd10(u8 *str); -u8 *StringCopy7(u8 *dest, const u8 *src); +u8 *StringCopy_Nickname(u8 *dest, const u8 *src); +u8 *StringGet_Nickname(u8 *str); +u8 *StringCopy_PlayerName(u8 *dest, const u8 *src); u8 *StringCopy(u8 *dest, const u8 *src); u8 *StringAppend(u8 *dest, const u8 *src); u8 *StringCopyN(u8 *dest, const u8 *src, u8 n); diff --git a/src/apprentice.c b/src/apprentice.c index 6255b9215a5b..2ab2f0e5a1ed 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -127,7 +127,7 @@ void BufferApprenticeChallengeText(u8 saveApprenticeId) for (i = 0; num != 0 && i < APPRENTICE_COUNT; num /= 10, i++) ; - StringCopy7(gStringVar1, gSaveBlock2Ptr->apprentices[saveApprenticeId].playerName); + StringCopy_PlayerName(gStringVar1, gSaveBlock2Ptr->apprentices[saveApprenticeId].playerName); ConvertInternationalString(gStringVar1, gSaveBlock2Ptr->apprentices[saveApprenticeId].language); ConvertIntToDecimalStringN(gStringVar2, gSaveBlock2Ptr->apprentices[saveApprenticeId].number, STR_CONV_MODE_RIGHT_ALIGN, i); challengeText = sApprenticeChallengeTexts[gSaveBlock2Ptr->apprentices[saveApprenticeId].id]; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 2ec2e61dc03c..668dd01b42fc 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -602,7 +602,7 @@ static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID); GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 0fa156a437f1..14d806576ae1 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -489,7 +489,7 @@ static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID); GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 8e1a8327a00b..c3830780b353 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -602,7 +602,7 @@ static u32 GetOpponentMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID); GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index ff5591e55b33..2133d5b6f450 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1647,7 +1647,7 @@ static u32 CopyPlayerMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID); GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 2c9098271393..c2ff08a239a7 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -673,7 +673,7 @@ static u32 CopyPlayerPartnerMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID); GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 54156da35bc7..4a35ef723d40 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -585,7 +585,7 @@ static u32 CopyRecordedOpponentMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID); GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index a28e87a4234b..e25482fb5781 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -564,7 +564,7 @@ static u32 CopyRecordedPlayerMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID); GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index f7c3312577a4..c4c0c11a9e95 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -491,7 +491,7 @@ static u32 CopyWallyMonData(u8 monId, u8 *dst) battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM); battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID); GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname); - StringCopy10(battleMon.nickname, nickname); + StringCopy_Nickname(battleMon.nickname, nickname); GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName); src = (u8 *)&battleMon; for (size = 0; size < sizeof(battleMon); size++) diff --git a/src/battle_interface.c b/src/battle_interface.c index 96bab7f90b06..26209fe2d7fe 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1893,7 +1893,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) StringCopy(gDisplayedStringBattle, gText_HealthboxNickname); GetMonData(mon, MON_DATA_NICKNAME, nickname); - StringGetEnd10(nickname); + StringGet_Nickname(nickname); ptr = StringAppend(gDisplayedStringBattle, nickname); gender = GetMonGender(mon); diff --git a/src/battle_message.c b/src/battle_message.c index b88eedfb376e..1df935694586 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2400,7 +2400,7 @@ static const u8* TryGetStatusString(u8 *src) { \ GetMonData(&gPlayerParty[monIndex], MON_DATA_NICKNAME, text); \ } \ - StringGetEnd10(text); \ + StringGet_Nickname(text); \ toCpy = text; u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst) @@ -2466,49 +2466,49 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst) case B_TXT_PLAYER_MON1_NAME: // first player poke name GetMonData(&gPlayerParty[gBattlerPartyIndexes[GetBattlerAtPosition(B_POSITION_PLAYER_LEFT)]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_OPPONENT_MON1_NAME: // first enemy poke name GetMonData(&gEnemyParty[gBattlerPartyIndexes[GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_PLAYER_MON2_NAME: // second player poke name GetMonData(&gPlayerParty[gBattlerPartyIndexes[GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT)]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_OPPONENT_MON2_NAME: // second enemy poke name GetMonData(&gEnemyParty[gBattlerPartyIndexes[GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT)]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_LINK_PLAYER_MON1_NAME: // link first player poke name GetMonData(&gPlayerParty[gBattlerPartyIndexes[gLinkPlayers[multiplayerId].id]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_LINK_OPPONENT_MON1_NAME: // link first opponent poke name GetMonData(&gEnemyParty[gBattlerPartyIndexes[gLinkPlayers[multiplayerId].id ^ 1]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_LINK_PLAYER_MON2_NAME: // link second player poke name GetMonData(&gPlayerParty[gBattlerPartyIndexes[gLinkPlayers[multiplayerId].id ^ 2]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_LINK_OPPONENT_MON2_NAME: // link second opponent poke name GetMonData(&gEnemyParty[gBattlerPartyIndexes[gLinkPlayers[multiplayerId].id ^ 3]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_ATK_NAME_WITH_PREFIX_MON1: // attacker name with prefix, only battlerId 0/1 @@ -2521,7 +2521,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst) else GetMonData(&gEnemyParty[gBattlerPartyIndexes[GetBattlerAtPosition(GET_BATTLER_SIDE(gBattlerAttacker)) + 2]], MON_DATA_NICKNAME, text); - StringGetEnd10(text); + StringGet_Nickname(text); toCpy = text; break; case B_TXT_ATK_NAME_WITH_PREFIX: // attacker name with prefix @@ -2903,7 +2903,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) GetMonData(&gEnemyParty[src[srcID + 2]], MON_DATA_NICKNAME, text); } - StringGetEnd10(text); + StringGet_Nickname(text); StringAppend(dst, text); srcID += 3; break; @@ -2920,7 +2920,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) GetMonData(&gPlayerParty[src[srcID + 2]], MON_DATA_NICKNAME, dst); else GetMonData(&gEnemyParty[src[srcID + 2]], MON_DATA_NICKNAME, dst); - StringGetEnd10(dst); + StringGet_Nickname(dst); srcID += 3; break; case B_BUFF_NEGATIVE_FLAVOR: // flavor table diff --git a/src/battle_tower.c b/src/battle_tower.c index accdca3b4e26..7ed15d1e65cf 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -2160,7 +2160,7 @@ static void SaveBattleTowerRecord(void) playerRecord->lvlMode = lvlMode; playerRecord->facilityClass = class; CopyTrainerId(playerRecord->trainerId, gSaveBlock2Ptr->playerTrainerId); - StringCopy7(playerRecord->name, gSaveBlock2Ptr->playerName); + StringCopy_PlayerName(playerRecord->name, gSaveBlock2Ptr->playerName); playerRecord->winStreak = GetCurrentBattleTowerWinStreak(lvlMode, battleMode); for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) @@ -2831,7 +2831,7 @@ static void FillEReaderTrainerWithPlayerData(void) } CopyTrainerId(ereaderTrainer->trainerId, gSaveBlock2Ptr->playerTrainerId); - StringCopy7(ereaderTrainer->name, gSaveBlock2Ptr->playerName); + StringCopy_PlayerName(ereaderTrainer->name, gSaveBlock2Ptr->playerName); ereaderTrainer->winStreak = 1; diff --git a/src/contest.c b/src/contest.c index b5a035ff85db..ced9f90cdead 100644 --- a/src/contest.c +++ b/src/contest.c @@ -2794,7 +2794,7 @@ void CreateContestMonFromParty(u8 partyIndex) gContestMons[gContestPlayerMonIndex].highestRank = 0; gContestMons[gContestPlayerMonIndex].species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES); GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, name); - StringGetEnd10(name); + StringGet_Nickname(name); if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK) { StripMonNameForLinkContest(name, GetMonData(&gPlayerParty[partyIndex], MON_DATA_LANGUAGE)); diff --git a/src/contest_util.c b/src/contest_util.c index 7533d4349a3d..1ca217526535 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -2253,7 +2253,7 @@ void Task_LinkContest_FinalizeConnection(u8 taskId) { // Succesfully connected for (i = 0; i < CONTESTANT_COUNT; i++) - StringGetEnd10(gContestMons[i].nickname); + StringGet_Nickname(gContestMons[i].nickname); DestroyTask(taskId); SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); diff --git a/src/daycare.c b/src/daycare.c index c900e3493363..ebbab762ade7 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -96,7 +96,7 @@ u8 *GetMonNickname2(struct Pokemon *mon, u8 *dest) u8 nickname[POKEMON_NAME_LENGTH * 2]; GetMonData(mon, MON_DATA_NICKNAME, nickname); - return StringCopy10(dest, nickname); + return StringCopy_Nickname(dest, nickname); } u8 *GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest) @@ -104,7 +104,7 @@ u8 *GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest) u8 nickname[POKEMON_NAME_LENGTH * 2]; GetBoxMonData(mon, MON_DATA_NICKNAME, nickname); - return StringCopy10(dest, nickname); + return StringCopy_Nickname(dest, nickname); } u8 CountPokemonInDaycare(struct DayCare *daycare) diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 99ff26821313..327e48d19509 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -252,7 +252,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u AllocateMonSpritesGfx(); GetMonData(mon, MON_DATA_NICKNAME, name); - StringCopy10(gStringVar1, name); + StringCopy_Nickname(gStringVar1, name); StringCopy(gStringVar2, gSpeciesNames[postEvoSpecies]); // preEvo sprite @@ -474,7 +474,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit u8 ID; GetMonData(mon, MON_DATA_NICKNAME, name); - StringCopy10(gStringVar1, name); + StringCopy_Nickname(gStringVar1, name); StringCopy(gStringVar2, gSpeciesNames[postEvoSpecies]); gAffineAnimsDisabled = TRUE; @@ -787,7 +787,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tLearnsFirstMove = FALSE; gTasks[taskId].tLearnMoveState = MVSTATE_INTRO_MSG_1; GetMonData(mon, MON_DATA_NICKNAME, text); - StringCopy10(gBattleTextBuff1, text); + StringCopy_Nickname(gBattleTextBuff1, text); if (var == MON_HAS_MAX_MOVES) gTasks[taskId].tState = EVOSTATE_REPLACE_MOVE; @@ -1202,7 +1202,7 @@ static void Task_TradeEvolutionScene(u8 taskId) gTasks[taskId].tLearnsFirstMove = FALSE; gTasks[taskId].tLearnMoveState = 0; GetMonData(mon, MON_DATA_NICKNAME, text); - StringCopy10(gBattleTextBuff1, text); + StringCopy_Nickname(gBattleTextBuff1, text); if (var == MON_HAS_MAX_MOVES) gTasks[taskId].tState = T_EVOSTATE_REPLACE_MOVE; diff --git a/src/field_poison.c b/src/field_poison.c index 132ce571e180..90013243cd8a 100644 --- a/src/field_poison.c +++ b/src/field_poison.c @@ -50,7 +50,7 @@ static void FaintFromFieldPoison(u8 partyIdx) AdjustFriendship(pokemon, FRIENDSHIP_EVENT_FAINT_FIELD_PSN); SetMonData(pokemon, MON_DATA_STATUS, &status); GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1); - StringGetEnd10(gStringVar1); + StringGet_Nickname(gStringVar1); } static bool32 MonFaintedFromPoison(u8 partyIdx) diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 0b2be39b5da6..85340ed96ef3 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -183,7 +183,7 @@ bool8 HasAnotherPlayerGivenFavorLadyItem(void) sFavorLadyPtr = &gSaveBlock1Ptr->lilycoveLady.favor; if (sFavorLadyPtr->playerName[0] != EOS) { - StringCopy7(gStringVar3, sFavorLadyPtr->playerName); + StringCopy_PlayerName(gStringVar3, sFavorLadyPtr->playerName); ConvertInternationalString(gStringVar3, sFavorLadyPtr->language); return TRUE; } @@ -204,7 +204,7 @@ void BufferFavorLadyItemName(void) static void SetFavorLadyPlayerName(const u8 *src, u8 *dest) { memset(dest, EOS, PLAYER_NAME_LENGTH + 1); - StringCopy7(dest, src); + StringCopy_PlayerName(dest, src); } void BufferFavorLadyPlayerName(void) @@ -396,12 +396,12 @@ static u8 BufferQuizAuthorName(void) sQuizLadyPtr = &gSaveBlock1Ptr->lilycoveLady.quiz; if (sQuizLadyPtr->playerName[0] == EOS) { - StringCopy7(gStringVar1, gText_QuizLady_Lady); + StringCopy_PlayerName(gStringVar1, gText_QuizLady_Lady); authorNameId = QUIZ_AUTHOR_NAME_LADY; } else { - StringCopy7(gStringVar1, sQuizLadyPtr->playerName); + StringCopy_PlayerName(gStringVar1, sQuizLadyPtr->playerName); ConvertInternationalString(gStringVar1, sQuizLadyPtr->language); nameLen = GetPlayerNameLength(sQuizLadyPtr->playerName); if (nameLen == GetPlayerNameLength(gSaveBlock2Ptr->playerName)) @@ -552,7 +552,7 @@ void QuizLadyRecordCustomQuizData(void) sQuizLadyPtr->prize = gSpecialVar_ItemId; for (i = 0; i < TRAINER_ID_LENGTH; i++) sQuizLadyPtr->playerTrainerId[i] = gSaveBlock2Ptr->playerTrainerId[i]; - StringCopy7(sQuizLadyPtr->playerName, gSaveBlock2Ptr->playerName); + StringCopy_PlayerName(sQuizLadyPtr->playerName, gSaveBlock2Ptr->playerName); sQuizLadyPtr->language = gGameLanguage; } @@ -696,7 +696,7 @@ static void BufferContestLadyCategoryAndMonName(u8 *category, u8 *nickname) { sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest; StringCopy(category, sContestLadyCategoryNames[sContestLadyPtr->category]); - StringCopy10(nickname, sContestLadyMonNames[sContestLadyPtr->category]); + StringCopy_Nickname(nickname, sContestLadyMonNames[sContestLadyPtr->category]); } void BufferContestLadyMonName(u8 *category, u8 *nickname) diff --git a/src/lottery_corner.c b/src/lottery_corner.c index 2cbf0a808992..f19e9f7b7b80 100644 --- a/src/lottery_corner.c +++ b/src/lottery_corner.c @@ -113,7 +113,7 @@ void PickLotteryCornerTicket(void) gSpecialVar_0x8006 = 1; GetBoxMonData(&gPokemonStoragePtr->boxes[box][slot], MON_DATA_NICKNAME, gStringVar1); } - StringGetEnd10(gStringVar1); + StringGet_Nickname(gStringVar1); } } diff --git a/src/menu_specialized.c b/src/menu_specialized.c index 20d67ca7f98b..cd77f4a59c68 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -919,7 +919,7 @@ static u8 *GetConditionMenuMonString(u8 *dst, u16 boxId, u16 monId) if (GetBoxOrPartyMonData(box, mon, MON_DATA_IS_EGG, NULL)) return StringCopyPadded(dst, gText_EggNickname, 0, 12); GetBoxOrPartyMonData(box, mon, MON_DATA_NICKNAME, dst); - StringGetEnd10(dst); + StringGet_Nickname(dst); species = GetBoxOrPartyMonData(box, mon, MON_DATA_SPECIES, NULL); if (box == TOTAL_BOXES_COUNT) // Party mon. { diff --git a/src/move_relearner.c b/src/move_relearner.c index 92d230616756..2b925135f04c 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -912,7 +912,7 @@ static void CreateLearnableMovesList(void) } GetMonData(&gPlayerParty[sMoveRelearnerStruct->partyMon], MON_DATA_NICKNAME, nickname); - StringCopy10(gStringVar1, nickname); + StringCopy_Nickname(gStringVar1, nickname); sMoveRelearnerStruct->menuItems[sMoveRelearnerStruct->numMenuChoices].name = gText_Cancel; sMoveRelearnerStruct->menuItems[sMoveRelearnerStruct->numMenuChoices].id = LIST_CANCEL; sMoveRelearnerStruct->numMenuChoices++; diff --git a/src/party_menu.c b/src/party_menu.c index d654afa337af..34aff619fe83 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -953,7 +953,7 @@ static void DisplayPartyPokemonDataForMultiBattle(u8 slot) { menuBox->infoRects->blitFunc(menuBox->windowId, 0, 0, 0, 0, FALSE); StringCopy(gStringVar1, gMultiPartnerParty[actualSlot].nickname); - StringGetEnd10(gStringVar1); + StringGet_Nickname(gStringVar1); ConvertInternationalPlayerName(gStringVar1); DisplayPartyPokemonBarDetail(menuBox->windowId, gStringVar1, 0, menuBox->infoRects->dimensions); DisplayPartyPokemonLevel(gMultiPartnerParty[actualSlot].level, menuBox); @@ -1621,7 +1621,7 @@ static s8 GetNewSlotDoubleLayout(s8 slotId, s8 movementDir) u8* GetMonNickname(struct Pokemon *mon, u8 *dest) { GetMonData(mon, MON_DATA_NICKNAME, dest); - return StringGetEnd10(dest); + return StringGet_Nickname(dest); } #define tKeepOpen data[0] diff --git a/src/pokemon.c b/src/pokemon.c index 1607e1a40f4f..939c2429da0c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -4647,7 +4647,7 @@ void CopyPlayerPartyMonToBattleData(u8 battlerId, u8 partyIndex) gBattleMons[battlerId].type2 = gBaseStats[gBattleMons[battlerId].species].type2; gBattleMons[battlerId].ability = GetAbilityBySpecies(gBattleMons[battlerId].species, gBattleMons[battlerId].abilityNum); GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, nickname); - StringCopy10(gBattleMons[battlerId].nickname, nickname); + StringCopy_Nickname(gBattleMons[battlerId].nickname, nickname); GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_NAME, gBattleMons[battlerId].otName); hpSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(battlerId)]; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 727cc5538d20..755cc7de0741 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -6888,7 +6888,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode) sStorage->displayMonIsEgg = GetMonData(mon, MON_DATA_IS_EGG); GetMonData(mon, MON_DATA_NICKNAME, sStorage->displayMonName); - StringGetEnd10(sStorage->displayMonName); + StringGet_Nickname(sStorage->displayMonName); sStorage->displayMonLevel = GetMonData(mon, MON_DATA_LEVEL); sStorage->displayMonMarkings = GetMonData(mon, MON_DATA_MARKINGS); sStorage->displayMonPersonality = GetMonData(mon, MON_DATA_PERSONALITY); @@ -6913,7 +6913,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode) GetBoxMonData(boxMon, MON_DATA_NICKNAME, sStorage->displayMonName); - StringGetEnd10(sStorage->displayMonName); + StringGet_Nickname(sStorage->displayMonName); sStorage->displayMonLevel = GetLevelFromBoxMonExp(boxMon); sStorage->displayMonMarkings = GetBoxMonData(boxMon, MON_DATA_MARKINGS); sStorage->displayMonPersonality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY); diff --git a/src/pokenav_conditions.c b/src/pokenav_conditions.c index e61b1156863f..94ed4e8d8ccb 100644 --- a/src/pokenav_conditions.c +++ b/src/pokenav_conditions.c @@ -351,7 +351,7 @@ static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) return StringCopyPadded(str, gText_EggNickname, CHAR_SPACE, 12); GetBoxOrPartyMonData(boxId, monId, MON_DATA_NICKNAME, str); - StringGetEnd10(str); + StringGet_Nickname(str); species = GetBoxOrPartyMonData(boxId, monId, MON_DATA_SPECIES, NULL); if (boxId == TOTAL_BOXES_COUNT) { diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index c8790e3598b7..bbc07df2c3d6 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -711,7 +711,7 @@ static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest) GetBoxMonData(mon, MON_DATA_NICKNAME, gStringVar3); } - StringGetEnd10(gStringVar3); + StringGet_Nickname(gStringVar3); dest = GetStringClearToWidth(dest, FONT_NORMAL, gStringVar3, 60); switch (gender) { diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index 1d72f6a980a0..724ced507ee1 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -721,7 +721,7 @@ static void BufferRibbonMonInfoText(struct PokenavListItem * listItem, u8 * dest GetBoxMonData(mon, MON_DATA_NICKNAME, gStringVar3); } - StringGetEnd10(gStringVar3); + StringGet_Nickname(gStringVar3); dest = GetStringClearToWidth(dest, FONT_NORMAL, gStringVar3, 60); switch (gender) { diff --git a/src/pokenav_ribbons_summary.c b/src/pokenav_ribbons_summary.c index 81d5b900bd77..581228ff41fb 100644 --- a/src/pokenav_ribbons_summary.c +++ b/src/pokenav_ribbons_summary.c @@ -397,7 +397,7 @@ static void GetMonNicknameLevelGender(u8 *nick, u8 *level, u8 *gender) *level = GetLevelFromBoxMonExp(boxMon); GetBoxMonData(boxMon, MON_DATA_NICKNAME, nick); } - StringGetEnd10(nick); + StringGet_Nickname(nick); } static void GetMonSpeciesPersonalityOtId(u16 *species, u32 *personality, u32 *otId) diff --git a/src/scrcmd.c b/src/scrcmd.c index 5b7c95e8e01c..37550abb7fb7 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1575,7 +1575,7 @@ bool8 ScrCmd_bufferpartymonnick(struct ScriptContext *ctx) u16 partyIndex = VarGet(ScriptReadHalfword(ctx)); GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, sScriptStringVars[stringVarIndex]); - StringGetEnd10(sScriptStringVars[stringVarIndex]); + StringGet_Nickname(sScriptStringVars[stringVarIndex]); return FALSE; } diff --git a/src/trade.c b/src/trade.c index a1e4f7094e23..3e9f033b52ae 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1880,7 +1880,7 @@ static u8 GetMonNicknameWidth(u8 *str, u8 whichParty, u8 monIdx) else GetMonData(&gEnemyParty[monIdx], MON_DATA_NICKNAME, nickname); - StringCopy10(str, nickname); + StringCopy_Nickname(str, nickname); return GetStringWidth(FONT_SMALL, str, GetFontAttribute(FONT_SMALL, FONTATTR_LETTER_SPACING)); } @@ -1942,7 +1942,7 @@ static void PrintPartyNicknamesForTradeMenu(u8 whichParty) for (i = 0; i < sTradeMenuData->partyCounts[whichParty]; i++) { GetMonData(&party[i], MON_DATA_NICKNAME, nickname); - StringCopy10(str, nickname); + StringCopy_Nickname(str, nickname); PrintMonNicknameForTradeMenu(whichParty, i, str); } } @@ -3266,17 +3266,17 @@ static void BufferTradeSceneStrings(void) mpId = GetMultiplayerId(); StringCopy(gStringVar1, gLinkPlayers[mpId ^ 1].name); GetMonData(&gEnemyParty[gSelectedTradeMonPositions[TRADE_PARTNER] % PARTY_SIZE], MON_DATA_NICKNAME, name); - StringCopy10(gStringVar3, name); + StringCopy_Nickname(gStringVar3, name); GetMonData(&gPlayerParty[gSelectedTradeMonPositions[TRADE_PLAYER]], MON_DATA_NICKNAME, name); - StringCopy10(gStringVar2, name); + StringCopy_Nickname(gStringVar2, name); } else { ingameTrade = &sIngameTrades[gSpecialVar_0x8004]; StringCopy(gStringVar1, ingameTrade->otName); - StringCopy10(gStringVar3, ingameTrade->nickname); + StringCopy_Nickname(gStringVar3, ingameTrade->nickname); GetMonData(&gPlayerParty[gSpecialVar_0x8005], MON_DATA_NICKNAME, name); - StringCopy10(gStringVar2, name); + StringCopy_Nickname(gStringVar2, name); } } @@ -4479,7 +4479,7 @@ static void BufferInGameTradeMonName(void) u8 nickname[32]; const struct InGameTrade *inGameTrade = &sIngameTrades[gSpecialVar_0x8004]; GetMonData(&gPlayerParty[gSpecialVar_0x8005], MON_DATA_NICKNAME, nickname); - StringCopy10(gStringVar1, nickname); + StringCopy_Nickname(gStringVar1, nickname); StringCopy(gStringVar2, gSpeciesNames[inGameTrade->species]); } diff --git a/src/tv.c b/src/tv.c index de16578137d2..710b9896810e 100644 --- a/src/tv.c +++ b/src/tv.c @@ -2959,7 +2959,7 @@ static void InterviewBefore_PkmnFanClubOpinions(void) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]); GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_NICKNAME, gStringVar2); - StringGetEnd10(gStringVar2); + StringGet_Nickname(gStringVar2); InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words, ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words)); } @@ -3325,7 +3325,7 @@ static void ChangeBoxPokemonNickname_CB(void) void BufferMonNickname(void) { GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar1); - StringGetEnd10(gStringVar1); + StringGet_Nickname(gStringVar1); } void IsMonOTIDNotPlayers(void) diff --git a/src/union_room.c b/src/union_room.c index c624a978417a..9a743dbab902 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -4502,6 +4502,6 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct WirelessLink_URoom *d static void CopyAndTranslatePlayerName(u8 *dest, struct RfuPlayer *player) { - StringCopy7(dest, player->rfu.name); + StringCopy_PlayerName(dest, player->rfu.name); ConvertInternationalString(dest, player->rfu.data.compatibility.language); } diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 312e2107e811..8f041a6ff212 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -868,7 +868,7 @@ static void AskUsePokeblock(void) u8 stringBuffer[0x40]; GetMonData(&gPlayerParty[GetPartyIdFromSelectionId(sMenu->info.curSelection)], MON_DATA_NICKNAME, stringBuffer); - StringGetEnd10(stringBuffer); + StringGet_Nickname(stringBuffer); StringAppend(stringBuffer, gText_GetsAPokeBlockQuestion); StringCopy(gStringVar4, stringBuffer); FillWindowPixelBuffer(WIN_TEXT, 17); From b5b5d95de64a00d3d9dce395100808406f50b0ed Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Nov 2021 23:28:43 -0500 Subject: [PATCH 442/762] Distinguish 'virtual object' names from object events --- asm/macros/event.inc | 32 ++-- .../scripts.inc | 128 +++++++-------- include/event_object_movement.h | 17 +- src/cable_car.c | 6 +- src/decoration.c | 12 +- src/easy_chat.c | 4 +- src/event_object_movement.c | 147 +++++++++--------- src/field_special_scene.c | 2 +- src/naming_screen.c | 4 +- src/overworld.c | 6 +- src/scrcmd.c | 8 +- src/shop.c | 2 +- src/union_room_player_avatar.c | 24 +-- 13 files changed, 205 insertions(+), 187 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 38a53f1e285c..90d27495af91 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1016,7 +1016,7 @@ @ Converts STR_VAR_1, STR_VAR_2, or STR_VAR_3 to its corresponding index into sScriptStringVars (0, 1, or 2). @ If given anything else it will output it directly. - @ Note: because the STR_VAR_# arguments given to this macro are not part of a processed string they are not + @ Note: Because the STR_VAR_# arguments given to this macro are not part of a processed string they are not @ replaced with their charmap values, they are just passed as the literal characters "STR_VAR_#". .macro stringvar id:req .if \id == STR_VAR_1 @@ -1237,9 +1237,10 @@ .byte \level .endm - .macro messageautoscroll pointer:req + @ Automatically scrolls through the message without player input and at a fixed speed. + .macro messageautoscroll text:req .byte 0x9b - .4byte \pointer + .4byte \text .endm @ Executes the specified field effect animation (FLDEFF_*). @@ -1334,19 +1335,23 @@ map \map .endm - .macro createvobject sprite:req, byte2:req, x:req, y:req, elevation, direction + @ Creates a sprite with object graphics. Used when creating large groups of static NPCs that exceed + @ 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 \sprite - .byte \byte2 + .byte \graphicsId + .byte \id .2byte \x .2byte \y .byte \elevation .byte \direction .endm - .macro turnvobject index:req, direction:req + @ Turns a sprite created with createvobject. + .macro turnvobject id:req, direction:req .byte 0xab - .byte \index + .byte \id .byte \direction .endm @@ -1515,7 +1520,7 @@ .byte 0xc5 .endm - @ Writes the name of the specified (box) PC box to the specified buffer. + @ Writes the name of the specified PC box to the specified buffer. .macro bufferboxname stringVarId:req, box:req .byte 0xc6 stringvar \stringVarId @@ -1627,10 +1632,13 @@ formatwarp \map, \a, \b, \c .endm + @ Sets the selected object to the id of the currently approaching trainer. .macro selectapproachingtrainer .byte 0xd8 .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 .endm @@ -1640,9 +1648,11 @@ .byte 0xda .endm - .macro messageinstant pointer:req + @ 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 - .4byte \pointer + .4byte \text .endm .macro fadescreenswapbuffers mode:req diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index 809be00f38c6..8fc07f59abb9 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -529,76 +529,76 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience:: return BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience:: - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1, 3, DIR_SOUTH + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0 + createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0 + createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0 + createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0 + createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 0 + createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1 + createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1 + createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1 + createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2 + createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1 return BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience:: - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_2, 7, 9, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LASS, 10, 12, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_GENTLEMAN, 15, 2, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_NINJA_BOY, 16, 3, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_2, 17, 4, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_EXPERT_F, 20, 9, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 23, 13, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_HEX_MANIAC, 28, 5, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 6, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, DIR_SOUTH + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0 + createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0 + createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0 + createvobject OBJ_EVENT_GFX_WOMAN_2, 7, 9, 0 + createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0 + createvobject OBJ_EVENT_GFX_LASS, 10, 12, 0 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0 + createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 0 + createvobject OBJ_EVENT_GFX_GENTLEMAN, 15, 2, 1 + createvobject OBJ_EVENT_GFX_NINJA_BOY, 16, 3, 1 + createvobject OBJ_EVENT_GFX_WOMAN_2, 17, 4, 1 + createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1 + createvobject OBJ_EVENT_GFX_EXPERT_F, 20, 9, 1 + createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 23, 13, 1 + createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1 + createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2 + createvobject OBJ_EVENT_GFX_HEX_MANIAC, 28, 5, 2 + createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1 + createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 6, 2 + createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2 return BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience:: - createvobject OBJ_EVENT_GFX_NINJA_BOY, 0, 2, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_BEAUTY, 2, 15, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MAN_5, 3, 5, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 5, 7, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_2, 7, 9, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_3, 8, 10, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LASS, 10, 12, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_BEAUTY, 12, 14, 0, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_HIKER, 14, 12, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_GENTLEMAN, 15, 2, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_NINJA_BOY, 16, 3, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_2, 17, 4, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_3, 18, 6, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_EXPERT_F, 20, 9, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MAN_2, 21, 10, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCIENTIST_1, 23, 13, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_GENTLEMAN, 24, 14, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_FAT_MAN, 27, 3, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_HEX_MANIAC, 28, 5, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 6, 2, 3, DIR_SOUTH - createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2, 3, DIR_SOUTH + createvobject OBJ_EVENT_GFX_NINJA_BOY, 0, 2, 0 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 1, 3, 0 + createvobject OBJ_EVENT_GFX_BEAUTY, 2, 15, 0 + createvobject OBJ_EVENT_GFX_MAN_5, 3, 5, 0 + createvobject OBJ_EVENT_GFX_EXPERT_F, 4, 6, 0 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 5, 7, 0 + createvobject OBJ_EVENT_GFX_NINJA_BOY, 6, 8, 0 + createvobject OBJ_EVENT_GFX_WOMAN_2, 7, 9, 0 + createvobject OBJ_EVENT_GFX_WOMAN_3, 8, 10, 0 + createvobject OBJ_EVENT_GFX_LITTLE_GIRL, 9, 11, 0 + createvobject OBJ_EVENT_GFX_LASS, 10, 12, 0 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 11, 13, 0 + createvobject OBJ_EVENT_GFX_BEAUTY, 12, 14, 0 + createvobject OBJ_EVENT_GFX_MAN_5, 13, 15, 2 + createvobject OBJ_EVENT_GFX_HIKER, 14, 12, 2 + createvobject OBJ_EVENT_GFX_GENTLEMAN, 15, 2, 1 + createvobject OBJ_EVENT_GFX_NINJA_BOY, 16, 3, 1 + createvobject OBJ_EVENT_GFX_WOMAN_2, 17, 4, 1 + createvobject OBJ_EVENT_GFX_WOMAN_3, 18, 6, 1 + createvobject OBJ_EVENT_GFX_BEAUTY, 19, 7, 1 + createvobject OBJ_EVENT_GFX_EXPERT_F, 20, 9, 1 + createvobject OBJ_EVENT_GFX_MAN_2, 21, 10, 1 + createvobject OBJ_EVENT_GFX_WOMAN_5, 22, 11, 1 + createvobject OBJ_EVENT_GFX_SCIENTIST_1, 23, 13, 1 + createvobject OBJ_EVENT_GFX_GENTLEMAN, 24, 14, 1 + createvobject OBJ_EVENT_GFX_LITTLE_BOY, 25, 15, 1 + createvobject OBJ_EVENT_GFX_YOUNGSTER, 26, 2, 2 + createvobject OBJ_EVENT_GFX_FAT_MAN, 27, 3, 2 + createvobject OBJ_EVENT_GFX_HEX_MANIAC, 28, 5, 2 + createvobject OBJ_EVENT_GFX_SCHOOL_KID_M, 29, 5, 1 + createvobject OBJ_EVENT_GFX_MART_EMPLOYEE, 30, 6, 2 + createvobject OBJ_EVENT_GFX_WOMAN_5, 31, 8, 2 return BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible: diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 8ceea4d2983a..bd82320271d9 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -96,8 +96,7 @@ void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16); void ObjectEventClearHeldMovement(struct ObjectEvent *); void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *); void TrySpawnObjectEvents(s16, s16); -u8 CreateObjectSprite(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction); -u8 AddPseudoObjectEvent(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); +u8 CreateObjectGraphicsSprite(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); u8 TrySpawnObjectEvent(u8, u8, u8); u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 z); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); @@ -180,7 +179,6 @@ void SetAndStartSpriteAnim(struct Sprite *, u8, u8); bool8 SpriteAnimEnded(struct Sprite *); void UnfreezeObjectEvents(void); void FreezeObjectEventsExceptOne(u8 objectEventId); -void TurnObjectEventSprite(u8, u8); void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2); void FreezeObjectEvents(void); bool8 FreezeObjectEvent(struct ObjectEvent *objectEvent); @@ -414,10 +412,13 @@ 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 *); -void SetObjectEventSpriteInvisibility(u8 objectEventId, bool32 invisible); -bool32 IsObjectEventSpriteInvisible(u8 objectEventId); -void SetObjectEventSpriteGraphics(u8 objectEventId, u8 graphicsId); -void SetObjectEventSpriteAnim(u8 objectEventId, u8 animNum); -bool32 IsObjectEventSpriteAnimating(u8 objectEventId); + +u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 direction); +void TurnVirtualObject(u8 virtualObjId, u8 direction); +void SetVirtualObjectGraphics(u8 virtualObjId, u8 graphicsId); +void SetVirtualObjectInvisibility(u8 virtualObjId, bool32 invisible); +bool32 IsVirtualObjectInvisible(u8 virtualObjId); +void SetVirtualObjectSpriteAnim(u8 virtualObjId, u8 animNum); +bool32 IsVirtualObjectAnimating(u8 virtualObjId); #endif //GUARD_EVENT_OBJECT_MOVEMENT_H diff --git a/src/cable_car.c b/src/cable_car.c index c3e6564f8d83..c81764728b42 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -826,7 +826,7 @@ static void CreateCableCarSprites(void) case FALSE: default: // Create player sprite - spriteId = AddPseudoObjectEvent(playerGraphicsIds[gSaveBlock2Ptr->playerGender], SpriteCB_Player, 200, 73, 102); + spriteId = CreateObjectGraphicsSprite(playerGraphicsIds[gSaveBlock2Ptr->playerGender], SpriteCB_Player, 200, 73, 102); if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; @@ -854,7 +854,7 @@ static void CreateCableCarSprites(void) case TRUE: CopyToBgTilemapBufferRect_ChangePalette(0, sCableCar->groundTilemap + 0x24, 24, 26, 12, 3, 17); // Create player sprite - spriteId = AddPseudoObjectEvent(playerGraphicsIds[gSaveBlock2Ptr->playerGender], SpriteCB_Player, 128, 39, 102); + spriteId = CreateObjectGraphicsSprite(playerGraphicsIds[gSaveBlock2Ptr->playerGender], SpriteCB_Player, 128, 39, 102); if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; @@ -891,7 +891,7 @@ static void CreateCableCarSprites(void) if ((rval % 64) == 0) { // Unclear if this was intentional, but the - 1 in the below ARRAY_COUNT means the Zigzagoon is never used - spriteId = AddPseudoObjectEvent(hikerGraphicsIds[rval % (ARRAY_COUNT(hikerGraphicsIds) - 1)], hikerCallbacks[GOING_DOWN], hikerCoords[GOING_DOWN][0], hikerCoords[GOING_DOWN][1], 106); + spriteId = CreateObjectGraphicsSprite(hikerGraphicsIds[rval % (ARRAY_COUNT(hikerGraphicsIds) - 1)], hikerCallbacks[GOING_DOWN], hikerCoords[GOING_DOWN][0], hikerCoords[GOING_DOWN][1], 106); if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 2; diff --git a/src/decoration.c b/src/decoration.c index 9aa4bdf4d8d7..118b4918e666 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1395,9 +1395,9 @@ static void SetUpPlacingDecorationPlayerAvatar(u8 taskId, struct PlaceDecoration x -= 8; if (gSaveBlock2Ptr->playerGender == MALE) - sDecor_CameraSpriteObjectIdx2 = AddPseudoObjectEvent(OBJ_EVENT_GFX_BRENDAN_DECORATING, SpriteCallbackDummy, x, 72, 0); + sDecor_CameraSpriteObjectIdx2 = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_BRENDAN_DECORATING, SpriteCallbackDummy, x, 72, 0); else - sDecor_CameraSpriteObjectIdx2 = AddPseudoObjectEvent(OBJ_EVENT_GFX_MAY_DECORATING, SpriteCallbackDummy, x, 72, 0); + sDecor_CameraSpriteObjectIdx2 = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_MAY_DECORATING, SpriteCallbackDummy, x, 72, 0); gSprites[sDecor_CameraSpriteObjectIdx2].oam.priority = 1; DestroySprite(&gSprites[sDecor_CameraSpriteObjectIdx1]); @@ -2027,7 +2027,7 @@ static u8 gpu_pal_decompress_alloc_tag_and_upload(struct PlaceDecorationGraphics ClearPlaceDecorationGraphicsDataBuffer(data); data->decoration = &gDecorations[decor]; if (data->decoration->permission == DECORPERM_SPRITE) - return AddPseudoObjectEvent(data->decoration->tiles[0], SpriteCallbackDummy, 0, 0, 1); + return CreateObjectGraphicsSprite(data->decoration->tiles[0], SpriteCallbackDummy, 0, 0, 1); FreeSpritePaletteByTag(PLACE_DECORATION_SELECTOR_TAG); SetDecorSelectionMetatiles(data); @@ -2106,7 +2106,7 @@ static u8 AddDecorationIconObjectFromObjectEvent(u16 tilesTag, u16 paletteTag, u } else { - spriteId = AddPseudoObjectEvent(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0], SpriteCallbackDummy, 0, 0, 1); + spriteId = CreateObjectGraphicsSprite(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0], SpriteCallbackDummy, 0, 0, 1); } return spriteId; } @@ -2285,9 +2285,9 @@ static void SetUpPuttingAwayDecorationPlayerAvatar(void) LoadPlayerSpritePalette(); gFieldCamera.spriteId = CreateSprite(&sPuttingAwayCursorSpriteTemplate, 120, 80, 0); if (gSaveBlock2Ptr->playerGender == MALE) - sDecor_CameraSpriteObjectIdx2 = AddPseudoObjectEvent(OBJ_EVENT_GFX_BRENDAN_DECORATING, SpriteCallbackDummy, 136, 72, 0); + sDecor_CameraSpriteObjectIdx2 = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_BRENDAN_DECORATING, SpriteCallbackDummy, 136, 72, 0); else - sDecor_CameraSpriteObjectIdx2 = AddPseudoObjectEvent(OBJ_EVENT_GFX_MAY_DECORATING, SpriteCallbackDummy, 136, 72, 0); + sDecor_CameraSpriteObjectIdx2 = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_MAY_DECORATING, SpriteCallbackDummy, 136, 72, 0); gSprites[sDecor_CameraSpriteObjectIdx2].oam.priority = 1; DestroySprite(&gSprites[sDecor_CameraSpriteObjectIdx1]); diff --git a/src/easy_chat.c b/src/easy_chat.c index 1b992caf2d6d..f9ba44ba79b4 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -5011,7 +5011,7 @@ static void TryAddInterviewObjectEvents(void) return; // Add object for reporter/interviewing fan (facing left) - spriteId = AddPseudoObjectEvent(graphicsId, SpriteCallbackDummy, 76, 40, 0); + spriteId = CreateObjectGraphicsSprite(graphicsId, SpriteCallbackDummy, 76, 40, 0); if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.priority = 0; @@ -5019,7 +5019,7 @@ static void TryAddInterviewObjectEvents(void) } // Add object for player (facing right) - spriteId = AddPseudoObjectEvent( + spriteId = CreateObjectGraphicsSprite( gSaveBlock2Ptr->playerGender == MALE ? OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL : OBJ_EVENT_GFX_RIVAL_MAY_NORMAL, SpriteCallbackDummy, 52, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index b9a8fe3a714c..d92569d32882 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -114,7 +114,7 @@ static void DoRippleFieldEffect(struct ObjectEvent*, struct Sprite*); static void DoGroundEffects_OnSpawn(struct ObjectEvent*, struct Sprite*); static void DoGroundEffects_OnBeginStep(struct ObjectEvent*, struct Sprite*); static void DoGroundEffects_OnFinishStep(struct ObjectEvent*, struct Sprite*); -static void UpdateObjectEventSpritePosition(struct Sprite*); +static void VirtualObject_UpdateAnim(struct Sprite*); static void ApplyLevitateMovement(u8); static bool8 MovementType_Disguise_Callback(struct ObjectEvent *, struct Sprite *); static bool8 MovementType_Buried_Callback(struct ObjectEvent *, struct Sprite *); @@ -126,7 +126,7 @@ static void SetObjectEventDynamicGraphicsId(struct ObjectEvent *); static void RemoveObjectEventInternal(struct ObjectEvent *); static u16 GetObjectEventFlagIdByObjectEventId(u8); static void UpdateObjectEventVisibility(struct ObjectEvent *, struct Sprite *); -static void MakeObjectTemplateFromObjectEventTemplate(struct ObjectEventTemplate *, struct SpriteTemplate *, const struct SubspriteTable **); +static void MakeSpriteTemplateFromObjectEventTemplate(struct ObjectEventTemplate *, struct SpriteTemplate *, const struct SubspriteTable **); static void GetObjectEventMovingCameraOffset(s16 *, s16 *); static struct ObjectEventTemplate *GetObjectEventTemplateByLocalIdAndMap(u8, u8, u8); static void LoadObjectEventPalette(u16); @@ -148,7 +148,7 @@ static void ObjectEventSetSingleMovement(struct ObjectEvent *, struct Sprite *, static void SetSpriteDataForNormalStep(struct Sprite *, u8, u8); static void InitSpriteForFigure8Anim(struct Sprite *sprite); static bool8 AnimateSpriteInFigure8(struct Sprite *sprite); -static void UpdateObjectEventSprite(struct Sprite *); +static void SpriteCB_VirtualObject(struct Sprite *); static void DoShadowFieldEffect(struct ObjectEvent *); static void SetJumpSpriteData(struct Sprite *, u8, u8, u8); static void SetWalkSlowSpriteData(struct Sprite *sprite, u8 direction); @@ -1442,7 +1442,7 @@ static u8 TrySpawnObjectEventTemplate(struct ObjectEventTemplate *objectEventTem const struct SubspriteTable *subspriteTables = NULL; graphicsInfo = GetObjectEventGraphicsInfo(objectEventTemplate->graphicsId); - MakeObjectTemplateFromObjectEventTemplate(objectEventTemplate, &spriteTemplate, &subspriteTables); + MakeSpriteTemplateFromObjectEventTemplate(objectEventTemplate, &spriteTemplate, &subspriteTables); spriteFrameImage.size = graphicsInfo->size; spriteTemplate.images = &spriteFrameImage; objectEventId = TrySetupObjectEventSprite(objectEventTemplate, &spriteTemplate, mapNum, mapGroup, cameraX, cameraY); @@ -1498,7 +1498,7 @@ u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup) return TrySpawnObjectEventTemplate(objectEventTemplate, mapNum, mapGroup, cameraX, cameraY); } -static void MakeObjectTemplateFromObjectEventGraphicsInfo(u16 graphicsId, void (*callback)(struct Sprite *), struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) +static void CopyObjectGraphicsInfoToSpriteTemplate(u16 graphicsId, void (*callback)(struct Sprite *), struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) { const struct ObjectEventGraphicsInfo *graphicsInfo = GetObjectEventGraphicsInfo(graphicsId); @@ -1512,17 +1512,18 @@ static void MakeObjectTemplateFromObjectEventGraphicsInfo(u16 graphicsId, void ( *subspriteTables = graphicsInfo->subspriteTables; } -static void MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(u16 graphicsId, u16 callbackIndex, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) +static void CopyObjectGraphicsInfoToSpriteTemplate_WithMovementType(u16 graphicsId, u16 movementType, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) { - MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, sMovementTypeCallbacks[callbackIndex], spriteTemplate, subspriteTables); + CopyObjectGraphicsInfoToSpriteTemplate(graphicsId, sMovementTypeCallbacks[movementType], spriteTemplate, subspriteTables); } -static void MakeObjectTemplateFromObjectEventTemplate(struct ObjectEventTemplate *objectEventTemplate, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) +static void MakeSpriteTemplateFromObjectEventTemplate(struct ObjectEventTemplate *objectEventTemplate, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables) { - MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(objectEventTemplate->graphicsId, objectEventTemplate->movementType, spriteTemplate, subspriteTables); + CopyObjectGraphicsInfoToSpriteTemplate_WithMovementType(objectEventTemplate->graphicsId, objectEventTemplate->movementType, spriteTemplate, subspriteTables); } -u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority) +// Used to create a sprite using a graphicsId associated with object events. +u8 CreateObjectGraphicsSprite(u16 graphicsId, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority) { struct SpriteTemplate *spriteTemplate; const struct SubspriteTable *subspriteTables; @@ -1530,7 +1531,7 @@ u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x u8 spriteId; spriteTemplate = malloc(sizeof(struct SpriteTemplate)); - MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, callback, spriteTemplate, &subspriteTables); + CopyObjectGraphicsInfoToSpriteTemplate(graphicsId, callback, spriteTemplate, &subspriteTables); if (spriteTemplate->paletteTag != TAG_NONE) LoadObjectEventPalette(spriteTemplate->paletteTag); @@ -1546,9 +1547,15 @@ u8 AddPseudoObjectEvent(u16 graphicsId, void (*callback)(struct Sprite *), s16 x return spriteId; } -// Used to create sprite object events instead of a full object event -// Used when resources are limiting, e.g. for the audience in contests or group members in Union Room -u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 direction) +#define sVirtualObjId data[0] +#define sVirtualObjElev data[1] + +// "Virtual Objects" are a class of sprites used instead of a full object event. +// Used when more objects are needed than the object event limit (for Contest / Battle Dome audiences and group members in Union Room). +// A unique id is given as an argument and stored in the sprite data to allow referring back to the same virtual object. +// They can be turned (and, in the case of the Union Room, animated teleporting in and out) but do not have movement types +// or any of the other data normally associated with object events. +u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 direction) { u8 spriteId; struct Sprite *sprite; @@ -1557,7 +1564,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di const struct ObjectEventGraphicsInfo *graphicsInfo; graphicsInfo = GetObjectEventGraphicsInfo(graphicsId); - MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, UpdateObjectEventSprite, &spriteTemplate, &subspriteTables); + CopyObjectGraphicsInfoToSpriteTemplate(graphicsId, SpriteCB_VirtualObject, &spriteTemplate, &subspriteTables); *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; x += MAP_OFFSET; y += MAP_OFFSET; @@ -1574,8 +1581,8 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di sprite->oam.paletteNum -= 16; sprite->coordOffsetEnabled = TRUE; - sprite->sObjEventId = objectEventId; - sprite->data[1] = z; + sprite->sVirtualObjId = virtualObjId; + sprite->sVirtualObjElev = z; if (graphicsInfo->paletteSlot == 10) LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); else if (graphicsInfo->paletteSlot >= 16) @@ -1697,7 +1704,7 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) subspriteTables = NULL; graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); spriteFrameImage.size = graphicsInfo->size; - MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(objectEvent->graphicsId, objectEvent->movementType, &spriteTemplate, &subspriteTables); + CopyObjectGraphicsInfoToSpriteTemplate_WithMovementType(objectEvent->graphicsId, objectEvent->movementType, &spriteTemplate, &subspriteTables); spriteTemplate.images = &spriteFrameImage; *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; @@ -8510,50 +8517,50 @@ void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible) #define sAnimNum data[3] #define sAnimState data[4] -static void UpdateObjectEventSprite(struct Sprite *sprite) +static void SpriteCB_VirtualObject(struct Sprite *sprite) { - UpdateObjectEventSpritePosition(sprite); - SetObjectSubpriorityByZCoord(sprite->data[1], sprite, 1); + VirtualObject_UpdateAnim(sprite); + SetObjectSubpriorityByZCoord(sprite->sVirtualObjElev, sprite, 1); UpdateObjectEventSpriteInvisibility(sprite, sprite->sInvisible); } // Unused -static void DestroyObjectEventSprites(void) +static void DestroyVirtualObjects(void) { int i; for (i = 0; i < MAX_SPRITES; i++) { struct Sprite *sprite = &gSprites[i]; - if(sprite->inUse && sprite->callback == UpdateObjectEventSprite) + if(sprite->inUse && sprite->callback == SpriteCB_VirtualObject) DestroySprite(sprite); } } -static int GetObjectEventSpriteId(u8 objectEventId) // this should return a u8, because all that call this shifts to u8, but it wont match because it doesnt shift u8 at the end. +static int GetVirtualObjectSpriteId(u8 virtualObjId) { int i; for (i = 0; i < MAX_SPRITES; i++) { struct Sprite *sprite = &gSprites[i]; - if (sprite->inUse && sprite->callback == UpdateObjectEventSprite && (u8)sprite->sObjEventId == objectEventId) + if (sprite->inUse && sprite->callback == SpriteCB_VirtualObject && (u8)sprite->sVirtualObjId == virtualObjId) return i; } return MAX_SPRITES; } -void TurnObjectEventSprite(u8 objectEventId, u8 direction) +void TurnVirtualObject(u8 virtualObjId, u8 direction) { - u8 spriteId = GetObjectEventSpriteId(objectEventId); + u8 spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId != MAX_SPRITES) StartSpriteAnim(&gSprites[spriteId], GetFaceDirectionAnimNum(direction)); } -void SetObjectEventSpriteGraphics(u8 objectEventId, u8 graphicsId) +void SetVirtualObjectGraphics(u8 virtualObjId, u8 graphicsId) { - int spriteId = GetObjectEventSpriteId(objectEventId); + int spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId != MAX_SPRITES) { @@ -8581,9 +8588,9 @@ void SetObjectEventSpriteGraphics(u8 objectEventId, u8 graphicsId) } } -void SetObjectEventSpriteInvisibility(u8 objectEventId, bool32 invisible) +void SetVirtualObjectInvisibility(u8 virtualObjId, bool32 invisible) { - u8 spriteId = GetObjectEventSpriteId(objectEventId); + u8 spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId == MAX_SPRITES) return; @@ -8594,9 +8601,9 @@ void SetObjectEventSpriteInvisibility(u8 objectEventId, bool32 invisible) gSprites[spriteId].sInvisible = FALSE; } -bool32 IsObjectEventSpriteInvisible(u8 objectEventId) +bool32 IsVirtualObjectInvisible(u8 virtualObjId) { - u8 spriteId = GetObjectEventSpriteId(objectEventId); + u8 spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId == MAX_SPRITES) return FALSE; @@ -8604,9 +8611,9 @@ bool32 IsObjectEventSpriteInvisible(u8 objectEventId) return (gSprites[spriteId].sInvisible == TRUE); } -void SetObjectEventSpriteAnim(u8 objectEventId, u8 animNum) +void SetVirtualObjectSpriteAnim(u8 virtualObjId, u8 animNum) { - u8 spriteId = GetObjectEventSpriteId(objectEventId); + u8 spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId != MAX_SPRITES) { @@ -8619,18 +8626,18 @@ static void MoveUnionRoomObjectUp(struct Sprite *sprite) { switch(sprite->sAnimState) { - case 0: + case 0: + sprite->y2 = 0; + sprite->sAnimState++; + case 1: + sprite->y2 -= 8; + if (sprite->y2 == -DISPLAY_HEIGHT) + { sprite->y2 = 0; - sprite->sAnimState++; - case 1: - sprite->y2 -= 8; - if (sprite->y2 == -DISPLAY_HEIGHT) - { - sprite->y2 = 0; - sprite->sInvisible = TRUE; - sprite->sAnimNum = 0; - sprite->sAnimState = 0; - } + sprite->sInvisible = TRUE; + sprite->sAnimNum = 0; + sprite->sAnimState = 0; + } } } @@ -8638,40 +8645,40 @@ static void MoveUnionRoomObjectDown(struct Sprite *sprite) { switch(sprite->sAnimState) { - case 0: - sprite->y2 = -DISPLAY_HEIGHT; - sprite->sAnimState++; - case 1: - sprite->y2 += 8; - if(sprite->y2 == 0) - { - sprite->sAnimNum = 0; - sprite->sAnimState = 0; - } + case 0: + sprite->y2 = -DISPLAY_HEIGHT; + sprite->sAnimState++; + case 1: + sprite->y2 += 8; + if(sprite->y2 == 0) + { + sprite->sAnimNum = 0; + sprite->sAnimState = 0; + } } } -static void UpdateObjectEventSpritePosition(struct Sprite *sprite) +static void VirtualObject_UpdateAnim(struct Sprite *sprite) { switch(sprite->sAnimNum) { - case UNION_ROOM_SPAWN_IN: - MoveUnionRoomObjectDown(sprite); - break; - case UNION_ROOM_SPAWN_OUT: - MoveUnionRoomObjectUp(sprite); - break; - case 0: - break; - default: - sprite->sAnimNum = 0; - break; + case UNION_ROOM_SPAWN_IN: + MoveUnionRoomObjectDown(sprite); + break; + case UNION_ROOM_SPAWN_OUT: + MoveUnionRoomObjectUp(sprite); + break; + case 0: + break; + default: + sprite->sAnimNum = 0; + break; } } -bool32 IsObjectEventSpriteAnimating(u8 objectEventId) +bool32 IsVirtualObjectAnimating(u8 virtualObjId) { - u8 spriteId = GetObjectEventSpriteId(objectEventId); + u8 spriteId = GetVirtualObjectSpriteId(virtualObjId); if (spriteId == MAX_SPRITES) return FALSE; diff --git a/src/field_special_scene.c b/src/field_special_scene.c index b7c93e510e98..d8b9eb05d16f 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -325,7 +325,7 @@ void Task_HandlePorthole(u8 taskId) static void ShowSSTidalWhileSailing(void) { - u8 spriteId = AddPseudoObjectEvent(OBJ_EVENT_GFX_SS_TIDAL, SpriteCallbackDummy, 112, 80, 0); + u8 spriteId = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_SS_TIDAL, SpriteCallbackDummy, 112, 80, 0); gSprites[spriteId].coordOffsetEnabled = FALSE; diff --git a/src/naming_screen.c b/src/naming_screen.c index dcd60259b753..5aef44f149f8 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1409,7 +1409,7 @@ static void NamingScreen_CreatePlayerIcon(void) u8 spriteId; rivalGfxId = GetRivalAvatarGraphicsIdByStateIdAndGender(0, sNamingScreen->monSpecies); - spriteId = AddPseudoObjectEvent(rivalGfxId, SpriteCallbackDummy, 56, 37, 0); + spriteId = CreateObjectGraphicsSprite(rivalGfxId, SpriteCallbackDummy, 56, 37, 0); gSprites[spriteId].oam.priority = 3; StartSpriteAnim(&gSprites[spriteId], 4); } @@ -1436,7 +1436,7 @@ static void NamingScreen_CreateWaldaDadIcon(void) { u8 spriteId; - spriteId = AddPseudoObjectEvent(OBJ_EVENT_GFX_MAN_1, SpriteCallbackDummy, 56, 37, 0); + spriteId = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_MAN_1, SpriteCallbackDummy, 56, 37, 0); gSprites[spriteId].oam.priority = 3; StartSpriteAnim(&gSprites[spriteId], 4); } diff --git a/src/overworld.c b/src/overworld.c index f6c4c0f3dd07..4aa579fdd2b1 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -3180,14 +3180,14 @@ static void CreateLinkPlayerSprite(u8 linkPlayerId, u8 gameVersion) { case VERSION_FIRE_RED: case VERSION_LEAF_GREEN: - objEvent->spriteId = AddPseudoObjectEvent(GetFRLGAvatarGraphicsIdByGender(linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); + objEvent->spriteId = CreateObjectGraphicsSprite(GetFRLGAvatarGraphicsIdByGender(linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); break; case VERSION_RUBY: case VERSION_SAPPHIRE: - objEvent->spriteId = AddPseudoObjectEvent(GetRSAvatarGraphicsIdByGender(linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); + objEvent->spriteId = CreateObjectGraphicsSprite(GetRSAvatarGraphicsIdByGender(linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); break; case VERSION_EMERALD: - objEvent->spriteId = AddPseudoObjectEvent(GetRivalAvatarGraphicsIdByStateIdAndGender(PLAYER_AVATAR_STATE_NORMAL, linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); + objEvent->spriteId = CreateObjectGraphicsSprite(GetRivalAvatarGraphicsIdByStateIdAndGender(PLAYER_AVATAR_STATE_NORMAL, linkGender(objEvent)), SpriteCB_LinkPlayer, 0, 0, 0); break; } diff --git a/src/scrcmd.c b/src/scrcmd.c index 37550abb7fb7..028b714d0631 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1180,22 +1180,22 @@ bool8 ScrCmd_setobjectmovementtype(struct ScriptContext *ctx) bool8 ScrCmd_createvobject(struct ScriptContext *ctx) { u8 graphicsId = ScriptReadByte(ctx); - u8 objectEventId = ScriptReadByte(ctx); + u8 virtualObjId = ScriptReadByte(ctx); u16 x = VarGet(ScriptReadHalfword(ctx)); u32 y = VarGet(ScriptReadHalfword(ctx)); u8 elevation = ScriptReadByte(ctx); u8 direction = ScriptReadByte(ctx); - CreateObjectSprite(graphicsId, objectEventId, x, y, elevation, direction); + CreateVirtualObject(graphicsId, virtualObjId, x, y, elevation, direction); return FALSE; } bool8 ScrCmd_turnvobject(struct ScriptContext *ctx) { - u8 objectEventId = ScriptReadByte(ctx); + u8 virtualObjId = ScriptReadByte(ctx); u8 direction = ScriptReadByte(ctx); - TurnObjectEventSprite(objectEventId, direction); + TurnVirtualObject(virtualObjId, direction); return FALSE; } diff --git a/src/shop.c b/src/shop.c index f6fb2b9a034f..f41ae315f162 100755 --- a/src/shop.c +++ b/src/shop.c @@ -847,7 +847,7 @@ static void BuyMenuDrawObjectEvents(void) graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[sShopData->viewportObjects[i][OBJ_EVENT_ID]].graphicsId); - spriteId = AddPseudoObjectEvent( + spriteId = CreateObjectGraphicsSprite( gObjectEvents[sShopData->viewportObjects[i][OBJ_EVENT_ID]].graphicsId, SpriteCallbackDummy, (u16)sShopData->viewportObjects[i][X_COORD] * 16 + 8, diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 225386165994..908eb8f21ff3 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -400,12 +400,12 @@ void CreateUnionRoomPlayerSprites(u8 * spriteIds, s32 leaderId) for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { s32 id = UR_PLAYER_SPRITE_ID(leaderId, memberId); - spriteIds[id] = CreateObjectSprite(OBJ_EVENT_GFX_MAN_4, + spriteIds[id] = CreateVirtualObject(OBJ_EVENT_GFX_MAN_4, id - UR_SPRITE_START_ID, sUnionRoomPlayerCoords[leaderId][0] + sUnionRoomGroupOffsets[memberId][0], sUnionRoomPlayerCoords[leaderId][1] + sUnionRoomGroupOffsets[memberId][1], 3, 1); - SetObjectEventSpriteInvisibility(id - UR_SPRITE_START_ID, TRUE); + SetVirtualObjectInvisibility(id - UR_SPRITE_START_ID, TRUE); } } @@ -443,7 +443,7 @@ static u8 GetNewFacingDirectionForUnionRoomPlayer(u32 memberId, u32 leaderId, st static bool32 IsUnionRoomPlayerInvisible(u32 leaderId, u32 memberId) { - return IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID); + return IsVirtualObjectInvisible(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID); } static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct RfuGameData * gameData) @@ -452,10 +452,10 @@ static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct R s32 id = UR_PLAYER_SPRITE_ID(leaderId, memberId); if (IsUnionRoomPlayerInvisible(leaderId, memberId) == TRUE) { - SetObjectEventSpriteInvisibility(id - UR_SPRITE_START_ID, FALSE); - SetObjectEventSpriteAnim(id - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_IN); + SetVirtualObjectInvisibility(id - UR_SPRITE_START_ID, FALSE); + SetVirtualObjectSpriteAnim(id - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_IN); } - SetObjectEventSpriteGraphics(id - UR_SPRITE_START_ID, graphicsId); + SetVirtualObjectGraphics(id - UR_SPRITE_START_ID, graphicsId); SetUnionRoomObjectFacingDirection(memberId, leaderId, GetNewFacingDirectionForUnionRoomPlayer(memberId, leaderId, gameData)); GetUnionRoomPlayerCoords(leaderId, memberId, &x, &y); MapGridSetMetatileImpassabilityAt(x, y, TRUE); @@ -464,7 +464,7 @@ static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct R static void DespawnGroupMember(u32 leaderId, u32 memberId) { s32 x, y; - SetObjectEventSpriteAnim(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_OUT); + SetVirtualObjectSpriteAnim(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, UNION_ROOM_SPAWN_OUT); GetUnionRoomPlayerCoords(leaderId, memberId, &x, &y); MapGridSetMetatileImpassabilityAt(x, y, FALSE); } @@ -476,7 +476,7 @@ static void AssembleGroup(u32 leaderId, struct RfuGameData * gameData) PlayerGetDestCoords(&x, &y); player_get_pos_including_state_based_drift(&x2, &y2); - if (IsObjectEventSpriteInvisible(UR_PLAYER_SPRITE_ID(leaderId, 0) - UR_SPRITE_START_ID) == TRUE) + if (IsVirtualObjectInvisible(UR_PLAYER_SPRITE_ID(leaderId, 0) - UR_SPRITE_START_ID) == TRUE) { if (IsUnionRoomPlayerAt(leaderId, 0, x, y) == TRUE || IsUnionRoomPlayerAt(leaderId, 0, x2, y2) == TRUE) return; @@ -576,9 +576,9 @@ bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdP continue; // Has a group member spawned at this position? - if (IsObjectEventSpriteInvisible(id - UR_SPRITE_START_ID)) + if (IsVirtualObjectInvisible(id - UR_SPRITE_START_ID)) continue; - if (IsObjectEventSpriteAnimating(id - UR_SPRITE_START_ID)) + if (IsVirtualObjectAnimating(id - UR_SPRITE_START_ID)) continue; if (leaders[i].groupScheduledAnim != UNION_ROOM_SPAWN_IN) continue; @@ -595,9 +595,9 @@ bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdP static void SetUnionRoomObjectFacingDirection(s32 memberId, s32 leaderId, u8 newDirection) { - TurnObjectEventSprite(MAX_RFU_PLAYERS * leaderId - UR_SPRITE_START_ID + memberId, newDirection); + TurnVirtualObject(MAX_RFU_PLAYERS * leaderId - UR_SPRITE_START_ID + memberId, newDirection); // should be line below, but order is swapped here - // TurnObjectEventSprite(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, newDirection); + // TurnVirtualObject(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID, newDirection); } void UpdateUnionRoomMemberFacing(u32 memberId, u32 leaderId, struct RfuPlayerList *list) From c89dfd9f5618eef74f2d39d7c1ea3a5a5448ed8e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 00:32:28 -0500 Subject: [PATCH 443/762] Finish updating macro comments --- asm/macros/event.inc | 163 ++++++++++++++++----------- data/maps/SootopolisCity/scripts.inc | 4 +- data/script_cmd_table.inc | 20 ++-- data/scripts/cable_club.inc | 2 +- data/scripts/trainer_battle.inc | 4 +- include/field_screen_effect.h | 2 +- include/mystery_event_script.h | 10 +- src/field_screen_effect.c | 2 +- src/mystery_event_menu.c | 18 +-- src/mystery_event_script.c | 87 +++++++------- src/scrcmd.c | 48 ++++---- 11 files changed, 202 insertions(+), 158 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 90d27495af91..14634ec1e52f 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -76,63 +76,62 @@ .byte \function .endm - @ Executes a script stored in a default RAM location. + @ Equivalent to the 'return' command for a RAM script. .macro returnram .byte 0x0c .endm - @ Terminates script execution and "resets the script RAM". - .macro killscript + @ Equivalent to the 'end' command for a RAM script. + .macro endram .byte 0x0d .endm - @ Sets some status related to Mystery Event. + @ Sets the Mystery Event script status (MEVENT_STATUS_*). .macro setmysteryeventstatus value:req .byte 0x0e .byte \value .endm - @ Sets the specified script bank to value. - .macro loadword destination:req, value:req + @ Sets the value at the specified script data index to a fixed 4-byte value. + .macro loadword destIndex:req, value:req .byte 0x0f - .byte \destination + .byte \destIndex .4byte \value .endm - @ Sets the specified script bank to value. - .macro loadbyte destination:req, value:req + @ Sets the value at the specified script data index to a fixed byte value. + .macro loadbyte destIndex:req, value:req .byte 0x10 - .byte \destination + .byte \destIndex .byte \value .endm - @ Sets the byte at offset to value. - .macro writebytetoaddr value:req, offset:req + @ Sets the value at the specified pointer. + .macro setptr value:req, ptr:req .byte 0x11 .byte \value - .4byte \offset + .4byte \ptr .endm - @ Copies the byte value at source into the specified script bank. - .macro loadbytefromaddr destination:req, source:req + @ Sets the value at the specified script data index to the value at pointer 'source'. + .macro loadbytefromptr destIndex:req, source:req .byte 0x12 - .byte \destination + .byte \destIndex .4byte \source .endm - @ TODO - @ Not sure. Judging from XSE's description I think it takes the least-significant byte in bank source and writes it to destination. - .macro setptrbyte source:req, destination:req + @ Sets the value at pointer 'destination' to the contents of the script data at 'srcIndex'. + .macro setptrbyte srcIndex:req, destination:req .byte 0x13 - .byte \source + .byte \srcIndex .4byte \destination .endm - @ Copies the contents of bank source into bank destination. - .macro copylocal destination:req, source:req + @ Copies the contents of the script data from one index to another. + .macro copylocal destIndex:req, srcIndex:req .byte 0x14 - .byte \destination - .byte \source + .byte \destIndex + .byte \srcIndex .endm @ Copies the byte at source to destination, replacing whatever byte was previously there. @@ -177,56 +176,64 @@ .2byte \source .endm - @ Compares the values of script banks a and b, after forcing the values to bytes. - .macro compare_local_to_local byte1:req, byte2:req + @ 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 \byte1 - .byte \byte2 + .byte \local1 + .byte \local2 .endm - @ Compares the least-significant byte of the value of script bank a to a fixed byte value (b). - .macro compare_local_to_value a:req, b:req + @ 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 \a - .byte \b + .byte \local + .byte \value .endm - @ Compares the least-significant byte of the value of script bank a to the byte located at offset b. - .macro compare_local_to_addr a:req, b:req + @ 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 \a - .4byte \b + .byte \local + .4byte \ptr .endm - @ Compares the byte located at offset a to the least-significant byte of the value of script bank b. - .macro compare_addr_to_local a:req, b:req + @ 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 - .4byte \a - .byte \b + .4byte \ptr + .byte \local .endm - @ Compares the byte located at offset a to a fixed byte value (b). - .macro compare_addr_to_value a:req, b:req + @ 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 - .4byte \a - .byte \b + .4byte \ptr + .byte \value .endm - @ Compares the byte located at offset a to the byte located at offset b. - .macro compare_addr_to_addr a:req, b:req + @ 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 - .4byte \a - .4byte \b + .4byte \ptr1 + .4byte \ptr2 .endm - @ Compares the value of `var` to a fixed word value (b). + @ 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 .2byte \var .2byte \value .endm - @ Compares the value of `var1` to the value of `var2`. + @ 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 .2byte \var1 @@ -269,9 +276,8 @@ .2byte SPECIAL_\function .endm - @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific - @ commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock - @ state, the script will remain blocked indefinitely (essentially a hang). + @ Blocks script execution until a command or C code manually unblocks it. Generally used with specific + @ commands and specials. Calling EnableBothScriptContexts for instance will allow execution to continue. .macro waitstate .byte 0x27 .endm @@ -308,7 +314,7 @@ .2byte \minute .endm - @ Runs time based events. + @ Updates local time using the RTC and runs time based events. .macro dotimebasedevents .byte 0x2d .endm @@ -649,12 +655,14 @@ .2byte \y .endm + @ Sets the specified object's invisibility to FALSE. .macro showobjectat localId:req, map:req .byte 0x58 .2byte \localId map \map .endm + @ Sets the specified object's invisibility to TRUE. .macro hideobjectat localId:req, map:req .byte 0x59 .2byte \localId @@ -673,7 +681,7 @@ .byte \direction .endm - @ TODO + @ 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 \type @@ -770,9 +778,9 @@ .endm - @ Starts a trainer battle using the battle information stored in RAM (usually by trainerbattle, which actually calls this - @ command behind-the-scenes), and blocks script execution until the battle finishes. - .macro trainerbattlebegin + @ 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 .endm @@ -1129,7 +1137,7 @@ .byte \growthStage .endm - @ This allows you to choose a Pokemon to use in a contest + @ Opens the party menu to select a Pokemon for a contest. .macro choosecontestmon .byte 0x8b .endm @@ -1262,7 +1270,7 @@ .2byte \animation .endm - @ Sets which healing place the player will return to if all of the Pokemon in their party faint. + @ 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 .2byte \heallocation @@ -1437,43 +1445,51 @@ .byte 0xb7 .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 .4byte \pointer .endm + @ Equivalent to goto using the relative address set by setvaddress. .macro vgoto pointer:req .byte 0xb9 .4byte \pointer .endm + @ Equivalent to call using the relative address set by setvaddress. .macro vcall pointer:req .byte 0xba .4byte \pointer .endm + @ Equivalent to goto_if using the relative address set by setvaddress. .macro vgoto_if byte:req, pointer:req .byte 0xbb .byte \byte .4byte \pointer .endm + @ Equivalent to call_if using the relative address set by setvaddress. .macro vcall_if byte:req, pointer:req .byte 0xbc .byte \byte .4byte \pointer .endm + @ Equivalent to message using the relative address set by setvaddress. .macro vmessage pointer:req .byte 0xbd .4byte \pointer .endm - .macro vloadptr pointer:req + @ Expands the given text at the pointer (- the relative address set by setvaddress) into gStringVar4 + .macro vbuffermessage ptr:req .byte 0xbe - .4byte \pointer + .4byte \ptr .endm + @ Equivalent to bufferstring using the relative address set by setvaddress. .macro vbufferstring stringVarIndex:req, pointer:req .byte 0xbf stringvar \stringVarIndex @@ -1576,7 +1592,7 @@ @ 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 gotowondercardscript + .macro trywondercardscript .byte 0xcf .endm @@ -1586,6 +1602,8 @@ .2byte \worldmapflag .endm + @ Warps the player to the specified map using a teleport effect. Effect is similar to warpteleport, but + @ this warp has no fade out and maintains the original facing direction. @ 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 @@ -1625,6 +1643,8 @@ .byte 0xd6 .endm + @ Warp used by the teleport tiles in the Mossdeep Gym. Plays SE_WARP_IN and does a simple fade transition. + @ Also skips reloading object events by setting SKIP_OBJECT_EVENT_LOAD. @ 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 @@ -1655,15 +1675,19 @@ .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 \mode .endm - .macro buffertrainerclassname stringVarId:req, class:req + @ 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 stringvar \stringVarId - .2byte \class + .2byte \trainerId .endm @ Buffers the specified trainer's name to the given string var. @@ -1680,9 +1704,10 @@ .4byte \text .endm + @ Warp with a fade to white. Used during the Sootopolis legendary fight. @ 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 warpsootopolislegend map:req, a, b, c + .macro warpwhitefade map:req, a, b, c .byte 0xe0 formatwarp \map, \a, \b, \c .endm @@ -1835,6 +1860,7 @@ YES = 1 NO = 0 + @ Buffers the given text and calls the relevant standard message script (see gStdScripts). .macro msgbox text:req, type=MSGBOX_DEFAULT loadword 0, \text callstd \type @@ -1850,17 +1876,21 @@ callstd STD_OBTAIN_ITEM .endm + @ For picking up items in the overworld. Similar to giveitem, but with different language and + @ sets the flag of the last-talked to object (the item the player picked up). .macro finditem item:req, amount=1 setorcopyvar VAR_0x8000, \item setorcopyvar VAR_0x8001, \amount callstd STD_FIND_ITEM .endm + @ Equivalent to giveitem but for a single decoration. .macro givedecoration decoration:req setorcopyvar VAR_0x8000, \decoration callstd STD_OBTAIN_DECORATION .endm + @ Registers the specified trainer in Match Call and plays a fanfare with a notification message. .macro register_matchcall trainer:req setvar VAR_0x8004, \trainer special SetMatchCallRegisteredFlag @@ -1868,6 +1898,7 @@ callstd STD_REGISTER_MATCH_CALL .endm + @ Does a sparkle field effect (e.g. when the Trick Master is hiding) at the given coordinates. .macro dofieldeffectsparkle x:req, y:req, priority:req setfieldeffectargument 0, \x setfieldeffectargument 1, \y diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index 6ef5b7790e09..92a97ac4c4c3 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -565,7 +565,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: fadenewbgm MUS_SOOTOPOLIS delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warpsootopolislegend MAP_SOOTOPOLIS_CITY, 43, 32 + warpwhitefade MAP_SOOTOPOLIS_CITY, 43, 32 waitstate end @@ -618,7 +618,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: fadenewbgm MUS_SURF delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warpsootopolislegend MAP_SOOTOPOLIS_CITY, 29, 53 + warpwhitefade MAP_SOOTOPOLIS_CITY, 29, 53 waitstate end diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 3d2ab82a9eb9..48ec7918a434 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -13,12 +13,12 @@ gScriptCmdTable:: .4byte ScrCmd_gotostd_if @ 0x0a .4byte ScrCmd_callstd_if @ 0x0b .4byte ScrCmd_returnram @ 0x0c - .4byte ScrCmd_killscript @ 0x0d + .4byte ScrCmd_endram @ 0x0d .4byte ScrCmd_setmysteryeventstatus @ 0x0e .4byte ScrCmd_loadword @ 0x0f .4byte ScrCmd_loadbyte @ 0x10 - .4byte ScrCmd_writebytetoaddr @ 0x11 - .4byte ScrCmd_loadbytefromaddr @ 0x12 + .4byte ScrCmd_setptr @ 0x11 + .4byte ScrCmd_loadbytefromptr @ 0x12 .4byte ScrCmd_setptrbyte @ 0x13 .4byte ScrCmd_copylocal @ 0x14 .4byte ScrCmd_copybyte @ 0x15 @@ -29,10 +29,10 @@ gScriptCmdTable:: .4byte ScrCmd_setorcopyvar @ 0x1a .4byte ScrCmd_compare_local_to_local @ 0x1b .4byte ScrCmd_compare_local_to_value @ 0x1c - .4byte ScrCmd_compare_local_to_addr @ 0x1d - .4byte ScrCmd_compare_addr_to_local @ 0x1e - .4byte ScrCmd_compare_addr_to_value @ 0x1f - .4byte ScrCmd_compare_addr_to_addr @ 0x20 + .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 @@ -190,7 +190,7 @@ gScriptCmdTable:: .4byte ScrCmd_vgoto_if @ 0xbb .4byte ScrCmd_vcall_if @ 0xbc .4byte ScrCmd_vmessage @ 0xbd - .4byte ScrCmd_vloadword @ 0xbe + .4byte ScrCmd_vbuffermessage @ 0xbe .4byte ScrCmd_vbufferstring @ 0xbf .4byte ScrCmd_showcoinsbox @ 0xc0 .4byte ScrCmd_hidecoinsbox @ 0xc1 @@ -207,7 +207,7 @@ gScriptCmdTable:: .4byte ScrCmd_nop1 @ 0xcc .4byte ScrCmd_setmoneventlegal @ 0xcd .4byte ScrCmd_checkmoneventlegal @ 0xce - .4byte ScrCmd_gotowondercardscript @ 0xcf + .4byte ScrCmd_trywondercardscript @ 0xcf .4byte ScrCmd_nop1 @ 0xd0 .4byte ScrCmd_warpspinenter @ 0xd1 .4byte ScrCmd_setmonmetlocation @ 0xd2 @@ -224,7 +224,7 @@ gScriptCmdTable:: .4byte ScrCmd_buffertrainerclassname @ 0xdd .4byte ScrCmd_buffertrainername @ 0xde .4byte ScrCmd_pokenavcall @ 0xdf - .4byte ScrCmd_warpsootopolislegend @ 0xe0 + .4byte ScrCmd_warpwhitefade @ 0xe0 .4byte ScrCmd_buffercontestname @ 0xe1 .4byte ScrCmd_bufferitemnameplural @ 0xe2 diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 790871d1403b..fa4d67da7f9f 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -28,7 +28,7 @@ CableClub_EventScript_MysteryGiftMan:: end CableClub_EventScript_TryWonderCardScript:: - gotowondercardscript + trywondercardscript CableClub_EventScript_MysteryGiftThankYou:: msgbox gText_ThankYouForAccessingMysteryGift, MSGBOX_NPC end diff --git a/data/scripts/trainer_battle.inc b/data/scripts/trainer_battle.inc index 0528c815c67a..38cf6328100e 100644 --- a/data/scripts/trainer_battle.inc +++ b/data/scripts/trainer_battle.inc @@ -50,7 +50,7 @@ EventScript_DoNoIntroTrainerBattle:: applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 special PlayTrainerEncounterMusic - trainerbattlebegin + dotrainerbattle gotopostbattlescript EventScript_TryDoRematchBattle:: @@ -117,7 +117,7 @@ EventScript_ShowTrainerIntroMsg:: goto EventScript_DoTrainerBattle EventScript_DoTrainerBattle:: - trainerbattlebegin + dotrainerbattle @ Below battle mode check only needed in FRLG specialvar VAR_RESULT, GetTrainerBattleMode compare VAR_RESULT, TRAINER_BATTLE_SINGLE diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h index 973e06ef305c..6dc9b077d219 100644 --- a/include/field_screen_effect.h +++ b/include/field_screen_effect.h @@ -22,7 +22,7 @@ void FieldCB_ReturnToFieldNoScript(void); void FieldCB_ReturnToFieldNoScriptCheckMusic(void); void DoWarp(void); void DoDiveWarp(void); -void DoSootopolisLegendWarp(void); +void DoWhiteFadeWarp(void); void DoDoorWarp(void); void DoFallWarp(void); void DoEscalatorWarp(u8 metatileBehavior); diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index 32b9f009f658..198a07e85707 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -1,8 +1,16 @@ #ifndef GUARD_MYSTERY_EVENT_SCRIPT_H #define GUARD_MYSTERY_EVENT_SCRIPT_H +enum { + MEVENT_STATUS_LOAD_OK, + MEVENT_STATUS_LOAD_ERROR, + MEVENT_STATUS_SUCCESS, + MEVENT_STATUS_FAILURE, + MEVENT_STATUS_FF = 0xFF +}; + void InitMysteryEventScriptContext(u8 *script); -bool32 RunMysteryEventScriptContextCommand(u32 *script); +bool32 RunMysteryEventScriptContextCommand(u32 *status); u32 RunMysteryEventScript(u8 *script); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 9155903af17a..eda14672588f 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -502,7 +502,7 @@ void DoDiveWarp(void) CreateTask(Task_WarpAndLoadMap, 10); } -void DoSootopolisLegendWarp(void) +void DoWhiteFadeWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 717931268a35..0007664ba178 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -111,16 +111,16 @@ static bool8 GetEventLoadMessage(u8 *dest, u32 status) { bool8 retVal = TRUE; - if (status == 0) + if (status == MEVENT_STATUS_LOAD_OK) { StringCopy(dest, gText_EventSafelyLoaded); retVal = FALSE; } - if (status == 2) + if (status == MEVENT_STATUS_SUCCESS) retVal = FALSE; - if (status == 1) + if (status == MEVENT_STATUS_LOAD_ERROR) StringCopy(dest, gText_LoadErrorEndingSession); return retVal; @@ -193,7 +193,7 @@ static void CB2_MysteryEventMenu(void) } else { - GetEventLoadMessage(gStringVar4, 1); + GetEventLoadMessage(gStringVar4, MEVENT_STATUS_LOAD_ERROR); PrintMysteryMenuText(0, gStringVar4, 1, 2, 1); gMain.state = 13; } @@ -206,7 +206,7 @@ static void CB2_MysteryEventMenu(void) if (GetLinkPlayerDataExchangeStatusTimed(2, 2) == EXCHANGE_DIFF_SELECTIONS) { SetCloseLinkCallback(); - GetEventLoadMessage(gStringVar4, 1); + GetEventLoadMessage(gStringVar4, MEVENT_STATUS_LOAD_ERROR); PrintMysteryMenuText(0, gStringVar4, 1, 2, 1); gMain.state = 13; } @@ -218,7 +218,7 @@ static void CB2_MysteryEventMenu(void) else { CloseLink(); - GetEventLoadMessage(gStringVar4, 1); + GetEventLoadMessage(gStringVar4, MEVENT_STATUS_LOAD_ERROR); PrintMysteryMenuText(0, gStringVar4, 1, 2, 1); gMain.state = 13; } @@ -252,9 +252,9 @@ static void CB2_MysteryEventMenu(void) case 11: if (gReceivedRemoteLinkPlayers == 0) { - u16 unkVal = RunMysteryEventScript(gDecompressionBuffer); + u16 status = RunMysteryEventScript(gDecompressionBuffer); CpuFill32(0, gDecompressionBuffer, 0x7D4); - if (!GetEventLoadMessage(gStringVar4, unkVal)) + if (!GetEventLoadMessage(gStringVar4, status)) TrySavingData(SAVE_NORMAL); gMain.state++; } @@ -290,7 +290,7 @@ static void CB2_MysteryEventMenu(void) if (gLinkStatus & 0x40 && !IsLinkMaster()) { CloseLink(); - GetEventLoadMessage(gStringVar4, 1); + GetEventLoadMessage(gStringVar4, MEVENT_STATUS_LOAD_ERROR); PrintMysteryMenuText(0, gStringVar4, 1, 2, 1); gMain.state = 13; } diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 18a1a0d07cb3..5f08c629486e 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -22,6 +22,11 @@ extern ScrCmdFunc gMysteryEventScriptCmdTableEnd[]; #define LANGUAGE_MASK 0x1 #define VERSION_MASK 0x200 +#define mScriptBase data[0] +#define mOffset data[1] +#define mStatus data[2] +#define mValid data[3] + EWRAM_DATA static struct ScriptContext sMysteryEventScriptContext = {0}; static bool32 CheckCompatibility(u16 a1, u32 a2, u16 a3, u32 a4) @@ -44,22 +49,22 @@ static bool32 CheckCompatibility(u16 a1, u32 a2, u16 a3, u32 a4) static void SetIncompatible(void) { StringExpandPlaceholders(gStringVar4, gText_MysteryEventCantBeUsed); - SetMysteryEventScriptStatus(3); + SetMysteryEventScriptStatus(MEVENT_STATUS_FAILURE); } static void InitMysteryEventScript(struct ScriptContext *ctx, u8 *script) { InitScriptContext(ctx, gMysteryEventScriptCmdTable, gMysteryEventScriptCmdTableEnd); SetupBytecodeScript(ctx, script); - ctx->data[0] = (u32)script; - ctx->data[1] = 0; - ctx->data[2] = 0; - ctx->data[3] = 0; + ctx->mScriptBase = (u32)script; + ctx->mOffset = 0; + ctx->mStatus = MEVENT_STATUS_LOAD_OK; + ctx->mValid = FALSE; } static bool32 RunMysteryEventScriptCommand(struct ScriptContext *ctx) { - if (RunScriptCommand(ctx) && ctx->data[3]) + if (RunScriptCommand(ctx) && ctx->mValid) return TRUE; else return FALSE; @@ -70,10 +75,10 @@ void InitMysteryEventScriptContext(u8 *script) InitMysteryEventScript(&sMysteryEventScriptContext, script); } -bool32 RunMysteryEventScriptContextCommand(u32 *script) +bool32 RunMysteryEventScriptContextCommand(u32 *status) { bool32 ret = RunMysteryEventScriptCommand(&sMysteryEventScriptContext); - *script = sMysteryEventScriptContext.data[2]; + *status = sMysteryEventScriptContext.mStatus; return ret; } @@ -84,12 +89,12 @@ u32 RunMysteryEventScript(u8 *script) InitMysteryEventScript(ctx, script); while (RunMysteryEventScriptCommand(ctx)); - return ctx->data[2]; + return ctx->mStatus; } -void SetMysteryEventScriptStatus(u32 val) +void SetMysteryEventScriptStatus(u32 status) { - sMysteryEventScriptContext.data[2] = val; + sMysteryEventScriptContext.mStatus = status; } static int CalcRecordMixingGiftChecksum(void) @@ -174,14 +179,14 @@ bool8 MEScrCmd_checkcompat(struct ScriptContext *ctx) u16 v3; u32 v4; - ctx->data[1] = ScriptReadWord(ctx); + ctx->mOffset = ScriptReadWord(ctx); v1 = ScriptReadHalfword(ctx); v2 = ScriptReadWord(ctx); v3 = ScriptReadHalfword(ctx); v4 = ScriptReadWord(ctx); if (CheckCompatibility(v1, v2, v3, v4) == TRUE) - ctx->data[3] = 1; + ctx->mValid = TRUE; else SetIncompatible(); @@ -195,23 +200,23 @@ bool8 MEScrCmd_nop(struct ScriptContext *ctx) bool8 MEScrCmd_setstatus(struct ScriptContext *ctx) { - u8 value = ScriptReadByte(ctx); - ctx->data[2] = value; + u8 status = ScriptReadByte(ctx); + ctx->mStatus = status; return FALSE; } bool8 MEScrCmd_setmsg(struct ScriptContext *ctx) { - u8 value = ScriptReadByte(ctx); - u8 *str = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); - if (value == 0xFF || value == ctx->data[2]) + u8 status = ScriptReadByte(ctx); + u8 *str = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); + if (status == MEVENT_STATUS_FF || status == ctx->mStatus) StringExpandPlaceholders(gStringVar4, str); return FALSE; } bool8 MEScrCmd_runscript(struct ScriptContext *ctx) { - u8 *script = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); + u8 *script = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); ScriptContext2_RunNewScript(script); return FALSE; } @@ -221,7 +226,7 @@ bool8 MEScrCmd_setenigmaberry(struct ScriptContext *ctx) u8 *str; const u8 *message; bool32 haveBerry = IsEnigmaBerryValid(); - u8 *berry = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); + u8 *berry = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); StringCopyN(gStringVar1, gSaveBlock1Ptr->enigmaBerry.berry.name, BERRY_NAME_LENGTH + 1); SetEnigmaBerry(berry); StringCopyN(gStringVar2, gSaveBlock1Ptr->enigmaBerry.berry.name, BERRY_NAME_LENGTH + 1); @@ -244,12 +249,12 @@ bool8 MEScrCmd_setenigmaberry(struct ScriptContext *ctx) StringExpandPlaceholders(str, message); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; if (IsEnigmaBerryValid() == TRUE) VarSet(VAR_ENIGMA_BERRY_AVAILABLE, 1); else - ctx->data[2] = 1; + ctx->mStatus = MEVENT_STATUS_LOAD_ERROR; return FALSE; } @@ -260,7 +265,7 @@ bool8 MEScrCmd_giveribbon(struct ScriptContext *ctx) u8 ribbonId = ScriptReadByte(ctx); GiveGiftRibbonToParty(index, ribbonId); StringExpandPlaceholders(gStringVar4, gText_MysteryEventSpecialRibbon); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; return FALSE; } @@ -269,8 +274,8 @@ bool8 MEScrCmd_initramscript(struct ScriptContext *ctx) u8 mapGroup = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx); u8 objectId = ScriptReadByte(ctx); - u8 *script = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); - u8 *scriptEnd = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); + u8 *script = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); + u8 *scriptEnd = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); InitRamScript(script, scriptEnd - script, mapGroup, mapNum, objectId); return FALSE; } @@ -279,7 +284,7 @@ bool8 MEScrCmd_givenationaldex(struct ScriptContext *ctx) { EnableNationalPokedex(); StringExpandPlaceholders(gStringVar4, gText_MysteryEventNationalDex); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; return FALSE; } @@ -287,7 +292,7 @@ bool8 MEScrCmd_addrareword(struct ScriptContext *ctx) { UnlockAdditionalPhrase(ScriptReadByte(ctx)); StringExpandPlaceholders(gStringVar4, gText_MysteryEventRareWord); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; return FALSE; } @@ -306,7 +311,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) struct Pokemon pokemon; u16 species; u16 heldItem; - u32 data = ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]; + u32 data = ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase; void *pokemonPtr = (void *)data; void *mailPtr = (void *)(data + sizeof(struct Pokemon)); @@ -321,7 +326,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) if (gPlayerPartyCount == PARTY_SIZE) { StringExpandPlaceholders(gStringVar4, gText_MysteryEventFullParty); - ctx->data[2] = 3; + ctx->mStatus = MEVENT_STATUS_FAILURE; } else { @@ -341,7 +346,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) CompactPartySlots(); CalculatePlayerPartyCount(); StringExpandPlaceholders(gStringVar4, gText_MysteryEventSentOver); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; } return FALSE; @@ -349,11 +354,11 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx) bool8 MEScrCmd_addtrainer(struct ScriptContext *ctx) { - u32 data = ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]; + u32 data = ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase; memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, (void *)data, sizeof(gSaveBlock2Ptr->frontier.ereaderTrainer)); ValidateEReaderTrainer(); StringExpandPlaceholders(gStringVar4, gText_MysteryEventNewTrainer); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; return FALSE; } @@ -361,19 +366,19 @@ bool8 MEScrCmd_enableresetrtc(struct ScriptContext *ctx) { EnableResetRTC(); StringExpandPlaceholders(gStringVar4, gText_InGameClockUsable); - ctx->data[2] = 2; + ctx->mStatus = MEVENT_STATUS_SUCCESS; return FALSE; } bool8 MEScrCmd_checksum(struct ScriptContext *ctx) { int checksum = ScriptReadWord(ctx); - u8 *data = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); - u8 *dataEnd = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); + u8 *data = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); + u8 *dataEnd = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); if (checksum != CalcByteArraySum(data, dataEnd - data)) { - ctx->data[3] = 0; - ctx->data[2] = 1; + ctx->mValid = FALSE; + ctx->mStatus = MEVENT_STATUS_LOAD_ERROR; } return TRUE; } @@ -381,12 +386,12 @@ bool8 MEScrCmd_checksum(struct ScriptContext *ctx) bool8 MEScrCmd_crc(struct ScriptContext *ctx) { int crc = ScriptReadWord(ctx); - u8 *data = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); - u8 *dataEnd = (u8 *)(ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0]); + u8 *data = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); + u8 *dataEnd = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); if (crc != CalcCRC16(data, dataEnd - data)) { - ctx->data[3] = 0; - ctx->data[2] = 1; + ctx->mValid = FALSE; + ctx->mStatus = MEVENT_STATUS_LOAD_ERROR; } return TRUE; } diff --git a/src/scrcmd.c b/src/scrcmd.c index 028b714d0631..2c18cb565e8c 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -286,7 +286,7 @@ bool8 ScrCmd_returnram(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_killscript(struct ScriptContext *ctx) +bool8 ScrCmd_endram(struct ScriptContext *ctx) { ClearRamScript(); StopScript(ctx); @@ -295,9 +295,9 @@ bool8 ScrCmd_killscript(struct ScriptContext *ctx) bool8 ScrCmd_setmysteryeventstatus(struct ScriptContext *ctx) { - u8 value = ScriptReadByte(ctx); + u8 status = ScriptReadByte(ctx); - SetMysteryEventScriptStatus(value); + SetMysteryEventScriptStatus(status); return FALSE; } @@ -309,7 +309,7 @@ bool8 ScrCmd_loadword(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_loadbytefromaddr(struct ScriptContext *ctx) +bool8 ScrCmd_loadbytefromptr(struct ScriptContext *ctx) { u8 index = ScriptReadByte(ctx); @@ -317,7 +317,7 @@ bool8 ScrCmd_loadbytefromaddr(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_writebytetoaddr(struct ScriptContext *ctx) +bool8 ScrCmd_setptr(struct ScriptContext *ctx) { u8 value = ScriptReadByte(ctx); @@ -405,7 +405,7 @@ bool8 ScrCmd_compare_local_to_value(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_compare_local_to_addr(struct ScriptContext *ctx) +bool8 ScrCmd_compare_local_to_ptr(struct ScriptContext *ctx) { const u8 value1 = ctx->data[ScriptReadByte(ctx)]; const u8 value2 = *(const u8 *)ScriptReadWord(ctx); @@ -414,7 +414,7 @@ bool8 ScrCmd_compare_local_to_addr(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_compare_addr_to_local(struct ScriptContext *ctx) +bool8 ScrCmd_compare_ptr_to_local(struct ScriptContext *ctx) { const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value2 = ctx->data[ScriptReadByte(ctx)]; @@ -423,7 +423,7 @@ bool8 ScrCmd_compare_addr_to_local(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_compare_addr_to_value(struct ScriptContext *ctx) +bool8 ScrCmd_compare_ptr_to_value(struct ScriptContext *ctx) { const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value2 = ScriptReadByte(ctx); @@ -432,7 +432,7 @@ bool8 ScrCmd_compare_addr_to_value(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_compare_addr_to_addr(struct ScriptContext *ctx) +bool8 ScrCmd_compare_ptr_to_ptr(struct ScriptContext *ctx) { const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value2 = *(const u8 *)ScriptReadWord(ctx); @@ -646,17 +646,17 @@ bool8 ScrCmd_fadescreenswapbuffers(struct ScriptContext *ctx) switch (mode) { - case FADE_TO_BLACK: - case FADE_TO_WHITE: - default: - CpuCopy32(gPlttBufferUnfaded, gPaletteDecompressionBuffer, PLTT_DECOMP_BUFFER_SIZE); - FadeScreen(mode, 0); - break; - case FADE_FROM_BLACK: - case FADE_FROM_WHITE: - CpuCopy32(gPaletteDecompressionBuffer, gPlttBufferUnfaded, PLTT_DECOMP_BUFFER_SIZE); - FadeScreen(mode, 0); - break; + case FADE_TO_BLACK: + case FADE_TO_WHITE: + default: + CpuCopy32(gPlttBufferUnfaded, gPaletteDecompressionBuffer, PLTT_DECOMP_BUFFER_SIZE); + FadeScreen(mode, 0); + break; + case FADE_FROM_BLACK: + case FADE_FROM_WHITE: + CpuCopy32(gPaletteDecompressionBuffer, gPlttBufferUnfaded, PLTT_DECOMP_BUFFER_SIZE); + FadeScreen(mode, 0); + break; } SetupNativeScript(ctx, IsPaletteNotActive); @@ -1653,7 +1653,7 @@ bool8 ScrCmd_bufferstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_vloadword(struct ScriptContext *ctx) +bool8 ScrCmd_vbuffermessage(struct ScriptContext *ctx) { const u8 *ptr = (u8 *)(ScriptReadWord(ctx) - sAddressOffset); @@ -2227,7 +2227,7 @@ bool8 ScrCmd_checkmoneventlegal(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_gotowondercardscript(struct ScriptContext *ctx) +bool8 ScrCmd_trywondercardscript(struct ScriptContext *ctx) { const u8* script = GetSavedRamScriptIfValid(); @@ -2295,7 +2295,7 @@ void SetMovingNpcId(u16 npcId) sMovingNpcId = npcId; } -bool8 ScrCmd_warpsootopolislegend(struct ScriptContext *ctx) +bool8 ScrCmd_warpwhitefade(struct ScriptContext *ctx) { u8 mapGroup = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx); @@ -2304,7 +2304,7 @@ bool8 ScrCmd_warpsootopolislegend(struct ScriptContext *ctx) u16 y = VarGet(ScriptReadHalfword(ctx)); SetWarpDestination(mapGroup, mapNum, warpId, x, y); - DoSootopolisLegendWarp(); + DoWhiteFadeWarp(); ResetInitialPlayerAvatarState(); return TRUE; } From 591ab7241f04fc40114cb2c81c3fc87f85365eda Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 17:24:43 -0500 Subject: [PATCH 444/762] Macro comment typo fix, Object->object --- asm/macros/event.inc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 14634ec1e52f..7d34a00f3547 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -588,7 +588,7 @@ .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. + @ 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 @@ -603,9 +603,9 @@ .endif .endm - @ Blocks script execution until the movements being applied to the specified (localId) Object finish. - @ If the specified Object is 0, then the command will block script execution until all Objects - @ affected by applymovement finish their movements. If the specified Object is not currently being + @ Blocks script execution until the movements being applied to the specified (localId) object finish. + @ If the specified object is 0, then the command will block script execution until all objects + @ affected by applymovement finish their movements. 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 @@ -619,7 +619,7 @@ .endif .endm - @ Attempts to despawn the specified (localId) Object on the specified (map_group, map_num) map. + @ Attempts to despawn the specified (localId) object on the specified map. @ It also sets the object's visibility flag if it has one. @ If no map is specified, then the current map is used. .macro removeobject localId:req, map @@ -633,8 +633,8 @@ .endif .endm - @ Attempts to spawn the specified (localId) Object the specified (map_group, map_num) map. - @ Note that unlike removeobject this does not modify the OObject's flag. + @ Attempts to spawn the specified (localId) object the specified map. + @ Note that unlike removeobject this does not modify the object's flag. @ If no map is specified, then the current map is used. .macro addobject localId:req, map .ifb \map @@ -647,7 +647,7 @@ .endif .endm - @ Sets the specified (localId) Object's position on the current map. + @ Sets the specified (localId) object's position on the current map. .macro setobjectxy localId:req, x:req, y:req .byte 0x57 .2byte \localId From 6c6487dd7af6f59061314bcffd17b31ad120885d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 21:02:22 -0500 Subject: [PATCH 445/762] Missing spaces to tabs in scripts files --- data/scripts/lilycove_lady.inc | 1186 +++++++++++++-------------- data/scripts/pkmn_center_nurse.inc | 204 ++--- data/scripts/shared_secret_base.inc | 302 +++---- 3 files changed, 846 insertions(+), 846 deletions(-) diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index 6c11da105a0d..c6192b772369 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -2,858 +2,858 @@ .set LOCALID_LADYS_MON, 5 LilycoveCity_PokemonCenter_1F_EventScript_LilycoveLady:: - special Script_GetLilycoveLadyId - switch VAR_RESULT - case LILYCOVE_LADY_QUIZ, LilycoveCity_PokemonCenter_1F_EventScript_QuizLady - case LILYCOVE_LADY_FAVOR, LilycoveCity_PokemonCenter_1F_EventScript_FavorLady - case LILYCOVE_LADY_CONTEST, LilycoveCity_PokemonCenter_1F_EventScript_ContestLady - end + special Script_GetLilycoveLadyId + switch VAR_RESULT + case LILYCOVE_LADY_QUIZ, LilycoveCity_PokemonCenter_1F_EventScript_QuizLady + case LILYCOVE_LADY_FAVOR, LilycoveCity_PokemonCenter_1F_EventScript_FavorLady + case LILYCOVE_LADY_CONTEST, LilycoveCity_PokemonCenter_1F_EventScript_ContestLady + end LilycoveCity_PokemonCenter_1F_EventScript_FavorLady:: - lock - faceplayer - msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady, MSGBOX_DEFAULT - specialvar VAR_RESULT, GetFavorLadyState - compare VAR_RESULT, LILYCOVE_LADY_STATE_READY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady - compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted - compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize - end + lock + faceplayer + msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady, MSGBOX_DEFAULT + specialvar VAR_RESULT, GetFavorLadyState + compare VAR_RESULT, LILYCOVE_LADY_STATE_READY + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady + compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted + compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize + end LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted:: - msgbox LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady:: - special BufferFavorLadyRequest - msgbox LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing, MSGBOX_DEFAULT - specialvar VAR_RESULT, HasAnotherPlayerGivenFavorLadyItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_RequestItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem - end + special BufferFavorLadyRequest + msgbox LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing, MSGBOX_DEFAULT + specialvar VAR_RESULT, HasAnotherPlayerGivenFavorLadyItem + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_RequestItem + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem + end LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem:: - special BufferFavorLadyItemName - special BufferFavorLadyPlayerName - specialvar VAR_RESULT, DidFavorLadyLikeItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing - end + special BufferFavorLadyItemName + special BufferFavorLadyPlayerName + specialvar VAR_RESULT, DidFavorLadyLikeItem + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing + end LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing:: - msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem - end + msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem + end LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing:: - msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem - end + msgbox LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_RequestItem + end LilycoveCity_PokemonCenter_1F_EventScript_RequestItem:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor + end LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor:: - msgbox LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem + end LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: - fadescreen FADE_TO_BLACK - setvar VAR_RESULT, 0 - special Script_FavorLadyOpenBagMenu - waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem - end + fadescreen FADE_TO_BLACK + setvar VAR_RESULT, 0 + special Script_FavorLadyOpenBagMenu + waitstate + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem + end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem:: - msgbox LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem - end + msgbox LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem + end LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem:: - specialvar VAR_RESULT, Script_DoesFavorLadyLikeItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem - end + specialvar VAR_RESULT, Script_DoesFavorLadyLikeItem + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem + end LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem:: - special BufferFavorLadyRequest - msgbox LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt, MSGBOX_DEFAULT - release - end + special BufferFavorLadyRequest + msgbox LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem:: - specialvar VAR_RESULT, IsFavorLadyThresholdMet - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem - end + specialvar VAR_RESULT, IsFavorLadyThresholdMet + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem + end LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem:: - special BufferFavorLadyRequest - msgbox LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis, MSGBOX_DEFAULT - release - end + special BufferFavorLadyRequest + msgbox LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem:: - special BufferFavorLadyRequest - msgbox LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize - end + special BufferFavorLadyRequest + msgbox LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize + end LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize:: - setvar VAR_0x8004, 0 - specialvar VAR_0x8004, FavorLadyGetPrize - msgbox LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn, MSGBOX_DEFAULT - giveitem VAR_0x8004 - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize - end + setvar VAR_0x8004, 0 + specialvar VAR_0x8004, FavorLadyGetPrize + msgbox LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn, MSGBOX_DEFAULT + giveitem VAR_0x8004 + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize + end LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize:: - msgbox LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize:: - special SetFavorLadyState_Complete - release - end + special SetFavorLadyState_Complete + release + end LilycoveCity_PokemonCenter_1F_EventScript_QuizLady:: - lock - faceplayer - msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady, MSGBOX_DEFAULT - specialvar VAR_RESULT, GetQuizLadyState - compare VAR_RESULT, LILYCOVE_LADY_STATE_READY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz - compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz - compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize - end + lock + faceplayer + msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady, MSGBOX_DEFAULT + specialvar VAR_RESULT, GetQuizLadyState + compare VAR_RESULT, LILYCOVE_LADY_STATE_READY + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz + compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz + compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize + end LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz:: - specialvar VAR_RESULT, GetQuizAuthor - compare VAR_RESULT, QUIZ_AUTHOR_PLAYER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz - compare VAR_RESULT, QUIZ_AUTHOR_OTHER_PLAYER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady - compare VAR_RESULT, QUIZ_AUTHOR_LADY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady - end + specialvar VAR_RESULT, GetQuizAuthor + compare VAR_RESULT, QUIZ_AUTHOR_PLAYER + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz + compare VAR_RESULT, QUIZ_AUTHOR_OTHER_PLAYER + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady + compare VAR_RESULT, QUIZ_AUTHOR_LADY + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady + end LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz:: - specialvar VAR_RESULT, IsQuizLadyWaitingForChallenger - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz - end + specialvar VAR_RESULT, IsQuizLadyWaitingForChallenger + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz:: - setvar VAR_0x8004, 0 - msgbox LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz - end + setvar VAR_0x8004, 0 + msgbox LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_HowBoringBye, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_HowBoringBye, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz:: - special ClearQuizLadyPlayerAnswer - compare VAR_0x8004, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion - compare VAR_0x8004, EASY_CHAT_TYPE_QUIZ_ANSWER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer + special ClearQuizLadyPlayerAnswer + compare VAR_0x8004, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion + compare VAR_0x8004, EASY_CHAT_TYPE_QUIZ_ANSWER + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState:: - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse - end + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse + end LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion:: - special QuizLadyShowQuizQuestion - waitstate - goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState - end + special QuizLadyShowQuizQuestion + waitstate + goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState + end LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer:: - special QuizLadyGetPlayerAnswer - waitstate - goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState - end + special QuizLadyGetPlayerAnswer + waitstate + goto LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState + end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz - end + msgbox LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse:: - special SetQuizLadyState_Complete - msgbox LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer, MSGBOX_DEFAULT - specialvar VAR_RESULT, IsQuizAnswerCorrect - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse - end + special SetQuizLadyState_Complete + msgbox LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer, MSGBOX_DEFAULT + specialvar VAR_RESULT, IsQuizAnswerCorrect + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse + end LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse:: - playse SE_SUCCESS - delay 10 - playse SE_SUCCESS - msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRight, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize - end + playse SE_SUCCESS + delay 10 + playse SE_SUCCESS + msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRight, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize + end LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse:: - special BufferQuizCorrectAnswer - special BufferQuizPrizeName - playse SE_FAILURE - delay 10 - playse SE_FAILURE - msgbox LilycoveCity_PokemonCenter_1F_Text_WrongTheCorrectAnswerIs, MSGBOX_DEFAULT - msgbox LilycoveCity_PokemonCenter_1F_Text_IGetToKeepPrize, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz - end + special BufferQuizCorrectAnswer + special BufferQuizPrizeName + playse SE_FAILURE + delay 10 + playse SE_FAILURE + msgbox LilycoveCity_PokemonCenter_1F_Text_WrongTheCorrectAnswerIs, MSGBOX_DEFAULT + msgbox LilycoveCity_PokemonCenter_1F_Text_IGetToKeepPrize, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz + end @ VAR_RESULT is essentially ignored, both jumps are identical LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize:: - specialvar VAR_RESULT, BufferQuizAuthorNameAndCheckIfLady - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1 - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0 - end + specialvar VAR_RESULT, BufferQuizAuthorNameAndCheckIfLady + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1 + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0 + end LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1:: - msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize - end + msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize + end LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0:: - msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize - end + msgbox LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_GivePrize + end LilycoveCity_PokemonCenter_1F_EventScript_GivePrize:: - setvar VAR_0x8005, 0 - special BufferQuizPrizeItem - special SetQuizLadyState_Complete - giveitem VAR_0x8005 - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize - goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz - end + setvar VAR_0x8005, 0 + special BufferQuizPrizeItem + special SetQuizLadyState_Complete + giveitem VAR_0x8005 + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize + goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize:: - msgbox LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp, MSGBOX_DEFAULT - special SetQuizLadyState_GivePrize - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp, MSGBOX_DEFAULT + special SetQuizLadyState_GivePrize + release + end LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz - end + msgbox LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: - special QuizLadyPickNewQuestion - msgbox LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime, MSGBOX_DEFAULT - release - end + special QuizLadyPickNewQuestion + msgbox LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_PickYourPrize, MSGBOX_DEFAULT + msgbox LilycoveCity_PokemonCenter_1F_Text_PickYourPrize, MSGBOX_DEFAULT LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: - fadescreen FADE_TO_BLACK - setvar VAR_RESULT, 0 - special Script_QuizLadyOpenBagMenu - waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz - end + fadescreen FADE_TO_BLACK + setvar VAR_RESULT, 0 + special Script_QuizLadyOpenBagMenu + waitstate + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize:: - msgbox LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PickPrize - end + msgbox LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PickPrize + end LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz, MSGBOX_DEFAULT - special ClearQuizLadyQuestionAndAnswer - special ClearQuizLadyPlayerAnswer - setvar VAR_0x8004, EASY_CHAT_TYPE_QUIZ_QUESTION + msgbox LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz, MSGBOX_DEFAULT + special ClearQuizLadyQuestionAndAnswer + special ClearQuizLadyPlayerAnswer + setvar VAR_0x8004, EASY_CHAT_TYPE_QUIZ_QUESTION LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: - fadescreen FADE_TO_BLACK - special QuizLadySetCustomQuestion - waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion - goto LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz - end + fadescreen FADE_TO_BLACK + special QuizLadySetCustomQuestion + waitstate + compare VAR_RESULT, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion + goto LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz + end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion:: - msgbox LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion - end + msgbox LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion + end LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz:: - special QuizLadyTakePrizeForCustomQuiz - special QuizLadyRecordCustomQuizData - special QuizLadySetWaitingForChallenger - msgbox LilycoveCity_PokemonCenter_1F_Text_IllLookForAChallenger, MSGBOX_DEFAULT - release - end + special QuizLadyTakePrizeForCustomQuiz + special QuizLadyRecordCustomQuizData + special QuizLadySetWaitingForChallenger + msgbox LilycoveCity_PokemonCenter_1F_Text_IllLookForAChallenger, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_ContestLady:: - lock - faceplayer - msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady, MSGBOX_DEFAULT - specialvar VAR_RESULT, HasPlayerGivenContestLadyPokeblock - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock - end + lock + faceplayer + msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady, MSGBOX_DEFAULT + specialvar VAR_RESULT, HasPlayerGivenContestLadyPokeblock + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock + end @ Redundant with above script, VAR_RESULT will always be FALSE here LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock:: - specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock - end + specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock + compare VAR_RESULT, TRUE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock + end LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock:: - msgbox LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: - special Script_BufferContestLadyCategoryAndMonName - msgbox LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality, MSGBOX_DEFAULT - checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase - msgbox LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock - end + special Script_BufferContestLadyCategoryAndMonName + msgbox LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality, MSGBOX_DEFAULT + checkitem ITEM_POKEBLOCK_CASE + compare VAR_RESULT, FALSE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase + msgbox LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock + end LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: - msgbox LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: - fadescreen FADE_TO_BLACK - special OpenPokeblockCaseForContestLady - waitstate - compare VAR_RESULT, 0xFFFF - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock - compare VAR_RESULT, 0xFFFF - goto_if_ne LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock - end + fadescreen FADE_TO_BLACK + special OpenPokeblockCaseForContestLady + waitstate + compare VAR_RESULT, 0xFFFF + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock + compare VAR_RESULT, 0xFFFF + goto_if_ne LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock + end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock:: - msgbox LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock - end + msgbox LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock + compare VAR_RESULT, NO + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock + end LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock:: - msgbox LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock, MSGBOX_DEFAULT - special SetContestLadyGivenPokeblock - special GetContestLadyMonSpecies - goto LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock - end + msgbox LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock, MSGBOX_DEFAULT + special SetContestLadyGivenPokeblock + special GetContestLadyMonSpecies + goto LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock + end @ VAR_0x8004 here is the return value from GivePokeblockToContestLady 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 - waitmovement 0 - delay 60 - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - delay 120 - waitmoncry - compare VAR_0x8004, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock - goto LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock - end + applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon + waitmovement 0 + delay 60 + applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady + waitmovement 0 + delay 60 + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + delay 120 + waitmoncry + compare VAR_0x8004, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock + goto LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock + end @ VAR_0x8004 here is the return value from GivePokeblockToContestLady LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock:: - applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonJump - waitmovement 0 - delay 60 + applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonJump + waitmovement 0 + delay 60 LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock:: - applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer - waitmovement 0 - delay 60 - compare VAR_0x8004, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock - compare VAR_0x8004, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock - end + applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer + waitmovement 0 + delay 60 + compare VAR_0x8004, 0 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock + compare VAR_0x8004, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock + end LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock:: - msgbox LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow - end + msgbox LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow + end LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock:: - special Script_BufferContestLadyCategoryAndMonName - msgbox LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks, MSGBOX_DEFAULT - goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow - end + special Script_BufferContestLadyCategoryAndMonName + msgbox LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks, MSGBOX_DEFAULT + goto LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow + end LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow:: - specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow - release - end + specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir + compare VAR_RESULT, 1 + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow + release + end LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow:: - msgbox LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests, MSGBOX_DEFAULT - special PutLilycoveContestLadyShowOnTheAir - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests, MSGBOX_DEFAULT + special PutLilycoveContestLadyShowOnTheAir + release + end LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase:: - msgbox LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase, MSGBOX_DEFAULT - release - end + msgbox LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase, MSGBOX_DEFAULT + release + end LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon: - face_right - delay_8 - step_end + face_right + delay_8 + step_end LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady: - face_left - delay_8 - step_end + face_left + delay_8 + step_end @ Unused LilycoveCity_PokemonCenter_1F_Movement_MonFaceDown: - face_down - step_end + face_down + step_end LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer: - face_player - step_end + face_player + step_end LilycoveCity_PokemonCenter_1F_Movement_MonJump: - disable_jump_landing_ground_effect - jump_in_place_left - disable_jump_landing_ground_effect - jump_in_place_left - step_end + disable_jump_landing_ground_effect + jump_in_place_left + disable_jump_landing_ground_effect + jump_in_place_left + step_end LilycoveCity_PokemonCenter_1F_EventScript_ContestLadyMon:: - specialvar VAR_RESULT, GetContestLadyCategory - special Script_BufferContestLadyCategoryAndMonName - special GetContestLadyMonSpecies - compare VAR_RESULT, CONTEST_CATEGORY_COOL - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon - compare VAR_RESULT, CONTEST_CATEGORY_BEAUTY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Skitty - compare VAR_RESULT, CONTEST_CATEGORY_CUTE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Poochyena - compare VAR_RESULT, CONTEST_CATEGORY_SMART - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Kecleon - compare VAR_RESULT, CONTEST_CATEGORY_TOUGH - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Pikachu - end + specialvar VAR_RESULT, GetContestLadyCategory + special Script_BufferContestLadyCategoryAndMonName + special GetContestLadyMonSpecies + compare VAR_RESULT, CONTEST_CATEGORY_COOL + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon + compare VAR_RESULT, CONTEST_CATEGORY_BEAUTY + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Skitty + compare VAR_RESULT, CONTEST_CATEGORY_CUTE + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Poochyena + compare VAR_RESULT, CONTEST_CATEGORY_SMART + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Kecleon + compare VAR_RESULT, CONTEST_CATEGORY_TOUGH + goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Pikachu + end LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: - lock - faceplayer - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - msgbox LilycoveCity_PokemonCenter_1F_Text_Zigzagoon, MSGBOX_DEFAULT - waitmoncry - release - end + lock + faceplayer + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + msgbox LilycoveCity_PokemonCenter_1F_Text_Zigzagoon, MSGBOX_DEFAULT + waitmoncry + release + end LilycoveCity_PokemonCenter_1F_EventScript_Skitty:: - lock - faceplayer - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - msgbox LilycoveCity_PokemonCenter_1F_Text_Skitty, MSGBOX_DEFAULT - waitmoncry - release - end + lock + faceplayer + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + msgbox LilycoveCity_PokemonCenter_1F_Text_Skitty, MSGBOX_DEFAULT + waitmoncry + release + end LilycoveCity_PokemonCenter_1F_EventScript_Poochyena:: - lock - faceplayer - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - msgbox LilycoveCity_PokemonCenter_1F_Text_Poochyena, MSGBOX_DEFAULT - waitmoncry - release - end + lock + faceplayer + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + msgbox LilycoveCity_PokemonCenter_1F_Text_Poochyena, MSGBOX_DEFAULT + waitmoncry + release + end LilycoveCity_PokemonCenter_1F_EventScript_Kecleon:: - lock - faceplayer - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - msgbox LilycoveCity_PokemonCenter_1F_Text_Kecleon, MSGBOX_DEFAULT - waitmoncry - release - end + lock + faceplayer + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + msgbox LilycoveCity_PokemonCenter_1F_Text_Kecleon, MSGBOX_DEFAULT + waitmoncry + release + end LilycoveCity_PokemonCenter_1F_EventScript_Pikachu:: - lock - faceplayer - waitse - playmoncry VAR_0x8005, CRY_MODE_NORMAL - msgbox LilycoveCity_PokemonCenter_1F_Text_Pikachu, MSGBOX_DEFAULT - waitmoncry - release - end + lock + faceplayer + waitse + playmoncry VAR_0x8005, CRY_MODE_NORMAL + msgbox LilycoveCity_PokemonCenter_1F_Text_Pikachu, MSGBOX_DEFAULT + waitmoncry + release + end LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady: - .string "I'm the FAVOR LADY…$" + .string "I'm the FAVOR LADY…$" LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing: - .string "I've recently developed an obsession\n" - .string "for {STR_VAR_1} things…$" + .string "I've recently developed an obsession\n" + .string "for {STR_VAR_1} things…$" LilycoveCity_PokemonCenter_1F_Text_ThankYouForLastTime: - .string "Oh…\n" - .string "Thank you for last time…$" + .string "Oh…\n" + .string "Thank you for last time…$" LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeBadThing: - .string "Before, I think it was {STR_VAR_3}…\p" - .string "{STR_VAR_3} gave me one {STR_VAR_2},\n" - .string "saying it was {STR_VAR_1}.\p" - .string "But it wasn't {STR_VAR_1}.\n" - .string "Not in the least bit.$" + .string "Before, I think it was {STR_VAR_3}…\p" + .string "{STR_VAR_3} gave me one {STR_VAR_2},\n" + .string "saying it was {STR_VAR_1}.\p" + .string "But it wasn't {STR_VAR_1}.\n" + .string "Not in the least bit.$" LilycoveCity_PokemonCenter_1F_Text_PlayerGaveMeGreatThing: - .string "Before, {STR_VAR_3} gave me a very\n" - .string "{STR_VAR_1} {STR_VAR_2}.\p" - .string "I cherish it now.$" + .string "Before, {STR_VAR_3} gave me a very\n" + .string "{STR_VAR_1} {STR_VAR_2}.\p" + .string "I cherish it now.$" LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing: - .string "Listen, if you have anything that\n" - .string "is {STR_VAR_1}, will you share it\l" - .string "with me?$" + .string "Listen, if you have anything that\n" + .string "is {STR_VAR_1}, will you share it\l" + .string "with me?$" LilycoveCity_PokemonCenter_1F_Text_WhatWillYouGiveMe: - .string "…Really?\n" - .string "What will you give me?$" + .string "…Really?\n" + .string "What will you give me?$" LilycoveCity_PokemonCenter_1F_Text_IsThatSoGoodbye: - .string "Is that so?\n" - .string "Then, it's good-bye…$" + .string "Is that so?\n" + .string "Then, it's good-bye…$" LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare: - .string "Oh…\n" - .string "You're not willing to share?$" + .string "Oh…\n" + .string "You're not willing to share?$" LilycoveCity_PokemonCenter_1F_Text_IllTryToCherishIt: - .string "Oh?\n" - .string "That {STR_VAR_2} is {STR_VAR_1}?\p" - .string "…Oh, is that right?\p" - .string "Well, I owe you a thanks anyway.\n" - .string "I'll try to cherish it…$" + .string "Oh?\n" + .string "That {STR_VAR_2} is {STR_VAR_1}?\p" + .string "…Oh, is that right?\p" + .string "Well, I owe you a thanks anyway.\n" + .string "I'll try to cherish it…$" LilycoveCity_PokemonCenter_1F_Text_IWillCherishThis: - .string "Oh…\p" - .string "That's a quite {STR_VAR_1}\n" - .string "{STR_VAR_2}…\p" - .string "Isn't it nice?\n" - .string "It's so dreamy…\p" - .string "Thank you…\n" - .string "I will cherish this…$" + .string "Oh…\p" + .string "That's a quite {STR_VAR_1}\n" + .string "{STR_VAR_2}…\p" + .string "Isn't it nice?\n" + .string "It's so dreamy…\p" + .string "Thank you…\n" + .string "I will cherish this…$" LilycoveCity_PokemonCenter_1F_Text_IWillTreasureThis: - .string "…Oh, oh, oh…\p" - .string "This is amazing!\n" - .string "This really is {STR_VAR_1}!\p" - .string "I never knew that one {STR_VAR_2}\n" - .string "could be this {STR_VAR_1}!\p" - .string "Thank you!\p" - .string "I will treasure this for the rest\n" - .string "of my life!$" + .string "…Oh, oh, oh…\p" + .string "This is amazing!\n" + .string "This really is {STR_VAR_1}!\p" + .string "I never knew that one {STR_VAR_2}\n" + .string "could be this {STR_VAR_1}!\p" + .string "Thank you!\p" + .string "I will treasure this for the rest\n" + .string "of my life!$" LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn: - .string "I'll give you this wonderful item in\n" - .string "return for your fabulous gift.\p" - .string "I hope you will cherish it…$" + .string "I'll give you this wonderful item in\n" + .string "return for your fabulous gift.\p" + .string "I hope you will cherish it…$" LilycoveCity_PokemonCenter_1F_Text_YouDontHaveSpaceForIt: - .string "Oh, you can't have it if you don't have\n" - .string "the space for it.\p" - .string "Please come see me when you get\n" - .string "your BAG organized…$" + .string "Oh, you can't have it if you don't have\n" + .string "the space for it.\p" + .string "Please come see me when you get\n" + .string "your BAG organized…$" LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady: - .string "I'm the QUIZ LADY!\n" - .string "I love quizzes!$" + .string "I'm the QUIZ LADY!\n" + .string "I love quizzes!$" LilycoveCity_PokemonCenter_1F_Text_WaitingToTakeYourQuiz: - .string "Oh?\p" - .string "I'm waiting for a challenger to answer\n" - .string "the quiz you made.\p" - .string "We can chat another time, okay?$" + .string "Oh?\p" + .string "I'm waiting for a challenger to answer\n" + .string "the quiz you made.\p" + .string "We can chat another time, okay?$" LilycoveCity_PokemonCenter_1F_Text_WaitingForChallenger: - .string "I'm waiting for someone to challenge\n" - .string "a quiz this {STR_VAR_1} thought up!$" + .string "I'm waiting for someone to challenge\n" + .string "a quiz this {STR_VAR_1} thought up!$" LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge: - .string "If you answer correctly, you can win\n" - .string "fabulous prizes!\p" - .string "Would you like to take the quiz\n" - .string "challenge?$" + .string "If you answer correctly, you can win\n" + .string "fabulous prizes!\p" + .string "Would you like to take the quiz\n" + .string "challenge?$" LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer: - .string "… … … … … …\n" - .string "… … … … … …$" + .string "… … … … … …\n" + .string "… … … … … …$" LilycoveCity_PokemonCenter_1F_Text_HowBoringBye: - .string "Oh, how boring!\n" - .string "Bye-bye!$" + .string "Oh, how boring!\n" + .string "Bye-bye!$" LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit: - .string "Awww!\n" - .string "You're going to quit?$" + .string "Awww!\n" + .string "You're going to quit?$" LilycoveCity_PokemonCenter_1F_Text_TakeTheQuizAnotherTime: - .string "Please take the quiz challenge\n" - .string "another time!$" + .string "Please take the quiz challenge\n" + .string "another time!$" LilycoveCity_PokemonCenter_1F_Text_YouGotItRight: - .string "You're amazing! You've got it right!\n" - .string "You're one sharp customer!$" + .string "You're amazing! You've got it right!\n" + .string "You're one sharp customer!$" LilycoveCity_PokemonCenter_1F_Text_YouGotItRightYouveWonPersonsPrize: - .string "Congratulations!\n" - .string "You've got the quiz right!\p" - .string "You've won a prize provided by\n" - .string "{STR_VAR_1}!$" + .string "Congratulations!\n" + .string "You've got the quiz right!\p" + .string "You've won a prize provided by\n" + .string "{STR_VAR_1}!$" @ Unused LilycoveCity_PokemonCenter_1F_Text_XReceivedOneY: - .string "{STR_VAR_1} received\n" - .string "one {STR_VAR_2}!$" + .string "{STR_VAR_1} received\n" + .string "one {STR_VAR_2}!$" LilycoveCity_PokemonCenter_1F_Text_YourBagIsFilledUp: - .string "Oh? Your BAG is filled up!\n" - .string "Come see me when you have room.$" + .string "Oh? Your BAG is filled up!\n" + .string "Come see me when you have room.$" LilycoveCity_PokemonCenter_1F_Text_WrongTheCorrectAnswerIs: - .string "Hmm… Wrong!\n" - .string "The correct answer is “{STR_VAR_3}”!$" + .string "Hmm… Wrong!\n" + .string "The correct answer is “{STR_VAR_3}”!$" LilycoveCity_PokemonCenter_1F_Text_IGetToKeepPrize: - .string "Too bad!\p" - .string "I get to keep the quiz prize\n" - .string "{STR_VAR_1} now!$" + .string "Too bad!\p" + .string "I get to keep the quiz prize\n" + .string "{STR_VAR_1} now!$" LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz: - .string "Listen, listen!\n" - .string "Would you like to make your own quiz?$" + .string "Listen, listen!\n" + .string "Would you like to make your own quiz?$" LilycoveCity_PokemonCenter_1F_Text_MaybeNextTime: - .string "Oh, I see…\n" - .string "Well, maybe next time!$" + .string "Oh, I see…\n" + .string "Well, maybe next time!$" LilycoveCity_PokemonCenter_1F_Text_PickYourPrize: - .string "Okay, the first thing you have to do\n" - .string "is pick the prize for the person that\l" - .string "answers your quiz correctly.\p" - .string "But beware, if the person taking\n" - .string "the quiz can't get it right, I get to\l" - .string "keep the prize!$" + .string "Okay, the first thing you have to do\n" + .string "is pick the prize for the person that\l" + .string "answers your quiz correctly.\p" + .string "But beware, if the person taking\n" + .string "the quiz can't get it right, I get to\l" + .string "keep the prize!$" LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize: - .string "If you don't choose a prize,\n" - .string "your quiz can't be made.\p" - .string "Are you going to quit making\n" - .string "your quiz?$" + .string "If you don't choose a prize,\n" + .string "your quiz can't be made.\p" + .string "Are you going to quit making\n" + .string "your quiz?$" LilycoveCity_PokemonCenter_1F_Text_WriteYourQuiz: - .string "Oh, how nice!\n" - .string "That's a wonderful prize!\p" - .string "Next, you need to write your quiz\n" - .string "question and its answer.$" + .string "Oh, how nice!\n" + .string "That's a wonderful prize!\p" + .string "Next, you need to write your quiz\n" + .string "question and its answer.$" LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion: - .string "Are you going to quit writing\n" - .string "your quiz question?$" + .string "Are you going to quit writing\n" + .string "your quiz question?$" @ Unused LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizAnswer: - .string "Are you going to quit choosing\n" - .string "your quiz answer?$" + .string "Are you going to quit choosing\n" + .string "your quiz answer?$" LilycoveCity_PokemonCenter_1F_Text_IllLookForAChallenger: - .string "Thank you!\n" - .string "You've put together a nice quiz.\p" - .string "I'll go look for someone who'll take\n" - .string "your quiz challenge right away.$" + .string "Thank you!\n" + .string "You've put together a nice quiz.\p" + .string "I'll go look for someone who'll take\n" + .string "your quiz challenge right away.$" LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady: - .string "I'm the CONTEST LADY!\n" - .string "I sure do love CONTESTS!$" + .string "I'm the CONTEST LADY!\n" + .string "I sure do love CONTESTS!$" LilycoveCity_PokemonCenter_1F_Text_ThankForPokeblock: - .string "Thanks for your {POKEBLOCK} before!$" + .string "Thanks for your {POKEBLOCK} before!$" LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality: - .string "This is my friend {STR_VAR_1}!\n" - .string "It's the epitome of {STR_VAR_2}!\p" - .string "But I think that it will display\n" - .string "even more {STR_VAR_2}!$" + .string "This is my friend {STR_VAR_1}!\n" + .string "It's the epitome of {STR_VAR_2}!\p" + .string "But I think that it will display\n" + .string "even more {STR_VAR_2}!$" LilycoveCity_PokemonCenter_1F_Text_DontHaveAPokeblockCase: - .string "So, I need your help!\p" - .string "Please, may I have one {POKEBLOCK}?\n" - .string "All I'm asking for is one!\p" - .string "…Oh, but…\n" - .string "Don't you have a {POKEBLOCK} CASE?\l" - .string "That's no good. Next time, then!$" + .string "So, I need your help!\p" + .string "Please, may I have one {POKEBLOCK}?\n" + .string "All I'm asking for is one!\p" + .string "…Oh, but…\n" + .string "Don't you have a {POKEBLOCK} CASE?\l" + .string "That's no good. Next time, then!$" LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock: - .string "So, I need your help!\p" - .string "Please, may I have one {POKEBLOCK}?\n" - .string "All I'm asking for is one!$" + .string "So, I need your help!\p" + .string "Please, may I have one {POKEBLOCK}?\n" + .string "All I'm asking for is one!$" LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock: - .string "Awww!\n" - .string "I can't have one {POKEBLOCK}?!$" + .string "Awww!\n" + .string "I can't have one {POKEBLOCK}?!$" LilycoveCity_PokemonCenter_1F_Text_WhatACheapskate: - .string "Sheesh!\n" - .string "What a cheapskate!$" + .string "Sheesh!\n" + .string "What a cheapskate!$" LilycoveCity_PokemonCenter_1F_Text_IllUseYourPokeblock: - .string "Yay!\n" - .string "Thank you!\p" - .string "I'll feed my POKéMON your {POKEBLOCK}\n" - .string "right away.$" + .string "Yay!\n" + .string "Thank you!\p" + .string "I'll feed my POKéMON your {POKEBLOCK}\n" + .string "right away.$" LilycoveCity_PokemonCenter_1F_Text_NoChangeThanks: - .string "…It doesn't seem to have changed\n" - .string "in any way at all…\p" - .string "Hmm…\p" - .string "Oh, well!\n" - .string "Thank you very much!$" + .string "…It doesn't seem to have changed\n" + .string "in any way at all…\p" + .string "Hmm…\p" + .string "Oh, well!\n" + .string "Thank you very much!$" LilycoveCity_PokemonCenter_1F_Text_ReallyImprovedThanks: - .string "Oh, yay!\n" - .string "It's really delighted!\p" - .string "I think it really improved {STR_VAR_1}'s\n" - .string "{STR_VAR_2} quality, too.\p" - .string "Thank you so much!$" + .string "Oh, yay!\n" + .string "It's really delighted!\p" + .string "I think it really improved {STR_VAR_1}'s\n" + .string "{STR_VAR_2} quality, too.\p" + .string "Thank you so much!$" LilycoveCity_PokemonCenter_1F_Text_ReadyToEnterContests: - .string "Hmm…\p" - .string "I think we may be ready to enter\n" - .string "some CONTESTS.\p" - .string "If you see us in one somewhere,\n" - .string "I hope you'll cheer for us.$" + .string "Hmm…\p" + .string "I think we may be ready to enter\n" + .string "some CONTESTS.\p" + .string "If you see us in one somewhere,\n" + .string "I hope you'll cheer for us.$" LilycoveCity_PokemonCenter_1F_Text_Zigzagoon: - .string "{STR_VAR_1}: Guguuh!$" + .string "{STR_VAR_1}: Guguuh!$" LilycoveCity_PokemonCenter_1F_Text_Kecleon: - .string "{STR_VAR_1}: Igigigiiih!$" + .string "{STR_VAR_1}: Igigigiiih!$" LilycoveCity_PokemonCenter_1F_Text_Poochyena: - .string "{STR_VAR_1}: Baaarun…$" + .string "{STR_VAR_1}: Baaarun…$" LilycoveCity_PokemonCenter_1F_Text_Pikachu: - .string "{STR_VAR_1}: Pikka!$" + .string "{STR_VAR_1}: Pikka!$" LilycoveCity_PokemonCenter_1F_Text_Skitty: - .string "{STR_VAR_1}: Umyaaaan!$" + .string "{STR_VAR_1}: Umyaaaan!$" diff --git a/data/scripts/pkmn_center_nurse.inc b/data/scripts/pkmn_center_nurse.inc index 21f2abe0a20a..310f4d304cf7 100644 --- a/data/scripts/pkmn_center_nurse.inc +++ b/data/scripts/pkmn_center_nurse.inc @@ -1,135 +1,135 @@ Common_EventScript_PkmnCenterNurse:: - lock - faceplayer - setvar VAR_0x8004, 0 - specialvar VAR_RESULT, CountPlayerTrainerStars - compare VAR_RESULT, 4 - goto_if_eq EventScript_PkmnCenterNurse_GoldCard - msgbox gText_WouldYouLikeToRestYourPkmn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_HealPkmn - compare VAR_RESULT, NO - goto_if_eq EventScript_PkmnCenterNurse_Goodbye - end + lock + faceplayer + setvar VAR_0x8004, 0 + specialvar VAR_RESULT, CountPlayerTrainerStars + compare VAR_RESULT, 4 + goto_if_eq EventScript_PkmnCenterNurse_GoldCard + msgbox gText_WouldYouLikeToRestYourPkmn, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq EventScript_PkmnCenterNurse_HealPkmn + compare VAR_RESULT, NO + goto_if_eq EventScript_PkmnCenterNurse_Goodbye + end EventScript_PkmnCenterNurse_Goodbye:: - message gText_WeHopeToSeeYouAgain - return + message gText_WeHopeToSeeYouAgain + return @ VAR_0x8004 is 1 when player has Gold Card; jumps are identical EventScript_PkmnCenterNurse_HealPkmn:: - incrementgamestat GAME_STAT_USED_POKECENTER - compare VAR_0x8004, 0 - call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn - compare VAR_0x8004, 1 - call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn2 - waitmessage - call EventScript_PkmnCenterNurse_TakeAndHealPkmn - goto_if_unset FLAG_POKERUS_EXPLAINED, EventScript_PkmnCenterNurse_CheckPokerus - goto EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom - end + incrementgamestat GAME_STAT_USED_POKECENTER + compare VAR_0x8004, 0 + call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn + compare VAR_0x8004, 1 + call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn2 + waitmessage + call EventScript_PkmnCenterNurse_TakeAndHealPkmn + goto_if_unset FLAG_POKERUS_EXPLAINED, EventScript_PkmnCenterNurse_CheckPokerus + goto EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom + end EventScript_PkmnCenterNurse_IllTakeYourPkmn:: - message gText_IllTakeYourPkmn - return + message gText_IllTakeYourPkmn + return EventScript_PkmnCenterNurse_IllTakeYourPkmn2:: - message gText_IllTakeYourPkmn2 - return + message gText_IllTakeYourPkmn2 + return EventScript_PkmnCenterNurse_TakeAndHealPkmn:: - applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterLeft - waitmovement 0 - dofieldeffect FLDEFF_POKECENTER_HEAL - waitfieldeffect FLDEFF_POKECENTER_HEAL - applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterDown - waitmovement 0 - special HealPlayerParty - return + applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterLeft + waitmovement 0 + dofieldeffect FLDEFF_POKECENTER_HEAL + waitfieldeffect FLDEFF_POKECENTER_HEAL + applymovement VAR_0x800B, Common_Movement_WalkInPlaceFasterDown + waitmovement 0 + special HealPlayerParty + return EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom:: - specialvar VAR_RESULT, PlayerNotAtTrainerHillEntrance - compare VAR_RESULT, 0 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn - specialvar VAR_RESULT, BufferUnionRoomPlayerName - copyvar VAR_0x8008, VAR_RESULT - compare VAR_0x8008, 0 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn - compare VAR_0x8008, 1 - goto_if_eq EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom - end + specialvar VAR_RESULT, PlayerNotAtTrainerHillEntrance + compare VAR_RESULT, 0 + goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn + specialvar VAR_RESULT, BufferUnionRoomPlayerName + copyvar VAR_0x8008, VAR_RESULT + compare VAR_0x8008, 0 + goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn + compare VAR_0x8008, 1 + goto_if_eq EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom + end @ VAR_0x8004 is 1 when player has Gold Card EventScript_PkmnCenterNurse_ReturnPkmn:: - compare VAR_0x8004, 1 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn2 - message gText_RestoredPkmnToFullHealth - waitmessage - applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow - waitmovement 0 - message gText_WeHopeToSeeYouAgain - return + compare VAR_0x8004, 1 + goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn2 + message gText_RestoredPkmnToFullHealth + waitmessage + applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow + waitmovement 0 + message gText_WeHopeToSeeYouAgain + return EventScript_PkmnCenterNurse_ReturnPkmn2:: - message gText_ThankYouForWaiting - waitmessage - applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow - waitmovement 0 - message gText_WeHopeToSeeYouAgain2 - return + message gText_ThankYouForWaiting + waitmessage + applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow + waitmovement 0 + message gText_WeHopeToSeeYouAgain2 + return EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom:: - goto_if_set FLAG_NURSE_UNION_ROOM_REMINDER, EventScript_PkmnCenterNurse_ReturnPkmn - msgbox gText_RestoredPkmnToFullHealth, MSGBOX_DEFAULT - setflag FLAG_NURSE_UNION_ROOM_REMINDER - message CableClub_Text_PlayerIsWaiting - waitmessage - applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow - waitmovement 0 - message gText_WeHopeToSeeYouAgain - return + goto_if_set FLAG_NURSE_UNION_ROOM_REMINDER, EventScript_PkmnCenterNurse_ReturnPkmn + msgbox gText_RestoredPkmnToFullHealth, MSGBOX_DEFAULT + setflag FLAG_NURSE_UNION_ROOM_REMINDER + message CableClub_Text_PlayerIsWaiting + waitmessage + applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow + waitmovement 0 + message gText_WeHopeToSeeYouAgain + return EventScript_PkmnCenterNurse_CheckPokerus:: - specialvar VAR_RESULT, IsPokerusInParty - compare VAR_RESULT, TRUE - goto_if_eq EventScript_PkmnCenterNurse_ExplainPokerus - compare VAR_RESULT, FALSE - goto_if_eq EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom - end + specialvar VAR_RESULT, IsPokerusInParty + compare VAR_RESULT, TRUE + goto_if_eq EventScript_PkmnCenterNurse_ExplainPokerus + compare VAR_RESULT, FALSE + goto_if_eq EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom + end EventScript_PkmnCenterNurse_ExplainPokerus:: - message gText_PokerusExplanation - setflag FLAG_POKERUS_EXPLAINED - return + message gText_PokerusExplanation + setflag FLAG_POKERUS_EXPLAINED + return EventScript_PkmnCenterNurse_GoldCard:: - goto_if_set FLAG_NURSE_MENTIONS_GOLD_CARD, EventScript_PkmnCenterNurse_AskForUsual - setflag FLAG_NURSE_MENTIONS_GOLD_CARD - msgbox gText_WelcomeCutShort, MSGBOX_DEFAULT - playse SE_PIN - applymovement VAR_0x800B, Common_Movement_ExclamationMark - waitmovement 0 - applymovement VAR_0x800B, Common_Movement_Delay48 - waitmovement 0 - msgbox gText_NoticesGoldCard, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn - message gText_WeHopeToSeeYouAgain2 - return + goto_if_set FLAG_NURSE_MENTIONS_GOLD_CARD, EventScript_PkmnCenterNurse_AskForUsual + setflag FLAG_NURSE_MENTIONS_GOLD_CARD + msgbox gText_WelcomeCutShort, MSGBOX_DEFAULT + playse SE_PIN + applymovement VAR_0x800B, Common_Movement_ExclamationMark + waitmovement 0 + applymovement VAR_0x800B, Common_Movement_Delay48 + waitmovement 0 + msgbox gText_NoticesGoldCard, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn + message gText_WeHopeToSeeYouAgain2 + return EventScript_PkmnCenterNurse_AskForUsual:: - msgbox gText_YouWantTheUsual, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn - message gText_WeHopeToSeeYouAgain2 - return + msgbox gText_YouWantTheUsual, MSGBOX_YESNO + compare VAR_RESULT, YES + goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn + message gText_WeHopeToSeeYouAgain2 + return EventScript_PkmnCenterNurse_GoldCardHealPkmn:: - setvar VAR_0x8004, 1 - goto EventScript_PkmnCenterNurse_HealPkmn - end + setvar VAR_0x8004, 1 + goto EventScript_PkmnCenterNurse_HealPkmn + end Movement_PkmnCenterNurse_Bow: - nurse_joy_bow - delay_4 - step_end + nurse_joy_bow + delay_4 + step_end diff --git a/data/scripts/shared_secret_base.inc b/data/scripts/shared_secret_base.inc index ef389d3fce3d..aca7fc81a5c0 100644 --- a/data/scripts/shared_secret_base.inc +++ b/data/scripts/shared_secret_base.inc @@ -1,224 +1,224 @@ SecretBase_MapScripts:: - map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SecretBase_OnWarp - map_script MAP_SCRIPT_ON_TRANSITION, SecretBase_OnTransition - map_script MAP_SCRIPT_ON_FRAME_TABLE, SecretBase_OnFrame - map_script MAP_SCRIPT_ON_RESUME, SecretBase_OnResume - .byte 0 + map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SecretBase_OnWarp + map_script MAP_SCRIPT_ON_TRANSITION, SecretBase_OnTransition + map_script MAP_SCRIPT_ON_FRAME_TABLE, SecretBase_OnFrame + map_script MAP_SCRIPT_ON_RESUME, SecretBase_OnResume + .byte 0 SecretBase_OnWarp: - map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, SecretBase_EventScript_InitDecorations - .2byte 0 + map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, SecretBase_EventScript_InitDecorations + .2byte 0 SecretBase_OnTransition: - call SecretBase_EventScript_SetDecorationFlags - special SetSecretBaseOwnerGfxId - special InitSecretBaseVars - end + call SecretBase_EventScript_SetDecorationFlags + special SetSecretBaseOwnerGfxId + special InitSecretBaseVars + end SecretBase_OnFrame: - map_script_2 VAR_INIT_SECRET_BASE, 0, SecretBase_EventScript_FirstEntrance - .2byte 0 + map_script_2 VAR_INIT_SECRET_BASE, 0, SecretBase_EventScript_FirstEntrance + .2byte 0 SecretBase_OnResume: - setstepcallback STEP_CB_SECRET_BASE - end + setstepcallback STEP_CB_SECRET_BASE + end SecretBase_EventScript_PC:: - lockall - playse SE_PC_LOGIN - message SecretBase_Text_BootUpPC - dofieldeffect FLDEFF_PCTURN_ON - waitstate - waitmessage - waitbuttonpress - playse SE_SELECT - goto SecretBase_EventScript_PCShowMainMenu - end + lockall + playse SE_PC_LOGIN + message SecretBase_Text_BootUpPC + dofieldeffect FLDEFF_PCTURN_ON + waitstate + waitmessage + waitbuttonpress + playse SE_SELECT + goto SecretBase_EventScript_PCShowMainMenu + end SecretBase_EventScript_PCShowMainMenu:: - message SecretBase_Text_WhatWouldYouLikeToDo - waitmessage - goto_if_set FLAG_SECRET_BASE_REGISTRY_ENABLED, SecretBase_EventScript_PCMainMenuWithRegister - goto SecretBase_EventScript_PCMainMenuWithoutRegister - end + message SecretBase_Text_WhatWouldYouLikeToDo + waitmessage + goto_if_set FLAG_SECRET_BASE_REGISTRY_ENABLED, SecretBase_EventScript_PCMainMenuWithRegister + goto SecretBase_EventScript_PCMainMenuWithoutRegister + end SecretBase_EventScript_PCCancel:: - lockall - goto SecretBase_EventScript_PCShowMainMenu - end + lockall + goto SecretBase_EventScript_PCShowMainMenu + end SecretBase_EventScript_PCMainMenuWithRegister:: - multichoice 0, 0, MULTI_BASE_PC_WITH_REGISTRY, FALSE - switch VAR_RESULT - case 0, SecretBase_EventScript_PCDecorationMenu - case 1, SecretBase_EventScript_PCPackUp - case 2, SecretBase_EventScript_PCRegistryMenu - case 3, SecretBase_EventScript_PCTurnOff - case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff - end + multichoice 0, 0, MULTI_BASE_PC_WITH_REGISTRY, FALSE + switch VAR_RESULT + case 0, SecretBase_EventScript_PCDecorationMenu + case 1, SecretBase_EventScript_PCPackUp + case 2, SecretBase_EventScript_PCRegistryMenu + case 3, SecretBase_EventScript_PCTurnOff + case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff + end SecretBase_EventScript_PCMainMenuWithoutRegister:: - multichoice 0, 0, MULTI_BASE_PC_NO_REGISTRY, FALSE - switch VAR_RESULT - case 0, SecretBase_EventScript_PCDecorationMenu - case 1, SecretBase_EventScript_PCPackUp - case 2, SecretBase_EventScript_PCTurnOff - case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff - end + multichoice 0, 0, MULTI_BASE_PC_NO_REGISTRY, FALSE + switch VAR_RESULT + case 0, SecretBase_EventScript_PCDecorationMenu + case 1, SecretBase_EventScript_PCPackUp + case 2, SecretBase_EventScript_PCTurnOff + case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff + end SecretBase_EventScript_PCPackUp:: - msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCShowMainMenu - closemessage - special MoveOutOfSecretBase - releaseall - end + msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq SecretBase_EventScript_PCShowMainMenu + closemessage + special MoveOutOfSecretBase + releaseall + end SecretBase_EventScript_PCDecorationMenu:: - special ShowSecretBaseDecorationMenu - end + special ShowSecretBaseDecorationMenu + end SecretBase_EventScript_PCRegistryMenu:: - special ShowSecretBaseRegistryMenu - end + special ShowSecretBaseRegistryMenu + end SecretBase_EventScript_RecordMixingPC:: - lockall - message SecretBase_Text_BootUpPC - playse SE_PC_LOGIN - dofieldeffect FLDEFF_PCTURN_ON - waitstate - waitmessage - waitbuttonpress - playse SE_SELECT - goto SecretBase_EventScript_PCRegisterMenu - end + lockall + message SecretBase_Text_BootUpPC + playse SE_PC_LOGIN + dofieldeffect FLDEFF_PCTURN_ON + waitstate + waitmessage + waitbuttonpress + playse SE_SELECT + goto SecretBase_EventScript_PCRegisterMenu + end SecretBase_EventScript_PCRegisterMenu:: - message SecretBase_Text_WhatWouldYouLikeToDo - waitmessage - multichoice 0, 0, MULTI_REGISTER_MENU, FALSE - switch VAR_RESULT - case 0, SecretBase_EventScript_PCRegister - case 1, SecretBase_EventScript_PCRegistryMenu - case 2, SecretBase_EventScript_PCRegistryInfo - case 3, SecretBase_EventScript_PCTurnOff - case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff - end + message SecretBase_Text_WhatWouldYouLikeToDo + waitmessage + multichoice 0, 0, MULTI_REGISTER_MENU, FALSE + switch VAR_RESULT + case 0, SecretBase_EventScript_PCRegister + case 1, SecretBase_EventScript_PCRegistryMenu + case 2, SecretBase_EventScript_PCRegistryInfo + case 3, SecretBase_EventScript_PCTurnOff + case MULTI_B_PRESSED, SecretBase_EventScript_PCTurnOff + end SecretBase_EventScript_ShowRegisterMenu:: - lockall - goto SecretBase_EventScript_PCRegisterMenu - end + lockall + goto SecretBase_EventScript_PCRegisterMenu + end SecretBase_EventScript_PCRegister:: - special GetCurSecretBaseRegistrationValidity - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_AlreadyRegistered - compare VAR_RESULT, 2 - goto_if_eq SecretBase_EventScript_CantRegisterTooManyBases - special CopyCurSecretBaseOwnerName_StrVar1 - msgbox SecretBase_Text_WantToRegisterSecretBase, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCRegisterMenu - msgbox SecretBase_Text_RegistrationCompleted, MSGBOX_SIGN - special ToggleCurSecretBaseRegistry - special DoSecretBasePCTurnOffEffect - releaseall - end + special GetCurSecretBaseRegistrationValidity + compare VAR_RESULT, 1 + goto_if_eq SecretBase_EventScript_AlreadyRegistered + compare VAR_RESULT, 2 + goto_if_eq SecretBase_EventScript_CantRegisterTooManyBases + special CopyCurSecretBaseOwnerName_StrVar1 + msgbox SecretBase_Text_WantToRegisterSecretBase, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq SecretBase_EventScript_PCRegisterMenu + msgbox SecretBase_Text_RegistrationCompleted, MSGBOX_SIGN + special ToggleCurSecretBaseRegistry + special DoSecretBasePCTurnOffEffect + releaseall + end SecretBase_EventScript_AlreadyRegistered:: - msgbox SecretBase_Text_AlreadyRegisteredDelete, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCRegisterMenu - msgbox SecretBase_Text_DataUnregistered, MSGBOX_SIGN - special ToggleCurSecretBaseRegistry - special DoSecretBasePCTurnOffEffect - releaseall - end + msgbox SecretBase_Text_AlreadyRegisteredDelete, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq SecretBase_EventScript_PCRegisterMenu + msgbox SecretBase_Text_DataUnregistered, MSGBOX_SIGN + special ToggleCurSecretBaseRegistry + special DoSecretBasePCTurnOffEffect + releaseall + end SecretBase_EventScript_CantRegisterTooManyBases:: - msgbox SecretBase_Text_TooManyBasesDeleteSome, MSGBOX_SIGN - special DoSecretBasePCTurnOffEffect - closemessage - releaseall - end + msgbox SecretBase_Text_TooManyBasesDeleteSome, MSGBOX_SIGN + special DoSecretBasePCTurnOffEffect + closemessage + releaseall + end SecretBase_EventScript_PCRegistryInfo:: - msgbox SecretBase_Text_RegistryInfo, MSGBOX_DEFAULT - goto SecretBase_EventScript_PCRegisterMenu - end + msgbox SecretBase_Text_RegistryInfo, MSGBOX_DEFAULT + goto SecretBase_EventScript_PCRegisterMenu + end SecretBase_EventScript_PCTurnOff:: - special DoSecretBasePCTurnOffEffect - closemessage - releaseall - end + special DoSecretBasePCTurnOffEffect + closemessage + releaseall + end @ Unused SecretBase_EventScript_Poster:: - special CheckInteractedWithFriendsPosterDecor - end + special CheckInteractedWithFriendsPosterDecor + end @ Unused SecretBase_EventScript_FurnitureBottom:: - special CheckInteractedWithFriendsFurnitureBottom - end + special CheckInteractedWithFriendsFurnitureBottom + end @ Unused SecretBase_EventScript_FurnitureMiddle:: - special CheckInteractedWithFriendsFurnitureMiddle - end + special CheckInteractedWithFriendsFurnitureMiddle + end @ Unused SecretBase_EventScript_FurnitureTop:: - special CheckInteractedWithFriendsFurnitureTop - end + special CheckInteractedWithFriendsFurnitureTop + end SecretBase_EventScript_SandOrnament:: - special CheckInteractedWithFriendsSandOrnament - dofieldeffect FLDEFF_SAND_PILLAR - waitstate - end + special CheckInteractedWithFriendsSandOrnament + dofieldeffect FLDEFF_SAND_PILLAR + waitstate + end SecretBase_EventScript_ShieldOrToyTV:: - special InteractWithShieldOrTVDecoration - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_BattleTowerShield - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_ToyTV - compare VAR_RESULT, 2 - goto_if_eq SecretBase_EventScript_SeedotTV - compare VAR_RESULT, 3 - goto_if_eq SecretBase_EventScript_SkittyTV - end + special InteractWithShieldOrTVDecoration + compare VAR_RESULT, 0 + goto_if_eq SecretBase_EventScript_BattleTowerShield + compare VAR_RESULT, 1 + goto_if_eq SecretBase_EventScript_ToyTV + compare VAR_RESULT, 2 + goto_if_eq SecretBase_EventScript_SeedotTV + compare VAR_RESULT, 3 + goto_if_eq SecretBase_EventScript_SkittyTV + end SecretBase_EventScript_BattleTowerShield:: - msgbox SecretBase_Text_BattleTowerShield, MSGBOX_SIGN - end + msgbox SecretBase_Text_BattleTowerShield, MSGBOX_SIGN + end SecretBase_EventScript_ToyTV:: - msgbox SecretBase_Text_ToyTV, MSGBOX_SIGN - end + msgbox SecretBase_Text_ToyTV, MSGBOX_SIGN + end SecretBase_EventScript_SeedotTV:: - msgbox SecretBase_Text_SeedotTV, MSGBOX_SIGN - end + msgbox SecretBase_Text_SeedotTV, MSGBOX_SIGN + end SecretBase_EventScript_SkittyTV:: - msgbox SecretBase_Text_SkittyTV, MSGBOX_SIGN - end + msgbox SecretBase_Text_SkittyTV, MSGBOX_SIGN + end SecretBase_Text_SmallIndentInWall:: - .string "There's a small indent in the wall.$" + .string "There's a small indent in the wall.$" SecretBase_Text_IndentUseSecretPower:: - .string "There's a small indent in the wall.\p" - .string "Use the SECRET POWER?$" + .string "There's a small indent in the wall.\p" + .string "Use the SECRET POWER?$" SecretBase_Text_DiscoveredSmallCavern:: - .string "Discovered a small cavern!$" + .string "Discovered a small cavern!$" SecretBase_Text_WantToMakeYourSecretBaseHere: - .string "Want to make your SECRET BASE here?$" + .string "Want to make your SECRET BASE here?$" From c57efdba5d3cc475f75c5909c31f96bbce6190b8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 22:05:37 -0500 Subject: [PATCH 446/762] Allow compare + goto_if/call_if as a single statement --- asm/macros/event.inc | 84 +++++++++++++++++++++++++++----------------- 1 file changed, 52 insertions(+), 32 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 7d34a00f3547..28f010ef2834 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1028,13 +1028,13 @@ @ replaced with their charmap values, they are just passed as the literal characters "STR_VAR_#". .macro stringvar id:req .if \id == STR_VAR_1 - .byte 0 + .byte 0 .elseif \id == STR_VAR_2 - .byte 1 + .byte 1 .elseif \id == STR_VAR_3 - .byte 2 + .byte 2 .else - .byte \id + .byte \id .endif .endm @@ -1743,28 +1743,48 @@ goto_if TRUE, \dest .endm - .macro goto_if_lt dest:req @ LESS THAN - goto_if 0, \dest + @ Allows 'compare' followed by a conditional goto/call to be combined into a single statement. + @ The following are examples of the two acceptable formats this facilitates: + @ compare VAR_RESULT, TRUE + @ goto_if_eq MyScript + @ - or - + @ goto_if_eq VAR_RESULT, TRUE, MyScript + @ + @ The first two arguments to this macro are the base command, e.g. 'goto_if 1' for goto_if_eq. + @ The remaining arguments 'a, b, c' depend on the format: + @ For a single statement, 'a' and 'b' are the values to compare and 'c' is the destination pointer. + @ For a statement preceded by a compare, 'a' is the destination pointer and 'b/c' are not provided. + .macro trycompare jump:req, condition:req, a:req, b, c + .ifnb \c + compare \a, \b + \jump \condition, \c + .else + \jump \condition, \a + .endif + .endm + + .macro goto_if_lt a:req, b, c @ LESS THAN + trycompare goto_if, 0, \a, \b, \c .endm - .macro goto_if_eq dest:req @ EQUAL - goto_if 1, \dest + .macro goto_if_eq a:req, b, c @ EQUAL + trycompare goto_if, 1, \a, \b, \c .endm - .macro goto_if_gt dest:req @ GREATER THAN - goto_if 2, \dest + .macro goto_if_gt a:req, b, c @ GREATER THAN + trycompare goto_if, 2, \a, \b, \c .endm - .macro goto_if_le dest:req @ LESS THAN OR EQUAL - goto_if 3, \dest + .macro goto_if_le a:req, b, c @ LESS THAN OR EQUAL + trycompare goto_if, 3, \a, \b, \c .endm - .macro goto_if_ge dest:req @ GREATER THAN OR EQUAL - goto_if 4, \dest + .macro goto_if_ge a:req, b, c @ GREATER THAN OR EQUAL + trycompare goto_if, 4, \a, \b, \c .endm - .macro goto_if_ne dest:req @ NOT EQUAL - goto_if 5, \dest + .macro goto_if_ne a:req, b, c @ NOT EQUAL + trycompare goto_if, 5, \a, \b, \c .endm .macro call_if_unset flag:req, dest:req @@ -1777,36 +1797,36 @@ call_if TRUE, \dest .endm - .macro call_if_lt dest:req @ LESS THAN - call_if 0, \dest + .macro call_if_lt a:req, b, c @ LESS THAN + trycompare call_if, 0, \a, \b, \c .endm - .macro call_if_eq dest:req @ EQUAL - call_if 1, \dest + .macro call_if_eq a:req, b, c @ EQUAL + trycompare call_if, 1, \a, \b, \c .endm - .macro call_if_gt dest:req @ GREATER THAN - call_if 2, \dest + .macro call_if_gt a:req, b, c @ GREATER THAN + trycompare call_if, 2, \a, \b, \c .endm - .macro call_if_le dest:req @ LESS THAN OR EQUAL - call_if 3, \dest + .macro call_if_le a:req, b, c @ LESS THAN OR EQUAL + trycompare call_if, 3, \a, \b, \c .endm - .macro call_if_ge dest:req @ GREATER THAN OR EQUAL - call_if 4, \dest + .macro call_if_ge a:req, b, c @ GREATER THAN OR EQUAL + trycompare call_if, 4, \a, \b, \c .endm - .macro call_if_ne dest:req @ NOT EQUAL - call_if 5, \dest + .macro call_if_ne a:req, b, c @ NOT EQUAL + trycompare call_if, 5, \a, \b, \c .endm - .macro vgoto_if_eq dest:req - vgoto_if TRUE, \dest + .macro vgoto_if_eq a:req, b, c + trycompare vgoto_if, TRUE, \a, \b, \c .endm - .macro vgoto_if_ne dest:req - vgoto_if FALSE, \dest + .macro vgoto_if_ne a:req, b, c + trycompare vgoto_if, FALSE, \a, \b, \c .endm .macro vgoto_if_unset flag:req, dest:req From e66ea0cb996c70093fe3f250cafb7f1f87e84d4d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 23:06:30 -0500 Subject: [PATCH 447/762] Reformat compare + goto_if/call_if to single statements --- data/event_scripts.s | 15 +- .../AbandonedShip_CaptainsOffice/scripts.inc | 3 +- .../AbandonedShip_Corridors_B1F/scripts.inc | 3 +- .../scripts.inc | 12 +- .../scripts.inc | 24 +- data/maps/AbandonedShip_Rooms2_1F/scripts.inc | 6 +- data/maps/AbandonedShip_Rooms_1F/scripts.inc | 3 +- data/maps/AncientTomb/scripts.inc | 12 +- data/maps/AquaHideout_B1F/scripts.inc | 21 +- .../scripts.inc | 57 +-- .../scripts.inc | 21 +- .../scripts.inc | 96 ++---- .../scripts.inc | 3 +- .../scripts.inc | 69 ++-- .../scripts.inc | 9 +- .../scripts.inc | 48 +-- .../scripts.inc | 33 +- .../scripts.inc | 129 +++---- .../scripts.inc | 60 ++-- .../scripts.inc | 18 +- .../scripts.inc | 51 +-- .../scripts.inc | 12 +- .../scripts.inc | 48 +-- .../scripts.inc | 6 +- .../scripts.inc | 6 +- .../scripts.inc | 27 +- .../scripts.inc | 30 +- .../scripts.inc | 39 +-- .../scripts.inc | 48 +-- .../scripts.inc | 6 +- .../scripts.inc | 12 +- .../scripts.inc | 183 ++++------ .../scripts.inc | 36 +- .../scripts.inc | 21 +- .../scripts.inc | 9 +- .../scripts.inc | 120 +++---- data/maps/BattleFrontier_Lounge1/scripts.inc | 51 +-- data/maps/BattleFrontier_Lounge2/scripts.inc | 36 +- data/maps/BattleFrontier_Lounge3/scripts.inc | 30 +- data/maps/BattleFrontier_Lounge5/scripts.inc | 9 +- data/maps/BattleFrontier_Lounge6/scripts.inc | 9 +- data/maps/BattleFrontier_Lounge7/scripts.inc | 12 +- .../BattleFrontier_OutsideEast/scripts.inc | 12 +- .../BattleFrontier_OutsideWest/scripts.inc | 36 +- .../BattleFrontier_RankingHall/scripts.inc | 3 +- .../BattleFrontier_ScottsHouse/scripts.inc | 51 +-- data/maps/BirthIsland_Exterior/scripts.inc | 12 +- data/maps/BirthIsland_Harbor/scripts.inc | 3 +- data/maps/ContestHall/scripts.inc | 30 +- data/maps/DesertRuins/scripts.inc | 12 +- data/maps/DewfordTown/scripts.inc | 30 +- data/maps/DewfordTown_Gym/scripts.inc | 51 +-- data/maps/DewfordTown_Hall/scripts.inc | 36 +- data/maps/DewfordTown_House2/scripts.inc | 3 +- .../EverGrandeCity_ChampionsRoom/scripts.inc | 18 +- .../EverGrandeCity_DrakesRoom/scripts.inc | 3 +- .../EverGrandeCity_GlaciasRoom/scripts.inc | 3 +- .../EverGrandeCity_HallOfFame/scripts.inc | 6 +- .../EverGrandeCity_PhoebesRoom/scripts.inc | 3 +- .../scripts.inc | 9 +- .../scripts.inc | 6 +- .../EverGrandeCity_SidneysRoom/scripts.inc | 3 +- .../scripts.inc | 18 +- .../FallarborTown_BattleTentLobby/scripts.inc | 12 +- .../FallarborTown_CozmosHouse/scripts.inc | 9 +- .../scripts.inc | 15 +- data/maps/FarawayIsland_Entrance/scripts.inc | 3 +- data/maps/FarawayIsland_Interior/scripts.inc | 39 +-- data/maps/FortreeCity/scripts.inc | 6 +- data/maps/FortreeCity_Gym/scripts.inc | 9 +- data/maps/FortreeCity_House1/scripts.inc | 9 +- data/maps/FortreeCity_House2/scripts.inc | 3 +- data/maps/FortreeCity_House4/scripts.inc | 3 +- data/maps/GraniteCave_StevensRoom/scripts.inc | 15 +- data/maps/InsideOfTruck/scripts.inc | 6 +- data/maps/IslandCave/scripts.inc | 12 +- data/maps/JaggedPass/scripts.inc | 18 +- data/maps/LavaridgeTown/scripts.inc | 48 +-- data/maps/LavaridgeTown_Gym_1F/scripts.inc | 15 +- data/maps/LavaridgeTown_HerbShop/scripts.inc | 3 +- data/maps/LilycoveCity/scripts.inc | 33 +- .../LilycoveCity_ContestLobby/scripts.inc | 120 +++---- .../LilycoveCity_CoveLilyMotel_2F/scripts.inc | 3 +- .../scripts.inc | 15 +- .../scripts.inc | 45 +-- .../scripts.inc | 33 +- .../scripts.inc | 6 +- data/maps/LilycoveCity_Harbor/scripts.inc | 105 ++---- data/maps/LilycoveCity_House2/scripts.inc | 3 +- data/maps/LilycoveCity_House3/scripts.inc | 3 +- .../scripts.inc | 12 +- .../scripts.inc | 3 +- .../scripts.inc | 15 +- .../LilycoveCity_PokemonCenter_1F/scripts.inc | 6 +- .../scripts.inc | 171 +++------ data/maps/LittlerootTown/scripts.inc | 153 +++------ .../scripts.inc | 36 +- .../scripts.inc | 46 +-- .../LittlerootTown_MaysHouse_1F/scripts.inc | 39 +-- .../LittlerootTown_MaysHouse_2F/scripts.inc | 57 +-- .../scripts.inc | 153 +++------ data/maps/MarineCave_End/scripts.inc | 12 +- data/maps/MauvilleCity/scripts.inc | 24 +- data/maps/MauvilleCity_BikeShop/scripts.inc | 24 +- data/maps/MauvilleCity_GameCorner/scripts.inc | 129 +++---- data/maps/MauvilleCity_Gym/scripts.inc | 27 +- data/maps/MauvilleCity_House2/scripts.inc | 9 +- data/maps/MeteorFalls_1F_2R/scripts.inc | 9 +- data/maps/MirageTower_4F/scripts.inc | 6 +- data/maps/MossdeepCity/scripts.inc | 12 +- data/maps/MossdeepCity_Gym/scripts.inc | 9 +- data/maps/MossdeepCity_House1/scripts.inc | 3 +- data/maps/MossdeepCity_House2/scripts.inc | 6 +- data/maps/MossdeepCity_House3/scripts.inc | 3 +- data/maps/MossdeepCity_House4/scripts.inc | 3 +- .../MossdeepCity_SpaceCenter_1F/scripts.inc | 54 +-- .../MossdeepCity_SpaceCenter_2F/scripts.inc | 39 +-- .../MossdeepCity_StevensHouse/scripts.inc | 18 +- data/maps/MtChimney/scripts.inc | 33 +- .../MtChimney_CableCarStation/scripts.inc | 9 +- data/maps/MtPyre_1F/scripts.inc | 3 +- data/maps/MtPyre_3F/scripts.inc | 3 +- data/maps/MtPyre_6F/scripts.inc | 3 +- data/maps/MtPyre_Exterior/scripts.inc | 3 +- data/maps/MtPyre_Summit/scripts.inc | 63 ++-- data/maps/NavelRock_Bottom/scripts.inc | 12 +- data/maps/NavelRock_Harbor/scripts.inc | 3 +- data/maps/NavelRock_Top/scripts.inc | 12 +- data/maps/NewMauville_Entrance/scripts.inc | 9 +- data/maps/NewMauville_Inside/scripts.inc | 42 +-- data/maps/OldaleTown/scripts.inc | 18 +- data/maps/PacifidlogTown_House2/scripts.inc | 15 +- data/maps/PacifidlogTown_House3/scripts.inc | 9 +- data/maps/PacifidlogTown_House4/scripts.inc | 6 +- data/maps/PacifidlogTown_House5/scripts.inc | 3 +- data/maps/PetalburgCity/scripts.inc | 48 +-- data/maps/PetalburgCity_Gym/scripts.inc | 264 +++++--------- .../scripts.inc | 12 +- data/maps/PetalburgWoods/scripts.inc | 12 +- data/maps/Route101/scripts.inc | 6 +- data/maps/Route102/scripts.inc | 6 +- data/maps/Route103/scripts.inc | 15 +- data/maps/Route104/scripts.inc | 60 ++-- data/maps/Route104_MrBrineysHouse/scripts.inc | 12 +- .../scripts.inc | 15 +- data/maps/Route105/scripts.inc | 18 +- data/maps/Route106/scripts.inc | 3 +- data/maps/Route107/scripts.inc | 3 +- data/maps/Route108/scripts.inc | 3 +- data/maps/Route109/scripts.inc | 12 +- data/maps/Route109_SeashoreHouse/scripts.inc | 12 +- data/maps/Route110/scripts.inc | 87 ++--- .../scripts.inc | 3 +- .../scripts.inc | 12 +- data/maps/Route110_TrickHouseEnd/scripts.inc | 39 +-- .../Route110_TrickHouseEntrance/scripts.inc | 180 ++++------ .../Route110_TrickHousePuzzle1/scripts.inc | 6 +- .../Route110_TrickHousePuzzle2/scripts.inc | 15 +- .../Route110_TrickHousePuzzle3/scripts.inc | 45 +-- .../Route110_TrickHousePuzzle4/scripts.inc | 3 +- .../Route110_TrickHousePuzzle5/scripts.inc | 219 ++++-------- .../Route110_TrickHousePuzzle6/scripts.inc | 3 +- .../Route110_TrickHousePuzzle7/scripts.inc | 9 +- .../Route110_TrickHousePuzzle8/scripts.inc | 3 +- data/maps/Route111/scripts.inc | 66 ++-- .../Route111_OldLadysRestStop/scripts.inc | 12 +- .../scripts.inc | 3 +- data/maps/Route112/scripts.inc | 3 +- .../maps/Route112_CableCarStation/scripts.inc | 9 +- data/maps/Route113/scripts.inc | 12 +- data/maps/Route113_GlassWorkshop/scripts.inc | 78 ++--- data/maps/Route114/scripts.inc | 27 +- .../Route114_FossilManiacsHouse/scripts.inc | 3 +- .../Route114_FossilManiacsTunnel/scripts.inc | 6 +- data/maps/Route114_LanettesHouse/scripts.inc | 9 +- data/maps/Route115/scripts.inc | 24 +- data/maps/Route116/scripts.inc | 63 ++-- data/maps/Route117/scripts.inc | 18 +- data/maps/Route118/scripts.inc | 36 +- data/maps/Route119/scripts.inc | 60 ++-- .../Route119_WeatherInstitute_1F/scripts.inc | 9 +- .../Route119_WeatherInstitute_2F/scripts.inc | 24 +- data/maps/Route120/scripts.inc | 75 ++-- data/maps/Route121/scripts.inc | 9 +- .../Route121_SafariZoneEntrance/scripts.inc | 18 +- data/maps/Route123/scripts.inc | 15 +- .../Route123_BerryMastersHouse/scripts.inc | 48 +-- data/maps/Route124/scripts.inc | 9 +- .../scripts.inc | 30 +- data/maps/Route125/scripts.inc | 18 +- data/maps/Route126/scripts.inc | 3 +- data/maps/Route127/scripts.inc | 18 +- data/maps/Route128/scripts.inc | 6 +- data/maps/Route129/scripts.inc | 18 +- data/maps/Route130/scripts.inc | 6 +- data/maps/Route131/scripts.inc | 3 +- data/maps/RustboroCity/scripts.inc | 69 ++-- .../RustboroCity_DevonCorp_2F/scripts.inc | 75 ++-- .../RustboroCity_DevonCorp_3F/scripts.inc | 6 +- data/maps/RustboroCity_Flat1_2F/scripts.inc | 24 +- data/maps/RustboroCity_Flat2_2F/scripts.inc | 3 +- data/maps/RustboroCity_Gym/scripts.inc | 9 +- data/maps/RustboroCity_House1/scripts.inc | 9 +- .../RustboroCity_PokemonSchool/scripts.inc | 9 +- data/maps/RusturfTunnel/scripts.inc | 36 +- data/maps/SSTidalCorridor/scripts.inc | 18 +- data/maps/SSTidalRooms/scripts.inc | 3 +- data/maps/SafariZone_South/scripts.inc | 6 +- data/maps/SeafloorCavern_Entrance/scripts.inc | 21 +- data/maps/SealedChamber_InnerRoom/scripts.inc | 3 +- .../ShoalCave_LowTideEntranceRoom/scripts.inc | 30 +- .../ShoalCave_LowTideInnerRoom/scripts.inc | 18 +- .../ShoalCave_LowTideLowerRoom/scripts.inc | 6 +- .../ShoalCave_LowTideStairsRoom/scripts.inc | 3 +- data/maps/SkyPillar_1F/scripts.inc | 3 +- data/maps/SkyPillar_2F/scripts.inc | 3 +- data/maps/SkyPillar_3F/scripts.inc | 3 +- data/maps/SkyPillar_4F/scripts.inc | 3 +- data/maps/SkyPillar_5F/scripts.inc | 3 +- data/maps/SkyPillar_Outside/scripts.inc | 6 +- data/maps/SkyPillar_Top/scripts.inc | 18 +- data/maps/SlateportCity/scripts.inc | 51 +-- .../scripts.inc | 6 +- .../scripts.inc | 18 +- .../SlateportCity_BattleTentLobby/scripts.inc | 9 +- data/maps/SlateportCity_Harbor/scripts.inc | 51 +-- .../SlateportCity_NameRatersHouse/scripts.inc | 30 +- .../scripts.inc | 21 +- .../scripts.inc | 18 +- .../SlateportCity_PokemonFanClub/scripts.inc | 42 +-- data/maps/SootopolisCity/scripts.inc | 213 ++++-------- data/maps/SootopolisCity_Gym_1F/scripts.inc | 18 +- data/maps/SootopolisCity_House1/scripts.inc | 3 +- data/maps/SootopolisCity_House2/scripts.inc | 6 +- data/maps/SootopolisCity_House3/scripts.inc | 3 +- data/maps/SootopolisCity_House6/scripts.inc | 6 +- .../scripts.inc | 30 +- data/maps/SootopolisCity_Mart/scripts.inc | 6 +- .../scripts.inc | 42 +-- .../scripts.inc | 9 +- .../scripts.inc | 6 +- data/maps/SouthernIsland_Exterior/scripts.inc | 3 +- data/maps/SouthernIsland_Interior/scripts.inc | 30 +- data/maps/TerraCave_End/scripts.inc | 12 +- data/maps/TrainerHill_Elevator/scripts.inc | 3 +- data/maps/TrainerHill_Entrance/scripts.inc | 21 +- .../maps/Underwater_SealedChamber/scripts.inc | 6 +- .../scripts.inc | 15 +- .../scripts.inc | 15 +- data/maps/VictoryRoad_1F/scripts.inc | 9 +- data/scripts/abnormal_weather.inc | 3 +- data/scripts/apprentice.inc | 57 +-- data/scripts/battle_pike.inc | 42 +-- data/scripts/berry_blender.inc | 138 +++----- data/scripts/berry_tree.inc | 36 +- data/scripts/cable_club.inc | 324 ++++++------------ data/scripts/contest_hall.inc | 318 ++++++----------- data/scripts/day_care.inc | 87 ++--- data/scripts/field_move_scripts.inc | 42 +-- data/scripts/field_poison.inc | 18 +- data/scripts/gabby_and_ty.inc | 27 +- data/scripts/gift_altering_cave.inc | 3 +- data/scripts/gift_aurora_ticket.inc | 6 +- data/scripts/gift_battle_card.inc | 3 +- data/scripts/gift_mystic_ticket.inc | 6 +- data/scripts/gift_old_sea_map.inc | 6 +- data/scripts/gift_pichu.inc | 18 +- data/scripts/gift_trainer.inc | 3 +- data/scripts/hall_of_fame.inc | 6 +- data/scripts/interview.inc | 111 ++---- data/scripts/kecleon.inc | 15 +- data/scripts/lilycove_lady.inc | 207 ++++------- data/scripts/mauville_man.inc | 102 ++---- data/scripts/move_tutors.inc | 90 ++--- data/scripts/obtain_item.inc | 54 +-- data/scripts/pc_transfer.inc | 6 +- data/scripts/pkmn_center_nurse.inc | 39 +-- data/scripts/players_house.inc | 81 ++--- data/scripts/prof_birch.inc | 33 +- data/scripts/profile_man.inc | 12 +- data/scripts/questionnaire.inc | 15 +- data/scripts/record_mix.inc | 6 +- data/scripts/rival_graphics.inc | 18 +- data/scripts/roulette.inc | 12 +- data/scripts/safari_zone.inc | 12 +- data/scripts/secret_base.inc | 228 ++++-------- data/scripts/secret_power_tm.inc | 15 +- data/scripts/shared_secret_base.inc | 27 +- data/scripts/surf.inc | 6 +- data/scripts/trainer_battle.inc | 36 +- data/scripts/trainer_hill.inc | 12 +- data/scripts/trainer_script.inc | 3 +- data/scripts/tv.inc | 27 +- 293 files changed, 2990 insertions(+), 5978 deletions(-) diff --git a/data/event_scripts.s b/data/event_scripts.s index c6d6a5fa29d5..edab4987fa3a 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -583,12 +583,9 @@ EventScript_WhiteOut:: end EventScript_ResetMrBriney:: - compare VAR_BRINEY_LOCATION, 1 - goto_if_eq EventScript_MoveMrBrineyToHouse - compare VAR_BRINEY_LOCATION, 2 - goto_if_eq EventScript_MoveMrBrineyToDewford - compare VAR_BRINEY_LOCATION, 3 - goto_if_eq EventScript_MoveMrBrineyToRoute109 + goto_if_eq VAR_BRINEY_LOCATION, 1, EventScript_MoveMrBrineyToHouse + goto_if_eq VAR_BRINEY_LOCATION, 2, EventScript_MoveMrBrineyToDewford + goto_if_eq VAR_BRINEY_LOCATION, 3, EventScript_MoveMrBrineyToRoute109 end EventScript_MoveMrBrineyToHouse:: @@ -801,10 +798,8 @@ Movement_UnusedBoardFerry: step_end Common_EventScript_FerryDepartIsland:: - compare VAR_FACING, DIR_SOUTH - call_if_eq Ferry_EventScript_DepartIslandSouth - compare VAR_FACING, DIR_WEST - call_if_eq Ferry_EventScript_DepartIslandWest + 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 call Common_EventScript_FerryDepart diff --git a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc index 6bb3352ab751..7c59fec9676c 100644 --- a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc +++ b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc @@ -6,8 +6,7 @@ AbandonedShip_CaptainsOffice_EventScript_CaptSternAide:: faceplayer goto_if_set FLAG_EXCHANGED_SCANNER, AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus checkitem ITEM_SCANNER - compare VAR_RESULT, TRUE - goto_if_eq AbandonedShip_CaptainsOffice_EventScript_CanYouDeliverScanner + goto_if_eq VAR_RESULT, TRUE, AbandonedShip_CaptainsOffice_EventScript_CanYouDeliverScanner goto_if_set FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER, AbandonedShip_CaptainsOffice_EventScript_ThisIsSSCactus msgbox AbandonedShip_CaptainsOffice_Text_NoSuccessFindingScanner, MSGBOX_DEFAULT release diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc index 09d758495945..19f103362ed3 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc +++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc @@ -28,8 +28,7 @@ AbandonedShip_Corridors_B1F_EventScript_StorageRoomDoor:: lockall goto_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_DoorIsUnlocked checkitem ITEM_STORAGE_KEY - compare VAR_RESULT, FALSE - goto_if_eq AbandonedShip_Corridors_B1F_EventScript_DoorIsLocked + goto_if_eq VAR_RESULT, FALSE, AbandonedShip_Corridors_B1F_EventScript_DoorIsLocked msgbox AbandonedShip_Corridors_B1F_Text_InsertedStorageKey, MSGBOX_DEFAULT playse SE_PIN removeitem ITEM_STORAGE_KEY diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc index 3a7bc773180b..dade6a516e86 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc @@ -54,8 +54,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door:: lockall goto_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_1_KEY - compare VAR_RESULT, FALSE - goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked + goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT playse SE_PIN removeitem ITEM_ROOM_1_KEY @@ -69,8 +68,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door:: lockall goto_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_2_KEY - compare VAR_RESULT, FALSE - goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked + goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT playse SE_PIN removeitem ITEM_ROOM_2_KEY @@ -84,8 +82,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door:: lockall goto_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_4_KEY - compare VAR_RESULT, FALSE - goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked + goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT playse SE_PIN removeitem ITEM_ROOM_4_KEY @@ -99,8 +96,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door:: lockall goto_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen checkitem ITEM_ROOM_6_KEY - compare VAR_RESULT, FALSE - goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked + goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT playse SE_PIN removeitem ITEM_ROOM_6_KEY diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc b/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc index cdeb225de228..e9b14b7b0b0c 100644 --- a/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc +++ b/data/maps/AbandonedShip_HiddenFloorRooms/scripts.inc @@ -17,12 +17,9 @@ AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle:: setvar VAR_TEMP_1, 1 getplayerxy VAR_TEMP_2, VAR_TEMP_3 setvar VAR_TEMP_4, 1 - compare VAR_TEMP_2, 21 - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn - compare VAR_TEMP_2, 36 - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn - compare VAR_TEMP_3, 2 - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow + call_if_eq VAR_TEMP_2, 21, AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn + call_if_eq VAR_TEMP_2, 36, AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn + call_if_eq VAR_TEMP_3, 2, AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow switch VAR_TEMP_4 case 1, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1 case 2, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2 @@ -48,8 +45,7 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1:: delay 20 dofieldeffectsparkle 10, 10, 0 specialvar VAR_RESULT, FoundAbandonedShipRoom4Key - compare VAR_RESULT, FALSE - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle + call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle waitfieldeffect FLDEFF_SPARKLE delay 10 end @@ -59,11 +55,9 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2:: AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3:: specialvar VAR_RESULT, FoundAbandonedShipRoom1Key - compare VAR_RESULT, TRUE - goto_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle + goto_if_eq VAR_RESULT, TRUE, AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle delay 20 - compare VAR_RESULT, FALSE - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle + call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle waitfieldeffect FLDEFF_SPARKLE delay 10 end @@ -76,8 +70,7 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4:: dofieldeffectsparkle 8, 5, 0 dofieldeffectsparkle 11, 3, 0 specialvar VAR_RESULT, FoundAbandonedShipRoom6Key - compare VAR_RESULT, FALSE - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle + call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle waitfieldeffect FLDEFF_SPARKLE delay 10 end @@ -88,8 +81,7 @@ AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5:: dofieldeffectsparkle 25, 2, 0 dofieldeffectsparkle 24, 6, 0 specialvar VAR_RESULT, FoundAbandonedShipRoom2Key - compare VAR_RESULT, FALSE - call_if_eq AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle + call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle waitfieldeffect FLDEFF_SPARKLE delay 10 end diff --git a/data/maps/AbandonedShip_Rooms2_1F/scripts.inc b/data/maps/AbandonedShip_Rooms2_1F/scripts.inc index e02d109b7bf5..b0f317ef2838 100644 --- a/data/maps/AbandonedShip_Rooms2_1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms2_1F/scripts.inc @@ -4,8 +4,7 @@ AbandonedShip_Rooms2_1F_MapScripts:: AbandonedShip_Rooms2_1F_EventScript_Dan:: trainerbattle_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_DanIntro, AbandonedShip_Rooms2_1F_Text_DanDefeat, AbandonedShip_Rooms2_1F_Text_DanNotEnoughMons, AbandonedShip_Rooms2_1F_EventScript_RegisterDan specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq AbandonedShip_Rooms2_1F_EventScript_DanRematch + goto_if_eq VAR_RESULT, TRUE, AbandonedShip_Rooms2_1F_EventScript_DanRematch msgbox AbandonedShip_Rooms2_1F_Text_DanPostBattle, MSGBOX_DEFAULT release end @@ -24,8 +23,7 @@ AbandonedShip_Rooms2_1F_EventScript_DanRematch:: AbandonedShip_Rooms2_1F_EventScript_Kira:: trainerbattle_double TRAINER_KIRA_AND_DAN_1, AbandonedShip_Rooms2_1F_Text_KiraIntro, AbandonedShip_Rooms2_1F_Text_KiraDefeat, AbandonedShip_Rooms2_1F_Text_KiraNotEnoughMons, AbandonedShip_Rooms2_1F_EventScript_RegisterKira specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq AbandonedShip_Rooms2_1F_EventScript_KiraRematch + goto_if_eq VAR_RESULT, TRUE, AbandonedShip_Rooms2_1F_EventScript_KiraRematch msgbox AbandonedShip_Rooms2_1F_Text_KiraPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/AbandonedShip_Rooms_1F/scripts.inc b/data/maps/AbandonedShip_Rooms_1F/scripts.inc index 41b4eb3b6750..c8ea84964019 100644 --- a/data/maps/AbandonedShip_Rooms_1F/scripts.inc +++ b/data/maps/AbandonedShip_Rooms_1F/scripts.inc @@ -13,8 +13,7 @@ AbandonedShip_Rooms_1F_EventScript_Demetrius:: AbandonedShip_Rooms_1F_EventScript_Thalia:: trainerbattle_single TRAINER_THALIA_1, AbandonedShip_Rooms_1F_Text_ThaliaIntro, AbandonedShip_Rooms_1F_Text_ThaliaDefeat, AbandonedShip_Rooms_1F_EventScript_RegisterThalia specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq AbandonedShip_Rooms_1F_EventScript_ThaliaRematch + goto_if_eq VAR_RESULT, TRUE, AbandonedShip_Rooms_1F_EventScript_ThaliaRematch msgbox AbandonedShip_Rooms_1F_Text_ThaliaPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index 03070a731efb..d28ac7bc3592 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -10,8 +10,7 @@ AncientTomb_OnResume: AncientTomb_EventScript_TryRemoveRegisteel:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -68,12 +67,9 @@ AncientTomb_EventScript_Registeel:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq AncientTomb_EventScript_DefeatedRegisteel - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq AncientTomb_EventScript_RanFromRegisteel - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq AncientTomb_EventScript_RanFromRegisteel + goto_if_eq VAR_RESULT, B_OUTCOME_WON, AncientTomb_EventScript_DefeatedRegisteel + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, AncientTomb_EventScript_RanFromRegisteel + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, AncientTomb_EventScript_RanFromRegisteel setflag FLAG_DEFEATED_REGISTEEL release end diff --git a/data/maps/AquaHideout_B1F/scripts.inc b/data/maps/AquaHideout_B1F/scripts.inc index 2a6f156e5c52..4f2eb836f5ec 100644 --- a/data/maps/AquaHideout_B1F/scripts.inc +++ b/data/maps/AquaHideout_B1F/scripts.inc @@ -9,8 +9,7 @@ AquaHideout_B1F_OnResume: AquaHideout_B1F_EventScript_TryRemoveElectrode:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -39,12 +38,9 @@ AquaHideout_B1F_EventScript_Electrode1:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode1 - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode1 - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode1 + goto_if_eq VAR_RESULT, B_OUTCOME_WON, AquaHideout_B1F_EventScript_DefeatedElectrode1 + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, AquaHideout_B1F_EventScript_DefeatedElectrode1 + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, AquaHideout_B1F_EventScript_DefeatedElectrode1 setflag FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT release end @@ -66,12 +62,9 @@ AquaHideout_B1F_EventScript_Electrode2:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode2 - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode2 - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq AquaHideout_B1F_EventScript_DefeatedElectrode2 + goto_if_eq VAR_RESULT, B_OUTCOME_WON, AquaHideout_B1F_EventScript_DefeatedElectrode2 + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, AquaHideout_B1F_EventScript_DefeatedElectrode2 + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, AquaHideout_B1F_EventScript_DefeatedElectrode2 setflag FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT release end diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc index 36e7a8d11a69..844ec070a60a 100644 --- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc @@ -28,10 +28,8 @@ BattleFrontier_BattleArenaBattleRoom_OnTransition: BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxFemale return BattleFrontier_BattleArenaBattleRoom_EventScript_SetPlayerGfxMale:: @@ -52,8 +50,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft setvar VAR_TEMP_2, 1 @@ -137,24 +134,16 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent:: BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleArenaBattleRoom_EventScript_TycoonUpNext + goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleArenaBattleRoom_EventScript_TycoonUpNext frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor3rdOpponent - compare VAR_RESULT, 3 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor4thOpponent - compare VAR_RESULT, 4 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor5thOpponent - compare VAR_RESULT, 5 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor6thOpponent - compare VAR_RESULT, 6 - call_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor7thOpponent + call_if_eq VAR_RESULT, 1, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 3, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor4thOpponent + call_if_eq VAR_RESULT, 4, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor5thOpponent + call_if_eq VAR_RESULT, 5, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor6thOpponent + call_if_eq VAR_RESULT, 6, BattleFrontier_BattleArenaBattleRoom_EventScript_ReadyFor7thOpponent call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponentNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge @@ -254,16 +243,14 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: end BattleFrontier_BattleArenaBattleRoom_EventScript_TycoonUpNext:: - compare VAR_TEMP_2, 1 - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon + goto_if_eq VAR_TEMP_2, 1, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon msgbox BattleFrontier_BattleArenaBattleRoom_Text_NowFaceTycoon, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoon:: message BattleFrontier_BattleArenaBattleRoom_Text_PreparedForTycoon waitmessage call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta @@ -309,8 +296,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureChallenger, MSGBOX_DEFAULT closemessage frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH @@ -324,15 +310,13 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta:: BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_IgniteMyPassionForBattle, MSGBOX_DEFAULT call BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver goto BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver:: call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureToughAfterAll, MSGBOX_DEFAULT @@ -346,8 +330,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver:: BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaLookingForwardToSeeingAgain, MSGBOX_DEFAULT closemessage frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH @@ -361,15 +344,13 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold:: BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold:: msgbox BattleFrontier_BattleArenaBattleRoom_Text_LetsGetThisStarted, MSGBOX_DEFAULT call BattleFrontier_BattleArenaBattleRoom_EventScript_StartArenaBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold goto BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold:: call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon + goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong waitmovement 0 msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaBlownAway, MSGBOX_DEFAULT diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc index e6394d2a8090..9467f34197a6 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc @@ -40,8 +40,7 @@ BattleFrontier_BattleArenaLobby_EventScript_QuitWithoutSaving:: BattleFrontier_BattleArenaLobby_EventScript_WonChallenge:: lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_DefeatedTycoon + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleArenaLobby_EventScript_DefeatedTycoon msgbox BattleFrontier_BattleArenaLobby_Text_CongratsOnSevenWins, MSGBOX_DEFAULT goto BattleFrontier_BattleArenaLobby_EventScript_GiveBattlePoints @@ -80,8 +79,7 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveAfterChallenge:: playse SE_SAVE waitse call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleArenaLobby_EventScript_EndSaveAfterChallenge message BattleFrontier_BattleArenaLobby_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -131,8 +129,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleArenaLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleArenaLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -141,8 +138,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge msgbox BattleFrontier_BattleArenaLobby_Text_OkayToSave, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleArenaLobby_EventScript_LoadPartyAndCancelChallenge @@ -161,18 +157,15 @@ BattleFrontier_BattleArenaLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleArenaLobby_EventScript_CancelChallengeSaveFailed BattleFrontier_BattleArenaLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox BattleFrontier_BattleArenaLobby_Text_GuideYouToArena, MSGBOX_DEFAULT closemessage frontier_get FRONTIER_DATA_LVL_MODE - compare VAR_RESULT, FRONTIER_LVL_50 - call_if_eq BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50 - compare VAR_RESULT, FRONTIER_LVL_OPEN - call_if_eq BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen + call_if_eq VAR_RESULT, FRONTIER_LVL_50, BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50 + call_if_eq VAR_RESULT, FRONTIER_LVL_OPEN, BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR, 9, 13 setvar VAR_TEMP_0, 0 waitstate diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index 8fc07f59abb9..888f116eeaff 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -20,17 +20,14 @@ BattleFrontier_BattleDomeBattleRoom_OnTransition: dome_setopponentgfx frontier_get FRONTIER_DATA_BATTLE_NUM copyvar VAR_TEMP_F, VAR_RESULT - compare VAR_RESULT, DOME_ROUND1 - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos + call_if_eq VAR_RESULT, DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx end BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxFemale return BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfxMale:: @@ -48,18 +45,15 @@ BattleFrontier_BattleDomeBattleRoom_OnFrame: BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom:: lockall call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum - compare VAR_RESULT, DOME_ROUND1 - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat + call_if_eq VAR_RESULT, DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat applymovement LOCALID_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 - compare VAR_TEMP_F, DOME_FINAL - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter - compare VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker + 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 goto BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer @@ -70,10 +64,8 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer:: playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround waitmovement 0 - compare VAR_TEMP_F, DOME_FINAL - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent - compare VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTucker + goto_if_ne VAR_TEMP_F, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent + goto_if_ne VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTucker BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent:: dome_getopponentname msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTrainer, MSGBOX_DEFAULT @@ -105,8 +97,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_Draw:: delay 180 applymovement LOCALID_REFEREE, BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit waitmovement 0 - compare VAR_TEMP_2, DRAW_TUCKER @ Tucker always wins on a draw - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent + 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 @@ -114,12 +105,9 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent:: applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown waitmovement 0 dome_getopponentname - compare VAR_TEMP_2, NO_DRAW - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon - compare VAR_TEMP_2, DRAW_TRAINER - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWonDraw - compare VAR_TEMP_2, DRAW_TUCKER - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw + call_if_eq VAR_TEMP_2, NO_DRAW, BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon + call_if_eq VAR_TEMP_2, DRAW_TRAINER, BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWonDraw + call_if_eq VAR_TEMP_2, DRAW_TUCKER, BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround delay 60 @@ -149,10 +137,8 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw:: BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent:: applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown waitmovement 0 - compare VAR_TEMP_2, NO_DRAW - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWon - compare VAR_TEMP_2, DRAW_TRAINER - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw + call_if_eq VAR_TEMP_2, NO_DRAW, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWon + call_if_eq VAR_TEMP_2, DRAW_TRAINER, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw playse SE_M_ENCORE2 call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround delay 60 @@ -196,14 +182,11 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw:: BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayer:: dome_get DOME_DATA_ATTEMPTED_CHALLENGE - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerFirstAttempt dome_get DOME_DATA_HAS_WON_CHALLENGE - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWon + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWon dome_get DOME_DATA_WIN_STREAK_ACTIVE - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreak + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerBrokenStreak goto BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion return @@ -266,8 +249,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerNeverWonFinal:: return BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampion:: - compare VAR_TEMP_F, DOME_FINAL - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker + goto_if_ne VAR_TEMP_F, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerChampionNoTucker switch VAR_TEMP_E case FRONTIER_BRAIN_SILVER, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerSilver case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayerPreTuckerGold @@ -387,8 +369,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver msgbox BattleFrontier_BattleDomeBattleRoom_Text_TuckerSilverIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: @@ -401,8 +382,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_IncredibleVictorIsPlayer, MSGBOX_DEFAULT dome_resolvewinners DOME_PLAYER_WON_MATCH frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney closemessage applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer waitmovement 0 @@ -417,8 +397,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver:: BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerGoldIntro:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold msgbox BattleFrontier_BattleDomeBattleRoom_Text_TuckerGoldIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold:: @@ -431,8 +410,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold:: msgbox BattleFrontier_BattleDomeBattleRoom_Text_IncredibleVictorIsPlayer, MSGBOX_DEFAULT dome_resolvewinners DOME_PLAYER_WON_MATCH frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney + goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney closemessage applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer waitmovement 0 @@ -490,12 +468,10 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, DOME_FINAL - goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects + goto_if_ne VAR_RESULT, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects frontier_getbrainstatus copyvar VAR_TEMP_E, VAR_RESULT - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects + 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 @@ -505,8 +481,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects:: end BattleFrontier_BattleDomeBattleRoom_OnResume: - compare VAR_TEMP_9, 1 - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience + call_if_eq VAR_TEMP_9, 1, BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience end BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience:: @@ -515,14 +490,10 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_CallAddAudience:: @ Add audience members to supplement the permanent object event audience BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience:: - compare VAR_TEMP_F, DOME_ROUND1 - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience - compare VAR_TEMP_F, DOME_ROUND2 - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience - compare VAR_TEMP_F, DOME_SEMIFINAL - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience - compare VAR_TEMP_F, DOME_FINAL - call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience + call_if_eq VAR_TEMP_F, DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience + call_if_eq VAR_TEMP_F, DOME_ROUND2, BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound2Audience + call_if_eq VAR_TEMP_F, DOME_SEMIFINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AddSemifinalAudience + call_if_eq VAR_TEMP_F, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_AddFinalAudience return BattleFrontier_BattleDomeBattleRoom_EventScript_AddRound1Audience:: @@ -883,8 +854,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround:: BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE - compare VAR_RESULT, FRONTIER_MODE_DOUBLES - goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles + goto_if_eq VAR_RESULT, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles warp MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY, 5, 11 waitstate end @@ -898,15 +868,13 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_WarpToLobbyDoubles:: BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos:: random 2 copyvar VAR_TEMP_D, VAR_RESULT - compare VAR_TEMP_D, 0 - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_TEMP_D, 0, Common_EventScript_NopReturn setobjectxyperm LOCALID_AUDIENCE_WALKING, 2, 0 setobjectmovementtype LOCALID_AUDIENCE_WALKING, MOVEMENT_TYPE_FACE_RIGHT return BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat:: - compare VAR_TEMP_D, 0 - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_TEMP_D, 0, Common_EventScript_NopReturn applymovement LOCALID_AUDIENCE_WALKING, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat return diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc index 246694439045..d286dc8681fa 100644 --- a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc @@ -12,8 +12,7 @@ BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor:: delay 16 setvar VAR_TEMP_0, 1 frontier_get FRONTIER_DATA_LVL_MODE - compare VAR_RESULT, FRONTIER_LVL_OPEN - goto_if_eq BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen + 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 waitmovement 0 diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc index ae82a555887b..b972a0814c3b 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc @@ -48,8 +48,7 @@ BattleFrontier_BattleDomeLobby_EventScript_WonChallenge:: call BattleFrontier_EventScript_IncrementWinStreak lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_DefeatedAce + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleDomeLobby_EventScript_DefeatedAce msgbox BattleFrontier_BattleDomeLobby_Text_CongratsForWinningTourney, MSGBOX_DEFAULT goto BattleFrontier_BattleDomeLobby_EventScript_GiveBattlePoints @@ -88,8 +87,7 @@ BattleFrontier_BattleDomeLobby_EventScript_AskRecordBattle:: playse SE_SAVE waitse call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_EndChallenge + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleDomeLobby_EventScript_EndChallenge message BattleFrontier_BattleDomeLobby_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -137,15 +135,11 @@ BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendant:: BattleFrontier_BattleDomeLobby_EventScript_AttendantWelcome:: special SavePlayerParty - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_WelcomeDoubles + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_WelcomeDoubles BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_TakeSinglesChallenge - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_TakeDoublesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_TakeSinglesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_TakeDoublesChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT @@ -162,8 +156,7 @@ BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleDomeLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleDomeLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -172,8 +165,7 @@ BattleFrontier_BattleDomeLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge msgbox BattleFrontier_BattleDomeLobby_Text_OkayToSaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleDomeLobby_EventScript_LoadPartyCancelChallenge @@ -191,8 +183,7 @@ BattleFrontier_BattleDomeLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomeLobby_EventScript_CancelChallengeSaveFailed dome_inittrainers BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: special SavePlayerParty @@ -208,10 +199,8 @@ BattleFrontier_BattleDomeLobby_EventScript_EnterChallenge:: end BattleFrontier_BattleDomeLobby_EventScript_ExplainChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_ExplainSinglesChallenge - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_ExplainDoublesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_ExplainSinglesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_ExplainDoublesChallenge goto BattleFrontier_BattleDomeLobby_EventScript_AskTakeChallenge BattleFrontier_BattleDomeLobby_EventScript_NotEnoughValidMons:: @@ -240,27 +229,19 @@ BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge:: end BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantWalkToDoor + 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 waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_OpenSinglesDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_OpenDoublesDoor + 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 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantEnterDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantEnterDoor + 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 waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_CloseSinglesDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_CloseDoublesDoor + 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 waitdooranim return @@ -357,14 +338,10 @@ BattleFrontier_BattleDomeLobby_EventScript_ShowDoublesResults:: BattleFrontier_BattleDomeLobby_EventScript_ShowPrevTourneyTree:: dome_get DOME_DATA_PREV_TOURNEY_TYPE - compare VAR_RESULT, 0 - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLv50 - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLv50 - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLvOpen - compare VAR_RESULT, 3 - call_if_eq BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLvOpen + call_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLv50 + call_if_eq VAR_RESULT, 1, BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLv50 + call_if_eq VAR_RESULT, 2, BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsSinglesLvOpen + call_if_eq VAR_RESULT, 3, BattleFrontier_BattleDomeLobby_EventScript_PrevTourneyResultsDoublesLvOpen fadescreen FADE_TO_BLACK dome_showprevtourneytree waitstate diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc index da5b4371ade0..6ca4296cc0d1 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc @@ -19,8 +19,7 @@ BattleFrontier_BattleDomePreBattleRoom_OnFrame: .2byte 0 BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom:: - compare VAR_0x8006, 1 - goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle + 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 @@ -31,8 +30,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound:: waitmessage switch VAR_RESULT @ No case? call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord multichoice 16, 0, MULTI_TOURNEY_WITH_RECORD, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo @@ -146,8 +144,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge:: special ChoosePartyForBattleFrontier waitstate frontier_resetsketch - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound dome_set DOME_DATA_SELECTED_MONS dome_reduceparty dome_setopponent diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc index b0529153e344..cf44e3118e90 100644 --- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc @@ -19,14 +19,11 @@ BattleFrontier_BattleFactoryBattleRoom_MapScripts:: BattleFrontier_BattleFactoryBattleRoom_OnTransition: frontier_settrainers checkplayergender - compare VAR_RESULT, MALE - call_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - call_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale + call_if_eq VAR_RESULT, MALE, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale + call_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj + goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj end BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj:: @@ -41,8 +38,7 @@ BattleFrontier_BattleFactoryBattleRoom_OnWarp: BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects:: setvar VAR_TEMP_1, 1 hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM - compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects + goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects hideobjectat LOCALID_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects:: end @@ -71,8 +67,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle:: end BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom:: - compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle + goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom waitmovement 0 @@ -84,8 +79,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter waitmovement 0 BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent:: - compare VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland + goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland palace_getopponentintro lockall msgbox gStringVar4, MSGBOX_DEFAULT @@ -105,8 +99,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost:: BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent:: factory_get FACTORY_DATA_WIN_STREAK_SWAPS - compare VAR_RESULT, MAX_STREAK - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak + goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak addvar VAR_RESULT, 1 setorcopyvar VAR_0x8006, VAR_RESULT factory_set FACTORY_DATA_WIN_STREAK_SWAPS @ uses VAR_0x8006 above @@ -131,21 +124,18 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver:: msgbox BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn, MSGBOX_DEFAULT call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver:: frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland + 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 @@ -160,21 +150,18 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver:: BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold msgbox BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold:: msgbox BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn, MSGBOX_DEFAULT call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold:: frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland + 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 @@ -199,14 +186,12 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle:: BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland:: factory_get FACTORY_DATA_WIN_STREAK_SWAPS - compare VAR_RESULT, MAX_STREAK - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak + goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak addvar VAR_RESULT, 1 setorcopyvar VAR_0x8006, VAR_RESULT factory_set FACTORY_DATA_WIN_STREAK_SWAPS @ uses VAR_0x8006 above factory_get FACTORY_DATA_WIN_STREAK - compare VAR_RESULT, MAX_STREAK - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum + goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum addvar VAR_RESULT, 1 factory_set FACTORY_DATA_WIN_STREAK, VAR_RESULT frontier_get FRONTIER_DATA_BATTLE_NUM @@ -245,8 +230,7 @@ BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle: BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE - compare VAR_RESULT, FRONTIER_MODE_DOUBLES - goto_if_eq BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles + goto_if_eq VAR_RESULT, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 4, 8 waitstate end diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc index da36d96e253c..682b2c91d193 100644 --- a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc @@ -43,8 +43,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_QuitWithoutSaving:: BattleFrontier_BattleFactoryLobby_EventScript_WonChallenge:: lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_DefeatedFactoryHead + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleFactoryLobby_EventScript_DefeatedFactoryHead msgbox BattleFrontier_BattleFactoryLobby_Text_CongratsSevenWins, MSGBOX_DEFAULT waitmessage goto BattleFrontier_BattleFactoryLobby_EventScript_GiveBattlePoints @@ -79,8 +78,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_LostChallenge:: BattleFrontier_BattleFactoryLobby_EventScript_AskRecordBattle:: call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleFactoryLobby_EventScript_EndRecordBattle message BattleFrontier_BattleFactoryLobby_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -126,15 +124,11 @@ BattleFrontier_BattleFactoryLobby_EventScript_DoublesAttendant:: BattleFrontier_BattleFactoryLobby_EventScript_Attendant:: special SavePlayerParty - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForSingleBattle - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForDoubleBattle + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForSingleBattle + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryLobby_EventScript_WelcomeForDoubleBattle BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TakeSinglesChallenge - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TakeDoublesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleFactoryLobby_EventScript_TakeSinglesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryLobby_EventScript_TakeDoublesChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT @@ -167,17 +161,14 @@ BattleFrontier_BattleFactoryLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed setvar VAR_0x8006, 0 BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge:: special SavePlayerParty msgbox BattleFrontier_BattleFactoryLobby_Text_StepThisWay, MSGBOX_DEFAULT closemessage - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TalkedToSinglesAttendant - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant + 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 waitmovement 0 @@ -195,10 +186,8 @@ BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant:: return BattleFrontier_BattleFactoryLobby_EventScript_ExplainChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_ExplainSinglesChallenge - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleFactoryLobby_EventScript_ExplainDoublesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleFactoryLobby_EventScript_ExplainSinglesChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryLobby_EventScript_ExplainDoublesChallenge goto BattleFrontier_BattleFactoryLobby_EventScript_AskTakeChallenge BattleFrontier_BattleFactoryLobby_EventScript_CancelChallengeSaveFailed:: diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index f83b77fbbfed..d54cf83570e9 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -11,8 +11,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_OnWarp: BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 - compare VAR_0x8006, 1 - goto_if_ne BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth + goto_if_ne VAR_0x8006, 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth setobjectxy LOCALID_ATTENDANT, 8, 7 turnobject LOCALID_ATTENDANT, DIR_SOUTH BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth:: @@ -24,14 +23,12 @@ BattleFrontier_BattleFactoryPreBattleRoom_OnFrame: .2byte 0 BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: - compare VAR_0x8006, 1 - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle + 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 waitmovement 0 - compare VAR_0x8006, 2 - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge + goto_if_eq VAR_0x8006, 2, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge factory_generaterentalmons factory_generateopponentmons factory_getopponentmontype @@ -49,10 +46,8 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT closemessage call BattleFrontier_EventScript_GetLvlMode - compare VAR_RESULT, FRONTIER_LVL_50 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLv50 - compare VAR_RESULT, FRONTIER_LVL_OPEN - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen + call_if_eq VAR_RESULT, FRONTIER_LVL_50, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLv50 + call_if_eq VAR_RESULT, FRONTIER_LVL_OPEN, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen waitmovement 0 warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM, 6, 11 waitstate @@ -66,8 +61,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle:: waitfanfare special HealPlayerParty frontier_getbrainstatus - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent + goto_if_eq VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent playse SE_POKENAV_CALL waitse msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_WaitFewMoments, MSGBOX_DEFAULT @@ -86,25 +80,17 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle:: BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead + goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForRegularOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor3rdOpponent - compare VAR_RESULT, 3 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor4thOpponent - compare VAR_RESULT, 4 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor5thOpponent - compare VAR_RESULT, 5 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor6thOpponent - compare VAR_RESULT, 6 - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor7thOpponent + call_if_eq VAR_RESULT, 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 3, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor4thOpponent + call_if_eq VAR_RESULT, 4, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor5thOpponent + call_if_eq VAR_RESULT, 5, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor6thOpponent + call_if_eq VAR_RESULT, 6, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReadyFor7thOpponent call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForOpponentNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon @@ -168,8 +154,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: fadescreen FADE_TO_BLACK factory_swapmons waitstate - compare VAR_RESULT, TRUE @ Did player keep current pokemon - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom @ Did player keep current pokemon factory_setswapped msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT goto BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom @@ -223,42 +208,24 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge:: BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_InvestigatedUpcomingOpponent, MSGBOX_DEFAULT - compare VAR_0x8005, TYPE_NORMAL - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal - compare VAR_0x8005, TYPE_FIGHTING - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFighting - compare VAR_0x8005, TYPE_FLYING - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFlying - compare VAR_0x8005, TYPE_POISON - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPoison - compare VAR_0x8005, TYPE_GROUND - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGround - compare VAR_0x8005, TYPE_ROCK - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesRock - compare VAR_0x8005, TYPE_BUG - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesBug - compare VAR_0x8005, TYPE_GHOST - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGhost - compare VAR_0x8005, TYPE_STEEL - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesSteel - compare VAR_0x8005, TYPE_FIRE - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFire - compare VAR_0x8005, TYPE_WATER - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesWater - compare VAR_0x8005, TYPE_GRASS - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGrass - compare VAR_0x8005, TYPE_ELECTRIC - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesElectric - compare VAR_0x8005, TYPE_PSYCHIC - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPsychic - compare VAR_0x8005, TYPE_ICE - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesIce - compare VAR_0x8005, TYPE_DRAGON - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDragon - compare VAR_0x8005, TYPE_DARK - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark - compare VAR_0x8005, NUMBER_OF_MON_TYPES - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType + call_if_eq VAR_0x8005, TYPE_NORMAL, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal + call_if_eq VAR_0x8005, TYPE_FIGHTING, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFighting + call_if_eq VAR_0x8005, TYPE_FLYING, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFlying + call_if_eq VAR_0x8005, TYPE_POISON, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPoison + call_if_eq VAR_0x8005, TYPE_GROUND, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGround + call_if_eq VAR_0x8005, TYPE_ROCK, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesRock + call_if_eq VAR_0x8005, TYPE_BUG, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesBug + call_if_eq VAR_0x8005, TYPE_GHOST, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGhost + call_if_eq VAR_0x8005, TYPE_STEEL, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesSteel + call_if_eq VAR_0x8005, TYPE_FIRE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFire + call_if_eq VAR_0x8005, TYPE_WATER, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesWater + call_if_eq VAR_0x8005, TYPE_GRASS, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesGrass + call_if_eq VAR_0x8005, TYPE_ELECTRIC, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesElectric + call_if_eq VAR_0x8005, TYPE_PSYCHIC, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesPsychic + call_if_eq VAR_0x8005, TYPE_ICE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesIce + call_if_eq VAR_0x8005, TYPE_DRAGON, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDragon + call_if_eq VAR_0x8005, TYPE_DARK, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark + call_if_eq VAR_0x8005, NUMBER_OF_MON_TYPES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType return BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesNormal:: @@ -334,24 +301,15 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonTyp return BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle:: - compare VAR_0x8006, FACTORY_STYLE_NONE - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained - compare VAR_0x8006, FACTORY_STYLE_PREPARATION - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleTotalPreparation - compare VAR_0x8006, FACTORY_STYLE_SLOW_STEADY - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleSlowAndSteady - compare VAR_0x8006, FACTORY_STYLE_ENDURANCE - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleEndurance - compare VAR_0x8006, FACTORY_STYLE_HIGH_RISK - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleHighRisk - compare VAR_0x8006, FACTORY_STYLE_WEAKENING - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleWeakenFoe - compare VAR_0x8006, FACTORY_STYLE_UNPREDICTABLE - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleImpossibleToPredict - compare VAR_0x8006, FACTORY_STYLE_WEATHER - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleDependsOnFlow - compare VAR_0x8006, FACTORY_NUM_STYLES - call_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleFlexible + call_if_eq VAR_0x8006, FACTORY_STYLE_NONE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained + call_if_eq VAR_0x8006, FACTORY_STYLE_PREPARATION, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleTotalPreparation + call_if_eq VAR_0x8006, FACTORY_STYLE_SLOW_STEADY, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleSlowAndSteady + call_if_eq VAR_0x8006, FACTORY_STYLE_ENDURANCE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleEndurance + call_if_eq VAR_0x8006, FACTORY_STYLE_HIGH_RISK, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleHighRisk + call_if_eq VAR_0x8006, FACTORY_STYLE_WEAKENING, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleWeakenFoe + call_if_eq VAR_0x8006, FACTORY_STYLE_UNPREDICTABLE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleImpossibleToPredict + call_if_eq VAR_0x8006, FACTORY_STYLE_WEATHER, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleDependsOnFlow + call_if_eq VAR_0x8006, FACTORY_NUM_STYLES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleFlexible return BattleFrontier_BattleFactoryPreBattleRoom_EventScript_StyleUnrestrained:: @@ -394,8 +352,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHead:: message BattleFrontier_BattleFactoryPreBattleRoom_Text_PreparedToFaceHead waitmessage call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskReadyForHeadNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc index 1d46ea0440d5..2e9366d44b88 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc @@ -21,10 +21,8 @@ BattleFrontier_BattlePalaceBattleRoom_OnTransition: BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfxFemale return @ The opponent's gfx are set to the players by default @@ -45,8 +43,7 @@ BattleFrontier_BattlePalaceBattleRoom_OnFrame: BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom:: showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge waitmovement 0 applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown @@ -95,24 +92,16 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent:: BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_MavenUpNext + goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattlePalaceBattleRoom_EventScript_MavenUpNext frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor3rdOpponent - compare VAR_RESULT, 3 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor4thOpponent - compare VAR_RESULT, 4 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor5thOpponent - compare VAR_RESULT, 5 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor6thOpponent - compare VAR_RESULT, 6 - call_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor7thOpponent + call_if_eq VAR_RESULT, 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 3, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor4thOpponent + call_if_eq VAR_RESULT, 4, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor5thOpponent + call_if_eq VAR_RESULT, 5, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor6thOpponent + call_if_eq VAR_RESULT, 6, BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor7thOpponent call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponentNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge @@ -179,16 +168,14 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: end BattleFrontier_BattlePalaceBattleRoom_EventScript_MavenUpNext:: - compare VAR_TEMP_2, 1 - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven + goto_if_eq VAR_TEMP_2, 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven msgbox BattleFrontier_BattlePalaceBattleRoom_Text_ChallengingPalaceMaven, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMaven:: message BattleFrontier_BattlePalaceBattleRoom_Text_ReadyForPalaceMaven waitmessage call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForMavenNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser @@ -225,22 +212,19 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserFirstIntro, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserSilver:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_ProveYourBondWithMons, MSGBOX_DEFAULT call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: palace_incrementstreak frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon + 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 @@ -260,22 +244,19 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver:: BattleFrontier_BattlePalaceBattleRoom_EventScript_IntroSpenserGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserThisTimeWontHoldBack, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenserGold:: msgbox BattleFrontier_BattlePalaceBattleRoom_Text_Kaaah, MSGBOX_DEFAULT call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyLost BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold:: palace_incrementstreak frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon + 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 @@ -417,8 +398,7 @@ BattleFrontier_BattlePalaceBattleRoom_Movement_UnusedOpponentEnter3: BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE - compare VAR_RESULT, FRONTIER_MODE_DOUBLES - goto_if_eq BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles + goto_if_eq VAR_RESULT, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyDoubles warp MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY, 5, 7 waitstate end diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc index 68de944c09e3..ad2a2ee9f5b7 100644 --- a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc @@ -15,20 +15,14 @@ BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor:: waitmovement 0 lockall palace_getcomment - compare VAR_RESULT, 0 - call_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment1 - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment2 - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment3 - compare VAR_RESULT, 3 - call_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_StreakComment - compare VAR_RESULT, 4 - call_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_LongStreakComment + call_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment1 + call_if_eq VAR_RESULT, 1, BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment2 + call_if_eq VAR_RESULT, 2, BattleFrontier_BattlePalaceCorridor_EventScript_RandomComment3 + call_if_eq VAR_RESULT, 3, BattleFrontier_BattlePalaceCorridor_EventScript_StreakComment + call_if_eq VAR_RESULT, 4, BattleFrontier_BattlePalaceCorridor_EventScript_LongStreakComment closemessage frontier_get FRONTIER_DATA_LVL_MODE - compare VAR_RESULT, FRONTIER_LVL_OPEN - goto_if_eq BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom + 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 waitmovement 0 diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index 0bd08ae44b5b..481f7000db81 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -41,8 +41,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_QuitWithoutSaving:: BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge:: lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_DefeatedMaven + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePalaceLobby_EventScript_DefeatedMaven msgbox BattleFrontier_BattlePalaceLobby_Text_FirmTrueBondsFor7WinStreak, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_GiveBattlePoints @@ -81,8 +80,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveAfterChallenge:: playse SE_SAVE waitse call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePalaceLobby_EventScript_EndSaveAfterChallenge message BattleFrontier_BattlePalaceLobby_Text_LikeToRecordMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -126,18 +124,13 @@ BattleFrontier_BattlePalaceLobby_EventScript_DoublesAttendant:: BattleFrontier_BattlePalaceLobby_EventScript_Attendant:: palace_get PALACE_DATA_PRIZE - compare VAR_RESULT, ITEM_NONE - goto_if_ne BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge + goto_if_ne VAR_RESULT, ITEM_NONE, BattleFrontier_BattlePalaceLobby_EventScript_WonChallenge special SavePlayerParty - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForSingleBattle - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForDoubleBattle + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForSingleBattle + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_WelcomeForDoubleBattle BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_AskTakeSingleBattleChallenge - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattlePalaceLobby_EventScript_AskTakeSingleBattleChallenge + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge waitmessage multichoice 17, 6, MULTI_CHALLENGEINFO, FALSE switch VAR_RESULT @@ -154,8 +147,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePalaceLobby_Text_NowSelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -164,8 +156,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge msgbox BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge2, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattlePalaceLobby_EventScript_LoadPartyAndCancelChallenge @@ -184,8 +175,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceLobby_EventScript_CancelChallengeSaveFailed BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE @@ -198,8 +188,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_EnterChallenge:: end BattleFrontier_BattlePalaceLobby_EventScript_ExplainChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_ExplainDoublesChallenge + goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_ExplainDoublesChallenge msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainSingleBattleChallenge, MSGBOX_DEFAULT goto BattleFrontier_BattlePalaceLobby_EventScript_AskTakeChallenge @@ -249,25 +238,19 @@ BattleFrontier_BattlePalaceLobby_EventScript_AskTakeDoubleBattleChallenge:: return BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_TalkedToDoublesAttendant + 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 waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_OpenSinglesHallDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_OpenDoublesHallDoor + 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 waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_CloseSinglesHallDoor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattlePalaceLobby_EventScript_CloseDoublesHallDoor + 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 waitdooranim return diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index 4bb6e232754d..fb91ee752a23 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -41,8 +41,7 @@ BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving:: BattleFrontier_BattlePikeLobby_EventScript_WonChallenge:: lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_DefeatedQueen + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeLobby_EventScript_DefeatedQueen msgbox BattleFrontier_BattlePikeLobby_Text_PossessLuckInAbundance, MSGBOX_DEFAULT waitmessage goto BattleFrontier_BattlePikeLobby_EventScript_GiveBattlePoints @@ -116,8 +115,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePikeLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePikeLobby_Text_PleaseChooseThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -126,8 +124,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge msgbox BattleFrontier_BattlePikeLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattlePikeLobby_EventScript_LoadPartyAndCancelChallenge @@ -149,8 +146,7 @@ BattleFrontier_BattlePikeLobby_EventScript_SaveBeforeChallenge:: call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 pike_savehelditems - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePikeLobby_EventScript_CancelChallengeSaveFailed special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE msgbox BattleFrontier_BattlePikeLobby_Text_StepThisWay, MSGBOX_DEFAULT diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 5888c140d67f..9d060214de6d 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -137,21 +137,18 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver msgbox BattleFrontier_BattlePikeRoomNormal_Text_ImThePikeQueen, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucySilver:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_HopeYouDidntUseUpLuck, MSGBOX_DEFAULT call BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver:: frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy msgbox BattleFrontier_BattlePikeRoomNormal_Text_LucyShowMeFrontierPass, MSGBOX_DEFAULT waitmessage playfanfare MUS_OBTAIN_SYMBOL @@ -165,21 +162,18 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucySilver:: BattleFrontier_BattlePikeRoomNormal_EventScript_IntroLucyGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold msgbox BattleFrontier_BattlePikeRoomNormal_Text_LucyYouAgain, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattlePikeRoomNormal_EventScript_BattleLucyGold:: msgbox BattleFrontier_BattlePikeRoomNormal_Text_NowComeOn, MSGBOX_DEFAULT call BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold goto BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold:: frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy + goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy msgbox BattleFrontier_BattlePikeRoomNormal_Text_LucyFrontierPass, MSGBOX_DEFAULT waitmessage playfanfare MUS_OBTAIN_SYMBOL @@ -290,10 +284,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterStatusRoom:: waitmovement 0 pike_getstatusmon copyvar VAR_0x8004, VAR_RESULT - compare VAR_0x8004, PIKE_STATUSMON_KIRLIA - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack - compare VAR_0x8004, PIKE_STATUSMON_DUSCLOPS - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack + call_if_eq VAR_0x8004, PIKE_STATUSMON_KIRLIA, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack + call_if_eq VAR_0x8004, PIKE_STATUSMON_DUSCLOPS, BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack msgbox BattleFrontier_BattlePikeRoomNormal_Text_AttacksWhenStartled, MSGBOX_DEFAULT closemessage releaseall @@ -306,14 +298,10 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack:: playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL waitmoncry pike_getstatus - compare VAR_RESULT, PIKE_STATUS_TOXIC - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedToxic - compare VAR_RESULT, PIKE_STATUS_BURN - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedWillOWisp - compare VAR_RESULT, PIKE_STATUS_PARALYSIS - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedThunderWave - compare VAR_RESULT, PIKE_STATUS_SLEEP - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedHypnosis + call_if_eq VAR_RESULT, PIKE_STATUS_TOXIC, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedToxic + call_if_eq VAR_RESULT, PIKE_STATUS_BURN, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedWillOWisp + call_if_eq VAR_RESULT, PIKE_STATUS_PARALYSIS, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedThunderWave + call_if_eq VAR_RESULT, PIKE_STATUS_SLEEP, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedHypnosis pike_flashscreen waitstate applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon @@ -341,10 +329,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack:: playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL waitmoncry pike_getstatus - compare VAR_RESULT, PIKE_STATUS_FREEZE - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedIceBeam - compare VAR_RESULT, PIKE_STATUS_BURN - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp + call_if_eq VAR_RESULT, PIKE_STATUS_FREEZE, BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedIceBeam + call_if_eq VAR_RESULT, PIKE_STATUS_BURN, BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp pike_flashscreen waitstate applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon @@ -569,10 +555,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_StatusNPC:: BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC:: pike_healonetwomons - compare VAR_RESULT, 2 - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreOneMon + call_if_eq VAR_RESULT, 2, BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreTwoMons + call_if_eq VAR_RESULT, 1, BattleFrontier_BattlePikeRoomNormal_EventScript_WillRestoreOneMon playfanfare MUS_HEAL waitfanfare msgbox BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell, MSGBOX_DEFAULT diff --git a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc index 0c055f631507..19926b9675e3 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc @@ -32,10 +32,8 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_TurnPlayerNorth:: BattleFrontier_BattlePikeRoomWildMons_OnResume: call BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves frontier_get FRONTIER_DATA_BATTLE_OUTCOME - compare VAR_RESULT, B_OUTCOME_LOST - goto_if_eq BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost - compare VAR_RESULT, B_OUTCOME_DREW - goto_if_eq BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost + goto_if_eq VAR_RESULT, B_OUTCOME_LOST, BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost + goto_if_eq VAR_RESULT, B_OUTCOME_DREW, BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost end BattleFrontier_BattlePikeRoomWildMons_EventScript_SetLost:: diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc index 301a8f476638..e95ca9dcea85 100644 --- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc @@ -151,8 +151,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_AskRetireChallenge:: BattleFrontier_BattlePikeThreePathRoom_EventScript_SetHintRoom:: pike_sethintroom - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint setvar VAR_TEMP_5, 255 end @@ -173,8 +172,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint:: BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: pike_gethint - compare VAR_RESULT, PIKE_HINT_BRAIN - goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint + goto_if_eq VAR_RESULT, PIKE_HINT_BRAIN, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint lock faceplayer msgbox BattleFrontier_BattlePikeThreePathRoom_Text_FindingItDifficultToChoose, MSGBOX_YESNO diff --git a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc index ebc3a8d3e390..a6b3f63c8e5f 100644 --- a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc @@ -21,8 +21,7 @@ BattleFrontier_BattlePyramidFloor_EventScript_UpdateLight:: BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop:: special CallBattlePyramidFunction delay 2 - compare VAR_RESULT, 2 - goto_if_ne BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop + goto_if_ne VAR_RESULT, 2, BattleFrontier_BattlePyramidFloor_EventScript_UpdateLightLoop setvar VAR_TEMP_D, 0 releaseall end @@ -45,18 +44,12 @@ BattleFrontier_BattlePyramidFloor_OnResume: case CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramid_EventScript_WarpToLobby case CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidFloor_EventScript_ReadyChallenge frontier_get FRONTIER_DATA_BATTLE_OUTCOME - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq BattleFrontier_BattlePyramidFloor_EventScript_ResetParty - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq BattleFrontier_BattlePyramidFloor_EventScript_ResetParty - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePyramidFloor_EventScript_ResetParty - compare VAR_RESULT, B_OUTCOME_LOST - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost - compare VAR_RESULT, B_OUTCOME_DREW - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost - compare VAR_RESULT, B_OUTCOME_FORFEITED - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, BattleFrontier_BattlePyramidFloor_EventScript_ResetParty + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, BattleFrontier_BattlePyramidFloor_EventScript_ResetParty + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidFloor_EventScript_ResetParty + goto_if_eq VAR_RESULT, B_OUTCOME_LOST, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_DREW, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_FORFEITED, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost frontier_isbattletype BATTLE_TYPE_TRAINER @ VAR_RESULT seems to be ignored here setvar VAR_TEMP_D, 1 BattleFrontier_BattlePyramidFloor_EventScript_ResetParty:: @@ -97,8 +90,7 @@ BattlePyramid_WarpToNextFloor:: frontier_get FRONTIER_DATA_BATTLE_NUM @ Floor number addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT - compare VAR_RESULT, 7 - goto_if_eq BattlePyramid_WarpToTop + goto_if_eq VAR_RESULT, 7, BattlePyramid_WarpToTop pyramid_seedfloor frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_RESULT, 0 @@ -124,8 +116,7 @@ BattlePyramid_TrainerBattle:: BattlePyramid_FindItemBall:: pyramid_setitem callstd STD_FIND_ITEM - compare VAR_0x8007, 0 - goto_if_eq BattlePyramid_FindItemBallEnd + goto_if_eq VAR_0x8007, 0, BattlePyramid_FindItemBallEnd pyramid_hideitem BattlePyramid_FindItemBallEnd:: end diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc index 761f5f6635a1..550644511b2d 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc @@ -45,8 +45,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_QuitWithoutSaving:: BattleFrontier_BattlePyramidLobby_EventScript_WonChallenge:: lockall frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_DefeatedKing + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePyramidLobby_EventScript_DefeatedKing msgbox BattleFrontier_BattlePyramidLobby_Text_YouveConqueredPyramid, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints @@ -54,8 +53,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_DefeatedKing:: msgbox BattleFrontier_BattlePyramidLobby_Text_YouveDefeatedPyramidKing, MSGBOX_DEFAULT BattleFrontier_BattlePyramidLobby_EventScript_GiveBattlePoints:: special DoBattlePyramidMonsHaveHeldItem - compare VAR_RESULT, TRUE - call_if_eq BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag + call_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag clearflag FLAG_STORING_ITEMS_IN_PYRAMID_BAG frontier_checkairshow special LoadPlayerParty @@ -130,8 +128,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattlePyramidLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -140,8 +137,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge msgbox BattleFrontier_BattlePyramidLobby_Text_OkayToSaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattlePyramidLobby_EventScript_LoadPartyAndCancelChallenge @@ -162,8 +158,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidLobby_EventScript_CancelChallengeSaveFailed BattleFrontier_BattlePyramidLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE @@ -233,8 +228,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_NoHint:: BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLv50:: msgbox BattleFrontier_BattlePyramidLobby_Text_Aah, MSGBOX_DEFAULT pyramid_get PYRAMID_DATA_WIN_STREAK_ACTIVE_50 - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLv50Streak + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLv50Streak setvar VAR_RESULT, 0 goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return @@ -247,8 +241,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLv50Streak:: BattleFrontier_BattlePyramidLobby_EventScript_GiveHintLvOpen:: msgbox BattleFrontier_BattlePyramidLobby_Text_Aah, MSGBOX_DEFAULT pyramid_get PYRAMID_DATA_WIN_STREAK_ACTIVE_OPEN - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLvOpenStreak + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidLobby_EventScript_GiveHintGetLvOpenStreak setvar VAR_RESULT, 0 goto BattleFrontier_BattlePyramidLobby_EventScript_DoHintComment return @@ -378,8 +371,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_WalkToPanelAndReceiveBag:: waitmovement 0 msgbox BattleFrontier_BattlePyramidLobby_Text_WeWillHoldBagForSafekeeping, MSGBOX_DEFAULT pyramid_get PYRAMID_DATA_WIN_STREAK - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_ReceiveNewBattleBag + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidLobby_EventScript_ReceiveNewBattleBag msgbox BattleFrontier_BattlePyramidLobby_Text_PleaseTakePreviousBattleBag, MSGBOX_DEFAULT goto BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag @@ -433,8 +425,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_StoreHeldItemsInPyramidBag:: msgbox BattleFrontier_BattlePyramidLobby_Text_MonHoldingItemCannotTake, MSGBOX_DEFAULT setflag FLAG_STORING_ITEMS_IN_PYRAMID_BAG special TryStoreHeldItemsInPyramidBag - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_HeldItemsStoredInPyramidBag + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePyramidLobby_EventScript_HeldItemsStoredInPyramidBag message BattleFrontier_BattlePyramidLobby_Text_BagCannotHoldPickItemsToKeep waitmessage goto BattleFrontier_BattlePyramidLobby_EventScript_PickItemsToKeep @@ -472,8 +463,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_PickItemsFromParty:: BattleFrontier_BattlePyramidLobby_EventScript_ExitPickItems:: special DoBattlePyramidMonsHaveHeldItem - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems return BattleFrontier_BattlePyramidLobby_EventScript_PartyStillHasHeldItems:: diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc index f7054d20258d..385356c4badd 100644 --- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc +++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc @@ -20,16 +20,14 @@ BattleFrontier_BattlePyramidTop_OnWarp: BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH - compare VAR_TEMP_C, 0 - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects + goto_if_ne VAR_TEMP_C, 0, BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects setobjectxyperm LOCALID_BRANDON, 0, 0 BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects:: end BattleFrontier_BattlePyramidTop_OnResume: frontier_getbrainstatus - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus + goto_if_eq VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus call BattleFrontier_EventScript_SetBrainObjectGfx BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus:: copyvar VAR_TEMP_C, VAR_RESULT @@ -39,12 +37,9 @@ BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus:: case CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramid_EventScript_WarpToLobby case CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge frontier_get FRONTIER_DATA_BATTLE_OUTCOME - compare VAR_RESULT, B_OUTCOME_LOST - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost - compare VAR_RESULT, B_OUTCOME_DREW - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost - compare VAR_RESULT, B_OUTCOME_FORFEITED - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_LOST, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_DREW, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + goto_if_eq VAR_RESULT, B_OUTCOME_FORFEITED, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost end BattleFrontier_BattlePyramidTop_OnFrame: @@ -74,10 +69,8 @@ BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge:: BattleFrontier_BattlePyramidTop_EventScript_Attendant:: lock faceplayer - compare VAR_TEMP_D, 0 - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady - compare VAR_TEMP_C, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside + goto_if_ne VAR_TEMP_D, 0, BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady + 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 @@ -116,8 +109,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp waitmovement 0 @@ -137,14 +129,12 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver:: msgbox BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle playbgm MUS_B_PYRAMID_TOP, FALSE - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver:: frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon msgbox BattleFrontier_BattlePyramidTop_Text_BrandonFrontierPassPlease, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_SYMBOL message BattleFrontier_BattlePyramidTop_Text_ReceivedBraveSymbol @@ -156,8 +146,7 @@ BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver:: BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech special SpawnCameraObject applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp waitmovement 0 @@ -177,14 +166,12 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold:: msgbox BattleFrontier_BattlePyramidTop_Text_EverythingYouHave, MSGBOX_DEFAULT call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle playbgm MUS_B_PYRAMID_TOP, FALSE - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold:: frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon + goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon msgbox BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_SYMBOL message BattleFrontier_BattlePyramidTop_Text_BraveSymbolTookGoldenShine diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc index ab25442a2639..9b466af3bc1d 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc @@ -25,8 +25,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom:: applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant @@ -62,8 +61,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent:: waitmovement 0 removeobject LOCALID_OPPONENT frontier_getbrainstatus - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - call_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter + call_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant @@ -75,13 +73,11 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent:: BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponent:: frontier_getbrainstatus copyvar VAR_TEMP_F, VAR_RESULT - compare VAR_RESULT, FRONTIER_BRAIN_NOT_READY - goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_MaidenUpNext + goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleTowerBattleRoom_EventScript_MaidenUpNext frontier_get FRONTIER_DATA_BATTLE_NUM call BattleFrontier_BattleTowerBattleRoom_EventScript_ReadyForOpponent call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForOpponentNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge @@ -214,16 +210,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter:: return BattleFrontier_BattleTowerBattleRoom_EventScript_MaidenUpNext:: - compare VAR_TEMP_2, 1 - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden + goto_if_eq VAR_TEMP_2, 1, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden msgbox BattleFrontier_BattleTowerBattleRoom_Text_SalonMaidenOnHerWay, MSGBOX_DEFAULT setvar VAR_TEMP_2, 1 BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaiden:: message BattleFrontier_BattleTowerBattleRoom_Text_ReadyForSalonMaiden waitmessage call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel @@ -255,22 +249,19 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel:: case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver msgbox BattleFrontier_BattleTowerBattleRoom_Text_GreetingsImAnabel, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelSilver:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_LetMeSeeYourTalent, MSGBOX_DEFAULT call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver + goto_if_eq VAR_RESULT, B_OUTCOME_WON, BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver:: call BattleFrontier_EventScript_IncrementWinStreak frontier_getsymbols - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon msgbox BattleFrontier_BattleTowerBattleRoom_Text_AnabelTalentShallBeRecognized, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_SYMBOL message BattleFrontier_BattleTowerBattleRoom_Text_ReceivedAbilitySymbol @@ -282,22 +273,19 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelSilver:: BattleFrontier_BattleTowerBattleRoom_EventScript_AnabelGoldIntro:: frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH - compare VAR_RESULT, FALSE - goto_if_ne BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold + goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold msgbox BattleFrontier_BattleTowerBattleRoom_Text_AnabelYouCameBack, MSGBOX_DEFAULT frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabelGold:: msgbox BattleFrontier_BattleTowerBattleRoom_Text_LetsBeginShallWe, MSGBOX_DEFAULT call BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold + goto_if_eq VAR_RESULT, B_OUTCOME_WON, BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold goto BattleFrontier_BattleTower_EventScript_WarpToLobbyLost BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedAnabelGold:: call BattleFrontier_EventScript_IncrementWinStreak frontier_getsymbols - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon + goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon msgbox BattleFrontier_BattleTowerBattleRoom_Text_AnabelCongratsYourPassPlease, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_SYMBOL message BattleFrontier_BattleTowerBattleRoom_Text_AbilitySymbolTookGoldenShine @@ -317,8 +305,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DoTowerBattle:: special DoSpecialTrainerBattle waitstate copyvar VAR_0x8004, VAR_FRONTIER_BATTLE_MODE - compare VAR_0x8004, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_EndTowerBattle + goto_if_eq VAR_0x8004, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerBattleRoom_EventScript_EndTowerBattle frontier_restorehelditems special HealPlayerParty frontier_resetsketch @@ -422,12 +409,9 @@ BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter: BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby:: copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE - compare VAR_RESULT, FRONTIER_MODE_DOUBLES - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles - compare VAR_RESULT, FRONTIER_MODE_MULTIS - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis - compare VAR_RESULT, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis + goto_if_eq VAR_RESULT, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyDoubles + goto_if_eq VAR_RESULT, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyMultis + goto_if_eq VAR_RESULT, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyLinkMultis warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 6, 6 waitstate end diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc index b4ddb0788bd0..d0f3d487a8c3 100644 --- a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc @@ -6,8 +6,7 @@ BattleFrontier_BattleTowerCorridor_MapScripts:: .byte 0 BattleFrontier_BattleTowerCorridor_OnLoad: - compare VAR_0x8006, 1 - goto_if_eq BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor + goto_if_eq VAR_0x8006, 1, BattleFrontier_BattleTowerCorridor_EventScript_OpenFarDoor setmetatile 12, 0, METATILE_BattleFrontier_CorridorOpenDoor_Top, FALSE setmetatile 12, 1, METATILE_BattleFrontier_CorridorOpenDoor_Bottom, FALSE end @@ -23,8 +22,7 @@ BattleFrontier_BattleTowerCorridor_OnFrame: BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor:: setvar VAR_TEMP_0, 1 - compare VAR_0x8006, 1 - goto_if_eq BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor + 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 waitmovement 0 diff --git a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc index 1f7e05ca5f3c..06f4ff0a70c9 100644 --- a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc @@ -26,14 +26,10 @@ BattleFrontier_BattleTowerElevator_EventScript_EnterElevator:: end BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoomMulti - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoomMulti + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridorMulti return BattleFrontier_BattleTowerElevator_EventScript_WarpToCorridor:: diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index 3d10a08a02af..40936936a7c8 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -19,8 +19,7 @@ BattleFrontier_BattleTowerLobby_OnResume: BattleFrontier_BattleTowerLobby_OnTransition: call BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter apprentice_shouldcheckgone - compare VAR_0x8004, FALSE @ Always TRUE here - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice + goto_if_eq VAR_0x8004, FALSE, BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice @ VAR_0x8004 always TRUE here goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, BattleFrontier_BattleTowerLobby_EventScript_HideApprentice BattleFrontier_BattleTowerLobby_EventScript_ShowApprentice:: clearflag FLAG_HIDE_APPRENTICE @@ -69,8 +68,7 @@ BattleFrontier_BattleTowerLobby_EventScript_WonChallenge:: lock faceplayer frontier_isbrain - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_DefeatedMaiden + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_DefeatedMaiden message BattleFrontier_BattleTowerLobby_Text_CongratsBeatenSeven waitmessage goto BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons @@ -79,8 +77,7 @@ BattleFrontier_BattleTowerLobby_EventScript_DefeatedMaiden:: msgbox BattleFrontier_BattleTowerLobby_Text_CongratsDefeatedMaiden, MSGBOX_DEFAULT BattleFrontier_BattleTowerLobby_EventScript_GiveRibbons:: tower_giveribbons - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints message BattleFrontier_BattleTowerLobby_Text_HereAreSomeRibbons waitmessage playfanfare MUS_OBTAIN_ITEM @@ -92,8 +89,7 @@ BattleFrontier_BattleTowerLobby_EventScript_GiveBattlePoints:: msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS call BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 49 - goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge + goto_if_ne VAR_RESULT, 49, BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge msgbox BattleFrontier_BattleTowerLobby_Text_AboutToFace50thTrainer, MSGBOX_DEFAULT BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge:: msgbox BattleFrontier_BattleTowerLobby_Text_LookForwardToAnotherChallenge, MSGBOX_DEFAULT @@ -103,12 +99,10 @@ BattleFrontier_BattleTowerLobby_EventScript_LookForwardToChallenge:: end BattleFrontier_BattleTowerLobby_EventScript_LostChallenge:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak + goto_if_ne VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 0 - goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying + goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying BattleFrontier_BattleTowerLobby_EventScript_CancelWinStreak:: tower_set TOWER_DATA_WIN_STREAK_ACTIVE, FALSE BattleFrontier_BattleTowerLobby_EventScript_LostThanksForPlaying:: @@ -133,8 +127,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: playse SE_SAVE waitse call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle message BattleFrontier_BattleTowerLobby_Text_RecordLastMatch waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE @@ -145,8 +138,7 @@ BattleFrontier_BattleTowerLobby_EventScript_AskSaveBattle:: BattleFrontier_EventScript_SaveBattle:: frontier_savebattle - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_EventScript_BattleSaveFailed + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_EventScript_BattleSaveFailed playse SE_SAVE msgbox BattleFrontier_BattleTowerLobby_Text_BattleRecordedOnPass, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_EndSaveBattle @@ -163,8 +155,7 @@ BattleFrontier_EventScript_GetCantRecordBattle:: BattleFrontier_BattleTowerLobby_EventScript_ResumeChallenge:: lock faceplayer - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_SetBravoTrainerOn + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_SetBravoTrainerOn message BattleFrontier_BattleTowerLobby_Text_WeveBeenWaitingForYou waitmessage message BattleFrontier_BattleTowerLobby_Text_ProgressWillBeSaved @@ -205,8 +196,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -215,8 +205,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterSinglesChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge msgbox BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge @@ -234,8 +223,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeSinglesChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, TRUE goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator @@ -271,8 +259,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_PleaseSelectFourMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -281,8 +268,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterDoublesChallenge:: setvar VAR_0x8005, FRONTIER_DOUBLES_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge msgbox BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge @@ -300,8 +286,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeDoublesChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator @@ -338,8 +323,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -348,8 +332,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterMultisChallenge:: setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge msgbox BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge @@ -367,8 +350,7 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeMultisChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, FALSE goto BattleFrontier_BattleTowerLobby_EventScript_EnterElevator @@ -404,8 +386,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: case FRONTIER_LVL_TENT, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge case MULTI_B_PRESSED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, BattleFrontier_BattleTowerLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT msgbox BattleFrontier_BattleTowerLobby_Text_PleaseSelectTwoMons2, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -414,8 +395,7 @@ BattleFrontier_BattleTowerLobby_EventScript_TryEnterLinkMultisChallenge:: setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge msgbox BattleFrontier_BattleTowerLobby_Text_OkayToSaveBeforeEntering, MSGBOX_YESNO switch VAR_RESULT case NO, BattleFrontier_BattleTowerLobby_EventScript_LoadPartyCancelChallenge @@ -434,12 +414,10 @@ BattleFrontier_BattleTowerLobby_EventScript_SaveBeforeLinkMultisChallenge:: tower_save 0 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelChallengeSaveFailed incrementgamestat GAME_STAT_ENTERED_BATTLE_TOWER specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_TryWirelessLink goto BattleFrontier_BattleTowerLobby_EventScript_TryCableLink end @@ -491,10 +469,8 @@ BattleFrontier_BattleTowerLobby_EventScript_FeelingsWontTell:: end BattleFrontier_BattleTowerLobby_EventScript_CheckFeelings:: - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_SubmittedFeelings + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleTowerLobby_EventScript_SubmittedFeelings end BattleFrontier_BattleTowerLobby_EventScript_CanceledEasyChat:: @@ -611,8 +587,7 @@ BattleFrontier_BattleTowerLobby_EventScript_EnterElevator:: BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: tower_loadlinkopponents delay 1 - compare VAR_RESULT, 6 - goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad + goto_if_ne VAR_RESULT, 6, BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad call BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom clearflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 1, 6 @@ -622,8 +597,7 @@ BattleFrontier_BattleTowerLobby_EventScript_WaitForLinkOpponentLoad:: BattleFrontier_BattleTowerLobby_EventScript_ShowYouToBattleRoom:: call BattleFrontier_BattleTowerLobby_EventScript_BufferModeText - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ShowYouToLinkMultiBattleRoom + goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_ShowYouToLinkMultiBattleRoom msgbox BattleFrontier_BattleTowerLobby_Text_ShowYouToBattleRoom, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator @@ -675,14 +649,10 @@ BattleFrontier_BattleTowerLobby_Movement_UnusedEnterElevator: step_end BattleFrontier_BattleTowerLobby_EventScript_BufferModeText:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextDouble - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextMulti - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_BufferTextDouble + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_BufferTextMulti + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti return BattleFrontier_BattleTowerLobby_EventScript_BufferTextSingle:: @@ -702,14 +672,10 @@ BattleFrontier_BattleTowerLobby_EventScript_BufferTextLinkMulti:: return BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToDoublesAttendant - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToMultisAttendant - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_TalkedToDoublesAttendant + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_TalkedToMultisAttendant + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant return BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant:: @@ -729,14 +695,10 @@ BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant:: return BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordDoubles - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordMultis - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordDoubles + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordMultis + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis return BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordSingles:: @@ -756,14 +718,10 @@ BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoordLinkMultis:: return BattleFrontier_BattleTowerLobby_EventScript_GetPartySize:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetDoublesPartySize - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetMultisPartySize - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_GetLinkMultisPartySize + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerLobby_EventScript_GetDoublesPartySize + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_GetMultisPartySize + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerLobby_EventScript_GetLinkMultisPartySize return BattleFrontier_BattleTowerLobby_EventScript_GetSinglesPartySize:: @@ -793,26 +751,18 @@ BattleFrontier_BattleTowerLobby_EventScript_TryCableLink:: setvar VAR_0x8005, 0 special TryBattleLinkup waitstate - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful - compare VAR_RESULT, LINKUP_SOMEONE_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkSomeoneNotReady - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections - compare VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLinkIncorrectNumberOfPlayers - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq CableClub_EventScript_AbortLinkConnectionError - compare VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BattleFrontier_BattleTowerLobby_EventScript_CableLinkSuccessful + goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, CableClub_EventScript_AbortLinkSomeoneNotReady + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections + goto_if_eq VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS, BattleFrontier_BattleTowerLobby_EventScript_AbortLinkIncorrectNumberOfPlayers + goto_if_eq VAR_RESULT, LINKUP_FAILED, BattleFrontier_BattleTowerLobby_EventScript_CancelChallenge + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, CableClub_EventScript_AbortLinkConnectionError + goto_if_eq VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER, BattleFrontier_BattleTowerLobby_EventScript_AbortLink end BattleFrontier_BattleTowerLobby_EventScript_AbortLinkDifferentSelections:: special CloseLink - compare VAR_0x8005, 3 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendDifferentSelection + goto_if_eq VAR_0x8005, 3, BattleFrontier_BattleTowerLobby_EventScript_FriendDifferentSelection msgbox Text_PlayersMadeDifferentSelections, MSGBOX_DEFAULT release end @@ -832,12 +782,9 @@ BattleFrontier_BattleTowerLobby_EventScript_AbortLinkIncorrectNumberOfPlayers:: BattleFrontier_BattleTowerLobby_EventScript_AbortLink:: special CloseLink - compare VAR_0x8005, 0 - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendChoseDifferentLvlMode - compare VAR_0x8005, 1 - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMon - compare VAR_0x8005, 2 - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMons + call_if_eq VAR_0x8005, 0, BattleFrontier_BattleTowerLobby_EventScript_FriendChoseDifferentLvlMode + call_if_eq VAR_0x8005, 1, BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMon + call_if_eq VAR_0x8005, 2, BattleFrontier_BattleTowerLobby_EventScript_FriendAlsoSelectedMons msgbox BattleFrontier_BattleTowerLobby_Text_ChooseDifferentMonsMatchLvlMode, MSGBOX_DEFAULT release end @@ -891,27 +838,19 @@ BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader:: BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader:: call CableClub_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader - compare VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful + goto_if_eq VAR_RESULT, LINKUP_FAILED, BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BattleFrontier_BattleTowerLobby_EventScript_TryBecomeLeader + goto_if_eq VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER, BattleFrontier_BattleTowerLobby_EventScript_AbortLink release return BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup:: call CableClub_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup - compare VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BattleFrontier_BattleTowerLobby_EventScript_WirelessLinkSuccessful + goto_if_eq VAR_RESULT, LINKUP_FAILED, BattleFrontier_BattleTowerLobby_EventScript_ChooseLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BattleFrontier_BattleTowerLobby_EventScript_TryJoinGroup + goto_if_eq VAR_RESULT, LINKUP_FAILED_BATTLE_TOWER, BattleFrontier_BattleTowerLobby_EventScript_AbortLink release return diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc index 9bfcfddc2ff7..e1cb64dda002 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc @@ -16,17 +16,14 @@ BattleFrontier_BattleTowerMultiBattleRoom_MapScripts:: @ The multi partner is represented by LOCALID_PARTNER, which has the gfx id VAR_OBJ_GFX_ID_E BattleFrontier_BattleTowerMultiBattleRoom_OnTransition: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetLinkPlayerGfx + 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 end BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx:: tower_setpartnergfx checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetPlayerGfxFemale setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_BRENDAN_NORMAL return @@ -56,8 +53,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter + 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 waitmovement 0 @@ -74,8 +70,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter:: applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter applymovement LOCALID_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink + 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 @@ -130,8 +125,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents:: applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant waitmovement 0 - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink + goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink msgbox BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty @@ -142,19 +136,16 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink:: BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RestoreParty:: special LoadPlayerParty frontier_setpartyorder FRONTIER_MULTI_PARTY_SIZE - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReconnectLink + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReconnectLink playfanfare MUS_HEAL waitfanfare special HealPlayerParty BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents:: frontier_get FRONTIER_DATA_BATTLE_NUM call BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge + goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge call BattleFrontier_EventScript_GetCantRecordBattle - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponentsNoRecord multichoice 19, 4, MULTI_GO_ON_RECORD_REST_RETIRE, TRUE switch VAR_RESULT case 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge @@ -230,8 +221,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_PauseChallenge:: end BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSet:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLink + goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyForNextOpponentSetLink copyvar VAR_TEMP_F, VAR_RESULT switch VAR_TEMP_F case 1, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ReadyFor2ndOpponentSet @@ -347,8 +337,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallengeLink:: waitmessage special LinkRetireStatusWithBattleTowerPartner waitstate - compare VAR_RESULT, BATTLE_TOWER_LINKSTAT_CONTINUE - goto_if_ne BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost + goto_if_ne VAR_RESULT, BATTLE_TOWER_LINKSTAT_CONTINUE, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_LinkDelayForMsg end @@ -368,8 +357,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallengeLink:: message BattleFrontier_BattleTowerBattleRoom_Text_CancelYourChallenge waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetireChallengeLink goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents end diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc index c977ecb5f65c..b36d2e6fd3ee 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc @@ -14,17 +14,14 @@ BattleFrontier_BattleTowerMultiCorridor_MapScripts:: @ The multi partner is represented by LOCALID_PARTNER, and has the gfx id VAR_OBJ_GFX_ID_E BattleFrontier_BattleTowerMultiCorridor_OnTransition: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_SetLinkPlayerGfx + 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 end BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx:: tower_setpartnergfx checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleTowerMultiCorridor_EventScript_SetPlayerGfxFemale setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_BRENDAN_NORMAL return @@ -95,14 +92,10 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor:: end BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToBattleRoom:: - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToMultiBattleRoom - compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS - call_if_eq BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToMultiBattleRoom + call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToLinkMultiBattleRoom return BattleFrontier_BattleTowerMultiCorridor_EventScript_WarpToNormalBattleRoom:: diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc index 3beaa38c71dd..b9fc7d554342 100644 --- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc @@ -87,8 +87,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_Attendant:: message BattleFrontier_BattleTowerMultiPartnerRoom_Text_QuitLookingForPartner waitmessage multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner2, MSGBOX_DEFAULT release end @@ -183,10 +182,8 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TalkToPotentialPartner:: waitmessage waitbuttonpress closemessage - compare VAR_FACING, DIR_SOUTH - call_if_ne BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExit - compare VAR_FACING, DIR_SOUTH - call_if_eq BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExitSouth + call_if_ne VAR_FACING, DIR_SOUTH, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExit + call_if_eq VAR_FACING, DIR_SOUTH, BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_PartnerExitSouth removeobject VAR_LAST_TALKED setflag FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER warpsilent MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM, 10, 3 diff --git a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc index bba92ebe40e7..703b1ec900fc 100644 --- a/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc +++ b/data/maps/BattleFrontier_ExchangeServiceCorner/scripts.inc @@ -14,38 +14,30 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ClerkGoodbye:: BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize:: specialvar VAR_TEMP_1, GetFrontierBattlePoints - compare VAR_TEMP_1, VAR_0x8008 - goto_if_ge BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize + goto_if_ge VAR_TEMP_1, VAR_0x8008, BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize msgbox BattleFrontier_ExchangeServiceCorner_Text_DontHaveEnoughPoints, MSGBOX_DEFAULT - compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 - compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 - compare VAR_TEMP_2, EXCHANGE_CORNER_VITAMIN_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_VITAMIN_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem end BattleFrontier_ExchangeServiceCorner_EventScript_TryGivePrize:: - compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor - compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_DECOR2_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor goto BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem end BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveDecor:: checkdecorspace VAR_0x8009 - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor copyvar VAR_0x8004, VAR_0x8008 special TakeFrontierBattlePoints adddecoration VAR_0x8009 special UpdateBattlePointsWindow playse SE_SHOP msgbox BattleFrontier_ExchangeServiceCorner_Text_WellSendItToPC, MSGBOX_DEFAULT - compare VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_DECOR1_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 end @@ -57,16 +49,14 @@ BattleFrontier_ExchangeServiceCorner_EventScript_NoRoomForDecor:: BattleFrontier_ExchangeServiceCorner_EventScript_TryGiveItem:: checkitemspace VAR_0x8009 - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_BagFull + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ExchangeServiceCorner_EventScript_BagFull copyvar VAR_0x8004, VAR_0x8008 special TakeFrontierBattlePoints additem VAR_0x8009 special UpdateBattlePointsWindow playse SE_SHOP msgbox BattleFrontier_ExchangeServiceCorner_Text_HereIsYourPrize, MSGBOX_DEFAULT - compare VAR_TEMP_2, EXCHANGE_CORNER_VITAMIN_CLERK - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_TEMP_2, EXCHANGE_CORNER_VITAMIN_CLERK, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin goto BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem end @@ -107,8 +97,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1:: BattleFrontier_ExchangeServiceCorner_EventScript_KissPoster:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissPoster, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 16 setvar VAR_0x8009, DECOR_KISS_POSTER goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -116,8 +105,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KissPoster:: BattleFrontier_ExchangeServiceCorner_EventScript_KissCushion:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKissCushion, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 32 setvar VAR_0x8009, DECOR_KISS_CUSHION goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -125,8 +113,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KissCushion:: BattleFrontier_ExchangeServiceCorner_EventScript_SmoochumDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmSmoochumDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 32 setvar VAR_0x8009, DECOR_SMOOCHUM_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -134,8 +121,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_SmoochumDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_TogepiDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmTogepiDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 48 setvar VAR_0x8009, DECOR_TOGEPI_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -143,8 +129,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_TogepiDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_MeowthDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmMeowthDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 48 setvar VAR_0x8009, DECOR_MEOWTH_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -152,8 +137,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_MeowthDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_ClefairyDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmClefairyDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 48 setvar VAR_0x8009, DECOR_CLEFAIRY_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -161,8 +145,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ClefairyDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_DittoDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmDittoDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 48 setvar VAR_0x8009, DECOR_DITTO_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -170,8 +153,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_DittoDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_CyndaquilDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCyndaquilDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 80 setvar VAR_0x8009, DECOR_CYNDAQUIL_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -179,8 +161,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_CyndaquilDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_ChikoritaDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmChikoritaDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 80 setvar VAR_0x8009, DECOR_CHIKORITA_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -188,8 +169,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChikoritaDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_TotodileDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmTotodileDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor1 setvar VAR_0x8008, 80 setvar VAR_0x8009, DECOR_TOTODILE_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -221,8 +201,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2:: BattleFrontier_ExchangeServiceCorner_EventScript_LaprasDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmLaprasDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 setvar VAR_0x8008, 128 setvar VAR_0x8009, DECOR_LAPRAS_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -230,8 +209,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_LaprasDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_SnorlaxDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmSnorlaxDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 setvar VAR_0x8008, 128 setvar VAR_0x8009, DECOR_SNORLAX_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -239,8 +217,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_SnorlaxDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_VenusaurDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmVenusaurDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 setvar VAR_0x8008, 256 setvar VAR_0x8009, DECOR_VENUSAUR_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -248,8 +225,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_VenusaurDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_CharizardDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCharizardDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 setvar VAR_0x8008, 256 setvar VAR_0x8009, DECOR_CHARIZARD_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -257,8 +233,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_CharizardDoll:: BattleFrontier_ExchangeServiceCorner_EventScript_BlastoiseDoll:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmBlastoiseDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseDecor2 setvar VAR_0x8008, 256 setvar VAR_0x8009, DECOR_BLASTOISE_DOLL goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -291,8 +266,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin:: BattleFrontier_ExchangeServiceCorner_EventScript_Protein:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmProtein, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_PROTEIN goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -300,8 +274,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Protein:: BattleFrontier_ExchangeServiceCorner_EventScript_Calcium:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCalcium, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_CALCIUM goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -309,8 +282,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Calcium:: BattleFrontier_ExchangeServiceCorner_EventScript_Iron:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmIron, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_IRON goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -318,8 +290,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Iron:: BattleFrontier_ExchangeServiceCorner_EventScript_Zinc:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmZinc, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_ZINC goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -327,8 +298,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Zinc:: BattleFrontier_ExchangeServiceCorner_EventScript_Carbos:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmCarbos, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_CARBOS goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -336,8 +306,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Carbos:: BattleFrontier_ExchangeServiceCorner_EventScript_HPUp:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmHPUp, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseVitamin setvar VAR_0x8008, 1 setvar VAR_0x8009, ITEM_HP_UP goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -373,8 +342,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem:: BattleFrontier_ExchangeServiceCorner_EventScript_Leftovers:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmLeftovers, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 48 setvar VAR_0x8009, ITEM_LEFTOVERS goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -382,8 +350,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Leftovers:: BattleFrontier_ExchangeServiceCorner_EventScript_WhiteHerb:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmWhiteHerb, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 48 setvar VAR_0x8009, ITEM_WHITE_HERB goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -391,8 +358,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_WhiteHerb:: BattleFrontier_ExchangeServiceCorner_EventScript_QuickClaw:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmQuickClaw, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 48 setvar VAR_0x8009, ITEM_QUICK_CLAW goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -400,8 +366,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_QuickClaw:: BattleFrontier_ExchangeServiceCorner_EventScript_MentalHerb:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmMentalHerb, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 48 setvar VAR_0x8009, ITEM_MENTAL_HERB goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -409,8 +374,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_MentalHerb:: BattleFrontier_ExchangeServiceCorner_EventScript_Brightpowder:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmBrightpowder, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 64 setvar VAR_0x8009, ITEM_BRIGHT_POWDER goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -418,8 +382,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_Brightpowder:: BattleFrontier_ExchangeServiceCorner_EventScript_ChoiceBand:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmChoiceBand, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 64 setvar VAR_0x8009, ITEM_CHOICE_BAND goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -427,8 +390,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_ChoiceBand:: BattleFrontier_ExchangeServiceCorner_EventScript_KingsRock:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmKingsRock, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 64 setvar VAR_0x8009, ITEM_KINGS_ROCK goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -436,8 +398,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_KingsRock:: BattleFrontier_ExchangeServiceCorner_EventScript_FocusBand:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmFocusBand, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 64 setvar VAR_0x8009, ITEM_FOCUS_BAND goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize @@ -445,8 +406,7 @@ BattleFrontier_ExchangeServiceCorner_EventScript_FocusBand:: BattleFrontier_ExchangeServiceCorner_EventScript_ScopeLens:: msgbox BattleFrontier_ExchangeServiceCorner_Text_ConfirmScopeLens, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, NO, BattleFrontier_ExchangeServiceCorner_EventScript_ChooseHoldItem setvar VAR_0x8008, 64 setvar VAR_0x8009, ITEM_SCOPE_LENS goto BattleFrontier_ExchangeServiceCorner_EventScript_TryPurchasePrize diff --git a/data/maps/BattleFrontier_Lounge1/scripts.inc b/data/maps/BattleFrontier_Lounge1/scripts.inc index 4447e1032e0d..6aca2b4ced78 100644 --- a/data/maps/BattleFrontier_Lounge1/scripts.inc +++ b/data/maps/BattleFrontier_Lounge1/scripts.inc @@ -14,10 +14,8 @@ BattleFrontier_Lounge1_EventScript_Breeder:: BattleFrontier_Lounge1_EventScript_ChooseMonToShowBreeder:: special ChoosePartyMon waitstate - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_ne BattleFrontier_Lounge1_EventScript_ShowMonToBreeder - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq BattleFrontier_Lounge1_EventScript_CancelMonSelect + goto_if_ne VAR_0x8004, PARTY_NOTHING_CHOSEN, BattleFrontier_Lounge1_EventScript_ShowMonToBreeder + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, BattleFrontier_Lounge1_EventScript_CancelMonSelect end BattleFrontier_Lounge1_EventScript_BreederIntro:: @@ -34,17 +32,12 @@ BattleFrontier_Lounge1_EventScript_AlreadyMetBreeder:: @ VAR_0x8007: IV of the highest IV stat BattleFrontier_Lounge1_EventScript_ShowMonToBreeder:: specialvar VAR_RESULT, ScriptGetPartyMonSpecies - compare VAR_RESULT, SPECIES_EGG - goto_if_eq BattleFrontier_Lounge1_EventScript_ShowEggToBreeder + goto_if_eq VAR_RESULT, SPECIES_EGG, BattleFrontier_Lounge1_EventScript_ShowEggToBreeder special BufferVarsForIVRater - compare VAR_0x8005, 90 @ Average of 15 - goto_if_le BattleFrontier_Lounge1_EventScript_AverageTotalIVs - compare VAR_0x8005, 120 @ Average of 20 - goto_if_le BattleFrontier_Lounge1_EventScript_AboveAverageTotalIVs - compare VAR_0x8005, 150 @ Average of 25 - goto_if_le BattleFrontier_Lounge1_EventScript_HighTotalIVs - compare VAR_0x8005, 151 @ Average of > 25 - goto_if_ge BattleFrontier_Lounge1_EventScript_VeryHighTotalIVs + goto_if_le VAR_0x8005, 90, BattleFrontier_Lounge1_EventScript_AverageTotalIVs @ Average of 15 + goto_if_le VAR_0x8005, 120, BattleFrontier_Lounge1_EventScript_AboveAverageTotalIVs @ Average of 20 + goto_if_le VAR_0x8005, 150, BattleFrontier_Lounge1_EventScript_HighTotalIVs @ Average of 25 + goto_if_ge VAR_0x8005, 151, BattleFrontier_Lounge1_EventScript_VeryHighTotalIVs @ Average of > 25 end BattleFrontier_Lounge1_EventScript_ShowEggToBreeder:: @@ -54,30 +47,20 @@ BattleFrontier_Lounge1_EventScript_ShowEggToBreeder:: @ Comment on the highest IV stat BattleFrontier_Lounge1_EventScript_HighestIVStat:: - compare VAR_0x8006, STAT_HP - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVHP - compare VAR_0x8006, STAT_ATK - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVAtk - compare VAR_0x8006, STAT_DEF - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVDef - compare VAR_0x8006, STAT_SPEED - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVSpeed - compare VAR_0x8006, STAT_SPATK - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVSpAtk - compare VAR_0x8006, STAT_SPDEF - goto_if_eq BattleFrontier_Lounge1_EventScript_HighestIVSpDef + goto_if_eq VAR_0x8006, STAT_HP, BattleFrontier_Lounge1_EventScript_HighestIVHP + goto_if_eq VAR_0x8006, STAT_ATK, BattleFrontier_Lounge1_EventScript_HighestIVAtk + goto_if_eq VAR_0x8006, STAT_DEF, BattleFrontier_Lounge1_EventScript_HighestIVDef + goto_if_eq VAR_0x8006, STAT_SPEED, BattleFrontier_Lounge1_EventScript_HighestIVSpeed + goto_if_eq VAR_0x8006, STAT_SPATK, BattleFrontier_Lounge1_EventScript_HighestIVSpAtk + goto_if_eq VAR_0x8006, STAT_SPDEF, BattleFrontier_Lounge1_EventScript_HighestIVSpDef end @ Comment on the highest IV value BattleFrontier_Lounge1_EventScript_HighestIVValue:: - compare VAR_0x8007, 15 - goto_if_le BattleFrontier_Lounge1_EventScript_HighestIVLow - compare VAR_0x8007, 25 - goto_if_le BattleFrontier_Lounge1_EventScript_HighestIVMid - compare VAR_0x8007, 30 - goto_if_le BattleFrontier_Lounge1_EventScript_HighestIVHigh - compare VAR_0x8007, 31 - goto_if_ge BattleFrontier_Lounge1_EventScript_HighestIVMax + goto_if_le VAR_0x8007, 15, BattleFrontier_Lounge1_EventScript_HighestIVLow + goto_if_le VAR_0x8007, 25, BattleFrontier_Lounge1_EventScript_HighestIVMid + goto_if_le VAR_0x8007, 30, BattleFrontier_Lounge1_EventScript_HighestIVHigh + goto_if_ge VAR_0x8007, 31, BattleFrontier_Lounge1_EventScript_HighestIVMax end BattleFrontier_Lounge1_EventScript_EndBreederComments:: diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc index e3a7fc1721f3..8efc17293663 100644 --- a/data/maps/BattleFrontier_Lounge2/scripts.inc +++ b/data/maps/BattleFrontier_Lounge2/scripts.inc @@ -22,30 +22,18 @@ BattleFrontier_Lounge2_EventScript_AlreadyMetManiac:: end BattleFrontier_Lounge2_EventScript_GiveAdvice:: - compare VAR_FRONTIER_MANIAC_FACILITY, 0 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferSingle - compare VAR_FRONTIER_MANIAC_FACILITY, 1 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferDouble - compare VAR_FRONTIER_MANIAC_FACILITY, 2 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferMulti - compare VAR_FRONTIER_MANIAC_FACILITY, 3 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferMultiLink - compare VAR_FRONTIER_MANIAC_FACILITY, 4 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattleDome - compare VAR_FRONTIER_MANIAC_FACILITY, 5 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattleFactory - compare VAR_FRONTIER_MANIAC_FACILITY, 6 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattlePalace - compare VAR_FRONTIER_MANIAC_FACILITY, 7 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattleArena - compare VAR_FRONTIER_MANIAC_FACILITY, 8 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattlePike - compare VAR_FRONTIER_MANIAC_FACILITY, 9 - call_if_eq BattleFrontier_Lounge2_EventScript_BufferBattlePyramid - compare VAR_FRONTIER_MANIAC_FACILITY, 3 - call_if_le BattleFrontier_Lounge2_EventScript_BattleTowerNews - compare VAR_FRONTIER_MANIAC_FACILITY, 4 - call_if_ge BattleFrontier_Lounge2_EventScript_FacilityNews + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 0, BattleFrontier_Lounge2_EventScript_BufferSingle + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 1, BattleFrontier_Lounge2_EventScript_BufferDouble + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 2, BattleFrontier_Lounge2_EventScript_BufferMulti + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 3, BattleFrontier_Lounge2_EventScript_BufferMultiLink + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 4, BattleFrontier_Lounge2_EventScript_BufferBattleDome + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 5, BattleFrontier_Lounge2_EventScript_BufferBattleFactory + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 6, BattleFrontier_Lounge2_EventScript_BufferBattlePalace + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 7, BattleFrontier_Lounge2_EventScript_BufferBattleArena + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 8, BattleFrontier_Lounge2_EventScript_BufferBattlePike + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 9, BattleFrontier_Lounge2_EventScript_BufferBattlePyramid + call_if_le VAR_FRONTIER_MANIAC_FACILITY, 3, BattleFrontier_Lounge2_EventScript_BattleTowerNews + call_if_ge VAR_FRONTIER_MANIAC_FACILITY, 4, BattleFrontier_Lounge2_EventScript_FacilityNews special ShowFrontierManiacMessage waitmessage waitbuttonpress diff --git a/data/maps/BattleFrontier_Lounge3/scripts.inc b/data/maps/BattleFrontier_Lounge3/scripts.inc index 1c9c5bc3b208..7d9befafb1cc 100644 --- a/data/maps/BattleFrontier_Lounge3/scripts.inc +++ b/data/maps/BattleFrontier_Lounge3/scripts.inc @@ -10,8 +10,7 @@ BattleFrontier_Lounge3_EventScript_Gambler:: faceplayer goto_if_set FLAG_MET_BATTLE_FRONTIER_GAMBLER, BattleFrontier_Lounge3_EventScript_AlreadyMetGambler call BattleFrontier_Lounge3_EventScript_CountSilverSymbols - compare VAR_0x8004, 2 - goto_if_le BattleFrontier_Lounge3_EventScript_NotEnoughSilverSymbols + goto_if_le VAR_0x8004, 2, BattleFrontier_Lounge3_EventScript_NotEnoughSilverSymbols setflag FLAG_MET_BATTLE_FRONTIER_GAMBLER msgbox BattleFrontier_Lounge3_Text_YouLookToughExplainGambling, MSGBOX_DEFAULT goto BattleFrontier_Lounge3_EventScript_AskToEnterChallenge @@ -22,11 +21,9 @@ BattleFrontier_Lounge3_EventScript_AskToEnterChallenge:: waitmessage waitbuttonpress msgbox BattleFrontier_Lounge3_Text_HowAboutEnteringEventForMe, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_Lounge3_EventScript_DeclineChallenge + goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge3_EventScript_DeclineChallenge msgbox BattleFrontier_Lounge3_Text_SpotMeSomeBattlePoints, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_Lounge3_EventScript_DeclineChallenge + goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge3_EventScript_DeclineChallenge message BattleFrontier_Lounge3_Text_HowMuchCanYouSpot waitmessage special ShowBattlePointsWindow @@ -61,8 +58,7 @@ BattleFrontier_Lounge3_EventScript_Bet15:: BattleFrontier_Lounge3_EventScript_TryPlaceBet:: specialvar VAR_TEMP_1, GetFrontierBattlePoints - compare VAR_TEMP_1, VAR_0x8008 - goto_if_ge BattleFrontier_Lounge3_EventScript_PlaceBet + goto_if_ge VAR_TEMP_1, VAR_0x8008, BattleFrontier_Lounge3_EventScript_PlaceBet msgbox BattleFrontier_Lounge3_Text_YouDontHaveEnoughPoints, MSGBOX_DEFAULT message BattleFrontier_Lounge3_Text_HowMuchCanYouSpot waitmessage @@ -109,27 +105,21 @@ BattleFrontier_Lounge3_EventScript_NotEnoughSilverSymbols:: BattleFrontier_Lounge3_EventScript_AlreadyMetGambler:: msgbox BattleFrontier_Lounge3_Text_Oh, MSGBOX_DEFAULT - compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET - goto_if_ge BattleFrontier_Lounge3_EventScript_CheckBetResults + goto_if_ge VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET, BattleFrontier_Lounge3_EventScript_CheckBetResults goto BattleFrontier_Lounge3_EventScript_AskToEnterChallenge end BattleFrontier_Lounge3_EventScript_CheckBetResults:: - compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET - goto_if_eq BattleFrontier_Lounge3_EventScript_ChallengeNotAttempted - compare VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_WON - goto_if_eq BattleFrontier_Lounge3_EventScript_WonChallenge + goto_if_eq VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_PLACED_BET, BattleFrontier_Lounge3_EventScript_ChallengeNotAttempted + goto_if_eq VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_WON, BattleFrontier_Lounge3_EventScript_WonChallenge goto BattleFrontier_Lounge3_EventScript_LostChallenge end BattleFrontier_Lounge3_EventScript_WonChallenge:: msgbox BattleFrontier_Lounge3_Text_HelloChampHeresYourPoints, MSGBOX_DEFAULT - compare VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_5 - call_if_eq BattleFrontier_Lounge3_EventScript_RewardBet5 - compare VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_10 - call_if_eq BattleFrontier_Lounge3_EventScript_RewardBet10 - compare VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_15 - call_if_eq BattleFrontier_Lounge3_EventScript_RewardBet15 + call_if_eq VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_5, BattleFrontier_Lounge3_EventScript_RewardBet5 + call_if_eq VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_10, BattleFrontier_Lounge3_EventScript_RewardBet10 + call_if_eq VAR_FRONTIER_GAMBLER_AMOUNT_BET, FRONTIER_GAMBLER_BET_15, BattleFrontier_Lounge3_EventScript_RewardBet15 msgbox BattleFrontier_Lounge3_Text_ObtainedBattlePoints, MSGBOX_GETPOINTS special GiveFrontierBattlePoints msgbox BattleFrontier_Lounge3_Text_ThinkOfMeForAnotherChallenge, MSGBOX_DEFAULT diff --git a/data/maps/BattleFrontier_Lounge5/scripts.inc b/data/maps/BattleFrontier_Lounge5/scripts.inc index d680156f334e..b81c748e5db2 100644 --- a/data/maps/BattleFrontier_Lounge5/scripts.inc +++ b/data/maps/BattleFrontier_Lounge5/scripts.inc @@ -5,17 +5,14 @@ BattleFrontier_Lounge5_EventScript_NatureGirl:: lock faceplayer msgbox BattleFrontier_Lounge5_Text_NatureGirlGreeting, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown + goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown special ChoosePartyMon waitstate lock faceplayer - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, BattleFrontier_Lounge5_EventScript_NatureGirlNoneShown specialvar VAR_RESULT, ScriptGetPartyMonSpecies - compare VAR_RESULT, SPECIES_EGG - goto_if_eq BattleFrontier_Lounge5_EventScript_NatureGirlEgg + goto_if_eq VAR_RESULT, SPECIES_EGG, BattleFrontier_Lounge5_EventScript_NatureGirlEgg special ShowNatureGirlMessage waitmessage waitbuttonpress diff --git a/data/maps/BattleFrontier_Lounge6/scripts.inc b/data/maps/BattleFrontier_Lounge6/scripts.inc index 65fd940c1abb..0b01b32e3e22 100644 --- a/data/maps/BattleFrontier_Lounge6/scripts.inc +++ b/data/maps/BattleFrontier_Lounge6/scripts.inc @@ -10,18 +10,15 @@ BattleFrontier_Lounge6_EventScript_Trader:: specialvar VAR_RESULT, GetInGameTradeSpeciesInfo copyvar VAR_0x8009, VAR_RESULT msgbox BattleFrontier_Lounge6_Text_WouldYouLikeToTrade, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_Lounge6_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge6_EventScript_DeclineTrade special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq BattleFrontier_Lounge6_EventScript_DeclineTrade + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, BattleFrontier_Lounge6_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies copyvar VAR_0x800B, VAR_RESULT - compare VAR_RESULT, VAR_0x8009 - goto_if_ne BattleFrontier_Lounge6_EventScript_NotRequestedMon + goto_if_ne VAR_RESULT, VAR_0x8009, BattleFrontier_Lounge6_EventScript_NotRequestedMon copyvar VAR_0x8004, VAR_0x8008 copyvar VAR_0x8005, VAR_0x800A special CreateInGameTradePokemon diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc index 7953ec820100..c52df3cafbeb 100644 --- a/data/maps/BattleFrontier_Lounge7/scripts.inc +++ b/data/maps/BattleFrontier_Lounge7/scripts.inc @@ -252,11 +252,9 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: buffernumberstring STR_VAR_2, VAR_0x8008 copyvar VAR_0x8004, VAR_TEMP_C msgbox BattleFrontier_Lounge7_Text_MoveWillBeXBattlePoints, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_Lounge7_EventScript_ChooseNewMove + goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge7_EventScript_ChooseNewMove specialvar VAR_TEMP_1, GetFrontierBattlePoints - compare VAR_TEMP_1, VAR_0x8008 - goto_if_ge BattleFrontier_Lounge7_EventScript_TeachTutorMove + goto_if_ge VAR_TEMP_1, VAR_0x8008, BattleFrontier_Lounge7_EventScript_TeachTutorMove msgbox BattleFrontier_Lounge7_Text_HaventGotEnoughPoints, MSGBOX_DEFAULT goto BattleFrontier_Lounge7_EventScript_ChooseNewMove end @@ -269,8 +267,7 @@ BattleFrontier_Lounge7_EventScript_TeachTutorMove:: special CloseBattleFrontierTutorWindow special ChooseMonForMoveTutor waitstate - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_Lounge7_EventScript_CancelChooseMon + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_Lounge7_EventScript_CancelChooseMon msgbox BattleFrontier_Lounge7_Text_IllTakeBattlePoints, MSGBOX_DEFAULT copyvar VAR_0x8004, VAR_0x8008 special TakeFrontierBattlePoints @@ -278,8 +275,7 @@ BattleFrontier_Lounge7_EventScript_TeachTutorMove:: end BattleFrontier_Lounge7_EventScript_ChooseNewMove:: - compare VAR_TEMP_E, 0 - goto_if_eq BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove + goto_if_eq VAR_TEMP_E, 0, BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove goto BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove end diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc index 9157f0befea6..f34373480642 100644 --- a/data/maps/BattleFrontier_OutsideEast/scripts.inc +++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc @@ -11,8 +11,7 @@ BattleFrontier_OutsideEast_OnResume: BattleFrontier_OutsideEast_EventScript_TryRemoveSudowoodo:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -135,12 +134,9 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo + goto_if_eq VAR_RESULT, B_OUTCOME_WON, BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, BattleFrontier_OutsideEast_EventScript_DefeatedSudowoodo setflag FLAG_DEFEATED_SUDOWOODO release end diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc index f3af2b058140..5ca5cb9fbb5c 100644 --- a/data/maps/BattleFrontier_OutsideWest/scripts.inc +++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc @@ -21,8 +21,7 @@ BattleFrontier_OutsideWest_EventScript_FerryAttendant:: faceplayer msgbox BattleFrontier_OutsideWest_Text_MayISeeYourTicket, MSGBOX_DEFAULT checkitem ITEM_SS_TICKET - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_OutsideWest_EventScript_NoSSTicket + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_OutsideWest_EventScript_NoSSTicket message BattleFrontier_OutsideWest_Text_WhereWouldYouLikeToGo waitmessage goto BattleFrontier_OutsideWest_EventScript_ChooseFerryDestination @@ -44,8 +43,7 @@ BattleFrontier_OutsideWest_EventScript_NoSSTicket:: BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: msgbox BattleFrontier_OutsideWest_Text_SlateportItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination + goto_if_eq VAR_RESULT, NO, BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination msgbox BattleFrontier_OutsideWest_Text_PleaseBoardFerry, MSGBOX_DEFAULT call BattleFrontier_OutsideWest_EventScript_BoardFerry warp MAP_SLATEPORT_CITY_HARBOR, 8, 11 @@ -55,8 +53,7 @@ BattleFrontier_OutsideWest_EventScript_FerryToSlateport:: BattleFrontier_OutsideWest_EventScript_FerryToLilycove:: msgbox BattleFrontier_OutsideWest_Text_LilycoveItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination + goto_if_eq VAR_RESULT, NO, BattleFrontier_OutsideWest_EventScript_ChooseNewFerryDestination msgbox BattleFrontier_OutsideWest_Text_PleaseBoardFerry, MSGBOX_DEFAULT call BattleFrontier_OutsideWest_EventScript_BoardFerry warp MAP_LILYCOVE_CITY_HARBOR, 8, 11 @@ -155,14 +152,10 @@ BattleFrontier_OutsideWest_EventScript_Camper:: lock faceplayer delay 20 - compare VAR_FACING, DIR_NORTH - call_if_eq BattleFrontier_OutsideWest_EventScript_CamperFaceFactory - compare VAR_FACING, DIR_SOUTH - call_if_eq BattleFrontier_OutsideWest_EventScript_CamperAlreadyFacingFactory - compare VAR_FACING, DIR_WEST - call_if_eq BattleFrontier_OutsideWest_EventScript_CamperFaceFactory - compare VAR_FACING, DIR_EAST - call_if_eq BattleFrontier_OutsideWest_EventScript_CamperFaceFactory + call_if_eq VAR_FACING, DIR_NORTH, BattleFrontier_OutsideWest_EventScript_CamperFaceFactory + call_if_eq VAR_FACING, DIR_SOUTH, BattleFrontier_OutsideWest_EventScript_CamperAlreadyFacingFactory + call_if_eq VAR_FACING, DIR_WEST, BattleFrontier_OutsideWest_EventScript_CamperFaceFactory + call_if_eq VAR_FACING, DIR_EAST, BattleFrontier_OutsideWest_EventScript_CamperFaceFactory msgbox BattleFrontier_OutsideWest_Text_WhosRaisingThoseRentalMons, MSGBOX_DEFAULT release end @@ -180,14 +173,10 @@ BattleFrontier_OutsideWest_EventScript_Girl:: faceplayer message BattleFrontier_OutsideWest_Text_ScaredOfPikeBecauseSeviper waitmessage - compare VAR_FACING, DIR_NORTH - call_if_eq BattleFrontier_OutsideWest_EventScript_GirlShudderNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq BattleFrontier_OutsideWest_EventScript_GirlShudderSouth - compare VAR_FACING, DIR_WEST - call_if_eq BattleFrontier_OutsideWest_EventScript_GirlShudderWest - compare VAR_FACING, DIR_EAST - call_if_eq BattleFrontier_OutsideWest_EventScript_GirlShudderEast + call_if_eq VAR_FACING, DIR_NORTH, BattleFrontier_OutsideWest_EventScript_GirlShudderNorth + call_if_eq VAR_FACING, DIR_SOUTH, BattleFrontier_OutsideWest_EventScript_GirlShudderSouth + call_if_eq VAR_FACING, DIR_WEST, BattleFrontier_OutsideWest_EventScript_GirlShudderWest + call_if_eq VAR_FACING, DIR_EAST, BattleFrontier_OutsideWest_EventScript_GirlShudderEast waitbuttonpress release end @@ -237,8 +226,7 @@ BattleFrontier_OutsideWest_EventScript_Woman2:: faceplayer msgbox BattleFrontier_OutsideWest_Text_LetsPlayRockPaperScissors, MSGBOX_DEFAULT random 2 - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_OutsideWest_EventScript_WomanWonRockPaperScissors + goto_if_eq VAR_RESULT, 1, BattleFrontier_OutsideWest_EventScript_WomanWonRockPaperScissors goto BattleFrontier_OutsideWest_EventScript_WomanLostRockPaperScissors end diff --git a/data/maps/BattleFrontier_RankingHall/scripts.inc b/data/maps/BattleFrontier_RankingHall/scripts.inc index a6c62cf86251..915ed98d9f73 100644 --- a/data/maps/BattleFrontier_RankingHall/scripts.inc +++ b/data/maps/BattleFrontier_RankingHall/scripts.inc @@ -86,8 +86,7 @@ BattleFrontier_RankingHall_EventScript_NinjaBoy:: lock faceplayer msgbox BattleFrontier_RankingHall_Text_IsYourNameOnThisList, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BattleFrontier_RankingHall_EventScript_NinjaBoyNameOnList + goto_if_eq VAR_RESULT, YES, BattleFrontier_RankingHall_EventScript_NinjaBoyNameOnList msgbox BattleFrontier_RankingHall_Text_WorkHarderIfYouSawFriendsName, MSGBOX_DEFAULT release end diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc index 9d2bc59474c3..affd05d3492b 100644 --- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc +++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc @@ -35,8 +35,7 @@ BattleFrontier_ScottsHouse_EventScript_CheckSilverSymbols:: goto_if_unset FLAG_SYS_PYRAMID_SILVER, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield msgbox BattleFrontier_ScottsHouse_Text_YouveCollectedAllSilverSymbols, MSGBOX_DEFAULT giveitem ITEM_LANSAT_BERRY - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ScottsHouse_EventScript_BerryPocketFull + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ScottsHouse_EventScript_BerryPocketFull setflag FLAG_COLLECTED_ALL_SILVER_SYMBOLS setflag FLAG_TEMP_4 release @@ -52,8 +51,7 @@ BattleFrontier_ScottsHouse_EventScript_CheckGoldSymbols:: goto_if_unset FLAG_SYS_PYRAMID_GOLD, BattleFrontier_ScottsHouse_EventScript_CheckGiveShield msgbox BattleFrontier_ScottsHouse_Text_YouveCollectedAllGoldSymbols, MSGBOX_DEFAULT giveitem ITEM_STARF_BERRY - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ScottsHouse_EventScript_BerryPocketFull + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ScottsHouse_EventScript_BerryPocketFull setflag FLAG_COLLECTED_ALL_GOLD_SYMBOLS setflag FLAG_TEMP_4 release @@ -71,10 +69,8 @@ BattleFrontier_ScottsHouse_EventScript_GivenBerry:: BattleFrontier_ScottsHouse_EventScript_RandomComment:: random 3 - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_ScottsHouse_EventScript_FrontierBrainComment - compare VAR_RESULT, 2 - goto_if_eq BattleFrontier_ScottsHouse_EventScript_ArtisanCaveComment + goto_if_eq VAR_RESULT, 1, BattleFrontier_ScottsHouse_EventScript_FrontierBrainComment + goto_if_eq VAR_RESULT, 2, BattleFrontier_ScottsHouse_EventScript_ArtisanCaveComment msgbox BattleFrontier_ScottsHouse_Text_WhyIGoSeekingTrainers, MSGBOX_DEFAULT release end @@ -93,20 +89,17 @@ BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 50 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveSilverShield + goto_if_ge VAR_RESULT, 50, BattleFrontier_ScottsHouse_EventScript_GiveSilverShield frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_OPEN tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 50 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveSilverShield + goto_if_ge VAR_RESULT, 50, BattleFrontier_ScottsHouse_EventScript_GiveSilverShield goto BattleFrontier_ScottsHouse_EventScript_RandomComment end BattleFrontier_ScottsHouse_EventScript_GiveSilverShield:: msgbox BattleFrontier_ScottsHouse_Text_Beat50TrainersInARow, MSGBOX_DEFAULT givedecoration DECOR_SILVER_SHIELD - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ScottsHouse_EventScript_NoRoomForShield + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ScottsHouse_EventScript_NoRoomForShield setflag FLAG_RECEIVED_SILVER_SHIELD setflag FLAG_TEMP_3 goto BattleFrontier_ScottsHouse_EventScript_GivenShield @@ -126,20 +119,17 @@ BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50 tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 100 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveGoldShield + goto_if_ge VAR_RESULT, 100, BattleFrontier_ScottsHouse_EventScript_GiveGoldShield frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_OPEN tower_get TOWER_DATA_WIN_STREAK - compare VAR_RESULT, 100 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveGoldShield + goto_if_ge VAR_RESULT, 100, BattleFrontier_ScottsHouse_EventScript_GiveGoldShield goto BattleFrontier_ScottsHouse_EventScript_RandomComment end BattleFrontier_ScottsHouse_EventScript_GiveGoldShield:: msgbox BattleFrontier_ScottsHouse_Text_Beat100TrainersInARow, MSGBOX_DEFAULT givedecoration DECOR_GOLD_SHIELD - compare VAR_RESULT, FALSE - goto_if_eq BattleFrontier_ScottsHouse_EventScript_NoRoomForShield + goto_if_eq VAR_RESULT, FALSE, BattleFrontier_ScottsHouse_EventScript_NoRoomForShield setflag FLAG_RECEIVED_GOLD_SHIELD setflag FLAG_TEMP_3 goto BattleFrontier_ScottsHouse_EventScript_GivenShield @@ -154,24 +144,17 @@ BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier:: msgbox BattleFrontier_ScottsHouse_Text_WelcomeToBattleFrontier, MSGBOX_DEFAULT closemessage delay 30 - compare VAR_FACING, DIR_NORTH - call_if_eq BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth - compare VAR_FACING, DIR_EAST - call_if_eq BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast - compare VAR_FACING, DIR_WEST - call_if_eq BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest + call_if_eq VAR_FACING, DIR_NORTH, BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth + call_if_eq VAR_FACING, DIR_SOUTH, BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth + 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 waitmovement 0 msgbox BattleFrontier_ScottsHouse_Text_HaveThisAsMementoOfOurPathsCrossing, MSGBOX_DEFAULT - compare VAR_SCOTT_STATE, 13 - goto_if_eq BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints - compare VAR_SCOTT_STATE, 9 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_Give3BattlePoints - compare VAR_SCOTT_STATE, 6 - goto_if_ge BattleFrontier_ScottsHouse_EventScript_Give2BattlePoints + goto_if_eq VAR_SCOTT_STATE, 13, BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints + goto_if_ge VAR_SCOTT_STATE, 9, BattleFrontier_ScottsHouse_EventScript_Give3BattlePoints + goto_if_ge VAR_SCOTT_STATE, 6, BattleFrontier_ScottsHouse_EventScript_Give2BattlePoints goto BattleFrontier_ScottsHouse_EventScript_Give1BattlePoint end diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index cd1583b420e3..57d54d6fdc89 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -38,8 +38,7 @@ BirthIsland_Exterior_OnResume: BirthIsland_Exterior_EventScript_TryRemoveDeoxys:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_DEOXYS return @@ -92,12 +91,9 @@ BirthIsland_Exterior_EventScript_Deoxys:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq BirthIsland_Exterior_EventScript_DefeatedDeoxys - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq BirthIsland_Exterior_EventScript_RanFromDeoxys - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq BirthIsland_Exterior_EventScript_RanFromDeoxys + goto_if_eq VAR_RESULT, B_OUTCOME_WON, BirthIsland_Exterior_EventScript_DefeatedDeoxys + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, BirthIsland_Exterior_EventScript_RanFromDeoxys + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, BirthIsland_Exterior_EventScript_RanFromDeoxys setflag FLAG_BATTLED_DEOXYS release end diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc index 8d3fa5b5e414..e91238cbdcae 100644 --- a/data/maps/BirthIsland_Harbor/scripts.inc +++ b/data/maps/BirthIsland_Harbor/scripts.inc @@ -8,8 +8,7 @@ BirthIsland_Harbor_EventScript_Sailor:: lock faceplayer msgbox BirthIsland_Harbor_Text_SailorReturn, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq BirthIsland_Harbor_EventScript_AsYouLike + goto_if_eq VAR_RESULT, NO, BirthIsland_Harbor_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown diff --git a/data/maps/ContestHall/scripts.inc b/data/maps/ContestHall/scripts.inc index 3dd633f8f7f0..7ca6a57f69d7 100644 --- a/data/maps/ContestHall/scripts.inc +++ b/data/maps/ContestHall/scripts.inc @@ -19,16 +19,11 @@ ContestHall_OnTransition: ContestHall_EventScript_ReadyContestMusic:: call ContestHall_EventScript_TryWaitForLink special GetContestMultiplayerId - compare VAR_RESULT, 0 - call_if_eq ContestHall_EventScript_SaveContestMusicPlayer1 - compare VAR_RESULT, 1 - call_if_eq ContestHall_EventScript_SaveContestMusicPlayer2 - compare VAR_RESULT, 2 - call_if_eq ContestHall_EventScript_SaveContestMusicPlayer3 - compare VAR_RESULT, 3 - call_if_eq ContestHall_EventScript_SaveContestMusicPlayer4 - compare VAR_RESULT, 4 - call_if_eq ContestHall_EventScript_SaveContestMusic + call_if_eq VAR_RESULT, 0, ContestHall_EventScript_SaveContestMusicPlayer1 + call_if_eq VAR_RESULT, 1, ContestHall_EventScript_SaveContestMusicPlayer2 + call_if_eq VAR_RESULT, 2, ContestHall_EventScript_SaveContestMusicPlayer3 + call_if_eq VAR_RESULT, 3, ContestHall_EventScript_SaveContestMusicPlayer4 + call_if_eq VAR_RESULT, 4, ContestHall_EventScript_SaveContestMusic return ContestHall_EventScript_SaveContestMusicPlayer1:: @@ -52,8 +47,7 @@ ContestHall_EventScript_SaveContestMusic:: return ContestHall_OnResume: - compare VAR_TEMP_9, 1 - call_if_eq ContestHall_EventScript_ReShowAudience + call_if_eq VAR_TEMP_9, 1, ContestHall_EventScript_ReShowAudience end ContestHall_EventScript_ReShowAudience:: @@ -84,8 +78,7 @@ ContestHall_EventScript_SetContestObjects:: ContestHall_EventScript_AddRandomAudienceMembers:: call ContestHall_EventScript_GetRandomAudienceGfxId call ContestHall_EventScript_SetRandomAudienceGfx - compare VAR_TEMP_0, 8 - goto_if_lt ContestHall_EventScript_AddRandomAudienceMembers + goto_if_lt VAR_TEMP_0, 8, ContestHall_EventScript_AddRandomAudienceMembers return ContestHall_EventScript_SetRandomAudienceGfx:: @@ -303,8 +296,7 @@ ContestHall_EventScript_RandomAudienceScientist1:: ContestHall_EventScript_CreateAudience:: specialvar VAR_RESULT, IsWirelessContest - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_CreateWirelessContestAudience + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_CreateWirelessContestAudience switch VAR_CONTEST_TYPE case CONTEST_TYPE_NPC_NORMAL, ContestHall_EventScript_CreateNormalContestAudience case CONTEST_TYPE_NPC_SUPER, ContestHall_EventScript_CreateSuperContestAudience @@ -444,10 +436,8 @@ ContestHall_EventScript_SetExitWarpLinkContest:: LilycoveCity_ContestLobby_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan - compare VAR_RESULT, FEMALE - goto_if_eq LilycoveCity_ContestLobby_EventScript_SetPlayerGfxMay + goto_if_eq VAR_RESULT, MALE, LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan + goto_if_eq VAR_RESULT, FEMALE, LilycoveCity_ContestLobby_EventScript_SetPlayerGfxMay return LilycoveCity_ContestLobby_EventScript_SetPlayerGfxBrendan:: diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index 0e7a3c28145c..2aaa61ebb932 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -10,8 +10,7 @@ DesertRuins_OnResume: DesertRuins_EventScript_TryRemoveRegirock:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -68,12 +67,9 @@ DesertRuins_EventScript_Regirock:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq DesertRuins_EventScript_DefeatedRegirock - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq DesertRuins_EventScript_RanFromRegirock - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq DesertRuins_EventScript_RanFromRegirock + goto_if_eq VAR_RESULT, B_OUTCOME_WON, DesertRuins_EventScript_DefeatedRegirock + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, DesertRuins_EventScript_RanFromRegirock + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, DesertRuins_EventScript_RanFromRegirock setflag FLAG_DEFEATED_REGIROCK release end diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc index ca6e8225073e..1250c2d7670d 100644 --- a/data/maps/DewfordTown/scripts.inc +++ b/data/maps/DewfordTown/scripts.inc @@ -54,8 +54,7 @@ DewfordTown_EventScript_CancelSailSelect:: DewfordTown_EventScript_ReturnToPetalburgPrompt:: msgbox DewfordTown_Text_SetSailBackToPetalburg, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq DewfordTown_EventScript_SailBackToPetalburg + goto_if_eq VAR_RESULT, YES, DewfordTown_EventScript_SailBackToPetalburg msgbox DewfordTown_Text_GoDeliverIllBeWaiting, MSGBOX_DEFAULT release end @@ -87,10 +86,8 @@ DewfordTown_EventScript_OldRodFisherman:: faceplayer goto_if_set FLAG_RECEIVED_OLD_ROD, DewfordTown_EventScript_HowsFishing msgbox DewfordTown_Text_GettingItchToFish, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq DewfordTown_EventScript_GiveOldRod - compare VAR_RESULT, NO - goto_if_eq DewfordTown_EventScript_NotGettingItchToFish + goto_if_eq VAR_RESULT, YES, DewfordTown_EventScript_GiveOldRod + goto_if_eq VAR_RESULT, NO, DewfordTown_EventScript_NotGettingItchToFish end DewfordTown_EventScript_GiveOldRod:: @@ -110,10 +107,8 @@ DewfordTown_EventScript_HowsFishing:: message DewfordTown_Text_HowsYourFishing waitmessage multichoice 20, 8, MULTI_HOWS_FISHING, TRUE - compare VAR_RESULT, 0 - goto_if_eq DewfordTown_EventScript_FishingExcellent - compare VAR_RESULT, 1 - goto_if_eq DewfordTown_EventScript_FishingNotSoGood + goto_if_eq VAR_RESULT, 0, DewfordTown_EventScript_FishingExcellent + goto_if_eq VAR_RESULT, 1, DewfordTown_EventScript_FishingNotSoGood end DewfordTown_EventScript_FishingExcellent:: @@ -607,10 +602,8 @@ DewfordTown_EventScript_TrendyPhraseBoy:: faceplayer call Common_EventScript_BufferTrendyPhrase msgbox DewfordTown_Text_XIsTheBiggestHappeningThingRight, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq DewfordTown_EventScript_ConfirmTrendyPhrase - compare VAR_RESULT, NO - goto_if_eq DewfordTown_EventScript_RejectTrendyPhrase + goto_if_eq VAR_RESULT, YES, DewfordTown_EventScript_ConfirmTrendyPhrase + goto_if_eq VAR_RESULT, NO, DewfordTown_EventScript_RejectTrendyPhrase end DewfordTown_EventScript_ConfirmTrendyPhrase:: @@ -624,16 +617,13 @@ DewfordTown_EventScript_RejectTrendyPhrase:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, TRUE - goto_if_eq DewfordTown_EventScript_GiveNewTrendyPhrase - compare VAR_RESULT, FALSE - goto_if_eq DewfordTown_EventScript_CancelNewTrendyPhrase + goto_if_eq VAR_RESULT, TRUE, DewfordTown_EventScript_GiveNewTrendyPhrase + goto_if_eq VAR_RESULT, FALSE, DewfordTown_EventScript_CancelNewTrendyPhrase end DewfordTown_EventScript_GiveNewTrendyPhrase:: incrementgamestat GAME_STAT_STARTED_TRENDS - compare VAR_0x8004, FALSE - goto_if_eq DewfordTown_EventScript_PhraseNotTrendyEnough + goto_if_eq VAR_0x8004, FALSE, DewfordTown_EventScript_PhraseNotTrendyEnough msgbox DewfordTown_Text_OfCourseIKnowAboutThat, MSGBOX_DEFAULT release end diff --git a/data/maps/DewfordTown_Gym/scripts.inc b/data/maps/DewfordTown_Gym/scripts.inc index 355ca15f4dc3..81474af7261c 100644 --- a/data/maps/DewfordTown_Gym/scripts.inc +++ b/data/maps/DewfordTown_Gym/scripts.inc @@ -10,18 +10,12 @@ DewfordTown_Gym_EventScript_SetFlashLevel:: goto_if_defeated TRAINER_BRAWLY_1, DewfordTown_Gym_EventScript_SetLightsOn call DewfordTown_Gym_EventScript_CountTrainersDefeated copyvar VAR_0x8001, VAR_0x8000 - compare VAR_0x8000, 0 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel7 - compare VAR_0x8000, 1 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel6 - compare VAR_0x8000, 2 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel5 - compare VAR_0x8000, 3 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel4 - compare VAR_0x8000, 4 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel3 - compare VAR_0x8000, 5 - goto_if_eq DewfordTown_Gym_EventScript_SetFlashLevel2 + goto_if_eq VAR_0x8000, 0, DewfordTown_Gym_EventScript_SetFlashLevel7 + goto_if_eq VAR_0x8000, 1, DewfordTown_Gym_EventScript_SetFlashLevel6 + goto_if_eq VAR_0x8000, 2, DewfordTown_Gym_EventScript_SetFlashLevel5 + goto_if_eq VAR_0x8000, 3, DewfordTown_Gym_EventScript_SetFlashLevel4 + goto_if_eq VAR_0x8000, 4, DewfordTown_Gym_EventScript_SetFlashLevel3 + goto_if_eq VAR_0x8000, 5, DewfordTown_Gym_EventScript_SetFlashLevel2 goto DewfordTown_Gym_EventScript_SetFlashLevel1 DewfordTown_Gym_EventScript_SetLightsOn:: @@ -61,21 +55,14 @@ DewfordTown_Gym_EventScript_SetFlashLevel7:: DewfordTown_Gym_EventScript_BrightenRoom:: call DewfordTown_Gym_EventScript_CountTrainersDefeated nop1 - compare VAR_0x8000, VAR_0x8001 - goto_if_eq DewfordTown_Gym_EventScript_NoLightChange + goto_if_eq VAR_0x8000, VAR_0x8001, DewfordTown_Gym_EventScript_NoLightChange copyvar VAR_0x8001, VAR_0x8000 - compare VAR_0x8000, 1 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash1Trainer - compare VAR_0x8000, 2 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash2Trainers - compare VAR_0x8000, 3 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash3Trainers - compare VAR_0x8000, 4 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash4Trainers - compare VAR_0x8000, 5 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash5Trainers - compare VAR_0x8000, 6 - goto_if_eq DewfordTown_Gym_EventScript_AnimateFlash6Trainers + goto_if_eq VAR_0x8000, 1, DewfordTown_Gym_EventScript_AnimateFlash1Trainer + goto_if_eq VAR_0x8000, 2, DewfordTown_Gym_EventScript_AnimateFlash2Trainers + goto_if_eq VAR_0x8000, 3, DewfordTown_Gym_EventScript_AnimateFlash3Trainers + goto_if_eq VAR_0x8000, 4, DewfordTown_Gym_EventScript_AnimateFlash4Trainers + goto_if_eq VAR_0x8000, 5, DewfordTown_Gym_EventScript_AnimateFlash5Trainers + goto_if_eq VAR_0x8000, 6, DewfordTown_Gym_EventScript_AnimateFlash6Trainers DewfordTown_Gym_EventScript_NoLightChange:: return @@ -148,8 +135,7 @@ DewfordTown_Gym_EventScript_StopCountingTrainers:: DewfordTown_Gym_EventScript_Brawly:: trainerbattle_single TRAINER_BRAWLY_1, DewfordTown_Gym_Text_BrawlyIntro, DewfordTown_Gym_Text_BrawlyDefeat, DewfordTown_Gym_EventScript_BrawlyDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq DewfordTown_Gym_EventScript_BrawlyRematch + goto_if_eq VAR_RESULT, TRUE, DewfordTown_Gym_EventScript_BrawlyRematch goto_if_unset FLAG_RECEIVED_TM08, DewfordTown_Gym_EventScript_GiveBulkUp2 msgbox DewfordTown_Gym_Text_BrawlyPostBattle, MSGBOX_DEFAULT release @@ -164,8 +150,7 @@ DewfordTown_Gym_EventScript_BrawlyDefeated:: setflag FLAG_DEFEATED_DEWFORD_GYM setflag FLAG_BADGE02_GET addvar VAR_PETALBURG_GYM_STATE, 1 - compare VAR_PETALBURG_GYM_STATE, 6 - call_if_eq Common_EventScript_ReadyPetalburgGymForBattle + call_if_eq VAR_PETALBURG_GYM_STATE, 6, Common_EventScript_ReadyPetalburgGymForBattle setvar VAR_0x8008, 2 call Common_EventScript_SetGymTrainers call DewfordTown_Gym_EventScript_GiveBulkUp @@ -184,16 +169,14 @@ DewfordTown_Gym_EventScript_BrawlyDefeated:: DewfordTown_Gym_EventScript_GiveBulkUp:: giveitem ITEM_TM08 - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_BagIsFull msgbox DewfordTown_Gym_Text_ExplainBulkUp, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM08 return DewfordTown_Gym_EventScript_GiveBulkUp2: giveitem ITEM_TM08 - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull msgbox DewfordTown_Gym_Text_ExplainBulkUp, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM08 release diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc index 9d8392ff162a..6249a7fac5ce 100644 --- a/data/maps/DewfordTown_Hall/scripts.inc +++ b/data/maps/DewfordTown_Hall/scripts.inc @@ -11,8 +11,7 @@ DewfordTown_Hall_EventScript_Girl:: faceplayer call Common_EventScript_BufferTrendyPhrase special IsTrendyPhraseBoring - compare VAR_RESULT, TRUE - goto_if_eq DewfordTown_Hall_EventScript_GirlBoredOfTrend + goto_if_eq VAR_RESULT, TRUE, DewfordTown_Hall_EventScript_GirlBoredOfTrend msgbox DewfordTown_Hall_Text_CantImagineLifeWithoutTrend, MSGBOX_DEFAULT release end @@ -36,10 +35,8 @@ DewfordTown_Hall_EventScript_Man:: call Common_EventScript_BufferTrendyPhrase special BufferDeepLinkPhrase msgbox DewfordTown_Hall_Text_DeepLinkBetweenXAndY, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq DewfordTown_Hall_EventScript_ConfirmTrendLink - compare VAR_RESULT, NO - goto_if_eq DewfordTown_Hall_EventScript_RejectTrendLink + goto_if_eq VAR_RESULT, YES, DewfordTown_Hall_EventScript_ConfirmTrendLink + goto_if_eq VAR_RESULT, NO, DewfordTown_Hall_EventScript_RejectTrendLink end DewfordTown_Hall_EventScript_ConfirmTrendLink:: @@ -196,15 +193,12 @@ DewfordTown_Hall_EventScript_DontMovePlayer1:: DewfordTown_Hall_EventScript_DebateReact1:: applymovement LOCALID_PSYCHIC_M, DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft waitmovement 0 - compare VAR_0x8008, 0 - goto_if_eq DewfordTown_Hall_EventScript_PlayerReactWest - compare VAR_0x8008, 1 - goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer2 + goto_if_eq VAR_0x8008, 0, DewfordTown_Hall_EventScript_PlayerReactWest + goto_if_eq VAR_0x8008, 1, DewfordTown_Hall_EventScript_DontMovePlayer2 end DewfordTown_Hall_EventScript_PlayerReactWest:: - compare VAR_FACING, DIR_EAST - goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 + goto_if_eq VAR_FACING, DIR_EAST, DewfordTown_Hall_EventScript_DontMovePlayer1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 return @@ -215,17 +209,13 @@ DewfordTown_Hall_EventScript_DontMovePlayer2:: DewfordTown_Hall_EventScript_DebateReact2:: applymovement LOCALID_SCHOOL_KID_M, DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight waitmovement 0 - compare VAR_0x8008, 0 - goto_if_eq DewfordTown_Hall_EventScript_PlayerReactNorthSouth - compare VAR_0x8008, 1 - goto_if_eq DewfordTown_Hall_EventScript_PlayerReactEast + goto_if_eq VAR_0x8008, 0, DewfordTown_Hall_EventScript_PlayerReactNorthSouth + goto_if_eq VAR_0x8008, 1, DewfordTown_Hall_EventScript_PlayerReactEast end DewfordTown_Hall_EventScript_PlayerReactNorthSouth:: - compare VAR_FACING, DIR_NORTH - call_if_eq DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp - compare VAR_FACING, DIR_SOUTH - call_if_eq DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown + call_if_eq VAR_FACING, DIR_NORTH, DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp + call_if_eq VAR_FACING, DIR_SOUTH, DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown return DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp:: @@ -239,8 +229,7 @@ DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown:: return DewfordTown_Hall_EventScript_PlayerReactEast:: - compare VAR_FACING, DIR_WEST - goto_if_eq DewfordTown_Hall_EventScript_DontMovePlayer1 + goto_if_eq VAR_FACING, DIR_WEST, DewfordTown_Hall_EventScript_DontMovePlayer1 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 return @@ -260,8 +249,7 @@ DewfordTown_Hall_EventScript_SludgeBombMan:: goto_if_set FLAG_RECEIVED_TM36, DewfordTown_Hall_EventScript_ReceivedSludgeBomb msgbox DewfordTown_Hall_Text_GiveYouSludgeBomb, MSGBOX_DEFAULT giveitem ITEM_TM36 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM36 release end diff --git a/data/maps/DewfordTown_House2/scripts.inc b/data/maps/DewfordTown_House2/scripts.inc index ae173f151c3a..cb68664aaf69 100644 --- a/data/maps/DewfordTown_House2/scripts.inc +++ b/data/maps/DewfordTown_House2/scripts.inc @@ -7,8 +7,7 @@ DewfordTown_House2_EventScript_Man:: goto_if_set FLAG_RECEIVED_SILK_SCARF, DewfordTown_House2_EventScript_ExplainSilkScarf msgbox DewfordTown_House2_Text_WantYouToHaveSilkScarf, MSGBOX_DEFAULT giveitem ITEM_SILK_SCARF - compare VAR_RESULT, FALSE - goto_if_eq DewfordTown_House2_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, DewfordTown_House2_EventScript_NoRoomForScarf setflag FLAG_RECEIVED_SILK_SCARF release end diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index d33c57df86e5..103942280894 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -57,17 +57,13 @@ EverGrandeCity_ChampionsRoom_EventScript_Defeated:: closemessage playse SE_DOOR checkplayergender - compare VAR_RESULT, MALE - call_if_eq EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - call_if_eq EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic + call_if_eq VAR_RESULT, MALE, EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic + call_if_eq VAR_RESULT, FEMALE, EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic addobject LOCALID_RIVAL call EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer checkplayergender - compare VAR_RESULT, MALE - goto_if_eq EverGrandeCity_ChampionsRoom_EventScript_MayAdvice - compare VAR_RESULT, FEMALE - goto_if_eq EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice + goto_if_eq VAR_RESULT, MALE, EverGrandeCity_ChampionsRoom_EventScript_MayAdvice + goto_if_eq VAR_RESULT, FEMALE, EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice end EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic:: @@ -132,10 +128,8 @@ EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF:: waitmovement 0 msgbox EverGrandeCity_ChampionsRoom_Text_WallaceWaitOutside, MSGBOX_DEFAULT checkplayergender - compare VAR_RESULT, MALE - call_if_eq EverGrandeCity_ChampionsRoom_EventScript_MayCongratulations - compare VAR_RESULT, FEMALE - call_if_eq EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations + 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 diff --git a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc index 75b16e775055..80b1f568c837 100644 --- a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc @@ -26,8 +26,7 @@ EverGrandeCity_DrakesRoom_EventScript_WalkInCloseDoor:: EverGrandeCity_DrakesRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_ResetAdvanceToNextRoom - compare VAR_ELITE_4_STATE, 4 - call_if_eq EverGrandeCity_DrakesRoom_EventScript_CloseDoor + call_if_eq VAR_ELITE_4_STATE, 4, EverGrandeCity_DrakesRoom_EventScript_CloseDoor end EverGrandeCity_DrakesRoom_EventScript_ResetAdvanceToNextRoom:: diff --git a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc index 59f4440c458d..b2d556448c82 100644 --- a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc +++ b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc @@ -25,8 +25,7 @@ EverGrandeCity_GlaciasRoom_EventScript_WalkInCloseDoor:: EverGrandeCity_GlaciasRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_ResetAdvanceToNextRoom - compare VAR_ELITE_4_STATE, 3 - call_if_eq EverGrandeCity_GlaciasRoom_EventScript_CloseDoor + call_if_eq VAR_ELITE_4_STATE, 3, EverGrandeCity_GlaciasRoom_EventScript_CloseDoor end EverGrandeCity_GlaciasRoom_EventScript_ResetAdvanceToNextRoom:: diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc index b494408f1361..92b01af9700a 100644 --- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc +++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc @@ -46,10 +46,8 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: setvar VAR_TEMP_1, 1 call EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags checkplayergender - compare VAR_RESULT, MALE - goto_if_eq EverGrandeCity_HallOfFame_EventScript_GameClearMale - compare VAR_RESULT, FEMALE - goto_if_eq EverGrandeCity_HallOfFame_EventScript_GameClearFemale + goto_if_eq VAR_RESULT, MALE, EverGrandeCity_HallOfFame_EventScript_GameClearMale + goto_if_eq VAR_RESULT, FEMALE, EverGrandeCity_HallOfFame_EventScript_GameClearFemale end EverGrandeCity_HallOfFame_EventScript_GameClearMale:: diff --git a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc index b64f5145a008..ed272eb90198 100644 --- a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc +++ b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc @@ -25,8 +25,7 @@ EverGrandeCity_PhoebesRoom_EventScript_WalkInCloseDoor:: EverGrandeCity_PhoebesRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_ResetAdvanceToNextRoom - compare VAR_ELITE_4_STATE, 2 - call_if_eq EverGrandeCity_PhoebesRoom_EventScript_CloseDoor + call_if_eq VAR_ELITE_4_STATE, 2, EverGrandeCity_PhoebesRoom_EventScript_CloseDoor end EverGrandeCity_PhoebesRoom_EventScript_ResetAdvanceToNextRoom:: diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc index 1244b82fd258..ec45732e8c31 100644 --- a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc @@ -37,12 +37,9 @@ EverGrandeCity_PokemonCenter_1F_EventScript_Scott:: faceplayer msgbox EverGrandeCity_PokemonCenter_1F_Text_ScottHappyForYou, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq EverGrandeCity_PokemonCenter_1F_EventScript_ScottExitNorth - compare VAR_FACING, DIR_EAST - call_if_eq EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit - compare VAR_FACING, DIR_WEST - call_if_eq EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit + call_if_eq VAR_FACING, DIR_NORTH, EverGrandeCity_PokemonCenter_1F_EventScript_ScottExitNorth + call_if_eq VAR_FACING, DIR_EAST, EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit + call_if_eq VAR_FACING, DIR_WEST, EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit addvar VAR_SCOTT_STATE, 1 setflag FLAG_MET_SCOTT_IN_EVERGRANDE playse SE_EXIT diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc index ac7d4f9b453e..c13e71697586 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc +++ b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc @@ -55,10 +55,8 @@ EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard:: lockall goto_if_set FLAG_ENTERED_ELITE_FOUR, EverGrandeCity_PokemonLeague_1F_EventScript_GoForth getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_TEMP_0, 11 - call_if_ge EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromRight - compare VAR_TEMP_0, 8 - call_if_le EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromLeft + call_if_ge VAR_TEMP_0, 11, EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromRight + call_if_le VAR_TEMP_0, 8, EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromLeft message EverGrandeCity_PokemonLeague_1F_Text_MustHaveAllGymBadges waitmessage delay 120 diff --git a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc index 3444d078b166..03b4a4e03b49 100644 --- a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc +++ b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc @@ -12,8 +12,7 @@ EverGrandeCity_SidneysRoom_OnTransition: EverGrandeCity_SidneysRoom_OnLoad: call_if_set FLAG_DEFEATED_ELITE_4_SIDNEY, EverGrandeCity_SidneysRoom_EventScript_ResetAdvanceToNextRoom - compare VAR_ELITE_4_STATE, 1 - call_if_eq EverGrandeCity_SidneysRoom_EventScript_CloseDoor + call_if_eq VAR_ELITE_4_STATE, 1, EverGrandeCity_SidneysRoom_EventScript_CloseDoor end EverGrandeCity_SidneysRoom_EventScript_ResetAdvanceToNextRoom:: diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc index 7fc90e4e160b..707995daeb13 100644 --- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc @@ -18,10 +18,8 @@ FallarborTown_BattleTentBattleRoom_OnTransition: FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @@ -44,8 +42,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge + goto_if_ne VAR_RESULT, 0, FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT @@ -103,10 +100,8 @@ FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: special HealPlayerParty FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 1, FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge @@ -147,8 +142,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ Unreachable code block? The flow into the next block also doesnt make sense arena_get ARENA_DATA_WIN_STREAK - compare VAR_RESULT, MAX_STREAK - goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum + goto_if_eq VAR_RESULT, MAX_STREAK, FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum addvar VAR_RESULT, 1 arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT @ See above diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc index d6826f037ffe..1bcd04559c8d 100644 --- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc +++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc @@ -106,8 +106,7 @@ FallarborTown_BattleTentLobby_EventScript_Attendant:: lock faceplayer fallarbortent_getprize - compare VAR_RESULT, ITEM_NONE - goto_if_ne FallarborTown_BattleTentLobby_EventScript_PrizeWaiting + goto_if_ne VAR_RESULT, ITEM_NONE, FallarborTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty msgbox FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @@ -125,8 +124,7 @@ FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT msgbox FallarborTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -134,8 +132,7 @@ FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge msgbox FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge @@ -153,8 +150,7 @@ FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE diff --git a/data/maps/FallarborTown_CozmosHouse/scripts.inc b/data/maps/FallarborTown_CozmosHouse/scripts.inc index 3e5d02f2d3e6..61f297e69d3b 100644 --- a/data/maps/FallarborTown_CozmosHouse/scripts.inc +++ b/data/maps/FallarborTown_CozmosHouse/scripts.inc @@ -6,8 +6,7 @@ FallarborTown_CozmosHouse_EventScript_ProfCozmo:: faceplayer goto_if_set FLAG_RECEIVED_TM27, FallarborTown_CozmosHouse_EventScript_GaveMeteorite checkitem ITEM_METEORITE - compare VAR_RESULT, TRUE - goto_if_eq FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite + goto_if_eq VAR_RESULT, TRUE, FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite msgbox FallarborTown_CozmosHouse_Text_MeteoriteWillNeverBeMineNow, MSGBOX_DEFAULT release end @@ -15,12 +14,10 @@ FallarborTown_CozmosHouse_EventScript_ProfCozmo:: FallarborTown_CozmosHouse_EventScript_PlayerHasMeteorite:: call_if_unset FLAG_TEMP_2, FallarborTown_CozmosHouse_EventScript_NoticeMeteorite call_if_set FLAG_TEMP_2, FallarborTown_CozmosHouse_EventScript_AskForMeteorite - compare VAR_RESULT, NO - goto_if_eq FallarborTown_CozmosHouse_EventScript_DeclineGiveMeteorite + goto_if_eq VAR_RESULT, NO, FallarborTown_CozmosHouse_EventScript_DeclineGiveMeteorite msgbox FallarborTown_CozmosHouse_Text_PleaseUseThisTM, MSGBOX_DEFAULT giveitem ITEM_TM27 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setvar VAR_0x8004, ITEM_METEORITE call Common_EventScript_PlayerHandedOverTheItem setflag FLAG_RECEIVED_TM27 diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc index 096f13877145..f17754328da2 100644 --- a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc +++ b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc @@ -15,8 +15,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_MoveRelearner:: FallarborTown_MoveRelearnersHouse_EventScript_AskTeachMove:: checkitem ITEM_HEART_SCALE - compare VAR_RESULT, FALSE - goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale + goto_if_eq VAR_RESULT, FALSE, FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale msgbox FallarborTown_MoveRelearnersHouse_Text_ThatsAHeartScaleWantMeToTeachMove, MSGBOX_YESNO switch VAR_RESULT case NO, FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale @@ -27,13 +26,10 @@ FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon:: msgbox FallarborTown_MoveRelearnersHouse_Text_TutorWhichMon, MSGBOX_DEFAULT special ChooseMonForMoveRelearner waitstate - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale special IsSelectedMonEgg - compare VAR_RESULT, TRUE - goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_CantTeachEgg - compare VAR_0x8005, 0 - goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_NoMoveToTeachMon + goto_if_eq VAR_RESULT, TRUE, FallarborTown_MoveRelearnersHouse_EventScript_CantTeachEgg + goto_if_eq VAR_0x8005, 0, FallarborTown_MoveRelearnersHouse_EventScript_NoMoveToTeachMon goto FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove end @@ -41,8 +37,7 @@ FallarborTown_MoveRelearnersHouse_EventScript_ChooseMove:: msgbox FallarborTown_MoveRelearnersHouse_Text_TeachWhichMove, MSGBOX_DEFAULT special TeachMoveRelearnerMove waitstate - compare VAR_0x8004, 0 - goto_if_eq FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon + goto_if_eq VAR_0x8004, 0, FallarborTown_MoveRelearnersHouse_EventScript_ChooseMon msgbox FallarborTown_MoveRelearnersHouse_Text_HandedOverHeartScale, MSGBOX_DEFAULT removeitem ITEM_HEART_SCALE goto FallarborTown_MoveRelearnersHouse_EventScript_ComeBackWithHeartScale diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc index 2f4db2651c57..504b0dc6a60f 100644 --- a/data/maps/FarawayIsland_Entrance/scripts.inc +++ b/data/maps/FarawayIsland_Entrance/scripts.inc @@ -23,8 +23,7 @@ FarawayIsland_Entrance_EventScript_Sailor:: lock faceplayer msgbox FarawayIsland_Entrance_Text_SailorReturn, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq FarawayIsland_Entrance_EventScript_AsYouLike + goto_if_eq VAR_RESULT, NO, FarawayIsland_Entrance_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index e35825be738b..983b4709a2c3 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -13,14 +13,10 @@ FarawayIsland_Interior_OnReturnToField: FarawayIsland_Interior_EventScript_TrySetMewAboveGrass:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass - compare VAR_RESULT, B_OUTCOME_MON_TELEPORTED - goto_if_eq FarawayIsland_Interior_EventScript_SetMewAboveGrass + goto_if_eq VAR_RESULT, B_OUTCOME_WON, FarawayIsland_Interior_EventScript_SetMewAboveGrass + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, FarawayIsland_Interior_EventScript_SetMewAboveGrass + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, FarawayIsland_Interior_EventScript_SetMewAboveGrass + goto_if_eq VAR_RESULT, B_OUTCOME_MON_TELEPORTED, FarawayIsland_Interior_EventScript_SetMewAboveGrass return FarawayIsland_Interior_EventScript_SetMewAboveGrass:: @@ -34,8 +30,7 @@ FarawayIsland_Interior_OnResume: FarawayIsland_Interior_EventScript_TryRemoveMew:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -127,14 +122,10 @@ FarawayIsland_Interior_EventScript_Mew:: message FarawayIsland_Interior_Text_Mew waitse playmoncry SPECIES_MEW, CRY_MODE_ENCOUNTER - compare VAR_FACING, DIR_NORTH - call_if_eq FarawayIsland_Interior_EventScript_FoundMewNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq FarawayIsland_Interior_EventScript_FoundMewSouth - compare VAR_FACING, DIR_WEST - call_if_eq FarawayIsland_Interior_EventScript_FoundMewWest - compare VAR_FACING, DIR_EAST - call_if_eq FarawayIsland_Interior_EventScript_FoundMewEast + call_if_eq VAR_FACING, DIR_NORTH, FarawayIsland_Interior_EventScript_FoundMewNorth + call_if_eq VAR_FACING, DIR_SOUTH, FarawayIsland_Interior_EventScript_FoundMewSouth + call_if_eq VAR_FACING, DIR_WEST, FarawayIsland_Interior_EventScript_FoundMewWest + call_if_eq VAR_FACING, DIR_EAST, FarawayIsland_Interior_EventScript_FoundMewEast special DestroyMewEmergingGrassSprite delay 40 waitmoncry @@ -147,14 +138,10 @@ FarawayIsland_Interior_EventScript_Mew:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq FarawayIsland_Interior_EventScript_MewDefeated - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq FarawayIsland_Interior_EventScript_PlayerOrMewRan - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq FarawayIsland_Interior_EventScript_PlayerOrMewRan - compare VAR_RESULT, B_OUTCOME_MON_TELEPORTED - goto_if_eq FarawayIsland_Interior_EventScript_PlayerOrMewRan + goto_if_eq VAR_RESULT, B_OUTCOME_WON, FarawayIsland_Interior_EventScript_MewDefeated + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, FarawayIsland_Interior_EventScript_PlayerOrMewRan + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, FarawayIsland_Interior_EventScript_PlayerOrMewRan + goto_if_eq VAR_RESULT, B_OUTCOME_MON_TELEPORTED, FarawayIsland_Interior_EventScript_PlayerOrMewRan setflag FLAG_CAUGHT_MEW release end diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc index a9fe64ade376..f1694aaa84c0 100644 --- a/data/maps/FortreeCity/scripts.inc +++ b/data/maps/FortreeCity/scripts.inc @@ -56,16 +56,14 @@ FortreeCity_EventScript_Kecleon:: lock faceplayer checkitem ITEM_DEVON_SCOPE - compare VAR_RESULT, TRUE - goto_if_eq FortreeCity_EventScript_AskUseDevonScope + goto_if_eq VAR_RESULT, TRUE, FortreeCity_EventScript_AskUseDevonScope msgbox FortreeCity_Text_SomethingUnseeable, MSGBOX_DEFAULT release end FortreeCity_EventScript_AskUseDevonScope:: msgbox FortreeCity_Text_UnseeableUseDevonScope, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq FortreeCity_EventScript_UseDevonScope + goto_if_eq VAR_RESULT, YES, FortreeCity_EventScript_UseDevonScope release end diff --git a/data/maps/FortreeCity_Gym/scripts.inc b/data/maps/FortreeCity_Gym/scripts.inc index caac7247387b..1c729bc44ec9 100644 --- a/data/maps/FortreeCity_Gym/scripts.inc +++ b/data/maps/FortreeCity_Gym/scripts.inc @@ -18,8 +18,7 @@ FortreeCity_Gym_EventScript_InitRotatingGates:: FortreeCity_Gym_EventScript_Winona:: trainerbattle_single TRAINER_WINONA_1, FortreeCity_Gym_Text_WinonaIntro, FortreeCity_Gym_Text_WinonaDefeat, FortreeCity_Gym_EventScript_WinonaDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq FortreeCity_Gym_EventScript_WinonaRematch + goto_if_eq VAR_RESULT, TRUE, FortreeCity_Gym_EventScript_WinonaRematch goto_if_unset FLAG_RECEIVED_TM40, FortreeCity_Gym_EventScript_GiveAerialAce2 msgbox FortreeCity_Gym_Text_WinonaPostBattle, MSGBOX_DEFAULT release @@ -50,8 +49,7 @@ FortreeCity_Gym_EventScript_WinonaDefeated:: FortreeCity_Gym_EventScript_GiveAerialAce2:: giveitem ITEM_TM40 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox FortreeCity_Gym_Text_ExplainAerialAce, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM40 release @@ -59,8 +57,7 @@ FortreeCity_Gym_EventScript_GiveAerialAce2:: FortreeCity_Gym_EventScript_GiveAerialAce:: giveitem ITEM_TM40 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox FortreeCity_Gym_Text_ExplainAerialAce, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM40 return diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc index a16c26112897..a072f561065c 100644 --- a/data/maps/FortreeCity_House1/scripts.inc +++ b/data/maps/FortreeCity_House1/scripts.inc @@ -10,18 +10,15 @@ FortreeCity_House1_EventScript_Trader:: specialvar VAR_RESULT, GetInGameTradeSpeciesInfo copyvar VAR_0x8009, VAR_RESULT msgbox FortreeCity_House1_Text_YouWillTradeWontYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq FortreeCity_House1_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, FortreeCity_House1_EventScript_DeclineTrade special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq FortreeCity_House1_EventScript_DeclineTrade + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, FortreeCity_House1_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies copyvar VAR_0x800B, VAR_RESULT - compare VAR_RESULT, VAR_0x8009 - goto_if_ne FortreeCity_House1_EventScript_NotRequestedMon + goto_if_ne VAR_RESULT, VAR_0x8009, FortreeCity_House1_EventScript_NotRequestedMon copyvar VAR_0x8004, VAR_0x8008 copyvar VAR_0x8005, VAR_0x800A special CreateInGameTradePokemon diff --git a/data/maps/FortreeCity_House2/scripts.inc b/data/maps/FortreeCity_House2/scripts.inc index 29e9ea93cfe7..cdd0fc99f71d 100644 --- a/data/maps/FortreeCity_House2/scripts.inc +++ b/data/maps/FortreeCity_House2/scripts.inc @@ -20,8 +20,7 @@ FortreeCity_House2_EventScript_HiddenPowerGiver:: case 0, FortreeCity_House2_EventScript_WrongGuess msgbox FortreeCity_House2_Text_YourHiddenPowerHasAwoken, MSGBOX_DEFAULT giveitem ITEM_TM10 - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM10 msgbox FortreeCity_House2_Text_ExplainHiddenPower, MSGBOX_DEFAULT release diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc index c416cf147559..ed9167417376 100644 --- a/data/maps/FortreeCity_House4/scripts.inc +++ b/data/maps/FortreeCity_House4/scripts.inc @@ -34,8 +34,7 @@ FortreeCity_House4_EventScript_WingullReturned:: waitmovement 0 msgbox FortreeCity_House4_Text_WelcomeWingullTakeMentalHerb, MSGBOX_DEFAULT giveitem ITEM_MENTAL_HERB - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_MENTAL_HERB releaseall end diff --git a/data/maps/GraniteCave_StevensRoom/scripts.inc b/data/maps/GraniteCave_StevensRoom/scripts.inc index b57eb0de6d32..384e648ee262 100644 --- a/data/maps/GraniteCave_StevensRoom/scripts.inc +++ b/data/maps/GraniteCave_StevensRoom/scripts.inc @@ -12,8 +12,7 @@ GraniteCave_StevensRoom_EventScript_Steven:: setflag FLAG_DELIVERED_STEVEN_LETTER msgbox GraniteCave_StevensRoom_Text_ThankYouTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM47 - compare VAR_RESULT, FALSE - call_if_eq GraniteCave_StevensRoom_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, GraniteCave_StevensRoom_EventScript_BagFull msgbox GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister, MSGBOX_DEFAULT closemessage delay 30 @@ -25,14 +24,10 @@ GraniteCave_StevensRoom_EventScript_Steven:: setflag FLAG_REGISTERED_STEVEN_POKENAV msgbox GraniteCave_StevensRoom_Text_IveGotToHurryAlong, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq GraniteCave_StevensRoom_EventScript_StevenExitNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq GraniteCave_StevensRoom_EventScript_StevenExitSouth - compare VAR_FACING, DIR_WEST - call_if_eq GraniteCave_StevensRoom_EventScript_StevenExitWestEast - compare VAR_FACING, DIR_EAST - call_if_eq GraniteCave_StevensRoom_EventScript_StevenExitWestEast + call_if_eq VAR_FACING, DIR_NORTH, GraniteCave_StevensRoom_EventScript_StevenExitNorth + call_if_eq VAR_FACING, DIR_SOUTH, GraniteCave_StevensRoom_EventScript_StevenExitSouth + 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 release diff --git a/data/maps/InsideOfTruck/scripts.inc b/data/maps/InsideOfTruck/scripts.inc index 515279449866..c59d5a97bea1 100644 --- a/data/maps/InsideOfTruck/scripts.inc +++ b/data/maps/InsideOfTruck/scripts.inc @@ -17,10 +17,8 @@ InsideOfTruck_EventScript_SetIntroFlags:: lockall setflag FLAG_HIDE_MAP_NAME_POPUP checkplayergender - compare VAR_RESULT, MALE - goto_if_eq InsideOfTruck_EventScript_SetIntroFlagsMale - compare VAR_RESULT, FEMALE - goto_if_eq InsideOfTruck_EventScript_SetIntroFlagsFemale + goto_if_eq VAR_RESULT, MALE, InsideOfTruck_EventScript_SetIntroFlagsMale + goto_if_eq VAR_RESULT, FEMALE, InsideOfTruck_EventScript_SetIntroFlagsFemale end InsideOfTruck_EventScript_SetIntroFlagsMale:: diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc index 83e4d015a6ac..8f8236a5c030 100644 --- a/data/maps/IslandCave/scripts.inc +++ b/data/maps/IslandCave/scripts.inc @@ -10,8 +10,7 @@ IslandCave_OnResume: IslandCave_EventScript_TryRemoveRegice:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -101,12 +100,9 @@ IslandCave_EventScript_Regice:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq IslandCave_EventScript_DefeatedRegice - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq IslandCave_EventScript_RanFromRegice - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq IslandCave_EventScript_RanFromRegice + goto_if_eq VAR_RESULT, B_OUTCOME_WON, IslandCave_EventScript_DefeatedRegice + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, IslandCave_EventScript_RanFromRegice + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, IslandCave_EventScript_RanFromRegice setflag FLAG_DEFEATED_REGICE release end diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc index 18a8c2999417..f969a4dec60d 100644 --- a/data/maps/JaggedPass/scripts.inc +++ b/data/maps/JaggedPass/scripts.inc @@ -8,14 +8,12 @@ JaggedPass_MapScripts:: JaggedPass_OnResume: setstepcallback STEP_CB_ASH - compare VAR_JAGGED_PASS_STATE, 0 - call_if_eq JaggedPass_EventScript_CheckHasMagmaEmblem + call_if_eq VAR_JAGGED_PASS_STATE, 0, JaggedPass_EventScript_CheckHasMagmaEmblem end JaggedPass_EventScript_CheckHasMagmaEmblem:: checkitem ITEM_MAGMA_EMBLEM - compare VAR_RESULT, TRUE - goto_if_eq JaggedPass_EventScript_SetReadyToOpenHideout + goto_if_eq VAR_RESULT, TRUE, JaggedPass_EventScript_SetReadyToOpenHideout return JaggedPass_EventScript_SetReadyToOpenHideout:: @@ -23,8 +21,7 @@ JaggedPass_EventScript_SetReadyToOpenHideout:: return JaggedPass_OnTransition: - compare VAR_JAGGED_PASS_ASH_WEATHER, 1 - call_if_eq JaggedPass_EventScript_SetWeatherAsh + call_if_eq VAR_JAGGED_PASS_ASH_WEATHER, 1, JaggedPass_EventScript_SetWeatherAsh end JaggedPass_EventScript_SetWeatherAsh:: @@ -33,8 +30,7 @@ JaggedPass_EventScript_SetWeatherAsh:: return JaggedPass_OnLoad: - compare VAR_JAGGED_PASS_STATE, 1 - goto_if_le JaggedPass_EventScript_ConcealHideoutEntrance + goto_if_le VAR_JAGGED_PASS_STATE, 1, JaggedPass_EventScript_ConcealHideoutEntrance end JaggedPass_EventScript_ConcealHideoutEntrance:: @@ -106,8 +102,7 @@ JaggedPass_EventScript_Eric:: JaggedPass_EventScript_Diana:: trainerbattle_single TRAINER_DIANA_1, JaggedPass_Text_DianaIntro, JaggedPass_Text_DianaDefeat, JaggedPass_EventScript_RegisterDiana specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq JaggedPass_EventScript_DianaRematch + goto_if_eq VAR_RESULT, TRUE, JaggedPass_EventScript_DianaRematch msgbox JaggedPass_Text_DianaPostBattle, MSGBOX_DEFAULT release end @@ -127,8 +122,7 @@ JaggedPass_EventScript_DianaRematch:: JaggedPass_EventScript_Ethan:: trainerbattle_single TRAINER_ETHAN_1, JaggedPass_Text_EthanIntro, JaggedPass_Text_EthanDefeat, JaggedPass_EventScript_RegisterEthan specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq JaggedPass_EventScript_EthanRematch + goto_if_eq VAR_RESULT, TRUE, JaggedPass_EventScript_EthanRematch msgbox JaggedPass_Text_EthanPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc index 2b7f8f331fd8..3ce226c4c135 100644 --- a/data/maps/LavaridgeTown/scripts.inc +++ b/data/maps/LavaridgeTown/scripts.inc @@ -12,10 +12,8 @@ LavaridgeTown_OnTransition: call_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, LavaridgeTown_EventScript_ShowMtChimneyTrainers call Common_EventScript_SetupRivalGfxId call Common_EventScript_SetupRivalOnBikeGfxId - compare VAR_LAVARIDGE_TOWN_STATE, 1 - call_if_eq LavaridgeTown_EventScript_CheckSetRivalPos - compare VAR_LAVARIDGE_TOWN_STATE, 1 - call_if_eq LavaridgeTown_EventScript_HideMapNamePopup + call_if_eq VAR_LAVARIDGE_TOWN_STATE, 1, LavaridgeTown_EventScript_CheckSetRivalPos + call_if_eq VAR_LAVARIDGE_TOWN_STATE, 1, LavaridgeTown_EventScript_HideMapNamePopup end LavaridgeTown_EventScript_ClearLavaridgeWhiteOut:: @@ -24,8 +22,7 @@ LavaridgeTown_EventScript_ClearLavaridgeWhiteOut:: LavaridgeTown_EventScript_CheckSetRivalPos:: getplayerxy VAR_0x8004, VAR_0x8005 - compare VAR_0x8004, 9 - goto_if_eq LavaridgeTown_EventScript_SetRivalPos + goto_if_eq VAR_0x8004, 9, LavaridgeTown_EventScript_SetRivalPos return LavaridgeTown_EventScript_SetRivalPos:: @@ -50,25 +47,17 @@ LavaridgeTown_OnFrame: LavaridgeTown_EventScript_RivalGiveGoGoggles:: lockall getplayerxy VAR_0x8008, VAR_0x8009 - compare VAR_0x8008, 9 - call_if_eq LavaridgeTown_EventScript_RivalNoticePlayer - compare VAR_0x8008, 9 - call_if_ne LavaridgeTown_EventScript_RivalExitHerbShop + call_if_eq VAR_0x8008, 9, LavaridgeTown_EventScript_RivalNoticePlayer + call_if_ne VAR_0x8008, 9, LavaridgeTown_EventScript_RivalExitHerbShop delay 20 checkplayergender - compare VAR_RESULT, MALE - call_if_eq LavaridgeTown_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - call_if_eq LavaridgeTown_EventScript_PlayBrendanMusic - compare VAR_0x8008, 9 - call_if_eq LavaridgeTown_EventScript_RivalApproachPlayer1 - compare VAR_0x8008, 9 - call_if_ne LavaridgeTown_EventScript_RivalApproachPlayer2 + call_if_eq VAR_RESULT, MALE, LavaridgeTown_EventScript_PlayMayMusic + call_if_eq VAR_RESULT, FEMALE, LavaridgeTown_EventScript_PlayBrendanMusic + call_if_eq VAR_0x8008, 9, LavaridgeTown_EventScript_RivalApproachPlayer1 + call_if_ne VAR_0x8008, 9, LavaridgeTown_EventScript_RivalApproachPlayer2 checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LavaridgeTown_EventScript_MayGiveGoGoggles - compare VAR_RESULT, FEMALE - goto_if_eq LavaridgeTown_EventScript_BrendanGiveGoGoggles + goto_if_eq VAR_RESULT, MALE, LavaridgeTown_EventScript_MayGiveGoGoggles + goto_if_eq VAR_RESULT, FEMALE, LavaridgeTown_EventScript_BrendanGiveGoGoggles end LavaridgeTown_EventScript_MayGiveGoGoggles:: @@ -92,10 +81,8 @@ LavaridgeTown_EventScript_RivalExit:: removeobject LOCALID_RIVAL addobject LOCALID_RIVAL_ON_BIKE delay 30 - compare VAR_0x8008, 9 - call_if_eq LavaridgeTown_EventScript_RivalExit1 - compare VAR_0x8008, 9 - call_if_ne LavaridgeTown_EventScript_RivalExit2 + call_if_eq VAR_0x8008, 9, LavaridgeTown_EventScript_RivalExit1 + call_if_ne VAR_0x8008, 9, LavaridgeTown_EventScript_RivalExit2 removeobject LOCALID_RIVAL_ON_BIKE setvar VAR_LAVARIDGE_TOWN_STATE, 2 clearflag FLAG_HIDE_MAP_NAME_POPUP @@ -214,8 +201,7 @@ LavaridgeTown_Movement_RivalExitHerbShop: LavaridgeTown_EventScript_HotSpringsTrigger:: specialvar VAR_RESULT, GetPlayerFacingDirection - compare VAR_RESULT, DIR_SOUTH - goto_if_eq LavaridgeTown_EventScript_EnteredHotSprings + goto_if_eq VAR_RESULT, DIR_SOUTH, LavaridgeTown_EventScript_EnteredHotSprings end LavaridgeTown_EventScript_EnteredHotSprings:: @@ -251,11 +237,9 @@ LavaridgeTown_EventScript_EggWoman:: faceplayer goto_if_set FLAG_RECEIVED_LAVARIDGE_EGG, LavaridgeTown_EventScript_ReceivedEgg msgbox LavaridgeTown_Text_HaveEggWillYouTakeIt, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LavaridgeTown_EventScript_DeclineEgg + goto_if_eq VAR_RESULT, NO, LavaridgeTown_EventScript_DeclineEgg getpartysize - compare VAR_RESULT, PARTY_SIZE - goto_if_eq LavaridgeTown_EventScript_NoRoomForEgg + goto_if_eq VAR_RESULT, PARTY_SIZE, LavaridgeTown_EventScript_NoRoomForEgg msgbox LavaridgeTown_Text_HopeYoullWalkPlentyWithEgg, MSGBOX_DEFAULT setflag FLAG_RECEIVED_LAVARIDGE_EGG playfanfare MUS_OBTAIN_ITEM diff --git a/data/maps/LavaridgeTown_Gym_1F/scripts.inc b/data/maps/LavaridgeTown_Gym_1F/scripts.inc index 608f32e24c39..6628360c1505 100644 --- a/data/maps/LavaridgeTown_Gym_1F/scripts.inc +++ b/data/maps/LavaridgeTown_Gym_1F/scripts.inc @@ -51,8 +51,7 @@ LavaridgeTown_Gym_1F_EventScript_EndCheckBuryTrainers:: LavaridgeTown_Gym_1F_EventScript_Flannery:: trainerbattle_single TRAINER_FLANNERY_1, LavaridgeTown_Gym_1F_Text_FlanneryIntro, LavaridgeTown_Gym_1F_Text_FlanneryDefeat, LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq LavaridgeTown_Gym_1F_EventScript_FlanneryRematch + goto_if_eq VAR_RESULT, TRUE, LavaridgeTown_Gym_1F_EventScript_FlanneryRematch goto_if_unset FLAG_RECEIVED_TM50, LavaridgeTown_Gym_1F_EventScript_GiveOverheat2 msgbox LavaridgeTown_Gym_1F_Text_FlanneryPostBattle, MSGBOX_DEFAULT release @@ -67,8 +66,7 @@ LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated:: setflag FLAG_DEFEATED_LAVARIDGE_GYM setflag FLAG_BADGE04_GET addvar VAR_PETALBURG_GYM_STATE, 1 - compare VAR_PETALBURG_GYM_STATE, 6 - call_if_eq Common_EventScript_ReadyPetalburgGymForBattle + call_if_eq VAR_PETALBURG_GYM_STATE, 6, Common_EventScript_ReadyPetalburgGymForBattle setvar VAR_0x8008, 4 call Common_EventScript_SetGymTrainers setflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY @@ -87,8 +85,7 @@ LavaridgeTown_Gym_1F_EventScript_FlanneryDefeated:: LavaridgeTown_Gym_1F_EventScript_GiveOverheat2:: giveitem ITEM_TM50 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox LavaridgeTown_Gym_1F_Text_ExplainOverheat, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM50 release @@ -96,8 +93,7 @@ LavaridgeTown_Gym_1F_EventScript_GiveOverheat2:: LavaridgeTown_Gym_1F_EventScript_GiveOverheat:: giveitem ITEM_TM50 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox LavaridgeTown_Gym_1F_Text_ExplainOverheat, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM50 return @@ -116,8 +112,7 @@ LavaridgeTown_Gym_EventScript_CheckTrainerScript:: call LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars release special ShouldTryGetTrainerScript - compare VAR_RESULT, 1 - goto_if_eq EventScript_GotoTrainerScript + goto_if_eq VAR_RESULT, 1, EventScript_GotoTrainerScript end LavaridgeTown_Gym_1F_EventScript_Axle:: diff --git a/data/maps/LavaridgeTown_HerbShop/scripts.inc b/data/maps/LavaridgeTown_HerbShop/scripts.inc index 2637f5c09d73..dbe1b564aca4 100644 --- a/data/maps/LavaridgeTown_HerbShop/scripts.inc +++ b/data/maps/LavaridgeTown_HerbShop/scripts.inc @@ -31,8 +31,7 @@ LavaridgeTown_HerbShop_EventScript_OldMan:: goto_if_set FLAG_RECEIVED_CHARCOAL, LavaridgeTown_HerbShop_EventScript_ExplainCharcoal msgbox LavaridgeTown_HerbShop_Text_YouveComeToLookAtHerbalMedicine, MSGBOX_DEFAULT giveitem ITEM_CHARCOAL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_CHARCOAL release end diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc index 648aae564244..094592d64662 100644 --- a/data/maps/LilycoveCity/scripts.inc +++ b/data/maps/LilycoveCity/scripts.inc @@ -42,8 +42,7 @@ LilycoveCity_EventScript_BerryGentleman:: random 10 addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_LILYCOVE_RECEIVED_BERRY msgbox LilycoveCity_Text_BecauseYoureTrainer, MSGBOX_DEFAULT release @@ -234,18 +233,15 @@ LilycoveCity_EventScript_Rival:: lock faceplayer checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LilycoveCity_EventScript_May - compare VAR_RESULT, FEMALE - goto_if_eq LilycoveCity_EventScript_Brendan + goto_if_eq VAR_RESULT, MALE, LilycoveCity_EventScript_May + goto_if_eq VAR_RESULT, FEMALE, LilycoveCity_EventScript_Brendan end LilycoveCity_EventScript_May:: playbgm MUS_ENCOUNTER_MAY, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_MayAskToBattle - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_EventScript_DeclineMayBattle + goto_if_eq VAR_RESULT, NO, LilycoveCity_EventScript_DeclineMayBattle msgbox LilycoveCity_Text_MayWontBeBeaten, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, LilycoveCity_EventScript_BattleMayTreecko @@ -273,8 +269,7 @@ LilycoveCity_EventScript_Brendan:: playbgm MUS_ENCOUNTER_BRENDAN, TRUE call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattleAgain call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_BrendanAskToBattle - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_EventScript_DeclineBrendanBattle + goto_if_eq VAR_RESULT, NO, LilycoveCity_EventScript_DeclineBrendanBattle msgbox LilycoveCity_Text_BrendanWontBeBeaten, MSGBOX_DEFAULT switch VAR_STARTER_MON case 0, LilycoveCity_EventScript_BattleBrendanTreecko @@ -332,10 +327,8 @@ LilycoveCity_EventScript_DefeatedMay:: msgbox LilycoveCity_Text_MayGoingBackToLittleroot, MSGBOX_DEFAULT setvar VAR_RESULT, FALSE call_if_set FLAG_BADGE06_GET, LilycoveCity_EventScript_CheckFinalBadge - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_EventScript_MayCollectBadges - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_EventScript_MayPokemonLeague + call_if_eq VAR_RESULT, FALSE, LilycoveCity_EventScript_MayCollectBadges + call_if_eq VAR_RESULT, TRUE, LilycoveCity_EventScript_MayPokemonLeague clearflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM clearflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_PICHU_DOLL goto LilycoveCity_EventScript_RivalFlyAway @@ -366,10 +359,8 @@ LilycoveCity_EventScript_DefeatedBrendan:: msgbox LilycoveCity_Text_BrendanGoingBackToLittleroot, MSGBOX_DEFAULT setvar VAR_RESULT, FALSE call_if_set FLAG_BADGE06_GET, LilycoveCity_EventScript_CheckFinalBadge - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_EventScript_BrendanCollectBadges - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_EventScript_BrendanPokemonLeague + call_if_eq VAR_RESULT, FALSE, LilycoveCity_EventScript_BrendanCollectBadges + call_if_eq VAR_RESULT, TRUE, LilycoveCity_EventScript_BrendanPokemonLeague clearflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM clearflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_SWABLU_DOLL goto LilycoveCity_EventScript_RivalFlyAway @@ -408,10 +399,8 @@ LilycoveCity_EventScript_SchoolKidM:: lock faceplayer msgbox LilycoveCity_Text_DoYouKnowAboutBerryBlender, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq LilycoveCity_EventScript_KnowAboutBerryBlender - compare VAR_RESULT, NO - call_if_eq LilycoveCity_EventScript_DontKnowAboutBerryBlender + call_if_eq VAR_RESULT, YES, LilycoveCity_EventScript_KnowAboutBerryBlender + call_if_eq VAR_RESULT, NO, LilycoveCity_EventScript_DontKnowAboutBerryBlender release end diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc index 84a790aede1e..fa884a0966aa 100644 --- a/data/maps/LilycoveCity_ContestLobby/scripts.inc +++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc @@ -18,8 +18,7 @@ LilycoveCity_ContestLobby_OnTransition: LilycoveCity_ContestLobby_EventScript_TryShowBlendMaster:: getpokenewsactive POKENEWS_BLENDMASTER - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_ContestLobby_EventScript_ShowBlendMaster + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_ShowBlendMaster clearflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_REPLACEMENT setflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER return @@ -52,10 +51,8 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: showcontestpainting CONTEST_WINNER_ARTIST lockall msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting + goto_if_eq VAR_RESULT, YES, LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum + goto_if_eq VAR_RESULT, NO, LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting releaseall end @@ -65,8 +62,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum:: special SaveMuseumContestPainting setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0 specialvar VAR_RESULT, GiveMonArtistRibbon - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon + call_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistExit waitmovement 0 removeobject LOCALID_ARTIST @@ -77,8 +73,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum:: LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting:: msgbox LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum + 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 @@ -225,10 +220,8 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: fadescreen FADE_TO_BLACK showcontestpainting CONTEST_WINNER_ARTIST msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink + goto_if_eq VAR_RESULT, YES, LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink + goto_if_eq VAR_RESULT, NO, LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink end LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: @@ -237,8 +230,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: special SaveMuseumContestPainting setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0 specialvar VAR_RESULT, GiveMonArtistRibbon - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon + call_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistExit waitmovement 0 removeobject LOCALID_ARTIST_LINK @@ -249,8 +241,7 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink:: LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink:: msgbox LilycoveCity_ContestLobby_Text_TakeHomeButIdLikeToTakeToMuseum, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink + 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 @@ -327,8 +318,7 @@ LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer: LilycoveCity_ContestLobby_EventScript_ContestReceptionist:: special ClearLinkContestFlags specialvar VAR_RESULT, IsContestDebugActive @ Always FALSE - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_ContestLobby_EventScript_SetDebug + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_SetDebug call LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist call LilycoveCity_ContestLobby_EventScript_LeadToContestHall special SetContestTrainerGfxIds @@ -648,11 +638,9 @@ LilycoveCity_ContestLobby_EventScript_AskEnterLinkContest:: LilycoveCity_ContestLobby_EventScript_TryEnterLinkContest:: msgbox LilycoveCity_ContestLobby_Text_ProgressWillBeSaved, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_RESULT, NO, LilycoveCity_ContestLobby_EventScript_CancelLinkContest call Common_EventScript_SaveGame - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_ContestLobby_EventScript_CancelLinkContest message LilycoveCity_ContestLobby_Text_WhichContestMode waitmessage specialvar VAR_TEMP_D, IsWirelessAdapterConnected @@ -671,8 +659,7 @@ LilycoveCity_ContestLobby_EventScript_EmeraldMode:: LilycoveCity_ContestLobby_EventScript_GlobalMode:: setvar VAR_TEMP_C, 1 - compare VAR_TEMP_D, 1 - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkNoWirelessGMode + goto_if_eq VAR_TEMP_D, 1, LilycoveCity_ContestLobby_EventScript_CancelLinkNoWirelessGMode goto LilycoveCity_ContestLobby_EventScript_ChooseLinkContestType end @@ -724,19 +711,13 @@ LilycoveCity_ContestLobby_EventScript_ChooseLinkContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon3, MSGBOX_DEFAULT setvar VAR_CONTEST_RANK, 0 choosecontestmon - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, LilycoveCity_ContestLobby_EventScript_CancelLinkContest special TryEnterContestMon - compare VAR_RESULT, CANT_ENTER_CONTEST - goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkCantEnterLowRank - compare VAR_RESULT, CAN_ENTER_CONTEST_EQUAL_RANK - goto_if_eq LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest - compare VAR_RESULT, CAN_ENTER_CONTEST_HIGH_RANK - goto_if_eq LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest - compare VAR_RESULT, CANT_ENTER_CONTEST_EGG - goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkCantEnterEgg - compare VAR_RESULT, CANT_ENTER_CONTEST_FAINTED - goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkCantEnterFainted + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST, LilycoveCity_ContestLobby_EventScript_LinkCantEnterLowRank + goto_if_eq VAR_RESULT, CAN_ENTER_CONTEST_EQUAL_RANK, LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest + goto_if_eq VAR_RESULT, CAN_ENTER_CONTEST_HIGH_RANK, LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST_EGG, LilycoveCity_ContestLobby_EventScript_LinkCantEnterEgg + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST_FAINTED, LilycoveCity_ContestLobby_EventScript_LinkCantEnterFainted end LilycoveCity_ContestLobby_EventScript_LinkCantEnterLowRank:: @@ -760,29 +741,19 @@ LilycoveCity_ContestLobby_EventScript_EnterMonForLinkContest:: end LilycoveCity_ContestLobby_EventScript_TrySetUpLinkContest:: - compare VAR_TEMP_D, 1 - goto_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupType - compare VAR_TEMP_D, 2 - goto_if_ge LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_TEMP_D, 1, LilycoveCity_ContestLobby_EventScript_SetLinkGroupType + goto_if_ge VAR_TEMP_D, 2, LilycoveCity_ContestLobby_EventScript_CancelLinkContest message LilycoveCity_ContestLobby_Text_PleaseWaitBButtonCancel waitmessage copyvar VAR_0x8004, VAR_RESULT - compare VAR_TEMP_C, 0 - call_if_eq LilycoveCity_ContestLobby_EventScript_TryLinkEMode - compare VAR_TEMP_C, 1 - call_if_eq LilycoveCity_ContestLobby_EventScript_TryLinkGMode - compare VAR_TEMP_C, 2 - goto_if_ge LilycoveCity_ContestLobby_EventScript_CancelLinkContest - compare VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkContest - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkError - compare VAR_RESULT, LINKUP_FAILED_CONTEST_GMODE - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelLinkModeDifference + call_if_eq VAR_TEMP_C, 0, LilycoveCity_ContestLobby_EventScript_TryLinkEMode + call_if_eq VAR_TEMP_C, 1, LilycoveCity_ContestLobby_EventScript_TryLinkGMode + goto_if_ge VAR_TEMP_C, 2, LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS, LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, LilycoveCity_ContestLobby_EventScript_CancelLinkDifferentChoices + goto_if_eq VAR_RESULT, LINKUP_FAILED, LilycoveCity_ContestLobby_EventScript_CancelLinkContest + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, LilycoveCity_ContestLobby_EventScript_CancelLinkError + goto_if_eq VAR_RESULT, LINKUP_FAILED_CONTEST_GMODE, LilycoveCity_ContestLobby_EventScript_CancelLinkModeDifference messageinstant LilycoveCity_ContestLobby_Text_Transmitting contestlinktransfer switch VAR_0x8004 @@ -849,16 +820,11 @@ LilycoveCity_ContestLobby_EventScript_StartLinkContest:: end LilycoveCity_ContestLobby_EventScript_SetLinkGroupType:: - compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_COOL - call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupCoolContest - compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_BEAUTY - call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupBeautyContest - compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_CUTE - call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupCuteContest - compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_SMART - call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupSmartContest - compare VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_TOUGH - call_if_eq LilycoveCity_ContestLobby_EventScript_SetLinkGroupToughContest + call_if_eq VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_COOL, LilycoveCity_ContestLobby_EventScript_SetLinkGroupCoolContest + call_if_eq VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_BEAUTY, LilycoveCity_ContestLobby_EventScript_SetLinkGroupBeautyContest + call_if_eq VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_CUTE, LilycoveCity_ContestLobby_EventScript_SetLinkGroupCuteContest + call_if_eq VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_SMART, LilycoveCity_ContestLobby_EventScript_SetLinkGroupSmartContest + call_if_eq VAR_CONTEST_CATEGORY, CONTEST_CATEGORY_TOUGH, LilycoveCity_ContestLobby_EventScript_SetLinkGroupToughContest goto LilycoveCity_ContestLobby_EventScript_DecideLinkLeader end @@ -895,23 +861,17 @@ LilycoveCity_ContestLobby_EventScript_DecideLinkLeader:: LilycoveCity_ContestLobby_EventScript_TryLeadGroup:: call LilycoveCity_ContestLobby_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq LilycoveCity_ContestLobby_EventScript_DecideLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq LilycoveCity_ContestLobby_EventScript_TryLeadGroup + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided + goto_if_eq VAR_RESULT, LINKUP_FAILED, LilycoveCity_ContestLobby_EventScript_DecideLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, LilycoveCity_ContestLobby_EventScript_TryLeadGroup release end LilycoveCity_ContestLobby_EventScript_TryJoinGroup:: call LilycoveCity_ContestLobby_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq LilycoveCity_ContestLobby_EventScript_DecideLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq LilycoveCity_ContestLobby_EventScript_TryJoinGroup + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, LilycoveCity_ContestLobby_EventScript_LinkLeaderDecided + goto_if_eq VAR_RESULT, LINKUP_FAILED, LilycoveCity_ContestLobby_EventScript_DecideLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, LilycoveCity_ContestLobby_EventScript_TryJoinGroup release end diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc index a5e8b40cf6a7..ca7481b53334 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc +++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc @@ -7,8 +7,7 @@ LilycoveCity_CoveLilyMotel_2F_EventScript_GameDesigner:: call_if_unset FLAG_TEMP_2, LilycoveCity_CoveLilyMotel_2F_EventScript_ShowMeCompletedDex call_if_set FLAG_TEMP_2, LilycoveCity_CoveLilyMotel_2F_EventScript_ShowDiploma specialvar VAR_RESULT, HasAllHoennMons - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_CoveLilyMotel_2F_EventScript_AllHoennMonsFanfare + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_CoveLilyMotel_2F_EventScript_AllHoennMonsFanfare release end diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc index 3e7c4c4f66b7..d7d152408d6f 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc @@ -60,8 +60,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_1F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F, 2, 1 - compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F - goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect + goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect @@ -70,8 +69,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_2F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F, 2, 1 - compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F - goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect + goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect @@ -80,8 +78,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_3F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F, 2, 1 - compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F - goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect + goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect @@ -90,8 +87,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_4F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F, 2, 1 - compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F - goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect + goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect @@ -100,8 +96,7 @@ LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor:: LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor:: setvar VAR_0x8006, DEPT_STORE_FLOORNUM_5F setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F, 2, 1 - compare VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F - goto_if_eq LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect + goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc index 224d3c778a79..8c67ee149639 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/scripts.inc @@ -4,10 +4,8 @@ LilycoveCity_DepartmentStoreRooftop_MapScripts:: LilycoveCity_DepartmentStoreRooftop_OnTransition: getpokenewsactive POKENEWS_LILYCOVE - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_HideSaleWoman + call_if_eq VAR_RESULT, TRUE, LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman + call_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStoreRooftop_EventScript_HideSaleWoman end LilycoveCity_DepartmentStoreRooftop_EventScript_ShowSaleWoman:: @@ -52,8 +50,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_Man:: lock faceplayer getpokenewsactive POKENEWS_LILYCOVE - compare VAR_RESULT, TRUE - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_ManClearOutSale + call_if_eq VAR_RESULT, TRUE, LilycoveCity_DepartmentStoreRooftop_EventScript_ManClearOutSale msgbox LilycoveCity_DepartmentStoreRooftop_Text_SetDatesForClearOutSales, MSGBOX_DEFAULT release end @@ -126,23 +123,15 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade:: return LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: - compare VAR_TEMP_1, 0 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater - compare VAR_TEMP_1, 1 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneySodaPop - compare VAR_TEMP_1, 2 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NotEnoughMoneyForDrink + call_if_eq VAR_TEMP_1, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyFreshWater + call_if_eq VAR_TEMP_1, 1, LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneySodaPop + call_if_eq VAR_TEMP_1, 2, LilycoveCity_DepartmentStoreRooftop_EventScript_CheckMoneyLemonade + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStoreRooftop_EventScript_NotEnoughMoneyForDrink checkitemspace VAR_TEMP_0 - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink - compare VAR_TEMP_1, 0 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyFreshWater - compare VAR_TEMP_1, 1 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop - compare VAR_TEMP_1, 2 - call_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink + call_if_eq VAR_TEMP_1, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyFreshWater + call_if_eq VAR_TEMP_1, 1, LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneySodaPop + call_if_eq VAR_TEMP_1, 2, LilycoveCity_DepartmentStoreRooftop_EventScript_RemoveMoneyLemonade updatemoneybox bufferitemname STR_VAR_1, VAR_TEMP_0 playse SE_VEND @@ -152,11 +141,9 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: bufferstdstring STR_VAR_3, STDSTRING_ITEMS msgbox gText_PutItemInPocket, MSGBOX_DEFAULT random 64 @ 1/64 chance of an additional drink dropping - compare VAR_RESULT, 0 - goto_if_ne LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink + goto_if_ne VAR_RESULT, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink checkitemspace VAR_TEMP_0 - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown, MSGBOX_DEFAULT additem VAR_TEMP_0 @@ -164,11 +151,9 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_TryBuyDrink:: bufferstdstring STR_VAR_3, STDSTRING_ITEMS msgbox gText_PutItemInPocket, MSGBOX_DEFAULT random 64 @ 1/64 * the prev 1/64 chance of a third additional drink dropping, ~ 0.02% chance - compare VAR_RESULT, 0 - goto_if_ne LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink + goto_if_ne VAR_RESULT, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_ChooseNewDrink checkitemspace VAR_TEMP_0 - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink + goto_if_eq VAR_RESULT, 0, LilycoveCity_DepartmentStoreRooftop_EventScript_NoRoomForDrink playse SE_VEND msgbox LilycoveCity_DepartmentStoreRooftop_Text_ExtraCanOfDrinkDroppedDown, MSGBOX_DEFAULT additem VAR_TEMP_0 diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc index 45a0a844e6ea..b0656cfd4a84 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc @@ -11,12 +11,10 @@ LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: lock faceplayer dotimebasedevents - compare VAR_POKELOT_PRIZE_ITEM, ITEM_NONE - goto_if_ne LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier + goto_if_ne VAR_POKELOT_PRIZE_ITEM, ITEM_NONE, LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier goto_if_set FLAG_DAILY_PICKED_LOTO_TICKET, LilycoveCity_DepartmentStore_1F_EventScript_ComeBackTomorrow msgbox LilycoveCity_DepartmentStore_1F_Text_LotteryCornerDrawTicket, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain + goto_if_eq VAR_RESULT, NO, LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain setflag FLAG_DAILY_PICKED_LOTO_TICKET message LilycoveCity_DepartmentStore_1F_Text_PleasePickTicket waitmessage @@ -34,25 +32,17 @@ LilycoveCity_DepartmentStore_1F_EventScript_LotteryClerk:: delay 10 applymovement LOCALID_LOTTERY_CLERK, Common_Movement_FacePlayer waitmovement 0 - compare VAR_0x8004, 0 - goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_NoMatch + goto_if_eq VAR_0x8004, 0, LilycoveCity_DepartmentStore_1F_EventScript_NoMatch incrementgamestat GAME_STAT_WON_POKEMON_LOTTERY - compare VAR_0x8006, 0 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPartyMon - compare VAR_0x8006, 1 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPCMon + call_if_eq VAR_0x8006, 0, LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPartyMon + call_if_eq VAR_0x8006, 1, LilycoveCity_DepartmentStore_1F_EventScript_TicketMatchPCMon bufferitemname STR_VAR_1, VAR_0x8005 - compare VAR_0x8004, 1 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_TwoDigitMatch - compare VAR_0x8004, 2 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_ThreeDigitMatch - compare VAR_0x8004, 3 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_FourDigitMatch - compare VAR_0x8004, 4 - call_if_eq LilycoveCity_DepartmentStore_1F_EventScript_FullMatch + call_if_eq VAR_0x8004, 1, LilycoveCity_DepartmentStore_1F_EventScript_TwoDigitMatch + call_if_eq VAR_0x8004, 2, LilycoveCity_DepartmentStore_1F_EventScript_ThreeDigitMatch + call_if_eq VAR_0x8004, 3, LilycoveCity_DepartmentStore_1F_EventScript_FourDigitMatch + call_if_eq VAR_0x8004, 4, LilycoveCity_DepartmentStore_1F_EventScript_FullMatch giveitem VAR_0x8005 - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_RecordPrizeNoRoom + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStore_1F_EventScript_RecordPrizeNoRoom special TryPutLotteryWinnerReportOnAir goto LilycoveCity_DepartmentStore_1F_EventScript_PleaseVisitAgain2 end @@ -115,8 +105,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize:: LilycoveCity_DepartmentStore_1F_EventScript_GivePrizeFromEarlier:: msgbox LilycoveCity_DepartmentStore_1F_Text_PrizeWeveBeenHolding, MSGBOX_DEFAULT giveitem VAR_POKELOT_PRIZE_ITEM - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_DepartmentStore_1F_EventScript_NoRoomForPrize copyvar VAR_0x8004, VAR_POKELOT_PRIZE_PLACE copyvar VAR_0x8005, VAR_POKELOT_PRIZE_ITEM special TryPutLotteryWinnerReportOnAir diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc index d1d074c8ce71..a9683d13c9b6 100644 --- a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc +++ b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc @@ -129,10 +129,8 @@ LilycoveCity_DepartmentStore_5F_EventScript_Woman:: lockall applymovement LOCALID_WOMAN, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 0 - goto_if_eq LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - goto_if_ge LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal + 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 goto LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather end diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc index d8dfa0f218fd..63010dc4c77d 100644 --- a/data/maps/LilycoveCity_Harbor/scripts.inc +++ b/data/maps/LilycoveCity_Harbor/scripts.inc @@ -21,25 +21,18 @@ LilycoveCity_Harbor_EventScript_FerryAttendant:: call LilycoveCity_Harbor_EventScript_GetMysticTicketState call LilycoveCity_Harbor_EventScript_GetFirstTimeShowingTicket call LilycoveCity_Harbor_EventScript_GetHasTicketsState - compare VAR_TEMP_C, 2 - goto_if_eq LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime - compare VAR_TEMP_B, 1 - goto_if_eq LilycoveCity_Harbor_EventScript_EonTicketFirstTime - compare VAR_TEMP_B, 2 - goto_if_eq LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime - compare VAR_TEMP_B, 4 - goto_if_eq LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime - compare VAR_TEMP_B, 8 - goto_if_eq LilycoveCity_Harbor_EventScript_MysticTicketFirstTime - compare VAR_TEMP_B, 0 - goto_if_ne LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime + goto_if_eq VAR_TEMP_C, 2, LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime + goto_if_eq VAR_TEMP_B, 1, LilycoveCity_Harbor_EventScript_EonTicketFirstTime + goto_if_eq VAR_TEMP_B, 2, LilycoveCity_Harbor_EventScript_AuroraTicketFirstTime + goto_if_eq VAR_TEMP_B, 4, LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime + goto_if_eq VAR_TEMP_B, 8, LilycoveCity_Harbor_EventScript_MysticTicketFirstTime + goto_if_ne VAR_TEMP_B, 0, LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime goto LilycoveCity_Harbor_EventScript_NoFirstTimeEventTickets end @ First goto_if_eq is unnecessary; identical scripts LilycoveCity_Harbor_EventScript_NoFirstTimeEventTickets:: - compare VAR_TEMP_A, 0 - goto_if_eq LilycoveCity_Harbor_EventScript_NoEventTickets + goto_if_eq VAR_TEMP_A, 0, LilycoveCity_Harbor_EventScript_NoEventTickets msgbox LilycoveCity_Harbor_Text_MayISeeYourTicket, MSGBOX_DEFAULT message LilycoveCity_Harbor_Text_FlashTicketWhereTo waitmessage @@ -92,8 +85,7 @@ LilycoveCity_Harbor_EventScript_GoToFarawayIsland:: LilycoveCity_Harbor_EventScript_GoToSlateport:: msgbox LilycoveCity_Harbor_Text_SlateportItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind + goto_if_eq VAR_RESULT, NO, LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_LILYCOVE call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_SS_TIDAL_CORRIDOR, 1, 10 @@ -103,8 +95,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateport:: LilycoveCity_Harbor_EventScript_GoToBattleFrontier:: msgbox LilycoveCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind + goto_if_eq VAR_RESULT, NO, LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate @@ -115,8 +106,7 @@ LilycoveCity_Harbor_EventScript_GetEonTicketState:: setvar VAR_TEMP_E, 0 goto_if_unset FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, Common_EventScript_NopReturn checkitem ITEM_EON_TICKET - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_NopReturn setvar VAR_TEMP_E, 1 goto_if_set FLAG_SHOWN_EON_TICKET, Common_EventScript_NopReturn setvar VAR_TEMP_E, 2 @@ -126,8 +116,7 @@ LilycoveCity_Harbor_EventScript_GetAuroraTicketState:: setvar VAR_TEMP_D, 0 goto_if_unset FLAG_ENABLE_SHIP_BIRTH_ISLAND, Common_EventScript_NopReturn checkitem ITEM_AURORA_TICKET - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_NopReturn setvar VAR_TEMP_D, 1 goto_if_set FLAG_SHOWN_AURORA_TICKET, Common_EventScript_NopReturn setvar VAR_TEMP_D, 2 @@ -137,8 +126,7 @@ LilycoveCity_Harbor_EventScript_GetOldSeaMapState:: setvar VAR_TEMP_C, 0 goto_if_unset FLAG_ENABLE_SHIP_FARAWAY_ISLAND, Common_EventScript_NopReturn checkitem ITEM_OLD_SEA_MAP - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_NopReturn setvar VAR_TEMP_C, 1 goto_if_set FLAG_SHOWN_OLD_SEA_MAP, Common_EventScript_NopReturn setvar VAR_TEMP_C, 2 @@ -148,8 +136,7 @@ LilycoveCity_Harbor_EventScript_GetMysticTicketState:: setvar VAR_TEMP_9, 0 goto_if_unset FLAG_ENABLE_SHIP_NAVEL_ROCK, Common_EventScript_NopReturn checkitem ITEM_MYSTIC_TICKET - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_NopReturn setvar VAR_TEMP_9, 1 goto_if_set FLAG_SHOWN_MYSTIC_TICKET, Common_EventScript_NopReturn setvar VAR_TEMP_9, 2 @@ -157,14 +144,10 @@ LilycoveCity_Harbor_EventScript_GetMysticTicketState:: LilycoveCity_Harbor_EventScript_GetFirstTimeShowingTicket:: setvar VAR_TEMP_B, 0 - compare VAR_TEMP_E, 2 - call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket - compare VAR_TEMP_D, 2 - call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingAuroraTicket - compare VAR_TEMP_C, 2 - call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingOldSeaMap - compare VAR_TEMP_9, 2 - call_if_eq LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket + call_if_eq VAR_TEMP_E, 2, LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket + call_if_eq VAR_TEMP_D, 2, LilycoveCity_Harbor_EventScript_SetFirstTimeShowingAuroraTicket + call_if_eq VAR_TEMP_C, 2, LilycoveCity_Harbor_EventScript_SetFirstTimeShowingOldSeaMap + call_if_eq VAR_TEMP_9, 2, LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket return LilycoveCity_Harbor_EventScript_SetFirstTimeShowingEonTicket:: @@ -185,14 +168,10 @@ LilycoveCity_Harbor_EventScript_SetFirstTimeShowingMysticTicket:: LilycoveCity_Harbor_EventScript_GetHasTicketsState:: setvar VAR_TEMP_A, 0 - compare VAR_TEMP_E, 1 - call_if_eq LilycoveCity_Harbor_EventScript_SetHasEonTicket - compare VAR_TEMP_D, 1 - call_if_eq LilycoveCity_Harbor_EventScript_SetHasAuroraTicket - compare VAR_TEMP_C, 1 - call_if_eq LilycoveCity_Harbor_EventScript_SetHasOldSeaMap - compare VAR_TEMP_9, 1 - call_if_eq LilycoveCity_Harbor_EventScript_SetHasMysticTicket + call_if_eq VAR_TEMP_E, 1, LilycoveCity_Harbor_EventScript_SetHasEonTicket + call_if_eq VAR_TEMP_D, 1, LilycoveCity_Harbor_EventScript_SetHasAuroraTicket + call_if_eq VAR_TEMP_C, 1, LilycoveCity_Harbor_EventScript_SetHasOldSeaMap + call_if_eq VAR_TEMP_9, 1, LilycoveCity_Harbor_EventScript_SetHasMysticTicket return LilycoveCity_Harbor_EventScript_SetHasEonTicket:: @@ -259,26 +238,18 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime:: waitmovement 0 applymovement LOCALID_FERRY_SAILOR, Common_Movement_Delay48 waitmovement 0 - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast + 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 - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast + 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 - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast + call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth + call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast msgbox EventTicket_Text_BrineyLetsSail, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast + 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 call Common_EventScript_FerryDepart warp MAP_FARAWAY_ISLAND_ENTRANCE, 13, 38 @@ -364,10 +335,8 @@ LilycoveCity_Harbor_EventScript_BoardFerryWithSailor:: waitmovement 0 delay 30 removeobject LOCALID_FERRY_SAILOR - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast + 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 @@ -395,8 +364,7 @@ LilycoveCity_Harbor_EventScript_NoTicket:: @ Unused LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: msgbox LilycoveCity_Harbor_Text_SlateportItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind + goto_if_eq VAR_RESULT, NO, LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_LILYCOVE call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_SS_TIDAL_CORRIDOR, 1, 10 @@ -407,8 +375,7 @@ LilycoveCity_Harbor_EventScript_GoToSlateportUnused:: @ Unused LilycoveCity_Harbor_EventScript_GoToBattleFrontierUnused:: msgbox LilycoveCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind + goto_if_eq VAR_RESULT, NO, LilycoveCity_Harbor_EventScript_FerryDestinationChangeMind call LilycoveCity_Harbor_EventScript_BoardFerry warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate @@ -428,10 +395,8 @@ LilycoveCity_Harbor_EventScript_BoardFerry:: waitmovement 0 delay 30 hideobjectat VAR_LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR - compare VAR_FACING, DIR_NORTH - call_if_eq LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth - compare VAR_FACING, DIR_EAST - call_if_eq LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast + 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 diff --git a/data/maps/LilycoveCity_House2/scripts.inc b/data/maps/LilycoveCity_House2/scripts.inc index c7664c641fcf..965d82acfbcb 100644 --- a/data/maps/LilycoveCity_House2/scripts.inc +++ b/data/maps/LilycoveCity_House2/scripts.inc @@ -7,8 +7,7 @@ LilycoveCity_House2_EventScript_FatMan:: goto_if_set FLAG_RECEIVED_TM44, LilycoveCity_House2_EventScript_ReceivedRest msgbox LilycoveCity_House2_Text_NotAwakeYetHaveThis, MSGBOX_DEFAULT giveitem ITEM_TM44 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM44 msgbox LilycoveCity_House2_Text_SleepIsEssential, MSGBOX_DEFAULT release diff --git a/data/maps/LilycoveCity_House3/scripts.inc b/data/maps/LilycoveCity_House3/scripts.inc index de76c58b6bbc..57e68047326a 100644 --- a/data/maps/LilycoveCity_House3/scripts.inc +++ b/data/maps/LilycoveCity_House3/scripts.inc @@ -11,8 +11,7 @@ LilycoveCity_House3_EventScript_PokefanF:: lock faceplayer msgbox LilycoveCity_House3_Text_LearnFromMasterOfPokeblocks, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_House3_EventScript_DeclinePokeblockLearn + goto_if_eq VAR_RESULT, NO, LilycoveCity_House3_EventScript_DeclinePokeblockLearn msgbox LilycoveCity_House3_Text_ExplainPokeblocks, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc index 12c4ead3ee4d..2d9d446f9d51 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc @@ -14,10 +14,8 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Curator:: message LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings waitmessage multichoice 20, 8, MULTI_VIEWED_PAINTINGS, TRUE - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet + goto_if_eq VAR_RESULT, 0, LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings + goto_if_eq VAR_RESULT, 1, LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet end LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet:: @@ -26,10 +24,8 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_NotYet:: LilycoveCity_LilycoveMuseum_1F_EventScript_SawPaintings:: msgbox LilycoveCity_LilycoveMuseum_1F_Text_HaveYouAnInterestInPaintings, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings + goto_if_eq VAR_RESULT, NO, LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested + goto_if_eq VAR_RESULT, YES, LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings end LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested:: diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc index bf220b04f949..9212ca67df1e 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc @@ -121,8 +121,7 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament:: applymovement LOCALID_CURATOR, Common_Movement_FacePlayer msgbox LilycoveCity_LilycoveMuseum_2F_Text_TokenOfGratitude, MSGBOX_DEFAULT givedecoration DECOR_GLASS_ORNAMENT - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_LilycoveMuseum_2F_EventScript_NoRoomForGlassOrnament + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_LilycoveMuseum_2F_EventScript_NoRoomForGlassOrnament setflag FLAG_RECEIVED_GLASS_ORNAMENT closemessage releaseall diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc index eead1f675f14..db042653e1ca 100644 --- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc +++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc @@ -18,20 +18,16 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMonShouldForget, MSGBOX_DEFAULT special ChoosePartyMon waitstate - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_ComeAgain + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, LilycoveCity_MoveDeletersHouse_EventScript_ComeAgain special IsSelectedMonEgg - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_EggCantForgetMoves + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_MoveDeletersHouse_EventScript_EggCantForgetMoves special GetNumMovesSelectedMonHas - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove + goto_if_eq VAR_RESULT, 1, LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMoveShouldBeForgotten, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK special MoveDeleterChooseMoveToForget fadescreen FADE_FROM_BLACK - compare VAR_0x8005, MAX_MON_MOVES - goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget + goto_if_eq VAR_0x8005, MAX_MON_MOVES, LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget special BufferMoveDeleterNicknameAndMove msgbox LilycoveCity_MoveDeletersHouse_Text_MonsMoveShouldBeForgotten, MSGBOX_YESNO switch VAR_RESULT @@ -42,8 +38,7 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: LilycoveCity_MoveDeletersHouse_EventScript_TryForgetMove:: special IsLastMonThatKnowsSurf - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_LastMonWithSurf + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_MoveDeletersHouse_EventScript_LastMonWithSurf special MoveDeleterForgetMove playfanfare MUS_MOVE_DELETED waitfanfare diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc index 03f2657e714d..a7f853afada1 100644 --- a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc @@ -13,10 +13,8 @@ LilycoveCity_PokemonCenter_1F_OnTransition: @ SetLilycoveLadyGfx returns TRUE if its the Contest Lady LilycoveCity_PokemonCenter_1F_EventScript_SetLilycoveLadyGfx:: special SetLilycoveLadyGfx - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon end LilycoveCity_PokemonCenter_1F_EventScript_HideContestLadyMon:: diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc index 63e70848805a..ba8001324a06 100644 --- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc +++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc @@ -73,10 +73,8 @@ LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer: LilycoveCity_PokemonTrainerFanClub_OnTransition: call LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer - compare VAR_LILYCOVE_FAN_CLUB_STATE, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting - compare VAR_LILYCOVE_FAN_CLUB_STATE, 2 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 2, LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions end LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions:: @@ -84,42 +82,33 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_UpdateFanMemberPositions:: call LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow setvar VAR_0x8004, FANCLUB_MEMBER1 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER2 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER3 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember3ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember3ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER4 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER5 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember5ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember5ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER6 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember6ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember6ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER7 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember7ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember7ToFarTable setvar VAR_0x8004, FANCLUB_MEMBER8 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable end LilycoveCity_PokemonTrainerFanClub_EventScript_HideOrShowInterviewer:: specialvar VAR_RESULT, ShouldHideFanClubInterviewer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_HideInterviewer + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_HideInterviewer clearflag FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER clearflag FLAG_FAN_CLUB_STRENGTH_SHARED return @@ -134,38 +123,29 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CheckSetUpTVShow:: setvar VAR_0x8005, NUM_TRAINER_FAN_CLUB_MEMBERS setvar VAR_0x8004, FANCLUB_MEMBER1 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER2 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER3 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER4 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER5 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER6 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER7 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan setvar VAR_0x8004, FANCLUB_MEMBER8 specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, FALSE - call_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan - compare VAR_0x8005, 5 - goto_if_ge LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow + call_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan + goto_if_ge VAR_0x8005, 5, LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow return LilycoveCity_PokemonTrainerFanClub_EventScript_CountNotPlayersFan:: @@ -222,22 +202,18 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Man:: faceplayer setvar VAR_0x8004, FANCLUB_MEMBER6 special BufferFanClubTrainerName - compare VAR_LILYCOVE_FAN_CLUB_STATE, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayerNotChampion + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayerNotChampion specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_TrainersPowerIsOutOfTheOrdinary, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_ManPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_ManOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_YoureOneWeWantToWin, MSGBOX_DEFAULT release end @@ -262,22 +238,18 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Lass:: faceplayer setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName - compare VAR_LILYCOVE_FAN_CLUB_STATE, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayerNotChampion + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayerNotChampion specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_ICantHelpLikingBrawly, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_LassPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_LassOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_ImPullingForYou, MSGBOX_DEFAULT release end @@ -302,22 +274,18 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanM:: faceplayer setvar VAR_0x8004, FANCLUB_MEMBER2 special BufferFanClubTrainerName - compare VAR_LILYCOVE_FAN_CLUB_STATE, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayerNotChampion + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayerNotChampion specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_LongWayToGoComparedToNorman, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_PokefanMOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouveSurpassedYourFather, MSGBOX_DEFAULT release end @@ -342,22 +310,18 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirl:: faceplayer setvar VAR_0x8004, FANCLUB_MEMBER3 special BufferFanClubTrainerName - compare VAR_LILYCOVE_FAN_CLUB_STATE, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayerNotChampion + goto_if_eq VAR_LILYCOVE_FAN_CLUB_STATE, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayerNotChampion specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_EveryoneThinksTrainerIsCool, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_LittleGirlOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_OhWoweeItsPlayer, MSGBOX_DEFAULT release end @@ -383,19 +347,16 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoy:: setvar VAR_0x8004, FANCLUB_MEMBER4 special BufferFanClubTrainerName specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsWickedlyCool, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_NinjaBoyOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_WantToBeStrongLikeYou, MSGBOX_DEFAULT release end @@ -416,19 +377,16 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Boy:: setvar VAR_0x8004, FANCLUB_MEMBER5 special BufferFanClubTrainerName specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_ThinkTrainerIsNumberOne, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_BoyPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_BoyOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_YoureAmazingAfterAll, MSGBOX_DEFAULT release end @@ -449,19 +407,16 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Woman:: setvar VAR_0x8004, FANCLUB_MEMBER7 special BufferFanClubTrainerName specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_TrainerIsStandout, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_WomanPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_WomanOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouChangedMyMind, MSGBOX_DEFAULT release end @@ -482,19 +437,16 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertF:: setvar VAR_0x8004, FANCLUB_MEMBER8 special BufferFanClubTrainerName specialvar VAR_RESULT, IsFanClubMemberFanOfPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1) - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyNonFan + goto_if_eq VAR_RESULT, (NUM_TRAINER_FAN_CLUB_MEMBERS - 1), LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyNonFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_HaventRealizedPotential, MSGBOX_DEFAULT release end LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFPlayersFan:: specialvar VAR_RESULT, GetNumFansOfPlayerInTrainerFanClub - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyFan + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_ExpertFOnlyFan msgbox LilycoveCity_PokemonTrainerFanClub_Text_YouImpressive, MSGBOX_DEFAULT release end @@ -521,8 +473,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Interviewer:: LilycoveCity_PokemonTrainerFanClub_EventScript_Interview:: setvar VAR_0x8005, TVSHOW_FAN_CLUB_SPECIAL special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed2 + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonTrainerFanClub_EventScript_AlreadyInterviewed2 copyvar VAR_0x800A, VAR_0x8006 setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName @@ -532,10 +483,8 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_Interview:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion end LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion:: @@ -547,10 +496,8 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion end LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion:: @@ -562,10 +509,8 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_AskForOpinion:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonTrainerFanClub_EventScript_SubmitOpinion + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonTrainerFanClub_EventScript_CancelGiveOpinion end LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer:: @@ -592,10 +537,8 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_CancelRateTrainer:: setvar VAR_0x8004, FANCLUB_MEMBER1 special BufferFanClubTrainerName msgbox LilycoveCity_PokemonTrainerFanClub_Text_HaveYouForgottenTrainer2, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonTrainerFanClub_EventScript_RateTrainer end LilycoveCity_PokemonTrainerFanClub_EventScript_ForgetTrainer:: diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc index f8a7244bf6bf..69961bf36230 100644 --- a/data/maps/LittlerootTown/scripts.inc +++ b/data/maps/LittlerootTown/scripts.inc @@ -42,23 +42,15 @@ LittlerootTown_MapScripts:: LittlerootTown_OnTransition: setflag FLAG_VISITED_LITTLEROOT_TOWN call Common_EventScript_SetupRivalGfxId - compare VAR_LITTLEROOT_INTRO_STATE, 2 - call_if_eq LittlerootTown_EventScript_MoveMomToMaysDoor + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 2, LittlerootTown_EventScript_MoveMomToMaysDoor call_if_unset FLAG_RESCUED_BIRCH, LittlerootTown_EventScript_SetTwinPos - compare VAR_LITTLEROOT_TOWN_STATE, 3 - call_if_eq LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos - compare VAR_LITTLEROOT_HOUSES_STATE_MAY, 4 - call_if_eq LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent - compare VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 4 - call_if_eq LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent - compare VAR_OLDALE_RIVAL_STATE, 1 - call_if_eq LittlerootTown_EventScript_MoveRivalFromOldale - compare VAR_LITTLEROOT_RIVAL_STATE, 3 - call_if_eq LittlerootTown_EventScript_SetRivalLeftForRoute103 - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1 - call_if_eq LittlerootTown_EventScript_HideMapNamePopup - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2 - call_if_eq LittlerootTown_EventScript_LeftLabAfterDexUpgrade + call_if_eq VAR_LITTLEROOT_TOWN_STATE, 3, LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos + call_if_eq VAR_LITTLEROOT_HOUSES_STATE_MAY, 4, LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent + call_if_eq VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 4, LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent + call_if_eq VAR_OLDALE_RIVAL_STATE, 1, LittlerootTown_EventScript_MoveRivalFromOldale + call_if_eq VAR_LITTLEROOT_RIVAL_STATE, 3, LittlerootTown_EventScript_SetRivalLeftForRoute103 + call_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 1, LittlerootTown_EventScript_HideMapNamePopup + call_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_EventScript_LeftLabAfterDexUpgrade end LittlerootTown_EventScript_LeftLabAfterDexUpgrade:: @@ -88,8 +80,7 @@ LittlerootTown_EventScript_MoveMomToMaysDoor:: return LittlerootTown_EventScript_SetTwinPos:: - compare VAR_LITTLEROOT_TOWN_STATE, 0 - goto_if_eq LittlerootTown_EventScript_SetTwinGuardingRoutePos + goto_if_eq VAR_LITTLEROOT_TOWN_STATE, 0, LittlerootTown_EventScript_SetTwinGuardingRoutePos setobjectxyperm LOCALID_TWIN, 10, 1 setobjectmovementtype LOCALID_TWIN, MOVEMENT_TYPE_FACE_UP return @@ -103,10 +94,8 @@ LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos:: clearflag FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_DOWN checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_SetMomInFrontOfDoorMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_SetMomInFrontOfDoorFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetMomInFrontOfDoorMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_SetMomInFrontOfDoorFemale return LittlerootTown_EventScript_SetMomInFrontOfDoorMale:: @@ -243,8 +232,7 @@ LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade:: addobject LOCALID_BIRCH addobject LOCALID_RIVAL checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale + goto_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale goto LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale end @@ -271,8 +259,7 @@ LittlerootTown_EventScript_Twin:: faceplayer goto_if_set FLAG_ADVENTURE_STARTED, LittlerootTown_EventScript_GoodLuck goto_if_set FLAG_RESCUED_BIRCH, LittlerootTown_EventScript_YouSavedBirch - compare VAR_LITTLEROOT_TOWN_STATE, 0 - goto_if_ne LittlerootTown_EventScript_GoSaveBirch + goto_if_ne VAR_LITTLEROOT_TOWN_STATE, 0, LittlerootTown_EventScript_GoSaveBirch msgbox LittlerootTown_Text_IfYouGoInGrassPokemonWillJumpOut, MSGBOX_DEFAULT release end @@ -416,10 +403,8 @@ LittlerootTown_EventScript_BirchsLabSign:: LittlerootTown_EventScript_BrendansHouseSign:: lockall checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_PlayersHouseSignMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_BirchsHouseSignFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_PlayersHouseSignMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_BirchsHouseSignFemale releaseall end @@ -434,10 +419,8 @@ LittlerootTown_EventScript_BirchsHouseSignFemale:: LittlerootTown_EventScript_MaysHouseSign:: lockall checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_BirchsHouseSignMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_PlayersHouseSignFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_BirchsHouseSignMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_PlayersHouseSignFemale releaseall end @@ -489,28 +472,20 @@ LittlerootTown_EventScript_GiveRunningShoesTrigger5:: LittlerootTown_EventScript_GiveRunningShoesTrigger:: checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_MomNoticePlayerMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_MomNoticePlayerFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_MomNoticePlayerMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_MomNoticePlayerFemale checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_SetHomeDoorCoordsMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_SetHomeDoorCoordsFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetHomeDoorCoordsMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_SetHomeDoorCoordsFemale msgbox LittlerootTown_Text_WaitPlayer, MSGBOX_DEFAULT closemessage checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_MomApproachPlayerMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_MomApproachPlayerFemale call LittlerootTown_EventScript_GiveRunningShoes checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_MomReturnHomeMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale + call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_MomReturnHomeMale + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_MomReturnHomeFemale goto LittlerootTown_EventScript_SetReceivedRunningShoes end @@ -535,33 +510,21 @@ LittlerootTown_EventScript_MomNoticePlayerFemale:: return LittlerootTown_EventScript_MomApproachPlayerMale:: - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_EventScript_MomApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_EventScript_MomApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale2 - compare VAR_0x8008, 3 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale3 - compare VAR_0x8008, 4 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale4 - compare VAR_0x8008, 5 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerMale5 + call_if_eq VAR_0x8008, 0, LittlerootTown_EventScript_MomApproachPlayer0 + call_if_eq VAR_0x8008, 1, LittlerootTown_EventScript_MomApproachPlayer1 + call_if_eq VAR_0x8008, 2, LittlerootTown_EventScript_MomApproachPlayerMale2 + call_if_eq VAR_0x8008, 3, LittlerootTown_EventScript_MomApproachPlayerMale3 + call_if_eq VAR_0x8008, 4, LittlerootTown_EventScript_MomApproachPlayerMale4 + call_if_eq VAR_0x8008, 5, LittlerootTown_EventScript_MomApproachPlayerMale5 return LittlerootTown_EventScript_MomApproachPlayerFemale:: - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_EventScript_MomApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_EventScript_MomApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale2 - compare VAR_0x8008, 3 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale3 - compare VAR_0x8008, 4 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale4 - compare VAR_0x8008, 5 - call_if_eq LittlerootTown_EventScript_MomApproachPlayerFemale5 + call_if_eq VAR_0x8008, 0, LittlerootTown_EventScript_MomApproachPlayer0 + call_if_eq VAR_0x8008, 1, LittlerootTown_EventScript_MomApproachPlayer1 + call_if_eq VAR_0x8008, 2, LittlerootTown_EventScript_MomApproachPlayerFemale2 + call_if_eq VAR_0x8008, 3, LittlerootTown_EventScript_MomApproachPlayerFemale3 + call_if_eq VAR_0x8008, 4, LittlerootTown_EventScript_MomApproachPlayerFemale4 + call_if_eq VAR_0x8008, 5, LittlerootTown_EventScript_MomApproachPlayerFemale5 return LittlerootTown_EventScript_MomApproachPlayer0:: @@ -635,33 +598,21 @@ LittlerootTown_EventScript_MomApproachPlayerFemale5:: return LittlerootTown_EventScript_MomReturnHomeMale:: - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_EventScript_MomReturnHome0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_EventScript_MomReturnHome1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_EventScript_MomReturnHomeMale2 - compare VAR_0x8008, 3 - call_if_eq LittlerootTown_EventScript_MomReturnHomeMale3 - compare VAR_0x8008, 4 - call_if_eq LittlerootTown_EventScript_MomReturnHomeMale4 - compare VAR_0x8008, 5 - call_if_eq LittlerootTown_EventScript_MomReturnHomeMale5 + call_if_eq VAR_0x8008, 0, LittlerootTown_EventScript_MomReturnHome0 + call_if_eq VAR_0x8008, 1, LittlerootTown_EventScript_MomReturnHome1 + call_if_eq VAR_0x8008, 2, LittlerootTown_EventScript_MomReturnHomeMale2 + call_if_eq VAR_0x8008, 3, LittlerootTown_EventScript_MomReturnHomeMale3 + call_if_eq VAR_0x8008, 4, LittlerootTown_EventScript_MomReturnHomeMale4 + call_if_eq VAR_0x8008, 5, LittlerootTown_EventScript_MomReturnHomeMale5 return LittlerootTown_EventScript_MomReturnHomeFemale:: - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_EventScript_MomReturnHome0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_EventScript_MomReturnHome1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale2 - compare VAR_0x8008, 3 - call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale3 - compare VAR_0x8008, 4 - call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale4 - compare VAR_0x8008, 5 - call_if_eq LittlerootTown_EventScript_MomReturnHomeFemale5 + call_if_eq VAR_0x8008, 0, LittlerootTown_EventScript_MomReturnHome0 + call_if_eq VAR_0x8008, 1, LittlerootTown_EventScript_MomReturnHome1 + call_if_eq VAR_0x8008, 2, LittlerootTown_EventScript_MomReturnHomeFemale2 + call_if_eq VAR_0x8008, 3, LittlerootTown_EventScript_MomReturnHomeFemale3 + call_if_eq VAR_0x8008, 4, LittlerootTown_EventScript_MomReturnHomeFemale4 + call_if_eq VAR_0x8008, 5, LittlerootTown_EventScript_MomReturnHomeFemale5 return LittlerootTown_EventScript_MomReturnHome0:: @@ -924,10 +875,8 @@ LittlerootTown_EventScript_Mom:: lock faceplayer checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_EventScript_SetHomeDoorCoordsMale - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_EventScript_SetHomeDoorCoordsFemale + 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 waitmovement 0 diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc index 15bd96f253bd..cce8cd59b921 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc @@ -9,8 +9,7 @@ LittlerootTown_BrendansHouse_1F_MapScripts:: .byte 0 LittlerootTown_BrendansHouse_1F_OnLoad: - compare VAR_LITTLEROOT_INTRO_STATE, 6 - call_if_lt LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes + call_if_lt VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual end @@ -21,8 +20,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_SetMovingBoxes:: LittlerootTown_BrendansHouse_1F_EventScript_CheckShowShoesManual:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual + goto_if_eq VAR_RESULT, MALE, LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual return LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual:: @@ -30,12 +28,9 @@ LittlerootTown_BrendansHouse_1F_EventScript_ShowRunningShoesManual:: return LittlerootTown_BrendansHouse_1F_OnTransition: - compare VAR_LITTLEROOT_INTRO_STATE, 3 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor - compare VAR_LITTLEROOT_INTRO_STATE, 5 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs - compare VAR_LITTLEROOT_INTRO_STATE, 6 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 3, LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 5, LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV end LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs:: @@ -156,23 +151,16 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival:: waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 - compare VAR_0x8008, 1 - call_if_ne LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan + call_if_ne VAR_0x8008, 1, LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan playbgm MUS_ENCOUNTER_BRENDAN, TRUE - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2 + call_if_eq VAR_0x8008, 0, LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0 + call_if_eq VAR_0x8008, 1, LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer1 + call_if_eq VAR_0x8008, 2, LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2 msgbox RivalsHouse_1F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2 + call_if_eq VAR_0x8008, 0, LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs0 + 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 setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_BRENDAN diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index b4db71e2901f..993172683322 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -6,28 +6,23 @@ LittlerootTown_BrendansHouse_2F_MapScripts:: .byte 0 LittlerootTown_BrendansHouse_2F_OnTransition: - compare VAR_LITTLEROOT_RIVAL_STATE, 2 - call_if_lt LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan - compare VAR_LITTLEROOT_RIVAL_STATE, 3 - call_if_ge LittlerootTown_BrendansHouse_2F_EventScript_CheckShouldUpdateBrendanPos - compare VAR_LITTLEROOT_INTRO_STATE, 4 - call_if_eq PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet + call_if_lt VAR_LITTLEROOT_RIVAL_STATE, 2, LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan + call_if_ge VAR_LITTLEROOT_RIVAL_STATE, 3, LittlerootTown_BrendansHouse_2F_EventScript_CheckShouldUpdateBrendanPos + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 4, PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet call SecretBase_EventScript_SetDecorationFlags setvar VAR_SECRET_BASE_INITIALIZED, 0 end LittlerootTown_BrendansHouse_2F_EventScript_CheckShouldUpdateBrendanPos:: goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos - compare VAR_BIRCH_LAB_STATE, 2 - goto_if_ge LittlerootTown_BrendansHouse_2F_EventScript_Ret + goto_if_ge VAR_BIRCH_LAB_STATE, 2, LittlerootTown_BrendansHouse_2F_EventScript_Ret goto LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_Ret - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2 - goto_if_ge LittlerootTown_MaysHouse_2F_EventScript_Ret @ Odd that the MaysHouse equivalent was used here instead + 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 return @@ -37,8 +32,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_Ret:: LittlerootTown_BrendansHouse_2F_EventScript_CheckSetReadyToMeetBrendan:: checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan + goto_if_eq VAR_RESULT, FEMALE, LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan return LittlerootTown_BrendansHouse_2F_EventScript_SetReadyToMeetBrendan:: @@ -51,14 +45,12 @@ LittlerootTown_BrendansHouse_2F_OnWarp: LittlerootTown_BrendansHouse_2F_EventScript_CheckInitDecor:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq SecretBase_EventScript_InitDecorations + goto_if_eq VAR_RESULT, MALE, SecretBase_EventScript_InitDecorations end LittlerootTown_BrendansHouse_2F_EventScript_RivalsPokeBall:: lockall - compare VAR_LITTLEROOT_RIVAL_STATE, 2 - goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan + goto_if_eq VAR_LITTLEROOT_RIVAL_STATE, 2, LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan msgbox RivalsHouse_2F_Text_ItsRivalsPokeBall, MSGBOX_DEFAULT releaseall end @@ -75,14 +67,10 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan:: waitmovement 0 delay 10 playbgm MUS_ENCOUNTER_BRENDAN, TRUE - compare VAR_FACING, DIR_NORTH - call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth - compare VAR_FACING, DIR_WEST - call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest - compare VAR_FACING, DIR_EAST - call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast + call_if_eq VAR_FACING, DIR_NORTH, LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth + call_if_eq VAR_FACING, DIR_SOUTH, LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth + call_if_eq VAR_FACING, DIR_WEST, LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest + call_if_eq VAR_FACING, DIR_EAST, LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast setvar VAR_LITTLEROOT_RIVAL_STATE, 3 setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL clearflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM @@ -250,10 +238,8 @@ LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanEast: LittlerootTown_BrendansHouse_2F_EventScript_PC:: lockall checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC - compare VAR_RESULT, FEMALE - goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_CheckRivalsPC + goto_if_eq VAR_RESULT, MALE, LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC + goto_if_eq VAR_RESULT, FEMALE, LittlerootTown_BrendansHouse_2F_EventScript_CheckRivalsPC end LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc index b022402d05c9..b4c4775c334a 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc @@ -9,8 +9,7 @@ LittlerootTown_MaysHouse_1F_MapScripts:: .byte 0 LittlerootTown_MaysHouse_1F_OnLoad: - compare VAR_LITTLEROOT_INTRO_STATE, 6 - call_if_lt LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes + call_if_lt VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual end @@ -21,8 +20,7 @@ LittlerootTown_MaysHouse_1F_EventScript_SetMovingBoxes:: LittlerootTown_MaysHouse_1F_EventScript_CheckShowShoesManual:: checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual + goto_if_eq VAR_RESULT, FEMALE, LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual return LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual:: @@ -30,12 +28,9 @@ LittlerootTown_MaysHouse_1F_EventScript_ShowRunningShoesManual:: return LittlerootTown_MaysHouse_1F_OnTransition: - compare VAR_LITTLEROOT_INTRO_STATE, 3 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor - compare VAR_LITTLEROOT_INTRO_STATE, 5 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs - compare VAR_LITTLEROOT_INTRO_STATE, 6 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 3, LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 5, LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 6, LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV end LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs:: @@ -123,8 +118,7 @@ RivalsHouse_1F_EventScript_RivalMom:: faceplayer goto_if_set FLAG_DEFEATED_RIVAL_ROUTE103, RivalsHouse_1F_EventScript_GoHomeEverySoOften goto_if_set FLAG_SYS_POKEMON_GET, RivalsHouse_1F_EventScript_RivalIsOnRoute103 - compare VAR_LITTLEROOT_RIVAL_STATE, 3 - goto_if_eq RivalsHouse_1F_EventScript_RivalTooBusy + goto_if_eq VAR_LITTLEROOT_RIVAL_STATE, 3, RivalsHouse_1F_EventScript_RivalTooBusy special GetRivalSonDaughterString msgbox RivalsHouse_1F_Text_LikeChildLikeFather, MSGBOX_DEFAULT release @@ -190,23 +184,16 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival:: waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 - compare VAR_0x8008, 1 - call_if_ne LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay + call_if_ne VAR_0x8008, 1, LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay playbgm MUS_ENCOUNTER_MAY, TRUE - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2 + call_if_eq VAR_0x8008, 0, LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0 + call_if_eq VAR_0x8008, 1, LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer1 + call_if_eq VAR_0x8008, 2, LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2 msgbox RivalsHouse_1F_Text_MayWhoAreYou, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs0 - compare VAR_0x8008, 1 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs1 - compare VAR_0x8008, 2 - call_if_eq LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2 + call_if_eq VAR_0x8008, 0, LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs0 + 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 setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MAY diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc index af6877a8875a..7403f3fcf61a 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc @@ -6,28 +6,22 @@ LittlerootTown_MaysHouse_2F_MapScripts:: .byte 0 LittlerootTown_MaysHouse_2F_OnTransition: - compare VAR_LITTLEROOT_RIVAL_STATE, 2 - call_if_lt LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay - compare VAR_LITTLEROOT_RIVAL_STATE, 3 - call_if_ge LittlerootTown_MaysHouse_2F_EventScript_CheckShouldUpdateMayPos - compare VAR_LITTLEROOT_INTRO_STATE, 4 - call_if_eq PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet + call_if_lt VAR_LITTLEROOT_RIVAL_STATE, 2, LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay + call_if_ge VAR_LITTLEROOT_RIVAL_STATE, 3, LittlerootTown_MaysHouse_2F_EventScript_CheckShouldUpdateMayPos + call_if_eq VAR_LITTLEROOT_INTRO_STATE, 4, PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet call SecretBase_EventScript_SetDecorationFlags setvar VAR_SECRET_BASE_INITIALIZED, 0 end LittlerootTown_MaysHouse_2F_EventScript_CheckShouldUpdateMayPos:: goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos - compare VAR_BIRCH_LAB_STATE, 2 - goto_if_ge LittlerootTown_MaysHouse_2F_EventScript_Ret + goto_if_ge VAR_BIRCH_LAB_STATE, 2, LittlerootTown_MaysHouse_2F_EventScript_Ret goto LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos:: checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_Ret - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2 - goto_if_ge LittlerootTown_MaysHouse_2F_EventScript_Ret + 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 return @@ -37,8 +31,7 @@ LittlerootTown_MaysHouse_2F_EventScript_Ret:: LittlerootTown_MaysHouse_2F_EventScript_CheckSetReadyToMeetMay:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay + goto_if_eq VAR_RESULT, MALE, LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay return LittlerootTown_MaysHouse_2F_EventScript_SetReadyToMeetMay:: @@ -51,14 +44,12 @@ LittlerootTown_MaysHouse_2F_OnWarp: LittlerootTown_MaysHouse_2F_EventScript_CheckInitDecor:: checkplayergender - compare VAR_RESULT, FEMALE - goto_if_eq SecretBase_EventScript_InitDecorations + goto_if_eq VAR_RESULT, FEMALE, SecretBase_EventScript_InitDecorations end LittlerootTown_MaysHouse_2F_EventScript_RivalsPokeBall:: lockall - compare VAR_LITTLEROOT_RIVAL_STATE, 2 - goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMay + goto_if_eq VAR_LITTLEROOT_RIVAL_STATE, 2, LittlerootTown_MaysHouse_2F_EventScript_MeetMay msgbox RivalsHouse_2F_Text_ItsRivalsPokeBall, MSGBOX_DEFAULT releaseall end @@ -75,14 +66,10 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMay:: waitmovement 0 delay 10 playbgm MUS_ENCOUNTER_MAY, TRUE - compare VAR_FACING, DIR_NORTH - call_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth - compare VAR_FACING, DIR_WEST - call_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest - compare VAR_FACING, DIR_EAST - call_if_eq LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast + call_if_eq VAR_FACING, DIR_NORTH, LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth + call_if_eq VAR_FACING, DIR_SOUTH, LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth + call_if_eq VAR_FACING, DIR_WEST, LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest + call_if_eq VAR_FACING, DIR_EAST, LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast setvar VAR_LITTLEROOT_RIVAL_STATE, 3 setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL clearflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM @@ -252,10 +239,8 @@ RivalsHouse_2F_EventScript_Rival:: lockall goto_if_set FLAG_MET_RIVAL_LILYCOVE, RivalsHouse_2F_EventScript_RivalPostLilycove checkplayergender - compare VAR_RESULT, MALE - goto_if_eq RivalsHouse_2F_EventScript_May - compare VAR_RESULT, FEMALE - goto_if_eq RivalsHouse_2F_EventScript_Brendan + goto_if_eq VAR_RESULT, MALE, RivalsHouse_2F_EventScript_May + goto_if_eq VAR_RESULT, FEMALE, RivalsHouse_2F_EventScript_Brendan end RivalsHouse_2F_EventScript_May:: @@ -272,10 +257,8 @@ RivalsHouse_2F_EventScript_RivalPostLilycove:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 checkplayergender - compare VAR_RESULT, MALE - call_if_eq RivalsHouse_2F_EventScript_MayPostLilycove - compare VAR_RESULT, FEMALE - call_if_eq RivalsHouse_2F_EventScript_BrendanPostLilycove + call_if_eq VAR_RESULT, MALE, RivalsHouse_2F_EventScript_MayPostLilycove + call_if_eq VAR_RESULT, FEMALE, RivalsHouse_2F_EventScript_BrendanPostLilycove setflag FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE releaseall end @@ -301,10 +284,8 @@ RivalsHouse_2F_EventScript_BrendanWhereShouldIGoNext:: LittlerootTown_MaysHouse_2F_EventScript_PC:: lockall checkplayergender - compare VAR_RESULT, MALE - goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC - compare VAR_RESULT, FEMALE - goto_if_eq LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC + goto_if_eq VAR_RESULT, MALE, LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC + goto_if_eq VAR_RESULT, FEMALE, LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC end LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC:: diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index 857099f26dd2..7c7f47d2eed9 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -29,18 +29,14 @@ LittlerootTown_ProfessorBirchsLab_MapScripts:: LittlerootTown_ProfessorBirchsLab_OnTransition: call Common_EventScript_SetupRivalGfxId call ProfBirch_EventScript_UpdateLocation - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_SetAfterJohtoStarterLayout - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 4 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_SetAfterJohtoStarterLayout + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 4, LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout + goto_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3, LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter end LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter:: specialvar VAR_RESULT, HasAllHoennMons - compare VAR_RESULT, TRUE - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter + goto_if_eq VAR_RESULT, TRUE, LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_WANDER_UP_AND_DOWN setobjectxyperm LOCALID_RIVAL, 5, 10 end @@ -123,10 +119,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveStarterEvent:: playfanfare MUS_OBTAIN_ITEM waitfanfare msgbox LittlerootTown_ProfessorBirchsLab_Text_WhyNotGiveNicknameToMon, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival + goto_if_eq VAR_RESULT, YES, LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival end LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter:: @@ -137,10 +131,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_NicknameStarter:: LittlerootTown_ProfessorBirchsLab_EventScript_GoSeeRival:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MightBeGoodIdeaToGoSeeRival, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival + goto_if_eq VAR_RESULT, YES, LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival end LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival:: @@ -152,10 +144,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival:: LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival:: msgbox LittlerootTown_ProfessorBirchsLab_Text_DontBeThatWay, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival + goto_if_eq VAR_RESULT, YES, LittlerootTown_ProfessorBirchsLab_EventScript_AgreeToSeeRival + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival end LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedexEvent:: @@ -195,10 +185,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft waitmovement 0 checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayUpgradeComment - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanUpgradeComment + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayUpgradeComment + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanUpgradeComment playse SE_PC_ON waitse delay 20 @@ -288,8 +276,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter: LittlerootTown_ProfessorBirchsLab_EventScript_Aide:: lock faceplayer - compare VAR_BIRCH_LAB_STATE, 3 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter + goto_if_ge VAR_BIRCH_LAB_STATE, 3, LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter goto_if_set FLAG_BIRCH_AIDE_MET, LittlerootTown_ProfessorBirchsLab_EventScript_AideAlreadyMet msgbox LittlerootTown_ProfessorBirchsLab_Text_BirchAwayOnFieldwork, MSGBOX_DEFAULT setflag FLAG_BIRCH_AIDE_MET @@ -308,40 +295,34 @@ LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter:: LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil:: release - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_CYNDAQUIL, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeCyndaquil, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil end LittlerootTown_ProfessorBirchsLab_EventScript_Totodile:: release - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_TOTODILE, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeTotodile, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile end LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita:: release - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight waitmovement 0 showmonpic SPECIES_CHIKORITA, 10, 3 msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeChikorita, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime goto LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita end @@ -360,10 +341,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: bufferspeciesname STR_VAR_1, SPECIES_CYNDAQUIL setvar VAR_TEMP_1, SPECIES_CYNDAQUIL givemon SPECIES_CYNDAQUIL, 5, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty - compare VAR_RESULT, 1 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC + goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty + goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end @@ -372,8 +351,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CYNDAQUIL msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil @@ -383,8 +361,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CYNDAQUIL msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC call Common_EventScript_NameReceivedBoxMon goto LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC end @@ -405,10 +382,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: bufferspeciesname STR_VAR_1, SPECIES_TOTODILE setvar VAR_TEMP_1, SPECIES_TOTODILE givemon SPECIES_TOTODILE, 5, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty - compare VAR_RESULT, 1 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC + goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty + goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end @@ -417,8 +392,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_TOTODILE msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile @@ -428,8 +402,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_TOTODILE msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC call Common_EventScript_NameReceivedBoxMon goto LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC end @@ -450,10 +423,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: bufferspeciesname STR_VAR_1, SPECIES_CHIKORITA setvar VAR_TEMP_1, SPECIES_CHIKORITA givemon SPECIES_CHIKORITA, 5, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty - compare VAR_RESULT, 1 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC + goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty + goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end @@ -462,8 +433,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CHIKORITA msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita @@ -473,8 +443,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC:: call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter removeobject LOCALID_BALL_CHIKORITA msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC + goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC call Common_EventScript_NameReceivedBoxMon goto LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC end @@ -501,10 +470,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter:: LittlerootTown_ProfessorBirchsLab_EventScript_Birch:: lock faceplayer - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_CanHaveAnyOneOfRarePokemon - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_GrassyPatchWaiting + goto_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5, LittlerootTown_ProfessorBirchsLab_EventScript_CanHaveAnyOneOfRarePokemon + goto_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_ProfessorBirchsLab_EventScript_GrassyPatchWaiting goto_if_unset FLAG_HAS_MATCH_CALL, LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister goto_if_unset FLAG_ENABLE_PROF_BIRCH_MATCH_CALL, EventScript_RegisterProfBirch goto LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister @@ -522,12 +489,9 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GrassyPatchWaiting:: LittlerootTown_ProfessorBirchsLab_EventScript_TryRatePokedexOrRegister:: goto_if_unset FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380, ProfBirch_EventScript_RatePokedexOrRegister - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3 - goto_if_eq ProfBirch_EventScript_RatePokedexOrRegister - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge ProfBirch_EventScript_RatePokedexOrRegister - compare VAR_BIRCH_LAB_STATE, 5 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_PokemonAwait + goto_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 3, ProfBirch_EventScript_RatePokedexOrRegister + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, ProfBirch_EventScript_RatePokedexOrRegister + goto_if_eq VAR_BIRCH_LAB_STATE, 5, LittlerootTown_ProfessorBirchsLab_EventScript_PokemonAwait msgbox LittlerootTown_ProfessorBirchsLab_Text_BirchRivalGoneHome, MSGBOX_DEFAULT release end @@ -556,10 +520,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls setvar VAR_BIRCH_LAB_STATE, 5 setflag FLAG_ADVENTURE_STARTED setvar VAR_OLDALE_TOWN_STATE, 1 @@ -571,8 +533,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex:: LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_MayGotPokedexTooTakeThese, MSGBOX_DEFAULT giveitem ITEM_POKE_BALL, 5 - compare VAR_RESULT, FALSE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayNoRoomForPokeBalls + call_if_eq VAR_RESULT, FALSE, LittlerootTown_ProfessorBirchsLab_EventScript_MayNoRoomForPokeBalls msgbox LittlerootTown_ProfessorBirchsLab_Text_CatchCutePokemonWithPokeBalls, MSGBOX_DEFAULT setvar VAR_RESULT, 0 return @@ -580,8 +541,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls:: LittlerootTown_ProfessorBirchsLab_EventScript_BrendanGivePokeBalls:: msgbox LittlerootTown_ProfessorBirchsLab_Text_BrendanGotPokedexTooTakeThese, MSGBOX_DEFAULT giveitem ITEM_POKE_BALL, 5 - compare VAR_RESULT, FALSE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanNoRoomForPokeBalls + call_if_eq VAR_RESULT, FALSE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanNoRoomForPokeBalls msgbox LittlerootTown_ProfessorBirchsLab_Text_CatchCoolPokemonWithPokeBalls, MSGBOX_DEFAULT setvar VAR_RESULT, 1 return @@ -621,17 +581,12 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Machine:: LittlerootTown_ProfessorBirchsLab_EventScript_Rival:: lock faceplayer - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5 - goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2 - goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork + goto_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5, LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier + goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayWhereShouldIGoNext - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanWhereShouldIGoNext + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayWhereShouldIGoNext + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanWhereShouldIGoNext release end @@ -645,10 +600,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanWhereShouldIGoNext:: LittlerootTown_ProfessorBirchsLab_EventScript_RivalFuturePlans:: checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayWhatNextImStayingHere - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanPreferCollectingSlowly + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayWhatNextImStayingHere + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanPreferCollectingSlowly release end @@ -662,10 +615,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanPreferCollectingSlowly: LittlerootTown_ProfessorBirchsLab_EventScript_RivalHaveYouGoneToBattleFrontier:: checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayHaveYouGoneToBattleFrontier - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanHaveYouGoneToBattleFrontier + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayHaveYouGoneToBattleFrontier + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanHaveYouGoneToBattleFrontier release end @@ -679,10 +630,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_BrendanHaveYouGoneToBattleFrontier LittlerootTown_ProfessorBirchsLab_EventScript_RivalTakeBreakFromFieldwork:: checkplayergender - compare VAR_RESULT, MALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_MayTakeBreakFromFieldwork - compare VAR_RESULT, FEMALE - call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_BrendanTakeBreakFromFieldwork + call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayTakeBreakFromFieldwork + call_if_eq VAR_RESULT, FEMALE, LittlerootTown_ProfessorBirchsLab_EventScript_BrendanTakeBreakFromFieldwork release end diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc index 296ef02f8270..1d988a44488d 100644 --- a/data/maps/MarineCave_End/scripts.inc +++ b/data/maps/MarineCave_End/scripts.inc @@ -11,8 +11,7 @@ MarineCave_End_OnResume: MarineCave_End_EventScript_TryRemoveKyogre:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_KYOGRE return @@ -43,12 +42,9 @@ MarineCave_End_EventScript_Kyogre:: clearflag FLAG_SYS_CTRL_OBJ_DELETE setvar VAR_TEMP_1, 0 specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq MarineCave_End_EventScript_DefeatedKyogre - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq MarineCave_End_EventScript_RanFromKyogre - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq MarineCave_End_EventScript_RanFromKyogre + goto_if_eq VAR_RESULT, B_OUTCOME_WON, MarineCave_End_EventScript_DefeatedKyogre + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, MarineCave_End_EventScript_RanFromKyogre + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, MarineCave_End_EventScript_RanFromKyogre setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 1 setflag FLAG_DEFEATED_KYOGRE releaseall diff --git a/data/maps/MauvilleCity/scripts.inc b/data/maps/MauvilleCity/scripts.inc index eb243ec59300..2ad39aec1c9e 100644 --- a/data/maps/MauvilleCity/scripts.inc +++ b/data/maps/MauvilleCity/scripts.inc @@ -107,10 +107,8 @@ MauvilleCity_EventScript_Wally:: end MauvilleCity_EventScript_BattleWallyPrompt:: - compare VAR_RESULT, YES - call_if_eq MauvilleCity_EventScript_BattleWally - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_EventScript_DeclineWallyBattle + call_if_eq VAR_RESULT, YES, MauvilleCity_EventScript_BattleWally + goto_if_eq VAR_RESULT, NO, MauvilleCity_EventScript_DeclineWallyBattle closemessage switch VAR_FACING case DIR_NORTH, MauvilleCity_EventScript_WallyAndUncleExitNorth @@ -164,19 +162,15 @@ MauvilleCity_EventScript_DefeatedWally:: setflag FLAG_DEFEATED_WALLY_MAUVILLE setvar VAR_WALLY_CALL_STEP_COUNTER, 0 setflag FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL - compare VAR_FACING, DIR_NORTH - call_if_eq MauvilleCity_EventScript_ScottApproachPlayerNorth - compare VAR_FACING, DIR_EAST - call_if_eq MauvilleCity_EventScript_ScottApproachPlayerEast + 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 waitmovement 0 msgbox MauvilleCity_Text_ScottYouDidntHoldBack, MSGBOX_DEFAULT closemessage addvar VAR_SCOTT_STATE, 1 - compare VAR_FACING, DIR_NORTH - call_if_eq MauvilleCity_EventScript_ScottExitNorth - compare VAR_FACING, DIR_EAST - call_if_eq MauvilleCity_EventScript_ScottExitEast + call_if_eq VAR_FACING, DIR_NORTH, MauvilleCity_EventScript_ScottExitNorth + call_if_eq VAR_FACING, DIR_EAST, MauvilleCity_EventScript_ScottExitEast removeobject LOCALID_SCOTT releaseall end @@ -425,8 +419,7 @@ MauvilleCity_EventScript_Wattson:: lock faceplayer goto_if_set FLAG_GOT_TM24_FROM_WATTSON, MauvilleCity_EventScript_ReceivedThunderbolt - compare VAR_NEW_MAUVILLE_STATE, 2 - goto_if_eq MauvilleCity_EventScript_CompletedNewMauville + goto_if_eq VAR_NEW_MAUVILLE_STATE, 2, MauvilleCity_EventScript_CompletedNewMauville goto_if_set FLAG_GOT_BASEMENT_KEY_FROM_WATTSON, MauvilleCity_EventScript_BegunNewMauville msgbox MauvilleCity_Text_WattsonNeedFavorTakeKey, MSGBOX_DEFAULT giveitem ITEM_BASEMENT_KEY @@ -443,8 +436,7 @@ MauvilleCity_EventScript_BegunNewMauville:: MauvilleCity_EventScript_CompletedNewMauville:: msgbox MauvilleCity_Text_WattsonThanksTakeTM, MSGBOX_DEFAULT giveitem ITEM_TM24 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_GOT_TM24_FROM_WATTSON msgbox MauvilleCity_Text_WattsonYoungTakeCharge, MSGBOX_DEFAULT release diff --git a/data/maps/MauvilleCity_BikeShop/scripts.inc b/data/maps/MauvilleCity_BikeShop/scripts.inc index 5ce43c1baa46..089338410164 100644 --- a/data/maps/MauvilleCity_BikeShop/scripts.inc +++ b/data/maps/MauvilleCity_BikeShop/scripts.inc @@ -8,18 +8,14 @@ MauvilleCity_BikeShop_EventScript_Rydel:: goto_if_set FLAG_DECLINED_BIKE, MauvilleCity_BikeShop_EventScript_SkipGreeting msgbox MauvilleCity_BikeShop_Text_RydelGreeting, MSGBOX_DEFAULT msgbox MauvilleCity_BikeShop_Text_DidYouComeFromFarAway, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_BikeShop_EventScript_YesFar - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_BikeShop_EventScript_NotFar + goto_if_eq VAR_RESULT, YES, MauvilleCity_BikeShop_EventScript_YesFar + goto_if_eq VAR_RESULT, NO, MauvilleCity_BikeShop_EventScript_NotFar end MauvilleCity_BikeShop_EventScript_SkipGreeting:: msgbox MauvilleCity_BikeShop_Text_DidYouComeFromFarAway, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_BikeShop_EventScript_YesFar - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_BikeShop_EventScript_NotFar + goto_if_eq VAR_RESULT, YES, MauvilleCity_BikeShop_EventScript_YesFar + goto_if_eq VAR_RESULT, NO, MauvilleCity_BikeShop_EventScript_NotFar end MauvilleCity_BikeShop_EventScript_ChooseBike:: @@ -62,21 +58,17 @@ MauvilleCity_BikeShop_EventScript_ComeBackToSwitchBikes:: MauvilleCity_BikeShop_EventScript_AskSwitchBikes:: msgbox MauvilleCity_BikeShop_Text_WantToSwitchBikes, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchBikes - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_BikeShop_EventScript_KeepBike + goto_if_eq VAR_RESULT, YES, MauvilleCity_BikeShop_EventScript_SwitchBikes + goto_if_eq VAR_RESULT, NO, MauvilleCity_BikeShop_EventScript_KeepBike end @ If the player does not have a bike on them Rydel assumes its stored in the PC MauvilleCity_BikeShop_EventScript_SwitchBikes:: msgbox MauvilleCity_BikeShop_Text_IllSwitchBikes, MSGBOX_DEFAULT checkitem ITEM_ACRO_BIKE - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchAcroForMach + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_BikeShop_EventScript_SwitchAcroForMach checkitem ITEM_MACH_BIKE - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_BikeShop_EventScript_SwitchMachForAcro + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_BikeShop_EventScript_SwitchMachForAcro msgbox MauvilleCity_BikeShop_Text_OhYourBikeIsInPC, MSGBOX_DEFAULT release end diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc index 451e8acb5a84..b7c8603a3340 100644 --- a/data/maps/MauvilleCity_GameCorner/scripts.inc +++ b/data/maps/MauvilleCity_GameCorner/scripts.inc @@ -17,8 +17,7 @@ MauvilleCity_GameCorner_EventScript_CoinsClerk:: faceplayer msgbox MauvilleCity_GameCorner_Text_ThisIsMauvilleGameCorner, MSGBOX_DEFAULT checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NeedCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NeedCoinCase message MauvilleCity_GameCorner_Text_WereYouLookingForCoins waitmessage showmoneybox 0, 0 @@ -44,11 +43,9 @@ MauvilleCity_GameCorner_EventScript_ChooseCoinsDefault500:: MauvilleCity_GameCorner_EventScript_Buy50Coins:: checkcoins VAR_TEMP_1 - compare VAR_TEMP_1, (MAX_COINS + 1 - 50) - goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins + goto_if_ge VAR_TEMP_1, (MAX_COINS + 1 - 50), MauvilleCity_GameCorner_EventScript_NoRoomForCoins checkmoney COINS_PRICE_50 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NotEnoughMoney addcoins 50 removemoney COINS_PRICE_50 updatemoneybox @@ -62,11 +59,9 @@ MauvilleCity_GameCorner_EventScript_Buy50Coins:: MauvilleCity_GameCorner_EventScript_Buy500Coins:: checkcoins VAR_TEMP_1 - compare VAR_TEMP_1, (MAX_COINS + 1 - 500) - goto_if_ge MauvilleCity_GameCorner_EventScript_NoRoomForCoins + goto_if_ge VAR_TEMP_1, (MAX_COINS + 1 - 500), MauvilleCity_GameCorner_EventScript_NoRoomForCoins checkmoney COINS_PRICE_500 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NotEnoughMoney addcoins 500 removemoney COINS_PRICE_500 updatemoneybox @@ -109,8 +104,7 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerDolls:: faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT checkitem ITEM_COIN_CASE - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_GameCorner_EventScript_ChooseDollPrizeMessage + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_GameCorner_EventScript_ChooseDollPrizeMessage release end @@ -153,8 +147,7 @@ MauvilleCity_GameCorner_EventScript_MudkipDoll:: MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: msgbox MauvilleCity_GameCorner_Text_SoYourChoiceIsX, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_GameCorner_EventScript_CancelDollSelect + goto_if_eq VAR_RESULT, NO, MauvilleCity_GameCorner_EventScript_CancelDollSelect switch VAR_TEMP_1 case 1, MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll case 2, MauvilleCity_GameCorner_EventScript_BuyTorchicDoll @@ -163,12 +156,10 @@ MauvilleCity_GameCorner_EventScript_ConfirmDollPrize:: MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, DOLL_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll + goto_if_lt VAR_TEMP_2, DOLL_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll bufferdecorationname STR_VAR_2, DECOR_TREECKO_DOLL checkdecorspace DECOR_TREECKO_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForDoll removecoins DOLL_COINS adddecoration DECOR_TREECKO_DOLL updatecoinsbox 1, 1 @@ -179,12 +170,10 @@ MauvilleCity_GameCorner_EventScript_BuyTreeckoDoll:: MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, DOLL_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll + goto_if_lt VAR_TEMP_2, DOLL_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll bufferdecorationname STR_VAR_2, DECOR_TORCHIC_DOLL checkdecorspace DECOR_TORCHIC_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForDoll removecoins DOLL_COINS adddecoration DECOR_TORCHIC_DOLL updatecoinsbox 1, 1 @@ -195,12 +184,10 @@ MauvilleCity_GameCorner_EventScript_BuyTorchicDoll:: MauvilleCity_GameCorner_EventScript_BuyMudkipDoll:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, DOLL_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll + goto_if_lt VAR_TEMP_2, DOLL_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForDoll bufferdecorationname STR_VAR_2, DECOR_MUDKIP_DOLL checkdecorspace DECOR_MUDKIP_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForDoll removecoins DOLL_COINS adddecoration DECOR_MUDKIP_DOLL updatecoinsbox 1, 1 @@ -230,8 +217,7 @@ MauvilleCity_GameCorner_EventScript_PrizeCornerTMs:: faceplayer msgbox MauvilleCity_GameCorner_Text_ExchangeCoinsForPrizes, MSGBOX_DEFAULT checkitem ITEM_COIN_CASE - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_GameCorner_EventScript_ChooseTMPrizeMessage + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_GameCorner_EventScript_ChooseTMPrizeMessage release end @@ -292,8 +278,7 @@ MauvilleCity_GameCorner_EventScript_TM13:: MauvilleCity_GameCorner_EventScript_ConfirmTMPrize:: special BufferTMHMMoveName msgbox MauvilleCity_GameCorner_Text_SoYourChoiceIsTheTMX, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_GameCorner_EventScript_CancelTMSelect + goto_if_eq VAR_RESULT, NO, MauvilleCity_GameCorner_EventScript_CancelTMSelect switch VAR_TEMP_1 case 1, MauvilleCity_GameCorner_EventScript_BuyTM32 case 2, MauvilleCity_GameCorner_EventScript_BuyTM29 @@ -304,11 +289,9 @@ MauvilleCity_GameCorner_EventScript_ConfirmTMPrize:: MauvilleCity_GameCorner_EventScript_BuyTM32:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, TM32_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM + goto_if_lt VAR_TEMP_2, TM32_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM checkitemspace ITEM_TM32 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM32_COINS additem ITEM_TM32 updatecoinsbox 1, 1 @@ -319,11 +302,9 @@ MauvilleCity_GameCorner_EventScript_BuyTM32:: MauvilleCity_GameCorner_EventScript_BuyTM29:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, TM29_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM + goto_if_lt VAR_TEMP_2, TM29_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM checkitemspace ITEM_TM29 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM29_COINS additem ITEM_TM29 updatecoinsbox 1, 1 @@ -334,11 +315,9 @@ MauvilleCity_GameCorner_EventScript_BuyTM29:: MauvilleCity_GameCorner_EventScript_BuyTM35:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, TM35_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM + goto_if_lt VAR_TEMP_2, TM35_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM checkitemspace ITEM_TM35 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM35_COINS additem ITEM_TM35 updatecoinsbox 1, 1 @@ -349,11 +328,9 @@ MauvilleCity_GameCorner_EventScript_BuyTM35:: MauvilleCity_GameCorner_EventScript_BuyTM24:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, TM24_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM + goto_if_lt VAR_TEMP_2, TM24_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM checkitemspace ITEM_TM24 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM24_COINS additem ITEM_TM24 updatecoinsbox 1, 1 @@ -364,11 +341,9 @@ MauvilleCity_GameCorner_EventScript_BuyTM24:: MauvilleCity_GameCorner_EventScript_BuyTM13:: checkcoins VAR_TEMP_2 - compare VAR_TEMP_2, TM13_COINS - goto_if_lt MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM + goto_if_lt VAR_TEMP_2, TM13_COINS, MauvilleCity_GameCorner_EventScript_NotEnoughCoinsForTM checkitemspace ITEM_TM13 - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForTM + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForTM removecoins TM13_COINS additem ITEM_TM13 updatecoinsbox 1, 1 @@ -406,8 +381,7 @@ MauvilleCity_GameCorner_EventScript_Girl:: faceplayer goto_if_set FLAG_RECEIVED_STARTER_DOLL, MauvilleCity_GameCorner_EventScript_ReceivedStarterDoll msgbox MauvilleCity_GameCorner_Text_GotTwoOfSameDollWantOne, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_GameCorner_EventScript_DeclineStarterDoll + goto_if_eq VAR_RESULT, NO, MauvilleCity_GameCorner_EventScript_DeclineStarterDoll switch VAR_STARTER_MON case 0, MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll case 1, MauvilleCity_GameCorner_EventScript_GiveTorchicDoll @@ -417,8 +391,7 @@ MauvilleCity_GameCorner_EventScript_Girl:: MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: bufferdecorationname STR_VAR_2, DECOR_TREECKO_DOLL checkdecorspace DECOR_TREECKO_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll msgbox MauvilleCity_GameCorner_Text_HereYouGo2, MSGBOX_DEFAULT givedecoration DECOR_TREECKO_DOLL setflag FLAG_RECEIVED_STARTER_DOLL @@ -428,8 +401,7 @@ MauvilleCity_GameCorner_EventScript_GiveTreeckoDoll:: MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: bufferdecorationname STR_VAR_2, DECOR_TORCHIC_DOLL checkdecorspace DECOR_TORCHIC_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll msgbox MauvilleCity_GameCorner_Text_HereYouGo2, MSGBOX_DEFAULT givedecoration DECOR_TORCHIC_DOLL setflag FLAG_RECEIVED_STARTER_DOLL @@ -439,8 +411,7 @@ MauvilleCity_GameCorner_EventScript_GiveTorchicDoll:: MauvilleCity_GameCorner_EventScript_GiveMudkipDoll:: bufferdecorationname STR_VAR_2, DECOR_MUDKIP_DOLL checkdecorspace DECOR_MUDKIP_DOLL - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoRoomForStarterDoll msgbox MauvilleCity_GameCorner_Text_HereYouGo2, MSGBOX_DEFAULT givedecoration DECOR_MUDKIP_DOLL setflag FLAG_RECEIVED_STARTER_DOLL @@ -467,8 +438,7 @@ MauvilleCity_GameCorner_EventScript_PokefanM:: lock faceplayer checkitem ITEM_COIN_CASE - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_GameCorner_EventScript_TryGive20Coins + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_GameCorner_EventScript_TryGive20Coins msgbox MauvilleCity_GameCorner_Text_NeedCoinCaseGoNextDoor, MSGBOX_DEFAULT goto MauvilleCity_GameCorner_EventScript_NPCReturnToSlots end @@ -476,8 +446,7 @@ MauvilleCity_GameCorner_EventScript_PokefanM:: MauvilleCity_GameCorner_EventScript_TryGive20Coins:: goto_if_set FLAG_RECEIVED_20_COINS, MauvilleCity_GameCorner_EventScript_PokefanMNormal checkcoins VAR_TEMP_1 - compare VAR_TEMP_1, 1 @ Only give 20 coins if player has no coins - goto_if_ge MauvilleCity_GameCorner_EventScript_PokefanMNormal + goto_if_ge VAR_TEMP_1, 1, MauvilleCity_GameCorner_EventScript_PokefanMNormal @ Only give 20 coins if player has no coins setflag FLAG_RECEIVED_20_COINS addcoins 20 msgbox MauvilleCity_GameCorner_Text_LuckOnlyLastSoLongTakeCoins, MSGBOX_DEFAULT @@ -535,8 +504,7 @@ MauvilleCity_GameCorner_EventScript_Woman:: MauvilleCity_GameCorner_EventScript_SlotMachine0:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 0 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -546,8 +514,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine0:: MauvilleCity_GameCorner_EventScript_SlotMachine1:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 1 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -557,8 +524,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine1:: MauvilleCity_GameCorner_EventScript_SlotMachine2:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 2 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -568,8 +534,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine2:: MauvilleCity_GameCorner_EventScript_SlotMachine3:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 3 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -579,8 +544,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine3:: MauvilleCity_GameCorner_EventScript_SlotMachine4:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 4 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -590,8 +554,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine4:: MauvilleCity_GameCorner_EventScript_SlotMachine5:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 5 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -601,8 +564,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine5:: MauvilleCity_GameCorner_EventScript_SlotMachine6:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 6 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -612,8 +574,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine6:: MauvilleCity_GameCorner_EventScript_SlotMachine7:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 7 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -623,8 +584,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine7:: MauvilleCity_GameCorner_EventScript_SlotMachine8:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 8 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -634,8 +594,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine8:: MauvilleCity_GameCorner_EventScript_SlotMachine9:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 9 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -645,8 +604,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine9:: MauvilleCity_GameCorner_EventScript_SlotMachine10:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 10 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT @@ -656,8 +614,7 @@ MauvilleCity_GameCorner_EventScript_SlotMachine10:: MauvilleCity_GameCorner_EventScript_SlotMachine11:: lockall checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 11 specialvar VAR_RESULT, GetSlotMachineId playslotmachine VAR_RESULT diff --git a/data/maps/MauvilleCity_Gym/scripts.inc b/data/maps/MauvilleCity_Gym/scripts.inc index d446e44b9afc..de924d7d93c3 100644 --- a/data/maps/MauvilleCity_Gym/scripts.inc +++ b/data/maps/MauvilleCity_Gym/scripts.inc @@ -76,11 +76,9 @@ MauvilleCity_Gym_EventScript_DeactivatePuzzle:: MauvilleCity_Gym_EventScript_Wattson:: trainerbattle_single TRAINER_WATTSON_1, MauvilleCity_Gym_Text_WattsonIntro, MauvilleCity_Gym_Text_WattsonDefeat, MauvilleCity_Gym_EventScript_WattsonDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_Gym_EventScript_WattsonRematch + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_Gym_EventScript_WattsonRematch goto_if_unset FLAG_RECEIVED_TM34, MauvilleCity_Gym_EventScript_GiveShockWave2 - compare VAR_NEW_MAUVILLE_STATE, 2 - goto_if_eq MauvilleCity_Gym_EventScript_CompletedNewMauville + goto_if_eq VAR_NEW_MAUVILLE_STATE, 2, MauvilleCity_Gym_EventScript_CompletedNewMauville msgbox MauvilleCity_Gym_Text_WattsonPostBattle, MSGBOX_DEFAULT release end @@ -95,8 +93,7 @@ MauvilleCity_Gym_EventScript_WattsonDefeated:: setflag FLAG_DEFEATED_MAUVILLE_GYM setflag FLAG_BADGE03_GET addvar VAR_PETALBURG_GYM_STATE, 1 - compare VAR_PETALBURG_GYM_STATE, 6 - call_if_eq Common_EventScript_ReadyPetalburgGymForBattle + call_if_eq VAR_PETALBURG_GYM_STATE, 6, Common_EventScript_ReadyPetalburgGymForBattle setvar VAR_0x8008, 3 call Common_EventScript_SetGymTrainers special MauvilleGymDeactivatePuzzle @@ -116,8 +113,7 @@ MauvilleCity_Gym_EventScript_WattsonDefeated:: MauvilleCity_Gym_EventScript_GiveShockWave2:: giveitem ITEM_TM34 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox MauvilleCity_Gym_Text_ExplainShockWave, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM34 release @@ -125,8 +121,7 @@ MauvilleCity_Gym_EventScript_GiveShockWave2:: MauvilleCity_Gym_EventScript_GiveShockWave:: giveitem ITEM_TM34 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox MauvilleCity_Gym_Text_ExplainShockWave, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM34 return @@ -144,8 +139,7 @@ MauvilleCity_Gym_EventScript_WattsonRematch:: MauvilleCity_Gym_EventScript_Switch1:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing - compare VAR_MAUVILLE_GYM_STATE, 1 - goto_if_eq MauvilleCity_Gym_EventScript_SwitchDoNothing + goto_if_eq VAR_MAUVILLE_GYM_STATE, 1, MauvilleCity_Gym_EventScript_SwitchDoNothing setvar VAR_MAUVILLE_GYM_STATE, 1 setvar VAR_0x8004, 0 goto MauvilleCity_Gym_EventScript_PressFloorSwitch @@ -154,8 +148,7 @@ MauvilleCity_Gym_EventScript_Switch1:: MauvilleCity_Gym_EventScript_Switch2:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing - compare VAR_MAUVILLE_GYM_STATE, 2 - goto_if_eq MauvilleCity_Gym_EventScript_SwitchDoNothing + goto_if_eq VAR_MAUVILLE_GYM_STATE, 2, MauvilleCity_Gym_EventScript_SwitchDoNothing setvar VAR_MAUVILLE_GYM_STATE, 2 setvar VAR_0x8004, 1 goto MauvilleCity_Gym_EventScript_PressFloorSwitch @@ -164,8 +157,7 @@ MauvilleCity_Gym_EventScript_Switch2:: MauvilleCity_Gym_EventScript_Switch3:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing - compare VAR_MAUVILLE_GYM_STATE, 3 - goto_if_eq MauvilleCity_Gym_EventScript_SwitchDoNothing + goto_if_eq VAR_MAUVILLE_GYM_STATE, 3, MauvilleCity_Gym_EventScript_SwitchDoNothing setvar VAR_MAUVILLE_GYM_STATE, 3 setvar VAR_0x8004, 2 goto MauvilleCity_Gym_EventScript_PressFloorSwitch @@ -174,8 +166,7 @@ MauvilleCity_Gym_EventScript_Switch3:: MauvilleCity_Gym_EventScript_Switch4:: lockall goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_SwitchDoNothing - compare VAR_MAUVILLE_GYM_STATE, 4 - goto_if_eq MauvilleCity_Gym_EventScript_SwitchDoNothing + goto_if_eq VAR_MAUVILLE_GYM_STATE, 4, MauvilleCity_Gym_EventScript_SwitchDoNothing setvar VAR_MAUVILLE_GYM_STATE, 4 setvar VAR_0x8004, 3 goto MauvilleCity_Gym_EventScript_PressFloorSwitch diff --git a/data/maps/MauvilleCity_House2/scripts.inc b/data/maps/MauvilleCity_House2/scripts.inc index 441a4f1658c9..193e0c04ce14 100644 --- a/data/maps/MauvilleCity_House2/scripts.inc +++ b/data/maps/MauvilleCity_House2/scripts.inc @@ -7,8 +7,7 @@ MauvilleCity_House2_EventScript_Woman:: goto_if_set FLAG_RECEIVED_COIN_CASE, MauvilleCity_House2_EventScript_ReceivedCoinCase msgbox MauvilleCity_House2_Text_BuyHarborMailAtSlateport, MSGBOX_DEFAULT checkitem ITEM_HARBOR_MAIL - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_House2_EventScript_AskToTradeForHarborMail + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_House2_EventScript_AskToTradeForHarborMail release end @@ -19,10 +18,8 @@ MauvilleCity_House2_EventScript_AskToTradeForHarborMail:: applymovement VAR_LAST_TALKED, Common_Movement_Delay48 waitmovement 0 msgbox MauvilleCity_House2_Text_TradeHarborMailForCoinCase, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_House2_EventScript_AcceptTrade - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_House2_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, YES, MauvilleCity_House2_EventScript_AcceptTrade + goto_if_eq VAR_RESULT, NO, MauvilleCity_House2_EventScript_DeclineTrade end MauvilleCity_House2_EventScript_AcceptTrade:: diff --git a/data/maps/MeteorFalls_1F_2R/scripts.inc b/data/maps/MeteorFalls_1F_2R/scripts.inc index 706d362bed63..4e3e9b321baa 100644 --- a/data/maps/MeteorFalls_1F_2R/scripts.inc +++ b/data/maps/MeteorFalls_1F_2R/scripts.inc @@ -4,8 +4,7 @@ MeteorFalls_1F_2R_MapScripts:: MeteorFalls_1F_2R_EventScript_Nicolas:: trainerbattle_single TRAINER_NICOLAS_1, MeteorFalls_1F_2R_Text_NicolasIntro, MeteorFalls_1F_2R_Text_NicolasDefeat, MeteorFalls_1F_2R_EventScript_RegisterNicolas specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MeteorFalls_1F_2R_EventScript_RematchNicolas + goto_if_eq VAR_RESULT, TRUE, MeteorFalls_1F_2R_EventScript_RematchNicolas msgbox MeteorFalls_1F_2R_Text_NicolasPostBattle, MSGBOX_DEFAULT release end @@ -26,8 +25,7 @@ MeteorFalls_1F_2R_EventScript_RematchNicolas:: MeteorFalls_1F_2R_EventScript_John:: trainerbattle_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JohnIntro, MeteorFalls_1F_2R_Text_JohnDefeat, MeteorFalls_1F_2R_Text_JohnNotEnoughMons, MeteorFalls_1F_2R_EventScript_RegisterJohn specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MeteorFalls_1F_2R_EventScript_RematchJohn + goto_if_eq VAR_RESULT, TRUE, MeteorFalls_1F_2R_EventScript_RematchJohn msgbox MeteorFalls_1F_2R_Text_JohnPostBattle, MSGBOX_DEFAULT release end @@ -46,8 +44,7 @@ MeteorFalls_1F_2R_EventScript_RematchJohn:: MeteorFalls_1F_2R_EventScript_Jay:: trainerbattle_double TRAINER_JOHN_AND_JAY_1, MeteorFalls_1F_2R_Text_JayIntro, MeteorFalls_1F_2R_Text_JayDefeat, MeteorFalls_1F_2R_Text_JayNotEnoughMons, MeteorFalls_1F_2R_EventScript_RegisterJay specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MeteorFalls_1F_2R_EventScript_RematchJay + goto_if_eq VAR_RESULT, TRUE, MeteorFalls_1F_2R_EventScript_RematchJay msgbox MeteorFalls_1F_2R_Text_JayPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/MirageTower_4F/scripts.inc b/data/maps/MirageTower_4F/scripts.inc index 8d88c699042a..61bde877c512 100644 --- a/data/maps/MirageTower_4F/scripts.inc +++ b/data/maps/MirageTower_4F/scripts.inc @@ -8,8 +8,7 @@ MirageTower_4F_EventScript_RootFossil:: lock faceplayer msgbox MirageTower_4F_Text_TakeRootFossil, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MirageTower_4F_EventScript_LeaveRootFossil + goto_if_eq VAR_RESULT, NO, MirageTower_4F_EventScript_LeaveRootFossil giveitem ITEM_ROOT_FOSSIL closemessage setflag FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL @@ -29,8 +28,7 @@ MirageTower_4F_EventScript_ClawFossil:: lock faceplayer msgbox MirageTower_4F_Text_TakeClawFossil, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MirageTower_4F_EventScript_LeaveClawFossil + goto_if_eq VAR_RESULT, NO, MirageTower_4F_EventScript_LeaveClawFossil giveitem ITEM_CLAW_FOSSIL closemessage setflag FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL diff --git a/data/maps/MossdeepCity/scripts.inc b/data/maps/MossdeepCity/scripts.inc index f5af3a391bf3..836490cbddb2 100644 --- a/data/maps/MossdeepCity/scripts.inc +++ b/data/maps/MossdeepCity/scripts.inc @@ -233,12 +233,10 @@ MossdeepCity_EventScript_KingsRockBoy:: faceplayer goto_if_set FLAG_RECEIVED_KINGS_ROCK, MossdeepCity_EventScript_ReceivedKingsRock msgbox MossdeepCity_Text_WantKingsRockStevenGaveMe, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_EventScript_DeclineKingsRock + goto_if_eq VAR_RESULT, NO, MossdeepCity_EventScript_DeclineKingsRock msgbox MossdeepCity_Text_YouCanKeepIt, MSGBOX_DEFAULT giveitem ITEM_KINGS_ROCK - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_KINGS_ROCK release end @@ -262,10 +260,8 @@ MossdeepCity_EventScript_Scott:: faceplayer msgbox MossdeepCity_Text_ScottSomethingWrongWithTown, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq MossdeepCity_EventScript_ScottExitNorth - compare VAR_FACING, DIR_EAST - call_if_eq MossdeepCity_EventScript_ScottExitEast + 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 release diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc index 7b63de2e7365..b47011d680e3 100644 --- a/data/maps/MossdeepCity_Gym/scripts.inc +++ b/data/maps/MossdeepCity_Gym/scripts.inc @@ -51,8 +51,7 @@ MossdeepCity_Gym_EventScript_SetSwitch4Metatiles:: MossdeepCity_Gym_EventScript_TateAndLiza:: trainerbattle_double TRAINER_TATE_AND_LIZA_1, MossdeepCity_Gym_Text_TateAndLizaIntro, MossdeepCity_Gym_Text_TateAndLizaDefeat, MossdeepCity_Gym_Text_TateAndLizaNeedTwoMons, MossdeepCity_Gym_EventScript_TateAndLizaDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MossdeepCity_Gym_EventScript_TateAndLizaRematch + goto_if_eq VAR_RESULT, TRUE, MossdeepCity_Gym_EventScript_TateAndLizaRematch goto_if_unset FLAG_RECEIVED_TM04, MossdeepCity_Gym_EventScript_GiveCalmMind2 msgbox MossdeepCity_Gym_Text_TateAndLizaPostBattle, MSGBOX_DEFAULT release @@ -92,8 +91,7 @@ MossdeepCity_Gym_EventScript_TateAndLizaDefeated:: MossdeepCity_Gym_EventScript_GiveCalmMind2:: giveitem ITEM_TM04 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox MossdeepCity_Gym_Text_ExplainCalmMind, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM04 release @@ -101,8 +99,7 @@ MossdeepCity_Gym_EventScript_GiveCalmMind2:: MossdeepCity_Gym_EventScript_GiveCalmMind:: giveitem ITEM_TM04 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox MossdeepCity_Gym_Text_ExplainCalmMind, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM04 return diff --git a/data/maps/MossdeepCity_House1/scripts.inc b/data/maps/MossdeepCity_House1/scripts.inc index 1bb1dede6fce..433defa66635 100644 --- a/data/maps/MossdeepCity_House1/scripts.inc +++ b/data/maps/MossdeepCity_House1/scripts.inc @@ -7,8 +7,7 @@ MossdeepCity_House1_EventScript_BlackBelt:: bufferleadmonspeciesname STR_VAR_1 msgbox MossdeepCity_House1_Text_HmmYourPokemon, MSGBOX_DEFAULT specialvar VAR_RESULT, GetPokeblockNameByMonNature - compare VAR_RESULT, 0 - goto_if_eq MossdeepCity_House1_EventScript_NeutralNature + goto_if_eq VAR_RESULT, 0, MossdeepCity_House1_EventScript_NeutralNature msgbox MossdeepCity_House1_Text_ItLikesXPokeblocks, MSGBOX_DEFAULT release end diff --git a/data/maps/MossdeepCity_House2/scripts.inc b/data/maps/MossdeepCity_House2/scripts.inc index 5f568ac772bd..56a8381963ef 100644 --- a/data/maps/MossdeepCity_House2/scripts.inc +++ b/data/maps/MossdeepCity_House2/scripts.inc @@ -21,10 +21,8 @@ MossdeepCity_House2_EventScript_Wingull:: closemessage setflag FLAG_WINGULL_DELIVERED_MAIL clearflag FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL - compare VAR_FACING, DIR_NORTH - call_if_eq MossdeepCity_House2_EventScript_WingullExitNorth - compare VAR_FACING, DIR_WEST - call_if_eq MossdeepCity_House2_EventScript_WingullExitWest + 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 release end diff --git a/data/maps/MossdeepCity_House3/scripts.inc b/data/maps/MossdeepCity_House3/scripts.inc index 51df05fe040a..73b0cc26e934 100644 --- a/data/maps/MossdeepCity_House3/scripts.inc +++ b/data/maps/MossdeepCity_House3/scripts.inc @@ -6,8 +6,7 @@ MossdeepCity_House3_EventScript_SuperRodFisherman:: faceplayer goto_if_set FLAG_RECEIVED_SUPER_ROD, MossdeepCity_House3_EventScript_ReceivedSuperRod msgbox MossdeepCity_House3_Text_YouWantSuperRod, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_House3_EventScript_DeclineSuperRod + goto_if_eq VAR_RESULT, NO, MossdeepCity_House3_EventScript_DeclineSuperRod msgbox MossdeepCity_House3_Text_SuperRodIsSuper, MSGBOX_DEFAULT giveitem ITEM_SUPER_ROD setflag FLAG_RECEIVED_SUPER_ROD diff --git a/data/maps/MossdeepCity_House4/scripts.inc b/data/maps/MossdeepCity_House4/scripts.inc index 7b7348f4e650..8d0046857a5b 100644 --- a/data/maps/MossdeepCity_House4/scripts.inc +++ b/data/maps/MossdeepCity_House4/scripts.inc @@ -18,8 +18,7 @@ MossdeepCity_House4_EventScript_NinjaBoy:: lock faceplayer special CheckPlayerHasSecretBase - compare VAR_RESULT, FALSE - goto_if_eq MossdeepCity_House4_EventScript_NoSecretBase + goto_if_eq VAR_RESULT, FALSE, MossdeepCity_House4_EventScript_NoSecretBase special GetSecretBaseNearbyMapName msgbox MossdeepCity_House4_Text_YouMadeSecretBaseNearX, MSGBOX_DEFAULT release diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc index 4177c73ac1f2..263b07105679 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc @@ -11,8 +11,7 @@ MossdeepCity_SpaceCenter_1F_MapScripts:: .byte 0 MossdeepCity_SpaceCenter_1F_OnTransition: - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma end MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: @@ -25,12 +24,9 @@ MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: setobjectxyperm LOCALID_SCIENTIST_1, 3, 4 setobjectmovementtype LOCALID_SCIENTIST_1, MOVEMENT_TYPE_FACE_RIGHT setobjectmovementtype LOCALID_SCIENTIST_2, MOVEMENT_TYPE_FACE_RIGHT - compare VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft - compare VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown - compare VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight + 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:: @@ -47,8 +43,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight:: end MossdeepCity_SpaceCenter_1F_OnLoad: - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_le MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote + goto_if_le VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote end MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: @@ -58,15 +53,12 @@ MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: lock faceplayer - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma dotimebasedevents specialvar VAR_RESULT, GetWeekCount buffernumberstring STR_VAR_1, VAR_RESULT - compare VAR_RESULT, 0 - call_if_eq MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet - compare VAR_RESULT, 1 - call_if_ge MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber + call_if_eq VAR_RESULT, 0, MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet + call_if_ge VAR_RESULT, 1, MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 @@ -85,10 +77,8 @@ MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: dotimebasedevents specialvar VAR_RESULT, GetWeekCount buffernumberstring STR_VAR_1, VAR_RESULT - compare VAR_RESULT, 0 - call_if_eq MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma - compare VAR_RESULT, 1 - call_if_ge MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma + call_if_eq VAR_RESULT, 0, MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma + call_if_ge VAR_RESULT, 1, MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 @@ -106,8 +96,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma:: MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: lock faceplayer - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma msgbox MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection, MSGBOX_DEFAULT release end @@ -122,13 +111,11 @@ MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma:: MossdeepCity_SpaceCenter_1F_EventScript_SunStoneMan:: lock faceplayer - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStone msgbox MossdeepCity_SpaceCenter_1F_Text_FoundThisYouCanHaveIt, MSGBOX_DEFAULT giveitem ITEM_SUN_STONE - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP msgbox MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers, MSGBOX_DEFAULT release @@ -143,8 +130,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis, MSGBOX_DEFAULT giveitem ITEM_SUN_STONE - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight @@ -163,10 +149,8 @@ MossdeepCity_SpaceCenter_1F_EventScript_Woman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_lt MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma + goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal goto MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma end @@ -184,10 +168,8 @@ MossdeepCity_SpaceCenter_1F_EventScript_OldMan:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_lt MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma + goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal goto MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma end diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc index 02278a13b9cc..4a22bf8eeaeb 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc +++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc @@ -15,10 +15,8 @@ MossdeepCity_SpaceCenter_2F_MapScripts:: .byte 0 MossdeepCity_SpaceCenter_2F_OnTransition: - compare VAR_MOSSDEEP_CITY_STATE, 2 - call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians - compare VAR_MOSSDEEP_SPACE_CENTER_STATE, 2 - call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts + call_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians + call_if_eq VAR_MOSSDEEP_SPACE_CENTER_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts end MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians:: @@ -48,8 +46,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay48 waitmovement 0 msgbox MossdeepCity_SpaceCenter_2F_Text_YoureOutnumberedTakeUsOn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts + 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 @@ -109,10 +106,8 @@ MossdeepCity_SpaceCenter_2F_EventScript_Scientist:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_lt MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma + goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_ScientistNormal goto MossdeepCity_SpaceCenter_2F_EventScript_ScientistMagma end @@ -130,10 +125,8 @@ MossdeepCity_SpaceCenter_2F_EventScript_Gentleman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_lt MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma + goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_GentlemanNormal goto MossdeepCity_SpaceCenter_2F_EventScript_GentlemanMagma end @@ -151,10 +144,8 @@ MossdeepCity_SpaceCenter_2F_EventScript_RichBoy:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma - compare VAR_MOSSDEEP_CITY_STATE, 2 - goto_if_lt MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal + goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma + goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_2F_EventScript_RichBoyNormal goto MossdeepCity_SpaceCenter_2F_EventScript_RichBoyMagma end @@ -246,8 +237,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt:: applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer waitmovement 0 msgbox MossdeepCity_SpaceCenter_2F_Text_StevenAreYouReadyToBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle + goto_if_eq VAR_RESULT, YES, MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle msgbox MossdeepCity_SpaceCenter_2F_Text_StevenHurryGetReadyQuickly, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown @@ -262,8 +252,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate - compare VAR_RESULT, 0 - goto_if_ne MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle + goto_if_ne VAR_RESULT, 0, MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle special LoadPlayerParty goto MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt @@ -358,10 +347,8 @@ MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer:: MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall:: lockall checkplayergender - compare VAR_RESULT, MALE - call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_MayRayquazaCall - compare VAR_RESULT, FEMALE - call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_BrendanRayquazaCall + call_if_eq VAR_RESULT, MALE, MossdeepCity_SpaceCenter_2F_EventScript_MayRayquazaCall + call_if_eq VAR_RESULT, FEMALE, MossdeepCity_SpaceCenter_2F_EventScript_BrendanRayquazaCall closemessage clearflag FLAG_DEFEATED_MAGMA_SPACE_CENTER releaseall diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index a5a3d0980453..aac12ec2affb 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -16,8 +16,7 @@ MossdeepCity_StevensHouse_EventScript_HideStevensNote:: return MossdeepCity_StevensHouse_OnTransition: - compare VAR_STEVENS_HOUSE_STATE, 2 - call_if_eq MossdeepCity_StevensHouse_EventScript_SetStevenPos + call_if_eq VAR_STEVENS_HOUSE_STATE, 2, MossdeepCity_StevensHouse_EventScript_SetStevenPos end MossdeepCity_StevensHouse_EventScript_SetStevenPos:: @@ -76,8 +75,7 @@ MossdeepCity_StevensHouse_Movement_StevenReturn: MossdeepCity_StevensHouse_EventScript_BeldumPokeball:: lockall msgbox MossdeepCity_StevensHouse_Text_TakeBallContainingBeldum, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_StevensHouse_EventScript_LeaveBeldum + goto_if_eq VAR_RESULT, NO, MossdeepCity_StevensHouse_EventScript_LeaveBeldum goto MossdeepCity_StevensHouse_EventScript_GiveBeldum end @@ -89,18 +87,15 @@ MossdeepCity_StevensHouse_EventScript_LeaveBeldum:: MossdeepCity_StevensHouse_EventScript_GiveBeldum:: setvar VAR_TEMP_1, SPECIES_BELDUM givemon SPECIES_BELDUM, 5, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq MossdeepCity_StevensHouse_EventScript_SendBeldumParty - compare VAR_RESULT, 1 - goto_if_eq MossdeepCity_StevensHouse_EventScript_SendBeldumPC + goto_if_eq VAR_RESULT, 0, MossdeepCity_StevensHouse_EventScript_SendBeldumParty + goto_if_eq VAR_RESULT, 1, MossdeepCity_StevensHouse_EventScript_SendBeldumPC goto Common_EventScript_NoMoreRoomForPokemon end MossdeepCity_StevensHouse_EventScript_SendBeldumParty:: call MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_StevensHouse_EventScript_ReceivedBeldum + goto_if_eq VAR_RESULT, NO, MossdeepCity_StevensHouse_EventScript_ReceivedBeldum call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto MossdeepCity_StevensHouse_EventScript_ReceivedBeldum @@ -109,8 +104,7 @@ MossdeepCity_StevensHouse_EventScript_SendBeldumParty:: MossdeepCity_StevensHouse_EventScript_SendBeldumPC:: call MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC + goto_if_eq VAR_RESULT, NO, MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC call Common_EventScript_NameReceivedBoxMon goto MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC end diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc index 7081e54de61a..1931633258c0 100644 --- a/data/maps/MtChimney/scripts.inc +++ b/data/maps/MtChimney/scripts.inc @@ -63,18 +63,14 @@ MtChimney_EventScript_Maxie:: fadescreen FADE_FROM_BLACK setobjectxyperm LOCALID_ARCHIE, 10, 12 addobject LOCALID_ARCHIE - compare VAR_FACING, DIR_EAST - call_if_eq MtChimney_EventScript_ArchieApproachPlayerEast - compare VAR_FACING, DIR_NORTH - call_if_eq MtChimney_EventScript_ArchieApproachPlayerNorth + 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 waitmovement 0 msgbox MtChimney_Text_ArchieThankYou, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_EAST - call_if_eq MtChimney_EventScript_ArchieExitEast - compare VAR_FACING, DIR_NORTH - call_if_eq MtChimney_EventScript_ArchieExitNorth + call_if_eq VAR_FACING, DIR_EAST, MtChimney_EventScript_ArchieExitEast + call_if_eq VAR_FACING, DIR_NORTH, MtChimney_EventScript_ArchieExitNorth removeobject LOCALID_ARCHIE setflag FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA setflag FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY @@ -109,18 +105,14 @@ MtChimney_EventScript_LavaCookieLady:: faceplayer showmoneybox 0, 0 msgbox MtChimney_Text_LavaCookiesJust200, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MtChimney_EventScript_DeclineLavaCookie + goto_if_eq VAR_RESULT, NO, MtChimney_EventScript_DeclineLavaCookie checkmoney 200 - compare VAR_RESULT, FALSE - goto_if_eq MtChimney_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, FALSE, MtChimney_EventScript_NotEnoughMoney msgbox MtChimney_Text_ThankYouDear, MSGBOX_DEFAULT checkitemspace ITEM_LAVA_COOKIE - compare VAR_RESULT, TRUE - call_if_eq MtChimney_EventScript_RemoveMoney + call_if_eq VAR_RESULT, TRUE, MtChimney_EventScript_RemoveMoney giveitem ITEM_LAVA_COOKIE - compare VAR_RESULT, FALSE - goto_if_eq MtChimney_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, MtChimney_EventScript_BagIsFull hidemoneybox release end @@ -453,8 +445,7 @@ MtChimney_EventScript_MeteoriteMachine:: goto_if_unset FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, MtChimney_EventScript_MachineOn goto_if_set FLAG_RECEIVED_METEORITE, MtChimney_EventScript_MachineOff msgbox MtChimney_Text_RemoveTheMeteorite, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MtChimney_EventScript_LeaveMeteoriteAlone + goto_if_eq VAR_RESULT, NO, MtChimney_EventScript_LeaveMeteoriteAlone msgbox MtChimney_Text_PlayerRemovedMeteorite, MSGBOX_DEFAULT giveitem ITEM_METEORITE setflag FLAG_RECEIVED_METEORITE @@ -483,8 +474,7 @@ MtChimney_EventScript_RouteSign:: MtChimney_EventScript_Shelby:: trainerbattle_single TRAINER_SHELBY_1, MtChimney_Text_ShelbyIntro, MtChimney_Text_ShelbyDefeat, MtChimney_EventScript_DefeatedShelby specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MtChimney_EventScript_RematchShelby + goto_if_eq VAR_RESULT, TRUE, MtChimney_EventScript_RematchShelby msgbox MtChimney_Text_ShelbyPostBattle, MSGBOX_DEFAULT release end @@ -525,8 +515,7 @@ MtChimney_EventScript_Grunt1:: MtChimney_EventScript_Sawyer:: trainerbattle_single TRAINER_SAWYER_1, MtChimney_Text_SawyerIntro, MtChimney_Text_SawyerDefeat, MtChimney_EventScript_SawyerDefeated specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MtChimney_EventScript_SawyerRematch + goto_if_eq VAR_RESULT, TRUE, MtChimney_EventScript_SawyerRematch msgbox MtChimney_Text_SawyerPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/MtChimney_CableCarStation/scripts.inc b/data/maps/MtChimney_CableCarStation/scripts.inc index a3a2b360e028..b3e36a496aee 100644 --- a/data/maps/MtChimney_CableCarStation/scripts.inc +++ b/data/maps/MtChimney_CableCarStation/scripts.inc @@ -6,8 +6,7 @@ MtChimney_CableCarStation_MapScripts:: .byte 0 MtChimney_CableCarStation_OnTransition: - compare VAR_CABLE_CAR_STATION_STATE, 1 - call_if_eq MtChimney_CableCarStation_EventScript_MoveAttendantAside + call_if_eq VAR_CABLE_CAR_STATION_STATE, 1, MtChimney_CableCarStation_EventScript_MoveAttendantAside end MtChimney_CableCarStation_EventScript_MoveAttendantAside:: @@ -34,10 +33,8 @@ MtChimney_CableCarStation_EventScript_Attendant:: lock faceplayer msgbox MtChimney_CableCarStation_Text_CableCarReadyGetOn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MtChimney_CableCarStation_EventScript_RideCableCar - compare VAR_RESULT, NO - goto_if_eq MtChimney_CableCarStation_EventScript_DeclineRide + goto_if_eq VAR_RESULT, YES, MtChimney_CableCarStation_EventScript_RideCableCar + goto_if_eq VAR_RESULT, NO, MtChimney_CableCarStation_EventScript_DeclineRide end MtChimney_CableCarStation_EventScript_RideCableCar:: diff --git a/data/maps/MtPyre_1F/scripts.inc b/data/maps/MtPyre_1F/scripts.inc index 1354b2ac1bce..f97149b050c8 100644 --- a/data/maps/MtPyre_1F/scripts.inc +++ b/data/maps/MtPyre_1F/scripts.inc @@ -7,8 +7,7 @@ MtPyre_1F_EventScript_CleanseTagWoman:: goto_if_set FLAG_RECEIVED_CLEANSE_TAG, MtPyre_1F_EventScript_ReceivedCleanseTag msgbox MtPyre_1F_Text_TakeThisForYourOwnGood, MSGBOX_DEFAULT giveitem ITEM_CLEANSE_TAG - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_CLEANSE_TAG release end diff --git a/data/maps/MtPyre_3F/scripts.inc b/data/maps/MtPyre_3F/scripts.inc index b91a589bc099..ff15f9939300 100644 --- a/data/maps/MtPyre_3F/scripts.inc +++ b/data/maps/MtPyre_3F/scripts.inc @@ -14,8 +14,7 @@ MtPyre_3F_EventScript_Kayla:: MtPyre_3F_EventScript_Gabrielle:: trainerbattle_single TRAINER_GABRIELLE_1, MtPyre_3F_Text_GabrielleIntro, MtPyre_3F_Text_GabrielleDefeat, MtPyre_3F_EventScript_RegisterGabrielle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MtPyre_3F_EventScript_RematchGabrielle + goto_if_eq VAR_RESULT, TRUE, MtPyre_3F_EventScript_RematchGabrielle msgbox MtPyre_3F_Text_GabriellePostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/MtPyre_6F/scripts.inc b/data/maps/MtPyre_6F/scripts.inc index 4b7df8e7cf61..4de3f6e8b12b 100644 --- a/data/maps/MtPyre_6F/scripts.inc +++ b/data/maps/MtPyre_6F/scripts.inc @@ -4,8 +4,7 @@ MtPyre_6F_MapScripts:: MtPyre_6F_EventScript_Valerie:: trainerbattle_single TRAINER_VALERIE_1, MtPyre_6F_Text_ValerieIntro, MtPyre_6F_Text_ValerieDefeat, MtPyre_6F_EventScript_RegisterValerie specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq MtPyre_6F_EventScript_RematchValerie + goto_if_eq VAR_RESULT, TRUE, MtPyre_6F_EventScript_RematchValerie msgbox MtPyre_6F_Text_ValeriePostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/MtPyre_Exterior/scripts.inc b/data/maps/MtPyre_Exterior/scripts.inc index 01279d645c87..83bced7359a6 100644 --- a/data/maps/MtPyre_Exterior/scripts.inc +++ b/data/maps/MtPyre_Exterior/scripts.inc @@ -8,8 +8,7 @@ MtPyre_Exterior_OnTransition: MtPyre_Exterior_EventScript_CheckEnterFromSummit:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_TEMP_1, 12 - goto_if_lt MtPyre_Exterior_EventScript_EnterFromSummit + goto_if_lt VAR_TEMP_1, 12, MtPyre_Exterior_EventScript_EnterFromSummit return MtPyre_Exterior_EventScript_EnterFromSummit:: diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc index cd58627aff9c..3de60df3f2fb 100644 --- a/data/maps/MtPyre_Summit/scripts.inc +++ b/data/maps/MtPyre_Summit/scripts.inc @@ -11,8 +11,7 @@ MtPyre_Summit_MapScripts:: .byte 0 MtPyre_Summit_OnTransition: - compare VAR_MT_PYRE_STATE, 2 - call_if_eq MtPyre_Summit_EventScript_SetArchieMaxiePositions + call_if_eq VAR_MT_PYRE_STATE, 2, MtPyre_Summit_EventScript_SetArchieMaxiePositions end MtPyre_Summit_EventScript_SetArchieMaxiePositions:: @@ -45,12 +44,9 @@ MtPyre_Summit_EventScript_TeamAquaExits:: applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown waitmovement 0 delay 50 - compare VAR_0x8008, 0 - call_if_eq MtPyre_Summit_EventScript_ArchieFacePlayer0 - compare VAR_0x8008, 1 - call_if_eq MtPyre_Summit_EventScript_ArchieFacePlayer1 - compare VAR_0x8008, 2 - call_if_eq MtPyre_Summit_EventScript_ArchieFacePlayer2 + call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_ArchieFacePlayer0 + call_if_eq VAR_0x8008, 1, MtPyre_Summit_EventScript_ArchieFacePlayer1 + call_if_eq VAR_0x8008, 2, MtPyre_Summit_EventScript_ArchieFacePlayer2 msgbox MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo, MSGBOX_DEFAULT closemessage fadescreen FADE_TO_BLACK @@ -65,12 +61,9 @@ MtPyre_Summit_EventScript_TeamAquaExits:: fadescreen FADE_FROM_BLACK delay 20 setvar VAR_MT_PYRE_STATE, 1 - compare VAR_0x8008, 0 - call_if_eq MtPyre_Summit_EventScript_OldLadyApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq MtPyre_Summit_EventScript_OldLadyApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq MtPyre_Summit_EventScript_OldLadyApproachPlayer2 + call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_OldLadyApproachPlayer0 + call_if_eq VAR_0x8008, 1, MtPyre_Summit_EventScript_OldLadyApproachPlayer1 + call_if_eq VAR_0x8008, 2, MtPyre_Summit_EventScript_OldLadyApproachPlayer2 msgbox MtPyre_Summit_Text_BothOrbsTakenMagmaLeftThis, MSGBOX_DEFAULT giveitem ITEM_MAGMA_EMBLEM setflag FLAG_RECEIVED_RED_OR_BLUE_ORB @@ -142,19 +135,15 @@ MtPyre_Summit_EventScript_OldMan:: faceplayer goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, MtPyre_Summit_EventScript_OldManAfterRayquaza msgbox MtPyre_Summit_Text_WillYouHearOutMyTale, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq MtPyre_Summit_EventScript_OldManTale - compare VAR_RESULT, NO - call_if_eq MtPyre_Summit_EventScript_DeclineOldManTale + call_if_eq VAR_RESULT, YES, MtPyre_Summit_EventScript_OldManTale + call_if_eq VAR_RESULT, NO, MtPyre_Summit_EventScript_DeclineOldManTale release end MtPyre_Summit_EventScript_OldManAfterRayquaza:: msgbox MtPyre_Summit_Text_HearTheNewLegendOfHoenn, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq MtPyre_Summit_EventScript_OldManNewTale - compare VAR_RESULT, NO - call_if_eq MtPyre_Summit_EventScript_DeclineOldManTale + call_if_eq VAR_RESULT, YES, MtPyre_Summit_EventScript_OldManNewTale + call_if_eq VAR_RESULT, NO, MtPyre_Summit_EventScript_DeclineOldManTale release end @@ -174,8 +163,7 @@ MtPyre_Summit_EventScript_OldLady:: lock faceplayer goto_if_set FLAG_RETURNED_RED_OR_BLUE_ORB, MtPyre_Summit_EventScript_OldLadyAfterOrbsReturned - compare VAR_MT_PYRE_STATE, 3 - call_if_ge MtPyre_Summit_EventScript_OldLadyOrbsReturned + call_if_ge VAR_MT_PYRE_STATE, 3, MtPyre_Summit_EventScript_OldLadyOrbsReturned goto_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, MtPyre_Summit_EventScript_OldLadyLegendariesAwake msgbox MtPyre_Summit_Text_OrbsHaveBeenTaken, MSGBOX_DEFAULT release @@ -219,32 +207,23 @@ MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs:: applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 delay 60 - compare VAR_0x8008, 0 - call_if_eq MtPyre_Summit_EventScript_ArchieMaxieBeginExit0 - compare VAR_0x8008, 1 - call_if_eq MtPyre_Summit_EventScript_ArchieMaxieBeginExit1 - compare VAR_0x8008, 2 - call_if_eq MtPyre_Summit_EventScript_ArchieMaxieBeginExit2 + 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 waitmovement 0 applymovement LOCALID_MAXIE, Common_Movement_Delay48 waitmovement 0 delay 30 - compare VAR_0x8008, 0 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachPlayer2 + call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_MaxieApproachPlayer0 + call_if_eq VAR_0x8008, 1, MtPyre_Summit_EventScript_MaxieApproachPlayer1 + call_if_eq VAR_0x8008, 2, MtPyre_Summit_EventScript_MaxieApproachPlayer2 msgbox MtPyre_Summit_Text_MaxieSilence, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachArchie0 - compare VAR_0x8008, 1 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachArchie1 - compare VAR_0x8008, 2 - call_if_eq MtPyre_Summit_EventScript_MaxieApproachArchie2 + call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_MaxieApproachArchie0 + 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 diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc index d79c00c687b7..f6687a36f5a6 100644 --- a/data/maps/NavelRock_Bottom/scripts.inc +++ b/data/maps/NavelRock_Bottom/scripts.inc @@ -25,8 +25,7 @@ NavelRock_Bottom_OnResume: NavelRock_Bottom_EventScript_TryRemoveLugia:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_LUGIA return @@ -63,12 +62,9 @@ NavelRock_Bottom_EventScript_Lugia:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq NavelRock_Bottom_EventScript_DefeatedLugia - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq NavelRock_Bottom_EventScript_RanFromLugia - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq NavelRock_Bottom_EventScript_RanFromLugia + goto_if_eq VAR_RESULT, B_OUTCOME_WON, NavelRock_Bottom_EventScript_DefeatedLugia + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NavelRock_Bottom_EventScript_RanFromLugia + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, NavelRock_Bottom_EventScript_RanFromLugia setflag FLAG_CAUGHT_LUGIA release end diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc index 759434cde3c9..a981759175a3 100644 --- a/data/maps/NavelRock_Harbor/scripts.inc +++ b/data/maps/NavelRock_Harbor/scripts.inc @@ -8,8 +8,7 @@ NavelRock_Harbor_EventScript_Sailor:: lock faceplayer msgbox NavelRock_Harbor_Text_SailorReturn, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq NavelRock_Harbor_EventScript_AsYouLike + goto_if_eq VAR_RESULT, NO, NavelRock_Harbor_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc index e8b3e7e29694..2805f5677124 100644 --- a/data/maps/NavelRock_Top/scripts.inc +++ b/data/maps/NavelRock_Top/scripts.inc @@ -28,8 +28,7 @@ NavelRock_Top_OnResume: NavelRock_Top_EventScript_TryRemoveHoOh:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_HO_OH return @@ -68,12 +67,9 @@ NavelRock_Top_EventScript_HoOh:: clearflag FLAG_SYS_CTRL_OBJ_DELETE setvar VAR_LAST_TALKED, LOCALID_HO_OH specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq NavelRock_Top_EventScript_DefeatedHoOh - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq NavelRock_Top_EventScript_RanFromHoOh - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq NavelRock_Top_EventScript_RanFromHoOh + goto_if_eq VAR_RESULT, B_OUTCOME_WON, NavelRock_Top_EventScript_DefeatedHoOh + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NavelRock_Top_EventScript_RanFromHoOh + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, NavelRock_Top_EventScript_RanFromHoOh setflag FLAG_CAUGHT_HO_OH releaseall end diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc index 50582ce380ac..4c498190e070 100644 --- a/data/maps/NewMauville_Entrance/scripts.inc +++ b/data/maps/NewMauville_Entrance/scripts.inc @@ -4,8 +4,7 @@ NewMauville_Entrance_MapScripts:: .byte 0 NewMauville_Entrance_OnLoad: - compare VAR_NEW_MAUVILLE_STATE, 0 - call_if_eq NewMauville_Entrance_EventScript_CloseDoor + call_if_eq VAR_NEW_MAUVILLE_STATE, 0, NewMauville_Entrance_EventScript_CloseDoor end NewMauville_Entrance_EventScript_CloseDoor:: @@ -27,11 +26,9 @@ NewMauville_Entrance_EventScript_Door:: waitmovement 0 msgbox NewMauville_Entrance_Text_DoorIsLocked, MSGBOX_DEFAULT checkitem ITEM_BASEMENT_KEY - compare VAR_RESULT, FALSE - goto_if_eq NewMauville_Entrance_EventScript_DontOpenDoor + goto_if_eq VAR_RESULT, FALSE, NewMauville_Entrance_EventScript_DontOpenDoor msgbox NewMauville_Entrance_Text_UseBasementKey, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq NewMauville_Entrance_EventScript_DontOpenDoor + goto_if_eq VAR_RESULT, NO, NewMauville_Entrance_EventScript_DontOpenDoor msgbox NewMauville_Entrance_Text_UsedBasementKey, MSGBOX_DEFAULT setmetatile 3, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile0, FALSE setmetatile 4, 0, METATILE_Facility_NewMauvilleDoor_Open_Tile1, FALSE diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc index 543b030e142f..51748380add7 100644 --- a/data/maps/NewMauville_Inside/scripts.inc +++ b/data/maps/NewMauville_Inside/scripts.inc @@ -5,17 +5,14 @@ NewMauville_Inside_MapScripts:: .byte 0 NewMauville_Inside_OnResume: - compare VAR_TEMP_1, 1 - call_if_eq NewMauville_Inside_EventScript_SetBarrierStateBlueButton - compare VAR_TEMP_2, 1 - call_if_eq NewMauville_Inside_EventScript_SetBarrierStateGreenButton + call_if_eq VAR_TEMP_1, 1, NewMauville_Inside_EventScript_SetBarrierStateBlueButton + call_if_eq VAR_TEMP_2, 1, NewMauville_Inside_EventScript_SetBarrierStateGreenButton call_if_set FLAG_SYS_CTRL_OBJ_DELETE, NewMauville_Inside_EventScript_TryRemoveVoltorb end NewMauville_Inside_EventScript_TryRemoveVoltorb:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -40,8 +37,7 @@ NewMauville_Inside_EventScript_ShowVoltorb3:: return NewMauville_Inside_OnLoad: - compare VAR_NEW_MAUVILLE_STATE, 2 - call_if_eq NewMauville_Inside_EventScript_SetGeneratorOffMetatiles + call_if_eq VAR_NEW_MAUVILLE_STATE, 2, NewMauville_Inside_EventScript_SetGeneratorOffMetatiles end NewMauville_Inside_EventScript_BlueButton:: @@ -167,8 +163,7 @@ NewMauville_Inside_EventScript_SetGeneratorOffMetatiles:: NewMauville_Inside_EventScript_Generator:: lockall - compare VAR_NEW_MAUVILLE_STATE, 2 - goto_if_eq NewMauville_Inside_EventScript_GeneratorOff + goto_if_eq VAR_NEW_MAUVILLE_STATE, 2, NewMauville_Inside_EventScript_GeneratorOff msgbox NewMauville_Inside_Text_GeneratorRadiatingHeat, MSGBOX_DEFAULT releaseall end @@ -190,12 +185,9 @@ NewMauville_Inside_EventScript_Voltorb1:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb1 - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb1 - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb1 + goto_if_eq VAR_RESULT, B_OUTCOME_WON, NewMauville_Inside_EventScript_DefeatedVoltorb1 + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NewMauville_Inside_EventScript_DefeatedVoltorb1 + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, NewMauville_Inside_EventScript_DefeatedVoltorb1 setflag FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE release end @@ -217,12 +209,9 @@ NewMauville_Inside_EventScript_Voltorb2:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb2 - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb2 - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb2 + goto_if_eq VAR_RESULT, B_OUTCOME_WON, NewMauville_Inside_EventScript_DefeatedVoltorb2 + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NewMauville_Inside_EventScript_DefeatedVoltorb2 + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, NewMauville_Inside_EventScript_DefeatedVoltorb2 setflag FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE release end @@ -244,12 +233,9 @@ NewMauville_Inside_EventScript_Voltorb3:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb3 - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb3 - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq NewMauville_Inside_EventScript_DefeatedVoltorb3 + goto_if_eq VAR_RESULT, B_OUTCOME_WON, NewMauville_Inside_EventScript_DefeatedVoltorb3 + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NewMauville_Inside_EventScript_DefeatedVoltorb3 + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, NewMauville_Inside_EventScript_DefeatedVoltorb3 setflag FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE release end diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc index 7d4ce4389e77..3f43386cb37e 100644 --- a/data/maps/OldaleTown/scripts.inc +++ b/data/maps/OldaleTown/scripts.inc @@ -76,8 +76,7 @@ OldaleTown_EventScript_GoToMartEast:: OldaleTown_EventScript_ExplainPokemonMart:: msgbox OldaleTown_Text_ThisIsAPokemonMart, MSGBOX_DEFAULT giveitem ITEM_POTION - compare VAR_RESULT, FALSE - goto_if_eq OldaleTown_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, OldaleTown_EventScript_BagIsFull msgbox OldaleTown_Text_PotionExplanation, MSGBOX_DEFAULT setflag FLAG_RECEIVED_POTION_OLDALE fadedefaultbgm @@ -260,10 +259,8 @@ OldaleTown_EventScript_RivalTrigger3:: OldaleTown_EventScript_ShowRivalMessage:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq OldaleTown_EventScript_ShowMayMessage - compare VAR_RESULT, FEMALE - goto_if_eq OldaleTown_EventScript_ShowBrendanMessage + goto_if_eq VAR_RESULT, MALE, OldaleTown_EventScript_ShowMayMessage + goto_if_eq VAR_RESULT, FEMALE, OldaleTown_EventScript_ShowBrendanMessage end OldaleTown_EventScript_ShowMayMessage:: @@ -278,10 +275,8 @@ OldaleTown_EventScript_ShowBrendanMessage:: OldaleTown_EventScript_RivalFinish:: closemessage - compare VAR_0x8009, 0 - call_if_eq OldaleTown_EventScript_DoExitMovement1 - compare VAR_0x8009, 1 - call_if_eq OldaleTown_EventScript_DoExitMovement2 + call_if_eq VAR_0x8009, 0, OldaleTown_EventScript_DoExitMovement1 + call_if_eq VAR_0x8009, 1, OldaleTown_EventScript_DoExitMovement2 applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit waitmovement 0 removeobject LOCALID_RIVAL @@ -291,8 +286,7 @@ OldaleTown_EventScript_RivalFinish:: end OldaleTown_EventScript_DoExitMovement1:: - compare VAR_FACING, DIR_SOUTH - goto_if_ne OldaleTown_EventScript_DoExitMovement2 + goto_if_ne VAR_FACING, DIR_SOUTH, OldaleTown_EventScript_DoExitMovement2 applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit waitmovement 0 return diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index ea0710c3d653..3dedcec30f05 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -11,19 +11,16 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER specialvar VAR_RESULT, GetLeadMonFriendshipScore - compare VAR_RESULT, 4 - goto_if_ge PacifidlogTown_House2_EventScript_GiveReturn + goto_if_ge VAR_RESULT, 4, PacifidlogTown_House2_EventScript_GiveReturn specialvar VAR_RESULT, GetLeadMonFriendshipScore - compare VAR_RESULT, 2 - goto_if_ge PacifidlogTown_House2_EventScript_PutInEffort + goto_if_ge VAR_RESULT, 2, PacifidlogTown_House2_EventScript_PutInEffort goto PacifidlogTown_House2_EventScript_GiveFrustration end PacifidlogTown_House2_EventScript_UpdateFanClubTMFlag:: goto_if_unset FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK, Common_EventScript_NopReturn specialvar VAR_RESULT, GetDaysUntilPacifidlogTMAvailable - compare VAR_RESULT, 0 - call_if_eq PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM + call_if_eq VAR_RESULT, 0, PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM return PacifidlogTown_House2_EventScript_MonAssessment:: @@ -42,8 +39,7 @@ PacifidlogTown_House2_EventScript_ClearReceivedFanClubTM:: PacifidlogTown_House2_EventScript_GiveReturn:: msgbox PacifidlogTown_House2_Text_AdoringPokemonTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM27 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK special SetPacifidlogTMReceivedDay msgbox PacifidlogTown_House2_Text_ExplainReturnFrustration, MSGBOX_DEFAULT @@ -58,8 +54,7 @@ PacifidlogTown_House2_EventScript_PutInEffort:: PacifidlogTown_House2_EventScript_GiveFrustration:: msgbox PacifidlogTown_House2_Text_ViciousPokemonTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM21 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK special SetPacifidlogTMReceivedDay msgbox PacifidlogTown_House2_Text_ExplainReturnFrustration, MSGBOX_DEFAULT diff --git a/data/maps/PacifidlogTown_House3/scripts.inc b/data/maps/PacifidlogTown_House3/scripts.inc index fbdeb74a5f30..5582f3b6b9c1 100644 --- a/data/maps/PacifidlogTown_House3/scripts.inc +++ b/data/maps/PacifidlogTown_House3/scripts.inc @@ -10,18 +10,15 @@ PacifidlogTown_House3_EventScript_Trader:: specialvar VAR_RESULT, GetInGameTradeSpeciesInfo copyvar VAR_0x8009, VAR_RESULT msgbox PacifidlogTown_House3_Text_WillingToTradeIt, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq PacifidlogTown_House3_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, PacifidlogTown_House3_EventScript_DeclineTrade special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq PacifidlogTown_House3_EventScript_DeclineTrade + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, PacifidlogTown_House3_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies copyvar VAR_0x800B, VAR_RESULT - compare VAR_RESULT, VAR_0x8009 - goto_if_ne PacifidlogTown_House3_EventScript_NotRequestedMon + goto_if_ne VAR_RESULT, VAR_0x8009, PacifidlogTown_House3_EventScript_NotRequestedMon copyvar VAR_0x8004, VAR_0x8008 copyvar VAR_0x8005, VAR_0x800A special CreateInGameTradePokemon diff --git a/data/maps/PacifidlogTown_House4/scripts.inc b/data/maps/PacifidlogTown_House4/scripts.inc index 12d7197bd120..f17abcd30e4b 100644 --- a/data/maps/PacifidlogTown_House4/scripts.inc +++ b/data/maps/PacifidlogTown_House4/scripts.inc @@ -13,10 +13,8 @@ PacifidlogTown_House4_EventScript_Boy:: lock faceplayer msgbox PacifidlogTown_House4_Text_WhereDidYouComeFrom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PacifidlogTown_House4_EventScript_Yes - compare VAR_RESULT, NO - goto_if_eq PacifidlogTown_House4_EventScript_No + goto_if_eq VAR_RESULT, YES, PacifidlogTown_House4_EventScript_Yes + goto_if_eq VAR_RESULT, NO, PacifidlogTown_House4_EventScript_No end PacifidlogTown_House4_EventScript_Yes:: diff --git a/data/maps/PacifidlogTown_House5/scripts.inc b/data/maps/PacifidlogTown_House5/scripts.inc index 5da4fb9022c0..474a2663ecf5 100644 --- a/data/maps/PacifidlogTown_House5/scripts.inc +++ b/data/maps/PacifidlogTown_House5/scripts.inc @@ -5,8 +5,7 @@ PacifidlogTown_House5_EventScript_MirageIslandWatcher:: lock faceplayer specialvar VAR_RESULT, IsMirageIslandPresent - compare VAR_RESULT, TRUE - goto_if_eq PacifidlogTown_House5_EventScript_MirageIslandPresent + goto_if_eq VAR_RESULT, TRUE, PacifidlogTown_House5_EventScript_MirageIslandPresent msgbox PacifidlogTown_House5_Text_CantSeeMirageIslandToday, MSGBOX_DEFAULT release end diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc index 25b39a3eb00a..3609b26226f2 100644 --- a/data/maps/PetalburgCity/scripts.inc +++ b/data/maps/PetalburgCity/scripts.inc @@ -11,14 +11,10 @@ PetalburgCity_MapScripts:: PetalburgCity_OnTransition: setflag FLAG_VISITED_PETALBURG_CITY - compare VAR_PETALBURG_CITY_STATE, 0 - call_if_eq PetalburgCity_EventScript_MoveGymBoyToWestEntrance - compare VAR_PETALBURG_CITY_STATE, 2 - call_if_eq PetalburgCity_EventScript_DisableMapNameAndMusic - compare VAR_PETALBURG_CITY_STATE, 4 - call_if_eq PetalburgCity_EventScript_DisableMapNameAndMusic - compare VAR_PETALBURG_GYM_STATE, 8 - call_if_eq PetalburgCity_EventScript_SetGymDoorsUnlocked + call_if_eq VAR_PETALBURG_CITY_STATE, 0, PetalburgCity_EventScript_MoveGymBoyToWestEntrance + call_if_eq VAR_PETALBURG_CITY_STATE, 2, PetalburgCity_EventScript_DisableMapNameAndMusic + call_if_eq VAR_PETALBURG_CITY_STATE, 4, PetalburgCity_EventScript_DisableMapNameAndMusic + call_if_eq VAR_PETALBURG_GYM_STATE, 8, PetalburgCity_EventScript_SetGymDoorsUnlocked end PetalburgCity_EventScript_MoveGymBoyToWestEntrance:: @@ -277,24 +273,16 @@ PetalburgCity_EventScript_ShowGymToPlayer:: waitmovement 0 applymovement LOCALID_GYM_BOY, Common_Movement_Delay48 waitmovement 0 - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_EventScript_BoyApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_EventScript_BoyApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_EventScript_BoyApproachPlayer2 - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_EventScript_BoyApproachPlayer3 + call_if_eq VAR_0x8008, 0, PetalburgCity_EventScript_BoyApproachPlayer0 + call_if_eq VAR_0x8008, 1, PetalburgCity_EventScript_BoyApproachPlayer1 + call_if_eq VAR_0x8008, 2, PetalburgCity_EventScript_BoyApproachPlayer2 + call_if_eq VAR_0x8008, 3, PetalburgCity_EventScript_BoyApproachPlayer3 msgbox PetalburgCity_Text_AreYouRookieTrainer, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_EventScript_LeadPlayerToGym0 - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_EventScript_LeadPlayerToGym1 - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_EventScript_LeadPlayerToGym2 - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_EventScript_LeadPlayerToGym3 + call_if_eq VAR_0x8008, 0, PetalburgCity_EventScript_LeadPlayerToGym0 + call_if_eq VAR_0x8008, 1, PetalburgCity_EventScript_LeadPlayerToGym1 + call_if_eq VAR_0x8008, 2, PetalburgCity_EventScript_LeadPlayerToGym2 + 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 @@ -571,14 +559,10 @@ PetalburgCity_EventScript_Scott:: delay 30 msgbox PetalburgCity_Text_ImLookingForTalentedTrainers, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_EventScript_ScottExit0 - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_EventScript_ScottExit1 - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_EventScript_ScottExit2 - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_EventScript_ScottExit3 + call_if_eq VAR_0x8008, 0, PetalburgCity_EventScript_ScottExit0 + call_if_eq VAR_0x8008, 1, PetalburgCity_EventScript_ScottExit1 + 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 releaseall diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc index 251f24aa6c5f..836da26bfb19 100644 --- a/data/maps/PetalburgCity_Gym/scripts.inc +++ b/data/maps/PetalburgCity_Gym/scripts.inc @@ -10,10 +10,8 @@ PetalburgCity_Gym_MapScripts:: .byte 0 PetalburgCity_Gym_OnLoad: - compare VAR_PETALBURG_GYM_STATE, 6 - goto_if_eq PetalburgCity_Gym_EventScript_OpenUnlockedDoors - compare VAR_PETALBURG_GYM_STATE, 7 - call_if_ge PetalburgCity_Gym_EventScript_UnlockAllDoors + goto_if_eq VAR_PETALBURG_GYM_STATE, 6, PetalburgCity_Gym_EventScript_OpenUnlockedDoors + call_if_ge VAR_PETALBURG_GYM_STATE, 7, PetalburgCity_Gym_EventScript_UnlockAllDoors end @ NOTE: Strength and OHKO rooms are misleading. Both are more accurately Critical-Hit @@ -42,10 +40,8 @@ PetalburgCity_Gym_EventScript_UnlockAllDoors:: return PetalburgCity_Gym_OnTransition: - compare VAR_PETALBURG_GYM_STATE, 1 - call_if_eq PetalburgCity_Gym_EventScript_MoveWallyToEntrance - compare VAR_PETALBURG_GYM_STATE, 6 - call_if_lt PetalburgCity_Gym_EventScript_MoveNormanToEntrance + call_if_eq VAR_PETALBURG_GYM_STATE, 1, PetalburgCity_Gym_EventScript_MoveWallyToEntrance + call_if_lt VAR_PETALBURG_GYM_STATE, 6, PetalburgCity_Gym_EventScript_MoveNormanToEntrance call_if_set FLAG_SYS_GAME_CLEAR, PetalburgCity_Gym_EventScript_CheckNormanForRematch end @@ -60,10 +56,8 @@ PetalburgCity_Gym_EventScript_MoveNormanToEntrance:: PetalburgCity_Gym_EventScript_CheckNormanForRematch:: setorcopyvar VAR_TRAINER_BATTLE_OPPONENT_A, TRAINER_NORMAN_1 specialvar VAR_RESULT, IsTrainerReadyForRematch - compare VAR_RESULT, TRUE - goto_if_eq PetalburgCity_Gym_EventScript_DontMoveNormanToFront - compare VAR_PETALBURG_GYM_STATE, 8 - goto_if_eq PetalburgCity_Gym_EventScript_DontMoveNormanToFront + 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 return @@ -152,66 +146,42 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorialEast:: PetalburgCity_Gym_EventScript_BeginWallyTutorial:: addobject LOCALID_WALLY playse SE_DOOR - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_WallyArriveSouth - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_WallyArriveNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_WallyArriveWestEast - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_WallyArriveWestEast + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_WallyArriveSouth + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallyArriveNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_WallyArriveWestEast + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_WallyArriveWestEast msgbox PetalburgCity_Gym_Text_WallyIdLikeAPokemon, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_DadOhYoureWallyRight, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_WallyIveNeverCaughtAPokemon, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_DadHmISee, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressPlayerWest - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressPlayerEast + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_NormanAddressPlayerWest + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_NormanAddressPlayerEast msgbox PetalburgCity_Gym_Text_DadPlayerGoWithWally, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressWallySouth - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressWallyNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressWallyWest - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_NormanAddressWallyEast + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_NormanAddressWallySouth + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_NormanAddressWallyNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_NormanAddressWallyWest + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_NormanAddressWallyEast msgbox PetalburgCity_Gym_Text_IllLoanYouMyZigzagoon, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_WallyThankYouAndDadGivesPokeBall, MSGBOX_DEFAULT msgbox PetalburgCity_Gym_Text_WallyOhWowThankYou, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_NormanFaceDoorSouth - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_NormanFaceDoorNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_NormanFaceDoorWest - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_NormanFaceDoorEast - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_WallyFacePlayer - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_WallyFaceDown - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_WallyFacePlayer - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_WallyFacePlayer + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_NormanFaceDoorSouth + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_NormanFaceDoorNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_NormanFaceDoorWest + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_NormanFaceDoorEast + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_WallyFacePlayer + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallyFaceDown + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_WallyFacePlayer + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_WallyFacePlayer msgbox PetalburgCity_Gym_Text_WouldYouReallyComeWithMe, MSGBOX_DEFAULT closemessage setflag FLAG_DONT_TRANSITION_MUSIC playbgm MUS_FOLLOW_ME, FALSE - compare VAR_0x8008, 0 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallySouth - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallyNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallyWest - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallyEast + call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_ExitGymWithWallySouth + 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 setflag FLAG_HIDE_PETALBURG_CITY_WALLYS_MOM setvar VAR_PETALBURG_GYM_STATE, 1 @@ -361,8 +331,7 @@ PetalburgCity_Gym_EventScript_NormanFaceDoorEast:: PetalburgCity_Gym_EventScript_NormanPostBattle:: call PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry - compare VAR_RESULT, TRUE - goto_if_eq PetalburgCity_Gym_EventScript_GiveEnigmaBerry + goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_GiveEnigmaBerry goto_if_unset FLAG_RECEIVED_TM42, PetalburgCity_Gym_EventScript_GiveFacade2 goto_if_set FLAG_SYS_GAME_CLEAR, PetalburgCity_Gym_EventScript_NoAmountOfTrainingIsEnough msgbox PetalburgCity_Gym_Text_DadGoingToKeepTraining, MSGBOX_DEFAULT @@ -381,16 +350,12 @@ PetalburgCity_Gym_EventScript_NormanRematch:: PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry:: specialvar VAR_RESULT, IsEnigmaBerryValid - compare VAR_RESULT, FALSE - goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry + goto_if_eq VAR_RESULT, FALSE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry checkitem ITEM_ENIGMA_BERRY - compare VAR_RESULT, TRUE - goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry + goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry checkpcitem ITEM_ENIGMA_BERRY - compare VAR_RESULT, TRUE - goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry - compare VAR_ENIGMA_BERRY_AVAILABLE, 0 - goto_if_eq PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry + goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry + goto_if_eq VAR_ENIGMA_BERRY_AVAILABLE, 0, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry msgbox PetalburgCity_Gym_Text_GiveEnigmaBerry, MSGBOX_DEFAULT setvar VAR_RESULT, TRUE return @@ -401,8 +366,7 @@ PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry:: PetalburgCity_Gym_EventScript_GiveEnigmaBerry:: giveitem ITEM_ENIGMA_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setvar VAR_ENIGMA_BERRY_AVAILABLE, 0 release end @@ -442,8 +406,7 @@ PetalburgCity_Gym_EventScript_NormanBattle:: PetalburgCity_Gym_EventScript_GiveFacade:: giveitem ITEM_TM42 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull setflag FLAG_RECEIVED_TM42 msgbox PetalburgCity_Gym_Text_ExplainFacade, MSGBOX_DEFAULT return @@ -469,31 +432,22 @@ PetalburgCity_Gym_EventScript_WallysDadArrives:: applymovement LOCALID_WALLYS_DAD, Common_Movement_Delay48 waitmovement 0 delay 10 - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest msgbox PetalburgCity_Gym_Text_PleaseComeWithMe, MSGBOX_DEFAULT closemessage delay 20 - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest + call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth + call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast + call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest msgbox PetalburgCity_Gym_Text_LetMeBorrowPlayer, MSGBOX_DEFAULT closemessage setflag FLAG_DONT_TRANSITION_MUSIC playbgm MUS_FOLLOW_ME, FALSE - compare VAR_0x8008, 1 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth - compare VAR_0x8008, 2 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallysDadEast - compare VAR_0x8008, 3 - call_if_eq PetalburgCity_Gym_EventScript_ExitGymWithWallysDadWest + 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 setvar VAR_PETALBURG_CITY_STATE, 4 clearflag FLAG_HIDE_PETALBURG_CITY_WALLYS_DAD @@ -782,15 +736,12 @@ PetalburgCity_Gym_EventScript_NoAmountOfTrainingIsEnough:: PetalburgCity_Gym_EventScript_SpeedRoomDoor:: lockall - compare VAR_PETALBURG_GYM_STATE, 6 - goto_if_lt PetalburgCity_Gym_EventScript_DoorLocked + goto_if_lt VAR_PETALBURG_GYM_STATE, 6, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 7 setvar VAR_0x8009, 85 msgbox PetalburgCity_Gym_Text_EnterSpeedRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_EnterRoom:: @@ -813,15 +764,12 @@ PetalburgCity_Gym_EventScript_DoorLocked:: @ VAR_0x8008 and VAR_0x8009 below are the x and y coordinates of the warp PetalburgCity_Gym_EventScript_AccuracyRoomDoor:: lockall - compare VAR_PETALBURG_GYM_STATE, 6 - goto_if_lt PetalburgCity_Gym_EventScript_DoorLocked + goto_if_lt VAR_PETALBURG_GYM_STATE, 6, PetalburgCity_Gym_EventScript_DoorLocked setvar VAR_0x8008, 1 setvar VAR_0x8009, 98 msgbox PetalburgCity_Gym_Text_EnterAccuracyRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_ConfusionRoomDoor:: @@ -830,10 +778,8 @@ PetalburgCity_Gym_EventScript_ConfusionRoomDoor:: setvar VAR_0x8008, 7 setvar VAR_0x8009, 46 msgbox PetalburgCity_Gym_Text_EnterConfusionRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_LeftDefenseRoomDoor:: @@ -842,10 +788,8 @@ PetalburgCity_Gym_EventScript_LeftDefenseRoomDoor:: setvar VAR_0x8008, 1 setvar VAR_0x8009, 59 msgbox PetalburgCity_Gym_Text_EnterDefenseRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_RightDefenseRoomDoor:: @@ -854,10 +798,8 @@ PetalburgCity_Gym_EventScript_RightDefenseRoomDoor:: setvar VAR_0x8008, 7 setvar VAR_0x8009, 59 msgbox PetalburgCity_Gym_Text_EnterDefenseRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_RecoveryRoomDoor:: @@ -866,10 +808,8 @@ PetalburgCity_Gym_EventScript_RecoveryRoomDoor:: setvar VAR_0x8008, 1 setvar VAR_0x8009, 72 msgbox PetalburgCity_Gym_Text_EnterRecoveryRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_LeftStrengthRoomDoor:: @@ -878,10 +818,8 @@ PetalburgCity_Gym_EventScript_LeftStrengthRoomDoor:: setvar VAR_0x8008, 1 setvar VAR_0x8009, 20 msgbox PetalburgCity_Gym_Text_EnterStrengthRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_RightStrengthRoomDoor:: @@ -890,10 +828,8 @@ PetalburgCity_Gym_EventScript_RightStrengthRoomDoor:: setvar VAR_0x8008, 7 setvar VAR_0x8009, 20 msgbox PetalburgCity_Gym_Text_EnterStrengthRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_LeftOHKORoomDoor:: @@ -902,10 +838,8 @@ PetalburgCity_Gym_EventScript_LeftOHKORoomDoor:: setvar VAR_0x8008, 1 setvar VAR_0x8009, 33 msgbox PetalburgCity_Gym_Text_EnterOHKORoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_RightOHKORoomDoor:: @@ -914,10 +848,8 @@ PetalburgCity_Gym_EventScript_RightOHKORoomDoor:: setvar VAR_0x8008, 7 setvar VAR_0x8009, 33 msgbox PetalburgCity_Gym_Text_EnterOHKORoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_LeftGymLeadersRoomDoor:: @@ -926,10 +858,8 @@ PetalburgCity_Gym_EventScript_LeftGymLeadersRoomDoor:: setvar VAR_0x8008, 1 setvar VAR_0x8009, 7 msgbox PetalburgCity_Gym_Text_EnterGymLeadersRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_RightGymLeadersRoomDoor:: @@ -938,10 +868,8 @@ PetalburgCity_Gym_EventScript_RightGymLeadersRoomDoor:: setvar VAR_0x8008, 7 setvar VAR_0x8009, 7 msgbox PetalburgCity_Gym_Text_EnterGymLeadersRoom, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq PetalburgCity_Gym_EventScript_EnterRoom - compare VAR_RESULT, NO - goto_if_eq PetalburgCity_Gym_EventScript_DontEnterRoom + goto_if_eq VAR_RESULT, YES, PetalburgCity_Gym_EventScript_EnterRoom + goto_if_eq VAR_RESULT, NO, PetalburgCity_Gym_EventScript_DontEnterRoom end PetalburgCity_Gym_EventScript_Randall:: @@ -1067,73 +995,57 @@ PetalburgCity_Gym_EventScript_JodyPostBadge:: @ VAR_0x8005 below is 0 when the door should be slid open and 1 when it should be unlocked immediately PetalburgCity_Gym_EventScript_OpenGymEntranceDoors:: setvar VAR_0x8004, 1 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetEntranceRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenSpeedRoomDoors:: setvar VAR_0x8004, 2 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetSpeedRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenAccuracyRoomDoors:: setvar VAR_0x8004, 3 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetAccuracyRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenConfusionRoomDoors:: setvar VAR_0x8004, 4 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetConfusionRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenDefenseRoomDoors:: setvar VAR_0x8004, 5 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetDefenseRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenRecoveryRoomDoors:: setvar VAR_0x8004, 6 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetRecoveryRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenStrengthRoomDoors:: setvar VAR_0x8004, 7 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetStrengthRoomDoorMetatiles return PetalburgCity_Gym_EventScript_OpenOHKORoomDoors:: setvar VAR_0x8004, 8 - compare VAR_0x8005, 0 - call_if_eq PetalburgCity_Gym_EventScript_SlideOpenRoomDoors - compare VAR_0x8005, 1 - call_if_eq PetalburgCity_Gym_EventScript_UnlockRoomDoors + call_if_eq VAR_0x8005, 0, PetalburgCity_Gym_EventScript_SlideOpenRoomDoors + call_if_eq VAR_0x8005, 1, PetalburgCity_Gym_EventScript_UnlockRoomDoors call PetalburgCity_Gym_EventScript_SetOHKORoomDoorMetatiles return diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc index 58b58054f2fa..3dadd3184bac 100644 --- a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc @@ -31,18 +31,14 @@ PetalburgCity_PokemonCenter_1F_EventScript_Woman:: faceplayer msgbox PetalburgCity_PokemonCenter_1F_Text_ManyTypesOfPokemon, MSGBOX_DEFAULT specialvar VAR_RESULT, IsStarterInParty - compare VAR_RESULT, TRUE - goto_if_eq PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo + goto_if_eq VAR_RESULT, TRUE, PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo release end PetalburgCity_PokemonCenter_1F_EventScript_SayStarterTypeInfo:: - compare VAR_STARTER_MON, 0 - call_if_eq PetalburgCity_PokemonCenter_1F_EventScript_SayTreeckoType - compare VAR_STARTER_MON, 1 - call_if_eq PetalburgCity_PokemonCenter_1F_EventScript_SayTorchicType - compare VAR_STARTER_MON, 2 - call_if_eq PetalburgCity_PokemonCenter_1F_EventScript_SayMudkipType + call_if_eq VAR_STARTER_MON, 0, PetalburgCity_PokemonCenter_1F_EventScript_SayTreeckoType + call_if_eq VAR_STARTER_MON, 1, PetalburgCity_PokemonCenter_1F_EventScript_SayTorchicType + call_if_eq VAR_STARTER_MON, 2, PetalburgCity_PokemonCenter_1F_EventScript_SayMudkipType release end diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc index dd2d9273f508..94bd3901486d 100644 --- a/data/maps/PetalburgWoods/scripts.inc +++ b/data/maps/PetalburgWoods/scripts.inc @@ -92,8 +92,7 @@ PetalburgWoods_EventScript_DevonResearcherPostBattle:: waitmovement 0 msgbox PetalburgWoods_Text_ThatWasAwfullyClose, MSGBOX_DEFAULT giveitem ITEM_GREAT_BALL - compare VAR_RESULT, FALSE - goto_if_eq PetalburgWoods_EventScript_BagFull + goto_if_eq VAR_RESULT, FALSE, PetalburgWoods_EventScript_BagFull goto PetalburgWoods_EventScript_DevonResearcherFinish end @@ -255,8 +254,7 @@ PetalburgWoods_EventScript_Girl:: goto_if_set FLAG_RECEIVED_MIRACLE_SEED, PetalburgWoods_EventScript_ExplainMiracleSeed msgbox PetalburgWoods_Text_TryUsingThisItem, MSGBOX_DEFAULT giveitem ITEM_MIRACLE_SEED - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_MIRACLE_SEED release end @@ -282,12 +280,10 @@ PetalburgWoods_EventScript_Lyle:: PetalburgWoods_EventScript_James:: trainerbattle_single TRAINER_JAMES_1, PetalburgWoods_Text_InstantlyPopularWithBugPokemon, PetalburgWoods_Text_CantBePopularIfILose, PetalburgWoods_EventScript_TryRegisterJames specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq PetalburgWoods_EventScript_JamesRematch + goto_if_eq VAR_RESULT, TRUE, PetalburgWoods_EventScript_JamesRematch setvar VAR_0x8004, TRAINER_JAMES_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq PetalburgWoods_EventScript_TryRegisterJames2 + goto_if_eq VAR_RESULT, FALSE, PetalburgWoods_EventScript_TryRegisterJames2 msgbox PetalburgWoods_Text_PeopleRespectYou, MSGBOX_DEFAULT release end diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc index 02071aad11ee..dd0ef5dcec1d 100644 --- a/data/maps/Route101/scripts.inc +++ b/data/maps/Route101/scripts.inc @@ -241,10 +241,8 @@ Route101_EventScript_BirchsBag:: setvar VAR_ROUTE101_STATE, 3 clearflag FLAG_HIDE_MAP_NAME_POPUP checkplayergender - compare VAR_RESULT, MALE - call_if_eq Route101_EventScript_HideMayInBedroom - compare VAR_RESULT, FEMALE - call_if_eq Route101_EventScript_HideBrendanInBedroom + call_if_eq VAR_RESULT, MALE, Route101_EventScript_HideMayInBedroom + call_if_eq VAR_RESULT, FEMALE, Route101_EventScript_HideBrendanInBedroom warp MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, 6, 5 waitstate release diff --git a/data/maps/Route102/scripts.inc b/data/maps/Route102/scripts.inc index cc1eaa4bb71c..6131ef9e01ef 100644 --- a/data/maps/Route102/scripts.inc +++ b/data/maps/Route102/scripts.inc @@ -20,12 +20,10 @@ Route102_EventScript_Boy:: Route102_EventScript_Calvin:: trainerbattle_single TRAINER_CALVIN_1, Route102_Text_CalvinIntro, Route102_Text_CalvinDefeated, Route102_EventScript_CalvinRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route102_EventScript_CalvinRematch + goto_if_eq VAR_RESULT, TRUE, Route102_EventScript_CalvinRematch setvar VAR_0x8004, TRAINER_CALVIN_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route102_EventScript_CalvinTryRegister + goto_if_eq VAR_RESULT, FALSE, Route102_EventScript_CalvinTryRegister msgbox Route102_Text_CalvinPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index cf7bc72b51ea..e2b75e0c3dda 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -22,10 +22,8 @@ Route103_EventScript_OpenAlteringCave:: Route103_EventScript_Rival:: lockall checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route103_EventScript_RivalMay - compare VAR_RESULT, FEMALE - goto_if_eq Route103_EventScript_RivalBrendan + goto_if_eq VAR_RESULT, MALE, Route103_EventScript_RivalMay + goto_if_eq VAR_RESULT, FEMALE, Route103_EventScript_RivalBrendan end Route103_EventScript_RivalMay:: @@ -211,8 +209,7 @@ Route103_EventScript_Daisy:: Route103_EventScript_Amy:: trainerbattle_double TRAINER_AMY_AND_LIV_1, Route103_Text_AmyIntro, Route103_Text_AmyDefeated, Route103_Text_AmyNotEnoughPokemon, Route102_EventScript_AmyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route102_EventScript_AmyRematch + goto_if_eq VAR_RESULT, TRUE, Route102_EventScript_AmyRematch msgbox Route103_Text_AmyPostBattle, MSGBOX_AUTOCLOSE end @@ -230,8 +227,7 @@ Route102_EventScript_AmyRematch:: Route103_EventScript_Liv:: trainerbattle_double TRAINER_AMY_AND_LIV_1, Route103_Text_LivIntro, Route103_Text_LivDefeated, Route103_Text_LivNotEnoughPokemon, Route102_EventScript_LivRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route102_EventScript_LivRematch + goto_if_eq VAR_RESULT, TRUE, Route102_EventScript_LivRematch msgbox Route103_Text_LivPostBattle, MSGBOX_AUTOCLOSE end @@ -254,8 +250,7 @@ Route103_EventScript_Andrew:: Route103_EventScript_Miguel:: trainerbattle_single TRAINER_MIGUEL_1, Route103_Text_MiguelIntro, Route103_Text_MiguelDefeated, Route102_EventScript_MiguelRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route103_EventScript_MiguelRematch + goto_if_eq VAR_RESULT, TRUE, Route103_EventScript_MiguelRematch msgbox Route103_Text_MiguelPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc index 4cbe5c045443..68aeb0a21258 100644 --- a/data/maps/Route104/scripts.inc +++ b/data/maps/Route104/scripts.inc @@ -33,8 +33,7 @@ Route104_EventScript_HideWhiteHerbFlorist:: return Route104_EventScript_TrySetRivalPos:: - compare VAR_BOARD_BRINEY_BOAT_STATE, 1 - goto_if_ge Route104_EventScript_DontSetRivalPos + 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 @@ -77,10 +76,8 @@ Route104_EventScript_RivalTrigger:: @ Unused, shares script with Rustboro encounter instead Route104_EventScript_PlayRivalMusic:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route104_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - goto_if_eq Route104_EventScript_PlayBrendanMusic + goto_if_eq VAR_RESULT, MALE, Route104_EventScript_PlayMayMusic + goto_if_eq VAR_RESULT, FEMALE, Route104_EventScript_PlayBrendanMusic return Route104_EventScript_PlayMayMusic:: @@ -93,10 +90,8 @@ Route104_EventScript_PlayBrendanMusic:: Route104_EventScript_RivalEncounter:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route104_EventScript_MayEncounter - compare VAR_RESULT, FEMALE - goto_if_eq Route104_EventScript_BrendanEncounter + goto_if_eq VAR_RESULT, MALE, Route104_EventScript_MayEncounter + goto_if_eq VAR_RESULT, FEMALE, Route104_EventScript_BrendanEncounter end Route104_EventScript_MayEncounter:: @@ -121,8 +116,7 @@ Route104_EventScript_MayEncounter:: waitmovement 0 copyobjectxytoperm LOCALID_RIVAL msgbox Route104_Text_MayMinesDecentLetsBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route104_EventScript_BattleMay + goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleMay msgbox Route104_Text_MayHaventRaisedPokemon, MSGBOX_DEFAULT call Route104_EventScript_RestoreMusic releaseall @@ -144,8 +138,7 @@ Route104_Movement_PlayerFaceRival: Route104_EventScript_MayAskToBattle:: msgbox Route104_Text_MayLetsBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route104_EventScript_BattleMay + goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleMay msgbox Route104_Text_MayHaventRaisedPokemon, MSGBOX_DEFAULT releaseall end @@ -160,8 +153,7 @@ Route104_EventScript_BattleMay:: Route104_EventScript_MayDefeated:: msgbox Route104_Text_MayPostBattle, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq Route104_EventScript_RestoreMusic + call_if_eq VAR_0x8008, 0, Route104_EventScript_RestoreMusic releaseall end @@ -210,8 +202,7 @@ Route104_EventScript_BrendanEncounter:: waitmovement 0 copyobjectxytoperm LOCALID_RIVAL msgbox Route104_Text_BrendanDoingGreatLetsBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route104_EventScript_BattleBrendan + goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleBrendan msgbox Route104_Text_BrendanNoConfidence, MSGBOX_DEFAULT call Route104_EventScript_RestoreMusic releaseall @@ -219,8 +210,7 @@ Route104_EventScript_BrendanEncounter:: Route104_EventScript_BrendanAskToBattle:: msgbox Route104_Text_BrendanLetsBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route104_EventScript_BattleBrendan + goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleBrendan msgbox Route104_Text_BrendanNoConfidence, MSGBOX_DEFAULT releaseall end @@ -235,8 +225,7 @@ Route104_EventScript_BattleBrendan:: Route104_EventScript_BrendanDefeated:: msgbox Route104_Text_BrendanPostBattle, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq Route104_EventScript_RestoreMusic + call_if_eq VAR_0x8008, 0, Route104_EventScript_RestoreMusic releaseall end @@ -274,8 +263,7 @@ Route104_EventScript_ExpertF:: goto_if_set FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104, Route104_EventScript_ReceivedBerry msgbox Route104_Text_PlantBerriesInSoilTakeThis, MSGBOX_DEFAULT giveitem ITEM_CHESTO_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104 msgbox Route104_Text_TrainersOftenMakeMonHoldBerries, MSGBOX_DEFAULT release @@ -292,8 +280,7 @@ Route104_EventScript_WhiteHerbFlorist:: goto_if_set FLAG_RECEIVED_WHITE_HERB, Route104_EventScript_ReceivedWhiteHerb msgbox Route104_Text_DontNeedThisTakeIt, MSGBOX_DEFAULT giveitem ITEM_WHITE_HERB - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_WHITE_HERB release end @@ -345,8 +332,7 @@ Route104_EventScript_Boy2:: goto_if_set FLAG_RECEIVED_TM09, Route104_EventScript_ReceivedBulletSeed msgbox Route104_Text_LikeFillingMouthWithSeedsTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM09 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM09 release end @@ -873,12 +859,10 @@ Route104_EventScript_Billy:: Route104_EventScript_Haley:: trainerbattle_single TRAINER_HALEY_1, Route104_Text_HaleyIntro, Route104_Text_HaleyDefeat, Route104_EventScript_TryRegisterHaleyAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route104_EventScript_RematchHaley + goto_if_eq VAR_RESULT, TRUE, Route104_EventScript_RematchHaley setvar VAR_0x8004, TRAINER_HALEY_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route104_EventScript_TryRegisterHaley + goto_if_eq VAR_RESULT, FALSE, Route104_EventScript_TryRegisterHaley msgbox Route104_Text_HaleyPostBattle, MSGBOX_DEFAULT release end @@ -916,12 +900,10 @@ Route104_EventScript_RematchHaley:: Route104_EventScript_Winston:: trainerbattle_single TRAINER_WINSTON_1, Route104_Text_WinstonIntro, Route104_Text_WinstonDefeat, Route104_EventScript_TryRegisterWinstonAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route104_EventScript_RematchWinston + goto_if_eq VAR_RESULT, TRUE, Route104_EventScript_RematchWinston setvar VAR_0x8004, TRAINER_WINSTON_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route104_EventScript_TryRegisterWinston + goto_if_eq VAR_RESULT, FALSE, Route104_EventScript_TryRegisterWinston msgbox Route104_Text_WinstonPostBattle, MSGBOX_DEFAULT release end @@ -959,12 +941,10 @@ Route104_EventScript_RematchWinston:: Route104_EventScript_Cindy:: trainerbattle_single TRAINER_CINDY_1, Route104_Text_CindyIntro, Route104_Text_CindyDefeat, Route104_EventScript_TryRegisterCindyAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route104_EventScript_RematchCindy + goto_if_eq VAR_RESULT, TRUE, Route104_EventScript_RematchCindy setvar VAR_0x8004, TRAINER_CINDY_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route104_EventScript_TryRegisterCindy + goto_if_eq VAR_RESULT, FALSE, Route104_EventScript_TryRegisterCindy msgbox Route104_Text_CindyPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc index ed2a5d7174d4..4c693cb4faaf 100644 --- a/data/maps/Route104_MrBrineysHouse/scripts.inc +++ b/data/maps/Route104_MrBrineysHouse/scripts.inc @@ -7,8 +7,7 @@ Route104_MrBrineysHouse_MapScripts:: Route104_MrBrineysHouse_OnTransition: setflag FLAG_LANDMARK_MR_BRINEY_HOUSE - compare VAR_BRINEY_HOUSE_STATE, 1 - call_if_eq Route104_MrBrineysHouse_EventScript_SetBrineyPeekoPos + call_if_eq VAR_BRINEY_HOUSE_STATE, 1, Route104_MrBrineysHouse_EventScript_SetBrineyPeekoPos call_if_set FLAG_RECEIVED_POKENAV, Route104_MrBrineysHouse_EventScript_HideRustboroRival end @@ -36,8 +35,7 @@ Route104_MrBrineysHouse_EventScript_SailingIntro:: setflag FLAG_MR_BRINEY_SAILING_INTRO msgbox Route104_MrBrineysHouse_Text_WaitUpPeeko, MSGBOX_DEFAULT msgbox Route104_MrBrineysHouse_Text_ItsYouLetsSailToDewford, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing + goto_if_eq VAR_RESULT, NO, Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing goto Route104_MrBrineysHouse_EventScript_SailToDewford end @@ -53,15 +51,13 @@ Route104_MrBrineysHouse_EventScript_WhereAreWeBound:: Route104_MrBrineysHouse_EventScript_SailBothDeliveries:: msgbox Route104_MrBrineysHouse_Text_NeedToMakeDeliveriesSailToDewford, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing + goto_if_eq VAR_RESULT, NO, Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing goto Route104_MrBrineysHouse_EventScript_SailToDewford end Route104_MrBrineysHouse_EventScript_SailDeliverPackage:: msgbox Route104_MrBrineysHouse_Text_NeedToDeliverPackageSailToDewford, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing + goto_if_eq VAR_RESULT, NO, Route104_MrBrineysHouse_EventScript_DeclineDeliverySailing goto Route104_MrBrineysHouse_EventScript_SailToDewford end diff --git a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc index 34f5ba42c4f3..5f0ec28fa51d 100644 --- a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc +++ b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc @@ -23,19 +23,15 @@ Route104_PrettyPetalFlowerShop_EventScript_ShopOwner:: goto_if_set FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_PrettyPetalFlowerShop_EventScript_AlreadyMet setflag FLAG_MET_PRETTY_PETAL_SHOP_OWNER msgbox Route104_PrettyPetalFlowerShop_Text_IntroLearnAboutBerries, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries - compare VAR_RESULT, NO - call_if_eq Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries + call_if_eq VAR_RESULT, YES, Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries + call_if_eq VAR_RESULT, NO, Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries release end Route104_PrettyPetalFlowerShop_EventScript_AlreadyMet:: msgbox Route104_PrettyPetalFlowerShop_Text_LearnAboutBerries, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries - compare VAR_RESULT, NO - call_if_eq Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries + call_if_eq VAR_RESULT, YES, Route104_PrettyPetalFlowerShop_EventScript_ExplainBerries + call_if_eq VAR_RESULT, NO, Route104_PrettyPetalFlowerShop_EventScript_DontExplainBerries release end @@ -92,8 +88,7 @@ Route104_PrettyPetalFlowerShop_EventScript_RandomBerryGirl:: random 8 addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_FLOWER_SHOP_RECEIVED_BERRY msgbox Route104_PrettyPetalFlowerShop_Text_MachineMixesBerries, MSGBOX_DEFAULT release diff --git a/data/maps/Route105/scripts.inc b/data/maps/Route105/scripts.inc index 2184edf5addc..bfad0daaaef8 100644 --- a/data/maps/Route105/scripts.inc +++ b/data/maps/Route105/scripts.inc @@ -6,10 +6,8 @@ Route105_MapScripts:: Route105_OnLoad: call_if_unset FLAG_REGI_DOORS_OPENED, Route105_CloseRegiEntrance - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute105North - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_SOUTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute105South + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH, AbnormalWeather_EventScript_PlaceTilesRoute105North + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_SOUTH, AbnormalWeather_EventScript_PlaceTilesRoute105South end Route105_CloseRegiEntrance:: @@ -18,12 +16,9 @@ Route105_CloseRegiEntrance:: return Route105_OnTransition: - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH - call_if_eq AbnormalWeather_StartKyogreWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_SOUTH - call_if_eq AbnormalWeather_StartKyogreWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_NORTH, AbnormalWeather_StartKyogreWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_105_SOUTH, AbnormalWeather_StartKyogreWeather end Route105_OnFrame: @@ -63,8 +58,7 @@ Route105_EventScript_Josue:: Route105_EventScript_Andres:: trainerbattle_single TRAINER_ANDRES_1, Route105_Text_AndresIntro, Route105_Text_AndresDefeated, Route105_EventScript_AndresRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route105_EventScript_AndresRematch + goto_if_eq VAR_RESULT, TRUE, Route105_EventScript_AndresRematch msgbox Route105_Text_AndresPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route106/scripts.inc b/data/maps/Route106/scripts.inc index 2107ce1c3bf5..0202f57f0139 100644 --- a/data/maps/Route106/scripts.inc +++ b/data/maps/Route106/scripts.inc @@ -18,8 +18,7 @@ Route106_EventScript_Kyla:: Route106_EventScript_Elliot:: trainerbattle_single TRAINER_ELLIOT_1, Route106_Text_ElliotIntro, Route106_Text_ElliotDefeated, Route106_EventScript_ElliotRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route106_EventScript_ElliotRematch + goto_if_eq VAR_RESULT, TRUE, Route106_EventScript_ElliotRematch msgbox Route106_Text_ElliotPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route107/scripts.inc b/data/maps/Route107/scripts.inc index cffeafb08f4e..b61e3e705e41 100644 --- a/data/maps/Route107/scripts.inc +++ b/data/maps/Route107/scripts.inc @@ -9,8 +9,7 @@ Route107_EventScript_Darrin:: Route107_EventScript_Tony:: trainerbattle_single TRAINER_TONY_1, Route107_Text_TonyIntro, Route107_Text_TonyDefeated, Route107_EventScript_TonyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route107_EventScript_TonyRematch + goto_if_eq VAR_RESULT, TRUE, Route107_EventScript_TonyRematch msgbox Route107_Text_TonyPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route108/scripts.inc b/data/maps/Route108/scripts.inc index 866391554565..cc2a3e9c3d46 100644 --- a/data/maps/Route108/scripts.inc +++ b/data/maps/Route108/scripts.inc @@ -29,8 +29,7 @@ Route108_EventScript_Carolina:: Route108_EventScript_Cory:: trainerbattle_single TRAINER_CORY_1, Route108_Text_CoryIntro, Route108_Text_CoryDefeated, Route108_EventScript_CoryRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route108_EventScript_CoryRematch + goto_if_eq VAR_RESULT, TRUE, Route108_EventScript_CoryRematch msgbox Route108_Text_CoryPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc index 08f0a1701f54..f0353fef4d61 100644 --- a/data/maps/Route109/scripts.inc +++ b/data/maps/Route109/scripts.inc @@ -282,8 +282,7 @@ Route109_EventScript_MrBriney:: Route109_EventScript_HaveNotDeliveredDevonGood:: message Route109_Text_BrineySailToDewfordQuestion msgbox Route109_Text_BrineySailToDewfordQuestion, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route109_EventScript_StayHere + goto_if_eq VAR_RESULT, NO, Route109_EventScript_StayHere goto Route109_EventScript_SailToDewford end @@ -334,8 +333,7 @@ Route109_EventScript_SoftSandGirl:: goto_if_set FLAG_RECEIVED_SOFT_SAND, Route109_EventScript_AlreadyReceivedSoftSand msgbox Route109_Text_YouCanHaveThis, MSGBOX_DEFAULT giveitem ITEM_SOFT_SAND - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 @@ -399,8 +397,7 @@ Route109_EventScript_Edmond:: Route109_EventScript_Ricky:: trainerbattle_single TRAINER_RICKY_1, Route109_Text_RickyIntro, Route109_Text_RickyDefeated, Route109_EventScript_RickyRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route109_EventScript_RickyRematch + goto_if_eq VAR_RESULT, TRUE, Route109_EventScript_RickyRematch msgbox Route109_Text_RickyPostBattle, MSGBOX_DEFAULT release end @@ -421,8 +418,7 @@ Route109_EventScript_RickyRematch:: Route109_EventScript_Lola:: trainerbattle_single TRAINER_LOLA_1, Route109_Text_LolaIntro, Route109_Text_LolaDefeated, Route109_EventScript_LolaRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route109_EventScript_LolaRematch + goto_if_eq VAR_RESULT, TRUE, Route109_EventScript_LolaRematch msgbox Route109_Text_LolaPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route109_SeashoreHouse/scripts.inc b/data/maps/Route109_SeashoreHouse/scripts.inc index d1a892b7c078..afb2a4aa0dd4 100644 --- a/data/maps/Route109_SeashoreHouse/scripts.inc +++ b/data/maps/Route109_SeashoreHouse/scripts.inc @@ -25,8 +25,7 @@ Route109_SeashoreHouse_EventScript_AlreadyGaveIntroduction:: Route109_SeashoreHouse_EventScript_DefeatedTrainers:: msgbox Route109_SeashoreHouse_Text_TakeTheseSodaPopBottles, MSGBOX_DEFAULT giveitem ITEM_SODA_POP, 6 - compare VAR_RESULT, FALSE - goto_if_eq Route109_SeashoreHouse_EventScript_BagFull + goto_if_eq VAR_RESULT, FALSE, Route109_SeashoreHouse_EventScript_BagFull setflag FLAG_RECEIVED_6_SODA_POP release end @@ -39,8 +38,7 @@ Route109_SeashoreHouse_EventScript_BagFull:: Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: showmoneybox 0, 0 msgbox Route109_SeashoreHouse_Text_WantToBuySodaPop, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route109_SeashoreHouse_EventScript_BuySodaPop + goto_if_eq VAR_RESULT, YES, Route109_SeashoreHouse_EventScript_BuySodaPop msgbox Route109_SeashoreHouse_Text_ThatsTooBad, MSGBOX_DEFAULT hidemoneybox release @@ -48,11 +46,9 @@ Route109_SeashoreHouse_EventScript_AlreadyReceivedSodaPop:: Route109_SeashoreHouse_EventScript_BuySodaPop:: checkmoney 300 - compare VAR_RESULT, FALSE - goto_if_eq Route109_SeashoreHouse_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, FALSE, Route109_SeashoreHouse_EventScript_NotEnoughMoney checkitemspace ITEM_SODA_POP - compare VAR_RESULT, FALSE - goto_if_eq Route109_SeashoreHouse_EventScript_NotEnoughSpace + goto_if_eq VAR_RESULT, FALSE, Route109_SeashoreHouse_EventScript_NotEnoughSpace msgbox Route109_SeashoreHouse_Text_HereYouGo, MSGBOX_DEFAULT removemoney 300 updatemoneybox diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc index abb42cc127e5..7d16c8b10c28 100644 --- a/data/maps/Route110/scripts.inc +++ b/data/maps/Route110/scripts.inc @@ -16,8 +16,7 @@ Route110_OnResume: Route110_OnTransition: call Common_EventScript_SetupRivalGfxId call Common_EventScript_SetupRivalOnBikeGfxId - compare VAR_CYCLING_CHALLENGE_STATE, 1 - call_if_eq Route110_EventScript_SaveCyclingMusic + call_if_eq VAR_CYCLING_CHALLENGE_STATE, 1, Route110_EventScript_SaveCyclingMusic end Route110_EventScript_SaveCyclingMusic:: @@ -136,8 +135,7 @@ Route110_EventScript_TrickHouseSign:: Route110_EventScript_CyclingRoadResultsSign:: lockall specialvar VAR_RESULT, GetRecordedCyclingRoadResults - compare VAR_RESULT, FALSE - goto_if_eq Route110_EventScript_NoRecordSet + goto_if_eq VAR_RESULT, FALSE, Route110_EventScript_NoRecordSet msgbox Route110_Text_BestRecord, MSGBOX_DEFAULT releaseall end @@ -151,10 +149,8 @@ Route110_EventScript_ChallengeGuy:: lock faceplayer specialvar VAR_RESULT, GetPlayerAvatarBike - compare VAR_RESULT, 1 - goto_if_eq Route110_EventScript_PlayerRidingAcroBike - compare VAR_CYCLING_CHALLENGE_STATE, 0 - goto_if_eq Route110_EventScript_PlayerNotRidingBike + goto_if_eq VAR_RESULT, 1, Route110_EventScript_PlayerRidingAcroBike + goto_if_eq VAR_CYCLING_CHALLENGE_STATE, 0, Route110_EventScript_PlayerNotRidingBike msgbox Route110_Text_AlwaysAimHigher, MSGBOX_DEFAULT release end @@ -182,8 +178,7 @@ Route110_EventScript_Jaclyn:: Route110_EventScript_Edwin:: trainerbattle_single TRAINER_EDWIN_1, Route110_Text_EdwinIntro, Route110_Text_EdwinDefeated, Route110_EventScript_EdwinRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route110_EventScript_EdwinRematch + goto_if_eq VAR_RESULT, TRUE, Route110_EventScript_EdwinRematch msgbox Route110_Text_EdwinPostBattle, MSGBOX_DEFAULT release end @@ -219,8 +214,7 @@ Route110_EventScript_Anthony:: Route110_EventScript_Benjamin:: trainerbattle_single TRAINER_BENJAMIN_1, Route110_Text_BenjaminIntro, Route110_Text_BenjaminDefeated, Route110_EventScript_BenjaminRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route110_EventScript_BenjaminRematch + goto_if_eq VAR_RESULT, TRUE, Route110_EventScript_BenjaminRematch msgbox Route110_Text_BenjaminPostBattle, MSGBOX_DEFAULT release end @@ -246,8 +240,7 @@ Route110_EventScript_Jasmine:: Route110_EventScript_Abigail:: trainerbattle_single TRAINER_ABIGAIL_1, Route110_Text_AbigailIntro, Route110_Text_AbigailDefeated, Route110_EventScript_AbigailRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route110_EventScript_AbigailRematch + goto_if_eq VAR_RESULT, TRUE, Route110_EventScript_AbigailRematch msgbox Route110_Text_AbigailPostBattle, MSGBOX_DEFAULT release end @@ -268,8 +261,7 @@ Route110_EventScript_AbigailRematch:: Route110_EventScript_Isabel:: trainerbattle_single TRAINER_ISABEL_1, Route110_Text_IsabelIntro, Route110_Text_IsabelDefeated, Route110_EventScript_IsabelRegisterMatchCallAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route110_EventScript_IsabelRematch + goto_if_eq VAR_RESULT, TRUE, Route110_EventScript_IsabelRematch msgbox Route110_Text_IsabelPostBattle, MSGBOX_DEFAULT release end @@ -384,10 +376,8 @@ Route110_EventScript_RivalTrigger3:: Route110_EventScript_RivalScene:: lockall checkplayergender - compare VAR_RESULT, MALE - call_if_eq Route110_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - call_if_eq Route110_EventScript_PlayBrendanMusic + call_if_eq VAR_RESULT, MALE, Route110_EventScript_PlayMayMusic + call_if_eq VAR_RESULT, FEMALE, Route110_EventScript_PlayBrendanMusic applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown waitmovement 0 applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark @@ -395,17 +385,12 @@ Route110_EventScript_RivalScene:: applymovement LOCALID_RIVAL, Common_Movement_Delay48 waitmovement 0 delay 30 - compare VAR_0x8008, 1 - call_if_eq Route110_EventScript_RivalApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq Route110_EventScript_RivalApproachPlayer2 - compare VAR_0x8008, 3 - call_if_eq Route110_EventScript_RivalApproachPlayer3 + call_if_eq VAR_0x8008, 1, Route110_EventScript_RivalApproachPlayer1 + call_if_eq VAR_0x8008, 2, Route110_EventScript_RivalApproachPlayer2 + call_if_eq VAR_0x8008, 3, Route110_EventScript_RivalApproachPlayer3 checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route110_EventScript_MayBattle - compare VAR_RESULT, FEMALE - goto_if_eq Route110_EventScript_BrendanBattle + goto_if_eq VAR_RESULT, MALE, Route110_EventScript_MayBattle + goto_if_eq VAR_RESULT, FEMALE, Route110_EventScript_BrendanBattle releaseall end @@ -483,23 +468,17 @@ Route110_EventScript_GiveItemfinder:: Route110_EventScript_RivalExit:: closemessage - compare VAR_0x8008, 1 - call_if_eq Route110_EventScript_MoveRival1 - compare VAR_0x8008, 2 - call_if_eq Route110_EventScript_MoveRival2 - compare VAR_0x8008, 3 - call_if_eq Route110_EventScript_MoveRival3 + 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 delay 45 - compare VAR_0x8008, 1 - call_if_eq Route110_EventScript_RivalExit1 - compare VAR_0x8008, 2 - call_if_eq Route110_EventScript_RivalExit2 - compare VAR_0x8008, 3 - call_if_eq Route110_EventScript_RivalExit3 + 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 setvar VAR_ROUTE110_STATE, 1 savebgm MUS_DUMMY @@ -625,14 +604,10 @@ Route110_EventScript_BirchScene:: waitmovement 0 applymovement LOCALID_BIRCH, Common_Movement_Delay48 waitmovement 0 - compare VAR_0x8008, 1 - call_if_eq Route110_EventScript_BirchApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq Route110_EventScript_BirchApproachPlayer2 - compare VAR_0x8008, 3 - call_if_eq Route110_EventScript_BirchApproachPlayer3 - compare VAR_0x8008, 4 - call_if_eq Route110_EventScript_BirchApproachPlayer4 + call_if_eq VAR_0x8008, 1, Route110_EventScript_BirchApproachPlayer1 + call_if_eq VAR_0x8008, 2, Route110_EventScript_BirchApproachPlayer2 + call_if_eq VAR_0x8008, 3, Route110_EventScript_BirchApproachPlayer3 + call_if_eq VAR_0x8008, 4, Route110_EventScript_BirchApproachPlayer4 msgbox Route110_Text_ImagineSeeingYouHere, MSGBOX_DEFAULT closemessage delay 20 @@ -656,14 +631,10 @@ Route110_EventScript_BirchScene:: setflag FLAG_ENABLE_PROF_BIRCH_MATCH_CALL msgbox Route110_Text_KeepAnEyeOutForRival, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 1 - call_if_eq Route110_EventScript_BirchExit1 - compare VAR_0x8008, 2 - call_if_eq Route110_EventScript_BirchExit2 - compare VAR_0x8008, 3 - call_if_eq Route110_EventScript_BirchExit3 - compare VAR_0x8008, 4 - call_if_eq Route110_EventScript_BirchExit4 + call_if_eq VAR_0x8008, 1, Route110_EventScript_BirchExit1 + 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 setvar VAR_REGISTER_BIRCH_STATE, 2 releaseall diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc index 4bad754c4dca..5eb1f3dea2a2 100644 --- a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc +++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc @@ -11,8 +11,7 @@ Route110_SeasideCyclingRoadNorthEntrance_EventScript_Clerk:: Route110_SeasideCyclingRoadNorthEntrance_EventScript_BikeCheck:: lockall specialvar VAR_RESULT, GetPlayerAvatarBike - compare VAR_RESULT, 0 - goto_if_eq Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike + goto_if_eq VAR_RESULT, 0, Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike setflag FLAG_SYS_CYCLING_ROAD setvar VAR_TEMP_1, 1 releaseall diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc index 92b4b3e44c19..df53f55ccf17 100644 --- a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc +++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc @@ -3,10 +3,8 @@ Route110_SeasideCyclingRoadSouthEntrance_MapScripts:: .byte 0 Route110_SeasideCyclingRoadSouthEntrance_OnTransition: - compare VAR_CYCLING_CHALLENGE_STATE, 3 - call_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge - compare VAR_CYCLING_CHALLENGE_STATE, 2 - call_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge + 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:: @@ -23,10 +21,8 @@ Route110_SeasideCyclingRoadSouthEntrance_EventScript_Clerk:: Route110_SeasideCyclingRoadSouthEntrance_EventScript_BikeCheck:: lockall specialvar VAR_RESULT, GetPlayerAvatarBike - compare VAR_RESULT, 2 - call_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_OnMachBike - compare VAR_RESULT, 0 - goto_if_eq Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike + 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 diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc index 116c3a4febf4..be8f75e961ea 100644 --- a/data/maps/Route110_TrickHouseEnd/scripts.inc +++ b/data/maps/Route110_TrickHouseEnd/scripts.inc @@ -8,8 +8,7 @@ Route110_TrickHouseEnd_MapScripts:: .byte 0 Route110_TrickHouseEnd_OnResume: - compare VAR_TEMP_1, 1 - call_if_eq Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile + call_if_eq VAR_TEMP_1, 1, Route110_TrickHouseEnd_EventScript_SetDoorClosedMetatile end Route110_TrickHouseEnd_OnTransition: @@ -63,8 +62,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle1:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_RARE_CANDY - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -76,8 +74,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle2:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_TIMER_BALL - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -89,8 +86,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle3:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_HARD_STONE - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -102,8 +98,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle4:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_SMOKE_BALL - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -115,8 +110,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle5:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_TM12 - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -128,8 +122,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle6:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_MAGNET - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -141,8 +134,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle7:: msgbox Route110_TrickHouseEnd_Text_YouHaveEarnedThisReward, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 giveitem ITEM_PP_MAX - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_BagFull msgbox Route110_TrickHouseEnd_Text_MakeNewTricksToStumpYou, MSGBOX_DEFAULT closemessage call Route110_TrickHouseEnd_EventScript_TrickMasterExit @@ -152,14 +144,10 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle7:: Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: msgbox Route110_TrickHouseEnd_Text_AllNightPolishingFloors, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_SOUTH - call_if_eq Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth - compare VAR_FACING, DIR_NORTH - call_if_eq Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth - compare VAR_FACING, DIR_WEST - call_if_eq Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest - compare VAR_FACING, DIR_EAST - call_if_eq Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast + call_if_eq VAR_FACING, DIR_SOUTH, Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth + call_if_eq VAR_FACING, DIR_NORTH, Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth + call_if_eq VAR_FACING, DIR_WEST, Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest + call_if_eq VAR_FACING, DIR_EAST, Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast delay 30 msgbox Route110_TrickHouseEnd_Text_FountainOfIdeasRunDry, MSGBOX_DEFAULT closemessage @@ -169,8 +157,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle8:: msgbox Route110_TrickHouseEnd_Text_DefeatedMePreferWhichTent, MSGBOX_DEFAULT setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 call Route110_TrickHouseEnd_EventScript_ChooseTent - compare VAR_RESULT, FALSE - call_if_eq Route110_TrickHouseEnd_EventScript_NoRoomForTent + call_if_eq VAR_RESULT, FALSE, Route110_TrickHouseEnd_EventScript_NoRoomForTent msgbox Route110_TrickHouseEnd_Text_LeavingOnJourney, MSGBOX_DEFAULT call Route110_TrickHouseEnd_EventScript_TrickMasterExit special ResetTrickHouseNuggetFlag diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index a0250c44ce3f..44dda8c5c164 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -17,18 +17,12 @@ Route110_TrickHouseEntrance_MapScripts:: Route110_TrickHouseEntrance_OnTransition: setflag FLAG_LANDMARK_TRICK_HOUSE - compare VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 1 - goto_if_eq Route110_TrickHouseEntrance_EventScript_EnterFromCorridor - compare VAR_TRICK_HOUSE_PRIZE_PICKUP, 1 - goto_if_eq Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward - compare VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1 - goto_if_eq Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor - compare VAR_TRICK_HOUSE_ENTRANCE_STATE, 5 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle - compare VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle - compare VAR_TRICK_HOUSE_ENTRANCE_STATE, 0 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle + goto_if_eq VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 1, Route110_TrickHouseEntrance_EventScript_EnterFromCorridor + goto_if_eq VAR_TRICK_HOUSE_PRIZE_PICKUP, 1, Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward + goto_if_eq VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor + call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 5, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle + call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 3, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle + call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 0, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_ReadyBeingWatchedTrigger case 1, Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched1 @@ -38,8 +32,7 @@ Route110_TrickHouseEntrance_OnTransition: Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 - compare VAR_TRICK_HOUSE_LEVEL, 8 - goto_if_eq Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 2 end @@ -55,22 +48,14 @@ Route110_TrickHouseEntrance_EventScript_EnterFromCorridor:: Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 0 - compare VAR_TRICK_HOUSE_LEVEL, 1 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2 - compare VAR_TRICK_HOUSE_LEVEL, 2 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3 - compare VAR_TRICK_HOUSE_LEVEL, 3 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4 - compare VAR_TRICK_HOUSE_LEVEL, 4 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5 - compare VAR_TRICK_HOUSE_LEVEL, 5 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6 - compare VAR_TRICK_HOUSE_LEVEL, 6 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7 - compare VAR_TRICK_HOUSE_LEVEL, 7 - call_if_eq Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8 - compare VAR_TRICK_HOUSE_LEVEL, 8 - call_if_eq Route110_TrickHouseEntrance_EventScript_FinishedPuzzles + call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_FinishedPuzzles return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2:: @@ -216,8 +201,7 @@ Route110_TrickHouseEntrance_OnFrame: Route110_TrickHouseEntrance_EventScript_BeginChallenge:: lockall delay 20 - compare VAR_TRICK_HOUSE_LEVEL, 0 - call_if_eq Route110_TrickHouseEntrance_EventScript_MeetTrickMaster + call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_MeetTrickMaster msgbox Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse, MSGBOX_DEFAULT closemessage delay 20 @@ -251,22 +235,14 @@ Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay48 waitmovement 0 - compare VAR_TRICK_HOUSE_LEVEL, 0 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk - compare VAR_TRICK_HOUSE_LEVEL, 1 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBehindTree - compare VAR_TRICK_HOUSE_LEVEL, 2 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundInDresser - compare VAR_TRICK_HOUSE_LEVEL, 3 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow - compare VAR_TRICK_HOUSE_LEVEL, 4 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundInPlanter - compare VAR_TRICK_HOUSE_LEVEL, 5 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundInCupboard - compare VAR_TRICK_HOUSE_LEVEL, 6 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBehindWindow - compare VAR_TRICK_HOUSE_LEVEL, 7 - call_if_eq Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion + call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk + call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_FoundBehindTree + call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_FoundInDresser + call_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow + call_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_FoundInPlanter + call_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_FoundInCupboard + call_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_FoundBehindWindow + call_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion closemessage setvar VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1 warpsilent MAP_ROUTE110_TRICK_HOUSE_ENTRANCE, 6, 2 @@ -352,88 +328,67 @@ Route110_TrickHouseEntrance_EventScript_GiveReward:: applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward, MSGBOX_DEFAULT - compare VAR_TRICK_HOUSE_LEVEL, 1 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward - compare VAR_TRICK_HOUSE_LEVEL, 2 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward - compare VAR_TRICK_HOUSE_LEVEL, 3 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward - compare VAR_TRICK_HOUSE_LEVEL, 4 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward - compare VAR_TRICK_HOUSE_LEVEL, 5 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward - compare VAR_TRICK_HOUSE_LEVEL, 6 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward - compare VAR_TRICK_HOUSE_LEVEL, 7 - goto_if_eq Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward end Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward:: giveitem ITEM_RARE_CANDY - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward:: giveitem ITEM_TIMER_BALL - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward:: giveitem ITEM_HARD_STONE - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward:: giveitem ITEM_SMOKE_BALL - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward:: giveitem ITEM_TM12 - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward:: giveitem ITEM_MAGNET - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: giveitem ITEM_PP_MAX - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_GotReward - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward + call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end @@ -451,10 +406,8 @@ Route110_TrickHouseEntrance_EventScript_MechadollReward:: waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_MechadollWhichTent, MSGBOX_DEFAULT call Route110_TrickHouseEntrance_EventScript_ChooseTent - compare VAR_RESULT, TRUE - goto_if_eq Route110_TrickHouseEntrance_EventScript_ReceivedTent - compare VAR_RESULT, FALSE - call_if_eq Common_EventScript_NoRoomForDecor + goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_ReceivedTent + call_if_eq VAR_RESULT, FALSE, Common_EventScript_NoRoomForDecor msgbox Route110_TrickHouseEntrance_Text_PCFullAgain, MSGBOX_DEFAULT releaseall end @@ -506,8 +459,7 @@ Route110_TrickHouseEntrance_EventScript_ItsAScroll:: Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: msgbox Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll, MSGBOX_YESNO closemessage - compare VAR_RESULT, YES - goto_if_eq Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom + goto_if_eq VAR_RESULT, YES, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom releaseall end @@ -588,8 +540,7 @@ Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote:: end Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage:: - compare VAR_TRICK_HOUSE_LEVEL, 8 - goto_if_eq Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2 + goto_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2 msgbox Route110_TrickHouseEntrance_Text_ItsAScroll, MSGBOX_DEFAULT releaseall end @@ -613,8 +564,7 @@ Route110_TrickHousePuzzle_EventScript_Door:: end Route110_TrickHousePuzzle1_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2 @@ -624,8 +574,7 @@ Route110_TrickHousePuzzle1_EventScript_Door:: end Route110_TrickHousePuzzle2_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_2_STATE, 2 @@ -635,8 +584,7 @@ Route110_TrickHousePuzzle2_EventScript_Door:: end Route110_TrickHousePuzzle3_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_3_STATE, 2 @@ -646,8 +594,7 @@ Route110_TrickHousePuzzle3_EventScript_Door:: end Route110_TrickHousePuzzle4_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_4_STATE, 2 @@ -657,8 +604,7 @@ Route110_TrickHousePuzzle4_EventScript_Door:: end Route110_TrickHousePuzzle5_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_5_STATE, 2 @@ -668,8 +614,7 @@ Route110_TrickHousePuzzle5_EventScript_Door:: end Route110_TrickHousePuzzle6_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_6_STATE, 2 @@ -679,8 +624,7 @@ Route110_TrickHousePuzzle6_EventScript_Door:: end Route110_TrickHousePuzzle7_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 2 @@ -690,8 +634,7 @@ Route110_TrickHousePuzzle7_EventScript_Door:: end Route110_TrickHousePuzzle8_EventScript_Door:: - compare VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle_EventScript_DoorLocked + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_8_STATE, 2 @@ -722,12 +665,9 @@ Route110_TrickHouseEntrance_EventScript_TrickMasterHiding:: lockall msgbox Route110_TrickHouseEntrance_Text_YoureBeingWatched, MSGBOX_DEFAULT releaseall - compare VAR_TRICK_HOUSE_LEVEL, 0 - call_if_eq Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1 - compare VAR_TRICK_HOUSE_LEVEL, 1 - call_if_eq Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2 - compare VAR_TRICK_HOUSE_LEVEL, 2 - call_if_eq Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2 + call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3 setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end diff --git a/data/maps/Route110_TrickHousePuzzle1/scripts.inc b/data/maps/Route110_TrickHousePuzzle1/scripts.inc index 920a43819f8b..2ed769167a0b 100644 --- a/data/maps/Route110_TrickHousePuzzle1/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle1/scripts.inc @@ -3,8 +3,7 @@ Route110_TrickHousePuzzle1_MapScripts:: .byte 0 Route110_TrickHousePuzzle1_OnLoad: - compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2 - goto_if_eq Route110_TrickHousePuzzle1_EventScript_OpenDoor + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2, Route110_TrickHousePuzzle1_EventScript_OpenDoor end Route110_TrickHousePuzzle1_EventScript_OpenDoor:: @@ -13,8 +12,7 @@ Route110_TrickHousePuzzle1_EventScript_OpenDoor:: Route110_TrickHousePuzzle1_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle1_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0, Route110_TrickHousePuzzle1_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle2/scripts.inc b/data/maps/Route110_TrickHousePuzzle2/scripts.inc index 4e8c52cf4a37..012a62d93d6f 100644 --- a/data/maps/Route110_TrickHousePuzzle2/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle2/scripts.inc @@ -4,14 +4,10 @@ Route110_TrickHousePuzzle2_MapScripts:: .byte 0 Route110_TrickHousePuzzle2_OnResume: - compare VAR_TEMP_1, 1 - call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton1 - compare VAR_TEMP_2, 1 - call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton2 - compare VAR_TEMP_3, 1 - call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton3 - compare VAR_TEMP_4, 1 - call_if_eq Route110_TrickHousePuzzle2_EventScript_PressButton4 + call_if_eq VAR_TEMP_1, 1, Route110_TrickHousePuzzle2_EventScript_PressButton1 + call_if_eq VAR_TEMP_2, 1, Route110_TrickHousePuzzle2_EventScript_PressButton2 + call_if_eq VAR_TEMP_3, 1, Route110_TrickHousePuzzle2_EventScript_PressButton3 + call_if_eq VAR_TEMP_4, 1, Route110_TrickHousePuzzle2_EventScript_PressButton4 end Route110_TrickHousePuzzle2_OnTransition: @@ -23,8 +19,7 @@ Route110_TrickHousePuzzle2_OnTransition: Route110_TrickHousePuzzle2_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle2_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0, Route110_TrickHousePuzzle2_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle3/scripts.inc b/data/maps/Route110_TrickHousePuzzle3/scripts.inc index 2b732124fb4a..1831639b18a2 100644 --- a/data/maps/Route110_TrickHousePuzzle3/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle3/scripts.inc @@ -5,10 +5,8 @@ Route110_TrickHousePuzzle3_MapScripts:: Route110_TrickHousePuzzle3_OnResume: call Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles - compare VAR_TEMP_9, 0 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState1 + call_if_eq VAR_TEMP_9, 0, Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle3_EventScript_SetDoorsState1 end Route110_TrickHousePuzzle3_OnTransition: @@ -25,14 +23,10 @@ Route110_TrickHousePuzzle3_EventScript_UpdateButtonMetatiles:: setmetatile 3, 11, METATILE_TrickHousePuzzle_Button_Up, FALSE setmetatile 12, 5, METATILE_TrickHousePuzzle_Button_Up, FALSE setmetatile 8, 2, METATILE_TrickHousePuzzle_Button_Up, FALSE - compare VAR_TEMP_8, 1 - call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile - compare VAR_TEMP_8, 2 - call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton2Metatile - compare VAR_TEMP_8, 3 - call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton3Metatile - compare VAR_TEMP_8, 4 - call_if_eq Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile + call_if_eq VAR_TEMP_8, 1, Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile + call_if_eq VAR_TEMP_8, 2, Route110_TrickHousePuzzle3_EventScript_PressedButton2Metatile + call_if_eq VAR_TEMP_8, 3, Route110_TrickHousePuzzle3_EventScript_PressedButton3Metatile + call_if_eq VAR_TEMP_8, 4, Route110_TrickHousePuzzle3_EventScript_PressedButton4Metatile return Route110_TrickHousePuzzle3_EventScript_PressedButton1Metatile:: @@ -241,14 +235,10 @@ Route110_TrickHousePuzzle3_EventScript_SetButton:: setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 setvar VAR_TEMP_4, 0 - compare VAR_TEMP_8, 1 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetButton1 - compare VAR_TEMP_8, 2 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetButton2 - compare VAR_TEMP_8, 3 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetButton3 - compare VAR_TEMP_8, 4 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetButton4 + call_if_eq VAR_TEMP_8, 1, Route110_TrickHousePuzzle3_EventScript_SetButton1 + call_if_eq VAR_TEMP_8, 2, Route110_TrickHousePuzzle3_EventScript_SetButton2 + call_if_eq VAR_TEMP_8, 3, Route110_TrickHousePuzzle3_EventScript_SetButton3 + call_if_eq VAR_TEMP_8, 4, Route110_TrickHousePuzzle3_EventScript_SetButton4 return Route110_TrickHousePuzzle3_EventScript_SetButton1:: @@ -268,15 +258,11 @@ Route110_TrickHousePuzzle3_EventScript_SetButton4:: return Route110_TrickHousePuzzle3_EventScript_AlternateDoors:: - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 - compare VAR_TEMP_9, 0 - call_if_eq Route110_TrickHousePuzzle3_EventScript_SetDoorsState1 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle3_EventScript_SetDoorsState0 + call_if_eq VAR_TEMP_9, 0, Route110_TrickHousePuzzle3_EventScript_SetDoorsState1 special DrawWholeMapView - compare VAR_TEMP_9, 1 - goto_if_eq Route110_TrickHousePuzzle3_EventScript_ClearAltDoorState - compare VAR_TEMP_9, 0 - goto_if_eq Route110_TrickHousePuzzle3_EventScript_SetAltDoorState + goto_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle3_EventScript_ClearAltDoorState + goto_if_eq VAR_TEMP_9, 0, Route110_TrickHousePuzzle3_EventScript_SetAltDoorState end Route110_TrickHousePuzzle3_EventScript_ClearAltDoorState:: @@ -291,8 +277,7 @@ Route110_TrickHousePuzzle3_EventScript_SetAltDoorState:: Route110_TrickHousePuzzle3_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle3_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0, Route110_TrickHousePuzzle3_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle4/scripts.inc b/data/maps/Route110_TrickHousePuzzle4/scripts.inc index 10f49adb50ef..2350d4ceb2fd 100644 --- a/data/maps/Route110_TrickHousePuzzle4/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle4/scripts.inc @@ -3,8 +3,7 @@ Route110_TrickHousePuzzle4_MapScripts:: Route110_TrickHousePuzzle4_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle4_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0, Route110_TrickHousePuzzle4_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle5/scripts.inc b/data/maps/Route110_TrickHousePuzzle5/scripts.inc index c15c4ee7304c..e0fa432bd2ae 100644 --- a/data/maps/Route110_TrickHousePuzzle5/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle5/scripts.inc @@ -19,8 +19,7 @@ Route110_TrickHousePuzzle5_OnTransition: Route110_TrickHousePuzzle5_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0, Route110_TrickHousePuzzle5_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end @@ -33,8 +32,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1:: lockall applymovement LOCALID_MECHADOLL_1, Common_Movement_FacePlayer waitmovement 0 - compare VAR_TEMP_1, 1 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough + goto_if_eq VAR_TEMP_1, 1, Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate end @@ -43,8 +41,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2:: lockall applymovement LOCALID_MECHADOLL_2, Common_Movement_FacePlayer waitmovement 0 - compare VAR_TEMP_2, 1 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough + goto_if_eq VAR_TEMP_2, 1, Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate end @@ -53,8 +50,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3:: lockall applymovement LOCALID_MECHADOLL_3, Common_Movement_FacePlayer waitmovement 0 - compare VAR_TEMP_3, 1 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough + goto_if_eq VAR_TEMP_3, 1, Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate end @@ -63,8 +59,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4:: lockall applymovement LOCALID_MECHADOLL_4, Common_Movement_FacePlayer waitmovement 0 - compare VAR_TEMP_4, 1 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough + goto_if_eq VAR_TEMP_4, 1, Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate end @@ -73,8 +68,7 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll5:: lockall applymovement LOCALID_MECHADOLL_5, Common_Movement_FacePlayer waitmovement 0 - compare VAR_TEMP_5, 1 - goto_if_eq Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough + goto_if_eq VAR_TEMP_5, 1, Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough setvar VAR_TEMP_9, 0 goto Route110_TrickHousePuzzle5_EventScript_Mechadoll5Activate end @@ -226,14 +220,10 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll1Activate:: waitmovement 0 applymovement LOCALID_MECHADOLL_1, Common_Movement_Delay48 waitmovement 0 - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 - compare VAR_TEMP_9, 2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 - compare VAR_TEMP_9, 3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 - compare VAR_TEMP_9, 4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 + call_if_eq VAR_TEMP_9, 2, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 + call_if_eq VAR_TEMP_9, 3, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 + call_if_eq VAR_TEMP_9, 4, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll1Intro, MSGBOX_DEFAULT random 3 switch VAR_RESULT @@ -250,16 +240,11 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll2Activate:: waitmovement 0 applymovement LOCALID_MECHADOLL_2, Common_Movement_Delay48 waitmovement 0 - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1 - compare VAR_TEMP_9, 2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2 - compare VAR_TEMP_9, 3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3 - compare VAR_TEMP_9, 4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4 - compare VAR_TEMP_9, 5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1 + call_if_eq VAR_TEMP_9, 2, Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2 + call_if_eq VAR_TEMP_9, 3, Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3 + call_if_eq VAR_TEMP_9, 4, Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4 + call_if_eq VAR_TEMP_9, 5, Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll2Intro, MSGBOX_DEFAULT random 3 switch VAR_RESULT @@ -276,14 +261,10 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll3Activate:: waitmovement 0 applymovement LOCALID_MECHADOLL_3, Common_Movement_Delay48 waitmovement 0 - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 - compare VAR_TEMP_9, 2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 - compare VAR_TEMP_9, 3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 - compare VAR_TEMP_9, 4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 + call_if_eq VAR_TEMP_9, 2, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 + call_if_eq VAR_TEMP_9, 3, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 + call_if_eq VAR_TEMP_9, 4, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll3Intro, MSGBOX_DEFAULT random 3 switch VAR_RESULT @@ -300,14 +281,10 @@ Route110_TrickHousePuzzle5_EventScript_Mechadoll4Activate:: waitmovement 0 applymovement LOCALID_MECHADOLL_4, Common_Movement_Delay48 waitmovement 0 - compare VAR_TEMP_9, 1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 - compare VAR_TEMP_9, 2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 - compare VAR_TEMP_9, 3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 - compare VAR_TEMP_9, 4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 + call_if_eq VAR_TEMP_9, 1, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1 + call_if_eq VAR_TEMP_9, 2, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2 + call_if_eq VAR_TEMP_9, 3, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3 + call_if_eq VAR_TEMP_9, 4, Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4 msgbox Route110_TrickHousePuzzle5_Text_Mechadoll4Intro, MSGBOX_DEFAULT random 3 switch VAR_RESULT @@ -487,133 +464,83 @@ Route110_TrickHousePuzzle5_EventScript_CorrectGoThrough:: @ Mechadoll 5 never walks, all the Mechadoll5Walk scripts are unused @ No mechadoll walks left 5 paces, all the WalkLeft5 scripts are unused Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft1:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft1 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft2:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft2 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft3:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft3 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft4:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft4 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkLeft5:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkLeft5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkLeft5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkLeft5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkLeft5 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight1:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight1 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight1 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight1 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight2:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight2 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight2 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight2 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight3:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight3 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight3 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight3 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight4:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight4 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight4 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight4 return Route110_TrickHousePuzzle5_EventScript_MechadollWalkRight5:: - compare VAR_TEMP_8, LOCALID_MECHADOLL_1 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_2 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_3 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_4 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight5 - compare VAR_TEMP_8, LOCALID_MECHADOLL_5 - call_if_eq Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_1, Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkRight5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_2, Route110_TrickHousePuzzle5_EventScript_Mechadoll2WalkRight5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_3, Route110_TrickHousePuzzle5_EventScript_Mechadoll3WalkRight5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_4, Route110_TrickHousePuzzle5_EventScript_Mechadoll4WalkRight5 + call_if_eq VAR_TEMP_8, LOCALID_MECHADOLL_5, Route110_TrickHousePuzzle5_EventScript_Mechadoll5WalkRight5 return Route110_TrickHousePuzzle5_EventScript_Mechadoll1WalkLeft1:: diff --git a/data/maps/Route110_TrickHousePuzzle6/scripts.inc b/data/maps/Route110_TrickHousePuzzle6/scripts.inc index 35d657acc379..e442d094d59f 100644 --- a/data/maps/Route110_TrickHousePuzzle6/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle6/scripts.inc @@ -17,8 +17,7 @@ Route110_TrickHousePuzzle6_EventScript_InitPuzzle:: Route110_TrickHousePuzzle6_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle6_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0, Route110_TrickHousePuzzle6_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc index 473c39992ab3..a47df82cac2f 100644 --- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc @@ -72,8 +72,7 @@ Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff:: return Route110_TrickHousePuzzle7_OnTransition: - compare VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 - goto_if_eq Route110_TrickHousePuzzle7_EventScript_TeleportedTransition + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_TeleportedTransition clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1 clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2 clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3 @@ -85,8 +84,7 @@ Route110_TrickHousePuzzle7_EventScript_TeleportedTransition:: end Route110_TrickHousePuzzle7_OnLoad: - compare VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1 - call_if_eq Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles + call_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles end Route110_TrickHousePuzzle7_OnFrame: @@ -99,8 +97,7 @@ Route110_TrickHousePuzzle7_EventScript_ClearState2:: Route110_TrickHousePuzzle7_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle7_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0, Route110_TrickHousePuzzle7_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route110_TrickHousePuzzle8/scripts.inc b/data/maps/Route110_TrickHousePuzzle8/scripts.inc index 310751e5dfd2..371f610004ae 100644 --- a/data/maps/Route110_TrickHousePuzzle8/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle8/scripts.inc @@ -3,8 +3,7 @@ Route110_TrickHousePuzzle8_MapScripts:: Route110_TrickHousePuzzle8_EventScript_Scroll:: lockall - compare VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0 - goto_if_eq Route110_TrickHousePuzzle8_EventScript_FoundScroll + goto_if_eq VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0, Route110_TrickHousePuzzle8_EventScript_FoundScroll goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain end diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 2007c89f6c91..6cb83b452810 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -15,8 +15,7 @@ Route111_MapScripts:: Route111_OnLoad: call_if_unset FLAG_REGI_DOORS_OPENED, Route111_EventScript_CloseDesertRuins - compare VAR_MIRAGE_TOWER_STATE, 1 - call_if_eq Route111_EventScript_ShowTemporaryMirageTower + call_if_eq VAR_MIRAGE_TOWER_STATE, 1, Route111_EventScript_ShowTemporaryMirageTower end Route111_EventScript_CloseDesertRuins:: @@ -50,10 +49,8 @@ Route111_OnTransition: setvar VAR_TRAINER_HILL_IS_ACTIVE, 0 special SetMirageTowerVisibility call_if_unset FLAG_MIRAGE_TOWER_VISIBLE, Route111_EventScript_SetLayoutNoMirageTower - compare VAR_MIRAGE_TOWER_STATE, 1 - call_if_eq Route111_EventScript_SetFallingPlayerGfx - compare VAR_MIRAGE_TOWER_STATE, 2 - call_if_eq Route111_EventScript_SetMirageTowerGone + call_if_eq VAR_MIRAGE_TOWER_STATE, 1, Route111_EventScript_SetFallingPlayerGfx + call_if_eq VAR_MIRAGE_TOWER_STATE, 2, Route111_EventScript_SetMirageTowerGone call Route111_EventScript_CheckSetSandstorm call GabbyAndTy_EventScript_UpdateLocation goto_if_not_defeated TRAINER_VICKY, Route111_EventScript_SetWinstratesNotDefeated @@ -61,10 +58,8 @@ Route111_OnTransition: Route111_EventScript_SetFallingPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route111_EventScript_SetFallingPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq Route111_EventScript_SetFallingPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, Route111_EventScript_SetFallingPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, Route111_EventScript_SetFallingPlayerGfxFemale return Route111_EventScript_SetFallingPlayerGfxMale:: @@ -77,16 +72,11 @@ Route111_EventScript_SetFallingPlayerGfxFemale:: Route111_EventScript_CheckSetSandstorm:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_TEMP_1, 34 - goto_if_lt Route111_EventScript_EndCheckSetSandstorm - compare VAR_TEMP_1, 107 - goto_if_gt Route111_EventScript_EndCheckSetSandstorm - compare VAR_TEMP_1, 72 - goto_if_gt Route111_EventScript_SetSandstorm - compare VAR_TEMP_0, 2000 - goto_if_gt Route111_EventScript_EndCheckSetSandstorm - compare VAR_TEMP_0, 8 - goto_if_lt Route111_EventScript_EndCheckSetSandstorm + goto_if_lt VAR_TEMP_1, 34, Route111_EventScript_EndCheckSetSandstorm + goto_if_gt VAR_TEMP_1, 107, Route111_EventScript_EndCheckSetSandstorm + goto_if_gt VAR_TEMP_1, 72, Route111_EventScript_SetSandstorm + goto_if_gt VAR_TEMP_0, 2000, Route111_EventScript_EndCheckSetSandstorm + goto_if_lt VAR_TEMP_0, 8, Route111_EventScript_EndCheckSetSandstorm Route111_EventScript_SetSandstorm:: setweather WEATHER_SANDSTORM Route111_EventScript_EndCheckSetSandstorm:: @@ -170,8 +160,7 @@ Route111_EventScript_Girl:: goto_if_set FLAG_DAILY_ROUTE_111_RECEIVED_BERRY, Route111_EventScript_ReceivedBerry msgbox Route111_Text_WateredPlantsEveryDayTakeBerry, MSGBOX_DEFAULT giveitem ITEM_RAZZ_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_ROUTE_111_RECEIVED_BERRY special GetPlayerBigGuyGirlString msgbox Route111_Text_GoingToTryToMakeDifferentColorBerries, MSGBOX_DEFAULT @@ -211,8 +200,7 @@ Route111_EventScript_ViciousSandstormTriggerRight:: Route111_EventScript_ViciousSandstormTrigger:: checkitem ITEM_GO_GOGGLES - compare VAR_RESULT, FALSE - goto_if_eq Route111_EventScript_PreventRouteAccess + goto_if_eq VAR_RESULT, FALSE, Route111_EventScript_PreventRouteAccess setvar VAR_TEMP_3, 1 releaseall end @@ -220,14 +208,10 @@ Route111_EventScript_ViciousSandstormTrigger:: Route111_EventScript_PreventRouteAccess:: msgbox gText_SandstormIsVicious, MSGBOX_DEFAULT closemessage - compare VAR_0x8004, 0 - call_if_eq Route111_EventScript_PushUpFromRoute - compare VAR_0x8004, 1 - call_if_eq Route111_EventScript_PushDownFromRoute - compare VAR_0x8004, 2 - call_if_eq Route111_EventScript_PushLeftFromRoute - compare VAR_0x8004, 3 - call_if_eq Route111_EventScript_PushRightFromRoute + call_if_eq VAR_0x8004, 0, Route111_EventScript_PushUpFromRoute + call_if_eq VAR_0x8004, 1, Route111_EventScript_PushDownFromRoute + call_if_eq VAR_0x8004, 2, Route111_EventScript_PushLeftFromRoute + call_if_eq VAR_0x8004, 3, Route111_EventScript_PushRightFromRoute releaseall end @@ -285,8 +269,7 @@ Route111_EventScript_Victor:: faceplayer setflag FLAG_LANDMARK_WINSTRATE_FAMILY msgbox Route111_Text_BattleOurFamily, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route111_EventScript_BattleWinstrates + goto_if_eq VAR_RESULT, YES, Route111_EventScript_BattleWinstrates msgbox Route111_Text_IsThatSo, MSGBOX_DEFAULT release end @@ -420,10 +403,8 @@ Route111_EventScript_Man2:: Route111_EventScript_Hiker:: lock faceplayer - compare VAR_MIRAGE_TOWER_STATE, 3 - goto_if_eq Route111_EventScript_HikerMirageTowerGone - compare VAR_MIRAGE_TOWER_STATE, 2 - goto_if_eq Route111_EventScript_HikerMirageTowerDisintegrated + goto_if_eq VAR_MIRAGE_TOWER_STATE, 3, Route111_EventScript_HikerMirageTowerGone + goto_if_eq VAR_MIRAGE_TOWER_STATE, 2, Route111_EventScript_HikerMirageTowerDisintegrated goto_if_set FLAG_MIRAGE_TOWER_VISIBLE, Route111_EventScript_HikerMirageTowerVisible msgbox Route111_Text_ShouldBeMirageTowerAroundHere, MSGBOX_DEFAULT release @@ -478,8 +459,7 @@ Route111_EventScript_Becky:: Route111_EventScript_Dusty:: trainerbattle_single TRAINER_DUSTY_1, Route111_Text_DustyIntro, Route111_Text_DustyDefeat, Route111_EventScript_RegisterDusty specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route111_EventScript_RematchDusty + goto_if_eq VAR_RESULT, TRUE, Route111_EventScript_RematchDusty msgbox Route111_Text_DustyPostBattle, MSGBOX_DEFAULT release end @@ -515,8 +495,7 @@ Route111_EventScript_Daisuke:: Route111_EventScript_Wilton:: trainerbattle_single TRAINER_WILTON_1, Route111_Text_WiltonIntro, Route111_Text_WiltonDefeat, Route111_EventScript_RegisterWilton specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route111_EventScript_RematchWilton + goto_if_eq VAR_RESULT, TRUE, Route111_EventScript_RematchWilton msgbox Route111_Text_WiltonPostBattle, MSGBOX_DEFAULT release end @@ -537,8 +516,7 @@ Route111_EventScript_RematchWilton:: Route111_EventScript_Brooke:: trainerbattle_single TRAINER_BROOKE_1, Route111_Text_BrookeIntro, Route111_Text_BrookeDefeat, Route111_EventScript_RegisterBrooke specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route111_EventScript_RematchBrooke + goto_if_eq VAR_RESULT, TRUE, Route111_EventScript_RematchBrooke msgbox Route111_Text_BrookePostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route111_OldLadysRestStop/scripts.inc b/data/maps/Route111_OldLadysRestStop/scripts.inc index 645ce4de4175..6b7b5a8abcca 100644 --- a/data/maps/Route111_OldLadysRestStop/scripts.inc +++ b/data/maps/Route111_OldLadysRestStop/scripts.inc @@ -10,10 +10,8 @@ Route111_OldLadysRestStop_EventScript_OldLady:: lock faceplayer msgbox Route111_OldLadysRestStop_Text_RestUpHere, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route111_OldLadysRestStop_EventScript_Rest - compare VAR_RESULT, NO - goto_if_eq Route111_OldLadysRestStop_EventScript_DeclineRest + goto_if_eq VAR_RESULT, YES, Route111_OldLadysRestStop_EventScript_Rest + goto_if_eq VAR_RESULT, NO, Route111_OldLadysRestStop_EventScript_DeclineRest end Route111_OldLadysRestStop_EventScript_Rest:: @@ -21,10 +19,8 @@ Route111_OldLadysRestStop_EventScript_Rest:: closemessage call Common_EventScript_OutOfCenterPartyHeal msgbox Route111_OldLadysRestStop_Text_StillTiredTakeAnotherRest, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route111_OldLadysRestStop_EventScript_Rest - compare VAR_RESULT, NO - goto_if_eq Route111_OldLadysRestStop_EventScript_DeclineRest + goto_if_eq VAR_RESULT, YES, Route111_OldLadysRestStop_EventScript_Rest + goto_if_eq VAR_RESULT, NO, Route111_OldLadysRestStop_EventScript_DeclineRest end Route111_OldLadysRestStop_EventScript_DeclineRest:: diff --git a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc index eedd83f0689d..a163c7b4f2d7 100644 --- a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc +++ b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc @@ -21,8 +21,7 @@ Route111_WinstrateFamilysHouse_EventScript_Victoria:: goto_if_set FLAG_RECEIVED_MACHO_BRACE, Route111_WinstrateFamilysHouse_EventScript_ReceivedMachoBrace msgbox Route111_WinstrateFamilysHouse_Text_LikeYouToHaveMachoBrace, MSGBOX_DEFAULT giveitem ITEM_MACHO_BRACE - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_MACHO_BRACE goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection end diff --git a/data/maps/Route112/scripts.inc b/data/maps/Route112/scripts.inc index abea230be1ba..a6c248e1f6dd 100644 --- a/data/maps/Route112/scripts.inc +++ b/data/maps/Route112/scripts.inc @@ -71,8 +71,7 @@ Route112_EventScript_Brice:: Route112_EventScript_Trent:: trainerbattle_single TRAINER_TRENT_1, Route112_Text_TrentIntro, Route112_Text_TrentDefeat, Route112_EventScript_RegisterTrent specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route112_EventScript_RematchTrent + goto_if_eq VAR_RESULT, TRUE, Route112_EventScript_RematchTrent msgbox Route112_Text_TrentPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route112_CableCarStation/scripts.inc b/data/maps/Route112_CableCarStation/scripts.inc index 0fcbc0a34f68..3ce4f62e2a4a 100644 --- a/data/maps/Route112_CableCarStation/scripts.inc +++ b/data/maps/Route112_CableCarStation/scripts.inc @@ -7,8 +7,7 @@ Route112_CableCarStation_MapScripts:: Route112_CableCarStation_OnTransition: setescapewarp MAP_ROUTE112, 28, 28 - compare VAR_CABLE_CAR_STATION_STATE, 2 - call_if_eq Route112_CableCarStation_EventScript_MoveAttendantAside + call_if_eq VAR_CABLE_CAR_STATION_STATE, 2, Route112_CableCarStation_EventScript_MoveAttendantAside end Route112_CableCarStation_EventScript_MoveAttendantAside:: @@ -35,10 +34,8 @@ Route112_CableCarStation_EventScript_Attendant:: lock faceplayer msgbox Route112_CableCarStation_Text_CableCarReadyGetOn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route112_CableCarStation_EventScript_RideCableCar - compare VAR_RESULT, NO - goto_if_eq Route112_CableCarStation_EventScript_DeclineRide + goto_if_eq VAR_RESULT, YES, Route112_CableCarStation_EventScript_RideCableCar + goto_if_eq VAR_RESULT, NO, Route112_CableCarStation_EventScript_DeclineRide end Route112_CableCarStation_EventScript_RideCableCar:: diff --git a/data/maps/Route113/scripts.inc b/data/maps/Route113/scripts.inc index 0a8bb092c361..4f02e74b6452 100644 --- a/data/maps/Route113/scripts.inc +++ b/data/maps/Route113/scripts.inc @@ -14,10 +14,8 @@ Route113_OnTransition: Route113_EventScript_CheckSetAshWeather:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_TEMP_0, 19 - goto_if_lt Route113_EventScript_DontSetAshWeather - compare VAR_TEMP_0, 84 - goto_if_gt Route113_EventScript_DontSetAshWeather + goto_if_lt VAR_TEMP_0, 19, Route113_EventScript_DontSetAshWeather + goto_if_gt VAR_TEMP_0, 84, Route113_EventScript_DontSetAshWeather setweather WEATHER_VOLCANIC_ASH return @@ -61,8 +59,7 @@ Route113_EventScript_Dillon:: Route113_EventScript_Madeline:: trainerbattle_single TRAINER_MADELINE_1, Route113_Text_MadelineIntro, Route113_Text_MadelineDefeat, Route113_EventScript_RegisterMadeline specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route113_EventScript_RematchMadeline + goto_if_eq VAR_RESULT, TRUE, Route113_EventScript_RematchMadeline msgbox Route113_Text_MadelinePostBattle, MSGBOX_DEFAULT release end @@ -83,8 +80,7 @@ Route113_EventScript_RematchMadeline:: Route113_EventScript_Lao:: trainerbattle_single TRAINER_LAO_1, Route113_Text_LaoIntro, Route113_Text_LaoDefeat, Route113_EventScript_RegisterLao specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route113_EventScript_RematchLao + goto_if_eq VAR_RESULT, TRUE, Route113_EventScript_RematchLao msgbox Route113_Text_LaoPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc index fd980bf843b8..41182b2ae558 100644 --- a/data/maps/Route113_GlassWorkshop/scripts.inc +++ b/data/maps/Route113_GlassWorkshop/scripts.inc @@ -13,8 +13,7 @@ Route113_GlassWorkshop_MapScripts:: Route113_GlassWorkshop_OnTransition: setflag FLAG_LANDMARK_GLASS_WORKSHOP - compare VAR_GLASS_WORKSHOP_STATE, 1 - call_if_eq Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack + call_if_eq VAR_GLASS_WORKSHOP_STATE, 1, Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack end Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack:: @@ -24,12 +23,9 @@ Route113_GlassWorkshop_EventScript_ReenterWorkshopAfterSootSack:: Route113_GlassWorkshop_EventScript_GlassWorker:: lock faceplayer - compare VAR_GLASS_WORKSHOP_STATE, 10 - goto_if_ge Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom - compare VAR_GLASS_WORKSHOP_STATE, 2 - goto_if_eq Route113_GlassWorkshop_EventScript_CheckCollectedAsh - compare VAR_GLASS_WORKSHOP_STATE, 1 - goto_if_eq Route113_GlassWorkshop_EventScript_ExplainSootSack + goto_if_ge VAR_GLASS_WORKSHOP_STATE, 10, Route113_GlassWorkshop_EventScript_GiveItemAfterNoRoom + goto_if_eq VAR_GLASS_WORKSHOP_STATE, 2, Route113_GlassWorkshop_EventScript_CheckCollectedAsh + goto_if_eq VAR_GLASS_WORKSHOP_STATE, 1, Route113_GlassWorkshop_EventScript_ExplainSootSack msgbox Route113_GlassWorkshop_Text_GoCollectAshWithThis, MSGBOX_DEFAULT giveitem ITEM_SOOT_SACK setvar VAR_GLASS_WORKSHOP_STATE, 1 @@ -44,11 +40,9 @@ Route113_GlassWorkshop_EventScript_ExplainSootSack:: Route113_GlassWorkshop_EventScript_CheckCollectedAsh:: checkitem ITEM_SOOT_SACK - compare VAR_RESULT, FALSE - goto_if_eq Route113_GlassWorkshop_EventScript_SootSackNotInBag + goto_if_eq VAR_RESULT, FALSE, Route113_GlassWorkshop_EventScript_SootSackNotInBag msgbox Route113_GlassWorkshop_Text_LetsSeeCollectedAshes, MSGBOX_DEFAULT - compare VAR_ASH_GATHER_COUNT, LOWEST_ASH_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAsh + goto_if_lt VAR_ASH_GATHER_COUNT, LOWEST_ASH_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAsh message Route113_GlassWorkshop_Text_WhichGlassItemWoudYouLike waitmessage goto Route113_GlassWorkshop_EventScript_ChooseGlassItem @@ -80,11 +74,9 @@ Route113_GlassWorkshop_EventScript_BlueFlute:: setvar VAR_0x8008, ITEM_BLUE_FLUTE bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, BLUE_FLUTE_PRICE - compare VAR_ASH_GATHER_COUNT, BLUE_FLUTE_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, BLUE_FLUTE_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 10 subvar VAR_ASH_GATHER_COUNT, BLUE_FLUTE_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -94,11 +86,9 @@ Route113_GlassWorkshop_EventScript_YellowFlute:: setvar VAR_0x8008, ITEM_YELLOW_FLUTE bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, YELLOW_FLUTE_PRICE - compare VAR_ASH_GATHER_COUNT, YELLOW_FLUTE_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, YELLOW_FLUTE_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 11 subvar VAR_ASH_GATHER_COUNT, YELLOW_FLUTE_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -108,11 +98,9 @@ Route113_GlassWorkshop_EventScript_RedFlute:: setvar VAR_0x8008, ITEM_RED_FLUTE bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, RED_FLUTE_PRICE - compare VAR_ASH_GATHER_COUNT, RED_FLUTE_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, RED_FLUTE_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 12 subvar VAR_ASH_GATHER_COUNT, RED_FLUTE_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -122,11 +110,9 @@ Route113_GlassWorkshop_EventScript_WhiteFlute:: setvar VAR_0x8008, ITEM_WHITE_FLUTE bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, WHITE_FLUTE_PRICE - compare VAR_ASH_GATHER_COUNT, WHITE_FLUTE_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, WHITE_FLUTE_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 13 subvar VAR_ASH_GATHER_COUNT, WHITE_FLUTE_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -136,11 +122,9 @@ Route113_GlassWorkshop_EventScript_BlackFlute:: setvar VAR_0x8008, ITEM_BLACK_FLUTE bufferitemname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, BLACK_FLUTE_PRICE - compare VAR_ASH_GATHER_COUNT, BLACK_FLUTE_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, BLACK_FLUTE_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 14 subvar VAR_ASH_GATHER_COUNT, BLACK_FLUTE_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -151,11 +135,9 @@ Route113_GlassWorkshop_EventScript_PrettyChair:: setvar VAR_0x8008, DECOR_PRETTY_CHAIR bufferdecorationname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, PRETTY_CHAIR_PRICE - compare VAR_ASH_GATHER_COUNT, PRETTY_CHAIR_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, PRETTY_CHAIR_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 15 subvar VAR_ASH_GATHER_COUNT, PRETTY_CHAIR_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -166,11 +148,9 @@ Route113_GlassWorkshop_EventScript_PrettyDesk:: setvar VAR_0x8008, DECOR_PRETTY_DESK bufferdecorationname STR_VAR_1, VAR_0x8008 setvar VAR_0x800A, PRETTY_DESK_PRICE - compare VAR_ASH_GATHER_COUNT, PRETTY_DESK_PRICE - goto_if_lt Route113_GlassWorkshop_EventScript_NotEnoughAshForItem + goto_if_lt VAR_ASH_GATHER_COUNT, PRETTY_DESK_PRICE, Route113_GlassWorkshop_EventScript_NotEnoughAshForItem msgbox Route113_GlassWorkshop_Text_IsThatTheItemForYou, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route113_GlassWorkshop_EventScript_ChooseDifferentItem + goto_if_eq VAR_RESULT, NO, Route113_GlassWorkshop_EventScript_ChooseDifferentItem setvar VAR_GLASS_WORKSHOP_STATE, 16 subvar VAR_ASH_GATHER_COUNT, PRETTY_DESK_PRICE goto Route113_GlassWorkshop_EventScript_MakeGlassItem @@ -211,24 +191,20 @@ Route113_GlassWorkshop_EventScript_MakeGlassItem:: delay 30 fadescreen FADE_FROM_BLACK msgbox Route113_GlassWorkshop_Text_IveFinishedGlassItem, MSGBOX_DEFAULT - compare VAR_0x8009, 0 - call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassFlute - compare VAR_0x8009, 1 - call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassDecor + call_if_eq VAR_0x8009, 0, Route113_GlassWorkshop_EventScript_GiveGlassFlute + call_if_eq VAR_0x8009, 1, Route113_GlassWorkshop_EventScript_GiveGlassDecor setvar VAR_GLASS_WORKSHOP_STATE, 2 release end Route113_GlassWorkshop_EventScript_GiveGlassFlute:: giveitem VAR_0x8008 - compare VAR_RESULT, FALSE - goto_if_eq Route113_GlassWorkshop_EventScript_NoRoomForFlute + goto_if_eq VAR_RESULT, FALSE, Route113_GlassWorkshop_EventScript_NoRoomForFlute return Route113_GlassWorkshop_EventScript_GiveGlassDecor:: givedecoration VAR_0x8008 - compare VAR_RESULT, FALSE - goto_if_eq Route113_GlassWorkshop_EventScript_NoRoomForDecor + goto_if_eq VAR_RESULT, FALSE, Route113_GlassWorkshop_EventScript_NoRoomForDecor return Route113_GlassWorkshop_EventScript_NoRoomForFlute:: @@ -305,10 +281,8 @@ Route113_GlassWorkshop_EventScript_GivePrettyDesk:: Route113_GlassWorkshop_EventScript_TryGiveItemAgain:: msgbox Route113_GlassWorkshop_Text_IveFinishedGlassItem, MSGBOX_DEFAULT - compare VAR_0x8009, 0 - call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassFlute - compare VAR_0x8009, 1 - call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassDecor + call_if_eq VAR_0x8009, 0, Route113_GlassWorkshop_EventScript_GiveGlassFlute + call_if_eq VAR_0x8009, 1, Route113_GlassWorkshop_EventScript_GiveGlassDecor setvar VAR_GLASS_WORKSHOP_STATE, 2 release end diff --git a/data/maps/Route114/scripts.inc b/data/maps/Route114/scripts.inc index c0420fbf611d..abf70ea08163 100644 --- a/data/maps/Route114/scripts.inc +++ b/data/maps/Route114/scripts.inc @@ -5,19 +5,14 @@ Route114_MapScripts:: .byte 0 Route114_OnTransition: - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH - call_if_eq AbnormalWeather_StartGroudonWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_SOUTH - call_if_eq AbnormalWeather_StartGroudonWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH, AbnormalWeather_StartGroudonWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_SOUTH, AbnormalWeather_StartGroudonWeather end Route114_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute114North - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_SOUTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute114South + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_NORTH, AbnormalWeather_EventScript_PlaceTilesRoute114North + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_114_SOUTH, AbnormalWeather_EventScript_PlaceTilesRoute114South end Route114_OnFrame: @@ -34,8 +29,7 @@ Route114_EventScript_Man:: addvar VAR_RESULT, NUM_ROUTE_114_MAN_BERRIES_SKIPPED addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_ROUTE_114_RECEIVED_BERRY msgbox Route114_Text_TryBerryCrushWithFriends, MSGBOX_DEFAULT release @@ -52,8 +46,7 @@ Route114_EventScript_RoarGentleman:: goto_if_set FLAG_RECEIVED_TM05, Route114_EventScript_ReceivedRoar msgbox Route114_Text_AllMyMonDoesIsRoarTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM05 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM05 msgbox Route114_Text_ExplainRoar, MSGBOX_DEFAULT release @@ -109,8 +102,7 @@ Route114_EventScript_Nancy:: Route114_EventScript_Steve:: trainerbattle_single TRAINER_STEVE_1, Route114_Text_SteveIntro, Route114_Text_SteveDefeat, Route114_EventScript_RegisterSteve specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route114_EventScript_RematchSteve + goto_if_eq VAR_RESULT, TRUE, Route114_EventScript_RematchSteve msgbox Route114_Text_StevePostBattle, MSGBOX_DEFAULT release end @@ -131,8 +123,7 @@ Route114_EventScript_RematchSteve:: Route114_EventScript_Bernie:: trainerbattle_single TRAINER_BERNIE_1, Route114_Text_BernieIntro, Route114_Text_BernieDefeat, Route114_EventScript_RegisterBernie specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route114_EventScript_RematchBernie + goto_if_eq VAR_RESULT, TRUE, Route114_EventScript_RematchBernie msgbox Route114_Text_BerniePostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route114_FossilManiacsHouse/scripts.inc b/data/maps/Route114_FossilManiacsHouse/scripts.inc index f291cd5ee4ef..ba3c0c60e591 100644 --- a/data/maps/Route114_FossilManiacsHouse/scripts.inc +++ b/data/maps/Route114_FossilManiacsHouse/scripts.inc @@ -12,8 +12,7 @@ Route114_FossilManiacsHouse_EventScript_FossilManiacsBrother:: goto_if_set FLAG_RECEIVED_TM28, Route114_FossilManiacsHouse_EventScript_ReceivedDig msgbox Route114_FossilManiacsHouse_Text_HaveThisToDigLikeMyBrother, MSGBOX_DEFAULT giveitem ITEM_TM28 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM28 release end diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc index 500e12beed2b..72138bbe4006 100644 --- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc +++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc @@ -38,11 +38,9 @@ Route114_FossilManiacsTunnel_EventScript_FossilManiac:: faceplayer goto_if_set FLAG_RECEIVED_REVIVED_FOSSIL_MON, Route114_FossilManiacsTunnel_EventScript_PlayerRevivedFossil checkitem ITEM_ROOT_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil + goto_if_eq VAR_RESULT, TRUE, Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil checkitem ITEM_CLAW_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil + goto_if_eq VAR_RESULT, TRUE, Route114_FossilManiacsTunnel_EventScript_PlayerHasFossil msgbox Route114_FossilManiacsTunnel_Text_LookInDesertForFossils, MSGBOX_DEFAULT release end diff --git a/data/maps/Route114_LanettesHouse/scripts.inc b/data/maps/Route114_LanettesHouse/scripts.inc index 5a7ccb34158f..9143b279540c 100644 --- a/data/maps/Route114_LanettesHouse/scripts.inc +++ b/data/maps/Route114_LanettesHouse/scripts.inc @@ -13,8 +13,7 @@ Route114_LanettesHouse_EventScript_Lanette:: setflag FLAG_SYS_PC_LANETTE msgbox Route114_LanettesHouse_Text_EverythingClutteredKeepThis, MSGBOX_DEFAULT givedecoration DECOR_LOTAD_DOLL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowNoRoomForDecor + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowNoRoomForDecor setflag FLAG_RECEIVED_DOLL_LANETTE release end @@ -27,16 +26,14 @@ Route114_LanettesHouse_EventScript_OfferAdvice:: Route114_LanettesHouse_EventScript_Notebook:: lockall msgbox Route114_LanettesHouse_Text_ResearchNotesPage1, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route114_LanettesHouse_EventScript_NotebookPage2 + goto_if_eq VAR_RESULT, YES, Route114_LanettesHouse_EventScript_NotebookPage2 msgbox Route114_LanettesHouse_Text_ClosedTheNotebook, MSGBOX_DEFAULT releaseall end Route114_LanettesHouse_EventScript_NotebookPage2:: msgbox Route114_LanettesHouse_Text_ResearchNotesPage2, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq Route114_LanettesHouse_EventScript_NotebookPage3 + call_if_eq VAR_RESULT, YES, Route114_LanettesHouse_EventScript_NotebookPage3 releaseall end diff --git a/data/maps/Route115/scripts.inc b/data/maps/Route115/scripts.inc index 600e6751f2fa..e00fdb27dc91 100644 --- a/data/maps/Route115/scripts.inc +++ b/data/maps/Route115/scripts.inc @@ -5,19 +5,14 @@ Route115_MapScripts:: .byte 0 Route115_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute115West - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_EAST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute115East + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST, AbnormalWeather_EventScript_PlaceTilesRoute115West + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_EAST, AbnormalWeather_EventScript_PlaceTilesRoute115East end Route115_OnTransition: - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST - call_if_eq AbnormalWeather_StartGroudonWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_EAST - call_if_eq AbnormalWeather_StartGroudonWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_WEST, AbnormalWeather_StartGroudonWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_115_EAST, AbnormalWeather_StartGroudonWeather end Route115_OnFrame: @@ -39,8 +34,7 @@ Route115_EventScript_MeteorFallsSign:: Route115_EventScript_Timothy:: trainerbattle_single TRAINER_TIMOTHY_1, Route115_Text_TimothyIntro, Route115_Text_TimothyDefeat, Route115_EventScript_RegisterTimothy specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route115_EventScript_RematchTimothy + goto_if_eq VAR_RESULT, TRUE, Route115_EventScript_RematchTimothy msgbox Route115_Text_TimothyPostBattle, MSGBOX_DEFAULT release end @@ -66,8 +60,7 @@ Route115_EventScript_Koichi:: Route115_EventScript_Nob:: trainerbattle_single TRAINER_NOB_1, Route115_Text_NobIntro, Route115_Text_NobDefeat, Route115_EventScript_RegisterNob specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route115_EventScript_RematchNob + goto_if_eq VAR_RESULT, TRUE, Route115_EventScript_RematchNob msgbox Route115_Text_NobPostBattle, MSGBOX_DEFAULT release end @@ -88,8 +81,7 @@ Route115_EventScript_RematchNob:: Route115_EventScript_Cyndy:: trainerbattle_single TRAINER_CYNDY_1, Route115_Text_CyndyIntro, Route115_Text_CyndyDefeat, Route115_EventScript_RegisterCyndy specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route115_EventScript_RematchCyndy + goto_if_eq VAR_RESULT, TRUE, Route115_EventScript_RematchCyndy msgbox Route115_Text_CyndyPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route116/scripts.inc b/data/maps/Route116/scripts.inc index 7657e2061ed6..2a464d199655 100644 --- a/data/maps/Route116/scripts.inc +++ b/data/maps/Route116/scripts.inc @@ -9,12 +9,9 @@ Route116_MapScripts:: Route116_OnTransition: call_if_set FLAG_RECOVERED_DEVON_GOODS, Route116_EventScript_SetWandasBoyfriendPos - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_NORTH - call_if_eq AbnormalWeather_StartGroudonWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_SOUTH - call_if_eq AbnormalWeather_StartGroudonWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_NORTH, AbnormalWeather_StartGroudonWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_SOUTH, AbnormalWeather_StartGroudonWeather end Route116_EventScript_SetWandasBoyfriendPos:: @@ -22,10 +19,8 @@ Route116_EventScript_SetWandasBoyfriendPos:: return Route116_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_NORTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute116North - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_SOUTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute116South + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_NORTH, AbnormalWeather_EventScript_PlaceTilesRoute116North + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_116_SOUTH, AbnormalWeather_EventScript_PlaceTilesRoute116South end Route116_OnFrame: @@ -62,18 +57,13 @@ Route116_EventScript_DevonEmployee:: Route116_EventScript_GiveRepeatBall:: setflag FLAG_MET_DEVON_EMPLOYEE giveitem ITEM_REPEAT_BALL - compare VAR_RESULT, FALSE - goto_if_eq Route116_EventScript_NoRoomForRepeatBall + goto_if_eq VAR_RESULT, FALSE, Route116_EventScript_NoRoomForRepeatBall msgbox Route116_Text_NewBallAvailableAtMart, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq Route116_EventScript_DevonEmployeeExit - compare VAR_FACING, DIR_SOUTH - call_if_eq Route116_EventScript_DevonEmployeeExit - compare VAR_FACING, DIR_WEST - call_if_eq Route116_EventScript_DevonEmployeeExit - compare VAR_FACING, DIR_EAST - call_if_eq Route116_EventScript_DevonEmployeeExitEast + call_if_eq VAR_FACING, DIR_NORTH, Route116_EventScript_DevonEmployeeExit + call_if_eq VAR_FACING, DIR_SOUTH, Route116_EventScript_DevonEmployeeExit + call_if_eq VAR_FACING, DIR_WEST, Route116_EventScript_DevonEmployeeExit + call_if_eq VAR_FACING, DIR_EAST, Route116_EventScript_DevonEmployeeExitEast removeobject VAR_LAST_TALKED clearflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE setflag FLAG_RECEIVED_REPEAT_BALL @@ -166,11 +156,9 @@ Route116_EventScript_GlassesMan:: lock faceplayer checkitem ITEM_BLACK_GLASSES - compare VAR_RESULT, TRUE - goto_if_eq Route116_EventScript_PlayerHasGlasses + goto_if_eq VAR_RESULT, TRUE, Route116_EventScript_PlayerHasGlasses specialvar VAR_RESULT, FoundBlackGlasses - compare VAR_RESULT, TRUE - goto_if_eq Route116_EventScript_FoundGlassesNotOnPlayer + goto_if_eq VAR_RESULT, TRUE, Route116_EventScript_FoundGlassesNotOnPlayer msgbox Route116_Text_CanYouHelpMeFindGlasses, MSGBOX_DEFAULT release end @@ -185,8 +173,7 @@ Route116_EventScript_PlayerHasGlasses:: msgbox Route116_Text_CanYouHelpMeFindGlasses, MSGBOX_DEFAULT msgbox Route116_Text_MayISeeThoseGlasses, MSGBOX_DEFAULT specialvar VAR_RESULT, FoundBlackGlasses - compare VAR_RESULT, TRUE - goto_if_eq Route116_EventScript_FoundGlassesOnPlayer + goto_if_eq VAR_RESULT, TRUE, Route116_EventScript_FoundGlassesOnPlayer msgbox Route116_Text_NotWhatImLookingFor, MSGBOX_DEFAULT release end @@ -199,14 +186,10 @@ Route116_EventScript_FoundGlassesOnPlayer:: Route116_EventScript_GlassesManExit:: delay 20 - compare VAR_FACING, DIR_NORTH - call_if_eq Route116_EventScript_GlassesManExitNormal - compare VAR_FACING, DIR_SOUTH - call_if_eq Route116_EventScript_GlassesManExitNormal - compare VAR_FACING, DIR_WEST - call_if_eq Route116_EventScript_GlassesManExitNormal - compare VAR_FACING, DIR_EAST - call_if_eq Route116_EventScript_GlassesManExitEast + call_if_eq VAR_FACING, DIR_NORTH, Route116_EventScript_GlassesManExitNormal + call_if_eq VAR_FACING, DIR_SOUTH, Route116_EventScript_GlassesManExitNormal + call_if_eq VAR_FACING, DIR_WEST, Route116_EventScript_GlassesManExitNormal + call_if_eq VAR_FACING, DIR_EAST, Route116_EventScript_GlassesManExitEast removeobject VAR_LAST_TALKED release end @@ -259,12 +242,10 @@ Route116_EventScript_Jose:: Route116_EventScript_Jerry:: trainerbattle_single TRAINER_JERRY_1, Route116_Text_JerryIntro, Route116_Text_JerryDefeat, Route116_EventScript_TryRegisterJerryAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route116_EventScript_RematchJerry + goto_if_eq VAR_RESULT, TRUE, Route116_EventScript_RematchJerry setvar VAR_0x8004, TRAINER_JERRY_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route116_EventScript_TryRegisterJerry + goto_if_eq VAR_RESULT, FALSE, Route116_EventScript_TryRegisterJerry msgbox Route116_Text_JerryPostBattle, MSGBOX_DEFAULT release end @@ -312,12 +293,10 @@ Route116_EventScript_Janice:: Route116_EventScript_Karen:: trainerbattle_single TRAINER_KAREN_1, Route116_Text_KarenIntro, Route116_Text_KarenDefeat, Route116_EventScript_TryRegisterKarenAfterBattle specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route116_EventScript_RematchKaren + goto_if_eq VAR_RESULT, TRUE, Route116_EventScript_RematchKaren setvar VAR_0x8004, TRAINER_KAREN_1 specialvar VAR_RESULT, IsTrainerRegistered - compare VAR_RESULT, FALSE - goto_if_eq Route116_EventScript_TryRegisterKaren + goto_if_eq VAR_RESULT, FALSE, Route116_EventScript_TryRegisterKaren msgbox Route116_Text_KarenPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route117/scripts.inc b/data/maps/Route117/scripts.inc index f6ab8859174f..37d589ce316c 100644 --- a/data/maps/Route117/scripts.inc +++ b/data/maps/Route117/scripts.inc @@ -41,8 +41,7 @@ Route117_EventScript_DayCareSign:: Route117_EventScript_Isaac:: trainerbattle_single TRAINER_ISAAC_1, Route117_Text_IsaacIntro, Route117_Text_IsaacDefeat, Route117_EventScript_RegisterIsaac specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchIsaac + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchIsaac msgbox Route117_Text_IsaacPostBattle, MSGBOX_DEFAULT release end @@ -63,8 +62,7 @@ Route117_EventScript_RematchIsaac:: Route117_EventScript_Lydia:: trainerbattle_single TRAINER_LYDIA_1, Route117_Text_LydiaIntro, Route117_Text_LydiaDefeat, Route117_EventScript_RegisterLydia specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchLydia + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchLydia msgbox Route117_Text_LydiaPostBattle, MSGBOX_DEFAULT release end @@ -85,8 +83,7 @@ Route117_EventScript_RematchLydia:: Route117_EventScript_Dylan:: trainerbattle_single TRAINER_DYLAN_1, Route117_Text_DylanIntro, Route117_Text_DylanDefeat, Route117_EventScript_RegisterDylan specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchDylan + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchDylan msgbox Route117_Text_DylanPostBattle, MSGBOX_DEFAULT release end @@ -107,8 +104,7 @@ Route117_EventScript_RematchDylan:: Route117_EventScript_Maria:: trainerbattle_single TRAINER_MARIA_1, Route117_Text_MariaIntro, Route117_Text_MariaDefeat, Route117_EventScript_RegisterMaria specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchMaria + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchMaria msgbox Route117_Text_MariaPostBattle, MSGBOX_DEFAULT release end @@ -134,8 +130,7 @@ Route117_EventScript_Derek:: Route117_EventScript_Anna:: trainerbattle_double TRAINER_ANNA_AND_MEG_1, Route117_Text_AnnaIntro, Route117_Text_AnnaDefeat, Route117_Text_AnnaNotEnoughMons, Route117_EventScript_RegisterAnna specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchAnna + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchAnna msgbox Route117_Text_AnnaPostBattle, MSGBOX_DEFAULT release end @@ -154,8 +149,7 @@ Route117_EventScript_RematchAnna:: Route117_EventScript_Meg:: trainerbattle_double TRAINER_ANNA_AND_MEG_1, Route117_Text_MegIntro, Route117_Text_MegDefeat, Route117_Text_MegNotEnoughMons, Route117_EventScript_RegisterMeg specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route117_EventScript_RematchMeg + goto_if_eq VAR_RESULT, TRUE, Route117_EventScript_RematchMeg msgbox Route117_Text_MegPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route118/scripts.inc b/data/maps/Route118/scripts.inc index 5b68804b5b2e..92dd8847d46a 100644 --- a/data/maps/Route118/scripts.inc +++ b/data/maps/Route118/scripts.inc @@ -8,19 +8,14 @@ Route118_MapScripts:: Route118_OnTransition: call GabbyAndTy_EventScript_UpdateLocation - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_EAST - call_if_eq AbnormalWeather_StartGroudonWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_WEST - call_if_eq AbnormalWeather_StartGroudonWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_EAST, AbnormalWeather_StartGroudonWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_WEST, AbnormalWeather_StartGroudonWeather end Route118_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_EAST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute118East - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_WEST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute118West + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_EAST, AbnormalWeather_EventScript_PlaceTilesRoute118East + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_118_WEST, AbnormalWeather_EventScript_PlaceTilesRoute118West end Route118_OnFrame: @@ -32,10 +27,8 @@ Route118_EventScript_GoodRodFisherman:: faceplayer goto_if_set FLAG_RECEIVED_GOOD_ROD, Route118_EventScript_ReceivedGoodRod msgbox Route118_Text_YouAgreeGoodRodIsGood, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route118_EventScript_ReceiveGoodRod - compare VAR_RESULT, NO - goto_if_eq Route118_EventScript_DeclineGoodRod + goto_if_eq VAR_RESULT, YES, Route118_EventScript_ReceiveGoodRod + goto_if_eq VAR_RESULT, NO, Route118_EventScript_DeclineGoodRod end Route118_EventScript_ReceiveGoodRod:: @@ -103,12 +96,9 @@ Route118_EventScript_StevenTrigger:: delay 30 msgbox Route118_Text_StevenQuestions, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, 0 - call_if_eq Route118_EventScript_StevenExit0 - compare VAR_0x8008, 1 - call_if_eq Route118_EventScript_StevenExit1 - compare VAR_0x8008, 2 - call_if_eq Route118_EventScript_StevenExit2 + call_if_eq VAR_0x8008, 0, Route118_EventScript_StevenExit0 + 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 releaseall @@ -190,8 +180,7 @@ Route118_Movement_StevenExit2: Route118_EventScript_Rose:: trainerbattle_single TRAINER_ROSE_1, Route118_Text_RoseIntro, Route118_Text_RoseDefeat, Route118_EventScript_RegisterRose specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route118_EventScript_RematchRose + goto_if_eq VAR_RESULT, TRUE, Route118_EventScript_RematchRose msgbox Route118_Text_RosePostBattle, MSGBOX_DEFAULT release end @@ -222,8 +211,7 @@ Route118_EventScript_Wade:: Route118_EventScript_Dalton:: trainerbattle_single TRAINER_DALTON_1, Route118_Text_DaltonIntro, Route118_Text_DaltonDefeat, Route118_EventScript_RegisterDalton specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route118_EventScript_RematchDalton + goto_if_eq VAR_RESULT, TRUE, Route118_EventScript_RematchDalton msgbox Route118_Text_DaltonPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc index 839f4101ba56..94094206c703 100644 --- a/data/maps/Route119/scripts.inc +++ b/data/maps/Route119/scripts.inc @@ -13,16 +13,14 @@ Route119_OnResume: Route119_EventScript_TryRemoveKecleon:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return Route119_OnTransition: call Common_EventScript_SetupRivalGfxId call Common_EventScript_SetupRivalOnBikeGfxId - compare VAR_WEATHER_INSTITUTE_STATE, 1 - call_if_eq Route119_EventScript_MoveInstituteWorkersDownstairs + call_if_eq VAR_WEATHER_INSTITUTE_STATE, 1, Route119_EventScript_MoveInstituteWorkersDownstairs special SetRoute119Weather end @@ -46,30 +44,22 @@ Route119_EventScript_RivalEncounter:: lockall addobject LOCALID_RIVAL_ON_BIKE checkplayergender - compare VAR_RESULT, MALE - call_if_eq Route119_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - call_if_eq Route119_EventScript_PlayBrendanMusic + call_if_eq VAR_RESULT, MALE, Route119_EventScript_PlayMayMusic + call_if_eq VAR_RESULT, FEMALE, Route119_EventScript_PlayBrendanMusic delay 65 - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_RivalEnter1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_RivalEnter2 + 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 waitmovement 0 delay 30 - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_SetRivalPos1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_SetRivalPos2 + 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 delay 30 checkplayergender - compare VAR_RESULT, MALE - goto_if_eq Route119_EventScript_BattleMay - compare VAR_RESULT, FEMALE - goto_if_eq Route119_EventScript_BattleBrendan + goto_if_eq VAR_RESULT, MALE, Route119_EventScript_BattleMay + goto_if_eq VAR_RESULT, FEMALE, Route119_EventScript_BattleBrendan releaseall end @@ -148,36 +138,28 @@ Route119_EventScript_GiveFlyHM:: Route119_EventScript_RivalExitScottArrive:: closemessage - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_SetRivalPos1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_SetRivalPos2 + 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 delay 30 - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_RivalExit1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_RivalExit2 + 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 setvar VAR_ROUTE119_STATE, 1 savebgm MUS_DUMMY fadedefaultbgm delay 60 - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_SetScottPos1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_SetScottPos2 + 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 waitmovement 0 addvar VAR_SCOTT_STATE, 1 msgbox Route119_Text_ScottWayToGoBeSeeingYou, MSGBOX_DEFAULT closemessage - compare VAR_TEMP_1, 1 - call_if_eq Route119_EventScript_ScottExit1 - compare VAR_TEMP_1, 2 - call_if_eq Route119_EventScript_ScottExit2 + call_if_eq VAR_TEMP_1, 1, Route119_EventScript_ScottExit1 + call_if_eq VAR_TEMP_1, 2, Route119_EventScript_ScottExit2 removeobject LOCALID_SCOTT releaseall end @@ -372,8 +354,7 @@ Route119_EventScript_Kent:: Route119_EventScript_Jackson:: trainerbattle_single TRAINER_JACKSON_1, Route119_Text_JacksonIntro, Route119_Text_JacksonDefeat, Route119_EventScript_RegisterJackson specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route119_EventScript_RematchJackson + goto_if_eq VAR_RESULT, TRUE, Route119_EventScript_RematchJackson msgbox Route119_Text_JacksonPostBattle, MSGBOX_DEFAULT release end @@ -394,8 +375,7 @@ Route119_EventScript_RematchJackson:: Route119_EventScript_Catherine:: trainerbattle_single TRAINER_CATHERINE_1, Route119_Text_CatherineIntro, Route119_Text_CatherineDefeat, Route119_EventScript_RegisterCatherine specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route119_EventScript_RematchCatherine + goto_if_eq VAR_RESULT, TRUE, Route119_EventScript_RematchCatherine msgbox Route119_Text_CatherinePostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route119_WeatherInstitute_1F/scripts.inc b/data/maps/Route119_WeatherInstitute_1F/scripts.inc index 33ba0b025dca..cce41bfb5ff3 100644 --- a/data/maps/Route119_WeatherInstitute_1F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_1F/scripts.inc @@ -5,8 +5,7 @@ Route119_WeatherInstitute_1F_MapScripts:: .byte 0 Route119_WeatherInstitute_1F_OnTransition: - compare VAR_WEATHER_INSTITUTE_STATE, 0 - call_if_eq Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos + call_if_eq VAR_WEATHER_INSTITUTE_STATE, 0, Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos end Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos:: @@ -18,8 +17,7 @@ Route119_WeatherInstitute_1F_EventScript_LittleBoy:: lock faceplayer special GetPlayerBigGuyGirlString - compare VAR_WEATHER_INSTITUTE_STATE, 0 - goto_if_eq Route119_WeatherInstitute_1F_EventScript_LittleBoyTeamAquaHere + goto_if_eq VAR_WEATHER_INSTITUTE_STATE, 0, Route119_WeatherInstitute_1F_EventScript_LittleBoyTeamAquaHere msgbox Route119_WeatherInstitute_1F_Text_WowYoureStrong, MSGBOX_DEFAULT release end @@ -36,8 +34,7 @@ Route119_WeatherInstitute_1F_EventScript_InstituteWorker1:: setvar VAR_0x8004, 0 call_if_set FLAG_DEFEATED_KYOGRE, Route119_WeatherInstitute_1F_EventScript_LegendaryDefeated call_if_set FLAG_DEFEATED_GROUDON, Route119_WeatherInstitute_1F_EventScript_LegendaryDefeated - compare VAR_0x8004, 2 @ Both defeated - goto_if_eq Route119_WeatherInstitute_1F_EventScript_StudyingRain + goto_if_eq VAR_0x8004, 2, Route119_WeatherInstitute_1F_EventScript_StudyingRain @ Both defeated msgbox Route119_WeatherInstitute_1F_Text_NoticingAbnormalWeather, MSGBOX_DEFAULT release end diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index 3a2957d5ee87..0b2227e8baf8 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -10,10 +10,8 @@ Route119_WeatherInstitute_2F_MapScripts:: .byte 0 Route119_WeatherInstitute_2F_OnTransition: - compare VAR_WEATHER_INSTITUTE_STATE, 0 - call_if_eq Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere - compare VAR_WEATHER_INSTITUTE_STATE, 1 - call_if_eq Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaGone + call_if_eq VAR_WEATHER_INSTITUTE_STATE, 0, Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere + call_if_eq VAR_WEATHER_INSTITUTE_STATE, 1, Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaGone call_if_set FLAG_SYS_GAME_CLEAR, Route119_WeatherInstitute_2F_EventScript_SetScientistPosGameClear end @@ -92,18 +90,15 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastform:: msgbox Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon, MSGBOX_DEFAULT setvar VAR_TEMP_1, SPECIES_CASTFORM givemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER - compare VAR_RESULT, 0 - goto_if_eq Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty - compare VAR_RESULT, 1 - goto_if_eq Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC + goto_if_eq VAR_RESULT, 0, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty + goto_if_eq VAR_RESULT, 1, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC goto Common_EventScript_NoMoreRoomForPokemon end Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty:: call Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route119_WeatherInstitute_2F_EventScript_ExplainCastform + goto_if_eq VAR_RESULT, NO, Route119_WeatherInstitute_2F_EventScript_ExplainCastform call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto Route119_WeatherInstitute_2F_EventScript_ExplainCastform @@ -112,8 +107,7 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty:: Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC:: call Route119_WeatherInstitute_2F_EventScript_ReceivedCastformFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route119_WeatherInstitute_2F_EventScript_SendCastformToPC + goto_if_eq VAR_RESULT, NO, Route119_WeatherInstitute_2F_EventScript_SendCastformToPC call Common_EventScript_NameReceivedBoxMon goto Route119_WeatherInstitute_2F_EventScript_SendCastformToPC end @@ -147,12 +141,10 @@ Route119_WeatherInstitute_2F_EventScript_TryStartAbnormalWeather:: setvar VAR_0x8004, 0 call_if_set FLAG_DEFEATED_KYOGRE, Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated call_if_set FLAG_DEFEATED_GROUDON, Route119_WeatherInstitute_2F_EventScript_LegendaryDefeated - compare VAR_0x8004, 2 @ Both defeated - goto_if_eq Route119_WeatherInstitute_2F_EventScript_NoAbnormalWeather + goto_if_eq VAR_0x8004, 2, Route119_WeatherInstitute_2F_EventScript_NoAbnormalWeather @ Both defeated call_if_unset FLAG_TEMP_2, Route119_WeatherInstitute_2F_EventScript_CreateAbnormalWeather specialvar VAR_RESULT, GetAbnormalWeatherMapNameAndType - compare VAR_RESULT, 1 - goto_if_eq Route119_WeatherInstitute_2F_EventScript_KyogreWeather + goto_if_eq VAR_RESULT, 1, Route119_WeatherInstitute_2F_EventScript_KyogreWeather msgbox Route119_WeatherInstitute_2F_Text_GroudonWeather, MSGBOX_DEFAULT release end diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index e28637592139..baf721a5ca56 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -13,32 +13,24 @@ Route120_OnResume: end Route120_EventScript_RemoveKecleonObject:: - compare VAR_0x8009, 0 - call_if_eq Route120_EventScript_RemoveBridgeKecleon - compare VAR_0x8009, 1 - call_if_eq Route120_EventScript_RemoveKecleon - compare VAR_0x8009, 2 - call_if_eq Route120_EventScript_RemoveKecleon - compare VAR_0x8009, 3 - call_if_eq Route120_EventScript_RemoveKecleon - compare VAR_0x8009, 4 - call_if_eq Route120_EventScript_RemoveKecleon - compare VAR_0x8009, 5 - call_if_eq Route120_EventScript_RemoveKecleon + call_if_eq VAR_0x8009, 0, Route120_EventScript_RemoveBridgeKecleon + call_if_eq VAR_0x8009, 1, Route120_EventScript_RemoveKecleon + call_if_eq VAR_0x8009, 2, Route120_EventScript_RemoveKecleon + call_if_eq VAR_0x8009, 3, Route120_EventScript_RemoveKecleon + call_if_eq VAR_0x8009, 4, Route120_EventScript_RemoveKecleon + call_if_eq VAR_0x8009, 5, Route120_EventScript_RemoveKecleon return Route120_EventScript_RemoveBridgeKecleon:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_BRIDGE_KECLEON removeobject LOCALID_BRIDGE_KECLEON_SHADOW return Route120_EventScript_RemoveKecleon:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return @@ -71,12 +63,9 @@ Route120_OnTransition: Route120_EventScript_SetWeather:: getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_TEMP_1, 14 - goto_if_le Route120_EventScript_SetSunnyWeather - compare VAR_TEMP_1, 60 - goto_if_le Route120_EventScript_TrySetRainyWeather - compare VAR_TEMP_1, 61 - goto_if_ge Route120_EventScript_SetCloudyWeather + goto_if_le VAR_TEMP_1, 14, Route120_EventScript_SetSunnyWeather + goto_if_le VAR_TEMP_1, 60, Route120_EventScript_TrySetRainyWeather + goto_if_ge VAR_TEMP_1, 61, Route120_EventScript_SetCloudyWeather return Route120_EventScript_SetCloudyWeather:: @@ -88,10 +77,8 @@ Route120_EventScript_SetSunnyWeather:: return Route120_EventScript_TrySetRainyWeather:: - compare VAR_TEMP_0, 7 - goto_if_le Route120_EventScript_SetRainyWeather - compare VAR_TEMP_0, 19 - goto_if_le Route120_EventScript_SetSunnyWeather + goto_if_le VAR_TEMP_0, 7, Route120_EventScript_SetRainyWeather + goto_if_le VAR_TEMP_0, 19, Route120_EventScript_SetSunnyWeather goto Route120_EventScript_SetRainyWeather end @@ -105,10 +92,8 @@ Route120_EventScript_BerryBeauty:: dotimebasedevents goto_if_set FLAG_DAILY_ROUTE_120_RECEIVED_BERRY, Route120_EventScript_ReceivedBerry msgbox Route120_Text_BerriesExpressionOfLoveIsntIt, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq Route120_EventScript_BerryLove - compare VAR_RESULT, NO - call_if_eq Route120_EventScript_BerryNotLove + call_if_eq VAR_RESULT, YES, Route120_EventScript_BerryLove + call_if_eq VAR_RESULT, NO, Route120_EventScript_BerryNotLove specialvar VAR_RESULT, GetPlayerTrainerIdOnesDigit switch VAR_RESULT case 0, Route120_EventScript_GiveFigyBerry @@ -150,8 +135,7 @@ Route120_EventScript_GiveIapapaBerry:: Route120_EventScript_GiveBerry:: giveitem VAR_0x8004 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_ROUTE_120_RECEIVED_BERRY msgbox Route120_Text_BerryIsRareRaiseItWithCare, MSGBOX_DEFAULT release @@ -175,8 +159,7 @@ Route120_EventScript_Steven:: faceplayer goto_if_set FLAG_NOT_READY_FOR_BATTLE_ROUTE_120, Route120_EventScript_StevenAskReadyForBattle msgbox Route120_Text_StevenGreeting, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route120_EventScript_StevenNotReady + goto_if_eq VAR_RESULT, NO, Route120_EventScript_StevenNotReady goto Route120_EventScript_StevenBattleKecleon end @@ -188,18 +171,15 @@ Route120_EventScript_StevenNotReady:: Route120_EventScript_StevenAskReadyForBattle:: msgbox Route120_Text_StevenReadyForBattle, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route120_EventScript_StevenNotReady + goto_if_eq VAR_RESULT, NO, Route120_EventScript_StevenNotReady goto Route120_EventScript_StevenBattleKecleon end Route120_EventScript_StevenBattleKecleon:: msgbox Route120_Text_StevenShowMeYourPower, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq Route120_EventScript_PlayerApproachKecleonNorth - compare VAR_FACING, DIR_WEST - call_if_eq Route120_EventScript_PlayerApproachKecleonWest + 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 waitmovement 0 delay 20 @@ -219,12 +199,9 @@ Route120_EventScript_StevenBattleKecleon:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq Route120_EventScript_RemoveBridgeKecleonPostBattle - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq Route120_EventScript_RemoveBridgeKecleonPostBattle - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq Route120_EventScript_RemoveBridgeKecleonPostBattle + goto_if_eq VAR_RESULT, B_OUTCOME_WON, Route120_EventScript_RemoveBridgeKecleonPostBattle + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, Route120_EventScript_RemoveBridgeKecleonPostBattle + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, Route120_EventScript_RemoveBridgeKecleonPostBattle goto Route120_EventScript_StevenGiveDeconScope end @@ -296,8 +273,7 @@ Route120_EventScript_Colin:: Route120_EventScript_Robert:: trainerbattle_single TRAINER_ROBERT_1, Route120_Text_RobertIntro, Route120_Text_RobertDefeat, Route120_EventScript_RegisterRobert specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route120_EventScript_RematchRobert + goto_if_eq VAR_RESULT, TRUE, Route120_EventScript_RematchRobert msgbox Route120_Text_RobertPostBattle, MSGBOX_DEFAULT release end @@ -328,8 +304,7 @@ Route120_EventScript_Jenna:: Route120_EventScript_Jeffrey:: trainerbattle_single TRAINER_JEFFREY_1, Route120_Text_JeffreyIntro, Route120_Text_JeffreyDefeat, Route120_EventScript_RegisterJeffrey specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route120_EventScript_RematchJeffrey + goto_if_eq VAR_RESULT, TRUE, Route120_EventScript_RematchJeffrey msgbox Route120_Text_JeffreyPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route121/scripts.inc b/data/maps/Route121/scripts.inc index 3bd0a42ee148..317328825c2f 100644 --- a/data/maps/Route121/scripts.inc +++ b/data/maps/Route121/scripts.inc @@ -77,8 +77,7 @@ Route121_EventScript_Vanessa:: Route121_EventScript_Walter:: trainerbattle_single TRAINER_WALTER_1, Route121_Text_WalterIntro, Route121_Text_WalterDefeat, Route121_EventScript_RegisterWalter specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route121_EventScript_RematchWalter + goto_if_eq VAR_RESULT, TRUE, Route121_EventScript_RematchWalter msgbox Route121_Text_WalterPostBattle, MSGBOX_DEFAULT release end @@ -114,8 +113,7 @@ Route121_EventScript_Joy:: Route121_EventScript_Jessica:: trainerbattle_single TRAINER_JESSICA_1, Route121_Text_JessicaIntro, Route121_Text_JessicaDefeat, Route121_EventScript_RegisterJessica specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route121_EventScript_RematchJessica + goto_if_eq VAR_RESULT, TRUE, Route121_EventScript_RematchJessica msgbox Route121_Text_JessicaPostBattle, MSGBOX_DEFAULT release end @@ -156,8 +154,7 @@ Route121_EventScript_Marcel:: Route121_EventScript_Cristin:: trainerbattle_single TRAINER_CRISTIN_1, Route121_Text_CristinIntro, Route121_Text_CristinDefeat, Route121_EventScript_RegisterCristin specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route121_EventScript_RematchCristin + goto_if_eq VAR_RESULT, TRUE, Route121_EventScript_RematchCristin msgbox Route121_Text_CristinPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc index 5050612f74c5..92fdc2d0bd70 100644 --- a/data/maps/Route121_SafariZoneEntrance/scripts.inc +++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc @@ -33,8 +33,7 @@ Route121_SafariZoneEntrance_EventScript_InfoAttendant:: lock faceplayer msgbox Route121_SafariZoneEntrance_Text_WelcomeFirstTime, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route121_SafariZoneEntrance_EventScript_FirstTimeInfo + goto_if_eq VAR_RESULT, YES, Route121_SafariZoneEntrance_EventScript_FirstTimeInfo msgbox Route121_SafariZoneEntrance_Text_ComeInAndEnjoy, MSGBOX_DEFAULT release end @@ -50,20 +49,17 @@ Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger:: waitmovement 0 showmoneybox 0, 0 msgbox Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone + goto_if_eq VAR_RESULT, YES, Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone msgbox Route121_SafariZoneEntrance_Text_PlayAnotherTime, MSGBOX_DEFAULT goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, 0 - goto_if_eq Route121_SafariZoneEntrance_EventScript_NoPokeblockCase + goto_if_eq VAR_RESULT, 0, Route121_SafariZoneEntrance_EventScript_NoPokeblockCase call Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon checkmoney 500 - compare VAR_RESULT, 0 - goto_if_eq Route121_SafariZoneEntrance_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, 0, Route121_SafariZoneEntrance_EventScript_NotEnoughMoney playse SE_SHOP msgbox Route121_SafariZoneEntrance_Text_ThatWillBe500Please, MSGBOX_DEFAULT removemoney 500 @@ -86,11 +82,9 @@ Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone:: Route121_SafariZoneEntrance_EventScript_CheckHasRoomForPokemon:: getpartysize - compare VAR_RESULT, PARTY_SIZE - goto_if_ne Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon + goto_if_ne VAR_RESULT, PARTY_SIZE, Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon specialvar VAR_RESULT, ScriptCheckFreePokemonStorageSpace - compare VAR_RESULT, 1 - goto_if_eq Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon + goto_if_eq VAR_RESULT, 1, Route121_SafariZoneEntrance_EventScript_HasRoomForPokemon msgbox Route121_SafariZoneEntrance_Text_PCIsFull, MSGBOX_DEFAULT goto Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter end diff --git a/data/maps/Route123/scripts.inc b/data/maps/Route123/scripts.inc index 6ce0de6544a9..fe63661261b3 100644 --- a/data/maps/Route123/scripts.inc +++ b/data/maps/Route123/scripts.inc @@ -12,12 +12,10 @@ Route123_EventScript_GigaDrainGirl:: goto_if_set FLAG_RECEIVED_TM19, Route123_EventScript_ReceivedGigaDrain msgbox Route123_Text_LoveGrassMonsHaveAny, MSGBOX_DEFAULT special IsGrassTypeInParty - compare VAR_RESULT, FALSE - goto_if_eq Route123_EventScript_NoGrassMons + goto_if_eq VAR_RESULT, FALSE, Route123_EventScript_NoGrassMons msgbox Route123_Text_YouLikeGrassMonsTooHaveThis, MSGBOX_DEFAULT giveitem ITEM_TM19 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM19 msgbox Route123_Text_CheckTreesWithMyGrassMon, MSGBOX_DEFAULT release @@ -62,8 +60,7 @@ Route123_EventScript_Violet:: Route123_EventScript_Cameron:: trainerbattle_single TRAINER_CAMERON_1, Route123_Text_CameronIntro, Route123_Text_CameronDefeat, Route123_EventScript_RegisterCameron specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route123_EventScript_RematchCameron + goto_if_eq VAR_RESULT, TRUE, Route123_EventScript_RematchCameron msgbox Route123_Text_CameronPostBattle, MSGBOX_DEFAULT release end @@ -84,8 +81,7 @@ Route123_EventScript_RematchCameron:: Route123_EventScript_Jacki:: trainerbattle_single TRAINER_JACKI_1, Route123_Text_JackiIntro, Route123_Text_JackiDefeat, Route123_EventScript_RegisterJacki specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route123_EventScript_RematchJacki + goto_if_eq VAR_RESULT, TRUE, Route123_EventScript_RematchJacki msgbox Route123_Text_JackiPostBattle, MSGBOX_DEFAULT release end @@ -156,8 +152,7 @@ Route123_EventScript_Davis:: Route123_EventScript_Fernando:: trainerbattle_single TRAINER_FERNANDO_1, Route123_Text_FernandoIntro, Route123_Text_FernandoDefeat, Route123_EventScript_RegisterFernando specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route123_EventScript_RematchFernando + goto_if_eq VAR_RESULT, TRUE, Route123_EventScript_RematchFernando msgbox Route123_Text_FernandoPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route123_BerryMastersHouse/scripts.inc b/data/maps/Route123_BerryMastersHouse/scripts.inc index a9fbfd9d0a27..bdc0b0456b61 100644 --- a/data/maps/Route123_BerryMastersHouse/scripts.inc +++ b/data/maps/Route123_BerryMastersHouse/scripts.inc @@ -16,16 +16,14 @@ Route123_BerryMastersHouse_EventScript_BerryMaster:: addvar VAR_RESULT, NUM_BERRY_MASTER_BERRIES_SKIPPED addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_BERRY_MASTER_RECEIVED_BERRY msgbox Route123_BerryMastersHouse_Text_WhyBeStingyTakeAnother, MSGBOX_DEFAULT random NUM_BERRY_MASTER_BERRIES addvar VAR_RESULT, NUM_BERRY_MASTER_BERRIES_SKIPPED addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox Route123_BerryMastersHouse_Text_VisitPrettyPetalFlowerShop, MSGBOX_DEFAULT release end @@ -45,10 +43,8 @@ Route123_BerryMastersHouse_EventScript_BerryMastersWife:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, TRUE - goto_if_eq Route123_BerryMastersHouse_EventScript_GavePhrase - compare VAR_RESULT, FALSE - goto_if_eq Route123_BerryMastersHouse_EventScript_CancelPhrase + goto_if_eq VAR_RESULT, TRUE, Route123_BerryMastersHouse_EventScript_GavePhrase + goto_if_eq VAR_RESULT, FALSE, Route123_BerryMastersHouse_EventScript_CancelPhrase end Route123_BerryMastersHouse_EventScript_CancelPhrase:: @@ -58,18 +54,12 @@ Route123_BerryMastersHouse_EventScript_CancelPhrase:: end Route123_BerryMastersHouse_EventScript_GavePhrase:: - compare VAR_0x8004, NOT_SPECIAL_PHRASE - goto_if_eq Route123_BerryMastersHouse_EventScript_GiveNormalBerry - compare VAR_0x8004, PHRASE_GREAT_BATTLE - goto_if_eq Route123_BerryMastersHouse_EventScript_GiveSpelonBerry - compare VAR_0x8004, PHRASE_CHALLENGE_CONTEST - goto_if_eq Route123_BerryMastersHouse_EventScript_GivePamtreBerry - compare VAR_0x8004, PHRASE_OVERWHELMING_LATIAS - goto_if_eq Route123_BerryMastersHouse_EventScript_GiveWatmelBerry - compare VAR_0x8004, PHRASE_COOL_LATIOS - goto_if_eq Route123_BerryMastersHouse_EventScript_GiveDurinBerry - compare VAR_0x8004, PHRASE_SUPER_HUSTLE - goto_if_eq Route123_BerryMastersHouse_EventScript_GiveBelueBerry + goto_if_eq VAR_0x8004, NOT_SPECIAL_PHRASE, Route123_BerryMastersHouse_EventScript_GiveNormalBerry + goto_if_eq VAR_0x8004, PHRASE_GREAT_BATTLE, Route123_BerryMastersHouse_EventScript_GiveSpelonBerry + goto_if_eq VAR_0x8004, PHRASE_CHALLENGE_CONTEST, Route123_BerryMastersHouse_EventScript_GivePamtreBerry + goto_if_eq VAR_0x8004, PHRASE_OVERWHELMING_LATIAS, Route123_BerryMastersHouse_EventScript_GiveWatmelBerry + goto_if_eq VAR_0x8004, PHRASE_COOL_LATIOS, Route123_BerryMastersHouse_EventScript_GiveDurinBerry + goto_if_eq VAR_0x8004, PHRASE_SUPER_HUSTLE, Route123_BerryMastersHouse_EventScript_GiveBelueBerry end Route123_BerryMastersHouse_EventScript_GiveNormalBerry:: @@ -77,8 +67,7 @@ Route123_BerryMastersHouse_EventScript_GiveNormalBerry:: random NUM_BERRY_MASTER_WIFE_BERRIES addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull goto Route123_BerryMastersHouse_EventScript_GaveBerry release end @@ -87,8 +76,7 @@ Route123_BerryMastersHouse_EventScript_GiveSpelonBerry:: goto_if_set FLAG_RECEIVED_SPELON_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_SPELON_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SPELON_BERRY goto Route123_BerryMastersHouse_EventScript_GaveBerry end @@ -97,8 +85,7 @@ Route123_BerryMastersHouse_EventScript_GivePamtreBerry:: goto_if_set FLAG_RECEIVED_PAMTRE_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_PAMTRE_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_PAMTRE_BERRY goto Route123_BerryMastersHouse_EventScript_GaveBerry end @@ -107,8 +94,7 @@ Route123_BerryMastersHouse_EventScript_GiveWatmelBerry:: goto_if_set FLAG_RECEIVED_WATMEL_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_WATMEL_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_WATMEL_BERRY goto Route123_BerryMastersHouse_EventScript_GaveBerry end @@ -117,8 +103,7 @@ Route123_BerryMastersHouse_EventScript_GiveDurinBerry:: goto_if_set FLAG_RECEIVED_DURIN_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_DURIN_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_DURIN_BERRY goto Route123_BerryMastersHouse_EventScript_GaveBerry end @@ -127,8 +112,7 @@ Route123_BerryMastersHouse_EventScript_GiveBelueBerry:: goto_if_set FLAG_RECEIVED_BELUE_BERRY, Route123_BerryMastersHouse_EventScript_GiveNormalBerry msgbox Route123_BerryMastersHouse_Text_InspirationalTakeThis, MSGBOX_DEFAULT giveitem ITEM_BELUE_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_BELUE_BERRY goto Route123_BerryMastersHouse_EventScript_GaveBerry end diff --git a/data/maps/Route124/scripts.inc b/data/maps/Route124/scripts.inc index d1cd8ef8c269..108b915da22b 100644 --- a/data/maps/Route124/scripts.inc +++ b/data/maps/Route124/scripts.inc @@ -23,8 +23,7 @@ Route124_EventScript_Roland:: Route124_EventScript_Jenny:: trainerbattle_single TRAINER_JENNY_1, Route124_Text_JennyIntro, Route124_Text_JennyDefeat, Route124_EventScript_RegisterJenny specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route124_EventScript_RematchJenny + goto_if_eq VAR_RESULT, TRUE, Route124_EventScript_RematchJenny msgbox Route124_Text_JennyPostBattle, MSGBOX_DEFAULT release end @@ -55,8 +54,7 @@ Route124_EventScript_Chad:: Route124_EventScript_Lila:: trainerbattle_double TRAINER_LILA_AND_ROY_1, Route124_Text_LilaIntro, Route124_Text_LilaDefeat, Route124_Text_LilaNotEnoughMons, Route124_EventScript_RegisterLila specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route124_EventScript_RematchLila + goto_if_eq VAR_RESULT, TRUE, Route124_EventScript_RematchLila msgbox Route124_Text_LilaPostBattle, MSGBOX_DEFAULT release end @@ -75,8 +73,7 @@ Route124_EventScript_RematchLila:: Route124_EventScript_Roy:: trainerbattle_double TRAINER_LILA_AND_ROY_1, Route124_Text_RoyIntro, Route124_Text_RoyDefeat, Route124_Text_RoyNotEnoughMons, Route124_EventScript_RegisterRoy specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route124_EventScript_RematchRoy + goto_if_eq VAR_RESULT, TRUE, Route124_EventScript_RematchRoy msgbox Route124_Text_RoyPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc index 06e16be35399..b100438f5555 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc +++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc @@ -22,25 +22,20 @@ Route124_DivingTreasureHuntersHouse_EventScript_SkipGreeting:: Route124_DivingTreasureHuntersHouse_EventScript_CheckPlayerHasShard:: call Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards - compare VAR_TEMP_1, 0 - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_NoShards + goto_if_eq VAR_TEMP_1, 0, Route124_DivingTreasureHuntersHouse_EventScript_NoShards goto Route124_DivingTreasureHuntersHouse_EventScript_HasShard end Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards:: setvar VAR_TEMP_1, 0 checkitem ITEM_RED_SHARD - compare VAR_RESULT, TRUE - call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard + call_if_eq VAR_RESULT, TRUE, Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard checkitem ITEM_YELLOW_SHARD - compare VAR_RESULT, TRUE - call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasYellowShard + call_if_eq VAR_RESULT, TRUE, Route124_DivingTreasureHuntersHouse_EventScript_HasYellowShard checkitem ITEM_BLUE_SHARD - compare VAR_RESULT, TRUE - call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasBlueShard + call_if_eq VAR_RESULT, TRUE, Route124_DivingTreasureHuntersHouse_EventScript_HasBlueShard checkitem ITEM_GREEN_SHARD - compare VAR_RESULT, TRUE - call_if_eq Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard + call_if_eq VAR_RESULT, TRUE, Route124_DivingTreasureHuntersHouse_EventScript_HasGreenShard return Route124_DivingTreasureHuntersHouse_EventScript_HasRedShard:: @@ -246,14 +241,11 @@ Route124_DivingTreasureHuntersHouse_EventScript_TryTradeShard:: bufferitemname STR_VAR_1, VAR_0x8008 bufferitemname STR_VAR_2, VAR_0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_YoullTradeShardForStone, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade checkitemspace VAR_0x8009 - compare VAR_RESULT, TRUE - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_TradeShard + goto_if_eq VAR_RESULT, TRUE, Route124_DivingTreasureHuntersHouse_EventScript_TradeShard checkitem VAR_0x8008, 2 - compare VAR_RESULT, FALSE - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_TradeShard + goto_if_eq VAR_RESULT, FALSE, Route124_DivingTreasureHuntersHouse_EventScript_TradeShard goto Route124_DivingTreasureHuntersHouse_EventScript_BagFull end @@ -262,11 +254,9 @@ Route124_DivingTreasureHuntersHouse_EventScript_TradeShard:: giveitem VAR_0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_ItsADeal, MSGBOX_DEFAULT call Route124_DivingTreasureHuntersHouse_EventScript_GetPlayersShards - compare VAR_TEMP_1, 0 - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_EndTrade + goto_if_eq VAR_TEMP_1, 0, Route124_DivingTreasureHuntersHouse_EventScript_EndTrade msgbox Route124_DivingTreasureHuntersHouse_Text_TradeSomethingElse, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions + goto_if_eq VAR_RESULT, YES, Route124_DivingTreasureHuntersHouse_EventScript_ShowTradeOptions goto Route124_DivingTreasureHuntersHouse_EventScript_DeclineTrade end diff --git a/data/maps/Route125/scripts.inc b/data/maps/Route125/scripts.inc index 7a2d3f15fa93..cafdf8fbbf69 100644 --- a/data/maps/Route125/scripts.inc +++ b/data/maps/Route125/scripts.inc @@ -6,19 +6,14 @@ Route125_MapScripts:: Route125_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_WEST - call_if_eq AbnormalWeather_StartKyogreWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_EAST - call_if_eq AbnormalWeather_StartKyogreWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_WEST, AbnormalWeather_StartKyogreWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_EAST, AbnormalWeather_StartKyogreWeather end Route125_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_WEST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute125West - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_EAST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute125East + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_WEST, AbnormalWeather_EventScript_PlaceTilesRoute125West + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_125_EAST, AbnormalWeather_EventScript_PlaceTilesRoute125East end Route125_OnFrame: @@ -48,8 +43,7 @@ Route125_EventScript_Sharon:: Route125_EventScript_Ernest:: trainerbattle_single TRAINER_ERNEST_1, Route125_Text_ErnestIntro, Route125_Text_ErnestDefeat, Route125_EventScript_RegisterErnest specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route125_EventScript_RematchErnest + goto_if_eq VAR_RESULT, TRUE, Route125_EventScript_RematchErnest msgbox Route125_Text_ErnestPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route126/scripts.inc b/data/maps/Route126/scripts.inc index 79f5bb11be83..752cd2d4d537 100644 --- a/data/maps/Route126/scripts.inc +++ b/data/maps/Route126/scripts.inc @@ -44,8 +44,7 @@ Route126_EventScript_Sienna:: Route126_EventScript_Pablo:: trainerbattle_single TRAINER_PABLO_1, Route126_Text_PabloIntro, Route126_Text_PabloDefeat, Route126_EventScript_RegisterPablo specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route126_EventScript_RematchPablo + goto_if_eq VAR_RESULT, TRUE, Route126_EventScript_RematchPablo msgbox Route126_Text_PabloPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route127/scripts.inc b/data/maps/Route127/scripts.inc index 426e814702b9..05bfb14ffe25 100644 --- a/data/maps/Route127/scripts.inc +++ b/data/maps/Route127/scripts.inc @@ -6,19 +6,14 @@ Route127_MapScripts:: Route127_OnTransition: call_if_set FLAG_SYS_WEATHER_CTRL, Common_EventScript_SetAbnormalWeather - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_NORTH - call_if_eq AbnormalWeather_StartKyogreWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_SOUTH - call_if_eq AbnormalWeather_StartKyogreWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_NORTH, AbnormalWeather_StartKyogreWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_SOUTH, AbnormalWeather_StartKyogreWeather end Route127_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_NORTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute127North - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_SOUTH - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute127South + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_NORTH, AbnormalWeather_EventScript_PlaceTilesRoute127North + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_127_SOUTH, AbnormalWeather_EventScript_PlaceTilesRoute127South end Route127_OnFrame: @@ -63,8 +58,7 @@ Route127_EventScript_Athena:: Route127_EventScript_Koji:: trainerbattle_single TRAINER_KOJI_1, Route127_Text_KojiIntro, Route127_Text_KojiDefeat, Route127_EventScript_RegisterKoji specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route127_EventScript_RematchKoji + goto_if_eq VAR_RESULT, TRUE, Route127_EventScript_RematchKoji msgbox Route127_Text_KojiPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route128/scripts.inc b/data/maps/Route128/scripts.inc index e550f2bd1257..d08605128a93 100644 --- a/data/maps/Route128/scripts.inc +++ b/data/maps/Route128/scripts.inc @@ -181,8 +181,7 @@ Route128_Movement_MaxieApproachPlayer: Route128_EventScript_Isaiah:: trainerbattle_single TRAINER_ISAIAH_1, Route128_Text_IsaiahIntro, Route128_Text_IsaiahDefeat, Route128_EventScript_RegisterIsaiah specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route128_EventScript_RematchIsaiah + goto_if_eq VAR_RESULT, TRUE, Route128_EventScript_RematchIsaiah msgbox Route128_Text_IsaiahPostBattle, MSGBOX_DEFAULT release end @@ -203,8 +202,7 @@ Route128_EventScript_RematchIsaiah:: Route128_EventScript_Katelyn:: trainerbattle_single TRAINER_KATELYN_1, Route128_Text_KatelynIntro, Route128_Text_KatelynDefeat, Route128_EventScript_RegisterKatelyn specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq Route128_EventScript_RematchKatelyn + goto_if_eq VAR_RESULT, TRUE, Route128_EventScript_RematchKatelyn msgbox Route128_Text_KatelynPostBattle, MSGBOX_DEFAULT release end diff --git a/data/maps/Route129/scripts.inc b/data/maps/Route129/scripts.inc index e996722cc9d8..7055675a0e41 100644 --- a/data/maps/Route129/scripts.inc +++ b/data/maps/Route129/scripts.inc @@ -5,21 +5,15 @@ Route129_MapScripts:: .byte 0 Route129_OnLoad: - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_WEST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute129West - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_EAST - call_if_eq AbnormalWeather_EventScript_PlaceTilesRoute129East + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_WEST, AbnormalWeather_EventScript_PlaceTilesRoute129West + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_EAST, AbnormalWeather_EventScript_PlaceTilesRoute129East end Route129_OnTransition: - compare VAR_SHOULD_END_ABNORMAL_WEATHER, 1 - call_if_eq AbnormalWeather_EventScript_HideMapNamePopup - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_ge Route129_EventScript_CheckSetAbnormalWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_WEST - call_if_eq AbnormalWeather_StartKyogreWeather - compare VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_EAST - call_if_eq AbnormalWeather_StartKyogreWeather + call_if_eq VAR_SHOULD_END_ABNORMAL_WEATHER, 1, AbnormalWeather_EventScript_HideMapNamePopup + call_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, Route129_EventScript_CheckSetAbnormalWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_WEST, AbnormalWeather_StartKyogreWeather + call_if_eq VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_ROUTE_129_EAST, AbnormalWeather_StartKyogreWeather end Route129_EventScript_CheckSetAbnormalWeather:: diff --git a/data/maps/Route130/scripts.inc b/data/maps/Route130/scripts.inc index fe360a36bb72..7e0ecc8bd15b 100644 --- a/data/maps/Route130/scripts.inc +++ b/data/maps/Route130/scripts.inc @@ -3,11 +3,9 @@ Route130_MapScripts:: .byte 0 Route130_OnTransition: - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_ge Route130_EventScript_CheckSetAbnormalWeather + call_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, Route130_EventScript_CheckSetAbnormalWeather specialvar VAR_RESULT, IsMirageIslandPresent - compare VAR_RESULT, TRUE - goto_if_eq Route130_EventScript_SetMirageIslandLayout + goto_if_eq VAR_RESULT, TRUE, Route130_EventScript_SetMirageIslandLayout setflag FLAG_TEMP_11 setflag FLAG_TEMP_12 setflag FLAG_TEMP_13 diff --git a/data/maps/Route131/scripts.inc b/data/maps/Route131/scripts.inc index 846998bfe92a..17060c183b8f 100644 --- a/data/maps/Route131/scripts.inc +++ b/data/maps/Route131/scripts.inc @@ -3,8 +3,7 @@ Route131_MapScripts:: .byte 0 Route131_OnTransition: - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_ge Route131_EventScript_CheckSetAbnormalWeather + call_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, Route131_EventScript_CheckSetAbnormalWeather call Route131_EventScript_SetLayout end diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc index 48c413b0422d..28fd38921019 100644 --- a/data/maps/RustboroCity/scripts.inc +++ b/data/maps/RustboroCity/scripts.inc @@ -13,16 +13,13 @@ RustboroCity_MapScripts:: RustboroCity_OnTransition: setflag FLAG_VISITED_RUSTBORO_CITY call Common_EventScript_SetupRivalGfxId - compare VAR_RUSTBORO_CITY_STATE, 6 - call_if_eq RustboroCity_EventScript_HideMapNamePopup + call_if_eq VAR_RUSTBORO_CITY_STATE, 6, RustboroCity_EventScript_HideMapNamePopup getplayerxy VAR_TEMP_0, VAR_TEMP_1 - compare VAR_RUSTBORO_CITY_STATE, 6 - goto_if_eq RustboroCity_EventScript_PositionScientistForExit + goto_if_eq VAR_RUSTBORO_CITY_STATE, 6, RustboroCity_EventScript_PositionScientistForExit end RustboroCity_EventScript_PositionScientistForExit:: - compare VAR_TEMP_0, 11 - goto_if_eq RustboroCity_EventScript_PositionScientistLeftExit + goto_if_eq VAR_TEMP_0, 11, RustboroCity_EventScript_PositionScientistLeftExit setobjectxyperm LOCALID_SCIENTIST, 12, 15 end @@ -506,14 +503,10 @@ RustboroCity_EventScript_HelpGetGoodsTrigger3:: end RustboroCity_EventScript_EmployeeAskToGetGoods:: - compare VAR_TEMP_1, 0 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerUp1 - compare VAR_TEMP_1, 1 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerLeft1 - compare VAR_TEMP_1, 2 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerDown1 - compare VAR_TEMP_1, 3 - call_if_eq RustboroCity_EventScript_EmployeeApproachPlayerDown1 + call_if_eq VAR_TEMP_1, 0, RustboroCity_EventScript_EmployeeFacePlayerUp1 + call_if_eq VAR_TEMP_1, 1, RustboroCity_EventScript_EmployeeFacePlayerLeft1 + call_if_eq VAR_TEMP_1, 2, RustboroCity_EventScript_EmployeeFacePlayerDown1 + 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 @@ -601,20 +594,14 @@ RustboroCity_EventScript_ReturnGoodsTrigger3:: end RustboroCity_EventScript_ReturnGoods:: - compare VAR_TEMP_1, 0 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerUp2 - compare VAR_TEMP_1, 1 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerLeft2 - compare VAR_TEMP_1, 2 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerDown2 - compare VAR_TEMP_1, 3 - call_if_eq RustboroCity_EventScript_EmployeeApproachPlayerDown2 - compare VAR_TEMP_1, 4 - call_if_eq RustboroCity_EventScript_EmployeeFacePlayerRight + call_if_eq VAR_TEMP_1, 0, RustboroCity_EventScript_EmployeeFacePlayerUp2 + call_if_eq VAR_TEMP_1, 1, RustboroCity_EventScript_EmployeeFacePlayerLeft2 + call_if_eq VAR_TEMP_1, 2, RustboroCity_EventScript_EmployeeFacePlayerDown2 + call_if_eq VAR_TEMP_1, 3, RustboroCity_EventScript_EmployeeApproachPlayerDown2 + call_if_eq VAR_TEMP_1, 4, RustboroCity_EventScript_EmployeeFacePlayerRight msgbox RustboroCity_Text_YouGotItThankYou, MSGBOX_DEFAULT giveitem ITEM_GREAT_BALL - compare VAR_RESULT, FALSE - call_if_eq RustboroCity_EventScript_BagFull + call_if_eq VAR_RESULT, FALSE, RustboroCity_EventScript_BagFull msgbox RustboroCity_Text_PleaseComeWithMe, MSGBOX_DEFAULT closemessage setflag FLAG_RETURNED_DEVON_GOODS @@ -699,10 +686,8 @@ RustboroCity_EventScript_Rival:: RustboroCity_EventScript_PlayRivalMusic:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq RustboroCity_EventScript_PlayMayMusic - compare VAR_RESULT, FEMALE - goto_if_eq RustboroCity_EventScript_PlayBrendanMusic + goto_if_eq VAR_RESULT, MALE, RustboroCity_EventScript_PlayMayMusic + goto_if_eq VAR_RESULT, FEMALE, RustboroCity_EventScript_PlayBrendanMusic return RustboroCity_EventScript_PlayMayMusic:: @@ -843,10 +828,8 @@ RustboroCity_EventScript_RivalTrigger7:: RustboroCity_EventScript_RivalEncounter:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq RustboroCity_EventScript_MayEncounter - compare VAR_RESULT, FEMALE - goto_if_eq RustboroCity_EventScript_BrendanEncounter + goto_if_eq VAR_RESULT, MALE, RustboroCity_EventScript_MayEncounter + goto_if_eq VAR_RESULT, FEMALE, RustboroCity_EventScript_BrendanEncounter end RustboroCity_EventScript_MayEncounter:: @@ -866,8 +849,7 @@ RustboroCity_EventScript_MayEncounter:: setvar VAR_ROUTE104_STATE, 2 setvar VAR_0x8008, 0 msgbox RustboroCity_Text_MayPassedBrineyWantToBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq RustboroCity_EventScript_BattleMay + goto_if_eq VAR_RESULT, YES, RustboroCity_EventScript_BattleMay msgbox RustboroCity_Text_MayOhHaventRaisedPokemonEnough, MSGBOX_DEFAULT call RustboroCity_EventScript_RestoreBgm releaseall @@ -876,8 +858,7 @@ RustboroCity_EventScript_MayEncounter:: RustboroCity_EventScript_MayAskToBattle:: setvar VAR_0x8008, 1 msgbox RustboroCity_Text_MayWantToBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq RustboroCity_EventScript_BattleMay + goto_if_eq VAR_RESULT, YES, RustboroCity_EventScript_BattleMay msgbox RustboroCity_Text_MayOhHaventRaisedPokemonEnough, MSGBOX_DEFAULT releaseall end @@ -892,8 +873,7 @@ RustboroCity_EventScript_BattleMay:: RustboroCity_EventScript_MayBrineyHint:: msgbox RustboroCity_Text_MayMrBrineyHint, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq RustboroCity_EventScript_RestoreBgm + call_if_eq VAR_0x8008, 0, RustboroCity_EventScript_RestoreBgm releaseall end @@ -936,8 +916,7 @@ RustboroCity_EventScript_BrendanEncounter:: setvar VAR_RUSTBORO_CITY_STATE, 8 setvar VAR_ROUTE104_STATE, 2 msgbox RustboroCity_Text_BrendanPassedBrineyWantToBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq RustboroCity_EventScript_BattleBrendan + goto_if_eq VAR_RESULT, YES, RustboroCity_EventScript_BattleBrendan msgbox RustboroCity_Text_BrendanNoConfidenceInPokemon, MSGBOX_DEFAULT call RustboroCity_EventScript_RestoreBgm releaseall @@ -945,8 +924,7 @@ RustboroCity_EventScript_BrendanEncounter:: RustboroCity_EventScript_BrendanAskToBattle:: msgbox RustboroCity_Text_BrendanWantToBattle, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq RustboroCity_EventScript_BattleBrendan + goto_if_eq VAR_RESULT, YES, RustboroCity_EventScript_BattleBrendan msgbox RustboroCity_Text_BrendanNoConfidenceInPokemon, MSGBOX_DEFAULT releaseall end @@ -961,8 +939,7 @@ RustboroCity_EventScript_BattleBrendan:: RustboroCity_EventScript_BrendanBrineyHint:: msgbox RustboroCity_Text_BrendanMrBrineyHint, MSGBOX_DEFAULT - compare VAR_0x8008, 0 - call_if_eq RustboroCity_EventScript_RestoreBgm + call_if_eq VAR_0x8008, 0, RustboroCity_EventScript_RestoreBgm releaseall end diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index 1f2f1ea8047e..987828a295da 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -5,8 +5,7 @@ RustboroCity_DevonCorp_2F_MapScripts:: .byte 0 RustboroCity_DevonCorp_2F_OnTransition: - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady end RustboroCity_DevonCorp_2F_EventScript_SetFossilReady:: @@ -16,8 +15,7 @@ RustboroCity_DevonCorp_2F_EventScript_SetFossilReady:: RustboroCity_DevonCorp_2F_EventScript_TalkToPokemonScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady msgbox RustboroCity_DevonCorp_2F_Text_DeviceForTalkingToPokemon, MSGBOX_DEFAULT release end @@ -25,8 +23,7 @@ RustboroCity_DevonCorp_2F_EventScript_TalkToPokemonScientist:: RustboroCity_DevonCorp_2F_EventScript_BallScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady goto_if_set FLAG_MET_DEVON_EMPLOYEE, RustboroCity_DevonCorp_2F_EventScript_DevelopedBalls msgbox RustboroCity_DevonCorp_2F_Text_DevelopingNewBalls, MSGBOX_DEFAULT release @@ -40,8 +37,7 @@ RustboroCity_DevonCorp_2F_EventScript_DevelopedBalls:: RustboroCity_DevonCorp_2F_EventScript_PokenavScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady goto_if_set FLAG_RECEIVED_POKENAV, RustboroCity_DevonCorp_2F_EventScript_HasPokenav msgbox RustboroCity_DevonCorp_2F_Text_IMadePokenav, MSGBOX_DEFAULT release @@ -55,8 +51,7 @@ RustboroCity_DevonCorp_2F_EventScript_HasPokenav:: RustboroCity_DevonCorp_2F_EventScript_PokemonDreamsScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady msgbox RustboroCity_DevonCorp_2F_Text_DeviceToVisualizePokemonDreams, MSGBOX_DEFAULT release end @@ -64,17 +59,13 @@ RustboroCity_DevonCorp_2F_EventScript_PokemonDreamsScientist:: RustboroCity_DevonCorp_2F_EventScript_FossilScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 2 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_FossilMonReady - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_StillRegenerating + goto_if_eq VAR_FOSSIL_RESURRECTION_STATE, 2, RustboroCity_DevonCorp_2F_EventScript_FossilMonReady + goto_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_StillRegenerating msgbox RustboroCity_DevonCorp_2F_Text_DevelopDeviceToResurrectFossils, MSGBOX_DEFAULT checkitem ITEM_ROOT_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil + goto_if_eq VAR_RESULT, TRUE, RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil checkitem ITEM_CLAW_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil + goto_if_eq VAR_RESULT, TRUE, RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil release end @@ -87,11 +78,9 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeRootFossil:: applymovement LOCALID_FOSSIL_SCIENTIST, Common_Movement_Delay48 waitmovement 0 msgbox RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil checkitem ITEM_CLAW_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ChooseFossil + goto_if_eq VAR_RESULT, TRUE, RustboroCity_DevonCorp_2F_EventScript_ChooseFossil goto RustboroCity_DevonCorp_2F_EventScript_GiveRootFossil end @@ -112,11 +101,9 @@ RustboroCity_DevonCorp_2F_EventScript_NoticeClawFossil:: applymovement LOCALID_FOSSIL_SCIENTIST, Common_Movement_Delay48 waitmovement 0 msgbox RustboroCity_DevonCorp_2F_Text_WantToBringFossilBackToLife, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_DeclineGiveFossil checkitem ITEM_ROOT_FOSSIL - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ChooseFossil + goto_if_eq VAR_RESULT, TRUE, RustboroCity_DevonCorp_2F_EventScript_ChooseFossil goto RustboroCity_DevonCorp_2F_EventScript_GiveClawFossil end @@ -140,10 +127,8 @@ RustboroCity_DevonCorp_2F_EventScript_StillRegenerating:: end RustboroCity_DevonCorp_2F_EventScript_FossilMonReady:: - compare VAR_WHICH_FOSSIL_REVIVED, 1 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_LileepReady - compare VAR_WHICH_FOSSIL_REVIVED, 2 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_AnorithReady + goto_if_eq VAR_WHICH_FOSSIL_REVIVED, 1, RustboroCity_DevonCorp_2F_EventScript_LileepReady + goto_if_eq VAR_WHICH_FOSSIL_REVIVED, 2, RustboroCity_DevonCorp_2F_EventScript_AnorithReady end RustboroCity_DevonCorp_2F_EventScript_LileepReady:: @@ -161,18 +146,15 @@ RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: setvar VAR_TEMP_1, SPECIES_LILEEP givemon SPECIES_LILEEP, 20, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty - compare VAR_RESULT, 1 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC + goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty + goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC goto Common_EventScript_NoMoreRoomForPokemon end RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep @@ -181,8 +163,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty:: RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedLileepFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC call Common_EventScript_NameReceivedBoxMon goto RustboroCity_DevonCorp_2F_EventScript_TransferLileepToPC end @@ -210,18 +191,15 @@ RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: setvar VAR_TEMP_1, SPECIES_ANORITH givemon SPECIES_ANORITH, 20, ITEM_NONE - compare VAR_RESULT, 0 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty - compare VAR_RESULT, 1 - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC + goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty + goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC goto Common_EventScript_NoMoreRoomForPokemon end RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith call Common_EventScript_GetGiftMonPartySlot call Common_EventScript_NameReceivedPartyMon goto RustboroCity_DevonCorp_2F_EventScript_FinishReceivingAnorith @@ -230,8 +208,7 @@ RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty:: RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC:: call RustboroCity_DevonCorp_2F_EventScript_ReceivedAnorithFanfare msgbox gText_NicknameThisPokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC + goto_if_eq VAR_RESULT, NO, RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC call Common_EventScript_NameReceivedBoxMon goto RustboroCity_DevonCorp_2F_EventScript_TransferAnorithToPC end @@ -282,10 +259,8 @@ RustboroCity_DevonCorp_2F_EventScript_CancelFossilSelect:: RustboroCity_DevonCorp_2F_EventScript_MatchCallScientist:: lock faceplayer - compare VAR_FOSSIL_RESURRECTION_STATE, 1 - call_if_eq RustboroCity_DevonCorp_2F_EventScript_SetFossilReady - compare VAR_RUSTBORO_CITY_STATE, 6 - goto_if_ge RustboroCity_DevonCorp_2F_EventScript_WorkOnNext + call_if_eq VAR_FOSSIL_RESURRECTION_STATE, 1, RustboroCity_DevonCorp_2F_EventScript_SetFossilReady + goto_if_ge VAR_RUSTBORO_CITY_STATE, 6, RustboroCity_DevonCorp_2F_EventScript_WorkOnNext msgbox RustboroCity_DevonCorp_2F_Text_DevelopNewPokenavFeature, MSGBOX_DEFAULT release end diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc index d249cc51f648..ebf9044c54a1 100644 --- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc @@ -7,8 +7,7 @@ RustboroCity_DevonCorp_3F_MapScripts:: .byte 0 RustboroCity_DevonCorp_3F_OnTransition: - compare VAR_DEVON_CORP_3F_STATE, 0 - call_if_eq RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos + call_if_eq VAR_DEVON_CORP_3F_STATE, 0, RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos end RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos:: @@ -164,8 +163,7 @@ RustboroCity_DevonCorp_3F_EventScript_MrStone:: RustboroCity_DevonCorp_3F_EventScript_GiveExpShare:: msgbox RustboroCity_DevonCorp_3F_Text_ThankYouForDeliveringLetter, MSGBOX_DEFAULT giveitem ITEM_EXP_SHARE - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_EXP_SHARE msgbox RustboroCity_DevonCorp_3F_Text_ExplainExpShare, MSGBOX_DEFAULT closemessage diff --git a/data/maps/RustboroCity_Flat1_2F/scripts.inc b/data/maps/RustboroCity_Flat1_2F/scripts.inc index a9d24092f8c2..8e972182c131 100644 --- a/data/maps/RustboroCity_Flat1_2F/scripts.inc +++ b/data/maps/RustboroCity_Flat1_2F/scripts.inc @@ -7,36 +7,28 @@ RustboroCity_Flat1_2F_EventScript_WaldasDad:: lock faceplayer specialvar VAR_RESULT, TryBufferWaldaPhrase - compare VAR_RESULT, FALSE - goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldasDadFirstPhrase - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase + goto_if_eq VAR_RESULT, FALSE, RustboroCity_Flat1_2F_EventScript_WaldasDadFirstPhrase + goto_if_eq VAR_RESULT, TRUE, RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase RustboroCity_Flat1_2F_EventScript_GivePhrase:: special DoWaldaNamingScreen waitstate - compare VAR_0x8004, 1 - goto_if_eq RustboroCity_Flat1_2F_EventScript_CancelGivePhrase - compare VAR_0x8004, 2 - goto_if_eq RustboroCity_Flat1_2F_EventScript_CancelGiveFirstPhrase + goto_if_eq VAR_0x8004, 1, RustboroCity_Flat1_2F_EventScript_CancelGivePhrase + goto_if_eq VAR_0x8004, 2, RustboroCity_Flat1_2F_EventScript_CancelGiveFirstPhrase specialvar VAR_RESULT, TryGetWallpaperWithWaldaPhrase - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldaLikesPhrase - compare VAR_RESULT, FALSE - goto_if_eq RustboroCity_Flat1_2F_EventScript_WaldaDoesntLikePhrase + goto_if_eq VAR_RESULT, TRUE, RustboroCity_Flat1_2F_EventScript_WaldaLikesPhrase + goto_if_eq VAR_RESULT, FALSE, RustboroCity_Flat1_2F_EventScript_WaldaDoesntLikePhrase end RustboroCity_Flat1_2F_EventScript_WaldasDadFirstPhrase:: msgbox RustboroCity_Flat1_2F_Text_HelloDoYouKnowFunnyPhrase, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase + goto_if_eq VAR_RESULT, NO, RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase msgbox RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion, MSGBOX_DEFAULT goto RustboroCity_Flat1_2F_EventScript_GivePhrase RustboroCity_Flat1_2F_EventScript_WaldasDadNewPhrase:: msgbox RustboroCity_Flat1_2F_Text_BeenSayingXDoYouKnowBetterPhrase, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase + goto_if_eq VAR_RESULT, NO, RustboroCity_Flat1_2F_EventScript_DeclineGivePhrase msgbox RustboroCity_Flat1_2F_Text_WonderfulLetsHearSuggestion, MSGBOX_DEFAULT goto RustboroCity_Flat1_2F_EventScript_GivePhrase diff --git a/data/maps/RustboroCity_Flat2_2F/scripts.inc b/data/maps/RustboroCity_Flat2_2F/scripts.inc index 29edb7b586ce..97145ce8f242 100644 --- a/data/maps/RustboroCity_Flat2_2F/scripts.inc +++ b/data/maps/RustboroCity_Flat2_2F/scripts.inc @@ -11,8 +11,7 @@ RustboroCity_Flat2_2F_EventScript_NinjaBoy:: goto_if_set FLAG_RECEIVED_PREMIER_BALL_RUSTBORO, RustboroCity_Flat2_2F_EventScript_GavePremierBall msgbox RustboroCity_Flat2_2F_Text_MyDaddyMadeThisYouCanHaveIt, MSGBOX_DEFAULT giveitem ITEM_PREMIER_BALL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_PREMIER_BALL_RUSTBORO release end diff --git a/data/maps/RustboroCity_Gym/scripts.inc b/data/maps/RustboroCity_Gym/scripts.inc index 11354fac0a0b..e1596a9730e7 100644 --- a/data/maps/RustboroCity_Gym/scripts.inc +++ b/data/maps/RustboroCity_Gym/scripts.inc @@ -4,8 +4,7 @@ RustboroCity_Gym_MapScripts:: RustboroCity_Gym_EventScript_Roxanne:: trainerbattle_single TRAINER_ROXANNE_1, RustboroCity_Gym_Text_RoxanneIntro, RustboroCity_Gym_Text_RoxanneDefeat, RustboroCity_Gym_EventScript_RoxanneDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq RustboroCity_Gym_EventScript_RoxanneRematch + goto_if_eq VAR_RESULT, TRUE, RustboroCity_Gym_EventScript_RoxanneRematch goto_if_unset FLAG_RECEIVED_TM39, RustboroCity_Gym_EventScript_GiveRockTomb msgbox RustboroCity_Gym_Text_RoxannePostBattle, MSGBOX_DEFAULT release @@ -22,15 +21,13 @@ RustboroCity_Gym_EventScript_RoxanneDefeated:: addvar VAR_PETALBURG_GYM_STATE, 1 setvar VAR_0x8008, 1 call Common_EventScript_SetGymTrainers - compare VAR_PETALBURG_GYM_STATE, 6 - call_if_eq Common_EventScript_ReadyPetalburgGymForBattle + call_if_eq VAR_PETALBURG_GYM_STATE, 6, Common_EventScript_ReadyPetalburgGymForBattle goto RustboroCity_Gym_EventScript_GiveRockTomb end RustboroCity_Gym_EventScript_GiveRockTomb:: giveitem ITEM_TM39 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM39 msgbox RustboroCity_Gym_Text_ExplainRockTomb, MSGBOX_DEFAULT release diff --git a/data/maps/RustboroCity_House1/scripts.inc b/data/maps/RustboroCity_House1/scripts.inc index 20e93506bc2d..88a33786c0a6 100644 --- a/data/maps/RustboroCity_House1/scripts.inc +++ b/data/maps/RustboroCity_House1/scripts.inc @@ -10,18 +10,15 @@ RustboroCity_House1_EventScript_Trader:: specialvar VAR_RESULT, GetInGameTradeSpeciesInfo copyvar VAR_0x8009, VAR_RESULT msgbox RustboroCity_House1_Text_IllTradeIfYouWant, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq RustboroCity_House1_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, RustboroCity_House1_EventScript_DeclineTrade special ChoosePartyMon waitstate copyvar VAR_0x800A, VAR_0x8004 - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq RustboroCity_House1_EventScript_DeclineTrade + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, RustboroCity_House1_EventScript_DeclineTrade copyvar VAR_0x8005, VAR_0x800A specialvar VAR_RESULT, GetTradeSpecies copyvar VAR_0x800B, VAR_RESULT - compare VAR_RESULT, VAR_0x8009 - goto_if_ne RustboroCity_House1_EventScript_NotRequestedMon + goto_if_ne VAR_RESULT, VAR_0x8009, RustboroCity_House1_EventScript_NotRequestedMon copyvar VAR_0x8004, VAR_0x8008 copyvar VAR_0x8005, VAR_0x800A special CreateInGameTradePokemon diff --git a/data/maps/RustboroCity_PokemonSchool/scripts.inc b/data/maps/RustboroCity_PokemonSchool/scripts.inc index fcc374ddc79e..8a409d49b3fd 100644 --- a/data/maps/RustboroCity_PokemonSchool/scripts.inc +++ b/data/maps/RustboroCity_PokemonSchool/scripts.inc @@ -78,14 +78,11 @@ RustboroCity_PokemonSchool_EventScript_Teacher:: lock faceplayer goto_if_set FLAG_RECEIVED_QUICK_CLAW, RustboroCity_PokemonSchool_EventScript_GaveQuickClaw - compare VAR_FACING, DIR_EAST - call_if_eq RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsEast - compare VAR_FACING, DIR_WEST - call_if_eq RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsWest + call_if_eq VAR_FACING, DIR_EAST, RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsEast + call_if_eq VAR_FACING, DIR_WEST, RustboroCity_PokemonSchool_EventScript_TeacherCheckOnStudentsWest msgbox RustboroCity_PokemonSchool_Text_StudentsWhoDontStudyGetQuickClaw, MSGBOX_DEFAULT giveitem ITEM_QUICK_CLAW - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown waitmovement 0 diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc index 97a158f22d6c..e7eee5817ae8 100644 --- a/data/maps/RusturfTunnel/scripts.inc +++ b/data/maps/RusturfTunnel/scripts.inc @@ -15,8 +15,7 @@ RusturfTunnel_OnFrame: .2byte 0 RusturfTunnel_OnTransition: - compare VAR_RUSTURF_TUNNEL_STATE, 2 - call_if_eq RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos + call_if_eq VAR_RUSTURF_TUNNEL_STATE, 2, RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos end RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos:: @@ -56,36 +55,25 @@ RusturfTunnel_EventScript_AlreadySpokenTo:: RusturfTunnel_EventScript_ClearTunnelScene:: lockall - compare VAR_TEMP_1, 1 - call_if_eq RusturfTunnel_EventScript_FaceWandasBoyfriend1 - compare VAR_TEMP_1, 2 - call_if_eq RusturfTunnel_EventScript_FaceWandasBoyfriend2 - compare VAR_TEMP_1, 3 - call_if_eq RusturfTunnel_EventScript_FaceWandasBoyfriend3 + call_if_eq VAR_TEMP_1, 1, RusturfTunnel_EventScript_FaceWandasBoyfriend1 + call_if_eq VAR_TEMP_1, 2, RusturfTunnel_EventScript_FaceWandasBoyfriend2 + call_if_eq VAR_TEMP_1, 3, RusturfTunnel_EventScript_FaceWandasBoyfriend3 call RusturfTunnel_EventScript_WandasBoyfriendNotice msgbox RusturfTunnel_Text_YouShatteredBoulderTakeHM, MSGBOX_DEFAULT - compare VAR_TEMP_1, 2 - call_if_eq RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer - compare VAR_TEMP_1, 3 - call_if_eq RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer + call_if_eq VAR_TEMP_1, 2, RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer + call_if_eq VAR_TEMP_1, 3, RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer giveitem ITEM_HM04 setflag FLAG_RECEIVED_HM04 msgbox RusturfTunnel_Text_ExplainStrength, MSGBOX_DEFAULT closemessage - compare VAR_TEMP_1, 1 - call_if_eq RusturfTunnel_EventScript_BoyfriendApproachWanda1 - compare VAR_TEMP_1, 2 - call_if_eq RusturfTunnel_EventScript_BoyfriendApproachWanda2 - compare VAR_TEMP_1, 3 - call_if_eq RusturfTunnel_EventScript_BoyfriendApproachWanda3 + call_if_eq VAR_TEMP_1, 1, RusturfTunnel_EventScript_BoyfriendApproachWanda1 + call_if_eq VAR_TEMP_1, 2, RusturfTunnel_EventScript_BoyfriendApproachWanda2 + call_if_eq VAR_TEMP_1, 3, RusturfTunnel_EventScript_BoyfriendApproachWanda3 msgbox RusturfTunnel_Text_WandaReunion, MSGBOX_DEFAULT closemessage - compare VAR_TEMP_1, 1 - call_if_eq RusturfTunnel_EventScript_WandaAndBoyfriendExit1 - compare VAR_TEMP_1, 2 - call_if_eq RusturfTunnel_EventScript_WandaAndBoyfriendExit - compare VAR_TEMP_1, 3 - call_if_eq RusturfTunnel_EventScript_WandaAndBoyfriendExit + call_if_eq VAR_TEMP_1, 1, RusturfTunnel_EventScript_WandaAndBoyfriendExit1 + call_if_eq VAR_TEMP_1, 2, RusturfTunnel_EventScript_WandaAndBoyfriendExit + call_if_eq VAR_TEMP_1, 3, RusturfTunnel_EventScript_WandaAndBoyfriendExit call RusturfTunnel_EventScript_SetRusturfTunnelOpen releaseall end diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc index c99d3ad03360..b39b9a433630 100644 --- a/data/maps/SSTidalCorridor/scripts.inc +++ b/data/maps/SSTidalCorridor/scripts.inc @@ -45,10 +45,8 @@ SSTidalRooms_EventScript_ArrivedInLilycove:: return SSTidalCorridor_EventScript_ReachedStepCount:: - compare VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT - goto_if_eq SSTidalCorridor_EventScript_HalfwayToLilycove - compare VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT - goto_if_eq SSTidalCorridor_EventScript_ArrivedInSlateport + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT, SSTidalCorridor_EventScript_HalfwayToLilycove + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT, SSTidalCorridor_EventScript_ArrivedInSlateport end SSTidalCorridor_EventScript_HalfwayToLilycove:: @@ -117,10 +115,8 @@ SSTidalCorridor_EventScript_Cabin4Sign:: SSTidalCorridor_EventScript_ExitSailor:: lock faceplayer - compare VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_LILYCOVE - goto_if_eq SSTidalCorridor_EventScript_ExitLilycove - compare VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_SLATEPORT - goto_if_eq SSTidalCorridor_EventScript_ExitSlateport + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_LILYCOVE, SSTidalCorridor_EventScript_ExitLilycove + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_LAND_SLATEPORT, SSTidalCorridor_EventScript_ExitSlateport msgbox SSTidalCorridor_Text_CanRestInCabin2, MSGBOX_DEFAULT release end @@ -149,10 +145,8 @@ SSTidalCorridor_EventScript_HideSnatchGiver:: SSTidalCorridor_EventScript_Porthole:: lockall - compare VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT - goto_if_eq SSTidalCorridor_EventScript_LookThroughPorthole - compare VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT - goto_if_eq SSTidalCorridor_EventScript_LookThroughPorthole + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_DEPART_SLATEPORT, SSTidalCorridor_EventScript_LookThroughPorthole + goto_if_eq VAR_SS_TIDAL_STATE, SS_TIDAL_HALFWAY_SLATEPORT, SSTidalCorridor_EventScript_LookThroughPorthole msgbox SSTidalCorridor_Text_HorizonSpreadsBeyondPorthole, MSGBOX_DEFAULT releaseall end diff --git a/data/maps/SSTidalRooms/scripts.inc b/data/maps/SSTidalRooms/scripts.inc index c5cade489e2f..c3aa8ff8ab55 100644 --- a/data/maps/SSTidalRooms/scripts.inc +++ b/data/maps/SSTidalRooms/scripts.inc @@ -7,8 +7,7 @@ SSTidalRooms_EventScript_SnatchGiver:: goto_if_set FLAG_RECEIVED_TM49, SSTidalRooms_EventScript_ExplainSnatch msgbox SSTidalRooms_Text_NotSuspiciousTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM49 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM49 msgbox SSTidalRooms_Text_ExplainSnatch, MSGBOX_DEFAULT release diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc index c361d9f2eb91..6b4c774c2ba5 100644 --- a/data/maps/SafariZone_South/scripts.inc +++ b/data/maps/SafariZone_South/scripts.inc @@ -21,8 +21,7 @@ SafariZone_South_EventScript_EnterSafariZone:: end SafariZone_South_OnTransition: - compare VAR_SAFARI_ZONE_STATE, 2 - call_if_eq SafariZone_South_EventScript_SetExitAttendantAside + call_if_eq VAR_SAFARI_ZONE_STATE, 2, SafariZone_South_EventScript_SetExitAttendantAside end SafariZone_South_EventScript_SetExitAttendantAside:: @@ -55,8 +54,7 @@ SafariZone_South_EventScript_ExitAttendant:: faceplayer goto_if_unset FLAG_GOOD_LUCK_SAFARI_ZONE, SafariZone_South_EventScript_GoodLuck msgbox SafariZone_South_Text_StillHaveTimeExit, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SafariZone_South_EventScript_ExitEarly + goto_if_eq VAR_RESULT, YES, SafariZone_South_EventScript_ExitEarly msgbox SafariZone_South_Text_EnjoyTheRestOfYourAdventure, MSGBOX_DEFAULT release end diff --git a/data/maps/SeafloorCavern_Entrance/scripts.inc b/data/maps/SeafloorCavern_Entrance/scripts.inc index a999c4a152bf..eec69e6f8011 100644 --- a/data/maps/SeafloorCavern_Entrance/scripts.inc +++ b/data/maps/SeafloorCavern_Entrance/scripts.inc @@ -11,8 +11,7 @@ SeafloorCavern_Entrance_OnResume: SeafloorCavern_Entrance_EventScript_Grunt:: lockall - compare VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, 1 - goto_if_eq SeafloorCavern_Entrance_EventScript_GruntSpeechShort + 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 @@ -20,12 +19,9 @@ SeafloorCavern_Entrance_EventScript_Grunt:: applymovement LOCALID_GRUNT, Common_Movement_Delay48 waitmovement 0 delay 20 - compare VAR_FACING, DIR_WEST - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest - compare VAR_FACING, DIR_EAST - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast - compare VAR_FACING, DIR_NORTH - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth + call_if_eq VAR_FACING, DIR_WEST, SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest + call_if_eq VAR_FACING, DIR_EAST, SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast + 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 @@ -37,12 +33,9 @@ SeafloorCavern_Entrance_EventScript_Grunt:: end SeafloorCavern_Entrance_EventScript_GruntSpeechShort:: - compare VAR_FACING, DIR_WEST - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest - compare VAR_FACING, DIR_EAST - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast - compare VAR_FACING, DIR_NORTH - call_if_eq SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth + call_if_eq VAR_FACING, DIR_WEST, SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest + call_if_eq VAR_FACING, DIR_EAST, SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast + 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 diff --git a/data/maps/SealedChamber_InnerRoom/scripts.inc b/data/maps/SealedChamber_InnerRoom/scripts.inc index 7d240535ca24..036ab4fb8028 100644 --- a/data/maps/SealedChamber_InnerRoom/scripts.inc +++ b/data/maps/SealedChamber_InnerRoom/scripts.inc @@ -6,8 +6,7 @@ SealedChamber_InnerRoom_EventScript_BrailleBackWall:: braillemsgbox SealedChamber_InnerRoom_Braille_FirstWailordLastRelicanth goto_if_set FLAG_REGI_DOORS_OPENED, SealedChamber_InnerRoom_EventScript_NoEffect specialvar VAR_RESULT, CheckRelicanthWailord - compare VAR_RESULT, FALSE - goto_if_eq SealedChamber_InnerRoom_EventScript_NoEffect + goto_if_eq VAR_RESULT, FALSE, SealedChamber_InnerRoom_EventScript_NoEffect fadeoutbgm 0 playse SE_TRUCK_MOVE special DoSealedChamberShakingEffect_Long diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc index 74f24c8598af..905a9a77a797 100644 --- a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc @@ -21,25 +21,19 @@ ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: dotimebasedevents call_if_set FLAG_SYS_SHOAL_ITEM, ShoalCave_LowTideEntranceRoom_EventScript_ResetShoalItems checkitem ITEM_SHOAL_SALT, 4 - compare VAR_RESULT, FALSE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells + goto_if_eq VAR_RESULT, FALSE, ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells checkitem ITEM_SHOAL_SHELL, 4 - compare VAR_RESULT, FALSE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells + goto_if_eq VAR_RESULT, FALSE, ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells msgbox ShoalCave_LowTideEntranceRoom_Text_WouldYouLikeShellBell, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_DeclineShellBell + goto_if_eq VAR_RESULT, NO, ShoalCave_LowTideEntranceRoom_EventScript_DeclineShellBell checkitemspace ITEM_SHELL_BELL - compare VAR_RESULT, FALSE - call_if_eq ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed - compare VAR_RESULT, 2 - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell + call_if_eq VAR_RESULT, FALSE, ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed + goto_if_eq VAR_RESULT, 2, ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell msgbox ShoalCave_LowTideEntranceRoom_Text_MakeShellBellRightAway, MSGBOX_DEFAULT removeitem ITEM_SHOAL_SALT, 4 removeitem ITEM_SHOAL_SHELL, 4 giveitem ITEM_SHELL_BELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox ShoalCave_LowTideEntranceRoom_Text_ExplainShellBell, MSGBOX_DEFAULT setflag FLAG_TEMP_2 release @@ -48,14 +42,12 @@ ShoalCave_LowTideEntranceRoom_EventScript_ShellBellExpert:: @ If the bag is full, check if a slot will be freed when 4 Shoal Salt or Shells are given ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreed:: checkitem ITEM_SHOAL_SALT, 5 - compare VAR_RESULT, TRUE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells + goto_if_eq VAR_RESULT, TRUE, ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells return ShoalCave_LowTideEntranceRoom_EventScript_CheckSpaceWillBeFreedShells:: checkitem ITEM_SHOAL_SHELL, 5 - compare VAR_RESULT, TRUE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed + goto_if_eq VAR_RESULT, TRUE, ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed return ShoalCave_LowTideEntranceRoom_EventScript_NoSpaceWillBeFreed:: @@ -69,11 +61,9 @@ ShoalCave_LowTideEntranceRoom_EventScript_NoRoomForShellBell:: ShoalCave_LowTideEntranceRoom_EventScript_NotEnoughShoalSaltOrShells:: checkitem ITEM_SHOAL_SALT - compare VAR_RESULT, TRUE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell + goto_if_eq VAR_RESULT, TRUE, ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell checkitem ITEM_SHOAL_SHELL - compare VAR_RESULT, TRUE - goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell + goto_if_eq VAR_RESULT, TRUE, ShoalCave_LowTideEntranceRoom_EventScript_HasSomeShoalSaltOrShell msgbox ShoalCave_LowTideEntranceRoom_Text_AreYouPlanningOnGoingInThere, MSGBOX_DEFAULT release end diff --git a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc index 37b7beb041dc..17f6a7ca6ba6 100644 --- a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc @@ -63,8 +63,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell1:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 41, 20, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_1 @@ -80,8 +79,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell2:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 41, 10, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_2 @@ -92,8 +90,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell3:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 6, 9, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_3 @@ -104,8 +101,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalShell4:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalShell giveitem ITEM_SHOAL_SHELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 16, 13, METATILE_Cave_ShoalCave_BlueStone_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SHELL_4 @@ -116,8 +112,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt1:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 31, 8, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_1 @@ -133,8 +128,7 @@ ShoalCave_LowTideInnerRoom_EventScript_ShoalSalt2:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 14, 26, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_2 diff --git a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc index 15dcd326db69..a06d46cc2aa2 100644 --- a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc @@ -18,8 +18,7 @@ ShoalCave_LowTideLowerRoom_EventScript_ShoalSalt4:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 18, 2, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_4 @@ -37,8 +36,7 @@ ShoalCave_LowTideLowerRoom_EventScript_BlackBelt:: goto_if_set FLAG_RECEIVED_FOCUS_BAND, ShoalCave_LowTideLowerRoom_EventScript_ReceivedFocusBand msgbox ShoalCave_LowTideLowerRoom_Text_CanOvercomeColdWithFocus, MSGBOX_DEFAULT giveitem ITEM_FOCUS_BAND - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_FOCUS_BAND release end diff --git a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc index f1a5b030b396..655711e9c67f 100644 --- a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc +++ b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc @@ -18,8 +18,7 @@ ShoalCave_LowTideStairsRoom_EventScript_ShoalSalt3:: lockall goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_ReceivedShoalSalt giveitem ITEM_SHOAL_SALT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setmetatile 11, 11, METATILE_Cave_ShoalCave_DirtPile_Small, FALSE special DrawWholeMapView setflag FLAG_RECEIVED_SHOAL_SALT_3 diff --git a/data/maps/SkyPillar_1F/scripts.inc b/data/maps/SkyPillar_1F/scripts.inc index 3ef94b261c2b..b521b541c19f 100644 --- a/data/maps/SkyPillar_1F/scripts.inc +++ b/data/maps/SkyPillar_1F/scripts.inc @@ -3,8 +3,7 @@ SkyPillar_1F_MapScripts:: .byte 0 SkyPillar_1F_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_1F_EventScript_CleanFloor + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_1F_EventScript_CleanFloor end SkyPillar_1F_EventScript_CleanFloor:: diff --git a/data/maps/SkyPillar_2F/scripts.inc b/data/maps/SkyPillar_2F/scripts.inc index ba2fe889be8b..bad2488f0b49 100644 --- a/data/maps/SkyPillar_2F/scripts.inc +++ b/data/maps/SkyPillar_2F/scripts.inc @@ -5,8 +5,7 @@ SkyPillar_2F_MapScripts:: .byte 0 SkyPillar_2F_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_2F_EventScript_CleanFloor + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_2F_EventScript_CleanFloor copyvar VAR_ICE_STEP_COUNT, 1 end diff --git a/data/maps/SkyPillar_3F/scripts.inc b/data/maps/SkyPillar_3F/scripts.inc index 681137df0823..07ef3bb44900 100644 --- a/data/maps/SkyPillar_3F/scripts.inc +++ b/data/maps/SkyPillar_3F/scripts.inc @@ -3,8 +3,7 @@ SkyPillar_3F_MapScripts:: .byte 0 SkyPillar_3F_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_3F_EventScript_CleanFloor + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_3F_EventScript_CleanFloor end SkyPillar_3F_EventScript_CleanFloor:: diff --git a/data/maps/SkyPillar_4F/scripts.inc b/data/maps/SkyPillar_4F/scripts.inc index b3ff931ad45a..9e8f1e80ea49 100644 --- a/data/maps/SkyPillar_4F/scripts.inc +++ b/data/maps/SkyPillar_4F/scripts.inc @@ -5,8 +5,7 @@ SkyPillar_4F_MapScripts:: .byte 0 SkyPillar_4F_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_4F_EventScript_CleanFloor + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_4F_EventScript_CleanFloor copyvar VAR_ICE_STEP_COUNT, 1 end diff --git a/data/maps/SkyPillar_5F/scripts.inc b/data/maps/SkyPillar_5F/scripts.inc index 12fc72f4936a..47d02fb61b08 100644 --- a/data/maps/SkyPillar_5F/scripts.inc +++ b/data/maps/SkyPillar_5F/scripts.inc @@ -3,8 +3,7 @@ SkyPillar_5F_MapScripts:: .byte 0 SkyPillar_5F_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_5F_EventScript_CleanFloor + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_5F_EventScript_CleanFloor return SkyPillar_5F_EventScript_CleanFloor:: diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc index 89e71a1ce9d6..f25c82df65fc 100644 --- a/data/maps/SkyPillar_Outside/scripts.inc +++ b/data/maps/SkyPillar_Outside/scripts.inc @@ -7,10 +7,8 @@ SkyPillar_Outside_MapScripts:: .byte 0 SkyPillar_Outside_OnTransition: - compare VAR_SOOTOPOLIS_CITY_STATE, 3 - call_if_eq SkyPillar_Outside_EventScript_HideMapNamePopup - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_ge SkyPillar_Outside_EventScript_CheckSetAbnormalWeather + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 3, SkyPillar_Outside_EventScript_HideMapNamePopup + call_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, SkyPillar_Outside_EventScript_CheckSetAbnormalWeather end SkyPillar_Outside_EventScript_HideMapNamePopup:: diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index c59707e146a3..5c71bbe4bfe0 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -12,16 +12,13 @@ SkyPillar_Top_OnResume: SkyPillar_Top_EventScript_TryRemoveRayquaza:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject VAR_LAST_TALKED return SkyPillar_Top_OnTransition: - compare VAR_SKY_PILLAR_STATE, 2 - call_if_lt SkyPillar_Top_EventScript_SetCleanLayout - compare VAR_SKY_PILLAR_STATE, 2 - call_if_ge SkyPillar_Top_EventScript_TryShowRayquaza + call_if_lt VAR_SKY_PILLAR_STATE, 2, SkyPillar_Top_EventScript_SetCleanLayout + call_if_ge VAR_SKY_PILLAR_STATE, 2, SkyPillar_Top_EventScript_TryShowRayquaza end SkyPillar_Top_EventScript_SetCleanLayout:: @@ -57,12 +54,9 @@ SkyPillar_Top_EventScript_Rayquaza:: waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq SkyPillar_Top_EventScript_DefeatedRayquaza - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq SkyPillar_Top_EventScript_RanFromRayquaza - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq SkyPillar_Top_EventScript_RanFromRayquaza + goto_if_eq VAR_RESULT, B_OUTCOME_WON, SkyPillar_Top_EventScript_DefeatedRayquaza + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, SkyPillar_Top_EventScript_RanFromRayquaza + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, SkyPillar_Top_EventScript_RanFromRayquaza setflag FLAG_DEFEATED_RAYQUAZA releaseall end diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc index 2e7ed6cbec21..653f405c4512 100644 --- a/data/maps/SlateportCity/scripts.inc +++ b/data/maps/SlateportCity/scripts.inc @@ -29,10 +29,8 @@ SlateportCity_MapScripts:: SlateportCity_OnTransition: setvar VAR_SLATEPORT_MUSEUM_1F_STATE, 0 call SlateportCity_EventScript_EnterSlateport - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_MovePeopleForSternInterview - compare VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 1 - call_if_eq SlateportCity_EventScript_SetReadyForScottScene + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_MovePeopleForSternInterview + call_if_eq VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 1, SlateportCity_EventScript_SetReadyForScottScene end SlateportCity_EventScript_EnterSlateport:: @@ -61,8 +59,7 @@ SlateportCity_EventScript_MovePeopleForSternInterview:: SlateportCity_EventScript_SetReadyForScottScene:: setflag FLAG_HIDE_MAP_NAME_POPUP getplayerxy VAR_0x8004, VAR_0x8005 - compare VAR_0x8004, 30 - goto_if_eq SlateportCity_EventScript_MoveScottLeft + goto_if_eq VAR_0x8004, 30, SlateportCity_EventScript_MoveScottLeft setobjectxyperm LOCALID_SCOTT, 23, 27 setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_RIGHT return @@ -167,11 +164,9 @@ SlateportCity_EventScript_EffortRibbonWoman:: bufferleadmonspeciesname STR_VAR_1 msgbox SlateportCity_Text_OhYourPokemon, MSGBOX_DEFAULT specialvar VAR_RESULT, LeadMonHasEffortRibbon - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_EventScript_MonHasEffortRibbon + call_if_eq VAR_RESULT, TRUE, SlateportCity_EventScript_MonHasEffortRibbon specialvar VAR_RESULT, Special_AreLeadMonEVsMaxedOut - compare VAR_RESULT, FALSE - call_if_eq SlateportCity_EventScript_MonEVsNotMaxed + call_if_eq VAR_RESULT, FALSE, SlateportCity_EventScript_MonEVsNotMaxed msgbox SlateportCity_Text_PleaseGiveItThisEffortRibbon, MSGBOX_DEFAULT playfanfare MUS_OBTAIN_ITEM message SlateportCity_Text_ReceivedEffortRibbon @@ -194,8 +189,7 @@ SlateportCity_EventScript_MonHasEffortRibbon:: SlateportCity_EventScript_Cook:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_CookSternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_CookSternInterview msgbox SlateportCity_Text_SeaweedFullOfLife, MSGBOX_DEFAULT release end @@ -208,8 +202,7 @@ SlateportCity_EventScript_CookSternInterview:: SlateportCity_EventScript_OldWoman:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_OldWomanSternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_OldWomanSternInterview msgbox SlateportCity_Text_HowTownIsBornAndGrows, MSGBOX_DEFAULT release end @@ -222,8 +215,7 @@ SlateportCity_EventScript_OldWomanSternInterview:: SlateportCity_EventScript_Girl:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_GirlSternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_GirlSternInterview goto_if_set FLAG_RECEIVED_SECRET_POWER, SlateportCity_EventScript_GirlSecretBase msgbox SlateportCity_Text_SlateportWonderfulPlace, MSGBOX_DEFAULT release @@ -242,8 +234,7 @@ SlateportCity_EventScript_GirlSecretBase:: SlateportCity_EventScript_RichBoy:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_RichBoySternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_RichBoySternInterview msgbox SlateportCity_Text_GoingToCompeteInBattleTent, MSGBOX_DEFAULT release end @@ -254,8 +245,7 @@ SlateportCity_EventScript_RichBoySternInterview:: end SlateportCity_EventScript_FatMan:: - compare VAR_SLATEPORT_CITY_STATE, 1 - goto_if_eq SlateportCity_EventScript_FatManSternInterview + goto_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_FatManSternInterview msgbox SlateportCity_Text_BushedHikingFromMauville, MSGBOX_NPC end @@ -266,8 +256,7 @@ SlateportCity_EventScript_FatManSternInterview:: SlateportCity_EventScript_Man1:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_Man1SternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_Man1SternInterview msgbox SlateportCity_Text_EveryoneCallsHimCaptStern, MSGBOX_DEFAULT release end @@ -347,8 +336,7 @@ SlateportCity_EventScript_NameRatersHouseSign:: SlateportCity_EventScript_Maniac:: lock faceplayer - compare VAR_SLATEPORT_CITY_STATE, 1 - call_if_eq SlateportCity_EventScript_ManiacSternInterview + call_if_eq VAR_SLATEPORT_CITY_STATE, 1, SlateportCity_EventScript_ManiacSternInterview msgbox SlateportCity_Text_GetNameRaterToHelpYou, MSGBOX_DEFAULT release end @@ -760,8 +748,7 @@ SlateportCity_EventScript_BerryPowderClerk:: SlateportCity_EventScript_ReceivedPowderJar:: setvar VAR_0x8004, 1 specialvar VAR_RESULT, HasEnoughBerryPowder - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_EventScript_ExplainBerryPowder + goto_if_eq VAR_RESULT, FALSE, SlateportCity_EventScript_ExplainBerryPowder msgbox SlateportCity_Text_BroughtMeSomeBerryPowder, MSGBOX_DEFAULT special DisplayBerryPowderVendorMenu goto SlateportCity_EventScript_ChooseBerryPowderItem @@ -879,21 +866,17 @@ SlateportCity_EventScript_CancelPowderItemSelect:: SlateportCity_EventScript_TryBuyBerryPowderItem:: msgbox SlateportCity_Text_ExchangeBerryPowderForItem, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SlateportCity_EventScript_ChooseBerryPowderItem + goto_if_eq VAR_RESULT, NO, SlateportCity_EventScript_ChooseBerryPowderItem copyvar VAR_0x8004, VAR_0x8009 specialvar VAR_RESULT, HasEnoughBerryPowder - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_EventScript_NotEnoughBerryPowder + goto_if_eq VAR_RESULT, FALSE, SlateportCity_EventScript_NotEnoughBerryPowder giveitem VAR_0x8008 - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_EventScript_NoRoomForBerryPowderItem + goto_if_eq VAR_RESULT, FALSE, SlateportCity_EventScript_NoRoomForBerryPowderItem copyvar VAR_0x8004, VAR_0x8009 special TakeBerryPowder special PrintPlayerBerryPowderAmount msgbox SlateportCity_Text_FineBerryPowderTradeSomethingElse, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_EventScript_ChooseBerryPowderItem + goto_if_eq VAR_RESULT, YES, SlateportCity_EventScript_ChooseBerryPowderItem msgbox SlateportCity_Text_WhenYouGetMoreBringItToMe, MSGBOX_DEFAULT special RemoveBerryPowderVendorMenu release diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc index 285c567ec301..53514bb5e95d 100644 --- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc +++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc @@ -16,10 +16,8 @@ SlateportCity_BattleTentBattleRoom_OnTransition: SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc index 309b709d1af5..75156f68f041 100644 --- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc +++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc @@ -13,8 +13,7 @@ SlateportCity_BattleTentCorridor_OnWarp: SlateportCity_BattleTentCorridor_EventScript_SetUpObjects:: setvar VAR_TEMP_1, 1 - compare VAR_0x8006, 1 - goto_if_ne SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth + goto_if_ne VAR_0x8006, 1, SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth setobjectxy LOCALID_ATTENDANT, 2, 2 turnobject LOCALID_ATTENDANT, DIR_SOUTH SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth:: @@ -26,14 +25,12 @@ SlateportCity_BattleTentCorridor_OnFrame: .2byte 0 SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: - compare VAR_0x8006, 1 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle + 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 waitmovement 0 - compare VAR_0x8006, 2 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge + goto_if_eq VAR_0x8006, 2, SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge slateporttent_generaterentalmons slateporttent_generateopponentmons msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection, MSGBOX_DEFAULT @@ -65,10 +62,8 @@ SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle:: special HealPlayerParty SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 1, SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, SlateportCity_BattleTentCorridor_EventScript_AskSwapMon @@ -103,8 +98,7 @@ SlateportCity_BattleTentCorridor_EventScript_SwapMons:: fadescreen FADE_TO_BLACK slateporttent_swapmons waitstate - compare VAR_RESULT, 1 - goto_if_eq SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom + goto_if_eq VAR_RESULT, 1, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT goto SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc index 7ed9420b0e88..0d3fae875f68 100644 --- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc +++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc @@ -93,8 +93,7 @@ SlateportCity_BattleTentLobby_EventScript_Attendant:: lock faceplayer slateporttent_getprize - compare VAR_RESULT, ITEM_NONE - goto_if_ne SlateportCity_BattleTentLobby_EventScript_GivePrize + goto_if_ne VAR_RESULT, ITEM_NONE, SlateportCity_BattleTentLobby_EventScript_GivePrize special SavePlayerParty msgbox SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @@ -127,8 +126,7 @@ SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed setvar VAR_0x8006, 0 SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: msgbox SlateportCity_BattleTentLobby_Text_StepThisWay, MSGBOX_DEFAULT @@ -204,8 +202,7 @@ SlateportCity_BattleTentLobby_EventScript_TormentGiver:: goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_ReceivedTorment msgbox SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe, MSGBOX_DEFAULT giveitem ITEM_TM41 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM41 msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT release diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc index ff1315923e21..b2a71f2b7c3c 100644 --- a/data/maps/SlateportCity_Harbor/scripts.inc +++ b/data/maps/SlateportCity_Harbor/scripts.inc @@ -11,8 +11,7 @@ SlateportCity_Harbor_MapScripts:: SlateportCity_Harbor_OnTransition: setescapewarp MAP_SLATEPORT_CITY, 28, 13 setvar VAR_TEMP_1, 0 - compare VAR_SLATEPORT_HARBOR_STATE, 1 - call_if_eq SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene + call_if_eq VAR_SLATEPORT_HARBOR_STATE, 1, SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene call_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_ShowSSTidal end @@ -71,14 +70,10 @@ SlateportCity_Harbor_EventScript_AquaEscapeScene:: setvar VAR_SLATEPORT_HARBOR_STATE, 2 setflag FLAG_MET_TEAM_AQUA_HARBOR setflag FLAG_HIDE_LILYCOVE_MOTEL_SCOTT - compare VAR_0x8008, 0 - call_if_eq SlateportCity_Harbor_EventScript_SternApproachPlayer0 - compare VAR_0x8008, 1 - call_if_eq SlateportCity_Harbor_EventScript_SternApproachPlayer1 - compare VAR_0x8008, 2 - call_if_eq SlateportCity_Harbor_EventScript_SternApproachPlayer - compare VAR_0x8008, 3 - call_if_eq SlateportCity_Harbor_EventScript_SternApproachPlayer + call_if_eq VAR_0x8008, 0, SlateportCity_Harbor_EventScript_SternApproachPlayer0 + call_if_eq VAR_0x8008, 1, SlateportCity_Harbor_EventScript_SternApproachPlayer1 + call_if_eq VAR_0x8008, 2, SlateportCity_Harbor_EventScript_SternApproachPlayer + call_if_eq VAR_0x8008, 3, SlateportCity_Harbor_EventScript_SternApproachPlayer msgbox SlateportCity_Harbor_Text_CaptSternWhyStealMySubmarine, MSGBOX_DEFAULT closemessage setflag FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_1_BLOCKING_ENTRANCE @@ -206,8 +201,7 @@ SlateportCity_Harbor_EventScript_NoTicket:: SlateportCity_Harbor_EventScript_Lilycove:: msgbox SlateportCity_Harbor_Text_LilycoveItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination + goto_if_eq VAR_RESULT, NO, SlateportCity_Harbor_EventScript_ChooseNewDestination setvar VAR_SS_TIDAL_STATE, SS_TIDAL_BOARD_SLATEPORT call SlateportCity_Harbor_EventScript_BoardFerry warp MAP_SS_TIDAL_CORRIDOR, 1, 10 @@ -217,8 +211,7 @@ SlateportCity_Harbor_EventScript_Lilycove:: SlateportCity_Harbor_EventScript_BattleFrontier:: msgbox SlateportCity_Harbor_Text_BattleFrontierItIs, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SlateportCity_Harbor_EventScript_ChooseNewDestination + goto_if_eq VAR_RESULT, NO, SlateportCity_Harbor_EventScript_ChooseNewDestination call SlateportCity_Harbor_EventScript_BoardFerry warp MAP_BATTLE_FRONTIER_OUTSIDE_WEST, 19, 67 waitstate @@ -238,10 +231,8 @@ SlateportCity_Harbor_EventScript_BoardFerry:: waitmovement 0 delay 30 hideobjectat VAR_LAST_TALKED, MAP_SLATEPORT_CITY_HARBOR - compare VAR_FACING, DIR_NORTH - call_if_eq SlateportCity_Harbor_EventScript_BoardFerryNorth - compare VAR_FACING, DIR_EAST - call_if_eq SlateportCity_Harbor_EventScript_BoardFerryEast + 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 @@ -279,8 +270,7 @@ SlateportCity_Harbor_EventScript_Sailor:: setvar VAR_0x8004, 0 call_if_set FLAG_DEFEATED_KYOGRE, SlateportCity_Harbor_EventScript_CountDefeatedLegendary call_if_set FLAG_DEFEATED_GROUDON, SlateportCity_Harbor_EventScript_CountDefeatedLegendary - compare VAR_0x8004, 2 @ Defeated both - goto_if_eq SlateportCity_Harbor_EventScript_SailorNoAbnormalWeather + goto_if_eq VAR_0x8004, 2, SlateportCity_Harbor_EventScript_SailorNoAbnormalWeather @ Defeated both msgbox SlateportCity_Harbor_Text_AbnormalWeather, MSGBOX_DEFAULT release end @@ -304,8 +294,7 @@ SlateportCity_Harbor_EventScript_CaptStern:: goto_if_set FLAG_BADGE07_GET, SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment goto_if_set FLAG_EVIL_TEAM_ESCAPED_STERN_SPOKE, SlateportCity_Harbor_EventScript_NeedDive goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, SlateportCity_Harbor_EventScript_TeamAquaLeftNeedDive - compare VAR_SLATEPORT_HARBOR_STATE, 2 - goto_if_eq SlateportCity_Harbor_EventScript_WhyStealSubmarine + goto_if_eq VAR_SLATEPORT_HARBOR_STATE, 2, SlateportCity_Harbor_EventScript_WhyStealSubmarine msgbox SlateportCity_Harbor_Text_SameThugsTriedToRobAtMuseum, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection @@ -330,11 +319,9 @@ SlateportCity_Harbor_EventScript_NeedDive:: end SlateportCity_Harbor_EventScript_CaptSternFerryOrScannerComment:: - compare VAR_TEMP_1, 1 - goto_if_eq SlateportCity_Harbor_EventScript_TradedScanner + goto_if_eq VAR_TEMP_1, 1, SlateportCity_Harbor_EventScript_TradedScanner checkitem ITEM_SCANNER - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_Harbor_EventScript_AskToTradeScanner + goto_if_eq VAR_RESULT, TRUE, SlateportCity_Harbor_EventScript_AskToTradeScanner goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_FerryFinished msgbox SlateportCity_Harbor_Text_WontBeLongBeforeWeFinishFerry, MSGBOX_DEFAULT release @@ -362,11 +349,9 @@ SlateportCity_Harbor_EventScript_ChooseScannerTrade:: SlateportCity_Harbor_EventScript_DeepSeaTooth:: msgbox SlateportCity_Harbor_Text_TradeForDeepSeaTooth, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SlateportCity_Harbor_EventScript_ChooseDifferentTrade + goto_if_eq VAR_RESULT, NO, SlateportCity_Harbor_EventScript_ChooseDifferentTrade giveitem ITEM_DEEP_SEA_TOOTH - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull removeitem ITEM_SCANNER msgbox SlateportCity_Harbor_Text_HandedScannerToStern, MSGBOX_DEFAULT setflag FLAG_EXCHANGED_SCANNER @@ -375,11 +360,9 @@ SlateportCity_Harbor_EventScript_DeepSeaTooth:: SlateportCity_Harbor_EventScript_DeepSeaScale:: msgbox SlateportCity_Harbor_Text_TradeForDeepSeaScale, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SlateportCity_Harbor_EventScript_ChooseDifferentTrade + goto_if_eq VAR_RESULT, NO, SlateportCity_Harbor_EventScript_ChooseDifferentTrade giveitem ITEM_DEEP_SEA_SCALE - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull removeitem ITEM_SCANNER msgbox SlateportCity_Harbor_Text_HandedScannerToStern, MSGBOX_DEFAULT setflag FLAG_EXCHANGED_SCANNER diff --git a/data/maps/SlateportCity_NameRatersHouse/scripts.inc b/data/maps/SlateportCity_NameRatersHouse/scripts.inc index 3242050e77b1..34d788a6aac2 100644 --- a/data/maps/SlateportCity_NameRatersHouse/scripts.inc +++ b/data/maps/SlateportCity_NameRatersHouse/scripts.inc @@ -5,20 +5,16 @@ SlateportCity_NameRatersHouse_EventScript_NameRater:: lock faceplayer msgbox SlateportCity_NameRatersHouse_Text_PleasedToRateMonNickname, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate - compare VAR_RESULT, NO - goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate + goto_if_eq VAR_RESULT, YES, SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate + goto_if_eq VAR_RESULT, NO, SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end SlateportCity_NameRatersHouse_EventScript_ChooseMonToRate:: msgbox SlateportCity_NameRatersHouse_Text_CritiqueWhichMonNickname, MSGBOX_DEFAULT special ChoosePartyMon waitstate - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_ne SlateportCity_NameRatersHouse_EventScript_RateMonNickname - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate + goto_if_ne VAR_0x8004, PARTY_NOTHING_CHOSEN, SlateportCity_NameRatersHouse_EventScript_RateMonNickname + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end SlateportCity_NameRatersHouse_EventScript_DeclineNameRate:: @@ -28,21 +24,16 @@ SlateportCity_NameRatersHouse_EventScript_DeclineNameRate:: SlateportCity_NameRatersHouse_EventScript_RateMonNickname:: specialvar VAR_RESULT, ScriptGetPartyMonSpecies - compare VAR_RESULT, SPECIES_EGG - goto_if_eq SlateportCity_NameRatersHouse_EventScript_CantRateEgg + goto_if_eq VAR_RESULT, SPECIES_EGG, SlateportCity_NameRatersHouse_EventScript_CantRateEgg special BufferMonNickname special IsMonOTIDNotPlayers - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT + goto_if_eq VAR_RESULT, TRUE, SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT specialvar VAR_RESULT, MonOTNameNotPlayer special BufferMonNickname - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT + goto_if_eq VAR_RESULT, TRUE, SlateportCity_NameRatersHouse_EventScript_PlayerNotMonsOT msgbox SlateportCity_NameRatersHouse_Text_FineNameSuggestBetterOne, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_NameRatersHouse_EventScript_ChangeNickname - compare VAR_RESULT, NO - goto_if_eq SlateportCity_NameRatersHouse_EventScript_DeclineNameRate + goto_if_eq VAR_RESULT, YES, SlateportCity_NameRatersHouse_EventScript_ChangeNickname + goto_if_eq VAR_RESULT, NO, SlateportCity_NameRatersHouse_EventScript_DeclineNameRate end SlateportCity_NameRatersHouse_EventScript_CantRateEgg:: @@ -60,8 +51,7 @@ SlateportCity_NameRatersHouse_EventScript_ChangeNickname:: call Common_EventScript_NameReceivedPartyMon specialvar VAR_RESULT, TryPutNameRaterShowOnTheAir special BufferMonNickname - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_NameRatersHouse_EventScript_NewNameDifferent + goto_if_eq VAR_RESULT, TRUE, SlateportCity_NameRatersHouse_EventScript_NewNameDifferent msgbox SlateportCity_NameRatersHouse_Text_NameNoDifferentYetSuperior, MSGBOX_DEFAULT release end diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc index 901b05e2a51d..96892f948d99 100644 --- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc @@ -24,8 +24,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeRight:: SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: showmoneybox 0, 0 msgbox SlateportCity_OceanicMuseum_1F_Text_WouldYouLikeToEnter, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee + goto_if_eq VAR_RESULT, YES, SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee closemessage hidemoneybox applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter @@ -35,8 +34,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee:: SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee:: checkmoney 50 - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney + goto_if_eq VAR_RESULT, FALSE, SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney playse SE_SHOP removemoney 50 updatemoneybox @@ -154,19 +152,14 @@ SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt:: waitmovement 0 msgbox SlateportCity_OceanicMuseum_1F_Text_RememberMeTakeThis, MSGBOX_DEFAULT giveitem ITEM_TM46 - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_NoRoomForThief + goto_if_eq VAR_RESULT, 0, SlateportCity_OceanicMuseum_1F_EventScript_NoRoomForThief setflag FLAG_RECEIVED_TM46 msgbox SlateportCity_OceanicMuseum_1F_Text_HopeINeverSeeYouAgain, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth - compare VAR_FACING, DIR_SOUTH - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitSouth - compare VAR_FACING, DIR_WEST - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast - compare VAR_FACING, DIR_EAST - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast + goto_if_eq VAR_FACING, DIR_NORTH, SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth + goto_if_eq VAR_FACING, DIR_SOUTH, SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitSouth + goto_if_eq VAR_FACING, DIR_WEST, SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast + goto_if_eq VAR_FACING, DIR_EAST, SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast end SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth:: diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc index b993c9fab1fa..59131fd7ee2a 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc +++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc @@ -21,22 +21,17 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach waitmovement 0 - compare VAR_FACING, DIR_SOUTH - call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts - compare VAR_FACING, DIR_EAST - call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts + call_if_eq VAR_FACING, DIR_SOUTH, SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts + call_if_eq VAR_FACING, DIR_EAST, SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts msgbox SlateportCity_OceanicMuseum_2F_Text_WellTakeThoseParts, MSGBOX_DEFAULT - compare VAR_FACING, DIR_EAST - call_if_ne SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts + call_if_ne VAR_FACING, DIR_EAST, SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts 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 waitmovement 0 - compare VAR_FACING, DIR_SOUTH - call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntSouth - compare VAR_FACING, DIR_WEST - call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest + 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 @@ -86,8 +81,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: special HealPlayerParty removeobject LOCALID_CAPT_STERN setflag FLAG_HIDE_ROUTE_110_TEAM_AQUA - compare VAR_REGISTER_BIRCH_STATE, 0 - call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch + call_if_eq VAR_REGISTER_BIRCH_STATE, 0, SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch setflag FLAG_DELIVERED_DEVON_GOODS clearflag FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index 4599548b536a..b97e29a02865 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -26,10 +26,8 @@ SlateportCity_PokemonFanClub_EventScript_ChairmanTryAssessPokemon:: call_if_set FLAG_RECEIVED_PINK_SCARF, SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf call_if_set FLAG_RECEIVED_BLUE_SCARF, SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf call_if_set FLAG_RECEIVED_RED_SCARF, SlateportCity_PokemonFanClub_EventScript_CountReceivedScarf - compare VAR_TEMP_2, CONTEST_CATEGORIES_COUNT - call_if_eq SlateportCity_PokemonFanClub_EventScript_ReceivedAllScarves - compare VAR_SLATEPORT_FAN_CLUB_STATE, 2 - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoMoreScarves + call_if_eq VAR_TEMP_2, CONTEST_CATEGORIES_COUNT, SlateportCity_PokemonFanClub_EventScript_ReceivedAllScarves + goto_if_eq VAR_SLATEPORT_FAN_CLUB_STATE, 2, SlateportCity_PokemonFanClub_EventScript_NoMoreScarves msgbox SlateportCity_PokemonFanClub_Text_HowIsYourPokemonGrowing, MSGBOX_DEFAULT goto SlateportCity_PokemonFanClub_EventScript_ChairmanAssessLeadMon end @@ -73,8 +71,7 @@ SlateportCity_PokemonFanClub_EventScript_NoHighConditions:: SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: checkitemspace ITEM_RED_SCARF - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT setflag FLAG_RECEIVED_RED_SCARF giveitem ITEM_RED_SCARF @@ -84,8 +81,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveRedScarf:: SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: checkitemspace ITEM_BLUE_SCARF - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT setflag FLAG_RECEIVED_BLUE_SCARF giveitem ITEM_BLUE_SCARF @@ -95,8 +91,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveBlueScarf:: SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: checkitemspace ITEM_PINK_SCARF - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT setflag FLAG_RECEIVED_PINK_SCARF giveitem ITEM_PINK_SCARF @@ -106,8 +101,7 @@ SlateportCity_PokemonFanClub_EventScript_GivePinkScarf:: SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: checkitemspace ITEM_GREEN_SCARF - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT setflag FLAG_RECEIVED_GREEN_SCARF giveitem ITEM_GREEN_SCARF @@ -117,8 +111,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveGreenScarf:: SlateportCity_PokemonFanClub_EventScript_GiveYellowScarf:: checkitemspace ITEM_YELLOW_SCARF - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf msgbox SlateportCity_PokemonFanClub_Text_MonMostImpressiveGiveItThis, MSGBOX_DEFAULT setflag FLAG_RECEIVED_YELLOW_SCARF giveitem ITEM_YELLOW_SCARF @@ -133,8 +126,7 @@ SlateportCity_PokemonFanClub_EventScript_NoRoomForScarf:: SlateportCity_PokemonFanClub_EventScript_CheckMonCool:: specialvar VAR_RESULT, CheckLeadMonCool - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonCool + call_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_SetMonCool return SlateportCity_PokemonFanClub_EventScript_SetMonCool:: @@ -143,8 +135,7 @@ SlateportCity_PokemonFanClub_EventScript_SetMonCool:: SlateportCity_PokemonFanClub_EventScript_CheckMonBeauty:: specialvar VAR_RESULT, CheckLeadMonBeauty - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonBeauty + call_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_SetMonBeauty return SlateportCity_PokemonFanClub_EventScript_SetMonBeauty:: @@ -153,8 +144,7 @@ SlateportCity_PokemonFanClub_EventScript_SetMonBeauty:: SlateportCity_PokemonFanClub_EventScript_CheckMonCute:: specialvar VAR_RESULT, CheckLeadMonCute - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonCute + call_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_SetMonCute return SlateportCity_PokemonFanClub_EventScript_SetMonCute:: @@ -163,8 +153,7 @@ SlateportCity_PokemonFanClub_EventScript_SetMonCute:: SlateportCity_PokemonFanClub_EventScript_CheckMonSmart:: specialvar VAR_RESULT, CheckLeadMonSmart - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonSmart + call_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_SetMonSmart return SlateportCity_PokemonFanClub_EventScript_SetMonSmart:: @@ -173,8 +162,7 @@ SlateportCity_PokemonFanClub_EventScript_SetMonSmart:: SlateportCity_PokemonFanClub_EventScript_CheckMonTough:: specialvar VAR_RESULT, CheckLeadMonTough - compare VAR_RESULT, TRUE - call_if_eq SlateportCity_PokemonFanClub_EventScript_SetMonTough + call_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_SetMonTough return SlateportCity_PokemonFanClub_EventScript_SetMonTough:: @@ -204,8 +192,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT specialvar VAR_RESULT, GetLeadMonFriendshipScore - compare VAR_RESULT, 4 - goto_if_ge SlateportCity_PokemonFanClub_EventScript_GiveSootheBell + goto_if_ge VAR_RESULT, 4, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell release end @@ -217,8 +204,7 @@ SlateportCity_PokemonFanClub_EventScript_GiveSootheBell:: waitmovement 0 msgbox SlateportCity_PokemonFanClub_Text_PokemonAdoresYou, MSGBOX_DEFAULT giveitem ITEM_SOOTHE_BELL - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SOOTHE_BELL release end diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index 92a97ac4c4c3..69f74880ecaa 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -51,32 +51,20 @@ SootopolisCity_EventScript_LockGymDoor:: SootopolisCity_OnTransition: setflag FLAG_VISITED_SOOTOPOLIS_CITY - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - call_if_eq SootopolisCity_EventScript_HideMapNamePopup - compare VAR_SKY_PILLAR_STATE, 1 - call_if_eq SootopolisCity_EventScript_HideMapNamePopup + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_HideMapNamePopup + call_if_eq VAR_SKY_PILLAR_STATE, 1, SootopolisCity_EventScript_HideMapNamePopup call SootopolisCity_EventScript_SetWeather call SootopolisCity_EventScript_SetLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - call_if_eq SootopolisCity_EventScript_SetBattleSpectators - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - call_if_eq SootopolisCity_EventScript_SetBattleSpectators - compare VAR_SOOTOPOLIS_CITY_STATE, 3 - call_if_eq SootopolisCity_EventScript_SetBattleSpectators - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_eq SootopolisCity_EventScript_SetBattleSpectators - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - call_if_eq SootopolisCity_EventScript_SetBattleSpectators - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - call_if_eq SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos - compare VAR_SOOTOPOLIS_CITY_STATE, 3 - call_if_eq SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - call_if_eq SootopolisCity_EventScript_SetExitCaveOfOriginObjPos - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - call_if_eq SootopolisCity_EventScript_SetOutsideGymObjPos - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - call_if_eq SootopolisCity_EventScript_SetExpertBlockCaveEntrance + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_SetBattleSpectators + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_SetBattleSpectators + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 3, SootopolisCity_EventScript_SetBattleSpectators + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 4, SootopolisCity_EventScript_SetBattleSpectators + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_SetBattleSpectators + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 3, SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 4, SootopolisCity_EventScript_SetExitCaveOfOriginObjPos + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_SetOutsideGymObjPos + call_if_eq VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_SetExpertBlockCaveEntrance end SootopolisCity_EventScript_HideMapNamePopup:: @@ -95,20 +83,13 @@ SootopolisCity_EventScript_SetBattleSpectators:: return SootopolisCity_EventScript_SetLayout:: - compare VAR_SOOTOPOLIS_CITY_STATE, 0 - goto_if_eq SootopolisCity_EventScript_SetNormalLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_SetNormalLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - goto_if_eq SootopolisCity_EventScript_SetLegendariesLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - goto_if_eq SootopolisCity_EventScript_SetLegendariesLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 3 - goto_if_eq SootopolisCity_EventScript_SetLegendariesLayout - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - goto_if_eq SootopolisCity_EventScript_SetLegendariesLayout - compare VAR_SKY_PILLAR_STATE, 1 - goto_if_le SootopolisCity_EventScript_SetLegendariesLayout + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 0, SootopolisCity_EventScript_SetNormalLayout + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_SetNormalLayout + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_SetLegendariesLayout + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_SetLegendariesLayout + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 3, SootopolisCity_EventScript_SetLegendariesLayout + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 4, SootopolisCity_EventScript_SetLegendariesLayout + goto_if_le VAR_SKY_PILLAR_STATE, 1, SootopolisCity_EventScript_SetLegendariesLayout return SootopolisCity_EventScript_SetNormalLayout:: @@ -119,16 +100,11 @@ SootopolisCity_EventScript_SetLegendariesLayout:: return SootopolisCity_EventScript_SetWeather:: - compare VAR_SOOTOPOLIS_CITY_STATE, 0 - goto_if_eq SootopolisCity_EventScript_SetNormalWeather - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_SetNormalWeather - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - goto_if_eq SootopolisCity_EventScript_SetDownpour - compare VAR_SKY_PILLAR_STATE, 1 - goto_if_eq SootopolisCity_EventScript_SetDownpour - compare VAR_SKY_PILLAR_STATE, 1 - goto_if_le Common_EventScript_SetAbnormalWeather + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 0, SootopolisCity_EventScript_SetNormalWeather + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_SetNormalWeather + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_SetDownpour + goto_if_eq VAR_SKY_PILLAR_STATE, 1, SootopolisCity_EventScript_SetDownpour + goto_if_le VAR_SKY_PILLAR_STATE, 1, Common_EventScript_SetAbnormalWeather return SootopolisCity_EventScript_SetNormalWeather:: @@ -158,12 +134,9 @@ SootopolisCity_EventScript_SetOutsideGymObjPos:: setobjectxyperm LOCALID_STEVEN, 29, 33 setobjectxyperm LOCALID_MAXIE, 33, 35 setobjectxyperm LOCALID_ARCHIE, 34, 35 - compare VAR_SOOTOPOLIS_WALLACE_STATE, 0 - call_if_eq SootopolisCity_EventScript_SetWallaceMiddle - compare VAR_SOOTOPOLIS_WALLACE_STATE, 1 - call_if_eq SootopolisCity_EventScript_SetWallaceRight - compare VAR_SOOTOPOLIS_WALLACE_STATE, 2 - call_if_eq SootopolisCity_EventScript_SetWallaceLeft + 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:: @@ -190,10 +163,8 @@ SootopolisCity_OnWarp: .2byte 0 SootopolisCity_EventScript_PlayerFaceLegendaries:: - compare VAR_SKY_PILLAR_STATE, 1 - call_if_eq SootopolisCity_EventScript_PlayerFaceLegendaries1 - compare VAR_SKY_PILLAR_STATE, 2 - call_if_eq SootopolisCity_EventScript_PlayerFaceLegendaries2 + call_if_eq VAR_SKY_PILLAR_STATE, 1, SootopolisCity_EventScript_PlayerFaceLegendaries1 + call_if_eq VAR_SKY_PILLAR_STATE, 2, SootopolisCity_EventScript_PlayerFaceLegendaries2 end SootopolisCity_EventScript_PlayerFaceLegendaries1:: @@ -218,10 +189,8 @@ SootopolisCity_OnFrame: SootopolisCity_EventScript_StartLegendariesScene:: lockall special StorePlayerCoordsInVars - compare VAR_0x8004, 43 - goto_if_ne SootopolisCity_EventScript_LegendariesSceneFromDive - compare VAR_0x8005, 32 - goto_if_ne SootopolisCity_EventScript_LegendariesSceneFromDive + goto_if_ne VAR_0x8004, 43, SootopolisCity_EventScript_LegendariesSceneFromDive + goto_if_ne VAR_0x8005, 32, SootopolisCity_EventScript_LegendariesSceneFromDive goto SootopolisCity_EventScript_LegendariesSceneFromPokeCenter end @@ -509,10 +478,8 @@ SootopolisCity_Movement_GroudonIdle: SootopolisCity_EventScript_StartRayquazaScene:: lockall special StorePlayerCoordsInVars - compare VAR_0x8004, 43 - goto_if_ne SootopolisCity_EventScript_RayquazaSceneFromDive - compare VAR_0x8005, 32 - goto_if_ne SootopolisCity_EventScript_RayquazaSceneFromDive + goto_if_ne VAR_0x8004, 43, SootopolisCity_EventScript_RayquazaSceneFromDive + goto_if_ne VAR_0x8005, 32, SootopolisCity_EventScript_RayquazaSceneFromDive goto SootopolisCity_EventScript_RayquazaSceneFromPokeCenter end @@ -717,12 +684,9 @@ SootopolisCity_Movement_UnusedPanBack: SootopolisCity_EventScript_CaveOfOriginExpert:: lock faceplayer - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_ExpertPostLegendaries - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_ExpertLegendaries - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - goto_if_ge SootopolisCity_EventScript_ExpertLeadToCave + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_ExpertPostLegendaries + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_ExpertLegendaries + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_ExpertLeadToCave msgbox SootopolisCity_Text_CaveOfOriginPleaseLeave, MSGBOX_DEFAULT release end @@ -745,12 +709,9 @@ SootopolisCity_EventScript_ExpertLegendaries:: SootopolisCity_EventScript_Kiri:: lock faceplayer - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - goto_if_le SootopolisCity_EventScript_KiriGiveBerry - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_KiriGiveBerry - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_KiriRayquaza + goto_if_le VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_KiriGiveBerry + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_KiriGiveBerry + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_KiriRayquaza msgbox SootopolisCity_Text_BigPokemonFighting, MSGBOX_DEFAULT closemessage applymovement LOCALID_KIRI, Common_Movement_FaceOriginalDirection @@ -774,37 +735,31 @@ SootopolisCity_EventScript_KiriGiveBerry:: addvar VAR_RESULT, NUM_KIRI_BERRIES_SKIPPED addvar VAR_RESULT, FIRST_BERRY_INDEX giveitem VAR_RESULT - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_DAILY_SOOTOPOLIS_RECEIVED_BERRY msgbox SootopolisCity_Text_GiveYouThisBerryToo, MSGBOX_DEFAULT random 2 - compare VAR_RESULT, 0 - goto_if_eq SootopolisCity_EventScript_GiveFigyBerry - compare VAR_RESULT, 1 - goto_if_eq SootopolisCity_EventScript_GiveIapapaBerry + goto_if_eq VAR_RESULT, 0, SootopolisCity_EventScript_GiveFigyBerry + goto_if_eq VAR_RESULT, 1, SootopolisCity_EventScript_GiveIapapaBerry end SootopolisCity_EventScript_GiveFigyBerry:: giveitem ITEM_FIGY_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox SootopolisCity_Text_WhatKindOfWishInYourName, MSGBOX_DEFAULT release end SootopolisCity_EventScript_GiveIapapaBerry:: giveitem ITEM_IAPAPA_BERRY - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox SootopolisCity_Text_WhatKindOfWishInYourName, MSGBOX_DEFAULT release end SootopolisCity_EventScript_KiriReceivedBerry:: msgbox SootopolisCity_Text_LikeSeasonBornIn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SootopolisCity_EventScript_KiriLikeSeasonBornIn + goto_if_eq VAR_RESULT, YES, SootopolisCity_EventScript_KiriLikeSeasonBornIn msgbox SootopolisCity_Text_OhDoesntMatter, MSGBOX_DEFAULT release end @@ -818,8 +773,7 @@ SootopolisCity_EventScript_Woman2:: lockall applymovement LOCALID_WOMAN_2, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_Woman2Rayquaza + 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 @@ -835,8 +789,7 @@ SootopolisCity_EventScript_Woman2Rayquaza:: SootopolisCity_EventScript_Man:: lock faceplayer - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_ManPostLegendaries + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_ManPostLegendaries msgbox SootopolisCity_Text_NoOrdinaryTourist, MSGBOX_DEFAULT release end @@ -849,12 +802,9 @@ SootopolisCity_EventScript_ManPostLegendaries:: SootopolisCity_EventScript_Woman1:: lock faceplayer - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_Woman1PostLegendaries - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_Woman1Rayquaza - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - goto_if_ge SootopolisCity_EventScript_Woman1Legendaries + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_Woman1PostLegendaries + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_Woman1Rayquaza + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_Woman1Legendaries msgbox SootopolisCity_Text_SootopolisSkyBeautiful, MSGBOX_DEFAULT release end @@ -881,12 +831,9 @@ SootopolisCity_EventScript_NinjaBoy:: lockall applymovement LOCALID_NINJA_BOY, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_NinjaBoyRayquaza - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_NinjaBoyNormal - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - goto_if_le SootopolisCity_EventScript_NinjaBoyNormal + 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 @@ -908,13 +855,10 @@ SootopolisCity_EventScript_Boy1:: lockall applymovement LOCALID_BOY_1, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_Boy1Rayquaza + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_Boy1Rayquaza goto_if_set FLAG_SYS_GAME_CLEAR, SootopolisCity_EventScript_Boy1GameClear - compare VAR_SOOTOPOLIS_CITY_STATE, 6 - goto_if_ge SootopolisCity_EventScript_Boy1Normal - compare VAR_SOOTOPOLIS_CITY_STATE, 1 - goto_if_le SootopolisCity_EventScript_Boy1Normal + goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_Boy1Normal + 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 @@ -954,12 +898,9 @@ SootopolisCity_EventScript_Steven:: applymovement LOCALID_STEVEN, Common_Movement_FacePlayer waitmovement 0 call_if_unset FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN, SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin - compare VAR_SOOTOPOLIS_CITY_STATE, 2 - goto_if_eq SootopolisCity_EventScript_StevenHelpWallace - compare VAR_SOOTOPOLIS_CITY_STATE, 3 - goto_if_eq SootopolisCity_EventScript_StevenHelpedWallace - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - goto_if_eq SootopolisCity_EventScript_StevenHelpedWallace + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_StevenHelpWallace + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 3, SootopolisCity_EventScript_StevenHelpedWallace + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 4, SootopolisCity_EventScript_StevenHelpedWallace goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_StevenMaxieArchieLeft msgbox SootopolisCity_Text_SoThatsRayquaza, MSGBOX_DEFAULT releaseall @@ -983,10 +924,8 @@ SootopolisCity_EventScript_StevenHelpedWallace:: SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin:: msgbox SootopolisCity_Text_InvolvedWithCrisisComeWithMe, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_WEST - call_if_eq SootopolisCity_EventScript_StartWalkToCaveOfOriginWest - compare VAR_FACING, DIR_NORTH - call_if_eq SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth + call_if_eq VAR_FACING, DIR_WEST, SootopolisCity_EventScript_StartWalkToCaveOfOriginWest + call_if_eq VAR_FACING, DIR_NORTH, SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth msgbox SootopolisCity_Text_DoesThisMakeYourFearPokemon, MSGBOX_DEFAULT closemessage applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenWalkToCaveOfOrigin @@ -1287,8 +1226,7 @@ SootopolisCity_EventScript_Boy2:: lockall applymovement LOCALID_BOY_2, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_Boy2Rayquaza + 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 @@ -1304,8 +1242,7 @@ SootopolisCity_EventScript_Boy2Rayquaza:: SootopolisCity_EventScript_BlackBelt:: lockall - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_BlackBeltRayquaza + 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 @@ -1328,8 +1265,7 @@ SootopolisCity_EventScript_Girl:: lockall applymovement LOCALID_GIRL, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_GirlRayquaza + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_GirlRayquaza msgbox SootopolisCity_Text_SootopolisWillBeWrecked, MSGBOX_DEFAULT closemessage applymovement LOCALID_GIRL, Common_Movement_FaceOriginalDirection @@ -1347,8 +1283,7 @@ SootopolisCity_EventScript_Maniac:: lockall applymovement LOCALID_MANIAC, Common_Movement_FacePlayer waitmovement 0 - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_ManiacRayquaza + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_ManiacRayquaza msgbox SootopolisCity_Text_SeeingLegendWithOwnEyes, MSGBOX_DEFAULT closemessage applymovement LOCALID_MANIAC, Common_Movement_FaceOriginalDirection @@ -1364,8 +1299,7 @@ SootopolisCity_EventScript_ManiacRayquaza:: SootopolisCity_EventScript_Wallace:: lock faceplayer - compare VAR_SOOTOPOLIS_CITY_STATE, 4 - goto_if_eq SootopolisCity_EventScript_GoToSkyPillar + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 4, SootopolisCity_EventScript_GoToSkyPillar goto_if_set FLAG_RECEIVED_HM07, SootopolisCity_EventScript_GoToGym goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_GiveWaterfall msgbox SootopolisCity_Text_AquaMagmaDidntMeanHarm, MSGBOX_DEFAULT @@ -1378,12 +1312,9 @@ SootopolisCity_EventScript_GiveWaterfall:: setflag FLAG_RECEIVED_HM07 msgbox SootopolisCity_Text_ExplainWaterfallGoToGym, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq SootopolisCity_EventScript_WallaceMoveFromGym - compare VAR_FACING, DIR_EAST - call_if_eq SootopolisCity_EventScript_WallaceMoveFromGym - compare VAR_FACING, DIR_WEST - call_if_eq SootopolisCity_EventScript_WallaceMoveFromGymWest + call_if_eq VAR_FACING, DIR_NORTH, SootopolisCity_EventScript_WallaceMoveFromGym + call_if_eq VAR_FACING, DIR_EAST, SootopolisCity_EventScript_WallaceMoveFromGym + call_if_eq VAR_FACING, DIR_WEST, SootopolisCity_EventScript_WallaceMoveFromGymWest release end @@ -1423,8 +1354,7 @@ SootopolisCity_Movement_WallaceMoveFromGymWest: SootopolisCity_EventScript_Maxie:: lockall - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_MaxieRayquaza + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_MaxieRayquaza msgbox SootopolisCity_Text_GroudonPleaseStop, MSGBOX_DEFAULT closemessage releaseall @@ -1439,8 +1369,7 @@ SootopolisCity_EventScript_MaxieRayquaza:: SootopolisCity_EventScript_Archie:: lockall - compare VAR_SOOTOPOLIS_CITY_STATE, 5 - goto_if_eq SootopolisCity_EventScript_ArchieRayquaza + goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_ArchieRayquaza msgbox SootopolisCity_Text_KyogreCalmDown, MSGBOX_DEFAULT closemessage releaseall diff --git a/data/maps/SootopolisCity_Gym_1F/scripts.inc b/data/maps/SootopolisCity_Gym_1F/scripts.inc index 4a21dcdcdbd4..7f739935b133 100644 --- a/data/maps/SootopolisCity_Gym_1F/scripts.inc +++ b/data/maps/SootopolisCity_Gym_1F/scripts.inc @@ -19,12 +19,9 @@ SootopolisCity_Gym_1F_OnLoad: end SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: - compare VAR_ICE_STEP_COUNT, 8 - goto_if_lt SootopolisCity_Gym_1F_EventScript_StopCheckingStairs @ All stairs ice - compare VAR_ICE_STEP_COUNT, 28 - goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstStairs - compare VAR_ICE_STEP_COUNT, 67 - goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs + goto_if_lt VAR_ICE_STEP_COUNT, 8, SootopolisCity_Gym_1F_EventScript_StopCheckingStairs @ All stairs ice + goto_if_lt VAR_ICE_STEP_COUNT, 28, SootopolisCity_Gym_1F_EventScript_OpenFirstStairs + goto_if_lt VAR_ICE_STEP_COUNT, 67, SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs setmetatile 8, 4, METATILE_SootopolisGym_Stairs, FALSE setmetatile 8, 5, METATILE_SootopolisGym_Stairs, FALSE SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs:: @@ -85,8 +82,7 @@ SootopolisCity_Gym_1F_Movement_FallThroughIce: SootopolisCity_Gym_1F_EventScript_Juan:: trainerbattle_single TRAINER_JUAN_1, SootopolisCity_Gym_1F_Text_JuanIntro, SootopolisCity_Gym_1F_Text_JuanDefeat, SootopolisCity_Gym_1F_EventScript_JuanDefeated, NO_MUSIC specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq SootopolisCity_Gym_1F_EventScript_JuanRematch + goto_if_eq VAR_RESULT, TRUE, SootopolisCity_Gym_1F_EventScript_JuanRematch goto_if_unset FLAG_RECEIVED_TM03, SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2 goto_if_unset FLAG_BADGE06_GET, SootopolisCity_Gym_1F_EventScript_GoGetFortreeBadge msgbox SootopolisCity_Gym_1F_Text_JuanPostBattle, MSGBOX_DEFAULT @@ -121,16 +117,14 @@ SootopolisCity_Gym_1F_EventScript_JuanDefeated:: SootopolisCity_Gym_1F_EventScript_GiveWaterPulse:: giveitem ITEM_TM03 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_BagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox SootopolisCity_Gym_1F_Text_ExplainWaterPulse, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM03 return SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2:: giveitem ITEM_TM03 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox SootopolisCity_Gym_1F_Text_ExplainWaterPulse, MSGBOX_DEFAULT setflag FLAG_RECEIVED_TM03 release diff --git a/data/maps/SootopolisCity_House1/scripts.inc b/data/maps/SootopolisCity_House1/scripts.inc index 65df8587f380..40f22a9c1f3f 100644 --- a/data/maps/SootopolisCity_House1/scripts.inc +++ b/data/maps/SootopolisCity_House1/scripts.inc @@ -7,8 +7,7 @@ SootopolisCity_House1_EventScript_BrickBreakBlackBelt:: goto_if_set FLAG_RECEIVED_TM31, SootopolisCity_House1_EventScript_ReceivedBrickBreak msgbox SootopolisCity_House1_Text_DevelopedThisTM, MSGBOX_DEFAULT giveitem ITEM_TM31 - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM31 msgbox SootopolisCity_House1_Text_ExplainBrickBreak, MSGBOX_DEFAULT release diff --git a/data/maps/SootopolisCity_House2/scripts.inc b/data/maps/SootopolisCity_House2/scripts.inc index a9c2ed255db4..68cf96a9064f 100644 --- a/data/maps/SootopolisCity_House2/scripts.inc +++ b/data/maps/SootopolisCity_House2/scripts.inc @@ -5,10 +5,8 @@ SootopolisCity_House2_EventScript_ExpertF:: lock faceplayer msgbox SootopolisCity_House2_Text_DidYouKnowAboutMtPyreOrbs, MSGBOX_YESNO - compare VAR_RESULT, YES - call_if_eq SootopolisCity_House2_EventScript_KnowAboutOrbs - compare VAR_RESULT, NO - call_if_eq SootopolisCity_House2_EventScript_DontKnowAboutOrbs + call_if_eq VAR_RESULT, YES, SootopolisCity_House2_EventScript_KnowAboutOrbs + call_if_eq VAR_RESULT, NO, SootopolisCity_House2_EventScript_DontKnowAboutOrbs release end diff --git a/data/maps/SootopolisCity_House3/scripts.inc b/data/maps/SootopolisCity_House3/scripts.inc index 02546968b556..621738c4f103 100644 --- a/data/maps/SootopolisCity_House3/scripts.inc +++ b/data/maps/SootopolisCity_House3/scripts.inc @@ -5,8 +5,7 @@ SootopolisCity_House3_EventScript_Woman:: lock faceplayer msgbox SootopolisCity_House3_Text_JuanHasManyFansDoYou, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SootopolisCity_House3_EventScript_HaveFans + goto_if_eq VAR_RESULT, YES, SootopolisCity_House3_EventScript_HaveFans msgbox SootopolisCity_House3_Text_LonesomeTryWorkingHarder, MSGBOX_DEFAULT release end diff --git a/data/maps/SootopolisCity_House6/scripts.inc b/data/maps/SootopolisCity_House6/scripts.inc index fd570fc68350..35f7acc7b50e 100644 --- a/data/maps/SootopolisCity_House6/scripts.inc +++ b/data/maps/SootopolisCity_House6/scripts.inc @@ -6,12 +6,10 @@ SootopolisCity_House6_EventScript_Woman:: faceplayer goto_if_set FLAG_RECEIVED_WAILMER_DOLL, SootopolisCity_House6_EventScript_ReceivedWailmerDoll msgbox SootopolisCity_House6_Text_FirstGuestInWhileTakeDoll, MSGBOX_YESNO - compare VAR_RESULT, NO - call_if_eq SootopolisCity_House6_EventScript_DeclineWailmerDoll + call_if_eq VAR_RESULT, NO, SootopolisCity_House6_EventScript_DeclineWailmerDoll msgbox SootopolisCity_House6_Text_TakeGoodCareOfIt, MSGBOX_DEFAULT givedecoration DECOR_WAILMER_DOLL - compare VAR_RESULT, FALSE - goto_if_eq SootopolisCity_House6_EventScript_NoRoomForWailmerDoll + goto_if_eq VAR_RESULT, FALSE, SootopolisCity_House6_EventScript_NoRoomForWailmerDoll setflag FLAG_RECEIVED_WAILMER_DOLL release end diff --git a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc index 5620bb3e4612..52bdf3aceeeb 100644 --- a/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc +++ b/data/maps/SootopolisCity_LotadAndSeedotHouse/scripts.inc @@ -9,15 +9,11 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_SeedotBrother:: special ChoosePartyMon waitstate copyvar VAR_RESULT, VAR_0x8004 - compare VAR_RESULT, PARTY_NOTHING_CHOSEN - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowSeedot + goto_if_eq VAR_RESULT, PARTY_NOTHING_CHOSEN, SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowSeedot special CompareSeedotSize - compare VAR_RESULT, 1 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_NotSeedot - compare VAR_RESULT, 2 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_SmallSeedot - compare VAR_RESULT, 3 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot + goto_if_eq VAR_RESULT, 1, SootopolisCity_LotadAndSeedotHouse_EventScript_NotSeedot + goto_if_eq VAR_RESULT, 2, SootopolisCity_LotadAndSeedotHouse_EventScript_SmallSeedot + goto_if_eq VAR_RESULT, 3, SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot release end @@ -39,8 +35,7 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_SmallSeedot:: SootopolisCity_LotadAndSeedotHouse_EventScript_BigSeedot:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_GoshMightBeBiggerThanLotad, MSGBOX_DEFAULT giveitem ITEM_ELIXIR - compare VAR_RESULT, FALSE - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir1 + goto_if_eq VAR_RESULT, FALSE, SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir1 closemessage release end @@ -58,15 +53,11 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_LotadBrother:: special ChoosePartyMon waitstate copyvar VAR_RESULT, VAR_0x8004 - compare VAR_RESULT, PARTY_NOTHING_CHOSEN - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowLotad + goto_if_eq VAR_RESULT, PARTY_NOTHING_CHOSEN, SootopolisCity_LotadAndSeedotHouse_EventScript_CancelShowLotad special CompareLotadSize - compare VAR_RESULT, 1 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_NotLotad - compare VAR_RESULT, 2 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_SmallLotad - compare VAR_RESULT, 3 - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad + goto_if_eq VAR_RESULT, 1, SootopolisCity_LotadAndSeedotHouse_EventScript_NotLotad + goto_if_eq VAR_RESULT, 2, SootopolisCity_LotadAndSeedotHouse_EventScript_SmallLotad + goto_if_eq VAR_RESULT, 3, SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad release end @@ -88,8 +79,7 @@ SootopolisCity_LotadAndSeedotHouse_EventScript_SmallLotad:: SootopolisCity_LotadAndSeedotHouse_EventScript_BigLotad:: msgbox SootopolisCity_LotadAndSeedotHouse_Text_WowMightBeBiggerThanSeedot, MSGBOX_DEFAULT giveitem ITEM_ELIXIR - compare VAR_RESULT, FALSE - goto_if_eq SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir2 + goto_if_eq VAR_RESULT, FALSE, SootopolisCity_LotadAndSeedotHouse_EventScript_NoRoomForElixir2 closemessage release end diff --git a/data/maps/SootopolisCity_Mart/scripts.inc b/data/maps/SootopolisCity_Mart/scripts.inc index 0975abd2b032..3cade5fbc428 100644 --- a/data/maps/SootopolisCity_Mart/scripts.inc +++ b/data/maps/SootopolisCity_Mart/scripts.inc @@ -29,8 +29,7 @@ SootopolisCity_Mart_Pokemart: SootopolisCity_Mart_EventScript_FatMan:: lock faceplayer - compare VAR_SKY_PILLAR_STATE, 2 - goto_if_ge SootopolisCity_Mart_EventScript_FatManNoLegendaries + goto_if_ge VAR_SKY_PILLAR_STATE, 2, SootopolisCity_Mart_EventScript_FatManNoLegendaries goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_Mart_EventScript_FatManNoLegendaries msgbox SootopolisCity_Mart_Text_TooScaryOutside, MSGBOX_DEFAULT release @@ -44,8 +43,7 @@ SootopolisCity_Mart_EventScript_FatManNoLegendaries:: SootopolisCity_Mart_EventScript_Gentleman:: lock faceplayer - compare VAR_SKY_PILLAR_STATE, 2 - goto_if_ge SootopolisCity_Mart_EventScript_GentlemanNoLegendaries + goto_if_ge VAR_SKY_PILLAR_STATE, 2, SootopolisCity_Mart_EventScript_GentlemanNoLegendaries goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_Mart_EventScript_GentlemanNoLegendaries msgbox SootopolisCity_Mart_Text_DidSomethingAwaken, MSGBOX_DEFAULT release diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc index 70dbc98aa525..374adbfc66ad 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc @@ -7,10 +7,8 @@ SootopolisCity_MysteryEventsHouse_1F_MapScripts:: SootopolisCity_MysteryEventsHouse_1F_OnTransition: frontier_checkvisittrainer - compare VAR_RESULT, 0 - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout - compare VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 0 - call_if_ne SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor + call_if_eq VAR_RESULT, 0, SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout + call_if_ne VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 0, SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor end SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout:: @@ -40,12 +38,9 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle:: copyobjectxytoperm LOCALID_OLD_MAN applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 - compare VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 1 - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleWonComment - compare VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 2 - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleLostComment - compare VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 3 - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleTiedComment + 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 + call_if_eq VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 3, SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleTiedComment special LoadPlayerParty setvar VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 0 releaseall @@ -76,10 +71,8 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_OldMan:: lock faceplayer frontier_checkvisittrainer - compare VAR_RESULT, 1 - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_InvalidVisitingTrainer - compare VAR_TEMP_1, 1 - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting + goto_if_eq VAR_RESULT, 1, SootopolisCity_MysteryEventsHouse_1F_EventScript_InvalidVisitingTrainer + goto_if_eq VAR_TEMP_1, 1, SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting msgbox SootopolisCity_MysteryEventsHouse_1F_Text_OnlyAmusementWatchingBattles, MSGBOX_DEFAULT release end @@ -93,28 +86,21 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_TrainerVisiting:: special SavePlayerParty special BufferEReaderTrainerName msgbox SootopolisCity_MysteryEventsHouse_1F_Text_ChallengeVisitingTrainer, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle + goto_if_eq VAR_RESULT, NO, SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle call SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty - compare VAR_RESULT, 0 - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle + goto_if_eq VAR_RESULT, 0, SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle msgbox SootopolisCity_MysteryEventsHouse_1F_Text_SaveProgressBeforeBattle, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle + goto_if_eq VAR_RESULT, NO, SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle special LoadPlayerParty call Common_EventScript_SaveGame - compare VAR_RESULT, FALSE - goto_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle + goto_if_eq VAR_RESULT, FALSE, SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle special SavePlayerParty special ReducePlayerPartyToSelectedMons msgbox SootopolisCity_MysteryEventsHouse_1F_Text_HopeToSeeGoodMatch, MSGBOX_DEFAULT closemessage - compare VAR_FACING, DIR_NORTH - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementNorth - compare VAR_FACING, DIR_EAST - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast - compare VAR_FACING, DIR_WEST - call_if_eq SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest + call_if_eq VAR_FACING, DIR_NORTH, SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementNorth + call_if_eq VAR_FACING, DIR_EAST, SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast + call_if_eq VAR_FACING, DIR_WEST, SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest warp MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F, 3, 1 waitstate release diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc index 93f008925189..533eb7cfa51a 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc +++ b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc @@ -22,12 +22,9 @@ SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer:: setvar VAR_0x8005, 0 special DoSpecialTrainerBattle waitstate - compare VAR_RESULT, B_OUTCOME_DREW - call_if_eq SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleTie - compare VAR_RESULT, B_OUTCOME_WON - call_if_eq SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleWon - compare VAR_RESULT, B_OUTCOME_LOST - call_if_eq SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleLost + call_if_eq VAR_RESULT, B_OUTCOME_DREW, SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleTie + call_if_eq VAR_RESULT, B_OUTCOME_WON, SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleWon + 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 diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc index 9e017861b75d..e1e13b35c830 100644 --- a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc +++ b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc @@ -20,8 +20,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_Nurse:: SootopolisCity_PokemonCenter_1F_EventScript_Gentleman:: lock faceplayer - compare VAR_SKY_PILLAR_STATE, 2 - goto_if_ge SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries + goto_if_ge VAR_SKY_PILLAR_STATE, 2, SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries msgbox SootopolisCity_PokemonCenter_1F_Text_EveryoneTakenRefuge, MSGBOX_DEFAULT release @@ -35,8 +34,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_GentlemanNoLegendaries:: SootopolisCity_PokemonCenter_1F_EventScript_Woman:: lock faceplayer - compare VAR_SKY_PILLAR_STATE, 2 - goto_if_ge SootopolisCity_PokemonCenter_1F_EventScript_WomanNoLegendaries + goto_if_ge VAR_SKY_PILLAR_STATE, 2, SootopolisCity_PokemonCenter_1F_EventScript_WomanNoLegendaries goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_PokemonCenter_1F_EventScript_WomanNoLegendaries msgbox SootopolisCity_PokemonCenter_1F_Text_ArentPokemonOurFriends, MSGBOX_DEFAULT release diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc index e40c7819ed9a..b393413fe33f 100644 --- a/data/maps/SouthernIsland_Exterior/scripts.inc +++ b/data/maps/SouthernIsland_Exterior/scripts.inc @@ -13,8 +13,7 @@ SouthernIsland_Exterior_EventScript_Sailor:: lock faceplayer msgbox EventTicket_Text_SouthernIslandSailBack, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SouthernIsland_Exterior_EventScript_AsYouLike + goto_if_eq VAR_RESULT, NO, SouthernIsland_Exterior_EventScript_AsYouLike msgbox EventTicket_Text_SailHome, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index 4ce90e249fbb..c46cefefc641 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -11,16 +11,13 @@ SouthernIsland_Interior_OnResume: SouthernIsland_Interior_EventScript_TryRemoveLati:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_LATI return SouthernIsland_Interior_OnTransition: - compare VAR_ROAMER_POKEMON, 0 - call_if_eq SouthernIsland_Interior_EventScript_SetUpLatios - compare VAR_ROAMER_POKEMON, 0 - call_if_ne SouthernIsland_Interior_EventScript_SetUpLatias + call_if_eq VAR_ROAMER_POKEMON, 0, SouthernIsland_Interior_EventScript_SetUpLatios + call_if_ne VAR_ROAMER_POKEMON, 0, SouthernIsland_Interior_EventScript_SetUpLatias call SouthernIsland_Interior_EventScript_SetUpPlayerGfx end @@ -36,10 +33,8 @@ SouthernIsland_Interior_EventScript_SetUpLatias:: SouthernIsland_Interior_EventScript_SetUpPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq SouthernIsland_Interior_EventScript_SetBrendanGfx - compare VAR_RESULT, FEMALE - goto_if_eq SouthernIsland_Interior_EventScript_SetMayGfx + goto_if_eq VAR_RESULT, MALE, SouthernIsland_Interior_EventScript_SetBrendanGfx + goto_if_eq VAR_RESULT, FEMALE, SouthernIsland_Interior_EventScript_SetMayGfx end SouthernIsland_Interior_EventScript_SetBrendanGfx:: @@ -79,21 +74,16 @@ SouthernIsland_Interior_EventScript_Lati:: delay 50 special RemoveCameraObject setvar VAR_LAST_TALKED, LOCALID_LATI - compare VAR_ROAMER_POKEMON, 0 - call_if_eq SouthernIsland_Interior_EventScript_SetLatiosBattleVars - compare VAR_ROAMER_POKEMON, 0 - call_if_ne SouthernIsland_Interior_EventScript_SetLatiasBattleVars + 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 special BattleSetup_StartLatiBattle waitstate clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq SouthernIsland_Interior_EventScript_LatiDefeated - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq SouthernIsland_Interior_EventScript_RanFromLati - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq SouthernIsland_Interior_EventScript_RanFromLati + goto_if_eq VAR_RESULT, B_OUTCOME_WON, SouthernIsland_Interior_EventScript_LatiDefeated + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, SouthernIsland_Interior_EventScript_RanFromLati + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, SouthernIsland_Interior_EventScript_RanFromLati setflag FLAG_CAUGHT_LATIAS_OR_LATIOS releaseall end diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc index 0036f33b5ad5..5f0051becf6d 100644 --- a/data/maps/TerraCave_End/scripts.inc +++ b/data/maps/TerraCave_End/scripts.inc @@ -11,8 +11,7 @@ TerraCave_End_OnResume: TerraCave_End_EventScript_TryRemoveGroudon:: specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_CAUGHT - goto_if_ne Common_EventScript_NopReturn + goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn removeobject LOCALID_GROUDON return @@ -43,12 +42,9 @@ TerraCave_End_EventScript_Groudon:: clearflag FLAG_SYS_CTRL_OBJ_DELETE setvar VAR_TEMP_1, 0 specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq TerraCave_End_EventScript_DefeatedGroudon - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq TerraCave_End_EventScript_RanFromGroudon - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq TerraCave_End_EventScript_RanFromGroudon + goto_if_eq VAR_RESULT, B_OUTCOME_WON, TerraCave_End_EventScript_DefeatedGroudon + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, TerraCave_End_EventScript_RanFromGroudon + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, TerraCave_End_EventScript_RanFromGroudon setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 1 setflag FLAG_DEFEATED_GROUDON releaseall diff --git a/data/maps/TrainerHill_Elevator/scripts.inc b/data/maps/TrainerHill_Elevator/scripts.inc index 05878fe8565c..bec1ffbff1c9 100644 --- a/data/maps/TrainerHill_Elevator/scripts.inc +++ b/data/maps/TrainerHill_Elevator/scripts.inc @@ -26,8 +26,7 @@ TrainerHill_Elevator_EventScript_EnterElevator:: waitmovement 0 lockall msgbox TrainerHill_Elevator_Text_ReturnToReception, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq TrainerHill_Elevator_EventScript_ExitToRoof + goto_if_eq VAR_RESULT, NO, TrainerHill_Elevator_EventScript_ExitToRoof releaseall applymovement LOCALID_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFaceDown waitmovement 0 diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index 4c76ccb52676..8989883e47fa 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -24,16 +24,14 @@ TrainerHill_Entrance_OnResume: trainerhill_resumetimer setvar VAR_TEMP_0, 0 trainerhill_getusingereader - compare VAR_RESULT, FALSE @ VAR_RESULT always FALSE here - goto_if_eq TrainerHill_Entrance_EventScript_TryFaceAttendant + 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 end TrainerHill_Entrance_EventScript_TryFaceAttendant:: trainerhill_getwon - compare VAR_RESULT, TRUE - goto_if_eq TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant + goto_if_eq VAR_RESULT, TRUE, TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant end @@ -48,8 +46,7 @@ TrainerHill_Entrance_OnReturn: end TrainerHill_Entrance_OnLoad: - compare VAR_TEMP_D, 17 - call_if_eq TrainerHill_Entrance_EventScript_OpenCounterDoor + call_if_eq VAR_TEMP_D, 17, TrainerHill_Entrance_EventScript_OpenCounterDoor end TrainerHill_Entrance_EventScript_OpenCounterDoor:: @@ -115,8 +112,7 @@ TrainerHill_Entrance_EventScript_Attendant:: lock faceplayer trainerhill_inchallenge - compare VAR_RESULT, FALSE - goto_if_eq TrainerHill_Entrance_EventScript_ThanksForPlaying + goto_if_eq VAR_RESULT, FALSE, TrainerHill_Entrance_EventScript_ThanksForPlaying msgbox TrainerHill_Entrance_Text_HopeYouGiveItYourBest, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_AttendantEnd @@ -132,11 +128,9 @@ TrainerHill_Entrance_EventScript_EntryTrigger:: goto_if_unset FLAG_SYS_GAME_CLEAR, TrainerHill_Entrance_EventScript_Closed msgbox TrainerHill_Entrance_Text_WelcomeToTrainerHill, MSGBOX_DEFAULT trainerhill_getsaved - compare VAR_RESULT, FALSE - call_if_eq TrainerHill_Entrance_EventScript_SaveGame + call_if_eq VAR_RESULT, FALSE, TrainerHill_Entrance_EventScript_SaveGame trainerhill_allfloorsused - compare VAR_RESULT, TRUE - goto_if_eq TrainerHill_Entrance_EventScript_AllFloorsUsed + goto_if_eq VAR_RESULT, TRUE, TrainerHill_Entrance_EventScript_AllFloorsUsed msgbox TrainerHill_Entrance_Text_TrainersUpToFloorX, MSGBOX_DEFAULT goto TrainerHill_Entrance_EventScript_AskChallengeTrainers @@ -186,8 +180,7 @@ TrainerHill_Entrance_EventScript_SaveGame:: trainerhill_setsaved setvar VAR_TEMP_5, 1 call Common_EventScript_SaveGame - compare VAR_RESULT, FALSE - goto_if_eq TrainerHill_Entrance_EventScript_SaveFailed + goto_if_eq VAR_RESULT, FALSE, TrainerHill_Entrance_EventScript_SaveFailed trainerhill_setsaved return diff --git a/data/maps/Underwater_SealedChamber/scripts.inc b/data/maps/Underwater_SealedChamber/scripts.inc index f670cce0b87b..f4f8d8ccb767 100644 --- a/data/maps/Underwater_SealedChamber/scripts.inc +++ b/data/maps/Underwater_SealedChamber/scripts.inc @@ -4,10 +4,8 @@ Underwater_SealedChamber_MapScripts:: Underwater_SealedChamber_OnDive: getplayerxy VAR_0x8004, VAR_0x8005 - compare VAR_0x8004, 12 - goto_if_ne Underwater_SealedChamber_EventScript_SurfaceRoute134 - compare VAR_0x8005, 44 - goto_if_ne Underwater_SealedChamber_EventScript_SurfaceRoute134 + goto_if_ne VAR_0x8004, 12, Underwater_SealedChamber_EventScript_SurfaceRoute134 + goto_if_ne VAR_0x8005, 44, Underwater_SealedChamber_EventScript_SurfaceRoute134 goto Underwater_SealedChamber_EventScript_SurfaceSealedChamber Underwater_SealedChamber_EventScript_SurfaceRoute134:: diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc index badbe1849061..29008b7c0f4a 100644 --- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc @@ -18,10 +18,8 @@ VerdanturfTown_BattleTentBattleRoom_OnTransition: VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale - compare VAR_RESULT, FEMALE - goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale + goto_if_eq VAR_RESULT, MALE, VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale + goto_if_eq VAR_RESULT, FEMALE, VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale return VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @@ -43,8 +41,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom:: applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter waitmovement 0 frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 0 - goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge + goto_if_ne VAR_RESULT, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: tower_setopponent addobject LOCALID_OPPONENT @@ -84,10 +81,8 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: frontier_get FRONTIER_DATA_BATTLE_NUM - compare VAR_RESULT, 1 - call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent - compare VAR_RESULT, 2 - call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent + call_if_eq VAR_RESULT, 1, VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent + call_if_eq VAR_RESULT, 2, VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, TRUE switch VAR_RESULT case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc index 4f863f1719e7..a78a6a78edc2 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc +++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc @@ -107,8 +107,7 @@ VerdanturfTown_BattleTentLobby_EventScript_Attendant:: lock faceplayer verdanturftent_getprize - compare VAR_RESULT, ITEM_NONE - goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting + goto_if_ne VAR_RESULT, ITEM_NONE, VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting special SavePlayerParty msgbox VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @@ -126,8 +125,7 @@ VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES setvar VAR_RESULT, 2 frontier_checkineligible - compare VAR_0x8004, TRUE - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons + goto_if_eq VAR_0x8004, TRUE, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT msgbox VerdanturfTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK @@ -135,8 +133,7 @@ VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: setvar VAR_0x8005, FRONTIER_PARTY_SIZE special ChoosePartyForBattleFrontier waitstate - compare VAR_RESULT, 0 - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge + goto_if_eq VAR_RESULT, 0, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge msgbox VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO switch VAR_RESULT case NO, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge @@ -154,8 +151,7 @@ VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: delay 2 call Common_EventScript_SaveGame setvar VAR_TEMP_0, 255 - compare VAR_RESULT, 0 - goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed + goto_if_eq VAR_RESULT, 0, VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: special SavePlayerParty frontier_setpartyorder FRONTIER_PARTY_SIZE @@ -232,8 +228,7 @@ VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract msgbox VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep, MSGBOX_DEFAULT giveitem ITEM_TM45 - compare VAR_RESULT, 0 - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, 0, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_TM45 msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT release diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc index e07da7e60dad..4bce6b4c1dce 100644 --- a/data/maps/VictoryRoad_1F/scripts.inc +++ b/data/maps/VictoryRoad_1F/scripts.inc @@ -5,10 +5,8 @@ VictoryRoad_1F_MapScripts:: .byte 0 VictoryRoad_1F_OnTransition: - compare VAR_VICTORY_ROAD_1F_STATE, 1 - call_if_eq VictoryRoad_1F_EventScript_SetEntranceWallyPos1 - compare VAR_VICTORY_ROAD_1F_STATE, 2 - call_if_eq VictoryRoad_1F_EventScript_SetEntranceWallyPos2 + call_if_eq VAR_VICTORY_ROAD_1F_STATE, 1, VictoryRoad_1F_EventScript_SetEntranceWallyPos1 + call_if_eq VAR_VICTORY_ROAD_1F_STATE, 2, VictoryRoad_1F_EventScript_SetEntranceWallyPos2 end VictoryRoad_1F_EventScript_SetEntranceWallyPos1:: @@ -88,8 +86,7 @@ VictoryRoad_1F_EventScript_EntranceWally:: VictoryRoad_1F_EventScript_ExitWally:: trainerbattle_single TRAINER_WALLY_VR_2, VictoryRoad_1F_Text_WallyIntro, VictoryRoad_1F_Text_WallyDefeat specialvar VAR_RESULT, ShouldTryRematchBattle - compare VAR_RESULT, TRUE - goto_if_eq VictoryRoad_1F_EventScript_RematchWally + goto_if_eq VAR_RESULT, TRUE, VictoryRoad_1F_EventScript_RematchWally msgbox VictoryRoad_1F_Text_WallyPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc index c38982da8ff8..c5b03a9704cf 100644 --- a/data/scripts/abnormal_weather.inc +++ b/data/scripts/abnormal_weather.inc @@ -172,8 +172,7 @@ AbnormalWeather_StartGroudonWeather:: AbnormalWeather_EventScript_EndEventAndCleanup_1:: lockall - compare VAR_ABNORMAL_WEATHER_LOCATION, MARINE_CAVE_LOCATIONS_START - goto_if_ge AbnormalWeather_EventScript_ShowRainEndedMessage + goto_if_ge VAR_ABNORMAL_WEATHER_LOCATION, MARINE_CAVE_LOCATIONS_START, AbnormalWeather_EventScript_ShowRainEndedMessage goto AbnormalWeather_EventScript_ShowSunEndedMessage end diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc index 2a6772a5dc2a..ea8345a9ec48 100644 --- a/data/scripts/apprentice.inc +++ b/data/scripts/apprentice.inc @@ -4,24 +4,17 @@ BattleFrontier_BattleTowerLobby_EventScript_Apprentice:: lock faceplayer apprentice_gavelvlmode - compare VAR_RESULT, FALSE - goto_if_eq Apprentice_EventScript_FirstMeeting + goto_if_eq VAR_RESULT, FALSE, Apprentice_EventScript_FirstMeeting apprentice_shouldcheckgone - compare VAR_0x8004, FALSE @ Always TRUE here - goto_if_eq Apprentice_EventScript_AskQuestion + goto_if_eq VAR_0x8004, FALSE, Apprentice_EventScript_AskQuestion @ VAR_0x8004 always TRUE here goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, Apprentice_EventScript_Gone Apprentice_EventScript_AskQuestion: apprentice_getquestion - compare VAR_RESULT, APPRENTICE_QUESTION_WHICH_MON - goto_if_eq Apprentice_EventScript_UseWhichMon - compare VAR_RESULT, APPRENTICE_QUESTION_WHAT_ITEM - goto_if_eq Apprentice_EventScript_UseWhatHeldItem - compare VAR_RESULT, APPRENTICE_QUESTION_WHICH_MOVE - goto_if_eq Apprentice_EventScript_UseWhichMove - compare VAR_RESULT, APPRENTICE_QUESTION_WHICH_FIRST - goto_if_eq Apprentice_EventScript_PutWhichMonFirst - compare VAR_RESULT, APPRENTICE_QUESTION_WIN_SPEECH - goto_if_eq Apprentice_EventScript_PickWinSpeech + goto_if_eq VAR_RESULT, APPRENTICE_QUESTION_WHICH_MON, Apprentice_EventScript_UseWhichMon + goto_if_eq VAR_RESULT, APPRENTICE_QUESTION_WHAT_ITEM, Apprentice_EventScript_UseWhatHeldItem + goto_if_eq VAR_RESULT, APPRENTICE_QUESTION_WHICH_MOVE, Apprentice_EventScript_UseWhichMove + goto_if_eq VAR_RESULT, APPRENTICE_QUESTION_WHICH_FIRST, Apprentice_EventScript_PutWhichMonFirst + goto_if_eq VAR_RESULT, APPRENTICE_QUESTION_WIN_SPEECH, Apprentice_EventScript_PickWinSpeech release releaseall end @@ -31,8 +24,7 @@ Apprentice_EventScript_FirstMeeting: apprentice_msg FALSE, APPRENTICE_MSG_PLEASE_TEACH Apprentice_EventScript_WhichLvlMode: apprentice_menu APPRENTICE_ASK_YES_NO - compare VAR_RESULT, 1 - goto_if_eq Apprentice_EventScript_RejectTeach + goto_if_eq VAR_RESULT, 1, Apprentice_EventScript_RejectTeach apprentice_msg FALSE, APPRENTICE_MSG_WHICH_LVL_MODE apprentice_menu APPRENTICE_ASK_WHICH_LEVEL apprentice_setlvlmode VAR_RESULT @@ -59,16 +51,13 @@ Apprentice_EventScript_UseWhichMon: apprentice_msg FALSE, APPRENTICE_MSG_WHICH_MON apprentice_menu APPRENTICE_ASK_2SPECIES copyvar VAR_0x8005, VAR_RESULT - compare VAR_0x8005, 0 - call_if_eq Apprentice_EventScript_ChoseFirstMon - compare VAR_0x8005, 1 - call_if_eq Apprentice_EventScript_ChoseSecondMon + call_if_eq VAR_0x8005, 0, Apprentice_EventScript_ChoseFirstMon + call_if_eq VAR_0x8005, 1, Apprentice_EventScript_ChoseSecondMon apprentice_getnumpartymons apprentice_setpartymon VAR_RESULT apprentice_answeredquestion apprentice_getnumpartymons - compare VAR_RESULT, MULTI_PARTY_SIZE - call_if_eq Apprentice_EventScript_LastMonSelected + call_if_eq VAR_RESULT, MULTI_PARTY_SIZE, Apprentice_EventScript_LastMonSelected apprentice_buff 0, VAR_0x8007 apprentice_freequestion apprentice_msg TRUE, APPRENTICE_MSG_THANKS_MON @@ -101,11 +90,9 @@ Apprentice_EventScript_ChooseHoldItem: fadescreen FADE_TO_BLACK setvar VAR_RESULT, 0 apprentice_openbag - compare VAR_RESULT, FALSE - goto_if_eq Apprentice_EventScript_ConfirmHoldNothing + goto_if_eq VAR_RESULT, FALSE, Apprentice_EventScript_ConfirmHoldNothing apprentice_trysetitem - compare VAR_RESULT, FALSE - goto_if_eq Apprentice_EventScript_AlreadySuggestedItem + goto_if_eq VAR_RESULT, FALSE, Apprentice_EventScript_AlreadySuggestedItem apprentice_buff 0, APPRENTICE_BUFF_ITEM apprentice_msg TRUE, APPRENTICE_MSG_THANKS_HELD_ITEM apprentice_answeredquestion @@ -123,8 +110,7 @@ Apprentice_EventScript_ConfirmHoldNothing: apprentice_msg FALSE, APPRENTICE_MSG_HOLD_NOTHING apprentice_menu APPRENTICE_ASK_GIVE apprentice_freequestion - compare VAR_RESULT, 0 - goto_if_eq Apprentice_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, 0, Apprentice_EventScript_ChooseHoldItem Apprentice_EventScript_HoldNothing: apprentice_msg TRUE, APPRENTICE_MSG_THANKS_NO_HELD_ITEM apprentice_answeredquestion @@ -145,8 +131,7 @@ Apprentice_EventScript_AlreadySuggestedItem: apprentice_msg FALSE, APPRENTICE_MSG_ITEM_ALREADY_SUGGESTED apprentice_menu APPRENTICE_ASK_GIVE apprentice_freequestion - compare VAR_RESULT, 0 - goto_if_eq Apprentice_EventScript_ChooseHoldItem + goto_if_eq VAR_RESULT, 0, Apprentice_EventScript_ChooseHoldItem goto Apprentice_EventScript_HoldNothing end @@ -158,10 +143,8 @@ Apprentice_EventScript_UseWhichMove: apprentice_msg FALSE, APPRENTICE_MSG_WHICH_MOVE apprentice_menu APPRENTICE_ASK_MOVES copyvar VAR_0x8005, VAR_RESULT - compare VAR_0x8005, 0 - call_if_eq Apprentice_EventScript_ChoseMove1 - compare VAR_0x8005, 1 - call_if_eq Apprentice_EventScript_ChoseMove2 + call_if_eq VAR_0x8005, 0, Apprentice_EventScript_ChoseMove1 + call_if_eq VAR_0x8005, 1, Apprentice_EventScript_ChoseMove2 apprentice_setmove apprentice_answeredquestion apprentice_buff 0, VAR_0x8007 @@ -225,16 +208,14 @@ Apprentice_EventScript_SetHideFlags: Apprentice_EventScript_LeaveNorth: apprentice_shouldleave - compare VAR_0x8004, FALSE @ Always TRUE here - goto_if_eq Apprentice_EventScript_DontMove + goto_if_eq VAR_0x8004, FALSE, Apprentice_EventScript_DontMove @ VAR_0x8004 always TRUE here applymovement LOCALID_APPRENTICE, Apprentice_Movement_LeaveNorth waitmovement 0 end Apprentice_EventScript_Leave: apprentice_shouldleave - compare VAR_0x8004, FALSE @ Always TRUE here - goto_if_eq Apprentice_EventScript_DontMove + goto_if_eq VAR_0x8004, FALSE, Apprentice_EventScript_DontMove @ VAR_0x8004 always TRUE here applymovement LOCALID_APPRENTICE, Apprentice_Movement_Leave waitmovement 0 end diff --git a/data/scripts/battle_pike.inc b/data/scripts/battle_pike.inc index e11f997626c6..8ca7f5b1af9d 100644 --- a/data/scripts/battle_pike.inc +++ b/data/scripts/battle_pike.inc @@ -50,14 +50,10 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects:: setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_LINK_RECEPTIONIST setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_LINK_RECEPTIONIST pike_getroomtype - compare VAR_RESULT, PIKE_ROOM_STATUS - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom - compare VAR_RESULT, PIKE_ROOM_HARD_BATTLE - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom - compare VAR_RESULT, PIKE_ROOM_DOUBLE_BATTLE - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom - compare VAR_RESULT, PIKE_ROOM_BRAIN - goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_InitBrainRoomObjects + goto_if_eq VAR_RESULT, PIKE_ROOM_STATUS, BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom + 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 setvar VAR_TEMP_4, 1 turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH @@ -154,10 +150,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_NoTurningBack:: BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: pike_ispartyfullhealth - compare VAR_RESULT, TRUE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing - compare VAR_RESULT, TRUE - call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing + call_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_DisableHealing + call_if_ne VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_EnableHealing pike_get PIKE_DATA_WIN_STREAK addvar VAR_RESULT, 1 pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT @@ -165,10 +159,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT pike_isfinalroom - compare VAR_RESULT, TRUE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom - compare VAR_RESULT, FALSE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom + call_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom + call_if_eq VAR_RESULT, FALSE, BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom waitstate end @@ -197,10 +189,8 @@ BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom:: BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: pike_exitwildmonroom pike_ispartyfullhealth - compare VAR_RESULT, TRUE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing - compare VAR_RESULT, TRUE - call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing + call_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_DisableHealing + call_if_ne VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_EnableHealing pike_get PIKE_DATA_WIN_STREAK addvar VAR_RESULT, 1 pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT @@ -208,10 +198,8 @@ BattleFrontier_BattlePikeRoomWildMons_EventScript_Exit:: addvar VAR_RESULT, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT pike_isfinalroom - compare VAR_RESULT, TRUE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom - compare VAR_RESULT, FALSE - call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom + call_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom + call_if_eq VAR_RESULT, FALSE, BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom waitstate end @@ -237,10 +225,8 @@ BattleFrontier_BattlePike_EventScript_Retire:: BattleFrontier_BattlePikeRoom_OnResume: setorcopyvar VAR_0x8006, VAR_RESULT @ Save VAR_RESULT from being overwritten frontier_get FRONTIER_DATA_CHALLENGE_STATUS - compare VAR_RESULT, CHALLENGE_STATUS_PAUSED - goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume - compare VAR_RESULT, CHALLENGE_STATUS_SAVING - goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume + goto_if_eq VAR_RESULT, CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume + goto_if_eq VAR_RESULT, CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume call BattleFrontier_BattlePikeRoom_EventScript_ResetSketchedMoves BattleFrontier_BattlePikeThreePathRoom_EventScript_EndOnResume:: setorcopyvar VAR_RESULT, VAR_0x8006 diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc index 71f3a1276023..f860ef066c01 100644 --- a/data/scripts/berry_blender.inc +++ b/data/scripts/berry_blender.inc @@ -249,8 +249,7 @@ BerryBlender_EventScript_BerryBlender1:: applymovement LOCALID_EXPERT_M, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_WantToMakePokeblocks, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_TryUseBerryBlender1 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender1 goto BerryBlender_EventScript_DeclineBlender1 end @@ -280,8 +279,7 @@ BerryBlender_EventScript_Blender1GiveSpareBerry: BerryBlender_EventScript_UseBerryBlender1: msgbox BerryBlender_Text_KnowHowToMakePokeblocks, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_StartBlender1 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender1 goto BerryBlender_EventScript_ExplainBlending1 end @@ -297,14 +295,11 @@ BerryBlender_EventScript_ExplainBlending1: BerryBlender_EventScript_TryUseBerryBlender1: checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender1NoCase + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender1NoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_Blender1CaseFull + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender1CaseFull specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender1NoBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender1NoBerries msgbox BerryBlender_Text_Excellent, MSGBOX_DEFAULT goto BerryBlender_EventScript_UseBerryBlender1 end @@ -334,8 +329,7 @@ BerryBlender_EventScript_BerryBlender2:: applymovement LOCALID_MAN, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_WantToBlendPokeblocksWithUs, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_TryUseBerryBlender2 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender2 goto BerryBlender_EventScript_DeclineBlender2 end @@ -351,8 +345,7 @@ BerryBlender_EventScript_Blender2NoBerries: BerryBlender_EventScript_UseBerryBlender2: msgbox BerryBlender_Text_KnowHowToMakePokeblocks2, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_StartBlender2 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender2 goto BerryBlender_EventScript_ExplainBlending2 end @@ -368,17 +361,13 @@ BerryBlender_EventScript_ExplainBlending2: BerryBlender_EventScript_TryUseBerryBlender2: specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender2NoBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender2NoBerries checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender2NoCase + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender2NoCase msgbox BerryBlender_Text_Okay, MSGBOX_DEFAULT specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_ne BerryBlender_EventScript_UseBerryBlender2 - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_Blender2CaseFull + goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_UseBerryBlender2 + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender2CaseFull end BerryBlender_EventScript_Blender2CaseFull: @@ -400,8 +389,7 @@ BerryBlender_EventScript_BerryBlender3:: applymovement VAR_0x8008, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_LookGoodAtBlendingJoinUs, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_TryUseBlender3 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBlender3 goto BerryBlender_EventScript_DeclineBlender3 end @@ -417,8 +405,7 @@ BerryBlender_EventScript_Blender3NoBerries: BerryBlender_EventScript_UseBerryBlender3: msgbox BerryBlender_Text_KnowHowToMakePokeblocks3, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_StartBlender3 + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender3 goto BerryBlender_EventScript_ExplainBlending3 end @@ -434,17 +421,13 @@ BerryBlender_EventScript_ExplainBlending3: BerryBlender_EventScript_TryUseBlender3: specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender3NoBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender3NoBerries checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_Blender3NoCase + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender3NoCase msgbox BerryBlender_Text_OhDear, MSGBOX_DEFAULT specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_ne BerryBlender_EventScript_UseBerryBlender3 - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_Blender3CaseFull + goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_UseBerryBlender3 + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender3CaseFull end BerryBlender_EventScript_Blender3CaseFull: @@ -461,8 +444,7 @@ BerryBlender_EventScript_BlendMasterPresent: lockall setvar NUM_OPPONENTS, 1 msgbox BerryBlender_Text_SeeMyMasteryInAction, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_TryBlendWithBlendMaster + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryBlendWithBlendMaster msgbox BerryBlender_Text_TooBusyNowIsee, MSGBOX_DEFAULT releaseall end @@ -474,22 +456,17 @@ BerryBlender_EventScript_BlendMasterNoBerries: BerryBlender_EventScript_TryBlendWithBlendMaster: checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_BlendMasterNoCase + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_BlendMasterNoCase specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_BlendMasterNoBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_BlendMasterNoBerries specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_ne BerryBlender_EventScript_BlendWithBlendMaster - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_BlendMasterCaseFull + goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_BlendWithBlendMaster + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_BlendMasterCaseFull end BerryBlender_EventScript_BlendWithBlendMaster: msgbox BerryBlender_Text_BlendMasterKnowHowToMakePokeblocks, MSGBOX_YESNO - compare VAR_RESULT, NO - call_if_eq BerryBlender_EventScript_BlendMasterExplainBlending + call_if_eq VAR_RESULT, NO, BerryBlender_EventScript_BlendMasterExplainBlending msgbox BerryBlender_Text_BlendMasterLetsBerryBlender, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end @@ -530,10 +507,8 @@ BerryBlender_EventScript_ExpertMCheckGiveBerry: faceplayer msgbox BerryBlender_Text_LoveMakingPokeblocks, MSGBOX_DEFAULT specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, TRUE - goto_if_eq BerryBlender_EventScript_ExpertMPlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_ExpertMNoBerries + goto_if_eq VAR_RESULT, TRUE, BerryBlender_EventScript_ExpertMPlayerHasBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_ExpertMNoBerries end BerryBlender_EventScript_ExpertMPlayerHasBerries: @@ -543,11 +518,9 @@ BerryBlender_EventScript_ExpertMPlayerHasBerries: BerryBlender_EventScript_ExpertMNoBerries: checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_ExpertMNoSpareBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_ExpertMNoSpareBerries specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_ExpertMNoSpareBerries + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_ExpertMNoSpareBerries dotimebasedevents goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, BerryBlender_EventScript_ExpertMNoSpareBerries goto BerryBlender_EventScript_ExpertMGiveBerry @@ -573,24 +546,18 @@ BerryBlender_Movement_BlendLeaderWalkInPlace: BerryBlender_EventScript_BerryBlenderLink:: lockall specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_LinkBlenderNoBerries + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_LinkBlenderNoBerries checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_LinkBlenderNoCase + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_LinkBlenderNoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot - compare VAR_RESULT, 65535 - goto_if_ne BerryBlender_EventScript_LinkBlenderSaveGame - compare VAR_RESULT, 65535 - goto_if_eq BerryBlender_EventScript_LinkBlenderCaseFull + goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_LinkBlenderSaveGame + goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_LinkBlenderCaseFull end BerryBlender_EventScript_LinkBlenderSaveGame: msgbox BerryBlender_Text_SaveGameBeforeBerryBlenderLink, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryBlender_EventScript_TryDoLinkBlender - compare VAR_RESULT, NO - goto_if_eq BerryBlender_EventScript_CancelLinkBlender + goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryDoLinkBlender + goto_if_eq VAR_RESULT, NO, BerryBlender_EventScript_CancelLinkBlender end BerryBlender_EventScript_LinkBlenderNoBerries: @@ -600,25 +567,18 @@ BerryBlender_EventScript_LinkBlenderNoBerries: BerryBlender_EventScript_TryDoLinkBlender: call Common_EventScript_SaveGame - compare VAR_RESULT, FALSE - goto_if_eq BerryBlender_EventScript_CancelLinkBlender + goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_CancelLinkBlender specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, TRUE - goto_if_eq BerryBlender_EventScript_StartDecideLinkLeader + goto_if_eq VAR_RESULT, TRUE, BerryBlender_EventScript_StartDecideLinkLeader message BerryBlender_Text_SearchingForFriends waitmessage special TryBerryBlenderLinkup waitstate - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BerryBlender_EventScript_SpawnLinkPartners - compare VAR_RESULT, LINKUP_SOMEONE_NOT_READY - goto_if_eq BerryBlender_EventScript_CloseLinkNotReady - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq BerryBlender_EventScript_CloseLinkDifferentSelections - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BerryBlender_EventScript_CloseLink - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq BerryBlender_EventScript_LinkError + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_SpawnLinkPartners + goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, BerryBlender_EventScript_CloseLinkNotReady + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, BerryBlender_EventScript_CloseLinkDifferentSelections + goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_CloseLink + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, BerryBlender_EventScript_LinkError end BerryBlender_EventScript_TwoPlayerLink: @@ -721,23 +681,17 @@ BerryBlender_EventScript_DecideLinkLeader: BerryBlender_EventScript_TryLeadGroup: call BerryBlender_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BerryBlender_EventScript_LinkLeaderDecided - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BerryBlender_EventScript_DecideLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq BerryBlender_EventScript_TryLeadGroup + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_LinkLeaderDecided + goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_DecideLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BerryBlender_EventScript_TryLeadGroup release end BerryBlender_EventScript_TryJoinGroup: call BerryBlender_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq BerryBlender_EventScript_LinkLeaderDecided - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq BerryBlender_EventScript_DecideLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq BerryBlender_EventScript_TryJoinGroup + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_LinkLeaderDecided + goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_DecideLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BerryBlender_EventScript_TryJoinGroup release end diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index a1f743681cda..8ad300df525b 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -22,8 +22,7 @@ BerryTree_EventScript_CheckSoil:: lock faceplayer specialvar VAR_RESULT, PlayerHasBerries - compare VAR_RESULT, TRUE - goto_if_eq BerryTree_EventScript_WantToPlant + goto_if_eq VAR_RESULT, TRUE, BerryTree_EventScript_WantToPlant message BerryTree_Text_ItsSoftLoamySoil waitmessage waitbuttonpress @@ -32,10 +31,8 @@ BerryTree_EventScript_CheckSoil:: BerryTree_EventScript_WantToPlant:: msgbox BerryTree_Text_WantToPlant, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryTree_EventScript_ChooseBerryToPlant - compare VAR_RESULT, NO - goto_if_eq BerryTree_EventScript_CancelPlanting + goto_if_eq VAR_RESULT, YES, BerryTree_EventScript_ChooseBerryToPlant + goto_if_eq VAR_RESULT, NO, BerryTree_EventScript_CancelPlanting end BerryTree_EventScript_ChooseBerryToPlant:: @@ -43,8 +40,7 @@ BerryTree_EventScript_ChooseBerryToPlant:: closemessage special Bag_ChooseBerry waitstate - compare VAR_ITEM_ID, 0 - goto_if_eq BerryTree_EventScript_CancelPlanting + goto_if_eq VAR_ITEM_ID, 0, BerryTree_EventScript_CancelPlanting removeitem VAR_ITEM_ID call BerryTree_EventScript_PlantBerry @@ -88,10 +84,8 @@ BerryTree_EventScript_CheckBerryStage4:: @ VAR_0x8005 here is the number of times watered @ Buffered by ObjectEventInteractionGetBerryTreeData BerryTree_EventScript_GetCareAdverb:: - compare VAR_0x8005, 0 - goto_if_eq BerryTree_EventScript_SetAdverbPoor - compare VAR_0x8005, 4 - goto_if_eq BerryTree_EventScript_SetAdverbGreat + goto_if_eq VAR_0x8005, 0, BerryTree_EventScript_SetAdverbPoor + goto_if_eq VAR_0x8005, 4, BerryTree_EventScript_SetAdverbGreat bufferstring STR_VAR_2, BerryTree_Text_CareAdverbGood return @@ -110,15 +104,12 @@ BerryTree_EventScript_CheckBerryFullyGrown:: faceplayer special ObjectEventInteractionGetBerryCountString msgbox BerryTree_Text_WantToPick, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryTree_EventScript_PickBerry - compare VAR_RESULT, NO - goto_if_eq BerryTree_EventScript_CancelPickingBerry + goto_if_eq VAR_RESULT, YES, BerryTree_EventScript_PickBerry + goto_if_eq VAR_RESULT, NO, BerryTree_EventScript_CancelPickingBerry BerryTree_EventScript_PickBerry:: special ObjectEventInteractionPickBerryTree - compare VAR_0x8004, 0 - goto_if_eq BerryTree_EventScript_BerryPocketFull + goto_if_eq VAR_0x8004, 0, BerryTree_EventScript_BerryPocketFull special IncrementDailyPickedBerries special ObjectEventInteractionRemoveBerryTree message BerryTree_Text_PickedTheBerry @@ -155,14 +146,11 @@ BerryTree_EventScript_ItemUsePlantBerry:: BerryTree_EventScript_WantToWater:: checkitem ITEM_WAILMER_PAIL - compare VAR_RESULT, FALSE - goto_if_eq BerryTree_EventScript_DontWater + goto_if_eq VAR_RESULT, FALSE, BerryTree_EventScript_DontWater special ObjectEventInteractionGetBerryName msgbox BerryTree_Text_WantToWater, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BerryTree_EventScript_WaterBerry - compare VAR_RESULT, NO - goto_if_eq BerryTree_EventScript_DontWater + goto_if_eq VAR_RESULT, YES, BerryTree_EventScript_WaterBerry + goto_if_eq VAR_RESULT, NO, BerryTree_EventScript_DontWater BerryTree_EventScript_DontWater:: releaseall diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index fa4d67da7f9f..0ab93c40376f 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -4,11 +4,9 @@ CableClub_OnTransition: CableClub_EventScript_HideOrShowMysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_ShowMysteryGiftMan + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_ShowMysteryGiftMan specialvar VAR_RESULT, ValidateSavedWonderCard - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_HideMysteryGiftMan + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_HideMysteryGiftMan goto CableClub_EventScript_ShowMysteryGiftMan end @@ -22,8 +20,7 @@ CableClub_EventScript_HideMysteryGiftMan:: CableClub_EventScript_MysteryGiftMan:: specialvar VAR_RESULT, ShouldDistributeEonTicket - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_DistributeEonTicket + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_DistributeEonTicket goto CableClub_EventScript_TryWonderCardScript end @@ -35,8 +32,7 @@ CableClub_EventScript_MysteryGiftThankYou:: CableClub_EventScript_DistributeEonTicket:: checkitem ITEM_EON_TICKET - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_TryWonderCardScript + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_TryWonderCardScript goto_if_set FLAG_ENABLE_SHIP_SOUTHERN_ISLAND, CableClub_EventScript_TryWonderCardScript msgbox MysteryGift_Text_TheresATicketForYou, MSGBOX_DEFAULT giveitem ITEM_EON_TICKET @@ -64,29 +60,20 @@ CableClub_OnWarp: .2byte 0 CableClub_EventScript_CheckTurnAttendant:: - compare VAR_0x8007, 0 - goto_if_eq CableClub_EventScript_DontTurnAttendant + goto_if_eq VAR_0x8007, 0, CableClub_EventScript_DontTurnAttendant turnobject VAR_0x8007, DIR_WEST CableClub_EventScript_DontTurnAttendant:: end CableClub_OnLoad: - compare VAR_CABLE_CLUB_STATE, USING_SINGLE_BATTLE - goto_if_eq CableClub_EventScript_OnLoadFromColosseum - compare VAR_CABLE_CLUB_STATE, USING_DOUBLE_BATTLE - goto_if_eq CableClub_EventScript_OnLoadFromColosseum - compare VAR_CABLE_CLUB_STATE, USING_MULTI_BATTLE - goto_if_eq CableClub_EventScript_OnLoadFromColosseum - compare VAR_CABLE_CLUB_STATE, USING_TRADE_CENTER - goto_if_eq CableClub_EventScript_OnLoadFromTradeCenter - compare VAR_CABLE_CLUB_STATE, USING_RECORD_CORNER - goto_if_eq CableClub_EventScript_OnLoadFromRecordCorner - compare VAR_CABLE_CLUB_STATE, USING_UNION_ROOM - goto_if_eq CableClub_EventScript_OnLoadFromUnionRoom - compare VAR_CABLE_CLUB_STATE, USING_BERRY_CRUSH - goto_if_eq CableClub_EventScript_OnLoadFromBerryCrush - compare VAR_CABLE_CLUB_STATE, USING_MINIGAME - goto_if_eq CableClub_EventScript_OnLoadFromGameCorner + goto_if_eq VAR_CABLE_CLUB_STATE, USING_SINGLE_BATTLE, CableClub_EventScript_OnLoadFromColosseum + goto_if_eq VAR_CABLE_CLUB_STATE, USING_DOUBLE_BATTLE, CableClub_EventScript_OnLoadFromColosseum + goto_if_eq VAR_CABLE_CLUB_STATE, USING_MULTI_BATTLE, CableClub_EventScript_OnLoadFromColosseum + goto_if_eq VAR_CABLE_CLUB_STATE, USING_TRADE_CENTER, CableClub_EventScript_OnLoadFromTradeCenter + goto_if_eq VAR_CABLE_CLUB_STATE, USING_RECORD_CORNER, CableClub_EventScript_OnLoadFromRecordCorner + goto_if_eq VAR_CABLE_CLUB_STATE, USING_UNION_ROOM, CableClub_EventScript_OnLoadFromUnionRoom + goto_if_eq VAR_CABLE_CLUB_STATE, USING_BERRY_CRUSH, CableClub_EventScript_OnLoadFromBerryCrush + goto_if_eq VAR_CABLE_CLUB_STATE, USING_MINIGAME, CableClub_EventScript_OnLoadFromGameCorner end CableClub_EventScript_OnLoadFromColosseum:: @@ -148,8 +135,7 @@ CableClub_EventScript_ExitMinigameRoom:: CableClub_EventScript_CloseLinkAndExitLinkRoom:: special CloseLink setvar VAR_CABLE_CLUB_STATE, 0 - compare VAR_0x8007, 0 - goto_if_eq CableClub_EventScript_PlayerExitLinkRoom + goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom applymovement VAR_0x8007, Movement_AttendantFaceLeft waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom @@ -171,8 +157,7 @@ CableClub_EventScript_ExitTradeCenter:: CableClub_EventScript_PlayerExitTradeCenter:: special CloseLink setvar VAR_CABLE_CLUB_STATE, 0 - compare VAR_0x8007, 0 - goto_if_eq CableClub_EventScript_PlayerExitLinkRoom + goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerFaceAttendantRight waitmovement 0 applymovement VAR_0x8007, Movement_AttendantFaceLeft @@ -195,8 +180,7 @@ CableClub_EventScript_PlayerExitRecordCorner:: setvar VAR_CABLE_CLUB_STATE, 0 applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom waitmovement 0 - compare VAR_0x8007, 0 - goto_if_eq CableClub_EventScript_ExitRecordCornerRet + goto_if_eq VAR_0x8007, 0, CableClub_EventScript_ExitRecordCornerRet applymovement VAR_0x8007, Movement_AttendantFaceDown waitmovement 0 CableClub_EventScript_ExitRecordCornerRet:: @@ -214,8 +198,7 @@ CableClub_EventScript_ExitUnionRoom:: CableClub_EventScript_PlayerExitUnionRoom:: setvar VAR_CABLE_CLUB_STATE, 0 - compare VAR_0x8007, 0 - goto_if_eq CableClub_EventScript_PlayerExitLinkRoom + goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerFaceAttendantRight waitmovement 0 applymovement VAR_0x8007, Movement_AttendantFaceLeft @@ -323,8 +306,7 @@ CableClub_EventScript_SingleBattleMode:: CableClub_EventScript_DoubleBattleMode:: special HasEnoughMonsForDoubleBattle - compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne CableClub_EventScript_NeedTwoMonsForDoubleBattle + goto_if_ne VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS, CableClub_EventScript_NeedTwoMonsForDoubleBattle setvar VAR_0x8004, USING_DOUBLE_BATTLE goto CableClub_EventScript_TryEnterColosseum end @@ -341,24 +323,17 @@ CableClub_EventScript_MultiBattleMode:: CableClub_EventScript_TryEnterColosseum:: call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink message gText_PleaseWaitForLink waitmessage special TryBattleLinkup waitstate - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterColosseum - compare VAR_RESULT, LINKUP_SOMEONE_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkSomeoneNotReady - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq CableClub_EventScript_AbortLinkDifferentSelections - compare VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS - goto_if_eq CableClub_EventScript_AbortLinkIncorrectNumberOfBattlers - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_AbortLink - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq CableClub_EventScript_AbortLinkConnectionError + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterColosseum + goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, CableClub_EventScript_AbortLinkSomeoneNotReady + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, CableClub_EventScript_AbortLinkDifferentSelections + goto_if_eq VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS, CableClub_EventScript_AbortLinkIncorrectNumberOfBattlers + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, CableClub_EventScript_AbortLinkConnectionError end CableClub_EventScript_EnterColosseum:: @@ -385,8 +360,7 @@ CableClub_EventScript_EnterColosseum:: closedoor 9, 1 waitdooranim release - compare VAR_0x8004, USING_MULTI_BATTLE - goto_if_eq CableClub_EventScript_WarpTo4PColosseum + goto_if_eq VAR_0x8004, USING_MULTI_BATTLE, CableClub_EventScript_WarpTo4PColosseum special SetCableClubWarp warp MAP_BATTLE_COLOSSEUM_2P, 6, 8 special DoCableClubWarp @@ -441,31 +415,21 @@ CableClub_EventScript_ConfirmNumberAndRestart:: CableClub_EventScript_TradeCenter:: copyvar VAR_0x8007, VAR_LAST_TALKED call CableClub_EventScript_CheckPartyTradeRequirements - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink message gText_PleaseWaitForLink waitmessage special TryTradeLinkup waitstate - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterTradeCenter - compare VAR_RESULT, LINKUP_SOMEONE_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkSomeoneNotReady - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq CableClub_EventScript_AbortLinkDifferentSelections - compare VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS - goto_if_eq CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_AbortLink - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq CableClub_EventScript_AbortLinkConnectionError - compare VAR_RESULT, LINKUP_PLAYER_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkPlayerNotReady - compare VAR_RESULT, LINKUP_PARTNER_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkOtherTrainerNotReady + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterTradeCenter + goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, CableClub_EventScript_AbortLinkSomeoneNotReady + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, CableClub_EventScript_AbortLinkDifferentSelections + goto_if_eq VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS, CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, CableClub_EventScript_AbortLinkConnectionError + goto_if_eq VAR_RESULT, LINKUP_PLAYER_NOT_READY, CableClub_EventScript_AbortLinkPlayerNotReady + goto_if_eq VAR_RESULT, LINKUP_PARTNER_NOT_READY, CableClub_EventScript_AbortLinkOtherTrainerNotReady end CableClub_EventScript_EnterTradeCenter:: @@ -498,11 +462,9 @@ CableClub_EventScript_EnterTradeCenter:: CableClub_EventScript_CheckPartyTradeRequirements:: specialvar VAR_RESULT, CalculatePlayerPartyCount - compare VAR_RESULT, 2 - goto_if_lt CableClub_EventScript_NeedTwoMonsToTrade + goto_if_lt VAR_RESULT, 2, CableClub_EventScript_NeedTwoMonsToTrade specialvar VAR_RESULT, DoesPartyHaveEnigmaBerry - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_CantTradeEnigmaBerry + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_CantTradeEnigmaBerry setvar VAR_RESULT, 1 return @@ -519,28 +481,20 @@ CableClub_EventScript_CantTradeEnigmaBerry:: CableClub_EventScript_RecordCorner:: copyvar VAR_0x8007, VAR_LAST_TALKED call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink message gText_PleaseWaitForLink waitmessage special TryRecordMixLinkup waitstate special ValidateMixingGameLanguage waitstate - compare VAR_RESULT, LINKUP_FOREIGN_GAME - goto_if_eq CableClub_EventScript_AbortLinkForeignGame - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterRecordCorner - compare VAR_RESULT, LINKUP_SOMEONE_NOT_READY - goto_if_eq CableClub_EventScript_AbortLinkSomeoneNotReady - compare VAR_RESULT, LINKUP_DIFF_SELECTIONS - goto_if_eq CableClub_EventScript_AbortLinkDifferentSelections - compare VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS - goto_if_eq CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_AbortLink - compare VAR_RESULT, LINKUP_CONNECTION_ERROR - goto_if_eq CableClub_EventScript_AbortLinkConnectionError + goto_if_eq VAR_RESULT, LINKUP_FOREIGN_GAME, CableClub_EventScript_AbortLinkForeignGame + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterRecordCorner + goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, CableClub_EventScript_AbortLinkSomeoneNotReady + goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, CableClub_EventScript_AbortLinkDifferentSelections + goto_if_eq VAR_RESULT, LINKUP_WRONG_NUM_PLAYERS, CableClub_EventScript_AbortLinkIncorrectNumberOfParticipants + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, CableClub_EventScript_AbortLinkConnectionError end CableClub_EventScript_EnterRecordCorner:: @@ -724,8 +678,7 @@ EventScript_BattleColosseum_4P_PlayerSpot0:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate - compare VAR_RESULT, 0 - goto_if_eq EventScript_BattleColosseum_4P_CancelSpotTrigger + goto_if_eq VAR_RESULT, 0, EventScript_BattleColosseum_4P_CancelSpotTrigger setvar VAR_0x8005, 0 special ColosseumPlayerSpotTriggered waitstate @@ -735,8 +688,7 @@ EventScript_BattleColosseum_4P_PlayerSpot1:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate - compare VAR_RESULT, 0 - goto_if_eq EventScript_BattleColosseum_4P_CancelSpotTrigger + goto_if_eq VAR_RESULT, 0, EventScript_BattleColosseum_4P_CancelSpotTrigger setvar VAR_0x8005, 1 special ColosseumPlayerSpotTriggered waitstate @@ -746,8 +698,7 @@ EventScript_BattleColosseum_4P_PlayerSpot2:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate - compare VAR_RESULT, 0 - goto_if_eq EventScript_BattleColosseum_4P_CancelSpotTrigger + goto_if_eq VAR_RESULT, 0, EventScript_BattleColosseum_4P_CancelSpotTrigger setvar VAR_0x8005, 2 special ColosseumPlayerSpotTriggered waitstate @@ -757,8 +708,7 @@ EventScript_BattleColosseum_4P_PlayerSpot3:: fadescreen FADE_TO_BLACK special ChooseHalfPartyForBattle waitstate - compare VAR_RESULT, 0 - goto_if_eq EventScript_BattleColosseum_4P_CancelSpotTrigger + goto_if_eq VAR_RESULT, 0, EventScript_BattleColosseum_4P_CancelSpotTrigger setvar VAR_0x8005, 3 special ColosseumPlayerSpotTriggered waitstate @@ -798,32 +748,28 @@ EventScript_RecordCenter_Spot0:: setvar VAR_0x8005, 0 special RecordMixingPlayerSpotTriggered waitstate - compare VAR_TEMP_1, ITEM_NONE - goto_if_ne RecordCorner_EventScript_ReceivedGiftItem + goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem end EventScript_RecordCenter_Spot1:: setvar VAR_0x8005, 1 special RecordMixingPlayerSpotTriggered waitstate - compare VAR_TEMP_1, ITEM_NONE - goto_if_ne RecordCorner_EventScript_ReceivedGiftItem + goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem end EventScript_RecordCenter_Spot2:: setvar VAR_0x8005, 2 special RecordMixingPlayerSpotTriggered waitstate - compare VAR_TEMP_1, ITEM_NONE - goto_if_ne RecordCorner_EventScript_ReceivedGiftItem + goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem end EventScript_RecordCenter_Spot3:: setvar VAR_0x8005, 3 special RecordMixingPlayerSpotTriggered waitstate - compare VAR_TEMP_1, ITEM_NONE - goto_if_ne RecordCorner_EventScript_ReceivedGiftItem + goto_if_ne VAR_TEMP_1, ITEM_NONE, RecordCorner_EventScript_ReceivedGiftItem end RecordCorner_EventScript_ReceivedGiftItem:: @@ -868,8 +814,7 @@ TradeCenter_EventScript_Attendant:: end RecordCorner_EventScript_Attendant:: - compare VAR_TEMP_0, 0 - goto_if_ne RecordCorner_EventScript_AlreadyMixed + goto_if_ne VAR_TEMP_0, 0, RecordCorner_EventScript_AlreadyMixed special Script_FacePlayer message RecordCorner_Text_TakeSeatAndWait waitmessage @@ -889,8 +834,7 @@ RecordCorner_EventScript_AlreadyMixed:: EventScript_ConfirmLeaveCableClubRoom:: msgbox Text_TerminateLinkConfirmation, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_TerminateLink + goto_if_eq VAR_RESULT, YES, EventScript_TerminateLink erasebox 0, 0, 29, 19 releaseall end @@ -913,12 +857,10 @@ CableClub_EventScript_UnionRoomAttendant:: setvar VAR_FRONTIER_FACILITY, FACILITY_UNION_ROOM goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_WirelessClubAdjustements specialvar VAR_RESULT, IsBadEggInParty - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_AbortLinkPlayerHasBadEgg + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_AbortLinkPlayerHasBadEgg copyvar VAR_0x8007, VAR_LAST_TALKED specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_UnionRoomAdapterNotConnected + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_UnionRoomAdapterNotConnected message CableClub_Text_WelcomeUnionRoomEnter waitmessage goto CableClub_EventScript_UnionRoomSelect @@ -941,11 +883,9 @@ CableClub_EventScript_UnionRoomInfo:: CableClub_EventScript_EnterUnionRoom:: call CableClub_EventScript_CheckPartyUnionRoomRequirements - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink msgbox CableClub_Text_EnjoyUnionRoom, MSGBOX_DEFAULT closemessage special HealPlayerParty @@ -976,11 +916,9 @@ CableClub_EventScript_EnterUnionRoom:: CableClub_EventScript_CheckPartyUnionRoomRequirements:: specialvar VAR_RESULT, CountPartyNonEggMons - compare VAR_RESULT, 2 - goto_if_lt CableClub_EventScript_NeedTwoMonsForUnionRoom + goto_if_lt VAR_RESULT, 2, CableClub_EventScript_NeedTwoMonsForUnionRoom specialvar VAR_RESULT, DoesPartyHaveEnigmaBerry - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_NoEnigmaBerryInUnionRoom + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_NoEnigmaBerryInUnionRoom setvar VAR_RESULT, 1 return @@ -1004,8 +942,7 @@ CableClub_EventScript_WirelessClubAttendant:: faceplayer goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_WirelessClubAdjustements msgbox CableClub_Text_AskAboutLinking, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq CableClub_EventScript_DontAskAboutLinking + goto_if_eq VAR_RESULT, NO, CableClub_EventScript_DontAskAboutLinking msgbox CableClub_Text_ExplainWirelessClub, MSGBOX_DEFAULT release return @@ -1021,11 +958,9 @@ CableClub_EventScript_DirectCornerAttendant:: setvar VAR_FRONTIER_FACILITY, FACILITY_MULTI_OR_EREADER @ Set preemptively for multi battles, ignored otherwise goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_WirelessClubAdjustements specialvar VAR_RESULT, IsBadEggInParty - compare VAR_RESULT, TRUE - goto_if_eq CableClub_EventScript_AbortLinkPlayerHasBadEgg + goto_if_eq VAR_RESULT, TRUE, CableClub_EventScript_AbortLinkPlayerHasBadEgg specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_WelcomeToCableClub + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_WelcomeToCableClub message CableClub_Text_WelcomeWhichDirectCornerRoom waitmessage delay 28 @@ -1034,8 +969,7 @@ CableClub_EventScript_DirectCornerAttendant:: CableClub_EventScript_DirectCornerSelectService:: checkitem ITEM_POWDER_JAR - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_DirectCornerNoBerry + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_DirectCornerNoBerry goto_if_set FLAG_VISITED_MAUVILLE_CITY, CableClub_EventScript_DirectCornerSelectAllServices multichoice 0, 0, MULTI_WIRELESS_NO_RECORD, FALSE switch VAR_RESULT @@ -1079,11 +1013,9 @@ CableClub_EventScript_DirectCornerHasRecordMix:: CableClub_EventScript_WirelessTrade:: msgbox CableClub_Text_TradePokemon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, NO, CableClub_EventScript_AbortLink call CableClub_EventScript_CheckPartyTradeRequirements - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink setvar VAR_0x8004, LINK_GROUP_TRADE goto CableClub_EventScript_SaveAndChooseLinkLeader end @@ -1108,8 +1040,7 @@ CableClub_EventScript_WirelessSingleBattle:: CableClub_EventScript_WirelessDoubleBattle:: special HasEnoughMonsForDoubleBattle - compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne CableClub_EventScript_TwoMonsNeededForWirelessDoubleBattle + goto_if_ne VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS, CableClub_EventScript_TwoMonsNeededForWirelessDoubleBattle setvar VAR_0x8004, LINK_GROUP_DOUBLE_BATTLE goto CableClub_EventScript_SaveAndChooseLinkLeader end @@ -1131,19 +1062,16 @@ CableClub_EventScript_WirelessBattleInfo:: CableClub_EventScript_WirelessRecordMix:: msgbox CableClub_Text_AccessRecordCorner, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, NO, CableClub_EventScript_AbortLink setvar VAR_0x8004, LINK_GROUP_RECORD_CORNER goto CableClub_EventScript_SaveAndChooseLinkLeader end CableClub_EventScript_WirelessBerryCrush:: msgbox CableClub_Text_UseBerryCrush, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, NO, CableClub_EventScript_AbortLink special HasAtLeastOneBerry - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_NeedBerryForBerryCrush + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_NeedBerryForBerryCrush setvar VAR_0x8004, LINK_GROUP_BERRY_CRUSH goto CableClub_EventScript_SaveAndChooseLinkLeader end @@ -1155,8 +1083,7 @@ CableClub_EventScript_NeedBerryForBerryCrush:: CableClub_EventScript_SaveAndChooseLinkLeader:: call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq CableClub_EventScript_AbortLink + goto_if_eq VAR_RESULT, 0, CableClub_EventScript_AbortLink switch VAR_0x8004 case LINK_GROUP_TRADE, CableClub_EventScript_ChooseLinkLeaderFrom2 case LINK_GROUP_SINGLE_BATTLE, CableClub_EventScript_ChooseLinkLeaderFrom2 @@ -1179,23 +1106,17 @@ CableClub_EventScript_ChooseLinkLeaderFrom2:: CableClub_EventScript_TryLeadGroup2Players:: call CableClub_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeaderFrom2 - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryLeadGroup2Players + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeaderFrom2 + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryLeadGroup2Players release return CableClub_EventScript_TryJoinGroup2Players:: call CableClub_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeaderFrom2 - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryJoinGroup2Players + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeaderFrom2 + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryJoinGroup2Players release return @@ -1212,23 +1133,17 @@ CableClub_EventScript_ChooseLinkLeaderFrom4:: CableClub_EventScript_TryLeadGroup4Players:: call CableClub_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeaderFrom4 - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryLeadGroup4Players + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeaderFrom4 + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryLeadGroup4Players release return CableClub_EventScript_TryJoinGroup4Players:: call CableClub_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeaderFrom4 - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryJoinGroup4Players + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeaderFrom4 + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryJoinGroup4Players release return @@ -1245,23 +1160,17 @@ CableClub_EventScript_ChooseLinkLeader:: CableClub_EventScript_TryLeadGroupXPlayers:: call CableClub_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryLeadGroupXPlayers + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryLeadGroupXPlayers release return CableClub_EventScript_TryJoinGroupXPlayers:: call CableClub_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq CableClub_EventScript_EnterWirelessLinkRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq CableClub_EventScript_ChooseLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq CableClub_EventScript_TryJoinGroupXPlayers + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, CableClub_EventScript_EnterWirelessLinkRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, CableClub_EventScript_ChooseLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, CableClub_EventScript_TryJoinGroupXPlayers release return @@ -1305,8 +1214,7 @@ EventScript_WirelessBoxResults:: lockall goto_if_unset FLAG_SYS_POKEDEX_GET, CableClub_EventScript_NotReadyYet specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, FALSE - goto_if_eq CableClub_EventScript_AdapterNotConnected + goto_if_eq VAR_RESULT, FALSE, CableClub_EventScript_AdapterNotConnected fadescreen FADE_TO_BLACK special ShowWirelessCommunicationScreen waitstate @@ -1387,8 +1295,7 @@ MossdeepCity_GameCorner_1F_EventScript_OldMan2:: message MossdeepCity_GameCorner_1F_Text_WelcomeCanYouWait waitmessage specialvar VAR_RESULT, IsWirelessAdapterConnected - compare VAR_RESULT, FALSE - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_AdapterNotConnected + goto_if_eq VAR_RESULT, FALSE, MossdeepCity_GameCorner_1F_EventScript_AdapterNotConnected delay 60 message MossdeepCity_GameCorner_1F_Text_PlayWhichGame waitmessage @@ -1403,18 +1310,15 @@ MossdeepCity_GameCorner_1F_EventScript_OldMan2:: MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: setvar VAR_0x8005, 0 special IsPokemonJumpSpeciesInParty - compare VAR_RESULT, FALSE - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon + goto_if_eq VAR_RESULT, FALSE, MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK setvar VAR_0x8005, 0 special ChooseMonForWirelessMinigame waitstate - compare VAR_0x8004, PARTY_SIZE - goto_if_ge MossdeepCity_GameCorner_1F_EventScript_AbortMinigame + goto_if_ge VAR_0x8004, PARTY_SIZE, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_AbortMinigame + goto_if_eq VAR_RESULT, 0, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame setvar VAR_0x8004, LINK_GROUP_POKEMON_JUMP goto MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader end @@ -1422,18 +1326,15 @@ MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: setvar VAR_0x8005, 1 special IsDodrioInParty - compare VAR_RESULT, FALSE - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon + goto_if_eq VAR_RESULT, FALSE, MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK setvar VAR_0x8005, 1 special ChooseMonForWirelessMinigame waitstate - compare VAR_0x8004, PARTY_SIZE - goto_if_ge MossdeepCity_GameCorner_1F_EventScript_AbortMinigame + goto_if_ge VAR_0x8004, PARTY_SIZE, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_AbortMinigame + goto_if_eq VAR_RESULT, 0, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame setvar VAR_0x8004, LINK_GROUP_BERRY_PICKING goto MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader end @@ -1451,23 +1352,17 @@ MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader:: MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader:: call CableClub_EventScript_TryBecomeLinkLeader - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, MossdeepCity_GameCorner_1F_EventScript_TryBecomeLinkLeader release return MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup:: call CableClub_EventScript_TryJoinLinkGroup - compare VAR_RESULT, LINKUP_SUCCESS - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom - compare VAR_RESULT, LINKUP_FAILED - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader - compare VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup + goto_if_eq VAR_RESULT, LINKUP_SUCCESS, MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom + goto_if_eq VAR_RESULT, LINKUP_FAILED, MossdeepCity_GameCorner_1F_EventScript_ChooseLinkLeader + goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, MossdeepCity_GameCorner_1F_EventScript_TryJoinLinkGroup release return @@ -1499,12 +1394,9 @@ MossdeepCity_GameCorner_1F_EventScript_AdapterNotConnected:: MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon:: msgbox MossdeepCity_GameCorner_1F_Text_ExplainRequiredMon, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MossdeepCity_GameCorner_1F_EventScript_AbortMinigame - compare VAR_0x8005, 0 - call_if_eq MossdeepCity_GameCorner_1F_EventScript_ExplainPokemonJumpRequirements - compare VAR_0x8005, 1 - call_if_eq MossdeepCity_GameCorner_1F_EventScript_ExplainDodrioBerryPickingRequirements + goto_if_eq VAR_RESULT, NO, MossdeepCity_GameCorner_1F_EventScript_AbortMinigame + call_if_eq VAR_0x8005, 0, MossdeepCity_GameCorner_1F_EventScript_ExplainPokemonJumpRequirements + call_if_eq VAR_0x8005, 1, MossdeepCity_GameCorner_1F_EventScript_ExplainDodrioBerryPickingRequirements goto MossdeepCity_GameCorner_1F_EventScript_AbortMinigame end diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index 5ff2abe0c4d6..04c62a6de317 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -18,8 +18,7 @@ LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist:: lock faceplayer - compare VAR_CONTEST_PRIZE_PICKUP, 0 - goto_if_ne LilycoveCity_ContestLobby_EventScript_PickUpPrize + goto_if_ne VAR_CONTEST_PRIZE_PICKUP, 0, LilycoveCity_ContestLobby_EventScript_PickUpPrize call_if_set FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_ReceptionWelcome call_if_unset FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_GivePokeblockCase goto LilycoveCity_ContestLobby_EventScript_AskEnterContest @@ -44,8 +43,7 @@ LilycoveCity_ContestLobby_EventScript_PickUpPrize:: LilycoveCity_ContestLobby_EventScript_GiveLuxuryBallAtCounter:: giveitem ITEM_LUXURY_BALL - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_ContestLobby_EventScript_NoRoomForLuxuryBallAtCounter setvar VAR_CONTEST_PRIZE_PICKUP, 0 closemessage release @@ -103,19 +101,13 @@ LilycoveCity_ContestLobby_EventScript_CancelEnterContest:: LilycoveCity_ContestLobby_EventScript_ChooseContestMon:: msgbox LilycoveCity_ContestLobby_Text_EnterWhichPokemon1, MSGBOX_DEFAULT choosecontestmon - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq LilycoveCity_ContestLobby_EventScript_CancelEnterContest + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, LilycoveCity_ContestLobby_EventScript_CancelEnterContest special TryEnterContestMon - compare VAR_RESULT, CANT_ENTER_CONTEST - goto_if_eq LilycoveCity_ContestLobby_EventScript_CantEnterLowRank - compare VAR_RESULT, CAN_ENTER_CONTEST_EQUAL_RANK - goto_if_eq LilycoveCity_ContestLobby_EventScript_EnterMon - compare VAR_RESULT, CAN_ENTER_CONTEST_HIGH_RANK - goto_if_eq LilycoveCity_ContestLobby_EventScript_ConfirmEntryAlreadyWon - compare VAR_RESULT, CANT_ENTER_CONTEST_EGG - goto_if_eq LilycoveCity_ContestLobby_EventScript_CantEnterEgg - compare VAR_RESULT, CANT_ENTER_CONTEST_FAINTED - goto_if_eq LilycoveCity_ContestLobby_EventScript_CantEnterFainted + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST, LilycoveCity_ContestLobby_EventScript_CantEnterLowRank + goto_if_eq VAR_RESULT, CAN_ENTER_CONTEST_EQUAL_RANK, LilycoveCity_ContestLobby_EventScript_EnterMon + goto_if_eq VAR_RESULT, CAN_ENTER_CONTEST_HIGH_RANK, LilycoveCity_ContestLobby_EventScript_ConfirmEntryAlreadyWon + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST_EGG, LilycoveCity_ContestLobby_EventScript_CantEnterEgg + goto_if_eq VAR_RESULT, CANT_ENTER_CONTEST_FAINTED, LilycoveCity_ContestLobby_EventScript_CantEnterFainted end LilycoveCity_ContestLobby_EventScript_ChooseContestRank:: @@ -293,8 +285,7 @@ ContestHall_EventScript_ContestGettingStarted:: return ContestHall_EventScript_GettingStarted:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_GettingStartedLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_GettingStartedLink lockall msgbox ContestHall_Text_GettingStartedParticipantsAsFollows, MSGBOX_DEFAULT releaseall @@ -302,8 +293,7 @@ ContestHall_EventScript_GettingStarted:: ContestHall_EventScript_GettingStartedLink:: specialvar VAR_RESULT, IsWirelessContest - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_GettingStartedWireless + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_GettingStartedWireless messageautoscroll ContestHall_Text_GettingStartedParticipantsAsFollowsLink waitmessage return @@ -326,16 +316,14 @@ ContestHall_EventScript_ShowContestMons:: call ContestHall_EventScript_TryWaitForLink call ContestHall_EventScript_TryWaitForLink addvar VAR_0x8006, 1 - compare VAR_0x8006, CONTESTANT_COUNT - goto_if_ne ContestHall_EventScript_ShowContestMons + goto_if_ne VAR_0x8006, CONTESTANT_COUNT, ContestHall_EventScript_ShowContestMons call ContestHall_EventScript_AudienceVote setvar VAR_TEMP_1, 6 return ContestHall_EventScript_TryWaitForLink:: specialvar VAR_RESULT, IsWirelessContest - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_WaitForLink + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_WaitForLink return ContestHall_EventScript_WaitForLink:: @@ -344,14 +332,10 @@ ContestHall_EventScript_WaitForLink:: return ContestHall_EventScript_ContestantWalkToCenter:: - compare VAR_0x8006, 0 - goto_if_eq ContestHall_EventScript_Player1WalkToCenter - compare VAR_0x8006, 1 - goto_if_eq ContestHall_EventScript_Player2WalkToCenter - compare VAR_0x8006, 2 - goto_if_eq ContestHall_EventScript_Player3WalkToCenter - compare VAR_0x8006, 3 - goto_if_eq ContestHall_EventScript_Player4WalkToCenter + goto_if_eq VAR_0x8006, 0, ContestHall_EventScript_Player1WalkToCenter + goto_if_eq VAR_0x8006, 1, ContestHall_EventScript_Player2WalkToCenter + goto_if_eq VAR_0x8006, 2, ContestHall_EventScript_Player3WalkToCenter + goto_if_eq VAR_0x8006, 3, ContestHall_EventScript_Player4WalkToCenter return ContestHall_EventScript_Player1WalkToCenter:: @@ -413,8 +397,7 @@ ContestHall_EventScript_ShowContestMonPic:: return ContestHall_EventScript_EntryXTrainersMon:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_EntryXTrainersMonLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_EntryXTrainersMonLink message ContestHall_Text_EntryXTrainersMon waitmessage return @@ -441,15 +424,13 @@ ContestHall_EventScript_AudienceVote:: return ContestHall_EventScript_AudienceWillVote:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_AudienceWillVoteLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_AudienceWillVoteLink msgbox ContestHall_Text_SeenContestantsAudienceWillVote, MSGBOX_DEFAULT return ContestHall_EventScript_AudienceWillVoteLink:: specialvar VAR_RESULT, IsWirelessContest - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_AudienceWillVoteWireless + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_AudienceWillVoteWireless messageautoscroll ContestHall_Text_SeenContestantsAudienceWillVote waitmessage return @@ -467,8 +448,7 @@ ContestHall_EventScript_AudienceWillVoteWireless:: return ContestHall_EventScript_VotingUnderWay:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_VotingUnderWayLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_VotingUnderWayLink message ContestHall_Text_VotingUnderWay return @@ -510,16 +490,11 @@ ContestHall_EventScript_AudienceReactToContestant:: @ and are set to 9 if they havent displayed a heart yet, and 1 if they have ContestHall_EventScript_AudienceHeartEmotes:: special GetContestMonCondition - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL - call_if_eq ContestHall_EventScript_GetNumberOfHeartsNormal - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER - call_if_eq ContestHall_EventScript_GetNumberOfHeartsSuper - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_HYPER - call_if_eq ContestHall_EventScript_GetNumberOfHeartsHyper - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_MASTER - call_if_eq ContestHall_EventScript_GetNumberOfHeartsMaster - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - call_if_eq ContestHall_EventScript_GetNumberOfHeartsLink + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL, ContestHall_EventScript_GetNumberOfHeartsNormal + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER, ContestHall_EventScript_GetNumberOfHeartsSuper + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_HYPER, ContestHall_EventScript_GetNumberOfHeartsHyper + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_MASTER, ContestHall_EventScript_GetNumberOfHeartsMaster + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_GetNumberOfHeartsLink setvar VAR_TEMP_1, 9 setvar VAR_TEMP_2, 9 setvar VAR_TEMP_3, 9 @@ -528,8 +503,7 @@ ContestHall_EventScript_AudienceHeartEmotes:: setvar VAR_TEMP_6, 9 setvar VAR_TEMP_7, 9 setvar VAR_TEMP_8, 9 - compare VAR_TEMP_0, 0 - call_if_gt ContestHall_EventScript_DisplayHearts + call_if_gt VAR_TEMP_0, 0, ContestHall_EventScript_DisplayHearts setvar VAR_TEMP_1, 0 setvar VAR_TEMP_2, 0 setvar VAR_TEMP_3, 0 @@ -543,124 +517,75 @@ ContestHall_EventScript_AudienceHeartEmotes:: ContestHall_EventScript_DisplayHearts:: setvar VAR_RESULT, 8 special GenerateContestRand - compare VAR_RESULT, 0 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember1 - compare VAR_RESULT, 1 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember2 - compare VAR_RESULT, 2 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember3 - compare VAR_RESULT, 3 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember4 - compare VAR_RESULT, 4 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember5 - compare VAR_RESULT, 5 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember6 - compare VAR_RESULT, 6 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember7 - compare VAR_RESULT, 7 - call_if_eq ContestHall_EventScript_TryDisplayHeartAudienceMember8 - compare VAR_TEMP_0, 0 @ Still more hearts to display - goto_if_gt ContestHall_EventScript_DisplayHearts + call_if_eq VAR_RESULT, 0, ContestHall_EventScript_TryDisplayHeartAudienceMember1 + call_if_eq VAR_RESULT, 1, ContestHall_EventScript_TryDisplayHeartAudienceMember2 + call_if_eq VAR_RESULT, 2, ContestHall_EventScript_TryDisplayHeartAudienceMember3 + call_if_eq VAR_RESULT, 3, ContestHall_EventScript_TryDisplayHeartAudienceMember4 + call_if_eq VAR_RESULT, 4, ContestHall_EventScript_TryDisplayHeartAudienceMember5 + call_if_eq VAR_RESULT, 5, ContestHall_EventScript_TryDisplayHeartAudienceMember6 + call_if_eq VAR_RESULT, 6, ContestHall_EventScript_TryDisplayHeartAudienceMember7 + call_if_eq VAR_RESULT, 7, ContestHall_EventScript_TryDisplayHeartAudienceMember8 + goto_if_gt VAR_TEMP_0, 0, ContestHall_EventScript_DisplayHearts @ Still more hearts to display waitmovement 0 return ContestHall_EventScript_GetNumberOfHeartsNormal:: - compare VAR_0x8004, 80 - goto_if_gt ContestHall_EventScript_Set8Hearts - compare VAR_0x8004, 70 - goto_if_gt ContestHall_EventScript_Set7Hearts - compare VAR_0x8004, 60 - goto_if_gt ContestHall_EventScript_Set6Hearts - compare VAR_0x8004, 50 - goto_if_gt ContestHall_EventScript_Set5Hearts - compare VAR_0x8004, 40 - goto_if_gt ContestHall_EventScript_Set4Hearts - compare VAR_0x8004, 30 - goto_if_gt ContestHall_EventScript_Set3Hearts - compare VAR_0x8004, 20 - goto_if_gt ContestHall_EventScript_Set2Hearts - compare VAR_0x8004, 10 - goto_if_gt ContestHall_EventScript_Set1Heart + goto_if_gt VAR_0x8004, 80, ContestHall_EventScript_Set8Hearts + goto_if_gt VAR_0x8004, 70, ContestHall_EventScript_Set7Hearts + goto_if_gt VAR_0x8004, 60, ContestHall_EventScript_Set6Hearts + goto_if_gt VAR_0x8004, 50, ContestHall_EventScript_Set5Hearts + goto_if_gt VAR_0x8004, 40, ContestHall_EventScript_Set4Hearts + goto_if_gt VAR_0x8004, 30, ContestHall_EventScript_Set3Hearts + goto_if_gt VAR_0x8004, 20, ContestHall_EventScript_Set2Hearts + goto_if_gt VAR_0x8004, 10, ContestHall_EventScript_Set1Heart setvar VAR_TEMP_0, 0 return ContestHall_EventScript_GetNumberOfHeartsSuper:: - compare VAR_0x8004, 230 - goto_if_gt ContestHall_EventScript_Set8Hearts - compare VAR_0x8004, 210 - goto_if_gt ContestHall_EventScript_Set7Hearts - compare VAR_0x8004, 190 - goto_if_gt ContestHall_EventScript_Set6Hearts - compare VAR_0x8004, 170 - goto_if_gt ContestHall_EventScript_Set5Hearts - compare VAR_0x8004, 150 - goto_if_gt ContestHall_EventScript_Set4Hearts - compare VAR_0x8004, 130 - goto_if_gt ContestHall_EventScript_Set3Hearts - compare VAR_0x8004, 110 - goto_if_gt ContestHall_EventScript_Set2Hearts - compare VAR_0x8004, 90 - goto_if_gt ContestHall_EventScript_Set1Heart + goto_if_gt VAR_0x8004, 230, ContestHall_EventScript_Set8Hearts + goto_if_gt VAR_0x8004, 210, ContestHall_EventScript_Set7Hearts + goto_if_gt VAR_0x8004, 190, ContestHall_EventScript_Set6Hearts + goto_if_gt VAR_0x8004, 170, ContestHall_EventScript_Set5Hearts + goto_if_gt VAR_0x8004, 150, ContestHall_EventScript_Set4Hearts + goto_if_gt VAR_0x8004, 130, ContestHall_EventScript_Set3Hearts + goto_if_gt VAR_0x8004, 110, ContestHall_EventScript_Set2Hearts + goto_if_gt VAR_0x8004, 90, ContestHall_EventScript_Set1Heart setvar VAR_TEMP_0, 0 return ContestHall_EventScript_GetNumberOfHeartsHyper:: - compare VAR_0x8004, 380 - goto_if_gt ContestHall_EventScript_Set8Hearts - compare VAR_0x8004, 350 - goto_if_gt ContestHall_EventScript_Set7Hearts - compare VAR_0x8004, 320 - goto_if_gt ContestHall_EventScript_Set6Hearts - compare VAR_0x8004, 290 - goto_if_gt ContestHall_EventScript_Set5Hearts - compare VAR_0x8004, 260 - goto_if_gt ContestHall_EventScript_Set4Hearts - compare VAR_0x8004, 230 - goto_if_gt ContestHall_EventScript_Set3Hearts - compare VAR_0x8004, 200 - goto_if_gt ContestHall_EventScript_Set2Hearts - compare VAR_0x8004, 170 - goto_if_gt ContestHall_EventScript_Set1Heart + goto_if_gt VAR_0x8004, 380, ContestHall_EventScript_Set8Hearts + goto_if_gt VAR_0x8004, 350, ContestHall_EventScript_Set7Hearts + goto_if_gt VAR_0x8004, 320, ContestHall_EventScript_Set6Hearts + goto_if_gt VAR_0x8004, 290, ContestHall_EventScript_Set5Hearts + goto_if_gt VAR_0x8004, 260, ContestHall_EventScript_Set4Hearts + goto_if_gt VAR_0x8004, 230, ContestHall_EventScript_Set3Hearts + goto_if_gt VAR_0x8004, 200, ContestHall_EventScript_Set2Hearts + goto_if_gt VAR_0x8004, 170, ContestHall_EventScript_Set1Heart setvar VAR_TEMP_0, 0 return ContestHall_EventScript_GetNumberOfHeartsMaster:: - compare VAR_0x8004, 600 - goto_if_gt ContestHall_EventScript_Set8Hearts - compare VAR_0x8004, 560 - goto_if_gt ContestHall_EventScript_Set7Hearts - compare VAR_0x8004, 520 - goto_if_gt ContestHall_EventScript_Set6Hearts - compare VAR_0x8004, 480 - goto_if_gt ContestHall_EventScript_Set5Hearts - compare VAR_0x8004, 440 - goto_if_gt ContestHall_EventScript_Set4Hearts - compare VAR_0x8004, 400 - goto_if_gt ContestHall_EventScript_Set3Hearts - compare VAR_0x8004, 360 - goto_if_gt ContestHall_EventScript_Set2Hearts - compare VAR_0x8004, 320 - goto_if_gt ContestHall_EventScript_Set1Heart + goto_if_gt VAR_0x8004, 600, ContestHall_EventScript_Set8Hearts + goto_if_gt VAR_0x8004, 560, ContestHall_EventScript_Set7Hearts + goto_if_gt VAR_0x8004, 520, ContestHall_EventScript_Set6Hearts + goto_if_gt VAR_0x8004, 480, ContestHall_EventScript_Set5Hearts + goto_if_gt VAR_0x8004, 440, ContestHall_EventScript_Set4Hearts + goto_if_gt VAR_0x8004, 400, ContestHall_EventScript_Set3Hearts + goto_if_gt VAR_0x8004, 360, ContestHall_EventScript_Set2Hearts + goto_if_gt VAR_0x8004, 320, ContestHall_EventScript_Set1Heart setvar VAR_TEMP_0, 0 return ContestHall_EventScript_GetNumberOfHeartsLink:: - compare VAR_0x8004, 600 - goto_if_gt ContestHall_EventScript_Set8Hearts - compare VAR_0x8004, 550 - goto_if_gt ContestHall_EventScript_Set7Hearts - compare VAR_0x8004, 500 - goto_if_gt ContestHall_EventScript_Set6Hearts - compare VAR_0x8004, 450 - goto_if_gt ContestHall_EventScript_Set5Hearts - compare VAR_0x8004, 400 - goto_if_gt ContestHall_EventScript_Set4Hearts - compare VAR_0x8004, 300 - goto_if_gt ContestHall_EventScript_Set3Hearts - compare VAR_0x8004, 200 - goto_if_gt ContestHall_EventScript_Set2Hearts - compare VAR_0x8004, 100 - goto_if_gt ContestHall_EventScript_Set1Heart + goto_if_gt VAR_0x8004, 600, ContestHall_EventScript_Set8Hearts + goto_if_gt VAR_0x8004, 550, ContestHall_EventScript_Set7Hearts + goto_if_gt VAR_0x8004, 500, ContestHall_EventScript_Set6Hearts + goto_if_gt VAR_0x8004, 450, ContestHall_EventScript_Set5Hearts + goto_if_gt VAR_0x8004, 400, ContestHall_EventScript_Set4Hearts + goto_if_gt VAR_0x8004, 300, ContestHall_EventScript_Set3Hearts + goto_if_gt VAR_0x8004, 200, ContestHall_EventScript_Set2Hearts + goto_if_gt VAR_0x8004, 100, ContestHall_EventScript_Set1Heart setvar VAR_TEMP_0, 0 return @@ -697,8 +622,7 @@ ContestHall_EventScript_Set8Hearts:: return ContestHall_EventScript_TryDisplayHeartAudienceMember1:: - compare VAR_TEMP_1, 1 - goto_if_eq ContestHall_EventScript_AudienceMember1AlreadyEmoted + goto_if_eq VAR_TEMP_1, 1, ContestHall_EventScript_AudienceMember1AlreadyEmoted applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -710,8 +634,7 @@ ContestHall_EventScript_AudienceMember1AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember2:: - compare VAR_TEMP_2, 1 - goto_if_eq ContestHall_EventScript_AudienceMember2AlreadyEmoted + goto_if_eq VAR_TEMP_2, 1, ContestHall_EventScript_AudienceMember2AlreadyEmoted applymovement LOCALID_AUDIENCE_2, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -723,8 +646,7 @@ ContestHall_EventScript_AudienceMember2AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember3:: - compare VAR_TEMP_3, 1 - goto_if_eq ContestHall_EventScript_AudienceMember3AlreadyEmoted + goto_if_eq VAR_TEMP_3, 1, ContestHall_EventScript_AudienceMember3AlreadyEmoted applymovement LOCALID_AUDIENCE_3, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -736,8 +658,7 @@ ContestHall_EventScript_AudienceMember3AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember4:: - compare VAR_TEMP_4, 1 - goto_if_eq ContestHall_EventScript_Audience4MemberAlreadyEmoted + goto_if_eq VAR_TEMP_4, 1, ContestHall_EventScript_Audience4MemberAlreadyEmoted applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -749,8 +670,7 @@ ContestHall_EventScript_Audience4MemberAlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember5:: - compare VAR_TEMP_5, 1 - goto_if_eq ContestHall_EventScript_AudienceMember5AlreadyEmoted + goto_if_eq VAR_TEMP_5, 1, ContestHall_EventScript_AudienceMember5AlreadyEmoted applymovement LOCALID_AUDIENCE_5, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -762,8 +682,7 @@ ContestHall_EventScript_AudienceMember5AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember6:: - compare VAR_TEMP_6, 1 - goto_if_eq ContestHall_EventScript_AudienceMember6AlreadyEmoted + goto_if_eq VAR_TEMP_6, 1, ContestHall_EventScript_AudienceMember6AlreadyEmoted applymovement LOCALID_AUDIENCE_6, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -775,8 +694,7 @@ ContestHall_EventScript_AudienceMember6AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember7:: - compare VAR_TEMP_7, 1 - goto_if_eq ContestHall_EventScript_AudienceMember7AlreadyEmoted + goto_if_eq VAR_TEMP_7, 1, ContestHall_EventScript_AudienceMember7AlreadyEmoted applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -788,8 +706,7 @@ ContestHall_EventScript_AudienceMember7AlreadyEmoted:: return ContestHall_EventScript_TryDisplayHeartAudienceMember8:: - compare VAR_TEMP_8, 1 - goto_if_eq ContestHall_EventScript_AudienceMember8AlreadyEmoted + goto_if_eq VAR_TEMP_8, 1, ContestHall_EventScript_AudienceMember8AlreadyEmoted applymovement LOCALID_ARTIST, ContestHall_Movement_Heart playse SE_PIN delay 14 @@ -870,15 +787,13 @@ ContestHall_EventScript_DoContestAppeals:: return ContestHall_EventScript_LetsAppeal:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_LetsAppealLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_LetsAppealLink msgbox ContestHall_Text_VotingCompleteLetsAppeal, MSGBOX_DEFAULT return ContestHall_EventScript_LetsAppealLink:: specialvar VAR_RESULT, IsWirelessContest - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_LetsAppealWireless + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_LetsAppealWireless messageautoscroll ContestHall_Text_VotingCompleteLetsAppeal waitmessage return @@ -920,8 +835,7 @@ ContestHall_EventScript_ContestResults:: return ContestHall_EventScript_ThatsItForJudging:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_ThatsItForJudgingLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_ThatsItForJudgingLink msgbox ContestHall_Text_ThatsItForJudging, MSGBOX_DEFAULT return @@ -933,8 +847,7 @@ ContestHall_EventScript_ThatsItForJudgingLink:: return ContestHall_EventScript_ThankYouForAppeals:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_ThankYouForAppealsLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_ThankYouForAppealsLink msgbox ContestHall_Text_ThankYouForAppeals, MSGBOX_DEFAULT return @@ -946,8 +859,7 @@ ContestHall_EventScript_ThankYouForAppealsLink:: return ContestHall_EventScript_JudgeLooksReady:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_JudgeLooksReadyLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_JudgeLooksReadyLink msgbox ContestHall_Text_JudgeLooksReady, MSGBOX_DEFAULT return @@ -959,8 +871,7 @@ ContestHall_EventScript_JudgeLooksReadyLink:: return ContestHall_EventScript_WeWillDeclareWinner:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_WeWillDeclareWinnerLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_WeWillDeclareWinnerLink msgbox ContestHall_Text_WeWillNowDeclareWinner, MSGBOX_DEFAULT return @@ -1010,8 +921,7 @@ ContestHall_EventScript_CongratulateWinner:: return ContestHall_EventScript_CongratsWinner:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_CongratsWinnerLink + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_CongratsWinnerLink msgbox ContestHall_Text_CongratsTrainerXandMon, MSGBOX_DEFAULT return @@ -1023,8 +933,7 @@ ContestHall_EventScript_CongratsWinnerLink:: ContestHall_EventScript_AudienceLookAround:: addvar VAR_TEMP_1, 1 lockall - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL - call_if_gt ContestHall_EventScript_VObjectAudienceLookAround + 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 @@ -1033,8 +942,7 @@ ContestHall_EventScript_AudienceLookAround:: applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_AudienceMemberLookDown applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_AudienceMemberLookUp applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_AudienceMemberLookLeft - compare VAR_TEMP_1, 4 - goto_if_ne ContestHall_EventScript_AudienceLookAround + goto_if_ne VAR_TEMP_1, 4, ContestHall_EventScript_AudienceLookAround delay 30 return @@ -1108,8 +1016,7 @@ ContestHall_EventScript_VObjectAudienceLookAround:: return ContestHall_EventScript_GiveWinnerPrize:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_LINK - goto_if_eq ContestHall_EventScript_EndLinkContest + goto_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_LINK, ContestHall_EventScript_EndLinkContest call ContestHall_EventScript_CheckShouldSkipPrize goto_if_set FLAG_TEMP_2, ContestHall_EventScript_SkipPrize lockall @@ -1122,8 +1029,7 @@ ContestHall_EventScript_GiveWinnerPrize:: call ContestHall_EventScript_AudienceLookAround delay 30 special ShouldReadyContestArtist - compare VAR_0x8004, TRUE - goto_if_eq ContestHall_EventScript_SetReadyForContestArtist + goto_if_eq VAR_0x8004, TRUE, ContestHall_EventScript_SetReadyForContestArtist return ContestHall_EventScript_SkipPrize:: @@ -1132,25 +1038,21 @@ ContestHall_EventScript_SkipPrize:: releaseall delay 90 special ShouldReadyContestArtist - compare VAR_0x8004, TRUE - goto_if_eq ContestHall_EventScript_SetReadyForContestArtist + goto_if_eq VAR_0x8004, TRUE, ContestHall_EventScript_SetReadyForContestArtist return ContestHall_EventScript_CheckShouldSkipPrize:: specialvar VAR_RESULT, HasMonWonThisContestBefore - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_CheckPlayerWon + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_CheckPlayerWon return ContestHall_EventScript_CheckPlayerWon:: special GetContestWinnerId - compare VAR_0x8005, 3 - goto_if_eq ContestHall_EventScript_CheckRankIsMaster + goto_if_eq VAR_0x8005, 3, ContestHall_EventScript_CheckRankIsMaster return ContestHall_EventScript_CheckRankIsMaster:: - compare VAR_CONTEST_RANK, CONTEST_RANK_MASTER - goto_if_eq ContestHall_EventScript_DontSkipPrize + goto_if_eq VAR_CONTEST_RANK, CONTEST_RANK_MASTER, ContestHall_EventScript_DontSkipPrize setflag FLAG_TEMP_2 return @@ -1171,8 +1073,7 @@ ContestHall_EventScript_EndLinkContest:: special GetContestPlayerId special GetContestWinnerId special ShouldReadyContestArtist - compare VAR_0x8004, TRUE - goto_if_eq ContestHall_EventScript_SetReadyForLinkContestArtist + goto_if_eq VAR_0x8004, TRUE, ContestHall_EventScript_SetReadyForLinkContestArtist closemessage return @@ -1223,21 +1124,17 @@ ContestHall_EventScript_Player4ApproachForPrize:: @ In NPC Contests, the player is always entry 4 (id number 3) ContestHall_EventScript_GivePrizeIfWinner:: special GetContestWinnerId - compare VAR_0x8005, 3 - goto_if_eq ContestHall_EventScript_GiveContestPrizes + goto_if_eq VAR_0x8005, 3, ContestHall_EventScript_GiveContestPrizes lockall msgbox ContestHall_Text_CongratsPleaseCompeteAgain, MSGBOX_DEFAULT releaseall return ContestHall_EventScript_GiveContestPrizes:: - compare VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER - call_if_eq ContestHall_EventScript_SetSketchFlag + call_if_eq VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_SUPER, ContestHall_EventScript_SetSketchFlag specialvar VAR_RESULT, HasMonWonThisContestBefore - compare VAR_RESULT, FALSE - goto_if_eq ContestHall_EventScript_ReceiveContestRibbon - compare VAR_CONTEST_RANK, CONTEST_RANK_MASTER - goto_if_eq ContestHall_EventScript_GiveLuxuryBall + goto_if_eq VAR_RESULT, FALSE, ContestHall_EventScript_ReceiveContestRibbon + goto_if_eq VAR_CONTEST_RANK, CONTEST_RANK_MASTER, ContestHall_EventScript_GiveLuxuryBall lockall msgbox ContestHall_Text_CongratsPleaseCompeteAgain, MSGBOX_DEFAULT releaseall @@ -1253,8 +1150,7 @@ ContestHall_EventScript_NoRoomForLuxuryBall:: ContestHall_EventScript_GiveLuxuryBall:: giveitem ITEM_LUXURY_BALL - compare VAR_RESULT, FALSE - goto_if_eq ContestHall_EventScript_NoRoomForLuxuryBall + goto_if_eq VAR_RESULT, FALSE, ContestHall_EventScript_NoRoomForLuxuryBall lockall msgbox ContestHall_Text_CongratsPleaseCompeteAgain, MSGBOX_DEFAULT releaseall @@ -1460,8 +1356,7 @@ ContestHall_Movement_Player2ApproachForPrize: @ IsContestWithRSPlayer has no side effect, so this is nop ContestHall_EventScript_CheckIfContestWithRSPlayer:: specialvar VAR_RESULT, IsContestWithRSPlayer - compare VAR_RESULT, TRUE - goto_if_eq ContestHall_EventScript_RetRSPlayer + goto_if_eq VAR_RESULT, TRUE, ContestHall_EventScript_RetRSPlayer return ContestHall_EventScript_RetRSPlayer:: @@ -1469,8 +1364,7 @@ ContestHall_EventScript_RetRSPlayer:: LilycoveCity_ContestLobby_EventScript_DelayIfContestWithRSPlayer:: specialvar VAR_RESULT, IsContestWithRSPlayer - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer return LilycoveCity_ContestLobby_EventScript_DelayForRSPlayer:: diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index ba61fb0047a3..cb053f2c401d 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -5,23 +5,18 @@ Route117_EventScript_DaycareMan:: faceplayer special GetDaycareMonNicknames specialvar VAR_RESULT, GetDaycareState - compare VAR_RESULT, DAYCARE_EGG_WAITING - goto_if_eq Route117_EventScript_DaycareEggWaiting - compare VAR_RESULT, DAYCARE_ONE_MON - goto_if_eq Route117_EventScript_CheckOnOneMon - compare VAR_RESULT, DAYCARE_TWO_MONS - goto_if_eq Route117_EventScript_CheckOnTwoMons + goto_if_eq VAR_RESULT, DAYCARE_EGG_WAITING, Route117_EventScript_DaycareEggWaiting + goto_if_eq VAR_RESULT, DAYCARE_ONE_MON, Route117_EventScript_CheckOnOneMon + goto_if_eq VAR_RESULT, DAYCARE_TWO_MONS, Route117_EventScript_CheckOnTwoMons msgbox Route117_Text_SeeWifeIfYoudLikeMeToRaiseMon, MSGBOX_DEFAULT release end Route117_EventScript_DaycareEggWaiting:: msgbox Route117_Text_DoYouWantEgg, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_EventScript_DaycareAcceptEgg + goto_if_eq VAR_RESULT, YES, Route117_EventScript_DaycareAcceptEgg msgbox Route117_Text_IWillKeepDoYouWantIt, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_EventScript_DaycareAcceptEgg + goto_if_eq VAR_RESULT, YES, Route117_EventScript_DaycareAcceptEgg msgbox Route117_Text_IllKeepIt, MSGBOX_DEFAULT clearflag FLAG_PENDING_DAYCARE_EGG special RejectEggFromDayCare @@ -30,8 +25,7 @@ Route117_EventScript_DaycareEggWaiting:: Route117_EventScript_DaycareAcceptEgg:: specialvar VAR_RESULT, CalculatePlayerPartyCount - compare VAR_RESULT, PARTY_SIZE - goto_if_ne Route117_EventScript_DaycareReceiveEgg + goto_if_ne VAR_RESULT, PARTY_SIZE, Route117_EventScript_DaycareReceiveEgg msgbox Route117_Text_YouHaveNoRoomForIt, MSGBOX_DEFAULT release end @@ -49,8 +43,7 @@ Route117_EventScript_DaycareReceiveEgg:: Route117_EventScript_CheckMonReceivedMail:: specialvar VAR_RESULT, CheckDaycareMonReceivedMail - compare VAR_RESULT, 1 - call_if_eq Route117_EventScript_MonReceivedMail + call_if_eq VAR_RESULT, 1, Route117_EventScript_MonReceivedMail return Route117_EventScript_MonReceivedMail:: @@ -83,35 +76,27 @@ Route117_PokemonDayCare_EventScript_DaycareWoman:: lock faceplayer specialvar VAR_RESULT, GetDaycareState - compare VAR_RESULT, DAYCARE_EGG_WAITING - goto_if_eq Route117_PokemonDayCare_EventScript_EggWaiting - compare VAR_RESULT, DAYCARE_ONE_MON - goto_if_eq Route117_PokemonDayCare_EventScript_OneMonInDaycare - compare VAR_RESULT, DAYCARE_TWO_MONS - goto_if_eq Route117_PokemonDayCare_EventScript_TwoMonsInDaycare + goto_if_eq VAR_RESULT, DAYCARE_EGG_WAITING, Route117_PokemonDayCare_EventScript_EggWaiting + goto_if_eq VAR_RESULT, DAYCARE_ONE_MON, Route117_PokemonDayCare_EventScript_OneMonInDaycare + goto_if_eq VAR_RESULT, DAYCARE_TWO_MONS, Route117_PokemonDayCare_EventScript_TwoMonsInDaycare msgbox Route117_PokemonDayCare_Text_WouldYouLikeUsToRaiseAMon, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_GiveMonToRaise + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_GiveMonToRaise msgbox Route117_PokemonDayCare_Text_FineThenComeAgain, MSGBOX_DEFAULT release end Route117_PokemonDayCare_EventScript_GiveMonToRaise:: specialvar VAR_RESULT, CountPartyNonEggMons - compare VAR_RESULT, 1 - goto_if_eq Route117_PokemonDayCare_EventScript_OnlyOneMon + goto_if_eq VAR_RESULT, 1, Route117_PokemonDayCare_EventScript_OnlyOneMon specialvar VAR_RESULT, CountPartyAliveNonEggMons - compare VAR_RESULT, 2 - goto_if_eq Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons + goto_if_eq VAR_RESULT, 2, Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons msgbox Route117_PokemonDayCare_Text_WhichMonShouldWeRaise, MSGBOX_DEFAULT fadescreen FADE_TO_BLACK special ChooseSendDaycareMon waitstate - compare VAR_0x8004, PARTY_NOTHING_CHOSEN - goto_if_eq Route117_PokemonDayCare_EventScript_ComeAgain + goto_if_eq VAR_0x8004, PARTY_NOTHING_CHOSEN, Route117_PokemonDayCare_EventScript_ComeAgain specialvar VAR_RESULT, CountPartyAliveNonEggMons_IgnoreVar0x8004Slot - compare VAR_RESULT, 0 - goto_if_eq Route117_PokemonDayCare_EventScript_OnlyOneAliveMon + goto_if_eq VAR_RESULT, 0, Route117_PokemonDayCare_EventScript_OnlyOneAliveMon specialvar VAR_0x8005, GetSelectedMonNicknameAndSpecies waitse playmoncry VAR_0x8005, CRY_MODE_NORMAL @@ -120,8 +105,7 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: special StoreSelectedPokemonInDaycare incrementgamestat GAME_STAT_USED_DAYCARE specialvar VAR_RESULT, GetDaycareState - compare VAR_RESULT, DAYCARE_ONE_MON - goto_if_eq Route117_PokemonDayCare_EventScript_CanRaiseOneMore + goto_if_eq VAR_RESULT, DAYCARE_ONE_MON, Route117_PokemonDayCare_EventScript_CanRaiseOneMore release end @@ -132,8 +116,7 @@ Route117_PokemonDayCare_EventScript_ComeAgain:: Route117_PokemonDayCare_EventScript_CanRaiseOneMore:: msgbox Route117_PokemonDayCare_Text_WeCanRaiseOneMore, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_GiveMonToRaise + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_GiveMonToRaise goto Route117_PokemonDayCare_EventScript_ComeAgain end @@ -163,8 +146,7 @@ Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels:: Route117_PokemonDayCare_EventScript_DisplayLevelsGained:: specialvar VAR_RESULT, GetNumLevelsGainedFromDaycare - compare VAR_RESULT, 0 - call_if_ne Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels + call_if_ne VAR_RESULT, 0, Route117_PokemonDayCare_EventScript_YourMonHasGrownXLevels return Route117_PokemonDayCare_EventScript_OneMonInDaycare:: @@ -172,42 +154,35 @@ Route117_PokemonDayCare_EventScript_OneMonInDaycare:: setvar VAR_0x8004, 0 call Route117_PokemonDayCare_EventScript_DisplayLevelsGained msgbox Route117_PokemonDayCare_Text_WeCanRaiseOneMore, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_GiveMonToRaise + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_GiveMonToRaise msgbox Route117_PokemonDayCare_Text_TakeYourMonBack, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_TryRetrieveMon + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_TryRetrieveMon goto Route117_PokemonDayCare_EventScript_ComeAgain end Route117_PokemonDayCare_EventScript_TryRetrieveMon:: specialvar VAR_RESULT, CalculatePlayerPartyCount - compare VAR_RESULT, PARTY_SIZE - goto_if_eq Route117_PokemonDayCare_EventScript_NoRoom + goto_if_eq VAR_RESULT, PARTY_SIZE, Route117_PokemonDayCare_EventScript_NoRoom specialvar VAR_RESULT, GetDaycareState setvar VAR_0x8004, 0 - compare VAR_RESULT, DAYCARE_ONE_MON - goto_if_eq Route117_PokemonDayCare_EventScript_CostPrompt + goto_if_eq VAR_RESULT, DAYCARE_ONE_MON, Route117_PokemonDayCare_EventScript_CostPrompt special ShowDaycareLevelMenu waitstate copyvar VAR_0x8004, VAR_RESULT - compare VAR_RESULT, DAYCARE_EXITED_LEVEL_MENU - goto_if_eq Route117_PokemonDayCare_EventScript_ComeAgain + goto_if_eq VAR_RESULT, DAYCARE_EXITED_LEVEL_MENU, Route117_PokemonDayCare_EventScript_ComeAgain goto Route117_PokemonDayCare_EventScript_CostPrompt end Route117_PokemonDayCare_EventScript_CostPrompt:: special GetDaycareCost msgbox Route117_PokemonDayCare_Text_ItWillCostX, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_CheckEnoughMoney + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_CheckEnoughMoney goto Route117_PokemonDayCare_EventScript_ComeAgain end Route117_PokemonDayCare_EventScript_CheckEnoughMoney:: specialvar VAR_RESULT, IsEnoughForCostInVar0x8005 - compare VAR_RESULT, 1 - goto_if_eq Route117_PokemonDayCare_EventScript_RetrieveMon + goto_if_eq VAR_RESULT, 1, Route117_PokemonDayCare_EventScript_RetrieveMon msgbox Route117_PokemonDayCare_Text_NotEnoughMoney, MSGBOX_DEFAULT release end @@ -224,15 +199,13 @@ Route117_PokemonDayCare_EventScript_RetrieveMon:: msgbox Route117_PokemonDayCare_Text_TookBackMon, MSGBOX_DEFAULT waitmoncry specialvar VAR_RESULT, GetDaycareState - compare VAR_RESULT, DAYCARE_ONE_MON - goto_if_eq Route117_PokemonDayCare_EventScript_AskRetrieveOtherMon + goto_if_eq VAR_RESULT, DAYCARE_ONE_MON, Route117_PokemonDayCare_EventScript_AskRetrieveOtherMon goto Route117_PokemonDayCare_EventScript_ComeAgain end Route117_PokemonDayCare_EventScript_AskRetrieveOtherMon:: msgbox Route117_PokemonDayCare_Text_TakeOtherOneBackToo, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_TryRetrieveMon + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_TryRetrieveMon goto Route117_PokemonDayCare_EventScript_ComeAgain end @@ -274,8 +247,7 @@ Route117_PokemonDayCare_EventScript_TwoMonsInDaycare:: setvar VAR_0x8004, 1 call Route117_PokemonDayCare_EventScript_DisplayLevelsGained msgbox Route117_PokemonDayCare_Text_TakeYourMonBack, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route117_PokemonDayCare_EventScript_TryRetrieveMon + goto_if_eq VAR_RESULT, YES, Route117_PokemonDayCare_EventScript_TryRetrieveMon msgbox Route117_PokemonDayCare_Text_ComeAgain, MSGBOX_DEFAULT release end @@ -284,8 +256,7 @@ Route117_PokemonDayCare_EventScript_TwoMonsInDaycare:: Route117_PokemonDayCare_EventScript_UnusedRetrieveMon:: special ShowDaycareLevelMenu waitstate - compare VAR_RESULT, 2 - goto_if_eq Route117_PokemonDayCare_EventScript_ComeAgain + goto_if_eq VAR_RESULT, 2, Route117_PokemonDayCare_EventScript_ComeAgain copyvar VAR_0x8004, VAR_RESULT specialvar VAR_RESULT, TakePokemonFromDaycare msgbox Route117_PokemonDayCare_Text_HeresYourMon, MSGBOX_DEFAULT diff --git a/data/scripts/field_move_scripts.inc b/data/scripts/field_move_scripts.inc index 39a04ae1a155..3e99fc08e2d4 100644 --- a/data/scripts/field_move_scripts.inc +++ b/data/scripts/field_move_scripts.inc @@ -3,14 +3,12 @@ EventScript_CutTree:: lockall goto_if_unset FLAG_BADGE01_GET, EventScript_CheckTreeCantCut checkpartymove MOVE_CUT - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CheckTreeCantCut + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CheckTreeCantCut setfieldeffectargument 0, VAR_RESULT bufferpartymonnick STR_VAR_1, VAR_RESULT buffermovename STR_VAR_2, MOVE_CUT msgbox Text_WantToCut, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_CancelCut + goto_if_eq VAR_RESULT, NO, EventScript_CancelCut msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage dofieldeffect FLDEFF_USE_CUT_ON_TREE @@ -64,14 +62,12 @@ EventScript_RockSmash:: lockall goto_if_unset FLAG_BADGE03_GET, EventScript_CantSmashRock checkpartymove MOVE_ROCK_SMASH - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CantSmashRock + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CantSmashRock setfieldeffectargument 0, VAR_RESULT bufferpartymonnick STR_VAR_1, VAR_RESULT buffermovename STR_VAR_2, MOVE_ROCK_SMASH msgbox Text_WantToSmash, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_CancelSmash + goto_if_eq VAR_RESULT, NO, EventScript_CancelSmash msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage dofieldeffect FLDEFF_USE_ROCK_SMASH @@ -92,11 +88,9 @@ EventScript_SmashRock:: waitmovement 0 removeobject VAR_LAST_TALKED specialvar VAR_RESULT, TryUpdateRusturfTunnelState - compare VAR_RESULT, TRUE - goto_if_eq EventScript_EndSmash + goto_if_eq VAR_RESULT, TRUE, EventScript_EndSmash special RockSmashWildEncounter - compare VAR_RESULT, FALSE - goto_if_eq EventScript_EndSmash + goto_if_eq VAR_RESULT, FALSE, EventScript_EndSmash waitstate releaseall end @@ -132,12 +126,10 @@ EventScript_StrengthBoulder:: goto_if_unset FLAG_BADGE04_GET, EventScript_CantStrength goto_if_set FLAG_SYS_USE_STRENGTH, EventScript_CheckActivatedBoulder checkpartymove MOVE_STRENGTH - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CantStrength + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CantStrength setfieldeffectargument 0, VAR_RESULT msgbox Text_WantToStrength, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_CancelStrength + goto_if_eq VAR_RESULT, NO, EventScript_CancelStrength closemessage dofieldeffect FLDEFF_USE_STRENGTH waitstate @@ -193,13 +185,11 @@ Text_StrengthActivated: EventScript_UseWaterfall:: lockall checkpartymove MOVE_WATERFALL - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CantWaterfall + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CantWaterfall bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT msgbox Text_WantToWaterfall, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_EndWaterfall + goto_if_eq VAR_RESULT, NO, EventScript_EndWaterfall msgbox Text_MonUsedWaterfall, MSGBOX_DEFAULT dofieldeffect FLDEFF_USE_WATERFALL goto EventScript_EndWaterfall @@ -228,14 +218,12 @@ Text_MonUsedWaterfall: EventScript_UseDive:: lockall checkpartymove MOVE_DIVE - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CantDive + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CantDive bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT setfieldeffectargument 1, 1 msgbox Text_WantToDive, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_EndDive + goto_if_eq VAR_RESULT, NO, EventScript_EndDive msgbox Text_MonUsedDive, MSGBOX_DEFAULT dofieldeffect FLDEFF_USE_DIVE goto EventScript_EndDive @@ -253,14 +241,12 @@ EventScript_EndDive:: EventScript_UseDiveUnderwater:: lockall checkpartymove MOVE_DIVE - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_CantSurface + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_CantSurface bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT setfieldeffectargument 1, 1 msgbox Text_WantToSurface, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_EndSurface + goto_if_eq VAR_RESULT, NO, EventScript_EndSurface msgbox Text_MonUsedDive, MSGBOX_DEFAULT dofieldeffect FLDEFF_USE_DIVE goto EventScript_EndSurface diff --git a/data/scripts/field_poison.inc b/data/scripts/field_poison.inc index a4f9b90b6b46..ddda34ebaae6 100644 --- a/data/scripts/field_poison.inc +++ b/data/scripts/field_poison.inc @@ -2,10 +2,8 @@ EventScript_FieldPoison:: lockall special TryFieldPoisonWhiteOut waitstate - compare VAR_RESULT, FLDPSN_WHITEOUT - goto_if_eq EventScript_FieldWhiteOut - compare VAR_RESULT, FLDPSN_FRONTIER_WHITEOUT - goto_if_eq EventScript_FrontierFieldWhiteOut + goto_if_eq VAR_RESULT, FLDPSN_WHITEOUT, EventScript_FieldWhiteOut + goto_if_eq VAR_RESULT, FLDPSN_FRONTIER_WHITEOUT, EventScript_FrontierFieldWhiteOut releaseall end @@ -30,16 +28,12 @@ EventScript_FrontierFieldWhiteOut:: waitmessage waitbuttonpress pike_inchallenge - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattlePike_EventScript_Retire + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePike_EventScript_Retire pyramid_inchallenge - compare VAR_RESULT, 1 @ On Pyramid floor - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost - compare VAR_RESULT, 2 @ On Pyramid peak - goto_if_eq BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost + 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 trainerhill_inchallenge - compare VAR_RESULT, TRUE - goto_if_eq TrainerHill_1F_EventScript_Lost + goto_if_eq VAR_RESULT, TRUE, TrainerHill_1F_EventScript_Lost special Script_FadeOutMapMusic waitstate fadescreen FADE_TO_BLACK diff --git a/data/scripts/gabby_and_ty.inc b/data/scripts/gabby_and_ty.inc index 68be27a0287a..e3dbdfd665b1 100644 --- a/data/scripts/gabby_and_ty.inc +++ b/data/scripts/gabby_and_ty.inc @@ -199,12 +199,9 @@ GabbyAndTy_EventScript_TyBattle6:: GabbyAndTy_EventScript_FirstInterview:: special GabbyAndTyBeforeInterview special GetGabbyAndTyLocalIds - compare VAR_FACING, DIR_NORTH - call_if_eq GabbyAndTy_EventScript_FacePlayerNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq GabbyAndTy_EventScript_FacePlayerSouth - compare VAR_FACING, DIR_EAST - call_if_eq GabbyAndTy_EventScript_FacePlayerEast + call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth + call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth + call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou msgbox GabbyAndTy_Text_WhoAreYouInterview, MSGBOX_YESNO goto GabbyAndTy_EventScript_Interview @@ -230,16 +227,12 @@ GabbyAndTy_EventScript_FacePlayerEast:: GabbyAndTy_EventScript_RequestInterview:: special GabbyAndTyBeforeInterview special GetGabbyAndTyLocalIds - compare VAR_FACING, DIR_NORTH - call_if_eq GabbyAndTy_EventScript_FacePlayerNorth - compare VAR_FACING, DIR_SOUTH - call_if_eq GabbyAndTy_EventScript_FacePlayerSouth - compare VAR_FACING, DIR_EAST - call_if_eq GabbyAndTy_EventScript_FacePlayerEast + call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth + call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth + call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou specialvar VAR_RESULT, GabbyAndTyGetLastQuote - compare VAR_RESULT, 0 - goto_if_eq GabbyAndTy_EventScript_DidntInterviewLastTime + goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DidntInterviewLastTime msgbox GabbyAndTy_Text_QuoteFromLastInterview, MSGBOX_DEFAULT specialvar VAR_RESULT, GabbyAndTyGetLastBattleTrivia switch VAR_RESULT @@ -293,15 +286,13 @@ GabbyAndTy_EventScript_RequestInterviewLostAMon:: end GabbyAndTy_EventScript_Interview:: - compare VAR_RESULT, NO - goto_if_eq GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut + goto_if_eq VAR_RESULT, NO, GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut msgbox GabbyAndTy_Text_DescribeYourFeelings, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_GABBY_AND_TY call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut + goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut msgbox GabbyAndTy_Text_PerfectWellBeSeeingYou, MSGBOX_DEFAULT special GabbyAndTyAfterInterview setflag FLAG_TEMP_1 diff --git a/data/scripts/gift_altering_cave.inc b/data/scripts/gift_altering_cave.inc index 8761b5fa409e..f86432ce284c 100644 --- a/data/scripts/gift_altering_cave.inc +++ b/data/scripts/gift_altering_cave.inc @@ -1,8 +1,7 @@ MysteryGiftScript_AlteringCave:: setvaddress MysteryGiftScript_AlteringCave addvar VAR_ALTERING_CAVE_WILD_SET, 1 - compare VAR_ALTERING_CAVE_WILD_SET, 10 - vgoto_if_ne MysteryGiftScript_AlteringCave_ + vgoto_if_ne VAR_ALTERING_CAVE_WILD_SET, 10, MysteryGiftScript_AlteringCave_ setvar VAR_ALTERING_CAVE_WILD_SET, 0 MysteryGiftScript_AlteringCave_: lock diff --git a/data/scripts/gift_aurora_ticket.inc b/data/scripts/gift_aurora_ticket.inc index 760bea93937b..0cadf804a7be 100644 --- a/data/scripts/gift_aurora_ticket.inc +++ b/data/scripts/gift_aurora_ticket.inc @@ -5,14 +5,12 @@ MysteryGiftScript_AuroraTicket:: vgoto_if_set FLAG_RECEIVED_AURORA_TICKET, AuroraTicket_Obtained vgoto_if_set FLAG_BATTLED_DEOXYS, AuroraTicket_Obtained checkitem ITEM_AURORA_TICKET - compare VAR_RESULT, TRUE - vgoto_if_eq AuroraTicket_Obtained + vgoto_if_eq VAR_RESULT, TRUE, AuroraTicket_Obtained vmessage sText_AuroraTicketForYou waitmessage waitbuttonpress checkitemspace ITEM_AURORA_TICKET - compare VAR_RESULT, FALSE - vgoto_if_eq AuroraTicket_NoBagSpace + vgoto_if_eq VAR_RESULT, FALSE, AuroraTicket_NoBagSpace giveitem ITEM_AURORA_TICKET setflag FLAG_ENABLE_SHIP_BIRTH_ISLAND setflag FLAG_RECEIVED_AURORA_TICKET diff --git a/data/scripts/gift_battle_card.inc b/data/scripts/gift_battle_card.inc index 80b4ba26ebbb..95e55e1b95c7 100644 --- a/data/scripts/gift_battle_card.inc +++ b/data/scripts/gift_battle_card.inc @@ -3,8 +3,7 @@ MysteryGiftScript_BattleCard:: vgoto_if_set FLAG_MYSTERY_GIFT_DONE, MysteryGiftScript_BattleCardInfo setorcopyvar VAR_RESULT, GET_CARD_BATTLES_WON specialvar VAR_0x8008, GetMysteryGiftCardStat - compare VAR_0x8008, REQUIRED_CARD_BATTLES - vgoto_if_ne MysteryGiftScript_BattleCardInfo + vgoto_if_ne VAR_0x8008, REQUIRED_CARD_BATTLES, MysteryGiftScript_BattleCardInfo lock faceplayer vmessage sText_MysteryGiftBattleCountCard_WonPrize diff --git a/data/scripts/gift_mystic_ticket.inc b/data/scripts/gift_mystic_ticket.inc index 1a28dd4ce0fb..3ed8aa6bcfac 100644 --- a/data/scripts/gift_mystic_ticket.inc +++ b/data/scripts/gift_mystic_ticket.inc @@ -6,14 +6,12 @@ MysteryGiftScript_MysticTicket:: vgoto_if_set FLAG_CAUGHT_LUGIA, MysticTicket_Obtained vgoto_if_set FLAG_CAUGHT_HO_OH, MysticTicket_Obtained checkitem ITEM_MYSTIC_TICKET - compare VAR_RESULT, TRUE - vgoto_if_eq MysticTicket_Obtained + vgoto_if_eq VAR_RESULT, TRUE, MysticTicket_Obtained vmessage sText_MysticTicketForYou waitmessage waitbuttonpress checkitemspace ITEM_MYSTIC_TICKET - compare VAR_RESULT, FALSE - vgoto_if_eq MysticTicket_NoBagSpace + vgoto_if_eq VAR_RESULT, FALSE, MysticTicket_NoBagSpace giveitem ITEM_MYSTIC_TICKET setflag FLAG_ENABLE_SHIP_NAVEL_ROCK setflag FLAG_RECEIVED_MYSTIC_TICKET diff --git a/data/scripts/gift_old_sea_map.inc b/data/scripts/gift_old_sea_map.inc index b0f258807e4c..06435492e4cc 100644 --- a/data/scripts/gift_old_sea_map.inc +++ b/data/scripts/gift_old_sea_map.inc @@ -5,14 +5,12 @@ MysteryGiftScript_OldSeaMap:: vgoto_if_set FLAG_RECEIVED_OLD_SEA_MAP, OldSeaMap_Obtained vgoto_if_set FLAG_CAUGHT_MEW, OldSeaMap_Obtained checkitem ITEM_OLD_SEA_MAP - compare VAR_RESULT, TRUE - vgoto_if_eq OldSeaMap_Obtained + vgoto_if_eq VAR_RESULT, TRUE, OldSeaMap_Obtained vmessage sText_MysteryGiftOldSeaMapForYou waitmessage waitbuttonpress checkitemspace ITEM_OLD_SEA_MAP - compare VAR_RESULT, FALSE - vgoto_if_eq OldSeaMap_NoBagSpace + vgoto_if_eq VAR_RESULT, FALSE, OldSeaMap_NoBagSpace giveitem ITEM_OLD_SEA_MAP setflag FLAG_ENABLE_SHIP_FARAWAY_ISLAND setflag FLAG_RECEIVED_OLD_SEA_MAP diff --git a/data/scripts/gift_pichu.inc b/data/scripts/gift_pichu.inc index e62fc4536ed7..d2cd381b5391 100644 --- a/data/scripts/gift_pichu.inc +++ b/data/scripts/gift_pichu.inc @@ -5,8 +5,7 @@ MysteryGiftScript_SurfPichu:: SurfPichu_GiveIfPossible: specialvar VAR_GIFT_PICHU_SLOT, CalculatePlayerPartyCount - compare VAR_GIFT_PICHU_SLOT, PARTY_SIZE - vgoto_if_eq SurfPichu_FullParty + vgoto_if_eq VAR_GIFT_PICHU_SLOT, PARTY_SIZE, SurfPichu_FullParty setflag FLAG_MYSTERY_GIFT_DONE vcall SurfPichu_GiveEgg lock @@ -32,16 +31,11 @@ SurfPichu_GiveEgg: giveegg SPECIES_PICHU setmoneventlegal VAR_GIFT_PICHU_SLOT setmonmetlocation VAR_GIFT_PICHU_SLOT, METLOC_FATEFUL_ENCOUNTER - compare VAR_GIFT_PICHU_SLOT, 1 - vgoto_if_eq SurfPichu_Slot1 - compare VAR_GIFT_PICHU_SLOT, 2 - vgoto_if_eq SurfPichu_Slot2 - compare VAR_GIFT_PICHU_SLOT, 3 - vgoto_if_eq SurfPichu_Slot3 - compare VAR_GIFT_PICHU_SLOT, 4 - vgoto_if_eq SurfPichu_Slot4 - compare VAR_GIFT_PICHU_SLOT, 5 - vgoto_if_eq SurfPichu_Slot5 + vgoto_if_eq VAR_GIFT_PICHU_SLOT, 1, SurfPichu_Slot1 + vgoto_if_eq VAR_GIFT_PICHU_SLOT, 2, SurfPichu_Slot2 + vgoto_if_eq VAR_GIFT_PICHU_SLOT, 3, SurfPichu_Slot3 + vgoto_if_eq VAR_GIFT_PICHU_SLOT, 4, SurfPichu_Slot4 + vgoto_if_eq VAR_GIFT_PICHU_SLOT, 5, SurfPichu_Slot5 return SurfPichu_Slot1: diff --git a/data/scripts/gift_trainer.inc b/data/scripts/gift_trainer.inc index 2dbc86d53eba..b927809058cd 100644 --- a/data/scripts/gift_trainer.inc +++ b/data/scripts/gift_trainer.inc @@ -1,8 +1,7 @@ MysteryGiftScript_VisitingTrainer:: setvaddress MysteryGiftScript_VisitingTrainer special ValidateEReaderTrainer - compare VAR_RESULT, 0 - vgoto_if_eq MysteryGiftScript_VisitingTrainerArrived + vgoto_if_eq VAR_RESULT, 0, MysteryGiftScript_VisitingTrainerArrived lock faceplayer vmessage sText_MysteryGiftVisitingTrainerInstructions diff --git a/data/scripts/hall_of_fame.inc b/data/scripts/hall_of_fame.inc index 9b730de317fd..fc082870f729 100644 --- a/data/scripts/hall_of_fame.inc +++ b/data/scripts/hall_of_fame.inc @@ -2,8 +2,7 @@ EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags:: special SetChampionSaveWarp setflag FLAG_IS_CHAMPION call EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries - compare VAR_FOSSIL_MANIAC_STATE, 0 - call_if_eq EverGrandeCity_HallOfFame_EventScript_SetDesertUnderpassCommentReady + call_if_eq VAR_FOSSIL_MANIAC_STATE, 0, EverGrandeCity_HallOfFame_EventScript_SetDesertUnderpassCommentReady clearflag FLAG_HIDE_LILYCOVE_MOTEL_GAME_DESIGNERS call EverGrandeCity_HallOfFame_EventScript_ResetEliteFour setflag FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY @@ -22,8 +21,7 @@ EverGrandeCity_HallOfFame_EventScript_SetGameClearFlags:: call_if_unset FLAG_RECEIVED_BELDUM, EverGrandeCity_HallOfFame_EventScript_ShowStevensHouseBeldum setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM - compare VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 0 - call_if_eq EverGrandeCity_HallOfFame_EventScript_ReadyDexUpgradeEvent + call_if_eq VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 0, EverGrandeCity_HallOfFame_EventScript_ReadyDexUpgradeEvent return EverGrandeCity_HallOfFame_EventScript_ResetDefeatedEventLegendaries:: diff --git a/data/scripts/interview.inc b/data/scripts/interview.inc index 90fceb9d187d..e102bf889c84 100644 --- a/data/scripts/interview.inc +++ b/data/scripts/interview.inc @@ -8,14 +8,11 @@ Interview_EventScript_EndInterview:: SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname:: setvar VAR_0x8005, TVSHOW_FAN_CLUB_LETTER special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed2 + goto_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed2 copyvar VAR_0x8009, VAR_0x8006 msgbox SlateportCity_PokemonFanClub_Text_InterviewRequest, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_PokemonFanClub_EventScript_AcceptInterview2 - compare VAR_RESULT, NO - goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 + goto_if_eq VAR_RESULT, YES, SlateportCity_PokemonFanClub_EventScript_AcceptInterview2 + goto_if_eq VAR_RESULT, NO, SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 end SlateportCity_PokemonFanClub_EventScript_AcceptInterview2:: @@ -26,10 +23,8 @@ SlateportCity_PokemonFanClub_EventScript_AcceptInterview2:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq SlateportCity_PokemonFanClub_EventScript_SubmitResponse2 - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 + goto_if_eq VAR_RESULT, 1, SlateportCity_PokemonFanClub_EventScript_SubmitResponse2 + goto_if_eq VAR_RESULT, 0, SlateportCity_PokemonFanClub_EventScript_DeclineInterview2 end SlateportCity_PokemonFanClub_EventScript_DeclineInterview2:: @@ -53,24 +48,19 @@ SlateportCity_OceanicMuseum_1F_EventScript_Reporter:: faceplayer setvar VAR_0x8005, TVSHOW_RECENT_HAPPENINGS special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_AlreadyInterviewed + goto_if_eq VAR_RESULT, TRUE, SlateportCity_OceanicMuseum_1F_EventScript_AlreadyInterviewed copyvar VAR_0x8009, VAR_0x8006 goto_if_set FLAG_OCEANIC_MUSEUM_MET_REPORTER, SlateportCity_OceanicMuseum_1F_EventScript_RequestInterviewShort setflag FLAG_OCEANIC_MUSEUM_MET_REPORTER msgbox SlateportCity_OceanicMuseum_1F_Text_InterviewRequest, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview - compare VAR_RESULT, NO - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, YES, SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview + goto_if_eq VAR_RESULT, NO, SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end SlateportCity_OceanicMuseum_1F_EventScript_RequestInterviewShort:: msgbox SlateportCity_OceanicMuseum_1F_Text_InterviewRequestShort, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview - compare VAR_RESULT, NO - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, YES, SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview + goto_if_eq VAR_RESULT, NO, SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview:: @@ -81,10 +71,8 @@ SlateportCity_OceanicMuseum_1F_EventScript_AcceptInterview:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_SubmitResponse - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, 1, SlateportCity_OceanicMuseum_1F_EventScript_SubmitResponse + goto_if_eq VAR_RESULT, 0, SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview end SlateportCity_OceanicMuseum_1F_EventScript_DeclineInterview:: @@ -107,18 +95,14 @@ SlateportCity_PokemonFanClub_EventScript_Reporter:: lock faceplayer specialvar VAR_RESULT, IsLeadMonNicknamedOrNotEnglish - compare VAR_RESULT, FALSE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname + goto_if_eq VAR_RESULT, FALSE, SlateportCity_PokemonFanClub_EventScript_ReporterNoNickname setvar VAR_0x8005, TVSHOW_PKMN_FAN_CLUB_OPINIONS special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed + goto_if_eq VAR_RESULT, TRUE, SlateportCity_PokemonFanClub_EventScript_AlreadyInterviewed copyvar VAR_0x8009, VAR_0x8006 msgbox SlateportCity_PokemonFanClub_Text_InterviewRequestHasName, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SlateportCity_PokemonFanClub_EventScript_AcceptInterview - compare VAR_RESULT, NO - goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, YES, SlateportCity_PokemonFanClub_EventScript_AcceptInterview + goto_if_eq VAR_RESULT, NO, SlateportCity_PokemonFanClub_EventScript_DeclineInterview end SlateportCity_PokemonFanClub_EventScript_AcceptInterview:: @@ -153,15 +137,13 @@ SlateportCity_PokemonFanClub_EventScript_ContinueInterview:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, 0, SlateportCity_PokemonFanClub_EventScript_DeclineInterview msgbox SlateportCity_PokemonFanClub_Text_WhatDoPokemonMeanToYou, MSGBOX_DEFAULT setvar VAR_0x8006, 1 call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq SlateportCity_PokemonFanClub_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, 0, SlateportCity_PokemonFanClub_EventScript_DeclineInterview msgbox SlateportCity_PokemonFanClub_Text_ThatsAllForInterview, MSGBOX_DEFAULT copyvar VAR_0x8007, VAR_0x800A setvar VAR_0x8005, TVSHOW_PKMN_FAN_CLUB_OPINIONS @@ -184,14 +166,11 @@ LilycoveCity_ContestLobby_EventScript_Reporter:: goto_if_set FLAG_TEMP_2, LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed copyvar VAR_0x8009, VAR_0x8006 msgbox LilycoveCity_ContestLobby_Text_InterviewRequest, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_ContestLobby_EventScript_AcceptInterview - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_ContestLobby_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, YES, LilycoveCity_ContestLobby_EventScript_AcceptInterview + goto_if_eq VAR_RESULT, NO, LilycoveCity_ContestLobby_EventScript_DeclineInterview end LilycoveCity_ContestLobby_EventScript_AcceptInterview:: @@ -202,10 +181,8 @@ LilycoveCity_ContestLobby_EventScript_AcceptInterview:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_ContestLobby_EventScript_SubmitResponse - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_ContestLobby_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, 1, LilycoveCity_ContestLobby_EventScript_SubmitResponse + goto_if_eq VAR_RESULT, 0, LilycoveCity_ContestLobby_EventScript_DeclineInterview end LilycoveCity_ContestLobby_EventScript_DeclineInterview:: @@ -223,8 +200,7 @@ LilycoveCity_ContestLobby_EventScript_SubmitResponse:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_ContestLobby_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, 0, LilycoveCity_ContestLobby_EventScript_DeclineInterview msgbox LilycoveCity_ContestLobby_Text_ThatsAllForInterview, MSGBOX_DEFAULT setflag FLAG_TEMP_2 setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE @@ -237,12 +213,10 @@ LilycoveCity_ContestLobby_EventScript_AlreadyInterviewed:: end LilycoveCity_ContestLobby_EventScript_TryShowContestReporter:: - compare VAR_CONTEST_HALL_STATE, 2 - goto_if_ne LilycoveCity_ContestLobby_EventScript_DontShowContestReporter + goto_if_ne VAR_CONTEST_HALL_STATE, 2, LilycoveCity_ContestLobby_EventScript_DontShowContestReporter setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_ContestLobby_EventScript_DontShowContestReporter + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_DontShowContestReporter switch VAR_CONTEST_TYPE case 0, LilycoveCity_ContestLobby_EventScript_DontShowContestReporter case 2, LilycoveCity_ContestLobby_EventScript_ShowContestReporter @@ -265,14 +239,11 @@ BattleFrontier_BattleTowerLobby_EventScript_Reporter:: goto_if_set FLAG_TEMP_2, BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed copyvar VAR_0x8009, VAR_0x8006 msgbox BattleFrontier_BattleTowerLobby_Text_InterviewRequest, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview - compare VAR_RESULT, NO - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview + goto_if_eq VAR_RESULT, YES, BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview + goto_if_eq VAR_RESULT, NO, BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview end BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: @@ -280,20 +251,16 @@ BattleFrontier_BattleTowerLobby_EventScript_AcceptInterview:: waitmessage multichoice 20, 8, MULTI_SATISFACTION, TRUE copyvar VAR_0x8008, VAR_RESULT - compare VAR_RESULT, 0 - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_Satisfied - compare VAR_RESULT, 1 - call_if_eq BattleFrontier_BattleTowerLobby_EventScript_Dissatisfied + call_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_Satisfied + call_if_eq VAR_RESULT, 1, BattleFrontier_BattleTowerLobby_EventScript_Dissatisfied msgbox BattleFrontier_BattleTowerLobby_Text_DescribeYourBattle, MSGBOX_DEFAULT setvar VAR_0x8004, EASY_CHAT_TYPE_BATTLE_TOWER_INTERVIEW copyvar VAR_0x8005, VAR_0x8009 call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 1 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelInterview + goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelInterview end BattleFrontier_BattleTowerLobby_EventScript_DeclineInterview:: @@ -310,8 +277,7 @@ BattleFrontier_BattleTowerLobby_EventScript_Dissatisfied:: return BattleFrontier_BattleTowerLobby_EventScript_SubmitResponse:: - compare VAR_RESULT, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_CancelInterview + goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerLobby_EventScript_CancelInterview msgbox BattleFrontier_BattleTowerLobby_Text_ThatsGreatLine, MSGBOX_DEFAULT setflag FLAG_TEMP_2 copyvar VAR_0x8004, VAR_0x8008 @@ -330,12 +296,10 @@ BattleFrontier_BattleTowerLobby_EventScript_AlreadyInterviewed:: end BattleFrontier_BattleTowerLobby_EventScript_ShowOrHideReporter:: - compare VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0 - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_HideReporter + goto_if_eq VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0, BattleFrontier_BattleTowerLobby_EventScript_HideReporter setvar VAR_0x8005, TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_HideReporter + goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleTowerLobby_EventScript_HideReporter clearflag FLAG_HIDE_BATTLE_TOWER_REPORTER return @@ -347,8 +311,7 @@ BattleFrontier_BattleTowerLobby_EventScript_HideReporter:: EventScript_ContestLiveInterview:: setvar VAR_0x8005, TVSHOW_CONTEST_LIVE_UPDATES special InterviewBefore - compare VAR_RESULT, TRUE - goto_if_eq EventScript_ContestLiveInterviewEnd + goto_if_eq VAR_RESULT, TRUE, EventScript_ContestLiveInterviewEnd setvar VAR_0x8005, TVSHOW_CONTEST_LIVE_UPDATES special InterviewAfter return diff --git a/data/scripts/kecleon.inc b/data/scripts/kecleon.inc index 355e9ad4a7cc..f51dc2fbd2bd 100644 --- a/data/scripts/kecleon.inc +++ b/data/scripts/kecleon.inc @@ -49,16 +49,14 @@ Route119_EventScript_Kecleon2:: EventScript_Kecleon:: checkitem ITEM_DEVON_SCOPE - compare VAR_RESULT, TRUE - goto_if_eq EventScript_AskUseDevonScope + goto_if_eq VAR_RESULT, TRUE, EventScript_AskUseDevonScope msgbox Kecleon_Text_SomethingUnseeable, MSGBOX_DEFAULT release end EventScript_AskUseDevonScope:: msgbox Kecleon_Text_WantToUseDevonScope, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_BattleKecleon + goto_if_eq VAR_RESULT, YES, EventScript_BattleKecleon release end @@ -78,12 +76,9 @@ EventScript_BattleKecleon:: dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE specialvar VAR_RESULT, GetBattleOutcome - compare VAR_RESULT, B_OUTCOME_WON - goto_if_eq EventScript_RemoveKecleon - compare VAR_RESULT, B_OUTCOME_RAN - goto_if_eq EventScript_RemoveKecleon - compare VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED - goto_if_eq EventScript_RemoveKecleon + goto_if_eq VAR_RESULT, B_OUTCOME_WON, EventScript_RemoveKecleon + goto_if_eq VAR_RESULT, B_OUTCOME_RAN, EventScript_RemoveKecleon + goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, EventScript_RemoveKecleon release end diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc index c6192b772369..5519de9791aa 100644 --- a/data/scripts/lilycove_lady.inc +++ b/data/scripts/lilycove_lady.inc @@ -14,12 +14,9 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLady:: faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheFavorLady, MSGBOX_DEFAULT specialvar VAR_RESULT, GetFavorLadyState - compare VAR_RESULT, LILYCOVE_LADY_STATE_READY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady - compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted - compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_READY, LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED, LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE, LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize end LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyCompleted:: @@ -31,20 +28,16 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyReady:: special BufferFavorLadyRequest msgbox LilycoveCity_PokemonCenter_1F_Text_ObsessedWithThing, MSGBOX_DEFAULT specialvar VAR_RESULT, HasAnotherPlayerGivenFavorLadyItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_RequestItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_RequestItem + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem end LilycoveCity_PokemonCenter_1F_EventScript_TellAboutPlayersItem:: special BufferFavorLadyItemName special BufferFavorLadyPlayerName specialvar VAR_RESULT, DidFavorLadyLikeItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing end LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveBadThing:: @@ -59,10 +52,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_PlayerGaveGreatThing:: LilycoveCity_PokemonCenter_1F_EventScript_RequestItem:: msgbox LilycoveCity_PokemonCenter_1F_Text_WillYouShareThing, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor end LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor:: @@ -80,26 +71,20 @@ LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: setvar VAR_RESULT, 0 special Script_FavorLadyOpenBagMenu waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChooseFavorItem:: msgbox LilycoveCity_PokemonCenter_1F_Text_NotWillingToShare, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_DeclineFavor + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem end LilycoveCity_PokemonCenter_1F_EventScript_GiveFavorItem:: specialvar VAR_RESULT, Script_DoesFavorLadyLikeItem - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem end LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem:: @@ -110,10 +95,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_DidntLikeFavorItem:: LilycoveCity_PokemonCenter_1F_EventScript_CheckLovedItem:: specialvar VAR_RESULT, IsFavorLadyThresholdMet - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_LovedFavorItem end LilycoveCity_PokemonCenter_1F_EventScript_LikedFavorItem:: @@ -133,10 +116,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_FavorLadyPrize:: specialvar VAR_0x8004, FavorLadyGetPrize msgbox LilycoveCity_PokemonCenter_1F_Text_IllGiveYouThisInReturn, MSGBOX_DEFAULT giveitem VAR_0x8004 - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_ReceivedFavorPrize end LilycoveCity_PokemonCenter_1F_EventScript_NoRoomForFavorPrize:: @@ -154,30 +135,22 @@ LilycoveCity_PokemonCenter_1F_EventScript_QuizLady:: faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheQuizLady, MSGBOX_DEFAULT specialvar VAR_RESULT, GetQuizLadyState - compare VAR_RESULT, LILYCOVE_LADY_STATE_READY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz - compare VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz - compare VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_READY, LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_COMPLETED, LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz + goto_if_eq VAR_RESULT, LILYCOVE_LADY_STATE_PRIZE, LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize end LilycoveCity_PokemonCenter_1F_EventScript_HasQuiz:: specialvar VAR_RESULT, GetQuizAuthor - compare VAR_RESULT, QUIZ_AUTHOR_PLAYER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz - compare VAR_RESULT, QUIZ_AUTHOR_OTHER_PLAYER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady - compare VAR_RESULT, QUIZ_AUTHOR_LADY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady + goto_if_eq VAR_RESULT, QUIZ_AUTHOR_PLAYER, LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz + goto_if_eq VAR_RESULT, QUIZ_AUTHOR_OTHER_PLAYER, LilycoveCity_PokemonCenter_1F_EventScript_PlayerQuizReady + goto_if_eq VAR_RESULT, QUIZ_AUTHOR_LADY, LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady end LilycoveCity_PokemonCenter_1F_EventScript_CheckMadeQuiz:: specialvar VAR_RESULT, IsQuizLadyWaitingForChallenger - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz end LilycoveCity_PokemonCenter_1F_EventScript_WaitingToTakeYourQuiz:: @@ -198,10 +171,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_LadyQuizReady:: LilycoveCity_PokemonCenter_1F_EventScript_AskTakeQuiz:: setvar VAR_0x8004, 0 msgbox LilycoveCity_PokemonCenter_1F_Text_TakeQuizChallenge, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz end LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz:: @@ -211,16 +182,12 @@ LilycoveCity_PokemonCenter_1F_EventScript_DeclineQuiz:: LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz:: special ClearQuizLadyPlayerAnswer - compare VAR_0x8004, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion - compare VAR_0x8004, EASY_CHAT_TYPE_QUIZ_ANSWER - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer + goto_if_eq VAR_0x8004, 0, LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion + goto_if_eq VAR_0x8004, EASY_CHAT_TYPE_QUIZ_ANSWER, LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer LilycoveCity_PokemonCenter_1F_EventScript_CheckQuizTakingState:: - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse end LilycoveCity_PokemonCenter_1F_EventScript_ShowQuestion:: @@ -237,10 +204,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_GetAnswer:: LilycoveCity_PokemonCenter_1F_EventScript_AskQuitQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_YoureGoingToQuit, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_TakeQuiz end LilycoveCity_PokemonCenter_1F_EventScript_QuitTakingQuiz:: @@ -252,10 +217,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_SubmitQuizResponse:: special SetQuizLadyState_Complete msgbox LilycoveCity_PokemonCenter_1F_Text_WaitForAnswer, MSGBOX_DEFAULT specialvar VAR_RESULT, IsQuizAnswerCorrect - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse end LilycoveCity_PokemonCenter_1F_EventScript_CorrectResponse:: @@ -280,10 +243,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_IncorrectResponse:: @ VAR_RESULT is essentially ignored, both jumps are identical LilycoveCity_PokemonCenter_1F_EventScript_ReadyGivePrize:: specialvar VAR_RESULT, BufferQuizAuthorNameAndCheckIfLady - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1 - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0 + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1 + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_GivePrize0 end LilycoveCity_PokemonCenter_1F_EventScript_GivePrize1:: @@ -301,8 +262,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_GivePrize:: special BufferQuizPrizeItem special SetQuizLadyState_Complete giveitem VAR_0x8005 - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize goto LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz end @@ -314,10 +274,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_NoSpaceForQuizPrize:: LilycoveCity_PokemonCenter_1F_EventScript_AskMakeQuiz:: msgbox LilycoveCity_PokemonCenter_1F_Text_MakeYourOwnQuiz, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz end LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: @@ -333,18 +291,14 @@ LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: setvar VAR_RESULT, 0 special Script_QuizLadyOpenBagMenu waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitChoosingPrize:: msgbox LilycoveCity_PokemonCenter_1F_Text_QuitChoosingPrize, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_PickPrize + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_PickPrize end LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: @@ -356,17 +310,14 @@ LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: fadescreen FADE_TO_BLACK special QuizLadySetCustomQuestion waitstate - compare VAR_RESULT, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion + goto_if_eq VAR_RESULT, 0, LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion goto LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitWritingQuizQuestion:: msgbox LilycoveCity_PokemonCenter_1F_Text_QuitWritingQuizQuestion, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion end LilycoveCity_PokemonCenter_1F_EventScript_FinishMakingQuiz:: @@ -382,19 +333,15 @@ LilycoveCity_PokemonCenter_1F_EventScript_ContestLady:: faceplayer msgbox LilycoveCity_PokemonCenter_1F_Text_ImTheContestLady, MSGBOX_DEFAULT specialvar VAR_RESULT, HasPlayerGivenContestLadyPokeblock - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock end @ Redundant with above script, VAR_RESULT will always be FALSE here LilycoveCity_PokemonCenter_1F_EventScript_NotGivenPokeblock:: specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock - compare VAR_RESULT, TRUE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock + goto_if_eq VAR_RESULT, TRUE, LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock end LilycoveCity_PokemonCenter_1F_EventScript_GivenPokeblock:: @@ -406,13 +353,10 @@ LilycoveCity_PokemonCenter_1F_EventScript_AskForPokeblock:: special Script_BufferContestLadyCategoryAndMonName msgbox LilycoveCity_PokemonCenter_1F_Text_MyFriendDisplaysQuality, MSGBOX_DEFAULT checkitem ITEM_POKEBLOCK_CASE - compare VAR_RESULT, FALSE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase + goto_if_eq VAR_RESULT, FALSE, LilycoveCity_PokemonCenter_1F_EventScript_NoPokeblockCase msgbox LilycoveCity_PokemonCenter_1F_Text_AskingForOnePokeblock, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock end LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: @@ -424,18 +368,14 @@ LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: fadescreen FADE_TO_BLACK special OpenPokeblockCaseForContestLady waitstate - compare VAR_RESULT, 0xFFFF - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock - compare VAR_RESULT, 0xFFFF - goto_if_ne LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock + goto_if_eq VAR_RESULT, 0xFFFF, LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock + goto_if_ne VAR_RESULT, 0xFFFF, LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock end LilycoveCity_PokemonCenter_1F_EventScript_AskQuitGivingPokeblock:: msgbox LilycoveCity_PokemonCenter_1F_Text_ICantHaveOnePokeblock, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock - compare VAR_RESULT, NO - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock + goto_if_eq VAR_RESULT, YES, LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock + goto_if_eq VAR_RESULT, NO, LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock end LilycoveCity_PokemonCenter_1F_EventScript_GivePokeblock:: @@ -457,8 +397,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock:: playmoncry VAR_0x8005, CRY_MODE_NORMAL delay 120 waitmoncry - compare VAR_0x8004, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock + goto_if_eq VAR_0x8004, 1, LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock goto LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock end @@ -471,10 +410,8 @@ LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock:: applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFacePlayer waitmovement 0 delay 60 - compare VAR_0x8004, 0 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock - compare VAR_0x8004, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock + goto_if_eq VAR_0x8004, 0, LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock + goto_if_eq VAR_0x8004, 1, LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock end LilycoveCity_PokemonCenter_1F_EventScript_MonDislikedPokeblock:: @@ -490,8 +427,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_MonLikedPokeblock:: LilycoveCity_PokemonCenter_1F_EventScript_CheckAirContestLadyShow:: specialvar VAR_RESULT, ShouldContestLadyShowGoOnAir - compare VAR_RESULT, 1 - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow + goto_if_eq VAR_RESULT, 1, LilycoveCity_PokemonCenter_1F_EventScript_AirContestLadyShow release end @@ -536,16 +472,11 @@ LilycoveCity_PokemonCenter_1F_EventScript_ContestLadyMon:: specialvar VAR_RESULT, GetContestLadyCategory special Script_BufferContestLadyCategoryAndMonName special GetContestLadyMonSpecies - compare VAR_RESULT, CONTEST_CATEGORY_COOL - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon - compare VAR_RESULT, CONTEST_CATEGORY_BEAUTY - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Skitty - compare VAR_RESULT, CONTEST_CATEGORY_CUTE - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Poochyena - compare VAR_RESULT, CONTEST_CATEGORY_SMART - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Kecleon - compare VAR_RESULT, CONTEST_CATEGORY_TOUGH - goto_if_eq LilycoveCity_PokemonCenter_1F_EventScript_Pikachu + goto_if_eq VAR_RESULT, CONTEST_CATEGORY_COOL, LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon + goto_if_eq VAR_RESULT, CONTEST_CATEGORY_BEAUTY, LilycoveCity_PokemonCenter_1F_EventScript_Skitty + goto_if_eq VAR_RESULT, CONTEST_CATEGORY_CUTE, LilycoveCity_PokemonCenter_1F_EventScript_Poochyena + goto_if_eq VAR_RESULT, CONTEST_CATEGORY_SMART, LilycoveCity_PokemonCenter_1F_EventScript_Kecleon + goto_if_eq VAR_RESULT, CONTEST_CATEGORY_TOUGH, LilycoveCity_PokemonCenter_1F_EventScript_Pikachu end LilycoveCity_PokemonCenter_1F_EventScript_Zigzagoon:: diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc index b34f84e8e258..e1fa3d1799fb 100644 --- a/data/scripts/mauville_man.inc +++ b/data/scripts/mauville_man.inc @@ -13,10 +13,8 @@ MauvilleCity_PokemonCenter_1F_EventScript_Bard:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToHearMySong, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_PlaySong - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong + goto_if_eq VAR_RESULT, YES, MauvilleCity_PokemonCenter_1F_EventScript_PlaySong + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong end MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: @@ -24,8 +22,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_PlaySong:: special PlayBardSong delay 60 special HasBardSongBeenChanged - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_WishICouldPlaySongForOthers, MSGBOX_DEFAULT release end @@ -37,10 +34,8 @@ MauvilleCity_PokemonCenter_1F_EventScript_DeclineSong:: MauvilleCity_PokemonCenter_1F_EventScript_AskToWriteLyrics:: msgbox MauvilleCity_PokemonCenter_1F_Text_WouldYouLikeToWriteSomeLyrics, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics + goto_if_eq VAR_RESULT, YES, MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics end MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: @@ -48,15 +43,13 @@ MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics + goto_if_eq VAR_RESULT, 0, MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_LetMeSingItForYou, MSGBOX_DEFAULT setvar VAR_0x8004, 1 special PlayBardSong delay 60 msgbox MauvilleCity_PokemonCenter_1F_Text_ThatHowYouWantedSongToGo, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics special SaveBardSongLyrics msgbox MauvilleCity_PokemonCenter_1F_Text_IllSingThisSongForAWhile, MSGBOX_DEFAULT release @@ -74,16 +67,14 @@ MauvilleCity_PokemonCenter_1F_EventScript_Hipster:: setflag FLAG_SYS_HIPSTER_MEET msgbox MauvilleCity_PokemonCenter_1F_Text_TeachWhatsHipAndHappening, MSGBOX_DEFAULT special GetHipsterSpokenFlag - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord msgbox MauvilleCity_PokemonCenter_1F_Text_IAlreadyTaughtYou, MSGBOX_DEFAULT release end MauvilleCity_PokemonCenter_1F_EventScript_TryTeachWord:: special HipsterTryTeachWord - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TeachWord + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_TeachWord msgbox MauvilleCity_PokemonCenter_1F_Text_IveGotNothingNewToTeach, MSGBOX_DEFAULT release end @@ -158,11 +149,9 @@ MauvilleCity_PokemonCenter_1F_EventScript_Trader:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_WantToTradeDecor, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineTrade + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineTrade special GetTraderTradedFlag - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded message MauvilleCity_PokemonCenter_1F_Text_PickADecorItem waitmessage goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive @@ -181,16 +170,12 @@ MauvilleCity_PokemonCenter_1F_EventScript_AlreadyTraded:: MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToReceive:: special TraderMenuGetDecoration waitstate - compare VAR_0x8004, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelPickDecor - compare VAR_0x8004, 0xFFFF - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_InvalidDecor + goto_if_eq VAR_0x8004, 0, MauvilleCity_PokemonCenter_1F_EventScript_CancelPickDecor + goto_if_eq VAR_0x8004, 0xFFFF, MauvilleCity_PokemonCenter_1F_EventScript_InvalidDecor msgbox MauvilleCity_PokemonCenter_1F_Text_OnceBelongedToPlayerDoYouWantIt, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_PickDifferentDecor + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_PickDifferentDecor special DoesPlayerHaveNoDecorations - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_DontHaveAnyDecor goto MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive end @@ -220,16 +205,12 @@ MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive:: msgbox MauvilleCity_PokemonCenter_1F_Text_PickTheDecorToTrade, MSGBOX_DEFAULT special TraderShowDecorationMenu waitstate - compare VAR_0x8006, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelGiveDecor - compare VAR_0x8006, 0xFFFF - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DecorInUse + goto_if_eq VAR_0x8006, 0, MauvilleCity_PokemonCenter_1F_EventScript_CancelGiveDecor + goto_if_eq VAR_0x8006, 0xFFFF, MauvilleCity_PokemonCenter_1F_EventScript_DecorInUse special IsDecorationCategoryFull - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_NoRoomForDecor + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_NoRoomForDecor msgbox MauvilleCity_PokemonCenter_1F_Text_SoWellTradeTheseDecor, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_PickDecorToGive special TraderDoDecorationTrade msgbox MauvilleCity_PokemonCenter_1F_Text_SendDecorToYourPC, MSGBOX_DEFAULT release @@ -816,24 +797,20 @@ MauvilleCity_PokemonCenter_1F_EventScript_Storyteller:: setvar VAR_0x800A, 0 setvar VAR_0x800B, 0 msgbox MauvilleCity_PokemonCenter_1F_Text_WillYouHearMyTale, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller specialvar VAR_RESULT, StorytellerGetFreeStorySlot - compare VAR_RESULT, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales + goto_if_eq VAR_RESULT, 0, MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales message MauvilleCity_PokemonCenter_1F_Text_WhichTaleToTell waitmessage special StorytellerStoryListMenu waitstate - compare VAR_RESULT, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection + goto_if_eq VAR_RESULT, 0, MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection setvar VAR_0x8008, 1 special Script_StorytellerDisplayStory waitmessage waitbuttonpress specialvar VAR_RESULT, StorytellerUpdateStat - compare VAR_RESULT, 0 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales + goto_if_eq VAR_RESULT, 0, MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales goto MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection:: @@ -843,19 +820,16 @@ MauvilleCity_PokemonCenter_1F_EventScript_CancelStorySelection:: MauvilleCity_PokemonCenter_1F_EventScript_AreThereOtherTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_CouldThereBeOtherLegends, MSGBOX_DEFAULT specialvar VAR_RESULT, HasStorytellerAlreadyRecorded - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_StorytellerEnd goto MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales MauvilleCity_PokemonCenter_1F_EventScript_KnowNoTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_IKnowNoTales, MSGBOX_DEFAULT MauvilleCity_PokemonCenter_1F_EventScript_DoYouHaveAnyTales:: msgbox MauvilleCity_PokemonCenter_1F_Text_HaveYouAnyLegendaryTales, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineStoryteller specialvar VAR_RESULT, Script_StorytellerInitializeRandomStat - compare VAR_RESULT, 1 - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale + goto_if_eq VAR_RESULT, 1, MauvilleCity_PokemonCenter_1F_EventScript_TellPlayersTale msgbox MauvilleCity_PokemonCenter_1F_Text_NotWorthyOfLegend, MSGBOX_DEFAULT release end @@ -902,26 +876,20 @@ MauvilleCity_PokemonCenter_1F_EventScript_Giddy:: lock faceplayer msgbox MauvilleCity_PokemonCenter_1F_Text_HearMyStory, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy + goto_if_eq VAR_RESULT, YES, MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy end MauvilleCity_PokemonCenter_1F_EventScript_TryTellTale:: special GiddyShouldTellAnotherTale - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales end MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale:: special GiddyShouldTellAnotherTale - compare VAR_RESULT, TRUE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales + goto_if_eq VAR_RESULT, TRUE, MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_PokemonCenter_1F_EventScript_ToldEnoughTales end MauvilleCity_PokemonCenter_1F_EventScript_GiddyStartNewTale:: @@ -936,10 +904,8 @@ MauvilleCity_PokemonCenter_1F_EventScript_GiddyTellTale:: special ShowFieldMessageStringVar4 waitmessage yesnobox 20, 8 - compare VAR_RESULT, YES - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale - compare VAR_RESULT, NO - goto_if_eq MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale + goto_if_eq VAR_RESULT, YES, MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale + goto_if_eq VAR_RESULT, NO, MauvilleCity_PokemonCenter_1F_EventScript_TryTellNewTale end MauvilleCity_PokemonCenter_1F_EventScript_DeclineGiddy:: diff --git a/data/scripts/move_tutors.inc b/data/scripts/move_tutors.inc index cc952749d421..4155969a026f 100644 --- a/data/scripts/move_tutors.inc +++ b/data/scripts/move_tutors.inc @@ -3,16 +3,13 @@ SlateportCity_PokemonFanClub_EventScript_SwaggerTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SWAGGER, MoveTutor_EventScript_SwaggerTaught msgbox MoveTutor_Text_SwaggerTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SwaggerDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SwaggerDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SwaggerDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SwaggerDeclined msgbox MoveTutor_Text_SwaggerWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_SWAGGER call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_SwaggerDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SwaggerDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_SWAGGER goto MoveTutor_EventScript_SwaggerTaught end @@ -32,16 +29,13 @@ MauvilleCity_EventScript_RolloutTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT, MoveTutor_EventScript_RolloutTaught msgbox MoveTutor_Text_RolloutTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_RolloutDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_RolloutDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_RolloutDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_RolloutDeclined msgbox MoveTutor_Text_RolloutWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_ROLLOUT call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_RolloutDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_RolloutDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT goto MoveTutor_EventScript_RolloutTaught end @@ -61,16 +55,13 @@ VerdanturfTown_PokemonCenter_1F_EventScript_FuryCutterTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER, MoveTutor_EventScript_FuryCutterTaught msgbox MoveTutor_Text_FuryCutterTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_FuryCutterDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_FuryCutterDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_FuryCutterDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_FuryCutterDeclined msgbox MoveTutor_Text_FuryCutterWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_FURY_CUTTER call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_FuryCutterDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_FuryCutterDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER goto MoveTutor_EventScript_FuryCutterTaught end @@ -90,16 +81,13 @@ LavaridgeTown_House_EventScript_MimicTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_MIMIC, MoveTutor_EventScript_MimicTaught msgbox MoveTutor_MimicTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_MimicDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MimicDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_MimicDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MimicDeclined msgbox MoveTutor_Text_MimicWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_MIMIC call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_MimicDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_MimicDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_MIMIC goto MoveTutor_EventScript_MimicTaught end @@ -119,16 +107,13 @@ FallarborTown_Mart_EventScript_MetronomeTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_METRONOME, MoveTutor_EventScript_MetronomeTaught msgbox MoveTutor_Text_MetronomeTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_MetronomeDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MetronomeDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_MetronomeDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MetronomeDeclined msgbox MoveTutor_Text_MetronomeWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_METRONOME call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_MetronomeDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_MetronomeDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_METRONOME goto MoveTutor_EventScript_MetronomeTaught end @@ -148,16 +133,13 @@ FortreeCity_House2_EventScript_SleepTalkTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK, MoveTutor_EventScript_SleepTalkTaught msgbox MoveTutor_Text_SleepTalkTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SleepTalkDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SleepTalkDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SleepTalkDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SleepTalkDeclined msgbox MoveTutor_Text_SleepTalkWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_SLEEP_TALK call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_SleepTalkDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SleepTalkDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK goto MoveTutor_EventScript_SleepTalkTaught end @@ -177,16 +159,13 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_SubstituteTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE, MoveTutor_EventScript_SubstituteTaught msgbox MoveTutor_Text_SubstituteTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SubstituteDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SubstituteDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_SubstituteDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SubstituteDeclined msgbox MoveTutor_Text_SubstituteWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_SUBSTITUTE call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_SubstituteDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SubstituteDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE goto MoveTutor_EventScript_SubstituteTaught end @@ -206,16 +185,13 @@ MossdeepCity_EventScript_DynamicPunchTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH, MoveTutor_EventScript_DynamicPunchTaught msgbox MoveTutor_Text_DynamicPunchTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_DynamicPunchDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DynamicPunchDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_DynamicPunchDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DynamicPunchDeclined msgbox MoveTutor_Text_DynamicPunchWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_DYNAMIC_PUNCH call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_DynamicPunchDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_DynamicPunchDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH goto MoveTutor_EventScript_DynamicPunchTaught end @@ -235,16 +211,13 @@ SootopolisCity_PokemonCenter_1F_EventScript_DoubleEdgeTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE, MoveTutor_EventScript_DoubleEdgeTaught msgbox MoveTutor_Text_DoubleEdgeTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_DoubleEdgeDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DoubleEdgeDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_DoubleEdgeDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DoubleEdgeDeclined msgbox MoveTutor_Text_DoubleEdgeWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_DOUBLE_EDGE call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_DoubleEdgeDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_DoubleEdgeDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE goto MoveTutor_EventScript_DoubleEdgeTaught end @@ -264,16 +237,13 @@ PacifidlogTown_PokemonCenter_1F_EventScript_ExplosionTutor:: faceplayer goto_if_set FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION, MoveTutor_EventScript_ExplosionTaught msgbox MoveTutor_Text_ExplosionTeach, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_ExplosionDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_ExplosionDeclined call MoveTutor_EventScript_CanOnlyBeLearnedOnce - compare VAR_RESULT, NO - goto_if_eq MoveTutor_EventScript_ExplosionDeclined + goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_ExplosionDeclined msgbox MoveTutor_Text_ExplosionWhichMon, MSGBOX_DEFAULT setvar VAR_0x8005, TUTOR_MOVE_EXPLOSION call MoveTutor_EventScript_OpenPartyMenu - compare VAR_RESULT, 0 - goto_if_eq MoveTutor_EventScript_ExplosionDeclined + goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_ExplosionDeclined setflag FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION goto MoveTutor_EventScript_ExplosionTaught end diff --git a/data/scripts/obtain_item.inc b/data/scripts/obtain_item.inc index 8fa6a68a7edc..e982858e7bd0 100644 --- a/data/scripts/obtain_item.inc +++ b/data/scripts/obtain_item.inc @@ -11,10 +11,8 @@ EventScript_ObtainItemMessage:: bufferitemnameplural STR_VAR_2, ITEMID, AMOUNT checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, TRUE - call_if_eq EventScript_ObtainedItem - compare VAR_0x8007, FALSE - call_if_eq EventScript_NoRoomForItem + call_if_eq VAR_0x8007, TRUE, EventScript_ObtainedItem + call_if_eq VAR_0x8007, FALSE, EventScript_NoRoomForItem return EventScript_BufferPocketNameAndTryFanfare:: @@ -28,32 +26,27 @@ EventScript_BufferPocketNameAndTryFanfare:: EventScript_BufferItemsPocket:: bufferstdstring STR_VAR_3, STDSTRING_ITEMS - compare VAR_0x8007, TRUE - call_if_eq EventScript_PlayFanfareObtainedItem + call_if_eq VAR_0x8007, TRUE, EventScript_PlayFanfareObtainedItem return EventScript_BufferKeyItemsPocket:: bufferstdstring STR_VAR_3, STDSTRING_KEYITEMS - compare VAR_0x8007, TRUE - call_if_eq EventScript_PlayFanfareObtainedItem + call_if_eq VAR_0x8007, TRUE, EventScript_PlayFanfareObtainedItem return EventScript_BufferPokeballsPocket:: bufferstdstring STR_VAR_3, STDSTRING_POKEBALLS - compare VAR_0x8007, TRUE - call_if_eq EventScript_PlayFanfareObtainedItem + call_if_eq VAR_0x8007, TRUE, EventScript_PlayFanfareObtainedItem return EventScript_BufferTMHMsPocket:: bufferstdstring STR_VAR_3, STDSTRING_TMHMS - compare VAR_0x8007, TRUE - call_if_eq EventScript_PlayFanfareObtainedTMHM + call_if_eq VAR_0x8007, TRUE, EventScript_PlayFanfareObtainedTMHM return EventScript_BufferBerriesPocket:: bufferstdstring STR_VAR_3, STDSTRING_BERRIES - compare VAR_0x8007, TRUE - call_if_eq EventScript_PlayFanfareObtainedItem + call_if_eq VAR_0x8007, TRUE, EventScript_PlayFanfareObtainedItem return EventScript_ObtainedItem:: @@ -83,10 +76,8 @@ Std_ObtainDecoration:: EventScript_ObtainDecorationMessage:: bufferdecorationname STR_VAR_2, ITEMID - compare VAR_0x8007, TRUE - call_if_eq EventScript_ObtainedDecor - compare VAR_0x8007, FALSE - call_if_eq EventScript_NoRoomForDecor + call_if_eq VAR_0x8007, TRUE, EventScript_ObtainedDecor + call_if_eq VAR_0x8007, FALSE, EventScript_NoRoomForDecor return EventScript_ObtainedDecor:: @@ -112,10 +103,8 @@ Std_FindItem:: bufferitemnameplural STR_VAR_2, ITEMID, AMOUNT checkitemtype ITEMID call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, TRUE - call_if_eq EventScript_PickUpItem - compare VAR_0x8007, FALSE - call_if_eq EventScript_NoRoomToPickUpItem + call_if_eq VAR_0x8007, TRUE, EventScript_PickUpItem + call_if_eq VAR_0x8007, FALSE, EventScript_NoRoomToPickUpItem release return @@ -124,16 +113,13 @@ EventScript_PickUpItem:: additem VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName copyvar VAR_0x8008, VAR_RESULT - compare VAR_0x8008, TRUE - call_if_eq EventScript_FoundTMHM - compare VAR_0x8008, FALSE - call_if_eq EventScript_FoundItem + call_if_eq VAR_0x8008, TRUE, EventScript_FoundTMHM + call_if_eq VAR_0x8008, FALSE, EventScript_FoundItem waitfanfare waitmessage bufferitemnameplural STR_VAR_2, VAR_0x8004, VAR_0x8005 pyramid_inchallenge - compare VAR_RESULT, TRUE - goto_if_eq EventScript_PutBattlePyramidItemInBag + goto_if_eq VAR_RESULT, TRUE, EventScript_PutBattlePyramidItemInBag msgbox gText_PutItemInPocket, MSGBOX_DEFAULT return @@ -164,20 +150,16 @@ EventScript_HiddenItemScript:: bufferitemnameplural STR_VAR_2, VAR_0x8005, 1 checkitemtype VAR_0x8005 call EventScript_BufferPocketNameAndTryFanfare - compare VAR_0x8007, TRUE - goto_if_eq EventScript_PickUpHiddenItem - compare VAR_0x8007, FALSE - goto_if_eq EventScript_NoRoomForHiddenItem + goto_if_eq VAR_0x8007, TRUE, EventScript_PickUpHiddenItem + goto_if_eq VAR_0x8007, FALSE, EventScript_NoRoomForHiddenItem end EventScript_PickUpHiddenItem:: copyvar VAR_0x8008, VAR_0x8004 copyvar VAR_0x8004, VAR_0x8005 specialvar VAR_RESULT, BufferTMHMMoveName - compare VAR_RESULT, TRUE - goto_if_eq EventScript_FoundHiddenTMHM - compare VAR_RESULT, FALSE - goto_if_eq EventScript_FoundHiddenItem + goto_if_eq VAR_RESULT, TRUE, EventScript_FoundHiddenTMHM + goto_if_eq VAR_RESULT, FALSE, EventScript_FoundHiddenItem end EventScript_FoundHiddenTMHM:: diff --git a/data/scripts/pc_transfer.inc b/data/scripts/pc_transfer.inc index da92ef1d52cf..1204bece3606 100644 --- a/data/scripts/pc_transfer.inc +++ b/data/scripts/pc_transfer.inc @@ -22,8 +22,7 @@ Common_EventScript_TransferredToPC:: EventScript_TransferredSomeonesPC:: specialvar VAR_RESULT, ShouldShowBoxWasFullMessage - compare VAR_RESULT, TRUE - goto_if_eq EventScript_SomeonesPCBoxFull + goto_if_eq VAR_RESULT, TRUE, EventScript_SomeonesPCBoxFull msgbox gText_PkmnTransferredSomeonesPC, MSGBOX_DEFAULT return @@ -35,8 +34,7 @@ EventScript_SomeonesPCBoxFull:: EventScript_TransferredLanettesPC:: specialvar VAR_RESULT, ShouldShowBoxWasFullMessage - compare VAR_RESULT, TRUE - goto_if_eq EventScript_LanettesPCBoxFull + goto_if_eq VAR_RESULT, TRUE, EventScript_LanettesPCBoxFull msgbox gText_PkmnTransferredLanettesPC, MSGBOX_DEFAULT return diff --git a/data/scripts/pkmn_center_nurse.inc b/data/scripts/pkmn_center_nurse.inc index 310f4d304cf7..64ccdfa77e55 100644 --- a/data/scripts/pkmn_center_nurse.inc +++ b/data/scripts/pkmn_center_nurse.inc @@ -3,13 +3,10 @@ Common_EventScript_PkmnCenterNurse:: faceplayer setvar VAR_0x8004, 0 specialvar VAR_RESULT, CountPlayerTrainerStars - compare VAR_RESULT, 4 - goto_if_eq EventScript_PkmnCenterNurse_GoldCard + goto_if_eq VAR_RESULT, 4, EventScript_PkmnCenterNurse_GoldCard msgbox gText_WouldYouLikeToRestYourPkmn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_HealPkmn - compare VAR_RESULT, NO - goto_if_eq EventScript_PkmnCenterNurse_Goodbye + goto_if_eq VAR_RESULT, YES, EventScript_PkmnCenterNurse_HealPkmn + goto_if_eq VAR_RESULT, NO, EventScript_PkmnCenterNurse_Goodbye end EventScript_PkmnCenterNurse_Goodbye:: @@ -19,10 +16,8 @@ EventScript_PkmnCenterNurse_Goodbye:: @ VAR_0x8004 is 1 when player has Gold Card; jumps are identical EventScript_PkmnCenterNurse_HealPkmn:: incrementgamestat GAME_STAT_USED_POKECENTER - compare VAR_0x8004, 0 - call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn - compare VAR_0x8004, 1 - call_if_eq EventScript_PkmnCenterNurse_IllTakeYourPkmn2 + call_if_eq VAR_0x8004, 0, EventScript_PkmnCenterNurse_IllTakeYourPkmn + call_if_eq VAR_0x8004, 1, EventScript_PkmnCenterNurse_IllTakeYourPkmn2 waitmessage call EventScript_PkmnCenterNurse_TakeAndHealPkmn goto_if_unset FLAG_POKERUS_EXPLAINED, EventScript_PkmnCenterNurse_CheckPokerus @@ -49,20 +44,16 @@ EventScript_PkmnCenterNurse_TakeAndHealPkmn:: EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom:: specialvar VAR_RESULT, PlayerNotAtTrainerHillEntrance - compare VAR_RESULT, 0 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn + goto_if_eq VAR_RESULT, 0, EventScript_PkmnCenterNurse_ReturnPkmn specialvar VAR_RESULT, BufferUnionRoomPlayerName copyvar VAR_0x8008, VAR_RESULT - compare VAR_0x8008, 0 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn - compare VAR_0x8008, 1 - goto_if_eq EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom + goto_if_eq VAR_0x8008, 0, EventScript_PkmnCenterNurse_ReturnPkmn + goto_if_eq VAR_0x8008, 1, EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom end @ VAR_0x8004 is 1 when player has Gold Card EventScript_PkmnCenterNurse_ReturnPkmn:: - compare VAR_0x8004, 1 - goto_if_eq EventScript_PkmnCenterNurse_ReturnPkmn2 + goto_if_eq VAR_0x8004, 1, EventScript_PkmnCenterNurse_ReturnPkmn2 message gText_RestoredPkmnToFullHealth waitmessage applymovement VAR_0x800B, Movement_PkmnCenterNurse_Bow @@ -91,10 +82,8 @@ EventScript_PkmnCenterNurse_PlayerWaitingInUnionRoom:: EventScript_PkmnCenterNurse_CheckPokerus:: specialvar VAR_RESULT, IsPokerusInParty - compare VAR_RESULT, TRUE - goto_if_eq EventScript_PkmnCenterNurse_ExplainPokerus - compare VAR_RESULT, FALSE - goto_if_eq EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom + goto_if_eq VAR_RESULT, TRUE, EventScript_PkmnCenterNurse_ExplainPokerus + goto_if_eq VAR_RESULT, FALSE, EventScript_PkmnCenterNurse_CheckTrainerHillAndUnionRoom end EventScript_PkmnCenterNurse_ExplainPokerus:: @@ -112,15 +101,13 @@ EventScript_PkmnCenterNurse_GoldCard:: applymovement VAR_0x800B, Common_Movement_Delay48 waitmovement 0 msgbox gText_NoticesGoldCard, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn + goto_if_eq VAR_RESULT, YES, EventScript_PkmnCenterNurse_GoldCardHealPkmn message gText_WeHopeToSeeYouAgain2 return EventScript_PkmnCenterNurse_AskForUsual:: msgbox gText_YouWantTheUsual, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_PkmnCenterNurse_GoldCardHealPkmn + goto_if_eq VAR_RESULT, YES, EventScript_PkmnCenterNurse_GoldCardHealPkmn message gText_WeHopeToSeeYouAgain2 return diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index e2e985a7a1fe..caa4e69551ec 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -11,10 +11,8 @@ PlayersHouse_1F_EventScript_EnterHouseMovingIn:: msgbox PlayersHouse_1F_Text_IsntItNiceInHere, MSGBOX_DEFAULT applymovement VAR_0x8004, Common_Movement_FacePlayer waitmovement 0 - compare VAR_0x8005, MALE - call_if_eq PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale - compare VAR_0x8005, FEMALE - call_if_eq PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale + call_if_eq VAR_0x8005, MALE, PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale + call_if_eq VAR_0x8005, FEMALE, PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale msgbox PlayersHouse_1F_Text_MoversPokemonGoSetClock, MSGBOX_DEFAULT closemessage setvar VAR_LITTLEROOT_INTRO_STATE, 4 @@ -69,10 +67,8 @@ PlayersHouse_2F_EventScript_WallClock:: setflag FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1 setflag FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2 checkplayergender - compare VAR_RESULT, MALE - call_if_eq PlayersHouse_2F_EventScript_MomComesUpstairsMale - compare VAR_RESULT, FEMALE - call_if_eq PlayersHouse_2F_EventScript_MomComesUpstairsFemale + call_if_eq VAR_RESULT, MALE, PlayersHouse_2F_EventScript_MomComesUpstairsMale + call_if_eq VAR_RESULT, FEMALE, PlayersHouse_2F_EventScript_MomComesUpstairsFemale playse SE_EXIT removeobject VAR_0x8008 releaseall @@ -310,16 +306,12 @@ PlayersHouse_1F_Movement_MomReturnToSeatFemale: PlayersHouse_1F_EventScript_Mom:: lock faceplayer - compare VAR_LITTLEROOT_HOUSES_STATE_MAY, 4 - goto_if_eq PlayersHouse_1F_EventScript_DontPushYourselfTooHard - compare VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 4 - goto_if_eq PlayersHouse_1F_EventScript_DontPushYourselfTooHard + goto_if_eq VAR_LITTLEROOT_HOUSES_STATE_MAY, 4, PlayersHouse_1F_EventScript_DontPushYourselfTooHard + goto_if_eq VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 4, PlayersHouse_1F_EventScript_DontPushYourselfTooHard goto_if_set FLAG_HAS_MATCH_CALL, PlayersHouse_1F_EventScript_TryRegisterMom goto_if_set FLAG_RESCUED_BIRCH, PlayersHouse_1F_EventScript_MomHealsParty - compare VAR_TEMP_1, 1 - goto_if_eq PlayersHouse_1F_EventScript_SeeYouHoney - compare VAR_LITTLEROOT_INTRO_STATE, 7 - goto_if_eq PlayersHouse_1F_EventScript_DidYouMeetProfBirch + goto_if_eq VAR_TEMP_1, 1, PlayersHouse_1F_EventScript_SeeYouHoney + goto_if_eq VAR_LITTLEROOT_INTRO_STATE, 7, PlayersHouse_1F_EventScript_DidYouMeetProfBirch msgbox PlayersHouse_1F_Text_IsntItNiceInHere, MSGBOX_DEFAULT release end @@ -351,8 +343,7 @@ PlayersHouse_1F_EventScript_TryGiveAmuletCoin:: goto_if_set FLAG_RECEIVED_AMULET_COIN, PlayersHouse_1F_EventScript_MomHealsParty msgbox PlayersHouse_1F_Text_GotDadsBadgeHeresSomethingFromMom, MSGBOX_DEFAULT giveitem ITEM_AMULET_COIN - compare VAR_RESULT, FALSE - goto_if_eq Common_EventScript_ShowBagIsFull + goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull msgbox PlayersHouse_1F_Text_DontPushYourselfTooHard, MSGBOX_DEFAULT setflag FLAG_RECEIVED_AMULET_COIN release @@ -432,14 +423,10 @@ PlayersHouse_1F_Movement_MovePlayerAwayFromDoor: PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: lockall checkplayergender - compare VAR_RESULT, MALE - call_if_eq PlayersHouse_1F_EventScript_SetUpObjectEventVarsMale - compare VAR_RESULT, FEMALE - call_if_eq PlayersHouse_1F_EventScript_SetUpObjectEventVarsFemale - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_PlayerEnterRoomMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_PlayerEnterRoomFemale + call_if_eq VAR_RESULT, MALE, PlayersHouse_1F_EventScript_SetUpObjectEventVarsMale + call_if_eq VAR_RESULT, FEMALE, PlayersHouse_1F_EventScript_SetUpObjectEventVarsFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_PlayerEnterRoomMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_PlayerEnterRoomFemale applymovement VAR_0x8009, Common_Movement_FacePlayer waitmovement 0 playse SE_PIN @@ -448,58 +435,44 @@ PlayersHouse_1F_EventScript_GetSSTicketAndSeeLatiTV:: applymovement VAR_0x8009, Common_Movement_Delay48 waitmovement 0 delay 20 - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_DadApproachPlayerMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_DadApproachPlayerFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_DadApproachPlayerMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_DadApproachPlayerFemale msgbox PlayersHouse_1F_Text_TicketFromBrineyCameForYou, MSGBOX_DEFAULT giveitem ITEM_SS_TICKET msgbox PlayersHouse_1F_Text_PortsInSlateportLilycove, MSGBOX_DEFAULT closemessage delay 20 - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachDadMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachDadFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_MomApproachDadMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_MomApproachDadFemale msgbox PlayersHouse_1F_Text_BetterGetBackToGym, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_DadExitsMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_DadExitsFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_DadExitsMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_DadExitsFemale playse SE_DOOR removeobject VAR_0x8009 setflag FLAG_RECEIVED_SS_TICKET delay 30 - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachPlayerMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachPlayerFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_MomApproachPlayerMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_MomApproachPlayerFemale delay 20 msgbox PlayersHouse_1F_Text_DadShouldStayLonger, MSGBOX_DEFAULT closemessage setflag FLAG_SYS_TV_LATIAS_LATIOS special TurnOnTVScreen delay 60 - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastFemale msgbox PlayersHouse_1F_Text_IsThatABreakingStory, MSGBOX_DEFAULT closemessage - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale msgbox PlayersHouse_1F_Text_LatiEmergencyNewsFlash, MSGBOX_DEFAULT closemessage clearflag FLAG_SYS_TV_LATIAS_LATIOS setflag FLAG_LATIOS_OR_LATIAS_ROAMING special TurnOffTVScreen - compare VAR_0x8008, MALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVMale - compare VAR_0x8008, FEMALE - call_if_eq PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale + call_if_eq VAR_0x8008, MALE, PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVMale + call_if_eq VAR_0x8008, FEMALE, PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale msgbox PlayersHouse_1F_Text_WhatColorDidTheySay, MSGBOX_DEFAULT multichoice 22, 8, MULTI_TV_LATI, TRUE copyvar VAR_0x8004, VAR_RESULT diff --git a/data/scripts/prof_birch.inc b/data/scripts/prof_birch.inc index 97a967138f35..38a5dfec3238 100644 --- a/data/scripts/prof_birch.inc +++ b/data/scripts/prof_birch.inc @@ -1,23 +1,14 @@ ProfBirch_EventScript_UpdateLocation:: - compare VAR_PETALBURG_GYM_STATE, 0 - goto_if_eq Common_EventScript_NopReturn + goto_if_eq VAR_PETALBURG_GYM_STATE, 0, Common_EventScript_NopReturn goto_if_set FLAG_SYS_GAME_CLEAR, ProfBirch_EventScript_MoveToLab - compare VAR_BIRCH_STATE, 0 - call_if_eq ProfBirch_EventScript_MoveToLab - compare VAR_BIRCH_STATE, 1 - call_if_eq ProfBirch_EventScript_MoveToLab - compare VAR_BIRCH_STATE, 2 - call_if_eq ProfBirch_EventScript_MoveToRoute101 - compare VAR_BIRCH_STATE, 3 - call_if_eq ProfBirch_EventScript_MoveToRoute101 - compare VAR_BIRCH_STATE, 4 - call_if_eq ProfBirch_EventScript_MoveToRoute103 - compare VAR_BIRCH_STATE, 5 - call_if_eq ProfBirch_EventScript_MoveToRoute103 - compare VAR_BIRCH_STATE, 6 - call_if_eq ProfBirch_EventScript_MoveToLab - compare VAR_BIRCH_STATE, 7 - call_if_eq ProfBirch_EventScript_MoveToLab + call_if_eq VAR_BIRCH_STATE, 0, ProfBirch_EventScript_MoveToLab + call_if_eq VAR_BIRCH_STATE, 1, ProfBirch_EventScript_MoveToLab + call_if_eq VAR_BIRCH_STATE, 2, ProfBirch_EventScript_MoveToRoute101 + call_if_eq VAR_BIRCH_STATE, 3, ProfBirch_EventScript_MoveToRoute101 + call_if_eq VAR_BIRCH_STATE, 4, ProfBirch_EventScript_MoveToRoute103 + call_if_eq VAR_BIRCH_STATE, 5, ProfBirch_EventScript_MoveToRoute103 + call_if_eq VAR_BIRCH_STATE, 6, ProfBirch_EventScript_MoveToLab + call_if_eq VAR_BIRCH_STATE, 7, ProfBirch_EventScript_MoveToLab return ProfBirch_EventScript_MoveToLab:: @@ -49,8 +40,7 @@ ProfBirch_EventScript_RatePokedexOrRegister:: ProfBirch_EventScript_AskRatePokedex:: msgbox gBirchDexRatingText_AreYouCurious, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq ProfBirch_EventScript_DeclineRating + goto_if_eq VAR_RESULT, NO, ProfBirch_EventScript_DeclineRating call ProfBirch_EventScript_RatePokedex release end @@ -77,8 +67,7 @@ ProfBirch_EventScript_RatePokedex:: buffernumberstring STR_VAR_2, VAR_0x8009 @ Num Hoenn caught msgbox gBirchDexRatingText_SoYouveSeenAndCaught, MSGBOX_DEFAULT call ProfBirch_EventScript_ShowRatingMessage - compare VAR_0x800A, 0 - goto_if_eq Common_EventScript_NopReturn @ National dex not enabled + goto_if_eq VAR_0x800A, 0, Common_EventScript_NopReturn @ National dex not enabled setvar VAR_0x8004, 1 specialvar VAR_RESULT, ScriptGetPokedexInfo copyvar VAR_0x8008, VAR_0x8005 diff --git a/data/scripts/profile_man.inc b/data/scripts/profile_man.inc index 2c5b16122c26..4acf049bd8e7 100644 --- a/data/scripts/profile_man.inc +++ b/data/scripts/profile_man.inc @@ -28,10 +28,8 @@ ProfileMan_EventScript_CreateProfile:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq ProfileMan_EventScript_CancelShowProfile - compare VAR_RESULT, 1 - goto_if_eq ProfileMan_EventScript_ShowProfile + goto_if_eq VAR_RESULT, 0, ProfileMan_EventScript_CancelShowProfile + goto_if_eq VAR_RESULT, 1, ProfileMan_EventScript_ShowProfile end ProfileMan_EventScript_CancelShowProfile:: @@ -80,10 +78,8 @@ ProfileMan_EventScript_CreateNewProfile:: call Common_ShowEasyChatScreen lock faceplayer - compare VAR_RESULT, 0 - goto_if_eq ProfileMan_EventScript_CancelShowProfile - compare VAR_RESULT, 1 - goto_if_eq ProfileMan_EventScript_ShowProfile + goto_if_eq VAR_RESULT, 0, ProfileMan_EventScript_CancelShowProfile + goto_if_eq VAR_RESULT, 1, ProfileMan_EventScript_ShowProfile end ProfileMan_EventScript_DeclineNewProfile:: diff --git a/data/scripts/questionnaire.inc b/data/scripts/questionnaire.inc index 62e149bb7836..849b25a46a30 100644 --- a/data/scripts/questionnaire.inc +++ b/data/scripts/questionnaire.inc @@ -1,21 +1,16 @@ EventScript_Questionnaire:: lockall msgbox Questionnaire_Text_FillOut, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq Questionnaire_EventScript_Release + goto_if_eq VAR_RESULT, NO, Questionnaire_EventScript_Release setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE call Common_ShowEasyChatScreen lock faceplayer specialvar VAR_0x8008, GetMartEmployeeObjectEventId - compare VAR_0x8004, 1 - goto_if_eq Questionnaire_EventScript_PlayerInputMysteryEventPhrase - compare VAR_0x8004, 2 - goto_if_eq Questionnaire_EventScript_PlayerInputMysteryGiftPhrase - compare VAR_RESULT, 0 - goto_if_eq Questionnaire_EventScript_Release - compare VAR_RESULT, 1 - goto_if_eq Questionnaire_EventScript_ThankYou + goto_if_eq VAR_0x8004, 1, Questionnaire_EventScript_PlayerInputMysteryEventPhrase + goto_if_eq VAR_0x8004, 2, Questionnaire_EventScript_PlayerInputMysteryGiftPhrase + goto_if_eq VAR_RESULT, 0, Questionnaire_EventScript_Release + goto_if_eq VAR_RESULT, 1, Questionnaire_EventScript_ThankYou end Questionnaire_EventScript_PlayerInputMysteryEventPhrase:: diff --git a/data/scripts/record_mix.inc b/data/scripts/record_mix.inc index d1ad84d3a748..109fde2a8040 100644 --- a/data/scripts/record_mix.inc +++ b/data/scripts/record_mix.inc @@ -3,10 +3,8 @@ EventScript_MixRecordsPrompt:: lock faceplayer msgbox Text_WouldYouLikeToMixRecords, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq EventScript_MixRecords - compare VAR_RESULT, NO - goto_if_eq EventScript_EndMixRecords + goto_if_eq VAR_RESULT, YES, EventScript_MixRecords + goto_if_eq VAR_RESULT, NO, EventScript_EndMixRecords goto EventScript_EndMixRecords EventScript_MixRecords:: diff --git a/data/scripts/rival_graphics.inc b/data/scripts/rival_graphics.inc index a0fb15f0e4ab..26a5c8fbcf41 100644 --- a/data/scripts/rival_graphics.inc +++ b/data/scripts/rival_graphics.inc @@ -1,9 +1,7 @@ Common_EventScript_SetupRivalGfxId:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq EventScript_SetupRivalGfxIdFemale - compare VAR_RESULT, FEMALE - goto_if_eq EventScript_SetupRivalGfxIdMale + goto_if_eq VAR_RESULT, MALE, EventScript_SetupRivalGfxIdFemale + goto_if_eq VAR_RESULT, FEMALE, EventScript_SetupRivalGfxIdMale end EventScript_SetupRivalGfxIdFemale:: @@ -16,10 +14,8 @@ EventScript_SetupRivalGfxIdMale:: Common_EventScript_SetupRivalOnBikeGfxId:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq EventScript_SetupRivalOnBikeGfxIdFemale - compare VAR_RESULT, FEMALE - goto_if_eq EventScript_SetupRivalOnBikeGfxIdMale + goto_if_eq VAR_RESULT, MALE, EventScript_SetupRivalOnBikeGfxIdFemale + goto_if_eq VAR_RESULT, FEMALE, EventScript_SetupRivalOnBikeGfxIdMale end EventScript_SetupRivalOnBikeGfxIdFemale:: @@ -33,10 +29,8 @@ EventScript_SetupRivalOnBikeGfxIdMale:: @ Unused Common_EventScript_SetupRivalGfxIdSameGender:: checkplayergender - compare VAR_RESULT, MALE - goto_if_eq EventScript_SetupRivalGfxIdMale2 - compare VAR_RESULT, FEMALE - goto_if_eq EventScript_SetupRivalGfxIdFemale2 + goto_if_eq VAR_RESULT, MALE, EventScript_SetupRivalGfxIdMale2 + goto_if_eq VAR_RESULT, FEMALE, EventScript_SetupRivalGfxIdFemale2 end EventScript_SetupRivalGfxIdMale2:: diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index 96f5809d7b51..7163a449aac3 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -1,23 +1,19 @@ Roulette_EventScript_Table1:: checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 0 getpokenewsactive POKENEWS_GAME_CORNER - compare VAR_RESULT, FALSE - goto_if_eq Roulette_EventScript_Play + goto_if_eq VAR_RESULT, FALSE, Roulette_EventScript_Play addvar VAR_0x8004, ROULETTE_SPECIAL_RATE goto Roulette_EventScript_Play end Roulette_EventScript_Table2:: checkitem ITEM_COIN_CASE - compare VAR_RESULT, FALSE - goto_if_eq MauvilleCity_GameCorner_EventScript_NoCoinCase + goto_if_eq VAR_RESULT, FALSE, MauvilleCity_GameCorner_EventScript_NoCoinCase setvar VAR_0x8004, 1 getpokenewsactive POKENEWS_GAME_CORNER - compare VAR_RESULT, FALSE - goto_if_eq Roulette_EventScript_Play + goto_if_eq VAR_RESULT, FALSE, Roulette_EventScript_Play addvar VAR_0x8004, ROULETTE_SPECIAL_RATE goto Roulette_EventScript_Play end diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc index 3b7d85a674c8..eb6a90abdfd7 100644 --- a/data/scripts/safari_zone.inc +++ b/data/scripts/safari_zone.inc @@ -14,8 +14,7 @@ SafariZone_EventScript_Exit:: SafariZone_EventScript_RetirePrompt:: lockall msgbox SafariZone_Text_WouldYouLikeToExit, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SafariZone_EventScript_Retire + goto_if_eq VAR_RESULT, YES, SafariZone_EventScript_Retire releaseall end @@ -43,11 +42,9 @@ SafariZone_EventScript_OutOfBalls:: EventScript_PokeBlockFeeder:: lockall special GetPokeblockFeederInFront - compare VAR_RESULT, 0xFFFF - goto_if_ne SafariZone_EventScript_PokeblockPresent + goto_if_ne VAR_RESULT, 0xFFFF, SafariZone_EventScript_PokeblockPresent msgbox SafariZone_Text_PlacePokeblockOnFeeder, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SafariZone_EventScript_ChoosePokeblock + goto_if_eq VAR_RESULT, YES, SafariZone_EventScript_ChoosePokeblock releaseall end @@ -55,8 +52,7 @@ SafariZone_EventScript_ChoosePokeblock:: fadescreen FADE_TO_BLACK special OpenPokeblockCaseOnFeeder waitstate - compare VAR_RESULT, 0xFFFF - goto_if_ne SafariZone_EventScript_PokeblockPlaced + goto_if_ne VAR_RESULT, 0xFFFF, SafariZone_EventScript_PokeblockPlaced end SafariZone_EventScript_PokeblockPlaced:: diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc index f024f090147c..d21bb9aab5c1 100644 --- a/data/scripts/secret_base.inc +++ b/data/scripts/secret_base.inc @@ -27,33 +27,24 @@ SecretBase_Text_DiscoveredSmallEntrance: SecretBase_EventScript_CheckEntrance:: special GetSecretBaseTypeInFrontOfPlayer special CheckPlayerHasSecretBase - compare VAR_RESULT, TRUE - goto_if_eq SecretBase_EventScript_AlreadyHasSecretBase + goto_if_eq VAR_RESULT, TRUE, SecretBase_EventScript_AlreadyHasSecretBase checkpartymove MOVE_SECRET_POWER setfieldeffectargument 0, VAR_RESULT buffermovename STR_VAR_2, MOVE_SECRET_POWER - compare VAR_0x8007, SECRET_BASE_RED_CAVE - goto_if_eq SecretBase_EventScript_Cave - compare VAR_0x8007, SECRET_BASE_BROWN_CAVE - goto_if_eq SecretBase_EventScript_Cave - compare VAR_0x8007, SECRET_BASE_BLUE_CAVE - goto_if_eq SecretBase_EventScript_Cave - compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE - goto_if_eq SecretBase_EventScript_Cave - compare VAR_0x8007, SECRET_BASE_TREE - goto_if_eq SecretBase_EventScript_Tree - compare VAR_0x8007, SECRET_BASE_SHRUB - goto_if_eq SecretBase_EventScript_Shrub + goto_if_eq VAR_0x8007, SECRET_BASE_RED_CAVE, SecretBase_EventScript_Cave + goto_if_eq VAR_0x8007, SECRET_BASE_BROWN_CAVE, SecretBase_EventScript_Cave + goto_if_eq VAR_0x8007, SECRET_BASE_BLUE_CAVE, SecretBase_EventScript_Cave + goto_if_eq VAR_0x8007, SECRET_BASE_YELLOW_CAVE, SecretBase_EventScript_Cave + goto_if_eq VAR_0x8007, SECRET_BASE_TREE, SecretBase_EventScript_Tree + goto_if_eq VAR_0x8007, SECRET_BASE_SHRUB, SecretBase_EventScript_Shrub end SecretBase_EventScript_Cave:: lockall - compare VAR_RESULT, PARTY_SIZE - goto_if_eq SecretBase_EventScript_CaveNoSecretPower + goto_if_eq VAR_RESULT, PARTY_SIZE, SecretBase_EventScript_CaveNoSecretPower bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_IndentUseSecretPower, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage dofieldeffect FLDEFF_USE_SECRET_POWER_CAVE @@ -80,12 +71,10 @@ SecretBase_EventScript_CaveEnter:: SecretBase_EventScript_Tree:: lockall - compare VAR_RESULT, PARTY_SIZE - goto_if_eq SecretBase_EventScript_TreeNoSecretPower + goto_if_eq VAR_RESULT, PARTY_SIZE, SecretBase_EventScript_TreeNoSecretPower bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_TreeUseSecretPower, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage dofieldeffect FLDEFF_USE_SECRET_POWER_TREE @@ -112,12 +101,10 @@ SecretBase_EventScript_TreeEnter:: SecretBase_EventScript_Shrub:: lockall - compare VAR_RESULT, PARTY_SIZE - goto_if_eq SecretBase_EventScript_ShrubNoSecretPower + goto_if_eq VAR_RESULT, PARTY_SIZE, SecretBase_EventScript_ShrubNoSecretPower bufferpartymonnick STR_VAR_1, VAR_RESULT msgbox SecretBase_Text_ClumpUseSecretPower, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage dofieldeffect FLDEFF_USE_SECRET_POWER_SHRUB @@ -161,8 +148,7 @@ SecretBase_EventScript_FirstEntrance:: waitmovement 0 setvar VAR_INIT_SECRET_BASE, 1 msgbox SecretBase_Text_WantToMakeYourSecretBaseHere, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq SecretBase_EventScript_SetAsBase + goto_if_eq VAR_RESULT, YES, SecretBase_EventScript_SetAsBase closemessage playse SE_EXIT special ClearAndLeaveSecretBase @@ -185,8 +171,7 @@ SecretBase_EventScript_Enter:: setvar VAR_INIT_SECRET_BASE, 1 playse SE_EXIT special IsCurSecretBaseOwnedByAnotherPlayer - compare VAR_RESULT, FALSE - goto_if_eq SecretBase_EventScript_EnterPlayersBase + goto_if_eq VAR_RESULT, FALSE, SecretBase_EventScript_EnterPlayersBase clearflag FLAG_DECORATION_0 special EnterSecretBase setvar VAR_SECRET_BASE_INITIALIZED, 0 @@ -202,59 +187,43 @@ SecretBase_EventScript_EnterPlayersBase:: SecretBase_EventScript_AlreadyHasSecretBase:: checkpartymove MOVE_SECRET_POWER - compare VAR_RESULT, PARTY_SIZE - goto_if_eq SecretBase_EventScript_NoSecretPower + goto_if_eq VAR_RESULT, PARTY_SIZE, SecretBase_EventScript_NoSecretPower setfieldeffectargument 0, VAR_RESULT setorcopyvar VAR_0x8004, VAR_RESULT lockall special GetSecretBaseNearbyMapName msgbox SecretBase_Text_WouldYouLikeToMoveBases, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance fadescreenswapbuffers FADE_TO_BLACK special MoveOutOfSecretBaseFromOutside closemessage fadescreenswapbuffers FADE_FROM_BLACK msgbox SecretBase_Text_MovingCompletedUseSecretPower, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_CancelOnEntrance + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_CancelOnEntrance bufferpartymonnick STR_VAR_1, VAR_0x8004 buffermovename STR_VAR_2, MOVE_SECRET_POWER msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT closemessage closemessage - compare VAR_0x8007, SECRET_BASE_RED_CAVE - goto_if_eq SecretBase_EventScript_CaveUseSecretPower - compare VAR_0x8007, SECRET_BASE_BROWN_CAVE - goto_if_eq SecretBase_EventScript_CaveUseSecretPower - compare VAR_0x8007, SECRET_BASE_BLUE_CAVE - goto_if_eq SecretBase_EventScript_CaveUseSecretPower - compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE - goto_if_eq SecretBase_EventScript_CaveUseSecretPower - compare VAR_0x8007, SECRET_BASE_TREE - goto_if_eq SecretBase_EventScript_TreeUseSecretPower - compare VAR_0x8007, SECRET_BASE_SHRUB - goto_if_eq SecretBase_EventScript_ShrubUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_RED_CAVE, SecretBase_EventScript_CaveUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_BROWN_CAVE, SecretBase_EventScript_CaveUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_BLUE_CAVE, SecretBase_EventScript_CaveUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_YELLOW_CAVE, SecretBase_EventScript_CaveUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_TREE, SecretBase_EventScript_TreeUseSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_SHRUB, SecretBase_EventScript_ShrubUseSecretPower releaseall end SecretBase_EventScript_NoSecretPower:: lockall - compare VAR_0x8007, SECRET_BASE_RED_CAVE - goto_if_eq SecretBase_EventScript_CaveNoSecretPower - compare VAR_0x8007, SECRET_BASE_BROWN_CAVE - goto_if_eq SecretBase_EventScript_CaveNoSecretPower - compare VAR_0x8007, SECRET_BASE_BLUE_CAVE - goto_if_eq SecretBase_EventScript_CaveNoSecretPower - compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE - goto_if_eq SecretBase_EventScript_CaveNoSecretPower - compare VAR_0x8007, SECRET_BASE_TREE - goto_if_eq SecretBase_EventScript_TreeNoSecretPower - compare VAR_0x8007, SECRET_BASE_SHRUB - goto_if_eq SecretBase_EventScript_ShrubNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_RED_CAVE, SecretBase_EventScript_CaveNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_BROWN_CAVE, SecretBase_EventScript_CaveNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_BLUE_CAVE, SecretBase_EventScript_CaveNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_YELLOW_CAVE, SecretBase_EventScript_CaveNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_TREE, SecretBase_EventScript_TreeNoSecretPower + goto_if_eq VAR_0x8007, SECRET_BASE_SHRUB, SecretBase_EventScript_ShrubNoSecretPower end SecretBase_EventScript_CancelOnEntrance:: @@ -302,11 +271,9 @@ SecretBase_EventScript_PutAwayDecoration:: SecretBase_EventScript_PutAwayDecorationLoop:: special PutAwayDecorationIteration - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_PutAwayDecorationEnd + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_PutAwayDecorationEnd addvar VAR_0x8004, 1 - compare VAR_0x8005, 0 - goto_if_eq SecretBase_EventScript_PutAwayDecorationLoop + goto_if_eq VAR_0x8005, 0, SecretBase_EventScript_PutAwayDecorationLoop removeobject VAR_0x8006 setflag VAR_0x8005 @ UB: VAR_0x8005 is set to a flag by PutAwayDecorationIteration, but ScrCmd_setflag doesn't use VarGet goto SecretBase_EventScript_PutAwayDecorationLoop @@ -317,26 +284,16 @@ SecretBase_EventScript_PutAwayDecorationEnd:: SecretBase_EventScript_RecordMixTrainer:: special GetSecretBaseOwnerAndState - compare VAR_0x8004, 0 - goto_if_eq SecretBase_EventScript_Trainer0 - compare VAR_0x8004, 1 - goto_if_eq SecretBase_EventScript_Trainer1 - compare VAR_0x8004, 2 - goto_if_eq SecretBase_EventScript_Trainer2 - compare VAR_0x8004, 3 - goto_if_eq SecretBase_EventScript_Trainer3 - compare VAR_0x8004, 4 - goto_if_eq SecretBase_EventScript_Trainer4 - compare VAR_0x8004, 5 - goto_if_eq SecretBase_EventScript_Trainer5 - compare VAR_0x8004, 6 - goto_if_eq SecretBase_EventScript_Trainer6 - compare VAR_0x8004, 7 - goto_if_eq SecretBase_EventScript_Trainer7 - compare VAR_0x8004, 8 - goto_if_eq SecretBase_EventScript_Trainer8 - compare VAR_0x8004, 9 - goto_if_eq SecretBase_EventScript_Trainer9 + goto_if_eq VAR_0x8004, 0, SecretBase_EventScript_Trainer0 + goto_if_eq VAR_0x8004, 1, SecretBase_EventScript_Trainer1 + goto_if_eq VAR_0x8004, 2, SecretBase_EventScript_Trainer2 + goto_if_eq VAR_0x8004, 3, SecretBase_EventScript_Trainer3 + goto_if_eq VAR_0x8004, 4, SecretBase_EventScript_Trainer4 + goto_if_eq VAR_0x8004, 5, SecretBase_EventScript_Trainer5 + goto_if_eq VAR_0x8004, 6, SecretBase_EventScript_Trainer6 + goto_if_eq VAR_0x8004, 7, SecretBase_EventScript_Trainer7 + goto_if_eq VAR_0x8004, 8, SecretBase_EventScript_Trainer8 + goto_if_eq VAR_0x8004, 9, SecretBase_EventScript_Trainer9 end @ VAR_RESULT is initially set by GetSecretBaseOwnerAndState @@ -344,16 +301,13 @@ SecretBase_EventScript_Trainer0:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer0PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer0PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer0PostBattle msgbox SecretBase_Text_Trainer0Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer0DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer0DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer0DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer0DeclineBattle msgbox SecretBase_Text_Trainer0AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -381,16 +335,13 @@ SecretBase_EventScript_Trainer1:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer1PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer1PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer1PostBattle msgbox SecretBase_Text_Trainer1Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer1DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer1DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer1DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer1DeclineBattle msgbox SecretBase_Text_Trainer1AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -418,16 +369,13 @@ SecretBase_EventScript_Trainer2:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer2PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer2PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer2PostBattle msgbox SecretBase_Text_Trainer2Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer2DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer2DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer2DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer2DeclineBattle msgbox SecretBase_Text_Trainer2AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -455,16 +403,13 @@ SecretBase_EventScript_Trainer3:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer3PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer3PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer3PostBattle msgbox SecretBase_Text_Trainer3Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer3DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer3DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer3DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer3DeclineBattle msgbox SecretBase_Text_Trainer3AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -492,16 +437,13 @@ SecretBase_EventScript_Trainer4:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer4PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer4PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer4PostBattle msgbox SecretBase_Text_Trainer4Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer4DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer4DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer4DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer4DeclineBattle msgbox SecretBase_Text_Trainer4AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -529,16 +471,13 @@ SecretBase_EventScript_Trainer5:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer5PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer5PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer5PostBattle msgbox SecretBase_Text_Trainer5Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer5DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer5DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer5DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer5DeclineBattle msgbox SecretBase_Text_Trainer5AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -566,16 +505,13 @@ SecretBase_EventScript_Trainer6:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer6PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer6PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer6PostBattle msgbox SecretBase_Text_Trainer6Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer6DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer6DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer6DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer6DeclineBattle msgbox SecretBase_Text_Trainer6AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -603,16 +539,13 @@ SecretBase_EventScript_Trainer7:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer7PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer7PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer7PostBattle msgbox SecretBase_Text_Trainer7Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer7DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer7DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer7DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer7DeclineBattle msgbox SecretBase_Text_Trainer7AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -640,16 +573,13 @@ SecretBase_EventScript_Trainer8:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer8PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer8PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer8PostBattle msgbox SecretBase_Text_Trainer8Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer8DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer8DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer8DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer8DeclineBattle msgbox SecretBase_Text_Trainer8AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -677,16 +607,13 @@ SecretBase_EventScript_Trainer9:: lock faceplayer goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer9PreChampion - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_Trainer9PostBattle + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_Trainer9PostBattle msgbox SecretBase_Text_Trainer9Intro, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_Trainer9DeclineBattle + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_Trainer9DeclineBattle setvar VAR_RESULT, 1 special SetBattledOwnerFromResult call Common_EventScript_SaveGame - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_Trainer9DeclineBattle + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_Trainer9DeclineBattle msgbox SecretBase_Text_Trainer9AcceptBattle, MSGBOX_DEFAULT goto SecretBase_EventScript_BattleTrainer end @@ -715,12 +642,9 @@ SecretBase_EventScript_BattleTrainer:: setvar VAR_0x8005, 0 special DoSpecialTrainerBattle waitstate - compare VAR_RESULT, B_OUTCOME_DREW - call_if_eq SecretBase_EventScript_DrewSecretBaseBattle - compare VAR_RESULT, B_OUTCOME_WON - call_if_eq SecretBase_EventScript_WonSecretBaseBattle - compare VAR_RESULT, B_OUTCOME_LOST - call_if_eq SecretBase_EventScript_LostSecretBaseBattle + call_if_eq VAR_RESULT, B_OUTCOME_DREW, SecretBase_EventScript_DrewSecretBaseBattle + call_if_eq VAR_RESULT, B_OUTCOME_WON, SecretBase_EventScript_WonSecretBaseBattle + call_if_eq VAR_RESULT, B_OUTCOME_LOST, SecretBase_EventScript_LostSecretBaseBattle special HealPlayerParty release end diff --git a/data/scripts/secret_power_tm.inc b/data/scripts/secret_power_tm.inc index 41c21e1004fc..11a5d5b6680d 100644 --- a/data/scripts/secret_power_tm.inc +++ b/data/scripts/secret_power_tm.inc @@ -37,26 +37,21 @@ Route111_EventScript_SecretPowerMan:: lock faceplayer msgbox Route111_Text_MakingRoomUseTMToMakeYourOwn, MSGBOX_YESNO - compare VAR_RESULT, YES - goto_if_eq Route111_EventScript_GiveSecretPower + goto_if_eq VAR_RESULT, YES, Route111_EventScript_GiveSecretPower msgbox Route111_Text_DontWantThis, MSGBOX_DEFAULT release end Route111_EventScript_GiveSecretPower:: giveitem ITEM_TM43 - compare VAR_RESULT, FALSE - goto_if_eq Route111_EventScript_NoRoomForSecretPower + goto_if_eq VAR_RESULT, FALSE, Route111_EventScript_NoRoomForSecretPower msgbox Route111_Text_ExplainSecretPower, MSGBOX_DEFAULT closemessage setflag FLAG_RECEIVED_SECRET_POWER clearflag FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN - compare VAR_FACING, DIR_WEST - call_if_eq Route111_EventScript_SecretPowerManExit - compare VAR_FACING, DIR_EAST - call_if_eq Route111_EventScript_SecretPowerManExit - compare VAR_FACING, DIR_NORTH - call_if_eq Route111_EventScript_SecretPowerManExitNorth + call_if_eq VAR_FACING, DIR_WEST, Route111_EventScript_SecretPowerManExit + call_if_eq VAR_FACING, DIR_EAST, Route111_EventScript_SecretPowerManExit + call_if_eq VAR_FACING, DIR_NORTH, Route111_EventScript_SecretPowerManExitNorth removeobject VAR_LAST_TALKED release end diff --git a/data/scripts/shared_secret_base.inc b/data/scripts/shared_secret_base.inc index aca7fc81a5c0..576e9392114b 100644 --- a/data/scripts/shared_secret_base.inc +++ b/data/scripts/shared_secret_base.inc @@ -68,8 +68,7 @@ SecretBase_EventScript_PCMainMenuWithoutRegister:: SecretBase_EventScript_PCPackUp:: msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCShowMainMenu + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_PCShowMainMenu closemessage special MoveOutOfSecretBase releaseall @@ -114,14 +113,11 @@ SecretBase_EventScript_ShowRegisterMenu:: SecretBase_EventScript_PCRegister:: special GetCurSecretBaseRegistrationValidity - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_AlreadyRegistered - compare VAR_RESULT, 2 - goto_if_eq SecretBase_EventScript_CantRegisterTooManyBases + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_AlreadyRegistered + goto_if_eq VAR_RESULT, 2, SecretBase_EventScript_CantRegisterTooManyBases special CopyCurSecretBaseOwnerName_StrVar1 msgbox SecretBase_Text_WantToRegisterSecretBase, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCRegisterMenu + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_PCRegisterMenu msgbox SecretBase_Text_RegistrationCompleted, MSGBOX_SIGN special ToggleCurSecretBaseRegistry special DoSecretBasePCTurnOffEffect @@ -130,8 +126,7 @@ SecretBase_EventScript_PCRegister:: SecretBase_EventScript_AlreadyRegistered:: msgbox SecretBase_Text_AlreadyRegisteredDelete, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq SecretBase_EventScript_PCRegisterMenu + goto_if_eq VAR_RESULT, NO, SecretBase_EventScript_PCRegisterMenu msgbox SecretBase_Text_DataUnregistered, MSGBOX_SIGN special ToggleCurSecretBaseRegistry special DoSecretBasePCTurnOffEffect @@ -184,14 +179,10 @@ SecretBase_EventScript_SandOrnament:: SecretBase_EventScript_ShieldOrToyTV:: special InteractWithShieldOrTVDecoration - compare VAR_RESULT, 0 - goto_if_eq SecretBase_EventScript_BattleTowerShield - compare VAR_RESULT, 1 - goto_if_eq SecretBase_EventScript_ToyTV - compare VAR_RESULT, 2 - goto_if_eq SecretBase_EventScript_SeedotTV - compare VAR_RESULT, 3 - goto_if_eq SecretBase_EventScript_SkittyTV + goto_if_eq VAR_RESULT, 0, SecretBase_EventScript_BattleTowerShield + goto_if_eq VAR_RESULT, 1, SecretBase_EventScript_ToyTV + goto_if_eq VAR_RESULT, 2, SecretBase_EventScript_SeedotTV + goto_if_eq VAR_RESULT, 3, SecretBase_EventScript_SkittyTV end SecretBase_EventScript_BattleTowerShield:: diff --git a/data/scripts/surf.inc b/data/scripts/surf.inc index c2bc35d5a09e..edb116f991ed 100644 --- a/data/scripts/surf.inc +++ b/data/scripts/surf.inc @@ -1,13 +1,11 @@ EventScript_UseSurf:: checkpartymove MOVE_SURF - compare VAR_RESULT, PARTY_SIZE - goto_if_eq EventScript_EndUseSurf + goto_if_eq VAR_RESULT, PARTY_SIZE, EventScript_EndUseSurf bufferpartymonnick STR_VAR_1, VAR_RESULT setfieldeffectargument 0, VAR_RESULT lockall msgbox gText_WantToUseSurf, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_ReleaseUseSurf + goto_if_eq VAR_RESULT, NO, EventScript_ReleaseUseSurf msgbox gText_PlayerUsedSurf, MSGBOX_DEFAULT dofieldeffect FLDEFF_USE_SURF EventScript_ReleaseUseSurf:: diff --git a/data/scripts/trainer_battle.inc b/data/scripts/trainer_battle.inc index 38cf6328100e..bbbcaf3ba3e2 100644 --- a/data/scripts/trainer_battle.inc +++ b/data/scripts/trainer_battle.inc @@ -13,8 +13,7 @@ EventScript_TryDoNormalTrainerBattle:: applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 specialvar VAR_RESULT, GetTrainerFlag - compare VAR_RESULT, FALSE - goto_if_ne EventScript_NoNormalTrainerBattle + goto_if_ne VAR_RESULT, FALSE, EventScript_NoNormalTrainerBattle special PlayTrainerEncounterMusic special SetTrainerFacingDirection goto EventScript_ShowTrainerIntroMsg @@ -27,11 +26,9 @@ EventScript_TryDoDoubleTrainerBattle:: faceplayer call EventScript_RevealTrainer specialvar VAR_RESULT, GetTrainerFlag - compare VAR_RESULT, FALSE - goto_if_ne EventScript_NoDoubleTrainerBattle + goto_if_ne VAR_RESULT, FALSE, EventScript_NoDoubleTrainerBattle special HasEnoughMonsForDoubleBattle - compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne EventScript_NotEnoughMonsForDoubleBattle + goto_if_ne VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS, EventScript_NotEnoughMonsForDoubleBattle special PlayTrainerEncounterMusic special SetTrainerFacingDirection goto EventScript_ShowTrainerIntroMsg @@ -56,8 +53,7 @@ EventScript_DoNoIntroTrainerBattle:: EventScript_TryDoRematchBattle:: call EventScript_RevealTrainer specialvar VAR_RESULT, IsTrainerReadyForRematch - compare VAR_RESULT, FALSE - goto_if_eq EventScript_NoRematchTrainerBattle + goto_if_eq VAR_RESULT, FALSE, EventScript_NoRematchTrainerBattle special PlayTrainerEncounterMusic special SetTrainerFacingDirection special ShowTrainerIntroSpeech @@ -73,11 +69,9 @@ EventScript_NoRematchTrainerBattle:: EventScript_TryDoDoubleRematchBattle:: specialvar VAR_RESULT, IsTrainerReadyForRematch - compare VAR_RESULT, FALSE - goto_if_eq EventScript_NoDoubleRematchTrainerBattle + goto_if_eq VAR_RESULT, FALSE, EventScript_NoDoubleRematchTrainerBattle special HasEnoughMonsForDoubleBattle - compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne EventScript_NotEnoughMonsForDoubleRematchBattle + goto_if_ne VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS, EventScript_NotEnoughMonsForDoubleRematchBattle special PlayTrainerEncounterMusic special SetTrainerFacingDirection special ShowTrainerIntroSpeech @@ -112,24 +106,18 @@ EventScript_ShowTrainerIntroMsg:: waitmessage waitbuttonpress special TryPrepareSecondApproachingTrainer - compare VAR_RESULT, TRUE - goto_if_eq EventScript_TrainerApproach + goto_if_eq VAR_RESULT, TRUE, EventScript_TrainerApproach goto EventScript_DoTrainerBattle EventScript_DoTrainerBattle:: dotrainerbattle @ Below battle mode check only needed in FRLG specialvar VAR_RESULT, GetTrainerBattleMode - compare VAR_RESULT, TRAINER_BATTLE_SINGLE - goto_if_eq EventScript_EndTrainerBattle - compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT - goto_if_eq EventScript_EndTrainerBattle - compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC - goto_if_eq EventScript_EndTrainerBattle - compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE - goto_if_eq EventScript_EndTrainerBattle - compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC - goto_if_eq EventScript_EndTrainerBattle + goto_if_eq VAR_RESULT, TRAINER_BATTLE_SINGLE, EventScript_EndTrainerBattle + goto_if_eq VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT, EventScript_EndTrainerBattle + goto_if_eq VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC, EventScript_EndTrainerBattle + goto_if_eq VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE, EventScript_EndTrainerBattle + goto_if_eq VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC, EventScript_EndTrainerBattle EventScript_EndTrainerBattle:: gotobeatenscript releaseall diff --git a/data/scripts/trainer_hill.inc b/data/scripts/trainer_hill.inc index 8804b71b0afc..b7f815351449 100644 --- a/data/scripts/trainer_hill.inc +++ b/data/scripts/trainer_hill.inc @@ -2,12 +2,9 @@ TrainerHill_OnResume: setvar VAR_TEMP_2, 0 trainerhill_resumetimer frontier_get FRONTIER_DATA_BATTLE_OUTCOME - compare VAR_RESULT, B_OUTCOME_LOST - goto_if_eq TrainerHill_1F_EventScript_Lost - compare VAR_RESULT, B_OUTCOME_DREW - goto_if_eq TrainerHill_1F_EventScript_Lost - compare VAR_RESULT, B_OUTCOME_FORFEITED - goto_if_eq TrainerHill_1F_EventScript_Lost + goto_if_eq VAR_RESULT, B_OUTCOME_LOST, TrainerHill_1F_EventScript_Lost + goto_if_eq VAR_RESULT, B_OUTCOME_DREW, TrainerHill_1F_EventScript_Lost + goto_if_eq VAR_RESULT, B_OUTCOME_FORFEITED, TrainerHill_1F_EventScript_Lost end TrainerHill_OnWarp: @@ -35,8 +32,7 @@ EventScript_TrainerHillTimer:: TrainerHill_1F_EventScript_DummyWarpToEntranceCounter:: setvar VAR_TEMP_2, 1 trainerhill_getusingereader - compare VAR_RESULT, TRUE @ VAR_RESULT always FALSE here - goto_if_eq TrainerHill_1F_EventScript_WarpSilentToEntranceCounter + goto_if_eq VAR_RESULT, TRUE, TrainerHill_1F_EventScript_WarpSilentToEntranceCounter @ VAR_RESULT always FALSE here end @ Never reached diff --git a/data/scripts/trainer_script.inc b/data/scripts/trainer_script.inc index 5c630308213d..c0998aef8e34 100644 --- a/data/scripts/trainer_script.inc +++ b/data/scripts/trainer_script.inc @@ -12,8 +12,7 @@ Std_RegisteredInMatchCall:: EventScript_TryGetTrainerScript:: special ShouldTryGetTrainerScript - compare VAR_RESULT, TRUE - goto_if_eq EventScript_GotoTrainerScript + goto_if_eq VAR_RESULT, TRUE, EventScript_GotoTrainerScript releaseall end diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc index f8832a3abd0d..a5a093226f0b 100644 --- a/data/scripts/tv.inc +++ b/data/scripts/tv.inc @@ -3,29 +3,23 @@ EventScript_TV:: incrementgamestat GAME_STAT_WATCHED_TV special ResetTVShowState specialvar VAR_RESULT, CheckForPlayersHouseNews - compare VAR_RESULT, PLAYERS_HOUSE_TV_MOVIE - goto_if_eq EventScript_PlayersHouseMovie - compare VAR_RESULT, PLAYERS_HOUSE_TV_LATI - goto_if_eq EventScript_PlayersHouseLatiNewsFlash + goto_if_eq VAR_RESULT, PLAYERS_HOUSE_TV_MOVIE, EventScript_PlayersHouseMovie + goto_if_eq VAR_RESULT, PLAYERS_HOUSE_TV_LATI, EventScript_PlayersHouseLatiNewsFlash goto_if_unset FLAG_SYS_TV_START, EventScript_MomDadMightLikeThis1 goto_if_set FLAG_SYS_TV_WATCH, EventScript_MomDadMightLikeThis1 specialvar VAR_RESULT, IsGabbyAndTyShowOnTheAir - compare VAR_RESULT, TRUE - goto_if_eq EventScript_DoInSearchOfTrainers + goto_if_eq VAR_RESULT, TRUE, EventScript_DoInSearchOfTrainers goto EventScript_TryDoPokeNews end EventScript_TryDoTVShow:: specialvar VAR_0x8004, GetRandomActiveShowIdx - compare VAR_0x8004, 255 - goto_if_eq EventScript_MomDadMightLikeThis2 + goto_if_eq VAR_0x8004, 255, EventScript_MomDadMightLikeThis2 specialvar VAR_RESULT, GetNextActiveShowIfMassOutbreak - compare VAR_RESULT, 255 - goto_if_eq EventScript_MomDadMightLikeThis2 + goto_if_eq VAR_RESULT, 255, EventScript_MomDadMightLikeThis2 copyvar VAR_0x8004, VAR_RESULT specialvar VAR_RESULT, GetSelectedTVShow - compare VAR_RESULT, 0 - goto_if_ne EventScript_DoTVShow + goto_if_ne VAR_RESULT, 0, EventScript_DoTVShow end EventScript_MomDadMightLikeThis1:: @@ -58,8 +52,7 @@ EventScript_DoTVShow:: special DoTVShow waitmessage waitbuttonpress - compare VAR_RESULT, TRUE - goto_if_ne EventScript_DoTVShow + goto_if_ne VAR_RESULT, TRUE, EventScript_DoTVShow goto EventScript_TurnOffTV end @@ -77,8 +70,7 @@ EventScript_MomDadMightLikeThis2:: EventScript_TryDoPokeNews:: special DoPokeNews - compare VAR_RESULT, FALSE - goto_if_eq EventScript_TryDoTVShow + goto_if_eq VAR_RESULT, FALSE, EventScript_TryDoTVShow waitmessage waitbuttonpress goto EventScript_TurnOffTV @@ -88,7 +80,6 @@ EventScript_DoInSearchOfTrainers:: special DoTVShowInSearchOfTrainers waitmessage waitbuttonpress - compare VAR_RESULT, 0 - goto_if_eq EventScript_DoInSearchOfTrainers + goto_if_eq VAR_RESULT, 0, EventScript_DoInSearchOfTrainers goto EventScript_TurnOffTV end From 42a83ee50e3364f3f7361dacb3d3616053f4c5bf Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Nov 2021 23:20:05 -0500 Subject: [PATCH 448/762] Use STR_VAR names for apprentice_buff and frontier_gettrainername --- asm/macros/battle_frontier/apprentice.inc | 14 ++++++-- asm/macros/battle_frontier/frontier_util.inc | 8 ++++- .../scripts.inc | 4 +-- data/scripts/apprentice.inc | 32 +++++++++---------- 4 files changed, 36 insertions(+), 22 deletions(-) diff --git a/asm/macros/battle_frontier/apprentice.inc b/asm/macros/battle_frontier/apprentice.inc index 83871880b636..9eb5f9ea8a64 100644 --- a/asm/macros/battle_frontier/apprentice.inc +++ b/asm/macros/battle_frontier/apprentice.inc @@ -94,11 +94,19 @@ @ Buffer some APPRENTICE_BUFF_* string to the given stringvar (0 for STR_VAR_1, 1 for STR_VAR_2, 2 for STR_VAR_3) .macro apprentice_buff stringvar:req, tobuff:req setvar VAR_0x8004, APPRENTICE_FUNC_BUFFER_STRING - setvar VAR_0x8005, \stringvar + .if \stringvar == STR_VAR_1 + setvar VAR_0x8005, 0 + .elseif \stringvar == STR_VAR_2 + setvar VAR_0x8005, 1 + .elseif \stringvar == STR_VAR_3 + setvar VAR_0x8005, 2 + .else + setvar VAR_0x8005, \stringvar + .endif .if \tobuff >= VARS_START - copyvar VAR_0x8006, \tobuff + copyvar VAR_0x8006, \tobuff .else - setvar VAR_0x8006, \tobuff + setvar VAR_0x8006, \tobuff .endif special CallApprenticeFunction .endm diff --git a/asm/macros/battle_frontier/frontier_util.inc b/asm/macros/battle_frontier/frontier_util.inc index def5b4d1c734..c875fcdde2d8 100644 --- a/asm/macros/battle_frontier/frontier_util.inc +++ b/asm/macros/battle_frontier/frontier_util.inc @@ -136,7 +136,13 @@ @ Buffer the name of gTrainerBattleOpponent_A in STR_VAR_1 (0) or STR_VAR_2 (1) .macro frontier_gettrainername stringVar:req setvar VAR_0x8004, FRONTIER_UTIL_FUNC_BUFFER_TRAINER_NAME - setvar VAR_0x8005, \stringVar + .if \stringVar == STR_VAR_1 + setvar VAR_0x8005, 0 + .elseif \stringVar == STR_VAR_2 + setvar VAR_0x8005, 1 + .else + setvar VAR_0x8005, \stringVar + .endif special CallFrontierUtilFunc .endm diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index 888f116eeaff..406ab46aecf7 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -118,13 +118,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobbyLost:: goto BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobby BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon:: - frontier_gettrainername 1 + frontier_gettrainername STR_VAR_2 message BattleFrontier_BattleDomeBattleRoom_Text_TrainerIsWinner waitmessage return BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWonDraw:: - frontier_gettrainername 0 + frontier_gettrainername STR_VAR_1 message BattleFrontier_BattleDomeBattleRoom_Text_RefereesDecidedWinnerTrainer waitmessage return diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc index ea8345a9ec48..6b3a99e728c8 100644 --- a/data/scripts/apprentice.inc +++ b/data/scripts/apprentice.inc @@ -20,7 +20,7 @@ Apprentice_EventScript_AskQuestion: end Apprentice_EventScript_FirstMeeting: - apprentice_buff 0, APPRENTICE_BUFF_NAME + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_NAME apprentice_msg FALSE, APPRENTICE_MSG_PLEASE_TEACH Apprentice_EventScript_WhichLvlMode: apprentice_menu APPRENTICE_ASK_YES_NO @@ -29,7 +29,7 @@ Apprentice_EventScript_WhichLvlMode: apprentice_menu APPRENTICE_ASK_WHICH_LEVEL apprentice_setlvlmode VAR_RESULT apprentice_shufflespecies - apprentice_buff 0, APPRENTICE_BUFF_LEVEL + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_LEVEL apprentice_msg TRUE, APPRENTICE_MSG_THANKS_LVL_MODE call Apprentice_EventScript_SetHideFlags release @@ -46,8 +46,8 @@ Apprentice_EventScript_RejectTeach: Apprentice_EventScript_UseWhichMon: apprentice_initquestion APPRENTICE_QUESTION_WHICH_MON - apprentice_buff 0, APPRENTICE_BUFF_SPECIES1 - apprentice_buff 1, APPRENTICE_BUFF_SPECIES2 + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_SPECIES1 + apprentice_buff STR_VAR_2, APPRENTICE_BUFF_SPECIES2 apprentice_msg FALSE, APPRENTICE_MSG_WHICH_MON apprentice_menu APPRENTICE_ASK_2SPECIES copyvar VAR_0x8005, VAR_RESULT @@ -58,7 +58,7 @@ Apprentice_EventScript_UseWhichMon: apprentice_answeredquestion apprentice_getnumpartymons call_if_eq VAR_RESULT, MULTI_PARTY_SIZE, Apprentice_EventScript_LastMonSelected - apprentice_buff 0, VAR_0x8007 + apprentice_buff STR_VAR_1, VAR_0x8007 apprentice_freequestion apprentice_msg TRUE, APPRENTICE_MSG_THANKS_MON call Apprentice_EventScript_SetHideFlags @@ -83,7 +83,7 @@ Apprentice_EventScript_LastMonSelected: Apprentice_EventScript_UseWhatHeldItem: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM - apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_SPECIES3 apprentice_msg TRUE, APPRENTICE_MSG_WHAT_HELD_ITEM apprentice_freequestion Apprentice_EventScript_ChooseHoldItem: @@ -93,7 +93,7 @@ Apprentice_EventScript_ChooseHoldItem: goto_if_eq VAR_RESULT, FALSE, Apprentice_EventScript_ConfirmHoldNothing apprentice_trysetitem goto_if_eq VAR_RESULT, FALSE, Apprentice_EventScript_AlreadySuggestedItem - apprentice_buff 0, APPRENTICE_BUFF_ITEM + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_ITEM apprentice_msg TRUE, APPRENTICE_MSG_THANKS_HELD_ITEM apprentice_answeredquestion call Apprentice_EventScript_SetHideFlags @@ -106,7 +106,7 @@ Apprentice_EventScript_ChooseHoldItem: Apprentice_EventScript_ConfirmHoldNothing: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM - apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_SPECIES3 apprentice_msg FALSE, APPRENTICE_MSG_HOLD_NOTHING apprentice_menu APPRENTICE_ASK_GIVE apprentice_freequestion @@ -126,8 +126,8 @@ Apprentice_EventScript_HoldNothing: @ different item if theyve already told the Apprentice to use it for another mon Apprentice_EventScript_AlreadySuggestedItem: apprentice_initquestion APPRENTICE_QUESTION_WHAT_ITEM - apprentice_buff 0, APPRENTICE_BUFF_ITEM - apprentice_buff 1, APPRENTICE_BUFF_SPECIES3 + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_ITEM + apprentice_buff STR_VAR_2, APPRENTICE_BUFF_SPECIES3 apprentice_msg FALSE, APPRENTICE_MSG_ITEM_ALREADY_SUGGESTED apprentice_menu APPRENTICE_ASK_GIVE apprentice_freequestion @@ -137,9 +137,9 @@ Apprentice_EventScript_AlreadySuggestedItem: Apprentice_EventScript_UseWhichMove: apprentice_initquestion APPRENTICE_QUESTION_WHICH_MOVE - apprentice_buff 0, APPRENTICE_BUFF_SPECIES3 - apprentice_buff 1, APPRENTICE_BUFF_MOVE1 - apprentice_buff 2, APPRENTICE_BUFF_MOVE2 + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_SPECIES3 + apprentice_buff STR_VAR_2, APPRENTICE_BUFF_MOVE1 + apprentice_buff STR_VAR_3, APPRENTICE_BUFF_MOVE2 apprentice_msg FALSE, APPRENTICE_MSG_WHICH_MOVE apprentice_menu APPRENTICE_ASK_MOVES copyvar VAR_0x8005, VAR_RESULT @@ -147,7 +147,7 @@ Apprentice_EventScript_UseWhichMove: call_if_eq VAR_0x8005, 1, Apprentice_EventScript_ChoseMove2 apprentice_setmove apprentice_answeredquestion - apprentice_buff 0, VAR_0x8007 + apprentice_buff STR_VAR_1, VAR_0x8007 apprentice_freequestion apprentice_msg TRUE, APPRENTICE_MSG_THANKS_MOVE call Apprentice_EventScript_SetHideFlags @@ -171,7 +171,7 @@ Apprentice_EventScript_PutWhichMonFirst: apprentice_menu APPRENTICE_ASK_3SPECIES apprentice_setleadmon VAR_RESULT apprentice_answeredquestion - apprentice_buff 0, APPRENTICE_BUFF_LEAD_MON_SPECIES + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_LEAD_MON_SPECIES apprentice_msg TRUE, APPRENTICE_MSG_THANKS_MON_FIRST call Apprentice_EventScript_SetHideFlags release @@ -190,7 +190,7 @@ Apprentice_EventScript_PickWinSpeech: lock faceplayer apprentice_save - apprentice_buff 0, APPRENTICE_BUFF_WIN_SPEECH + apprentice_buff STR_VAR_1, APPRENTICE_BUFF_WIN_SPEECH apprentice_msg TRUE, APPRENTICE_MSG_THANKS_WIN_SPEECH apprentice_reset call Apprentice_EventScript_SetHideFlags From 23dd1dad7f268d61c22132f88a2427437ce04d59 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Nov 2021 11:23:03 -0500 Subject: [PATCH 449/762] Fix incorrect palettes in Mauville flower tileset anims --- .../secondary/mauville/anim/flower_1/0.png | Bin 234 -> 234 bytes .../secondary/mauville/anim/flower_1/1.png | Bin 229 -> 229 bytes .../secondary/mauville/anim/flower_1/2.png | Bin 224 -> 224 bytes .../secondary/mauville/anim/flower_1/3.png | Bin 216 -> 216 bytes .../secondary/mauville/anim/flower_1/4.png | Bin 232 -> 232 bytes .../secondary/mauville/anim/flower_2/0.png | Bin 234 -> 234 bytes .../secondary/mauville/anim/flower_2/1.png | Bin 229 -> 229 bytes .../secondary/mauville/anim/flower_2/2.png | Bin 224 -> 224 bytes .../secondary/mauville/anim/flower_2/3.png | Bin 216 -> 216 bytes .../secondary/mauville/anim/flower_2/4.png | Bin 232 -> 232 bytes 10 files changed, 0 insertions(+), 0 deletions(-) diff --git a/data/tilesets/secondary/mauville/anim/flower_1/0.png b/data/tilesets/secondary/mauville/anim/flower_1/0.png index 263dba07005dcc43d5e370683470e641ec9071dc..d17b8ca90699ab2a97bfc659b161ed4434bfb999 100644 GIT binary patch delta 62 zcmV-E0Kxz20qOyeDKvYuy>q?xgT-Pwi!nJ;0RR7D|NsBq=I*`C=KrkT=7Y4=T8pIB U#dF1^L9~Myq-u+Cw9k=Uje>q9kpKVy delta 62 zcmV-E0Kxz20qOyeDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&jjZe*(EtDd diff --git a/data/tilesets/secondary/mauville/anim/flower_1/1.png b/data/tilesets/secondary/mauville/anim/flower_1/1.png index 66179f13ddb7dc36b7aca8f1009bccbaf2d2423a..2a30d578040fb9c07db905f29da25501e650551a 100644 GIT binary patch delta 62 zcmV-E0Kxy|0p$UZDKvYuy>q?xgT-Pwi!nJ;0RR7D|NsBq=I*`C=KrkT=7Y4=T8pIB U#dF1^L9~Myq-u+Cw9k=Uh=3O*f&c&j delta 62 zcmV-E0Kxy|0p$UZDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&h^mDi!Tq?xgT-Pwi!nJ;0RR7D|NsBq=I*`C=KrkT=7Y4=T8pIB U#dF1^L9~Myq-u+Cw9k=UgMF|ia{vGU delta 62 zcmV-E0Kxy@0pJ0UDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&gQy-Jvj6}9 diff --git a/data/tilesets/secondary/mauville/anim/flower_1/3.png b/data/tilesets/secondary/mauville/anim/flower_1/3.png index b1015d370bd22dcb8b04909c86c127c82300ce73..60cf30bb43a22de3f665acfc5db09d299cdc22da 100644 GIT binary patch delta 62 zcmV-E0Kxy*0oVbMDKvYuy>q?xgT-Pwi!nJ;0RR7D|NsBq=I*`C=KrkT=7Y4=T8pIB U#dF1^L9~Myq-u+Cw9k=UdwJL;TL1t6 delta 62 zcmV-E0Kxy*0oVbMDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&d!$Aln*aa+ diff --git a/data/tilesets/secondary/mauville/anim/flower_1/4.png b/data/tilesets/secondary/mauville/anim/flower_1/4.png index 1e8cb84afec50d85cd062fdddf380b8507150bc4..01162ac5c47bb66a48335d459e671b43d797e09e 100644 GIT binary patch delta 62 zcmV-E0Kxz00q6mcDKvYuy>q?xgT-Pwi!nJ;0RR7D|NsBq=I*`C=KrkT=7Y4=T8pIB U#dF1^L9~Myq-u+Cw9k=Ui-CwGivR!s delta 62 zcmV-E0Kxz00q6mcDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&i>vk?%K!iX diff --git a/data/tilesets/secondary/mauville/anim/flower_2/0.png b/data/tilesets/secondary/mauville/anim/flower_2/0.png index 263dba07005dcc43d5e370683470e641ec9071dc..be6b131cf378a38eb74da5244d6c55407faab673 100644 GIT binary patch delta 62 zcmV-E0Kxz20qOyeDKvYuz5oCJgT-Pwi!nJ;0RR7Dti|Swq~25tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&jjZe*(EtDd diff --git a/data/tilesets/secondary/mauville/anim/flower_2/1.png b/data/tilesets/secondary/mauville/anim/flower_2/1.png index 66179f13ddb7dc36b7aca8f1009bccbaf2d2423a..715205f6497159f0b968af6a9124f37fd6a0e64e 100644 GIT binary patch delta 62 zcmV-E0Kxy|0p$UZDKvYuz5oCJgT-Pwi!nJ;0RR7Dti|Swq~25tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&h^mDi!T5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&gQy-Jvj6}9 diff --git a/data/tilesets/secondary/mauville/anim/flower_2/3.png b/data/tilesets/secondary/mauville/anim/flower_2/3.png index b1015d370bd22dcb8b04909c86c127c82300ce73..26a621fe13802cc9ba7df5941107ef89fcf455cb 100644 GIT binary patch delta 62 zcmV-E0Kxy*0oVbMDKvYuz5oCJgT-Pwi!nJ;0RR7Dti|Swq~25tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&d!$Aln*aa+ diff --git a/data/tilesets/secondary/mauville/anim/flower_2/4.png b/data/tilesets/secondary/mauville/anim/flower_2/4.png index 1e8cb84afec50d85cd062fdddf380b8507150bc4..03603068ecf4a604e6283bf994d4691d1ec2f535 100644 GIT binary patch delta 62 zcmV-E0Kxz00q6mcDKvYuz5oCJgT-Pwi!nJ;0RR7Dti|Swq~2pF delta 62 zcmV-E0Kxz00q6mcDKu)$d$j+9gT-Pwi!nJ;0N#{yYFb*PVp>5tG5^Js-fCjaK~kjE U#dF1^L9~Myq-w=MhRl&&i>vk?%K!iX From f81565163e411337ce7484133cfd262562d679c7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 21 Nov 2021 11:48:50 -0500 Subject: [PATCH 450/762] Retire OK bot --- .github/workflows/build.yml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1dfb5763e0c5..283e6f8fb565 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -52,14 +52,6 @@ jobs: COMPARE: 0 run: make -j${nproc} all - - name: Webhook - if: ${{ github.event_name == 'push' && github.repository_owner == 'pret' }} - env: - CALCROM_DISCORD_WEBHOOK_USERNAME: OK - CALCROM_DISCORD_WEBHOOK_AVATAR_URL: https://i.imgur.com/38BQHdd.png - CALCROM_DISCORD_WEBHOOK_URL: ${{ secrets.CALCROM_DISCORD_WEBHOOK_URL }} - run: sh .github/calcrom/webhook.sh pokeemerald - - name: Move symfiles if: ${{ github.event_name == 'push' }} run: | From b6430098d4f97d37ec994e8483d97be09f8ea9bc Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Sun, 28 Nov 2021 11:35:01 +0800 Subject: [PATCH 451/762] Rename speed parameter to distance in jump functions --- src/event_object_movement.c | 56 ++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 25 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index d92569d32882..ba13a7a1d9c8 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -45,7 +45,6 @@ enum { #define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table #define sActionFuncId data[2] // Index into corresponding gMovementActionFuncs_* table #define sDirection data[3] -#define sSpeed data[4] #define movement_type_def(setup, table) \ @@ -5386,7 +5385,7 @@ enum { JUMP_TYPE_NORMAL, }; -static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) +static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 distance, u8 type) { s16 displacements[ARRAY_COUNT(sJumpInitDisplacements)]; s16 x; @@ -5396,22 +5395,24 @@ static void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 x = 0; y = 0; SetObjectEventDirection(objectEvent, direction); - MoveCoordsInDirection(direction, &x, &y, displacements[speed], displacements[speed]); + MoveCoordsInDirection(direction, &x, &y, displacements[distance], displacements[distance]); ShiftObjectEventCoords(objectEvent, objectEvent->currentCoords.x + x, objectEvent->currentCoords.y + y); - SetJumpSpriteData(sprite, direction, speed, type); + SetJumpSpriteData(sprite, direction, distance, type); sprite->sActionFuncId = 1; sprite->animPaused = FALSE; objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->disableCoveringGroundEffects = TRUE; } -static void InitJumpRegular(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) +static void InitJumpRegular(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 distance, u8 type) { - InitJump(objectEvent, sprite, direction, speed, type); + InitJump(objectEvent, sprite, direction, distance, type); SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection)); DoShadowFieldEffect(objectEvent); } +#define sDistance data[4] + static u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *)) { s16 displacements[ARRAY_COUNT(sJumpDisplacements)]; @@ -5421,11 +5422,11 @@ static u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, memcpy(displacements, sJumpDisplacements, sizeof sJumpDisplacements); result = callback(sprite); - if (result == JUMP_HALFWAY && displacements[sprite->sSpeed] != 0) + if (result == JUMP_HALFWAY && displacements[sprite->sDistance] != 0) { x = 0; y = 0; - MoveCoordsInDirection(objectEvent->movementDirection, &x, &y, displacements[sprite->sSpeed], displacements[sprite->sSpeed]); + MoveCoordsInDirection(objectEvent->movementDirection, &x, &y, displacements[sprite->sDistance], displacements[sprite->sDistance]); ShiftObjectEventCoords(objectEvent, objectEvent->currentCoords.x + x, objectEvent->currentCoords.y + y); objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->disableCoveringGroundEffects = TRUE; @@ -5440,6 +5441,8 @@ static u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, return result; } +#undef sDistance + static u8 DoJumpAnimStep(struct ObjectEvent *objectEvent, struct Sprite *sprite) { return UpdateJumpAnim(objectEvent, sprite, DoJumpSpriteMovement); @@ -6800,9 +6803,9 @@ bool8 MovementAction_Figure8_Step1(struct ObjectEvent *objectEvent, struct Sprit return FALSE; } -static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 type) +static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 distance, u8 type) { - InitJump(objectEvent, sprite, direction, speed, type); + InitJump(objectEvent, sprite, direction, distance, type); StartSpriteAnimIfDifferent(sprite, GetAcroWheelieDirectionAnimNum(direction)); DoShadowFieldEffect(objectEvent); } @@ -8166,6 +8169,7 @@ static void Step8(struct Sprite *sprite, u8 dir) sprite->y += 8 * (u16) sDirectionToVectors[dir].y; } +#define sSpeed data[4] #define sTimer data[5] static void SetSpriteDataForNormalStep(struct Sprite *sprite, u8 direction, u8 speed) @@ -8259,6 +8263,7 @@ static bool8 NpcTakeStep(struct Sprite *sprite) return TRUE; } +#undef sSpeed #undef sTimer #define sTimer data[4] @@ -8393,34 +8398,35 @@ static s16 GetJumpY(s16 i, u8 type) return sJumpYTable[type][i]; } +#define sDistance data[4] #define sJumpType data[5] #define sTimer data[6] -static void SetJumpSpriteData(struct Sprite *sprite, u8 direction, u8 speed, u8 type) +static void SetJumpSpriteData(struct Sprite *sprite, u8 direction, u8 distance, u8 type) { sprite->sDirection = direction; - sprite->sSpeed = speed; + sprite->sDistance = distance; sprite->sJumpType = type; sprite->sTimer = 0; } static u8 DoJumpSpriteMovement(struct Sprite *sprite) { - s16 speedToTime[] = {16, 16, 32}; - u8 speedToShift[] = {0, 0, 1}; + s16 distanceToTime[] = {16, 16, 32}; + u8 distanceToShift[] = {0, 0, 1}; u8 result = 0; - if (sprite->sSpeed) + if (sprite->sDistance) Step1(sprite, sprite->sDirection); - sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); + sprite->y2 = GetJumpY(sprite->sTimer >> distanceToShift[sprite->sDistance], sprite->sJumpType); sprite->sTimer++; - if (sprite->sTimer == speedToTime[sprite->sSpeed] >> 1) + if (sprite->sTimer == distanceToTime[sprite->sDistance] >> 1) result = JUMP_HALFWAY; - if (sprite->sTimer >= speedToTime[sprite->sSpeed]) + if (sprite->sTimer >= distanceToTime[sprite->sDistance]) { sprite->y2 = 0; result = JUMP_FINISHED; @@ -8431,21 +8437,21 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite) static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) { - s16 speedToTime[] = {32, 32, 64}; - u8 speedToShift[] = {1, 1, 2}; + s16 distanceToTime[] = {32, 32, 64}; + u8 distanceToShift[] = {1, 1, 2}; u8 result = 0; - if (sprite->sSpeed && !(sprite->sTimer & 1)) + if (sprite->sDistance && !(sprite->sTimer & 1)) Step1(sprite, sprite->sDirection); - sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType); + sprite->y2 = GetJumpY(sprite->sTimer >> distanceToShift[sprite->sDistance], sprite->sJumpType); sprite->sTimer++; - if (sprite->sTimer == speedToTime[sprite->sSpeed] >> 1) + if (sprite->sTimer == distanceToTime[sprite->sDistance] >> 1) result = JUMP_HALFWAY; - if (sprite->sTimer >= speedToTime[sprite->sSpeed]) + if (sprite->sTimer >= distanceToTime[sprite->sDistance]) { sprite->y2 = 0; result = JUMP_FINISHED; @@ -8454,7 +8460,7 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) return result; } -#undef sSpeed +#undef sDistance #undef sJumpType #undef sTimer From c59c7b0518c17696b656c2fafaac297bee9077f1 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Sun, 28 Nov 2021 11:56:26 +0800 Subject: [PATCH 452/762] Use enums for jump distances --- .../movement_action_func_tables.h | 12 ++- src/event_object_movement.c | 92 ++++++++++++------- 2 files changed, 67 insertions(+), 37 deletions(-) diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index f601cf82b6fa..8070e98774c9 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -706,8 +706,16 @@ u8 (*const gMovementActionFuncs_WalkNormalRight[])(struct ObjectEvent *, struct MovementAction_PauseSpriteAnim, }; -static const s16 sJumpInitDisplacements[] = {0, 1, 1}; -static const s16 sJumpDisplacements[] = {0, 0, 1}; +static const s16 sJumpInitDisplacements[] = { + [JUMP_DISTANCE_IN_PLACE] = 0, + [JUMP_DISTANCE_NORMAL] = 1, + [JUMP_DISTANCE_FAR] = 1, +}; +static const s16 sJumpDisplacements[] = { + [JUMP_DISTANCE_IN_PLACE] = 0, + [JUMP_DISTANCE_NORMAL] = 0, + [JUMP_DISTANCE_FAR] = 1, +}; u8 (*const gMovementActionFuncs_Jump2Down[])(struct ObjectEvent *, struct Sprite *) = { MovementAction_Jump2Down_Step0, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index ba13a7a1d9c8..2c7ceedf4c11 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -40,6 +40,12 @@ enum { MOVE_SPEED_FASTEST, }; +enum { + JUMP_DISTANCE_IN_PLACE, + JUMP_DISTANCE_NORMAL, + JUMP_DISTANCE_FAR, +}; + // Sprite data used throughout #define sObjEventId data[0] #define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table @@ -5485,7 +5491,7 @@ static bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *s bool8 MovementAction_Jump2Down_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_Jump2Down_Step1(objectEvent, sprite); } @@ -5502,7 +5508,7 @@ bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Up_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_Jump2Up_Step1(objectEvent, sprite); } @@ -5519,7 +5525,7 @@ bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprit bool8 MovementAction_Jump2Left_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_Jump2Left_Step1(objectEvent, sprite); } @@ -5536,7 +5542,7 @@ bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_Jump2Right_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_Jump2Right_Step1(objectEvent, sprite); } @@ -6067,7 +6073,7 @@ bool8 MovementAction_WaitSpriteAnim(struct ObjectEvent *objectEvent, struct Spri static void InitJumpSpecial(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction) { - InitJump(objectEvent, sprite, direction, 1, JUMP_TYPE_HIGH); + InitJump(objectEvent, sprite, direction, JUMP_DISTANCE_NORMAL, JUMP_TYPE_HIGH); StartSpriteAnim(sprite, GetJumpSpecialDirectionAnimNum(direction)); } @@ -6181,7 +6187,7 @@ bool8 MovementAction_UnlockFacingDirection_Step0(struct ObjectEvent *objectEvent bool8 MovementAction_JumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpDown_Step1(objectEvent, sprite); } @@ -6198,7 +6204,7 @@ bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpUp_Step1(objectEvent, sprite); } @@ -6215,7 +6221,7 @@ bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite bool8 MovementAction_JumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpLeft_Step1(objectEvent, sprite); } @@ -6232,7 +6238,7 @@ bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Spri bool8 MovementAction_JumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_NORMAL, JUMP_TYPE_NORMAL); return MovementAction_JumpRight_Step1(objectEvent, sprite); } @@ -6249,7 +6255,7 @@ bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Spr bool8 MovementAction_JumpInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceDown_Step1(objectEvent, sprite); } @@ -6266,7 +6272,7 @@ bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceUp_Step1(objectEvent, sprite); } @@ -6283,7 +6289,7 @@ bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct bool8 MovementAction_JumpInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceLeft_Step1(objectEvent, sprite); } @@ -6300,7 +6306,7 @@ bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, stru bool8 MovementAction_JumpInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_HIGH); + InitJumpRegular(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_HIGH); return MovementAction_JumpInPlaceRight_Step1(objectEvent, sprite); } @@ -6317,7 +6323,7 @@ bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_JumpInPlaceDownUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceDownUp_Step1(objectEvent, sprite); } @@ -6334,7 +6340,7 @@ bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceUpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceUpDown_Step1(objectEvent, sprite); } @@ -6351,7 +6357,7 @@ bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_JumpInPlaceLeftRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceLeftRight_Step1(objectEvent, sprite); } @@ -6368,7 +6374,7 @@ bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_JumpInPlaceRightLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_NORMAL); + InitJumpRegular(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_NORMAL); return MovementAction_JumpInPlaceRightLeft_Step1(objectEvent, sprite); } @@ -6812,7 +6818,7 @@ static void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite * bool8 MovementAction_AcroWheelieHopFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceDown_Step1(objectEvent, sprite); } @@ -6829,7 +6835,7 @@ bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceUp_Step1(objectEvent, sprite); } @@ -6846,7 +6852,7 @@ bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieHopFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceLeft_Step1(objectEvent, sprite); } @@ -6863,7 +6869,7 @@ bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEven bool8 MovementAction_AcroWheelieHopFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 0, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_IN_PLACE, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopFaceRight_Step1(objectEvent, sprite); } @@ -6880,7 +6886,7 @@ bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEve bool8 MovementAction_AcroWheelieHopDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopDown_Step1(objectEvent, sprite); } @@ -6897,7 +6903,7 @@ bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopUp_Step1(objectEvent, sprite); } @@ -6914,7 +6920,7 @@ bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, str bool8 MovementAction_AcroWheelieHopLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopLeft_Step1(objectEvent, sprite); } @@ -6931,7 +6937,7 @@ bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, s bool8 MovementAction_AcroWheelieHopRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 1, JUMP_TYPE_LOW); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_NORMAL, JUMP_TYPE_LOW); return MovementAction_AcroWheelieHopRight_Step1(objectEvent, sprite); } @@ -6948,7 +6954,7 @@ bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpDown_Step1(objectEvent, sprite); } @@ -6965,7 +6971,7 @@ bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpUp_Step1(objectEvent, sprite); } @@ -6982,7 +6988,7 @@ bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, st bool8 MovementAction_AcroWheelieJumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpLeft_Step1(objectEvent, sprite); } @@ -6999,7 +7005,7 @@ bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, bool8 MovementAction_AcroWheelieJumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { - InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 2, JUMP_TYPE_HIGH); + InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, JUMP_DISTANCE_FAR, JUMP_TYPE_HIGH); return MovementAction_AcroWheelieJumpRight_Step1(objectEvent, sprite); } @@ -8412,11 +8418,19 @@ static void SetJumpSpriteData(struct Sprite *sprite, u8 direction, u8 distance, static u8 DoJumpSpriteMovement(struct Sprite *sprite) { - s16 distanceToTime[] = {16, 16, 32}; - u8 distanceToShift[] = {0, 0, 1}; + s16 distanceToTime[] = { + [JUMP_DISTANCE_IN_PLACE] = 16, + [JUMP_DISTANCE_NORMAL] = 16, + [JUMP_DISTANCE_FAR] = 32, + }; + u8 distanceToShift[] = { + [JUMP_DISTANCE_IN_PLACE] = 0, + [JUMP_DISTANCE_NORMAL] = 0, + [JUMP_DISTANCE_FAR] = 1, + }; u8 result = 0; - if (sprite->sDistance) + if (sprite->sDistance != JUMP_DISTANCE_IN_PLACE) Step1(sprite, sprite->sDirection); sprite->y2 = GetJumpY(sprite->sTimer >> distanceToShift[sprite->sDistance], sprite->sJumpType); @@ -8437,11 +8451,19 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite) static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite) { - s16 distanceToTime[] = {32, 32, 64}; - u8 distanceToShift[] = {1, 1, 2}; + s16 distanceToTime[] = { + [JUMP_DISTANCE_IN_PLACE] = 32, + [JUMP_DISTANCE_NORMAL] = 32, + [JUMP_DISTANCE_FAR] = 64, + }; + u8 distanceToShift[] = { + [JUMP_DISTANCE_IN_PLACE] = 1, + [JUMP_DISTANCE_NORMAL] = 1, + [JUMP_DISTANCE_FAR] = 2, + }; u8 result = 0; - if (sprite->sDistance && !(sprite->sTimer & 1)) + if (sprite->sDistance != JUMP_DISTANCE_IN_PLACE && !(sprite->sTimer & 1)) Step1(sprite, sprite->sDirection); sprite->y2 = GetJumpY(sprite->sTimer >> distanceToShift[sprite->sDistance], sprite->sJumpType); From b042eb6436dbc04acd58272d6069516c09ece581 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sun, 28 Nov 2021 01:22:27 -0300 Subject: [PATCH 453/762] gBattleTerrainTable -> sBattleTerrainTable --- src/battle_bg.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/battle_bg.c b/src/battle_bg.c index 0e4370485c60..f739a002f6c9 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -598,7 +598,7 @@ const struct WindowTemplate * const gBattleWindowTemplates[] = [B_WIN_TYPE_ARENA] = gBattleArenaWindowTemplates, }; -static const struct BattleBackground gBattleTerrainTable[] = +static const struct BattleBackground sBattleTerrainTable[] = { [BATTLE_TERRAIN_GRASS] = { @@ -807,9 +807,9 @@ void DrawMainBattleBackground(void) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tileset, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tilemap, (void*)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void*)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); break; case MAP_BATTLE_SCENE_GYM: LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); @@ -1194,8 +1194,8 @@ void DrawBattleEntryBackground(void) if (GetCurrentMapBattleScene() == MAP_BATTLE_SCENE_NORMAL) { - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].entryTileset, (void*)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].entryTilemap, (void*)(BG_SCREEN_ADDR(28))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTileset, (void*)(BG_CHAR_ADDR(1))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTilemap, (void*)(BG_SCREEN_ADDR(28))); } else { @@ -1251,7 +1251,7 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tileset, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void*)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_GYM: LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); @@ -1313,7 +1313,7 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tilemap, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void*)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_GYM: LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(BG_SCREEN_ADDR(26))); @@ -1375,7 +1375,7 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LoadCompressedPalette(gBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); + LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); break; case MAP_BATTLE_SCENE_GYM: LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, 0x20, 0x60); From 83be1bfc8fc071e26d2a3f8191a9c7ecc7161dce Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 29 Nov 2021 11:19:30 -0500 Subject: [PATCH 454/762] Remove sFiller from malloc.c --- gflib/malloc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/gflib/malloc.c b/gflib/malloc.c index 38fc8939e452..d0b94976358f 100644 --- a/gflib/malloc.c +++ b/gflib/malloc.c @@ -2,7 +2,6 @@ static void *sHeapStart; static u32 sHeapSize; -static u32 sFiller; // needed to align dma3_manager.o(.bss) #define MALLOC_SYSTEM_ID 0xA3A3 From 1a08d8fcb4bb2aaa1dd36a5f751bb31519545a4b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 29 Nov 2021 12:56:03 -0500 Subject: [PATCH 455/762] Add BUGFIX for roamer's status --- src/roamer.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/roamer.c b/src/roamer.c index 4811ac3b22ad..c17ec490c8f8 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -193,10 +193,18 @@ bool8 IsRoamerAt(u8 mapGroup, u8 mapNum) void CreateRoamerMonInstance(void) { + u32 status; struct Pokemon *mon = &gEnemyParty[0]; ZeroEnemyPartyMons(); CreateMonWithIVsPersonality(mon, ROAMER->species, ROAMER->level, ROAMER->ivs, ROAMER->personality); +// The roamer's status field is u8, but SetMonData expects status to be u32, so will set the roamer's status +// using the status field and the following 3 bytes (cool, beauty, and cute). +#ifdef BUGFIX + status = ROAMER->status; + SetMonData(mon, MON_DATA_STATUS, &status); +#else SetMonData(mon, MON_DATA_STATUS, &ROAMER->status); +#endif SetMonData(mon, MON_DATA_HP, &ROAMER->hp); SetMonData(mon, MON_DATA_COOL, &ROAMER->cool); SetMonData(mon, MON_DATA_BEAUTY, &ROAMER->beauty); From d501636730c0aaf83754a9ed71fcdce734d336b4 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 3 Dec 2021 16:36:18 -0500 Subject: [PATCH 456/762] Fix incorrect flag animation palettes --- .gitignore | 1 + .../anim/flag/0.png | Bin 230 -> 230 bytes .../anim/flag/1.png | Bin 227 -> 227 bytes .../anim/flag/2.png | Bin 225 -> 225 bytes .../anim/flag/3.png | Bin 228 -> 228 bytes .../anim/flag/0.png | Bin 230 -> 230 bytes .../anim/flag/1.png | Bin 227 -> 227 bytes .../anim/flag/2.png | Bin 225 -> 225 bytes .../anim/flag/3.png | Bin 228 -> 228 bytes 9 files changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index fd16840c67f7..23b01d1e0d40 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ porymap.project.cfg *.sna *.diff *.sym +*.js diff --git a/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/0.png b/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/0.png index b5621be76ec6cc1aa1ca7eeda66abbc15fce1a72..1de3fe7c3da5135672c84b9bde57a3250cacd731 100644 GIT binary patch delta 62 zcmV-E0Kxy}0p6Iarip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY$pI_lOxms diff --git a/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/1.png b/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/1.png index 56a46ce92a8c84bc7a096e7f6338314913887323..b9f80f08dfb3f6942275adc231ec16b3fbb459bf 100644 GIT binary patch delta 62 zcmV-E0Kxy`0pkIXDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$Jdh6ku1v;Y7A delta 62 zcmaFN_?U5mrip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY#RV&A|uNH diff --git a/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/2.png b/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/2.png index e51f5b531217847abbdf0e3874d2e698e5edc278..a03c965a878e8b9f7f7064871b525e2e6b983bb8 100644 GIT binary patch delta 62 zcmV-E0Kxy^0pS6VDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$Jdga)!8t^fc4 delta 62 zcmaFJ_>ggerip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AYzqKnEF;AL diff --git a/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/3.png b/data/tilesets/secondary/battle_frontier_outside_east/anim/flag/3.png index 3ec6ff703c7eb5017e114b14d4170da2be3dadcc..5bdf19a359b3ac9777b0f30ab4317b1cea399461 100644 GIT binary patch delta 62 zcmV-E0Kxy{0ptOYDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$JdhX^Aew*UYD delta 62 zcmaFD_=ItSrip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY&!sDog>Zw diff --git a/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/0.png b/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/0.png index b5621be76ec6cc1aa1ca7eeda66abbc15fce1a72..1de3fe7c3da5135672c84b9bde57a3250cacd731 100644 GIT binary patch delta 62 zcmV-E0Kxy}0p6Iarip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY$pI_lOxms diff --git a/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/1.png b/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/1.png index 56a46ce92a8c84bc7a096e7f6338314913887323..b9f80f08dfb3f6942275adc231ec16b3fbb459bf 100644 GIT binary patch delta 62 zcmV-E0Kxy`0pkIXDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$Jdh6ku1v;Y7A delta 62 zcmaFN_?U5mrip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY#RV&A|uNH diff --git a/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/2.png b/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/2.png index e51f5b531217847abbdf0e3874d2e698e5edc278..a03c965a878e8b9f7f7064871b525e2e6b983bb8 100644 GIT binary patch delta 62 zcmV-E0Kxy^0pS6VDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$Jdga)!8t^fc4 delta 62 zcmaFJ_>ggerip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AYzqKnEF;AL diff --git a/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/3.png b/data/tilesets/secondary/battle_frontier_outside_west/anim/flag/3.png index 3ec6ff703c7eb5017e114b14d4170da2be3dadcc..5bdf19a359b3ac9777b0f30ab4317b1cea399461 100644 GIT binary patch delta 62 zcmV-E0Kxy{0ptOYDKuim0Hk7C|NsBJ&E}l6-h+dSVq$wiN@^)FTL0BCoQpB;lyl8N UQpJnStaG$t#Q?IBAH$JdhX^Aew*UYD delta 62 zcmaFD_=ItSrip}R(EtDc?>&3B_w2JdTkbVCcPAxPJ9=gPXZT;d_gm7McOY`fy`b)+ SUd3yQk1k12+_G(AY&!sDog>Zw From cc05b08227ac23d2ef8fd0f7379a2e61492d9283 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 6 Dec 2021 11:17:42 -0500 Subject: [PATCH 457/762] Fix incorrect ever grande flower animation palettes --- .../secondary/ever_grande/anim/flowers/0.png | Bin 257 -> 257 bytes .../secondary/ever_grande/anim/flowers/1.png | Bin 257 -> 257 bytes .../secondary/ever_grande/anim/flowers/2.png | Bin 253 -> 253 bytes .../secondary/ever_grande/anim/flowers/3.png | Bin 255 -> 255 bytes .../secondary/ever_grande/anim/flowers/4.png | Bin 257 -> 257 bytes .../secondary/ever_grande/anim/flowers/5.png | Bin 257 -> 257 bytes .../secondary/ever_grande/anim/flowers/6.png | Bin 254 -> 254 bytes .../secondary/ever_grande/anim/flowers/7.png | Bin 254 -> 254 bytes 8 files changed, 0 insertions(+), 0 deletions(-) diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/0.png b/data/tilesets/secondary/ever_grande/anim/flowers/0.png index 6493e2e8217eaeef04ad9798ef20816610ebe025..ae9198645128c104f9b9f68e5fddf9df59ca602a 100644 GIT binary patch delta 59 zcmV-B0L1@+0)YaMEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U8EK_8-xG= diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/1.png b/data/tilesets/secondary/ever_grande/anim/flowers/1.png index 6493e2e8217eaeef04ad9798ef20816610ebe025..ae9198645128c104f9b9f68e5fddf9df59ca602a 100644 GIT binary patch delta 59 zcmV-B0L1@+0)YaMEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U8EK_8-xG= diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/2.png b/data/tilesets/secondary/ever_grande/anim/flowers/2.png index 0b1f568cbf46679eaade47d93f5e60dc08494d53..05b97963705e9260be60a95dc581137ca8c04162 100644 GIT binary patch delta 59 zcmV-B0L1_O0sR4xEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U7$_z9CiQz diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/3.png b/data/tilesets/secondary/ever_grande/anim/flowers/3.png index edc7220b8fecd4939433a784ddadb90ea7598fba..a4cea04e63e102cf71a7655c1f32f81c49356122 100644 GIT binary patch delta 59 zcmV-B0L1_Q0sjGzEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U7}9g9DD!( diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/4.png b/data/tilesets/secondary/ever_grande/anim/flowers/4.png index 6493e2e8217eaeef04ad9798ef20816610ebe025..ae9198645128c104f9b9f68e5fddf9df59ca602a 100644 GIT binary patch delta 59 zcmV-B0L1@+0)YaMEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U8EK_8-xG= diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/5.png b/data/tilesets/secondary/ever_grande/anim/flowers/5.png index 6493e2e8217eaeef04ad9798ef20816610ebe025..ae9198645128c104f9b9f68e5fddf9df59ca602a 100644 GIT binary patch delta 59 zcmV-B0L1@+0)YaMEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U8EK_8-xG= diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/6.png b/data/tilesets/secondary/ever_grande/anim/flowers/6.png index 4d43dfd0a9d6c1de80dd68476f017fcc0e91ea56..c45b6188cf41fd900b40e02431713bc160ffc040 100644 GIT binary patch delta 59 zcmV-B0L1_P0saAyEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U7=299C-i$ diff --git a/data/tilesets/secondary/ever_grande/anim/flowers/7.png b/data/tilesets/secondary/ever_grande/anim/flowers/7.png index 4d43dfd0a9d6c1de80dd68476f017fcc0e91ea56..c45b6188cf41fd900b40e02431713bc160ffc040 100644 GIT binary patch delta 59 zcmV-B0L1_P0saAyEHTCZq=Us`TBI>SVi02PYWCi0_N*Yya|r*zq+(h@IWhmml-_D$%|TM6)x~qg Rq(QWU7^G^z9Dx~;U7=299C-i$ From 660a3df929cd83365df8e0da7e79be61b52674f5 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Tue, 14 Dec 2021 14:47:04 -0300 Subject: [PATCH 458/762] Update trade.c --- src/trade.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/trade.c b/src/trade.c index 3e9f033b52ae..935a89b02f48 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4531,7 +4531,8 @@ static void _CreateInGameTradePokemon(u8 whichPlayerMon, u8 whichInGameTrade) CalculateMonStats(&gEnemyParty[0]); } -static void SetInGameTradeMail(struct Mail *mail, const struct InGameTrade *trade) { +static void SetInGameTradeMail(struct Mail *mail, const struct InGameTrade *trade) +{ s32 i; for (i = 0; i < MAIL_WORDS_COUNT; i++) From 961dbee5e3a9e29caac73b090123b7da649cefec Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 4 Dec 2021 10:25:37 -0500 Subject: [PATCH 459/762] Clean up tileset_anims --- src/tileset_anims.c | 234 ++++++++++++++++++++++---------------------- 1 file changed, 117 insertions(+), 117 deletions(-) diff --git a/src/tileset_anims.c b/src/tileset_anims.c index 71f8044f9f55..3676006a6ac2 100644 --- a/src/tileset_anims.c +++ b/src/tileset_anims.c @@ -632,45 +632,45 @@ void InitTilesetAnim_Building(void) static void TilesetAnim_General(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_General_Flower(timer >> 4); + QueueAnimTiles_General_Flower(timer / 16); if (timer % 16 == 1) - QueueAnimTiles_General_Water(timer >> 4); + QueueAnimTiles_General_Water(timer / 16); if (timer % 16 == 2) - QueueAnimTiles_General_SandWaterEdge(timer >> 4); + QueueAnimTiles_General_SandWaterEdge(timer / 16); if (timer % 16 == 3) - QueueAnimTiles_General_Waterfall(timer >> 4); + QueueAnimTiles_General_Waterfall(timer / 16); if (timer % 16 == 4) - QueueAnimTiles_General_LandWaterEdge(timer >> 4); + QueueAnimTiles_General_LandWaterEdge(timer / 16); } static void TilesetAnim_Building(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_Building_TVTurnedOn(timer >> 3); + QueueAnimTiles_Building_TVTurnedOn(timer / 8); } static void QueueAnimTiles_General_Flower(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_General_Flower[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(508)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_General_Flower); + AppendTilesetAnimToBuffer(gTilesetAnims_General_Flower[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(508)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_General_Water(u16 timer) { - u8 i = timer % 8; - AppendTilesetAnimToBuffer(gTilesetAnims_General_Water[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(432)), 0x3C0); + u8 i = timer % ARRAY_COUNT(gTilesetAnims_General_Water); + AppendTilesetAnimToBuffer(gTilesetAnims_General_Water[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(432)), 30 * TILE_SIZE_4BPP); } static void QueueAnimTiles_General_SandWaterEdge(u16 timer) { - u16 i = timer % 8; - AppendTilesetAnimToBuffer(gTilesetAnims_General_SandWaterEdge[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(464)), 0x140); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_General_SandWaterEdge); + AppendTilesetAnimToBuffer(gTilesetAnims_General_SandWaterEdge[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(464)), 10 * TILE_SIZE_4BPP); } static void QueueAnimTiles_General_Waterfall(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_General_Waterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(496)), 0xc0); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_General_Waterfall); + AppendTilesetAnimToBuffer(gTilesetAnims_General_Waterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(496)), 6 * TILE_SIZE_4BPP); } void InitTilesetAnim_Petalburg(void) @@ -838,336 +838,336 @@ static void TilesetAnim_Rustboro(u16 timer) { if (timer % 8 == 0) { - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 0); - QueueAnimTiles_Rustboro_Fountain(timer >> 3); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 0); + QueueAnimTiles_Rustboro_Fountain(timer / 8); } if (timer % 8 == 1) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 1); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 1); if (timer % 8 == 2) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 2); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 2); if (timer % 8 == 3) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 3); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 3); if (timer % 8 == 4) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 4); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 4); if (timer % 8 == 5) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 5); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 5); if (timer % 8 == 6) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 6); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 6); if (timer % 8 == 7) - QueueAnimTiles_Rustboro_WindyWater(timer >> 3, 7); + QueueAnimTiles_Rustboro_WindyWater(timer / 8, 7); } static void TilesetAnim_Dewford(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_Dewford_Flag(timer >> 3); + QueueAnimTiles_Dewford_Flag(timer / 8); } static void TilesetAnim_Slateport(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_Slateport_Balloons(timer >> 4); + QueueAnimTiles_Slateport_Balloons(timer / 16); } static void TilesetAnim_Mauville(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 0); + QueueAnimTiles_Mauville_Flowers(timer / 8, 0); if (timer % 8 == 1) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 1); + QueueAnimTiles_Mauville_Flowers(timer / 8, 1); if (timer % 8 == 2) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 2); + QueueAnimTiles_Mauville_Flowers(timer / 8, 2); if (timer % 8 == 3) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 3); + QueueAnimTiles_Mauville_Flowers(timer / 8, 3); if (timer % 8 == 4) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 4); + QueueAnimTiles_Mauville_Flowers(timer / 8, 4); if (timer % 8 == 5) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 5); + QueueAnimTiles_Mauville_Flowers(timer / 8, 5); if (timer % 8 == 6) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 6); + QueueAnimTiles_Mauville_Flowers(timer / 8, 6); if (timer % 8 == 7) - QueueAnimTiles_Mauville_Flowers(timer >> 3, 7); + QueueAnimTiles_Mauville_Flowers(timer / 8, 7); } static void TilesetAnim_Lavaridge(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_Lavaridge_Steam(timer >> 4); + QueueAnimTiles_Lavaridge_Steam(timer / 16); if (timer % 16 == 1) - QueueAnimTiles_Lavaridge_Lava(timer >> 4); + QueueAnimTiles_Lavaridge_Lava(timer / 16); } static void TilesetAnim_EverGrande(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 0); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 0); if (timer % 8 == 1) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 1); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 1); if (timer % 8 == 2) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 2); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 2); if (timer % 8 == 3) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 3); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 3); if (timer % 8 == 4) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 4); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 4); if (timer % 8 == 5) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 5); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 5); if (timer % 8 == 6) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 6); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 6); if (timer % 8 == 7) - QueueAnimTiles_EverGrande_Flowers(timer >> 3, 7); + QueueAnimTiles_EverGrande_Flowers(timer / 8, 7); } static void TilesetAnim_Pacifidlog(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_Pacifidlog_LogBridges(timer >> 4); + QueueAnimTiles_Pacifidlog_LogBridges(timer / 16); if (timer % 16 == 1) - QueueAnimTiles_Pacifidlog_WaterCurrents(timer >> 4); + QueueAnimTiles_Pacifidlog_WaterCurrents(timer / 16); } static void TilesetAnim_Sootopolis(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_Sootopolis_StormyWater(timer >> 4); + QueueAnimTiles_Sootopolis_StormyWater(timer / 16); } static void TilesetAnim_Underwater(u16 timer) { if (timer % 16 == 0) - QueueAnimTiles_Underwater_Seaweed(timer >> 4); + QueueAnimTiles_Underwater_Seaweed(timer / 16); } static void TilesetAnim_Cave(u16 timer) { if (timer % 16 == 1) - QueueAnimTiles_Cave_Lava(timer >> 4); + QueueAnimTiles_Cave_Lava(timer / 16); } static void TilesetAnim_BattleFrontierOutsideWest(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_BattleFrontierOutsideWest_Flag(timer >> 3); + QueueAnimTiles_BattleFrontierOutsideWest_Flag(timer / 8); } static void TilesetAnim_BattleFrontierOutsideEast(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_BattleFrontierOutsideEast_Flag(timer >> 3); + QueueAnimTiles_BattleFrontierOutsideEast_Flag(timer / 8); } static void QueueAnimTiles_General_LandWaterEdge(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_General_LandWaterEdge[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(480)), 0x140); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_General_LandWaterEdge); + AppendTilesetAnimToBuffer(gTilesetAnims_General_LandWaterEdge[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(480)), 10 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Lavaridge_Steam(u8 timer) { - u8 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Steam[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 288)), 0x80); + u8 i = timer % ARRAY_COUNT(gTilesetAnims_Lavaridge_Steam); + AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Steam[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 288)), 4 * TILE_SIZE_4BPP); - i = (timer + 2) % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Steam[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 292)), 0x80); + i = (timer + 2) % (int)ARRAY_COUNT(gTilesetAnims_Lavaridge_Steam); + AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Steam[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 292)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Pacifidlog_LogBridges(u8 timer) { - u8 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Pacifidlog_LogBridges[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 464)), 0x3C0); + u8 i = timer % ARRAY_COUNT(gTilesetAnims_Pacifidlog_LogBridges); + AppendTilesetAnimToBuffer(gTilesetAnims_Pacifidlog_LogBridges[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 464)), 30 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Underwater_Seaweed(u8 timer) { - u8 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Underwater_Seaweed[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 0x80); + u8 i = timer % ARRAY_COUNT(gTilesetAnims_Underwater_Seaweed); + AppendTilesetAnimToBuffer(gTilesetAnims_Underwater_Seaweed[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Pacifidlog_WaterCurrents(u8 timer) { - u8 i = timer % 8; - AppendTilesetAnimToBuffer(gTilesetAnims_Pacifidlog_WaterCurrents[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 0x100); + u8 i = timer % ARRAY_COUNT(gTilesetAnims_Pacifidlog_WaterCurrents); + AppendTilesetAnimToBuffer(gTilesetAnims_Pacifidlog_WaterCurrents[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 8 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Mauville_Flowers(u16 timer_div, u8 timer_mod) { timer_div -= timer_mod; - if (timer_div < 12) // almost certainly a typo + if (timer_div < min(ARRAY_COUNT(gTilesetAnims_Mauville_Flower1), ARRAY_COUNT(gTilesetAnims_Mauville_Flower2))) { - timer_div %= 12; - AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower1[timer_div], gTilesetAnims_Mauville_Flower1_VDests[timer_mod], 0x80); - AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower2[timer_div], gTilesetAnims_Mauville_Flower2_VDests[timer_mod], 0x80); + timer_div %= min(ARRAY_COUNT(gTilesetAnims_Mauville_Flower1), ARRAY_COUNT(gTilesetAnims_Mauville_Flower2)); + AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower1[timer_div], gTilesetAnims_Mauville_Flower1_VDests[timer_mod], 4 * TILE_SIZE_4BPP); + AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower2[timer_div], gTilesetAnims_Mauville_Flower2_VDests[timer_mod], 4 * TILE_SIZE_4BPP); } else { - timer_div %= 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower1_B[timer_div], gTilesetAnims_Mauville_Flower1_VDests[timer_mod], 0x80); - AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower2_B[timer_div], gTilesetAnims_Mauville_Flower2_VDests[timer_mod], 0x80); + timer_div %= min(ARRAY_COUNT(gTilesetAnims_Mauville_Flower1_B), ARRAY_COUNT(gTilesetAnims_Mauville_Flower2_B)); + AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower1_B[timer_div], gTilesetAnims_Mauville_Flower1_VDests[timer_mod], 4 * TILE_SIZE_4BPP); + AppendTilesetAnimToBuffer(gTilesetAnims_Mauville_Flower2_B[timer_div], gTilesetAnims_Mauville_Flower2_VDests[timer_mod], 4 * TILE_SIZE_4BPP); } } static void QueueAnimTiles_Rustboro_WindyWater(u16 timer_div, u8 timer_mod) { timer_div -= timer_mod; - timer_div %= 8; + timer_div %= ARRAY_COUNT(gTilesetAnims_Rustboro_WindyWater); if (gTilesetAnims_Rustboro_WindyWater[timer_div]) - AppendTilesetAnimToBuffer(gTilesetAnims_Rustboro_WindyWater[timer_div], gTilesetAnims_Rustboro_WindyWater_VDests[timer_mod], 0x80); + AppendTilesetAnimToBuffer(gTilesetAnims_Rustboro_WindyWater[timer_div], gTilesetAnims_Rustboro_WindyWater_VDests[timer_mod], 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Rustboro_Fountain(u16 timer) { - u16 i = timer % 2; - AppendTilesetAnimToBuffer(gTilesetAnims_Rustboro_Fountain[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 448)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Rustboro_Fountain); + AppendTilesetAnimToBuffer(gTilesetAnims_Rustboro_Fountain[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 448)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Lavaridge_Lava(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Cave_Lava[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 160)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Lavaridge_Cave_Lava); + AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Cave_Lava[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 160)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_EverGrande_Flowers(u16 timer_div, u8 timer_mod) { timer_div -= timer_mod; - timer_div %= 8; + timer_div %= ARRAY_COUNT(gTilesetAnims_EverGrande_Flowers); - AppendTilesetAnimToBuffer(gTilesetAnims_EverGrande_Flowers[timer_div], gTilesetAnims_EverGrande_VDests[timer_mod], 0x80); + AppendTilesetAnimToBuffer(gTilesetAnims_EverGrande_Flowers[timer_div], gTilesetAnims_EverGrande_VDests[timer_mod], 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Cave_Lava(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Cave_Lava[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 416)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Lavaridge_Cave_Lava); + AppendTilesetAnimToBuffer(gTilesetAnims_Lavaridge_Cave_Lava[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 416)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Dewford_Flag(u16 timer) { - u16 id = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Dewford_Flag[id], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 170)), 0xC0); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Dewford_Flag); + AppendTilesetAnimToBuffer(gTilesetAnims_Dewford_Flag[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 170)), 6 * TILE_SIZE_4BPP); } static void QueueAnimTiles_BattleFrontierOutsideWest_Flag(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_BattleFrontierOutsideWest_Flag[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 218)), 0xC0); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_BattleFrontierOutsideWest_Flag); + AppendTilesetAnimToBuffer(gTilesetAnims_BattleFrontierOutsideWest_Flag[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 218)), 6 * TILE_SIZE_4BPP); } static void QueueAnimTiles_BattleFrontierOutsideEast_Flag(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_BattleFrontierOutsideEast_Flag[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 218)), 0xC0); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_BattleFrontierOutsideEast_Flag); + AppendTilesetAnimToBuffer(gTilesetAnims_BattleFrontierOutsideEast_Flag[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 218)), 6 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Slateport_Balloons(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_Slateport_Balloons[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 224)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Slateport_Balloons); + AppendTilesetAnimToBuffer(gTilesetAnims_Slateport_Balloons[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 224)), 4 * TILE_SIZE_4BPP); } static void TilesetAnim_MauvilleGym(u16 timer) { if (timer % 2 == 0) - QueueAnimTiles_MauvilleGym_ElectricGates(timer >> 1); + QueueAnimTiles_MauvilleGym_ElectricGates(timer / 2); } static void TilesetAnim_SootopolisGym(u16 timer) { if (timer % 8 == 0) - QueueAnimTiles_SootopolisGym_Waterfalls(timer >> 3); + QueueAnimTiles_SootopolisGym_Waterfalls(timer / 8); } static void TilesetAnim_EliteFour(u16 timer) { if (timer % 64 == 1) - QueueAnimTiles_EliteFour_GroundLights(timer >> 6); + QueueAnimTiles_EliteFour_GroundLights(timer / 64); if (timer % 8 == 1) - QueueAnimTiles_EliteFour_WallLights(timer >> 3); + QueueAnimTiles_EliteFour_WallLights(timer / 8); } static void TilesetAnim_BikeShop(u16 timer) { if (timer % 4 == 0) - QueueAnimTiles_BikeShop_BlinkingLights(timer >> 2); + QueueAnimTiles_BikeShop_BlinkingLights(timer / 4); } static void TilesetAnim_BattlePyramid(u16 timer) { if (timer % 8 == 0) { - QueueAnimTiles_BattlePyramid_Torch(timer >> 3); - QueueAnimTiles_BattlePyramid_StatueShadow(timer >> 3); + QueueAnimTiles_BattlePyramid_Torch(timer / 8); + QueueAnimTiles_BattlePyramid_StatueShadow(timer / 8); } } static void TilesetAnim_BattleDome(u16 timer) { if (timer % 4 == 0) - BlendAnimPalette_BattleDome_FloorLights(timer >> 2); + BlendAnimPalette_BattleDome_FloorLights(timer / 4); } static void TilesetAnim_BattleDome2(u16 timer) { if (timer % 4 == 0) - BlendAnimPalette_BattleDome_FloorLightsNoBlend(timer >> 2); + BlendAnimPalette_BattleDome_FloorLightsNoBlend(timer / 4); } static void QueueAnimTiles_Building_TVTurnedOn(u16 timer) { - u16 i = timer % 2; - AppendTilesetAnimToBuffer(gTilesetAnims_Building_TvTurnedOn[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(496)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Building_TvTurnedOn); + AppendTilesetAnimToBuffer(gTilesetAnims_Building_TvTurnedOn[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(496)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_SootopolisGym_Waterfalls(u16 timer) { - u16 i = timer % 3; - AppendTilesetAnimToBuffer(gTilesetAnims_SootopolisGym_SideWaterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 0x180); - AppendTilesetAnimToBuffer(gTilesetAnims_SootopolisGym_FrontWaterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 464)), 0x280); + u16 i = timer % min(ARRAY_COUNT(gTilesetAnims_SootopolisGym_SideWaterfall), ARRAY_COUNT(gTilesetAnims_SootopolisGym_FrontWaterfall)); + AppendTilesetAnimToBuffer(gTilesetAnims_SootopolisGym_SideWaterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 12 * TILE_SIZE_4BPP); + AppendTilesetAnimToBuffer(gTilesetAnims_SootopolisGym_FrontWaterfall[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 464)), 20 * TILE_SIZE_4BPP); } static void QueueAnimTiles_EliteFour_WallLights(u16 timer) { - u16 i = timer % 4; - AppendTilesetAnimToBuffer(gTilesetAnims_EliteFour_WallLights[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 504)), 0x20); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_EliteFour_WallLights); + AppendTilesetAnimToBuffer(gTilesetAnims_EliteFour_WallLights[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 504)), 1 * TILE_SIZE_4BPP); } static void QueueAnimTiles_EliteFour_GroundLights(u16 timer) { - u16 i = timer % 2; - AppendTilesetAnimToBuffer(gTilesetAnims_EliteFour_FloorLight[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 480)), 0x80); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_EliteFour_FloorLight); + AppendTilesetAnimToBuffer(gTilesetAnims_EliteFour_FloorLight[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 480)), 4 * TILE_SIZE_4BPP); } static void QueueAnimTiles_MauvilleGym_ElectricGates(u16 timer) { - u16 i = timer % 2; - AppendTilesetAnimToBuffer(gTilesetAnims_MauvilleGym_ElectricGates[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 144)), 0x200); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_MauvilleGym_ElectricGates); + AppendTilesetAnimToBuffer(gTilesetAnims_MauvilleGym_ElectricGates[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 144)), 16 * TILE_SIZE_4BPP); } static void QueueAnimTiles_BikeShop_BlinkingLights(u16 timer) { - u16 i = timer % 2; - AppendTilesetAnimToBuffer(gTilesetAnims_BikeShop_BlinkingLights[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 0x120); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_BikeShop_BlinkingLights); + AppendTilesetAnimToBuffer(gTilesetAnims_BikeShop_BlinkingLights[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 496)), 9 * TILE_SIZE_4BPP); } static void QueueAnimTiles_Sootopolis_StormyWater(u16 timer) { - u16 i = timer % 8; - AppendTilesetAnimToBuffer(gTilesetAnims_Sootopolis_StormyWater[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 240)), 0xc00); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_Sootopolis_StormyWater); + AppendTilesetAnimToBuffer(gTilesetAnims_Sootopolis_StormyWater[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 240)), 96 * TILE_SIZE_4BPP); } static void QueueAnimTiles_BattlePyramid_Torch(u16 timer) { - u16 i = timer % 3; - AppendTilesetAnimToBuffer(gTilesetAnims_BattlePyramid_Torch[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 151)), 0x100); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_BattlePyramid_Torch); + AppendTilesetAnimToBuffer(gTilesetAnims_BattlePyramid_Torch[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 151)), 8 * TILE_SIZE_4BPP); } static void QueueAnimTiles_BattlePyramid_StatueShadow(u16 timer) { - u16 i = timer % 3; - AppendTilesetAnimToBuffer(gTilesetAnims_BattlePyramid_StatueShadow[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 135)), 0x100); + u16 i = timer % ARRAY_COUNT(gTilesetAnims_BattlePyramid_StatueShadow); + AppendTilesetAnimToBuffer(gTilesetAnims_BattlePyramid_StatueShadow[i], (u16 *)(BG_VRAM + TILE_OFFSET_4BPP(NUM_TILES_IN_PRIMARY + 135)), 8 * TILE_SIZE_4BPP); } static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) { - CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % 4], gPlttBufferUnfaded + 0x80, 32); + CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(gTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) != TASK_NONE) { @@ -1178,7 +1178,7 @@ static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) static void BlendAnimPalette_BattleDome_FloorLightsNoBlend(u16 timer) { - CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % 4], gPlttBufferUnfaded + 0x80, 32); + CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(gTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) == TASK_NONE) { BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); From dbca24aa82bad91f48344d8e7d394e89febc1fd9 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 17 Dec 2021 18:18:10 -0300 Subject: [PATCH 460/762] [LEAK INFORMED] Documented the unk19 item field --- include/item.h | 4 ++-- src/data/items.h | 48 ++++++++++++++++++++++++------------------------ src/item.c | 4 ++-- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/include/item.h b/include/item.h index ceca83bd5faa..c4a26655f0d3 100644 --- a/include/item.h +++ b/include/item.h @@ -14,7 +14,7 @@ struct Item u8 holdEffectParam; const u8 *description; u8 importance; - u8 unk19; + u8 registrability; u8 pocket; u8 type; ItemUseFunc fieldUseFunc; @@ -68,7 +68,7 @@ u8 ItemId_GetHoldEffect(u16 itemId); u8 ItemId_GetHoldEffectParam(u16 itemId); const u8 *ItemId_GetDescription(u16 itemId); u8 ItemId_GetImportance(u16 itemId); -u8 ItemId_GetUnknownValue(u16 itemId); +u8 ItemId_GetRegistrability(u16 itemId); u8 ItemId_GetPocket(u16 itemId); u8 ItemId_GetType(u16 itemId); ItemUseFunc ItemId_GetFieldFunc(u16 itemId); diff --git a/src/data/items.h b/src/data/items.h index 20ee057da88b..47169d33a715 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -3146,7 +3146,7 @@ const struct Item gItems[] = .price = 0, .description = sMachBikeDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Bike, @@ -3172,7 +3172,7 @@ const struct Item gItems[] = .price = 0, .description = sItemfinderDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Itemfinder, @@ -3185,7 +3185,7 @@ const struct Item gItems[] = .price = 0, .description = sOldRodDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3199,7 +3199,7 @@ const struct Item gItems[] = .price = 0, .description = sGoodRodDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3213,7 +3213,7 @@ const struct Item gItems[] = .price = 0, .description = sSuperRodDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3310,7 +3310,7 @@ const struct Item gItems[] = .price = 0, .description = sAcroBikeDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Bike, @@ -3324,7 +3324,7 @@ const struct Item gItems[] = .price = 0, .description = sPokeblockCaseDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_PBLOCK_CASE, .fieldUseFunc = ItemUseOutOfBattle_PokeblockCase, @@ -4322,7 +4322,7 @@ const struct Item gItems[] = .price = 0, .description = sBicycleDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4335,7 +4335,7 @@ const struct Item gItems[] = .price = 0, .description = sTownMapDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4348,7 +4348,7 @@ const struct Item gItems[] = .price = 0, .description = sVSSeekerDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4361,7 +4361,7 @@ const struct Item gItems[] = .price = 0, .description = sFameCheckerDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4374,7 +4374,7 @@ const struct Item gItems[] = .price = 0, .description = sTMCaseDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4387,7 +4387,7 @@ const struct Item gItems[] = .price = 0, .description = sBerryPouchDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4400,7 +4400,7 @@ const struct Item gItems[] = .price = 0, .description = sTeachyTVDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4413,7 +4413,7 @@ const struct Item gItems[] = .price = 0, .description = sTriPassDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4426,7 +4426,7 @@ const struct Item gItems[] = .price = 0, .description = sRainbowPassDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4439,7 +4439,7 @@ const struct Item gItems[] = .price = 0, .description = sTeaDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4452,7 +4452,7 @@ const struct Item gItems[] = .price = 0, .description = sMysticTicketDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4465,7 +4465,7 @@ const struct Item gItems[] = .price = 0, .description = sAuroraTicketDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4478,7 +4478,7 @@ const struct Item gItems[] = .price = 0, .description = sPowderJarDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_PowderJar, @@ -4491,7 +4491,7 @@ const struct Item gItems[] = .price = 0, .description = sRubyDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4504,7 +4504,7 @@ const struct Item gItems[] = .price = 0, .description = sSapphireDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4519,7 +4519,7 @@ const struct Item gItems[] = .price = 0, .description = sMagmaEmblemDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4532,7 +4532,7 @@ const struct Item gItems[] = .price = 0, .description = sOldSeaMapDesc, .importance = 1, - .unk19 = 1, + .registrability = 1, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, diff --git a/src/item.c b/src/item.c index 1560342629c0..63287693a8d6 100644 --- a/src/item.c +++ b/src/item.c @@ -913,9 +913,9 @@ u8 ItemId_GetImportance(u16 itemId) } // unused -u8 ItemId_GetUnknownValue(u16 itemId) +u8 ItemId_GetRegistrability(u16 itemId) { - return gItems[SanitizeItemId(itemId)].unk19; + return gItems[SanitizeItemId(itemId)].registrability; } u8 ItemId_GetPocket(u16 itemId) From 4a74d288d4b5123e88f4da7d4d99aa42b3109d46 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sat, 18 Dec 2021 00:01:50 -0300 Subject: [PATCH 461/762] Review corrections --- include/item.h | 2 +- src/data/items.h | 48 ++++++++++++++++++++++++------------------------ 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/include/item.h b/include/item.h index c4a26655f0d3..bcd9178e5454 100644 --- a/include/item.h +++ b/include/item.h @@ -14,7 +14,7 @@ struct Item u8 holdEffectParam; const u8 *description; u8 importance; - u8 registrability; + bool8 registrability; // unused u8 pocket; u8 type; ItemUseFunc fieldUseFunc; diff --git a/src/data/items.h b/src/data/items.h index 47169d33a715..072ec1bf5ec6 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -3146,7 +3146,7 @@ const struct Item gItems[] = .price = 0, .description = sMachBikeDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Bike, @@ -3172,7 +3172,7 @@ const struct Item gItems[] = .price = 0, .description = sItemfinderDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Itemfinder, @@ -3185,7 +3185,7 @@ const struct Item gItems[] = .price = 0, .description = sOldRodDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3199,7 +3199,7 @@ const struct Item gItems[] = .price = 0, .description = sGoodRodDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3213,7 +3213,7 @@ const struct Item gItems[] = .price = 0, .description = sSuperRodDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Rod, @@ -3310,7 +3310,7 @@ const struct Item gItems[] = .price = 0, .description = sAcroBikeDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_Bike, @@ -3324,7 +3324,7 @@ const struct Item gItems[] = .price = 0, .description = sPokeblockCaseDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_PBLOCK_CASE, .fieldUseFunc = ItemUseOutOfBattle_PokeblockCase, @@ -4322,7 +4322,7 @@ const struct Item gItems[] = .price = 0, .description = sBicycleDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4335,7 +4335,7 @@ const struct Item gItems[] = .price = 0, .description = sTownMapDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4348,7 +4348,7 @@ const struct Item gItems[] = .price = 0, .description = sVSSeekerDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4361,7 +4361,7 @@ const struct Item gItems[] = .price = 0, .description = sFameCheckerDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4374,7 +4374,7 @@ const struct Item gItems[] = .price = 0, .description = sTMCaseDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4387,7 +4387,7 @@ const struct Item gItems[] = .price = 0, .description = sBerryPouchDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4400,7 +4400,7 @@ const struct Item gItems[] = .price = 0, .description = sTeachyTVDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_FIELD, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4413,7 +4413,7 @@ const struct Item gItems[] = .price = 0, .description = sTriPassDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4426,7 +4426,7 @@ const struct Item gItems[] = .price = 0, .description = sRainbowPassDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4439,7 +4439,7 @@ const struct Item gItems[] = .price = 0, .description = sTeaDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4452,7 +4452,7 @@ const struct Item gItems[] = .price = 0, .description = sMysticTicketDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4465,7 +4465,7 @@ const struct Item gItems[] = .price = 0, .description = sAuroraTicketDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4478,7 +4478,7 @@ const struct Item gItems[] = .price = 0, .description = sPowderJarDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_PowderJar, @@ -4491,7 +4491,7 @@ const struct Item gItems[] = .price = 0, .description = sRubyDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4504,7 +4504,7 @@ const struct Item gItems[] = .price = 0, .description = sSapphireDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4519,7 +4519,7 @@ const struct Item gItems[] = .price = 0, .description = sMagmaEmblemDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, @@ -4532,7 +4532,7 @@ const struct Item gItems[] = .price = 0, .description = sOldSeaMapDesc, .importance = 1, - .registrability = 1, + .registrability = TRUE, .pocket = POCKET_KEY_ITEMS, .type = ITEM_USE_BAG_MENU, .fieldUseFunc = ItemUseOutOfBattle_CannotUse, From 0f6311b47047a23012364d5d253edf886b1c80c6 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Dec 2021 22:49:45 -0500 Subject: [PATCH 462/762] accept 16-bit aiff files and convert to 8-bit --- tools/aif2pcm/main.c | 70 ++++++++++++++++++++++++++++++++------------ 1 file changed, 52 insertions(+), 18 deletions(-) diff --git a/tools/aif2pcm/main.c b/tools/aif2pcm/main.c index 3dad6fcf8016..a9c150e43333 100644 --- a/tools/aif2pcm/main.c +++ b/tools/aif2pcm/main.c @@ -51,8 +51,12 @@ do \ typedef struct { unsigned long num_samples; - uint8_t *samples; + union { + uint8_t *samples8; + uint16_t *samples16; + }; uint8_t midi_note; + uint8_t sample_size; bool has_loop; unsigned long loop_offset; double sample_rate; @@ -208,11 +212,11 @@ void read_aif(struct Bytes *aif, AifData *aif_data) num_sample_frames |= (aif->data[pos++] << 8); num_sample_frames |= (uint8_t)aif->data[pos++]; - short sample_size = (aif->data[pos++] << 8); - sample_size |= (uint8_t)aif->data[pos++]; - if (sample_size != 8) + aif_data->sample_size = (aif->data[pos++] << 8); + aif_data->sample_size |= (uint8_t)aif->data[pos++]; + if (aif_data->sample_size != 8 && aif_data->sample_size != 16) { - FATAL_ERROR("sampleSize (%d) in the COMM Chunk must be 8!\n", sample_size); + FATAL_ERROR("sampleSize (%d) in the COMM Chunk must be 8 or 16!\n", aif_data->sample_size); } double sample_rate = ieee754_read_extended((uint8_t*)(aif->data + pos)); @@ -295,11 +299,28 @@ void read_aif(struct Bytes *aif, AifData *aif_data) pos += 8; unsigned long num_samples = chunk_size - 8; - uint8_t *sample_data = (uint8_t *)malloc(num_samples * sizeof(uint8_t)); - memcpy(sample_data, &aif->data[pos], num_samples); - - aif_data->samples = sample_data; - aif_data->real_num_samples = num_samples; + if (aif_data->sample_size == 8) + { + uint8_t *sample_data = (uint8_t *)malloc(num_samples * sizeof(uint8_t)); + memcpy(sample_data, &aif->data[pos], num_samples); + + aif_data->samples8 = sample_data; + aif_data->real_num_samples = num_samples; + } + else + { + uint16_t *sample_data = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); + uint16_t *sample_data_swapped = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); + memcpy(sample_data, &aif->data[pos], num_samples); + for (long unsigned i = 0; i < num_samples; i++) + { + sample_data_swapped[i] = __builtin_bswap16(sample_data[i]); + } + + aif_data->samples16 = sample_data_swapped; + aif_data->real_num_samples = num_samples; + free(sample_data); + } pos += chunk_size - 8; } else @@ -550,8 +571,21 @@ do { \ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) { struct Bytes *aif = read_bytearray(aif_filename); - AifData aif_data = {0,0,0,0,0,0,0}; + AifData aif_data = {0}; read_aif(aif, &aif_data); + + // Convert 16-bit to 8-bit if necessary + if (aif_data.sample_size == 16) + { + aif_data.real_num_samples /= 2; + uint8_t *converted_samples = malloc(aif_data.real_num_samples * sizeof(uint8_t)); + for (unsigned long i = 0; i < aif_data.real_num_samples; i++) + { + converted_samples[i] = aif_data.samples16[i] >> 8; + } + free(aif_data.samples16); + aif_data.samples8 = converted_samples; + } int header_size = 0x10; struct Bytes *pcm; @@ -560,7 +594,7 @@ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) if (compress) { struct Bytes *input = malloc(sizeof(struct Bytes)); - input->data = aif_data.samples; + input->data = aif_data.samples8; input->length = aif_data.real_num_samples; pcm = delta_compress(input); free(input); @@ -568,7 +602,7 @@ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) else { pcm = malloc(sizeof(struct Bytes)); - pcm->data = aif_data.samples; + pcm->data = aif_data.samples8; pcm->length = aif_data.real_num_samples; } output.length = header_size + pcm->length; @@ -591,7 +625,7 @@ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) free(aif); free(pcm); free(output.data); - free(aif_data.samples); + free(aif_data.samples8); } // Reads a .pcm file containing an array of 8-bit samples and produces an .aif file. @@ -631,8 +665,8 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n pcm->data += 0x10; } - aif_data->samples = malloc(pcm->length); - memcpy(aif_data->samples, pcm->data, pcm->length); + aif_data->samples8 = malloc(pcm->length); + memcpy(aif_data->samples8, pcm->data, pcm->length); struct Bytes *aif = malloc(sizeof(struct Bytes)); aif->length = 54 + 60 + pcm->length; @@ -819,14 +853,14 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n // Sound Data Chunk soundData for (unsigned int i = 0; i < aif_data->loop_offset; i++) { - aif->data[pos++] = aif_data->samples[i]; + aif->data[pos++] = aif_data->samples8[i]; } int j = 0; for (unsigned int i = aif_data->loop_offset; i < pcm->length; i++) { int pcm_index = aif_data->loop_offset + (j++ % (pcm->length - aif_data->loop_offset)); - aif->data[pos++] = aif_data->samples[pcm_index]; + aif->data[pos++] = aif_data->samples8[pcm_index]; } aif->length = pos; From efee1288a0bbacd195a3938ec9ae23766978e758 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Dec 2021 22:56:20 -0500 Subject: [PATCH 463/762] fix indentation --- tools/aif2pcm/main.c | 114 +++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/tools/aif2pcm/main.c b/tools/aif2pcm/main.c index a9c150e43333..f722e9303ab9 100644 --- a/tools/aif2pcm/main.c +++ b/tools/aif2pcm/main.c @@ -31,32 +31,32 @@ double ieee754_read_extended (uint8_t*); #ifdef _MSC_VER -#define FATAL_ERROR(format, ...) \ -do \ -{ \ +#define FATAL_ERROR(format, ...) \ +do \ +{ \ fprintf(stderr, format, __VA_ARGS__); \ - exit(1); \ + exit(1); \ } while (0) #else -#define FATAL_ERROR(format, ...) \ -do \ -{ \ +#define FATAL_ERROR(format, ...) \ +do \ +{ \ fprintf(stderr, format, ##__VA_ARGS__); \ - exit(1); \ + exit(1); \ } while (0) #endif // _MSC_VER typedef struct { unsigned long num_samples; - union { - uint8_t *samples8; - uint16_t *samples16; - }; + union { + uint8_t *samples8; + uint16_t *samples16; + }; uint8_t midi_note; - uint8_t sample_size; + uint8_t sample_size; bool has_loop; unsigned long loop_offset; double sample_rate; @@ -299,28 +299,28 @@ void read_aif(struct Bytes *aif, AifData *aif_data) pos += 8; unsigned long num_samples = chunk_size - 8; - if (aif_data->sample_size == 8) - { - uint8_t *sample_data = (uint8_t *)malloc(num_samples * sizeof(uint8_t)); - memcpy(sample_data, &aif->data[pos], num_samples); - - aif_data->samples8 = sample_data; - aif_data->real_num_samples = num_samples; - } - else - { - uint16_t *sample_data = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); - uint16_t *sample_data_swapped = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); - memcpy(sample_data, &aif->data[pos], num_samples); - for (long unsigned i = 0; i < num_samples; i++) - { - sample_data_swapped[i] = __builtin_bswap16(sample_data[i]); - } - - aif_data->samples16 = sample_data_swapped; - aif_data->real_num_samples = num_samples; - free(sample_data); - } + if (aif_data->sample_size == 8) + { + uint8_t *sample_data = (uint8_t *)malloc(num_samples * sizeof(uint8_t)); + memcpy(sample_data, &aif->data[pos], num_samples); + + aif_data->samples8 = sample_data; + aif_data->real_num_samples = num_samples; + } + else + { + uint16_t *sample_data = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); + uint16_t *sample_data_swapped = (uint16_t *)malloc(num_samples * sizeof(uint16_t)); + memcpy(sample_data, &aif->data[pos], num_samples); + for (long unsigned i = 0; i < num_samples; i++) + { + sample_data_swapped[i] = __builtin_bswap16(sample_data[i]); + } + + aif_data->samples16 = sample_data_swapped; + aif_data->real_num_samples = num_samples; + free(sample_data); + } pos += chunk_size - 8; } else @@ -457,7 +457,7 @@ int get_delta_index(uint8_t sample, uint8_t prev_sample) int sample_signed = U8_TO_S8(sample); int prev_sample_signed = U8_TO_S8(prev_sample); - // if we're going up (or equal), only choose positive deltas + // if we're going up (or equal), only choose positive deltas if (prev_sample_signed <= sample_signed) { delta_table_start_index = POSITIVE_DELTAS_START; delta_table_end_index = POSITIVE_DELTAS_END; @@ -573,19 +573,19 @@ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) struct Bytes *aif = read_bytearray(aif_filename); AifData aif_data = {0}; read_aif(aif, &aif_data); - - // Convert 16-bit to 8-bit if necessary - if (aif_data.sample_size == 16) - { - aif_data.real_num_samples /= 2; - uint8_t *converted_samples = malloc(aif_data.real_num_samples * sizeof(uint8_t)); - for (unsigned long i = 0; i < aif_data.real_num_samples; i++) - { - converted_samples[i] = aif_data.samples16[i] >> 8; - } - free(aif_data.samples16); - aif_data.samples8 = converted_samples; - } + + // Convert 16-bit to 8-bit if necessary + if (aif_data.sample_size == 16) + { + aif_data.real_num_samples /= 2; + uint8_t *converted_samples = malloc(aif_data.real_num_samples * sizeof(uint8_t)); + for (unsigned long i = 0; i < aif_data.real_num_samples; i++) + { + converted_samples[i] = aif_data.samples16[i] >> 8; + } + free(aif_data.samples16); + aif_data.samples8 = converted_samples; + } int header_size = 0x10; struct Bytes *pcm; @@ -796,13 +796,13 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n aif->data[pos++] = 20; aif->data[pos++] = base_note; // baseNote - aif->data[pos++] = 0; // detune - aif->data[pos++] = 0; // lowNote - aif->data[pos++] = 127; // highNote - aif->data[pos++] = 1; // lowVelocity - aif->data[pos++] = 127; // highVelocity - aif->data[pos++] = 0; // gain (hi) - aif->data[pos++] = 0; // gain (lo) + aif->data[pos++] = 0; // detune + aif->data[pos++] = 0; // lowNote + aif->data[pos++] = 127; // highNote + aif->data[pos++] = 1; // lowVelocity + aif->data[pos++] = 127; // highVelocity + aif->data[pos++] = 0; // gain (hi) + aif->data[pos++] = 0; // gain (lo) // Instrument Chunk sustainLoop aif->data[pos++] = 0; @@ -881,7 +881,7 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n void usage(void) { fprintf(stderr, "Usage: aif2pcm bin_file [aif_file]\n"); - fprintf(stderr, " aif2pcm aif_file [bin_file] [--compress]\n"); + fprintf(stderr, " aif2pcm aif_file [bin_file] [--compress]\n"); } int main(int argc, char **argv) From f336acb3a9e0b70064f78215e897f476dee65830 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Dec 2021 23:00:03 -0500 Subject: [PATCH 464/762] fix indentation again --- tools/aif2pcm/main.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/tools/aif2pcm/main.c b/tools/aif2pcm/main.c index f722e9303ab9..e6d91ddfa861 100644 --- a/tools/aif2pcm/main.c +++ b/tools/aif2pcm/main.c @@ -31,20 +31,20 @@ double ieee754_read_extended (uint8_t*); #ifdef _MSC_VER -#define FATAL_ERROR(format, ...) \ -do \ -{ \ - fprintf(stderr, format, __VA_ARGS__); \ - exit(1); \ +#define FATAL_ERROR(format, ...) \ +do \ +{ \ + fprintf(stderr, format, __VA_ARGS__); \ + exit(1); \ } while (0) #else -#define FATAL_ERROR(format, ...) \ -do \ -{ \ - fprintf(stderr, format, ##__VA_ARGS__); \ - exit(1); \ +#define FATAL_ERROR(format, ...) \ +do \ +{ \ + fprintf(stderr, format, ##__VA_ARGS__); \ + exit(1); \ } while (0) #endif // _MSC_VER @@ -457,7 +457,7 @@ int get_delta_index(uint8_t sample, uint8_t prev_sample) int sample_signed = U8_TO_S8(sample); int prev_sample_signed = U8_TO_S8(prev_sample); - // if we're going up (or equal), only choose positive deltas + // if we're going up (or equal), only choose positive deltas if (prev_sample_signed <= sample_signed) { delta_table_start_index = POSITIVE_DELTAS_START; delta_table_end_index = POSITIVE_DELTAS_END; @@ -796,13 +796,13 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n aif->data[pos++] = 20; aif->data[pos++] = base_note; // baseNote - aif->data[pos++] = 0; // detune - aif->data[pos++] = 0; // lowNote - aif->data[pos++] = 127; // highNote - aif->data[pos++] = 1; // lowVelocity - aif->data[pos++] = 127; // highVelocity - aif->data[pos++] = 0; // gain (hi) - aif->data[pos++] = 0; // gain (lo) + aif->data[pos++] = 0; // detune + aif->data[pos++] = 0; // lowNote + aif->data[pos++] = 127; // highNote + aif->data[pos++] = 1; // lowVelocity + aif->data[pos++] = 127; // highVelocity + aif->data[pos++] = 0; // gain (hi) + aif->data[pos++] = 0; // gain (lo) // Instrument Chunk sustainLoop aif->data[pos++] = 0; @@ -881,7 +881,7 @@ void pcm2aif(const char *pcm_filename, const char *aif_filename, uint32_t base_n void usage(void) { fprintf(stderr, "Usage: aif2pcm bin_file [aif_file]\n"); - fprintf(stderr, " aif2pcm aif_file [bin_file] [--compress]\n"); + fprintf(stderr, " aif2pcm aif_file [bin_file] [--compress]\n"); } int main(int argc, char **argv) From 39f493287f61c70e5a21bbbe7a22da73680ea95d Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Dec 2021 23:03:09 -0500 Subject: [PATCH 465/762] one more lel --- tools/aif2pcm/main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/aif2pcm/main.c b/tools/aif2pcm/main.c index e6d91ddfa861..720db1acaeb8 100644 --- a/tools/aif2pcm/main.c +++ b/tools/aif2pcm/main.c @@ -34,8 +34,8 @@ double ieee754_read_extended (uint8_t*); #define FATAL_ERROR(format, ...) \ do \ { \ - fprintf(stderr, format, __VA_ARGS__); \ - exit(1); \ + fprintf(stderr, format, __VA_ARGS__); \ + exit(1); \ } while (0) #else @@ -43,8 +43,8 @@ do \ #define FATAL_ERROR(format, ...) \ do \ { \ - fprintf(stderr, format, ##__VA_ARGS__); \ - exit(1); \ + fprintf(stderr, format, ##__VA_ARGS__); \ + exit(1); \ } while (0) #endif // _MSC_VER From e28fa7f91c811fe9edb138ab68d3d62005a89413 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Tue, 21 Dec 2021 22:10:54 -0300 Subject: [PATCH 466/762] Update event_scripts.s --- data/event_scripts.s | 1 - 1 file changed, 1 deletion(-) diff --git a/data/event_scripts.s b/data/event_scripts.s index edab4987fa3a..1f3db6aa2b0b 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -59,7 +59,6 @@ .section script_data, "aw", %progbits -@ 81DB67C .include "data/script_cmd_table.inc" gSpecialVars:: From d94dae18f7e5b475b8b2ba9d3c838350904a01f3 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Tue, 21 Dec 2021 22:46:59 -0300 Subject: [PATCH 467/762] Removed more commented out addresses I like to help. --- berry_fix/payload/asm/libagbsyscall.s | 10 ++++----- src/crt0.s | 4 ++-- src/libgcnmultiboot.s | 30 +++++++++++++-------------- src/rom_header.s | 11 ++++------ 4 files changed, 26 insertions(+), 29 deletions(-) diff --git a/berry_fix/payload/asm/libagbsyscall.s b/berry_fix/payload/asm/libagbsyscall.s index 9548e80d28c7..f13d08d76f40 100644 --- a/berry_fix/payload/asm/libagbsyscall.s +++ b/berry_fix/payload/asm/libagbsyscall.s @@ -6,13 +6,13 @@ .text thumb_func_start CpuSet -CpuSet: @ 81E3B64 +CpuSet: svc 0xB bx lr thumb_func_end CpuSet thumb_func_start Div -Div: @ 81E3B68 +Div: svc 0x6 bx lr thumb_func_end Div @@ -25,19 +25,19 @@ Mod: thumb_func_end Mod thumb_func_start LZ77UnCompVram -LZ77UnCompVram: @ 81E3B6C +LZ77UnCompVram: svc 0x12 bx lr thumb_func_end LZ77UnCompVram thumb_func_start RegisterRamReset -RegisterRamReset: @ 81E3B80 +RegisterRamReset: svc 0x1 bx lr thumb_func_end RegisterRamReset thumb_func_start VBlankIntrWait -VBlankIntrWait: @ 81E3BA0 +VBlankIntrWait: movs r2, 0 svc 0x5 bx lr diff --git a/src/crt0.s b/src/crt0.s index 7c679c13b544..523061f52db1 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -6,7 +6,7 @@ .align 2, 0 .global Init -Init: @ 8000204 +Init: mov r0, #PSR_IRQ_MODE msr cpsr_cf, r0 ldr sp, sp_irq @@ -34,7 +34,7 @@ sp_irq: .word IWRAM_END - 0x60 .arm .align 2, 0 .global IntrMain -IntrMain: @ 8000248 +IntrMain: mov r3, #REG_BASE add r3, r3, #OFFSET_REG_IE ldr r2, [r3] diff --git a/src/libgcnmultiboot.s b/src/libgcnmultiboot.s index 5ecc7d2f90a8..968a0836ecac 100644 --- a/src/libgcnmultiboot.s +++ b/src/libgcnmultiboot.s @@ -40,7 +40,7 @@ .text thumb_func_start GameCubeMultiBoot_Hash -GameCubeMultiBoot_Hash: @ 82DED70 +GameCubeMultiBoot_Hash: push {r4,lr} ldr r4, pool_HashVal eors r3, r1 @@ -61,7 +61,7 @@ GameCubeMultiBoot_Hash_SkipEor: thumb_func_start GameCubeMultiBoot_Main @ void GameCubeMultiBoot_Main(struct GameCubeMultiBoot *mb); -GameCubeMultiBoot_Main: @ 82DED84 +GameCubeMultiBoot_Main: @ If there is no interrupt handler, skip counter manipulation ldr r1, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER] cmp r1, 0 @@ -246,7 +246,7 @@ pool_NintendoLogo: .4byte RomHeaderNintendoLogo thumb_func_start GameCubeMultiBoot_ExecuteProgram @ void GameCubeMultiBoot_ExecuteProgram(struct GameCubeMultiBoot *mb); -GameCubeMultiBoot_ExecuteProgram: @ 82DEE84 +GameCubeMultiBoot_ExecuteProgram: @ If there's no multiboot image ready, just return to caller ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS] cmp r1, MBPROGRESS_READY_TO_BOOT @@ -265,7 +265,7 @@ GameCubeMultiBoot_ExecuteProgram_Fail: thumb_func_start GameCubeMultiBoot_Init @ void GameCubeMultiBoot_Init(struct GameCubeMultiBoot *mb); -GameCubeMultiBoot_Init: @ 82DEE98 +GameCubeMultiBoot_Init: ldr r3, pool_InterruptRegs @ Save IME register. @@ -336,7 +336,7 @@ GameCubeMultiBoot_Init_ClearStructLoop: non_word_aligned_thumb_func_start GameCubeMultiBoot_HandleSerialInterrupt @ void GameCubeMultiBoot_HandleSerialInterrupt(struct GameCubeMultiBoot *mb); -GameCubeMultiBoot_HandleSerialInterrupt: @ 82DEEE2 +GameCubeMultiBoot_HandleSerialInterrupt: ldr r3, pool_SerialRegs @ Acknowledge reset/receive/send flags. @@ -400,7 +400,7 @@ GameCubeMultiBoot_BeginHandshake: .align 2, 0 -GcMbIntrHandler_CheckGameCodeSent: @ 82DEF24 +GcMbIntrHandler_CheckGameCodeSent: lsls r1, 31 bcc GcMbIntrHandler_Stop @ stop if send failed bmi GameCubeMultiBoot_CheckHandshakeResponse @ branch if receive is complete @@ -412,7 +412,7 @@ GcMbIntrHandler_CheckGameCodeSent: @ 82DEF24 .align 2, 0 -GcMbIntrHandler_CheckHandshakeResponse: @ 82DEF30 +GcMbIntrHandler_CheckHandshakeResponse: lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ stop if not @@ -429,7 +429,7 @@ GameCubeMultiBoot_CheckHandshakeResponse: .align 2, 0 -GcMbIntrHandler_ReceiveKeyA: @ 82DEF44 +GcMbIntrHandler_ReceiveKeyA: lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120] @@ -473,7 +473,7 @@ GameCubeMultiBoot_KeyBCheckEnd: .align 2, 0 -GcMbIntrHandler_CheckKeyBSent: @ 82DEF84 +GcMbIntrHandler_CheckKeyBSent: lsls r1, 31 bcc GcMbIntrHandler_Stop @ stop if send failed bmi GameCubeMultiBoot_CheckImageSizeResponse @ branch if receive is complete @@ -482,7 +482,7 @@ GcMbIntrHandler_CheckKeyBSent: @ 82DEF84 .align 2, 0 -GcMbIntrHandler_CheckImageSizeResponse: @ 82DEF90 +GcMbIntrHandler_CheckImageSizeResponse: lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not GameCubeMultiBoot_CheckImageSizeResponse: @@ -505,7 +505,7 @@ GcMbIntrHandler_StopIfNotEqual: .align 2, 0 -GcMbIntrHandler_CheckImageResponse: @ 82DEFB4 +GcMbIntrHandler_CheckImageResponse: lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_Stop @ branch if not ldr r2, [r0, GCMB_STRUCT_CUR_DEST_PTR] @@ -553,7 +553,7 @@ GcMbIntrHandler_StopIfSendFailed: .align 2, 0 -GcMbIntrHandler_CheckKeyCDerivationSent: @ 82DEFF0 +GcMbIntrHandler_CheckKeyCDerivationSent: lsls r1, 31 bcc GcMbIntrHandler_StopIfSendFailed @ branch if send failed bmi GameCubeMultiBoot_CheckBootKeyResponse @ branch if receive is complete @@ -562,7 +562,7 @@ GcMbIntrHandler_CheckKeyCDerivationSent: @ 82DEFF0 .align 2, 0 -GcMbIntrHandler_CheckBootKeyResponse: @ 82DEFFC +GcMbIntrHandler_CheckBootKeyResponse: lsrs r1, 1 @ is receive complete? bcc GcMbIntrHandler_StopIfSendFailed @ branch if not @@ -580,14 +580,14 @@ GameCubeMultiBoot_CheckBootKeyResponse: .align 2, 0 -GcMbIntrHandler_StopUnconditionally: @ 82DF010 +GcMbIntrHandler_StopUnconditionally: b GcMbIntrHandler_Stop thumb_func_end GameCubeMultiBoot_HandleSerialInterrupt non_word_aligned_thumb_func_start GameCubeMultiBoot_Quit @ void GameCubeMultiBoot_Quit(); -GameCubeMultiBoot_Quit: @ 82DF012 +GameCubeMultiBoot_Quit: ldr r3, pool_InterruptRegs @ Save IME register. diff --git a/src/rom_header.s b/src/rom_header.s index 5ed45124defe..9ab7240fba08 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -2,7 +2,7 @@ @ It's populated by gbafix using data provided in the Makefile. .global Start -Start: @ 8000000 +Start: b Init .global RomHeaderNintendoLogo @@ -41,23 +41,20 @@ RomHeaderChecksum: RomHeaderReserved2: .space 2 -@ 80000C0 .word 0 .global GPIOPortData -GPIOPortData: @ 80000C4 +GPIOPortData: .2byte 0 .global GPIOPortDirection -GPIOPortDirection: @ 80000C6 +GPIOPortDirection: .2byte 0 .global GPIOPortReadEnable -GPIOPortReadEnable: @ 80000C8 +GPIOPortReadEnable: .2byte 0 -@ 80000CA .2byte 0 -@ 80000CC .space 0x34 From 03205c995d4bc08a9eb9b753db4be4f54935fdbb Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 24 Dec 2021 01:59:40 -0300 Subject: [PATCH 468/762] Update battle_script_commands.c --- src/battle_script_commands.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 391e8285028a..3c8bbfdee42e 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -4009,7 +4009,7 @@ static void Cmd_playanimation(void) } } -// Same as playanimation, expect it takes a pointer to some animation id, instead of taking the value directly +// Same as playanimation, except it takes a pointer to some animation id, instead of taking the value directly static void Cmd_playanimation_var(void) { const u16* argumentPtr; From 599ca580597c158374fe7a598a876eb5a97f9fa2 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sat, 25 Dec 2021 07:04:19 -0300 Subject: [PATCH 469/762] Update main_menu.c --- src/main_menu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main_menu.c b/src/main_menu.c index 601e66cb9d5b..e7802b1e7a92 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -104,7 +104,7 @@ * printing, and then wait for A or B to be pressed. * - Then advance to Task_HandleMainMenuBPressed. * - * Task_NewGameBirchSpeechInit + * Task_NewGameBirchSpeech_Init * - Load the sprites for the intro speech, start playing music * Task_NewGameBirchSpeech_WaitToShowBirch * - Spawn Task_NewGameBirchSpeech_FadeInTarget1OutTarget2 From ee5e65d9edf859290e0e99c5fecbc941f9258041 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 28 Dec 2021 03:57:44 -0500 Subject: [PATCH 470/762] Rename generic title screen tilemaps --- .../title_screen/{title_screen1.bin => clouds.bin} | Bin .../{title_screen2.bin => pokemon_logo.bin} | Bin .../title_screen/{unk_853EF78.pal => unused.pal} | 0 src/graphics.c | 4 ++-- src/title_screen.c | 2 +- 5 files changed, 3 insertions(+), 3 deletions(-) rename graphics/title_screen/{title_screen1.bin => clouds.bin} (100%) rename graphics/title_screen/{title_screen2.bin => pokemon_logo.bin} (100%) rename graphics/title_screen/{unk_853EF78.pal => unused.pal} (100%) diff --git a/graphics/title_screen/title_screen1.bin b/graphics/title_screen/clouds.bin similarity index 100% rename from graphics/title_screen/title_screen1.bin rename to graphics/title_screen/clouds.bin diff --git a/graphics/title_screen/title_screen2.bin b/graphics/title_screen/pokemon_logo.bin similarity index 100% rename from graphics/title_screen/title_screen2.bin rename to graphics/title_screen/pokemon_logo.bin diff --git a/graphics/title_screen/unk_853EF78.pal b/graphics/title_screen/unused.pal similarity index 100% rename from graphics/title_screen/unk_853EF78.pal rename to graphics/title_screen/unused.pal diff --git a/src/graphics.c b/src/graphics.c index 73825aebf3be..26eae14e2097 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1505,12 +1505,12 @@ const u16 gMonIconPalettes[][16] = const u16 gTitleScreenBgPalettes[] = INCBIN_U16("graphics/title_screen/pokemon_logo.gbapal", "graphics/title_screen/rayquaza_and_clouds.gbapal"); const u16 gTitleScreenEmeraldVersionPal[] = INCBIN_U16("graphics/title_screen/emerald_version.gbapal"); -const u32 gTitleScreenCloudsTilemap[] = INCBIN_U32("graphics/title_screen/title_screen1.bin.lz"); +const u32 gTitleScreenCloudsTilemap[] = INCBIN_U32("graphics/title_screen/clouds.bin.lz"); const u32 gTitleScreenPokemonLogoGfx[] = INCBIN_U32("graphics/title_screen/pokemon_logo.8bpp.lz"); const u32 gTitleScreenEmeraldVersionGfx[] = INCBIN_U32("graphics/title_screen/emerald_version.8bpp.lz"); const u16 gTitleScreenPressStartPal[] = INCBIN_U16("graphics/title_screen/press_start.gbapal"); const u32 gTitleScreenPressStartGfx[] = INCBIN_U32("graphics/title_screen/press_start.4bpp.lz"); -const u32 gTitleScreenPokemonLogoTilemap[] = INCBIN_U32("graphics/title_screen/title_screen2.bin.lz"); +const u32 gTitleScreenPokemonLogoTilemap[] = INCBIN_U32("graphics/title_screen/pokemon_logo.bin.lz"); // size in LoadPalette calls is reported as 0xD0 << 1, which is 0x1A0, but palette is only 0x100 bytes long so it loads garbage as well const u16 gFrontierPassBg_Pal[][16] = INCBIN_U16("graphics/frontier_pass/bg.gbapal"); diff --git a/src/title_screen.c b/src/title_screen.c index 93e01327c290..d64ee6024fa4 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -52,7 +52,7 @@ static void SpriteCB_PressStartCopyrightBanner(struct Sprite *sprite); static void SpriteCB_PokemonLogoShine(struct Sprite *sprite); // const rom data -static const u16 sUnusedUnknownPal[] = INCBIN_U16("graphics/title_screen/unk_853EF78.gbapal"); +static const u16 sUnusedUnknownPal[] = INCBIN_U16("graphics/title_screen/unused.gbapal"); static const u32 sTitleScreenRayquazaGfx[] = INCBIN_U32("graphics/title_screen/rayquaza.4bpp.lz"); static const u32 sTitleScreenRayquazaTilemap[] = INCBIN_U32("graphics/title_screen/rayquaza.bin.lz"); From 3acf002a9c2187ca228e1c7a8b3862e1bc4ab3ea Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 28 Dec 2021 13:16:31 -0500 Subject: [PATCH 471/762] Rename generic jp contest tilemaps --- .../{unused_tilemap_2.bin => japanese/audience.bin} | Bin graphics/contest/japanese/{tilemap_1.bin => bg.bin} | Bin .../interface.bin} | Bin .../contest/japanese/{tilemap_2.bin => windows.bin} | Bin src/graphics.c | 8 ++++---- 5 files changed, 4 insertions(+), 4 deletions(-) rename graphics/contest/{unused_tilemap_2.bin => japanese/audience.bin} (100%) rename graphics/contest/japanese/{tilemap_1.bin => bg.bin} (100%) rename graphics/contest/{unused_tilemap_1.bin => japanese/interface.bin} (100%) rename graphics/contest/japanese/{tilemap_2.bin => windows.bin} (100%) diff --git a/graphics/contest/unused_tilemap_2.bin b/graphics/contest/japanese/audience.bin similarity index 100% rename from graphics/contest/unused_tilemap_2.bin rename to graphics/contest/japanese/audience.bin diff --git a/graphics/contest/japanese/tilemap_1.bin b/graphics/contest/japanese/bg.bin similarity index 100% rename from graphics/contest/japanese/tilemap_1.bin rename to graphics/contest/japanese/bg.bin diff --git a/graphics/contest/unused_tilemap_1.bin b/graphics/contest/japanese/interface.bin similarity index 100% rename from graphics/contest/unused_tilemap_1.bin rename to graphics/contest/japanese/interface.bin diff --git a/graphics/contest/japanese/tilemap_2.bin b/graphics/contest/japanese/windows.bin similarity index 100% rename from graphics/contest/japanese/tilemap_2.bin rename to graphics/contest/japanese/windows.bin diff --git a/src/graphics.c b/src/graphics.c index 26eae14e2097..47b82b6b7204 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -435,15 +435,15 @@ const u32 gBattleAnimSpriteGfx_BlueFlames2[] = INCBIN_U32("graphics/battle_anims // Contest const u32 gJPContestGfx1[] = INCBIN_U32("graphics/contest/japanese/composite_1.4bpp.lz"); const u32 gJPContestPal[] = INCBIN_U32("graphics/contest/japanese/palette.gbapal.lz"); -const u32 gJPContestTilemap1[] = INCBIN_U32("graphics/contest/japanese/tilemap_1.bin.lz"); -const u32 gJPContestTilemap2[] = INCBIN_U32("graphics/contest/japanese/tilemap_2.bin.lz"); +const u32 gJPContestBgTilemap[] = INCBIN_U32("graphics/contest/japanese/bg.bin.lz"); +const u32 gJPContestWindowsTilemap[] = INCBIN_U32("graphics/contest/japanese/windows.bin.lz"); const u32 gJPContestGfx2[] = INCBIN_U32("graphics/contest/japanese/composite_2.4bpp.lz"); const u32 gContestInterfaceAudiencePalette[] = INCBIN_U32("graphics/contest/interface_audience.gbapal.lz"); const u32 gContestAudienceTilemap[] = INCBIN_U32("graphics/contest/audience.bin.lz"); const u32 gContestInterfaceTilemap[] = INCBIN_U32("graphics/contest/interface.bin.lz"); -const u32 gContestUnusedTilemap1[] = INCBIN_U32("graphics/contest/unused_tilemap_1.bin.lz"); -const u32 gContestUnusedTilemap2[] = INCBIN_U32("graphics/contest/unused_tilemap_2.bin.lz"); +const u32 gJPContestInterfaceTilemap[] = INCBIN_U32("graphics/contest/japanese/interface.bin.lz"); +const u32 gJPContestAudienceTilemap[] = INCBIN_U32("graphics/contest/japanese/audience.bin.lz"); const u32 gContestCurtainTilemap[] = INCBIN_U32("graphics/contest/curtain.bin.lz"); const u32 gContestInterfaceGfx[] = INCBIN_U32("graphics/contest/interface.4bpp.lz"); From 4fc345fff502e3d8c40c6cbe80e73082f2e35588 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 28 Dec 2021 14:54:09 -0500 Subject: [PATCH 472/762] Rename unused frontier pass tilemap --- graphics/frontier_pass/{unused.bin => card_ball_filled.bin} | 0 src/frontier_pass.c | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename graphics/frontier_pass/{unused.bin => card_ball_filled.bin} (100%) diff --git a/graphics/frontier_pass/unused.bin b/graphics/frontier_pass/card_ball_filled.bin similarity index 100% rename from graphics/frontier_pass/unused.bin rename to graphics/frontier_pass/card_ball_filled.bin diff --git a/src/frontier_pass.c b/src/frontier_pass.c index 07dd8f2289b6..b143587415bb 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -173,7 +173,7 @@ static const u32 sHeads_Gfx[] = INCBIN_U32("graphics/frontier static const u32 sMapCursor_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_cursor.4bpp.lz"); static const u32 sMapScreen_Tilemap[] = INCBIN_U32("graphics/frontier_pass/map_screen.bin.lz"); static const u32 sMapAndCard_ZoomedOut_Tilemap[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card.bin.lz"); -static const u32 sUnusedData[] = INCBIN_U32("graphics/frontier_pass/unused.bin"); +static const u32 sCardBall_Filled_Tilemap[] = INCBIN_U32("graphics/frontier_pass/card_ball_filled.bin"); // Unused static const u32 sBattleRecord_Tilemap[] = INCBIN_U32("graphics/frontier_pass/record_frame.bin.lz"); static const u32 sMapAndCard_Zooming_Tilemap[] = INCBIN_U32("graphics/frontier_pass/small_map_and_card_affine.bin.lz"); From aba5264260d023686a08f406651256de324cdf4d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 28 Dec 2021 17:46:05 -0500 Subject: [PATCH 473/762] RGB macro use in slot_machine --- graphics/slot_machine/85A8524.bin | Bin 32 -> 0 bytes src/slot_machine.c | 27 +++++++++++++++------------ 2 files changed, 15 insertions(+), 12 deletions(-) delete mode 100644 graphics/slot_machine/85A8524.bin diff --git a/graphics/slot_machine/85A8524.bin b/graphics/slot_machine/85A8524.bin deleted file mode 100644 index 0325642780da7235dbab817783c8a807c6ba8c47..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32 ScmZQz`2U}QfkTl22LJ#*?gA(P diff --git a/src/slot_machine.c b/src/slot_machine.c index 6cbcd76fdf3b..c58de415bcdb 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -7154,18 +7154,18 @@ static const struct SpriteSheet sSlotMachineSpriteSheets[22] = static const u8 *const sReelBackground_Tilemap = gSlotMachineReelBackground_Tilemap; -static const u16 sUnused[] = +static const u16 sUnusedColors[] = { - 0x6F7B, - 0x6968, - 0x36AB, - 0x7FFF, - 0x5750, - 0x7EC0, - 0x02BA, - 0x02BA, - 0x01FD, - 0x01FD, + RGB(27, 27, 27), + RGB(8, 11, 26), + RGB(11, 21, 13), + RGB(31, 31, 31), + RGB(16, 26, 21), + RGB(0, 22, 31), + RGB(26, 21, 0), + RGB(26, 21, 0), + RGB(29, 15, 0), + RGB(29, 15, 0), }; // The Bet 2 and 3 match line palettes are duplicated unnecessarily @@ -7234,7 +7234,10 @@ static const u16 *const sPokeballShiningPalTable[] = }; static const u16 *const sDigitalDisplay_Pal = gSlotMachineDigitalDisplay_Pal; -static const u16 sUnkPalette[] = INCBIN_U16("graphics/slot_machine/85A8524.bin"); +static const u16 sUnkPalette[16] = { + [1] = RGB_WHITEALPHA, + [3] = RGB(8, 8, 8), +}; static const struct SpritePalette sSlotMachineSpritePalettes[] = { From aadab8b0167f1f74a28d4234509faffd8dca7bc2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 28 Dec 2021 18:07:41 -0500 Subject: [PATCH 474/762] Move pokemon and easy chat constants to global, misc clean-up --- include/battle_script_commands.h | 1 - include/constants/global.h | 21 +++++++++---------- include/constants/pokemon.h | 6 ++++-- include/easy_chat.h | 1 - include/global.h | 5 ++++- include/menu.h | 1 - include/pokeblock.h | 3 --- include/pokemon.h | 1 - include/save.h | 3 +-- src/apprentice.c | 2 -- src/bard_music.c | 1 - src/battle_anim_smokescreen.c | 1 - src/battle_dome.c | 1 - src/battle_pike.c | 1 - src/battle_tower.c | 1 - .../easy_chat/easy_chat_words_by_letter.h | 1 - src/data/lilycove_lady.h | 1 - src/dewford_trend.c | 1 - src/easy_chat.c | 1 - src/ereader_helpers.c | 1 - src/mail_data.c | 1 - src/mauville_old_man.c | 1 - src/party_menu.c | 1 - src/save.c | 4 ++-- src/trade.c | 1 - src/trainer_hill.c | 1 - 26 files changed, 21 insertions(+), 42 deletions(-) diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h index cb81ad812416..ed90d787f05c 100644 --- a/include/battle_script_commands.h +++ b/include/battle_script_commands.h @@ -1,7 +1,6 @@ #ifndef GUARD_BATTLE_SCRIPT_COMMANDS_H #define GUARD_BATTLE_SCRIPT_COMMANDS_H -#include "constants/pokemon.h" #include "constants/battle_script_commands.h" // Arguments for 'flags' in HandleBattleWindow diff --git a/include/constants/global.h b/include/constants/global.h index ef7861e9ed60..48b03b5ccbf8 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -29,11 +29,20 @@ #define GAME_VERSION (VERSION_EMERALD) #define GAME_LANGUAGE (LANGUAGE_ENGLISH) +// party sizes +#define PARTY_SIZE 6 +#define MULTI_PARTY_SIZE (PARTY_SIZE / 2) +#define FRONTIER_PARTY_SIZE 3 +#define FRONTIER_DOUBLES_PARTY_SIZE 4 +#define FRONTIER_MULTI_PARTY_SIZE 2 +#define MAX_FRONTIER_PARTY_SIZE FRONTIER_DOUBLES_PARTY_SIZE +#define UNION_ROOM_PARTY_SIZE 2 + // capacities of various saveblock objects #define DAYCARE_MON_COUNT 2 #define POKEBLOCKS_COUNT 40 #define OBJECT_EVENTS_COUNT 16 -#define MAIL_COUNT 16 +#define MAIL_COUNT (10 + PARTY_SIZE) #define SECRET_BASES_COUNT 20 #define TV_SHOWS_COUNT 25 #define POKE_NEWS_COUNT 16 @@ -70,7 +79,6 @@ #define TRAINER_ID_LENGTH 4 #define MAX_MON_MOVES 4 -#define NUM_STATS 6 #define CONTESTANT_COUNT 4 #define CONTEST_CATEGORY_COOL 0 @@ -80,15 +88,6 @@ #define CONTEST_CATEGORY_TOUGH 4 #define CONTEST_CATEGORIES_COUNT 5 -// party sizes -#define PARTY_SIZE 6 -#define MULTI_PARTY_SIZE (PARTY_SIZE / 2) -#define FRONTIER_PARTY_SIZE 3 -#define FRONTIER_DOUBLES_PARTY_SIZE 4 -#define FRONTIER_MULTI_PARTY_SIZE 2 -#define MAX_FRONTIER_PARTY_SIZE FRONTIER_DOUBLES_PARTY_SIZE -#define UNION_ROOM_PARTY_SIZE 2 - // string lengths #define ITEM_NAME_LENGTH 14 #define POKEMON_NAME_LENGTH 10 diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 9fa023cd576c..0a74e751eb60 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -78,11 +78,13 @@ #define STAT_SPEED 3 #define STAT_SPATK 4 #define STAT_SPDEF 5 +#define NUM_STATS 6 + #define STAT_ACC 6 // Only in battles. #define STAT_EVASION 7 // Only in battles. -#define NUM_NATURE_STATS NUM_STATS - 1 // excludes HP -#define NUM_BATTLE_STATS NUM_STATS + 2 // includes Accuracy and Evasion +#define NUM_NATURE_STATS (NUM_STATS - 1) // excludes HP +#define NUM_BATTLE_STATS (NUM_STATS + 2) // includes Accuracy and Evasion #define MIN_STAT_STAGE 0 #define DEFAULT_STAT_STAGE 6 diff --git a/include/easy_chat.h b/include/easy_chat.h index 4d2bc7c983c1..c9ef4428f786 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -2,7 +2,6 @@ #define GUARD_EASYCHAT_H #include "main.h" -#include "constants/easy_chat.h" struct EasyChatScreenTemplate { diff --git a/include/global.h b/include/global.h index 024280f98697..ca5f509165d6 100644 --- a/include/global.h +++ b/include/global.h @@ -11,6 +11,8 @@ #include "constants/species.h" #include "constants/berry.h" #include "constants/maps.h" +#include "constants/pokemon.h" +#include "constants/easy_chat.h" // Prevent cross-jump optimization. #define BLOCK_CROSS_JUMP asm(""); @@ -127,6 +129,7 @@ #define DEX_FLAGS_NO ROUND_BITS_TO_BYTES(NUM_SPECIES) #define NUM_FLAG_BYTES ROUND_BITS_TO_BYTES(FLAGS_COUNT) +#define NUM_ADDITIONAL_PHRASE_BYTES ROUND_BITS_TO_BYTES(NUM_ADDITIONAL_PHRASES) struct Coords8 { @@ -984,7 +987,7 @@ struct SaveBlock1 /*0x2BC8*/ u16 easyChatBattleWon[EASY_CHAT_BATTLE_WORDS_COUNT]; /*0x2BD4*/ u16 easyChatBattleLost[EASY_CHAT_BATTLE_WORDS_COUNT]; /*0x2BE0*/ struct Mail mail[MAIL_COUNT]; - /*0x2E20*/ u8 additionalPhrases[8]; // bitfield for 33 additional phrases in easy chat system + /*0x2E20*/ u8 additionalPhrases[NUM_ADDITIONAL_PHRASE_BYTES]; // bitfield for 33 additional phrases in easy chat system /*0x2E28*/ OldMan oldMan; /*0x2e64*/ struct DewfordTrend dewfordTrends[SAVED_TRENDS_COUNT]; /*0x2e90*/ struct ContestWinner contestWinners[NUM_CONTEST_WINNERS]; // see CONTEST_WINNER_* diff --git a/include/menu.h b/include/menu.h index 69000d4089de..bf3f56aeab46 100644 --- a/include/menu.h +++ b/include/menu.h @@ -4,7 +4,6 @@ #include "task.h" #include "text.h" #include "window.h" -#include "constants/pokemon.h" #define MENU_NOTHING_CHOSEN -2 #define MENU_B_PRESSED -1 diff --git a/include/pokeblock.h b/include/pokeblock.h index 9e0161495142..24e6ea85692b 100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h @@ -1,9 +1,6 @@ #ifndef GUARD_POKEBLOCK_H #define GUARD_POKEBLOCK_H -#include "constants/berry.h" -#include "constants/pokemon.h" - #define TAG_POKEBLOCK 14818 enum diff --git a/include/pokemon.h b/include/pokemon.h index 315416c38391..28460bbe644d 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -1,7 +1,6 @@ #ifndef GUARD_POKEMON_H #define GUARD_POKEMON_H -#include "constants/pokemon.h" #include "sprite.h" struct PokemonSubstruct0 diff --git a/include/save.h b/include/save.h index be7961136ecb..89fc9ad33eaf 100644 --- a/include/save.h +++ b/include/save.h @@ -52,8 +52,7 @@ enum { SAVE_NORMAL, SAVE_LINK, // Link / Battle Frontier - //EREADER_SAVE, // deprecated in Emerald - SAVE_LINK2, // unknown 2nd link save + SAVE_EREADER, // deprecated in Emerald SAVE_HALL_OF_FAME, SAVE_OVERWRITE_DIFFERENT_FILE, SAVE_HALL_OF_FAME_ERASE_BEFORE // unused diff --git a/src/apprentice.c b/src/apprentice.c index 2ab2f0e5a1ed..591ab79e4d31 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -23,9 +23,7 @@ #include "task.h" #include "text.h" #include "constants/battle_frontier.h" -#include "constants/easy_chat.h" #include "constants/items.h" -#include "constants/pokemon.h" #include "constants/songs.h" #include "constants/trainers.h" #include "constants/moves.h" diff --git a/src/bard_music.c b/src/bard_music.c index 114f1cf42f85..bdc5ac808ac5 100644 --- a/src/bard_music.c +++ b/src/bard_music.c @@ -1,6 +1,5 @@ #include "global.h" #include "bard_music.h" -#include "constants/easy_chat.h" #include "easy_chat.h" #include "data/bard_music/bard_sounds.h" diff --git a/src/battle_anim_smokescreen.c b/src/battle_anim_smokescreen.c index 9844f500771b..0819796d276a 100644 --- a/src/battle_anim_smokescreen.c +++ b/src/battle_anim_smokescreen.c @@ -5,7 +5,6 @@ #include "graphics.h" #include "sprite.h" #include "util.h" -#include "constants/pokemon.h" #include "constants/battle_palace.h" static void SmokescreenImpact_Callback(struct Sprite *); diff --git a/src/battle_dome.c b/src/battle_dome.c index 29366298511b..2f77491c9e34 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -34,7 +34,6 @@ #include "constants/battle_dome.h" #include "constants/frontier_util.h" #include "constants/moves.h" -#include "constants/pokemon.h" #include "constants/trainers.h" #include "constants/abilities.h" #include "constants/songs.h" diff --git a/src/battle_pike.c b/src/battle_pike.c index d889d7cddfcf..2b0cf6420501 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -17,7 +17,6 @@ #include "constants/battle_frontier.h" #include "constants/frontier_util.h" #include "constants/abilities.h" -#include "constants/easy_chat.h" #include "constants/layouts.h" #include "constants/rgb.h" #include "constants/trainers.h" diff --git a/src/battle_tower.c b/src/battle_tower.c index 7ed15d1e65cf..d1c95285b348 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -35,7 +35,6 @@ #include "constants/trainers.h" #include "constants/event_objects.h" #include "constants/moves.h" -#include "constants/easy_chat.h" extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer[]; extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer[]; diff --git a/src/data/easy_chat/easy_chat_words_by_letter.h b/src/data/easy_chat/easy_chat_words_by_letter.h index a56e3184f7ba..235afbb78695 100755 --- a/src/data/easy_chat/easy_chat_words_by_letter.h +++ b/src/data/easy_chat/easy_chat_words_by_letter.h @@ -1,5 +1,4 @@ #include "easy_chat.h" -#include "constants/easy_chat.h" #define DOUBLE_SPECIES_NAME EC_EMPTY_WORD, 2, diff --git a/src/data/lilycove_lady.h b/src/data/lilycove_lady.h index dd0885ff820e..4a3a7a719488 100644 --- a/src/data/lilycove_lady.h +++ b/src/data/lilycove_lady.h @@ -1,4 +1,3 @@ -#include "constants/easy_chat.h" #include "constants/event_objects.h" #include "constants/items.h" #include "constants/moves.h" diff --git a/src/dewford_trend.c b/src/dewford_trend.c index bba2085e8b32..08dd9afe0ba0 100644 --- a/src/dewford_trend.c +++ b/src/dewford_trend.c @@ -8,7 +8,6 @@ #include "text.h" #include "tv.h" #include "string_util.h" -#include "constants/easy_chat.h" /* ## Overview ## diff --git a/src/easy_chat.c b/src/easy_chat.c index f9ba44ba79b4..734fd4f18b2f 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -27,7 +27,6 @@ #include "task.h" #include "text_window.h" #include "window.h" -#include "constants/easy_chat.h" #include "constants/event_objects.h" #include "constants/lilycove_lady.h" #include "constants/mauville_old_man.h" diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index 0de87602ee1b..c3f17f234a42 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -10,7 +10,6 @@ #include "task.h" #include "util.h" #include "trainer_hill.h" -#include "constants/easy_chat.h" #include "constants/trainers.h" #include "constants/moves.h" #include "constants/items.h" diff --git a/src/mail_data.c b/src/mail_data.c index ca50a687e760..99cf1f9edd62 100644 --- a/src/mail_data.c +++ b/src/mail_data.c @@ -5,7 +5,6 @@ #include "pokemon_icon.h" #include "text.h" #include "international_string_util.h" -#include "constants/easy_chat.h" #define UNOWN_OFFSET 30000 diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 06c3b8288621..681a3dadfdc5 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -1,7 +1,6 @@ #include "global.h" #include "main.h" #include "constants/songs.h" -#include "constants/easy_chat.h" #include "constants/event_objects.h" #include "mauville_old_man.h" #include "event_data.h" diff --git a/src/party_menu.c b/src/party_menu.c index 34aff619fe83..36e83a168e5a 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -65,7 +65,6 @@ #include "window.h" #include "constants/battle.h" #include "constants/battle_frontier.h" -#include "constants/easy_chat.h" #include "constants/field_effects.h" #include "constants/item_effects.h" #include "constants/items.h" diff --git a/src/save.c b/src/save.c index b539564383bf..dafc20868edd 100644 --- a/src/save.c +++ b/src/save.c @@ -428,7 +428,7 @@ static u8 CopySectorSecurityByte(u16 sectorId, const struct SaveSectorLocation * } else { - // Succeded + // Succeeded SetDamagedSectorBits(DISABLE, sector); return SAVE_STATUS_OK; } @@ -734,7 +734,7 @@ u8 HandleSavingData(u8 saveType) WriteSaveSectorOrSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations); break; case SAVE_LINK: - case SAVE_LINK2: + case SAVE_EREADER: // Dummied, now duplicate of SAVE_LINK // Used by link / Battle Frontier // Write only SaveBlocks 1 and 2 (skips the PC) CopyPartyAndObjectsToSave(); diff --git a/src/trade.c b/src/trade.c index 935a89b02f48..b48d1abf512b 100644 --- a/src/trade.c +++ b/src/trade.c @@ -44,7 +44,6 @@ #include "util.h" #include "window.h" #include "constants/contest.h" -#include "constants/easy_chat.h" #include "constants/items.h" #include "constants/moves.h" #include "constants/region_map_sections.h" diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 04312a2dd146..3ada262e56ce 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -29,7 +29,6 @@ #include "constants/layouts.h" #include "constants/moves.h" #include "constants/trainers.h" -#include "constants/easy_chat.h" #include "constants/trainer_hill.h" #include "constants/trainer_types.h" From 50522fdea49d327361ba19bbc92c9c879343616d Mon Sep 17 00:00:00 2001 From: sphericalice Date: Thu, 30 Dec 2021 12:21:47 +0000 Subject: [PATCH 475/762] Remove some magic numbers from TryPushBoulder --- src/field_player_avatar.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 6cf468b3e00c..3c0276a27bea 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -735,13 +735,13 @@ static bool8 TryPushBoulder(s16 x, s16 y, u8 direction) { u8 objectEventId = GetObjectEventIdByXY(x, y); - if (objectEventId != 16 && gObjectEvents[objectEventId].graphicsId == OBJ_EVENT_GFX_PUSHABLE_BOULDER) + if (objectEventId != OBJECT_EVENTS_COUNT && gObjectEvents[objectEventId].graphicsId == OBJ_EVENT_GFX_PUSHABLE_BOULDER) { x = gObjectEvents[objectEventId].currentCoords.x; y = gObjectEvents[objectEventId].currentCoords.y; MoveCoords(direction, &x, &y); if (GetCollisionAtCoords(&gObjectEvents[objectEventId], x, y, direction) == COLLISION_NONE - && MetatileBehavior_IsNonAnimDoor(MapGridGetMetatileBehaviorAt(x, y)) == 0) + && MetatileBehavior_IsNonAnimDoor(MapGridGetMetatileBehaviorAt(x, y)) == FALSE) { StartStrengthAnim(objectEventId, direction); return TRUE; From 23f5c9fd5c366d986be66df37cf9b72ba077aa6f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 29 Dec 2021 03:23:58 -0500 Subject: [PATCH 476/762] Clean up pokedex_area_screen --- data/mystery_gift.s | 1 + data/scripts/gift_altering_cave.inc | 2 +- .../{interface => pokedex}/region_map.bin | Bin .../{interface => pokedex}/region_map.pal | 0 .../{interface => pokedex}/region_map.png | Bin .../region_map_affine.bin | Bin .../region_map_affine.png | Bin graphics_file_rules.mk | 5 +- include/constants/maps.h | 6 - include/constants/wild_encounter.h | 11 + include/wild_encounter.h | 5 +- src/data/pokedex_area_glow.h | 314 ++++++++++ src/pokedex_area_region_map.c | 12 +- src/pokedex_area_screen.c | 571 ++++++++---------- src/wild_encounter.c | 21 +- 15 files changed, 611 insertions(+), 337 deletions(-) rename graphics/{interface => pokedex}/region_map.bin (100%) rename graphics/{interface => pokedex}/region_map.pal (100%) rename graphics/{interface => pokedex}/region_map.png (100%) rename graphics/{interface => pokedex}/region_map_affine.bin (100%) rename graphics/{interface => pokedex}/region_map_affine.png (100%) create mode 100644 include/constants/wild_encounter.h create mode 100644 src/data/pokedex_area_glow.h diff --git a/data/mystery_gift.s b/data/mystery_gift.s index df0cbd4ac0a7..86202b95f7a1 100644 --- a/data/mystery_gift.s +++ b/data/mystery_gift.s @@ -8,6 +8,7 @@ #include "constants/songs.h" #include "constants/species.h" #include "constants/vars.h" +#include "constants/wild_encounter.h" .include "asm/macros.inc" .include "asm/macros/event.inc" .include "constants/constants.inc" diff --git a/data/scripts/gift_altering_cave.inc b/data/scripts/gift_altering_cave.inc index f86432ce284c..65ff87068ad6 100644 --- a/data/scripts/gift_altering_cave.inc +++ b/data/scripts/gift_altering_cave.inc @@ -1,7 +1,7 @@ MysteryGiftScript_AlteringCave:: setvaddress MysteryGiftScript_AlteringCave addvar VAR_ALTERING_CAVE_WILD_SET, 1 - vgoto_if_ne VAR_ALTERING_CAVE_WILD_SET, 10, MysteryGiftScript_AlteringCave_ + vgoto_if_ne VAR_ALTERING_CAVE_WILD_SET, (NUM_ALTERING_CAVE_TABLES + 1), MysteryGiftScript_AlteringCave_ setvar VAR_ALTERING_CAVE_WILD_SET, 0 MysteryGiftScript_AlteringCave_: lock diff --git a/graphics/interface/region_map.bin b/graphics/pokedex/region_map.bin similarity index 100% rename from graphics/interface/region_map.bin rename to graphics/pokedex/region_map.bin diff --git a/graphics/interface/region_map.pal b/graphics/pokedex/region_map.pal similarity index 100% rename from graphics/interface/region_map.pal rename to graphics/pokedex/region_map.pal diff --git a/graphics/interface/region_map.png b/graphics/pokedex/region_map.png similarity index 100% rename from graphics/interface/region_map.png rename to graphics/pokedex/region_map.png diff --git a/graphics/interface/region_map_affine.bin b/graphics/pokedex/region_map_affine.bin similarity index 100% rename from graphics/interface/region_map_affine.bin rename to graphics/pokedex/region_map_affine.bin diff --git a/graphics/interface/region_map_affine.png b/graphics/pokedex/region_map_affine.png similarity index 100% rename from graphics/interface/region_map_affine.png rename to graphics/pokedex/region_map_affine.png diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index eb36d4255f05..7a37c5e4f160 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -18,6 +18,7 @@ WALLPAPERGFXDIR := graphics/pokemon_storage/wallpapers OBJEVENTGFXDIR := graphics/object_events MISCGFXDIR := graphics/misc JPCONTESTGFXDIR := graphics/contest/japanese +POKEDEXGFXDIR := graphics/pokedex 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 @@ -700,10 +701,10 @@ $(PKNAVGFXDIR)/device_outline.4bpp: %.4bpp: %.png $(PKNAVGFXDIR)/match_call/ui.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 13 -$(INTERFACEGFXDIR)/region_map.8bpp: %.8bpp: %.png +$(POKEDEXGFXDIR)/region_map.8bpp: %.8bpp: %.png $(GFX) $< $@ -num_tiles 232 -$(INTERFACEGFXDIR)/region_map_affine.8bpp: %.8bpp: %.png +$(POKEDEXGFXDIR)/region_map_affine.8bpp: %.8bpp: %.png $(GFX) $< $@ -num_tiles 233 $(MISCGFXDIR)/birch_help.4bpp: $(MISCGFXDIR)/birch_bag.4bpp $(MISCGFXDIR)/birch_grass.4bpp diff --git a/include/constants/maps.h b/include/constants/maps.h index 6524f8c14afd..2ad4ea8df574 100644 --- a/include/constants/maps.h +++ b/include/constants/maps.h @@ -9,12 +9,6 @@ #define MAP_GROUP(map) (MAP_##map >> 8) #define MAP_NUM(map) (MAP_##map & 0xFF) -// These groups are used by pokedex_area_screen.c to find wild -// pokemon locations. -#define MAP_GROUP_OVERWORLD_MONS MAP_GROUP(PETALBURG_CITY) -#define MAP_GROUP_SPECIAL_MONS_1 MAP_GROUP(METEOR_FALLS_1F_1R) -#define MAP_GROUP_SPECIAL_MONS_2 MAP_GROUP(SAFARI_ZONE_NORTHWEST) - // 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_NONE is used to indicate that a // dynamic warp should be used, at which point the warp id is ignored. It can be passed to diff --git a/include/constants/wild_encounter.h b/include/constants/wild_encounter.h new file mode 100644 index 000000000000..a78cd126f33d --- /dev/null +++ b/include/constants/wild_encounter.h @@ -0,0 +1,11 @@ +#ifndef GUARD_CONSTANTS_WILD_ENCOUNTER_H +#define GUARD_CONSTANTS_WILD_ENCOUNTER_H + +#define LAND_WILD_COUNT 12 +#define WATER_WILD_COUNT 5 +#define ROCK_WILD_COUNT 5 +#define FISH_WILD_COUNT 10 + +#define NUM_ALTERING_CAVE_TABLES 9 + +#endif // GUARD_CONSTANTS_WILD_ENCOUNTER_H diff --git a/include/wild_encounter.h b/include/wild_encounter.h index 09525beff96b..8608ec5b1698 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -1,10 +1,7 @@ #ifndef GUARD_WILD_ENCOUNTER_H #define GUARD_WILD_ENCOUNTER_H -#define LAND_WILD_COUNT 12 -#define WATER_WILD_COUNT 5 -#define ROCK_WILD_COUNT 5 -#define FISH_WILD_COUNT 10 +#include "constants/wild_encounter.h" struct WildPokemon { diff --git a/src/data/pokedex_area_glow.h b/src/data/pokedex_area_glow.h new file mode 100644 index 000000000000..0da4f1dac76e --- /dev/null +++ b/src/data/pokedex_area_glow.h @@ -0,0 +1,314 @@ +// These tile numbers correspond to the 8x8 tiles in graphics/pokedex/area_glow.png +// Left/Right/Top/Bottom are shortened to L/R/T/B +enum { + GLOW_TILE_EMPTY, + GLOW_TILE_EDGE_R, + GLOW_TILE_EDGE_L, + GLOW_TILE_EDGE_L_R, + GLOW_TILE_EDGE_B, + GLOW_TILE_EDGE_B_R, + GLOW_TILE_EDGE_B_L, + GLOW_TILE_EDGE_B_L_R, + GLOW_TILE_EDGE_T, + GLOW_TILE_EDGE_T_R, + GLOW_TILE_EDGE_T_L, + GLOW_TILE_EDGE_T_L_R, + GLOW_TILE_EDGE_T_B, + GLOW_TILE_EDGE_T_B_R, + GLOW_TILE_EDGE_T_B_L, + GLOW_TILE_EDGE_T_B_L_R, // This tile has a misplaced pixel in the top-left corner + GLOW_TILE_FULL, + GLOW_TILE_CORNER_TL, + GLOW_TILE_CORNER_BL, + GLOW_TILE_CORNER_BL_TL, + GLOW_TILE_CORNER_TR, + GLOW_TILE_CORNER_TR_TL, + GLOW_TILE_CORNER_TR_BL, + GLOW_TILE_CORNER_TR_BL_TL, + GLOW_TILE_CORNER_BR, + GLOW_TILE_CORNER_BR_TL, + GLOW_TILE_CORNER_BR_BL, + GLOW_TILE_CORNER_BR_BL_TL, + GLOW_TILE_CORNER_BR_TR, + GLOW_TILE_CORNER_BR_TR_TL, + GLOW_TILE_CORNER_BR_TR_BL, + GLOW_TILE_CORNER_BR_TR_BL_TL, + GLOW_TILE_EDGE_R_CORNER_TL, + GLOW_TILE_EDGE_R_CORNER_BL, + GLOW_TILE_EDGE_R_CORNER_BL_TL, + GLOW_TILE_EDGE_L_CORNER_TR, + GLOW_TILE_EDGE_L_CORNER_BR, + GLOW_TILE_EDGE_L_CORNER_BR_TR, + GLOW_TILE_EDGE_B_CORNER_TR, + GLOW_TILE_EDGE_B_CORNER_TL, + GLOW_TILE_EDGE_B_CORNER_TL_TR, + GLOW_TILE_EDGE_T_CORNER_BR, + GLOW_TILE_EDGE_T_CORNER_BL, + GLOW_TILE_EDGE_T_CORNER_BL_BR, + GLOW_TILE_EDGE_B_L_CORNER_TR, + GLOW_TILE_EDGE_B_R_CORNER_TL, + GLOW_TILE_EDGE_T_R_CORNER_BL, + GLOW_TILE_EDGE_T_L_CORNER_BR +}; + +// This array converts a set of glow position flags to one of the above tile values. +// Only some parts of this array are actually used, because corner flags that overlap +// with edge flags are cancelled out before lookup. For example, GLOW_CORNER_TL | GLOW_EDGE_L +// will never be read, and has the same value as GLOW_EDGE_L. +static const u8 sAreaGlowTilemapMapping[] = { + [GLOW_EDGE_R] = GLOW_TILE_EDGE_R, + [GLOW_EDGE_L] = GLOW_TILE_EDGE_L, + [GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_EDGE_B] = GLOW_TILE_EDGE_B, + [GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_EDGE_T] = GLOW_TILE_EDGE_T, + [GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_TL] = GLOW_TILE_CORNER_TL, + [GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_TL, + [GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L, + [GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL, + [GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BL] = GLOW_TILE_CORNER_BL, + [GLOW_CORNER_BL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL, + [GLOW_CORNER_BL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L, + [GLOW_CORNER_BL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B, + [GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BL | GLOW_CORNER_TL] = GLOW_TILE_CORNER_BL_TL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL_TL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_TR] = GLOW_TILE_CORNER_TR, + [GLOW_CORNER_TR | GLOW_EDGE_R] = GLOW_TILE_EDGE_R, + [GLOW_CORNER_TR | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_TR | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TR, + [GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_TR | GLOW_EDGE_T] = GLOW_TILE_EDGE_T, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL] = GLOW_TILE_CORNER_TR_TL, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_TL, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL_TR, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL] = GLOW_TILE_CORNER_TR_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL] = GLOW_TILE_CORNER_TR_BL_TL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL_TL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR] = GLOW_TILE_CORNER_BR, + [GLOW_CORNER_BR | GLOW_EDGE_R] = GLOW_TILE_EDGE_R, + [GLOW_CORNER_BR | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_EDGE_B] = GLOW_TILE_EDGE_B, + [GLOW_CORNER_BR | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_BR | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BR | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BR, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL] = GLOW_TILE_CORNER_BR_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL] = GLOW_TILE_CORNER_BR_BL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL] = GLOW_TILE_CORNER_BR_BL_TL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL_TL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR] = GLOW_TILE_CORNER_BR_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_R] = GLOW_TILE_EDGE_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL] = GLOW_TILE_CORNER_BR_TR_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL] = GLOW_TILE_CORNER_BR_TR_BL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL] = GLOW_TILE_CORNER_BR_TR_BL_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_R] = GLOW_TILE_EDGE_R_CORNER_BL_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L] = GLOW_TILE_EDGE_L_CORNER_BR_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B] = GLOW_TILE_EDGE_B_CORNER_TL_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_R_CORNER_TL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_B_L_CORNER_TR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_B_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T] = GLOW_TILE_EDGE_T_CORNER_BL_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_R_CORNER_BL, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_L_CORNER_BR, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_L_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B] = GLOW_TILE_EDGE_T_B, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_R, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L] = GLOW_TILE_EDGE_T_B_L, + [GLOW_CORNER_BR | GLOW_CORNER_TR | GLOW_CORNER_BL | GLOW_CORNER_TL | GLOW_EDGE_T | GLOW_EDGE_B | GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_T_B_L_R, +}; diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c index 2ec2c5c8d741..4926c019dd8d 100644 --- a/src/pokedex_area_region_map.c +++ b/src/pokedex_area_region_map.c @@ -8,11 +8,11 @@ static EWRAM_DATA u8 *sPokedexAreaMapBgNum = NULL; -static const u16 sPokedexAreaMap_Pal[] = INCBIN_U16("graphics/interface/region_map.gbapal"); -static const u32 sPokedexAreaMap_Gfx[] = INCBIN_U32("graphics/interface/region_map.8bpp.lz"); -static const u32 sPokedexAreaMap_Tilemap[] = INCBIN_U32("graphics/interface/region_map.bin.lz"); -static const u32 sPokedexAreaMapAffine_Gfx[] = INCBIN_U32("graphics/interface/region_map_affine.8bpp.lz"); -static const u32 sPokedexAreaMapAffine_Tilemap[] = INCBIN_U32("graphics/interface/region_map_affine.bin.lz"); +static const u16 sPokedexAreaMap_Pal[] = INCBIN_U16("graphics/pokedex/region_map.gbapal"); +static const u32 sPokedexAreaMap_Gfx[] = INCBIN_U32("graphics/pokedex/region_map.8bpp.lz"); +static const u32 sPokedexAreaMap_Tilemap[] = INCBIN_U32("graphics/pokedex/region_map.bin.lz"); +static const u32 sPokedexAreaMapAffine_Gfx[] = INCBIN_U32("graphics/pokedex/region_map_affine.8bpp.lz"); +static const u32 sPokedexAreaMapAffine_Tilemap[] = INCBIN_U32("graphics/pokedex/region_map_affine.bin.lz"); void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) { @@ -41,7 +41,7 @@ void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template) ChangeBgX(template->bg, 0, BG_COORD_SET); ChangeBgY(template->bg, 0, BG_COORD_SET); SetBgAttribute(template->bg, BG_ATTR_PALETTEMODE, 1); - CpuCopy32(sPokedexAreaMap_Pal, &gPlttBufferUnfaded[0x70], 0x60); + CpuCopy32(sPokedexAreaMap_Pal, &gPlttBufferUnfaded[0x70], sizeof(sPokedexAreaMap_Pal)); *sPokedexAreaMapBgNum = template->bg; } diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index 141041f4f18d..dde86f1557d5 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -20,65 +20,84 @@ #include "constants/rgb.h" #include "constants/songs.h" +// There are two types of indicators for the area screen to show where a PokĂ©mon can occur: +// - Area glows, which highlight any of the maps in MAP_GROUP_TOWNS_AND_ROUTES that have the species. +// These are a tilemap with colored rectangular areas that blends in and out. The positions of the +// rectangles is determined by the positions of the matching MAPSEC values on the region map layout. +// - Area markers, which highlight any of the maps in MAP_GROUP_DUNGEONS or MAP_GROUP_SPECIAL_AREA that +// have the species. These are circular sprites that flash twice. The positions of the sprites is +// 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 AREA_SCREEN_WIDTH 32 #define AREA_SCREEN_HEIGHT 20 -#define GLOW_TILE_FULL 0xFFFF -#define GLOW_TILE_LEFT (1 << 0) -#define GLOW_TILE_RIGHT (1 << 1) -#define GLOW_TILE_TOP (1 << 2) -#define GLOW_TILE_BOTTOM (1 << 3) -#define GLOW_TILE_BOTTOM_RIGHT (1 << 4) -#define GLOW_TILE_TOP_RIGHT (1 << 5) -#define GLOW_TILE_BOTTOM_LEFT (1 << 6) -#define GLOW_TILE_TOP_LEFT (1 << 7) +#define GLOW_FULL 0xFFFF +#define GLOW_EDGE_R (1 << 0) +#define GLOW_EDGE_L (1 << 1) +#define GLOW_EDGE_B (1 << 2) +#define GLOW_EDGE_T (1 << 3) +#define GLOW_CORNER_TL (1 << 4) +#define GLOW_CORNER_BL (1 << 5) +#define GLOW_CORNER_TR (1 << 6) +#define GLOW_CORNER_BR (1 << 7) + +#define GLOW_PALETTE 10 + +#define TAG_AREA_MARKER 2 +#define TAG_AREA_UNKNOWN 3 -struct PokeDexAreaScreenMapIdentity +#define MAX_AREA_HIGHLIGHTS 64 // Maximum number of rectangular route highlights +#define MAX_AREA_MARKERS 32 // Maximum number of circular spot highlights + +struct OverworldArea { u8 mapGroup; u8 mapNum; u16 regionMapSectionId; }; -struct PokeDexAreaScreen +struct { /*0x000*/ void (*callback)(void); // unused /*0x004*/ MainCallback prev; // unused /*0x008*/ MainCallback next; // unused /*0x00C*/ u16 state; // unused /*0x00E*/ u16 species; - /*0x010*/ struct PokeDexAreaScreenMapIdentity overworldAreasWithMons[0x40]; + /*0x010*/ struct OverworldArea overworldAreasWithMons[MAX_AREA_HIGHLIGHTS]; /*0x110*/ u16 numOverworldAreas; /*0x112*/ u16 numSpecialAreas; /*0x114*/ u16 drawAreaGlowState; - /*0x116*/ u16 areaGlowTilemap[0x280]; - /*0x616*/ u16 areaShadeOrMarkerFrameCounter; - /*0x618*/ u16 areaShadeFrameCounter; + /*0x116*/ u16 areaGlowTilemap[AREA_SCREEN_WIDTH * AREA_SCREEN_HEIGHT]; + /*0x616*/ u16 markerTimer; + /*0x618*/ u16 glowTimer; /*0x61A*/ u16 areaShadeBldArgLo; /*0x61C*/ u16 areaShadeBldArgHi; - /*0x61E*/ u8 whichMarkersFlashing; - /*0x61F*/ u8 specialMarkerCycleCounter; - /*0x620*/ u16 specialAreaRegionMapSectionIds[0x20]; - /*0x660*/ struct Sprite *areaMarkerSprites[0x20]; + /*0x61E*/ bool8 showingMarkers; + /*0x61F*/ u8 markerFlashCounter; + /*0x620*/ u16 specialAreaRegionMapSectionIds[MAX_AREA_MARKERS]; + /*0x660*/ struct Sprite *areaMarkerSprites[MAX_AREA_MARKERS]; /*0x6E0*/ u16 numAreaMarkerSprites; - /*0x6E2*/ u16 unk6E2; - /*0x6E4*/ u16 unk6E4; + /*0x6E2*/ u16 alteringCaveCounter; + /*0x6E4*/ u16 alteringCaveId; /*0x6E8*/ u8 *screenSwitchState; /*0x6EC*/ struct RegionMap regionMap; - /*0xF70*/ u8 charBuffer[0x40]; + /*0xF70*/ u8 charBuffer[64]; /*0xFB0*/ struct Sprite * areaUnknownSprites[3]; /*0xFBC*/ u8 areaUnknownGraphicsBuffer[0x600]; -}; - -static EWRAM_DATA struct PokeDexAreaScreen *sPokedexAreaScreen = NULL; +} static EWRAM_DATA *sPokedexAreaScreen = NULL; static void FindMapsWithMon(u16); static void BuildAreaGlowTilemap(void); static void SetAreaHasMon(u16, u16); static void SetSpecialMapHasMon(u16, u16); static u16 GetRegionMapSectionId(u8, u8); -static bool8 MapHasMon(const struct WildPokemonHeader *, u16); -static bool8 MonListHasMon(const struct WildPokemonInfo *, u16, u16); +static bool8 MapHasSpecies(const struct WildPokemonHeader *, u16); +static bool8 MonListHasSpecies(const struct WildPokemonInfo *, u16, u16); static void DoAreaGlow(void); static void Task_ShowPokedexAreaScreen(u8); static void CreateAreaMarkerSprites(void); @@ -86,7 +105,7 @@ static void LoadAreaUnknownGraphics(void); static void CreateAreaUnknownSprites(void); static void Task_HandlePokedexAreaScreenInput(u8); static void ResetPokedexAreaMapBg(void); -static void DestroyAreaMarkerSprites(void); +static void DestroyAreaScreenSprites(void); static const u32 sAreaGlow_Pal[] = INCBIN_U32("graphics/pokedex/area_glow.gbapal"); static const u32 sAreaGlow_Gfx[] = INCBIN_U32("graphics/pokedex/area_glow.4bpp.lz"); @@ -117,115 +136,7 @@ static const u16 sLandmarkData[][2] = {MAPSEC_NONE} }; -// Only some parts of this array are acutally used, because corner flags that overlap -// with edge flags are cancelled out before lookup. For example, GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_RIGHT -// will never be read. -// -// The rest of the bytes seem to be old data from before the cancellation was implemented. -// Most of them line up as you would expect ([BOTTOM_RIGHT | RIGHT] has the same value as [RIGHT]). -// -// Any unreachable entries are simply listed in order, without the fancy "[FLAGS] = 0xXX" notation. -static const u8 sAreaGlowTilemapMapping[] = { - [0] = 0x00, - [GLOW_TILE_LEFT] = 0x01, - [GLOW_TILE_RIGHT] = 0x02, - [GLOW_TILE_RIGHT | GLOW_TILE_LEFT] = 0x03, - [GLOW_TILE_TOP] = 0x04, - [GLOW_TILE_TOP | GLOW_TILE_LEFT] = 0x05, - [GLOW_TILE_TOP | GLOW_TILE_RIGHT] = 0x06, - [GLOW_TILE_TOP | GLOW_TILE_RIGHT | GLOW_TILE_LEFT] = 0x07, - [GLOW_TILE_BOTTOM] = 0x08, - [GLOW_TILE_BOTTOM | GLOW_TILE_LEFT] = 0x09, - [GLOW_TILE_BOTTOM | GLOW_TILE_RIGHT] = 0x0a, - [GLOW_TILE_BOTTOM | GLOW_TILE_RIGHT | GLOW_TILE_LEFT] = 0x0b, - [GLOW_TILE_BOTTOM | GLOW_TILE_TOP] = 0x0c, - [GLOW_TILE_BOTTOM | GLOW_TILE_TOP | GLOW_TILE_LEFT] = 0x0d, - [GLOW_TILE_BOTTOM | GLOW_TILE_TOP | GLOW_TILE_RIGHT] = 0x0e, - [GLOW_TILE_BOTTOM | GLOW_TILE_TOP | GLOW_TILE_RIGHT | GLOW_TILE_LEFT] = 0x0f, - [GLOW_TILE_BOTTOM_RIGHT] = 0x11, - [GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_LEFT] = 0x20, - 0x02, 0x03, - [GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_TOP] = 0x27, - [GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_TOP | GLOW_TILE_LEFT] = 0x2d, - 0x06, 0x07, 0x08, 0x09, 0x0a, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_RIGHT] = 0x12, - [GLOW_TILE_TOP_RIGHT | GLOW_TILE_LEFT] = 0x21, - 0x02, 0x03, 0x04, 0x05, 0x06, - 0x07, - [GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM] = 0x2a, - [GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM | GLOW_TILE_LEFT] = 0x2e, - 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, - 0x0f, - [GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM_RIGHT] = 0x13, - [GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_LEFT] = 0x22, - 0x02, 0x03, 0x27, 0x2d, 0x06, - 0x07, 0x2a, 0x2e, 0x0a, 0x0b, - 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_BOTTOM_LEFT] = 0x14, - 0x01, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_RIGHT] = 0x23, - 0x03, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP] = 0x26, - 0x05, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP | GLOW_TILE_RIGHT] = 0x2c, - 0x07, 0x08, 0x09, 0x0a, 0x0b, - 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_BOTTOM_RIGHT] = 0x15, - 0x20, 0x23, 0x03, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_TOP] = 0x28, - 0x2d, 0x2c, 0x07, 0x08, 0x09, - 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, - 0x0f, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP_RIGHT] = 0x16, - 0x21, 0x23, 0x03, 0x26, 0x05, - 0x2c, 0x07, 0x2a, 0x2e, 0x0a, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM_RIGHT] = 0x17, - 0x22, 0x23, 0x03, 0x28, 0x2d, - 0x2c, 0x07, 0x2a, 0x2e, 0x0a, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT] = 0x18, - 0x01, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_RIGHT] = 0x24, - 0x03, 0x04, 0x05, 0x06, 0x07, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM] = 0x29, - 0x09, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM | GLOW_TILE_RIGHT] = 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_RIGHT] = 0x19, - 0x20, 0x24, 0x03, 0x27, 0x2d, - 0x06, 0x07, 0x29, 0x09, 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_TOP_RIGHT] = 0x1a, - 0x21, 0x24, 0x03, 0x04, 0x05, - 0x06, 0x07, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM] = 0x2b, - 0x2e, 0x2f, 0x0b, 0x0c, 0x0d, - 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM_RIGHT] = 0x1b, - 0x22, 0x24, 0x03, 0x27, 0x2d, - 0x06, 0x07, 0x2b, 0x2e, 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_LEFT] = 0x1c, - 0x01, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_RIGHT] = 0x25, - 0x03, 0x26, 0x05, 0x2c, 0x07, - 0x29, 0x09, 0x2f, 0x0b, 0x0c, - 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_BOTTOM_RIGHT] = 0x1d, - 0x20, 0x25, 0x03, 0x28, 0x2d, - 0x2c, 0x07, 0x29, 0x09, 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP_RIGHT] = 0x1e, - 0x21, 0x25, 0x03, 0x26, 0x05, - 0x2c, 0x07, 0x2b, 0x2e, 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, - [GLOW_TILE_TOP_LEFT | GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP_RIGHT | GLOW_TILE_BOTTOM_RIGHT] = 0x1f, - 0x22, 0x25, 0x03, 0x28, 0x2d, - 0x2c, 0x07, 0x2b, 0x2e, 0x2f, - 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, -}; +#include "data/pokedex_area_glow.h" static const struct PokedexAreaMapTemplate sPokedexAreaMapTemplate = { @@ -238,13 +149,13 @@ static const struct PokedexAreaMapTemplate sPokedexAreaMapTemplate = static const u8 sAreaMarkerTiles[]; static const struct SpriteSheet sAreaMarkerSpriteSheet = { - sAreaMarkerTiles, 0x80, 2 + .data = sAreaMarkerTiles, .size = 0x80, .tag = TAG_AREA_MARKER }; static const u16 sAreaMarkerPalette[]; static const struct SpritePalette sAreaMarkerSpritePalette = { - sAreaMarkerPalette, 2 + .data = sAreaMarkerPalette, .tag = TAG_AREA_MARKER }; static const struct OamData sAreaMarkerOamData = @@ -256,13 +167,13 @@ static const struct OamData sAreaMarkerOamData = static const struct SpriteTemplate sAreaMarkerSpriteTemplate = { - 2, - 2, - &sAreaMarkerOamData, - gDummySpriteAnimTable, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy + .tileTag = TAG_AREA_MARKER, + .paletteTag = TAG_AREA_MARKER, + .oam = &sAreaMarkerOamData, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; static const u16 sAreaMarkerPalette[] = INCBIN_U16("graphics/pokedex/area_marker.gbapal"); @@ -270,7 +181,7 @@ static const u8 sAreaMarkerTiles[] = INCBIN_U8("graphics/pokedex/area_marker.4bp static const struct SpritePalette sAreaUnknownSpritePalette = { - gPokedexAreaScreenAreaUnknown_Pal, 3 + .data = gPokedexAreaScreenAreaUnknown_Pal, .tag = TAG_AREA_UNKNOWN }; static const struct OamData sAreaUnknownOamData = @@ -282,13 +193,13 @@ static const struct OamData sAreaUnknownOamData = static const struct SpriteTemplate sAreaUnknownSpriteTemplate = { - 3, - 3, - &sAreaUnknownOamData, - gDummySpriteAnimTable, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy + .tileTag = TAG_AREA_UNKNOWN, + .paletteTag = TAG_AREA_UNKNOWN, + .oam = &sAreaUnknownOamData, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; static void ResetDrawAreaGlowState(void) @@ -308,17 +219,17 @@ static bool8 DrawAreaGlow(void) break; case 2: DecompressAndCopyTileDataToVram(2, sAreaGlow_Gfx, 0, 0, 0); - LoadBgTilemap(2, sPokedexAreaScreen->areaGlowTilemap, 0x500, 0); + LoadBgTilemap(2, sPokedexAreaScreen->areaGlowTilemap, sizeof(sPokedexAreaScreen->areaGlowTilemap), 0); break; case 3: if (!FreeTempTileDataBuffersIfPossible()) { - CpuCopy32(sAreaGlow_Pal, gPlttBufferUnfaded + 0xA0, 0x20); + CpuCopy32(sAreaGlow_Pal, &gPlttBufferUnfaded[GLOW_PALETTE * 16], sizeof(sAreaGlow_Pal)); sPokedexAreaScreen->drawAreaGlowState++; } return TRUE; case 4: - ChangeBgY(2, -0x800, BG_COORD_SET); + ChangeBgY(2, -BG_SCREEN_SIZE, BG_COORD_SET); break; default: return FALSE; @@ -333,58 +244,67 @@ static void FindMapsWithMon(u16 species) u16 i; struct Roamer *roamer; - sPokedexAreaScreen->unk6E2 = 0; - sPokedexAreaScreen->unk6E4 = VarGet(VAR_ALTERING_CAVE_WILD_SET); - if (sPokedexAreaScreen->unk6E4 > 8) - sPokedexAreaScreen->unk6E4 = 0; + sPokedexAreaScreen->alteringCaveCounter = 0; + sPokedexAreaScreen->alteringCaveId = VarGet(VAR_ALTERING_CAVE_WILD_SET); + if (sPokedexAreaScreen->alteringCaveId >= NUM_ALTERING_CAVE_TABLES) + sPokedexAreaScreen->alteringCaveId = 0; roamer = &gSaveBlock1Ptr->roamer; if (species != roamer->species) { sPokedexAreaScreen->numOverworldAreas = 0; sPokedexAreaScreen->numSpecialAreas = 0; + + // Check if this species should be hidden from the area map. + // This only applies to Wynaut, to hide the encounters on Mirage Island. for (i = 0; i < ARRAY_COUNT(sSpeciesHiddenFromAreaScreen); i++) { if (sSpeciesHiddenFromAreaScreen[i] == species) return; } + // Add PokĂ©mon with special encounter circumstances (i.e. not listed + // in the regular wild encounter table) to the area map. + // This only applies to Feebas on Route 119, but it was clearly set + // up to allow handling others. for (i = 0; sFeebasData[i][0] != NUM_SPECIES; i++) { if (species == sFeebasData[i][0]) { switch (sFeebasData[i][1]) { - case MAP_GROUP_OVERWORLD_MONS: - SetAreaHasMon(sFeebasData[i][1], sFeebasData[i][2]); - break; - case MAP_GROUP_SPECIAL_MONS_1: - case MAP_GROUP_SPECIAL_MONS_2: - SetSpecialMapHasMon(sFeebasData[i][1], sFeebasData[i][2]); - break; + case MAP_GROUP_TOWNS_AND_ROUTES: + SetAreaHasMon(sFeebasData[i][1], sFeebasData[i][2]); + break; + case MAP_GROUP_DUNGEONS: + case MAP_GROUP_SPECIAL_AREA: + SetSpecialMapHasMon(sFeebasData[i][1], sFeebasData[i][2]); + break; } } } + // Add regular species to the area map for (i = 0; gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED); i++) { - if (MapHasMon(&gWildMonHeaders[i], species)) + if (MapHasSpecies(&gWildMonHeaders[i], species)) { switch (gWildMonHeaders[i].mapGroup) { - case MAP_GROUP_OVERWORLD_MONS: - SetAreaHasMon(gWildMonHeaders[i].mapGroup, gWildMonHeaders[i].mapNum); - break; - case MAP_GROUP_SPECIAL_MONS_1: - case MAP_GROUP_SPECIAL_MONS_2: - SetSpecialMapHasMon(gWildMonHeaders[i].mapGroup, gWildMonHeaders[i].mapNum); - break; + case MAP_GROUP_TOWNS_AND_ROUTES: + SetAreaHasMon(gWildMonHeaders[i].mapGroup, gWildMonHeaders[i].mapNum); + break; + case MAP_GROUP_DUNGEONS: + case MAP_GROUP_SPECIAL_AREA: + SetSpecialMapHasMon(gWildMonHeaders[i].mapGroup, gWildMonHeaders[i].mapNum); + break; } } } } else { + // This is the roamer's species, show where the roamer is currently sPokedexAreaScreen->numSpecialAreas = 0; if (roamer->active) { @@ -401,7 +321,7 @@ static void FindMapsWithMon(u16 species) static void SetAreaHasMon(u16 mapGroup, u16 mapNum) { - if (sPokedexAreaScreen->numOverworldAreas < 0x40) + if (sPokedexAreaScreen->numOverworldAreas < MAX_AREA_HIGHLIGHTS) { sPokedexAreaScreen->overworldAreasWithMons[sPokedexAreaScreen->numOverworldAreas].mapGroup = mapGroup; sPokedexAreaScreen->overworldAreasWithMons[sPokedexAreaScreen->numOverworldAreas].mapNum = mapNum; @@ -414,23 +334,26 @@ static void SetSpecialMapHasMon(u16 mapGroup, u16 mapNum) { int i; - if (sPokedexAreaScreen->numSpecialAreas < 0x20) + if (sPokedexAreaScreen->numSpecialAreas < MAX_AREA_MARKERS) { u16 regionMapSectionId = GetRegionMapSectionId(mapGroup, mapNum); if (regionMapSectionId < MAPSEC_NONE) { + // Don't highlight the area if it's a moving area (Marine/Terra Cave) for (i = 0; i < ARRAY_COUNT(sMovingRegionMapSections); i++) { if (regionMapSectionId == sMovingRegionMapSections[i]) return; } + // Don't highlight the area if it's an undiscovered landmark (e.g. Sky Pillar) for (i = 0; sLandmarkData[i][0] != MAPSEC_NONE; i++) { if (regionMapSectionId == sLandmarkData[i][0] && !FlagGet(sLandmarkData[i][1])) return; } + // Check if this special area is already being tracked for (i = 0; i < sPokedexAreaScreen->numSpecialAreas; i++) { if (sPokedexAreaScreen->specialAreaRegionMapSectionIds[i] == regionMapSectionId) @@ -439,6 +362,7 @@ static void SetSpecialMapHasMon(u16 mapGroup, u16 mapNum) if (i == sPokedexAreaScreen->numSpecialAreas) { + // New special area sPokedexAreaScreen->specialAreaRegionMapSectionIds[i] = regionMapSectionId; sPokedexAreaScreen->numSpecialAreas++; } @@ -451,27 +375,34 @@ static u16 GetRegionMapSectionId(u8 mapGroup, u8 mapNum) return Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum)->regionMapSectionId; } -static bool8 MapHasMon(const struct WildPokemonHeader *info, u16 species) +static bool8 MapHasSpecies(const struct WildPokemonHeader *info, u16 species) { + // If this is a header for Altering Cave, skip it if it's not the current Altering Cave encounter set if (GetRegionMapSectionId(info->mapGroup, info->mapNum) == MAPSEC_ALTERING_CAVE) { - sPokedexAreaScreen->unk6E2++; - if (sPokedexAreaScreen->unk6E2 != sPokedexAreaScreen->unk6E4 + 1) + sPokedexAreaScreen->alteringCaveCounter++; + if (sPokedexAreaScreen->alteringCaveCounter != sPokedexAreaScreen->alteringCaveId + 1) return FALSE; } - if (MonListHasMon(info->landMonsInfo, species, 12)) + if (MonListHasSpecies(info->landMonsInfo, species, LAND_WILD_COUNT)) return TRUE; - if (MonListHasMon(info->waterMonsInfo, species, 5)) + if (MonListHasSpecies(info->waterMonsInfo, species, WATER_WILD_COUNT)) return TRUE; - if (MonListHasMon(info->fishingMonsInfo, species, 12)) +// When searching the fishing encounters, this incorrectly uses the size of the land encounters. +// As a result it's reading out of bounds of the fishing encounters tables. +#ifdef BUGFIX + if (MonListHasSpecies(info->fishingMonsInfo, species, FISH_WILD_COUNT)) +#else + if (MonListHasSpecies(info->fishingMonsInfo, species, LAND_WILD_COUNT)) +#endif return TRUE; - if (MonListHasMon(info->rockSmashMonsInfo, species, 5)) + if (MonListHasSpecies(info->rockSmashMonsInfo, species, ROCK_WILD_COUNT)) return TRUE; return FALSE; } -static bool8 MonListHasMon(const struct WildPokemonInfo *info, u16 species, u16 size) +static bool8 MonListHasSpecies(const struct WildPokemonInfo *info, u16 species, u16 size) { u16 i; if (info != NULL) @@ -489,9 +420,12 @@ static void BuildAreaGlowTilemap(void) { u16 i, y, x, j; + // Reset tilemap for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaGlowTilemap); i++) sPokedexAreaScreen->areaGlowTilemap[i] = 0; + // For each area with this species, scan the region map layout and find any locations that have a matching mapsec. + // Add a "full glow" indicator for these matching spaces. for (i = 0; i < sPokedexAreaScreen->numOverworldAreas; i++) { j = 0; @@ -500,69 +434,73 @@ static void BuildAreaGlowTilemap(void) for (x = 0; x < AREA_SCREEN_WIDTH; x++) { if (GetRegionMapSecIdAt(x, y) == sPokedexAreaScreen->overworldAreasWithMons[i].regionMapSectionId) - sPokedexAreaScreen->areaGlowTilemap[j] = GLOW_TILE_FULL; - + sPokedexAreaScreen->areaGlowTilemap[j] = GLOW_FULL; j++; } } } + // Scan the tilemap. For every "full glow" indicator added above, fill in its edges and corners. j = 0; for (y = 0; y < AREA_SCREEN_HEIGHT; y++) { for (x = 0; x < AREA_SCREEN_WIDTH; x++) { - if (sPokedexAreaScreen->areaGlowTilemap[j] == GLOW_TILE_FULL) + if (sPokedexAreaScreen->areaGlowTilemap[j] == GLOW_FULL) { - // The "tile != GLOW_TILE_FULL" check is pointless in all of these conditionals, + // The "tile != GLOW_FULL" check is pointless in all of these conditionals, // since there's no harm in OR'ing 0xFFFF with anything else. // Edges - if (x != 0 && sPokedexAreaScreen->areaGlowTilemap[j - 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j - 1] |= GLOW_TILE_RIGHT; - if (x != AREA_SCREEN_WIDTH - 1 && sPokedexAreaScreen->areaGlowTilemap[j + 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j + 1] |= GLOW_TILE_LEFT; - if (y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH] |= GLOW_TILE_BOTTOM; - if (y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] |= GLOW_TILE_TOP; - - // Diagonals - if (x != 0 && y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] |= GLOW_TILE_BOTTOM_RIGHT; - if (x != AREA_SCREEN_WIDTH - 1 && y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH + 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH + 1] |= GLOW_TILE_BOTTOM_LEFT; - if (x != 0 && y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH - 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH - 1] |= GLOW_TILE_TOP_RIGHT; - if (x != AREA_SCREEN_WIDTH - 1 && y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH + 1] != GLOW_TILE_FULL) - sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH + 1] |= GLOW_TILE_TOP_LEFT; + if (x != 0 && sPokedexAreaScreen->areaGlowTilemap[j - 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j - 1] |= GLOW_EDGE_L; + if (x != AREA_SCREEN_WIDTH - 1 && sPokedexAreaScreen->areaGlowTilemap[j + 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j + 1] |= GLOW_EDGE_R; + if (y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH] |= GLOW_EDGE_T; + if (y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH] |= GLOW_EDGE_B; + + // Corners + if (x != 0 && y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH - 1] |= GLOW_CORNER_TL; + if (x != AREA_SCREEN_WIDTH - 1 && y != 0 && sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH + 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j - AREA_SCREEN_WIDTH + 1] |= GLOW_CORNER_TR; + if (x != 0 && y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH - 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH - 1] |= GLOW_CORNER_BL; + if (x != AREA_SCREEN_WIDTH - 1 && y != AREA_SCREEN_HEIGHT - 1 && sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH + 1] != GLOW_FULL) + sPokedexAreaScreen->areaGlowTilemap[j + AREA_SCREEN_WIDTH + 1] |= GLOW_CORNER_BR; } j++; } } + // Scan the tilemap again. Replace the "full tile" indicators with the actual tile id, + // and remove corner flags when they're overlapped by an edge. for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaGlowTilemap); i++) { - if (sPokedexAreaScreen->areaGlowTilemap[i] == GLOW_TILE_FULL) + if (sPokedexAreaScreen->areaGlowTilemap[i] == GLOW_FULL) { - sPokedexAreaScreen->areaGlowTilemap[i] = 0x10; - sPokedexAreaScreen->areaGlowTilemap[i] |= 0xA000; + sPokedexAreaScreen->areaGlowTilemap[i] = GLOW_TILE_FULL; + sPokedexAreaScreen->areaGlowTilemap[i] |= (GLOW_PALETTE << 12); } else if (sPokedexAreaScreen->areaGlowTilemap[i]) { - // Get rid of overlapping flags - if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_TILE_RIGHT) - sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_TILE_BOTTOM_RIGHT | GLOW_TILE_TOP_RIGHT); - if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_TILE_LEFT) - sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_TOP_LEFT); - if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_TILE_BOTTOM) - sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_TILE_BOTTOM_LEFT | GLOW_TILE_BOTTOM_RIGHT); - if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_TILE_TOP) - sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_TILE_TOP_LEFT | GLOW_TILE_TOP_RIGHT); - + // Get rid of overlapping flags. + // This is pointless, as sAreaGlowTilemapMapping can handle overlaps. + if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_EDGE_L) + sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_CORNER_TL | GLOW_CORNER_BL); + if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_EDGE_R) + sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_CORNER_TR | GLOW_CORNER_BR); + if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_EDGE_T) + sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_CORNER_TR | GLOW_CORNER_TL); + if (sPokedexAreaScreen->areaGlowTilemap[i] & GLOW_EDGE_B) + sPokedexAreaScreen->areaGlowTilemap[i] &= ~(GLOW_CORNER_BR | GLOW_CORNER_BL); + + // Assign tile id sPokedexAreaScreen->areaGlowTilemap[i] = sAreaGlowTilemapMapping[sPokedexAreaScreen->areaGlowTilemap[i]]; - sPokedexAreaScreen->areaGlowTilemap[i] |= 0xA000; + sPokedexAreaScreen->areaGlowTilemap[i] |= (GLOW_PALETTE << 12); } } } @@ -570,15 +508,15 @@ static void BuildAreaGlowTilemap(void) static void StartAreaGlow(void) { if (sPokedexAreaScreen->numSpecialAreas && sPokedexAreaScreen->numOverworldAreas == 0) - sPokedexAreaScreen->whichMarkersFlashing = 1; + sPokedexAreaScreen->showingMarkers = TRUE; else - sPokedexAreaScreen->whichMarkersFlashing = 0; + sPokedexAreaScreen->showingMarkers = FALSE; - sPokedexAreaScreen->areaShadeOrMarkerFrameCounter = 0; - sPokedexAreaScreen->areaShadeFrameCounter = 0; + sPokedexAreaScreen->markerTimer = 0; + sPokedexAreaScreen->glowTimer = 0; sPokedexAreaScreen->areaShadeBldArgLo = 0; - sPokedexAreaScreen->areaShadeBldArgHi = 0x40; - sPokedexAreaScreen->specialMarkerCycleCounter = 1; + sPokedexAreaScreen->areaShadeBldArgHi = 64; + sPokedexAreaScreen->markerFlashCounter = 1; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16)); DoAreaGlow(); @@ -589,12 +527,13 @@ static void DoAreaGlow(void) u16 x, y; u16 i; - if (sPokedexAreaScreen->whichMarkersFlashing == 0) + if (!sPokedexAreaScreen->showingMarkers) { - if (sPokedexAreaScreen->areaShadeOrMarkerFrameCounter == 0) + // Showing area glow + if (sPokedexAreaScreen->markerTimer == 0) { - sPokedexAreaScreen->areaShadeFrameCounter++; - if (sPokedexAreaScreen->areaShadeFrameCounter & 1) + sPokedexAreaScreen->glowTimer++; + if (sPokedexAreaScreen->glowTimer & 1) sPokedexAreaScreen->areaShadeBldArgLo = (sPokedexAreaScreen->areaShadeBldArgLo + 4) & 0x7f; else sPokedexAreaScreen->areaShadeBldArgHi = (sPokedexAreaScreen->areaShadeBldArgHi + 4) & 0x7f; @@ -602,32 +541,38 @@ static void DoAreaGlow(void) x = gSineTable[sPokedexAreaScreen->areaShadeBldArgLo] >> 4; y = gSineTable[sPokedexAreaScreen->areaShadeBldArgHi] >> 4; SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(x, y)); - sPokedexAreaScreen->areaShadeOrMarkerFrameCounter = 0; - if (sPokedexAreaScreen->areaShadeFrameCounter == 0x40) + sPokedexAreaScreen->markerTimer = 0; + if (sPokedexAreaScreen->glowTimer == 64) { - sPokedexAreaScreen->areaShadeFrameCounter = 0; + // Done glowing, reset and try to switch to the special area markers + sPokedexAreaScreen->glowTimer = 0; if (sPokedexAreaScreen->numSpecialAreas != 0) - sPokedexAreaScreen->whichMarkersFlashing = 1; + sPokedexAreaScreen->showingMarkers = TRUE; } } else - sPokedexAreaScreen->areaShadeOrMarkerFrameCounter--; + sPokedexAreaScreen->markerTimer--; } else { - sPokedexAreaScreen->areaShadeOrMarkerFrameCounter++; - if (sPokedexAreaScreen->areaShadeOrMarkerFrameCounter > 12) + // Showing special area markers + sPokedexAreaScreen->markerTimer++; + if (sPokedexAreaScreen->markerTimer > 12) { - sPokedexAreaScreen->areaShadeOrMarkerFrameCounter = 0; - sPokedexAreaScreen->specialMarkerCycleCounter++; + sPokedexAreaScreen->markerTimer = 0; + + // Flash the marker + // With a max of 4, the marker will disappear twice + sPokedexAreaScreen->markerFlashCounter++; for (i = 0; i < sPokedexAreaScreen->numSpecialAreas; i++) - sPokedexAreaScreen->areaMarkerSprites[i]->invisible = sPokedexAreaScreen->specialMarkerCycleCounter & 1; + sPokedexAreaScreen->areaMarkerSprites[i]->invisible = sPokedexAreaScreen->markerFlashCounter & 1; - if (sPokedexAreaScreen->specialMarkerCycleCounter > 4) + if (sPokedexAreaScreen->markerFlashCounter > 4) { - sPokedexAreaScreen->specialMarkerCycleCounter = 1; + // Done flashing, reset and try to switch to the area glow + sPokedexAreaScreen->markerFlashCounter = 1; if (sPokedexAreaScreen->numOverworldAreas != 0) - sPokedexAreaScreen->whichMarkersFlashing = 0; + sPokedexAreaScreen->showingMarkers = FALSE; } } } @@ -651,58 +596,58 @@ static void Task_ShowPokedexAreaScreen(u8 taskId) { switch (gTasks[taskId].tState) { - case 0: - ResetSpriteData(); - FreeAllSpritePalettes(); - HideBg(3); - HideBg(2); - HideBg(0); - break; - case 1: - SetBgAttribute(3, BG_ATTR_CHARBASEINDEX, 3); - LoadPokedexAreaMapGfx(&sPokedexAreaMapTemplate); - StringFill(sPokedexAreaScreen->charBuffer, CHAR_SPACE, 16); - break; - case 2: - if (TryShowPokedexAreaMap() == TRUE) - return; - PokedexAreaMapChangeBgY(-8); - break; - case 3: - ResetDrawAreaGlowState(); - break; - case 4: - if (DrawAreaGlow()) - return; - break; - case 5: - ShowRegionMapForPokedexAreaScreen(&sPokedexAreaScreen->regionMap); - CreateRegionMapPlayerIcon(1, 1); - PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(0, -8); - break; - case 6: - CreateAreaMarkerSprites(); - break; - case 7: - LoadAreaUnknownGraphics(); - break; - case 8: - CreateAreaUnknownSprites(); - break; - case 9: - BeginNormalPaletteFade(PALETTES_ALL & ~(0x14), 0, 16, 0, RGB(0, 0, 0)); - break; - case 10: - SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG0 | BLDCNT_TGT2_ALL); - StartAreaGlow(); - ShowBg(2); - ShowBg(3); // TryShowPokedexAreaMap will have done this already - SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON); - break; - case 11: - gTasks[taskId].func = Task_HandlePokedexAreaScreenInput; - gTasks[taskId].tState = 0; + case 0: + ResetSpriteData(); + FreeAllSpritePalettes(); + HideBg(3); + HideBg(2); + HideBg(0); + break; + case 1: + SetBgAttribute(3, BG_ATTR_CHARBASEINDEX, 3); + LoadPokedexAreaMapGfx(&sPokedexAreaMapTemplate); + StringFill(sPokedexAreaScreen->charBuffer, CHAR_SPACE, 16); + break; + case 2: + if (TryShowPokedexAreaMap() == TRUE) return; + PokedexAreaMapChangeBgY(-8); + break; + case 3: + ResetDrawAreaGlowState(); + break; + case 4: + if (DrawAreaGlow()) + return; + break; + case 5: + ShowRegionMapForPokedexAreaScreen(&sPokedexAreaScreen->regionMap); + CreateRegionMapPlayerIcon(1, 1); + PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(0, -8); + break; + case 6: + CreateAreaMarkerSprites(); + break; + case 7: + LoadAreaUnknownGraphics(); + break; + case 8: + CreateAreaUnknownSprites(); + break; + case 9: + BeginNormalPaletteFade(PALETTES_ALL & ~(0x14), 0, 16, 0, RGB_BLACK); + break; + case 10: + SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG0 | BLDCNT_TGT2_ALL); + StartAreaGlow(); + ShowBg(2); + ShowBg(3); // TryShowPokedexAreaMap will have done this already + SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON); + break; + case 11: + gTasks[taskId].func = Task_HandlePokedexAreaScreenInput; + gTasks[taskId].tState = 0; + return; } gTasks[taskId].tState++; @@ -740,7 +685,7 @@ static void Task_HandlePokedexAreaScreenInput(u8 taskId) case 3: if (gPaletteFade.active) return; - DestroyAreaMarkerSprites(); + DestroyAreaScreenSprites(); sPokedexAreaScreen->screenSwitchState[0] = gTasks[taskId].data[1]; ResetPokedexAreaMapBg(); DestroyTask(taskId); @@ -758,6 +703,7 @@ static void ResetPokedexAreaMapBg(void) SetBgAttribute(3, BG_ATTR_PALETTEMODE, 0); } +// Creates the circular sprites to highlight special areas (like caves) where a PokĂ©mon can be found static void CreateAreaMarkerSprites(void) { u8 spriteId; @@ -788,17 +734,20 @@ static void CreateAreaMarkerSprites(void) sPokedexAreaScreen->numAreaMarkerSprites = numSprites; } -static void DestroyAreaMarkerSprites(void) +static void DestroyAreaScreenSprites(void) { u16 i; - FreeSpriteTilesByTag(2); - FreeSpritePaletteByTag(2); + + // Destroy area marker sprites + FreeSpriteTilesByTag(TAG_AREA_MARKER); + FreeSpritePaletteByTag(TAG_AREA_MARKER); for (i = 0; i < sPokedexAreaScreen->numAreaMarkerSprites; i++) DestroySprite(sPokedexAreaScreen->areaMarkerSprites[i]); - FreeSpriteTilesByTag(3); - FreeSpritePaletteByTag(3); - for (i = 0; i < 3; i++) + // Destroy "Area Unknown" sprites + FreeSpriteTilesByTag(TAG_AREA_UNKNOWN); + FreeSpritePaletteByTag(TAG_AREA_UNKNOWN); + for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaUnknownSprites); i++) { if (sPokedexAreaScreen->areaUnknownSprites[i]) DestroySprite(sPokedexAreaScreen->areaUnknownSprites[i]); @@ -809,8 +758,8 @@ static void LoadAreaUnknownGraphics(void) { struct SpriteSheet spriteSheet = { .data = sPokedexAreaScreen->areaUnknownGraphicsBuffer, - .size = 0x600, - .tag = 3, + .size = sizeof(sPokedexAreaScreen->areaUnknownGraphicsBuffer), + .tag = TAG_AREA_UNKNOWN, }; LZ77UnCompWram(gPokedexAreaScreenAreaUnknown_Gfx, sPokedexAreaScreen->areaUnknownGraphicsBuffer); LoadSpriteSheet(&spriteSheet); @@ -820,25 +769,27 @@ static void LoadAreaUnknownGraphics(void) static void CreateAreaUnknownSprites(void) { u16 i; - u8 spriteId; if (sPokedexAreaScreen->numOverworldAreas || sPokedexAreaScreen->numSpecialAreas) { - for (i = 0; i < 3; i++) + // The current species is present on the map, don't create any "Area Unknown" sprites + for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaUnknownSprites); i++) sPokedexAreaScreen->areaUnknownSprites[i] = NULL; } else { - for (i = 0; i < 3; i++) + // The current species is absent on the map, try to create "Area Unknown" sprites + for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaUnknownSprites); i++) { - spriteId = CreateSprite(&sAreaUnknownSpriteTemplate, i * 32 + 0xa0, 0x8c, 0); + u8 spriteId = CreateSprite(&sAreaUnknownSpriteTemplate, i * 32 + 160, 140, 0); if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.tileNum += i * 16; - sPokedexAreaScreen->areaUnknownSprites[i] = gSprites + spriteId; + sPokedexAreaScreen->areaUnknownSprites[i] = &gSprites[spriteId]; } else { + // Failed to create sprite sPokedexAreaScreen->areaUnknownSprites[i] = NULL; } } diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 5960692a2061..4b3402e5acfd 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -45,6 +45,8 @@ enum { #define WILD_CHECK_REPEL (1 << 0) #define WILD_CHECK_KEEN_EYE (1 << 1) +#define HEADER_NONE 0xFFFF + static u16 FeebasRandom(void); static void FeebasSeedRng(u16 seed); static bool8 IsWildLevelAllowedByRepel(u8 level); @@ -172,6 +174,7 @@ static void FeebasSeedRng(u16 seed) sFeebasRngValue = seed; } +// LAND_WILD_COUNT static u8 ChooseWildMonIndex_Land(void) { u8 rand = Random() % ENCOUNTER_CHANCE_LAND_MONS_TOTAL; @@ -202,6 +205,7 @@ static u8 ChooseWildMonIndex_Land(void) return 11; } +// ROCK_WILD_COUNT / WATER_WILD_COUNT static u8 ChooseWildMonIndex_WaterRock(void) { u8 rand = Random() % ENCOUNTER_CHANCE_WATER_MONS_TOTAL; @@ -218,6 +222,7 @@ static u8 ChooseWildMonIndex_WaterRock(void) return 4; } +// FISH_WILD_COUNT static u8 ChooseWildMonIndex_Fishing(u8 rod) { u8 wildMonIndex = 0; @@ -310,7 +315,7 @@ static u16 GetCurrentMapWildMonHeaderId(void) gSaveBlock1Ptr->location.mapNum == MAP_NUM(ALTERING_CAVE)) { u16 alteringCaveId = VarGet(VAR_ALTERING_CAVE_WILD_SET); - if (alteringCaveId > 8) + if (alteringCaveId >= NUM_ALTERING_CAVE_TABLES) alteringCaveId = 0; i += alteringCaveId; @@ -320,7 +325,7 @@ static u16 GetCurrentMapWildMonHeaderId(void) } } - return -1; + return HEADER_NONE; } static u8 PickWildMonNature(void) @@ -541,7 +546,7 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi return FALSE; headerId = GetCurrentMapWildMonHeaderId(); - if (headerId == 0xFFFF) + if (headerId == HEADER_NONE) { if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS) { @@ -652,7 +657,7 @@ void RockSmashWildEncounter(void) { u16 headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF) + if (headerId != HEADER_NONE) { const struct WildPokemonInfo *wildPokemonInfo = gWildMonHeaders[headerId].rockSmashMonsInfo; @@ -684,7 +689,7 @@ bool8 SweetScentWildEncounter(void) PlayerGetDestCoords(&x, &y); headerId = GetCurrentMapWildMonHeaderId(); - if (headerId == 0xFFFF) + if (headerId == HEADER_NONE) { if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS) { @@ -754,7 +759,7 @@ bool8 DoesCurrentMapHaveFishingMons(void) { u16 headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF && gWildMonHeaders[headerId].fishingMonsInfo != NULL) + if (headerId != HEADER_NONE && gWildMonHeaders[headerId].fishingMonsInfo != NULL) return TRUE; else return FALSE; @@ -788,7 +793,7 @@ u16 GetLocalWildMon(bool8 *isWaterMon) *isWaterMon = FALSE; headerId = GetCurrentMapWildMonHeaderId(); - if (headerId == 0xFFFF) + if (headerId == HEADER_NONE) return SPECIES_NONE; landMonsInfo = gWildMonHeaders[headerId].landMonsInfo; waterMonsInfo = gWildMonHeaders[headerId].waterMonsInfo; @@ -820,7 +825,7 @@ u16 GetLocalWaterMon(void) { u16 headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF) + if (headerId != HEADER_NONE) { const struct WildPokemonInfo *waterMonsInfo = gWildMonHeaders[headerId].waterMonsInfo; From 4f6323606f083e978968735bec14fa59e9d70663 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 31 Dec 2021 16:24:44 +0000 Subject: [PATCH 477/762] Update field_specials.c to match the style --- src/field_specials.c | 1562 +++++++++++++++++++----------------------- 1 file changed, 696 insertions(+), 866 deletions(-) diff --git a/src/field_specials.c b/src/field_specials.c index 96eb949e5579..27d8c93af7a5 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -193,59 +193,40 @@ static void DetermineCyclingRoadResults(u32 numFrames, u8 numBikeCollisions) result = 0; if (numBikeCollisions == 0) - { result = 5; - } else if (numBikeCollisions < 4) - { result = 4; - } else if (numBikeCollisions < 10) - { result = 3; - } else if (numBikeCollisions < 20) - { result = 2; - } else if (numBikeCollisions < 100) - { result = 1; - } if (numFrames / 60 <= 10) - { result += 5; - } else if (numFrames / 60 <= 15) - { result += 4; - } else if (numFrames / 60 <= 20) - { result += 3; - } else if (numFrames / 60 <= 40) - { result += 2; - } else if (numFrames / 60 < 60) - { result += 1; - } - gSpecialVar_Result = result; } -void FinishCyclingRoadChallenge(void) { +void FinishCyclingRoadChallenge(void) +{ const u32 numFrames = gMain.vblankCounter1 - sBikeCyclingTimer; DetermineCyclingRoadResults(numFrames, gBikeCollisions); RecordCyclingRoadResults(numFrames, gBikeCollisions); } -static void RecordCyclingRoadResults(u32 numFrames, u8 numBikeCollisions) { +static void RecordCyclingRoadResults(u32 numFrames, u8 numBikeCollisions) +{ u16 low = VarGet(VAR_CYCLING_ROAD_RECORD_TIME_L); u16 high = VarGet(VAR_CYCLING_ROAD_RECORD_TIME_H); u32 framesRecord = low + (high << 16); @@ -258,25 +239,23 @@ static void RecordCyclingRoadResults(u32 numFrames, u8 numBikeCollisions) { } } -u16 GetRecordedCyclingRoadResults(void) { +u16 GetRecordedCyclingRoadResults(void) +{ u16 low = VarGet(VAR_CYCLING_ROAD_RECORD_TIME_L); u16 high = VarGet(VAR_CYCLING_ROAD_RECORD_TIME_H); u32 framesRecord = low + (high << 16); if (framesRecord == 0) - { return FALSE; - } DetermineCyclingRoadResults(framesRecord, VarGet(VAR_CYCLING_ROAD_RECORD_COLLISIONS)); return TRUE; } -void UpdateCyclingRoadState(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)) - { return; - } if (VarGet(VAR_CYCLING_CHALLENGE_STATE) == 2 || VarGet(VAR_CYCLING_CHALLENGE_STATE) == 3) { @@ -300,9 +279,8 @@ void ResetSSTidalFlag(void) bool32 CountSSTidalStep(u16 delta) { if (!FlagGet(FLAG_SYS_CRUISE_MODE) || (*GetVarPointer(VAR_CRUISE_STEP_COUNT) += delta) < SS_TIDAL_MAX_STEPS) - { return FALSE; - } + return TRUE; } @@ -311,51 +289,51 @@ u8 GetSSTidalLocation(s8 *mapGroup, s8 *mapNum, s16 *x, s16 *y) u16 *varCruiseStepCount = GetVarPointer(VAR_CRUISE_STEP_COUNT); switch (*GetVarPointer(VAR_SS_TIDAL_STATE)) { - case SS_TIDAL_BOARD_SLATEPORT: - case SS_TIDAL_LAND_SLATEPORT: - return SS_TIDAL_LOCATION_SLATEPORT; - case SS_TIDAL_HALFWAY_LILYCOVE: - case SS_TIDAL_EXIT_CURRENTS_RIGHT: - return SS_TIDAL_LOCATION_ROUTE131; - case SS_TIDAL_LAND_LILYCOVE: - case SS_TIDAL_BOARD_LILYCOVE: - return SS_TIDAL_LOCATION_LILYCOVE; - case SS_TIDAL_DEPART_LILYCOVE: - case SS_TIDAL_EXIT_CURRENTS_LEFT: - return SS_TIDAL_LOCATION_ROUTE124; - case SS_TIDAL_DEPART_SLATEPORT: - if (*varCruiseStepCount < 60) - { - *mapNum = MAP_NUM(ROUTE134); - *x = *varCruiseStepCount + 19; - } - else if (*varCruiseStepCount < 140) - { - *mapNum = MAP_NUM(ROUTE133); - *x = *varCruiseStepCount - 60; - } - else - { - *mapNum = MAP_NUM(ROUTE132); - *x = *varCruiseStepCount - 140; - } - break; - case SS_TIDAL_HALFWAY_SLATEPORT: - if (*varCruiseStepCount < 66) - { - *mapNum = MAP_NUM(ROUTE132); - *x = 65 - *varCruiseStepCount; - } - else if (*varCruiseStepCount < 146) { - *mapNum = MAP_NUM(ROUTE133); - *x = 145 - *varCruiseStepCount; - } - else - { - *mapNum = MAP_NUM(ROUTE134); - *x = 224 - *varCruiseStepCount; - } - break; + case SS_TIDAL_BOARD_SLATEPORT: + case SS_TIDAL_LAND_SLATEPORT: + return SS_TIDAL_LOCATION_SLATEPORT; + case SS_TIDAL_HALFWAY_LILYCOVE: + case SS_TIDAL_EXIT_CURRENTS_RIGHT: + return SS_TIDAL_LOCATION_ROUTE131; + case SS_TIDAL_LAND_LILYCOVE: + case SS_TIDAL_BOARD_LILYCOVE: + return SS_TIDAL_LOCATION_LILYCOVE; + case SS_TIDAL_DEPART_LILYCOVE: + case SS_TIDAL_EXIT_CURRENTS_LEFT: + return SS_TIDAL_LOCATION_ROUTE124; + case SS_TIDAL_DEPART_SLATEPORT: + if (*varCruiseStepCount < 60) + { + *mapNum = MAP_NUM(ROUTE134); + *x = *varCruiseStepCount + 19; + } + else if (*varCruiseStepCount < 140) + { + *mapNum = MAP_NUM(ROUTE133); + *x = *varCruiseStepCount - 60; + } + else + { + *mapNum = MAP_NUM(ROUTE132); + *x = *varCruiseStepCount - 140; + } + break; + case SS_TIDAL_HALFWAY_SLATEPORT: + if (*varCruiseStepCount < 66) + { + *mapNum = MAP_NUM(ROUTE132); + *x = 65 - *varCruiseStepCount; + } + else if (*varCruiseStepCount < 146) { + *mapNum = MAP_NUM(ROUTE133); + *x = 145 - *varCruiseStepCount; + } + else + { + *mapNum = MAP_NUM(ROUTE134); + *x = 224 - *varCruiseStepCount; + } + break; } *mapGroup = MAP_GROUP(ROUTE132); *y = 20; @@ -368,17 +346,15 @@ bool32 ShouldDoWallyCall(void) { switch (gMapHeader.mapType) { - case MAP_TYPE_TOWN: - case MAP_TYPE_CITY: - case MAP_TYPE_ROUTE: - case MAP_TYPE_OCEAN_ROUTE: - if (++(*GetVarPointer(VAR_WALLY_CALL_STEP_COUNTER)) < 250) - { - return FALSE; - } - break; - default: + case MAP_TYPE_TOWN: + case MAP_TYPE_CITY: + case MAP_TYPE_ROUTE: + case MAP_TYPE_OCEAN_ROUTE: + if (++(*GetVarPointer(VAR_WALLY_CALL_STEP_COUNTER)) < 250) return FALSE; + break; + default: + return FALSE; } } else @@ -395,17 +371,17 @@ bool32 ShouldDoScottFortreeCall(void) { switch (gMapHeader.mapType) { - case MAP_TYPE_TOWN: - case MAP_TYPE_CITY: - case MAP_TYPE_ROUTE: - case MAP_TYPE_OCEAN_ROUTE: - if (++(*GetVarPointer(VAR_SCOTT_FORTREE_CALL_STEP_COUNTER)) < 10) - { - return FALSE; - } - break; - default: + case MAP_TYPE_TOWN: + case MAP_TYPE_CITY: + case MAP_TYPE_ROUTE: + case MAP_TYPE_OCEAN_ROUTE: + if (++(*GetVarPointer(VAR_SCOTT_FORTREE_CALL_STEP_COUNTER)) < 10) + { return FALSE; + } + break; + default: + return FALSE; } } else @@ -422,17 +398,17 @@ bool32 ShouldDoScottBattleFrontierCall(void) { switch (gMapHeader.mapType) { - case MAP_TYPE_TOWN: - case MAP_TYPE_CITY: - case MAP_TYPE_ROUTE: - case MAP_TYPE_OCEAN_ROUTE: - if (++(*GetVarPointer(VAR_SCOTT_BF_CALL_STEP_COUNTER)) < 10) - { - return FALSE; - } - break; - default: + case MAP_TYPE_TOWN: + case MAP_TYPE_CITY: + case MAP_TYPE_ROUTE: + case MAP_TYPE_OCEAN_ROUTE: + if (++(*GetVarPointer(VAR_SCOTT_BF_CALL_STEP_COUNTER)) < 10) + { return FALSE; + } + break; + default: + return FALSE; } } else @@ -449,17 +425,17 @@ bool32 ShouldDoRoxanneCall(void) { switch (gMapHeader.mapType) { - case MAP_TYPE_TOWN: - case MAP_TYPE_CITY: - case MAP_TYPE_ROUTE: - case MAP_TYPE_OCEAN_ROUTE: - if (++(*GetVarPointer(VAR_ROXANNE_CALL_STEP_COUNTER)) < 250) - { - return FALSE; - } - break; - default: + case MAP_TYPE_TOWN: + case MAP_TYPE_CITY: + case MAP_TYPE_ROUTE: + case MAP_TYPE_OCEAN_ROUTE: + if (++(*GetVarPointer(VAR_ROXANNE_CALL_STEP_COUNTER)) < 250) + { return FALSE; + } + break; + default: + return FALSE; } } else @@ -476,17 +452,17 @@ bool32 ShouldDoRivalRayquazaCall(void) { switch (gMapHeader.mapType) { - case MAP_TYPE_TOWN: - case MAP_TYPE_CITY: - case MAP_TYPE_ROUTE: - case MAP_TYPE_OCEAN_ROUTE: - if (++(*GetVarPointer(VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER)) < 250) - { - return FALSE; - } - break; - default: + case MAP_TYPE_TOWN: + case MAP_TYPE_CITY: + case MAP_TYPE_ROUTE: + case MAP_TYPE_OCEAN_ROUTE: + if (++(*GetVarPointer(VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER)) < 250) + { return FALSE; + } + break; + default: + return FALSE; } } else @@ -540,24 +516,24 @@ void SpawnLinkPartnerObjectEvent(void) playerFacingDirection = GetPlayerFacingDirection(); switch (playerFacingDirection) { - case DIR_WEST: - j = 2; - x = gSaveBlock1Ptr->pos.x - 1; - y = gSaveBlock1Ptr->pos.y; - break; - case DIR_NORTH: - j = 1; - x = gSaveBlock1Ptr->pos.x; - y = gSaveBlock1Ptr->pos.y - 1; - break; - case DIR_EAST: - x = gSaveBlock1Ptr->pos.x + 1; - y = gSaveBlock1Ptr->pos.y; - break; - case DIR_SOUTH: - j = 3; - x = gSaveBlock1Ptr->pos.x; - y = gSaveBlock1Ptr->pos.y + 1; + case DIR_WEST: + j = 2; + x = gSaveBlock1Ptr->pos.x - 1; + y = gSaveBlock1Ptr->pos.y; + break; + case DIR_NORTH: + j = 1; + x = gSaveBlock1Ptr->pos.x; + y = gSaveBlock1Ptr->pos.y - 1; + break; + case DIR_EAST: + x = gSaveBlock1Ptr->pos.x + 1; + y = gSaveBlock1Ptr->pos.y; + break; + case DIR_SOUTH: + j = 3; + x = gSaveBlock1Ptr->pos.x; + y = gSaveBlock1Ptr->pos.y + 1; } for (i = 0; i < gSpecialVar_0x8004; i++) { @@ -565,33 +541,31 @@ void SpawnLinkPartnerObjectEvent(void) { switch ((u8)gLinkPlayers[i].version) { - case VERSION_RUBY: - case VERSION_SAPPHIRE: - if (gLinkPlayers[i].gender == 0) - linkSpriteId = OBJ_EVENT_GFX_LINK_RS_BRENDAN; - else - linkSpriteId = OBJ_EVENT_GFX_LINK_RS_MAY; - break; - case VERSION_EMERALD: - if (gLinkPlayers[i].gender == 0) - linkSpriteId = OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL; - else - linkSpriteId = OBJ_EVENT_GFX_RIVAL_MAY_NORMAL; - break; - default: - if (gLinkPlayers[i].gender == 0) - linkSpriteId = OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL; - else - linkSpriteId = OBJ_EVENT_GFX_RIVAL_MAY_NORMAL; - break; + case VERSION_RUBY: + case VERSION_SAPPHIRE: + if (gLinkPlayers[i].gender == 0) + linkSpriteId = OBJ_EVENT_GFX_LINK_RS_BRENDAN; + else + linkSpriteId = OBJ_EVENT_GFX_LINK_RS_MAY; + break; + case VERSION_EMERALD: + if (gLinkPlayers[i].gender == 0) + linkSpriteId = OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL; + else + linkSpriteId = OBJ_EVENT_GFX_RIVAL_MAY_NORMAL; + break; + default: + if (gLinkPlayers[i].gender == 0) + linkSpriteId = OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL; + else + 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); j++; if (j == MAX_LINK_PLAYERS) - { j = 0; - } } } } @@ -664,84 +638,84 @@ void MauvilleGymSetDefaultBarriers(void) { switch (MapGridGetMetatileIdAt(x, y)) { - case METATILE_MauvilleGym_GreenBeamH1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_Off); - break; - case METATILE_MauvilleGym_GreenBeamH2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_Off); - break; - case METATILE_MauvilleGym_GreenBeamH3_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_Off); - break; - case METATILE_MauvilleGym_GreenBeamH4_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_Off); - break; - case METATILE_MauvilleGym_GreenBeamH1_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_On); - break; - case METATILE_MauvilleGym_GreenBeamH2_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_On); - break; - case METATILE_MauvilleGym_GreenBeamH3_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_GreenBeamH4_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_RedBeamH1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_Off); - break; - case METATILE_MauvilleGym_RedBeamH2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_Off); - break; - case METATILE_MauvilleGym_RedBeamH3_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_Off); - break; - case METATILE_MauvilleGym_RedBeamH4_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_Off); - break; - case METATILE_MauvilleGym_RedBeamH1_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_On); - break; - case METATILE_MauvilleGym_RedBeamH2_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_On); - break; - case METATILE_MauvilleGym_RedBeamH3_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_RedBeamH4_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_GreenBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_GreenBeamV2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); - break; - case METATILE_MauvilleGym_RedBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_RedBeamV2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); - break; - case METATILE_MauvilleGym_PoleBottom_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV1_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_FloorTile: - if (MapGridGetMetatileIdAt(x, y - 1) == METATILE_MauvilleGym_GreenBeamV1_On) - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV2_On | METATILE_COLLISION_MASK); - else - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV2_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_PoleBottom_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV1_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_PoleTop_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_PoleTop_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_Off); - break; + case METATILE_MauvilleGym_GreenBeamH1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_Off); + break; + case METATILE_MauvilleGym_GreenBeamH2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_Off); + break; + case METATILE_MauvilleGym_GreenBeamH3_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_Off); + break; + case METATILE_MauvilleGym_GreenBeamH4_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_Off); + break; + case METATILE_MauvilleGym_GreenBeamH1_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_On); + break; + case METATILE_MauvilleGym_GreenBeamH2_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_On); + break; + case METATILE_MauvilleGym_GreenBeamH3_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_GreenBeamH4_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_RedBeamH1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_Off); + break; + case METATILE_MauvilleGym_RedBeamH2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_Off); + break; + case METATILE_MauvilleGym_RedBeamH3_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_Off); + break; + case METATILE_MauvilleGym_RedBeamH4_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_Off); + break; + case METATILE_MauvilleGym_RedBeamH1_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_On); + break; + case METATILE_MauvilleGym_RedBeamH2_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_On); + break; + case METATILE_MauvilleGym_RedBeamH3_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_RedBeamH4_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_GreenBeamV1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_GreenBeamV2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); + break; + case METATILE_MauvilleGym_RedBeamV1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_RedBeamV2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); + break; + case METATILE_MauvilleGym_PoleBottom_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV1_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_FloorTile: + if (MapGridGetMetatileIdAt(x, y - 1) == METATILE_MauvilleGym_GreenBeamV1_On) + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV2_On | METATILE_COLLISION_MASK); + else + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV2_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_PoleBottom_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV1_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_PoleTop_Off: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_PoleTop_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_Off); + break; } } } @@ -763,43 +737,43 @@ void MauvilleGymDeactivatePuzzle(void) { switch (MapGridGetMetatileIdAt(x, y)) { - case METATILE_MauvilleGym_GreenBeamH1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_Off); - break; - case METATILE_MauvilleGym_GreenBeamH2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_Off); - break; - case METATILE_MauvilleGym_GreenBeamH3_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_Off); - break; - case METATILE_MauvilleGym_GreenBeamH4_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_Off); - break; - case METATILE_MauvilleGym_RedBeamH1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_Off); - break; - case METATILE_MauvilleGym_RedBeamH2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_Off); - break; - case METATILE_MauvilleGym_RedBeamH3_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_Off); - break; - case METATILE_MauvilleGym_RedBeamH4_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_Off); - break; - case METATILE_MauvilleGym_GreenBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_RedBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); - break; - case METATILE_MauvilleGym_GreenBeamV2_On: - case METATILE_MauvilleGym_RedBeamV2_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); - break; - case METATILE_MauvilleGym_PoleTop_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_Off); - break; + case METATILE_MauvilleGym_GreenBeamH1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH1_Off); + break; + case METATILE_MauvilleGym_GreenBeamH2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_Off); + break; + case METATILE_MauvilleGym_GreenBeamH3_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_Off); + break; + case METATILE_MauvilleGym_GreenBeamH4_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_Off); + break; + case METATILE_MauvilleGym_RedBeamH1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_Off); + break; + case METATILE_MauvilleGym_RedBeamH2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_Off); + break; + case METATILE_MauvilleGym_RedBeamH3_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_Off); + break; + case METATILE_MauvilleGym_RedBeamH4_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_Off); + break; + case METATILE_MauvilleGym_GreenBeamV1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_RedBeamV1_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); + break; + case METATILE_MauvilleGym_GreenBeamV2_On: + case METATILE_MauvilleGym_RedBeamV2_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); + break; + case METATILE_MauvilleGym_PoleTop_On: + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_Off); + break; } } } @@ -849,54 +823,54 @@ static void PetalburgGymSetDoorMetatiles(u8 roomNumber, u16 metatileId) u8 nDoors = 0; switch (roomNumber) { - case 1: - nDoors = 2; - doorCoordsX[0] = 1; - doorCoordsX[1] = 7; - doorCoordsY[0] = 104; - doorCoordsY[1] = 104; - break; - case 2: - nDoors = 2; - doorCoordsX[0] = 1; - doorCoordsX[1] = 7; - doorCoordsY[0] = 78; - doorCoordsY[1] = 78; - break; - case 3: - nDoors = 2; - doorCoordsX[0] = 1; - doorCoordsX[1] = 7; - doorCoordsY[0] = 91; - doorCoordsY[1] = 91; - break; - case 4: - nDoors = 1; - doorCoordsX[0] = 7; - doorCoordsY[0] = 39; - break; - case 5: - nDoors = 2; - doorCoordsX[0] = 1; - doorCoordsX[1] = 7; - doorCoordsY[0] = 52; - doorCoordsY[1] = 52; - break; - case 6: - nDoors = 1; - doorCoordsX[0] = 1; - doorCoordsY[0] = 65; - break; - case 7: - nDoors = 1; - doorCoordsX[0] = 7; - doorCoordsY[0] = 13; - break; - case 8: - nDoors = 1; - doorCoordsX[0] = 1; - doorCoordsY[0] = 26; - break; + case 1: + nDoors = 2; + doorCoordsX[0] = 1; + doorCoordsX[1] = 7; + doorCoordsY[0] = 104; + doorCoordsY[1] = 104; + break; + case 2: + nDoors = 2; + doorCoordsX[0] = 1; + doorCoordsX[1] = 7; + doorCoordsY[0] = 78; + doorCoordsY[1] = 78; + break; + case 3: + nDoors = 2; + doorCoordsX[0] = 1; + doorCoordsX[1] = 7; + doorCoordsY[0] = 91; + doorCoordsY[1] = 91; + break; + case 4: + nDoors = 1; + doorCoordsX[0] = 7; + doorCoordsY[0] = 39; + break; + case 5: + nDoors = 2; + doorCoordsX[0] = 1; + doorCoordsX[1] = 7; + doorCoordsY[0] = 52; + doorCoordsY[1] = 52; + break; + case 6: + nDoors = 1; + doorCoordsX[0] = 1; + doorCoordsY[0] = 65; + break; + case 7: + nDoors = 1; + doorCoordsX[0] = 7; + doorCoordsY[0] = 13; + break; + case 8: + nDoors = 1; + doorCoordsX[0] = 1; + doorCoordsY[0] = 26; + break; } for (i = 0; i < nDoors; i++) { @@ -930,25 +904,17 @@ u8 GetPlayerTrainerIdOnesDigit(void) void GetPlayerBigGuyGirlString(void) { if (gSaveBlock2Ptr->playerGender == MALE) - { StringCopy(gStringVar1, gText_BigGuy); - } else - { StringCopy(gStringVar1, gText_BigGirl); - } } void GetRivalSonDaughterString(void) { if (gSaveBlock2Ptr->playerGender == MALE) - { StringCopy(gStringVar1, gText_Daughter); - } else - { StringCopy(gStringVar1, gText_Son); - } } u8 GetBattleOutcome(void) @@ -983,29 +949,18 @@ u8 GetLeadMonFriendshipScore(void) { struct Pokemon *pokemon = &gPlayerParty[GetLeadMonIndex()]; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) == MAX_FRIENDSHIP) - { return 6; - } if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 200) - { return 5; - } if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 150) - { return 4; - } if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 100) - { return 3; - } if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 50) - { return 2; - } if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 1) - { return 1; - } + return 0; } @@ -1036,9 +991,7 @@ static void Task_PCTurnOnEffect(u8 taskId) { struct Task *task = &gTasks[taskId]; if (task->data[0] == 0) - { PCTurnOnEffect_0(task); - } } static void PCTurnOnEffect_0(struct Task *task) @@ -1052,26 +1005,24 @@ static void PCTurnOnEffect_0(struct Task *task) playerDirection = GetPlayerFacingDirection(); switch (playerDirection) { - case DIR_NORTH: - dx = 0; - dy = -1; - break; - case DIR_WEST: - dx = -1; - dy = -1; - break; - case DIR_EAST: - dx = 1; - dy = -1; - break; + case DIR_NORTH: + dx = 0; + dy = -1; + break; + case DIR_WEST: + dx = -1; + dy = -1; + break; + case DIR_EAST: + dx = 1; + dy = -1; + break; } PCTurnOnEffect_1(task->data[4], dx, dy); DrawWholeMapView(); task->data[4] ^= 1; if ((++task->data[2]) == 5) - { DestroyTask(task->data[1]); - } } task->data[3]++; } @@ -1082,32 +1033,20 @@ static void PCTurnOnEffect_1(s16 isPcTurnedOn, s8 dx, s8 dy) if (isPcTurnedOn) { if (gSpecialVar_0x8004 == PC_LOCATION_OTHER) - { tileId = METATILE_Building_PC_Off; - } else if (gSpecialVar_0x8004 == PC_LOCATION_BRENDANS_HOUSE) - { tileId = METATILE_BrendansMaysHouse_BrendanPC_Off; - } else if (gSpecialVar_0x8004 == PC_LOCATION_MAYS_HOUSE) - { tileId = METATILE_BrendansMaysHouse_MayPC_Off; - } } else { if (gSpecialVar_0x8004 == PC_LOCATION_OTHER) - { tileId = METATILE_Building_PC_On; - } else if (gSpecialVar_0x8004 == PC_LOCATION_BRENDANS_HOUSE) - { tileId = METATILE_BrendansMaysHouse_BrendanPC_On; - } else if (gSpecialVar_0x8004 == PC_LOCATION_MAYS_HOUSE) - { tileId = METATILE_BrendansMaysHouse_MayPC_On; - } } MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); } @@ -1125,31 +1064,25 @@ static void PCTurnOffEffect(void) u8 playerDirection = GetPlayerFacingDirection(); switch (playerDirection) { - case DIR_NORTH: - dx = 0; - dy = -1; - break; - case DIR_WEST: - dx = -1; - dy = -1; - break; - case DIR_EAST: - dx = 1; - dy = -1; - break; + case DIR_NORTH: + dx = 0; + dy = -1; + break; + case DIR_WEST: + dx = -1; + dy = -1; + break; + case DIR_EAST: + dx = 1; + dy = -1; + break; } if (gSpecialVar_0x8004 == 0) - { tileId = METATILE_Building_PC_Off; - } else if (gSpecialVar_0x8004 == 1) - { tileId = METATILE_BrendansMaysHouse_BrendanPC_Off; - } else if (gSpecialVar_0x8004 == 2) - { tileId = METATILE_BrendansMaysHouse_MayPC_Off; - } MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); DrawWholeMapView(); } @@ -1171,9 +1104,7 @@ static void Task_LotteryCornerComputerEffect(u8 taskId) { struct Task *task = &gTasks[taskId]; if (task->data[0] == 0) - { LotteryCornerComputerEffect(task); - } } static void LotteryCornerComputerEffect(struct Task *task) @@ -1194,9 +1125,7 @@ static void LotteryCornerComputerEffect(struct Task *task) DrawWholeMapView(); task->data[4] ^= 1; if ((++task->data[2]) == 5) - { DestroyTask(task->data[1]); - } } task->data[3]++; } @@ -1227,45 +1156,40 @@ void ResetTrickHouseNuggetFlag(void) bool8 CheckLeadMonCool(void) { if (GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_COOL) < 200) - { return FALSE; - } + return TRUE; } bool8 CheckLeadMonBeauty(void) { if (GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_BEAUTY) < 200) - { return FALSE; - } + return TRUE; } bool8 CheckLeadMonCute(void) { if (GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_CUTE) < 200) - { return FALSE; - } + return TRUE; } bool8 CheckLeadMonSmart(void) { if (GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SMART) < 200) - { return FALSE; - } + return TRUE; } bool8 CheckLeadMonTough(void) { if (GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_TOUGH) < 200) - { return FALSE; - } + return TRUE; } @@ -1373,9 +1297,8 @@ bool8 FoundAbandonedShipRoom1Key(void) u16 flag = FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY; *specVar = flag; if (!FlagGet(flag)) - { return FALSE; - } + return TRUE; } @@ -1385,9 +1308,8 @@ bool8 FoundAbandonedShipRoom2Key(void) u16 flag = FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY; *specVar = flag; if (!FlagGet(flag)) - { return FALSE; - } + return TRUE; } @@ -1397,9 +1319,8 @@ bool8 FoundAbandonedShipRoom4Key(void) u16 flag = FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY; *specVar = flag; if (!FlagGet(flag)) - { return FALSE; - } + return TRUE; } @@ -1409,9 +1330,8 @@ bool8 FoundAbandonedShipRoom6Key(void) u16 flag = FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY; *specVar = flag; if (!FlagGet(flag)) - { return FALSE; - } + return TRUE; } @@ -1430,17 +1350,14 @@ void GiveLeadMonEffortRibbon(void) leadMon = &gPlayerParty[GetLeadMonIndex()]; SetMonData(leadMon, MON_DATA_EFFORT_RIBBON, &ribbonSet); if (GetRibbonCount(leadMon) > NUM_CUTIES_RIBBONS) - { TryPutSpotTheCutiesOnAir(leadMon, MON_DATA_EFFORT_RIBBON); - } } bool8 Special_AreLeadMonEVsMaxedOut(void) { if (GetMonEVCount(&gPlayerParty[GetLeadMonIndex()]) >= MAX_TOTAL_EVS) - { return TRUE; - } + return FALSE; } @@ -1491,9 +1408,7 @@ bool8 IsStarterInParty(void) for (i = 0; i < partyCount; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) == starter) - { return TRUE; - } } return FALSE; } @@ -1506,9 +1421,8 @@ bool8 ScriptCheckFreePokemonStorageSpace(void) bool8 IsPokerusInParty(void) { if (!CheckPartyPokerus(gPlayerParty, 0x3f)) - { return FALSE; - } + return TRUE; } @@ -1586,9 +1500,7 @@ u8 GetLeadMonIndex(void) for (i = 0; i < partyCount; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) != SPECIES_EGG && GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) != 0) - { return i; - } } return 0; } @@ -1608,13 +1520,10 @@ u16 GetDaysUntilPacifidlogTMAvailable(void) { u16 tmReceivedDay = VarGet(VAR_PACIFIDLOG_TM_RECEIVED_DAY); if (gLocalTime.days - tmReceivedDay >= 7) - { return 0; - } else if (gLocalTime.days < 0) - { return 8; - } + return 7 - (gLocalTime.days - tmReceivedDay); } @@ -1675,18 +1584,18 @@ u16 GetMysteryGiftCardStat(void) { switch (gSpecialVar_Result) { - case GET_NUM_STAMPS: - return MysteryGift_GetCardStat(CARD_STAT_NUM_STAMPS); - case GET_MAX_STAMPS: - return MysteryGift_GetCardStat(CARD_STAT_MAX_STAMPS); - case GET_CARD_BATTLES_WON: - return MysteryGift_GetCardStat(CARD_STAT_BATTLES_WON); - case GET_CARD_BATTLES_LOST: // Never occurs - return MysteryGift_GetCardStat(CARD_STAT_BATTLES_LOST); - case GET_CARD_NUM_TRADES: // Never occurs - return MysteryGift_GetCardStat(CARD_STAT_NUM_TRADES); - default: - return 0; + case GET_NUM_STAMPS: + return MysteryGift_GetCardStat(CARD_STAT_NUM_STAMPS); + case GET_MAX_STAMPS: + return MysteryGift_GetCardStat(CARD_STAT_MAX_STAMPS); + case GET_CARD_BATTLES_WON: + return MysteryGift_GetCardStat(CARD_STAT_BATTLES_WON); + case GET_CARD_BATTLES_LOST: // Never occurs + return MysteryGift_GetCardStat(CARD_STAT_BATTLES_LOST); + case GET_CARD_NUM_TRADES: // Never occurs + return MysteryGift_GetCardStat(CARD_STAT_NUM_TRADES); + default: + return 0; } } @@ -1795,36 +1704,36 @@ static const u16 sElevatorWindowTiles_Descending[][3] = { METATILE_BattleFrontier_Elevator_Bottom0, METATILE_BattleFrontier_Elevator_Bottom2, - METATILE_BattleFrontier_Elevator_Bottom1 - }, -}; - -void SetDeptStoreFloor(void) -{ - u8 deptStoreFloor; - switch (gSaveBlock1Ptr->dynamicWarp.mapNum) - { - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F): - deptStoreFloor = DEPT_STORE_FLOORNUM_1F; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F): - deptStoreFloor = DEPT_STORE_FLOORNUM_2F; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F): - deptStoreFloor = DEPT_STORE_FLOORNUM_3F; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F): - deptStoreFloor = DEPT_STORE_FLOORNUM_4F; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F): - deptStoreFloor = DEPT_STORE_FLOORNUM_5F; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP): - deptStoreFloor = DEPT_STORE_FLOORNUM_ROOFTOP; - break; - default: - deptStoreFloor = DEPT_STORE_FLOORNUM_1F; - break; + METATILE_BattleFrontier_Elevator_Bottom1 + }, +}; + +void SetDeptStoreFloor(void) +{ + u8 deptStoreFloor; + switch (gSaveBlock1Ptr->dynamicWarp.mapNum) + { + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F): + deptStoreFloor = DEPT_STORE_FLOORNUM_1F; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F): + deptStoreFloor = DEPT_STORE_FLOORNUM_2F; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F): + deptStoreFloor = DEPT_STORE_FLOORNUM_3F; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F): + deptStoreFloor = DEPT_STORE_FLOORNUM_4F; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F): + deptStoreFloor = DEPT_STORE_FLOORNUM_5F; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP): + deptStoreFloor = DEPT_STORE_FLOORNUM_ROOFTOP; + break; + default: + deptStoreFloor = DEPT_STORE_FLOORNUM_1F; + break; } VarSet(VAR_DEPT_STORE_FLOOR, deptStoreFloor); } @@ -1838,26 +1747,26 @@ u16 GetDeptStoreDefaultFloorChoice(void) { switch (gSaveBlock1Ptr->dynamicWarp.mapNum) { - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F): - sLilycoveDeptStore_NeverRead = 0; - sLilycoveDeptStore_DefaultFloorChoice = 0; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F): - sLilycoveDeptStore_NeverRead = 0; - sLilycoveDeptStore_DefaultFloorChoice = 1; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F): - sLilycoveDeptStore_NeverRead = 0; - sLilycoveDeptStore_DefaultFloorChoice = 2; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F): - sLilycoveDeptStore_NeverRead = 0; - sLilycoveDeptStore_DefaultFloorChoice = 3; - break; - case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F): - sLilycoveDeptStore_NeverRead = 0; - sLilycoveDeptStore_DefaultFloorChoice = 4; - break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F): + sLilycoveDeptStore_NeverRead = 0; + sLilycoveDeptStore_DefaultFloorChoice = 0; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F): + sLilycoveDeptStore_NeverRead = 0; + sLilycoveDeptStore_DefaultFloorChoice = 1; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F): + sLilycoveDeptStore_NeverRead = 0; + sLilycoveDeptStore_DefaultFloorChoice = 2; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F): + sLilycoveDeptStore_NeverRead = 0; + sLilycoveDeptStore_DefaultFloorChoice = 3; + break; + case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F): + sLilycoveDeptStore_NeverRead = 0; + sLilycoveDeptStore_DefaultFloorChoice = 4; + break; } } @@ -1969,22 +1878,24 @@ static void Task_MoveElevatorWindowLights(u8 taskId) if (data[2] == FALSE) { for (y = 0; y < 3; y++) + { for (x = 0; x < 3; x++) MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Ascending[y][data[0] % 3] | METATILE_COLLISION_MASK); + } } // descending else { for (y = 0; y < 3; y++) + { for (x = 0; x < 3; x++) MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Descending[y][data[0] % 3] | METATILE_COLLISION_MASK); + } } DrawWholeMapView(); data[1] = 0; if (data[0] == data[3]) - { DestroyTask(taskId); - } } data[1]++; } @@ -2004,9 +1915,7 @@ void BufferVarsForIVRater(void) gSpecialVar_0x8005 = 0; for (i = 0; i < NUM_STATS; i++) - { gSpecialVar_0x8005 += ivStorage[i]; - } gSpecialVar_0x8006 = 0; gSpecialVar_0x8007 = ivStorage[STAT_HP]; @@ -2070,9 +1979,8 @@ bool8 UsedPokemonCenterWarp(void) bool32 PlayerNotAtTrainerHillEntrance(void) { if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRAINER_HILL_ENTRANCE)) - { return FALSE; - } + return TRUE; } @@ -2169,86 +2077,58 @@ void ShowFrontierManiacMessage(void) switch (facility) { - case FRONTIER_MANIAC_TOWER_SINGLES: - case FRONTIER_MANIAC_TOWER_DOUBLES: - case FRONTIER_MANIAC_TOWER_MULTIS: - case FRONTIER_MANIAC_TOWER_LINK: - if (gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_DOME: - if (gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_FACTORY: - if (gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_PALACE: - if (gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_ARENA: - if (gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_PIKE: - if (gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]; - } - break; - case FRONTIER_MANIAC_PYRAMID: - if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50] - >= gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]) - { - winStreak = gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50]; - } - else - { - winStreak = gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]; - } - break; + case FRONTIER_MANIAC_TOWER_SINGLES: + case FRONTIER_MANIAC_TOWER_DOUBLES: + case FRONTIER_MANIAC_TOWER_MULTIS: + case FRONTIER_MANIAC_TOWER_LINK: + if (gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[facility][FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_DOME: + if (gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.domeWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_FACTORY: + if (gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_PALACE: + if (gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.palaceWinStreaks[FRONTIER_MODE_SINGLES][FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_ARENA: + if (gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.arenaWinStreaks[FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_PIKE: + if (gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[FRONTIER_LVL_OPEN]; + break; + case FRONTIER_MANIAC_PYRAMID: + if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50] + >= gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]) + winStreak = gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_50]; + else + winStreak = gSaveBlock2Ptr->frontier.pyramidWinStreaks[FRONTIER_LVL_OPEN]; + break; } for (i = 0; i < FRONTIER_MANIAC_MESSAGE_COUNT - 1 && sFrontierManiacStreakThresholds[facility][i] < winStreak; i++); @@ -2313,131 +2193,131 @@ void ShowScrollableMultichoice(void) switch (gSpecialVar_0x8004) { - case SCROLL_MULTI_NONE: - task->tMaxItemsOnScreen = 1; - task->tNumItems = 1; - task->tLeft = 1; - task->tTop = 1; - task->tWidth = 1; - task->tHeight = 1; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_GLASS_WORKSHOP_VENDOR: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN - 1; - task->tNumItems = 8; - task->tLeft = 1; - task->tTop = 1; - task->tWidth = 9; - task->tHeight = 10; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_POKEMON_FAN_CLUB_RATER: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 12; - task->tLeft = 1; - task->tTop = 1; - task->tWidth = 7; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 11; - task->tLeft = 14; - task->tTop = 1; - task->tWidth = 15; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 6; - task->tLeft = 14; - task->tTop = 1; - task->tWidth = 15; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 7; - task->tLeft = 14; - task->tTop = 1; - task->tWidth = 15; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 10; - task->tLeft = 14; - task->tTop = 1; - task->tWidth = 15; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BERRY_POWDER_VENDOR: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 12; - task->tLeft = 15; - task->tTop = 1; - task->tWidth = 14; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_RECEPTIONIST: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 10; - task->tLeft = 17; - task->tTop = 1; - task->tWidth = 11; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BF_MOVE_TUTOR_1: - case SCROLL_MULTI_BF_MOVE_TUTOR_2: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 11; - task->tLeft = 15; - task->tTop = 1; - task->tWidth = 14; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_SS_TIDAL_DESTINATION: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 7; - task->tLeft = 19; - task->tTop = 1; - task->tWidth = 10; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - case SCROLL_MULTI_BATTLE_TENT_RULES: - task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; - task->tNumItems = 7; - task->tLeft = 17; - task->tTop = 1; - task->tWidth = 12; - task->tHeight = 12; - task->tKeepOpenAfterSelect = FALSE; - task->tTaskId = taskId; - break; - default: - gSpecialVar_Result = MULTI_B_PRESSED; - DestroyTask(taskId); - break; + case SCROLL_MULTI_NONE: + task->tMaxItemsOnScreen = 1; + task->tNumItems = 1; + task->tLeft = 1; + task->tTop = 1; + task->tWidth = 1; + task->tHeight = 1; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_GLASS_WORKSHOP_VENDOR: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN - 1; + task->tNumItems = 8; + task->tLeft = 1; + task->tTop = 1; + task->tWidth = 9; + task->tHeight = 10; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_POKEMON_FAN_CLUB_RATER: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 12; + task->tLeft = 1; + task->tTop = 1; + task->tWidth = 7; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 11; + task->tLeft = 14; + task->tTop = 1; + task->tWidth = 15; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 6; + task->tLeft = 14; + task->tTop = 1; + task->tWidth = 15; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 7; + task->tLeft = 14; + task->tTop = 1; + task->tWidth = 15; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 10; + task->tLeft = 14; + task->tTop = 1; + task->tWidth = 15; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BERRY_POWDER_VENDOR: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 12; + task->tLeft = 15; + task->tTop = 1; + task->tWidth = 14; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_RECEPTIONIST: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 10; + task->tLeft = 17; + task->tTop = 1; + task->tWidth = 11; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BF_MOVE_TUTOR_1: + case SCROLL_MULTI_BF_MOVE_TUTOR_2: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 11; + task->tLeft = 15; + task->tTop = 1; + task->tWidth = 14; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_SS_TIDAL_DESTINATION: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 7; + task->tLeft = 19; + task->tTop = 1; + task->tWidth = 10; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + case SCROLL_MULTI_BATTLE_TENT_RULES: + task->tMaxItemsOnScreen = MAX_SCROLL_MULTI_ON_SCREEN; + task->tNumItems = 7; + task->tLeft = 17; + task->tTop = 1; + task->tWidth = 12; + task->tHeight = 12; + task->tKeepOpenAfterSelect = FALSE; + task->tTaskId = taskId; + break; + default: + gSpecialVar_Result = MULTI_B_PRESSED; + DestroyTask(taskId); + break; } } @@ -2627,13 +2507,9 @@ static void Task_ShowScrollableMultichoice(u8 taskId) { int adjustedLeft = MAX_MULTICHOICE_WIDTH + 1 - task->tWidth; if (adjustedLeft < 0) - { task->tLeft = 0; - } else - { task->tLeft = adjustedLeft; - } } template = CreateWindowTemplate(0, task->tLeft, task->tTop, task->tWidth, task->tHeight, 0xF, 0x64); @@ -2713,13 +2589,14 @@ static void ScrollableMultichoice_ProcessInput(u8 taskId) { CloseScrollableMultichoice(taskId); } - // if selected option was the last one (Exit) else if (input == task->tNumItems - 1) { + // if selected option was the last one (Exit) CloseScrollableMultichoice(taskId); } - else // Handle selection while keeping the menu open + else { + // Handle selection while keeping the menu open ScrollableMultichoice_RemoveScrollArrows(taskId); task->func = Task_ScrollableMultichoice_WaitReturnToList; EnableBothScriptContexts(); @@ -2828,13 +2705,9 @@ void SetBattleTowerLinkPlayerGfx(void) for (i = 0; i < 2; i++) { if (gLinkPlayers[i].gender == MALE) - { VarSet(VAR_OBJ_GFX_ID_F - i, OBJ_EVENT_GFX_BRENDAN_NORMAL); - } else - { VarSet(VAR_OBJ_GFX_ID_F - i, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL); - } } } @@ -2871,9 +2744,7 @@ void ShowNatureGirlMessage(void) u8 nature; if (gSpecialVar_0x8004 >= PARTY_SIZE) - { gSpecialVar_0x8004 = 0; - } nature = GetNature(&gPlayerParty[gSpecialVar_0x8004]); ShowFieldMessage(sNatureGirlMessages[nature]); @@ -2957,13 +2828,9 @@ void FrontierGamblerSetWonOrLost(bool8 won) if (sFrontierChallenges[challenge] == FRONTIER_CHALLENGE(frontierFacilityId, battleMode)) { if (won) - { VarSet(VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_WON); - } else - { VarSet(VAR_FRONTIER_GAMBLER_STATE, FRONTIER_GAMBLER_LOST); - } } } } @@ -2979,7 +2846,8 @@ void UpdateBattlePointsWindow(void) void ShowBattlePointsWindow(void) { - static const struct WindowTemplate sBattlePoints_WindowTemplate = { + static const struct WindowTemplate sBattlePoints_WindowTemplate = + { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -3024,7 +2892,8 @@ u16 GetFrontierBattlePoints(void) void ShowFrontierExchangeCornerItemIconWindow(void) { - static const struct WindowTemplate sFrontierExchangeCorner_ItemIconWindowTemplate = { + static const struct WindowTemplate sFrontierExchangeCorner_ItemIconWindowTemplate = + { .bg = 0, .tilemapLeft = 2, .tilemapTop = 9, @@ -3056,40 +2925,40 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) FillWindowPixelRect(0, PIXEL_FILL(1), 0, 0, 216, 32); switch (menu) { - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, 2, 1, 3); - if (sFrontierExchangeCorner_Decor1[selection] == 0xFFFF) - { - ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor1[selection]); - } - else - { - FreeSpriteTilesByTag(TAG_ITEM_ICON); - FreeSpritePaletteByTag(TAG_ITEM_ICON); - sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor1[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); - } - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, 2, 1, 3); - if (sFrontierExchangeCorner_Decor2[selection] == 0xFFFF) - { - ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor2[selection]); - } - else - { - FreeSpriteTilesByTag(TAG_ITEM_ICON); - FreeSpritePaletteByTag(TAG_ITEM_ICON); - sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor2[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); - } - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, 2, 1, 3); - ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Vitamins[selection]); - break; - case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, 2, 1, 3); - ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_HoldItems[selection]); - break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, 2, 1, 3); + if (sFrontierExchangeCorner_Decor1[selection] == 0xFFFF) + { + ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor1[selection]); + } + else + { + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor1[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); + } + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, 2, 1, 3); + if (sFrontierExchangeCorner_Decor2[selection] == 0xFFFF) + { + ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor2[selection]); + } + else + { + FreeSpriteTilesByTag(TAG_ITEM_ICON); + FreeSpritePaletteByTag(TAG_ITEM_ICON); + sScrollableMultichoice_ItemSpriteId = AddDecorationIconObject(sFrontierExchangeCorner_Decor2[selection], 33, 88, 0, TAG_ITEM_ICON, TAG_ITEM_ICON); + } + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, 2, 1, 3); + ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Vitamins[selection]); + break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, 2, 1, 3); + ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_HoldItems[selection]); + break; } } } @@ -3114,12 +2983,12 @@ static void HideFrontierExchangeCornerItemIcon(u16 menu, u16 unused) { switch (menu) { - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: - case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: - case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: - case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: - DestroySpriteAndFreeResources(&gSprites[sScrollableMultichoice_ItemSpriteId]); - break; + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: + case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: + case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: + case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: + DestroySpriteAndFreeResources(&gSprites[sScrollableMultichoice_ItemSpriteId]); + break; } sScrollableMultichoice_ItemSpriteId = MAX_SPRITES; } @@ -3156,13 +3025,9 @@ static const u16 sBattleFrontier_TutorMoves2[] = void BufferBattleFrontierTutorMoveName(void) { if (gSpecialVar_0x8005 != 0) - { StringCopy(gStringVar1, gMoveNames[sBattleFrontier_TutorMoves2[gSpecialVar_0x8004]]); - } else - { StringCopy(gStringVar1, gMoveNames[sBattleFrontier_TutorMoves1[gSpecialVar_0x8004]]); - } } static void ShowBattleFrontierTutorWindow(u8 menu, u16 selection) @@ -3225,13 +3090,9 @@ static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection) { FillWindowPixelRect(sTutorMoveAndElevatorWindowId, PIXEL_FILL(1), 0, 0, 96, 48); if (menu == SCROLL_MULTI_BF_MOVE_TUTOR_2) - { AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, sBattleFrontier_TutorMoveDescriptions2[selection], 0, 1, 0, NULL); - } else - { AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, sBattleFrontier_TutorMoveDescriptions1[selection], 0, 1, 0, NULL); - } } } @@ -3453,13 +3314,9 @@ void IncrementBirthIslandRockStepCount(void) { var++; if (var > 99) - { VarSet(VAR_DEOXYS_ROCK_STEP_COUNT, 0); - } else - { VarSet(VAR_DEOXYS_ROCK_STEP_COUNT, var); - } } } @@ -3505,18 +3362,14 @@ bool8 IsDestinationBoxFull(void) if (GetBoxMonData(GetBoxedMonPtr(box, i), MON_DATA_SPECIES, 0) == SPECIES_NONE) { if (GetPCBoxToSendMon() != box) - { FlagClear(FLAG_SHOWN_BOX_WAS_FULL_MESSAGE); - } VarSet(VAR_PC_BOX_TO_SEND_MON, box); return ShouldShowBoxWasFullMessage(); } } if (++box == TOTAL_BOXES_COUNT) - { box = 0; - } } while (box != StorageGetCurrentBox()); return FALSE; } @@ -3582,7 +3435,8 @@ bool32 GetAbnormalWeatherMapNameAndType(void) bool8 AbnormalWeatherHasExpired(void) { // Duplicate array. - static const u8 sAbnormalWeatherMapNumbers[] = { + static const u8 sAbnormalWeatherMapNumbers[] = + { MAP_NUM(ROUTE114), MAP_NUM(ROUTE114), MAP_NUM(ROUTE115), @@ -3605,9 +3459,7 @@ bool8 AbnormalWeatherHasExpired(void) u16 abnormalWeather = VarGet(VAR_ABNORMAL_WEATHER_LOCATION); if (abnormalWeather == ABNORMAL_WEATHER_NONE) - { return FALSE; - } if (++steps > 999) { @@ -3616,15 +3468,15 @@ bool8 AbnormalWeatherHasExpired(void) { 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): - VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1); - return FALSE; - default: - break; + 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): + VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1); + return FALSE; + default: + break; } } @@ -3632,14 +3484,14 @@ bool8 AbnormalWeatherHasExpired(void) { switch (gSaveBlock1Ptr->location.mapNum) { - case MAP_NUM(UNDERWATER_ROUTE127): - case MAP_NUM(UNDERWATER_ROUTE129): - case MAP_NUM(UNDERWATER_ROUTE105): - case MAP_NUM(UNDERWATER_ROUTE125): - VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1); - return FALSE; - default: - break; + case MAP_NUM(UNDERWATER_ROUTE127): + case MAP_NUM(UNDERWATER_ROUTE129): + case MAP_NUM(UNDERWATER_ROUTE105): + case MAP_NUM(UNDERWATER_ROUTE125): + VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1); + return FALSE; + default: + break; } } @@ -3691,9 +3543,7 @@ u32 GetMartEmployeeObjectEventId(void) if (gSaveBlock1Ptr->location.mapGroup == sPokeMarts[i][0]) { if (gSaveBlock1Ptr->location.mapNum == sPokeMarts[i][1]) - { return sPokeMarts[i][2]; - } } } return 1; @@ -3748,9 +3598,7 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) { case 0: if (!FuncIsActiveTask(Task_ReconnectWithLinkPlayers)) - { gTasks[taskId].tState++; - } break; case 1: if (IsLinkTaskFinished() == TRUE) @@ -3781,23 +3629,15 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_RETIRE) - { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_BOTH_RETIRE; - } else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_CONTINUE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_RETIRE) - { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_MEMBER_RETIRE; - } else if (gSpecialVar_0x8004 == BATTLE_TOWER_LINK_RETIRE && gSpecialVar_0x8005 == BATTLE_TOWER_LINK_CONTINUE) - { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_LEADER_RETIRE; - } else - { gSpecialVar_Result = BATTLE_TOWER_LINKSTAT_CONTINUE; - } } gTasks[taskId].tState++; } @@ -3912,9 +3752,7 @@ static void Task_LoopWingFlapSE(u8 taskId) } if (playCount == gSpecialVar_0x8004 - 1) - { DestroyTask(taskId); - } } #undef playCount @@ -3976,9 +3814,7 @@ void GetBattlePyramidHint(void) void ResetHealLocationFromDewford(void) { if (gSaveBlock1Ptr->lastHealLocation.mapGroup == MAP_GROUP(DEWFORD_TOWN) && gSaveBlock1Ptr->lastHealLocation.mapNum == MAP_NUM(DEWFORD_TOWN)) - { SetLastHealLocationWarp(HEAL_LOCATION_PETALBURG_CITY); - } } bool8 InPokemonCenter(void) @@ -4015,9 +3851,7 @@ bool8 InPokemonCenter(void) for (i = 0; sPokemonCenters[i] != 0xFFFF; i++) { if (sPokemonCenters[i] == map) - { return TRUE; - } } return FALSE; } @@ -4192,9 +4026,7 @@ static u16 PlayerLoseRandomTrainerFan(void) u8 idx = 0; if (GetNumFansOfPlayerInTrainerFanClub() == 1) - { return 0; - } for (i = 0; i < ARRAY_COUNT(sFanClubMemberIds); i++) { @@ -4210,9 +4042,7 @@ static u16 PlayerLoseRandomTrainerFan(void) } if (GET_TRAINER_FAN_CLUB_FLAG(sFanClubMemberIds[idx])) - { FLIP_TRAINER_FAN_CLUB_FLAG(sFanClubMemberIds[idx]); - } return idx; } @@ -4277,32 +4107,32 @@ void BufferFanClubTrainerName(void) u8 whichNPCTrainer = 0; switch (gSpecialVar_0x8004) { - case FANCLUB_MEMBER1: - break; - case FANCLUB_MEMBER2: - break; - case FANCLUB_MEMBER3: - whichLinkTrainer = 0; - whichNPCTrainer = 3; - break; - case FANCLUB_MEMBER4: - whichLinkTrainer = 0; - whichNPCTrainer = 1; - break; - case FANCLUB_MEMBER5: - whichLinkTrainer = 1; - whichNPCTrainer = 0; - break; - case FANCLUB_MEMBER6: - whichLinkTrainer = 0; - whichNPCTrainer = 4; - break; - case FANCLUB_MEMBER7: - whichLinkTrainer = 1; - whichNPCTrainer = 5; - break; - case FANCLUB_MEMBER8: - break; + case FANCLUB_MEMBER1: + break; + case FANCLUB_MEMBER2: + break; + case FANCLUB_MEMBER3: + whichLinkTrainer = 0; + whichNPCTrainer = 3; + break; + case FANCLUB_MEMBER4: + whichLinkTrainer = 0; + whichNPCTrainer = 1; + break; + case FANCLUB_MEMBER5: + whichLinkTrainer = 1; + whichNPCTrainer = 0; + break; + case FANCLUB_MEMBER6: + whichLinkTrainer = 0; + whichNPCTrainer = 4; + break; + case FANCLUB_MEMBER7: + whichLinkTrainer = 1; + whichNPCTrainer = 5; + break; + case FANCLUB_MEMBER8: + break; } BufferFanClubTrainerName_(&gSaveBlock1Ptr->linkBattleRecords, whichLinkTrainer, whichNPCTrainer); } @@ -4314,27 +4144,27 @@ static void BufferFanClubTrainerName_(struct LinkBattleRecords *linkRecords, u8 { switch (whichNPCTrainer) { - case 0: - StringCopy(gStringVar1, gText_Wallace); - break; - case 1: - StringCopy(gStringVar1, gText_Steven); - break; - case 2: - StringCopy(gStringVar1, gText_Brawly); - break; - case 3: - StringCopy(gStringVar1, gText_Winona); - break; - case 4: - StringCopy(gStringVar1, gText_Phoebe); - break; - case 5: - StringCopy(gStringVar1, gText_Glacia); - break; - default: - StringCopy(gStringVar1, gText_Wallace); - break; + case 0: + StringCopy(gStringVar1, gText_Wallace); + break; + case 1: + StringCopy(gStringVar1, gText_Steven); + break; + case 2: + StringCopy(gStringVar1, gText_Brawly); + break; + case 3: + StringCopy(gStringVar1, gText_Winona); + break; + case 4: + StringCopy(gStringVar1, gText_Phoebe); + break; + case 5: + StringCopy(gStringVar1, gText_Glacia); + break; + default: + StringCopy(gStringVar1, gText_Wallace); + break; } } else From 9e660b2cdfe7f8ff7cdd73601aae70f5fe09cf5c Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 31 Dec 2021 16:29:11 +0000 Subject: [PATCH 478/762] Update src/field_specials.c Co-authored-by: LOuroboros --- src/field_specials.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/field_specials.c b/src/field_specials.c index 27d8c93af7a5..b6d057d9f835 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -324,7 +324,8 @@ u8 GetSSTidalLocation(s8 *mapGroup, s8 *mapNum, s16 *x, s16 *y) *mapNum = MAP_NUM(ROUTE132); *x = 65 - *varCruiseStepCount; } - else if (*varCruiseStepCount < 146) { + else if (*varCruiseStepCount < 146) + { *mapNum = MAP_NUM(ROUTE133); *x = 145 - *varCruiseStepCount; } From 61a0036c47f67a3cb08dd7ac15375b011fa10f63 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 31 Dec 2021 17:34:46 +0000 Subject: [PATCH 479/762] Clarify ScrollableMultichoice_ProcessInput comment --- src/field_specials.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/field_specials.c b/src/field_specials.c index b6d057d9f835..bd6d53caf1df 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -2592,7 +2592,7 @@ static void ScrollableMultichoice_ProcessInput(u8 taskId) } else if (input == task->tNumItems - 1) { - // if selected option was the last one (Exit) + // Selected option was the last one (Exit) CloseScrollableMultichoice(taskId); } else From 2d536bf56054d558469fd965523269f69c48ed72 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Sun, 2 Jan 2022 21:02:53 +0000 Subject: [PATCH 480/762] Use TEXT_SKIP_DRAW in CreateAvailableDecorationsMenu --- src/trader.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/trader.c b/src/trader.c index 1d4424e75132..abe581db31fc 100644 --- a/src/trader.c +++ b/src/trader.c @@ -77,11 +77,11 @@ void CreateAvailableDecorationsMenu(u8 taskId) for (i = 0; i < 4; i++) { if (trader->decorations[i] > NUM_DECORATIONS) - AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); else - AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); } - AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, 255, NULL); + AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); InitMenuInUpperLeftCornerNormal(data[3], 5, 0); ScheduleBgCopyTilemapToVram(0); } From 48bf1ab98dc5e540b9674b087be25548c292d3f7 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Tue, 4 Jan 2022 13:46:46 +0000 Subject: [PATCH 481/762] Use SPECIES_NONE and ITEM_NONE in battle_tower.c --- src/battle_tower.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/battle_tower.c b/src/battle_tower.c index d1c95285b348..b747a3dc0db7 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1006,7 +1006,7 @@ static bool8 ChooseSpecialBattleTowerTrainer(void) validMons = 0; for (j = 0; j < MAX_FRONTIER_PARTY_SIZE; j++) { - if (gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species != 0 + if (gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species != SPECIES_NONE && gSaveBlock2Ptr->frontier.towerRecords[i].party[j].level <= GetFrontierEnemyMonLevel(lvlMode)) validMons++; } @@ -1664,7 +1664,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) // Record mixed player. for (j = 0, i = firstMonId; i < firstMonId + monCount; j++, i++) { - if (gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j].species != 0 + if (gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j].species != SPECIES_NONE && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j].level <= level) { CreateBattleTowerMon_HandleLevel(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[j], FALSE); @@ -1706,7 +1706,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) // Ensure this Pokemon's held item isn't a duplicate. for (j = 0; j < i + firstMonId; j++) { - if (GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) != 0 + if (GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) != ITEM_NONE && GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) break; } @@ -2244,7 +2244,7 @@ static void GetRecordMixFriendMultiPartnerParty(u16 trainerId) if (gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[i].species != species1 && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[i].species != species2 && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[i].level <= GetFrontierEnemyMonLevel(lvlMode) - && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[i].species != 0) + && gSaveBlock2Ptr->frontier.towerRecords[trainerId - TRAINER_RECORD_MIXING_FRIEND].party[i].species != SPECIES_NONE) { validSpecies[count] = i; count++; @@ -2383,7 +2383,7 @@ static void LoadMultiPartnerCandidatesData(void) if (species1 != gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species && species2 != gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species && gSaveBlock2Ptr->frontier.towerRecords[i].party[j].level <= GetFrontierEnemyMonLevel(lvlMode) - && gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species != 0) + && gSaveBlock2Ptr->frontier.towerRecords[i].party[j].species != SPECIES_NONE) { k++; } @@ -3410,7 +3410,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount) // Ensure this Pokemon's held item isn't a duplicate. for (j = 0; j < i + firstMonId; j++) { - if (GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) != 0 + if (GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) != ITEM_NONE && GetMonData(&gEnemyParty[j], MON_DATA_HELD_ITEM, NULL) == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) break; } From ce55e58ad83e57b7e1fde7eeb3c3c94365fe0f12 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 4 Jan 2022 10:09:42 -0500 Subject: [PATCH 482/762] Misc cleanup --- asm/macros/event.inc | 5 +-- data/script_cmd_table.inc | 12 +++--- include/bike.h | 10 ++--- src/bike.c | 26 ++++++------ src/field_control_avatar.c | 2 +- src/field_player_avatar.c | 2 +- src/field_tasks.c | 2 +- src/region_map.c | 37 +++++++++-------- src/rotating_gate.c | 12 ++---- src/scrcmd.c | 12 +++--- src/wallclock.c | 84 ++++++++++++++++---------------------- 11 files changed, 95 insertions(+), 109 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 28f010ef2834..8d65f602defd 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -604,9 +604,8 @@ .endm @ Blocks script execution until the movements being applied to the specified (localId) object finish. - @ If the specified object is 0, then the command will block script execution until all objects - @ affected by applymovement finish their movements. If the specified object is not currently being - @ manipulated with applymovement, then this command does nothing. + @ 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 no map is specified, then the current map is used. .macro waitmovement localId:req, map .ifb \map diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 48ec7918a434..51b7f966e4a9 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -80,16 +80,16 @@ gScriptCmdTable:: .4byte ScrCmd_checkdecor @ 0x4d .4byte ScrCmd_checkdecorspace @ 0x4e .4byte ScrCmd_applymovement @ 0x4f - .4byte ScrCmd_applymovement_at @ 0x50 + .4byte ScrCmd_applymovementat @ 0x50 .4byte ScrCmd_waitmovement @ 0x51 - .4byte ScrCmd_waitmovement_at @ 0x52 + .4byte ScrCmd_waitmovementat @ 0x52 .4byte ScrCmd_removeobject @ 0x53 - .4byte ScrCmd_removeobject_at @ 0x54 + .4byte ScrCmd_removeobjectat @ 0x54 .4byte ScrCmd_addobject @ 0x55 - .4byte ScrCmd_addobject_at @ 0x56 + .4byte ScrCmd_addobjectat @ 0x56 .4byte ScrCmd_setobjectxy @ 0x57 - .4byte ScrCmd_showobject_at @ 0x58 - .4byte ScrCmd_hideobject_at @ 0x59 + .4byte ScrCmd_showobjectat @ 0x58 + .4byte ScrCmd_hideobjectat @ 0x59 .4byte ScrCmd_faceplayer @ 0x5a .4byte ScrCmd_turnobject @ 0x5b .4byte ScrCmd_trainerbattle @ 0x5c diff --git a/include/bike.h b/include/bike.h index afe773d42ebb..00f11aefe33f 100644 --- a/include/bike.h +++ b/include/bike.h @@ -17,11 +17,11 @@ struct BikeHistoryInputInfo // Player speeds enum { - BIKE_SPEED_STANDING, - BIKE_SPEED_NORMAL, - BIKE_SPEED_FAST, - BIKE_SPEED_FASTER, - BIKE_SPEED_FASTEST, + PLAYER_SPEED_STANDING, + PLAYER_SPEED_NORMAL, + PLAYER_SPEED_FAST, + PLAYER_SPEED_FASTER, + PLAYER_SPEED_FASTEST, }; // mach bike transitions enum diff --git a/src/bike.c b/src/bike.c index 20166392e99f..c99d514cb6a5 100644 --- a/src/bike.c +++ b/src/bike.c @@ -108,7 +108,7 @@ static u8 (*const sAcroBikeInputHandlers[])(u8 *, u16, u16) = }; // used with bikeFrameCounter from mach bike -static const u16 sMachBikeSpeeds[] = {BIKE_SPEED_NORMAL, BIKE_SPEED_FAST, BIKE_SPEED_FASTEST}; +static const u16 sMachBikeSpeeds[] = {PLAYER_SPEED_NORMAL, PLAYER_SPEED_FAST, PLAYER_SPEED_FASTEST}; // this is a list of timers to compare against later, terminated with 0. the only timer being compared against is 4 frames in this list. static const u8 sAcroBikeJumpTimerList[] = {4, 0}; @@ -147,7 +147,7 @@ static u8 GetMachBikeTransition(u8 *dirTraveling) if (*dirTraveling == 0) { *dirTraveling = direction; // update the direction, since below we either faced a direction or we started moving. - if (gPlayerAvatar.bikeSpeed == BIKE_SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed == PLAYER_SPEED_STANDING) { gPlayerAvatar.runningState = NOT_MOVING; return MACH_TRANS_FACE_DIRECTION; @@ -159,7 +159,7 @@ static u8 GetMachBikeTransition(u8 *dirTraveling) // we need to check if the last traveled direction changed from the new direction as well as ensuring that we dont update the state while the player is moving: see the else check. if (*dirTraveling != direction && gPlayerAvatar.runningState != MOVING) { - if (gPlayerAvatar.bikeSpeed != BIKE_SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed != PLAYER_SPEED_STANDING) { *dirTraveling = direction; // implement the new direction gPlayerAvatar.runningState = MOVING; @@ -246,7 +246,7 @@ static void MachBikeTransition_TrySlowDown(u8 direction) { u8 collision; - if (gPlayerAvatar.bikeSpeed != BIKE_SPEED_STANDING) + if (gPlayerAvatar.bikeSpeed != PLAYER_SPEED_STANDING) gPlayerAvatar.bikeFrameCounter = --gPlayerAvatar.bikeSpeed; collision = GetBikeCollision(direction); @@ -306,7 +306,7 @@ static u8 AcroBikeHandleInputNormal(u8 *newDirection, u16 newKeys, u16 heldKeys) return ACRO_TRANS_FACE_DIRECTION; } } - if (*newDirection == direction && (heldKeys & B_BUTTON) && gPlayerAvatar.bikeSpeed == BIKE_SPEED_STANDING) + if (*newDirection == direction && (heldKeys & B_BUTTON) && gPlayerAvatar.bikeSpeed == PLAYER_SPEED_STANDING) { gPlayerAvatar.bikeSpeed++; gPlayerAvatar.acroBikeState = ACRO_STATE_WHEELIE_MOVING; @@ -342,7 +342,7 @@ static u8 AcroBikeHandleInputTurning(u8 *newDirection, u16 newKeys, u16 heldKeys if (*newDirection == AcroBike_GetJumpDirection()) { Bike_SetBikeStill(); // Bike_SetBikeStill sets speed to standing, but the next line immediately overrides it. could have just reset acroBikeState to 0 here instead of wasting a jump. - gPlayerAvatar.bikeSpeed = BIKE_SPEED_NORMAL; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_NORMAL; if (*newDirection == GetOppositeDirection(direction)) { // do a turn jump. @@ -775,7 +775,7 @@ static void AcroBike_TryHistoryUpdate(u16 newKeys, u16 heldKeys) // newKeys is u else { Bike_UpdateDirTimerHistory(direction); - gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; } direction = heldKeys & (A_BUTTON | B_BUTTON | SELECT_BUTTON | START_BUTTON); // directions is reused for some reason. @@ -787,7 +787,7 @@ static void AcroBike_TryHistoryUpdate(u16 newKeys, u16 heldKeys) // newKeys is u else { Bike_UpdateABStartSelectHistory(direction); - gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; } } @@ -994,7 +994,7 @@ void BikeClearState(int newDirHistory, int newAbStartHistory) gPlayerAvatar.acroBikeState = ACRO_STATE_NORMAL; gPlayerAvatar.newDirBackup = DIR_NONE; gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; gPlayerAvatar.directionHistory = newDirHistory; gPlayerAvatar.abStartSelectHistory = newAbStartHistory; @@ -1014,7 +1014,7 @@ void Bike_UpdateBikeCounterSpeed(u8 counter) static void Bike_SetBikeStill(void) { gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = BIKE_SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; } s16 GetPlayerSpeed(void) @@ -1027,11 +1027,11 @@ s16 GetPlayerSpeed(void) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE) return machSpeeds[gPlayerAvatar.bikeFrameCounter]; else if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_ACRO_BIKE) - return BIKE_SPEED_FASTER; + return PLAYER_SPEED_FASTER; else if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_SURFING | PLAYER_AVATAR_FLAG_DASH)) - return BIKE_SPEED_FAST; + return PLAYER_SPEED_FAST; else - return BIKE_SPEED_NORMAL; + return PLAYER_SPEED_NORMAL; } void Bike_HandleBumpySlopeJump(void) diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 8d6b564d2590..b5fcfdadfda0 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -94,7 +94,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys) if ((tileTransitionState == T_TILE_CENTER && forcedMove == FALSE) || tileTransitionState == T_NOT_MOVING) { - if (GetPlayerSpeed() != 4) + if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST) { if (newKeys & START_BUTTON) input->pressedStartButton = TRUE; diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 6cf468b3e00c..a5703b8bdb56 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -557,7 +557,7 @@ static bool8 ForcedMovement_MuddySlope(void) { struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; - if (playerObjEvent->movementDirection != DIR_NORTH || GetPlayerSpeed() <= 3) + if (playerObjEvent->movementDirection != DIR_NORTH || GetPlayerSpeed() < PLAYER_SPEED_FASTEST) { Bike_UpdateBikeCounterSpeed(0); playerObjEvent->facingDirectionLocked = TRUE; diff --git a/src/field_tasks.c b/src/field_tasks.c index 760d853693d9..244036471a9d 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -820,7 +820,7 @@ static void CrackedFloorPerStepCallback(u8 taskId) tPrevY = y; if (MetatileBehavior_IsCrackedFloor(behavior)) { - if (GetPlayerSpeed() != BIKE_SPEED_FASTEST) + if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST) VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty if (tFloor1Delay == 0) diff --git a/src/region_map.c b/src/region_map.c index 0dc90267425b..09e2d69bf2f5 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1516,28 +1516,26 @@ static void UnhideRegionMapPlayerIcon(void) } } +#define sY data[0] +#define sX data[1] +#define sVisible data[2] +#define sTimer data[7] + static void SpriteCB_PlayerIconMapZoomed(struct Sprite *sprite) { sprite->x2 = -2 * gRegionMap->scrollX; sprite->y2 = -2 * gRegionMap->scrollY; - sprite->data[0] = sprite->y + sprite->y2 + sprite->centerToCornerVecY; - sprite->data[1] = sprite->x + sprite->x2 + sprite->centerToCornerVecX; - if (sprite->data[0] < -8 || sprite->data[0] > 0xa8 || sprite->data[1] < -8 || sprite->data[1] > 0xf8) - { - sprite->data[2] = FALSE; - } + sprite->sY = sprite->y + sprite->y2 + sprite->centerToCornerVecY; + sprite->sX = sprite->x + sprite->x2 + sprite->centerToCornerVecX; + if (sprite->sY < -8 || sprite->sY > DISPLAY_HEIGHT + 8 || sprite->sX < -8 || sprite->sX > DISPLAY_WIDTH + 8) + sprite->sVisible = FALSE; else - { - sprite->data[2] = TRUE; - } - if (sprite->data[2] == TRUE) - { + sprite->sVisible = TRUE; + + if (sprite->sVisible == TRUE) SpriteCB_PlayerIcon(sprite); - } else - { sprite->invisible = TRUE; - } } static void SpriteCB_PlayerIconMapFull(struct Sprite *sprite) @@ -1549,9 +1547,9 @@ static void SpriteCB_PlayerIcon(struct Sprite *sprite) { if (gRegionMap->blinkPlayerIcon) { - if (++sprite->data[7] > 16) + if (++sprite->sTimer > 16) { - sprite->data[7] = 0; + sprite->sTimer = 0; sprite->invisible = sprite->invisible ? FALSE : TRUE; } } @@ -1567,6 +1565,11 @@ void TrySetPlayerIconBlink(void) gRegionMap->blinkPlayerIcon = TRUE; } +#undef sY +#undef sX +#undef sVisible +#undef sTimer + u8 *GetMapName(u8 *dest, u16 regionMapId, u16 padLength) { u8 *str; @@ -1709,7 +1712,7 @@ void CB2_OpenFlyMap(void) gMain.state++; break; case 7: - LoadPalette(sRegionMapFramePal, 0x10, 0x20); + LoadPalette(sRegionMapFramePal, 0x10, sizeof(sRegionMapFramePal)); PutWindowTilemap(2); FillWindowPixelBuffer(2, PIXEL_FILL(0)); AddTextPrinterParameterized(2, FONT_NORMAL, gText_FlyToWhere, 0, 1, 0, NULL); diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 23fbb3e1d6be..3f73698a8789 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -684,13 +684,11 @@ static void RotatingGate_LoadPuzzleConfig(void) { case PUZZLE_FORTREE_CITY_GYM: gRotatingGate_PuzzleConfig = sRotatingGate_FortreePuzzleConfig; - gRotatingGate_PuzzleCount = - sizeof(sRotatingGate_FortreePuzzleConfig) / sizeof(struct RotatingGatePuzzle); + gRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_FortreePuzzleConfig); break; case PUZZLE_ROUTE110_TRICK_HOUSE_PUZZLE6: gRotatingGate_PuzzleConfig = sRotatingGate_TrickHousePuzzleConfig; - gRotatingGate_PuzzleCount = - sizeof(sRotatingGate_TrickHousePuzzleConfig) / sizeof(struct RotatingGatePuzzle); + gRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_TrickHousePuzzleConfig); break; case PUZZLE_NONE: default: @@ -698,9 +696,7 @@ static void RotatingGate_LoadPuzzleConfig(void) } for (i = 0; i < ROTATING_GATE_PUZZLE_MAX - 1; i++) - { gRotatingGate_GateSpriteIds[i] = MAX_SPRITES; - } } static void RotatingGate_CreateGatesWithinViewport(s16 deltaX, s16 deltaY) @@ -773,7 +769,7 @@ static void SpriteCallback_RotatingGate(struct Sprite *sprite) { affineAnimation = orientation + 4; - if (GetPlayerSpeed() != 1) + if (GetPlayerSpeed() != PLAYER_SPEED_NORMAL) affineAnimation += 8; PlaySE(SE_ROTATING_GATE); @@ -783,7 +779,7 @@ static void SpriteCallback_RotatingGate(struct Sprite *sprite) { affineAnimation = orientation + 8; - if (GetPlayerSpeed() != 1) + if (GetPlayerSpeed() != PLAYER_SPEED_NORMAL) affineAnimation += 8; PlaySE(SE_ROTATING_GATE); diff --git a/src/scrcmd.c b/src/scrcmd.c index 2c18cb565e8c..4b7477fe1391 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -999,7 +999,7 @@ bool8 ScrCmd_applymovement(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_applymovement_at(struct ScriptContext *ctx) +bool8 ScrCmd_applymovementat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); const void *movementScript = (const void *)ScriptReadWord(ctx); @@ -1028,7 +1028,7 @@ bool8 ScrCmd_waitmovement(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_waitmovement_at(struct ScriptContext *ctx) +bool8 ScrCmd_waitmovementat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup; @@ -1052,7 +1052,7 @@ bool8 ScrCmd_removeobject(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_removeobject_at(struct ScriptContext *ctx) +bool8 ScrCmd_removeobjectat(struct ScriptContext *ctx) { u16 objectId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); @@ -1070,7 +1070,7 @@ bool8 ScrCmd_addobject(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_addobject_at(struct ScriptContext *ctx) +bool8 ScrCmd_addobjectat(struct ScriptContext *ctx) { u16 objectId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); @@ -1108,7 +1108,7 @@ bool8 ScrCmd_copyobjectxytoperm(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_showobject_at(struct ScriptContext *ctx) +bool8 ScrCmd_showobjectat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); @@ -1118,7 +1118,7 @@ bool8 ScrCmd_showobject_at(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_hideobject_at(struct ScriptContext *ctx) +bool8 ScrCmd_hideobjectat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); diff --git a/src/wallclock.c b/src/wallclock.c index 759b1d11ffbe..5e0fae3a1351 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -41,6 +41,8 @@ static void SpriteCB_HourHand(struct Sprite *sprite); static void SpriteCB_PMIndicator(struct Sprite *sprite); static void SpriteCB_AMIndicator(struct Sprite *sprite); +#define sTaskId data[0] + #define tMinuteHandAngle data[0] #define tHourHandAngle data[1] #define tHours data[2] @@ -696,21 +698,21 @@ void CB2_StartWallClock(void) gTasks[taskId].tHourHandAngle = 300; spriteId = CreateSprite(&sSpriteTemplate_MinuteHand, 120, 80, 1); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 0; spriteId = CreateSprite(&sSpriteTemplate_HourHand, 120, 80, 0); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 1; spriteId = CreateSprite(&sSpriteTemplate_PM, 120, 80, 2); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].data[1] = 45; spriteId = CreateSprite(&sSpriteTemplate_AM, 120, 80, 2); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].data[1] = 90; WallClockInit(); @@ -744,21 +746,21 @@ void CB2_ViewWallClock(void) } spriteId = CreateSprite(&sSpriteTemplate_MinuteHand, 120, 80, 1); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 0; spriteId = CreateSprite(&sSpriteTemplate_HourHand, 120, 80, 0); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 1; spriteId = CreateSprite(&sSpriteTemplate_PM, 120, 80, 2); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].data[1] = angle1; spriteId = CreateSprite(&sSpriteTemplate_AM, 120, 80, 2); - gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].sTaskId = taskId; gSprites[spriteId].data[1] = angle2; WallClockInit(); @@ -1015,7 +1017,7 @@ static void InitClockWithRtc(u8 taskId) static void SpriteCB_MinuteHand(struct Sprite *sprite) { - u16 angle = gTasks[sprite->data[0]].tMinuteHandAngle; + u16 angle = gTasks[sprite->sTaskId].tMinuteHandAngle; s16 sin = Sin2(angle) / 16; s16 cos = Cos2(angle) / 16; u16 x, y; @@ -1035,7 +1037,7 @@ static void SpriteCB_MinuteHand(struct Sprite *sprite) static void SpriteCB_HourHand(struct Sprite *sprite) { - u16 angle = gTasks[sprite->data[0]].tHourHandAngle; + u16 angle = gTasks[sprite->sTaskId].tHourHandAngle; s16 sin = Sin2(angle) / 16; s16 cos = Cos2(angle) / 16; u16 x, y; @@ -1053,58 +1055,44 @@ static void SpriteCB_HourHand(struct Sprite *sprite) sprite->y2 = y; } +#define sAngle data[1] + static void SpriteCB_PMIndicator(struct Sprite *sprite) { - if (gTasks[sprite->data[0]].tPeriod != PERIOD_AM) + if (gTasks[sprite->sTaskId].tPeriod != PERIOD_AM) { - if (sprite->data[1] >= 60 && sprite->data[1] < 90) - { - sprite->data[1] += 5; - } - if (sprite->data[1] < 60) - { - sprite->data[1]++; - } + if (sprite->sAngle >= 60 && sprite->sAngle < 90) + sprite->sAngle += 5; + if (sprite->sAngle < 60) + sprite->sAngle++; } else { - if (sprite->data[1] >= 46 && sprite->data[1] < 76) - { - sprite->data[1] -= 5; - } - if (sprite->data[1] > 75) - { - sprite->data[1]--; - } + if (sprite->sAngle >= 46 && sprite->sAngle < 76) + sprite->sAngle -= 5; + if (sprite->sAngle > 75) + sprite->sAngle--; } - sprite->x2 = Cos2(sprite->data[1]) * 30 / 0x1000; - sprite->y2 = Sin2(sprite->data[1]) * 30 / 0x1000; + sprite->x2 = Cos2(sprite->sAngle) * 30 / 0x1000; + sprite->y2 = Sin2(sprite->sAngle) * 30 / 0x1000; } static void SpriteCB_AMIndicator(struct Sprite *sprite) { - if (gTasks[sprite->data[0]].tPeriod != PERIOD_AM) + if (gTasks[sprite->sTaskId].tPeriod != PERIOD_AM) { - if (sprite->data[1] >= 105 && sprite->data[1] < 135) - { - sprite->data[1] += 5; - } - if (sprite->data[1] < 105) - { - sprite->data[1]++; - } + if (sprite->sAngle >= 105 && sprite->sAngle < 135) + sprite->sAngle += 5; + if (sprite->sAngle < 105) + sprite->sAngle++; } else { - if (sprite->data[1] >= 91 && sprite->data[1] < 121) - { - sprite->data[1] -= 5; - } - if (sprite->data[1] > 120) - { - sprite->data[1]--; - } + if (sprite->sAngle >= 91 && sprite->sAngle < 121) + sprite->sAngle -= 5; + if (sprite->sAngle > 120) + sprite->sAngle--; } - sprite->x2 = Cos2(sprite->data[1]) * 30 / 0x1000; - sprite->y2 = Sin2(sprite->data[1]) * 30 / 0x1000; + sprite->x2 = Cos2(sprite->sAngle) * 30 / 0x1000; + sprite->y2 = Sin2(sprite->sAngle) * 30 / 0x1000; } From 5d033c2e4d5001c65e85fdcf5c780e5b88307063 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 5 Jan 2022 12:18:49 -0500 Subject: [PATCH 483/762] Convert pokedex defines to enums --- include/constants/pokedex.h | 848 ++++++++++++++++++++++++++++++++++++ include/constants/species.h | 843 ----------------------------------- include/global.h | 13 +- src/pokedex.c | 2 +- 4 files changed, 857 insertions(+), 849 deletions(-) create mode 100644 include/constants/pokedex.h diff --git a/include/constants/pokedex.h b/include/constants/pokedex.h new file mode 100644 index 000000000000..7ee1b3760e58 --- /dev/null +++ b/include/constants/pokedex.h @@ -0,0 +1,848 @@ +#ifndef GUARD_CONSTANTS_POKEDEX_H +#define GUARD_CONSTANTS_POKEDEX_H + +// National Pokedex order +enum { + NATIONAL_DEX_NONE, + // Kanto + NATIONAL_DEX_BULBASAUR, + NATIONAL_DEX_IVYSAUR, + NATIONAL_DEX_VENUSAUR, + NATIONAL_DEX_CHARMANDER, + NATIONAL_DEX_CHARMELEON, + NATIONAL_DEX_CHARIZARD, + NATIONAL_DEX_SQUIRTLE, + NATIONAL_DEX_WARTORTLE, + NATIONAL_DEX_BLASTOISE, + NATIONAL_DEX_CATERPIE, + NATIONAL_DEX_METAPOD, + NATIONAL_DEX_BUTTERFREE, + NATIONAL_DEX_WEEDLE, + NATIONAL_DEX_KAKUNA, + NATIONAL_DEX_BEEDRILL, + NATIONAL_DEX_PIDGEY, + NATIONAL_DEX_PIDGEOTTO, + NATIONAL_DEX_PIDGEOT, + NATIONAL_DEX_RATTATA, + NATIONAL_DEX_RATICATE, + NATIONAL_DEX_SPEAROW, + NATIONAL_DEX_FEAROW, + NATIONAL_DEX_EKANS, + NATIONAL_DEX_ARBOK, + NATIONAL_DEX_PIKACHU, + NATIONAL_DEX_RAICHU, + NATIONAL_DEX_SANDSHREW, + NATIONAL_DEX_SANDSLASH, + NATIONAL_DEX_NIDORAN_F, + NATIONAL_DEX_NIDORINA, + NATIONAL_DEX_NIDOQUEEN, + NATIONAL_DEX_NIDORAN_M, + NATIONAL_DEX_NIDORINO, + NATIONAL_DEX_NIDOKING, + NATIONAL_DEX_CLEFAIRY, + NATIONAL_DEX_CLEFABLE, + NATIONAL_DEX_VULPIX, + NATIONAL_DEX_NINETALES, + NATIONAL_DEX_JIGGLYPUFF, + NATIONAL_DEX_WIGGLYTUFF, + NATIONAL_DEX_ZUBAT, + NATIONAL_DEX_GOLBAT, + NATIONAL_DEX_ODDISH, + NATIONAL_DEX_GLOOM, + NATIONAL_DEX_VILEPLUME, + NATIONAL_DEX_PARAS, + NATIONAL_DEX_PARASECT, + NATIONAL_DEX_VENONAT, + NATIONAL_DEX_VENOMOTH, + NATIONAL_DEX_DIGLETT, + NATIONAL_DEX_DUGTRIO, + NATIONAL_DEX_MEOWTH, + NATIONAL_DEX_PERSIAN, + NATIONAL_DEX_PSYDUCK, + NATIONAL_DEX_GOLDUCK, + NATIONAL_DEX_MANKEY, + NATIONAL_DEX_PRIMEAPE, + NATIONAL_DEX_GROWLITHE, + NATIONAL_DEX_ARCANINE, + NATIONAL_DEX_POLIWAG, + NATIONAL_DEX_POLIWHIRL, + NATIONAL_DEX_POLIWRATH, + NATIONAL_DEX_ABRA, + NATIONAL_DEX_KADABRA, + NATIONAL_DEX_ALAKAZAM, + NATIONAL_DEX_MACHOP, + NATIONAL_DEX_MACHOKE, + NATIONAL_DEX_MACHAMP, + NATIONAL_DEX_BELLSPROUT, + NATIONAL_DEX_WEEPINBELL, + NATIONAL_DEX_VICTREEBEL, + NATIONAL_DEX_TENTACOOL, + NATIONAL_DEX_TENTACRUEL, + NATIONAL_DEX_GEODUDE, + NATIONAL_DEX_GRAVELER, + NATIONAL_DEX_GOLEM, + NATIONAL_DEX_PONYTA, + NATIONAL_DEX_RAPIDASH, + NATIONAL_DEX_SLOWPOKE, + NATIONAL_DEX_SLOWBRO, + NATIONAL_DEX_MAGNEMITE, + NATIONAL_DEX_MAGNETON, + NATIONAL_DEX_FARFETCHD, + NATIONAL_DEX_DODUO, + NATIONAL_DEX_DODRIO, + NATIONAL_DEX_SEEL, + NATIONAL_DEX_DEWGONG, + NATIONAL_DEX_GRIMER, + NATIONAL_DEX_MUK, + NATIONAL_DEX_SHELLDER, + NATIONAL_DEX_CLOYSTER, + NATIONAL_DEX_GASTLY, + NATIONAL_DEX_HAUNTER, + NATIONAL_DEX_GENGAR, + NATIONAL_DEX_ONIX, + NATIONAL_DEX_DROWZEE, + NATIONAL_DEX_HYPNO, + NATIONAL_DEX_KRABBY, + NATIONAL_DEX_KINGLER, + NATIONAL_DEX_VOLTORB, + NATIONAL_DEX_ELECTRODE, + NATIONAL_DEX_EXEGGCUTE, + NATIONAL_DEX_EXEGGUTOR, + NATIONAL_DEX_CUBONE, + NATIONAL_DEX_MAROWAK, + NATIONAL_DEX_HITMONLEE, + NATIONAL_DEX_HITMONCHAN, + NATIONAL_DEX_LICKITUNG, + NATIONAL_DEX_KOFFING, + NATIONAL_DEX_WEEZING, + NATIONAL_DEX_RHYHORN, + NATIONAL_DEX_RHYDON, + NATIONAL_DEX_CHANSEY, + NATIONAL_DEX_TANGELA, + NATIONAL_DEX_KANGASKHAN, + NATIONAL_DEX_HORSEA, + NATIONAL_DEX_SEADRA, + NATIONAL_DEX_GOLDEEN, + NATIONAL_DEX_SEAKING, + NATIONAL_DEX_STARYU, + NATIONAL_DEX_STARMIE, + NATIONAL_DEX_MR_MIME, + NATIONAL_DEX_SCYTHER, + NATIONAL_DEX_JYNX, + NATIONAL_DEX_ELECTABUZZ, + NATIONAL_DEX_MAGMAR, + NATIONAL_DEX_PINSIR, + NATIONAL_DEX_TAUROS, + NATIONAL_DEX_MAGIKARP, + NATIONAL_DEX_GYARADOS, + NATIONAL_DEX_LAPRAS, + NATIONAL_DEX_DITTO, + NATIONAL_DEX_EEVEE, + NATIONAL_DEX_VAPOREON, + NATIONAL_DEX_JOLTEON, + NATIONAL_DEX_FLAREON, + NATIONAL_DEX_PORYGON, + NATIONAL_DEX_OMANYTE, + NATIONAL_DEX_OMASTAR, + NATIONAL_DEX_KABUTO, + NATIONAL_DEX_KABUTOPS, + NATIONAL_DEX_AERODACTYL, + NATIONAL_DEX_SNORLAX, + NATIONAL_DEX_ARTICUNO, + NATIONAL_DEX_ZAPDOS, + NATIONAL_DEX_MOLTRES, + NATIONAL_DEX_DRATINI, + NATIONAL_DEX_DRAGONAIR, + NATIONAL_DEX_DRAGONITE, + NATIONAL_DEX_MEWTWO, + NATIONAL_DEX_MEW, + // Johto + NATIONAL_DEX_CHIKORITA, + NATIONAL_DEX_BAYLEEF, + NATIONAL_DEX_MEGANIUM, + NATIONAL_DEX_CYNDAQUIL, + NATIONAL_DEX_QUILAVA, + NATIONAL_DEX_TYPHLOSION, + NATIONAL_DEX_TOTODILE, + NATIONAL_DEX_CROCONAW, + NATIONAL_DEX_FERALIGATR, + NATIONAL_DEX_SENTRET, + NATIONAL_DEX_FURRET, + NATIONAL_DEX_HOOTHOOT, + NATIONAL_DEX_NOCTOWL, + NATIONAL_DEX_LEDYBA, + NATIONAL_DEX_LEDIAN, + NATIONAL_DEX_SPINARAK, + NATIONAL_DEX_ARIADOS, + NATIONAL_DEX_CROBAT, + NATIONAL_DEX_CHINCHOU, + NATIONAL_DEX_LANTURN, + NATIONAL_DEX_PICHU, + NATIONAL_DEX_CLEFFA, + NATIONAL_DEX_IGGLYBUFF, + NATIONAL_DEX_TOGEPI, + NATIONAL_DEX_TOGETIC, + NATIONAL_DEX_NATU, + NATIONAL_DEX_XATU, + NATIONAL_DEX_MAREEP, + NATIONAL_DEX_FLAAFFY, + NATIONAL_DEX_AMPHAROS, + NATIONAL_DEX_BELLOSSOM, + NATIONAL_DEX_MARILL, + NATIONAL_DEX_AZUMARILL, + NATIONAL_DEX_SUDOWOODO, + NATIONAL_DEX_POLITOED, + NATIONAL_DEX_HOPPIP, + NATIONAL_DEX_SKIPLOOM, + NATIONAL_DEX_JUMPLUFF, + NATIONAL_DEX_AIPOM, + NATIONAL_DEX_SUNKERN, + NATIONAL_DEX_SUNFLORA, + NATIONAL_DEX_YANMA, + NATIONAL_DEX_WOOPER, + NATIONAL_DEX_QUAGSIRE, + NATIONAL_DEX_ESPEON, + NATIONAL_DEX_UMBREON, + NATIONAL_DEX_MURKROW, + NATIONAL_DEX_SLOWKING, + NATIONAL_DEX_MISDREAVUS, + NATIONAL_DEX_UNOWN, + NATIONAL_DEX_WOBBUFFET, + NATIONAL_DEX_GIRAFARIG, + NATIONAL_DEX_PINECO, + NATIONAL_DEX_FORRETRESS, + NATIONAL_DEX_DUNSPARCE, + NATIONAL_DEX_GLIGAR, + NATIONAL_DEX_STEELIX, + NATIONAL_DEX_SNUBBULL, + NATIONAL_DEX_GRANBULL, + NATIONAL_DEX_QWILFISH, + NATIONAL_DEX_SCIZOR, + NATIONAL_DEX_SHUCKLE, + NATIONAL_DEX_HERACROSS, + NATIONAL_DEX_SNEASEL, + NATIONAL_DEX_TEDDIURSA, + NATIONAL_DEX_URSARING, + NATIONAL_DEX_SLUGMA, + NATIONAL_DEX_MAGCARGO, + NATIONAL_DEX_SWINUB, + NATIONAL_DEX_PILOSWINE, + NATIONAL_DEX_CORSOLA, + NATIONAL_DEX_REMORAID, + NATIONAL_DEX_OCTILLERY, + NATIONAL_DEX_DELIBIRD, + NATIONAL_DEX_MANTINE, + NATIONAL_DEX_SKARMORY, + NATIONAL_DEX_HOUNDOUR, + NATIONAL_DEX_HOUNDOOM, + NATIONAL_DEX_KINGDRA, + NATIONAL_DEX_PHANPY, + NATIONAL_DEX_DONPHAN, + NATIONAL_DEX_PORYGON2, + NATIONAL_DEX_STANTLER, + NATIONAL_DEX_SMEARGLE, + NATIONAL_DEX_TYROGUE, + NATIONAL_DEX_HITMONTOP, + NATIONAL_DEX_SMOOCHUM, + NATIONAL_DEX_ELEKID, + NATIONAL_DEX_MAGBY, + NATIONAL_DEX_MILTANK, + NATIONAL_DEX_BLISSEY, + NATIONAL_DEX_RAIKOU, + NATIONAL_DEX_ENTEI, + NATIONAL_DEX_SUICUNE, + NATIONAL_DEX_LARVITAR, + NATIONAL_DEX_PUPITAR, + NATIONAL_DEX_TYRANITAR, + NATIONAL_DEX_LUGIA, + NATIONAL_DEX_HO_OH, + NATIONAL_DEX_CELEBI, + // Hoenn + NATIONAL_DEX_TREECKO, + NATIONAL_DEX_GROVYLE, + NATIONAL_DEX_SCEPTILE, + NATIONAL_DEX_TORCHIC, + NATIONAL_DEX_COMBUSKEN, + NATIONAL_DEX_BLAZIKEN, + NATIONAL_DEX_MUDKIP, + NATIONAL_DEX_MARSHTOMP, + NATIONAL_DEX_SWAMPERT, + NATIONAL_DEX_POOCHYENA, + NATIONAL_DEX_MIGHTYENA, + NATIONAL_DEX_ZIGZAGOON, + NATIONAL_DEX_LINOONE, + NATIONAL_DEX_WURMPLE, + NATIONAL_DEX_SILCOON, + NATIONAL_DEX_BEAUTIFLY, + NATIONAL_DEX_CASCOON, + NATIONAL_DEX_DUSTOX, + NATIONAL_DEX_LOTAD, + NATIONAL_DEX_LOMBRE, + NATIONAL_DEX_LUDICOLO, + NATIONAL_DEX_SEEDOT, + NATIONAL_DEX_NUZLEAF, + NATIONAL_DEX_SHIFTRY, + NATIONAL_DEX_TAILLOW, + NATIONAL_DEX_SWELLOW, + NATIONAL_DEX_WINGULL, + NATIONAL_DEX_PELIPPER, + NATIONAL_DEX_RALTS, + NATIONAL_DEX_KIRLIA, + NATIONAL_DEX_GARDEVOIR, + NATIONAL_DEX_SURSKIT, + NATIONAL_DEX_MASQUERAIN, + NATIONAL_DEX_SHROOMISH, + NATIONAL_DEX_BRELOOM, + NATIONAL_DEX_SLAKOTH, + NATIONAL_DEX_VIGOROTH, + NATIONAL_DEX_SLAKING, + NATIONAL_DEX_NINCADA, + NATIONAL_DEX_NINJASK, + NATIONAL_DEX_SHEDINJA, + NATIONAL_DEX_WHISMUR, + NATIONAL_DEX_LOUDRED, + NATIONAL_DEX_EXPLOUD, + NATIONAL_DEX_MAKUHITA, + NATIONAL_DEX_HARIYAMA, + NATIONAL_DEX_AZURILL, + NATIONAL_DEX_NOSEPASS, + NATIONAL_DEX_SKITTY, + NATIONAL_DEX_DELCATTY, + NATIONAL_DEX_SABLEYE, + NATIONAL_DEX_MAWILE, + NATIONAL_DEX_ARON, + NATIONAL_DEX_LAIRON, + NATIONAL_DEX_AGGRON, + NATIONAL_DEX_MEDITITE, + NATIONAL_DEX_MEDICHAM, + NATIONAL_DEX_ELECTRIKE, + NATIONAL_DEX_MANECTRIC, + NATIONAL_DEX_PLUSLE, + NATIONAL_DEX_MINUN, + NATIONAL_DEX_VOLBEAT, + NATIONAL_DEX_ILLUMISE, + NATIONAL_DEX_ROSELIA, + NATIONAL_DEX_GULPIN, + NATIONAL_DEX_SWALOT, + NATIONAL_DEX_CARVANHA, + NATIONAL_DEX_SHARPEDO, + NATIONAL_DEX_WAILMER, + NATIONAL_DEX_WAILORD, + NATIONAL_DEX_NUMEL, + NATIONAL_DEX_CAMERUPT, + NATIONAL_DEX_TORKOAL, + NATIONAL_DEX_SPOINK, + NATIONAL_DEX_GRUMPIG, + NATIONAL_DEX_SPINDA, + NATIONAL_DEX_TRAPINCH, + NATIONAL_DEX_VIBRAVA, + NATIONAL_DEX_FLYGON, + NATIONAL_DEX_CACNEA, + NATIONAL_DEX_CACTURNE, + NATIONAL_DEX_SWABLU, + NATIONAL_DEX_ALTARIA, + NATIONAL_DEX_ZANGOOSE, + NATIONAL_DEX_SEVIPER, + NATIONAL_DEX_LUNATONE, + NATIONAL_DEX_SOLROCK, + NATIONAL_DEX_BARBOACH, + NATIONAL_DEX_WHISCASH, + NATIONAL_DEX_CORPHISH, + NATIONAL_DEX_CRAWDAUNT, + NATIONAL_DEX_BALTOY, + NATIONAL_DEX_CLAYDOL, + NATIONAL_DEX_LILEEP, + NATIONAL_DEX_CRADILY, + NATIONAL_DEX_ANORITH, + NATIONAL_DEX_ARMALDO, + NATIONAL_DEX_FEEBAS, + NATIONAL_DEX_MILOTIC, + NATIONAL_DEX_CASTFORM, + NATIONAL_DEX_KECLEON, + NATIONAL_DEX_SHUPPET, + NATIONAL_DEX_BANETTE, + NATIONAL_DEX_DUSKULL, + NATIONAL_DEX_DUSCLOPS, + NATIONAL_DEX_TROPIUS, + NATIONAL_DEX_CHIMECHO, + NATIONAL_DEX_ABSOL, + NATIONAL_DEX_WYNAUT, + NATIONAL_DEX_SNORUNT, + NATIONAL_DEX_GLALIE, + NATIONAL_DEX_SPHEAL, + NATIONAL_DEX_SEALEO, + NATIONAL_DEX_WALREIN, + NATIONAL_DEX_CLAMPERL, + NATIONAL_DEX_HUNTAIL, + NATIONAL_DEX_GOREBYSS, + NATIONAL_DEX_RELICANTH, + NATIONAL_DEX_LUVDISC, + NATIONAL_DEX_BAGON, + NATIONAL_DEX_SHELGON, + NATIONAL_DEX_SALAMENCE, + NATIONAL_DEX_BELDUM, + NATIONAL_DEX_METANG, + NATIONAL_DEX_METAGROSS, + NATIONAL_DEX_REGIROCK, + NATIONAL_DEX_REGICE, + NATIONAL_DEX_REGISTEEL, + NATIONAL_DEX_LATIAS, + NATIONAL_DEX_LATIOS, + NATIONAL_DEX_KYOGRE, + NATIONAL_DEX_GROUDON, + NATIONAL_DEX_RAYQUAZA, + NATIONAL_DEX_JIRACHI, + NATIONAL_DEX_DEOXYS, + // Old Unown + NATIONAL_DEX_OLD_UNOWN_B, + NATIONAL_DEX_OLD_UNOWN_C, + NATIONAL_DEX_OLD_UNOWN_D, + NATIONAL_DEX_OLD_UNOWN_E, + NATIONAL_DEX_OLD_UNOWN_F, + NATIONAL_DEX_OLD_UNOWN_G, + NATIONAL_DEX_OLD_UNOWN_H, + NATIONAL_DEX_OLD_UNOWN_I, + NATIONAL_DEX_OLD_UNOWN_J, + NATIONAL_DEX_OLD_UNOWN_K, + NATIONAL_DEX_OLD_UNOWN_L, + NATIONAL_DEX_OLD_UNOWN_M, + NATIONAL_DEX_OLD_UNOWN_N, + NATIONAL_DEX_OLD_UNOWN_O, + NATIONAL_DEX_OLD_UNOWN_P, + NATIONAL_DEX_OLD_UNOWN_Q, + NATIONAL_DEX_OLD_UNOWN_R, + NATIONAL_DEX_OLD_UNOWN_S, + NATIONAL_DEX_OLD_UNOWN_T, + NATIONAL_DEX_OLD_UNOWN_U, + NATIONAL_DEX_OLD_UNOWN_V, + NATIONAL_DEX_OLD_UNOWN_W, + NATIONAL_DEX_OLD_UNOWN_X, + NATIONAL_DEX_OLD_UNOWN_Y, + NATIONAL_DEX_OLD_UNOWN_Z, +}; + +#define KANTO_DEX_COUNT NATIONAL_DEX_MEW +#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI +#define NATIONAL_DEX_COUNT NATIONAL_DEX_DEOXYS + +// Hoenn Pokedex order +enum { + HOENN_DEX_NONE, + HOENN_DEX_TREECKO, + HOENN_DEX_GROVYLE, + HOENN_DEX_SCEPTILE, + HOENN_DEX_TORCHIC, + HOENN_DEX_COMBUSKEN, + HOENN_DEX_BLAZIKEN, + HOENN_DEX_MUDKIP, + HOENN_DEX_MARSHTOMP, + HOENN_DEX_SWAMPERT, + HOENN_DEX_POOCHYENA, + HOENN_DEX_MIGHTYENA, + HOENN_DEX_ZIGZAGOON, + HOENN_DEX_LINOONE, + HOENN_DEX_WURMPLE, + HOENN_DEX_SILCOON, + HOENN_DEX_BEAUTIFLY, + HOENN_DEX_CASCOON, + HOENN_DEX_DUSTOX, + HOENN_DEX_LOTAD, + HOENN_DEX_LOMBRE, + HOENN_DEX_LUDICOLO, + HOENN_DEX_SEEDOT, + HOENN_DEX_NUZLEAF, + HOENN_DEX_SHIFTRY, + HOENN_DEX_TAILLOW, + HOENN_DEX_SWELLOW, + HOENN_DEX_WINGULL, + HOENN_DEX_PELIPPER, + HOENN_DEX_RALTS, + HOENN_DEX_KIRLIA, + HOENN_DEX_GARDEVOIR, + HOENN_DEX_SURSKIT, + HOENN_DEX_MASQUERAIN, + HOENN_DEX_SHROOMISH, + HOENN_DEX_BRELOOM, + HOENN_DEX_SLAKOTH, + HOENN_DEX_VIGOROTH, + HOENN_DEX_SLAKING, + HOENN_DEX_ABRA, + HOENN_DEX_KADABRA, + HOENN_DEX_ALAKAZAM, + HOENN_DEX_NINCADA, + HOENN_DEX_NINJASK, + HOENN_DEX_SHEDINJA, + HOENN_DEX_WHISMUR, + HOENN_DEX_LOUDRED, + HOENN_DEX_EXPLOUD, + HOENN_DEX_MAKUHITA, + HOENN_DEX_HARIYAMA, + HOENN_DEX_GOLDEEN, + HOENN_DEX_SEAKING, + HOENN_DEX_MAGIKARP, + HOENN_DEX_GYARADOS, + HOENN_DEX_AZURILL, + HOENN_DEX_MARILL, + HOENN_DEX_AZUMARILL, + HOENN_DEX_GEODUDE, + HOENN_DEX_GRAVELER, + HOENN_DEX_GOLEM, + HOENN_DEX_NOSEPASS, + HOENN_DEX_SKITTY, + HOENN_DEX_DELCATTY, + HOENN_DEX_ZUBAT, + HOENN_DEX_GOLBAT, + HOENN_DEX_CROBAT, + HOENN_DEX_TENTACOOL, + HOENN_DEX_TENTACRUEL, + HOENN_DEX_SABLEYE, + HOENN_DEX_MAWILE, + HOENN_DEX_ARON, + HOENN_DEX_LAIRON, + HOENN_DEX_AGGRON, + HOENN_DEX_MACHOP, + HOENN_DEX_MACHOKE, + HOENN_DEX_MACHAMP, + HOENN_DEX_MEDITITE, + HOENN_DEX_MEDICHAM, + HOENN_DEX_ELECTRIKE, + HOENN_DEX_MANECTRIC, + HOENN_DEX_PLUSLE, + HOENN_DEX_MINUN, + HOENN_DEX_MAGNEMITE, + HOENN_DEX_MAGNETON, + HOENN_DEX_VOLTORB, + HOENN_DEX_ELECTRODE, + HOENN_DEX_VOLBEAT, + HOENN_DEX_ILLUMISE, + HOENN_DEX_ODDISH, + HOENN_DEX_GLOOM, + HOENN_DEX_VILEPLUME, + HOENN_DEX_BELLOSSOM, + HOENN_DEX_DODUO, + HOENN_DEX_DODRIO, + HOENN_DEX_ROSELIA, + HOENN_DEX_GULPIN, + HOENN_DEX_SWALOT, + HOENN_DEX_CARVANHA, + HOENN_DEX_SHARPEDO, + HOENN_DEX_WAILMER, + HOENN_DEX_WAILORD, + HOENN_DEX_NUMEL, + HOENN_DEX_CAMERUPT, + HOENN_DEX_SLUGMA, + HOENN_DEX_MAGCARGO, + HOENN_DEX_TORKOAL, + HOENN_DEX_GRIMER, + HOENN_DEX_MUK, + HOENN_DEX_KOFFING, + HOENN_DEX_WEEZING, + HOENN_DEX_SPOINK, + HOENN_DEX_GRUMPIG, + HOENN_DEX_SANDSHREW, + HOENN_DEX_SANDSLASH, + HOENN_DEX_SPINDA, + HOENN_DEX_SKARMORY, + HOENN_DEX_TRAPINCH, + HOENN_DEX_VIBRAVA, + HOENN_DEX_FLYGON, + HOENN_DEX_CACNEA, + HOENN_DEX_CACTURNE, + HOENN_DEX_SWABLU, + HOENN_DEX_ALTARIA, + HOENN_DEX_ZANGOOSE, + HOENN_DEX_SEVIPER, + HOENN_DEX_LUNATONE, + HOENN_DEX_SOLROCK, + HOENN_DEX_BARBOACH, + HOENN_DEX_WHISCASH, + HOENN_DEX_CORPHISH, + HOENN_DEX_CRAWDAUNT, + HOENN_DEX_BALTOY, + HOENN_DEX_CLAYDOL, + HOENN_DEX_LILEEP, + HOENN_DEX_CRADILY, + HOENN_DEX_ANORITH, + HOENN_DEX_ARMALDO, + HOENN_DEX_IGGLYBUFF, + HOENN_DEX_JIGGLYPUFF, + HOENN_DEX_WIGGLYTUFF, + HOENN_DEX_FEEBAS, + HOENN_DEX_MILOTIC, + HOENN_DEX_CASTFORM, + HOENN_DEX_STARYU, + HOENN_DEX_STARMIE, + HOENN_DEX_KECLEON, + HOENN_DEX_SHUPPET, + HOENN_DEX_BANETTE, + HOENN_DEX_DUSKULL, + HOENN_DEX_DUSCLOPS, + HOENN_DEX_TROPIUS, + HOENN_DEX_CHIMECHO, + HOENN_DEX_ABSOL, + HOENN_DEX_VULPIX, + HOENN_DEX_NINETALES, + HOENN_DEX_PICHU, + HOENN_DEX_PIKACHU, + HOENN_DEX_RAICHU, + HOENN_DEX_PSYDUCK, + HOENN_DEX_GOLDUCK, + HOENN_DEX_WYNAUT, + HOENN_DEX_WOBBUFFET, + HOENN_DEX_NATU, + HOENN_DEX_XATU, + HOENN_DEX_GIRAFARIG, + HOENN_DEX_PHANPY, + HOENN_DEX_DONPHAN, + HOENN_DEX_PINSIR, + HOENN_DEX_HERACROSS, + HOENN_DEX_RHYHORN, + HOENN_DEX_RHYDON, + HOENN_DEX_SNORUNT, + HOENN_DEX_GLALIE, + HOENN_DEX_SPHEAL, + HOENN_DEX_SEALEO, + HOENN_DEX_WALREIN, + HOENN_DEX_CLAMPERL, + HOENN_DEX_HUNTAIL, + HOENN_DEX_GOREBYSS, + HOENN_DEX_RELICANTH, + HOENN_DEX_CORSOLA, + HOENN_DEX_CHINCHOU, + HOENN_DEX_LANTURN, + HOENN_DEX_LUVDISC, + HOENN_DEX_HORSEA, + HOENN_DEX_SEADRA, + HOENN_DEX_KINGDRA, + HOENN_DEX_BAGON, + HOENN_DEX_SHELGON, + HOENN_DEX_SALAMENCE, + HOENN_DEX_BELDUM, + HOENN_DEX_METANG, + HOENN_DEX_METAGROSS, + HOENN_DEX_REGIROCK, + HOENN_DEX_REGICE, + HOENN_DEX_REGISTEEL, + HOENN_DEX_LATIAS, + HOENN_DEX_LATIOS, + HOENN_DEX_KYOGRE, + HOENN_DEX_GROUDON, + HOENN_DEX_RAYQUAZA, + HOENN_DEX_JIRACHI, + HOENN_DEX_DEOXYS, + // End of Hoenn Dex (see HOENN_DEX_COUNT) + // Here below have values but are excluded from the Pokedex + HOENN_DEX_BULBASAUR, + HOENN_DEX_IVYSAUR, + HOENN_DEX_VENUSAUR, + HOENN_DEX_CHARMANDER, + HOENN_DEX_CHARMELEON, + HOENN_DEX_CHARIZARD, + HOENN_DEX_SQUIRTLE, + HOENN_DEX_WARTORTLE, + HOENN_DEX_BLASTOISE, + HOENN_DEX_CATERPIE, + HOENN_DEX_METAPOD, + HOENN_DEX_BUTTERFREE, + HOENN_DEX_WEEDLE, + HOENN_DEX_KAKUNA, + HOENN_DEX_BEEDRILL, + HOENN_DEX_PIDGEY, + HOENN_DEX_PIDGEOTTO, + HOENN_DEX_PIDGEOT, + HOENN_DEX_RATTATA, + HOENN_DEX_RATICATE, + HOENN_DEX_SPEAROW, + HOENN_DEX_FEAROW, + HOENN_DEX_EKANS, + HOENN_DEX_ARBOK, + HOENN_DEX_NIDORAN_F, + HOENN_DEX_NIDORINA, + HOENN_DEX_NIDOQUEEN, + HOENN_DEX_NIDORAN_M, + HOENN_DEX_NIDORINO, + HOENN_DEX_NIDOKING, + HOENN_DEX_CLEFAIRY, + HOENN_DEX_CLEFABLE, + HOENN_DEX_PARAS, + HOENN_DEX_PARASECT, + HOENN_DEX_VENONAT, + HOENN_DEX_VENOMOTH, + HOENN_DEX_DIGLETT, + HOENN_DEX_DUGTRIO, + HOENN_DEX_MEOWTH, + HOENN_DEX_PERSIAN, + HOENN_DEX_MANKEY, + HOENN_DEX_PRIMEAPE, + HOENN_DEX_GROWLITHE, + HOENN_DEX_ARCANINE, + HOENN_DEX_POLIWAG, + HOENN_DEX_POLIWHIRL, + HOENN_DEX_POLIWRATH, + HOENN_DEX_BELLSPROUT, + HOENN_DEX_WEEPINBELL, + HOENN_DEX_VICTREEBEL, + HOENN_DEX_PONYTA, + HOENN_DEX_RAPIDASH, + HOENN_DEX_SLOWPOKE, + HOENN_DEX_SLOWBRO, + HOENN_DEX_FARFETCHD, + HOENN_DEX_SEEL, + HOENN_DEX_DEWGONG, + HOENN_DEX_SHELLDER, + HOENN_DEX_CLOYSTER, + HOENN_DEX_GASTLY, + HOENN_DEX_HAUNTER, + HOENN_DEX_GENGAR, + HOENN_DEX_ONIX, + HOENN_DEX_DROWZEE, + HOENN_DEX_HYPNO, + HOENN_DEX_KRABBY, + HOENN_DEX_KINGLER, + HOENN_DEX_EXEGGCUTE, + HOENN_DEX_EXEGGUTOR, + HOENN_DEX_CUBONE, + HOENN_DEX_MAROWAK, + HOENN_DEX_HITMONLEE, + HOENN_DEX_HITMONCHAN, + HOENN_DEX_LICKITUNG, + HOENN_DEX_CHANSEY, + HOENN_DEX_TANGELA, + HOENN_DEX_KANGASKHAN, + HOENN_DEX_MR_MIME, + HOENN_DEX_SCYTHER, + HOENN_DEX_JYNX, + HOENN_DEX_ELECTABUZZ, + HOENN_DEX_MAGMAR, + HOENN_DEX_TAUROS, + HOENN_DEX_LAPRAS, + HOENN_DEX_DITTO, + HOENN_DEX_EEVEE, + HOENN_DEX_VAPOREON, + HOENN_DEX_JOLTEON, + HOENN_DEX_FLAREON, + HOENN_DEX_PORYGON, + HOENN_DEX_OMANYTE, + HOENN_DEX_OMASTAR, + HOENN_DEX_KABUTO, + HOENN_DEX_KABUTOPS, + HOENN_DEX_AERODACTYL, + HOENN_DEX_SNORLAX, + HOENN_DEX_ARTICUNO, + HOENN_DEX_ZAPDOS, + HOENN_DEX_MOLTRES, + HOENN_DEX_DRATINI, + HOENN_DEX_DRAGONAIR, + HOENN_DEX_DRAGONITE, + HOENN_DEX_MEWTWO, + HOENN_DEX_MEW, + HOENN_DEX_CHIKORITA, + HOENN_DEX_BAYLEEF, + HOENN_DEX_MEGANIUM, + HOENN_DEX_CYNDAQUIL, + HOENN_DEX_QUILAVA, + HOENN_DEX_TYPHLOSION, + HOENN_DEX_TOTODILE, + HOENN_DEX_CROCONAW, + HOENN_DEX_FERALIGATR, + HOENN_DEX_SENTRET, + HOENN_DEX_FURRET, + HOENN_DEX_HOOTHOOT, + HOENN_DEX_NOCTOWL, + HOENN_DEX_LEDYBA, + HOENN_DEX_LEDIAN, + HOENN_DEX_SPINARAK, + HOENN_DEX_ARIADOS, + HOENN_DEX_CLEFFA, + HOENN_DEX_TOGEPI, + HOENN_DEX_TOGETIC, + HOENN_DEX_MAREEP, + HOENN_DEX_FLAAFFY, + HOENN_DEX_AMPHAROS, + HOENN_DEX_SUDOWOODO, + HOENN_DEX_POLITOED, + HOENN_DEX_HOPPIP, + HOENN_DEX_SKIPLOOM, + HOENN_DEX_JUMPLUFF, + HOENN_DEX_AIPOM, + HOENN_DEX_SUNKERN, + HOENN_DEX_SUNFLORA, + HOENN_DEX_YANMA, + HOENN_DEX_WOOPER, + HOENN_DEX_QUAGSIRE, + HOENN_DEX_ESPEON, + HOENN_DEX_UMBREON, + HOENN_DEX_MURKROW, + HOENN_DEX_SLOWKING, + HOENN_DEX_MISDREAVUS, + HOENN_DEX_UNOWN, + HOENN_DEX_PINECO, + HOENN_DEX_FORRETRESS, + HOENN_DEX_DUNSPARCE, + HOENN_DEX_GLIGAR, + HOENN_DEX_STEELIX, + HOENN_DEX_SNUBBULL, + HOENN_DEX_GRANBULL, + HOENN_DEX_QWILFISH, + HOENN_DEX_SCIZOR, + HOENN_DEX_SHUCKLE, + HOENN_DEX_SNEASEL, + HOENN_DEX_TEDDIURSA, + HOENN_DEX_URSARING, + HOENN_DEX_SWINUB, + HOENN_DEX_PILOSWINE, + HOENN_DEX_REMORAID, + HOENN_DEX_OCTILLERY, + HOENN_DEX_DELIBIRD, + HOENN_DEX_MANTINE, + HOENN_DEX_HOUNDOUR, + HOENN_DEX_HOUNDOOM, + HOENN_DEX_PORYGON2, + HOENN_DEX_STANTLER, + HOENN_DEX_SMEARGLE, + HOENN_DEX_TYROGUE, + HOENN_DEX_HITMONTOP, + HOENN_DEX_SMOOCHUM, + HOENN_DEX_ELEKID, + HOENN_DEX_MAGBY, + HOENN_DEX_MILTANK, + HOENN_DEX_BLISSEY, + HOENN_DEX_RAIKOU, + HOENN_DEX_ENTEI, + HOENN_DEX_SUICUNE, + HOENN_DEX_LARVITAR, + HOENN_DEX_PUPITAR, + HOENN_DEX_TYRANITAR, + HOENN_DEX_LUGIA, + HOENN_DEX_HO_OH, + HOENN_DEX_CELEBI, + HOENN_DEX_OLD_UNOWN_B, + HOENN_DEX_OLD_UNOWN_C, + HOENN_DEX_OLD_UNOWN_D, + HOENN_DEX_OLD_UNOWN_E, + HOENN_DEX_OLD_UNOWN_F, + HOENN_DEX_OLD_UNOWN_G, + HOENN_DEX_OLD_UNOWN_H, + HOENN_DEX_OLD_UNOWN_I, + HOENN_DEX_OLD_UNOWN_J, + HOENN_DEX_OLD_UNOWN_K, + HOENN_DEX_OLD_UNOWN_L, + HOENN_DEX_OLD_UNOWN_M, + HOENN_DEX_OLD_UNOWN_N, + HOENN_DEX_OLD_UNOWN_O, + HOENN_DEX_OLD_UNOWN_P, + HOENN_DEX_OLD_UNOWN_Q, + HOENN_DEX_OLD_UNOWN_R, + HOENN_DEX_OLD_UNOWN_S, + HOENN_DEX_OLD_UNOWN_T, + HOENN_DEX_OLD_UNOWN_U, + HOENN_DEX_OLD_UNOWN_V, + HOENN_DEX_OLD_UNOWN_W, + HOENN_DEX_OLD_UNOWN_X, + HOENN_DEX_OLD_UNOWN_Y, + HOENN_DEX_OLD_UNOWN_Z, +}; + +#define HOENN_DEX_COUNT HOENN_DEX_DEOXYS + +#endif // GUARD_CONSTANTS_POKEDEX_H diff --git a/include/constants/species.h b/include/constants/species.h index 983e1a7964f0..ec60c142ed72 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -447,847 +447,4 @@ #define SPECIES_UNOWN_EMARK (SPECIES_UNOWN_B + 25) #define SPECIES_UNOWN_QMARK (SPECIES_UNOWN_B + 26) -// National Dex Index Defines - -#define NATIONAL_DEX_NONE 0 -#define NATIONAL_DEX_BULBASAUR 1 -#define NATIONAL_DEX_IVYSAUR 2 -#define NATIONAL_DEX_VENUSAUR 3 -#define NATIONAL_DEX_CHARMANDER 4 -#define NATIONAL_DEX_CHARMELEON 5 -#define NATIONAL_DEX_CHARIZARD 6 -#define NATIONAL_DEX_SQUIRTLE 7 -#define NATIONAL_DEX_WARTORTLE 8 -#define NATIONAL_DEX_BLASTOISE 9 -#define NATIONAL_DEX_CATERPIE 10 -#define NATIONAL_DEX_METAPOD 11 -#define NATIONAL_DEX_BUTTERFREE 12 -#define NATIONAL_DEX_WEEDLE 13 -#define NATIONAL_DEX_KAKUNA 14 -#define NATIONAL_DEX_BEEDRILL 15 -#define NATIONAL_DEX_PIDGEY 16 -#define NATIONAL_DEX_PIDGEOTTO 17 -#define NATIONAL_DEX_PIDGEOT 18 -#define NATIONAL_DEX_RATTATA 19 -#define NATIONAL_DEX_RATICATE 20 -#define NATIONAL_DEX_SPEAROW 21 -#define NATIONAL_DEX_FEAROW 22 -#define NATIONAL_DEX_EKANS 23 -#define NATIONAL_DEX_ARBOK 24 -#define NATIONAL_DEX_PIKACHU 25 -#define NATIONAL_DEX_RAICHU 26 -#define NATIONAL_DEX_SANDSHREW 27 -#define NATIONAL_DEX_SANDSLASH 28 -#define NATIONAL_DEX_NIDORAN_F 29 -#define NATIONAL_DEX_NIDORINA 30 -#define NATIONAL_DEX_NIDOQUEEN 31 -#define NATIONAL_DEX_NIDORAN_M 32 -#define NATIONAL_DEX_NIDORINO 33 -#define NATIONAL_DEX_NIDOKING 34 -#define NATIONAL_DEX_CLEFAIRY 35 -#define NATIONAL_DEX_CLEFABLE 36 -#define NATIONAL_DEX_VULPIX 37 -#define NATIONAL_DEX_NINETALES 38 -#define NATIONAL_DEX_JIGGLYPUFF 39 -#define NATIONAL_DEX_WIGGLYTUFF 40 -#define NATIONAL_DEX_ZUBAT 41 -#define NATIONAL_DEX_GOLBAT 42 -#define NATIONAL_DEX_ODDISH 43 -#define NATIONAL_DEX_GLOOM 44 -#define NATIONAL_DEX_VILEPLUME 45 -#define NATIONAL_DEX_PARAS 46 -#define NATIONAL_DEX_PARASECT 47 -#define NATIONAL_DEX_VENONAT 48 -#define NATIONAL_DEX_VENOMOTH 49 -#define NATIONAL_DEX_DIGLETT 50 -#define NATIONAL_DEX_DUGTRIO 51 -#define NATIONAL_DEX_MEOWTH 52 -#define NATIONAL_DEX_PERSIAN 53 -#define NATIONAL_DEX_PSYDUCK 54 -#define NATIONAL_DEX_GOLDUCK 55 -#define NATIONAL_DEX_MANKEY 56 -#define NATIONAL_DEX_PRIMEAPE 57 -#define NATIONAL_DEX_GROWLITHE 58 -#define NATIONAL_DEX_ARCANINE 59 -#define NATIONAL_DEX_POLIWAG 60 -#define NATIONAL_DEX_POLIWHIRL 61 -#define NATIONAL_DEX_POLIWRATH 62 -#define NATIONAL_DEX_ABRA 63 -#define NATIONAL_DEX_KADABRA 64 -#define NATIONAL_DEX_ALAKAZAM 65 -#define NATIONAL_DEX_MACHOP 66 -#define NATIONAL_DEX_MACHOKE 67 -#define NATIONAL_DEX_MACHAMP 68 -#define NATIONAL_DEX_BELLSPROUT 69 -#define NATIONAL_DEX_WEEPINBELL 70 -#define NATIONAL_DEX_VICTREEBEL 71 -#define NATIONAL_DEX_TENTACOOL 72 -#define NATIONAL_DEX_TENTACRUEL 73 -#define NATIONAL_DEX_GEODUDE 74 -#define NATIONAL_DEX_GRAVELER 75 -#define NATIONAL_DEX_GOLEM 76 -#define NATIONAL_DEX_PONYTA 77 -#define NATIONAL_DEX_RAPIDASH 78 -#define NATIONAL_DEX_SLOWPOKE 79 -#define NATIONAL_DEX_SLOWBRO 80 -#define NATIONAL_DEX_MAGNEMITE 81 -#define NATIONAL_DEX_MAGNETON 82 -#define NATIONAL_DEX_FARFETCHD 83 -#define NATIONAL_DEX_DODUO 84 -#define NATIONAL_DEX_DODRIO 85 -#define NATIONAL_DEX_SEEL 86 -#define NATIONAL_DEX_DEWGONG 87 -#define NATIONAL_DEX_GRIMER 88 -#define NATIONAL_DEX_MUK 89 -#define NATIONAL_DEX_SHELLDER 90 -#define NATIONAL_DEX_CLOYSTER 91 -#define NATIONAL_DEX_GASTLY 92 -#define NATIONAL_DEX_HAUNTER 93 -#define NATIONAL_DEX_GENGAR 94 -#define NATIONAL_DEX_ONIX 95 -#define NATIONAL_DEX_DROWZEE 96 -#define NATIONAL_DEX_HYPNO 97 -#define NATIONAL_DEX_KRABBY 98 -#define NATIONAL_DEX_KINGLER 99 -#define NATIONAL_DEX_VOLTORB 100 -#define NATIONAL_DEX_ELECTRODE 101 -#define NATIONAL_DEX_EXEGGCUTE 102 -#define NATIONAL_DEX_EXEGGUTOR 103 -#define NATIONAL_DEX_CUBONE 104 -#define NATIONAL_DEX_MAROWAK 105 -#define NATIONAL_DEX_HITMONLEE 106 -#define NATIONAL_DEX_HITMONCHAN 107 -#define NATIONAL_DEX_LICKITUNG 108 -#define NATIONAL_DEX_KOFFING 109 -#define NATIONAL_DEX_WEEZING 110 -#define NATIONAL_DEX_RHYHORN 111 -#define NATIONAL_DEX_RHYDON 112 -#define NATIONAL_DEX_CHANSEY 113 -#define NATIONAL_DEX_TANGELA 114 -#define NATIONAL_DEX_KANGASKHAN 115 -#define NATIONAL_DEX_HORSEA 116 -#define NATIONAL_DEX_SEADRA 117 -#define NATIONAL_DEX_GOLDEEN 118 -#define NATIONAL_DEX_SEAKING 119 -#define NATIONAL_DEX_STARYU 120 -#define NATIONAL_DEX_STARMIE 121 -#define NATIONAL_DEX_MR_MIME 122 -#define NATIONAL_DEX_SCYTHER 123 -#define NATIONAL_DEX_JYNX 124 -#define NATIONAL_DEX_ELECTABUZZ 125 -#define NATIONAL_DEX_MAGMAR 126 -#define NATIONAL_DEX_PINSIR 127 -#define NATIONAL_DEX_TAUROS 128 -#define NATIONAL_DEX_MAGIKARP 129 -#define NATIONAL_DEX_GYARADOS 130 -#define NATIONAL_DEX_LAPRAS 131 -#define NATIONAL_DEX_DITTO 132 -#define NATIONAL_DEX_EEVEE 133 -#define NATIONAL_DEX_VAPOREON 134 -#define NATIONAL_DEX_JOLTEON 135 -#define NATIONAL_DEX_FLAREON 136 -#define NATIONAL_DEX_PORYGON 137 -#define NATIONAL_DEX_OMANYTE 138 -#define NATIONAL_DEX_OMASTAR 139 -#define NATIONAL_DEX_KABUTO 140 -#define NATIONAL_DEX_KABUTOPS 141 -#define NATIONAL_DEX_AERODACTYL 142 -#define NATIONAL_DEX_SNORLAX 143 -#define NATIONAL_DEX_ARTICUNO 144 -#define NATIONAL_DEX_ZAPDOS 145 -#define NATIONAL_DEX_MOLTRES 146 -#define NATIONAL_DEX_DRATINI 147 -#define NATIONAL_DEX_DRAGONAIR 148 -#define NATIONAL_DEX_DRAGONITE 149 -#define NATIONAL_DEX_MEWTWO 150 -#define NATIONAL_DEX_MEW 151 - -#define KANTO_DEX_COUNT NATIONAL_DEX_MEW - -#define NATIONAL_DEX_CHIKORITA 152 -#define NATIONAL_DEX_BAYLEEF 153 -#define NATIONAL_DEX_MEGANIUM 154 -#define NATIONAL_DEX_CYNDAQUIL 155 -#define NATIONAL_DEX_QUILAVA 156 -#define NATIONAL_DEX_TYPHLOSION 157 -#define NATIONAL_DEX_TOTODILE 158 -#define NATIONAL_DEX_CROCONAW 159 -#define NATIONAL_DEX_FERALIGATR 160 -#define NATIONAL_DEX_SENTRET 161 -#define NATIONAL_DEX_FURRET 162 -#define NATIONAL_DEX_HOOTHOOT 163 -#define NATIONAL_DEX_NOCTOWL 164 -#define NATIONAL_DEX_LEDYBA 165 -#define NATIONAL_DEX_LEDIAN 166 -#define NATIONAL_DEX_SPINARAK 167 -#define NATIONAL_DEX_ARIADOS 168 -#define NATIONAL_DEX_CROBAT 169 -#define NATIONAL_DEX_CHINCHOU 170 -#define NATIONAL_DEX_LANTURN 171 -#define NATIONAL_DEX_PICHU 172 -#define NATIONAL_DEX_CLEFFA 173 -#define NATIONAL_DEX_IGGLYBUFF 174 -#define NATIONAL_DEX_TOGEPI 175 -#define NATIONAL_DEX_TOGETIC 176 -#define NATIONAL_DEX_NATU 177 -#define NATIONAL_DEX_XATU 178 -#define NATIONAL_DEX_MAREEP 179 -#define NATIONAL_DEX_FLAAFFY 180 -#define NATIONAL_DEX_AMPHAROS 181 -#define NATIONAL_DEX_BELLOSSOM 182 -#define NATIONAL_DEX_MARILL 183 -#define NATIONAL_DEX_AZUMARILL 184 -#define NATIONAL_DEX_SUDOWOODO 185 -#define NATIONAL_DEX_POLITOED 186 -#define NATIONAL_DEX_HOPPIP 187 -#define NATIONAL_DEX_SKIPLOOM 188 -#define NATIONAL_DEX_JUMPLUFF 189 -#define NATIONAL_DEX_AIPOM 190 -#define NATIONAL_DEX_SUNKERN 191 -#define NATIONAL_DEX_SUNFLORA 192 -#define NATIONAL_DEX_YANMA 193 -#define NATIONAL_DEX_WOOPER 194 -#define NATIONAL_DEX_QUAGSIRE 195 -#define NATIONAL_DEX_ESPEON 196 -#define NATIONAL_DEX_UMBREON 197 -#define NATIONAL_DEX_MURKROW 198 -#define NATIONAL_DEX_SLOWKING 199 -#define NATIONAL_DEX_MISDREAVUS 200 -#define NATIONAL_DEX_UNOWN 201 -#define NATIONAL_DEX_WOBBUFFET 202 -#define NATIONAL_DEX_GIRAFARIG 203 -#define NATIONAL_DEX_PINECO 204 -#define NATIONAL_DEX_FORRETRESS 205 -#define NATIONAL_DEX_DUNSPARCE 206 -#define NATIONAL_DEX_GLIGAR 207 -#define NATIONAL_DEX_STEELIX 208 -#define NATIONAL_DEX_SNUBBULL 209 -#define NATIONAL_DEX_GRANBULL 210 -#define NATIONAL_DEX_QWILFISH 211 -#define NATIONAL_DEX_SCIZOR 212 -#define NATIONAL_DEX_SHUCKLE 213 -#define NATIONAL_DEX_HERACROSS 214 -#define NATIONAL_DEX_SNEASEL 215 -#define NATIONAL_DEX_TEDDIURSA 216 -#define NATIONAL_DEX_URSARING 217 -#define NATIONAL_DEX_SLUGMA 218 -#define NATIONAL_DEX_MAGCARGO 219 -#define NATIONAL_DEX_SWINUB 220 -#define NATIONAL_DEX_PILOSWINE 221 -#define NATIONAL_DEX_CORSOLA 222 -#define NATIONAL_DEX_REMORAID 223 -#define NATIONAL_DEX_OCTILLERY 224 -#define NATIONAL_DEX_DELIBIRD 225 -#define NATIONAL_DEX_MANTINE 226 -#define NATIONAL_DEX_SKARMORY 227 -#define NATIONAL_DEX_HOUNDOUR 228 -#define NATIONAL_DEX_HOUNDOOM 229 -#define NATIONAL_DEX_KINGDRA 230 -#define NATIONAL_DEX_PHANPY 231 -#define NATIONAL_DEX_DONPHAN 232 -#define NATIONAL_DEX_PORYGON2 233 -#define NATIONAL_DEX_STANTLER 234 -#define NATIONAL_DEX_SMEARGLE 235 -#define NATIONAL_DEX_TYROGUE 236 -#define NATIONAL_DEX_HITMONTOP 237 -#define NATIONAL_DEX_SMOOCHUM 238 -#define NATIONAL_DEX_ELEKID 239 -#define NATIONAL_DEX_MAGBY 240 -#define NATIONAL_DEX_MILTANK 241 -#define NATIONAL_DEX_BLISSEY 242 -#define NATIONAL_DEX_RAIKOU 243 -#define NATIONAL_DEX_ENTEI 244 -#define NATIONAL_DEX_SUICUNE 245 -#define NATIONAL_DEX_LARVITAR 246 -#define NATIONAL_DEX_PUPITAR 247 -#define NATIONAL_DEX_TYRANITAR 248 -#define NATIONAL_DEX_LUGIA 249 -#define NATIONAL_DEX_HO_OH 250 -#define NATIONAL_DEX_CELEBI 251 - -#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI - -#define NATIONAL_DEX_TREECKO 252 -#define NATIONAL_DEX_GROVYLE 253 -#define NATIONAL_DEX_SCEPTILE 254 -#define NATIONAL_DEX_TORCHIC 255 -#define NATIONAL_DEX_COMBUSKEN 256 -#define NATIONAL_DEX_BLAZIKEN 257 -#define NATIONAL_DEX_MUDKIP 258 -#define NATIONAL_DEX_MARSHTOMP 259 -#define NATIONAL_DEX_SWAMPERT 260 -#define NATIONAL_DEX_POOCHYENA 261 -#define NATIONAL_DEX_MIGHTYENA 262 -#define NATIONAL_DEX_ZIGZAGOON 263 -#define NATIONAL_DEX_LINOONE 264 -#define NATIONAL_DEX_WURMPLE 265 -#define NATIONAL_DEX_SILCOON 266 -#define NATIONAL_DEX_BEAUTIFLY 267 -#define NATIONAL_DEX_CASCOON 268 -#define NATIONAL_DEX_DUSTOX 269 -#define NATIONAL_DEX_LOTAD 270 -#define NATIONAL_DEX_LOMBRE 271 -#define NATIONAL_DEX_LUDICOLO 272 -#define NATIONAL_DEX_SEEDOT 273 -#define NATIONAL_DEX_NUZLEAF 274 -#define NATIONAL_DEX_SHIFTRY 275 -#define NATIONAL_DEX_TAILLOW 276 -#define NATIONAL_DEX_SWELLOW 277 -#define NATIONAL_DEX_WINGULL 278 -#define NATIONAL_DEX_PELIPPER 279 -#define NATIONAL_DEX_RALTS 280 -#define NATIONAL_DEX_KIRLIA 281 -#define NATIONAL_DEX_GARDEVOIR 282 -#define NATIONAL_DEX_SURSKIT 283 -#define NATIONAL_DEX_MASQUERAIN 284 -#define NATIONAL_DEX_SHROOMISH 285 -#define NATIONAL_DEX_BRELOOM 286 -#define NATIONAL_DEX_SLAKOTH 287 -#define NATIONAL_DEX_VIGOROTH 288 -#define NATIONAL_DEX_SLAKING 289 -#define NATIONAL_DEX_NINCADA 290 -#define NATIONAL_DEX_NINJASK 291 -#define NATIONAL_DEX_SHEDINJA 292 -#define NATIONAL_DEX_WHISMUR 293 -#define NATIONAL_DEX_LOUDRED 294 -#define NATIONAL_DEX_EXPLOUD 295 -#define NATIONAL_DEX_MAKUHITA 296 -#define NATIONAL_DEX_HARIYAMA 297 -#define NATIONAL_DEX_AZURILL 298 -#define NATIONAL_DEX_NOSEPASS 299 -#define NATIONAL_DEX_SKITTY 300 -#define NATIONAL_DEX_DELCATTY 301 -#define NATIONAL_DEX_SABLEYE 302 -#define NATIONAL_DEX_MAWILE 303 -#define NATIONAL_DEX_ARON 304 -#define NATIONAL_DEX_LAIRON 305 -#define NATIONAL_DEX_AGGRON 306 -#define NATIONAL_DEX_MEDITITE 307 -#define NATIONAL_DEX_MEDICHAM 308 -#define NATIONAL_DEX_ELECTRIKE 309 -#define NATIONAL_DEX_MANECTRIC 310 -#define NATIONAL_DEX_PLUSLE 311 -#define NATIONAL_DEX_MINUN 312 -#define NATIONAL_DEX_VOLBEAT 313 -#define NATIONAL_DEX_ILLUMISE 314 -#define NATIONAL_DEX_ROSELIA 315 -#define NATIONAL_DEX_GULPIN 316 -#define NATIONAL_DEX_SWALOT 317 -#define NATIONAL_DEX_CARVANHA 318 -#define NATIONAL_DEX_SHARPEDO 319 -#define NATIONAL_DEX_WAILMER 320 -#define NATIONAL_DEX_WAILORD 321 -#define NATIONAL_DEX_NUMEL 322 -#define NATIONAL_DEX_CAMERUPT 323 -#define NATIONAL_DEX_TORKOAL 324 -#define NATIONAL_DEX_SPOINK 325 -#define NATIONAL_DEX_GRUMPIG 326 -#define NATIONAL_DEX_SPINDA 327 -#define NATIONAL_DEX_TRAPINCH 328 -#define NATIONAL_DEX_VIBRAVA 329 -#define NATIONAL_DEX_FLYGON 330 -#define NATIONAL_DEX_CACNEA 331 -#define NATIONAL_DEX_CACTURNE 332 -#define NATIONAL_DEX_SWABLU 333 -#define NATIONAL_DEX_ALTARIA 334 -#define NATIONAL_DEX_ZANGOOSE 335 -#define NATIONAL_DEX_SEVIPER 336 -#define NATIONAL_DEX_LUNATONE 337 -#define NATIONAL_DEX_SOLROCK 338 -#define NATIONAL_DEX_BARBOACH 339 -#define NATIONAL_DEX_WHISCASH 340 -#define NATIONAL_DEX_CORPHISH 341 -#define NATIONAL_DEX_CRAWDAUNT 342 -#define NATIONAL_DEX_BALTOY 343 -#define NATIONAL_DEX_CLAYDOL 344 -#define NATIONAL_DEX_LILEEP 345 -#define NATIONAL_DEX_CRADILY 346 -#define NATIONAL_DEX_ANORITH 347 -#define NATIONAL_DEX_ARMALDO 348 -#define NATIONAL_DEX_FEEBAS 349 -#define NATIONAL_DEX_MILOTIC 350 -#define NATIONAL_DEX_CASTFORM 351 -#define NATIONAL_DEX_KECLEON 352 -#define NATIONAL_DEX_SHUPPET 353 -#define NATIONAL_DEX_BANETTE 354 -#define NATIONAL_DEX_DUSKULL 355 -#define NATIONAL_DEX_DUSCLOPS 356 -#define NATIONAL_DEX_TROPIUS 357 -#define NATIONAL_DEX_CHIMECHO 358 -#define NATIONAL_DEX_ABSOL 359 -#define NATIONAL_DEX_WYNAUT 360 -#define NATIONAL_DEX_SNORUNT 361 -#define NATIONAL_DEX_GLALIE 362 -#define NATIONAL_DEX_SPHEAL 363 -#define NATIONAL_DEX_SEALEO 364 -#define NATIONAL_DEX_WALREIN 365 -#define NATIONAL_DEX_CLAMPERL 366 -#define NATIONAL_DEX_HUNTAIL 367 -#define NATIONAL_DEX_GOREBYSS 368 -#define NATIONAL_DEX_RELICANTH 369 -#define NATIONAL_DEX_LUVDISC 370 -#define NATIONAL_DEX_BAGON 371 -#define NATIONAL_DEX_SHELGON 372 -#define NATIONAL_DEX_SALAMENCE 373 -#define NATIONAL_DEX_BELDUM 374 -#define NATIONAL_DEX_METANG 375 -#define NATIONAL_DEX_METAGROSS 376 -#define NATIONAL_DEX_REGIROCK 377 -#define NATIONAL_DEX_REGICE 378 -#define NATIONAL_DEX_REGISTEEL 379 -#define NATIONAL_DEX_LATIAS 380 -#define NATIONAL_DEX_LATIOS 381 -#define NATIONAL_DEX_KYOGRE 382 -#define NATIONAL_DEX_GROUDON 383 -#define NATIONAL_DEX_RAYQUAZA 384 -#define NATIONAL_DEX_JIRACHI 385 -#define NATIONAL_DEX_DEOXYS 386 - -#define NATIONAL_DEX_COUNT NATIONAL_DEX_DEOXYS - -#define NATIONAL_DEX_OLD_UNOWN_B (NATIONAL_DEX_COUNT + 1) -#define NATIONAL_DEX_OLD_UNOWN_C (NATIONAL_DEX_OLD_UNOWN_B + 1) -#define NATIONAL_DEX_OLD_UNOWN_D (NATIONAL_DEX_OLD_UNOWN_B + 2) -#define NATIONAL_DEX_OLD_UNOWN_E (NATIONAL_DEX_OLD_UNOWN_B + 3) -#define NATIONAL_DEX_OLD_UNOWN_F (NATIONAL_DEX_OLD_UNOWN_B + 4) -#define NATIONAL_DEX_OLD_UNOWN_G (NATIONAL_DEX_OLD_UNOWN_B + 5) -#define NATIONAL_DEX_OLD_UNOWN_H (NATIONAL_DEX_OLD_UNOWN_B + 6) -#define NATIONAL_DEX_OLD_UNOWN_I (NATIONAL_DEX_OLD_UNOWN_B + 7) -#define NATIONAL_DEX_OLD_UNOWN_J (NATIONAL_DEX_OLD_UNOWN_B + 8) -#define NATIONAL_DEX_OLD_UNOWN_K (NATIONAL_DEX_OLD_UNOWN_B + 9) -#define NATIONAL_DEX_OLD_UNOWN_L (NATIONAL_DEX_OLD_UNOWN_B + 10) -#define NATIONAL_DEX_OLD_UNOWN_M (NATIONAL_DEX_OLD_UNOWN_B + 11) -#define NATIONAL_DEX_OLD_UNOWN_N (NATIONAL_DEX_OLD_UNOWN_B + 12) -#define NATIONAL_DEX_OLD_UNOWN_O (NATIONAL_DEX_OLD_UNOWN_B + 13) -#define NATIONAL_DEX_OLD_UNOWN_P (NATIONAL_DEX_OLD_UNOWN_B + 14) -#define NATIONAL_DEX_OLD_UNOWN_Q (NATIONAL_DEX_OLD_UNOWN_B + 15) -#define NATIONAL_DEX_OLD_UNOWN_R (NATIONAL_DEX_OLD_UNOWN_B + 16) -#define NATIONAL_DEX_OLD_UNOWN_S (NATIONAL_DEX_OLD_UNOWN_B + 17) -#define NATIONAL_DEX_OLD_UNOWN_T (NATIONAL_DEX_OLD_UNOWN_B + 18) -#define NATIONAL_DEX_OLD_UNOWN_U (NATIONAL_DEX_OLD_UNOWN_B + 19) -#define NATIONAL_DEX_OLD_UNOWN_V (NATIONAL_DEX_OLD_UNOWN_B + 20) -#define NATIONAL_DEX_OLD_UNOWN_W (NATIONAL_DEX_OLD_UNOWN_B + 21) -#define NATIONAL_DEX_OLD_UNOWN_X (NATIONAL_DEX_OLD_UNOWN_B + 22) -#define NATIONAL_DEX_OLD_UNOWN_Y (NATIONAL_DEX_OLD_UNOWN_B + 23) -#define NATIONAL_DEX_OLD_UNOWN_Z (NATIONAL_DEX_OLD_UNOWN_B + 24) - -// Hoenn Dex Index Defines - -#define HOENN_DEX_NONE 0 -#define HOENN_DEX_TREECKO 1 -#define HOENN_DEX_GROVYLE 2 -#define HOENN_DEX_SCEPTILE 3 -#define HOENN_DEX_TORCHIC 4 -#define HOENN_DEX_COMBUSKEN 5 -#define HOENN_DEX_BLAZIKEN 6 -#define HOENN_DEX_MUDKIP 7 -#define HOENN_DEX_MARSHTOMP 8 -#define HOENN_DEX_SWAMPERT 9 -#define HOENN_DEX_POOCHYENA 10 -#define HOENN_DEX_MIGHTYENA 11 -#define HOENN_DEX_ZIGZAGOON 12 -#define HOENN_DEX_LINOONE 13 -#define HOENN_DEX_WURMPLE 14 -#define HOENN_DEX_SILCOON 15 -#define HOENN_DEX_BEAUTIFLY 16 -#define HOENN_DEX_CASCOON 17 -#define HOENN_DEX_DUSTOX 18 -#define HOENN_DEX_LOTAD 19 -#define HOENN_DEX_LOMBRE 20 -#define HOENN_DEX_LUDICOLO 21 -#define HOENN_DEX_SEEDOT 22 -#define HOENN_DEX_NUZLEAF 23 -#define HOENN_DEX_SHIFTRY 24 -#define HOENN_DEX_TAILLOW 25 -#define HOENN_DEX_SWELLOW 26 -#define HOENN_DEX_WINGULL 27 -#define HOENN_DEX_PELIPPER 28 -#define HOENN_DEX_RALTS 29 -#define HOENN_DEX_KIRLIA 30 -#define HOENN_DEX_GARDEVOIR 31 -#define HOENN_DEX_SURSKIT 32 -#define HOENN_DEX_MASQUERAIN 33 -#define HOENN_DEX_SHROOMISH 34 -#define HOENN_DEX_BRELOOM 35 -#define HOENN_DEX_SLAKOTH 36 -#define HOENN_DEX_VIGOROTH 37 -#define HOENN_DEX_SLAKING 38 -#define HOENN_DEX_ABRA 39 -#define HOENN_DEX_KADABRA 40 -#define HOENN_DEX_ALAKAZAM 41 -#define HOENN_DEX_NINCADA 42 -#define HOENN_DEX_NINJASK 43 -#define HOENN_DEX_SHEDINJA 44 -#define HOENN_DEX_WHISMUR 45 -#define HOENN_DEX_LOUDRED 46 -#define HOENN_DEX_EXPLOUD 47 -#define HOENN_DEX_MAKUHITA 48 -#define HOENN_DEX_HARIYAMA 49 -#define HOENN_DEX_GOLDEEN 50 -#define HOENN_DEX_SEAKING 51 -#define HOENN_DEX_MAGIKARP 52 -#define HOENN_DEX_GYARADOS 53 -#define HOENN_DEX_AZURILL 54 -#define HOENN_DEX_MARILL 55 -#define HOENN_DEX_AZUMARILL 56 -#define HOENN_DEX_GEODUDE 57 -#define HOENN_DEX_GRAVELER 58 -#define HOENN_DEX_GOLEM 59 -#define HOENN_DEX_NOSEPASS 60 -#define HOENN_DEX_SKITTY 61 -#define HOENN_DEX_DELCATTY 62 -#define HOENN_DEX_ZUBAT 63 -#define HOENN_DEX_GOLBAT 64 -#define HOENN_DEX_CROBAT 65 -#define HOENN_DEX_TENTACOOL 66 -#define HOENN_DEX_TENTACRUEL 67 -#define HOENN_DEX_SABLEYE 68 -#define HOENN_DEX_MAWILE 69 -#define HOENN_DEX_ARON 70 -#define HOENN_DEX_LAIRON 71 -#define HOENN_DEX_AGGRON 72 -#define HOENN_DEX_MACHOP 73 -#define HOENN_DEX_MACHOKE 74 -#define HOENN_DEX_MACHAMP 75 -#define HOENN_DEX_MEDITITE 76 -#define HOENN_DEX_MEDICHAM 77 -#define HOENN_DEX_ELECTRIKE 78 -#define HOENN_DEX_MANECTRIC 79 -#define HOENN_DEX_PLUSLE 80 -#define HOENN_DEX_MINUN 81 -#define HOENN_DEX_MAGNEMITE 82 -#define HOENN_DEX_MAGNETON 83 -#define HOENN_DEX_VOLTORB 84 -#define HOENN_DEX_ELECTRODE 85 -#define HOENN_DEX_VOLBEAT 86 -#define HOENN_DEX_ILLUMISE 87 -#define HOENN_DEX_ODDISH 88 -#define HOENN_DEX_GLOOM 89 -#define HOENN_DEX_VILEPLUME 90 -#define HOENN_DEX_BELLOSSOM 91 -#define HOENN_DEX_DODUO 92 -#define HOENN_DEX_DODRIO 93 -#define HOENN_DEX_ROSELIA 94 -#define HOENN_DEX_GULPIN 95 -#define HOENN_DEX_SWALOT 96 -#define HOENN_DEX_CARVANHA 97 -#define HOENN_DEX_SHARPEDO 98 -#define HOENN_DEX_WAILMER 99 -#define HOENN_DEX_WAILORD 100 -#define HOENN_DEX_NUMEL 101 -#define HOENN_DEX_CAMERUPT 102 -#define HOENN_DEX_SLUGMA 103 -#define HOENN_DEX_MAGCARGO 104 -#define HOENN_DEX_TORKOAL 105 -#define HOENN_DEX_GRIMER 106 -#define HOENN_DEX_MUK 107 -#define HOENN_DEX_KOFFING 108 -#define HOENN_DEX_WEEZING 109 -#define HOENN_DEX_SPOINK 110 -#define HOENN_DEX_GRUMPIG 111 -#define HOENN_DEX_SANDSHREW 112 -#define HOENN_DEX_SANDSLASH 113 -#define HOENN_DEX_SPINDA 114 -#define HOENN_DEX_SKARMORY 115 -#define HOENN_DEX_TRAPINCH 116 -#define HOENN_DEX_VIBRAVA 117 -#define HOENN_DEX_FLYGON 118 -#define HOENN_DEX_CACNEA 119 -#define HOENN_DEX_CACTURNE 120 -#define HOENN_DEX_SWABLU 121 -#define HOENN_DEX_ALTARIA 122 -#define HOENN_DEX_ZANGOOSE 123 -#define HOENN_DEX_SEVIPER 124 -#define HOENN_DEX_LUNATONE 125 -#define HOENN_DEX_SOLROCK 126 -#define HOENN_DEX_BARBOACH 127 -#define HOENN_DEX_WHISCASH 128 -#define HOENN_DEX_CORPHISH 129 -#define HOENN_DEX_CRAWDAUNT 130 -#define HOENN_DEX_BALTOY 131 -#define HOENN_DEX_CLAYDOL 132 -#define HOENN_DEX_LILEEP 133 -#define HOENN_DEX_CRADILY 134 -#define HOENN_DEX_ANORITH 135 -#define HOENN_DEX_ARMALDO 136 -#define HOENN_DEX_IGGLYBUFF 137 -#define HOENN_DEX_JIGGLYPUFF 138 -#define HOENN_DEX_WIGGLYTUFF 139 -#define HOENN_DEX_FEEBAS 140 -#define HOENN_DEX_MILOTIC 141 -#define HOENN_DEX_CASTFORM 142 -#define HOENN_DEX_STARYU 143 -#define HOENN_DEX_STARMIE 144 -#define HOENN_DEX_KECLEON 145 -#define HOENN_DEX_SHUPPET 146 -#define HOENN_DEX_BANETTE 147 -#define HOENN_DEX_DUSKULL 148 -#define HOENN_DEX_DUSCLOPS 149 -#define HOENN_DEX_TROPIUS 150 -#define HOENN_DEX_CHIMECHO 151 -#define HOENN_DEX_ABSOL 152 -#define HOENN_DEX_VULPIX 153 -#define HOENN_DEX_NINETALES 154 -#define HOENN_DEX_PICHU 155 -#define HOENN_DEX_PIKACHU 156 -#define HOENN_DEX_RAICHU 157 -#define HOENN_DEX_PSYDUCK 158 -#define HOENN_DEX_GOLDUCK 159 -#define HOENN_DEX_WYNAUT 160 -#define HOENN_DEX_WOBBUFFET 161 -#define HOENN_DEX_NATU 162 -#define HOENN_DEX_XATU 163 -#define HOENN_DEX_GIRAFARIG 164 -#define HOENN_DEX_PHANPY 165 -#define HOENN_DEX_DONPHAN 166 -#define HOENN_DEX_PINSIR 167 -#define HOENN_DEX_HERACROSS 168 -#define HOENN_DEX_RHYHORN 169 -#define HOENN_DEX_RHYDON 170 -#define HOENN_DEX_SNORUNT 171 -#define HOENN_DEX_GLALIE 172 -#define HOENN_DEX_SPHEAL 173 -#define HOENN_DEX_SEALEO 174 -#define HOENN_DEX_WALREIN 175 -#define HOENN_DEX_CLAMPERL 176 -#define HOENN_DEX_HUNTAIL 177 -#define HOENN_DEX_GOREBYSS 178 -#define HOENN_DEX_RELICANTH 179 -#define HOENN_DEX_CORSOLA 180 -#define HOENN_DEX_CHINCHOU 181 -#define HOENN_DEX_LANTURN 182 -#define HOENN_DEX_LUVDISC 183 -#define HOENN_DEX_HORSEA 184 -#define HOENN_DEX_SEADRA 185 -#define HOENN_DEX_KINGDRA 186 -#define HOENN_DEX_BAGON 187 -#define HOENN_DEX_SHELGON 188 -#define HOENN_DEX_SALAMENCE 189 -#define HOENN_DEX_BELDUM 190 -#define HOENN_DEX_METANG 191 -#define HOENN_DEX_METAGROSS 192 -#define HOENN_DEX_REGIROCK 193 -#define HOENN_DEX_REGICE 194 -#define HOENN_DEX_REGISTEEL 195 -#define HOENN_DEX_LATIAS 196 -#define HOENN_DEX_LATIOS 197 -#define HOENN_DEX_KYOGRE 198 -#define HOENN_DEX_GROUDON 199 -#define HOENN_DEX_RAYQUAZA 200 -#define HOENN_DEX_JIRACHI 201 -#define HOENN_DEX_DEOXYS 202 - -#define HOENN_DEX_COUNT HOENN_DEX_DEOXYS - -#define HOENN_DEX_BULBASAUR 203 -#define HOENN_DEX_IVYSAUR 204 -#define HOENN_DEX_VENUSAUR 205 -#define HOENN_DEX_CHARMANDER 206 -#define HOENN_DEX_CHARMELEON 207 -#define HOENN_DEX_CHARIZARD 208 -#define HOENN_DEX_SQUIRTLE 209 -#define HOENN_DEX_WARTORTLE 210 -#define HOENN_DEX_BLASTOISE 211 -#define HOENN_DEX_CATERPIE 212 -#define HOENN_DEX_METAPOD 213 -#define HOENN_DEX_BUTTERFREE 214 -#define HOENN_DEX_WEEDLE 215 -#define HOENN_DEX_KAKUNA 216 -#define HOENN_DEX_BEEDRILL 217 -#define HOENN_DEX_PIDGEY 218 -#define HOENN_DEX_PIDGEOTTO 219 -#define HOENN_DEX_PIDGEOT 220 -#define HOENN_DEX_RATTATA 221 -#define HOENN_DEX_RATICATE 222 -#define HOENN_DEX_SPEAROW 223 -#define HOENN_DEX_FEAROW 224 -#define HOENN_DEX_EKANS 225 -#define HOENN_DEX_ARBOK 226 -#define HOENN_DEX_NIDORAN_F 227 -#define HOENN_DEX_NIDORINA 228 -#define HOENN_DEX_NIDOQUEEN 229 -#define HOENN_DEX_NIDORAN_M 230 -#define HOENN_DEX_NIDORINO 231 -#define HOENN_DEX_NIDOKING 232 -#define HOENN_DEX_CLEFAIRY 233 -#define HOENN_DEX_CLEFABLE 234 -#define HOENN_DEX_PARAS 235 -#define HOENN_DEX_PARASECT 236 -#define HOENN_DEX_VENONAT 237 -#define HOENN_DEX_VENOMOTH 238 -#define HOENN_DEX_DIGLETT 239 -#define HOENN_DEX_DUGTRIO 240 -#define HOENN_DEX_MEOWTH 241 -#define HOENN_DEX_PERSIAN 242 -#define HOENN_DEX_MANKEY 243 -#define HOENN_DEX_PRIMEAPE 244 -#define HOENN_DEX_GROWLITHE 245 -#define HOENN_DEX_ARCANINE 246 -#define HOENN_DEX_POLIWAG 247 -#define HOENN_DEX_POLIWHIRL 248 -#define HOENN_DEX_POLIWRATH 249 -#define HOENN_DEX_BELLSPROUT 250 -#define HOENN_DEX_WEEPINBELL 251 -#define HOENN_DEX_VICTREEBEL 252 -#define HOENN_DEX_PONYTA 253 -#define HOENN_DEX_RAPIDASH 254 -#define HOENN_DEX_SLOWPOKE 255 -#define HOENN_DEX_SLOWBRO 256 -#define HOENN_DEX_FARFETCHD 257 -#define HOENN_DEX_SEEL 258 -#define HOENN_DEX_DEWGONG 259 -#define HOENN_DEX_SHELLDER 260 -#define HOENN_DEX_CLOYSTER 261 -#define HOENN_DEX_GASTLY 262 -#define HOENN_DEX_HAUNTER 263 -#define HOENN_DEX_GENGAR 264 -#define HOENN_DEX_ONIX 265 -#define HOENN_DEX_DROWZEE 266 -#define HOENN_DEX_HYPNO 267 -#define HOENN_DEX_KRABBY 268 -#define HOENN_DEX_KINGLER 269 -#define HOENN_DEX_EXEGGCUTE 270 -#define HOENN_DEX_EXEGGUTOR 271 -#define HOENN_DEX_CUBONE 272 -#define HOENN_DEX_MAROWAK 273 -#define HOENN_DEX_HITMONLEE 274 -#define HOENN_DEX_HITMONCHAN 275 -#define HOENN_DEX_LICKITUNG 276 -#define HOENN_DEX_CHANSEY 277 -#define HOENN_DEX_TANGELA 278 -#define HOENN_DEX_KANGASKHAN 279 -#define HOENN_DEX_MR_MIME 280 -#define HOENN_DEX_SCYTHER 281 -#define HOENN_DEX_JYNX 282 -#define HOENN_DEX_ELECTABUZZ 283 -#define HOENN_DEX_MAGMAR 284 -#define HOENN_DEX_TAUROS 285 -#define HOENN_DEX_LAPRAS 286 -#define HOENN_DEX_DITTO 287 -#define HOENN_DEX_EEVEE 288 -#define HOENN_DEX_VAPOREON 289 -#define HOENN_DEX_JOLTEON 290 -#define HOENN_DEX_FLAREON 291 -#define HOENN_DEX_PORYGON 292 -#define HOENN_DEX_OMANYTE 293 -#define HOENN_DEX_OMASTAR 294 -#define HOENN_DEX_KABUTO 295 -#define HOENN_DEX_KABUTOPS 296 -#define HOENN_DEX_AERODACTYL 297 -#define HOENN_DEX_SNORLAX 298 -#define HOENN_DEX_ARTICUNO 299 -#define HOENN_DEX_ZAPDOS 300 -#define HOENN_DEX_MOLTRES 301 -#define HOENN_DEX_DRATINI 302 -#define HOENN_DEX_DRAGONAIR 303 -#define HOENN_DEX_DRAGONITE 304 -#define HOENN_DEX_MEWTWO 305 -#define HOENN_DEX_MEW 306 -#define HOENN_DEX_CHIKORITA 307 -#define HOENN_DEX_BAYLEEF 308 -#define HOENN_DEX_MEGANIUM 309 -#define HOENN_DEX_CYNDAQUIL 310 -#define HOENN_DEX_QUILAVA 311 -#define HOENN_DEX_TYPHLOSION 312 -#define HOENN_DEX_TOTODILE 313 -#define HOENN_DEX_CROCONAW 314 -#define HOENN_DEX_FERALIGATR 315 -#define HOENN_DEX_SENTRET 316 -#define HOENN_DEX_FURRET 317 -#define HOENN_DEX_HOOTHOOT 318 -#define HOENN_DEX_NOCTOWL 319 -#define HOENN_DEX_LEDYBA 320 -#define HOENN_DEX_LEDIAN 321 -#define HOENN_DEX_SPINARAK 322 -#define HOENN_DEX_ARIADOS 323 -#define HOENN_DEX_CLEFFA 324 -#define HOENN_DEX_TOGEPI 325 -#define HOENN_DEX_TOGETIC 326 -#define HOENN_DEX_MAREEP 327 -#define HOENN_DEX_FLAAFFY 328 -#define HOENN_DEX_AMPHAROS 329 -#define HOENN_DEX_SUDOWOODO 330 -#define HOENN_DEX_POLITOED 331 -#define HOENN_DEX_HOPPIP 332 -#define HOENN_DEX_SKIPLOOM 333 -#define HOENN_DEX_JUMPLUFF 334 -#define HOENN_DEX_AIPOM 335 -#define HOENN_DEX_SUNKERN 336 -#define HOENN_DEX_SUNFLORA 337 -#define HOENN_DEX_YANMA 338 -#define HOENN_DEX_WOOPER 339 -#define HOENN_DEX_QUAGSIRE 340 -#define HOENN_DEX_ESPEON 341 -#define HOENN_DEX_UMBREON 342 -#define HOENN_DEX_MURKROW 343 -#define HOENN_DEX_SLOWKING 344 -#define HOENN_DEX_MISDREAVUS 345 -#define HOENN_DEX_UNOWN 346 -#define HOENN_DEX_PINECO 347 -#define HOENN_DEX_FORRETRESS 348 -#define HOENN_DEX_DUNSPARCE 349 -#define HOENN_DEX_GLIGAR 350 -#define HOENN_DEX_STEELIX 351 -#define HOENN_DEX_SNUBBULL 352 -#define HOENN_DEX_GRANBULL 353 -#define HOENN_DEX_QWILFISH 354 -#define HOENN_DEX_SCIZOR 355 -#define HOENN_DEX_SHUCKLE 356 -#define HOENN_DEX_SNEASEL 357 -#define HOENN_DEX_TEDDIURSA 358 -#define HOENN_DEX_URSARING 359 -#define HOENN_DEX_SWINUB 360 -#define HOENN_DEX_PILOSWINE 361 -#define HOENN_DEX_REMORAID 362 -#define HOENN_DEX_OCTILLERY 363 -#define HOENN_DEX_DELIBIRD 364 -#define HOENN_DEX_MANTINE 365 -#define HOENN_DEX_HOUNDOUR 366 -#define HOENN_DEX_HOUNDOOM 367 -#define HOENN_DEX_PORYGON2 368 -#define HOENN_DEX_STANTLER 369 -#define HOENN_DEX_SMEARGLE 370 -#define HOENN_DEX_TYROGUE 371 -#define HOENN_DEX_HITMONTOP 372 -#define HOENN_DEX_SMOOCHUM 373 -#define HOENN_DEX_ELEKID 374 -#define HOENN_DEX_MAGBY 375 -#define HOENN_DEX_MILTANK 376 -#define HOENN_DEX_BLISSEY 377 -#define HOENN_DEX_RAIKOU 378 -#define HOENN_DEX_ENTEI 379 -#define HOENN_DEX_SUICUNE 380 -#define HOENN_DEX_LARVITAR 381 -#define HOENN_DEX_PUPITAR 382 -#define HOENN_DEX_TYRANITAR 383 -#define HOENN_DEX_LUGIA 384 -#define HOENN_DEX_HO_OH 385 -#define HOENN_DEX_CELEBI 386 - -#define HOENN_DEX_OLD_UNOWN_B (HOENN_DEX_CELEBI + 1) -#define HOENN_DEX_OLD_UNOWN_C (HOENN_DEX_OLD_UNOWN_B + 1) -#define HOENN_DEX_OLD_UNOWN_D (HOENN_DEX_OLD_UNOWN_B + 2) -#define HOENN_DEX_OLD_UNOWN_E (HOENN_DEX_OLD_UNOWN_B + 3) -#define HOENN_DEX_OLD_UNOWN_F (HOENN_DEX_OLD_UNOWN_B + 4) -#define HOENN_DEX_OLD_UNOWN_G (HOENN_DEX_OLD_UNOWN_B + 5) -#define HOENN_DEX_OLD_UNOWN_H (HOENN_DEX_OLD_UNOWN_B + 6) -#define HOENN_DEX_OLD_UNOWN_I (HOENN_DEX_OLD_UNOWN_B + 7) -#define HOENN_DEX_OLD_UNOWN_J (HOENN_DEX_OLD_UNOWN_B + 8) -#define HOENN_DEX_OLD_UNOWN_K (HOENN_DEX_OLD_UNOWN_B + 9) -#define HOENN_DEX_OLD_UNOWN_L (HOENN_DEX_OLD_UNOWN_B + 10) -#define HOENN_DEX_OLD_UNOWN_M (HOENN_DEX_OLD_UNOWN_B + 11) -#define HOENN_DEX_OLD_UNOWN_N (HOENN_DEX_OLD_UNOWN_B + 12) -#define HOENN_DEX_OLD_UNOWN_O (HOENN_DEX_OLD_UNOWN_B + 13) -#define HOENN_DEX_OLD_UNOWN_P (HOENN_DEX_OLD_UNOWN_B + 14) -#define HOENN_DEX_OLD_UNOWN_Q (HOENN_DEX_OLD_UNOWN_B + 15) -#define HOENN_DEX_OLD_UNOWN_R (HOENN_DEX_OLD_UNOWN_B + 16) -#define HOENN_DEX_OLD_UNOWN_S (HOENN_DEX_OLD_UNOWN_B + 17) -#define HOENN_DEX_OLD_UNOWN_T (HOENN_DEX_OLD_UNOWN_B + 18) -#define HOENN_DEX_OLD_UNOWN_U (HOENN_DEX_OLD_UNOWN_B + 19) -#define HOENN_DEX_OLD_UNOWN_V (HOENN_DEX_OLD_UNOWN_B + 20) -#define HOENN_DEX_OLD_UNOWN_W (HOENN_DEX_OLD_UNOWN_B + 21) -#define HOENN_DEX_OLD_UNOWN_X (HOENN_DEX_OLD_UNOWN_B + 22) -#define HOENN_DEX_OLD_UNOWN_Y (HOENN_DEX_OLD_UNOWN_B + 23) -#define HOENN_DEX_OLD_UNOWN_Z (HOENN_DEX_OLD_UNOWN_B + 24) - #endif // GUARD_CONSTANTS_SPECIES_H diff --git a/include/global.h b/include/global.h index 024280f98697..377e20e0e84e 100644 --- a/include/global.h +++ b/include/global.h @@ -9,6 +9,7 @@ #include "constants/flags.h" #include "constants/vars.h" #include "constants/species.h" +#include "constants/pokedex.h" #include "constants/berry.h" #include "constants/maps.h" @@ -125,7 +126,9 @@ #define ROUND_BITS_TO_BYTES(numBits) DIV_ROUND_UP(numBits, 8) -#define DEX_FLAGS_NO ROUND_BITS_TO_BYTES(NUM_SPECIES) +// 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. +#define NUM_DEX_FLAG_BYTES ROUND_BITS_TO_BYTES(NUM_SPECIES) #define NUM_FLAG_BYTES ROUND_BITS_TO_BYTES(FLAGS_COUNT) struct Coords8 @@ -181,8 +184,8 @@ struct Pokedex /*0x04*/ u32 unownPersonality; // set when you first see Unown /*0x08*/ u32 spindaPersonality; // set when you first see Spinda /*0x0C*/ u32 unknown3; - /*0x10*/ u8 owned[DEX_FLAGS_NO]; - /*0x44*/ u8 seen[DEX_FLAGS_NO]; + /*0x10*/ u8 owned[NUM_DEX_FLAG_BYTES]; + /*0x44*/ u8 seen[NUM_DEX_FLAG_BYTES]; }; struct PokemonJumpRecords @@ -944,7 +947,7 @@ struct SaveBlock1 /*0x690*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT]; /*0x790*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT]; /*0x848*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT]; - /*0x988*/ u8 seen1[DEX_FLAGS_NO]; + /*0x988*/ u8 seen1[NUM_DEX_FLAG_BYTES]; /*0x9BC*/ u16 berryBlenderRecords[3]; /*0x9C2*/ u8 unused_9C2[6]; /*0x9C8*/ u16 trainerRematchStepCounter; @@ -1000,7 +1003,7 @@ struct SaveBlock1 /*0x3718*/ u32 trainerHillTimes[4]; /*0x3728*/ struct RamScript ramScript; /*0x3B14*/ struct RecordMixingGift recordMixingGift; - /*0x3B24*/ u8 seen2[DEX_FLAGS_NO]; + /*0x3B24*/ u8 seen2[NUM_DEX_FLAG_BYTES]; /*0x3B58*/ LilycoveLady lilycoveLady; /*0x3B98*/ struct TrainerNameRecord trainerNameRecords[20]; /*0x3C88*/ u8 registeredTexts[UNION_ROOM_KB_ROW_COUNT][21]; diff --git a/src/pokedex.c b/src/pokedex.c index b41937302402..206782e59e15 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -1512,7 +1512,7 @@ void ResetPokedex(void) gSaveBlock2Ptr->pokedex.spindaPersonality = 0; gSaveBlock2Ptr->pokedex.unknown3 = 0; DisableNationalPokedex(); - for (i = 0; i < DEX_FLAGS_NO; i++) + for (i = 0; i < NUM_DEX_FLAG_BYTES; i++) { gSaveBlock2Ptr->pokedex.owned[i] = 0; gSaveBlock2Ptr->pokedex.seen[i] = 0; From d4111d55208d0f6ded77352859f6460a0c41e7e5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 5 Jan 2022 14:50:19 -0500 Subject: [PATCH 484/762] Add comment about pokedex reordering --- src/pokemon.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index 939c2429da0c..9476dbb2e7e5 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -88,11 +88,14 @@ static const struct CombinedMove sCombinedMoves[2] = {0xFFFF, 0xFFFF, 0xFFFF} }; +// NOTE: The order of the elements in the 3 arrays below is irrelevant. +// To reorder the pokedex, see the values in include/constants/pokedex.h. + #define SPECIES_TO_HOENN(name) [SPECIES_##name - 1] = HOENN_DEX_##name #define SPECIES_TO_NATIONAL(name) [SPECIES_##name - 1] = NATIONAL_DEX_##name #define HOENN_TO_NATIONAL(name) [HOENN_DEX_##name - 1] = NATIONAL_DEX_##name - // Assigns all species to the Hoenn Dex Index (Summary No. for Hoenn Dex) +// Assigns all species to the Hoenn Dex Index (Summary No. for Hoenn Dex) static const u16 sSpeciesToHoennPokedexNum[NUM_SPECIES - 1] = { SPECIES_TO_HOENN(BULBASAUR), @@ -508,7 +511,7 @@ static const u16 sSpeciesToHoennPokedexNum[NUM_SPECIES - 1] = SPECIES_TO_HOENN(CHIMECHO), }; - // Assigns all species to the National Dex Index (Summary No. for National Dex) +// Assigns all species to the National Dex Index (Summary No. for National Dex) static const u16 sSpeciesToNationalPokedexNum[NUM_SPECIES - 1] = { SPECIES_TO_NATIONAL(BULBASAUR), @@ -924,7 +927,7 @@ static const u16 sSpeciesToNationalPokedexNum[NUM_SPECIES - 1] = SPECIES_TO_NATIONAL(CHIMECHO), }; - // Assigns all Hoenn Dex Indexes to a National Dex Index +// Assigns all Hoenn Dex Indexes to a National Dex Index static const u16 sHoennToNationalOrder[NUM_SPECIES - 1] = { HOENN_TO_NATIONAL(TREECKO), From f67137ddb23fc5fb5aea18ae3665dc0e9a68b409 Mon Sep 17 00:00:00 2001 From: kiliwily <69381603+kiliwily@users.noreply.github.com> Date: Thu, 6 Jan 2022 19:29:58 +0100 Subject: [PATCH 485/762] Update field_specials.c --- src/field_specials.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/field_specials.c b/src/field_specials.c index bd6d53caf1df..fd8a69ecad6e 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -352,7 +352,9 @@ bool32 ShouldDoWallyCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_WALLY_CALL_STEP_COUNTER)) < 250) + { return FALSE; + } break; default: return FALSE; From ba9b533845c08c58739784027a122cf178bc4d2e Mon Sep 17 00:00:00 2001 From: kiliwily <69381603+kiliwily@users.noreply.github.com> Date: Thu, 6 Jan 2022 19:45:38 +0100 Subject: [PATCH 486/762] Revert "Update field_specials.c" This reverts commit f67137ddb23fc5fb5aea18ae3665dc0e9a68b409. --- src/field_specials.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/field_specials.c b/src/field_specials.c index fd8a69ecad6e..bd6d53caf1df 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -352,9 +352,7 @@ bool32 ShouldDoWallyCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_WALLY_CALL_STEP_COUNTER)) < 250) - { return FALSE; - } break; default: return FALSE; From 8a9740b819907b63da542518fc777bc2d5f636cf Mon Sep 17 00:00:00 2001 From: kiliwily <69381603+kiliwily@users.noreply.github.com> Date: Thu, 6 Jan 2022 19:47:56 +0100 Subject: [PATCH 487/762] Update field_specials.c --- src/field_specials.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/field_specials.c b/src/field_specials.c index bd6d53caf1df..d97a17a7d364 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -377,9 +377,7 @@ bool32 ShouldDoScottFortreeCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_SCOTT_FORTREE_CALL_STEP_COUNTER)) < 10) - { return FALSE; - } break; default: return FALSE; @@ -404,9 +402,7 @@ bool32 ShouldDoScottBattleFrontierCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_SCOTT_BF_CALL_STEP_COUNTER)) < 10) - { return FALSE; - } break; default: return FALSE; @@ -431,9 +427,7 @@ bool32 ShouldDoRoxanneCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_ROXANNE_CALL_STEP_COUNTER)) < 250) - { return FALSE; - } break; default: return FALSE; @@ -458,9 +452,7 @@ bool32 ShouldDoRivalRayquazaCall(void) case MAP_TYPE_ROUTE: case MAP_TYPE_OCEAN_ROUTE: if (++(*GetVarPointer(VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER)) < 250) - { return FALSE; - } break; default: return FALSE; From 713cd6616ea8c159bbcaeba223cbb6097a74e393 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 6 Jan 2022 22:33:00 -0500 Subject: [PATCH 488/762] Add glow tile empty --- src/data/pokedex_area_glow.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/data/pokedex_area_glow.h b/src/data/pokedex_area_glow.h index 0da4f1dac76e..ff24d8d6c08b 100644 --- a/src/data/pokedex_area_glow.h +++ b/src/data/pokedex_area_glow.h @@ -56,6 +56,7 @@ enum { // with edge flags are cancelled out before lookup. For example, GLOW_CORNER_TL | GLOW_EDGE_L // will never be read, and has the same value as GLOW_EDGE_L. static const u8 sAreaGlowTilemapMapping[] = { + [0] = GLOW_TILE_EMPTY, [GLOW_EDGE_R] = GLOW_TILE_EDGE_R, [GLOW_EDGE_L] = GLOW_TILE_EDGE_L, [GLOW_EDGE_L | GLOW_EDGE_R] = GLOW_TILE_EDGE_L_R, From 1c6232bc2ec2b97c51f6bf210168b65bb83ecbee Mon Sep 17 00:00:00 2001 From: laqieer Date: Sat, 8 Jan 2022 00:57:09 +0800 Subject: [PATCH 489/762] Fix macro v069 in sound/MPlayDef.s --- sound/MPlayDef.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/MPlayDef.s b/sound/MPlayDef.s index f5dd6484d94f..95a788e85e49 100644 --- a/sound/MPlayDef.s +++ b/sound/MPlayDef.s @@ -333,7 +333,7 @@ .equ v066, 66 @ .equ v067, 67 @ .equ v068, 68 @ - .equ v069, 79 @ + .equ v069, 69 @ .equ v070, 70 @ .equ v071, 71 @ .equ v072, 72 @ From 5cbe572607dbed0dfd4937fa05e115da99ef9e69 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 7 Jan 2022 17:02:12 -0500 Subject: [PATCH 490/762] Add window constants in pokemon_storage_system --- src/pokemon_storage_system.c | 58 ++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 25 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 755cc7de0741..604f665ed184 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -331,6 +331,13 @@ enum { TILEMAPID_COUNT }; +// Window IDs for sWindowTemplates +enum { + WIN_DISPLAY_INFO, + WIN_MESSAGE, + WIN_ITEM_DESC, +}; + struct Wallpaper { const u32 *tiles; @@ -981,7 +988,8 @@ static const u16 sUnknown_Pal[] = INCBIN_U16("graphics/pokemon_storage/unknown. static const struct WindowTemplate sWindowTemplates[] = { - { + // The panel below the currently displayed PokĂ©mon + [WIN_DISPLAY_INFO] = { .bg = 1, .tilemapLeft = 0, .tilemapTop = 11, @@ -990,7 +998,7 @@ static const struct WindowTemplate sWindowTemplates[] = .paletteNum = 3, .baseBlock = 0xC0, }, - { + [WIN_MESSAGE] = { .bg = 0, .tilemapLeft = 11, .tilemapTop = 17, @@ -999,7 +1007,7 @@ static const struct WindowTemplate sWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x14, }, - { + [WIN_ITEM_DESC] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, @@ -2136,10 +2144,10 @@ static void Task_InitPokeStorage(u8 taskId) } break; case 2: - PutWindowTilemap(0); - ClearWindowTilemap(1); + PutWindowTilemap(WIN_DISPLAY_INFO); + ClearWindowTilemap(WIN_MESSAGE); CpuFill32(0, (void *)VRAM, 0x200); - LoadUserWindowBorderGfx(1, 0xB, 0xE0); + LoadUserWindowBorderGfx(WIN_MESSAGE, 0xB, 0xE0); break; case 3: ResetAllBgCoords(); @@ -4001,23 +4009,23 @@ static void LoadDisplayMonGfx(u16 species, u32 pid) static void PrintDisplayMonInfo(void) { - FillWindowPixelBuffer(0, PIXEL_FILL(1)); + FillWindowPixelBuffer(WIN_DISPLAY_INFO, PIXEL_FILL(1)); if (sStorage->boxOption != OPTION_MOVE_ITEMS) { - AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 0, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 15, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 43, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_NORMAL, sStorage->displayMonNameText, 6, 0, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 15, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 29, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SMALL, sStorage->displayMonItemName, 6, 43, TEXT_SKIP_DRAW, NULL); } else { - AddTextPrinterParameterized(0, FONT_SMALL, sStorage->displayMonItemName, 6, 0, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_NORMAL, sStorage->displayMonNameText, 6, 13, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 28, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(0, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SMALL, sStorage->displayMonItemName, 6, 0, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_NORMAL, sStorage->displayMonNameText, 6, 13, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SHORT, sStorage->displayMonSpeciesName, 6, 28, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(WIN_DISPLAY_INFO, FONT_SHORT, sStorage->displayMonGenderLvlText, 10, 42, TEXT_SKIP_DRAW, NULL); } - CopyWindowToVram(0, COPYWIN_GFX); + CopyWindowToVram(WIN_DISPLAY_INFO, COPYWIN_GFX); if (sStorage->displayMonSpecies != SPECIES_NONE) { UpdateMonMarkingTiles(sStorage->displayMonMarkings, sStorage->markingComboTilesPtr); @@ -4278,7 +4286,7 @@ static void UpdateBoxToSendMons(void) static void InitPokeStorageBg0(void) { SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(29)); - LoadUserWindowBorderGfx(1, 2, 208); + LoadUserWindowBorderGfx(WIN_MESSAGE, 2, 208); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17); CopyBgTilemapBufferToVram(0); } @@ -4317,11 +4325,11 @@ static void PrintMessage(u8 id) } DynamicPlaceholderTextUtil_ExpandPlaceholders(sStorage->messageText, sMessages[id].text); - FillWindowPixelBuffer(1, PIXEL_FILL(1)); - AddTextPrinterParameterized(1, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SKIP_DRAW, NULL); - DrawTextBorderOuter(1, 2, 14); - PutWindowTilemap(1); - CopyWindowToVram(1, COPYWIN_GFX); + FillWindowPixelBuffer(WIN_MESSAGE, PIXEL_FILL(1)); + AddTextPrinterParameterized(WIN_MESSAGE, FONT_NORMAL, sStorage->messageText, 0, 1, TEXT_SKIP_DRAW, NULL); + DrawTextBorderOuter(WIN_MESSAGE, 2, 14); + PutWindowTilemap(WIN_MESSAGE); + CopyWindowToVram(WIN_MESSAGE, COPYWIN_GFX); ScheduleBgCopyTilemapToVram(0); } @@ -4333,7 +4341,7 @@ static void ShowYesNoWindow(s8 cursorPos) static void ClearBottomWindow(void) { - ClearStdWindowAndFrameToTransparent(1, FALSE); + ClearStdWindowAndFrameToTransparent(WIN_MESSAGE, FALSE); ScheduleBgCopyTilemapToVram(0); } @@ -9201,8 +9209,8 @@ static void PrintItemDescription(void) else description = ItemId_GetDescription(sStorage->displayMonItemId); - FillWindowPixelBuffer(2, PIXEL_FILL(1)); - AddTextPrinterParameterized5(2, FONT_NORMAL, description, 4, 0, 0, NULL, 0, 1); + FillWindowPixelBuffer(WIN_ITEM_DESC, PIXEL_FILL(1)); + AddTextPrinterParameterized5(WIN_ITEM_DESC, FONT_NORMAL, description, 4, 0, 0, NULL, 0, 1); } static void InitItemInfoWindow(void) From ca9bc34bea71d12e335e2a009580b3a8b4d01e65 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 7 Jan 2022 17:26:23 -0500 Subject: [PATCH 491/762] Clean up pokemon_storage_system graphics --- graphics/pokemon_storage/close_box_button.bin | 1 + graphics/pokemon_storage/party_slot_empty.bin | 1 + .../pokemon_storage/party_slot_filled.bin | 1 + graphics/pokemon_storage/pkmn_data.bin | 1 + .../{unknown.pal => text_windows.pal} | 0 src/pokemon_storage_system.c | 77 +++++++------------ 6 files changed, 33 insertions(+), 48 deletions(-) create mode 100755 graphics/pokemon_storage/close_box_button.bin create mode 100755 graphics/pokemon_storage/party_slot_empty.bin create mode 100755 graphics/pokemon_storage/party_slot_filled.bin create mode 100755 graphics/pokemon_storage/pkmn_data.bin rename graphics/pokemon_storage/{unknown.pal => text_windows.pal} (100%) diff --git a/graphics/pokemon_storage/close_box_button.bin b/graphics/pokemon_storage/close_box_button.bin new file mode 100755 index 000000000000..8b130a4818ac --- /dev/null +++ b/graphics/pokemon_storage/close_box_button.bin @@ -0,0 +1 @@ +LMNOpqrst\]^_€‚„uvwxyz{|}…†‡‰Š‹ŚŤ \ No newline at end of file diff --git a/graphics/pokemon_storage/party_slot_empty.bin b/graphics/pokemon_storage/party_slot_empty.bin new file mode 100755 index 000000000000..991c232f739b --- /dev/null +++ b/graphics/pokemon_storage/party_slot_empty.bin @@ -0,0 +1 @@ +CDDESTTUcdde \ No newline at end of file diff --git a/graphics/pokemon_storage/party_slot_filled.bin b/graphics/pokemon_storage/party_slot_filled.bin new file mode 100755 index 000000000000..c0b93bf145c8 --- /dev/null +++ b/graphics/pokemon_storage/party_slot_filled.bin @@ -0,0 +1 @@ +@AABPQQR`aab \ No newline at end of file diff --git a/graphics/pokemon_storage/pkmn_data.bin b/graphics/pokemon_storage/pkmn_data.bin new file mode 100755 index 000000000000..3336797aac76 --- /dev/null +++ b/graphics/pokemon_storage/pkmn_data.bin @@ -0,0 +1 @@ +!!!!!!!!!!!!!!!! \ No newline at end of file diff --git a/graphics/pokemon_storage/unknown.pal b/graphics/pokemon_storage/text_windows.pal similarity index 100% rename from graphics/pokemon_storage/unknown.pal rename to graphics/pokemon_storage/text_windows.pal diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 604f665ed184..8bf12c2bda46 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -946,45 +946,26 @@ static const union AffineAnimCmd *const sAffineAnims_ChooseBoxMenu[] = static const u8 sChooseBoxMenu_TextColors[] = {TEXT_COLOR_RED, TEXT_DYNAMIC_COLOR_6, TEXT_DYNAMIC_COLOR_5}; static const u8 sText_OutOf30[] = _("/30"); -static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); -static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); -static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); -static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); -static const u16 sDisplayMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/display_menu.gbapal"); // Unused -static const u32 sDisplayMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/display_menu.bin.lz"); - -static const u16 sPkmnData_Tilemap[] = -{ - 0x0101, 0x0102, 0x0103, 0x0104, 0x0105, 0x0106, 0x0107, 0x0108, 0x0111, 0x0112, 0x0113, 0x0114, 0x0115, 0x0116, 0x0117, 0x0118, - 0x2101, 0x2102, 0x2103, 0x2104, 0x2105, 0x2106, 0x2107, 0x2108, 0x2111, 0x2112, 0x2113, 0x2114, 0x2115, 0x2116, 0x2117, 0x2118, -}; - +static const u16 sChooseBoxMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); +static const u8 sChooseBoxMenuCenter_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); +static const u8 sChooseBoxMenuSides_Gfx[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); +static const u32 sScrollingBg_Gfx[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.4bpp.lz"); +static const u32 sScrollingBg_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/scrolling_bg.bin.lz"); +static const u16 sDisplayMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/display_menu.gbapal"); // Unused +static const u32 sDisplayMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_storage/display_menu.bin.lz"); +static const u16 sPkmnData_Tilemap[] = INCBIN_U16("graphics/pokemon_storage/pkmn_data.bin"); // sInterface_Pal - parts of the display frame, "PkmnData"'s normal color, Close Box -static const u16 sInterface_Pal[] = INCBIN_U16("graphics/pokemon_storage/interface.gbapal"); -static const u16 sPkmnDataGray_Pal[] = INCBIN_U16("graphics/pokemon_storage/pkmn_data_gray.gbapal"); -static const u16 sBg_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg.gbapal"); -static const u16 sBgMoveItems_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg_move_items.gbapal"); - -static const u16 sCloseBoxButton_Tilemap[] = -{ - 0x014c, 0x014d, 0x014e, 0x014f, 0x0170, 0x0171, 0x0172, 0x0173, 0x0174, 0x015c, 0x015d, 0x015e, 0x015f, 0x0180, 0x0181, 0x0182, - 0x0183, 0x0184, 0x0175, 0x0176, 0x0177, 0x0178, 0x0179, 0x017a, 0x017b, 0x017c, 0x017d, 0x0185, 0x0186, 0x0187, 0x0188, 0x0189, - 0x018a, 0x018b, 0x018c, 0x018d -}; -static const u16 sPartySlotFilled_Tilemap[] = -{ - 0x1140, 0x1141, 0x1141, 0x1142, 0x1150, 0x1151, 0x1151, 0x1152, 0x1160, 0x1161, 0x1161, 0x1162, -}; -static const u16 sPartySlotEmpty_Tilemap[] = -{ - 0x1143, 0x1144, 0x1144, 0x1145, 0x1153, 0x1154, 0x1154, 0x1155, 0x1163, 0x1164, 0x1164, 0x1165, -}; - -static const u16 sWaveform_Pal[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); -static const u32 sWaveform_Gfx[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); -static const u16 sUnused_Pal[] = INCBIN_U16("graphics/pokemon_storage/unused.gbapal"); -static const u16 sUnknown_Pal[] = INCBIN_U16("graphics/pokemon_storage/unknown.gbapal"); +static const u16 sInterface_Pal[] = INCBIN_U16("graphics/pokemon_storage/interface.gbapal"); +static const u16 sPkmnDataGray_Pal[] = INCBIN_U16("graphics/pokemon_storage/pkmn_data_gray.gbapal"); +static const u16 sBg_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg.gbapal"); +static const u16 sBgMoveItems_Pal[] = INCBIN_U16("graphics/pokemon_storage/bg_move_items.gbapal"); +static const u16 sCloseBoxButton_Tilemap[] = INCBIN_U16("graphics/pokemon_storage/close_box_button.bin"); +static const u16 sPartySlotFilled_Tilemap[] = INCBIN_U16("graphics/pokemon_storage/party_slot_filled.bin"); +static const u16 sPartySlotEmpty_Tilemap[] = INCBIN_U16("graphics/pokemon_storage/party_slot_empty.bin"); +static const u16 sWaveform_Pal[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); +static const u32 sWaveform_Gfx[] = INCBIN_U32("graphics/pokemon_storage/waveform.4bpp"); +static const u16 sUnused_Pal[] = INCBIN_U16("graphics/pokemon_storage/unused.gbapal"); +static const u16 sTextWindows_Pal[] = INCBIN_U16("graphics/pokemon_storage/text_windows.gbapal"); static const struct WindowTemplate sWindowTemplates[] = { @@ -1357,7 +1338,7 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero windowId = AddWindow(&winTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(zero2)); tileData1 = (u8*) GetWindowAttribute(windowId, WINDOW_TILE_DATA); - tileData2 = (winTemplate.width * 32) + tileData1; + tileData2 = (winTemplate.width * TILE_SIZE_4BPP) + tileData1; if (!zero1) txtColor[0] = TEXT_COLOR_TRANSPARENT; @@ -1393,7 +1374,7 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero // Unused static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgColor, u8 fgColor, u8 shadowColor) { - u32 tileSize; + u32 tilesSize; u8 windowId; u8 txtColor[3]; u8 *tileData1, *tileData2; @@ -1401,17 +1382,17 @@ static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgC winTemplate.width = StringLength_Multibyte(string); winTemplate.height = 2; - tileSize = winTemplate.width * 32; + tilesSize = winTemplate.width * TILE_SIZE_4BPP; windowId = AddWindow(&winTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(bgColor)); tileData1 = (u8*) GetWindowAttribute(windowId, WINDOW_TILE_DATA); - tileData2 = (winTemplate.width * 32) + tileData1; + tileData2 = (winTemplate.width * TILE_SIZE_4BPP) + tileData1; txtColor[0] = bgColor; txtColor[1] = fgColor; txtColor[2] = shadowColor; AddTextPrinterParameterized4(windowId, FONT_NORMAL, 0, 2, 0, 0, txtColor, TEXT_SKIP_DRAW, string); - CpuCopy16(tileData1, dst, tileSize); - CpuCopy16(tileData2, dst + offset, tileSize); + CpuCopy16(tileData1, dst, tilesSize); + CpuCopy16(tileData2, dst + offset, tilesSize); RemoveWindow(windowId); } @@ -3870,7 +3851,7 @@ static void InitPalettesAndSprites(void) { LoadPalette(sInterface_Pal, 0, sizeof(sInterface_Pal)); LoadPalette(sPkmnDataGray_Pal, 0x20, sizeof(sPkmnDataGray_Pal)); - LoadPalette(sUnknown_Pal, 0xF0, sizeof(sUnknown_Pal)); + LoadPalette(sTextWindows_Pal, 0xF0, sizeof(sTextWindows_Pal)); if (sStorage->boxOption != OPTION_MOVE_ITEMS) LoadPalette(sBg_Pal, 0x30, sizeof(sBg_Pal)); else @@ -3978,7 +3959,7 @@ static void CreateDisplayMonSprite(void) sStorage->displayMonSprite = &gSprites[spriteId]; sStorage->displayMonPalOffset = palSlot * 16 + 0x100; - sStorage->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * 32; + sStorage->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * TILE_SIZE_4BPP; } while (0); if (sStorage->displayMonSprite == NULL) @@ -5138,7 +5119,7 @@ static u16 TryLoadMonIconTiles(u16 species) sStorage->iconSpeciesList[i] = species; sStorage->numIconsPerSpecies[i]++; offset = 16 * i; - CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + offset * 32, 0x200); + CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + offset * TILE_SIZE_4BPP, 0x200); return offset; } @@ -8763,7 +8744,7 @@ static void CreateItemIconSprites(void) { spriteSheet.tag = GFXTAG_ITEM_ICON_0 + i; LoadCompressedSpriteSheet(&spriteSheet); - sStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0); + sStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void*)(OBJ_VRAM0); sStorage->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); sStorage->itemIcons[i].palIndex *= 16; sStorage->itemIcons[i].palIndex += 0x100; From 6a21c3f5f30a29e953c20ed09bacfa3d7f4b1a79 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Sat, 8 Jan 2022 20:39:45 +0000 Subject: [PATCH 492/762] Remove unneeded brackets in GetWeekCount --- src/field_specials.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/field_specials.c b/src/field_specials.c index d97a17a7d364..0a72369138fb 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -932,9 +932,8 @@ u16 GetWeekCount(void) { u16 weekCount = gLocalTime.days / 7; if (weekCount > 9999) - { weekCount = 9999; - } + return weekCount; } From 8f1a760937a7ac10da18b1bdb980cb7687e1789e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 8 Jan 2022 23:53:55 -0500 Subject: [PATCH 493/762] Add missing array constants in field_player_avatar --- src/field_player_avatar.c | 102 ++++++++++++++++++++++---------------- src/naming_screen.c | 6 +-- 2 files changed, 61 insertions(+), 47 deletions(-) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 3c0276a27bea..aa4b99a57b21 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -30,6 +30,15 @@ #include "constants/songs.h" #include "constants/trainer_types.h" +#define NUM_FORCED_MOVEMENTS 18 +#define NUM_ACRO_BIKE_COLLISIONS 5 + +enum { + PLAYER_STILL, + PLAYER_TURNING, + PLAYER_MOVING, +}; + static EWRAM_DATA u8 sSpinStartFacingDir = 0; EWRAM_DATA struct ObjectEvent gObjectEvents[OBJECT_EVENTS_COUNT] = {}; EWRAM_DATA struct PlayerAvatar gPlayerAvatar = {}; @@ -139,9 +148,7 @@ static void AlignFishingAnimationFrames(void); static u8 TrySpinPlayerForWarp(struct ObjectEvent *object, s16 *a1); -// .rodata - -static bool8 (*const sForcedMovementTestFuncs[])(u8) = +static bool8 (*const sForcedMovementTestFuncs[NUM_FORCED_MOVEMENTS])(u8) = { MetatileBehavior_IsTrickHouseSlipperyFloor, MetatileBehavior_IsIce_2, @@ -163,7 +170,8 @@ static bool8 (*const sForcedMovementTestFuncs[])(u8) = MetatileBehavior_IsMuddySlope, }; -static bool8 (*const sForcedMovementFuncs[])(void) = +// + 1 for ForcedMovement_None, which is excluded above +static bool8 (*const sForcedMovementFuncs[NUM_FORCED_MOVEMENTS + 1])(void) = { ForcedMovement_None, ForcedMovement_Slip, @@ -188,12 +196,12 @@ static bool8 (*const sForcedMovementFuncs[])(void) = static void (*const sPlayerNotOnBikeFuncs[])(u8, u16) = { - PlayerNotOnBikeNotMoving, - PlayerNotOnBikeTurningInPlace, - PlayerNotOnBikeMoving, + [PLAYER_STILL] = PlayerNotOnBikeNotMoving, + [PLAYER_TURNING] = PlayerNotOnBikeTurningInPlace, + [PLAYER_MOVING] = PlayerNotOnBikeMoving, }; -static bool8 (*const sAcroBikeTrickMetatiles[])(u8) = +static bool8 (*const sAcroBikeTrickMetatiles[NUM_ACRO_BIKE_COLLISIONS])(u8) = { MetatileBehavior_IsBumpySlope, MetatileBehavior_IsIsolatedVerticalRail, @@ -202,7 +210,7 @@ static bool8 (*const sAcroBikeTrickMetatiles[])(u8) = MetatileBehavior_IsHorizontalRail, }; -static const u8 sAcroBikeTrickCollisionTypes[] = { +static const u8 sAcroBikeTrickCollisionTypes[NUM_ACRO_BIKE_COLLISIONS] = { COLLISION_WHEELIE_HOP, COLLISION_ISOLATED_VERTICAL_RAIL, COLLISION_ISOLATED_HORIZONTAL_RAIL, @@ -232,33 +240,41 @@ static bool8 (*const sArrowWarpMetatileBehaviorChecks[])(u8) = static const u8 sRivalAvatarGfxIds[][2] = { - {OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL}, - {OBJ_EVENT_GFX_RIVAL_BRENDAN_MACH_BIKE, OBJ_EVENT_GFX_RIVAL_MAY_MACH_BIKE}, - {OBJ_EVENT_GFX_RIVAL_BRENDAN_ACRO_BIKE, OBJ_EVENT_GFX_RIVAL_MAY_ACRO_BIKE}, - {OBJ_EVENT_GFX_RIVAL_BRENDAN_SURFING, OBJ_EVENT_GFX_RIVAL_MAY_SURFING}, - {OBJ_EVENT_GFX_BRENDAN_UNDERWATER, OBJ_EVENT_GFX_MAY_UNDERWATER}, - {OBJ_EVENT_GFX_RIVAL_BRENDAN_FIELD_MOVE, OBJ_EVENT_GFX_RIVAL_MAY_FIELD_MOVE}, - {OBJ_EVENT_GFX_BRENDAN_FISHING, OBJ_EVENT_GFX_MAY_FISHING}, - {OBJ_EVENT_GFX_BRENDAN_WATERING, OBJ_EVENT_GFX_MAY_WATERING} + [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}, + [PLAYER_AVATAR_STATE_ACRO_BIKE] = {OBJ_EVENT_GFX_RIVAL_BRENDAN_ACRO_BIKE, OBJ_EVENT_GFX_RIVAL_MAY_ACRO_BIKE}, + [PLAYER_AVATAR_STATE_SURFING] = {OBJ_EVENT_GFX_RIVAL_BRENDAN_SURFING, OBJ_EVENT_GFX_RIVAL_MAY_SURFING}, + [PLAYER_AVATAR_STATE_UNDERWATER] = {OBJ_EVENT_GFX_BRENDAN_UNDERWATER, OBJ_EVENT_GFX_MAY_UNDERWATER}, + [PLAYER_AVATAR_STATE_FIELD_MOVE] = {OBJ_EVENT_GFX_RIVAL_BRENDAN_FIELD_MOVE, OBJ_EVENT_GFX_RIVAL_MAY_FIELD_MOVE}, + [PLAYER_AVATAR_STATE_FISHING] = {OBJ_EVENT_GFX_BRENDAN_FISHING, OBJ_EVENT_GFX_MAY_FISHING}, + [PLAYER_AVATAR_STATE_WATERING] = {OBJ_EVENT_GFX_BRENDAN_WATERING, OBJ_EVENT_GFX_MAY_WATERING} }; static const u8 sPlayerAvatarGfxIds[][2] = { - {OBJ_EVENT_GFX_BRENDAN_NORMAL, OBJ_EVENT_GFX_MAY_NORMAL}, - {OBJ_EVENT_GFX_BRENDAN_MACH_BIKE, OBJ_EVENT_GFX_MAY_MACH_BIKE}, - {OBJ_EVENT_GFX_BRENDAN_ACRO_BIKE, OBJ_EVENT_GFX_MAY_ACRO_BIKE}, - {OBJ_EVENT_GFX_BRENDAN_SURFING, OBJ_EVENT_GFX_MAY_SURFING}, - {OBJ_EVENT_GFX_BRENDAN_UNDERWATER, OBJ_EVENT_GFX_MAY_UNDERWATER}, - {OBJ_EVENT_GFX_BRENDAN_FIELD_MOVE, OBJ_EVENT_GFX_MAY_FIELD_MOVE}, - {OBJ_EVENT_GFX_BRENDAN_FISHING, OBJ_EVENT_GFX_MAY_FISHING}, - {OBJ_EVENT_GFX_BRENDAN_WATERING, OBJ_EVENT_GFX_MAY_WATERING}, + [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}, + [PLAYER_AVATAR_STATE_ACRO_BIKE] = {OBJ_EVENT_GFX_BRENDAN_ACRO_BIKE, OBJ_EVENT_GFX_MAY_ACRO_BIKE}, + [PLAYER_AVATAR_STATE_SURFING] = {OBJ_EVENT_GFX_BRENDAN_SURFING, OBJ_EVENT_GFX_MAY_SURFING}, + [PLAYER_AVATAR_STATE_UNDERWATER] = {OBJ_EVENT_GFX_BRENDAN_UNDERWATER, OBJ_EVENT_GFX_MAY_UNDERWATER}, + [PLAYER_AVATAR_STATE_FIELD_MOVE] = {OBJ_EVENT_GFX_BRENDAN_FIELD_MOVE, OBJ_EVENT_GFX_MAY_FIELD_MOVE}, + [PLAYER_AVATAR_STATE_FISHING] = {OBJ_EVENT_GFX_BRENDAN_FISHING, OBJ_EVENT_GFX_MAY_FISHING}, + [PLAYER_AVATAR_STATE_WATERING] = {OBJ_EVENT_GFX_BRENDAN_WATERING, OBJ_EVENT_GFX_MAY_WATERING}, }; -static const u8 sFRLGAvatarGfxIds[] = {OBJ_EVENT_GFX_RED, OBJ_EVENT_GFX_LEAF}; +static const u8 sFRLGAvatarGfxIds[GENDER_COUNT] = +{ + [MALE] = OBJ_EVENT_GFX_RED, + [FEMALE] = OBJ_EVENT_GFX_LEAF +}; -static const u8 sRSAvatarGfxIds[] = {OBJ_EVENT_GFX_LINK_RS_BRENDAN, OBJ_EVENT_GFX_LINK_RS_MAY}; +static const u8 sRSAvatarGfxIds[GENDER_COUNT] = +{ + [MALE] = OBJ_EVENT_GFX_LINK_RS_BRENDAN, + [FEMALE] = OBJ_EVENT_GFX_LINK_RS_MAY +}; -static const u8 sPlayerAvatarGfxToStateFlag[2][5][2] = +static const u8 sPlayerAvatarGfxToStateFlag[GENDER_COUNT][5][2] = { [MALE] = { @@ -306,8 +322,6 @@ static bool8 (*const sPlayerAvatarSecretBaseMatSpin[])(struct Task *, struct Obj PlayerAvatar_SecretBaseMatSpinStep3, }; -// .text - void MovementType_Player(struct Sprite *sprite) { UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, ObjectEventCB2_NoMovement2); @@ -406,7 +420,7 @@ static u8 GetForcedMovementByMetatileBehavior(void) { u8 metatileBehavior = gObjectEvents[gPlayerAvatar.objectEventId].currentMetatileBehavior; - for (i = 0; i < 18; i++) + for (i = 0; i < NUM_FORCED_MOVEMENTS; i++) { if (sForcedMovementTestFuncs[i](metatileBehavior)) return i + 1; @@ -429,7 +443,7 @@ static bool8 ForcedMovement_None(void) return FALSE; } -static u8 DoForcedMovement(u8 direction, void (*b)(u8)) +static bool8 DoForcedMovement(u8 direction, void (*moveFunc)(u8)) { struct PlayerAvatar *playerAvatar = &gPlayerAvatar; u8 collision = CheckForPlayerAvatarCollision(direction); @@ -440,7 +454,7 @@ static u8 DoForcedMovement(u8 direction, void (*b)(u8)) ForcedMovement_None(); if (collision < COLLISION_STOP_SURFING) { - return 0; + return FALSE; } else { @@ -448,23 +462,23 @@ static u8 DoForcedMovement(u8 direction, void (*b)(u8)) PlayerJumpLedge(direction); playerAvatar->flags |= PLAYER_AVATAR_FLAG_FORCED_MOVE; playerAvatar->runningState = MOVING; - return 1; + return TRUE; } } else { playerAvatar->runningState = MOVING; - b(direction); - return 1; + moveFunc(direction); + return TRUE; } } -static u8 DoForcedMovementInCurrentDirection(void (*a)(u8)) +static bool8 DoForcedMovementInCurrentDirection(void (*moveFunc)(u8)) { struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; playerObjEvent->disableAnim = TRUE; - return DoForcedMovement(playerObjEvent->movementDirection, a); + return DoForcedMovement(playerObjEvent->movementDirection, moveFunc); } static bool8 ForcedMovement_Slip(void) @@ -512,13 +526,13 @@ static bool8 ForcedMovement_PushedEastByCurrent(void) return DoForcedMovement(DIR_EAST, PlayerRideWaterCurrent); } -static u8 ForcedMovement_Slide(u8 direction, void (*b)(u8)) +static bool8 ForcedMovement_Slide(u8 direction, void (*moveFunc)(u8)) { struct ObjectEvent *playerObjEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; playerObjEvent->disableAnim = TRUE; playerObjEvent->facingDirectionLocked = TRUE; - return DoForcedMovement(direction, b); + return DoForcedMovement(direction, moveFunc); } static bool8 ForcedMovement_SlideSouth(void) @@ -579,17 +593,17 @@ static u8 CheckMovementInputNotOnBike(u8 direction) if (direction == DIR_NONE) { gPlayerAvatar.runningState = NOT_MOVING; - return 0; + return PLAYER_STILL; } else if (direction != GetPlayerMovementDirection() && gPlayerAvatar.runningState != MOVING) { gPlayerAvatar.runningState = TURN_DIRECTION; - return 1; + return PLAYER_TURNING; } else { gPlayerAvatar.runningState = MOVING; - return 2; + return PLAYER_MOVING; } } @@ -755,7 +769,7 @@ static void CheckAcroBikeCollision(s16 x, s16 y, u8 metatileBehavior, u8 *collis { u8 i; - for (i = 0; i < ARRAY_COUNT(sAcroBikeTrickMetatiles); i++) + for (i = 0; i < NUM_ACRO_BIKE_COLLISIONS; i++) { if (sAcroBikeTrickMetatiles[i](metatileBehavior)) { diff --git a/src/naming_screen.c b/src/naming_screen.c index 5aef44f149f8..0019a51b1daf 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1408,10 +1408,10 @@ static void NamingScreen_CreatePlayerIcon(void) u8 rivalGfxId; u8 spriteId; - rivalGfxId = GetRivalAvatarGraphicsIdByStateIdAndGender(0, sNamingScreen->monSpecies); + rivalGfxId = GetRivalAvatarGraphicsIdByStateIdAndGender(PLAYER_AVATAR_STATE_NORMAL, sNamingScreen->monSpecies); spriteId = CreateObjectGraphicsSprite(rivalGfxId, SpriteCallbackDummy, 56, 37, 0); gSprites[spriteId].oam.priority = 3; - StartSpriteAnim(&gSprites[spriteId], 4); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_SOUTH); } static void NamingScreen_CreatePCIcon(void) @@ -1438,7 +1438,7 @@ static void NamingScreen_CreateWaldaDadIcon(void) spriteId = CreateObjectGraphicsSprite(OBJ_EVENT_GFX_MAN_1, SpriteCallbackDummy, 56, 37, 0); gSprites[spriteId].oam.priority = 3; - StartSpriteAnim(&gSprites[spriteId], 4); + StartSpriteAnim(&gSprites[spriteId], ANIM_STD_GO_SOUTH); } //-------------------------------------------------- From 8b920691e6a7ac3b14cd553cc3020ded2f1ca4d9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 9 Jan 2022 01:31:42 -0500 Subject: [PATCH 494/762] Fix FLAG_DECORATION_0 name --- data/maps/SecretBase_BlueCave1/map.json | 2 +- data/maps/SecretBase_BlueCave2/map.json | 2 +- data/maps/SecretBase_BlueCave3/map.json | 2 +- data/maps/SecretBase_BlueCave4/map.json | 2 +- data/maps/SecretBase_BrownCave1/map.json | 2 +- data/maps/SecretBase_BrownCave2/map.json | 2 +- data/maps/SecretBase_BrownCave3/map.json | 2 +- data/maps/SecretBase_BrownCave4/map.json | 2 +- data/maps/SecretBase_RedCave1/map.json | 2 +- data/maps/SecretBase_RedCave2/map.json | 2 +- data/maps/SecretBase_RedCave3/map.json | 2 +- data/maps/SecretBase_RedCave4/map.json | 2 +- data/maps/SecretBase_Shrub1/map.json | 2 +- data/maps/SecretBase_Shrub2/map.json | 2 +- data/maps/SecretBase_Shrub3/map.json | 2 +- data/maps/SecretBase_Shrub4/map.json | 2 +- data/maps/SecretBase_Tree1/map.json | 2 +- data/maps/SecretBase_Tree2/map.json | 2 +- data/maps/SecretBase_Tree3/map.json | 2 +- data/maps/SecretBase_Tree4/map.json | 2 +- data/maps/SecretBase_YellowCave1/map.json | 2 +- data/maps/SecretBase_YellowCave2/map.json | 2 +- data/maps/SecretBase_YellowCave3/map.json | 2 +- data/maps/SecretBase_YellowCave4/map.json | 2 +- data/scripts/secret_base.inc | 6 +++--- include/constants/flags.h | 2 +- src/decoration.c | 2 +- 27 files changed, 29 insertions(+), 29 deletions(-) diff --git a/data/maps/SecretBase_BlueCave1/map.json b/data/maps/SecretBase_BlueCave1/map.json index 3fb6157cca75..066cfb38576d 100644 --- a/data/maps/SecretBase_BlueCave1/map.json +++ b/data/maps/SecretBase_BlueCave1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BlueCave2/map.json b/data/maps/SecretBase_BlueCave2/map.json index ca15e39f1868..b74fa5afb627 100644 --- a/data/maps/SecretBase_BlueCave2/map.json +++ b/data/maps/SecretBase_BlueCave2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BlueCave3/map.json b/data/maps/SecretBase_BlueCave3/map.json index 356b4894d42b..dd67e2d54690 100644 --- a/data/maps/SecretBase_BlueCave3/map.json +++ b/data/maps/SecretBase_BlueCave3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BlueCave4/map.json b/data/maps/SecretBase_BlueCave4/map.json index 078bada8e657..3c97371f53f8 100644 --- a/data/maps/SecretBase_BlueCave4/map.json +++ b/data/maps/SecretBase_BlueCave4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BrownCave1/map.json b/data/maps/SecretBase_BrownCave1/map.json index 6f2dc92f2475..062eac9f4b89 100644 --- a/data/maps/SecretBase_BrownCave1/map.json +++ b/data/maps/SecretBase_BrownCave1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BrownCave2/map.json b/data/maps/SecretBase_BrownCave2/map.json index 11559c12fb5e..eb04f2a8de30 100644 --- a/data/maps/SecretBase_BrownCave2/map.json +++ b/data/maps/SecretBase_BrownCave2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BrownCave3/map.json b/data/maps/SecretBase_BrownCave3/map.json index c2dbb7fc45ac..1d00ee139aeb 100644 --- a/data/maps/SecretBase_BrownCave3/map.json +++ b/data/maps/SecretBase_BrownCave3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_BrownCave4/map.json b/data/maps/SecretBase_BrownCave4/map.json index e7147ae85dfb..f1fb82eb4f94 100644 --- a/data/maps/SecretBase_BrownCave4/map.json +++ b/data/maps/SecretBase_BrownCave4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_RedCave1/map.json b/data/maps/SecretBase_RedCave1/map.json index fd264fc6cfb9..e83458a87ab3 100644 --- a/data/maps/SecretBase_RedCave1/map.json +++ b/data/maps/SecretBase_RedCave1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_RedCave2/map.json b/data/maps/SecretBase_RedCave2/map.json index b60b3bbff246..9a0ac210f40f 100644 --- a/data/maps/SecretBase_RedCave2/map.json +++ b/data/maps/SecretBase_RedCave2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_RedCave3/map.json b/data/maps/SecretBase_RedCave3/map.json index 079837a62109..ce405a40abc9 100644 --- a/data/maps/SecretBase_RedCave3/map.json +++ b/data/maps/SecretBase_RedCave3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_RedCave4/map.json b/data/maps/SecretBase_RedCave4/map.json index 10fbbfeb0d5e..2b1ad8c2c9bd 100644 --- a/data/maps/SecretBase_RedCave4/map.json +++ b/data/maps/SecretBase_RedCave4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Shrub1/map.json b/data/maps/SecretBase_Shrub1/map.json index e0d1015cbbc3..a028cbe62aa1 100644 --- a/data/maps/SecretBase_Shrub1/map.json +++ b/data/maps/SecretBase_Shrub1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Shrub2/map.json b/data/maps/SecretBase_Shrub2/map.json index 879b7464e967..60977e70d4aa 100644 --- a/data/maps/SecretBase_Shrub2/map.json +++ b/data/maps/SecretBase_Shrub2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Shrub3/map.json b/data/maps/SecretBase_Shrub3/map.json index 6751a74147c2..a513b0bd2b22 100644 --- a/data/maps/SecretBase_Shrub3/map.json +++ b/data/maps/SecretBase_Shrub3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Shrub4/map.json b/data/maps/SecretBase_Shrub4/map.json index c193b8348eff..6aded553b8ca 100644 --- a/data/maps/SecretBase_Shrub4/map.json +++ b/data/maps/SecretBase_Shrub4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Tree1/map.json b/data/maps/SecretBase_Tree1/map.json index cd0cad5f08c8..cd6a0b33af08 100644 --- a/data/maps/SecretBase_Tree1/map.json +++ b/data/maps/SecretBase_Tree1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Tree2/map.json b/data/maps/SecretBase_Tree2/map.json index 1ac393a1588f..3aad151ffe5c 100644 --- a/data/maps/SecretBase_Tree2/map.json +++ b/data/maps/SecretBase_Tree2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Tree3/map.json b/data/maps/SecretBase_Tree3/map.json index b7eec22440a4..498852c02470 100644 --- a/data/maps/SecretBase_Tree3/map.json +++ b/data/maps/SecretBase_Tree3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_Tree4/map.json b/data/maps/SecretBase_Tree4/map.json index 0e068ec94d49..b24d1d8a99fc 100644 --- a/data/maps/SecretBase_Tree4/map.json +++ b/data/maps/SecretBase_Tree4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_YellowCave1/map.json b/data/maps/SecretBase_YellowCave1/map.json index 1d873bfe29c1..54916fda3200 100644 --- a/data/maps/SecretBase_YellowCave1/map.json +++ b/data/maps/SecretBase_YellowCave1/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_YellowCave2/map.json b/data/maps/SecretBase_YellowCave2/map.json index af2e957bc6a6..f9d9a572be1d 100644 --- a/data/maps/SecretBase_YellowCave2/map.json +++ b/data/maps/SecretBase_YellowCave2/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_YellowCave3/map.json b/data/maps/SecretBase_YellowCave3/map.json index d78aa2862863..fdcc94c18bed 100644 --- a/data/maps/SecretBase_YellowCave3/map.json +++ b/data/maps/SecretBase_YellowCave3/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/maps/SecretBase_YellowCave4/map.json b/data/maps/SecretBase_YellowCave4/map.json index 0ca4bc4d32d5..246974eaada4 100644 --- a/data/maps/SecretBase_YellowCave4/map.json +++ b/data/maps/SecretBase_YellowCave4/map.json @@ -26,7 +26,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SecretBase_EventScript_RecordMixTrainer", - "flag": "FLAG_DECORATION_0" + "flag": "FLAG_HIDE_SECRET_BASE_TRAINER" }, { "graphics_id": "OBJ_EVENT_GFX_VAR_0", diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc index d21bb9aab5c1..918a9d630127 100644 --- a/data/scripts/secret_base.inc +++ b/data/scripts/secret_base.inc @@ -133,7 +133,7 @@ SecretBase_EventScript_InitSecretBase:: closemessage playse SE_EXIT setvar VAR_INIT_SECRET_BASE, 0 - setflag FLAG_DECORATION_0 + setflag FLAG_HIDE_SECRET_BASE_TRAINER special SetPlayerSecretBase special EnterSecretBase setvar VAR_0x8004, 0 @@ -172,14 +172,14 @@ SecretBase_EventScript_Enter:: playse SE_EXIT special IsCurSecretBaseOwnedByAnotherPlayer goto_if_eq VAR_RESULT, FALSE, SecretBase_EventScript_EnterPlayersBase - clearflag FLAG_DECORATION_0 + clearflag FLAG_HIDE_SECRET_BASE_TRAINER special EnterSecretBase setvar VAR_SECRET_BASE_INITIALIZED, 0 waitstate end SecretBase_EventScript_EnterPlayersBase:: - setflag FLAG_DECORATION_0 + setflag FLAG_HIDE_SECRET_BASE_TRAINER special EnterSecretBase setvar VAR_SECRET_BASE_INITIALIZED, 0 waitstate diff --git a/include/constants/flags.h b/include/constants/flags.h index 793fe113540e..eacb2426db0d 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -190,7 +190,7 @@ #define FLAG_RECEIVED_TM40 0xAA #define FLAG_RECEIVED_TM04 0xAB #define FLAG_RECEIVED_TM03 0xAC -#define FLAG_DECORATION_0 0xAD +#define FLAG_HIDE_SECRET_BASE_TRAINER 0xAD #define FLAG_DECORATION_1 0xAE #define FLAG_DECORATION_2 0xAF #define FLAG_DECORATION_3 0xB0 diff --git a/src/decoration.c b/src/decoration.c index 118b4918e666..78f6ccb40751 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -41,7 +41,7 @@ #define PLACE_DECORATION_SELECTOR_TAG 0xbe5 #define PLACE_DECORATION_PLAYER_TAG 0x008 -#define NUM_DECORATION_FLAGS (FLAG_DECORATION_14 - FLAG_DECORATION_0) +#define NUM_DECORATION_FLAGS (FLAG_DECORATION_14 - FLAG_DECORATION_1 + 1) #define tCursorX data[0] #define tCursorY data[1] From 429d53b95c6e7555931486fd2f713d9182a7f150 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 9 Jan 2022 11:12:35 -0500 Subject: [PATCH 495/762] Use runningState directly in CheckMovementInputNotOnBike --- src/field_player_avatar.c | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index aa4b99a57b21..fce23ee8ea62 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -33,12 +33,6 @@ #define NUM_FORCED_MOVEMENTS 18 #define NUM_ACRO_BIKE_COLLISIONS 5 -enum { - PLAYER_STILL, - PLAYER_TURNING, - PLAYER_MOVING, -}; - static EWRAM_DATA u8 sSpinStartFacingDir = 0; EWRAM_DATA struct ObjectEvent gObjectEvents[OBJECT_EVENTS_COUNT] = {}; EWRAM_DATA struct PlayerAvatar gPlayerAvatar = {}; @@ -196,9 +190,9 @@ static bool8 (*const sForcedMovementFuncs[NUM_FORCED_MOVEMENTS + 1])(void) = static void (*const sPlayerNotOnBikeFuncs[])(u8, u16) = { - [PLAYER_STILL] = PlayerNotOnBikeNotMoving, - [PLAYER_TURNING] = PlayerNotOnBikeTurningInPlace, - [PLAYER_MOVING] = PlayerNotOnBikeMoving, + [NOT_MOVING] = PlayerNotOnBikeNotMoving, + [TURN_DIRECTION] = PlayerNotOnBikeTurningInPlace, + [MOVING] = PlayerNotOnBikeMoving, }; static bool8 (*const sAcroBikeTrickMetatiles[NUM_ACRO_BIKE_COLLISIONS])(u8) = @@ -591,20 +585,11 @@ static void MovePlayerNotOnBike(u8 direction, u16 heldKeys) static u8 CheckMovementInputNotOnBike(u8 direction) { if (direction == DIR_NONE) - { - gPlayerAvatar.runningState = NOT_MOVING; - return PLAYER_STILL; - } + return gPlayerAvatar.runningState = NOT_MOVING; else if (direction != GetPlayerMovementDirection() && gPlayerAvatar.runningState != MOVING) - { - gPlayerAvatar.runningState = TURN_DIRECTION; - return PLAYER_TURNING; - } + return gPlayerAvatar.runningState = TURN_DIRECTION; else - { - gPlayerAvatar.runningState = MOVING; - return PLAYER_MOVING; - } + return gPlayerAvatar.runningState = MOVING; } static void PlayerNotOnBikeNotMoving(u8 direction, u16 heldKeys) From ded2021361ce8cef9c9a785ec52b42f8d4f653f9 Mon Sep 17 00:00:00 2001 From: Wiz <94323898+GBAWiz420@users.noreply.github.com> Date: Tue, 16 Nov 2021 13:25:33 -0500 Subject: [PATCH 496/762] Remove redundant assembler --- berry_fix/payload/src/main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/berry_fix/payload/src/main.c b/berry_fix/payload/src/main.c index 325d3830eb96..32d90f9c19c9 100644 --- a/berry_fix/payload/src/main.c +++ b/berry_fix/payload/src/main.c @@ -268,9 +268,9 @@ void main_callback(u32 * state, void * unused1, void * unused2) void DBG_LoadDigitsPal(void) { - const u16 * src; s32 i; - register vu16 * dest asm("r3") = (vu16 *)BG_PLTT + 1; + const u16 * src; + vu16 * dest = (vu16 *)BG_PLTT + 1; DmaFill16(3, RGB(31, 31, 31), (vu16 *)BG_PLTT, BG_PLTT_SIZE); src = sDebugPals; for (i = 0; i < 4; i++) From 110fbc559cc658179e127117c68d9eea9474a61a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 02:08:14 -0500 Subject: [PATCH 497/762] Make item optional for givemon and setwildbattle --- asm/macros/event.inc | 4 ++-- data/maps/AncientTomb/scripts.inc | 2 +- data/maps/AquaHideout_B1F/scripts.inc | 4 ++-- data/maps/BattleFrontier_OutsideEast/scripts.inc | 2 +- data/maps/DesertRuins/scripts.inc | 2 +- data/maps/IslandCave/scripts.inc | 2 +- data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc | 6 +++--- data/maps/MarineCave_End/scripts.inc | 2 +- data/maps/MossdeepCity_StevensHouse/scripts.inc | 2 +- data/maps/NewMauville_Inside/scripts.inc | 6 +++--- data/maps/Route120/scripts.inc | 2 +- data/maps/RustboroCity_DevonCorp_2F/scripts.inc | 4 ++-- data/maps/SkyPillar_Top/scripts.inc | 2 +- data/maps/TerraCave_End/scripts.inc | 2 +- data/scripts/kecleon.inc | 2 +- 15 files changed, 22 insertions(+), 22 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 8d65f602defd..d85cfb975243 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -986,7 +986,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:req + .macro givemon species:req, level:req, item=ITEM_NONE .byte 0x79 .2byte \species .byte \level @@ -1432,7 +1432,7 @@ @ 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:req + .macro setwildbattle species:req, level:req, item=ITEM_NONE .byte 0xb6 .2byte \species .byte \level diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc index d28ac7bc3592..dd22359558ce 100644 --- a/data/maps/AncientTomb/scripts.inc +++ b/data/maps/AncientTomb/scripts.inc @@ -61,7 +61,7 @@ AncientTomb_EventScript_Registeel:: playmoncry SPECIES_REGISTEEL, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_REGISTEEL, 40, ITEM_NONE + setwildbattle SPECIES_REGISTEEL, 40 setflag FLAG_SYS_CTRL_OBJ_DELETE special StartRegiBattle waitstate diff --git a/data/maps/AquaHideout_B1F/scripts.inc b/data/maps/AquaHideout_B1F/scripts.inc index 4f2eb836f5ec..f644f6ae56fa 100644 --- a/data/maps/AquaHideout_B1F/scripts.inc +++ b/data/maps/AquaHideout_B1F/scripts.inc @@ -29,7 +29,7 @@ AquaHideout_B1F_EventScript_ShowElectrode2:: AquaHideout_B1F_EventScript_Electrode1:: lock faceplayer - setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE + setwildbattle SPECIES_ELECTRODE, 30 waitse playmoncry SPECIES_ELECTRODE, CRY_MODE_ENCOUNTER delay 40 @@ -53,7 +53,7 @@ AquaHideout_B1F_EventScript_DefeatedElectrode1:: AquaHideout_B1F_EventScript_Electrode2:: lock faceplayer - setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE + setwildbattle SPECIES_ELECTRODE, 30 waitse playmoncry SPECIES_ELECTRODE, CRY_MODE_ENCOUNTER delay 40 diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc index f34373480642..e8eec6f1606b 100644 --- a/data/maps/BattleFrontier_OutsideEast/scripts.inc +++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc @@ -129,7 +129,7 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo:: delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_SUDOWOODO - setwildbattle SPECIES_SUDOWOODO, 40, ITEM_NONE + setwildbattle SPECIES_SUDOWOODO, 40 setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc index 2aaa61ebb932..21473e87a3c3 100644 --- a/data/maps/DesertRuins/scripts.inc +++ b/data/maps/DesertRuins/scripts.inc @@ -61,7 +61,7 @@ DesertRuins_EventScript_Regirock:: playmoncry SPECIES_REGIROCK, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_REGIROCK, 40, ITEM_NONE + setwildbattle SPECIES_REGIROCK, 40 setflag FLAG_SYS_CTRL_OBJ_DELETE special StartRegiBattle waitstate diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc index 8f8236a5c030..d15802aaa8d0 100644 --- a/data/maps/IslandCave/scripts.inc +++ b/data/maps/IslandCave/scripts.inc @@ -94,7 +94,7 @@ IslandCave_EventScript_Regice:: playmoncry SPECIES_REGICE, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_REGICE, 40, ITEM_NONE + setwildbattle SPECIES_REGICE, 40 setflag FLAG_SYS_CTRL_OBJ_DELETE special StartRegiBattle waitstate diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index 7c7f47d2eed9..d645db440565 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -340,7 +340,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_TakeYourTime:: LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: bufferspeciesname STR_VAR_1, SPECIES_CYNDAQUIL setvar VAR_TEMP_1, SPECIES_CYNDAQUIL - givemon SPECIES_CYNDAQUIL, 5, ITEM_NONE + givemon SPECIES_CYNDAQUIL, 5 goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC hidemonpic @@ -381,7 +381,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil:: LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: bufferspeciesname STR_VAR_1, SPECIES_TOTODILE setvar VAR_TEMP_1, SPECIES_TOTODILE - givemon SPECIES_TOTODILE, 5, ITEM_NONE + givemon SPECIES_TOTODILE, 5 goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC hidemonpic @@ -422,7 +422,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile:: LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: bufferspeciesname STR_VAR_1, SPECIES_CHIKORITA setvar VAR_TEMP_1, SPECIES_CHIKORITA - givemon SPECIES_CHIKORITA, 5, ITEM_NONE + givemon SPECIES_CHIKORITA, 5 goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC hidemonpic diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc index 1d988a44488d..a7ff58369553 100644 --- a/data/maps/MarineCave_End/scripts.inc +++ b/data/maps/MarineCave_End/scripts.inc @@ -35,7 +35,7 @@ MarineCave_End_EventScript_Kyogre:: delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_KYOGRE - setwildbattle SPECIES_KYOGRE, 70, ITEM_NONE + setwildbattle SPECIES_KYOGRE, 70 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index aac12ec2affb..00814ce19495 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -86,7 +86,7 @@ MossdeepCity_StevensHouse_EventScript_LeaveBeldum:: MossdeepCity_StevensHouse_EventScript_GiveBeldum:: setvar VAR_TEMP_1, SPECIES_BELDUM - givemon SPECIES_BELDUM, 5, ITEM_NONE + givemon SPECIES_BELDUM, 5 goto_if_eq VAR_RESULT, 0, MossdeepCity_StevensHouse_EventScript_SendBeldumParty goto_if_eq VAR_RESULT, 1, MossdeepCity_StevensHouse_EventScript_SendBeldumPC goto Common_EventScript_NoMoreRoomForPokemon diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc index 51748380add7..244eea436f3c 100644 --- a/data/maps/NewMauville_Inside/scripts.inc +++ b/data/maps/NewMauville_Inside/scripts.inc @@ -176,7 +176,7 @@ NewMauville_Inside_EventScript_GeneratorOff:: NewMauville_Inside_EventScript_Voltorb1:: lock faceplayer - setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE + setwildbattle SPECIES_VOLTORB, 25 waitse playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 @@ -200,7 +200,7 @@ NewMauville_Inside_EventScript_DefeatedVoltorb1:: NewMauville_Inside_EventScript_Voltorb2:: lock faceplayer - setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE + setwildbattle SPECIES_VOLTORB, 25 waitse playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 @@ -224,7 +224,7 @@ NewMauville_Inside_EventScript_DefeatedVoltorb2:: NewMauville_Inside_EventScript_Voltorb3:: lock faceplayer - setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE + setwildbattle SPECIES_VOLTORB, 25 waitse playmoncry SPECIES_VOLTORB, CRY_MODE_ENCOUNTER delay 40 diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc index baf721a5ca56..a0bfbc60c38f 100644 --- a/data/maps/Route120/scripts.inc +++ b/data/maps/Route120/scripts.inc @@ -193,7 +193,7 @@ Route120_EventScript_StevenBattleKecleon:: playmoncry SPECIES_KECLEON, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_KECLEON, 30, ITEM_NONE + setwildbattle SPECIES_KECLEON, 30 setvar VAR_0x8009, 0 setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index 987828a295da..a85cbc8be8a2 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -145,7 +145,7 @@ RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: setvar VAR_TEMP_1, SPECIES_LILEEP - givemon SPECIES_LILEEP, 20, ITEM_NONE + givemon SPECIES_LILEEP, 20 goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC goto Common_EventScript_NoMoreRoomForPokemon @@ -190,7 +190,7 @@ RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: setvar VAR_TEMP_1, SPECIES_ANORITH - givemon SPECIES_ANORITH, 20, ITEM_NONE + givemon SPECIES_ANORITH, 20 goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC goto Common_EventScript_NoMoreRoomForPokemon diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index 5c71bbe4bfe0..7b65d9e257b0 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -48,7 +48,7 @@ SkyPillar_Top_EventScript_Rayquaza:: playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_RAYQUAZA, 70, ITEM_NONE + setwildbattle SPECIES_RAYQUAZA, 70 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc index 5f0051becf6d..8b2732d45ef2 100644 --- a/data/maps/TerraCave_End/scripts.inc +++ b/data/maps/TerraCave_End/scripts.inc @@ -35,7 +35,7 @@ TerraCave_End_EventScript_Groudon:: delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_GROUDON - setwildbattle SPECIES_GROUDON, 70, ITEM_NONE + setwildbattle SPECIES_GROUDON, 70 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/scripts/kecleon.inc b/data/scripts/kecleon.inc index f51dc2fbd2bd..634551902664 100644 --- a/data/scripts/kecleon.inc +++ b/data/scripts/kecleon.inc @@ -71,7 +71,7 @@ EventScript_BattleKecleon:: playmoncry SPECIES_KECLEON, CRY_MODE_ENCOUNTER delay 40 waitmoncry - setwildbattle SPECIES_KECLEON, 30, ITEM_NONE + setwildbattle SPECIES_KECLEON, 30 setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle clearflag FLAG_SYS_CTRL_OBJ_DELETE From 3a6c633905c3fddb893aa6484a2cce4f0135ca26 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 02:16:25 -0500 Subject: [PATCH 498/762] Add seteventmon --- asm/macros/event.inc | 8 ++++++++ data/maps/BirthIsland_Exterior/scripts.inc | 5 +---- data/maps/FarawayIsland_Interior/scripts.inc | 5 +---- data/maps/NavelRock_Bottom/scripts.inc | 5 +---- data/maps/NavelRock_Top/scripts.inc | 5 +---- data/maps/SouthernIsland_Interior/scripts.inc | 10 ++-------- 6 files changed, 14 insertions(+), 24 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index d85cfb975243..58e37d0a6ac7 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1931,3 +1931,11 @@ waitbuttonpress closebraillemessage .endm + + @ Creates an "event legal" PokĂ©mon for an encounter + .macro seteventmon species:req, level:req, item=ITEM_NONE + setvar VAR_0x8004, \species + setvar VAR_0x8005, \level + setvar VAR_0x8006, \item + special CreateEventLegalEnemyMon + .endm diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc index 57d54d6fdc89..68d3124d9508 100644 --- a/data/maps/BirthIsland_Exterior/scripts.inc +++ b/data/maps/BirthIsland_Exterior/scripts.inc @@ -82,10 +82,7 @@ BirthIsland_Exterior_EventScript_Deoxys:: delay 40 waitmoncry setvar VAR_LAST_TALKED, LOCALID_DEOXYS - setvar VAR_0x8004, SPECIES_DEOXYS - setvar VAR_0x8005, 30 @ level - setvar VAR_0x8006, ITEM_NONE - special CreateEventLegalEnemyMon + seteventmon SPECIES_DEOXYS, 30 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc index 983b4709a2c3..d3d519ed1511 100644 --- a/data/maps/FarawayIsland_Interior/scripts.inc +++ b/data/maps/FarawayIsland_Interior/scripts.inc @@ -129,10 +129,7 @@ FarawayIsland_Interior_EventScript_Mew:: special DestroyMewEmergingGrassSprite delay 40 waitmoncry - setvar VAR_0x8004, SPECIES_MEW - setvar VAR_0x8005, 30 @ level - setvar VAR_0x8006, ITEM_NONE - special CreateEventLegalEnemyMon + seteventmon SPECIES_MEW, 30 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc index f6687a36f5a6..90cc229895be 100644 --- a/data/maps/NavelRock_Bottom/scripts.inc +++ b/data/maps/NavelRock_Bottom/scripts.inc @@ -53,10 +53,7 @@ NavelRock_Bottom_EventScript_Lugia:: playmoncry SPECIES_LUGIA, CRY_MODE_ENCOUNTER waitmoncry delay 20 - setvar VAR_0x8004, SPECIES_LUGIA - setvar VAR_0x8005, 70 @ level - setvar VAR_0x8006, ITEM_NONE - special CreateEventLegalEnemyMon + seteventmon SPECIES_LUGIA, 70 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc index 2805f5677124..10969367a11f 100644 --- a/data/maps/NavelRock_Top/scripts.inc +++ b/data/maps/NavelRock_Top/scripts.inc @@ -57,10 +57,7 @@ NavelRock_Top_EventScript_HoOh:: applymovement LOCALID_HO_OH, NavelRock_Top_Movement_HoOhApproach waitmovement 0 special RemoveCameraObject - setvar VAR_0x8004, SPECIES_HO_OH - setvar VAR_0x8005, 70 @ level - setvar VAR_0x8006, ITEM_NONE - special CreateEventLegalEnemyMon + seteventmon SPECIES_HO_OH, 70 setflag FLAG_SYS_CTRL_OBJ_DELETE special BattleSetup_StartLegendaryBattle waitstate diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index c46cefefc641..7bd16b523ae4 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -105,17 +105,11 @@ SouthernIsland_Interior_EventScript_Sign:: end SouthernIsland_Interior_EventScript_SetLatiosBattleVars:: - setvar VAR_0x8004, SPECIES_LATIOS - setvar VAR_0x8005, 50 @ level - setvar VAR_0x8006, ITEM_SOUL_DEW - special CreateEventLegalEnemyMon + seteventmon SPECIES_LATIOS, 50, ITEM_SOUL_DEW return SouthernIsland_Interior_EventScript_SetLatiasBattleVars:: - setvar VAR_0x8004, SPECIES_LATIAS - setvar VAR_0x8005, 50 @ level - setvar VAR_0x8006, ITEM_SOUL_DEW - special CreateEventLegalEnemyMon + seteventmon SPECIES_LATIAS, 50, ITEM_SOUL_DEW return SouthernIsland_Interior_Movement_CameraPanUp: From 49418f8c017bf012e738527c14b3a92edec54d3e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 02:19:20 -0500 Subject: [PATCH 499/762] Add missing commas --- data/maps/BattleFrontier_BattlePikeLobby/scripts.inc | 2 +- data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc | 2 +- data/maps/LavaridgeTown_Gym_1F/scripts.inc | 4 ++-- data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc | 2 +- data/maps/MtPyre_3F/scripts.inc | 2 +- data/maps/SouthernIsland_Interior/scripts.inc | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index fb91ee752a23..320e12d996a4 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -31,7 +31,7 @@ BattleFrontier_BattlePikeLobby_EventScript_QuitWithoutSaving:: lockall msgbox BattleFrontier_BattlePikeLobby_Text_FailedToSaveBeforeQuitting, MSGBOX_DEFAULT closemessage - pike_set PIKE_DATA_WIN_STREAK 0 + pike_set PIKE_DATA_WIN_STREAK, 0 pike_set PIKE_DATA_WIN_STREAK_ACTIVE, FALSE frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 setvar VAR_TEMP_0, 255 diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc index 9d060214de6d..45f042e4f8fb 100644 --- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc @@ -193,7 +193,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy:: waitmovement 0 pike_get PIKE_DATA_WIN_STREAK addvar VAR_RESULT, 1 - pike_set PIKE_DATA_WIN_STREAK VAR_RESULT + pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT call BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom waitstate end diff --git a/data/maps/LavaridgeTown_Gym_1F/scripts.inc b/data/maps/LavaridgeTown_Gym_1F/scripts.inc index 6628360c1505..530d6e959850 100644 --- a/data/maps/LavaridgeTown_Gym_1F/scripts.inc +++ b/data/maps/LavaridgeTown_Gym_1F/scripts.inc @@ -19,7 +19,7 @@ LavaridgeTown_Gym_1F_EventScript_SetTrainerTempVars:: setvar VAR_TEMP_D, 0 setvar VAR_TEMP_E, 0 setvar VAR_TEMP_F, 0 - goto_if_defeated TRAINER_COLE LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar + goto_if_defeated TRAINER_COLE, LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar setvar VAR_TEMP_B, 1 LavaridgeTown_Gym_1F_EventScript_SetGeraldTempVar:: goto_if_defeated TRAINER_GERALD, LavaridgeTown_Gym_1F_EventScript_SetAxleTempVar @@ -105,7 +105,7 @@ LavaridgeTown_Gym_1F_EventScript_FlanneryRematch:: LavaridgeTown_Gym_1F_EventScript_Cole:: trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, TRAINER_COLE, LOCALID_COLE, LavaridgeTown_Gym_1F_Text_ColeIntro, LavaridgeTown_Gym_1F_Text_ColeDefeat, LavaridgeTown_Gym_EventScript_CheckTrainerScript - msgbox LavaridgeTown_Gym_1F_Text_ColePostBattle MSGBOX_AUTOCLOSE + msgbox LavaridgeTown_Gym_1F_Text_ColePostBattle, MSGBOX_AUTOCLOSE end LavaridgeTown_Gym_EventScript_CheckTrainerScript:: diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index 993172683322..901940ab8ed1 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -22,7 +22,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos:: checkplayergender 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 + 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 return diff --git a/data/maps/MtPyre_3F/scripts.inc b/data/maps/MtPyre_3F/scripts.inc index ff15f9939300..3c79e807a45e 100644 --- a/data/maps/MtPyre_3F/scripts.inc +++ b/data/maps/MtPyre_3F/scripts.inc @@ -7,7 +7,7 @@ MtPyre_3F_EventScript_William:: end MtPyre_3F_EventScript_Kayla:: - trainerbattle_single TRAINER_KAYLA, MtPyre_3F_Text_KaylaIntro MtPyre_3F_Text_KaylaDefeat + trainerbattle_single TRAINER_KAYLA, MtPyre_3F_Text_KaylaIntro, MtPyre_3F_Text_KaylaDefeat msgbox MtPyre_3F_Text_KaylaPostBattle, MSGBOX_AUTOCLOSE end diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc index 7bd16b523ae4..8486739d93dc 100644 --- a/data/maps/SouthernIsland_Interior/scripts.inc +++ b/data/maps/SouthernIsland_Interior/scripts.inc @@ -47,7 +47,7 @@ SouthernIsland_Interior_EventScript_SetMayGfx:: SouthernIsland_Interior_EventScript_TryLatiEncounter:: lockall - setvar VAR_0x8008, 12 + setvar VAR_0x8008, 12 @ Player's Y coordinate. Not read goto SouthernIsland_Interior_EventScript_Lati end From 0a78cb5c9edf7d6b39297a5b4c874d59c6a69b39 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 10:04:47 -0500 Subject: [PATCH 500/762] Fix some battle dome graphics names --- .../{tourney_line_mask_map.bin => tourney_tree.bin} | Bin .../{tourney_bg.png => tourney_tree.png} | Bin .../text_pp.pal | 0 include/graphics.h | 4 ++-- src/battle_dome.c | 4 ++-- src/graphics.c | 6 +++--- 6 files changed, 7 insertions(+), 7 deletions(-) rename graphics/battle_frontier/{tourney_line_mask_map.bin => tourney_tree.bin} (100%) rename graphics/battle_frontier/{tourney_bg.png => tourney_tree.png} (100%) rename graphics/{battle_frontier => battle_interface}/text_pp.pal (100%) diff --git a/graphics/battle_frontier/tourney_line_mask_map.bin b/graphics/battle_frontier/tourney_tree.bin similarity index 100% rename from graphics/battle_frontier/tourney_line_mask_map.bin rename to graphics/battle_frontier/tourney_tree.bin diff --git a/graphics/battle_frontier/tourney_bg.png b/graphics/battle_frontier/tourney_tree.png similarity index 100% rename from graphics/battle_frontier/tourney_bg.png rename to graphics/battle_frontier/tourney_tree.png diff --git a/graphics/battle_frontier/text_pp.pal b/graphics/battle_interface/text_pp.pal similarity index 100% rename from graphics/battle_frontier/text_pp.pal rename to graphics/battle_interface/text_pp.pal diff --git a/include/graphics.h b/include/graphics.h index e2fe5cf778a6..c072babf3dbb 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4121,11 +4121,11 @@ extern const u32 gDomeTourneyInfoCardBg_Tilemap[]; extern const u32 gDomeTourneyTree_Pal[]; extern const u32 gDomeTourneyTreeButtons_Pal[]; extern const u32 gDomeTourneyMatchCardBg_Pal[]; -extern const u32 gDomeTourneyBg_Gfx[]; +extern const u32 gDomeTourneyTree_Gfx[]; extern const u32 gDomeTourneyLine_Gfx[]; extern const u32 gDomeTourneyLineDown_Tilemap[]; extern const u32 gDomeTourneyLineUp_Tilemap[]; -extern const u32 gDomeTourneyLineMask_Tilemap[]; +extern const u32 gDomeTourneyTree_Tilemap[]; extern const u32 gDomeTourneyTreeButtons_Gfx[]; extern const u16 gTilesetAnims_BattleDomePals0_0[]; extern const u16 gTilesetAnims_BattleDomePals0_1[]; diff --git a/src/battle_dome.c b/src/battle_dome.c index 2f77491c9e34..aadd85afd6b9 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5304,10 +5304,10 @@ static void Task_ShowTourneyTree(u8 taskId) break; case 2: sTilemapBuffer = AllocZeroed(BG_SCREEN_SIZE); - LZDecompressWram(gDomeTourneyLineMask_Tilemap, sTilemapBuffer); + LZDecompressWram(gDomeTourneyTree_Tilemap, sTilemapBuffer); SetBgTilemapBuffer(1, sTilemapBuffer); CopyBgTilemapBufferToVram(1); - DecompressAndLoadBgGfxUsingHeap(1, gDomeTourneyBg_Gfx, 0x2000, 0, 0); + DecompressAndLoadBgGfxUsingHeap(1, gDomeTourneyTree_Gfx, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(2, gDomeTourneyLine_Gfx, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(2, gDomeTourneyLineDown_Tilemap, 0x2000, 0, 1); DecompressAndLoadBgGfxUsingHeap(3, gDomeTourneyLineUp_Tilemap, 0x2000, 0, 1); diff --git a/src/graphics.c b/src/graphics.c index 47b82b6b7204..b79d449ae6c3 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -950,9 +950,9 @@ const u32 gVsLettersGfx[] = INCBIN_U32("graphics/battle_transitions/vs.4bpp.lz") #include "data/graphics/battle_terrain.h" // Battle Dome -const u32 gDomeTourneyBg_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_bg.4bpp.lz"); +const u32 gDomeTourneyTree_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_tree.4bpp.lz"); const u32 gDomeTourneyLine_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_line.4bpp.lz"); // the red glow mask for the tourney advancement lines -const u32 gDomeTourneyLineMask_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_line_mask_map.bin.lz"); +const u32 gDomeTourneyTree_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_tree.bin.lz"); const u32 gDomeTourneyLineDown_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_line_down_map.bin.lz"); const u32 gDomeTourneyLineUp_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_line_up_map.bin.lz"); const u32 gDomeTourneyInfoCard_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_info_card.4bpp.lz"); @@ -967,7 +967,7 @@ const u32 gBattleArenaJudgementSymbolsGfx[] = INCBIN_U32("graphics/battle_fronti const u32 gBattleArenaJudgementSymbolsPalette[] = INCBIN_U32("graphics/battle_frontier/arena_judgement_symbols.gbapal.lz"); const u32 gBattleWindowTextPalette[] = INCBIN_U32("graphics/battle_interface/text.gbapal.lz"); -const u16 gPPTextPalette[] = INCBIN_U16("graphics/battle_frontier/text_pp.gbapal"); +const u16 gPPTextPalette[] = INCBIN_U16("graphics/battle_interface/text_pp.gbapal"); const u16 gTilesetAnims_BattleDomePals0_0[] = INCBIN_U16("graphics/battle_frontier/dome_anim1.gbapal"); const u16 gTilesetAnims_BattleDomePals0_1[] = INCBIN_U16("graphics/battle_frontier/dome_anim2.gbapal"); From fde18b47746b577c4d2037ab065ce66062da2a67 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 10:42:00 -0500 Subject: [PATCH 501/762] Fix berry crusher graphics name --- decompress.sh | 5 +++++ graphics/berry_crush/{crusher.bin => text_windows.bin} | 0 include/graphics.h | 2 +- src/berry_crush.c | 8 ++++---- src/graphics.c | 2 +- 5 files changed, 11 insertions(+), 6 deletions(-) create mode 100755 decompress.sh rename graphics/berry_crush/{crusher.bin => text_windows.bin} (100%) diff --git a/decompress.sh b/decompress.sh new file mode 100755 index 000000000000..26b5a0db74d5 --- /dev/null +++ b/decompress.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +FILEPATH=$1 + +tools/gbagfx/gbagfx graphics/$FILEPATH.bin.lz graphics/$FILEPATH.bin diff --git a/graphics/berry_crush/crusher.bin b/graphics/berry_crush/text_windows.bin similarity index 100% rename from graphics/berry_crush/crusher.bin rename to graphics/berry_crush/text_windows.bin diff --git a/include/graphics.h b/include/graphics.h index c072babf3dbb..7b29a70b7997 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -5002,7 +5002,7 @@ extern const u16 gUsePokeblockCondition_Pal[]; // Berry Crush extern const u32 gBerryCrush_Crusher_Gfx[]; extern const u16 gBerryCrush_Crusher_Pal[]; -extern const u32 gBerryCrush_Crusher_Tilemap[]; +extern const u32 gBerryCrush_TextWindows_Tilemap[]; // Pokenav extern const u32 gPokenavMessageBox_Gfx[]; diff --git a/src/berry_crush.c b/src/berry_crush.c index 9b8323e2d77d..e7a5df951c63 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1947,15 +1947,15 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game) static void CopyPlayerNameWindowGfxToBg(struct BerryCrushGame *game) { u8 i = 0; - u8 * crusherGfx; + u8 * windowGfx; - LZ77UnCompWram(gBerryCrush_Crusher_Tilemap, gDecompressionBuffer); + LZ77UnCompWram(gBerryCrush_TextWindows_Tilemap, gDecompressionBuffer); - for (crusherGfx = gDecompressionBuffer; i < game->playerCount; i++) + for (windowGfx = gDecompressionBuffer; i < game->playerCount; i++) { CopyToBgTilemapBufferRect( 3, - &crusherGfx[game->gfx.playerCoords[i]->playerId * 40], + &windowGfx[game->gfx.playerCoords[i]->playerId * 40], game->gfx.playerCoords[i]->windowGfxX, game->gfx.playerCoords[i]->windowGfxY, 10, diff --git a/src/graphics.c b/src/graphics.c index b79d449ae6c3..d1a3654eacac 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1523,7 +1523,7 @@ const u16 gFrontierPassCancelButtonHighlighted_Tilemap[] = INCBIN_U16("graphics/ // Berry Crush const u16 gBerryCrush_Crusher_Pal[] = INCBIN_U16("graphics/berry_crush/crusher.gbapal"); const u32 gBerryCrush_Crusher_Gfx[] = INCBIN_U32("graphics/berry_crush/crusher.4bpp.lz"); -const u32 gBerryCrush_Crusher_Tilemap[] = INCBIN_U32("graphics/berry_crush/crusher.bin.lz"); +const u32 gBerryCrush_TextWindows_Tilemap[] = INCBIN_U32("graphics/berry_crush/text_windows.bin.lz"); // random garbage at the end. static const u8 sEmpty3[0x54BAC] = {0}; From 7103839a615463eeadeb671ad75436dd2e4a52e3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 11:14:59 -0500 Subject: [PATCH 502/762] Move summary screen graphics out of interface, fix some names --- .../a_button.png} | Bin .../b_button.png} | Bin .../effect_battle.bin} | Bin .../effect_cancel.bin} | Bin .../effect_contest.bin} | Bin .../markings.pal} | 0 .../move_select.png} | Bin .../page_battle_moves.bin} | Bin .../page_contest_moves.bin} | Bin .../page_info.bin} | Bin .../page_info_egg.bin} | Bin .../page_skills.bin} | Bin .../status_tilemap.bin | Bin .../tiles.pal} | 0 .../tiles.png} | Bin include/graphics.h | 8 ++--- src/graphics.c | 24 ++++++------- src/pokemon_summary_screen.c | 33 +++++++++--------- 18 files changed, 33 insertions(+), 32 deletions(-) rename graphics/{interface/summary_a_button.png => summary_screen/a_button.png} (100%) rename graphics/{interface/summary_b_button.png => summary_screen/b_button.png} (100%) rename graphics/{interface/powacc_tilemap.bin => summary_screen/effect_battle.bin} (100%) rename graphics/{interface/summary.bin => summary_screen/effect_cancel.bin} (100%) rename graphics/{interface/appealjam_tilemap.bin => summary_screen/effect_contest.bin} (100%) rename graphics/{interface/summary_markings.pal => summary_screen/markings.pal} (100%) rename graphics/{interface/summary_frames.png => summary_screen/move_select.png} (100%) rename graphics/{interface/summary_page_battle_moves.bin => summary_screen/page_battle_moves.bin} (100%) rename graphics/{interface/summary_page_contest_moves.bin => summary_screen/page_contest_moves.bin} (100%) rename graphics/{interface/summary_page_info.bin => summary_screen/page_info.bin} (100%) rename graphics/{interface/summary_page_info_copy.bin => summary_screen/page_info_egg.bin} (100%) rename graphics/{interface/summary_page_skills.bin => summary_screen/page_skills.bin} (100%) rename graphics/{interface => summary_screen}/status_tilemap.bin (100%) rename graphics/{interface/summary_screen.pal => summary_screen/tiles.pal} (100%) rename graphics/{interface/summary_screen.png => summary_screen/tiles.png} (100%) diff --git a/graphics/interface/summary_a_button.png b/graphics/summary_screen/a_button.png similarity index 100% rename from graphics/interface/summary_a_button.png rename to graphics/summary_screen/a_button.png diff --git a/graphics/interface/summary_b_button.png b/graphics/summary_screen/b_button.png similarity index 100% rename from graphics/interface/summary_b_button.png rename to graphics/summary_screen/b_button.png diff --git a/graphics/interface/powacc_tilemap.bin b/graphics/summary_screen/effect_battle.bin similarity index 100% rename from graphics/interface/powacc_tilemap.bin rename to graphics/summary_screen/effect_battle.bin diff --git a/graphics/interface/summary.bin b/graphics/summary_screen/effect_cancel.bin similarity index 100% rename from graphics/interface/summary.bin rename to graphics/summary_screen/effect_cancel.bin diff --git a/graphics/interface/appealjam_tilemap.bin b/graphics/summary_screen/effect_contest.bin similarity index 100% rename from graphics/interface/appealjam_tilemap.bin rename to graphics/summary_screen/effect_contest.bin diff --git a/graphics/interface/summary_markings.pal b/graphics/summary_screen/markings.pal similarity index 100% rename from graphics/interface/summary_markings.pal rename to graphics/summary_screen/markings.pal diff --git a/graphics/interface/summary_frames.png b/graphics/summary_screen/move_select.png similarity index 100% rename from graphics/interface/summary_frames.png rename to graphics/summary_screen/move_select.png diff --git a/graphics/interface/summary_page_battle_moves.bin b/graphics/summary_screen/page_battle_moves.bin similarity index 100% rename from graphics/interface/summary_page_battle_moves.bin rename to graphics/summary_screen/page_battle_moves.bin diff --git a/graphics/interface/summary_page_contest_moves.bin b/graphics/summary_screen/page_contest_moves.bin similarity index 100% rename from graphics/interface/summary_page_contest_moves.bin rename to graphics/summary_screen/page_contest_moves.bin diff --git a/graphics/interface/summary_page_info.bin b/graphics/summary_screen/page_info.bin similarity index 100% rename from graphics/interface/summary_page_info.bin rename to graphics/summary_screen/page_info.bin diff --git a/graphics/interface/summary_page_info_copy.bin b/graphics/summary_screen/page_info_egg.bin similarity index 100% rename from graphics/interface/summary_page_info_copy.bin rename to graphics/summary_screen/page_info_egg.bin diff --git a/graphics/interface/summary_page_skills.bin b/graphics/summary_screen/page_skills.bin similarity index 100% rename from graphics/interface/summary_page_skills.bin rename to graphics/summary_screen/page_skills.bin diff --git a/graphics/interface/status_tilemap.bin b/graphics/summary_screen/status_tilemap.bin similarity index 100% rename from graphics/interface/status_tilemap.bin rename to graphics/summary_screen/status_tilemap.bin diff --git a/graphics/interface/summary_screen.pal b/graphics/summary_screen/tiles.pal similarity index 100% rename from graphics/interface/summary_screen.pal rename to graphics/summary_screen/tiles.pal diff --git a/graphics/interface/summary_screen.png b/graphics/summary_screen/tiles.png similarity index 100% rename from graphics/interface/summary_screen.png rename to graphics/summary_screen/tiles.png diff --git a/include/graphics.h b/include/graphics.h index 7b29a70b7997..5c6a043cc553 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4035,16 +4035,16 @@ extern const u32 gPokenavRibbonsSummaryBg_Tilemap[]; extern const u32 gSummaryScreen_Gfx[]; extern const u32 gSummaryScreen_Pal[]; extern const u32 gSummaryPage_Info_Tilemap[]; -extern const u32 gSummaryPage_InfoCopy_Tilemap[]; +extern const u32 gSummaryPage_InfoEgg_Tilemap[]; extern const u32 gSummaryPage_Skills_Tilemap[]; extern const u32 gSummaryPage_BattleMoves_Tilemap[]; extern const u32 gSummaryPage_ContestMoves_Tilemap[]; extern const u16 gPPTextPalette[]; -extern const u16 gSummaryScreenWindow_Tilemap[]; extern const u32 gMoveTypes_Pal[]; -extern const u16 gSummaryScreenPowAcc_Tilemap[]; -extern const u16 gSummaryScreenAppealJam_Tilemap[]; +extern const u16 gSummaryScreen_MoveEffect_Battle_Tilemap[]; +extern const u16 gSummaryScreen_MoveEffect_Contest_Tilemap[]; +extern const u16 gSummaryScreen_MoveEffect_Cancel_Tilemap[]; extern const u32 gMoveTypes_Gfx[]; extern const u32 gSummaryMoveSelect_Gfx[]; diff --git a/src/graphics.c b/src/graphics.c index d1a3654eacac..51e585489d46 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1126,16 +1126,16 @@ const u32 gStatusPal_Icons[] = INCBIN_U32("graphics/interface/status_icons.gbapa const u32 gMoveTypes_Gfx[] = INCBIN_U32("graphics/types/move_types.4bpp.lz"); const u32 gMoveTypes_Pal[] = INCBIN_U32("graphics/types/move_types.gbapal.lz"); -const u32 gSummaryMoveSelect_Gfx[] = INCBIN_U32("graphics/interface/summary_frames.4bpp.lz"); -const u32 gSummaryMoveSelect_Pal[] = INCBIN_U32("graphics/interface/summary_frames.gbapal.lz"); +const u32 gSummaryMoveSelect_Gfx[] = INCBIN_U32("graphics/summary_screen/move_select.4bpp.lz"); +const u32 gSummaryMoveSelect_Pal[] = INCBIN_U32("graphics/summary_screen/move_select.gbapal.lz"); -const u32 gSummaryScreen_Gfx[] = INCBIN_U32("graphics/interface/summary_screen.4bpp.lz"); -const u32 gSummaryScreen_Pal[] = INCBIN_U32("graphics/interface/summary_screen.gbapal.lz"); -const u32 gSummaryPage_Info_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_info.bin.lz"); -const u32 gSummaryPage_Skills_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_skills.bin.lz"); -const u32 gSummaryPage_BattleMoves_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_battle_moves.bin.lz"); -const u32 gSummaryPage_ContestMoves_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_contest_moves.bin.lz"); -const u32 gSummaryPage_InfoCopy_Tilemap[] = INCBIN_U32("graphics/interface/summary_page_info_copy.bin.lz"); +const u32 gSummaryScreen_Gfx[] = INCBIN_U32("graphics/summary_screen/tiles.4bpp.lz"); +const u32 gSummaryScreen_Pal[] = INCBIN_U32("graphics/summary_screen/tiles.gbapal.lz"); +const u32 gSummaryPage_Info_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_info.bin.lz"); +const u32 gSummaryPage_Skills_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_skills.bin.lz"); +const u32 gSummaryPage_BattleMoves_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_battle_moves.bin.lz"); +const u32 gSummaryPage_ContestMoves_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_contest_moves.bin.lz"); +const u32 gSummaryPage_InfoEgg_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_info_egg.bin.lz"); const u32 gBagMaleTiles[] = INCBIN_U32("graphics/misc/bag_male.4bpp.lz"); const u32 gBagFemaleTiles[] = INCBIN_U32("graphics/misc/bag_female.4bpp.lz"); @@ -1259,9 +1259,9 @@ const u32 gPokedexSearchMenu_Gfx[] = INCBIN_U32("graphics/pokedex/search_menu.4b const u32 gPokedexSearchMenuNational_Tilemap[] = INCBIN_U32("graphics/pokedex/search_menu_national.bin.lz"); const u32 gPokedexSearchMenuHoenn_Tilemap[] = INCBIN_U32("graphics/pokedex/search_menu_hoenn.bin.lz"); -const u16 gSummaryScreenPowAcc_Tilemap[] = INCBIN_U16("graphics/interface/powacc_tilemap.bin"); -const u16 gSummaryScreenAppealJam_Tilemap[] = INCBIN_U16("graphics/interface/appealjam_tilemap.bin"); -const u16 gSummaryScreenWindow_Tilemap[] = INCBIN_U16("graphics/interface/summary.bin"); +const u16 gSummaryScreen_MoveEffect_Battle_Tilemap[] = INCBIN_U16("graphics/summary_screen/effect_battle.bin"); +const u16 gSummaryScreen_MoveEffect_Contest_Tilemap[] = INCBIN_U16("graphics/summary_screen/effect_contest.bin"); +const u16 gSummaryScreen_MoveEffect_Cancel_Tilemap[] = INCBIN_U16("graphics/summary_screen/effect_cancel.bin"); const u16 gIntroCopyright_Pal[] = INCBIN_U16("graphics/intro/copyright.gbapal"); const u32 gIntroCopyright_Gfx[] = INCBIN_U32("graphics/intro/copyright.4bpp.lz"); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index c5aeb6b47a15..10c69a4226d9 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -365,7 +365,7 @@ struct TilemapCtrl u8 field_9; }; -static const u16 sStatusTilemap[] = INCBIN_U16("graphics/interface/status_tilemap.bin"); +static const u16 sStatusTilemap[] = INCBIN_U16("graphics/summary_screen/status_tilemap.bin"); static const struct TilemapCtrl sStatusTilemapCtrl1 = { sStatusTilemap, 1, 10, 2, 0, 18 @@ -376,11 +376,11 @@ static const struct TilemapCtrl sStatusTilemapCtrl2 = }; static const struct TilemapCtrl sBattleMoveTilemapCtrl = { - gSummaryScreenPowAcc_Tilemap, 0, 10, 7, 0, 45 + gSummaryScreen_MoveEffect_Battle_Tilemap, 0, 10, 7, 0, 45 }; static const struct TilemapCtrl sContestMoveTilemapCtrl = { - gSummaryScreenAppealJam_Tilemap, 0, 10, 7, 0, 45 + gSummaryScreen_MoveEffect_Contest_Tilemap, 0, 10, 7, 0, 45 }; static const s8 sMultiBattleOrder[] = {0, 2, 3, 1, 4, 5}; static const struct WindowTemplate sSummaryTemplate[] = @@ -701,8 +701,8 @@ static const u8 sTextColors[][3] = {0, 7, 8} }; -static const u8 sSummaryAButtonBitmap[] = INCBIN_U8("graphics/interface/summary_a_button.4bpp"); -static const u8 sSummaryBButtonBitmap[] = INCBIN_U8("graphics/interface/summary_b_button.4bpp"); +static const u8 sAButton_Gfx[] = INCBIN_U8("graphics/summary_screen/a_button.4bpp"); +static const u8 sBButton_Gfx[] = INCBIN_U8("graphics/summary_screen/b_button.4bpp"); static void (*const sTextPrinterFunctions[])(void) = { @@ -1071,7 +1071,7 @@ static const struct SpriteTemplate sSpriteTemplate_StatusCondition = .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy }; -static const u16 sSummaryMarkingsPalette[] = INCBIN_U16("graphics/interface/summary_markings.gbapal"); +static const u16 sMarkings_Pal[] = INCBIN_U16("graphics/summary_screen/markings.gbapal"); // code void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)) @@ -1312,7 +1312,7 @@ static bool8 DecompressGraphics(void) } break; case 2: - LZDecompressWram(gSummaryPage_InfoCopy_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][1]); + LZDecompressWram(gSummaryPage_InfoEgg_Tilemap, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][1]); sMonSummaryScreen->switchCounter++; break; case 3: @@ -2551,6 +2551,7 @@ static void Task_ShowStatusWindow(u8 taskId) } } +// Toggles the "Cancel" window that appears when selecting a move static void TilemapFiveMovesDisplay(u16 *dst, u16 palette, bool8 remove) { u16 i, id; @@ -2561,18 +2562,18 @@ static void TilemapFiveMovesDisplay(u16 *dst, u16 palette, bool8 remove) { for (i = 0; i < 20; i++) { - dst[id + i] = gSummaryScreenWindow_Tilemap[i] + palette; - dst[id + i + 0x20] = gSummaryScreenWindow_Tilemap[i] + palette; - dst[id + i + 0x40] = gSummaryScreenWindow_Tilemap[i + 20] + palette; + dst[id + i] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i] + palette; + dst[id + i + 0x20] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i] + palette; + dst[id + i + 0x40] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i + 20] + palette; } } else // Remove { for (i = 0; i < 20; i++) { - dst[id + i] = gSummaryScreenWindow_Tilemap[i + 20] + palette; - dst[id + i + 0x20] = gSummaryScreenWindow_Tilemap[i + 40] + palette; - dst[id + i + 0x40] = gSummaryScreenWindow_Tilemap[i + 40] + palette; + dst[id + i] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i + 20] + palette; + dst[id + i + 0x20] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i + 40] + palette; + dst[id + i + 0x40] = gSummaryScreen_MoveEffect_Cancel_Tilemap[i + 40] + palette; } } } @@ -2788,8 +2789,8 @@ static void PrintGenderSymbol(struct Pokemon *mon, u16 species) static void PrintAOrBButtonIcon(u8 windowId, bool8 bButton, u32 x) { - // sSummaryBButtonBitmap - 0x80 = sSummaryAButtonBitmap - BlitBitmapToWindow(windowId, (bButton) ? sSummaryBButtonBitmap : sSummaryBButtonBitmap - 0x80, x, 0, 16, 16); + // sBButton_Gfx - sizeof(sBButton_Gfx) = sAButton_Gfx + BlitBitmapToWindow(windowId, (bButton) ? sBButton_Gfx : sBButton_Gfx - sizeof(sBButton_Gfx), x, 0, 16, 16); } static void PrintPageNamesAndStats(void) @@ -4011,7 +4012,7 @@ static void StopPokemonAnimations(void) // A subtle effect, this function stops static void CreateMonMarkingsSprite(struct Pokemon *mon) { - struct Sprite *sprite = CreateMonMarkingAllCombosSprite(TAG_MON_MARKINGS, TAG_MON_MARKINGS, sSummaryMarkingsPalette); + struct Sprite *sprite = CreateMonMarkingAllCombosSprite(TAG_MON_MARKINGS, TAG_MON_MARKINGS, sMarkings_Pal); sMonSummaryScreen->markingsSprite = sprite; if (sprite != NULL) From 565dd243098013c8665bc7f95106e2b5657e4e82 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 11:37:13 -0500 Subject: [PATCH 503/762] Move party menu graphics out of interface --- ...{party_menu_hpbar.png => unused_hpbar.png} | Bin .../party_menu_bg.bin => party_menu/bg.bin} | Bin .../party_menu_bg.pal => party_menu/bg.pal} | 0 .../party_menu_bg.png => party_menu/bg.png} | Bin .../cancel_button.bin} | 0 .../confirm_button.bin} | 0 .../pokeball.png} | Bin .../pokeball_small.png} | Bin graphics_file_rules.mk | 2 +- src/data/party_menu.h | 32 +++++++++++------- src/graphics.c | 14 ++++---- 11 files changed, 27 insertions(+), 21 deletions(-) rename graphics/interface/{party_menu_hpbar.png => unused_hpbar.png} (100%) rename graphics/{interface/party_menu_bg.bin => party_menu/bg.bin} (100%) rename graphics/{interface/party_menu_bg.pal => party_menu/bg.pal} (100%) rename graphics/{interface/party_menu_bg.png => party_menu/bg.png} (100%) rename graphics/{interface/party_menu_cancel_button.bin => party_menu/cancel_button.bin} (100%) rename graphics/{interface/party_menu_confirm_button.bin => party_menu/confirm_button.bin} (100%) rename graphics/{interface/party_menu_pokeball.png => party_menu/pokeball.png} (100%) rename graphics/{interface/party_menu_pokeball_small.png => party_menu/pokeball_small.png} (100%) diff --git a/graphics/interface/party_menu_hpbar.png b/graphics/interface/unused_hpbar.png similarity index 100% rename from graphics/interface/party_menu_hpbar.png rename to graphics/interface/unused_hpbar.png diff --git a/graphics/interface/party_menu_bg.bin b/graphics/party_menu/bg.bin similarity index 100% rename from graphics/interface/party_menu_bg.bin rename to graphics/party_menu/bg.bin diff --git a/graphics/interface/party_menu_bg.pal b/graphics/party_menu/bg.pal similarity index 100% rename from graphics/interface/party_menu_bg.pal rename to graphics/party_menu/bg.pal diff --git a/graphics/interface/party_menu_bg.png b/graphics/party_menu/bg.png similarity index 100% rename from graphics/interface/party_menu_bg.png rename to graphics/party_menu/bg.png diff --git a/graphics/interface/party_menu_cancel_button.bin b/graphics/party_menu/cancel_button.bin similarity index 100% rename from graphics/interface/party_menu_cancel_button.bin rename to graphics/party_menu/cancel_button.bin diff --git a/graphics/interface/party_menu_confirm_button.bin b/graphics/party_menu/confirm_button.bin similarity index 100% rename from graphics/interface/party_menu_confirm_button.bin rename to graphics/party_menu/confirm_button.bin diff --git a/graphics/interface/party_menu_pokeball.png b/graphics/party_menu/pokeball.png similarity index 100% rename from graphics/interface/party_menu_pokeball.png rename to graphics/party_menu/pokeball.png diff --git a/graphics/interface/party_menu_pokeball_small.png b/graphics/party_menu/pokeball_small.png similarity index 100% rename from graphics/interface/party_menu_pokeball_small.png rename to graphics/party_menu/pokeball_small.png diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 7a37c5e4f160..3b4bbeabfa03 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -429,7 +429,7 @@ $(MASKSGFXDIR)/unused_level_up.4bpp: %.4bpp: %.png $(BATTRANSGFXDIR)/vs_frame.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 16 -$(INTERFACEGFXDIR)/party_menu_bg.4bpp: %.4bpp: %.png +graphics/party_menu/bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 62 $(TYPESGFXDIR)/move_types.4bpp: $(types:%=$(TYPESGFXDIR)/%.4bpp) $(contest_types:%=$(TYPESGFXDIR)/contest_%.4bpp) diff --git a/src/data/party_menu.h b/src/data/party_menu.h index f3a8a50ec0af..f8321298cee9 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -1,3 +1,9 @@ +enum { + TAG_POKEBALL = 1200, + TAG_POKEBALL_SMALL, + TAG_STATUS_ICONS, +}; + static const struct BgTemplate sPartyMenuBgTemplates[] = { { @@ -112,8 +118,8 @@ static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] = }; // Used only when both Cancel and Confirm are present -static const u32 sConfirmButton_Tilemap[] = INCBIN_U32("graphics/interface/party_menu_confirm_button.bin"); -static const u32 sCancelButton_Tilemap[] = INCBIN_U32("graphics/interface/party_menu_cancel_button.bin"); +static const u32 sConfirmButton_Tilemap[] = INCBIN_U32("graphics/party_menu/confirm_button.bin"); +static const u32 sCancelButton_Tilemap[] = INCBIN_U32("graphics/party_menu/cancel_button.bin"); // Text colors for BG, FG, and Shadow in that order static const u8 sFontColorTable[][3] = @@ -969,19 +975,19 @@ static const union AnimCmd *const sSpriteAnimTable_MenuPokeball[] = static const struct CompressedSpriteSheet sSpriteSheet_MenuPokeball = { - gPartyMenuPokeball_Gfx, 0x400, 0x04b0 + gPartyMenuPokeball_Gfx, 0x400, TAG_POKEBALL }; static const struct CompressedSpritePalette sSpritePalette_MenuPokeball = { - gPartyMenuPokeball_Pal, 0x04b0 + gPartyMenuPokeball_Pal, TAG_POKEBALL }; // Used for the pokeball sprite on each party slot / Cancel button static const struct SpriteTemplate sSpriteTemplate_MenuPokeball = { - .tileTag = 0x04b0, - .paletteTag = 0x04b0, + .tileTag = TAG_POKEBALL, + .paletteTag = TAG_POKEBALL, .oam = &sOamData_MenuPokeball, .anims = sSpriteAnimTable_MenuPokeball, .images = NULL, @@ -1055,14 +1061,14 @@ static const union AnimCmd *const sSpriteAnimTable_MenuPokeballSmall[] = static const struct CompressedSpriteSheet sSpriteSheet_MenuPokeballSmall = { - gPartyMenuPokeballSmall_Gfx, 0x0300, 0x04b1 + gPartyMenuPokeballSmall_Gfx, 0x0300, TAG_POKEBALL_SMALL }; // Used for the pokeball sprite next to Cancel and Confirm when both are present, otherwise sSpriteTemplate_MenuPokeball is used static const struct SpriteTemplate sSpriteTemplate_MenuPokeballSmall = { - .tileTag = 1201, - .paletteTag = 1200, + .tileTag = TAG_POKEBALL_SMALL, + .paletteTag = TAG_POKEBALL, .oam = &sOamData_MenuPokeballSmall, .anims = sSpriteAnimTable_MenuPokeballSmall, .images = NULL, @@ -1149,18 +1155,18 @@ static const union AnimCmd *const sSpriteTemplate_StatusCondition[] = static const struct CompressedSpriteSheet sSpriteSheet_StatusIcons = { - gStatusGfx_Icons, 0x400, 1202 + gStatusGfx_Icons, 0x400, TAG_STATUS_ICONS }; static const struct CompressedSpritePalette sSpritePalette_StatusIcons = { - gStatusPal_Icons, 1202 + gStatusPal_Icons, TAG_STATUS_ICONS }; static const struct SpriteTemplate sSpriteTemplate_StatusIcons = { - .tileTag = 1202, - .paletteTag = 1202, + .tileTag = TAG_STATUS_ICONS, + .paletteTag = TAG_STATUS_ICONS, .oam = &sOamData_StatusCondition, .anims = sSpriteTemplate_StatusCondition, .images = NULL, diff --git a/src/graphics.c b/src/graphics.c index 51e585489d46..fda9a3fd5e15 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -147,7 +147,7 @@ const u32 gBattleAnimSpriteGfx_ClawSlash[] = INCBIN_U32("graphics/battle_anims/s const u32 gBattleAnimSpriteGfx_Scratch3[] = INCBIN_U32("graphics/battle_anims/sprites/scratch_3.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Scratch2[] = INCBIN_U32("graphics/battle_anims/sprites/scratch_2.4bpp.lz"); -const u32 gPartyMenuHpBar_Gfx[] = INCBIN_U32("graphics/interface/party_menu_hpbar.4bpp.lz"); +const u32 gUnusedHpBar_Gfx[] = INCBIN_U32("graphics/interface/unused_hpbar.4bpp.lz"); const u32 gBattleAnimSpriteGfx_BubbleBurst2[] = INCBIN_U32("graphics/battle_anims/sprites/bubble_burst_2.4bpp.lz"); @@ -1112,13 +1112,13 @@ const u32 gBattleAnimSpritePal_Slash2[] = INCBIN_U32("graphics/battle_anims/spri const u32 gBattleAnimSpriteGfx_WhiteShadow[] = INCBIN_U32("graphics/battle_anims/sprites/white_shadow.4bpp.lz"); const u32 gBattleAnimSpritePal_WhiteShadow[] = INCBIN_U32("graphics/battle_anims/sprites/white_shadow.gbapal.lz"); -const u32 gPartyMenuBg_Gfx[] = INCBIN_U32("graphics/interface/party_menu_bg.4bpp.lz"); -const u32 gPartyMenuBg_Pal[] = INCBIN_U32("graphics/interface/party_menu_bg.gbapal.lz"); -const u32 gPartyMenuBg_Tilemap[] = INCBIN_U32("graphics/interface/party_menu_bg.bin.lz"); +const u32 gPartyMenuBg_Gfx[] = INCBIN_U32("graphics/party_menu/bg.4bpp.lz"); +const u32 gPartyMenuBg_Pal[] = INCBIN_U32("graphics/party_menu/bg.gbapal.lz"); +const u32 gPartyMenuBg_Tilemap[] = INCBIN_U32("graphics/party_menu/bg.bin.lz"); -const u32 gPartyMenuPokeball_Gfx[] = INCBIN_U32("graphics/interface/party_menu_pokeball.4bpp.lz"); -const u32 gPartyMenuPokeballSmall_Gfx[] = INCBIN_U32("graphics/interface/party_menu_pokeball_small.4bpp.lz"); //unused -const u32 gPartyMenuPokeball_Pal[] = INCBIN_U32("graphics/interface/party_menu_pokeball.gbapal.lz"); +const u32 gPartyMenuPokeball_Gfx[] = INCBIN_U32("graphics/party_menu/pokeball.4bpp.lz"); +const u32 gPartyMenuPokeballSmall_Gfx[] = INCBIN_U32("graphics/party_menu/pokeball_small.4bpp.lz"); //unused +const u32 gPartyMenuPokeball_Pal[] = INCBIN_U32("graphics/party_menu/pokeball.gbapal.lz"); const u32 gStatusGfx_Icons[] = INCBIN_U32("graphics/interface/status_icons.4bpp.lz"); const u32 gStatusPal_Icons[] = INCBIN_U32("graphics/interface/status_icons.gbapal.lz"); From d782d3544dd3c43ac2034df4a9a445d7ccda1982 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 11:46:58 -0500 Subject: [PATCH 504/762] Move pokeblock graphics out of interface --- .../pokeblock_device.png => pokeblock/device.png} | Bin .../feeding_bg.bin} | Bin .../pokeblock.bin => pokeblock/menu.bin} | Bin .../menu.pal} | 0 .../menu.png} | Bin src/graphics.c | 13 +++++++------ 6 files changed, 7 insertions(+), 6 deletions(-) rename graphics/{interface/pokeblock_device.png => pokeblock/device.png} (100%) rename graphics/{interface/pokeblock_feeding_bg_map.bin => pokeblock/feeding_bg.bin} (100%) rename graphics/{interface/pokeblock.bin => pokeblock/menu.bin} (100%) rename graphics/{interface/pokeblock_case_frame.pal => pokeblock/menu.pal} (100%) rename graphics/{interface/pokeblock_case_frame.png => pokeblock/menu.png} (100%) diff --git a/graphics/interface/pokeblock_device.png b/graphics/pokeblock/device.png similarity index 100% rename from graphics/interface/pokeblock_device.png rename to graphics/pokeblock/device.png diff --git a/graphics/interface/pokeblock_feeding_bg_map.bin b/graphics/pokeblock/feeding_bg.bin similarity index 100% rename from graphics/interface/pokeblock_feeding_bg_map.bin rename to graphics/pokeblock/feeding_bg.bin diff --git a/graphics/interface/pokeblock.bin b/graphics/pokeblock/menu.bin similarity index 100% rename from graphics/interface/pokeblock.bin rename to graphics/pokeblock/menu.bin diff --git a/graphics/interface/pokeblock_case_frame.pal b/graphics/pokeblock/menu.pal similarity index 100% rename from graphics/interface/pokeblock_case_frame.pal rename to graphics/pokeblock/menu.pal diff --git a/graphics/interface/pokeblock_case_frame.png b/graphics/pokeblock/menu.png similarity index 100% rename from graphics/interface/pokeblock_case_frame.png rename to graphics/pokeblock/menu.png diff --git a/src/graphics.c b/src/graphics.c index fda9a3fd5e15..ebb7be3caced 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1163,13 +1163,14 @@ const u32 gMenuMoneyGfx[] = INCBIN_U32("graphics/interface/money.4bpp.lz"); // Pokeblock -const u32 gMenuPokeblock_Gfx[] = INCBIN_U32("graphics/interface/pokeblock_case_frame.4bpp.lz"); -const u32 gMenuPokeblock_Pal[] = INCBIN_U32("graphics/interface/pokeblock_case_frame.gbapal.lz"); +const u32 gMenuPokeblock_Gfx[] = INCBIN_U32("graphics/pokeblock/menu.4bpp.lz"); +const u32 gMenuPokeblock_Pal[] = INCBIN_U32("graphics/pokeblock/menu.gbapal.lz"); -const u32 gMenuPokeblockDevice_Gfx[] = INCBIN_U32("graphics/interface/pokeblock_device.4bpp.lz"); -const u32 gMenuPokeblockDevice_Pal[] = INCBIN_U32("graphics/interface/pokeblock_device.gbapal.lz"); +const u32 gMenuPokeblockDevice_Gfx[] = INCBIN_U32("graphics/pokeblock/device.4bpp.lz"); +const u32 gMenuPokeblockDevice_Pal[] = INCBIN_U32("graphics/pokeblock/device.gbapal.lz"); + +const u32 gMenuPokeblock_Tilemap[] = INCBIN_U32("graphics/pokeblock/menu.bin.lz"); -const u32 gMenuPokeblock_Tilemap[] = INCBIN_U32("graphics/interface/pokeblock.bin.lz"); const u32 gPokeblock_Gfx[] = INCBIN_U32("graphics/pokeblock/pokeblock.4bpp.lz"); const u32 gPokeblockRed_Pal[] = INCBIN_U32("graphics/pokeblock/red.gbapal.lz"); const u32 gPokeblockBlue_Pal[] = INCBIN_U32("graphics/pokeblock/blue.gbapal.lz"); @@ -1186,7 +1187,7 @@ const u32 gPokeblockBlack_Pal[] = INCBIN_U32("graphics/pokeblock/black.gbapal.lz const u32 gPokeblockWhite_Pal[] = INCBIN_U32("graphics/pokeblock/white.gbapal.lz"); const u32 gPokeblockGold_Pal[] = INCBIN_U32("graphics/pokeblock/gold.gbapal.lz"); -const u32 gPokeblockFeedBg_Tilemap[] = INCBIN_U32("graphics/interface/pokeblock_feeding_bg_map.bin.lz"); +const u32 gPokeblockFeedBg_Tilemap[] = INCBIN_U32("graphics/pokeblock/feeding_bg.bin.lz"); #include "data/graphics/berries.h" #include "data/graphics/rayquaza_scene.h" From 694aa3c65dd4d926616dcab414e8c1647f357c54 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 11:59:24 -0500 Subject: [PATCH 505/762] Move balls, shop, link, map popups, and bag out of interface --- graphics/{misc => bag}/bag.pal | 0 graphics/{misc => bag}/bag_female.png | Bin graphics/{misc => bag}/bag_male.png | Bin graphics/{interface => bag}/bag_pyramid.pal | 0 graphics/{interface => bag}/bag_pyramid.png | Bin graphics/{interface => bag}/berry_tag.bin | Bin .../{interface => bag}/berry_tag_screen.pal | 0 .../{interface => bag}/berry_tag_title.bin | Bin graphics/{interface => bag}/check_berry.pal | 0 graphics/{interface => bag}/check_berry.png | Bin .../{interface => bag}/check_berry_circle.png | Bin graphics/{interface => bag}/hm.png | Bin .../bag_screen_tilemap.bin => bag/menu.bin} | Bin .../bag_screen.png => bag/menu.png} | Bin .../menu_female.pal} | 0 .../bag_screen_male.pal => bag/menu_male.pal} | 0 .../menu_pyramid.bin} | Bin .../menu_pyramid.pal} | 0 .../bag_spinner.png => bag/rotating_ball.png} | Bin graphics/{interface => bag}/select_button.png | Bin graphics/{interface/ball => balls}/dive.png | Bin graphics/{interface/ball => balls}/great.png | Bin graphics/{interface/ball => balls}/luxury.png | Bin graphics/{interface/ball => balls}/master.png | Bin graphics/{interface/ball => balls}/nest.png | Bin graphics/{interface/ball => balls}/net.png | Bin .../ball_open.png => balls/open.png} | Bin graphics/{interface/ball => balls}/poke.png | Bin .../{interface/ball => balls}/premier.png | Bin graphics/{interface/ball => balls}/repeat.png | Bin graphics/{interface/ball => balls}/safari.png | Bin graphics/{interface/ball => balls}/timer.png | Bin graphics/{interface/ball => balls}/ultra.png | Bin .../interface/{bag_swap.png => swap_line.png} | Bin .../{minigame_countdown => link}/321start.png | Bin .../321start_static.png | Bin .../{interface => link}/comm_error_bg.png | Bin .../test_digits.png} | Bin .../wireless_display.bin} | Bin .../wireless_display.png} | Bin .../wireless_icon.png} | Bin .../wireless_info_screen.bin | Bin .../wireless_info_screen.pal | 0 .../wireless_info_screen.png | Bin graphics/{interface => }/map_popup/brick.png | Bin .../map_popup/brick_outline.png | Bin graphics/{interface => }/map_popup/marble.png | Bin .../map_popup/marble_outline.png | Bin graphics/{interface => }/map_popup/stone.png | Bin graphics/{interface => }/map_popup/stone2.png | Bin .../map_popup/stone2_outline.png | Bin .../map_popup/stone_outline.png | Bin .../{interface => }/map_popup/underwater.pal | 0 .../{interface => }/map_popup/underwater.png | Bin .../map_popup/underwater_outline.png | Bin graphics/{interface => }/map_popup/wood.png | Bin .../map_popup/wood_outline.png | Bin .../{interface => party_menu}/hold_icons.png | Bin .../mart_frame.bin => shop/menu.bin} | Bin .../mart_frame.png => shop/menu.png} | Bin graphics/{interface => shop}/money.png | Bin graphics_file_rules.mk | 2 +- include/graphics.h | 62 +++++++++--------- src/berry_tag_screen.c | 2 +- src/data/graphics/berries.h | 10 +-- src/data/graphics/interface_pokeballs.h | 37 ----------- src/data/graphics/pokeballs.h | 37 +++++++++++ src/data/party_menu.h | 4 +- src/graphics.c | 43 ++++++------ src/item_menu.c | 2 +- src/item_menu_icons.c | 8 +-- src/link.c | 12 ++-- src/link_rfu_3.c | 4 +- src/map_name_popup.c | 38 +++++------ src/menu_helpers.c | 4 +- src/minigame_countdown.c | 8 +-- src/money.c | 6 +- src/pokeball.c | 48 +++++++------- src/shop.c | 6 +- src/wireless_communication_status_screen.c | 6 +- 80 files changed, 168 insertions(+), 171 deletions(-) rename graphics/{misc => bag}/bag.pal (100%) rename graphics/{misc => bag}/bag_female.png (100%) rename graphics/{misc => bag}/bag_male.png (100%) rename graphics/{interface => bag}/bag_pyramid.pal (100%) rename graphics/{interface => bag}/bag_pyramid.png (100%) rename graphics/{interface => bag}/berry_tag.bin (100%) rename graphics/{interface => bag}/berry_tag_screen.pal (100%) rename graphics/{interface => bag}/berry_tag_title.bin (100%) rename graphics/{interface => bag}/check_berry.pal (100%) rename graphics/{interface => bag}/check_berry.png (100%) rename graphics/{interface => bag}/check_berry_circle.png (100%) rename graphics/{interface => bag}/hm.png (100%) rename graphics/{interface/bag_screen_tilemap.bin => bag/menu.bin} (100%) rename graphics/{interface/bag_screen.png => bag/menu.png} (100%) rename graphics/{interface/bag_screen_female.pal => bag/menu_female.pal} (100%) rename graphics/{interface/bag_screen_male.pal => bag/menu_male.pal} (100%) rename graphics/{interface/bag_pyramid_tilemap.bin => bag/menu_pyramid.bin} (100%) rename graphics/{interface/bag_pyramid_interface.pal => bag/menu_pyramid.pal} (100%) rename graphics/{interface/bag_spinner.png => bag/rotating_ball.png} (100%) rename graphics/{interface => bag}/select_button.png (100%) rename graphics/{interface/ball => balls}/dive.png (100%) rename graphics/{interface/ball => balls}/great.png (100%) rename graphics/{interface/ball => balls}/luxury.png (100%) rename graphics/{interface/ball => balls}/master.png (100%) rename graphics/{interface/ball => balls}/nest.png (100%) rename graphics/{interface/ball => balls}/net.png (100%) rename graphics/{interface/ball_open.png => balls/open.png} (100%) rename graphics/{interface/ball => balls}/poke.png (100%) rename graphics/{interface/ball => balls}/premier.png (100%) rename graphics/{interface/ball => balls}/repeat.png (100%) rename graphics/{interface/ball => balls}/safari.png (100%) rename graphics/{interface/ball => balls}/timer.png (100%) rename graphics/{interface/ball => balls}/ultra.png (100%) rename graphics/interface/{bag_swap.png => swap_line.png} (100%) rename graphics/{minigame_countdown => link}/321start.png (100%) rename graphics/{minigame_countdown => link}/321start_static.png (100%) rename graphics/{interface => link}/comm_error_bg.png (100%) rename graphics/{interface/link_test_digits.png => link/test_digits.png} (100%) rename graphics/{interface/wireless_link_display.bin => link/wireless_display.bin} (100%) rename graphics/{interface/wireless_link_display.png => link/wireless_display.png} (100%) rename graphics/{interface/wireless_link_icon.png => link/wireless_icon.png} (100%) rename graphics/{interface => link}/wireless_info_screen.bin (100%) rename graphics/{interface => link}/wireless_info_screen.pal (100%) rename graphics/{interface => link}/wireless_info_screen.png (100%) rename graphics/{interface => }/map_popup/brick.png (100%) rename graphics/{interface => }/map_popup/brick_outline.png (100%) rename graphics/{interface => }/map_popup/marble.png (100%) rename graphics/{interface => }/map_popup/marble_outline.png (100%) rename graphics/{interface => }/map_popup/stone.png (100%) rename graphics/{interface => }/map_popup/stone2.png (100%) rename graphics/{interface => }/map_popup/stone2_outline.png (100%) rename graphics/{interface => }/map_popup/stone_outline.png (100%) rename graphics/{interface => }/map_popup/underwater.pal (100%) rename graphics/{interface => }/map_popup/underwater.png (100%) rename graphics/{interface => }/map_popup/underwater_outline.png (100%) rename graphics/{interface => }/map_popup/wood.png (100%) rename graphics/{interface => }/map_popup/wood_outline.png (100%) rename graphics/{interface => party_menu}/hold_icons.png (100%) rename graphics/{interface/mart_frame.bin => shop/menu.bin} (100%) rename graphics/{interface/mart_frame.png => shop/menu.png} (100%) rename graphics/{interface => shop}/money.png (100%) delete mode 100644 src/data/graphics/interface_pokeballs.h create mode 100644 src/data/graphics/pokeballs.h diff --git a/graphics/misc/bag.pal b/graphics/bag/bag.pal similarity index 100% rename from graphics/misc/bag.pal rename to graphics/bag/bag.pal diff --git a/graphics/misc/bag_female.png b/graphics/bag/bag_female.png similarity index 100% rename from graphics/misc/bag_female.png rename to graphics/bag/bag_female.png diff --git a/graphics/misc/bag_male.png b/graphics/bag/bag_male.png similarity index 100% rename from graphics/misc/bag_male.png rename to graphics/bag/bag_male.png diff --git a/graphics/interface/bag_pyramid.pal b/graphics/bag/bag_pyramid.pal similarity index 100% rename from graphics/interface/bag_pyramid.pal rename to graphics/bag/bag_pyramid.pal diff --git a/graphics/interface/bag_pyramid.png b/graphics/bag/bag_pyramid.png similarity index 100% rename from graphics/interface/bag_pyramid.png rename to graphics/bag/bag_pyramid.png diff --git a/graphics/interface/berry_tag.bin b/graphics/bag/berry_tag.bin similarity index 100% rename from graphics/interface/berry_tag.bin rename to graphics/bag/berry_tag.bin diff --git a/graphics/interface/berry_tag_screen.pal b/graphics/bag/berry_tag_screen.pal similarity index 100% rename from graphics/interface/berry_tag_screen.pal rename to graphics/bag/berry_tag_screen.pal diff --git a/graphics/interface/berry_tag_title.bin b/graphics/bag/berry_tag_title.bin similarity index 100% rename from graphics/interface/berry_tag_title.bin rename to graphics/bag/berry_tag_title.bin diff --git a/graphics/interface/check_berry.pal b/graphics/bag/check_berry.pal similarity index 100% rename from graphics/interface/check_berry.pal rename to graphics/bag/check_berry.pal diff --git a/graphics/interface/check_berry.png b/graphics/bag/check_berry.png similarity index 100% rename from graphics/interface/check_berry.png rename to graphics/bag/check_berry.png diff --git a/graphics/interface/check_berry_circle.png b/graphics/bag/check_berry_circle.png similarity index 100% rename from graphics/interface/check_berry_circle.png rename to graphics/bag/check_berry_circle.png diff --git a/graphics/interface/hm.png b/graphics/bag/hm.png similarity index 100% rename from graphics/interface/hm.png rename to graphics/bag/hm.png diff --git a/graphics/interface/bag_screen_tilemap.bin b/graphics/bag/menu.bin similarity index 100% rename from graphics/interface/bag_screen_tilemap.bin rename to graphics/bag/menu.bin diff --git a/graphics/interface/bag_screen.png b/graphics/bag/menu.png similarity index 100% rename from graphics/interface/bag_screen.png rename to graphics/bag/menu.png diff --git a/graphics/interface/bag_screen_female.pal b/graphics/bag/menu_female.pal similarity index 100% rename from graphics/interface/bag_screen_female.pal rename to graphics/bag/menu_female.pal diff --git a/graphics/interface/bag_screen_male.pal b/graphics/bag/menu_male.pal similarity index 100% rename from graphics/interface/bag_screen_male.pal rename to graphics/bag/menu_male.pal diff --git a/graphics/interface/bag_pyramid_tilemap.bin b/graphics/bag/menu_pyramid.bin similarity index 100% rename from graphics/interface/bag_pyramid_tilemap.bin rename to graphics/bag/menu_pyramid.bin diff --git a/graphics/interface/bag_pyramid_interface.pal b/graphics/bag/menu_pyramid.pal similarity index 100% rename from graphics/interface/bag_pyramid_interface.pal rename to graphics/bag/menu_pyramid.pal diff --git a/graphics/interface/bag_spinner.png b/graphics/bag/rotating_ball.png similarity index 100% rename from graphics/interface/bag_spinner.png rename to graphics/bag/rotating_ball.png diff --git a/graphics/interface/select_button.png b/graphics/bag/select_button.png similarity index 100% rename from graphics/interface/select_button.png rename to graphics/bag/select_button.png diff --git a/graphics/interface/ball/dive.png b/graphics/balls/dive.png similarity index 100% rename from graphics/interface/ball/dive.png rename to graphics/balls/dive.png diff --git a/graphics/interface/ball/great.png b/graphics/balls/great.png similarity index 100% rename from graphics/interface/ball/great.png rename to graphics/balls/great.png diff --git a/graphics/interface/ball/luxury.png b/graphics/balls/luxury.png similarity index 100% rename from graphics/interface/ball/luxury.png rename to graphics/balls/luxury.png diff --git a/graphics/interface/ball/master.png b/graphics/balls/master.png similarity index 100% rename from graphics/interface/ball/master.png rename to graphics/balls/master.png diff --git a/graphics/interface/ball/nest.png b/graphics/balls/nest.png similarity index 100% rename from graphics/interface/ball/nest.png rename to graphics/balls/nest.png diff --git a/graphics/interface/ball/net.png b/graphics/balls/net.png similarity index 100% rename from graphics/interface/ball/net.png rename to graphics/balls/net.png diff --git a/graphics/interface/ball_open.png b/graphics/balls/open.png similarity index 100% rename from graphics/interface/ball_open.png rename to graphics/balls/open.png diff --git a/graphics/interface/ball/poke.png b/graphics/balls/poke.png similarity index 100% rename from graphics/interface/ball/poke.png rename to graphics/balls/poke.png diff --git a/graphics/interface/ball/premier.png b/graphics/balls/premier.png similarity index 100% rename from graphics/interface/ball/premier.png rename to graphics/balls/premier.png diff --git a/graphics/interface/ball/repeat.png b/graphics/balls/repeat.png similarity index 100% rename from graphics/interface/ball/repeat.png rename to graphics/balls/repeat.png diff --git a/graphics/interface/ball/safari.png b/graphics/balls/safari.png similarity index 100% rename from graphics/interface/ball/safari.png rename to graphics/balls/safari.png diff --git a/graphics/interface/ball/timer.png b/graphics/balls/timer.png similarity index 100% rename from graphics/interface/ball/timer.png rename to graphics/balls/timer.png diff --git a/graphics/interface/ball/ultra.png b/graphics/balls/ultra.png similarity index 100% rename from graphics/interface/ball/ultra.png rename to graphics/balls/ultra.png diff --git a/graphics/interface/bag_swap.png b/graphics/interface/swap_line.png similarity index 100% rename from graphics/interface/bag_swap.png rename to graphics/interface/swap_line.png diff --git a/graphics/minigame_countdown/321start.png b/graphics/link/321start.png similarity index 100% rename from graphics/minigame_countdown/321start.png rename to graphics/link/321start.png diff --git a/graphics/minigame_countdown/321start_static.png b/graphics/link/321start_static.png similarity index 100% rename from graphics/minigame_countdown/321start_static.png rename to graphics/link/321start_static.png diff --git a/graphics/interface/comm_error_bg.png b/graphics/link/comm_error_bg.png similarity index 100% rename from graphics/interface/comm_error_bg.png rename to graphics/link/comm_error_bg.png diff --git a/graphics/interface/link_test_digits.png b/graphics/link/test_digits.png similarity index 100% rename from graphics/interface/link_test_digits.png rename to graphics/link/test_digits.png diff --git a/graphics/interface/wireless_link_display.bin b/graphics/link/wireless_display.bin similarity index 100% rename from graphics/interface/wireless_link_display.bin rename to graphics/link/wireless_display.bin diff --git a/graphics/interface/wireless_link_display.png b/graphics/link/wireless_display.png similarity index 100% rename from graphics/interface/wireless_link_display.png rename to graphics/link/wireless_display.png diff --git a/graphics/interface/wireless_link_icon.png b/graphics/link/wireless_icon.png similarity index 100% rename from graphics/interface/wireless_link_icon.png rename to graphics/link/wireless_icon.png diff --git a/graphics/interface/wireless_info_screen.bin b/graphics/link/wireless_info_screen.bin similarity index 100% rename from graphics/interface/wireless_info_screen.bin rename to graphics/link/wireless_info_screen.bin diff --git a/graphics/interface/wireless_info_screen.pal b/graphics/link/wireless_info_screen.pal similarity index 100% rename from graphics/interface/wireless_info_screen.pal rename to graphics/link/wireless_info_screen.pal diff --git a/graphics/interface/wireless_info_screen.png b/graphics/link/wireless_info_screen.png similarity index 100% rename from graphics/interface/wireless_info_screen.png rename to graphics/link/wireless_info_screen.png diff --git a/graphics/interface/map_popup/brick.png b/graphics/map_popup/brick.png similarity index 100% rename from graphics/interface/map_popup/brick.png rename to graphics/map_popup/brick.png diff --git a/graphics/interface/map_popup/brick_outline.png b/graphics/map_popup/brick_outline.png similarity index 100% rename from graphics/interface/map_popup/brick_outline.png rename to graphics/map_popup/brick_outline.png diff --git a/graphics/interface/map_popup/marble.png b/graphics/map_popup/marble.png similarity index 100% rename from graphics/interface/map_popup/marble.png rename to graphics/map_popup/marble.png diff --git a/graphics/interface/map_popup/marble_outline.png b/graphics/map_popup/marble_outline.png similarity index 100% rename from graphics/interface/map_popup/marble_outline.png rename to graphics/map_popup/marble_outline.png diff --git a/graphics/interface/map_popup/stone.png b/graphics/map_popup/stone.png similarity index 100% rename from graphics/interface/map_popup/stone.png rename to graphics/map_popup/stone.png diff --git a/graphics/interface/map_popup/stone2.png b/graphics/map_popup/stone2.png similarity index 100% rename from graphics/interface/map_popup/stone2.png rename to graphics/map_popup/stone2.png diff --git a/graphics/interface/map_popup/stone2_outline.png b/graphics/map_popup/stone2_outline.png similarity index 100% rename from graphics/interface/map_popup/stone2_outline.png rename to graphics/map_popup/stone2_outline.png diff --git a/graphics/interface/map_popup/stone_outline.png b/graphics/map_popup/stone_outline.png similarity index 100% rename from graphics/interface/map_popup/stone_outline.png rename to graphics/map_popup/stone_outline.png diff --git a/graphics/interface/map_popup/underwater.pal b/graphics/map_popup/underwater.pal similarity index 100% rename from graphics/interface/map_popup/underwater.pal rename to graphics/map_popup/underwater.pal diff --git a/graphics/interface/map_popup/underwater.png b/graphics/map_popup/underwater.png similarity index 100% rename from graphics/interface/map_popup/underwater.png rename to graphics/map_popup/underwater.png diff --git a/graphics/interface/map_popup/underwater_outline.png b/graphics/map_popup/underwater_outline.png similarity index 100% rename from graphics/interface/map_popup/underwater_outline.png rename to graphics/map_popup/underwater_outline.png diff --git a/graphics/interface/map_popup/wood.png b/graphics/map_popup/wood.png similarity index 100% rename from graphics/interface/map_popup/wood.png rename to graphics/map_popup/wood.png diff --git a/graphics/interface/map_popup/wood_outline.png b/graphics/map_popup/wood_outline.png similarity index 100% rename from graphics/interface/map_popup/wood_outline.png rename to graphics/map_popup/wood_outline.png diff --git a/graphics/interface/hold_icons.png b/graphics/party_menu/hold_icons.png similarity index 100% rename from graphics/interface/hold_icons.png rename to graphics/party_menu/hold_icons.png diff --git a/graphics/interface/mart_frame.bin b/graphics/shop/menu.bin similarity index 100% rename from graphics/interface/mart_frame.bin rename to graphics/shop/menu.bin diff --git a/graphics/interface/mart_frame.png b/graphics/shop/menu.png similarity index 100% rename from graphics/interface/mart_frame.png rename to graphics/shop/menu.png diff --git a/graphics/interface/money.png b/graphics/shop/money.png similarity index 100% rename from graphics/interface/money.png rename to graphics/shop/money.png diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 3b4bbeabfa03..25ac1814215a 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -440,7 +440,7 @@ $(TYPESGFXDIR)/move_types.gbapal: $(TYPESGFXDIR)/move_types_1.gbapal \ $(TYPESGFXDIR)/move_types_3.gbapal @cat $^ >$@ -$(INTERFACEGFXDIR)/bag_screen.4bpp: %.4bpp: %.png +graphics/bag/menu.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 53 $(RAYQUAZAGFXDIR)/scene_2/rayquaza.8bpp: %.8bpp: %.png diff --git a/include/graphics.h b/include/graphics.h index 5c6a043cc553..0972743c5f25 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -5,31 +5,31 @@ extern const u32 gMessageBox_Gfx[]; extern const u16 gMessageBox_Pal[]; -// interface pokeballs -extern const u32 gInterfaceGfx_PokeBall[]; -extern const u32 gInterfacePal_PokeBall[]; -extern const u32 gInterfaceGfx_GreatBall[]; -extern const u32 gInterfacePal_GreatBall[]; -extern const u32 gInterfaceGfx_SafariBall[]; -extern const u32 gInterfacePal_SafariBall[]; -extern const u32 gInterfaceGfx_UltraBall[]; -extern const u32 gInterfacePal_UltraBall[]; -extern const u32 gInterfaceGfx_MasterBall[]; -extern const u32 gInterfacePal_MasterBall[]; -extern const u32 gInterfaceGfx_NetBall[]; -extern const u32 gInterfacePal_NetBall[]; -extern const u32 gInterfaceGfx_DiveBall[]; -extern const u32 gInterfacePal_DiveBall[]; -extern const u32 gInterfaceGfx_NestBall[]; -extern const u32 gInterfacePal_NestBall[]; -extern const u32 gInterfaceGfx_RepeatBall[]; -extern const u32 gInterfacePal_RepeatBall[]; -extern const u32 gInterfaceGfx_TimerBall[]; -extern const u32 gInterfacePal_TimerBall[]; -extern const u32 gInterfaceGfx_LuxuryBall[]; -extern const u32 gInterfacePal_LuxuryBall[]; -extern const u32 gInterfaceGfx_PremierBall[]; -extern const u32 gInterfacePal_PremierBall[]; +// pokeballs +extern const u32 gBallGfx_Poke[]; +extern const u32 gBallPal_Poke[]; +extern const u32 gBallGfx_Great[]; +extern const u32 gBallPal_Great[]; +extern const u32 gBallGfx_Safari[]; +extern const u32 gBallPal_Safari[]; +extern const u32 gBallGfx_Ultra[]; +extern const u32 gBallPal_Ultra[]; +extern const u32 gBallGfx_Master[]; +extern const u32 gBallPal_Master[]; +extern const u32 gBallGfx_Net[]; +extern const u32 gBallPal_Net[]; +extern const u32 gBallGfx_Dive[]; +extern const u32 gBallPal_Dive[]; +extern const u32 gBallGfx_Nest[]; +extern const u32 gBallPal_Nest[]; +extern const u32 gBallGfx_Repeat[]; +extern const u32 gBallPal_Repeat[]; +extern const u32 gBallGfx_Timer[]; +extern const u32 gBallPal_Timer[]; +extern const u32 gBallGfx_Luxury[]; +extern const u32 gBallPal_Luxury[]; +extern const u32 gBallGfx_Premier[]; +extern const u32 gBallPal_Premier[]; extern const u32 gOpenPokeballGfx[]; // pokemon gfx @@ -4052,10 +4052,10 @@ extern const u32 gSummaryMoveSelect_Pal[]; extern const u32 gStatusGfx_Icons[]; extern const u32 gStatusPal_Icons[]; -extern const u32 gBuyMenuFrame_Gfx[]; -extern const u32 gBuyMenuFrame_Tilemap[]; -extern const u32 gMenuMoneyGfx[]; -extern const u32 gMenuMoneyPal[]; +extern const u32 gShopMenu_Gfx[]; +extern const u32 gShopMenu_Tilemap[]; +extern const u32 gShopMenu_Pal[]; +extern const u32 gShopMenuMoney_Gfx[]; extern const u32 gBattleInterface_BallStatusBarGfx[]; extern const u8 gBattleInterface_BallDisplayGfx[]; @@ -4094,8 +4094,8 @@ extern const u32 gBlankGfxCompressed[]; extern const u16 gBattleInterface_BallStatusBarPal[]; extern const u16 gBattleInterface_BallDisplayPal[]; -extern const u32 gBagSwapLineGfx[]; -extern const u32 gBagSwapLinePal[]; +extern const u32 gSwapLineGfx[]; +extern const u32 gSwapLinePal[]; extern const u32 gBattlePyramidBag_Gfx[]; extern const u32 gBattlePyramidBag_Pal[]; diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index 92b1f65d1bae..219454ab26d5 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -92,7 +92,7 @@ static const struct BgTemplate sBackgroundTemplates[] = } }; -static const u16 sFontPalette[] = INCBIN_U16("graphics/interface/berry_tag_screen.gbapal"); +static const u16 sFontPalette[] = INCBIN_U16("graphics/bag/berry_tag_screen.gbapal"); static const u8 sTextColors[2][3] = { diff --git a/src/data/graphics/berries.h b/src/data/graphics/berries.h index eb3f9f4dc7d5..e33384a84672 100644 --- a/src/data/graphics/berries.h +++ b/src/data/graphics/berries.h @@ -1,10 +1,10 @@ -const u32 gBerryCheck_Gfx[] = INCBIN_U32("graphics/interface/check_berry.4bpp.lz"); -const u32 gBerryCheck_Pal[] = INCBIN_U32("graphics/interface/check_berry.gbapal.lz"); +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/interface/berry_tag.bin.lz"); -const u32 gBerryTag_Pal[] = INCBIN_U32("graphics/interface/berry_tag_title.bin.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 gBerryCheckCircle_Gfx[] = INCBIN_U32("graphics/interface/check_berry_circle.4bpp.lz"); +const u32 gBerryCheckCircle_Gfx[] = INCBIN_U32("graphics/bag/check_berry_circle.4bpp.lz"); const u32 gBerryPic_Cheri[] = INCBIN_U32("graphics/berries/cheri.4bpp.lz"); const u32 gBerryPic_Oran[] = INCBIN_U32("graphics/berries/oran.4bpp.lz"); diff --git a/src/data/graphics/interface_pokeballs.h b/src/data/graphics/interface_pokeballs.h deleted file mode 100644 index fe9a4e5be343..000000000000 --- a/src/data/graphics/interface_pokeballs.h +++ /dev/null @@ -1,37 +0,0 @@ -const u32 gInterfaceGfx_PokeBall[] = INCBIN_U32("graphics/interface/ball/poke.4bpp.lz"); -const u32 gInterfacePal_PokeBall[] = INCBIN_U32("graphics/interface/ball/poke.gbapal.lz"); - -const u32 gInterfaceGfx_GreatBall[] = INCBIN_U32("graphics/interface/ball/great.4bpp.lz"); -const u32 gInterfacePal_GreatBall[] = INCBIN_U32("graphics/interface/ball/great.gbapal.lz"); - -const u32 gInterfaceGfx_SafariBall[] = INCBIN_U32("graphics/interface/ball/safari.4bpp.lz"); -const u32 gInterfacePal_SafariBall[] = INCBIN_U32("graphics/interface/ball/safari.gbapal.lz"); - -const u32 gInterfaceGfx_UltraBall[] = INCBIN_U32("graphics/interface/ball/ultra.4bpp.lz"); -const u32 gInterfacePal_UltraBall[] = INCBIN_U32("graphics/interface/ball/ultra.gbapal.lz"); - -const u32 gInterfaceGfx_MasterBall[] = INCBIN_U32("graphics/interface/ball/master.4bpp.lz"); -const u32 gInterfacePal_MasterBall[] = INCBIN_U32("graphics/interface/ball/master.gbapal.lz"); - -const u32 gInterfaceGfx_NetBall[] = INCBIN_U32("graphics/interface/ball/net.4bpp.lz"); -const u32 gInterfacePal_NetBall[] = INCBIN_U32("graphics/interface/ball/net.gbapal.lz"); - -const u32 gInterfaceGfx_DiveBall[] = INCBIN_U32("graphics/interface/ball/dive.4bpp.lz"); -const u32 gInterfacePal_DiveBall[] = INCBIN_U32("graphics/interface/ball/dive.gbapal.lz"); - -const u32 gInterfaceGfx_NestBall[] = INCBIN_U32("graphics/interface/ball/nest.4bpp.lz"); -const u32 gInterfacePal_NestBall[] = INCBIN_U32("graphics/interface/ball/nest.gbapal.lz"); - -const u32 gInterfaceGfx_RepeatBall[] = INCBIN_U32("graphics/interface/ball/repeat.4bpp.lz"); -const u32 gInterfacePal_RepeatBall[] = INCBIN_U32("graphics/interface/ball/repeat.gbapal.lz"); - -const u32 gInterfaceGfx_TimerBall[] = INCBIN_U32("graphics/interface/ball/timer.4bpp.lz"); -const u32 gInterfacePal_TimerBall[] = INCBIN_U32("graphics/interface/ball/timer.gbapal.lz"); - -const u32 gInterfaceGfx_LuxuryBall[] = INCBIN_U32("graphics/interface/ball/luxury.4bpp.lz"); -const u32 gInterfacePal_LuxuryBall[] = INCBIN_U32("graphics/interface/ball/luxury.gbapal.lz"); - -const u32 gInterfaceGfx_PremierBall[] = INCBIN_U32("graphics/interface/ball/premier.4bpp.lz"); -const u32 gInterfacePal_PremierBall[] = INCBIN_U32("graphics/interface/ball/premier.gbapal.lz"); - -const u32 gOpenPokeballGfx[] = INCBIN_U32("graphics/interface/ball_open.4bpp.lz"); diff --git a/src/data/graphics/pokeballs.h b/src/data/graphics/pokeballs.h new file mode 100644 index 000000000000..8203fca53832 --- /dev/null +++ b/src/data/graphics/pokeballs.h @@ -0,0 +1,37 @@ +const u32 gBallGfx_Poke[] = INCBIN_U32("graphics/balls/poke.4bpp.lz"); +const u32 gBallPal_Poke[] = INCBIN_U32("graphics/balls/poke.gbapal.lz"); + +const u32 gBallGfx_Great[] = INCBIN_U32("graphics/balls/great.4bpp.lz"); +const u32 gBallPal_Great[] = INCBIN_U32("graphics/balls/great.gbapal.lz"); + +const u32 gBallGfx_Safari[] = INCBIN_U32("graphics/balls/safari.4bpp.lz"); +const u32 gBallPal_Safari[] = INCBIN_U32("graphics/balls/safari.gbapal.lz"); + +const u32 gBallGfx_Ultra[] = INCBIN_U32("graphics/balls/ultra.4bpp.lz"); +const u32 gBallPal_Ultra[] = INCBIN_U32("graphics/balls/ultra.gbapal.lz"); + +const u32 gBallGfx_Master[] = INCBIN_U32("graphics/balls/master.4bpp.lz"); +const u32 gBallPal_Master[] = INCBIN_U32("graphics/balls/master.gbapal.lz"); + +const u32 gBallGfx_Net[] = INCBIN_U32("graphics/balls/net.4bpp.lz"); +const u32 gBallPal_Net[] = INCBIN_U32("graphics/balls/net.gbapal.lz"); + +const u32 gBallGfx_Dive[] = INCBIN_U32("graphics/balls/dive.4bpp.lz"); +const u32 gBallPal_Dive[] = INCBIN_U32("graphics/balls/dive.gbapal.lz"); + +const u32 gBallGfx_Nest[] = INCBIN_U32("graphics/balls/nest.4bpp.lz"); +const u32 gBallPal_Nest[] = INCBIN_U32("graphics/balls/nest.gbapal.lz"); + +const u32 gBallGfx_Repeat[] = INCBIN_U32("graphics/balls/repeat.4bpp.lz"); +const u32 gBallPal_Repeat[] = INCBIN_U32("graphics/balls/repeat.gbapal.lz"); + +const u32 gBallGfx_Timer[] = INCBIN_U32("graphics/balls/timer.4bpp.lz"); +const u32 gBallPal_Timer[] = INCBIN_U32("graphics/balls/timer.gbapal.lz"); + +const u32 gBallGfx_Luxury[] = INCBIN_U32("graphics/balls/luxury.4bpp.lz"); +const u32 gBallPal_Luxury[] = INCBIN_U32("graphics/balls/luxury.gbapal.lz"); + +const u32 gBallGfx_Premier[] = INCBIN_U32("graphics/balls/premier.4bpp.lz"); +const u32 gBallPal_Premier[] = INCBIN_U32("graphics/balls/premier.gbapal.lz"); + +const u32 gOpenPokeballGfx[] = INCBIN_U32("graphics/balls/open.4bpp.lz"); diff --git a/src/data/party_menu.h b/src/data/party_menu.h index f8321298cee9..f8093a9b6b62 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -879,8 +879,8 @@ static const u8 *const sUnionRoomTradeMessages[] = [UR_TRADE_MSG_CANT_TRADE_WITH_PARTNER_2 - 1] = gText_CantTradeWithTrainer, }; -static const u32 sHeldItemGfx[] = INCBIN_U32("graphics/interface/hold_icons.4bpp"); -static const u16 sHeldItemPalette[] = INCBIN_U16("graphics/interface/hold_icons.gbapal"); +static const u32 sHeldItemGfx[] = INCBIN_U32("graphics/party_menu/hold_icons.4bpp"); +static const u16 sHeldItemPalette[] = INCBIN_U16("graphics/party_menu/hold_icons.gbapal"); static const struct OamData sOamData_HeldItem = { diff --git a/src/graphics.c b/src/graphics.c index ebb7be3caced..09cae59ce5c0 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -16,7 +16,7 @@ const u32 gUnusedPal_OldCharmap[] = INCBIN_U32("graphics/unused/old_charmap.gbap const u32 gSmokescreenImpactTiles[] = INCBIN_U32("graphics/battle_anims/sprites/smokescreen_impact.4bpp.lz"); const u32 gSmokescreenImpactPalette[] = INCBIN_U32("graphics/battle_anims/sprites/smokescreen_impact.gbapal.lz"); -#include "data/graphics/interface_pokeballs.h" +#include "data/graphics/pokeballs.h" const u32 gBlankGfxCompressed[] = INCBIN_U32("graphics/interface/blank.4bpp.lz"); @@ -1137,29 +1137,28 @@ const u32 gSummaryPage_BattleMoves_Tilemap[] = INCBIN_U32("graphics/summary_scr const u32 gSummaryPage_ContestMoves_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_contest_moves.bin.lz"); const u32 gSummaryPage_InfoEgg_Tilemap[] = INCBIN_U32("graphics/summary_screen/page_info_egg.bin.lz"); -const u32 gBagMaleTiles[] = INCBIN_U32("graphics/misc/bag_male.4bpp.lz"); -const u32 gBagFemaleTiles[] = INCBIN_U32("graphics/misc/bag_female.4bpp.lz"); -const u32 gBagPalette[] = INCBIN_U32("graphics/misc/bag.gbapal.lz"); +const u32 gBagMaleTiles[] = INCBIN_U32("graphics/bag/bag_male.4bpp.lz"); +const u32 gBagFemaleTiles[] = INCBIN_U32("graphics/bag/bag_female.4bpp.lz"); +const u32 gBagPalette[] = INCBIN_U32("graphics/bag/bag.gbapal.lz"); -const u32 gBagScreenMale_Pal[] = INCBIN_U32("graphics/interface/bag_screen_male.gbapal.lz"); -const u32 gBagScreenFemale_Pal[] = INCBIN_U32("graphics/interface/bag_screen_female.gbapal.lz"); +const u32 gBagScreenMale_Pal[] = INCBIN_U32("graphics/bag/menu_male.gbapal.lz"); +const u32 gBagScreenFemale_Pal[] = INCBIN_U32("graphics/bag/menu_female.gbapal.lz"); -const u32 gBagScreen_Gfx[] = INCBIN_U32("graphics/interface/bag_screen.4bpp.lz"); -const u32 gBagScreen_GfxTileMap[] = INCBIN_U32("graphics/interface/bag_screen_tilemap.bin.lz"); +const u32 gBagScreen_Gfx[] = INCBIN_U32("graphics/bag/menu.4bpp.lz"); +const u32 gBagScreen_GfxTileMap[] = INCBIN_U32("graphics/bag/menu.bin.lz"); -const u32 gBattlePyramidBag_Gfx[] = INCBIN_U32("graphics/interface/bag_pyramid.4bpp.lz"); -const u32 gBattlePyramidBag_Pal[] = INCBIN_U32("graphics/interface/bag_pyramid.gbapal.lz"); // female palette is first and male is second. -const u32 gBattlePyramidBagTilemap[] = INCBIN_U32("graphics/interface/bag_pyramid_tilemap.bin.lz"); -const u32 gBattlePyramidBagInterface_Pal[] = INCBIN_U32("graphics/interface/bag_pyramid_interface.gbapal.lz"); +const u32 gBattlePyramidBag_Gfx[] = INCBIN_U32("graphics/bag/bag_pyramid.4bpp.lz"); +const u32 gBattlePyramidBag_Pal[] = INCBIN_U32("graphics/bag/bag_pyramid.gbapal.lz"); // female palette is first and male is second. +const u32 gBattlePyramidBagTilemap[] = INCBIN_U32("graphics/bag/menu_pyramid.bin.lz"); +const u32 gBattlePyramidBagInterface_Pal[] = INCBIN_U32("graphics/bag/menu_pyramid.gbapal.lz"); -const u32 gBagSwapLineGfx[] = INCBIN_U32("graphics/interface/bag_swap.4bpp.lz"); -const u32 gBagSwapLinePal[] = INCBIN_U32("graphics/interface/bag_swap.gbapal.lz"); +const u32 gSwapLineGfx[] = INCBIN_U32("graphics/interface/swap_line.4bpp.lz"); +const u32 gSwapLinePal[] = INCBIN_U32("graphics/interface/swap_line.gbapal.lz"); -const u32 gBuyMenuFrame_Gfx[] = INCBIN_U32("graphics/interface/mart_frame.4bpp.lz"); -const u32 gMenuMoneyPal[] = INCBIN_U32("graphics/interface/mart_frame.gbapal.lz"); -const u32 gBuyMenuFrame_Tilemap[] = INCBIN_U32("graphics/interface/mart_frame.bin.lz"); - -const u32 gMenuMoneyGfx[] = INCBIN_U32("graphics/interface/money.4bpp.lz"); +const u32 gShopMenu_Gfx[] = INCBIN_U32("graphics/shop/menu.4bpp.lz"); +const u32 gShopMenu_Pal[] = INCBIN_U32("graphics/shop/menu.gbapal.lz"); +const u32 gShopMenu_Tilemap[] = INCBIN_U32("graphics/shop/menu.bin.lz"); +const u32 gShopMenuMoney_Gfx[] = INCBIN_U32("graphics/shop/money.4bpp.lz"); // Pokeblock @@ -1271,14 +1270,12 @@ const u32 gIntroCopyright_Tilemap[] = INCBIN_U32("graphics/intro/copyright.bin.l const u16 gPokedexAreaScreenAreaUnknown_Pal[] = INCBIN_U16("graphics/pokedex/area_unknown.gbapal"); const u32 gPokedexAreaScreenAreaUnknown_Gfx[] = INCBIN_U32("graphics/pokedex/area_unknown.4bpp.lz"); -// seems to be fire red leftovers, but the menu elements is reused in the item menu for TM descriptions. - const u16 gMenuInfoElements1_Pal[] = INCBIN_U16("graphics/interface/menu_info1.gbapal"); const u16 gMenuInfoElements2_Pal[] = INCBIN_U16("graphics/interface/menu_info2.gbapal"); const u16 gMenuInfoElements3_Pal[] = INCBIN_U16("graphics/interface/menu_info3.gbapal"); -const u8 gMenuInfoElements_Gfx[] = INCBIN_U8("graphics/interface/menu_info.4bpp"); //the types are reused for item menu +const u8 gMenuInfoElements_Gfx[] = INCBIN_U8("graphics/interface/menu_info.4bpp"); -const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/interface/hm.4bpp"); +const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/bag/hm.4bpp"); // contest results screen diff --git a/src/item_menu.c b/src/item_menu.c index 56ef3cba3289..9eaca9597d23 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -372,7 +372,7 @@ static const struct ScrollArrowsTemplate sBagScrollArrowsTemplate = { .palNum = 0, }; -static const u8 sRegisteredSelect_Gfx[] = INCBIN_U8("graphics/interface/select_button.4bpp"); +static const u8 sRegisteredSelect_Gfx[] = INCBIN_U8("graphics/bag/select_button.4bpp"); enum { COLORID_NORMAL, diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 60de132b04c0..a5c265f9082d 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -33,8 +33,8 @@ static void SpriteCB_SwitchPocketRotatingBallInit(struct Sprite *sprite); static void SpriteCB_SwitchPocketRotatingBallContinue(struct Sprite *sprite); // static const rom data -static const u16 gRotatingBall_Pal[] = INCBIN_U16("graphics/interface/bag_spinner.gbapal"); -static const u8 gRotatingBall[] = INCBIN_U8("graphics/interface/bag_spinner.4bpp"); +static const u16 sRotatingBall_Pal[] = INCBIN_U16("graphics/bag/rotating_ball.gbapal"); +static const u8 sRotatingBall_Gfx[] = INCBIN_U8("graphics/bag/rotating_ball.4bpp"); static const u8 gCherryUnused[] = INCBIN_U8("graphics/unused/cherry.4bpp"); static const u16 gCherryUnused_Pal[] = INCBIN_U16("graphics/unused/cherry.gbapal"); @@ -200,12 +200,12 @@ static const union AffineAnimCmd *const sRotatingBallAnimCmds_FullRotation[] = static const struct SpriteSheet sRotatingBallTable = { - gRotatingBall, 0x80, TAG_ROTATING_BALL_GFX + sRotatingBall_Gfx, 0x80, TAG_ROTATING_BALL_GFX }; static const struct SpritePalette sRotatingBallPaletteTable = { - gRotatingBall_Pal, TAG_ROTATING_BALL_GFX + sRotatingBall_Pal, TAG_ROTATING_BALL_GFX }; static const struct SpriteTemplate sRotatingBallSpriteTemplate = diff --git a/src/link.c b/src/link.c index 1084d4a6debf..aa9a0d73df68 100644 --- a/src/link.c +++ b/src/link.c @@ -158,13 +158,13 @@ static void DoSend(void); static void StopTimer(void); static void SendRecvDone(void); -static const u16 sWirelessLinkDisplayPal[] = INCBIN_U16("graphics/interface/wireless_link_display.gbapal"); -static const u32 sWirelessLinkDisplayGfx[] = INCBIN_U32("graphics/interface/wireless_link_display.4bpp.lz"); -static const u32 sWirelessLinkDisplayTilemap[] = INCBIN_U32("graphics/interface/wireless_link_display.bin.lz"); -static const u16 sLinkTestDigitsPal[] = INCBIN_U16("graphics/interface/link_test_digits.gbapal"); -static const u16 sLinkTestDigitsGfx[] = INCBIN_U16("graphics/interface/link_test_digits.4bpp"); +static const u16 sWirelessLinkDisplayPal[] = INCBIN_U16("graphics/link/wireless_display.gbapal"); +static const u32 sWirelessLinkDisplayGfx[] = INCBIN_U32("graphics/link/wireless_display.4bpp.lz"); +static const u32 sWirelessLinkDisplayTilemap[] = INCBIN_U32("graphics/link/wireless_display.bin.lz"); +static const u16 sLinkTestDigitsPal[] = INCBIN_U16("graphics/link/test_digits.gbapal"); +static const u16 sLinkTestDigitsGfx[] = INCBIN_U16("graphics/link/test_digits.4bpp"); static const u8 sUnusedTransparentWhite[] = _("{HIGHLIGHT TRANSPARENT}{COLOR WHITE}"); -static const u16 sCommErrorBg_Gfx[] = INCBIN_U16("graphics/interface/comm_error_bg.4bpp"); +static const u16 sCommErrorBg_Gfx[] = INCBIN_U16("graphics/link/comm_error_bg.4bpp"); static const struct BlockRequest sBlockRequests[] = { [BLOCK_REQ_SIZE_NONE] = {gBlockSendBuffer, 200}, [BLOCK_REQ_SIZE_200] = {gBlockSendBuffer, 200}, diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 571f305d0e2d..1e1fe5b34749 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -34,8 +34,8 @@ EWRAM_DATA u8 gWirelessStatusIndicatorSpriteId = 0; static u8 sSequenceArrayValOffset; -static const u16 sWirelessLinkIconPalette[] = INCBIN_U16("graphics/interface/wireless_link_icon.gbapal"); -static const u32 sWirelessLinkIconPic[] = INCBIN_U32("graphics/interface/wireless_link_icon.4bpp.lz"); +static const u16 sWirelessLinkIconPalette[] = INCBIN_U16("graphics/link/wireless_icon.gbapal"); +static const u32 sWirelessLinkIconPic[] = INCBIN_U32("graphics/link/wireless_icon.4bpp.lz"); // Most of the below two tables won't make sense with ASCII encoding. static const u8 sWireless_ASCIItoRSETable[256] = { diff --git a/src/map_name_popup.c b/src/map_name_popup.c index e44fb3383311..8cf1a6bab18a 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -38,35 +38,35 @@ static EWRAM_DATA u8 sPopupTaskId = 0; // .rodata static const u8 sMapPopUp_Table[][960] = { - [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/interface/map_popup/wood.4bpp"), - [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/interface/map_popup/marble.4bpp"), - [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/interface/map_popup/stone.4bpp"), - [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/interface/map_popup/brick.4bpp"), - [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/interface/map_popup/underwater.4bpp"), - [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/interface/map_popup/stone2.4bpp"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/map_popup/wood.4bpp"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/map_popup/marble.4bpp"), + [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/map_popup/stone.4bpp"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/map_popup/brick.4bpp"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/map_popup/underwater.4bpp"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/map_popup/stone2.4bpp"), }; static const u8 sMapPopUp_OutlineTable[][960] = { - [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/interface/map_popup/wood_outline.4bpp"), - [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/interface/map_popup/marble_outline.4bpp"), - [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/interface/map_popup/stone_outline.4bpp"), - [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/interface/map_popup/brick_outline.4bpp"), - [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/interface/map_popup/underwater_outline.4bpp"), - [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/interface/map_popup/stone2_outline.4bpp"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U8("graphics/map_popup/wood_outline.4bpp"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U8("graphics/map_popup/marble_outline.4bpp"), + [MAPPOPUP_THEME_STONE] = INCBIN_U8("graphics/map_popup/stone_outline.4bpp"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U8("graphics/map_popup/brick_outline.4bpp"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U8("graphics/map_popup/underwater_outline.4bpp"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U8("graphics/map_popup/stone2_outline.4bpp"), }; static const u16 sMapPopUp_PaletteTable[][16] = { - [MAPPOPUP_THEME_WOOD] = INCBIN_U16("graphics/interface/map_popup/wood.gbapal"), - [MAPPOPUP_THEME_MARBLE] = INCBIN_U16("graphics/interface/map_popup/marble_outline.gbapal"), - [MAPPOPUP_THEME_STONE] = INCBIN_U16("graphics/interface/map_popup/stone_outline.gbapal"), - [MAPPOPUP_THEME_BRICK] = INCBIN_U16("graphics/interface/map_popup/brick_outline.gbapal"), - [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U16("graphics/interface/map_popup/underwater_outline.gbapal"), - [MAPPOPUP_THEME_STONE2] = INCBIN_U16("graphics/interface/map_popup/stone2_outline.gbapal"), + [MAPPOPUP_THEME_WOOD] = INCBIN_U16("graphics/map_popup/wood.gbapal"), + [MAPPOPUP_THEME_MARBLE] = INCBIN_U16("graphics/map_popup/marble_outline.gbapal"), + [MAPPOPUP_THEME_STONE] = INCBIN_U16("graphics/map_popup/stone_outline.gbapal"), + [MAPPOPUP_THEME_BRICK] = INCBIN_U16("graphics/map_popup/brick_outline.gbapal"), + [MAPPOPUP_THEME_UNDERWATER] = INCBIN_U16("graphics/map_popup/underwater_outline.gbapal"), + [MAPPOPUP_THEME_STONE2] = INCBIN_U16("graphics/map_popup/stone2_outline.gbapal"), }; -static const u16 sMapPopUp_Palette_Underwater[16] = INCBIN_U16("graphics/interface/map_popup/underwater.gbapal"); +static const u16 sMapPopUp_Palette_Underwater[16] = INCBIN_U16("graphics/map_popup/underwater.gbapal"); static const u8 sRegionMapSectionId_To_PopUpThemeIdMapping[] = { diff --git a/src/menu_helpers.c b/src/menu_helpers.c index d5cf83bd24c7..e9f3e571f088 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -71,12 +71,12 @@ static const union AnimCmd *const sAnims_SwapLine[] = static const struct CompressedSpriteSheet sSpriteSheet_SwapLine = { - gBagSwapLineGfx, 0x100, TAG_SWAP_LINE + gSwapLineGfx, 0x100, TAG_SWAP_LINE }; static const struct CompressedSpritePalette sSpritePalette_SwapLine = { - gBagSwapLinePal, TAG_SWAP_LINE + gSwapLinePal, TAG_SWAP_LINE }; static const struct SpriteTemplate sSpriteTemplate_SwapLine = diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 178b6d5b79a8..4c72136d4c7f 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -48,8 +48,8 @@ static void Task_StaticCountdown_Free(u8 taskId); static void Task_StaticCountdown_Start(u8 taskId); static void Task_StaticCountdown_Run(u8 taskId); -static const u16 s321Start_Static_Pal[] = INCBIN_U16("graphics/minigame_countdown/321start_static.gbapal"); -static const u32 s321Start_Static_Gfx[] = INCBIN_U32("graphics/minigame_countdown/321start_static.4bpp.lz"); +static const u16 s321Start_Static_Pal[] = INCBIN_U16("graphics/link/321start_static.gbapal"); +static const u32 s321Start_Static_Gfx[] = INCBIN_U32("graphics/link/321start_static.4bpp.lz"); static const struct CompressedSpriteSheet sSpriteSheet_321Start_Static[] = { @@ -374,8 +374,8 @@ static void CreateStartSprite(u16 tileTag, u16 palTag, s16 x, s16 y, u8 subprior static void InitStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3); static void SpriteCB_Start(struct Sprite *sprite); -static const u16 s321Start_Pal[] = INCBIN_U16("graphics/minigame_countdown/321start.gbapal"); -static const u32 s321Start_Gfx[] = INCBIN_U32("graphics/minigame_countdown/321start.4bpp.lz"); +static const u16 s321Start_Pal[] = INCBIN_U16("graphics/link/321start.gbapal"); +static const u32 s321Start_Gfx[] = INCBIN_U32("graphics/link/321start.4bpp.lz"); #define tState data[0] #define tTilesTag data[2] diff --git a/src/money.c b/src/money.c index c331462d4e3b..592ce9f75325 100644 --- a/src/money.c +++ b/src/money.c @@ -58,14 +58,14 @@ static const struct SpriteTemplate sSpriteTemplate_MoneyLabel = static const struct CompressedSpriteSheet sSpriteSheet_MoneyLabel = { - .data = gMenuMoneyGfx, + .data = gShopMenuMoney_Gfx, .size = 256, .tag = MONEY_LABEL_TAG, }; static const struct CompressedSpritePalette sSpritePalette_MoneyLabel = { - .data = gMenuMoneyPal, + .data = gShopMenu_Pal, .tag = MONEY_LABEL_TAG }; @@ -146,7 +146,7 @@ void PrintMoneyAmount(u8 windowId, u8 x, u8 y, int amount, u8 speed) txtPtr = gStringVar4; while (strLength-- > 0) - *(txtPtr++) = 0x77; + *(txtPtr++) = CHAR_SPACER; StringExpandPlaceholders(txtPtr, gText_PokedollarVar1); AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, x, y, speed, NULL); diff --git a/src/pokeball.c b/src/pokeball.c index cb68d6883367..0250a0c5ba97 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -59,34 +59,34 @@ static u16 GetBattlerPokeballItemId(u8 battlerId); const struct CompressedSpriteSheet gBallSpriteSheets[POKEBALL_COUNT] = { - [BALL_POKE] = {gInterfaceGfx_PokeBall, 384, GFX_TAG_POKEBALL}, - [BALL_GREAT] = {gInterfaceGfx_GreatBall, 384, GFX_TAG_GREATBALL}, - [BALL_SAFARI] = {gInterfaceGfx_SafariBall, 384, GFX_TAG_SAFARIBALL}, - [BALL_ULTRA] = {gInterfaceGfx_UltraBall, 384, GFX_TAG_ULTRABALL}, - [BALL_MASTER] = {gInterfaceGfx_MasterBall, 384, GFX_TAG_MASTERBALL}, - [BALL_NET] = {gInterfaceGfx_NetBall, 384, GFX_TAG_NETBALL}, - [BALL_DIVE] = {gInterfaceGfx_DiveBall, 384, GFX_TAG_DIVEBALL}, - [BALL_NEST] = {gInterfaceGfx_NestBall, 384, GFX_TAG_NESTBALL}, - [BALL_REPEAT] = {gInterfaceGfx_RepeatBall, 384, GFX_TAG_REPEATBALL}, - [BALL_TIMER] = {gInterfaceGfx_TimerBall, 384, GFX_TAG_TIMERBALL}, - [BALL_LUXURY] = {gInterfaceGfx_LuxuryBall, 384, GFX_TAG_LUXURYBALL}, - [BALL_PREMIER] = {gInterfaceGfx_PremierBall, 384, GFX_TAG_PREMIERBALL}, + [BALL_POKE] = {gBallGfx_Poke, 384, GFX_TAG_POKEBALL}, + [BALL_GREAT] = {gBallGfx_Great, 384, GFX_TAG_GREATBALL}, + [BALL_SAFARI] = {gBallGfx_Safari, 384, GFX_TAG_SAFARIBALL}, + [BALL_ULTRA] = {gBallGfx_Ultra, 384, GFX_TAG_ULTRABALL}, + [BALL_MASTER] = {gBallGfx_Master, 384, GFX_TAG_MASTERBALL}, + [BALL_NET] = {gBallGfx_Net, 384, GFX_TAG_NETBALL}, + [BALL_DIVE] = {gBallGfx_Dive, 384, GFX_TAG_DIVEBALL}, + [BALL_NEST] = {gBallGfx_Nest, 384, GFX_TAG_NESTBALL}, + [BALL_REPEAT] = {gBallGfx_Repeat, 384, GFX_TAG_REPEATBALL}, + [BALL_TIMER] = {gBallGfx_Timer, 384, GFX_TAG_TIMERBALL}, + [BALL_LUXURY] = {gBallGfx_Luxury, 384, GFX_TAG_LUXURYBALL}, + [BALL_PREMIER] = {gBallGfx_Premier, 384, GFX_TAG_PREMIERBALL}, }; const struct CompressedSpritePalette gBallSpritePalettes[POKEBALL_COUNT] = { - [BALL_POKE] = {gInterfacePal_PokeBall, GFX_TAG_POKEBALL}, - [BALL_GREAT] = {gInterfacePal_GreatBall, GFX_TAG_GREATBALL}, - [BALL_SAFARI] = {gInterfacePal_SafariBall, GFX_TAG_SAFARIBALL}, - [BALL_ULTRA] = {gInterfacePal_UltraBall, GFX_TAG_ULTRABALL}, - [BALL_MASTER] = {gInterfacePal_MasterBall, GFX_TAG_MASTERBALL}, - [BALL_NET] = {gInterfacePal_NetBall, GFX_TAG_NETBALL}, - [BALL_DIVE] = {gInterfacePal_DiveBall, GFX_TAG_DIVEBALL}, - [BALL_NEST] = {gInterfacePal_NestBall, GFX_TAG_NESTBALL}, - [BALL_REPEAT] = {gInterfacePal_RepeatBall, GFX_TAG_REPEATBALL}, - [BALL_TIMER] = {gInterfacePal_TimerBall, GFX_TAG_TIMERBALL}, - [BALL_LUXURY] = {gInterfacePal_LuxuryBall, GFX_TAG_LUXURYBALL}, - [BALL_PREMIER] = {gInterfacePal_PremierBall, GFX_TAG_PREMIERBALL}, + [BALL_POKE] = {gBallPal_Poke, GFX_TAG_POKEBALL}, + [BALL_GREAT] = {gBallPal_Great, GFX_TAG_GREATBALL}, + [BALL_SAFARI] = {gBallPal_Safari, GFX_TAG_SAFARIBALL}, + [BALL_ULTRA] = {gBallPal_Ultra, GFX_TAG_ULTRABALL}, + [BALL_MASTER] = {gBallPal_Master, GFX_TAG_MASTERBALL}, + [BALL_NET] = {gBallPal_Net, GFX_TAG_NETBALL}, + [BALL_DIVE] = {gBallPal_Dive, GFX_TAG_DIVEBALL}, + [BALL_NEST] = {gBallPal_Nest, GFX_TAG_NESTBALL}, + [BALL_REPEAT] = {gBallPal_Repeat, GFX_TAG_REPEATBALL}, + [BALL_TIMER] = {gBallPal_Timer, GFX_TAG_TIMERBALL}, + [BALL_LUXURY] = {gBallPal_Luxury, GFX_TAG_LUXURYBALL}, + [BALL_PREMIER] = {gBallPal_Premier, GFX_TAG_PREMIERBALL}, }; static const struct OamData sBallOamData = diff --git a/src/shop.c b/src/shop.c index f41ae315f162..b65cace09e61 100755 --- a/src/shop.c +++ b/src/shop.c @@ -674,9 +674,9 @@ static void BuyMenuInitBgs(void) static void BuyMenuDecompressBgGraphics(void) { - DecompressAndCopyTileDataToVram(1, gBuyMenuFrame_Gfx, 0x3A0, 0x3E3, 0); - LZDecompressWram(gBuyMenuFrame_Tilemap, sShopData->tilemapBuffers[0]); - LoadCompressedPalette(gMenuMoneyPal, 0xC0, 0x20); + DecompressAndCopyTileDataToVram(1, gShopMenu_Gfx, 0x3A0, 0x3E3, 0); + LZDecompressWram(gShopMenu_Tilemap, sShopData->tilemapBuffers[0]); + LoadCompressedPalette(gShopMenu_Pal, 0xC0, 0x20); } static void BuyMenuInitWindows(void) diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index ffb86488aae0..1fbd83fcdac3 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -51,9 +51,9 @@ static void Task_WirelessCommunicationScreen(u8); static void WCSS_AddTextPrinterParameterized(u8, u8, const u8 *, u8, u8, u8); static bool32 UpdateCommunicationCounts(u32 *, u32 *, u32 *, u8); -static const u16 sBgTiles_Pal[] = INCBIN_U16("graphics/interface/wireless_info_screen.gbapal"); -static const u32 sBgTiles_Gfx[] = INCBIN_U32("graphics/interface/wireless_info_screen.4bpp.lz"); -static const u32 sBgTiles_Tilemap[] = INCBIN_U32("graphics/interface/wireless_info_screen.bin.lz"); +static const u16 sBgTiles_Pal[] = INCBIN_U16("graphics/link/wireless_info_screen.gbapal"); +static const u32 sBgTiles_Gfx[] = INCBIN_U32("graphics/link/wireless_info_screen.4bpp.lz"); +static const u32 sBgTiles_Tilemap[] = INCBIN_U32("graphics/link/wireless_info_screen.bin.lz"); static const struct BgTemplate sBgTemplates[] = { { From 01af8e877f039a0e1427de5e52442602446719cc Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 11 Jan 2022 14:18:22 -0500 Subject: [PATCH 506/762] Move starter choose out of interface/misc --- .../hpbar_anim_unused.png} | Bin .../hpbar_unused.png} | Bin .../numbers1.png | Bin .../numbers2.png | Bin graphics/{misc => interface}/mon_markings.png | Bin .../{misc => interface}/mon_markings_menu.png | Bin .../birch_bag.bin} | Bin .../{misc => starter_choose}/birch_bag.png | Bin .../birch_grass.bin} | Bin .../{misc => starter_choose}/birch_grass.png | Bin .../pokeball_selection.png | Bin .../starter_circle.png | Bin graphics/{link => trade}/gba.png | Bin graphics/{link => trade}/gba_pal2.pal | 0 graphics_file_rules.mk | 9 +++++---- src/graphics.c | 14 +++++++------- src/mon_markings.c | 4 ++-- src/starter_choose.c | 18 +++++++++--------- 18 files changed, 23 insertions(+), 22 deletions(-) rename graphics/{interface/hpbar_anim.png => battle_interface/hpbar_anim_unused.png} (100%) rename graphics/{interface/unused_hpbar.png => battle_interface/hpbar_unused.png} (100%) rename graphics/{interface => battle_interface}/numbers1.png (100%) rename graphics/{interface => battle_interface}/numbers2.png (100%) rename graphics/{misc => interface}/mon_markings.png (100%) rename graphics/{misc => interface}/mon_markings_menu.png (100%) rename graphics/{misc/birch_bag_map.bin => starter_choose/birch_bag.bin} (100%) rename graphics/{misc => starter_choose}/birch_bag.png (100%) rename graphics/{misc/birch_grass_map.bin => starter_choose/birch_grass.bin} (100%) rename graphics/{misc => starter_choose}/birch_grass.png (100%) rename graphics/{misc => starter_choose}/pokeball_selection.png (100%) rename graphics/{misc => starter_choose}/starter_circle.png (100%) rename graphics/{link => trade}/gba.png (100%) rename graphics/{link => trade}/gba_pal2.pal (100%) diff --git a/graphics/interface/hpbar_anim.png b/graphics/battle_interface/hpbar_anim_unused.png similarity index 100% rename from graphics/interface/hpbar_anim.png rename to graphics/battle_interface/hpbar_anim_unused.png diff --git a/graphics/interface/unused_hpbar.png b/graphics/battle_interface/hpbar_unused.png similarity index 100% rename from graphics/interface/unused_hpbar.png rename to graphics/battle_interface/hpbar_unused.png diff --git a/graphics/interface/numbers1.png b/graphics/battle_interface/numbers1.png similarity index 100% rename from graphics/interface/numbers1.png rename to graphics/battle_interface/numbers1.png diff --git a/graphics/interface/numbers2.png b/graphics/battle_interface/numbers2.png similarity index 100% rename from graphics/interface/numbers2.png rename to graphics/battle_interface/numbers2.png diff --git a/graphics/misc/mon_markings.png b/graphics/interface/mon_markings.png similarity index 100% rename from graphics/misc/mon_markings.png rename to graphics/interface/mon_markings.png diff --git a/graphics/misc/mon_markings_menu.png b/graphics/interface/mon_markings_menu.png similarity index 100% rename from graphics/misc/mon_markings_menu.png rename to graphics/interface/mon_markings_menu.png diff --git a/graphics/misc/birch_bag_map.bin b/graphics/starter_choose/birch_bag.bin similarity index 100% rename from graphics/misc/birch_bag_map.bin rename to graphics/starter_choose/birch_bag.bin diff --git a/graphics/misc/birch_bag.png b/graphics/starter_choose/birch_bag.png similarity index 100% rename from graphics/misc/birch_bag.png rename to graphics/starter_choose/birch_bag.png diff --git a/graphics/misc/birch_grass_map.bin b/graphics/starter_choose/birch_grass.bin similarity index 100% rename from graphics/misc/birch_grass_map.bin rename to graphics/starter_choose/birch_grass.bin diff --git a/graphics/misc/birch_grass.png b/graphics/starter_choose/birch_grass.png similarity index 100% rename from graphics/misc/birch_grass.png rename to graphics/starter_choose/birch_grass.png diff --git a/graphics/misc/pokeball_selection.png b/graphics/starter_choose/pokeball_selection.png similarity index 100% rename from graphics/misc/pokeball_selection.png rename to graphics/starter_choose/pokeball_selection.png diff --git a/graphics/misc/starter_circle.png b/graphics/starter_choose/starter_circle.png similarity index 100% rename from graphics/misc/starter_circle.png rename to graphics/starter_choose/starter_circle.png diff --git a/graphics/link/gba.png b/graphics/trade/gba.png similarity index 100% rename from graphics/link/gba.png rename to graphics/trade/gba.png diff --git a/graphics/link/gba_pal2.pal b/graphics/trade/gba_pal2.pal similarity index 100% rename from graphics/link/gba_pal2.pal rename to graphics/trade/gba_pal2.pal diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 25ac1814215a..cb12b9c18388 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -19,6 +19,7 @@ OBJEVENTGFXDIR := graphics/object_events MISCGFXDIR := graphics/misc JPCONTESTGFXDIR := graphics/contest/japanese POKEDEXGFXDIR := graphics/pokedex +STARTERGFXDIR := graphics/starter_choose 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 @@ -371,9 +372,9 @@ $(UNUSEDGFXDIR)/obi2.4bpp: $(UNUSEDGFXDIR)/old_bulbasaur2.4bpp \ $(UNUSEDGFXDIR)/old_battle_interface_3.4bpp @cat $^ >$@ -$(INTERFACEGFXDIR)/battle_bar.4bpp: $(INTERFACEGFXDIR)/hpbar_anim.4bpp \ - $(INTERFACEGFXDIR)/numbers1.4bpp \ - $(INTERFACEGFXDIR)/numbers2.4bpp +$(BATINTGFXDIR)/battle_bar.4bpp: $(BATINTGFXDIR)/hpbar_anim_unused.4bpp \ + $(BATINTGFXDIR)/numbers1.4bpp \ + $(BATINTGFXDIR)/numbers2.4bpp @cat $^ >$@ $(UNUSEDGFXDIR)/redyellowgreen_frame.bin: $(UNUSEDGFXDIR)/red_frame.bin \ @@ -707,5 +708,5 @@ $(POKEDEXGFXDIR)/region_map.8bpp: %.8bpp: %.png $(POKEDEXGFXDIR)/region_map_affine.8bpp: %.8bpp: %.png $(GFX) $< $@ -num_tiles 233 -$(MISCGFXDIR)/birch_help.4bpp: $(MISCGFXDIR)/birch_bag.4bpp $(MISCGFXDIR)/birch_grass.4bpp +$(STARTERGFXDIR)/birch_help.4bpp: $(STARTERGFXDIR)/birch_bag.4bpp $(STARTERGFXDIR)/birch_grass.4bpp @cat $^ >$@ diff --git a/src/graphics.c b/src/graphics.c index 09cae59ce5c0..9f708f18b458 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -147,7 +147,7 @@ const u32 gBattleAnimSpriteGfx_ClawSlash[] = INCBIN_U32("graphics/battle_anims/s const u32 gBattleAnimSpriteGfx_Scratch3[] = INCBIN_U32("graphics/battle_anims/sprites/scratch_3.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Scratch2[] = INCBIN_U32("graphics/battle_anims/sprites/scratch_2.4bpp.lz"); -const u32 gUnusedHpBar_Gfx[] = INCBIN_U32("graphics/interface/unused_hpbar.4bpp.lz"); +const u32 gUnusedHpBar_Gfx[] = INCBIN_U32("graphics/battle_interface/hpbar_unused.4bpp.lz"); const u32 gBattleAnimSpriteGfx_BubbleBurst2[] = INCBIN_U32("graphics/battle_anims/sprites/bubble_burst_2.4bpp.lz"); @@ -165,7 +165,7 @@ const u32 gBattleAnimSpriteGfx_PinkHeart2[] = INCBIN_U32("graphics/battle_anims/ const u32 gBattleInterfaceGfx_UnusedWindow1[] = INCBIN_U32("graphics/battle_interface/unused_window.4bpp.lz"); const u32 gBattleInterfacePal_UnusedWindow1[] = INCBIN_U32("graphics/battle_interface/unused_window.gbapal.lz"); -const u32 gBattleInterfaceGfx_BattleBar[] = INCBIN_U32("graphics/interface/battle_bar.4bpp.lz"); +const u32 gBattleInterfaceGfx_BattleBar[] = INCBIN_U32("graphics/battle_interface/battle_bar.4bpp.lz"); const u32 gBattleAnimSpriteGfx_SapDrip[] = INCBIN_U32("graphics/battle_anims/sprites/sap_drip.4bpp.lz"); const u32 gBattleAnimSpritePal_SapDrip[] = INCBIN_U32("graphics/battle_anims/sprites/sap_drip.gbapal.lz"); @@ -1329,8 +1329,8 @@ const u32 gRegionMapCityZoomText_Gfx[] = INCBIN_U32("graphics/pokenav/city_zoom_ const u16 gPokenavConditionCancel_Pal[] = INCBIN_U16("graphics/pokenav/condition/cancel.gbapal"); const u8 gPokenavConditionCancel_Gfx[] = INCBIN_U8("graphics/pokenav/condition/cancel.4bpp"); -const u16 gMonMarkingsMenu_Pal[] = INCBIN_U16("graphics/misc/mon_markings_menu.gbapal"); -const u8 gMonMarkingsMenu_Gfx[] = INCBIN_U8("graphics/misc/mon_markings_menu.4bpp"); +const u16 gMonMarkingsMenu_Pal[] = INCBIN_U16("graphics/interface/mon_markings_menu.gbapal"); +const u8 gMonMarkingsMenu_Gfx[] = INCBIN_U8("graphics/interface/mon_markings_menu.4bpp"); const u16 gBerryBlenderMiscPalette[] = INCBIN_U16("graphics/berry_blender/misc.gbapal"); const u16 gBerryBlenderArrowPalette[] = INCBIN_U16("graphics/berry_blender/arrow.gbapal"); @@ -1447,9 +1447,9 @@ const u32 gTilesetTiles_General[] = INCBIN_U32("data/tilesets/primary/general/ti // trade/egg hatch -const u16 gTradeGba_Pal[] = INCBIN_U16("graphics/link/gba.gbapal"); -const u16 gTradeGba2_Pal[] = INCBIN_U16("graphics/link/gba_pal2.gbapal"); -const u8 gTradeGba_Gfx[] = INCBIN_U8("graphics/link/gba.4bpp"); +const u16 gTradeGba_Pal[] = INCBIN_U16("graphics/trade/gba.gbapal"); +const u16 gTradeGba2_Pal[] = INCBIN_U16("graphics/trade/gba_pal2.gbapal"); +const u8 gTradeGba_Gfx[] = INCBIN_U8("graphics/trade/gba.4bpp"); static const u16 sEmptyPal[16] = {0}; diff --git a/src/mon_markings.c b/src/mon_markings.c index dbd5a2fa817b..1e03179e9458 100644 --- a/src/mon_markings.c +++ b/src/mon_markings.c @@ -22,8 +22,8 @@ static void SpriteCB_Marking(struct Sprite *); static void SpriteCB_Cursor(struct Sprite *); static struct Sprite *CreateMarkingComboSprite(u16, u16, const u16 *, u16); -static const u16 sMonMarkings_Pal[] = INCBIN_U16("graphics/misc/mon_markings.gbapal"); -static const u8 sMonMarkings_Gfx[] = INCBIN_U8("graphics/misc/mon_markings.4bpp"); +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 struct OamData sOamData_MenuWindow = { diff --git a/src/starter_choose.c b/src/starter_choose.c index ca393c4d819e..81a88e7714eb 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -53,17 +53,17 @@ static u16 sStarterLabelWindowId; const u16 gBirchBagGrassPal[][16] = { - INCBIN_U16("graphics/misc/birch_bag.gbapal"), - INCBIN_U16("graphics/misc/birch_grass.gbapal"), + INCBIN_U16("graphics/starter_choose/birch_bag.gbapal"), + INCBIN_U16("graphics/starter_choose/birch_grass.gbapal"), }; -static const u16 sPokeballSelection_Pal[] = INCBIN_U16("graphics/misc/pokeball_selection.gbapal"); -static const u16 sStarterCircle_Pal[] = INCBIN_U16("graphics/misc/starter_circle.gbapal"); -const u32 gBirchBagTilemap[] = INCBIN_U32("graphics/misc/birch_bag_map.bin.lz"); -const u32 gBirchGrassTilemap[] = INCBIN_U32("graphics/misc/birch_grass_map.bin.lz"); -const u32 gBirchHelpGfx[] = INCBIN_U32("graphics/misc/birch_help.4bpp.lz"); // Birch bag and grass combined -const u32 gPokeballSelection_Gfx[] = INCBIN_U32("graphics/misc/pokeball_selection.4bpp.lz"); -static const u32 sStarterCircle_Gfx[] = INCBIN_U32("graphics/misc/starter_circle.4bpp.lz"); +static const u16 sPokeballSelection_Pal[] = INCBIN_U16("graphics/starter_choose/pokeball_selection.gbapal"); +static const u16 sStarterCircle_Pal[] = INCBIN_U16("graphics/starter_choose/starter_circle.gbapal"); +const u32 gBirchBagTilemap[] = INCBIN_U32("graphics/starter_choose/birch_bag.bin.lz"); +const u32 gBirchGrassTilemap[] = INCBIN_U32("graphics/starter_choose/birch_grass.bin.lz"); +const u32 gBirchHelpGfx[] = INCBIN_U32("graphics/starter_choose/birch_help.4bpp.lz"); // Birch bag and grass combined +const u32 gPokeballSelection_Gfx[] = INCBIN_U32("graphics/starter_choose/pokeball_selection.4bpp.lz"); +static const u32 sStarterCircle_Gfx[] = INCBIN_U32("graphics/starter_choose/starter_circle.4bpp.lz"); static const struct WindowTemplate sWindowTemplates[] = { From f899a02ac642e66ab9b6baa28903921863529171 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 12 Jan 2022 18:34:21 -0500 Subject: [PATCH 507/762] Use MON_GIVEN_TO_ constants for givemon --- .../LittlerootTown_ProfessorBirchsLab/scripts.inc | 12 ++++++------ data/maps/MossdeepCity_StevensHouse/scripts.inc | 4 ++-- data/maps/Route119_WeatherInstitute_2F/scripts.inc | 4 ++-- data/maps/RustboroCity_DevonCorp_2F/scripts.inc | 8 ++++---- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc index d645db440565..acf80f0e4082 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc @@ -341,8 +341,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil:: bufferspeciesname STR_VAR_1, SPECIES_CYNDAQUIL setvar VAR_TEMP_1, SPECIES_CYNDAQUIL givemon SPECIES_CYNDAQUIL, 5 - goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty - goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end @@ -382,8 +382,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile:: bufferspeciesname STR_VAR_1, SPECIES_TOTODILE setvar VAR_TEMP_1, SPECIES_TOTODILE givemon SPECIES_TOTODILE, 5 - goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty - goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end @@ -423,8 +423,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita:: bufferspeciesname STR_VAR_1, SPECIES_CHIKORITA setvar VAR_TEMP_1, SPECIES_CHIKORITA givemon SPECIES_CHIKORITA, 5 - goto_if_eq VAR_RESULT, 0, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty - goto_if_eq VAR_RESULT, 1, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC hidemonpic goto Common_EventScript_NoMoreRoomForPokemon end diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc index 00814ce19495..0470e977a6be 100644 --- a/data/maps/MossdeepCity_StevensHouse/scripts.inc +++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc @@ -87,8 +87,8 @@ MossdeepCity_StevensHouse_EventScript_LeaveBeldum:: MossdeepCity_StevensHouse_EventScript_GiveBeldum:: setvar VAR_TEMP_1, SPECIES_BELDUM givemon SPECIES_BELDUM, 5 - goto_if_eq VAR_RESULT, 0, MossdeepCity_StevensHouse_EventScript_SendBeldumParty - goto_if_eq VAR_RESULT, 1, MossdeepCity_StevensHouse_EventScript_SendBeldumPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, MossdeepCity_StevensHouse_EventScript_SendBeldumParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, MossdeepCity_StevensHouse_EventScript_SendBeldumPC goto Common_EventScript_NoMoreRoomForPokemon end diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc index 0b2227e8baf8..2060cb03c9b7 100644 --- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc +++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc @@ -90,8 +90,8 @@ Route119_WeatherInstitute_2F_EventScript_ReceiveCastform:: msgbox Route119_WeatherInstitute_2F_Text_ThanksPleaseTakePokemon, MSGBOX_DEFAULT setvar VAR_TEMP_1, SPECIES_CASTFORM givemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER - goto_if_eq VAR_RESULT, 0, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty - goto_if_eq VAR_RESULT, 1, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, Route119_WeatherInstitute_2F_EventScript_ReceiveCastformPC goto Common_EventScript_NoMoreRoomForPokemon end diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc index a85cbc8be8a2..747070645c60 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc +++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc @@ -146,8 +146,8 @@ RustboroCity_DevonCorp_2F_EventScript_AnorithReady:: RustboroCity_DevonCorp_2F_EventScript_ReceiveLileep:: setvar VAR_TEMP_1, SPECIES_LILEEP givemon SPECIES_LILEEP, 20 - goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty - goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, RustboroCity_DevonCorp_2F_EventScript_ReceiveLileepPC goto Common_EventScript_NoMoreRoomForPokemon end @@ -191,8 +191,8 @@ RustboroCity_DevonCorp_2F_EventScript_FinishReceivingLileep:: RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorith:: setvar VAR_TEMP_1, SPECIES_ANORITH givemon SPECIES_ANORITH, 20 - goto_if_eq VAR_RESULT, 0, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty - goto_if_eq VAR_RESULT, 1, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PARTY, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithParty + goto_if_eq VAR_RESULT, MON_GIVEN_TO_PC, RustboroCity_DevonCorp_2F_EventScript_ReceiveAnorithPC goto Common_EventScript_NoMoreRoomForPokemon end From fd7457b05a1b109ae42cb4a956266b6acebb5644 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 13 Jan 2022 15:26:20 -0500 Subject: [PATCH 508/762] Remove berry fix --- .gitignore | 1 + Makefile | 16 +- berry_fix/Makefile | 203 ---- berry_fix/asm/berry_fix_header.inc | 35 - berry_fix/asm/loader.s | 119 -- berry_fix/charmap.txt | 1067 ----------------- berry_fix/data/data.s | 4 - berry_fix/ld_script.sed | 14 - berry_fix/ld_script.txt | 31 - berry_fix/payload/Makefile | 209 ---- berry_fix/payload/asm/crt0.s | 82 -- berry_fix/payload/asm/libagbsyscall.s | 46 - berry_fix/payload/asm/macros/function.inc | 29 - berry_fix/payload/charmap.txt | 1067 ----------------- berry_fix/payload/common_syms/agb_flash.txt | 10 - berry_fix/payload/common_syms/main.txt | 9 - berry_fix/payload/common_syms/rtc.txt | 2 - berry_fix/payload/constants/gba_constants.inc | 490 -------- berry_fix/payload/graphics/debug_digits.png | Bin 166 -> 0 bytes berry_fix/payload/graphics/msg_box.png | Bin 2631 -> 0 bytes berry_fix/payload/graphics/msg_box.tilemap | Bin 8192 -> 0 bytes .../payload/include/constants/game_stat.h | 56 - berry_fix/payload/include/constants/vars.h | 196 --- berry_fix/payload/include/flash.h | 55 - berry_fix/payload/include/gba/defines.h | 87 -- .../payload/include/gba/flash_internal.h | 85 -- berry_fix/payload/include/gba/gba.h | 12 - berry_fix/payload/include/gba/io_reg.h | 770 ------------ berry_fix/payload/include/gba/isagbprint.h | 50 - berry_fix/payload/include/gba/m4a_internal.h | 467 -------- berry_fix/payload/include/gba/macro.h | 247 ---- berry_fix/payload/include/gba/multiboot.h | 55 - berry_fix/payload/include/gba/syscall.h | 57 - berry_fix/payload/include/gba/types.h | 146 --- berry_fix/payload/include/global.berry.h | 62 - berry_fix/payload/include/global.fieldmap.h | 310 ----- berry_fix/payload/include/global.h | 876 -------------- berry_fix/payload/include/main.h | 45 - berry_fix/payload/include/pokemon.h | 154 --- berry_fix/payload/include/rtc.h | 15 - berry_fix/payload/include/siirtc.h | 54 - berry_fix/payload/ld_script.sed | 14 - berry_fix/payload/ld_script.txt | 107 -- berry_fix/payload/rom.sha1 | 1 - berry_fix/payload/src/agb_flash.c | 296 ----- berry_fix/payload/src/agb_flash_1m.c | 86 -- berry_fix/payload/src/agb_flash_le.c | 31 - berry_fix/payload/src/agb_flash_mx.c | 193 --- berry_fix/payload/src/flash.c | 752 ------------ berry_fix/payload/src/main.c | 289 ----- berry_fix/payload/src/rtc.c | 346 ------ berry_fix/payload/src/siirtc.c | 432 ------- berry_fix/payload/sym_bss.txt | 5 - berry_fix/payload/sym_common.txt | 29 - berry_fix/payload/sym_ewram.txt | 3 - berry_fix/rom.sha1 | 1 - data/ereader_link_data.s | 6 - data/mb_berry_fix.gba | Bin 0 -> 15348 bytes ...{pokemon_colosseum.mb => mb_colosseum.gba} | Bin .../{ereader_link_data.bin => mb_ereader.gba} | Bin data/multiboot_berry_glitch_fix.s | 2 +- data/multiboot_ereader.s | 6 + data/multiboot_pokemon_colosseum.s | 2 +- ld_script.txt | 4 +- ld_script_modern.txt | 4 +- src/ereader_screen.c | 8 +- 66 files changed, 22 insertions(+), 9828 deletions(-) delete mode 100644 berry_fix/Makefile delete mode 100644 berry_fix/asm/berry_fix_header.inc delete mode 100644 berry_fix/asm/loader.s delete mode 100644 berry_fix/charmap.txt delete mode 100644 berry_fix/data/data.s delete mode 100644 berry_fix/ld_script.sed delete mode 100644 berry_fix/ld_script.txt delete mode 100644 berry_fix/payload/Makefile delete mode 100644 berry_fix/payload/asm/crt0.s delete mode 100644 berry_fix/payload/asm/libagbsyscall.s delete mode 100644 berry_fix/payload/asm/macros/function.inc delete mode 100644 berry_fix/payload/charmap.txt delete mode 100644 berry_fix/payload/common_syms/agb_flash.txt delete mode 100644 berry_fix/payload/common_syms/main.txt delete mode 100644 berry_fix/payload/common_syms/rtc.txt delete mode 100644 berry_fix/payload/constants/gba_constants.inc delete mode 100644 berry_fix/payload/graphics/debug_digits.png delete mode 100644 berry_fix/payload/graphics/msg_box.png delete mode 100644 berry_fix/payload/graphics/msg_box.tilemap delete mode 100644 berry_fix/payload/include/constants/game_stat.h delete mode 100644 berry_fix/payload/include/constants/vars.h delete mode 100644 berry_fix/payload/include/flash.h delete mode 100644 berry_fix/payload/include/gba/defines.h delete mode 100644 berry_fix/payload/include/gba/flash_internal.h delete mode 100644 berry_fix/payload/include/gba/gba.h delete mode 100644 berry_fix/payload/include/gba/io_reg.h delete mode 100644 berry_fix/payload/include/gba/isagbprint.h delete mode 100644 berry_fix/payload/include/gba/m4a_internal.h delete mode 100644 berry_fix/payload/include/gba/macro.h delete mode 100644 berry_fix/payload/include/gba/multiboot.h delete mode 100644 berry_fix/payload/include/gba/syscall.h delete mode 100644 berry_fix/payload/include/gba/types.h delete mode 100644 berry_fix/payload/include/global.berry.h delete mode 100644 berry_fix/payload/include/global.fieldmap.h delete mode 100644 berry_fix/payload/include/global.h delete mode 100644 berry_fix/payload/include/main.h delete mode 100644 berry_fix/payload/include/pokemon.h delete mode 100644 berry_fix/payload/include/rtc.h delete mode 100644 berry_fix/payload/include/siirtc.h delete mode 100644 berry_fix/payload/ld_script.sed delete mode 100644 berry_fix/payload/ld_script.txt delete mode 100644 berry_fix/payload/rom.sha1 delete mode 100644 berry_fix/payload/src/agb_flash.c delete mode 100644 berry_fix/payload/src/agb_flash_1m.c delete mode 100644 berry_fix/payload/src/agb_flash_le.c delete mode 100644 berry_fix/payload/src/agb_flash_mx.c delete mode 100644 berry_fix/payload/src/flash.c delete mode 100644 berry_fix/payload/src/main.c delete mode 100644 berry_fix/payload/src/rtc.c delete mode 100644 berry_fix/payload/src/siirtc.c delete mode 100644 berry_fix/payload/sym_bss.txt delete mode 100644 berry_fix/payload/sym_common.txt delete mode 100644 berry_fix/payload/sym_ewram.txt delete mode 100644 berry_fix/rom.sha1 delete mode 100644 data/ereader_link_data.s create mode 100755 data/mb_berry_fix.gba rename data/{pokemon_colosseum.mb => mb_colosseum.gba} (100%) rename data/{ereader_link_data.bin => mb_ereader.gba} (100%) create mode 100644 data/multiboot_ereader.s diff --git a/.gitignore b/.gitignore index 23b01d1e0d40..cac4a07e61a9 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ *.i *.elf *.gba +!data/*.gba *.sgm *.sa1 *.ss[0-9] diff --git a/Makefile b/Makefile index 7b2f79877a84..6283a87fe349 100644 --- a/Makefile +++ b/Makefile @@ -150,7 +150,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall modern tidymodern tidynonmodern +.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) libagbsyscall modern tidymodern tidynonmodern infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -158,7 +158,7 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst # 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 berry_fix libagbsyscall syms,$(MAKECMDGOALS))) +ifeq (,$(filter-out all rom compare modern libagbsyscall syms,$(MAKECMDGOALS))) $(call infoshell, $(MAKE) -f make_tools.mk) else NODEP ?= 1 @@ -169,8 +169,8 @@ ifeq (,$(MAKECMDGOALS)) SCAN_DEPS ?= 1 else # clean, tidy, tools, mostlyclean, clean-tools, $(TOOLDIRS), tidymodern, tidynonmodern don't even build the ROM - # berry_fix and libagbsyscall do their own thing - ifeq (,$(filter-out clean tidy tools mostlyclean clean-tools $(TOOLDIRS) tidymodern tidynonmodern berry_fix libagbsyscall,$(MAKECMDGOALS))) + # 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 @@ -243,7 +243,6 @@ mostlyclean: tidynonmodern tidymodern 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 $(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 berry_fix @$(MAKE) clean -C libagbsyscall tidy: tidynonmodern tidymodern @@ -417,7 +416,7 @@ 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) berry_fix libagbsyscall +$(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 @@ -428,11 +427,6 @@ $(ROM): $(ELF) modern: all -berry_fix/berry_fix.gba: berry_fix - -berry_fix: - @$(MAKE) -C berry_fix COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) - libagbsyscall: @$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) diff --git a/berry_fix/Makefile b/berry_fix/Makefile deleted file mode 100644 index 464e5f9e9cb0..000000000000 --- a/berry_fix/Makefile +++ /dev/null @@ -1,203 +0,0 @@ -TOOLCHAIN := $(DEVKITARM) -COMPARE ?= 0 - -# 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 -endif - -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc - -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -# use arm-none-eabi-cpp for macOS -# as macOS's default compiler is clang -# and clang's preprocessor will warn on \u -# when preprocessing asm files, expecting a unicode literal -# we can't unconditionally use arm-none-eabi-cpp -# as installations which install binutils-arm-none-eabi -# don't come with it -ifneq ($(MODERN),1) - ifeq ($(shell uname -s),Darwin) - CPP := $(PREFIX)cpp - else - CPP := $(CC) -E - endif -else - CPP := $(PREFIX)cpp -endif - -GAME_CODE := AGBJ -MAKER_CODE := 01 -REVISION := 0 - -SHELL := /bin/bash -o pipefail - -CPPFLAGS := -I ../tools/agbcc/include -I ../tools/agbcc -iquote include -nostdinc -undef - -ROM := berry_fix.gba -OBJ_DIR := build -CC1 := ../tools/agbcc/bin/agbcc$(EXE) -override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm - - -ELF = $(ROM:.gba=.elf) -MAP = $(ROM:.gba=.map) - -C_SUBDIR = src -ASM_SUBDIR = asm -DATA_ASM_SUBDIR = data - -C_BUILDDIR = $(OBJ_DIR)/$(C_SUBDIR) -ASM_BUILDDIR = $(OBJ_DIR)/$(ASM_SUBDIR) -DATA_ASM_BUILDDIR = $(OBJ_DIR)/$(DATA_ASM_SUBDIR) - -ASFLAGS := -mcpu=arm7tdmi - -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) - -# Clear the default suffixes -.SUFFIXES: -# Don't delete intermediate files -.SECONDARY: -# 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 payload - -C_SRCS := $(wildcard $(C_SUBDIR)/*.c $(C_SUBDIR)/*/*.c $(C_SUBDIR)/*/*/*.c) -C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS)) - -ASM_SRCS := $(wildcard $(ASM_SUBDIR)/*.s) -ASM_OBJS := $(patsubst $(ASM_SUBDIR)/%.s,$(ASM_BUILDDIR)/%.o,$(ASM_SRCS)) - -DATA_ASM_SRCS := $(wildcard $(DATA_ASM_SUBDIR)/*.s) -DATA_ASM_OBJS := $(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o,$(DATA_ASM_SRCS)) - -SONG_SRCS := $(wildcard $(SONG_SUBDIR)/*.s) -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) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS) -# OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS)) - -SUBDIRS := $(sort $(dir $(OBJS))) - -$(shell mkdir -p $(SUBDIRS)) - -all: payload rom - @: - -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: ; @$(MAKE) COMPARE=1 - -clean: tidy - rm -f sound/direct_sound_samples/*.bin - rm -f $(SONG_OBJS) $(MID_OBJS) $(MID_SUBDIR)/*.s - find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} + - make -C payload clean - -tidy: - rm -f $(ROM) $(ELF) $(MAP) - rm -r build/* - make -C payload tidy - -%.s: ; -%.png: ; -%.pal: ; -%.aif: ; - -%.1bpp: %.png ; $(GFX) $< $@ -%.4bpp: %.png ; $(GFX) $< $@ -%.8bpp: %.png ; $(GFX) $< $@ -%.gbapal: %.pal ; $(GFX) $< $@ -%.gbapal: %.png ; $(GFX) $< $@ -%.lz: % ; $(GFX) $< $@ -%.rl: % ; $(GFX) $< $@ - - -ifeq ($(NODEP),1) -$(C_BUILDDIR)/%.o: c_dep := -else -$(C_BUILDDIR)/%.o: c_dep = $(shell $(SCANINC) -I include $(C_SUBDIR)/$*.c) -endif - -$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep) - @$(CPP) $(CPPFLAGS) $< -o $(C_BUILDDIR)/$*.i - @$(PREPROC) $(C_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CFLAGS) -o $(C_BUILDDIR)/$*.s - $(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s - -ifeq ($(NODEP),1) -$(ASM_BUILDDIR)/%.o: asm_dep := -else -$(ASM_BUILDDIR)/%.o: asm_dep = $(shell $(SCANINC) $(ASM_SUBDIR)/$*.s) -endif - -$(ASM_BUILDDIR)/%.o: $(ASM_SUBDIR)/%.s $$(asm_dep) - $(AS) $(ASFLAGS) -o $@ $< - -ifeq ($(NODEP),1) -$(DATA_ASM_BUILDDIR)/%.o: data_dep := -else -$(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s) -endif - -payload: - @$(MAKE) -C payload COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN) - -payload/payload.gba: payload - -data/payload.gba.lz: payload/payload.gba - $(GFX) $< $@ -search 1 - -$(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep) - $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@ - -$(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s - $(AS) $(ASFLAGS) -I sound -o $@ $< - -$(ELF): ld_script.txt $(OBJS) - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ../ld_script.txt -o ../$@ - -$(ROM): $(ELF) - $(OBJCOPY) -O binary $< $@ - $(FIX) $@ -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent - diff --git a/berry_fix/asm/berry_fix_header.inc b/berry_fix/asm/berry_fix_header.inc deleted file mode 100644 index 5167d2ff0337..000000000000 --- a/berry_fix/asm/berry_fix_header.inc +++ /dev/null @@ -1,35 +0,0 @@ - .global BerryFixMBHeaderNintendoLogo -BerryFixMBHeaderNintendoLogo: - .space 156 - -BerryFixMBHeaderGameTitle: - .space 12 - - .global BerryFixMBHeaderGameCode -BerryFixMBHeaderGameCode: - .space 4 - -BerryFixMBHeaderMakerCode: - .space 2 - -BerryFixMBHeaderMagic: - .byte 0 - -BerryFixMBHeaderMainUnitCode: - .byte 0 - -BerryFixMBHeaderDeviceType: - .byte 0 - -BerryFixMBHeaderReserved1: - .space 7 - - .global BerryFixMBHeaderSoftwareVersion -BerryFixMBHeaderSoftwareVersion: - .byte 0 - -BerryFixMBHeaderChecksum: - .byte 0 - -BerryFixMBHeaderReserved2: - .space 2 diff --git a/berry_fix/asm/loader.s b/berry_fix/asm/loader.s deleted file mode 100644 index a78014078567..000000000000 --- a/berry_fix/asm/loader.s +++ /dev/null @@ -1,119 +0,0 @@ - .include "../asm/macros/asm.inc" - .include "../asm/macros/function.inc" - .include "../constants/gba_constants.inc" - - .set SIO_ERROR, 0x0040 - .set SIO_MULTI_BUSY, 0x0080 - - .set EWRAM_ORIG, 0x02000000 - .set gCode, 0x02010000 - .set PROG_ORIG, 0x00008000 - - .syntax unified - - .text - - arm_func_start _start -_start: @ 0 - b _entry - arm_func_end _start - - .include "asm/berry_fix_header.inc" - -@ C0 - .word 0 - - .global _GPIOPortData -_GPIOPortData: @ C4 - .2byte 0 - - .global _GPIOPortDirection -_GPIOPortDirection: @ C6 - .2byte 0 - - .global _GPIOPortReadEnable -_GPIOPortReadEnable: @ C8 - .2byte 0 - -@ CA - .2byte 0 - -@ CC - .space 0x34 - - arm_func_start _entry -_entry: @ 100 - b _send - arm_func_end _entry - - .space 0x1C - - arm_func_start _recv -_recv: - @ Waits until link cable is no longer busy. - @ Returns nz if an error has occurred - @ Otherwise, returns the received short in r1. - @ Preserves r0 -_120: - ldrh r1, [r0, 0x8] @ SIOCNT - tst r1, SIO_MULTI_BUSY - beq _120 -_12c: - ldrh r1, [r0, 0x8] @ SIOCNT - tst r1, SIO_MULTI_BUSY - bne _12c - ldrh r1, [r0, 0x8] @ SIOCNT - tst r1, SIO_ERROR - bxne lr - ldrh r1, [r0] @ SIOMULTI0 - bx lr - arm_func_end _recv - - arm_func_start _send -_send: @ 14c - ldr r0, =REG_SIOMULTI0 -_150: - bl _recv - bne _150 - mov r2, #0 - strh r2, [r0, 0xa] @ SIOMLT_SEND - cmp r1, #0 - bne _150 - mov r2, 0x8000 -_16c: - mov r1, #0 -_170: - strh r1, [r0, 0xa] @ SIOMLT_SEND - bl _recv - bne _150 - cmp r1, r2 - bne _16c - lsr r2, #5 - cmp r1, #0 - bne _170 - ldr r3, =BerryFixMBHeaderGameCode - ldrh r2, [r3] - strh r2, [r0, 0xa] @ SIOMLT_SEND - bl _recv -_1a0: - bne _1a0 - cmp r1, r2 - bne _1a0 - ldrh r2, [r3, 0x2] - strh r2, [r0, 0xa] @ SIOMLT_SEND - bl _recv - bne _1a0 - cmp r1, r2 - bne _1a0 - mov r1, #0 - strh r1, [r0, 0xa] @ SIOMLT_SEND - ldr r0, =_data_2f0 - ldr r1, =gCode - swi 0x11 << 16 - ldr lr, =gCode - bx lr - .pool - arm_func_end _send - @ 1f0 - - .align 2, 0 @ don't pad with nop diff --git a/berry_fix/charmap.txt b/berry_fix/charmap.txt deleted file mode 100644 index 1c143ada4f8d..000000000000 --- a/berry_fix/charmap.txt +++ /dev/null @@ -1,1067 +0,0 @@ -' ' = 00 -'Ă€' = 01 -'Ă' = 02 -'Ă‚' = 03 -'Ç' = 04 -'Ă' = 05 -'É' = 06 -'ĂŠ' = 07 -'Ă‹' = 08 -'ĂŚ' = 09 -'ĂŽ' = 0B -'ĂŹ' = 0C -'Ă’' = 0D -'Ă“' = 0E -'Ă”' = 0F -'Ĺ’' = 10 -'Ă™' = 11 -'Ăš' = 12 -'Ă›' = 13 -'Ă‘' = 14 -'Ăź' = 15 -'Ă ' = 16 -'á' = 17 -'ç' = 19 -'è' = 1A -'Ă©' = 1B -'ĂŞ' = 1C -'Ă«' = 1D -'ì' = 1E -'Ă®' = 20 -'ĂŻ' = 21 -'ò' = 22 -'Ăł' = 23 -'Ă´' = 24 -'Ĺ“' = 25 -'Ăą' = 26 -'Ăş' = 27 -'Ă»' = 28 -'ñ' = 29 -'Âş' = 2A -'ÂŞ' = 2B -SUPER_ER = 2C -'&' = 2D -'+' = 2E -LV = 34 -'=' = 35 -';' = 36 -'Âż' = 51 -'¡' = 52 -PK = 53 -PKMN = 53 54 -POKEBLOCK = 55 56 57 58 59 -'ĂŤ' = 5A -'%' = 5B -'(' = 5C -')' = 5D -'â' = 68 -'Ă­' = 6F -UNK_SPACER = 77 -UP_ARROW = 79 -DOWN_ARROW = 7A -LEFT_ARROW = 7B -RIGHT_ARROW = 7C -'0' = A1 -'1' = A2 -'2' = A3 -'3' = A4 -'4' = A5 -'5' = A6 -'6' = A7 -'7' = A8 -'8' = A9 -'9' = AA -'!' = AB -'?' = AC -'.' = AD -'-' = AE -'·' = AF -'…' = B0 -'“' = B1 -'”' = B2 -'â€' = B3 -'’' = B4 -'♂' = B5 -'♀' = B6 -'ÂĄ' = B7 -',' = B8 -'Ă—' = B9 -'/' = BA -'A' = BB -'B' = BC -'C' = BD -'D' = BE -'E' = BF -'F' = C0 -'G' = C1 -'H' = C2 -'I' = C3 -'J' = C4 -'K' = C5 -'L' = C6 -'M' = C7 -'N' = C8 -'O' = C9 -'P' = CA -'Q' = CB -'R' = CC -'S' = CD -'T' = CE -'U' = CF -'V' = D0 -'W' = D1 -'X' = D2 -'Y' = D3 -'Z' = D4 -'a' = D5 -'b' = D6 -'c' = D7 -'d' = D8 -'e' = D9 -'f' = DA -'g' = DB -'h' = DC -'i' = DD -'j' = DE -'k' = DF -'l' = E0 -'m' = E1 -'n' = E2 -'o' = E3 -'p' = E4 -'q' = E5 -'r' = E6 -'s' = E7 -'t' = E8 -'u' = E9 -'v' = EA -'w' = EB -'x' = EC -'y' = ED -'z' = EE -'â–¶' = EF -':' = F0 -'Ă„' = F1 -'Ă–' = F2 -'Ăś' = F3 -'ä' = F4 -'ö' = F5 -'ĂĽ' = F6 -TALL_PLUS = FC 0C FB -'$' = FF - -@ Hiragana -'ă‚' = 01 -'ă„' = 02 -'ă†' = 03 -'ă' = 04 -'ăŠ' = 05 -'ă‹' = 06 -'ăŤ' = 07 -'ăŹ' = 08 -'ă‘' = 09 -'ă“' = 0A -'ă•' = 0B -'ă—' = 0C -'ă™' = 0D -'ă›' = 0E -'ăť' = 0F -'ăź' = 10 -'ăˇ' = 11 -'ă¤' = 12 -'ă¦' = 13 -'ă¨' = 14 -'ăŞ' = 15 -'ă«' = 16 -'ă¬' = 17 -'ă­' = 18 -'ă®' = 19 -'ăŻ' = 1A -'ă˛' = 1B -'ăµ' = 1C -'ă¸' = 1D -'ă»' = 1E -'ăľ' = 1F -'ăż' = 20 -'ă‚€' = 21 -'ă‚' = 22 -'ă‚‚' = 23 -'ă‚„' = 24 -'ゆ' = 25 -'ă‚' = 26 -'ら' = 27 -'り' = 28 -'ă‚‹' = 29 -'れ' = 2A -'ろ' = 2B -'わ' = 2C -'ă‚’' = 2D -'ă‚“' = 2E -'ă' = 2F -'ă' = 30 -'ă…' = 31 -'ă‡' = 32 -'ă‰' = 33 -'ă‚' = 34 -'ă‚…' = 35 -'ょ' = 36 -'ăŚ' = 37 -'ăŽ' = 38 -'ă' = 39 -'ă’' = 3A -'ă”' = 3B -'ă–' = 3C -'ă' = 3D -'ăš' = 3E -'ăś' = 3F -'ăž' = 40 -'ă ' = 41 -'ă˘' = 42 -'ăĄ' = 43 -'ă§' = 44 -'ă©' = 45 -'ă°' = 46 -'ăł' = 47 -'ă¶' = 48 -'ăą' = 49 -'ăĽ' = 4A -'ă±' = 4B -'ă´' = 4C -'ă·' = 4D -'ăş' = 4E -'ă˝' = 4F -'ăŁ' = 50 - -@ Katakana -'ア' = 51 -'イ' = 52 -'ウ' = 53 -'エ' = 54 -'オ' = 55 -'ă‚«' = 56 -'ă‚­' = 57 -'ク' = 58 -'ケ' = 59 -'コ' = 5A -'サ' = 5B -'ă‚·' = 5C -'ス' = 5D -'ă‚»' = 5E -'ă‚˝' = 5F -'タ' = 60 -'ă' = 61 -'ă„' = 62 -'ă†' = 63 -'ă' = 64 -'ăŠ' = 65 -'ă‹' = 66 -'ăŚ' = 67 -'ăŤ' = 68 -'ăŽ' = 69 -'ăŹ' = 6A -'ă’' = 6B -'ă•' = 6C -'ă' = 6D -'ă›' = 6E -'ăž' = 6F -'ăź' = 70 -'ă ' = 71 -'ăˇ' = 72 -'ă˘' = 73 -'ă¤' = 74 -'ă¦' = 75 -'ă¨' = 76 -'ă©' = 77 -'ăŞ' = 78 -'ă«' = 79 -'ă¬' = 7A -'ă­' = 7B -'ăŻ' = 7C -'ă˛' = 7D -'ăł' = 7E -'ァ' = 7F -'ィ' = 80 -'ゥ' = 81 -'ă‚§' = 82 -'ă‚©' = 83 -'ăŁ' = 84 -'ăĄ' = 85 -'ă§' = 86 -'ガ' = 87 -'ă‚®' = 88 -'ă‚°' = 89 -'ゲ' = 8A -'ă‚´' = 8B -'ă‚¶' = 8C -'ジ' = 8D -'ズ' = 8E -'ゼ' = 8F -'ゾ' = 90 -'ă€' = 91 -'ă‚' = 92 -'ă…' = 93 -'ă‡' = 94 -'ă‰' = 95 -'ă' = 96 -'ă“' = 97 -'ă–' = 98 -'ă™' = 99 -'ăś' = 9A -'ă‘' = 9B -'ă”' = 9C -'ă—' = 9D -'ăš' = 9E -'ăť' = 9F -'ă' = A0 - -@ Japanese punctuation -' ' = 00 -'ďĽ' = AB -'?' = AC -'。' = AD -'ăĽ' = AE -'⋯' = B0 - -STRING = FD - -@ string placeholders -PLAYER = FD 01 -STR_VAR_1 = FD 02 -STR_VAR_2 = FD 03 -STR_VAR_3 = FD 04 -KUN = FD 05 -RIVAL = FD 06 -@ version-dependent strings (originally made for Ruby/Sapphire differences) -@ Emerald uses the Sapphire strings (except for VERSION). -VERSION = FD 07 @ "EMERALD" -AQUA = FD 08 -MAGMA = FD 09 -ARCHIE = FD 0A -MAXIE = FD 0B -KYOGRE = FD 0C -GROUDON = FD 0D - -@ battle string placeholders - -B_BUFF1 = FD 00 -B_BUFF2 = FD 01 -B_COPY_VAR_1 = FD 02 -B_COPY_VAR_2 = FD 03 -B_COPY_VAR_3 = FD 04 -B_PLAYER_MON1_NAME = FD 05 -B_OPPONENT_MON1_NAME = FD 06 -B_PLAYER_MON2_NAME = FD 07 -B_OPPONENT_MON2_NAME = FD 08 -B_LINK_PLAYER_MON1_NAME = FD 09 -B_LINK_OPPONENT_MON1_NAME = FD 0A -B_LINK_PLAYER_MON2_NAME = FD 0B -B_LINK_OPPONENT_MON2_NAME = FD 0C -B_ATK_NAME_WITH_PREFIX_MON1 = FD 0D -B_ATK_PARTNER_NAME = FD 0E -B_ATK_NAME_WITH_PREFIX = FD 0F -B_DEF_NAME_WITH_PREFIX = FD 10 -B_EFF_NAME_WITH_PREFIX = FD 11 @ EFF = short for gEffectBattler -B_ACTIVE_NAME_WITH_PREFIX = FD 12 -B_SCR_ACTIVE_NAME_WITH_PREFIX = FD 13 -B_CURRENT_MOVE = FD 14 -B_LAST_MOVE = FD 15 -B_LAST_ITEM = FD 16 -B_LAST_ABILITY = FD 17 -B_ATK_ABILITY = FD 18 -B_DEF_ABILITY = FD 19 -B_SCR_ACTIVE_ABILITY = FD 1A -B_EFF_ABILITY = FD 1B -B_TRAINER1_CLASS = FD 1C -B_TRAINER1_NAME = FD 1D -B_LINK_PLAYER_NAME = FD 1E -B_LINK_PARTNER_NAME = FD 1F -B_LINK_OPPONENT1_NAME = FD 20 -B_LINK_OPPONENT2_NAME = FD 21 -B_LINK_SCR_TRAINER_NAME = FD 22 -B_PLAYER_NAME = FD 23 -B_TRAINER1_LOSE_TEXT = FD 24 -B_TRAINER1_WIN_TEXT = FD 25 -B_26 = FD 26 -B_PC_CREATOR_NAME = FD 27 -B_ATK_PREFIX1 = FD 28 -B_DEF_PREFIX1 = FD 29 -B_ATK_PREFIX2 = FD 2A -B_DEF_PREFIX2 = FD 2B -B_ATK_PREFIX3 = FD 2C -B_DEF_PREFIX3 = FD 2D -B_TRAINER2_CLASS = FD 2E -B_TRAINER2_NAME = FD 2F -B_TRAINER2_LOSE_TEXT = FD 30 -B_TRAINER2_WIN_TEXT = FD 31 -B_PARTNER_CLASS = FD 32 -B_PARTNER_NAME = FD 33 -B_BUFF3 = FD 34 - -@ indicates the end of a town/city name (before " TOWN" or " CITY") -NAME_END = FC 00 - -@ special 0xF7 character -SPECIAL_F7 = F7 - -@ more text functions - -COLOR = FC 01 @ use a color listed below right after -HIGHLIGHT = FC 02 @ same as fc 01 -SHADOW = FC 03 @ same as fc 01 -COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes -PALETTE = FC 05 @ used in credits -SIZE = FC 06 @ note that anything other than "SMALL" is invalid -UNKNOWN_7 = FC 07 -PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them -PAUSE_UNTIL_PRESS = FC 09 -WAIT_SE = FC 0A -PLAY_BGM = FC 0B -ESCAPE = FC 0C -SHIFT_TEXT = FC 0D -UNKNOWN_E = FC 0E -UNKNOWN_F = FC 0F -PLAY_SE = FC 10 -CLEAR = FC 11 -SKIP = FC 12 -CLEAR_TO = FC 13 -UNKNOWN_14 = FC 14 -JPN = FC 15 -ENG = FC 16 -PAUSE_MUSIC = FC 17 -RESUME_MUSIC = FC 18 - -@ colors - -TRANSPARENT = 00 -WHITE = 01 -DARK_GRAY = 02 -LIGHT_GRAY = 03 -RED = 04 -LIGHT_RED = 05 -GREEN = 06 -LIGHT_GREEN = 07 -BLUE = 08 -LIGHT_BLUE = 09 -@ these next colors can be set to anything arbitrary at runtime -@ usually though they'll have the textbox border colors as described below -DYNAMIC_COLOR1 = 0A @ white -DYNAMIC_COLOR2 = 0B @ white with a tinge of green -DYNAMIC_COLOR3 = 0C @ white 2 -DYNAMIC_COLOR4 = 0D @ aquamarine -DYNAMIC_COLOR5 = 0E @ blue-green -DYNAMIC_COLOR6 = 0F @ cerulean - -@ sound and music - -MUS_DUMMY = 00 00 -SE_USE_ITEM = 01 00 -SE_PC_LOGIN = 02 00 -SE_PC_OFF = 03 00 -SE_PC_ON = 04 00 -SE_SELECT = 05 00 -SE_WIN_OPEN = 06 00 -SE_WALL_HIT = 07 00 -SE_DOOR = 08 00 -SE_EXIT = 09 00 -SE_LEDGE = 0A 00 -SE_BIKE_BELL = 0B 00 -SE_NOT_EFFECTIVE = 0C 00 -SE_EFFECTIVE = 0D 00 -SE_SUPER_EFFECTIVE = 0E 00 -SE_BALL_OPEN = 0F 00 -SE_FAINT = 10 00 -SE_FLEE = 11 00 -SE_SLIDING_DOOR = 12 00 -SE_SHIP = 13 00 -SE_BANG = 14 00 -SE_PIN = 15 00 -SE_BOO = 16 00 -SE_BALL = 17 00 -SE_CONTEST_PLACE = 18 00 -SE_A = 19 00 -SE_I = 1A 00 -SE_U = 1B 00 -SE_E = 1C 00 -SE_O = 1D 00 -SE_N = 1E 00 -SE_SUCCESS = 1F 00 -SE_FAILURE = 20 00 -SE_EXP = 21 00 -SE_BIKE_HOP = 22 00 -SE_SWITCH = 23 00 -SE_CLICK = 24 00 -SE_FU_ZAKU = 25 00 -SE_CONTEST_CONDITION_LOSE = 26 00 -SE_LAVARIDGE_FALL_WARP = 27 00 -SE_ICE_STAIRS = 28 00 -SE_ICE_BREAK = 29 00 -SE_ICE_CRACK = 2A 00 -SE_FALL = 2B 00 -SE_UNLOCK = 2C 00 -SE_WARP_IN = 2D 00 -SE_WARP_OUT = 2E 00 -SE_REPEL = 2F 00 -SE_ROTATING_GATE = 30 00 -SE_TRUCK_MOVE = 31 00 -SE_TRUCK_STOP = 32 00 -SE_TRUCK_UNLOAD = 33 00 -SE_TRUCK_DOOR = 34 00 -SE_BERRY_BLENDER = 35 00 -SE_CARD = 36 00 -SE_SAVE = 37 00 -SE_BALL_BOUNCE_1 = 38 00 -SE_BALL_BOUNCE_2 = 39 00 -SE_BALL_BOUNCE_3 = 3A 00 -SE_BALL_BOUNCE_4 = 3B 00 -SE_BALL_TRADE = 3C 00 -SE_BALL_THROW = 3D 00 -SE_NOTE_C = 3E 00 -SE_NOTE_D = 3F 00 -SE_NOTE_E = 40 00 -SE_NOTE_F = 41 00 -SE_NOTE_G = 42 00 -SE_NOTE_A = 43 00 -SE_NOTE_B = 44 00 -SE_NOTE_C_HIGH = 45 00 -SE_PUDDLE = 46 00 -SE_BRIDGE_WALK = 47 00 -SE_ITEMFINDER = 48 00 -SE_DING_DONG = 49 00 -SE_BALLOON_RED = 4A 00 -SE_BALLOON_BLUE = 4B 00 -SE_BALLOON_YELLOW = 4C 00 -SE_BREAKABLE_DOOR = 4D 00 -SE_MUD_BALL = 4E 00 -SE_FIELD_POISON = 4F 00 -SE_ESCALATOR = 50 00 -SE_THUNDERSTORM = 51 00 -SE_THUNDERSTORM_STOP = 52 00 -SE_DOWNPOUR = 53 00 -SE_DOWNPOUR_STOP = 54 00 -SE_RAIN = 55 00 -SE_RAIN_STOP = 56 00 -SE_THUNDER = 57 00 -SE_THUNDER2 = 58 00 -SE_ELEVATOR = 59 00 -SE_LOW_HEALTH = 5A 00 -SE_EXP_MAX = 5B 00 -SE_ROULETTE_BALL = 5C 00 -SE_ROULETTE_BALL2 = 5D 00 -SE_TAILLOW_WING_FLAP = 5E 00 -SE_SHOP = 5F 00 -SE_CONTEST_HEART = 60 00 -SE_CONTEST_CURTAIN_RISE = 61 00 -SE_CONTEST_CURTAIN_FALL = 62 00 -SE_CONTEST_ICON_CHANGE = 63 00 -SE_CONTEST_ICON_CLEAR = 64 00 -SE_CONTEST_MONS_TURN = 65 00 -SE_SHINY = 66 00 -SE_INTRO_BLAST = 67 00 -SE_MUGSHOT = 68 00 -SE_APPLAUSE = 69 00 -SE_VEND = 6A 00 -SE_ORB = 6B 00 -SE_DEX_SCROLL = 6C 00 -SE_DEX_PAGE = 6D 00 -SE_POKENAV_ON = 6E 00 -SE_POKENAV_OFF = 6F 00 -SE_DEX_SEARCH = 70 00 -SE_EGG_HATCH = 71 00 -SE_BALL_TRAY_ENTER = 72 00 -SE_BALL_TRAY_BALL = 73 00 -SE_BALL_TRAY_EXIT = 74 00 -SE_GLASS_FLUTE = 75 00 -SE_M_THUNDERBOLT = 76 00 -SE_M_THUNDERBOLT2 = 77 00 -SE_M_HARDEN = 78 00 -SE_M_NIGHTMARE = 79 00 -SE_M_VITAL_THROW = 7A 00 -SE_M_VITAL_THROW2 = 7B 00 -SE_M_BUBBLE = 7C 00 -SE_M_BUBBLE2 = 7D 00 -SE_M_BUBBLE3 = 7E 00 -SE_M_RAIN_DANCE = 7F 00 -SE_M_CUT = 80 00 -SE_M_STRING_SHOT = 81 00 -SE_M_STRING_SHOT2 = 82 00 -SE_M_ROCK_THROW = 83 00 -SE_M_GUST = 84 00 -SE_M_GUST2 = 85 00 -SE_M_DOUBLE_SLAP = 86 00 -SE_M_DOUBLE_TEAM = 87 00 -SE_M_RAZOR_WIND = 88 00 -SE_M_ICY_WIND = 89 00 -SE_M_THUNDER_WAVE = 8A 00 -SE_M_COMET_PUNCH = 8B 00 -SE_M_MEGA_KICK = 8C 00 -SE_M_MEGA_KICK2 = 8D 00 -SE_M_CRABHAMMER = 8E 00 -SE_M_JUMP_KICK = 8F 00 -SE_M_FLAME_WHEEL = 90 00 -SE_M_FLAME_WHEEL2 = 91 00 -SE_M_FLAMETHROWER = 92 00 -SE_M_FIRE_PUNCH = 93 00 -SE_M_TOXIC = 94 00 -SE_M_SACRED_FIRE = 95 00 -SE_M_SACRED_FIRE2 = 96 00 -SE_M_EMBER = 97 00 -SE_M_TAKE_DOWN = 98 00 -SE_M_BLIZZARD = 99 00 -SE_M_BLIZZARD2 = 9A 00 -SE_M_SCRATCH = 9B 00 -SE_M_VICEGRIP = 9C 00 -SE_M_WING_ATTACK = 9D 00 -SE_M_FLY = 9E 00 -SE_M_SAND_ATTACK = 9F 00 -SE_M_RAZOR_WIND2 = A0 00 -SE_M_BITE = A1 00 -SE_M_HEADBUTT = A2 00 -SE_M_SURF = A3 00 -SE_M_HYDRO_PUMP = A4 00 -SE_M_WHIRLPOOL = A5 00 -SE_M_HORN_ATTACK = A6 00 -SE_M_TAIL_WHIP = A7 00 -SE_M_MIST = A8 00 -SE_M_POISON_POWDER = A9 00 -SE_M_BIND = AA 00 -SE_M_DRAGON_RAGE = AB 00 -SE_M_SING = AC 00 -SE_M_PERISH_SONG = AD 00 -SE_M_PAY_DAY = AE 00 -SE_M_DIG = AF 00 -SE_M_DIZZY_PUNCH = B0 00 -SE_M_SELF_DESTRUCT = B1 00 -SE_M_EXPLOSION = B2 00 -SE_M_ABSORB_2 = B3 00 -SE_M_ABSORB = B4 00 -SE_M_SCREECH = B5 00 -SE_M_BUBBLE_BEAM = B6 00 -SE_M_BUBBLE_BEAM2 = B7 00 -SE_M_SUPERSONIC = B8 00 -SE_M_BELLY_DRUM = B9 00 -SE_M_METRONOME = BA 00 -SE_M_BONEMERANG = BB 00 -SE_M_LICK = BC 00 -SE_M_PSYBEAM = BD 00 -SE_M_FAINT_ATTACK = BE 00 -SE_M_SWORDS_DANCE = BF 00 -SE_M_LEER = C0 00 -SE_M_SWAGGER = C1 00 -SE_M_SWAGGER2 = C2 00 -SE_M_HEAL_BELL = C3 00 -SE_M_CONFUSE_RAY = C4 00 -SE_M_SNORE = C5 00 -SE_M_BRICK_BREAK = C6 00 -SE_M_GIGA_DRAIN = C7 00 -SE_M_PSYBEAM2 = C8 00 -SE_M_SOLAR_BEAM = C9 00 -SE_M_PETAL_DANCE = CA 00 -SE_M_TELEPORT = CB 00 -SE_M_MINIMIZE = CC 00 -SE_M_SKETCH = CD 00 -SE_M_SWIFT = CE 00 -SE_M_REFLECT = CF 00 -SE_M_BARRIER = D0 00 -SE_M_DETECT = D1 00 -SE_M_LOCK_ON = D2 00 -SE_M_MOONLIGHT = D3 00 -SE_M_CHARM = D4 00 -SE_M_CHARGE = D5 00 -SE_M_STRENGTH = D6 00 -SE_M_HYPER_BEAM = D7 00 -SE_M_WATERFALL = D8 00 -SE_M_REVERSAL = D9 00 -SE_M_ACID_ARMOR = DA 00 -SE_M_SANDSTORM = DB 00 -SE_M_TRI_ATTACK = DC 00 -SE_M_TRI_ATTACK2 = DD 00 -SE_M_ENCORE = DE 00 -SE_M_ENCORE2 = DF 00 -SE_M_BATON_PASS = E0 00 -SE_M_MILK_DRINK = E1 00 -SE_M_ATTRACT = E2 00 -SE_M_ATTRACT2 = E3 00 -SE_M_MORNING_SUN = E4 00 -SE_M_FLATTER = E5 00 -SE_M_SAND_TOMB = E6 00 -SE_M_GRASSWHISTLE = E7 00 -SE_M_SPIT_UP = E8 00 -SE_M_DIVE = E9 00 -SE_M_EARTHQUAKE = EA 00 -SE_M_TWISTER = EB 00 -SE_M_SWEET_SCENT = EC 00 -SE_M_YAWN = ED 00 -SE_M_SKY_UPPERCUT = EE 00 -SE_M_STAT_INCREASE = EF 00 -SE_M_HEAT_WAVE = F0 00 -SE_M_UPROAR = F1 00 -SE_M_HAIL = F2 00 -SE_M_COSMIC_POWER = F3 00 -SE_M_TEETER_DANCE = F4 00 -SE_M_STAT_DECREASE = F5 00 -SE_M_HAZE = F6 00 -SE_M_HYPER_BEAM2 = F7 00 -SE_RG_DOOR = F8 00 -SE_RG_CARD_FLIP = F9 00 -SE_RG_CARD_FLIPPING = FA 00 -SE_RG_CARD_OPEN = FB 00 -SE_RG_BAG_CURSOR = FC 00 -SE_RG_BAG_POCKET = FD 00 -SE_RG_BALL_CLICK = FE 00 -SE_RG_SHOP = FF 00 -SE_RG_SS_ANNE_HORN = 00 01 -SE_RG_HELP_OPEN = 01 01 -SE_RG_HELP_CLOSE = 02 01 -SE_RG_HELP_ERROR = 03 01 -SE_RG_DEOXYS_MOVE = 04 01 -SE_RG_POKE_JUMP_SUCCESS = 05 01 -SE_RG_POKE_JUMP_FAILURE = 06 01 -SE_POKENAV_CALL = 07 01 -SE_POKENAV_HANG_UP = 08 01 -SE_ARENA_TIMEUP1 = 09 01 -SE_ARENA_TIMEUP2 = 0A 01 -SE_PIKE_CURTAIN_CLOSE = 0B 01 -SE_PIKE_CURTAIN_OPEN = 0C 01 -SE_SUDOWOODO_SHAKE = 0D 01 -MUS_LITTLEROOT_TEST = 5E 01 -MUS_GSC_ROUTE38 = 5F 01 -MUS_CAUGHT = 60 01 -MUS_VICTORY_WILD = 61 01 -MUS_VICTORY_GYM_LEADER = 62 01 -MUS_VICTORY_LEAGUE = 63 01 -MUS_C_COMM_CENTER = 64 01 -MUS_GSC_PEWTER = 65 01 -MUS_C_VS_LEGEND_BEAST = 66 01 -MUS_ROUTE101 = 67 01 -MUS_ROUTE110 = 68 01 -MUS_ROUTE120 = 69 01 -MUS_PETALBURG = 6A 01 -MUS_OLDALE = 6B 01 -MUS_GYM = 6C 01 -MUS_SURF = 6D 01 -MUS_PETALBURG_WOODS = 6E 01 -MUS_LEVEL_UP = 6F 01 -MUS_HEAL = 70 01 -MUS_OBTAIN_BADGE = 71 01 -MUS_OBTAIN_ITEM = 72 01 -MUS_EVOLVED = 73 01 -MUS_OBTAIN_TMHM = 74 01 -MUS_LILYCOVE_MUSEUM = 75 01 -MUS_ROUTE122 = 76 01 -MUS_OCEANIC_MUSEUM = 77 01 -MUS_EVOLUTION_INTRO = 78 01 -MUS_EVOLUTION = 79 01 -MUS_MOVE_DELETED = 7A 01 -MUS_ENCOUNTER_GIRL = 7B 01 -MUS_ENCOUNTER_MALE = 7C 01 -MUS_ABANDONED_SHIP = 7D 01 -MUS_FORTREE = 7E 01 -MUS_BIRCH_LAB = 7F 01 -MUS_B_TOWER_RS = 80 01 -MUS_ENCOUNTER_SWIMMER = 81 01 -MUS_CAVE_OF_ORIGIN = 82 01 -MUS_OBTAIN_BERRY = 83 01 -MUS_AWAKEN_LEGEND = 84 01 -MUS_SLOTS_JACKPOT = 85 01 -MUS_SLOTS_WIN = 86 01 -MUS_TOO_BAD = 87 01 -MUS_ROULETTE = 88 01 -MUS_LINK_CONTEST_P1 = 89 01 -MUS_LINK_CONTEST_P2 = 8A 01 -MUS_LINK_CONTEST_P3 = 8B 01 -MUS_LINK_CONTEST_P4 = 8C 01 -MUS_ENCOUNTER_RICH = 8D 01 -MUS_VERDANTURF = 8E 01 -MUS_RUSTBORO = 8F 01 -MUS_POKE_CENTER = 90 01 -MUS_ROUTE104 = 91 01 -MUS_ROUTE119 = 92 01 -MUS_CYCLING = 93 01 -MUS_POKE_MART = 94 01 -MUS_LITTLEROOT = 95 01 -MUS_MT_CHIMNEY = 96 01 -MUS_ENCOUNTER_FEMALE = 97 01 -MUS_LILYCOVE = 98 01 -MUS_ROUTE111 = 99 01 -MUS_HELP = 9A 01 -MUS_UNDERWATER = 9B 01 -MUS_VICTORY_TRAINER = 9C 01 -MUS_TITLE = 9D 01 -MUS_INTRO = 9E 01 -MUS_ENCOUNTER_MAY = 9F 01 -MUS_ENCOUNTER_INTENSE = A0 01 -MUS_ENCOUNTER_COOL = A1 01 -MUS_ROUTE113 = A2 01 -MUS_ENCOUNTER_AQUA = A3 01 -MUS_FOLLOW_ME = A4 01 -MUS_ENCOUNTER_BRENDAN = A5 01 -MUS_EVER_GRANDE = A6 01 -MUS_ENCOUNTER_SUSPICIOUS = A7 01 -MUS_VICTORY_AQUA_MAGMA = A8 01 -MUS_CABLE_CAR = A9 01 -MUS_GAME_CORNER = AA 01 -MUS_DEWFORD = AB 01 -MUS_SAFARI_ZONE = AC 01 -MUS_VICTORY_ROAD = AD 01 -MUS_AQUA_MAGMA_HIDEOUT = AE 01 -MUS_SAILING = AF 01 -MUS_MT_PYRE = B0 01 -MUS_SLATEPORT = B1 01 -MUS_MT_PYRE_EXTERIOR = B2 01 -MUS_SCHOOL = B3 01 -MUS_HALL_OF_FAME = B4 01 -MUS_FALLARBOR = B5 01 -MUS_SEALED_CHAMBER = B6 01 -MUS_CONTEST_WINNER = B7 01 -MUS_CONTEST = B8 01 -MUS_ENCOUNTER_MAGMA = B9 01 -MUS_INTRO_BATTLE = BA 01 -MUS_ABNORMAL_WEATHER = BB 01 -MUS_WEATHER_GROUDON = BC 01 -MUS_SOOTOPOLIS = BD 01 -MUS_CONTEST_RESULTS = BE 01 -MUS_HALL_OF_FAME_ROOM = BF 01 -MUS_TRICK_HOUSE = C0 01 -MUS_ENCOUNTER_TWINS = C1 01 -MUS_ENCOUNTER_ELITE_FOUR = C2 01 -MUS_ENCOUNTER_HIKER = C3 01 -MUS_CONTEST_LOBBY = C4 01 -MUS_ENCOUNTER_INTERVIEWER = C5 01 -MUS_ENCOUNTER_CHAMPION = C6 01 -MUS_CREDITS = C7 01 -MUS_END = C8 01 -MUS_B_FRONTIER = C9 01 -MUS_B_ARENA = CA 01 -MUS_OBTAIN_B_POINTS = CB 01 -MUS_REGISTER_MATCH_CALL = CC 01 -MUS_B_PYRAMID = CD 01 -MUS_B_PYRAMID_TOP = CE 01 -MUS_B_PALACE = CF 01 -MUS_RAYQUAZA_APPEARS = D0 01 -MUS_B_TOWER = D1 01 -MUS_OBTAIN_SYMBOL = D2 01 -MUS_B_DOME = D3 01 -MUS_B_PIKE = D4 01 -MUS_B_FACTORY = D5 01 -MUS_VS_RAYQUAZA = D6 01 -MUS_VS_FRONTIER_BRAIN = D7 01 -MUS_VS_MEW = D8 01 -MUS_B_DOME_LOBBY = D9 01 -MUS_VS_WILD = DA 01 -MUS_VS_AQUA_MAGMA = DB 01 -MUS_VS_TRAINER = DC 01 -MUS_VS_GYM_LEADER = DD 01 -MUS_VS_CHAMPION = DE 01 -MUS_VS_REGI = DF 01 -MUS_VS_KYOGRE_GROUDON = E0 01 -MUS_VS_RIVAL = E1 01 -MUS_VS_ELITE_FOUR = E2 01 -MUS_VS_AQUA_MAGMA_LEADER = E3 01 -MUS_RG_FOLLOW_ME = E4 01 -MUS_RG_GAME_CORNER = E5 01 -MUS_RG_ROCKET_HIDEOUT = E6 01 -MUS_RG_GYM = E7 01 -MUS_RG_JIGGLYPUFF = E8 01 -MUS_RG_INTRO_FIGHT = E9 01 -MUS_RG_TITLE = EA 01 -MUS_RG_CINNABAR = EB 01 -MUS_RG_LAVENDER = EC 01 -MUS_RG_HEAL = ED 01 -MUS_RG_CYCLING = EE 01 -MUS_RG_ENCOUNTER_ROCKET = EF 01 -MUS_RG_ENCOUNTER_GIRL = F0 01 -MUS_RG_ENCOUNTER_BOY = F1 01 -MUS_RG_HALL_OF_FAME = F2 01 -MUS_RG_VIRIDIAN_FOREST = F3 01 -MUS_RG_MT_MOON = F4 01 -MUS_RG_POKE_MANSION = F5 01 -MUS_RG_CREDITS = F6 01 -MUS_RG_ROUTE1 = F7 01 -MUS_RG_ROUTE24 = F8 01 -MUS_RG_ROUTE3 = F9 01 -MUS_RG_ROUTE11 = FA 01 -MUS_RG_VICTORY_ROAD = FB 01 -MUS_RG_VS_GYM_LEADER = FC 01 -MUS_RG_VS_TRAINER = FD 01 -MUS_RG_VS_WILD = FE 01 -MUS_RG_VS_CHAMPION = FF 01 -MUS_RG_PALLET = 00 02 -MUS_RG_OAK_LAB = 01 02 -MUS_RG_OAK = 02 02 -MUS_RG_POKE_CENTER = 03 02 -MUS_RG_SS_ANNE = 04 02 -MUS_RG_SURF = 05 02 -MUS_RG_POKE_TOWER = 06 02 -MUS_RG_SILPH = 07 02 -MUS_RG_FUCHSIA = 08 02 -MUS_RG_CELADON = 09 02 -MUS_RG_VICTORY_TRAINER = 0A 02 -MUS_RG_VICTORY_WILD = 0B 02 -MUS_RG_VICTORY_GYM_LEADER = 0C 02 -MUS_RG_VERMILLION = 0D 02 -MUS_RG_PEWTER = 0E 02 -MUS_RG_ENCOUNTER_RIVAL = 0F 02 -MUS_RG_RIVAL_EXIT = 10 02 -MUS_RG_DEX_RATING = 11 02 -MUS_RG_OBTAIN_KEY_ITEM = 12 02 -MUS_RG_CAUGHT_INTRO = 13 02 -MUS_RG_PHOTO = 14 02 -MUS_RG_GAME_FREAK = 15 02 -MUS_RG_CAUGHT = 16 02 -MUS_RG_NEW_GAME_INSTRUCT = 17 02 -MUS_RG_NEW_GAME_INTRO = 18 02 -MUS_RG_NEW_GAME_EXIT = 19 02 -MUS_RG_POKE_JUMP = 1A 02 -MUS_RG_UNION_ROOM = 1B 02 -MUS_RG_NET_CENTER = 1C 02 -MUS_RG_MYSTERY_GIFT = 1D 02 -MUS_RG_BERRY_PICK = 1E 02 -MUS_RG_SEVII_CAVE = 1F 02 -MUS_RG_TEACHY_TV_SHOW = 20 02 -MUS_RG_SEVII_ROUTE = 21 02 -MUS_RG_SEVII_DUNGEON = 22 02 -MUS_RG_SEVII_123 = 23 02 -MUS_RG_SEVII_45 = 24 02 -MUS_RG_SEVII_67 = 25 02 -MUS_RG_POKE_FLUTE = 26 02 -MUS_RG_VS_DEOXYS = 27 02 -MUS_RG_VS_MEWTWO = 28 02 -MUS_RG_VS_LEGEND = 29 02 -MUS_RG_ENCOUNTER_GYM_LEADER = 2A 02 -MUS_RG_ENCOUNTER_DEOXYS = 2B 02 -MUS_RG_TRAINER_TOWER = 2C 02 -MUS_RG_SLOW_PALLET = 2D 02 -MUS_RG_TEACHY_TV_MENU = 2E 02 -PH_TRAP_BLEND = 2F 02 -PH_TRAP_HELD = 30 02 -PH_TRAP_SOLO = 31 02 -PH_FACE_BLEND = 32 02 -PH_FACE_HELD = 33 02 -PH_FACE_SOLO = 34 02 -PH_CLOTH_BLEND = 35 02 -PH_CLOTH_HELD = 36 02 -PH_CLOTH_SOLO = 37 02 -PH_DRESS_BLEND = 38 02 -PH_DRESS_HELD = 39 02 -PH_DRESS_SOLO = 3A 02 -PH_FLEECE_BLEND = 3B 02 -PH_FLEECE_HELD = 3C 02 -PH_FLEECE_SOLO = 3D 02 -PH_KIT_BLEND = 3E 02 -PH_KIT_HELD = 3F 02 -PH_KIT_SOLO = 40 02 -PH_PRICE_BLEND = 41 02 -PH_PRICE_HELD = 42 02 -PH_PRICE_SOLO = 43 02 -PH_LOT_BLEND = 44 02 -PH_LOT_HELD = 45 02 -PH_LOT_SOLO = 46 02 -PH_GOAT_BLEND = 47 02 -PH_GOAT_HELD = 48 02 -PH_GOAT_SOLO = 49 02 -PH_THOUGHT_BLEND = 4A 02 -PH_THOUGHT_HELD = 4B 02 -PH_THOUGHT_SOLO = 4C 02 -PH_CHOICE_BLEND = 4D 02 -PH_CHOICE_HELD = 4E 02 -PH_CHOICE_SOLO = 4F 02 -PH_MOUTH_BLEND = 50 02 -PH_MOUTH_HELD = 51 02 -PH_MOUTH_SOLO = 52 02 -PH_FOOT_BLEND = 53 02 -PH_FOOT_HELD = 54 02 -PH_FOOT_SOLO = 55 02 -PH_GOOSE_BLEND = 56 02 -PH_GOOSE_HELD = 57 02 -PH_GOOSE_SOLO = 58 02 -PH_STRUT_BLEND = 59 02 -PH_STRUT_HELD = 5A 02 -PH_STRUT_SOLO = 5B 02 -PH_CURE_BLEND = 5C 02 -PH_CURE_HELD = 5D 02 -PH_CURE_SOLO = 5E 02 -PH_NURSE_BLEND = 5F 02 -PH_NURSE_HELD = 60 02 -PH_NURSE_SOLO = 61 02 - -A_BUTTON = F8 00 -B_BUTTON = F8 01 -DPAD_UPDOWN = F8 0A -DPAD_NONE = F8 0C - -UP_ARROW_2 = F9 00 -DOWN_ARROW_2 = F9 01 -LEFT_ARROW_2 = F9 02 -RIGHT_ARROW_2 = F9 03 -PLUS = F9 04 -LV_2 = F9 05 -PP = F9 06 -ID = F9 07 -NO = F9 08 -UNDERSCORE = F9 09 -CIRCLE_1 = F9 0A -CIRCLE_2 = F9 0B -CIRCLE_3 = F9 0C -CIRCLE_4 = F9 0D -CIRCLE_5 = F9 0E -CIRCLE_6 = F9 0F -CIRCLE_7 = F9 10 -CIRCLE_8 = F9 11 -CIRCLE_9 = F9 12 -ROUND_LEFT_PAREN = F9 13 -ROUND_RIGHT_PAREN = F9 14 -CIRCLE_DOT = F9 15 -TRIANGLE = F9 16 -BIG_MULT_X = F9 17 - -EMOJI_UNDERSCORE = F9 D0 -EMOJI_PIPE = F9 D1 -EMOJI_HIGHBAR = F9 D2 -EMOJI_TILDE = F9 D3 -EMOJI_LEFT_PAREN = F9 D4 -EMOJI_RIGHT_PAREN = F9 D5 -EMOJI_UNION = F9 D6 @ ⊂ -EMOJI_GREATER_THAN = F9 D7 -EMOJI_LEFT_EYE = F9 D8 -EMOJI_RIGHT_EYE = F9 D9 -EMOJI_AT = F9 DA -EMOJI_SEMICOLON = F9 DB -EMOJI_PLUS = F9 DC -EMOJI_MINUS = F9 DD -EMOJI_EQUALS = F9 DE -EMOJI_SPIRAL = F9 DF -EMOJI_TONGUE = F9 E0 -EMOJI_TRIANGLE_OUTLINE = F9 E1 -EMOJI_ACUTE = F9 E2 -EMOJI_GRAVE = F9 E3 -EMOJI_CIRCLE = F9 E4 -EMOJI_TRIANGLE = F9 E5 -EMOJI_SQUARE = F9 E6 -EMOJI_HEART = F9 E7 -EMOJI_MOON = F9 E8 -EMOJI_NOTE = F9 E9 -EMOJI_BALL = F9 EA -EMOJI_BOLT = F9 EB -EMOJI_LEAF = F9 EC -EMOJI_FIRE = F9 ED -EMOJI_WATER = F9 EE -EMOJI_LEFT_FIST = F9 EF -EMOJI_RIGHT_FIST = F9 F0 -EMOJI_BIGWHEEL = F9 F1 -EMOJI_SMALLWHEEL = F9 F2 -EMOJI_SPHERE = F9 F3 -EMOJI_IRRITATED = F9 F4 -EMOJI_MISCHIEVOUS = F9 F5 -EMOJI_HAPPY = F9 F6 -EMOJI_ANGRY = F9 F7 -EMOJI_SURPRISED = F9 F8 -EMOJI_BIGSMILE = F9 F9 -EMOJI_EVIL = F9 FA -EMOJI_TIRED = F9 FB -EMOJI_NEUTRAL = F9 FC -EMOJI_SHOCKED = F9 FD -EMOJI_BIGANGER = F9 FE - -'\l' = FA @ scroll up window text -'\p' = FB @ new paragraph -'\n' = FE @ new line diff --git a/berry_fix/data/data.s b/berry_fix/data/data.s deleted file mode 100644 index dbb86b13ba5d..000000000000 --- a/berry_fix/data/data.s +++ /dev/null @@ -1,4 +0,0 @@ - .section .rodata - -_data_2f0:: - .incbin "data/payload.gba.lz" diff --git a/berry_fix/ld_script.sed b/berry_fix/ld_script.sed deleted file mode 100644 index b91542b6f8e3..000000000000 --- a/berry_fix/ld_script.sed +++ /dev/null @@ -1,14 +0,0 @@ -// { - r sym_ewram.ld - d -} - -// { - r sym_bss.ld - d -} - -// { - r sym_common.ld - d -} diff --git a/berry_fix/ld_script.txt b/berry_fix/ld_script.txt deleted file mode 100644 index 2edeaef7cb9d..000000000000 --- a/berry_fix/ld_script.txt +++ /dev/null @@ -1,31 +0,0 @@ -ENTRY(_start) - -SECTIONS { - . = 0x2000000; - - .text : - ALIGN(4) - { - asm/loader.o(.text); - } =0 - - . += 0x100; - .rodata : - ALIGN(4) - { - data/data.o(.rodata); - } =0 - - . = 0x2010000; - - ewram (NOLOAD) : - ALIGN(4) - { - gCode = .; - } - - /DISCARD/ : - { - *(*); - } -} diff --git a/berry_fix/payload/Makefile b/berry_fix/payload/Makefile deleted file mode 100644 index 2779c43ba87c..000000000000 --- a/berry_fix/payload/Makefile +++ /dev/null @@ -1,209 +0,0 @@ -TOOLCHAIN := $(DEVKITARM) -COMPARE ?= 0 - -# 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 -endif - -PREFIX := arm-none-eabi- -OBJCOPY := $(PREFIX)objcopy -AS := $(PREFIX)as -LD := $(PREFIX)ld - -# note: the makefile must be set up so MODERNCC is never called -# if MODERN=0 -MODERNCC := $(PREFIX)gcc - -ifeq ($(OS),Windows_NT) -EXE := .exe -else -EXE := -endif - -# use arm-none-eabi-cpp for macOS -# as macOS's default compiler is clang -# and clang's preprocessor will warn on \u -# when preprocessing asm files, expecting a unicode literal -# we can't unconditionally use arm-none-eabi-cpp -# as installations which install binutils-arm-none-eabi -# don't come with it -ifneq ($(MODERN),1) - ifeq ($(shell uname -s),Darwin) - CPP := $(PREFIX)cpp - else - CPP := $(CC) -E - endif -else - CPP := $(PREFIX)cpp -endif - -SHELL := /bin/bash -o pipefail - -CPPFLAGS := -I ../../tools/agbcc/include -I ../../tools/agbcc -iquote include -nostdinc -undef - -ROM := payload.gba -OBJ_DIR := build -CC1 := ../../tools/agbcc/bin/agbcc$(EXE) -override CC1FLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm - - -ELF = $(ROM:.gba=.elf) -MAP = $(ROM:.gba=.map) - -C_SUBDIR = src -ASM_SUBDIR = asm -DATA_ASM_SUBDIR = data - -C_BUILDDIR = $(OBJ_DIR)/$(C_SUBDIR) -ASM_BUILDDIR = $(OBJ_DIR)/$(ASM_SUBDIR) -DATA_ASM_BUILDDIR = $(OBJ_DIR)/$(DATA_ASM_SUBDIR) - -ASFLAGS := -mcpu=arm7tdmi - -LDFLAGS = -Map ../$(MAP) - -LIB := -L ../../../tools/agbcc/lib -lgcc - -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) - -# Clear the default suffixes -.SUFFIXES: -# Don't delete intermediate files -.SECONDARY: -# 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 - -C_SRCS := $(wildcard $(C_SUBDIR)/*.c $(C_SUBDIR)/*/*.c $(C_SUBDIR)/*/*/*.c) -C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS)) - -ASM_SRCS := $(wildcard $(ASM_SUBDIR)/*.s) -ASM_OBJS := $(patsubst $(ASM_SUBDIR)/%.s,$(ASM_BUILDDIR)/%.o,$(ASM_SRCS)) - -DATA_ASM_SRCS := $(wildcard $(DATA_ASM_SUBDIR)/*.s) -DATA_ASM_OBJS := $(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o,$(DATA_ASM_SRCS)) - -SONG_SRCS := $(wildcard $(SONG_SUBDIR)/*.s) -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) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS) -# OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS)) - -SUBDIRS := $(sort $(dir $(OBJS))) - -$(shell mkdir -p $(SUBDIRS)) - -$(C_BUILDDIR)/siirtc.o: CC1FLAGS := -mthumb-interwork -$(C_BUILDDIR)/agb_flash.o: CC1FLAGS := -O1 -mthumb-interwork -$(C_BUILDDIR)/agb_flash_1m.o: CC1FLAGS := -O1 -mthumb-interwork -$(C_BUILDDIR)/agb_flash_mx.o: CC1FLAGS := -O1 -mthumb-interwork -$(C_BUILDDIR)/agb_flash_le.o: CC1FLAGS := -O1 -mthumb-interwork - -all: rom - @: - -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: ; @$(MAKE) COMPARE=1 - -clean: tidy - rm -f sound/direct_sound_samples/*.bin - rm -f $(SONG_OBJS) $(MID_OBJS) $(MID_SUBDIR)/*.s - find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} + - -tidy: - rm -f $(ROM) $(ELF) $(MAP) - rm -r build/* - -%.s: ; -%.png: ; -%.pal: ; -%.aif: ; - -%.1bpp: %.png ; $(GFX) $< $@ -%.4bpp: %.png ; $(GFX) $< $@ -%.8bpp: %.png ; $(GFX) $< $@ -%.gbapal: %.pal ; $(GFX) $< $@ -%.gbapal: %.png ; $(GFX) $< $@ -%.lz: % ; $(GFX) $< $@ -%.rl: % ; $(GFX) $< $@ - - -ifeq ($(NODEP),1) -$(C_BUILDDIR)/%.o: c_dep := -else -$(C_BUILDDIR)/%.o: c_dep = $(shell $(SCANINC) -I include $(C_SUBDIR)/$*.c) -endif - -$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep) - @$(CPP) $(CPPFLAGS) $< -o $(C_BUILDDIR)/$*.i - @$(PREPROC) $(C_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CC1FLAGS) -o $(C_BUILDDIR)/$*.s - @echo -e ".text\n\t.align\t2, 0\n" >> $(C_BUILDDIR)/$*.s - $(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s - -ifeq ($(NODEP),1) -$(ASM_BUILDDIR)/%.o: asm_dep := -else -$(ASM_BUILDDIR)/%.o: asm_dep = $(shell $(SCANINC) $(ASM_SUBDIR)/$*.s) -endif - -$(ASM_BUILDDIR)/%.o: $(ASM_SUBDIR)/%.s $$(asm_dep) - $(AS) $(ASFLAGS) -o $@ $< - -ifeq ($(NODEP),1) -$(DATA_ASM_BUILDDIR)/%.o: data_dep := -else -$(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s) -endif - -$(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep) - $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ - -$(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s - $(AS) $(ASFLAGS) -I sound -o $@ $< - -$(OBJ_DIR)/sym_bss.ld: sym_bss.txt - $(RAMSCRGEN) .bss $< ENGLISH > $@ - -$(OBJ_DIR)/sym_common.ld: sym_common.txt $(C_OBJS) $(wildcard common_syms/*.txt) - $(RAMSCRGEN) COMMON $< ENGLISH -c $(C_BUILDDIR),common_syms > $@ - -$(OBJ_DIR)/sym_ewram.ld: sym_ewram.txt - $(RAMSCRGEN) ewram_data $< ENGLISH > $@ - -$(OBJ_DIR)/ld_script.ld: ld_script.txt $(OBJ_DIR)/sym_bss.ld $(OBJ_DIR)/sym_common.ld $(OBJ_DIR)/sym_ewram.ld - cd $(OBJ_DIR) && sed -f ../../ld_script.sed ../$< | sed "s#tools/#../tools/#g" > ld_script.ld - -$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS) - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../$@ $(LIB) - -$(ROM): $(ELF) - $(OBJCOPY) -O binary $< $@ - diff --git a/berry_fix/payload/asm/crt0.s b/berry_fix/payload/asm/crt0.s deleted file mode 100644 index 2bca006365b2..000000000000 --- a/berry_fix/payload/asm/crt0.s +++ /dev/null @@ -1,82 +0,0 @@ - .include "asm/macros/function.inc" - .include "constants/gba_constants.inc" - - .syntax unified - - .text - - .arm - .align 2, 0 - .global Init -Init: - mov r0, #PSR_IRQ_MODE - msr cpsr_cf, r0 - ldr sp, sp_irq - mov r0, #PSR_SYS_MODE - msr cpsr_cf, r0 - ldr sp, sp_sys - ldr r1, =INTR_VECTOR - ldr r0, =IntrMain - str r0, [r1] - ldr r1, =AgbMain + 1 - mov lr, pc - bx r1 - b Init - - .align 2, 0 -sp_sys: .word IWRAM_END - 0x100 -sp_irq: .word IWRAM_END - 0x60 - - .pool - .size Init, .-Init - - .arm - .align 2, 0 - .global IntrMain -IntrMain: @ 0x2010048 - mov ip, #REG_BASE - add r3, ip, #OFFSET_REG_IE - ldr r2, [r3] - and r1, r2, r2, lsr #16 - mov r2, #0 - ands r0, r1, #0x2000 - strbne r0, [r3, #-0x17c] -_02010064: - bne _02010064 - ands r0, r1, #0xc0 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #1 - strhne r0, [ip, #-8] - bne _020100DC - add r2, r2, #4 - ands r0, r1, #2 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #4 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #0x100 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #0x200 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #0x400 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #0x800 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #0x1000 - bne _020100DC - add r2, r2, #4 - ands r0, r1, #8 -_020100DC: - strh r0, [r3, #2] - ldr r1, =gIntrTable - add r1, r1, r2 - ldr r0, [r1] - bx r0 - .pool - .size IntrMain, .-IntrMain diff --git a/berry_fix/payload/asm/libagbsyscall.s b/berry_fix/payload/asm/libagbsyscall.s deleted file mode 100644 index f13d08d76f40..000000000000 --- a/berry_fix/payload/asm/libagbsyscall.s +++ /dev/null @@ -1,46 +0,0 @@ - .include "asm/macros/function.inc" - .include "constants/gba_constants.inc" - - .syntax unified - - .text - - thumb_func_start CpuSet -CpuSet: - svc 0xB - bx lr - thumb_func_end CpuSet - - thumb_func_start Div -Div: - svc 0x6 - bx lr - thumb_func_end Div - - thumb_func_start Mod -Mod: - svc 0x6 - adds r0, r1, 0 - bx lr - thumb_func_end Mod - - thumb_func_start LZ77UnCompVram -LZ77UnCompVram: - svc 0x12 - bx lr - thumb_func_end LZ77UnCompVram - - thumb_func_start RegisterRamReset -RegisterRamReset: - svc 0x1 - bx lr - thumb_func_end RegisterRamReset - - thumb_func_start VBlankIntrWait -VBlankIntrWait: - movs r2, 0 - svc 0x5 - bx lr - thumb_func_end VBlankIntrWait - - .align 2, 0 @ Don't pad with nop. diff --git a/berry_fix/payload/asm/macros/function.inc b/berry_fix/payload/asm/macros/function.inc deleted file mode 100644 index 67fb373a8002..000000000000 --- a/berry_fix/payload/asm/macros/function.inc +++ /dev/null @@ -1,29 +0,0 @@ - .macro arm_func_start name - .align 2, 0 - .global \name - .arm - .type \name, function - .endm - - .macro arm_func_end name - .size \name, .-\name - .endm - - .macro thumb_func_start name - .align 2, 0 - .global \name - .thumb - .thumb_func - .type \name, function - .endm - - .macro non_word_aligned_thumb_func_start name - .global \name - .thumb - .thumb_func - .type \name, function - .endm - - .macro thumb_func_end name - .size \name, .-\name - .endm diff --git a/berry_fix/payload/charmap.txt b/berry_fix/payload/charmap.txt deleted file mode 100644 index 1c143ada4f8d..000000000000 --- a/berry_fix/payload/charmap.txt +++ /dev/null @@ -1,1067 +0,0 @@ -' ' = 00 -'Ă€' = 01 -'Ă' = 02 -'Ă‚' = 03 -'Ç' = 04 -'Ă' = 05 -'É' = 06 -'ĂŠ' = 07 -'Ă‹' = 08 -'ĂŚ' = 09 -'ĂŽ' = 0B -'ĂŹ' = 0C -'Ă’' = 0D -'Ă“' = 0E -'Ă”' = 0F -'Ĺ’' = 10 -'Ă™' = 11 -'Ăš' = 12 -'Ă›' = 13 -'Ă‘' = 14 -'Ăź' = 15 -'Ă ' = 16 -'á' = 17 -'ç' = 19 -'è' = 1A -'Ă©' = 1B -'ĂŞ' = 1C -'Ă«' = 1D -'ì' = 1E -'Ă®' = 20 -'ĂŻ' = 21 -'ò' = 22 -'Ăł' = 23 -'Ă´' = 24 -'Ĺ“' = 25 -'Ăą' = 26 -'Ăş' = 27 -'Ă»' = 28 -'ñ' = 29 -'Âş' = 2A -'ÂŞ' = 2B -SUPER_ER = 2C -'&' = 2D -'+' = 2E -LV = 34 -'=' = 35 -';' = 36 -'Âż' = 51 -'¡' = 52 -PK = 53 -PKMN = 53 54 -POKEBLOCK = 55 56 57 58 59 -'ĂŤ' = 5A -'%' = 5B -'(' = 5C -')' = 5D -'â' = 68 -'Ă­' = 6F -UNK_SPACER = 77 -UP_ARROW = 79 -DOWN_ARROW = 7A -LEFT_ARROW = 7B -RIGHT_ARROW = 7C -'0' = A1 -'1' = A2 -'2' = A3 -'3' = A4 -'4' = A5 -'5' = A6 -'6' = A7 -'7' = A8 -'8' = A9 -'9' = AA -'!' = AB -'?' = AC -'.' = AD -'-' = AE -'·' = AF -'…' = B0 -'“' = B1 -'”' = B2 -'â€' = B3 -'’' = B4 -'♂' = B5 -'♀' = B6 -'ÂĄ' = B7 -',' = B8 -'Ă—' = B9 -'/' = BA -'A' = BB -'B' = BC -'C' = BD -'D' = BE -'E' = BF -'F' = C0 -'G' = C1 -'H' = C2 -'I' = C3 -'J' = C4 -'K' = C5 -'L' = C6 -'M' = C7 -'N' = C8 -'O' = C9 -'P' = CA -'Q' = CB -'R' = CC -'S' = CD -'T' = CE -'U' = CF -'V' = D0 -'W' = D1 -'X' = D2 -'Y' = D3 -'Z' = D4 -'a' = D5 -'b' = D6 -'c' = D7 -'d' = D8 -'e' = D9 -'f' = DA -'g' = DB -'h' = DC -'i' = DD -'j' = DE -'k' = DF -'l' = E0 -'m' = E1 -'n' = E2 -'o' = E3 -'p' = E4 -'q' = E5 -'r' = E6 -'s' = E7 -'t' = E8 -'u' = E9 -'v' = EA -'w' = EB -'x' = EC -'y' = ED -'z' = EE -'â–¶' = EF -':' = F0 -'Ă„' = F1 -'Ă–' = F2 -'Ăś' = F3 -'ä' = F4 -'ö' = F5 -'ĂĽ' = F6 -TALL_PLUS = FC 0C FB -'$' = FF - -@ Hiragana -'ă‚' = 01 -'ă„' = 02 -'ă†' = 03 -'ă' = 04 -'ăŠ' = 05 -'ă‹' = 06 -'ăŤ' = 07 -'ăŹ' = 08 -'ă‘' = 09 -'ă“' = 0A -'ă•' = 0B -'ă—' = 0C -'ă™' = 0D -'ă›' = 0E -'ăť' = 0F -'ăź' = 10 -'ăˇ' = 11 -'ă¤' = 12 -'ă¦' = 13 -'ă¨' = 14 -'ăŞ' = 15 -'ă«' = 16 -'ă¬' = 17 -'ă­' = 18 -'ă®' = 19 -'ăŻ' = 1A -'ă˛' = 1B -'ăµ' = 1C -'ă¸' = 1D -'ă»' = 1E -'ăľ' = 1F -'ăż' = 20 -'ă‚€' = 21 -'ă‚' = 22 -'ă‚‚' = 23 -'ă‚„' = 24 -'ゆ' = 25 -'ă‚' = 26 -'ら' = 27 -'り' = 28 -'ă‚‹' = 29 -'れ' = 2A -'ろ' = 2B -'わ' = 2C -'ă‚’' = 2D -'ă‚“' = 2E -'ă' = 2F -'ă' = 30 -'ă…' = 31 -'ă‡' = 32 -'ă‰' = 33 -'ă‚' = 34 -'ă‚…' = 35 -'ょ' = 36 -'ăŚ' = 37 -'ăŽ' = 38 -'ă' = 39 -'ă’' = 3A -'ă”' = 3B -'ă–' = 3C -'ă' = 3D -'ăš' = 3E -'ăś' = 3F -'ăž' = 40 -'ă ' = 41 -'ă˘' = 42 -'ăĄ' = 43 -'ă§' = 44 -'ă©' = 45 -'ă°' = 46 -'ăł' = 47 -'ă¶' = 48 -'ăą' = 49 -'ăĽ' = 4A -'ă±' = 4B -'ă´' = 4C -'ă·' = 4D -'ăş' = 4E -'ă˝' = 4F -'ăŁ' = 50 - -@ Katakana -'ア' = 51 -'イ' = 52 -'ウ' = 53 -'エ' = 54 -'オ' = 55 -'ă‚«' = 56 -'ă‚­' = 57 -'ク' = 58 -'ケ' = 59 -'コ' = 5A -'サ' = 5B -'ă‚·' = 5C -'ス' = 5D -'ă‚»' = 5E -'ă‚˝' = 5F -'タ' = 60 -'ă' = 61 -'ă„' = 62 -'ă†' = 63 -'ă' = 64 -'ăŠ' = 65 -'ă‹' = 66 -'ăŚ' = 67 -'ăŤ' = 68 -'ăŽ' = 69 -'ăŹ' = 6A -'ă’' = 6B -'ă•' = 6C -'ă' = 6D -'ă›' = 6E -'ăž' = 6F -'ăź' = 70 -'ă ' = 71 -'ăˇ' = 72 -'ă˘' = 73 -'ă¤' = 74 -'ă¦' = 75 -'ă¨' = 76 -'ă©' = 77 -'ăŞ' = 78 -'ă«' = 79 -'ă¬' = 7A -'ă­' = 7B -'ăŻ' = 7C -'ă˛' = 7D -'ăł' = 7E -'ァ' = 7F -'ィ' = 80 -'ゥ' = 81 -'ă‚§' = 82 -'ă‚©' = 83 -'ăŁ' = 84 -'ăĄ' = 85 -'ă§' = 86 -'ガ' = 87 -'ă‚®' = 88 -'ă‚°' = 89 -'ゲ' = 8A -'ă‚´' = 8B -'ă‚¶' = 8C -'ジ' = 8D -'ズ' = 8E -'ゼ' = 8F -'ゾ' = 90 -'ă€' = 91 -'ă‚' = 92 -'ă…' = 93 -'ă‡' = 94 -'ă‰' = 95 -'ă' = 96 -'ă“' = 97 -'ă–' = 98 -'ă™' = 99 -'ăś' = 9A -'ă‘' = 9B -'ă”' = 9C -'ă—' = 9D -'ăš' = 9E -'ăť' = 9F -'ă' = A0 - -@ Japanese punctuation -' ' = 00 -'ďĽ' = AB -'?' = AC -'。' = AD -'ăĽ' = AE -'⋯' = B0 - -STRING = FD - -@ string placeholders -PLAYER = FD 01 -STR_VAR_1 = FD 02 -STR_VAR_2 = FD 03 -STR_VAR_3 = FD 04 -KUN = FD 05 -RIVAL = FD 06 -@ version-dependent strings (originally made for Ruby/Sapphire differences) -@ Emerald uses the Sapphire strings (except for VERSION). -VERSION = FD 07 @ "EMERALD" -AQUA = FD 08 -MAGMA = FD 09 -ARCHIE = FD 0A -MAXIE = FD 0B -KYOGRE = FD 0C -GROUDON = FD 0D - -@ battle string placeholders - -B_BUFF1 = FD 00 -B_BUFF2 = FD 01 -B_COPY_VAR_1 = FD 02 -B_COPY_VAR_2 = FD 03 -B_COPY_VAR_3 = FD 04 -B_PLAYER_MON1_NAME = FD 05 -B_OPPONENT_MON1_NAME = FD 06 -B_PLAYER_MON2_NAME = FD 07 -B_OPPONENT_MON2_NAME = FD 08 -B_LINK_PLAYER_MON1_NAME = FD 09 -B_LINK_OPPONENT_MON1_NAME = FD 0A -B_LINK_PLAYER_MON2_NAME = FD 0B -B_LINK_OPPONENT_MON2_NAME = FD 0C -B_ATK_NAME_WITH_PREFIX_MON1 = FD 0D -B_ATK_PARTNER_NAME = FD 0E -B_ATK_NAME_WITH_PREFIX = FD 0F -B_DEF_NAME_WITH_PREFIX = FD 10 -B_EFF_NAME_WITH_PREFIX = FD 11 @ EFF = short for gEffectBattler -B_ACTIVE_NAME_WITH_PREFIX = FD 12 -B_SCR_ACTIVE_NAME_WITH_PREFIX = FD 13 -B_CURRENT_MOVE = FD 14 -B_LAST_MOVE = FD 15 -B_LAST_ITEM = FD 16 -B_LAST_ABILITY = FD 17 -B_ATK_ABILITY = FD 18 -B_DEF_ABILITY = FD 19 -B_SCR_ACTIVE_ABILITY = FD 1A -B_EFF_ABILITY = FD 1B -B_TRAINER1_CLASS = FD 1C -B_TRAINER1_NAME = FD 1D -B_LINK_PLAYER_NAME = FD 1E -B_LINK_PARTNER_NAME = FD 1F -B_LINK_OPPONENT1_NAME = FD 20 -B_LINK_OPPONENT2_NAME = FD 21 -B_LINK_SCR_TRAINER_NAME = FD 22 -B_PLAYER_NAME = FD 23 -B_TRAINER1_LOSE_TEXT = FD 24 -B_TRAINER1_WIN_TEXT = FD 25 -B_26 = FD 26 -B_PC_CREATOR_NAME = FD 27 -B_ATK_PREFIX1 = FD 28 -B_DEF_PREFIX1 = FD 29 -B_ATK_PREFIX2 = FD 2A -B_DEF_PREFIX2 = FD 2B -B_ATK_PREFIX3 = FD 2C -B_DEF_PREFIX3 = FD 2D -B_TRAINER2_CLASS = FD 2E -B_TRAINER2_NAME = FD 2F -B_TRAINER2_LOSE_TEXT = FD 30 -B_TRAINER2_WIN_TEXT = FD 31 -B_PARTNER_CLASS = FD 32 -B_PARTNER_NAME = FD 33 -B_BUFF3 = FD 34 - -@ indicates the end of a town/city name (before " TOWN" or " CITY") -NAME_END = FC 00 - -@ special 0xF7 character -SPECIAL_F7 = F7 - -@ more text functions - -COLOR = FC 01 @ use a color listed below right after -HIGHLIGHT = FC 02 @ same as fc 01 -SHADOW = FC 03 @ same as fc 01 -COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes -PALETTE = FC 05 @ used in credits -SIZE = FC 06 @ note that anything other than "SMALL" is invalid -UNKNOWN_7 = FC 07 -PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them -PAUSE_UNTIL_PRESS = FC 09 -WAIT_SE = FC 0A -PLAY_BGM = FC 0B -ESCAPE = FC 0C -SHIFT_TEXT = FC 0D -UNKNOWN_E = FC 0E -UNKNOWN_F = FC 0F -PLAY_SE = FC 10 -CLEAR = FC 11 -SKIP = FC 12 -CLEAR_TO = FC 13 -UNKNOWN_14 = FC 14 -JPN = FC 15 -ENG = FC 16 -PAUSE_MUSIC = FC 17 -RESUME_MUSIC = FC 18 - -@ colors - -TRANSPARENT = 00 -WHITE = 01 -DARK_GRAY = 02 -LIGHT_GRAY = 03 -RED = 04 -LIGHT_RED = 05 -GREEN = 06 -LIGHT_GREEN = 07 -BLUE = 08 -LIGHT_BLUE = 09 -@ these next colors can be set to anything arbitrary at runtime -@ usually though they'll have the textbox border colors as described below -DYNAMIC_COLOR1 = 0A @ white -DYNAMIC_COLOR2 = 0B @ white with a tinge of green -DYNAMIC_COLOR3 = 0C @ white 2 -DYNAMIC_COLOR4 = 0D @ aquamarine -DYNAMIC_COLOR5 = 0E @ blue-green -DYNAMIC_COLOR6 = 0F @ cerulean - -@ sound and music - -MUS_DUMMY = 00 00 -SE_USE_ITEM = 01 00 -SE_PC_LOGIN = 02 00 -SE_PC_OFF = 03 00 -SE_PC_ON = 04 00 -SE_SELECT = 05 00 -SE_WIN_OPEN = 06 00 -SE_WALL_HIT = 07 00 -SE_DOOR = 08 00 -SE_EXIT = 09 00 -SE_LEDGE = 0A 00 -SE_BIKE_BELL = 0B 00 -SE_NOT_EFFECTIVE = 0C 00 -SE_EFFECTIVE = 0D 00 -SE_SUPER_EFFECTIVE = 0E 00 -SE_BALL_OPEN = 0F 00 -SE_FAINT = 10 00 -SE_FLEE = 11 00 -SE_SLIDING_DOOR = 12 00 -SE_SHIP = 13 00 -SE_BANG = 14 00 -SE_PIN = 15 00 -SE_BOO = 16 00 -SE_BALL = 17 00 -SE_CONTEST_PLACE = 18 00 -SE_A = 19 00 -SE_I = 1A 00 -SE_U = 1B 00 -SE_E = 1C 00 -SE_O = 1D 00 -SE_N = 1E 00 -SE_SUCCESS = 1F 00 -SE_FAILURE = 20 00 -SE_EXP = 21 00 -SE_BIKE_HOP = 22 00 -SE_SWITCH = 23 00 -SE_CLICK = 24 00 -SE_FU_ZAKU = 25 00 -SE_CONTEST_CONDITION_LOSE = 26 00 -SE_LAVARIDGE_FALL_WARP = 27 00 -SE_ICE_STAIRS = 28 00 -SE_ICE_BREAK = 29 00 -SE_ICE_CRACK = 2A 00 -SE_FALL = 2B 00 -SE_UNLOCK = 2C 00 -SE_WARP_IN = 2D 00 -SE_WARP_OUT = 2E 00 -SE_REPEL = 2F 00 -SE_ROTATING_GATE = 30 00 -SE_TRUCK_MOVE = 31 00 -SE_TRUCK_STOP = 32 00 -SE_TRUCK_UNLOAD = 33 00 -SE_TRUCK_DOOR = 34 00 -SE_BERRY_BLENDER = 35 00 -SE_CARD = 36 00 -SE_SAVE = 37 00 -SE_BALL_BOUNCE_1 = 38 00 -SE_BALL_BOUNCE_2 = 39 00 -SE_BALL_BOUNCE_3 = 3A 00 -SE_BALL_BOUNCE_4 = 3B 00 -SE_BALL_TRADE = 3C 00 -SE_BALL_THROW = 3D 00 -SE_NOTE_C = 3E 00 -SE_NOTE_D = 3F 00 -SE_NOTE_E = 40 00 -SE_NOTE_F = 41 00 -SE_NOTE_G = 42 00 -SE_NOTE_A = 43 00 -SE_NOTE_B = 44 00 -SE_NOTE_C_HIGH = 45 00 -SE_PUDDLE = 46 00 -SE_BRIDGE_WALK = 47 00 -SE_ITEMFINDER = 48 00 -SE_DING_DONG = 49 00 -SE_BALLOON_RED = 4A 00 -SE_BALLOON_BLUE = 4B 00 -SE_BALLOON_YELLOW = 4C 00 -SE_BREAKABLE_DOOR = 4D 00 -SE_MUD_BALL = 4E 00 -SE_FIELD_POISON = 4F 00 -SE_ESCALATOR = 50 00 -SE_THUNDERSTORM = 51 00 -SE_THUNDERSTORM_STOP = 52 00 -SE_DOWNPOUR = 53 00 -SE_DOWNPOUR_STOP = 54 00 -SE_RAIN = 55 00 -SE_RAIN_STOP = 56 00 -SE_THUNDER = 57 00 -SE_THUNDER2 = 58 00 -SE_ELEVATOR = 59 00 -SE_LOW_HEALTH = 5A 00 -SE_EXP_MAX = 5B 00 -SE_ROULETTE_BALL = 5C 00 -SE_ROULETTE_BALL2 = 5D 00 -SE_TAILLOW_WING_FLAP = 5E 00 -SE_SHOP = 5F 00 -SE_CONTEST_HEART = 60 00 -SE_CONTEST_CURTAIN_RISE = 61 00 -SE_CONTEST_CURTAIN_FALL = 62 00 -SE_CONTEST_ICON_CHANGE = 63 00 -SE_CONTEST_ICON_CLEAR = 64 00 -SE_CONTEST_MONS_TURN = 65 00 -SE_SHINY = 66 00 -SE_INTRO_BLAST = 67 00 -SE_MUGSHOT = 68 00 -SE_APPLAUSE = 69 00 -SE_VEND = 6A 00 -SE_ORB = 6B 00 -SE_DEX_SCROLL = 6C 00 -SE_DEX_PAGE = 6D 00 -SE_POKENAV_ON = 6E 00 -SE_POKENAV_OFF = 6F 00 -SE_DEX_SEARCH = 70 00 -SE_EGG_HATCH = 71 00 -SE_BALL_TRAY_ENTER = 72 00 -SE_BALL_TRAY_BALL = 73 00 -SE_BALL_TRAY_EXIT = 74 00 -SE_GLASS_FLUTE = 75 00 -SE_M_THUNDERBOLT = 76 00 -SE_M_THUNDERBOLT2 = 77 00 -SE_M_HARDEN = 78 00 -SE_M_NIGHTMARE = 79 00 -SE_M_VITAL_THROW = 7A 00 -SE_M_VITAL_THROW2 = 7B 00 -SE_M_BUBBLE = 7C 00 -SE_M_BUBBLE2 = 7D 00 -SE_M_BUBBLE3 = 7E 00 -SE_M_RAIN_DANCE = 7F 00 -SE_M_CUT = 80 00 -SE_M_STRING_SHOT = 81 00 -SE_M_STRING_SHOT2 = 82 00 -SE_M_ROCK_THROW = 83 00 -SE_M_GUST = 84 00 -SE_M_GUST2 = 85 00 -SE_M_DOUBLE_SLAP = 86 00 -SE_M_DOUBLE_TEAM = 87 00 -SE_M_RAZOR_WIND = 88 00 -SE_M_ICY_WIND = 89 00 -SE_M_THUNDER_WAVE = 8A 00 -SE_M_COMET_PUNCH = 8B 00 -SE_M_MEGA_KICK = 8C 00 -SE_M_MEGA_KICK2 = 8D 00 -SE_M_CRABHAMMER = 8E 00 -SE_M_JUMP_KICK = 8F 00 -SE_M_FLAME_WHEEL = 90 00 -SE_M_FLAME_WHEEL2 = 91 00 -SE_M_FLAMETHROWER = 92 00 -SE_M_FIRE_PUNCH = 93 00 -SE_M_TOXIC = 94 00 -SE_M_SACRED_FIRE = 95 00 -SE_M_SACRED_FIRE2 = 96 00 -SE_M_EMBER = 97 00 -SE_M_TAKE_DOWN = 98 00 -SE_M_BLIZZARD = 99 00 -SE_M_BLIZZARD2 = 9A 00 -SE_M_SCRATCH = 9B 00 -SE_M_VICEGRIP = 9C 00 -SE_M_WING_ATTACK = 9D 00 -SE_M_FLY = 9E 00 -SE_M_SAND_ATTACK = 9F 00 -SE_M_RAZOR_WIND2 = A0 00 -SE_M_BITE = A1 00 -SE_M_HEADBUTT = A2 00 -SE_M_SURF = A3 00 -SE_M_HYDRO_PUMP = A4 00 -SE_M_WHIRLPOOL = A5 00 -SE_M_HORN_ATTACK = A6 00 -SE_M_TAIL_WHIP = A7 00 -SE_M_MIST = A8 00 -SE_M_POISON_POWDER = A9 00 -SE_M_BIND = AA 00 -SE_M_DRAGON_RAGE = AB 00 -SE_M_SING = AC 00 -SE_M_PERISH_SONG = AD 00 -SE_M_PAY_DAY = AE 00 -SE_M_DIG = AF 00 -SE_M_DIZZY_PUNCH = B0 00 -SE_M_SELF_DESTRUCT = B1 00 -SE_M_EXPLOSION = B2 00 -SE_M_ABSORB_2 = B3 00 -SE_M_ABSORB = B4 00 -SE_M_SCREECH = B5 00 -SE_M_BUBBLE_BEAM = B6 00 -SE_M_BUBBLE_BEAM2 = B7 00 -SE_M_SUPERSONIC = B8 00 -SE_M_BELLY_DRUM = B9 00 -SE_M_METRONOME = BA 00 -SE_M_BONEMERANG = BB 00 -SE_M_LICK = BC 00 -SE_M_PSYBEAM = BD 00 -SE_M_FAINT_ATTACK = BE 00 -SE_M_SWORDS_DANCE = BF 00 -SE_M_LEER = C0 00 -SE_M_SWAGGER = C1 00 -SE_M_SWAGGER2 = C2 00 -SE_M_HEAL_BELL = C3 00 -SE_M_CONFUSE_RAY = C4 00 -SE_M_SNORE = C5 00 -SE_M_BRICK_BREAK = C6 00 -SE_M_GIGA_DRAIN = C7 00 -SE_M_PSYBEAM2 = C8 00 -SE_M_SOLAR_BEAM = C9 00 -SE_M_PETAL_DANCE = CA 00 -SE_M_TELEPORT = CB 00 -SE_M_MINIMIZE = CC 00 -SE_M_SKETCH = CD 00 -SE_M_SWIFT = CE 00 -SE_M_REFLECT = CF 00 -SE_M_BARRIER = D0 00 -SE_M_DETECT = D1 00 -SE_M_LOCK_ON = D2 00 -SE_M_MOONLIGHT = D3 00 -SE_M_CHARM = D4 00 -SE_M_CHARGE = D5 00 -SE_M_STRENGTH = D6 00 -SE_M_HYPER_BEAM = D7 00 -SE_M_WATERFALL = D8 00 -SE_M_REVERSAL = D9 00 -SE_M_ACID_ARMOR = DA 00 -SE_M_SANDSTORM = DB 00 -SE_M_TRI_ATTACK = DC 00 -SE_M_TRI_ATTACK2 = DD 00 -SE_M_ENCORE = DE 00 -SE_M_ENCORE2 = DF 00 -SE_M_BATON_PASS = E0 00 -SE_M_MILK_DRINK = E1 00 -SE_M_ATTRACT = E2 00 -SE_M_ATTRACT2 = E3 00 -SE_M_MORNING_SUN = E4 00 -SE_M_FLATTER = E5 00 -SE_M_SAND_TOMB = E6 00 -SE_M_GRASSWHISTLE = E7 00 -SE_M_SPIT_UP = E8 00 -SE_M_DIVE = E9 00 -SE_M_EARTHQUAKE = EA 00 -SE_M_TWISTER = EB 00 -SE_M_SWEET_SCENT = EC 00 -SE_M_YAWN = ED 00 -SE_M_SKY_UPPERCUT = EE 00 -SE_M_STAT_INCREASE = EF 00 -SE_M_HEAT_WAVE = F0 00 -SE_M_UPROAR = F1 00 -SE_M_HAIL = F2 00 -SE_M_COSMIC_POWER = F3 00 -SE_M_TEETER_DANCE = F4 00 -SE_M_STAT_DECREASE = F5 00 -SE_M_HAZE = F6 00 -SE_M_HYPER_BEAM2 = F7 00 -SE_RG_DOOR = F8 00 -SE_RG_CARD_FLIP = F9 00 -SE_RG_CARD_FLIPPING = FA 00 -SE_RG_CARD_OPEN = FB 00 -SE_RG_BAG_CURSOR = FC 00 -SE_RG_BAG_POCKET = FD 00 -SE_RG_BALL_CLICK = FE 00 -SE_RG_SHOP = FF 00 -SE_RG_SS_ANNE_HORN = 00 01 -SE_RG_HELP_OPEN = 01 01 -SE_RG_HELP_CLOSE = 02 01 -SE_RG_HELP_ERROR = 03 01 -SE_RG_DEOXYS_MOVE = 04 01 -SE_RG_POKE_JUMP_SUCCESS = 05 01 -SE_RG_POKE_JUMP_FAILURE = 06 01 -SE_POKENAV_CALL = 07 01 -SE_POKENAV_HANG_UP = 08 01 -SE_ARENA_TIMEUP1 = 09 01 -SE_ARENA_TIMEUP2 = 0A 01 -SE_PIKE_CURTAIN_CLOSE = 0B 01 -SE_PIKE_CURTAIN_OPEN = 0C 01 -SE_SUDOWOODO_SHAKE = 0D 01 -MUS_LITTLEROOT_TEST = 5E 01 -MUS_GSC_ROUTE38 = 5F 01 -MUS_CAUGHT = 60 01 -MUS_VICTORY_WILD = 61 01 -MUS_VICTORY_GYM_LEADER = 62 01 -MUS_VICTORY_LEAGUE = 63 01 -MUS_C_COMM_CENTER = 64 01 -MUS_GSC_PEWTER = 65 01 -MUS_C_VS_LEGEND_BEAST = 66 01 -MUS_ROUTE101 = 67 01 -MUS_ROUTE110 = 68 01 -MUS_ROUTE120 = 69 01 -MUS_PETALBURG = 6A 01 -MUS_OLDALE = 6B 01 -MUS_GYM = 6C 01 -MUS_SURF = 6D 01 -MUS_PETALBURG_WOODS = 6E 01 -MUS_LEVEL_UP = 6F 01 -MUS_HEAL = 70 01 -MUS_OBTAIN_BADGE = 71 01 -MUS_OBTAIN_ITEM = 72 01 -MUS_EVOLVED = 73 01 -MUS_OBTAIN_TMHM = 74 01 -MUS_LILYCOVE_MUSEUM = 75 01 -MUS_ROUTE122 = 76 01 -MUS_OCEANIC_MUSEUM = 77 01 -MUS_EVOLUTION_INTRO = 78 01 -MUS_EVOLUTION = 79 01 -MUS_MOVE_DELETED = 7A 01 -MUS_ENCOUNTER_GIRL = 7B 01 -MUS_ENCOUNTER_MALE = 7C 01 -MUS_ABANDONED_SHIP = 7D 01 -MUS_FORTREE = 7E 01 -MUS_BIRCH_LAB = 7F 01 -MUS_B_TOWER_RS = 80 01 -MUS_ENCOUNTER_SWIMMER = 81 01 -MUS_CAVE_OF_ORIGIN = 82 01 -MUS_OBTAIN_BERRY = 83 01 -MUS_AWAKEN_LEGEND = 84 01 -MUS_SLOTS_JACKPOT = 85 01 -MUS_SLOTS_WIN = 86 01 -MUS_TOO_BAD = 87 01 -MUS_ROULETTE = 88 01 -MUS_LINK_CONTEST_P1 = 89 01 -MUS_LINK_CONTEST_P2 = 8A 01 -MUS_LINK_CONTEST_P3 = 8B 01 -MUS_LINK_CONTEST_P4 = 8C 01 -MUS_ENCOUNTER_RICH = 8D 01 -MUS_VERDANTURF = 8E 01 -MUS_RUSTBORO = 8F 01 -MUS_POKE_CENTER = 90 01 -MUS_ROUTE104 = 91 01 -MUS_ROUTE119 = 92 01 -MUS_CYCLING = 93 01 -MUS_POKE_MART = 94 01 -MUS_LITTLEROOT = 95 01 -MUS_MT_CHIMNEY = 96 01 -MUS_ENCOUNTER_FEMALE = 97 01 -MUS_LILYCOVE = 98 01 -MUS_ROUTE111 = 99 01 -MUS_HELP = 9A 01 -MUS_UNDERWATER = 9B 01 -MUS_VICTORY_TRAINER = 9C 01 -MUS_TITLE = 9D 01 -MUS_INTRO = 9E 01 -MUS_ENCOUNTER_MAY = 9F 01 -MUS_ENCOUNTER_INTENSE = A0 01 -MUS_ENCOUNTER_COOL = A1 01 -MUS_ROUTE113 = A2 01 -MUS_ENCOUNTER_AQUA = A3 01 -MUS_FOLLOW_ME = A4 01 -MUS_ENCOUNTER_BRENDAN = A5 01 -MUS_EVER_GRANDE = A6 01 -MUS_ENCOUNTER_SUSPICIOUS = A7 01 -MUS_VICTORY_AQUA_MAGMA = A8 01 -MUS_CABLE_CAR = A9 01 -MUS_GAME_CORNER = AA 01 -MUS_DEWFORD = AB 01 -MUS_SAFARI_ZONE = AC 01 -MUS_VICTORY_ROAD = AD 01 -MUS_AQUA_MAGMA_HIDEOUT = AE 01 -MUS_SAILING = AF 01 -MUS_MT_PYRE = B0 01 -MUS_SLATEPORT = B1 01 -MUS_MT_PYRE_EXTERIOR = B2 01 -MUS_SCHOOL = B3 01 -MUS_HALL_OF_FAME = B4 01 -MUS_FALLARBOR = B5 01 -MUS_SEALED_CHAMBER = B6 01 -MUS_CONTEST_WINNER = B7 01 -MUS_CONTEST = B8 01 -MUS_ENCOUNTER_MAGMA = B9 01 -MUS_INTRO_BATTLE = BA 01 -MUS_ABNORMAL_WEATHER = BB 01 -MUS_WEATHER_GROUDON = BC 01 -MUS_SOOTOPOLIS = BD 01 -MUS_CONTEST_RESULTS = BE 01 -MUS_HALL_OF_FAME_ROOM = BF 01 -MUS_TRICK_HOUSE = C0 01 -MUS_ENCOUNTER_TWINS = C1 01 -MUS_ENCOUNTER_ELITE_FOUR = C2 01 -MUS_ENCOUNTER_HIKER = C3 01 -MUS_CONTEST_LOBBY = C4 01 -MUS_ENCOUNTER_INTERVIEWER = C5 01 -MUS_ENCOUNTER_CHAMPION = C6 01 -MUS_CREDITS = C7 01 -MUS_END = C8 01 -MUS_B_FRONTIER = C9 01 -MUS_B_ARENA = CA 01 -MUS_OBTAIN_B_POINTS = CB 01 -MUS_REGISTER_MATCH_CALL = CC 01 -MUS_B_PYRAMID = CD 01 -MUS_B_PYRAMID_TOP = CE 01 -MUS_B_PALACE = CF 01 -MUS_RAYQUAZA_APPEARS = D0 01 -MUS_B_TOWER = D1 01 -MUS_OBTAIN_SYMBOL = D2 01 -MUS_B_DOME = D3 01 -MUS_B_PIKE = D4 01 -MUS_B_FACTORY = D5 01 -MUS_VS_RAYQUAZA = D6 01 -MUS_VS_FRONTIER_BRAIN = D7 01 -MUS_VS_MEW = D8 01 -MUS_B_DOME_LOBBY = D9 01 -MUS_VS_WILD = DA 01 -MUS_VS_AQUA_MAGMA = DB 01 -MUS_VS_TRAINER = DC 01 -MUS_VS_GYM_LEADER = DD 01 -MUS_VS_CHAMPION = DE 01 -MUS_VS_REGI = DF 01 -MUS_VS_KYOGRE_GROUDON = E0 01 -MUS_VS_RIVAL = E1 01 -MUS_VS_ELITE_FOUR = E2 01 -MUS_VS_AQUA_MAGMA_LEADER = E3 01 -MUS_RG_FOLLOW_ME = E4 01 -MUS_RG_GAME_CORNER = E5 01 -MUS_RG_ROCKET_HIDEOUT = E6 01 -MUS_RG_GYM = E7 01 -MUS_RG_JIGGLYPUFF = E8 01 -MUS_RG_INTRO_FIGHT = E9 01 -MUS_RG_TITLE = EA 01 -MUS_RG_CINNABAR = EB 01 -MUS_RG_LAVENDER = EC 01 -MUS_RG_HEAL = ED 01 -MUS_RG_CYCLING = EE 01 -MUS_RG_ENCOUNTER_ROCKET = EF 01 -MUS_RG_ENCOUNTER_GIRL = F0 01 -MUS_RG_ENCOUNTER_BOY = F1 01 -MUS_RG_HALL_OF_FAME = F2 01 -MUS_RG_VIRIDIAN_FOREST = F3 01 -MUS_RG_MT_MOON = F4 01 -MUS_RG_POKE_MANSION = F5 01 -MUS_RG_CREDITS = F6 01 -MUS_RG_ROUTE1 = F7 01 -MUS_RG_ROUTE24 = F8 01 -MUS_RG_ROUTE3 = F9 01 -MUS_RG_ROUTE11 = FA 01 -MUS_RG_VICTORY_ROAD = FB 01 -MUS_RG_VS_GYM_LEADER = FC 01 -MUS_RG_VS_TRAINER = FD 01 -MUS_RG_VS_WILD = FE 01 -MUS_RG_VS_CHAMPION = FF 01 -MUS_RG_PALLET = 00 02 -MUS_RG_OAK_LAB = 01 02 -MUS_RG_OAK = 02 02 -MUS_RG_POKE_CENTER = 03 02 -MUS_RG_SS_ANNE = 04 02 -MUS_RG_SURF = 05 02 -MUS_RG_POKE_TOWER = 06 02 -MUS_RG_SILPH = 07 02 -MUS_RG_FUCHSIA = 08 02 -MUS_RG_CELADON = 09 02 -MUS_RG_VICTORY_TRAINER = 0A 02 -MUS_RG_VICTORY_WILD = 0B 02 -MUS_RG_VICTORY_GYM_LEADER = 0C 02 -MUS_RG_VERMILLION = 0D 02 -MUS_RG_PEWTER = 0E 02 -MUS_RG_ENCOUNTER_RIVAL = 0F 02 -MUS_RG_RIVAL_EXIT = 10 02 -MUS_RG_DEX_RATING = 11 02 -MUS_RG_OBTAIN_KEY_ITEM = 12 02 -MUS_RG_CAUGHT_INTRO = 13 02 -MUS_RG_PHOTO = 14 02 -MUS_RG_GAME_FREAK = 15 02 -MUS_RG_CAUGHT = 16 02 -MUS_RG_NEW_GAME_INSTRUCT = 17 02 -MUS_RG_NEW_GAME_INTRO = 18 02 -MUS_RG_NEW_GAME_EXIT = 19 02 -MUS_RG_POKE_JUMP = 1A 02 -MUS_RG_UNION_ROOM = 1B 02 -MUS_RG_NET_CENTER = 1C 02 -MUS_RG_MYSTERY_GIFT = 1D 02 -MUS_RG_BERRY_PICK = 1E 02 -MUS_RG_SEVII_CAVE = 1F 02 -MUS_RG_TEACHY_TV_SHOW = 20 02 -MUS_RG_SEVII_ROUTE = 21 02 -MUS_RG_SEVII_DUNGEON = 22 02 -MUS_RG_SEVII_123 = 23 02 -MUS_RG_SEVII_45 = 24 02 -MUS_RG_SEVII_67 = 25 02 -MUS_RG_POKE_FLUTE = 26 02 -MUS_RG_VS_DEOXYS = 27 02 -MUS_RG_VS_MEWTWO = 28 02 -MUS_RG_VS_LEGEND = 29 02 -MUS_RG_ENCOUNTER_GYM_LEADER = 2A 02 -MUS_RG_ENCOUNTER_DEOXYS = 2B 02 -MUS_RG_TRAINER_TOWER = 2C 02 -MUS_RG_SLOW_PALLET = 2D 02 -MUS_RG_TEACHY_TV_MENU = 2E 02 -PH_TRAP_BLEND = 2F 02 -PH_TRAP_HELD = 30 02 -PH_TRAP_SOLO = 31 02 -PH_FACE_BLEND = 32 02 -PH_FACE_HELD = 33 02 -PH_FACE_SOLO = 34 02 -PH_CLOTH_BLEND = 35 02 -PH_CLOTH_HELD = 36 02 -PH_CLOTH_SOLO = 37 02 -PH_DRESS_BLEND = 38 02 -PH_DRESS_HELD = 39 02 -PH_DRESS_SOLO = 3A 02 -PH_FLEECE_BLEND = 3B 02 -PH_FLEECE_HELD = 3C 02 -PH_FLEECE_SOLO = 3D 02 -PH_KIT_BLEND = 3E 02 -PH_KIT_HELD = 3F 02 -PH_KIT_SOLO = 40 02 -PH_PRICE_BLEND = 41 02 -PH_PRICE_HELD = 42 02 -PH_PRICE_SOLO = 43 02 -PH_LOT_BLEND = 44 02 -PH_LOT_HELD = 45 02 -PH_LOT_SOLO = 46 02 -PH_GOAT_BLEND = 47 02 -PH_GOAT_HELD = 48 02 -PH_GOAT_SOLO = 49 02 -PH_THOUGHT_BLEND = 4A 02 -PH_THOUGHT_HELD = 4B 02 -PH_THOUGHT_SOLO = 4C 02 -PH_CHOICE_BLEND = 4D 02 -PH_CHOICE_HELD = 4E 02 -PH_CHOICE_SOLO = 4F 02 -PH_MOUTH_BLEND = 50 02 -PH_MOUTH_HELD = 51 02 -PH_MOUTH_SOLO = 52 02 -PH_FOOT_BLEND = 53 02 -PH_FOOT_HELD = 54 02 -PH_FOOT_SOLO = 55 02 -PH_GOOSE_BLEND = 56 02 -PH_GOOSE_HELD = 57 02 -PH_GOOSE_SOLO = 58 02 -PH_STRUT_BLEND = 59 02 -PH_STRUT_HELD = 5A 02 -PH_STRUT_SOLO = 5B 02 -PH_CURE_BLEND = 5C 02 -PH_CURE_HELD = 5D 02 -PH_CURE_SOLO = 5E 02 -PH_NURSE_BLEND = 5F 02 -PH_NURSE_HELD = 60 02 -PH_NURSE_SOLO = 61 02 - -A_BUTTON = F8 00 -B_BUTTON = F8 01 -DPAD_UPDOWN = F8 0A -DPAD_NONE = F8 0C - -UP_ARROW_2 = F9 00 -DOWN_ARROW_2 = F9 01 -LEFT_ARROW_2 = F9 02 -RIGHT_ARROW_2 = F9 03 -PLUS = F9 04 -LV_2 = F9 05 -PP = F9 06 -ID = F9 07 -NO = F9 08 -UNDERSCORE = F9 09 -CIRCLE_1 = F9 0A -CIRCLE_2 = F9 0B -CIRCLE_3 = F9 0C -CIRCLE_4 = F9 0D -CIRCLE_5 = F9 0E -CIRCLE_6 = F9 0F -CIRCLE_7 = F9 10 -CIRCLE_8 = F9 11 -CIRCLE_9 = F9 12 -ROUND_LEFT_PAREN = F9 13 -ROUND_RIGHT_PAREN = F9 14 -CIRCLE_DOT = F9 15 -TRIANGLE = F9 16 -BIG_MULT_X = F9 17 - -EMOJI_UNDERSCORE = F9 D0 -EMOJI_PIPE = F9 D1 -EMOJI_HIGHBAR = F9 D2 -EMOJI_TILDE = F9 D3 -EMOJI_LEFT_PAREN = F9 D4 -EMOJI_RIGHT_PAREN = F9 D5 -EMOJI_UNION = F9 D6 @ ⊂ -EMOJI_GREATER_THAN = F9 D7 -EMOJI_LEFT_EYE = F9 D8 -EMOJI_RIGHT_EYE = F9 D9 -EMOJI_AT = F9 DA -EMOJI_SEMICOLON = F9 DB -EMOJI_PLUS = F9 DC -EMOJI_MINUS = F9 DD -EMOJI_EQUALS = F9 DE -EMOJI_SPIRAL = F9 DF -EMOJI_TONGUE = F9 E0 -EMOJI_TRIANGLE_OUTLINE = F9 E1 -EMOJI_ACUTE = F9 E2 -EMOJI_GRAVE = F9 E3 -EMOJI_CIRCLE = F9 E4 -EMOJI_TRIANGLE = F9 E5 -EMOJI_SQUARE = F9 E6 -EMOJI_HEART = F9 E7 -EMOJI_MOON = F9 E8 -EMOJI_NOTE = F9 E9 -EMOJI_BALL = F9 EA -EMOJI_BOLT = F9 EB -EMOJI_LEAF = F9 EC -EMOJI_FIRE = F9 ED -EMOJI_WATER = F9 EE -EMOJI_LEFT_FIST = F9 EF -EMOJI_RIGHT_FIST = F9 F0 -EMOJI_BIGWHEEL = F9 F1 -EMOJI_SMALLWHEEL = F9 F2 -EMOJI_SPHERE = F9 F3 -EMOJI_IRRITATED = F9 F4 -EMOJI_MISCHIEVOUS = F9 F5 -EMOJI_HAPPY = F9 F6 -EMOJI_ANGRY = F9 F7 -EMOJI_SURPRISED = F9 F8 -EMOJI_BIGSMILE = F9 F9 -EMOJI_EVIL = F9 FA -EMOJI_TIRED = F9 FB -EMOJI_NEUTRAL = F9 FC -EMOJI_SHOCKED = F9 FD -EMOJI_BIGANGER = F9 FE - -'\l' = FA @ scroll up window text -'\p' = FB @ new paragraph -'\n' = FE @ new line diff --git a/berry_fix/payload/common_syms/agb_flash.txt b/berry_fix/payload/common_syms/agb_flash.txt deleted file mode 100644 index cb421ec80d1a..000000000000 --- a/berry_fix/payload/common_syms/agb_flash.txt +++ /dev/null @@ -1,10 +0,0 @@ -gFlashTimeoutFlag -PollFlashStatus -WaitForFlashWrite -ProgramFlashSector -gFlash -ProgramFlashByte -gFlashNumRemainingBytes -EraseFlashChip -EraseFlashSector -gFlashMaxTime diff --git a/berry_fix/payload/common_syms/main.txt b/berry_fix/payload/common_syms/main.txt deleted file mode 100644 index b62c721240e3..000000000000 --- a/berry_fix/payload/common_syms/main.txt +++ /dev/null @@ -1,9 +0,0 @@ -gIntrTable -gHeldKeys -gNewKeys -gIntrVector -gUpdateSuccessful -gUnknown_3001194 -gUnknown_30011A0 -gMainCallbackState -gGameVersion diff --git a/berry_fix/payload/common_syms/rtc.txt b/berry_fix/payload/common_syms/rtc.txt deleted file mode 100644 index 7aafbe65dfe0..000000000000 --- a/berry_fix/payload/common_syms/rtc.txt +++ /dev/null @@ -1,2 +0,0 @@ -gTimeSinceBerryUpdate -gRtcUTCTime diff --git a/berry_fix/payload/constants/gba_constants.inc b/berry_fix/payload/constants/gba_constants.inc deleted file mode 100644 index 9d59c8fcdd3d..000000000000 --- a/berry_fix/payload/constants/gba_constants.inc +++ /dev/null @@ -1,490 +0,0 @@ - .set PSR_USR_MODE, 0x00000010 - .set PSR_FIQ_MODE, 0x00000011 - .set PSR_IRQ_MODE, 0x00000012 - .set PSR_SVC_MODE, 0x00000013 - .set PSR_ABT_MODE, 0x00000017 - .set PSR_UND_MODE, 0x0000001b - .set PSR_SYS_MODE, 0x0000001f - .set PSR_MODE_MASK, 0x0000001f - .set PSR_T_BIT, 0x00000020 - .set PSR_F_BIT, 0x00000040 - .set PSR_I_BIT, 0x00000080 - - .set EWRAM_START, 0x02000000 - .set EWRAM_END, EWRAM_START + 0x40000 - .set IWRAM_START, 0x03000000 - .set IWRAM_END, IWRAM_START + 0x8000 - - .set PLTT, 0x5000000 - .set BG_PLTT, PLTT - .set OBJ_PLTT, PLTT + 0x200 - - .set VRAM, 0x6000000 - .set BG_VRAM, VRAM - .set OBJ_VRAM0, VRAM + 0x10000 @ text-mode BG - .set OBJ_VRAM1, VRAM + 0x14000 @ bitmap-mode BG - - .set OAM, 0x7000000 - - .set SOUND_INFO_PTR, 0x3007FF0 - .set INTR_CHECK, 0x3007FF8 - .set INTR_VECTOR, 0x3007FFC - - .set INTR_FLAG_VBLANK, 1 << 0 - .set INTR_FLAG_HBLANK, 1 << 1 - .set INTR_FLAG_VCOUNT, 1 << 2 - .set INTR_FLAG_TIMER0, 1 << 3 - .set INTR_FLAG_TIMER1, 1 << 4 - .set INTR_FLAG_TIMER2, 1 << 5 - .set INTR_FLAG_TIMER3, 1 << 6 - .set INTR_FLAG_SERIAL, 1 << 7 - .set INTR_FLAG_DMA0, 1 << 8 - .set INTR_FLAG_DMA1, 1 << 9 - .set INTR_FLAG_DMA2, 1 << 10 - .set INTR_FLAG_DMA3, 1 << 11 - .set INTR_FLAG_KEYPAD, 1 << 12 - .set INTR_FLAG_GAMEPAK, 1 << 13 - - .set VCOUNT_VBLANK, 160 - .set TOTAL_SCANLINES, 228 - - .set REG_BASE, 0x4000000 @ I/O register base address - -@ I/O register offsets - .set OFFSET_REG_DISPCNT, 0x0 - .set OFFSET_REG_DISPSTAT, 0x4 - .set OFFSET_REG_VCOUNT, 0x6 - .set OFFSET_REG_BG0CNT, 0x8 - .set OFFSET_REG_BG1CNT, 0xa - .set OFFSET_REG_BG2CNT, 0xc - .set OFFSET_REG_BG3CNT, 0xe - .set OFFSET_REG_BG0HOFS, 0x10 - .set OFFSET_REG_BG0VOFS, 0x12 - .set OFFSET_REG_BG1HOFS, 0x14 - .set OFFSET_REG_BG1VOFS, 0x16 - .set OFFSET_REG_BG2HOFS, 0x18 - .set OFFSET_REG_BG2VOFS, 0x1a - .set OFFSET_REG_BG3HOFS, 0x1c - .set OFFSET_REG_BG3VOFS, 0x1e - .set OFFSET_REG_BG2PA, 0x20 - .set OFFSET_REG_BG2PB, 0x22 - .set OFFSET_REG_BG2PC, 0x24 - .set OFFSET_REG_BG2PD, 0x26 - .set OFFSET_REG_BG2X_L, 0x28 - .set OFFSET_REG_BG2X_H, 0x2a - .set OFFSET_REG_BG2Y_L, 0x2c - .set OFFSET_REG_BG2Y_H, 0x2e - .set OFFSET_REG_BG3PA, 0x30 - .set OFFSET_REG_BG3PB, 0x32 - .set OFFSET_REG_BG3PC, 0x34 - .set OFFSET_REG_BG3PD, 0x36 - .set OFFSET_REG_BG3X_L, 0x38 - .set OFFSET_REG_BG3X_H, 0x3a - .set OFFSET_REG_BG3Y_L, 0x3c - .set OFFSET_REG_BG3Y_H, 0x3e - .set OFFSET_REG_WIN0H, 0x40 - .set OFFSET_REG_WIN1H, 0x42 - .set OFFSET_REG_WIN0V, 0x44 - .set OFFSET_REG_WIN1V, 0x46 - .set OFFSET_REG_WININ, 0x48 - .set OFFSET_REG_WINOUT, 0x4a - .set OFFSET_REG_MOSAIC, 0x4c - .set OFFSET_REG_BLDCNT, 0x50 - .set OFFSET_REG_BLDALPHA, 0x52 - .set OFFSET_REG_BLDY, 0x54 - - .set OFFSET_REG_SOUND1CNT, 0x60 - .set OFFSET_REG_SOUND1CNT_L, 0x60 - .set OFFSET_REG_NR10, 0x60 - .set OFFSET_REG_SOUND1CNT_H, 0x62 - .set OFFSET_REG_NR11, 0x62 - .set OFFSET_REG_NR12, 0x63 - .set OFFSET_REG_SOUND1CNT_X, 0x64 - .set OFFSET_REG_NR13, 0x64 - .set OFFSET_REG_NR14, 0x65 - .set OFFSET_REG_SOUND2CNT, 0x68 - .set OFFSET_REG_SOUND2CNT_L, 0x68 - .set OFFSET_REG_NR21, 0x68 - .set OFFSET_REG_NR22, 0x69 - .set OFFSET_REG_SOUND2CNT_H, 0x6c - .set OFFSET_REG_NR23, 0x6c - .set OFFSET_REG_NR24, 0x6d - .set OFFSET_REG_SOUND3CNT, 0x70 - .set OFFSET_REG_SOUND3CNT_L, 0x70 - .set OFFSET_REG_NR30, 0x70 - .set OFFSET_REG_SOUND3CNT_H, 0x72 - .set OFFSET_REG_NR31, 0x72 - .set OFFSET_REG_NR32, 0x73 - .set OFFSET_REG_SOUND3CNT_X, 0x74 - .set OFFSET_REG_NR33, 0x74 - .set OFFSET_REG_NR34, 0x75 - .set OFFSET_REG_SOUND4CNT, 0x78 - .set OFFSET_REG_SOUND4CNT_L, 0x78 - .set OFFSET_REG_NR41, 0x78 - .set OFFSET_REG_NR42, 0x79 - .set OFFSET_REG_SOUND4CNT_H, 0x7c - .set OFFSET_REG_NR43, 0x7c - .set OFFSET_REG_NR44, 0x7d - .set OFFSET_REG_SOUNDCNT, 0x80 - .set OFFSET_REG_SOUNDCNT_L, 0x80 - .set OFFSET_REG_NR50, 0x80 - .set OFFSET_REG_NR51, 0x81 - .set OFFSET_REG_SOUNDCNT_H, 0x82 - .set OFFSET_REG_SOUNDCNT_X, 0x84 - .set OFFSET_REG_NR52, 0x84 - .set OFFSET_REG_SOUNDBIAS, 0x88 - .set OFFSET_REG_WAVE_RAM, 0x90 - .set OFFSET_REG_WAVE_RAM0, 0x90 - .set OFFSET_REG_WAVE_RAM0_L, 0x90 - .set OFFSET_REG_WAVE_RAM0_H, 0x92 - .set OFFSET_REG_WAVE_RAM1, 0x94 - .set OFFSET_REG_WAVE_RAM1_L, 0x94 - .set OFFSET_REG_WAVE_RAM1_H, 0x96 - .set OFFSET_REG_WAVE_RAM2, 0x98 - .set OFFSET_REG_WAVE_RAM2_L, 0x98 - .set OFFSET_REG_WAVE_RAM2_H, 0x9a - .set OFFSET_REG_WAVE_RAM3, 0x9c - .set OFFSET_REG_WAVE_RAM3_L, 0x9c - .set OFFSET_REG_WAVE_RAM3_H, 0x9e - .set OFFSET_REG_FIFO, 0xa0 - .set OFFSET_REG_FIFO_A, 0xa0 - .set OFFSET_REG_FIFO_A_L, 0xa0 - .set OFFSET_REG_FIFO_A_H, 0xa2 - .set OFFSET_REG_FIFO_B, 0xa4 - .set OFFSET_REG_FIFO_B_L, 0xa4 - .set OFFSET_REG_FIFO_B_H, 0xa6 - - .set OFFSET_REG_DMA0, 0xb0 - .set OFFSET_REG_DMA0SAD, 0xb0 - .set OFFSET_REG_DMA0SAD_L, 0xb0 - .set OFFSET_REG_DMA0SAD_H, 0xb2 - .set OFFSET_REG_DMA0DAD, 0xb4 - .set OFFSET_REG_DMA0DAD_L, 0xb4 - .set OFFSET_REG_DMA0DAD_H, 0xb6 - .set OFFSET_REG_DMA0CNT, 0xb8 - .set OFFSET_REG_DMA0CNT_L, 0xb8 - .set OFFSET_REG_DMA0CNT_H, 0xba - .set OFFSET_REG_DMA1, 0xbc - .set OFFSET_REG_DMA1SAD, 0xbc - .set OFFSET_REG_DMA1SAD_L, 0xbc - .set OFFSET_REG_DMA1SAD_H, 0xbe - .set OFFSET_REG_DMA1DAD, 0xc0 - .set OFFSET_REG_DMA1DAD_L, 0xc0 - .set OFFSET_REG_DMA1DAD_H, 0xc2 - .set OFFSET_REG_DMA1CNT, 0xc4 - .set OFFSET_REG_DMA1CNT_L, 0xc4 - .set OFFSET_REG_DMA1CNT_H, 0xc6 - .set OFFSET_REG_DMA2, 0xc8 - .set OFFSET_REG_DMA2SAD, 0xc8 - .set OFFSET_REG_DMA2SAD_L, 0xc8 - .set OFFSET_REG_DMA2SAD_H, 0xca - .set OFFSET_REG_DMA2DAD, 0xcc - .set OFFSET_REG_DMA2DAD_L, 0xcc - .set OFFSET_REG_DMA2DAD_H, 0xce - .set OFFSET_REG_DMA2CNT, 0xd0 - .set OFFSET_REG_DMA2CNT_L, 0xd0 - .set OFFSET_REG_DMA2CNT_H, 0xd2 - .set OFFSET_REG_DMA3, 0xd4 - .set OFFSET_REG_DMA3SAD, 0xd4 - .set OFFSET_REG_DMA3SAD_L, 0xd4 - .set OFFSET_REG_DMA3SAD_H, 0xd6 - .set OFFSET_REG_DMA3DAD, 0xd8 - .set OFFSET_REG_DMA3DAD_L, 0xd8 - .set OFFSET_REG_DMA3DAD_H, 0xda - .set OFFSET_REG_DMA3CNT, 0xdc - .set OFFSET_REG_DMA3CNT_L, 0xdc - .set OFFSET_REG_DMA3CNT_H, 0xde - - .set OFFSET_REG_TM0CNT, 0x100 - .set OFFSET_REG_TM0CNT_L, 0x100 - .set OFFSET_REG_TM0CNT_H, 0x102 - .set OFFSET_REG_TM1CNT, 0x104 - .set OFFSET_REG_TM1CNT_L, 0x104 - .set OFFSET_REG_TM1CNT_H, 0x106 - .set OFFSET_REG_TM2CNT, 0x108 - .set OFFSET_REG_TM2CNT_L, 0x108 - .set OFFSET_REG_TM2CNT_H, 0x10a - .set OFFSET_REG_TM3CNT, 0x10c - .set OFFSET_REG_TM3CNT_L, 0x10c - .set OFFSET_REG_TM3CNT_H, 0x10e - - .set OFFSET_REG_SIOCNT, 0x128 - .set OFFSET_REG_SIODATA8, 0x12a - .set OFFSET_REG_SIODATA32, 0x120 - .set OFFSET_REG_SIOMLT_SEND, 0x12a - .set OFFSET_REG_SIOMLT_RECV, 0x120 - .set OFFSET_REG_SIOMULTI0, 0x120 - .set OFFSET_REG_SIOMULTI1, 0x122 - .set OFFSET_REG_SIOMULTI2, 0x124 - .set OFFSET_REG_SIOMULTI3, 0x126 - - .set OFFSET_REG_KEYINPUT, 0x130 - .set OFFSET_REG_KEYCNT, 0x132 - - .set OFFSET_REG_RCNT, 0x134 - - .set OFFSET_REG_JOYCNT, 0x140 - .set OFFSET_REG_JOYSTAT, 0x158 - .set OFFSET_REG_JOY_RECV, 0x150 - .set OFFSET_REG_JOY_RECV_L, 0x150 - .set OFFSET_REG_JOY_RECV_H, 0x152 - .set OFFSET_REG_JOY_TRANS, 0x154 - .set OFFSET_REG_JOY_TRANS_L, 0x154 - .set OFFSET_REG_JOY_TRANS_H, 0x156 - - .set OFFSET_REG_IME, 0x208 - .set OFFSET_REG_IE, 0x200 - .set OFFSET_REG_IF, 0x202 - - .set OFFSET_REG_WAITCNT, 0x204 - -@ I/O register addresses - .set REG_DISPCNT, REG_BASE + OFFSET_REG_DISPCNT - .set REG_DISPSTAT, REG_BASE + OFFSET_REG_DISPSTAT - .set REG_VCOUNT, REG_BASE + OFFSET_REG_VCOUNT - .set REG_BG0CNT, REG_BASE + OFFSET_REG_BG0CNT - .set REG_BG1CNT, REG_BASE + OFFSET_REG_BG1CNT - .set REG_BG2CNT, REG_BASE + OFFSET_REG_BG2CNT - .set REG_BG3CNT, REG_BASE + OFFSET_REG_BG3CNT - .set REG_BG0HOFS, REG_BASE + OFFSET_REG_BG0HOFS - .set REG_BG0VOFS, REG_BASE + OFFSET_REG_BG0VOFS - .set REG_BG1HOFS, REG_BASE + OFFSET_REG_BG1HOFS - .set REG_BG1VOFS, REG_BASE + OFFSET_REG_BG1VOFS - .set REG_BG2HOFS, REG_BASE + OFFSET_REG_BG2HOFS - .set REG_BG2VOFS, REG_BASE + OFFSET_REG_BG2VOFS - .set REG_BG3HOFS, REG_BASE + OFFSET_REG_BG3HOFS - .set REG_BG3VOFS, REG_BASE + OFFSET_REG_BG3VOFS - .set REG_BG2PA, REG_BASE + OFFSET_REG_BG2PA - .set REG_BG2PB, REG_BASE + OFFSET_REG_BG2PB - .set REG_BG2PC, REG_BASE + OFFSET_REG_BG2PC - .set REG_BG2PD, REG_BASE + OFFSET_REG_BG2PD - .set REG_BG2X_L, REG_BASE + OFFSET_REG_BG2X_L - .set REG_BG2X_H, REG_BASE + OFFSET_REG_BG2X_H - .set REG_BG2Y_L, REG_BASE + OFFSET_REG_BG2Y_L - .set REG_BG2Y_H, REG_BASE + OFFSET_REG_BG2Y_H - .set REG_BG3PA, REG_BASE + OFFSET_REG_BG3PA - .set REG_BG3PB, REG_BASE + OFFSET_REG_BG3PB - .set REG_BG3PC, REG_BASE + OFFSET_REG_BG3PC - .set REG_BG3PD, REG_BASE + OFFSET_REG_BG3PD - .set REG_BG3X_L, REG_BASE + OFFSET_REG_BG3X_L - .set REG_BG3X_H, REG_BASE + OFFSET_REG_BG3X_H - .set REG_BG3Y_L, REG_BASE + OFFSET_REG_BG3Y_L - .set REG_BG3Y_H, REG_BASE + OFFSET_REG_BG3Y_H - .set REG_WIN0H, REG_BASE + OFFSET_REG_WIN0H - .set REG_WIN1H, REG_BASE + OFFSET_REG_WIN1H - .set REG_WIN0V, REG_BASE + OFFSET_REG_WIN0V - .set REG_WIN1V, REG_BASE + OFFSET_REG_WIN1V - .set REG_WININ, REG_BASE + OFFSET_REG_WININ - .set REG_WINOUT, REG_BASE + OFFSET_REG_WINOUT - .set REG_MOSAIC, REG_BASE + OFFSET_REG_MOSAIC - .set REG_BLDCNT, REG_BASE + OFFSET_REG_BLDCNT - .set REG_BLDALPHA, REG_BASE + OFFSET_REG_BLDALPHA - .set REG_BLDY, REG_BASE + OFFSET_REG_BLDY - - .set REG_SOUND1CNT, REG_BASE + OFFSET_REG_SOUND1CNT - .set REG_SOUND1CNT_L, REG_BASE + OFFSET_REG_SOUND1CNT_L - .set REG_NR10, REG_BASE + OFFSET_REG_NR10 - .set REG_SOUND1CNT_H, REG_BASE + OFFSET_REG_SOUND1CNT_H - .set REG_NR11, REG_BASE + OFFSET_REG_NR11 - .set REG_NR12, REG_BASE + OFFSET_REG_NR12 - .set REG_SOUND1CNT_X, REG_BASE + OFFSET_REG_SOUND1CNT_X - .set REG_NR13, REG_BASE + OFFSET_REG_NR13 - .set REG_NR14, REG_BASE + OFFSET_REG_NR14 - .set REG_SOUND2CNT, REG_BASE + OFFSET_REG_SOUND2CNT - .set REG_SOUND2CNT_L, REG_BASE + OFFSET_REG_SOUND2CNT_L - .set REG_NR21, REG_BASE + OFFSET_REG_NR21 - .set REG_NR22, REG_BASE + OFFSET_REG_NR22 - .set REG_SOUND2CNT_H, REG_BASE + OFFSET_REG_SOUND2CNT_H - .set REG_NR23, REG_BASE + OFFSET_REG_NR23 - .set REG_NR24, REG_BASE + OFFSET_REG_NR24 - .set REG_SOUND3CNT, REG_BASE + OFFSET_REG_SOUND3CNT - .set REG_SOUND3CNT_L, REG_BASE + OFFSET_REG_SOUND3CNT_L - .set REG_NR30, REG_BASE + OFFSET_REG_NR30 - .set REG_SOUND3CNT_H, REG_BASE + OFFSET_REG_SOUND3CNT_H - .set REG_NR31, REG_BASE + OFFSET_REG_NR31 - .set REG_NR32, REG_BASE + OFFSET_REG_NR32 - .set REG_SOUND3CNT_X, REG_BASE + OFFSET_REG_SOUND3CNT_X - .set REG_NR33, REG_BASE + OFFSET_REG_NR33 - .set REG_NR34, REG_BASE + OFFSET_REG_NR34 - .set REG_SOUND4CNT, REG_BASE + OFFSET_REG_SOUND4CNT - .set REG_SOUND4CNT_L, REG_BASE + OFFSET_REG_SOUND4CNT_L - .set REG_NR41, REG_BASE + OFFSET_REG_NR41 - .set REG_NR42, REG_BASE + OFFSET_REG_NR42 - .set REG_SOUND4CNT_H, REG_BASE + OFFSET_REG_SOUND4CNT_H - .set REG_NR43, REG_BASE + OFFSET_REG_NR43 - .set REG_NR44, REG_BASE + OFFSET_REG_NR44 - .set REG_SOUNDCNT, REG_BASE + OFFSET_REG_SOUNDCNT - .set REG_SOUNDCNT_L, REG_BASE + OFFSET_REG_SOUNDCNT_L - .set REG_NR50, REG_BASE + OFFSET_REG_NR50 - .set REG_NR51, REG_BASE + OFFSET_REG_NR51 - .set REG_SOUNDCNT_H, REG_BASE + OFFSET_REG_SOUNDCNT_H - .set REG_SOUNDCNT_X, REG_BASE + OFFSET_REG_SOUNDCNT_X - .set REG_NR52, REG_BASE + OFFSET_REG_NR52 - .set REG_SOUNDBIAS, REG_BASE + OFFSET_REG_SOUNDBIAS - .set REG_WAVE_RAM, REG_BASE + OFFSET_REG_WAVE_RAM - .set REG_WAVE_RAM0, REG_BASE + OFFSET_REG_WAVE_RAM0 - .set REG_WAVE_RAM0_L, REG_BASE + OFFSET_REG_WAVE_RAM0_L - .set REG_WAVE_RAM0_H, REG_BASE + OFFSET_REG_WAVE_RAM0_H - .set REG_WAVE_RAM1, REG_BASE + OFFSET_REG_WAVE_RAM1 - .set REG_WAVE_RAM1_L, REG_BASE + OFFSET_REG_WAVE_RAM1_L - .set REG_WAVE_RAM1_H, REG_BASE + OFFSET_REG_WAVE_RAM1_H - .set REG_WAVE_RAM2, REG_BASE + OFFSET_REG_WAVE_RAM2 - .set REG_WAVE_RAM2_L, REG_BASE + OFFSET_REG_WAVE_RAM2_L - .set REG_WAVE_RAM2_H, REG_BASE + OFFSET_REG_WAVE_RAM2_H - .set REG_WAVE_RAM3, REG_BASE + OFFSET_REG_WAVE_RAM3 - .set REG_WAVE_RAM3_L, REG_BASE + OFFSET_REG_WAVE_RAM3_L - .set REG_WAVE_RAM3_H, REG_BASE + OFFSET_REG_WAVE_RAM3_H - .set REG_FIFO, REG_BASE + OFFSET_REG_FIFO - .set REG_FIFO_A, REG_BASE + OFFSET_REG_FIFO_A - .set REG_FIFO_A_L, REG_BASE + OFFSET_REG_FIFO_A_L - .set REG_FIFO_A_H, REG_BASE + OFFSET_REG_FIFO_A_H - .set REG_FIFO_B, REG_BASE + OFFSET_REG_FIFO_B - .set REG_FIFO_B_L, REG_BASE + OFFSET_REG_FIFO_B_L - .set REG_FIFO_B_H, REG_BASE + OFFSET_REG_FIFO_B_H - - .set REG_DMA0, REG_BASE + OFFSET_REG_DMA0 - .set REG_DMA0SAD, REG_BASE + OFFSET_REG_DMA0SAD - .set REG_DMA0SAD_L, REG_BASE + OFFSET_REG_DMA0SAD_L - .set REG_DMA0SAD_H, REG_BASE + OFFSET_REG_DMA0SAD_H - .set REG_DMA0DAD, REG_BASE + OFFSET_REG_DMA0DAD - .set REG_DMA0DAD_L, REG_BASE + OFFSET_REG_DMA0DAD_L - .set REG_DMA0DAD_H, REG_BASE + OFFSET_REG_DMA0DAD_H - .set REG_DMA0CNT, REG_BASE + OFFSET_REG_DMA0CNT - .set REG_DMA0CNT_L, REG_BASE + OFFSET_REG_DMA0CNT_L - .set REG_DMA0CNT_H, REG_BASE + OFFSET_REG_DMA0CNT_H - .set REG_DMA1, REG_BASE + OFFSET_REG_DMA1 - .set REG_DMA1SAD, REG_BASE + OFFSET_REG_DMA1SAD - .set REG_DMA1SAD_L, REG_BASE + OFFSET_REG_DMA1SAD_L - .set REG_DMA1SAD_H, REG_BASE + OFFSET_REG_DMA1SAD_H - .set REG_DMA1DAD, REG_BASE + OFFSET_REG_DMA1DAD - .set REG_DMA1DAD_L, REG_BASE + OFFSET_REG_DMA1DAD_L - .set REG_DMA1DAD_H, REG_BASE + OFFSET_REG_DMA1DAD_H - .set REG_DMA1CNT, REG_BASE + OFFSET_REG_DMA1CNT - .set REG_DMA1CNT_L, REG_BASE + OFFSET_REG_DMA1CNT_L - .set REG_DMA1CNT_H, REG_BASE + OFFSET_REG_DMA1CNT_H - .set REG_DMA2, REG_BASE + OFFSET_REG_DMA2 - .set REG_DMA2SAD, REG_BASE + OFFSET_REG_DMA2SAD - .set REG_DMA2SAD_L, REG_BASE + OFFSET_REG_DMA2SAD_L - .set REG_DMA2SAD_H, REG_BASE + OFFSET_REG_DMA2SAD_H - .set REG_DMA2DAD, REG_BASE + OFFSET_REG_DMA2DAD - .set REG_DMA2DAD_L, REG_BASE + OFFSET_REG_DMA2DAD_L - .set REG_DMA2DAD_H, REG_BASE + OFFSET_REG_DMA2DAD_H - .set REG_DMA2CNT, REG_BASE + OFFSET_REG_DMA2CNT - .set REG_DMA2CNT_L, REG_BASE + OFFSET_REG_DMA2CNT_L - .set REG_DMA2CNT_H, REG_BASE + OFFSET_REG_DMA2CNT_H - .set REG_DMA3, REG_BASE + OFFSET_REG_DMA3 - .set REG_DMA3SAD, REG_BASE + OFFSET_REG_DMA3SAD - .set REG_DMA3SAD_L, REG_BASE + OFFSET_REG_DMA3SAD_L - .set REG_DMA3SAD_H, REG_BASE + OFFSET_REG_DMA3SAD_H - .set REG_DMA3DAD, REG_BASE + OFFSET_REG_DMA3DAD - .set REG_DMA3DAD_L, REG_BASE + OFFSET_REG_DMA3DAD_L - .set REG_DMA3DAD_H, REG_BASE + OFFSET_REG_DMA3DAD_H - .set REG_DMA3CNT, REG_BASE + OFFSET_REG_DMA3CNT - .set REG_DMA3CNT_L, REG_BASE + OFFSET_REG_DMA3CNT_L - .set REG_DMA3CNT_H, REG_BASE + OFFSET_REG_DMA3CNT_H - - .set REG_TM0CNT, REG_BASE + OFFSET_REG_TM0CNT - .set REG_TM0CNT_L, REG_BASE + OFFSET_REG_TM0CNT_L - .set REG_TM0CNT_H, REG_BASE + OFFSET_REG_TM0CNT_H - .set REG_TM1CNT, REG_BASE + OFFSET_REG_TM1CNT - .set REG_TM1CNT_L, REG_BASE + OFFSET_REG_TM1CNT_L - .set REG_TM1CNT_H, REG_BASE + OFFSET_REG_TM1CNT_H - .set REG_TM2CNT, REG_BASE + OFFSET_REG_TM2CNT - .set REG_TM2CNT_L, REG_BASE + OFFSET_REG_TM2CNT_L - .set REG_TM2CNT_H, REG_BASE + OFFSET_REG_TM2CNT_H - .set REG_TM3CNT, REG_BASE + OFFSET_REG_TM3CNT - .set REG_TM3CNT_L, REG_BASE + OFFSET_REG_TM3CNT_L - .set REG_TM3CNT_H, REG_BASE + OFFSET_REG_TM3CNT_H - - .set REG_SIOCNT, REG_BASE + OFFSET_REG_SIOCNT - .set REG_SIODATA8, REG_BASE + OFFSET_REG_SIODATA8 - .set REG_SIODATA32, REG_BASE + OFFSET_REG_SIODATA32 - .set REG_SIOMLT_SEND, REG_BASE + OFFSET_REG_SIOMLT_SEND - .set REG_SIOMLT_RECV, REG_BASE + OFFSET_REG_SIOMLT_RECV - .set REG_SIOMULTI0, REG_BASE + OFFSET_REG_SIOMULTI0 - .set REG_SIOMULTI1, REG_BASE + OFFSET_REG_SIOMULTI1 - .set REG_SIOMULTI2, REG_BASE + OFFSET_REG_SIOMULTI2 - .set REG_SIOMULTI3, REG_BASE + OFFSET_REG_SIOMULTI3 - - .set REG_KEYINPUT, REG_BASE + OFFSET_REG_KEYINPUT - .set REG_KEYCNT, REG_BASE + OFFSET_REG_KEYCNT - - .set REG_RCNT, REG_BASE + OFFSET_REG_RCNT - - .set REG_JOYCNT, REG_BASE + OFFSET_REG_JOYCNT - .set REG_JOYSTAT, REG_BASE + OFFSET_REG_JOYSTAT - .set REG_JOY_RECV, REG_BASE + OFFSET_REG_JOY_RECV - .set REG_JOY_RECV_L, REG_BASE + OFFSET_REG_JOY_RECV_L - .set REG_JOY_RECV_H, REG_BASE + OFFSET_REG_JOY_RECV_H - .set REG_JOY_TRANS, REG_BASE + OFFSET_REG_JOY_TRANS - .set REG_JOY_TRANS_L, REG_BASE + OFFSET_REG_JOY_TRANS_L - .set REG_JOY_TRANS_H, REG_BASE + OFFSET_REG_JOY_TRANS_H - - .set REG_IME, REG_BASE + OFFSET_REG_IME - .set REG_IE, REG_BASE + OFFSET_REG_IE - .set REG_IF, REG_BASE + OFFSET_REG_IF - - .set REG_WAITCNT, REG_BASE + OFFSET_REG_WAITCNT - -@ DMA register constants - - .set DMA_DEST_INC, 0x0000 - .set DMA_DEST_DEC, 0x0020 - .set DMA_DEST_FIXED, 0x0040 - .set DMA_DEST_RELOAD, 0x0060 - .set DMA_SRC_INC, 0x0000 - .set DMA_SRC_DEC, 0x0080 - .set DMA_SRC_FIXED, 0x0100 - .set DMA_REPEAT, 0x0200 - .set DMA_16BIT, 0x0000 - .set DMA_32BIT, 0x0400 - .set DMA_DREQ_ON, 0x0800 - .set DMA_START_NOW, 0x0000 - .set DMA_START_VBLANK, 0x1000 - .set DMA_START_HBLANK, 0x2000 - .set DMA_START_SPECIAL, 0x3000 - .set DMA_INTR_ENABLE, 0x4000 - .set DMA_ENABLE, 0x8000 - -@ OAM attribute constants - - .set OAM_OBJ_NORMAL, 0x00000000 - .set OAM_OBJ_BLEND, 0x00000400 - .set OAM_OBJ_WINDOW, 0x00000800 - - .set OAM_AFFINE_NONE, 0x00000000 - .set OAM_AFFINE_NORMAL_SIZE, 0x00000100 - .set OAM_OBJ_DISABLED, 0x00000200 - .set OAM_AFFINE_DOUBLE_SIZE, 0x00000300 - - .set OAM_MOSAIC_OFF, 0x00000000 - .set OAM_MOSAIC_ON, 0x00001000 - - .set OAM_4BPP, 0x00000000 - .set OAM_8BPP, 0x00002000 - - .set OAM_H_FLIP, 0x10000000 - .set OAM_V_FLIP, 0x20000000 - - .set OAM_SQUARE, 0x00000000 - .set OAM_H_RECTANGLE, 0x00004000 - .set OAM_V_RECTANGLE, 0x00008000 - .set OAM_SIZE_0, 0x00000000 - .set OAM_SIZE_1, 0x40000000 - .set OAM_SIZE_2, 0x80000000 - .set OAM_SIZE_3, 0xc0000000 - - .set OAM_SIZE_8x8, OAM_SIZE_0 | OAM_SQUARE - .set OAM_SIZE_16x16, OAM_SIZE_1 | OAM_SQUARE - .set OAM_SIZE_32x32, OAM_SIZE_2 | OAM_SQUARE - .set OAM_SIZE_64x64, OAM_SIZE_3 | OAM_SQUARE - - .set OAM_SIZE_16x8, OAM_SIZE_0 | OAM_H_RECTANGLE - .set OAM_SIZE_32x8, OAM_SIZE_1 | OAM_H_RECTANGLE - .set OAM_SIZE_32x16, OAM_SIZE_2 | OAM_H_RECTANGLE - .set OAM_SIZE_64x32, OAM_SIZE_3 | OAM_H_RECTANGLE - - .set OAM_SIZE_8x16, OAM_SIZE_0 | OAM_V_RECTANGLE - .set OAM_SIZE_8x32, OAM_SIZE_1 | OAM_V_RECTANGLE - .set OAM_SIZE_16x32, OAM_SIZE_2 | OAM_V_RECTANGLE - .set OAM_SIZE_32x64, OAM_SIZE_3 | OAM_V_RECTANGLE diff --git a/berry_fix/payload/graphics/debug_digits.png b/berry_fix/payload/graphics/debug_digits.png deleted file mode 100644 index edf0d36c96f0e22f213b6ea63ccdaf77acdef638..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^96%hv0wfrYc($DZQn{Wkjv*3LODA09Wl-dBzFB`` zlVdg0qs&EhCQbUf8BM1(PAL3RD>?Nk^zn_1vy*N<@ly7zNx!eZU3Bl`k>(9t$Wrs?N=11*XBQM{ya-RJmLRm_9IbdeJ`9p QtAHHf>FVdQ&MBb@00o6a2><{9 diff --git a/berry_fix/payload/graphics/msg_box.png b/berry_fix/payload/graphics/msg_box.png deleted file mode 100644 index 00d1bbe37ed295a83eabd4dd35f4356fbd9f0ba1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2631 zcmZ`*c{J2}8~@G>W6RK?FpRyp2%#8UTMX0HSduM!VU#RGOd`K)8;qqa$!$pXr8ip= zvV_S}NvXI@*_W(i$)36HdEYfNZ%~{ z?6^Eb&!B&n#ClxIpgUfpJ@#JS2Y~A%-q_HFOj~jqsh&E?-~7wmG0221p3~_B+%nUQ zRIxw4lI$52*h_uW+kyu3_mNO<5iE}+1>V+L zyPSTnU9a_vy-mr~ik1F?3+ASD#Igcr%gsS}MTsMnV{{kys^;kkvGQvbL~peEUgz^_ zKprz0aBE;`D7*HPowmKNy*i~JDM0l?lq3-LY~Mdg=ZP&90EIm6jV63{Z?xyk{Ru4> zd`c&@aw=WjX1?FF_b!=~zPfIX8=0G1c^CHQ71OoIOGRru6n2fGgDXRm$I-ZYe+ufU z4otFo{4$g{P@1A1W<52(-fpn;y`_ced^SP=@KtskxBYPhSbc@(Ewb{@PrrxtAA?m* zmvn}ZV#_;UBLJ#9x6e$u^p=C5g-CdX!+W>j>{D`jEXscL90L>s4y|xrbjeW(K;wUxh@lf%^PF)tJwQ zO>Dqjiv+F{naX*`1Bnxod8o-Y?I43ZOOnhz2wcIn24WWG-4YoslU=J^yq*u#ECU4U32g;n;<_f76g}FHwC5?&!zB#j5vc^Kwju&Tgbd?Po zMkA(gBysvzo73^)qTP^R0U`Zg@fVCn5Ro=E^t)xeYF8*G62*5W7^INtF7 z5B5+obA}ovLDb80><*9i31B~FeBxsNhJBoguv=FV0HRuf%@!{&X90r_UJ{)7PMomq z;Ik?v5sa-3dyth2SL09fmsQkSWqAPIMid{!<;SLaz2fV%@{u!qkWU>91c!Qw&Q(_i z=RMVE^58J?WB9S|qXn&M{0=mr_N$s2(0Z3P>$fW z>x<9YE|IJBR@|J|$s7D~Gyx_;1_r%~L=Kz1Cdvzkdx#P>(Ff2gI5PUI} zA$9tZIK@RgvQVyMQGoH7aHXuEy8VSNP(bcdZL|4oy8@BAr`t}6kjCc3k6;@qheI9H z3&i*eX<|886Gk2N4~uzi>^q*PoVS$K8SeFaxKG(UHDcvYoxhQe7R1=Rc$lttpOVvw zO?rvtM%;$bci_H)sHWB9Q*fgoa;_T-<^LnSz>t>eAuX_4hg}vM7DJgC8iNe>vsSj# z53gr*r3NTPEHB?C-Qm!1ZES5yNuAnV<<*=`W@Iy(I6Eq1L-|&^6#=u4+apC_eq`SDGL>;~ENd&nLr%JQKk0#fb7lkiOHx*=pZ>{NKAT&P z^tA+p(s_cy=K8p{1-I40rw#!gebl^4@y@oASh+=k5f+v=xHIY8E2v*MWEE-7#V-rd8GTAvV+U!N2k^G0a6Dxz@Y*9> ztTo)=q(mV%Q}i1ZrVa#!KFk!2;`$zyuGwd5&SyPMI~i7wDI6?uwl}}HD-Oa}x&T@D zSR#i(?^4A#IgbAE)sS)sK*D=wgEF3wxdACR^TqZ(hXAS9P5$@RvFee9y=AI?xlAb| z{?;Bl^CQAPskcxZJ%tZK`uC_5hoiaWuE()WyI-K)wEbh2#sk= zL|vF9^5uH~Xo{hiw$%G*8F6vezlgiPX|QeRcB4z6QCr%}`-*|9Mh^sT8E))qcJI)# z^{uCMl@V^v4d(ZTI#q&#&0nkx-LTZg>&*S6cjz*0WOTgJlsN7ZyLwPkJ&$Q4`~#xK z$+WEqy-sPxRh$hQAan0$2JLkYmy^Ysa}*5rmBx6-z4`scK?at8u(g}cp;pIJ52g0} ztz|Xc*`@}FKe$4>`>fM=(*tB;<3uzR5eD+Uc%3#XWg&*TWnOn$_t)*m4ep>{R^(Bm zEFLw@h$AODR8EP?OjQeT%V*M$M0xhhEzKbk<`G*u0NF!Ac}JOMCvb4|CO@n)l+s3DZR!Z zc-A{zbnPJ3a`Dj{`uZ5c>(0yZftBHcjUCyS_kITK#BYl3GH}zdfKQ`$w<2RaSWe1c zc3|p}Z%XuMN7nIVnZ0q^2vc;AVeJY^#G4R|pBlME{RL(=#7qDH diff --git a/berry_fix/payload/graphics/msg_box.tilemap b/berry_fix/payload/graphics/msg_box.tilemap deleted file mode 100644 index 5b82401bad50d7be7f5ca611a9fd6c0eec53d25a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeI01&|a+6o&tA;SO$r!`)qiy9alIy99T)K#QAv2TI*0p|g&fF7=% zKJszuEy$u!3T;32RTzbppR5X}@QNURMN}k3Run~5G(}eo#Z)ZWEUs$r?kLtD^rL=K zZ}m}M^;3Th&_E5+U=7hw4byOq&`6EaXpPZWjnnu5y}wHzTX7Uu@f2SPJlEVd{^@9+ zp40vWP1Gb!))Y;Z&1&;EwvSs@&+o<+L+@uZS?vz8myq~3?}2}V{~UAhW-;$Qn{(R1 zT`vchOjSFu9L17QiIiALlvK%-Tq%@Nsgzo2^p(;oozg3VGAffYD~qx!TOh(1{IdM4 zX_~GXnyFcutvQ;jd77^UTBt=@tR-5iWm>KkTB%>O>TmSfl|wm|OSzRtd6iH3^|h;) zubp0w&AtEd=tMr{gY#i=)l`(fMATMMY53aPM)sHlpmxJsy` zN~yHUsI0zGIh9uhRa7NaRuxrMHP6^C{ss5=@%H?K9=~NM%QuvxJQb)&B`Q;es#K#o zHK<7~YEy^0d`ms*(}0FFqA`w0FrL3!=dQbeBjvr(F->l!YMO(E^+qFYGwM)CTM|-tT`*lDEbx4PGL`QW@$8|y{ zKZ-wDtE+};s+MZ2j_T@L)l+>nP(w9RV>MAzHB)o7P)oH^Yqe2ZwKGOA)^F=6oz@wh z)w$5;bwL+(Ntbm+S9ML-bwf9GOSg4LcXdzq^*|5xNUj{g&|BK8gF32{I;)GmQ&)A< z_v)@5>Zx9yxjOv)ah2=-Eq~~-p6IEb>A7C$rC#Z^-sr8~>HVkZO=cf9zmWXHf&ZYs z|Bf-dS%NzM|GPfu{B1&0n$esVw4@cSX+vAu(Vh-;q!XR#!gq9~8{gBN9`vM_lfD7` zy}?axahp5bLT`Ri2M z?Hk`upRG4Y=+>Lyw=*+x^Vh>~eKNnDGjRJanDaZV&1?j>7{cO*m2iY70{%oK5|N2QRH7NwwR!R|_xt|?Kk^g3=|f-o(VqbfWDtWH z!cc}WoDqy<6r-Ivuc3DF$H?EJ6N8wcoBRv_&NG39qg{)*FyJu`Se}85g)0x3c zW-*&N%w-<)S-?UTv6v++Wf{v^!AgE%6~AKp@c%DM4sw!<+~grI`N+@L6rdo5C`=KG zQjFr1pd_Uz?Xm3gfpPzq-&oBW*0PTEY+xgs*v#*2VJq9%&JK36i{0#D@89b~@?X;o z{}TK%_5J0_KaBV_wSN2C{N3xn$@SZlKbidga_d9l&%5#Gt~34^B(vT{4;Oe X=8W7By?GCWJU^LcufywK!he4PFQf!E diff --git a/berry_fix/payload/include/constants/game_stat.h b/berry_fix/payload/include/constants/game_stat.h deleted file mode 100644 index 47d703d8537c..000000000000 --- a/berry_fix/payload/include/constants/game_stat.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef GUARD_CONSTANTS_GAME_STAT_H -#define GUARD_CONSTANTS_GAME_STAT_H - -#define GAME_STAT_SAVED_GAME 0 -#define GAME_STAT_FIRST_HOF_PLAY_TIME 1 -#define GAME_STAT_STARTED_TRENDS 2 -#define GAME_STAT_PLANTED_BERRIES 3 -#define GAME_STAT_TRADED_BIKES 4 -#define GAME_STAT_STEPS 5 -#define GAME_STAT_GOT_INTERVIEWED 6 -#define GAME_STAT_TOTAL_BATTLES 7 -#define GAME_STAT_WILD_BATTLES 8 -#define GAME_STAT_TRAINER_BATTLES 9 -#define GAME_STAT_ENTERED_HOF 10 -#define GAME_STAT_POKEMON_CAPTURES 11 -#define GAME_STAT_FISHING_CAPTURES 12 -#define GAME_STAT_HATCHED_EGGS 13 -#define GAME_STAT_EVOLVED_POKEMON 14 -#define GAME_STAT_USED_POKECENTER 15 -#define GAME_STAT_RESTED_AT_HOME 16 -#define GAME_STAT_ENTERED_SAFARI_ZONE 17 -#define GAME_STAT_USED_CUT 18 -#define GAME_STAT_USED_ROCK_SMASH 19 -#define GAME_STAT_MOVED_SECRET_BASE 20 -#define GAME_STAT_POKEMON_TRADES 21 -#define GAME_STAT_UNKNOWN_22 22 -#define GAME_STAT_LINK_BATTLE_WINS 23 -#define GAME_STAT_LINK_BATTLE_LOSSES 24 -#define GAME_STAT_LINK_BATTLE_DRAWS 25 -#define GAME_STAT_USED_SPLASH 26 -#define GAME_STAT_USED_STRUGGLE 27 -#define GAME_STAT_SLOT_JACKPOTS 28 -#define GAME_STAT_CONSECUTIVE_ROULETTE_WINS 29 -#define GAME_STAT_ENTERED_BATTLE_TOWER 30 -#define GAME_STAT_UNKNOWN_31 31 -#define GAME_STAT_BATTLE_TOWER_BEST_STREAK 32 -#define GAME_STAT_POKEBLOCKS 33 -#define GAME_STAT_POKEBLOCKS_WITH_FRIENDS 34 -#define GAME_STAT_WON_LINK_CONTEST 35 -#define GAME_STAT_ENTERED_CONTEST 36 -#define GAME_STAT_WON_CONTEST 37 -#define GAME_STAT_SHOPPED 38 -#define GAME_STAT_USED_ITEMFINDER 39 -#define GAME_STAT_GOT_RAINED_ON 40 -#define GAME_STAT_CHECKED_POKEDEX 41 -#define GAME_STAT_RECEIVED_RIBBONS 42 -#define GAME_STAT_JUMPED_DOWN_LEDGES 43 -#define GAME_STAT_WATCHED_TV 44 -#define GAME_STAT_CHECKED_CLOCK 45 -#define GAME_STAT_WON_POKEMON_LOTTERY 46 -#define GAME_STAT_USED_DAYCARE 47 -#define GAME_STAT_RODE_CABLE_CAR 48 -#define GAME_STAT_ENTERED_HOT_SPRINGS 49 -#define NUM_GAME_STATS 50 - -#endif // GUARD_CONSTANTS_GAME_STAT_H diff --git a/berry_fix/payload/include/constants/vars.h b/berry_fix/payload/include/constants/vars.h deleted file mode 100644 index 4b40c1d8c330..000000000000 --- a/berry_fix/payload/include/constants/vars.h +++ /dev/null @@ -1,196 +0,0 @@ -#ifndef GUARD_CONSTANTS_VARS_H -#define GUARD_CONSTANTS_VARS_H - -#define VAR_0x3F20 0x3F20 - -#define VARS_START 0x4000 - -// temporary vars -// The first 0x10 vars are are temporary--they are cleared every time a map is loaded. -#define VAR_TEMP_0 0x4000 -#define VAR_TEMP_1 0x4001 -#define VAR_TEMP_2 0x4002 -#define VAR_TEMP_3 0x4003 -#define VAR_TEMP_4 0x4004 -#define VAR_TEMP_5 0x4005 -#define VAR_TEMP_6 0x4006 -#define VAR_TEMP_7 0x4007 -#define VAR_TEMP_8 0x4008 -#define VAR_TEMP_9 0x4009 -#define VAR_TEMP_A 0x400A -#define VAR_TEMP_B 0x400B -#define VAR_TEMP_C 0x400C -#define VAR_TEMP_D 0x400D -#define VAR_TEMP_E 0x400E -#define VAR_TEMP_F 0x400F - -// object gfx id vars -// These 0x10 vars are used to dynamically control a event object's sprite. -// For example, the rival's sprite id is dynamically set based on the player's gender. -// See VarGetEventObjectGraphicsId(). -#define VAR_OBJ_GFX_ID_0 0x4010 -#define VAR_OBJ_GFX_ID_1 0x4011 -#define VAR_OBJ_GFX_ID_2 0x4012 -#define VAR_OBJ_GFX_ID_3 0x4013 -#define VAR_OBJ_GFX_ID_4 0x4014 -#define VAR_OBJ_GFX_ID_5 0x4015 -#define VAR_OBJ_GFX_ID_6 0x4016 -#define VAR_OBJ_GFX_ID_7 0x4017 -#define VAR_OBJ_GFX_ID_8 0x4018 -#define VAR_OBJ_GFX_ID_9 0x4019 -#define VAR_OBJ_GFX_ID_A 0x401A -#define VAR_OBJ_GFX_ID_B 0x401B -#define VAR_OBJ_GFX_ID_C 0x401C -#define VAR_OBJ_GFX_ID_D 0x401D -#define VAR_OBJ_GFX_ID_E 0x401E -#define VAR_OBJ_GFX_ID_F 0x401F - -// general purpose vars -#define VAR_RECYCLE_GOODS 0x4020 -#define VAR_REPEL_STEP_COUNT 0x4021 -#define VAR_ICE_STEP_COUNT 0x4022 -#define VAR_STARTER_MON 0x4023 // 0=Treecko, 1=Torchic, 2=Mudkip -#define VAR_MIRAGE_RND_H 0x4024 -#define VAR_MIRAGE_RND_L 0x4025 -#define VAR_SECRET_BASE_MAP 0x4026 -#define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 -#define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 -#define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 -#define VAR_HAPPINESS_STEP_COUNTER 0x402A -#define VAR_POISON_STEP_COUNTER 0x402B -#define VAR_RESET_RTC_ENABLE 0x402C -#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D - -#define VAR_DAYS 0x4040 -#define VAR_FANCLUB_UNKNOWN_1 0x4041 // TODO: document these two fanclub vars -#define VAR_FANCLUB_UNKNOWN_2 0x4042 -#define VAR_DEPT_STORE_FLOOR 0x4043 -#define VAR_TRICK_HOUSE_ROOMS_COMPLETED 0x4044 -#define VAR_LOTTERY_PRIZE 0x4045 -#define VAR_NATIONAL_DEX 0x4046 -#define VAR_SHROOMISH_SIZE_RECORD 0x4047 -#define VAR_ASH_GATHER_COUNT 0x4048 -#define VAR_BIRCH_STATE 0x4049 -#define VAR_CRUISE_STEP_COUNT 0x404A -#define VAR_LOTTERY_RND_L 0x404B -#define VAR_LOTTERY_RND_H 0x404C - -#define VAR_BARBOACH_SIZE_RECORD 0x404F -#define VAR_LITTLEROOT_STATE 0x4050 -#define VAR_ROUTE102_ACCESSIBLE 0x4051 - -#define VAR_LAVARIDGE_RIVAL_STATE 0x4053 -#define VAR_CURRENT_SECRET_BASE 0x4054 - -#define VAR_PETALBURG_STATE 0x4057 -#define VAR_SLATEPORT_STATE 0x4058 - -#define VAR_RUSTBORO_STATE 0x405A - -#define VAR_SOOTOPOLIS_STATE 0x405E - -#define VAR_ROUTE101_STATE 0x4060 - -#define VAR_ROUTE103_STATE 0x4062 - -#define VAR_ROUTE110_STATE 0x4069 - -#define VAR_ROUTE116_STATE 0x406F - -#define VAR_ROUTE118_STATE 0x4071 -#define VAR_ROUTE119_STATE 0x4072 - -#define VAR_ROUTE121_STATE 0x4074 -#define VAR_ROUTE128_STATE 0x407B - -#define VAR_LITTLEROOT_HOUSES_STATE 0x4082 // TODO: needs more investigation - -#define VAR_BIRCH_LAB_STATE 0x4084 -#define VAR_PETALBURG_GYM_STATE 0x4085 -#define VAR_LINK_CONTEST_ROOM_STATE 0x4086 -#define VAR_CABLE_CLUB_STATE 0x4087 -#define VAR_CONTEST_LOCATION 0x4088 -#define VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F 0x4089 // TODO: related to decorations -#define VAR_CONTEST_PRIZE_PICKUP 0x408A - -#define VAR_LITTLEROOT_HOUSES_STATE_2 0x408C // TODO: needs more investigation -#define VAR_LITTLEROOT_RIVAL_STATE 0x408D -#define VAR_BOARD_BRINEY_BOAT_ROUTE104_STATE 0x408E -#define VAR_DEVON_CORP_3F_STATE 0x408F -#define VAR_BRINEY_HOUSE_STATE 0x4090 - -#define VAR_LITTLEROOT_INTRO_STATE 0x4092 -#define VAR_MAUVILLE_GYM_STATE 0x4093 -#define VAR_LILYCOVE_MUSEUM_2F_STATE 0x4094 -#define VAR_LILYCOVE_FAN_CLUB_STATE 0x4095 -#define VAR_BRINEY_LOCATION 0x4096 -#define VAR_0x4097 0x4097 // TODO: related to creating new secret base -#define VAR_PETALBURG_WOODS_STATE 0x4098 -#define VAR_LILYCOVE_CONTEST_LOBBY_STATE 0x4099 -#define VAR_RUSTURF_TUNNEL_STATE 0x409a -#define VAR_CAVE_OF_ORIGIN_B4F_STATE 0x409B -#define VAR_ELITE_4_STATE 0x409C - -#define VAR_SLATEPORT_HARBOR_STATE 0x40A0 - -#define VAR_SEAFLOOR_CAVERN_STATE 0x40A2 -#define VAR_CABLE_CAR_STATION_STATE 0x40A3 -#define VAR_SAFARI_ZONE_STATE 0x40A4 -#define VAR_TRICK_HOUSE_ENTRANCE_STATE 0x40A5 -#define VAR_TRICK_HOUSE_ENTRANCE_STATE_2 0x40A6 -#define VAR_TRICK_HOUSE_ENTRANCE_STATE_3 0x40A7 - -#define VAR_CYCLING_CHALLENGE_STATE 0x40A9 -#define VAR_SLATEPORT_MUSEUM_1F_STATE 0x40AA -#define VAR_TRICK_HOUSE_PUZZLE_1_STATE 0x40AB -#define VAR_TRICK_HOUSE_PUZZLE_2_STATE 0x40AC -#define VAR_TRICK_HOUSE_PUZZLE_3_STATE 0x40AD -#define VAR_TRICK_HOUSE_PUZZLE_4_STATE 0x40AE -#define VAR_TRICK_HOUSE_PUZZLE_5_STATE 0x40AF -#define VAR_TRICK_HOUSE_PUZZLE_6_STATE 0x40B0 -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE 0x40B1 -#define VAR_TRICK_HOUSE_PUZZLE_8_STATE 0x40B2 -#define VAR_WEATHER_INSTITUTE_STATE 0x40B3 -#define VAR_PORTHOLE_STATE 0x40B4 -#define VAR_TRICK_HOUSE_STATE 0x40B5 // TODO: needs some further investigation -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE_2 0x40B6 -#define VAR_SLATEPORT_FAN_CLUB_STATE 0x40B7 - -#define VAR_MT_PYRE_STATE 0x40B9 -#define VAR_NEW_MAUVILLE_STATE 0x40BA - -#define VAR_BRAVO_TRAINER_BATTLE_TOWER_ON 0x40BC -#define VAR_JAGGED_PASS_VOLCANIC_ASH_WEATHER 0x40BD -#define VAR_GLASS_WORKSHOP_STATE 0x40BE -#define VAR_METEOR_FALLS_STATE 0x40BF -#define VAR_GAME_CORNER_STATE 0x40C0 -#define VAR_TRICK_HOUSE_PRIZE_PICKUP 0x40C1 -#define VAR_PACIFIDLOG_TM_RECEIVED_DAY 0x40C2 -#define VAR_VICTORY_ROAD_1F_STATE 0x40C3 -#define VAR_FOSSIL_RESURRECTION_STATE 0x40C4 -#define VAR_WHICH_FOSSIL_REVIVED 0x40C5 -#define VAR_STEVENS_HOUSE_STATE 0x40C6 -#define VAR_OLDALE_STATE 0x40C7 - -// special vars -// They are commonly used as parameters to commands, or return values from commands. -#define VAR_SPECIAL_0 0x8000 -#define VAR_SPECIAL_1 0x8001 -#define VAR_SPECIAL_2 0x8002 -#define VAR_SPECIAL_3 0x8003 -#define VAR_SPECIAL_4 0x8004 -#define VAR_SPECIAL_5 0x8005 -#define VAR_SPECIAL_6 0x8006 -#define VAR_SPECIAL_7 0x8007 -#define VAR_SPECIAL_8 0x8008 -#define VAR_SPECIAL_9 0x8009 -#define VAR_SPECIAL_A 0x800A -#define VAR_SPECIAL_B 0x800B -#define FACING 0x800C -#define RESULT 0x800D -#define ITEM_ID 0x800E -#define LAST_TALKED 0x800F -#define CONTEST_RANK 0x8010 -#define CONTEST_CATEGORY 0x8011 - -#endif // GUARD_CONSTANTS_VARS_H diff --git a/berry_fix/payload/include/flash.h b/berry_fix/payload/include/flash.h deleted file mode 100644 index 7fc35896d0e5..000000000000 --- a/berry_fix/payload/include/flash.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef GUARD_FLASH_H -#define GUARD_FLASH_H - -#include "gba/gba.h" - -enum -{ - SECTOR_DAMAGED, - SECTOR_OK, - SECTOR_CHECK, // unused -}; - -enum MsgBoxUpdateMessage -{ - MSGBOX_WILL_NOW_UPDATE = 0, - MSGBOX_HAS_BEEN_UPDATED, - MSGBOX_UNABLE_TO_UPDATE, - MSGBOX_NO_NEED_TO_UPDATE, - MSGBOX_UPDATING -}; - -struct SaveSector -{ - u8 data[0xFF4]; - u16 id; - u16 checksum; - u32 signature; - u32 counter; -}; // size is 0x1000 - -// headless save section? -struct UnkSaveSection -{ - u8 data[0xFF4]; - u32 signature; -}; // size is 0xFF8 - -#define eSaveSection ((struct SaveSector *)0x2020000) - -#define NUM_SECTORS_PER_SAVE_SLOT 14 // Number of sectors occupied by a save slot -#define FILE_SIGNATURE 0x08012025 - -#define SAVE_STATUS_EMPTY 0 -#define SAVE_STATUS_OK 1 -#define SAVE_STATUS_NO_FLASH 4 -#define SAVE_STATUS_ERROR 0xFF - -bool32 flash_maincb_ident_is_valid(void); -bool8 flash_maincb_read_save(u32); -void msg_load_gfx(void); -void msg_display(enum MsgBoxUpdateMessage); -bool32 flash_maincb_check_need_reset_pacifidlog_tm(void); -bool32 flash_maincb_reset_pacifidlog_tm(void); - -#endif //GUARD_FLASH_H diff --git a/berry_fix/payload/include/gba/defines.h b/berry_fix/payload/include/gba/defines.h deleted file mode 100644 index 4037af584640..000000000000 --- a/berry_fix/payload/include/gba/defines.h +++ /dev/null @@ -1,87 +0,0 @@ -#ifndef GUARD_GBA_DEFINES_H -#define GUARD_GBA_DEFINES_H - -#include - -#define TRUE 1 -#define FALSE 0 - -#define BSS_DATA __attribute__((section(".bss"))) -#define IWRAM_DATA __attribute__((section("iwram_data"))) -#define EWRAM_DATA __attribute__((section("ewram_data"))) -#define UNUSED __attribute__((unused)) -#define NAKED __attribute__((naked)) - -#define ALIGNED(n) __attribute__((aligned(n))) - -#define SOUND_INFO_PTR (*(struct SoundInfo **)0x3007FF0) -#define INTR_CHECK (*(u16 *)0x3007FF8) -#define INTR_VECTOR (*(void **)0x3007FFC) - -#define EWRAM_START 0x02000000 -#define EWRAM_END (EWRAM_START + 0x40000) -#define IWRAM_START 0x03000000 -#define IWRAM_END (IWRAM_START + 0x8000) - -#define PLTT 0x5000000 -#define PLTT_SIZE 0x400 - -#define BG_PLTT PLTT -#define BG_PLTT_SIZE 0x200 - -#define OBJ_PLTT (PLTT + 0x200) -#define OBJ_PLTT_SIZE 0x200 - -#define VRAM 0x6000000 -#define VRAM_SIZE 0x18000 - -#define BG_VRAM VRAM -#define BG_VRAM_SIZE 0x10000 -#define BG_CHAR_SIZE 0x4000 -#define BG_SCREEN_SIZE 0x800 -#define BG_CHAR_ADDR(n) (void *)(BG_VRAM + (0x4000 * (n))) -#define BG_SCREEN_ADDR(n) (void *)(BG_VRAM + (0x800 * (n))) -#define BG_TILE_ADDR(n) (void *)(BG_VRAM + (0x80 * (n))) - -#define BG_TILE_H_FLIP(n) (0x400 + (n)) -#define BG_TILE_V_FLIP(n) (0x800 + (n)) - -// text-mode BG -#define OBJ_VRAM0 (void *)(VRAM + 0x10000) -#define OBJ_VRAM0_SIZE 0x8000 - -// bitmap-mode BG -#define OBJ_VRAM1 (void *)(VRAM + 0x14000) -#define OBJ_VRAM1_SIZE 0x4000 - -#define OAM 0x7000000 -#define OAM_SIZE 0x400 - -#define ROM_HEADER_SIZE 0xC0 - -#define DISPLAY_WIDTH 240 -#define DISPLAY_HEIGHT 160 - -#define TILE_SIZE_4BPP 32 -#define TILE_SIZE_8BPP 64 - -#define TILE_OFFSET_4BPP(n) ((n) * TILE_SIZE_4BPP) -#define TILE_OFFSET_8BPP(n) ((n) * TILE_SIZE_8BPP) - -#define TOTAL_OBJ_TILE_COUNT 1024 - -#define RGB(r, g, b) ((r) | ((g) << 5) | ((b) << 10)) -#define RGB2(r, g, b) (((b) << 10) | ((g) << 5) | (r)) -#define _RGB(r, g, b) ((((b) & 0x1F) << 10) + (((g) & 0x1F) << 5) + ((r) & 0x1F)) - -#define RGB_BLACK RGB(0, 0, 0) -#define RGB_WHITE RGB(31, 31, 31) -#define RGB_RED RGB(31, 0, 0) -#define RGB_GREEN RGB(0, 31, 0) -#define RGB_BLUE RGB(0, 0, 31) -#define RGB_YELLOW RGB(31, 31, 0) -#define RGB_MAGENTA RGB(31, 0, 31) -#define RGB_CYAN RGB(0, 31, 31) -#define RGB_WHITEALPHA (RGB_WHITE | 0x8000) - -#endif // GUARD_GBA_DEFINES_H diff --git a/berry_fix/payload/include/gba/flash_internal.h b/berry_fix/payload/include/gba/flash_internal.h deleted file mode 100644 index 6fbec31f1b49..000000000000 --- a/berry_fix/payload/include/gba/flash_internal.h +++ /dev/null @@ -1,85 +0,0 @@ -#ifndef GUARD_GBA_FLASH_INTERNAL_H -#define GUARD_GBA_FLASH_INTERNAL_H - -#include "gba/gba.h" - -#define FLASH_BASE ((u8 *)0xE000000) - -#define FLASH_WRITE(addr, data) ((*(vu8 *)(FLASH_BASE + (addr))) = (data)) - -#define FLASH_ROM_SIZE_1M 131072 // 1 megabit ROM - -#define SECTORS_PER_BANK 16 - -struct FlashSector -{ - u32 size; - u8 shift; - u16 count; - u16 top; -}; - -struct FlashType { - u32 romSize; - struct FlashSector sector; - u16 wait[2]; // game pak bus read/write wait - - // TODO: add support for anonymous unions/structs if possible - union { - struct { - u8 makerId; - u8 deviceId; - } separate; - u16 joined; - } ids; -}; - -struct FlashSetupInfo -{ - u16 (*programFlashByte)(u16, u32, u8); - u16 (*programFlashSector)(u16, void *); - u16 (*eraseFlashChip)(void); - u16 (*eraseFlashSector)(u16); - u16 (*WaitForFlashWrite)(u8, u8 *, u8); - const u16 *maxTime; - struct FlashType type; -}; - -extern u16 gFlashNumRemainingBytes; - -extern u16 (*ProgramFlashByte)(u16, u32, u8); -extern u16 (*ProgramFlashSector)(u16, void *); -extern u16 (*EraseFlashChip)(void); -extern u16 (*EraseFlashSector)(u16); -extern u16 (*WaitForFlashWrite)(u8, u8 *, u8); -extern const u16 *gFlashMaxTime; -extern const struct FlashType *gFlash; - -extern u8 (*PollFlashStatus)(u8 *); -extern u8 gFlashTimeoutFlag; - -extern const struct FlashSetupInfo MX29L010; -extern const struct FlashSetupInfo LE26FV10N1TS; -extern const struct FlashSetupInfo DefaultFlash; - -void SwitchFlashBank(u8 bankNum); -u16 ReadFlashId(void); -void StartFlashTimer(u8 phase); -void SetReadFlash1(u16 *dest); -void StopFlashTimer(void); -u16 SetFlashTimerIntr(u8 timerNum, void (**intrFunc)(void)); -u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src); -void ReadFlash(u16 sectorNum, u32 offset, void *dest, u32 size); -u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, void *dataSrc, u32 n); - -u16 WaitForFlashWrite_Common(u8 phase, u8 *addr, u8 lastData); - -u16 EraseFlashChip_MX(void); -u16 EraseFlashSector_MX(u16 sectorNum); -u16 ProgramFlashByte_MX(u16 sectorNum, u32 offset, u8 data); -u16 ProgramFlashSector_MX(u16 sectorNum, void *src); - -// agb_flash_1m -u32 IdentifyFlash(void); - -#endif // GUARD_GBA_FLASH_INTERNAL_H diff --git a/berry_fix/payload/include/gba/gba.h b/berry_fix/payload/include/gba/gba.h deleted file mode 100644 index 349344031f17..000000000000 --- a/berry_fix/payload/include/gba/gba.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef GUARD_GBA_GBA_H -#define GUARD_GBA_GBA_H - -#include "gba/defines.h" -#include "gba/io_reg.h" -#include "gba/types.h" -#include "gba/multiboot.h" -#include "gba/syscall.h" -#include "gba/macro.h" -#include "gba/isagbprint.h" - -#endif // GUARD_GBA_GBA_H diff --git a/berry_fix/payload/include/gba/io_reg.h b/berry_fix/payload/include/gba/io_reg.h deleted file mode 100644 index df79b084d3d1..000000000000 --- a/berry_fix/payload/include/gba/io_reg.h +++ /dev/null @@ -1,770 +0,0 @@ -#ifndef GUARD_GBA_IO_REG_H -#define GUARD_GBA_IO_REG_H - -#define REG_BASE 0x4000000 // I/O register base address - -// I/O register offsets - -#define REG_OFFSET_DISPCNT 0x0 -#define REG_OFFSET_DISPSTAT 0x4 -#define REG_OFFSET_VCOUNT 0x6 -#define REG_OFFSET_BG0CNT 0x8 -#define REG_OFFSET_BG1CNT 0xa -#define REG_OFFSET_BG2CNT 0xc -#define REG_OFFSET_BG3CNT 0xe -#define REG_OFFSET_BG0HOFS 0x10 -#define REG_OFFSET_BG0VOFS 0x12 -#define REG_OFFSET_BG1HOFS 0x14 -#define REG_OFFSET_BG1VOFS 0x16 -#define REG_OFFSET_BG2HOFS 0x18 -#define REG_OFFSET_BG2VOFS 0x1a -#define REG_OFFSET_BG3HOFS 0x1c -#define REG_OFFSET_BG3VOFS 0x1e -#define REG_OFFSET_BG2PA 0x20 -#define REG_OFFSET_BG2PB 0x22 -#define REG_OFFSET_BG2PC 0x24 -#define REG_OFFSET_BG2PD 0x26 -#define REG_OFFSET_BG2X 0x28 -#define REG_OFFSET_BG2X_L 0x28 -#define REG_OFFSET_BG2X_H 0x2a -#define REG_OFFSET_BG2Y 0x2c -#define REG_OFFSET_BG2Y_L 0x2c -#define REG_OFFSET_BG2Y_H 0x2e -#define REG_OFFSET_BG3PA 0x30 -#define REG_OFFSET_BG3PB 0x32 -#define REG_OFFSET_BG3PC 0x34 -#define REG_OFFSET_BG3PD 0x36 -#define REG_OFFSET_BG3X 0x38 -#define REG_OFFSET_BG3X_L 0x38 -#define REG_OFFSET_BG3X_H 0x3a -#define REG_OFFSET_BG3Y 0x3c -#define REG_OFFSET_BG3Y_L 0x3c -#define REG_OFFSET_BG3Y_H 0x3e -#define REG_OFFSET_WIN0H 0x40 -#define REG_OFFSET_WIN1H 0x42 -#define REG_OFFSET_WIN0V 0x44 -#define REG_OFFSET_WIN1V 0x46 -#define REG_OFFSET_WININ 0x48 -#define REG_OFFSET_WINOUT 0x4a -#define REG_OFFSET_MOSAIC 0x4c -#define REG_OFFSET_BLDCNT 0x50 -#define REG_OFFSET_BLDALPHA 0x52 -#define REG_OFFSET_BLDY 0x54 - -#define REG_OFFSET_SOUND1CNT_L 0x60 -#define REG_OFFSET_NR10 0x60 -#define REG_OFFSET_SOUND1CNT_H 0x62 -#define REG_OFFSET_NR11 0x62 -#define REG_OFFSET_NR12 0x63 -#define REG_OFFSET_SOUND1CNT_X 0x64 -#define REG_OFFSET_NR13 0x64 -#define REG_OFFSET_NR14 0x65 -#define REG_OFFSET_SOUND2CNT_L 0x68 -#define REG_OFFSET_NR21 0x68 -#define REG_OFFSET_NR22 0x69 -#define REG_OFFSET_SOUND2CNT_H 0x6c -#define REG_OFFSET_NR23 0x6c -#define REG_OFFSET_NR24 0x6d -#define REG_OFFSET_SOUND3CNT_L 0x70 -#define REG_OFFSET_NR30 0x70 -#define REG_OFFSET_SOUND3CNT_H 0x72 -#define REG_OFFSET_NR31 0x72 -#define REG_OFFSET_NR32 0x73 -#define REG_OFFSET_SOUND3CNT_X 0x74 -#define REG_OFFSET_NR33 0x74 -#define REG_OFFSET_NR34 0x75 -#define REG_OFFSET_SOUND4CNT_L 0x78 -#define REG_OFFSET_NR41 0x78 -#define REG_OFFSET_NR42 0x79 -#define REG_OFFSET_SOUND4CNT_H 0x7c -#define REG_OFFSET_NR43 0x7c -#define REG_OFFSET_NR44 0x7d -#define REG_OFFSET_SOUNDCNT_L 0x80 -#define REG_OFFSET_NR50 0x80 -#define REG_OFFSET_NR51 0x81 -#define REG_OFFSET_SOUNDCNT_H 0x82 -#define REG_OFFSET_SOUNDCNT_X 0x84 -#define REG_OFFSET_NR52 0x84 -#define REG_OFFSET_SOUNDBIAS 0x88 -#define REG_OFFSET_SOUNDBIAS_L 0x88 -#define REG_OFFSET_SOUNDBIAS_H 0x89 -#define REG_OFFSET_WAVE_RAM0 0x90 -#define REG_OFFSET_WAVE_RAM1 0x94 -#define REG_OFFSET_WAVE_RAM2 0x98 -#define REG_OFFSET_WAVE_RAM3 0x9c -#define REG_OFFSET_FIFO_A 0xa0 -#define REG_OFFSET_FIFO_B 0xa4 - -#define REG_OFFSET_DMA0 0xb0 -#define REG_OFFSET_DMA0SAD 0xb0 -#define REG_OFFSET_DMA0SAD_L 0xb0 -#define REG_OFFSET_DMA0SAD_H 0xb2 -#define REG_OFFSET_DMA0DAD 0xb4 -#define REG_OFFSET_DMA0DAD_L 0xb4 -#define REG_OFFSET_DMA0DAD_H 0xb6 -#define REG_OFFSET_DMA0CNT 0xb8 -#define REG_OFFSET_DMA0CNT_L 0xb8 -#define REG_OFFSET_DMA0CNT_H 0xba -#define REG_OFFSET_DMA1 0xbc -#define REG_OFFSET_DMA1SAD 0xbc -#define REG_OFFSET_DMA1SAD_L 0xbc -#define REG_OFFSET_DMA1SAD_H 0xbe -#define REG_OFFSET_DMA1DAD 0xc0 -#define REG_OFFSET_DMA1DAD_L 0xc0 -#define REG_OFFSET_DMA1DAD_H 0xc2 -#define REG_OFFSET_DMA1CNT 0xc4 -#define REG_OFFSET_DMA1CNT_L 0xc4 -#define REG_OFFSET_DMA1CNT_H 0xc6 -#define REG_OFFSET_DMA2 0xc8 -#define REG_OFFSET_DMA2SAD 0xc8 -#define REG_OFFSET_DMA2SAD_L 0xc8 -#define REG_OFFSET_DMA2SAD_H 0xca -#define REG_OFFSET_DMA2DAD 0xcc -#define REG_OFFSET_DMA2DAD_L 0xcc -#define REG_OFFSET_DMA2DAD_H 0xce -#define REG_OFFSET_DMA2CNT 0xd0 -#define REG_OFFSET_DMA2CNT_L 0xd0 -#define REG_OFFSET_DMA2CNT_H 0xd2 -#define REG_OFFSET_DMA3 0xd4 -#define REG_OFFSET_DMA3SAD 0xd4 -#define REG_OFFSET_DMA3SAD_L 0xd4 -#define REG_OFFSET_DMA3SAD_H 0xd6 -#define REG_OFFSET_DMA3DAD 0xd8 -#define REG_OFFSET_DMA3DAD_L 0xd8 -#define REG_OFFSET_DMA3DAD_H 0xda -#define REG_OFFSET_DMA3CNT 0xdc -#define REG_OFFSET_DMA3CNT_L 0xdc -#define REG_OFFSET_DMA3CNT_H 0xde - -#define REG_OFFSET_TMCNT 0x100 -#define REG_OFFSET_TMCNT_L 0x100 -#define REG_OFFSET_TMCNT_H 0x102 -#define REG_OFFSET_TM0CNT 0x100 -#define REG_OFFSET_TM0CNT_L 0x100 -#define REG_OFFSET_TM0CNT_H 0x102 -#define REG_OFFSET_TM1CNT 0x104 -#define REG_OFFSET_TM1CNT_L 0x104 -#define REG_OFFSET_TM1CNT_H 0x106 -#define REG_OFFSET_TM2CNT 0x108 -#define REG_OFFSET_TM2CNT_L 0x108 -#define REG_OFFSET_TM2CNT_H 0x10a -#define REG_OFFSET_TM3CNT 0x10c -#define REG_OFFSET_TM3CNT_L 0x10c -#define REG_OFFSET_TM3CNT_H 0x10e - -#define REG_OFFSET_SIOCNT 0x128 -#define REG_OFFSET_SIODATA8 0x12a -#define REG_OFFSET_SIODATA32 0x120 -#define REG_OFFSET_SIOMLT_SEND 0x12a -#define REG_OFFSET_SIOMLT_RECV 0x120 -#define REG_OFFSET_SIOMULTI0 0x120 -#define REG_OFFSET_SIOMULTI1 0x122 -#define REG_OFFSET_SIOMULTI2 0x124 -#define REG_OFFSET_SIOMULTI3 0x126 - -#define REG_OFFSET_KEYINPUT 0x130 -#define REG_OFFSET_KEYCNT 0x132 - -#define REG_OFFSET_RCNT 0x134 - -#define REG_OFFSET_JOYCNT 0x140 -#define REG_OFFSET_JOYSTAT 0x158 -#define REG_OFFSET_JOY_RECV 0x150 -#define REG_OFFSET_JOY_RECV_L 0x150 -#define REG_OFFSET_JOY_RECV_H 0x152 -#define REG_OFFSET_JOY_TRANS 0x154 -#define REG_OFFSET_JOY_TRANS_L 0x154 -#define REG_OFFSET_JOY_TRANS_H 0x156 - -#define REG_OFFSET_IME 0x208 -#define REG_OFFSET_IE 0x200 -#define REG_OFFSET_IF 0x202 - -#define REG_OFFSET_WAITCNT 0x204 - -// I/O register addresses - -#define REG_ADDR_DISPCNT (REG_BASE + REG_OFFSET_DISPCNT) -#define REG_ADDR_DISPSTAT (REG_BASE + REG_OFFSET_DISPSTAT) -#define REG_ADDR_VCOUNT (REG_BASE + REG_OFFSET_VCOUNT) -#define REG_ADDR_BG0CNT (REG_BASE + REG_OFFSET_BG0CNT) -#define REG_ADDR_BG1CNT (REG_BASE + REG_OFFSET_BG1CNT) -#define REG_ADDR_BG2CNT (REG_BASE + REG_OFFSET_BG2CNT) -#define REG_ADDR_BG3CNT (REG_BASE + REG_OFFSET_BG3CNT) -#define REG_ADDR_BG0HOFS (REG_BASE + REG_OFFSET_BG0HOFS) -#define REG_ADDR_BG0VOFS (REG_BASE + REG_OFFSET_BG0VOFS) -#define REG_ADDR_BG1HOFS (REG_BASE + REG_OFFSET_BG1HOFS) -#define REG_ADDR_BG1VOFS (REG_BASE + REG_OFFSET_BG1VOFS) -#define REG_ADDR_BG2HOFS (REG_BASE + REG_OFFSET_BG2HOFS) -#define REG_ADDR_BG2VOFS (REG_BASE + REG_OFFSET_BG2VOFS) -#define REG_ADDR_BG3HOFS (REG_BASE + REG_OFFSET_BG3HOFS) -#define REG_ADDR_BG3VOFS (REG_BASE + REG_OFFSET_BG3VOFS) -#define REG_ADDR_BG2PA (REG_BASE + REG_OFFSET_BG2PA) -#define REG_ADDR_BG2PB (REG_BASE + REG_OFFSET_BG2PB) -#define REG_ADDR_BG2PC (REG_BASE + REG_OFFSET_BG2PC) -#define REG_ADDR_BG2PD (REG_BASE + REG_OFFSET_BG2PD) -#define REG_ADDR_BG2X (REG_BASE + REG_OFFSET_BG2X) -#define REG_ADDR_BG2X_L (REG_BASE + REG_OFFSET_BG2X_L) -#define REG_ADDR_BG2X_H (REG_BASE + REG_OFFSET_BG2X_H) -#define REG_ADDR_BG2Y (REG_BASE + REG_OFFSET_BG2Y) -#define REG_ADDR_BG2Y_L (REG_BASE + REG_OFFSET_BG2Y_L) -#define REG_ADDR_BG2Y_H (REG_BASE + REG_OFFSET_BG2Y_H) -#define REG_ADDR_BG3PA (REG_BASE + REG_OFFSET_BG3PA) -#define REG_ADDR_BG3PB (REG_BASE + REG_OFFSET_BG3PB) -#define REG_ADDR_BG3PC (REG_BASE + REG_OFFSET_BG3PC) -#define REG_ADDR_BG3PD (REG_BASE + REG_OFFSET_BG3PD) -#define REG_ADDR_BG3X (REG_BASE + REG_OFFSET_BG3X) -#define REG_ADDR_BG3X_L (REG_BASE + REG_OFFSET_BG3X_L) -#define REG_ADDR_BG3X_H (REG_BASE + REG_OFFSET_BG3X_H) -#define REG_ADDR_BG3Y (REG_BASE + REG_OFFSET_BG3Y) -#define REG_ADDR_BG3Y_L (REG_BASE + REG_OFFSET_BG3Y_L) -#define REG_ADDR_BG3Y_H (REG_BASE + REG_OFFSET_BG3Y_H) -#define REG_ADDR_WIN0H (REG_BASE + REG_OFFSET_WIN0H) -#define REG_ADDR_WIN1H (REG_BASE + REG_OFFSET_WIN1H) -#define REG_ADDR_WIN0V (REG_BASE + REG_OFFSET_WIN0V) -#define REG_ADDR_WIN1V (REG_BASE + REG_OFFSET_WIN1V) -#define REG_ADDR_WININ (REG_BASE + REG_OFFSET_WININ) -#define REG_ADDR_WINOUT (REG_BASE + REG_OFFSET_WINOUT) -#define REG_ADDR_MOSAIC (REG_BASE + REG_OFFSET_MOSAIC) -#define REG_ADDR_BLDCNT (REG_BASE + REG_OFFSET_BLDCNT) -#define REG_ADDR_BLDALPHA (REG_BASE + REG_OFFSET_BLDALPHA) -#define REG_ADDR_BLDY (REG_BASE + REG_OFFSET_BLDY) - -#define REG_ADDR_SOUND1CNT_L (REG_BASE + REG_OFFSET_SOUND1CNT_L) -#define REG_ADDR_NR10 (REG_BASE + REG_OFFSET_NR10) -#define REG_ADDR_SOUND1CNT_H (REG_BASE + REG_OFFSET_SOUND1CNT_H) -#define REG_ADDR_NR11 (REG_BASE + REG_OFFSET_NR11) -#define REG_ADDR_NR12 (REG_BASE + REG_OFFSET_NR12) -#define REG_ADDR_SOUND1CNT_X (REG_BASE + REG_OFFSET_SOUND1CNT_X) -#define REG_ADDR_NR13 (REG_BASE + REG_OFFSET_NR13) -#define REG_ADDR_NR14 (REG_BASE + REG_OFFSET_NR14) -#define REG_ADDR_SOUND2CNT_L (REG_BASE + REG_OFFSET_SOUND2CNT_L) -#define REG_ADDR_NR21 (REG_BASE + REG_OFFSET_NR21) -#define REG_ADDR_NR22 (REG_BASE + REG_OFFSET_NR22) -#define REG_ADDR_SOUND2CNT_H (REG_BASE + REG_OFFSET_SOUND2CNT_H) -#define REG_ADDR_NR23 (REG_BASE + REG_OFFSET_NR23) -#define REG_ADDR_NR24 (REG_BASE + REG_OFFSET_NR24) -#define REG_ADDR_SOUND3CNT_L (REG_BASE + REG_OFFSET_SOUND3CNT_L) -#define REG_ADDR_NR30 (REG_BASE + REG_OFFSET_NR30) -#define REG_ADDR_SOUND3CNT_H (REG_BASE + REG_OFFSET_SOUND3CNT_H) -#define REG_ADDR_NR31 (REG_BASE + REG_OFFSET_NR31) -#define REG_ADDR_NR32 (REG_BASE + REG_OFFSET_NR32) -#define REG_ADDR_SOUND3CNT_X (REG_BASE + REG_OFFSET_SOUND3CNT_X) -#define REG_ADDR_NR33 (REG_BASE + REG_OFFSET_NR33) -#define REG_ADDR_NR34 (REG_BASE + REG_OFFSET_NR34) -#define REG_ADDR_SOUND4CNT_L (REG_BASE + REG_OFFSET_SOUND4CNT_L) -#define REG_ADDR_NR41 (REG_BASE + REG_OFFSET_NR41) -#define REG_ADDR_NR42 (REG_BASE + REG_OFFSET_NR42) -#define REG_ADDR_SOUND4CNT_H (REG_BASE + REG_OFFSET_SOUND4CNT_H) -#define REG_ADDR_NR43 (REG_BASE + REG_OFFSET_NR43) -#define REG_ADDR_NR44 (REG_BASE + REG_OFFSET_NR44) -#define REG_ADDR_SOUNDCNT_L (REG_BASE + REG_OFFSET_SOUNDCNT_L) -#define REG_ADDR_NR50 (REG_BASE + REG_OFFSET_NR50) -#define REG_ADDR_NR51 (REG_BASE + REG_OFFSET_NR51) -#define REG_ADDR_SOUNDCNT_H (REG_BASE + REG_OFFSET_SOUNDCNT_H) -#define REG_ADDR_SOUNDCNT_X (REG_BASE + REG_OFFSET_SOUNDCNT_X) -#define REG_ADDR_NR52 (REG_BASE + REG_OFFSET_NR52) -#define REG_ADDR_SOUNDBIAS (REG_BASE + REG_OFFSET_SOUNDBIAS) -#define REG_ADDR_SOUNDBIAS_L (REG_BASE + REG_OFFSET_SOUNDBIAS_L) -#define REG_ADDR_SOUNDBIAS_H (REG_BASE + REG_OFFSET_SOUNDBIAS_H) -#define REG_ADDR_WAVE_RAM0 (REG_BASE + REG_OFFSET_WAVE_RAM0) -#define REG_ADDR_WAVE_RAM1 (REG_BASE + REG_OFFSET_WAVE_RAM1) -#define REG_ADDR_WAVE_RAM2 (REG_BASE + REG_OFFSET_WAVE_RAM2) -#define REG_ADDR_WAVE_RAM3 (REG_BASE + REG_OFFSET_WAVE_RAM3) -#define REG_ADDR_FIFO_A (REG_BASE + REG_OFFSET_FIFO_A) -#define REG_ADDR_FIFO_B (REG_BASE + REG_OFFSET_FIFO_B) - -#define REG_ADDR_DMA0 (REG_BASE + REG_OFFSET_DMA0) -#define REG_ADDR_DMA0SAD (REG_BASE + REG_OFFSET_DMA0SAD) -#define REG_ADDR_DMA0DAD (REG_BASE + REG_OFFSET_DMA0DAD) -#define REG_ADDR_DMA0CNT (REG_BASE + REG_OFFSET_DMA0CNT) -#define REG_ADDR_DMA0CNT_L (REG_BASE + REG_OFFSET_DMA0CNT_L) -#define REG_ADDR_DMA0CNT_H (REG_BASE + REG_OFFSET_DMA0CNT_H) -#define REG_ADDR_DMA1 (REG_BASE + REG_OFFSET_DMA1) -#define REG_ADDR_DMA1SAD (REG_BASE + REG_OFFSET_DMA1SAD) -#define REG_ADDR_DMA1DAD (REG_BASE + REG_OFFSET_DMA1DAD) -#define REG_ADDR_DMA1CNT (REG_BASE + REG_OFFSET_DMA1CNT) -#define REG_ADDR_DMA1CNT_L (REG_BASE + REG_OFFSET_DMA1CNT_L) -#define REG_ADDR_DMA1CNT_H (REG_BASE + REG_OFFSET_DMA1CNT_H) -#define REG_ADDR_DMA2 (REG_BASE + REG_OFFSET_DMA2) -#define REG_ADDR_DMA2SAD (REG_BASE + REG_OFFSET_DMA2SAD) -#define REG_ADDR_DMA2DAD (REG_BASE + REG_OFFSET_DMA2DAD) -#define REG_ADDR_DMA2CNT (REG_BASE + REG_OFFSET_DMA2CNT) -#define REG_ADDR_DMA2CNT_L (REG_BASE + REG_OFFSET_DMA2CNT_L) -#define REG_ADDR_DMA2CNT_H (REG_BASE + REG_OFFSET_DMA2CNT_H) -#define REG_ADDR_DMA3 (REG_BASE + REG_OFFSET_DMA3) -#define REG_ADDR_DMA3SAD (REG_BASE + REG_OFFSET_DMA3SAD) -#define REG_ADDR_DMA3DAD (REG_BASE + REG_OFFSET_DMA3DAD) -#define REG_ADDR_DMA3CNT (REG_BASE + REG_OFFSET_DMA3CNT) -#define REG_ADDR_DMA3CNT_L (REG_BASE + REG_OFFSET_DMA3CNT_L) -#define REG_ADDR_DMA3CNT_H (REG_BASE + REG_OFFSET_DMA3CNT_H) - -#define REG_ADDR_TMCNT (REG_BASE + REG_OFFSET_TMCNT) -#define REG_ADDR_TMCNT_L (REG_BASE + REG_OFFSET_TMCNT_L) -#define REG_ADDR_TMCNT_H (REG_BASE + REG_OFFSET_TMCNT_H) -#define REG_ADDR_TM0CNT (REG_BASE + REG_OFFSET_TM0CNT) -#define REG_ADDR_TM0CNT_L (REG_BASE + REG_OFFSET_TM0CNT_L) -#define REG_ADDR_TM0CNT_H (REG_BASE + REG_OFFSET_TM0CNT_H) -#define REG_ADDR_TM1CNT (REG_BASE + REG_OFFSET_TM1CNT) -#define REG_ADDR_TM1CNT_L (REG_BASE + REG_OFFSET_TM1CNT_L) -#define REG_ADDR_TM1CNT_H (REG_BASE + REG_OFFSET_TM1CNT_H) -#define REG_ADDR_TM2CNT (REG_BASE + REG_OFFSET_TM2CNT) -#define REG_ADDR_TM2CNT_L (REG_BASE + REG_OFFSET_TM2CNT_L) -#define REG_ADDR_TM2CNT_H (REG_BASE + REG_OFFSET_TM2CNT_H) -#define REG_ADDR_TM3CNT (REG_BASE + REG_OFFSET_TM3CNT) -#define REG_ADDR_TM3CNT_L (REG_BASE + REG_OFFSET_TM3CNT_L) -#define REG_ADDR_TM3CNT_H (REG_BASE + REG_OFFSET_TM3CNT_H) - -#define REG_ADDR_SIOCNT (REG_BASE + REG_OFFSET_SIOCNT) -#define REG_ADDR_SIODATA8 (REG_BASE + REG_OFFSET_SIODATA8) -#define REG_ADDR_SIODATA32 (REG_BASE + REG_OFFSET_SIODATA32) -#define REG_ADDR_SIOMLT_SEND (REG_BASE + REG_OFFSET_SIOMLT_SEND) -#define REG_ADDR_SIOMLT_RECV (REG_BASE + REG_OFFSET_SIOMLT_RECV) -#define REG_ADDR_SIOMULTI0 (REG_BASE + REG_OFFSET_SIOMULTI0) -#define REG_ADDR_SIOMULTI1 (REG_BASE + REG_OFFSET_SIOMULTI1) -#define REG_ADDR_SIOMULTI2 (REG_BASE + REG_OFFSET_SIOMULTI2) -#define REG_ADDR_SIOMULTI3 (REG_BASE + REG_OFFSET_SIOMULTI3) - -#define REG_ADDR_KEYINPUT (REG_BASE + REG_OFFSET_KEYINPUT) -#define REG_ADDR_KEYCNT (REG_BASE + REG_OFFSET_KEYCNT) - -#define REG_ADDR_RCNT (REG_BASE + REG_OFFSET_RCNT) - -#define REG_ADDR_JOYCNT (REG_BASE + REG_OFFSET_JOYCNT) -#define REG_ADDR_JOYSTAT (REG_BASE + REG_OFFSET_JOYSTAT) -#define REG_ADDR_JOY_RECV (REG_BASE + REG_OFFSET_JOY_RECV) -#define REG_ADDR_JOY_RECV_L (REG_BASE + REG_OFFSET_JOY_RECV_L) -#define REG_ADDR_JOY_RECV_H (REG_BASE + REG_OFFSET_JOY_RECV_H) -#define REG_ADDR_JOY_TRANS (REG_BASE + REG_OFFSET_JOY_TRANS) -#define REG_ADDR_JOY_TRANS_L (REG_BASE + REG_OFFSET_JOY_TRANS_L) -#define REG_ADDR_JOY_TRANS_H (REG_BASE + REG_OFFSET_JOY_TRANS_H) - -#define REG_ADDR_IME (REG_BASE + REG_OFFSET_IME) -#define REG_ADDR_IE (REG_BASE + REG_OFFSET_IE) -#define REG_ADDR_IF (REG_BASE + REG_OFFSET_IF) - -#define REG_ADDR_WAITCNT (REG_BASE + REG_OFFSET_WAITCNT) - -// I/O registers - -#define REG_DISPCNT (*(vu16 *)REG_ADDR_DISPCNT) -#define REG_DISPSTAT (*(vu16 *)REG_ADDR_DISPSTAT) -#define REG_VCOUNT (*(vu16 *)REG_ADDR_VCOUNT) -#define REG_BG0CNT (*(vu16 *)REG_ADDR_BG0CNT) -#define REG_BG1CNT (*(vu16 *)REG_ADDR_BG1CNT) -#define REG_BG2CNT (*(vu16 *)REG_ADDR_BG2CNT) -#define REG_BG3CNT (*(vu16 *)REG_ADDR_BG3CNT) -#define REG_BG0HOFS (*(vu16 *)REG_ADDR_BG0HOFS) -#define REG_BG0VOFS (*(vu16 *)REG_ADDR_BG0VOFS) -#define REG_BG1HOFS (*(vu16 *)REG_ADDR_BG1HOFS) -#define REG_BG1VOFS (*(vu16 *)REG_ADDR_BG1VOFS) -#define REG_BG2HOFS (*(vu16 *)REG_ADDR_BG2HOFS) -#define REG_BG2VOFS (*(vu16 *)REG_ADDR_BG2VOFS) -#define REG_BG3HOFS (*(vu16 *)REG_ADDR_BG3HOFS) -#define REG_BG3VOFS (*(vu16 *)REG_ADDR_BG3VOFS) -#define REG_BG2PA (*(vu16 *)REG_ADDR_BG2PA) -#define REG_BG2PB (*(vu16 *)REG_ADDR_BG2PB) -#define REG_BG2PC (*(vu16 *)REG_ADDR_BG2PC) -#define REG_BG2PD (*(vu16 *)REG_ADDR_BG2PD) -#define REG_BG2X (*(vu32 *)REG_ADDR_BG2X) -#define REG_BG2X_L (*(vu16 *)REG_ADDR_BG2X_L) -#define REG_BG2X_H (*(vu16 *)REG_ADDR_BG2X_H) -#define REG_BG2Y (*(vu32 *)REG_ADDR_BG2Y) -#define REG_BG2Y_L (*(vu16 *)REG_ADDR_BG2Y_L) -#define REG_BG2Y_H (*(vu16 *)REG_ADDR_BG2Y_H) -#define REG_BG3PA (*(vu16 *)REG_ADDR_BG3PA) -#define REG_BG3PB (*(vu16 *)REG_ADDR_BG3PB) -#define REG_BG3PC (*(vu16 *)REG_ADDR_BG3PC) -#define REG_BG3PD (*(vu16 *)REG_ADDR_BG3PD) -#define REG_BG3X (*(vu32 *)REG_ADDR_BG3X) -#define REG_BG3X_L (*(vu16 *)REG_ADDR_BG3X_L) -#define REG_BG3X_H (*(vu16 *)REG_ADDR_BG3X_H) -#define REG_BG3Y (*(vu32 *)REG_ADDR_BG3Y) -#define REG_BG3Y_L (*(vu16 *)REG_ADDR_BG3Y_L) -#define REG_BG3Y_H (*(vu16 *)REG_ADDR_BG3Y_H) -#define REG_WIN0H (*(vu16 *)REG_ADDR_WIN0H) -#define REG_WIN1H (*(vu16 *)REG_ADDR_WIN1H) -#define REG_WIN0V (*(vu16 *)REG_ADDR_WIN0V) -#define REG_WIN1V (*(vu16 *)REG_ADDR_WIN1V) -#define REG_WININ (*(vu16 *)REG_ADDR_WININ) -#define REG_WINOUT (*(vu16 *)REG_ADDR_WINOUT) -#define REG_MOSAIC (*(vu16 *)REG_ADDR_MOSAIC) -#define REG_BLDCNT (*(vu16 *)REG_ADDR_BLDCNT) -#define REG_BLDALPHA (*(vu16 *)REG_ADDR_BLDALPHA) -#define REG_BLDY (*(vu16 *)REG_ADDR_BLDY) - -#define REG_SOUND1CNT_L (*(vu16 *)REG_ADDR_SOUND1CNT_L) -#define REG_NR10 (*(vu8 *)REG_ADDR_NR10) -#define REG_SOUND1CNT_H (*(vu16 *)REG_ADDR_SOUND1CNT_H) -#define REG_NR11 (*(vu8 *)REG_ADDR_NR11) -#define REG_NR12 (*(vu8 *)REG_ADDR_NR12) -#define REG_SOUND1CNT_X (*(vu16 *)REG_ADDR_SOUND1CNT_X) -#define REG_NR13 (*(vu8 *)REG_ADDR_NR13) -#define REG_NR14 (*(vu8 *)REG_ADDR_NR14) -#define REG_SOUND2CNT_L (*(vu16 *)REG_ADDR_SOUND2CNT_L) -#define REG_NR21 (*(vu8 *)REG_ADDR_NR21) -#define REG_NR22 (*(vu8 *)REG_ADDR_NR22) -#define REG_SOUND2CNT_H (*(vu16 *)REG_ADDR_SOUND2CNT_H) -#define REG_NR23 (*(vu8 *)REG_ADDR_NR23) -#define REG_NR24 (*(vu8 *)REG_ADDR_NR24) -#define REG_SOUND3CNT_L (*(vu16 *)REG_ADDR_SOUND3CNT_L) -#define REG_NR30 (*(vu8 *)REG_ADDR_NR30) -#define REG_SOUND3CNT_H (*(vu16 *)REG_ADDR_SOUND3CNT_H) -#define REG_NR31 (*(vu8 *)REG_ADDR_NR31) -#define REG_NR32 (*(vu8 *)REG_ADDR_NR32) -#define REG_SOUND3CNT_X (*(vu16 *)REG_ADDR_SOUND3CNT_X) -#define REG_NR33 (*(vu8 *)REG_ADDR_NR33) -#define REG_NR34 (*(vu8 *)REG_ADDR_NR34) -#define REG_SOUND4CNT_L (*(vu16 *)REG_ADDR_SOUND4CNT_L) -#define REG_NR41 (*(vu8 *)REG_ADDR_NR41) -#define REG_NR42 (*(vu8 *)REG_ADDR_NR42) -#define REG_SOUND4CNT_H (*(vu16 *)REG_ADDR_SOUND4CNT_H) -#define REG_NR43 (*(vu8 *)REG_ADDR_NR43) -#define REG_NR44 (*(vu8 *)REG_ADDR_NR44) -#define REG_SOUNDCNT_L (*(vu16 *)REG_ADDR_SOUNDCNT_L) -#define REG_NR50 (*(vu8 *)REG_ADDR_NR50) -#define REG_NR51 (*(vu8 *)REG_ADDR_NR51) -#define REG_SOUNDCNT_H (*(vu16 *)REG_ADDR_SOUNDCNT_H) -#define REG_SOUNDCNT_X (*(vu16 *)REG_ADDR_SOUNDCNT_X) -#define REG_NR52 (*(vu8 *)REG_ADDR_NR52) -#define REG_SOUNDBIAS (*(vu16 *)REG_ADDR_SOUNDBIAS) -#define REG_SOUNDBIAS_L (*(vu8 *)REG_ADDR_SOUNDBIAS_L) -#define REG_SOUNDBIAS_H (*(vu8 *)REG_ADDR_SOUNDBIAS_H) -#define REG_WAVE_RAM0 (*(vu32 *)REG_ADDR_WAVE_RAM0) -#define REG_WAVE_RAM1 (*(vu32 *)REG_ADDR_WAVE_RAM1) -#define REG_WAVE_RAM2 (*(vu32 *)REG_ADDR_WAVE_RAM2) -#define REG_WAVE_RAM3 (*(vu32 *)REG_ADDR_WAVE_RAM3) -#define REG_FIFO_A (*(vu32 *)REG_ADDR_FIFO_A) -#define REG_FIFO_B (*(vu32 *)REG_ADDR_FIFO_B) - -#define REG_DMA0SAD (*(vu32 *)REG_ADDR_DMA0SAD) -#define REG_DMA0DAD (*(vu32 *)REG_ADDR_DMA0DAD) -#define REG_DMA0CNT (*(vu32 *)REG_ADDR_DMA0CNT) -#define REG_DMA0CNT_L (*(vu16 *)REG_ADDR_DMA0CNT_L) -#define REG_DMA0CNT_H (*(vu16 *)REG_ADDR_DMA0CNT_H) - -#define REG_DMA1SAD (*(vu32 *)REG_ADDR_DMA1SAD) -#define REG_DMA1DAD (*(vu32 *)REG_ADDR_DMA1DAD) -#define REG_DMA1CNT (*(vu32 *)REG_ADDR_DMA1CNT) -#define REG_DMA1CNT_L (*(vu16 *)REG_ADDR_DMA1CNT_L) -#define REG_DMA1CNT_H (*(vu16 *)REG_ADDR_DMA1CNT_H) - -#define REG_DMA2SAD (*(vu32 *)REG_ADDR_DMA2SAD) -#define REG_DMA2DAD (*(vu32 *)REG_ADDR_DMA2DAD) -#define REG_DMA2CNT (*(vu32 *)REG_ADDR_DMA2CNT) -#define REG_DMA2CNT_L (*(vu16 *)REG_ADDR_DMA2CNT_L) -#define REG_DMA2CNT_H (*(vu16 *)REG_ADDR_DMA2CNT_H) - -#define REG_DMA3SAD (*(vu32 *)REG_ADDR_DMA3SAD) -#define REG_DMA3DAD (*(vu32 *)REG_ADDR_DMA3DAD) -#define REG_DMA3CNT (*(vu32 *)REG_ADDR_DMA3CNT) -#define REG_DMA3CNT_L (*(vu16 *)REG_ADDR_DMA3CNT_L) -#define REG_DMA3CNT_H (*(vu16 *)REG_ADDR_DMA3CNT_H) - -#define REG_TMCNT(n) (*(vu16 *)(REG_ADDR_TMCNT + ((n) * 4))) -#define REG_TMCNT_L(n) (*(vu16 *)(REG_ADDR_TMCNT_L + ((n) * 4))) -#define REG_TMCNT_H(n) (*(vu16 *)(REG_ADDR_TMCNT_H + ((n) * 4))) -#define REG_TM0CNT (*(vu32 *)REG_ADDR_TM0CNT) -#define REG_TM0CNT_L (*(vu16 *)REG_ADDR_TM0CNT_L) -#define REG_TM0CNT_H (*(vu16 *)REG_ADDR_TM0CNT_H) -#define REG_TM1CNT (*(vu32 *)REG_ADDR_TM1CNT) -#define REG_TM1CNT_L (*(vu16 *)REG_ADDR_TM1CNT_L) -#define REG_TM1CNT_H (*(vu16 *)REG_ADDR_TM1CNT_H) -#define REG_TM2CNT (*(vu32 *)REG_ADDR_TM2CNT) -#define REG_TM2CNT_L (*(vu16 *)REG_ADDR_TM2CNT_L) -#define REG_TM2CNT_H (*(vu16 *)REG_ADDR_TM2CNT_H) -#define REG_TM3CNT (*(vu32 *)REG_ADDR_TM3CNT) -#define REG_TM3CNT_L (*(vu16 *)REG_ADDR_TM3CNT_L) -#define REG_TM3CNT_H (*(vu16 *)REG_ADDR_TM3CNT_H) - -#define REG_SIOCNT (*(vu16 *)REG_ADDR_SIOCNT) -#define REG_SIODATA8 (*(vu16 *)REG_ADDR_SIODATA8) -#define REG_SIODATA32 (*(vu32 *)REG_ADDR_SIODATA32) -#define REG_SIOMLT_SEND (*(vu16 *)REG_ADDR_SIOMLT_SEND) -#define REG_SIOMLT_RECV (*(vu64 *)REG_ADDR_SIOMLT_RECV) -#define REG_SIOMULTI0 (*(vu16 *)REG_ADDR_SIOMULTI0) -#define REG_SIOMULTI1 (*(vu16 *)REG_ADDR_SIOMULTI1) -#define REG_SIOMULTI2 (*(vu16 *)REG_ADDR_SIOMULTI2) -#define REG_SIOMULTI3 (*(vu16 *)REG_ADDR_SIOMULTI3) - -#define REG_KEYINPUT (*(vu16 *)REG_ADDR_KEYINPUT) -#define REG_KEYCNT (*(vu16 *)REG_ADDR_KEYCNT) - -#define REG_RCNT (*(vu16 *)REG_ADDR_RCNT) - -#define REG_IME (*(vu16 *)REG_ADDR_IME) -#define REG_IE (*(vu16 *)REG_ADDR_IE) -#define REG_IF (*(vu16 *)REG_ADDR_IF) - -#define REG_WAITCNT (*(vu16 *)REG_ADDR_WAITCNT) - -// I/O register fields - -// DISPCNT -#define DISPCNT_MODE_0 0x0000 // BG0: text, BG1: text, BG2: text, BG3: text -#define DISPCNT_MODE_1 0x0001 // BG0: text, BG1: text, BG2: affine, BG3: off -#define DISPCNT_MODE_2 0x0002 // BG0: off, BG1: off, BG2: affine, BG3: affine -#define DISPCNT_MODE_3 0x0003 // Bitmap mode, 240x160, BGR555 color -#define DISPCNT_MODE_4 0x0004 // Bitmap mode, 240x160, 256 color palette -#define DISPCNT_MODE_5 0x0005 // Bitmap mode, 160x128, BGR555 color -#define DISPCNT_HBLANK_INTERVAL 0x0020 // Allow access to OAM during H-Blank -#define DISPCNT_OBJ_1D_MAP 0x0040 -#define DISPCNT_FORCED_BLANK 0x0080 -#define DISPCNT_BG0_ON 0x0100 -#define DISPCNT_BG1_ON 0x0200 -#define DISPCNT_BG2_ON 0x0400 -#define DISPCNT_BG3_ON 0x0800 -#define DISPCNT_BG_ALL_ON 0x0F00 -#define DISPCNT_OBJ_ON 0x1000 -#define DISPCNT_WIN0_ON 0x2000 -#define DISPCNT_WIN1_ON 0x4000 -#define DISPCNT_OBJWIN_ON 0x8000 - -// DISPSTAT -#define DISPSTAT_VBLANK 0x0001 // in V-Blank -#define DISPSTAT_HBLANK 0x0002 // in H-Blank -#define DISPSTAT_VCOUNT 0x0004 // V-Count match -#define DISPSTAT_VBLANK_INTR 0x0008 // V-Blank interrupt enabled -#define DISPSTAT_HBLANK_INTR 0x0010 // H-Blank interrupt enabled -#define DISPSTAT_VCOUNT_INTR 0x0020 // V-Count interrupt enabled - -// BGCNT -#define BGCNT_PRIORITY(n) (n) // Values 0 - 3. Lower priority BGs will be drawn on top of higher priority BGs. -#define BGCNT_CHARBASE(n) ((n) << 2) // Values 0 - 3. Base block for tile pixel data. -#define BGCNT_MOSAIC 0x0040 -#define BGCNT_16COLOR 0x0000 // 4 bits per pixel -#define BGCNT_256COLOR 0x0080 // 8 bits per pixel -#define BGCNT_SCREENBASE(n) ((n) << 8) // Values 0 - 31. Base block for tile map. -#define BGCNT_WRAP 0x2000 // Only affects affine BGs. Text BGs wrap by default. -#define BGCNT_TXT256x256 0x0000 // Internal screen size size of text mode BG in pixels. -#define BGCNT_TXT512x256 0x4000 -#define BGCNT_TXT256x512 0x8000 -#define BGCNT_TXT512x512 0xC000 -#define BGCNT_AFF128x128 0x0000 // Internal screen size size of affine mode BG in pixels. -#define BGCNT_AFF256x256 0x4000 -#define BGCNT_AFF512x512 0x8000 -#define BGCNT_AFF1024x1024 0xC000 - -// WININ/OUT -#define WININ_WIN0_BG0 (1 << 0) -#define WININ_WIN0_BG1 (1 << 1) -#define WININ_WIN0_BG2 (1 << 2) -#define WININ_WIN0_BG3 (1 << 3) -#define WININ_WIN0_BG_ALL (WININ_WIN0_BG0 | WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3) -#define WININ_WIN0_OBJ (1 << 4) -#define WININ_WIN0_CLR (1 << 5) -#define WININ_WIN1_BG0 (1 << 8) -#define WININ_WIN1_BG1 (1 << 9) -#define WININ_WIN1_BG2 (1 << 10) -#define WININ_WIN1_BG3 (1 << 11) -#define WININ_WIN1_BG_ALL (WININ_WIN1_BG0 | WININ_WIN1_BG1 | WININ_WIN1_BG2 | WININ_WIN1_BG3) -#define WININ_WIN1_OBJ (1 << 12) -#define WININ_WIN1_CLR (1 << 13) - -#define WINOUT_WIN01_BG0 (1 << 0) -#define WINOUT_WIN01_BG1 (1 << 1) -#define WINOUT_WIN01_BG2 (1 << 2) -#define WINOUT_WIN01_BG3 (1 << 3) -#define WINOUT_WIN01_BG_ALL (WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3) -#define WINOUT_WIN01_OBJ (1 << 4) -#define WINOUT_WIN01_CLR (1 << 5) -#define WINOUT_WINOBJ_BG0 (1 << 8) -#define WINOUT_WINOBJ_BG1 (1 << 9) -#define WINOUT_WINOBJ_BG2 (1 << 10) -#define WINOUT_WINOBJ_BG3 (1 << 11) -#define WINOUT_WINOBJ_BG_ALL (WINOUT_WINOBJ_BG0 | WINOUT_WINOBJ_BG1 | WINOUT_WINOBJ_BG2 | WINOUT_WINOBJ_BG3) -#define WINOUT_WINOBJ_OBJ (1 << 12) -#define WINOUT_WINOBJ_CLR (1 << 13) - -#define WIN_RANGE(a, b) (((a) << 8) | (b)) -#define WIN_RANGE2(a, b) ((b) | ((a) << 8)) - -// BLDCNT -// Bits 0-5 select layers for the 1st target -#define BLDCNT_TGT1_BG0 (1 << 0) -#define BLDCNT_TGT1_BG1 (1 << 1) -#define BLDCNT_TGT1_BG2 (1 << 2) -#define BLDCNT_TGT1_BG3 (1 << 3) -#define BLDCNT_TGT1_OBJ (1 << 4) -#define BLDCNT_TGT1_BD (1 << 5) -#define BLDCNT_TGT1_ALL (BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ | BLDCNT_TGT1_BD) -// Bits 6-7 select the special effect -#define BLDCNT_EFFECT_NONE (0 << 6) // no special effect -#define BLDCNT_EFFECT_BLEND (1 << 6) // 1st+2nd targets mixed (controlled by BLDALPHA) -#define BLDCNT_EFFECT_LIGHTEN (2 << 6) // 1st target becomes whiter (controlled by BLDY) -#define BLDCNT_EFFECT_DARKEN (3 << 6) // 1st target becomes blacker (controlled by BLDY) -// Bits 8-13 select layers for the 2nd target -#define BLDCNT_TGT2_BG0 (1 << 8) -#define BLDCNT_TGT2_BG1 (1 << 9) -#define BLDCNT_TGT2_BG2 (1 << 10) -#define BLDCNT_TGT2_BG3 (1 << 11) -#define BLDCNT_TGT2_OBJ (1 << 12) -#define BLDCNT_TGT2_BD (1 << 13) -#define BLDCNT_TGT2_ALL (BLDCNT_TGT2_BG0 | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD) - -// BLDALPHA -#define BLDALPHA_BLEND(target1, target2) (((target2) << 8) | (target1)) - -// SOUNDCNT_H -#define SOUND_CGB_MIX_QUARTER 0x0000 -#define SOUND_CGB_MIX_HALF 0x0001 -#define SOUND_CGB_MIX_FULL 0x0002 -#define SOUND_A_MIX_HALF 0x0000 -#define SOUND_A_MIX_FULL 0x0004 -#define SOUND_B_MIX_HALF 0x0000 -#define SOUND_B_MIX_FULL 0x0008 -#define SOUND_ALL_MIX_FULL 0x000E -#define SOUND_A_RIGHT_OUTPUT 0x0100 -#define SOUND_A_LEFT_OUTPUT 0x0200 -#define SOUND_A_TIMER_0 0x0000 -#define SOUND_A_TIMER_1 0x0400 -#define SOUND_A_FIFO_RESET 0x0800 -#define SOUND_B_RIGHT_OUTPUT 0x1000 -#define SOUND_B_LEFT_OUTPUT 0x2000 -#define SOUND_B_TIMER_0 0x0000 -#define SOUND_B_TIMER_1 0x4000 -#define SOUND_B_FIFO_RESET 0x8000 - -// SOUNDCNT_X -#define SOUND_1_ON 0x0001 -#define SOUND_2_ON 0x0002 -#define SOUND_3_ON 0x0004 -#define SOUND_4_ON 0x0008 -#define SOUND_MASTER_ENABLE 0x0080 - -// DMA -#define DMA_DEST_INC 0x0000 -#define DMA_DEST_DEC 0x0020 -#define DMA_DEST_FIXED 0x0040 -#define DMA_DEST_RELOAD 0x0060 -#define DMA_SRC_INC 0x0000 -#define DMA_SRC_DEC 0x0080 -#define DMA_SRC_FIXED 0x0100 -#define DMA_REPEAT 0x0200 -#define DMA_16BIT 0x0000 -#define DMA_32BIT 0x0400 -#define DMA_DREQ_ON 0x0800 -#define DMA_START_NOW 0x0000 -#define DMA_START_VBLANK 0x1000 -#define DMA_START_HBLANK 0x2000 -#define DMA_START_SPECIAL 0x3000 -#define DMA_START_MASK 0x3000 -#define DMA_INTR_ENABLE 0x4000 -#define DMA_ENABLE 0x8000 - -// timer -#define TIMER_1CLK 0x00 -#define TIMER_64CLK 0x01 -#define TIMER_256CLK 0x02 -#define TIMER_1024CLK 0x03 -#define TIMER_INTR_ENABLE 0x40 -#define TIMER_ENABLE 0x80 - -// serial -#define SIO_ID 0x0030 // Communication ID - -#define SIO_8BIT_MODE 0x0000 // Normal 8-bit communication mode -#define SIO_32BIT_MODE 0x1000 // Normal 32-bit communication mode -#define SIO_MULTI_MODE 0x2000 // Multi-player communication mode -#define SIO_UART_MODE 0x3000 // UART communication mode - -#define SIO_9600_BPS 0x0000 // baud rate 9600 bps -#define SIO_38400_BPS 0x0001 // 38400 bps -#define SIO_57600_BPS 0x0002 // 57600 bps -#define SIO_115200_BPS 0x0003 // 115200 bps - -#define SIO_MULTI_SI 0x0004 // Multi-player communication SI terminal -#define SIO_MULTI_SD 0x0008 // SD terminal -#define SIO_MULTI_BUSY 0x0080 - -#define SIO_ERROR 0x0040 // Detect error -#define SIO_START 0x0080 // Start transfer -#define SIO_ENABLE 0x0080 // Enable SIO - -#define SIO_INTR_ENABLE 0x4000 - -#define SIO_MULTI_SI_SHIFT 2 -#define SIO_MULTI_SI_MASK 0x1 -#define SIO_MULTI_DI_SHIFT 3 -#define SIO_MULTI_DI_MASK 0x1 - -// keys -#define A_BUTTON 0x0001 -#define B_BUTTON 0x0002 -#define SELECT_BUTTON 0x0004 -#define START_BUTTON 0x0008 -#define DPAD_RIGHT 0x0010 -#define DPAD_LEFT 0x0020 -#define DPAD_UP 0x0040 -#define DPAD_DOWN 0x0080 -#define R_BUTTON 0x0100 -#define L_BUTTON 0x0200 -#define KEYS_MASK 0x03FF -#define KEY_INTR_ENABLE 0x0400 -#define KEY_OR_INTR 0x0000 -#define KEY_AND_INTR 0x8000 -#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN)) -#define JOY_EXCL_DPAD 0x030F - -// interrupt flags -#define INTR_FLAG_VBLANK (1 << 0) -#define INTR_FLAG_HBLANK (1 << 1) -#define INTR_FLAG_VCOUNT (1 << 2) -#define INTR_FLAG_TIMER0 (1 << 3) -#define INTR_FLAG_TIMER1 (1 << 4) -#define INTR_FLAG_TIMER2 (1 << 5) -#define INTR_FLAG_TIMER3 (1 << 6) -#define INTR_FLAG_SERIAL (1 << 7) -#define INTR_FLAG_DMA0 (1 << 8) -#define INTR_FLAG_DMA1 (1 << 9) -#define INTR_FLAG_DMA2 (1 << 10) -#define INTR_FLAG_DMA3 (1 << 11) -#define INTR_FLAG_KEYPAD (1 << 12) -#define INTR_FLAG_GAMEPAK (1 << 13) - -// WAITCNT -#define WAITCNT_SRAM_4 (0 << 0) -#define WAITCNT_SRAM_3 (1 << 0) -#define WAITCNT_SRAM_2 (2 << 0) -#define WAITCNT_SRAM_8 (3 << 0) -#define WAITCNT_SRAM_MASK (3 << 0) - -#define WAITCNT_WS0_N_4 (0 << 2) -#define WAITCNT_WS0_N_3 (1 << 2) -#define WAITCNT_WS0_N_2 (2 << 2) -#define WAITCNT_WS0_N_8 (3 << 2) -#define WAITCNT_WS0_N_MASK (3 << 2) - -#define WAITCNT_WS0_S_2 (0 << 4) -#define WAITCNT_WS0_S_1 (1 << 4) - -#define WAITCNT_WS1_N_4 (0 << 5) -#define WAITCNT_WS1_N_3 (1 << 5) -#define WAITCNT_WS1_N_2 (2 << 5) -#define WAITCNT_WS1_N_8 (3 << 5) -#define WAITCNT_WS1_N_MASK (3 << 5) - -#define WAITCNT_WS1_S_4 (0 << 7) -#define WAITCNT_WS1_S_1 (1 << 7) - -#define WAITCNT_WS2_N_4 (0 << 8) -#define WAITCNT_WS2_N_3 (1 << 8) -#define WAITCNT_WS2_N_2 (2 << 8) -#define WAITCNT_WS2_N_8 (3 << 8) -#define WAITCNT_WS2_N_MASK (3 << 8) - -#define WAITCNT_WS2_S_8 (0 << 10) -#define WAITCNT_WS2_S_1 (1 << 10) - -#define WAITCNT_PHI_OUT_NONE (0 << 11) -#define WAITCNT_PHI_OUT_4MHZ (1 << 11) -#define WAITCNT_PHI_OUT_8MHZ (2 << 11) -#define WAITCNT_PHI_OUT_16MHZ (3 << 11) -#define WAITCNT_PHI_OUT_MASK (3 << 11) - -#define WAITCNT_PREFETCH_ENABLE (1 << 14) - -#define WAITCNT_AGB (0 << 15) -#define WAITCNT_CGB (1 << 15) - -#endif // GUARD_GBA_IO_REG_H diff --git a/berry_fix/payload/include/gba/isagbprint.h b/berry_fix/payload/include/gba/isagbprint.h deleted file mode 100644 index c5eb456c3f03..000000000000 --- a/berry_fix/payload/include/gba/isagbprint.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef GUARD_GBA_ISAGBPRINT_H -#define GUARD_GBA_ISAGBPRINT_H - -#ifdef NDEBUG -#define AGBPrintInit() -#define AGBPutc(cChr) -#define AGBPrint(pBuf) -#define AGBPrintf(pBuf, ...) -#define AGBPrintFlush1Block() -#define AGBPrintFlush() -#define AGBAssert(pFile, nLine, pExpression, nStopProgram) -#else -void AGBPrintInit(void); -void AGBPutc(const char cChr); -void AGBPrint(const char *pBuf); -void AGBPrintf(const char *pBuf, ...); -void AGBPrintFlush1Block(void); -void AGBPrintFlush(void); -void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram); -#endif - -#undef AGB_ASSERT -#ifdef NDEBUG -#define AGB_ASSERT(exp) -#else -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1); -#endif - -#undef AGB_WARNING -#ifdef NDEBUG -#define AGB_WARNING(exp) -#else -#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0); -#endif - -// for matching purposes - -#ifdef NDEBUG -#define AGB_ASSERT_EX(exp, file, line) -#else -#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 1); -#endif - -#ifdef NDEBUG -#define AGB_WARNING_EX(exp, file, line) -#else -#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 0); -#endif - -#endif // GUARD_GBA_ISAGBPRINT_H diff --git a/berry_fix/payload/include/gba/m4a_internal.h b/berry_fix/payload/include/gba/m4a_internal.h deleted file mode 100644 index 1aca67585480..000000000000 --- a/berry_fix/payload/include/gba/m4a_internal.h +++ /dev/null @@ -1,467 +0,0 @@ -#ifndef GUARD_GBA_M4A_INTERNAL_H -#define GUARD_GBA_M4A_INTERNAL_H - -#include "gba/gba.h" - -// ASCII encoding of 'Smsh' in reverse -// This is presumably short for SMASH, the developer of MKS4AGB. -#define ID_NUMBER 0x68736D53 - -#define C_V 0x40 // center value for PAN, BEND, and TUNE - -#define SOUND_MODE_REVERB_VAL 0x0000007F -#define SOUND_MODE_REVERB_SET 0x00000080 -#define SOUND_MODE_MAXCHN 0x00000F00 -#define SOUND_MODE_MAXCHN_SHIFT 8 -#define SOUND_MODE_MASVOL 0x0000F000 -#define SOUND_MODE_MASVOL_SHIFT 12 -#define SOUND_MODE_FREQ_05734 0x00010000 -#define SOUND_MODE_FREQ_07884 0x00020000 -#define SOUND_MODE_FREQ_10512 0x00030000 -#define SOUND_MODE_FREQ_13379 0x00040000 -#define SOUND_MODE_FREQ_15768 0x00050000 -#define SOUND_MODE_FREQ_18157 0x00060000 -#define SOUND_MODE_FREQ_21024 0x00070000 -#define SOUND_MODE_FREQ_26758 0x00080000 -#define SOUND_MODE_FREQ_31536 0x00090000 -#define SOUND_MODE_FREQ_36314 0x000A0000 -#define SOUND_MODE_FREQ_40137 0x000B0000 -#define SOUND_MODE_FREQ_42048 0x000C0000 -#define SOUND_MODE_FREQ 0x000F0000 -#define SOUND_MODE_FREQ_SHIFT 16 -#define SOUND_MODE_DA_BIT_9 0x00800000 -#define SOUND_MODE_DA_BIT_8 0x00900000 -#define SOUND_MODE_DA_BIT_7 0x00A00000 -#define SOUND_MODE_DA_BIT_6 0x00B00000 -#define SOUND_MODE_DA_BIT 0x00B00000 -#define SOUND_MODE_DA_BIT_SHIFT 20 - -struct WaveData -{ - u16 type; - u16 status; - u32 freq; - u32 loopStart; - u32 size; // number of samples - s8 data[1]; // samples -}; - -#define TONEDATA_TYPE_CGB 0x07 -#define TONEDATA_TYPE_FIX 0x08 -#define TONEDATA_TYPE_SPL 0x40 // key split -#define TONEDATA_TYPE_RHY 0x80 // rhythm - -#define TONEDATA_P_S_PAN 0xc0 -#define TONEDATA_P_S_PAM TONEDATA_P_S_PAN - -struct ToneData -{ - u8 type; - u8 key; - u8 length; // sound length (compatible sound) - u8 pan_sweep; // pan or sweep (compatible sound ch. 1) - struct WaveData *wav; - u8 attack; - u8 decay; - u8 sustain; - u8 release; -}; - -struct CgbChannel -{ - u8 sf; - u8 ty; - u8 rightVolume; - u8 leftVolume; - u8 at; - u8 de; - u8 su; - u8 re; - u8 ky; - u8 ev; - u8 eg; - u8 ec; - u8 echoVolume; - u8 echoLength; - u8 d1; - u8 d2; - u8 gt; - u8 mk; - u8 ve; - u8 pr; - u8 rp; - u8 d3[3]; - u8 d5; - u8 sg; - u8 n4; - u8 pan; - u8 panMask; - u8 mo; - u8 le; - u8 sw; - u32 fr; - u32 wp; - u32 cp; - u32 tp; - u32 pp; - u32 np; - u8 d4[8]; -}; - -struct MusicPlayerTrack; - -struct SoundChannel -{ - u8 status; - u8 type; - u8 rightVolume; - u8 leftVolume; - u8 attack; - u8 decay; - u8 sustain; - u8 release; - u8 ky; - u8 ev; - u8 er; - u8 el; - u8 echoVolume; - u8 echoLength; - u8 d1; - u8 d2; - u8 gt; - u8 mk; - u8 ve; - u8 pr; - u8 rp; - u8 d3[3]; - u32 ct; - u32 fw; - u32 freq; - struct WaveData *wav; - u32 cp; - struct MusicPlayerTrack *track; - u32 pp; - u32 np; - u32 d4; - u16 xpi; - u16 xpc; -}; - -#define MAX_DIRECTSOUND_CHANNELS 12 - -#define PCM_DMA_BUF_SIZE 1584 // size of Direct Sound buffer - -struct SoundInfo -{ - // This field is normally equal to ID_NUMBER but it is set to other - // values during sensitive operations for locking purposes. - // This field should be volatile but isn't. This could potentially cause - // race conditions. - u32 ident; - - vu8 pcmDmaCounter; - - // Direct Sound - u8 reverb; - u8 maxChans; - u8 masterVolume; - u8 freq; - - u8 mode; - u8 c15; - u8 pcmDmaPeriod; // number of V-blanks per PCM DMA - u8 maxLines; - u8 gap[3]; - s32 pcmSamplesPerVBlank; - s32 pcmFreq; - s32 divFreq; - struct CgbChannel *cgbChans; - u32 func; - u32 intp; - void (*CgbSound)(void); - void (*CgbOscOff)(u8); - u32 (*MidiKeyToCgbFreq)(u8, u8, u8); - u32 MPlayJumpTable; - u32 plynote; - u32 ExtVolPit; - u8 gap2[16]; - struct SoundChannel chans[MAX_DIRECTSOUND_CHANNELS]; - s8 pcmBuffer[PCM_DMA_BUF_SIZE * 2]; -}; - -struct SongHeader -{ - u8 trackCount; - u8 blockCount; - u8 priority; - u8 reverb; - struct ToneData *tone; - u8 *part[1]; -}; - -struct PokemonCrySong -{ - u8 trackCount; - u8 blockCount; - u8 priority; - u8 reverb; - struct ToneData *tone; - u8 *part[2]; - u8 gap; - u8 part0; // 0x11 - u8 tuneValue; // 0x12 - u8 gotoCmd; // 0x13 - u32 gotoTarget; // 0x14 - u8 part1; // 0x18 - u8 tuneValue2; // 0x19 - u8 cont[2]; // 0x1A - u8 volCmd; // 0x1C - u8 volumeValue; // 0x1D - u8 unkCmd0D[2]; // 0x1E - u32 unkCmd0DParam; // 0x20 - u8 xreleCmd[2]; // 0x24 - u8 releaseValue; // 0x26 - u8 panCmd; - u8 panValue; // 0x28 - u8 tieCmd; // 0x29 - u8 tieKeyValue; // 0x2A - u8 tieVelocityValue; // 0x2B - u8 unkCmd0C[2]; // 0x2C - u16 unkCmd0CParam; // 0x2E - u8 end[2]; // 0x30 -}; - -#define MPT_FLG_VOLSET 0x01 -#define MPT_FLG_VOLCHG 0x03 -#define MPT_FLG_PITSET 0x04 -#define MPT_FLG_PITCHG 0x0C -#define MPT_FLG_START 0x40 -#define MPT_FLG_EXIST 0x80 - -struct MusicPlayerTrack -{ - u8 flags; - u8 wait; - u8 patternLevel; - u8 repN; - u8 gateTime; - u8 key; - u8 velocity; - u8 runningStatus; - u8 keyM; - u8 pitM; - s8 keyShift; - s8 keyShiftX; - s8 tune; - u8 pitX; - s8 bend; - u8 bendRange; - u8 volMR; - u8 volML; - u8 vol; - u8 volX; - s8 pan; - s8 panX; - s8 modM; - u8 mod; - u8 modT; - u8 lfoSpeed; - u8 lfoSpeedC; - u8 lfoDelay; - u8 lfoDelayC; - u8 priority; - u8 echoVolume; - u8 echoLength; - struct SoundChannel *chan; - struct ToneData tone; - u8 gap[10]; - u16 unk_3A; - u32 unk_3C; - u8 *cmdPtr; - u8 *patternStack[3]; -}; - -#define MUSICPLAYER_STATUS_TRACK 0x0000ffff -#define MUSICPLAYER_STATUS_PAUSE 0x80000000 - -#define MAX_MUSICPLAYER_TRACKS 16 - -#define TEMPORARY_FADE 0x0001 -#define FADE_IN 0x0002 -#define FADE_VOL_MAX 64 -#define FADE_VOL_SHIFT 2 - -struct MusicPlayerInfo -{ - struct SongHeader *songHeader; - u32 status; - u8 trackCount; - u8 priority; - u8 cmd; - u8 unk_B; - u32 clock; - u8 gap[8]; - u8 *memAccArea; - u16 tempoD; - u16 tempoU; - u16 tempoI; - u16 tempoC; - u16 fadeOI; - u16 fadeOC; - u16 fadeOV; - struct MusicPlayerTrack *tracks; - struct ToneData *tone; - u32 ident; - u32 func; - u32 intp; -}; - -struct MusicPlayer -{ - struct MusicPlayerInfo *info; - struct MusicPlayerTrack *track; - u8 unk_8; - u16 unk_A; -}; - -struct Song -{ - struct SongHeader *header; - u16 ms; - u16 me; -}; - -extern const struct MusicPlayer gMPlayTable[]; -extern const struct Song gSongTable[]; - - - -extern u8 gMPlayMemAccArea[]; - -//u8 gPokemonCrySong[52]; -//u8 gPokemonCrySongs[52 * MAX_POKEMON_CRIES]; - -#define MAX_POKEMON_CRIES 2 - -extern struct PokemonCrySong gPokemonCrySong; -extern struct PokemonCrySong gPokemonCrySongs[]; - -extern struct MusicPlayerInfo gPokemonCryMusicPlayers[]; -extern struct MusicPlayerTrack gPokemonCryTracks[]; - -extern char SoundMainRAM[]; - -extern void *gMPlayJumpTable[]; - -typedef void (*XcmdFunc)(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -extern const XcmdFunc gXcmdTable[]; - -extern struct CgbChannel gCgbChans[]; - -extern const u8 gScaleTable[]; -extern const u32 gFreqTable[]; -extern const u16 gPcmSamplesPerVBlankTable[]; - -extern const u8 gCgbScaleTable[]; -extern const s16 gCgbFreqTable[]; -extern const u8 gNoiseTable[]; - -extern const struct PokemonCrySong gPokemonCrySongTemplate; - -extern const struct ToneData voicegroup000; - -extern char gNumMusicPlayers[]; -extern char gMaxLines[]; - -#define NUM_MUSIC_PLAYERS ((u16)gNumMusicPlayers) -#define MAX_LINES ((u32)gMaxLines) - -u32 umul3232H32(u32 multiplier, u32 multiplicand); -void SoundMain(void); -void SoundMainBTM(void); -void TrackStop(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track); -void MPlayMain(void); -void RealClearChain(void *x); - -void MPlayContinue(struct MusicPlayerInfo *mplayInfo); -void MPlayStart(struct MusicPlayerInfo *mplayInfo, struct SongHeader *songHeader); -void m4aMPlayStop(struct MusicPlayerInfo *mplayInfo); -void FadeOutBody(struct MusicPlayerInfo *mplayInfo); -void TrkVolPitSet(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track); -void MPlayFadeOut(struct MusicPlayerInfo *mplayInfo, u16 speed); -void ClearChain(void *x); -void Clear64byte(void *addr); -void SoundInit(struct SoundInfo *soundInfo); -void MPlayExtender(struct CgbChannel *cgbChans); -void m4aSoundMode(u32 mode); -void MPlayOpen(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track, u8 a3); -void CgbSound(void); -void CgbOscOff(u8); -u32 MidiKeyToCgbFreq(u8, u8, u8); -void DummyFunc(void); -void MPlayJumpTableCopy(void **mplayJumpTable); -void SampleFreqSet(u32 freq); -void m4aSoundVSyncOn(void); -void m4aSoundVSyncOff(void); - -void m4aMPlayTempoControl(struct MusicPlayerInfo *mplayInfo, u16 tempo); -void m4aMPlayVolumeControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u16 volume); -void m4aMPlayPitchControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s16 pitch); -void m4aMPlayPanpotControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s8 pan); -void ClearModM(struct MusicPlayerTrack *track); -void m4aMPlayModDepthSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 modDepth); -void m4aMPlayLFOSpeedSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 lfoSpeed); - -struct MusicPlayerInfo *SetPokemonCryTone(struct ToneData *tone); -void SetPokemonCryVolume(u8 val); -void SetPokemonCryPanpot(s8 val); -void SetPokemonCryPitch(s16 val); -void SetPokemonCryLength(u16 val); -void SetPokemonCryRelease(u8 val); -void SetPokemonCryProgress(u32 val); -bool32 IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo); -void SetPokemonCryChorus(s8 val); -void SetPokemonCryStereo(u32 val); -void SetPokemonCryPriority(u8 val); - -// sound command handler functions -void ply_fine(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_goto(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_patt(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_pend(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_rept(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_memacc(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_prio(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_tempo(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_keysh(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_voice(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_vol(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_pan(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_bend(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_bendr(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_lfos(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_lfodl(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_mod(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_modt(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_tune(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_port(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xcmd(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_endtie(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_note(struct MusicPlayerInfo *, struct MusicPlayerTrack *); - -// extended sound command handler functions -void ply_xxx(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xwave(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xtype(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xatta(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xdeca(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xsust(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xrele(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xiecv(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xiecl(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xleng(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xswee(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xcmd_0C(struct MusicPlayerInfo *, struct MusicPlayerTrack *); -void ply_xcmd_0D(struct MusicPlayerInfo *, struct MusicPlayerTrack *); - -#endif // GUARD_GBA_M4A_INTERNAL_H diff --git a/berry_fix/payload/include/gba/macro.h b/berry_fix/payload/include/gba/macro.h deleted file mode 100644 index 6f9c55f2edef..000000000000 --- a/berry_fix/payload/include/gba/macro.h +++ /dev/null @@ -1,247 +0,0 @@ -#ifndef GUARD_GBA_MACRO_H -#define GUARD_GBA_MACRO_H - -#define CPU_FILL(value, dest, size, bit) \ -{ \ - vu##bit tmp = (vu##bit)(value); \ - CpuSet((void *)&tmp, \ - dest, \ - CPU_SET_##bit##BIT | CPU_SET_SRC_FIXED | ((size)/(bit/8) & 0x1FFFFF)); \ -} - -#define CpuFill16(value, dest, size) CPU_FILL(value, dest, size, 16) -#define CpuFill32(value, dest, size) CPU_FILL(value, dest, size, 32) - -#define CPU_COPY(src, dest, size, bit) CpuSet(src, dest, CPU_SET_##bit##BIT | ((size)/(bit/8) & 0x1FFFFF)) - -#define CpuCopy16(src, dest, size) CPU_COPY(src, dest, size, 16) -#define CpuCopy32(src, dest, size) CPU_COPY(src, dest, size, 32) - -#define CpuFastFill(value, dest, size) \ -{ \ - vu32 tmp = (vu32)(value); \ - CpuFastSet((void *)&tmp, \ - dest, \ - CPU_FAST_SET_SRC_FIXED | ((size)/(32/8) & 0x1FFFFF)); \ -} - -#define CpuFastFill16(value, dest, size) CpuFastFill(((value) << 16) | (value), (dest), (size)) - -#define CpuFastFill8(value, dest, size) CpuFastFill(((value) << 24) | ((value) << 16) | ((value) << 8) | (value), (dest), (size)) - -#define CpuFastCopy(src, dest, size) CpuFastSet(src, dest, ((size)/(32/8) & 0x1FFFFF)) - -#define DmaSet(dmaNum, src, dest, control) \ -{ \ - vu32 *dmaRegs = (vu32 *)REG_ADDR_DMA##dmaNum; \ - dmaRegs[0] = (vu32)(src); \ - dmaRegs[1] = (vu32)(dest); \ - dmaRegs[2] = (vu32)(control); \ - dmaRegs[2]; \ -} - -#define DMA_FILL(dmaNum, value, dest, size, bit) \ -{ \ - vu##bit tmp = (vu##bit)(value); \ - DmaSet(dmaNum, \ - &tmp, \ - dest, \ - (DMA_ENABLE | DMA_START_NOW | DMA_##bit##BIT | DMA_SRC_FIXED | DMA_DEST_INC) << 16 \ - | ((size)/(bit/8))); \ -} - -#define DmaFill16(dmaNum, value, dest, size) DMA_FILL(dmaNum, value, dest, size, 16) -#define DmaFill32(dmaNum, value, dest, size) DMA_FILL(dmaNum, value, dest, size, 32) - -// Note that the DMA clear macros cause the DMA control value to be calculated -// at runtime rather than compile time. The size is divided by the DMA transfer -// unit size (2 or 4 bytes) and then combined with the DMA control flags using a -// bitwise OR operation. - -#define DMA_CLEAR(dmaNum, dest, size, bit) \ -{ \ - vu##bit *_dest = (vu##bit *)(dest); \ - u32 _size = size; \ - DmaFill##bit(dmaNum, 0, _dest, _size); \ -} - -#define DmaClear16(dmaNum, dest, size) DMA_CLEAR(dmaNum, dest, size, 16) -#define DmaClear32(dmaNum, dest, size) DMA_CLEAR(dmaNum, dest, size, 32) - -#define DMA_COPY(dmaNum, src, dest, size, bit) \ - DmaSet(dmaNum, \ - src, \ - dest, \ - (DMA_ENABLE | DMA_START_NOW | DMA_##bit##BIT | DMA_SRC_INC | DMA_DEST_INC) << 16 \ - | ((size)/(bit/8))) - -#define DmaCopy16(dmaNum, src, dest, size) DMA_COPY(dmaNum, src, dest, size, 16) -#define DmaCopy32(dmaNum, src, dest, size) DMA_COPY(dmaNum, src, dest, size, 32) - -#define DmaCopyLarge(dmaNum, src, dest, size, block, bit) \ -{ \ - const void *_src = src; \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - while (1) \ - { \ - DmaCopy##bit(dmaNum, _src, _dest, (block)); \ - _src += (block); \ - _dest += (block); \ - _size -= (block); \ - if (_size <= (block)) \ - { \ - DmaCopy##bit(dmaNum, _src, _dest, _size); \ - break; \ - } \ - } \ -} - -#define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16) - -#define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32) - -#define DmaFillLarge(dmaNum, value, dest, size, block, bit) \ -{ \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - while (1) \ - { \ - DmaFill##bit(dmaNum, value, _dest, (block)); \ - _dest += (block); \ - _size -= (block); \ - if (_size <= (block)) \ - { \ - DmaFill##bit(dmaNum, value, _dest, _size); \ - break; \ - } \ - } \ -} - -#define DmaFillLarge16(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 16) - -#define DmaFillLarge32(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 32) - -#define DmaClearLarge(dmaNum, dest, size, block, bit) \ -{ \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - while (1) \ - { \ - DmaFill##bit(dmaNum, 0, _dest, (block)); \ - _dest += (block); \ - _size -= (block); \ - if (_size <= (block)) \ - { \ - DmaFill##bit(dmaNum, 0, _dest, _size); \ - break; \ - } \ - } \ -} - -#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16) - -#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32) - -#define DmaCopyDefvars(dmaNum, src, dest, size, bit) \ -{ \ - const void *_src = src; \ - void *_dest = (void *)(dest); \ - u32 _size = size; \ - DmaCopy##bit(dmaNum, _src, _dest, _size); \ -} - -#define DmaCopy16Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 16) -#define DmaCopy32Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 32) - -#define DmaFillDefvars(dmaNum, value, dest, size, bit) \ -{ \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - DmaFill##bit(dmaNum, value, _dest, _size); \ -} - -#define DmaFill16Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 16) -#define DmaFill32Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 32) - -#define DmaClearDefvars(dmaNum, dest, size, bit) \ -{ \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - DmaClear##bit(dmaNum, _dest, _size); \ -} - -#define DmaClear16Defvars(dmaNum, dest, size) DmaClearDefvars(dmaNum, dest, size, 16) -#define DmaClear32Defvars(dmaNum, dest, size) DmaClearDefvars(dmaNum, dest, size, 32) - -#define DmaStop(dmaNum) \ -{ \ - vu16 *dmaRegs = (vu16 *)REG_ADDR_DMA##dmaNum; \ - dmaRegs[5] &= ~(DMA_START_MASK | DMA_DREQ_ON | DMA_REPEAT); \ - dmaRegs[5] &= ~DMA_ENABLE; \ - dmaRegs[5]; \ -} - -#define IntrEnable(flags) \ -{ \ - u16 imeTemp; \ - \ - imeTemp = REG_IME; \ - REG_IME = 0; \ - REG_IE |= flags; \ - REG_IME = imeTemp; \ -} \ -// from pokeemerald -// Maximum amount of data we will transfer in one operation -#define MAX_DMA_BLOCK_SIZE 0x1000 - -#define MAX_DMA_REQUESTS 128 - -#define DMA_REQUEST_COPY32 1 -#define DMA_REQUEST_FILL32 2 -#define DMA_REQUEST_COPY16 3 -#define DMA_REQUEST_FILL16 4 - -#define Dma3CopyLarge_(src, dest, size, bit) \ -{ \ - const void *_src = src; \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - while (1) \ - { \ - if (_size <= MAX_DMA_BLOCK_SIZE) \ - { \ - DmaCopy##bit(3, _src, _dest, _size); \ - break; \ - } \ - DmaCopy##bit(3, _src, _dest, MAX_DMA_BLOCK_SIZE); \ - _src += MAX_DMA_BLOCK_SIZE; \ - _dest += MAX_DMA_BLOCK_SIZE; \ - _size -= MAX_DMA_BLOCK_SIZE; \ - } \ -} - -#define Dma3CopyLarge16_(src, dest, size) Dma3CopyLarge_(src, dest, size, 16) -#define Dma3CopyLarge32_(src, dest, size) Dma3CopyLarge_(src, dest, size, 32) - -#define Dma3FillLarge_(value, dest, size, bit) \ -{ \ - void *_dest = (void *)dest; \ - u32 _size = size; \ - while (1) \ - { \ - if (_size <= MAX_DMA_BLOCK_SIZE) \ - { \ - DmaFill##bit(3, value, _dest, _size); \ - break; \ - } \ - DmaFill##bit(3, value, _dest, MAX_DMA_BLOCK_SIZE); \ - _dest += MAX_DMA_BLOCK_SIZE; \ - _size -= MAX_DMA_BLOCK_SIZE; \ - } \ -} - -#define Dma3FillLarge16_(value, dest, size) Dma3FillLarge_(value, dest, size, 16) -#define Dma3FillLarge32_(value, dest, size) Dma3FillLarge_(value, dest, size, 32) - -#endif // GUARD_GBA_MACRO_H diff --git a/berry_fix/payload/include/gba/multiboot.h b/berry_fix/payload/include/gba/multiboot.h deleted file mode 100644 index 14b6594b291e..000000000000 --- a/berry_fix/payload/include/gba/multiboot.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef GUARD_GBA_MULTIBOOT_H -#define GUARD_GBA_MULTIBOOT_H - -#define MULTIBOOT_NCHILD 3 // Maximum number of slaves -#define MULTIBOOT_HEADER_SIZE 0xc0 // Header size -#define MULTIBOOT_SEND_SIZE_MIN 0x100 // Minimum transmission size -#define MULTIBOOT_SEND_SIZE_MAX 0x40000 // Maximum transmission size - -struct MultiBootParam -{ - u32 system_work[5]; // 00 - u8 handshake_data; // 14 - u8 padding; // 15 - u16 handshake_timeout; // 16 - u8 probe_count; // 18 - u8 client_data[MULTIBOOT_NCHILD]; // 19 - u8 palette_data; // 1c - u8 response_bit; // 1d - u8 client_bit; // 1e - u8 reserved1; // 1f - const u8 *boot_srcp; // 20 - const u8 *boot_endp; // 24 - const u8 *masterp; - u8 *reserved2[MULTIBOOT_NCHILD]; - u32 system_work2[4]; - u8 sendflag; - u8 probe_target_bit; - u8 check_wait; - u8 server_type; -}; - -#define MULTIBOOT_ERROR_04 0x04 -#define MULTIBOOT_ERROR_08 0x08 -#define MULTIBOOT_ERROR_0c 0x0c -#define MULTIBOOT_ERROR_40 0x40 -#define MULTIBOOT_ERROR_44 0x44 -#define MULTIBOOT_ERROR_48 0x48 -#define MULTIBOOT_ERROR_4c 0x4c -#define MULTIBOOT_ERROR_80 0x80 -#define MULTIBOOT_ERROR_84 0x84 -#define MULTIBOOT_ERROR_88 0x88 -#define MULTIBOOT_ERROR_8c 0x8c -#define MULTIBOOT_ERROR_NO_PROBE_TARGET 0x50 -#define MULTIBOOT_ERROR_NO_DLREADY 0x60 -#define MULTIBOOT_ERROR_BOOT_FAILURE 0x70 -#define MULTIBOOT_ERROR_HANDSHAKE_FAILURE 0x71 - -#define MULTIBOOT_CONNECTION_CHECK_WAIT 15 - -#define MULTIBOOT_SERVER_TYPE_NORMAL 0 -#define MULTIBOOT_SERVER_TYPE_QUICK 1 - -#define MULTIBOOT_HANDSHAKE_TIMEOUT 400 - -#endif // GUARD_GBA_MULTIBOOT_H diff --git a/berry_fix/payload/include/gba/syscall.h b/berry_fix/payload/include/gba/syscall.h deleted file mode 100644 index eb1bd4e20f3a..000000000000 --- a/berry_fix/payload/include/gba/syscall.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef GUARD_GBA_SYSCALL_H -#define GUARD_GBA_SYSCALL_H - -#include "gba/types.h" - -#define RESET_EWRAM 0x01 -#define RESET_IWRAM 0x02 -#define RESET_PALETTE 0x04 -#define RESET_VRAM 0x08 -#define RESET_OAM 0x10 -#define RESET_SIO_REGS 0x20 -#define RESET_SOUND_REGS 0x40 -#define RESET_REGS 0x80 -#define RESET_ALL 0xFF - -void SoftReset(u32 resetFlags); - -void RegisterRamReset(u32 resetFlags); - -void VBlankIntrWait(void); - -u16 Sqrt(u32 num); - -u16 ArcTan2(s16 x, s16 y); - -#define CPU_SET_SRC_FIXED 0x01000000 -#define CPU_SET_16BIT 0x00000000 -#define CPU_SET_32BIT 0x04000000 - -void CpuSet(const void *src, void *dest, u32 control); - -#define CPU_FAST_SET_SRC_FIXED 0x01000000 - -void CpuFastSet(const void *src, void *dest, u32 control); - -void BgAffineSet(struct BgAffineSrcData *src, struct BgAffineDstData *dest, s32 count); - -void ObjAffineSet(struct ObjAffineSrcData *src, void *dest, s32 count, s32 offset); - -void LZ77UnCompWram(const void *src, void *dest); - -void LZ77UnCompVram(const void *src, void *dest); - -void RLUnCompWram(const void *src, void *dest); - -void RLUnCompVram(const void *src, void *dest); - -int MultiBoot(struct MultiBootParam *mp); - -void SoundBiasReset(void); - -void SoundBiasSet(void); - -u32 Div(u32 divisor, u32 dividend); -u32 Mod(u32 divisor, u32 dividend); - -#endif // GUARD_GBA_SYSCALL_H diff --git a/berry_fix/payload/include/gba/types.h b/berry_fix/payload/include/gba/types.h deleted file mode 100644 index e919abc22a32..000000000000 --- a/berry_fix/payload/include/gba/types.h +++ /dev/null @@ -1,146 +0,0 @@ -#ifndef GUARD_GBA_TYPES_H -#define GUARD_GBA_TYPES_H - -#include - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -typedef volatile u8 vu8; -typedef volatile u16 vu16; -typedef volatile u32 vu32; -typedef volatile u64 vu64; -typedef volatile s8 vs8; -typedef volatile s16 vs16; -typedef volatile s32 vs32; -typedef volatile s64 vs64; - -typedef float f32; -typedef double f64; - -typedef u8 bool8; -typedef u16 bool16; -typedef u32 bool32; - -struct BgCnt -{ - u16 priority:2; - u16 charBaseBlock:2; - u16 dummy:2; - u16 mosaic:1; - u16 palettes:1; - u16 screenBaseBlock:5; - u16 areaOverflowMode:1; - u16 screenSize:2; -}; -typedef volatile struct BgCnt vBgCnt; - -struct PlttData -{ - u16 r:5; // red - u16 g:5; // green - u16 b:5; // blue - u16 unused_15:1; -}; - -struct OamData -{ - /*0x00*/ u32 y:8; - /*0x01*/ u32 affineMode:2; // 0x1, 0x2 -> 0x4 - u32 objMode:2; // 0x4, 0x8 -> 0xC - u32 mosaic:1; // 0x10 - u32 bpp:1; // 0x20 - u32 shape:2; // 0x40, 0x80 -> 0xC0 - - /*0x02*/ u32 x:9; - u32 matrixNum:5; // bits 3/4 are h-flip/v-flip if not in affine mode - u32 size:2; - - /*0x04*/ u16 tileNum:10; // 0x3FF - u16 priority:2; // 0x400, 0x800 -> 0xC00 - u16 paletteNum:4; - /*0x06*/ u16 affineParam; -}; - -#define ST_OAM_OBJ_NORMAL 0 -#define ST_OAM_OBJ_BLEND 1 -#define ST_OAM_OBJ_WINDOW 2 - -#define ST_OAM_AFFINE_OFF 0 -#define ST_OAM_AFFINE_NORMAL 1 -#define ST_OAM_AFFINE_ERASE 2 -#define ST_OAM_AFFINE_DOUBLE 3 - -#define ST_OAM_AFFINE_ON_MASK 1 -#define ST_OAM_AFFINE_DOUBLE_MASK 2 - -#define ST_OAM_4BPP 0 -#define ST_OAM_8BPP 1 - -#define ST_OAM_SQUARE 0 -#define ST_OAM_H_RECTANGLE 1 -#define ST_OAM_V_RECTANGLE 2 - -struct BgAffineSrcData -{ - s32 texX; - s32 texY; - s16 scrX; - s16 scrY; - s16 sx; - s16 sy; - u16 alpha; -}; - -struct BgAffineDstData -{ - s16 pa; - s16 pb; - s16 pc; - s16 pd; - s32 dx; - s32 dy; -}; - -struct ObjAffineSrcData -{ - s16 xScale; - s16 yScale; - u16 rotation; -}; - -// Multi-player SIO Control Structure -struct SioMultiCnt -{ - u16 baudRate:2; // baud rate - u16 si:1; // SI terminal - u16 sd:1; // SD terminal - u16 id:2; // ID - u16 error:1; // error flag - u16 enable:1; // SIO enable - u16 unused_11_8:4; - u16 mode:2; // communication mode (should equal 2) - u16 intrEnable:1; // IRQ enable - u16 unused_15:1; - u16 data; // data -}; - -#define ST_SIO_MULTI_MODE 2 // Multi-player communication mode - -// baud rate -#define ST_SIO_9600_BPS 0 // 9600 bps -#define ST_SIO_38400_BPS 1 // 38400 bps -#define ST_SIO_57600_BPS 2 // 57600 bps -#define ST_SIO_115200_BPS 3 // 115200 bps - -typedef void (*MainCallback)(void); -typedef void (*IntrCallback)(void); -typedef void (*IntrFunc)(void); - -#endif // GUARD_GBA_TYPES_H diff --git a/berry_fix/payload/include/global.berry.h b/berry_fix/payload/include/global.berry.h deleted file mode 100644 index 8f185c8f9df1..000000000000 --- a/berry_fix/payload/include/global.berry.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef GUARD_GLOBAL_BERRY_H -#define GUARD_GLOBAL_BERRY_H - -struct Berry -{ - /*0x00*/ u8 name[7]; - /*0x07*/ u8 firmness; - /*0x08*/ u16 size; - /*0x0A*/ u8 maxYield; - /*0x0B*/ u8 minYield; - /*0x0C*/ const u8 *description1; - /*0x10*/ const u8 *description2; - /*0x14*/ u8 stageDuration; - /*0x15*/ u8 spicy; - /*0x16*/ u8 dry; - /*0x17*/ u8 sweet; - /*0x18*/ u8 bitter; - /*0x19*/ u8 sour; - /*0x1A*/ u8 smoothness; -}; - -struct EnigmaBerry -{ - /*0x000*/ struct Berry berry; - /*0x01B*/ u8 pic[(6 * 6) * TILE_SIZE_4BPP]; - /*0x49C*/ u16 palette[16]; - /*0x4BC*/ u8 description1[45]; - /*0x4E9*/ u8 description2[45]; - /*0x516*/ u8 itemEffect[18]; - /*0x528*/ u8 holdEffect; - /*0x529*/ u8 holdEffectParam; - /*0x52C*/ u32 checksum; -}; - -struct BattleEnigmaBerry -{ - /*0x00*/ u8 name[7]; - /*0x07*/ u8 holdEffect; - /*0x08*/ u8 itemEffect[18]; - /*0x1A*/ u8 holdEffectParam; -}; - -struct BerryTree -{ - /*0x00*/ u8 berry; - /*0x01*/ u8 stage:7; - /* - A berry sparkle is a state that a berry tree - can be in after growing within the player's - viewport. - */ - /*0x01*/ bool8 growthSparkle:1; - /*0x02*/ u16 minutesUntilNextStage; - /*0x04*/ u8 berryYield; - /*0x05*/ u8 regrowthCount:4; - /*0x05*/ u8 watered1:1; - /*0x05*/ u8 watered2:1; - /*0x05*/ u8 watered3:1; - /*0x05*/ u8 watered4:1; -}; - -#endif // GUARD_GLOBAL_BERRY_H diff --git a/berry_fix/payload/include/global.fieldmap.h b/berry_fix/payload/include/global.fieldmap.h deleted file mode 100644 index e7150b429f38..000000000000 --- a/berry_fix/payload/include/global.fieldmap.h +++ /dev/null @@ -1,310 +0,0 @@ -#ifndef GUARD_GLOBAL_FIELDMAP_H -#define GUARD_GLOBAL_FIELDMAP_H - -enum -{ - CONNECTION_SOUTH = 1, - CONNECTION_NORTH, - CONNECTION_WEST, - CONNECTION_EAST, - CONNECTION_DIVE, - CONNECTION_EMERGE -}; - -typedef void (*TilesetCB)(void); - -struct Tileset -{ - /*0x00*/ bool8 isCompressed; - /*0x01*/ bool8 isSecondary; - /*0x04*/ void *tiles; - /*0x08*/ void *palettes; - /*0x0c*/ void *metatiles; - /*0x10*/ void *metatileAttributes; - /*0x14*/ TilesetCB callback; -}; - -struct MapLayout -{ - /*0x00*/ s32 width; - /*0x04*/ s32 height; - /*0x08*/ u16 *border; - /*0x0c*/ u16 *map; - /*0x10*/ struct Tileset *primaryTileset; - /*0x14*/ struct Tileset *secondaryTileset; -}; - -struct BackupMapLayout -{ - s32 width; - s32 height; - u16 *map; -}; - -struct EventObjectTemplate -{ - /*0x00*/ u8 localId; - /*0x01*/ u8 graphicsId; - /*0x02*/ u8 unk2; - /*0x04*/ s16 x; - /*0x06*/ s16 y; - /*0x08*/ u8 elevation; - /*0x09*/ u8 movementType; - /*0x0A*/ u8 movementRangeX:4; - u8 movementRangeY:4; - /*0x0C*/ u16 trainerType; - /*0x0E*/ u16 trainerRange_berryTreeId; - /*0x10*/ u8 *script; - /*0x14*/ u16 flagId; -}; - -struct WarpEvent -{ - s16 x, y; - u8 elevation; - u8 warpId; - u8 mapNum; - u8 mapGroup; -}; - -struct CoordEvent -{ - s16 x, y; - u8 elevation; - u16 trigger; - u16 index; - u8 filler_A[0x2]; - u8 *script; -}; - -struct BgEvent -{ - u16 x, y; - u8 elevation; - u8 kind; // The "kind" field determines how to access bgUnion union below. - union { - u8 *script; - struct { - u16 item; - u16 hiddenItemId; - } hiddenItem; - u32 secretBaseId; - } bgUnion; -}; - -struct MapEvents -{ - u8 eventObjectCount; - u8 warpCount; - u8 coordEventCount; - u8 bgEventCount; - - struct EventObjectTemplate *eventObjects; - struct WarpEvent *warps; - struct CoordEvent *coordEvents; - struct BgEvent *bgEvents; -}; - -struct MapConnection -{ - /*0x00*/ u8 direction; - /*0x01*/ u32 offset; - /*0x05*/ u8 mapGroup; - /*0x06*/ u8 mapNum; -}; - -struct MapConnections -{ - s32 count; - struct MapConnection *connections; -}; - -struct MapHeader -{ - /* 0x00 */ struct MapLayout *mapLayout; - /* 0x04 */ struct MapEvents *events; - /* 0x08 */ u8 *mapScripts; - /* 0x0C */ struct MapConnections *connections; - /* 0x10 */ u16 music; - /* 0x12 */ u16 mapLayoutId; - /* 0x14 */ u8 regionMapSectionId; - /* 0x15 */ u8 cave; - /* 0x16 */ u8 weather; - /* 0x17 */ u8 mapType; - /* 0x18 */ u8 filler_18; - /* 0x19 */ u8 escapeRope; - /* 0x1A */ u8 flags; - /* 0x1B */ u8 battleType; -}; - -struct EventObject -{ - /*0x00*/ u32 active:1; - u32 singleMovementActive:1; - u32 triggerGroundEffectsOnMove:1; - u32 triggerGroundEffectsOnStop:1; - u32 disableCoveringGroundEffects:1; // disables ground effects that cover parts of the object's sprite - u32 landingJump:1; - u32 heldMovementActive:1; - u32 heldMovementFinished:1; - /*0x01*/ u32 frozen:1; - u32 facingDirectionLocked:1; - u32 disableAnim:1; // used to disable forced movement sliding animations (like on ice) - u32 enableAnim:1; - u32 inanimate:1; - u32 invisible:1; - u32 offScreen:1; - u32 trackedByCamera:1; // only set for the player object - /*0x02*/ u32 isPlayer:1; - u32 hasReflection:1; - u32 inShortGrass:1; - u32 inShallowFlowingWater:1; - u32 inSandPile:1; - u32 inHotSprings:1; - u32 hasShadow:1; - u32 spriteAnimPausedBackup:1; - /*0x03*/ u32 spriteAffineAnimPausedBackup:1; - u32 disableJumpLandingGroundEffect:1; - u32 fixedPriority:1; - /*0x04*/ u8 spriteId; - /*0x05*/ u8 graphicsId; - /*0x06*/ u8 movementType; - /*0x07*/ u8 trainerType; - /*0x08*/ u8 localId; - /*0x09*/ u8 mapNum; - /*0x0A*/ u8 mapGroup; - /*0x0B*/ u8 currentElevation:4; - u8 previousElevation:4; - /*0x0C*/ struct Coords16 initialCoords; - /*0x10*/ struct Coords16 currentCoords; - /*0x14*/ struct Coords16 previousCoords; - /*0x18*/ u8 facingDirection:4; - /*0x18*/ u8 movementDirection:4; - /*0x19*/ union __attribute__((packed)) { - u8 as_byte; - struct __attribute__((packed)) { - u16 x:4; - u16 y:4; - } as_nybbles; - } range; - /*0x1A*/ u8 fieldEffectSpriteId; - /*0x1B*/ u8 warpArrowSpriteId; - /*0x1C*/ u8 movementActionId; - /*0x1D*/ u8 trainerRange_berryTreeId; - /*0x1E*/ u8 currentMetatileBehavior; - /*0x1F*/ u8 previousMetatileBehavior; - /*0x20*/ u8 previousMovementDirection; - /*0x21*/ u8 directionSequenceIndex; - /*0x22*/ u8 playerCopyableMovement; // used as an index to gCopyPlayerMovementFuncs for the "copy player" movement types - /*size = 0x24*/ -}; - -struct EventObjectGraphicsInfo -{ - /*0x00*/ u16 tileTag; - /*0x02*/ u16 paletteTag; - /*0x04*/ u16 bridgeReflectionPaletteTag; - /*0x06*/ u16 size; - /*0x08*/ s16 width; - /*0x0A*/ s16 height; - /*0x0C*/ u8 paletteSlot:4; - u8 shadowSize:2; - u8 inanimate:1; - u8 disableReflectionPaletteLoad:1; - /*0x0D*/ u8 tracks; - /*0x10*/ const struct OamData *oam; - /*0x14*/ const struct SubspriteTable *subspriteTables; - /*0x18*/ const union AnimCmd *const *anims; - /*0x1C*/ const struct SpriteFrameImage *images; - /*0x20*/ const union AffineAnimCmd *const *affineAnims; -}; - -#define PLAYER_AVATAR_FLAG_ON_FOOT (1 << 0) -#define PLAYER_AVATAR_FLAG_MACH_BIKE (1 << 1) -#define PLAYER_AVATAR_FLAG_ACRO_BIKE (1 << 2) -#define PLAYER_AVATAR_FLAG_SURFING (1 << 3) -#define PLAYER_AVATAR_FLAG_UNDERWATER (1 << 4) -#define PLAYER_AVATAR_FLAG_CONTROLLABLE (1 << 5) -#define PLAYER_AVATAR_FLAG_FORCED_MOVE (1 << 6) -#define PLAYER_AVATAR_FLAG_DASH (1 << 7) - -enum -{ - ACRO_BIKE_NORMAL, - ACRO_BIKE_TURNING, - ACRO_BIKE_WHEELIE_STANDING, - ACRO_BIKE_BUNNY_HOP, - ACRO_BIKE_WHEELIE_MOVING, - ACRO_BIKE_STATE5, - ACRO_BIKE_STATE6, -}; - -enum -{ - DIR_NONE, - DIR_SOUTH, - DIR_NORTH, - DIR_WEST, - DIR_EAST, - DIR_SOUTHWEST, - DIR_SOUTHEAST, - DIR_NORTHWEST, - DIR_NORTHEAST, -}; - -enum -{ - COLLISION_LEDGE_JUMP = 6 -}; - -// player running states -enum -{ - NOT_MOVING, - TURN_DIRECTION, // not the same as turning! turns your avatar without moving. also known as a turn frame in some circles - MOVING, -}; - -// player tile transition states -enum -{ - T_NOT_MOVING, - T_TILE_TRANSITION, - T_TILE_CENTER, // player is on a frame in which they are centered on a tile during which the player either stops or keeps their momentum and keeps going, changing direction if necessary. -}; - -struct PlayerAvatar /* 0x202E858 */ -{ - /*0x00*/ u8 flags; - /*0x01*/ u8 unk1; // used to be named bike, but its definitely not that. seems to be some transition flags - /*0x02*/ u8 runningState; // this is a static running state. 00 is not moving, 01 is turn direction, 02 is moving. - /*0x03*/ u8 tileTransitionState; // this is a transition running state: 00 is not moving, 01 is transition between tiles, 02 means you are on the frame in which you have centered on a tile but are about to keep moving, even if changing directions. 2 is also used for a ledge hop, since you are transitioning. - /*0x04*/ u8 spriteId; - /*0x05*/ u8 eventObjectId; - /*0x06*/ bool8 preventStep; - /*0x07*/ u8 gender; - /*0x08*/ u8 acroBikeState; // 00 is normal, 01 is turning, 02 is standing wheelie, 03 is hopping wheelie - /*0x09*/ u8 newDirBackup; // during bike movement, the new direction as opposed to player's direction is backed up here. - /*0x0A*/ u8 bikeFrameCounter; // on the mach bike, when this value is 1, the bike is moving but not accelerating yet for 1 tile. on the acro bike, this acts as a timer for acro bike. - /*0x0B*/ u8 bikeSpeed; - // acro bike only - /*0x0C*/ u32 directionHistory; // up/down/left/right history is stored in each nybble, but using the field directions and not the io inputs. - /*0x10*/ u32 abStartSelectHistory; // same as above but for A + B + start + select only - // these two are timer history arrays which [0] is the active timer for acro bike. every element is backed up to the next element upon update. - /*0x14*/ u8 dirTimerHistory[8]; - /*0x1C*/ u8 abStartSelectTimerHistory[8]; -}; - -struct Camera -{ - bool8 active:1; - s32 x; - s32 y; -}; - -extern struct EventObject gMapObjects[]; -extern u8 gSelectedEventObject; -extern struct MapHeader gMapHeader; -extern struct PlayerAvatar gPlayerAvatar; - -#endif // GUARD_GLOBAL_FIELDMAP_H diff --git a/berry_fix/payload/include/global.h b/berry_fix/payload/include/global.h deleted file mode 100644 index 4bea138d6733..000000000000 --- a/berry_fix/payload/include/global.h +++ /dev/null @@ -1,876 +0,0 @@ -#ifndef GUARD_GLOBAL_H -#define GUARD_GLOBAL_H - -#include "gba/gba.h" - -// global.h from pokemon ruby - -// IDE support -#if defined(__APPLE__) || defined(__CYGWIN__) || defined(__INTELLISENSE__) -// We define these when using certain IDEs to fool preproc -#define _(x) (x) -#define __(x) (x) -#define INCBIN(...) {0} -#define INCBIN_U8 INCBIN -#define INCBIN_U16 INCBIN -#define INCBIN_U32 INCBIN -#define INCBIN_S8 INCBIN -#define INCBIN_S16 INCBIN -#define INCBIN_S32 INCBIN -#endif // IDE support - -// Prevent cross-jump optimization. -#define BLOCK_CROSS_JUMP asm(""); - -// to help in decompiling -#define asm_comment(x) asm volatile("@ -- " x " -- ") - -#define asm_unified(x) asm(".syntax unified\n" x "\n.syntax divided\n") - -#define ARRAY_COUNT(array) (sizeof(array) / sizeof((array)[0])) - - -#define POKEMON_SLOTS_NUMBER 412 -#define POKEMON_NAME_LENGTH 10 -#define OT_NAME_LENGTH 7 - -#define min(a, b) ((a) < (b) ? (a) : (b)) -#define max(a, b) ((a) >= (b) ? (a) : (b)) - -// why does GF hate 2d arrays -#define MULTI_DIM_ARR(x, dim, y) ((x) * dim + (y)) - -// dim access enums -enum -{ - B_8 = 1, - B_16 = 2, - B_32 = 4 -}; - -// There are many quirks in the source code which have overarching behavioral differences from -// a number of other files. For example, diploma.c seems to declare rodata before each use while -// other files declare out of order and must be at the beginning. There are also a number of -// macros which differ from one file to the next due to the method of obtaining the result, such -// as these below. Because of this, there is a theory (Two Team Theory) that states that these -// programming projects had more than 1 "programming team" which utilized different macros for -// each of the files that were worked on. -#define T1_READ_8(ptr) ((ptr)[0]) -#define T1_READ_16(ptr) ((ptr)[0] | ((ptr)[1] << 8)) -#define T1_READ_32(ptr) ((ptr)[0] | ((ptr)[1] << 8) | ((ptr)[2] << 16) | ((ptr)[3] << 24)) -#define T1_READ_PTR(ptr) (u8*) T1_READ_32(ptr) - -// T2_READ_8 is a duplicate to remain consistent with each group. -#define T2_READ_8(ptr) ((ptr)[0]) -#define T2_READ_16(ptr) ((ptr)[0] + ((ptr)[1] << 8)) -#define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24)) -#define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr) - -// Credits to Made (dolphin emoji) -#define S16TOPOSFLOAT(val) \ -({ \ - s16 v = (val); \ - float f = (float)v; \ - if(v < 0) f += 65536.0f; \ - f; \ -}) - -enum -{ - VERSION_SAPPHIRE = 1, - VERSION_RUBY = 2, - VERSION_EMERALD = 3, -}; - -enum LanguageId -{ - LANGUAGE_JAPANESE = 1, - LANGUAGE_ENGLISH = 2, - LANGUAGE_GERMAN = 5, -}; - -// capacities of various saveblock objects -#define DAYCARE_MON_COUNT 2 -#define POKEBLOCKS_COUNT 40 -#define PARTY_SIZE 6 -#define EVENT_OBJECTS_COUNT 16 -#define BERRY_TREES_COUNT 128 -#define FLAGS_COUNT 288 -#define VARS_COUNT 256 -#define MAIL_COUNT 16 -#define SECRET_BASES_COUNT 20 -#define TV_SHOWS_COUNT 25 -#define POKE_NEWS_COUNT 16 -#define PC_ITEMS_COUNT 50 -#define BAG_ITEMS_COUNT 20 -#define BAG_KEYITEMS_COUNT 20 -#define BAG_POKEBALLS_COUNT 16 -#define BAG_TMHM_COUNT 64 -#define BAG_BERRIES_COUNT 46 - -enum -{ - MALE, - FEMALE -}; - -enum -{ - OPTIONS_BUTTON_MODE_NORMAL, - OPTIONS_BUTTON_MODE_LR, - OPTIONS_BUTTON_MODE_L_EQUALS_A -}; - -enum -{ - OPTIONS_TEXT_SPEED_SLOW, - OPTIONS_TEXT_SPEED_MID, - OPTIONS_TEXT_SPEED_FAST -}; - -enum -{ - OPTIONS_SOUND_MONO, - OPTIONS_SOUND_STEREO -}; - -enum -{ - OPTIONS_BATTLE_STYLE_SHIFT, - OPTIONS_BATTLE_STYLE_SET -}; - -enum -{ - BAG_ITEMS = 1, - BAG_POKEBALLS, - BAG_TMsHMs, - BAG_BERRIES, - BAG_KEYITEMS -}; - -struct Coords16 -{ - s16 x; - s16 y; -}; - -struct UCoords16 -{ - u16 x; - u16 y; -}; - -struct SecretBaseRecord -{ - /*0x1A08*/ u8 secretBaseId; - /*0x1A09*/ u8 sbr_field_1_0:4; - /*0x1A09*/ u8 gender:1; - /*0x1A09*/ u8 sbr_field_1_5:1; - /*0x1A09*/ u8 sbr_field_1_6:2; - /*0x1A0A*/ u8 playerName[OT_NAME_LENGTH]; - /*0x1A11*/ u8 trainerId[4]; // byte 0 is used for determining trainer class - /*0x1A16*/ u16 sbr_field_e; - /*0x1A18*/ u8 sbr_field_10; - /*0x1A19*/ u8 sbr_field_11; - /*0x1A1A*/ u8 decorations[16]; - /*0x1A2A*/ u8 decorationPos[16]; - /*0x1A3C*/ u32 partyPersonality[6]; - /*0x1A54*/ u16 partyMoves[6 * 4]; - /*0x1A84*/ u16 partySpecies[6]; - /*0x1A90*/ u16 partyHeldItems[6]; - /*0x1A9C*/ u8 partyLevels[6]; - /*0x1AA2*/ u8 partyEVs[6]; -}; - -#include "constants/game_stat.h" -#include "global.fieldmap.h" -#include "global.berry.h" -#include "pokemon.h" - -struct WarpData -{ - s8 mapGroup; - s8 mapNum; - s8 warpId; - s16 x, y; -}; - -struct ItemSlot -{ - u16 itemId; - u16 quantity; -}; - -struct Pokeblock -{ - u8 color; - u8 spicy; - u8 dry; - u8 sweet; - u8 bitter; - u8 sour; - u8 feel; -}; - -struct Roamer -{ - /*0x00*/ u32 ivs; - /*0x04*/ u32 personality; - /*0x08*/ u16 species; - /*0x0A*/ u16 hp; - /*0x0C*/ u8 level; - /*0x0D*/ u8 status; - /*0x0E*/ u8 cool; - /*0x0F*/ u8 beauty; - /*0x10*/ u8 cute; - /*0x11*/ u8 smart; - /*0x12*/ u8 tough; - /*0x13*/ bool8 active; - /*0x14*/ u8 filler[0x8]; -}; - -struct RamScriptData -{ - u8 magic; - u8 mapGroup; - u8 mapNum; - u8 objectId; - u8 script[995]; -}; - -struct RamScript -{ - u32 checksum; - struct RamScriptData data; -}; - -struct EasyChatPair -{ - u16 unk0_0:7; - u16 unk0_7:7; - u16 unk1_6:1; - u16 unk2; - u16 words[2]; -}; /*size = 0x8*/ - -struct TVShowCommon -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 pad02[20]; - /*0x16*/ u16 var16[3]; - /*0x1C*/ u8 srcTrainerId3Lo; - /*0x1D*/ u8 srcTrainerId3Hi; - /*0x1E*/ u8 srcTrainerId2Lo; - /*0x1F*/ u8 srcTrainerId2Hi; - /*0x20*/ u8 srcTrainerIdLo; - /*0x21*/ u8 srcTrainerIdHi; - /*0x22*/ u8 trainerIdLo; - /*0x23*/ u8 trainerIdHi; -}; - -struct TVShowFanClubLetter -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 species; - /*0x04*/ u16 pad04[6]; - /*0x10*/ u8 playerName[8]; - /*0x18*/ u8 language; -}; - -struct TVShowRecentHappenings -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 var02; - /*0x04*/ u16 var04[6]; - /*0x10*/ u8 playerName[8]; - /*0x18*/ u8 language; - /*0x19*/ u8 pad19[10]; -}; - -struct TVShowFanclubOpinions -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 var02; - /*0x04*/ u8 var04A:4; - /*0x04*/ u8 var04B:4; - /*0x05*/ u8 playerName[8]; - /*0x0D*/ u8 language; - /*0x0E*/ u8 var0E; - /*0x0F*/ u8 var0F; - /*0x10*/ u8 var10[8]; - /*0x18*/ u16 var18[2]; - /*0x1C*/ u16 var1C[4]; -}; - -struct TVShowUnknownType04 -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 pad02[4]; - /*0x06*/ u16 var06; -}; - -struct TVShowNameRaterShow -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 species; - /*0x04*/ u8 pokemonName[11]; - /*0x0F*/ u8 trainerName[11]; - /*0x1A*/ u8 random; - /*0x1B*/ u8 random2; - /*0x1C*/ u16 var1C; - /*0x1E*/ u8 language; - /*0x1F*/ u8 pokemonNameLanguage; -}; - -struct TVShowBravoTrainerPokemonProfiles -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 species; - /*0x04*/ u16 var04[2]; - /*0x08*/ u8 pokemonNickname[11]; - /*0x13*/ u8 contestCategory:3; - /*0x13*/ u8 contestRank:2; - /*0x13*/ u8 contestResult:2; - /*0x13*/ u8 var13_7:1; - /*0x14*/ u16 var14; - /*0x16*/ u8 playerName[8]; - /*0x1E*/ u8 language; - /*0x1F*/ u8 var1f; -}; - -struct TVShowBravoTrainerBattleTowerSpotlight -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 trainerName[8]; - /*0x0A*/ u16 species; - /*0x0C*/ u8 enemyTrainerName[8]; - /*0x14*/ u16 defeatedSpecies; - /*0x16*/ u16 var16; - /*0x18*/ u16 var18[1]; - /*0x1A*/ u8 btLevel; - /*0x1B*/ u8 var1b; - /*0x1C*/ u8 var1c; - /*0x1D*/ u8 language; -}; - -struct TVShowPokemonToday -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 language; - /*0x03*/ u8 language2; - /*0x04*/ u8 nickname[11]; - /*0x0F*/ u8 ball; - /*0x10*/ u16 species; - /*0x12*/ u8 var12; - /*0x13*/ u8 playerName[8]; -}; - -struct TVShowSmartShopper -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 priceReduced; - /*0x03*/ u8 language; - /*0x04*/ u8 pad04[2]; - /*0x06*/ u16 itemIds[3]; - /*0x0C*/ u16 itemAmounts[3]; - /*0x12*/ u8 shopLocation; - /*0x13*/ u8 playerName[8]; -}; - -struct TVShowPokemonTodayFailed -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 language; - /*0x03*/ u8 pad03[9]; - /*0x0c*/ u16 species; - /*0x0e*/ u16 species2; - /*0x10*/ u8 var10; - /*0x11*/ u8 var11; - /*0x12*/ u8 var12; - /*0x13*/ u8 playerName[8]; -}; - -struct TVShowPokemonAngler -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 var02; - /*0x03*/ u8 var03; - /*0x04*/ u16 var04; - /*0x06*/ u8 language; - u8 pad07[12]; - /*0x13*/ u8 playerName[8]; -}; - -struct TVShowWorldOfMasters -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u16 var02; - /*0x04*/ u16 var04; - /*0x06*/ u16 var06; - /*0x08*/ u16 var08; - /*0x0a*/ u8 var0a; - /*0x0b*/ u8 language; - u8 pad0c[7]; - /*0x13*/ u8 playerName[8]; -}; - -struct TVShowMassOutbreak -{ - /*0x00*/ u8 kind; - /*0x01*/ bool8 active; - /*0x02*/ u8 var02; - /*0x03*/ u8 var03; - /*0x04*/ u16 moves[4]; - /*0x0C*/ u16 species; - /*0x0E*/ u16 var0E; - /*0x10*/ u8 locationMapNum; - /*0x11*/ u8 locationMapGroup; - /*0x12*/ u8 var12; - /*0x13*/ u8 probability; - /*0x14*/ u8 level; - /*0x15*/ u8 var15; - /*0x16*/ u16 daysLeft; - /*0x18*/ u8 language; - u8 pad19[11]; -}; - -typedef union TVShow -{ - struct TVShowCommon common; - struct TVShowFanClubLetter fanclubLetter; - struct TVShowRecentHappenings recentHappenings; - struct TVShowFanclubOpinions fanclubOpinions; - struct TVShowUnknownType04 unkShow04; - struct TVShowNameRaterShow nameRaterShow; - struct TVShowBravoTrainerPokemonProfiles bravoTrainer; - struct TVShowBravoTrainerBattleTowerSpotlight bravoTrainerTower; - struct TVShowPokemonToday pokemonToday; - struct TVShowSmartShopper smartshopperShow; - struct TVShowPokemonTodayFailed pokemonTodayFailed; - struct TVShowPokemonAngler pokemonAngler; - struct TVShowWorldOfMasters worldOfMasters; - struct TVShowMassOutbreak massOutbreak; -} TVShow; - -struct MailStruct -{ - /*0x00*/ u16 words[9]; - /*0x12*/ u8 playerName[8]; - /*0x1A*/ u8 trainerId[4]; - /*0x1E*/ u16 species; - /*0x20*/ u16 itemId; -}; - - -// Mauville Pokemon Center men - -struct MauvilleManCommon -{ - u8 id; -}; - -struct MauvilleManBard -{ - /*0x00*/ u8 id; - /*0x02*/ u16 songLyrics[6]; - /*0x0E*/ u16 temporaryLyrics[6]; - /*0x1A*/ u8 playerName[8]; - /*0x22*/ u8 filler_2DB6[0x3]; - /*0x25*/ u8 playerTrainerId[4]; - /*0x29*/ bool8 hasChangedSong; -}; /*size = 0x2C*/ - -struct MauvilleManHipster -{ - u8 id; - bool8 alreadySpoken; -}; - -struct MauvilleManTrader -{ - u8 id; - u8 unk1[4]; - u8 unk5[4][11]; - bool8 alreadyTraded; -}; - -struct MauvilleManStoryteller -{ - u8 id; - bool8 alreadyRecorded; - u8 filler2[2]; - u8 gameStatIDs[4]; - u8 trainerNames[4][7]; - u8 statValues[4][4]; -}; - -struct MauvilleManGiddy -{ - /*0x00*/ u8 id; - /*0x01*/ u8 taleCounter; - /*0x02*/ u8 questionNum; - /*0x04*/ u16 randomWords[10]; - /*0x18*/ u8 questionList[12]; -}; /*size = 0x2C*/ - - -union MauvilleMan -{ - struct MauvilleManCommon common; - struct MauvilleManBard bard; - struct MauvilleManHipster hipster; - struct MauvilleManTrader trader; - struct MauvilleManStoryteller storyteller; - struct MauvilleManGiddy giddy; - u8 filler[0x40]; // needed to pad out the struct -}; - -struct PokeNews -{ - u8 kind; - u8 state; - u16 days; -}; - -struct GabbyAndTyData -{ - /*2b10*/ u16 mon1; - /*2b12*/ u16 mon2; - /*2b14*/ u16 lastMove; - /*2b16*/ u16 quote; - /*2b18*/ u8 mapnum; - /*2b19*/ u8 battleNum; - /*2b1a*/ u8 valA_0:1; - /*2b1a*/ u8 valA_1:1; - /*2b1a*/ u8 valA_2:1; - /*2b1a*/ u8 valA_3:1; - /*2b1a*/ u8 valA_4:1; - /*2b1a*/ u8 valA_5:3; - /*2b1b*/ u8 valB_0:1; - /*2b1b*/ u8 valB_1:1; - /*2b1b*/ u8 valB_2:1; - /*2b1b*/ u8 valB_3:1; - /*2b1b*/ u8 valB_4:1; - /*2b1b*/ u8 valB_5:3; -}; - -struct DayCareMail -{ - /*0x00*/ struct MailStruct message; - /*0x24*/ u8 names[19]; -}; - -struct DayCareStepCountersEtc { - u32 steps[DAYCARE_MON_COUNT]; - u16 pendingEggPersonality; - u8 eggCycleStepsRemaining; -}; - -struct RecordMixingDayCareMail -{ - struct DayCareMail mail[DAYCARE_MON_COUNT]; - u32 numDaycareMons; - u16 itemsHeld[DAYCARE_MON_COUNT]; // marks whether or not each daycare mon is currently holding an item. -}; - -struct DayCareMisc -{ - struct DayCareMail mail[DAYCARE_MON_COUNT]; - struct DayCareStepCountersEtc countersEtc; -}; - -struct DayCare { - struct BoxPokemon mons[DAYCARE_MON_COUNT]; - struct DayCareMisc misc; -}; - -struct LinkBattleRecord -{ - u8 name[8]; - u16 trainerId; - u16 wins; - u16 losses; - u16 draws; -}; - -struct RecordMixingGiftData -{ - u8 unk0; - u8 quantity; - u16 itemId; - u8 filler4[8]; -}; - -struct RecordMixingGift -{ - int checksum; - struct RecordMixingGiftData data; -}; - -struct ContestWinner -{ - /*0x00*/ u32 personality; // personality - /*0x04*/ u32 otId; // otId - /*0x08*/ u16 species; // species - /*0x0A*/ u8 contestCategory; - /*0x0B*/ u8 nickname[11]; - /*0x16*/ u8 trainerName[8]; -}; - -// there should be enough flags for all 412 slots -// each slot takes up 8 flags -// if the value is not divisible by 8, we need to account for the reminder as well -#define DEX_FLAGS_NO ((POKEMON_SLOTS_NUMBER / 8) + ((POKEMON_SLOTS_NUMBER % 8) ? 1 : 0)) - -struct SaveBlock1 /* 0x02025734 */ -{ - /*0x00*/ struct Coords16 pos; - /*0x04*/ struct WarpData location; - /*0x0C*/ struct WarpData warp1; - /*0x14*/ struct WarpData warp2; - /*0x1C*/ struct WarpData lastHealLocation; - /*0x24*/ struct WarpData warp4; - /*0x2C*/ u16 savedMusic; - /*0x2E*/ u8 weather; - /*0x2F*/ u8 weatherCycleStage; - /*0x30*/ u8 flashLevel; // flash level on current map, 0 being normal and 4 being the darkest - /*0x32*/ u16 mapLayoutId; - /*0x34*/ u16 mapView[0x100]; - /*0x234*/ u8 playerPartyCount; - /*0x238*/ struct Pokemon playerParty[6]; - /*0x490*/ u32 money; - /*0x494*/ u16 coins; - /*0x496*/ u16 registeredItem; // registered for use with SELECT button - /*0x498*/ struct ItemSlot pcItems[PC_ITEMS_COUNT]; - /*0x560*/ struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; - /*0x5B0*/ struct ItemSlot bagPocket_KeyItems[BAG_KEYITEMS_COUNT]; - /*0x600*/ struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; - /*0x640*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT]; - /*0x740*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT]; - /*0x7F8*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT]; - /*0x938*/ u8 dexSeen2[DEX_FLAGS_NO]; - /*0x96C*/ u16 berryBlenderRecords[3]; - /*0x972*/ u8 filler_972[0x6]; - /*0x978*/ u16 trainerRematchStepCounter; - /*0x97A*/ u8 trainerRematches[100]; - /*0x9E0*/ struct EventObject eventObjects[EVENT_OBJECTS_COUNT]; - /*0xC20*/ struct EventObjectTemplate eventObjectTemplates[64]; - /*0x1220*/ u8 flags[FLAGS_COUNT]; - /*0x1340*/ u16 vars[VARS_COUNT]; - /*0x1540*/ u32 gameStats[NUM_GAME_STATS]; - /*0x1608*/ struct BerryTree berryTrees[BERRY_TREES_COUNT]; - /*0x1A08*/ struct SecretBaseRecord secretBases[SECRET_BASES_COUNT]; - /*0x2688*/ u8 playerRoomDecor[12]; - /*0x2694*/ u8 playerRoomDecorPos[12]; - /*0x26A0*/ u8 decorDesk[10]; - /*0x26AA*/ u8 decorChair[10]; - /*0x26B4*/ u8 decorPlant[10]; - /*0x26BE*/ u8 decorOrnament[30]; - /*0x26DC*/ u8 decorMat[30]; - /*0x26FA*/ u8 decorPoster[10]; - /*0x2704*/ u8 decorDoll[40]; - /*0x272C*/ u8 decorCushion[10]; - /*0x2736*/ u8 padding_2736[2]; - /*0x2738*/ TVShow tvShows[TV_SHOWS_COUNT]; - /*0x2ABC*/ struct PokeNews pokeNews[POKE_NEWS_COUNT]; - /*0x2AFC*/ u16 outbreakPokemonSpecies; - /*0x2AFE*/ u8 outbreakLocationMapNum; - /*0x2AFF*/ u8 outbreakLocationMapGroup; - /*0x2B00*/ u8 outbreakPokemonLevel; - /*0x2B01*/ u8 outbreakUnk1; - /*0x2B02*/ u16 outbreakUnk2; - /*0x2B04*/ u16 outbreakPokemonMoves[4]; - /*0x2B0C*/ u8 outbreakUnk4; - /*0x2B0D*/ u8 outbreakPokemonProbability; - /*0x2B0E*/ u16 outbreakUnk5; - /*0x2B10*/ struct GabbyAndTyData gabbyAndTyData; - /*0x2B1C*/ struct { - /*0x2B1C*/ u16 unk2B1C[6]; - /*0x2B28*/ u16 unk2B28[6]; - /*0x2B34*/ u16 unk2B34[6]; - /*0x2B40*/ u16 unk2B40[6]; - } easyChats; - /*0x2B4C*/ struct MailStruct mail[MAIL_COUNT]; - /*0x2D8C*/ u8 unk2D8C[4]; // What is this? Apparently it's supposed to be 64 bytes in size. - /*0x2D90*/ u8 filler_2D90[0x4]; - /*0x2D94*/ union MauvilleMan mauvilleMan; - /*0x2DD4*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff - /*0x2DFC*/ struct ContestWinner contestWinners[8]; - /*0x2EFC*/ struct ContestWinner museumPortraits[5]; - /*0x2F9C*/ struct DayCare daycare; - /*0x30B8*/ struct LinkBattleRecord linkBattleRecords[5]; - struct { - /*0x3108*/ u8 unknown1[8]; - /*0x3110*/ u8 giftRibbons[11]; - /*0x311B*/ u8 unknown2[8]; - /*0x3123*/ u32 currentPokeCoupons; - /*0x3127*/ u32 totalEarnedPokeCoupons; - /*0x312B*/ u8 unknown3[6]; - /*0x3131*/ u8 receivedWishmakerJirachi; - /*0x3132*/ u8 unknown4[18]; - } __attribute__((packed)) externalReservedData; - /*0x3144*/ struct Roamer roamer; - /*0x3160*/ struct EnigmaBerry enigmaBerry; - /*0x3690*/ struct RamScript ramScript; - /*0x3A7C*/ struct RecordMixingGift recordMixingGift; - /*0x3A8C*/ u8 dexSeen3[DEX_FLAGS_NO]; -}; - -extern struct SaveBlock1 gSaveBlock1; - -struct Time -{ - /*0x00*/ s16 days; - /*0x02*/ s8 hours; - /*0x03*/ s8 minutes; - /*0x04*/ s8 seconds; -}; - -struct Pokedex -{ - /*0x00*/ u8 order; - /*0x01*/ u8 unknown1; - /*0x02*/ u8 nationalMagic; // must equal 0xDA in order to have National mode - /*0x03*/ u8 unknown2; - /*0x04*/ u32 unownPersonality; // set when you first see Unown - /*0x08*/ u32 spindaPersonality; // set when you first see Spinda - /*0x0C*/ u32 unknown3; - /*0x10*/ u8 owned[DEX_FLAGS_NO]; - /*0x44*/ u8 seen[DEX_FLAGS_NO]; -}; - -struct BattleTowerTrainer -{ - /*0x00*/ u8 trainerClass; - /*0x01*/ u8 name[8]; - /*0x09*/ u8 teamFlags; - u8 filler0A[2]; - /*0x0C*/ u16 greeting[6]; -}; - -struct BattleTowerRecord // record mixing -{ - /*0x00*/ u8 battleTowerLevelType; // 0 = level 50, 1 = level 100 - /*0x01*/ u8 trainerClass; - /*0x02*/ u16 winStreak; - /*0x04*/ u8 name[8]; - /*0x0C*/ u8 trainerId[4]; - /*0x10*/ u16 greeting[6]; - /*0x1C*/ struct BattleTowerPokemon party[3]; - /*0xA0*/ u32 checksum; -}; - -struct BattleTowerEReaderTrainer -{ - /*0x00*/ u8 unk0; - /*0x01*/ u8 trainerClass; - /*0x02*/ u16 winStreak; - /*0x04*/ u8 name[8]; - /*0x0C*/ u8 trainerId[4]; - /*0x10*/ u16 greeting[6]; - /*0x1C*/ u16 farewellPlayerLost[6]; - /*0x28*/ u16 farewellPlayerWon[6]; - /*0x34*/ struct BattleTowerPokemon party[3]; - /*0xB8*/ u32 checksum; -}; - -struct BattleTowerData -{ - /*0x0000, 0x00A8*/ struct BattleTowerRecord playerRecord; - /*0x00A4, 0x014C*/ struct BattleTowerRecord records[5]; // from record mixing - /*0x03D8, 0x0480*/ u16 firstMonSpecies; // species of the first pokemon in the player's battle tower party - /*0x03DA, 0x0482*/ u16 defeatedBySpecies; // species of the pokemon that defated the player - /*0x03DC, 0x0484*/ u8 defeatedByTrainerName[8]; - /*0x03E4, 0x048C*/ u8 firstMonNickname[POKEMON_NAME_LENGTH]; // nickname of the first pokemon in the player's battle tower party - /*0x03F0, 0x0498*/ struct BattleTowerEReaderTrainer ereaderTrainer; - /*0x04AC, 0x0554*/ u8 battleTowerLevelType:1; // 0 = level 50; 1 = level 100 - /*0x04AC, 0x0554*/ u8 unk_554:1; - /*0x04AD, 0x0555*/ u8 battleOutcome; - /*0x04AE, 0x0556*/ u8 var_4AE[2]; - /*0x04B0, 0x0558*/ u16 curChallengeBattleNum[2]; // 1-based index of battle in the current challenge. (challenges consist of 7 battles) - /*0x04B4, 0x055C*/ u16 curStreakChallengesNum[2]; // 1-based index of the current challenge in the current streak. - /*0x04B8, 0x0560*/ u16 recordWinStreaks[2]; - /*0x04BC, 0x0564*/ u8 battleTowerTrainerId; // index for gBattleTowerTrainers table - /*0x04BD, 0x0565*/ u8 selectedPartyMons[0x3]; // indices of the 3 selected player party mons. - /*0x04C0, 0x0568*/ u16 prizeItem; - /*0x04C2, 0x056A*/ u8 battledTrainerIds[6]; - /*0x04C8, 0x0570*/ u16 totalBattleTowerWins; - /*0x04CA, 0x0572*/ u16 bestBattleTowerWinStreak; - /*0x04CC, 0x0574*/ u16 currentWinStreaks[2]; - /*0x04D0, 0x0578*/ u8 lastStreakLevelType; // 0 = level 50, 1 = level 100. level type of the last streak. Used by tv to report the level mode. - /*0x04D1, 0x0579*/ u8 filler_4D1[0x317]; -}; - -struct SaveBlock2 /* 0x02024EA4 */ -{ - /*0x00*/ u8 playerName[8]; - /*0x08*/ u8 playerGender; // MALE, FEMALE - /*0x09*/ u8 specialSaveWarp; - /*0x0A*/ u8 playerTrainerId[4]; - /*0x0E*/ u16 playTimeHours; - /*0x10*/ u8 playTimeMinutes; - /*0x11*/ u8 playTimeSeconds; - /*0x12*/ u8 playTimeVBlanks; - /*0x13*/ u8 optionsButtonMode; // OPTIONS_BUTTON_MODE_[NORMAL/LR/L_EQUALS_A] - /*0x14*/ u16 optionsTextSpeed:3; // OPTIONS_TEXT_SPEED_[SLOW/MID/FAST] - u16 optionsWindowFrameType:5; // Specifies one of the 20 decorative borders for text boxes - u16 optionsSound:1; // OPTIONS_SOUND_[MONO/STEREO] - u16 optionsBattleStyle:1; // OPTIONS_BATTLE_STYLE_[SHIFT/SET] - u16 optionsBattleSceneOff:1; // whether battle animations are disabled - u16 regionMapZoom:1; // whether the map is zoomed in - /*0x18*/ struct Pokedex pokedex; - /*0x90*/ u8 filler_90[0x8]; - /*0x98*/ struct Time localTimeOffset; - /*0xA0*/ struct Time lastBerryTreeUpdate; - /*0xA8*/ struct BattleTowerData battleTower; -}; - -struct MapPosition -{ - s16 x; - s16 y; - s8 height; -}; - -struct UnkStruct_8054FF8 -{ - u8 a; - u8 b; - u8 c; - u8 d; - struct MapPosition sub; - u16 field_C; -}; - -// wasnt defined so I had to define it -struct HallOfFame -{ - u8 filler[0x1F00]; -}; - -extern struct SaveBlock2 gSaveBlock2; - -#define RomHeaderGameTitle ((const char *)0x080000A0) -#define RomHeaderGameCode ((const char *)0x080000AC) -#define RomHeaderMakerCode ((const char *)0x080000B0) -#define RomHeaderMagic ((const u8 *) 0x080000B2) -#define RomHeaderSoftwareVersion ((const u8 *) 0x080000BC) - -#define LocalTimeOffset ((struct Time *)0x02028098) -#define LastBerryTreeUpdate ((struct Time *)0x020280A0) - -#endif //GUARD_GLOBAL_H diff --git a/berry_fix/payload/include/main.h b/berry_fix/payload/include/main.h deleted file mode 100644 index cb58d5982616..000000000000 --- a/berry_fix/payload/include/main.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef GUARD_MAIN_H -#define GUARD_MAIN_H - -#include "gba/gba.h" - -enum RomHeaderValidationResult -{ - SAPPHIRE_UPDATABLE = 2, - RUBY_UPDATABLE, - SAPPHIRE_NONEED, - RUBY_NONEED, - INVALID -}; - -enum MainCallbackState -{ - MAINCB_INIT = 0, - MAINCB_CHECK_RTC, - MAINCB_CHECK_FLASH, - MAINCB_READ_SAVE, - MAINCB_CHECK_TIME, - MAINCB_FIX_DATE, - MAINCB_NO_NEED_TO_FIX, - MAINCB_YEAR_MAKES_NO_SENSE, - MAINCB_FINISHED, - MAINCB_CHECK_PACIFIDLOG_TM, - MAINCB_FIX_PACIFIDLOG_TM, - MAINCB_ERROR -}; - -extern IntrFunc gIntrTable[]; -extern u16 gHeldKeys; -extern u16 gNewKeys; -extern u8 gIntrVector[]; -extern u32 gUpdateSuccessful; -extern u32 gUnknown_3001194; -extern u32 gUnknown_30011A0[]; -extern u32 gMainCallbackState; -extern u32 gGameVersion; - -extern u8 gSharedMem[0x8000]; - -extern const IntrFunc gIntrFuncPointers[]; - -#endif //GUARD_MAIN_H diff --git a/berry_fix/payload/include/pokemon.h b/berry_fix/payload/include/pokemon.h deleted file mode 100644 index d3a14ffff969..000000000000 --- a/berry_fix/payload/include/pokemon.h +++ /dev/null @@ -1,154 +0,0 @@ -#ifndef GUARD_POKEMON_H -#define GUARD_POKEMON_H - -struct PokemonSubstruct0 -{ - u16 species; - u16 heldItem; - u32 experience; - u8 ppBonuses; - u8 friendship; -}; - -struct PokemonSubstruct1 -{ - u16 moves[4]; - u8 pp[4]; -}; - -struct PokemonSubstruct2 -{ - u8 hpEV; - u8 attackEV; - u8 defenseEV; - u8 speedEV; - u8 spAttackEV; - u8 spDefenseEV; - u8 cool; - u8 beauty; - u8 cute; - u8 smart; - u8 tough; - u8 sheen; -}; - -struct PokemonSubstruct3 -{ - /*0x00*/ u8 pokerus; - /*0x01*/ u8 metLocation; - - /*0x02*/ u16 metLevel:7; - /*0x02*/ u16 metGame:4; - /*0x03*/ u16 pokeball:4; - /*0x03*/ u16 otGender:1; - - /*0x04*/ u32 hpIV:5; - /*0x04*/ u32 attackIV:5; - /*0x05*/ u32 defenseIV:5; - /*0x05*/ u32 speedIV:5; - /*0x05*/ u32 spAttackIV:5; - /*0x06*/ u32 spDefenseIV:5; - /*0x07*/ u32 isEgg:1; - /*0x07*/ u32 altAbility:1; - - /*0x08*/ u32 coolRibbon:3; - /*0x08*/ u32 beautyRibbon:3; - /*0x08*/ u32 cuteRibbon:3; - /*0x09*/ u32 smartRibbon:3; - /*0x09*/ u32 toughRibbon:3; - /*0x09*/ u32 championRibbon:1; - /*0x0A*/ u32 winningRibbon:1; - /*0x0A*/ u32 victoryRibbon:1; - /*0x0A*/ u32 artistRibbon:1; - /*0x0A*/ u32 effortRibbon:1; - /*0x0A*/ u32 giftRibbon1:1; - /*0x0A*/ u32 giftRibbon2:1; - /*0x0A*/ u32 giftRibbon3:1; - /*0x0A*/ u32 giftRibbon4:1; - /*0x0B*/ u32 giftRibbon5:1; - /*0x0B*/ u32 giftRibbon6:1; - /*0x0B*/ u32 giftRibbon7:1; - /*0x0B*/ u32 fatefulEncounter:5; // unused in Ruby/Sapphire, but the high bit must be set for Mew/Deoxys to obey in FR/LG/Emerald -}; - -union PokemonSubstruct -{ - struct PokemonSubstruct0 type0; - struct PokemonSubstruct1 type1; - struct PokemonSubstruct2 type2; - struct PokemonSubstruct3 type3; - u16 raw[6]; -}; - -struct BoxPokemon -{ - /*0x00*/ u32 personality; - /*0x04*/ u32 otId; - /*0x08*/ u8 nickname[POKEMON_NAME_LENGTH]; - /*0x12*/ u8 language; - /*0x13*/ u8 isBadEgg:1; - u8 hasSpecies:1; - u8 isEgg:1; - /*0x14*/ u8 otName[OT_NAME_LENGTH]; - /*0x1B*/ u8 markings; - /*0x1C*/ u16 checksum; - /*0x1E*/ u16 unknown; - - union - { - u32 raw[12]; - union PokemonSubstruct substructs[4]; - } secure; -}; /*size = 0x50*/ - -struct Pokemon -{ - /*0x00*/ struct BoxPokemon box; - /*0x50*/ u32 status; - /*0x54*/ u8 level; - /*0x55*/ u8 mail; - /*0x56*/ u16 hp; - /*0x58*/ u16 maxHP; - /*0x5A*/ u16 attack; - /*0x5C*/ u16 defense; - /*0x5E*/ u16 speed; - /*0x60*/ u16 spAttack; - /*0x62*/ u16 spDefense; -}; - -struct BattleTowerPokemon -{ - /*0x00*/u16 species; - /*0x02*/u16 heldItem; - /*0x04*/u16 moves[4]; - /*0x0C*/u8 level; - /*0x0D*/u8 ppBonuses; - /*0x0E*/u8 hpEV; - /*0x0F*/u8 attackEV; - /*0x10*/u8 defenseEV; - /*0x11*/u8 speedEV; - /*0x12*/u8 spAttackEV; - /*0x13*/u8 spDefenseEV; - /*0x14*/u32 otId; - /*0x18*/u32 hpIV:5; - /*0x18*/u32 attackIV:5; - /*0x19*/u32 defenseIV:5; - /*0x19*/u32 speedIV:5; - /*0x1A*/u32 spAttackIV:5; - /*0x1A*/u32 spDefenseIV:5; - /*0x1B*/u32 gap:1; - /*0x1B*/u32 altAbility:1; - /*0x1C*/u32 personality; - /*0x20*/u8 nickname[POKEMON_NAME_LENGTH + 1]; - /*0x2B*/u8 friendship; -}; - -struct PokemonStorage -{ - /*0x0000*/ u8 currentBox; - /*0x0004*/ struct BoxPokemon boxes[14][30]; - /*0x8344*/ u8 boxNames[14][9]; - /*0x83c2*/ u8 wallpaper[14]; -}; - -#endif // GUARD_POKEMON_H diff --git a/berry_fix/payload/include/rtc.h b/berry_fix/payload/include/rtc.h deleted file mode 100644 index 35654d866bc9..000000000000 --- a/berry_fix/payload/include/rtc.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef GUARD_RTC_H -#define GUARD_RTC_H - -#include "gba/gba.h" -#include "siirtc.h" -#include "global.h" - -extern struct Time gTimeSinceBerryUpdate; -extern struct Time gRtcUTCTime; - -bool32 rtc_maincb_is_rtc_working(void); -bool32 rtc_maincb_is_time_since_last_berry_update_positive(u8 *); -void rtc_maincb_fix_date(void); - -#endif //GUARD_RTC_H diff --git a/berry_fix/payload/include/siirtc.h b/berry_fix/payload/include/siirtc.h deleted file mode 100644 index de4fd634df90..000000000000 --- a/berry_fix/payload/include/siirtc.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef GUARD_RTC_H -#define GUARD_RTC_H - -#include "gba/gba.h" - -#define SIIRTCINFO_INTFE 0x01 // frequency interrupt enable -#define SIIRTCINFO_INTME 0x02 // per-minute interrupt enable -#define SIIRTCINFO_INTAE 0x04 // alarm interrupt enable -#define SIIRTCINFO_24HOUR 0x40 // 0: 12-hour mode, 1: 24-hour mode -#define SIIRTCINFO_POWER 0x80 // power on or power failure occurred - -enum -{ - MONTH_JAN = 1, - MONTH_FEB, - MONTH_MAR, - MONTH_APR, - MONTH_MAY, - MONTH_JUN, - MONTH_JUL, - MONTH_AUG, - MONTH_SEP, - MONTH_OCT, - MONTH_NOV, - MONTH_DEC -}; - -struct SiiRtcInfo -{ - u8 year; - u8 month; - u8 day; - u8 dayOfWeek; - u8 hour; - u8 minute; - u8 second; - u8 status; - u8 alarmHour; - u8 alarmMinute; -}; - -void SiiRtcUnprotect(void); -void SiiRtcProtect(void); -u8 SiiRtcProbe(void); -bool8 SiiRtcReset(void); -bool8 SiiRtcGetStatus(struct SiiRtcInfo *rtc); -bool8 SiiRtcSetStatus(struct SiiRtcInfo *rtc); -bool8 SiiRtcGetDateTime(struct SiiRtcInfo *rtc); -bool8 SiiRtcSetDateTime(struct SiiRtcInfo *rtc); -bool8 SiiRtcGetTime(struct SiiRtcInfo *rtc); -bool8 SiiRtcSetTime(struct SiiRtcInfo *rtc); -bool8 SiiRtcSetAlarm(struct SiiRtcInfo *rtc); - -#endif // GUARD_RTC_H diff --git a/berry_fix/payload/ld_script.sed b/berry_fix/payload/ld_script.sed deleted file mode 100644 index b91542b6f8e3..000000000000 --- a/berry_fix/payload/ld_script.sed +++ /dev/null @@ -1,14 +0,0 @@ -// { - r sym_ewram.ld - d -} - -// { - r sym_bss.ld - d -} - -// { - r sym_common.ld - d -} diff --git a/berry_fix/payload/ld_script.txt b/berry_fix/payload/ld_script.txt deleted file mode 100644 index d0a0af9edb5c..000000000000 --- a/berry_fix/payload/ld_script.txt +++ /dev/null @@ -1,107 +0,0 @@ -ENTRY(Init) - -SECTIONS { - . = 0x2010000; - - .text : - ALIGN(4) - { - asm/crt0.o(.text); - src/main.o(.text); - src/rtc.o(.text); - src/flash.o(.text); - } =0 - - lib_text : - ALIGN(4) - { - src/agb_flash.o(.text); - src/agb_flash_1m.o(.text); - src/agb_flash_mx.o(.text); - asm/libagbsyscall.o(.text); - src/siirtc.o(.text); - *libgcc.a:_call_via_rX.o(.text); - *libgcc.a:_modsi3.o(.text); - *libgcc.a:_umodsi3.o(.text); - *libgcc.a:_dvmd_tls.o(.text); - } =0 - - .rodata : - ALIGN(4) - { - src/main.o(.rodata); - src/rtc.o(.rodata); - src/flash.o(.rodata); - } =0 - - lib_rodata : - ALIGN(4) - { - src/agb_flash.o(.rodata); - src/agb_flash_1m.o(.rodata); - src/agb_flash_mx.o(.rodata); - src/agb_flash_le.o(.rodata); - src/siirtc.o(.rodata); - } - - . = 0x2020000; - - ewram (NOLOAD) : - ALIGN(4) - { - - } - - . = 0x3001000; - - iwram (NOLOAD) : - ALIGN(4) - { - - . = 0x40; - - end = .; - } - - . = 0x8000000; - - RS_Rom (NOLOAD) : - ALIGN(4) - { - _start = .; - . += 4; - RomHeaderNintendoLogo = .; - . += 156; - RS_RomHeader = .; - RomHeaderGameTitle = .; - . += 12; - RomHeaderGameCode = .; - . += 4; - RomHeaderMakerCode = .; - . += 2; - RomHeaderMagic = .; - . += 1; - RomHeaderMainUnitCode = .; - . += 1; - RomHeaderDeviceType = .; - . += 1; - RomHeaderReserved1 = .; - . += 7; - RomHeaderSoftwareVersion = .; - . += 1; - RomHeaderChecksum = .; - . += 1; - RomHeaderReserved2 = .; - . += 6; - GPIOPortData = .; - . += 2; - GPIOPortDirection = .; - . += 2; - GPIOPortReadEnable = .; - } =0 - - /DISCARD/ : - { - *(*); - } -} diff --git a/berry_fix/payload/rom.sha1 b/berry_fix/payload/rom.sha1 deleted file mode 100644 index 92eee7e87918..000000000000 --- a/berry_fix/payload/rom.sha1 +++ /dev/null @@ -1 +0,0 @@ -866991e2b5a8de02d12f53abe0ee9af03a2b6e01 payload.gba diff --git a/berry_fix/payload/src/agb_flash.c b/berry_fix/payload/src/agb_flash.c deleted file mode 100644 index 2c2c96e6e9d2..000000000000 --- a/berry_fix/payload/src/agb_flash.c +++ /dev/null @@ -1,296 +0,0 @@ -#include "gba/gba.h" -#include "gba/flash_internal.h" - -static u8 sTimerNum; -static u16 sTimerCount; -static vu16 *sTimerReg; -static u16 sSavedIme; - -u8 gFlashTimeoutFlag; -u8 (*PollFlashStatus)(u8 *); -const struct FlashType *gFlash; -u16 gFlashNumRemainingBytes; -const u16 *gFlashMaxTime; - -u16 (*ProgramFlashByte)(u16, u32, u8); -u16 (*ProgramFlashSector)(u16, void *); -u16 (*EraseFlashChip)(void); -u16 (*EraseFlashSector)(u16); -u16 (*WaitForFlashWrite)(u8, u8 *, u8); - -void SetReadFlash1(u16 *dest); - -void SwitchFlashBank(u8 bankNum) -{ - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0xB0); - FLASH_WRITE(0x0000, bankNum); -} - -#define DELAY() \ -do { \ - vu16 i; \ - for (i = 20000; i != 0; i--) \ - ; \ -} while (0) - -u16 ReadFlashId(void) -{ - u16 flashId; - u16 readFlash1Buffer[0x20]; - u8 (*readFlash1)(u8 *); - - SetReadFlash1(readFlash1Buffer); - readFlash1 = (u8 (*)(u8 *))((s32)readFlash1Buffer + 1); - - // Enter ID mode. - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0x90); - DELAY(); - - flashId = readFlash1(FLASH_BASE + 1) << 8; - flashId |= readFlash1(FLASH_BASE); - - // Leave ID mode. - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0xF0); - FLASH_WRITE(0x5555, 0xF0); - DELAY(); - - return flashId; -} - -void FlashTimerIntr(void) -{ - if (sTimerCount != 0 && --sTimerCount == 0) - gFlashTimeoutFlag = 1; -} - -u16 SetFlashTimerIntr(u8 timerNum, void (**intrFunc)(void)) -{ - if (timerNum >= 4) - return 1; - - sTimerNum = timerNum; - sTimerReg = ®_TMCNT(sTimerNum); - *intrFunc = FlashTimerIntr; - return 0; -} - -void StartFlashTimer(u8 phase) -{ - const u16 *maxTime = &gFlashMaxTime[phase * 3]; - sSavedIme = REG_IME; - REG_IME = 0; - sTimerReg[1] = 0; - REG_IE |= (INTR_FLAG_TIMER0 << sTimerNum); - gFlashTimeoutFlag = 0; - sTimerCount = *maxTime++; - *sTimerReg++ = *maxTime++; - *sTimerReg-- = *maxTime++; - REG_IF = (INTR_FLAG_TIMER0 << sTimerNum); - REG_IME = 1; -} - -void StopFlashTimer(void) -{ - REG_IME = 0; - *sTimerReg++ = 0; - *sTimerReg-- = 0; - REG_IE &= ~(INTR_FLAG_TIMER0 << sTimerNum); - REG_IME = sSavedIme; -} - -u8 ReadFlash1(u8 *addr) -{ - return *addr; -} - -void SetReadFlash1(u16 *dest) -{ - u16 *src; - u16 i; - - PollFlashStatus = (u8 (*)(u8 *))((s32)dest + 1); - - src = (u16 *)ReadFlash1; - src = (u16 *)((s32)src ^ 1); - - i = ((s32)SetReadFlash1 - (s32)ReadFlash1) >> 1; - - while (i != 0) - { - *dest++ = *src++; - i--; - } -} - -void ReadFlash_Core(u8 *src, u8 *dest, u32 size) -{ - while (size-- != 0) - { - *dest++ = *src++; - } -} - -void ReadFlash(u16 sectorNum, u32 offset, void *dest, u32 size) -{ - u8 *src; - u16 i; - u16 readFlash_Core_Buffer[0x40]; - u16 *funcSrc; - u16 *funcDest; - void (*readFlash_Core)(u8 *, u8 *, u32); - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - if (gFlash->romSize == FLASH_ROM_SIZE_1M) - { - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - } - - funcSrc = (u16 *)ReadFlash_Core; - funcSrc = (u16 *)((s32)funcSrc ^ 1); - funcDest = readFlash_Core_Buffer; - - i = ((s32)ReadFlash - (s32)ReadFlash_Core) >> 1; - - while (i != 0) - { - *funcDest++ = *funcSrc++; - i--; - } - - readFlash_Core = (void (*)(u8 *, u8 *, u32))((s32)readFlash_Core_Buffer + 1); - - src = FLASH_BASE + (sectorNum << gFlash->sector.shift) + offset; - - readFlash_Core(src, dest, size); -} - -u32 VerifyFlashSector_Core(u8 *src, u8 *tgt, u32 size) -{ - while (size-- != 0) - { - if (*tgt++ != *src++) - return (u32)(tgt - 1); - } - - return 0; -} - -u32 VerifyFlashSector(u16 sectorNum, u8 *src) -{ - u16 i; - u16 verifyFlashSector_Core_Buffer[0x80]; - u16 *funcSrc; - u16 *funcDest; - u8 *tgt; - u16 size; - u32 (*verifyFlashSector_Core)(u8 *, u8 *, u32); - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - if (gFlash->romSize == FLASH_ROM_SIZE_1M) - { - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - } - - funcSrc = (u16 *)VerifyFlashSector_Core; - funcSrc = (u16 *)((s32)funcSrc ^ 1); - funcDest = verifyFlashSector_Core_Buffer; - - i = ((s32)VerifyFlashSector - (s32)VerifyFlashSector_Core) >> 1; - - while (i != 0) - { - *funcDest++ = *funcSrc++; - i--; - } - - verifyFlashSector_Core = (u32 (*)(u8 *, u8 *, u32))((s32)verifyFlashSector_Core_Buffer + 1); - - tgt = FLASH_BASE + (sectorNum << gFlash->sector.shift); - size = gFlash->sector.size; - - return verifyFlashSector_Core(src, tgt, size); -} - -u32 VerifyFlashSectorNBytes(u16 sectorNum, u8 *src, u32 n) -{ - u16 i; - u16 verifyFlashSector_Core_Buffer[0x80]; - u16 *funcSrc; - u16 *funcDest; - u8 *tgt; - u32 (*verifyFlashSector_Core)(u8 *, u8 *, u32); - - if (gFlash->romSize == FLASH_ROM_SIZE_1M) - { - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - } - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - funcSrc = (u16 *)VerifyFlashSector_Core; - funcSrc = (u16 *)((s32)funcSrc ^ 1); - funcDest = verifyFlashSector_Core_Buffer; - - i = ((s32)VerifyFlashSector - (s32)VerifyFlashSector_Core) >> 1; - - while (i != 0) - { - *funcDest++ = *funcSrc++; - i--; - } - - verifyFlashSector_Core = (u32 (*)(u8 *, u8 *, u32))((s32)verifyFlashSector_Core_Buffer + 1); - - tgt = FLASH_BASE + (sectorNum << gFlash->sector.shift); - - return verifyFlashSector_Core(src, tgt, n); -} - -u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src) -{ - u8 i; - u32 result; - - for (i = 0; i < 3; i++) - { - result = ProgramFlashSector(sectorNum, src); - if (result != 0) - continue; - - result = VerifyFlashSector(sectorNum, src); - if (result == 0) - break; - } - - return result; -} - -u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, void *src, u32 n) -{ - u8 i; - u32 result; - - for (i = 0; i < 3; i++) - { - result = ProgramFlashSector(sectorNum, src); - if (result != 0) - continue; - - result = VerifyFlashSectorNBytes(sectorNum, src, n); - if (result == 0) - break; - } - - return result; -} diff --git a/berry_fix/payload/src/agb_flash_1m.c b/berry_fix/payload/src/agb_flash_1m.c deleted file mode 100644 index 7f8bdeb5f081..000000000000 --- a/berry_fix/payload/src/agb_flash_1m.c +++ /dev/null @@ -1,86 +0,0 @@ -#include "gba/gba.h" -#include "gba/flash_internal.h" - -static const char AgbLibFlashVersion[] = "FLASH1M_V103"; - -const struct FlashSetupInfo * const sSetupInfos[] = -{ - &MX29L010, - &LE26FV10N1TS, - &DefaultFlash -}; - -u32 IdentifyFlash(void) -{ - u16 result; - u16 flashId; - const struct FlashSetupInfo * const *setupInfo; - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - flashId = ReadFlashId(); - - setupInfo = sSetupInfos; - result = 1; - - for (;;) - { - if ((*setupInfo)->type.ids.separate.makerId == 0) - break; - - if (flashId == (*setupInfo)->type.ids.joined) - { - result = 0; - break; - } - - setupInfo++; - } - - ProgramFlashByte = (*setupInfo)->programFlashByte; - ProgramFlashSector = (*setupInfo)->programFlashSector; - EraseFlashChip = (*setupInfo)->eraseFlashChip; - EraseFlashSector = (*setupInfo)->eraseFlashSector; - WaitForFlashWrite = (*setupInfo)->WaitForFlashWrite; - gFlashMaxTime = (*setupInfo)->maxTime; - gFlash = &(*setupInfo)->type; - - return result; -} - -u16 WaitForFlashWrite_Common(u8 phase, u8 *addr, u8 lastData) -{ - u16 result = 0; - u8 status; - - StartFlashTimer(phase); - - while ((status = PollFlashStatus(addr)) != lastData) - { - if (status & 0x20) - { - // The write operation exceeded the flash chip's time limit. - - if (PollFlashStatus(addr) == lastData) - break; - - FLASH_WRITE(0x5555, 0xF0); - result = phase | 0xA000u; - break; - } - - if (gFlashTimeoutFlag) - { - if (PollFlashStatus(addr) == lastData) - break; - - FLASH_WRITE(0x5555, 0xF0); - result = phase | 0xC000u; - break; - } - } - - StopFlashTimer(); - - return result; -} diff --git a/berry_fix/payload/src/agb_flash_le.c b/berry_fix/payload/src/agb_flash_le.c deleted file mode 100644 index 39d956e2778a..000000000000 --- a/berry_fix/payload/src/agb_flash_le.c +++ /dev/null @@ -1,31 +0,0 @@ -#include "gba/gba.h" -#include "gba/flash_internal.h" - -const u16 leMaxTime[] = -{ - 10, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 10, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 2000, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 2000, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, -}; - -const struct FlashSetupInfo LE26FV10N1TS = -{ - ProgramFlashByte_MX, - ProgramFlashSector_MX, - EraseFlashChip_MX, - EraseFlashSector_MX, - WaitForFlashWrite_Common, - leMaxTime, - { - 131072, // ROM size - { - 4096, // sector size - 12, // bit shift to multiply by sector size (4096 == 1 << 12) - 32, // number of sectors - 0 // appears to be unused - }, - { 3, 1 }, // wait state setup data - { { 0x62, 0x13 } } // ID - } -}; diff --git a/berry_fix/payload/src/agb_flash_mx.c b/berry_fix/payload/src/agb_flash_mx.c deleted file mode 100644 index 68eb00cd8da8..000000000000 --- a/berry_fix/payload/src/agb_flash_mx.c +++ /dev/null @@ -1,193 +0,0 @@ -#include "gba/gba.h" -#include "gba/flash_internal.h" - -const u16 mxMaxTime[] = -{ - 10, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 10, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 2000, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, - 2000, 65469, TIMER_ENABLE | TIMER_INTR_ENABLE | TIMER_256CLK, -}; - -const struct FlashSetupInfo MX29L010 = -{ - ProgramFlashByte_MX, - ProgramFlashSector_MX, - EraseFlashChip_MX, - EraseFlashSector_MX, - WaitForFlashWrite_Common, - mxMaxTime, - { - 131072, // ROM size - { - 4096, // sector size - 12, // bit shift to multiply by sector size (4096 == 1 << 12) - 32, // number of sectors - 0 // appears to be unused - }, - { 3, 1 }, // wait state setup data - { { 0xC2, 0x09 } } // ID - } -}; - -const struct FlashSetupInfo DefaultFlash = -{ - ProgramFlashByte_MX, - ProgramFlashSector_MX, - EraseFlashChip_MX, - EraseFlashSector_MX, - WaitForFlashWrite_Common, - mxMaxTime, - { - 131072, // ROM size - { - 4096, // sector size - 12, // bit shift to multiply by sector size (4096 == 1 << 12) - 32, // number of sectors - 0 // appears to be unused - }, - { 3, 1 }, // wait state setup data - { { 0x00, 0x00 } } // ID of 0 - } -}; - -u16 EraseFlashChip_MX(void) -{ - u16 result; - u16 readFlash1Buffer[0x20]; - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | gFlash->wait[0]; - - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0x80); - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0x10); - - SetReadFlash1(readFlash1Buffer); - - result = WaitForFlashWrite(3, FLASH_BASE, 0xFF); - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - return result; -} - -u16 EraseFlashSector_MX(u16 sectorNum) -{ - u16 numTries; - u16 result; - u8 *addr; - u16 readFlash1Buffer[0x20]; - - if (sectorNum >= gFlash->sector.count) - return 0x80FF; - - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - - numTries = 0; - -try_erase: - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | gFlash->wait[0]; - - addr = FLASH_BASE + (sectorNum << gFlash->sector.shift); - - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0x80); - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - *addr = 0x30; - - SetReadFlash1(readFlash1Buffer); - - result = WaitForFlashWrite(2, addr, 0xFF); - - if (!(result & 0xA000) || numTries > 3) - goto done; - - numTries++; - - goto try_erase; - -done: - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8; - - return result; -} - -u16 ProgramFlashByte_MX(u16 sectorNum, u32 offset, u8 data) -{ - u8 *addr; - u16 readFlash1Buffer[0x20]; - - if (offset >= gFlash->sector.size) - return 0x8000; - - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - - addr = FLASH_BASE + (sectorNum << gFlash->sector.shift) + offset; - - SetReadFlash1(readFlash1Buffer); - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | gFlash->wait[0]; - - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0xA0); - *addr = data; - - return WaitForFlashWrite(1, addr, data); -} - -static u16 ProgramByte(u8 *src, u8 *dest) -{ - FLASH_WRITE(0x5555, 0xAA); - FLASH_WRITE(0x2AAA, 0x55); - FLASH_WRITE(0x5555, 0xA0); - *dest = *src; - - return WaitForFlashWrite(1, dest, *src); -} - -u16 ProgramFlashSector_MX(u16 sectorNum, void *src) -{ - u16 result; - u8 *dest; - u16 readFlash1Buffer[0x20]; - - if (sectorNum >= gFlash->sector.count) - return 0x80FF; - - result = EraseFlashSector_MX(sectorNum); - - if (result != 0) - return result; - - SwitchFlashBank(sectorNum / SECTORS_PER_BANK); - sectorNum %= SECTORS_PER_BANK; - - SetReadFlash1(readFlash1Buffer); - - REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | gFlash->wait[0]; - - gFlashNumRemainingBytes = gFlash->sector.size; - dest = FLASH_BASE + (sectorNum << gFlash->sector.shift); - - while (gFlashNumRemainingBytes > 0) - { - result = ProgramByte(src, dest); - - if (result != 0) - break; - - gFlashNumRemainingBytes--; - src++; - dest++; - } - - return result; -} diff --git a/berry_fix/payload/src/flash.c b/berry_fix/payload/src/flash.c deleted file mode 100644 index 1f09d0b8f7d7..000000000000 --- a/berry_fix/payload/src/flash.c +++ /dev/null @@ -1,752 +0,0 @@ -#include "gba/gba.h" -#include "gba/flash_internal.h" -#include "constants/vars.h" -#include "global.h" -#include "main.h" -#include "flash.h" -#include "rtc.h" - -struct SaveBlockChunk -{ - u8 * data; - u16 size; -}; - -u8 WriteSaveBlockChunks(u16 a0, const struct SaveBlockChunk * a1); -u8 WriteSingleChunk(u16 a0, const struct SaveBlockChunk * a1); -u8 TryWriteSector(u8, u8 *); -u8 EraseCurrentChunk(u16 a0, const struct SaveBlockChunk * a1); -u8 TryReadAllSaveSectorsCurrentSlot(u16 a0, const struct SaveBlockChunk * a1); -u8 ReadAllSaveSectorsCurrentSlot(u16 a0, const struct SaveBlockChunk * a1); -u8 GetSaveValidStatus(const struct SaveBlockChunk * a1); -u32 DoReadFlashWholeSection(u8 a0, struct SaveSector * a1); -u16 CalculateChecksum(const void *, u16); - -u16 gFirstSaveSector; -u32 gPrevSaveCounter; -u16 gLastKnownGoodSector; -u32 gDamagedSaveSectors; -u32 gSaveCounter; -struct SaveSector * gFastSaveSection; -u16 gCurSaveChunk; -bool32 gFlashIdentIsValid; - -EWRAM_DATA struct SaveBlock2 gSaveBlock2 = {}; -EWRAM_DATA struct SaveBlock1 gSaveBlock1 = {}; -EWRAM_DATA struct PokemonStorage gPokemonStorage = {}; - -// Each 4 KiB flash sector contains 3968 bytes of actual data followed by a 128 byte footer -#define SECTOR_DATA_SIZE 3968 -#define SECTOR_FOOTER_SIZE 128 - -#define SAVEBLOCK_CHUNK(structure, chunkNum) \ -{ \ - (u8 *)&structure + chunkNum * SECTOR_DATA_SIZE, \ - min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) \ -} \ - -static const struct SaveBlockChunk sSaveBlockChunks[] = -{ - SAVEBLOCK_CHUNK(gSaveBlock2, 0), - - SAVEBLOCK_CHUNK(gSaveBlock1, 0), - SAVEBLOCK_CHUNK(gSaveBlock1, 1), - SAVEBLOCK_CHUNK(gSaveBlock1, 2), - SAVEBLOCK_CHUNK(gSaveBlock1, 3), - - SAVEBLOCK_CHUNK(gPokemonStorage, 0), - SAVEBLOCK_CHUNK(gPokemonStorage, 1), - SAVEBLOCK_CHUNK(gPokemonStorage, 2), - SAVEBLOCK_CHUNK(gPokemonStorage, 3), - SAVEBLOCK_CHUNK(gPokemonStorage, 4), - SAVEBLOCK_CHUNK(gPokemonStorage, 5), - SAVEBLOCK_CHUNK(gPokemonStorage, 6), - SAVEBLOCK_CHUNK(gPokemonStorage, 7), - SAVEBLOCK_CHUNK(gPokemonStorage, 8), -}; - -const u16 gInfoMessagesPal[] = INCBIN_U16("graphics/msg_box.gbapal"); -const u8 gInfoMessagesTilemap[] = INCBIN_U8("graphics/msg_box.tilemap.lz"); -const u8 gInfoMessagesGfx[] = INCBIN_U8("graphics/msg_box.4bpp.lz"); - -bool32 flash_maincb_ident_is_valid(void) -{ - gFlashIdentIsValid = TRUE; - if (!IdentifyFlash()) - { - SetFlashTimerIntr(0, &((IntrFunc *)gIntrFuncPointers)[9]); - return TRUE; - } - gFlashIdentIsValid = FALSE; - return FALSE; -} - -void Call_ReadFlash(u16 sectorNum, ptrdiff_t offset, void * dest, size_t size) -{ - ReadFlash(sectorNum, offset, dest, size); -} - -u8 Call_WriteSaveBlockChunks(u16 a0, const struct SaveBlockChunk * a1) -{ - return WriteSaveBlockChunks(a0, a1); -} - -u8 Call_TryReadAllSaveSectorsCurrentSlot(u16 a0, const struct SaveBlockChunk * a1) -{ - return TryReadAllSaveSectorsCurrentSlot(a0, a1); -} - -u32 * GetDamagedSaveSectorsPtr(void) -{ - return &gDamagedSaveSectors; -} - -s32 flash_write_save_block_chunks(u8 a0) -{ - u8 i; - - switch (a0) - { - case 0: - default: - Call_WriteSaveBlockChunks(0xFFFF, sSaveBlockChunks); - break; - case 1: - for (i = 0; i < 5; i++) - { - Call_WriteSaveBlockChunks(i, sSaveBlockChunks); - } - break; - case 2: - Call_WriteSaveBlockChunks(0, sSaveBlockChunks); - break; - } - - return 0; -} - -u8 flash_write_save_block_chunks_check_damage(u8 a0) -{ - flash_write_save_block_chunks(a0); - if (*GetDamagedSaveSectorsPtr() == 0) - return 1; - return 0xFF; -} - -u8 flash_maincb_read_save(u32 unused) -{ - return Call_TryReadAllSaveSectorsCurrentSlot(0xFFFF, sSaveBlockChunks); -} - -void msg_load_gfx(void) -{ - REG_DISPCNT = 0; - REG_BG0HOFS = 0; - REG_BG0VOFS = 0; - REG_BLDCNT = 0; - LZ77UnCompVram(gInfoMessagesGfx, (void *)BG_VRAM); - LZ77UnCompVram(gInfoMessagesTilemap, (void *)BG_SCREEN_ADDR(28)); - CpuCopy16(gInfoMessagesPal, (void *)BG_PLTT, 0x200); - REG_BG0CNT = BGCNT_SCREENBASE(28) | BGCNT_TXT512x512; - REG_DISPCNT = DISPCNT_BG0_ON; -} - -void msg_display(enum MsgBoxUpdateMessage a0) -{ - switch (a0) - { - case MSGBOX_WILL_NOW_UPDATE: - REG_BG0HOFS = 0; - REG_BG0VOFS = 0; - break; - case MSGBOX_HAS_BEEN_UPDATED: - REG_BG0HOFS = 0x100; - REG_BG0VOFS = 0; - break; - case MSGBOX_UNABLE_TO_UPDATE: - REG_BG0HOFS = 0x100; - REG_BG0VOFS = 0xB0; - break; - case MSGBOX_NO_NEED_TO_UPDATE: - REG_BG0HOFS = 0; - REG_BG0VOFS = 0xB0; - break; - case MSGBOX_UPDATING: - REG_BG0HOFS = 0; - REG_BG0VOFS = 0x160; - break; - } -} - -void Save_EraseAllData(void) -{ - u16 i; - for (i = 0; i < 32; i++) - EraseFlashSector(i); -} - -void Save_ResetSaveCounters(void) -{ - gSaveCounter = 0; - gFirstSaveSector = 0; - gDamagedSaveSectors = 0; -} - -bool32 SetSectorDamagedStatus(u8 op, u8 sectorNum) -{ - bool32 retVal = FALSE; - - switch (op) - { - case SECTOR_DAMAGED: - gDamagedSaveSectors |= (1 << sectorNum); - break; - case SECTOR_OK: - gDamagedSaveSectors &= ~(1 << sectorNum); - break; - case SECTOR_CHECK: // unused - if (gDamagedSaveSectors & (1 << sectorNum)) - retVal = TRUE; - break; - } - - return retVal; -} - -u8 WriteSaveBlockChunks(u16 chunkId, const struct SaveBlockChunk *chunks) -{ - u32 retVal; - u16 i; - - gFastSaveSection = eSaveSection; - - if (chunkId != 0xFFFF) // write single chunk - { - retVal = WriteSingleChunk(chunkId, chunks); - } - else // write all chunks - { - gLastKnownGoodSector = gFirstSaveSector; - gPrevSaveCounter = gSaveCounter; - gFirstSaveSector++; - gFirstSaveSector %= NUM_SECTORS_PER_SAVE_SLOT; - gSaveCounter++; - retVal = SAVE_STATUS_OK; - - for (i = 0; i < NUM_SECTORS_PER_SAVE_SLOT; i++) - WriteSingleChunk(i, chunks); - - // Check for any bad sectors - if (gDamagedSaveSectors != 0) // skip the damaged sector. - { - retVal = SAVE_STATUS_ERROR; - gFirstSaveSector = gLastKnownGoodSector; - gSaveCounter = gPrevSaveCounter; - } - } - - return retVal; -} - -u8 WriteSingleChunk(u16 chunkId, const struct SaveBlockChunk * chunks) -{ - u16 i; - u16 sectorNum; - u8 *chunkData; - u16 chunkSize; - - // select sector number - sectorNum = chunkId + gFirstSaveSector; - sectorNum %= NUM_SECTORS_PER_SAVE_SLOT; - // select save slot - sectorNum += NUM_SECTORS_PER_SAVE_SLOT * (gSaveCounter % 2); - - chunkData = chunks[chunkId].data; - chunkSize = chunks[chunkId].size; - - // clear save section. - for (i = 0; i < sizeof(struct SaveSector); i++) - ((u8 *)gFastSaveSection)[i] = 0; - - gFastSaveSection->id = chunkId; - gFastSaveSection->signature = FILE_SIGNATURE; - gFastSaveSection->counter = gSaveCounter; - for (i = 0; i < chunkSize; i++) - gFastSaveSection->data[i] = chunkData[i]; - gFastSaveSection->checksum = CalculateChecksum(chunkData, chunkSize); - - return TryWriteSector(sectorNum, gFastSaveSection->data); -} - -u8 HandleWriteSectorNBytes(u8 sectorNum, u8 *data, u16 size) -{ - u16 i; - struct SaveSector *section = eSaveSection; - - for (i = 0; i < sizeof(struct SaveSector); i++) - ((char *)section)[i] = 0; - - section->signature = FILE_SIGNATURE; - for (i = 0; i < size; i++) - section->data[i] = data[i]; - section->id = CalculateChecksum(data, size); // though this appears to be incorrect, it might be some sector checksum instead of a whole save checksum and only appears to be relevent to HOF data, if used. - - return TryWriteSector(sectorNum, section->data); -} - -u8 TryWriteSector(u8 sectorNum, u8 *data) -{ - if (ProgramFlashSectorAndVerify(sectorNum, data) != 0) // is damaged? - { - SetSectorDamagedStatus(SECTOR_DAMAGED, sectorNum); // set damaged sector bits. - return SAVE_STATUS_ERROR; - } - else - { - SetSectorDamagedStatus(SECTOR_OK, sectorNum); // unset damaged sector bits. it's safe now. - return SAVE_STATUS_OK; - } -} - -u32 RestoreSaveBackupVarsAndIncrement(const struct SaveBlockChunk *chunk) // chunk is unused -{ - gFastSaveSection = eSaveSection; - gLastKnownGoodSector = gFirstSaveSector; - gPrevSaveCounter = gSaveCounter; - gFirstSaveSector++; - gFirstSaveSector %= NUM_SECTORS_PER_SAVE_SLOT; - gSaveCounter++; - gCurSaveChunk = 0; - gDamagedSaveSectors = 0; - return 0; -} - -u32 RestoreSaveBackupVars(const struct SaveBlockChunk *chunk) -{ - gFastSaveSection = eSaveSection; - gLastKnownGoodSector = gFirstSaveSector; - gPrevSaveCounter = gSaveCounter; - gCurSaveChunk = 0; - gDamagedSaveSectors = 0; - return 0; -} - -u8 WriteSingleChunkAndIncrement(u16 a1, const struct SaveBlockChunk * chunk) -{ - u8 retVal; - - if (gCurSaveChunk < a1 - 1) - { - retVal = SAVE_STATUS_OK; - WriteSingleChunk(gCurSaveChunk, chunk); - gCurSaveChunk++; - if (gDamagedSaveSectors) - { - retVal = SAVE_STATUS_ERROR; - gFirstSaveSector = gLastKnownGoodSector; - gSaveCounter = gPrevSaveCounter; - } - } - else - { - retVal = SAVE_STATUS_ERROR; - } - - return retVal; -} - -u8 ErasePreviousChunk(u16 a1, const struct SaveBlockChunk *chunk) -{ - u8 retVal = SAVE_STATUS_OK; - - EraseCurrentChunk(a1 - 1, chunk); - - if (gDamagedSaveSectors) - { - retVal = SAVE_STATUS_ERROR; - gFirstSaveSector = gLastKnownGoodSector; - gSaveCounter = gPrevSaveCounter; - } - return retVal; -} - -u8 EraseCurrentChunk(u16 chunkId, const struct SaveBlockChunk *chunks) -{ - u16 i; - u16 sector; - u8 *data; - u16 size; - u8 status; - - // select sector number - sector = chunkId + gFirstSaveSector; - sector %= NUM_SECTORS_PER_SAVE_SLOT; - // select save slot - sector += NUM_SECTORS_PER_SAVE_SLOT * (gSaveCounter % 2); - - data = chunks[chunkId].data; - size = chunks[chunkId].size; - - // clear temp save section. - for (i = 0; i < sizeof(struct SaveSector); i++) - ((char *)gFastSaveSection)[i] = 0; - - gFastSaveSection->id = chunkId; - gFastSaveSection->signature = FILE_SIGNATURE; - gFastSaveSection->counter = gSaveCounter; - - // set temp section's data. - for (i = 0; i < size; i++) - gFastSaveSection->data[i] = data[i]; - - // calculate checksum. - gFastSaveSection->checksum = CalculateChecksum(data, size); - - EraseFlashSector(sector); - - status = SAVE_STATUS_OK; - - for (i = 0; i < sizeof(struct UnkSaveSection); i++) - { - if (ProgramFlashByte(sector, i, gFastSaveSection->data[i])) - { - status = SAVE_STATUS_ERROR; - break; - } - } - - if (status == SAVE_STATUS_ERROR) - { - SetSectorDamagedStatus(SECTOR_DAMAGED, sector); - return SAVE_STATUS_ERROR; - } - else - { - status = SAVE_STATUS_OK; - - for (i = 0; i < 7; i++) - { - if (ProgramFlashByte(sector, 0xFF9 + i, ((u8 *)gFastSaveSection)[0xFF9 + i])) - { - status = SAVE_STATUS_ERROR; - break; - } - } - - if (status == SAVE_STATUS_ERROR) - { - SetSectorDamagedStatus(SECTOR_DAMAGED, sector); - return SAVE_STATUS_ERROR; - } - else - { - SetSectorDamagedStatus(SECTOR_OK, sector); - return SAVE_STATUS_OK; - } - } -} - -u8 WriteSomeFlashByteToPrevSector(u16 a1, const struct SaveBlockChunk *chunk) -{ - u16 sector; - - // select sector number - sector = a1 + gFirstSaveSector - 1; - sector %= NUM_SECTORS_PER_SAVE_SLOT; - // select save slot - sector += NUM_SECTORS_PER_SAVE_SLOT * (gSaveCounter % 2); - - if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), ((u8 *)gFastSaveSection)[sizeof(struct UnkSaveSection)])) - { - // sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. - SetSectorDamagedStatus(SECTOR_DAMAGED, sector); - gFirstSaveSector = gLastKnownGoodSector; - gSaveCounter = gPrevSaveCounter; - return SAVE_STATUS_ERROR; - } - else - { - SetSectorDamagedStatus(SECTOR_OK, sector); - return SAVE_STATUS_OK; - } -} - -u8 WriteSomeFlashByte0x25ToPrevSector(u16 a1, const struct SaveBlockChunk *chunk) -{ - u16 sector; - - sector = a1 + gFirstSaveSector - 1; - sector %= NUM_SECTORS_PER_SAVE_SLOT; - sector += NUM_SECTORS_PER_SAVE_SLOT * (gSaveCounter % 2); - - if (ProgramFlashByte(sector, sizeof(struct UnkSaveSection), 0x25)) - { - // sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. - SetSectorDamagedStatus(SECTOR_DAMAGED, sector); - gFirstSaveSector = gLastKnownGoodSector; - gSaveCounter = gPrevSaveCounter; - return SAVE_STATUS_ERROR; - } - else - { - SetSectorDamagedStatus(SECTOR_OK, sector); - return SAVE_STATUS_OK; - } -} - -u8 TryReadAllSaveSectorsCurrentSlot(u16 a1, const struct SaveBlockChunk *chunk) -{ - u8 retVal; - gFastSaveSection = eSaveSection; - if (a1 != 0xFFFF) - { - retVal = SAVE_STATUS_ERROR; - } - else - { - retVal = GetSaveValidStatus(chunk); - ReadAllSaveSectorsCurrentSlot(0xFFFF, chunk); - } - - return retVal; -} - -u8 ReadAllSaveSectorsCurrentSlot(u16 a1, const struct SaveBlockChunk *chunks) -{ - u16 i; - u16 checksum; - u16 sector = NUM_SECTORS_PER_SAVE_SLOT * (gSaveCounter % 2); - u16 id; - - for (i = 0; i < NUM_SECTORS_PER_SAVE_SLOT; i++) - { - DoReadFlashWholeSection(i + sector, gFastSaveSection); - id = gFastSaveSection->id; - if (id == 0) - gFirstSaveSector = i; - checksum = CalculateChecksum(gFastSaveSection->data, chunks[id].size); - if (gFastSaveSection->signature == FILE_SIGNATURE - && gFastSaveSection->checksum == checksum) - { - u16 j; - for (j = 0; j < chunks[id].size; j++) - chunks[id].data[j] = gFastSaveSection->data[j]; - } - } - - return 1; -} - -u8 GetSaveValidStatus(const struct SaveBlockChunk *chunks) -{ - u16 sector; - bool8 signatureValid; - u16 checksum; - u32 slot1saveCounter = 0; - u32 slot2saveCounter = 0; - u8 slot1Status; - u8 slot2Status; - u32 validSectors; - const u32 ALL_SECTORS = (1 << NUM_SECTORS_PER_SAVE_SLOT) - 1; // bitmask of all saveblock sectors - - // check save slot 1. - validSectors = 0; - signatureValid = FALSE; - for (sector = 0; sector < NUM_SECTORS_PER_SAVE_SLOT; sector++) - { - DoReadFlashWholeSection(sector, gFastSaveSection); - if (gFastSaveSection->signature == FILE_SIGNATURE) - { - signatureValid = TRUE; - checksum = CalculateChecksum(gFastSaveSection->data, chunks[gFastSaveSection->id].size); - if (gFastSaveSection->checksum == checksum) - { - slot1saveCounter = gFastSaveSection->counter; - validSectors |= 1 << gFastSaveSection->id; - } - } - } - - if (signatureValid) - { - if (validSectors == ALL_SECTORS) - slot1Status = SAVE_STATUS_OK; - else - slot1Status = SAVE_STATUS_ERROR; - } - else - { - slot1Status = SAVE_STATUS_EMPTY; - } - - // check save slot 2. - validSectors = 0; - signatureValid = FALSE; - for (sector = 0; sector < NUM_SECTORS_PER_SAVE_SLOT; sector++) - { - DoReadFlashWholeSection(NUM_SECTORS_PER_SAVE_SLOT + sector, gFastSaveSection); - if (gFastSaveSection->signature == FILE_SIGNATURE) - { - signatureValid = TRUE; - checksum = CalculateChecksum(gFastSaveSection->data, chunks[gFastSaveSection->id].size); - if (gFastSaveSection->checksum == checksum) - { - slot2saveCounter = gFastSaveSection->counter; - validSectors |= 1 << gFastSaveSection->id; - } - } - } - - if (signatureValid) - { - if (validSectors == ALL_SECTORS) - slot2Status = SAVE_STATUS_OK; - else - slot2Status = SAVE_STATUS_ERROR; - } - else - { - slot2Status = SAVE_STATUS_EMPTY; - } - - if (slot1Status == SAVE_STATUS_OK && slot2Status == SAVE_STATUS_OK) - { - // Choose counter of the most recent save file - if ((slot1saveCounter == -1 && slot2saveCounter == 0) || (slot1saveCounter == 0 && slot2saveCounter == -1)) - { - if ((unsigned)(slot1saveCounter + 1) < (unsigned)(slot2saveCounter + 1)) - gSaveCounter = slot2saveCounter; - else - gSaveCounter = slot1saveCounter; - } - else - { - if (slot1saveCounter < slot2saveCounter) - gSaveCounter = slot2saveCounter; - else - gSaveCounter = slot1saveCounter; - } - return SAVE_STATUS_OK; - } - - if (slot1Status == SAVE_STATUS_OK) - { - gSaveCounter = slot1saveCounter; - if (slot2Status == SAVE_STATUS_ERROR) - return SAVE_STATUS_ERROR; - else - return SAVE_STATUS_OK; - } - - if (slot2Status == SAVE_STATUS_OK) - { - gSaveCounter = slot2saveCounter; - if (slot1Status == SAVE_STATUS_ERROR) - return SAVE_STATUS_ERROR; - else - return SAVE_STATUS_OK; - } - - if (slot1Status == SAVE_STATUS_EMPTY && slot2Status == SAVE_STATUS_EMPTY) - { - gSaveCounter = 0; - gFirstSaveSector = 0; - return SAVE_STATUS_EMPTY; - } - - gSaveCounter = 0; - gFirstSaveSector = 0; - return 2; -} - -u8 ReadSomeUnknownSectorAndVerify(u8 sector, u8 *data, u16 size) -{ - u16 i; - struct SaveSector *section = eSaveSection; - - DoReadFlashWholeSection(sector, section); - if (section->signature == FILE_SIGNATURE) - { - u16 checksum = CalculateChecksum(section->data, size); - if (section->id == checksum) - { - for (i = 0; i < size; i++) - data[i] = section->data[i]; - return SAVE_STATUS_OK; - } - else - { - return 2; - } - } - else - { - return SAVE_STATUS_EMPTY; - } -} - -u32 DoReadFlashWholeSection(u8 sector, struct SaveSector *section) -{ - ReadFlash(sector, 0, section->data, sizeof(struct SaveSector)); - return 1; -} - -u16 CalculateChecksum(const void *data, u16 size) -{ - u16 i; - u32 checksum = 0; - - for (i = 0; i < (size / 4); i++) - { - checksum += *((u32 *)data); - data += sizeof(u32); - } - - return ((checksum >> 16) + checksum); -} - -void nullsub_0201182C() -{ -} - -void nullsub_02011830() -{ -} - -void nullsub_02011834() -{ -} - -u16 * get_var_addr(u16 a0) -{ - if (a0 < VARS_START) - return NULL; - if (a0 < VAR_SPECIAL_0) - return &gSaveBlock1.vars[a0 - VARS_START]; - return NULL; -} - -bool32 flash_maincb_check_need_reset_pacifidlog_tm(void) -{ - u8 sp0; - u16 * data = get_var_addr(VAR_PACIFIDLOG_TM_RECEIVED_DAY); - rtc_maincb_is_time_since_last_berry_update_positive(&sp0); - if (*data <= gRtcUTCTime.days) - return TRUE; - else - return FALSE; -} - -bool32 flash_maincb_reset_pacifidlog_tm(void) -{ - u8 sp0; - if (flash_maincb_check_need_reset_pacifidlog_tm() == TRUE) - return TRUE; - rtc_maincb_is_time_since_last_berry_update_positive(&sp0); - if (gRtcUTCTime.days < 0) - return FALSE; - *get_var_addr(VAR_PACIFIDLOG_TM_RECEIVED_DAY) = 1; - if (flash_write_save_block_chunks_check_damage(0) != TRUE) - return FALSE; - return TRUE; -} diff --git a/berry_fix/payload/src/main.c b/berry_fix/payload/src/main.c deleted file mode 100644 index 32d90f9c19c9..000000000000 --- a/berry_fix/payload/src/main.c +++ /dev/null @@ -1,289 +0,0 @@ -#include "gba/gba.h" -#include "global.h" -#include "main.h" -#include "rtc.h" -#include "flash.h" - -static s32 gInitialWaitTimer; -IntrFunc gIntrTable[16]; -u16 gHeldKeys; -u16 gNewKeys; -u8 gIntrVector[0x100]; -u32 gUpdateSuccessful; -u32 gUnknown_3001194; -u32 gUnknown_30011A0[0x19]; -u32 gMainCallbackState; -u32 gGameVersion; - -EWRAM_DATA u8 gSharedMem[0x8000] = {}; - -void IntrMain(void); -void ReadKeys(void); -void dummy_intr_0(void); -void dummy_intr_1(void); -void main_callback(u32 *, void *, void *); - - -const char gBerryFixGameCode[] = "AGBJ"; -const IntrFunc gIntrFuncPointers[] = { - dummy_intr_0, - dummy_intr_1, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - dummy_intr_0, - NULL, - NULL, - NULL -}; -const char gVersionData[][2] = { - {'J', 1}, - {'E', 2}, - {'D', 1}, - {'F', 1}, - {'I', 1}, - {'S', 1} -}; -const char gRubyTitleAndCode[] = "POKEMON RUBYAXV"; -const char gSapphireTitleAndCode[] = "POKEMON SAPPAXP"; -const u16 sDebugPals[20] = { - RGB(00, 00, 00), - RGB(31, 00, 00), - RGB(00, 31, 00), - RGB(00, 00, 31) -}; -const u16 sDebugDigitsGfx[] = INCBIN_U16("graphics/debug_digits.4bpp"); - -void AgbMain(void) -{ - RegisterRamReset(0x1E); - DmaCopy32(3, gIntrFuncPointers, gIntrTable, sizeof gIntrFuncPointers); - DmaCopy32(3, IntrMain, gIntrVector, sizeof(gIntrVector)); - INTR_VECTOR = gIntrVector; - REG_IE = INTR_FLAG_VBLANK; - if (*RomHeaderMagic == 0x96 && *(u32 *)RomHeaderGameCode == *(u32 *)gBerryFixGameCode) - REG_IE |= INTR_FLAG_GAMEPAK; - REG_DISPSTAT = DISPSTAT_VBLANK_INTR; - REG_IME = INTR_FLAG_VBLANK; - msg_load_gfx(); - gMainCallbackState = MAINCB_INIT; - gUnknown_3001194 = 0; - for (;;) - { - VBlankIntrWait(); - ReadKeys(); - main_callback(&gMainCallbackState, gUnknown_30011A0, gSharedMem); - } -} - -void dummy_intr_1(void) -{} - -void dummy_intr_0(void) -{} - -void ReadKeys(void) -{ - u16 keyInput = REG_KEYINPUT ^ KEYS_MASK; - gNewKeys = keyInput & ~gHeldKeys; - gHeldKeys = keyInput; -} - -void fill_palette(const u8 * src, u16 * dest, u8 value) -{ - s32 i; - for (i = 0; src[i] != 0; i++) - dest[i] = src[i] | value << 12; -} - -bool32 berry_fix_memcmp(const char * src1, const char * src2, size_t size) -{ - s32 i; - for (i = 0; i < size; i++) - { - if (src1[i] != src2[i]) - return FALSE; - } - return TRUE; -} - -s32 validate_rom_header_internal(void) -{ - char languageCode = *(RomHeaderGameCode + 3); - s32 softwareVersion = *RomHeaderSoftwareVersion; - s32 shouldUpdate = -1; - s32 i; - for (i = 0; i < ARRAY_COUNT(gVersionData); i++) - { - if (languageCode == gVersionData[i][0]) - { - if (softwareVersion >= gVersionData[i][1]) - { - shouldUpdate = 0; - } - else - { - shouldUpdate = 1; - } - break; - } - } - if (shouldUpdate != -1) - { - if (berry_fix_memcmp(RomHeaderGameTitle, gRubyTitleAndCode, 15) == TRUE) - { - if (shouldUpdate == 0) - return RUBY_NONEED; - else - { - gGameVersion = VERSION_RUBY; - return RUBY_UPDATABLE; - } - } - else if (berry_fix_memcmp(RomHeaderGameTitle, gSapphireTitleAndCode, 15) == TRUE) - { - if (shouldUpdate == 0) - return SAPPHIRE_NONEED; - else - { - gGameVersion = VERSION_SAPPHIRE; - return SAPPHIRE_UPDATABLE; - } - } - } - return INVALID; -} - -s32 validate_rom_header(void) -{ - if (*RomHeaderMakerCode == '0' && *(RomHeaderMakerCode + 1) == '1' && *RomHeaderMagic == 0x96) - return validate_rom_header_internal(); - else - return INVALID; -} - -void main_callback(u32 * state, void * unused1, void * unused2) -{ - u8 year; - switch (*state) - { - case MAINCB_INIT: - msg_display(MSGBOX_WILL_NOW_UPDATE); - if (++gInitialWaitTimer >= 180) - { - gInitialWaitTimer = 0; - gUpdateSuccessful = 0; - switch (validate_rom_header()) - { - case SAPPHIRE_UPDATABLE: - case RUBY_UPDATABLE: // Should Update Ruby - ++(*state); // MAINCB_CHECK_RTC - break; - case INVALID: // Invalid header - *state = MAINCB_ERROR; - break; - case SAPPHIRE_NONEED: // Should not update Sapphire - case RUBY_NONEED: // Should not update Ruby - *state = MAINCB_NO_NEED_TO_FIX; - break; - } - } - break; - case MAINCB_CHECK_RTC: - if (!rtc_maincb_is_rtc_working()) - *state = MAINCB_ERROR; - else - ++(*state); // MAINCB_CHECK_FLASH - break; - case MAINCB_CHECK_FLASH: - if (flash_maincb_ident_is_valid() == TRUE) - ++(*state); // MAINCB_READ_SAVE - else - *state = MAINCB_ERROR; - break; - case MAINCB_READ_SAVE: - if (flash_maincb_read_save(0) == SAVE_STATUS_OK) - ++(*state); // MAINCB_CHECK_TIME - else - *state = MAINCB_ERROR; - break; - case MAINCB_CHECK_TIME: - if (rtc_maincb_is_time_since_last_berry_update_positive(&year) == TRUE) - { - if (year == 0) - ++(*state); // MAINCB_FIX_DATE - else - *state = MAINCB_CHECK_PACIFIDLOG_TM; - } - else - { - if (year != 1) - *state = MAINCB_YEAR_MAKES_NO_SENSE; - else - ++(*state); // MAINCB_FIX_DATE - } - break; - case MAINCB_FIX_DATE: - rtc_maincb_fix_date(); - gUpdateSuccessful |= 1; - *state = MAINCB_CHECK_PACIFIDLOG_TM; - break; - case MAINCB_CHECK_PACIFIDLOG_TM: - if (flash_maincb_check_need_reset_pacifidlog_tm() == TRUE) - *state = MAINCB_FINISHED; - else - *state = MAINCB_FIX_PACIFIDLOG_TM; - break; - case MAINCB_FIX_PACIFIDLOG_TM: - msg_display(MSGBOX_UPDATING); - if (flash_maincb_reset_pacifidlog_tm() == TRUE) - { - gUpdateSuccessful |= 1; - *state = MAINCB_FINISHED; - } - else - *state = MAINCB_ERROR; - break; - case MAINCB_FINISHED: - if (gUpdateSuccessful == 0) - *state = MAINCB_NO_NEED_TO_FIX; - else - msg_display(MSGBOX_HAS_BEEN_UPDATED); - break; - case MAINCB_NO_NEED_TO_FIX: - msg_display(MSGBOX_NO_NEED_TO_UPDATE); - break; - case MAINCB_YEAR_MAKES_NO_SENSE: - msg_display(MSGBOX_UNABLE_TO_UPDATE); - break; - case MAINCB_ERROR: - msg_display(MSGBOX_UNABLE_TO_UPDATE); - break; - } -} - -void DBG_LoadDigitsPal(void) -{ - s32 i; - const u16 * src; - vu16 * dest = (vu16 *)BG_PLTT + 1; - DmaFill16(3, RGB(31, 31, 31), (vu16 *)BG_PLTT, BG_PLTT_SIZE); - src = sDebugPals; - for (i = 0; i < 4; i++) - { - *dest = *src; - dest += 16; - src++; - } -} - -void DBG_LoadDigits(void) -{ - DmaFill16(3, 0x1111, (void *)VRAM + 0x8420, 0x1800); - DmaCopy32(3, sDebugDigitsGfx, (void *)VRAM + 0x8600, 0x200); - DBG_LoadDigitsPal(); -} diff --git a/berry_fix/payload/src/rtc.c b/berry_fix/payload/src/rtc.c deleted file mode 100644 index e73f522aad03..000000000000 --- a/berry_fix/payload/src/rtc.c +++ /dev/null @@ -1,346 +0,0 @@ -#include "gba/gba.h" -#include "siirtc.h" -#include "global.h" -#include "main.h" - -struct Time gTimeSinceBerryUpdate; -struct Time gRtcUTCTime; - -static u16 sRtcProbeStatus; -static struct SiiRtcInfo sRtcInfoBuffer; -static u8 sRtcProbeCode; -static u16 sImeBak; -static struct SiiRtcInfo sRtcInfoWork; - -const struct SiiRtcInfo sDefaultRTC = { - .year = 0, // 2000 - .month = 1, // January - .day = 1, // 01 - .dayOfWeek = 0, - .hour = 0, - .minute = 0, - .second = 0, - .status = 0, - .alarmHour = 0, - .alarmMinute = 0 -}; -const s32 sDaysPerMonth[] = { - 31, - 28, - 31, - 30, - 31, - 30, - 31, - 31, - 30, - 31, - 30, - 31 -}; - -void rtc_get_status_and_datetime(struct SiiRtcInfo *); -u16 rtc_validate_datetime(struct SiiRtcInfo *); - - -void rtc_intr_disable(void) -{ - sImeBak = REG_IME; - REG_IME = 0; -} - -void rtc_intr_enable(void) -{ - REG_IME = sImeBak; -} - -s32 bcd_to_hex(u8 a0) -{ - if (a0 >= 0xa0 || (a0 & 0xF) >= 10) - return 0xFF; - return ((a0 >> 4) & 0xF) * 10 + (a0 & 0xF); -} - -bool8 is_leap_year(u8 year) -{ - if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) - return TRUE; - return FALSE; -} - -u16 rtc_count_days_parameterized(u8 year, u8 month, u8 day) -{ - u16 numDays = 0; - s32 i; - for (i = year - 1; i > 0; i--) - { - numDays += 365; - if (is_leap_year(i) == TRUE) - numDays++; - } - for (i = 0; i < month - 1; i++) - numDays += sDaysPerMonth[i]; - if (month > MONTH_FEB && is_leap_year(year) == TRUE) - numDays++; - numDays += day; - return numDays; -} - -u16 rtc_count_days_from_info(struct SiiRtcInfo *info) -{ - return rtc_count_days_parameterized(bcd_to_hex(info->year), bcd_to_hex(info->month), bcd_to_hex(info->day)); -} - -static void rtc_probe_status(void) -{ - sRtcProbeStatus = 0; - rtc_intr_disable(); - SiiRtcUnprotect(); - sRtcProbeCode = SiiRtcProbe(); - rtc_intr_enable(); - if ((sRtcProbeCode & 0xF) != 1) - sRtcProbeStatus = 1; - else - { - if (sRtcProbeCode & 0xF0) - sRtcProbeStatus = 2; - else - sRtcProbeStatus = 0; - rtc_get_status_and_datetime(&sRtcInfoBuffer); - sRtcProbeStatus = rtc_validate_datetime(&sRtcInfoBuffer); - } -} - -u16 rtc_get_probe_status(void) -{ - return sRtcProbeStatus; -} - -void sub_020106EC(struct SiiRtcInfo * info) -{ - if (sRtcProbeStatus & 0xFF0) - *info = sDefaultRTC; - else - rtc_get_status_and_datetime(info); -} - -void rtc_get_datetime(struct SiiRtcInfo * info) -{ - rtc_intr_disable(); - SiiRtcGetDateTime(info); - rtc_intr_enable(); -} - -void rtc_get_status(struct SiiRtcInfo * info) -{ - rtc_intr_disable(); - SiiRtcGetStatus(info); - rtc_intr_enable(); -} - -void rtc_get_status_and_datetime(struct SiiRtcInfo * info) -{ - rtc_get_status(info); - rtc_get_datetime(info); -} - -u16 rtc_validate_datetime(struct SiiRtcInfo * info) -{ - s32 year, month, day; - u16 r4 = (info->status & SIIRTCINFO_POWER) ? 0x20 : 0; - if (!(info->status & SIIRTCINFO_24HOUR)) - r4 |= 0x10; - year = bcd_to_hex(info->year); - if (year == 0xFF) - r4 |= 0x40; - month = bcd_to_hex(info->month); - if (month == 0xFF || month == 0 || month > 12) - r4 |= 0x80; - day = bcd_to_hex(info->day); - if (day == 0xFF) - r4 |= 0x100; - if (month == MONTH_FEB) - { - if (day > is_leap_year(year) + sDaysPerMonth[1]) - r4 |= 0x100; - } - else - { - if (day > sDaysPerMonth[month - 1]) - r4 |= 0x100; - } - day = bcd_to_hex(info->hour); - if (day > 24) - r4 |= 0x200; - day = bcd_to_hex(info->minute); - if (day > 60) - r4 |= 0x400; - day = bcd_to_hex(info->second); - if (day > 60) - r4 |= 0x800; - return r4; -} - -void rtc_reset(void) -{ - rtc_intr_disable(); - SiiRtcReset(); - rtc_intr_enable(); -} - -void rtc_sub_time_from_datetime(struct SiiRtcInfo * datetime, struct Time * dest, struct Time * timediff) -{ - u16 r4 = rtc_count_days_from_info(datetime); - dest->seconds = bcd_to_hex(datetime->second) - timediff->seconds; - dest->minutes = bcd_to_hex(datetime->minute) - timediff->minutes; - dest->hours = bcd_to_hex(datetime->hour) - timediff->hours; - dest->days = r4 - timediff->days; - if (dest->seconds < 0) - { - dest->seconds += 60; - dest->minutes--; - } - if (dest->minutes < 0) - { - dest->minutes += 60; - dest->hours--; - } - if (dest->hours < 0) - { - dest->hours += 24; - dest->days--; - } -} - -void rtc_sub_time_from_time(struct Time * dest, struct Time * diff, struct Time * src) -{ - dest->seconds = src->seconds - diff->seconds; - dest->minutes = src->minutes - diff->minutes; - dest->hours = src->hours - diff->hours; - dest->days = src->days - diff->days; - if (dest->seconds < 0) - { - dest->seconds += 60; - dest->minutes--; - } - if (dest->minutes < 0) - { - dest->minutes += 60; - dest->hours--; - } - if (dest->hours < 0) - { - dest->hours += 24; - dest->days--; - } -} - -bool32 rtc_maincb_is_rtc_working(void) -{ - rtc_probe_status(); - if (rtc_get_probe_status() & 0xFF0) - return FALSE; - return TRUE; -} - -void rtc_set_datetime(struct SiiRtcInfo * info) -{ - vu16 imeBak = REG_IME; - REG_IME = 0; - SiiRtcSetDateTime(info); - REG_IME = imeBak; -} - -bool32 rtc_maincb_is_time_since_last_berry_update_positive(u8 * a0) -{ - rtc_get_status_and_datetime(&sRtcInfoWork); - *a0 = bcd_to_hex(sRtcInfoWork.year); - rtc_sub_time_from_datetime(&sRtcInfoWork, &gRtcUTCTime, LocalTimeOffset); - rtc_sub_time_from_time(&gTimeSinceBerryUpdate, LastBerryTreeUpdate, &gRtcUTCTime); - if (gTimeSinceBerryUpdate.days * 1440 + gTimeSinceBerryUpdate.hours * 60 + gTimeSinceBerryUpdate.minutes >= 0) - return TRUE; - return FALSE; -} - -u32 hex_to_bcd(u8 a0) -{ - u32 r4; - if (a0 > 99) - return 0xFF; - r4 = Div(a0, 10) << 4; - r4 |= Mod(a0, 10); - return r4; -} - -void sii_rtc_inc(u8 * a0) -{ - *a0 = hex_to_bcd(bcd_to_hex(*a0) + 1); -} - -void sii_rtc_inc_month(struct SiiRtcInfo * a0) -{ - sii_rtc_inc(&a0->month); - if (bcd_to_hex(a0->month) > 12) - { - sii_rtc_inc(&a0->year); - a0->month = MONTH_JAN; - } -} - -void sii_rtc_inc_day(struct SiiRtcInfo * a0) -{ - sii_rtc_inc(&a0->day); - if (bcd_to_hex(a0->day) > sDaysPerMonth[bcd_to_hex(a0->month) - 1]) - { - if (!is_leap_year(bcd_to_hex(a0->year)) || bcd_to_hex(a0->month) != MONTH_FEB || bcd_to_hex(a0->day) != 29) - { - a0->day = 1; - sii_rtc_inc_month(a0); - } - } -} - -bool32 rtc_is_past_feb_28_2000(struct SiiRtcInfo * a0) -{ - if (bcd_to_hex(a0->year) == 0) - { - if (bcd_to_hex(a0->month) == MONTH_JAN) - return FALSE; - if (bcd_to_hex(a0->month) > MONTH_FEB) - return TRUE; - if (bcd_to_hex(a0->day) == 29) - return TRUE; - return FALSE; - } - if (bcd_to_hex(a0->year) == 1) - return TRUE; - return FALSE; -} - -void rtc_maincb_fix_date(void) -{ - rtc_get_status_and_datetime(&sRtcInfoWork); - if (bcd_to_hex(sRtcInfoWork.year) == 0 || bcd_to_hex(sRtcInfoWork.year) == 1) - { - if (bcd_to_hex(sRtcInfoWork.year) == 1) - { - sRtcInfoWork.year = 2; - sRtcInfoWork.month = MONTH_JAN; - sRtcInfoWork.day = 2; - rtc_set_datetime(&sRtcInfoWork); - } - else - { - if (rtc_is_past_feb_28_2000(&sRtcInfoWork) == TRUE) - { - sii_rtc_inc_day(&sRtcInfoWork); - sii_rtc_inc(&sRtcInfoWork.year); - } - else - { - sii_rtc_inc(&sRtcInfoWork.year); - } - rtc_set_datetime(&sRtcInfoWork); - } - } -} diff --git a/berry_fix/payload/src/siirtc.c b/berry_fix/payload/src/siirtc.c deleted file mode 100644 index 965a068f1349..000000000000 --- a/berry_fix/payload/src/siirtc.c +++ /dev/null @@ -1,432 +0,0 @@ -// Ruby/Sapphire/Emerald cartridges contain a Seiko Instruments Inc. (SII) -// S-3511A real-time clock (RTC). This library ("SIIRTC_V001") is for -// communicating with the RTC. - -#include "gba/gba.h" -#include "siirtc.h" - -#define STATUS_INTFE 0x02 // frequency interrupt enable -#define STATUS_INTME 0x08 // per-minute interrupt enable -#define STATUS_INTAE 0x20 // alarm interrupt enable -#define STATUS_24HOUR 0x40 // 0: 12-hour mode, 1: 24-hour mode -#define STATUS_POWER 0x80 // power on or power failure occurred - -#define TEST_MODE 0x80 // flag in the "second" byte - -#define ALARM_AM 0x00 -#define ALARM_PM 0x80 - -#define OFFSET_YEAR offsetof(struct SiiRtcInfo, year) -#define OFFSET_MONTH offsetof(struct SiiRtcInfo, month) -#define OFFSET_DAY offsetof(struct SiiRtcInfo, day) -#define OFFSET_DAY_OF_WEEK offsetof(struct SiiRtcInfo, dayOfWeek) -#define OFFSET_HOUR offsetof(struct SiiRtcInfo, hour) -#define OFFSET_MINUTE offsetof(struct SiiRtcInfo, minute) -#define OFFSET_SECOND offsetof(struct SiiRtcInfo, second) -#define OFFSET_STATUS offsetof(struct SiiRtcInfo, status) -#define OFFSET_ALARM_HOUR offsetof(struct SiiRtcInfo, alarmHour) -#define OFFSET_ALARM_MINUTE offsetof(struct SiiRtcInfo, alarmMinute) - -#define INFO_BUF(info, index) (*((u8 *)(info) + (index))) - -#define DATETIME_BUF(info, index) INFO_BUF(info, OFFSET_YEAR + index) -#define DATETIME_BUF_LEN (OFFSET_SECOND - OFFSET_YEAR + 1) - -#define TIME_BUF(info, index) INFO_BUF(info, OFFSET_HOUR + index) -#define TIME_BUF_LEN (OFFSET_SECOND - OFFSET_HOUR + 1) - -#define WR 0 // command for writing data -#define RD 1 // command for reading data - -#define CMD(n) (0x60 | (n << 1)) - -#define CMD_RESET CMD(0) -#define CMD_STATUS CMD(1) -#define CMD_DATETIME CMD(2) -#define CMD_TIME CMD(3) -#define CMD_ALARM CMD(4) - -#define GPIO_PORT_DATA (*(vu16 *)0x80000C4) -#define GPIO_PORT_DIRECTION (*(vu16 *)0x80000C6) -#define GPIO_PORT_READ_ENABLE (*(vu16 *)0x80000C8) - -extern vu16 GPIOPortDirection; - -static u16 sDummy; // unused variable -static bool8 sLocked; - -static int WriteCommand(u8 value); -static int WriteData(u8 value); -static u8 ReadData(); -static void EnableGpioPortRead(); -static void DisableGpioPortRead(); - -static const char AgbLibRtcVersion[] = "SIIRTC_V001"; - -void SiiRtcUnprotect() -{ - EnableGpioPortRead(); - sLocked = FALSE; -} - -void SiiRtcProtect() -{ - DisableGpioPortRead(); - sLocked = TRUE; -} - -u8 SiiRtcProbe() -{ - u8 errorCode; - struct SiiRtcInfo rtc; - - if (!SiiRtcGetStatus(&rtc)) - return 0; - - errorCode = 0; - - if ((rtc.status & (SIIRTCINFO_POWER | SIIRTCINFO_24HOUR)) == SIIRTCINFO_POWER - || (rtc.status & (SIIRTCINFO_POWER | SIIRTCINFO_24HOUR)) == 0) - { - // The RTC is in 12-hour mode. Reset it and switch to 24-hour mode. - - // Note that the conditions are redundant and equivalent to simply - // "(rtc.status & SIIRTCINFO_24HOUR) == 0". It's possible that this - // was also intended to handle resetting the clock after power failure - // but a mistake was made. - - if (!SiiRtcReset()) - return 0; - - errorCode++; - } - - SiiRtcGetTime(&rtc); - - if (rtc.second & TEST_MODE) - { - // The RTC is in test mode. Reset it to leave test mode. - - if (!SiiRtcReset()) - return (errorCode << 4) & 0xF0; - - errorCode++; - } - - return (errorCode << 4) | 1; -} - -bool8 SiiRtcReset() -{ - u8 result; - struct SiiRtcInfo rtc; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_RESET | WR); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - rtc.status = SIIRTCINFO_24HOUR; - - result = SiiRtcSetStatus(&rtc); - - return result; -} - -bool8 SiiRtcGetStatus(struct SiiRtcInfo *rtc) -{ - u8 statusData; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_STATUS | RD); - - GPIO_PORT_DIRECTION = 5; - - statusData = ReadData(); - - rtc->status = (statusData & (STATUS_POWER | STATUS_24HOUR)) - | ((statusData & STATUS_INTAE) >> 3) - | ((statusData & STATUS_INTME) >> 2) - | ((statusData & STATUS_INTFE) >> 1); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcSetStatus(struct SiiRtcInfo *rtc) -{ - u8 statusData; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - statusData = STATUS_24HOUR - | ((rtc->status & SIIRTCINFO_INTAE) << 3) - | ((rtc->status & SIIRTCINFO_INTME) << 2) - | ((rtc->status & SIIRTCINFO_INTFE) << 1); - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_STATUS | WR); - - WriteData(statusData); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcGetDateTime(struct SiiRtcInfo *rtc) -{ - u8 i; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_DATETIME | RD); - - GPIO_PORT_DIRECTION = 5; - - for (i = 0; i < DATETIME_BUF_LEN; i++) - DATETIME_BUF(rtc, i) = ReadData(); - - INFO_BUF(rtc, OFFSET_HOUR) &= 0x7F; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcSetDateTime(struct SiiRtcInfo *rtc) -{ - u8 i; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_DATETIME | WR); - - for (i = 0; i < DATETIME_BUF_LEN; i++) - WriteData(DATETIME_BUF(rtc, i)); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcGetTime(struct SiiRtcInfo *rtc) -{ - u8 i; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_TIME | RD); - - GPIO_PORT_DIRECTION = 5; - - for (i = 0; i < TIME_BUF_LEN; i++) - TIME_BUF(rtc, i) = ReadData(); - - INFO_BUF(rtc, OFFSET_HOUR) &= 0x7F; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcSetTime(struct SiiRtcInfo *rtc) -{ - u8 i; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIO_PORT_DIRECTION = 7; - - WriteCommand(CMD_TIME | WR); - - for (i = 0; i < TIME_BUF_LEN; i++) - WriteData(TIME_BUF(rtc, i)); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -bool8 SiiRtcSetAlarm(struct SiiRtcInfo *rtc) -{ - u8 i; - u8 alarmData[2]; - - if (sLocked == TRUE) - return FALSE; - - sLocked = TRUE; - - // Decode BCD. - alarmData[0] = (rtc->alarmHour & 0xF) + 10 * ((rtc->alarmHour >> 4) & 0xF); - - // The AM/PM flag must be set correctly even in 24-hour mode. - - if (alarmData[0] < 12) - alarmData[0] = rtc->alarmHour | ALARM_AM; - else - alarmData[0] = rtc->alarmHour | ALARM_PM; - - alarmData[1] = rtc->alarmMinute; - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 5; - - GPIOPortDirection = 7; // Why is this the only instance that uses a symbol? - - WriteCommand(CMD_ALARM | WR); - - for (i = 0; i < 2; i++) - WriteData(alarmData[i]); - - GPIO_PORT_DATA = 1; - GPIO_PORT_DATA = 1; - - sLocked = FALSE; - - return TRUE; -} - -static int WriteCommand(u8 value) -{ - u8 i; - u8 temp; - - for (i = 0; i < 8; i++) - { - temp = ((value >> (7 - i)) & 1); - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 5; - } - - // control reaches end of non-void function -} - -static int WriteData(u8 value) -{ - u8 i; - u8 temp; - - for (i = 0; i < 8; i++) - { - temp = ((value >> i) & 1); - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 4; - GPIO_PORT_DATA = (temp << 1) | 5; - } - - // control reaches end of non-void function -} - -static u8 ReadData() -{ - u8 i; - u8 temp; - u8 value; - - for (i = 0; i < 8; i++) - { - GPIO_PORT_DATA = 4; - GPIO_PORT_DATA = 4; - GPIO_PORT_DATA = 4; - GPIO_PORT_DATA = 4; - GPIO_PORT_DATA = 4; - GPIO_PORT_DATA = 5; - - temp = ((GPIO_PORT_DATA & 2) >> 1); - value = (value >> 1) | (temp << 7); // UB: accessing uninitialized var - } - - return value; -} - -static void EnableGpioPortRead() -{ - GPIO_PORT_READ_ENABLE = 1; -} - -static void DisableGpioPortRead() -{ - GPIO_PORT_READ_ENABLE = 0; -} diff --git a/berry_fix/payload/sym_bss.txt b/berry_fix/payload/sym_bss.txt deleted file mode 100644 index 3b1c62ae96c9..000000000000 --- a/berry_fix/payload/sym_bss.txt +++ /dev/null @@ -1,5 +0,0 @@ - .include "src/main.o" - .include "src/rtc.o" - .include "src/flash.o" - .include "src/agb_flash.o" - .include "src/siirtc.o" diff --git a/berry_fix/payload/sym_common.txt b/berry_fix/payload/sym_common.txt deleted file mode 100644 index 28b47f52e3a3..000000000000 --- a/berry_fix/payload/sym_common.txt +++ /dev/null @@ -1,29 +0,0 @@ - .include "main.o" - .include "rtc.o" - - .align 4 -gFirstSaveSector: @ 0x03001220 - .space 0x4 - -gPrevSaveCounter: @ 0x03001224 - .space 0x4 - -gLastKnownGoodSector: @ 0x03001228 - .space 0x4 - -gDamagedSaveSectors: @ 0x0300122C - .space 0x4 - -gSaveCounter: @ 0x03001230 - .space 0x4 - -gFastSaveSection: @ 0x03001234 - .space 0x4 - -gCurSaveChunk: - .space 0x4 - -gFlashIdentIsValid: @ 0x0300123C - .space 0x4 - - .include "agb_flash.o" diff --git a/berry_fix/payload/sym_ewram.txt b/berry_fix/payload/sym_ewram.txt deleted file mode 100644 index 2c61f5e7e535..000000000000 --- a/berry_fix/payload/sym_ewram.txt +++ /dev/null @@ -1,3 +0,0 @@ - .include "src/main.o" - .include "src/rtc.o" - .include "src/flash.o" diff --git a/berry_fix/rom.sha1 b/berry_fix/rom.sha1 deleted file mode 100644 index 145b083b2cf1..000000000000 --- a/berry_fix/rom.sha1 +++ /dev/null @@ -1 +0,0 @@ -2eb0a94a913bebfb4cb59ceb57f3f965da55ef6d berry_fix.gba diff --git a/data/ereader_link_data.s b/data/ereader_link_data.s deleted file mode 100644 index d3269ebfe0c5..000000000000 --- a/data/ereader_link_data.s +++ /dev/null @@ -1,6 +0,0 @@ - .section .rodata - - .align 2 -gEReaderLinkData_Start:: - .incbin "data/ereader_link_data.bin" -gEReaderLinkData_End:: diff --git a/data/mb_berry_fix.gba b/data/mb_berry_fix.gba new file mode 100755 index 0000000000000000000000000000000000000000..0afff07f5d2314e2bd35d99de518cbc114009b5e GIT binary patch literal 15348 zcmd_ReRva9`ak?RGkKZ3v^{AWnzm^(Nm^-nO&CUKjcb1}yk*JW@O)=ugKOKI zy=j{ae-~+>qGE7#{=eoQ_^EL9>A!cZ`?dF(zgHT%o|*S}r}dugL$S59?%np;3ybD& z-ZpxOfBt??=7B}L=Fjswiq=Bfo;a+|8R3^d>+RcowR2tMD>>)QC3|@?yXe&AS0<@@ zrt_usXg<_rx&E1@oewQ}Ou1p#S2;gyC^G)(9@jqx_4pqz|BT`aZ~k-ttLD4^Rs8>3 zvatLAe>(Sl+I>=n<@AuM8vjQ*{aRUK^;zmfOB*Y*?~_j;cIJYro*P!xbcn5||0;H# z1gcM8X1}?-*3+P@j&`2>nYH=#S{(`oaIIzr?=(yWbRc{S+EI16a#v~GG{seFe2M!?Y|Nrb4{V)V1 zgH48#cT$_%9XsQcOm>(=2L;dM2hhed>~~U}&54BxkWJ`6wP*m}3VsN@rkn}!B6zZ& z^}*fn#3_i_bjEGx;t*vd87-$CA|*Clo3>6^P9Ysg*NCf6`3X$#W2R-4lvK+h$tsyN zFwxNH1heH-LdXM?F_fBMvYgU~Qeo1BQs2OGBAEotcpLl0lLGc|v@s3=8_!U5NEB?a z?O7tH)MGF+m{l%Bvc&Ro@J*4Xy3Ex`$gHS{WJ(DfBAJy$w95{ZqyD*EQ%?rU9YL;6 zs9TLRmbq-TX|!(x!k@r5V{|imH3F=fWboc+EMyfM zJ~&Q@&S3K9X}g{cuSs8FarhzWX6h@`n*=zTOGG(MrudM2h#6jjF&Y*5Yq3NYRUVFH zU2>wm9>^8ClX-hRB_)DP3b}l05eIt2!gj60>;OEQij7Bpvg4#3^@jSUVvuf#e4G?w zQ}M4yiRk^1avutGO}n<7M}2}%je)F1==zCV>(*@ zPBFqchWaO1yKj+0L9X6g_W9Z7C=U_VrnOM5V0XYA36E|j#QnKR$4?ZPDks+sQ0yJES`EV7U-bQ&!y%b zt?NsnM;*|{R9(Cc^L8`oS{~4e-mhtUV;eLMvCfo><9I7Bg9IfzQ1@7%h$mca9rzEy ze*(T6y#G7!It}5X;A`u_&jT-lp8#Hx*}RBQ4i3Q-6zYgqh-lu)#dm9Yj}U=AC`8nO zHr2)zX|VJ`EY(O$%K&yxGdcGL7Thu-@e5H&`4F9}p!*7P%eph-fb#QIlAGEs`7jqs z?GSW8;-#~70Vw?GDL{1#(C(=gdts=gWf;HJtpdJ93pK6Z=#>v3v=b20doa)K#t?Q;4>}A@M6}W*nu>Nn$0f$b@W+tku}X%qjN zboxYtE>TLfe$gC2&O=$iILnE&V4YpVwz*m4wCX_q-__&<(%)0(pf->jFz%P{qFFM3 z^#l!S9OPgmR~%1M2Ya{)2JU!~LmhahbFyCwc<1Iigb$w&%u&QOcWdvuYXaBb4xPhW zuMVtJiPkY*H$E{66B<;FBU_i9SjrU4N|noAp6jS^;pSIVvejJjEZ}W7&VraLLmddI zM0s}@MEPu3H&cwVni@5`K1n2^L~?cA1TI^0Tp%|&z$>t6kc(~(HtkGKbU-N{q}m`i z$Oi@4>kiWIEG8!W@HQ& zJW1QxdfcT^MF&y1vm@$&No`IYoHIgGT}V|&np2f0Fi{;iDUHqFu6Nikuaqq($y}-U zZ(OPK~trq#8&lRa~7}kO8!-14~AT zQmGwQ2bPT#E>Uy~l9L>xNY1GdE=NPN&2OOU_L2OR8Y#VKMIB6$5z<#Lr4L4PnHX;w z+0ATW)Z2vY^c&=WjD<{?-6jo`oy-l7$Q^`uBM7`ifC3!JbDsK#mLflG|-BrtVc7w!`YclbmPIi25iQO(f*a zJ#hb$-yxu%>1whtrRs9YL@|zNw`Deo@_p8nxv5WCxpNwI;PVlY3?CjwZj{clREQ3L z9<1}!q?uH2k;cIEvZXP~_|4yiT4BhBU*D~X@1}WKaN5r!PRj1J(e^}Fqsi5nh+v+E zwKgEn-9ru8nqm8s#vaZRU9=?1nJ_+4P0?3cmc2$3_6WT?)?#h;Xkn4c%%c8Qm5-LE z%&qRH6KT74W(m>ziIR1h3uA*#jObB$1KG*z>={sWq|Dp$;dSS2H&2CPC@Eg$P4Zl} zOg>hyJY=1g>yfPG(HZxQ!`x9DZ2jhLTs{FVcT_i5&IM)5W?NiUffv_W4`+)G4XiyX zA`a*@iJEcFOUHHCL^J57)XI6=PKp!7xs+|_L#o|2m2_(x$lTCVnsQnd|IKo*HMGpz zF6aCL4P1FLEhpu&u|%E@KC!$Lu7et)Ja@&+l_vy=@-&<6)v(Cfx52I5xSG3S2!7{I z)*ckR^0+`kS_L%orwD`_HxZlS(1py<3-+c73XqO zWTT6(Ag(PEeXuUAH~A@A2&;oyn?8WmC|UJRj7Ht476-Zs`6d4l%~0C?N!ZMpbwPbX z9`xm_ixax3W7*Wv4JqR%qGS?AJ6dGR{!ziyS-DLD!zlXMlj_V7!g+J$+@?g0e+Nc# zWin|}ge=WTuA+X|ptnB({gQdijY7AYqYuVSufZ?s>x4+IkQkY^HIf{H=y{^@koHwIZ)AL*U65`&tP|y(}-jCdNHjEqZyL& zjE8PpvFXU-fQ73&XrC8Q5+)0;NYl0@c1ag` zYw&n-xoD3h8_#7P5RRO*|0K&BHx*wxn(JViZR7A&V{nmO@W@4m7!)c#6?*J~>yW&P zK9;;plbE*RiRg%Cv+i)(*Lz2ZxLBk6nws7pQA_!#(4H7f;yZ=&J-*FMyoTt_&Aj3pY9ZK{y% zw)^t42I)5Ux7k7vw_au{Uytg!cUtaMRpqA7FZ3SiRfjJ0zTLZ~$%X7Ay-4Gtg{w-R zc)NG@<7w{Rs)IDGBA}TXLG}be*A{rO_@p82ru0BjT5^^5#uwcu)1KyRUtV#atXR*@ zO>9kcXDh zdWY!RT!^h2a~;*5Sg~0on>A*$P-zY(V4Y;=a_cj4uD&ETT6$b#bp~;j6{|)yPNWAe zSVq$g)I&FrVOx%Ow5&leH)42johNz9t8}wf*{qz!GL2bER5qK9<;Ebt8c*f8iBcnO zOl*v7{A`Hf(|Gq&FN8Mi8B#X1ZD3lT7lRspkEVQWvHn^9*2MU8Q@mWs9oJP;(UA|6 zb}-lRNodB6RZW3x?xsk)26{7cT(f^llT$v(uY=Nb*_&OLrSBn48Ot5z(8}JrgD4K* z3H#P2DC;iEDQZDoYA|Fcs7oy;lN*aii9Mr`fTrh*EzHSqw>Ig%J>r4GJTt9syLal>&g?XJE#hm#LkoO2FO-YL)B)7Z8;z?^$7&=|mV z(5a44m2>-4w2!}heVvphZb~a}EY9fBkQ{quH#T*`7%FXS%G#2P4>-;|wa!}kDN>t- zVndIG--$XI0dCqsd#=NvX=;*mB{v0+90$ga>Nb|EE@0!M#nv9;&cf5Q_`tJ=Y0P@B zTI$n0=)tDQW=CSz*u%7?ckuc;yVx?vF14g~wtO?_ZApGB(n7_SMx_NU-DpWk={BI{ zQL=)#B1y{Tw#_a)&m67EJtS|eZn;zpxs2-x29PId_}4JT+S6DjSrRXk{PFFBvM`y;N20MXyVF?8K@QVjNJ*|j673M zF^?I{{5%snujOWTmP>7SX^-sP67y1bpb^!LOYNZY%4A&%cne16WNTsqna(P-~W~xC0H`9Xa&5sxBju6Y|$@V(mQEKKc z58~k&hf+>UykiD28{G~bZ*s>4jf>xyI9C(5>q>`NSD8C!{W* z4s4-=t|pDsEiY{3ighO-YVpCoED6Zkz#mN<_-#gGaa&d;$+dRVDGxuMdZSBPsC9lz zt3H~n64R!X`#v9clH_ifqKVTPv?p}wOD zxtF;fb2(A=Yu?eo92XhCqkObFuS`>-5AHyTeoRFz$`lv`RBHC4(()EzS5vCIRf6cS zw9PL;yMAVn+JtVe%k~u4GlmapRz)3|6B5Ttoi?BAG)d(1tj9V{2hf3fncYQpr`>iZ zjTkKPacvmuWsJf@n%B}uXVUq3d*%gZ1xf>A^j-R1X0RB^u+M=|mu%0l2Q$hwJB2sl z2_j&U)5_(526anh`)qsgaUo!+7ldD$Bm#%GNhtBkDa;9urUWU*b10w;h_^E4h`HyX zrig4tBq=y2K9pMxZUCG$K?OO6mnyV~RwZ%wNd-!%g;k@UUgi|K^B%BENx5 zA|#(o+f+Q*6W$M{y|pdDG0Fj_gV#9BNfn??NkKv4U9Aag<@#^$+Ws8yd4Ld(<)!ri)$VS<)r0a7^Tod>a25*={{D#@F6 z$)4}HUNb`%RmC<%+(JvdJY&sFjv90&{UW0)tvyJZ+NEo*B;Ce z=dAIzcjAz8KsoR>JrKC|&0og;yof_N5IsO1d_r=q77whquWri4#|e{EX-O(AiHe&? zIchm=Nn+~;Ds6zc;XwiIraPtf=oXE*CFv1{Q$sDxvTPPN^FJH5>W&v+bJvK}Hh){( zyE&mn_cN~J;!&A@R+q?4pvR1p$~i-=?dR=@8#r?c#wh&HdFB;WD&ZU$^K%a^|G8}D z*z*aF)OeXiE-PM(GTzJjAEqc3?sV2h{t zTD_is!b1|@EH)XtMNvp_oRFq{FH6%7GrsWe!;&{(&)%}?>*hAwERxq`o1HJ&theHE zQj#a9Fintcj#?{g-RWXf)~+{4)1!1B^rPPF9!@MDwTMR@FRE@RZ_8vk%y~`u5EAx1{&B#ch0Ol#7n zl@lqA%bI}7y(*@?yEvC^e%z+&> zI%>d21RtfG8E(l+Fehv~+`L^*o+`C~wi{>eaJ!=+gUiNRa`ncjsISc2Ktw2CGmKWy z)zgx6!^f_d))wouM@hLP-fL+Qo4F61s`CMipVTu`^uPJx)s)BR(XOEy19|J(-=eql zL0za$kg4{){9TEo9On4OW%F(C=!d{9I5(bm`Vv#J8mu2LUy+=7k-&J#HDYKE|9NFy{t?YCQ4k}2T!-7mX*C=&&Tdz6#>RAeeqNb445Wt%N6CvO19NFqT*xT`RsdA7JoU)E49u zQ+xBFbgr#gIV2t`6Gvwq6A!VACq2dNOy*Rf?lZ=J?KV1kG`PO*=t}Q;t3&$&^Oq%R zD#6xQkV>S~TVNqKbGgw3mwqwP^H+*WGA%bl30?8NX1v@kzozpa?%poPw+F@TXP6zH z!n!w#+l}I~z)~#x;<8@)Ait0B^}0OW@szE4tc8+I+Zk1vb9 zsXsod%S2NR*Vi@K^L=fX+uoXX`mA?L{>9K14N8=j_U@L-zRJeRJJ2%vWaT`LRNA^K z|AI~VmBxvgv}@K6eX|zLQr=PC`Db5MU)74L+b!x~^IQ7skEixk_)r4O_D)=aH4KA2Q^uFlFmm~OB-lGf}`fnyt5?6+XO-Okl- zI^dl~>P=~RNyofpA*bQNkn8sr>1b%Foc)C|gJu@LBH4n{jsB=nJTB~TO%YsE>d2J* z#wlcao|c@+f67%zgTy7jRJ`u)!JadHg&Pa`lEW!&?Tw_62)re#S?Pe=2(7Um`Y|}} zi+|w2G)H>v^8nSYfsI`e&tEdeni(2YBSMNv+QWk-5Z!|g5HG;)lAtaA}-|@lgsT%~k z;u|t~&wE=x>oLxyYu+F2RL_znv9ZeoxohO2HJ`%cwRYhp*@_vR0f8}06uccgV}P#F zO$^^L#!32*X{!x^pAS9)zK&Hz8FB7G-a^Jwe;F*M?~->JMT9S1^QV_A2|N+8aBoVM z&m$IIvb-3`T!0J%={6XSpS?X1ck>@~FY!8)8a_`Dkha9@L&6hcLbn)3!b}$S`4Hn| zx|4o55V#gNQI-rs#77`N-u!Mh+AYo_>`0ID@&Elkd+kg5nDo$1%0cDevCu(p7bkYH zaD;z`SX_aF=puxBL*i0TKk6OF~tZWwTH0Sf^USSc(Zl!SPYUNKb! zMfFN>Qc0RY)1)P$Nt9KZEoRU(k%S7pGrU!jNsar&DN$!+zvPrE#TN0X8ks45-&xr0 z>$FOP^sL{xm`Hlp3cw-hv*Mk4#R@RaxmjR?X>Q^;Iq6m0{JdA+yj@Cqk4xbsbAoff zH>vx`GhTh@l$6vbB@zBLZxUrcMJZ{blms8ob?bq<;Z_^g()M{bK%-uNo9;+u083L= z)l7V8NivrG;GMO2=Pdds?$sMjE7;xAABmc$*u(^%r1hzCVymbhiYBs|BT15MYz5z} zRSYbq*3_ogvOOmHIO3egC*GAPut=g_^A7`za>72CnX8}3rZdUim<+IcNr4Tcz%w!0 ziG#(DC&-{aV+mS>7|?|EcpTUOJb@=c|A?nZJ~rZMU=#2Ro&}!6W`v%P z`j`vmOG7${ltG@!L{=mtF4NaSzAbnGEv(NM@e*EULd-PEi4qIX7`pX|l5d*9FMAIe zh}hR5{;Q$SdqF%yjq+7WTNA6D$D_nsq9`SlJkvq7TxXorbU4X_F4miyQFqzka==)J z(b`?iHew9MYR%)>u?d(6FY*CWfI>_HCa+y2mv(S5pcPwzSAcDJ6|VuW1KaTi-ef23 zz)t)LZ?V#!u?ub3%}#$C@38P5+7%zT-(ZS>B1~nZ{50SO+-Smd_~6aaNqk7#iZ;D2 za_7wTr;SjZbirj&$ea$wUy@m5HmM>Z4M;Va zqv>PkkXka2+(hQH(#_-+vVh>XAh(i*Bn%P(Swt2SEFrg1vXnfHhR?|t1b-(uOuAWM z6GuRfl7Emd3Gfy9nj9m?S?L?{E%}a|V4C22(o5n5CkZ)4PLm%%&QRar;)V;7kCJ;D zI?)9I`>0iJv_&3f&WGZI6%B{dXtnYjA2i%AI zS?K}h%(58TgCMJP+{1VT{g2804O|~^0sX+QjIYEc41i^S;4-e@D)d7J3}eLFJ9x7z zHhr+c|0F+hPaB-C{5o*=6JCAsiGjuEp2_ibmPi-HTjY-$ZYOtu)R8+uen+s3+(qsN z`MpS%8;4ea+(U3L`2)ERDbyp1%;fFM4CrGUe_T|T`#8) z5Ocp6@4t%g8n`ka}trb*!gbaA=xB{m9Aq!&Rl{#kTHx$9|tlXWCEE;L@!C%&EU->g2`U; zo5%vT`eLM&U@LhAWE**v;5CBR$#(JvVakQnzXhkQtwL$(*BgLINEkbNNg$=?V*CZB*DAfFO)kbLGNhsf7|cF9-f?7z_X z*(QC#rF*kG21L^2quR3_LPO$k12xEG$$l{v`4QiRo5k`1ePLh2d!diD15do}vxZbk zUvba^rR3S**=?8pqLloglnk7e5+lB}RIrq!0`T`V6N?3H#BFpJ6cnV>YeN8N{ z$y#V(c?Q-3oEMjN7NREK-TbO%={Ryo*w>6K#oxR^$=nL(g;-zssPYHk>3r{VR#%_s z>wBQBzoWl{g}IdB)eSrp8=me^tllpRLpGDzSNJMJd|BjEIMwbfCD!M}1?PpA`+faB z(w8@)BzMkWc1DedL#xCFD|h(UaP!|h*wbcI73&Y=h%F^01cq3DRWI(n)J*TW#I$MO zXhpu~k|jnplq$W{&#po`_HoVug={=TJYm!*y<2@smnyV6l`Kn|#ph;=Q&kGCp1QjgS7L@mB}xCFSkw(kv@d`)B(k|cpE}|{N7saSInlQ^!6&@=CO>?4J(~WM;l?` zz=6qK1>73$(P5k7yoj4s$S*6sPdk-f6n2ift-;>FX9m)Igedrg{Ul)8R zf)tu(3!l0ZFpfnNJ#I@O@>`t?^dt6V2hHQE9)O6cl1^-V7^Y_?yNq!)g}OF?Vp!kXvMC9%9rUx?Qzsd^bL2 z{u3U~x{BxMk65TucC5CCEISn9#b4G~Z|&{xn7IvwoQ)}#AG;V@@C~EWaRKxnA$_N8 z-X`ljy{=A}3U|XtrzB6A8#_hfK92{#2^m-6Z6|HOOC6%XyDu!{?{{KYHvFYiO+0_f z*@xa=doR3v+UF&t-#6H(GIT9Xq+hx{t6Wf#*-v?Kd!a@n^S@ng#UKCX22{7SIQ)kg z_HujO7}wPxC#HS_zMzBc3=j8Gr_;aLinEgbLRgiUk(9Vg&U%(+=*{bI*d2~@ERD`t z5GhD5fW@lri}aiOvts?R!jJjxkkCmBrIn@w{QmEaYgVGxeE#~}=P$2!r0d494qg%1UcHogv`? z`;Isn6aL+D_)BX`tH;*b(B|_eyyeG!7?LW>z*kqJ&0k{}OEdl~GGA+=1-*GQm>Q}6 ze$2yd9SoJqN#{a5pPKc~Bw~3D7Iuai2K_K`hNw4HjkKm%nz^5G zi^vl!ExSk#jU5U}rJ5+R%8=EMwlI~*_t3*uYg~@3j#ex#P0sNB`GQkUnTW4c$L(wY ziuCddM-`31d6Rehc`+737dO487@=1gR^?hmTMY$YR+CawU2mgrJFEF;7yD{zP`x*@ zunY@#qgQ&EUPp-y(`s$4vp4zxsfO%5`HFg2bG}c-V)D@=1i$ZzRez+Cf6CmCx%{Ki zJLp_AFKP7+VGEDd-tdL66y`9h#{UubBZKGPceO5JCzZi6<`1_0D&GoRZ(*6EewO=u zGVZi?B>uz>j;hU4)HYO|Gwe0YePauL<7mT;>|Pp~!_)!3^t)uah`sn!O9 zSjrE5F{+NBkr4&^ri+W>7ThFe&^%CDpaz1PAM4_Mi5(}%<&V@=0NaB_*dYyD=@ojCxiZbqz zHgx8zrKNrn7e(Jf$Ji=ut)7>JH>e_0k zttH7}JhB+!&PRIBp9<&W>#JVgd6=7y(<-^&#!xEss%{pEcSo2WroBgpau~!;A5nU@ z`7F2vKk~j$oCNpR>;hjZ>6t(lb;hixQ*d^=zeX$AMsQ}4LJq6n2sm+K#|g^s*@GR< z6B(9fen>OBm86Z<&Y6D|#y-XO{3iQZD2ok`8LjF#Ql&Uwn1+b1O4hCIE>@M~=n0rd zDZMYWFfU%QjhQwS;=lea&W)++bGC&Gs9QDao_ugmUlw|n#Ty_S=RggeR@|*SnfYoH zGY=~y%EgA1-n|R-s|n&ArqKoYDqD(5e>1OibZTbyh1$NB$--M< zZFPEx>$_MobDYh-sE;x6u2-`mqX3$UaO&9E`a4IoX z`Axw(%qi__Ff3-Fd&gNayDmf7yB}f2>gvCH69Zy%A5guIFx&X)DrSoBdx?!fP7tq3 zd_R2MVMT4ev&_~P-iLDy&U}`7BZ#rAr%+t|jYEhkj$ehv_n0oB!%KLNr_jPI*I@5^ zv8$Iz_*35{$uL=`MPTXWn40=t01X4a&fuWjhM3ZE^SxI@9`yEsdks#=up-myb9n~1 z*p6JK_cQ$Iee|jWz0Y?jBjX->2?r|mx8tG7j~k~ezAM7FQH)%Xoaz7m`9ipBXFNH) zF_XM>N)@JuG2~OOmwClmKE(fWwGVZDu?1YmT&IfxmHaI$degqqA7eI)ZAJnmb2xmo zm-!STKYTUpvTADBxE{T5v_SKbplar`)ZuSCeieN?h5O$LUsd7=$&u5FE7D7tSywXE z3;Hjg&wOdzUd$)alZRDJ(iM^H0hAJSnm?9!kGl}={KEd6xy;b%O0o_W6ix^L{AgD1 zV%R}UU9kkNw8V8ahU!!%hu30Pe*>hNA=4q-)5Mh zfSk`tXMMw8cyYy4QReMZtgs=0S* zJlnT@PA6Z;)FyW)SBpm;VNhkbbr*dJlE_sF(g;VX57zg*Grml!ex4~~_f_%^{VVdf zVs>}TQ;3=FL$~LTez;4D>D{8p7oN8=*Wb&+{-Nt&@kueVZ>5L8KKV$ErL}NcYHE!;D_8*U`M<6)9olDfziym&QEqhyE=tL@rX9bzIH~qG7n3xPmDZNj z+<$Q-L(0utRh00U$l|8w%O0+V)EWjxW#vv7R|~w>U~6Lx~ z&~mi3mf?>G-6;CI9EOI zp9U8fW{ilQ{H_#PZOjB%YLfn};tI!}r&!(-v-UIZB6fOsU%225s(-|b?ga&5ri)MP z+`Y&KA!d_e#$O*XpM(;dy}wZMm%&!byVR2n5FE{fB^huFvv9lR%kv?9SC;>2{r+S9 z9f_Z6ULt(!-0zo9aSA^|4AbQ}e?EdTO-AdI>fODlakA%yoJpmy*=qOua6iFHa+>$s z%4$(viW6)tWt%z6W*5D!+(X zKg~XIFI`kia9vbQe)mI`HsWXAFrWQ>7h+{)UthiRm!F%BU4M~Az2oxu;CAaz zq#6c%j7!z`UH5T^83P4)_*37s$5HM>I3r`Y9y4O&B)+v%k9!5lHCn5(E!)<+{$<8V z;N^o2$iiLQaZ9YgFkDbbkQ=$KsdpvYo-xz;F+N%Kz}n2;P?+D=fG%J6Ucb-kVnJcv z?IL3;5PPhb#eJS{VEXWrtg3IqQ}J}{e4F?}LkEo03-oHY`T|})=X+$Q^3i#5VToZ} zmWyO%V8N;|GhT)(vhhY^xxrbqID|m6I%NDE#-UBMbZ{-ERGOWJ zhHstfs_#W!bMWQwVv6Q)S4>D??-?gx3D>K3| z^+X19L3wRYet4?x{-{x*3RSOt{LlCQmWuebD}Z>JvO|(Wn#tVH6z{dV|Ib&0u>&TR zY82Oh5BmSTi{bxn%FVVX}*GIZnd) zw}4-lMYvYX71=o1LjWwc5fSM<#?J}%85kciQJEN-NI}=or@Hka)BW?67NtdAb^`{K jWrXp`R$y*0h&eSS;dx$fei5!G%N1T>ZW((Z5BR?TL@#y7 literal 0 HcmV?d00001 diff --git a/data/pokemon_colosseum.mb b/data/mb_colosseum.gba similarity index 100% rename from data/pokemon_colosseum.mb rename to data/mb_colosseum.gba diff --git a/data/ereader_link_data.bin b/data/mb_ereader.gba similarity index 100% rename from data/ereader_link_data.bin rename to data/mb_ereader.gba diff --git a/data/multiboot_berry_glitch_fix.s b/data/multiboot_berry_glitch_fix.s index 7d65c0d4ded2..d0d54d550276 100644 --- a/data/multiboot_berry_glitch_fix.s +++ b/data/multiboot_berry_glitch_fix.s @@ -1,5 +1,5 @@ .section .rodata gMultiBootProgram_BerryGlitchFix_Start:: - .incbin "berry_fix/berry_fix.gba" + .incbin "data/mb_berry_fix.gba" gMultiBootProgram_BerryGlitchFix_End:: diff --git a/data/multiboot_ereader.s b/data/multiboot_ereader.s new file mode 100644 index 000000000000..ab97f727994a --- /dev/null +++ b/data/multiboot_ereader.s @@ -0,0 +1,6 @@ + .section .rodata + + .align 2 +gMultiBootProgram_EReader_Start:: + .incbin "data/mb_ereader.gba" +gMultiBootProgram_EReader_End:: diff --git a/data/multiboot_pokemon_colosseum.s b/data/multiboot_pokemon_colosseum.s index 179f8a067128..a5f894908ad8 100644 --- a/data/multiboot_pokemon_colosseum.s +++ b/data/multiboot_pokemon_colosseum.s @@ -1,5 +1,5 @@ .section .rodata gMultiBootProgram_PokemonColosseum_Start:: - .incbin "data/pokemon_colosseum.mb" + .incbin "data/mb_colosseum.gba" gMultiBootProgram_PokemonColosseum_End:: diff --git a/ld_script.txt b/ld_script.txt index 61f61ab863a7..d68498a8ba54 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -1251,10 +1251,10 @@ SECTIONS { src/libisagbprn.o(.rodata); } =0 - other_data : + multiboot_data : ALIGN(4) { - data/ereader_link_data.o(.rodata); + data/multiboot_ereader.o(.rodata); data/multiboot_berry_glitch_fix.o(.rodata); data/multiboot_pokemon_colosseum.o(.rodata); } =0 diff --git a/ld_script_modern.txt b/ld_script_modern.txt index ac62abe2768a..092ff26c6368 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -111,10 +111,10 @@ SECTIONS { src/libisagbprn.o(.rodata); } =0 - other_data : + multiboot_data : ALIGN(4) { - data/ereader_link_data.o(.rodata); + data/multiboot_ereader.o(.rodata); data/multiboot_berry_glitch_fix.o(.rodata); data/multiboot_pokemon_colosseum.o(.rodata); } =0 diff --git a/src/ereader_screen.c b/src/ereader_screen.c index f98a0247d36e..a22b85babdaf 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -41,8 +41,8 @@ static void Task_EReader(u8); struct EReaderData gEReaderData; -extern const u8 gEReaderLinkData_Start[]; -extern const u8 gEReaderLinkData_End[]; +extern const u8 gMultiBootProgram_EReader_Start[]; +extern const u8 gMultiBootProgram_EReader_End[]; static void EReader_Load(struct EReaderData *eReader, int size, u32 *data) { @@ -397,8 +397,8 @@ static void Task_EReader(u8 taskId) break; case ER_STATE_CONNECTING: AddTextPrinterToWindow1(gJPText_Connecting); - // XXX: This (u32*) cast is discarding the const qualifier from gEReaderLinkData_Start - EReader_Load(&gEReaderData, gEReaderLinkData_End - gEReaderLinkData_Start, (u32*)gEReaderLinkData_Start); + // XXX: This (u32*) cast is discarding the const qualifier from gMultiBootProgram_EReader_Start + EReader_Load(&gEReaderData, gMultiBootProgram_EReader_End - gMultiBootProgram_EReader_Start, (u32*)gMultiBootProgram_EReader_Start); data->state = ER_STATE_TRANSFER; break; case ER_STATE_TRANSFER: From 998900bd1b8394edaeafe7c32debcda62cf06561 Mon Sep 17 00:00:00 2001 From: MCboy <16516292+atasro2@users.noreply.github.com> Date: Fri, 14 Jan 2022 13:37:27 +0330 Subject: [PATCH 509/762] Give sensical names to Unused_AdjustBgMosaic --- gflib/bg.c | 77 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 33 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index c3a4be1d46ba..eb00fa7c79d8 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -776,75 +776,86 @@ void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dis SetBgAffineInternal(bg, srcCenterX, srcCenterY, dispCenterX, dispCenterY, scaleX, scaleY, rotationAngle); } -u8 Unused_AdjustBgMosaic(u8 a1, u8 a2) +enum { - u16 result = GetGpuReg(REG_OFFSET_MOSAIC); - s16 test1 = result & 0xF; - s16 test2 = (result >> 4) & 0xF; + MOSAIC_SET_HV, + MOSAIC_SET_H, + MOSAIC_ADD_H, + MOSAIC_SUB_H, + MOSAIC_SET_V, + MOSAIC_ADD_V, + MOSAIC_SUB_V, +}; - result &= 0xFF00; +u8 Unused_AdjustBgMosaic(u8 val, u8 mode) +{ + u16 mosaic = GetGpuReg(REG_OFFSET_MOSAIC); + s16 bgH = mosaic & 0xF; + s16 bgV = (mosaic >> 4) & 0xF; - switch (a2) + mosaic &= 0xFF00; // clear background mosaic sizes + + switch (mode) { - case 0: + case MOSAIC_SET_HV: default: - test1 = a1 & 0xF; - test2 = a1 >> 0x4; + bgH = val & 0xF; + bgV = val >> 0x4; break; - case 1: - test1 = a1 & 0xF; + case MOSAIC_SET_H: + bgH = val & 0xF; break; - case 2: - if ((test1 + a1) > 0xF) + case MOSAIC_ADD_H: + if ((bgH + val) > 0xF) { - test1 = 0xF; + bgH = 0xF; } else { - test1 += a1; + bgH += val; } break; - case 3: - if ((test1 - a1) < 0) + case MOSAIC_SUB_H: + if ((bgH - val) < 0) { - test1 = 0x0; + bgH = 0x0; } else { - test1 -= a1; + bgH -= val; } break; - case 4: - test2 = a1 & 0xF; + case MOSAIC_SET_V: + bgV = val & 0xF; break; - case 5: - if ((test2 + a1) > 0xF) + case MOSAIC_ADD_V: + if ((bgV + val) > 0xF) { - test2 = 0xF; + bgV = 0xF; } else { - test2 += a1; + bgV += val; } break; - case 6: - if ((test2 - a1) < 0) + case MOSAIC_SUB_V: + if ((bgV - val) < 0) { - test2 = 0x0; + bgV = 0x0; } else { - test2 -= a1; + bgV -= val; } break; } - result |= ((test2 << 0x4) & 0xF0); - result |= (test1 & 0xF); + mosaic |= ((bgV << 0x4) & 0xF0); + mosaic |= (bgH & 0xF); - SetGpuReg(REG_OFFSET_MOSAIC, result); + SetGpuReg(REG_OFFSET_MOSAIC, mosaic); - return result; + return mosaic; } void SetBgTilemapBuffer(u8 bg, void *tilemap) From 1a33187badc9e5530f75be99957bfea9daf3f2ff Mon Sep 17 00:00:00 2001 From: MCboy <16516292+atasro2@users.noreply.github.com> Date: Fri, 14 Jan 2022 13:48:46 +0330 Subject: [PATCH 510/762] Move enum to bg.h --- gflib/bg.c | 25 +++++++------------------ gflib/bg.h | 11 +++++++++++ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index eb00fa7c79d8..c96bcbc233de 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -776,17 +776,6 @@ void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dis SetBgAffineInternal(bg, srcCenterX, srcCenterY, dispCenterX, dispCenterY, scaleX, scaleY, rotationAngle); } -enum -{ - MOSAIC_SET_HV, - MOSAIC_SET_H, - MOSAIC_ADD_H, - MOSAIC_SUB_H, - MOSAIC_SET_V, - MOSAIC_ADD_V, - MOSAIC_SUB_V, -}; - u8 Unused_AdjustBgMosaic(u8 val, u8 mode) { u16 mosaic = GetGpuReg(REG_OFFSET_MOSAIC); @@ -797,15 +786,15 @@ u8 Unused_AdjustBgMosaic(u8 val, u8 mode) switch (mode) { - case MOSAIC_SET_HV: + case BG_MOSAIC_SET_HV: default: bgH = val & 0xF; bgV = val >> 0x4; break; - case MOSAIC_SET_H: + case BG_MOSAIC_SET_H: bgH = val & 0xF; break; - case MOSAIC_ADD_H: + case BG_MOSAIC_ADD_H: if ((bgH + val) > 0xF) { bgH = 0xF; @@ -815,7 +804,7 @@ u8 Unused_AdjustBgMosaic(u8 val, u8 mode) bgH += val; } break; - case MOSAIC_SUB_H: + case BG_MOSAIC_SUB_H: if ((bgH - val) < 0) { bgH = 0x0; @@ -825,10 +814,10 @@ u8 Unused_AdjustBgMosaic(u8 val, u8 mode) bgH -= val; } break; - case MOSAIC_SET_V: + case BG_MOSAIC_SET_V: bgV = val & 0xF; break; - case MOSAIC_ADD_V: + case BG_MOSAIC_ADD_V: if ((bgV + val) > 0xF) { bgV = 0xF; @@ -838,7 +827,7 @@ u8 Unused_AdjustBgMosaic(u8 val, u8 mode) bgV += val; } break; - case MOSAIC_SUB_V: + case BG_MOSAIC_SUB_V: if ((bgV - val) < 0) { bgV = 0x0; diff --git a/gflib/bg.h b/gflib/bg.h index 3a0bf3bf903a..d8b5a540439f 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -28,6 +28,17 @@ enum { BG_COORD_SUB, }; +// Modes for Unused_AdjustBgMosaic +enum { + BG_MOSAIC_SET_HV, + BG_MOSAIC_SET_H, + BG_MOSAIC_ADD_H, + BG_MOSAIC_SUB_H, + BG_MOSAIC_SET_V, + BG_MOSAIC_ADD_V, + BG_MOSAIC_SUB_V, +}; + struct BgTemplate { u16 bg:2; // 0x1, 0x2 -> 0x3 From 4dec9b83a3a0b424284dae02506d159931cc1408 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 14 Jan 2022 12:29:30 -0500 Subject: [PATCH 511/762] Move more graphics out of misc --- decompress.sh | 5 --- .../unused_beauty.png} | Bin .../black.pal} | 0 .../enter.pal} | 0 .../exit.pal} | 0 .../tilemap.bin} | Bin .../tiles.png} | Bin .../white.pal} | 0 .../put_away_cursor.png} | Bin .../diploma_hoenn.pal => diploma/hoenn.pal} | 0 .../national.pal} | 0 .../diploma_map.bin => diploma/tilemap.bin} | Bin .../{misc/diploma.png => diploma/tiles.png} | Bin .../palettes/deoxys_rock_1.pal} | 0 .../palettes/deoxys_rock_10.pal} | 0 .../palettes/deoxys_rock_11.pal} | 0 .../palettes/deoxys_rock_2.pal} | 0 .../palettes/deoxys_rock_3.pal} | 0 .../palettes/deoxys_rock_4.pal} | 0 .../palettes/deoxys_rock_5.pal} | 0 .../palettes/deoxys_rock_6.pal} | 0 .../palettes/deoxys_rock_7.pal} | 0 .../palettes/deoxys_rock_8.pal} | 0 .../palettes/deoxys_rock_9.pal} | 0 .../deoxys_rock_fragment_bottom_left.png | Bin .../deoxys_rock_fragment_bottom_right.png | Bin .../pics}/deoxys_rock_fragment_top_left.png | Bin .../pics}/deoxys_rock_fragment_top_right.png | Bin .../pics}/emotion_exclamation.png | Bin .../pics}/emotion_heart.png | Bin .../pics}/emotion_question.png | Bin .../pics/field_move_streaks.bin} | Bin .../pics}/field_move_streaks.png | Bin .../pics/field_move_streaks_indoors.bin} | Bin .../pics/field_move_streaks_indoors.png} | Bin .../pics}/hof_monitor_big.png | Bin .../pics}/hof_monitor_small.png | Bin .../pics}/pokeball_glow.png | Bin .../pics}/pokecenter_monitor/0.png | Bin .../pics}/pokecenter_monitor/1.png | Bin .../pics}/spotlight.png | Bin graphics/{misc => interface}/main_menu_bg.pal | 0 .../{misc => interface}/main_menu_text.pal | 0 .../option_menu_equals_sign.png | Bin .../{misc => interface}/option_menu_text.pal | 0 .../l1.png} | Bin .../l2.png} | Bin .../l3.png} | Bin .../l4.png} | Bin .../t1.png} | Bin .../t2.png} | Bin .../t3.png} | Bin .../t4.png} | Bin .../ereader.pal} | 0 graphics_file_rules.mk | 2 +- src/decoration.c | 2 +- src/diploma.c | 8 ++-- src/field_effect.c | 39 +++++++++--------- src/field_specials.c | 22 +++++----- src/fldeff_flash.c | 12 +++--- src/main_menu.c | 4 +- src/option_menu.c | 4 +- src/rotating_gate.c | 16 +++---- src/trainer_hill.c | 2 +- src/trainer_see.c | 6 +-- 65 files changed, 59 insertions(+), 63 deletions(-) delete mode 100755 decompress.sh rename graphics/{unused/intro_birch_beauty.png => birch_speech/unused_beauty.png} (100%) rename graphics/{misc/cave_transition_black.pal => cave_transition/black.pal} (100%) rename graphics/{misc/cave_transition_enter.pal => cave_transition/enter.pal} (100%) rename graphics/{misc/cave_transition_exit.pal => cave_transition/exit.pal} (100%) rename graphics/{misc/cave_transition_map.bin => cave_transition/tilemap.bin} (100%) rename graphics/{misc/cave_transition.png => cave_transition/tiles.png} (100%) rename graphics/{misc/cave_transition_white.pal => cave_transition/white.pal} (100%) rename graphics/{misc/decoration_putting_away_cursor.png => decorations/put_away_cursor.png} (100%) rename graphics/{misc/diploma_hoenn.pal => diploma/hoenn.pal} (100%) rename graphics/{misc/diploma_national.pal => diploma/national.pal} (100%) rename graphics/{misc/diploma_map.bin => diploma/tilemap.bin} (100%) rename graphics/{misc/diploma.png => diploma/tiles.png} (100%) rename graphics/{misc/deoxys1.pal => field_effects/palettes/deoxys_rock_1.pal} (100%) rename graphics/{misc/deoxys10.pal => field_effects/palettes/deoxys_rock_10.pal} (100%) rename graphics/{misc/deoxys11.pal => field_effects/palettes/deoxys_rock_11.pal} (100%) rename graphics/{misc/deoxys2.pal => field_effects/palettes/deoxys_rock_2.pal} (100%) rename graphics/{misc/deoxys3.pal => field_effects/palettes/deoxys_rock_3.pal} (100%) rename graphics/{misc/deoxys4.pal => field_effects/palettes/deoxys_rock_4.pal} (100%) rename graphics/{misc/deoxys5.pal => field_effects/palettes/deoxys_rock_5.pal} (100%) rename graphics/{misc/deoxys6.pal => field_effects/palettes/deoxys_rock_6.pal} (100%) rename graphics/{misc/deoxys7.pal => field_effects/palettes/deoxys_rock_7.pal} (100%) rename graphics/{misc/deoxys8.pal => field_effects/palettes/deoxys_rock_8.pal} (100%) rename graphics/{misc/deoxys9.pal => field_effects/palettes/deoxys_rock_9.pal} (100%) rename graphics/{misc => field_effects/pics}/deoxys_rock_fragment_bottom_left.png (100%) rename graphics/{misc => field_effects/pics}/deoxys_rock_fragment_bottom_right.png (100%) rename graphics/{misc => field_effects/pics}/deoxys_rock_fragment_top_left.png (100%) rename graphics/{misc => field_effects/pics}/deoxys_rock_fragment_top_right.png (100%) rename graphics/{misc => field_effects/pics}/emotion_exclamation.png (100%) rename graphics/{misc => field_effects/pics}/emotion_heart.png (100%) rename graphics/{misc => field_effects/pics}/emotion_question.png (100%) rename graphics/{misc/field_move_streaks_map.bin => field_effects/pics/field_move_streaks.bin} (100%) rename graphics/{misc => field_effects/pics}/field_move_streaks.png (100%) rename graphics/{misc/darkness_field_move_streaks_map.bin => field_effects/pics/field_move_streaks_indoors.bin} (100%) rename graphics/{misc/darkness_field_move_streaks.png => field_effects/pics/field_move_streaks_indoors.png} (100%) rename graphics/{misc => field_effects/pics}/hof_monitor_big.png (100%) rename graphics/{misc => field_effects/pics}/hof_monitor_small.png (100%) rename graphics/{misc => field_effects/pics}/pokeball_glow.png (100%) rename graphics/{misc => field_effects/pics}/pokecenter_monitor/0.png (100%) rename graphics/{misc => field_effects/pics}/pokecenter_monitor/1.png (100%) rename graphics/{misc => field_effects/pics}/spotlight.png (100%) rename graphics/{misc => interface}/main_menu_bg.pal (100%) rename graphics/{misc => interface}/main_menu_text.pal (100%) rename graphics/{misc => interface}/option_menu_equals_sign.png (100%) rename graphics/{misc => interface}/option_menu_text.pal (100%) rename graphics/{misc/rotating_gate_1.png => rotating_gates/l1.png} (100%) rename graphics/{misc/rotating_gate_2.png => rotating_gates/l2.png} (100%) rename graphics/{misc/rotating_gate_3.png => rotating_gates/l3.png} (100%) rename graphics/{misc/rotating_gate_4.png => rotating_gates/l4.png} (100%) rename graphics/{misc/rotating_gate_5.png => rotating_gates/t1.png} (100%) rename graphics/{misc/rotating_gate_6.png => rotating_gates/t2.png} (100%) rename graphics/{misc/rotating_gate_7.png => rotating_gates/t3.png} (100%) rename graphics/{misc/rotating_gate_8.png => rotating_gates/t4.png} (100%) rename graphics/{misc/trainer_hill_ereader.pal => trainer_hill/ereader.pal} (100%) diff --git a/decompress.sh b/decompress.sh deleted file mode 100755 index 26b5a0db74d5..000000000000 --- a/decompress.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env bash - -FILEPATH=$1 - -tools/gbagfx/gbagfx graphics/$FILEPATH.bin.lz graphics/$FILEPATH.bin diff --git a/graphics/unused/intro_birch_beauty.png b/graphics/birch_speech/unused_beauty.png similarity index 100% rename from graphics/unused/intro_birch_beauty.png rename to graphics/birch_speech/unused_beauty.png diff --git a/graphics/misc/cave_transition_black.pal b/graphics/cave_transition/black.pal similarity index 100% rename from graphics/misc/cave_transition_black.pal rename to graphics/cave_transition/black.pal diff --git a/graphics/misc/cave_transition_enter.pal b/graphics/cave_transition/enter.pal similarity index 100% rename from graphics/misc/cave_transition_enter.pal rename to graphics/cave_transition/enter.pal diff --git a/graphics/misc/cave_transition_exit.pal b/graphics/cave_transition/exit.pal similarity index 100% rename from graphics/misc/cave_transition_exit.pal rename to graphics/cave_transition/exit.pal diff --git a/graphics/misc/cave_transition_map.bin b/graphics/cave_transition/tilemap.bin similarity index 100% rename from graphics/misc/cave_transition_map.bin rename to graphics/cave_transition/tilemap.bin diff --git a/graphics/misc/cave_transition.png b/graphics/cave_transition/tiles.png similarity index 100% rename from graphics/misc/cave_transition.png rename to graphics/cave_transition/tiles.png diff --git a/graphics/misc/cave_transition_white.pal b/graphics/cave_transition/white.pal similarity index 100% rename from graphics/misc/cave_transition_white.pal rename to graphics/cave_transition/white.pal diff --git a/graphics/misc/decoration_putting_away_cursor.png b/graphics/decorations/put_away_cursor.png similarity index 100% rename from graphics/misc/decoration_putting_away_cursor.png rename to graphics/decorations/put_away_cursor.png diff --git a/graphics/misc/diploma_hoenn.pal b/graphics/diploma/hoenn.pal similarity index 100% rename from graphics/misc/diploma_hoenn.pal rename to graphics/diploma/hoenn.pal diff --git a/graphics/misc/diploma_national.pal b/graphics/diploma/national.pal similarity index 100% rename from graphics/misc/diploma_national.pal rename to graphics/diploma/national.pal diff --git a/graphics/misc/diploma_map.bin b/graphics/diploma/tilemap.bin similarity index 100% rename from graphics/misc/diploma_map.bin rename to graphics/diploma/tilemap.bin diff --git a/graphics/misc/diploma.png b/graphics/diploma/tiles.png similarity index 100% rename from graphics/misc/diploma.png rename to graphics/diploma/tiles.png diff --git a/graphics/misc/deoxys1.pal b/graphics/field_effects/palettes/deoxys_rock_1.pal similarity index 100% rename from graphics/misc/deoxys1.pal rename to graphics/field_effects/palettes/deoxys_rock_1.pal diff --git a/graphics/misc/deoxys10.pal b/graphics/field_effects/palettes/deoxys_rock_10.pal similarity index 100% rename from graphics/misc/deoxys10.pal rename to graphics/field_effects/palettes/deoxys_rock_10.pal diff --git a/graphics/misc/deoxys11.pal b/graphics/field_effects/palettes/deoxys_rock_11.pal similarity index 100% rename from graphics/misc/deoxys11.pal rename to graphics/field_effects/palettes/deoxys_rock_11.pal diff --git a/graphics/misc/deoxys2.pal b/graphics/field_effects/palettes/deoxys_rock_2.pal similarity index 100% rename from graphics/misc/deoxys2.pal rename to graphics/field_effects/palettes/deoxys_rock_2.pal diff --git a/graphics/misc/deoxys3.pal b/graphics/field_effects/palettes/deoxys_rock_3.pal similarity index 100% rename from graphics/misc/deoxys3.pal rename to graphics/field_effects/palettes/deoxys_rock_3.pal diff --git a/graphics/misc/deoxys4.pal b/graphics/field_effects/palettes/deoxys_rock_4.pal similarity index 100% rename from graphics/misc/deoxys4.pal rename to graphics/field_effects/palettes/deoxys_rock_4.pal diff --git a/graphics/misc/deoxys5.pal b/graphics/field_effects/palettes/deoxys_rock_5.pal similarity index 100% rename from graphics/misc/deoxys5.pal rename to graphics/field_effects/palettes/deoxys_rock_5.pal diff --git a/graphics/misc/deoxys6.pal b/graphics/field_effects/palettes/deoxys_rock_6.pal similarity index 100% rename from graphics/misc/deoxys6.pal rename to graphics/field_effects/palettes/deoxys_rock_6.pal diff --git a/graphics/misc/deoxys7.pal b/graphics/field_effects/palettes/deoxys_rock_7.pal similarity index 100% rename from graphics/misc/deoxys7.pal rename to graphics/field_effects/palettes/deoxys_rock_7.pal diff --git a/graphics/misc/deoxys8.pal b/graphics/field_effects/palettes/deoxys_rock_8.pal similarity index 100% rename from graphics/misc/deoxys8.pal rename to graphics/field_effects/palettes/deoxys_rock_8.pal diff --git a/graphics/misc/deoxys9.pal b/graphics/field_effects/palettes/deoxys_rock_9.pal similarity index 100% rename from graphics/misc/deoxys9.pal rename to graphics/field_effects/palettes/deoxys_rock_9.pal diff --git a/graphics/misc/deoxys_rock_fragment_bottom_left.png b/graphics/field_effects/pics/deoxys_rock_fragment_bottom_left.png similarity index 100% rename from graphics/misc/deoxys_rock_fragment_bottom_left.png rename to graphics/field_effects/pics/deoxys_rock_fragment_bottom_left.png diff --git a/graphics/misc/deoxys_rock_fragment_bottom_right.png b/graphics/field_effects/pics/deoxys_rock_fragment_bottom_right.png similarity index 100% rename from graphics/misc/deoxys_rock_fragment_bottom_right.png rename to graphics/field_effects/pics/deoxys_rock_fragment_bottom_right.png diff --git a/graphics/misc/deoxys_rock_fragment_top_left.png b/graphics/field_effects/pics/deoxys_rock_fragment_top_left.png similarity index 100% rename from graphics/misc/deoxys_rock_fragment_top_left.png rename to graphics/field_effects/pics/deoxys_rock_fragment_top_left.png diff --git a/graphics/misc/deoxys_rock_fragment_top_right.png b/graphics/field_effects/pics/deoxys_rock_fragment_top_right.png similarity index 100% rename from graphics/misc/deoxys_rock_fragment_top_right.png rename to graphics/field_effects/pics/deoxys_rock_fragment_top_right.png diff --git a/graphics/misc/emotion_exclamation.png b/graphics/field_effects/pics/emotion_exclamation.png similarity index 100% rename from graphics/misc/emotion_exclamation.png rename to graphics/field_effects/pics/emotion_exclamation.png diff --git a/graphics/misc/emotion_heart.png b/graphics/field_effects/pics/emotion_heart.png similarity index 100% rename from graphics/misc/emotion_heart.png rename to graphics/field_effects/pics/emotion_heart.png diff --git a/graphics/misc/emotion_question.png b/graphics/field_effects/pics/emotion_question.png similarity index 100% rename from graphics/misc/emotion_question.png rename to graphics/field_effects/pics/emotion_question.png diff --git a/graphics/misc/field_move_streaks_map.bin b/graphics/field_effects/pics/field_move_streaks.bin similarity index 100% rename from graphics/misc/field_move_streaks_map.bin rename to graphics/field_effects/pics/field_move_streaks.bin diff --git a/graphics/misc/field_move_streaks.png b/graphics/field_effects/pics/field_move_streaks.png similarity index 100% rename from graphics/misc/field_move_streaks.png rename to graphics/field_effects/pics/field_move_streaks.png diff --git a/graphics/misc/darkness_field_move_streaks_map.bin b/graphics/field_effects/pics/field_move_streaks_indoors.bin similarity index 100% rename from graphics/misc/darkness_field_move_streaks_map.bin rename to graphics/field_effects/pics/field_move_streaks_indoors.bin diff --git a/graphics/misc/darkness_field_move_streaks.png b/graphics/field_effects/pics/field_move_streaks_indoors.png similarity index 100% rename from graphics/misc/darkness_field_move_streaks.png rename to graphics/field_effects/pics/field_move_streaks_indoors.png diff --git a/graphics/misc/hof_monitor_big.png b/graphics/field_effects/pics/hof_monitor_big.png similarity index 100% rename from graphics/misc/hof_monitor_big.png rename to graphics/field_effects/pics/hof_monitor_big.png diff --git a/graphics/misc/hof_monitor_small.png b/graphics/field_effects/pics/hof_monitor_small.png similarity index 100% rename from graphics/misc/hof_monitor_small.png rename to graphics/field_effects/pics/hof_monitor_small.png diff --git a/graphics/misc/pokeball_glow.png b/graphics/field_effects/pics/pokeball_glow.png similarity index 100% rename from graphics/misc/pokeball_glow.png rename to graphics/field_effects/pics/pokeball_glow.png diff --git a/graphics/misc/pokecenter_monitor/0.png b/graphics/field_effects/pics/pokecenter_monitor/0.png similarity index 100% rename from graphics/misc/pokecenter_monitor/0.png rename to graphics/field_effects/pics/pokecenter_monitor/0.png diff --git a/graphics/misc/pokecenter_monitor/1.png b/graphics/field_effects/pics/pokecenter_monitor/1.png similarity index 100% rename from graphics/misc/pokecenter_monitor/1.png rename to graphics/field_effects/pics/pokecenter_monitor/1.png diff --git a/graphics/misc/spotlight.png b/graphics/field_effects/pics/spotlight.png similarity index 100% rename from graphics/misc/spotlight.png rename to graphics/field_effects/pics/spotlight.png diff --git a/graphics/misc/main_menu_bg.pal b/graphics/interface/main_menu_bg.pal similarity index 100% rename from graphics/misc/main_menu_bg.pal rename to graphics/interface/main_menu_bg.pal diff --git a/graphics/misc/main_menu_text.pal b/graphics/interface/main_menu_text.pal similarity index 100% rename from graphics/misc/main_menu_text.pal rename to graphics/interface/main_menu_text.pal diff --git a/graphics/misc/option_menu_equals_sign.png b/graphics/interface/option_menu_equals_sign.png similarity index 100% rename from graphics/misc/option_menu_equals_sign.png rename to graphics/interface/option_menu_equals_sign.png diff --git a/graphics/misc/option_menu_text.pal b/graphics/interface/option_menu_text.pal similarity index 100% rename from graphics/misc/option_menu_text.pal rename to graphics/interface/option_menu_text.pal diff --git a/graphics/misc/rotating_gate_1.png b/graphics/rotating_gates/l1.png similarity index 100% rename from graphics/misc/rotating_gate_1.png rename to graphics/rotating_gates/l1.png diff --git a/graphics/misc/rotating_gate_2.png b/graphics/rotating_gates/l2.png similarity index 100% rename from graphics/misc/rotating_gate_2.png rename to graphics/rotating_gates/l2.png diff --git a/graphics/misc/rotating_gate_3.png b/graphics/rotating_gates/l3.png similarity index 100% rename from graphics/misc/rotating_gate_3.png rename to graphics/rotating_gates/l3.png diff --git a/graphics/misc/rotating_gate_4.png b/graphics/rotating_gates/l4.png similarity index 100% rename from graphics/misc/rotating_gate_4.png rename to graphics/rotating_gates/l4.png diff --git a/graphics/misc/rotating_gate_5.png b/graphics/rotating_gates/t1.png similarity index 100% rename from graphics/misc/rotating_gate_5.png rename to graphics/rotating_gates/t1.png diff --git a/graphics/misc/rotating_gate_6.png b/graphics/rotating_gates/t2.png similarity index 100% rename from graphics/misc/rotating_gate_6.png rename to graphics/rotating_gates/t2.png diff --git a/graphics/misc/rotating_gate_7.png b/graphics/rotating_gates/t3.png similarity index 100% rename from graphics/misc/rotating_gate_7.png rename to graphics/rotating_gates/t3.png diff --git a/graphics/misc/rotating_gate_8.png b/graphics/rotating_gates/t4.png similarity index 100% rename from graphics/misc/rotating_gate_8.png rename to graphics/rotating_gates/t4.png diff --git a/graphics/misc/trainer_hill_ereader.pal b/graphics/trainer_hill/ereader.pal similarity index 100% rename from graphics/misc/trainer_hill_ereader.pal rename to graphics/trainer_hill/ereader.pal diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index cb12b9c18388..9e5c19193028 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -502,7 +502,7 @@ $(SLOTMACHINEGFXDIR)/reel_time_gfx.4bpp: $(SLOTMACHINEGFXDIR)/reel_time_pikachu. $(SLOTMACHINEGFXDIR)/reel_time_machine.4bpp @cat $^ >$@ -$(UNUSEDGFXDIR)/intro_birch_beauty.4bpp: %.4bpp: %.png +graphics/birch_speech/unused_beauty.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 822 diff --git a/src/decoration.c b/src/decoration.c index 118b4918e666..c5a05f7cc1f6 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -440,7 +440,7 @@ static const struct YesNoFuncTable sStopPuttingAwayDecorationsYesNoFunctions = .noFunc = ContinuePuttingAwayDecorations, }; -static const u8 sDecorationPuttingAwayCursor[] = INCBIN_U8("graphics/misc/decoration_putting_away_cursor.4bpp"); +static const u8 sDecorationPuttingAwayCursor[] = INCBIN_U8("graphics/decorations/put_away_cursor.4bpp"); static const struct SpritePalette sSpritePal_PuttingAwayCursorBrendan = { diff --git a/src/diploma.c b/src/diploma.c index 76b4ae65c593..ce31578dcb0e 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -40,12 +40,12 @@ static void VBlankCB(void) static const u16 sDiplomaPalettes[][16] = { - INCBIN_U16("graphics/misc/diploma_national.gbapal"), - INCBIN_U16("graphics/misc/diploma_hoenn.gbapal"), + INCBIN_U16("graphics/diploma/national.gbapal"), + INCBIN_U16("graphics/diploma/hoenn.gbapal"), }; -static const u32 sDiplomaTilemap[] = INCBIN_U32("graphics/misc/diploma_map.bin.lz"); -static const u32 sDiplomaTiles[] = INCBIN_U32("graphics/misc/diploma.4bpp.lz"); +static const u32 sDiplomaTilemap[] = INCBIN_U32("graphics/diploma/tilemap.bin.lz"); +static const u32 sDiplomaTiles[] = INCBIN_U32("graphics/diploma/tiles.4bpp.lz"); void CB2_ShowDiploma(void) { diff --git a/src/field_effect.c b/src/field_effect.c index 3f0ba2455562..446d3cc27516 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -243,32 +243,33 @@ extern u8 *gFieldEffectScriptPointers[]; extern const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[]; static const u32 sNewGameBirch_Gfx[] = INCBIN_U32("graphics/birch_speech/birch.4bpp"); -static const u32 sUnusedBirchBeauty[] = INCBIN_U32("graphics/unused/intro_birch_beauty.4bpp"); +static const u32 sUnusedBirchBeauty[] = INCBIN_U32("graphics/birch_speech/unused_beauty.4bpp"); static const u16 sNewGameBirch_Pal[16] = INCBIN_U16("graphics/birch_speech/birch.gbapal"); -static const u32 sPokeballGlow_Gfx[] = INCBIN_U32("graphics/misc/pokeball_glow.4bpp"); + +static const u32 sPokeballGlow_Gfx[] = INCBIN_U32("graphics/field_effects/pics/pokeball_glow.4bpp"); static const u16 sPokeballGlow_Pal[16] = INCBIN_U16("graphics/field_effects/palettes/pokeball_glow.gbapal"); -static const u32 sPokecenterMonitor0_Gfx[] = INCBIN_U32("graphics/misc/pokecenter_monitor/0.4bpp"); -static const u32 sPokecenterMonitor1_Gfx[] = INCBIN_U32("graphics/misc/pokecenter_monitor/1.4bpp"); -static const u32 sHofMonitorBig_Gfx[] = INCBIN_U32("graphics/misc/hof_monitor_big.4bpp"); -static const u8 sHofMonitorSmall_Gfx[] = INCBIN_U8("graphics/misc/hof_monitor_small.4bpp"); +static const u32 sPokecenterMonitor0_Gfx[] = INCBIN_U32("graphics/field_effects/pics/pokecenter_monitor/0.4bpp"); +static const u32 sPokecenterMonitor1_Gfx[] = INCBIN_U32("graphics/field_effects/pics/pokecenter_monitor/1.4bpp"); +static const u32 sHofMonitorBig_Gfx[] = INCBIN_U32("graphics/field_effects/pics/hof_monitor_big.4bpp"); +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. -static const u32 sFieldMoveStreaksOutdoors_Gfx[] = INCBIN_U32("graphics/misc/field_move_streaks.4bpp"); -static const u16 sFieldMoveStreaksOutdoors_Pal[16] = INCBIN_U16("graphics/misc/field_move_streaks.gbapal"); -static const u16 sFieldMoveStreaksOutdoors_Tilemap[320] = INCBIN_U16("graphics/misc/field_move_streaks_map.bin"); +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"); // The following light streaks effect is used when the map is indoors -static const u32 sFieldMoveStreaksIndoors_Gfx[] = INCBIN_U32("graphics/misc/darkness_field_move_streaks.4bpp"); -static const u16 sFieldMoveStreaksIndoors_Pal[16] = INCBIN_U16("graphics/misc/darkness_field_move_streaks.gbapal"); -static const u16 sFieldMoveStreaksIndoors_Tilemap[320] = INCBIN_U16("graphics/misc/darkness_field_move_streaks_map.bin"); - -static const u16 sSpotlight_Pal[16] = INCBIN_U16("graphics/misc/spotlight.gbapal"); -static const u8 sSpotlight_Gfx[] = INCBIN_U8("graphics/misc/spotlight.4bpp"); -static const u8 sRockFragment_TopLeft[] = INCBIN_U8("graphics/misc/deoxys_rock_fragment_top_left.4bpp"); -static const u8 sRockFragment_TopRight[] = INCBIN_U8("graphics/misc/deoxys_rock_fragment_top_right.4bpp"); -static const u8 sRockFragment_BottomLeft[] = INCBIN_U8("graphics/misc/deoxys_rock_fragment_bottom_left.4bpp"); -static const u8 sRockFragment_BottomRight[] = INCBIN_U8("graphics/misc/deoxys_rock_fragment_bottom_right.4bpp"); +static const u32 sFieldMoveStreaksIndoors_Gfx[] = INCBIN_U32("graphics/field_effects/pics/field_move_streaks_indoors.4bpp"); +static const u16 sFieldMoveStreaksIndoors_Pal[16] = INCBIN_U16("graphics/field_effects/pics/field_move_streaks_indoors.gbapal"); +static const u16 sFieldMoveStreaksIndoors_Tilemap[320] = INCBIN_U16("graphics/field_effects/pics/field_move_streaks_indoors.bin"); + +static const u16 sSpotlight_Pal[16] = INCBIN_U16("graphics/field_effects/pics/spotlight.gbapal"); +static const u8 sSpotlight_Gfx[] = INCBIN_U8("graphics/field_effects/pics/spotlight.4bpp"); +static const u8 sRockFragment_TopLeft[] = INCBIN_U8("graphics/field_effects/pics/deoxys_rock_fragment_top_left.4bpp"); +static const u8 sRockFragment_TopRight[] = INCBIN_U8("graphics/field_effects/pics/deoxys_rock_fragment_top_right.4bpp"); +static const u8 sRockFragment_BottomLeft[] = INCBIN_U8("graphics/field_effects/pics/deoxys_rock_fragment_bottom_left.4bpp"); +static const u8 sRockFragment_BottomRight[] = INCBIN_U8("graphics/field_effects/pics/deoxys_rock_fragment_bottom_right.4bpp"); bool8 (*const gFieldEffectScriptFuncs[])(u8 **, u32 *) = { diff --git a/src/field_specials.c b/src/field_specials.c index 0a72369138fb..45585bcd36a5 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -3194,17 +3194,17 @@ void DoDeoxysRockInteraction(void) } static const u16 sDeoxysRockPalettes[][16] = { - INCBIN_U16("graphics/misc/deoxys1.gbapal"), - INCBIN_U16("graphics/misc/deoxys2.gbapal"), - INCBIN_U16("graphics/misc/deoxys3.gbapal"), - INCBIN_U16("graphics/misc/deoxys4.gbapal"), - INCBIN_U16("graphics/misc/deoxys5.gbapal"), - INCBIN_U16("graphics/misc/deoxys6.gbapal"), - INCBIN_U16("graphics/misc/deoxys7.gbapal"), - INCBIN_U16("graphics/misc/deoxys8.gbapal"), - INCBIN_U16("graphics/misc/deoxys9.gbapal"), - INCBIN_U16("graphics/misc/deoxys10.gbapal"), - INCBIN_U16("graphics/misc/deoxys11.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_1.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_2.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_3.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_4.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_5.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_6.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_7.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_8.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_9.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_10.gbapal"), + INCBIN_U16("graphics/field_effects/palettes/deoxys_rock_11.gbapal"), }; static const u8 sDeoxysRockCoords[][2] = { diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c index 9c166d008554..a303b8423bce 100644 --- a/src/fldeff_flash.c +++ b/src/fldeff_flash.c @@ -61,13 +61,13 @@ static const struct FlashStruct sTransitionTypes[] = {}, }; -static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/misc/cave_transition_white.gbapal"); -static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/misc/cave_transition_black.gbapal"); +static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/cave_transition/white.gbapal"); +static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/cave_transition/black.gbapal"); -static const u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/misc/cave_transition_enter.gbapal"); -static const u16 sCaveTransitionPalette_Exit[] = INCBIN_U16("graphics/misc/cave_transition_exit.gbapal"); -static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/misc/cave_transition_map.bin.lz"); -static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/misc/cave_transition.4bpp.lz"); +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"); bool8 SetUpFieldMove_Flash(void) { diff --git a/src/main_menu.c b/src/main_menu.c index e7802b1e7a92..54a4f68917ea 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -403,8 +403,8 @@ static const struct WindowTemplate gNewGameBirchSpeechTextWindows[] = DUMMY_WIN_TEMPLATE }; -static const u16 sMainMenuBgPal[] = INCBIN_U16("graphics/misc/main_menu_bg.gbapal"); -static const u16 sMainMenuTextPal[] = INCBIN_U16("graphics/misc/main_menu_text.gbapal"); +static const u16 sMainMenuBgPal[] = INCBIN_U16("graphics/interface/main_menu_bg.gbapal"); +static const u16 sMainMenuTextPal[] = INCBIN_U16("graphics/interface/main_menu_text.gbapal"); static const u8 sTextColor_Headers[] = {TEXT_DYNAMIC_COLOR_1, TEXT_DYNAMIC_COLOR_2, TEXT_DYNAMIC_COLOR_3}; static const u8 sTextColor_MenuInfo[] = {TEXT_DYNAMIC_COLOR_1, TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_3}; diff --git a/src/option_menu.c b/src/option_menu.c index e66bddd7f2cf..2991913d7808 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -79,9 +79,9 @@ static void DrawBgWindowFrames(void); EWRAM_DATA static bool8 sArrowPressed = FALSE; -static const u16 sOptionMenuText_Pal[] = INCBIN_U16("graphics/misc/option_menu_text.gbapal"); +static const u16 sOptionMenuText_Pal[] = INCBIN_U16("graphics/interface/option_menu_text.gbapal"); // note: this is only used in the Japanese release -static const u8 sEqualSignGfx[] = INCBIN_U8("graphics/misc/option_menu_equals_sign.4bpp"); +static const u8 sEqualSignGfx[] = INCBIN_U8("graphics/interface/option_menu_equals_sign.4bpp"); static const u8 *const sOptionMenuItemsNames[MENUITEM_COUNT] = { diff --git a/src/rotating_gate.c b/src/rotating_gate.c index 23fbb3e1d6be..78ffcabc9954 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -219,14 +219,14 @@ static const struct RotatingGatePuzzle sRotatingGate_TrickHousePuzzleConfig[] = {10, 19, GATE_SHAPE_L3, GATE_ORIENTATION_180}, }; -static const u8 sRotatingGateTiles_1[] = INCBIN_U8("graphics/misc/rotating_gate_1.4bpp"); -static const u8 sRotatingGateTiles_2[] = INCBIN_U8("graphics/misc/rotating_gate_2.4bpp"); -static const u8 sRotatingGateTiles_3[] = INCBIN_U8("graphics/misc/rotating_gate_3.4bpp"); -static const u8 sRotatingGateTiles_4[] = INCBIN_U8("graphics/misc/rotating_gate_4.4bpp"); -static const u8 sRotatingGateTiles_5[] = INCBIN_U8("graphics/misc/rotating_gate_5.4bpp"); -static const u8 sRotatingGateTiles_6[] = INCBIN_U8("graphics/misc/rotating_gate_6.4bpp"); -static const u8 sRotatingGateTiles_7[] = INCBIN_U8("graphics/misc/rotating_gate_7.4bpp"); -static const u8 sRotatingGateTiles_8[] = INCBIN_U8("graphics/misc/rotating_gate_8.4bpp"); +static const u8 sRotatingGateTiles_1[] = INCBIN_U8("graphics/rotating_gates/l1.4bpp"); +static const u8 sRotatingGateTiles_2[] = INCBIN_U8("graphics/rotating_gates/l2.4bpp"); +static const u8 sRotatingGateTiles_3[] = INCBIN_U8("graphics/rotating_gates/l3.4bpp"); +static const u8 sRotatingGateTiles_4[] = INCBIN_U8("graphics/rotating_gates/l4.4bpp"); +static const u8 sRotatingGateTiles_5[] = INCBIN_U8("graphics/rotating_gates/t1.4bpp"); +static const u8 sRotatingGateTiles_6[] = INCBIN_U8("graphics/rotating_gates/t2.4bpp"); +static const u8 sRotatingGateTiles_7[] = INCBIN_U8("graphics/rotating_gates/t3.4bpp"); +static const u8 sRotatingGateTiles_8[] = INCBIN_U8("graphics/rotating_gates/t4.4bpp"); static const struct OamData sOamData_RotatingGateLarge = { diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 3ada262e56ce..8d5be011606d 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -199,7 +199,7 @@ static const u16 *const *const sPrizeListSets[] = sPrizeLists2 }; -static const u16 sEReader_Pal[] = INCBIN_U16("graphics/misc/trainer_hill_ereader.gbapal"); +static const u16 sEReader_Pal[] = INCBIN_U16("graphics/trainer_hill/ereader.gbapal"); static const u8 sRecordWinColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; static const struct TrHillTag *const sDataPerTag[] = diff --git a/src/trainer_see.c b/src/trainer_see.c index ce06c5e9ce0d..07021a316a71 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -59,9 +59,9 @@ bool8 gTrainerApproachedPlayer; EWRAM_DATA u8 gApproachingTrainerId = 0; // const rom data -static const u8 sEmotion_ExclamationMarkGfx[] = INCBIN_U8("graphics/misc/emotion_exclamation.4bpp"); -static const u8 sEmotion_QuestionMarkGfx[] = INCBIN_U8("graphics/misc/emotion_question.4bpp"); -static const u8 sEmotion_HeartGfx[] = INCBIN_U8("graphics/misc/emotion_heart.4bpp"); +static const u8 sEmotion_ExclamationMarkGfx[] = INCBIN_U8("graphics/field_effects/pics/emotion_exclamation.4bpp"); +static const u8 sEmotion_QuestionMarkGfx[] = INCBIN_U8("graphics/field_effects/pics/emotion_question.4bpp"); +static const u8 sEmotion_HeartGfx[] = INCBIN_U8("graphics/field_effects/pics/emotion_heart.4bpp"); static u8 (*const sDirectionalApproachDistanceFuncs[])(struct ObjectEvent *trainerObj, s16 range, s16 x, s16 y) = { From bd43b905b7ce5489224d3a2144504df6f7687f1f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 14 Jan 2022 12:39:00 -0500 Subject: [PATCH 512/762] Apply palettes to some field effect pngs --- .../pics/deoxys_rock_fragment_bottom_left.png | Bin 100 -> 155 bytes .../pics/deoxys_rock_fragment_bottom_right.png | Bin 91 -> 146 bytes .../pics/deoxys_rock_fragment_top_left.png | Bin 99 -> 157 bytes .../pics/deoxys_rock_fragment_top_right.png | Bin 102 -> 157 bytes .../field_effects/pics/emotion_exclamation.png | Bin 108 -> 166 bytes graphics/field_effects/pics/emotion_heart.png | Bin 126 -> 183 bytes .../field_effects/pics/emotion_question.png | Bin 117 -> 175 bytes graphics/field_effects/pics/hof_monitor_big.png | Bin 184 -> 189 bytes .../field_effects/pics/hof_monitor_small.png | Bin 177 -> 236 bytes graphics/field_effects/pics/pokeball_glow.png | Bin 100 -> 155 bytes src/field_effect.c | 4 ++-- 11 files changed, 2 insertions(+), 2 deletions(-) diff --git a/graphics/field_effects/pics/deoxys_rock_fragment_bottom_left.png b/graphics/field_effects/pics/deoxys_rock_fragment_bottom_left.png index 3f5b8d5c39badd3726117d6f643e9b9950e0259c..bc4f27a40dc7a80e93a4deac028d64ba4cda1092 100644 GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@HuEj@}{69PAe^Ag_1%+k~ zkQ)5p+2>+=pb9ll7sn8enaK$Z%#Mz1Y;LN_jBJjH%C2l~j*89-@+v0|XfT8^Feu71 UcCL@pIt4P*)78&qol`;+0FN{tQ2+n{ delta 81 zcmbQum@+}qn*j(^rtpLTDQ!;|#}JO0qNffrG6)DTAAGytti*x!iIs=Jdqw_+=pbA+}7sn8enaK$bOiT`EGB{LPL>pTc2zBUdFic}&;9bFR`>1DuE66BM LS3j3^P6yrtpLTDJ4%A#}JO0$v^m6cmf{TPWVyI=doueyUM-0wfrL0-{o|; Y84BFw*&VX^gFw1GUHx3vIVCg!0N4{0vj6}9 diff --git a/graphics/field_effects/pics/deoxys_rock_fragment_top_left.png b/graphics/field_effects/pics/deoxys_rock_fragment_top_left.png index d601cb6e5415fdf45257700ec456b17c54d25b44..f0eb9c0cb9b4e0799db3df159f2ade0b439fe82d 100644 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@HuEj@}{69PAe^Ag_1%+k~ zkQ)5p+2>+=pb8C77sn8enaK$WDGW@Cj%;jhsj7@@ipr|aY>BF=&TNhf3|vhd3P6Rq VOiXr%C-8$z^>p=fS?83{1OTU09Q^mdKI;Vst0BjBznE(I) diff --git a/graphics/field_effects/pics/deoxys_rock_fragment_top_right.png b/graphics/field_effects/pics/deoxys_rock_fragment_top_right.png index 01f10cd07bafb67c95fc88af29ec352b012a2dcb..1fac486c904ca4bd22c26ea88e6f6eee51b2f8d2 100644 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@HuEj@}{69PAe^Ag_1%+k~ zkQ)5p+2>+=pb8C77sn8enaK$WA_)lz0zoW-Z9F_Zr`(u$dX9ND@$|GcIfw}~hcYmz WIy2t>yg%?5$W%{PKbLh*2~7Z6J|h|c delta 83 zcmbQsm^MMumjMV=rtpLTDP2z&#}JO0$v^(T|6AYoKmUDWNAZ8je|If^&wF@(=I-|r k|K?V+r|e}u#T5F7ogrei9J}yDS6+|-p00i_>zopr0Dh$*egFUf diff --git a/graphics/field_effects/pics/emotion_exclamation.png b/graphics/field_effects/pics/emotion_exclamation.png index 595566d2fea26b6281516e483fef6bbb92b861c4..798b830923460bebef2921a75a8ddbc1e3955656 100644 GIT binary patch delta 148 zcmc~<#yCN;o|%Dx;qBc=K|snNz$e7D_~?@VSGW8>I_2J!;%Z07|4X)9&8qHp44QKE zTU7U60mGmzOOmRK9W5;-{{R0E)Fhib?>LY$^mK6y;h346(9m3-aNxj!@Bi!t{!{~L yew7b$XMX&bSAYE1zJx7C+)s0cXn}Vk14DmNwEbCmzP=owZU#?RKbLh*2~7Y>YCmiM delta 89 zcmZ3+m@`2#m;ng>XZY>`QpTPxjv*W~lYj8D^89B#_`v?KJ0qJy!j$wMCpd%z7>p$( p3XE7JE=m@}S}aWnJD}TY$;{xtTgAC%lE8Y9F`lk|F6*2UngG>P8rF;XZY>`Qm&pZjv*W~OZzqo9x&iwcJ)?OJMrpD&U4NUoEEY3p7k@c z6gk}TP7-9V+^|GSCo!~hSC#jX`38&HefM7PH8Nt)KO$ar|HeLLorUHlk3B#Jd%F6$ JtaD0e0stgEC`teT diff --git a/graphics/field_effects/pics/emotion_question.png b/graphics/field_effects/pics/emotion_question.png index 7376fd058ef5b3d284631bc224350f76cc076419..4907f14b7f60b82a91cb4dcd6f81fe72e0f61ff7 100644 GIT binary patch delta 157 zcmXS2&p1J{o|%Dx;qBc=K|snNz$e7D_~?@VSGW8>I_2J!;%Z07|4X)9&8qHp44QKE zTU7U60mGmzOOmRK9W5;-{{R0E)Fhib?>LaM@^o`QZ}A0jv*W~lYj8D^89B#_`v?KJ0qJy!j$wMCpd%z7>p$( z6nGc~ToO6BoR+e%N?epIc>6-hK>NY8Lvt7z{2f)C&3KGtLFRe7`njxgN@xNAvWXnY diff --git a/graphics/field_effects/pics/hof_monitor_big.png b/graphics/field_effects/pics/hof_monitor_big.png index 510e6a232d74f5e953b84d1c89f87fcb3dbc0a5b..c70046ad710e9d983bef6949c8df1eacf6d07d10 100644 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!VDxsPNql!DT4r?5LX~=Xz8_P$^Yi+XIV*W zg1oi_c_n@O|G#*RWA$FIDQBaSqNa4uxoT;d1!Ob)XJG&SN*Sof!_&nvL}OxdfKlN= z<~dU(rcCMm$e_G|$=y-Lfo0JFmn>1f4HqQW94NS2FOx9Uz~$ht?-mF2XEfDY99SPH j9N;sfReMD^lPCkj+{W-0zwb>T2QqlN`njxgN@xNAzhpy2 literal 184 zcmeAS@N?(olHy`uVBq!ia0vp^0zmA*0wfqdKXdg4QuUrLjv*Qo*PgfLYA_IBxvFLcr~N5c|HfnTZ&heTQgy!fTK zEM{Ljk)R^Y>Be`@Bk|m``*UaHr2FjJY*etgk3+8RR5SS3j3^P6gd**6ltWrv}Qc7a> z|NnEWL3_PQl+9XVT9k{N)j2t8l+9WI{{RQ~>LUOE0C!15K~xx(RgW%gu9 zgYMo3OnNX!-5h1%XzmUwrC%FgLIN)z$|oWw#~fspZNYi|h*Uwu7(3u65yV3RTfIU} zxRG002ovPDHLkV1i{DTL%CD delta 160 zcmV;R0AK&?0kHv)8Gir(005Vp&x8N~0C-76K~xx(RgW%R0&bU7EX{>5lp)WW4XeQcfemN`YzLC zS{0#}gUB|ODZvscs<1@VE0(~cHGwJ9H+E1##|##9v9F_xl^H{qU;P)ECzKbTG^jZM O0000CJY5_^IA$g%FfdgTe~DWM4fdR~Wfv0N{LlE$%Q-veJv@JR_jAdA i^Y=1~{4SRBU|?i0;+84WPWSu^((dW%=d#Wzp$PzElpL=B diff --git a/src/field_effect.c b/src/field_effect.c index 446d3cc27516..f57ce8cddcae 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -2620,7 +2620,7 @@ static void FieldMoveShowMonOutdoorsEffect_LoadGfx(struct Task *task) u16 delta = ((REG_BG0CNT >> 8) << 11); CpuCopy16(sFieldMoveStreaksOutdoors_Gfx, (void *)(VRAM + offset), 0x200); CpuFill32(0, (void *)(VRAM + delta), 0x800); - LoadPalette(sFieldMoveStreaksOutdoors_Pal, 0xf0, 0x20); + LoadPalette(sFieldMoveStreaksOutdoors_Pal, 0xf0, sizeof(sFieldMoveStreaksOutdoors_Pal)); LoadFieldMoveOutdoorStreaksTilemap(delta); task->tState++; } @@ -2783,7 +2783,7 @@ static void FieldMoveShowMonIndoorsEffect_LoadGfx(struct Task *task) task->data[12] = delta; CpuCopy16(sFieldMoveStreaksIndoors_Gfx, (void *)(VRAM + offset), 0x80); CpuFill32(0, (void *)(VRAM + delta), 0x800); - LoadPalette(sFieldMoveStreaksIndoors_Pal, 0xf0, 0x20); + LoadPalette(sFieldMoveStreaksIndoors_Pal, 0xf0, sizeof(sFieldMoveStreaksIndoors_Pal)); task->tState++; } From 6d6ff9126854d5439fb859a74fbe8db4e4d0f96e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 16 Jan 2022 10:29:15 -0500 Subject: [PATCH 513/762] Allow right single quotation mark in charmap --- charmap.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/charmap.txt b/charmap.txt index 4c01451c8025..2606076784ca 100644 --- a/charmap.txt +++ b/charmap.txt @@ -84,6 +84,7 @@ SUPER_RE = A0 '“' = B1 '”' = B2 'â€' = B3 +'’' = B4 '\'' = B4 '♂' = B5 '♀' = B6 From a4d31da9233f238be28c397d7f83c2028bcdffb7 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sun, 16 Jan 2022 19:22:28 -0300 Subject: [PATCH 514/762] Updated the value of MAX_MAP_DATA_SIZE --- include/fieldmap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/fieldmap.h b/include/fieldmap.h index 28da8da2a35d..aabfce461ecc 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -7,7 +7,7 @@ #define NUM_METATILES_TOTAL 1024 #define NUM_PALS_IN_PRIMARY 6 #define NUM_PALS_TOTAL 13 -#define MAX_MAP_DATA_SIZE 0x2800 +#define MAX_MAP_DATA_SIZE 10240 // Map coordinates are offset by 7 when using the map // buffer because it needs to load sufficient border From 225147a94f8baf30c6e7db7084c5b8663d52ca3c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 17 Jan 2022 13:19:52 -0500 Subject: [PATCH 515/762] Document Spinda spot algorithm --- include/pokemon.h | 5 ++- src/pokemon.c | 84 +++++++++++++++++++++++++++++++++-------------- 2 files changed, 63 insertions(+), 26 deletions(-) diff --git a/include/pokemon.h b/include/pokemon.h index 28460bbe644d..8039a4fdd4ba 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -239,10 +239,13 @@ struct BattleMove u8 flags; }; +#define SPINDA_SPOT_WIDTH 16 +#define SPINDA_SPOT_HEIGHT 16 + struct SpindaSpot { u8 x, y; - u16 image[16]; + u16 image[SPINDA_SPOT_HEIGHT]; }; struct __attribute__((packed)) LevelUpMove diff --git a/src/pokemon.c b/src/pokemon.c index 9476dbb2e7e5..e5d321f5a74f 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1345,10 +1345,10 @@ static const u16 sHoennToNationalOrder[NUM_SPECIES - 1] = const struct SpindaSpot gSpindaSpotGraphics[] = { - {16, 7, INCBIN_U16("graphics/spinda_spots/spot_0.bin")}, - {40, 8, INCBIN_U16("graphics/spinda_spots/spot_1.bin")}, - {22, 25, INCBIN_U16("graphics/spinda_spots/spot_2.bin")}, - {34, 26, INCBIN_U16("graphics/spinda_spots/spot_3.bin")} + {.x = 16, .y = 7, .image = INCBIN_U16("graphics/spinda_spots/spot_0.bin")}, + {.x = 40, .y = 8, .image = INCBIN_U16("graphics/spinda_spots/spot_1.bin")}, + {.x = 22, .y = 25, .image = INCBIN_U16("graphics/spinda_spots/spot_2.bin")}, + {.x = 34, .y = 26, .image = INCBIN_U16("graphics/spinda_spots/spot_3.bin")} }; #include "data/pokemon/item_effects.h" @@ -5653,42 +5653,76 @@ u16 SpeciesToCryId(u16 species) return gSpeciesIdToCryId[species - (SPECIES_TREECKO - 1)]; } -#define DRAW_SPINDA_SPOTS \ +// To draw the spot, add 4 to the color indexes +#define SPOT_COLOR_ADJUSTMENT 4 + +/* + The macro below handles 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. + + The position of each spot is randomized using the Spinda's personality. The entire 32 bit + personality value is used, 4 bits for each coordinate of the 4 spots. If the personality + value is 0x87654321, then 0x1 will be used for the 1st spot's x coord, 0x2 will be used for + the 1st spot's y coord, 0x3 will be used for the 2nd spot's x coord, and so on. Each + 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 + 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: (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 + 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 + (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. +*/ +#define DRAW_SPINDA_SPOTS(personality, dest) \ { \ - int i; \ - for (i = 0; i < 4; i++) \ + s32 i; \ + for (i = 0; i < (s32)ARRAY_COUNT(gSpindaSpotGraphics); i++) \ { \ - int j; \ + s32 row; \ u8 x = gSpindaSpotGraphics[i].x + ((personality & 0x0F) - 8); \ u8 y = gSpindaSpotGraphics[i].y + (((personality & 0xF0) >> 4) - 8); \ \ - for (j = 0; j < 16; j++) \ + for (row = 0; row < SPINDA_SPOT_HEIGHT; row++) \ { \ - int k; \ - s32 row = gSpindaSpotGraphics[i].image[j]; \ + s32 column; \ + s32 spotPixelRow = gSpindaSpotGraphics[i].image[row]; \ \ - for (k = x; k < x + 16; k++) \ + for (column = x; column < x + SPINDA_SPOT_WIDTH; column++) \ { \ - u8 *val = dest + ((k / 8) * 32) + \ - ((k % 8) / 2) + \ - ((y >> 3) << 8) + \ - ((y & 7) << 2); \ + /* Get target pixels on Spinda's sprite */ \ + u8 *destPixels = dest + ((column / 8) * TILE_SIZE_4BPP) + \ + ((column % 8) / 2) + \ + ((y / 8) * TILE_SIZE_4BPP * 8) + \ + ((y % 8) * 4); \ \ - if (row & 1) \ + /* Is this pixel in the 16x16 spot image part of the spot? */ \ + if (spotPixelRow & 1) \ { \ - if (k & 1) \ + /* destPixels addressess two pixels, alternate which */ \ + /* of the two pixels is being considered for drawing */ \ + if (column & 1) \ { \ - if ((u8)((*val & 0xF0) - 0x10) <= 0x20) \ - *val += 0x40; \ + /* Draw spot pixel if this is Spinda's body color */ \ + if ((u8)((*destPixels & 0xF0) - (1 << 4)) <= (2 << 4)) \ + *destPixels += (SPOT_COLOR_ADJUSTMENT << 4); \ } \ else \ { \ - if ((u8)((*val & 0xF) - 0x01) <= 0x02) \ - *val += 0x04; \ + /* Draw spot pixel if this is Spinda's body color */ \ + if ((u8)((*destPixels & 0xF) - 1) <= 2) \ + *destPixels += SPOT_COLOR_ADJUSTMENT; \ } \ } \ \ - row >>= 1; \ + spotPixelRow >>= 1; \ } \ \ y++; \ @@ -5705,13 +5739,13 @@ static void DrawSpindaSpotsUnused(u16 species, u32 personality, u8 *dest) if (species == SPECIES_SPINDA && dest != gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_LEFT] && dest != gMonSpritesGfxPtr->sprites.ptr[B_POSITION_PLAYER_RIGHT]) - DRAW_SPINDA_SPOTS; + DRAW_SPINDA_SPOTS(personality, dest); } void DrawSpindaSpots(u16 species, u32 personality, u8 *dest, bool8 isFrontPic) { if (species == SPECIES_SPINDA && isFrontPic) - DRAW_SPINDA_SPOTS; + DRAW_SPINDA_SPOTS(personality, dest); } void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies) From 177863da4728237c8fef4e6b69417d91d1b003cd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 17 Jan 2022 16:04:02 -0500 Subject: [PATCH 516/762] Fix typo --- src/pokemon.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index e5d321f5a74f..bc83bc58840a 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5670,8 +5670,8 @@ u16 SpeciesToCryId(u16 species) 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 - 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: (colorIndex - 1 <= 2). The -1 excludes + 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: (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 the spot it adds 4 to the color index, so Spinda's spots will be colors 5, 6, and 7. From 313f14ed63f52b6b4371cabe858c5cde5705cc0f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 17 Jan 2022 17:00:18 -0500 Subject: [PATCH 517/762] Add Spinda spot color constants --- src/pokemon.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index bc83bc58840a..902d576f7cbf 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5653,9 +5653,12 @@ u16 SpeciesToCryId(u16 species) return gSpeciesIdToCryId[species - (SPECIES_TREECKO - 1)]; } -// To draw the spot, add 4 to the color indexes -#define SPOT_COLOR_ADJUSTMENT 4 +// Spots can be drawn on Spinda's color indexes 1, 2, or 3 +#define FIRST_SPOT_COLOR 1 +#define LAST_SPOT_COLOR 3 +// 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. Spinda has 4 spots, each with an entry in gSpindaSpotGraphics. Each entry contains @@ -5711,13 +5714,15 @@ u16 SpeciesToCryId(u16 species) if (column & 1) \ { \ /* Draw spot pixel if this is Spinda's body color */ \ - if ((u8)((*destPixels & 0xF0) - (1 << 4)) <= (2 << 4)) \ + if ((u8)((*destPixels & 0xF0) - (FIRST_SPOT_COLOR << 4))\ + <= ((LAST_SPOT_COLOR - FIRST_SPOT_COLOR) << 4))\ *destPixels += (SPOT_COLOR_ADJUSTMENT << 4); \ } \ else \ { \ /* Draw spot pixel if this is Spinda's body color */ \ - if ((u8)((*destPixels & 0xF) - 1) <= 2) \ + if ((u8)((*destPixels & 0xF) - FIRST_SPOT_COLOR) \ + <= (LAST_SPOT_COLOR - FIRST_SPOT_COLOR)) \ *destPixels += SPOT_COLOR_ADJUSTMENT; \ } \ } \ From 30d970441839e8b2473f6962ab9b70f4f8422507 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 17 Jan 2022 17:27:17 -0500 Subject: [PATCH 518/762] Specify unsigned in spot comment --- src/pokemon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pokemon.c b/src/pokemon.c index 902d576f7cbf..08a6fd0f90fc 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5674,7 +5674,7 @@ u16 SpeciesToCryId(u16 species) The macro then 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: (colorIndex - 1 <= 2). The -1 excludes + 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 the spot it adds 4 to the color index, so Spinda's spots will be colors 5, 6, and 7. From f127e64a3ca2899510622f012bc3823da2c5cd23 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 09:37:12 -0500 Subject: [PATCH 519/762] Name overworld tilemaps for their bg, add layer type constants --- common_syms/overworld.txt | 6 +-- include/global.fieldmap.h | 6 +++ include/overworld.h | 8 ++- src/field_camera.c | 102 ++++++++++++++++++-------------------- src/overworld.c | 27 +++++----- 5 files changed, 73 insertions(+), 76 deletions(-) diff --git a/common_syms/overworld.txt b/common_syms/overworld.txt index e136f5444928..dcada0bbefe8 100644 --- a/common_syms/overworld.txt +++ b/common_syms/overworld.txt @@ -1,6 +1,6 @@ -gBGTilemapBuffers1 -gBGTilemapBuffers2 -gBGTilemapBuffers3 +gOverworldTilemapBuffer_Bg2 +gOverworldTilemapBuffer_Bg1 +gOverworldTilemapBuffer_Bg3 gHeldKeyCodeToSend gFieldCallback gFieldCallback2 diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 33be942c8092..2613682fd2df 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -9,6 +9,12 @@ #define METATILE_COLLISION_SHIFT 10 #define METATILE_ELEVATION_MASK 0xF000 +enum { + METATILE_LAYER_TYPE_NORMAL, // Metatile uses middle and top bg layers + METATILE_LAYER_TYPE_COVERED, // Metatile uses bottom and middle bg layers + METATILE_LAYER_TYPE_SPLIT, // Metatile uses bottom and top bg layers +}; + #define METATILE_ID(tileset, name) (METATILE_##tileset##_##name) // Rows of metatiles do not actually have a strict width. diff --git a/include/overworld.h b/include/overworld.h index 04b61f7fd740..b8794ea70fb1 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -40,20 +40,18 @@ struct LinkPlayerObjectEvent u8 movementMode; }; -// Exported RAM declarations extern struct WarpData gLastUsedWarp; extern struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4]; -extern u16 *gBGTilemapBuffers1; -extern u16 *gBGTilemapBuffers2; -extern u16 *gBGTilemapBuffers3; +extern u16 *gOverworldTilemapBuffer_Bg2; +extern u16 *gOverworldTilemapBuffer_Bg1; +extern u16 *gOverworldTilemapBuffer_Bg3; extern u16 gHeldKeyCodeToSend; extern void (*gFieldCallback)(void); extern bool8 (*gFieldCallback2)(void); extern u8 gLocalLinkPlayerId; extern u8 gFieldLinkPlayerCount; -// Exported ROM declarations extern const struct UCoords32 gDirectionToVectors[]; void DoWhiteOut(void); diff --git a/src/field_camera.c b/src/field_camera.c index a36b6883c18e..0a00dcbee9d2 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -14,7 +14,6 @@ EWRAM_DATA bool8 gUnusedBikeCameraAheadPanback = FALSE; -// Static type declarations struct FieldCameraOffset { u8 xPixelOffset; @@ -24,18 +23,16 @@ struct FieldCameraOffset bool8 copyBGToVRAM; }; -// static functions -static void RedrawMapSliceNorth(struct FieldCameraOffset *cameraOffset, const struct MapLayout *mapLayout); -static void RedrawMapSliceSouth(struct FieldCameraOffset *cameraOffset, const struct MapLayout *mapLayout); -static void RedrawMapSliceEast(struct FieldCameraOffset *cameraOffset, const struct MapLayout *mapLayout); -static void RedrawMapSliceWest(struct FieldCameraOffset *cameraOffset, const struct MapLayout *mapLayout); -static s32 MapPosToBgTilemapOffset(struct FieldCameraOffset *a, s32 x, s32 y); -static void DrawWholeMapViewInternal(int x, int y, const struct MapLayout *mapLayout); -static void DrawMetatileAt(const struct MapLayout *mapLayout, u16, int, int); -static void DrawMetatile(s32 a, u16 *b, u16 c); +static void RedrawMapSliceNorth(struct FieldCameraOffset *, const struct MapLayout *); +static void RedrawMapSliceSouth(struct FieldCameraOffset *, const struct MapLayout *); +static void RedrawMapSliceEast(struct FieldCameraOffset *, const struct MapLayout *); +static void RedrawMapSliceWest(struct FieldCameraOffset *, const struct MapLayout *); +static s32 MapPosToBgTilemapOffset(struct FieldCameraOffset *, s32, s32); +static void DrawWholeMapViewInternal(int, int, const struct MapLayout *); +static void DrawMetatileAt(const struct MapLayout *, u16, int, int); +static void DrawMetatile(s32, u16 *, u16); static void CameraPanningCB_PanAhead(void); -// IWRAM bss vars static struct FieldCameraOffset sFieldCameraOffset; static s16 sHorizontalCameraPan; static s16 sVerticalCameraPan; @@ -46,7 +43,6 @@ struct CameraObject gFieldCamera; u16 gTotalCameraPixelOffsetY; u16 gTotalCameraPixelOffsetX; -// text static void ResetCameraOffset(struct FieldCameraOffset *cameraOffset) { cameraOffset->xTileOffset = 0; @@ -222,7 +218,7 @@ void DrawDoorMetatileAt(int x, int y, u16 *arr) if (offset >= 0) { - DrawMetatile(1, arr, offset); + DrawMetatile(METATILE_LAYER_TYPE_COVERED, arr, offset); sFieldCameraOffset.copyBGToVRAM = TRUE; } } @@ -244,66 +240,66 @@ static void DrawMetatileAt(const struct MapLayout *mapLayout, u16 offset, int x, DrawMetatile(MapGridGetMetatileLayerTypeAt(x, y), metatiles + metatileId * 8, offset); } -static void DrawMetatile(s32 metatileLayerType, u16 *metatiles, u16 offset) +static void DrawMetatile(s32 metatileLayerType, u16 *tiles, u16 offset) { switch (metatileLayerType) { - case 2: // LAYER_TYPE_ + case METATILE_LAYER_TYPE_SPLIT: // Draw metatile's bottom layer to the bottom background layer. - gBGTilemapBuffers3[offset] = metatiles[0]; - gBGTilemapBuffers3[offset + 1] = metatiles[1]; - gBGTilemapBuffers3[offset + 0x20] = metatiles[2]; - gBGTilemapBuffers3[offset + 0x21] = metatiles[3]; + gOverworldTilemapBuffer_Bg3[offset] = tiles[0]; + gOverworldTilemapBuffer_Bg3[offset + 1] = tiles[1]; + gOverworldTilemapBuffer_Bg3[offset + 0x20] = tiles[2]; + gOverworldTilemapBuffer_Bg3[offset + 0x21] = tiles[3]; // Draw transparent tiles to the middle background layer. - gBGTilemapBuffers1[offset] = 0; - gBGTilemapBuffers1[offset + 1] = 0; - gBGTilemapBuffers1[offset + 0x20] = 0; - gBGTilemapBuffers1[offset + 0x21] = 0; + gOverworldTilemapBuffer_Bg2[offset] = 0; + gOverworldTilemapBuffer_Bg2[offset + 1] = 0; + gOverworldTilemapBuffer_Bg2[offset + 0x20] = 0; + gOverworldTilemapBuffer_Bg2[offset + 0x21] = 0; // Draw metatile's top layer to the top background layer. - gBGTilemapBuffers2[offset] = metatiles[4]; - gBGTilemapBuffers2[offset + 1] = metatiles[5]; - gBGTilemapBuffers2[offset + 0x20] = metatiles[6]; - gBGTilemapBuffers2[offset + 0x21] = metatiles[7]; + gOverworldTilemapBuffer_Bg1[offset] = tiles[4]; + gOverworldTilemapBuffer_Bg1[offset + 1] = tiles[5]; + gOverworldTilemapBuffer_Bg1[offset + 0x20] = tiles[6]; + gOverworldTilemapBuffer_Bg1[offset + 0x21] = tiles[7]; break; - case 1: // LAYER_TYPE_COVERED_BY_OBJECTS + case METATILE_LAYER_TYPE_COVERED: // Draw metatile's bottom layer to the bottom background layer. - gBGTilemapBuffers3[offset] = metatiles[0]; - gBGTilemapBuffers3[offset + 1] = metatiles[1]; - gBGTilemapBuffers3[offset + 0x20] = metatiles[2]; - gBGTilemapBuffers3[offset + 0x21] = metatiles[3]; + gOverworldTilemapBuffer_Bg3[offset] = tiles[0]; + gOverworldTilemapBuffer_Bg3[offset + 1] = tiles[1]; + gOverworldTilemapBuffer_Bg3[offset + 0x20] = tiles[2]; + gOverworldTilemapBuffer_Bg3[offset + 0x21] = tiles[3]; // Draw metatile's top layer to the middle background layer. - gBGTilemapBuffers1[offset] = metatiles[4]; - gBGTilemapBuffers1[offset + 1] = metatiles[5]; - gBGTilemapBuffers1[offset + 0x20] = metatiles[6]; - gBGTilemapBuffers1[offset + 0x21] = metatiles[7]; + gOverworldTilemapBuffer_Bg2[offset] = tiles[4]; + gOverworldTilemapBuffer_Bg2[offset + 1] = tiles[5]; + gOverworldTilemapBuffer_Bg2[offset + 0x20] = tiles[6]; + gOverworldTilemapBuffer_Bg2[offset + 0x21] = tiles[7]; // Draw transparent tiles to the top background layer. - gBGTilemapBuffers2[offset] = 0; - gBGTilemapBuffers2[offset + 1] = 0; - gBGTilemapBuffers2[offset + 0x20] = 0; - gBGTilemapBuffers2[offset + 0x21] = 0; + gOverworldTilemapBuffer_Bg1[offset] = 0; + gOverworldTilemapBuffer_Bg1[offset + 1] = 0; + gOverworldTilemapBuffer_Bg1[offset + 0x20] = 0; + gOverworldTilemapBuffer_Bg1[offset + 0x21] = 0; break; - case 0: // LAYER_TYPE_NORMAL + case METATILE_LAYER_TYPE_NORMAL: // Draw garbage to the bottom background layer. - gBGTilemapBuffers3[offset] = 0x3014; - gBGTilemapBuffers3[offset + 1] = 0x3014; - gBGTilemapBuffers3[offset + 0x20] = 0x3014; - gBGTilemapBuffers3[offset + 0x21] = 0x3014; + gOverworldTilemapBuffer_Bg3[offset] = 0x3014; + gOverworldTilemapBuffer_Bg3[offset + 1] = 0x3014; + gOverworldTilemapBuffer_Bg3[offset + 0x20] = 0x3014; + gOverworldTilemapBuffer_Bg3[offset + 0x21] = 0x3014; // Draw metatile's bottom layer to the middle background layer. - gBGTilemapBuffers1[offset] = metatiles[0]; - gBGTilemapBuffers1[offset + 1] = metatiles[1]; - gBGTilemapBuffers1[offset + 0x20] = metatiles[2]; - gBGTilemapBuffers1[offset + 0x21] = metatiles[3]; + gOverworldTilemapBuffer_Bg2[offset] = tiles[0]; + gOverworldTilemapBuffer_Bg2[offset + 1] = tiles[1]; + gOverworldTilemapBuffer_Bg2[offset + 0x20] = tiles[2]; + gOverworldTilemapBuffer_Bg2[offset + 0x21] = tiles[3]; // Draw metatile's top layer to the top background layer, which covers object event sprites. - gBGTilemapBuffers2[offset] = metatiles[4]; - gBGTilemapBuffers2[offset + 1] = metatiles[5]; - gBGTilemapBuffers2[offset + 0x20] = metatiles[6]; - gBGTilemapBuffers2[offset + 0x21] = metatiles[7]; + gOverworldTilemapBuffer_Bg1[offset] = tiles[4]; + gOverworldTilemapBuffer_Bg1[offset + 1] = tiles[5]; + gOverworldTilemapBuffer_Bg1[offset + 0x20] = tiles[6]; + gOverworldTilemapBuffer_Bg1[offset + 0x21] = tiles[7]; break; } ScheduleBgCopyTilemapToVram(1); diff --git a/src/overworld.c b/src/overworld.c index 4aa579fdd2b1..a18313d32601 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -183,9 +183,9 @@ static u16 (*sPlayerKeyInterceptCallback)(u32); static bool8 sReceivingFromLink; static u8 sRfuKeepAliveTimer; -u16 *gBGTilemapBuffers1; -u16 *gBGTilemapBuffers2; -u16 *gBGTilemapBuffers3; +u16 *gOverworldTilemapBuffer_Bg2; +u16 *gOverworldTilemapBuffer_Bg1; +u16 *gOverworldTilemapBuffer_Bg3; u16 gHeldKeyCodeToSend; void (*gFieldCallback)(void); bool8 (*gFieldCallback2)(void); @@ -1394,12 +1394,12 @@ static void InitOverworldBgs(void) SetBgAttribute(1, BG_ATTR_MOSAIC, 1); SetBgAttribute(2, BG_ATTR_MOSAIC, 1); SetBgAttribute(3, BG_ATTR_MOSAIC, 1); - gBGTilemapBuffers2 = AllocZeroed(BG_SCREEN_SIZE); - gBGTilemapBuffers1 = AllocZeroed(BG_SCREEN_SIZE); - gBGTilemapBuffers3 = AllocZeroed(BG_SCREEN_SIZE); - SetBgTilemapBuffer(1, gBGTilemapBuffers2); - SetBgTilemapBuffer(2, gBGTilemapBuffers1); - SetBgTilemapBuffer(3, gBGTilemapBuffers3); + gOverworldTilemapBuffer_Bg1 = AllocZeroed(BG_SCREEN_SIZE); + gOverworldTilemapBuffer_Bg2 = AllocZeroed(BG_SCREEN_SIZE); + gOverworldTilemapBuffer_Bg3 = AllocZeroed(BG_SCREEN_SIZE); + SetBgTilemapBuffer(1, gOverworldTilemapBuffer_Bg1); + SetBgTilemapBuffer(2, gOverworldTilemapBuffer_Bg2); + SetBgTilemapBuffer(3, gOverworldTilemapBuffer_Bg3); InitStandardTextBoxWindows(); } @@ -1407,12 +1407,9 @@ void CleanupOverworldWindowsAndTilemaps(void) { ClearMirageTowerPulseBlendEffect(); FreeAllOverworldWindowBuffers(); - if (gBGTilemapBuffers3) - FREE_AND_SET_NULL(gBGTilemapBuffers3); - if (gBGTilemapBuffers1) - FREE_AND_SET_NULL(gBGTilemapBuffers1); - if (gBGTilemapBuffers2) - FREE_AND_SET_NULL(gBGTilemapBuffers2); + TRY_FREE_AND_SET_NULL(gOverworldTilemapBuffer_Bg3); + TRY_FREE_AND_SET_NULL(gOverworldTilemapBuffer_Bg2); + TRY_FREE_AND_SET_NULL(gOverworldTilemapBuffer_Bg1); } static void ResetSafariZoneFlag_(void) From a8b466dc80eb22146c6bc517d44fdc133a646555 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 10:15:32 -0500 Subject: [PATCH 520/762] Disambiguate fieldmap names --- gflib/bg.c | 4 +-- include/fieldmap.h | 2 +- include/global.fieldmap.h | 25 ++++++++++++----- src/battle_pyramid.c | 6 ++--- src/braille_puzzles.c | 12 ++++----- src/decoration.c | 37 +++++++++++++------------- src/field_specials.c | 50 +++++++++++++++++----------------- src/fieldmap.c | 56 +++++++++++++++++++-------------------- src/fldeff_escalator.c | 4 +-- src/fldeff_misc.c | 8 +++--- src/scrcmd.c | 2 +- src/secret_base.c | 16 +++++------ src/trainer_hill.c | 4 +-- src/tv.c | 4 +-- 14 files changed, 120 insertions(+), 110 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index c96bcbc233de..6e97be2073f7 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -1053,7 +1053,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt for (x16 = x; x16 < (x + width); x16++) { CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0); - firstTileNum = (firstTileNum & (METATILE_COLLISION_MASK | METATILE_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & METATILE_ID_MASK); + firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK); } } break; @@ -1064,7 +1064,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt for (x16 = x; x16 < (x + width); x16++) { ((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum; - firstTileNum = (firstTileNum & (METATILE_COLLISION_MASK | METATILE_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & METATILE_ID_MASK); + firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK); } } break; diff --git a/include/fieldmap.h b/include/fieldmap.h index aabfce461ecc..db060497a95c 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -29,7 +29,7 @@ void GetCameraCoords(u16*, u16*); bool8 MapGridIsImpassableAt(int, int); int GetMapBorderIdAt(int x, int y); bool32 CanCameraMoveInDirection(int direction); -u16 GetBehaviorByMetatileId(u16 metatileId); +u16 GetMetatileAttributesById(u16 metatileId); void GetCameraFocusCoords(u16 *x, u16 *y); u8 MapGridGetMetatileLayerTypeAt(int x, int y); u8 MapGridGetZCoordAt(int x, int y); diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 2613682fd2df..46450ed44691 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -1,13 +1,24 @@ #ifndef GUARD_GLOBAL_FIELDMAP_H #define GUARD_GLOBAL_FIELDMAP_H -#define METATILE_BEHAVIOR_MASK 0x00FF -#define METATILE_COLLISION_MASK 0x0C00 -#define METATILE_ID_MASK 0x03FF -#define METATILE_ID_UNDEFINED 0x03FF -#define METATILE_ELEVATION_SHIFT 12 -#define METATILE_COLLISION_SHIFT 10 -#define METATILE_ELEVATION_MASK 0xF000 +// Masks/shifts for blocks in the map grid +// Map grid blocks consist of a 10 bit metatile id, a 2 bit collision value, and a 4 bit elevation value +// This is the data stored in each data/layouts/*/map.bin and border.bin file +#define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 1-10 +#define MAPGRID_COLLISION_MASK 0x0C00 // Bits 11-12 +#define MAPGRID_ELEVATION_MASK 0xF000 // Bits 13-16 +#define MAPGRID_COLLISION_SHIFT 10 +#define MAPGRID_ELEVATION_SHIFT 12 + +// An undefined map grid block has all metatile id bits set and nothing else +#define MAPGRID_UNDEFINED MAPGRID_METATILE_ID_MASK + +// Masks/shifts for metatile attributes +// Metatile attributes consist of an 8 bit behavior value, 4 unused bits, and a 4 bit layer type value +// This is the data stored in each data/tilesets/*/*/metatile_attributes.bin file +#define METATILE_ATTR_BEHAVIOR_MASK 0x00FF // Bits 1-8 +#define METATILE_ATTR_LAYER_MASK 0xF000 // Bits 13-16 +#define METATILE_ATTR_LAYER_SHIFT 12 enum { METATILE_LAYER_TYPE_NORMAL, // Metatile uses middle and top bg layers diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index b10690ce454b..154760396854 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1239,7 +1239,7 @@ static u8 GetPostBattleDirectionHintTextIndex(int *hintType, u8 minDistanceForEx { for (x = 0; x < 32; x++) { - if ((map[x] & METATILE_ID_MASK) == METATILE_BattlePyramid_Exit) + if ((map[x] & MAPGRID_METATILE_ID_MASK) == METATILE_BattlePyramid_Exit) { x += MAP_OFFSET - gObjectEvents[gSelectedObjectEvent].initialCoords.x; y += MAP_OFFSET - gObjectEvents[gSelectedObjectEvent].initialCoords.y; @@ -1545,7 +1545,7 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio { for (x = 0; x < mapLayout->width; x++) { - if ((layoutMap[x] & METATILE_ID_MASK) != METATILE_BattlePyramid_Exit) + if ((layoutMap[x] & MAPGRID_METATILE_ID_MASK) != METATILE_BattlePyramid_Exit) { map[x] = layoutMap[x]; } @@ -1556,7 +1556,7 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio gSaveBlock1Ptr->pos.x = (mapLayout->width * (i % 4)) + x; gSaveBlock1Ptr->pos.y = (mapLayout->height * (i / 4)) + y; } - map[x] = (layoutMap[x] & (METATILE_ELEVATION_MASK | METATILE_COLLISION_MASK)) | METATILE_BattlePyramid_Floor; + map[x] = (layoutMap[x] & (MAPGRID_ELEVATION_MASK | MAPGRID_COLLISION_MASK)) | METATILE_BattlePyramid_Floor; } else { diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index 26caa830d300..876e6b4a7323 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -80,9 +80,9 @@ void DoBrailleDigEffect(void) MapGridSetMetatileIdAt( 9 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); MapGridSetMetatileIdAt(10 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt( 9 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt( 9 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | MAPGRID_COLLISION_MASK); MapGridSetMetatileIdAt(10 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | MAPGRID_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_BRAILLE_DIG); @@ -207,9 +207,9 @@ static void DoBrailleRegirockEffect(void) MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); MapGridSetMetatileIdAt(9 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | MAPGRID_COLLISION_MASK); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | MAPGRID_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED); @@ -246,9 +246,9 @@ static void DoBrailleRegisteelEffect(void) MapGridSetMetatileIdAt(7 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopLeft); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopMid); MapGridSetMetatileIdAt(9 + MAP_OFFSET, 19 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_TopRight); - MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(7 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomLeft | MAPGRID_COLLISION_MASK); MapGridSetMetatileIdAt(8 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomMid); - MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(9 + MAP_OFFSET, 20 + MAP_OFFSET, METATILE_Cave_SealedChamberEntrance_BottomRight | MAPGRID_COLLISION_MASK); DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED); diff --git a/src/decoration.c b/src/decoration.c index 78f6ccb40751..825c86818776 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1185,10 +1185,10 @@ static u16 GetDecorationElevation(u8 decoration, u8 tileIndex) switch (decoration) { case DECOR_STAND: - elevation = sDecorationStandElevations[tileIndex] << METATILE_ELEVATION_SHIFT; + elevation = sDecorationStandElevations[tileIndex] << MAPGRID_ELEVATION_SHIFT; return elevation; case DECOR_SLIDE: - elevation = sDecorationSlideElevation[tileIndex] << METATILE_ELEVATION_SHIFT; + elevation = sDecorationSlideElevation[tileIndex] << MAPGRID_ELEVATION_SHIFT; return elevation; default: return elevation; @@ -1199,7 +1199,7 @@ static void ShowDecorationOnMap_(u16 mapX, u16 mapY, u8 decWidth, u8 decHeight, { u16 i, j; s16 x, y; - u16 behavior; + u16 attributes; u16 impassableFlag; u16 overlapsWall; u16 elevation; @@ -1210,9 +1210,9 @@ static void ShowDecorationOnMap_(u16 mapX, u16 mapY, u8 decWidth, u8 decHeight, for (i = 0; i < decWidth; i++) { x = mapX + i; - behavior = GetBehaviorByMetatileId(NUM_TILES_IN_PRIMARY + gDecorations[decoration].tiles[j * decWidth + i]); - if (MetatileBehavior_IsSecretBaseImpassable(behavior) == TRUE || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (behavior >> METATILE_ELEVATION_SHIFT))) - impassableFlag = METATILE_COLLISION_MASK; + attributes = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + gDecorations[decoration].tiles[j * decWidth + i]); + if (MetatileBehavior_IsSecretBaseImpassable(attributes) == TRUE || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (attributes >> METATILE_ATTR_LAYER_SHIFT))) + impassableFlag = MAPGRID_COLLISION_MASK; else impassableFlag = 0; @@ -1471,17 +1471,16 @@ static void AttemptCancelPlaceDecoration(u8 taskId) DisplayItemMessageOnField(taskId, gStringVar4, CancelDecoratingPrompt); } -// Note: behaviorBy is pre-anded with METATILE_ELEVATION_MASK. -static bool8 IsNonBlockNonElevated(u8 behaviorAt, u16 behaviorBy) +static bool8 IsNonBlockNonElevated(u8 behaviorAt, u16 layerType) { - if (MetatileBehavior_IsBlockDecoration(behaviorAt) != TRUE || behaviorBy != 0) + if (MetatileBehavior_IsBlockDecoration(behaviorAt) != TRUE || layerType != 0) return FALSE; return TRUE; } -static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 behaviorBy) +static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 layerType) { - if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && behaviorBy != 0) + if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && layerType != 0) return FALSE; return TRUE; } @@ -1505,7 +1504,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) u8 i; u8 j; u8 behaviorAt; - u16 behaviorBy; + u16 layerType; u8 mapY; u8 mapX; s16 curY; @@ -1524,11 +1523,11 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) { curX = gTasks[taskId].tCursorX + j; behaviorAt = MapGridGetMetatileBehaviorAt(curX, curY); - behaviorBy = GetBehaviorByMetatileId(NUM_TILES_IN_PRIMARY + decoration->tiles[(mapY - 1 - i) * mapX + j]) & METATILE_ELEVATION_MASK; + layerType = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + decoration->tiles[(mapY - 1 - i) * mapX + j]) & METATILE_ATTR_LAYER_MASK; if (!IsFloorOrBoardAndHole(behaviorAt, decoration)) return FALSE; - if (!IsntInitialPosition(taskId, curX, curY, behaviorBy)) + if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); @@ -1545,11 +1544,11 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) { curX = gTasks[taskId].tCursorX + j; behaviorAt = MapGridGetMetatileBehaviorAt(curX, curY); - behaviorBy = GetBehaviorByMetatileId(NUM_TILES_IN_PRIMARY + decoration->tiles[(mapY - 1 - i) * mapX + j]) & METATILE_ELEVATION_MASK; - if (!MetatileBehavior_IsNormal(behaviorAt) && !IsNonBlockNonElevated(behaviorAt, behaviorBy)) + layerType = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + decoration->tiles[(mapY - 1 - i) * mapX + j]) & METATILE_ATTR_LAYER_MASK; + if (!MetatileBehavior_IsNormal(behaviorAt) && !IsNonBlockNonElevated(behaviorAt, layerType)) return FALSE; - if (!IsntInitialPosition(taskId, curX, curY, behaviorBy)) + if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; if (GetObjectEventIdByXYZ(curX, curY, 0) != OBJECT_EVENTS_COUNT) @@ -1562,11 +1561,11 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) { curX = gTasks[taskId].tCursorX + j; behaviorAt = MapGridGetMetatileBehaviorAt(curX, curY); - behaviorBy = GetBehaviorByMetatileId(NUM_TILES_IN_PRIMARY + decoration->tiles[j]) & METATILE_ELEVATION_MASK; + layerType = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + decoration->tiles[j]) & METATILE_ATTR_LAYER_MASK; if (!MetatileBehavior_IsNormal(behaviorAt) && !MetatileBehavior_IsSecretBaseNorthWall(behaviorAt)) return FALSE; - if (!IsntInitialPosition(taskId, curX, curY, behaviorBy)) + if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); diff --git a/src/field_specials.c b/src/field_specials.c index 0a72369138fb..f676600c0e96 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -650,10 +650,10 @@ void MauvilleGymSetDefaultBarriers(void) MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH2_On); break; case METATILE_MauvilleGym_GreenBeamH3_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH3_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_GreenBeamH4_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamH4_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_RedBeamH1_On: MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH1_Off); @@ -674,37 +674,37 @@ void MauvilleGymSetDefaultBarriers(void) MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH2_On); break; case METATILE_MauvilleGym_RedBeamH3_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH3_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_RedBeamH4_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_GreenBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_GreenBeamV2_On: MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); break; case METATILE_MauvilleGym_RedBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_RedBeamV2_On: MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_FloorTile); break; case METATILE_MauvilleGym_PoleBottom_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV1_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV1_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_FloorTile: if (MapGridGetMetatileIdAt(x, y - 1) == METATILE_MauvilleGym_GreenBeamV1_On) - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV2_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_GreenBeamV2_On | MAPGRID_COLLISION_MASK); else - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV2_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV2_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_PoleBottom_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV1_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamV1_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_PoleTop_Off: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_PoleTop_On: MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleTop_Off); @@ -755,10 +755,10 @@ void MauvilleGymDeactivatePuzzle(void) MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_RedBeamH4_Off); break; case METATILE_MauvilleGym_GreenBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_On | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_RedBeamV1_On: - MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_MauvilleGym_PoleBottom_Off | MAPGRID_COLLISION_MASK); break; case METATILE_MauvilleGym_GreenBeamV2_On: case METATILE_MauvilleGym_RedBeamV2_On: @@ -867,8 +867,8 @@ static void PetalburgGymSetDoorMetatiles(u8 roomNumber, u16 metatileId) } for (i = 0; i < nDoors; i++) { - MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET, metatileId | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET + 1, (metatileId + 8) | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET, metatileId | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET + 1, (metatileId + 8) | MAPGRID_COLLISION_MASK); } DrawWholeMapView(); } @@ -1040,7 +1040,7 @@ static void PCTurnOnEffect_1(s16 isPcTurnedOn, s8 dx, s8 dy) else if (gSpecialVar_0x8004 == PC_LOCATION_MAYS_HOUSE) tileId = METATILE_BrendansMaysHouse_MayPC_On; } - MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | MAPGRID_COLLISION_MASK); } void DoPCTurnOffEffect(void) @@ -1075,7 +1075,7 @@ static void PCTurnOffEffect(void) tileId = METATILE_BrendansMaysHouse_BrendanPC_Off; else if (gSpecialVar_0x8004 == 2) tileId = METATILE_BrendansMaysHouse_MayPC_Off; - MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | MAPGRID_COLLISION_MASK); DrawWholeMapView(); } @@ -1106,13 +1106,13 @@ static void LotteryCornerComputerEffect(struct Task *task) task->data[3] = 0; if (task->data[4] != 0) { - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | MAPGRID_COLLISION_MASK); } else { - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Flash | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Flash | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Flash | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Flash | MAPGRID_COLLISION_MASK); } DrawWholeMapView(); task->data[4] ^= 1; @@ -1124,8 +1124,8 @@ static void LotteryCornerComputerEffect(struct Task *task) void EndLotteryCornerComputerEffect(void) { - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | METATILE_COLLISION_MASK); - MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_Shop_Laptop1_Normal | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(11 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_Shop_Laptop2_Normal | MAPGRID_COLLISION_MASK); DrawWholeMapView(); } @@ -1872,7 +1872,7 @@ static void Task_MoveElevatorWindowLights(u8 taskId) for (y = 0; y < 3; y++) { for (x = 0; x < 3; x++) - MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Ascending[y][data[0] % 3] | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Ascending[y][data[0] % 3] | MAPGRID_COLLISION_MASK); } } // descending @@ -1881,7 +1881,7 @@ static void Task_MoveElevatorWindowLights(u8 taskId) for (y = 0; y < 3; y++) { for (x = 0; x < 3; x++) - MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Descending[y][data[0] % 3] | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET + 1, y + MAP_OFFSET, sElevatorWindowTiles_Descending[y][data[0] % 3] | MAPGRID_COLLISION_MASK); } } DrawWholeMapView(); diff --git a/src/fieldmap.c b/src/fieldmap.c index aff72c4c6816..8be4206e235e 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -43,12 +43,12 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset); static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader); static void LoadSavedMapView(void); -static bool8 SkipCopyingMetatileFromSavedMap(u16* mapMetatilePtr, u16 mapWidth, u8 yMode); +static bool8 SkipCopyingMetatileFromSavedMap(u16* mapBlock, u16 mapWidth, u8 yMode); static struct MapConnection *GetIncomingConnection(u8 direction, int x, int y); static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, struct MapConnection *connection); static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset); -#define MapGridGetBorderTileAt(x, y) ({ \ +#define GetBorderBlockAt(x, y)({ \ u16 block; \ int i; \ u16 *border = gMapHeader.mapLayout->border; \ @@ -56,12 +56,12 @@ static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, i = (x + 1) & 1; \ i += ((y + 1) & 1) * 2; \ \ - block = gMapHeader.mapLayout->border[i] | METATILE_COLLISION_MASK; \ + block = gMapHeader.mapLayout->border[i] | MAPGRID_COLLISION_MASK; \ }) #define AreCoordsWithinMapGridBounds(x, y) (x >= 0 && x < gBackupMapLayout.width && y >= 0 && y < gBackupMapLayout.height) -#define MapGridGetTileAt(x, y) (AreCoordsWithinMapGridBounds(x, y) ? gBackupMapLayout.map[x + gBackupMapLayout.width * y] : MapGridGetBorderTileAt(x, y)) +#define GetMapGridBlockAt(x, y) (AreCoordsWithinMapGridBounds(x, y) ? gBackupMapLayout.map[x + gBackupMapLayout.width * y] : GetBorderBlockAt(x, y)) struct MapHeader const *const GetMapHeaderFromConnection(struct MapConnection *connection) { @@ -87,13 +87,13 @@ void InitMapFromSavedGame(void) void InitBattlePyramidMap(bool8 setPlayerPosition) { - CpuFastFill(METATILE_ID_UNDEFINED << 16 | METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); GenerateBattlePyramidFloorLayout(gBackupMapData, setPlayerPosition); } void InitTrainerHillMap(void) { - CpuFastFill(METATILE_ID_UNDEFINED << 16 | METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); GenerateTrainerHillFloorLayout(gBackupMapData); } @@ -103,7 +103,7 @@ static void InitMapLayoutData(struct MapHeader *mapHeader) int width; int height; mapLayout = mapHeader->mapLayout; - CpuFastFill16(METATILE_ID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); + CpuFastFill16(MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); gBackupMapLayout.map = gBackupMapData; width = mapLayout->width + MAP_OFFSET_W; gBackupMapLayout.width = width; @@ -344,44 +344,44 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead u8 MapGridGetZCoordAt(int x, int y) { - u16 block = MapGridGetTileAt(x, y); + u16 block = GetMapGridBlockAt(x, y); - if (block == METATILE_ID_UNDEFINED) + if (block == MAPGRID_UNDEFINED) return 0; - return block >> METATILE_ELEVATION_SHIFT; + return block >> MAPGRID_ELEVATION_SHIFT; } bool8 MapGridIsImpassableAt(int x, int y) { - u16 block = MapGridGetTileAt(x, y); + u16 block = GetMapGridBlockAt(x, y); - if (block == METATILE_ID_UNDEFINED) + if (block == MAPGRID_UNDEFINED) return TRUE; - return (block & METATILE_COLLISION_MASK) >> METATILE_COLLISION_SHIFT; + return (block & MAPGRID_COLLISION_MASK) >> MAPGRID_COLLISION_SHIFT; } u32 MapGridGetMetatileIdAt(int x, int y) { - u16 block = MapGridGetTileAt(x, y); + u16 block = GetMapGridBlockAt(x, y); - if (block == METATILE_ID_UNDEFINED) - return MapGridGetBorderTileAt(x, y) & METATILE_ID_MASK; + if (block == MAPGRID_UNDEFINED) + return GetBorderBlockAt(x, y) & MAPGRID_METATILE_ID_MASK; - return block & METATILE_ID_MASK; + return block & MAPGRID_METATILE_ID_MASK; } u32 MapGridGetMetatileBehaviorAt(int x, int y) { u16 metatile = MapGridGetMetatileIdAt(x, y); - return GetBehaviorByMetatileId(metatile) & METATILE_BEHAVIOR_MASK; + return GetMetatileAttributesById(metatile) & METATILE_ATTR_BEHAVIOR_MASK; } u8 MapGridGetMetatileLayerTypeAt(int x, int y) { u16 metatile = MapGridGetMetatileIdAt(x, y); - return (GetBehaviorByMetatileId(metatile) & METATILE_ELEVATION_MASK) >> METATILE_ELEVATION_SHIFT; + return (GetMetatileAttributesById(metatile) & METATILE_ATTR_LAYER_MASK) >> METATILE_ATTR_LAYER_SHIFT; } void MapGridSetMetatileIdAt(int x, int y, u16 metatile) @@ -390,7 +390,7 @@ void MapGridSetMetatileIdAt(int x, int y, u16 metatile) if (AreCoordsWithinMapGridBounds(x, y)) { i = x + y * gBackupMapLayout.width; - gBackupMapLayout.map[i] = (gBackupMapLayout.map[i] & METATILE_ELEVATION_MASK) | (metatile & ~METATILE_ELEVATION_MASK); + gBackupMapLayout.map[i] = (gBackupMapLayout.map[i] & MAPGRID_ELEVATION_MASK) | (metatile & ~MAPGRID_ELEVATION_MASK); } } @@ -404,7 +404,7 @@ void MapGridSetMetatileEntryAt(int x, int y, u16 metatile) } } -u16 GetBehaviorByMetatileId(u16 metatile) +u16 GetMetatileAttributesById(u16 metatile) { u16 *attributes; if (metatile < NUM_METATILES_IN_PRIMARY) @@ -565,7 +565,7 @@ static void MoveMapViewToBackup(u8 direction) int GetMapBorderIdAt(int x, int y) { - if (MapGridGetTileAt(x, y) == METATILE_ID_UNDEFINED) + if (GetMapGridBlockAt(x, y) == MAPGRID_UNDEFINED) return CONNECTION_INVALID; if (x >= (gBackupMapLayout.width - (MAP_OFFSET + 1))) @@ -817,23 +817,23 @@ void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable) if (AreCoordsWithinMapGridBounds(x, y)) { if (impassable) - gBackupMapLayout.map[x + gBackupMapLayout.width * y] |= METATILE_COLLISION_MASK; + gBackupMapLayout.map[x + gBackupMapLayout.width * y] |= MAPGRID_COLLISION_MASK; else - gBackupMapLayout.map[x + gBackupMapLayout.width * y] &= ~METATILE_COLLISION_MASK; + gBackupMapLayout.map[x + gBackupMapLayout.width * y] &= ~MAPGRID_COLLISION_MASK; } } -static bool8 SkipCopyingMetatileFromSavedMap(u16* mapMetatilePtr, u16 mapWidth, u8 yMode) +static bool8 SkipCopyingMetatileFromSavedMap(u16* mapBlock, u16 mapWidth, u8 yMode) { if (yMode == 0xFF) return FALSE; if (yMode == 0) - mapMetatilePtr -= mapWidth; + mapBlock -= mapWidth; else - mapMetatilePtr += mapWidth; + mapBlock += mapWidth; - if (IsLargeBreakableDecoration(*mapMetatilePtr & METATILE_ID_MASK, yMode) == TRUE) + if (IsLargeBreakableDecoration(*mapBlock & MAPGRID_METATILE_ID_MASK, yMode) == TRUE) return TRUE; return FALSE; } diff --git a/src/fldeff_escalator.c b/src/fldeff_escalator.c index 769e7356231b..0dc98c319c2a 100644 --- a/src/fldeff_escalator.c +++ b/src/fldeff_escalator.c @@ -126,13 +126,13 @@ static void Task_DrawEscalator(u8 taskId) SetEscalatorMetatile(taskId, sEscalatorMetatiles_1F_1, 0); break; case 2: - SetEscalatorMetatile(taskId, sEscalatorMetatiles_1F_2, METATILE_COLLISION_MASK); + SetEscalatorMetatile(taskId, sEscalatorMetatiles_1F_2, MAPGRID_COLLISION_MASK); break; case 3: SetEscalatorMetatile(taskId, sEscalatorMetatiles_1F_3, 0); break; case 4: - SetEscalatorMetatile(taskId, sEscalatorMetatiles_2F_0, METATILE_COLLISION_MASK); + SetEscalatorMetatile(taskId, sEscalatorMetatiles_2F_0, MAPGRID_COLLISION_MASK); break; case 5: SetEscalatorMetatile(taskId, sEscalatorMetatiles_2F_1, 0); diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index c01babb68adf..4f3f53fa60c5 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -840,9 +840,9 @@ void DoSecretBasePCTurnOffEffect(void) PlaySE(SE_PC_OFF); if (!VarGet(VAR_CURRENT_SECRET_BASE)) - MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_PC | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_PC | MAPGRID_COLLISION_MASK); else - MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_RegisterPC | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_RegisterPC | MAPGRID_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); } @@ -1083,7 +1083,7 @@ static void SpriteCB_SandPillar_BreakTop(struct Sprite *sprite) PlaySE(SE_M_ROCK_THROW); if (MapGridGetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6] - 1) == METATILE_SecretBase_SandOrnament_TopWall) - MapGridSetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6] - 1, METATILE_SecretBase_Wall_TopMid | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6] - 1, METATILE_SecretBase_Wall_TopMid | MAPGRID_COLLISION_MASK); else MapGridSetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6] - 1, METATILE_SecretBase_SandOrnament_BrokenTop); @@ -1103,7 +1103,7 @@ static void SpriteCB_SandPillar_BreakBase(struct Sprite *sprite) } else { - MapGridSetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6], METATILE_SecretBase_SandOrnament_BrokenBase | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(gFieldEffectArguments[5], gFieldEffectArguments[6], METATILE_SecretBase_SandOrnament_BrokenBase | MAPGRID_COLLISION_MASK); CurrentMapDrawMetatileAt(gFieldEffectArguments[5], gFieldEffectArguments[6]); sprite->data[0] = 0; sprite->callback = SpriteCB_SandPillar_End; diff --git a/src/scrcmd.c b/src/scrcmd.c index 2c18cb565e8c..a5a380759eb9 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -2046,7 +2046,7 @@ bool8 ScrCmd_setmetatile(struct ScriptContext *ctx) if (!isImpassable) MapGridSetMetatileIdAt(x, y, tileId); else - MapGridSetMetatileIdAt(x, y, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, tileId | MAPGRID_COLLISION_MASK); return FALSE; } diff --git a/src/secret_base.c b/src/secret_base.c index 8fc97141fce3..9398c4bb2f50 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -305,7 +305,7 @@ static void FindMetatileIdMapCoords(s16 *x, s16 *y, u16 metatileId) { for (i = 0; i < mapLayout->width; i++) { - if ((mapLayout->map[j * mapLayout->width + i] & METATILE_ID_MASK) == metatileId) + if ((mapLayout->map[j * mapLayout->width + i] & MAPGRID_METATILE_ID_MASK) == metatileId) { *x = i; *y = j; @@ -330,7 +330,7 @@ void ToggleSecretBaseEntranceMetatile(void) { if (sSecretBaseEntranceMetatiles[i].closedMetatileId == metatileId) { - MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].openMetatileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].openMetatileId | MAPGRID_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); return; } @@ -341,7 +341,7 @@ void ToggleSecretBaseEntranceMetatile(void) { if (sSecretBaseEntranceMetatiles[i].openMetatileId == metatileId) { - MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].closedMetatileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].closedMetatileId | MAPGRID_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); return; } @@ -396,7 +396,7 @@ void SetOccupiedSecretBaseEntranceMetatiles(struct MapEvents const *events) { if (sSecretBaseEntranceMetatiles[i].closedMetatileId == tile_id) { - MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].openMetatileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, sSecretBaseEntranceMetatiles[i].openMetatileId | MAPGRID_COLLISION_MASK); break; } } @@ -475,7 +475,7 @@ static void EnterNewlyCreatedSecretBase_StartFadeIn(void) FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); x += MAP_OFFSET; y += MAP_OFFSET; - MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_PC | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, METATILE_SecretBase_PC | MAPGRID_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); FadeInFromBlack(); CreateTask(EnterNewlyCreatedSecretBase_WaitFadeIn, 0); @@ -536,13 +536,13 @@ void InitSecretBaseAppearance(bool8 hidePC) { // Another player's secret base. Change PC type to the "Register" PC. FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); - MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_RegisterPC | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_RegisterPC | MAPGRID_COLLISION_MASK); } else if (hidePC == TRUE && VarGet(VAR_SECRET_BASE_INITIALIZED) == 1) { // Change PC to regular ground tile. FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); - MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_Ground | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, METATILE_SecretBase_Ground | MAPGRID_COLLISION_MASK); } } } @@ -838,7 +838,7 @@ static void ClosePlayerSecretBaseEntrance(void) { MapGridSetMetatileIdAt(events->bgEvents[i].x + MAP_OFFSET, events->bgEvents[i].y + MAP_OFFSET, - sSecretBaseEntranceMetatiles[j].closedMetatileId | METATILE_COLLISION_MASK); + sSecretBaseEntranceMetatiles[j].closedMetatileId | MAPGRID_COLLISION_MASK); break; } } diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 3ada262e56ce..bf988b49a360 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -677,9 +677,9 @@ static u16 GetMetatileForFloor(u8 floorId, u32 x, u32 y, u32 stride) // stride i impassable = (sHillData->floors[floorId].display.collisionData[y] >> (15 - x) & 1); metatile = sHillData->floors[floorId].display.metatileData[stride * y + x] + NUM_METATILES_IN_PRIMARY; - elevation = 3 << METATILE_ELEVATION_SHIFT; + elevation = 3 << MAPGRID_ELEVATION_SHIFT; - return ((impassable << METATILE_COLLISION_SHIFT) & METATILE_COLLISION_MASK) | elevation | (metatile & METATILE_ID_MASK); + return ((impassable << MAPGRID_COLLISION_SHIFT) & MAPGRID_COLLISION_MASK) | elevation | (metatile & MAPGRID_METATILE_ID_MASK); } void GenerateTrainerHillFloorLayout(u16 *mapArg) diff --git a/src/tv.c b/src/tv.c index 710b9896810e..b9d064026ccd 100644 --- a/src/tv.c +++ b/src/tv.c @@ -852,7 +852,7 @@ void UpdateTVScreensOnMap(int width, int height) } } -static void SetTVMetatilesOnMap(int width, int height, u16 tileId) +static void SetTVMetatilesOnMap(int width, int height, u16 metatileId) { int x; int y; @@ -862,7 +862,7 @@ static void SetTVMetatilesOnMap(int width, int height, u16 tileId) for (x = 0; x < width; x++) { if (MapGridGetMetatileBehaviorAt(x, y) == MB_TELEVISION) - MapGridSetMetatileIdAt(x, y, tileId | METATILE_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, metatileId | MAPGRID_COLLISION_MASK); } } } From 8200fda14e5cddabcd2a4aaddf4f558cfbf898fb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 10:56:54 -0500 Subject: [PATCH 521/762] Fix decorations metatile attribute names --- include/constants/metatile_behaviors.h | 4 ++-- include/metatile_behavior.h | 2 +- src/decoration.c | 16 ++++++++++------ src/metatile_behavior.c | 18 ++++++++++-------- 4 files changed, 23 insertions(+), 17 deletions(-) diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 5f37713f30b6..1c3d33c00b44 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -179,8 +179,8 @@ #define MB_UNUSED_AF 0xAF #define MB_SECRET_BASE_PC 0xB0 #define MB_SECRET_BASE_REGISTER_PC 0xB1 -#define MB_SECRET_BASE_UNUSED 0xB2 -#define MB_BLOCK_DECORATION 0xB3 +#define MB_SECRET_BASE_OBSTACLE 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 diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index 5895426cf0c2..c2d0d23ee3b4 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -57,7 +57,7 @@ bool8 MetatileBehavior_IsSecretBaseTree(u8); bool8 MetatileBehavior_IsSecretBaseShrub(u8); bool8 MetatileBehavior_IsSecretBasePC(u8); bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8); -bool8 MetatileBehavior_IsBlockDecoration(u8); +bool8 MetatileBehavior_IsSecretBaseTrainerSpot(u8); bool8 MetatileBehavior_IsSecretBaseImpassable(u8); bool8 MetatileBehavior_IsSecretBaseDecorationBase(u8); bool8 MetatileBehavior_IsSecretBasePoster(u8); diff --git a/src/decoration.c b/src/decoration.c index 825c86818776..0448778c39dc 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1211,7 +1211,8 @@ static void ShowDecorationOnMap_(u16 mapX, u16 mapY, u8 decWidth, u8 decHeight, { x = mapX + i; attributes = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + gDecorations[decoration].tiles[j * decWidth + i]); - if (MetatileBehavior_IsSecretBaseImpassable(attributes) == TRUE || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (attributes >> METATILE_ATTR_LAYER_SHIFT))) + if (MetatileBehavior_IsSecretBaseImpassable(attributes & METATILE_ATTR_BEHAVIOR_MASK) == TRUE + || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (attributes >> METATILE_ATTR_LAYER_SHIFT) != METATILE_LAYER_TYPE_NORMAL)) impassableFlag = MAPGRID_COLLISION_MASK; else impassableFlag = 0; @@ -1471,23 +1472,26 @@ static void AttemptCancelPlaceDecoration(u8 taskId) DisplayItemMessageOnField(taskId, gStringVar4, CancelDecoratingPrompt); } -static bool8 IsNonBlockNonElevated(u8 behaviorAt, u16 layerType) +static bool8 IsSecretBaseTrainerSpot(u8 behaviorAt, u16 layerType) { - if (MetatileBehavior_IsBlockDecoration(behaviorAt) != TRUE || layerType != 0) + if (!(MetatileBehavior_IsSecretBaseTrainerSpot(behaviorAt) == TRUE && layerType == METATILE_LAYER_TYPE_NORMAL)) return FALSE; return TRUE; } +// Can't place decoration where the player was standing when they interacted with the PC static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 layerType) { - if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && layerType != 0) + if (x == gTasks[taskId].tInitialX + MAP_OFFSET + && y == gTasks[taskId].tInitialY + MAP_OFFSET + && layerType != METATILE_LAYER_TYPE_NORMAL) return FALSE; return TRUE; } static bool8 IsFloorOrBoardAndHole(u16 behaviorAt, const struct Decoration *decoration) { - if (MetatileBehavior_IsBlockDecoration(behaviorAt) != TRUE) + if (MetatileBehavior_IsSecretBaseTrainerSpot(behaviorAt) != TRUE) { if (decoration->id == DECOR_SOLID_BOARD && MetatileBehavior_IsSecretBaseHole(behaviorAt) == TRUE) return TRUE; @@ -1545,7 +1549,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) curX = gTasks[taskId].tCursorX + j; behaviorAt = MapGridGetMetatileBehaviorAt(curX, curY); layerType = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + decoration->tiles[(mapY - 1 - i) * mapX + j]) & METATILE_ATTR_LAYER_MASK; - if (!MetatileBehavior_IsNormal(behaviorAt) && !IsNonBlockNonElevated(behaviorAt, layerType)) + if (!MetatileBehavior_IsNormal(behaviorAt) && !IsSecretBaseTrainerSpot(behaviorAt, layerType)) return FALSE; if (!IsntInitialPosition(taskId, curX, curY, layerType)) diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 6b58e3f05b5c..452e68cff267 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -188,8 +188,8 @@ static const u8 sTileBitAttributes[] = [MB_UNUSED_AF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_SECRET_BASE_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_SECRET_BASE_REGISTER_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_UNUSED] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BLOCK_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_SECRET_BASE_OBSTACLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), + [MB_SECRET_BASE_TRAINER_SPOT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_SECRET_BASE_DECORATION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), [MB_HOLDS_SMALL_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), [MB_UNUSED_B6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), @@ -687,17 +687,19 @@ bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8 metatileBehavior) return FALSE; } -bool8 Unref_MetatileBehavior_IsSecretBaseUnused_B2(u8 metatileBehavior) +// Used by the rock/grass floor spaces that the secret base trainer is not standing on +bool8 MetatileBehavior_IsSecretBaseObstacle1(u8 metatileBehavior) { - if (metatileBehavior == MB_SECRET_BASE_UNUSED) + if (metatileBehavior == MB_SECRET_BASE_OBSTACLE) return TRUE; else return FALSE; } -bool8 MetatileBehavior_IsBlockDecoration(u8 metatileBehavior) +// Used by the rock/grass floor space that the secret base trainer stands on +bool8 MetatileBehavior_IsSecretBaseTrainerSpot(u8 metatileBehavior) { - if (metatileBehavior == MB_BLOCK_DECORATION) + if (metatileBehavior == MB_SECRET_BASE_TRAINER_SPOT) return TRUE; else return FALSE; @@ -743,9 +745,9 @@ bool8 MetatileBehavior_IsSecretBaseNorthWall(u8 metatileBehavior) return FALSE; } -bool8 Unref_MetatileBehavior_IsSecretBaseUnused_B2_2(u8 metatileBehavior) +bool8 MetatileBehavior_IsSecretBaseObstacle2(u8 metatileBehavior) { - if (metatileBehavior == MB_SECRET_BASE_UNUSED) + if (metatileBehavior == MB_SECRET_BASE_OBSTACLE) return TRUE; else return FALSE; From e3b49604d4d8981c9fa599cbc23874ac61036c9e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 10:59:37 -0500 Subject: [PATCH 522/762] Use metatile layer constants in shop --- src/shop.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/shop.c b/src/shop.c index f41ae315f162..e011c4f629ca 100755 --- a/src/shop.c +++ b/src/shop.c @@ -743,7 +743,7 @@ static void BuyMenuDrawMapBg(void) if (BuyMenuCheckForOverlapWithMenuBg(i, j) == TRUE) metatileLayerType = MapGridGetMetatileLayerTypeAt(x + i, y + j); else - metatileLayerType = 1; + metatileLayerType = METATILE_LAYER_TYPE_COVERED; if (metatile < NUM_METATILES_IN_PRIMARY) { @@ -764,15 +764,15 @@ static void BuyMenuDrawMapMetatile(s16 x, s16 y, const u16 *src, u8 metatileLaye switch (metatileLayerType) { - case 0: + case METATILE_LAYER_TYPE_NORMAL: BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[3], offset1, offset2, src); BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[1], offset1, offset2, src + 4); break; - case 1: + case METATILE_LAYER_TYPE_COVERED: BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[2], offset1, offset2, src); BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[3], offset1, offset2, src + 4); break; - case 2: + case METATILE_LAYER_TYPE_SPLIT: BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[2], offset1, offset2, src); BuyMenuDrawMapMetatileLayer(sShopData->tilemapBuffers[1], offset1, offset2, src + 4); break; @@ -866,7 +866,7 @@ static void BuyMenuDrawObjectEvents(void) static bool8 BuyMenuCheckIfObjectEventOverlapsMenuBg(s16 *object) { - if (!BuyMenuCheckForOverlapWithMenuBg(object[X_COORD], object[Y_COORD] + 2) && object[LAYER_TYPE] != MB_SECRET_BASE_WALL) + if (!BuyMenuCheckForOverlapWithMenuBg(object[X_COORD], object[Y_COORD] + 2) && object[LAYER_TYPE] != METATILE_LAYER_TYPE_COVERED) { return TRUE; } From e682c12519377741bc55fa55c6b9deb963614ed6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 12:39:11 -0500 Subject: [PATCH 523/762] sTileBitAttributes to sparse array, rename MB_UNNUSED_CAVE --- include/constants/metatile_behaviors.h | 5 +- src/metatile_behavior.c | 373 ++++++++----------------- 2 files changed, 128 insertions(+), 250 deletions(-) diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 1c3d33c00b44..97ba01a63a32 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -9,7 +9,7 @@ #define MB_UNUSED_05 0x05 #define MB_DEEP_SAND 0x06 #define MB_SHORT_GRASS 0x07 -#define MB_UNUSED_CAVE 0x08 +#define MB_CAVE 0x08 #define MB_LONG_GRASS_SOUTH_EDGE 0x09 #define MB_NO_RUNNING 0x0A #define MB_INDOOR_ENCOUNTER 0x0B @@ -241,6 +241,9 @@ #define MB_UNUSED_ED 0xED #define MB_UNUSED_EE 0xEE #define MB_UNUSED_EF 0xEF + +#define NUM_METATILE_BEHAVIORS 0xF0 + #define MB_INVALID 0xFF #endif // GUARD_METATILE_BEHAVIORS_H diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 452e68cff267..b38198b9c363 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -2,254 +2,129 @@ #include "metatile_behavior.h" #include "constants/metatile_behaviors.h" -#define TILE_FLAG_ENCOUNTER_TILE 1 -#define TILE_FLAG_SURFABLE 2 - -#define TILE_ATTRIBUTES(unused, surfable, wildEncounter) (((wildEncounter) ? 1 : 0) | ((surfable) ? 2 : 0) | ((unused) ? 4 : 0)) - -// wonder what the third flag is supposed to do -static const u8 sTileBitAttributes[] = -{ - [MB_NORMAL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_WALL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_TALL_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_LONG_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_UNUSED_04] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_05] = TILE_ATTRIBUTES(FALSE, FALSE, TRUE), - [MB_DEEP_SAND] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_SHORT_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_CAVE] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_LONG_GRASS_SOUTH_EDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_NO_RUNNING] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_INDOOR_ENCOUNTER] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_MOUNTAIN_TOP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BATTLE_PYRAMID_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_MOSSDEEP_GYM_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_MT_PYRE_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_POND_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_SEMI_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_WATERFALL] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_SOOTOPOLIS_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_OCEAN_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_PUDDLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SHALLOW_WATER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_SOOTOPOLIS_DEEP_WATER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_NO_SURFACING] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_STAIRS_OUTSIDE_ABANDONED_SHIP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SHOAL_CAVE_ENTRANCE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_1D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_1E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_1F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SAND] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SEAWEED] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_UNUSED_23] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ASHGRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_FOOTPRINTS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE), - [MB_THIN_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_CRACKED_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_HOT_SPRINGS] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_LAVARIDGE_GYM_B1F_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SEAWEED_NO_SURFACING] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE), - [MB_REFLECTION_UNDER_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_2C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_2D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_2E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_2F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_IMPASSABLE_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_NORTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_NORTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_SOUTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_SOUTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_JUMP_EAST] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_JUMP_WEST] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_JUMP_NORTH] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_JUMP_SOUTH] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_JUMP_NORTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_JUMP_NORTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_JUMP_SOUTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_JUMP_SOUTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WALK_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WALK_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WALK_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WALK_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SLIDE_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SLIDE_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SLIDE_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SLIDE_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_TRICK_HOUSE_PUZZLE_8_FLOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_49] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_4A] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_4B] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_4C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_4D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_4E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_4F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_EASTWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_WESTWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_NORTHWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_SOUTHWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_UNUSED_54] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_55] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_56] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_57] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_58] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_59] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5A] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5B] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_5F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_NON_ANIMATED_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_LADDER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_EAST_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WEST_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_NORTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SOUTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_CRACKED_FLOOR_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_AQUA_HIDEOUT_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_LAVARIDGE_GYM_1F_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ANIMATED_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UP_ESCALATOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_DOWN_ESCALATOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_WATER_DOOR] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_WATER_SOUTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_DEEP_SOUTH_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_6F] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE), - [MB_BRIDGE_OVER_OCEAN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_LOW] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_MED] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_HIGH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_VERTICAL_LOG_TOP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_FORTREE_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_79] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BIKE_BRIDGE_OVER_BARRIER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_COUNTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_81] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_82] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_CABLE_BOX_RESULTS_1] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_REGION_MAP] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_TELEVISION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_POKEBLOCK_FEEDER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_88] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SLOT_MACHINE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_ROULETTE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_CLOSED_SOOTOPOLIS_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_TRICK_HOUSE_PUZZLE_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_PETALBURG_GYM_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_RUNNING_SHOES_INSTRUCTION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_QUESTIONNAIRE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_RED_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_RED_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_BROWN_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_YELLOW_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_TREE_LEFT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_SHRUB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_SHRUB_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_BLUE_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_TREE_RIGHT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_9E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_9F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_BERRY_TREE_SOIL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A1] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A3] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A4] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A5] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A7] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_A9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_AF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_REGISTER_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_OBSTACLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_TRAINER_SPOT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_DECORATION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_HOLDS_SMALL_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_B6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_NORTH_WALL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_BALLOON] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_IMPASSABLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_GLITTER_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_JUMP_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_SPIN_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_SOUND_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_BREAKABLE_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_SAND_ORNAMENT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_IMPASSABLE_SOUTH_AND_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_IMPASSABLE_WEST_AND_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_HOLDS_LARGE_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_TV_SHIELD] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_PLAYER_ROOM_PC_ON] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_SECRET_BASE_DECORATION_BASE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SECRET_BASE_POSTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_C8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_C9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_CF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_MUDDY_SLOPE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_BUMPY_SLOPE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_CRACKED_FLOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ISOLATED_VERTICAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_ISOLATED_HORIZONTAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_VERTICAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_HORIZONTAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE), - [MB_UNUSED_D7] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_D8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_D9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_DF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_PICTURE_BOOK_SHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_BOOKSHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_POKEMON_CENTER_BOOKSHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_VASE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_TRASH_CAN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SHOP_SHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_BLUEPRINT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_CABLE_BOX_RESULTS_2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_WIRELESS_BOX_RESULTS] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_TRAINER_HILL_TIMER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_SKY_PILLAR_CLOSED_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_EB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_EC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_ED] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_EE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), - [MB_UNUSED_EF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE), +#define TILE_FLAG_HAS_ENCOUNTERS (1 << 0) +#define TILE_FLAG_SURFABLE (1 << 1) +#define TILE_FLAG_TRAVERSABLE (1 << 2) // Set but never read + +static const u8 sTileBitAttributes[NUM_METATILE_BEHAVIORS] = +{ + [MB_NORMAL] = TILE_FLAG_TRAVERSABLE, + [MB_TALL_GRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_LONG_GRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_UNUSED_05] = TILE_FLAG_HAS_ENCOUNTERS, + [MB_DEEP_SAND] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_SHORT_GRASS] = TILE_FLAG_TRAVERSABLE, + [MB_CAVE] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_LONG_GRASS_SOUTH_EDGE] = TILE_FLAG_TRAVERSABLE, + [MB_NO_RUNNING] = TILE_FLAG_TRAVERSABLE, + [MB_INDOOR_ENCOUNTER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_MOUNTAIN_TOP] = TILE_FLAG_TRAVERSABLE, + [MB_BATTLE_PYRAMID_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_MOSSDEEP_GYM_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_MT_PYRE_HOLE] = TILE_FLAG_TRAVERSABLE, + [MB_POND_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_SEMI_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_WATERFALL] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_SOOTOPOLIS_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_OCEAN_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_PUDDLE] = TILE_FLAG_TRAVERSABLE, + [MB_SHALLOW_WATER] = TILE_FLAG_TRAVERSABLE, + [MB_NO_SURFACING] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_STAIRS_OUTSIDE_ABANDONED_SHIP] = TILE_FLAG_TRAVERSABLE, + [MB_SHOAL_CAVE_ENTRANCE] = TILE_FLAG_TRAVERSABLE, + [MB_ICE] = TILE_FLAG_TRAVERSABLE, + [MB_SAND] = TILE_FLAG_TRAVERSABLE, + [MB_SEAWEED] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_UNUSED_23] = TILE_FLAG_TRAVERSABLE, + [MB_ASHGRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_FOOTPRINTS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_THIN_ICE] = TILE_FLAG_TRAVERSABLE, + [MB_CRACKED_ICE] = TILE_FLAG_TRAVERSABLE, + [MB_HOT_SPRINGS] = TILE_FLAG_TRAVERSABLE, + [MB_LAVARIDGE_GYM_B1F_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_SEAWEED_NO_SURFACING] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_REFLECTION_UNDER_BRIDGE] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_EAST] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_WEST] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_NORTH] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_SOUTH] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_NORTHEAST] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_NORTHWEST] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_SOUTHEAST] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_SOUTHWEST] = TILE_FLAG_TRAVERSABLE, + [MB_JUMP_NORTHEAST] = TILE_FLAG_TRAVERSABLE, + [MB_JUMP_NORTHWEST] = TILE_FLAG_TRAVERSABLE, + [MB_JUMP_SOUTHEAST] = TILE_FLAG_TRAVERSABLE, + [MB_JUMP_SOUTHWEST] = TILE_FLAG_TRAVERSABLE, + [MB_WALK_EAST] = TILE_FLAG_TRAVERSABLE, + [MB_WALK_WEST] = TILE_FLAG_TRAVERSABLE, + [MB_WALK_NORTH] = TILE_FLAG_TRAVERSABLE, + [MB_WALK_SOUTH] = TILE_FLAG_TRAVERSABLE, + [MB_SLIDE_EAST] = TILE_FLAG_TRAVERSABLE, + [MB_SLIDE_WEST] = TILE_FLAG_TRAVERSABLE, + [MB_SLIDE_NORTH] = TILE_FLAG_TRAVERSABLE, + [MB_SLIDE_SOUTH] = TILE_FLAG_TRAVERSABLE, + [MB_TRICK_HOUSE_PUZZLE_8_FLOOR] = TILE_FLAG_TRAVERSABLE, + [MB_UNUSED_49] = TILE_FLAG_TRAVERSABLE, + [MB_UNUSED_4A] = TILE_FLAG_TRAVERSABLE, + [MB_EASTWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_WESTWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_NORTHWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_SOUTHWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_NON_ANIMATED_DOOR] = TILE_FLAG_TRAVERSABLE, + [MB_LADDER] = TILE_FLAG_TRAVERSABLE, + [MB_EAST_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_WEST_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_NORTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_SOUTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_CRACKED_FLOOR_HOLE] = TILE_FLAG_TRAVERSABLE, + [MB_AQUA_HIDEOUT_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_LAVARIDGE_GYM_1F_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_ANIMATED_DOOR] = TILE_FLAG_TRAVERSABLE, + [MB_UP_ESCALATOR] = TILE_FLAG_TRAVERSABLE, + [MB_DOWN_ESCALATOR] = TILE_FLAG_TRAVERSABLE, + [MB_WATER_DOOR] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_WATER_SOUTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_DEEP_SOUTH_WARP] = TILE_FLAG_TRAVERSABLE, + [MB_UNUSED_6F] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, + [MB_BRIDGE_OVER_POND_LOW] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_MED] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_HIGH] = TILE_FLAG_TRAVERSABLE, + [MB_PACIFIDLOG_VERTICAL_LOG_TOP] = TILE_FLAG_TRAVERSABLE, + [MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM] = TILE_FLAG_TRAVERSABLE, + [MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT] = TILE_FLAG_TRAVERSABLE, + [MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT] = TILE_FLAG_TRAVERSABLE, + [MB_FORTREE_BRIDGE] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_FLAG_TRAVERSABLE, + [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_FLAG_TRAVERSABLE, + [MB_UNUSED_BRIDGE] = TILE_FLAG_TRAVERSABLE, + [MB_BIKE_BRIDGE_OVER_BARRIER] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_OBSTACLE] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_TRAINER_SPOT] = TILE_FLAG_TRAVERSABLE, + [MB_HOLDS_SMALL_DECORATION] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_BALLOON] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_IMPASSABLE] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_GLITTER_MAT] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_JUMP_MAT] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_SPIN_MAT] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_SOUND_MAT] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_BREAKABLE_DOOR] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_SOUTH_AND_NORTH] = TILE_FLAG_TRAVERSABLE, + [MB_IMPASSABLE_WEST_AND_EAST] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_HOLE] = TILE_FLAG_TRAVERSABLE, + [MB_HOLDS_LARGE_DECORATION] = TILE_FLAG_TRAVERSABLE, + [MB_SECRET_BASE_TV_SHIELD] = TILE_FLAG_TRAVERSABLE, + [MB_PLAYER_ROOM_PC_ON] = TILE_FLAG_TRAVERSABLE, + [MB_MUDDY_SLOPE] = TILE_FLAG_TRAVERSABLE, + [MB_BUMPY_SLOPE] = TILE_FLAG_TRAVERSABLE, + [MB_CRACKED_FLOOR] = TILE_FLAG_TRAVERSABLE, + [MB_ISOLATED_VERTICAL_RAIL] = TILE_FLAG_TRAVERSABLE, + [MB_ISOLATED_HORIZONTAL_RAIL] = TILE_FLAG_TRAVERSABLE, + [MB_VERTICAL_RAIL] = TILE_FLAG_TRAVERSABLE, + [MB_HORIZONTAL_RAIL] = TILE_FLAG_TRAVERSABLE, }; bool8 MetatileBehavior_IsATile(u8 metatileBehavior) @@ -259,7 +134,7 @@ bool8 MetatileBehavior_IsATile(u8 metatileBehavior) bool8 MetatileBehavior_IsEncounterTile(u8 metatileBehavior) { - if ((sTileBitAttributes[metatileBehavior] & TILE_FLAG_ENCOUNTER_TILE)) + if ((sTileBitAttributes[metatileBehavior] & TILE_FLAG_HAS_ENCOUNTERS)) return TRUE; else return FALSE; From c4f33f2b2bbddaafff817721d9266273ee619162 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 19 Jan 2022 12:54:55 -0500 Subject: [PATCH 524/762] TRAVERSABLE->UNUSED, rename MB_SECRET_BASE_OBSTACLE --- include/constants/metatile_behaviors.h | 2 +- src/metatile_behavior.c | 242 ++++++++++++------------- 2 files changed, 122 insertions(+), 122 deletions(-) diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h index 97ba01a63a32..86f35ce50dbc 100755 --- a/include/constants/metatile_behaviors.h +++ b/include/constants/metatile_behaviors.h @@ -179,7 +179,7 @@ #define MB_UNUSED_AF 0xAF #define MB_SECRET_BASE_PC 0xB0 #define MB_SECRET_BASE_REGISTER_PC 0xB1 -#define MB_SECRET_BASE_OBSTACLE 0xB2 +#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 diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index b38198b9c363..72d3ac632f7e 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -4,127 +4,127 @@ #define TILE_FLAG_HAS_ENCOUNTERS (1 << 0) #define TILE_FLAG_SURFABLE (1 << 1) -#define TILE_FLAG_TRAVERSABLE (1 << 2) // Set but never read +#define TILE_FLAG_UNUSED (1 << 2) // Roughly all of the traversable metatiles. Set but never read static const u8 sTileBitAttributes[NUM_METATILE_BEHAVIORS] = { - [MB_NORMAL] = TILE_FLAG_TRAVERSABLE, - [MB_TALL_GRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_LONG_GRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_NORMAL] = TILE_FLAG_UNUSED, + [MB_TALL_GRASS] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_LONG_GRASS] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, [MB_UNUSED_05] = TILE_FLAG_HAS_ENCOUNTERS, - [MB_DEEP_SAND] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_SHORT_GRASS] = TILE_FLAG_TRAVERSABLE, - [MB_CAVE] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_LONG_GRASS_SOUTH_EDGE] = TILE_FLAG_TRAVERSABLE, - [MB_NO_RUNNING] = TILE_FLAG_TRAVERSABLE, - [MB_INDOOR_ENCOUNTER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_MOUNTAIN_TOP] = TILE_FLAG_TRAVERSABLE, - [MB_BATTLE_PYRAMID_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_MOSSDEEP_GYM_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_MT_PYRE_HOLE] = TILE_FLAG_TRAVERSABLE, - [MB_POND_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_SEMI_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_WATERFALL] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_SOOTOPOLIS_DEEP_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_OCEAN_WATER] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_PUDDLE] = TILE_FLAG_TRAVERSABLE, - [MB_SHALLOW_WATER] = TILE_FLAG_TRAVERSABLE, - [MB_NO_SURFACING] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_STAIRS_OUTSIDE_ABANDONED_SHIP] = TILE_FLAG_TRAVERSABLE, - [MB_SHOAL_CAVE_ENTRANCE] = TILE_FLAG_TRAVERSABLE, - [MB_ICE] = TILE_FLAG_TRAVERSABLE, - [MB_SAND] = TILE_FLAG_TRAVERSABLE, - [MB_SEAWEED] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_UNUSED_23] = TILE_FLAG_TRAVERSABLE, - [MB_ASHGRASS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_FOOTPRINTS] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_THIN_ICE] = TILE_FLAG_TRAVERSABLE, - [MB_CRACKED_ICE] = TILE_FLAG_TRAVERSABLE, - [MB_HOT_SPRINGS] = TILE_FLAG_TRAVERSABLE, - [MB_LAVARIDGE_GYM_B1F_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_SEAWEED_NO_SURFACING] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, - [MB_REFLECTION_UNDER_BRIDGE] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_EAST] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_WEST] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_NORTH] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_SOUTH] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_NORTHEAST] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_NORTHWEST] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_SOUTHEAST] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_SOUTHWEST] = TILE_FLAG_TRAVERSABLE, - [MB_JUMP_NORTHEAST] = TILE_FLAG_TRAVERSABLE, - [MB_JUMP_NORTHWEST] = TILE_FLAG_TRAVERSABLE, - [MB_JUMP_SOUTHEAST] = TILE_FLAG_TRAVERSABLE, - [MB_JUMP_SOUTHWEST] = TILE_FLAG_TRAVERSABLE, - [MB_WALK_EAST] = TILE_FLAG_TRAVERSABLE, - [MB_WALK_WEST] = TILE_FLAG_TRAVERSABLE, - [MB_WALK_NORTH] = TILE_FLAG_TRAVERSABLE, - [MB_WALK_SOUTH] = TILE_FLAG_TRAVERSABLE, - [MB_SLIDE_EAST] = TILE_FLAG_TRAVERSABLE, - [MB_SLIDE_WEST] = TILE_FLAG_TRAVERSABLE, - [MB_SLIDE_NORTH] = TILE_FLAG_TRAVERSABLE, - [MB_SLIDE_SOUTH] = TILE_FLAG_TRAVERSABLE, - [MB_TRICK_HOUSE_PUZZLE_8_FLOOR] = TILE_FLAG_TRAVERSABLE, - [MB_UNUSED_49] = TILE_FLAG_TRAVERSABLE, - [MB_UNUSED_4A] = TILE_FLAG_TRAVERSABLE, - [MB_EASTWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_WESTWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_NORTHWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_SOUTHWARD_CURRENT] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_NON_ANIMATED_DOOR] = TILE_FLAG_TRAVERSABLE, - [MB_LADDER] = TILE_FLAG_TRAVERSABLE, - [MB_EAST_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_WEST_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_NORTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_SOUTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_CRACKED_FLOOR_HOLE] = TILE_FLAG_TRAVERSABLE, - [MB_AQUA_HIDEOUT_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_LAVARIDGE_GYM_1F_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_ANIMATED_DOOR] = TILE_FLAG_TRAVERSABLE, - [MB_UP_ESCALATOR] = TILE_FLAG_TRAVERSABLE, - [MB_DOWN_ESCALATOR] = TILE_FLAG_TRAVERSABLE, - [MB_WATER_DOOR] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_WATER_SOUTH_ARROW_WARP] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_DEEP_SOUTH_WARP] = TILE_FLAG_TRAVERSABLE, - [MB_UNUSED_6F] = TILE_FLAG_TRAVERSABLE | TILE_FLAG_SURFABLE, - [MB_BRIDGE_OVER_POND_LOW] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_MED] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_HIGH] = TILE_FLAG_TRAVERSABLE, - [MB_PACIFIDLOG_VERTICAL_LOG_TOP] = TILE_FLAG_TRAVERSABLE, - [MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM] = TILE_FLAG_TRAVERSABLE, - [MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT] = TILE_FLAG_TRAVERSABLE, - [MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT] = TILE_FLAG_TRAVERSABLE, - [MB_FORTREE_BRIDGE] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_FLAG_TRAVERSABLE, - [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_FLAG_TRAVERSABLE, - [MB_UNUSED_BRIDGE] = TILE_FLAG_TRAVERSABLE, - [MB_BIKE_BRIDGE_OVER_BARRIER] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_OBSTACLE] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_TRAINER_SPOT] = TILE_FLAG_TRAVERSABLE, - [MB_HOLDS_SMALL_DECORATION] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_BALLOON] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_IMPASSABLE] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_GLITTER_MAT] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_JUMP_MAT] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_SPIN_MAT] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_SOUND_MAT] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_BREAKABLE_DOOR] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_SOUTH_AND_NORTH] = TILE_FLAG_TRAVERSABLE, - [MB_IMPASSABLE_WEST_AND_EAST] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_HOLE] = TILE_FLAG_TRAVERSABLE, - [MB_HOLDS_LARGE_DECORATION] = TILE_FLAG_TRAVERSABLE, - [MB_SECRET_BASE_TV_SHIELD] = TILE_FLAG_TRAVERSABLE, - [MB_PLAYER_ROOM_PC_ON] = TILE_FLAG_TRAVERSABLE, - [MB_MUDDY_SLOPE] = TILE_FLAG_TRAVERSABLE, - [MB_BUMPY_SLOPE] = TILE_FLAG_TRAVERSABLE, - [MB_CRACKED_FLOOR] = TILE_FLAG_TRAVERSABLE, - [MB_ISOLATED_VERTICAL_RAIL] = TILE_FLAG_TRAVERSABLE, - [MB_ISOLATED_HORIZONTAL_RAIL] = TILE_FLAG_TRAVERSABLE, - [MB_VERTICAL_RAIL] = TILE_FLAG_TRAVERSABLE, - [MB_HORIZONTAL_RAIL] = TILE_FLAG_TRAVERSABLE, + [MB_DEEP_SAND] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_SHORT_GRASS] = TILE_FLAG_UNUSED, + [MB_CAVE] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_LONG_GRASS_SOUTH_EDGE] = TILE_FLAG_UNUSED, + [MB_NO_RUNNING] = TILE_FLAG_UNUSED, + [MB_INDOOR_ENCOUNTER] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_MOUNTAIN_TOP] = TILE_FLAG_UNUSED, + [MB_BATTLE_PYRAMID_WARP] = TILE_FLAG_UNUSED, + [MB_MOSSDEEP_GYM_WARP] = TILE_FLAG_UNUSED, + [MB_MT_PYRE_HOLE] = TILE_FLAG_UNUSED, + [MB_POND_WATER] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_SEMI_DEEP_WATER] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_DEEP_WATER] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_WATERFALL] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_SOOTOPOLIS_DEEP_WATER] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_OCEAN_WATER] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_PUDDLE] = TILE_FLAG_UNUSED, + [MB_SHALLOW_WATER] = TILE_FLAG_UNUSED, + [MB_NO_SURFACING] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_STAIRS_OUTSIDE_ABANDONED_SHIP] = TILE_FLAG_UNUSED, + [MB_SHOAL_CAVE_ENTRANCE] = TILE_FLAG_UNUSED, + [MB_ICE] = TILE_FLAG_UNUSED, + [MB_SAND] = TILE_FLAG_UNUSED, + [MB_SEAWEED] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_UNUSED_23] = TILE_FLAG_UNUSED, + [MB_ASHGRASS] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_FOOTPRINTS] = TILE_FLAG_UNUSED | TILE_FLAG_HAS_ENCOUNTERS, + [MB_THIN_ICE] = TILE_FLAG_UNUSED, + [MB_CRACKED_ICE] = TILE_FLAG_UNUSED, + [MB_HOT_SPRINGS] = TILE_FLAG_UNUSED, + [MB_LAVARIDGE_GYM_B1F_WARP] = TILE_FLAG_UNUSED, + [MB_SEAWEED_NO_SURFACING] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE | TILE_FLAG_HAS_ENCOUNTERS, + [MB_REFLECTION_UNDER_BRIDGE] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_EAST] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_WEST] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_NORTH] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_SOUTH] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_NORTHEAST] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_NORTHWEST] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_SOUTHEAST] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_SOUTHWEST] = TILE_FLAG_UNUSED, + [MB_JUMP_NORTHEAST] = TILE_FLAG_UNUSED, + [MB_JUMP_NORTHWEST] = TILE_FLAG_UNUSED, + [MB_JUMP_SOUTHEAST] = TILE_FLAG_UNUSED, + [MB_JUMP_SOUTHWEST] = TILE_FLAG_UNUSED, + [MB_WALK_EAST] = TILE_FLAG_UNUSED, + [MB_WALK_WEST] = TILE_FLAG_UNUSED, + [MB_WALK_NORTH] = TILE_FLAG_UNUSED, + [MB_WALK_SOUTH] = TILE_FLAG_UNUSED, + [MB_SLIDE_EAST] = TILE_FLAG_UNUSED, + [MB_SLIDE_WEST] = TILE_FLAG_UNUSED, + [MB_SLIDE_NORTH] = TILE_FLAG_UNUSED, + [MB_SLIDE_SOUTH] = TILE_FLAG_UNUSED, + [MB_TRICK_HOUSE_PUZZLE_8_FLOOR] = TILE_FLAG_UNUSED, + [MB_UNUSED_49] = TILE_FLAG_UNUSED, + [MB_UNUSED_4A] = TILE_FLAG_UNUSED, + [MB_EASTWARD_CURRENT] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_WESTWARD_CURRENT] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_NORTHWARD_CURRENT] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_SOUTHWARD_CURRENT] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_NON_ANIMATED_DOOR] = TILE_FLAG_UNUSED, + [MB_LADDER] = TILE_FLAG_UNUSED, + [MB_EAST_ARROW_WARP] = TILE_FLAG_UNUSED, + [MB_WEST_ARROW_WARP] = TILE_FLAG_UNUSED, + [MB_NORTH_ARROW_WARP] = TILE_FLAG_UNUSED, + [MB_SOUTH_ARROW_WARP] = TILE_FLAG_UNUSED, + [MB_CRACKED_FLOOR_HOLE] = TILE_FLAG_UNUSED, + [MB_AQUA_HIDEOUT_WARP] = TILE_FLAG_UNUSED, + [MB_LAVARIDGE_GYM_1F_WARP] = TILE_FLAG_UNUSED, + [MB_ANIMATED_DOOR] = TILE_FLAG_UNUSED, + [MB_UP_ESCALATOR] = TILE_FLAG_UNUSED, + [MB_DOWN_ESCALATOR] = TILE_FLAG_UNUSED, + [MB_WATER_DOOR] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_WATER_SOUTH_ARROW_WARP] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_DEEP_SOUTH_WARP] = TILE_FLAG_UNUSED, + [MB_UNUSED_6F] = TILE_FLAG_UNUSED | TILE_FLAG_SURFABLE, + [MB_BRIDGE_OVER_POND_LOW] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_MED] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_HIGH] = TILE_FLAG_UNUSED, + [MB_PACIFIDLOG_VERTICAL_LOG_TOP] = TILE_FLAG_UNUSED, + [MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM] = TILE_FLAG_UNUSED, + [MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT] = TILE_FLAG_UNUSED, + [MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT] = TILE_FLAG_UNUSED, + [MB_FORTREE_BRIDGE] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_MED_EDGE_1] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_MED_EDGE_2] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_HIGH_EDGE_1] = TILE_FLAG_UNUSED, + [MB_BRIDGE_OVER_POND_HIGH_EDGE_2] = TILE_FLAG_UNUSED, + [MB_UNUSED_BRIDGE] = TILE_FLAG_UNUSED, + [MB_BIKE_BRIDGE_OVER_BARRIER] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_SCENERY] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_TRAINER_SPOT] = TILE_FLAG_UNUSED, + [MB_HOLDS_SMALL_DECORATION] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_BALLOON] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_IMPASSABLE] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_GLITTER_MAT] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_JUMP_MAT] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_SPIN_MAT] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_SOUND_MAT] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_BREAKABLE_DOOR] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_SOUTH_AND_NORTH] = TILE_FLAG_UNUSED, + [MB_IMPASSABLE_WEST_AND_EAST] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_HOLE] = TILE_FLAG_UNUSED, + [MB_HOLDS_LARGE_DECORATION] = TILE_FLAG_UNUSED, + [MB_SECRET_BASE_TV_SHIELD] = TILE_FLAG_UNUSED, + [MB_PLAYER_ROOM_PC_ON] = TILE_FLAG_UNUSED, + [MB_MUDDY_SLOPE] = TILE_FLAG_UNUSED, + [MB_BUMPY_SLOPE] = TILE_FLAG_UNUSED, + [MB_CRACKED_FLOOR] = TILE_FLAG_UNUSED, + [MB_ISOLATED_VERTICAL_RAIL] = TILE_FLAG_UNUSED, + [MB_ISOLATED_HORIZONTAL_RAIL] = TILE_FLAG_UNUSED, + [MB_VERTICAL_RAIL] = TILE_FLAG_UNUSED, + [MB_HORIZONTAL_RAIL] = TILE_FLAG_UNUSED, }; bool8 MetatileBehavior_IsATile(u8 metatileBehavior) @@ -563,9 +563,9 @@ bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8 metatileBehavior) } // Used by the rock/grass floor spaces that the secret base trainer is not standing on -bool8 MetatileBehavior_IsSecretBaseObstacle1(u8 metatileBehavior) +bool8 MetatileBehavior_IsSecretBaseScenery1(u8 metatileBehavior) { - if (metatileBehavior == MB_SECRET_BASE_OBSTACLE) + if (metatileBehavior == MB_SECRET_BASE_SCENERY) return TRUE; else return FALSE; @@ -620,9 +620,9 @@ bool8 MetatileBehavior_IsSecretBaseNorthWall(u8 metatileBehavior) return FALSE; } -bool8 MetatileBehavior_IsSecretBaseObstacle2(u8 metatileBehavior) +bool8 MetatileBehavior_IsSecretBaseScenery2(u8 metatileBehavior) { - if (metatileBehavior == MB_SECRET_BASE_OBSTACLE) + if (metatileBehavior == MB_SECRET_BASE_SCENERY) return TRUE; else return FALSE; From 7d75e16312381074fe4e31cf28f2e5b405a9bc59 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Thu, 20 Jan 2022 12:25:48 -0300 Subject: [PATCH 525/762] Small documentation and cleanup --- include/battle.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/battle.h b/include/battle.h index 9434b9aa88cb..9656bab8d4e5 100644 --- a/include/battle.h +++ b/include/battle.h @@ -57,7 +57,7 @@ struct ResourceFlags { - u32 flags[4]; + u32 flags[MAX_BATTLERS_COUNT]; }; #define RESOURCE_FLAG_FLASH_FIRE 1 @@ -590,8 +590,8 @@ struct MonSpritesGfx { void* firstDecompressed; // ptr to the decompressed sprite of the first pokemon union { - void* ptr[MAX_BATTLERS_COUNT]; - u8* byte[MAX_BATTLERS_COUNT]; + void* ptr[MAX_BATTLERS_COUNT]; + u8* byte[MAX_BATTLERS_COUNT]; } sprites; struct SpriteTemplate templates[MAX_BATTLERS_COUNT]; struct SpriteFrameImage frameImages[MAX_BATTLERS_COUNT][4]; From fb81d9ad4a19b7d653e44787e5647bda794757fd Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 20 Jan 2022 23:26:39 -0500 Subject: [PATCH 526/762] Correct map data comment --- include/global.fieldmap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 46450ed44691..21c354658d65 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -3,7 +3,7 @@ // Masks/shifts for blocks in the map grid // Map grid blocks consist of a 10 bit metatile id, a 2 bit collision value, and a 4 bit elevation value -// This is the data stored in each data/layouts/*/map.bin and border.bin file +// This is the data stored in each data/layouts/*/map.bin file #define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 1-10 #define MAPGRID_COLLISION_MASK 0x0C00 // Bits 11-12 #define MAPGRID_ELEVATION_MASK 0xF000 // Bits 13-16 From 3d0326106ed683911da66eee1bf94becadc7a2db Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 21 Jan 2022 12:48:19 -0500 Subject: [PATCH 527/762] Z coord / height -> elevation --- include/event_object_movement.h | 18 +++--- include/field_player_avatar.h | 2 +- include/fieldmap.h | 2 +- include/global.h | 2 +- src/bike.c | 2 +- src/decoration.c | 8 +-- src/event_object_movement.c | 110 +++++++++++++++++--------------- src/field_control_avatar.c | 30 ++++----- src/field_effect_helpers.c | 12 ++-- src/field_player_avatar.c | 8 +-- src/field_tasks.c | 14 ++-- src/fieldmap.c | 2 +- src/fldeff_cut.c | 4 +- src/fldeff_rocksmash.c | 6 +- src/item_use.c | 6 +- src/overworld.c | 12 ++-- 16 files changed, 119 insertions(+), 119 deletions(-) diff --git a/include/event_object_movement.h b/include/event_object_movement.h index bd82320271d9..d31802a67f38 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -98,7 +98,7 @@ void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *); void TrySpawnObjectEvents(s16, s16); u8 CreateObjectGraphicsSprite(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); u8 TrySpawnObjectEvent(u8, u8, u8); -u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 z); +u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 elevation); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); void SetSpritePosToMapCoords(s16, s16, s16 *, s16 *); void CameraObjectReset1(void); @@ -128,7 +128,7 @@ u8 GetCollisionAtCoords(struct ObjectEvent *, s16, s16, u32); void MoveCoords(u8, s16 *, s16 *); bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *); u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *); -u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z); +u8 GetObjectEventIdByPosition(u16 x, u16 y, u8 elevation); void SetTrainerMovementType(struct ObjectEvent *objectEvent, u8 movementType); u8 GetTrainerFacingDirectionMovementType(u8 direction); const u8 *GetObjectEventScriptPointerByObjectEventId(u8 objectEventId); @@ -162,17 +162,15 @@ u8 ObjectEventCheckHeldMovementStatus(struct ObjectEvent *objectEvent); u8 ObjectEventGetHeldMovementActionId(struct ObjectEvent *objectEvent); void TryOverrideTemplateCoordsForObjectEvent(const struct ObjectEvent *objectEvent, u8 movementType); void OverrideTemplateCoordsForObjectEvent(const struct ObjectEvent *objectEvent); -void ShiftStillObjectEventCoords(struct ObjectEvent *pObject); -void ObjectEventMoveDestCoords(struct ObjectEvent *pObject, u32 unk_19, s16 *pInt, s16 *pInt1); +void ShiftStillObjectEventCoords(struct ObjectEvent *objEvent); +void ObjectEventMoveDestCoords(struct ObjectEvent *objEvent, u32 direction, s16 *x, s16 *y); u8 AddCameraObject(u8 linkedSpriteId); void UpdateObjectEventsForCameraUpdate(s16 x, s16 y); u8 GetWalkSlowMovementAction(u32); u8 GetJumpMovementAction(u32); -bool8 AreZCoordsCompatible(u8, u8); -u8 ZCoordToPriority(u8); -void ObjectEventUpdateZCoord(struct ObjectEvent *pObject); -void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8); -bool8 IsZCoordMismatchAt(u8, s16, s16); +u8 ElevationToPriority(u8); +void ObjectEventUpdateElevation(struct ObjectEvent *objEvent); +void SetObjectSubpriorityByElevation(u8, struct Sprite *, u8); void UnfreezeObjectEvent(struct ObjectEvent *); u8 FindLockedObjectEventIndex(struct ObjectEvent *); void SetAndStartSpriteAnim(struct Sprite *, u8, u8); @@ -413,7 +411,7 @@ u8 MovementType_Invisible_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementType_Invisible_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementType_Invisible_Step2(struct ObjectEvent *, struct Sprite *); -u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 direction); +u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 elevation, u8 direction); void TurnVirtualObject(u8 virtualObjId, u8 direction); void SetVirtualObjectGraphics(u8 virtualObjId, u8 graphicsId); void SetVirtualObjectInvisibility(u8 virtualObjId, bool32 invisible); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 823564f2260c..d382de08c8fa 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -30,7 +30,7 @@ void PlayerSetAnimId(u8 a, u8 b); bool8 IsPlayerCollidingWithFarawayIslandMew(u8 direction); void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction); u8 CheckForObjectEventCollision(struct ObjectEvent *a, s16 b, s16 c, u8 d, u8 e); -u8 PlayerGetZCoord(void); +u8 PlayerGetElevation(void); void SetPlayerAvatarTransitionFlags(u16 a); void CancelPlayerForcedMovement(void); void InitPlayerAvatar(s16 a, s16 b, u8 c, u8 d); diff --git a/include/fieldmap.h b/include/fieldmap.h index db060497a95c..e7497f7bd4ae 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -32,7 +32,7 @@ bool32 CanCameraMoveInDirection(int direction); u16 GetMetatileAttributesById(u16 metatileId); void GetCameraFocusCoords(u16 *x, u16 *y); u8 MapGridGetMetatileLayerTypeAt(int x, int y); -u8 MapGridGetZCoordAt(int x, int y); +u8 MapGridGetElevationAt(int x, int y); bool8 CameraMove(int deltaX, int deltaY); void SaveMapView(void); void SetCameraFocusCoords(u16 x, u16 y); diff --git a/include/global.h b/include/global.h index 51ecbcbce554..0122ecd5c41f 100644 --- a/include/global.h +++ b/include/global.h @@ -1022,7 +1022,7 @@ struct MapPosition { s16 x; s16 y; - s8 height; + s8 elevation; }; #endif // GUARD_GLOBAL_H diff --git a/src/bike.c b/src/bike.c index 20166392e99f..f1a95d7edd6e 100644 --- a/src/bike.c +++ b/src/bike.c @@ -900,7 +900,7 @@ static bool8 IsRunningDisallowedByMetatile(u8 tile) { if (MetatileBehavior_IsRunningDisallowed(tile)) return TRUE; - if (MetatileBehavior_IsFortreeBridge(tile) && (PlayerGetZCoord() & 1) == 0) + if (MetatileBehavior_IsFortreeBridge(tile) && (PlayerGetElevation() & 1) == 0) return TRUE; return FALSE; } diff --git a/src/decoration.c b/src/decoration.c index 0448778c39dc..7538e85b5602 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1534,7 +1534,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; - behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); + behaviorAt = GetObjectEventIdByPosition(curX, curY, 0); if (behaviorAt != 0 && behaviorAt != OBJECT_EVENTS_COUNT) return FALSE; } @@ -1555,7 +1555,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; - if (GetObjectEventIdByXYZ(curX, curY, 0) != OBJECT_EVENTS_COUNT) + if (GetObjectEventIdByPosition(curX, curY, 0) != OBJECT_EVENTS_COUNT) return FALSE; } } @@ -1572,7 +1572,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) if (!IsntInitialPosition(taskId, curX, curY, layerType)) return FALSE; - behaviorAt = GetObjectEventIdByXYZ(curX, curY, 0); + behaviorAt = GetObjectEventIdByPosition(curX, curY, 0); if (behaviorAt != 0 && behaviorAt != OBJECT_EVENTS_COUNT) return FALSE; } @@ -1609,7 +1609,7 @@ static bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration) return FALSE; } - if (GetObjectEventIdByXYZ(curX, curY, 0) != OBJECT_EVENTS_COUNT) + if (GetObjectEventIdByPosition(curX, curY, 0) != OBJECT_EVENTS_COUNT) return FALSE; } break; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 2c7ceedf4c11..4bd8d5603585 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -110,7 +110,7 @@ static void GetGroundEffectFlags_Seaweed(struct ObjectEvent*, u32*); static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent*, u32*); static u8 ObjectEventGetNearbyReflectionType(struct ObjectEvent*); static u8 GetReflectionTypeByMetatileBehavior(u32); -static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z); +static void InitObjectPriorityByElevation(struct Sprite *, u8); static void ObjectEventUpdateSubpriority(struct ObjectEvent*, struct Sprite*); static void DoTracksGroundEffect_None(struct ObjectEvent*, struct Sprite*, u8); static void DoTracksGroundEffect_Footprints(struct ObjectEvent*, struct Sprite*, u8); @@ -142,27 +142,29 @@ static void ResetObjectEventFldEffData(struct ObjectEvent *); static u8 LoadSpritePaletteIfTagExists(const struct SpritePalette *); static u8 FindObjectEventPaletteIndexByTag(u16); static void _PatchObjectPalette(u16, u8); -static bool8 ObjectEventDoesZCoordMatch(struct ObjectEvent *, 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 struct ObjectEventTemplate *FindObjectEventTemplateByLocalId(u8 localId, struct ObjectEventTemplate *templates, u8 count); +static struct ObjectEventTemplate *FindObjectEventTemplateByLocalId(u8, struct ObjectEventTemplate *, u8); static void ClearObjectEventMovement(struct ObjectEvent *, struct Sprite *); static void ObjectEventSetSingleMovement(struct ObjectEvent *, struct Sprite *, u8); static void SetSpriteDataForNormalStep(struct Sprite *, u8, u8); -static void InitSpriteForFigure8Anim(struct Sprite *sprite); -static bool8 AnimateSpriteInFigure8(struct Sprite *sprite); +static void InitSpriteForFigure8Anim(struct Sprite *); +static bool8 AnimateSpriteInFigure8(struct Sprite *); static void SpriteCB_VirtualObject(struct Sprite *); static void DoShadowFieldEffect(struct ObjectEvent *); static void SetJumpSpriteData(struct Sprite *, u8, u8, u8); -static void SetWalkSlowSpriteData(struct Sprite *sprite, u8 direction); -static bool8 UpdateWalkSlowAnim(struct Sprite *sprite); -static u8 DoJumpSpriteMovement(struct Sprite *sprite); -static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite); +static void SetWalkSlowSpriteData(struct Sprite *, u8); +static bool8 UpdateWalkSlowAnim(struct Sprite *); +static u8 DoJumpSpriteMovement(struct Sprite *); +static u8 DoJumpSpecialSpriteMovement(struct Sprite *); static void CreateLevitateMovementTask(struct ObjectEvent *); static void DestroyLevitateMovementTask(u8); -static bool8 NpcTakeStep(struct Sprite *sprite); +static bool8 NpcTakeStep(struct Sprite *); +static bool8 IsElevationMismatchAt(u8, s16, s16); +static bool8 AreElevationsCompatible(u8 a, u8 b); static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; @@ -1433,7 +1435,7 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl if (!objectEvent->inanimate) StartSpriteAnim(sprite, GetFaceDirectionAnimNum(objectEvent->facingDirection)); - SetObjectSubpriorityByZCoord(objectEvent->previousElevation, sprite, 1); + SetObjectSubpriorityByElevation(objectEvent->previousElevation, sprite, 1); UpdateObjectEventVisibility(objectEvent, sprite); return objectEventId; } @@ -1470,7 +1472,7 @@ u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *objectEventTemplate) return TrySpawnObjectEventTemplate(objectEventTemplate, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, cameraX, cameraY); } -u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 z) +u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 elevation) { struct ObjectEventTemplate objectEventTemplate; @@ -1481,7 +1483,7 @@ u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 l objectEventTemplate.inConnection = 0; objectEventTemplate.x = x; objectEventTemplate.y = y; - objectEventTemplate.elevation = z; + objectEventTemplate.elevation = elevation; objectEventTemplate.movementType = movementBehavior; objectEventTemplate.movementRangeX = 0; objectEventTemplate.movementRangeY = 0; @@ -1560,7 +1562,7 @@ u8 CreateObjectGraphicsSprite(u16 graphicsId, void (*callback)(struct Sprite *), // A unique id is given as an argument and stored in the sprite data to allow referring back to the same virtual object. // They can be turned (and, in the case of the Union Room, animated teleporting in and out) but do not have movement types // or any of the other data normally associated with object events. -u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 direction) +u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 elevation, u8 direction) { u8 spriteId; struct Sprite *sprite; @@ -1587,7 +1589,7 @@ u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 di sprite->coordOffsetEnabled = TRUE; sprite->sVirtualObjId = virtualObjId; - sprite->sVirtualObjElev = z; + sprite->sVirtualObjElev = elevation; if (graphicsInfo->paletteSlot == 10) LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); else if (graphicsInfo->paletteSlot >= 16) @@ -1598,8 +1600,8 @@ u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 z, u8 di SetSubspriteTables(sprite, subspriteTables); sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; } - InitObjectPriorityByZCoord(sprite, z); - SetObjectSubpriorityByZCoord(z, sprite, 1); + InitObjectPriorityByElevation(sprite, elevation); + SetObjectSubpriorityByElevation(elevation, sprite, 1); StartSpriteAnim(sprite, GetFaceDirectionAnimNum(direction)); } return spriteId; @@ -1755,7 +1757,7 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) StartSpriteAnim(sprite, GetFaceDirectionAnimNum(objectEvent->facingDirection)); ResetObjectEventFldEffData(objectEvent); - SetObjectSubpriorityByZCoord(objectEvent->previousElevation, sprite, 1); + SetObjectSubpriorityByElevation(objectEvent->previousElevation, sprite, 1); } } @@ -2148,7 +2150,7 @@ void UpdateObjectEventCoordsForCameraUpdate(void) } } -u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z) +u8 GetObjectEventIdByPosition(u16 x, u16 y, u8 elevation) { u8 i; @@ -2156,16 +2158,18 @@ u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z) { if (gObjectEvents[i].active) { - if (gObjectEvents[i].currentCoords.x == x && gObjectEvents[i].currentCoords.y == y && ObjectEventDoesZCoordMatch(&gObjectEvents[i], z)) + if (gObjectEvents[i].currentCoords.x == x + && gObjectEvents[i].currentCoords.y == y + && ObjectEventDoesElevationMatch(&gObjectEvents[i], elevation)) return i; } } return OBJECT_EVENTS_COUNT; } -static bool8 ObjectEventDoesZCoordMatch(struct ObjectEvent *objectEvent, u8 z) +static bool8 ObjectEventDoesElevationMatch(struct ObjectEvent *objectEvent, u8 elevation) { - if (objectEvent->currentElevation != 0 && z != 0 && objectEvent->currentElevation != z) + if (objectEvent->currentElevation != 0 && elevation != 0 && objectEvent->currentElevation != elevation) return FALSE; return TRUE; @@ -4630,7 +4634,7 @@ u8 GetCollisionAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u32 dir) return COLLISION_IMPASSABLE; else if (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction)) return COLLISION_IMPASSABLE; - else if (IsZCoordMismatchAt(objectEvent->currentElevation, x, y)) + else if (IsElevationMismatchAt(objectEvent->currentElevation, x, y)) return COLLISION_ELEVATION_MISMATCH; else if (DoesObjectCollideWithObjectAt(objectEvent, x, y)) return COLLISION_OBJECT_EVENT; @@ -4645,7 +4649,7 @@ u8 GetCollisionFlagsAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 d flags |= 1; if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == -1 || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction) || (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction))) flags |= 2; - if (IsZCoordMismatchAt(objectEvent->currentElevation, x, y)) + if (IsElevationMismatchAt(objectEvent->currentElevation, x, y)) flags |= 4; if (DoesObjectCollideWithObjectAt(objectEvent, x, y)) flags |= 8; @@ -4699,7 +4703,7 @@ static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *objectEvent, s16 { if ((curObject->currentCoords.x == x && curObject->currentCoords.y == y) || (curObject->previousCoords.x == x && curObject->previousCoords.y == y)) { - if (AreZCoordsCompatible(objectEvent->currentElevation, curObject->currentElevation)) + if (AreElevationsCompatible(objectEvent->currentElevation, curObject->currentElevation)) return TRUE; } } @@ -7667,23 +7671,23 @@ static void SetObjectEventSpriteOamTableForLongGrass(struct ObjectEvent *objEven sprite->subspriteTableNum = 4; - if (ZCoordToPriority(objEvent->previousElevation) == 1) + if (ElevationToPriority(objEvent->previousElevation) == 1) sprite->subspriteTableNum = 5; } -bool8 IsZCoordMismatchAt(u8 z, s16 x, s16 y) +static bool8 IsElevationMismatchAt(u8 elevation, s16 x, s16 y) { - u8 mapZ; + u8 mapElevation; - if (z == 0) + if (elevation == 0) return FALSE; - mapZ = MapGridGetZCoordAt(x, y); + mapElevation = MapGridGetElevationAt(x, y); - if (mapZ == 0 || mapZ == 15) + if (mapElevation == 0 || mapElevation == 15) return FALSE; - if (mapZ != z) + if (mapElevation != elevation) return TRUE; return FALSE; @@ -7701,43 +7705,43 @@ static const u8 sElevationToSubspriteTableNum[] = { 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 0, 0, 1, }; -void UpdateObjectEventZCoordAndPriority(struct ObjectEvent *objEvent, struct Sprite *sprite) +static void UpdateObjectEventElevationAndPriority(struct ObjectEvent *objEvent, struct Sprite *sprite) { if (objEvent->fixedPriority) return; - ObjectEventUpdateZCoord(objEvent); + ObjectEventUpdateElevation(objEvent); sprite->subspriteTableNum = sElevationToSubspriteTableNum[objEvent->previousElevation]; sprite->oam.priority = sElevationToPriority[objEvent->previousElevation]; } -static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z) +static void InitObjectPriorityByElevation(struct Sprite *sprite, u8 elevation) { - sprite->subspriteTableNum = sElevationToSubspriteTableNum[z]; - sprite->oam.priority = sElevationToPriority[z]; + sprite->subspriteTableNum = sElevationToSubspriteTableNum[elevation]; + sprite->oam.priority = sElevationToPriority[elevation]; } -u8 ZCoordToPriority(u8 z) +u8 ElevationToPriority(u8 elevation) { - return sElevationToPriority[z]; + return sElevationToPriority[elevation]; } -void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent) +void ObjectEventUpdateElevation(struct ObjectEvent *objEvent) { - u8 z = MapGridGetZCoordAt(objEvent->currentCoords.x, objEvent->currentCoords.y); - u8 z2 = MapGridGetZCoordAt(objEvent->previousCoords.x, objEvent->previousCoords.y); + u8 curElevation = MapGridGetElevationAt(objEvent->currentCoords.x, objEvent->currentCoords.y); + u8 prevElevation = MapGridGetElevationAt(objEvent->previousCoords.x, objEvent->previousCoords.y); - if (z == 0xF || z2 == 0xF) + if (curElevation == 15 || prevElevation == 15) return; - objEvent->currentElevation = z; + objEvent->currentElevation = curElevation; - if (z != 0 && z != 0xF) - objEvent->previousElevation = z; + if (curElevation != 0 && curElevation != 15) + objEvent->previousElevation = curElevation; } -void SetObjectSubpriorityByZCoord(u8 elevation, struct Sprite *sprite, u8 subpriority) +void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *sprite, u8 subpriority) { s32 tmp = sprite->centerToCornerVecY; u32 tmpa = *(u16 *)&sprite->y; @@ -7752,10 +7756,10 @@ static void ObjectEventUpdateSubpriority(struct ObjectEvent *objEvent, struct Sp if (objEvent->fixedPriority) return; - SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1); + SetObjectSubpriorityByElevation(objEvent->previousElevation, sprite, 1); } -bool8 AreZCoordsCompatible(u8 a, u8 b) +static bool8 AreElevationsCompatible(u8 a, u8 b) { if (a == 0 || b == 0) return TRUE; @@ -8051,7 +8055,7 @@ static void DoGroundEffects_OnSpawn(struct ObjectEvent *objEvent, struct Sprite if (objEvent->triggerGroundEffectsOnMove) { flags = 0; - UpdateObjectEventZCoordAndPriority(objEvent, sprite); + UpdateObjectEventElevationAndPriority(objEvent, sprite); GetAllGroundEffectFlags_OnSpawn(objEvent, &flags); SetObjectEventSpriteOamTableForLongGrass(objEvent, sprite); DoFlaggedGroundEffects(objEvent, sprite, flags); @@ -8067,7 +8071,7 @@ static void DoGroundEffects_OnBeginStep(struct ObjectEvent *objEvent, struct Spr if (objEvent->triggerGroundEffectsOnMove) { flags = 0; - UpdateObjectEventZCoordAndPriority(objEvent, sprite); + UpdateObjectEventElevationAndPriority(objEvent, sprite); GetAllGroundEffectFlags_OnBeginStep(objEvent, &flags); SetObjectEventSpriteOamTableForLongGrass(objEvent, sprite); filters_out_some_ground_effects(objEvent, &flags); @@ -8084,7 +8088,7 @@ static void DoGroundEffects_OnFinishStep(struct ObjectEvent *objEvent, struct Sp if (objEvent->triggerGroundEffectsOnStop) { flags = 0; - UpdateObjectEventZCoordAndPriority(objEvent, sprite); + UpdateObjectEventElevationAndPriority(objEvent, sprite); GetAllGroundEffectFlags_OnFinishStep(objEvent, &flags); SetObjectEventSpriteOamTableForLongGrass(objEvent, sprite); FilterOutStepOnPuddleGroundEffectIfJumping(objEvent, &flags); @@ -8548,7 +8552,7 @@ void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible) static void SpriteCB_VirtualObject(struct Sprite *sprite) { VirtualObject_UpdateAnim(sprite); - SetObjectSubpriorityByZCoord(sprite->sVirtualObjElev, sprite, 1); + SetObjectSubpriorityByElevation(sprite->sVirtualObjElev, sprite, 1); UpdateObjectEventSpriteInvisibility(sprite, sprite->sInvisible); } diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 8d6b564d2590..490b152ce379 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -194,7 +194,7 @@ int ProcessPlayerFieldInput(struct FieldInput *input) static void GetPlayerPosition(struct MapPosition *position) { PlayerGetDestCoords(&position->x, &position->y); - position->height = PlayerGetZCoord(); + position->elevation = PlayerGetElevation(); } static void GetInFrontOfPlayerPosition(struct MapPosition *position) @@ -203,10 +203,10 @@ static void GetInFrontOfPlayerPosition(struct MapPosition *position) GetXYCoordsOneStepInFrontOfPlayer(&position->x, &position->y); PlayerGetDestCoords(&x, &y); - if (MapGridGetZCoordAt(x, y) != 0) - position->height = PlayerGetZCoord(); + if (MapGridGetElevationAt(x, y) != 0) + position->elevation = PlayerGetElevation(); else - position->height = 0; + position->elevation = 0; } static u16 GetPlayerCurMetatileBehavior(int runningState) @@ -264,9 +264,9 @@ const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatil s32 i; if (!MetatileBehavior_IsCounter(MapGridGetMetatileBehaviorAt(position->x, position->y))) - objectEventId = GetObjectEventIdByXYZ(position->x, position->y, position->height); + objectEventId = GetObjectEventIdByPosition(position->x, position->y, position->elevation); else - objectEventId = GetObjectEventIdByXYZ(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->height); + 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) return NULL; @@ -288,14 +288,14 @@ static const u8 *GetInteractedObjectEventScript(struct MapPosition *position, u8 u8 objectEventId; const u8 *script; - objectEventId = GetObjectEventIdByXYZ(position->x, position->y, position->height); + objectEventId = GetObjectEventIdByPosition(position->x, position->y, position->elevation); if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == OBJ_EVENT_ID_PLAYER) { if (MetatileBehavior_IsCounter(metatileBehavior) != TRUE) return NULL; // Look for an object event on the other side of the counter. - objectEventId = GetObjectEventIdByXYZ(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->height); + 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) return NULL; } @@ -315,7 +315,7 @@ static const u8 *GetInteractedObjectEventScript(struct MapPosition *position, u8 static const u8 *GetInteractedBackgroundEventScript(struct MapPosition *position, u8 metatileBehavior, u8 direction) { - struct BgEvent *bgEvent = GetBackgroundEventAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); + struct BgEvent *bgEvent = GetBackgroundEventAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->elevation); if (bgEvent == NULL) return NULL; @@ -366,7 +366,7 @@ static const u8 *GetInteractedBackgroundEventScript(struct MapPosition *position static const u8 *GetInteractedMetatileScript(struct MapPosition *position, u8 metatileBehavior, u8 direction) { - s8 height; + s8 elevation; if (MetatileBehavior_IsPlayerFacingTVScreen(metatileBehavior, direction) == TRUE) return EventScript_TV; @@ -409,8 +409,8 @@ static const u8 *GetInteractedMetatileScript(struct MapPosition *position, u8 me if (MetatileBehavior_IsTrainerHillTimer(metatileBehavior) == TRUE) return EventScript_TrainerHillTimer; - height = position->height; - if (height == MapGridGetZCoordAt(position->x, position->y)) + elevation = position->elevation; + if (elevation == MapGridGetElevationAt(position->x, position->y)) { if (MetatileBehavior_IsSecretBasePC(metatileBehavior) == TRUE) return SecretBase_EventScript_PC; @@ -497,7 +497,7 @@ static bool8 TryStartStepBasedScript(struct MapPosition *position, u16 metatileB static bool8 TryStartCoordEventScript(struct MapPosition *position) { - u8 *script = GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); + u8 *script = GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->elevation); if (script == NULL) return FALSE; @@ -783,7 +783,7 @@ static bool8 IsArrowWarpMetatileBehavior(u16 metatileBehavior, u8 direction) static s8 GetWarpEventAtMapPosition(struct MapHeader *mapHeader, struct MapPosition *position) { - return GetWarpEventAtPosition(mapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); + return GetWarpEventAtPosition(mapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->elevation); } static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPosition *position) @@ -918,7 +918,7 @@ static u8 *GetCoordEventScriptAtPosition(struct MapHeader *mapHeader, u16 x, u16 u8 *GetCoordEventScriptAtMapPosition(struct MapPosition *position) { - return GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->height); + return GetCoordEventScriptAtPosition(&gMapHeader, position->x - MAP_OFFSET, position->y - MAP_OFFSET, position->elevation); } static struct BgEvent *GetBackgroundEventAtPosition(struct MapHeader *mapHeader, u16 x, u16 y, u8 elevation) diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 0acb15863778..65617038d1a5 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -359,7 +359,7 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite) || objectEvent->previousCoords.y != sprite->sY)) sprite->sObjectMoved = TRUE; - // Metatile behavior var re-used + // Metatile behavior var re-used as subpriority metatileBehavior = 0; if (sprite->animCmdIndex == 0) metatileBehavior = 4; @@ -423,7 +423,7 @@ u32 FldEff_LongGrass(void) { sprite = &gSprites[spriteId]; sprite->coordOffsetEnabled = TRUE; - sprite->oam.priority = ZCoordToPriority(gFieldEffectArguments[2]); + sprite->oam.priority = ElevationToPriority(gFieldEffectArguments[2]); sprite->sElevation = gFieldEffectArguments[2]; sprite->sX = gFieldEffectArguments[0]; sprite->sY = gFieldEffectArguments[1]; @@ -1108,7 +1108,7 @@ void SynchroniseSurfPosition(struct ObjectEvent *playerObj, struct Sprite *sprit for (i = DIR_SOUTH; i <= DIR_EAST; i++, x = sprite->data[6], y = sprite->data[7]) { MoveCoords(i, &x, &y); - if (MapGridGetZCoordAt(x, y) == 3) + if (MapGridGetElevationAt(x, y) == 3) { sprite->data[5]++; break; @@ -1646,7 +1646,7 @@ void UpdateJumpImpactEffect(struct Sprite *sprite) else { UpdateObjectEventSpriteInvisibility(sprite, FALSE); - SetObjectSubpriorityByZCoord(sprite->sElevation, sprite, 0); + SetObjectSubpriorityByElevation(sprite->sElevation, sprite, 0); } } @@ -1658,14 +1658,14 @@ void WaitFieldEffectSpriteAnim(struct Sprite *sprite) UpdateObjectEventSpriteInvisibility(sprite, FALSE); } -static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 offset) +static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 elevation, u8 subpriority) { u8 i; s16 var, xhi, lyhi, yhi, ylo; const struct ObjectEventGraphicsInfo *graphicsInfo; // Unused Variable struct Sprite *linkedSprite; - SetObjectSubpriorityByZCoord(z, sprite, offset); + SetObjectSubpriorityByElevation(elevation, sprite, subpriority); for (i = 0; i < OBJECT_EVENTS_COUNT; i ++) { struct ObjectEvent *objectEvent = &gObjectEvents[i]; diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index fce23ee8ea62..188b31833f3c 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -708,8 +708,8 @@ static u8 CheckForObjectEventStaticCollision(struct ObjectEvent *objectEvent, s1 static bool8 CanStopSurfing(s16 x, s16 y, u8 direction) { if ((gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) - && MapGridGetZCoordAt(x, y) == 3 - && GetObjectEventIdByXYZ(x, y, 3) == OBJECT_EVENTS_COUNT) + && MapGridGetElevationAt(x, y) == 3 + && GetObjectEventIdByPosition(x, y, 3) == OBJECT_EVENTS_COUNT) { CreateStopSurfingTask(direction); return TRUE; @@ -1168,7 +1168,7 @@ u8 GetPlayerMovementDirection(void) return gObjectEvents[gPlayerAvatar.objectEventId].movementDirection; } -u8 PlayerGetZCoord(void) +u8 PlayerGetElevation(void) { return gObjectEvents[gPlayerAvatar.objectEventId].previousElevation; } @@ -1306,7 +1306,7 @@ bool8 IsPlayerFacingSurfableFishableWater(void) MoveCoords(playerObjEvent->facingDirection, &x, &y); if (GetCollisionAtCoords(playerObjEvent, x, y, playerObjEvent->facingDirection) == COLLISION_ELEVATION_MISMATCH - && PlayerGetZCoord() == 3 + && PlayerGetElevation() == 3 && MetatileBehavior_IsSurfableFishableWater(MapGridGetMetatileBehaviorAt(x, y))) return TRUE; else diff --git a/src/field_tasks.c b/src/field_tasks.c index 760d853693d9..e6197505dfa1 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -445,8 +445,8 @@ static void PacifidlogBridgePerStepCallback(u8 taskId) static void TryLowerFortreeBridge(s16 x, s16 y) { - u8 z = PlayerGetZCoord(); - if (!(z & 1)) + u8 elevation = PlayerGetElevation(); + if (!(elevation & 1)) { switch (MapGridGetMetatileIdAt(x, y)) { @@ -462,8 +462,8 @@ static void TryLowerFortreeBridge(s16 x, s16 y) static void TryRaiseFortreeBridge(s16 x, s16 y) { - u8 z = PlayerGetZCoord(); - if (!(z & 1)) + u8 elevation = PlayerGetElevation(); + if (!(elevation & 1)) { switch (MapGridGetMetatileIdAt(x, y)) { @@ -488,7 +488,7 @@ static void FortreeBridgePerStepCallback(u8 taskId) { bool8 isFortreeBridgeCur; bool8 isFortreeBridgePrev; - u8 z, onBridgeElevation; + u8 elevation, onBridgeElevation; s16 x, y, prevX, prevY; s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); @@ -520,9 +520,9 @@ static void FortreeBridgePerStepCallback(u8 taskId) isFortreeBridgePrev = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(prevX, prevY)); // Make sure player isn't below bridge - z = PlayerGetZCoord(); + elevation = PlayerGetElevation(); onBridgeElevation = FALSE; - if ((u8)(z & 1) == 0) + if ((u8)(elevation & 1) == 0) onBridgeElevation = TRUE; if (onBridgeElevation && (isFortreeBridgeCur == TRUE || isFortreeBridgePrev == TRUE)) diff --git a/src/fieldmap.c b/src/fieldmap.c index 8be4206e235e..4dbf981cf58c 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -342,7 +342,7 @@ static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHead } } -u8 MapGridGetZCoordAt(int x, int y) +u8 MapGridGetElevationAt(int x, int y) { u16 block = GetMapGridBlockAt(x, y); diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index daa46ad76592..9129c5208cb7 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -181,7 +181,7 @@ bool8 SetUpFieldMove_Cut(void) for (j = 0; j < CUT_NORMAL_SIDE; j++) { x = j - 1 + gPlayerFacingPosition.x; - if (MapGridGetZCoordAt(x, y) == gPlayerFacingPosition.height) + if (MapGridGetElevationAt(x, y) == gPlayerFacingPosition.elevation) { tileBehavior = MapGridGetMetatileBehaviorAt(x, y); if (MetatileBehavior_IsPokeGrass(tileBehavior) == TRUE @@ -238,7 +238,7 @@ bool8 SetUpFieldMove_Cut(void) if (tileCuttable == TRUE) { - if (MapGridGetZCoordAt(x, y) == gPlayerFacingPosition.height) + if (MapGridGetElevationAt(x, y) == gPlayerFacingPosition.elevation) { u8 tileArrayId = ((sHyperCutStruct[i].y * 5) + 12) + (sHyperCutStruct[i].x); tileBehavior = MapGridGetMetatileBehaviorAt(x, y); diff --git a/src/fldeff_rocksmash.c b/src/fldeff_rocksmash.c index 6f4ce8002bb4..a30000e526bc 100644 --- a/src/fldeff_rocksmash.c +++ b/src/fldeff_rocksmash.c @@ -19,7 +19,6 @@ #include "constants/map_types.h" #include "constants/songs.h" -// static functions static void Task_DoFieldMove_Init(u8 taskId); static void Task_DoFieldMove_ShowMonAfterPose(u8 taskId); static void Task_DoFieldMove_WaitForMon(u8 taskId); @@ -28,14 +27,13 @@ static void Task_DoFieldMove_RunFunc(u8 taskId); static void FieldCallback_RockSmash(void); static void FieldMove_RockSmash(void); -// text bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId) { u8 objEventId; GetXYCoordsOneStepInFrontOfPlayer(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y); - gPlayerFacingPosition.height = PlayerGetZCoord(); - objEventId = GetObjectEventIdByXYZ(gPlayerFacingPosition.x, gPlayerFacingPosition.y, gPlayerFacingPosition.height); + gPlayerFacingPosition.elevation = PlayerGetElevation(); + objEventId = GetObjectEventIdByPosition(gPlayerFacingPosition.x, gPlayerFacingPosition.y, gPlayerFacingPosition.elevation); if (gObjectEvents[objEventId].graphicsId != graphicsId) { return FALSE; diff --git a/src/item_use.c b/src/item_use.c index 29ceb7caebbc..c9a7fe1c7bf0 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -725,11 +725,11 @@ static void ItemUseOnFieldCB_WailmerPailBerry(u8 taskId) static bool8 TryToWaterSudowoodo(void) { u16 x, y; - u8 z; + u8 elevation; u8 objId; GetXYCoordsOneStepInFrontOfPlayer(&x, &y); - z = PlayerGetZCoord(); - objId = GetObjectEventIdByXYZ(x, y, z); + elevation = PlayerGetElevation(); + objId = GetObjectEventIdByPosition(x, y, elevation); if (objId == OBJECT_EVENTS_COUNT || gObjectEvents[objId].graphicsId != OBJ_EVENT_GFX_SUDOWOODO) return FALSE; else diff --git a/src/overworld.c b/src/overworld.c index a18313d32601..ba6eaa16790e 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2692,7 +2692,7 @@ static void LoadCableClubPlayer(s32 linkPlayerId, s32 myPlayerId, struct CableCl GetLinkPlayerCoords(linkPlayerId, &x, &y); trainer->pos.x = x; trainer->pos.y = y; - trainer->pos.height = GetLinkPlayerElevation(linkPlayerId); + trainer->pos.elevation = GetLinkPlayerElevation(linkPlayerId); trainer->metatileBehavior = MapGridGetMetatileBehaviorAt(x, y); } @@ -2745,7 +2745,7 @@ static const u8 *TryInteractWithPlayer(struct CableClubPlayer *player) otherPlayerPos = player->pos; otherPlayerPos.x += gDirectionToVectors[player->facing].x; otherPlayerPos.y += gDirectionToVectors[player->facing].y; - otherPlayerPos.height = 0; + otherPlayerPos.elevation = 0; linkPlayerId = GetLinkPlayerIdAt(otherPlayerPos.x, otherPlayerPos.y); if (linkPlayerId != MAX_LINK_PLAYERS) @@ -2955,7 +2955,7 @@ static void InitLinkPlayerObjectEventPos(struct ObjectEvent *objEvent, s16 x, s1 objEvent->previousCoords.y = y; SetSpritePosToMapCoords(x, y, &objEvent->initialCoords.x, &objEvent->initialCoords.y); objEvent->initialCoords.x += 8; - ObjectEventUpdateZCoord(objEvent); + ObjectEventUpdateElevation(objEvent); } static void SetLinkPlayerObjectRange(u8 linkPlayerId, u8 dir) @@ -3095,7 +3095,7 @@ static bool8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *linkPlayer { objEvent->directionSequenceIndex = 16; ShiftObjectEventCoords(objEvent, x, y); - ObjectEventUpdateZCoord(objEvent); + ObjectEventUpdateElevation(objEvent); return TRUE; } } @@ -3201,8 +3201,8 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite) struct ObjectEvent *objEvent = &gObjectEvents[linkPlayerObjEvent->objEventId]; sprite->x = objEvent->initialCoords.x; sprite->y = objEvent->initialCoords.y; - SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1); - sprite->oam.priority = ZCoordToPriority(objEvent->previousElevation); + SetObjectSubpriorityByElevation(objEvent->previousElevation, sprite, 1); + sprite->oam.priority = ElevationToPriority(objEvent->previousElevation); if (linkPlayerObjEvent->movementMode == MOVEMENT_MODE_FREE) StartSpriteAnim(sprite, GetFaceDirectionAnimNum(linkDirection(objEvent))); From a83e41b2ccf87fe8b396280b34f71328b191a861 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 22 Jan 2022 19:37:46 -0500 Subject: [PATCH 528/762] move m4a track definitions --- sound/music_player_table.inc | 38 ++++++++++++++++++++++++++++++++---- src/m4a_1.s | 22 +-------------------- sym_bss.txt | 1 + 3 files changed, 36 insertions(+), 25 deletions(-) diff --git a/sound/music_player_table.inc b/sound/music_player_table.inc index 6c74a13528dd..c4c4d4b62678 100644 --- a/sound/music_player_table.inc +++ b/sound/music_player_table.inc @@ -1,6 +1,36 @@ + .equiv TRACK_SIZE, 0x50 + .equiv NUM_TRACKS_BGM, 10 + .equiv NUM_TRACKS_SE1, 3 + .equiv NUM_TRACKS_SE2, 9 + .equiv NUM_TRACKS_SE3, 1 + + .bss + + .global gMPlayTrack_BGM +gMPlayTrack_BGM: + .space TRACK_SIZE * NUM_TRACKS_BGM + .size gMPlayTrack_BGM, .-gMPlayTrack_BGM + + .global gMPlayTrack_SE1 +gMPlayTrack_SE1: + .space TRACK_SIZE * NUM_TRACKS_SE1 + .size gMPlayTrack_SE1, .-gMPlayTrack_SE1 + + .global gMPlayTrack_SE2 +gMPlayTrack_SE2: + .space TRACK_SIZE * NUM_TRACKS_SE2 + .size gMPlayTrack_SE2, .-gMPlayTrack_SE2 + + .global gMPlayTrack_SE3 +gMPlayTrack_SE3: + .space TRACK_SIZE * NUM_TRACKS_SE3 + .size gMPlayTrack_SE3, .-gMPlayTrack_SE3 + + .section .rodata + .align 2 gMPlayTable:: - music_player gMPlayInfo_BGM, gMPlayTrack_BGM, 10, 0 - music_player gMPlayInfo_SE1, gMPlayTrack_SE1, 3, 1 - music_player gMPlayInfo_SE2, gMPlayTrack_SE2, 9, 1 - music_player gMPlayInfo_SE3, gMPlayTrack_SE3, 1, 0 + music_player gMPlayInfo_BGM, gMPlayTrack_BGM, NUM_TRACKS_BGM, 0 + music_player gMPlayInfo_SE1, gMPlayTrack_SE1, NUM_TRACKS_SE1, 1 + music_player gMPlayInfo_SE2, gMPlayTrack_SE2, NUM_TRACKS_SE2, 1 + music_player gMPlayInfo_SE3, gMPlayTrack_SE3, NUM_TRACKS_SE3, 0 diff --git a/src/m4a_1.s b/src/m4a_1.s index f71a5546e4e5..be5d3576efa6 100644 --- a/src/m4a_1.s +++ b/src/m4a_1.s @@ -1910,27 +1910,7 @@ _081DDD90: .align 2, 0 @ Don't pad with nop. - .bss + .bss gDecodingBuffer: @ Used as a buffer for audio decoded from compressed DPCM .space 0x40 .size gDecodingBuffer, .-gDecodingBuffer - - .global gMPlayTrack_BGM -gMPlayTrack_BGM: - .space 0x320 - .size gMPlayTrack_BGM, .-gMPlayTrack_BGM - - .global gMPlayTrack_SE1 -gMPlayTrack_SE1: - .space 0xF0 - .size gMPlayTrack_SE1, .-gMPlayTrack_SE1 - - .global gMPlayTrack_SE2 -gMPlayTrack_SE2: - .space 0x2D0 - .size gMPlayTrack_SE2, .-gMPlayTrack_SE2 - - .global gMPlayTrack_SE3 -gMPlayTrack_SE3: - .space 0x50 - .size gMPlayTrack_SE3, .-gMPlayTrack_SE3 diff --git a/sym_bss.txt b/sym_bss.txt index 75da960bf96b..3a23e747890e 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -55,6 +55,7 @@ .include "src/ereader_helpers.o" .include "src/faraway_island.o" .include "src/m4a_1.o" + .include "data/sound_data.o" .include "src/agb_flash.o" .include "src/siirtc.o" .include "*libgcc.a:dp-bit.o" From 04013fbdf2e3d06ba27ec25111c54798d92bc31d Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 22 Jan 2022 19:41:31 -0500 Subject: [PATCH 529/762] forgot we could do this --- sound/music_player_table.inc | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/sound/music_player_table.inc b/sound/music_player_table.inc index c4c4d4b62678..5981a4d03742 100644 --- a/sound/music_player_table.inc +++ b/sound/music_player_table.inc @@ -6,23 +6,19 @@ .bss - .global gMPlayTrack_BGM -gMPlayTrack_BGM: +gMPlayTrack_BGM:: .space TRACK_SIZE * NUM_TRACKS_BGM .size gMPlayTrack_BGM, .-gMPlayTrack_BGM - .global gMPlayTrack_SE1 -gMPlayTrack_SE1: +gMPlayTrack_SE1:: .space TRACK_SIZE * NUM_TRACKS_SE1 .size gMPlayTrack_SE1, .-gMPlayTrack_SE1 - .global gMPlayTrack_SE2 -gMPlayTrack_SE2: +gMPlayTrack_SE2:: .space TRACK_SIZE * NUM_TRACKS_SE2 .size gMPlayTrack_SE2, .-gMPlayTrack_SE2 - .global gMPlayTrack_SE3 -gMPlayTrack_SE3: +gMPlayTrack_SE3:: .space TRACK_SIZE * NUM_TRACKS_SE3 .size gMPlayTrack_SE3, .-gMPlayTrack_SE3 From 317e302147672d97bfcfa73efeb8372d797cee95 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 22 Jan 2022 19:43:11 -0500 Subject: [PATCH 530/762] fix inconsistent indentation --- src/m4a_1.s | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/m4a_1.s b/src/m4a_1.s index be5d3576efa6..cc5d3238d6c2 100644 --- a/src/m4a_1.s +++ b/src/m4a_1.s @@ -1912,5 +1912,5 @@ _081DDD90: .bss gDecodingBuffer: @ Used as a buffer for audio decoded from compressed DPCM - .space 0x40 - .size gDecodingBuffer, .-gDecodingBuffer + .space 0x40 + .size gDecodingBuffer, .-gDecodingBuffer From 3b756bfb3dd23bbdb2fb74606c0b064e92002a45 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 22 Jan 2022 20:38:41 -0500 Subject: [PATCH 531/762] fix compilation on modern --- ld_script_modern.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 092ff26c6368..153ce7f6d4df 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -27,6 +27,7 @@ SECTIONS { /* .bss starts at 0x3000000 */ src/*.o(.bss); gflib/*.o(.bss); + data/*.o(.bss); *libc.a:*.o(.bss*); *libnosys.a:*.o(.bss*); From 2cc301603e47ece925deeceaf3c363b7250781ce Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Sat, 22 Jan 2022 21:30:39 -0500 Subject: [PATCH 532/762] lmao whitespace --- ld_script_modern.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ld_script_modern.txt b/ld_script_modern.txt index 153ce7f6d4df..a988fe0cd59d 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -27,7 +27,7 @@ SECTIONS { /* .bss starts at 0x3000000 */ src/*.o(.bss); gflib/*.o(.bss); - data/*.o(.bss); + data/*.o(.bss); *libc.a:*.o(.bss*); *libnosys.a:*.o(.bss*); From dc2e210ade38bc5789764d0c3836c3d995a1d4ef Mon Sep 17 00:00:00 2001 From: laqieer Date: Sun, 23 Jan 2022 17:31:54 +0800 Subject: [PATCH 533/762] Install libpng using pacman instead of manual build for msys2 --- INSTALL.md | 37 ++----------------------------------- 1 file changed, 2 insertions(+), 35 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 1ad3b4b0c9d1..1f1e1164be01 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -125,12 +125,12 @@ Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or conti Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. -1. Open msys2 at C:\devkitPro\msys2\msys2_shell.bat. +1. Open msys2 at C:\devkitPro\msys2\mingw64.exe or run `C:\devkitPro\msys2\msys2_shell.bat -mingw64`. 2. Certain packages are required to build pokeemerald. Install these by running the following command: ```bash - pacman -S make gcc zlib-devel git + pacman -S make zlib-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-libpng ```
Note... @@ -138,39 +138,6 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. > This command will ask for confirmation, just enter the yes action when prompted.
-3. Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). - -4. Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\⁠_\_**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: - - ```bash - cd Downloads - ``` - -
- Notes... - - > Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. - > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. - > Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed. - > Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there. -
- -5. Run the following commands to uncompress and install libpng. - - ```bash - tar xf libpng-1.6.37.tar.xz - cd libpng-1.6.37 - ./configure --prefix=/usr - make check - make install - ``` - -6. Then finally, run the following command to change back to the user profile folder. - - ```bash - cd - ``` - ### Choosing where to store pokeemerald (msys2) At this point, you can choose a folder to store pokeemerald into. If you're okay with storing pokeemerald in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokeemerald is stored when changing directory to the pokeemerald folder. From 2495d1813239cd8d888c160b08c23500ba4759a7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 23 Jan 2022 18:51:56 -0500 Subject: [PATCH 534/762] Add missing :req, remove old macros --- asm/macros.inc | 129 ----------------------------- asm/macros/asm.inc | 4 +- asm/macros/field_effect_script.inc | 14 ++-- asm/macros/function.inc | 10 +-- asm/macros/m4a.inc | 10 +-- asm/macros/map.inc | 98 ++++++++++++---------- asm/macros/pokemon_data.inc | 56 ------------- asm/macros/window.inc | 35 -------- data/map_events.s | 1 + data/maps.s | 1 + include/constants/global.h | 9 ++ include/gba/m4a_internal.h | 2 +- include/global.fieldmap.h | 12 --- src/m4a.c | 2 +- tools/mapjson/mapjson.cpp | 2 +- 15 files changed, 87 insertions(+), 298 deletions(-) delete mode 100644 asm/macros/pokemon_data.inc delete mode 100644 asm/macros/window.inc diff --git a/asm/macros.inc b/asm/macros.inc index 77f44a8475e1..95bb4e31b040 100644 --- a/asm/macros.inc +++ b/asm/macros.inc @@ -1,8 +1,6 @@ .include "asm/macros/asm.inc" .include "asm/macros/function.inc" .include "asm/macros/movement.inc" - .include "asm/macros/window.inc" - .include "asm/macros/pokemon_data.inc" .include "asm/macros/map.inc" .include "asm/macros/field_effect_script.inc" .include "asm/macros/trainer_hill.inc" @@ -16,130 +14,3 @@ .include "asm/macros/battle_frontier/battle_pyramid.inc" .include "asm/macros/battle_frontier/battle_tower.inc" .include "asm/macros/battle_frontier/frontier_util.inc" - - .macro region_map_entry x, y, width, height, name - .byte \x - .byte \y - .byte \width - .byte \height - .4byte gMapName_\name - .endm - - .macro obj_tiles address, uncompressed_size, tag = 0 - .4byte \address - .2byte \uncompressed_size - .2byte \tag - .endm - - .macro null_obj_tiles - obj_tiles 0, 0, 0 - .endm - - .macro obj_pal address, tag - .4byte \address - .2byte \tag - .2byte 0@ padding - .endm - - .macro null_obj_pal - obj_pal 0, 0 - .endm - - .macro paired_pals tag, address - .2byte \tag - .2byte 0 @ padding - .4byte \address - .endm - -@ For object animation frames. - .macro obj_frame_tiles address, uncompressed_size - .4byte \address - .2byte \uncompressed_size - .2byte 0 @ padding - .endm - - .macro spr_template tile_tag, pal_tag, oam, anims, images, affine_anims, callback - .2byte \tile_tag - .2byte \pal_tag - .4byte \oam - .4byte \anims - .4byte \images - .4byte \affine_anims - .4byte \callback - .endm - -@ Berry trees have a table defining the palette slot used for each of their 5 -@ stages. However, the first 2 stages always use the same slots regardless of -@ the type of tree and the slots of the last 3 stages always equal each other. - .macro berry_tree_palette_slot_table slot - .byte 3, 4, \slot, \slot, \slot - .endm - - .macro subsprite x, y, priority, tile_num_offset, size - .byte \x - .byte \y - .2byte ((\priority) << 14) | ((\tile_num_offset) << 4) | SPRITE_SIZE_\size - .endm - - .macro obj_image_anim_frame pic_id, duration, flags = 0 - .2byte \pic_id - .byte (\flags) | (\duration) - .byte 0 @ padding - .endm - - .macro obj_image_anim_loop count - .2byte 0xfffd - .byte \count - .byte 0 @ padding - .endm - - .macro obj_image_anim_jump target_index - .2byte 0xfffe - .byte \target_index - .byte 0 @ padding - .endm - - .macro obj_image_anim_end - .2byte 0xffff - .2byte 0 @ padding - .endm - - .macro obj_rot_scal_anim_frame delta_x_scale, delta_y_scale, delta_angle, duration - .2byte \delta_x_scale - .2byte \delta_y_scale - .byte \delta_angle - .byte \duration - .2byte 0 @ padding - .endm - - .macro obj_rot_scal_anim_loop count - .2byte 0x7ffd - .2byte \count - .4byte 0 @ padding - .endm - - .macro obj_rot_scal_anim_jump target_index - .2byte 0x7ffe - .2byte \target_index - .4byte 0 @ padding - .endm - - .macro obj_rot_scal_anim_end unknown=0 - .2byte 0x7fff - .2byte \unknown - .fill 4 @ padding - .endm - - .macro door_anim_frame unknown, offset - .byte \unknown - .byte 0 @ padding - .2byte \offset - .endm - - .macro door_anim_gfx metatile_num, unknown, unknown2, tile_addr, palette_addr - .2byte \metatile_num - .byte \unknown - .byte \unknown2 - .4byte \tile_addr - .4byte \palette_addr - .endm diff --git a/asm/macros/asm.inc b/asm/macros/asm.inc index 4ac003fabdb2..3f70145d319a 100644 --- a/asm/macros/asm.inc +++ b/asm/macros/asm.inc @@ -1,4 +1,4 @@ - .macro inc x + .macro inc x:req .set \x, \x + 1 .endm @@ -6,7 +6,7 @@ .set __enum__, \x .endm - .macro enum constant + .macro enum constant:req .equiv \constant, __enum__ inc __enum__ .endm diff --git a/asm/macros/field_effect_script.inc b/asm/macros/field_effect_script.inc index 597b89acbb16..2a1e2abeefda 100644 --- a/asm/macros/field_effect_script.inc +++ b/asm/macros/field_effect_script.inc @@ -1,19 +1,19 @@ - .macro field_eff_loadtiles address + .macro field_eff_loadtiles address:req .byte 0 .4byte \address .endm - .macro field_eff_loadfadedpal address + .macro field_eff_loadfadedpal address:req .byte 1 .4byte \address .endm - .macro field_eff_loadpal address + .macro field_eff_loadpal address:req .byte 2 .4byte \address .endm - .macro field_eff_callnative address + .macro field_eff_callnative address:req .byte 3 .4byte \address .endm @@ -22,20 +22,20 @@ .byte 4 .endm - .macro field_eff_loadgfx_callnative tiles_address, palette_address, function_address + .macro field_eff_loadgfx_callnative tiles_address:req, palette_address:req, function_address:req .byte 5 .4byte \tiles_address .4byte \palette_address .4byte \function_address .endm - .macro field_eff_loadtiles_callnative tiles_address, function_address + .macro field_eff_loadtiles_callnative tiles_address:req, function_address:req .byte 6 .4byte \tiles_address .4byte \function_address .endm - .macro field_eff_loadfadedpal_callnative palette_address, function_address + .macro field_eff_loadfadedpal_callnative palette_address:req, function_address:req .byte 7 .4byte \palette_address .4byte \function_address diff --git a/asm/macros/function.inc b/asm/macros/function.inc index b109595dfdcb..0f4e6720c9c5 100644 --- a/asm/macros/function.inc +++ b/asm/macros/function.inc @@ -1,15 +1,15 @@ - .macro arm_func_start name + .macro arm_func_start name:req .align 2, 0 .global \name .arm .type \name, %function .endm - .macro arm_func_end name + .macro arm_func_end name:req .size \name, .-\name .endm - .macro thumb_func_start name + .macro thumb_func_start name:req .align 2, 0 .global \name .thumb @@ -17,13 +17,13 @@ .type \name, %function .endm - .macro non_word_aligned_thumb_func_start name + .macro non_word_aligned_thumb_func_start name:req .global \name .thumb .thumb_func .type \name, %function .endm - .macro thumb_func_end name + .macro thumb_func_end name:req .size \name, .-\name .endm diff --git a/asm/macros/m4a.inc b/asm/macros/m4a.inc index 6c5abc09b5d8..3407c3f69261 100644 --- a/asm/macros/m4a.inc +++ b/asm/macros/m4a.inc @@ -1,13 +1,13 @@ - .macro song label, music_player, unknown + .macro song label:req, music_player:req, unknown:req .4byte \label .2byte \music_player .2byte \unknown .endm - .macro music_player info_struct, track_struct, unknown_1, unknown_2 + .macro music_player info_struct:req, track_struct:req, num_tracks:req, unknown:req .4byte \info_struct .4byte \track_struct - .byte \unknown_1 - .space 1 - .2byte \unknown_2 + .byte \num_tracks + .byte 0 @ Padding + .2byte \unknown .endm diff --git a/asm/macros/map.inc b/asm/macros/map.inc index 74ed069179d9..737a900066ed 100644 --- a/asm/macros/map.inc +++ b/asm/macros/map.inc @@ -1,78 +1,88 @@ - .macro map map_id + .macro map map_id:req .byte \map_id >> 8 @ map group .byte \map_id & 0xFF @ map num .endm - .macro map_script type, address + .macro map_script type:req, script:req .byte \type - .4byte \address + .4byte \script .endm - .macro map_script_2 word1, word2, address - .2byte \word1 - .2byte \word2 - .4byte \address + .macro map_script_2 var:req, compare:req, script:req + .2byte \var + .2byte \compare + .4byte \script .endm - .macro object_event index:req, gfx:req, replacement:req, x:req, y:req, elevation:req, movement_type:req, x_radius:req, y_radius:req, trainer_type:req, sight_radius_tree_etc:req, script:req, event_flag:req - .byte \index, \gfx, \replacement, 0 - .2byte \x - .2byte \y - .byte \elevation, \movement_type, ((\y_radius << 4) | \x_radius), 0 - .2byte \trainer_type, \sight_radius_tree_etc + .macro object_event index:req, gfx:req, inConnection:req, x:req, y:req, elevation:req, movement_type:req, x_radius:req, y_radius:req, trainer_type:req, sight_radius_tree_etc:req, script:req, event_flag:req + .byte \index + .byte \gfx + .byte \inConnection + .byte 0 @ Padding + .2byte \x, \y + .byte \elevation + .byte \movement_type + .byte ((\y_radius << 4) | \x_radius) + .byte 0 @ Padding + .2byte \trainer_type + .2byte \sight_radius_tree_etc .4byte \script .2byte \event_flag - .2byte 0 + .2byte 0 @ Padding inc _num_npcs .endm - .macro warp_def x, y, byte, warp, map_id + .macro warp_def x:req, y:req, elevation:req, warpId:req, map_id:req .2byte \x, \y - .byte \byte, \warp + .byte \elevation + .byte \warpId .byte \map_id & 0xFF @ map num .byte \map_id >> 8 @ map group inc _num_warps .endm - .macro coord_event x, y, elevation, trigger, index, script + .macro coord_event x:req, y:req, elevation:req, trigger:req, index:req, script:req .2byte \x, \y - .byte \elevation, 0 - .2byte \trigger, \index, 0 + .byte \elevation + .byte 0 @ Padding + .2byte \trigger + .2byte \index + .2byte 0 @ Padding .4byte \script inc _num_traps .endm - .macro coord_weather_event x, y, elevation, weather - .2byte \x, \y - .byte \elevation, 0 - .2byte \weather - .2byte 0, 0 - .4byte 0 - inc _num_traps + .macro coord_weather_event x:req, y:req, elevation:req, weather:req + coord_event \x, \y, \elevation, \weather, 0, NULL .endm - .macro bg_event x, y, elevation, kind, arg6, arg7 + .macro bg_event x:req, y:req, elevation:req, kind:req, arg6:req, arg7 .2byte \x, \y - .byte \elevation, \kind - .2byte 0 + .byte \elevation + .byte \kind + .2byte 0 @ Padding .if \kind != BG_EVENT_HIDDEN_ITEM - .4byte \arg6 + .4byte \arg6 .else - .2byte \arg6 - .2byte \arg7 + .2byte \arg6 + .2byte \arg7 .endif inc _num_signs .endm - .macro bg_hidden_item_event x, y, height, item, flag - bg_event \x, \y, \height, BG_EVENT_HIDDEN_ITEM, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START) + .macro bg_sign_event x:req, y:req, elevation:req, facing_dir:req, script:req + bg_event \x, \y, \elevation, \facing_dir, \script + .endm + + .macro bg_hidden_item_event x:req, y:req, elevation:req, item:req, flag:req + bg_event \x, \y, \elevation, BG_EVENT_HIDDEN_ITEM, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START) .endm - .macro bg_secret_base_event x, y, height, secret_base_id - bg_event \x, \y, \height, BG_EVENT_SECRET_BASE, \secret_base_id + .macro bg_secret_base_event x:req, y:req, elevation:req, secret_base_id:req + bg_event \x, \y, \elevation, BG_EVENT_SECRET_BASE, \secret_base_id .endm - .macro map_events npcs, warps, traps, signs + .macro map_events npcs:req, warps:req, traps:req, signs:req .byte _num_npcs, _num_warps, _num_traps, _num_signs .4byte \npcs, \warps, \traps, \signs reset_map_events @@ -88,14 +98,14 @@ reset_map_events - .equiv connection_down, 1 - .equiv connection_up, 2 - .equiv connection_left, 3 - .equiv connection_right, 4 - .equiv connection_dive, 5 - .equiv connection_emerge, 6 + .equiv connection_down, CONNECTION_SOUTH + .equiv connection_up, CONNECTION_NORTH + .equiv connection_left, CONNECTION_WEST + .equiv connection_right, CONNECTION_EAST + .equiv connection_dive, CONNECTION_DIVE + .equiv connection_emerge, CONNECTION_EMERGE - .macro connection direction, offset, map + .macro connection direction:req, offset:req, map:req .4byte connection_\direction .4byte \offset map \map diff --git a/asm/macros/pokemon_data.inc b/asm/macros/pokemon_data.inc deleted file mode 100644 index ce8ef98ac3c8..000000000000 --- a/asm/macros/pokemon_data.inc +++ /dev/null @@ -1,56 +0,0 @@ - .macro pokedex_entry height, width, text_pointer, pokemon_scale, pokemon_offset, trainer_scale, trainer_offset - .2byte \height @ in decimeters - .2byte \width @ in hectograms - .4byte \text_pointer - .2byte 0 @ unused - .2byte \pokemon_scale - .2byte \pokemon_offset - .2byte \trainer_scale - .2byte \trainer_offset - .2byte 0 @ padding - .endm - - .macro base_stats hp, attack, defense, speed, sp_attack, sp_defense - .byte \hp - .byte \attack - .byte \defense - .byte \speed - .byte \sp_attack - .byte \sp_defense - .endm - - .macro ev_yield hp, attack, defense, speed, sp_attack, sp_defense - .2byte (\sp_defense << 10) | (\sp_attack << 8) | (\speed << 6) | (\defense << 4) | (\attack << 2) | \hp - .endm - - .macro level_up_move level, move - .2byte (\level << 9) | \move - .endm - - .macro evo_entry method, parameter, target_species - .2byte \method - .2byte \parameter - .2byte \target_species - .2byte 0 @ padding - .endm - - .macro empty_evo_entries count - .fill 8 * \count, 1, 0 - .endm - - .macro egg_moves_begin species - .2byte 20000 + \species - .endm - -@ If the min level equals the max level, only one level argument is needed. - .macro wild_mon species, min_level, max_level - .byte \min_level - - .ifb \max_level - .byte \min_level - .else - .byte \max_level - .endif - - .2byte \species - .endm diff --git a/asm/macros/window.inc b/asm/macros/window.inc deleted file mode 100644 index a91782bbf81f..000000000000 --- a/asm/macros/window.inc +++ /dev/null @@ -1,35 +0,0 @@ - .macro window_template bg_id, x, y, width, height, palette, vram_tile_offset - .byte \bg_id - .byte \x - .byte \y - .byte \width - .byte \height - .byte \palette - .2byte \vram_tile_offset - .endm - - .macro null_window_template - window_template 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0000 - .endm - - .macro glyph_width_func font_id, func - .4byte \font_id - .4byte \func - .endm - - .macro keypad_icon tile_offset, width, height - .2byte \tile_offset - .byte \width - .byte \height - .endm - - .macro font_info func, max_glyph_width, glyph_height, glyph_spacing, line_spacing, text_color, shadow_color, bg_color - .4byte \func - .byte \max_glyph_width - .byte \glyph_height - .byte \glyph_spacing - .byte \line_spacing - .byte \text_color << 4 @ low nybble seems unused - .byte (\shadow_color << 4) | \bg_color - .2byte 0 @ padding - .endm diff --git a/data/map_events.s b/data/map_events.s index dcbb9cfb17c7..cfa5799d37c0 100644 --- a/data/map_events.s +++ b/data/map_events.s @@ -1,3 +1,4 @@ +#include "constants/global.h" #include "constants/event_bg.h" #include "constants/event_object_movement.h" #include "constants/event_objects.h" diff --git a/data/maps.s b/data/maps.s index beb28ddec87f..9d9ac2101cb9 100644 --- a/data/maps.s +++ b/data/maps.s @@ -1,3 +1,4 @@ +#include "constants/global.h" #include "constants/layouts.h" #include "constants/map_types.h" #include "constants/maps.h" diff --git a/include/constants/global.h b/include/constants/global.h index 48b03b5ccbf8..096094220d6b 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -138,4 +138,13 @@ #define DIR_NORTHWEST 7 #define DIR_NORTHEAST 8 +#define CONNECTION_INVALID -1 +#define CONNECTION_NONE 0 +#define CONNECTION_SOUTH 1 +#define CONNECTION_NORTH 2 +#define CONNECTION_WEST 3 +#define CONNECTION_EAST 4 +#define CONNECTION_DIVE 5 +#define CONNECTION_EMERGE 6 + #endif // GUARD_CONSTANTS_GLOBAL_H diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index eeb79391b504..a057c2da61e1 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -349,7 +349,7 @@ struct MusicPlayer { struct MusicPlayerInfo *info; struct MusicPlayerTrack *track; - u8 unk_8; + u8 numTracks; u16 unk_A; }; diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 33be942c8092..cb00343f8f8d 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -16,18 +16,6 @@ // for constructing large tiles, such as the Battle Pike's curtain tile. #define METATILE_ROW_WIDTH 8 -enum -{ - CONNECTION_INVALID = -1, - CONNECTION_NONE, - CONNECTION_SOUTH, - CONNECTION_NORTH, - CONNECTION_WEST, - CONNECTION_EAST, - CONNECTION_DIVE, - CONNECTION_EMERGE -}; - typedef void (*TilesetCB)(void); struct Tileset diff --git a/src/m4a.c b/src/m4a.c index b159e3873d1e..faeef83e79aa 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -83,7 +83,7 @@ void m4aSoundInit(void) for (i = 0; i < NUM_MUSIC_PLAYERS; i++) { struct MusicPlayerInfo *mplayInfo = gMPlayTable[i].info; - MPlayOpen(mplayInfo, gMPlayTable[i].track, gMPlayTable[i].unk_8); + MPlayOpen(mplayInfo, gMPlayTable[i].track, gMPlayTable[i].numTracks); mplayInfo->unk_B = gMPlayTable[i].unk_A; mplayInfo->memAccArea = gMPlayMemAccArea; } diff --git a/tools/mapjson/mapjson.cpp b/tools/mapjson/mapjson.cpp index d767b469e9cc..3eab98f2bed9 100644 --- a/tools/mapjson/mapjson.cpp +++ b/tools/mapjson/mapjson.cpp @@ -230,7 +230,7 @@ string generate_map_events_text(Json map_data) { text << bgs_label << ":\n"; for (auto &bg_event : map_data["bg_events"].array_items()) { if (bg_event["type"] == "sign") { - text << "\tbg_event " + text << "\tbg_sign_event " << bg_event["x"].int_value() << ", " << bg_event["y"].int_value() << ", " << bg_event["elevation"].int_value() << ", " From dc7d86f026c01682bd024fabb0ce206eacb81c35 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 23 Jan 2022 19:26:22 -0500 Subject: [PATCH 535/762] Add new macro comments --- asm/macros/field_effect_script.inc | 2 ++ asm/macros/m4a.inc | 2 +- asm/macros/map.inc | 39 ++++++++++++++++++++++++------ 3 files changed, 34 insertions(+), 9 deletions(-) diff --git a/asm/macros/field_effect_script.inc b/asm/macros/field_effect_script.inc index 2a1e2abeefda..38f7e31750e1 100644 --- a/asm/macros/field_effect_script.inc +++ b/asm/macros/field_effect_script.inc @@ -1,3 +1,5 @@ +@ The first .byte argument of each macro below is an index into gFieldEffectScriptFuncs + .macro field_eff_loadtiles address:req .byte 0 .4byte \address diff --git a/asm/macros/m4a.inc b/asm/macros/m4a.inc index 3407c3f69261..b22da3d63470 100644 --- a/asm/macros/m4a.inc +++ b/asm/macros/m4a.inc @@ -8,6 +8,6 @@ .4byte \info_struct .4byte \track_struct .byte \num_tracks - .byte 0 @ Padding + .space 1 @ Padding .2byte \unknown .endm diff --git a/asm/macros/map.inc b/asm/macros/map.inc index 737a900066ed..662257e41694 100644 --- a/asm/macros/map.inc +++ b/asm/macros/map.inc @@ -1,37 +1,44 @@ +@ Most of the macros in this file are for arranging map event data, and are output by mapjson using data from each map's JSON file. + + @ Takes a MAP constant and outputs the map group and map number as separate bytes .macro map map_id:req .byte \map_id >> 8 @ map group .byte \map_id & 0xFF @ map num .endm + @ Defines a map script. 'type' is any MAP_SCRIPT_* constant (see include/constants/map_scripts.h) .macro map_script type:req, script:req .byte \type .4byte \script .endm + @ Defines an entry in a map script table (for either ON_WARP_INTO_MAP_TABLE or ON_FRAME_TABLE) .macro map_script_2 var:req, compare:req, script:req .2byte \var .2byte \compare .4byte \script .endm + @ Defines an object event template for map data. Mirrors the struct layout of ObjectEventTemplate in include/global.fieldmap.h .macro object_event index:req, gfx:req, inConnection:req, x:req, y:req, elevation:req, movement_type:req, x_radius:req, y_radius:req, trainer_type:req, sight_radius_tree_etc:req, script:req, event_flag:req .byte \index .byte \gfx .byte \inConnection - .byte 0 @ Padding + .space 1 @ Padding .2byte \x, \y .byte \elevation .byte \movement_type .byte ((\y_radius << 4) | \x_radius) - .byte 0 @ Padding + .space 1 @ Padding .2byte \trainer_type .2byte \sight_radius_tree_etc .4byte \script .2byte \event_flag - .2byte 0 @ Padding + .space 2 @ Padding inc _num_npcs .endm + @ Defines a warp event for map data. Mirrors the struct layout of WarpEvent in include/global.fieldmap.h .macro warp_def x:req, y:req, elevation:req, warpId:req, map_id:req .2byte \x, \y .byte \elevation @@ -41,26 +48,31 @@ inc _num_warps .endm + @ Defines a coord event for map data. Mirrors the struct layout of CoordEvent in include/global.fieldmap.h .macro coord_event x:req, y:req, elevation:req, trigger:req, index:req, script:req .2byte \x, \y .byte \elevation - .byte 0 @ Padding + .space 1 @ Padding .2byte \trigger .2byte \index - .2byte 0 @ Padding + .space 2 @ Padding .4byte \script inc _num_traps .endm + @ Defines a weather coord event for map data. Any coord event is treated as a weather coord event if its script is NULL .macro coord_weather_event x:req, y:req, elevation:req, weather:req coord_event \x, \y, \elevation, \weather, 0, NULL .endm + @ Defines a generic background event for map data. Mirrors the struct layout of BgEvent in include/global.fieldmap.h + @ 'kind' is any BG_EVENT_* constant (see include/constants/event_bg.h). + @ 'arg6' and 'arg7' are used differently depending on the bg event type. See macros below .macro bg_event x:req, y:req, elevation:req, kind:req, arg6:req, arg7 .2byte \x, \y .byte \elevation .byte \kind - .2byte 0 @ Padding + .space 2 @ Padding .if \kind != BG_EVENT_HIDDEN_ITEM .4byte \arg6 .else @@ -70,24 +82,29 @@ inc _num_signs .endm + @ Defines a background sign event for map data. 'facing_dir' is any of the BG_EVENT_PLAYER_FACING_* constants (see include/constants/event_bg.h) .macro bg_sign_event x:req, y:req, elevation:req, facing_dir:req, script:req bg_event \x, \y, \elevation, \facing_dir, \script .endm + @ Defines a background hidden item event for map data .macro bg_hidden_item_event x:req, y:req, elevation:req, item:req, flag:req bg_event \x, \y, \elevation, BG_EVENT_HIDDEN_ITEM, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START) .endm + @ Defines a background secret base event for map data .macro bg_secret_base_event x:req, y:req, elevation:req, secret_base_id:req bg_event \x, \y, \elevation, BG_EVENT_SECRET_BASE, \secret_base_id .endm + @ Defines the table of event data for a map. Mirrors the struct layout of MapEvents in include/global.fieldmap.h .macro map_events npcs:req, warps:req, traps:req, signs:req .byte _num_npcs, _num_warps, _num_traps, _num_signs .4byte \npcs, \warps, \traps, \signs reset_map_events .endm + @ Resets the event counters used to track how many events a map has. Run when the events table is created by map_events .macro reset_map_events .set _num_npcs, 0 .set _num_warps, 0 @@ -95,9 +112,12 @@ .set _num_signs, 0 .endm + @ Initialize the event counters for the first map reset_map_events + @ Directions for connecting maps + @ The map.json files will only have e.g. "down" as direction data, and this will be appended to "connection_" by the connection macro .equiv connection_down, CONNECTION_SOUTH .equiv connection_up, CONNECTION_NORTH .equiv connection_left, CONNECTION_WEST @@ -105,13 +125,16 @@ .equiv connection_dive, CONNECTION_DIVE .equiv connection_emerge, CONNECTION_EMERGE + @ Defines a map connection. Mirrors the struct layout of MapConnection in include/global.fieldmap.h .macro connection direction:req, offset:req, map:req - .4byte connection_\direction + .byte connection_\direction + .space 3 @ Padding .4byte \offset map \map - .space 2 + .space 2 @ Padding .endm + @ Defines the flags for a map header. Mirrors the layout of the bitfield in struct MapHeader in include/global.fieldmap.h .macro map_header_flags allow_cycling:req, allow_escaping:req, allow_running:req, show_map_name:req .byte ((\show_map_name & 1) << 3) | ((\allow_running & 1) << 2) | ((\allow_escaping & 1) << 1) | \allow_cycling .endm From 6470b0d0044c0db27f53a10dede99db7bf51a9fd Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 26 Jan 2022 18:36:21 -0300 Subject: [PATCH 536/762] Used ball constants in gBallSpriteTemplates --- src/pokeball.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/pokeball.c b/src/pokeball.c index 0250a0c5ba97..a9ccd42d6076 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -204,6 +204,7 @@ static const union AffineAnimCmd *const sAffineAnim_BallRotate[] = const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = { + [BALL_POKE] = { .tileTag = GFX_TAG_POKEBALL, .paletteTag = GFX_TAG_POKEBALL, @@ -213,6 +214,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_GREAT] = { .tileTag = GFX_TAG_GREATBALL, .paletteTag = GFX_TAG_GREATBALL, @@ -222,6 +224,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_SAFARI] = { .tileTag = GFX_TAG_SAFARIBALL, .paletteTag = GFX_TAG_SAFARIBALL, @@ -231,6 +234,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_ULTRA] = { .tileTag = GFX_TAG_ULTRABALL, .paletteTag = GFX_TAG_ULTRABALL, @@ -240,6 +244,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_MASTER] = { .tileTag = GFX_TAG_MASTERBALL, .paletteTag = GFX_TAG_MASTERBALL, @@ -249,6 +254,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_NET] = { .tileTag = GFX_TAG_NETBALL, .paletteTag = GFX_TAG_NETBALL, @@ -258,6 +264,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_DIVE] = { .tileTag = GFX_TAG_DIVEBALL, .paletteTag = GFX_TAG_DIVEBALL, @@ -267,6 +274,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_NEST] = { .tileTag = GFX_TAG_NESTBALL, .paletteTag = GFX_TAG_NESTBALL, @@ -276,6 +284,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_REPEAT] = { .tileTag = GFX_TAG_REPEATBALL, .paletteTag = GFX_TAG_REPEATBALL, @@ -285,6 +294,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_TIMER] = { .tileTag = GFX_TAG_TIMERBALL, .paletteTag = GFX_TAG_TIMERBALL, @@ -294,6 +304,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_LUXURY] = { .tileTag = GFX_TAG_LUXURYBALL, .paletteTag = GFX_TAG_LUXURYBALL, @@ -303,6 +314,7 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = .affineAnims = sAffineAnim_BallRotate, .callback = SpriteCB_BallThrow, }, + [BALL_PREMIER] = { .tileTag = GFX_TAG_PREMIERBALL, .paletteTag = GFX_TAG_PREMIERBALL, From e30b16f0fd1c5e7b81e5ca62064869fa036e5a58 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 26 Jan 2022 21:50:15 -0500 Subject: [PATCH 537/762] Fix Swap_HandleQuitSwappingResposne typo --- src/battle_factory_screen.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 247b8712fe92..787dc474061a 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -2509,7 +2509,7 @@ static void Swap_Task_HandleYesNo(u8 taskId) } } -static void Swap_HandleQuitSwappingResposne(u8 taskId) +static void Swap_HandleQuitSwappingResponse(u8 taskId) { if (gTasks[taskId].tSaidYes == TRUE) { @@ -2533,8 +2533,8 @@ static void Swap_AskQuitSwapping(u8 taskId) Swap_PrintOnInfoWindow(gText_QuitSwapping); sFactorySwapScreen->monSwapped = FALSE; gTasks[taskId].tState = STATE_YESNO_SHOW; - gTasks[taskId].tFollowUpTaskPtrHi = (u32)(Swap_HandleQuitSwappingResposne) >> 16; - gTasks[taskId].tFollowUpTaskPtrLo = (u32)(Swap_HandleQuitSwappingResposne); + gTasks[taskId].tFollowUpTaskPtrHi = (u32)(Swap_HandleQuitSwappingResponse) >> 16; + gTasks[taskId].tFollowUpTaskPtrLo = (u32)(Swap_HandleQuitSwappingResponse); gTasks[taskId].func = Swap_Task_HandleYesNo; } } From 1ff0b0efa96180a774273a4c222a805237e6e7c6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 29 Jan 2022 21:13:46 -0500 Subject: [PATCH 538/762] Add missing collision constant usage --- src/event_object_movement.c | 12 ++++++------ src/trainer_see.c | 5 ++--- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 4bd8d5603585..df79a1d62ad1 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -4630,7 +4630,7 @@ u8 GetCollisionAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u32 dir) u8 direction = dir; if (IsCoordOutsideObjectEventMovementRange(objectEvent, x, y)) return COLLISION_OUTSIDE_RANGE; - else if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == -1 || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction)) + else if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction)) return COLLISION_IMPASSABLE; else if (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction)) return COLLISION_IMPASSABLE; @@ -4646,13 +4646,13 @@ u8 GetCollisionFlagsAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 d u8 flags = 0; if (IsCoordOutsideObjectEventMovementRange(objectEvent, x, y)) - flags |= 1; - if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == -1 || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction) || (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction))) - flags |= 2; + flags |= 1 << (COLLISION_OUTSIDE_RANGE - 1); + if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction) || (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction))) + flags |= 1 << (COLLISION_IMPASSABLE - 1); if (IsElevationMismatchAt(objectEvent->currentElevation, x, y)) - flags |= 4; + flags |= 1 << (COLLISION_ELEVATION_MISMATCH - 1); if (DoesObjectCollideWithObjectAt(objectEvent, x, y)) - flags |= 8; + flags |= 1 << (COLLISION_OBJECT_EVENT - 1); return flags; } diff --git a/src/trainer_see.c b/src/trainer_see.c index 07021a316a71..dc6c3b9177a7 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -367,8 +367,6 @@ static u8 GetTrainerApproachDistanceEast(struct ObjectEvent *trainerObj, s16 ran return 0; } -#define COLLISION_MASK (~1) - static u8 CheckPathBetweenTrainerAndPlayer(struct ObjectEvent *trainerObj, u8 approachDistance, u8 direction) { s16 x, y; @@ -385,8 +383,9 @@ static u8 CheckPathBetweenTrainerAndPlayer(struct ObjectEvent *trainerObj, u8 ap MoveCoords(direction, &x, &y); for (i = 0; i < approachDistance - 1; i++, MoveCoords(direction, &x, &y)) { + // Check for collisions on approach, ignoring the "out of range" collision for regular movement collision = GetCollisionFlagsAtCoords(trainerObj, x, y, direction); - if (collision != 0 && (collision & COLLISION_MASK)) + if (collision != 0 && (collision & ~(1 << (COLLISION_OUTSIDE_RANGE - 1)))) return 0; } From a86a279184ce1013ca0b41a079419192ac07e736 Mon Sep 17 00:00:00 2001 From: kiliwily <69381603+kiliwily@users.noreply.github.com> Date: Sun, 6 Feb 2022 16:25:56 +0100 Subject: [PATCH 539/762] Update money.c --- src/money.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/money.c b/src/money.c index 592ce9f75325..5723974a8300 100644 --- a/src/money.c +++ b/src/money.c @@ -132,7 +132,7 @@ void SubtractMoneyFromVar0x8005(void) void PrintMoneyAmountInMoneyBox(u8 windowId, int amount, u8 speed) { - PrintMoneyAmount(windowId, 0x26, 1, amount, speed); + PrintMoneyAmount(windowId, 38, 1, amount, speed); } void PrintMoneyAmount(u8 windowId, u8 x, u8 y, int amount, u8 speed) From 7ddb9cb84cbc67d4a5a34e480f9648a55fc16163 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 14 Feb 2022 17:34:01 -0500 Subject: [PATCH 540/762] Add missing direction constant usage --- src/item_use.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/item_use.c b/src/item_use.c index c9a7fe1c7bf0..c03ede61bd22 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -403,25 +403,25 @@ static bool8 IsHiddenItemPresentInConnection(struct MapConnection *connection, i switch (connection->direction) { // same weird temp variable behavior seen in IsHiddenItemPresentAtCoords - case 2: + 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 break; - case 1: + case CONNECTION_SOUTH: localOffset = connection->offset + MAP_OFFSET; localX = x - localOffset; localLength = gMapHeader.mapLayout->height + MAP_OFFSET; localY = y - localLength; break; - case 3: + 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; break; - case 4: + case CONNECTION_EAST: localLength = gMapHeader.mapLayout->width + MAP_OFFSET; localX = x - localLength; localOffset = connection->offset + MAP_OFFSET; From 49eca609552f0dc981b656345e94f62b4cc08b52 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 15 Feb 2022 16:04:51 -0500 Subject: [PATCH 541/762] Convert party menu slots to bin files --- graphics/party_menu/slot_main.bin | 1 + graphics/party_menu/slot_main_egg.bin | 1 + graphics/party_menu/slot_wide.bin | 1 + graphics/party_menu/slot_wide_egg.bin | 1 + graphics/party_menu/slot_wide_empty.bin | Bin 0 -> 54 bytes src/data/party_menu.h | 36 ++++++------------------ src/party_menu.c | 10 +++---- 7 files changed, 17 insertions(+), 33 deletions(-) create mode 100755 graphics/party_menu/slot_main.bin create mode 100755 graphics/party_menu/slot_main_egg.bin create mode 100755 graphics/party_menu/slot_wide.bin create mode 100755 graphics/party_menu/slot_wide_egg.bin create mode 100755 graphics/party_menu/slot_wide_empty.bin diff --git a/graphics/party_menu/slot_main.bin b/graphics/party_menu/slot_main.bin new file mode 100755 index 000000000000..2f3e729f6d59 --- /dev/null +++ b/graphics/party_menu/slot_main.bin @@ -0,0 +1 @@ + !!!!!!!!" !!!!!!!!" !!!!!!!!"(;<::::::=.////////0 \ No newline at end of file diff --git a/graphics/party_menu/slot_main_egg.bin b/graphics/party_menu/slot_main_egg.bin new file mode 100755 index 000000000000..653ad1a64b6e --- /dev/null +++ b/graphics/party_menu/slot_main_egg.bin @@ -0,0 +1 @@ + !!!!!!!!" !!!!!!!!" !!!!!!!!"())))))))*.////////0 \ No newline at end of file diff --git a/graphics/party_menu/slot_wide.bin b/graphics/party_menu/slot_wide.bin new file mode 100755 index 000000000000..c88b73bf78b0 --- /dev/null +++ b/graphics/party_menu/slot_wide.bin @@ -0,0 +1 @@ ++,,,,,,,,,,,,,,,,-1!!!!!!!!453333336788888888888888889 \ No newline at end of file diff --git a/graphics/party_menu/slot_wide_egg.bin b/graphics/party_menu/slot_wide_egg.bin new file mode 100755 index 000000000000..8f662da0ae55 --- /dev/null +++ b/graphics/party_menu/slot_wide_egg.bin @@ -0,0 +1 @@ ++,,,,,,,,,,,,,,,,-1!!!!!!!!!!!!!!!!2788888888888888889 \ No newline at end of file diff --git a/graphics/party_menu/slot_wide_empty.bin b/graphics/party_menu/slot_wide_empty.bin new file mode 100755 index 0000000000000000000000000000000000000000..3592178b3fc0a6256883b968542bb851d2cb2f42 GIT binary patch literal 54 VcmWd?Lj&S+3}`@JRSgZO0{~`S1a<%b literal 0 HcmV?d00001 diff --git a/src/data/party_menu.h b/src/data/party_menu.h index f8093a9b6b62..e462f95c0c18 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -571,34 +571,14 @@ static const struct WindowTemplate sUnusedWindowTemplate2 = .baseBlock = 0x39D, }; -// Tile nums -static const u8 sMainSlotTileNums[] = {24, 25, 25, 25, 25, 25, 25, 25, 25, 26, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 40, 59, 60, 58, 58, 58, 58, 58, 58, 61, - 15, 16, 16, 16, 16, 16, 16, 16, 16, 17, - 46, 47, 47, 47, 47, 47, 47, 47, 47, 48}; - -static const u8 sMainSlotTileNums_Egg[] = {24, 25, 25, 25, 25, 25, 25, 25, 25, 26, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 32, 33, 33, 33, 33, 33, 33, 33, 33, 34, - 40, 41, 41, 41, 41, 41, 41, 41, 41, 42, - 15, 16, 16, 16, 16, 16, 16, 16, 16, 17, - 46, 47, 47, 47, 47, 47, 47, 47, 47, 48}; - -static const u8 sOtherSlotsTileNums[] = {43, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 45, - 49, 33, 33, 33, 33, 33, 33, 33, 33, 52, 53, 51, 51, 51, 51, 51, 51, 54, - 55, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 57}; - -static const u8 sOtherSlotsTileNums_Egg[] = {43, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 45, - 49, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 50, - 55, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 57}; - -static const u8 sEmptySlotTileNums[] = {21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, - 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, - 37, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 39}; +// Plain tilemaps for party menu slots. +// The difference between the egg and regular versions is the lack of an HP bar. +// There is no empty version of the main slot because it shouldn't ever be empty. +static const u8 sSlotTilemap_Main[] = INCBIN_U8("graphics/party_menu/slot_main.bin"); +static const u8 sSlotTilemap_MainEgg[] = INCBIN_U8("graphics/party_menu/slot_main_egg.bin"); +static const u8 sSlotTilemap_Wide[] = INCBIN_U8("graphics/party_menu/slot_wide.bin"); +static const u8 sSlotTilemap_WideEgg[] = INCBIN_U8("graphics/party_menu/slot_wide_egg.bin"); +static const u8 sSlotTilemap_WideEmpty[] = INCBIN_U8("graphics/party_menu/slot_wide_empty.bin"); // Palette offsets static const u8 sGenderPalOffsets[] = {11, 12}; diff --git a/src/party_menu.c b/src/party_menu.c index 36e83a168e5a..2557d31ee515 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2094,9 +2094,9 @@ static void BlitBitmapToPartyWindow_LeftColumn(u8 windowId, u8 x, u8 y, u8 width height = 7; } if (isEgg == FALSE) - BlitBitmapToPartyWindow(windowId, sMainSlotTileNums, 10, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_Main, 10, x, y, width, height); else - BlitBitmapToPartyWindow(windowId, sMainSlotTileNums_Egg, 10, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_MainEgg, 10, x, y, width, height); } static void BlitBitmapToPartyWindow_RightColumn(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 isEgg) @@ -2107,14 +2107,14 @@ static void BlitBitmapToPartyWindow_RightColumn(u8 windowId, u8 x, u8 y, u8 widt height = 3; } if (isEgg == FALSE) - BlitBitmapToPartyWindow(windowId, sOtherSlotsTileNums, 18, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_Wide, 18, x, y, width, height); else - BlitBitmapToPartyWindow(windowId, sOtherSlotsTileNums_Egg, 18, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEgg, 18, x, y, width, height); } static void DrawEmptySlot(u8 windowId) { - BlitBitmapToPartyWindow(windowId, sEmptySlotTileNums, 18, 0, 0, 18, 3); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEmpty, 18, 0, 0, 18, 3); } #define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \ From 131ed1916ec66009ad52b3dce9cd2d7e056a19e6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 15 Feb 2022 16:24:19 -0500 Subject: [PATCH 542/762] Generalize name of party slot without HP --- .../{slot_main_egg.bin => slot_main_no_hp.bin} | 0 .../{slot_wide_egg.bin => slot_wide_no_hp.bin} | 0 src/data/party_menu.h | 6 +++--- src/party_menu.c | 18 +++++++++--------- 4 files changed, 12 insertions(+), 12 deletions(-) rename graphics/party_menu/{slot_main_egg.bin => slot_main_no_hp.bin} (100%) rename graphics/party_menu/{slot_wide_egg.bin => slot_wide_no_hp.bin} (100%) diff --git a/graphics/party_menu/slot_main_egg.bin b/graphics/party_menu/slot_main_no_hp.bin similarity index 100% rename from graphics/party_menu/slot_main_egg.bin rename to graphics/party_menu/slot_main_no_hp.bin diff --git a/graphics/party_menu/slot_wide_egg.bin b/graphics/party_menu/slot_wide_no_hp.bin similarity index 100% rename from graphics/party_menu/slot_wide_egg.bin rename to graphics/party_menu/slot_wide_no_hp.bin diff --git a/src/data/party_menu.h b/src/data/party_menu.h index e462f95c0c18..7735dae58dc5 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -572,12 +572,12 @@ static const struct WindowTemplate sUnusedWindowTemplate2 = }; // Plain tilemaps for party menu slots. -// The difference between the egg and regular versions is the lack of an HP bar. +// The versions with no HP bar are used by eggs, and in certain displays like registering at a battle facility. // There is no empty version of the main slot because it shouldn't ever be empty. static const u8 sSlotTilemap_Main[] = INCBIN_U8("graphics/party_menu/slot_main.bin"); -static const u8 sSlotTilemap_MainEgg[] = INCBIN_U8("graphics/party_menu/slot_main_egg.bin"); +static const u8 sSlotTilemap_MainNoHP[] = INCBIN_U8("graphics/party_menu/slot_main_no_hp.bin"); static const u8 sSlotTilemap_Wide[] = INCBIN_U8("graphics/party_menu/slot_wide.bin"); -static const u8 sSlotTilemap_WideEgg[] = INCBIN_U8("graphics/party_menu/slot_wide_egg.bin"); +static const u8 sSlotTilemap_WideNoHP[] = INCBIN_U8("graphics/party_menu/slot_wide_no_hp.bin"); static const u8 sSlotTilemap_WideEmpty[] = INCBIN_U8("graphics/party_menu/slot_wide_empty.bin"); // Palette offsets diff --git a/src/party_menu.c b/src/party_menu.c index 2557d31ee515..e15d001c6d22 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -97,7 +97,7 @@ enum struct PartyMenuBoxInfoRects { - void (*blitFunc)(u8, u8, u8, u8, u8, u8); + void (*blitFunc)(u8, u8, u8, u8, u8, bool8); u8 dimensions[24]; u8 descTextLeft; u8 descTextTop; @@ -377,8 +377,8 @@ static void Task_ChooseMonForMoveRelearner(u8); static void CB2_ChooseMonForMoveRelearner(void); static void Task_BattlePyramidChooseMonHeldItems(u8); static void ShiftMoveSlot(struct Pokemon*, u8, u8); -static void BlitBitmapToPartyWindow_LeftColumn(u8, u8, u8, u8, u8, u8); -static void BlitBitmapToPartyWindow_RightColumn(u8, u8, u8, u8, u8, u8); +static void BlitBitmapToPartyWindow_LeftColumn(u8, u8, u8, u8, u8, bool8); +static void BlitBitmapToPartyWindow_RightColumn(u8, u8, u8, u8, u8, bool8); static void CursorCb_Summary(u8); static void CursorCb_Switch(u8); static void CursorCb_Cancel1(u8); @@ -2086,30 +2086,30 @@ static void BlitBitmapToPartyWindow(u8 windowId, const u8 *b, u8 c, u8 x, u8 y, } } -static void BlitBitmapToPartyWindow_LeftColumn(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 isEgg) +static void BlitBitmapToPartyWindow_LeftColumn(u8 windowId, u8 x, u8 y, u8 width, u8 height, bool8 hideHP) { if (width == 0 && height == 0) { width = 10; height = 7; } - if (isEgg == FALSE) + if (hideHP == FALSE) BlitBitmapToPartyWindow(windowId, sSlotTilemap_Main, 10, x, y, width, height); else - BlitBitmapToPartyWindow(windowId, sSlotTilemap_MainEgg, 10, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_MainNoHP, 10, x, y, width, height); } -static void BlitBitmapToPartyWindow_RightColumn(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 isEgg) +static void BlitBitmapToPartyWindow_RightColumn(u8 windowId, u8 x, u8 y, u8 width, u8 height, bool8 hideHP) { if (width == 0 && height == 0) { width = 18; height = 3; } - if (isEgg == FALSE) + if (hideHP == FALSE) BlitBitmapToPartyWindow(windowId, sSlotTilemap_Wide, 18, x, y, width, height); else - BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEgg, 18, x, y, width, height); + BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideNoHP, 18, x, y, width, height); } static void DrawEmptySlot(u8 windowId) From 0710a5467b88c7d927cb0cb20acf455707ac141a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 15 Feb 2022 21:55:51 -0500 Subject: [PATCH 543/762] Add some missing RGB constant usage --- data/battle_anim_scripts.s | 62 +++++++++++++++++++------------------- src/evolution_graphics.c | 10 +++--- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 7e970ed176b6..1cfc5230c09a 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -763,7 +763,7 @@ Move_TAKE_DOWN: setalpha 12, 8 createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10 delay 35 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 4, -10, 0, ANIM_TARGET, 0 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET delay 1 @@ -783,7 +783,7 @@ Move_TAKE_DOWN: Move_DOUBLE_EDGE: loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 4, 2, RGB_WHITE, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 4, 2, RGB_WHITE, 10, RGB_BLACK, 0 waitforvisualfinish delay 10 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER @@ -951,7 +951,7 @@ Move_MEGA_PUNCH: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -995,7 +995,7 @@ Move_MEGA_KICK: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -1247,7 +1247,7 @@ Move_REVERSAL: loadspritegfx ANIM_TAG_HANDS_AND_FEET loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB_WHITE, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB_WHITE, 8, RGB_BLACK, 0 waitforvisualfinish delay 30 createvisualtask AnimTask_BlendColorCycle, 2, 31, 3, 2, 0, 10, RGB_WHITE @@ -1264,7 +1264,7 @@ Move_REVERSAL: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 8 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 8, RGB_BLACK, 0 createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 10, 1, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 5, FALSE, 1, 8, 1, 0 @@ -1446,13 +1446,13 @@ FuryCutterRight: createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 1 goto FuryCutterContinue FuryCutterMedium: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(9, 8, 10), 4, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 FuryCutterStrong: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 FuryCutterStrongest: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 Move_SELF_DESTRUCT: @@ -1623,7 +1623,7 @@ RisingWaterHitEffect: Move_EXPLOSION: loadspritegfx ANIM_TAG_EXPLOSION - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 9, RGB(26, 8, 8), 8, 0, 8 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 9, RGB(26, 8, 8), 8, RGB_BLACK, 8 createvisualtask AnimTask_ShakeMon2, 5, 4, 8, 0, 40, 1 createvisualtask AnimTask_ShakeMon2, 5, 5, 8, 0, 40, 1 createvisualtask AnimTask_ShakeMon2, 5, 6, 8, 0, 40, 1 @@ -1870,7 +1870,7 @@ Move_GUILLOTINE: delay 46 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 8, 1 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -2601,9 +2601,9 @@ Move_EARTHQUAKE: createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 playsewithpan SE_M_EARTHQUAKE, 0 delay 10 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 16 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 end Move_FISSURE: @@ -2614,11 +2614,11 @@ Move_FISSURE: delay 8 call FissureDirtPlumeFar delay 15 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 15 call FissureDirtPlumeClose delay 15 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 15 call FissureDirtPlumeFar delay 50 @@ -2846,7 +2846,7 @@ SkullBashAttack: playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER waitforvisualfinish playse SE_BANG - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1 createsprite gFlashingHitSplatSpriteTemplate, ANIM_TARGET, 4, 0, 0, ANIM_TARGET, 0 @@ -3025,7 +3025,7 @@ Move_SUPER_FANG: createsprite gSuperFangSpriteTemplate, ANIM_TARGET, 2 playsewithpan SE_M_BITE, SOUND_PAN_TARGET delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB(31, 2, 2), 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB(31, 2, 2), 14, RGB_WHITE, 14 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 7, 12, 1 waitforvisualfinish blendoff @@ -3332,9 +3332,9 @@ MagnitudeIntense: createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 0, 50 loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 10 delay 10 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 16 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 goto MagnitudeEnd Move_RAPID_SPIN: @@ -3955,7 +3955,7 @@ Move_MIST_BALL: waitforvisualfinish playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 10, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 1, 1, RGB(23, 16, 31), 16, 0x7FFF, 16 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16 delay 0 playsewithpan SE_M_HAZE, 0 createvisualtask AnimTask_LoadMistTiles, 5 @@ -4223,7 +4223,7 @@ Move_ODOR_SLEUTH: waitforvisualfinish clearmonbg ANIM_TARGET delay 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_WHITEALPHA, 16, -1, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_WHITEALPHA, 16, RGB_WHITEALPHA, 0 playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER end @@ -4351,7 +4351,7 @@ Move_AERIAL_ACE: playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -4361,7 +4361,7 @@ Move_AERIAL_ACE: Move_IRON_DEFENSE: loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER, 28, 2 createvisualtask AnimTask_MetallicShine, 5, 0, 0, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 2, RGB_WHITEALPHA, 14, -1, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 2, RGB_WHITEALPHA, 14, RGB_WHITEALPHA, 0 waitforvisualfinish end @@ -5665,7 +5665,7 @@ Move_SIGNAL_BEAM: call SignalBeamOrbs call SignalBeamOrbs createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 25, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 4, 8, 5, RGB_RED, 8, 961, 8 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 4, 8, 5, RGB_RED, 8, RGB(1, 30, 0), 8 call SignalBeamOrbs call SignalBeamOrbs call SignalBeamOrbs @@ -6060,7 +6060,7 @@ Move_BONE_CLUB: delay 12 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_BLACK, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_BLACK, 10, RGB_BLACK, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -6124,7 +6124,7 @@ MegahornContinue: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -16, 4, 1, 4 waitforvisualfinish createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, -4, 1, 12, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_WHITE, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 delay 10 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 11 delay 3 @@ -6266,7 +6266,7 @@ Move_CRABHAMMER: createsprite gWaterHitSplatSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, ANIM_TARGET, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(13, 21, 31), 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(13, 21, 31), 10, RGB_BLACK, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -24, 0, 0, 4 waitforvisualfinish delay 8 @@ -6469,7 +6469,7 @@ Move_CROSS_CHOP: createsprite gCrossChopHandSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1 delay 40 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 10, 0, 10 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 10, RGB_BLACK, 10 createsprite gCrossImpactSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 20 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 7, 0, 9, 1 waitforvisualfinish @@ -8491,7 +8491,7 @@ Move_BLAZE_KICK: createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 14, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 call FireSpreadEffect waitforvisualfinish clearmonbg ANIM_TARGET @@ -9558,7 +9558,7 @@ Move_KNOCK_OFF: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET createsprite gKnockOffStrikeSpriteTemplate, ANIM_TARGET, 2, -16, -16 delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -12, 10, 0, 3 @@ -9836,7 +9836,7 @@ Move_WEATHER_BALL: waitforvisualfinish delay 15 playsewithpan SE_M_DETECT, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 waitforvisualfinish createvisualtask AnimTask_GetWeather, 2 delay 1 diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index 50098743db7a..5d17cca84e87 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -501,12 +501,12 @@ static void SpriteCB_EvolutionMonSprite(struct Sprite* sprite) u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId) { u16 i; - u16 stack[16]; + u16 monPalette[16]; u8 taskId; s32 toDiv; - for (i = 0; i < ARRAY_COUNT(stack); i++) - stack[i] = 0x7FFF; + for (i = 0; i < ARRAY_COUNT(monPalette); i++) + monPalette[i] = RGB_WHITE; taskId = CreateTask(Task_CycleEvolutionMonSprite_Init, 0); gTasks[taskId].tPreEvoSpriteId = preEvoSpriteId; @@ -522,13 +522,13 @@ u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId) gSprites[preEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[preEvoSpriteId].oam.matrixNum = MATRIX_PRE_EVO; gSprites[preEvoSpriteId].invisible = FALSE; - CpuSet(stack, &gPlttBufferFaded[0x100 + (gSprites[preEvoSpriteId].oam.paletteNum * 16)], 16); + CpuSet(monPalette, &gPlttBufferFaded[0x100 + (gSprites[preEvoSpriteId].oam.paletteNum * 16)], 16); gSprites[postEvoSpriteId].callback = SpriteCB_EvolutionMonSprite; gSprites[postEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[postEvoSpriteId].oam.matrixNum = MATRIX_POST_EVO; gSprites[postEvoSpriteId].invisible = FALSE; - CpuSet(stack, &gPlttBufferFaded[0x100 + (gSprites[postEvoSpriteId].oam.paletteNum * 16)], 16); + CpuSet(monPalette, &gPlttBufferFaded[0x100 + (gSprites[postEvoSpriteId].oam.paletteNum * 16)], 16); gTasks[taskId].tEvoStopped = FALSE; return taskId; From c39b0ff6d7e58920ccc91b42e82409e683cb7665 Mon Sep 17 00:00:00 2001 From: Abaresk Date: Wed, 2 Feb 2022 03:30:50 +0000 Subject: [PATCH 544/762] Document slot machine more (unabridged) --- src/scrcmd.c | 4 +- src/slot_machine.c | 2562 +++++++++++++++++++++++++++----------------- 2 files changed, 1562 insertions(+), 1004 deletions(-) diff --git a/src/scrcmd.c b/src/scrcmd.c index 44bd14c281bb..418bf5877061 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1916,9 +1916,9 @@ bool8 ScrCmd_pokemartdecoration2(struct ScriptContext *ctx) bool8 ScrCmd_playslotmachine(struct ScriptContext *ctx) { - u8 slotMachineIndex = VarGet(ScriptReadHalfword(ctx)); + u8 machineId = VarGet(ScriptReadHalfword(ctx)); - PlaySlotMachine(slotMachineIndex, CB2_ReturnToFieldContinueScriptPlayMapMusic); + PlaySlotMachine(machineId, CB2_ReturnToFieldContinueScriptPlayMapMusic); ScriptContext1_Stop(); return TRUE; } diff --git a/src/slot_machine.c b/src/slot_machine.c index c58de415bcdb..9db6e67fdf1a 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -31,18 +31,39 @@ #define SLOTMACHINE_GFX_TILES 233 #define MAX_BET 3 -#define SYMBOLS_PER_REEL 21 -#define REEL_SYMBOL_HEIGHT 24 - -// Lucky Flags -#define LUCKY_BIAS_REPLAY (1 << 0) -#define LUCKY_BIAS_CHERRY (1 << 1) -#define LUCKY_BIAS_LOTAD (1 << 2) -#define LUCKY_BIAS_AZURILL (1 << 3) -#define LUCKY_BIAS_POWER (1 << 4) -#define LUCKY_BIAS_REELTIME (1 << 5) -#define LUCKY_BIAS_MIXED_777 (1 << 6) -#define LUCKY_BIAS_777 (1 << 7) +#define TAGS_PER_REEL 21 +#define TAG_HEIGHT 24 +#define REEL_HEIGHT (TAGS_PER_REEL * TAG_HEIGHT) + +#define REELTIME_TAGS 6 +#define REELTIME_TAG_HEIGHT 20 +#define REELTIME_REEL_HEIGHT (REELTIME_TAGS * REELTIME_TAG_HEIGHT) + +// There are three categories of biases: 7's, ReelTime, Regular +// - 7's: BIAS_STRAIGHT_7, BIAS_MIXED_7 +// - ReelTime: BIAS_REELTIME +// - Regular: everything else +// +// The 7's and ReelTime biases can be grouped together as 'Special' biases. +// +// There can be at most two biases at a time. If there are two, one bias will be +// ReelTime and the other will be one of the Regular biases. +// +// A new bias is drawn every round, except during ReelTime. Bias towards 7's +// persists across rounds until you match 7's. All other biases are reset after +// the round. +#define BIAS_REPLAY (1 << 0) +#define BIAS_CHERRY (1 << 1) +#define BIAS_LOTAD (1 << 2) +#define BIAS_AZURILL (1 << 3) +#define BIAS_POWER (1 << 4) +#define BIAS_REELTIME (1 << 5) +#define BIAS_MIXED_7 (1 << 6) +#define BIAS_STRAIGHT_7 (1 << 7) + +#define BIAS_7 (BIAS_STRAIGHT_7 | BIAS_MIXED_7) +#define BIAS_SPECIAL (BIAS_7 | BIAS_REELTIME) +#define BIAS_REGULAR (BIAS_REPLAY | BIAS_CHERRY | BIAS_LOATAD | BIAS_AZURILL | BIAS_POWER) enum { GFXTAG_7_RED, @@ -72,6 +93,10 @@ enum { #define GFXTAG_SYMBOLS_START (GFXTAG_7_RED) #define GFXTAG_NUMBERS_START (GFXTAG_NUM_0) +#define REEL_NORMAL_SPEED 8 +#define REEL_HALF_SPEED 4 +#define REEL_QUARTER_SPEED 2 + enum { PALTAG_REEL, PALTAG_REEL_TIME_PIKACHU, @@ -84,25 +109,25 @@ enum { }; enum { - MATCHED_1CHERRY, - MATCHED_2CHERRY, - MATCHED_REPLAY, - MATCHED_LOTAD, - MATCHED_AZURILL, - MATCHED_POWER, - MATCHED_777_MIXED, - MATCHED_777_RED, - MATCHED_777_BLUE, - MATCHED_NONE, + MATCH_CHERRY, // Cherry in center of first reel + MATCH_TOPBOT_CHERRY, // Cherry in top/bottom of first reel + MATCH_REPLAY, + MATCH_LOTAD, + MATCH_AZURILL, + MATCH_POWER, + MATCH_MIXED_7, // First two 7's are same color; last is other color + MATCH_RED_7, + MATCH_BLUE_7, + MATCH_NONE, }; enum { - MATCH_MIDDLE_ROW, - MATCH_TOP_ROW, - MATCH_BOTTOM_ROW, - MATCH_NWSE_DIAG, - MATCH_NESW_DIAG, - NUM_MATCH_LINES, + ROW_MIDDLE, + ROW_TOP, + ROW_BOTTOM, + ROW_DIAG_NWSE, + ROW_DIAG_NESW, + NUM_MATCH_ROWS, }; enum { @@ -113,45 +138,80 @@ enum { }; enum { - SLOT_ACTION_UNFADE, - SLOT_ACTION_WAIT_FADE, - SLOT_ACTION_READY_NEW_SPIN, - SLOT_ACTION_READY_NEW_RT_SPIN, - SLOT_ACTION_ASK_INSERT_BET, - SLOT_ACTION_BET_INPUT, - SLOT_ACTION_MSG_NEED_3_COINS, - SLOT_ACTION_WAIT_MSG_NEED_3_COINS, - SLOT_ACTION_WAIT_INFO_BOX, - SLOT_ACTION_START_SPIN, - SLOT_ACTION_START_RT_SPIN, - SLOT_ACTION_SET_LUCKY_SPINS, - SLOT_ACTION_AWAIT_REEL_STOP, - SLOT_ACTION_AWAIT_ALL_REELS_STOP, - SLOT_ACTION_CHECK_MATCHES, - SLOT_ACTION_WAIT_PAYOUT, - SLOT_ACTION_END_PAYOUT, - SLOT_ACTION_MATCHED_POWER, - SLOT_ACTION_WAIT_RT_ANIM, - SLOT_ACTION_RESET_BET_TILES, - SLOT_ACTION_NO_MATCHES, - SLOT_ACTION_ASK_QUIT, - SLOT_ACTION_HANDLE_QUIT_INPUT, - SLOT_ACTION_MSG_MAX_COINS, - SLOT_ACTION_WAIT_MSG_MAX_COINS, - SLOT_ACTION_MSG_NO_MORE_COINS, - SLOT_ACTION_WAIT_MSG_NO_MORE_COINS, - SLOT_ACTION_END, - SLOT_ACTION_FREE, + SLOTTASK_UNFADE, + SLOTTASK_WAIT_FADE, + SLOTTASK_READY_NEW_SPIN, + SLOTTASK_READY_NEW_RT_SPIN, + SLOTTASK_ASK_INSERT_BET, + SLOTTASK_BET_INPUT, + SLOTTASK_MSG_NEED_3_COINS, + SLOTTASK_WAIT_MSG_NEED_3_COINS, + SLOTTASK_WAIT_INFO_BOX, + SLOTTASK_START_SPIN, + SLOTTASK_START_RT_SPIN, + SLOTTASK_RESET_BIAS_FAILURE, + SLOTTASK_WAIT_REEL_STOP, + SLOTTASK_WAIT_ALL_REELS_STOP, + SLOTTASK_CHECK_MATCHES, + SLOTTASK_WAIT_PAYOUT, + SLOTTASK_END_PAYOUT, + SLOTTASK_MATCHED_POWER, + SLOTTASK_WAIT_RT_ANIM, + SLOTTASK_RESET_BET_TILES, + SLOTTASK_NO_MATCHES, + SLOTTASK_ASK_QUIT, + SLOTTASK_HANDLE_QUIT_INPUT, + SLOTTASK_MSG_MAX_COINS, + SLOTTASK_WAIT_MSG_MAX_COINS, + SLOTTASK_MSG_NO_MORE_COINS, + SLOTTASK_WAIT_MSG_NO_MORE_COINS, + SLOTTASK_END, + SLOTTASK_FREE, +}; +enum +{ + PAYOUT_TASK_INIT, + PAYOUT_TASK_GIVE_PAYOUT, + PAYOUT_TASK_FREE, }; enum { - REEL_ACTION_STILL, - REEL_ACTION_SPIN, - REEL_ACTION_STOP, - REEL_ACTION_STOP_MOVE, + REEL_TASK_STILL, + REEL_TASK_SPIN, + REEL_TASK_DECIDE_STOP, + REEL_TASK_STOP_MOVE, REEL_ACTION_STOP_SHAKE, }; +enum { + PIKABOLT_TASK_IDLE, + PIKABOLT_TASK_ADD_BOLT, + PIKABOLT_TASK_WAIT_ANIM, + PIKABOLT_TASK_CLEAR_ALL, +}; + +enum { + RT_TASK_INIT, + RT_TASK_WINDOW_ENTER, + RT_TASK_WAIT_START_PIKA, + RT_TASK_PIKA_SPEEDUP1, + RT_TASK_PIKA_SPEEDUP2, + RT_TASK_WAIT_REEL, + RT_TASK_CHECK_EXPLODE, + RT_TASK_LAND, + RT_TASK_PIKA_REACT, + RT_TASK_WAIT_CLEAR_POWER, + RT_TASK_CLOSE_WINDOW_SUCCESS, + RT_TASK_DESTROY_SPRITES, + RT_TASK_SET_REEL_SPEED, + RT_TASK_END_SUCCESS, + RT_TASK_EXPLODE, + RT_TASK_WAIT_EXPLODE, + RT_TASK_WAIT_SMOKE, + RT_TASK_CLOSE_WINDOW_FAILURE, + RT_TASK_END_FAILURE, +}; + #define DIG_SPRITE_DUMMY {255, 0, 0} // Sprite template IDs for the digital display in the right panel @@ -235,29 +295,75 @@ enum { DIG_DISPLAY_BONUS_BIG }; +// DO NOT SUBMIT until committing in the 'DO NOT SUBMIT' state. +// Keep for posterity as more of an unabridged explanation. + +// How ReelTime works +// ================== +// Entering ReelTime: +// - If the bias you draw at the start of the round is BIAS_REELTIME, the +// ReelTime lottery begins. +// - At the start of the lottery, the game selects how many ReelTime spins you +// will get, based on how many Power bolts you've collected and whether it +// is a lucky game. +// - The lottery machine rolls until it lands on the selected number. If it +// selected 0 spins, the lottery machine will mostly likely explode before +// landing on 0. +// - If you win: +// - You receive the selected number of ReelTime spins +// - You lose all the Power bolts you've collected thus far +// - The lottery window closes and ReelTime officially begins +// +// During ReelTime: +// - You still have to pay coins for bets. +// - The slot reels may spin slower than usual in ReelTime. The machine draws a +// reel speed at the beginning of each ReelTime spin. The more coins you've +// lost to the machine, and the more consecutive ReelTime spins you've done, +// the higher your chances of getting a slower reel speed. +// - In ReelTime, the reel stops exactly on your input. That is, it won't add +// extra turns to manipulate the outcome. +// - ReelTime ends early if you win red 7's or blue 7's. + +// Field explanations: +// +// luckyGame: +// Determined at random when you start playing. Some events modify this: +// - Blue 7 match: game becomes lucky +// - Red 7 match: game becomes normal +// +// Effectively, a lucky game inreases the odds of getting more ReelTime spins. +// If the game is lucky, you have a slightly higher chance of matching Power +// bolts (at the expense of Replays). This helps you fill your Power bolt +// gauge faster. +// +// During ReelTime, the more Power bolts you have, the greater your chances +// of drawing more ReelTime spins. In a lucky game, you have greater odds of +// drawing high yields (3+ RT spins). You also have greater odds of drawing 0 +// RT spins. But drawing 0 lets you keep all your Power bolts, allowing you to +// fill your gauge further. struct SlotMachine { /*0x00*/ u8 state; /*0x01*/ u8 machineId; - /*0x02*/ u8 pikaPower; - /*0x03*/ u8 luckyGame; - /*0x04*/ u8 luckyFlags; + /*0x02*/ u8 pikaPowerBolts; + /*0x03*/ bool8 luckyGame; + /*0x04*/ u8 machineBias; /*0x05*/ u8 reelTimeDraw; - /*0x06*/ u8 isLuckySpin; + /*0x06*/ bool8 didNotFailBias; /*0x07*/ u8 biasTag; - /*0x08*/ u16 matchedSymbols; + /*0x08*/ u16 matches; /*0x0A*/ u8 reelTimeSpinsLeft; /*0x0B*/ u8 reelTimeSpinsUsed; /*0x0C*/ s16 coins; /*0x0E*/ s16 payout; - /*0x10*/ s16 netCoinLoss; // coins lost to machine (but never goes below 0) + /*0x10*/ s16 netCoinLoss; // never negative /*0x12*/ s16 bet; /*0x14*/ s16 reeltimePixelOffset; /*0x16*/ s16 reeltimePosition; - /*0x18*/ s16 currReel; - /*0x1A*/ s16 reelIncrement; // speed of reel + /*0x18*/ s16 currentReel; + /*0x1A*/ s16 reelSpeed; /*0x1C*/ s16 reelPixelOffsets[NUM_REELS]; - /*0x22*/ u16 reelPixelOffsetsWhileStopping[NUM_REELS]; + /*0x22*/ u16 reelShockOffsets[NUM_REELS]; /*0x28*/ s16 reelPositions[NUM_REELS]; /*0x2E*/ s16 reelExtraTurns[NUM_REELS]; /*0x34*/ s16 winnerRows[NUM_REELS]; @@ -269,7 +375,7 @@ struct SlotMachine /*0x41*/ u8 reelTimeExplosionSpriteId; /*0x42*/ u8 reelTimeBrokenMachineSpriteId; /*0x43*/ u8 reelTimeSmokeSpriteId; - /*0x44*/ u8 flashMatchLineSpriteIds[NUM_MATCH_LINES]; + /*0x44*/ u8 flashMatchLineSpriteIds[NUM_MATCH_ROWS]; /*0x49*/ u8 reelTimeMachineSpriteIds[2]; /*0x49*/ u8 reelTimeNumberSpriteIds[3]; /*0x4E*/ u8 reelTimeShadowSpriteIds[2]; @@ -299,7 +405,7 @@ static void SlotMachineSetup_InitBgsWindows(void); static void SlotMachineSetup_InitVRAM(void); static void SlotMachineSetup_InitOAM(void); static void SlotMachineSetup_InitGpuRegs(void); -static void SlotMachineSetup_InitSlotMachineStruct(void); +static void InitSlotMachine(void); static void SlotMachineSetup_InitPalsSpritesTasks(void); static void SlotMachineSetup_InitTilemaps(void); static void SlotMachineSetup_LoadGfxAndTilemaps(void); @@ -308,84 +414,84 @@ static void AllocDigitalDisplayGfx(void); static void SetDigitalDisplayImagePtrs(void); static void CreateSlotMachineSprites(void); static void CreateGameplayTasks(void); -static void CreateSlotMachineTask(void); +static void CreateSlotMachineTasks(void); static void DestroyDigitalDisplayScene(void); static void Task_SlotMachine(u8); -static bool8 SlotAction_UnfadeScreen(struct Task *); -static bool8 SlotAction_WaitForUnfade(struct Task *); -static bool8 SlotAction_ReadyNewSpin(struct Task *); -static bool8 SlotAction_ReadyNewReelTimeSpin(struct Task *); -static bool8 SlotAction_AskInsertBet(struct Task *); -static bool8 SlotAction_HandleBetInput(struct Task *); -static bool8 SlotAction_PrintMsg_Need3Coins(struct Task *); -static bool8 SlotAction_WaitMsg_Need3Coins(struct Task *); -static bool8 SlotAction_WaitForInfoBox(struct Task *); -static bool8 SlotAction_StartSpin(struct Task *); -static bool8 SlotAction_StartReelTimeSpin(struct Task *); -static bool8 SlotAction_SetLuckySpins(struct Task *); -static bool8 SlotAction_AwaitReelStop(struct Task *); -static bool8 SlotAction_WaitForAllReelsToStop(struct Task *); -static bool8 SlotAction_CheckMatches(struct Task *); -static bool8 SlotAction_WaitForPayoutToBeAwarded(struct Task *); -static bool8 SlotAction_EndPayout(struct Task *); -static bool8 SlotAction_MatchedPower(struct Task *); -static bool8 SlotAction_WaitReelTimeAnim(struct Task *); -static bool8 SlotAction_ResetBetTiles(struct Task *); -static bool8 SlotAction_NoMatches(struct Task *); -static bool8 SlotAction_AskQuit(struct Task *); -static bool8 SlotAction_HandleQuitInput(struct Task *); -static bool8 SlotAction_PrintMsg_9999Coins(struct Task *); -static bool8 SlotAction_WaitMsg_9999Coins(struct Task *); -static bool8 SlotAction_PrintMsg_NoMoreCoins(struct Task *); -static bool8 SlotAction_WaitMsg_NoMoreCoins(struct Task *); -static bool8 SlotAction_EndGame(struct Task *); -static bool8 SlotAction_FreeDataStructures(struct Task *); -static void DrawLuckyFlags(void); -static void SetLuckySpins(void); -static bool8 IsThisRoundLucky(void); -static u8 AttemptsAtLuckyFlags_Top3(void); -static u16 SlowReelSpeed(void); -static u8 AttemptsAtLuckyFlags_NotTop3(void); +static bool8 SlotTask_UnfadeScreen(struct Task *); +static bool8 SlotTask_WaitUnfade(struct Task *); +static bool8 SlotTask_ReadyNewSpin(struct Task *); +static bool8 SlotTask_ReadyNewReelTimeSpin(struct Task *); +static bool8 SlotTask_AskInsertBet(struct Task *); +static bool8 SlotTask_HandleBetInput(struct Task *); +static bool8 SlotTask_PrintMsg_Need3Coins(struct Task *); +static bool8 SlotTask_WaitMsg_Need3Coins(struct Task *); +static bool8 SlotTask_WaitInfoBox(struct Task *); +static bool8 SlotTask_StartSpin(struct Task *); +static bool8 SlotTask_StartReelTimeSpin(struct Task *); +static bool8 SlotTask_ResetBiasFailure(struct Task *); +static bool8 SlotTask_WaitReelStop(struct Task *); +static bool8 SlotTask_WaitAllReelsStop(struct Task *); +static bool8 SlotTask_CheckMatches(struct Task *); +static bool8 SlotTask_WaitPayout(struct Task *); +static bool8 SlotTask_EndPayout(struct Task *); +static bool8 SlotTask_MatchedPower(struct Task *); +static bool8 SlotTask_WaitReelTimeAnim(struct Task *); +static bool8 SlotTask_ResetBetTiles(struct Task *); +static bool8 SlotTask_NoMatches(struct Task *); +static bool8 SlotTask_AskQuit(struct Task *); +static bool8 SlotTask_HandleQuitInput(struct Task *); +static bool8 SlotTask_PrintMsg_MaxCoins(struct Task *); +static bool8 SlotTask_WaitMsg_MaxCoins(struct Task *); +static bool8 SlotTask_PrintMsg_NoMoreCoins(struct Task *); +static bool8 SlotTask_WaitMsg_NoMoreCoins(struct Task *); +static bool8 SlotTask_EndGame(struct Task *); +static bool8 SlotTask_FreeDataStructures(struct Task *); +static void DrawMachineBias(void); +static void ResetBiasFailure(void); +static bool8 ShouldTrySpecialBias(void); +static u8 TrySelectBias_Special(void); +static u16 ReelTimeSpeed(void); +static u8 TrySelectBias_Regular(void); static void CheckMatch(void); static void CheckMatch_CenterRow(void); static void CheckMatch_TopAndBottom(void); static void CheckMatch_Diagonals(void); -static u8 GetMatchFromSymbols(u8, u8, u8); +static u8 GetMatchFromTags(u8, u8, u8); static void AwardPayout(void); -static void RunAwardPayoutActions(u8); -static bool8 IsFinalTask_RunAwardPayoutActions(void); -static bool8 AwardPayoutAction0(struct Task *); -static bool8 AwardPayoutAction_GivePayoutToPlayer(struct Task *); -static bool8 AwardPayoutAction_FreeTask(struct Task *); +static void Task_Payout(u8); +static bool8 IsFinalTask_Task_Payout(void); +static bool8 PayoutTask_Init(struct Task *); +static bool8 PayoutTask_GivePayout(struct Task *); +static bool8 PayoutTask_Free(struct Task *); static u8 GetTagAtRest(u8, s16); -static void CreateSlotReelTasks(void); +static void CreateReelTasks(void); static void SpinSlotReel(u8); static void StopSlotReel(u8); static bool8 IsSlotReelMoving(u8); -static void Task_RunSlotReelActions(u8); -static bool8 SlotReelAction_StayStill(struct Task *); -static bool8 SlotReelAction_Spin(struct Task *); -static bool8 SlotReelAction_DecideWhereToStop(struct Task *); -static bool8 SlotReelAction_MoveToStop(struct Task *); -static bool8 SlotReelAction_OscillatingStop(struct Task *); -static bool8 DecideReelTurns_BiasTag_Reel1(void); -static bool8 DecideReelTurns_BiasTag_Reel1_Bet1(u8, u8); -static bool8 DecideReelTurns_BiasTag_Reel1_Bet2or3(u8, u8); -static bool8 DecideReelTurns_BiasTag_Reel2(void); -static bool8 DecideReelTurns_BiasTag_Reel2_Bet1or2(void); -static bool8 DecideReelTurns_BiasTag_Reel2_Bet3(void); -static bool8 DecideReelTurns_BiasTag_Reel3(void); -static bool8 DecideReelTurns_BiasTag_Reel3_Bet1or2(u8); -static bool8 DecideReelTurns_BiasTag_Reel3_Bet3(u8); -static void DecideReelTurns_NoBiasTag_Reel1(void); -static void DecideReelTurns_NoBiasTag_Reel2(void); -static void DecideReelTurns_NoBiasTag_Reel2_Bet1(void); -static void DecideReelTurns_NoBiasTag_Reel2_Bet2(void); -static void DecideReelTurns_NoBiasTag_Reel2_Bet3(void); -static void DecideReelTurns_NoBiasTag_Reel3(void); -static void DecideReelTurns_NoBiasTag_Reel3_Bet1(void); -static void DecideReelTurns_NoBiasTag_Reel3_Bet2(void); -static void DecideReelTurns_NoBiasTag_Reel3_Bet3(void); +static void Task_Reel(u8); +static bool8 ReelTask_StayStill(struct Task *); +static bool8 ReelTask_Spin(struct Task *); +static bool8 ReelTask_DecideStop(struct Task *); +static bool8 ReelTask_MoveToStop(struct Task *); +static bool8 ReelTask_ShakingStop(struct Task *); +static bool8 DecideStop_Bias_Reel1(void); +static bool8 DecideStop_Bias_Reel1_Bet1(u8, u8); +static bool8 DecideStop_Bias_Reel1_Bet2or3(u8, u8); +static bool8 DecideStop_Bias_Reel2(void); +static bool8 DecideStop_Bias_Reel2_Bet1or2(void); +static bool8 DecideStop_Bias_Reel2_Bet3(void); +static bool8 DecideStop_Bias_Reel3(void); +static bool8 DecideStop_Bias_Reel3_Bet1or2(u8); +static bool8 DecideStop_Bias_Reel3_Bet3(u8); +static void DecideStop_NoBias_Reel1(void); +static void DecideStop_NoBias_Reel2(void); +static void DecideStop_NoBias_Reel2_Bet1(void); +static void DecideStop_NoBias_Reel2_Bet2(void); +static void DecideStop_NoBias_Reel2_Bet3(void); +static void DecideStop_NoBias_Reel3(void); +static void DecideStop_NoBias_Reel3_Bet1(void); +static void DecideStop_NoBias_Reel3_Bet2(void); +static void DecideStop_NoBias_Reel3_Bet3(void); static void PressStopReelButton(u8); static void Task_PressStopReelButton(u8); static void LightenBetTiles(u8); @@ -427,7 +533,7 @@ static void ReelTime_PikachuReact(struct Task *); static void ReelTime_WaitClearPikaPower(struct Task *); static void ReelTime_CloseWindow(struct Task *); static void ReelTime_DestroySprites(struct Task *); -static void ReelTime_SetReelIncrement(struct Task *); +static void ReelTime_SetReelSpeed(struct Task *); static void ReelTime_EndSuccess(struct Task *); static void ReelTime_ExplodeMachine(struct Task *); static void ReelTime_WaitExplode(struct Task *); @@ -439,9 +545,9 @@ static void OpenInfoBox(u8); static bool8 IsInfoBoxClosed(void); static void RunInfoBoxActions(u8 ); static void InfoBox_FadeIn(struct Task *); -static void InfoBox_WaitForFade(struct Task *); +static void InfoBox_WaitFade(struct Task *); static void InfoBox_DrawWindow(struct Task *); -static void InfoBox_AwaitPlayerInput(struct Task *); +static void InfoBox_WaitInput(struct Task *); static void InfoBox_AddText(struct Task *); static void InfoBox_LoadPikaPowerMeter(struct Task *); static void InfoBox_LoadSlotMachineTilemap(struct Task *); @@ -557,10 +663,10 @@ static struct SpriteFrameImage *sImageTables_DigitalDisplay[NUM_DIG_DISPLAY_SPRI // Const rom data. static const struct DigitalDisplaySprite *const sDigitalDisplayScenes[]; static const u16 sUnkPalette[]; -static const u8 sLuckyRoundProbabilities[NUM_SLOT_MACHINE_IDS][MAX_BET]; +static const u8 sSpecialDrawOdds[NUM_SLOT_MACHINE_IDS][MAX_BET]; static const u8 sBiasTags[]; -static const u16 sLuckyFlagSettings_Top3[3]; -static const u16 sLuckyFlagSettings_NotTop3[5]; +static const u16 sBiasesSpecial[3]; +static const u16 sBiasesRegular[5]; static const s16 sDigitalDisplay_SpriteCoords[][2]; static const SpriteCallback sDigitalDisplay_SpriteCallbacks[]; static const struct SpriteTemplate *const sSpriteTemplates_DigitalDisplay[NUM_DIG_DISPLAY_SPRITES]; @@ -572,8 +678,8 @@ static const struct SpriteTemplate sSpriteTemplate_ReelTimeExplosion; static const struct SpriteTemplate sSpriteTemplate_ReelTimePikachuAura; static const u16 sReelTimeExplodeProbability[]; static const u16 *const sPokeballShiningPalTable[]; -static const u16 sReelIncrementTable[][2]; -static const u16 sReelTimeBonusIncrementTable[]; +static const u16 sReelTimeSpeed_Probabilities[][2]; +static const u16 sQuarterSpeed_ProbabilityBoost[]; static const u16 sSlotMatchFlags[]; static const u16 sSlotPayouts[]; static const u8 *const sReelBackground_Tilemap; @@ -582,16 +688,16 @@ static const struct SpriteSheet sSlotMachineSpriteSheets[22]; static const struct SpritePalette sSlotMachineSpritePalettes[]; static const u16 *const sDigitalDisplay_Pal; static const s16 sInitialReelPositions[NUM_REELS][2]; -static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS]; -static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS]; -static const u8 sReeltimeProbabilities_UnluckyGame[][17]; +static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS]; +static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS]; +static const u8 sReelTimeProbabilities_NormalGame[][17]; static const u8 sReelTimeProbabilities_LuckyGame[][17]; -static const u8 sSymToMatch[]; +static const u8 sTagToMatch[]; static const u8 sReelTimeTags[]; -static const u8 sReelSymbolTileTags[NUM_REELS][SYMBOLS_PER_REEL]; -static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES]; -static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES]; -static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES]; +static const u8 sReelTileTags[NUM_REELS][TAGS_PER_REEL]; +static const u16 *const sLitMatchLinePalTable[NUM_MATCH_ROWS]; +static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_ROWS]; +static const u8 sMatchLinePalOffsets[NUM_MATCH_ROWS]; static const u8 sBetToMatchLineIds[MAX_BET][2]; static const u8 sMatchLinesPerBet[MAX_BET]; static const u16 *const sFlashingLightsPalTable[]; @@ -684,123 +790,131 @@ static const struct WindowTemplate sWindowTemplate_InfoBox = static const u8 sColors_ReeltimeHelp[] = {TEXT_COLOR_LIGHT_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY}; -static bool8 (*const sSlotActions[])(struct Task *task) = -{ - [SLOT_ACTION_UNFADE] = SlotAction_UnfadeScreen, - [SLOT_ACTION_WAIT_FADE] = SlotAction_WaitForUnfade, - [SLOT_ACTION_READY_NEW_SPIN] = SlotAction_ReadyNewSpin, - [SLOT_ACTION_READY_NEW_RT_SPIN] = SlotAction_ReadyNewReelTimeSpin, - [SLOT_ACTION_ASK_INSERT_BET] = SlotAction_AskInsertBet, - [SLOT_ACTION_BET_INPUT] = SlotAction_HandleBetInput, - [SLOT_ACTION_MSG_NEED_3_COINS] = SlotAction_PrintMsg_Need3Coins, - [SLOT_ACTION_WAIT_MSG_NEED_3_COINS] = SlotAction_WaitMsg_Need3Coins, - [SLOT_ACTION_WAIT_INFO_BOX] = SlotAction_WaitForInfoBox, - [SLOT_ACTION_START_SPIN] = SlotAction_StartSpin, - [SLOT_ACTION_START_RT_SPIN] = SlotAction_StartReelTimeSpin, - [SLOT_ACTION_SET_LUCKY_SPINS] = SlotAction_SetLuckySpins, - [SLOT_ACTION_AWAIT_REEL_STOP] = SlotAction_AwaitReelStop, - [SLOT_ACTION_AWAIT_ALL_REELS_STOP] = SlotAction_WaitForAllReelsToStop, - [SLOT_ACTION_CHECK_MATCHES] = SlotAction_CheckMatches, - [SLOT_ACTION_WAIT_PAYOUT] = SlotAction_WaitForPayoutToBeAwarded, - [SLOT_ACTION_END_PAYOUT] = SlotAction_EndPayout, - [SLOT_ACTION_MATCHED_POWER] = SlotAction_MatchedPower, - [SLOT_ACTION_WAIT_RT_ANIM] = SlotAction_WaitReelTimeAnim, - [SLOT_ACTION_RESET_BET_TILES] = SlotAction_ResetBetTiles, - [SLOT_ACTION_NO_MATCHES] = SlotAction_NoMatches, - [SLOT_ACTION_ASK_QUIT] = SlotAction_AskQuit, - [SLOT_ACTION_HANDLE_QUIT_INPUT] = SlotAction_HandleQuitInput, - [SLOT_ACTION_MSG_MAX_COINS] = SlotAction_PrintMsg_9999Coins, - [SLOT_ACTION_WAIT_MSG_MAX_COINS] = SlotAction_WaitMsg_9999Coins, - [SLOT_ACTION_MSG_NO_MORE_COINS] = SlotAction_PrintMsg_NoMoreCoins, - [SLOT_ACTION_WAIT_MSG_NO_MORE_COINS] = SlotAction_WaitMsg_NoMoreCoins, - [SLOT_ACTION_END] = SlotAction_EndGame, - [SLOT_ACTION_FREE] = SlotAction_FreeDataStructures, -}; - -static bool8 (*const sAwardPayoutActions[])(struct Task *task) = -{ - AwardPayoutAction0, - AwardPayoutAction_GivePayoutToPlayer, - AwardPayoutAction_FreeTask -}; - -static bool8 (*const sSlotReelActions[])(struct Task *task) = -{ - [REEL_ACTION_STILL] = SlotReelAction_StayStill, - [REEL_ACTION_SPIN] = SlotReelAction_Spin, - [REEL_ACTION_STOP] = SlotReelAction_DecideWhereToStop, - [REEL_ACTION_STOP_MOVE] = SlotReelAction_MoveToStop, - [REEL_ACTION_STOP_SHAKE] = SlotReelAction_OscillatingStop -}; - -// returns True if a match with the biasTag is possible in that reel -// also modifies data in sSlotMachine reel arrays to indicate how to get to the matching state -static bool8 (*const sDecideReelTurns_BiasTag[NUM_REELS])(void) = -{ - DecideReelTurns_BiasTag_Reel1, - DecideReelTurns_BiasTag_Reel2, - DecideReelTurns_BiasTag_Reel3 -}; - -static void (*const sDecideReelTurns_NoBiasTag[NUM_REELS])(void) = -{ - DecideReelTurns_NoBiasTag_Reel1, - DecideReelTurns_NoBiasTag_Reel2, - DecideReelTurns_NoBiasTag_Reel3 -}; - +static bool8 (*const sSlotTasks[])(struct Task *task) = +{ + [SLOTTASK_UNFADE] = SlotTask_UnfadeScreen, + [SLOTTASK_WAIT_FADE] = SlotTask_WaitUnfade, + [SLOTTASK_READY_NEW_SPIN] = SlotTask_ReadyNewSpin, + [SLOTTASK_READY_NEW_RT_SPIN] = SlotTask_ReadyNewReelTimeSpin, + [SLOTTASK_ASK_INSERT_BET] = SlotTask_AskInsertBet, + [SLOTTASK_BET_INPUT] = SlotTask_HandleBetInput, + [SLOTTASK_MSG_NEED_3_COINS] = SlotTask_PrintMsg_Need3Coins, + [SLOTTASK_WAIT_MSG_NEED_3_COINS] = SlotTask_WaitMsg_Need3Coins, + [SLOTTASK_WAIT_INFO_BOX] = SlotTask_WaitInfoBox, + [SLOTTASK_START_SPIN] = SlotTask_StartSpin, + [SLOTTASK_START_RT_SPIN] = SlotTask_StartReelTimeSpin, + [SLOTTASK_RESET_BIAS_FAILURE] = SlotTask_ResetBiasFailure, + [SLOTTASK_WAIT_REEL_STOP] = SlotTask_WaitReelStop, + [SLOTTASK_WAIT_ALL_REELS_STOP] = SlotTask_WaitAllReelsStop, + [SLOTTASK_CHECK_MATCHES] = SlotTask_CheckMatches, + [SLOTTASK_WAIT_PAYOUT] = SlotTask_WaitPayout, + [SLOTTASK_END_PAYOUT] = SlotTask_EndPayout, + [SLOTTASK_MATCHED_POWER] = SlotTask_MatchedPower, + [SLOTTASK_WAIT_RT_ANIM] = SlotTask_WaitReelTimeAnim, + [SLOTTASK_RESET_BET_TILES] = SlotTask_ResetBetTiles, + [SLOTTASK_NO_MATCHES] = SlotTask_NoMatches, + [SLOTTASK_ASK_QUIT] = SlotTask_AskQuit, + [SLOTTASK_HANDLE_QUIT_INPUT] = SlotTask_HandleQuitInput, + [SLOTTASK_MSG_MAX_COINS] = SlotTask_PrintMsg_MaxCoins, + [SLOTTASK_WAIT_MSG_MAX_COINS] = SlotTask_WaitMsg_MaxCoins, + [SLOTTASK_MSG_NO_MORE_COINS] = SlotTask_PrintMsg_NoMoreCoins, + [SLOTTASK_WAIT_MSG_NO_MORE_COINS] = SlotTask_WaitMsg_NoMoreCoins, + [SLOTTASK_END] = SlotTask_EndGame, + [SLOTTASK_FREE] = SlotTask_FreeDataStructures, +}; + +static bool8 (*const sPayoutTasks[])(struct Task *task) = +{ + [PAYOUT_TASK_INIT] = PayoutTask_Init, + [PAYOUT_TASK_GIVE_PAYOUT] = PayoutTask_GivePayout, + [PAYOUT_TASK_FREE] = PayoutTask_Free, +}; + +static bool8 (*const sReelTasks[])(struct Task *task) = +{ + [REEL_TASK_STILL] = ReelTask_StayStill, + [REEL_TASK_SPIN] = ReelTask_Spin, + [REEL_TASK_DECIDE_STOP] = ReelTask_DecideStop, + [REEL_TASK_STOP_MOVE] = ReelTask_MoveToStop, + [REEL_ACTION_STOP_SHAKE] = ReelTask_ShakingStop, +}; + +// Returns true if it is possible to match the bias tag in the reel. +// +// Modifies the winnerRows and reelExtraTurns to indicate how to match the bias +// tag. +static bool8 (*const sDecideStop_Bias[NUM_REELS])(void) = +{ + DecideStop_Bias_Reel1, + DecideStop_Bias_Reel2, + DecideStop_Bias_Reel3, +}; + +// The player will always lose (barring a few rare circumstances that were not +// accounted for in implementation). +// +// Modifies the winnerRows and reelExtraTurns to indicate how to make the player +// lose. +static void (*const sDecideStop_NoBias[NUM_REELS])(void) = +{ + DecideStop_NoBias_Reel1, + DecideStop_NoBias_Reel2, + DecideStop_NoBias_Reel3, +}; + +// The magnitude of the shock depends on how many extra turns are added. static const u16 sReelStopShocks[] = {2, 4, 4, 4, 8}; -static bool8 (*const sDecideReelTurns_BiasTag_Reel1_Bets[MAX_BET])(u8 tag1, u8 tag2) = +static bool8 (*const sDecideStop_Bias_Reel1_Bets[MAX_BET])(u8 tag1, u8 tag2) = { - DecideReelTurns_BiasTag_Reel1_Bet1, - DecideReelTurns_BiasTag_Reel1_Bet2or3, - DecideReelTurns_BiasTag_Reel1_Bet2or3 + DecideStop_Bias_Reel1_Bet1, + DecideStop_Bias_Reel1_Bet2or3, + DecideStop_Bias_Reel1_Bet2or3, }; -static bool8 (*const sDecideReelTurns_BiasTag_Reel2_Bets[MAX_BET])(void) = +static bool8 (*const sDecideStop_Bias_Reel2_Bets[MAX_BET])(void) = { - DecideReelTurns_BiasTag_Reel2_Bet1or2, - DecideReelTurns_BiasTag_Reel2_Bet1or2, - DecideReelTurns_BiasTag_Reel2_Bet3 + DecideStop_Bias_Reel2_Bet1or2, + DecideStop_Bias_Reel2_Bet1or2, + DecideStop_Bias_Reel2_Bet3, }; -static bool8 (*const sDecideReelTurns_BiasTag_Reel3_Bets[MAX_BET])(u8 biasTag) = +static bool8 (*const sDecideStop_Bias_Reel3_Bets[MAX_BET])(u8 biasTag) = { - DecideReelTurns_BiasTag_Reel3_Bet1or2, - DecideReelTurns_BiasTag_Reel3_Bet1or2, - DecideReelTurns_BiasTag_Reel3_Bet3 + DecideStop_Bias_Reel3_Bet1or2, + DecideStop_Bias_Reel3_Bet1or2, + DecideStop_Bias_Reel3_Bet3, }; -static void (*const sDecideReelTurns_NoBiasTag_Reel2_Bets[MAX_BET])(void) = +static void (*const sDecideStop_NoBias_Reel2_Bets[MAX_BET])(void) = { - DecideReelTurns_NoBiasTag_Reel2_Bet1, - DecideReelTurns_NoBiasTag_Reel2_Bet2, - DecideReelTurns_NoBiasTag_Reel2_Bet3 + DecideStop_NoBias_Reel2_Bet1, + DecideStop_NoBias_Reel2_Bet2, + DecideStop_NoBias_Reel2_Bet3, }; -static void (*const sDecideReelTurns_NoBiasTag_Reel3_Bets[MAX_BET])(void) = +static void (*const sDecideStop_NoBias_Reel3_Bets[MAX_BET])(void) = { - DecideReelTurns_NoBiasTag_Reel3_Bet1, - DecideReelTurns_NoBiasTag_Reel3_Bet2, - DecideReelTurns_NoBiasTag_Reel3_Bet3 + DecideStop_NoBias_Reel3_Bet1, + DecideStop_NoBias_Reel3_Bet2, + DecideStop_NoBias_Reel3_Bet3, }; -static void (*const sReelStopButtonFuncs[])(struct Task *task, u8 taskId) = +static void (*const sReelStopButtonTasks[])(struct Task *task, u8 taskId) = { StopReelButton_Press, StopReelButton_Wait, - StopReelButton_Unpress + StopReelButton_Unpress, }; static const s16 sReelButtonOffsets[NUM_REELS] = {5, 10, 15}; -static void (*const sPikaPowerBoltFuncs[])(struct Task *task) = +static void (*const sPikaPowerBoltTasks[])(struct Task *task) = { PikaPowerBolt_Idle, PikaPowerBolt_AddBolt, PikaPowerBolt_WaitAnim, - PikaPowerBolt_ClearAll + PikaPowerBolt_ClearAll, }; static const u16 sPikaPowerTileTable[][2] = @@ -810,52 +924,52 @@ static const u16 sPikaPowerTileTable[][2] = {0xaf, 0x7f}, }; -static void (*const sReelTimeActions[])(struct Task *task) = -{ - ReelTime_Init, - ReelTime_WindowEnter, - ReelTime_WaitStartPikachu, - ReelTime_PikachuSpeedUp1, - ReelTime_PikachuSpeedUp2, - ReelTime_WaitReel, - ReelTime_CheckExplode, - ReelTime_LandOnOutcome, - ReelTime_PikachuReact, - ReelTime_WaitClearPikaPower, - ReelTime_CloseWindow, - ReelTime_DestroySprites, - ReelTime_SetReelIncrement, - ReelTime_EndSuccess, - ReelTime_ExplodeMachine, - ReelTime_WaitExplode, - ReelTime_WaitSmoke, - ReelTime_CloseWindow, - ReelTime_EndFailure +static void (*const sReelTimeTasks[])(struct Task *task) = +{ + [RT_TASK_INIT] = ReelTime_Init, + [RT_TASK_WINDOW_ENTER] = ReelTime_WindowEnter, + [RT_TASK_WAIT_START_PIKA] = ReelTime_WaitStartPikachu, + [RT_TASK_PIKA_SPEEDUP1] = ReelTime_PikachuSpeedUp1, + [RT_TASK_PIKA_SPEEDUP2] = ReelTime_PikachuSpeedUp2, + [RT_TASK_WAIT_REEL] = ReelTime_WaitReel, + [RT_TASK_CHECK_EXPLODE] = ReelTime_CheckExplode, + [RT_TASK_LAND] = ReelTime_LandOnOutcome, + [RT_TASK_PIKA_REACT] = ReelTime_PikachuReact, + [RT_TASK_WAIT_CLEAR_POWER] = ReelTime_WaitClearPikaPower, + [RT_TASK_CLOSE_WINDOW_SUCCESS] = ReelTime_CloseWindow, + [RT_TASK_DESTROY_SPRITES] = ReelTime_DestroySprites, + [RT_TASK_SET_REEL_SPEED] = ReelTime_SetReelSpeed, + [RT_TASK_END_SUCCESS] = ReelTime_EndSuccess, + [RT_TASK_EXPLODE] = ReelTime_ExplodeMachine, + [RT_TASK_WAIT_EXPLODE] = ReelTime_WaitExplode, + [RT_TASK_WAIT_SMOKE] = ReelTime_WaitSmoke, + [RT_TASK_CLOSE_WINDOW_FAILURE] = ReelTime_CloseWindow, + [RT_TASK_END_FAILURE] = ReelTime_EndFailure, }; static const u8 sReelTimePikachuAnimIds[] = {1, 1, 2, 2}; static const s16 sReelTimeBoltDelays[] = {64, 48, 24, 8}; static const s16 sPikachuAuraFlashDelays[] = {10, 8, 6, 4}; -static void (*const sInfoBoxActions[])(struct Task *task) = +static void (*const sInfoBoxTasks[])(struct Task *task) = { // Go to Info screen InfoBox_FadeIn, - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_DrawWindow, - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_AddText, - InfoBox_WaitForFade, + InfoBox_WaitFade, // On Info screen - InfoBox_AwaitPlayerInput, + InfoBox_WaitInput, // Exit Info screen - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_LoadSlotMachineTilemap, - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_CreateDigitalDisplay, - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_LoadPikaPowerMeter, - InfoBox_WaitForFade, + InfoBox_WaitFade, InfoBox_FreeTask, }; @@ -865,10 +979,6 @@ static void (*const sDigitalDisplayActions[])(struct Task *task) = DigitalDisplay_Idle, }; - - - -// code #define tState data[0] static void Task_FadeToSlotMachine(u8 taskId) @@ -889,12 +999,12 @@ static void Task_FadeToSlotMachine(u8 taskId) } } -void PlaySlotMachine(u8 slotMachineIndex, MainCallback exitCallback) +void PlaySlotMachine(u8 machineId, MainCallback exitCallback) { u8 taskId; sSlotMachine = AllocZeroed(sizeof(*sSlotMachine)); - PlaySlotMachine_Internal(slotMachineIndex, exitCallback); + PlaySlotMachine_Internal(machineId, exitCallback); taskId = CreateTask(Task_FadeToSlotMachine, 0); gTasks[taskId].tState = 0; } @@ -907,7 +1017,7 @@ static void CB2_SlotMachineSetup(void) { case 0: SlotMachineSetup_InitBgsWindows(); - SlotMachineSetup_InitSlotMachineStruct(); + InitSlotMachine(); gMain.state++; break; case 1: @@ -981,25 +1091,31 @@ static void SlotMachine_VBlankCB(void) SetGpuReg(REG_OFFSET_WINOUT, sSlotMachine->winOut); } -static void PlaySlotMachine_Internal(u8 slotMachineIndex, MainCallback exitCallback) +#define tMachineId data[0] +#define tExitCallback data[1] + +static void PlaySlotMachine_Internal(u8 machineId, MainCallback exitCallback) { struct Task *task = &gTasks[CreateTask(SlotMachineDummyTask, 0xFF)]; - task->data[0] = slotMachineIndex; - StoreWordInTwoHalfwords(&task->data[1], (intptr_t)exitCallback); + task->tMachineId = machineId; + StoreWordInTwoHalfwords(&task->tExitCallback, (intptr_t)exitCallback); } - -static void SlotMachineInitDummyTask(void) +// Extracts and assigns machineId and exit callback from task. +static void SlotMachine_InitFromTask(void) { struct Task *task = &gTasks[FindTaskIdByFunc(SlotMachineDummyTask)]; - sSlotMachine->machineId = task->data[0]; - LoadWordFromTwoHalfwords((u16 *)&task->data[1], (u32 *)&sSlotMachine->prevMainCb); + sSlotMachine->machineId = task->tMachineId; + LoadWordFromTwoHalfwords((u16 *)&task->tExitCallback, (u32 *)&sSlotMachine->prevMainCb); } static void SlotMachineDummyTask(u8 taskId) { } +#undef tMachineId +#undef tExitCallback + static void SlotMachineSetup_InitBgsWindows(void) { SetVBlankCallback(NULL); @@ -1048,25 +1164,25 @@ static void SlotMachineSetup_InitGpuRegs(void) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(9, 8)); } -// set up initial state of slot machine -static void SlotMachineSetup_InitSlotMachineStruct(void) +// Set up initial state of slot machine +static void InitSlotMachine(void) { u8 i; - SlotMachineInitDummyTask(); // assigns sSlotMachine->machineId, etc. - sSlotMachine->state = 0; - sSlotMachine->pikaPower = 0; + SlotMachine_InitFromTask(); + sSlotMachine->state = SLOTTASK_UNFADE; + sSlotMachine->pikaPowerBolts = 0; sSlotMachine->luckyGame = Random() & 1; - sSlotMachine->luckyFlags = 0; - sSlotMachine->matchedSymbols = 0; + sSlotMachine->machineBias = 0; + sSlotMachine->matches = 0; sSlotMachine->reelTimeSpinsLeft = 0; sSlotMachine->reelTimeSpinsUsed = 0; sSlotMachine->coins = GetCoins(); sSlotMachine->payout = 0; sSlotMachine->netCoinLoss = 0; sSlotMachine->bet = 0; - sSlotMachine->currReel = 0; - sSlotMachine->reelIncrement = 8; + sSlotMachine->currentReel = LEFT_REEL; + sSlotMachine->reelSpeed = REEL_NORMAL_SPEED; sSlotMachine->win0h = DISPLAY_WIDTH; sSlotMachine->win0v = DISPLAY_HEIGHT; sSlotMachine->winIn = WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR; @@ -1075,10 +1191,10 @@ static void SlotMachineSetup_InitSlotMachineStruct(void) for (i = 0; i < NUM_REELS; i++) { - sSlotMachine->reelPixelOffsetsWhileStopping[i] = 0; - sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % SYMBOLS_PER_REEL; - sSlotMachine->reelPixelOffsets[i] = SYMBOLS_PER_REEL * REEL_SYMBOL_HEIGHT - sSlotMachine->reelPositions[i] * REEL_SYMBOL_HEIGHT; - sSlotMachine->reelPixelOffsets[i] %= SYMBOLS_PER_REEL * REEL_SYMBOL_HEIGHT; + sSlotMachine->reelShockOffsets[i] = 0; + sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % TAGS_PER_REEL; + sSlotMachine->reelPixelOffsets[i] = REEL_HEIGHT - sSlotMachine->reelPositions[i] * TAG_HEIGHT; + sSlotMachine->reelPixelOffsets[i] %= REEL_HEIGHT; } AlertTVThatPlayerPlayedSlotMachine(GetCoins()); } @@ -1129,89 +1245,92 @@ static void CreateSlotMachineSprites(void) static void CreateGameplayTasks(void) { CreatePikaPowerBoltTask(); - CreateSlotReelTasks(); + CreateReelTasks(); CreateDigitalDisplayTask(); - CreateSlotMachineTask(); + CreateSlotMachineTasks(); } -static void CreateSlotMachineTask(void) +static void CreateSlotMachineTasks(void) { Task_SlotMachine(CreateTask(Task_SlotMachine, 0)); } -// task->data[0] is a timer static void Task_SlotMachine(u8 taskId) { - while (sSlotActions[sSlotMachine->state](&gTasks[taskId])) + while (sSlotTasks[sSlotMachine->state](&gTasks[taskId])) ; } -// SLOT_ACTION_UNFADE -static bool8 SlotAction_UnfadeScreen(struct Task *task) +#define tTimer data[0] +#define tTimer2 data[1] + +// SLOTTASK_UNFADE +static bool8 SlotTask_UnfadeScreen(struct Task *task) { BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(0, 0, 0)); - LoadPikaPowerMeter(sSlotMachine->pikaPower); - sSlotMachine->state++; // SLOT_ACTION_WAIT_FADE + LoadPikaPowerMeter(sSlotMachine->pikaPowerBolts); + sSlotMachine->state++; // SLOTTASK_WAIT_FADE return FALSE; } -// SLOT_ACTION_WAIT_FADE -static bool8 SlotAction_WaitForUnfade(struct Task *task) +// SLOTTASK_WAIT_FADE +static bool8 SlotTask_WaitUnfade(struct Task *task) { if (!gPaletteFade.active) sSlotMachine->state++; return FALSE; } -// SLOT_ACTION_READY_NEW_SPIN -static bool8 SlotAction_ReadyNewSpin(struct Task *task) +// SLOTTASK_READY_NEW_SPIN +static bool8 SlotTask_ReadyNewSpin(struct Task *task) { sSlotMachine->payout = 0; sSlotMachine->bet = 0; - sSlotMachine->currReel = 0; - sSlotMachine->luckyFlags &= (LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777); - sSlotMachine->state = SLOT_ACTION_ASK_INSERT_BET; + sSlotMachine->currentReel = LEFT_REEL; + sSlotMachine->machineBias &= (BIAS_STRAIGHT_7 | BIAS_MIXED_7); + sSlotMachine->state = SLOTTASK_ASK_INSERT_BET; if (sSlotMachine->coins <= 0) { - sSlotMachine->state = SLOT_ACTION_MSG_NO_MORE_COINS; + sSlotMachine->state = SLOTTASK_MSG_NO_MORE_COINS; } else if (sSlotMachine->reelTimeSpinsLeft) { - sSlotMachine->state = SLOT_ACTION_READY_NEW_RT_SPIN; + sSlotMachine->state = SLOTTASK_READY_NEW_RT_SPIN; CreateDigitalDisplayScene(DIG_DISPLAY_REEL_TIME); } return TRUE; } -// SLOT_ACTION_READY_NEW_RT_SPIN -static bool8 SlotAction_ReadyNewReelTimeSpin(struct Task *task) +// SLOTTASK_READY_NEW_RT_SPIN +static bool8 SlotTask_ReadyNewReelTimeSpin(struct Task *task) { if (IsDigitalDisplayAnimFinished()) - sSlotMachine->state = SLOT_ACTION_ASK_INSERT_BET; + sSlotMachine->state = SLOTTASK_ASK_INSERT_BET; return FALSE; } -// SLOT_ACTION_ASK_INSERT_BET -static bool8 SlotAction_AskInsertBet(struct Task *task) +// SLOTTASK_ASK_INSERT_BET +static bool8 SlotTask_AskInsertBet(struct Task *task) { CreateDigitalDisplayScene(DIG_DISPLAY_INSERT_BET); - sSlotMachine->state = SLOT_ACTION_BET_INPUT; + sSlotMachine->state = SLOTTASK_BET_INPUT; if (sSlotMachine->coins >= MAX_COINS) - sSlotMachine->state = SLOT_ACTION_MSG_MAX_COINS; + sSlotMachine->state = SLOTTASK_MSG_MAX_COINS; return TRUE; } -// SLOT_ACTION_BET_INPUT -static bool8 SlotAction_HandleBetInput(struct Task *task) +// SLOTTASK_BET_INPUT +static bool8 SlotTask_HandleBetInput(struct Task *task) { s16 i; if (JOY_NEW(SELECT_BUTTON)) { OpenInfoBox(DIG_DISPLAY_INSERT_BET); - sSlotMachine->state = SLOT_ACTION_WAIT_INFO_BOX; + sSlotMachine->state = SLOTTASK_WAIT_INFO_BOX; } - else if (JOY_NEW(R_BUTTON)) // bet the max amount + // Try to bet the max amount + else if (JOY_NEW(R_BUTTON)) { if (sSlotMachine->coins - (MAX_BET - sSlotMachine->bet) >= 0) { @@ -1219,12 +1338,13 @@ static bool8 SlotAction_HandleBetInput(struct Task *task) LightenBetTiles(i); sSlotMachine->coins -= (MAX_BET - sSlotMachine->bet); sSlotMachine->bet = MAX_BET; - sSlotMachine->state = SLOT_ACTION_START_SPIN; + sSlotMachine->state = SLOTTASK_START_SPIN; PlaySE(SE_SHOP); } - else // you didn't have enough coins to bet the max + // Not enough coins + else { - sSlotMachine->state = SLOT_ACTION_MSG_NEED_3_COINS; + sSlotMachine->state = SLOTTASK_MSG_NEED_3_COINS; } } else @@ -1240,48 +1360,48 @@ static bool8 SlotAction_HandleBetInput(struct Task *task) // Maxed bet or finished betting if (sSlotMachine->bet >= MAX_BET || (sSlotMachine->bet != 0 && JOY_NEW(A_BUTTON))) - sSlotMachine->state = SLOT_ACTION_START_SPIN; + sSlotMachine->state = SLOTTASK_START_SPIN; // Quit prompt if (JOY_NEW(B_BUTTON)) - sSlotMachine->state = SLOT_ACTION_ASK_QUIT; + sSlotMachine->state = SLOTTASK_ASK_QUIT; } return FALSE; } // SLOT_ACTION_NEED_3_COINS -static bool8 SlotAction_PrintMsg_Need3Coins(struct Task *task) +static bool8 SlotTask_PrintMsg_Need3Coins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouDontHaveThreeCoins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); - sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NEED_3_COINS; + sSlotMachine->state = SLOTTASK_WAIT_MSG_NEED_3_COINS; return FALSE; } -// SLOT_ACTION_WAIT_MSG_NEED_3_COINS -static bool8 SlotAction_WaitMsg_Need3Coins(struct Task *task) +// SLOTTASK_WAIT_MSG_NEED_3_COINS +static bool8 SlotTask_WaitMsg_Need3Coins(struct Task *task) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { ClearDialogWindowAndFrame(0, TRUE); - sSlotMachine->state = SLOT_ACTION_BET_INPUT; + sSlotMachine->state = SLOTTASK_BET_INPUT; } return FALSE; } -// SLOT_ACTION_WAIT_INFO_BOX -static bool8 SlotAction_WaitForInfoBox(struct Task *task) +// SLOTTASK_WAIT_INFO_BOX +static bool8 SlotTask_WaitInfoBox(struct Task *task) { if (IsInfoBoxClosed()) - sSlotMachine->state = SLOT_ACTION_BET_INPUT; + sSlotMachine->state = SLOTTASK_BET_INPUT; return FALSE; } -// SLOT_ACTION_START_SPIN -static bool8 SlotAction_StartSpin(struct Task *task) +// SLOTTASK_START_SPIN +static bool8 SlotTask_StartSpin(struct Task *task) { - DrawLuckyFlags(); + DrawMachineBias(); DestroyDigitalDisplayScene(); SpinSlotReel(LEFT_REEL); @@ -1290,79 +1410,79 @@ static bool8 SlotAction_StartSpin(struct Task *task) IncrementDailySlotsUses(); - task->data[0] = 0; - if (sSlotMachine->luckyFlags & LUCKY_BIAS_REELTIME) + task->tTimer = 0; + if (sSlotMachine->machineBias & BIAS_REELTIME) { BeginReelTime(); - sSlotMachine->state = SLOT_ACTION_START_RT_SPIN; + sSlotMachine->state = SLOTTASK_START_RT_SPIN; } else { CreateDigitalDisplayScene(DIG_DISPLAY_STOP_REEL); - sSlotMachine->state = SLOT_ACTION_SET_LUCKY_SPINS; + sSlotMachine->state = SLOTTASK_RESET_BIAS_FAILURE; } - sSlotMachine->reelIncrement = 8; + sSlotMachine->reelSpeed = REEL_NORMAL_SPEED; if (sSlotMachine->reelTimeSpinsLeft) - sSlotMachine->reelIncrement = SlowReelSpeed(); + sSlotMachine->reelSpeed = ReelTimeSpeed(); return FALSE; } -// SLOT_ACTION_START_RT_SPIN -static bool8 SlotAction_StartReelTimeSpin(struct Task *task) +// SLOTTASK_START_RT_SPIN +static bool8 SlotTask_StartReelTimeSpin(struct Task *task) { if (IsReelTimeTaskDone()) { CreateDigitalDisplayScene(DIG_DISPLAY_STOP_REEL); - sSlotMachine->luckyFlags &= ~LUCKY_BIAS_REELTIME; - sSlotMachine->state = SLOT_ACTION_SET_LUCKY_SPINS; + sSlotMachine->machineBias &= ~BIAS_REELTIME; + sSlotMachine->state = SLOTTASK_RESET_BIAS_FAILURE; } return FALSE; } -// SLOT_ACTION_SET_LUCKY_SPINS -static bool8 SlotAction_SetLuckySpins(struct Task *task) +// SLOTTASK_RESET_BIAS_FAILURE +static bool8 SlotTask_ResetBiasFailure(struct Task *task) { - if (++task->data[0] >= 30) + if (++task->tTimer >= 30) { - SetLuckySpins(); - sSlotMachine->state = SLOT_ACTION_AWAIT_REEL_STOP; + ResetBiasFailure(); + sSlotMachine->state = SLOTTASK_WAIT_REEL_STOP; } return FALSE; } -// SLOT_ACTION_AWAIT_REEL_STOP -static bool8 SlotAction_AwaitReelStop(struct Task *task) +// SLOTTASK_WAIT_REEL_STOP +static bool8 SlotTask_WaitReelStop(struct Task *task) { if (JOY_NEW(A_BUTTON)) { PlaySE(SE_CONTEST_PLACE); - StopSlotReel(sSlotMachine->currReel); - PressStopReelButton(sSlotMachine->currReel); - sSlotMachine->state = SLOT_ACTION_AWAIT_ALL_REELS_STOP; + StopSlotReel(sSlotMachine->currentReel); + PressStopReelButton(sSlotMachine->currentReel); + sSlotMachine->state = SLOTTASK_WAIT_ALL_REELS_STOP; } return FALSE; } -// SLOT_ACTION_AWAIT_ALL_REELS_STOP -static bool8 SlotAction_WaitForAllReelsToStop(struct Task *task) +// SLOTTASK_WAIT_ALL_REELS_STOP +static bool8 SlotTask_WaitAllReelsStop(struct Task *task) { - if (!IsSlotReelMoving(sSlotMachine->currReel)) + if (!IsSlotReelMoving(sSlotMachine->currentReel)) { - sSlotMachine->currReel++; - sSlotMachine->state = SLOT_ACTION_AWAIT_REEL_STOP; - if (sSlotMachine->currReel >= NUM_REELS) + sSlotMachine->currentReel++; + sSlotMachine->state = SLOTTASK_WAIT_REEL_STOP; + if (sSlotMachine->currentReel >= NUM_REELS) { - sSlotMachine->state = SLOT_ACTION_CHECK_MATCHES; + sSlotMachine->state = SLOTTASK_CHECK_MATCHES; } return TRUE; } return FALSE; } -// SLOT_ACTION_CHECK_MATCHES -static bool8 SlotAction_CheckMatches(struct Task *task) +// SLOTTASK_CHECK_MATCHES +static bool8 SlotTask_CheckMatches(struct Task *task) { - sSlotMachine->luckyFlags &= (LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777); + sSlotMachine->machineBias &= (BIAS_STRAIGHT_7 | BIAS_MIXED_7); CheckMatch(); if (sSlotMachine->reelTimeSpinsLeft) { @@ -1370,21 +1490,21 @@ static bool8 SlotAction_CheckMatches(struct Task *task) sSlotMachine->reelTimeSpinsUsed++; } - if (sSlotMachine->matchedSymbols) + if (sSlotMachine->matches) { - sSlotMachine->state = SLOT_ACTION_WAIT_PAYOUT; + sSlotMachine->state = SLOTTASK_WAIT_PAYOUT; AwardPayout(); FlashSlotMachineLights(); if ((sSlotMachine->netCoinLoss -= sSlotMachine->payout) < 0) { sSlotMachine->netCoinLoss = 0; } - if (sSlotMachine->matchedSymbols & ((1 << MATCHED_777_BLUE) | (1 << MATCHED_777_RED))) + if (sSlotMachine->matches & ((1 << MATCH_BLUE_7) | (1 << MATCH_RED_7))) { PlayFanfare(MUS_SLOTS_JACKPOT); CreateDigitalDisplayScene(DIG_DISPLAY_BONUS_BIG); } - else if (sSlotMachine->matchedSymbols & (1 << MATCHED_777_MIXED)) + else if (sSlotMachine->matches & (1 << MATCH_MIXED_7)) { PlayFanfare(MUS_SLOTS_JACKPOT); CreateDigitalDisplayScene(DIG_DISPLAY_BONUS_REG); @@ -1394,212 +1514,212 @@ static bool8 SlotAction_CheckMatches(struct Task *task) PlayFanfare(MUS_SLOTS_WIN); CreateDigitalDisplayScene(DIG_DISPLAY_WIN); } - // if you matched 777... - if (sSlotMachine->matchedSymbols & ((1 << MATCHED_777_MIXED) | (1 << MATCHED_777_BLUE) | (1 << MATCHED_777_RED))) + + if (sSlotMachine->matches & ((1 << MATCH_MIXED_7) | (1 << MATCH_BLUE_7) | (1 << MATCH_RED_7))) { - sSlotMachine->luckyFlags &= ~(LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777); - if (sSlotMachine->matchedSymbols & ((1 << MATCHED_777_BLUE) | (1 << MATCHED_777_RED))) + sSlotMachine->machineBias &= ~(BIAS_STRAIGHT_7 | BIAS_MIXED_7); + if (sSlotMachine->matches & ((1 << MATCH_BLUE_7) | (1 << MATCH_RED_7))) { + // ReelTime ends if it was ongoing sSlotMachine->reelTimeSpinsLeft = 0; sSlotMachine->reelTimeSpinsUsed = 0; sSlotMachine->luckyGame = FALSE; - if (sSlotMachine->matchedSymbols & (1 << MATCHED_777_BLUE)) - // this may be an error, but if you get blue 777, the game becomes lucky + if (sSlotMachine->matches & (1 << MATCH_BLUE_7)) sSlotMachine->luckyGame = TRUE; } } - if (sSlotMachine->matchedSymbols & (1 << MATCHED_POWER) && sSlotMachine->pikaPower < 16) + if (sSlotMachine->matches & (1 << MATCH_POWER) && sSlotMachine->pikaPowerBolts < 16) { - sSlotMachine->pikaPower++; - AddPikaPowerBolt(sSlotMachine->pikaPower); + sSlotMachine->pikaPowerBolts++; + AddPikaPowerBolt(sSlotMachine->pikaPowerBolts); } } else { CreateDigitalDisplayScene(DIG_DISPLAY_LOSE); - sSlotMachine->state = SLOT_ACTION_NO_MATCHES; + sSlotMachine->state = SLOTTASK_NO_MATCHES; if ((sSlotMachine->netCoinLoss += sSlotMachine->bet) > MAX_COINS) sSlotMachine->netCoinLoss = MAX_COINS; } return FALSE; } -// SLOT_ACTION_WAIT_PAYOUT -static bool8 SlotAction_WaitForPayoutToBeAwarded(struct Task *task) +// SLOTTASK_WAIT_PAYOUT +static bool8 SlotTask_WaitPayout(struct Task *task) { - if (IsFinalTask_RunAwardPayoutActions()) - sSlotMachine->state = SLOT_ACTION_END_PAYOUT; + if (IsFinalTask_Task_Payout()) + sSlotMachine->state = SLOTTASK_END_PAYOUT; return FALSE; } -// SLOT_ACTION_END_PAYOUT -static bool8 SlotAction_EndPayout(struct Task *task) +// SLOTTASK_END_PAYOUT +static bool8 SlotTask_EndPayout(struct Task *task) { if (TryStopSlotMachineLights()) { - sSlotMachine->state = SLOT_ACTION_RESET_BET_TILES; + sSlotMachine->state = SLOTTASK_RESET_BET_TILES; - if (sSlotMachine->matchedSymbols & ((1 << MATCHED_777_RED) | (1 << MATCHED_777_BLUE))) + if (sSlotMachine->matches & ((1 << MATCH_RED_7) | (1 << MATCH_BLUE_7))) IncrementGameStat(GAME_STAT_SLOT_JACKPOTS); - if (sSlotMachine->matchedSymbols & (1 << MATCHED_REPLAY)) + if (sSlotMachine->matches & (1 << MATCH_REPLAY)) { - sSlotMachine->currReel = 0; - sSlotMachine->state = SLOT_ACTION_START_SPIN; + sSlotMachine->currentReel = LEFT_REEL; + sSlotMachine->state = SLOTTASK_START_SPIN; } - if (sSlotMachine->matchedSymbols & (1 << MATCHED_POWER)) - sSlotMachine->state = SLOT_ACTION_MATCHED_POWER; + if (sSlotMachine->matches & (1 << MATCH_POWER)) + sSlotMachine->state = SLOTTASK_MATCHED_POWER; - if (sSlotMachine->reelTimeSpinsLeft && sSlotMachine->matchedSymbols & (1 << MATCHED_REPLAY)) + if (sSlotMachine->reelTimeSpinsLeft && sSlotMachine->matches & (1 << MATCH_REPLAY)) { CreateDigitalDisplayScene(DIG_DISPLAY_REEL_TIME); - sSlotMachine->state = SLOT_ACTION_WAIT_RT_ANIM; + sSlotMachine->state = SLOTTASK_WAIT_RT_ANIM; } } return FALSE; } -// SLOT_ACTION_MATCHED_POWER -static bool8 SlotAction_MatchedPower(struct Task *task) +// SLOTTASK_MATCHED_POWER +static bool8 SlotTask_MatchedPower(struct Task *task) { if (!IsPikaPowerBoltAnimating()) { - sSlotMachine->state = SLOT_ACTION_RESET_BET_TILES; - if (sSlotMachine->matchedSymbols & (1 << MATCHED_REPLAY)) + sSlotMachine->state = SLOTTASK_RESET_BET_TILES; + if (sSlotMachine->matches & (1 << MATCH_REPLAY)) { - sSlotMachine->state = SLOT_ACTION_START_SPIN; + sSlotMachine->state = SLOTTASK_START_SPIN; if (sSlotMachine->reelTimeSpinsLeft) { CreateDigitalDisplayScene(DIG_DISPLAY_REEL_TIME); - sSlotMachine->state = SLOT_ACTION_WAIT_RT_ANIM; + sSlotMachine->state = SLOTTASK_WAIT_RT_ANIM; } } } return FALSE; } -// SLOT_ACTION_WAIT_RT_ANIM -static bool8 SlotAction_WaitReelTimeAnim(struct Task *task) +// SLOTTASK_WAIT_RT_ANIM +static bool8 SlotTask_WaitReelTimeAnim(struct Task *task) { if (IsDigitalDisplayAnimFinished()) { - sSlotMachine->state = SLOT_ACTION_RESET_BET_TILES; - if (sSlotMachine->matchedSymbols & (1 << MATCHED_REPLAY)) + sSlotMachine->state = SLOTTASK_RESET_BET_TILES; + if (sSlotMachine->matches & (1 << MATCH_REPLAY)) { - sSlotMachine->state = SLOT_ACTION_START_SPIN; + sSlotMachine->state = SLOTTASK_START_SPIN; } } return FALSE; } -// SLOT_ACTION_RESET_BET_TILES -static bool8 SlotAction_ResetBetTiles(struct Task *task) +// SLOTTASK_RESET_BET_TILES +static bool8 SlotTask_ResetBetTiles(struct Task *task) { DarkenBetTiles(0); DarkenBetTiles(1); DarkenBetTiles(2); - sSlotMachine->state = SLOT_ACTION_READY_NEW_SPIN; + sSlotMachine->state = SLOTTASK_READY_NEW_SPIN; return FALSE; } -// SLOT_ACTION_NO_MATCHES -static bool8 SlotAction_NoMatches(struct Task *task) +// SLOTTASK_NO_MATCHES +static bool8 SlotTask_NoMatches(struct Task *task) { - if (++task->data[1] > 64) + if (++task->tTimer2 > 64) { - task->data[1] = 0; - sSlotMachine->state = SLOT_ACTION_RESET_BET_TILES; + task->tTimer2 = 0; + sSlotMachine->state = SLOTTASK_RESET_BET_TILES; } return FALSE; } -// SLOT_ACTION_ASK_QUIT -static bool8 SlotAction_AskQuit(struct Task *task) +// SLOTTASK_ASK_QUIT +static bool8 SlotTask_AskQuit(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_QuitTheGame, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); CreateYesNoMenuParameterized(0x15, 7, 0x214, 0x180, 0xE, 0xF); - sSlotMachine->state = SLOT_ACTION_HANDLE_QUIT_INPUT; + sSlotMachine->state = SLOTTASK_HANDLE_QUIT_INPUT; return FALSE; } -// SLOT_ACTION_HANDLE_QUIT_INPUT -static bool8 SlotAction_HandleQuitInput(struct Task *task) +// SLOTTASK_HANDLE_QUIT_INPUT +static bool8 SlotTask_HandleQuitInput(struct Task *task) { s8 input = Menu_ProcessInputNoWrapClearOnChoose(); - if (input == 0) // player chooses to quit + if (input == 0) // Chose to quit { ClearDialogWindowAndFrame(0, TRUE); DarkenBetTiles(0); DarkenBetTiles(1); DarkenBetTiles(2); sSlotMachine->coins += sSlotMachine->bet; - sSlotMachine->state = SLOT_ACTION_END; + sSlotMachine->state = SLOTTASK_END; } - else if (input == 1 || input == -1) // player chooses not to quit + else if (input == 1 || input == -1) // Chose not to quit { ClearDialogWindowAndFrame(0, TRUE); - sSlotMachine->state = SLOT_ACTION_BET_INPUT; + sSlotMachine->state = SLOTTASK_BET_INPUT; } return FALSE; } -// SLOT_ACTION_MSG_MAX_COINS -static bool8 SlotAction_PrintMsg_9999Coins(struct Task *task) +// SLOTTASK_MSG_MAX_COINS +static bool8 SlotTask_PrintMsg_MaxCoins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveGot9999Coins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); - sSlotMachine->state = SLOT_ACTION_WAIT_MSG_MAX_COINS; + sSlotMachine->state = SLOTTASK_WAIT_MSG_MAX_COINS; return FALSE; } -// SLOT_ACTION_WAIT_MSG_MAX_COINS -static bool8 SlotAction_WaitMsg_9999Coins(struct Task *task) +// SLOTTASK_WAIT_MSG_MAX_COINS +static bool8 SlotTask_WaitMsg_MaxCoins(struct Task *task) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { ClearDialogWindowAndFrame(0, TRUE); - sSlotMachine->state = SLOT_ACTION_BET_INPUT; + sSlotMachine->state = SLOTTASK_BET_INPUT; } return FALSE; } -// SLOT_ACTION_MSG_NO_MORE_COINS -static bool8 SlotAction_PrintMsg_NoMoreCoins(struct Task *task) +// SLOTTASK_MSG_NO_MORE_COINS +static bool8 SlotTask_PrintMsg_NoMoreCoins(struct Task *task) { DrawDialogueFrame(0, 0); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveRunOutOfCoins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); - sSlotMachine->state = SLOT_ACTION_WAIT_MSG_NO_MORE_COINS; + sSlotMachine->state = SLOTTASK_WAIT_MSG_NO_MORE_COINS; return FALSE; } -// SLOT_ACTION_WAIT_MSG_NO_MORE_COINS -static bool8 SlotAction_WaitMsg_NoMoreCoins(struct Task *task) +// SLOTTASK_WAIT_MSG_NO_MORE_COINS +static bool8 SlotTask_WaitMsg_NoMoreCoins(struct Task *task) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { ClearDialogWindowAndFrame(0, TRUE); - sSlotMachine->state = SLOT_ACTION_END; + sSlotMachine->state = SLOTTASK_END; } return FALSE; } -// SLOT_ACTION_END -static bool8 SlotAction_EndGame(struct Task *task) +// SLOTTASK_END +static bool8 SlotTask_EndGame(struct Task *task) { SetCoins(sSlotMachine->coins); TryPutFindThatGamerOnAir(GetCoins()); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB(0, 0, 0)); - sSlotMachine->state++; // SLOT_ACTION_FREE + sSlotMachine->state++; // SLOTTASK_FREE return FALSE; } -// SLOT_ACTION_FREE -static bool8 SlotAction_FreeDataStructures(struct Task *task) +// SLOTTASK_FREE +static bool8 SlotTask_FreeDataStructures(struct Task *task) { if (!gPaletteFade.active) { @@ -1640,93 +1760,129 @@ static bool8 SlotAction_FreeDataStructures(struct Task *task) return FALSE; } -static void DrawLuckyFlags(void) +# undef tTimer +# undef tTimer2 + +// Determine the biases for this round. There can be at most two biases, one of +// which would need to be a ReelTime bias. +// +// HOW IT WORKS: +// If the machine is already biased toward 7's, keep this bias. +// +// Otherwise, there are up to three draws. You first draw to see if you'll get +// to draw a Special bias. If so, then you draw for the Special bias (and can +// still potentially miss). +// +// If you didn't get to draw a Special bias, missed a Special bias, or drew a +// ReelTime bias, then you can still try to draw a Regular bias. +static void DrawMachineBias(void) { - u8 attempts; + u8 whichBias; if (sSlotMachine->reelTimeSpinsLeft == 0) { - if (!(sSlotMachine->luckyFlags & (LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777))) + // DO NOT SUBMIT until deleting this!!! Test code to see effects of + // power bolts on ReelTime. + // if ((Random() % 100) < 30) { + // sSlotMachine->machineBias = BIAS_REELTIME; + // } else { + // sSlotMachine->machineBias = BIAS_POWER; + // } + if (!(sSlotMachine->machineBias & (BIAS_STRAIGHT_7 | BIAS_MIXED_7))) { - if (IsThisRoundLucky()) + if (ShouldTrySpecialBias()) { - attempts = AttemptsAtLuckyFlags_Top3(); - if (attempts != ARRAY_COUNT(sLuckyFlagSettings_Top3)) // if you found a lucky number + whichBias = TrySelectBias_Special(); + if (whichBias != ARRAY_COUNT(sBiasesSpecial)) // A bias was selected { - // attempts == 1: reelTime flag set - sSlotMachine->luckyFlags |= sLuckyFlagSettings_Top3[attempts]; - if (attempts != 1) - return; + sSlotMachine->machineBias |= sBiasesSpecial[whichBias]; + + // ReelTime was not selected; don't add other biases + if (whichBias != 1) return; } } - // if it's not a lucky round or you got reel time, roll for the lower lucky flags - attempts = AttemptsAtLuckyFlags_NotTop3(); - if (attempts != ARRAY_COUNT(sLuckyFlagSettings_NotTop3)) // if you found a lucky number - sSlotMachine->luckyFlags |= sLuckyFlagSettings_NotTop3[attempts]; + + whichBias = TrySelectBias_Regular(); + if (whichBias != ARRAY_COUNT(sBiasesRegular)) // A bias was selected + sSlotMachine->machineBias |= sBiasesRegular[whichBias]; } } } -static void SetLuckySpins(void) +// Reset `didNotFailBias` to match `machineBias`. +static void ResetBiasFailure(void) { - sSlotMachine->isLuckySpin = FALSE; - if (sSlotMachine->luckyFlags) - sSlotMachine->isLuckySpin = TRUE; + sSlotMachine->didNotFailBias = FALSE; + if (sSlotMachine->machineBias) + sSlotMachine->didNotFailBias = TRUE; } -static u8 GetBiasTag(u8 luckyFlags) +// See sBiasTags for each bias's corresponding tag. +static u8 GetBiasTag(u8 machineBias) { u8 i; for (i = 0; i < 8; i++) { - if (luckyFlags & 1) + if (machineBias & 1) return sBiasTags[i]; - luckyFlags >>= 1; + machineBias >>= 1; } return 0; } -// you have way more luck betting 3 coins than anything lower -static bool8 IsThisRoundLucky(void) +// Decides whether you will be given the opportunity to draw for a Special bias. +// Depends on your bet and the machine you're using. +// +// The probability of getting to draw a Special is miniscule if you don't bet 3 +// coins: barely 1% even on the luckiest machine. +// +// The odds increase to roughly ~5% if you bet 3 coins. +static bool8 ShouldTrySpecialBias(void) { u8 rval = Random(); - if (sLuckyRoundProbabilities[sSlotMachine->machineId][sSlotMachine->bet - 1] > rval) + if (sSpecialDrawOdds[sSlotMachine->machineId][sSlotMachine->bet - 1] > rval) return TRUE; return FALSE; } -static u8 AttemptsAtLuckyFlags_Top3(void) +// Draws for a Special bias. Note that even when you're given the opportunity to +// draw a Special bias, you can still miss. +// +// On the luckiest machine, there's a 61% chance of drawing no Special bias. On +// the unluckiest, a 73% chance. +static u8 TrySelectBias_Special(void) { - s16 count; + s16 whichBias; - for (count = 0; count < (int)ARRAY_COUNT(sLuckyFlagSettings_Top3); count++) + for (whichBias = 0; whichBias < (int)ARRAY_COUNT(sBiasesSpecial); whichBias++) { s16 rval = Random() & 0xff; - s16 value = sLuckyFlagProbabilities_Top3[count][sSlotMachine->machineId]; + s16 value = sBiasProbabilities_Special[whichBias][sSlotMachine->machineId]; if (value > rval) break; } - return count; + return whichBias; } -static u8 AttemptsAtLuckyFlags_NotTop3(void) +static u8 TrySelectBias_Regular(void) { - s16 count; + s16 whichBias; - for (count = 0; count < (int)ARRAY_COUNT(sLuckyFlagSettings_NotTop3); count++) + for (whichBias = 0; whichBias < (int)ARRAY_COUNT(sBiasesRegular); whichBias++) { - s16 rval = Random() & 0xff; // random byte - s16 value = sLuckyFlagProbabilities_NotTop3[count][sSlotMachine->machineId]; - // make first attempt easier if it's a lucky game - if (count == 0 && sSlotMachine->luckyGame == TRUE) + s16 rval = Random() & 0xff; + s16 value = sBiasProbabilities_Regular[whichBias][sSlotMachine->machineId]; + + // Boost odds of BIAS_POWER if it's a lucky game. + if (whichBias == 0 && sSlotMachine->luckyGame == TRUE) { value += 10; if (value > 0x100) value = 0x100; } - // make last attempt harder if it's a lucky game - else if (count == 4 && sSlotMachine->luckyGame == TRUE) + // Reduce odds of BIAS_REPLAY if it's a lucky game + else if (whichBias == 4 && sSlotMachine->luckyGame == TRUE) { value -= 10; if (value < 0) @@ -1735,45 +1891,60 @@ static u8 AttemptsAtLuckyFlags_NotTop3(void) if (value > rval) break; } - return count; + return whichBias; } -static u8 GetReelTimeProbability(u8 reelTimeDraw) +// Return the probability of drawing the given number of ReelTime spins. +// +// This depends on whether it is a lucky game and the number of Power bolts you +// have collected. +static u8 GetReelTimeSpinProbability(u8 spins) { if (sSlotMachine->luckyGame == FALSE) - return sReeltimeProbabilities_UnluckyGame[reelTimeDraw][sSlotMachine->pikaPower]; + return sReelTimeProbabilities_NormalGame[spins][sSlotMachine->pikaPowerBolts]; else - return sReelTimeProbabilities_LuckyGame[reelTimeDraw][sSlotMachine->pikaPower]; + return sReelTimeProbabilities_LuckyGame[spins][sSlotMachine->pikaPowerBolts]; } -static void GetReeltimeDraw(void) +// The way this is computed skews the odds much more toward drawing a 0 than +// intended. It initially checks whether you draw a 0 (using the intended +// probability). It then tries to draw positive values, but if these draws all +// miss, you'll still draw a 0. +// +// As a result, even when the power gauge is maxed out, you still have a ~30% +// chance of drawing 0 spins. See sReelTimeProbabilities for more details. +// +// Drawing a random number via a cumulative pdf would have prevented this. +static void GetReelTimeDraw(void) { u8 rval; - s16 reelTimeDraw; + s16 spins; sSlotMachine->reelTimeDraw = 0; rval = Random(); - if (rval < GetReelTimeProbability(0)) + if (rval < GetReelTimeSpinProbability(0)) return; - for (reelTimeDraw = 5; reelTimeDraw > 0; reelTimeDraw--) + for (spins = 5; spins > 0; spins--) { rval = Random(); - if (rval < GetReelTimeProbability(reelTimeDraw)) + if (rval < GetReelTimeSpinProbability(spins)) break; } - sSlotMachine->reelTimeDraw = reelTimeDraw; + sSlotMachine->reelTimeDraw = spins; } -static bool8 ShouldReelTimeMachineExplode(u16 i) +// Returns true if the ReelTime machine should explode. Each time we check, +// the odds of explosion increase. +static bool8 ShouldReelTimeMachineExplode(u16 check) { u16 rval = Random() & 0xff; - if (rval < sReelTimeExplodeProbability[i]) + if (rval < sReelTimeExplodeProbability[check]) return TRUE; else return FALSE; } -static u16 SlowReelSpeed(void) +static u16 ReelTimeSpeed(void) { u8 i = 0; u8 rval; @@ -1786,20 +1957,23 @@ static u16 SlowReelSpeed(void) i = 2; else if (sSlotMachine->netCoinLoss >= 150) i = 1; + rval = Random() % 100; - value = sReelIncrementTable[i][0]; + value = sReelTimeSpeed_Probabilities[i][0]; if (rval < value) - return 4; + return REEL_HALF_SPEED; + rval = Random() % 100; - value = sReelIncrementTable[i][1] + sReelTimeBonusIncrementTable[sSlotMachine->reelTimeSpinsUsed]; + value = sReelTimeSpeed_Probabilities[i][1] + sQuarterSpeed_ProbabilityBoost[sSlotMachine->reelTimeSpinsUsed]; if (rval < value) - return 2; - return 8; + return REEL_QUARTER_SPEED; + + return REEL_NORMAL_SPEED; } static void CheckMatch(void) { - sSlotMachine->matchedSymbols = 0; + sSlotMachine->matches = 0; CheckMatch_CenterRow(); if (sSlotMachine->bet > 1) CheckMatch_TopAndBottom(); @@ -1809,140 +1983,146 @@ static void CheckMatch(void) static void CheckMatch_CenterRow(void) { - u8 c1, c2, c3, match; + u8 tag1, tag2, tag3, match; - c1 = GetTagAtRest(LEFT_REEL, 2); - c2 = GetTagAtRest(MIDDLE_REEL, 2); - c3 = GetTagAtRest(RIGHT_REEL, 2); - match = GetMatchFromSymbols(c1, c2, c3); - if (match != MATCHED_NONE) + tag1 = GetTagAtRest(LEFT_REEL, 2); + tag2 = GetTagAtRest(MIDDLE_REEL, 2); + tag3 = GetTagAtRest(RIGHT_REEL, 2); + match = GetMatchFromTags(tag1, tag2, tag3); + if (match != MATCH_NONE) { sSlotMachine->payout += sSlotPayouts[match]; - sSlotMachine->matchedSymbols |= sSlotMatchFlags[match]; - FlashMatchLine(MATCH_MIDDLE_ROW); + sSlotMachine->matches |= sSlotMatchFlags[match]; + FlashMatchLine(ROW_MIDDLE); } } static void CheckMatch_TopAndBottom(void) { - u8 c1, c2, c3, match; + u8 tag1, tag2, tag3, match; - c1 = GetTagAtRest(LEFT_REEL, 1); - c2 = GetTagAtRest(MIDDLE_REEL, 1); - c3 = GetTagAtRest(RIGHT_REEL, 1); - match = GetMatchFromSymbols(c1, c2, c3); - if (match != MATCHED_NONE) + tag1 = GetTagAtRest(LEFT_REEL, 1); + tag2 = GetTagAtRest(MIDDLE_REEL, 1); + tag3 = GetTagAtRest(RIGHT_REEL, 1); + match = GetMatchFromTags(tag1, tag2, tag3); + if (match != MATCH_NONE) { - if (match == MATCHED_1CHERRY) - match = MATCHED_2CHERRY; + if (match == MATCH_CHERRY) + match = MATCH_TOPBOT_CHERRY; sSlotMachine->payout += sSlotPayouts[match]; - sSlotMachine->matchedSymbols |= sSlotMatchFlags[match]; - FlashMatchLine(MATCH_TOP_ROW); + sSlotMachine->matches |= sSlotMatchFlags[match]; + FlashMatchLine(ROW_TOP); } - c1 = GetTagAtRest(LEFT_REEL, 3); - c2 = GetTagAtRest(MIDDLE_REEL, 3); - c3 = GetTagAtRest(RIGHT_REEL, 3); - match = GetMatchFromSymbols(c1, c2, c3); - if (match != MATCHED_NONE) + tag1 = GetTagAtRest(LEFT_REEL, 3); + tag2 = GetTagAtRest(MIDDLE_REEL, 3); + tag3 = GetTagAtRest(RIGHT_REEL, 3); + match = GetMatchFromTags(tag1, tag2, tag3); + if (match != MATCH_NONE) { - if (match == MATCHED_1CHERRY) - match = MATCHED_2CHERRY; + if (match == MATCH_CHERRY) + match = MATCH_TOPBOT_CHERRY; sSlotMachine->payout += sSlotPayouts[match]; - sSlotMachine->matchedSymbols |= sSlotMatchFlags[match]; - FlashMatchLine(MATCH_BOTTOM_ROW); + sSlotMachine->matches |= sSlotMatchFlags[match]; + FlashMatchLine(ROW_BOTTOM); } } static void CheckMatch_Diagonals(void) { - u8 c1, c2, c3, match; + u8 tag1, tag2, tag3, match; - c1 = GetTagAtRest(LEFT_REEL, 1); - c2 = GetTagAtRest(MIDDLE_REEL, 2); - c3 = GetTagAtRest(RIGHT_REEL, 3); - match = GetMatchFromSymbols(c1, c2, c3); - if (match != MATCHED_NONE) + tag1 = GetTagAtRest(LEFT_REEL, 1); + tag2 = GetTagAtRest(MIDDLE_REEL, 2); + tag3 = GetTagAtRest(RIGHT_REEL, 3); + match = GetMatchFromTags(tag1, tag2, tag3); + if (match != MATCH_NONE) { - if (match != MATCHED_1CHERRY) + // Don't add payout for cherry, since it's already counted in + // CheckMatch_TopAndBottom(). + if (match != MATCH_CHERRY) { sSlotMachine->payout += sSlotPayouts[match]; - sSlotMachine->matchedSymbols |= sSlotMatchFlags[match]; + sSlotMachine->matches |= sSlotMatchFlags[match]; } - FlashMatchLine(MATCH_NWSE_DIAG); + FlashMatchLine(ROW_DIAG_NWSE); } - c1 = GetTagAtRest(LEFT_REEL, 3); - c2 = GetTagAtRest(MIDDLE_REEL, 2); - c3 = GetTagAtRest(RIGHT_REEL, 1); - match = GetMatchFromSymbols(c1, c2, c3); - if (match != MATCHED_NONE) + tag1 = GetTagAtRest(LEFT_REEL, 3); + tag2 = GetTagAtRest(MIDDLE_REEL, 2); + tag3 = GetTagAtRest(RIGHT_REEL, 1); + match = GetMatchFromTags(tag1, tag2, tag3); + if (match != MATCH_NONE) { - if (match != MATCHED_1CHERRY) + // Don't add payout for cherry, since it's already counted in + // CheckMatch_TopAndBottom(). + if (match != MATCH_CHERRY) { sSlotMachine->payout += sSlotPayouts[match]; - sSlotMachine->matchedSymbols |= sSlotMatchFlags[match]; + sSlotMachine->matches |= sSlotMatchFlags[match]; } - FlashMatchLine(MATCH_NESW_DIAG); + FlashMatchLine(ROW_DIAG_NESW); } } -static u8 GetMatchFromSymbols(u8 c1, u8 c2, u8 c3) +static u8 GetMatchFromTags(u8 tag1, u8 tag2, u8 tag3) { - if (c1 == c2 && c1 == c3) - return sSymToMatch[c1]; - if (c1 == GFXTAG_7_RED && c2 == GFXTAG_7_RED && c3 == GFXTAG_7_BLUE) - return MATCHED_777_MIXED; - if (c1 == GFXTAG_7_BLUE && c2 == GFXTAG_7_BLUE && c3 == GFXTAG_7_RED) - return MATCHED_777_MIXED; - if (c1 == GFXTAG_CHERRY) - return MATCHED_1CHERRY; - return MATCHED_NONE; + if (tag1 == tag2 && tag1 == tag3) + return sTagToMatch[tag1]; + if (tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) + return MATCH_MIXED_7; + if (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) + return MATCH_MIXED_7; + if (tag1 == GFXTAG_CHERRY) + return MATCH_CHERRY; + return MATCH_NONE; } static void AwardPayout(void) { - RunAwardPayoutActions(CreateTask(RunAwardPayoutActions, 4)); + Task_Payout(CreateTask(Task_Payout, 4)); } -static bool8 IsFinalTask_RunAwardPayoutActions(void) +static bool8 IsFinalTask_Task_Payout(void) { - if (FindTaskIdByFunc(RunAwardPayoutActions) == TAIL_SENTINEL) + if (FindTaskIdByFunc(Task_Payout) == TAIL_SENTINEL) return TRUE; else return FALSE; } -static void RunAwardPayoutActions(u8 taskId) +static void Task_Payout(u8 taskId) { - while (sAwardPayoutActions[gTasks[taskId].data[0]](&gTasks[taskId])) + while (sPayoutTasks[gTasks[taskId].data[0]](&gTasks[taskId])) ; } -static bool8 AwardPayoutAction0(struct Task *task) +#define tState data[0] +#define tTimer data[1] + +static bool8 PayoutTask_Init(struct Task *task) { if (IsMatchLineDoneFlashingBeforePayout()) { - task->data[0]++; + task->tState++; // PAYOUT_TASK_GIVE_PAYOUT if (sSlotMachine->payout == 0) { - task->data[0] = 2; + task->tState = PAYOUT_TASK_FREE; return TRUE; } } return FALSE; } -// task->data[1]: timer -static bool8 AwardPayoutAction_GivePayoutToPlayer(struct Task *task) +static bool8 PayoutTask_GivePayout(struct Task *task) { - if (!task->data[1]--) + if (!task->tTimer--) { if (IsFanfareTaskInactive()) PlaySE(SE_PIN); sSlotMachine->payout--; if (sSlotMachine->coins < MAX_COINS) sSlotMachine->coins++; - task->data[1] = 8; + task->tTimer = 8; if (JOY_HELD(A_BUTTON)) - task->data[1] = 4; + task->tTimer = 4; } if (IsFanfareTaskInactive() && JOY_NEW(START_BUTTON)) { @@ -1953,17 +2133,20 @@ static bool8 AwardPayoutAction_GivePayoutToPlayer(struct Task *task) sSlotMachine->payout = 0; } if (sSlotMachine->payout == 0) - task->data[0]++; + task->tState++; // PAYOUT_TASK_FREE return FALSE; } -static bool8 AwardPayoutAction_FreeTask(struct Task *task) +static bool8 PayoutTask_Free(struct Task *task) { if (TryStopMatchLinesFlashing()) - DestroyTask(FindTaskIdByFunc(RunAwardPayoutActions)); + DestroyTask(FindTaskIdByFunc(Task_Payout)); return FALSE; } +#undef tState +#undef tTimer + // Get the tag at position `offset` below the top of the reel's tape. Note that // if `offset` is negative, it wraps around to the bottom of the tape. // .-----------------. @@ -1978,46 +2161,48 @@ static bool8 AwardPayoutAction_FreeTask(struct Task *task) // .-----------------. static u8 GetTagAtRest(u8 reel, s16 offset) { - s16 pos = (sSlotMachine->reelPositions[reel] + offset) % SYMBOLS_PER_REEL; + s16 pos = (sSlotMachine->reelPositions[reel] + offset) % TAGS_PER_REEL; if (pos < 0) - pos += SYMBOLS_PER_REEL; - return sReelSymbolTileTags[reel][pos]; + pos += TAGS_PER_REEL; + return sReelTileTags[reel][pos]; } // Calculates GetTagAtRest as if the reel were snapped downwards into place. static u8 GetTag(u8 reel, s16 offset) { s16 inc = 0; - s16 pixelOffset = sSlotMachine->reelPixelOffsets[reel] % REEL_SYMBOL_HEIGHT; + s16 pixelOffset = sSlotMachine->reelPixelOffsets[reel] % TAG_HEIGHT; if (pixelOffset != 0) inc = -1; return GetTagAtRest(reel, offset + inc); } -static u8 GetNearbyReelTimeTag(s16 n) +static u8 GetReelTimeTag(s16 offset) { - s16 newPosition = (sSlotMachine->reeltimePosition + n) % 6; + s16 newPosition = (sSlotMachine->reeltimePosition + offset) % REELTIME_TAGS; if (newPosition < 0) - newPosition += 6; + newPosition += REELTIME_TAGS; return sReelTimeTags[newPosition]; } static void AdvanceSlotReel(u8 reelIndex, s16 value) { sSlotMachine->reelPixelOffsets[reelIndex] += value; - sSlotMachine->reelPixelOffsets[reelIndex] %= 504; - sSlotMachine->reelPositions[reelIndex] = SYMBOLS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / REEL_SYMBOL_HEIGHT; + sSlotMachine->reelPixelOffsets[reelIndex] %= REEL_HEIGHT; + sSlotMachine->reelPositions[reelIndex] = TAGS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / TAG_HEIGHT; } +// Advances the reel no further than the next tag. Returns the remaining pixels +// until the next tag. s16 AdvanceSlotReelToNextTag(u8 reelIndex, s16 value) { - s16 offset = sSlotMachine->reelPixelOffsets[reelIndex] % REEL_SYMBOL_HEIGHT; + s16 offset = sSlotMachine->reelPixelOffsets[reelIndex] % TAG_HEIGHT; if (offset != 0) { if (offset < value) value = offset; AdvanceSlotReel(reelIndex, value); - offset = sSlotMachine->reelPixelOffsets[reelIndex] % REEL_SYMBOL_HEIGHT; + offset = sSlotMachine->reelPixelOffsets[reelIndex] % TAG_HEIGHT; } return offset; } @@ -2025,48 +2210,53 @@ s16 AdvanceSlotReelToNextTag(u8 reelIndex, s16 value) static void AdvanceReeltimeReel(s16 value) { sSlotMachine->reeltimePixelOffset += value; - sSlotMachine->reeltimePixelOffset %= 120; - sSlotMachine->reeltimePosition = 6 - sSlotMachine->reeltimePixelOffset / 20; + sSlotMachine->reeltimePixelOffset %= REELTIME_REEL_HEIGHT; + sSlotMachine->reeltimePosition = REELTIME_TAGS - sSlotMachine->reeltimePixelOffset / REELTIME_TAG_HEIGHT; } +// Advances the reel no further than the next tag. Returns the remaining pixels +// until the next tag. s16 AdvanceReeltimeReelToNextTag(s16 value) { - s16 offset = sSlotMachine->reeltimePixelOffset % 20; + s16 offset = sSlotMachine->reeltimePixelOffset % REELTIME_TAG_HEIGHT; if (offset != 0) { if (offset < value) value = offset; AdvanceReeltimeReel(value); - offset = sSlotMachine->reeltimePixelOffset % 20; + offset = sSlotMachine->reeltimePixelOffset % REELTIME_TAG_HEIGHT; } return offset; } -#define tState data[0] -#define tMoving data[14] -#define tReelId data[15] +#define tState data[0] +#define tExtraTurns data[1] +#define tShockMagnitude data[1] +#define tTimer data[2] +#define tMoving data[14] +#define tReelId data[15] -static void CreateSlotReelTasks(void) +static void CreateReelTasks(void) { u8 i; for (i = 0; i < NUM_REELS; i++) { - u8 taskId = CreateTask(Task_RunSlotReelActions, 2); + u8 taskId = CreateTask(Task_Reel, 2); gTasks[taskId].tReelId = i; sSlotMachine->slotReelTasks[i] = taskId; - Task_RunSlotReelActions(taskId); + Task_Reel(taskId); } } static void SpinSlotReel(u8 reelIndex) { - gTasks[sSlotMachine->slotReelTasks[reelIndex]].tState = REEL_ACTION_SPIN; + gTasks[sSlotMachine->slotReelTasks[reelIndex]].tState = REEL_TASK_SPIN; gTasks[sSlotMachine->slotReelTasks[reelIndex]].tMoving = TRUE; } static void StopSlotReel(u8 reelIndex) { - gTasks[sSlotMachine->slotReelTasks[reelIndex]].tState = REEL_ACTION_STOP; + gTasks[sSlotMachine->slotReelTasks[reelIndex]].tState = REEL_TASK_DECIDE_STOP; } static bool8 IsSlotReelMoving(u8 reelIndex) @@ -2074,100 +2264,118 @@ static bool8 IsSlotReelMoving(u8 reelIndex) return gTasks[sSlotMachine->slotReelTasks[reelIndex]].tMoving; } -static void Task_RunSlotReelActions(u8 taskId) +static void Task_Reel(u8 taskId) { - while (sSlotReelActions[gTasks[taskId].tState](&gTasks[taskId])) + while (sReelTasks[gTasks[taskId].tState](&gTasks[taskId])) ; } -// task->data[1] reel turns -static bool8 SlotReelAction_StayStill(struct Task *task) +static bool8 ReelTask_StayStill(struct Task *task) { return FALSE; } -static bool8 SlotReelAction_Spin(struct Task *task) +static bool8 ReelTask_Spin(struct Task *task) { - AdvanceSlotReel(task->tReelId, sSlotMachine->reelIncrement); + AdvanceSlotReel(task->tReelId, sSlotMachine->reelSpeed); return FALSE; } -// As in previous generations, the slot machine often doesn't stop exactly when you press stop -static bool8 SlotReelAction_DecideWhereToStop(struct Task *task) +// In ReelTime, the reel stops immediately. Otherwise, the game may manipulate +// the results by stopping after at most 4 extra turns. The exact behavior +// differs depending on whether the machine has a bias. +// +// If the machine has a bias, it will try to match the bias tag in each reel. +// +// Otherwise, if the machine doesn't have a bias or it could not line up the +// bias tag in any of the previous reels, it will perform the NoBias stopping +// routine, which manipulates the outcome so the player loses. +static bool8 ReelTask_DecideStop(struct Task *task) { - task->tState++; - // initialize data for that reel --> these will be changed if sBiasTags can be lined up + task->tState++; // REEL_TASK_STOP_MOVE sSlotMachine->winnerRows[task->tReelId] = 0; sSlotMachine->reelExtraTurns[task->tReelId] = 0; - if (sSlotMachine->reelTimeSpinsLeft == 0 && (sSlotMachine->luckyFlags == 0 || !sSlotMachine->isLuckySpin || !sDecideReelTurns_BiasTag[task->tReelId]())) + if (sSlotMachine->reelTimeSpinsLeft == 0) { - sSlotMachine->isLuckySpin = FALSE; - sDecideReelTurns_NoBiasTag[task->tReelId](); + if (sSlotMachine->machineBias == 0 || !sSlotMachine->didNotFailBias || !sDecideStop_Bias[task->tReelId]()) + { + sSlotMachine->didNotFailBias = FALSE; + sDecideStop_NoBias[task->tReelId](); + } } - task->data[1] = sSlotMachine->reelExtraTurns[task->tReelId]; + task->tExtraTurns = sSlotMachine->reelExtraTurns[task->tReelId]; return TRUE; } -// go to next tag and then do any additional turns -static bool8 SlotReelAction_MoveToStop(struct Task *task) +// Go to the next tag, then add any extra turns. +static bool8 ReelTask_MoveToStop(struct Task *task) { u16 reelStopShocks[ARRAY_COUNT(sReelStopShocks)]; s16 reelPixelPos; memcpy(reelStopShocks, sReelStopShocks, sizeof(sReelStopShocks)); - reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % REEL_SYMBOL_HEIGHT; + reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % TAG_HEIGHT; if (reelPixelPos != 0) - reelPixelPos = AdvanceSlotReelToNextTag(task->tReelId, sSlotMachine->reelIncrement); + reelPixelPos = AdvanceSlotReelToNextTag(task->tReelId, sSlotMachine->reelSpeed); else if (sSlotMachine->reelExtraTurns[task->tReelId]) { sSlotMachine->reelExtraTurns[task->tReelId]--; - AdvanceSlotReel(task->tReelId, sSlotMachine->reelIncrement); - reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % REEL_SYMBOL_HEIGHT; + AdvanceSlotReel(task->tReelId, sSlotMachine->reelSpeed); + reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % TAG_HEIGHT; } + if (reelPixelPos == 0 && sSlotMachine->reelExtraTurns[task->tReelId] == 0) { - task->tState++; - task->data[1] = reelStopShocks[task->data[1]]; - task->data[2] = 0; + task->tState++; // REEL_ACTION_STOP_SHAKE + task->tShockMagnitude = reelStopShocks[task->tExtraTurns]; + task->tTimer = 0; } return FALSE; } -// make selected tag oscillate before it becomes still -static bool8 SlotReelAction_OscillatingStop(struct Task *task) +// The reel shakes a little at the selected tag before settling. +static bool8 ReelTask_ShakingStop(struct Task *task) { - sSlotMachine->reelPixelOffsetsWhileStopping[task->tReelId] = task->data[1]; - task->data[1] = -task->data[1]; - task->data[2]++; - if ((task->data[2] & 0x3) == 0) - task->data[1] >>= 1; - if (task->data[1] == 0) + sSlotMachine->reelShockOffsets[task->tReelId] = task->tShockMagnitude; + task->tShockMagnitude = -task->tShockMagnitude; + task->tTimer++; + if ((task->tTimer & 0x3) == 0) + task->tShockMagnitude >>= 1; + if (task->tShockMagnitude == 0) { task->tState = 0; task->tMoving = FALSE; - sSlotMachine->reelPixelOffsetsWhileStopping[task->tReelId] = 0; + sSlotMachine->reelShockOffsets[task->tReelId] = 0; } return FALSE; } #undef tState +#undef tExtraTurns +#undef tShockMagnitude +#undef tTimer #undef tMoving #undef tReelId -static bool8 DecideReelTurns_BiasTag_Reel1(void) +// We pass along two tags to bias toward. If the machine is biased toward 7's, +// we pass both the 7 tags. Otherwise, we just pass the bias tag twice. +static bool8 DecideStop_Bias_Reel1(void) { - u8 tag2 = GetBiasTag(sSlotMachine->luckyFlags); + u8 tag2 = GetBiasTag(sSlotMachine->machineBias); u8 tag1 = tag2; - if (sSlotMachine->luckyFlags & (LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777)) + if (sSlotMachine->machineBias & (BIAS_STRAIGHT_7 | BIAS_MIXED_7)) { tag1 = GFXTAG_7_RED; tag2 = GFXTAG_7_BLUE; } - return sDecideReelTurns_BiasTag_Reel1_Bets[sSlotMachine->bet - 1](tag1, tag2); + return sDecideStop_Bias_Reel1_Bets[sSlotMachine->bet - 1](tag1, tag2); } -static bool8 AreTagsAtPosition_Reel1(s16 pos, u8 tag1, u8 tag2) +// The biasTag for subsequent reels is determined based on which of the bias +// tags can be found in reel 1. This really only matters when the machine is +// biased toward 7's. It will try to match a 7 of the same color as reel 1. +static bool8 EitherTagAtPos_Reel1(s16 pos, u8 tag1, u8 tag2) { u8 tag = GetTag(LEFT_REEL, pos); if (tag == tag1 || tag == tag2) @@ -2178,52 +2386,77 @@ static bool8 AreTagsAtPosition_Reel1(s16 pos, u8 tag1, u8 tag2) return FALSE; } -static bool8 AreCherriesOnScreen_Reel1(s16 offsetFromCenter) +// Returns true if there are cherries on screen in reel 1 after the given number +// of turns. +static bool8 AreCherriesOnScreen_Reel1(s16 turns) { - if (GetTag(LEFT_REEL, 1 - offsetFromCenter) == GFXTAG_CHERRY - || GetTag(LEFT_REEL, 2 - offsetFromCenter) == GFXTAG_CHERRY - || GetTag(LEFT_REEL, 3 - offsetFromCenter) == GFXTAG_CHERRY) + if (GetTag(LEFT_REEL, 1 - turns) == GFXTAG_CHERRY || + GetTag(LEFT_REEL, 2 - turns) == GFXTAG_CHERRY || + GetTag(LEFT_REEL, 3 - turns) == GFXTAG_CHERRY) return TRUE; else return FALSE; } -static bool8 IsBiasTowardsCherryOr7s(void) +static bool8 BiasedTowardCherryOr7s(void) { - if (sSlotMachine->luckyFlags & (LUCKY_BIAS_777 | LUCKY_BIAS_MIXED_777 | LUCKY_BIAS_CHERRY)) + if (sSlotMachine->machineBias & (BIAS_STRAIGHT_7 | BIAS_MIXED_7 | BIAS_CHERRY)) return TRUE; else return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel1_Bet1(u8 tag1, u8 tag2) +// If a biased tag appears in the center of reel 1 within the next 4 turns, stop +// there. That tag becomes the biasTag for the subsequent reels. +static bool8 DecideStop_Bias_Reel1_Bet1(u8 tag1, u8 tag2) { s16 i; - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { - // if a lucky tag appears in the center row within 4 turns - if (AreTagsAtPosition_Reel1(2 - i, tag1, tag2)) + if (EitherTagAtPos_Reel1(2 - i, tag1, tag2)) { sSlotMachine->winnerRows[LEFT_REEL] = 2; - sSlotMachine->reelExtraTurns[0] = i; + sSlotMachine->reelExtraTurns[LEFT_REEL] = i; return TRUE; } } return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel1_Bet2or3(u8 tag1, u8 tag2) +// There is slightly different behavior depending on the machine's bias. +// +// Bias toward cherry or 7s: +// - Check if a cherry or 7 is currently on screen. If so, stop immediately. +// - Roll up to 4 extra turns to see if a cherry or 7 enters the screen: +// - If it enters after 1 turn, stop the reel when it gets the bottom row. +// - Otherwise, if it enters before the 4th turn, stop the reel when it gets +// to the middle row. +// - If it enters on the 4th turn, stop here. It will be in the top row. +// +// Other bias: +// - This is very similar, except the game is checking for the bias tag rather +// than cherries / 7s. +// +// However, the game adds an additional constraint: it will not stop if there +// will be any cherries on screen. Presumably, this ensures that you will not +// get any matches if you fail to line up the bias tag in the remaining +// reels. +// +// This is programmed in such a way that it excludes more options than +// necessary. If there are cherries in the two positions below the bias tag, +// it will skip over this option, even if those cherries would not have ended +// up on screen. +static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 tag1, u8 tag2) { s16 i; - bool8 biased = IsBiasTowardsCherryOr7s(); - // if lucky numbers or no cherries are currently on screen in reel 1... - if (biased || !AreCherriesOnScreen_Reel1(0)) + bool8 cherry7Bias = BiasedTowardCherryOr7s(); + if (cherry7Bias || !AreCherriesOnScreen_Reel1(0)) { - for (i = 1; i < 4; i++) + // Check the current screen + for (i = 1; i <= 3; i++) { - // if a bias tag is currently on the screen - if (AreTagsAtPosition_Reel1(i, tag1, tag2)) + if (EitherTagAtPos_Reel1(i, tag1, tag2)) { sSlotMachine->winnerRows[0] = i; sSlotMachine->reelExtraTurns[0] = 0; @@ -2231,30 +2464,27 @@ static bool8 DecideReelTurns_BiasTag_Reel1_Bet2or3(u8 tag1, u8 tag2) } } } - for (i = 1; i < 5; i++) + + // Check the next 4 turns + for (i = 1; i <= 4; i++) { - bool8 biasedCopy = biased; // redundant - // if biased or if in the next 4 turns there is a screen with no cherries... - if (biasedCopy || !AreCherriesOnScreen_Reel1(i)) + bool8 cherry7BiasCopy = cherry7Bias; // redundant + if (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(i)) { - //...and if a bias tag is in top row of that screen - if (AreTagsAtPosition_Reel1(1 - i, tag1, tag2)) + if (EitherTagAtPos_Reel1(1 - i, tag1, tag2)) { - //...and if it only took 1 turn and the lucky tag could also be the bottom row of a screen with no cherries... - if (i == 1 && (biasedCopy || !AreCherriesOnScreen_Reel1(3))) + if (i == 1 && (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(3))) { sSlotMachine->winnerRows[0] = 3; sSlotMachine->reelExtraTurns[0] = 3; return TRUE; } - //...or if it isn't the last turn and the lucky tag could be in the center row of a screen with no cherries... - if (i < 4 && (biasedCopy || !AreCherriesOnScreen_Reel1(i + 1))) + if (i <= 3 && (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(i + 1))) { sSlotMachine->winnerRows[0] = 2; sSlotMachine->reelExtraTurns[0] = i + 1; return TRUE; } - //...else sSlotMachine->winnerRows[0] = 1; sSlotMachine->reelExtraTurns[0] = i; return TRUE; @@ -2264,22 +2494,23 @@ static bool8 DecideReelTurns_BiasTag_Reel1_Bet2or3(u8 tag1, u8 tag2) return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel2(void) +static bool8 DecideStop_Bias_Reel2(void) { - return sDecideReelTurns_BiasTag_Reel2_Bets[sSlotMachine->bet - 1](); + return sDecideStop_Bias_Reel2_Bets[sSlotMachine->bet - 1](); } -static bool8 DecideReelTurns_BiasTag_Reel2_Bet1or2(void) +// Turn at most 4 extra turns to try to line up the bias tag in the same row as +// reel 1. +static bool8 DecideStop_Bias_Reel2_Bet1or2(void) { s16 i; - s16 biasTagLocation_Reel1 = sSlotMachine->winnerRows[0]; + s16 reel1BiasRow = sSlotMachine->winnerRows[0]; - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { - // if biasTag appears in the same row within 4 turns - if (GetTag(MIDDLE_REEL, biasTagLocation_Reel1 - i) == sSlotMachine->biasTag) + if (GetTag(MIDDLE_REEL, reel1BiasRow - i) == sSlotMachine->biasTag) { - sSlotMachine->winnerRows[1] = biasTagLocation_Reel1; + sSlotMachine->winnerRows[1] = reel1BiasRow; sSlotMachine->reelExtraTurns[1] = i; return TRUE; } @@ -2287,18 +2518,79 @@ static bool8 DecideReelTurns_BiasTag_Reel2_Bet1or2(void) return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel2_Bet3(void) +// Checks whether it can match the bias tag diagonally, and sometimes skews +// toward this type of match rather than a match straight across. +// +// The behavior is different depending on where the bias tag landed in reel 1: +// +// Landed in middle row: +// A diagonal match is impossible. Just try to match the bias tag in the +// middle row of reel 2 within 4 turns. +// +// Landed in top/bottom row: +// - If it would take 2 or 3 turns to get the bias tag into the same row as +// reel 1, force a diagonal match by stopping it in the middle row instead. +// - Check if the bias tag is already in the same row as reel 1, or if it takes +// 1 or 4 turns to get it there. If so, stop when it reaches that row. +// - Otherwise, check if the bias tag is already in the middle row of reel 2. +// If so, stop here. +// +// So in how many more cases would betting 3 coins let you win compared to +// betting 2? +// Not many. Most of the time, the game would have matched the tag in the same +// row as reel 1 if you had bet 2 coins. Betting 3 effectively adds coverage +// for only two additional cases: +// - Bias tag is in top row of reel 1 and bias tag is currently in middle row +// of reel 2. +// - Bias tag is in bottom row of reel 1 and bias tag could get to the middle +// row of reel 2 in 4 turns. +// +// Assuming this is the implementation Game Freak intended, the game effectively +// turns straight matches into diagonal matches with 2/5 probability. +// Presumably, this makes the player feel fortunate that they bet 3 coins rather +// than 2, even though most times the game would have still forced a match with +// only 2 coins. +static bool8 DecideStop_Bias_Reel2_Bet3(void) { s16 i; - // if biasTag appears in the same row within 4 turns... - if (DecideReelTurns_BiasTag_Reel2_Bet1or2()) - { - //...and if the biasTag is not in middle row of reel 1 and if biasTag appears in middle row of reel 2 in 2 or 3 turns... + // If you can line up the bias tag in the same row as reel 1 within 4 turns + if (DecideStop_Bias_Reel2_Bet1or2()) + { + // DO NOT SUBMIT until cleaning up this long-winded musing on Game + // Freak's choices... + // + // QUESTION: Why is the 2-3 turn requirement in place?? That leaves out + // some potential middle row matches. E.g., + // - Bias tag in top of reel 1 and it takes 1 turn to get it in the top + // of reel 2 + // - Bias tag in bottom row of reel 1 and it takes 4 turns to get it in + // the bottom row of reel 2 + // * In both cases above, it would have been possible to get the bias + // tag in the middle row of reel 2, but we aren't considering it... + // It'll just be matched in the same row instead + // + // The exact intent is a bit unclear. It could either be: + // 1. Skewing toward a diagonal match rather than a straight match with + // 2/5 probability. + // 2. A programming error: They meant to guard against scenarios where a + // match in the middle is impossible within 4 turns. E.g., + // - Bias tag in top of reel 1 and it would take 5 turns to get it + // to match in the middle of reel 2 + // - Bias tag in bottom of reel 1 and bias tag is currently in + // bottom of reel 2 + // But if this were the case, you would expect the inequality to be + // sSlotMachine->reelExtraTurns[1] >= 1 ... + // * I'll give them the benefit of the doubt and assume it was (1). + // After all, the fact that they then check whether it's even + // possible to match in the middle makes (2) redundant. + // + // If bias tag is not in the middle row of reel 1 and it takes either + // 2 or 3 turns to get it in the same row for reel 2 if (sSlotMachine->winnerRows[0] != 2 && sSlotMachine->reelExtraTurns[1] > 1 && sSlotMachine->reelExtraTurns[1] != 4) { - for (i = 0; i < 5; i++) + // Try to match the bias tag in middle row of reel 2 within 4 turns + for (i = 0; i <= 4; i++) { - //...and if the bias tag will appear in the middle row within 4 turns if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) { sSlotMachine->winnerRows[1] = 2; @@ -2309,12 +2601,15 @@ static bool8 DecideReelTurns_BiasTag_Reel2_Bet3(void) } return TRUE; } - // else if the biasTag is not in middle row of reel 1... + + // If you can't line up the bias tag in the same row in 4 turns, and the + // bias tag is not in the middle row of reel 1. Adds coverage for the two + // cases mentioned above. if (sSlotMachine->winnerRows[0] != 2) { - for (i = 0; i < 5; i++) + // Try to match the bias tag in middle row of reel 2 within 4 turns + for (i = 0; i <= 4; i++) { - //...and if the biasTag will appear in the center row of reel 2 within 4 turns if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) { sSlotMachine->winnerRows[1] = 2; @@ -2326,10 +2621,12 @@ static bool8 DecideReelTurns_BiasTag_Reel2_Bet3(void) return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel3(void) +// If the machine is biased toward mixed 7's, swap the color of the bias tag +// from red 7 to blue 7, or vice versa. +static bool8 DecideStop_Bias_Reel3(void) { u8 biasTag = sSlotMachine->biasTag; - if (sSlotMachine->luckyFlags & LUCKY_BIAS_MIXED_777) + if (sSlotMachine->machineBias & BIAS_MIXED_7) { biasTag = GFXTAG_7_RED; if (sSlotMachine->biasTag == GFXTAG_7_RED) @@ -2337,20 +2634,21 @@ static bool8 DecideReelTurns_BiasTag_Reel3(void) biasTag = GFXTAG_7_BLUE; } } - return sDecideReelTurns_BiasTag_Reel3_Bets[sSlotMachine->bet - 1](biasTag); + return sDecideStop_Bias_Reel3_Bets[sSlotMachine->bet - 1](biasTag); } -static bool8 DecideReelTurns_BiasTag_Reel3_Bet1or2(u8 biasTag) +// Turn at most 4 extra turns to try to line up the bias tag in the same row as +// reel 2. +static bool8 DecideStop_Bias_Reel3_Bet1or2(u8 biasTag) { s16 i; - s16 biasTagLocation_Reel2 = sSlotMachine->winnerRows[1]; + s16 reel2BiasRow = sSlotMachine->winnerRows[1]; - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { - // if the biasTag appears in the same row as in reel 2 within 4 turns - if (GetTag(RIGHT_REEL, biasTagLocation_Reel2 - i) == biasTag) + if (GetTag(RIGHT_REEL, reel2BiasRow - i) == biasTag) { - sSlotMachine->winnerRows[2] = biasTagLocation_Reel2; + sSlotMachine->winnerRows[2] = reel2BiasRow; sSlotMachine->reelExtraTurns[2] = i; return TRUE; } @@ -2358,35 +2656,40 @@ static bool8 DecideReelTurns_BiasTag_Reel3_Bet1or2(u8 biasTag) return FALSE; } -static bool8 DecideReelTurns_BiasTag_Reel3_Bet3(u8 biasTag) +// Try to complete a match in reel 3 by lining up a bias tag with the bias tags +// from the first two reels. +static bool8 DecideStop_Bias_Reel3_Bet3(u8 biasTag) { s16 i; - s16 biasTagFinalPos; - // if the final position of the biasTag matches in reel 1 and reel 2... + s16 biasRow; + + // First two bias tags in the same row. Try to line up bias tag in same the + // row here too if (sSlotMachine->winnerRows[0] == sSlotMachine->winnerRows[1]) - //...then try to line it up in reel 3 - return DecideReelTurns_BiasTag_Reel3_Bet1or2(biasTag); - // else place it in the row opposite reel 1's + return DecideStop_Bias_Reel3_Bet1or2(biasTag); + + // Otherwise, try to line up the bias tag diagonally if (sSlotMachine->winnerRows[0] == 1) - biasTagFinalPos = 3; + biasRow = 3; else - biasTagFinalPos = 1; - for (i = 0; i < 5; i++) + biasRow = 1; + for (i = 0; i <= 4; i++) { - // if the biasTag lands in that position within 4 turns - if (GetTag(RIGHT_REEL, biasTagFinalPos - i) == biasTag) + if (GetTag(RIGHT_REEL, biasRow - i) == biasTag) { sSlotMachine->reelExtraTurns[2] = i; - sSlotMachine->winnerRows[2] = biasTagFinalPos; + sSlotMachine->winnerRows[2] = biasRow; return TRUE; } } return FALSE; } -// Advance until there are no cherries on screen in reel 1 - -static void DecideReelTurns_NoBiasTag_Reel1(void) +// Advance as many turns as needed until there are no cherries on screen in +// reel 1, as cherries would cause a match. +// +// Based on the distribution of reel 1, this will add at most 3 extra turns. +static void DecideStop_NoBias_Reel1(void) { s16 i = 0; @@ -2395,41 +2698,60 @@ static void DecideReelTurns_NoBiasTag_Reel1(void) sSlotMachine->reelExtraTurns[0] = i; } -static bool8 IsBiasTag777_SwitchColor(u8 *biasTagPtr) +// If the bias tag is one of the 7's, switch to the opposite color and return +// true. Otherwise, return false. +static bool8 IfTag7_SwitchColor(u8 *tagPtr) { - if (*biasTagPtr == GFXTAG_7_RED) + if (*tagPtr == GFXTAG_7_RED) { - *biasTagPtr = GFXTAG_7_BLUE; + *tagPtr = GFXTAG_7_BLUE; return TRUE; } - if (*biasTagPtr == GFXTAG_7_BLUE) + if (*tagPtr == GFXTAG_7_BLUE) { - *biasTagPtr = GFXTAG_7_RED; + *tagPtr = GFXTAG_7_RED; return TRUE; } return FALSE; } -static void DecideReelTurns_NoBiasTag_Reel2(void) -{ - sDecideReelTurns_NoBiasTag_Reel2_Bets[sSlotMachine->bet - 1](); -} - -// only does stuff if the biasTag is one of the 7's, plus other conditions -static void DecideReelTurns_NoBiasTag_Reel2_Bet1(void) -{ - if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->luckyFlags & LUCKY_BIAS_777) - { - u8 biasTag = GetTag(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); - //...and if biasTag is one of the 7's... - if (IsBiasTag777_SwitchColor(&biasTag)) - //...swap color of biasTag... +// If the machine doesn't have a bias, the reel stops immediately. +// +// Otherwise, the machine tries to taunt the player if it is biased toward +// straight 7's. This would only happen if the player did not stop near the +// correct-color 7, so the machine couldn't force a match. +// +// Instead, the machine now tries to line up the opposite-color 7, which is not +// a valid match. +static void DecideStop_NoBias_Reel2(void) +{ + sDecideStop_NoBias_Reel2_Bets[sSlotMachine->bet - 1](); +} + +// If the machine has no bias, stop immediately. +// +// Otherwise, the machine manipulates the results if all the following +// conditions are met: +// If +// - The machine is biased toward straight 7's +// - The machine managed to match a 7 in the middle of reel 1 +// - The machine could not line up a 7 of the same color in reel 2 +// Then +// The machine will try to line up a 7 of the opposite color in reel 2 +static void DecideStop_NoBias_Reel2_Bet1(void) +{ + if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->machineBias & BIAS_STRAIGHT_7) + { + // Note here and in other NoBias functions, reelExtraTurns is 0 if it + // corresponds to a previous reel. That reel has already stopped and any + // extra turns were applied. + u8 reel1MiddleTag = GetTag(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); + if (IfTag7_SwitchColor(&reel1MiddleTag)) { s16 i; - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { - //...and if the biasTag appears within 4 turns - if (biasTag == GetTag(MIDDLE_REEL, 2 - i)) + if (reel1MiddleTag == GetTag(MIDDLE_REEL, 2 - i)) { sSlotMachine->winnerRows[1] = 2; sSlotMachine->reelExtraTurns[1] = i; @@ -2440,20 +2762,27 @@ static void DecideReelTurns_NoBiasTag_Reel2_Bet1(void) } } -static void DecideReelTurns_NoBiasTag_Reel2_Bet2(void) +// If the machine has no bias, stop immediately. +// +// Otherwise, the machine manipulates the results if all the following +// conditions are met: +// If +// - The machine is biased toward straight 7's +// - The machine managed to match a 7 anywhere in reel 1 +// - The machine could not line up a 7 of the same color in reel 2 +// Then +// The machine will try to line up a 7 of the opposite color in reel 2 +static void DecideStop_NoBias_Reel2_Bet2(void) { - if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->luckyFlags & LUCKY_BIAS_777) + if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - u8 biasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - //...and if biasTag is one of the 7's... - if (IsBiasTag777_SwitchColor(&biasTag)) - //...swap color of biasTag... + u8 reel1BiasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + if (IfTag7_SwitchColor(&reel1BiasTag)) { s16 i; - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { - //...and if the biasTag appears in same row in reel 2 within 4 turns - if (biasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - i)) + if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - i)) { sSlotMachine->winnerRows[1] = sSlotMachine->winnerRows[0]; sSlotMachine->reelExtraTurns[1] = i; @@ -2464,76 +2793,127 @@ static void DecideReelTurns_NoBiasTag_Reel2_Bet2(void) } } -static void DecideReelTurns_NoBiasTag_Reel2_Bet3(void) +// If the machine has no bias, stop immediately. +// +// Otherwise, the machine manipulates the results if all the following +// conditions are met: +// If +// - The machine is biased toward straight 7's +// - The machine managed to match a 7 anywhere in reel 1 +// - The machine could not line up a 7 of the same color in reel 2 +// Then +// The machine will try to line up a 7 of the opposite color in reel 2 +// +// The way it tries to line up an opposite-color 7 differs depending on where +// the 7 is in reel 1: +// +// Middle row: +// Try to line up an opposite-color 7 in the middle of reel 2 within 4 turns. +// +// Top row: +// - First check for an opposite-color 7 in the top and middle rows of the +// current screen. If found, stop immediately. +// - Otherwise, check if an opposite-color 7 will enter the top row within 4 +// turns. +// - If one enters in 1 or 2 turns, stop the reel when it gets to the middle +// row. +// - If one enters in 3 or 4 turns, stop the reel when it gets to the top +// row. +// +// Bottom row: +// - First check for an opposite-color 7 in the middle and bottom rows of the +// current screen. If found, stop immediately. +// - Otherwise, check if an opposite-color 7 will enter the bottom row within 4 +// turns. +// - If one enters in 1 or 2 turns, stop the reel when it gets to the bottom +// row. +// - If one enters in 3 or 4 turns, stop the reel when it gets to the middle +// row. +// +// BUG: This procedure misses an opportunity to line up an opposite-color 7 in +// one scenario, when: +// - There is a 7 in the bottom row of reel 1 +// - And, you can get an opposite-color 7 in the middle row of reel 2 in 4 +// turns +static void DecideStop_NoBias_Reel2_Bet3(void) { s16 i; s16 j; - // if reel 1 has a biasTag and bit 7 is set in luckyFlags... - if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->luckyFlags & LUCKY_BIAS_777) + u8 reel1BiasTag; + + if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - //...and if biasTag appeared in the center row of reel 1 + // Lined up 7 in middle of reel 1 if (sSlotMachine->winnerRows[0] == 2) { - DecideReelTurns_NoBiasTag_Reel2_Bet2(); + DecideStop_NoBias_Reel2_Bet2(); + return; } - else + + reel1BiasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + if (IfTag7_SwitchColor(&reel1BiasTag)) { - u8 biasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - //...and if biasTag is one of the 7's... - if (IsBiasTag777_SwitchColor(&biasTag)) - //...swap the color of the 7... + // Check current screen to see if there is already an opposite-color + // 7 lined up for a match. + j = 2; + if (sSlotMachine->winnerRows[0] == 3) + j = 3; + for (i = 0; i < 2; i++, j--) { - j = 2; - if (sSlotMachine->winnerRows[0] == 3) - j = 3; - for (i = 0; i < 2; i++, j--) + if (reel1BiasTag == GetTag(MIDDLE_REEL, j)) { - if (biasTag == GetTag(MIDDLE_REEL, j)) - { - sSlotMachine->winnerRows[1] = j; - sSlotMachine->reelExtraTurns[1] = 0; - return; - } + sSlotMachine->winnerRows[1] = j; + sSlotMachine->reelExtraTurns[1] = 0; + return; } - for (j = 1; j < 5; j++) + } + + // Check if opposite-color 7 will appear in same row as reel 1 in + // over the next 4 turns + for (j = 1; j <= 4; j++) + { + if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - j)) { - if (biasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - j)) + // If 7 appeared in top row of reel 1 + if (sSlotMachine->winnerRows[0] == 1) + { + if (j <= 2) + { + sSlotMachine->winnerRows[1] = 2; + sSlotMachine->reelExtraTurns[1] = j + 1; + } + else + { + sSlotMachine->winnerRows[1] = 1; + sSlotMachine->reelExtraTurns[1] = j; + } + } + // If 7 appeared in bottom row of reel 1 + else { - if (sSlotMachine->winnerRows[0] == 1) + if (j <= 2) { - if (j < 3) - { - sSlotMachine->winnerRows[1] = 2; - sSlotMachine->reelExtraTurns[1] = j + 1; - } - else - { - sSlotMachine->winnerRows[1] = 1; - sSlotMachine->reelExtraTurns[1] = j; - } + sSlotMachine->winnerRows[1] = 3; + sSlotMachine->reelExtraTurns[1] = j; } else { - if (j < 3) - { - sSlotMachine->winnerRows[1] = 3; - sSlotMachine->reelExtraTurns[1] = j; - } - else - { - sSlotMachine->winnerRows[1] = 2; - sSlotMachine->reelExtraTurns[1] = j - 1; - } + sSlotMachine->winnerRows[1] = 2; + sSlotMachine->reelExtraTurns[1] = j - 1; } - return; } + return; } } } } } -static bool8 AreTagsMixed77(u8 tag1, u8 tag2) +// Returns true if the reel 1 and reel 2 tags are opposite-color 7's. +// +// Note that if true, this does not constitue a MATCH_MIXED_7, as the first two +// reels are not the same color. +static bool8 MismatchedTags_77(u8 tag1, u8 tag2) { if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE) || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED)) return TRUE; @@ -2541,7 +2921,9 @@ static bool8 AreTagsMixed77(u8 tag1, u8 tag2) return FALSE; } -static bool8 AreTagsMixed777(u8 tag1, u8 tag2, u8 tag3) +// Returns true if the reel 1, reel 2 and reel 3 tags form a 7 mismatch, i.e. +// {7R, 7B, 7R} or {7B, 7R, 7B}. +static bool8 MismatchedTags_777(u8 tag1, u8 tag2, u8 tag3) { if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE)) @@ -2550,7 +2932,12 @@ static bool8 AreTagsMixed777(u8 tag1, u8 tag2, u8 tag3) return FALSE; } -static bool8 TagsDontMatchOrHaveAny7s(u8 tag1, u8 tag2, u8 tag3) +// Returns false if either: +// - The tags form a match (including MATCH_MIXED_7) +// - Or, the tags form a 7 mismatch (i.e., {7R, 7B, 7R} or {7B, 7R, 7B}) +// +// Note, this does not account for cherry matches. +static bool8 NeitherMatchNor7Mismatch(u8 tag1, u8 tag2, u8 tag3) { if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || @@ -2563,34 +2950,54 @@ static bool8 TagsDontMatchOrHaveAny7s(u8 tag1, u8 tag2, u8 tag3) return TRUE; } -static void DecideReelTurns_NoBiasTag_Reel3(void) +// Spin until there's no match, or try to taunt the player with a 7 mismatch if +// they failed the straight 7 bias. +static void DecideStop_NoBias_Reel3(void) { - sDecideReelTurns_NoBiasTag_Reel3_Bets[sSlotMachine->bet - 1](); + sDecideStop_NoBias_Reel3_Bets[sSlotMachine->bet - 1](); } -static void DecideReelTurns_NoBiasTag_Reel3_Bet1(void) +// Spin until there is no match in reel 3. Additionally, if the player failed a +// straight 7 bias, try to taunt them with a 7 mismatch. +// +// The way this plays out depends on the first two matched tags. +// +// If first two tags are the same: +// Spin until you get a tag that won't complete a match. +// +// Otherwise, if the first two tags are opposite-color 7's: +// - If the machine is biased toward straight 7's, then the player must have +// failed with this bias. The machine tries to taunt the player by turning +// up to 4 turns to complete a 7 mismatch (i.e., {7R, 7B, 7R} or +// {7B, 7R, 7B}). +// - Otherwise, spin until you get a tag that won't complete a match. +static void DecideStop_NoBias_Reel3_Bet1(void) { s16 i = 0; u8 tag1 = GetTag(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); u8 tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); - // if tags match in first 2 reels... + + // If first two tags match, spin until you get a non-matching tag if (tag1 == tag2) { - //...spin until you get non-matching tag - while (1) + while (TRUE) { u8 tag3; - if (!(tag1 == (tag3 = GetTag(RIGHT_REEL, 2 - i)) || (tag1 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || (tag1 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED))) + if (!((tag1 == (tag3 = GetTag(RIGHT_REEL, 2 - i))) || + (tag1 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || + (tag1 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED))) break; i++; } } - else if (AreTagsMixed77(tag1, tag2)) + // First two tags are opposite-color 7's + else if (MismatchedTags_77(tag1, tag2)) { - if (sSlotMachine->luckyFlags & LUCKY_BIAS_777) + // If biased toward straight 7's, try to complete the 7 mismatch in 4 + // turns + if (sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - //...see if you can match with reel 1 within 4 turns - for (i = 0; i < 5; i++) + for (i = 0; i <= 4; i++) { if (tag1 == GetTag(RIGHT_REEL, 2 - i)) { @@ -2599,9 +3006,10 @@ static void DecideReelTurns_NoBiasTag_Reel3_Bet1(void) } } } - // turn until you aren't matching with reel 1 + + // Otherwise, just spin until you get a non-matching tag i = 0; - while (1) + while (TRUE) { if (tag1 != GetTag(RIGHT_REEL, 2 - i)) break; @@ -2611,22 +3019,46 @@ static void DecideReelTurns_NoBiasTag_Reel3_Bet1(void) sSlotMachine->reelExtraTurns[2] = i; } -static void DecideReelTurns_NoBiasTag_Reel3_Bet2(void) +// Spin until there is no match in reel 3. Additionally, if the player failed a +// straight 7 bias, try to taunt them with a 7 mismatch. +// +// There are up to two stages, depending on the first two matched tags: +// +// 1. [Optional] If first two tags are opposite-color 7's in the same row and +// the machine is biased toward straight 7's: +// Check if a 7 with the same color as reel 1 appears in the same row +// within 4 turns. If so, initially advance to that position. +// +// 2. Check rows. Keep advancing the reel a turn at a time as long as: +// - There is a match in any row +// - Or, there is a 7 mismatch in any row and the machine isn't biased +// toward straight 7's +// +// Note, stage 2 is not limited to 4 turns. The reel keeps spinning until you +// lose. +static void DecideStop_NoBias_Reel3_Bet2(void) { s16 extraTurns = 0; s16 i; u8 tag1; u8 tag2; u8 tag3; - if (sSlotMachine->winnerRows[1] != 0 && sSlotMachine->winnerRows[0] == sSlotMachine->winnerRows[1] && sSlotMachine->luckyFlags & LUCKY_BIAS_777) + + // Effectively, if you lined up two 7's in the same row + if (sSlotMachine->winnerRows[1] != 0 && + sSlotMachine->winnerRows[0] == sSlotMachine->winnerRows[1] && + sSlotMachine->machineBias & BIAS_STRAIGHT_7) { tag1 = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); - //...and if tags are mixed 7s... - if (AreTagsMixed77(tag1, tag2)) + + // If the first two 7's are opposite colors, see if you can line up a 7 + // mismatch in the same row. If so, advance initially to that position. + // More turns may be added further below. + if (MismatchedTags_77(tag1, tag2)) { - //...try to match with reel 1 within 4 turns - for (i = 0; i < 5; i++) + // Iterate over the next 4 turns + for (i = 0; i <= 4; i++) { tag3 = GetTag(RIGHT_REEL, sSlotMachine->winnerRows[1] - i); if (tag1 == tag3) @@ -2637,52 +3069,99 @@ static void DecideReelTurns_NoBiasTag_Reel3_Bet2(void) } } } - // GUESS: spin until there's no possible match within 4 turns of you stopping - while (1) + + while (TRUE) { - s16 loopExit; - for (i = 1, loopExit = 0; i < 4; i++) + s16 numMatches; + // Iterate over the rows of the screen after `extraTurns` turns + for (i = 1, numMatches = 0; i <= 3; i++) { - tag1 = GetTag(LEFT_REEL, i - sSlotMachine->reelExtraTurns[0]); // why does this update with i + tag1 = GetTag(LEFT_REEL, i - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, i - sSlotMachine->reelExtraTurns[1]); tag3 = GetTag(RIGHT_REEL, i - extraTurns); - // if bit 7 of luckyFlags is unset... - //...and if all 3 tags match and they're not mixed 7s - if (!TagsDontMatchOrHaveAny7s(tag1, tag2, tag3) && (!AreTagsMixed777(tag1, tag2, tag3) || !(sSlotMachine->luckyFlags & LUCKY_BIAS_777))) + + // This boils down to: + // If there's a match on screen, keep spinning. Otherwise, if + // there's a 7 mismatch on screen, keep spinning if the machine + // isn't biased toward straight 7's. + if (!NeitherMatchNor7Mismatch(tag1, tag2, tag3) && + !(MismatchedTags_777(tag1, tag2, tag3) && (sSlotMachine->machineBias & BIAS_STRAIGHT_7))) { - loopExit++; + numMatches++; break; } } - if (loopExit == 0) + + // If no matches were found, stop here. Otherwise, add an extra spin and + // check again. + if (numMatches == 0) break; extraTurns++; } sSlotMachine->reelExtraTurns[2] = extraTurns; } -static void DecideReelTurns_NoBiasTag_Reel3_Bet3(void) +// Try to spin until there is no match in reel 3. Additionally, if the player +// failed a straight 7 bias, try to taunt them with a 7 mismatch. +// +// There are up to four stages: +// +// 1. Advance the reel as if 2 coins were bet: to mildly oversimplify, spin +// until there's no matches straight across in any rows. +// +// 2. [Optional] If you've lined up two opposite-color 7's diagonally and the +// machine is biased toward straight 7's: +// Check if a 7 with the same color as reel 1 appears in the final diagonal +// position within 4 turns. If so, advance to that position. +// +// 3. Check NWSE diagonal. Keep advancing the reel a turn at a time as long as: +// - There is a match in the diagonal +// - Or, there is a 7 mismatch in the diagonal and the machine isn't +// biased toward straight 7's +// +// 3. Check NESW diagonal. Keep advancing the reel a turn at a time as long as: +// - There is a match in the diagonal +// - Or, there is a 7 mismatch in the diagonal and the machine isn't +// biased toward straight 7's +// +// Note that stages 3 and 4 are not limited to 4 turns. +// +// Also, note that it actually is possible to win a match here. After stage 1, +// the game never again checks whether it will be matching any rows straight +// across. So any extra turns added in stages 2-4 could result in a match +// occurring straight across. +static void DecideStop_NoBias_Reel3_Bet3(void) { u8 tag1; u8 tag2; u8 tag3; - s16 j; + s16 row; s16 i; - DecideReelTurns_NoBiasTag_Reel3_Bet2(); - if (sSlotMachine->winnerRows[1] != 0 && sSlotMachine->winnerRows[0] != sSlotMachine->winnerRows[1] && sSlotMachine->luckyFlags & LUCKY_BIAS_777) + // Spin until there's no matches in any row straight across, potentially + // skewing toward a 7 mismatch. Consider this the new starting position for + // this function. + DecideStop_NoBias_Reel3_Bet2(); + + // Essentially, if you lined up two 7's diagonally + if (sSlotMachine->winnerRows[1] != 0 && + sSlotMachine->winnerRows[0] != sSlotMachine->winnerRows[1] && + sSlotMachine->machineBias & BIAS_STRAIGHT_7) { tag1 = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); - //..and if tags are mixed 7s... - if (AreTagsMixed77(tag1, tag2)) + + // If the first two 7's are opposite colors, try advancing up to 4 + // additional turns to line up a diagonal 7 mismatch. More turns may be + // added further below. + if (MismatchedTags_77(tag1, tag2)) { - j = 1; + row = 1; if (sSlotMachine->winnerRows[0] == 1) - j = 3; - for (i = 0; i < 5; i++) + row = 3; + for (i = 0; i <= 4; i++) { - tag3 = GetTag(RIGHT_REEL, j - (sSlotMachine->reelExtraTurns[2] + i)); + tag3 = GetTag(RIGHT_REEL, row - (sSlotMachine->reelExtraTurns[2] + i)); if (tag1 == tag3) { sSlotMachine->reelExtraTurns[2] += i; @@ -2691,21 +3170,27 @@ static void DecideReelTurns_NoBiasTag_Reel3_Bet3(void) } } } - while (1) + + while (TRUE) { + // Check NWSE diagonal tag1 = GetTag(LEFT_REEL, 1 - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); tag3 = GetTag(RIGHT_REEL, 3 - sSlotMachine->reelExtraTurns[2]); - if (TagsDontMatchOrHaveAny7s(tag1, tag2, tag3) || (AreTagsMixed777(tag1, tag2, tag3) && sSlotMachine->luckyFlags & LUCKY_BIAS_777)) + if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) || + (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } - while (1) + + while (TRUE) { + // Check NESW diagonal tag1 = GetTag(LEFT_REEL, 3 - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); tag3 = GetTag(RIGHT_REEL, 1 - sSlotMachine->reelExtraTurns[2]); - if (TagsDontMatchOrHaveAny7s(tag1, tag2, tag3) || (AreTagsMixed777(tag1, tag2, tag3) && sSlotMachine->luckyFlags & LUCKY_BIAS_777)) + if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) || + (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } @@ -2720,7 +3205,7 @@ static void PressStopReelButton(u8 reelNum) static void Task_PressStopReelButton(u8 taskId) { - sReelStopButtonFuncs[gTasks[taskId].data[0]](&gTasks[taskId], taskId); + sReelStopButtonTasks[gTasks[taskId].data[0]](&gTasks[taskId], taskId); } static void StopReelButton_Press(struct Task *task, u8 taskId) @@ -2926,11 +3411,11 @@ static void CreatePikaPowerBoltTask(void) sSlotMachine->pikaPowerBoltTaskId = CreateTask(Task_CreatePikaPowerBolt, 8); } -static void AddPikaPowerBolt(u8 pikaPower) +static void AddPikaPowerBolt(u8 bolts) { struct Task *task = &gTasks[sSlotMachine->pikaPowerBoltTaskId]; ResetPikaPowerBoltTask(task); - task->tState = 1; + task->tState = PIKABOLT_TASK_ADD_BOLT; task->tNumBolts++; task->tAnimating = TRUE; } @@ -2939,7 +3424,7 @@ static void ResetPikaPowerBolts(void) { struct Task *task = &gTasks[sSlotMachine->pikaPowerBoltTaskId]; ResetPikaPowerBoltTask(task); - task->tState = 3; + task->tState = PIKABOLT_TASK_CLEAR_ALL; task->tAnimating = TRUE; } @@ -2950,7 +3435,7 @@ static bool8 IsPikaPowerBoltAnimating(void) static void Task_CreatePikaPowerBolt(u8 taskId) { - sPikaPowerBoltFuncs[gTasks[taskId].tState](&gTasks[taskId]); + sPikaPowerBoltTasks[gTasks[taskId].tState](&gTasks[taskId]); } static void PikaPowerBolt_Idle(struct Task *task) @@ -2960,7 +3445,7 @@ static void PikaPowerBolt_Idle(struct Task *task) static void PikaPowerBolt_AddBolt(struct Task *task) { task->tSpriteId = CreatePikaPowerBoltSprite((task->tNumBolts << 3) + 20, 20); - task->tState++; + task->tState++; // PIKABOLT_TASK_WAIT_ANIM } // The bolt sprite spins around as it appears @@ -2979,7 +3464,7 @@ static void PikaPowerBolt_WaitAnim(struct Task *task) sSelectedPikaPowerTile[r2] = sPikaPowerTileTable[r3][0]; LoadBgTilemap(2, &sSelectedPikaPowerTile[r2], 2, r5 + 0x40); DestroyPikaPowerBoltSprite(task->tSpriteId); - task->tState = 0; + task->tState = PIKABOLT_TASK_IDLE; task->tAnimating = 0; } } @@ -3003,7 +3488,7 @@ static void PikaPowerBolt_ClearAll(struct Task *task) task->tTimer = 0; if (task->tNumBolts == 0) { - task->tState = 0; + task->tState = PIKABOLT_TASK_IDLE; task->tAnimating = 0; } } @@ -3016,17 +3501,17 @@ static void ResetPikaPowerBoltTask(struct Task *task) task->data[i] = 0; } -static void LoadPikaPowerMeter(u8 pikaPower) +static void LoadPikaPowerMeter(u8 bolts) { s16 i; s16 r3 = 0, r1 = 0; s16 r4 = 3; - for (i = 0; i < pikaPower; i++, r4++) + for (i = 0; i < bolts; i++, r4++) { r3 = 0, r1 = 0; if (i == 0) r3 = 1, r1 = 1; - else if (i == 15) // pikaPower meter is full + else if (i == 15) // meter is full r3 = 2, r1 = 2; sSelectedPikaPowerTile[r1] = sPikaPowerTileTable[r3][0]; LoadBgTilemap(2, &sSelectedPikaPowerTile[r1], 2, r4 + 0x40); @@ -3041,7 +3526,7 @@ static void LoadPikaPowerMeter(u8 pikaPower) sSelectedPikaPowerTile[r1] = sPikaPowerTileTable[r3][1]; LoadBgTilemap(2, &sSelectedPikaPowerTile[r1], 2, r4 + 0x40); } - gTasks[sSlotMachine->pikaPowerBoltTaskId].data[1] = pikaPower; + gTasks[sSlotMachine->pikaPowerBoltTaskId].data[1] = bolts; } #undef tState @@ -3050,7 +3535,13 @@ static void LoadPikaPowerMeter(u8 pikaPower) #undef tTimer #undef tAnimating -#define tState data[0] +#define tState data[0] +#define tReelSpeed data[1] +#define tTimer3 data[2] +#define tRtReelSpeed data[4] +#define tTimer2 data[4] +#define tTimer1 data[5] +#define tExplodeChecks data[6] static void BeginReelTime(void) { @@ -3067,10 +3558,7 @@ static bool8 IsReelTimeTaskDone(void) static void Task_ReelTime(u8 taskId) { - // task.data[1] has something to do with the threshold - // task.data[4] says how many pixels to advance the reel - // task.data[5] is a timer - sReelTimeActions[gTasks[taskId].tState](&gTasks[taskId]); + sReelTimeTasks[gTasks[taskId].tState](&gTasks[taskId]); } static void ReelTime_Init(struct Task *task) @@ -3078,10 +3566,10 @@ static void ReelTime_Init(struct Task *task) sSlotMachine->reelTimeSpinsLeft = 0; sSlotMachine->reeltimePixelOffset = 0; sSlotMachine->reeltimePosition = 0; - task->tState++; + task->tState++; // RT_TASK_WINDOW_ENTER task->data[1] = 0; task->data[2] = 30; - task->data[4] = 1280; // reel speed + task->tRtReelSpeed = 1280; gSpriteCoordOffsetX = 0; gSpriteCoordOffsetY = 0; SetGpuReg(REG_OFFSET_BG1HOFS, 0); @@ -3092,7 +3580,7 @@ static void ReelTime_Init(struct Task *task) CreateReelTimeNumberSprites(); CreateReelTimeShadowSprites(); CreateReelTimeNumberGapSprite(); - GetReeltimeDraw(); + GetReelTimeDraw(); StopMapMusic(); PlayNewMapMusic(MUS_ROULETTE); } @@ -3112,18 +3600,18 @@ static void ReelTime_WindowEnter(struct Task *task) } if (task->data[1] >= 200) { - task->tState++; + task->tState++; // RT_TASK_WAIT_START_PIKA task->data[3] = 0; } - AdvanceReeltimeReel(task->data[4] >> 8); + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); } static void ReelTime_WaitStartPikachu(struct Task *task) { - AdvanceReeltimeReel(task->data[4] >> 8); - if (++task->data[5] >= 60) + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); + if (++task->tTimer1 >= 60) { - task->tState++; + task->tState++; // RT_TASK_PIKA_SPEEDUP1 CreateReelTimeBoltSprites(); CreateReelTimePikachuAuraSprites(); } @@ -3140,29 +3628,29 @@ static void ReelTime_PikachuSpeedUp1(struct Task *task) memcpy(reelTimeBoltDelays, sReelTimeBoltDelays, sizeof(sReelTimeBoltDelays)); memcpy(pikachuAuraFlashDelays, sPikachuAuraFlashDelays, sizeof(sPikachuAuraFlashDelays)); - AdvanceReeltimeReel(task->data[4] >> 8); + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); // gradually slow down the reel - task->data[4] -= 4; - i = 4 - (task->data[4] >> 8); + task->tRtReelSpeed -= 4; + i = 4 - (task->tRtReelSpeed >> 8); SetReelTimeBoltDelay(reelTimeBoltDelays[i]); SetReelTimePikachuAuraFlashDelay(pikachuAuraFlashDelays[i]); StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], pikachuAnimIds[i]); // once speed goes below 256, go to next ReelTimeAction and keep the speed level - if (task->data[4] <= 0x100) + if (task->tRtReelSpeed <= 0x100) { - task->tState++; - task->data[4] = 0x100; - task->data[5] = 0; + task->tState++; // RT_TASK_PIKA_SPEEDUP2 + task->tRtReelSpeed = 0x100; + task->tTimer1 = 0; } } static void ReelTime_PikachuSpeedUp2(struct Task *task) { - AdvanceReeltimeReel(task->data[4] >> 8); - if (++task->data[5] >= 80) + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); + if (++task->tTimer1 >= 80) { - task->tState++; - task->data[5] = 0; + task->tState++; // RT_TASK_WAIT_REEL + task->tTimer1 = 0; SetReelTimePikachuAuraFlashDelay(2); StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], 3); } @@ -3170,83 +3658,94 @@ static void ReelTime_PikachuSpeedUp2(struct Task *task) static void ReelTime_WaitReel(struct Task *task) { - AdvanceReeltimeReel(task->data[4] >> 8); - task->data[4] = (u8)task->data[4] + 0x80; - if (++task->data[5] >= 80) + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); + task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x80; + if (++task->tTimer1 >= 80) { - task->tState++; - task->data[5] = 0; + task->tState++; // RT_TASK_CHECK_EXPLODE + task->tTimer1 = 0; } } +// Check whether the ReelTime machine should explode. +// +// The ReelTime machine displays 0 when this task starts. If there is a positive +// ReelTime draw, the machine keeps spinning until it lands on that number. +// +// Otherwise, it checks every 40 frames whether it should explode. If so, it +// explodes immediately. After 4 checks, the machine won't explode but continues +// to spin until it lands on 0. static void ReelTime_CheckExplode(struct Task *task) { - AdvanceReeltimeReel(task->data[4] >> 8); - task->data[4] = (u8)task->data[4] + 0x40; - if (++task->data[5] >= 40) + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); + task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x40; + if (++task->tTimer1 >= 40) { - task->data[5] = 0; + task->tTimer1 = 0; if (sSlotMachine->reelTimeDraw) { - if (sSlotMachine->reelTimeSpinsLeft <= task->data[6]) - task->tState++; + if (sSlotMachine->reelTimeSpinsLeft <= task->tExplodeChecks) + task->tState++; // RT_TASK_LAND } - else if (task->data[6] > 3) + else if (task->tExplodeChecks > 3) { - task->tState++; + task->tState++; // RT_TASK_LAND } - else if (ShouldReelTimeMachineExplode(task->data[6])) + else if (ShouldReelTimeMachineExplode(task->tExplodeChecks)) { - task->tState = 14; // ReelTime_ExplodeMachine + task->tState = RT_TASK_EXPLODE; } - task->data[6]++; + task->tExplodeChecks++; } } +// Reel spins until it lands on the selected outcome. static void ReelTime_LandOnOutcome(struct Task *task) { s16 reeltimePixelOffset = sSlotMachine->reeltimePixelOffset % 20; if (reeltimePixelOffset) { - reeltimePixelOffset = AdvanceReeltimeReelToNextTag(task->data[4] >> 8); - task->data[4] = (u8)task->data[4] + 0x40; + reeltimePixelOffset = AdvanceReeltimeReelToNextTag(task->tRtReelSpeed >> 8); + task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x40; } - else if (GetNearbyReelTimeTag(1) != sSlotMachine->reelTimeDraw) + else if (GetReelTimeTag(1) != sSlotMachine->reelTimeDraw) { - AdvanceReeltimeReel(task->data[4] >> 8); + AdvanceReeltimeReel(task->tRtReelSpeed >> 8); reeltimePixelOffset = sSlotMachine->reeltimePixelOffset % 20; - task->data[4] = (u8)task->data[4] + 0x40; + task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x40; } - if (reeltimePixelOffset == 0 && GetNearbyReelTimeTag(1) == sSlotMachine->reelTimeDraw) + if (reeltimePixelOffset == 0 && GetReelTimeTag(1) == sSlotMachine->reelTimeDraw) { - task->data[4] = 0; // stop moving - task->tState++; + task->tRtReelSpeed = 0; // Also initializes task->tTimer2 + task->tState++; // RT_TASK_PIKA_REACT } } +// Animate Pikachu reaction. Clear any power bolts the player may have won if +// they got a positive ReelTime draw. static void ReelTime_PikachuReact(struct Task *task) { - if (++task->data[4] >= 60) + if (++task->tTimer2 >= 60) { StopMapMusic(); DestroyReelTimeBoltSprites(); DestroyReelTimePikachuAuraSprites(); - task->tState++; + task->tState++; // RT_TASK_WAIT_CLEAR_POWER if(sSlotMachine->reelTimeDraw == 0) { - task->data[4] = 0xa0; + task->tTimer2 = 0xa0; StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], 5); PlayFanfare(MUS_TOO_BAD); } else { - task->data[4] = 0xc0; + task->tTimer2 = 0xc0; StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], 4); gSprites[sSlotMachine->reelTimePikachuSpriteId].animCmdIndex = 0; - if (sSlotMachine->pikaPower) + if (sSlotMachine->pikaPowerBolts) { ResetPikaPowerBolts(); - sSlotMachine->pikaPower = 0; + sSlotMachine->pikaPowerBolts = 0; } PlayFanfare(MUS_SLOTS_WIN); } @@ -3255,8 +3754,8 @@ static void ReelTime_PikachuReact(struct Task *task) static void ReelTime_WaitClearPikaPower(struct Task *task) { - if ((task->data[4] == 0 || --task->data[4] == 0) && !IsPikaPowerBoltAnimating()) - task->tState++; + if ((task->tTimer2 == 0 || --task->tTimer2 == 0) && !IsPikaPowerBoltAnimating()) + task->tState++; // RT_TASK_CLOSE_WINDOW_SUCCESS } static void ReelTime_CloseWindow(struct Task *task) @@ -3270,16 +3769,20 @@ static void ReelTime_CloseWindow(struct Task *task) if (task->data[3] >> 3 <= 25) ClearReelTimeWindowTilemap(r4); else - task->tState++; + task->tState++; // RT_TASK_DESTROY_SPRITES } +// Destroy sprites and wrap up the ReelTime task. +// +// If the player got a positive ReelTime draw, select the speed that the slot +// reels will initially move at. static void ReelTime_DestroySprites(struct Task *task) { sSlotMachine->reelTimeSpinsUsed = 0; sSlotMachine->reelTimeSpinsLeft = sSlotMachine->reelTimeDraw; gSpriteCoordOffsetX = 0; SetGpuReg(REG_OFFSET_BG1HOFS, 0); - sSlotMachine->reelIncrement = 8; + sSlotMachine->reelSpeed = REEL_NORMAL_SPEED; DestroyReelTimePikachuSprite(); DestroyReelTimeMachineSprites(); DestroyReelTimeShadowSprites(); @@ -3291,19 +3794,20 @@ static void ReelTime_DestroySprites(struct Task *task) else { CreateDigitalDisplayScene(DIG_DISPLAY_REEL_TIME); - task->data[1] = SlowReelSpeed(); - task->data[2] = 0; + task->tReelSpeed = ReelTimeSpeed(); + task->tTimer3 = 0; task->data[3] = 0; - task->tState++; + task->tState++; // RT_TASK_SET_REEL_SPEED } } -static void ReelTime_SetReelIncrement(struct Task *task) +// Slow the slot reels down until they match the selected speed. +static void ReelTime_SetReelSpeed(struct Task *task) { - if (sSlotMachine->reelIncrement == task->data[1]) - task->tState++; - else if (sSlotMachine->reelPixelOffsets[0] % REEL_SYMBOL_HEIGHT == 0 && (++task->data[2]& 0x07) == 0) - sSlotMachine->reelIncrement >>= 1; + if (sSlotMachine->reelSpeed == task->tReelSpeed) + task->tState++; // RT_TASK_END_SUCCESS + else if (sSlotMachine->reelPixelOffsets[0] % TAG_HEIGHT == 0 && (++task->tTimer3 & 0x07) == 0) + sSlotMachine->reelSpeed >>= 1; } static void ReelTime_EndSuccess(struct Task *task) @@ -3320,9 +3824,9 @@ static void ReelTime_ExplodeMachine(struct Task *task) CreateReelTimeExplosionSprite(); gSprites[sSlotMachine->reelTimeShadowSpriteIds[0]].invisible = TRUE; StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], 5); - task->tState++; + task->tState++; // RT_TASK_WAIT_EXPLODE task->data[4] = 4; - task->data[5] = 0; + task->tTimer1 = 0; StopMapMusic(); PlayFanfare(MUS_TOO_BAD); PlaySE(SE_M_EXPLOSION); @@ -3332,9 +3836,9 @@ static void ReelTime_WaitExplode(struct Task *task) { gSpriteCoordOffsetY = task->data[4]; SetGpuReg(REG_OFFSET_BG1VOFS, task->data[4]); - if (task->data[5] & 0x01) + if (task->tTimer1 & 0x01) task->data[4] = -task->data[4]; - if ((++task->data[5] & 0x1f) == 0) + if ((++task->tTimer1 & 0x1f) == 0) task->data[4] >>= 1; if (task->data[4] == 0) { @@ -3343,8 +3847,8 @@ static void ReelTime_WaitExplode(struct Task *task) CreateBrokenReelTimeMachineSprite(); CreateReelTimeSmokeSprite(); gSprites[sSlotMachine->reelTimeShadowSpriteIds[0]].invisible = FALSE; - task->tState++; - task->data[5] = 0; + task->tState++; // RT_TASK_WAIT_SMOKE + task->tTimer1 = 0; } } @@ -3354,7 +3858,7 @@ static void ReelTime_WaitSmoke(struct Task *task) SetGpuReg(REG_OFFSET_BG1VOFS, 0); if (IsReelTimeSmokeAnimFinished()) { - task->tState++; + task->tState++; // RT_TASK_CLOSE_WINDOW_FAILURE DestroyReelTimeSmokeSprite(); } } @@ -3392,6 +3896,11 @@ static void ClearReelTimeWindowTilemap(s16 a0) } #undef tState +#undef tReelSpeed +#undef tRtReelSpeed +#undef tTimer2 +#undef tTimer1 +#undef tExplodeChecks #define tState data[0] @@ -3413,7 +3922,7 @@ static bool8 IsInfoBoxClosed(void) static void RunInfoBoxActions(u8 taskId) { - sInfoBoxActions[gTasks[taskId].tState](&gTasks[taskId]); + sInfoBoxTasks[gTasks[taskId].tState](&gTasks[taskId]); } static void InfoBox_FadeIn(struct Task *task) @@ -3422,7 +3931,7 @@ static void InfoBox_FadeIn(struct Task *task) task->tState++; } -static void InfoBox_WaitForFade(struct Task *task) +static void InfoBox_WaitFade(struct Task *task) { if (!gPaletteFade.active) task->tState++; @@ -3446,7 +3955,7 @@ static void InfoBox_AddText(struct Task *task) task->tState++; } -static void InfoBox_AwaitPlayerInput(struct Task *task) +static void InfoBox_WaitInput(struct Task *task) { if (JOY_NEW(B_BUTTON | SELECT_BUTTON)) { @@ -3474,7 +3983,7 @@ static void InfoBox_CreateDigitalDisplay(struct Task *task) static void InfoBox_LoadPikaPowerMeter(struct Task *task) { - LoadPikaPowerMeter(sSlotMachine->pikaPower); + LoadPikaPowerMeter(sSlotMachine->pikaPowerBolts); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(0, 0, 0)); task->tState++; } @@ -3601,7 +4110,7 @@ static void SpriteCB_ReelSymbol(struct Sprite *sprite) { sprite->data[2] = sSlotMachine->reelPixelOffsets[sprite->data[0]] + sprite->data[1]; sprite->data[2] %= 120; - sprite->y = sSlotMachine->reelPixelOffsetsWhileStopping[sprite->data[0]] + 28 + sprite->data[2]; + sprite->y = sSlotMachine->reelShockOffsets[sprite->data[0]] + 28 + sprite->data[2]; sprite->sheetTileStart = GetSpriteTileStartByTag(GetTagAtRest(sprite->data[0], sprite->data[2] / 24)); SetSpriteSheetFrameTileNum(sprite); } @@ -3773,7 +4282,7 @@ static void SpriteCB_ReelTimeNumbers(struct Sprite *sprite) s16 r0 = (u16)(sSlotMachine->reeltimePixelOffset + sprite->data[7]); r0 %= 40; sprite->y = r0 + 59; - StartSpriteAnimIfDifferent(sprite, GetNearbyReelTimeTag(r0 / 20)); + StartSpriteAnimIfDifferent(sprite, GetReelTimeTag(r0 / 20)); } static void CreateReelTimeShadowSprites(void) @@ -4720,7 +5229,7 @@ static void AllocDigitalDisplayGfx(void) sImageTable_DigitalDisplay_DPad[1].size = 0x180; } -static const u8 sReelSymbolTileTags[NUM_REELS][SYMBOLS_PER_REEL] = +static const u8 sReelTileTags[NUM_REELS][TAGS_PER_REEL] = { [LEFT_REEL] = { GFXTAG_7_RED, @@ -4797,13 +5306,15 @@ static const u8 sReelTimeTags[] = { 1, 0, 5, 4, 3, 2 }; +// Column 0: Normal game +// Column 1: Lucky game static const s16 sInitialReelPositions[NUM_REELS][2] = { [LEFT_REEL] = {0, 6}, [MIDDLE_REEL] = {0, 10}, [RIGHT_REEL] = {0, 2} }; -static const u8 sLuckyRoundProbabilities[NUM_SLOT_MACHINE_IDS][MAX_BET] = { +static const u8 sSpecialDrawOdds[NUM_SLOT_MACHINE_IDS][MAX_BET] = { [SLOT_MACHINE_UNLUCKIEST] = {1, 1, 12}, [SLOT_MACHINE_UNLUCKIER] = {1, 1, 14}, [SLOT_MACHINE_UNLUCKY] = {2, 2, 14}, @@ -4812,8 +5323,9 @@ static const u8 sLuckyRoundProbabilities[NUM_SLOT_MACHINE_IDS][MAX_BET] = { [SLOT_MACHINE_LUCKIEST] = {3, 3, 16} }; -static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS] = { - { // Probabilities for LUCKY_BIAS_777 +static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { + { + // Probabilities for BIAS_STRAIGHT_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 30, @@ -4821,7 +5333,8 @@ static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 40, [SLOT_MACHINE_LUCKIEST] = 50 }, - { // Probabilities for LUCKY_BIAS_REELTIME + { + // Probabilities for BIAS_REELTIME [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 30, @@ -4829,7 +5342,8 @@ static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 35, [SLOT_MACHINE_LUCKIEST] = 35 }, - { // Probabilities for LUCKY_BIAS_MIXED_777 + { + // Probabilities for BIAS_MIXED_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 30, @@ -4839,8 +5353,9 @@ static const u8 sLuckyFlagProbabilities_Top3[][NUM_SLOT_MACHINE_IDS] = { } }; -static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { - { // Probabilities for LUCKY_BIAS_POWER +static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { + { + // Probabilities for BIAS_POWER [SLOT_MACHINE_UNLUCKIEST] = 20, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 25, @@ -4848,7 +5363,8 @@ static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 25, [SLOT_MACHINE_LUCKIEST] = 25 }, - { // Probabilities for LUCKY_BIAS_AZURILL + { + // Probabilities for BIAS_AZURILL [SLOT_MACHINE_UNLUCKIEST] = 12, [SLOT_MACHINE_UNLUCKIER] = 15, [SLOT_MACHINE_UNLUCKY] = 15, @@ -4856,7 +5372,8 @@ static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 19, [SLOT_MACHINE_LUCKIEST] = 22 }, - { // Probabilities for LUCKY_BIAS_LOTAD + { + // Probabilities for BIAS_LOTAD [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 25, @@ -4864,7 +5381,8 @@ static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 30, [SLOT_MACHINE_LUCKIEST] = 40 }, - { // Probabilities for LUCKY_BIAS_CHERRY + { + // Probabilities for BIAS_CHERRY [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, [SLOT_MACHINE_UNLUCKY] = 20, @@ -4872,7 +5390,8 @@ static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 15, [SLOT_MACHINE_LUCKIEST] = 15 }, - { // Probabilities for LUCKY_BIAS_REPLAY + { + // Probabilities for BIAS_REPLAY [SLOT_MACHINE_UNLUCKIEST] = 40, [SLOT_MACHINE_UNLUCKIER] = 40, [SLOT_MACHINE_UNLUCKY] = 35, @@ -4882,29 +5401,61 @@ static const u8 sLuckyFlagProbabilities_NotTop3[][NUM_SLOT_MACHINE_IDS] = { } }; -static const u8 sReeltimeProbabilities_UnluckyGame[][17] = { - {243, 243, 243, 80, 80, 80, 80, 40, 40, 40, 40, 40, 40, 5, 5, 5, 5}, - { 5, 5, 5, 150, 150, 150, 150, 130, 130, 130, 130, 130, 130, 100, 100, 100, 5}, - { 4, 4, 4, 20, 20, 20, 20, 80, 80, 80, 80, 80, 80, 100, 100, 100, 40}, - { 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 45, 45, 45, 100}, - { 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 5, 5, 100}, - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6} -}; - +// INTENTION: +// As you get more Power bolts, the odds of getting higher yields (3+ spins) +// increases modestly. There's a high chance of getting at least 1 spin, which +// will clear your Power bolts. +// +// NOTE: The way these probabilities are drawn significantly skews the odds +// toward drawing 0 spins: +// +// | Up to N bolts | Prob intended | Prob actual | +// |---------------|---------------|-------------| +// | 2 | 94% | 99% | +// | 6 | 31% | 57% | +// | 12 | 16% | 44% | +// | 15 | 2% | 31% | +// | 16 | 2% | 31% | +static const u8 sReelTimeProbabilities_NormalGame[][17] = { + {243, 243, 243, 80, 80, 80, 80, 40, 40, 40, 40, 40, 40, 5, 5, 5, 5}, // 0 spins + { 5, 5, 5, 150, 150, 150, 150, 130, 130, 130, 130, 130, 130, 100, 100, 100, 5}, // 1 spin + { 4, 4, 4, 20, 20, 20, 20, 80, 80, 80, 80, 80, 80, 100, 100, 100, 40}, // 2 spins + { 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 45, 45, 45, 100}, // 3 spins + { 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 5, 5, 100}, // 4 spins + { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6} // 5 spins +}; + +// INTENTION: +// As you get more Power bolts, the odds of getting higher yields (3+ spins) +// increases substantially. There is always a high chance of getting no spins, +// which lets you keep your Power bolts. +// +// NOTE: The way these probabilities are drawn significantly skews the odds +// toward drawing 0 spins: +// +// | Up to N bolts | Prob intended | Prob actual | +// |---------------|---------------|-------------| +// | 2 | 94% | 99% | +// | 6 | 78% | 96% | +// | 12 | 63% | 88% | +// | 15 | 27% | 58% | +// | 16 | 2% | 33% | static const u8 sReelTimeProbabilities_LuckyGame[][17] = { - { 243, 243, 243, 200, 200, 200, 200, 160, 160, 160, 160, 160, 160, 70, 70, 70, 5}, - { 5, 5, 5, 25, 25, 25, 25, 5, 5, 5, 5, 5, 5, 2, 2, 2, 6}, - { 4, 4, 4, 25, 25, 25, 25, 30, 30, 30, 30, 30, 30, 40, 40, 40, 35}, - { 2, 2, 2, 3, 3, 3, 3, 30, 30, 30, 30, 30, 30, 100, 100, 100, 50}, - { 1, 1, 1, 2, 2, 2, 2, 30, 30, 30, 30, 30, 30, 40, 40, 40, 100}, - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 60} + { 243, 243, 243, 200, 200, 200, 200, 160, 160, 160, 160, 160, 160, 70, 70, 70, 5}, // 0 spins + { 5, 5, 5, 25, 25, 25, 25, 5, 5, 5, 5, 5, 5, 2, 2, 2, 6}, // 1 spin + { 4, 4, 4, 25, 25, 25, 25, 30, 30, 30, 30, 30, 30, 40, 40, 40, 35}, // 2 spins + { 2, 2, 2, 3, 3, 3, 3, 30, 30, 30, 30, 30, 30, 100, 100, 100, 50}, // 3 spins + { 1, 1, 1, 2, 2, 2, 2, 30, 30, 30, 30, 30, 30, 40, 40, 40, 100}, // 4 spins + { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 60} // 5 spins }; static const u16 sReelTimeExplodeProbability[] = { 128, 175, 200, 225, 256 }; -static const u16 sReelIncrementTable[][2] = { +// Column 0: Probability of half-speed +// Column 1: Base probability of quarter-speed +static const u16 sReelTimeSpeed_Probabilities[][2] = { {10, 5}, {10, 10}, {10, 15}, @@ -4912,55 +5463,62 @@ static const u16 sReelIncrementTable[][2] = { {10, 35} }; -static const u16 sReelTimeBonusIncrementTable[] = { +// Boosted odds of quarter speed during ReelTime +static const u16 sQuarterSpeed_ProbabilityBoost[] = { 0, 5, 10, 15, 20 }; -// tentative name static const u8 sBiasTags[] = { - GFXTAG_REPLAY, GFXTAG_CHERRY, GFXTAG_LOTAD, GFXTAG_AZURILL, GFXTAG_POWER, GFXTAG_7_RED, GFXTAG_7_RED, GFXTAG_7_RED + GFXTAG_REPLAY, // BIAS_REPLAY + GFXTAG_CHERRY, // BIAS_CHERRY + GFXTAG_LOTAD, // BIAS_LOTAD + GFXTAG_AZURILL, // BIAS_AZURILL + GFXTAG_POWER, // BIAS_POWER + GFXTAG_7_RED, // BIAS_REELTIME + GFXTAG_7_RED, // BIAS_MIXED_7 + GFXTAG_7_RED // BIAS_STRAIGHT_7 }; -static const u16 sLuckyFlagSettings_Top3[] = { - LUCKY_BIAS_777, LUCKY_BIAS_REELTIME, LUCKY_BIAS_MIXED_777 +static const u16 sBiasesSpecial[] = { + BIAS_STRAIGHT_7, BIAS_REELTIME, BIAS_MIXED_7 }; -static const u16 sLuckyFlagSettings_NotTop3[] = { - LUCKY_BIAS_POWER, LUCKY_BIAS_AZURILL, LUCKY_BIAS_LOTAD, LUCKY_BIAS_CHERRY, LUCKY_BIAS_REPLAY +static const u16 sBiasesRegular[] = { + BIAS_POWER, BIAS_AZURILL, BIAS_LOTAD, BIAS_CHERRY, BIAS_REPLAY }; -static const u8 sSymToMatch[] = { - [GFXTAG_7_RED] = MATCHED_777_RED, - [GFXTAG_7_BLUE] = MATCHED_777_BLUE, - [GFXTAG_AZURILL] = MATCHED_AZURILL, - [GFXTAG_LOTAD] = MATCHED_LOTAD, - [GFXTAG_CHERRY] = MATCHED_1CHERRY, - [GFXTAG_POWER] = MATCHED_POWER, - [GFXTAG_REPLAY] = MATCHED_REPLAY +static const u8 sTagToMatch[] = { + [GFXTAG_7_RED] = MATCH_RED_7, + [GFXTAG_7_BLUE] = MATCH_BLUE_7, + [GFXTAG_AZURILL] = MATCH_AZURILL, + [GFXTAG_LOTAD] = MATCH_LOTAD, + [GFXTAG_CHERRY] = MATCH_CHERRY, + [GFXTAG_POWER] = MATCH_POWER, + [GFXTAG_REPLAY] = MATCH_REPLAY }; static const u16 sSlotMatchFlags[] = { - [MATCHED_1CHERRY] = 1 << MATCHED_1CHERRY, - [MATCHED_2CHERRY] = 1 << MATCHED_2CHERRY, - [MATCHED_REPLAY] = 1 << MATCHED_REPLAY, - [MATCHED_LOTAD] = 1 << MATCHED_LOTAD, - [MATCHED_AZURILL] = 1 << MATCHED_AZURILL, - [MATCHED_POWER] = 1 << MATCHED_POWER, - [MATCHED_777_MIXED] = 1 << MATCHED_777_MIXED, - [MATCHED_777_RED] = 1 << MATCHED_777_RED, - [MATCHED_777_BLUE] = 1 << MATCHED_777_BLUE + [MATCH_CHERRY] = 1 << MATCH_CHERRY, + [MATCH_TOPBOT_CHERRY] = 1 << MATCH_TOPBOT_CHERRY, + [MATCH_REPLAY] = 1 << MATCH_REPLAY, + [MATCH_LOTAD] = 1 << MATCH_LOTAD, + [MATCH_AZURILL] = 1 << MATCH_AZURILL, + [MATCH_POWER] = 1 << MATCH_POWER, + [MATCH_MIXED_7] = 1 << MATCH_MIXED_7, + [MATCH_RED_7] = 1 << MATCH_RED_7, + [MATCH_BLUE_7] = 1 << MATCH_BLUE_7 }; static const u16 sSlotPayouts[] = { - [MATCHED_1CHERRY] = 2, - [MATCHED_2CHERRY] = 4, - [MATCHED_REPLAY] = 0, - [MATCHED_LOTAD] = 6, - [MATCHED_AZURILL] = 12, - [MATCHED_POWER] = 3, - [MATCHED_777_MIXED] = 90, - [MATCHED_777_RED] = 300, - [MATCHED_777_BLUE] = 300 + [MATCH_CHERRY] = 2, + [MATCH_TOPBOT_CHERRY] = 4, + [MATCH_REPLAY] = 0, + [MATCH_LOTAD] = 6, + [MATCH_AZURILL] = 12, + [MATCH_POWER] = 3, + [MATCH_MIXED_7] = 90, + [MATCH_RED_7] = 300, + [MATCH_BLUE_7] = 300 }; static const s16 sDigitalDisplay_SpriteCoords[][2] = { @@ -7174,37 +7732,37 @@ static const u16 sTopRowLit_Pal[] = {RGB(31, 29, 16)}; static const u16 sBottomRowt_Pal[] = {RGB(31, 29, 16)}; static const u16 sNWSEDiagLit_Pal[] = {RGB(31, 21, 18)}; static const u16 sNESWDiagLit_Pal[] = {RGB(31, 21, 18)}; -static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES] = +static const u16 *const sLitMatchLinePalTable[NUM_MATCH_ROWS] = { - [MATCH_MIDDLE_ROW] = sMiddleRowLit_Pal, - [MATCH_TOP_ROW] = sTopRowLit_Pal, - [MATCH_BOTTOM_ROW] = sBottomRowt_Pal, - [MATCH_NWSE_DIAG] = sNWSEDiagLit_Pal, - [MATCH_NESW_DIAG] = sNESWDiagLit_Pal, + [ROW_MIDDLE] = sMiddleRowLit_Pal, + [ROW_TOP] = sTopRowLit_Pal, + [ROW_BOTTOM] = sBottomRowt_Pal, + [ROW_DIAG_NWSE] = sNWSEDiagLit_Pal, + [ROW_DIAG_NESW] = sNESWDiagLit_Pal, }; -static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES] = +static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_ROWS] = { - [MATCH_MIDDLE_ROW] = &gSlotMachineMenu_Pal[74], - [MATCH_TOP_ROW] = &gSlotMachineMenu_Pal[75], - [MATCH_BOTTOM_ROW] = &gSlotMachineMenu_Pal[76], - [MATCH_NWSE_DIAG] = &gSlotMachineMenu_Pal[77], - [MATCH_NESW_DIAG] = &gSlotMachineMenu_Pal[78], + [ROW_MIDDLE] = &gSlotMachineMenu_Pal[74], + [ROW_TOP] = &gSlotMachineMenu_Pal[75], + [ROW_BOTTOM] = &gSlotMachineMenu_Pal[76], + [ROW_DIAG_NWSE] = &gSlotMachineMenu_Pal[77], + [ROW_DIAG_NESW] = &gSlotMachineMenu_Pal[78], }; -static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES] = { - [MATCH_MIDDLE_ROW] = 74, - [MATCH_TOP_ROW] = 75, - [MATCH_BOTTOM_ROW] = 76, - [MATCH_NWSE_DIAG] = 78, // Diag colors flipped for some reason - [MATCH_NESW_DIAG] = 77 // Doesn't matter as both are identical +static const u8 sMatchLinePalOffsets[NUM_MATCH_ROWS] = { + [ROW_MIDDLE] = 74, + [ROW_TOP] = 75, + [ROW_BOTTOM] = 76, + [ROW_DIAG_NWSE] = 78, // Diag colors flipped for some reason + [ROW_DIAG_NESW] = 77 // Doesn't matter as both are identical }; static const u8 sBetToMatchLineIds[MAX_BET][2] = { - {MATCH_MIDDLE_ROW, MATCH_MIDDLE_ROW}, // Bet 1 - {MATCH_TOP_ROW, MATCH_BOTTOM_ROW}, // Bet 2 - {MATCH_NWSE_DIAG, MATCH_NESW_DIAG}, // Bet 3 + {ROW_MIDDLE, ROW_MIDDLE}, // Bet 1 + {ROW_TOP, ROW_BOTTOM}, // Bet 2 + {ROW_DIAG_NWSE, ROW_DIAG_NESW}, // Bet 3 }; static const u8 sMatchLinesPerBet[MAX_BET] = { 1, 2, 2 }; From 50cb504d4cf6de822f56d3e110015e626b811186 Mon Sep 17 00:00:00 2001 From: hondew Date: Sun, 20 Feb 2022 10:15:07 -0500 Subject: [PATCH 545/762] Remove stuff --- src/slot_machine.c | 41 ++--------------------------------------- 1 file changed, 2 insertions(+), 39 deletions(-) diff --git a/src/slot_machine.c b/src/slot_machine.c index 9db6e67fdf1a..9c81bcfb691a 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -295,9 +295,6 @@ enum { DIG_DISPLAY_BONUS_BIG }; -// DO NOT SUBMIT until committing in the 'DO NOT SUBMIT' state. -// Keep for posterity as more of an unabridged explanation. - // How ReelTime works // ================== // Entering ReelTime: @@ -1781,13 +1778,6 @@ static void DrawMachineBias(void) if (sSlotMachine->reelTimeSpinsLeft == 0) { - // DO NOT SUBMIT until deleting this!!! Test code to see effects of - // power bolts on ReelTime. - // if ((Random() % 100) < 30) { - // sSlotMachine->machineBias = BIAS_REELTIME; - // } else { - // sSlotMachine->machineBias = BIAS_POWER; - // } if (!(sSlotMachine->machineBias & (BIAS_STRAIGHT_7 | BIAS_MIXED_7))) { if (ShouldTrySpecialBias()) @@ -2556,39 +2546,12 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) // If you can line up the bias tag in the same row as reel 1 within 4 turns if (DecideStop_Bias_Reel2_Bet1or2()) { - // DO NOT SUBMIT until cleaning up this long-winded musing on Game - // Freak's choices... - // - // QUESTION: Why is the 2-3 turn requirement in place?? That leaves out - // some potential middle row matches. E.g., - // - Bias tag in top of reel 1 and it takes 1 turn to get it in the top - // of reel 2 - // - Bias tag in bottom row of reel 1 and it takes 4 turns to get it in - // the bottom row of reel 2 - // * In both cases above, it would have been possible to get the bias - // tag in the middle row of reel 2, but we aren't considering it... - // It'll just be matched in the same row instead - // - // The exact intent is a bit unclear. It could either be: - // 1. Skewing toward a diagonal match rather than a straight match with - // 2/5 probability. - // 2. A programming error: They meant to guard against scenarios where a - // match in the middle is impossible within 4 turns. E.g., - // - Bias tag in top of reel 1 and it would take 5 turns to get it - // to match in the middle of reel 2 - // - Bias tag in bottom of reel 1 and bias tag is currently in - // bottom of reel 2 - // But if this were the case, you would expect the inequality to be - // sSlotMachine->reelExtraTurns[1] >= 1 ... - // * I'll give them the benefit of the doubt and assume it was (1). - // After all, the fact that they then check whether it's even - // possible to match in the middle makes (2) redundant. - // // If bias tag is not in the middle row of reel 1 and it takes either // 2 or 3 turns to get it in the same row for reel 2 if (sSlotMachine->winnerRows[0] != 2 && sSlotMachine->reelExtraTurns[1] > 1 && sSlotMachine->reelExtraTurns[1] != 4) { - // Try to match the bias tag in middle row of reel 2 within 4 turns + // Try turning this into a diagonal match by lining up the bias tag + // in the middle row of reel 2 within 4 turns. for (i = 0; i <= 4; i++) { if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) From a578fa5e2bf34c32d7d6325ee255a73e9bd76a06 Mon Sep 17 00:00:00 2001 From: hondew Date: Sun, 20 Feb 2022 12:06:29 -0500 Subject: [PATCH 546/762] Minor fixes --- src/slot_machine.c | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/src/slot_machine.c b/src/slot_machine.c index 9c81bcfb691a..5a077da2dfa0 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -295,6 +295,7 @@ enum { DIG_DISPLAY_BONUS_BIG }; + // How ReelTime works // ================== // Entering ReelTime: @@ -321,7 +322,8 @@ enum { // extra turns to manipulate the outcome. // - ReelTime ends early if you win red 7's or blue 7's. -// Field explanations: + +// SlotMachine field explanations: // // luckyGame: // Determined at random when you start playing. Some events modify this: @@ -2566,11 +2568,11 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) } // If you can't line up the bias tag in the same row in 4 turns, and the - // bias tag is not in the middle row of reel 1. Adds coverage for the two - // cases mentioned above. + // bias tag is not in the middle row of reel 1 if (sSlotMachine->winnerRows[0] != 2) { - // Try to match the bias tag in middle row of reel 2 within 4 turns + // Try to match the bias tag in middle row of reel 2 within 4 turns. + // Adds coverage for the two cases mentioned above. for (i = 0; i <= 4; i++) { if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) @@ -7697,35 +7699,35 @@ static const u16 sNWSEDiagLit_Pal[] = {RGB(31, 21, 18)}; static const u16 sNESWDiagLit_Pal[] = {RGB(31, 21, 18)}; static const u16 *const sLitMatchLinePalTable[NUM_MATCH_ROWS] = { - [ROW_MIDDLE] = sMiddleRowLit_Pal, - [ROW_TOP] = sTopRowLit_Pal, - [ROW_BOTTOM] = sBottomRowt_Pal, - [ROW_DIAG_NWSE] = sNWSEDiagLit_Pal, - [ROW_DIAG_NESW] = sNESWDiagLit_Pal, + [ROW_MIDDLE] = sMiddleRowLit_Pal, + [ROW_TOP] = sTopRowLit_Pal, + [ROW_BOTTOM] = sBottomRowt_Pal, + [ROW_DIAG_NWSE] = sNWSEDiagLit_Pal, + [ROW_DIAG_NESW] = sNESWDiagLit_Pal, }; static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_ROWS] = { - [ROW_MIDDLE] = &gSlotMachineMenu_Pal[74], - [ROW_TOP] = &gSlotMachineMenu_Pal[75], - [ROW_BOTTOM] = &gSlotMachineMenu_Pal[76], - [ROW_DIAG_NWSE] = &gSlotMachineMenu_Pal[77], - [ROW_DIAG_NESW] = &gSlotMachineMenu_Pal[78], + [ROW_MIDDLE] = &gSlotMachineMenu_Pal[74], + [ROW_TOP] = &gSlotMachineMenu_Pal[75], + [ROW_BOTTOM] = &gSlotMachineMenu_Pal[76], + [ROW_DIAG_NWSE] = &gSlotMachineMenu_Pal[77], + [ROW_DIAG_NESW] = &gSlotMachineMenu_Pal[78], }; static const u8 sMatchLinePalOffsets[NUM_MATCH_ROWS] = { - [ROW_MIDDLE] = 74, - [ROW_TOP] = 75, - [ROW_BOTTOM] = 76, - [ROW_DIAG_NWSE] = 78, // Diag colors flipped for some reason - [ROW_DIAG_NESW] = 77 // Doesn't matter as both are identical + [ROW_MIDDLE] = 74, + [ROW_TOP] = 75, + [ROW_BOTTOM] = 76, + [ROW_DIAG_NWSE] = 78, // Diag colors flipped for some reason + [ROW_DIAG_NESW] = 77 // Doesn't matter as both are identical }; static const u8 sBetToMatchLineIds[MAX_BET][2] = { - {ROW_MIDDLE, ROW_MIDDLE}, // Bet 1 - {ROW_TOP, ROW_BOTTOM}, // Bet 2 - {ROW_DIAG_NWSE, ROW_DIAG_NESW}, // Bet 3 + {ROW_MIDDLE, ROW_MIDDLE}, // Bet 1 + {ROW_TOP, ROW_BOTTOM}, // Bet 2 + {ROW_DIAG_NWSE, ROW_DIAG_NESW}, // Bet 3 }; static const u8 sMatchLinesPerBet[MAX_BET] = { 1, 2, 2 }; From 26e87eed0a09379efcb50ace4c2f2fe8143e7c0e Mon Sep 17 00:00:00 2001 From: hondew Date: Sun, 20 Feb 2022 15:32:32 -0500 Subject: [PATCH 547/762] Address comments --- src/slot_machine.c | 146 ++++++++++++++++++++++++--------------------- 1 file changed, 77 insertions(+), 69 deletions(-) diff --git a/src/slot_machine.c b/src/slot_machine.c index 5a077da2dfa0..f95cc98b7095 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -65,6 +65,14 @@ #define BIAS_SPECIAL (BIAS_7 | BIAS_REELTIME) #define BIAS_REGULAR (BIAS_REPLAY | BIAS_CHERRY | BIAS_LOATAD | BIAS_AZURILL | BIAS_POWER) +// The slot machine will try to manipulate the outcome by adding up to 4 extra +// turns to the reel after you press stop. +// +// The only exception is when it is stopping the third reel and it has decided +// you will lose. In this case, it adds as many turns as necessary to prevent a +// match. +#define MAX_EXTRA_TURNS 4 + enum { GFXTAG_7_RED, GFXTAG_7_BLUE, @@ -122,12 +130,12 @@ enum { }; enum { - ROW_MIDDLE, - ROW_TOP, - ROW_BOTTOM, - ROW_DIAG_NWSE, - ROW_DIAG_NESW, - NUM_MATCH_ROWS, + MATCH_MIDDLE_ROW, + MATCH_TOP_ROW, + MATCH_BOTTOM_ROW, + MATCH_NWSE_DIAG, + MATCH_NESW_DIAG, + NUM_MATCH_LINES, }; enum { @@ -374,7 +382,7 @@ struct SlotMachine /*0x41*/ u8 reelTimeExplosionSpriteId; /*0x42*/ u8 reelTimeBrokenMachineSpriteId; /*0x43*/ u8 reelTimeSmokeSpriteId; - /*0x44*/ u8 flashMatchLineSpriteIds[NUM_MATCH_ROWS]; + /*0x44*/ u8 flashMatchLineSpriteIds[NUM_MATCH_LINES]; /*0x49*/ u8 reelTimeMachineSpriteIds[2]; /*0x49*/ u8 reelTimeNumberSpriteIds[3]; /*0x4E*/ u8 reelTimeShadowSpriteIds[2]; @@ -694,9 +702,9 @@ static const u8 sReelTimeProbabilities_LuckyGame[][17]; static const u8 sTagToMatch[]; static const u8 sReelTimeTags[]; static const u8 sReelTileTags[NUM_REELS][TAGS_PER_REEL]; -static const u16 *const sLitMatchLinePalTable[NUM_MATCH_ROWS]; -static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_ROWS]; -static const u8 sMatchLinePalOffsets[NUM_MATCH_ROWS]; +static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES]; +static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES]; +static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES]; static const u8 sBetToMatchLineIds[MAX_BET][2]; static const u8 sMatchLinesPerBet[MAX_BET]; static const u16 *const sFlashingLightsPalTable[]; @@ -1985,7 +1993,7 @@ static void CheckMatch_CenterRow(void) { sSlotMachine->payout += sSlotPayouts[match]; sSlotMachine->matches |= sSlotMatchFlags[match]; - FlashMatchLine(ROW_MIDDLE); + FlashMatchLine(MATCH_MIDDLE_ROW); } } @@ -2003,7 +2011,7 @@ static void CheckMatch_TopAndBottom(void) match = MATCH_TOPBOT_CHERRY; sSlotMachine->payout += sSlotPayouts[match]; sSlotMachine->matches |= sSlotMatchFlags[match]; - FlashMatchLine(ROW_TOP); + FlashMatchLine(MATCH_TOP_ROW); } tag1 = GetTagAtRest(LEFT_REEL, 3); tag2 = GetTagAtRest(MIDDLE_REEL, 3); @@ -2015,7 +2023,7 @@ static void CheckMatch_TopAndBottom(void) match = MATCH_TOPBOT_CHERRY; sSlotMachine->payout += sSlotPayouts[match]; sSlotMachine->matches |= sSlotMatchFlags[match]; - FlashMatchLine(ROW_BOTTOM); + FlashMatchLine(MATCH_BOTTOM_ROW); } } @@ -2036,7 +2044,7 @@ static void CheckMatch_Diagonals(void) sSlotMachine->payout += sSlotPayouts[match]; sSlotMachine->matches |= sSlotMatchFlags[match]; } - FlashMatchLine(ROW_DIAG_NWSE); + FlashMatchLine(MATCH_NWSE_DIAG); } tag1 = GetTagAtRest(LEFT_REEL, 3); tag2 = GetTagAtRest(MIDDLE_REEL, 2); @@ -2051,7 +2059,7 @@ static void CheckMatch_Diagonals(void) sSlotMachine->payout += sSlotPayouts[match]; sSlotMachine->matches |= sSlotMatchFlags[match]; } - FlashMatchLine(ROW_DIAG_NESW); + FlashMatchLine(MATCH_NESW_DIAG); } } @@ -2382,9 +2390,9 @@ static bool8 EitherTagAtPos_Reel1(s16 pos, u8 tag1, u8 tag2) // of turns. static bool8 AreCherriesOnScreen_Reel1(s16 turns) { - if (GetTag(LEFT_REEL, 1 - turns) == GFXTAG_CHERRY || - GetTag(LEFT_REEL, 2 - turns) == GFXTAG_CHERRY || - GetTag(LEFT_REEL, 3 - turns) == GFXTAG_CHERRY) + if (GetTag(LEFT_REEL, 1 - turns) == GFXTAG_CHERRY + || GetTag(LEFT_REEL, 2 - turns) == GFXTAG_CHERRY + || GetTag(LEFT_REEL, 3 - turns) == GFXTAG_CHERRY) return TRUE; else return FALSE; @@ -2404,7 +2412,7 @@ static bool8 DecideStop_Bias_Reel1_Bet1(u8 tag1, u8 tag2) { s16 i; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (EitherTagAtPos_Reel1(2 - i, tag1, tag2)) { @@ -2458,7 +2466,7 @@ static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 tag1, u8 tag2) } // Check the next 4 turns - for (i = 1; i <= 4; i++) + for (i = 1; i <= MAX_EXTRA_TURNS; i++) { bool8 cherry7BiasCopy = cherry7Bias; // redundant if (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(i)) @@ -2498,7 +2506,7 @@ static bool8 DecideStop_Bias_Reel2_Bet1or2(void) s16 i; s16 reel1BiasRow = sSlotMachine->winnerRows[0]; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (GetTag(MIDDLE_REEL, reel1BiasRow - i) == sSlotMachine->biasTag) { @@ -2554,7 +2562,7 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) { // Try turning this into a diagonal match by lining up the bias tag // in the middle row of reel 2 within 4 turns. - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) { @@ -2573,7 +2581,7 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) { // Try to match the bias tag in middle row of reel 2 within 4 turns. // Adds coverage for the two cases mentioned above. - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) { @@ -2609,7 +2617,7 @@ static bool8 DecideStop_Bias_Reel3_Bet1or2(u8 biasTag) s16 i; s16 reel2BiasRow = sSlotMachine->winnerRows[1]; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (GetTag(RIGHT_REEL, reel2BiasRow - i) == biasTag) { @@ -2638,7 +2646,7 @@ static bool8 DecideStop_Bias_Reel3_Bet3(u8 biasTag) biasRow = 3; else biasRow = 1; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (GetTag(RIGHT_REEL, biasRow - i) == biasTag) { @@ -2665,16 +2673,16 @@ static void DecideStop_NoBias_Reel1(void) // If the bias tag is one of the 7's, switch to the opposite color and return // true. Otherwise, return false. -static bool8 IfTag7_SwitchColor(u8 *tagPtr) +static bool8 IfTag7_SwitchColor(u8 *tag) { - if (*tagPtr == GFXTAG_7_RED) + if (*tag == GFXTAG_7_RED) { - *tagPtr = GFXTAG_7_BLUE; + *tag = GFXTAG_7_BLUE; return TRUE; } - if (*tagPtr == GFXTAG_7_BLUE) + if (*tag == GFXTAG_7_BLUE) { - *tagPtr = GFXTAG_7_RED; + *tag = GFXTAG_7_RED; return TRUE; } return FALSE; @@ -2714,7 +2722,7 @@ static void DecideStop_NoBias_Reel2_Bet1(void) if (IfTag7_SwitchColor(&reel1MiddleTag)) { s16 i; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (reel1MiddleTag == GetTag(MIDDLE_REEL, 2 - i)) { @@ -2745,7 +2753,7 @@ static void DecideStop_NoBias_Reel2_Bet2(void) if (IfTag7_SwitchColor(&reel1BiasTag)) { s16 i; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - i)) { @@ -2835,7 +2843,7 @@ static void DecideStop_NoBias_Reel2_Bet3(void) // Check if opposite-color 7 will appear in same row as reel 1 in // over the next 4 turns - for (j = 1; j <= 4; j++) + for (j = 1; j <= MAX_EXTRA_TURNS; j++) { if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - j)) { @@ -2904,11 +2912,11 @@ static bool8 MismatchedTags_777(u8 tag1, u8 tag2, u8 tag3) // Note, this does not account for cherry matches. static bool8 NeitherMatchNor7Mismatch(u8 tag1, u8 tag2, u8 tag3) { - if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) || - (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || - (tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || - (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) || - (tag1 == tag2 && tag1 == tag3)) + if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) + || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) + || (tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) + || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) + || (tag1 == tag2 && tag1 == tag3)) { return FALSE; } @@ -2948,9 +2956,9 @@ static void DecideStop_NoBias_Reel3_Bet1(void) while (TRUE) { u8 tag3; - if (!((tag1 == (tag3 = GetTag(RIGHT_REEL, 2 - i))) || - (tag1 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) || - (tag1 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED))) + if (!((tag1 == (tag3 = GetTag(RIGHT_REEL, 2 - i))) + || (tag1 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) + || (tag1 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED))) break; i++; } @@ -2962,7 +2970,7 @@ static void DecideStop_NoBias_Reel3_Bet1(void) // turns if (sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { if (tag1 == GetTag(RIGHT_REEL, 2 - i)) { @@ -3023,7 +3031,7 @@ static void DecideStop_NoBias_Reel3_Bet2(void) if (MismatchedTags_77(tag1, tag2)) { // Iterate over the next 4 turns - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { tag3 = GetTag(RIGHT_REEL, sSlotMachine->winnerRows[1] - i); if (tag1 == tag3) @@ -3124,7 +3132,7 @@ static void DecideStop_NoBias_Reel3_Bet3(void) row = 1; if (sSlotMachine->winnerRows[0] == 1) row = 3; - for (i = 0; i <= 4; i++) + for (i = 0; i <= MAX_EXTRA_TURNS; i++) { tag3 = GetTag(RIGHT_REEL, row - (sSlotMachine->reelExtraTurns[2] + i)); if (tag1 == tag3) @@ -3142,8 +3150,8 @@ static void DecideStop_NoBias_Reel3_Bet3(void) tag1 = GetTag(LEFT_REEL, 1 - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); tag3 = GetTag(RIGHT_REEL, 3 - sSlotMachine->reelExtraTurns[2]); - if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) || - (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) + if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) + || (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } @@ -3154,8 +3162,8 @@ static void DecideStop_NoBias_Reel3_Bet3(void) tag1 = GetTag(LEFT_REEL, 3 - sSlotMachine->reelExtraTurns[0]); tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); tag3 = GetTag(RIGHT_REEL, 1 - sSlotMachine->reelExtraTurns[2]); - if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) || - (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) + if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) + || (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } @@ -7697,37 +7705,37 @@ static const u16 sTopRowLit_Pal[] = {RGB(31, 29, 16)}; static const u16 sBottomRowt_Pal[] = {RGB(31, 29, 16)}; static const u16 sNWSEDiagLit_Pal[] = {RGB(31, 21, 18)}; static const u16 sNESWDiagLit_Pal[] = {RGB(31, 21, 18)}; -static const u16 *const sLitMatchLinePalTable[NUM_MATCH_ROWS] = +static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES] = { - [ROW_MIDDLE] = sMiddleRowLit_Pal, - [ROW_TOP] = sTopRowLit_Pal, - [ROW_BOTTOM] = sBottomRowt_Pal, - [ROW_DIAG_NWSE] = sNWSEDiagLit_Pal, - [ROW_DIAG_NESW] = sNESWDiagLit_Pal, + [MATCH_MIDDLE_ROW] = sMiddleRowLit_Pal, + [MATCH_TOP_ROW] = sTopRowLit_Pal, + [MATCH_BOTTOM_ROW] = sBottomRowt_Pal, + [MATCH_NWSE_DIAG] = sNWSEDiagLit_Pal, + [MATCH_NESW_DIAG] = sNESWDiagLit_Pal, }; -static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_ROWS] = +static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES] = { - [ROW_MIDDLE] = &gSlotMachineMenu_Pal[74], - [ROW_TOP] = &gSlotMachineMenu_Pal[75], - [ROW_BOTTOM] = &gSlotMachineMenu_Pal[76], - [ROW_DIAG_NWSE] = &gSlotMachineMenu_Pal[77], - [ROW_DIAG_NESW] = &gSlotMachineMenu_Pal[78], + [MATCH_MIDDLE_ROW] = &gSlotMachineMenu_Pal[74], + [MATCH_TOP_ROW] = &gSlotMachineMenu_Pal[75], + [MATCH_BOTTOM_ROW] = &gSlotMachineMenu_Pal[76], + [MATCH_NWSE_DIAG] = &gSlotMachineMenu_Pal[77], + [MATCH_NESW_DIAG] = &gSlotMachineMenu_Pal[78], }; -static const u8 sMatchLinePalOffsets[NUM_MATCH_ROWS] = { - [ROW_MIDDLE] = 74, - [ROW_TOP] = 75, - [ROW_BOTTOM] = 76, - [ROW_DIAG_NWSE] = 78, // Diag colors flipped for some reason - [ROW_DIAG_NESW] = 77 // Doesn't matter as both are identical +static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES] = { + [MATCH_MIDDLE_ROW] = 74, + [MATCH_TOP_ROW] = 75, + [MATCH_BOTTOM_ROW] = 76, + [MATCH_NWSE_DIAG] = 78, // Diag colors flipped for some reason + [MATCH_NESW_DIAG] = 77 // Doesn't matter as both are identical }; static const u8 sBetToMatchLineIds[MAX_BET][2] = { - {ROW_MIDDLE, ROW_MIDDLE}, // Bet 1 - {ROW_TOP, ROW_BOTTOM}, // Bet 2 - {ROW_DIAG_NWSE, ROW_DIAG_NESW}, // Bet 3 + {MATCH_MIDDLE_ROW, MATCH_MIDDLE_ROW}, // Bet 1 + {MATCH_TOP_ROW, MATCH_BOTTOM_ROW}, // Bet 2 + {MATCH_NWSE_DIAG, MATCH_NESW_DIAG}, // Bet 3 }; static const u8 sMatchLinesPerBet[MAX_BET] = { 1, 2, 2 }; From 39fc1cd414b93b2a9ec7fcde2710081f8ecffe9f Mon Sep 17 00:00:00 2001 From: hondew Date: Sun, 20 Feb 2022 16:43:06 -0500 Subject: [PATCH 548/762] Switch to 'symbol' nomenclature --- src/slot_machine.c | 670 +++++++++++++++++++++++---------------------- 1 file changed, 342 insertions(+), 328 deletions(-) diff --git a/src/slot_machine.c b/src/slot_machine.c index f95cc98b7095..6935631f8cd4 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -31,13 +31,13 @@ #define SLOTMACHINE_GFX_TILES 233 #define MAX_BET 3 -#define TAGS_PER_REEL 21 -#define TAG_HEIGHT 24 -#define REEL_HEIGHT (TAGS_PER_REEL * TAG_HEIGHT) +#define SYBMOLS_PER_REEL 21 +#define REEL_SYMBOL_HEIGHT 24 +#define REEL_HEIGHT (SYBMOLS_PER_REEL * REEL_SYMBOL_HEIGHT) -#define REELTIME_TAGS 6 -#define REELTIME_TAG_HEIGHT 20 -#define REELTIME_REEL_HEIGHT (REELTIME_TAGS * REELTIME_TAG_HEIGHT) +#define REELTIME_SYMBOLS 6 +#define REELTIME_SYMBOL_HEIGHT 20 +#define REELTIME_REEL_HEIGHT (REELTIME_SYMBOLS * REELTIME_SYMBOL_HEIGHT) // There are three categories of biases: 7's, ReelTime, Regular // - 7's: BIAS_STRAIGHT_7, BIAS_MIXED_7 @@ -74,6 +74,17 @@ #define MAX_EXTRA_TURNS 4 enum { + SYMBOL_7_RED, + SYMBOL_7_BLUE, + SYMBOL_AZURILL, + SYMBOL_LOTAD, + SYMBOL_CHERRY, + SYMBOL_POWER, + SYMBOL_REPLAY, +}; + +enum +{ GFXTAG_7_RED, GFXTAG_7_BLUE, GFXTAG_AZURILL, @@ -357,7 +368,7 @@ struct SlotMachine /*0x04*/ u8 machineBias; /*0x05*/ u8 reelTimeDraw; /*0x06*/ bool8 didNotFailBias; - /*0x07*/ u8 biasTag; + /*0x07*/ u8 biasSymbol; /*0x08*/ u16 matches; /*0x0A*/ u8 reelTimeSpinsLeft; /*0x0B*/ u8 reelTimeSpinsUsed; @@ -463,14 +474,14 @@ static void CheckMatch(void); static void CheckMatch_CenterRow(void); static void CheckMatch_TopAndBottom(void); static void CheckMatch_Diagonals(void); -static u8 GetMatchFromTags(u8, u8, u8); +static u8 GetMatchFromSymbols(u8, u8, u8); static void AwardPayout(void); static void Task_Payout(u8); static bool8 IsFinalTask_Task_Payout(void); static bool8 PayoutTask_Init(struct Task *); static bool8 PayoutTask_GivePayout(struct Task *); static bool8 PayoutTask_Free(struct Task *); -static u8 GetTagAtRest(u8, s16); +static u8 GetSymbolAtRest(u8, s16); static void CreateReelTasks(void); static void SpinSlotReel(u8); static void StopSlotReel(u8); @@ -671,7 +682,7 @@ static struct SpriteFrameImage *sImageTables_DigitalDisplay[NUM_DIG_DISPLAY_SPRI static const struct DigitalDisplaySprite *const sDigitalDisplayScenes[]; static const u16 sUnkPalette[]; static const u8 sSpecialDrawOdds[NUM_SLOT_MACHINE_IDS][MAX_BET]; -static const u8 sBiasTags[]; +static const u8 sBiasSymbols[]; static const u16 sBiasesSpecial[3]; static const u16 sBiasesRegular[5]; static const s16 sDigitalDisplay_SpriteCoords[][2]; @@ -699,9 +710,9 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS]; static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS]; static const u8 sReelTimeProbabilities_NormalGame[][17]; static const u8 sReelTimeProbabilities_LuckyGame[][17]; -static const u8 sTagToMatch[]; -static const u8 sReelTimeTags[]; -static const u8 sReelTileTags[NUM_REELS][TAGS_PER_REEL]; +static const u8 sSymbolToMatch[]; +static const u8 sReelTimeSymbols[]; +static const u8 sReelSymbols[NUM_REELS][SYBMOLS_PER_REEL]; static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES]; static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES]; static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES]; @@ -846,10 +857,10 @@ static bool8 (*const sReelTasks[])(struct Task *task) = [REEL_ACTION_STOP_SHAKE] = ReelTask_ShakingStop, }; -// Returns true if it is possible to match the bias tag in the reel. +// Returns true if it is possible to match the bias symbol in the reel. // // Modifies the winnerRows and reelExtraTurns to indicate how to match the bias -// tag. +// symbol. static bool8 (*const sDecideStop_Bias[NUM_REELS])(void) = { DecideStop_Bias_Reel1, @@ -872,7 +883,7 @@ static void (*const sDecideStop_NoBias[NUM_REELS])(void) = // The magnitude of the shock depends on how many extra turns are added. static const u16 sReelStopShocks[] = {2, 4, 4, 4, 8}; -static bool8 (*const sDecideStop_Bias_Reel1_Bets[MAX_BET])(u8 tag1, u8 tag2) = +static bool8 (*const sDecideStop_Bias_Reel1_Bets[MAX_BET])(u8 sym1, u8 sym2) = { DecideStop_Bias_Reel1_Bet1, DecideStop_Bias_Reel1_Bet2or3, @@ -886,7 +897,7 @@ static bool8 (*const sDecideStop_Bias_Reel2_Bets[MAX_BET])(void) = DecideStop_Bias_Reel2_Bet3, }; -static bool8 (*const sDecideStop_Bias_Reel3_Bets[MAX_BET])(u8 biasTag) = +static bool8 (*const sDecideStop_Bias_Reel3_Bets[MAX_BET])(u8 biasSymbol) = { DecideStop_Bias_Reel3_Bet1or2, DecideStop_Bias_Reel3_Bet1or2, @@ -1199,8 +1210,8 @@ static void InitSlotMachine(void) for (i = 0; i < NUM_REELS; i++) { sSlotMachine->reelShockOffsets[i] = 0; - sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % TAGS_PER_REEL; - sSlotMachine->reelPixelOffsets[i] = REEL_HEIGHT - sSlotMachine->reelPositions[i] * TAG_HEIGHT; + sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % SYBMOLS_PER_REEL; + sSlotMachine->reelPixelOffsets[i] = REEL_HEIGHT - sSlotMachine->reelPositions[i] * REEL_SYMBOL_HEIGHT; sSlotMachine->reelPixelOffsets[i] %= REEL_HEIGHT; } AlertTVThatPlayerPlayedSlotMachine(GetCoins()); @@ -1817,15 +1828,15 @@ static void ResetBiasFailure(void) sSlotMachine->didNotFailBias = TRUE; } -// See sBiasTags for each bias's corresponding tag. -static u8 GetBiasTag(u8 machineBias) +// See sBiasSymbols for each bias's corresponding symbol. +static u8 GetBiasSymbol(u8 machineBias) { u8 i; for (i = 0; i < 8; i++) { if (machineBias & 1) - return sBiasTags[i]; + return sBiasSymbols[i]; machineBias >>= 1; } return 0; @@ -1983,12 +1994,12 @@ static void CheckMatch(void) static void CheckMatch_CenterRow(void) { - u8 tag1, tag2, tag3, match; + u8 sym1, sym2, sym3, match; - tag1 = GetTagAtRest(LEFT_REEL, 2); - tag2 = GetTagAtRest(MIDDLE_REEL, 2); - tag3 = GetTagAtRest(RIGHT_REEL, 2); - match = GetMatchFromTags(tag1, tag2, tag3); + sym1 = GetSymbolAtRest(LEFT_REEL, 2); + sym2 = GetSymbolAtRest(MIDDLE_REEL, 2); + sym3 = GetSymbolAtRest(RIGHT_REEL, 2); + match = GetMatchFromSymbols(sym1, sym2, sym3); if (match != MATCH_NONE) { sSlotMachine->payout += sSlotPayouts[match]; @@ -1999,12 +2010,12 @@ static void CheckMatch_CenterRow(void) static void CheckMatch_TopAndBottom(void) { - u8 tag1, tag2, tag3, match; + u8 sym1, sym2, sym3, match; - tag1 = GetTagAtRest(LEFT_REEL, 1); - tag2 = GetTagAtRest(MIDDLE_REEL, 1); - tag3 = GetTagAtRest(RIGHT_REEL, 1); - match = GetMatchFromTags(tag1, tag2, tag3); + sym1 = GetSymbolAtRest(LEFT_REEL, 1); + sym2 = GetSymbolAtRest(MIDDLE_REEL, 1); + sym3 = GetSymbolAtRest(RIGHT_REEL, 1); + match = GetMatchFromSymbols(sym1, sym2, sym3); if (match != MATCH_NONE) { if (match == MATCH_CHERRY) @@ -2013,10 +2024,10 @@ static void CheckMatch_TopAndBottom(void) sSlotMachine->matches |= sSlotMatchFlags[match]; FlashMatchLine(MATCH_TOP_ROW); } - tag1 = GetTagAtRest(LEFT_REEL, 3); - tag2 = GetTagAtRest(MIDDLE_REEL, 3); - tag3 = GetTagAtRest(RIGHT_REEL, 3); - match = GetMatchFromTags(tag1, tag2, tag3); + sym1 = GetSymbolAtRest(LEFT_REEL, 3); + sym2 = GetSymbolAtRest(MIDDLE_REEL, 3); + sym3 = GetSymbolAtRest(RIGHT_REEL, 3); + match = GetMatchFromSymbols(sym1, sym2, sym3); if (match != MATCH_NONE) { if (match == MATCH_CHERRY) @@ -2029,12 +2040,12 @@ static void CheckMatch_TopAndBottom(void) static void CheckMatch_Diagonals(void) { - u8 tag1, tag2, tag3, match; + u8 sym1, sym2, sym3, match; - tag1 = GetTagAtRest(LEFT_REEL, 1); - tag2 = GetTagAtRest(MIDDLE_REEL, 2); - tag3 = GetTagAtRest(RIGHT_REEL, 3); - match = GetMatchFromTags(tag1, tag2, tag3); + sym1 = GetSymbolAtRest(LEFT_REEL, 1); + sym2 = GetSymbolAtRest(MIDDLE_REEL, 2); + sym3 = GetSymbolAtRest(RIGHT_REEL, 3); + match = GetMatchFromSymbols(sym1, sym2, sym3); if (match != MATCH_NONE) { // Don't add payout for cherry, since it's already counted in @@ -2046,10 +2057,10 @@ static void CheckMatch_Diagonals(void) } FlashMatchLine(MATCH_NWSE_DIAG); } - tag1 = GetTagAtRest(LEFT_REEL, 3); - tag2 = GetTagAtRest(MIDDLE_REEL, 2); - tag3 = GetTagAtRest(RIGHT_REEL, 1); - match = GetMatchFromTags(tag1, tag2, tag3); + sym1 = GetSymbolAtRest(LEFT_REEL, 3); + sym2 = GetSymbolAtRest(MIDDLE_REEL, 2); + sym3 = GetSymbolAtRest(RIGHT_REEL, 1); + match = GetMatchFromSymbols(sym1, sym2, sym3); if (match != MATCH_NONE) { // Don't add payout for cherry, since it's already counted in @@ -2063,15 +2074,15 @@ static void CheckMatch_Diagonals(void) } } -static u8 GetMatchFromTags(u8 tag1, u8 tag2, u8 tag3) +static u8 GetMatchFromSymbols(u8 sym1, u8 sym2, u8 sym3) { - if (tag1 == tag2 && tag1 == tag3) - return sTagToMatch[tag1]; - if (tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) + if (sym1 == sym2 && sym1 == sym3) + return sSymbolToMatch[sym1]; + if (sym1 == SYMBOL_7_RED && sym2 == SYMBOL_7_RED && sym3 == SYMBOL_7_BLUE) return MATCH_MIXED_7; - if (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) + if (sym1 == SYMBOL_7_BLUE && sym2 == SYMBOL_7_BLUE && sym3 == SYMBOL_7_RED) return MATCH_MIXED_7; - if (tag1 == GFXTAG_CHERRY) + if (sym1 == SYMBOL_CHERRY) return MATCH_CHERRY; return MATCH_NONE; } @@ -2147,8 +2158,8 @@ static bool8 PayoutTask_Free(struct Task *task) #undef tState #undef tTimer -// Get the tag at position `offset` below the top of the reel's tape. Note that -// if `offset` is negative, it wraps around to the bottom of the tape. +// Get the symbol at position `offset` below the top of the reel's tape. Note +// that if `offset` is negative, it wraps around to the bottom of the tape. // .-----------------. // | [ ] | [ ] | [ ] | <- offset = 0 // /-----|-----|-----\ @@ -2159,50 +2170,50 @@ static bool8 PayoutTask_Free(struct Task *task) // | ... | ... | ... | // | [ ] | [ ] | [ ] | <- offset = 20 // .-----------------. -static u8 GetTagAtRest(u8 reel, s16 offset) +static u8 GetSymbolAtRest(u8 reel, s16 offset) { - s16 pos = (sSlotMachine->reelPositions[reel] + offset) % TAGS_PER_REEL; + s16 pos = (sSlotMachine->reelPositions[reel] + offset) % SYBMOLS_PER_REEL; if (pos < 0) - pos += TAGS_PER_REEL; - return sReelTileTags[reel][pos]; + pos += SYBMOLS_PER_REEL; + return sReelSymbols[reel][pos]; } -// Calculates GetTagAtRest as if the reel were snapped downwards into place. -static u8 GetTag(u8 reel, s16 offset) +// Calculates GetSymbolAtRest as if the reel were snapped downwards into place. +static u8 GetSymbol(u8 reel, s16 offset) { s16 inc = 0; - s16 pixelOffset = sSlotMachine->reelPixelOffsets[reel] % TAG_HEIGHT; + s16 pixelOffset = sSlotMachine->reelPixelOffsets[reel] % REEL_SYMBOL_HEIGHT; if (pixelOffset != 0) inc = -1; - return GetTagAtRest(reel, offset + inc); + return GetSymbolAtRest(reel, offset + inc); } -static u8 GetReelTimeTag(s16 offset) +static u8 GetReelTimeSymbol(s16 offset) { - s16 newPosition = (sSlotMachine->reeltimePosition + offset) % REELTIME_TAGS; + s16 newPosition = (sSlotMachine->reeltimePosition + offset) % REELTIME_SYMBOLS; if (newPosition < 0) - newPosition += REELTIME_TAGS; - return sReelTimeTags[newPosition]; + newPosition += REELTIME_SYMBOLS; + return sReelTimeSymbols[newPosition]; } static void AdvanceSlotReel(u8 reelIndex, s16 value) { sSlotMachine->reelPixelOffsets[reelIndex] += value; sSlotMachine->reelPixelOffsets[reelIndex] %= REEL_HEIGHT; - sSlotMachine->reelPositions[reelIndex] = TAGS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / TAG_HEIGHT; + sSlotMachine->reelPositions[reelIndex] = SYBMOLS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / REEL_SYMBOL_HEIGHT; } -// Advances the reel no further than the next tag. Returns the remaining pixels -// until the next tag. -s16 AdvanceSlotReelToNextTag(u8 reelIndex, s16 value) +// Advances the reel no further than the next symbol. Returns the remaining +// pixels until the next symbol. +s16 AdvanceSlotReelToNextSymbol(u8 reelIndex, s16 value) { - s16 offset = sSlotMachine->reelPixelOffsets[reelIndex] % TAG_HEIGHT; + s16 offset = sSlotMachine->reelPixelOffsets[reelIndex] % REEL_SYMBOL_HEIGHT; if (offset != 0) { if (offset < value) value = offset; AdvanceSlotReel(reelIndex, value); - offset = sSlotMachine->reelPixelOffsets[reelIndex] % TAG_HEIGHT; + offset = sSlotMachine->reelPixelOffsets[reelIndex] % REEL_SYMBOL_HEIGHT; } return offset; } @@ -2211,20 +2222,20 @@ static void AdvanceReeltimeReel(s16 value) { sSlotMachine->reeltimePixelOffset += value; sSlotMachine->reeltimePixelOffset %= REELTIME_REEL_HEIGHT; - sSlotMachine->reeltimePosition = REELTIME_TAGS - sSlotMachine->reeltimePixelOffset / REELTIME_TAG_HEIGHT; + sSlotMachine->reeltimePosition = REELTIME_SYMBOLS - sSlotMachine->reeltimePixelOffset / REELTIME_SYMBOL_HEIGHT; } -// Advances the reel no further than the next tag. Returns the remaining pixels -// until the next tag. -s16 AdvanceReeltimeReelToNextTag(s16 value) +// Advances the reel no further than the next symbol. Returns the remaining +// pixels until the next symbol. +s16 AdvanceReeltimeReelToNextSymbol(s16 value) { - s16 offset = sSlotMachine->reeltimePixelOffset % REELTIME_TAG_HEIGHT; + s16 offset = sSlotMachine->reeltimePixelOffset % REELTIME_SYMBOL_HEIGHT; if (offset != 0) { if (offset < value) value = offset; AdvanceReeltimeReel(value); - offset = sSlotMachine->reeltimePixelOffset % REELTIME_TAG_HEIGHT; + offset = sSlotMachine->reeltimePixelOffset % REELTIME_SYMBOL_HEIGHT; } return offset; } @@ -2285,10 +2296,10 @@ static bool8 ReelTask_Spin(struct Task *task) // the results by stopping after at most 4 extra turns. The exact behavior // differs depending on whether the machine has a bias. // -// If the machine has a bias, it will try to match the bias tag in each reel. +// If the machine has a bias, it will try to match the bias symbol in each reel. // // Otherwise, if the machine doesn't have a bias or it could not line up the -// bias tag in any of the previous reels, it will perform the NoBias stopping +// bias symbol in any of the previous reels, it will perform the NoBias stopping // routine, which manipulates the outcome so the player loses. static bool8 ReelTask_DecideStop(struct Task *task) { @@ -2308,21 +2319,21 @@ static bool8 ReelTask_DecideStop(struct Task *task) return TRUE; } -// Go to the next tag, then add any extra turns. +// Go to the next symbol, then add any extra turns. static bool8 ReelTask_MoveToStop(struct Task *task) { u16 reelStopShocks[ARRAY_COUNT(sReelStopShocks)]; s16 reelPixelPos; memcpy(reelStopShocks, sReelStopShocks, sizeof(sReelStopShocks)); - reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % TAG_HEIGHT; + reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % REEL_SYMBOL_HEIGHT; if (reelPixelPos != 0) - reelPixelPos = AdvanceSlotReelToNextTag(task->tReelId, sSlotMachine->reelSpeed); + reelPixelPos = AdvanceSlotReelToNextSymbol(task->tReelId, sSlotMachine->reelSpeed); else if (sSlotMachine->reelExtraTurns[task->tReelId]) { sSlotMachine->reelExtraTurns[task->tReelId]--; AdvanceSlotReel(task->tReelId, sSlotMachine->reelSpeed); - reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % TAG_HEIGHT; + reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % REEL_SYMBOL_HEIGHT; } if (reelPixelPos == 0 && sSlotMachine->reelExtraTurns[task->tReelId] == 0) @@ -2334,7 +2345,7 @@ static bool8 ReelTask_MoveToStop(struct Task *task) return FALSE; } -// The reel shakes a little at the selected tag before settling. +// The reel shakes a little at the selected symbol before settling. static bool8 ReelTask_ShakingStop(struct Task *task) { sSlotMachine->reelShockOffsets[task->tReelId] = task->tShockMagnitude; @@ -2358,29 +2369,30 @@ static bool8 ReelTask_ShakingStop(struct Task *task) #undef tMoving #undef tReelId -// We pass along two tags to bias toward. If the machine is biased toward 7's, -// we pass both the 7 tags. Otherwise, we just pass the bias tag twice. +// We pass along two symbols to bias toward. If the machine is biased toward +// 7's, we pass both the 7 symbols. Otherwise, we just pass the bias symbol +// twice. static bool8 DecideStop_Bias_Reel1(void) { - u8 tag2 = GetBiasTag(sSlotMachine->machineBias); - u8 tag1 = tag2; + u8 sym2 = GetBiasSymbol(sSlotMachine->machineBias); + u8 sym1 = sym2; if (sSlotMachine->machineBias & (BIAS_STRAIGHT_7 | BIAS_MIXED_7)) { - tag1 = GFXTAG_7_RED; - tag2 = GFXTAG_7_BLUE; + sym1 = SYMBOL_7_RED; + sym2 = SYMBOL_7_BLUE; } - return sDecideStop_Bias_Reel1_Bets[sSlotMachine->bet - 1](tag1, tag2); + return sDecideStop_Bias_Reel1_Bets[sSlotMachine->bet - 1](sym1, sym2); } -// The biasTag for subsequent reels is determined based on which of the bias -// tags can be found in reel 1. This really only matters when the machine is +// The biasSymbol for subsequent reels is determined based on which of the bias +// symbols can be found in reel 1. This really only matters when the machine is // biased toward 7's. It will try to match a 7 of the same color as reel 1. -static bool8 EitherTagAtPos_Reel1(s16 pos, u8 tag1, u8 tag2) +static bool8 EitherSymbolAtPos_Reel1(s16 pos, u8 sym1, u8 sym2) { - u8 tag = GetTag(LEFT_REEL, pos); - if (tag == tag1 || tag == tag2) + u8 sym = GetSymbol(LEFT_REEL, pos); + if (sym == sym1 || sym == sym2) { - sSlotMachine->biasTag = tag; + sSlotMachine->biasSymbol = sym; return TRUE; } return FALSE; @@ -2390,9 +2402,9 @@ static bool8 EitherTagAtPos_Reel1(s16 pos, u8 tag1, u8 tag2) // of turns. static bool8 AreCherriesOnScreen_Reel1(s16 turns) { - if (GetTag(LEFT_REEL, 1 - turns) == GFXTAG_CHERRY - || GetTag(LEFT_REEL, 2 - turns) == GFXTAG_CHERRY - || GetTag(LEFT_REEL, 3 - turns) == GFXTAG_CHERRY) + if (GetSymbol(LEFT_REEL, 1 - turns) == SYMBOL_CHERRY + || GetSymbol(LEFT_REEL, 2 - turns) == SYMBOL_CHERRY + || GetSymbol(LEFT_REEL, 3 - turns) == SYMBOL_CHERRY) return TRUE; else return FALSE; @@ -2406,15 +2418,15 @@ static bool8 BiasedTowardCherryOr7s(void) return FALSE; } -// If a biased tag appears in the center of reel 1 within the next 4 turns, stop -// there. That tag becomes the biasTag for the subsequent reels. -static bool8 DecideStop_Bias_Reel1_Bet1(u8 tag1, u8 tag2) +// If a bias symbol appears in the center of reel 1 within the next 4 turns, +// stop there. That symbol becomes the biasSymbol for the subsequent reels. +static bool8 DecideStop_Bias_Reel1_Bet1(u8 sym1, u8 sym2) { s16 i; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (EitherTagAtPos_Reel1(2 - i, tag1, tag2)) + if (EitherSymbolAtPos_Reel1(2 - i, sym1, sym2)) { sSlotMachine->winnerRows[LEFT_REEL] = 2; sSlotMachine->reelExtraTurns[LEFT_REEL] = i; @@ -2435,19 +2447,19 @@ static bool8 DecideStop_Bias_Reel1_Bet1(u8 tag1, u8 tag2) // - If it enters on the 4th turn, stop here. It will be in the top row. // // Other bias: -// - This is very similar, except the game is checking for the bias tag rather -// than cherries / 7s. +// - This is very similar, except the game is checking for the bias symbol +// rather than cherries / 7s. // // However, the game adds an additional constraint: it will not stop if there // will be any cherries on screen. Presumably, this ensures that you will not -// get any matches if you fail to line up the bias tag in the remaining +// get any matches if you fail to line up the bias symbol in the remaining // reels. // // This is programmed in such a way that it excludes more options than -// necessary. If there are cherries in the two positions below the bias tag, +// necessary. If there are cherries in the two positions below the bias symbol, // it will skip over this option, even if those cherries would not have ended // up on screen. -static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 tag1, u8 tag2) +static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 sym1, u8 sym2) { s16 i; bool8 cherry7Bias = BiasedTowardCherryOr7s(); @@ -2456,7 +2468,7 @@ static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 tag1, u8 tag2) // Check the current screen for (i = 1; i <= 3; i++) { - if (EitherTagAtPos_Reel1(i, tag1, tag2)) + if (EitherSymbolAtPos_Reel1(i, sym1, sym2)) { sSlotMachine->winnerRows[0] = i; sSlotMachine->reelExtraTurns[0] = 0; @@ -2471,7 +2483,7 @@ static bool8 DecideStop_Bias_Reel1_Bet2or3(u8 tag1, u8 tag2) bool8 cherry7BiasCopy = cherry7Bias; // redundant if (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(i)) { - if (EitherTagAtPos_Reel1(1 - i, tag1, tag2)) + if (EitherSymbolAtPos_Reel1(1 - i, sym1, sym2)) { if (i == 1 && (cherry7BiasCopy || !AreCherriesOnScreen_Reel1(3))) { @@ -2499,8 +2511,8 @@ static bool8 DecideStop_Bias_Reel2(void) return sDecideStop_Bias_Reel2_Bets[sSlotMachine->bet - 1](); } -// Turn at most 4 extra turns to try to line up the bias tag in the same row as -// reel 1. +// Turn at most 4 extra turns to try to line up the bias symbol in the same row +// as reel 1. static bool8 DecideStop_Bias_Reel2_Bet1or2(void) { s16 i; @@ -2508,7 +2520,7 @@ static bool8 DecideStop_Bias_Reel2_Bet1or2(void) for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (GetTag(MIDDLE_REEL, reel1BiasRow - i) == sSlotMachine->biasTag) + if (GetSymbol(MIDDLE_REEL, reel1BiasRow - i) == sSlotMachine->biasSymbol) { sSlotMachine->winnerRows[1] = reel1BiasRow; sSlotMachine->reelExtraTurns[1] = i; @@ -2518,32 +2530,33 @@ static bool8 DecideStop_Bias_Reel2_Bet1or2(void) return FALSE; } -// Checks whether it can match the bias tag diagonally, and sometimes skews +// Checks whether it can match the bias symbol diagonally, and sometimes skews // toward this type of match rather than a match straight across. // -// The behavior is different depending on where the bias tag landed in reel 1: +// The behavior is different depending on where the bias symbol landed in +// reel 1: // // Landed in middle row: -// A diagonal match is impossible. Just try to match the bias tag in the +// A diagonal match is impossible. Just try to match the bias symbol in the // middle row of reel 2 within 4 turns. // // Landed in top/bottom row: -// - If it would take 2 or 3 turns to get the bias tag into the same row as +// - If it would take 2 or 3 turns to get the bias symbol into the same row as // reel 1, force a diagonal match by stopping it in the middle row instead. -// - Check if the bias tag is already in the same row as reel 1, or if it takes -// 1 or 4 turns to get it there. If so, stop when it reaches that row. -// - Otherwise, check if the bias tag is already in the middle row of reel 2. -// If so, stop here. +// - Check if the bias symbol is already in the same row as reel 1, or if it +// takes 1 or 4 turns to get it there. If so, stop when it reaches that row. +// - Otherwise, check if the bias symbol is already in the middle row of +// reel 2. If so, stop here. // // So in how many more cases would betting 3 coins let you win compared to // betting 2? -// Not many. Most of the time, the game would have matched the tag in the same -// row as reel 1 if you had bet 2 coins. Betting 3 effectively adds coverage -// for only two additional cases: -// - Bias tag is in top row of reel 1 and bias tag is currently in middle row -// of reel 2. -// - Bias tag is in bottom row of reel 1 and bias tag could get to the middle -// row of reel 2 in 4 turns. +// Not many. Most of the time, the game would have matched the symbol in the +// same row as reel 1 if you had bet 2 coins. Betting 3 effectively adds +// coverage for only two additional cases: +// - Bias symbol is in top row of reel 1 and bias symbol is currently in +// middle row of reel 2. +// - Bias symbol is in bottom row of reel 1 and bias symbol could get to the +// middle row of reel 2 in 4 turns. // // Assuming this is the implementation Game Freak intended, the game effectively // turns straight matches into diagonal matches with 2/5 probability. @@ -2553,18 +2566,19 @@ static bool8 DecideStop_Bias_Reel2_Bet1or2(void) static bool8 DecideStop_Bias_Reel2_Bet3(void) { s16 i; - // If you can line up the bias tag in the same row as reel 1 within 4 turns + // If you can line up the bias symbol in the same row as reel 1 within 4 + // turns if (DecideStop_Bias_Reel2_Bet1or2()) { - // If bias tag is not in the middle row of reel 1 and it takes either + // If bias symbol is not in the middle row of reel 1 and it takes either // 2 or 3 turns to get it in the same row for reel 2 if (sSlotMachine->winnerRows[0] != 2 && sSlotMachine->reelExtraTurns[1] > 1 && sSlotMachine->reelExtraTurns[1] != 4) { - // Try turning this into a diagonal match by lining up the bias tag - // in the middle row of reel 2 within 4 turns. + // Try turning this into a diagonal match by lining up the bias + // symbol in the middle row of reel 2 within 4 turns. for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) + if (GetSymbol(MIDDLE_REEL, 2 - i) == sSlotMachine->biasSymbol) { sSlotMachine->winnerRows[1] = 2; sSlotMachine->reelExtraTurns[1] = i; @@ -2575,15 +2589,15 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) return TRUE; } - // If you can't line up the bias tag in the same row in 4 turns, and the - // bias tag is not in the middle row of reel 1 + // If you can't line up the bias symbol in the same row in 4 turns, and the + // bias symbol is not in the middle row of reel 1 if (sSlotMachine->winnerRows[0] != 2) { - // Try to match the bias tag in middle row of reel 2 within 4 turns. + // Try to match the bias symbol in middle row of reel 2 within 4 turns. // Adds coverage for the two cases mentioned above. for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (GetTag(MIDDLE_REEL, 2 - i) == sSlotMachine->biasTag) + if (GetSymbol(MIDDLE_REEL, 2 - i) == sSlotMachine->biasSymbol) { sSlotMachine->winnerRows[1] = 2; sSlotMachine->reelExtraTurns[1] = i; @@ -2594,32 +2608,32 @@ static bool8 DecideStop_Bias_Reel2_Bet3(void) return FALSE; } -// If the machine is biased toward mixed 7's, swap the color of the bias tag +// If the machine is biased toward mixed 7's, swap the color of the bias symbol // from red 7 to blue 7, or vice versa. static bool8 DecideStop_Bias_Reel3(void) { - u8 biasTag = sSlotMachine->biasTag; + u8 biasSymbol = sSlotMachine->biasSymbol; if (sSlotMachine->machineBias & BIAS_MIXED_7) { - biasTag = GFXTAG_7_RED; - if (sSlotMachine->biasTag == GFXTAG_7_RED) + biasSymbol = SYMBOL_7_RED; + if (sSlotMachine->biasSymbol == SYMBOL_7_RED) { - biasTag = GFXTAG_7_BLUE; + biasSymbol = SYMBOL_7_BLUE; } } - return sDecideStop_Bias_Reel3_Bets[sSlotMachine->bet - 1](biasTag); + return sDecideStop_Bias_Reel3_Bets[sSlotMachine->bet - 1](biasSymbol); } -// Turn at most 4 extra turns to try to line up the bias tag in the same row as -// reel 2. -static bool8 DecideStop_Bias_Reel3_Bet1or2(u8 biasTag) +// Turn at most 4 extra turns to try to line up the bias symbol in the same +// row as reel 2. +static bool8 DecideStop_Bias_Reel3_Bet1or2(u8 biasSymbol) { s16 i; s16 reel2BiasRow = sSlotMachine->winnerRows[1]; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (GetTag(RIGHT_REEL, reel2BiasRow - i) == biasTag) + if (GetSymbol(RIGHT_REEL, reel2BiasRow - i) == biasSymbol) { sSlotMachine->winnerRows[2] = reel2BiasRow; sSlotMachine->reelExtraTurns[2] = i; @@ -2629,26 +2643,26 @@ static bool8 DecideStop_Bias_Reel3_Bet1or2(u8 biasTag) return FALSE; } -// Try to complete a match in reel 3 by lining up a bias tag with the bias tags -// from the first two reels. -static bool8 DecideStop_Bias_Reel3_Bet3(u8 biasTag) +// Try to complete a match in reel 3 by lining up a bias symbol with the bias +// symbols from the first two reels. +static bool8 DecideStop_Bias_Reel3_Bet3(u8 biasSymbol) { s16 i; s16 biasRow; - // First two bias tags in the same row. Try to line up bias tag in same the - // row here too + // First two bias symbols in the same row. Try to line up bias symbol in + // same the row here too if (sSlotMachine->winnerRows[0] == sSlotMachine->winnerRows[1]) - return DecideStop_Bias_Reel3_Bet1or2(biasTag); + return DecideStop_Bias_Reel3_Bet1or2(biasSymbol); - // Otherwise, try to line up the bias tag diagonally + // Otherwise, try to line up the bias symbol diagonally if (sSlotMachine->winnerRows[0] == 1) biasRow = 3; else biasRow = 1; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (GetTag(RIGHT_REEL, biasRow - i) == biasTag) + if (GetSymbol(RIGHT_REEL, biasRow - i) == biasSymbol) { sSlotMachine->reelExtraTurns[2] = i; sSlotMachine->winnerRows[2] = biasRow; @@ -2671,18 +2685,18 @@ static void DecideStop_NoBias_Reel1(void) sSlotMachine->reelExtraTurns[0] = i; } -// If the bias tag is one of the 7's, switch to the opposite color and return +// If the bias symbol is one of the 7's, switch to the opposite color and return // true. Otherwise, return false. -static bool8 IfTag7_SwitchColor(u8 *tag) +static bool8 IfSymbol7_SwitchColor(u8 *symbol) { - if (*tag == GFXTAG_7_RED) + if (*symbol == SYMBOL_7_RED) { - *tag = GFXTAG_7_BLUE; + *symbol = SYMBOL_7_BLUE; return TRUE; } - if (*tag == GFXTAG_7_BLUE) + if (*symbol == SYMBOL_7_BLUE) { - *tag = GFXTAG_7_RED; + *symbol = SYMBOL_7_RED; return TRUE; } return FALSE; @@ -2718,13 +2732,13 @@ static void DecideStop_NoBias_Reel2_Bet1(void) // Note here and in other NoBias functions, reelExtraTurns is 0 if it // corresponds to a previous reel. That reel has already stopped and any // extra turns were applied. - u8 reel1MiddleTag = GetTag(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); - if (IfTag7_SwitchColor(&reel1MiddleTag)) + u8 reel1MiddleSym = GetSymbol(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); + if (IfSymbol7_SwitchColor(&reel1MiddleSym)) { s16 i; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (reel1MiddleTag == GetTag(MIDDLE_REEL, 2 - i)) + if (reel1MiddleSym == GetSymbol(MIDDLE_REEL, 2 - i)) { sSlotMachine->winnerRows[1] = 2; sSlotMachine->reelExtraTurns[1] = i; @@ -2749,13 +2763,13 @@ static void DecideStop_NoBias_Reel2_Bet2(void) { if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - u8 reel1BiasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - if (IfTag7_SwitchColor(&reel1BiasTag)) + u8 reel1BiasSym = GetSymbol(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + if (IfSymbol7_SwitchColor(&reel1BiasSym)) { s16 i; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - i)) + if (reel1BiasSym == GetSymbol(MIDDLE_REEL, sSlotMachine->winnerRows[0] - i)) { sSlotMachine->winnerRows[1] = sSlotMachine->winnerRows[0]; sSlotMachine->reelExtraTurns[1] = i; @@ -2812,7 +2826,7 @@ static void DecideStop_NoBias_Reel2_Bet3(void) { s16 i; s16 j; - u8 reel1BiasTag; + u8 reel1BiasSym; if (sSlotMachine->winnerRows[0] != 0 && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { @@ -2823,8 +2837,8 @@ static void DecideStop_NoBias_Reel2_Bet3(void) return; } - reel1BiasTag = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - if (IfTag7_SwitchColor(&reel1BiasTag)) + reel1BiasSym = GetSymbol(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + if (IfSymbol7_SwitchColor(&reel1BiasSym)) { // Check current screen to see if there is already an opposite-color // 7 lined up for a match. @@ -2833,7 +2847,7 @@ static void DecideStop_NoBias_Reel2_Bet3(void) j = 3; for (i = 0; i < 2; i++, j--) { - if (reel1BiasTag == GetTag(MIDDLE_REEL, j)) + if (reel1BiasSym == GetSymbol(MIDDLE_REEL, j)) { sSlotMachine->winnerRows[1] = j; sSlotMachine->reelExtraTurns[1] = 0; @@ -2845,7 +2859,7 @@ static void DecideStop_NoBias_Reel2_Bet3(void) // over the next 4 turns for (j = 1; j <= MAX_EXTRA_TURNS; j++) { - if (reel1BiasTag == GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[0] - j)) + if (reel1BiasSym == GetSymbol(MIDDLE_REEL, sSlotMachine->winnerRows[0] - j)) { // If 7 appeared in top row of reel 1 if (sSlotMachine->winnerRows[0] == 1) @@ -2882,41 +2896,41 @@ static void DecideStop_NoBias_Reel2_Bet3(void) } } -// Returns true if the reel 1 and reel 2 tags are opposite-color 7's. +// Returns true if the reel 1 and reel 2 symbols are opposite-color 7's. // // Note that if true, this does not constitue a MATCH_MIXED_7, as the first two // reels are not the same color. -static bool8 MismatchedTags_77(u8 tag1, u8 tag2) +static bool8 MismatchedSyms_77(u8 sym1, u8 sym2) { - if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE) || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED)) + if ((sym1 == SYMBOL_7_RED && sym2 == SYMBOL_7_BLUE) || (sym1 == SYMBOL_7_BLUE && sym2 == SYMBOL_7_RED)) return TRUE; else return FALSE; } -// Returns true if the reel 1, reel 2 and reel 3 tags form a 7 mismatch, i.e. -// {7R, 7B, 7R} or {7B, 7R, 7B}. -static bool8 MismatchedTags_777(u8 tag1, u8 tag2, u8 tag3) +// Returns true if the reel 1, reel 2 and reel 3 symbolss form a 7 mismatch, +// i.e. {7R, 7B, 7R} or {7B, 7R, 7B}. +static bool8 MismatchedSyms_777(u8 sym1, u8 sym2, u8 sym3) { - if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) || - (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE)) + if ((sym1 == SYMBOL_7_RED && sym2 == SYMBOL_7_BLUE && sym3 == SYMBOL_7_RED) || + (sym1 == SYMBOL_7_BLUE && sym2 == SYMBOL_7_RED && sym3 == SYMBOL_7_BLUE)) return TRUE; else return FALSE; } // Returns false if either: -// - The tags form a match (including MATCH_MIXED_7) -// - Or, the tags form a 7 mismatch (i.e., {7R, 7B, 7R} or {7B, 7R, 7B}) +// - The symbols form a match (including MATCH_MIXED_7) +// - Or, the symbols form a 7 mismatch (i.e., {7R, 7B, 7R} or {7B, 7R, 7B}) // // Note, this does not account for cherry matches. -static bool8 NeitherMatchNor7Mismatch(u8 tag1, u8 tag2, u8 tag3) +static bool8 NeitherMatchNor7Mismatch(u8 sym1, u8 sym2, u8 sym3) { - if ((tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) - || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) - || (tag1 == GFXTAG_7_RED && tag2 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) - || (tag1 == GFXTAG_7_BLUE && tag2 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED) - || (tag1 == tag2 && tag1 == tag3)) + if ((sym1 == SYMBOL_7_RED && sym2 == SYMBOL_7_BLUE && sym3 == SYMBOL_7_RED) + || (sym1 == SYMBOL_7_BLUE && sym2 == SYMBOL_7_RED && sym3 == SYMBOL_7_BLUE) + || (sym1 == SYMBOL_7_RED && sym2 == SYMBOL_7_RED && sym3 == SYMBOL_7_BLUE) + || (sym1 == SYMBOL_7_BLUE && sym2 == SYMBOL_7_BLUE && sym3 == SYMBOL_7_RED) + || (sym1 == sym2 && sym1 == sym3)) { return FALSE; } @@ -2933,38 +2947,38 @@ static void DecideStop_NoBias_Reel3(void) // Spin until there is no match in reel 3. Additionally, if the player failed a // straight 7 bias, try to taunt them with a 7 mismatch. // -// The way this plays out depends on the first two matched tags. +// The way this plays out depends on the first two matched symbols. // -// If first two tags are the same: -// Spin until you get a tag that won't complete a match. +// If first two symbols are the same: +// Spin until you get a symbol that won't complete a match. // -// Otherwise, if the first two tags are opposite-color 7's: +// Otherwise, if the first two symbols are opposite-color 7's: // - If the machine is biased toward straight 7's, then the player must have // failed with this bias. The machine tries to taunt the player by turning // up to 4 turns to complete a 7 mismatch (i.e., {7R, 7B, 7R} or // {7B, 7R, 7B}). -// - Otherwise, spin until you get a tag that won't complete a match. +// - Otherwise, spin until you get a symbol that won't complete a match. static void DecideStop_NoBias_Reel3_Bet1(void) { s16 i = 0; - u8 tag1 = GetTag(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); - u8 tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); + u8 sym1 = GetSymbol(LEFT_REEL, 2 - sSlotMachine->reelExtraTurns[0]); + u8 sym2 = GetSymbol(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); - // If first two tags match, spin until you get a non-matching tag - if (tag1 == tag2) + // If first two symbols match, spin until you get a non-matching symbol + if (sym1 == sym2) { while (TRUE) { - u8 tag3; - if (!((tag1 == (tag3 = GetTag(RIGHT_REEL, 2 - i))) - || (tag1 == GFXTAG_7_RED && tag3 == GFXTAG_7_BLUE) - || (tag1 == GFXTAG_7_BLUE && tag3 == GFXTAG_7_RED))) + u8 sym3; + if (!((sym1 == (sym3 = GetSymbol(RIGHT_REEL, 2 - i))) + || (sym1 == SYMBOL_7_RED && sym3 == SYMBOL_7_BLUE) + || (sym1 == SYMBOL_7_BLUE && sym3 == SYMBOL_7_RED))) break; i++; } } - // First two tags are opposite-color 7's - else if (MismatchedTags_77(tag1, tag2)) + // First two symbols are opposite-color 7's + else if (MismatchedSyms_77(sym1, sym2)) { // If biased toward straight 7's, try to complete the 7 mismatch in 4 // turns @@ -2972,7 +2986,7 @@ static void DecideStop_NoBias_Reel3_Bet1(void) { for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - if (tag1 == GetTag(RIGHT_REEL, 2 - i)) + if (sym1 == GetSymbol(RIGHT_REEL, 2 - i)) { sSlotMachine->reelExtraTurns[2] = i; return; @@ -2980,11 +2994,11 @@ static void DecideStop_NoBias_Reel3_Bet1(void) } } - // Otherwise, just spin until you get a non-matching tag + // Otherwise, just spin until you get a non-matching symbol i = 0; while (TRUE) { - if (tag1 != GetTag(RIGHT_REEL, 2 - i)) + if (sym1 != GetSymbol(RIGHT_REEL, 2 - i)) break; i++; } @@ -2995,9 +3009,9 @@ static void DecideStop_NoBias_Reel3_Bet1(void) // Spin until there is no match in reel 3. Additionally, if the player failed a // straight 7 bias, try to taunt them with a 7 mismatch. // -// There are up to two stages, depending on the first two matched tags: +// There are up to two stages, depending on the first two matched symbols: // -// 1. [Optional] If first two tags are opposite-color 7's in the same row and +// 1. [Optional] If first two symbols are opposite-color 7's in the same row and // the machine is biased toward straight 7's: // Check if a 7 with the same color as reel 1 appears in the same row // within 4 turns. If so, initially advance to that position. @@ -3013,28 +3027,28 @@ static void DecideStop_NoBias_Reel3_Bet2(void) { s16 extraTurns = 0; s16 i; - u8 tag1; - u8 tag2; - u8 tag3; + u8 sym1; + u8 sym2; + u8 sym3; // Effectively, if you lined up two 7's in the same row if (sSlotMachine->winnerRows[1] != 0 && sSlotMachine->winnerRows[0] == sSlotMachine->winnerRows[1] && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - tag1 = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - tag2 = GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); + sym1 = GetSymbol(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + sym2 = GetSymbol(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); // If the first two 7's are opposite colors, see if you can line up a 7 // mismatch in the same row. If so, advance initially to that position. // More turns may be added further below. - if (MismatchedTags_77(tag1, tag2)) + if (MismatchedSyms_77(sym1, sym2)) { // Iterate over the next 4 turns for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - tag3 = GetTag(RIGHT_REEL, sSlotMachine->winnerRows[1] - i); - if (tag1 == tag3) + sym3 = GetSymbol(RIGHT_REEL, sSlotMachine->winnerRows[1] - i); + if (sym1 == sym3) { extraTurns = i; break; @@ -3049,16 +3063,16 @@ static void DecideStop_NoBias_Reel3_Bet2(void) // Iterate over the rows of the screen after `extraTurns` turns for (i = 1, numMatches = 0; i <= 3; i++) { - tag1 = GetTag(LEFT_REEL, i - sSlotMachine->reelExtraTurns[0]); - tag2 = GetTag(MIDDLE_REEL, i - sSlotMachine->reelExtraTurns[1]); - tag3 = GetTag(RIGHT_REEL, i - extraTurns); + sym1 = GetSymbol(LEFT_REEL, i - sSlotMachine->reelExtraTurns[0]); + sym2 = GetSymbol(MIDDLE_REEL, i - sSlotMachine->reelExtraTurns[1]); + sym3 = GetSymbol(RIGHT_REEL, i - extraTurns); // This boils down to: // If there's a match on screen, keep spinning. Otherwise, if // there's a 7 mismatch on screen, keep spinning if the machine // isn't biased toward straight 7's. - if (!NeitherMatchNor7Mismatch(tag1, tag2, tag3) && - !(MismatchedTags_777(tag1, tag2, tag3) && (sSlotMachine->machineBias & BIAS_STRAIGHT_7))) + if (!NeitherMatchNor7Mismatch(sym1, sym2, sym3) && + !(MismatchedSyms_777(sym1, sym2, sym3) && (sSlotMachine->machineBias & BIAS_STRAIGHT_7))) { numMatches++; break; @@ -3105,9 +3119,9 @@ static void DecideStop_NoBias_Reel3_Bet2(void) // occurring straight across. static void DecideStop_NoBias_Reel3_Bet3(void) { - u8 tag1; - u8 tag2; - u8 tag3; + u8 sym1; + u8 sym2; + u8 sym3; s16 row; s16 i; @@ -3121,21 +3135,21 @@ static void DecideStop_NoBias_Reel3_Bet3(void) sSlotMachine->winnerRows[0] != sSlotMachine->winnerRows[1] && sSlotMachine->machineBias & BIAS_STRAIGHT_7) { - tag1 = GetTag(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); - tag2 = GetTag(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); + sym1 = GetSymbol(LEFT_REEL, sSlotMachine->winnerRows[0] - sSlotMachine->reelExtraTurns[0]); + sym2 = GetSymbol(MIDDLE_REEL, sSlotMachine->winnerRows[1] - sSlotMachine->reelExtraTurns[1]); // If the first two 7's are opposite colors, try advancing up to 4 // additional turns to line up a diagonal 7 mismatch. More turns may be // added further below. - if (MismatchedTags_77(tag1, tag2)) + if (MismatchedSyms_77(sym1, sym2)) { row = 1; if (sSlotMachine->winnerRows[0] == 1) row = 3; for (i = 0; i <= MAX_EXTRA_TURNS; i++) { - tag3 = GetTag(RIGHT_REEL, row - (sSlotMachine->reelExtraTurns[2] + i)); - if (tag1 == tag3) + sym3 = GetSymbol(RIGHT_REEL, row - (sSlotMachine->reelExtraTurns[2] + i)); + if (sym1 == sym3) { sSlotMachine->reelExtraTurns[2] += i; break; @@ -3147,11 +3161,11 @@ static void DecideStop_NoBias_Reel3_Bet3(void) while (TRUE) { // Check NWSE diagonal - tag1 = GetTag(LEFT_REEL, 1 - sSlotMachine->reelExtraTurns[0]); - tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); - tag3 = GetTag(RIGHT_REEL, 3 - sSlotMachine->reelExtraTurns[2]); - if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) - || (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) + sym1 = GetSymbol(LEFT_REEL, 1 - sSlotMachine->reelExtraTurns[0]); + sym2 = GetSymbol(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); + sym3 = GetSymbol(RIGHT_REEL, 3 - sSlotMachine->reelExtraTurns[2]); + if (NeitherMatchNor7Mismatch(sym1, sym2, sym3) + || (MismatchedSyms_777(sym1, sym2, sym3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } @@ -3159,11 +3173,11 @@ static void DecideStop_NoBias_Reel3_Bet3(void) while (TRUE) { // Check NESW diagonal - tag1 = GetTag(LEFT_REEL, 3 - sSlotMachine->reelExtraTurns[0]); - tag2 = GetTag(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); - tag3 = GetTag(RIGHT_REEL, 1 - sSlotMachine->reelExtraTurns[2]); - if (NeitherMatchNor7Mismatch(tag1, tag2, tag3) - || (MismatchedTags_777(tag1, tag2, tag3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) + sym1 = GetSymbol(LEFT_REEL, 3 - sSlotMachine->reelExtraTurns[0]); + sym2 = GetSymbol(MIDDLE_REEL, 2 - sSlotMachine->reelExtraTurns[1]); + sym3 = GetSymbol(RIGHT_REEL, 1 - sSlotMachine->reelExtraTurns[2]); + if (NeitherMatchNor7Mismatch(sym1, sym2, sym3) + || (MismatchedSyms_777(sym1, sym2, sym3) && sSlotMachine->machineBias & BIAS_STRAIGHT_7)) break; sSlotMachine->reelExtraTurns[2]++; } @@ -3678,16 +3692,16 @@ static void ReelTime_LandOnOutcome(struct Task *task) s16 reeltimePixelOffset = sSlotMachine->reeltimePixelOffset % 20; if (reeltimePixelOffset) { - reeltimePixelOffset = AdvanceReeltimeReelToNextTag(task->tRtReelSpeed >> 8); + reeltimePixelOffset = AdvanceReeltimeReelToNextSymbol(task->tRtReelSpeed >> 8); task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x40; } - else if (GetReelTimeTag(1) != sSlotMachine->reelTimeDraw) + else if (GetReelTimeSymbol(1) != sSlotMachine->reelTimeDraw) { AdvanceReeltimeReel(task->tRtReelSpeed >> 8); reeltimePixelOffset = sSlotMachine->reeltimePixelOffset % 20; task->tRtReelSpeed = (u8)task->tRtReelSpeed + 0x40; } - if (reeltimePixelOffset == 0 && GetReelTimeTag(1) == sSlotMachine->reelTimeDraw) + if (reeltimePixelOffset == 0 && GetReelTimeSymbol(1) == sSlotMachine->reelTimeDraw) { task->tRtReelSpeed = 0; // Also initializes task->tTimer2 task->tState++; // RT_TASK_PIKA_REACT @@ -3779,7 +3793,7 @@ static void ReelTime_SetReelSpeed(struct Task *task) { if (sSlotMachine->reelSpeed == task->tReelSpeed) task->tState++; // RT_TASK_END_SUCCESS - else if (sSlotMachine->reelPixelOffsets[0] % TAG_HEIGHT == 0 && (++task->tTimer3 & 0x07) == 0) + else if (sSlotMachine->reelPixelOffsets[0] % REEL_SYMBOL_HEIGHT == 0 && (++task->tTimer3 & 0x07) == 0) sSlotMachine->reelSpeed >>= 1; } @@ -4084,7 +4098,7 @@ static void SpriteCB_ReelSymbol(struct Sprite *sprite) sprite->data[2] = sSlotMachine->reelPixelOffsets[sprite->data[0]] + sprite->data[1]; sprite->data[2] %= 120; sprite->y = sSlotMachine->reelShockOffsets[sprite->data[0]] + 28 + sprite->data[2]; - sprite->sheetTileStart = GetSpriteTileStartByTag(GetTagAtRest(sprite->data[0], sprite->data[2] / 24)); + sprite->sheetTileStart = GetSpriteTileStartByTag(GetSymbolAtRest(sprite->data[0], sprite->data[2] / 24)); SetSpriteSheetFrameTileNum(sprite); } @@ -4255,7 +4269,7 @@ static void SpriteCB_ReelTimeNumbers(struct Sprite *sprite) s16 r0 = (u16)(sSlotMachine->reeltimePixelOffset + sprite->data[7]); r0 %= 40; sprite->y = r0 + 59; - StartSpriteAnimIfDifferent(sprite, GetReelTimeTag(r0 / 20)); + StartSpriteAnimIfDifferent(sprite, GetReelTimeSymbol(r0 / 20)); } static void CreateReelTimeShadowSprites(void) @@ -5202,80 +5216,80 @@ static void AllocDigitalDisplayGfx(void) sImageTable_DigitalDisplay_DPad[1].size = 0x180; } -static const u8 sReelTileTags[NUM_REELS][TAGS_PER_REEL] = +static const u8 sReelSymbols[NUM_REELS][SYBMOLS_PER_REEL] = { [LEFT_REEL] = { - GFXTAG_7_RED, - GFXTAG_CHERRY, - GFXTAG_AZURILL, - GFXTAG_REPLAY, - GFXTAG_POWER, - GFXTAG_LOTAD, - GFXTAG_7_BLUE, - GFXTAG_LOTAD, - GFXTAG_CHERRY, - GFXTAG_POWER, - GFXTAG_REPLAY, - GFXTAG_AZURILL, - GFXTAG_7_RED, - GFXTAG_POWER, - GFXTAG_LOTAD, - GFXTAG_REPLAY, - GFXTAG_AZURILL, - GFXTAG_7_BLUE, - GFXTAG_POWER, - GFXTAG_LOTAD, - GFXTAG_REPLAY + SYMBOL_7_RED, + SYMBOL_CHERRY, + SYMBOL_AZURILL, + SYMBOL_REPLAY, + SYMBOL_POWER, + SYMBOL_LOTAD, + SYMBOL_7_BLUE, + SYMBOL_LOTAD, + SYMBOL_CHERRY, + SYMBOL_POWER, + SYMBOL_REPLAY, + SYMBOL_AZURILL, + SYMBOL_7_RED, + SYMBOL_POWER, + SYMBOL_LOTAD, + SYMBOL_REPLAY, + SYMBOL_AZURILL, + SYMBOL_7_BLUE, + SYMBOL_POWER, + SYMBOL_LOTAD, + SYMBOL_REPLAY }, [MIDDLE_REEL] = { - GFXTAG_7_RED, - GFXTAG_CHERRY, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_AZURILL, - GFXTAG_CHERRY, - GFXTAG_REPLAY, - GFXTAG_POWER, - GFXTAG_POWER, - GFXTAG_LOTAD, - GFXTAG_7_BLUE, - GFXTAG_LOTAD, - GFXTAG_REPLAY, - GFXTAG_CHERRY, - GFXTAG_AZURILL, - GFXTAG_LOTAD, - GFXTAG_REPLAY, - GFXTAG_CHERRY, - GFXTAG_LOTAD, - GFXTAG_REPLAY, - GFXTAG_CHERRY + SYMBOL_7_RED, + SYMBOL_CHERRY, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_AZURILL, + SYMBOL_CHERRY, + SYMBOL_REPLAY, + SYMBOL_POWER, + SYMBOL_POWER, + SYMBOL_LOTAD, + SYMBOL_7_BLUE, + SYMBOL_LOTAD, + SYMBOL_REPLAY, + SYMBOL_CHERRY, + SYMBOL_AZURILL, + SYMBOL_LOTAD, + SYMBOL_REPLAY, + SYMBOL_CHERRY, + SYMBOL_LOTAD, + SYMBOL_REPLAY, + SYMBOL_CHERRY }, [RIGHT_REEL] = { - GFXTAG_7_RED, - GFXTAG_POWER, - GFXTAG_7_BLUE, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_AZURILL, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_POWER, - GFXTAG_AZURILL, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_AZURILL, - GFXTAG_POWER, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_AZURILL, - GFXTAG_POWER, - GFXTAG_REPLAY, - GFXTAG_LOTAD, - GFXTAG_CHERRY + SYMBOL_7_RED, + SYMBOL_POWER, + SYMBOL_7_BLUE, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_AZURILL, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_POWER, + SYMBOL_AZURILL, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_AZURILL, + SYMBOL_POWER, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_AZURILL, + SYMBOL_POWER, + SYMBOL_REPLAY, + SYMBOL_LOTAD, + SYMBOL_CHERRY }, }; -static const u8 sReelTimeTags[] = { +static const u8 sReelTimeSymbols[] = { 1, 0, 5, 4, 3, 2 }; @@ -5441,15 +5455,15 @@ static const u16 sQuarterSpeed_ProbabilityBoost[] = { 0, 5, 10, 15, 20 }; -static const u8 sBiasTags[] = { - GFXTAG_REPLAY, // BIAS_REPLAY - GFXTAG_CHERRY, // BIAS_CHERRY - GFXTAG_LOTAD, // BIAS_LOTAD - GFXTAG_AZURILL, // BIAS_AZURILL - GFXTAG_POWER, // BIAS_POWER - GFXTAG_7_RED, // BIAS_REELTIME - GFXTAG_7_RED, // BIAS_MIXED_7 - GFXTAG_7_RED // BIAS_STRAIGHT_7 +static const u8 sBiasSymbols[] = { + SYMBOL_REPLAY, // BIAS_REPLAY + SYMBOL_CHERRY, // BIAS_CHERRY + SYMBOL_LOTAD, // BIAS_LOTAD + SYMBOL_AZURILL, // BIAS_AZURILL + SYMBOL_POWER, // BIAS_POWER + SYMBOL_7_RED, // BIAS_REELTIME + SYMBOL_7_RED, // BIAS_MIXED_7 + SYMBOL_7_RED // BIAS_STRAIGHT_7 }; static const u16 sBiasesSpecial[] = { @@ -5460,14 +5474,14 @@ static const u16 sBiasesRegular[] = { BIAS_POWER, BIAS_AZURILL, BIAS_LOTAD, BIAS_CHERRY, BIAS_REPLAY }; -static const u8 sTagToMatch[] = { - [GFXTAG_7_RED] = MATCH_RED_7, - [GFXTAG_7_BLUE] = MATCH_BLUE_7, - [GFXTAG_AZURILL] = MATCH_AZURILL, - [GFXTAG_LOTAD] = MATCH_LOTAD, - [GFXTAG_CHERRY] = MATCH_CHERRY, - [GFXTAG_POWER] = MATCH_POWER, - [GFXTAG_REPLAY] = MATCH_REPLAY +static const u8 sSymbolToMatch[] = { + [SYMBOL_7_RED] = MATCH_RED_7, + [SYMBOL_7_BLUE] = MATCH_BLUE_7, + [SYMBOL_AZURILL] = MATCH_AZURILL, + [SYMBOL_LOTAD] = MATCH_LOTAD, + [SYMBOL_CHERRY] = MATCH_CHERRY, + [SYMBOL_POWER] = MATCH_POWER, + [SYMBOL_REPLAY] = MATCH_REPLAY }; static const u16 sSlotMatchFlags[] = { From 08bf2587ce99a6731c60fe77fddb53fe748db193 Mon Sep 17 00:00:00 2001 From: hondew Date: Sun, 20 Feb 2022 17:47:24 -0500 Subject: [PATCH 549/762] Fix typos --- src/slot_machine.c | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/slot_machine.c b/src/slot_machine.c index 6935631f8cd4..1dfa026e5f3d 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -31,9 +31,9 @@ #define SLOTMACHINE_GFX_TILES 233 #define MAX_BET 3 -#define SYBMOLS_PER_REEL 21 +#define SYMBOLS_PER_REEL 21 #define REEL_SYMBOL_HEIGHT 24 -#define REEL_HEIGHT (SYBMOLS_PER_REEL * REEL_SYMBOL_HEIGHT) +#define REEL_HEIGHT (SYMBOLS_PER_REEL * REEL_SYMBOL_HEIGHT) #define REELTIME_SYMBOLS 6 #define REELTIME_SYMBOL_HEIGHT 20 @@ -199,7 +199,7 @@ enum { REEL_TASK_SPIN, REEL_TASK_DECIDE_STOP, REEL_TASK_STOP_MOVE, - REEL_ACTION_STOP_SHAKE, + REEL_TASK_STOP_SHAKE, }; enum { @@ -561,7 +561,7 @@ static void LoadReelTimeWindowTilemap(s16, s16); static void ClearReelTimeWindowTilemap(s16); static void OpenInfoBox(u8); static bool8 IsInfoBoxClosed(void); -static void RunInfoBoxActions(u8 ); +static void Task_InfoBox(u8 ); static void InfoBox_FadeIn(struct Task *); static void InfoBox_WaitFade(struct Task *); static void InfoBox_DrawWindow(struct Task *); @@ -712,7 +712,7 @@ static const u8 sReelTimeProbabilities_NormalGame[][17]; static const u8 sReelTimeProbabilities_LuckyGame[][17]; static const u8 sSymbolToMatch[]; static const u8 sReelTimeSymbols[]; -static const u8 sReelSymbols[NUM_REELS][SYBMOLS_PER_REEL]; +static const u8 sReelSymbols[NUM_REELS][SYMBOLS_PER_REEL]; static const u16 *const sLitMatchLinePalTable[NUM_MATCH_LINES]; static const u16 *const sDarkMatchLinePalTable[NUM_MATCH_LINES]; static const u8 sMatchLinePalOffsets[NUM_MATCH_LINES]; @@ -854,7 +854,7 @@ static bool8 (*const sReelTasks[])(struct Task *task) = [REEL_TASK_SPIN] = ReelTask_Spin, [REEL_TASK_DECIDE_STOP] = ReelTask_DecideStop, [REEL_TASK_STOP_MOVE] = ReelTask_MoveToStop, - [REEL_ACTION_STOP_SHAKE] = ReelTask_ShakingStop, + [REEL_TASK_STOP_SHAKE] = ReelTask_ShakingStop, }; // Returns true if it is possible to match the bias symbol in the reel. @@ -992,7 +992,7 @@ static void (*const sInfoBoxTasks[])(struct Task *task) = }; // Just idles, digital display is handled by CreateDigitalDisplayScene and sprite callbacks -static void (*const sDigitalDisplayActions[])(struct Task *task) = +static void (*const sDigitalDisplayTasks[])(struct Task *task) = { DigitalDisplay_Idle, }; @@ -1210,7 +1210,7 @@ static void InitSlotMachine(void) for (i = 0; i < NUM_REELS; i++) { sSlotMachine->reelShockOffsets[i] = 0; - sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % SYBMOLS_PER_REEL; + sSlotMachine->reelPositions[i] = sInitialReelPositions[i][sSlotMachine->luckyGame] % SYMBOLS_PER_REEL; sSlotMachine->reelPixelOffsets[i] = REEL_HEIGHT - sSlotMachine->reelPositions[i] * REEL_SYMBOL_HEIGHT; sSlotMachine->reelPixelOffsets[i] %= REEL_HEIGHT; } @@ -1387,7 +1387,7 @@ static bool8 SlotTask_HandleBetInput(struct Task *task) return FALSE; } -// SLOT_ACTION_NEED_3_COINS +// SLOTTASK_MSG_NEED_3_COINS static bool8 SlotTask_PrintMsg_Need3Coins(struct Task *task) { DrawDialogueFrame(0, 0); @@ -2172,9 +2172,9 @@ static bool8 PayoutTask_Free(struct Task *task) // .-----------------. static u8 GetSymbolAtRest(u8 reel, s16 offset) { - s16 pos = (sSlotMachine->reelPositions[reel] + offset) % SYBMOLS_PER_REEL; + s16 pos = (sSlotMachine->reelPositions[reel] + offset) % SYMBOLS_PER_REEL; if (pos < 0) - pos += SYBMOLS_PER_REEL; + pos += SYMBOLS_PER_REEL; return sReelSymbols[reel][pos]; } @@ -2200,7 +2200,7 @@ static void AdvanceSlotReel(u8 reelIndex, s16 value) { sSlotMachine->reelPixelOffsets[reelIndex] += value; sSlotMachine->reelPixelOffsets[reelIndex] %= REEL_HEIGHT; - sSlotMachine->reelPositions[reelIndex] = SYBMOLS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / REEL_SYMBOL_HEIGHT; + sSlotMachine->reelPositions[reelIndex] = SYMBOLS_PER_REEL - sSlotMachine->reelPixelOffsets[reelIndex] / REEL_SYMBOL_HEIGHT; } // Advances the reel no further than the next symbol. Returns the remaining @@ -2338,7 +2338,7 @@ static bool8 ReelTask_MoveToStop(struct Task *task) if (reelPixelPos == 0 && sSlotMachine->reelExtraTurns[task->tReelId] == 0) { - task->tState++; // REEL_ACTION_STOP_SHAKE + task->tState++; // REEL_TASK_STOP_SHAKE task->tShockMagnitude = reelStopShocks[task->tExtraTurns]; task->tTimer = 0; } @@ -3622,7 +3622,7 @@ static void ReelTime_PikachuSpeedUp1(struct Task *task) SetReelTimeBoltDelay(reelTimeBoltDelays[i]); SetReelTimePikachuAuraFlashDelay(pikachuAuraFlashDelays[i]); StartSpriteAnimIfDifferent(&gSprites[sSlotMachine->reelTimePikachuSpriteId], pikachuAnimIds[i]); - // once speed goes below 256, go to next ReelTimeAction and keep the speed level + // once speed goes below 256, go to next ReelTime task and keep the speed level if (task->tRtReelSpeed <= 0x100) { task->tState++; // RT_TASK_PIKA_SPEEDUP2 @@ -3894,20 +3894,20 @@ static void ClearReelTimeWindowTilemap(s16 a0) // Info Box is the screen shown when Select is pressed static void OpenInfoBox(u8 digDisplayId) { - u8 taskId = CreateTask(RunInfoBoxActions, 1); + u8 taskId = CreateTask(Task_InfoBox, 1); gTasks[taskId].data[1] = digDisplayId; - RunInfoBoxActions(taskId); + Task_InfoBox(taskId); } static bool8 IsInfoBoxClosed(void) { - if (FindTaskIdByFunc(RunInfoBoxActions) == TASK_NONE) + if (FindTaskIdByFunc(Task_InfoBox) == TASK_NONE) return TRUE; else return FALSE; } -static void RunInfoBoxActions(u8 taskId) +static void Task_InfoBox(u8 taskId) { sInfoBoxTasks[gTasks[taskId].tState](&gTasks[taskId]); } @@ -3977,7 +3977,7 @@ static void InfoBox_LoadPikaPowerMeter(struct Task *task) static void InfoBox_FreeTask(struct Task *task) { - DestroyTask(FindTaskIdByFunc(RunInfoBoxActions)); + DestroyTask(FindTaskIdByFunc(Task_InfoBox)); } #undef tState @@ -4068,7 +4068,7 @@ static bool8 IsDigitalDisplayAnimFinished(void) static void Task_DigitalDisplay(u8 taskId) { - sDigitalDisplayActions[gTasks[taskId].data[0]](&gTasks[taskId]); + sDigitalDisplayTasks[gTasks[taskId].data[0]](&gTasks[taskId]); } static void DigitalDisplay_Idle(struct Task *task) @@ -5216,7 +5216,7 @@ static void AllocDigitalDisplayGfx(void) sImageTable_DigitalDisplay_DPad[1].size = 0x180; } -static const u8 sReelSymbols[NUM_REELS][SYBMOLS_PER_REEL] = +static const u8 sReelSymbols[NUM_REELS][SYMBOLS_PER_REEL] = { [LEFT_REEL] = { SYMBOL_7_RED, From 40efac0ddf1b6f89bcebc371e2c46b163abb6a3c Mon Sep 17 00:00:00 2001 From: sphericalice Date: Tue, 22 Feb 2022 19:13:17 +0000 Subject: [PATCH 550/762] Rename GetBattlePyramindTrainerEncounterMusicId to fix typo --- include/battle_pyramid.h | 2 +- src/battle_pyramid.c | 2 +- src/pokemon.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/battle_pyramid.h b/include/battle_pyramid.h index c4a72095f024..62320358b6c4 100644 --- a/include/battle_pyramid.h +++ b/include/battle_pyramid.h @@ -14,7 +14,7 @@ void SoftResetInBattlePyramid(void); void CopyPyramidTrainerSpeechBefore(u16 trainerId); void CopyPyramidTrainerWinSpeech(u16 trainerId); void CopyPyramidTrainerLoseSpeech(u16 trainerId); -u8 GetBattlePyramindTrainerEncounterMusicId(u16 trainerId); +u8 GetTrainerEncounterMusicIdInBattlePyramid(u16 trainerId); void GenerateBattlePyramidFloorLayout(u16 *mapArg, bool8 setPlayerPosition); void LoadBattlePyramidObjectEventTemplates(void); void LoadBattlePyramidFloorObjectEventScripts(void); diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 154760396854..9039f60f2cda 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1465,7 +1465,7 @@ void CopyPyramidTrainerLoseSpeech(u16 trainerId) FrontierSpeechToString(gFacilityTrainers[trainerId].speechLose); } -u8 GetBattlePyramindTrainerEncounterMusicId(u16 trainerId) +u8 GetTrainerEncounterMusicIdInBattlePyramid(u16 trainerId) { int i; diff --git a/src/pokemon.c b/src/pokemon.c index 08a6fd0f90fc..61125e36204d 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5810,7 +5810,7 @@ s32 GetBattlerMultiplayerId(u16 a1) u8 GetTrainerEncounterMusicId(u16 trainerOpponentId) { if (InBattlePyramid()) - return GetBattlePyramindTrainerEncounterMusicId(trainerOpponentId); + return GetTrainerEncounterMusicIdInBattlePyramid(trainerOpponentId); else if (InTrainerHillChallenge()) return GetTrainerEncounterMusicIdInTrainerHill(trainerOpponentId); else From f826a5a82d3563cf30f7acd5270f200119cc6745 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Wed, 23 Feb 2022 15:07:22 +0800 Subject: [PATCH 551/762] Use constants for PC locations --- data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc | 4 ++-- data/maps/LittlerootTown_MaysHouse_2F/scripts.inc | 4 ++-- data/scripts/pc.inc | 4 ++-- src/field_specials.c | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc index 901940ab8ed1..cd4d15519245 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc @@ -243,7 +243,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_PC:: end LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: - setvar VAR_0x8004, 1 + setvar VAR_0x8004, PC_LOCATION_BRENDANS_HOUSE special DoPCTurnOnEffect playse SE_PC_ON msgbox gText_PlayerHouseBootPC, MSGBOX_DEFAULT @@ -253,7 +253,7 @@ LittlerootTown_BrendansHouse_2F_EventScript_CheckPlayersPC:: end LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC:: - setvar VAR_0x8004, 1 + setvar VAR_0x8004, PC_LOCATION_BRENDANS_HOUSE playse SE_PC_OFF special DoPCTurnOffEffect releaseall diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc index 7403f3fcf61a..ef8e83bf7e9e 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc +++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc @@ -294,7 +294,7 @@ LittlerootTown_MaysHouse_2F_EventScript_CheckRivalsPC:: end LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC:: - setvar VAR_0x8004, 2 + setvar VAR_0x8004, PC_LOCATION_MAYS_HOUSE special DoPCTurnOnEffect playse SE_PC_ON msgbox gText_PlayerHouseBootPC, MSGBOX_DEFAULT @@ -304,7 +304,7 @@ LittlerootTown_MaysHouse_2F_EventScript_CheckPlayersPC:: end LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC:: - setvar VAR_0x8004, 2 + setvar VAR_0x8004, PC_LOCATION_MAYS_HOUSE playse SE_PC_OFF special DoPCTurnOffEffect releaseall diff --git a/data/scripts/pc.inc b/data/scripts/pc.inc index 43c0bca0d7a9..1993aaf63f86 100644 --- a/data/scripts/pc.inc +++ b/data/scripts/pc.inc @@ -1,6 +1,6 @@ EventScript_PC:: lockall - setvar VAR_0x8004, 0 + setvar VAR_0x8004, PC_LOCATION_OTHER special DoPCTurnOnEffect playse SE_PC_ON msgbox Text_BootUpPC, MSGBOX_DEFAULT @@ -51,7 +51,7 @@ EventScript_AccessLanettesPC:: return EventScript_TurnOffPC:: - setvar VAR_0x8004, 0 + setvar VAR_0x8004, PC_LOCATION_OTHER playse SE_PC_OFF special DoPCTurnOffEffect releaseall diff --git a/src/field_specials.c b/src/field_specials.c index f749ea8fca37..a4cdafafc266 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1069,11 +1069,11 @@ static void PCTurnOffEffect(void) dy = -1; break; } - if (gSpecialVar_0x8004 == 0) + if (gSpecialVar_0x8004 == PC_LOCATION_OTHER) tileId = METATILE_Building_PC_Off; - else if (gSpecialVar_0x8004 == 1) + else if (gSpecialVar_0x8004 == PC_LOCATION_BRENDANS_HOUSE) tileId = METATILE_BrendansMaysHouse_BrendanPC_Off; - else if (gSpecialVar_0x8004 == 2) + else if (gSpecialVar_0x8004 == PC_LOCATION_MAYS_HOUSE) tileId = METATILE_BrendansMaysHouse_MayPC_Off; MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + dx + MAP_OFFSET, gSaveBlock1Ptr->pos.y + dy + MAP_OFFSET, tileId | MAPGRID_COLLISION_MASK); DrawWholeMapView(); From 36e5d5e759d32e4987ffbbac70f84978e1893d16 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 27 Feb 2022 13:47:50 -0500 Subject: [PATCH 552/762] Add missing menu array counts --- src/main_menu.c | 2 +- src/menu.c | 8 ++++---- src/player_pc.c | 4 ++-- src/secret_base.c | 2 +- src/trade.c | 2 +- src/trader.c | 18 +++++++----------- src/union_room_chat.c | 2 +- 7 files changed, 17 insertions(+), 21 deletions(-) diff --git a/src/main_menu.c b/src/main_menu.c index 54a4f68917ea..ed6158a9cf51 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -2090,7 +2090,7 @@ static void NewGameBirchSpeech_ShowGenderMenu(void) DrawMainMenuWindowBorder(&gNewGameBirchSpeechTextWindows[1], 0xF3); FillWindowPixelBuffer(1, PIXEL_FILL(1)); PrintMenuTable(1, ARRAY_COUNT(sMenuActions_Gender), sMenuActions_Gender); - InitMenuInUpperLeftCornerNormal(1, 2, 0); + InitMenuInUpperLeftCornerNormal(1, ARRAY_COUNT(sMenuActions_Gender), 0); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); } diff --git a/src/menu.c b/src/menu.c index 6b915f9cec68..49baddded570 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1542,25 +1542,25 @@ static s8 Menu_ProcessGridInputRepeat(void) { return MENU_B_PRESSED; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_UP) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_UP) { if (oldPos != ChangeGridMenuCursorPosition(0, -1)) PlaySE(SE_SELECT); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_DOWN) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_DOWN) { if (oldPos != ChangeGridMenuCursorPosition(0, 1)) PlaySE(SE_SELECT); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_LEFT || GetLRKeysPressedAndHeld() == MENU_L_PRESSED) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_LEFT || GetLRKeysPressedAndHeld() == MENU_L_PRESSED) { if (oldPos != ChangeGridMenuCursorPosition(-1, 0)) PlaySE(SE_SELECT); return MENU_NOTHING_CHOSEN; } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_RIGHT || GetLRKeysPressedAndHeld() == MENU_R_PRESSED) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_RIGHT || GetLRKeysPressedAndHeld() == MENU_R_PRESSED) { if (oldPos != ChangeGridMenuCursorPosition(1, 0)) PlaySE(SE_SELECT); diff --git a/src/player_pc.c b/src/player_pc.c index 06f58fdeb454..bf8479ce1155 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -511,7 +511,7 @@ static void InitItemStorageMenu(u8 taskId, u8 var) tWindowId = AddWindow(&windowTemplate); SetStandardWindowBorderStyle(tWindowId, 0); PrintMenuTable(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), sItemStorage_MenuActions); - InitMenuInUpperLeftCornerNormal(tWindowId, 4, var); + InitMenuInUpperLeftCornerNormal(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), var); ScheduleBgCopyTilemapToVram(0); ItemStorageMenuPrint(sItemStorage_OptionDescriptions[var]); } @@ -753,7 +753,7 @@ static void Mailbox_PrintMailOptions(u8 taskId) { u8 windowId = MailboxMenu_AddWindow(MAILBOXWIN_OPTIONS); PrintMenuTable(windowId, ARRAY_COUNT(gMailboxMailOptions), gMailboxMailOptions); - InitMenuInUpperLeftCornerNormal(windowId, 4, 0); + InitMenuInUpperLeftCornerNormal(windowId, ARRAY_COUNT(gMailboxMailOptions), 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Mailbox_MailOptionsProcessInput; } diff --git a/src/secret_base.c b/src/secret_base.c index 9398c4bb2f50..fa424889e07a 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1027,7 +1027,7 @@ static void ShowRegistryMenuActions(u8 taskId) tActionWindowId = AddWindow(&template); SetStandardWindowBorderStyle(tActionWindowId, 0); PrintMenuTable(tActionWindowId, ARRAY_COUNT(sRegistryMenuActions), sRegistryMenuActions); - InitMenuInUpperLeftCornerNormal(tActionWindowId, 2, 0); + InitMenuInUpperLeftCornerNormal(tActionWindowId, ARRAY_COUNT(sRegistryMenuActions), 0); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = HandleRegistryMenuActionsInput; } diff --git a/src/trade.c b/src/trade.c index b48d1abf512b..dd0851bbda0d 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1394,7 +1394,7 @@ static void TradeMenuProcessInput(void) DrawTextBorderOuter(1, 1, 14); FillWindowPixelBuffer(1, PIXEL_FILL(1)); PrintMenuTable(1, ARRAY_COUNT(sSelectTradeMonActions), sSelectTradeMonActions); - InitMenuInUpperLeftCornerNormal(1, 2, 0); + InitMenuInUpperLeftCornerNormal(1, ARRAY_COUNT(sSelectTradeMonActions), 0); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_SELECTED_MON; diff --git a/src/trader.c b/src/trader.c index abe581db31fc..b89ad6043856 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[] = +static const u8 * const sDefaultTraderNames[NUM_TRADER_ITEMS] = { gText_Tristan, gText_Philip, @@ -23,7 +23,7 @@ static const u8 * const sDefaultTraderNames[] = gText_Roberto, }; -static const u8 sDefaultTraderDecorations[] = +static const u8 sDefaultTraderDecorations[NUM_TRADER_ITEMS] = { DECOR_DUSKULL_DOLL, DECOR_BALL_CUSHION, @@ -39,7 +39,7 @@ void TraderSetup(void) trader->id = MAUVILLE_MAN_TRADER; trader->alreadyTraded = FALSE; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_TRADER_ITEMS; i++) { StringCopy(trader->playerNames[i], sDefaultTraderNames[i]); trader->decorations[i] = sDefaultTraderDecorations[i]; @@ -61,7 +61,7 @@ void CreateAvailableDecorationsMenu(u8 taskId) struct WindowTemplate windowTemplate = {0, 1, 1, 10, 10, 15, 1}; s32 windowWidth = GetStringWidth(FONT_NORMAL, gText_Exit, 0); s32 fiveMarksWidth = GetStringWidth(FONT_NORMAL, gText_FiveMarks, 0); - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_TRADER_ITEMS; i++) { s32 curWidth; if (trader->decorations[i] > NUM_DECORATIONS) @@ -74,7 +74,7 @@ void CreateAvailableDecorationsMenu(u8 taskId) windowTemplate.width = ConvertPixelWidthToTileWidth(windowWidth); data[3] = AddWindow(&windowTemplate); DrawStdFrameWithCustomTileAndPalette(data[3], FALSE, 0x214, 14); - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_TRADER_ITEMS; i++) { if (trader->decorations[i] > NUM_DECORATIONS) AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); @@ -82,7 +82,7 @@ void CreateAvailableDecorationsMenu(u8 taskId) AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); } AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); - InitMenuInUpperLeftCornerNormal(data[3], 5, 0); + InitMenuInUpperLeftCornerNormal(data[3], NUM_TRADER_ITEMS + 1, 0); ScheduleBgCopyTilemapToVram(0); } @@ -90,13 +90,9 @@ void Task_BufferDecorSelectionAndCloseWindow(u8 taskId, u8 decorationId) { s16 * data = gTasks[taskId].data; if (decorationId > NUM_DECORATIONS) - { gSpecialVar_0x8004 = 0xFFFF; - } else - { gSpecialVar_0x8004 = decorationId; - } ClearStdWindowAndFrameToTransparent(data[3], FALSE); ClearWindowTilemap(data[3]); @@ -116,7 +112,7 @@ void Task_HandleGetDecorationMenuInput(u8 taskId) case MENU_NOTHING_CHOSEN: break; case MENU_B_PRESSED: - case 4: + case NUM_TRADER_ITEMS: PlaySE(SE_SELECT); Task_BufferDecorSelectionAndCloseWindow(taskId, 0); break; diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 22268ef4ace6..9890bc1f88b1 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2987,7 +2987,7 @@ static void ShowKeyboardSwapMenu(void) { FillWindowPixelBuffer(3, PIXEL_FILL(1)); DrawTextBorderOuter(3, 1, 13); - PrintMenuActionTextsAtPos(3, FONT_SHORT, 8, 1, 14, 5, sKeyboardPageTitleTexts); + PrintMenuActionTextsAtPos(3, FONT_SHORT, 8, 1, 14, ARRAY_COUNT(sKeyboardPageTitleTexts), sKeyboardPageTitleTexts); InitMenuNormal(3, FONT_SHORT, 0, 1, 14, 5, GetCurrentKeyboardPage()); PutWindowTilemap(3); } From 3d0663fe811cdd01010b391b88423f91387f89e1 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 27 Feb 2022 13:58:48 -0500 Subject: [PATCH 553/762] Additional trader clean up --- src/decoration_inventory.c | 2 +- src/trader.c | 34 ++++++++++++++++++++++------------ 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/src/decoration_inventory.c b/src/decoration_inventory.c index af1071b1b1ce..c84ee69a4685 100644 --- a/src/decoration_inventory.c +++ b/src/decoration_inventory.c @@ -33,7 +33,7 @@ static void ClearDecorationInventory(u8 category) void ClearDecorationInventories(void) { u8 category; - for (category = 0; category < 8; category++) + for (category = 0; category < DECORCAT_COUNT; category++) ClearDecorationInventory(category); } diff --git a/src/trader.c b/src/trader.c index b89ad6043856..040ee695b3f4 100644 --- a/src/trader.c +++ b/src/trader.c @@ -53,12 +53,22 @@ void Trader_ResetFlag(void) trader->alreadyTraded = FALSE; } +#define tWindowId data[3] + void CreateAvailableDecorationsMenu(u8 taskId) { u8 i; s16 * data = gTasks[taskId].data; struct MauvilleOldManTrader *trader = &gSaveBlock1Ptr->oldMan.trader; - struct WindowTemplate windowTemplate = {0, 1, 1, 10, 10, 15, 1}; + struct WindowTemplate windowTemplate = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 10, + .height = 10, + .paletteNum = 15, + .baseBlock = 1 + }; s32 windowWidth = GetStringWidth(FONT_NORMAL, gText_Exit, 0); s32 fiveMarksWidth = GetStringWidth(FONT_NORMAL, gText_FiveMarks, 0); for (i = 0; i < NUM_TRADER_ITEMS; i++) @@ -72,17 +82,17 @@ void CreateAvailableDecorationsMenu(u8 taskId) windowWidth = curWidth; } windowTemplate.width = ConvertPixelWidthToTileWidth(windowWidth); - data[3] = AddWindow(&windowTemplate); - DrawStdFrameWithCustomTileAndPalette(data[3], FALSE, 0x214, 14); + tWindowId = AddWindow(&windowTemplate); + DrawStdFrameWithCustomTileAndPalette(tWindowId, FALSE, 0x214, 14); for (i = 0; i < NUM_TRADER_ITEMS; i++) { if (trader->decorations[i] > NUM_DECORATIONS) - AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(tWindowId, FONT_NORMAL, gText_FiveMarks, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); else - AddTextPrinterParameterized(data[3], FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(tWindowId, FONT_NORMAL, gDecorations[trader->decorations[i]].name, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); } - AddTextPrinterParameterized(data[3], FONT_NORMAL, gText_Exit, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); - InitMenuInUpperLeftCornerNormal(data[3], NUM_TRADER_ITEMS + 1, 0); + AddTextPrinterParameterized(tWindowId, FONT_NORMAL, gText_Exit, 8, 16 * i + 1, TEXT_SKIP_DRAW, NULL); + InitMenuInUpperLeftCornerNormal(tWindowId, NUM_TRADER_ITEMS + 1, 0); ScheduleBgCopyTilemapToVram(0); } @@ -94,9 +104,9 @@ void Task_BufferDecorSelectionAndCloseWindow(u8 taskId, u8 decorationId) else gSpecialVar_0x8004 = decorationId; - ClearStdWindowAndFrameToTransparent(data[3], FALSE); - ClearWindowTilemap(data[3]); - RemoveWindow(data[3]); + ClearStdWindowAndFrameToTransparent(tWindowId, FALSE); + ClearWindowTilemap(tWindowId); + RemoveWindow(tWindowId); ScheduleBgCopyTilemapToVram(0); DestroyTask(taskId); EnableBothScriptContexts(); @@ -112,7 +122,7 @@ void Task_HandleGetDecorationMenuInput(u8 taskId) case MENU_NOTHING_CHOSEN: break; case MENU_B_PRESSED: - case NUM_TRADER_ITEMS: + case NUM_TRADER_ITEMS: // EXIT PlaySE(SE_SELECT); Task_BufferDecorSelectionAndCloseWindow(taskId, 0); break; @@ -136,7 +146,7 @@ void DoesPlayerHaveNoDecorations(void) { u8 i; - for (i = 0; i < 8; i++) + for (i = 0; i < DECORCAT_COUNT; i++) { if (GetNumOwnedDecorationsInCategory(i)) { From 5d58cdd2971b8644e60bc65bd79177d4f5bf4d93 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 28 Feb 2022 13:34:39 -0500 Subject: [PATCH 554/762] Fix bunny hoppy typo --- include/constants/event_object_movement.h | 16 ++++----- src/data/object_events/object_event_anims.h | 32 +++++++++--------- src/event_object_movement.c | 36 ++++++++++----------- 3 files changed, 42 insertions(+), 42 deletions(-) diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 2c4273524838..a9d59935ecc0 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -273,14 +273,14 @@ #define ANIM_RUN_WEST (ANIM_STD_COUNT + 2) #define ANIM_RUN_EAST (ANIM_STD_COUNT + 3) -#define ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH (ANIM_STD_COUNT + 0) -#define ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH (ANIM_STD_COUNT + 1) -#define ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST (ANIM_STD_COUNT + 2) -#define ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST (ANIM_STD_COUNT + 3) -#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH (ANIM_STD_COUNT + 4) -#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH (ANIM_STD_COUNT + 5) -#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST (ANIM_STD_COUNT + 6) -#define ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST (ANIM_STD_COUNT + 7) +#define ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH (ANIM_STD_COUNT + 0) +#define ANIM_BUNNY_HOP_BACK_WHEEL_NORTH (ANIM_STD_COUNT + 1) +#define ANIM_BUNNY_HOP_BACK_WHEEL_WEST (ANIM_STD_COUNT + 2) +#define ANIM_BUNNY_HOP_BACK_WHEEL_EAST (ANIM_STD_COUNT + 3) +#define ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH (ANIM_STD_COUNT + 4) +#define ANIM_BUNNY_HOP_FRONT_WHEEL_NORTH (ANIM_STD_COUNT + 5) +#define ANIM_BUNNY_HOP_FRONT_WHEEL_WEST (ANIM_STD_COUNT + 6) +#define ANIM_BUNNY_HOP_FRONT_WHEEL_EAST (ANIM_STD_COUNT + 7) #define ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH (ANIM_STD_COUNT + 8) #define ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH (ANIM_STD_COUNT + 9) #define ANIM_STANDING_WHEELIE_BACK_WHEEL_WEST (ANIM_STD_COUNT + 10) diff --git a/src/data/object_events/object_event_anims.h b/src/data/object_events/object_event_anims.h index a5fb41462878..f96e52de5357 100755 --- a/src/data/object_events/object_event_anims.h +++ b/src/data/object_events/object_event_anims.h @@ -413,56 +413,56 @@ static const union AnimCmd sAnim_GetOnOffSurfBlobEast[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sAnim_BunnyHoppyBackWheelSouth[] = +static const union AnimCmd sAnim_BunnyHopBackWheelSouth[] = { ANIMCMD_FRAME(9, 4), ANIMCMD_FRAME(10, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyBackWheelNorth[] = +static const union AnimCmd sAnim_BunnyHopBackWheelNorth[] = { ANIMCMD_FRAME(13, 4), ANIMCMD_FRAME(14, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyBackWheelWest[] = +static const union AnimCmd sAnim_BunnyHopBackWheelWest[] = { ANIMCMD_FRAME(17, 4), ANIMCMD_FRAME(18, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyBackWheelEast[] = +static const union AnimCmd sAnim_BunnyHopBackWheelEast[] = { ANIMCMD_FRAME(17, 4, .hFlip = TRUE), ANIMCMD_FRAME(18, 4, .hFlip = TRUE), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyFrontWheelSouth[] = +static const union AnimCmd sAnim_BunnyHopFrontWheelSouth[] = { ANIMCMD_FRAME(11, 4), ANIMCMD_FRAME(12, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyFrontWheelNorth[] = +static const union AnimCmd sAnim_BunnyHopFrontWheelNorth[] = { ANIMCMD_FRAME(15, 4), ANIMCMD_FRAME(16, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyFrontWheelWest[] = +static const union AnimCmd sAnim_BunnyHopFrontWheelWest[] = { ANIMCMD_FRAME(19, 4), ANIMCMD_FRAME(20, 4), ANIMCMD_END, }; -static const union AnimCmd sAnim_BunnyHoppyFrontWheelEast[] = +static const union AnimCmd sAnim_BunnyHopFrontWheelEast[] = { ANIMCMD_FRAME(19, 4, .hFlip = TRUE), ANIMCMD_FRAME(20, 4, .hFlip = TRUE), @@ -1024,14 +1024,14 @@ static const union AnimCmd *const sAnimTable_AcroBike[] = { [ANIM_STD_GO_FASTEST_NORTH] = sAnim_GoFastestNorth, [ANIM_STD_GO_FASTEST_WEST] = sAnim_GoFastestWest, [ANIM_STD_GO_FASTEST_EAST] = sAnim_GoFastestEast, - [ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH] = sAnim_BunnyHoppyBackWheelSouth, - [ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH] = sAnim_BunnyHoppyBackWheelNorth, - [ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST] = sAnim_BunnyHoppyBackWheelWest, - [ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST] = sAnim_BunnyHoppyBackWheelEast, - [ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH] = sAnim_BunnyHoppyFrontWheelSouth, - [ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH] = sAnim_BunnyHoppyFrontWheelNorth, - [ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST] = sAnim_BunnyHoppyFrontWheelWest, - [ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST] = sAnim_BunnyHoppyFrontWheelEast, + [ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH] = sAnim_BunnyHopBackWheelSouth, + [ANIM_BUNNY_HOP_BACK_WHEEL_NORTH] = sAnim_BunnyHopBackWheelNorth, + [ANIM_BUNNY_HOP_BACK_WHEEL_WEST] = sAnim_BunnyHopBackWheelWest, + [ANIM_BUNNY_HOP_BACK_WHEEL_EAST] = sAnim_BunnyHopBackWheelEast, + [ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH] = sAnim_BunnyHopFrontWheelSouth, + [ANIM_BUNNY_HOP_FRONT_WHEEL_NORTH] = sAnim_BunnyHopFrontWheelNorth, + [ANIM_BUNNY_HOP_FRONT_WHEEL_WEST] = sAnim_BunnyHopFrontWheelWest, + [ANIM_BUNNY_HOP_FRONT_WHEEL_EAST] = sAnim_BunnyHopFrontWheelEast, [ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH] = sAnim_StandingWheelieBackWheelSouth, [ANIM_STANDING_WHEELIE_BACK_WHEEL_NORTH] = sAnim_StandingWheelieBackWheelNorth, [ANIM_STANDING_WHEELIE_BACK_WHEEL_WEST] = sAnim_StandingWheelieBackWheelWest, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index df79a1d62ad1..eb699e89f823 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -744,26 +744,26 @@ static const u8 sJumpSpecialDirectionAnimNums[] = { // used for jumping onto sur [DIR_NORTHEAST] = ANIM_GET_ON_OFF_POKEMON_NORTH, }; static const u8 sAcroWheelieDirectionAnimNums[] = { - [DIR_NONE] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, - [DIR_SOUTH] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, - [DIR_NORTH] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, - [DIR_WEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_WEST, - [DIR_EAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_EAST, - [DIR_SOUTHWEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, - [DIR_SOUTHEAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_SOUTH, - [DIR_NORTHWEST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, - [DIR_NORTHEAST] = ANIM_BUNNY_HOPPY_BACK_WHEEL_NORTH, + [DIR_NONE] = ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_BUNNY_HOP_BACK_WHEEL_NORTH, + [DIR_WEST] = ANIM_BUNNY_HOP_BACK_WHEEL_WEST, + [DIR_EAST] = ANIM_BUNNY_HOP_BACK_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_BUNNY_HOP_BACK_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_BUNNY_HOP_BACK_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_BUNNY_HOP_BACK_WHEEL_NORTH, }; static const u8 sAcroUnusedDirectionAnimNums[] = { - [DIR_NONE] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, - [DIR_SOUTH] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, - [DIR_NORTH] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, - [DIR_WEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_WEST, - [DIR_EAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_EAST, - [DIR_SOUTHWEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, - [DIR_SOUTHEAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_SOUTH, - [DIR_NORTHWEST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, - [DIR_NORTHEAST] = ANIM_BUNNY_HOPPY_FRONT_WHEEL_NORTH, + [DIR_NONE] = ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH, + [DIR_SOUTH] = ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH, + [DIR_NORTH] = ANIM_BUNNY_HOP_FRONT_WHEEL_NORTH, + [DIR_WEST] = ANIM_BUNNY_HOP_FRONT_WHEEL_WEST, + [DIR_EAST] = ANIM_BUNNY_HOP_FRONT_WHEEL_EAST, + [DIR_SOUTHWEST] = ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH, + [DIR_SOUTHEAST] = ANIM_BUNNY_HOP_FRONT_WHEEL_SOUTH, + [DIR_NORTHWEST] = ANIM_BUNNY_HOP_FRONT_WHEEL_NORTH, + [DIR_NORTHEAST] = ANIM_BUNNY_HOP_FRONT_WHEEL_NORTH, }; static const u8 sAcroEndWheelieDirectionAnimNums[] = { [DIR_NONE] = ANIM_STANDING_WHEELIE_BACK_WHEEL_SOUTH, From 8bf7e7b6f5abad1a4f0772a88ed415079edb7df8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 2 Mar 2022 19:45:28 -0500 Subject: [PATCH 555/762] Improve egg hatch documentation --- .../egg_hatch.png => pokemon/egg/hatch.png} | Bin .../egg_shard.png => pokemon/egg/shard.png} | Bin src/egg_hatch.c | 476 ++++++++++-------- 3 files changed, 265 insertions(+), 211 deletions(-) rename graphics/{misc/egg_hatch.png => pokemon/egg/hatch.png} (100%) rename graphics/{misc/egg_shard.png => pokemon/egg/shard.png} (100%) diff --git a/graphics/misc/egg_hatch.png b/graphics/pokemon/egg/hatch.png similarity index 100% rename from graphics/misc/egg_hatch.png rename to graphics/pokemon/egg/hatch.png diff --git a/graphics/misc/egg_shard.png b/graphics/pokemon/egg/shard.png similarity index 100% rename from graphics/misc/egg_shard.png rename to graphics/pokemon/egg/shard.png diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 283ec753af5a..5dd83c9b1fc7 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -37,16 +37,24 @@ #include "battle.h" // to get rid of later #include "constants/rgb.h" +#define GFXTAG_EGG 12345 +#define GFXTAG_EGG_SHARD 23456 + +#define PALTAG_EGG 54321 + +#define EGG_X (DISPLAY_WIDTH / 2) +#define EGG_Y (DISPLAY_HEIGHT / 2 - 5) + struct EggHatchData { - u8 eggSpriteID; - u8 pokeSpriteID; - u8 CB2_state; - u8 CB2_PalCounter; - u8 eggPartyID; + u8 eggSpriteId; + u8 monSpriteId; + u8 state; + u8 delayTimer; + u8 eggPartyId; u8 unused_5; u8 unused_6; - u8 eggShardVelocityID; + u8 eggShardVelocityId; u8 windowId; u8 unused_9; u8 unused_A; @@ -58,29 +66,27 @@ extern const u32 gTradePlatform_Tilemap[]; extern const u8 gText_HatchedFromEgg[]; extern const u8 gText_NicknameHatchPrompt[]; -static void Task_EggHatch(u8 taskID); -static void CB2_EggHatch_0(void); -static void CB2_EggHatch_1(void); -static void SpriteCB_Egg_0(struct Sprite* sprite); -static void SpriteCB_Egg_1(struct Sprite* sprite); -static void SpriteCB_Egg_2(struct Sprite* sprite); -static void SpriteCB_Egg_3(struct Sprite* sprite); -static void SpriteCB_Egg_4(struct Sprite* sprite); -static void SpriteCB_Egg_5(struct Sprite* sprite); -static void SpriteCB_EggShard(struct Sprite* sprite); -static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed); +static void Task_EggHatch(u8); +static void CB2_LoadEggHatch(void); +static void CB2_EggHatch(void); +static void SpriteCB_Egg_Shake1(struct Sprite*); +static void SpriteCB_Egg_Shake2(struct Sprite*); +static void SpriteCB_Egg_Shake3(struct Sprite*); +static void SpriteCB_Egg_WaitHatch(struct Sprite*); +static void SpriteCB_Egg_Hatch(struct Sprite*); +static void SpriteCB_Egg_Reveal(struct Sprite*); +static void SpriteCB_EggShard(struct Sprite*); +static void EggHatchPrintMessage(u8, u8*, u8, u8, u8); static void CreateRandomEggShardSprite(void); -static void CreateEggShardSprite(u8 x, u8 y, s16 data1, s16 data2, s16 data3, u8 spriteAnimIndex); +static void CreateEggShardSprite(u8, u8, s16, s16, s16, u8); -// IWRAM bss static struct EggHatchData *sEggHatchData; -// rom data -static const u16 sEggPalette[] = INCBIN_U16("graphics/pokemon/egg/normal.gbapal"); -static const u8 sEggHatchTiles[] = INCBIN_U8("graphics/misc/egg_hatch.4bpp"); -static const u8 sEggShardTiles[] = INCBIN_U8("graphics/misc/egg_shard.4bpp"); +static const u16 sEggPalette[] = INCBIN_U16("graphics/pokemon/egg/normal.gbapal"); +static const u8 sEggHatchTiles[] = INCBIN_U8("graphics/pokemon/egg/hatch.4bpp"); +static const u8 sEggShardTiles[] = INCBIN_U8("graphics/pokemon/egg/shard.4bpp"); -static const struct OamData sOamData_EggHatch = +static const struct OamData sOamData_Egg = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -97,64 +103,71 @@ static const struct OamData sOamData_EggHatch = .affineParam = 0, }; -static const union AnimCmd sSpriteAnim_EggHatch0[] = +static const union AnimCmd sSpriteAnim_Egg_Normal[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_EggHatch1[] = +static const union AnimCmd sSpriteAnim_Egg_Cracked1[] = { ANIMCMD_FRAME(16, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_EggHatch2[] = +static const union AnimCmd sSpriteAnim_Egg_Cracked2[] = { ANIMCMD_FRAME(32, 5), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_EggHatch3[] = +static const union AnimCmd sSpriteAnim_Egg_Cracked3[] = { ANIMCMD_FRAME(48, 5), ANIMCMD_END }; -static const union AnimCmd *const sSpriteAnimTable_EggHatch[] = +enum { + EGG_ANIM_NORMAL, + EGG_ANIM_CRACKED_1, + EGG_ANIM_CRACKED_2, + EGG_ANIM_CRACKED_3, +}; + +static const union AnimCmd *const sSpriteAnimTable_Egg[] = { - sSpriteAnim_EggHatch0, - sSpriteAnim_EggHatch1, - sSpriteAnim_EggHatch2, - sSpriteAnim_EggHatch3, + [EGG_ANIM_NORMAL] = sSpriteAnim_Egg_Normal, + [EGG_ANIM_CRACKED_1] = sSpriteAnim_Egg_Cracked1, + [EGG_ANIM_CRACKED_2] = sSpriteAnim_Egg_Cracked2, + [EGG_ANIM_CRACKED_3] = sSpriteAnim_Egg_Cracked3, }; static const struct SpriteSheet sEggHatch_Sheet = { .data = sEggHatchTiles, - .size = 2048, - .tag = 12345, + .size = 0x800, + .tag = GFXTAG_EGG, }; static const struct SpriteSheet sEggShards_Sheet = { .data = sEggShardTiles, - .size = 128, - .tag = 23456, + .size = 0x80, + .tag = GFXTAG_EGG_SHARD, }; static const struct SpritePalette sEgg_SpritePalette = { .data = sEggPalette, - .tag = 54321 + .tag = PALTAG_EGG }; -static const struct SpriteTemplate sSpriteTemplate_EggHatch = +static const struct SpriteTemplate sSpriteTemplate_Egg = { - .tileTag = 12345, - .paletteTag = 54321, - .oam = &sOamData_EggHatch, - .anims = sSpriteAnimTable_EggHatch, + .tileTag = GFXTAG_EGG, + .paletteTag = PALTAG_EGG, + .oam = &sOamData_Egg, + .anims = sSpriteAnimTable_Egg, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy @@ -211,8 +224,8 @@ static const union AnimCmd *const sSpriteAnimTable_EggShard[] = static const struct SpriteTemplate sSpriteTemplate_EggShard = { - .tileTag = 23456, - .paletteTag = 54321, + .tileTag = GFXTAG_EGG_SHARD, + .paletteTag = PALTAG_EGG, .oam = &sOamData_EggShard, .anims = sSpriteAnimTable_EggShard, .images = NULL, @@ -220,7 +233,7 @@ static const struct SpriteTemplate sSpriteTemplate_EggShard = .callback = SpriteCB_EggShard }; -static const struct BgTemplate sBgTemplates_EggHatch[2] = +static const struct BgTemplate sBgTemplates_EggHatch[] = { { .bg = 0, @@ -243,7 +256,7 @@ static const struct BgTemplate sBgTemplates_EggHatch[2] = }, }; -static const struct WindowTemplate sWinTemplates_EggHatch[2] = +static const struct WindowTemplate sWinTemplates_EggHatch[] = { { .bg = 0, @@ -270,9 +283,14 @@ static const struct WindowTemplate sYesNoWinTemplate = static const s16 sEggShardVelocities[][2] = { + // First shake {Q_8_8(-1.5), Q_8_8(-3.75)}, + + // Third shake {Q_8_8(-5), Q_8_8(-3)}, {Q_8_8(3.5), Q_8_8(-3)}, + + // Hatching {Q_8_8(-4), Q_8_8(-3.75)}, {Q_8_8(2), Q_8_8(-1.5)}, {Q_8_8(-0.5), Q_8_8(-6.75)}, @@ -291,8 +309,6 @@ static const s16 sEggShardVelocities[][2] = {Q_8_8(2.5), Q_8_8(-7.5)}, }; -// code - static void CreateHatchedMon(struct Pokemon *egg, struct Pokemon *temp) { u16 species; @@ -301,21 +317,17 @@ static void CreateHatchedMon(struct Pokemon *egg, struct Pokemon *temp) u16 moves[MAX_MON_MOVES]; u32 ivs[NUM_STATS]; - species = GetMonData(egg, MON_DATA_SPECIES); for (i = 0; i < MAX_MON_MOVES; i++) - { moves[i] = GetMonData(egg, MON_DATA_MOVE1 + i); - } personality = GetMonData(egg, MON_DATA_PERSONALITY); for (i = 0; i < NUM_STATS; i++) - { ivs[i] = GetMonData(egg, MON_DATA_HP_IV + i); - } + // The language is initially read from the Egg but is later overwritten below language = GetMonData(egg, MON_DATA_LANGUAGE); gameMet = GetMonData(egg, MON_DATA_MET_GAME); markings = GetMonData(egg, MON_DATA_MARKINGS); @@ -325,14 +337,10 @@ static void CreateHatchedMon(struct Pokemon *egg, struct Pokemon *temp) CreateMon(temp, species, EGG_HATCH_LEVEL, USE_RANDOM_IVS, TRUE, personality, OT_ID_PLAYER_ID, 0); for (i = 0; i < MAX_MON_MOVES; i++) - { SetMonData(temp, MON_DATA_MOVE1 + i, &moves[i]); - } for (i = 0; i < NUM_STATS; i++) - { SetMonData(temp, MON_DATA_HP_IV + i, &ivs[i]); - } language = GAME_LANGUAGE; SetMonData(temp, MON_DATA_LANGUAGE, &language); @@ -350,34 +358,35 @@ static void CreateHatchedMon(struct Pokemon *egg, struct Pokemon *temp) static void AddHatchedMonToParty(u8 id) { u8 isEgg = 0x46; // ? - u16 pokeNum; - u8 name[12]; + u16 species; + u8 name[POKEMON_NAME_LENGTH + 1]; u16 ball; - u16 caughtLvl; - u8 mapNameID; + u16 metLevel; + u8 metLocation; struct Pokemon* mon = &gPlayerParty[id]; CreateHatchedMon(mon, &gEnemyParty[0]); SetMonData(mon, MON_DATA_IS_EGG, &isEgg); - pokeNum = GetMonData(mon, MON_DATA_SPECIES); - GetSpeciesName(name, pokeNum); + species = GetMonData(mon, MON_DATA_SPECIES); + GetSpeciesName(name, species); SetMonData(mon, MON_DATA_NICKNAME, name); - pokeNum = SpeciesToNationalPokedexNum(pokeNum); - GetSetPokedexFlag(pokeNum, FLAG_SET_SEEN); - GetSetPokedexFlag(pokeNum, FLAG_SET_CAUGHT); + species = SpeciesToNationalPokedexNum(species); + GetSetPokedexFlag(species, FLAG_SET_SEEN); + GetSetPokedexFlag(species, FLAG_SET_CAUGHT); GetMonNickname2(mon, gStringVar1); ball = ITEM_POKE_BALL; SetMonData(mon, MON_DATA_POKEBALL, &ball); - caughtLvl = 0; - SetMonData(mon, MON_DATA_MET_LEVEL, &caughtLvl); + // A met level of 0 is interpreted on the summary screen as "hatched at" + metLevel = 0; + SetMonData(mon, MON_DATA_MET_LEVEL, &metLevel); - mapNameID = GetCurrentRegionMapSectionId(); - SetMonData(mon, MON_DATA_MET_LOCATION, &mapNameID); + metLocation = GetCurrentRegionMapSectionId(); + SetMonData(mon, MON_DATA_MET_LOCATION, &metLocation); MonRestorePP(mon); CalculateMonStats(mon); @@ -396,7 +405,7 @@ static bool8 _CheckDaycareMonReceivedMail(struct DayCare *daycare, u8 daycareId) GetBoxMonNickname(&daycareMon->mon, nickname); if (daycareMon->mail.message.itemId != ITEM_NONE && (StringCompareWithoutExtCtrlCodes(nickname, daycareMon->mail.monName) != 0 - || StringCompareWithoutExtCtrlCodes(gSaveBlock2Ptr->playerName, daycareMon->mail.otName) != 0)) + || StringCompareWithoutExtCtrlCodes(gSaveBlock2Ptr->playerName, daycareMon->mail.otName) != 0)) { StringCopy(gStringVar1, nickname); TVShowConvertInternationalString(gStringVar2, daycareMon->mail.otName, daycareMon->mail.gameLanguage); @@ -411,26 +420,27 @@ bool8 CheckDaycareMonReceivedMail(void) return _CheckDaycareMonReceivedMail(&gSaveBlock1Ptr->daycare, gSpecialVar_0x8004); } -static u8 EggHatchCreateMonSprite(u8 useAlt, u8 switchID, u8 pokeID, u16* speciesLoc) +static u8 EggHatchCreateMonSprite(u8 useAlt, u8 state, u8 partyId, u16* speciesLoc) { u8 position = 0; - u8 spriteID = 0; + u8 spriteId = 0; struct Pokemon* mon = NULL; if (useAlt == FALSE) { - mon = &gPlayerParty[pokeID]; + mon = &gPlayerParty[partyId]; position = B_POSITION_OPPONENT_LEFT; } if (useAlt == TRUE) { // Alternate sprite allocation position. Never reached. - mon = &gPlayerParty[pokeID]; + mon = &gPlayerParty[partyId]; position = B_POSITION_OPPONENT_RIGHT; } - switch (switchID) + switch (state) { case 0: + // Load mon sprite gfx { u16 species = GetMonData(mon, MON_DATA_SPECIES); u32 pid = GetMonData(mon, MON_DATA_PERSONALITY); @@ -442,13 +452,14 @@ static u8 EggHatchCreateMonSprite(u8 useAlt, u8 switchID, u8 pokeID, u16* specie } break; case 1: + // Create mon sprite SetMultiuseSpriteTemplateToPokemon(GetMonSpritePalStruct(mon)->tag, position); - spriteID = CreateSprite(&gMultiuseSpriteTemplate, 120, 75, 6); - gSprites[spriteID].invisible = TRUE; - gSprites[spriteID].callback = SpriteCallbackDummy; + spriteId = CreateSprite(&gMultiuseSpriteTemplate, EGG_X, EGG_Y, 6); + gSprites[spriteId].invisible = TRUE; + gSprites[spriteId].callback = SpriteCallbackDummy; break; } - return spriteID; + return spriteId; } static void VBlankCB_EggHatch(void) @@ -465,28 +476,28 @@ void EggHatch(void) FadeScreen(FADE_TO_BLACK, 0); } -static void Task_EggHatch(u8 taskID) +static void Task_EggHatch(u8 taskId) { if (!gPaletteFade.active) { CleanupOverworldWindowsAndTilemaps(); - SetMainCallback2(CB2_EggHatch_0); + SetMainCallback2(CB2_LoadEggHatch); gFieldCallback = FieldCB_ContinueScriptHandleMusic; - DestroyTask(taskID); + DestroyTask(taskId); } } -static void CB2_EggHatch_0(void) +static void CB2_LoadEggHatch(void) { switch (gMain.state) { case 0: SetGpuReg(REG_OFFSET_DISPCNT, 0); - sEggHatchData = Alloc(sizeof(struct EggHatchData)); + sEggHatchData = Alloc(sizeof(*sEggHatchData)); AllocateMonSpritesGfx(); - sEggHatchData->eggPartyID = gSpecialVar_0x8004; - sEggHatchData->eggShardVelocityID = 0; + sEggHatchData->eggPartyId = gSpecialVar_0x8004; + sEggHatchData->eggShardVelocityId = 0; SetVBlankCallback(VBlankCB_EggHatch); gSpecialVar_0x8005 = GetCurrentMapMusic(); @@ -532,15 +543,15 @@ static void CB2_EggHatch_0(void) break; case 4: CopyBgTilemapBufferToVram(0); - AddHatchedMonToParty(sEggHatchData->eggPartyID); + AddHatchedMonToParty(sEggHatchData->eggPartyId); gMain.state++; break; case 5: - EggHatchCreateMonSprite(FALSE, 0, sEggHatchData->eggPartyID, &sEggHatchData->species); + EggHatchCreateMonSprite(FALSE, 0, sEggHatchData->eggPartyId, &sEggHatchData->species); gMain.state++; break; case 6: - sEggHatchData->pokeSpriteID = EggHatchCreateMonSprite(FALSE, 1, sEggHatchData->eggPartyID, &sEggHatchData->species); + sEggHatchData->monSpriteId = EggHatchCreateMonSprite(FALSE, 1, sEggHatchData->eggPartyId, &sEggHatchData->species); gMain.state++; break; case 7: @@ -552,8 +563,8 @@ static void CB2_EggHatch_0(void) gMain.state++; break; case 8: - SetMainCallback2(CB2_EggHatch_1); - sEggHatchData->CB2_state = 0; + SetMainCallback2(CB2_EggHatch); + sEggHatchData->state = 0; break; } RunTasks(); @@ -571,121 +582,127 @@ static void EggHatchSetMonNickname(void) SetMainCallback2(CB2_ReturnToField); } -static void Task_EggHatchPlayBGM(u8 taskID) +#define tTimer data[0] + +static void Task_EggHatchPlayBGM(u8 taskId) { - if (gTasks[taskID].data[0] == 0) + if (gTasks[taskId].tTimer == 0) { StopMapMusic(); PlayRainStoppingSoundEffect(); } - if (gTasks[taskID].data[0] == 1) + + if (gTasks[taskId].tTimer == 1) PlayBGM(MUS_EVOLUTION_INTRO); - if (gTasks[taskID].data[0] > 60) + + if (gTasks[taskId].tTimer > 60) { PlayBGM(MUS_EVOLUTION); - DestroyTask(taskID); - // UB: task is destroyed, yet the value is incremented - #ifdef UBFIX - return; - #endif + DestroyTask(taskId); } - gTasks[taskID].data[0]++; + gTasks[taskId].tTimer++; } -static void CB2_EggHatch_1(void) +static void CB2_EggHatch(void) { u16 species; u8 gender; u32 personality; - switch (sEggHatchData->CB2_state) + switch (sEggHatchData->state) { case 0: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); - sEggHatchData->eggSpriteID = CreateSprite(&sSpriteTemplate_EggHatch, 120, 75, 5); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); + sEggHatchData->eggSpriteId = CreateSprite(&sSpriteTemplate_Egg, EGG_X, EGG_Y, 5); ShowBg(0); ShowBg(1); - sEggHatchData->CB2_state++; + sEggHatchData->state++; CreateTask(Task_EggHatchPlayBGM, 5); break; case 1: if (!gPaletteFade.active) { FillWindowPixelBuffer(sEggHatchData->windowId, PIXEL_FILL(0)); - sEggHatchData->CB2_PalCounter = 0; - sEggHatchData->CB2_state++; + sEggHatchData->delayTimer = 0; + sEggHatchData->state++; } break; case 2: - if (++sEggHatchData->CB2_PalCounter > 30) + if (++sEggHatchData->delayTimer > 30) { - sEggHatchData->CB2_state++; - gSprites[sEggHatchData->eggSpriteID].callback = SpriteCB_Egg_0; + // Start hatching animation + sEggHatchData->state++; + gSprites[sEggHatchData->eggSpriteId].callback = SpriteCB_Egg_Shake1; } break; case 3: - if (gSprites[sEggHatchData->eggSpriteID].callback == SpriteCallbackDummy) + // Wait for hatching animation to finish + if (gSprites[sEggHatchData->eggSpriteId].callback == SpriteCallbackDummy) { - species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); - DoMonFrontSpriteAnimation(&gSprites[sEggHatchData->pokeSpriteID], species, FALSE, 1); - sEggHatchData->CB2_state++; + species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyId], MON_DATA_SPECIES); + DoMonFrontSpriteAnimation(&gSprites[sEggHatchData->monSpriteId], species, FALSE, 1); + sEggHatchData->state++; } break; case 4: - if (gSprites[sEggHatchData->pokeSpriteID].callback == SpriteCallbackDummy) - { - sEggHatchData->CB2_state++; - } + // Wait for PokĂ©mon's front sprite animation + if (gSprites[sEggHatchData->monSpriteId].callback == SpriteCallbackDummy) + sEggHatchData->state++; break; case 5: - GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyID], gStringVar1); + // "{mon} hatched from egg" message/fanfare + GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyId], gStringVar1); StringExpandPlaceholders(gStringVar4, gText_HatchedFromEgg); EggHatchPrintMessage(sEggHatchData->windowId, gStringVar4, 0, 3, TEXT_SKIP_DRAW); PlayFanfare(MUS_EVOLVED); - sEggHatchData->CB2_state++; + sEggHatchData->state++; PutWindowTilemap(sEggHatchData->windowId); CopyWindowToVram(sEggHatchData->windowId, COPYWIN_FULL); break; case 6: if (IsFanfareTaskInactive()) - sEggHatchData->CB2_state++; + sEggHatchData->state++; break; - case 7: + case 7: // Twice? if (IsFanfareTaskInactive()) - sEggHatchData->CB2_state++; + sEggHatchData->state++; break; case 8: - GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyID], gStringVar1); + // Ready the nickname prompt + GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyId], gStringVar1); StringExpandPlaceholders(gStringVar4, gText_NicknameHatchPrompt); EggHatchPrintMessage(sEggHatchData->windowId, gStringVar4, 0, 2, 1); - sEggHatchData->CB2_state++; + sEggHatchData->state++; break; case 9: + // Print the nickname prompt if (!IsTextPrinterActive(sEggHatchData->windowId)) { LoadUserWindowBorderGfx(sEggHatchData->windowId, 0x140, 0xE0); CreateYesNoMenu(&sYesNoWinTemplate, 0x140, 0xE, 0); - sEggHatchData->CB2_state++; + sEggHatchData->state++; } break; case 10: + // Handle the nickname prompt input switch (Menu_ProcessInputNoWrapClearOnChoose()) { - case 0: - GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyID], gStringVar3); - species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); - gender = GetMonGender(&gPlayerParty[sEggHatchData->eggPartyID]); - personality = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_PERSONALITY, 0); + case 0: // Yes + GetMonNickname2(&gPlayerParty[sEggHatchData->eggPartyId], gStringVar3); + species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyId], MON_DATA_SPECIES); + gender = GetMonGender(&gPlayerParty[sEggHatchData->eggPartyId]); + personality = GetMonData(&gPlayerParty[sEggHatchData->eggPartyId], MON_DATA_PERSONALITY, 0); DoNamingScreen(NAMING_SCREEN_NICKNAME, gStringVar3, species, gender, personality, EggHatchSetMonNickname); break; - case 1: - case -1: - sEggHatchData->CB2_state++; + case 1: // No + case MENU_B_PRESSED: + sEggHatchData->state++; + break; } break; case 11: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); - sEggHatchData->CB2_state++; + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); + sEggHatchData->state++; break; case 12: if (!gPaletteFade.active) @@ -707,136 +724,170 @@ static void CB2_EggHatch_1(void) UpdatePaletteFade(); } -static void SpriteCB_Egg_0(struct Sprite* sprite) +#define sTimer data[0] +#define sSinIdx data[1] +#define sDelayTimer data[2] + +static void SpriteCB_Egg_Shake1(struct Sprite* sprite) { - if (++sprite->data[0] > 20) + if (++sprite->sTimer > 20) { - sprite->callback = SpriteCB_Egg_1; - sprite->data[0] = 0; + sprite->callback = SpriteCB_Egg_Shake2; + sprite->sTimer = 0; } else { - sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->x2 = Sin(sprite->data[1], 1); - if (sprite->data[0] == 15) + // Shake egg + sprite->sSinIdx = (sprite->sSinIdx + 20) & 0xFF; + sprite->x2 = Sin(sprite->sSinIdx, 1); + if (sprite->sTimer == 15) { + // First egg crack PlaySE(SE_BALL); - StartSpriteAnim(sprite, 1); + StartSpriteAnim(sprite, EGG_ANIM_CRACKED_1); CreateRandomEggShardSprite(); } } } -static void SpriteCB_Egg_1(struct Sprite* sprite) +static void SpriteCB_Egg_Shake2(struct Sprite* sprite) { - if (++sprite->data[2] > 30) + if (++sprite->sDelayTimer > 30) { - if (++sprite->data[0] > 20) + if (++sprite->sTimer > 20) { - sprite->callback = SpriteCB_Egg_2; - sprite->data[0] = 0; - sprite->data[2] = 0; + sprite->callback = SpriteCB_Egg_Shake3; + sprite->sTimer = 0; + sprite->sDelayTimer = 0; } else { - sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->x2 = Sin(sprite->data[1], 2); - if (sprite->data[0] == 15) + // Shake egg + sprite->sSinIdx = (sprite->sSinIdx + 20) & 0xFF; + sprite->x2 = Sin(sprite->sSinIdx, 2); + if (sprite->sTimer == 15) { + // Second egg crack PlaySE(SE_BALL); - StartSpriteAnim(sprite, 2); + StartSpriteAnim(sprite, EGG_ANIM_CRACKED_2); } } } } -static void SpriteCB_Egg_2(struct Sprite* sprite) +static void SpriteCB_Egg_Shake3(struct Sprite* sprite) { - if (++sprite->data[2] > 30) + if (++sprite->sDelayTimer > 30) { - if (++sprite->data[0] > 38) + if (++sprite->sTimer > 38) { u16 species; - - sprite->callback = SpriteCB_Egg_3; - sprite->data[0] = 0; - species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); - gSprites[sEggHatchData->pokeSpriteID].x2 = 0; - gSprites[sEggHatchData->pokeSpriteID].y2 = 0; + sprite->callback = SpriteCB_Egg_WaitHatch; + sprite->sTimer = 0; + species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyId], MON_DATA_SPECIES); + gSprites[sEggHatchData->monSpriteId].x2 = 0; + gSprites[sEggHatchData->monSpriteId].y2 = 0; } else { - sprite->data[1] = (sprite->data[1] + 20) & 0xFF; - sprite->x2 = Sin(sprite->data[1], 2); - if (sprite->data[0] == 15) + // Shake egg + sprite->sSinIdx = (sprite->sSinIdx + 20) & 0xFF; + sprite->x2 = Sin(sprite->sSinIdx, 2); + if (sprite->sTimer == 15) { + // Third egg crack + // This ineffectually sets the animation to the frame it's already using. + // They likely meant to use the 3rd and final cracked frame of the egg, which goes unused as a result. PlaySE(SE_BALL); - StartSpriteAnim(sprite, 2); + #ifdef BUGFIX + StartSpriteAnim(sprite, EGG_ANIM_CRACKED_3); + #else + StartSpriteAnim(sprite, EGG_ANIM_CRACKED_2); + #endif CreateRandomEggShardSprite(); CreateRandomEggShardSprite(); } - if (sprite->data[0] == 30) + if (sprite->sTimer == 30) PlaySE(SE_BALL); } } } -static void SpriteCB_Egg_3(struct Sprite* sprite) +static void SpriteCB_Egg_WaitHatch(struct Sprite* sprite) { - if (++sprite->data[0] > 50) + if (++sprite->sTimer > 50) { - sprite->callback = SpriteCB_Egg_4; - sprite->data[0] = 0; + sprite->callback = SpriteCB_Egg_Hatch; + sprite->sTimer = 0; } } -static void SpriteCB_Egg_4(struct Sprite* sprite) +static void SpriteCB_Egg_Hatch(struct Sprite* sprite) { s16 i; - if (sprite->data[0] == 0) - BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_WHITEALPHA); - if (sprite->data[0] < 4u) + + // Fade to white to hide transition from egg to PokĂ©mon + if (sprite->sTimer == 0) + BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_WHITEALPHA); + + // Create a shower of 16 egg shards in 4 groups of 4 + if ((u32)sprite->sTimer < 4) { - for (i = 0; i <= 3; i++) + for (i = 0; i < 4; i++) CreateRandomEggShardSprite(); } - sprite->data[0]++; + + sprite->sTimer++; + if (!gPaletteFade.active) { + // Screen is hidden by the fade to white, hide egg PlaySE(SE_EGG_HATCH); sprite->invisible = TRUE; - sprite->callback = SpriteCB_Egg_5; - sprite->data[0] = 0; + sprite->callback = SpriteCB_Egg_Reveal; + sprite->sTimer = 0; } } -static void SpriteCB_Egg_5(struct Sprite* sprite) +static void SpriteCB_Egg_Reveal(struct Sprite* sprite) { - if (sprite->data[0] == 0) + if (sprite->sTimer == 0) { - gSprites[sEggHatchData->pokeSpriteID].invisible = FALSE; - StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], BATTLER_AFFINE_EMERGE); + // Reveal hatched PokĂ©mon + gSprites[sEggHatchData->monSpriteId].invisible = FALSE; + StartSpriteAffineAnim(&gSprites[sEggHatchData->monSpriteId], BATTLER_AFFINE_EMERGE); } - if (sprite->data[0] == 8) - BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, RGB_WHITEALPHA); - if (sprite->data[0] <= 9) - gSprites[sEggHatchData->pokeSpriteID].y -= 1; - if (sprite->data[0] > 40) - sprite->callback = SpriteCallbackDummy; - sprite->data[0]++; + + // Fade back from white for reveal + if (sprite->sTimer == 8) + BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_WHITEALPHA); + + if (sprite->sTimer <= 9) + gSprites[sEggHatchData->monSpriteId].y--; + + if (sprite->sTimer > 40) + sprite->callback = SpriteCallbackDummy; // Finished + + sprite->sTimer++; } +#define sVelocX data[1] +#define sVelocY data[2] +#define sAccelY data[3] +#define sDeltaX data[4] +#define sDeltaY data[5] + static void SpriteCB_EggShard(struct Sprite* sprite) { - sprite->data[4] += sprite->data[1]; - sprite->data[5] += sprite->data[2]; + sprite->sDeltaX += sprite->sVelocX; + sprite->sDeltaY += sprite->sVelocY; - sprite->x2 = sprite->data[4] / 256; - sprite->y2 = sprite->data[5] / 256; + sprite->x2 = sprite->sDeltaX / 256; + sprite->y2 = sprite->sDeltaY / 256; - sprite->data[2] += sprite->data[3]; + sprite->sVelocY += sprite->sAccelY; - if (sprite->y + sprite->y2 > sprite->y + 20 && sprite->data[2] > 0) + if (sprite->y + sprite->y2 > sprite->y + 20 && sprite->sVelocY > 0) DestroySprite(sprite); } @@ -844,20 +895,23 @@ static void CreateRandomEggShardSprite(void) { u16 spriteAnimIndex; - s16 velocity1 = sEggShardVelocities[sEggHatchData->eggShardVelocityID][0]; - s16 velocity2 = sEggShardVelocities[sEggHatchData->eggShardVelocityID][1]; - sEggHatchData->eggShardVelocityID++; - spriteAnimIndex = Random() % 4; - CreateEggShardSprite(120, 60, velocity1, velocity2, 100, spriteAnimIndex); + s16 velocityX = sEggShardVelocities[sEggHatchData->eggShardVelocityId][0]; + s16 velocityY = sEggShardVelocities[sEggHatchData->eggShardVelocityId][1]; + sEggHatchData->eggShardVelocityId++; + + // Randomly choose one of the 4 shard images + spriteAnimIndex = Random() % ARRAY_COUNT(sSpriteAnimTable_EggShard); + + CreateEggShardSprite(EGG_X, EGG_Y - 15, velocityX, velocityY, 100, spriteAnimIndex); } -static void CreateEggShardSprite(u8 x, u8 y, s16 data1, s16 data2, s16 data3, u8 spriteAnimIndex) +static void CreateEggShardSprite(u8 x, u8 y, s16 velocityX, s16 velocityY, s16 acceleration, u8 spriteAnimIndex) { - u8 spriteID = CreateSprite(&sSpriteTemplate_EggShard, x, y, 4); - gSprites[spriteID].data[1] = data1; - gSprites[spriteID].data[2] = data2; - gSprites[spriteID].data[3] = data3; - StartSpriteAnim(&gSprites[spriteID], spriteAnimIndex); + u8 spriteId = CreateSprite(&sSpriteTemplate_EggShard, x, y, 4); + gSprites[spriteId].sVelocX = velocityX; + gSprites[spriteId].sVelocY = velocityY; + gSprites[spriteId].sAccelY = acceleration; + StartSpriteAnim(&gSprites[spriteId], spriteAnimIndex); } static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed) From f78f46a1e28667632bf25c968ffb97aea84bdb15 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 3 Mar 2022 14:54:05 -0500 Subject: [PATCH 556/762] Use ARRAY_COUNT for obj event subsprite tables --- .../object_events/object_event_subsprites.h | 96 +++++++++---------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/src/data/object_events/object_event_subsprites.h b/src/data/object_events/object_event_subsprites.h index b508509cad81..808491992739 100755 --- a/src/data/object_events/object_event_subsprites.h +++ b/src/data/object_events/object_event_subsprites.h @@ -78,12 +78,12 @@ static const struct Subsprite sOamTable_16x16_4[] = { }; static const struct SubspriteTable sOamTables_16x16[] = { - {0, NULL}, - {1, sOamTable_16x16_0}, - {1, sOamTable_16x16_1}, - {2, sOamTable_16x16_2}, - {2, sOamTable_16x16_3}, - {2, sOamTable_16x16_4} + {}, + {ARRAY_COUNT(sOamTable_16x16_0), sOamTable_16x16_0}, + {ARRAY_COUNT(sOamTable_16x16_1), sOamTable_16x16_1}, + {ARRAY_COUNT(sOamTable_16x16_2), sOamTable_16x16_2}, + {ARRAY_COUNT(sOamTable_16x16_3), sOamTable_16x16_3}, + {ARRAY_COUNT(sOamTable_16x16_4), sOamTable_16x16_4} }; static const struct Subsprite sOamTable_16x32_0[] = { @@ -174,12 +174,12 @@ static const struct Subsprite sOamTable_16x32_4[] = { }; static const struct SubspriteTable sOamTables_16x32[] = { - {0, NULL}, - {1, sOamTable_16x32_0}, - {1, sOamTable_16x32_1}, - {3, sOamTable_16x32_2}, - {2, sOamTable_16x32_3}, - {2, sOamTable_16x32_4} + {}, + {ARRAY_COUNT(sOamTable_16x32_0), sOamTable_16x32_0}, + {ARRAY_COUNT(sOamTable_16x32_1), sOamTable_16x32_1}, + {ARRAY_COUNT(sOamTable_16x32_2), sOamTable_16x32_2}, + {ARRAY_COUNT(sOamTable_16x32_3), sOamTable_16x32_3}, + {ARRAY_COUNT(sOamTable_16x32_4), sOamTable_16x32_4} }; static const struct Subsprite sOamTable_32x32_0[] = { @@ -270,12 +270,12 @@ static const struct Subsprite sOamTable_32x32_4[] = { }; static const struct SubspriteTable sOamTables_32x32[] = { - {0, NULL}, - {1, sOamTable_32x32_0}, - {1, sOamTable_32x32_1}, - {3, sOamTable_32x32_2}, - {2, sOamTable_32x32_3}, - {2, sOamTable_32x32_4} + {}, + {ARRAY_COUNT(sOamTable_32x32_0), sOamTable_32x32_0}, + {ARRAY_COUNT(sOamTable_32x32_1), sOamTable_32x32_1}, + {ARRAY_COUNT(sOamTable_32x32_2), sOamTable_32x32_2}, + {ARRAY_COUNT(sOamTable_32x32_3), sOamTable_32x32_3}, + {ARRAY_COUNT(sOamTable_32x32_4), sOamTable_32x32_4} }; static const struct Subsprite sOamTable_48x48[] = { @@ -378,12 +378,12 @@ static const struct Subsprite sOamTable_48x48[] = { }; static const struct SubspriteTable sOamTables_48x48[] = { - {12, sOamTable_48x48}, - {12, sOamTable_48x48}, - {12, sOamTable_48x48}, - {12, sOamTable_48x48}, - {12, sOamTable_48x48}, - {12, sOamTable_48x48} + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48}, + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48}, + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48}, + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48}, + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48}, + {ARRAY_COUNT(sOamTable_48x48), sOamTable_48x48} }; static const struct Subsprite sOamTable_64x32_0[] = { @@ -432,12 +432,12 @@ static const struct Subsprite sOamTable_64x32_3[] = { // Unused static const struct SubspriteTable sOamTables_64x32[] = { - {0, NULL}, - {1, sOamTable_64x32_0}, - {1, sOamTable_64x32_1}, - {1, sOamTable_64x32_2}, - {1, sOamTable_64x32_3}, - {1, sOamTable_64x32_3} + {}, + {ARRAY_COUNT(sOamTable_64x32_0), sOamTable_64x32_0}, + {ARRAY_COUNT(sOamTable_64x32_1), sOamTable_64x32_1}, + {ARRAY_COUNT(sOamTable_64x32_2), sOamTable_64x32_2}, + {ARRAY_COUNT(sOamTable_64x32_3), sOamTable_64x32_3}, + {ARRAY_COUNT(sOamTable_64x32_3), sOamTable_64x32_3} }; static const struct Subsprite sOamTable_64x64_0[] = { @@ -485,12 +485,12 @@ static const struct Subsprite sOamTable_64x64_3[] = { }; static const struct SubspriteTable sOamTables_64x64[] = { - {0, NULL}, - {1, sOamTable_64x64_0}, - {1, sOamTable_64x64_1}, - {1, sOamTable_64x64_2}, - {1, sOamTable_64x64_3}, - {1, sOamTable_64x64_3} + {}, + {ARRAY_COUNT(sOamTable_64x64_0), sOamTable_64x64_0}, + {ARRAY_COUNT(sOamTable_64x64_1), sOamTable_64x64_1}, + {ARRAY_COUNT(sOamTable_64x64_2), sOamTable_64x64_2}, + {ARRAY_COUNT(sOamTable_64x64_3), sOamTable_64x64_3}, + {ARRAY_COUNT(sOamTable_64x64_3), sOamTable_64x64_3} }; static const struct Subsprite sOamTable_96x40_0[] = { @@ -987,12 +987,12 @@ static const struct Subsprite sOamTable_96x40_3[] = { // Used by SS Tidal static const struct SubspriteTable sOamTables_96x40[] = { - {15, sOamTable_96x40_0}, - {15, sOamTable_96x40_0}, - {15, sOamTable_96x40_1}, - {15, sOamTable_96x40_2}, - {15, sOamTable_96x40_3}, - {15, sOamTable_96x40_3} + {ARRAY_COUNT(sOamTable_96x40_0), sOamTable_96x40_0}, + {ARRAY_COUNT(sOamTable_96x40_0), sOamTable_96x40_0}, + {ARRAY_COUNT(sOamTable_96x40_1), sOamTable_96x40_1}, + {ARRAY_COUNT(sOamTable_96x40_2), sOamTable_96x40_2}, + {ARRAY_COUNT(sOamTable_96x40_3), sOamTable_96x40_3}, + {ARRAY_COUNT(sOamTable_96x40_3), sOamTable_96x40_3} }; static const struct Subsprite sOamTable_88x32_0[] = { @@ -1521,10 +1521,10 @@ static const struct Subsprite sOamTable_88x32_3[] = { // Used by Submarine Shadow static const struct SubspriteTable sOamTables_88x32[] = { - {16, sOamTable_88x32_0}, - {16, sOamTable_88x32_0}, - {16, sOamTable_88x32_1}, - {16, sOamTable_88x32_2}, - {16, sOamTable_88x32_3}, - {16, sOamTable_88x32_3} + {ARRAY_COUNT(sOamTable_88x32_0), sOamTable_88x32_0}, + {ARRAY_COUNT(sOamTable_88x32_0), sOamTable_88x32_0}, + {ARRAY_COUNT(sOamTable_88x32_1), sOamTable_88x32_1}, + {ARRAY_COUNT(sOamTable_88x32_2), sOamTable_88x32_2}, + {ARRAY_COUNT(sOamTable_88x32_3), sOamTable_88x32_3}, + {ARRAY_COUNT(sOamTable_88x32_3), sOamTable_88x32_3} }; From d66413557288082f0b553b209b51fede7d8810c8 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 10 Mar 2022 10:33:23 -0500 Subject: [PATCH 557/762] Add usage of battle strings table offset constant --- include/battle_arena.h | 2 +- include/constants/battle_string_ids.h | 10 +- src/battle_arena.c | 2 +- src/battle_controller_opponent.c | 2 +- src/battle_controller_player.c | 2 +- src/battle_message.c | 748 +++++++++++++------------- src/battle_tv.c | 2 +- src/evolution_scene.c | 44 +- 8 files changed, 407 insertions(+), 405 deletions(-) diff --git a/include/battle_arena.h b/include/battle_arena.h index c9a18ef61813..cc0e72c0c15f 100644 --- a/include/battle_arena.h +++ b/include/battle_arena.h @@ -6,7 +6,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state); void BattleArena_InitPoints(void); void BattleArena_AddMindPoints(u8 battler); void BattleArena_AddSkillPoints(u8 battler); -void BattleArena_DeductMindPoints(u8 battler, u16 stringId); +void BattleArena_DeductSkillPoints(u8 battler, u16 stringId); void DrawArenaRefereeTextBox(void); void EraseArenaRefereeTextBox(void); diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index c8d37aac6173..d5d0698b9177 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -1,10 +1,6 @@ #ifndef GUARD_CONSTANTS_BATTLE_STRING_IDS_H #define GUARD_CONSTANTS_BATTLE_STRING_IDS_H -#define BATTLESTRINGS_COUNT 369 - -#define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved - #define STRINGID_INTROMSG 0 #define STRINGID_INTROSENDOUT 1 #define STRINGID_RETURNMON 2 @@ -383,6 +379,12 @@ #define STRINGID_TRAINER1WINTEXT 379 #define STRINGID_TRAINER2WINTEXT 380 +#define BATTLESTRINGS_COUNT 381 + +// This is the string id that gBattleStringsTable starts with. +// String ids before this (e.g. STRINGID_INTROMSG) are not in the table, +// and are instead handled explicitly by BufferStringBattle. +#define BATTLESTRINGS_TABLE_START STRINGID_TRAINER1LOSETEXT // The below IDs are all indexes into battle message tables, // used to determine which of a set of messages to print. diff --git a/src/battle_arena.c b/src/battle_arena.c index f744a3b2b58e..a7c74366b515 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -741,7 +741,7 @@ void BattleArena_AddSkillPoints(u8 battler) } } -void BattleArena_DeductMindPoints(u8 battler, u16 stringId) +void BattleArena_DeductSkillPoints(u8 battler, u16 stringId) { s8 *skillPoints = gBattleStruct->arenaSkillPoints; diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index c3830780b353..ead5a8768a49 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1523,7 +1523,7 @@ static void OpponentHandlePrintString(void) BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; - BattleArena_DeductMindPoints(gActiveBattler, *stringId); + BattleArena_DeductSkillPoints(gActiveBattler, *stringId); } static void OpponentHandlePrintSelectionString(void) diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 2133d5b6f450..5b69030dfc37 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2551,7 +2551,7 @@ static void PlayerHandlePrintString(void) BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2; BattleTv_SetDataBasedOnString(*stringId); - BattleArena_DeductMindPoints(gActiveBattler, *stringId); + BattleArena_DeductSkillPoints(gActiveBattler, *stringId); } static void PlayerHandlePrintSelectionString(void) diff --git a/src/battle_message.c b/src/battle_message.c index 1df935694586..9d1b88ba7f39 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -514,377 +514,377 @@ static const u8 sText_Trainer2WinText[]; static const u8 sText_TwoInGameTrainersDefeated[]; static const u8 sText_Trainer2LoseText[]; -const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = -{ - [STRINGID_TRAINER1LOSETEXT - 12] = sText_Trainer1LoseText, - [STRINGID_PKMNGAINEDEXP - 12] = sText_PkmnGainedEXP, - [STRINGID_PKMNGREWTOLV - 12] = sText_PkmnGrewToLv, - [STRINGID_PKMNLEARNEDMOVE - 12] = sText_PkmnLearnedMove, - [STRINGID_TRYTOLEARNMOVE1 - 12] = sText_TryToLearnMove1, - [STRINGID_TRYTOLEARNMOVE2 - 12] = sText_TryToLearnMove2, - [STRINGID_TRYTOLEARNMOVE3 - 12] = sText_TryToLearnMove3, - [STRINGID_PKMNFORGOTMOVE - 12] = sText_PkmnForgotMove, - [STRINGID_STOPLEARNINGMOVE - 12] = sText_StopLearningMove, - [STRINGID_DIDNOTLEARNMOVE - 12] = sText_DidNotLearnMove, - [STRINGID_PKMNLEARNEDMOVE2 - 12] = sText_PkmnLearnedMove2, - [STRINGID_ATTACKMISSED - 12] = sText_AttackMissed, - [STRINGID_PKMNPROTECTEDITSELF - 12] = sText_PkmnProtectedItself, - [STRINGID_STATSWONTINCREASE2 - 12] = sText_StatsWontIncrease2, - [STRINGID_AVOIDEDDAMAGE - 12] = sText_AvoidedDamage, - [STRINGID_ITDOESNTAFFECT - 12] = sText_ItDoesntAffect, - [STRINGID_ATTACKERFAINTED - 12] = sText_AttackerFainted, - [STRINGID_TARGETFAINTED - 12] = sText_TargetFainted, - [STRINGID_PLAYERGOTMONEY - 12] = sText_PlayerGotMoney, - [STRINGID_PLAYERWHITEOUT - 12] = sText_PlayerWhiteout, - [STRINGID_PLAYERWHITEOUT2 - 12] = sText_PlayerWhiteout2, - [STRINGID_PREVENTSESCAPE - 12] = sText_PreventsEscape, - [STRINGID_HITXTIMES - 12] = sText_HitXTimes, - [STRINGID_PKMNFELLASLEEP - 12] = sText_PkmnFellAsleep, - [STRINGID_PKMNMADESLEEP - 12] = sText_PkmnMadeSleep, - [STRINGID_PKMNALREADYASLEEP - 12] = sText_PkmnAlreadyAsleep, - [STRINGID_PKMNALREADYASLEEP2 - 12] = sText_PkmnAlreadyAsleep2, - [STRINGID_PKMNWASNTAFFECTED - 12] = sText_PkmnWasntAffected, - [STRINGID_PKMNWASPOISONED - 12] = sText_PkmnWasPoisoned, - [STRINGID_PKMNPOISONEDBY - 12] = sText_PkmnPoisonedBy, - [STRINGID_PKMNHURTBYPOISON - 12] = sText_PkmnHurtByPoison, - [STRINGID_PKMNALREADYPOISONED - 12] = sText_PkmnAlreadyPoisoned, - [STRINGID_PKMNBADLYPOISONED - 12] = sText_PkmnBadlyPoisoned, - [STRINGID_PKMNENERGYDRAINED - 12] = sText_PkmnEnergyDrained, - [STRINGID_PKMNWASBURNED - 12] = sText_PkmnWasBurned, - [STRINGID_PKMNBURNEDBY - 12] = sText_PkmnBurnedBy, - [STRINGID_PKMNHURTBYBURN - 12] = sText_PkmnHurtByBurn, - [STRINGID_PKMNWASFROZEN - 12] = sText_PkmnWasFrozen, - [STRINGID_PKMNFROZENBY - 12] = sText_PkmnFrozenBy, - [STRINGID_PKMNISFROZEN - 12] = sText_PkmnIsFrozen, - [STRINGID_PKMNWASDEFROSTED - 12] = sText_PkmnWasDefrosted, - [STRINGID_PKMNWASDEFROSTED2 - 12] = sText_PkmnWasDefrosted2, - [STRINGID_PKMNWASDEFROSTEDBY - 12] = sText_PkmnWasDefrostedBy, - [STRINGID_PKMNWASPARALYZED - 12] = sText_PkmnWasParalyzed, - [STRINGID_PKMNWASPARALYZEDBY - 12] = sText_PkmnWasParalyzedBy, - [STRINGID_PKMNISPARALYZED - 12] = sText_PkmnIsParalyzed, - [STRINGID_PKMNISALREADYPARALYZED - 12] = sText_PkmnIsAlreadyParalyzed, - [STRINGID_PKMNHEALEDPARALYSIS - 12] = sText_PkmnHealedParalysis, - [STRINGID_PKMNDREAMEATEN - 12] = sText_PkmnDreamEaten, - [STRINGID_STATSWONTINCREASE - 12] = sText_StatsWontIncrease, - [STRINGID_STATSWONTDECREASE - 12] = sText_StatsWontDecrease, - [STRINGID_TEAMSTOPPEDWORKING - 12] = sText_TeamStoppedWorking, - [STRINGID_FOESTOPPEDWORKING - 12] = sText_FoeStoppedWorking, - [STRINGID_PKMNISCONFUSED - 12] = sText_PkmnIsConfused, - [STRINGID_PKMNHEALEDCONFUSION - 12] = sText_PkmnHealedConfusion, - [STRINGID_PKMNWASCONFUSED - 12] = sText_PkmnWasConfused, - [STRINGID_PKMNALREADYCONFUSED - 12] = sText_PkmnAlreadyConfused, - [STRINGID_PKMNFELLINLOVE - 12] = sText_PkmnFellInLove, - [STRINGID_PKMNINLOVE - 12] = sText_PkmnInLove, - [STRINGID_PKMNIMMOBILIZEDBYLOVE - 12] = sText_PkmnImmobilizedByLove, - [STRINGID_PKMNBLOWNAWAY - 12] = sText_PkmnBlownAway, - [STRINGID_PKMNCHANGEDTYPE - 12] = sText_PkmnChangedType, - [STRINGID_PKMNFLINCHED - 12] = sText_PkmnFlinched, - [STRINGID_PKMNREGAINEDHEALTH - 12] = sText_PkmnRegainedHealth, - [STRINGID_PKMNHPFULL - 12] = sText_PkmnHPFull, - [STRINGID_PKMNRAISEDSPDEF - 12] = sText_PkmnRaisedSpDef, - [STRINGID_PKMNRAISEDDEF - 12] = sText_PkmnRaisedDef, - [STRINGID_PKMNCOVEREDBYVEIL - 12] = sText_PkmnCoveredByVeil, - [STRINGID_PKMNUSEDSAFEGUARD - 12] = sText_PkmnUsedSafeguard, - [STRINGID_PKMNSAFEGUARDEXPIRED - 12] = sText_PkmnSafeguardExpired, - [STRINGID_PKMNWENTTOSLEEP - 12] = sText_PkmnWentToSleep, - [STRINGID_PKMNSLEPTHEALTHY - 12] = sText_PkmnSleptHealthy, - [STRINGID_PKMNWHIPPEDWHIRLWIND - 12] = sText_PkmnWhippedWhirlwind, - [STRINGID_PKMNTOOKSUNLIGHT - 12] = sText_PkmnTookSunlight, - [STRINGID_PKMNLOWEREDHEAD - 12] = sText_PkmnLoweredHead, - [STRINGID_PKMNISGLOWING - 12] = sText_PkmnIsGlowing, - [STRINGID_PKMNFLEWHIGH - 12] = sText_PkmnFlewHigh, - [STRINGID_PKMNDUGHOLE - 12] = sText_PkmnDugHole, - [STRINGID_PKMNSQUEEZEDBYBIND - 12] = sText_PkmnSqueezedByBind, - [STRINGID_PKMNTRAPPEDINVORTEX - 12] = sText_PkmnTrappedInVortex, - [STRINGID_PKMNWRAPPEDBY - 12] = sText_PkmnWrappedBy, - [STRINGID_PKMNCLAMPED - 12] = sText_PkmnClamped, - [STRINGID_PKMNHURTBY - 12] = sText_PkmnHurtBy, - [STRINGID_PKMNFREEDFROM - 12] = sText_PkmnFreedFrom, - [STRINGID_PKMNCRASHED - 12] = sText_PkmnCrashed, - [STRINGID_PKMNSHROUDEDINMIST - 12] = gText_PkmnShroudedInMist, - [STRINGID_PKMNPROTECTEDBYMIST - 12] = sText_PkmnProtectedByMist, - [STRINGID_PKMNGETTINGPUMPED - 12] = gText_PkmnGettingPumped, - [STRINGID_PKMNHITWITHRECOIL - 12] = sText_PkmnHitWithRecoil, - [STRINGID_PKMNPROTECTEDITSELF2 - 12] = sText_PkmnProtectedItself2, - [STRINGID_PKMNBUFFETEDBYSANDSTORM - 12] = sText_PkmnBuffetedBySandstorm, - [STRINGID_PKMNPELTEDBYHAIL - 12] = sText_PkmnPeltedByHail, - [STRINGID_PKMNSEEDED - 12] = sText_PkmnSeeded, - [STRINGID_PKMNEVADEDATTACK - 12] = sText_PkmnEvadedAttack, - [STRINGID_PKMNSAPPEDBYLEECHSEED - 12] = sText_PkmnSappedByLeechSeed, - [STRINGID_PKMNFASTASLEEP - 12] = sText_PkmnFastAsleep, - [STRINGID_PKMNWOKEUP - 12] = sText_PkmnWokeUp, - [STRINGID_PKMNUPROARKEPTAWAKE - 12] = sText_PkmnUproarKeptAwake, - [STRINGID_PKMNWOKEUPINUPROAR - 12] = sText_PkmnWokeUpInUproar, - [STRINGID_PKMNCAUSEDUPROAR - 12] = sText_PkmnCausedUproar, - [STRINGID_PKMNMAKINGUPROAR - 12] = sText_PkmnMakingUproar, - [STRINGID_PKMNCALMEDDOWN - 12] = sText_PkmnCalmedDown, - [STRINGID_PKMNCANTSLEEPINUPROAR - 12] = sText_PkmnCantSleepInUproar, - [STRINGID_PKMNSTOCKPILED - 12] = sText_PkmnStockpiled, - [STRINGID_PKMNCANTSTOCKPILE - 12] = sText_PkmnCantStockpile, - [STRINGID_PKMNCANTSLEEPINUPROAR2 - 12] = sText_PkmnCantSleepInUproar2, - [STRINGID_UPROARKEPTPKMNAWAKE - 12] = sText_UproarKeptPkmnAwake, - [STRINGID_PKMNSTAYEDAWAKEUSING - 12] = sText_PkmnStayedAwakeUsing, - [STRINGID_PKMNSTORINGENERGY - 12] = sText_PkmnStoringEnergy, - [STRINGID_PKMNUNLEASHEDENERGY - 12] = sText_PkmnUnleashedEnergy, - [STRINGID_PKMNFATIGUECONFUSION - 12] = sText_PkmnFatigueConfusion, - [STRINGID_PLAYERPICKEDUPMONEY - 12] = sText_PlayerPickedUpMoney, - [STRINGID_PKMNUNAFFECTED - 12] = sText_PkmnUnaffected, - [STRINGID_PKMNTRANSFORMEDINTO - 12] = sText_PkmnTransformedInto, - [STRINGID_PKMNMADESUBSTITUTE - 12] = sText_PkmnMadeSubstitute, - [STRINGID_PKMNHASSUBSTITUTE - 12] = sText_PkmnHasSubstitute, - [STRINGID_SUBSTITUTEDAMAGED - 12] = sText_SubstituteDamaged, - [STRINGID_PKMNSUBSTITUTEFADED - 12] = sText_PkmnSubstituteFaded, - [STRINGID_PKMNMUSTRECHARGE - 12] = sText_PkmnMustRecharge, - [STRINGID_PKMNRAGEBUILDING - 12] = sText_PkmnRageBuilding, - [STRINGID_PKMNMOVEWASDISABLED - 12] = sText_PkmnMoveWasDisabled, - [STRINGID_PKMNMOVEISDISABLED - 12] = sText_PkmnMoveIsDisabled, - [STRINGID_PKMNMOVEDISABLEDNOMORE - 12] = sText_PkmnMoveDisabledNoMore, - [STRINGID_PKMNGOTENCORE - 12] = sText_PkmnGotEncore, - [STRINGID_PKMNENCOREENDED - 12] = sText_PkmnEncoreEnded, - [STRINGID_PKMNTOOKAIM - 12] = sText_PkmnTookAim, - [STRINGID_PKMNSKETCHEDMOVE - 12] = sText_PkmnSketchedMove, - [STRINGID_PKMNTRYINGTOTAKEFOE - 12] = sText_PkmnTryingToTakeFoe, - [STRINGID_PKMNTOOKFOE - 12] = sText_PkmnTookFoe, - [STRINGID_PKMNREDUCEDPP - 12] = sText_PkmnReducedPP, - [STRINGID_PKMNSTOLEITEM - 12] = sText_PkmnStoleItem, - [STRINGID_TARGETCANTESCAPENOW - 12] = sText_TargetCantEscapeNow, - [STRINGID_PKMNFELLINTONIGHTMARE - 12] = sText_PkmnFellIntoNightmare, - [STRINGID_PKMNLOCKEDINNIGHTMARE - 12] = sText_PkmnLockedInNightmare, - [STRINGID_PKMNLAIDCURSE - 12] = sText_PkmnLaidCurse, - [STRINGID_PKMNAFFLICTEDBYCURSE - 12] = sText_PkmnAfflictedByCurse, - [STRINGID_SPIKESSCATTERED - 12] = sText_SpikesScattered, - [STRINGID_PKMNHURTBYSPIKES - 12] = sText_PkmnHurtBySpikes, - [STRINGID_PKMNIDENTIFIED - 12] = sText_PkmnIdentified, - [STRINGID_PKMNPERISHCOUNTFELL - 12] = sText_PkmnPerishCountFell, - [STRINGID_PKMNBRACEDITSELF - 12] = sText_PkmnBracedItself, - [STRINGID_PKMNENDUREDHIT - 12] = sText_PkmnEnduredHit, - [STRINGID_MAGNITUDESTRENGTH - 12] = sText_MagnitudeStrength, - [STRINGID_PKMNCUTHPMAXEDATTACK - 12] = sText_PkmnCutHPMaxedAttack, - [STRINGID_PKMNCOPIEDSTATCHANGES - 12] = sText_PkmnCopiedStatChanges, - [STRINGID_PKMNGOTFREE - 12] = sText_PkmnGotFree, - [STRINGID_PKMNSHEDLEECHSEED - 12] = sText_PkmnShedLeechSeed, - [STRINGID_PKMNBLEWAWAYSPIKES - 12] = sText_PkmnBlewAwaySpikes, - [STRINGID_PKMNFLEDFROMBATTLE - 12] = sText_PkmnFledFromBattle, - [STRINGID_PKMNFORESAWATTACK - 12] = sText_PkmnForesawAttack, - [STRINGID_PKMNTOOKATTACK - 12] = sText_PkmnTookAttack, - [STRINGID_PKMNATTACK - 12] = sText_PkmnAttack, - [STRINGID_PKMNCENTERATTENTION - 12] = sText_PkmnCenterAttention, - [STRINGID_PKMNCHARGINGPOWER - 12] = sText_PkmnChargingPower, - [STRINGID_NATUREPOWERTURNEDINTO - 12] = sText_NaturePowerTurnedInto, - [STRINGID_PKMNSTATUSNORMAL - 12] = sText_PkmnStatusNormal, - [STRINGID_PKMNHASNOMOVESLEFT - 12] = sText_PkmnHasNoMovesLeft, - [STRINGID_PKMNSUBJECTEDTOTORMENT - 12] = sText_PkmnSubjectedToTorment, - [STRINGID_PKMNCANTUSEMOVETORMENT - 12] = sText_PkmnCantUseMoveTorment, - [STRINGID_PKMNTIGHTENINGFOCUS - 12] = sText_PkmnTighteningFocus, - [STRINGID_PKMNFELLFORTAUNT - 12] = sText_PkmnFellForTaunt, - [STRINGID_PKMNCANTUSEMOVETAUNT - 12] = sText_PkmnCantUseMoveTaunt, - [STRINGID_PKMNREADYTOHELP - 12] = sText_PkmnReadyToHelp, - [STRINGID_PKMNSWITCHEDITEMS - 12] = sText_PkmnSwitchedItems, - [STRINGID_PKMNCOPIEDFOE - 12] = sText_PkmnCopiedFoe, - [STRINGID_PKMNMADEWISH - 12] = sText_PkmnMadeWish, - [STRINGID_PKMNWISHCAMETRUE - 12] = sText_PkmnWishCameTrue, - [STRINGID_PKMNPLANTEDROOTS - 12] = sText_PkmnPlantedRoots, - [STRINGID_PKMNABSORBEDNUTRIENTS - 12] = sText_PkmnAbsorbedNutrients, - [STRINGID_PKMNANCHOREDITSELF - 12] = sText_PkmnAnchoredItself, - [STRINGID_PKMNWASMADEDROWSY - 12] = sText_PkmnWasMadeDrowsy, - [STRINGID_PKMNKNOCKEDOFF - 12] = sText_PkmnKnockedOff, - [STRINGID_PKMNSWAPPEDABILITIES - 12] = sText_PkmnSwappedAbilities, - [STRINGID_PKMNSEALEDOPPONENTMOVE - 12] = sText_PkmnSealedOpponentMove, - [STRINGID_PKMNCANTUSEMOVESEALED - 12] = sText_PkmnCantUseMoveSealed, - [STRINGID_PKMNWANTSGRUDGE - 12] = sText_PkmnWantsGrudge, - [STRINGID_PKMNLOSTPPGRUDGE - 12] = sText_PkmnLostPPGrudge, - [STRINGID_PKMNSHROUDEDITSELF - 12] = sText_PkmnShroudedItself, - [STRINGID_PKMNMOVEBOUNCED - 12] = sText_PkmnMoveBounced, - [STRINGID_PKMNWAITSFORTARGET - 12] = sText_PkmnWaitsForTarget, - [STRINGID_PKMNSNATCHEDMOVE - 12] = sText_PkmnSnatchedMove, - [STRINGID_PKMNMADEITRAIN - 12] = sText_PkmnMadeItRain, - [STRINGID_PKMNRAISEDSPEED - 12] = sText_PkmnRaisedSpeed, - [STRINGID_PKMNPROTECTEDBY - 12] = sText_PkmnProtectedBy, - [STRINGID_PKMNPREVENTSUSAGE - 12] = sText_PkmnPreventsUsage, - [STRINGID_PKMNRESTOREDHPUSING - 12] = sText_PkmnRestoredHPUsing, - [STRINGID_PKMNCHANGEDTYPEWITH - 12] = sText_PkmnChangedTypeWith, - [STRINGID_PKMNPREVENTSPARALYSISWITH - 12] = sText_PkmnPreventsParalysisWith, - [STRINGID_PKMNPREVENTSROMANCEWITH - 12] = sText_PkmnPreventsRomanceWith, - [STRINGID_PKMNPREVENTSPOISONINGWITH - 12] = sText_PkmnPreventsPoisoningWith, - [STRINGID_PKMNPREVENTSCONFUSIONWITH - 12] = sText_PkmnPreventsConfusionWith, - [STRINGID_PKMNRAISEDFIREPOWERWITH - 12] = sText_PkmnRaisedFirePowerWith, - [STRINGID_PKMNANCHORSITSELFWITH - 12] = sText_PkmnAnchorsItselfWith, - [STRINGID_PKMNCUTSATTACKWITH - 12] = sText_PkmnCutsAttackWith, - [STRINGID_PKMNPREVENTSSTATLOSSWITH - 12] = sText_PkmnPreventsStatLossWith, - [STRINGID_PKMNHURTSWITH - 12] = sText_PkmnHurtsWith, - [STRINGID_PKMNTRACED - 12] = sText_PkmnTraced, - [STRINGID_STATSHARPLY - 12] = sText_StatSharply, - [STRINGID_STATROSE - 12] = gText_StatRose, - [STRINGID_STATHARSHLY - 12] = sText_StatHarshly, - [STRINGID_STATFELL - 12] = sText_StatFell, - [STRINGID_ATTACKERSSTATROSE - 12] = sText_AttackersStatRose, - [STRINGID_DEFENDERSSTATROSE - 12] = gText_DefendersStatRose, - [STRINGID_ATTACKERSSTATFELL - 12] = sText_AttackersStatFell, - [STRINGID_DEFENDERSSTATFELL - 12] = sText_DefendersStatFell, - [STRINGID_CRITICALHIT - 12] = sText_CriticalHit, - [STRINGID_ONEHITKO - 12] = sText_OneHitKO, - [STRINGID_123POOF - 12] = sText_123Poof, - [STRINGID_ANDELLIPSIS - 12] = sText_AndEllipsis, - [STRINGID_NOTVERYEFFECTIVE - 12] = sText_NotVeryEffective, - [STRINGID_SUPEREFFECTIVE - 12] = sText_SuperEffective, - [STRINGID_GOTAWAYSAFELY - 12] = sText_GotAwaySafely, - [STRINGID_WILDPKMNFLED - 12] = sText_WildPkmnFled, - [STRINGID_NORUNNINGFROMTRAINERS - 12] = sText_NoRunningFromTrainers, - [STRINGID_CANTESCAPE - 12] = sText_CantEscape, - [STRINGID_DONTLEAVEBIRCH - 12] = sText_DontLeaveBirch, - [STRINGID_BUTNOTHINGHAPPENED - 12] = sText_ButNothingHappened, - [STRINGID_BUTITFAILED - 12] = sText_ButItFailed, - [STRINGID_ITHURTCONFUSION - 12] = sText_ItHurtConfusion, - [STRINGID_MIRRORMOVEFAILED - 12] = sText_MirrorMoveFailed, - [STRINGID_STARTEDTORAIN - 12] = sText_StartedToRain, - [STRINGID_DOWNPOURSTARTED - 12] = sText_DownpourStarted, - [STRINGID_RAINCONTINUES - 12] = sText_RainContinues, - [STRINGID_DOWNPOURCONTINUES - 12] = sText_DownpourContinues, - [STRINGID_RAINSTOPPED - 12] = sText_RainStopped, - [STRINGID_SANDSTORMBREWED - 12] = sText_SandstormBrewed, - [STRINGID_SANDSTORMRAGES - 12] = sText_SandstormRages, - [STRINGID_SANDSTORMSUBSIDED - 12] = sText_SandstormSubsided, - [STRINGID_SUNLIGHTGOTBRIGHT - 12] = sText_SunlightGotBright, - [STRINGID_SUNLIGHTSTRONG - 12] = sText_SunlightStrong, - [STRINGID_SUNLIGHTFADED - 12] = sText_SunlightFaded, - [STRINGID_STARTEDHAIL - 12] = sText_StartedHail, - [STRINGID_HAILCONTINUES - 12] = sText_HailContinues, - [STRINGID_HAILSTOPPED - 12] = sText_HailStopped, - [STRINGID_FAILEDTOSPITUP - 12] = sText_FailedToSpitUp, - [STRINGID_FAILEDTOSWALLOW - 12] = sText_FailedToSwallow, - [STRINGID_WINDBECAMEHEATWAVE - 12] = sText_WindBecameHeatWave, - [STRINGID_STATCHANGESGONE - 12] = sText_StatChangesGone, - [STRINGID_COINSSCATTERED - 12] = sText_CoinsScattered, - [STRINGID_TOOWEAKFORSUBSTITUTE - 12] = sText_TooWeakForSubstitute, - [STRINGID_SHAREDPAIN - 12] = sText_SharedPain, - [STRINGID_BELLCHIMED - 12] = sText_BellChimed, - [STRINGID_FAINTINTHREE - 12] = sText_FaintInThree, - [STRINGID_NOPPLEFT - 12] = sText_NoPPLeft, - [STRINGID_BUTNOPPLEFT - 12] = sText_ButNoPPLeft, - [STRINGID_PLAYERUSEDITEM - 12] = sText_PlayerUsedItem, - [STRINGID_WALLYUSEDITEM - 12] = sText_WallyUsedItem, - [STRINGID_TRAINERBLOCKEDBALL - 12] = sText_TrainerBlockedBall, - [STRINGID_DONTBEATHIEF - 12] = sText_DontBeAThief, - [STRINGID_ITDODGEDBALL - 12] = sText_ItDodgedBall, - [STRINGID_YOUMISSEDPKMN - 12] = sText_YouMissedPkmn, - [STRINGID_PKMNBROKEFREE - 12] = sText_PkmnBrokeFree, - [STRINGID_ITAPPEAREDCAUGHT - 12] = sText_ItAppearedCaught, - [STRINGID_AARGHALMOSTHADIT - 12] = sText_AarghAlmostHadIt, - [STRINGID_SHOOTSOCLOSE - 12] = sText_ShootSoClose, - [STRINGID_GOTCHAPKMNCAUGHT - 12] = sText_GotchaPkmnCaught, - [STRINGID_GOTCHAPKMNCAUGHT2 - 12] = sText_GotchaPkmnCaught2, - [STRINGID_GIVENICKNAMECAPTURED - 12] = sText_GiveNicknameCaptured, - [STRINGID_PKMNSENTTOPC - 12] = sText_PkmnSentToPC, - [STRINGID_PKMNDATAADDEDTODEX - 12] = sText_PkmnDataAddedToDex, - [STRINGID_ITISRAINING - 12] = sText_ItIsRaining, - [STRINGID_SANDSTORMISRAGING - 12] = sText_SandstormIsRaging, - [STRINGID_CANTESCAPE2 - 12] = sText_CantEscape2, - [STRINGID_PKMNIGNORESASLEEP - 12] = sText_PkmnIgnoresAsleep, - [STRINGID_PKMNIGNOREDORDERS - 12] = sText_PkmnIgnoredOrders, - [STRINGID_PKMNBEGANTONAP - 12] = sText_PkmnBeganToNap, - [STRINGID_PKMNLOAFING - 12] = sText_PkmnLoafing, - [STRINGID_PKMNWONTOBEY - 12] = sText_PkmnWontObey, - [STRINGID_PKMNTURNEDAWAY - 12] = sText_PkmnTurnedAway, - [STRINGID_PKMNPRETENDNOTNOTICE - 12] = sText_PkmnPretendNotNotice, - [STRINGID_ENEMYABOUTTOSWITCHPKMN - 12] = sText_EnemyAboutToSwitchPkmn, - [STRINGID_CREPTCLOSER - 12] = sText_CreptCloser, - [STRINGID_CANTGETCLOSER - 12] = sText_CantGetCloser, - [STRINGID_PKMNWATCHINGCAREFULLY - 12] = sText_PkmnWatchingCarefully, - [STRINGID_PKMNCURIOUSABOUTX - 12] = sText_PkmnCuriousAboutX, - [STRINGID_PKMNENTHRALLEDBYX - 12] = sText_PkmnEnthralledByX, - [STRINGID_PKMNIGNOREDX - 12] = sText_PkmnIgnoredX, - [STRINGID_THREWPOKEBLOCKATPKMN - 12] = sText_ThrewPokeblockAtPkmn, - [STRINGID_OUTOFSAFARIBALLS - 12] = sText_OutOfSafariBalls, - [STRINGID_PKMNSITEMCUREDPARALYSIS - 12] = sText_PkmnsItemCuredParalysis, - [STRINGID_PKMNSITEMCUREDPOISON - 12] = sText_PkmnsItemCuredPoison, - [STRINGID_PKMNSITEMHEALEDBURN - 12] = sText_PkmnsItemHealedBurn, - [STRINGID_PKMNSITEMDEFROSTEDIT - 12] = sText_PkmnsItemDefrostedIt, - [STRINGID_PKMNSITEMWOKEIT - 12] = sText_PkmnsItemWokeIt, - [STRINGID_PKMNSITEMSNAPPEDOUT - 12] = sText_PkmnsItemSnappedOut, - [STRINGID_PKMNSITEMCUREDPROBLEM - 12] = sText_PkmnsItemCuredProblem, - [STRINGID_PKMNSITEMRESTOREDHEALTH - 12] = sText_PkmnsItemRestoredHealth, - [STRINGID_PKMNSITEMRESTOREDPP - 12] = sText_PkmnsItemRestoredPP, - [STRINGID_PKMNSITEMRESTOREDSTATUS - 12] = sText_PkmnsItemRestoredStatus, - [STRINGID_PKMNSITEMRESTOREDHPALITTLE - 12] = sText_PkmnsItemRestoredHPALittle, - [STRINGID_ITEMALLOWSONLYYMOVE - 12] = sText_ItemAllowsOnlyYMove, - [STRINGID_PKMNHUNGONWITHX - 12] = sText_PkmnHungOnWithX, - [STRINGID_EMPTYSTRING3 - 12] = gText_EmptyString3, - [STRINGID_PKMNSXPREVENTSBURNS - 12] = sText_PkmnsXPreventsBurns, - [STRINGID_PKMNSXBLOCKSY - 12] = sText_PkmnsXBlocksY, - [STRINGID_PKMNSXRESTOREDHPALITTLE2 - 12] = sText_PkmnsXRestoredHPALittle2, - [STRINGID_PKMNSXWHIPPEDUPSANDSTORM - 12] = sText_PkmnsXWhippedUpSandstorm, - [STRINGID_PKMNSXPREVENTSYLOSS - 12] = sText_PkmnsXPreventsYLoss, - [STRINGID_PKMNSXINFATUATEDY - 12] = sText_PkmnsXInfatuatedY, - [STRINGID_PKMNSXMADEYINEFFECTIVE - 12] = sText_PkmnsXMadeYIneffective, - [STRINGID_PKMNSXCUREDYPROBLEM - 12] = sText_PkmnsXCuredYProblem, - [STRINGID_ITSUCKEDLIQUIDOOZE - 12] = sText_ItSuckedLiquidOoze, - [STRINGID_PKMNTRANSFORMED - 12] = sText_PkmnTransformed, - [STRINGID_ELECTRICITYWEAKENED - 12] = sText_ElectricityWeakened, - [STRINGID_FIREWEAKENED - 12] = sText_FireWeakened, - [STRINGID_PKMNHIDUNDERWATER - 12] = sText_PkmnHidUnderwater, - [STRINGID_PKMNSPRANGUP - 12] = sText_PkmnSprangUp, - [STRINGID_HMMOVESCANTBEFORGOTTEN - 12] = sText_HMMovesCantBeForgotten, - [STRINGID_XFOUNDONEY - 12] = sText_XFoundOneY, - [STRINGID_PLAYERDEFEATEDTRAINER1 - 12] = sText_PlayerDefeatedLinkTrainerTrainer1, - [STRINGID_SOOTHINGAROMA - 12] = sText_SoothingAroma, - [STRINGID_ITEMSCANTBEUSEDNOW - 12] = sText_ItemsCantBeUsedNow, - [STRINGID_FORXCOMMAYZ - 12] = sText_ForXCommaYZ, - [STRINGID_USINGITEMSTATOFPKMNROSE - 12] = sText_UsingItemTheStatOfPkmnRose, - [STRINGID_PKMNUSEDXTOGETPUMPED - 12] = sText_PkmnUsedXToGetPumped, - [STRINGID_PKMNSXMADEYUSELESS - 12] = sText_PkmnsXMadeYUseless, - [STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = sText_PkmnTrappedBySandTomb, - [STRINGID_EMPTYSTRING4 - 12] = sText_EmptyString4, - [STRINGID_ABOOSTED - 12] = sText_ABoosted, - [STRINGID_PKMNSXINTENSIFIEDSUN - 12] = sText_PkmnsXIntensifiedSun, - [STRINGID_PKMNMAKESGROUNDMISS - 12] = sText_PkmnMakesGroundMiss, - [STRINGID_YOUTHROWABALLNOWRIGHT - 12] = sText_YouThrowABallNowRight, - [STRINGID_PKMNSXTOOKATTACK - 12] = sText_PkmnsXTookAttack, - [STRINGID_PKMNCHOSEXASDESTINY - 12] = sText_PkmnChoseXAsDestiny, - [STRINGID_PKMNLOSTFOCUS - 12] = sText_PkmnLostFocus, - [STRINGID_USENEXTPKMN - 12] = sText_UseNextPkmn, - [STRINGID_PKMNFLEDUSINGITS - 12] = sText_PkmnFledUsingIts, - [STRINGID_PKMNFLEDUSING - 12] = sText_PkmnFledUsing, - [STRINGID_PKMNWASDRAGGEDOUT - 12] = sText_PkmnWasDraggedOut, - [STRINGID_PREVENTEDFROMWORKING - 12] = sText_PreventedFromWorking, - [STRINGID_PKMNSITEMNORMALIZEDSTATUS - 12] = sText_PkmnsItemNormalizedStatus, - [STRINGID_TRAINER1USEDITEM - 12] = sText_Trainer1UsedItem, - [STRINGID_BOXISFULL - 12] = sText_BoxIsFull, - [STRINGID_PKMNAVOIDEDATTACK - 12] = sText_PkmnAvoidedAttack, - [STRINGID_PKMNSXMADEITINEFFECTIVE - 12] = sText_PkmnsXMadeItIneffective, - [STRINGID_PKMNSXPREVENTSFLINCHING - 12] = sText_PkmnsXPreventsFlinching, - [STRINGID_PKMNALREADYHASBURN - 12] = sText_PkmnAlreadyHasBurn, - [STRINGID_STATSWONTDECREASE2 - 12] = sText_StatsWontDecrease2, - [STRINGID_PKMNSXBLOCKSY2 - 12] = sText_PkmnsXBlocksY2, - [STRINGID_PKMNSXWOREOFF - 12] = sText_PkmnsXWoreOff, - [STRINGID_PKMNRAISEDDEFALITTLE - 12] = sText_PkmnRaisedDefALittle, - [STRINGID_PKMNRAISEDSPDEFALITTLE - 12] = sText_PkmnRaisedSpDefALittle, - [STRINGID_THEWALLSHATTERED - 12] = sText_TheWallShattered, - [STRINGID_PKMNSXPREVENTSYSZ - 12] = sText_PkmnsXPreventsYsZ, - [STRINGID_PKMNSXCUREDITSYPROBLEM - 12] = sText_PkmnsXCuredItsYProblem, - [STRINGID_ATTACKERCANTESCAPE - 12] = sText_AttackerCantEscape, - [STRINGID_PKMNOBTAINEDX - 12] = sText_PkmnObtainedX, - [STRINGID_PKMNOBTAINEDX2 - 12] = sText_PkmnObtainedX2, - [STRINGID_PKMNOBTAINEDXYOBTAINEDZ - 12] = sText_PkmnObtainedXYObtainedZ, - [STRINGID_BUTNOEFFECT - 12] = sText_ButNoEffect, - [STRINGID_PKMNSXHADNOEFFECTONY - 12] = sText_PkmnsXHadNoEffectOnY, - [STRINGID_TWOENEMIESDEFEATED - 12] = sText_TwoInGameTrainersDefeated, - [STRINGID_TRAINER2LOSETEXT - 12] = sText_Trainer2LoseText, - [STRINGID_PKMNINCAPABLEOFPOWER - 12] = sText_PkmnIncapableOfPower, - [STRINGID_GLINTAPPEARSINEYE - 12] = sText_GlintAppearsInEye, - [STRINGID_PKMNGETTINGINTOPOSITION - 12] = sText_PkmnGettingIntoPosition, - [STRINGID_PKMNBEGANGROWLINGDEEPLY - 12] = sText_PkmnBeganGrowlingDeeply, - [STRINGID_PKMNEAGERFORMORE - 12] = sText_PkmnEagerForMore, - [STRINGID_DEFEATEDOPPONENTBYREFEREE - 12] = sText_DefeatedOpponentByReferee, - [STRINGID_LOSTTOOPPONENTBYREFEREE - 12] = sText_LostToOpponentByReferee, - [STRINGID_TIEDOPPONENTBYREFEREE - 12] = sText_TiedOpponentByReferee, - [STRINGID_QUESTIONFORFEITMATCH - 12] = sText_QuestionForfeitMatch, - [STRINGID_FORFEITEDMATCH - 12] = sText_ForfeitedMatch, - [STRINGID_PKMNTRANSFERREDSOMEONESPC - 12] = gText_PkmnTransferredSomeonesPC, - [STRINGID_PKMNTRANSFERREDLANETTESPC - 12] = gText_PkmnTransferredLanettesPC, - [STRINGID_PKMNBOXSOMEONESPCFULL - 12] = gText_PkmnTransferredSomeonesPCBoxFull, - [STRINGID_PKMNBOXLANETTESPCFULL - 12] = gText_PkmnTransferredLanettesPCBoxFull, - [STRINGID_TRAINER1WINTEXT - 12] = sText_Trainer1WinText, - [STRINGID_TRAINER2WINTEXT - 12] = sText_Trainer2WinText, +const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT - BATTLESTRINGS_TABLE_START] = +{ + [STRINGID_TRAINER1LOSETEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer1LoseText, + [STRINGID_PKMNGAINEDEXP - BATTLESTRINGS_TABLE_START] = sText_PkmnGainedEXP, + [STRINGID_PKMNGREWTOLV - BATTLESTRINGS_TABLE_START] = sText_PkmnGrewToLv, + [STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnLearnedMove, + [STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove1, + [STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove2, + [STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove3, + [STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnForgotMove, + [STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_TABLE_START] = sText_StopLearningMove, + [STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_TABLE_START] = sText_DidNotLearnMove, + [STRINGID_PKMNLEARNEDMOVE2 - BATTLESTRINGS_TABLE_START] = sText_PkmnLearnedMove2, + [STRINGID_ATTACKMISSED - BATTLESTRINGS_TABLE_START] = sText_AttackMissed, + [STRINGID_PKMNPROTECTEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedItself, + [STRINGID_STATSWONTINCREASE2 - BATTLESTRINGS_TABLE_START] = sText_StatsWontIncrease2, + [STRINGID_AVOIDEDDAMAGE - BATTLESTRINGS_TABLE_START] = sText_AvoidedDamage, + [STRINGID_ITDOESNTAFFECT - BATTLESTRINGS_TABLE_START] = sText_ItDoesntAffect, + [STRINGID_ATTACKERFAINTED - BATTLESTRINGS_TABLE_START] = sText_AttackerFainted, + [STRINGID_TARGETFAINTED - BATTLESTRINGS_TABLE_START] = sText_TargetFainted, + [STRINGID_PLAYERGOTMONEY - BATTLESTRINGS_TABLE_START] = sText_PlayerGotMoney, + [STRINGID_PLAYERWHITEOUT - BATTLESTRINGS_TABLE_START] = sText_PlayerWhiteout, + [STRINGID_PLAYERWHITEOUT2 - BATTLESTRINGS_TABLE_START] = sText_PlayerWhiteout2, + [STRINGID_PREVENTSESCAPE - BATTLESTRINGS_TABLE_START] = sText_PreventsEscape, + [STRINGID_HITXTIMES - BATTLESTRINGS_TABLE_START] = sText_HitXTimes, + [STRINGID_PKMNFELLASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnFellAsleep, + [STRINGID_PKMNMADESLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeSleep, + [STRINGID_PKMNALREADYASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyAsleep, + [STRINGID_PKMNALREADYASLEEP2 - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyAsleep2, + [STRINGID_PKMNWASNTAFFECTED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasntAffected, + [STRINGID_PKMNWASPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasPoisoned, + [STRINGID_PKMNPOISONEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnPoisonedBy, + [STRINGID_PKMNHURTBYPOISON - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtByPoison, + [STRINGID_PKMNALREADYPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyPoisoned, + [STRINGID_PKMNBADLYPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnBadlyPoisoned, + [STRINGID_PKMNENERGYDRAINED - BATTLESTRINGS_TABLE_START] = sText_PkmnEnergyDrained, + [STRINGID_PKMNWASBURNED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasBurned, + [STRINGID_PKMNBURNEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnBurnedBy, + [STRINGID_PKMNHURTBYBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtByBurn, + [STRINGID_PKMNWASFROZEN - BATTLESTRINGS_TABLE_START] = sText_PkmnWasFrozen, + [STRINGID_PKMNFROZENBY - BATTLESTRINGS_TABLE_START] = sText_PkmnFrozenBy, + [STRINGID_PKMNISFROZEN - BATTLESTRINGS_TABLE_START] = sText_PkmnIsFrozen, + [STRINGID_PKMNWASDEFROSTED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrosted, + [STRINGID_PKMNWASDEFROSTED2 - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrosted2, + [STRINGID_PKMNWASDEFROSTEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrostedBy, + [STRINGID_PKMNWASPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasParalyzed, + [STRINGID_PKMNWASPARALYZEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasParalyzedBy, + [STRINGID_PKMNISPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsParalyzed, + [STRINGID_PKMNISALREADYPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsAlreadyParalyzed, + [STRINGID_PKMNHEALEDPARALYSIS - BATTLESTRINGS_TABLE_START] = sText_PkmnHealedParalysis, + [STRINGID_PKMNDREAMEATEN - BATTLESTRINGS_TABLE_START] = sText_PkmnDreamEaten, + [STRINGID_STATSWONTINCREASE - BATTLESTRINGS_TABLE_START] = sText_StatsWontIncrease, + [STRINGID_STATSWONTDECREASE - BATTLESTRINGS_TABLE_START] = sText_StatsWontDecrease, + [STRINGID_TEAMSTOPPEDWORKING - BATTLESTRINGS_TABLE_START] = sText_TeamStoppedWorking, + [STRINGID_FOESTOPPEDWORKING - BATTLESTRINGS_TABLE_START] = sText_FoeStoppedWorking, + [STRINGID_PKMNISCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsConfused, + [STRINGID_PKMNHEALEDCONFUSION - BATTLESTRINGS_TABLE_START] = sText_PkmnHealedConfusion, + [STRINGID_PKMNWASCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasConfused, + [STRINGID_PKMNALREADYCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyConfused, + [STRINGID_PKMNFELLINLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnFellInLove, + [STRINGID_PKMNINLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnInLove, + [STRINGID_PKMNIMMOBILIZEDBYLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnImmobilizedByLove, + [STRINGID_PKMNBLOWNAWAY - BATTLESTRINGS_TABLE_START] = sText_PkmnBlownAway, + [STRINGID_PKMNCHANGEDTYPE - BATTLESTRINGS_TABLE_START] = sText_PkmnChangedType, + [STRINGID_PKMNFLINCHED - BATTLESTRINGS_TABLE_START] = sText_PkmnFlinched, + [STRINGID_PKMNREGAINEDHEALTH - BATTLESTRINGS_TABLE_START] = sText_PkmnRegainedHealth, + [STRINGID_PKMNHPFULL - BATTLESTRINGS_TABLE_START] = sText_PkmnHPFull, + [STRINGID_PKMNRAISEDSPDEF - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpDef, + [STRINGID_PKMNRAISEDDEF - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedDef, + [STRINGID_PKMNCOVEREDBYVEIL - BATTLESTRINGS_TABLE_START] = sText_PkmnCoveredByVeil, + [STRINGID_PKMNUSEDSAFEGUARD - BATTLESTRINGS_TABLE_START] = sText_PkmnUsedSafeguard, + [STRINGID_PKMNSAFEGUARDEXPIRED - BATTLESTRINGS_TABLE_START] = sText_PkmnSafeguardExpired, + [STRINGID_PKMNWENTTOSLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnWentToSleep, + [STRINGID_PKMNSLEPTHEALTHY - BATTLESTRINGS_TABLE_START] = sText_PkmnSleptHealthy, + [STRINGID_PKMNWHIPPEDWHIRLWIND - BATTLESTRINGS_TABLE_START] = sText_PkmnWhippedWhirlwind, + [STRINGID_PKMNTOOKSUNLIGHT - BATTLESTRINGS_TABLE_START] = sText_PkmnTookSunlight, + [STRINGID_PKMNLOWEREDHEAD - BATTLESTRINGS_TABLE_START] = sText_PkmnLoweredHead, + [STRINGID_PKMNISGLOWING - BATTLESTRINGS_TABLE_START] = sText_PkmnIsGlowing, + [STRINGID_PKMNFLEWHIGH - BATTLESTRINGS_TABLE_START] = sText_PkmnFlewHigh, + [STRINGID_PKMNDUGHOLE - BATTLESTRINGS_TABLE_START] = sText_PkmnDugHole, + [STRINGID_PKMNSQUEEZEDBYBIND - BATTLESTRINGS_TABLE_START] = sText_PkmnSqueezedByBind, + [STRINGID_PKMNTRAPPEDINVORTEX - BATTLESTRINGS_TABLE_START] = sText_PkmnTrappedInVortex, + [STRINGID_PKMNWRAPPEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWrappedBy, + [STRINGID_PKMNCLAMPED - BATTLESTRINGS_TABLE_START] = sText_PkmnClamped, + [STRINGID_PKMNHURTBY - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtBy, + [STRINGID_PKMNFREEDFROM - BATTLESTRINGS_TABLE_START] = sText_PkmnFreedFrom, + [STRINGID_PKMNCRASHED - BATTLESTRINGS_TABLE_START] = sText_PkmnCrashed, + [STRINGID_PKMNSHROUDEDINMIST - BATTLESTRINGS_TABLE_START] = gText_PkmnShroudedInMist, + [STRINGID_PKMNPROTECTEDBYMIST - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedByMist, + [STRINGID_PKMNGETTINGPUMPED - BATTLESTRINGS_TABLE_START] = gText_PkmnGettingPumped, + [STRINGID_PKMNHITWITHRECOIL - BATTLESTRINGS_TABLE_START] = sText_PkmnHitWithRecoil, + [STRINGID_PKMNPROTECTEDITSELF2 - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedItself2, + [STRINGID_PKMNBUFFETEDBYSANDSTORM - BATTLESTRINGS_TABLE_START] = sText_PkmnBuffetedBySandstorm, + [STRINGID_PKMNPELTEDBYHAIL - BATTLESTRINGS_TABLE_START] = sText_PkmnPeltedByHail, + [STRINGID_PKMNSEEDED - BATTLESTRINGS_TABLE_START] = sText_PkmnSeeded, + [STRINGID_PKMNEVADEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnEvadedAttack, + [STRINGID_PKMNSAPPEDBYLEECHSEED - BATTLESTRINGS_TABLE_START] = sText_PkmnSappedByLeechSeed, + [STRINGID_PKMNFASTASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnFastAsleep, + [STRINGID_PKMNWOKEUP - BATTLESTRINGS_TABLE_START] = sText_PkmnWokeUp, + [STRINGID_PKMNUPROARKEPTAWAKE - BATTLESTRINGS_TABLE_START] = sText_PkmnUproarKeptAwake, + [STRINGID_PKMNWOKEUPINUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnWokeUpInUproar, + [STRINGID_PKMNCAUSEDUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnCausedUproar, + [STRINGID_PKMNMAKINGUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnMakingUproar, + [STRINGID_PKMNCALMEDDOWN - BATTLESTRINGS_TABLE_START] = sText_PkmnCalmedDown, + [STRINGID_PKMNCANTSLEEPINUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnCantSleepInUproar, + [STRINGID_PKMNSTOCKPILED - BATTLESTRINGS_TABLE_START] = sText_PkmnStockpiled, + [STRINGID_PKMNCANTSTOCKPILE - BATTLESTRINGS_TABLE_START] = sText_PkmnCantStockpile, + [STRINGID_PKMNCANTSLEEPINUPROAR2 - BATTLESTRINGS_TABLE_START] = sText_PkmnCantSleepInUproar2, + [STRINGID_UPROARKEPTPKMNAWAKE - BATTLESTRINGS_TABLE_START] = sText_UproarKeptPkmnAwake, + [STRINGID_PKMNSTAYEDAWAKEUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnStayedAwakeUsing, + [STRINGID_PKMNSTORINGENERGY - BATTLESTRINGS_TABLE_START] = sText_PkmnStoringEnergy, + [STRINGID_PKMNUNLEASHEDENERGY - BATTLESTRINGS_TABLE_START] = sText_PkmnUnleashedEnergy, + [STRINGID_PKMNFATIGUECONFUSION - BATTLESTRINGS_TABLE_START] = sText_PkmnFatigueConfusion, + [STRINGID_PLAYERPICKEDUPMONEY - BATTLESTRINGS_TABLE_START] = sText_PlayerPickedUpMoney, + [STRINGID_PKMNUNAFFECTED - BATTLESTRINGS_TABLE_START] = sText_PkmnUnaffected, + [STRINGID_PKMNTRANSFORMEDINTO - BATTLESTRINGS_TABLE_START] = sText_PkmnTransformedInto, + [STRINGID_PKMNMADESUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeSubstitute, + [STRINGID_PKMNHASSUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_PkmnHasSubstitute, + [STRINGID_SUBSTITUTEDAMAGED - BATTLESTRINGS_TABLE_START] = sText_SubstituteDamaged, + [STRINGID_PKMNSUBSTITUTEFADED - BATTLESTRINGS_TABLE_START] = sText_PkmnSubstituteFaded, + [STRINGID_PKMNMUSTRECHARGE - BATTLESTRINGS_TABLE_START] = sText_PkmnMustRecharge, + [STRINGID_PKMNRAGEBUILDING - BATTLESTRINGS_TABLE_START] = sText_PkmnRageBuilding, + [STRINGID_PKMNMOVEWASDISABLED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveWasDisabled, + [STRINGID_PKMNMOVEISDISABLED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveIsDisabled, + [STRINGID_PKMNMOVEDISABLEDNOMORE - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveDisabledNoMore, + [STRINGID_PKMNGOTENCORE - BATTLESTRINGS_TABLE_START] = sText_PkmnGotEncore, + [STRINGID_PKMNENCOREENDED - BATTLESTRINGS_TABLE_START] = sText_PkmnEncoreEnded, + [STRINGID_PKMNTOOKAIM - BATTLESTRINGS_TABLE_START] = sText_PkmnTookAim, + [STRINGID_PKMNSKETCHEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSketchedMove, + [STRINGID_PKMNTRYINGTOTAKEFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnTryingToTakeFoe, + [STRINGID_PKMNTOOKFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnTookFoe, + [STRINGID_PKMNREDUCEDPP - BATTLESTRINGS_TABLE_START] = sText_PkmnReducedPP, + [STRINGID_PKMNSTOLEITEM - BATTLESTRINGS_TABLE_START] = sText_PkmnStoleItem, + [STRINGID_TARGETCANTESCAPENOW - BATTLESTRINGS_TABLE_START] = sText_TargetCantEscapeNow, + [STRINGID_PKMNFELLINTONIGHTMARE - BATTLESTRINGS_TABLE_START] = sText_PkmnFellIntoNightmare, + [STRINGID_PKMNLOCKEDINNIGHTMARE - BATTLESTRINGS_TABLE_START] = sText_PkmnLockedInNightmare, + [STRINGID_PKMNLAIDCURSE - BATTLESTRINGS_TABLE_START] = sText_PkmnLaidCurse, + [STRINGID_PKMNAFFLICTEDBYCURSE - BATTLESTRINGS_TABLE_START] = sText_PkmnAfflictedByCurse, + [STRINGID_SPIKESSCATTERED - BATTLESTRINGS_TABLE_START] = sText_SpikesScattered, + [STRINGID_PKMNHURTBYSPIKES - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtBySpikes, + [STRINGID_PKMNIDENTIFIED - BATTLESTRINGS_TABLE_START] = sText_PkmnIdentified, + [STRINGID_PKMNPERISHCOUNTFELL - BATTLESTRINGS_TABLE_START] = sText_PkmnPerishCountFell, + [STRINGID_PKMNBRACEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnBracedItself, + [STRINGID_PKMNENDUREDHIT - BATTLESTRINGS_TABLE_START] = sText_PkmnEnduredHit, + [STRINGID_MAGNITUDESTRENGTH - BATTLESTRINGS_TABLE_START] = sText_MagnitudeStrength, + [STRINGID_PKMNCUTHPMAXEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnCutHPMaxedAttack, + [STRINGID_PKMNCOPIEDSTATCHANGES - BATTLESTRINGS_TABLE_START] = sText_PkmnCopiedStatChanges, + [STRINGID_PKMNGOTFREE - BATTLESTRINGS_TABLE_START] = sText_PkmnGotFree, + [STRINGID_PKMNSHEDLEECHSEED - BATTLESTRINGS_TABLE_START] = sText_PkmnShedLeechSeed, + [STRINGID_PKMNBLEWAWAYSPIKES - BATTLESTRINGS_TABLE_START] = sText_PkmnBlewAwaySpikes, + [STRINGID_PKMNFLEDFROMBATTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnFledFromBattle, + [STRINGID_PKMNFORESAWATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnForesawAttack, + [STRINGID_PKMNTOOKATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnTookAttack, + [STRINGID_PKMNATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnAttack, + [STRINGID_PKMNCENTERATTENTION - BATTLESTRINGS_TABLE_START] = sText_PkmnCenterAttention, + [STRINGID_PKMNCHARGINGPOWER - BATTLESTRINGS_TABLE_START] = sText_PkmnChargingPower, + [STRINGID_NATUREPOWERTURNEDINTO - BATTLESTRINGS_TABLE_START] = sText_NaturePowerTurnedInto, + [STRINGID_PKMNSTATUSNORMAL - BATTLESTRINGS_TABLE_START] = sText_PkmnStatusNormal, + [STRINGID_PKMNHASNOMOVESLEFT - BATTLESTRINGS_TABLE_START] = sText_PkmnHasNoMovesLeft, + [STRINGID_PKMNSUBJECTEDTOTORMENT - BATTLESTRINGS_TABLE_START] = sText_PkmnSubjectedToTorment, + [STRINGID_PKMNCANTUSEMOVETORMENT - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveTorment, + [STRINGID_PKMNTIGHTENINGFOCUS - BATTLESTRINGS_TABLE_START] = sText_PkmnTighteningFocus, + [STRINGID_PKMNFELLFORTAUNT - BATTLESTRINGS_TABLE_START] = sText_PkmnFellForTaunt, + [STRINGID_PKMNCANTUSEMOVETAUNT - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveTaunt, + [STRINGID_PKMNREADYTOHELP - BATTLESTRINGS_TABLE_START] = sText_PkmnReadyToHelp, + [STRINGID_PKMNSWITCHEDITEMS - BATTLESTRINGS_TABLE_START] = sText_PkmnSwitchedItems, + [STRINGID_PKMNCOPIEDFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnCopiedFoe, + [STRINGID_PKMNMADEWISH - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeWish, + [STRINGID_PKMNWISHCAMETRUE - BATTLESTRINGS_TABLE_START] = sText_PkmnWishCameTrue, + [STRINGID_PKMNPLANTEDROOTS - BATTLESTRINGS_TABLE_START] = sText_PkmnPlantedRoots, + [STRINGID_PKMNABSORBEDNUTRIENTS - BATTLESTRINGS_TABLE_START] = sText_PkmnAbsorbedNutrients, + [STRINGID_PKMNANCHOREDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnAnchoredItself, + [STRINGID_PKMNWASMADEDROWSY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasMadeDrowsy, + [STRINGID_PKMNKNOCKEDOFF - BATTLESTRINGS_TABLE_START] = sText_PkmnKnockedOff, + [STRINGID_PKMNSWAPPEDABILITIES - BATTLESTRINGS_TABLE_START] = sText_PkmnSwappedAbilities, + [STRINGID_PKMNSEALEDOPPONENTMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSealedOpponentMove, + [STRINGID_PKMNCANTUSEMOVESEALED - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveSealed, + [STRINGID_PKMNWANTSGRUDGE - BATTLESTRINGS_TABLE_START] = sText_PkmnWantsGrudge, + [STRINGID_PKMNLOSTPPGRUDGE - BATTLESTRINGS_TABLE_START] = sText_PkmnLostPPGrudge, + [STRINGID_PKMNSHROUDEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnShroudedItself, + [STRINGID_PKMNMOVEBOUNCED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveBounced, + [STRINGID_PKMNWAITSFORTARGET - BATTLESTRINGS_TABLE_START] = sText_PkmnWaitsForTarget, + [STRINGID_PKMNSNATCHEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSnatchedMove, + [STRINGID_PKMNMADEITRAIN - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeItRain, + [STRINGID_PKMNRAISEDSPEED - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpeed, + [STRINGID_PKMNPROTECTEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedBy, + [STRINGID_PKMNPREVENTSUSAGE - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsUsage, + [STRINGID_PKMNRESTOREDHPUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnRestoredHPUsing, + [STRINGID_PKMNCHANGEDTYPEWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnChangedTypeWith, + [STRINGID_PKMNPREVENTSPARALYSISWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsParalysisWith, + [STRINGID_PKMNPREVENTSROMANCEWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsRomanceWith, + [STRINGID_PKMNPREVENTSPOISONINGWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsPoisoningWith, + [STRINGID_PKMNPREVENTSCONFUSIONWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsConfusionWith, + [STRINGID_PKMNRAISEDFIREPOWERWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedFirePowerWith, + [STRINGID_PKMNANCHORSITSELFWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnAnchorsItselfWith, + [STRINGID_PKMNCUTSATTACKWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnCutsAttackWith, + [STRINGID_PKMNPREVENTSSTATLOSSWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsStatLossWith, + [STRINGID_PKMNHURTSWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtsWith, + [STRINGID_PKMNTRACED - BATTLESTRINGS_TABLE_START] = sText_PkmnTraced, + [STRINGID_STATSHARPLY - BATTLESTRINGS_TABLE_START] = sText_StatSharply, + [STRINGID_STATROSE - BATTLESTRINGS_TABLE_START] = gText_StatRose, + [STRINGID_STATHARSHLY - BATTLESTRINGS_TABLE_START] = sText_StatHarshly, + [STRINGID_STATFELL - BATTLESTRINGS_TABLE_START] = sText_StatFell, + [STRINGID_ATTACKERSSTATROSE - BATTLESTRINGS_TABLE_START] = sText_AttackersStatRose, + [STRINGID_DEFENDERSSTATROSE - BATTLESTRINGS_TABLE_START] = gText_DefendersStatRose, + [STRINGID_ATTACKERSSTATFELL - BATTLESTRINGS_TABLE_START] = sText_AttackersStatFell, + [STRINGID_DEFENDERSSTATFELL - BATTLESTRINGS_TABLE_START] = sText_DefendersStatFell, + [STRINGID_CRITICALHIT - BATTLESTRINGS_TABLE_START] = sText_CriticalHit, + [STRINGID_ONEHITKO - BATTLESTRINGS_TABLE_START] = sText_OneHitKO, + [STRINGID_123POOF - BATTLESTRINGS_TABLE_START] = sText_123Poof, + [STRINGID_ANDELLIPSIS - BATTLESTRINGS_TABLE_START] = sText_AndEllipsis, + [STRINGID_NOTVERYEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_NotVeryEffective, + [STRINGID_SUPEREFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_SuperEffective, + [STRINGID_GOTAWAYSAFELY - BATTLESTRINGS_TABLE_START] = sText_GotAwaySafely, + [STRINGID_WILDPKMNFLED - BATTLESTRINGS_TABLE_START] = sText_WildPkmnFled, + [STRINGID_NORUNNINGFROMTRAINERS - BATTLESTRINGS_TABLE_START] = sText_NoRunningFromTrainers, + [STRINGID_CANTESCAPE - BATTLESTRINGS_TABLE_START] = sText_CantEscape, + [STRINGID_DONTLEAVEBIRCH - BATTLESTRINGS_TABLE_START] = sText_DontLeaveBirch, + [STRINGID_BUTNOTHINGHAPPENED - BATTLESTRINGS_TABLE_START] = sText_ButNothingHappened, + [STRINGID_BUTITFAILED - BATTLESTRINGS_TABLE_START] = sText_ButItFailed, + [STRINGID_ITHURTCONFUSION - BATTLESTRINGS_TABLE_START] = sText_ItHurtConfusion, + [STRINGID_MIRRORMOVEFAILED - BATTLESTRINGS_TABLE_START] = sText_MirrorMoveFailed, + [STRINGID_STARTEDTORAIN - BATTLESTRINGS_TABLE_START] = sText_StartedToRain, + [STRINGID_DOWNPOURSTARTED - BATTLESTRINGS_TABLE_START] = sText_DownpourStarted, + [STRINGID_RAINCONTINUES - BATTLESTRINGS_TABLE_START] = sText_RainContinues, + [STRINGID_DOWNPOURCONTINUES - BATTLESTRINGS_TABLE_START] = sText_DownpourContinues, + [STRINGID_RAINSTOPPED - BATTLESTRINGS_TABLE_START] = sText_RainStopped, + [STRINGID_SANDSTORMBREWED - BATTLESTRINGS_TABLE_START] = sText_SandstormBrewed, + [STRINGID_SANDSTORMRAGES - BATTLESTRINGS_TABLE_START] = sText_SandstormRages, + [STRINGID_SANDSTORMSUBSIDED - BATTLESTRINGS_TABLE_START] = sText_SandstormSubsided, + [STRINGID_SUNLIGHTGOTBRIGHT - BATTLESTRINGS_TABLE_START] = sText_SunlightGotBright, + [STRINGID_SUNLIGHTSTRONG - BATTLESTRINGS_TABLE_START] = sText_SunlightStrong, + [STRINGID_SUNLIGHTFADED - BATTLESTRINGS_TABLE_START] = sText_SunlightFaded, + [STRINGID_STARTEDHAIL - BATTLESTRINGS_TABLE_START] = sText_StartedHail, + [STRINGID_HAILCONTINUES - BATTLESTRINGS_TABLE_START] = sText_HailContinues, + [STRINGID_HAILSTOPPED - BATTLESTRINGS_TABLE_START] = sText_HailStopped, + [STRINGID_FAILEDTOSPITUP - BATTLESTRINGS_TABLE_START] = sText_FailedToSpitUp, + [STRINGID_FAILEDTOSWALLOW - BATTLESTRINGS_TABLE_START] = sText_FailedToSwallow, + [STRINGID_WINDBECAMEHEATWAVE - BATTLESTRINGS_TABLE_START] = sText_WindBecameHeatWave, + [STRINGID_STATCHANGESGONE - BATTLESTRINGS_TABLE_START] = sText_StatChangesGone, + [STRINGID_COINSSCATTERED - BATTLESTRINGS_TABLE_START] = sText_CoinsScattered, + [STRINGID_TOOWEAKFORSUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_TooWeakForSubstitute, + [STRINGID_SHAREDPAIN - BATTLESTRINGS_TABLE_START] = sText_SharedPain, + [STRINGID_BELLCHIMED - BATTLESTRINGS_TABLE_START] = sText_BellChimed, + [STRINGID_FAINTINTHREE - BATTLESTRINGS_TABLE_START] = sText_FaintInThree, + [STRINGID_NOPPLEFT - BATTLESTRINGS_TABLE_START] = sText_NoPPLeft, + [STRINGID_BUTNOPPLEFT - BATTLESTRINGS_TABLE_START] = sText_ButNoPPLeft, + [STRINGID_PLAYERUSEDITEM - BATTLESTRINGS_TABLE_START] = sText_PlayerUsedItem, + [STRINGID_WALLYUSEDITEM - BATTLESTRINGS_TABLE_START] = sText_WallyUsedItem, + [STRINGID_TRAINERBLOCKEDBALL - BATTLESTRINGS_TABLE_START] = sText_TrainerBlockedBall, + [STRINGID_DONTBEATHIEF - BATTLESTRINGS_TABLE_START] = sText_DontBeAThief, + [STRINGID_ITDODGEDBALL - BATTLESTRINGS_TABLE_START] = sText_ItDodgedBall, + [STRINGID_YOUMISSEDPKMN - BATTLESTRINGS_TABLE_START] = sText_YouMissedPkmn, + [STRINGID_PKMNBROKEFREE - BATTLESTRINGS_TABLE_START] = sText_PkmnBrokeFree, + [STRINGID_ITAPPEAREDCAUGHT - BATTLESTRINGS_TABLE_START] = sText_ItAppearedCaught, + [STRINGID_AARGHALMOSTHADIT - BATTLESTRINGS_TABLE_START] = sText_AarghAlmostHadIt, + [STRINGID_SHOOTSOCLOSE - BATTLESTRINGS_TABLE_START] = sText_ShootSoClose, + [STRINGID_GOTCHAPKMNCAUGHT - BATTLESTRINGS_TABLE_START] = sText_GotchaPkmnCaught, + [STRINGID_GOTCHAPKMNCAUGHT2 - BATTLESTRINGS_TABLE_START] = sText_GotchaPkmnCaught2, + [STRINGID_GIVENICKNAMECAPTURED - BATTLESTRINGS_TABLE_START] = sText_GiveNicknameCaptured, + [STRINGID_PKMNSENTTOPC - BATTLESTRINGS_TABLE_START] = sText_PkmnSentToPC, + [STRINGID_PKMNDATAADDEDTODEX - BATTLESTRINGS_TABLE_START] = sText_PkmnDataAddedToDex, + [STRINGID_ITISRAINING - BATTLESTRINGS_TABLE_START] = sText_ItIsRaining, + [STRINGID_SANDSTORMISRAGING - BATTLESTRINGS_TABLE_START] = sText_SandstormIsRaging, + [STRINGID_CANTESCAPE2 - BATTLESTRINGS_TABLE_START] = sText_CantEscape2, + [STRINGID_PKMNIGNORESASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnIgnoresAsleep, + [STRINGID_PKMNIGNOREDORDERS - BATTLESTRINGS_TABLE_START] = sText_PkmnIgnoredOrders, + [STRINGID_PKMNBEGANTONAP - BATTLESTRINGS_TABLE_START] = sText_PkmnBeganToNap, + [STRINGID_PKMNLOAFING - BATTLESTRINGS_TABLE_START] = sText_PkmnLoafing, + [STRINGID_PKMNWONTOBEY - BATTLESTRINGS_TABLE_START] = sText_PkmnWontObey, + [STRINGID_PKMNTURNEDAWAY - BATTLESTRINGS_TABLE_START] = sText_PkmnTurnedAway, + [STRINGID_PKMNPRETENDNOTNOTICE - BATTLESTRINGS_TABLE_START] = sText_PkmnPretendNotNotice, + [STRINGID_ENEMYABOUTTOSWITCHPKMN - BATTLESTRINGS_TABLE_START] = sText_EnemyAboutToSwitchPkmn, + [STRINGID_CREPTCLOSER - BATTLESTRINGS_TABLE_START] = sText_CreptCloser, + [STRINGID_CANTGETCLOSER - BATTLESTRINGS_TABLE_START] = sText_CantGetCloser, + [STRINGID_PKMNWATCHINGCAREFULLY - BATTLESTRINGS_TABLE_START] = sText_PkmnWatchingCarefully, + [STRINGID_PKMNCURIOUSABOUTX - BATTLESTRINGS_TABLE_START] = sText_PkmnCuriousAboutX, + [STRINGID_PKMNENTHRALLEDBYX - BATTLESTRINGS_TABLE_START] = sText_PkmnEnthralledByX, + [STRINGID_PKMNIGNOREDX - BATTLESTRINGS_TABLE_START] = sText_PkmnIgnoredX, + [STRINGID_THREWPOKEBLOCKATPKMN - BATTLESTRINGS_TABLE_START] = sText_ThrewPokeblockAtPkmn, + [STRINGID_OUTOFSAFARIBALLS - BATTLESTRINGS_TABLE_START] = sText_OutOfSafariBalls, + [STRINGID_PKMNSITEMCUREDPARALYSIS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredParalysis, + [STRINGID_PKMNSITEMCUREDPOISON - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredPoison, + [STRINGID_PKMNSITEMHEALEDBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemHealedBurn, + [STRINGID_PKMNSITEMDEFROSTEDIT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemDefrostedIt, + [STRINGID_PKMNSITEMWOKEIT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemWokeIt, + [STRINGID_PKMNSITEMSNAPPEDOUT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemSnappedOut, + [STRINGID_PKMNSITEMCUREDPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredProblem, + [STRINGID_PKMNSITEMRESTOREDHEALTH - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredHealth, + [STRINGID_PKMNSITEMRESTOREDPP - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredPP, + [STRINGID_PKMNSITEMRESTOREDSTATUS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredStatus, + [STRINGID_PKMNSITEMRESTOREDHPALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredHPALittle, + [STRINGID_ITEMALLOWSONLYYMOVE - BATTLESTRINGS_TABLE_START] = sText_ItemAllowsOnlyYMove, + [STRINGID_PKMNHUNGONWITHX - BATTLESTRINGS_TABLE_START] = sText_PkmnHungOnWithX, + [STRINGID_EMPTYSTRING3 - BATTLESTRINGS_TABLE_START] = gText_EmptyString3, + [STRINGID_PKMNSXPREVENTSBURNS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsBurns, + [STRINGID_PKMNSXBLOCKSY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXBlocksY, + [STRINGID_PKMNSXRESTOREDHPALITTLE2 - BATTLESTRINGS_TABLE_START] = sText_PkmnsXRestoredHPALittle2, + [STRINGID_PKMNSXWHIPPEDUPSANDSTORM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXWhippedUpSandstorm, + [STRINGID_PKMNSXPREVENTSYLOSS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsYLoss, + [STRINGID_PKMNSXINFATUATEDY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXInfatuatedY, + [STRINGID_PKMNSXMADEYINEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeYIneffective, + [STRINGID_PKMNSXCUREDYPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXCuredYProblem, + [STRINGID_ITSUCKEDLIQUIDOOZE - BATTLESTRINGS_TABLE_START] = sText_ItSuckedLiquidOoze, + [STRINGID_PKMNTRANSFORMED - BATTLESTRINGS_TABLE_START] = sText_PkmnTransformed, + [STRINGID_ELECTRICITYWEAKENED - BATTLESTRINGS_TABLE_START] = sText_ElectricityWeakened, + [STRINGID_FIREWEAKENED - BATTLESTRINGS_TABLE_START] = sText_FireWeakened, + [STRINGID_PKMNHIDUNDERWATER - BATTLESTRINGS_TABLE_START] = sText_PkmnHidUnderwater, + [STRINGID_PKMNSPRANGUP - BATTLESTRINGS_TABLE_START] = sText_PkmnSprangUp, + [STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_TABLE_START] = sText_HMMovesCantBeForgotten, + [STRINGID_XFOUNDONEY - BATTLESTRINGS_TABLE_START] = sText_XFoundOneY, + [STRINGID_PLAYERDEFEATEDTRAINER1 - BATTLESTRINGS_TABLE_START] = sText_PlayerDefeatedLinkTrainerTrainer1, + [STRINGID_SOOTHINGAROMA - BATTLESTRINGS_TABLE_START] = sText_SoothingAroma, + [STRINGID_ITEMSCANTBEUSEDNOW - BATTLESTRINGS_TABLE_START] = sText_ItemsCantBeUsedNow, + [STRINGID_FORXCOMMAYZ - BATTLESTRINGS_TABLE_START] = sText_ForXCommaYZ, + [STRINGID_USINGITEMSTATOFPKMNROSE - BATTLESTRINGS_TABLE_START] = sText_UsingItemTheStatOfPkmnRose, + [STRINGID_PKMNUSEDXTOGETPUMPED - BATTLESTRINGS_TABLE_START] = sText_PkmnUsedXToGetPumped, + [STRINGID_PKMNSXMADEYUSELESS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeYUseless, + [STRINGID_PKMNTRAPPEDBYSANDTOMB - BATTLESTRINGS_TABLE_START] = sText_PkmnTrappedBySandTomb, + [STRINGID_EMPTYSTRING4 - BATTLESTRINGS_TABLE_START] = sText_EmptyString4, + [STRINGID_ABOOSTED - BATTLESTRINGS_TABLE_START] = sText_ABoosted, + [STRINGID_PKMNSXINTENSIFIEDSUN - BATTLESTRINGS_TABLE_START] = sText_PkmnsXIntensifiedSun, + [STRINGID_PKMNMAKESGROUNDMISS - BATTLESTRINGS_TABLE_START] = sText_PkmnMakesGroundMiss, + [STRINGID_YOUTHROWABALLNOWRIGHT - BATTLESTRINGS_TABLE_START] = sText_YouThrowABallNowRight, + [STRINGID_PKMNSXTOOKATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnsXTookAttack, + [STRINGID_PKMNCHOSEXASDESTINY - BATTLESTRINGS_TABLE_START] = sText_PkmnChoseXAsDestiny, + [STRINGID_PKMNLOSTFOCUS - BATTLESTRINGS_TABLE_START] = sText_PkmnLostFocus, + [STRINGID_USENEXTPKMN - BATTLESTRINGS_TABLE_START] = sText_UseNextPkmn, + [STRINGID_PKMNFLEDUSINGITS - BATTLESTRINGS_TABLE_START] = sText_PkmnFledUsingIts, + [STRINGID_PKMNFLEDUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnFledUsing, + [STRINGID_PKMNWASDRAGGEDOUT - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDraggedOut, + [STRINGID_PREVENTEDFROMWORKING - BATTLESTRINGS_TABLE_START] = sText_PreventedFromWorking, + [STRINGID_PKMNSITEMNORMALIZEDSTATUS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemNormalizedStatus, + [STRINGID_TRAINER1USEDITEM - BATTLESTRINGS_TABLE_START] = sText_Trainer1UsedItem, + [STRINGID_BOXISFULL - BATTLESTRINGS_TABLE_START] = sText_BoxIsFull, + [STRINGID_PKMNAVOIDEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnAvoidedAttack, + [STRINGID_PKMNSXMADEITINEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeItIneffective, + [STRINGID_PKMNSXPREVENTSFLINCHING - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsFlinching, + [STRINGID_PKMNALREADYHASBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyHasBurn, + [STRINGID_STATSWONTDECREASE2 - BATTLESTRINGS_TABLE_START] = sText_StatsWontDecrease2, + [STRINGID_PKMNSXBLOCKSY2 - BATTLESTRINGS_TABLE_START] = sText_PkmnsXBlocksY2, + [STRINGID_PKMNSXWOREOFF - BATTLESTRINGS_TABLE_START] = sText_PkmnsXWoreOff, + [STRINGID_PKMNRAISEDDEFALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedDefALittle, + [STRINGID_PKMNRAISEDSPDEFALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpDefALittle, + [STRINGID_THEWALLSHATTERED - BATTLESTRINGS_TABLE_START] = sText_TheWallShattered, + [STRINGID_PKMNSXPREVENTSYSZ - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsYsZ, + [STRINGID_PKMNSXCUREDITSYPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXCuredItsYProblem, + [STRINGID_ATTACKERCANTESCAPE - BATTLESTRINGS_TABLE_START] = sText_AttackerCantEscape, + [STRINGID_PKMNOBTAINEDX - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedX, + [STRINGID_PKMNOBTAINEDX2 - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedX2, + [STRINGID_PKMNOBTAINEDXYOBTAINEDZ - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedXYObtainedZ, + [STRINGID_BUTNOEFFECT - BATTLESTRINGS_TABLE_START] = sText_ButNoEffect, + [STRINGID_PKMNSXHADNOEFFECTONY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXHadNoEffectOnY, + [STRINGID_TWOENEMIESDEFEATED - BATTLESTRINGS_TABLE_START] = sText_TwoInGameTrainersDefeated, + [STRINGID_TRAINER2LOSETEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer2LoseText, + [STRINGID_PKMNINCAPABLEOFPOWER - BATTLESTRINGS_TABLE_START] = sText_PkmnIncapableOfPower, + [STRINGID_GLINTAPPEARSINEYE - BATTLESTRINGS_TABLE_START] = sText_GlintAppearsInEye, + [STRINGID_PKMNGETTINGINTOPOSITION - BATTLESTRINGS_TABLE_START] = sText_PkmnGettingIntoPosition, + [STRINGID_PKMNBEGANGROWLINGDEEPLY - BATTLESTRINGS_TABLE_START] = sText_PkmnBeganGrowlingDeeply, + [STRINGID_PKMNEAGERFORMORE - BATTLESTRINGS_TABLE_START] = sText_PkmnEagerForMore, + [STRINGID_DEFEATEDOPPONENTBYREFEREE - BATTLESTRINGS_TABLE_START] = sText_DefeatedOpponentByReferee, + [STRINGID_LOSTTOOPPONENTBYREFEREE - BATTLESTRINGS_TABLE_START] = sText_LostToOpponentByReferee, + [STRINGID_TIEDOPPONENTBYREFEREE - BATTLESTRINGS_TABLE_START] = sText_TiedOpponentByReferee, + [STRINGID_QUESTIONFORFEITMATCH - BATTLESTRINGS_TABLE_START] = sText_QuestionForfeitMatch, + [STRINGID_FORFEITEDMATCH - BATTLESTRINGS_TABLE_START] = sText_ForfeitedMatch, + [STRINGID_PKMNTRANSFERREDSOMEONESPC - BATTLESTRINGS_TABLE_START] = gText_PkmnTransferredSomeonesPC, + [STRINGID_PKMNTRANSFERREDLANETTESPC - BATTLESTRINGS_TABLE_START] = gText_PkmnTransferredLanettesPC, + [STRINGID_PKMNBOXSOMEONESPCFULL - BATTLESTRINGS_TABLE_START] = gText_PkmnTransferredSomeonesPCBoxFull, + [STRINGID_PKMNBOXLANETTESPCFULL - BATTLESTRINGS_TABLE_START] = gText_PkmnTransferredLanettesPCBoxFull, + [STRINGID_TRAINER1WINTEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer1WinText, + [STRINGID_TRAINER2WINTEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer2WinText, }; const u16 gMissStringIds[] = @@ -2331,14 +2331,14 @@ void BufferStringBattle(u16 stringID) } break; default: // load a string from the table - if (stringID >= BATTLESTRINGS_COUNT + BATTLESTRINGS_ID_ADDER) + if (stringID >= BATTLESTRINGS_COUNT) { gDisplayedStringBattle[0] = EOS; return; } else { - stringPtr = gBattleStringsTable[stringID - BATTLESTRINGS_ID_ADDER]; + stringPtr = gBattleStringsTable[stringID - BATTLESTRINGS_TABLE_START]; } break; } @@ -2862,7 +2862,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) { case B_BUFF_STRING: // battle string hword = T1_READ_16(&src[srcID + 1]); - StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_ID_ADDER]); + StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_TABLE_START]); srcID += 3; break; case B_BUFF_NUMBER: // int to string diff --git a/src/battle_tv.c b/src/battle_tv.c index f65bf73ea099..b9008b47a7d3 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -570,7 +570,7 @@ void BattleTv_SetDataBasedOnString(u16 stringId) moveSlot = GetBattlerMoveSlotId(gBattlerAttacker, gBattleMsgDataPtr->currentMove); - if (moveSlot >= MAX_MON_MOVES && IsNotSpecialBattleString(stringId) && stringId > BATTLESTRINGS_ID_ADDER) + if (moveSlot >= MAX_MON_MOVES && IsNotSpecialBattleString(stringId) && stringId > BATTLESTRINGS_TABLE_START) { tvPtr->side[atkSide].faintCause = FNT_OTHER; return; diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 327e48d19509..bde11ddb5ea2 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -855,7 +855,7 @@ static void Task_EvolutionScene(u8 taskId) { BufferMoveToLearnIntoBattleTextBuff2(); PlayFanfare(MUS_LEVEL_UP); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnsFirstMove = 0x40; // re-used as a counter gTasks[taskId].tState++; @@ -873,7 +873,7 @@ static void Task_EvolutionScene(u8 taskId) { // "{mon} is trying to learn {move}" BufferMoveToLearnIntoBattleTextBuff2(); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } @@ -882,7 +882,7 @@ static void Task_EvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { // "But, {mon} can't learn more than four moves" - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } @@ -891,7 +891,7 @@ static void Task_EvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { // "Delete a move to make room for {move}?" - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveYesState = MVSTATE_SHOW_MOVE_SELECT; gTasks[taskId].tLearnMoveNoState = MVSTATE_ASK_CANCEL; @@ -979,7 +979,7 @@ static void Task_EvolutionScene(u8 taskId) if (IsHMMove2(move)) { // Can't forget HMs - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState = MVSTATE_RETRY_AFTER_HM; } @@ -996,14 +996,14 @@ static void Task_EvolutionScene(u8 taskId) } break; case MVSTATE_FORGET_MSG_1: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; break; case MVSTATE_FORGET_MSG_2: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveState++; } @@ -1011,20 +1011,20 @@ static void Task_EvolutionScene(u8 taskId) case MVSTATE_LEARNED_MOVE: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tState = EVOSTATE_LEARNED_MOVE; } break; case MVSTATE_ASK_CANCEL: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tLearnMoveYesState = MVSTATE_CANCEL; gTasks[taskId].tLearnMoveNoState = MVSTATE_INTRO_MSG_1; gTasks[taskId].tLearnMoveState = MVSTATE_PRINT_YES_NO; break; case MVSTATE_CANCEL: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_TABLE_START]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; break; @@ -1258,7 +1258,7 @@ static void Task_TradeEvolutionScene(u8 taskId) { BufferMoveToLearnIntoBattleTextBuff2(); PlayFanfare(MUS_LEVEL_UP); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnsFirstMove = 0x40; // re-used as a counter gTasks[taskId].tState++; @@ -1276,7 +1276,7 @@ static void Task_TradeEvolutionScene(u8 taskId) { // "{mon} is trying to learn {move}" BufferMoveToLearnIntoBattleTextBuff2(); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState++; } @@ -1285,7 +1285,7 @@ static void Task_TradeEvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { // "But, {mon} can't learn more than four moves" - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState++; } @@ -1294,7 +1294,7 @@ static void Task_TradeEvolutionScene(u8 taskId) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { // "Delete a move to make room for {move}?" - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveYesState = T_MVSTATE_SHOW_MOVE_SELECT; gTasks[taskId].tLearnMoveNoState = T_MVSTATE_ASK_CANCEL; @@ -1315,7 +1315,7 @@ static void Task_TradeEvolutionScene(u8 taskId) { case 0: // YES sEvoCursorPos = 0; - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState = gTasks[taskId].tLearnMoveYesState; if (gTasks[taskId].tLearnMoveState == T_MVSTATE_SHOW_MOVE_SELECT) @@ -1324,7 +1324,7 @@ static void Task_TradeEvolutionScene(u8 taskId) case 1: // NO case MENU_B_PRESSED: sEvoCursorPos = 1; - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState = gTasks[taskId].tLearnMoveNoState; break; @@ -1363,7 +1363,7 @@ static void Task_TradeEvolutionScene(u8 taskId) if (IsHMMove2(move)) { // Can't forget HMs - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState = T_MVSTATE_RETRY_AFTER_HM; } @@ -1374,7 +1374,7 @@ static void Task_TradeEvolutionScene(u8 taskId) RemoveMonPPBonus(mon, var); SetMonMoveSlot(mon, gMoveToLearn, var); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState++; } @@ -1384,7 +1384,7 @@ static void Task_TradeEvolutionScene(u8 taskId) case T_MVSTATE_FORGET_MSG: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveState++; } @@ -1392,20 +1392,20 @@ static void Task_TradeEvolutionScene(u8 taskId) case T_MVSTATE_LEARNED_MOVE: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tState = T_EVOSTATE_LEARNED_MOVE; } break; case T_MVSTATE_ASK_CANCEL: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tLearnMoveYesState = T_MVSTATE_CANCEL; gTasks[taskId].tLearnMoveNoState = T_MVSTATE_INTRO_MSG_1; gTasks[taskId].tLearnMoveState = T_MVSTATE_PRINT_YES_NO; break; case T_MVSTATE_CANCEL: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_ID_ADDER]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_TABLE_START]); DrawTextOnTradeWindow(0, gDisplayedStringBattle, 1); gTasks[taskId].tState = T_EVOSTATE_TRY_LEARN_MOVE; break; From bb91b1b0d1cf70fa49cb0b1f2a309ad541927164 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 10 Mar 2022 16:36:41 -0500 Subject: [PATCH 558/762] Update generic macro argument names --- asm/macros/event.inc | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 58e37d0a6ac7..661e675c9773 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -828,10 +828,10 @@ .endm @ Sets the movement type (MOVEMENT_TYPE_*) for an object's template. - .macro setobjectmovementtype word:req, byte:req + .macro setobjectmovementtype localId:req, movementType:req .byte 0x65 - .2byte \word - .byte \byte + .2byte \localId + .byte \movementType .endm @ If a standard message box (or its text) is being drawn on-screen, this command blocks script execution until the @@ -1451,48 +1451,48 @@ .endm @ Equivalent to goto using the relative address set by setvaddress. - .macro vgoto pointer:req + .macro vgoto destination:req .byte 0xb9 - .4byte \pointer + .4byte \destination .endm @ Equivalent to call using the relative address set by setvaddress. - .macro vcall pointer:req + .macro vcall destination:req .byte 0xba - .4byte \pointer + .4byte \destination .endm @ Equivalent to goto_if using the relative address set by setvaddress. - .macro vgoto_if byte:req, pointer:req + .macro vgoto_if condition:req, destination:req .byte 0xbb - .byte \byte - .4byte \pointer + .byte \condition + .4byte \destination .endm @ Equivalent to call_if using the relative address set by setvaddress. - .macro vcall_if byte:req, pointer:req + .macro vcall_if condition:req, destination:req .byte 0xbc - .byte \byte - .4byte \pointer + .byte \condition + .4byte \destination .endm @ Equivalent to message using the relative address set by setvaddress. - .macro vmessage pointer:req + .macro vmessage text:req .byte 0xbd - .4byte \pointer + .4byte \text .endm @ Expands the given text at the pointer (- the relative address set by setvaddress) into gStringVar4 - .macro vbuffermessage ptr:req + .macro vbuffermessage text:req .byte 0xbe - .4byte \ptr + .4byte \text .endm @ Equivalent to bufferstring using the relative address set by setvaddress. - .macro vbufferstring stringVarIndex:req, pointer:req + .macro vbufferstring stringVarIndex:req, text:req .byte 0xbf stringvar \stringVarIndex - .4byte \pointer + .4byte \text .endm @ Create a window showing how many Coins the player has. @@ -1549,9 +1549,9 @@ .endm @ Used only in FireRed/LeafGreen, does nothing in Emerald. - .macro loadhelp pointer:req + .macro loadhelp text:req .byte 0xc8 - .4byte \pointer + .4byte \text .endm @ Used only in FireRed/LeafGreen, does nothing in Emerald. From 0a0157b62c29172eabd07f0c0eb02d6567957c2c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 14 Mar 2022 15:54:47 -0400 Subject: [PATCH 559/762] Name unknown_16.png --- .../pics/{unknown_16.png => jump_long_grass.png} | Bin spritesheet_rules.mk | 2 +- src/data/object_events/object_event_graphics.h | 2 +- src/field_effect_helpers.c | 2 ++ 4 files changed, 4 insertions(+), 2 deletions(-) rename graphics/field_effects/pics/{unknown_16.png => jump_long_grass.png} (100%) diff --git a/graphics/field_effects/pics/unknown_16.png b/graphics/field_effects/pics/jump_long_grass.png similarity index 100% rename from graphics/field_effects/pics/unknown_16.png rename to graphics/field_effects/pics/jump_long_grass.png diff --git a/spritesheet_rules.mk b/spritesheet_rules.mk index ae7971960236..9fb184638a21 100644 --- a/spritesheet_rules.mk +++ b/spritesheet_rules.mk @@ -636,7 +636,7 @@ $(FLDEFFGFXDIR)/tall_grass.4bpp: %.4bpp: %.png $(FLDEFFGFXDIR)/tree_disguise.4bpp: %.4bpp: %.png $(GFX) $< $@ -mwidth 2 -mheight 4 -$(FLDEFFGFXDIR)/unknown_16.4bpp: %.4bpp: %.png +$(FLDEFFGFXDIR)/jump_long_grass.4bpp: %.4bpp: %.png $(GFX) $< $@ -mwidth 2 -mheight 2 $(FLDEFFGFXDIR)/unknown_17.4bpp: %.4bpp: %.png diff --git a/src/data/object_events/object_event_graphics.h b/src/data/object_events/object_event_graphics.h index 81d83a85630c..6ee56cc78e1c 100755 --- a/src/data/object_events/object_event_graphics.h +++ b/src/data/object_events/object_event_graphics.h @@ -305,7 +305,7 @@ const u16 gFieldEffectObjectPalette1[] = INCBIN_U16("graphics/field_effects/pale const u32 gFieldEffectObjectPic_GroundImpactDust[] = INCBIN_U32("graphics/field_effects/pics/ground_impact_dust.4bpp"); const u32 gFieldEffectObjectPic_JumpTallGrass[] = INCBIN_U32("graphics/field_effects/pics/jump_tall_grass.4bpp"); const u32 gUnusedGrass3[] = INCBIN_U32("graphics/field_effects/pics/unused_grass_3.4bpp"); -const u32 gFieldEffectObjectPic_JumpLongGrass[] = INCBIN_U32("graphics/field_effects/pics/unknown_16.4bpp"); +const u32 gFieldEffectObjectPic_JumpLongGrass[] = INCBIN_U32("graphics/field_effects/pics/jump_long_grass.4bpp"); const u32 gFieldEffectObjectPic_Unknown17[] = INCBIN_U32("graphics/field_effects/pics/unknown_17.4bpp"); const u32 gFieldEffectObjectPic_UnusedGrass2[] = INCBIN_U32("graphics/field_effects/pics/unused_grass_2.4bpp"); const u32 gFieldEffectObjectPic_LongGrass[] = INCBIN_U32("graphics/field_effects/pics/long_grass.4bpp"); diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 65617038d1a5..036ff33f2c7f 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -487,6 +487,8 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite) #undef sCurrentMap #undef sObjectMoved +// Effectively unused as it's not possible in vanilla to jump onto long grass (no adjacent ledges, and can't ride the Acro Bike in it). +// The graphics for this effect do not visually correspond to tall grass either. Perhaps these graphics were its original design? u32 FldEff_JumpLongGrass(void) { u8 spriteId; From 058783c14841b87dab93b114f216ed1417b27db3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 14 Mar 2022 16:01:17 -0400 Subject: [PATCH 560/762] Fix comment mistake --- src/field_effect_helpers.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 036ff33f2c7f..c3332c7fc681 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -488,7 +488,7 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite) #undef sObjectMoved // Effectively unused as it's not possible in vanilla to jump onto long grass (no adjacent ledges, and can't ride the Acro Bike in it). -// The graphics for this effect do not visually correspond to tall grass either. Perhaps these graphics were its original design? +// The graphics for this effect do not visually correspond to long grass either. Perhaps these graphics were its original design? u32 FldEff_JumpLongGrass(void) { u8 spriteId; From f8b3a1c6584a76cd3e3f2721c5fb3a54bbf3a4f6 Mon Sep 17 00:00:00 2001 From: Andrea Jemmett <1787979+acidghost@users.noreply.github.com> Date: Wed, 16 Mar 2022 14:41:12 +0100 Subject: [PATCH 561/762] Fix finding libpng in gbagfx and rsfont On macOS 12, Homebrew installs libpng in a custom location. --- tools/gbagfx/Makefile | 2 ++ tools/rsfont/Makefile | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index b4244aa8d6ab..8728fa8d094c 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -1,8 +1,10 @@ CC = gcc CFLAGS = -Wall -Wextra -Werror -Wno-sign-compare -std=c11 -O2 -DPNG_SKIP_SETJMP_CHECK +CFLAGS += $(shell pkg-config --cflags libpng) LIBS = -lpng -lz +LDFLAGS += $(shell pkg-config --libs-only-L libpng) SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index 0bc88a42b797..92e44b5459ab 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -1,8 +1,10 @@ CC ?= gcc CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 -DPNG_SKIP_SETJMP_CHECK +CFLAGS += $(shell pkg-config --cflags libpng) LIBS = -lpng -lz +LDFLAGS += $(shell pkg-config --libs-only-L libpng) SRCS = main.c convert_png.c util.c font.c From 66cbe29c1408feef07772ba0b8a5b89995fa3056 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 30 Mar 2022 09:37:03 -0400 Subject: [PATCH 562/762] Add bugfix for Battle Factory trainer IVs --- include/battle_factory.h | 2 +- src/battle_factory.c | 28 ++++++++++++++++++---------- src/battle_tower.c | 11 ++++++++--- 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/include/battle_factory.h b/include/battle_factory.h index 5606d60d1e24..d414bdb3b1a4 100644 --- a/include/battle_factory.h +++ b/include/battle_factory.h @@ -3,7 +3,7 @@ void CallBattleFactoryFunction(void); bool8 InBattleFactory(void); -u8 GetFactoryMonFixedIV(u8 arg0, u8 arg1); +u8 GetFactoryMonFixedIV(u8 challengeNum, bool8 isLastBattle); void FillFactoryBrainParty(void); u8 GetNumPastRentalsRank(u8 battleMode, u8 lvlMode); u32 GetAiScriptsInBattleFactory(void); diff --git a/src/battle_factory.c b/src/battle_factory.c index 23fa664f3388..d88ed37f9500 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -720,17 +720,25 @@ static void RestorePlayerPartyHeldItems(void) } } -u8 GetFactoryMonFixedIV(u8 arg0, u8 arg1) -{ - u8 a1; - u8 a2 = (arg1 != 0) ? 1 : 0; - - if (arg0 > 8) - a1 = 7; +// Get the IV to use for the opponent's pokĂ©mon. +// The IVs get higher for each subsequent challenge and for +// the last trainer in each challenge. Noland is an exception +// to this, as he uses the IVs that would be used by the regular +// trainers 2 challenges ahead of the current one. +// Due to a mistake in FillFactoryFrontierTrainerParty, the +// challenge number used to determine the IVs for regular trainers +// is Battle Tower's instead of Battle Factory's. +u8 GetFactoryMonFixedIV(u8 challengeNum, bool8 isLastBattle) +{ + u8 ivSet; + bool8 useHigherIV = isLastBattle ? TRUE : FALSE; + + if (challengeNum > 8) + ivSet = 7; else - a1 = arg0; + ivSet = challengeNum; - return sFixedIVTable[a1][a2]; + return sFixedIVTable[ivSet][useHigherIV]; } void FillFactoryBrainParty(void) @@ -746,7 +754,7 @@ void FillFactoryBrainParty(void) u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u8 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); u8 challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7; - fixedIV = GetFactoryMonFixedIV(challengeNum + 2, 0); + fixedIV = GetFactoryMonFixedIV(challengeNum + 2, FALSE); monLevel = SetFacilityPtrsGetLevel(); i = 0; otId = T1_READ_32(gSaveBlock2Ptr->playerTrainerId); diff --git a/src/battle_tower.c b/src/battle_tower.c index b747a3dc0db7..989412e9e690 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1827,13 +1827,18 @@ static void FillFactoryFrontierTrainerParty(u16 trainerId, u8 firstMonId) if (trainerId < FRONTIER_TRAINERS_COUNT) { - u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; // Unused variable. + u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u8 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); + // By mistake Battle Tower's Level 50 challenge number is used to determine the IVs for Battle Factory. + #ifdef BUGFIX + u8 challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7; + #else u8 challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][FRONTIER_LVL_50] / 7; + #endif if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 6) - fixedIV = GetFactoryMonFixedIV(challengeNum, 0); + fixedIV = GetFactoryMonFixedIV(challengeNum, FALSE); else - fixedIV = GetFactoryMonFixedIV(challengeNum, 1); + fixedIV = GetFactoryMonFixedIV(challengeNum, TRUE); // Last trainer in challenge uses higher IVs } else if (trainerId == TRAINER_EREADER) { From 62f3f144ab499ff47c4451212b7350e0815a57c7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 4 Mar 2022 11:02:19 -0500 Subject: [PATCH 563/762] Clean up some trainer hill --- asm/macros/trainer_hill.inc | 8 +- data/maps/TrainerHill_Entrance/scripts.inc | 2 +- include/constants/trainer_hill.h | 27 +- include/ereader_helpers.h | 2 +- include/global.h | 11 +- include/trainer_hill.h | 40 +- src/data/battle_frontier/trainer_hill.h | 957 ++++++--------------- src/ereader_helpers.c | 122 ++- src/trainer_hill.c | 167 ++-- 9 files changed, 456 insertions(+), 880 deletions(-) diff --git a/asm/macros/trainer_hill.inc b/asm/macros/trainer_hill.inc index 65c8c6befceb..988e2867ae76 100644 --- a/asm/macros/trainer_hill.inc +++ b/asm/macros/trainer_hill.inc @@ -100,9 +100,9 @@ special CallTrainerHillFunction .endm - @ Set the challenge mode to HILL_TAG_* (Normal, Variety, Unique, or Expert) - .macro trainerhill_settag tag:req - setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_TAG - copyvar VAR_0x8005, \tag + @ Set the challenge mode to HILL_MODE_* (Normal, Variety, Unique, or Expert) + .macro trainerhill_setmode mode:req + setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_MODE + copyvar VAR_0x8005, \mode special CallTrainerHillFunction .endm diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc index 8989883e47fa..2dd001a3baba 100644 --- a/data/maps/TrainerHill_Entrance/scripts.inc +++ b/data/maps/TrainerHill_Entrance/scripts.inc @@ -157,7 +157,7 @@ TrainerHill_Entrance_EventScript_ChooseChallenge:: switch VAR_RESULT case 4, TrainerHill_Entrance_EventScript_CancelEntry case MULTI_B_PRESSED, TrainerHill_Entrance_EventScript_CancelEntry - trainerhill_settag VAR_RESULT + trainerhill_setmode VAR_RESULT setvar VAR_TRAINER_HILL_IS_ACTIVE, 1 setvar VAR_TEMP_5, 0 special HealPlayerParty diff --git a/include/constants/trainer_hill.h b/include/constants/trainer_hill.h index 0e802bba8033..371763faf35c 100644 --- a/include/constants/trainer_hill.h +++ b/include/constants/trainer_hill.h @@ -8,6 +8,12 @@ #define TRAINER_HILL_ROOF 5 #define TRAINER_HILL_ENTRANCE 6 +#define HILL_MODE_NORMAL 0 +#define HILL_MODE_VARIETY 1 +#define HILL_MODE_UNIQUE 2 +#define HILL_MODE_EXPERT 3 +#define NUM_TRAINER_HILL_MODES 4 + #define NUM_TRAINER_HILL_FLOORS 4 #define NUM_TRAINER_HILL_FLOORS_JP 2 @@ -30,20 +36,33 @@ #define TRAINER_HILL_FUNC_SET_GAME_SAVED 14 #define TRAINER_HILL_FUNC_CLEAR_GAME_SAVED 15 #define TRAINER_HILL_FUNC_GET_WON 16 -#define TRAINER_HILL_FUNC_SET_TAG 17 +#define TRAINER_HILL_FUNC_SET_MODE 17 #define TRAINER_HILL_TEXT_INTRO 2 #define TRAINER_HILL_TEXT_PLAYER_LOST 3 #define TRAINER_HILL_TEXT_PLAYER_WON 4 #define TRAINER_HILL_TEXT_AFTER 5 -#define TRAINER_HILL_TRAINERS_PER_FLOOR 2 -#define NUM_TRAINER_HILL_TRAINERS (NUM_TRAINER_HILL_FLOORS * TRAINER_HILL_TRAINERS_PER_FLOOR) -#define NUM_TRAINER_HILL_TRAINERS_JP (NUM_TRAINER_HILL_FLOORS_JP * TRAINER_HILL_TRAINERS_PER_FLOOR) +#define HILL_TRAINERS_PER_FLOOR 2 +#define NUM_TRAINER_HILL_TRAINERS (NUM_TRAINER_HILL_FLOORS * HILL_TRAINERS_PER_FLOOR) +#define NUM_TRAINER_HILL_TRAINERS_JP (NUM_TRAINER_HILL_FLOORS_JP * HILL_TRAINERS_PER_FLOOR) // Values returned by TrainerHillGetChallengeStatus #define TRAINER_HILL_PLAYER_STATUS_LOST 0 #define TRAINER_HILL_PLAYER_STATUS_ECARD_SCANNED 1 #define TRAINER_HILL_PLAYER_STATUS_NORMAL 2 +#define HILL_TRAINER_NAME_LENGTH 11 + +#define TRAINER_HILL_OTID 0x10000000 + +// The full map of each Trainer Hill floor is 16x21. +// The first 5x21 at the top is the entrance/exit area, +// and the remaining 16x16 is the randomized portion of +// the room where the trainers are. +#define HILL_FLOOR_WIDTH 16 +#define HILL_FLOOR_HEIGHT_MAIN 16 +#define HILL_FLOOR_HEIGHT_MARGIN 5 +#define HILL_FLOOR_HEIGHT (HILL_FLOOR_HEIGHT_MAIN + HILL_FLOOR_HEIGHT_MARGIN) + #endif diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h index 8bf3dc43b6f5..29386bcb22bc 100755 --- a/include/ereader_helpers.h +++ b/include/ereader_helpers.h @@ -35,7 +35,7 @@ struct EReaderTrainerHillTrainer { u8 trainerNum; struct TrainerHillTrainer trainer; - struct TrHillDisplay display; + struct TrainerHillFloorMap map; u32 checksum; }; // size=0x274 diff --git a/include/global.h b/include/global.h index 0122ecd5c41f..89f725176721 100644 --- a/include/global.h +++ b/include/global.h @@ -14,6 +14,7 @@ #include "constants/maps.h" #include "constants/pokemon.h" #include "constants/easy_chat.h" +#include "constants/trainer_hill.h" // Prevent cross-jump optimization. #define BLOCK_CROSS_JUMP asm(""); @@ -279,8 +280,6 @@ struct BattleTowerPokemon u8 friendship; }; -#define NULL_BATTLE_TOWER_POKEMON { .nickname = __("$$$$$$$$$$$") } - struct EmeraldBattleTowerRecord { /*0x00*/ u8 lvlMode; // 0 = level 50, 1 = level 100 @@ -808,7 +807,7 @@ struct TrainerNameRecord u8 trainerName[PLAYER_NAME_LENGTH + 1]; }; -struct SaveTrainerHill +struct TrainerHillSave { /*0x3D64*/ u32 timer; /*0x3D68*/ u32 bestTime; @@ -820,7 +819,7 @@ struct SaveTrainerHill /*0x3D6E*/ u16 hasLost:1; /*0x3D6E*/ u16 maybeECardScanDuringChallenge:1; /*0x3D6E*/ u16 field_3D6E_0f:1; - /*0x3D6E*/ u16 tag:2; + /*0x3D6E*/ u16 mode:2; // HILL_MODE_* }; struct WonderNewsMetadata @@ -1003,7 +1002,7 @@ struct SaveBlock1 /*0x31F8*/ struct EnigmaBerry enigmaBerry; /*0x322C*/ struct MysteryGiftSave mysteryGift; /*0x3598*/ u8 unused_3598[0x180]; - /*0x3718*/ u32 trainerHillTimes[4]; + /*0x3718*/ u32 trainerHillTimes[NUM_TRAINER_HILL_MODES]; /*0x3728*/ struct RamScript ramScript; /*0x3B14*/ struct RecordMixingGift recordMixingGift; /*0x3B24*/ u8 seen2[NUM_DEX_FLAG_BYTES]; @@ -1011,7 +1010,7 @@ struct SaveBlock1 /*0x3B98*/ struct TrainerNameRecord trainerNameRecords[20]; /*0x3C88*/ u8 registeredTexts[UNION_ROOM_KB_ROW_COUNT][21]; /*0x3D5A*/ u8 unused_3D5A[10]; - /*0x3D64*/ struct SaveTrainerHill trainerHill; + /*0x3D64*/ struct TrainerHillSave trainerHill; /*0x3D70*/ struct WaldaPhrase waldaPhrase; // sizeof: 0x3D88 }; diff --git a/include/trainer_hill.h b/include/trainer_hill.h index 647ba964706b..857cabeae652 100644 --- a/include/trainer_hill.h +++ b/include/trainer_hill.h @@ -1,7 +1,7 @@ #ifndef GUARD_TRAINER_HILL_H #define GUARD_TRAINER_HILL_H -#define HILL_TRAINER_NAME_LENGTH 11 +#define DUMMY_HILL_MON { .nickname = __("$$$$$$$$$$$") } struct TrainerHillTrainer { @@ -15,44 +15,30 @@ struct TrainerHillTrainer struct BattleTowerPokemon mons[PARTY_SIZE]; }; -struct TrHillRoomTrainers +struct TrainerHillFloorMap { - u8 name[2][HILL_TRAINER_NAME_LENGTH]; - u8 facilityClass[2]; + u8 metatileData[HILL_FLOOR_WIDTH * HILL_FLOOR_HEIGHT_MAIN]; // Add NUM_METATILES_IN_PRIMARY to the values in this array to get metatile ids. + u16 collisionData[HILL_FLOOR_WIDTH]; // One bit for each tile in column-major order, so every array entry is one row. 1 = impassable, 0 = passable + u8 trainerCoords[HILL_TRAINERS_PER_FLOOR]; // Starting at (0,6). Format is 0bYYYYXXXX. + u8 trainerDirections; // DIR_* - 1, 4 bits per trainer + u8 trainerRanges; // 4 bits per trainer }; -struct TrHillDisplay -{ - // Metatile data. Add 0x200 to the values in this array to get metatiles. - // This data then overwrites the metatiles in the map starting at (0,5) - u8 metatileData[0x100]; - // Collision data. One bit for each tile in column-major order, - // so every array entry is one row. 1 = impassable, 0 = passable - u16 collisionData[16]; - // Trainer coordinates, starting at (0,6). Format is 0bYYYYXXXX. - u8 coords[2]; - // Trainer facing directions. Same as (DIR_* - 1). - // Effectively an array of nibbles, one for each trainer. - u8 direction; - // Trainer sight ranges. Effectively an array of nibbles, one for each trainer. - u8 range; -}; - -struct TrHillFloor +struct TrainerHillFloor { u8 trainerNum1; u8 trainerNum2; - struct TrainerHillTrainer trainers[2]; - struct TrHillDisplay display; + struct TrainerHillTrainer trainers[HILL_TRAINERS_PER_FLOOR]; + struct TrainerHillFloorMap map; }; -struct TrHillTag +struct TrainerHillChallenge { u8 numTrainers; u8 unused1; u8 numFloors; - u32 checksum; - struct TrHillFloor floors[0]; + u32 checksum; // A byte array sum of the floor data + struct TrainerHillFloor floors[0]; // Floor data is assumed to follow, so this will be intentionally read out of bounds }; extern u32 *gTrainerHillVBlankCounter; diff --git a/src/data/battle_frontier/trainer_hill.h b/src/data/battle_frontier/trainer_hill.h index 75785b258946..413ec8e1297f 100644 --- a/src/data/battle_frontier/trainer_hill.h +++ b/src/data/battle_frontier/trainer_hill.h @@ -1,20 +1,23 @@ -#define TRAINER_HILL_OTID 0x10000000 - // NOTE: Each of these macros turn data into one byte. Therefore ranges for all arguments is 0-15 -// See struct TrHillDisplay for more info about each +// See struct TrainerHillFloorMap for more info about each #define COORDS_XY(x,y) ((y<<4)|(x)) #define TRAINER_DIRS(a, b) (((a-1)<<4)|(b-1)) #define TRAINER_RANGE(a, b) ((a<<4)|(b)) -static const struct TrHillTag sDataTagJPDefault = { +// WARNING: While not referenced directly, the floor data in this file is referenced by virtue +// of coming after its corresponding challenge (see SetUpDataStruct in trainer_hill.c). +// Do not insert data between a pair of 'sChallenge_Mode' and 'sFloors_Mode'. + +// Unused +static const struct TrainerHillChallenge sChallenge_JPDefault = { .numTrainers = NUM_TRAINER_HILL_TRAINERS_JP, .unused1 = 1, .numFloors = NUM_TRAINER_HILL_FLOORS_JP, .checksum = 0x0 }; - -static const struct TrHillFloor sDataTagJPDefault_Floors[] = { +// Unused +static const struct TrainerHillFloor sFloors_JPDefault[] = { [0] = { .trainerNum1 = 0, .trainerNum2 = 0, @@ -32,8 +35,6 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .species = SPECIES_ZIGZAGOON, .heldItem = ITEM_SITRUS_BERRY, .moves = { MOVE_HEADBUTT, MOVE_PIN_MISSILE, MOVE_GROWL, MOVE_TAIL_WHIP }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 110, .attackEV = 100, .defenseEV = 100, @@ -50,14 +51,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = __("ジグザグăž$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [1] = { .species = SPECIES_SHROOMISH, .heldItem = ITEM_PECHA_BERRY, .moves = { MOVE_MEGA_DRAIN, MOVE_LEECH_SEED, MOVE_POISON_POWDER, MOVE_GROWTH }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 120, .attackEV = 0, .defenseEV = 120, @@ -74,14 +73,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = __("ă‚­ăŽă‚łă‚ł$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [2] = { .species = SPECIES_SANDSHREW, .heldItem = ITEM_QUICK_CLAW, .moves = { MOVE_SCRATCH, MOVE_POISON_STING, MOVE_SAND_ATTACK, MOVE_SWIFT }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 110, .attackEV = 100, .defenseEV = 100, @@ -98,11 +95,11 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = __("サăłă‰$$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, - [3] = NULL_BATTLE_TOWER_POKEMON, - [4] = NULL_BATTLE_TOWER_POKEMON, - [5] = NULL_BATTLE_TOWER_POKEMON + [3] = DUMMY_HILL_MON, + [4] = DUMMY_HILL_MON, + [5] = DUMMY_HILL_MON } }, [1] = { @@ -114,15 +111,13 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .speechLose = { EC_WORD_OH_QUES, EC_MOVE(EARTHQUAKE), EC_WORD_EXISTS, EC_WORD_OF, EC_WORD_WITHOUT, EC_WORD_EXCL }, .speechAfter = { EC_WORD_YOU_RE, EC_WORD_PROBABLY, EC_WORD_END, EC_WORD_UNTIL, EC_WORD_GOING, EC_WORD_ANYWHERE }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_WINGULL, .heldItem = ITEM_CHERI_BERRY, .moves = { MOVE_WATER_GUN, MOVE_WING_ATTACK, MOVE_GROWL, MOVE_SUPERSONIC }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 110, .attackEV = 100, .defenseEV = 100, @@ -139,14 +134,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = __("ă‚­ăŁă˘ăˇ$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_NUMEL, .heldItem = ITEM_FOCUS_BAND, .moves = { MOVE_EMBER, MOVE_DIG, MOVE_TACKLE, MOVE_FOCUS_ENERGY }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 110, .attackEV = 100, .defenseEV = 100, @@ -163,14 +156,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = __("ă‰ăłăˇă«$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_SURSKIT, .heldItem = ITEM_PERSIM_BERRY, .moves = { MOVE_BUBBLE_BEAM, MOVE_MUD_SHOT, MOVE_QUICK_ATTACK, MOVE_AGILITY }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 100, .defenseEV = 100, @@ -187,12 +178,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = __("アăˇă‚żăž$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, }, - .display = { + .map = { .metatileData = { 0x31, 0x35, 0x35, 0x3b, 0x26, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x3b, 0x3b, 0x08, 0x31, 0x2b, 0x2b, 0x3b, 0x34, 0x34, 0x2b, 0x2b, 0x34, 0x33, 0x3f, 0x3f, 0x3f, 0x3f, 0x3b, 0x08, @@ -212,9 +203,9 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = { 0x0381, 0x6fc1, 0x6341, 0x6041, 0x7f41, 0x4401, 0x5541, 0x5541, 0x11c1, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff }, - .coords = { COORDS_XY(8,2), COORDS_XY(8,7) }, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(2, 3) + .trainerCoords = { COORDS_XY(8,2), COORDS_XY(8,7) }, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(2, 3) } }, [1] = { @@ -234,8 +225,6 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .species = SPECIES_ELECTRIKE, .heldItem = ITEM_CHERI_BERRY, .moves = { MOVE_SPARK, MOVE_THUNDER_WAVE, MOVE_QUICK_ATTACK, MOVE_ROAR }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 120, .attackEV = 120, .defenseEV = 0, @@ -252,14 +241,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 1, .personality = 0x0, .nickname = __("ă©ă‚Żă©ă‚¤$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [1] = { .species = SPECIES_CORPHISH, .heldItem = ITEM_QUICK_CLAW, .moves = { MOVE_KNOCK_OFF, MOVE_CRABHAMMER, MOVE_TAUNT, MOVE_PROTECT }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 110, .defenseEV = 100, @@ -276,14 +263,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 1, .personality = 0x96, .nickname = __("ăイガă‹$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [2] = { .species = SPECIES_BALTOY, .heldItem = ITEM_PERSIM_BERRY, .moves = { MOVE_PSYBEAM, MOVE_ROCK_TOMB, MOVE_MUD_SLAP, MOVE_HARDEN }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 100, .defenseEV = 100, @@ -300,11 +285,11 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = __("ă¤ă‚¸ă­ăł$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, - [3] = NULL_BATTLE_TOWER_POKEMON, - [4] = NULL_BATTLE_TOWER_POKEMON, - [5] = NULL_BATTLE_TOWER_POKEMON, + [3] = DUMMY_HILL_MON, + [4] = DUMMY_HILL_MON, + [5] = DUMMY_HILL_MON, } }, [1] = { @@ -316,15 +301,13 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .speechLose = { EC_WORD_AWFUL, EC_WORD_GWAH, EC_WORD_HOPELESS, EC_WORD_CAN_T_WIN, EC_WORD_IS, EC_WORD_NONE }, .speechAfter = { EC_WORD_AWW, EC_EMPTY_WORD, EC_EMPTY_WORD, EC_WORD_ALMOST, EC_WORD_GOOD, EC_WORD_ANYWHERE }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_SPHEAL, .heldItem = ITEM_FOCUS_BAND, .moves = { MOVE_ICE_BALL, MOVE_BODY_SLAM, MOVE_WATER_GUN, MOVE_ENCORE }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 100, .defenseEV = 100, @@ -341,14 +324,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = __("タăžă‚¶ă©ă‚·$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_SPOINK, .heldItem = ITEM_PERSIM_BERRY, .moves = { MOVE_PSYWAVE, MOVE_FUTURE_SIGHT, MOVE_CONFUSE_RAY, MOVE_MAGIC_COAT }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 0, .defenseEV = 100, @@ -365,14 +346,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 1, .personality = 0xf, .nickname = __("ăăŤă–ăĽ$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_POOCHYENA, .heldItem = ITEM_PECHA_BERRY, .moves = { MOVE_BITE, MOVE_POISON_FANG, MOVE_SWAGGER, MOVE_SCARY_FACE }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 70, .attackEV = 80, .defenseEV = 80, @@ -389,12 +368,12 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = __("ăťăエăŠ$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3b, 0x35, 0x3b, 0x39, 0x26, 0x1b, 0x1c, 0x1d, 0x25, 0x39, 0x3a, 0x3b, 0x35, 0x3b, 0x08, 0x31, 0x3b, 0x2b, 0x3b, 0x3b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x3b, 0x3b, 0x3b, 0x2b, 0x3b, 0x08, @@ -414,14 +393,14 @@ static const struct TrHillFloor sDataTagJPDefault_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = { 0x0381, 0x27c5, 0x27c5, 0x27c5, 0x27c5, 0x27c5, 0x26c5, 0x2005, 0x3efd, 0x1, 0x6ff, 0x7ff, 0x7ff, 0xffff, 0xffff, 0xffff }, - .coords = { COORDS_XY(7,6), COORDS_XY(7,10) }, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(3, 3) + .trainerCoords = { COORDS_XY(7,6), COORDS_XY(7,10) }, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3) } }, }; -static const struct TrHillTag sDataTagNormal = +static const struct TrainerHillChallenge sChallenge_Normal = { .numTrainers = NUM_TRAINER_HILL_TRAINERS, .unused1 = 2, @@ -429,7 +408,7 @@ static const struct TrHillTag sDataTagNormal = .checksum = 0x00051E05 }; -static const struct TrHillFloor sDataTagNormal_Floors[] = +static const struct TrainerHillFloor sFloors_Normal[] = { [0] = { @@ -453,8 +432,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_MISDREAVUS, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SHADOW_BALL, MOVE_PSYCHIC, MOVE_THUNDERBOLT, MOVE_CONFUSE_RAY}, - .level = 0, - .ppBonuses = 0, .attackEV = 155, .speedEV = 255, .spAttackEV = 100, @@ -468,15 +445,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x0, .nickname = _("MISDREAVUS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_SOLROCK, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_PSYCHIC, MOVE_FLAMETHROWER, MOVE_ROCK_SLIDE, MOVE_CALM_MIND}, - .level = 0, - .ppBonuses = 0, .hpEV = 200, .defenseEV = 100, .spAttackEV = 110, @@ -491,15 +466,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("SOLROCK"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_CLAYDOL, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_EARTHQUAKE, MOVE_PSYCHIC, MOVE_SHADOW_BALL, MOVE_ICE_BEAM}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .defenseEV = 135, .spDefenseEV = 120, @@ -513,15 +486,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xC, .nickname = _("CLAYDOL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_WEEZING, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_SLUDGE_BOMB, MOVE_SHADOW_BALL, MOVE_FRUSTRATION, MOVE_DESTINY_BOND}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .attackEV = 200, .spDefenseEV = 200, @@ -542,8 +513,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_LUNATONE, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_PSYCHIC, MOVE_ICE_BEAM, MOVE_ROCK_SLIDE, MOVE_CALM_MIND}, - .level = 0, - .ppBonuses = 0, .hpEV = 200, .defenseEV = 100, .spAttackEV = 110, @@ -558,15 +527,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("LUNATONE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_FLYGON, .heldItem = ITEM_CHOICE_BAND, .moves = {MOVE_EARTHQUAKE, MOVE_DRAGON_CLAW, MOVE_CRUNCH, MOVE_FLAMETHROWER}, - .level = 0, - .ppBonuses = 0, .attackEV = 155, .speedEV = 255, .spAttackEV = 100, @@ -580,7 +547,7 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x83, .nickname = _("FLYGON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -600,8 +567,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_SEALEO, .heldItem = ITEM_NEVER_MELT_ICE, .moves = {MOVE_BLIZZARD, MOVE_ICE_BALL, MOVE_ENCORE, MOVE_HAIL}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -614,15 +579,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("SEALEO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_AMPHAROS, .heldItem = ITEM_MAGNET, .moves = {MOVE_THUNDER, MOVE_THUNDER_WAVE, MOVE_COTTON_SPORE, MOVE_LIGHT_SCREEN}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -635,15 +598,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("AMPHAROS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_MACHOKE, .heldItem = ITEM_BLACK_BELT, .moves = {MOVE_DYNAMIC_PUNCH, MOVE_MUD_SLAP, MOVE_COUNTER, MOVE_SCARY_FACE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .attackEV = 255, .otId = TRAINER_HILL_OTID, @@ -656,15 +617,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x4E, .nickname = _("MACHOKE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_FLAREON, .heldItem = ITEM_CHARCOAL, .moves = {MOVE_FIRE_BLAST, MOVE_BITE, MOVE_QUICK_ATTACK, MOVE_SAND_ATTACK}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -677,15 +636,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x28, .nickname = _("FLAREON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_MAGNETON, .heldItem = ITEM_MAGNET, .moves = {MOVE_ZAP_CANNON, MOVE_THUNDER_WAVE, MOVE_SCREECH, MOVE_METAL_SOUND}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -698,15 +655,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x0, .nickname = _("MAGNETON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_PINSIR, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_GUILLOTINE, MOVE_BRICK_BREAK, MOVE_SWAGGER, MOVE_FAINT_ATTACK}, - .level = 0, - .ppBonuses = 0, .hpEV = 200, .defenseEV = 155, .spDefenseEV = 155, @@ -720,12 +675,12 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x85, .nickname = _("PINSIR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x35, 0x35, 0x26, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x26, 0x3A, 0x3B, 0x35, 0x3B, 0x08, 0x31, 0x3B, 0x2C, 0x2C, 0x2C, 0x2B, 0x24, 0x24, 0x24, 0x24, 0x2C, 0x3B, 0x3B, 0x2C, 0x3B, 0x08, @@ -745,10 +700,10 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x3FE5, 0x0401, 0xBDED, 0x8425, 0xDFBD, 0x0221, 0x7E7F, 0x0941, 0x7F7D, 0x0911, 0x7FF7, 0x4101, 0x79F9, 0x0803, 0xFFFF}, - .coords = {COORDS_XY(11,1), COORDS_XY(13,2)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_NORTH), - .range = TRAINER_RANGE(2, 1), - } + .trainerCoords = {COORDS_XY(11,1), COORDS_XY(13,2)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(2, 1), + } }, [1] = { @@ -772,8 +727,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_MEDITITE, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_FOCUS_PUNCH, MOVE_PROTECT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -787,15 +740,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x80, .nickname = _("MEDITITE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_HERACROSS, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_FOCUS_PUNCH, MOVE_PROTECT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -809,15 +760,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 1, .personality = 0x80, .nickname = _("HERACROSS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_HITMONTOP, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_FOCUS_PUNCH, MOVE_PROTECT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -831,15 +780,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x3, .nickname = _("HITMONTOP"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_MACHOP, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_FOCUS_PUNCH, MOVE_REVENGE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -853,15 +800,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x4E, .nickname = _("MACHOP"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_PINSIR, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_FOCUS_PUNCH, MOVE_REVENGE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -875,15 +820,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x80, .nickname = _("PINSIR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_HITMONCHAN, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_FOCUS_PUNCH, MOVE_REVENGE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -897,7 +840,7 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x3, .nickname = _("HITMONCHAN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -917,8 +860,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_VULPIX, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_WILL_O_WISP, MOVE_CONFUSE_RAY, MOVE_TAIL_WHIP, MOVE_OVERHEAT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -932,15 +873,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("VULPIX"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MINUN, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_THUNDER_WAVE, MOVE_CHARM, MOVE_ENCORE, MOVE_SPARK}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spAttackEV = 6, @@ -954,15 +893,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x8C, .nickname = _("MINUN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_ROSELIA, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_TOXIC, MOVE_LEECH_SEED, MOVE_SWEET_SCENT, MOVE_GIGA_DRAIN}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spAttackEV = 6, @@ -976,15 +913,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 1, .personality = 0xF, .nickname = _("ROSELIA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_MR_MIME, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_SAFEGUARD, MOVE_REFLECT, MOVE_LIGHT_SCREEN, MOVE_PSYCHIC}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -998,15 +933,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x82, .nickname = _("MR. MIME"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_PLUSLE, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_RAIN_DANCE, MOVE_LIGHT_SCREEN, MOVE_HELPING_HAND, MOVE_THUNDER}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -1020,15 +953,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x5, .nickname = _("PLUSLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_TOGEPI, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_LIGHT_SCREEN, MOVE_REFLECT, MOVE_FOLLOW_ME, MOVE_METRONOME}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -1042,12 +973,12 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 1, .personality = 0x37, .nickname = _("TOGEPI"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0xD1, 0xD5, 0xD5, 0xD5, 0xD9, 0xD9, 0x1B, 0x1C, 0x1D, 0xC5, 0xC6, 0xCE, 0xD5, 0xDB, 0xD5, 0x08, 0xD1, 0xCB, 0xC4, 0xC4, 0xDB, 0xDB, 0xC4, 0xC4, 0xC4, 0xCC, 0xCC, 0xCC, 0xCB, 0xDB, 0xCB, 0x08, @@ -1067,10 +998,10 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x73FB, 0x400B, 0x400B, 0x51EB, 0x538B, 0x51BB, 0x518B, 0x51EB, 0x518B, 0x51BB, 0x5003, 0x501F, 0x101F, 0x101F, 0xFFFF}, - .coords = {COORDS_XY(4,11), COORDS_XY(9,14)}, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_EAST), - .range = TRAINER_RANGE(3, 5), - } + .trainerCoords = {COORDS_XY(4,11), COORDS_XY(9,14)}, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_EAST), + .trainerRanges = TRAINER_RANGE(3, 5), + } }, [2] = { @@ -1094,8 +1025,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_VAPOREON, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_HAZE, MOVE_HELPING_HAND, MOVE_TICKLE, MOVE_WATER_PULSE}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -1116,8 +1045,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_DODRIO, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_HAZE, MOVE_TRI_ATTACK, MOVE_TAUNT, MOVE_TORMENT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spDefenseEV = 6, @@ -1138,8 +1065,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_OMASTAR, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_HAZE, MOVE_HYDRO_PUMP, MOVE_TICKLE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -1153,15 +1078,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x14, .nickname = _("OMASTAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_LICKITUNG, .heldItem = ITEM_CHESTO_BERRY, .moves = {MOVE_BELLY_DRUM, MOVE_REST, MOVE_MUD_SLAP, MOVE_SWAGGER}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -1175,15 +1098,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x8, .nickname = _("LICKITUNG"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_SLOWBRO, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_BELLY_DRUM, MOVE_MUD_SLAP, MOVE_SWAGGER, MOVE_AMNESIA}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -1204,8 +1125,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_LINOONE, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_BELLY_DRUM, MOVE_REST, MOVE_MUD_SLAP, MOVE_SWAGGER}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -1219,7 +1138,7 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x8, .nickname = _("LINOONE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -1239,8 +1158,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_SKITTY, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_PSYCH_UP, MOVE_DOUBLE_EDGE, MOVE_SHADOW_BALL, MOVE_IRON_TAIL}, - .level = 0, - .ppBonuses = 0, .attackEV = 252, .speedEV = 252, .otId = TRAINER_HILL_OTID, @@ -1253,15 +1170,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xCB, .nickname = _("SKITTY"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MEDICHAM, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_PSYCH_UP, MOVE_HI_JUMP_KICK, MOVE_MEGA_KICK, MOVE_ROCK_SLIDE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 6, .speedEV = 252, @@ -1282,8 +1197,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_STANTLER, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_PSYCH_UP, MOVE_RETURN, MOVE_EARTHQUAKE, MOVE_SHADOW_BALL}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .speedEV = 6, @@ -1304,8 +1217,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_NIDOQUEEN, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_SUPERPOWER, MOVE_BITE, MOVE_CHARM, MOVE_FLATTER}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -1326,8 +1237,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_NINETALES, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_OVERHEAT, MOVE_QUICK_ATTACK, MOVE_SPITE, MOVE_TAIL_WHIP}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -1341,15 +1250,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xD7, .nickname = _("NINETALES"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_CHARIZARD, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_OVERHEAT, MOVE_BEAT_UP, MOVE_SCARY_FACE, MOVE_GROWL}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -1363,12 +1270,12 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x28, .nickname = _("CHARIZARD"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x35, 0x35, 0x35, 0x26, 0x26, 0x13, 0x14, 0x15, 0x38, 0x26, 0x2E, 0x35, 0x35, 0x3B, 0x08, 0x69, 0x63, 0x64, 0x64, 0x64, 0x64, 0x71, 0x71, 0x71, 0x72, 0x64, 0x64, 0x64, 0x63, 0x73, 0x08, @@ -1388,10 +1295,10 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = 0x69, 0x42, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x73, 0x42, 0x73, 0x08, }, .collisionData = {0x0381, 0x7C3D, 0x4005, 0x4005, 0x4005, 0x4045, 0x4005, 0x4805, 0x4005, 0x4045, 0x4005, 0x4205, 0x4005, 0x4045, 0x1, 0x1}, - .coords = {COORDS_XY(5,2), COORDS_XY(9,2)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(3, 3), - } + .trainerCoords = {COORDS_XY(5,2), COORDS_XY(9,2)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(3, 3), + } }, [3] = { @@ -1415,8 +1322,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_ALAKAZAM, .heldItem = ITEM_PETAYA_BERRY, .moves = {MOVE_SKILL_SWAP, MOVE_FIRE_PUNCH, MOVE_ICE_PUNCH, MOVE_REFLECT}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1429,15 +1334,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x41, .nickname = _("ALAKAZAM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_BLISSEY, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_SKILL_SWAP, MOVE_EGG_BOMB, MOVE_THUNDERBOLT, MOVE_SING}, - .level = 0, - .ppBonuses = 0, .defenseEV = 255, .spAttackEV = 155, .spDefenseEV = 100, @@ -1451,15 +1354,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 1, .personality = 0xF, .nickname = _("BLISSEY"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_GRUMPIG, .heldItem = ITEM_TWISTED_SPOON, .moves = {MOVE_SKILL_SWAP, MOVE_PSYCHIC, MOVE_CONFUSE_RAY, MOVE_REST}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .defenseEV = 200, .spAttackEV = 200, @@ -1473,15 +1374,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x8C, .nickname = _("GRUMPIG"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_GARDEVOIR, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_SKILL_SWAP, MOVE_DREAM_EATER, MOVE_HYPNOSIS, MOVE_PROTECT}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1494,15 +1393,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 1, .personality = 0xF, .nickname = _("GARDEVOIR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_VENOMOTH, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SKILL_SWAP, MOVE_SIGNAL_BEAM, MOVE_SLEEP_POWDER, MOVE_TOXIC}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1515,15 +1412,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x80, .nickname = _("VENOMOTH"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ESPEON, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_SKILL_SWAP, MOVE_PSYBEAM, MOVE_SWIFT, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1536,7 +1431,7 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0xF, .nickname = _("ESPEON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -1556,8 +1451,6 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .species = SPECIES_WEEZING, .heldItem = ITEM_POISON_BARB, .moves = {MOVE_TOXIC, MOVE_SLUDGE_BOMB, MOVE_SMOKESCREEN, MOVE_HAZE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .attackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1570,15 +1463,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x3, .nickname = _("WEEZING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_GLOOM, .heldItem = ITEM_MIRACLE_SEED, .moves = {MOVE_PETAL_DANCE, MOVE_SYNTHESIS, MOVE_SUNNY_DAY, MOVE_SOLAR_BEAM}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1591,15 +1482,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x8C, .nickname = _("GLOOM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_MUK, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SCREECH, MOVE_DISABLE, MOVE_SLUDGE_BOMB, MOVE_ACID_ARMOR}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .attackEV = 255, .otId = TRAINER_HILL_OTID, @@ -1612,15 +1501,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x3, .nickname = _("MUK"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_TROPIUS, .heldItem = ITEM_WHITE_HERB, .moves = {MOVE_SUNNY_DAY, MOVE_SOLAR_BEAM, MOVE_SWEET_SCENT, MOVE_AERIAL_ACE}, - .level = 0, - .ppBonuses = 0, .attackEV = 120, .speedEV = 255, .spAttackEV = 135, @@ -1634,15 +1521,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x83, .nickname = _("TROPIUS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_BELLOSSOM, .heldItem = ITEM_MENTAL_HERB, .moves = {MOVE_SWEET_SCENT, MOVE_PETAL_DANCE, MOVE_STUN_SPORE, MOVE_SLUDGE_BOMB}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1655,15 +1540,13 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x6, .nickname = _("BELLOSSOM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_MEGANIUM, .heldItem = ITEM_MIRACLE_SEED, .moves = {MOVE_RAZOR_LEAF, MOVE_BODY_SLAM, MOVE_LEECH_SEED, MOVE_SYNTHESIS}, - .level = 0, - .ppBonuses = 0, .attackEV = 200, .speedEV = 110, .spAttackEV = 200, @@ -1677,12 +1560,12 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = .abilityNum = 0, .personality = 0x1F, .nickname = _("MEGANIUM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x1F, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x24, 0x24, 0x24, 0x2B, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, @@ -1702,14 +1585,14 @@ static const struct TrHillFloor sDataTagNormal_Floors[] = 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7C1, 0x8441, 0x8477, 0x8441, 0xA441, 0x0401, 0x1, 0x8401, 0x8465, 0x0445, 0x1441, 0x8449, 0x8449, 0x87C1, 0xFFFF}, - .coords = {COORDS_XY(7,4), COORDS_XY(7,10)}, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(3, 3), - } + .trainerCoords = {COORDS_XY(7,4), COORDS_XY(7,10)}, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3), + } }, }; -static const struct TrHillTag sDataTagVariety = +static const struct TrainerHillChallenge sChallenge_Variety = { .numTrainers = NUM_TRAINER_HILL_TRAINERS, .unused1 = 1, @@ -1717,7 +1600,7 @@ static const struct TrHillTag sDataTagVariety = .checksum = 0x00054C15 }; -static const struct TrHillFloor sDataTagVariety_Floors[] = { +static const struct TrainerHillFloor sFloors_Variety[] = { [0] = { .trainerNum1 = 41, @@ -1740,8 +1623,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_DELIBIRD, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_SPLASH, MOVE_HAIL, MOVE_PROTECT}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1754,15 +1635,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 1, .personality = 0x8A, .nickname = _("DELIBIRD"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_CLEFAIRY, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_COSMIC_POWER, MOVE_LIGHT_SCREEN, MOVE_MOONLIGHT}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1775,15 +1654,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("CLEFAIRY"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_PIKACHU, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_GROWL, MOVE_TAIL_WHIP, MOVE_AGILITY}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1796,15 +1673,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("PIKACHU"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_MARILL, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_DEFENSE_CURL, MOVE_TAIL_WHIP, MOVE_ENDURE}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1817,15 +1692,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 1, .personality = 0x8A, .nickname = _("MARILL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_JIGGLYPUFF, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_SING, MOVE_DISABLE, MOVE_REST}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1838,15 +1711,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("JIGGLYPUFF"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_TOGETIC, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_PRESENT, MOVE_CHARM, MOVE_SWEET_KISS, MOVE_WISH}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1859,7 +1730,7 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 1, .personality = 0x26, .nickname = _("TOGETIC"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -1879,8 +1750,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_WIGGLYTUFF, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_ROLLOUT, MOVE_DEFENSE_CURL, MOVE_SING, MOVE_DREAM_EATER}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1893,15 +1762,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xC1, .nickname = _("WIGGLYTUFF"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_SABLEYE, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_ASTONISH, MOVE_FAINT_ATTACK, MOVE_DETECT, MOVE_CONFUSE_RAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1914,15 +1781,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x87, .nickname = _("SABLEYE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_GRUMPIG, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_PSYBEAM, MOVE_MAGIC_COAT, MOVE_BOUNCE, MOVE_FUTURE_SIGHT}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1935,15 +1800,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("GRUMPIG"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_CORSOLA, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_BUBBLE_BEAM, MOVE_ROCK_BLAST, MOVE_REFLECT, MOVE_LIGHT_SCREEN}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1956,15 +1819,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x12, .nickname = _("CORSOLA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_CLAMPERL, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_WHIRLPOOL, MOVE_IRON_DEFENSE, MOVE_ENDURE, MOVE_CONFUSE_RAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1977,15 +1838,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("CLAMPERL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_STARMIE, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_DIVE, MOVE_ICY_WIND, MOVE_SWIFT, MOVE_SKILL_SWAP}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -1998,12 +1857,12 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("STARMIE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x42, 0x43, 0x43, 0x43, 0x43, 0x43, 0x40, 0x41, 0x41, 0x08, @@ -2023,9 +1882,9 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { 0x40, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x08, }, .collisionData = {0x0381, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1}, - .coords = {COORDS_XY(5,8), COORDS_XY(9,8)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(5,8), COORDS_XY(9,8)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(3, 3), } }, [1] = @@ -2050,8 +1909,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_JIGGLYPUFF, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SING, MOVE_HYPER_VOICE, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2068,15 +1925,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("JIGGLYPUFF"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_JYNX, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_PERISH_SONG, MOVE_FAKE_TEARS, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2093,15 +1948,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("JYNX"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_EXPLOUD, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_HOWL, MOVE_HYPER_VOICE, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2118,15 +1971,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = _("EXPLOUD"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_ABSOL, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SWORDS_DANCE, MOVE_SLASH, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2143,15 +1994,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = _("ABSOL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_PIDGEOTTO, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_FEATHER_DANCE, MOVE_AERIAL_ACE, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2168,15 +2017,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = _("PIDGEOTTO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ALTARIA, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_DRAGON_DANCE, MOVE_AERIAL_ACE, MOVE_ATTRACT, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 85, .attackEV = 85, .defenseEV = 85, @@ -2193,7 +2040,7 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("ALTARIA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -2213,8 +2060,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_CHIMECHO, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_UPROAR, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2228,15 +2073,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("CHIMECHO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_WHISMUR, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_UPROAR, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2250,15 +2093,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("WHISMUR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_YANMA, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_UPROAR, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2272,15 +2113,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x8A, .nickname = _("YANMA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_ILLUMISE, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_ENCORE, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -2294,15 +2133,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("ILLUMISE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_SPHEAL, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_ENCORE, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spDefenseEV = 6, @@ -2316,15 +2153,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("SPHEAL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_VIGOROTH, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_ENCORE, MOVE_ATTRACT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -2338,12 +2173,12 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x87, .nickname = _("VIGOROTH"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x91, 0x9B, 0x9C, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x96, 0x40, 0x40, 0x96, 0x9B, 0x9C, 0x9B, 0x08, @@ -2363,9 +2198,9 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xFFFF}, - .coords = {COORDS_XY(3,8), COORDS_XY(11,8)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(7, 7), + .trainerCoords = {COORDS_XY(3,8), COORDS_XY(11,8)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(7, 7), } }, [2] = @@ -2390,8 +2225,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_WOOPER, .heldItem = ITEM_FIGY_BERRY, .moves = {MOVE_RAIN_DANCE, MOVE_YAWN, MOVE_SURF, MOVE_HAZE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 6, .spAttackEV = 252, @@ -2405,15 +2238,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x8C, .nickname = _("WOOPER"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_POLIWAG, .heldItem = ITEM_WIKI_BERRY, .moves = {MOVE_SURF, MOVE_ICE_BEAM, MOVE_MIST, MOVE_HYPNOSIS}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 6, .spAttackEV = 252, @@ -2427,15 +2258,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 1, .personality = 0x3, .nickname = _("POLIWAG"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_PSYDUCK, .heldItem = ITEM_AGUAV_BERRY, .moves = {MOVE_HYPNOSIS, MOVE_SURF, MOVE_DISABLE, MOVE_SEISMIC_TOSS}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -2449,15 +2278,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("PSYDUCK"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_RHYDON, .heldItem = ITEM_SOFT_SAND, .moves = {MOVE_EARTHQUAKE, MOVE_MAGNITUDE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .speedEV = 6, @@ -2478,8 +2305,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_RHYHORN, .heldItem = ITEM_SOFT_SAND, .moves = {MOVE_EARTHQUAKE, MOVE_MAGNITUDE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2500,8 +2325,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_CUBONE, .heldItem = ITEM_SOFT_SAND, .moves = {MOVE_EARTHQUAKE, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2535,8 +2358,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_MAGNEMITE, .heldItem = ITEM_MAGNET, .moves = {MOVE_THUNDER, MOVE_ZAP_CANNON, MOVE_SPARK, MOVE_THUNDER_SHOCK}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -2550,15 +2371,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x8C, .nickname = _("MAGNEMITE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_ELECTABUZZ, .heldItem = ITEM_MAGNET, .moves = {MOVE_THUNDER, MOVE_THUNDERBOLT, MOVE_THUNDER_PUNCH, MOVE_SHOCK_WAVE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -2572,15 +2391,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x41, .nickname = _("ELECTABUZZ"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_FLAAFFY, .heldItem = ITEM_MAGNET, .moves = {MOVE_THUNDER, MOVE_THUNDERBOLT, MOVE_SHOCK_WAVE, MOVE_THUNDER_SHOCK}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .spAttackEV = 130, .otId = TRAINER_HILL_OTID, @@ -2593,15 +2410,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("FLAAFFY"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_BALTOY, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_EXPLOSION, MOVE_SELF_DESTRUCT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2622,8 +2437,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_PINECO, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_EXPLOSION, MOVE_SELF_DESTRUCT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .speedEV = 6, @@ -2644,8 +2457,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_VOLTORB, .heldItem = ITEM_SILK_SCARF, .moves = {MOVE_EXPLOSION, MOVE_SELF_DESTRUCT, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -2664,7 +2475,7 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x1C, 0x1D, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x91, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x84, 0x84, 0x84, 0x9A, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, @@ -2684,9 +2495,9 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { 0x17, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0x17, 0xBB, 0xBB, 0x08, }, .collisionData = {0x0381, 0x0381, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1, 0x7FF7, 0x1}, - .coords = {COORDS_XY(9,1), COORDS_XY(14,1)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(4, 4), + .trainerCoords = {COORDS_XY(9,1), COORDS_XY(14,1)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(4, 4), } }, [3] = @@ -2711,8 +2522,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_UNOWN, .heldItem = ITEM_MIRACLE_SEED, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2725,15 +2534,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x202, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_UNOWN, .heldItem = ITEM_MYSTIC_WATER, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2746,15 +2553,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x10001, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_UNOWN, .heldItem = ITEM_BLACK_BELT, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2767,15 +2572,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x102, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_SPINDA, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_TEETER_DANCE, MOVE_DIZZY_PUNCH, MOVE_CALM_MIND, MOVE_BATON_PASS}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .defenseEV = 200, .spDefenseEV = 200, @@ -2789,15 +2592,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x88FE980F, .nickname = _("SPINDA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_PLUSLE, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_HELPING_HAND, MOVE_THUNDERBOLT, MOVE_AGILITY, MOVE_BATON_PASS}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2810,15 +2611,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("PLUSLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_VOLBEAT, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_HELPING_HAND, MOVE_SIGNAL_BEAM, MOVE_SOLAR_BEAM, MOVE_MOONLIGHT}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2831,7 +2630,7 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("VOLBEAT"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -2851,8 +2650,6 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .species = SPECIES_SPINDA, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_TEETER_DANCE, MOVE_DIZZY_PUNCH, MOVE_CALM_MIND, MOVE_BATON_PASS}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .defenseEV = 200, .spDefenseEV = 200, @@ -2866,15 +2663,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xE2880098, .nickname = _("SPINDA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MINUN, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_HELPING_HAND, MOVE_THUNDERBOLT, MOVE_AGILITY, MOVE_BATON_PASS}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2887,15 +2682,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x8C, .nickname = _("MINUN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_ILLUMISE, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_HELPING_HAND, MOVE_WISH, MOVE_THUNDERBOLT, MOVE_MOONLIGHT}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2908,15 +2701,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("ILLUMISE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_UNOWN, .heldItem = ITEM_CHARCOAL, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2929,15 +2720,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x302, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_UNOWN, .heldItem = ITEM_SOFT_SAND, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .attackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2950,15 +2739,13 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x203, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_UNOWN, .heldItem = ITEM_TWISTED_SPOON, .moves = {MOVE_HIDDEN_POWER, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -2971,12 +2758,12 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { .abilityNum = 0, .personality = 0x301, .nickname = _("UNOWN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x69, 0x40, 0x6D, 0x41, 0x73, 0x41, 0x5E, 0x41, 0x71, 0x42, 0x45, 0x45, 0x45, 0x45, 0x45, 0x08, @@ -2996,14 +2783,14 @@ static const struct TrHillFloor sDataTagVariety_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x1, 0x2201, 0x1, 0x8881, 0x1, 0x2223, 0x1, 0x8889, 0x1, 0x2223, 0x1, 0x8889, 0x1, 0x2223, 0xFFFF}, - .coords = {COORDS_XY(10,2), COORDS_XY(14,2)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(10,2), COORDS_XY(14,2)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(3, 3), } }, }; -static const struct TrHillTag sDataTagUnique = +static const struct TrainerHillChallenge sChallenge_Unique = { .numTrainers = NUM_TRAINER_HILL_TRAINERS, .unused1 = 3, @@ -3011,7 +2798,7 @@ static const struct TrHillTag sDataTagUnique = .checksum = 0x000652F3 }; -static const struct TrHillFloor sDataTagUnique_Floors[] = { +static const struct TrainerHillFloor sFloors_Unique[] = { [0] = { .trainerNum1 = 49, @@ -3034,8 +2821,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_SUNFLORA, .heldItem = ITEM_PERSIM_BERRY, .moves = {MOVE_PETAL_DANCE, MOVE_GRASS_WHISTLE, MOVE_LIGHT_SCREEN, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .defenseEV = 155, .spDefenseEV = 100, @@ -3049,15 +2834,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("SUNFLORA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_TANGELA, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_GIGA_DRAIN, MOVE_SLEEP_POWDER, MOVE_AMNESIA, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spDefenseEV = 255, .otId = TRAINER_HILL_OTID, @@ -3070,15 +2853,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x91, .nickname = _("TANGELA"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_VENUSAUR, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_SOLAR_BEAM, MOVE_EARTHQUAKE, MOVE_SYNTHESIS, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 100, .attackEV = 110, .defenseEV = 100, @@ -3094,15 +2875,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x1F, .nickname = _("VENUSAUR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_LANTURN, .heldItem = ITEM_PERSIM_BERRY, .moves = {MOVE_SPARK, MOVE_WATER_PULSE, MOVE_CONFUSE_RAY, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3115,15 +2894,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("LANTURN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_MANECTRIC, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_THUNDERBOLT, MOVE_HEADBUTT, MOVE_BITE, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3136,15 +2913,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("MANECTRIC"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_RAIKOU, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_THUNDER, MOVE_CRUNCH, MOVE_ROAR, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3157,7 +2932,7 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("RAIKOU"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -3177,8 +2952,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_RELICANTH, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_ANCIENT_POWER, MOVE_WATER_PULSE, MOVE_MUD_SPORT, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .hpEV = 155, .defenseEV = 100, .spDefenseEV = 255, @@ -3192,15 +2965,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x2F, .nickname = _("RELICANTH"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_GOLDUCK, .heldItem = ITEM_LAX_INCENSE, .moves = {MOVE_SURF, MOVE_PSYBEAM, MOVE_BRICK_BREAK, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3213,15 +2984,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("GOLDUCK"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_BLASTOISE, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_HYDRO_PUMP, MOVE_BITE, MOVE_MIRROR_COAT, MOVE_RAIN_DANCE}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3234,15 +3003,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x28, .nickname = _("BLASTOISE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_MAGCARGO, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_HEAT_WAVE, MOVE_ROCK_SLIDE, MOVE_PROTECT, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spDefenseEV = 255, .otId = TRAINER_HILL_OTID, @@ -3255,15 +3022,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0x93, .nickname = _("MAGCARGO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_RAPIDASH, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_FIRE_BLAST, MOVE_BOUNCE, MOVE_QUICK_ATTACK, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3276,15 +3041,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("RAPIDASH"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_MOLTRES, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_SKY_ATTACK, MOVE_AERIAL_ACE, MOVE_ROAR, MOVE_SUNNY_DAY}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -3297,12 +3060,12 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("MOLTRES"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0xF1, 0xF5, 0xFB, 0xF5, 0xE6, 0xE6, 0x1B, 0x14, 0x15, 0xF8, 0xF9, 0xFA, 0xFB, 0xFB, 0xFB, 0x08, 0xF1, 0xEB, 0xFB, 0xEB, 0xEC, 0xEC, 0xEC, 0xF9, 0xE6, 0xEE, 0xF5, 0xF5, 0xF5, 0xF5, 0xF5, 0x08, @@ -3322,9 +3085,9 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x5E01, 0x50FF, 0x5083, 0x503B, 0x5FEB, 0xC02B, 0x5FEB, 0x5009, 0x57FD, 0x1005, 0x7FF5, 0x15, 0x7FF5, 0x1, 0xFFFF}, - .coords = {COORDS_XY(4,3), COORDS_XY(7,3)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(2, 2), + .trainerCoords = {COORDS_XY(4,3), COORDS_XY(7,3)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(2, 2), } }, [1] = @@ -3349,8 +3112,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_EARTHQUAKE, MOVE_SHADOW_BALL, MOVE_AERIAL_ACE, MOVE_IMPRISON}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 6, .speedEV = 252, @@ -3364,15 +3125,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x8A, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_CHESTO_BERRY, .moves = {MOVE_REST, MOVE_THUNDER_WAVE, MOVE_FLAMETHROWER, MOVE_IMPRISON}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -3386,15 +3145,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x87, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_TEETER_DANCE, MOVE_LOCK_ON, MOVE_SHEER_COLD, MOVE_EXPLOSION}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 6, .speedEV = 252, @@ -3408,15 +3165,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_PSYCHIC, MOVE_SURF, MOVE_THUNDERBOLT, MOVE_IMPRISON}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -3430,15 +3185,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_TOXIC, MOVE_PROTECT, MOVE_WILL_O_WISP, MOVE_IMPRISON}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -3452,15 +3205,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_SMEARGLE, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_TEETER_DANCE, MOVE_LOCK_ON, MOVE_SHEER_COLD, MOVE_DESTINY_BOND}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -3474,7 +3225,7 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x8A, .nickname = _("SMEARGLE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -3494,8 +3245,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_STARYU, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_CAMOUFLAGE, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -3509,15 +3258,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0xA, .nickname = _("STARYU"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MEOWTH, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_PAY_DAY, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -3531,15 +3278,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xD, .nickname = _("MEOWTH"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_BLAZIKEN, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_BLAZE_KICK, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spDefenseEV = 6, @@ -3553,15 +3298,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x28, .nickname = _("BLAZIKEN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_CUBONE, .heldItem = ITEM_THICK_CLUB, .moves = {MOVE_BONEMERANG, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .spDefenseEV = 252, @@ -3575,15 +3318,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0x16, .nickname = _("CUBONE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_BEEDRILL, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_TWINEEDLE, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .otId = TRAINER_HILL_OTID, @@ -3596,15 +3337,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x8A, .nickname = _("BEEDRILL"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_RATICATE, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_SUPER_FANG, MOVE_NONE, MOVE_NONE, MOVE_NONE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -3618,12 +3357,12 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0xD, .nickname = _("RATICATE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x26, 0x1B, 0x1C, 0x1D, 0x25, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x2D, 0x3B, 0x3B, 0x3B, 0x35, 0x2C, 0x23, 0x24, 0x23, 0x2C, 0x35, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, @@ -3643,9 +3382,9 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7C1, 0x8AA1, 0x0209, 0x5557, 0xA281, 0x81, 0x5D6D, 0x2283, 0x89, 0xDD55, 0x20A1, 0xA81, 0x7D5D, 0x9, 0xFFFF}, - .coords = {COORDS_XY(9,6), COORDS_XY(13,6)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(9,6), COORDS_XY(13,6)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(3, 3), } }, [2] = @@ -3670,8 +3409,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_CHARMELEON, .heldItem = ITEM_CHARCOAL, .moves = {MOVE_FIRE_SPIN, MOVE_DRAGON_RAGE, MOVE_FLAMETHROWER, MOVE_SLASH}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -3692,8 +3429,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_WARTORTLE, .heldItem = ITEM_MYSTIC_WATER, .moves = {MOVE_HYDRO_PUMP, MOVE_SKULL_BASH, MOVE_RAIN_DANCE, MOVE_PROTECT}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .otId = TRAINER_HILL_OTID, @@ -3713,8 +3448,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_IVYSAUR, .heldItem = ITEM_MIRACLE_SEED, .moves = {MOVE_SOLAR_BEAM, MOVE_SYNTHESIS, MOVE_GROWTH, MOVE_SWEET_SCENT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 6, .spAttackEV = 252, @@ -3735,8 +3468,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_BAYLEEF, .heldItem = ITEM_MIRACLE_SEED, .moves = {MOVE_SOLAR_BEAM, MOVE_SAFEGUARD, MOVE_LIGHT_SCREEN, MOVE_BODY_SLAM}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .attackEV = 130, .spAttackEV = 130, @@ -3757,8 +3488,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_CROCONAW, .heldItem = ITEM_MYSTIC_WATER, .moves = {MOVE_SCARY_FACE, MOVE_SLASH, MOVE_HYDRO_PUMP, MOVE_SCREECH}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .speedEV = 6, @@ -3779,8 +3508,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_QUILAVA, .heldItem = ITEM_CHARCOAL, .moves = {MOVE_QUICK_ATTACK, MOVE_FLAMETHROWER, MOVE_FLAME_WHEEL, MOVE_SWIFT}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -3814,8 +3541,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_SMOOCHUM, .heldItem = ITEM_PETAYA_BERRY, .moves = {MOVE_ICE_BEAM, MOVE_PSYCHIC, MOVE_SWEET_KISS, MOVE_FAKE_TEARS}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -3836,8 +3561,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_AZURILL, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_SURF, MOVE_SING, MOVE_RAIN_DANCE, MOVE_BLIZZARD}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -3858,8 +3581,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_ELEKID, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_FIRE_PUNCH, MOVE_THUNDER, MOVE_ICE_PUNCH, MOVE_THUNDER_WAVE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -3880,8 +3601,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_CLEFFA, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_MEGA_KICK, MOVE_SWEET_KISS, MOVE_SING, MOVE_METRONOME}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -3902,8 +3621,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_WYNAUT, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_ENCORE, MOVE_COUNTER, MOVE_MIRROR_COAT, MOVE_DESTINY_BOND}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -3924,8 +3641,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_MAGBY, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_FIRE_BLAST, MOVE_CONFUSE_RAY, MOVE_THUNDER_PUNCH, MOVE_BARRIER}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -3944,7 +3659,7 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x69, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x7C, 0x46, 0x08, @@ -3964,9 +3679,9 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7FFB, 0x4003, 0x5FFF, 0x4003, 0x7FFB, 0x4003, 0x7EFF, 0x4443, 0x4443, 0x4443, 0x7EFF, 0x4001, 0x7FFD, 0x1, 0xFFFF}, - .coords = {COORDS_XY(6,9), COORDS_XY(8,9)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(1, 1), + .trainerCoords = {COORDS_XY(6,9), COORDS_XY(8,9)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(1, 1), } }, [3] = @@ -3991,8 +3706,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_SUDOWOODO, .heldItem = ITEM_SITRUS_BERRY, .moves = {MOVE_ROCK_SLIDE, MOVE_BLOCK, MOVE_TOXIC, MOVE_EXPLOSION}, - .level = 0, - .ppBonuses = 0, .hpEV = 100, .attackEV = 255, .spDefenseEV = 155, @@ -4006,15 +3719,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("SUDOWOODO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_SLOWKING, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_SURF, MOVE_PSYCHIC, MOVE_BLIZZARD, MOVE_DISABLE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .defenseEV = 255, .otId = TRAINER_HILL_OTID, @@ -4027,15 +3738,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0x8C, .nickname = _("SLOWKING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_ENTEI, .heldItem = ITEM_PETAYA_BERRY, .moves = {MOVE_FLAMETHROWER, MOVE_CALM_MIND, MOVE_FIRE_SPIN, MOVE_ROAR}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4048,15 +3757,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("ENTEI"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_HITMONCHAN, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_MEGA_PUNCH, MOVE_DETECT, MOVE_COUNTER, MOVE_SKY_UPPERCUT}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -4069,15 +3776,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("HITMONCHAN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_MANTINE, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_SURF, MOVE_CONFUSE_RAY, MOVE_ATTRACT, MOVE_AERIAL_ACE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .defenseEV = 255, .otId = TRAINER_HILL_OTID, @@ -4090,15 +3795,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0x6, .nickname = _("MANTINE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ZAPDOS, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_THUNDERBOLT, MOVE_DRILL_PECK, MOVE_THUNDER_WAVE, MOVE_AGILITY}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4111,7 +3814,7 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x18, .nickname = _("ZAPDOS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -4131,8 +3834,6 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .species = SPECIES_HITMONLEE, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_MEGA_KICK, MOVE_MIND_READER, MOVE_FOCUS_ENERGY, MOVE_HI_JUMP_KICK}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .attackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4145,15 +3846,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("HITMONLEE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_PORYGON2, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_LOCK_ON, MOVE_BLIZZARD, MOVE_CONVERSION_2, MOVE_PSYCHIC}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4166,15 +3865,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("PORYGON2"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_SUICUNE, .heldItem = ITEM_PETAYA_BERRY, .moves = {MOVE_SURF, MOVE_CALM_MIND, MOVE_MIRROR_COAT, MOVE_MIST}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4187,15 +3884,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("SUICUNE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_HOUNDOOM, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_FLAMETHROWER, MOVE_CRUNCH, MOVE_ROAR, MOVE_WILL_O_WISP}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4208,15 +3903,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("HOUNDOOM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_STANTLER, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_CONFUSE_RAY, MOVE_SWAGGER, MOVE_PSYCH_UP, MOVE_TAKE_DOWN}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -4229,15 +3922,13 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("STANTLER"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ARTICUNO, .heldItem = ITEM_NEVER_MELT_ICE, .moves = {MOVE_BLIZZARD, MOVE_SHEER_COLD, MOVE_MIST, MOVE_AERIAL_ACE}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -4250,12 +3941,12 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("ARTICUNO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0xF1, 0xFB, 0xFB, 0xFB, 0xF9, 0xF9, 0x1B, 0x1C, 0x1D, 0xE5, 0xE6, 0xEE, 0xF5, 0xFB, 0xFB, 0x08, 0xED, 0xF5, 0xF5, 0xF5, 0xFB, 0xFB, 0xEC, 0xEC, 0xEC, 0xEB, 0xEC, 0xEC, 0xEC, 0xFB, 0xFB, 0x08, @@ -4275,14 +3966,14 @@ static const struct TrHillFloor sDataTagUnique_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x3F9, 0xF041, 0x41, 0x7F5F, 0x4401, 0x4541, 0x5579, 0x5541, 0x555F, 0x5541, 0x5541, 0x557D, 0x1101, 0x1101, 0xFFFF}, - .coords = {COORDS_XY(8,2), COORDS_XY(11,5)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_NORTH), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(8,2), COORDS_XY(11,5)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3), } }, }; -static const struct TrHillTag sDataTagExpert = +static const struct TrainerHillChallenge sChallenge_Expert = { .numTrainers = NUM_TRAINER_HILL_TRAINERS, .unused1 = 1, @@ -4290,7 +3981,7 @@ static const struct TrHillTag sDataTagExpert = .checksum = 0x00061F3F }; -static const struct TrHillFloor sDataTagExpert_Floors[] = { +static const struct TrainerHillFloor sFloors_Expert[] = { [0] = { .trainerNum1 = 57, @@ -4313,8 +4004,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_SNORLAX, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_MEGA_KICK, MOVE_SHADOW_BALL, MOVE_BRICK_BREAK, MOVE_EARTHQUAKE}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .defenseEV = 252, @@ -4328,15 +4017,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x35, .nickname = _("SNORLAX"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MILTANK, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_DOUBLE_EDGE, MOVE_SHADOW_BALL, MOVE_ATTRACT, MOVE_MILK_DRINK}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -4350,15 +4037,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("MILTANK"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_URSARING, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_DOUBLE_EDGE, MOVE_CRUNCH, MOVE_BRICK_BREAK, MOVE_AERIAL_ACE}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spAttackEV = 6, @@ -4372,15 +4057,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x7F, .nickname = _("URSARING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_SLAKING, .heldItem = ITEM_CHESTO_BERRY, .moves = {MOVE_HYPER_BEAM, MOVE_SHADOW_BALL, MOVE_BRICK_BREAK, MOVE_REST}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .spDefenseEV = 252, @@ -4394,15 +4077,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("SLAKING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_KANGASKHAN, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_MEGA_KICK, MOVE_SHADOW_BALL, MOVE_ATTRACT, MOVE_FAKE_OUT}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -4416,15 +4097,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("KANGASKHAN"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ZANGOOSE, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_CRUSH_CLAW, MOVE_SHADOW_BALL, MOVE_BRICK_BREAK, MOVE_ROAR}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -4438,7 +4117,7 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("ZANGOOSE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -4458,8 +4137,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_SLOWKING, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_PSYCHIC, MOVE_SURF, MOVE_ICE_BEAM, MOVE_SKILL_SWAP}, - .level = 0, - .ppBonuses = 0, .hpEV = 200, .defenseEV = 110, .spAttackEV = 200, @@ -4473,15 +4150,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("SLOWKING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_ESPEON, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_PSYCHIC, MOVE_BITE, MOVE_CALM_MIND, MOVE_REFLECT}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4495,15 +4170,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x28, .nickname = _("ESPEON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_STARMIE, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_PSYCHIC, MOVE_SURF, MOVE_THUNDERBOLT, MOVE_ICE_BEAM}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4517,15 +4190,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 1, .personality = 0xF, .nickname = _("STARMIE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_GENGAR, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_PSYCHIC, MOVE_THUNDERBOLT, MOVE_FIRE_PUNCH, MOVE_ICE_PUNCH}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4539,15 +4210,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("GENGAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_GARDEVOIR, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_PSYCHIC, MOVE_THUNDERBOLT, MOVE_MAGICAL_LEAF, MOVE_DESTINY_BOND}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4561,15 +4230,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("GARDEVOIR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_ALAKAZAM, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_PSYCHIC, MOVE_RECOVER, MOVE_THUNDER_WAVE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4583,12 +4250,12 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("ALAKAZAM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x1B, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x31, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x2C, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x08, @@ -4608,9 +4275,9 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x0201, 0x3EF9, 0x3EF9, 0x3EF9, 0x2009, 0x3019, 0x2009, 0x3019, 0x2009, 0x3019, 0x3019, 0x3C79, 0x1, 0x1, 0xFFFF}, - .coords = {COORDS_XY(4,7), COORDS_XY(10,7)}, - .direction = TRAINER_DIRS(DIR_WEST, DIR_EAST), - .range = TRAINER_RANGE(5, 5), + .trainerCoords = {COORDS_XY(4,7), COORDS_XY(10,7)}, + .trainerDirections = TRAINER_DIRS(DIR_WEST, DIR_EAST), + .trainerRanges = TRAINER_RANGE(5, 5), } }, [1] = @@ -4635,8 +4302,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_SWELLOW, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_AERIAL_ACE, MOVE_AGILITY, MOVE_FACADE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -4650,15 +4315,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("SWELLOW"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_MACHAMP, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_LOW_KICK, MOVE_ROCK_SLIDE, MOVE_FACADE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -4672,15 +4335,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("MACHAMP"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_URSARING, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_PROTECT, MOVE_ROCK_SLIDE, MOVE_FACADE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -4694,15 +4355,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("URSARING"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_KINGLER, .heldItem = ITEM_PERSIM_BERRY, .moves = {MOVE_RETURN, MOVE_PROTECT, MOVE_CRABHAMMER, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -4716,15 +4375,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("KINGLER"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_TYRANITAR, .heldItem = ITEM_PERSIM_BERRY, .moves = {MOVE_ROCK_SLIDE, MOVE_CRUNCH, MOVE_EARTHQUAKE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .defenseEV = 6, @@ -4738,15 +4395,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("TYRANITAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_DRAGONITE, .heldItem = ITEM_PERSIM_BERRY, .moves = {MOVE_BODY_SLAM, MOVE_THUNDER_WAVE, MOVE_EARTHQUAKE, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .attackEV = 252, .spDefenseEV = 6, @@ -4760,7 +4415,7 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x80, .nickname = _("DRAGONITE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -4780,8 +4435,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_JOLTEON, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_THUNDERBOLT, MOVE_THUNDER_WAVE, MOVE_ATTRACT, MOVE_SWAGGER}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4795,15 +4448,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("JOLTEON"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_ALAKAZAM, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_PSYCHIC, MOVE_ICE_PUNCH, MOVE_ATTRACT, MOVE_SWAGGER}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4817,15 +4468,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xA, .nickname = _("ALAKAZAM"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_STARMIE, .heldItem = ITEM_SCOPE_LENS, .moves = {MOVE_SURF, MOVE_PSYCHIC, MOVE_CONFUSE_RAY, MOVE_SWAGGER}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4839,15 +4488,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 1, .personality = 0xA, .nickname = _("STARMIE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_DUSCLOPS, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_PURSUIT, MOVE_PROTECT, MOVE_ATTRACT, MOVE_WILL_O_WISP}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -4861,15 +4508,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x82, .nickname = _("DUSCLOPS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_NINETALES, .heldItem = ITEM_WHITE_HERB, .moves = {MOVE_OVERHEAT, MOVE_CONFUSE_RAY, MOVE_WILL_O_WISP, MOVE_ATTRACT}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .speedEV = 252, .spAttackEV = 252, @@ -4883,15 +4528,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xD2, .nickname = _("NINETALES"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_BANETTE, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_SHADOW_BALL, MOVE_FAINT_ATTACK, MOVE_ATTRACT, MOVE_WILL_O_WISP}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spDefenseEV = 6, @@ -4905,12 +4548,12 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x85, .nickname = _("BANETTE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x38, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x91, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x78, 0x08, @@ -4930,9 +4573,9 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, }, .collisionData = {0x0381, 0x7FFD, 0x4001, 0x5FFF, 0x4001, 0x7FFD, 0x4001, 0x5FFF, 0x4001, 0x7FFD, 0x1, 0x1, 0x1, 0x1, 0x1, 0xFFFF}, - .coords = {COORDS_XY(7,10), COORDS_XY(7,14)}, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(7,10), COORDS_XY(7,14)}, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3), } }, [2] = @@ -4957,8 +4600,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_WOBBUFFET, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_MIRROR_COAT, MOVE_COUNTER, MOVE_SAFEGUARD, MOVE_ENCORE}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -4972,15 +4613,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x94, .nickname = _("WOBBUFFET"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_EXPLOUD, .heldItem = ITEM_CHESTO_BERRY, .moves = {MOVE_HYPER_VOICE, MOVE_COUNTER, MOVE_REST, MOVE_ROCK_SLIDE}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -5001,8 +4640,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_CROBAT, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_MEAN_LOOK, MOVE_CONFUSE_RAY, MOVE_AERIAL_ACE, MOVE_TOXIC}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -5016,15 +4653,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x0, .nickname = _("CROBAT"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_DUGTRIO, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_DOUBLE_TEAM, MOVE_PROTECT, MOVE_RETURN, MOVE_SLUDGE_BOMB}, - .level = 0, - .ppBonuses = 0, .hpEV = 6, .attackEV = 252, .speedEV = 252, @@ -5038,15 +4673,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 1, .personality = 0xD, .nickname = _("DUGTRIO"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_ELECTRODE, .heldItem = ITEM_PETAYA_BERRY, .moves = {MOVE_TORMENT, MOVE_MIRROR_COAT, MOVE_THUNDERBOLT, MOVE_LIGHT_SCREEN}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 252, .spAttackEV = 6, @@ -5067,8 +4700,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_GENGAR, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_CONFUSE_RAY, MOVE_MEAN_LOOK, MOVE_GIGA_DRAIN, MOVE_WILL_O_WISP}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spDefenseEV = 6, @@ -5082,7 +4713,7 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x14, .nickname = _("GENGAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -5102,8 +4733,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_LAPRAS, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_SURF, MOVE_ICE_BEAM, MOVE_PERISH_SONG, MOVE_SING}, - .level = 0, - .ppBonuses = 0, .hpEV = 250, .defenseEV = 130, .spDefenseEV = 130, @@ -5124,8 +4753,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_ABSOL, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_PERISH_SONG, MOVE_DOUBLE_EDGE, MOVE_PROTECT, MOVE_TORMENT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .defenseEV = 6, .speedEV = 252, @@ -5146,8 +4773,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_ALTARIA, .heldItem = ITEM_KINGS_ROCK, .moves = {MOVE_PERISH_SONG, MOVE_PROTECT, MOVE_DRAGON_CLAW, MOVE_FIRE_BLAST}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .spAttackEV = 6, .spDefenseEV = 252, @@ -5168,8 +4793,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_DEWGONG, .heldItem = ITEM_CHESTO_BERRY, .moves = {MOVE_ICE_BEAM, MOVE_SIGNAL_BEAM, MOVE_REST, MOVE_PERISH_SONG}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 252, .spAttackEV = 6, @@ -5190,8 +4813,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_POLITOED, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_HYDRO_PUMP, MOVE_BLIZZARD, MOVE_MIND_READER, MOVE_PERISH_SONG}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .spAttackEV = 6, .spDefenseEV = 252, @@ -5212,8 +4833,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_MAROWAK, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_PERISH_SONG, MOVE_EARTHQUAKE, MOVE_COUNTER, MOVE_PROTECT}, - .level = 0, - .ppBonuses = 0, .hpEV = 252, .speedEV = 6, .spDefenseEV = 252, @@ -5232,7 +4851,7 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { }, }, }, - .display = { + .map = { .metatileData = { 0xD1, 0xDB, 0xDB, 0xDB, 0xD9, 0xD9, 0x1B, 0x14, 0x15, 0x98, 0x99, 0x9A, 0x9B, 0x9B, 0x9B, 0x08, 0xD1, 0xDB, 0xDB, 0xDB, 0xD5, 0xD5, 0xC3, 0xF9, 0x86, 0x8E, 0x95, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, @@ -5252,9 +4871,9 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { 0xD1, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xCC, 0xFB, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x9B, 0x08, }, .collisionData = {0x0381, 0x0201, 0xEE1, 0x1EF1, 0x3EF9, 0x3EF9, 0x7E7D, 0x783D, 0x2BD, 0x783D, 0x7E7D, 0x3E79, 0x3EF9, 0x1EF1, 0xEE1, 0x201}, - .coords = {COORDS_XY(7,6), COORDS_XY(7,10)}, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(7,6), COORDS_XY(7,10)}, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3), } }, [3] = @@ -5279,8 +4898,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_FORRETRESS, .heldItem = ITEM_QUICK_CLAW, .moves = {MOVE_EXPLOSION, MOVE_EARTHQUAKE, MOVE_ATTRACT, MOVE_SPIKES}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .attackEV = 200, .spDefenseEV = 200, @@ -5294,15 +4911,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("FORRETRESS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_ELECTRODE, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_EXPLOSION, MOVE_THUNDERBOLT, MOVE_SWIFT, MOVE_LIGHT_SCREEN}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5315,15 +4930,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 1, .personality = 0xC, .nickname = _("ELECTRODE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_EXEGGUTOR, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_EXPLOSION, MOVE_HYPNOSIS, MOVE_PSYCHIC, MOVE_SOLAR_BEAM}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5336,15 +4949,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x7F, .nickname = _("EXEGGUTOR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_DUSCLOPS, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_IMPRISON, MOVE_PROTECT, MOVE_ICE_BEAM, MOVE_EARTHQUAKE}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .defenseEV = 200, .spDefenseEV = 200, @@ -5358,15 +4969,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x93, .nickname = _("DUSCLOPS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_NINETALES, .heldItem = ITEM_WHITE_HERB, .moves = {MOVE_IMPRISON, MOVE_PROTECT, MOVE_OVERHEAT, MOVE_CONFUSE_RAY}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5379,15 +4988,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0xF, .nickname = _("NINETALES"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_BANETTE, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_IMPRISON, MOVE_PROTECT, MOVE_THUNDERBOLT, MOVE_THUNDER}, - .level = 0, - .ppBonuses = 0, .hpEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5400,7 +5007,7 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x96, .nickname = _("BANETTE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, @@ -5420,8 +5027,6 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .species = SPECIES_SALAMENCE, .heldItem = ITEM_SHELL_BELL, .moves = {MOVE_ROCK_SLIDE, MOVE_FLAMETHROWER, MOVE_DRAGON_CLAW, MOVE_AERIAL_ACE}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5434,15 +5039,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x95, .nickname = _("SALAMENCE"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [1] = { .species = SPECIES_GENGAR, .heldItem = ITEM_LUM_BERRY, .moves = {MOVE_PSYCHIC, MOVE_GIGA_DRAIN, MOVE_WILL_O_WISP, MOVE_DESTINY_BOND}, - .level = 0, - .ppBonuses = 0, .speedEV = 255, .spAttackEV = 255, .otId = TRAINER_HILL_OTID, @@ -5455,15 +5058,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x8C, .nickname = _("GENGAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [2] = { .species = SPECIES_GYARADOS, .heldItem = ITEM_BRIGHT_POWDER, .moves = {MOVE_DRAGON_DANCE, MOVE_HYPER_BEAM, MOVE_BITE, MOVE_EARTHQUAKE}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -5476,15 +5077,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("GYARADOS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [3] = { .species = SPECIES_GENGAR, .heldItem = ITEM_SALAC_BERRY, .moves = {MOVE_EXPLOSION, MOVE_MEAN_LOOK, MOVE_SHADOW_BALL, MOVE_CONFUSE_RAY}, - .level = 0, - .ppBonuses = 0, .attackEV = 255, .speedEV = 255, .otId = TRAINER_HILL_OTID, @@ -5497,15 +5096,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x3, .nickname = _("GENGAR"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [4] = { .species = SPECIES_DUSCLOPS, .heldItem = ITEM_LEFTOVERS, .moves = {MOVE_MEAN_LOOK, MOVE_CONFUSE_RAY, MOVE_WILL_O_WISP, MOVE_SHADOW_BALL}, - .level = 0, - .ppBonuses = 0, .hpEV = 110, .defenseEV = 200, .spDefenseEV = 200, @@ -5519,15 +5116,13 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x14, .nickname = _("DUSCLOPS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, [5] = { .species = SPECIES_MISDREAVUS, .heldItem = ITEM_FOCUS_BAND, .moves = {MOVE_MEAN_LOOK, MOVE_CONFUSE_RAY, MOVE_PERISH_SONG, MOVE_SHADOW_BALL}, - .level = 0, - .ppBonuses = 0, .hpEV = 180, .defenseEV = 180, .spDefenseEV = 150, @@ -5541,12 +5136,12 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { .abilityNum = 0, .personality = 0x85, .nickname = _("MISDREAVUS"), - .friendship = 255, + .friendship = MAX_FRIENDSHIP, }, }, }, }, - .display = { + .map = { .metatileData = { 0x31, 0x3B, 0x3B, 0x3B, 0x39, 0x39, 0x13, 0x14, 0x15, 0x39, 0x39, 0x3A, 0x3B, 0x3B, 0x3B, 0x08, 0x96, 0xFB, 0xF6, 0xFD, 0xF6, 0xF6, 0xFB, 0x46, 0xFB, 0xF6, 0xF6, 0xFD, 0xF6, 0xFB, 0x9B, 0x08, @@ -5566,9 +5161,9 @@ static const struct TrHillFloor sDataTagExpert_Floors[] = { 0x96, 0xFB, 0xF6, 0xFD, 0xF6, 0xF6, 0xFB, 0x46, 0xFB, 0xF6, 0xF6, 0xFD, 0xF6, 0xFB, 0x9B, 0x08, }, .collisionData = {0x0381, 0x0101, 0x0101, 0x6C1, 0x0821, 0x16D1, 0x2829, 0x2009, 0x1, 0x2009, 0x2829, 0x16D1, 0x0821, 0x6C1, 0x0101, 0x101}, - .coords = {COORDS_XY(7,6), COORDS_XY(7,10)}, - .direction = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), - .range = TRAINER_RANGE(3, 3), + .trainerCoords = {COORDS_XY(7,6), COORDS_XY(7,10)}, + .trainerDirections = TRAINER_DIRS(DIR_SOUTH, DIR_NORTH), + .trainerRanges = TRAINER_RANGE(3, 3), } }, }; diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index c3f17f234a42..ac6e0e1e1ca0 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -57,22 +57,20 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .speechLose = { EC_WORD_TO_HER, EC_WORD_WIN, EC_WORD_JOKING, EC_WORD_HIGHS, EC_WORD_SCARY, EC_WORD_ELLIPSIS_EXCL }, .speechAfter = { EC_WORD_IGNORANT, EC_WORD_SO, EC_WORD_TODAY, EC_WORD_NIGHTTIME, EC_WORD_YOU_RE, EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_SWALOT, .heldItem = ITEM_SHELL_BELL, .moves = { MOVE_SLUDGE_BOMB, MOVE_SHADOW_BALL, MOVE_PAIN_SPLIT, MOVE_YAWN }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 55, .attackEV = 255, .defenseEV = 100, .speedEV = 0, .spAttackEV = 0, .spDefenseEV = 100, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -82,21 +80,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 1, .personality = 0x80, .nickname = __("ăžă«ăŽăĽă $$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_DUSTOX, .heldItem = ITEM_BRIGHT_POWDER, .moves = { MOVE_SILVER_WIND, MOVE_SLUDGE_BOMB, MOVE_SHADOW_BALL, MOVE_GIGA_DRAIN }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 0, .attackEV = 255, .defenseEV = 0, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -106,21 +102,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x6, .nickname = __("ă‰ă‚Żă‚±ă‚¤ă«$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_RELICANTH, .heldItem = ITEM_QUICK_CLAW, .moves = { MOVE_ANCIENT_POWER, MOVE_SURF, MOVE_EARTHQUAKE, MOVE_AMNESIA }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 0, .defenseEV = 0, .speedEV = 0, .spAttackEV = 155, .spDefenseEV = 255, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -130,7 +124,7 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x2f, .nickname = __("ジăĽă©ăłă‚ą$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, @@ -143,22 +137,20 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .speechLose = { EC_MOVE2(MINIMIZE), EC_WORD_AS_MUCH_AS, EC_EMPTY_WORD, EC_WORD_THEY_RE, EC_WORD_SAD, EC_WORD_EXCL }, .speechAfter = { EC_MOVE(BITE), EC_WORD_AS_MUCH_AS, EC_EMPTY_WORD, EC_WORD_THEY_RE, EC_WORD_ANGRY, EC_WORD_EXCL }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_CACTURNE, .heldItem = ITEM_QUICK_CLAW, .moves = { MOVE_GIGA_DRAIN, MOVE_FAINT_ATTACK, MOVE_THUNDER_PUNCH, MOVE_GROWTH }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 55, .attackEV = 0, .defenseEV = 100, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 100, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -168,21 +160,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x8c, .nickname = __("ăŽă‚Żă‚żă‚ą$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_SWELLOW, .heldItem = ITEM_BRIGHT_POWDER, .moves = { MOVE_FACADE, MOVE_AERIAL_ACE, MOVE_QUICK_ATTACK, MOVE_DOUBLE_TEAM }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 255, .attackEV = 255, .defenseEV = 0, .speedEV = 0, .spAttackEV = 0, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -192,21 +182,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x80, .nickname = __("オオスăăˇ$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_WHISCASH, .heldItem = ITEM_CHESTO_BERRY, .moves = { MOVE_SURF, MOVE_EARTHQUAKE, MOVE_AMNESIA, MOVE_REST }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 0, .attackEV = 255, .defenseEV = 0, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -216,7 +204,7 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x0, .nickname = __("ăŠăžă‚şăł$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, @@ -229,22 +217,20 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .speechLose = { EC_WORD_THAT, EC_WORD_ABOVE, EC_WORD_LOST, EC_WORD_STORES, EC_WORD_JOKING, EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS }, .speechAfter = { EC_WORD_ENTERTAINING, EC_WORD_NONE, EC_WORD_HEY_QUES, EC_WORD_ALMOST, EC_WORD_EXCL, EC_EMPTY_WORD }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_DELCATTY, .heldItem = ITEM_LUM_BERRY, .moves = { MOVE_SING, MOVE_BODY_SLAM, MOVE_SHADOW_BALL, MOVE_IRON_TAIL }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 0, .attackEV = 255, .defenseEV = 0, .speedEV = 255, .spAttackEV = 0, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -254,21 +240,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x3, .nickname = __("エăŤă‚łă­ă­$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_ROSELIA, .heldItem = ITEM_LEFTOVERS, .moves = { MOVE_GIGA_DRAIN, MOVE_GRASS_WHISTLE, MOVE_TOXIC, MOVE_LEECH_SEED }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 255, .attackEV = 0, .defenseEV = 0, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -278,21 +262,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 1, .personality = 0x6, .nickname = __("ă­ă‚ĽăŞă‚˘$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_BEAUTIFLY, .heldItem = ITEM_BRIGHT_POWDER, .moves = { MOVE_SILVER_WIND, MOVE_AERIAL_ACE, MOVE_ATTRACT, MOVE_PSYCHIC }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 100, .attackEV = 200, .defenseEV = 0, .speedEV = 0, .spAttackEV = 200, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -302,7 +284,7 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x6, .nickname = __("アゲăŹăłă$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, @@ -315,22 +297,20 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .speechLose = { EC_WORD_OUTSIDE, EC_WORD_UNCLE, EC_WORD_SURPRISE, EC_WORD_THESE, EC_WORD_HEY_QUES, EC_WORD_ELLIPSIS_EXCL }, .speechAfter = { EC_WORD_HE_S, EC_WORD_NO_1, EC_WORD_STRONG, EC_WORD_CHILDREN, EC_WORD_CAN_T, EC_WORD_EXCL_EXCL }, .mons = { - [0] = NULL_BATTLE_TOWER_POKEMON, - [1] = NULL_BATTLE_TOWER_POKEMON, - [2] = NULL_BATTLE_TOWER_POKEMON, + [0] = DUMMY_HILL_MON, + [1] = DUMMY_HILL_MON, + [2] = DUMMY_HILL_MON, [3] = { .species = SPECIES_MAWILE, .heldItem = ITEM_BRIGHT_POWDER, .moves = { MOVE_CRUNCH, MOVE_FLAMETHROWER, MOVE_THUNDER_PUNCH, MOVE_COMET_PUNCH }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 0, .attackEV = 0, .defenseEV = 100, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 155, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -340,21 +320,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 1, .personality = 0x0, .nickname = __("クăăĽă$$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [4] = { .species = SPECIES_SHARPEDO, .heldItem = ITEM_SCOPE_LENS, .moves = { MOVE_SURF, MOVE_CRUNCH, MOVE_DOUBLE_EDGE, MOVE_EARTHQUAKE }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 255, .attackEV = 0, .defenseEV = 0, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -364,21 +342,19 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x96, .nickname = __("サăˇăŹă€ăĽ$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, [5] = { .species = SPECIES_BANETTE, .heldItem = ITEM_LUM_BERRY, .moves = { MOVE_PSYCHIC, MOVE_SHADOW_BALL, MOVE_THUNDERBOLT, MOVE_WILL_O_WISP }, - .level = 0, - .ppBonuses = 0x0, .hpEV = 255, .attackEV = 0, .defenseEV = 0, .speedEV = 0, .spAttackEV = 255, .spDefenseEV = 0, - .otId = 0x10000000, + .otId = TRAINER_HILL_OTID, .hpIV = 5, .attackIV = 5, .defenseIV = 5, @@ -388,7 +364,7 @@ static const struct TrainerHillTrainer sTrainerHillTrainerTemplates_JP[] = { .abilityNum = 0, .personality = 0x96, .nickname = __("ジăĄăšăタ$$$$$$"), - .friendship = 255 + .friendship = MAX_FRIENDSHIP }, } }, @@ -447,40 +423,40 @@ static bool32 ValidateTrainerHillChecksum(struct EReaderTrainerHillSet *hillSet) return TRUE; } -static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSet, struct TrHillTag * hillTag) +static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSet, struct TrainerHillChallenge * challenge) { int i; AGB_ASSERT_EX(hillSet->dummy == 0, "cereader_tool.c", 450); AGB_ASSERT_EX(hillSet->id == 0, "cereader_tool.c", 452); - memset(hillTag, 0, SECTOR_SIZE); - hillTag->numTrainers = hillSet->numTrainers; - hillTag->unused1 = GetTrainerHillUnkVal(); - hillTag->numFloors = (hillSet->numTrainers + 1) / TRAINER_HILL_TRAINERS_PER_FLOOR; + memset(challenge, 0, SECTOR_SIZE); + challenge->numTrainers = hillSet->numTrainers; + challenge->unused1 = GetTrainerHillUnkVal(); + challenge->numFloors = (hillSet->numTrainers + 1) / HILL_TRAINERS_PER_FLOOR; for (i = 0; i < hillSet->numTrainers; i++) { if (!(i & 1)) { - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainerNum1 = hillSet->trainers[i].trainerNum; - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].display = hillSet->trainers[i].display; - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[0] = hillSet->trainers[i].trainer; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].trainerNum1 = hillSet->trainers[i].trainerNum; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].map = hillSet->trainers[i].map; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].trainers[0] = hillSet->trainers[i].trainer; } else { - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainerNum2 = hillSet->trainers[i].trainerNum; - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[1] = hillSet->trainers[i].trainer; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].trainerNum2 = hillSet->trainers[i].trainerNum; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].trainers[1] = hillSet->trainers[i].trainer; } } if (i & 1) { - hillTag->floors[i / TRAINER_HILL_TRAINERS_PER_FLOOR].trainers[1] = sTrainerHillTrainerTemplates_JP[i / TRAINER_HILL_TRAINERS_PER_FLOOR]; + challenge->floors[i / HILL_TRAINERS_PER_FLOOR].trainers[1] = sTrainerHillTrainerTemplates_JP[i / HILL_TRAINERS_PER_FLOOR]; } - hillTag->checksum = CalcByteArraySum((u8 *)hillTag->floors, NUM_TRAINER_HILL_FLOORS * sizeof(struct TrHillFloor)); - if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_HILL, (u8 *)hillTag) != SAVE_STATUS_OK) + challenge->checksum = CalcByteArraySum((u8 *)challenge->floors, NUM_TRAINER_HILL_FLOORS * sizeof(struct TrainerHillFloor)); + if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_HILL, (u8 *)challenge) != SAVE_STATUS_OK) return FALSE; return TRUE; diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 39c6202a0f87..2deacfc70561 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -32,23 +32,21 @@ #include "constants/trainer_hill.h" #include "constants/trainer_types.h" -#define HILL_TAG_NORMAL 0 -#define HILL_TAG_VARIETY 1 -#define HILL_TAG_UNIQUE 2 -#define HILL_TAG_EXPERT 3 - #define HILL_MAX_TIME 215999 // 60 * 60 * 60 - 1 -// EWRAM -struct TrHillStruct2 +struct FloorTrainers { - u8 floorId; - struct TrHillTag tag; - struct TrHillFloor floors[NUM_TRAINER_HILL_FLOORS]; + u8 name[HILL_TRAINERS_PER_FLOOR][HILL_TRAINER_NAME_LENGTH]; + u8 facilityClass[HILL_TRAINERS_PER_FLOOR]; }; -static EWRAM_DATA struct TrHillStruct2 *sHillData = NULL; -static EWRAM_DATA struct TrHillRoomTrainers *sRoomTrainers = NULL; +static EWRAM_DATA struct { + u8 floorId; + struct TrainerHillChallenge challenge; + struct TrainerHillFloor floors[NUM_TRAINER_HILL_FLOORS]; +} *sHillData = NULL; + +static EWRAM_DATA struct FloorTrainers *sFloorTrainers = NULL; EWRAM_DATA u32 *gTrainerHillVBlankCounter = NULL; // This file's functions. @@ -69,7 +67,7 @@ static void GetGameSaved(void); static void SetGameSaved(void); static void ClearGameSaved(void); static void GetChallengeWon(void); -static void TrainerHillSetTag(void); +static void TrainerHillSetMode(void); static void SetUpDataStruct(void); static void FreeDataStruct(void); static void TrainerHillDummy(void); @@ -202,12 +200,12 @@ static const u16 *const *const sPrizeListSets[] = static const u16 sEReader_Pal[] = INCBIN_U16("graphics/trainer_hill/ereader.gbapal"); static const u8 sRecordWinColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; -static const struct TrHillTag *const sDataPerTag[] = +static const struct TrainerHillChallenge *const sChallengeData[NUM_TRAINER_HILL_MODES] = { - &sDataTagNormal, - &sDataTagVariety, - &sDataTagUnique, - &sDataTagExpert, + [HILL_MODE_NORMAL] = &sChallenge_Normal, + [HILL_MODE_VARIETY] = &sChallenge_Variety, + [HILL_MODE_UNIQUE] = &sChallenge_Unique, + [HILL_MODE_EXPERT] = &sChallenge_Expert, }; // Unused. @@ -238,15 +236,15 @@ static void (* const sHillFunctions[])(void) = [TRAINER_HILL_FUNC_SET_GAME_SAVED] = SetGameSaved, [TRAINER_HILL_FUNC_CLEAR_GAME_SAVED] = ClearGameSaved, [TRAINER_HILL_FUNC_GET_WON] = GetChallengeWon, - [TRAINER_HILL_FUNC_SET_TAG] = TrainerHillSetTag, + [TRAINER_HILL_FUNC_SET_MODE] = TrainerHillSetMode, }; -static const u8 *const sTagMatchStrings[] = +static const u8 *const sModeStrings[NUM_TRAINER_HILL_MODES] = { - gText_NormalTagMatch, - gText_VarietyTagMatch, - gText_UniqueTagMatch, - gText_ExpertTagMatch, + [HILL_MODE_NORMAL] = gText_NormalTagMatch, + [HILL_MODE_VARIETY] = gText_VarietyTagMatch, + [HILL_MODE_UNIQUE] = gText_UniqueTagMatch, + [HILL_MODE_EXPERT] = gText_ExpertTagMatch, }; static const struct ObjectEventTemplate sTrainerObjectEventTemplate = @@ -261,18 +259,17 @@ static const struct ObjectEventTemplate sTrainerObjectEventTemplate = static const u32 sNextFloorMapNum[NUM_TRAINER_HILL_FLOORS] = { - MAP_NUM(TRAINER_HILL_2F), - MAP_NUM(TRAINER_HILL_3F), - MAP_NUM(TRAINER_HILL_4F), - MAP_NUM(TRAINER_HILL_ROOF) + [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) }; -static const u8 sTrainerPartySlots[][PARTY_SIZE / 2] = +static const u8 sTrainerPartySlots[HILL_TRAINERS_PER_FLOOR][PARTY_SIZE / 2] = { {0, 1, 2}, {3, 4, 5} }; -// code void CallTrainerHillFunction(void) { SetUpDataStruct(); @@ -287,7 +284,7 @@ void ResetTrainerHillResults(void) gSaveBlock2Ptr->frontier.savedGame = 0; gSaveBlock2Ptr->frontier.unk_EF9 = 0; gSaveBlock1Ptr->trainerHill.bestTime = 0; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_TRAINER_HILL_MODES; i++) SetTimerValue(&gSaveBlock1Ptr->trainerHillTimes[i], HILL_MAX_TIME); } @@ -300,7 +297,7 @@ u8 GetTrainerHillOpponentClass(u16 trainerId) { u8 id = trainerId - 1; - return gFacilityClassToTrainerClass[sRoomTrainers->facilityClass[id]]; + return gFacilityClassToTrainerClass[sFloorTrainers->facilityClass[id]]; } void GetTrainerHillTrainerName(u8 *dst, u16 trainerId) @@ -309,7 +306,7 @@ void GetTrainerHillTrainerName(u8 *dst, u16 trainerId) u8 id = trainerId - 1; for (i = 0; i < HILL_TRAINER_NAME_LENGTH; i++) - dst[i] = sRoomTrainers->name[id][i]; + dst[i] = sFloorTrainers->name[id][i]; } u8 GetTrainerHillTrainerFrontSpriteId(u16 trainerId) @@ -329,15 +326,14 @@ void InitTrainerHillBattleStruct(void) s32 i, j; SetUpDataStruct(); - sRoomTrainers = AllocZeroed(sizeof(*sRoomTrainers)); + sFloorTrainers = AllocZeroed(sizeof(*sFloorTrainers)); - for (i = 0; i < 2; i++) + for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) { for (j = 0; j < HILL_TRAINER_NAME_LENGTH; j++) - { - sRoomTrainers->name[i][j] = sHillData->floors[sHillData->floorId].trainers[i].name[j]; - } - sRoomTrainers->facilityClass[i] = sHillData->floors[sHillData->floorId].trainers[i].facilityClass; + sFloorTrainers->name[i][j] = sHillData->floors[sHillData->floorId].trainers[i].name[j]; + + sFloorTrainers->facilityClass[i] = sHillData->floors[sHillData->floorId].trainers[i].facilityClass; } SetTrainerHillVBlankCounter(&gSaveBlock1Ptr->trainerHill.timer); FreeDataStruct(); @@ -345,8 +341,7 @@ void InitTrainerHillBattleStruct(void) void FreeTrainerHillBattleStruct(void) { - if (sRoomTrainers != NULL) - FREE_AND_SET_NULL(sRoomTrainers); + TRY_FREE_AND_SET_NULL(sFloorTrainers); } static void SetUpDataStruct(void) @@ -355,15 +350,20 @@ static void SetUpDataStruct(void) { sHillData = AllocZeroed(sizeof(*sHillData)); sHillData->floorId = gMapHeader.mapLayoutId - LAYOUT_TRAINER_HILL_1F; - CpuCopy32(sDataPerTag[gSaveBlock1Ptr->trainerHill.tag], &sHillData->tag, sizeof(sHillData->tag) + 4 * sizeof(struct TrHillFloor)); + + // This copy depends on the floor data for each challenge being directly after the + // challenge header data, and for the field 'floors' in sHillData to come directly + // after the field 'challenge'. + // e.g. for HILL_MODE_NORMAL, it will copy sChallenge_Normal to sHillData->challenge and + // it will copy sFloors_Normal to sHillData->floors + CpuCopy32(sChallengeData[gSaveBlock1Ptr->trainerHill.mode], &sHillData->challenge, sizeof(sHillData->challenge) + sizeof(sHillData->floors)); TrainerHillDummy(); } } static void FreeDataStruct(void) { - if (sHillData != NULL) - FREE_AND_SET_NULL(sHillData); + TRY_FREE_AND_SET_NULL(sHillData); } void CopyTrainerHillTrainerText(u8 which, u16 trainerId) @@ -428,7 +428,7 @@ static void GiveChallengePrize(void) { u16 itemId = GetPrizeItemId(); - if (sHillData->tag.numFloors != NUM_TRAINER_HILL_FLOORS || gSaveBlock1Ptr->trainerHill.receivedPrize) + if (sHillData->challenge.numFloors != NUM_TRAINER_HILL_FLOORS || gSaveBlock1Ptr->trainerHill.receivedPrize) { gSpecialVar_Result = 2; } @@ -456,7 +456,7 @@ static void CheckFinalTime(void) else if (GetTimerValue(&gSaveBlock1Ptr->trainerHill.bestTime) > gSaveBlock1Ptr->trainerHill.timer) { SetTimerValue(&gSaveBlock1Ptr->trainerHill.bestTime, gSaveBlock1Ptr->trainerHill.timer); - gSaveBlock1Ptr->trainerHillTimes[gSaveBlock1Ptr->trainerHill.tag] = gSaveBlock1Ptr->trainerHill.bestTime; + gSaveBlock1Ptr->trainerHillTimes[gSaveBlock1Ptr->trainerHill.mode] = gSaveBlock1Ptr->trainerHill.bestTime; gSpecialVar_Result = 0; } else @@ -529,9 +529,9 @@ static void BufferChallengeTime(void) static void GetAllFloorsUsed(void) { SetUpDataStruct(); - if (sHillData->tag.numFloors != NUM_TRAINER_HILL_FLOORS) + if (sHillData->challenge.numFloors != NUM_TRAINER_HILL_FLOORS) { - ConvertIntToDecimalStringN(gStringVar1, sHillData->tag.numFloors, STR_CONV_MODE_LEFT_ALIGN, 1); + ConvertIntToDecimalStringN(gStringVar1, sHillData->challenge.numFloors, STR_CONV_MODE_LEFT_ALIGN, 1); gSpecialVar_Result = FALSE; } else @@ -592,9 +592,9 @@ void PrintOnTrainerHillRecordsWindow(void) AddTextPrinterParameterized3(0, FONT_NORMAL, x, 2, sRecordWinColors, TEXT_SKIP_DRAW, gText_TimeBoard); y = 18; - for (i = 0; i < 4; i++) + for (i = 0; i < NUM_TRAINER_HILL_MODES; i++) { - AddTextPrinterParameterized3(0, FONT_NORMAL, 0, y, sRecordWinColors, TEXT_SKIP_DRAW, sTagMatchStrings[i]); + AddTextPrinterParameterized3(0, FONT_NORMAL, 0, y, sRecordWinColors, TEXT_SKIP_DRAW, sModeStrings[i]); y += 15; total = GetTimerValue(&gSaveBlock1Ptr->trainerHillTimes[i]); minutes = total / (60 * 60); @@ -637,23 +637,23 @@ void LoadTrainerHillObjectEventTemplates(void) return; SetUpDataStruct(); - for (i = 0; i < 2; i++) + for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) gSaveBlock2Ptr->frontier.trainerIds[i] = 0xFFFF; CpuFill32(0, gSaveBlock1Ptr->objectEventTemplates, sizeof(gSaveBlock1Ptr->objectEventTemplates)); floorId = GetFloorId(); - for (i = 0; i < 2; i++) + for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) { u8 bits; eventTemplates[i] = sTrainerObjectEventTemplate; eventTemplates[i].localId = i + 1; eventTemplates[i].graphicsId = FacilityClassToGraphicsId(sHillData->floors[floorId].trainers[i].facilityClass); - eventTemplates[i].x = sHillData->floors[floorId].display.coords[i] & 0xF; - eventTemplates[i].y = ((sHillData->floors[floorId].display.coords[i] >> 4) & 0xF) + 5; + eventTemplates[i].x = sHillData->floors[floorId].map.trainerCoords[i] & 0xF; + eventTemplates[i].y = ((sHillData->floors[floorId].map.trainerCoords[i] >> 4) & 0xF) + 5; bits = i << 2; - eventTemplates[i].movementType = ((sHillData->floors[floorId].display.direction >> bits) & 0xF) + MOVEMENT_TYPE_FACE_UP; - eventTemplates[i].trainerRange_berryTreeId = (sHillData->floors[floorId].display.range >> bits) & 0xF; + eventTemplates[i].movementType = ((sHillData->floors[floorId].map.trainerDirections >> bits) & 0xF) + MOVEMENT_TYPE_FACE_UP; + eventTemplates[i].trainerRange_berryTreeId = (sHillData->floors[floorId].map.trainerRanges >> bits) & 0xF; eventTemplates[i].script = TrainerHill_EventScript_TrainerBattle; gSaveBlock2Ptr->frontier.trainerIds[i] = i + 1; } @@ -669,14 +669,14 @@ bool32 LoadTrainerHillFloorObjectEventScripts(void) return TRUE; } -static u16 GetMetatileForFloor(u8 floorId, u32 x, u32 y, u32 stride) // stride is always 16 +static u16 GetMetatileForFloor(u8 floorId, u32 x, u32 y, u32 floorWidth) // floorWidth is always 16 { bool8 impassable; u16 metatile; u16 elevation; - impassable = (sHillData->floors[floorId].display.collisionData[y] >> (15 - x) & 1); - metatile = sHillData->floors[floorId].display.metatileData[stride * y + x] + NUM_METATILES_IN_PRIMARY; + impassable = (sHillData->floors[floorId].map.collisionData[y] >> (15 - x) & 1); + metatile = sHillData->floors[floorId].map.metatileData[floorWidth * y + x] + NUM_METATILES_IN_PRIMARY; elevation = 3 << MAPGRID_ELEVATION_SHIFT; return ((impassable << MAPGRID_COLLISION_SHIFT) & MAPGRID_COLLISION_MASK) | elevation | (metatile & MAPGRID_METATILE_ID_MASK); @@ -684,7 +684,7 @@ static u16 GetMetatileForFloor(u8 floorId, u32 x, u32 y, u32 stride) // stride i void GenerateTrainerHillFloorLayout(u16 *mapArg) { - s32 i, j; + s32 y, x; u16 *src, *dst; u8 mapId = GetCurrentTrainerHillMapId(); @@ -705,24 +705,25 @@ void GenerateTrainerHillFloorLayout(u16 *mapArg) mapId = GetFloorId(); src = gMapHeader.mapLayout->map; gBackupMapLayout.map = mapArg; - gBackupMapLayout.width = 31; - gBackupMapLayout.height = 35; + // Dimensions include border area loaded beyond map + gBackupMapLayout.width = HILL_FLOOR_WIDTH + 15; + gBackupMapLayout.height = HILL_FLOOR_HEIGHT + 14; dst = mapArg + 224; // First 5 rows of the map (Entrance / Exit) are always the same - for (i = 0; i < 5; i++) + for (y = 0; y < HILL_FLOOR_HEIGHT_MARGIN; y++) { - for (j = 0; j < 16; j++) - dst[j] = src[j]; + for (x = 0; x < HILL_FLOOR_WIDTH; x++) + dst[x] = src[x]; dst += 31; src += 16; } // Load the 16x16 floor-specific layout - for (i = 0; i < 16; i++) + for (y = 0; y < HILL_FLOOR_HEIGHT_MAIN; y++) { - for (j = 0; j < 16; j++) - dst[j] = GetMetatileForFloor(mapId, j, i, 16); + for (x = 0; x < HILL_FLOOR_WIDTH; x++) + dst[x] = GetMetatileForFloor(mapId, x, y, HILL_FLOOR_WIDTH); dst += 31; } @@ -812,8 +813,8 @@ u16 LocalIdToHillTrainerId(u8 localId) bool8 GetHillTrainerFlag(u8 objectEventId) { - u32 floorId = GetFloorId() * 2; - u8 bitId = gObjectEvents[objectEventId].localId - 1 + floorId; + u32 trainerIndexStart = GetFloorId() * HILL_TRAINERS_PER_FLOOR; + u8 bitId = gObjectEvents[objectEventId].localId - 1 + trainerIndexStart; return gSaveBlock2Ptr->frontier.trainerFlags & gBitTable[bitId]; } @@ -821,24 +822,24 @@ bool8 GetHillTrainerFlag(u8 objectEventId) void SetHillTrainerFlag(void) { u8 i; - u8 floorId = GetFloorId() * 2; + u8 trainerIndexStart = GetFloorId() * HILL_TRAINERS_PER_FLOOR; - for (i = 0; i < 2; i++) + for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) { if (gSaveBlock2Ptr->frontier.trainerIds[i] == gTrainerBattleOpponent_A) { - gSaveBlock2Ptr->frontier.trainerFlags |= gBitTable[floorId + i]; + gSaveBlock2Ptr->frontier.trainerFlags |= gBitTable[trainerIndexStart + i]; break; } } if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) { - for (i = 0; i < 2; i++) + for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) { if (gSaveBlock2Ptr->frontier.trainerIds[i] == gTrainerBattleOpponent_B) { - gSaveBlock2Ptr->frontier.trainerFlags |= gBitTable[floorId + i]; + gSaveBlock2Ptr->frontier.trainerFlags |= gBitTable[trainerIndexStart + i]; break; } } @@ -861,14 +862,14 @@ static void CreateNPCTrainerHillParty(u16 trainerId, u8 firstMonId) u8 trId, level; s32 i, floorId, partySlot; - if (trainerId == 0 || trainerId > 2) + if (trainerId == 0 || trainerId > HILL_TRAINERS_PER_FLOOR) return; trId = trainerId - 1; SetUpDataStruct(); level = GetHighestLevelInPlayerParty(); floorId = GetFloorId(); - for (i = firstMonId, partySlot = 0; i < firstMonId + 3; i++, partySlot++) + for (i = firstMonId, partySlot = 0; i < firstMonId + PARTY_SIZE / 2; i++, partySlot++) { u8 id = sTrainerPartySlots[trId][partySlot]; struct Pokemon *mon = &gEnemyParty[i]; @@ -890,7 +891,7 @@ void FillHillTrainersParties(void) { ZeroEnemyPartyMons(); CreateNPCTrainerHillParty(gTrainerBattleOpponent_A, 0); - CreateNPCTrainerHillParty(gTrainerBattleOpponent_B, 3); + CreateNPCTrainerHillParty(gTrainerBattleOpponent_B, PARTY_SIZE / 2); } // This function is unused, but my best guess is @@ -935,7 +936,7 @@ u8 GetNumFloorsInTrainerHillChallenge(void) u8 floors; SetUpDataStruct(); - floors = sHillData->tag.numFloors; + floors = sHillData->challenge.numFloors; FreeDataStruct(); return floors; @@ -989,9 +990,9 @@ static void GetChallengeWon(void) gSpecialVar_Result = TRUE; } -static void TrainerHillSetTag(void) +static void TrainerHillSetMode(void) { - gSaveBlock1Ptr->trainerHill.tag = gSpecialVar_0x8005; + gSaveBlock1Ptr->trainerHill.mode = gSpecialVar_0x8005; gSaveBlock1Ptr->trainerHill.bestTime = gSaveBlock1Ptr->trainerHillTimes[gSpecialVar_0x8005]; } @@ -1030,12 +1031,12 @@ static u16 GetPrizeItemId(void) prizeListSetId = var / 256; prizeListSetId %= 2; - if (FlagGet(FLAG_SYS_GAME_CLEAR) && sHillData->tag.numTrainers == NUM_TRAINER_HILL_TRAINERS) + if (FlagGet(FLAG_SYS_GAME_CLEAR) && sHillData->challenge.numTrainers == NUM_TRAINER_HILL_TRAINERS) i = GetPrizeListId(TRUE); else i = GetPrizeListId(FALSE); - if (gSaveBlock1Ptr->trainerHill.tag == HILL_TAG_EXPERT) + if (gSaveBlock1Ptr->trainerHill.mode == HILL_MODE_EXPERT) i = (i + 1) % NUM_TRAINER_HILL_PRIZE_LISTS; prizeList = sPrizeListSets[prizeListSetId][i]; From 328b925a08c3dfc47ebd49b7b8f9db2822790e34 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 31 Mar 2022 13:11:44 -0400 Subject: [PATCH 564/762] Move trainer hill map data to bin files --- .../maps_expert/floor_0/collision.bin | Bin 0 -> 32 bytes .../maps_expert/floor_0/metatiles.bin | 1 + .../maps_expert/floor_1/collision.bin | Bin 0 -> 32 bytes .../maps_expert/floor_1/metatiles.bin | 1 + .../maps_expert/floor_2/collision.bin | 1 + .../maps_expert/floor_2/metatiles.bin | 1 + .../maps_expert/floor_3/collision.bin | Bin 0 -> 32 bytes .../maps_expert/floor_3/metatiles.bin | 1 + .../maps_jp/floor_0/collision.bin | 1 + .../maps_jp/floor_0/metatiles.bin | 1 + .../maps_jp/floor_1/collision.bin | Bin 0 -> 32 bytes .../maps_jp/floor_1/metatiles.bin | 1 + .../maps_normal/floor_0/collision.bin | 1 + .../maps_normal/floor_0/metatiles.bin | 1 + .../maps_normal/floor_1/collision.bin | 1 + .../maps_normal/floor_1/metatiles.bin | 1 + .../maps_normal/floor_2/collision.bin | Bin 0 -> 32 bytes .../maps_normal/floor_2/metatiles.bin | 1 + .../maps_normal/floor_3/collision.bin | Bin 0 -> 32 bytes .../maps_normal/floor_3/metatiles.bin | 1 + .../maps_unique/floor_0/collision.bin | Bin 0 -> 32 bytes .../maps_unique/floor_0/metatiles.bin | 1 + .../maps_unique/floor_1/collision.bin | Bin 0 -> 32 bytes .../maps_unique/floor_1/metatiles.bin | 1 + .../maps_unique/floor_2/collision.bin | Bin 0 -> 32 bytes .../maps_unique/floor_2/metatiles.bin | 1 + .../maps_unique/floor_3/collision.bin | Bin 0 -> 32 bytes .../maps_unique/floor_3/metatiles.bin | 1 + .../maps_variety/floor_0/collision.bin | Bin 0 -> 32 bytes .../maps_variety/floor_0/metatiles.bin | 1 + .../maps_variety/floor_1/collision.bin | Bin 0 -> 32 bytes .../maps_variety/floor_1/metatiles.bin | 1 + .../maps_variety/floor_2/collision.bin | Bin 0 -> 32 bytes .../maps_variety/floor_2/metatiles.bin | 1 + .../maps_variety/floor_3/collision.bin | Bin 0 -> 32 bytes .../maps_variety/floor_3/metatiles.bin | 1 + include/trainer_hill.h | 2 +- src/data/battle_frontier/trainer_hill.h | 432 ++---------------- 38 files changed, 63 insertions(+), 393 deletions(-) create mode 100755 graphics/trainer_hill/maps_expert/floor_0/collision.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_0/metatiles.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_1/collision.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_1/metatiles.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_2/collision.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_2/metatiles.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_3/collision.bin create mode 100755 graphics/trainer_hill/maps_expert/floor_3/metatiles.bin create mode 100755 graphics/trainer_hill/maps_jp/floor_0/collision.bin create mode 100755 graphics/trainer_hill/maps_jp/floor_0/metatiles.bin create mode 100755 graphics/trainer_hill/maps_jp/floor_1/collision.bin create mode 100755 graphics/trainer_hill/maps_jp/floor_1/metatiles.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_0/collision.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_0/metatiles.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_1/collision.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_1/metatiles.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_2/collision.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_2/metatiles.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_3/collision.bin create mode 100755 graphics/trainer_hill/maps_normal/floor_3/metatiles.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_0/collision.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_0/metatiles.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_1/collision.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_1/metatiles.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_2/collision.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_2/metatiles.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_3/collision.bin create mode 100755 graphics/trainer_hill/maps_unique/floor_3/metatiles.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_0/collision.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_0/metatiles.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_1/collision.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_1/metatiles.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_2/collision.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_2/metatiles.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_3/collision.bin create mode 100755 graphics/trainer_hill/maps_variety/floor_3/metatiles.bin diff --git a/graphics/trainer_hill/maps_expert/floor_0/collision.bin b/graphics/trainer_hill/maps_expert/floor_0/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..ca6e4ca28beaf070d34dedbd697149620da6ea68 GIT binary patch literal 32 ecmZo0f}Z{gu?&-0mT0byZ`_I literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_expert/floor_1/metatiles.bin b/graphics/trainer_hill/maps_expert/floor_1/metatiles.bin new file mode 100755 index 000000000000..a89a14c69ef2 --- /dev/null +++ b/graphics/trainer_hill/maps_expert/floor_1/metatiles.bin @@ -0,0 +1 @@ +1;;;9989:;;;‘FFFFFFFFFFFFFx‘F›|›››}›|›{›z›‘F}FFFFFFFFFFFF‘F›~›››}›~›ł›››‘FFFFFFFFFFFFF›‘F›}›|›{›z›|›››‘F›FFFFFFFFFFFF‘F›|›}›~›››}›~›‘FFFFFFFFFFFFFł‘Ö–››–ÖŰÖ–››–Ö›Ö–››–ÖŰŰŰÖ–››–Ö–››–ÖŰŰŰŰŰÖ–››–Ö–››–ÖŰŰŰÖ–››–Ö‘Ö–››–ÖŰÖ–››–Ö› \ No newline at end of file diff --git a/graphics/trainer_hill/maps_expert/floor_2/collision.bin b/graphics/trainer_hill/maps_expert/floor_2/collision.bin new file mode 100755 index 000000000000..891a7f2c1d59 --- /dev/null +++ b/graphics/trainer_hill/maps_expert/floor_2/collision.bin @@ -0,0 +1 @@ +áńů>ů>}~=x˝=x}~y>ů>ńá \ No newline at end of file diff --git a/graphics/trainer_hill/maps_expert/floor_2/metatiles.bin b/graphics/trainer_hill/maps_expert/floor_2/metatiles.bin new file mode 100755 index 000000000000..7164f059d1ac --- /dev/null +++ b/graphics/trainer_hill/maps_expert/floor_2/metatiles.bin @@ -0,0 +1 @@ +ŃŰŰŰŮŮ™š›››ŃŰŰŰŐŐĂů†Ž•››››ŃŰŰŐËËËű‹‹‹•›››ŃŰŐËËËËű‹‹‹‹•››ŃŰËËËËËű‹‹‹‹‹››ŃŐËËËËËűŚ‹‹‹‹•›ŃËËËËĚĚűűŚ‹‹‹‹›ŃĚĚĚĚűőűőű‹‹‹‹›ŃŐŐŐŐűěűěű‹‹‹‹›ŃËËËËőőűűő‹‹‹‹›ŃĚËËËËËűű‹‹‹‹Ś›ŃŰËËËËËűő‹‹‹‹››ŃŰĚËËËËű‹‹‹‹Ś››ŃŰŰĚËËËű‹‹‹Ś›››ŃŰŰŰĚĚËűŚŚŚ››››ŃŰŰŰŰŰĚű››››››› \ No newline at end of file diff --git a/graphics/trainer_hill/maps_expert/floor_3/collision.bin b/graphics/trainer_hill/maps_expert/floor_3/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..3d25428f1569114f61521dfb75a0b10efeaee5ba GIT binary patch literal 32 kcmZoFHg#WXcI6&M*f6*M(2iYam&WCO_n09tVcFaQ7m literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_expert/floor_3/metatiles.bin b/graphics/trainer_hill/maps_expert/floor_3/metatiles.bin new file mode 100755 index 000000000000..f2200b713525 --- /dev/null +++ b/graphics/trainer_hill/maps_expert/floor_3/metatiles.bin @@ -0,0 +1 @@ +1;;;9999:;;;–űöýööűFűööýöű›ű›űöűűűFűűűöű›űöű›űűFF›FFűű›űöýöű›F66›66F›űöýöűűF›FFŰFF›FűűööűF6F›ŰÖŰ›F6FűöűűF6›ŰÖÖÖŰ›6Fűű–››››ÖÖ–ÖÖŰ›››–űűF6›ŰÖÖÖŰ›6FűűöűF6F›ŰÖŰ›F6FűööűűF›FFŰFF›Fűűöýöű›F66›66F›űöýöű›űűFF›FFűű›űöű›űöűűűFűűűöű›ű–űöýööűFűööýöű› \ No newline at end of file diff --git a/graphics/trainer_hill/maps_jp/floor_0/collision.bin b/graphics/trainer_hill/maps_jp/floor_0/collision.bin new file mode 100755 index 000000000000..817f4f54ca8d --- /dev/null +++ b/graphics/trainer_hill/maps_jp/floor_0/collision.bin @@ -0,0 +1 @@ +ÁoAcA`ADAUAUÁ˙˙˙˙˙˙˙˙˙˙˙˙˙˙ \ No newline at end of file diff --git a/graphics/trainer_hill/maps_jp/floor_0/metatiles.bin b/graphics/trainer_hill/maps_jp/floor_0/metatiles.bin new file mode 100755 index 000000000000..8d1787efdfa2 --- /dev/null +++ b/graphics/trainer_hill/maps_jp/floor_0/metatiles.bin @@ -0,0 +1 @@ +155;&&%9:;;;1++;44++43????;1++;;;44;3???;;1++55555;3???;?1+444+44;,???;;1+;5;+;5;5;???;1+;+;+;+;+;???;14;+;4;+5+;;?;;1;;4;;;444?;;;? \ No newline at end of file diff --git a/graphics/trainer_hill/maps_jp/floor_1/collision.bin b/graphics/trainer_hill/maps_jp/floor_1/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..58f80b49bb1ab2c9e27f9e8c19f3cfa17b6dcdfe GIT binary patch literal 32 bcmZo?HC#Uv;AiWLNEXT<6#hZ literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_jp/floor_1/metatiles.bin b/graphics/trainer_hill/maps_jp/floor_1/metatiles.bin new file mode 100755 index 000000000000..9517237925c1 --- /dev/null +++ b/graphics/trainer_hill/maps_jp/floor_1/metatiles.bin @@ -0,0 +1 @@ +1;5;9&%9:;5;1;+;;+++++;;;+;1;+;;+++++>>;+;1;+;;+++++;;;+;?;+;;+++++;>>+;1;+;;++,++;;;+;1?+;;,,;,,>>;+;1;+5555;55555+;?;,,,,,;,,,,,,;1;??;55;55555551???;++5+++++++1??;;++++++++++1;;;?,,,,,,,,,, \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_0/collision.bin b/graphics/trainer_hill/maps_normal/floor_0/collision.bin new file mode 100755 index 000000000000..80213aaaeb59 --- /dev/null +++ b/graphics/trainer_hill/maps_normal/floor_0/collision.bin @@ -0,0 +1 @@ +ĺ?í˝%„˝ß!~A } ÷Aůy˙˙ \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_0/metatiles.bin b/graphics/trainer_hill/maps_normal/floor_0/metatiles.bin new file mode 100755 index 000000000000..658a5ace610a --- /dev/null +++ b/graphics/trainer_hill/maps_normal/floor_0/metatiles.bin @@ -0,0 +1 @@ +1;55&&%&:;5;1;,,,+$$$$,;;,;-;;;;+;;;;5;55;3;2!0+;2!0+;,+;35;;;,5;;;+;;+;4,;2!0+20;+20,;15;;5;,;;5,;;551,20+205;+2!0,,15;;+;;+;,;5;;;1,20+20+;20+20;1555+;;+;;5+;551+,,,20+20,,;,,1+;;5;;+;;5;;;;1,20+;;,20,20;51;;;,;;;;;;;;;, \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_1/collision.bin b/graphics/trainer_hill/maps_normal/floor_1/collision.bin new file mode 100755 index 000000000000..fb3f6aec00d4 --- /dev/null +++ b/graphics/trainer_hill/maps_normal/floor_1/collision.bin @@ -0,0 +1 @@ +űs @ @ëQ‹S»Q‹QëQ‹Q»QPP˙˙ \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_1/metatiles.bin b/graphics/trainer_hill/maps_normal/floor_1/metatiles.bin new file mode 100755 index 000000000000..52af9cfdcb20 --- /dev/null +++ b/graphics/trainer_hill/maps_normal/floor_1/metatiles.bin @@ -0,0 +1 @@ +ŃŐŐŐŮŮĹĆÎŐŰŐŃËÄÄŰŰÄÄÄĚĚĚËŰËŃËŰŰŰŰŰŰŰËŰËŃËŰŐŐŐŐŐßËŰËŃËŰËËËÄÄŰËŰËŃËŰËŰŰÄËËßŐŐËŰËŃËŰËŰŰŰËËŰÄÄËŰËŃËŰËŰŰŰËËŐŐßËŰËŃËŰËŰŰŰËËÄÄŰËŰËŃËŰËŰŰŰËËßŐŐËŰËŃËŰËŰŰŰÄÄŰÄÄÄŰËŃËŰË››››››ŰŐŐŐËŃÄŰËŰŰŰŰŰ›ŰËËËËŃŰŰËŰŰŰŰŰ›ŰËËËËŃŰŰÄŰŰŰŰŰ›ŰÄÄÄÄ \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_2/collision.bin b/graphics/trainer_hill/maps_normal/floor_2/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..b3ccacdd4c25fee4cf227fac1346ee02b189d8c2 GIT binary patch literal 32 acmZoeskKr|x*BLe_r>jg#t literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_normal/floor_2/metatiles.bin b/graphics/trainer_hill/maps_normal/floor_2/metatiles.bin new file mode 100755 index 000000000000..bf2b52c32d53 --- /dev/null +++ b/graphics/trainer_hill/maps_normal/floor_2/metatiles.bin @@ -0,0 +1 @@ +1555&&8&.55;icddddqqqrdddcsicssssssssssscsicssssssssssscsicCA@ABAAJBAAcsicsssssssdssscsicACKCCABB@A@csicssdsssssssscsicA@BBAABJBABcsicsssssssdssscsicABACKAAA@CAcsicssssdsssssscsicA@CABBAJBABcsidsssssssdsssdsiCCABBACAA@BABsiBsssssssssssBs \ No newline at end of file diff --git a/graphics/trainer_hill/maps_normal/floor_3/collision.bin b/graphics/trainer_hill/maps_normal/floor_3/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..f4c47254c56adb7e19d0d6ed491a13178b73c526 GIT binary patch literal 32 ncmZoUbL@H$@m!0ULkk4!I2@pp3%k8wKCK(G#-c@Lu*4B1sMhZ{|5lD4+_)( literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_unique/floor_3/metatiles.bin b/graphics/trainer_hill/maps_unique/floor_3/metatiles.bin new file mode 100755 index 000000000000..66840137c383 --- /dev/null +++ b/graphics/trainer_hill/maps_unique/floor_3/metatiles.bin @@ -0,0 +1 @@ +ńűűűůůĺćîőűűíőőőűűěěěëěěěűűôěěěűűűűűëűűűűűńőőőőőőőűëűőőőőńëěěěëěěűěűěěěěńëűűűëűőűőűűűűűńëűőűëűëűëőőőűűńëűëűëűëűëěěěűűńëűëűëűëűëűőőőőńëűëűëűëűëűěěěěńëűëűëűëűëűűűűűńëűëűëűëűëőőőőűńěűëűěűëűěěěěěűńűűëűűűëűűűűűűűńűűěűűűěűűűűűűű \ No newline at end of file diff --git a/graphics/trainer_hill/maps_variety/floor_0/collision.bin b/graphics/trainer_hill/maps_variety/floor_0/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..24fc2ea1e6b203d760a554f6b02de209bdeadb1e GIT binary patch literal 32 McmZo+m literal 0 HcmV?d00001 diff --git a/graphics/trainer_hill/maps_variety/floor_1/metatiles.bin b/graphics/trainer_hill/maps_variety/floor_1/metatiles.bin new file mode 100755 index 000000000000..c5a9aa5d4ecc --- /dev/null +++ b/graphics/trainer_hill/maps_variety/floor_1/metatiles.bin @@ -0,0 +1 @@ +1;;;9989:;;;‘›ś–@@–›–@@–›ś›ś›–@ŰŰ@–@ŰŰB–››‘–@ŰŰŰŰŰŰŰŰŰB–ś‘BŰŰÖÖÖŰÖÖÖŰŰB›–BŰÖÖÖÖÖÖÖÖÖŰB––BŰÖÖÖÖÖÖÖÖÖŰB––BŰÖÖÖÖÖÖÖÖÖŰB––BŰŰÖÖÖÖÖÖÖŰŰB–‘–BŰŰÖÖÖÖÖŰŰB–›‘›–BŰŰÖÖÖŰŰB–›śś››–BŰŰÖŰŰB–›››–›››–AŰŰŰB–››ś–Ö–ś››–AŰB–›››–ÖśÖ–›ś›–@–›ś›–Öś \ No newline at end of file diff --git a/graphics/trainer_hill/maps_variety/floor_2/collision.bin b/graphics/trainer_hill/maps_variety/floor_2/collision.bin new file mode 100755 index 0000000000000000000000000000000000000000..606249b2a0085c18fc9fea19f02a98713c93233a GIT binary patch literal 32 RcmZo Date: Fri, 1 Apr 2022 01:21:00 -0400 Subject: [PATCH 565/762] Document trainer hill prize selection --- src/trainer_hill.c | 60 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 46 insertions(+), 14 deletions(-) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 2deacfc70561..dad6b97ea3ac 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -996,10 +996,14 @@ static void TrainerHillSetMode(void) gSaveBlock1Ptr->trainerHill.bestTime = gSaveBlock1Ptr->trainerHillTimes[gSpecialVar_0x8005]; } -static u8 GetPrizeListId(bool8 maxTrainers) +// Determines which prize list to use from the set of prize lists. +static u8 GetPrizeListId(bool8 allowTMs) { u8 prizeListId, i, modBy; + // The initial selection depends on the trainer numbers for the completed challenge. + // These don't change with the available challenge modes, so Normal/Unique will always + // have a prizeListId of 8, and Variety/Expert will have a prizeListId of 24. prizeListId = 0; for (i = 0; i < NUM_TRAINER_HILL_FLOORS; i++) { @@ -1007,8 +1011,10 @@ static u8 GetPrizeListId(bool8 maxTrainers) prizeListId ^= sHillData->floors[i].trainerNum2 & 0x1F; } - // Not possible to win TMs with fewer than 8 trainers - if (maxTrainers) + // In practice, the conditional below is always true. + // The 2nd half of the lists in both sets of lists all have a TM as the "grand prize", while the 1st half do not, + // so taking the mod of the (total / 2) ensures that a prize list without a TM will be used. + if (allowTMs) modBy = NUM_TRAINER_HILL_PRIZE_LISTS; else modBy = NUM_TRAINER_HILL_PRIZE_LISTS / 2; @@ -1021,38 +1027,64 @@ static u16 GetPrizeItemId(void) { u8 i; const u16 *prizeList; - s32 var = 0, prizeListSetId, minutes, id; + s32 trainerNumSum = 0, prizeListSetId, minutes, id; + // First determine which set of prize lists to use. The sets of lists only differ in + // what TMs they can offer as the "grand prize" for a time under 12 minutes. + // Which set of lists gets used is based on the sum of all the trainer numbers for that + // challenge. These don't change with the available challenge modes, so Normal will always + // have a prizeListSetId of 0, and Unique/Variety/Expert will have a prizeListSetId of 1. for (i = 0; i < NUM_TRAINER_HILL_FLOORS; i++) { - var += sHillData->floors[i].trainerNum1; - var += sHillData->floors[i].trainerNum2; + trainerNumSum += sHillData->floors[i].trainerNum1; + trainerNumSum += sHillData->floors[i].trainerNum2; } + prizeListSetId = trainerNumSum / 256; + prizeListSetId %= (int)ARRAY_COUNT(sPrizeListSets); - prizeListSetId = var / 256; - prizeListSetId %= 2; + // Now get which prize list to use from the set. See GetPrizeListId for details. + // The below conditional will always be true, because a Trainer Hill challenge can't be entered + // until the player has entered the Hall of Fame (FLAG_SYS_GAME_CLEAR is set) and because all + // of the available challenge modes have the full 8 trainers (NUM_TRAINER_HILL_TRAINERS). if (FlagGet(FLAG_SYS_GAME_CLEAR) && sHillData->challenge.numTrainers == NUM_TRAINER_HILL_TRAINERS) i = GetPrizeListId(TRUE); else i = GetPrizeListId(FALSE); + // 1 is added to Expert mode's prize list selection because otherwise it has the same prizes as Variety if (gSaveBlock1Ptr->trainerHill.mode == HILL_MODE_EXPERT) i = (i + 1) % NUM_TRAINER_HILL_PRIZE_LISTS; + // After the above (non-random) calculations, the following are the possible prize list selections: + // sPrizeListSets[0][8] (Normal) + // sPrizeListSets[1][4] (Variety) + // sPrizeListSets[1][8] (Unique) + // sPrizeListSets[1][5] (Expert) prizeList = sPrizeListSets[prizeListSetId][i]; + + // Which prize is given from the list depends on the time scored. + // The prize for any time after 12 minutes is the same in every list. + // The prizes for a time under 12 minutes are: + // - ITEM_TM11_SUNNY_DAY (Normal) + // - ITEM_ELIXIR (Variety) + // - ITEM_TM19_GIGA_DRAIN (Unique) + // - ITEM_TM31_BRICK_BREAK (Expert) + // As an additional note, if players were allowed to enter a Trainer Hill challenge before + // entering the Hall of Fame, there would be 1 additional prize possibility (ITEM_MAX_ETHER) + // as Normal / Unique modes would use sPrizeListSets[0][3] / sPrizeListSets[1][3] respectively. minutes = (signed)(gSaveBlock1Ptr->trainerHill.timer) / (60 * 60); if (minutes < 12) - id = 0; + id = 0; // Depends on list else if (minutes < 13) - id = 1; + id = 1; // ITEM_ETHER else if (minutes < 14) - id = 2; + id = 2; // ITEM_MAX_POTION else if (minutes < 16) - id = 3; + id = 3; // ITEM_REVIVE else if (minutes < 18) - id = 4; + id = 4; // ITEM_FLUFFY_TAIL else - id = 5; + id = 5; // ITEM_GREAT_BALL return prizeList[id]; } From e1f89c70d9c0f1d34fa5d3eb45c6baf0d7a42287 Mon Sep 17 00:00:00 2001 From: Eldred Habert Date: Sat, 2 Apr 2022 00:22:36 +0200 Subject: [PATCH 566/762] Add Arch Linux install instructions I didn't test the devkitARM install instructions, but they are pretty much transcribed from the Ubuntu/Deb ones, so that should be fine. --- INSTALL.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/INSTALL.md b/INSTALL.md index 1f1e1164be01..f6434c07be01 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -305,6 +305,20 @@ Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to > then you will have to install devkitARM. Install all the above packages except binutils-arm-none-eabi, and follow the instructions to > [install devkitARM on Debian/Ubuntu-based distributions](#installing-devkitarm-on-debianubuntu-based-distributions).
+ +### Arch Linux +Run this command as root to install the necessary packages: +```bash +pacman -S base-devel arm-none-eabi-binutils git libpng +``` +Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to-store-pokeemerald-linux). +
+ Note for legacy repos... + +> If the repository you plan to build has an **[older revision of the INSTALL.md](https://github.com/pret/pokeemerald/blob/571c598/INSTALL.md)**, +> then you will have to install devkitARM. Install all the above packages except binutils-arm-none-eabi, and follow the instructions to +> [install devkitARM on Arch Linux](#installing-devkitarm-on-arch-linux). +
### Other distributions _(Specific instructions for other distributions would be greatly appreciated!)_ @@ -520,6 +534,24 @@ devkitARM is now installed. devkitARM is now installed. +## Installing devkitARM on Arch Linux + +1. Follow [devkitPro's instructions](https://devkitpro.org/wiki/devkitPro_pacman#Customising_Existing_Pacman_Install) to configure `pacman` to download devkitPro packages. +2. Install `gba-dev`: run the following command as root. + + ```console + pacman -S gba-dev + ``` + This will ask for the selection of packages to install. Just press Enter to install all of them, followed by entering Y to proceed with the installation. + +3. Run the following command to set devkitPro related environment variables (alternatively, close and re-open the Terminal): + + ```bash + source /etc/profile.d/devkit-env.sh + ``` + +devkitARM is now installed. + ## Other toolchains To build using a toolchain other than devkitARM, override the `TOOLCHAIN` environment variable with the path to your toolchain, which must contain the subdirectory `bin`. From 59cff2190d44edf9e64c1d8c4cfd5931b2354aaf Mon Sep 17 00:00:00 2001 From: sbird Date: Sat, 16 Apr 2022 19:03:20 +0200 Subject: [PATCH 567/762] fix building without NDEBUG on agbcc --- ld_script.txt | 43 ++++++++++++++++++++++++++++++++++++++++--- src/libisagbprn.c | 10 +++++----- src/mystery_gift.c | 4 ++++ 3 files changed, 49 insertions(+), 8 deletions(-) diff --git a/ld_script.txt b/ld_script.txt index d68498a8ba54..1460c844353a 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -20,7 +20,9 @@ SECTIONS { . = 0x1C000; INCLUDE "sym_ewram.ld" - + *libc.a:impure.o(.data); + *libc.a:locale.o(.data); + *libc.a:mallocr.o(.data); . = 0x40000; } @@ -462,6 +464,7 @@ SECTIONS { src/mystery_gift_server.o(.rodata); src/mystery_gift_client.o(.rodata); src/mystery_gift_scripts.o(.rodata); + src/wonder_news.o(.rodata); src/union_room_chat.o(.rodata); src/berry_crush.o(.rodata); src/berry_powder.o(.rodata); @@ -1245,9 +1248,43 @@ SECTIONS { src/librfu_sio32id.o(.rodata); *libgcc.a:_divdi3.o(.rodata); *libgcc.a:_udivdi3.o(.rodata); - *libc.a(.rodata); - *libc.a(.data); + *libc.a:memcpy.o(.rodata); + *libc.a:memset.o(.rodata); + *libc.a:strcmp.o(.rodata); + *libc.a:strcpy.o(.rodata); + *libc.a:impure.o(.rodata); + *libc.a:vsprintf.o(.rodata); + *libc.a:vfprintf.o(.rodata); + *libc.a:wsetup.o(.rodata); + *libc.a:dtoa.o(.rodata); + *libc.a:fflush.o(.rodata); + *libc.a:findfp.o(.rodata); + *libc.a:freer.o(.rodata); + *libc.a:mtrim.o(.rodata); + *libc.a:fvwrite.o(.rodata); + *libc.a:fwalk.o(.rodata); + *libc.a:locale.o(.rodata); + *libc.a:makebuf.o(.rodata); + *libc.a:mallocr.o(.rodata); + *libc.a:mbtowc_r.o(.rodata); + *libc.a:memchr.o(.rodata); + *libc.a:memmove.o(.rodata); + *libc.a:mlock.o(.rodata); + *libc.a:mprec.o(.rodata); + *libc.a:s_isinf.o(.rodata); + *libc.a:s_isnan.o(.rodata); + *libc.a:sbrkr.o(.rodata); + *libc.a:stdio.o(.rodata); + *libc.a:strlen.o(.rodata); *libc.a:syscalls.o(.rodata); + *libc.a:writer.o(.rodata); + *libc.a:callocr.o(.rodata); + *libc.a:closer.o(.rodata); + *libc.a:errno.o(.rodata); + *libc.a:fstatr.o(.rodata); + *libc.a:libcfunc.o(.rodata); + *libc.a:lseekr.o(.rodata); + *libc.a:readr.o(.rodata); src/libisagbprn.o(.rodata); } =0 diff --git a/src/libisagbprn.c b/src/libisagbprn.c index 69c6986aef3e..7a70cf41fa96 100644 --- a/src/libisagbprn.c +++ b/src/libisagbprn.c @@ -31,7 +31,7 @@ void AGBPrintFlush1Block(void); void AGBPrintInit(void) { volatile struct AGBPrintStruct *pPrint = (struct AGBPrintStruct *)AGB_PRINT_STRUCT_ADDR; - u16 *pWSCNT = ®_WAITCNT; + vu16 *pWSCNT = ®_WAITCNT; u16 *pProtect = (u16 *)AGB_PRINT_PROTECT_ADDR; u16 nOldWSCNT = *pWSCNT; *pWSCNT = WSCNT_DATA; @@ -57,7 +57,7 @@ static void AGBPutcInternal(const char cChr) void AGBPutc(const char cChr) { - u16 *pWSCNT = ®_WAITCNT; + vu16 *pWSCNT = ®_WAITCNT; u16 nOldWSCNT = *pWSCNT; volatile struct AGBPrintStruct *pPrint; *pWSCNT = WSCNT_DATA; @@ -71,7 +71,7 @@ void AGBPutc(const char cChr) void AGBPrint(const char *pBuf) { volatile struct AGBPrintStruct *pPrint = (struct AGBPrintStruct *)AGB_PRINT_STRUCT_ADDR; - u16 *pWSCNT = ®_WAITCNT; + vu16 *pWSCNT = ®_WAITCNT; u16 nOldWSCNT = *pWSCNT; *pWSCNT = WSCNT_DATA; while (*pBuf) @@ -95,9 +95,9 @@ void AGBPrintf(const char *pBuf, ...) static void AGBPrintTransferDataInternal(u32 bAllData) { LPFN_PRINT_FLUSH lpfnFuncFlush; - u16 *pIME; + vu16 *pIME; u16 nIME; - u16 *pWSCNT; + vu16 *pWSCNT; u16 nOldWSCNT; u16 *pProtect; volatile struct AGBPrintStruct *pPrint; diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 1df6533d9679..72fc2b3774c6 100755 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -506,9 +506,13 @@ static void IncrementCardStat(u32 statType) } if (stat == NULL) + { AGB_ASSERT(0); + } else if (++(*stat) > MAX_WONDER_CARD_STAT) + { *stat = MAX_WONDER_CARD_STAT; + } } } From 0bda107188b5623f34d95214fae1c715b757ec7f Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Wed, 20 Apr 2022 01:07:10 -0400 Subject: [PATCH 568/762] don't build modern with -g by default --- INSTALL.md | 1 + Makefile | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index f6434c07be01..72f3c92f3f99 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -457,6 +457,7 @@ To build **pokeemerald.elf** with enhanced debug info: ```bash make DINFO=1 ``` +Note that this is only necessary for the `modern` target; the regular target has debug info enabled by default. ## devkitARM's C compiler diff --git a/Makefile b/Makefile index 6283a87fe349..c36cc8e9366a 100644 --- a/Makefile +++ b/Makefile @@ -107,7 +107,7 @@ 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 -g +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))" From 2b223acd876169cd8f90f8f5723f28aaaa32f373 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 26 Apr 2022 21:44:11 -0400 Subject: [PATCH 569/762] Fix math in CreateBerrySprite --- src/berry_blender.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/berry_blender.c b/src/berry_blender.c index 27ea641ce128..9b74c7bab6c8 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1188,9 +1188,9 @@ static void SetBerrySpriteData(struct Sprite* sprite, s16 x, s16 y, s16 bounceSp #undef sXSpeed #undef sYDownSpeed -static void CreateBerrySprite(u16 a0, u8 playerId) +static void CreateBerrySprite(u16 itemId, u8 playerId) { - u8 spriteId = CreateSpinningBerrySprite(a0 + FIRST_BERRY_INDEX - 10, 0, 80, playerId & 1); + u8 spriteId = CreateSpinningBerrySprite(ITEM_TO_BERRY(itemId) - 1, 0, 80, playerId & 1); SetBerrySpriteData(&gSprites[spriteId], sBerrySpriteData[playerId][0], sBerrySpriteData[playerId][1], From 1c13335d16f610d2c3881effb7eddf3fefd5d894 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Thu, 12 May 2022 22:05:44 -0400 Subject: [PATCH 570/762] Update INSTALL.md --- INSTALL.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 72f3c92f3f99..42d8a75ec859 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -451,14 +451,6 @@ Replace `` with the number that the `nproc` command returned. `nproc` is not available on macOS. The alternative is `sysctl -n hw.ncpu` ([relevant Stack Overflow thread](https://stackoverflow.com/questions/1715580)). -## Debug info - -To build **pokeemerald.elf** with enhanced debug info: -```bash -make DINFO=1 -``` -Note that this is only necessary for the `modern` target; the regular target has debug info enabled by default. - ## devkitARM's C compiler This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM (a.k.a. gba-dev) has already been installed as part of the platform-specific instructions, simply run: @@ -535,7 +527,7 @@ devkitARM is now installed. devkitARM is now installed. -## Installing devkitARM on Arch Linux +### Installing devkitARM on Arch Linux 1. Follow [devkitPro's instructions](https://devkitpro.org/wiki/devkitPro_pacman#Customising_Existing_Pacman_Install) to configure `pacman` to download devkitPro packages. 2. Install `gba-dev`: run the following command as root. @@ -553,7 +545,7 @@ devkitARM is now installed. devkitARM is now installed. -## Other toolchains +### Other toolchains To build using a toolchain other than devkitARM, override the `TOOLCHAIN` environment variable with the path to your toolchain, which must contain the subdirectory `bin`. ```bash @@ -565,6 +557,14 @@ make TOOLCHAIN="/usr/local/arm-none-eabi" ``` To compile the `modern` target with this toolchain, the subdirectories `lib`, `include`, and `arm-none-eabi` must also be present. +### Building with debug info under a modern toolchain + +To build **pokeemerald.elf** with debug symbols under a modern toolchain: +```bash +make DINFO=1 +``` +Note that this is not necessary for a non-modern build since those are built with debug symbols by default. + # Useful additional tools * [porymap](https://github.com/huderlem/porymap) for viewing and editing maps From 7d224197c05fb319c03d2bcbed3ed36d6f246fd8 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Thu, 12 May 2022 22:33:17 -0400 Subject: [PATCH 571/762] Update INSTALL.md --- INSTALL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index 42d8a75ec859..7f1d47879ff2 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -561,7 +561,7 @@ To compile the `modern` target with this toolchain, the subdirectories `lib`, `i To build **pokeemerald.elf** with debug symbols under a modern toolchain: ```bash -make DINFO=1 +make modern DINFO=1 ``` Note that this is not necessary for a non-modern build since those are built with debug symbols by default. From 6d6dac3adde8cd3e47d062aa2698239d97e44679 Mon Sep 17 00:00:00 2001 From: cbt6 <91667135+cbt6@users.noreply.github.com> Date: Sun, 15 May 2022 21:44:04 +0800 Subject: [PATCH 572/762] Use ARRAY_COUNT in sStepTimes for step functions --- src/event_object_movement.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index eb699e89f823..091293551eab 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -8251,11 +8251,11 @@ static const SpriteStepFunc *const sNpcStepFuncTables[] = { }; static const s16 sStepTimes[] = { - [MOVE_SPEED_NORMAL] = 16, - [MOVE_SPEED_FAST_1] = 8, - [MOVE_SPEED_FAST_2] = 6, - [MOVE_SPEED_FASTER] = 4, - [MOVE_SPEED_FASTEST] = 2, + [MOVE_SPEED_NORMAL] = ARRAY_COUNT(sStep1Funcs), + [MOVE_SPEED_FAST_1] = ARRAY_COUNT(sStep2Funcs), + [MOVE_SPEED_FAST_2] = ARRAY_COUNT(sStep3Funcs), + [MOVE_SPEED_FASTER] = ARRAY_COUNT(sStep4Funcs), + [MOVE_SPEED_FASTEST] = ARRAY_COUNT(sStep8Funcs), }; static bool8 NpcTakeStep(struct Sprite *sprite) From 71ea78cc32ed2f6178434c516118118e282f9e65 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 16 May 2022 14:55:20 -0400 Subject: [PATCH 573/762] Document Task_UpdateContestResultBar --- src/contest_util.c | 46 +++++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/src/contest_util.c b/src/contest_util.c index 1ca217526535..d8726d860f56 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -77,7 +77,10 @@ enum { #define TAG_CONFETTI 3017 #define TAG_WIRELESS_INDICATOR_WINDOW 22222 -#define MAX_BAR_LENGTH 87 +// Length of the score bar on the results screen +#define NUM_BAR_SEGMENTS 11 +#define BAR_SEGMENT_LENGTH 8 // Each segment of the results bar is a single tile, so 8 pixels long +#define MAX_BAR_LENGTH (NUM_BAR_SEGMENTS * BAR_SEGMENT_LENGTH) // Starting x/y for the sliding results screen text box #define TEXT_BOX_X (DISPLAY_WIDTH + 32) @@ -96,7 +99,7 @@ struct ContestResultsInternal u8 winnerMonSpriteId; bool8 destroyConfetti; bool8 pointsFlashing; - s16 unkC[CONTESTANT_COUNT]; + s16 barLength[CONTESTANT_COUNT]; u8 numBarsUpdating; }; @@ -1748,7 +1751,7 @@ static void CalculateContestantsResultData(void) if ((*sContestResults->monResults)[i].lostPoints) barLengthRound2 *= -1; - if (barLengthPreliminary + barLengthRound2 == MAX_BAR_LENGTH + 1) + if (barLengthPreliminary + barLengthRound2 == MAX_BAR_LENGTH) { if (barLengthRound2 > 0) (*sContestResults->monResults)[i].barLengthRound2--; @@ -1841,47 +1844,52 @@ static void Task_UpdateContestResultBar(u8 taskId) s16 target = gTasks[taskId].tTarget; s16 decreasing = gTasks[taskId].tDecreasing; + // Has the results bar reached the limit? if (decreasing) { - if (sContestResults->data->unkC[monId] <= 0) + if (sContestResults->data->barLength[monId] <= 0) minMaxReached = TRUE; } else { - if (sContestResults->data->unkC[monId] > MAX_BAR_LENGTH) + if (sContestResults->data->barLength[monId] >= MAX_BAR_LENGTH) minMaxReached = TRUE; } - if (sContestResults->data->unkC[monId] == target) + if (sContestResults->data->barLength[monId] == target) targetReached = TRUE; if (!targetReached) { + // Target length has not been reached, update bar length if (minMaxReached) - sContestResults->data->unkC[monId] = target; + sContestResults->data->barLength[monId] = target; else if (decreasing) - sContestResults->data->unkC[monId] = sContestResults->data->unkC[monId] - 1; + sContestResults->data->barLength[monId]--; else - sContestResults->data->unkC[monId] = sContestResults->data->unkC[monId] + 1; + sContestResults->data->barLength[monId]++; } + // Update the tiles of the results bar if it's still changing if (!minMaxReached && !targetReached) { - u8 var0; + u8 tileOffset; u16 tileNum; - for (i = 0; i < 11; i++) + for (i = 0; i < NUM_BAR_SEGMENTS; i++) { - if (sContestResults->data->unkC[monId] >= (i + 1) * 8) - var0 = 8; - else if (sContestResults->data->unkC[monId] >= i * 8) - var0 = sContestResults->data->unkC[monId] % 8; + if (sContestResults->data->barLength[monId] >= (i + 1) * BAR_SEGMENT_LENGTH) + tileOffset = 8; // Bar segment is full + else if (sContestResults->data->barLength[monId] >= i * BAR_SEGMENT_LENGTH) + tileOffset = sContestResults->data->barLength[monId] % 8; // Bar segment is between full and empty else - var0 = 0; + tileOffset = 0; // Bar segment is empty - if (var0 < 4) - tileNum = 0x504C + var0; + // The first 4 bar segment tiles are not adjacent in the tileset to the + // remaining bar segment tiles; choose the base tile number accordingly. + if (tileOffset < 4) + tileNum = 0x504C + tileOffset; else - tileNum = 0x5057 + var0; + tileNum = 0x5057 + tileOffset; FillBgTilemapBufferRect_Palette0(2, tileNum, i + 7, monId * 3 + 6, 1, 1); } From 593e2c9be0329241c3c110059333f41a865409bb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 17 May 2022 13:51:54 -0400 Subject: [PATCH 574/762] Fix inconsistent static s/g names --- data/scripts/gift_altering_cave.inc | 2 +- data/text/pokedex_rating.inc | 2 +- include/constants/battle.h | 2 +- include/constants/flags.h | 2 +- include/contest.h | 1 - src/agb_flash_1m.c | 2 +- src/battle_anim_dragon.c | 4 +- src/battle_anim_status_effects.c | 4 +- src/battle_bg.c | 8 +- src/battle_tower.c | 4 +- src/coins.c | 2 +- src/contest.c | 26 +- src/data/field_effects/field_effect_objects.h | 2 +- src/data/trade.h | 6 +- src/data/trainer_graphics/back_pic_anims.h | 30 +- src/dodrio_berry_picking.c | 2 +- src/event_data.c | 6 +- src/field_effect.c | 46 +- src/field_screen_effect.c | 2 +- src/field_special_scene.c | 8 +- src/field_weather.c | 2 +- src/field_weather_effect.c | 30 +- src/fieldmap.c | 42 +- src/item_menu_icons.c | 16 +- src/landmark.c | 16 +- src/m4a_1.s | 8 +- src/main.c | 6 +- src/main_menu.c | 16 +- src/map_name_popup.c | 38 +- src/overworld.c | 14 +- src/palette.c | 6 +- src/pokedex.c | 4 +- src/pokemon_storage_system.c | 4 +- src/pokenav_main_menu.c | 10 +- src/pokenav_match_call_data.c | 2 +- src/pokenav_region_map.c | 2 +- src/region_map.c | 602 +++++++++--------- src/rotating_gate.c | 70 +- src/script_movement.c | 9 +- src/tileset_anims.c | 6 +- src/trade.c | 2 +- src/tv.c | 2 +- 42 files changed, 531 insertions(+), 537 deletions(-) diff --git a/data/scripts/gift_altering_cave.inc b/data/scripts/gift_altering_cave.inc index 65ff87068ad6..0ea69aac02ac 100644 --- a/data/scripts/gift_altering_cave.inc +++ b/data/scripts/gift_altering_cave.inc @@ -12,7 +12,7 @@ MysteryGiftScript_AlteringCave_: release end -sText_MysteryGiftAlteringCave:: +sText_MysteryGiftAlteringCave: .string "Thank you for using the MYSTERY\n" .string "GIFT System.\p" .string "There appears to be a rumor about\n" diff --git a/data/text/pokedex_rating.inc b/data/text/pokedex_rating.inc index fcb26bc7d359..175aaccc6b0c 100644 --- a/data/text/pokedex_rating.inc +++ b/data/text/pokedex_rating.inc @@ -3,7 +3,7 @@ gBirchDexRatingText_AreYouCurious:: .string "Are you curious about how your\n" .string "POKĂ©DEX is coming along?$" -gBirchDexRatingText_Cancel: +gBirchDexRatingText_Cancel:: .string "Hm? Oh, you haven't caught enough\n" .string "POKĂ©MON to make it worthwhile.$" diff --git a/include/constants/battle.h b/include/constants/battle.h index d87a800e2bb0..31bc7fa3fb92 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -319,7 +319,7 @@ #define B_WIN_TYPE_NORMAL 0 #define B_WIN_TYPE_ARENA 1 -// Window Ids for gStandardBattleWindowTemplates / gBattleArenaWindowTemplates +// Window Ids for sStandardBattleWindowTemplates / sBattleArenaWindowTemplates #define B_WIN_MSG 0 #define B_WIN_ACTION_PROMPT 1 // "What will {x} do?" #define B_WIN_ACTION_MENU 2 // "Fight/PokĂ©mon/Bag/Run" menu diff --git a/include/constants/flags.h b/include/constants/flags.h index eacb2426db0d..8fbc24630038 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -1634,7 +1634,7 @@ #define FLAGS_COUNT (DAILY_FLAGS_END + 1) -// Special Flags (Stored in EWRAM (gSpecialFlags), not in the SaveBlock) +// Special Flags (Stored in EWRAM (sSpecialFlags), not in the SaveBlock) #define SPECIAL_FLAGS_START 0x4000 #define FLAG_HIDE_MAP_NAME_POPUP (SPECIAL_FLAGS_START + 0x0) #define FLAG_DONT_TRANSITION_MUSIC (SPECIAL_FLAGS_START + 0x1) diff --git a/include/contest.h b/include/contest.h index e7acb5a113d3..1168ebfe7483 100644 --- a/include/contest.h +++ b/include/contest.h @@ -324,7 +324,6 @@ extern u16 gSpecialVar_ContestRank; extern u8 gNumLinkContestPlayers; extern u8 gHighestRibbonRank; extern struct ContestResources *gContestResources; -extern u8 sContestBgCopyFlags; extern struct ContestWinner gCurContestWinner; extern u8 gCurContestWinnerIsForArtist; extern u8 gCurContestWinnerSaveIdx; diff --git a/src/agb_flash_1m.c b/src/agb_flash_1m.c index e249fab9a350..6fc4f3d60033 100644 --- a/src/agb_flash_1m.c +++ b/src/agb_flash_1m.c @@ -3,7 +3,7 @@ static const char AgbLibFlashVersion[] = "FLASH1M_V103"; -const struct FlashSetupInfo * const sSetupInfos[] = +static const struct FlashSetupInfo * const sSetupInfos[] = { &MX29L010, &LE26FV10N1TS, diff --git a/src/battle_anim_dragon.c b/src/battle_anim_dragon.c index 029a5c30ddec..4badd5362787 100644 --- a/src/battle_anim_dragon.c +++ b/src/battle_anim_dragon.c @@ -15,7 +15,7 @@ static void AnimOverheatFlame_Step(struct Sprite *); static void AnimTask_DragonDanceWaver_Step(u8); static void UpdateDragonDanceScanlineEffect(struct Task *); -EWRAM_DATA static u16 gUnusedOverheatData[7] = {0}; +EWRAM_DATA static u16 sUnusedOverheatData[7] = {0}; static const union AnimCmd sAnim_OutrageOverheatFire_0[] = { @@ -426,7 +426,7 @@ static void AnimOverheatFlame(struct Sprite *sprite) sprite->data[3] = gBattleAnimArgs[3]; sprite->callback = AnimOverheatFlame_Step; for (i = 0; i < 7; i++) - gUnusedOverheatData[i] = sprite->data[i]; + sUnusedOverheatData[i] = sprite->data[i]; } static void AnimOverheatFlame_Step(struct Sprite *sprite) diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 9be3d65dc422..47ba00c907ef 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -248,7 +248,7 @@ static const struct SubspriteTable sFrozenIceCubeSubspriteTable[] = {ARRAY_COUNT(sFrozenIceCubeSubsprites), sFrozenIceCubeSubsprites}, }; -static const struct SpriteTemplate gFrozenIceCubeSpriteTemplate = +static const struct SpriteTemplate sFrozenIceCubeSpriteTemplate = { .tileTag = ANIM_TAG_ICE_CUBE, .paletteTag = ANIM_TAG_ICE_CUBE, @@ -389,7 +389,7 @@ void AnimTask_FrozenIceCube(u8 taskId) x -= 6; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16)); - spriteId = CreateSprite(&gFrozenIceCubeSpriteTemplate, x, y, 4); + spriteId = CreateSprite(&sFrozenIceCubeSpriteTemplate, x, y, 4); if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == 0xFFFF) gSprites[spriteId].invisible = TRUE; SetSubspriteTables(&gSprites[spriteId], sFrozenIceCubeSubspriteTable); diff --git a/src/battle_bg.c b/src/battle_bg.c index f739a002f6c9..ed32c009cb33 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -159,7 +159,7 @@ const struct BgTemplate gBattleBgTemplates[] = }, }; -static const struct WindowTemplate gStandardBattleWindowTemplates[] = +static const struct WindowTemplate sStandardBattleWindowTemplates[] = { [B_WIN_MSG] = { .bg = 0, @@ -380,7 +380,7 @@ static const struct WindowTemplate gStandardBattleWindowTemplates[] = DUMMY_WIN_TEMPLATE }; -static const struct WindowTemplate gBattleArenaWindowTemplates[] = +static const struct WindowTemplate sBattleArenaWindowTemplates[] = { [B_WIN_MSG] = { .bg = 0, @@ -594,8 +594,8 @@ static const struct WindowTemplate gBattleArenaWindowTemplates[] = const struct WindowTemplate * const gBattleWindowTemplates[] = { - [B_WIN_TYPE_NORMAL] = gStandardBattleWindowTemplates, - [B_WIN_TYPE_ARENA] = gBattleArenaWindowTemplates, + [B_WIN_TYPE_NORMAL] = sStandardBattleWindowTemplates, + [B_WIN_TYPE_ARENA] = sBattleArenaWindowTemplates, }; static const struct BattleBackground sBattleTerrainTable[] = diff --git a/src/battle_tower.c b/src/battle_tower.c index 989412e9e690..e652038ac071 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -687,7 +687,7 @@ struct { u32 facilityClass; const u8 *const *strings; -} const sPartnerTrainerTextTables[] = +} static const sPartnerTrainerTextTables[] = { {FACILITY_CLASS_LASS, sPartnerTextsLass}, {FACILITY_CLASS_YOUNGSTER, sPartnerTextsYoungster}, @@ -769,7 +769,7 @@ struct u8 nature; u8 evs[NUM_STATS]; u16 moves[MAX_MON_MOVES]; -} const sStevenMons[MULTI_PARTY_SIZE] = +} static const sStevenMons[MULTI_PARTY_SIZE] = { { .species = SPECIES_METANG, diff --git a/src/coins.c b/src/coins.c index 17fd147b7484..4c4739999b75 100644 --- a/src/coins.c +++ b/src/coins.c @@ -8,7 +8,7 @@ #include "international_string_util.h" #include "constants/coins.h" -EWRAM_DATA u8 sCoinsWindowId = 0; +static EWRAM_DATA u8 sCoinsWindowId = 0; void PrintCoinsString(u32 coinAmount) { diff --git a/src/contest.c b/src/contest.c index ced9f90cdead..091d7fb636f7 100644 --- a/src/contest.c +++ b/src/contest.c @@ -352,7 +352,7 @@ EWRAM_DATA u16 gSpecialVar_ContestRank = 0; EWRAM_DATA u8 gNumLinkContestPlayers = 0; EWRAM_DATA u8 gHighestRibbonRank = 0; EWRAM_DATA struct ContestResources *gContestResources = NULL; -EWRAM_DATA u8 sContestBgCopyFlags = 0; +static EWRAM_DATA u8 sContestBgCopyFlags = 0; EWRAM_DATA struct ContestWinner gCurContestWinner = {0}; EWRAM_DATA bool8 gCurContestWinnerIsForArtist = 0; EWRAM_DATA u8 gCurContestWinnerSaveIdx = 0; @@ -625,7 +625,7 @@ static const struct SpriteTemplate sSpriteTemplate_ApplauseMeter = .callback = SpriteCallbackDummy }; -const struct OamData sOam_Judge = +static const struct OamData sOam_Judge = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -639,7 +639,7 @@ const struct OamData sOam_Judge = .paletteNum = 2, }; -const struct SpriteTemplate sSpriteTemplate_Judge = +static const struct SpriteTemplate sSpriteTemplate_Judge = { .tileTag = TAG_JUDGE, .paletteTag = TAG_JUDGE, @@ -650,7 +650,7 @@ const struct SpriteTemplate sSpriteTemplate_Judge = .callback = SpriteCallbackDummy }; -const struct CompressedSpriteSheet sSpriteSheet_Judge = +static const struct CompressedSpriteSheet sSpriteSheet_Judge = { .data = gContestJudgeGfx, .size = 0x800, @@ -664,13 +664,13 @@ static const struct CompressedSpriteSheet sSpriteSheet_JudgeSymbols = .tag = TAG_JUDGE_SYMBOLS_GFX }; -const struct CompressedSpritePalette sSpritePalette_JudgeSymbols = +static const struct CompressedSpritePalette sSpritePalette_JudgeSymbols = { .data = gContestJudgeSymbolsPal, .tag = TAG_CONTEST_SYMBOLS_PAL }; -const struct SpriteTemplate sSpriteTemplate_JudgeSpeechBubble = +static const struct SpriteTemplate sSpriteTemplate_JudgeSpeechBubble = { .tileTag = TAG_JUDGE_SYMBOLS_GFX, .paletteTag = TAG_CONTEST_SYMBOLS_PAL, @@ -876,7 +876,7 @@ static const struct SpritePalette sSpritePalettes_ContestantsTurnBlinkEffect[CON } }; -const struct OamData sOam_ContestantsTurnBlinkEffect = +static const struct OamData sOam_ContestantsTurnBlinkEffect = { .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, @@ -891,13 +891,13 @@ const struct OamData sOam_ContestantsTurnBlinkEffect = .affineParam = 0, }; -const union AffineAnimCmd sAffineAnim_ContestantsTurnBlinkEffect_0[] = +static const union AffineAnimCmd sAffineAnim_ContestantsTurnBlinkEffect_0[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_END }; -const union AffineAnimCmd sAffineAnim_ContestantsTurnBlinkEffect_1[] = +static const union AffineAnimCmd sAffineAnim_ContestantsTurnBlinkEffect_1[] = { AFFINEANIMCMD_FRAME(3, 3, 0, 15), AFFINEANIMCMD_FRAME(-3, -3, 0, 15), @@ -906,13 +906,13 @@ const union AffineAnimCmd sAffineAnim_ContestantsTurnBlinkEffect_1[] = AFFINEANIMCMD_END }; -const union AffineAnimCmd *const sAffineAnims_ContestantsTurnBlinkEffect[] = +static const union AffineAnimCmd *const sAffineAnims_ContestantsTurnBlinkEffect[] = { sAffineAnim_ContestantsTurnBlinkEffect_0, sAffineAnim_ContestantsTurnBlinkEffect_1 }; -const struct SpriteTemplate sSpriteTemplates_ContestantsTurnBlinkEffect[CONTESTANT_COUNT] = +static const struct SpriteTemplate sSpriteTemplates_ContestantsTurnBlinkEffect[CONTESTANT_COUNT] = { { .tileTag = TAG_BLINK_EFFECT_CONTESTANT0, @@ -952,7 +952,7 @@ const struct SpriteTemplate sSpriteTemplates_ContestantsTurnBlinkEffect[CONTESTA } }; -static const s8 gContestExcitementTable[CONTEST_CATEGORIES_COUNT][CONTEST_CATEGORIES_COUNT] = +static const s8 sContestExcitementTable[CONTEST_CATEGORIES_COUNT][CONTEST_CATEGORIES_COUNT] = { [CONTEST_CATEGORY_COOL] = { [CONTEST_CATEGORY_COOL] = +1, @@ -4744,7 +4744,7 @@ static void UpdateApplauseMeter(void) s8 Contest_GetMoveExcitement(u16 move) { - return gContestExcitementTable[gSpecialVar_ContestCategory][gContestMoves[move].contestCategory]; + return sContestExcitementTable[gSpecialVar_ContestCategory][gContestMoves[move].contestCategory]; } static u8 StartApplauseOverflowAnimation(void) diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 598b88932eaa..938b6bfc55a6 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1272,7 +1272,7 @@ static const union AnimCmd *const sAnimTable_RayquazaSpotlightEffect[] = { sAnim_RayquazaSpotlightEffect, }; -const struct SpriteFrameImage sPicTable_RayquazaSpotlightEffect[] = { +static const struct SpriteFrameImage sPicTable_RayquazaSpotlightEffect[] = { overworld_frame(gObjectEventPic_Rayquaza, 4, 4, 0), }; diff --git a/src/data/trade.h b/src/data/trade.h index b260727636e6..80d17a49bad4 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -174,10 +174,10 @@ static const struct SpriteTemplate sSpriteTemplate_MenuText = .callback = SpriteCallbackDummy, }; -static const u16 TradeScreenTextPalette[] = INCBIN_U16("graphics/trade/text.gbapal"); -static const struct SpritePalette gSpritePalette_TradeScreenText = +static const u16 sTradeScreenTextPalette[] = INCBIN_U16("graphics/trade/text.gbapal"); +static const struct SpritePalette sSpritePalette_TradeScreenText = { - .data = TradeScreenTextPalette, + .data = sTradeScreenTextPalette, .tag = PALTAG_MENU_TEXT }; diff --git a/src/data/trainer_graphics/back_pic_anims.h b/src/data/trainer_graphics/back_pic_anims.h index 821039cb3b0d..ed12e0cb41e7 100644 --- a/src/data/trainer_graphics/back_pic_anims.h +++ b/src/data/trainer_graphics/back_pic_anims.h @@ -1,4 +1,4 @@ -static const union AnimCmd gAnimCmd_Brendan_1[] = +static const union AnimCmd sAnimCmd_Brendan_1[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(1, 9), @@ -8,7 +8,7 @@ static const union AnimCmd gAnimCmd_Brendan_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_May_Steven_1[] = +static const union AnimCmd sAnimCmd_May_Steven_1[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(1, 9), @@ -18,7 +18,7 @@ static const union AnimCmd gAnimCmd_May_Steven_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_Wally_1[] = +static const union AnimCmd sAnimCmd_Wally_1[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(1, 9), @@ -28,7 +28,7 @@ static const union AnimCmd gAnimCmd_Wally_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_Red_1[] = +static const union AnimCmd sAnimCmd_Red_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(2, 6), @@ -38,7 +38,7 @@ static const union AnimCmd gAnimCmd_Red_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_Leaf_1[] = +static const union AnimCmd sAnimCmd_Leaf_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(2, 6), @@ -48,7 +48,7 @@ static const union AnimCmd gAnimCmd_Leaf_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_RubySapphireBrendan_1[] = +static const union AnimCmd sAnimCmd_RubySapphireBrendan_1[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(1, 9), @@ -58,7 +58,7 @@ static const union AnimCmd gAnimCmd_RubySapphireBrendan_1[] = ANIMCMD_END, }; -static const union AnimCmd gAnimCmd_RubySapphireMay_1[] = +static const union AnimCmd sAnimCmd_RubySapphireMay_1[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(1, 9), @@ -71,49 +71,49 @@ static const union AnimCmd gAnimCmd_RubySapphireMay_1[] = static const union AnimCmd *const sBackAnims_Brendan[] = { sAnim_GeneralFrame3, - gAnimCmd_Brendan_1, + sAnimCmd_Brendan_1, }; static const union AnimCmd *const sBackAnims_May[] = { sAnim_GeneralFrame3, - gAnimCmd_May_Steven_1, + sAnimCmd_May_Steven_1, }; static const union AnimCmd *const sBackAnims_Red[] = { sAnim_GeneralFrame0, - gAnimCmd_Red_1, + sAnimCmd_Red_1, }; static const union AnimCmd *const sBackAnims_Leaf[] = { sAnim_GeneralFrame0, - gAnimCmd_Leaf_1, + sAnimCmd_Leaf_1, }; static const union AnimCmd *const sBackAnims_RubySapphireBrendan[] = { sAnim_GeneralFrame3, - gAnimCmd_RubySapphireBrendan_1, + sAnimCmd_RubySapphireBrendan_1, }; static const union AnimCmd *const sBackAnims_RubySapphireMay[] = { sAnim_GeneralFrame3, - gAnimCmd_RubySapphireMay_1, + sAnimCmd_RubySapphireMay_1, }; static const union AnimCmd *const sBackAnims_Wally[] = { sAnim_GeneralFrame3, - gAnimCmd_Wally_1, + sAnimCmd_Wally_1, }; static const union AnimCmd *const sBackAnims_Steven[] = { sAnim_GeneralFrame3, - gAnimCmd_May_Steven_1, + sAnimCmd_May_Steven_1, }; const union AnimCmd *const *const gTrainerBackAnimsPtrTable[] = diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 691ca6b2ab0d..80cdd81264a5 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -4546,7 +4546,7 @@ struct { u8 id; void (*func)(void); -} const sGfxFuncs[] = +} static const sGfxFuncs[] = { {GFXFUNC_LOAD, LoadGfx}, // Element not used, LoadGfx is passed directly to SetGfxFunc {GFXFUNC_SHOW_NAMES, ShowNames}, diff --git a/src/event_data.c b/src/event_data.c index e2af6c3d0d41..22ebdb0d1ddc 100644 --- a/src/event_data.c +++ b/src/event_data.c @@ -30,7 +30,7 @@ EWRAM_DATA u16 gSpecialVar_Facing = 0; EWRAM_DATA u16 gSpecialVar_MonBoxId = 0; EWRAM_DATA u16 gSpecialVar_MonBoxPos = 0; EWRAM_DATA u16 gSpecialVar_Unused_0x8014 = 0; -EWRAM_DATA static u8 gSpecialFlags[SPECIAL_FLAGS_SIZE] = {0}; +EWRAM_DATA static u8 sSpecialFlags[SPECIAL_FLAGS_SIZE] = {0}; extern u16 *const gSpecialVars[]; @@ -38,7 +38,7 @@ void InitEventData(void) { memset(gSaveBlock1Ptr->flags, 0, sizeof(gSaveBlock1Ptr->flags)); memset(gSaveBlock1Ptr->vars, 0, sizeof(gSaveBlock1Ptr->vars)); - memset(gSpecialFlags, 0, sizeof(gSpecialFlags)); + memset(sSpecialFlags, 0, sizeof(sSpecialFlags)); } void ClearTempFieldEventData(void) @@ -205,7 +205,7 @@ u8 *GetFlagPointer(u16 id) else if (id < SPECIAL_FLAGS_START) return &gSaveBlock1Ptr->flags[id / 8]; else - return &gSpecialFlags[(id - SPECIAL_FLAGS_START) / 8]; + return &sSpecialFlags[(id - SPECIAL_FLAGS_START) / 8]; } u8 FlagSet(u16 id) diff --git a/src/field_effect.c b/src/field_effect.c index f57ce8cddcae..369239f6b62f 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -481,13 +481,13 @@ static const struct Subsprite sSubsprites_HofMonitorBig[] = static const struct SubspriteTable sSubspriteTable_HofMonitorBig = subsprite_table(sSubsprites_HofMonitorBig); -const union AnimCmd sAnim_Static[] = +static const union AnimCmd sAnim_Static[] = { ANIMCMD_FRAME(.imageValue = 0, .duration = 1), ANIMCMD_JUMP(0) }; -const union AnimCmd sAnim_Flicker[] = +static const union AnimCmd sAnim_Flicker[] = { ANIMCMD_FRAME(.imageValue = 0, .duration = 16), ANIMCMD_FRAME(.imageValue = 1, .duration = 16), @@ -501,7 +501,7 @@ const union AnimCmd sAnim_Flicker[] = }; // Flicker on and off, for the PokĂ©balls / monitors during the PokĂ©Center heal effect -const union AnimCmd *const sAnims_Flicker[] = +static const union AnimCmd *const sAnims_Flicker[] = { sAnim_Static, sAnim_Flicker @@ -556,7 +556,7 @@ static const struct SpriteTemplate sSpriteTemplate_HofMonitorSmall = .callback = SpriteCB_HallOfFameMonitor }; -void (*const sPokecenterHealEffectFuncs[])(struct Task *) = +static void (*const sPokecenterHealEffectFuncs[])(struct Task *) = { PokecenterHealEffect_Init, PokecenterHealEffect_WaitForBallPlacement, @@ -564,7 +564,7 @@ void (*const sPokecenterHealEffectFuncs[])(struct Task *) = PokecenterHealEffect_WaitForSoundAndEnd }; -void (*const sHallOfFameRecordEffectFuncs[])(struct Task *) = +static void (*const sHallOfFameRecordEffectFuncs[])(struct Task *) = { HallOfFameRecordEffect_Init, HallOfFameRecordEffect_WaitForBallPlacement, @@ -572,7 +572,7 @@ void (*const sHallOfFameRecordEffectFuncs[])(struct Task *) = HallOfFameRecordEffect_WaitForSoundAndEnd }; -void (*const sPokeballGlowEffectFuncs[])(struct Sprite *) = +static void (*const sPokeballGlowEffectFuncs[])(struct Sprite *) = { PokeballGlowEffect_PlaceBalls, PokeballGlowEffect_TryPlaySe, @@ -598,7 +598,7 @@ static const u8 sPokeballGlowReds[] = {16, 12, 8, 0}; static const u8 sPokeballGlowGreens[] = {16, 12, 8, 0}; static const u8 sPokeballGlowBlues[] = { 0, 0, 0, 0}; -bool8 (*const sFallWarpFieldEffectFuncs[])(struct Task *) = +static bool8 (*const sFallWarpFieldEffectFuncs[])(struct Task *) = { FallWarpEffect_Init, FallWarpEffect_WaitWeather, @@ -609,7 +609,7 @@ bool8 (*const sFallWarpFieldEffectFuncs[])(struct Task *) = FallWarpEffect_End, }; -bool8 (*const sEscalatorWarpOutFieldEffectFuncs[])(struct Task *) = +static bool8 (*const sEscalatorWarpOutFieldEffectFuncs[])(struct Task *) = { EscalatorWarpOut_Init, EscalatorWarpOut_WaitForPlayer, @@ -619,7 +619,7 @@ bool8 (*const sEscalatorWarpOutFieldEffectFuncs[])(struct Task *) = EscalatorWarpOut_Down_End, }; -bool8 (*const sEscalatorWarpInFieldEffectFuncs[])(struct Task *) = +static bool8 (*const sEscalatorWarpInFieldEffectFuncs[])(struct Task *) = { EscalatorWarpIn_Init, EscalatorWarpIn_Down_Init, @@ -630,7 +630,7 @@ bool8 (*const sEscalatorWarpInFieldEffectFuncs[])(struct Task *) = EscalatorWarpIn_End, }; -bool8 (*const sWaterfallFieldEffectFuncs[])(struct Task *, struct ObjectEvent *) = +static bool8 (*const sWaterfallFieldEffectFuncs[])(struct Task *, struct ObjectEvent *) = { WaterfallFieldEffect_Init, WaterfallFieldEffect_ShowMon, @@ -639,14 +639,14 @@ bool8 (*const sWaterfallFieldEffectFuncs[])(struct Task *, struct ObjectEvent *) WaterfallFieldEffect_ContinueRideOrEnd, }; -bool8 (*const sDiveFieldEffectFuncs[])(struct Task *) = +static bool8 (*const sDiveFieldEffectFuncs[])(struct Task *) = { DiveFieldEffect_Init, DiveFieldEffect_ShowMon, DiveFieldEffect_TryWarp, }; -bool8 (*const sLavaridgeGymB1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +static bool8 (*const sLavaridgeGymB1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { LavaridgeGymB1FWarpEffect_Init, LavaridgeGymB1FWarpEffect_CameraShake, @@ -656,7 +656,7 @@ bool8 (*const sLavaridgeGymB1FWarpEffectFuncs[])(struct Task *, struct ObjectEve LavaridgeGymB1FWarpEffect_Warp, }; -bool8 (*const sLavaridgeGymB1FWarpExitEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +static bool8 (*const sLavaridgeGymB1FWarpExitEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { LavaridgeGymB1FWarpExitEffect_Init, LavaridgeGymB1FWarpExitEffect_StartPopOut, @@ -664,7 +664,7 @@ bool8 (*const sLavaridgeGymB1FWarpExitEffectFuncs[])(struct Task *, struct Objec LavaridgeGymB1FWarpExitEffect_End, }; -bool8 (*const sLavaridgeGym1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +static bool8 (*const sLavaridgeGym1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { LavaridgeGym1FWarpEffect_Init, LavaridgeGym1FWarpEffect_AshPuff, @@ -673,7 +673,7 @@ bool8 (*const sLavaridgeGym1FWarpEffectFuncs[])(struct Task *, struct ObjectEven LavaridgeGym1FWarpEffect_Warp, }; -void (*const sEscapeRopeWarpOutEffectFuncs[])(struct Task *) = +static void (*const sEscapeRopeWarpOutEffectFuncs[])(struct Task *) = { EscapeRopeWarpOutEffect_Init, EscapeRopeWarpOutEffect_Spin, @@ -2277,7 +2277,7 @@ static void EscapeRopeWarpOutEffect_Spin(struct Task *task) } } -void (*const sEscapeRopeWarpInEffectFuncs[])(struct Task *) = { +static void (*const sEscapeRopeWarpInEffectFuncs[])(struct Task *) = { EscapeRopeWarpInEffect_Init, EscapeRopeWarpInEffect_Spin }; @@ -2448,7 +2448,7 @@ static void FieldCallback_TeleportWarpIn(void) CreateTask(Task_TeleportWarpIn, 0); } -void (*const sTeleportWarpInFieldEffectFuncs[])(struct Task *) = { +static void (*const sTeleportWarpInFieldEffectFuncs[])(struct Task *) = { TeleportWarpInFieldEffect_Init, TeleportWarpInFieldEffect_SpinEnter, TeleportWarpInFieldEffect_SpinGround @@ -2582,7 +2582,7 @@ bool8 FldEff_FieldMoveShowMonInit(void) return FALSE; } -void (*const sFieldMoveShowMonOutdoorsEffectFuncs[])(struct Task *) = { +static void (*const sFieldMoveShowMonOutdoorsEffectFuncs[])(struct Task *) = { FieldMoveShowMonOutdoorsEffect_Init, FieldMoveShowMonOutdoorsEffect_LoadGfx, FieldMoveShowMonOutdoorsEffect_CreateBanner, @@ -2750,7 +2750,7 @@ static void LoadFieldMoveOutdoorStreaksTilemap(u16 offs) #define tBgOffset data[4] #define tMonSpriteId data[15] -void (*const sFieldMoveShowMonIndoorsEffectFuncs[])(struct Task *) = { +static void (*const sFieldMoveShowMonIndoorsEffectFuncs[])(struct Task *) = { FieldMoveShowMonIndoorsEffect_Init, FieldMoveShowMonIndoorsEffect_LoadGfx, FieldMoveShowMonIndoorsEffect_SlideBannerOn, @@ -2978,7 +2978,7 @@ u8 FldEff_UseSurf(void) return FALSE; } -void (*const sSurfFieldEffectFuncs[])(struct Task *) = { +static void (*const sSurfFieldEffectFuncs[])(struct Task *) = { SurfFieldEffect_Init, SurfFieldEffect_FieldMovePose, SurfFieldEffect_ShowMon, @@ -3154,7 +3154,7 @@ u8 FldEff_UseFly(void) return 0; } -void (*const sFlyOutFieldEffectFuncs[])(struct Task *) = { +static void (*const sFlyOutFieldEffectFuncs[])(struct Task *) = { FlyOutFieldEffect_FieldMovePose, FlyOutFieldEffect_ShowMon, FlyOutFieldEffect_BirdLeaveBall, @@ -3444,7 +3444,7 @@ u8 FldEff_FlyIn(void) return 0; } -void (*const sFlyInFieldEffectFuncs[])(struct Task *) = { +static void (*const sFlyInFieldEffectFuncs[])(struct Task *) = { FlyInFieldEffect_BirdSwoopDown, FlyInFieldEffect_FlyInWithBird, FlyInFieldEffect_JumpOffBird, @@ -3675,7 +3675,7 @@ static void StartEndingDeoxysRockCameraShake(u8 taskId) #undef tEndDelay #undef tEnding -void (*const sDestroyDeoxysRockEffectFuncs[])(s16*, u8) = { +static void (*const sDestroyDeoxysRockEffectFuncs[])(s16*, u8) = { DestroyDeoxysRockEffect_CameraShake, DestroyDeoxysRockEffect_RockFragments, DestroyDeoxysRockEffect_WaitAndEnd, diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index eda14672588f..77978c269035 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -53,7 +53,7 @@ static void Task_EnableScriptAfterMusicFade(u8 taskId); static const u16 sFlashLevelToRadius[] = { 200, 72, 64, 56, 48, 40, 32, 24, 0 }; const s32 gMaxFlashLevel = ARRAY_COUNT(sFlashLevelToRadius) - 1; -const struct ScanlineEffectParams sFlashEffectParams = +static const struct ScanlineEffectParams sFlashEffectParams = { ®_WIN0H, ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, diff --git a/src/field_special_scene.c b/src/field_special_scene.c index d8b9eb05d16f..da7e4ed7d4ce 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -31,7 +31,7 @@ enum }; //. rodata -static const s8 gTruckCamera_HorizontalTable[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, -1, -1, -1, 0}; +static const s8 sTruckCamera_HorizontalTable[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, -1, -1, -1, 0}; static const u8 sSSTidalSailEastMovementScript[] = { @@ -109,10 +109,10 @@ void Task_Truck2(u8 taskId) } else { - if (gTruckCamera_HorizontalTable[data[1]] == 2) + if (sTruckCamera_HorizontalTable[data[1]] == 2) gTasks[taskId].func = Task_Truck3; - cameraXpan = gTruckCamera_HorizontalTable[data[1]]; + cameraXpan = sTruckCamera_HorizontalTable[data[1]]; cameraYpan = GetTruckCameraBobbingY(data[2]); SetCameraPanning(cameraXpan, cameraYpan); box1 = GetTruckBoxMovement(data[2] + 30) * 4; @@ -144,7 +144,7 @@ static void Task_Truck3(u8 taskId) } else { - cameraXpan = gTruckCamera_HorizontalTable[data[1]]; + cameraXpan = sTruckCamera_HorizontalTable[data[1]]; cameraYpan = 0; SetCameraPanning(cameraXpan, 0); SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, cameraYpan + 3); diff --git a/src/field_weather.c b/src/field_weather.c index cd343644149a..0f203bd24f68 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -72,7 +72,7 @@ static const u8 *sPaletteGammaTypes; // The drought weather effect uses a precalculated color lookup table. Presumably this // is because the underlying color shift calculation is slow. -const u16 sDroughtWeatherColors[][0x1000] = { +static const u16 sDroughtWeatherColors[][0x1000] = { INCBIN_U16("graphics/weather/drought/colors_0.bin"), INCBIN_U16("graphics/weather/drought/colors_1.bin"), INCBIN_U16("graphics/weather/drought/colors_2.bin"), diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 2b87557c21a6..94c41a613424 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -15,8 +15,8 @@ #include "gpu_regs.h" // EWRAM -EWRAM_DATA static u8 gCurrentAbnormalWeather = 0; -EWRAM_DATA static u16 gUnusedWeatherRelated = 0; +EWRAM_DATA static u8 sCurrentAbnormalWeather = 0; +EWRAM_DATA static u16 sUnusedWeatherRelated = 0; // CONST const u16 gCloudsWeatherPalette[] = INCBIN_U16("graphics/weather/cloud.gbapal"); @@ -1815,7 +1815,7 @@ static void UpdateFogDiagonalMovement(void) gWeatherPtr->fogDPosY = gSpriteCoordOffsetY + gWeatherPtr->fogDYOffset; } -static const struct SpriteSheet gFogDiagonalSpriteSheet = +static const struct SpriteSheet sFogDiagonalSpriteSheet = { .data = gWeatherFogDiagonalTiles, .size = sizeof(gWeatherFogDiagonalTiles), @@ -1870,7 +1870,7 @@ static void CreateFogDiagonalSprites(void) if (!gWeatherPtr->fogDSpritesCreated) { - fogDiagonalSpriteSheet = gFogDiagonalSpriteSheet; + fogDiagonalSpriteSheet = sFogDiagonalSpriteSheet; LoadSpriteSheet(&fogDiagonalSpriteSheet); for (i = 0; i < NUM_FOG_DIAGONAL_SPRITES; i++) { @@ -2429,8 +2429,8 @@ static void UpdateBubbleSprite(struct Sprite *sprite) // Unused function. static void UnusedSetCurrentAbnormalWeather(u32 a0, u32 a1) { - gCurrentAbnormalWeather = a0; - gUnusedWeatherRelated = a1; + sCurrentAbnormalWeather = a0; + sUnusedWeatherRelated = a1; } static void Task_DoAbnormalWeather(u8 taskId) @@ -2443,7 +2443,7 @@ static void Task_DoAbnormalWeather(u8 taskId) if (data[15]-- <= 0) { SetNextWeather(data[1]); - gCurrentAbnormalWeather = data[1]; + sCurrentAbnormalWeather = data[1]; data[15] = 600; data[0]++; } @@ -2452,7 +2452,7 @@ static void Task_DoAbnormalWeather(u8 taskId) if (data[15]-- <= 0) { SetNextWeather(data[2]); - gCurrentAbnormalWeather = data[2]; + sCurrentAbnormalWeather = data[2]; data[15] = 600; data[0] = 0; } @@ -2466,19 +2466,19 @@ static void CreateAbnormalWeatherTask(void) s16 *data = gTasks[taskId].data; data[15] = 600; - if (gCurrentAbnormalWeather == WEATHER_DOWNPOUR) + if (sCurrentAbnormalWeather == WEATHER_DOWNPOUR) { data[1] = WEATHER_DROUGHT; data[2] = WEATHER_DOWNPOUR; } - else if (gCurrentAbnormalWeather == WEATHER_DROUGHT) + else if (sCurrentAbnormalWeather == WEATHER_DROUGHT) { data[1] = WEATHER_DOWNPOUR; data[2] = WEATHER_DROUGHT; } else { - gCurrentAbnormalWeather = WEATHER_DOWNPOUR; + sCurrentAbnormalWeather = WEATHER_DOWNPOUR; data[1] = WEATHER_DROUGHT; data[2] = WEATHER_DOWNPOUR; } @@ -2526,13 +2526,13 @@ void DoCurrentWeather(void) { if (!FuncIsActiveTask(Task_DoAbnormalWeather)) CreateAbnormalWeatherTask(); - weather = gCurrentAbnormalWeather; + weather = sCurrentAbnormalWeather; } else { if (FuncIsActiveTask(Task_DoAbnormalWeather)) DestroyTask(FindTaskIdByFunc(Task_DoAbnormalWeather)); - gCurrentAbnormalWeather = WEATHER_DOWNPOUR; + sCurrentAbnormalWeather = WEATHER_DOWNPOUR; } SetNextWeather(weather); } @@ -2545,13 +2545,13 @@ void ResumePausedWeather(void) { if (!FuncIsActiveTask(Task_DoAbnormalWeather)) CreateAbnormalWeatherTask(); - weather = gCurrentAbnormalWeather; + weather = sCurrentAbnormalWeather; } else { if (FuncIsActiveTask(Task_DoAbnormalWeather)) DestroyTask(FindTaskIdByFunc(Task_DoAbnormalWeather)); - gCurrentAbnormalWeather = WEATHER_DOWNPOUR; + sCurrentAbnormalWeather = WEATHER_DOWNPOUR; } SetCurrentAndNextWeather(weather); } diff --git a/src/fieldmap.c b/src/fieldmap.c index 4dbf981cf58c..a02355e721de 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -25,10 +25,10 @@ struct ConnectionFlags u8 east:1; }; -EWRAM_DATA static u16 gBackupMapData[MAX_MAP_DATA_SIZE] = {0}; +EWRAM_DATA static u16 sBackupMapData[MAX_MAP_DATA_SIZE] = {0}; EWRAM_DATA struct MapHeader gMapHeader = {0}; EWRAM_DATA struct Camera gCamera = {0}; -EWRAM_DATA static struct ConnectionFlags gMapConnectionFlags = {0}; +EWRAM_DATA static struct ConnectionFlags sMapConnectionFlags = {0}; EWRAM_DATA static u32 sFiller = 0; // without this, the next file won't align properly struct BackupMapLayout gBackupMapLayout; @@ -87,14 +87,14 @@ void InitMapFromSavedGame(void) void InitBattlePyramidMap(bool8 setPlayerPosition) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); - GenerateBattlePyramidFloorLayout(gBackupMapData, setPlayerPosition); + CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + GenerateBattlePyramidFloorLayout(sBackupMapData, setPlayerPosition); } void InitTrainerHillMap(void) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); - GenerateTrainerHillFloorLayout(gBackupMapData); + CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + GenerateTrainerHillFloorLayout(sBackupMapData); } static void InitMapLayoutData(struct MapHeader *mapHeader) @@ -103,8 +103,8 @@ static void InitMapLayoutData(struct MapHeader *mapHeader) int width; int height; mapLayout = mapHeader->mapLayout; - CpuFastFill16(MAPGRID_UNDEFINED, gBackupMapData, sizeof(gBackupMapData)); - gBackupMapLayout.map = gBackupMapData; + CpuFastFill16(MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + gBackupMapLayout.map = sBackupMapData; width = mapLayout->width + MAP_OFFSET_W; gBackupMapLayout.width = width; height = mapLayout->height + MAP_OFFSET_H; @@ -140,7 +140,7 @@ static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader) { count = mapHeader->connections->count; connection = mapHeader->connections->connections; - gMapConnectionFlags = sDummyConnectionFlags; + sMapConnectionFlags = sDummyConnectionFlags; for (i = 0; i < count; i++, connection++) { struct MapHeader const *cMap = GetMapHeaderFromConnection(connection); @@ -149,19 +149,19 @@ static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader) { case CONNECTION_SOUTH: FillSouthConnection(mapHeader, cMap, offset); - gMapConnectionFlags.south = TRUE; + sMapConnectionFlags.south = TRUE; break; case CONNECTION_NORTH: FillNorthConnection(mapHeader, cMap, offset); - gMapConnectionFlags.north = TRUE; + sMapConnectionFlags.north = TRUE; break; case CONNECTION_WEST: FillWestConnection(mapHeader, cMap, offset); - gMapConnectionFlags.west = TRUE; + sMapConnectionFlags.west = TRUE; break; case CONNECTION_EAST: FillEastConnection(mapHeader, cMap, offset); - gMapConnectionFlags.east = TRUE; + sMapConnectionFlags.east = TRUE; break; } } @@ -436,7 +436,7 @@ void SaveMapView(void) for (i = y; i < y + MAP_OFFSET_H; i++) { for (j = x; j < x + MAP_OFFSET_W; j++) - *mapView++ = gBackupMapData[width * i + j]; + *mapView++ = sBackupMapData[width * i + j]; } } @@ -491,8 +491,8 @@ static void LoadSavedMapView(void) for (j = x; j < x + MAP_OFFSET_W; j++) { - if (!SkipCopyingMetatileFromSavedMap(&gBackupMapData[j + width * i], width, yMode)) - gBackupMapData[j + width * i] = *mapView; + if (!SkipCopyingMetatileFromSavedMap(&sBackupMapData[j + width * i], width, yMode)) + sBackupMapData[j + width * i] = *mapView; mapView++; } } @@ -554,7 +554,7 @@ static void MoveMapViewToBackup(u8 direction) desti = width * (y + y0); srci = (y + r8) * MAP_OFFSET_W + r9; src = &mapView[srci + i]; - dest = &gBackupMapData[x0 + desti + j]; + dest = &sBackupMapData[x0 + desti + j]; *dest = *src; i++; j++; @@ -570,28 +570,28 @@ int GetMapBorderIdAt(int x, int y) if (x >= (gBackupMapLayout.width - (MAP_OFFSET + 1))) { - if (!gMapConnectionFlags.east) + if (!sMapConnectionFlags.east) return CONNECTION_INVALID; return CONNECTION_EAST; } else if (x < MAP_OFFSET) { - if (!gMapConnectionFlags.west) + if (!sMapConnectionFlags.west) return CONNECTION_INVALID; return CONNECTION_WEST; } else if (y >= (gBackupMapLayout.height - MAP_OFFSET)) { - if (!gMapConnectionFlags.south) + if (!sMapConnectionFlags.south) return CONNECTION_INVALID; return CONNECTION_SOUTH; } else if (y < MAP_OFFSET) { - if (!gMapConnectionFlags.north) + if (!sMapConnectionFlags.north) return CONNECTION_INVALID; return CONNECTION_NORTH; diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index a5c265f9082d..b1e1634992f5 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -35,8 +35,8 @@ static void SpriteCB_SwitchPocketRotatingBallContinue(struct Sprite *sprite); // static const rom data static const u16 sRotatingBall_Pal[] = INCBIN_U16("graphics/bag/rotating_ball.gbapal"); static const u8 sRotatingBall_Gfx[] = INCBIN_U8("graphics/bag/rotating_ball.4bpp"); -static const u8 gCherryUnused[] = INCBIN_U8("graphics/unused/cherry.4bpp"); -static const u16 gCherryUnused_Pal[] = INCBIN_U16("graphics/unused/cherry.gbapal"); +static const u8 sCherryUnused[] = INCBIN_U8("graphics/unused/cherry.4bpp"); +static const u16 sCherryUnused_Pal[] = INCBIN_U16("graphics/unused/cherry.gbapal"); static const struct OamData sBagOamData = { @@ -269,7 +269,7 @@ static const struct SpriteFrameImage sBerryPicSpriteImageTable[] = {&gDecompressionBuffer[0], 0x800}, }; -static const struct SpriteTemplate gBerryPicSpriteTemplate = +static const struct SpriteTemplate sBerryPicSpriteTemplate = { .tileTag = TAG_NONE, .paletteTag = TAG_BERRY_PIC_PAL, @@ -308,7 +308,7 @@ static const union AffineAnimCmd *const sBerryPicRotatingAnimCmds[] = sSpriteAffineAnim_BerryPicRotation2 }; -static const struct SpriteTemplate gBerryPicRotatingSpriteTemplate = +static const struct SpriteTemplate sBerryPicRotatingSpriteTemplate = { .tileTag = TAG_NONE, .paletteTag = TAG_BERRY_PIC_PAL, @@ -404,7 +404,7 @@ static const union AnimCmd *const sBerryCheckCircleSpriteAnimTable[] = sSpriteAnim_BerryCheckCircle }; -static const struct SpriteTemplate gBerryCheckCircleSpriteTemplate = +static const struct SpriteTemplate sBerryCheckCircleSpriteTemplate = { .tileTag = TAG_BERRY_CHECK_CIRCLE_GFX, .paletteTag = TAG_BERRY_CHECK_CIRCLE_GFX, @@ -609,7 +609,7 @@ static void LoadBerryGfx(u8 berryId) u8 CreateBerryTagSprite(u8 id, s16 x, s16 y) { LoadBerryGfx(id); - return CreateSprite(&gBerryPicSpriteTemplate, x, y, 0); + return CreateSprite(&sBerryPicSpriteTemplate, x, y, 0); } void FreeBerryTagSpritePalette(void) @@ -624,7 +624,7 @@ u8 CreateSpinningBerrySprite(u8 berryId, u8 x, u8 y, bool8 startAffine) FreeSpritePaletteByTag(TAG_BERRY_PIC_PAL); LoadBerryGfx(berryId); - spriteId = CreateSprite(&gBerryPicRotatingSpriteTemplate, x, y, 0); + spriteId = CreateSprite(&sBerryPicRotatingSpriteTemplate, x, y, 0); if (startAffine == TRUE) StartSpriteAffineAnim(&gSprites[spriteId], 1); @@ -633,5 +633,5 @@ u8 CreateSpinningBerrySprite(u8 berryId, u8 x, u8 y, bool8 startAffine) u8 CreateBerryFlavorCircleSprite(s16 x) { - return CreateSprite(&gBerryCheckCircleSpriteTemplate, x, 116, 0); + return CreateSprite(&sBerryCheckCircleSpriteTemplate, x, 116, 0); } diff --git a/src/landmark.c b/src/landmark.c index 52d52500aa87..615a9bfe3ea6 100644 --- a/src/landmark.c +++ b/src/landmark.c @@ -336,7 +336,7 @@ static const struct Landmark *const Landmarks_MtChimney_2[] = NULL, }; -static const struct LandmarkList gLandmarkLists[] = +static const struct LandmarkList sLandmarkLists[] = { {MAPSEC_ROUTE_103, 2, Landmarks_Route103_2}, {MAPSEC_ROUTE_104, 0, Landmarks_Route104_0}, @@ -420,21 +420,21 @@ static const struct Landmark *const *GetLandmarks(u8 mapSection, u8 id) { u16 i = 0; - for (; gLandmarkLists[i].mapSection != MAPSEC_NONE; i++) + for (; sLandmarkLists[i].mapSection != MAPSEC_NONE; i++) { - if (gLandmarkLists[i].mapSection > mapSection) + if (sLandmarkLists[i].mapSection > mapSection) return NULL; - if (gLandmarkLists[i].mapSection == mapSection) + if (sLandmarkLists[i].mapSection == mapSection) break; } - if (gLandmarkLists[i].mapSection == MAPSEC_NONE) + if (sLandmarkLists[i].mapSection == MAPSEC_NONE) return NULL; - for (; gLandmarkLists[i].mapSection == mapSection; i++) + for (; sLandmarkLists[i].mapSection == mapSection; i++) { - if (gLandmarkLists[i].id == id) - return gLandmarkLists[i].landmarks; + if (sLandmarkLists[i].id == id) + return sLandmarkLists[i].landmarks; } return NULL; diff --git a/src/m4a_1.s b/src/m4a_1.s index cc5d3238d6c2..3f15788061d0 100644 --- a/src/m4a_1.s +++ b/src/m4a_1.s @@ -680,7 +680,7 @@ SoundMainRAM_Unk2: ldr r1, [r4, o_SoundChannel_wav] add r2, r2, r1 add r2, r2, 0x10 - ldr r5, =gDecodingBuffer + ldr r5, =sDecodingBuffer ldr r6, =gDeltaEncodingTable mov r7, 0x40 ldrb lr, [r2], 1 @@ -701,7 +701,7 @@ _081DD57C: subs r7, r7, 2 bgt _081DD568 _081DD594: - ldr r5, =gDecodingBuffer + ldr r5, =sDecodingBuffer and r0, r3, 0x3F ldrsb r1, [r5, r0] pop {r0,r2,r5-r7,pc} @@ -1911,6 +1911,6 @@ _081DDD90: .align 2, 0 @ Don't pad with nop. .bss -gDecodingBuffer: @ Used as a buffer for audio decoded from compressed DPCM +sDecodingBuffer: @ Used as a buffer for audio decoded from compressed DPCM .space 0x40 - .size gDecodingBuffer, .-gDecodingBuffer + .size sDecodingBuffer, .-sDecodingBuffer diff --git a/src/main.c b/src/main.c index 2b96a8698c57..5fd236447bb9 100644 --- a/src/main.c +++ b/src/main.c @@ -69,7 +69,7 @@ u8 gLinkVSyncDisabled; u32 IntrMain_Buffer[0x200]; s8 gPcmDmaCounter; -static EWRAM_DATA u16 gTrainerId = 0; +static EWRAM_DATA u16 sTrainerId = 0; //EWRAM_DATA void (**gFlashTimerIntrFunc)(void) = NULL; @@ -201,12 +201,12 @@ void SeedRngAndSetTrainerId(void) u16 val = REG_TM1CNT_L; SeedRng(val); REG_TM1CNT_H = 0; - gTrainerId = val; + sTrainerId = val; } u16 GetGeneratedTrainerIdLower(void) { - return gTrainerId; + return sTrainerId; } void EnableVCountIntrAtLine150(void) diff --git a/src/main_menu.c b/src/main_menu.c index ed6158a9cf51..7a5dd9ebdb9f 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -371,7 +371,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] = DUMMY_WIN_TEMPLATE }; -static const struct WindowTemplate gNewGameBirchSpeechTextWindows[] = +static const struct WindowTemplate sNewGameBirchSpeechTextWindows[] = { { .bg = 0, @@ -457,7 +457,7 @@ static const struct MenuAction sMenuActions_Gender[] = { {gText_BirchGirl, NULL} }; -static const u8 *const gMalePresetNames[] = { +static const u8 *const sMalePresetNames[] = { gText_DefaultNameStu, gText_DefaultNameMilton, gText_DefaultNameTom, @@ -480,7 +480,7 @@ static const u8 *const gMalePresetNames[] = { gText_DefaultNameQuincy }; -static const u8 *const gFemalePresetNames[] = { +static const u8 *const sFemalePresetNames[] = { gText_DefaultNameKimmy, gText_DefaultNameTiara, gText_DefaultNameBella, @@ -1325,7 +1325,7 @@ static void Task_NewGameBirchSpeech_WaitForSpriteFadeInWelcome(u8 taskId) } else { - InitWindows(gNewGameBirchSpeechTextWindows); + InitWindows(sNewGameBirchSpeechTextWindows); LoadMainMenuWindowFrameTiles(0, 0xF3); LoadMessageBoxGfx(0, 0xFC, 0xF0); NewGameBirchSpeech_ShowDialogueWindow(0, 1); @@ -1851,7 +1851,7 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void) REG_IME = savedIme; SetVBlankCallback(VBlankCB_MainMenu); SetMainCallback2(CB2_MainMenu); - InitWindows(gNewGameBirchSpeechTextWindows); + InitWindows(sNewGameBirchSpeechTextWindows); LoadMainMenuWindowFrameTiles(0, 0xF3); LoadMessageBoxGfx(0, 0xFC, 0xF0); PutWindowTilemap(0); @@ -2087,7 +2087,7 @@ static void NewGameBirchSpeech_StartFadePlatformOut(u8 taskId, u8 delay) static void NewGameBirchSpeech_ShowGenderMenu(void) { - DrawMainMenuWindowBorder(&gNewGameBirchSpeechTextWindows[1], 0xF3); + DrawMainMenuWindowBorder(&sNewGameBirchSpeechTextWindows[1], 0xF3); FillWindowPixelBuffer(1, PIXEL_FILL(1)); PrintMenuTable(1, ARRAY_COUNT(sMenuActions_Gender), sMenuActions_Gender); InitMenuInUpperLeftCornerNormal(1, ARRAY_COUNT(sMenuActions_Gender), 0); @@ -2106,9 +2106,9 @@ static void NewGameBirchSpeech_SetDefaultPlayerName(u8 nameId) u8 i; if (gSaveBlock2Ptr->playerGender == MALE) - name = gMalePresetNames[nameId]; + name = sMalePresetNames[nameId]; else - name = gFemalePresetNames[nameId]; + name = sFemalePresetNames[nameId]; for (i = 0; i < PLAYER_NAME_LENGTH; i++) gSaveBlock2Ptr->playerName[i] = name[i]; gSaveBlock2Ptr->playerName[PLAYER_NAME_LENGTH] = EOS; diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 8cf1a6bab18a..363f2bc06132 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -176,25 +176,25 @@ static const u8 sRegionMapSectionId_To_PopUpThemeIdMapping[] = [MAPSEC_TRAINER_HILL - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_MARBLE }; -static const u8 gText_PyramidFloor1[] = _("PYRAMID FLOOR 1"); -static const u8 gText_PyramidFloor2[] = _("PYRAMID FLOOR 2"); -static const u8 gText_PyramidFloor3[] = _("PYRAMID FLOOR 3"); -static const u8 gText_PyramidFloor4[] = _("PYRAMID FLOOR 4"); -static const u8 gText_PyramidFloor5[] = _("PYRAMID FLOOR 5"); -static const u8 gText_PyramidFloor6[] = _("PYRAMID FLOOR 6"); -static const u8 gText_PyramidFloor7[] = _("PYRAMID FLOOR 7"); -static const u8 gText_Pyramid[] = _("PYRAMID"); +static const u8 sText_PyramidFloor1[] = _("PYRAMID FLOOR 1"); +static const u8 sText_PyramidFloor2[] = _("PYRAMID FLOOR 2"); +static const u8 sText_PyramidFloor3[] = _("PYRAMID FLOOR 3"); +static const u8 sText_PyramidFloor4[] = _("PYRAMID FLOOR 4"); +static const u8 sText_PyramidFloor5[] = _("PYRAMID FLOOR 5"); +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 gBattlePyramid_MapHeaderStrings[] = +static const u8 * const sBattlePyramid_MapHeaderStrings[] = { - gText_PyramidFloor1, - gText_PyramidFloor2, - gText_PyramidFloor3, - gText_PyramidFloor4, - gText_PyramidFloor5, - gText_PyramidFloor6, - gText_PyramidFloor7, - gText_Pyramid, + sText_PyramidFloor1, + sText_PyramidFloor2, + sText_PyramidFloor3, + sText_PyramidFloor4, + sText_PyramidFloor5, + sText_PyramidFloor6, + sText_PyramidFloor7, + sText_Pyramid, }; // Unused @@ -309,12 +309,12 @@ static void ShowMapNamePopUpWindow(void) if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP) { withoutPrefixPtr = &(mapDisplayHeader[3]); - mapDisplayHeaderSource = gBattlePyramid_MapHeaderStrings[7]; + mapDisplayHeaderSource = sBattlePyramid_MapHeaderStrings[7]; } else { withoutPrefixPtr = &(mapDisplayHeader[3]); - mapDisplayHeaderSource = gBattlePyramid_MapHeaderStrings[gSaveBlock2Ptr->frontier.curChallengeBattleNum]; + mapDisplayHeaderSource = sBattlePyramid_MapHeaderStrings[gSaveBlock2Ptr->frontier.curChallengeBattleNum]; } StringCopy(withoutPrefixPtr, mapDisplayHeaderSource); } diff --git a/src/overworld.c b/src/overworld.c index ba6eaa16790e..36f52223fe1a 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -318,7 +318,7 @@ static u8 MovementEventModeCB_Normal(struct LinkPlayerObjectEvent *, struct Obje static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); static u8 MovementEventModeCB_Scripted(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); -static u8 (*const gLinkPlayerMovementModes[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = +static u8 (*const sLinkPlayerMovementModes[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = { [MOVEMENT_MODE_FREE] = MovementEventModeCB_Normal, [MOVEMENT_MODE_FROZEN] = MovementEventModeCB_Ignored, @@ -330,7 +330,7 @@ static u8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *, struct Obje static u8 FacingHandler_ForcedFacingChange(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8); // These handlers return TRUE if the movement was scripted and successful, and FALSE otherwise. -static bool8 (*const gLinkPlayerFacingHandlers[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = +static bool8 (*const sLinkPlayerFacingHandlers[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = { FacingHandler_DoNothing, FacingHandler_DpadMovement, @@ -349,7 +349,7 @@ static void MovementStatusHandler_EnterFreeMode(struct LinkPlayerObjectEvent *, static void MovementStatusHandler_TryAdvanceScript(struct LinkPlayerObjectEvent *, struct ObjectEvent *); // These handlers are run after an attempted movement. -static void (*const gMovementStatusHandler[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *) = +static void (*const sMovementStatusHandler[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *) = { // FALSE: MovementStatusHandler_EnterFreeMode, @@ -3048,9 +3048,9 @@ static void SetPlayerFacingDirection(u8 linkPlayerId, u8 facing) { // This is a hack to split this code onto two separate lines, without declaring a local variable. // C++ style inline variables would be nice here. - #define TEMP gLinkPlayerMovementModes[linkPlayerObjEvent->movementMode](linkPlayerObjEvent, objEvent, facing) + #define TEMP sLinkPlayerMovementModes[linkPlayerObjEvent->movementMode](linkPlayerObjEvent, objEvent, facing) - gMovementStatusHandler[TEMP](linkPlayerObjEvent, objEvent); + sMovementStatusHandler[TEMP](linkPlayerObjEvent, objEvent); // Clean up the hack. #undef TEMP @@ -3061,7 +3061,7 @@ static void SetPlayerFacingDirection(u8 linkPlayerId, u8 facing) static u8 MovementEventModeCB_Normal(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { - return gLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); + return sLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); } static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) @@ -3072,7 +3072,7 @@ static u8 MovementEventModeCB_Ignored(struct LinkPlayerObjectEvent *linkPlayerOb // Identical to MovementEventModeCB_Normal static u8 MovementEventModeCB_Scripted(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) { - return gLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); + return sLinkPlayerFacingHandlers[dir](linkPlayerObjEvent, objEvent, dir); } static bool8 FacingHandler_DoNothing(struct LinkPlayerObjectEvent *linkPlayerObjEvent, struct ObjectEvent *objEvent, u8 dir) diff --git a/src/palette.c b/src/palette.c index 9fec449bc485..174c04e14bc8 100644 --- a/src/palette.c +++ b/src/palette.c @@ -60,13 +60,13 @@ static void Task_BlendPalettesGradually(u8 taskId); // unaligned word reads are issued in BlendPalette otherwise ALIGNED(4) EWRAM_DATA u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE] = {0}; ALIGNED(4) EWRAM_DATA u16 gPlttBufferFaded[PLTT_BUFFER_SIZE] = {0}; -EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0}; +static EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0}; EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0}; static EWRAM_DATA u32 sFiller = 0; static EWRAM_DATA u32 sPlttBufferTransferPending = 0; EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_DECOMP_BUFFER_SIZE] = {0}; -static const struct PaletteStructTemplate gDummyPaletteStructTemplate = { +static const struct PaletteStructTemplate sDummyPaletteStructTemplate = { .id = 0xFFFF, .state = 1 }; @@ -352,7 +352,7 @@ void PaletteStruct_ResetById(u16 id) static void PaletteStruct_Reset(u8 paletteNum) { - sPaletteStructs[paletteNum].template = &gDummyPaletteStructTemplate; + sPaletteStructs[paletteNum].template = &sDummyPaletteStructTemplate; sPaletteStructs[paletteNum].active = FALSE; sPaletteStructs[paletteNum].baseDestOffset = 0; sPaletteStructs[paletteNum].destOffset = 0; diff --git a/src/pokedex.c b/src/pokedex.c index 206782e59e15..5730593e19cc 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -840,7 +840,7 @@ static const u8 sText_No000[] = _("{NO}000"); static const u8 sCaughtBall_Gfx[] = INCBIN_U8("graphics/pokedex/caught_ball.4bpp"); static const u8 sText_TenDashes[] = _("----------"); -ALIGNED(4) static const u8 gExpandedPlaceholder_PokedexDescription[] = _(""); +ALIGNED(4) static const u8 sExpandedPlaceholder_PokedexDescription[] = _(""); #include "data/pokemon/pokedex_text.h" #include "data/pokemon/pokedex_entries.h" @@ -4138,7 +4138,7 @@ static void PrintMonInfo(u32 num, u32 value, u32 owned, u32 newEntry) if (owned) description = gPokedexEntries[num].description; else - description = gExpandedPlaceholder_PokedexDescription; + description = sExpandedPlaceholder_PokedexDescription; PrintInfoScreenText(description, GetStringCenterAlignXOffset(FONT_NORMAL, description, 0xF0), 0x5F); } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 8bf12c2bda46..8f80b0b37401 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1040,7 +1040,7 @@ static const struct BgTemplate sBgTemplates[] = }, }; -static const struct SpritePalette gWaveformSpritePalette = +static const struct SpritePalette sWaveformSpritePalette = { sWaveform_Pal, PALTAG_MISC_2 }; @@ -3844,7 +3844,7 @@ static bool8 InitPokeStorageWindows(void) static void LoadWaveformSpritePalette(void) { - LoadSpritePalette(&gWaveformSpritePalette); + LoadSpritePalette(&sWaveformSpritePalette); } static void InitPalettesAndSprites(void) diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 318ed520d870..7d668c67f2f8 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -105,7 +105,7 @@ static const u8 sHelpBarTextColors[3] = TEXT_COLOR_RED, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY }; -static const struct CompressedSpriteSheet gSpinningPokenavSpriteSheet[] = +static const struct CompressedSpriteSheet sSpinningPokenavSpriteSheet[] = { { .data = sSpinningPokenav_Gfx, @@ -114,7 +114,7 @@ static const struct CompressedSpriteSheet gSpinningPokenavSpriteSheet[] = } }; -static const struct SpritePalette gSpinningNavgearPalettes[] = +static const struct SpritePalette sSpinningNavgearPalettes[] = { { .data = sSpinningPokenav_Pal, @@ -583,10 +583,10 @@ static void InitPokenavMainMenuResources(void) u8 spriteId; struct Pokenav_MainMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU); - for (i = 0; i < ARRAY_COUNT(gSpinningPokenavSpriteSheet); i++) - LoadCompressedSpriteSheet(&gSpinningPokenavSpriteSheet[i]); + for (i = 0; i < ARRAY_COUNT(sSpinningPokenavSpriteSheet); i++) + LoadCompressedSpriteSheet(&sSpinningPokenavSpriteSheet[i]); - Pokenav_AllocAndLoadPalettes(gSpinningNavgearPalettes); + Pokenav_AllocAndLoadPalettes(sSpinningNavgearPalettes); menu->palettes = ~1 & ~(0x10000 << IndexOfSpritePaletteTag(0)); spriteId = CreateSprite(&sSpinningPokenavSpriteTemplate, 220, 12, 0); menu->spinningPokenav = &gSprites[spriteId]; diff --git a/src/pokenav_match_call_data.c b/src/pokenav_match_call_data.c index 29dd62621bae..2e8cc40b5cb8 100644 --- a/src/pokenav_match_call_data.c +++ b/src/pokenav_match_call_data.c @@ -324,7 +324,7 @@ static const match_call_text_data_t sWallyTextScripts[] = { { NULL, 0xFFFF, 0xFFFF } }; -const struct MatchCallLocationOverride sWallyLocationData[] = { +static const struct MatchCallLocationOverride sWallyLocationData[] = { { FLAG_HIDE_MAUVILLE_CITY_WALLY, MAPSEC_VERDANTURF_TOWN }, { FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, MAPSEC_NONE }, { FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY, MAPSEC_VICTORY_ROAD }, diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 16ba480703c7..828bd525df37 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -146,7 +146,7 @@ static const struct WindowTemplate sMapSecInfoWindowTemplate = #include "data/region_map/city_map_entries.h" -const struct OamData sCityZoomTextSprite_OamData = +static const struct OamData sCityZoomTextSprite_OamData = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, diff --git a/src/region_map.c b/src/region_map.c index 09e2d69bf2f5..5b3b8b00866b 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -64,7 +64,7 @@ struct MultiNameFlyDest // Static RAM declarations -static EWRAM_DATA struct RegionMap *gRegionMap = NULL; +static EWRAM_DATA struct RegionMap *sRegionMap = NULL; static EWRAM_DATA struct { void (*callback)(void); @@ -516,49 +516,49 @@ void InitRegionMap(struct RegionMap *regionMap, bool8 zoomed) void InitRegionMapData(struct RegionMap *regionMap, const struct BgTemplate *template, bool8 zoomed) { - gRegionMap = regionMap; - gRegionMap->initStep = 0; - gRegionMap->zoomed = zoomed; - gRegionMap->inputCallback = zoomed == TRUE ? ProcessRegionMapInput_Zoomed : ProcessRegionMapInput_Full; + sRegionMap = regionMap; + sRegionMap->initStep = 0; + sRegionMap->zoomed = zoomed; + sRegionMap->inputCallback = zoomed == TRUE ? ProcessRegionMapInput_Zoomed : ProcessRegionMapInput_Full; if (template != NULL) { - gRegionMap->bgNum = template->bg; - gRegionMap->charBaseIdx = template->charBaseIndex; - gRegionMap->mapBaseIdx = template->mapBaseIndex; - gRegionMap->bgManaged = TRUE; + sRegionMap->bgNum = template->bg; + sRegionMap->charBaseIdx = template->charBaseIndex; + sRegionMap->mapBaseIdx = template->mapBaseIndex; + sRegionMap->bgManaged = TRUE; } else { - gRegionMap->bgNum = 2; - gRegionMap->charBaseIdx = 2; - gRegionMap->mapBaseIdx = 28; - gRegionMap->bgManaged = FALSE; + sRegionMap->bgNum = 2; + sRegionMap->charBaseIdx = 2; + sRegionMap->mapBaseIdx = 28; + sRegionMap->bgManaged = FALSE; } } void ShowRegionMapForPokedexAreaScreen(struct RegionMap *regionMap) { - gRegionMap = regionMap; + sRegionMap = regionMap; InitMapBasedOnPlayerLocation(); - gRegionMap->playerIconSpritePosX = gRegionMap->cursorPosX; - gRegionMap->playerIconSpritePosY = gRegionMap->cursorPosY; + sRegionMap->playerIconSpritePosX = sRegionMap->cursorPosX; + sRegionMap->playerIconSpritePosY = sRegionMap->cursorPosY; } bool8 LoadRegionMapGfx(void) { - switch (gRegionMap->initStep) + switch (sRegionMap->initStep) { case 0: - if (gRegionMap->bgManaged) - DecompressAndCopyTileDataToVram(gRegionMap->bgNum, sRegionMapBg_GfxLZ, 0, 0, 0); + if (sRegionMap->bgManaged) + DecompressAndCopyTileDataToVram(sRegionMap->bgNum, sRegionMapBg_GfxLZ, 0, 0, 0); else LZ77UnCompVram(sRegionMapBg_GfxLZ, (u16 *)BG_CHAR_ADDR(2)); break; case 1: - if (gRegionMap->bgManaged) + if (sRegionMap->bgManaged) { if (!FreeTempTileDataBuffersIfPossible()) - DecompressAndCopyTileDataToVram(gRegionMap->bgNum, sRegionMapBg_TilemapLZ, 0, 0, 1); + DecompressAndCopyTileDataToVram(sRegionMap->bgNum, sRegionMapBg_TilemapLZ, 0, 0, 1); } else { @@ -570,54 +570,54 @@ bool8 LoadRegionMapGfx(void) LoadPalette(sRegionMapBg_Pal, 0x70, 0x60); break; case 3: - LZ77UnCompWram(sRegionMapCursorSmallGfxLZ, gRegionMap->cursorSmallImage); + LZ77UnCompWram(sRegionMapCursorSmallGfxLZ, sRegionMap->cursorSmallImage); break; case 4: - LZ77UnCompWram(sRegionMapCursorLargeGfxLZ, gRegionMap->cursorLargeImage); + LZ77UnCompWram(sRegionMapCursorLargeGfxLZ, sRegionMap->cursorLargeImage); break; case 5: InitMapBasedOnPlayerLocation(); - gRegionMap->playerIconSpritePosX = gRegionMap->cursorPosX; - gRegionMap->playerIconSpritePosY = gRegionMap->cursorPosY; - gRegionMap->mapSecId = CorrectSpecialMapSecId_Internal(gRegionMap->mapSecId); - gRegionMap->mapSecType = GetMapsecType(gRegionMap->mapSecId); - GetMapName(gRegionMap->mapSecName, gRegionMap->mapSecId, MAP_NAME_LENGTH); + sRegionMap->playerIconSpritePosX = sRegionMap->cursorPosX; + sRegionMap->playerIconSpritePosY = sRegionMap->cursorPosY; + sRegionMap->mapSecId = CorrectSpecialMapSecId_Internal(sRegionMap->mapSecId); + sRegionMap->mapSecType = GetMapsecType(sRegionMap->mapSecId); + GetMapName(sRegionMap->mapSecName, sRegionMap->mapSecId, MAP_NAME_LENGTH); break; case 6: - if (gRegionMap->zoomed == FALSE) + if (sRegionMap->zoomed == FALSE) { CalcZoomScrollParams(0, 0, 0, 0, 0x100, 0x100, 0); } else { - gRegionMap->scrollX = gRegionMap->cursorPosX * 8 - 0x34; - gRegionMap->scrollY = gRegionMap->cursorPosY * 8 - 0x44; - gRegionMap->zoomedCursorPosX = gRegionMap->cursorPosX; - gRegionMap->zoomedCursorPosY = gRegionMap->cursorPosY; - CalcZoomScrollParams(gRegionMap->scrollX, gRegionMap->scrollY, 0x38, 0x48, 0x80, 0x80, 0); + sRegionMap->scrollX = sRegionMap->cursorPosX * 8 - 0x34; + sRegionMap->scrollY = sRegionMap->cursorPosY * 8 - 0x44; + sRegionMap->zoomedCursorPosX = sRegionMap->cursorPosX; + sRegionMap->zoomedCursorPosY = sRegionMap->cursorPosY; + CalcZoomScrollParams(sRegionMap->scrollX, sRegionMap->scrollY, 0x38, 0x48, 0x80, 0x80, 0); } break; case 7: GetPositionOfCursorWithinMapSec(); UpdateRegionMapVideoRegs(); - gRegionMap->cursorSprite = NULL; - gRegionMap->playerIconSprite = NULL; - gRegionMap->cursorMovementFrameCounter = 0; - gRegionMap->blinkPlayerIcon = FALSE; - if (gRegionMap->bgManaged) + sRegionMap->cursorSprite = NULL; + sRegionMap->playerIconSprite = NULL; + sRegionMap->cursorMovementFrameCounter = 0; + sRegionMap->blinkPlayerIcon = FALSE; + if (sRegionMap->bgManaged) { - SetBgAttribute(gRegionMap->bgNum, BG_ATTR_SCREENSIZE, 2); - SetBgAttribute(gRegionMap->bgNum, BG_ATTR_CHARBASEINDEX, gRegionMap->charBaseIdx); - SetBgAttribute(gRegionMap->bgNum, BG_ATTR_MAPBASEINDEX, gRegionMap->mapBaseIdx); - SetBgAttribute(gRegionMap->bgNum, BG_ATTR_WRAPAROUND, 1); - SetBgAttribute(gRegionMap->bgNum, BG_ATTR_PALETTEMODE, 1); + SetBgAttribute(sRegionMap->bgNum, BG_ATTR_SCREENSIZE, 2); + SetBgAttribute(sRegionMap->bgNum, BG_ATTR_CHARBASEINDEX, sRegionMap->charBaseIdx); + SetBgAttribute(sRegionMap->bgNum, BG_ATTR_MAPBASEINDEX, sRegionMap->mapBaseIdx); + SetBgAttribute(sRegionMap->bgNum, BG_ATTR_WRAPAROUND, 1); + SetBgAttribute(sRegionMap->bgNum, BG_ATTR_PALETTEMODE, 1); } - gRegionMap->initStep++; + sRegionMap->initStep++; return FALSE; default: return FALSE; } - gRegionMap->initStep++; + sRegionMap->initStep++; return TRUE; } @@ -629,23 +629,23 @@ void BlendRegionMap(u16 color, u32 coeff) void FreeRegionMapIconResources(void) { - if (gRegionMap->cursorSprite != NULL) + if (sRegionMap->cursorSprite != NULL) { - DestroySprite(gRegionMap->cursorSprite); - FreeSpriteTilesByTag(gRegionMap->cursorTileTag); - FreeSpritePaletteByTag(gRegionMap->cursorPaletteTag); + DestroySprite(sRegionMap->cursorSprite); + FreeSpriteTilesByTag(sRegionMap->cursorTileTag); + FreeSpritePaletteByTag(sRegionMap->cursorPaletteTag); } - if (gRegionMap->playerIconSprite != NULL) + if (sRegionMap->playerIconSprite != NULL) { - DestroySprite(gRegionMap->playerIconSprite); - FreeSpriteTilesByTag(gRegionMap->playerIconTileTag); - FreeSpritePaletteByTag(gRegionMap->playerIconPaletteTag); + DestroySprite(sRegionMap->playerIconSprite); + FreeSpriteTilesByTag(sRegionMap->playerIconTileTag); + FreeSpritePaletteByTag(sRegionMap->playerIconPaletteTag); } } u8 DoRegionMapInputCallback(void) { - return gRegionMap->inputCallback(); + return sRegionMap->inputCallback(); } static u8 ProcessRegionMapInput_Full(void) @@ -653,26 +653,26 @@ static u8 ProcessRegionMapInput_Full(void) u8 input; input = MAP_INPUT_NONE; - gRegionMap->cursorDeltaX = 0; - gRegionMap->cursorDeltaY = 0; - if (JOY_HELD(DPAD_UP) && gRegionMap->cursorPosY > MAPCURSOR_Y_MIN) + sRegionMap->cursorDeltaX = 0; + sRegionMap->cursorDeltaY = 0; + if (JOY_HELD(DPAD_UP) && sRegionMap->cursorPosY > MAPCURSOR_Y_MIN) { - gRegionMap->cursorDeltaY = -1; + sRegionMap->cursorDeltaY = -1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_DOWN) && gRegionMap->cursorPosY < MAPCURSOR_Y_MAX) + if (JOY_HELD(DPAD_DOWN) && sRegionMap->cursorPosY < MAPCURSOR_Y_MAX) { - gRegionMap->cursorDeltaY = +1; + sRegionMap->cursorDeltaY = +1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_LEFT) && gRegionMap->cursorPosX > MAPCURSOR_X_MIN) + if (JOY_HELD(DPAD_LEFT) && sRegionMap->cursorPosX > MAPCURSOR_X_MIN) { - gRegionMap->cursorDeltaX = -1; + sRegionMap->cursorDeltaX = -1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_RIGHT) && gRegionMap->cursorPosX < MAPCURSOR_X_MAX) + if (JOY_HELD(DPAD_RIGHT) && sRegionMap->cursorPosX < MAPCURSOR_X_MAX) { - gRegionMap->cursorDeltaX = +1; + sRegionMap->cursorDeltaX = +1; input = MAP_INPUT_MOVE_START; } if (JOY_NEW(A_BUTTON)) @@ -685,8 +685,8 @@ static u8 ProcessRegionMapInput_Full(void) } if (input == MAP_INPUT_MOVE_START) { - gRegionMap->cursorMovementFrameCounter = 4; - gRegionMap->inputCallback = MoveRegionMapCursor_Full; + sRegionMap->cursorMovementFrameCounter = 4; + sRegionMap->inputCallback = MoveRegionMapCursor_Full; } return input; } @@ -695,35 +695,35 @@ static u8 MoveRegionMapCursor_Full(void) { u16 mapSecId; - if (gRegionMap->cursorMovementFrameCounter != 0) + if (sRegionMap->cursorMovementFrameCounter != 0) return MAP_INPUT_MOVE_CONT; - if (gRegionMap->cursorDeltaX > 0) + if (sRegionMap->cursorDeltaX > 0) { - gRegionMap->cursorPosX++; + sRegionMap->cursorPosX++; } - if (gRegionMap->cursorDeltaX < 0) + if (sRegionMap->cursorDeltaX < 0) { - gRegionMap->cursorPosX--; + sRegionMap->cursorPosX--; } - if (gRegionMap->cursorDeltaY > 0) + if (sRegionMap->cursorDeltaY > 0) { - gRegionMap->cursorPosY++; + sRegionMap->cursorPosY++; } - if (gRegionMap->cursorDeltaY < 0) + if (sRegionMap->cursorDeltaY < 0) { - gRegionMap->cursorPosY--; + sRegionMap->cursorPosY--; } - mapSecId = GetMapSecIdAt(gRegionMap->cursorPosX, gRegionMap->cursorPosY); - gRegionMap->mapSecType = GetMapsecType(mapSecId); - if (mapSecId != gRegionMap->mapSecId) + mapSecId = GetMapSecIdAt(sRegionMap->cursorPosX, sRegionMap->cursorPosY); + sRegionMap->mapSecType = GetMapsecType(mapSecId); + if (mapSecId != sRegionMap->mapSecId) { - gRegionMap->mapSecId = mapSecId; - GetMapName(gRegionMap->mapSecName, gRegionMap->mapSecId, MAP_NAME_LENGTH); + sRegionMap->mapSecId = mapSecId; + GetMapName(sRegionMap->mapSecName, sRegionMap->mapSecId, MAP_NAME_LENGTH); } GetPositionOfCursorWithinMapSec(); - gRegionMap->inputCallback = ProcessRegionMapInput_Full; + sRegionMap->inputCallback = ProcessRegionMapInput_Full; return MAP_INPUT_MOVE_END; } @@ -732,26 +732,26 @@ static u8 ProcessRegionMapInput_Zoomed(void) u8 input; input = MAP_INPUT_NONE; - gRegionMap->zoomedCursorDeltaX = 0; - gRegionMap->zoomedCursorDeltaY = 0; - if (JOY_HELD(DPAD_UP) && gRegionMap->scrollY > -0x34) + sRegionMap->zoomedCursorDeltaX = 0; + sRegionMap->zoomedCursorDeltaY = 0; + if (JOY_HELD(DPAD_UP) && sRegionMap->scrollY > -0x34) { - gRegionMap->zoomedCursorDeltaY = -1; + sRegionMap->zoomedCursorDeltaY = -1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_DOWN) && gRegionMap->scrollY < 0x3c) + if (JOY_HELD(DPAD_DOWN) && sRegionMap->scrollY < 0x3c) { - gRegionMap->zoomedCursorDeltaY = +1; + sRegionMap->zoomedCursorDeltaY = +1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_LEFT) && gRegionMap->scrollX > -0x2c) + if (JOY_HELD(DPAD_LEFT) && sRegionMap->scrollX > -0x2c) { - gRegionMap->zoomedCursorDeltaX = -1; + sRegionMap->zoomedCursorDeltaX = -1; input = MAP_INPUT_MOVE_START; } - if (JOY_HELD(DPAD_RIGHT) && gRegionMap->scrollX < 0xac) + if (JOY_HELD(DPAD_RIGHT) && sRegionMap->scrollX < 0xac) { - gRegionMap->zoomedCursorDeltaX = +1; + sRegionMap->zoomedCursorDeltaX = +1; input = MAP_INPUT_MOVE_START; } if (JOY_NEW(A_BUTTON)) @@ -764,8 +764,8 @@ static u8 ProcessRegionMapInput_Zoomed(void) } if (input == MAP_INPUT_MOVE_START) { - gRegionMap->inputCallback = MoveRegionMapCursor_Zoomed; - gRegionMap->zoomedCursorMovementFrameCounter = 0; + sRegionMap->inputCallback = MoveRegionMapCursor_Zoomed; + sRegionMap->zoomedCursorMovementFrameCounter = 0; } return input; } @@ -776,29 +776,29 @@ static u8 MoveRegionMapCursor_Zoomed(void) u16 y; u16 mapSecId; - gRegionMap->scrollY += gRegionMap->zoomedCursorDeltaY; - gRegionMap->scrollX += gRegionMap->zoomedCursorDeltaX; - RegionMap_SetBG2XAndBG2Y(gRegionMap->scrollX, gRegionMap->scrollY); - gRegionMap->zoomedCursorMovementFrameCounter++; - if (gRegionMap->zoomedCursorMovementFrameCounter == 8) + sRegionMap->scrollY += sRegionMap->zoomedCursorDeltaY; + sRegionMap->scrollX += sRegionMap->zoomedCursorDeltaX; + RegionMap_SetBG2XAndBG2Y(sRegionMap->scrollX, sRegionMap->scrollY); + sRegionMap->zoomedCursorMovementFrameCounter++; + if (sRegionMap->zoomedCursorMovementFrameCounter == 8) { - x = (gRegionMap->scrollX + 0x2c) / 8 + 1; - y = (gRegionMap->scrollY + 0x34) / 8 + 2; - if (x != gRegionMap->zoomedCursorPosX || y != gRegionMap->zoomedCursorPosY) + x = (sRegionMap->scrollX + 0x2c) / 8 + 1; + y = (sRegionMap->scrollY + 0x34) / 8 + 2; + if (x != sRegionMap->zoomedCursorPosX || y != sRegionMap->zoomedCursorPosY) { - gRegionMap->zoomedCursorPosX = x; - gRegionMap->zoomedCursorPosY = y; + sRegionMap->zoomedCursorPosX = x; + sRegionMap->zoomedCursorPosY = y; mapSecId = GetMapSecIdAt(x, y); - gRegionMap->mapSecType = GetMapsecType(mapSecId); - if (mapSecId != gRegionMap->mapSecId) + sRegionMap->mapSecType = GetMapsecType(mapSecId); + if (mapSecId != sRegionMap->mapSecId) { - gRegionMap->mapSecId = mapSecId; - GetMapName(gRegionMap->mapSecName, gRegionMap->mapSecId, MAP_NAME_LENGTH); + sRegionMap->mapSecId = mapSecId; + GetMapName(sRegionMap->mapSecName, sRegionMap->mapSecId, MAP_NAME_LENGTH); } GetPositionOfCursorWithinMapSec(); } - gRegionMap->zoomedCursorMovementFrameCounter = 0; - gRegionMap->inputCallback = ProcessRegionMapInput_Zoomed; + sRegionMap->zoomedCursorMovementFrameCounter = 0; + sRegionMap->inputCallback = ProcessRegionMapInput_Zoomed; return MAP_INPUT_MOVE_END; } return MAP_INPUT_MOVE_CONT; @@ -806,35 +806,35 @@ static u8 MoveRegionMapCursor_Zoomed(void) void SetRegionMapDataForZoom(void) { - if (gRegionMap->zoomed == FALSE) - { - gRegionMap->scrollY = 0; - gRegionMap->scrollX = 0; - gRegionMap->unk_040 = 0; - gRegionMap->unk_03c = 0; - gRegionMap->unk_060 = gRegionMap->cursorPosX * 8 - 0x34; - gRegionMap->unk_062 = gRegionMap->cursorPosY * 8 - 0x44; - gRegionMap->unk_044 = (gRegionMap->unk_060 << 8) / 16; - gRegionMap->unk_048 = (gRegionMap->unk_062 << 8) / 16; - gRegionMap->zoomedCursorPosX = gRegionMap->cursorPosX; - gRegionMap->zoomedCursorPosY = gRegionMap->cursorPosY; - gRegionMap->unk_04c = 0x10000; - gRegionMap->unk_050 = -0x800; + if (sRegionMap->zoomed == FALSE) + { + sRegionMap->scrollY = 0; + sRegionMap->scrollX = 0; + sRegionMap->unk_040 = 0; + sRegionMap->unk_03c = 0; + sRegionMap->unk_060 = sRegionMap->cursorPosX * 8 - 0x34; + sRegionMap->unk_062 = sRegionMap->cursorPosY * 8 - 0x44; + sRegionMap->unk_044 = (sRegionMap->unk_060 << 8) / 16; + sRegionMap->unk_048 = (sRegionMap->unk_062 << 8) / 16; + sRegionMap->zoomedCursorPosX = sRegionMap->cursorPosX; + sRegionMap->zoomedCursorPosY = sRegionMap->cursorPosY; + sRegionMap->unk_04c = 0x10000; + sRegionMap->unk_050 = -0x800; } else { - gRegionMap->unk_03c = gRegionMap->scrollX * 0x100; - gRegionMap->unk_040 = gRegionMap->scrollY * 0x100; - gRegionMap->unk_060 = 0; - gRegionMap->unk_062 = 0; - gRegionMap->unk_044 = -(gRegionMap->unk_03c / 16); - gRegionMap->unk_048 = -(gRegionMap->unk_040 / 16); - gRegionMap->cursorPosX = gRegionMap->zoomedCursorPosX; - gRegionMap->cursorPosY = gRegionMap->zoomedCursorPosY; - gRegionMap->unk_04c = 0x8000; - gRegionMap->unk_050 = 0x800; - } - gRegionMap->unk_06e = 0; + sRegionMap->unk_03c = sRegionMap->scrollX * 0x100; + sRegionMap->unk_040 = sRegionMap->scrollY * 0x100; + sRegionMap->unk_060 = 0; + sRegionMap->unk_062 = 0; + sRegionMap->unk_044 = -(sRegionMap->unk_03c / 16); + sRegionMap->unk_048 = -(sRegionMap->unk_040 / 16); + sRegionMap->cursorPosX = sRegionMap->zoomedCursorPosX; + sRegionMap->cursorPosY = sRegionMap->zoomedCursorPosY; + sRegionMap->unk_04c = 0x8000; + sRegionMap->unk_050 = 0x800; + } + sRegionMap->unk_06e = 0; FreeRegionMapCursorSprite(); HideRegionMapPlayerIcon(); } @@ -843,60 +843,60 @@ bool8 UpdateRegionMapZoom(void) { bool8 retVal; - if (gRegionMap->unk_06e >= 16) + if (sRegionMap->unk_06e >= 16) { return FALSE; } - gRegionMap->unk_06e++; - if (gRegionMap->unk_06e == 16) - { - gRegionMap->unk_044 = 0; - gRegionMap->unk_048 = 0; - gRegionMap->scrollX = gRegionMap->unk_060; - gRegionMap->scrollY = gRegionMap->unk_062; - gRegionMap->unk_04c = (gRegionMap->zoomed == FALSE) ? (128 << 8) : (256 << 8); - gRegionMap->zoomed = !gRegionMap->zoomed; - gRegionMap->inputCallback = (gRegionMap->zoomed == FALSE) ? ProcessRegionMapInput_Full : ProcessRegionMapInput_Zoomed; - CreateRegionMapCursor(gRegionMap->cursorTileTag, gRegionMap->cursorPaletteTag); + sRegionMap->unk_06e++; + if (sRegionMap->unk_06e == 16) + { + sRegionMap->unk_044 = 0; + sRegionMap->unk_048 = 0; + sRegionMap->scrollX = sRegionMap->unk_060; + sRegionMap->scrollY = sRegionMap->unk_062; + sRegionMap->unk_04c = (sRegionMap->zoomed == FALSE) ? (128 << 8) : (256 << 8); + sRegionMap->zoomed = !sRegionMap->zoomed; + sRegionMap->inputCallback = (sRegionMap->zoomed == FALSE) ? ProcessRegionMapInput_Full : ProcessRegionMapInput_Zoomed; + CreateRegionMapCursor(sRegionMap->cursorTileTag, sRegionMap->cursorPaletteTag); UnhideRegionMapPlayerIcon(); retVal = FALSE; } else { - gRegionMap->unk_03c += gRegionMap->unk_044; - gRegionMap->unk_040 += gRegionMap->unk_048; - gRegionMap->scrollX = gRegionMap->unk_03c >> 8; - gRegionMap->scrollY = gRegionMap->unk_040 >> 8; - gRegionMap->unk_04c += gRegionMap->unk_050; - if ((gRegionMap->unk_044 < 0 && gRegionMap->scrollX < gRegionMap->unk_060) || (gRegionMap->unk_044 > 0 && gRegionMap->scrollX > gRegionMap->unk_060)) + sRegionMap->unk_03c += sRegionMap->unk_044; + sRegionMap->unk_040 += sRegionMap->unk_048; + sRegionMap->scrollX = sRegionMap->unk_03c >> 8; + sRegionMap->scrollY = sRegionMap->unk_040 >> 8; + sRegionMap->unk_04c += sRegionMap->unk_050; + if ((sRegionMap->unk_044 < 0 && sRegionMap->scrollX < sRegionMap->unk_060) || (sRegionMap->unk_044 > 0 && sRegionMap->scrollX > sRegionMap->unk_060)) { - gRegionMap->scrollX = gRegionMap->unk_060; - gRegionMap->unk_044 = 0; + sRegionMap->scrollX = sRegionMap->unk_060; + sRegionMap->unk_044 = 0; } - if ((gRegionMap->unk_048 < 0 && gRegionMap->scrollY < gRegionMap->unk_062) || (gRegionMap->unk_048 > 0 && gRegionMap->scrollY > gRegionMap->unk_062)) + if ((sRegionMap->unk_048 < 0 && sRegionMap->scrollY < sRegionMap->unk_062) || (sRegionMap->unk_048 > 0 && sRegionMap->scrollY > sRegionMap->unk_062)) { - gRegionMap->scrollY = gRegionMap->unk_062; - gRegionMap->unk_048 = 0; + sRegionMap->scrollY = sRegionMap->unk_062; + sRegionMap->unk_048 = 0; } - if (gRegionMap->zoomed == FALSE) + if (sRegionMap->zoomed == FALSE) { - if (gRegionMap->unk_04c < (128 << 8)) + if (sRegionMap->unk_04c < (128 << 8)) { - gRegionMap->unk_04c = (128 << 8); - gRegionMap->unk_050 = 0; + sRegionMap->unk_04c = (128 << 8); + sRegionMap->unk_050 = 0; } } else { - if (gRegionMap->unk_04c > (256 << 8)) + if (sRegionMap->unk_04c > (256 << 8)) { - gRegionMap->unk_04c = (256 << 8); - gRegionMap->unk_050 = 0; + sRegionMap->unk_04c = (256 << 8); + sRegionMap->unk_050 = 0; } } retVal = TRUE; } - CalcZoomScrollParams(gRegionMap->scrollX, gRegionMap->scrollY, 0x38, 0x48, gRegionMap->unk_04c >> 8, gRegionMap->unk_04c >> 8, 0); + CalcZoomScrollParams(sRegionMap->scrollX, sRegionMap->scrollY, 0x38, 0x48, sRegionMap->unk_04c >> 8, sRegionMap->unk_04c >> 8, 0); return retVal; } @@ -907,42 +907,42 @@ static void CalcZoomScrollParams(s16 scrollX, s16 scrollY, s16 c, s16 d, u16 e, s32 var3; s32 var4; - gRegionMap->bg2pa = e * gSineTable[rotation + 64] >> 8; - gRegionMap->bg2pc = e * -gSineTable[rotation] >> 8; - gRegionMap->bg2pb = f * gSineTable[rotation] >> 8; - gRegionMap->bg2pd = f * gSineTable[rotation + 64] >> 8; + sRegionMap->bg2pa = e * gSineTable[rotation + 64] >> 8; + sRegionMap->bg2pc = e * -gSineTable[rotation] >> 8; + sRegionMap->bg2pb = f * gSineTable[rotation] >> 8; + sRegionMap->bg2pd = f * gSineTable[rotation + 64] >> 8; var1 = (scrollX << 8) + (c << 8); - var2 = d * gRegionMap->bg2pb + gRegionMap->bg2pa * c; - gRegionMap->bg2x = var1 - var2; + var2 = d * sRegionMap->bg2pb + sRegionMap->bg2pa * c; + sRegionMap->bg2x = var1 - var2; var3 = (scrollY << 8) + (d << 8); - var4 = gRegionMap->bg2pd * d + gRegionMap->bg2pc * c; - gRegionMap->bg2y = var3 - var4; + var4 = sRegionMap->bg2pd * d + sRegionMap->bg2pc * c; + sRegionMap->bg2y = var3 - var4; - gRegionMap->needUpdateVideoRegs = TRUE; + sRegionMap->needUpdateVideoRegs = TRUE; } static void RegionMap_SetBG2XAndBG2Y(s16 x, s16 y) { - gRegionMap->bg2x = (x << 8) + 0x1c00; - gRegionMap->bg2y = (y << 8) + 0x2400; - gRegionMap->needUpdateVideoRegs = TRUE; + sRegionMap->bg2x = (x << 8) + 0x1c00; + sRegionMap->bg2y = (y << 8) + 0x2400; + sRegionMap->needUpdateVideoRegs = TRUE; } void UpdateRegionMapVideoRegs(void) { - if (gRegionMap->needUpdateVideoRegs) + if (sRegionMap->needUpdateVideoRegs) { - SetGpuReg(REG_OFFSET_BG2PA, gRegionMap->bg2pa); - SetGpuReg(REG_OFFSET_BG2PB, gRegionMap->bg2pb); - SetGpuReg(REG_OFFSET_BG2PC, gRegionMap->bg2pc); - SetGpuReg(REG_OFFSET_BG2PD, gRegionMap->bg2pd); - SetGpuReg(REG_OFFSET_BG2X_L, gRegionMap->bg2x); - SetGpuReg(REG_OFFSET_BG2X_H, gRegionMap->bg2x >> 16); - SetGpuReg(REG_OFFSET_BG2Y_L, gRegionMap->bg2y); - SetGpuReg(REG_OFFSET_BG2Y_H, gRegionMap->bg2y >> 16); - gRegionMap->needUpdateVideoRegs = FALSE; + SetGpuReg(REG_OFFSET_BG2PA, sRegionMap->bg2pa); + SetGpuReg(REG_OFFSET_BG2PB, sRegionMap->bg2pb); + SetGpuReg(REG_OFFSET_BG2PC, sRegionMap->bg2pc); + SetGpuReg(REG_OFFSET_BG2PD, sRegionMap->bg2pd); + SetGpuReg(REG_OFFSET_BG2X_L, sRegionMap->bg2x); + SetGpuReg(REG_OFFSET_BG2X_H, sRegionMap->bg2x >> 16); + SetGpuReg(REG_OFFSET_BG2Y_L, sRegionMap->bg2y); + SetGpuReg(REG_OFFSET_BG2Y_H, sRegionMap->bg2y >> 16); + sRegionMap->needUpdateVideoRegs = FALSE; } } @@ -950,10 +950,10 @@ void PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(s16 x, s16 y) { CalcZoomScrollParams(x, y, 0x38, 0x48, 0x100, 0x100, 0); UpdateRegionMapVideoRegs(); - if (gRegionMap->playerIconSprite != NULL) + if (sRegionMap->playerIconSprite != NULL) { - gRegionMap->playerIconSprite->x2 = -x; - gRegionMap->playerIconSprite->y2 = -y; + sRegionMap->playerIconSprite->x2 = -x; + sRegionMap->playerIconSprite->y2 = -y; } } @@ -996,22 +996,22 @@ static void InitMapBasedOnPlayerLocation(void) case MAP_TYPE_ROUTE: case MAP_TYPE_UNDERWATER: case MAP_TYPE_OCEAN_ROUTE: - gRegionMap->mapSecId = gMapHeader.regionMapSectionId; - gRegionMap->playerIsInCave = FALSE; + sRegionMap->mapSecId = gMapHeader.regionMapSectionId; + sRegionMap->playerIsInCave = FALSE; mapWidth = gMapHeader.mapLayout->width; mapHeight = gMapHeader.mapLayout->height; x = gSaveBlock1Ptr->pos.x; y = gSaveBlock1Ptr->pos.y; - if (gRegionMap->mapSecId == MAPSEC_UNDERWATER_SEAFLOOR_CAVERN || gRegionMap->mapSecId == MAPSEC_UNDERWATER_MARINE_CAVE) - gRegionMap->playerIsInCave = TRUE; + if (sRegionMap->mapSecId == MAPSEC_UNDERWATER_SEAFLOOR_CAVERN || sRegionMap->mapSecId == MAPSEC_UNDERWATER_MARINE_CAVE) + sRegionMap->playerIsInCave = TRUE; break; case MAP_TYPE_UNDERGROUND: case MAP_TYPE_UNKNOWN: if (gMapHeader.allowEscaping) { mapHeader = Overworld_GetMapHeaderByGroupAndId(gSaveBlock1Ptr->escapeWarp.mapGroup, gSaveBlock1Ptr->escapeWarp.mapNum); - gRegionMap->mapSecId = mapHeader->regionMapSectionId; - gRegionMap->playerIsInCave = TRUE; + sRegionMap->mapSecId = mapHeader->regionMapSectionId; + sRegionMap->playerIsInCave = TRUE; mapWidth = mapHeader->mapLayout->width; mapHeight = mapHeader->mapLayout->height; x = gSaveBlock1Ptr->escapeWarp.x; @@ -1019,8 +1019,8 @@ static void InitMapBasedOnPlayerLocation(void) } else { - gRegionMap->mapSecId = gMapHeader.regionMapSectionId; - gRegionMap->playerIsInCave = TRUE; + sRegionMap->mapSecId = gMapHeader.regionMapSectionId; + sRegionMap->playerIsInCave = TRUE; mapWidth = 1; mapHeight = 1; x = 1; @@ -1029,16 +1029,16 @@ static void InitMapBasedOnPlayerLocation(void) break; case MAP_TYPE_SECRET_BASE: mapHeader = Overworld_GetMapHeaderByGroupAndId((u16)gSaveBlock1Ptr->dynamicWarp.mapGroup, (u16)gSaveBlock1Ptr->dynamicWarp.mapNum); - gRegionMap->mapSecId = mapHeader->regionMapSectionId; - gRegionMap->playerIsInCave = TRUE; + sRegionMap->mapSecId = mapHeader->regionMapSectionId; + sRegionMap->playerIsInCave = TRUE; mapWidth = mapHeader->mapLayout->width; mapHeight = mapHeader->mapLayout->height; x = gSaveBlock1Ptr->dynamicWarp.x; y = gSaveBlock1Ptr->dynamicWarp.y; break; case MAP_TYPE_INDOOR: - gRegionMap->mapSecId = gMapHeader.regionMapSectionId; - if (gRegionMap->mapSecId != MAPSEC_DYNAMIC) + sRegionMap->mapSecId = gMapHeader.regionMapSectionId; + if (sRegionMap->mapSecId != MAPSEC_DYNAMIC) { warp = &gSaveBlock1Ptr->escapeWarp; mapHeader = Overworld_GetMapHeaderByGroupAndId(warp->mapGroup, warp->mapNum); @@ -1047,13 +1047,13 @@ static void InitMapBasedOnPlayerLocation(void) { warp = &gSaveBlock1Ptr->dynamicWarp; mapHeader = Overworld_GetMapHeaderByGroupAndId(warp->mapGroup, warp->mapNum); - gRegionMap->mapSecId = mapHeader->regionMapSectionId; + sRegionMap->mapSecId = mapHeader->regionMapSectionId; } - if (IsPlayerInAquaHideout(gRegionMap->mapSecId)) - gRegionMap->playerIsInCave = TRUE; + if (IsPlayerInAquaHideout(sRegionMap->mapSecId)) + sRegionMap->playerIsInCave = TRUE; else - gRegionMap->playerIsInCave = FALSE; + sRegionMap->playerIsInCave = FALSE; mapWidth = mapHeader->mapLayout->width; mapHeight = mapHeader->mapLayout->height; @@ -1064,29 +1064,29 @@ static void InitMapBasedOnPlayerLocation(void) xOnMap = x; - dimensionScale = mapWidth / gRegionMapEntries[gRegionMap->mapSecId].width; + dimensionScale = mapWidth / gRegionMapEntries[sRegionMap->mapSecId].width; if (dimensionScale == 0) { dimensionScale = 1; } x /= dimensionScale; - if (x >= gRegionMapEntries[gRegionMap->mapSecId].width) + if (x >= gRegionMapEntries[sRegionMap->mapSecId].width) { - x = gRegionMapEntries[gRegionMap->mapSecId].width - 1; + x = gRegionMapEntries[sRegionMap->mapSecId].width - 1; } - dimensionScale = mapHeight / gRegionMapEntries[gRegionMap->mapSecId].height; + dimensionScale = mapHeight / gRegionMapEntries[sRegionMap->mapSecId].height; if (dimensionScale == 0) { dimensionScale = 1; } y /= dimensionScale; - if (y >= gRegionMapEntries[gRegionMap->mapSecId].height) + if (y >= gRegionMapEntries[sRegionMap->mapSecId].height) { - y = gRegionMapEntries[gRegionMap->mapSecId].height - 1; + y = gRegionMapEntries[sRegionMap->mapSecId].height - 1; } - switch (gRegionMap->mapSecId) + switch (sRegionMap->mapSecId) { case MAPSEC_ROUTE_114: if (y != 0) @@ -1116,11 +1116,11 @@ static void InitMapBasedOnPlayerLocation(void) x++; break; case MAPSEC_UNDERWATER_MARINE_CAVE: - GetMarineCaveCoords(&gRegionMap->cursorPosX, &gRegionMap->cursorPosY); + GetMarineCaveCoords(&sRegionMap->cursorPosX, &sRegionMap->cursorPosY); return; } - gRegionMap->cursorPosX = gRegionMapEntries[gRegionMap->mapSecId].x + x + MAPCURSOR_X_MIN; - gRegionMap->cursorPosY = gRegionMapEntries[gRegionMap->mapSecId].y + y + MAPCURSOR_Y_MIN; + sRegionMap->cursorPosX = gRegionMapEntries[sRegionMap->mapSecId].x + x + MAPCURSOR_X_MIN; + sRegionMap->cursorPosY = gRegionMapEntries[sRegionMap->mapSecId].y + y + MAPCURSOR_Y_MIN; } static void RegionMap_InitializeStateBasedOnSSTidalLocation(void) @@ -1139,40 +1139,40 @@ static void RegionMap_InitializeStateBasedOnSSTidalLocation(void) switch (GetSSTidalLocation(&mapGroup, &mapNum, &xOnMap, &yOnMap)) { case SS_TIDAL_LOCATION_SLATEPORT: - gRegionMap->mapSecId = MAPSEC_SLATEPORT_CITY; + sRegionMap->mapSecId = MAPSEC_SLATEPORT_CITY; break; case SS_TIDAL_LOCATION_LILYCOVE: - gRegionMap->mapSecId = MAPSEC_LILYCOVE_CITY; + sRegionMap->mapSecId = MAPSEC_LILYCOVE_CITY; break; case SS_TIDAL_LOCATION_ROUTE124: - gRegionMap->mapSecId = MAPSEC_ROUTE_124; + sRegionMap->mapSecId = MAPSEC_ROUTE_124; break; case SS_TIDAL_LOCATION_ROUTE131: - gRegionMap->mapSecId = MAPSEC_ROUTE_131; + sRegionMap->mapSecId = MAPSEC_ROUTE_131; break; default: case SS_TIDAL_LOCATION_CURRENTS: mapHeader = Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum); - gRegionMap->mapSecId = mapHeader->regionMapSectionId; - dimensionScale = mapHeader->mapLayout->width / gRegionMapEntries[gRegionMap->mapSecId].width; + sRegionMap->mapSecId = mapHeader->regionMapSectionId; + dimensionScale = mapHeader->mapLayout->width / gRegionMapEntries[sRegionMap->mapSecId].width; if (dimensionScale == 0) dimensionScale = 1; x = xOnMap / dimensionScale; - if (x >= gRegionMapEntries[gRegionMap->mapSecId].width) - x = gRegionMapEntries[gRegionMap->mapSecId].width - 1; + if (x >= gRegionMapEntries[sRegionMap->mapSecId].width) + x = gRegionMapEntries[sRegionMap->mapSecId].width - 1; - dimensionScale = mapHeader->mapLayout->height / gRegionMapEntries[gRegionMap->mapSecId].height; + dimensionScale = mapHeader->mapLayout->height / gRegionMapEntries[sRegionMap->mapSecId].height; if (dimensionScale == 0) dimensionScale = 1; y = yOnMap / dimensionScale; - if (y >= gRegionMapEntries[gRegionMap->mapSecId].height) - y = gRegionMapEntries[gRegionMap->mapSecId].height - 1; + if (y >= gRegionMapEntries[sRegionMap->mapSecId].height) + y = gRegionMapEntries[sRegionMap->mapSecId].height - 1; break; } - gRegionMap->playerIsInCave = FALSE; - gRegionMap->cursorPosX = gRegionMapEntries[gRegionMap->mapSecId].x + x + MAPCURSOR_X_MIN; - gRegionMap->cursorPosY = gRegionMapEntries[gRegionMap->mapSecId].y + y + MAPCURSOR_Y_MIN; + sRegionMap->playerIsInCave = FALSE; + sRegionMap->cursorPosX = gRegionMapEntries[sRegionMap->mapSecId].x + x + MAPCURSOR_X_MIN; + sRegionMap->cursorPosY = gRegionMapEntries[sRegionMap->mapSecId].y + y + MAPCURSOR_Y_MIN; } static u8 GetMapsecType(u16 mapSecId) @@ -1300,20 +1300,20 @@ static void GetPositionOfCursorWithinMapSec(void) u16 y; u16 posWithinMapSec; - if (gRegionMap->mapSecId == MAPSEC_NONE) + if (sRegionMap->mapSecId == MAPSEC_NONE) { - gRegionMap->posWithinMapSec = 0; + sRegionMap->posWithinMapSec = 0; return; } - if (!gRegionMap->zoomed) + if (!sRegionMap->zoomed) { - x = gRegionMap->cursorPosX; - y = gRegionMap->cursorPosY; + x = sRegionMap->cursorPosX; + y = sRegionMap->cursorPosY; } else { - x = gRegionMap->zoomedCursorPosX; - y = gRegionMap->zoomedCursorPosY; + x = sRegionMap->zoomedCursorPosX; + y = sRegionMap->zoomedCursorPosY; } posWithinMapSec = 0; while (1) @@ -1333,13 +1333,13 @@ static void GetPositionOfCursorWithinMapSec(void) else { x--; - if (GetMapSecIdAt(x, y) == gRegionMap->mapSecId) + if (GetMapSecIdAt(x, y) == sRegionMap->mapSecId) { posWithinMapSec++; } } } - gRegionMap->posWithinMapSec = posWithinMapSec; + sRegionMap->posWithinMapSec = posWithinMapSec; } static bool8 RegionMap_IsMapSecIdInNextRow(u16 y) @@ -1352,7 +1352,7 @@ static bool8 RegionMap_IsMapSecIdInNextRow(u16 y) } for (x = MAPCURSOR_X_MIN; x <= MAPCURSOR_X_MAX; x++) { - if (GetMapSecIdAt(x, y) == gRegionMap->mapSecId) + if (GetMapSecIdAt(x, y) == sRegionMap->mapSecId) { return TRUE; } @@ -1362,11 +1362,11 @@ static bool8 RegionMap_IsMapSecIdInNextRow(u16 y) static void SpriteCB_CursorMapFull(struct Sprite *sprite) { - if (gRegionMap->cursorMovementFrameCounter != 0) + if (sRegionMap->cursorMovementFrameCounter != 0) { - sprite->x += 2 * gRegionMap->cursorDeltaX; - sprite->y += 2 * gRegionMap->cursorDeltaY; - gRegionMap->cursorMovementFrameCounter--; + sprite->x += 2 * sRegionMap->cursorDeltaX; + sprite->y += 2 * sRegionMap->cursorDeltaY; + sRegionMap->cursorMovementFrameCounter--; } } @@ -1386,20 +1386,20 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag) template = sRegionMapCursorSpriteTemplate; sheet.tag = tileTag; template.tileTag = tileTag; - gRegionMap->cursorTileTag = tileTag; + sRegionMap->cursorTileTag = tileTag; palette.tag = paletteTag; template.paletteTag = paletteTag; - gRegionMap->cursorPaletteTag = paletteTag; - if (!gRegionMap->zoomed) + sRegionMap->cursorPaletteTag = paletteTag; + if (!sRegionMap->zoomed) { - sheet.data = gRegionMap->cursorSmallImage; - sheet.size = sizeof(gRegionMap->cursorSmallImage); + sheet.data = sRegionMap->cursorSmallImage; + sheet.size = sizeof(sRegionMap->cursorSmallImage); template.callback = SpriteCB_CursorMapFull; } else { - sheet.data = gRegionMap->cursorLargeImage; - sheet.size = sizeof(gRegionMap->cursorLargeImage); + sheet.data = sRegionMap->cursorLargeImage; + sheet.size = sizeof(sRegionMap->cursorLargeImage); template.callback = SpriteCB_CursorMapZoomed; } LoadSpriteSheet(&sheet); @@ -1407,46 +1407,46 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag) spriteId = CreateSprite(&template, 0x38, 0x48, 0); if (spriteId != MAX_SPRITES) { - gRegionMap->cursorSprite = &gSprites[spriteId]; - if (gRegionMap->zoomed == TRUE) + sRegionMap->cursorSprite = &gSprites[spriteId]; + if (sRegionMap->zoomed == TRUE) { - gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(32x32); - gRegionMap->cursorSprite->x -= 8; - gRegionMap->cursorSprite->y -= 8; - StartSpriteAnim(gRegionMap->cursorSprite, 1); + sRegionMap->cursorSprite->oam.size = SPRITE_SIZE(32x32); + sRegionMap->cursorSprite->x -= 8; + sRegionMap->cursorSprite->y -= 8; + StartSpriteAnim(sRegionMap->cursorSprite, 1); } else { - gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(16x16); - gRegionMap->cursorSprite->x = 8 * gRegionMap->cursorPosX + 4; - gRegionMap->cursorSprite->y = 8 * gRegionMap->cursorPosY + 4; + sRegionMap->cursorSprite->oam.size = SPRITE_SIZE(16x16); + sRegionMap->cursorSprite->x = 8 * sRegionMap->cursorPosX + 4; + sRegionMap->cursorSprite->y = 8 * sRegionMap->cursorPosY + 4; } - gRegionMap->cursorSprite->data[1] = 2; - gRegionMap->cursorSprite->data[2] = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101; - gRegionMap->cursorSprite->data[3] = TRUE; + sRegionMap->cursorSprite->data[1] = 2; + sRegionMap->cursorSprite->data[2] = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101; + sRegionMap->cursorSprite->data[3] = TRUE; } } static void FreeRegionMapCursorSprite(void) { - if (gRegionMap->cursorSprite != NULL) + if (sRegionMap->cursorSprite != NULL) { - DestroySprite(gRegionMap->cursorSprite); - FreeSpriteTilesByTag(gRegionMap->cursorTileTag); - FreeSpritePaletteByTag(gRegionMap->cursorPaletteTag); + DestroySprite(sRegionMap->cursorSprite); + FreeSpriteTilesByTag(sRegionMap->cursorTileTag); + FreeSpritePaletteByTag(sRegionMap->cursorPaletteTag); } } // Unused static void SetUnkCursorSpriteData(void) { - gRegionMap->cursorSprite->data[3] = TRUE; + sRegionMap->cursorSprite->data[3] = TRUE; } // Unused static void ClearUnkCursorSpriteData(void) { - gRegionMap->cursorSprite->data[3] = FALSE; + sRegionMap->cursorSprite->data[3] = FALSE; } void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag) @@ -1458,7 +1458,7 @@ void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag) if (IsEventIslandMapSecId(gMapHeader.regionMapSectionId)) { - gRegionMap->playerIconSprite = NULL; + sRegionMap->playerIconSprite = NULL; return; } if (gSaveBlock2Ptr->playerGender == FEMALE) @@ -1469,49 +1469,49 @@ void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag) LoadSpriteSheet(&sheet); LoadSpritePalette(&palette); spriteId = CreateSprite(&template, 0, 0, 1); - gRegionMap->playerIconSprite = &gSprites[spriteId]; - if (!gRegionMap->zoomed) + sRegionMap->playerIconSprite = &gSprites[spriteId]; + if (!sRegionMap->zoomed) { - gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4; - gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4; - gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; + sRegionMap->playerIconSprite->x = sRegionMap->playerIconSpritePosX * 8 + 4; + sRegionMap->playerIconSprite->y = sRegionMap->playerIconSpritePosY * 8 + 4; + sRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; } else { - gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30; - gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42; - gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; + sRegionMap->playerIconSprite->x = sRegionMap->playerIconSpritePosX * 16 - 0x30; + sRegionMap->playerIconSprite->y = sRegionMap->playerIconSpritePosY * 16 - 0x42; + sRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; } } static void HideRegionMapPlayerIcon(void) { - if (gRegionMap->playerIconSprite != NULL) + if (sRegionMap->playerIconSprite != NULL) { - gRegionMap->playerIconSprite->invisible = TRUE; - gRegionMap->playerIconSprite->callback = SpriteCallbackDummy; + sRegionMap->playerIconSprite->invisible = TRUE; + sRegionMap->playerIconSprite->callback = SpriteCallbackDummy; } } static void UnhideRegionMapPlayerIcon(void) { - if (gRegionMap->playerIconSprite != NULL) + if (sRegionMap->playerIconSprite != NULL) { - if (gRegionMap->zoomed == TRUE) + if (sRegionMap->zoomed == TRUE) { - gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30; - gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42; - gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; - gRegionMap->playerIconSprite->invisible = FALSE; + sRegionMap->playerIconSprite->x = sRegionMap->playerIconSpritePosX * 16 - 0x30; + sRegionMap->playerIconSprite->y = sRegionMap->playerIconSpritePosY * 16 - 0x42; + sRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed; + sRegionMap->playerIconSprite->invisible = FALSE; } else { - gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4; - gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4; - gRegionMap->playerIconSprite->x2 = 0; - gRegionMap->playerIconSprite->y2 = 0; - gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; - gRegionMap->playerIconSprite->invisible = FALSE; + sRegionMap->playerIconSprite->x = sRegionMap->playerIconSpritePosX * 8 + 4; + sRegionMap->playerIconSprite->y = sRegionMap->playerIconSpritePosY * 8 + 4; + sRegionMap->playerIconSprite->x2 = 0; + sRegionMap->playerIconSprite->y2 = 0; + sRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull; + sRegionMap->playerIconSprite->invisible = FALSE; } } } @@ -1523,8 +1523,8 @@ static void UnhideRegionMapPlayerIcon(void) static void SpriteCB_PlayerIconMapZoomed(struct Sprite *sprite) { - sprite->x2 = -2 * gRegionMap->scrollX; - sprite->y2 = -2 * gRegionMap->scrollY; + sprite->x2 = -2 * sRegionMap->scrollX; + sprite->y2 = -2 * sRegionMap->scrollY; sprite->sY = sprite->y + sprite->y2 + sprite->centerToCornerVecY; sprite->sX = sprite->x + sprite->x2 + sprite->centerToCornerVecX; if (sprite->sY < -8 || sprite->sY > DISPLAY_HEIGHT + 8 || sprite->sX < -8 || sprite->sX > DISPLAY_WIDTH + 8) @@ -1545,7 +1545,7 @@ static void SpriteCB_PlayerIconMapFull(struct Sprite *sprite) static void SpriteCB_PlayerIcon(struct Sprite *sprite) { - if (gRegionMap->blinkPlayerIcon) + if (sRegionMap->blinkPlayerIcon) { if (++sprite->sTimer > 16) { @@ -1561,8 +1561,8 @@ static void SpriteCB_PlayerIcon(struct Sprite *sprite) void TrySetPlayerIconBlink(void) { - if (gRegionMap->playerIsInCave) - gRegionMap->blinkPlayerIcon = TRUE; + if (sRegionMap->playerIsInCave) + sRegionMap->blinkPlayerIcon = TRUE; } #undef sY @@ -1634,7 +1634,7 @@ static void GetMapSecDimensions(u16 mapSecId, u16 *x, u16 *y, u16 *width, u16 *h bool8 IsRegionMapZoomed(void) { - return gRegionMap->zoomed; + return sRegionMap->zoomed; } bool32 IsEventIslandMapSecId(u8 mapSecId) diff --git a/src/rotating_gate.c b/src/rotating_gate.c index f839d22c30e1..e2fd575a1837 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -612,12 +612,10 @@ static const u8 sRotatingGate_ArmLayout[][4 * 2] = }, }; -// ewram -static EWRAM_DATA u8 gRotatingGate_GateSpriteIds[ROTATING_GATE_PUZZLE_MAX] = {0}; -static EWRAM_DATA const struct RotatingGatePuzzle *gRotatingGate_PuzzleConfig = NULL; -static EWRAM_DATA u8 gRotatingGate_PuzzleCount = 0; +static EWRAM_DATA u8 sRotatingGate_GateSpriteIds[ROTATING_GATE_PUZZLE_MAX] = {0}; +static EWRAM_DATA const struct RotatingGatePuzzle *sRotatingGate_PuzzleConfig = NULL; +static EWRAM_DATA u8 sRotatingGate_PuzzleCount = 0; -// text static s32 GetCurrentMapRotatingGatePuzzleType(void) { if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(FORTREE_CITY_GYM) && @@ -640,9 +638,9 @@ static void RotatingGate_ResetAllGateOrientations(void) s32 i; u8 *ptr = (u8 *)GetVarPointer(VAR_TEMP_0); - for (i = 0; i < gRotatingGate_PuzzleCount; i++) + for (i = 0; i < sRotatingGate_PuzzleCount; i++) { - ptr[i] = gRotatingGate_PuzzleConfig[i].orientation; + ptr[i] = sRotatingGate_PuzzleConfig[i].orientation; } } @@ -683,12 +681,12 @@ static void RotatingGate_LoadPuzzleConfig(void) switch (puzzleType) { case PUZZLE_FORTREE_CITY_GYM: - gRotatingGate_PuzzleConfig = sRotatingGate_FortreePuzzleConfig; - gRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_FortreePuzzleConfig); + sRotatingGate_PuzzleConfig = sRotatingGate_FortreePuzzleConfig; + sRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_FortreePuzzleConfig); break; case PUZZLE_ROUTE110_TRICK_HOUSE_PUZZLE6: - gRotatingGate_PuzzleConfig = sRotatingGate_TrickHousePuzzleConfig; - gRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_TrickHousePuzzleConfig); + sRotatingGate_PuzzleConfig = sRotatingGate_TrickHousePuzzleConfig; + sRotatingGate_PuzzleCount = ARRAY_COUNT(sRotatingGate_TrickHousePuzzleConfig); break; case PUZZLE_NONE: default: @@ -696,7 +694,7 @@ static void RotatingGate_LoadPuzzleConfig(void) } for (i = 0; i < ROTATING_GATE_PUZZLE_MAX - 1; i++) - gRotatingGate_GateSpriteIds[i] = MAX_SPRITES; + sRotatingGate_GateSpriteIds[i] = MAX_SPRITES; } static void RotatingGate_CreateGatesWithinViewport(s16 deltaX, s16 deltaY) @@ -710,15 +708,15 @@ static void RotatingGate_CreateGatesWithinViewport(s16 deltaX, s16 deltaY) s16 y = gSaveBlock1Ptr->pos.y - 2; s16 y2 = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H; - for (i = 0; i < gRotatingGate_PuzzleCount; i++) + for (i = 0; i < sRotatingGate_PuzzleCount; i++) { - s16 x3 = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; - s16 y3 = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; + s16 x3 = sRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 y3 = sRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (y <= y3 && y2 >= y3 && x <= x3 && x2 >= x3 && - gRotatingGate_GateSpriteIds[i] == MAX_SPRITES) + sRotatingGate_GateSpriteIds[i] == MAX_SPRITES) { - gRotatingGate_GateSpriteIds[i] = RotatingGate_CreateGate(i, deltaX, deltaY); + sRotatingGate_GateSpriteIds[i] = RotatingGate_CreateGate(i, deltaX, deltaY); } } } @@ -730,7 +728,7 @@ static u8 RotatingGate_CreateGate(u8 gateId, s16 deltaX, s16 deltaY) u8 spriteId; s16 x, y; - const struct RotatingGatePuzzle *gate = &gRotatingGate_PuzzleConfig[gateId]; + const struct RotatingGatePuzzle *gate = &sRotatingGate_PuzzleConfig[gateId]; if (gate->shape == GATE_SHAPE_L1 || gate->shape == GATE_SHAPE_T1) template = sSpriteTemplate_RotatingGateRegular; @@ -827,20 +825,20 @@ static void RotatingGate_DestroyGatesOutsideViewport(void) s16 y = gSaveBlock1Ptr->pos.y - 2; s16 y2 = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H; - for (i = 0; i < gRotatingGate_PuzzleCount; i++) + for (i = 0; i < sRotatingGate_PuzzleCount; i++) { - s16 xGate = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; - s16 yGate = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; + s16 xGate = sRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 yGate = sRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; - if (gRotatingGate_GateSpriteIds[i] == MAX_SPRITES) + if (sRotatingGate_GateSpriteIds[i] == MAX_SPRITES) continue; if (xGate < x || xGate > x2 || yGate < y || yGate > y2) { - struct Sprite *sprite = &gSprites[gRotatingGate_GateSpriteIds[i]]; + struct Sprite *sprite = &gSprites[sRotatingGate_GateSpriteIds[i]]; FreeSpriteOamMatrix(sprite); DestroySprite(sprite); - gRotatingGate_GateSpriteIds[i] = MAX_SPRITES; + sRotatingGate_GateSpriteIds[i] = MAX_SPRITES; } } } @@ -862,9 +860,9 @@ static s32 RotatingGate_CanRotate(u8 gateId, s32 rotationDirection) orientation = RotatingGate_GetGateOrientation(gateId); - shape = gRotatingGate_PuzzleConfig[gateId].shape; - x = gRotatingGate_PuzzleConfig[gateId].x + MAP_OFFSET; - y = gRotatingGate_PuzzleConfig[gateId].y + MAP_OFFSET; + shape = sRotatingGate_PuzzleConfig[gateId].shape; + x = sRotatingGate_PuzzleConfig[gateId].x + MAP_OFFSET; + y = sRotatingGate_PuzzleConfig[gateId].y + MAP_OFFSET; // Loop through the gate's "arms" clockwise (north, south, east, west) for (i = GATE_ARM_NORTH; i <= GATE_ARM_WEST; i++) @@ -891,15 +889,15 @@ static s32 RotatingGate_HasArm(u8 gateId, u8 armInfo) s32 isLongArm = armInfo % 2; s8 armOrientation = (arm - RotatingGate_GetGateOrientation(gateId) + 4) % 4; - s32 shape = gRotatingGate_PuzzleConfig[gateId].shape; + s32 shape = sRotatingGate_PuzzleConfig[gateId].shape; return sRotatingGate_ArmLayout[shape][armOrientation * 2 + isLongArm]; } static void RotatingGate_TriggerRotationAnimation(u8 gateId, s32 rotationDirection) { - if (gRotatingGate_GateSpriteIds[gateId] != MAX_SPRITES) + if (sRotatingGate_GateSpriteIds[gateId] != MAX_SPRITES) { - struct Sprite *sprite = &gSprites[gRotatingGate_GateSpriteIds[gateId]]; + struct Sprite *sprite = &gSprites[sRotatingGate_GateSpriteIds[gateId]]; sprite->data[1] = rotationDirection; sprite->data[2] = RotatingGate_GetGateOrientation(gateId); } @@ -957,10 +955,10 @@ bool8 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y) if (!GetCurrentMapRotatingGatePuzzleType()) return FALSE; - for (i = 0; i < gRotatingGate_PuzzleCount; i++) + for (i = 0; i < sRotatingGate_PuzzleCount; i++) { - s16 gateX = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; - s16 gateY = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; + s16 gateX = sRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 gateY = sRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (gateX - 2 <= x && x <= gateX + 1 && gateY - 2 <= y && y <= gateY + 1) { @@ -995,10 +993,10 @@ bool8 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8 direction, s16 x, s if (!GetCurrentMapRotatingGatePuzzleType()) return FALSE; - for (i = 0; i < gRotatingGate_PuzzleCount; i++) + for (i = 0; i < sRotatingGate_PuzzleCount; i++) { - s16 gateX = gRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; - s16 gateY = gRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; + s16 gateX = sRotatingGate_PuzzleConfig[i].x + MAP_OFFSET; + s16 gateY = sRotatingGate_PuzzleConfig[i].y + MAP_OFFSET; if (gateX - 2 <= x && x <= gateX + 1 && gateY - 2 <= y && y <= gateY + 1) { diff --git a/src/script_movement.c b/src/script_movement.c index 92f36e92d946..10517dfc8e58 100644 --- a/src/script_movement.c +++ b/src/script_movement.c @@ -6,7 +6,6 @@ #include "constants/event_objects.h" #include "constants/event_object_movement.h" -// static functions static void ScriptMovement_StartMoveObjects(u8 priority); static u8 GetMoveObjectsTaskId(void); static bool8 ScriptMovement_TryAddNewMovement(u8 taskId, u8 objEventId, const u8 *movementScript); @@ -17,10 +16,8 @@ static void ScriptMovement_UnfreezeActiveObjects(u8 taskId); static void ScriptMovement_MoveObjects(u8 taskId); static void ScriptMovement_TakeStep(u8 taskId, u8 moveScrId, u8 objEventId, const u8 *movementScript); -// EWRAM_DATA -static EWRAM_DATA const u8 *gMovementScripts[OBJECT_EVENTS_COUNT] = {0}; +static EWRAM_DATA const u8 *sMovementScripts[OBJECT_EVENTS_COUNT] = {0}; -// text bool8 ScriptMovement_StartObjectMovementScript(u8 localId, u8 mapNum, u8 mapGroup, const u8 *movementScript) { u8 objEventId; @@ -167,12 +164,12 @@ static bool8 IsMovementScriptFinished(u8 taskId, u8 moveScrId) static void SetMovementScript(u8 moveScrId, const u8 *movementScript) { - gMovementScripts[moveScrId] = movementScript; + sMovementScripts[moveScrId] = movementScript; } static const u8 *GetMovementScript(u8 moveScrId) { - return gMovementScripts[moveScrId]; + return sMovementScripts[moveScrId]; } static void ScriptMovement_AddNewMovement(u8 taskId, u8 moveScrId, u8 objEventId, const u8 *movementScript) diff --git a/src/tileset_anims.c b/src/tileset_anims.c index 3676006a6ac2..6a7589e36fc3 100644 --- a/src/tileset_anims.c +++ b/src/tileset_anims.c @@ -537,7 +537,7 @@ const u16 *const gTilesetAnims_BattlePyramid_StatueShadow[] = { gTilesetAnims_BattlePyramid_StatueShadow_Frame2 }; -static const u16 *const gTilesetAnims_BattleDomeFloorLightPals[] = { +static const u16 *const sTilesetAnims_BattleDomeFloorLightPals[] = { gTilesetAnims_BattleDomePals0_0, gTilesetAnims_BattleDomePals0_1, gTilesetAnims_BattleDomePals0_2, @@ -1167,7 +1167,7 @@ static void QueueAnimTiles_BattlePyramid_StatueShadow(u16 timer) static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) { - CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(gTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); + CpuCopy16(sTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(sTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) != TASK_NONE) { @@ -1178,7 +1178,7 @@ static void BlendAnimPalette_BattleDome_FloorLights(u16 timer) static void BlendAnimPalette_BattleDome_FloorLightsNoBlend(u16 timer) { - CpuCopy16(gTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(gTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); + CpuCopy16(sTilesetAnims_BattleDomeFloorLightPals[timer % ARRAY_COUNT(sTilesetAnims_BattleDomeFloorLightPals)], &gPlttBufferUnfaded[0x80], 32); if ((u8)FindTaskIdByFunc(Task_BattleTransition_Intro) == TASK_NONE) { BlendPalette(0x80, 16, gPaletteFade.y, gPaletteFade.blendColor & 0x7FFF); diff --git a/src/trade.c b/src/trade.c index dd0851bbda0d..f95b479fe570 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2195,7 +2195,7 @@ static bool8 LoadTradeMenuSpriteSheetsAndPalettes(void) sTradeMenuData->timer++; break; case GFXTAG_MENU_TEXT_COUNT: - LoadSpritePalette(&gSpritePalette_TradeScreenText); + LoadSpritePalette(&sSpritePalette_TradeScreenText); sTradeMenuData->timer++; break; case GFXTAG_MENU_TEXT_COUNT + 1: diff --git a/src/tv.c b/src/tv.c index b9d064026ccd..5cca91ff7b91 100644 --- a/src/tv.c +++ b/src/tv.c @@ -723,7 +723,7 @@ static const u8 *const sTVInSearchOfTrainersTextGroup[] = { // Secret Base Secrets TV Show states for actions that can be taken in a secret base // The flags that determine whether or not the action was taken are commented -const u8 sTVSecretBaseSecretsActions[NUM_SECRET_BASE_FLAGS] = +static const u8 sTVSecretBaseSecretsActions[NUM_SECRET_BASE_FLAGS] = { SBSECRETS_STATE_USED_CHAIR, // SECRET_BASE_USED_CHAIR SBSECRETS_STATE_USED_BALLOON, // SECRET_BASE_USED_BALLOON From 67d73ee36fc1cec15088f1ed7c04ea317449888c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 17 May 2022 17:13:29 -0400 Subject: [PATCH 575/762] Clean up door animation functions --- src/field_camera.c | 4 +-- src/field_door.c | 66 ++++++++++++++++++++++++++++------------------ 2 files changed, 43 insertions(+), 27 deletions(-) diff --git a/src/field_camera.c b/src/field_camera.c index 0a00dcbee9d2..ae7b2bbb1601 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -212,13 +212,13 @@ void CurrentMapDrawMetatileAt(int x, int y) } } -void DrawDoorMetatileAt(int x, int y, u16 *arr) +void DrawDoorMetatileAt(int x, int y, u16 *tiles) { int offset = MapPosToBgTilemapOffset(&sFieldCameraOffset, x, y); if (offset >= 0) { - DrawMetatile(METATILE_LAYER_TYPE_COVERED, arr, offset); + DrawMetatile(METATILE_LAYER_TYPE_COVERED, tiles, offset); sFieldCameraOffset.copyBGToVRAM = TRUE; } } diff --git a/src/field_door.c b/src/field_door.c index 988ea615d0ca..fa813a0533d7 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -18,7 +18,7 @@ struct DoorGraphics u8 sound; u8 size; const void *tiles; - const void *palette; + const void *palettes; }; struct DoorAnimFrame @@ -278,52 +278,68 @@ static const struct DoorGraphics sDoorAnimGraphicsTable[] = {}, }; +#define DOOR_TILE_START_SIZE1 (NUM_TILES_TOTAL - 8) +#define DOOR_TILE_START_SIZE2 (NUM_TILES_TOTAL - 16) + static void CopyDoorTilesToVram(const struct DoorGraphics *gfx, const struct DoorAnimFrame *frame) { if (gfx->size == 2) - CpuFastSet(gfx->tiles + frame->offset, (void *)(VRAM + 0x7E00), 0x80); + CpuFastCopy(gfx->tiles + frame->offset, (void *)(VRAM + TILE_OFFSET_4BPP(DOOR_TILE_START_SIZE2)), 16 * TILE_SIZE_4BPP); else - CpuFastSet(gfx->tiles + frame->offset, (void *)(VRAM + 0x7F00), 0x40); + CpuFastCopy(gfx->tiles + frame->offset, (void *)(VRAM + TILE_OFFSET_4BPP(DOOR_TILE_START_SIZE1)), 8 * TILE_SIZE_4BPP); } -static void door_build_blockdef(u16 *a, u16 b, const u8 *c) +static void BuildDoorTiles(u16 *tiles, u16 tileNum, const u8 *paletteNums) { int i; - u16 unk; + u16 tile; + // Only the first 4 tiles of each metatile (bottom layer) actually use the door tiles for (i = 0; i < 4; i++) { - unk = *(c++) << 12; - a[i] = unk | (b + i); + tile = *(paletteNums++) << 12; + tiles[i] = tile | (tileNum + i); } + + // The remaining layers are left as tile 0 (with the same palette) for (; i < 8; i++) { - unk = *(c++) << 12; - a[i] = unk; + tile = *(paletteNums++) << 12; + tiles[i] = tile; } } -static void DrawCurrentDoorAnimFrame(const struct DoorGraphics *gfx, u32 x, u32 y, const u8 *pal) +static void DrawCurrentDoorAnimFrame(const struct DoorGraphics *gfx, u32 x, u32 y, const u8 *paletteNums) { - u16 arr[24]; + u16 tiles[24]; if (gfx->size == 2) { - door_build_blockdef(&arr[8], 0x3F0, pal); - DrawDoorMetatileAt(x, y - 1, &arr[8]); - door_build_blockdef(&arr[8], 0x3F4, pal + 4); - DrawDoorMetatileAt(x, y, &arr[8]); - door_build_blockdef(&arr[8], 0x3F8, pal); - DrawDoorMetatileAt(x + 1, y - 1, &arr[8]); - door_build_blockdef(&arr[8], 0x3FC, pal + 4); - DrawDoorMetatileAt(x + 1, y, &arr[8]); + // Top left metatile + BuildDoorTiles(&tiles[8], DOOR_TILE_START_SIZE2 + 0, &paletteNums[0]); + DrawDoorMetatileAt(x, y - 1, &tiles[8]); + + // Bottom left metatile + BuildDoorTiles(&tiles[8], DOOR_TILE_START_SIZE2 + 4, &paletteNums[4]); + DrawDoorMetatileAt(x, y, &tiles[8]); + + // Top right metatile + BuildDoorTiles(&tiles[8], DOOR_TILE_START_SIZE2 + 8, &paletteNums[0]); + DrawDoorMetatileAt(x + 1, y - 1, &tiles[8]); + + // Bottom right metatile + BuildDoorTiles(&tiles[8], DOOR_TILE_START_SIZE2 + 12, &paletteNums[4]); + DrawDoorMetatileAt(x + 1, y, &tiles[8]); } else { - door_build_blockdef(&arr[0], 0x3F8, pal); - DrawDoorMetatileAt(x, y - 1, &arr[0]); - door_build_blockdef(&arr[0], 0x3FC, pal + 4); - DrawDoorMetatileAt(x, y, &arr[0]); + // Top metatile + BuildDoorTiles(&tiles[0], DOOR_TILE_START_SIZE1 + 0, &paletteNums[0]); + DrawDoorMetatileAt(x, y - 1, &tiles[0]); + + // Bottom metatile + BuildDoorTiles(&tiles[0], DOOR_TILE_START_SIZE1 + 4, &paletteNums[4]); + DrawDoorMetatileAt(x, y, &tiles[0]); } } @@ -350,9 +366,9 @@ static void DrawDoor(const struct DoorGraphics *gfx, const struct DoorAnimFrame else { CopyDoorTilesToVram(gfx, frame); - DrawCurrentDoorAnimFrame(gfx, x, y, gfx->palette); + DrawCurrentDoorAnimFrame(gfx, x, y, gfx->palettes); if (ShouldUseMultiCorridorDoor()) - DrawCurrentDoorAnimFrame(gfx, gSpecialVar_0x8004 + MAP_OFFSET, gSpecialVar_0x8005 + MAP_OFFSET, gfx->palette); + DrawCurrentDoorAnimFrame(gfx, gSpecialVar_0x8004 + MAP_OFFSET, gSpecialVar_0x8005 + MAP_OFFSET, gfx->palettes); } } From 5c8e1e81ea1734e5ff61fccc780c3fdaedcd4812 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 17 May 2022 18:38:21 -0400 Subject: [PATCH 576/762] Color single-palette door anim graphics --- graphics/door_anims/abandoned_ship.png | Bin 420 -> 306 bytes graphics/door_anims/abandoned_ship_room.png | Bin 419 -> 305 bytes graphics/door_anims/battle_arena.png | Bin 509 -> 394 bytes graphics/door_anims/battle_arena_lobby.png | Bin 408 -> 293 bytes graphics/door_anims/battle_dome.png | Bin 394 -> 279 bytes graphics/door_anims/battle_dome_corridor.png | Bin 462 -> 347 bytes graphics/door_anims/battle_dome_lobby.png | Bin 486 -> 374 bytes graphics/door_anims/battle_factory.png | Bin 366 -> 251 bytes graphics/door_anims/battle_frontier.png | Bin 421 -> 306 bytes graphics/door_anims/battle_frontier_sliding.png | Bin 390 -> 277 bytes graphics/door_anims/battle_palace_lobby.png | Bin 432 -> 319 bytes graphics/door_anims/battle_tent.png | Bin 544 -> 429 bytes graphics/door_anims/battle_tent_interior.png | Bin 504 -> 389 bytes graphics/door_anims/battle_tower.png | Bin 467 -> 352 bytes graphics/door_anims/battle_tower_corridor.png | Bin 404 -> 0 bytes graphics/door_anims/battle_tower_elevator.png | Bin 398 -> 283 bytes .../door_anims/battle_tower_multi_corridor.png | Bin 554 -> 413 bytes graphics/door_anims/battle_tower_old.png | Bin 458 -> 343 bytes graphics/door_anims/birchs_lab.png | Bin 402 -> 287 bytes graphics/door_anims/cable_club.png | Bin 368 -> 253 bytes graphics/door_anims/contest.png | Bin 452 -> 337 bytes graphics/door_anims/cycling_road.png | Bin 441 -> 328 bytes graphics/door_anims/fallarbor_light_roof.png | Bin 432 -> 317 bytes graphics/door_anims/general.png | Bin 425 -> 310 bytes graphics/door_anims/gym.png | Bin 404 -> 289 bytes graphics/door_anims/lilycove.png | Bin 426 -> 311 bytes graphics/door_anims/lilycove_dept_store.png | Bin 430 -> 315 bytes graphics/door_anims/lilycove_wooden.png | Bin 401 -> 286 bytes graphics/door_anims/mauville.png | Bin 432 -> 317 bytes graphics/door_anims/mossdeep_space_center.png | Bin 509 -> 394 bytes graphics/door_anims/pacifidlog.png | Bin 452 -> 337 bytes graphics/door_anims/petalburg_gym.png | Bin 0 -> 289 bytes graphics/door_anims/poke_center.png | Bin 419 -> 304 bytes graphics/door_anims/pokemon_league.png | Bin 445 -> 332 bytes graphics/door_anims/rustboro_gray.png | Bin 440 -> 325 bytes graphics/door_anims/rustboro_tan.png | Bin 440 -> 325 bytes graphics/door_anims/safari_zone.png | Bin 458 -> 343 bytes graphics/door_anims/sootopolis.png | Bin 435 -> 322 bytes graphics/door_anims/sootopolis_peaked_roof.png | Bin 435 -> 322 bytes .../door_anims/trainer_hill_lobby_elevator.png | Bin 348 -> 231 bytes include/constants/metatile_labels.h | 2 +- spritesheet_rules.mk | 3 +++ src/field_door.c | 6 +++--- 43 files changed, 7 insertions(+), 4 deletions(-) delete mode 100644 graphics/door_anims/battle_tower_corridor.png create mode 100644 graphics/door_anims/petalburg_gym.png diff --git a/graphics/door_anims/abandoned_ship.png b/graphics/door_anims/abandoned_ship.png index e46aca9ba94b1b66552d49666d925b87b1dfea1d..0030246b4e08aace30276066cf61d1510e8c2712 100644 GIT binary patch delta 290 zcmV+-0p0$j1F`~;8Gi!+008Fy?~?!k05DKYR7C&)07^mg{ds5z{VzjjXtgJcz|6;*#<;nm60KG{>K~yM_z0ffV!Y~xZ@mwKU z3Izjsi{LrDf@djo$xQ^a6f&fD@c^!c4z7;%CHbOQX+coG>3>J2yua9E;vEep4%iwb z77@beU4jo+zz1O0w+ZfSU!j4`soMfglMxDzfYb$H1p`poTLPKNP7Fm+45Fx3C`yuo zuqS@eM`}MhAk5)%ABLUb@<2C-{s5{TGRX7^e0?>gKHR|OKKz6}WJ(|UTc7yLWz=5< o-*YzyJUM07*qoM6N<$f`l}GNB{r; literal 420 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0IEi7Q8@egp~$Bq#cnfoLFB0AesmJ-~bw$k^lQ;uxZF ze(wc)u0sYQ$3L3yvJ%-<#qj=;Im<4W4{DKIw%y?$WSUNEyJ(bno=f=mXHi6^V?h1o zcAv_4tK=_za*KtxvGuzegnOxL++*r$^uDb6VsB+DYhL>|t}nH0;xdf++!d^*1~Yw| zcqT7oP!D8O3Y4|<{G@V2c>jyXYgd^ZD1LEA{lJ+G)eGhxu46F2CTV2C`S4d~(EJMr zp4dI)tWD9VeUe}MNPoIvo#?}DJd81o4C@>i!W9k_&9~0m?BaiY#VIkMKU7OxBT7;d zOH!?pi&B9UgOP!efv$m}u90DgfvJ_TrInG1wt<0_fkFNZD=!ocx%nxXX_dG&$Q^C^ P1`0AyS3j3^P6mg{ds5z{VzjjXtgJcz|6;*#<;nm60K7>=K~yM_z0ffV!Y~xZ@mwKU z3Izjsi{Lpti&rRg$xQ^a6f&fD@c^!c4z7;%CHbOQY(Y@J>3>J2yuWBLvB%bMz}`S& z5h0A;CHQa!d;oTRo8Zp&6&l!_x-HN&8KK|^NL>(CFaVXkC6KA?#84E)Ac|^*q9iE@ zd*T;;r1ql&!W=I5Vb~ci4|H?r51{HHgG`^m*H=^O!wqci!%yf#ru3n|^@+b+M*UUr nZ5afp0s>S40UD}+faN}SsrAO?ff1I$-}jNP6tjv*T7 z_g*mMI%FVn>|@V5zSebe2X=qqZPXLo<2lV~{ewuG_6MK11i4}-8UL766R5LIVa5F~ z%E9;Izs|5q&bCO*7udkD$ZIx>Z?uDOLFO)&&D+-(9C&*nu5sV_1x?BVF^p>$u&M3# ze2}=w>w%@$0hz0s=RF+_za7#4#j;$R`GSnvcflKyW&B%;ckn+rZq?kb=D2Qt$SY;u zoOjCpFAh7uJY4@;xPE8P$JG;V8%ca%<@v$HR>R1Ay7t|SC`b9FGq;HYy`fs-8c~vx zSdwa$T$Bo=7>o>z40H_)b&U)|3{0(zEv-z}I6;98E>g5EdT|jb2ya<8tgxIhE#{_{P+DQPOZ*6@W8T4sueFI*k ztz}~nB19rN&WESZw}vUTD_DC~=61PPQz4-l+UKK>+}oo zQ-TkM5Ywn3>T@~+VyEkLV?+$|0OPVE_S+20+9KBd2B{{3U_S8xAMee_tCG)Gk literal 509 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0G`Msst;e?TFDPV&9*H$8=og>^lXcknxhr8iYIoJXtCIo$u3tkA4@9dF7a6T zL+DfTf%-T6XIKM|@+2wnM_gxly~;qyRFWl7WZU}CuR9NJ zbqyiHjpp*@4gMU@ghNg~uk0(Vyez!$SVj7!2%#qtMt{0g!1AZLTaov#h6ul|nz!6^7JBH+@Ady{}6rCQ<|QIe8al4_M)lnSI6 zj0}tnbPWu3jSNE!Osz}|tPBjb4S=M?7F+jU4KoV;AZO3t`pHB`Uk|g zD&$0$u!nsn(^P?{3e1|BK@2A?1;~V>=R@QU+=nP=i(lXrq4Cif#R|llQHP{5hUxI0 zfs@G_B+m`lGG!kq%$t3n!}pPw?Hj&?vQJ#c8EvmWk7lxuSV0S-Vh79k>WrYh({63| b!9p+WZ#l8r2o9sd00000NkvXXu0mjf|I3L( literal 408 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0G`zU3V@`9L9o z_or>@kMQJPl*E4e$*Z0PdoSnZen04>ANu@o{{JujTYzp?Epd$~Nl7e8wMs5Z1yT$~ z21W+D28Oyuh9L%~Rwf2kh9=qu237_JCYH<(P&DM`r(~v8;@04rvO5N-fx*+&&t;uc GLK6T^XOOG_ diff --git a/graphics/door_anims/battle_dome.png b/graphics/door_anims/battle_dome.png index 729385b3fc7063eb1f781ecfe03d58bd183868e3..4bc9fab94b53c414908c14401b996d133fb93213 100644 GIT binary patch delta 262 zcmV+h0r~!l1D67j8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0HR4mK~yM_&CtOK0x=K;(5cD_ zmhE810@j%Y58g~VvKq02c=V*H!TC-^Jncd}_#w=LB#?YMw|`J4?lCV^DrPNIO7)aN zzK}}xz`Pnw2W;IoG>zujIfhft`=JAAZa8imR2rBUAOR&YV>VM_!NZh$Yx!9}WA>~@ zGMfX;0cDnNuxBMCfPQfOkNUA!95eo&7J##W;XAmcfOJCw`oX)OCqy=@mZ6Cva{vGU M07*qoM6N<$f<&Tr>;M1& literal 394 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0G`t2Ubxw}3(d$%%etAR34jfEWx?4=`T^G8TEdIEHAP zKYQUICzGK7>xE3ks!uOU6vC3-BlG22&g@{dxO{Mv=#8nLeO+wcI@$bCJkzW)p~h-k zfcmylxenp9q$EGVw60c_NxaYEGWH~7e_v2I>4dJq{Gxs5WF@=~|Gc;0+Jk)zs{@P# z%LP@{!byW>wLzl8$j2pmbgZgq$HN4S|t~y0x1R~10w@n14CUS!w>^gD-#1N pQwwba11kfA^2_OYC>nC}Q!>*kacf}fyMGB3FrKb{F6*2UngECmgDU_4 diff --git a/graphics/door_anims/battle_dome_corridor.png b/graphics/door_anims/battle_dome_corridor.png index 198ad9acca356dd0b5025adcdb576b26ba046fd1..78e77869ea6752f126873b250962606ec13f34b9 100644 GIT binary patch delta 309 zcmV-50m}Z)1KR?S8Gi!+008Fy?~?!k05DKYR7L*)|58$Fl$4~+y~Y3k|K8Q+d#sC# z&8(d6&5NA0oV3NP&DFgr5Z+24|6(!!-h;|31}*>q0Om%y|M?OR@geoe~I}pfx;#Tx(6=Ha{3Vc7>ULS^m*)DOX z){!~adWLzPnEQDSEX#xWx-5GrbGITfmmknnd`3k8TOs1R?jjf8CDL{|wi!FF2+q7= zXhr|a2kj%D5iQpx-WIXe9aSYKo zzxKjL!Da&<)_}DWM2)y}uLNG&#a*0YamqnGe2#T?+Y4oRrRgnNS{JMZPSjiqE6Ehy zv5l+7?pFN#Wu8~{3e}eeZe3E+wog9f`9A)VyS`s%zvJ}F{gUcHd%r?$lZR>^fr z)26It*l_xhqeDx`1aF3q3JOkICsaTDuh}DSXHlh}E+JF=;8_LRjg3L2PxKR9rOXch zYhJzfM!<`>#yuAvY>3@-)o1bI3070&`i}RBdrCe&V)cus4d`Rl64!{5l*E!$tK_0o zAjM#0U}T_cV5n*WnyS$XsT^sU}a!X+moDyq9HdwB{QuOw+5bzx37T$*VEO{ JWt~$(69C{dqW=H@ diff --git a/graphics/door_anims/battle_dome_lobby.png b/graphics/door_anims/battle_dome_lobby.png index bd4e4e895baef67bd6e8104f8b3d248b6496ae70..631cdeccedb5b1fd7973a1ba8127945ff9bc2544 100644 GIT binary patch delta 358 zcmV-s0h#{h1NH)t8Gi!+008Fy?~?!k05DKYR7L*)|58$Fl$4~+y~Y3k|K8Q+d#sC# z&8(d6&5NA0oV3NP&DFgr5Z+24|6(!!-h;|31}*>q0Rc%wK~yM_z0f^Q12GT<;CBT( zijWm3Y$_V01R9c(Tp%U!DX8`w=BIF-q}dL6x7v!Hh6B)W0DsQFjAtbyVWmR6#-C)5 zta(_EK?PSiYutY2T;o#kiL;NK_kz>6oL8tZh>?#NE4ULpW7`I$bbEl`XY}wLW9YH! z_|1^88b$_|vAT)$&*U1U^ix zU~3urP~Zi$sb5UfrhkY(@&7o zRIm|Dk6|vD6jUCYNC^a4kfsDQ<#K9R2+j+%!2a&%8>gJ=K|q%GkN^Mx07*qoM6N<$ Eg75LGzW@LL literal 486 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0Hx^*@SJoq$3D$%%etAR34jfEWx?4=`T^GX8nGIEHAP z-+RH(kJ(Uw^+G)>pTl9sj2A1n-P-zMn`h8&jt9j#M>Sf_O zUu3R%w2sO8Y(}EB+vTLYA7{HI-tE~CK5w1f?fC^FZsK!4@0_}@FX_|^QL`q=L#EEs zcU0Ye9WwZ^{BVQ)o&JZ)FSx|!397S(IZXDNttP7R=E?)FK#IZ0z{o(?z);u7FvP&r%EZvh*izfTz{x~Hq3%Q~loCIA+?tFr(A diff --git a/graphics/door_anims/battle_factory.png b/graphics/door_anims/battle_factory.png index 7ed6c876b89fcf6701668add452862a571c62fec..1d74d8b58076856ad87d26e8ece5299f0ce5747c 100644 GIT binary patch delta 234 zcmVLkH5R->Q_=JO~ kQsM%E7{3$4pi=k%0C!q#D)xyq5dZ)H07*qoM6N<$f=U2l%>V!Z literal 366 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0HR`Tu-%@<1VhtT-`M>4Be@h*jZkp~0#Sb3O*?Ii5pHm!(lynfn%?Z#_|^Ts9XST1gE z;OWp#Q?R+gXjtjda-K`zs%wmbz~k~Hi4ZP%hEsp~zfJS|tOInBYKdz^NlIc#s#S7P zDv)9@GB7gGH89jQG7K>=wK6fXGB(sUFt9Q(P`LP;9YsTKeoAIqC2kFYJK~yM_#n7=4!ypU=Q16sJ zTPRF`e92uXQRhK2f@jGJZquO|f{-8%@j0bcy*mW=`2*VwJAZiEY#foz;6Y~tX!BVn z3K*D2!EMI7VXk;6@Tx#gWhb7(vMh>JkdIiApGy_okOU-2U!d*shIxLONL6|VLJQ|o8^>Bk+{&pOXP$n64o oQ)}trd+6ua@Ebk!1a|s?H@mc}+g#W~-2eap07*qoM6N<$g45WB+W-In literal 421 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0HRgOK~qZa^V{nh_rEHD^&M-s%LqarEi$r zi`zLe3(ro7NN2wIY;%vtM2573xjo^BBMJkL>{e>hwtnb(uew$Hg!_UM=XY{t6fjL$ zQq&zdaq>b14;vlBC*5{ji~mSvsiy&(F4{*A4|A z4f_3XbP0l+XkKzsQrc diff --git a/graphics/door_anims/battle_frontier_sliding.png b/graphics/door_anims/battle_frontier_sliding.png index a43cf519dda91ceaa86aa2b89c4b73e978aabc88..1359f4725b8d6061a5088ffd6efa5677705df3eb 100644 GIT binary patch delta 260 zcmV+f0sH=j1C;`h8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0H8@kK~yM_)zGmGgD?~XP|re> z0Vr4iDHEJL!8d&pVTpwzF-um+3Yj5%`w;O@aEo#UdeUK#&wafZSHXk%QANf*neF9o z1g7>KeN6LwFA!D;F~UMDM&Q=>=MM;QZQE|c(%{lGr}FO!U~01*woi=QXGI7D_krgu z7Gj~7_uMB#6x=648~A_R$3PDad7tG%c@_h)NKFB;$W1!6x6d0NH`N|xMv)c(0000< KMNUMnLSTY0w{xNZ literal 390 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0I6<&#y$H-SO|$%%etAR34jfEWx?4=`T^GUj=@IEHAP zzj|RKZ?l02OThXGq7jXe6E+2?EN+qe&$(u{f)ICrfrC_8W4^r7KhG71MPGQfJKB{e z-eJso=KWMM-0=75`5b31mVYVCo|WCW!LdV3Ea@WC_r!{Qjt$36dabXq-L=_&YQK6z z;r|`|-|wV5bJ%`&e4-ucvYrMLXY>mdKI;Vst06Rr|u>b%7 diff --git a/graphics/door_anims/battle_palace_lobby.png b/graphics/door_anims/battle_palace_lobby.png index f106ae960d99172907dbf1fa3ca61e9ecb42222c..a4aa998d46eeb4322e164473076d799205e5b7ca 100644 GIT binary patch delta 303 zcmV+~0nq-i1HS^08Gi!+008Fy?~?!k05DKYR7C&)08&zFl$4~+y~Y3k{{R30ltE&o zVuQVlq|LM`=EYKbDG;PN7|lu`|6(!!-h(7-*tP%w0Ln>3K~yM_t&lMegD?;T_W|Tr zG|=R8G)9Wt(BLL7h{OjhrH$g_2Xtwi=3@I4T!2texN5vwdw+ckBE_tT@KD^^4IJT#s>2cp$KNAu^0pj%yU#fR$$x940nN3ZYX0}%i;aZ5gX}C*k%4RVhKO=^8x)~B)9D+DvSUC002ovPDHLkV1itn BhQ0s* literal 432 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0I63upOXra&QqxVj{_jU(+AI`l!<9bnreee;lUovJh%iYdA?60$P`FbOh z{TY7|&`+u*t`Q|Ei6yC4$wjF^iowXh$UxV?P}j&X#K6?b#MsKzOxwV~%D~{v?d1k2 c8glbfGSez?YuMW+-vbIhPgg&ebxsLQ00^m%=>Px# diff --git a/graphics/door_anims/battle_tent.png b/graphics/door_anims/battle_tent.png index a0a88e4c5fba405715e0b1441841074fbdef9119..b278e33109f5c138e7da2d54e3ef3f1fc3357411 100644 GIT binary patch delta 414 zcmV;P0b%~21g!&*8Gi!+008j2^br6605DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0XRuSK~y-6#n7>8!!QsA;ClrX z8fYOyJ?3pXNFieeopE+skhkbyg909!A;I@H89n$F`V76(sefq;t?5#780!O_Y~2q> zlWGO@Bh}5Q%FU&$%{)w0ipt}MaH-gYsq5uE@ literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^0zllr0wfq7@kRd!QY`6?zK#qG8~eHcB(eheOiAAE zE)4uuMs|yVJoXY#Usv`gjG}BTtlYW=Al(AViGF1u8i*Bu7z|PmFkfY0V6^abaSX9I zee}Y{tiuKZY!9ki_cgKiSI#y*If1W@HS^q@yZo**%?+i&%(zN^2&$9M+s;Thi&c$}8rXb6tPamq(` zTskAaXWpsi`cn&bDx71@Tz7u$|1;^CZ_BdcB6t6m3{8G(@bq%jY2i;#)lZ1zK4+Q3 zxLB{@@k<%@BN!DUSN`LE>z+zf9h7V8d;DMS3j3^P6xOMr+wdN=JT3g+d;LRy&di6o8z<)7GA@zX9~Ck%>kT#Y3=2O5XV4xf#thn?;Iu)C z7@Ri9rig4xmu~l6U2c$dL`44^nulmN_vZug{Ym{P@AMd?Knz3$0nsTYCPd;9reJU* zNazteC+o0$>qx<(yXXEtU*)}j5GAUj?6-$Vb^!S$^oDK`CD)xOXZfG-eVOWRS01*$ Ti^=MU00000NkvXXu0mjf7)Py+ literal 504 zcmeAS@N?(olHy`uVBq!ia0vp^0zllr0wfq7@kRd!QY`6?zK#qG8~eHcB(eheOiAAE zE)4uuMs|yVJoXY#Usv`gjG}BTS_}U0dIE(6k`w*PKr|3505KS(9$>!8z`!Wr>Eak- zaeD71!@R==JgfopT%C{IadX@x#SvKfLRTo@u5O2&L%?SpTi3Q8TW3%2Q0^-RlNLTq zu=kku#Z_X5Sj{!2m8|kxuU)Xq`yHVB;of`yUj{O5sc!_FootxI7W96ZZk6Ovkas!W z>iL1(_3O94Ep_uS-nV?u_Wsht+g9aP@JG!P`}cnDzlHYIi!R^kWxlwfCsx7Bo%Neb zmGfDf!-u{bN^fEBI@h>OJuP>F(vda1n>5pAUwZmDWV&>LtfR``wr7cQ&;IS{++)Ae z{^?tJX0Zj0I~BT8jje1Lnt)xo3(R- zb;D&Lx5HaHCcXBXviXw#kBvUQ@fOjpg&TLW@&W@%wZt`|BqgyV)hf9t6-Y4{85kMp z8W`#t8HN~`Ss9pE8Cz-_7+4t?2piwZM$wR)pOTqYiCaTbUea|?GMmPXTQ@hK~Q_=VM4Em`J(?>uX3{ iLtjJU8qQbX8vX!lNHy}x-WW4rtaSYKo ze{_Ox7n7kt>wVE8hWF8e>G|e6_+2lHXWY@A!dTAtm{G*(oI&W^Z|xjS98t4tmIzh6 zcQ)pgYh2Fg`&sJD>GuV@3(xUApLghu!Fzo(e)Xn>pGPx12d#z`u)=>kM0Ru&=DitF6D?|4zAV z%X~SxDWS?oU`c~nsIBj2p&4?|^bUV9_@0!%rAXa_^~#J_7pHa^*=lht7X4bp{#b3r ze5P9^JhJ}qa-v@uhz4Q>AO?ff1I$-}j5VGvjv*T7 z&tBZfdssn$H6U$a?~{#2++J!4%#)N_qm7waZFv$n(@qqYYy4QEq2V<#-uA8}cl~N( z_p=8IuFN%VJ>_`dLF0}{?}FQ69IvI09GNe$(|^6Bd8Yr%}aVC#>4_ zZt}-Aj8cfZ}y#_!Q7Xv(T57a&i^aVu5Z+24|6(!!-h7Aq}96QGbla-v@uhz4Q>AO?ff1I$-}jAfoKjv*T7 z_g*mMI&8qh8Zh_T?7ddz9xoKFrcao+z}#T2t;mv#7aXmebyGT=jY~2%(PTcPcT19cJX zM`d~1KK5&zYt@yQSfz6KlH(TMm47$LId7f6M!Me1{$QG=kn4F)(Xs^o^(REXUFJJF zk7>hJ#|gQQ_y7LM@OWxi6Z^MM?m!o-mbgZgq$HN4S|t~y0x1R~10w@n14CUS!w>^g tD-%;I0~2in11kdqxm_o$P&DM`r(~v8;?|J=yr2yfIG(P4F6*2UngCQTf;s>I diff --git a/graphics/door_anims/battle_tower_multi_corridor.png b/graphics/door_anims/battle_tower_multi_corridor.png index 145dea7a50ceb37a94d18775bcdfa610be88964a..cb32fbc70b8323bbb77195d14fc529dd8b81feb1 100644 GIT binary patch literal 413 zcmV;O0b>4%P)|NsBq)#m^IoB-~N0KJQIbAwuHv~!Eay(tjhN+ADYG5_9!)HKb>0003f zNkl_(H;Cvh*Hqa}$zlHfN z$^vM#t8;0WXn|L2O}7JSR=X|7p;I%<_4f_UOg5HDs5u6VO#})7epi)o@B*Ng100000NkvXX Hu0mjfq_nO+ literal 554 zcmeAS@N?(olHy`uVBq!ia0vp^0ziC#1xPTw4GWwMq*&4&eH|GXHuiJ>Nn{1`nUcKS zT^RVSjO-QzdF&;gzOL*~7)9CG%s-xC76J+hBq#cnfoLFB0AesmJ-~dGfq~J<)5S5w z;`H7td$X7gc^DGx*KV))>brg3&h{5FJQumYh+3s{oLKD3`pr1xlmDzIQ5n+fnwt5W zQzONe->X`2UCy5ATfoxxQ;hfH4cgC(W@|=rZI95qs%ianOF`gzx9wjHiNxW025PT^14vC26hlq(Mytg0oh5hW>!C8<`)MX5lF!N|bK zK-a)f*T^u$z|0DWOpLV+46F`Vp1Vj&_|fXPKRU=QYE4bF4dJw43?9T@mv-hcc(3FC8MO1PW?Q^M#N zm=a3#FexF65txpM%$9BY3HBSaX6uj$sg)+f)`1#__pVy1 z;@VyZa=UUnArgS8A_6=(STWu$ACft$%%etAR34jfEWx?4=`T^G9G!lIEHAP zKRRJACzGQ<>vC4Z?d;M9yN)pNZ4`*y&?K46dndxOX6ucX8Tq{Dim%(+o@J4h_>pk$ zkFDo)&m=D?f8pRurPF3i^7>Msr}$gQHiJ`g>WhP?S6z{rwe!`s%qKVWLd$c1bBbkO z&3h`qv2d#1;Zu!L?cdi$t$K7Tj=gAip|zq=!(>G!8@s0Ci(UBbKen@8zaS^2Qq$dE z%TRZ?UL}RY|AEx)_lIJ0G-4+T7~MI_R^tDF`7V>ZM>xa%duR4KEwC+UZaI5k|DTmh z*B_MIts_7Ge--0lfky&7&Nuel{L~=ryKcS3sm+gNfxcBOag8WRNi0dVN-jzTQVd20 zMh3bDhPpy@RBzdxL|EVrqLq zN@^)FTBOzHYQ4qo?)J^q?wp*obF4XY#iZT6gUSE^0IEquK~yM_#n90a!XOL=;Otc0 z0G+@e-h3)_0$?H?&lyZ4;2CRuZ0@-GE-4g#a;JlnMbmMbWPcH~C}~mEdUw8Yajmvc z+P4eU0{95U{o3(ZMM{eKY%xZkyT*b27fG;GmLQ^LFnEGcrPCickXr_U_Q|L6t^MsE zQpapj`lxtCwBW~QC<0n6(ozJ?hg)m;VDEg)eYP=ny`{SVW7`L-?5wo_=8{ VgMp($0{{R300>D%PDHLkV1ft0fJ*=X literal 402 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0H>r5EZ;P6CAlk`w*PKr|3505KS(9$>x-WUTUZaSYKo zfAqpd!9xl>Y!B8vsIU@z$xICB mtnJ&QpXpYEfDi-(^>YXRg4W{~fJGeu0000-HI7IBY;8z$%%etAR34jfEWx?4=`T^GCDk6978nD zpS^UEm&uTa`NEk)3~P>atvR6M;nQ$K;qHN%4=*JI2hM%RtjJftx8EaoO@u*NYFI(q zn?pQvW*BZZ{8OdPG%qvXBBjs%knQIU4G&&)-{WaA-WF_sadxKhtIzY9nuG=BG)(AT z{7bM(bVXf<{fp<(1=qM6*&}anPq)9k){5~UC&#OFMyD%kwwjlY1_0fpTH+c}l9E`G zYL#4+3Zxi}42%qP4GeXS3_}b|txP~j+rYrez`&;cYzc~n-29Zxv`X9>d~cPW0D0fj L)z4*}Q$iB}idS`c diff --git a/graphics/door_anims/contest.png b/graphics/door_anims/contest.png index dc466be116c595fa1ceeed0f4542a215f7d211c3..8719b23ad4a989fea0a6a63f2261d8460621bcd8 100644 GIT binary patch delta 321 zcmV-H0lxmk1JMGI8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0NhDLK~yM_&Co##gD?;U(7A%R z5Rc)~gUk`)z8izyLR`o|_JTJFvs6XFj^uN^G$!ACZMig&;qlfT$qQZrn$gL z(ULSkxzEy;Ue`64vBrsW!%t%QVLmH9qvo>!gCzI}M+9TMZb>#p3_Z^o^zNSJ?AiQ$n$vs?n7_$ TyLB{700000NkvXXu0mjf5N(pO literal 452 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0H>%Os~AO?ff1I$-}j60q#jv*T7 z&t7okYBmsHy|B~iyi$em!PuQ(=wG{hSuXIl~a0!x6Ck~xclFo z(gVBpC9p*uz1P8W+UsrOaxMj>DGtI5p^^Cd;Qn{G&yiU{S@yQ0Lh7USfVR%=7ci=$qdD@12m;QR<&g1>3>=Aw|}^EiTYC4*kV(vs=8u} z)wp5r@IIwvs^$bVm$3A9!dV{!Kmzb_As9!3xIC7lrS(jf8Q3zz(F%Dgr4c`Mp zn*bN;Gqe-kM=?tKm-i|5`3~DuN`_~VC8!c8{1H?M^^;5h literal 441 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0Hh4vCF+cYs0y$%%etAR34jfEWx?4=`T^GA??$IEHAP zKRe+p?_mX=)<{Mp#&?>}*IZEDHuqf{v&)r8^aWr4E|374xTJGN%GpHQuv+<(wIitQ-FqyyQ$54s*X z*hiP8oj$jwWs%AWFRMC+Hce(d6OkEFr_|kkPyZS6yQV!?E52>x5h*9$l0Sk@yicC2 z^#5tYP?50xlQCO^Fwk?VC9V-ADTyViR>?)FK#IZ0z{o(?z);u7FvP&r%EZjdz(U)= lz{Wt~$(69BShk-q={ diff --git a/graphics/door_anims/fallarbor_light_roof.png b/graphics/door_anims/fallarbor_light_roof.png index 4c81ba10e737a9ef27c55d401bca577134b96764..a4c959f8831a985f7279cde06d6b0dda4bb62eaa 100644 GIT binary patch delta 301 zcmV+|0n+}k1HA%}8Gi!+008Fy?~?!k05DKYR7DsmQr_mIw8e9joKky(L4$*fVq$wi zN@^)FT3W2EgT>ze%~Ix^G2VM1oMI_+#iU?vN;Uuh0LV#1K~yM_&CtsY!Y~X5;LOr) zP%{CJV1asrh7)kAnoF6Cj*t^@WrfZ_?YON7&lAFurB89H)PKLZcDpOL3CC^VHhs76 zxlQnG;5NOM@me!BTE=QU!E|};<)9jXuuxb8h_IL|ARk8x5VU8EIGiBDFF&KfERV2I zWDH08C=rzw`La|!W7_Mt`S=xJ z*&iwLn|1q1^Y%HnQ;zCAHruINoHsdBa<%E>6{$_vgng#_hw;r~^ayu#Sk%!lw`o`5 z5(USdhdSQQQhM{$SnJL14u{0onek1GWN?8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0KrK_K~yM_#n8n39DfXRj8W!*b$mc|94tA| zae)1CB9HvmBzUYiSF8O~yQ`r+Po^vTu0WW0*UzZxPAqj{fZv`L)CnG_ScvNCo zunK75PwI!``x?xn!G9z8mjbWZP&S8Ktv5i0>%pHljI9<}8phTSEY{Do>t{T#pKYFh skkbWnr`FQL^&imBZ{d3A3jF8?-aRpK)BF=v3IG5A07*qoM6N<$g0l*Se*gdg literal 425 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0Hh>*a~@r+`8N$%%etAR34jfEWx?4=`T^G7fsWIEHAP zKYHOT?_mWV)(2}6^7f`J@44VuWbCfAwQFWWRrfvXkX#-U)xc^Vp-bu?zgIXjFwAv6 zY}B{-T;r)945uw3x^f;f{C?cg_+)Kp;p_~}8CvVuc1d%@+<+vbd6)CQ(?5B*=cKWZ1!32^?=#xKrnyHGLzTYu2{=S?@9?e0&= z(zOX+a*O}`+WDo|{jJu|&z)C);j(1a@~fAWzil|5FIatp>;H@P`>ZD2zD8wC3xJ+c zEpd$~Nl7e8wMs5Z1yT$~21W+D28Oyuh9L%~Rwiavrk2_U237_JcXr9lMbVI(pOTqY XiCe?k=SviU8W=oX{an^LB{Ts5POKvCk*}rXS0nnfl3$C7*!K zEpXHV9AO?ff1I$-}j5VGvjv*T7 z&t5pld00V&Eg}2`*WHy5oEW9Q-m_@@Bg_$bz?uET(%oP7{^&R&<>ddizT#(x#;?_@ zU1C+ZCh_&S_)gljY*__+%F3A}y9xm%$SlE;)#KKX)V6EQZ#{O<5qm<~stqdlw zj@r%tGrLZy-tCpUF9vB^d%C+C%&;PHVb$>iyZYV|NsB?oZjAhtgLGPq&XP?txEs^0K!Q`K~yM_#n8bG!!QT{Kz7Lp z86n7>!0`aJ$uF-IrtP=C?oeZ!MzPv_gM@Sc+2D-aEnVN?*|RIt8qJR*Op{~RBT_TT}FG$b#Zg7e@(v|@XG z@u+JBxaK}09G$Ch1|&nPkYVk?)Y^G&?P+f98Ksh!-wdH3@o@IsE_t002ovPDHLkV1nMDkG22+ literal 426 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0IM72~4hI-rn1a-v@uhz4Q>AO?ff1I$-}j61-6&Xirzgxy4r2!lc(&5 zLmqsdlQJV{ufJaHZvQ>M?C#q9-&j8N>=&Jl?e85yxU6OV_fC1=nl%$lD}Po3eWP09 z8c~vxSdwa$T$Bo=7>o>z40H_)b&U)|3{0&|%&m;gv<(cb3=Ej#`Oczf$jwj5OsmAL Up@?Z)At>NHUHx3vIVCg!0No&ubpQYW diff --git a/graphics/door_anims/lilycove_dept_store.png b/graphics/door_anims/lilycove_dept_store.png index 4f036c51db1cce8e59a6a6ce35f7560c15925720..7c64ab6da82eed8da704b662546b4b02ddad9b5c 100644 GIT binary patch delta 299 zcmV+`0o4Ak1G@r{8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1&=A_=ugVnTZ&74wm#iS7?mT&+70LDo~K~yM_)zHBWgD?yQ(9D9= z2|_0zU7!#}7&pAMy5; z*D{sX4xE-*w9NCd$g{mdEj|#D56pQ+>~l6LO^COY4#Bw#Vn+wAu=b4DS}PbCRdtHt zNqiN+tTxS_TLx9`7k28VZE}$|scl x{ta;$3h0Ugx+HS}D7Ya2g)|tTC=I`p&kJi%4I^GgaY+CG002ovPDHLkV1n6Zgs=br literal 430 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0IM!?^YBQ-MMP$%%etAR34jfEWx?4=`T^GLCt=IEHAP zzk1;yZ?gdp>xDNLJhjqJwlWqa2rU-<&v4El&R9x6ms_-PiagOE-K}1%9g2+lg21G45DW9rOU4jg^ z8O2%!6>&x%-VrPoY=&U@VDo&^S3cpqe8%_u1K)6fCzDua#2GUDh&V$!xX1@z7X3$o Ua2+mB00000Ne4wvM6N<$f+}Kn761SM literal 401 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0G+2VO0$cBWnD%(#)KYk_ w7?@g_SXddGY8x0>85kVi<9`=LLvDUbW?Cg~4VxZ*PXvXJr>mdKI;Vst0Py&PT>t<8 diff --git a/graphics/door_anims/mauville.png b/graphics/door_anims/mauville.png index 63167408ad65d2c4447ed7ad1cb220a02a51ea0f..fec5f344fba4ee8727b153750c52898ef5dff8f5 100644 GIT binary patch delta 301 zcmV+|0n+}k1HA%}8Gi!+008Fy?~?!k05DKYR7HEVz5oBT?(SOE)j_?qN`r%oVq$wi zN@^)FTGiFnq@=9o#rD;U-osI7A7p_Z(CdM_6CGYK(Mn|~_+h(K*TfTuQI%Q(w5 zyn*ANDBqibm`X-uz*KgDWf3U*eLq{?Z(@a6tuUXh+@^AyV!)C&0ab2wb$--Ymt_N{=>Qg=s5v!-9+T@v)00000NkvXXu0mjfr0tBG literal 432 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0G+-S#h6U4TLY$%%etAR34jfEWx?4=`T^GER89IEHAP zKRe+p?_mX=)<{Mp#&?>}*IZEDhu;c&>XRz4+3CmWjEqbwV+M1dweX(!Gat8uu zYd0`>oyW9lO=)SJiFgc$Q*6F-(3W`tTl9{8`du^OorLHdrijKTdmVDTSpH|V#;)D4 zdeZEm#;H|*n7E{wb+?$@a67qt%7^JcOMch1CwJ*Dj_~5&$!__NXD54M#j9XDeuG`1 zHPig`P6Pd|3fCO~mu9Lz|5h=vnNfh*TABAFu$ojztj5Ewj$&5RaJ(leB z^wY5%tb%o#d2_I3<}dtBJ{9MYNH2luk!102 Y0_M|E?x({8D*ylh07*qoM6N<$f}$C=tpET3 literal 509 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0Hn-ldI4&H{x5k`w*PKr|3505KS(9$>!8z`!W#>Ealo zasKQ@$Gm0(0oDta;@>4!TQ=wxP6%s0BGw%dXqIyzkiVgbanUc9sZ|X*MQ#5KFQ}DV z4Yih@cZ{vyK1AJdY3HjFkC%&Pd|M&4LT7WPy3qNYSk0C;!*kodEaE-x|7DJJgO01b zcVJA{u65P5`dyEz{d<}{4hVhrTaxJftW4DMo{Zr+!S@WzChyiI-|#kQt8zo?GyOllcFj*FdgwR4oOnL8&_!zL zq1~w`@0XfvSoQUU`^D-f&9)2kC!FWn6M9tF$!(Vg-wF1WN92~z4|_8I>i_vQw|++c zm9n}S*ZBJgKYk_7?@g_SXvnxYa19?85r<(i!DLXkei>9nO2EgL(R2y5}>&7boFyt I=akR{07nnK>;M1& diff --git a/graphics/door_anims/pacifidlog.png b/graphics/door_anims/pacifidlog.png index 3e05288255cf4fb19527b03c2878df97f06632ce..841c31658d649c60888ccb6ba2b517e797ccdb9f 100644 GIT binary patch delta 321 zcmV-H0lxmk1JMGI8Gi!+008Fy?~?!k05DKYR7C&)0N&=Lw7q+rq+)}MN?KwmVq$wi zN@^e=QtsxY?!{uwoH?X>7=uzVgM*7wYSnC2)-eD80NhDLK~yM_&Cs!N!!Qg5Q0ydW z0zwnWTp>xtQqlxAPABh?QCM&Q7ICi%GngPDosT*fX>$1u-hTlN`JovwrE8#Tu{CIh zR~Sr8KmiWW+M&O6)&OE}?FBIb`!q9bgJ{5NfXXBw4cz7!>HdfrG2RuA9X~sQ!e|?zrzLOfHm-^{Y=wbYRQNvc!e)WpD$QyjQeT) zQn>9vAi>DIdOAf~)fl;kt8v{+c;C+xkCU2H Tl_fKQ00000NkvXXu0mjfJF<;- literal 452 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0HnotH1JOa=-GBq#cnfoLFB0AesmJ-~bw$hhO_;uxZF z{_KT~y@w5WSOeA_I90pu0)v*xske#B4^o+qFI^QAHo>-WC1(zQ=^_{D#wP7cEI)bW zPq_Ws;5%ni&W1I6-1;snE2*n(Xi$$hY|`)DaloeCz)1bWoHVx^Gn83)17@-;X`Fvg zBFkUx@Qkp+TOYR`){0@9sBKYy-NJ8gHJj#|#eN^WuT46TeE;OjrjFj6K5;n*-aT9A zzuv09HD!jnMXR>Qe0_`S65lQt1pj!}pn9<3hNWxN)2NiC88I)}C)%x?KWBR3bdH+3 z;#I8KKctwieK6Il=KTNtGyA5)NoU>eZ7%})Q?2OC7#SED=o%R6 z8X1Ndm|B@wTA7$=8yHv_7&M$w^Fz^)o1c=IR*74~$BFYkfr8Z2)z4*}Q$iB}Hm9I~ diff --git a/graphics/door_anims/petalburg_gym.png b/graphics/door_anims/petalburg_gym.png new file mode 100644 index 0000000000000000000000000000000000000000..42a1e1dfde2db2157bd42c50b25674799c68eca1 GIT binary patch literal 289 zcmV++0p9+JP)KhL>^uRK(%$3ulnyX;06ya- zOzo5LhKS0Us^ypc=!N^yOYXRa4{(m*D*?Xj1*!#b8v&aEREt2{@bUlY=NmYPrGDU- nQ!N5s0yhVE3EJSPcl|s88&4S*v2toa00000NkvXXu0mjfj5&aT literal 0 HcmV?d00001 diff --git a/graphics/door_anims/poke_center.png b/graphics/door_anims/poke_center.png index 8658107149024abb90fd59b85dbae29fda13df90..8bf5cb146dd19441ed4d034c632a843feb8911e3 100644 GIT binary patch delta 288 zcmV+*0pI?k1F!;+8Gi!+008Fy?~?!k05DKYR7DsmQvd(|-sbMT&E}l6-h+dSVq$wi zN@^)FT64YjVyy1}y@T$QbKYuV%|TLg#iX8JIZ6Nk0J}*R< z1Gu20io^s~Ca}|`0F+29gp@THB@z{Q2I8|xf+bKo_|;RsE`PfFiJ2Rb0g{L`1KbS) zyQ|_R0Ad&*SK2{hjXWTA9{Vz8M(Ii5N$AO^&V7Gb3x0tdEk;m8i+C!_{Q`t|1lZ0P z8$1-nW`4zl>8d~5r|W!#6=1G?AFOSE|H5vKTr+uE5JY|BPgBK|P0000 z>o=#Mbc2%+gGp-+ufq1dN$g4q8YP9u_k85}=H&9e)XE6%nnoE@ z_W+l(HLrfZW;#+Mw)4D%^gf=$$#q9tUaqpgy?j+oi>O0Rt^B*1X&hY_j+gK2Zxq?* z-)45_?_0amziZn6t>0REjQyq#qsYYB<^e6HKd&sWowr76`n=}-wShoysFt`!l%yn< zq*^5xr2;7iBLgD?T?0d1Bf}5_Q!5ioD^nwF0|P4q1O08nuTV7P=BH$)RpQnV_j+|0 PD8xKn{an^LB{Ts5Hm8kG diff --git a/graphics/door_anims/pokemon_league.png b/graphics/door_anims/pokemon_league.png index cac740f561669701a81214107f4b3424fa7f3113..34419ac0ada256811ab19aece7d6f5b2fcea3344 100644 GIT binary patch delta 316 zcmV-C0mJ^i1Iz-D8Gi!+008Fy?~?!k05DKYR7DsmQuf7r?wnf9b19@+F@uAPVq$wi zN@^)FT7$*jVw|-9|L)%2#l^*>q^x`Y|8tR1rgi`T0M|)GK~yM_)zC2tgD?~Z;9MaW z@K&KGNV?Unq0*kCv(Po1XE~iYaH_|EtQkQqVSuYz2Xw7-6&Z1IFFcz>ZzEu zrPhVD3C3KtJ{bcjH9?9A;%n6PO^9<{CwPAs;^KXp9;TwLu@ZhIpAt)96A%vq0u%xQ zB;HIoiZ$d0Vl@O(K`sf12Lb(4KJP*Ks6Bwk?+A!x3Ax6wvw+;-b3QLXcx-WL))haSYKo zfAxYP*I@+_wgls}?g>l1*_OZ4i{*}UJi)o-d4}i4=v|@y0eeFA9!UQB=c44f;Oz}N zk9+LDMCy-OuIKt?_-hWc#NuZwLRI@GerJ80D*X7u<$2XhZuLsc;xswrz9M;T!=|uT z9ub0CUh^dTU5o2woa6mLQL%* zwqsMn{RhQ%`iyS{3#Z-wm=wK6rZ rGBnXPFt9Q(_`3a$0*Z#*{FKbJO57S+UZubP0l+XkK*mRX; diff --git a/graphics/door_anims/rustboro_gray.png b/graphics/door_anims/rustboro_gray.png index 2cf62b6dacfa9512b7ee585484155237b91cc865..99211c11a9641b89217ec37f97c6ff2b039671b1 100644 GIT binary patch delta 309 zcmV-50m}Zk1H}T68Gi!+008Fy?~?!k05DKYR7G>er2qf_-rnAR0001U#iU-u!}|aL0MJQ9K~yM_&C*>CgCGn5VD5x* z2e6R~47~t92avVbU!heNmhEv_4dDy4#x@#jE!1Tu-sr1oNz%x-WL)rcaSYKo zfA&%=U$X)aLqgwuKK=veStrCYG_%i`=)87IsMz$kg^|1uxwjlMn{_Sf?ddmLzM48L z&yHu_bn$BE<~^A+YNw_@*z-w>O($%{HN!nh#}=*VJ`lb~A#DAIS;72MG&Z=#SsYxH z(ZIw0mQhym^1~-Q&*li5SY4DjA@ywf=ao`_jRoeEGet;TdBnI}!&6}Gvx>6^BZ~|6 zaUSX^cYP?F6}O6`b2Zaf?%7JYM)T)<%ztM5Z~pf8Kl|d2#1^F2>ip~~Xf^o{B<>Vk zUH;RCammd;e>C2gM*#h%TH+c}l9E`GYL#4+3Zxi}42%qP4GeXS3_}b|txOH9j4ZSb m46Fer2qf_)z!VUw3M8jdxL|EVq$wi zN@^)FTFuqwi?r45=Dpt4ti7yitdwGN#iR;hAvOR20MJQ9K~yM_&C*>CgCGn5VD5x* z2e6R~47~t92avVbU!heNmhEv_4dDy4#x@#jE!1Tu-sr1oNz%AO?ff1I$-}j0>JFjv*T7 z&t8hx5W_X7(8qo!4#&6`TIHFp~En_m*R3v#v$GJ^g0OS5t@O z+40PqE?({2yeD%;?bP%Kdp=3A>4dGgX1GV`*rFBP2g3I#gstB&E0}+Z#s=3oi-U_Y z8hF^>GRi7me)xpv*&JaLtBVpRq@GRxyi)3~vA~>irU;2Ej~JJ0cnYk2R&n-VWO2bh z&O<%rt`CK?;#P5Vu4ekmJzFW)X#Sj!`Ol31&ENk1XJ6cr*n;$0ou6F=ttS70#GQhx z%YWK1F1h*VkH-7*2%z6oOI#yLQW8s2t&)pUffR$0fsui(fuXLEVTggLm8pT1v4ysQ lft7(lfzd`y6b-rgDVb@NxHT~5b4~>Xqo=E%%Q~loCIJ13ngIX+ diff --git a/graphics/door_anims/safari_zone.png b/graphics/door_anims/safari_zone.png index 89807f843f88cad27155dcd008a5f9c7f2fc6cb3..eae6a0e3e519dee004143f9dc4ba0e149691c7f4 100644 GIT binary patch delta 327 zcmV-N0l5Ck1J?qO8Gi!+008Fy?~?!k05DKYR7C&)0Osb+-rlsmy_}?+gM))wVq!r- zN@^)FT64YjVyy1H&F0O`q;tijL9~Mylxl3pMf?B&0OCnRK~yM_)sVpn0x=Lpr-k6j zGGr9-ymlZVES}>QAZF?i@sJjB_q4Uxi}RDXyWrwk2SOe{e}6K}r!{kfLnEx42Inh$ zblF;DYR$mD7Cmc?Fg!^ud?X<$%%etAR34jfEWx?4=`T^G9G!lIEHAP zzdGR{CzGLo>vFN|o0Gq9nb6!(>LbQ|VNNP%qIJP}C98-wbx+=N{*Tr@cofO*Bxhf5 zbY}VL6AjM7G3|`cwQEX_Moq~&dtjrOZkDfsU7>Exi5~u5!8F6RoGOF+la`h?3g=$x z+UZ@sNi5;*>`zAh3QPilJ3g!n&zQB8yM5Wg0QpxJHXY@#pTn>BM47>`#dYH==`{?o zO3?@WxNP#m&)R8Z*yy#*epZ|)@4Wt}PHd0V1ir6a|EKzElzTsCx-Hpo{O$K#wphdF zcQVD(xdhWVBx@Qcu+FG$RXQ@WW}dR~zukq0Cu{=xR<*=6q9i4;B-JXpC>2OC7#SED z=o%R68X1Ndm|B?{SeY7W8yHv_7zpV;e}JMPH$NpatrE9}er2qf_?(Wsz-n6u|l!JqdVq$wi zN@^)FS^xk50001-q?~($dtz#0Qd&{~000Ye(r zA~tn^>IOc0HVx(C%>)jznFDkPstfd`GYGtgR@%gy@js9+ynjIHFE$)8N3n~k#Ay|? z77b0x1^8uupyLHV6|ptuGQF_n2*dHv*cqz=M(nN;_`n;Xf4GQq@9qIj**ixV9FLHJ zI3(Z;Lx8bf0kXCc8o>MIMvA!@@vnM%kZbHvF9WDc6Z{G;!Fo_Z@NGxr3PF8}}l07*qoM6N<$ Ef+e_whyVZp literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0H{j^}rS4giG&k`w*PKr|3505KS(9$>x-WSsVNaSYKo zfA+#b-a`r^Yzbi*apEgdJNO=?RWux#E$$_C{_D=hGKSf^I>gfjD)`r4IkNa4`=?fM zjlV~yDo>kn&anB${p7qwi%mg6J9-b--4eP!|nM` zXkU37wLJ1G&|9h{t`Q|Ei6yC4$wjF^iowXh$UxV?P}j&X#K6?b)X>VnLfgQ=%D_Od g{_YnP4Y~O#nQ4`{H6$pddVoUE)78&qol`;+0Qeb`NdN!< diff --git a/graphics/door_anims/sootopolis_peaked_roof.png b/graphics/door_anims/sootopolis_peaked_roof.png index b4ccfb5f993ba33e06842e571e7cfb1813b871f5..7d8ea1f33e1710294ddbb02bdc8084127df55687 100644 GIT binary patch delta 306 zcmV-20nPri1HuB38Gi!+008Fy?~?!k05DKYR7G>er2qf_?(Wsz-n6u|l!JqdVq$wi zN@^)FS^xk50001-q?~($dtz#0Qd&{~000YeGj{qbeYWZzH=|4n+a07*qoM6N<$ Ef{~wn*#H0l literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0H{k)<<(_Hcs7ogGU8*)`Ib6BqR&cj%`uKS-RQ+3|AySILRjRYAW@p9aNme!MOO(?^+g(!2R#k|F-J~a8}LS z!MKWNUdtY?>bAo|3t6r1YhWYqJ_cJ)z4*}Q$iB}FRzdh diff --git a/graphics/door_anims/trainer_hill_lobby_elevator.png b/graphics/door_anims/trainer_hill_lobby_elevator.png index aeb7eaf26050aff021cc812dde0faf71a994fab5..bdd1c3b271d0d3c4ddd895e12fa82735e2f33258 100644 GIT binary patch delta 214 zcmcb^^qg^mWIZzj1H-fb?C_g1^}vu%3o-_)eQb|>+}g##%UOlyuf zh9t5#ee~lw;!y*Z_VQ9VmcTvVi9@$9LB&ZT=}W=^UD1|`SOI^arBk!d&b%YHEeB{l NgQu&X%Q~loCIE-4SabjY literal 348 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=0wfr|csbMpDVB6cUq=Rpjs4tz5?O(KrX+87 z7Y2SSBfG^w9(#$WuPgf#Mp0H{HEZs8exQ&*a-v@uhz4Q>AO?ff1I$-}j1o^5#}JM4 z$ve1Nd3G;sFgd2B;m|Rsk*RHSxq`sK3U*eWr%y|3_2*5Wt}M~iRP;H{PDEr0JM+zN z>qm=0&Aagv_0?^NS>!)D{*4m{k_~tJlj6JY`&l`&{HXJ%)83q z!L)tN6@O*tePCo*^IE^XaJs4_(01GbWneJ>!!2N19Pgg&ebxsLQ0F3HsQ~&?~ diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index 3c484e39a2c1..ff10f52ee17c 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -99,6 +99,7 @@ #define METATILE_PetalburgGym_SlidingDoor_Frame2 0x21A #define METATILE_PetalburgGym_SlidingDoor_Frame3 0x21B #define METATILE_PetalburgGym_SlidingDoor_Frame4 0x21C +#define METATILE_PetalburgGym_Door 0x224 // gTileset_MossdeepGym from R/S #define METATILE_RS_MossdeepGym_RedArrow_Right 0x204 @@ -128,7 +129,6 @@ // gTileset_BattleFrontier #define METATILE_BattleFrontier_Door_Elevator 0x20E -#define METATILE_BattleFrontier_Door_Corridor 0x224 #define METATILE_BattleFrontier_Door_MultiCorridor 0x2AD #define METATILE_BattleFrontier_CorridorOpenDoor_Top 0x207 #define METATILE_BattleFrontier_CorridorOpenDoor_Bottom 0x20F diff --git a/spritesheet_rules.mk b/spritesheet_rules.mk index 9fb184638a21..87293669c74a 100644 --- a/spritesheet_rules.mk +++ b/spritesheet_rules.mk @@ -674,3 +674,6 @@ $(FLDEFFGFXDIR)/secret_power_tree.4bpp: %.4bpp: %.png $(FLDEFFGFXDIR)/record_mix_lights.4bpp: %.4bpp: %.png $(GFX) $< $@ -mwidth 4 -mheight 1 + +graphics/door_anims/battle_tower_multi_corridor.4bpp: %.4bpp: %.png + $(GFX) $< $@ -mwidth 2 -mheight 4 diff --git a/src/field_door.c b/src/field_door.c index fa813a0533d7..70d10b753004 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -74,7 +74,7 @@ static const u8 sDoorAnimTiles_PokemonLeague[] = INCBIN_U8("graphics/door_anims/ static const u16 sDoorNullPalette20[16] = {}; static const u8 sDoorAnimTiles_Pacifidlog[] = INCBIN_U8("graphics/door_anims/pacifidlog.4bpp"); static const u16 sDoorNullPalette21[16] = {}; -static const u8 sDoorAnimTiles_BattleTowerCorridor[] = INCBIN_U8("graphics/door_anims/battle_tower_corridor.4bpp"); +static const u8 sDoorAnimTiles_PetalburgGym[] = INCBIN_U8("graphics/door_anims/petalburg_gym.4bpp"); static const u16 sDoorNullPalette22[16] = {}; static const u8 sDoorAnimTiles_CyclingRoad[] = INCBIN_U8("graphics/door_anims/cycling_road.4bpp"); static const u16 sDoorNullPalette23[16] = {}; @@ -190,7 +190,7 @@ static const u8 sDoorAnimPalettes_Mauville[] = {7, 7, 7, 7, 7, 7, 7, 7}; static const u8 sDoorAnimPalettes_Verdanturf[] = {6, 6, 5, 5, 5, 5, 5, 5}; static const u8 sDoorAnimPalettes_LilycoveWooden[] = {5, 5, 5, 5, 5, 5, 5, 5}; static const u8 sDoorAnimPalettes_Contest[] = {1, 1, 1, 1, 1, 1, 1, 1}; -static const u8 sDoorAnimPalettes_BattleTowerCorridor[] = {6, 6, 6, 6, 6, 6, 6, 6}; +static const u8 sDoorAnimPalettes_PetalburgGym[] = {6, 6, 6, 6, 6, 6, 6, 6}; static const u8 sDoorAnimPalettes_CyclingRoad[] = {7, 7, 7, 7, 7, 7, 7, 7}; static const u8 sDoorAnimPalettes_LilycoveDeptStore[] = {5, 5, 5, 5, 5, 5, 5, 5}; static const u8 sDoorAnimPalettes_SafariZone[] = {9, 9, 9, 9, 9, 9, 9, 9}; @@ -244,7 +244,7 @@ static const struct DoorGraphics sDoorAnimGraphicsTable[] = {METATILE_Sootopolis_Door, DOOR_SOUND_NORMAL, 1, sDoorAnimTiles_Sootopolis, sDoorAnimPalettes_Sootopolis}, {METATILE_EverGrande_Door_PokemonLeague, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_PokemonLeague, sDoorAnimPalettes_PokemonLeague}, {METATILE_Pacifidlog_Door, DOOR_SOUND_NORMAL, 1, sDoorAnimTiles_Pacifidlog, sDoorAnimPalettes_Pacifidlog}, - {METATILE_BattleFrontier_Door_Corridor, DOOR_SOUND_NORMAL, 1, sDoorAnimTiles_BattleTowerCorridor, sDoorAnimPalettes_BattleTowerCorridor}, + {METATILE_PetalburgGym_Door, DOOR_SOUND_NORMAL, 1, sDoorAnimTiles_PetalburgGym, sDoorAnimPalettes_PetalburgGym}, {METATILE_Mauville_Door_CyclingRoad, DOOR_SOUND_NORMAL, 1, sDoorAnimTiles_CyclingRoad, sDoorAnimPalettes_CyclingRoad}, {METATILE_Lilycove_Door_DeptStore, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_LilycoveDeptStore, sDoorAnimPalettes_LilycoveDeptStore}, {METATILE_Lilycove_Door_SafariZone, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_SafariZone, sDoorAnimPalettes_SafariZone}, From c2dc4a5dea22c12ee4d84898215c28d84b5d49fb Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 18 May 2022 12:41:46 -0400 Subject: [PATCH 577/762] Some field door comments --- .../{unknown.png => unused_battle_frontier.png} | Bin src/field_door.c | 11 ++++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) rename graphics/door_anims/{unknown.png => unused_battle_frontier.png} (100%) diff --git a/graphics/door_anims/unknown.png b/graphics/door_anims/unused_battle_frontier.png similarity index 100% rename from graphics/door_anims/unknown.png rename to graphics/door_anims/unused_battle_frontier.png diff --git a/src/field_door.c b/src/field_door.c index 70d10b753004..756d0dabf1d2 100644 --- a/src/field_door.c +++ b/src/field_door.c @@ -98,7 +98,7 @@ static const u8 sDoorAnimTiles_BattleTowerOld[] = INCBIN_U8("graphics/door_anims static const u16 sDoorNullPalette32[16] = {}; static const u8 sDoorAnimTiles_BattleTowerElevator[] = INCBIN_U8("graphics/door_anims/battle_tower_elevator.4bpp"); static const u16 sDoorNullPalette33[16] = {}; -static const u8 sDoorAnimTiles_34[] = INCBIN_U8("graphics/door_anims/unknown.4bpp"); +static const u8 sDoorAnimTiles_UnusedBattleFrontier[] = INCBIN_U8("graphics/door_anims/unused_battle_frontier.4bpp"); static const u16 sDoorNullPalette34[16] = {}; static const u8 sDoorAnimTiles_BattleDome[] = INCBIN_U8("graphics/door_anims/battle_dome.4bpp"); static const u16 sDoorNullPalette35[16] = {}; @@ -202,7 +202,7 @@ static const u8 sDoorAnimPalettes_AbandonedShipRoom[] = {7, 7, 7, 7, 7, 7, 7, 7} static const u8 sDoorAnimPalettes_LilycoveDeptStoreElevator[] = {6, 6, 7, 7, 7, 7, 7, 7}; static const u8 sDoorAnimPalettes_BattleTowerOld[] = {9, 9, 9, 9, 9, 9, 9, 9}; static const u8 sDoorAnimPalettes_BattleTowerElevator[] = {7, 7, 7, 7, 7, 7, 7, 7}; -static const u8 sDoorAnimPalettes_34[] = {9, 9, 9, 9, 9, 9, 9, 9}; +static const u8 sDoorAnimPalettes_UnusedBattleFrontier[] = {9, 9, 9, 9, 9, 9, 9, 9}; static const u8 sDoorAnimPalettes_BattleDome[] = {1, 1, 1, 1, 1, 1, 1, 1}; static const u8 sDoorAnimPalettes_BattleFactory[] = {9, 9, 9, 9, 9, 9, 9, 9}; static const u8 sDoorAnimPalettes_BattleTower[] = {0, 0, 0, 0, 0, 0, 0, 0}; @@ -256,7 +256,9 @@ static const struct DoorGraphics sDoorAnimGraphicsTable[] = {METATILE_Shop_Door_Elevator, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_LilycoveDeptStoreElevator, sDoorAnimPalettes_LilycoveDeptStoreElevator}, {METATILE_Dewford_Door_BattleTower, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_BattleTowerOld, sDoorAnimPalettes_BattleTowerOld}, {METATILE_BattleFrontier_Door_Elevator, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_BattleTowerElevator, sDoorAnimPalettes_BattleTowerElevator}, - {0x3B0, /* TODO: Missing metatile ID */ DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_34, sDoorAnimPalettes_34}, + // The metatile for this door doesn't seem to correspond to a door in any Emerald tileset. Given the surrounding door animations, it was likely cut from the Battle Frontier. + // From the palettes array we know it uses palette 9, and the door's shadow looks correct using either the Battle Tent or Battle Frontier Outside's 9th palette. + {0x3B0, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_UnusedBattleFrontier, sDoorAnimPalettes_UnusedBattleFrontier}, {METATILE_BattleFrontierOutsideWest_Door_BattleDome, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_BattleDome, sDoorAnimPalettes_BattleDome}, {METATILE_BattleFrontierOutsideWest_Door_BattleFactory, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_BattleFactory, sDoorAnimPalettes_BattleFactory}, {METATILE_BattleFrontierOutsideEast_Door_BattleTower, DOOR_SOUND_SLIDING, 1, sDoorAnimTiles_BattleTower, sDoorAnimPalettes_BattleTower}, @@ -278,6 +280,9 @@ static const struct DoorGraphics sDoorAnimGraphicsTable[] = {}, }; +// NOTE: The tiles of a door's animation must be copied to VRAM because they are not already part of any given tileset. +// This means that if there are any pre-existing tiles in this copied region that are visible when the door +// animation is played they will be overwritten. #define DOOR_TILE_START_SIZE1 (NUM_TILES_TOTAL - 8) #define DOOR_TILE_START_SIZE2 (NUM_TILES_TOTAL - 16) From 91baf086386aada0ffd33212f211738a74943c9a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 18 May 2022 22:11:51 -0400 Subject: [PATCH 578/762] Generalize usage of castformPalette --- src/battle_gfx_sfx_util.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 2a690d129d2a..ff391b24e5d1 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -590,7 +590,7 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId) if (species == SPECIES_CASTFORM) { paletteOffset = 0x100 + battlerId * 16; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette); LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); } @@ -653,7 +653,7 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId) if (species == SPECIES_CASTFORM) { paletteOffset = 0x100 + battlerId * 16; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette); LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); } @@ -973,7 +973,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 castform) if (targetSpecies == SPECIES_CASTFORM) { gSprites[gBattlerSpriteIds[battlerAtk]].anims = gMonFrontAnimsPtrTable[targetSpecies]; - LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[CASTFORM_NORMAL]); + LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette); LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerDef]], paletteOffset, 32); } From c8e08edbae06a71d237e0006bb74729c71b2f9b8 Mon Sep 17 00:00:00 2001 From: sneed Date: Mon, 23 May 2022 19:10:24 +0300 Subject: [PATCH 579/762] rename item1 and item2 in BaseStats --- include/pokemon.h | 4 +- src/data/pokemon/base_stats.h | 1548 ++++++++++++++++----------------- src/pokemon.c | 12 +- 3 files changed, 782 insertions(+), 782 deletions(-) diff --git a/include/pokemon.h b/include/pokemon.h index 8039a4fdd4ba..94a31bbe7c3b 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -212,8 +212,8 @@ struct BaseStats /* 0x0A */ u16 evYield_Speed:2; /* 0x0B */ u16 evYield_SpAttack:2; /* 0x0B */ u16 evYield_SpDefense:2; - /* 0x0C */ u16 item1; - /* 0x0E */ u16 item2; + /* 0x0C */ u16 itemCommon; + /* 0x0E */ u16 itemRare; /* 0x10 */ u8 genderRatio; /* 0x11 */ u8 eggCycles; /* 0x12 */ u8 friendship; diff --git a/src/data/pokemon/base_stats.h b/src/data/pokemon/base_stats.h index d851dfbe1acc..6b6ab12aacf7 100644 --- a/src/data/pokemon/base_stats.h +++ b/src/data/pokemon/base_stats.h @@ -20,8 +20,8 @@ .evYield_Speed = 2, \ .evYield_SpAttack = 2, \ .evYield_SpDefense = 2, \ - .item1 = ITEM_NONE, \ - .item2 = ITEM_NONE, \ + .itemCommon = ITEM_NONE, \ + .itemRare = ITEM_NONE, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ .friendship = 0, \ @@ -56,8 +56,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -88,8 +88,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -120,8 +120,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -152,8 +152,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -184,8 +184,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -216,8 +216,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -248,8 +248,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -280,8 +280,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -312,8 +312,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -344,8 +344,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -376,8 +376,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -408,8 +408,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_SILVER_POWDER, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SILVER_POWDER, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -440,8 +440,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -472,8 +472,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -504,8 +504,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_POISON_BARB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -536,8 +536,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -568,8 +568,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -600,8 +600,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 3, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -632,8 +632,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -664,8 +664,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -696,8 +696,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -728,8 +728,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SHARP_BEAK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -760,8 +760,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -792,8 +792,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -824,8 +824,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_ORAN_BERRY, - .item2 = ITEM_LIGHT_BALL, + .itemCommon = ITEM_ORAN_BERRY, + .itemRare = ITEM_LIGHT_BALL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, .friendship = 70, @@ -856,8 +856,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 3, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_ORAN_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_ORAN_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, .friendship = 70, @@ -888,8 +888,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_QUICK_CLAW, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_QUICK_CLAW, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -920,8 +920,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_QUICK_CLAW, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_QUICK_CLAW, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -952,8 +952,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 20, .friendship = 70, @@ -984,8 +984,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 20, .friendship = 70, @@ -1016,8 +1016,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 20, .friendship = 70, @@ -1048,8 +1048,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 20, .friendship = 70, @@ -1080,8 +1080,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 20, .friendship = 70, @@ -1112,8 +1112,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 20, .friendship = 70, @@ -1144,8 +1144,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_LEPPA_BERRY, - .item2 = ITEM_MOON_STONE, + .itemCommon = ITEM_LEPPA_BERRY, + .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 140, @@ -1176,8 +1176,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_LEPPA_BERRY, - .item2 = ITEM_MOON_STONE, + .itemCommon = ITEM_LEPPA_BERRY, + .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 140, @@ -1208,8 +1208,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -1240,8 +1240,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -1272,8 +1272,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 70, @@ -1304,8 +1304,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 70, @@ -1336,8 +1336,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -1368,8 +1368,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -1400,8 +1400,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1432,8 +1432,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1464,8 +1464,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1496,8 +1496,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_TINY_MUSHROOM, - .item2 = ITEM_BIG_MUSHROOM, + .itemCommon = ITEM_TINY_MUSHROOM, + .itemRare = ITEM_BIG_MUSHROOM, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1528,8 +1528,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_TINY_MUSHROOM, - .item2 = ITEM_BIG_MUSHROOM, + .itemCommon = ITEM_TINY_MUSHROOM, + .itemRare = ITEM_BIG_MUSHROOM, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1560,8 +1560,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1592,8 +1592,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1624,8 +1624,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1656,8 +1656,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1688,8 +1688,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1720,8 +1720,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1752,8 +1752,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1784,8 +1784,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1816,8 +1816,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1848,8 +1848,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1880,8 +1880,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -1912,8 +1912,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -1944,8 +1944,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -1976,8 +1976,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2008,8 +2008,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2040,8 +2040,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_TWISTED_SPOON, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_TWISTED_SPOON, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2072,8 +2072,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_TWISTED_SPOON, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_TWISTED_SPOON, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2104,8 +2104,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_TWISTED_SPOON, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_TWISTED_SPOON, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2136,8 +2136,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2168,8 +2168,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2200,8 +2200,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -2232,8 +2232,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2264,8 +2264,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2296,8 +2296,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2328,8 +2328,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2360,8 +2360,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2392,8 +2392,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_EVERSTONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_EVERSTONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -2424,8 +2424,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_EVERSTONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_EVERSTONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -2456,8 +2456,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_EVERSTONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_EVERSTONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -2488,8 +2488,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2520,8 +2520,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2552,8 +2552,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2584,8 +2584,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2616,8 +2616,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -2648,8 +2648,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -2680,8 +2680,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_STICK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_STICK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2712,8 +2712,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SHARP_BEAK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2744,8 +2744,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SHARP_BEAK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2776,8 +2776,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2808,8 +2808,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2840,8 +2840,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NUGGET, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NUGGET, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2872,8 +2872,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NUGGET, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NUGGET, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2904,8 +2904,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_PEARL, - .item2 = ITEM_BIG_PEARL, + .itemCommon = ITEM_PEARL, + .itemRare = ITEM_BIG_PEARL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2936,8 +2936,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_PEARL, - .item2 = ITEM_BIG_PEARL, + .itemCommon = ITEM_PEARL, + .itemRare = ITEM_BIG_PEARL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -2968,8 +2968,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3000,8 +3000,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3032,8 +3032,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3064,8 +3064,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -3096,8 +3096,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3128,8 +3128,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3160,8 +3160,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3192,8 +3192,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3224,8 +3224,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -3256,8 +3256,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -3288,8 +3288,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3320,8 +3320,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3352,8 +3352,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_THICK_CLUB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_THICK_CLUB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3384,8 +3384,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_THICK_CLUB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_THICK_CLUB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3416,8 +3416,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 25, .friendship = 70, @@ -3448,8 +3448,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 25, .friendship = 70, @@ -3480,8 +3480,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3512,8 +3512,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SMOKE_BALL, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SMOKE_BALL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3544,8 +3544,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SMOKE_BALL, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SMOKE_BALL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3576,8 +3576,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3608,8 +3608,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3640,8 +3640,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_LUCKY_EGG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_LUCKY_EGG, .genderRatio = MON_FEMALE, .eggCycles = 40, .friendship = 140, @@ -3672,8 +3672,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3704,8 +3704,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 20, .friendship = 70, @@ -3736,8 +3736,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3768,8 +3768,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3800,8 +3800,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3832,8 +3832,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -3864,8 +3864,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_STARDUST, - .item2 = ITEM_STAR_PIECE, + .itemCommon = ITEM_STARDUST, + .itemRare = ITEM_STAR_PIECE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -3896,8 +3896,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_STARDUST, - .item2 = ITEM_STAR_PIECE, + .itemCommon = ITEM_STARDUST, + .itemRare = ITEM_STAR_PIECE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -3928,8 +3928,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_LEPPA_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_LEPPA_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -3960,8 +3960,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -3992,8 +3992,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_ASPEAR_BERRY, - .item2 = ITEM_ASPEAR_BERRY, + .itemCommon = ITEM_ASPEAR_BERRY, + .itemRare = ITEM_ASPEAR_BERRY, .genderRatio = MON_FEMALE, .eggCycles = 25, .friendship = 70, @@ -4024,8 +4024,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 25, .friendship = 70, @@ -4056,8 +4056,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 25, .friendship = 70, @@ -4088,8 +4088,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -4120,8 +4120,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 20, .friendship = 70, @@ -4152,8 +4152,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 5, .friendship = 70, @@ -4184,8 +4184,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 5, .friendship = 70, @@ -4216,8 +4216,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 70, @@ -4248,8 +4248,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_POWDER, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_POWDER, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -4280,8 +4280,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -4312,8 +4312,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -4344,8 +4344,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -4376,8 +4376,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -4408,8 +4408,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -4440,8 +4440,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -4472,8 +4472,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -4504,8 +4504,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -4536,8 +4536,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -4568,8 +4568,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -4600,8 +4600,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_LEFTOVERS, - .item2 = ITEM_LEFTOVERS, + .itemCommon = ITEM_LEFTOVERS, + .itemRare = ITEM_LEFTOVERS, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 40, .friendship = 70, @@ -4632,8 +4632,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -4664,8 +4664,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -4696,8 +4696,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -4728,8 +4728,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -4760,8 +4760,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -4792,8 +4792,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -4824,8 +4824,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -4856,8 +4856,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_LUM_BERRY, - .item2 = ITEM_LUM_BERRY, + .itemCommon = ITEM_LUM_BERRY, + .itemRare = ITEM_LUM_BERRY, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 100, @@ -4888,8 +4888,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -4920,8 +4920,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -4952,8 +4952,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -4984,8 +4984,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5016,8 +5016,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5048,8 +5048,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5080,8 +5080,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5112,8 +5112,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5144,8 +5144,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -5176,8 +5176,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_ORAN_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_ORAN_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5208,8 +5208,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_ORAN_BERRY, - .item2 = ITEM_SITRUS_BERRY, + .itemCommon = ITEM_ORAN_BERRY, + .itemRare = ITEM_SITRUS_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5240,8 +5240,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5272,8 +5272,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5304,8 +5304,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5336,8 +5336,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5368,8 +5368,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5400,8 +5400,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5432,8 +5432,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 3, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -5464,8 +5464,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_YELLOW_SHARD, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_YELLOW_SHARD, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5496,8 +5496,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_YELLOW_SHARD, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_YELLOW_SHARD, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5528,8 +5528,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_ORAN_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_ORAN_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, .friendship = 70, @@ -5560,8 +5560,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_LEPPA_BERRY, - .item2 = ITEM_MOON_STONE, + .itemCommon = ITEM_LEPPA_BERRY, + .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 140, @@ -5592,8 +5592,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 70, @@ -5624,8 +5624,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 10, .friendship = 70, @@ -5656,8 +5656,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 10, .friendship = 70, @@ -5688,8 +5688,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5720,8 +5720,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5752,8 +5752,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5784,8 +5784,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5816,8 +5816,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5848,8 +5848,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5880,8 +5880,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, .friendship = 70, @@ -5912,8 +5912,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, .friendship = 70, @@ -5944,8 +5944,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -5976,8 +5976,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6008,8 +6008,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6040,8 +6040,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6072,8 +6072,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 3, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6104,8 +6104,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6136,8 +6136,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6168,8 +6168,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6200,8 +6200,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6232,8 +6232,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6264,8 +6264,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6296,8 +6296,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 70, @@ -6328,8 +6328,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, .friendship = 35, @@ -6360,8 +6360,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -6392,8 +6392,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6424,8 +6424,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_SPELL_TAG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -6456,8 +6456,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 40, .friendship = 70, @@ -6488,8 +6488,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6520,8 +6520,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_PERSIM_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_PERSIM_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6552,8 +6552,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6584,8 +6584,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6616,8 +6616,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6648,8 +6648,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6680,8 +6680,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -6712,8 +6712,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -6744,8 +6744,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -6776,8 +6776,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6808,8 +6808,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -6840,8 +6840,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_ORAN_BERRY, - .item2 = ITEM_ORAN_BERRY, + .itemCommon = ITEM_ORAN_BERRY, + .itemRare = ITEM_ORAN_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6872,8 +6872,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -6904,8 +6904,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_QUICK_CLAW, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_QUICK_CLAW, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -6936,8 +6936,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -6968,8 +6968,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7000,8 +7000,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7032,8 +7032,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7064,8 +7064,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7096,8 +7096,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7128,8 +7128,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_RED_SHARD, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_RED_SHARD, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -7160,8 +7160,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7192,8 +7192,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7224,8 +7224,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7256,8 +7256,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -7288,8 +7288,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -7320,8 +7320,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -7352,8 +7352,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -7384,8 +7384,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7416,8 +7416,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7448,8 +7448,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7480,8 +7480,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -7512,8 +7512,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7544,8 +7544,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -7576,8 +7576,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 25, .friendship = 70, @@ -7608,8 +7608,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 25, .friendship = 70, @@ -7640,8 +7640,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_ASPEAR_BERRY, - .item2 = ITEM_ASPEAR_BERRY, + .itemCommon = ITEM_ASPEAR_BERRY, + .itemRare = ITEM_ASPEAR_BERRY, .genderRatio = MON_FEMALE, .eggCycles = 25, .friendship = 70, @@ -7672,8 +7672,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 25, .friendship = 70, @@ -7704,8 +7704,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 25, .friendship = 70, @@ -7736,8 +7736,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_MOOMOO_MILK, - .item2 = ITEM_MOOMOO_MILK, + .itemCommon = ITEM_MOOMOO_MILK, + .itemRare = ITEM_MOOMOO_MILK, .genderRatio = MON_FEMALE, .eggCycles = 20, .friendship = 70, @@ -7768,8 +7768,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_LUCKY_EGG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_LUCKY_EGG, .genderRatio = MON_FEMALE, .eggCycles = 40, .friendship = 140, @@ -7800,8 +7800,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -7832,8 +7832,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -7864,8 +7864,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -7896,8 +7896,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -7928,8 +7928,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -7960,8 +7960,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -7992,8 +7992,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -8024,8 +8024,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_SACRED_ASH, - .item2 = ITEM_SACRED_ASH, + .itemCommon = ITEM_SACRED_ASH, + .itemRare = ITEM_SACRED_ASH, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -8056,8 +8056,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_LUM_BERRY, - .item2 = ITEM_LUM_BERRY, + .itemCommon = ITEM_LUM_BERRY, + .itemRare = ITEM_LUM_BERRY, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 100, @@ -8138,8 +8138,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8170,8 +8170,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8202,8 +8202,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 3, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8234,8 +8234,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8266,8 +8266,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8298,8 +8298,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8330,8 +8330,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8362,8 +8362,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8394,8 +8394,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, .friendship = 70, @@ -8426,8 +8426,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_PECHA_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_PECHA_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8458,8 +8458,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_PECHA_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_PECHA_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8490,8 +8490,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_ORAN_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_ORAN_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8522,8 +8522,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_ORAN_BERRY, - .item2 = ITEM_SITRUS_BERRY, + .itemCommon = ITEM_ORAN_BERRY, + .itemRare = ITEM_SITRUS_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8554,8 +8554,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8586,8 +8586,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8618,8 +8618,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SILVER_POWDER, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SILVER_POWDER, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8650,8 +8650,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8682,8 +8682,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_SILVER_POWDER, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SILVER_POWDER, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8714,8 +8714,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8746,8 +8746,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8778,8 +8778,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8810,8 +8810,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8842,8 +8842,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8874,8 +8874,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8906,8 +8906,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8938,8 +8938,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -8970,8 +8970,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 15, .friendship = 70, @@ -9002,8 +9002,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9034,8 +9034,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9066,8 +9066,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9098,8 +9098,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9130,8 +9130,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_CHESTO_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_CHESTO_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9162,8 +9162,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9194,8 +9194,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9226,8 +9226,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9258,8 +9258,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_SILVER_POWDER, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SILVER_POWDER, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9290,8 +9290,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 70, @@ -9322,8 +9322,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 70, @@ -9354,8 +9354,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_LEPPA_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_LEPPA_BERRY, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 15, .friendship = 70, @@ -9386,8 +9386,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_LEPPA_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_LEPPA_BERRY, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 15, .friendship = 70, @@ -9418,8 +9418,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_PERSIM_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_PERSIM_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9450,8 +9450,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -9482,8 +9482,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 20, .friendship = 70, @@ -9514,8 +9514,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9546,8 +9546,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9578,8 +9578,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -9610,8 +9610,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9642,8 +9642,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9674,8 +9674,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_HEART_SCALE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_HEART_SCALE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, .friendship = 70, @@ -9706,8 +9706,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9738,8 +9738,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -9770,8 +9770,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9802,8 +9802,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9834,8 +9834,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -9866,8 +9866,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -9898,8 +9898,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SOFT_SAND, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SOFT_SAND, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9930,8 +9930,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9962,8 +9962,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -9994,8 +9994,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -10026,8 +10026,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_KINGS_ROCK, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, .friendship = 70, @@ -10058,8 +10058,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10090,8 +10090,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10122,8 +10122,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10154,8 +10154,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_RAWST_BERRY, - .item2 = ITEM_RAWST_BERRY, + .itemCommon = ITEM_RAWST_BERRY, + .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10186,8 +10186,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10218,8 +10218,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10250,8 +10250,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10282,8 +10282,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_POISON_BARB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -10314,8 +10314,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_POISON_BARB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -10346,8 +10346,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10378,8 +10378,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NEVER_MELT_ICE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NEVER_MELT_ICE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10410,8 +10410,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_MOON_STONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_MOON_STONE, .genderRatio = MON_GENDERLESS, .eggCycles = 25, .friendship = 70, @@ -10442,8 +10442,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SUN_STONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SUN_STONE, .genderRatio = MON_GENDERLESS, .eggCycles = 25, .friendship = 70, @@ -10474,8 +10474,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, .friendship = 70, @@ -10506,8 +10506,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10538,8 +10538,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10570,8 +10570,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10602,8 +10602,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10634,8 +10634,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10666,8 +10666,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10698,8 +10698,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10730,8 +10730,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10762,8 +10762,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10794,8 +10794,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10826,8 +10826,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_SPELL_TAG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -10858,8 +10858,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_SPELL_TAG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -10890,8 +10890,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_POISON_BARB, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -10922,8 +10922,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -10954,8 +10954,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 2, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -10986,8 +10986,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, .friendship = 70, @@ -11018,8 +11018,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_BIG_PEARL, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_BIG_PEARL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11050,8 +11050,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_BIG_PEARL, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_BIG_PEARL, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11082,8 +11082,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -11114,8 +11114,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_CHESTO_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_CHESTO_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11146,8 +11146,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_CHESTO_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_CHESTO_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11178,8 +11178,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_CHESTO_BERRY, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_CHESTO_BERRY, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11210,8 +11210,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_BLUE_SHARD, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_BLUE_SHARD, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11242,8 +11242,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11274,8 +11274,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11306,8 +11306,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -11338,8 +11338,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SPELL_TAG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -11370,8 +11370,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_SPELL_TAG, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 35, @@ -11402,8 +11402,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11434,8 +11434,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 70, @@ -11466,8 +11466,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_GREEN_SHARD, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_GREEN_SHARD, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 40, .friendship = 70, @@ -11498,8 +11498,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_HARD_STONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 35, .friendship = 35, @@ -11530,8 +11530,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_HARD_STONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 35, .friendship = 35, @@ -11562,8 +11562,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_HARD_STONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 35, .friendship = 35, @@ -11594,8 +11594,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_MYSTIC_WATER, - .item2 = ITEM_MYSTIC_WATER, + .itemCommon = ITEM_MYSTIC_WATER, + .itemRare = ITEM_MYSTIC_WATER, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, @@ -11626,8 +11626,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 15, .friendship = 70, @@ -11658,8 +11658,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 15, .friendship = 70, @@ -11690,8 +11690,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -11722,8 +11722,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 2, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -11754,8 +11754,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -11786,8 +11786,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, .friendship = 70, @@ -11818,8 +11818,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -11850,8 +11850,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 2, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -11882,8 +11882,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, .friendship = 35, @@ -11914,8 +11914,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -11946,8 +11946,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -11978,8 +11978,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_DRAGON_SCALE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, .friendship = 35, @@ -12010,8 +12010,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, .eggCycles = 40, .friendship = 35, @@ -12042,8 +12042,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, .eggCycles = 40, .friendship = 35, @@ -12074,8 +12074,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_METAL_COAT, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, .eggCycles = 40, .friendship = 35, @@ -12106,8 +12106,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -12138,8 +12138,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -12170,8 +12170,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 80, .friendship = 35, @@ -12202,8 +12202,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -12234,8 +12234,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -12266,8 +12266,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -12298,8 +12298,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 3, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_FEMALE, .eggCycles = 120, .friendship = 90, @@ -12330,8 +12330,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 3, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_MALE, .eggCycles = 120, .friendship = 90, @@ -12362,8 +12362,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 0, .evYield_SpDefense = 0, - .item1 = ITEM_STAR_PIECE, - .item2 = ITEM_STAR_PIECE, + .itemCommon = ITEM_STAR_PIECE, + .itemRare = ITEM_STAR_PIECE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 100, @@ -12394,8 +12394,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 0, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = MON_GENDERLESS, .eggCycles = 120, .friendship = 0, @@ -12426,8 +12426,8 @@ const struct BaseStats gBaseStats[] = .evYield_Speed = 0, .evYield_SpAttack = 1, .evYield_SpDefense = 1, - .item1 = ITEM_NONE, - .item2 = ITEM_NONE, + .itemCommon = ITEM_NONE, + .itemRare = ITEM_NONE, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, .friendship = 70, diff --git a/src/pokemon.c b/src/pokemon.c index 61125e36204d..0ee93bd5b50b 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6610,26 +6610,26 @@ void SetWildMonHeldItem(void) if (rnd < chanceNoItem) return; if (rnd < chanceCommon) - SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); + SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); else - SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item2); + SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); } } else { - if (gBaseStats[species].item1 == gBaseStats[species].item2 && gBaseStats[species].item1 != ITEM_NONE) + if (gBaseStats[species].itemCommon == gBaseStats[species].itemRare && gBaseStats[species].itemCommon != ITEM_NONE) { // Both held items are the same, 100% chance to hold item - SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); + SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); } else { if (rnd < chanceNoItem) return; if (rnd < chanceCommon) - SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1); + SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); else - SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item2); + SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); } } } From c316b11739654d84003d72f493a7c3967d620798 Mon Sep 17 00:00:00 2001 From: sneed Date: Tue, 24 May 2022 00:53:09 +0300 Subject: [PATCH 580/762] chanceCommon to chanceNotRare --- src/pokemon.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pokemon.c b/src/pokemon.c index 0ee93bd5b50b..7cdad72e94fe 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6587,12 +6587,12 @@ void SetWildMonHeldItem(void) u16 rnd = Random() % 100; u16 species = GetMonData(&gEnemyParty[0], MON_DATA_SPECIES, 0); u16 chanceNoItem = 45; - u16 chanceCommon = 95; + u16 chanceNotRare = 95; if (!GetMonData(&gPlayerParty[0], MON_DATA_SANITY_IS_EGG, 0) && GetMonAbility(&gPlayerParty[0]) == ABILITY_COMPOUND_EYES) { chanceNoItem = 20; - chanceCommon = 80; + chanceNotRare = 80; } if (gMapHeader.mapLayoutId == LAYOUT_ALTERING_CAVE) { @@ -6600,7 +6600,7 @@ void SetWildMonHeldItem(void) if (alteringCaveId != 0) { // In active Altering Cave, use special item list - if (rnd < chanceCommon) + if (rnd < chanceNotRare) return; SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &sAlteringCaveWildMonHeldItems[alteringCaveId].item); } @@ -6609,7 +6609,7 @@ void SetWildMonHeldItem(void) // In inactive Altering Cave, use normal items if (rnd < chanceNoItem) return; - if (rnd < chanceCommon) + if (rnd < chanceNotRare) SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); else SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); @@ -6626,7 +6626,7 @@ void SetWildMonHeldItem(void) { if (rnd < chanceNoItem) return; - if (rnd < chanceCommon) + if (rnd < chanceNotRare) SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); else SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); From 5c92062c23a1d00344a6d7478f31c7c05bbd659c Mon Sep 17 00:00:00 2001 From: sneed Date: Wed, 25 May 2022 08:37:36 +0300 Subject: [PATCH 581/762] Update pokemon_summary_screen.c --- src/pokemon_summary_screen.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 10c69a4226d9..bbc8fef4c660 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -2439,7 +2439,7 @@ static void Task_ShowPowerAccWindow(u8 taskId) { if (data[0] < 0) { - if (sMonSummaryScreen->currPageIndex == 2) + if (sMonSummaryScreen->currPageIndex == PSS_PAGE_BATTLE_MOVES) PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_POWER_ACC); } else @@ -2492,7 +2492,7 @@ static void Task_ShowAppealJamWindow(u8 taskId) { if (data[0] < 0) { - if (sMonSummaryScreen->currPageIndex == 3 && FuncIsActiveTask(PssScrollRight) == 0) + if (sMonSummaryScreen->currPageIndex == PSS_PAGE_CONTEST_MOVES && FuncIsActiveTask(PssScrollRight) == 0) PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM); DrawContestMoveHearts(data[2]); } From a913191323287f2c27abbf2a524b492da5add3f0 Mon Sep 17 00:00:00 2001 From: sneed Date: Wed, 25 May 2022 16:07:54 +0300 Subject: [PATCH 582/762] Document DrawPagination --- src/pokemon_summary_screen.c | 64 ++++++++++++++++++------------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index bbc8fef4c660..b2bcce6cbf00 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -2314,69 +2314,69 @@ u8 GetMoveSlotToReplace(void) static void DrawPagination(void) // Updates the pagination dots at the top of the summary screen { - u16 *alloced = Alloc(32); + u16 *tilemap = Alloc(8 * PSS_PAGE_COUNT); u8 i; - for (i = 0; i < 4; i++) + for (i = 0; i < PSS_PAGE_COUNT; i++) { u8 j = i * 2; if (i < sMonSummaryScreen->minPageIndex) { - alloced[j + 0] = 0x40; - alloced[j + 1] = 0x40; - alloced[j + 8] = 0x50; - alloced[j + 9] = 0x50; + tilemap[j + 0] = 0x40; + tilemap[j + 1] = 0x40; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x50; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x50; } else if (i > sMonSummaryScreen->maxPageIndex) { - alloced[j + 0] = 0x4A; - alloced[j + 1] = 0x4A; - alloced[j + 8] = 0x5A; - alloced[j + 9] = 0x5A; + tilemap[j + 0] = 0x4A; + tilemap[j + 1] = 0x4A; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x5A; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x5A; } else if (i < sMonSummaryScreen->currPageIndex) { - alloced[j + 0] = 0x46; - alloced[j + 1] = 0x47; - alloced[j + 8] = 0x56; - alloced[j + 9] = 0x57; + tilemap[j + 0] = 0x46; + tilemap[j + 1] = 0x47; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x56; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x57; } else if (i == sMonSummaryScreen->currPageIndex) { if (i != sMonSummaryScreen->maxPageIndex) { - alloced[j + 0] = 0x41; - alloced[j + 1] = 0x42; - alloced[j + 8] = 0x51; - alloced[j + 9] = 0x52; + tilemap[j + 0] = 0x41; + tilemap[j + 1] = 0x42; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x51; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x52; } else { - alloced[j + 0] = 0x4B; - alloced[j + 1] = 0x4C; - alloced[j + 8] = 0x5B; - alloced[j + 9] = 0x5C; + tilemap[j + 0] = 0x4B; + tilemap[j + 1] = 0x4C; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x5B; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x5C; } } else if (i != sMonSummaryScreen->maxPageIndex) { - alloced[j + 0] = 0x43; - alloced[j + 1] = 0x44; - alloced[j + 8] = 0x53; - alloced[j + 9] = 0x54; + tilemap[j + 0] = 0x43; + tilemap[j + 1] = 0x44; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x53; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x54; } else { - alloced[j + 0] = 0x48; - alloced[j + 1] = 0x49; - alloced[j + 8] = 0x58; - alloced[j + 9] = 0x59; + tilemap[j + 0] = 0x48; + tilemap[j + 1] = 0x49; + tilemap[j + 2 * PSS_PAGE_COUNT] = 0x58; + tilemap[j + 2 * PSS_PAGE_COUNT + 1] = 0x59; } } - CopyToBgTilemapBufferRect_ChangePalette(3, alloced, 11, 0, 8, 2, 16); + CopyToBgTilemapBufferRect_ChangePalette(3, tilemap, 11, 0, PSS_PAGE_COUNT * 2, 2, 16); ScheduleBgCopyTilemapToVram(3); - Free(alloced); + Free(tilemap); } static void ChangeTilemap(const struct TilemapCtrl *unkStruct, u16 *dest, u8 c, bool8 d) From 1cc59acca9583453c08828b693331eb15483457f Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Wed, 25 May 2022 17:46:48 +0100 Subject: [PATCH 583/762] Static assertion for size of save structs --- include/global.h | 4 ++++ src/ereader_helpers.c | 2 ++ src/hall_of_fame.c | 2 ++ src/recorded_battle.c | 2 ++ src/save.c | 6 ++++++ 5 files changed, 16 insertions(+) diff --git a/include/global.h b/include/global.h index 89f725176721..60476b13f1e9 100644 --- a/include/global.h +++ b/include/global.h @@ -135,6 +135,10 @@ #define NUM_FLAG_BYTES ROUND_BITS_TO_BYTES(FLAGS_COUNT) #define NUM_ADDITIONAL_PHRASE_BYTES ROUND_BITS_TO_BYTES(NUM_ADDITIONAL_PHRASES) +// This produces an error at compile-time if expr is zero. +// It looks like file.c:line: size of array `id' is negative +#define STATIC_ASSERT(expr, id) typedef char id[(expr) ? 1 : -1]; + struct Coords8 { s8 x; diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index ac6e0e1e1ca0..cf3ca16c312e 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -15,6 +15,8 @@ #include "constants/items.h" #include "constants/trainer_hill.h" +STATIC_ASSERT(sizeof(struct TrainerHillChallenge) <= SECTOR_DATA_SIZE, TrainerHillChallengeFreeSpace); + struct SendRecvMgr { bool8 isParent; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index d134f22654c2..fe19ae77b0e5 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -52,6 +52,8 @@ struct HallofFameTeam struct HallofFameMon mon[PARTY_SIZE]; }; +STATIC_ASSERT(sizeof(struct HallofFameTeam) * HALL_OF_FAME_MAX_TEAMS <= SECTOR_DATA_SIZE * NUM_HOF_SECTORS, HallOfFameFreeSpace); + struct HofGfx { u16 state; diff --git a/src/recorded_battle.c b/src/recorded_battle.c index fd2b3a06b3a4..951572636a16 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -67,6 +67,8 @@ struct RecordedBattleSave u32 checksum; }; +STATIC_ASSERT(sizeof(struct RecordedBattleSave) <= SECTOR_DATA_SIZE, RecordedBattleSaveFreeSpace); + EWRAM_DATA u32 gRecordedBattleRngSeed = 0; EWRAM_DATA u32 gBattlePalaceMoveSelectionRngValue = 0; EWRAM_DATA static u8 sBattleRecords[MAX_BATTLERS_COUNT][BATTLER_RECORD_SIZE] = {0}; diff --git a/src/save.c b/src/save.c index dafc20868edd..52cdaa5ddcb3 100644 --- a/src/save.c +++ b/src/save.c @@ -73,6 +73,12 @@ struct SAVEBLOCK_CHUNK(struct PokemonStorage, 8), // SECTOR_ID_PKMN_STORAGE_END }; +// These will produce an error if a save struct is larger than the space +// alloted for it in the flash. +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; From 75a44fdd796adbdf0cc4841d09fe4c9ad2066dec Mon Sep 17 00:00:00 2001 From: BlackShark Date: Fri, 27 May 2022 02:18:52 +0200 Subject: [PATCH 584/762] use more true & false constants --- src/battle_anim_ghost.c | 4 ++-- src/battle_anim_status_effects.c | 2 +- src/battle_interface.c | 4 ++-- src/battle_util.c | 2 +- src/berry_crush.c | 6 +++--- src/decoration.c | 4 ++-- src/field_message_box.c | 2 +- src/hall_of_fame.c | 6 +++--- src/intro.c | 4 ++-- src/item_menu.c | 2 +- src/mauville_old_man.c | 2 +- src/party_menu.c | 2 +- src/player_pc.c | 6 +++--- src/record_mixing.c | 2 +- src/slot_machine.c | 8 ++++---- 15 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 02b89b965a8d..c004ae1daa2d 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -653,9 +653,9 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId) startLine = 0; if (position == 1) - task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG1HOFS, 1); + task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG1HOFS, TRUE); else - task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG2HOFS, 1); + task->data[10] = ScanlineEffect_InitWave(startLine, startLine + 64, 2, 6, 0, SCANLINE_EFFECT_REG_BG2HOFS, TRUE); task->data[15]++; break; diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 47ba00c907ef..f56d04ccd13d 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -549,7 +549,7 @@ void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId) gBattleAnimAttacker = battlerId; gBattleAnimTarget = battlerId; - LaunchBattleAnimation(gBattleAnims_StatusConditions, statusAnimId, 0); + LaunchBattleAnimation(gBattleAnims_StatusConditions, statusAnimId, FALSE); taskId = CreateTask(Task_DoStatusAnimation, 10); gTasks[taskId].data[0] = battlerId; } diff --git a/src/battle_interface.c b/src/battle_interface.c index 26209fe2d7fe..12d367526efe 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -817,8 +817,8 @@ static void Debug_DrawNumber(s16 number, u16 *dest, bool8 unk) static void Debug_DrawNumberPair(s16 number1, s16 number2, u16 *arg2) { arg2[4] = 0x1E; - Debug_DrawNumber(number2, arg2, 0); - Debug_DrawNumber(number1, arg2 + 5, 1); + Debug_DrawNumber(number2, arg2, FALSE); + Debug_DrawNumber(number1, arg2 + 5, TRUE); } // Because the healthbox is too large to fit into one sprite, it is divided into two sprites. diff --git a/src/battle_util.c b/src/battle_util.c index 6bb6d9ae4aa0..f34c39eb044a 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1190,7 +1190,7 @@ u8 DoFieldEndTurnEffects(void) s32 j; for (j = i + 1; j < gBattlersCount; j++) { - if (GetWhoStrikesFirst(gBattlerByTurnOrder[i], gBattlerByTurnOrder[j], 0)) + if (GetWhoStrikesFirst(gBattlerByTurnOrder[i], gBattlerByTurnOrder[j], FALSE)) SwapTurnOrder(i, j); } } diff --git a/src/berry_crush.c b/src/berry_crush.c index e7a5df951c63..e6e2d874277e 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -2254,7 +2254,7 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) switch (game->cmdState) { case 0: - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); if (args[1] & F_MSG_EXPAND) { StringExpandPlaceholders(gStringVar4, sMessages[args[0]]); @@ -3241,7 +3241,7 @@ static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) case 2: if (!IsLinkTaskFinished()) return 0; - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); CreateTask(Task_LinkFullSave, 0); @@ -3389,7 +3389,7 @@ static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args) switch (game->cmdState) { case 0: - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); if (game->playAgainState == PLAY_AGAIN_NO_BERRIES) AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); else diff --git a/src/decoration.c b/src/decoration.c index 7e102251a470..547b05acf41b 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -826,7 +826,7 @@ static void ReturnToActionsMenuFromCategories(u8 taskId) { RemoveDecorationWindow(WINDOW_DECORATION_CATEGORIES); AddDecorationActionsWindow(); - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); PrintCurMainMenuDescription(); gTasks[taskId].func = HandleDecorationActionsMenuInput; } @@ -2664,7 +2664,7 @@ static void FieldCB_StopPuttingAwayDecorations(void) u8 taskId; FadeInFromBlack(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); InitDecorationActionsWindow(); taskId = CreateTask(Task_ReinitializeDecorationMenuHandler, 8); gTasks[taskId].tState = 0; diff --git a/src/field_message_box.c b/src/field_message_box.c index 74afb567769f..95d0a94c961c 100755 --- a/src/field_message_box.c +++ b/src/field_message_box.c @@ -33,7 +33,7 @@ static void Task_DrawFieldMessage(u8 taskId) task->tState++; break; case 1: - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); task->tState++; break; case 2: diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index fe19ae77b0e5..a195bddcf115 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -514,7 +514,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) } *lastSavedTeam = *sHofMonPtr; - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_TrySaveData; @@ -724,7 +724,7 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); HallOfFame_PrintPlayerInfo(1, 2); - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_LeagueChamp, 0, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_ExitOnKeyPressed; @@ -1093,7 +1093,7 @@ static void Task_HofPC_HandleExit(u8 taskId) static void Task_HofPC_PrintDataIsCorrupted(u8 taskId) { HofPCTopBar_Print(gText_AButtonExit, 8, TRUE); - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_HofPC_ExitOnButtonPress; diff --git a/src/intro.c b/src/intro.c index 827ce80be8d1..a1d0508f4f4f 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1848,7 +1848,7 @@ static void Task_Scene3_StartGroudon(u8 taskId) { gTasks[taskId].tState = 0; gTasks[taskId].func = Task_Scene3_Groudon; - ScanlineEffect_InitWave(0, 160, 4, 4, 1, SCANLINE_EFFECT_REG_BG1HOFS, 0); + ScanlineEffect_InitWave(0, 160, 4, 4, 1, SCANLINE_EFFECT_REG_BG1HOFS, FALSE); } #define tScreenX data[1] @@ -2058,7 +2058,7 @@ static void Task_Scene3_LoadKyogre(u8 taskId) gTasks[taskId].tDelay = 16; gTasks[taskId].tZoom = 256; PanFadeAndZoomScreen(gTasks[taskId].tScreenX, gTasks[taskId].tScreenY, gTasks[taskId].tZoom, 0); - ScanlineEffect_InitWave(0, 0xA0, 4, 4, 1, SCANLINE_EFFECT_REG_BG1VOFS, 0); + ScanlineEffect_InitWave(0, 0xA0, 4, 4, 1, SCANLINE_EFFECT_REG_BG1VOFS, FALSE); } static void Task_Scene3_Kyogre(u8 taskId) diff --git a/src/item_menu.c b/src/item_menu.c index 9eaca9597d23..cd0bc159d67b 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -1344,7 +1344,7 @@ static void SwitchBagPocket(u8 taskId, s16 deltaBagPocketId, bool16 skipEraseLis DrawPocketIndicatorSquare(newPocket, TRUE); FillBgTilemapBufferRect_Palette0(2, 11, 14, 2, 15, 16); ScheduleBgCopyTilemapToVram(2); - SetBagVisualPocketId(newPocket, 1); + SetBagVisualPocketId(newPocket, TRUE); RemoveBagSprite(ITEMMENUSPRITE_BALL); AddSwitchPocketRotatingBallSprite(deltaBagPocketId); SetTaskFuncWithFollowupFunc(taskId, Task_SwitchBagPocket, gTasks[taskId].func); diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 681a3dadfdc5..8dbe8b48591c 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -445,7 +445,7 @@ static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) static void DrawSongTextWindow(const u8 * str) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, str, 0, 1, 1, DisableTextPrinters); gDisableTextPrinters = TRUE; CopyWindowToVram(0, COPYWIN_FULL); diff --git a/src/party_menu.c b/src/party_menu.c index e15d001c6d22..cbe127bb9ec9 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -4969,7 +4969,7 @@ static void Task_TryLearnNewMoves(u8 taskId) { u16 learnMove; - if (WaitFanfare(0) && ((JOY_NEW(A_BUTTON)) || (JOY_NEW(B_BUTTON)))) + if (WaitFanfare(FALSE) && ((JOY_NEW(A_BUTTON)) || (JOY_NEW(B_BUTTON)))) { RemoveLevelUpStatsWindow(); learnMove = MonTryLearningNewMove(&gPlayerParty[gPartyMenu.slotId], TRUE); diff --git a/src/player_pc.c b/src/player_pc.c index bf8479ce1155..a5ce89da4bac 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -518,7 +518,7 @@ static void InitItemStorageMenu(u8 taskId, u8 var) static void ItemStorageMenuPrint(const u8 *textPtr) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, textPtr, 0, 1, 0, 0); } @@ -572,7 +572,7 @@ void CB2_PlayerPCExitBagMenu(void) static void ItemStorage_ReshowAfterBagMenu(void) { LoadMessageBoxAndBorderGfx(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); InitItemStorageMenu(CreateTask(ItemStorage_HandleReturnToProcessInput, 0), 1); FadeInFromBlack(); } @@ -1241,7 +1241,7 @@ static void ItemStorage_ReturnToMenuSelect(u8 taskId) s16 *data = gTasks[taskId].data; if (!IsDma3ManagerBusyWithBgCopy()) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); // Select Withdraw/Toss by default depending on which was just exited if (!tInTossMenu) diff --git a/src/record_mixing.c b/src/record_mixing.c index 6efded838861..4365f2cb3d99 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -285,7 +285,7 @@ static void ReceiveExchangePacket(u32 multiplayerId) static void PrintTextOnRecordMixing(const u8 *src) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, src, 0, 1, 0, NULL); CopyWindowToVram(0, COPYWIN_FULL); } diff --git a/src/slot_machine.c b/src/slot_machine.c index 1dfa026e5f3d..828d0c1611aa 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1390,7 +1390,7 @@ static bool8 SlotTask_HandleBetInput(struct Task *task) // SLOTTASK_MSG_NEED_3_COINS static bool8 SlotTask_PrintMsg_Need3Coins(struct Task *task) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouDontHaveThreeCoins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOTTASK_WAIT_MSG_NEED_3_COINS; @@ -1655,7 +1655,7 @@ static bool8 SlotTask_NoMatches(struct Task *task) // SLOTTASK_ASK_QUIT static bool8 SlotTask_AskQuit(struct Task *task) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gText_QuitTheGame, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); CreateYesNoMenuParameterized(0x15, 7, 0x214, 0x180, 0xE, 0xF); @@ -1687,7 +1687,7 @@ static bool8 SlotTask_HandleQuitInput(struct Task *task) // SLOTTASK_MSG_MAX_COINS static bool8 SlotTask_PrintMsg_MaxCoins(struct Task *task) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveGot9999Coins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOTTASK_WAIT_MSG_MAX_COINS; @@ -1708,7 +1708,7 @@ static bool8 SlotTask_WaitMsg_MaxCoins(struct Task *task) // SLOTTASK_MSG_NO_MORE_COINS static bool8 SlotTask_PrintMsg_NoMoreCoins(struct Task *task) { - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); AddTextPrinterParameterized(0, FONT_NORMAL, gText_YouveRunOutOfCoins, 0, 1, 0, 0); CopyWindowToVram(0, COPYWIN_FULL); sSlotMachine->state = SLOTTASK_WAIT_MSG_NO_MORE_COINS; From 5e6d8a77e43352487046631d6329a9c15254f7d0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 21 May 2022 15:21:50 -0400 Subject: [PATCH 585/762] Document some generic argument names --- include/battle_anim.h | 6 +- include/battle_controllers.h | 14 +- include/battle_gfx_sfx_util.h | 2 +- include/battle_interface.h | 2 +- include/battle_setup.h | 2 +- include/battle_util.h | 2 +- include/digit_obj_util.h | 4 +- include/evolution_graphics.h | 2 +- include/fldeff_misc.h | 2 +- include/list_menu.h | 8 +- include/menu.h | 2 +- include/menu_helpers.h | 6 +- include/menu_specialized.h | 2 +- include/pokemon.h | 6 +- include/pokemon_storage_system.h | 4 +- include/pokenav.h | 12 +- include/trainer_card.h | 2 +- src/bard_music.c | 4 +- src/battle_anim_effects_3.c | 245 ++++++++++++++++++++----------- src/battle_controller_player.c | 30 ++-- src/battle_controllers.c | 26 ++-- src/battle_dome.c | 49 +++---- src/battle_gfx_sfx_util.c | 6 +- src/battle_interface.c | 72 ++++----- src/battle_pyramid.c | 12 +- src/evolution_graphics.c | 162 ++++++++++---------- src/list_menu.c | 8 +- src/menu_helpers.c | 47 +++--- src/mystery_gift_client.c | 2 +- src/pokeball.c | 48 +++--- src/pokemon.c | 4 +- src/pokemon_jump.c | 4 +- src/pokemon_storage_system.c | 4 +- src/pokenav_conditions.c | 4 +- src/rotating_tile_puzzle.c | 7 +- 35 files changed, 449 insertions(+), 363 deletions(-) diff --git a/include/battle_anim.h b/include/battle_anim.h index d8b2cd4dbcfe..9d1cf7be2a10 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -109,7 +109,7 @@ void *LoadPointerFromVars(s16 bottom, s16 top); void StorePointerInVars(s16 *bottom, s16 *top, const void *ptr); void InitPrioritiesForVisibleBattlers(void); void GetBattleAnimBg1Data(struct BattleAnimBgData*); -void GetBattleAnimBgData(struct BattleAnimBgData*, u32 arg1); +void GetBattleAnimBgData(struct BattleAnimBgData*, u32 bgId); u8 GetBattlerSpriteSubpriority(u8 battlerId); bool8 TranslateAnimHorizontalArc(struct Sprite *sprite); void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite); @@ -181,7 +181,7 @@ enum u8 GetBattlerSpriteCoord(u8 battlerId, u8 attributeId); bool8 IsBattlerSpritePresent(u8 battlerId); -void ClearBattleAnimBg(u32 arg0); +void ClearBattleAnimBg(u32 bgId); u8 GetAnimBattlerSpriteId(u8 wantedBattler); bool8 IsDoubleBattle(void); u8 GetBattleBgPaletteNum(void); @@ -213,7 +213,7 @@ u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 selectedPalettes, // battle_anim_utility_funcs.c void InitStatsChangeAnimation(u8); -void StartMonScrollingBgMask(u8 taskId, int unused, u16 arg2, u8 battler1, u8 arg4, u8 arg5, u8 arg6, u8 arg7, const u32 *arg8, const u32 *arg9, const u32 *palette); +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); // battle_anim_effects_1.c void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite); diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 9d9fba1b40b1..5b6ba30bdd37 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -222,7 +222,7 @@ void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId); void BtlController_EmitChooseAction(u8 bufferId, u8 action, u16 itemId); void BtlController_EmitYesNoBox(u8 bufferId); void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData); -void BtlController_EmitChooseItem(u8 bufferId, u8* arg1); +void BtlController_EmitChooseItem(u8 bufferId, u8* battlePartyOrder); void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8* data); void BtlController_EmitCmd23(u8 bufferId); // unused void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue); @@ -233,11 +233,11 @@ void BtlController_EmitStatusXor(u8 bufferId, u8 b); // unused void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data); void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data); // unused -void BtlController_EmitCmd32(u8 bufferId, u16 size, void *c); // unused -void BtlController_EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2); -void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c); -void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1); -void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b); +void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data); // unused +void BtlController_EmitTwoReturnValues(u8 bufferId, u8 ret8, u16 ret16); +void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 partyId, u8 *battlePartyOrder); +void BtlController_EmitOneReturnValue(u8 bufferId, u16 ret); +void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 ret); void BtlController_EmitClearUnkVar(u8 bufferId); // unused void BtlController_EmitSetUnkVar(u8 bufferId, u8 b); // unused void BtlController_EmitClearUnkFlag(u8 bufferId); // unused @@ -254,7 +254,7 @@ void BtlController_EmitHidePartyStatusSummary(u8 bufferId); void BtlController_EmitEndBounceEffect(u8 bufferId); void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible); void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument); -void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1, bool32 record); +void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 mode, bool32 record); void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId); void BtlController_EmitEndLinkBattle(u8 bufferId, u8 battleOutcome); diff --git a/include/battle_gfx_sfx_util.h b/include/battle_gfx_sfx_util.h index 383facd69422..2a848e3d93b9 100644 --- a/include/battle_gfx_sfx_util.h +++ b/include/battle_gfx_sfx_util.h @@ -19,7 +19,7 @@ void DecompressTrainerBackPic(u16 backPicId, u8 battlerId); void BattleGfxSfxDummy3(u8 gender); void FreeTrainerFrontPicPalette(u16 frontPicId); bool8 BattleLoadAllHealthBoxesGfx(u8 state); -void LoadBattleBarGfx(u8 arg0); +void LoadBattleBarGfx(u8 unused); bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId); void ClearSpritesHealthboxAnimData(void); void CopyAllBattleSpritesInvisibilities(void); diff --git a/include/battle_interface.h b/include/battle_interface.h index 3145939d0c4f..6cc02c3fcdf6 100644 --- a/include/battle_interface.h +++ b/include/battle_interface.h @@ -74,7 +74,7 @@ void SwapHpBarsWithHpText(void); u8 CreatePartyStatusSummarySprites(u8 battler, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart); void Task_HidePartyStatusSummary(u8 taskId); void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId); -s32 MoveBattleBar(u8 battler, u8 healthboxSpriteId, u8 whichBar, u8 arg3); +s32 MoveBattleBar(u8 battler, u8 healthboxSpriteId, u8 whichBar, u8 unused); u8 GetScaledHPFraction(s16 hp, s16 maxhp, u8 scale); u8 GetHPBarLevel(s16 hp, s16 maxhp); diff --git a/include/battle_setup.h b/include/battle_setup.h index 8f78bba3cd3a..ee2837927b14 100644 --- a/include/battle_setup.h +++ b/include/battle_setup.h @@ -28,7 +28,7 @@ void BattleSetup_StartLegendaryBattle(void); void StartGroudonKyogreBattle(void); void StartRegiBattle(void); u8 BattleSetup_GetTerrainId(void); -u8 GetSpecialBattleTransition(s32 arg0); +u8 GetSpecialBattleTransition(s32 id); void ChooseStarter(void); void ResetTrainerOpponentIds(void); void SetMapVarsToTrainer(void); diff --git a/include/battle_util.h b/include/battle_util.h index 914e44c0495b..d15d4583ea04 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -66,7 +66,7 @@ void PressurePPLoseOnUsingPerishSong(u8 attacker); void PressurePPLoseOnUsingImprison(u8 attacker); void MarkAllBattlersForControllerExec(void); // unused void MarkBattlerForControllerExec(u8 battlerId); -void MarkBattlerReceivedLinkData(u8 arg0); +void MarkBattlerReceivedLinkData(u8 battlerId); void CancelMultiTurnMoves(u8 battlerId); bool8 WasUnableToUseMove(u8 battlerId); void PrepareStringBattle(u16 stringId, u8 battlerId); diff --git a/include/digit_obj_util.h b/include/digit_obj_util.h index aca97e2c7cb6..4442fb0ec9f6 100644 --- a/include/digit_obj_util.h +++ b/include/digit_obj_util.h @@ -18,9 +18,9 @@ struct DigitObjUtilTemplate bool32 DigitObjUtil_Init(u32 count); void DigitObjUtil_Free(void); bool32 DigitObjUtil_CreatePrinter(u32 id, s32 num, const struct DigitObjUtilTemplate *template); -void DigitObjUtil_PrintNumOn(u32 id, s32 arg1); +void DigitObjUtil_PrintNumOn(u32 id, s32 num); void DigitObjUtil_DeletePrinter(u32 id); -void DigitObjUtil_HideOrShow(u32 id, bool32 arg1); +void DigitObjUtil_HideOrShow(u32 id, bool32 hide); u8 GetTilesPerImage(u32 shape, u32 size); #endif // GUARD_DIGIT_OBJ_UTIL_H diff --git a/include/evolution_graphics.h b/include/evolution_graphics.h index 61051c69a958..eab5c6eb70bf 100644 --- a/include/evolution_graphics.h +++ b/include/evolution_graphics.h @@ -3,7 +3,7 @@ void LoadEvoSparkleSpriteAndPal(void); -u8 EvolutionSparkles_SpiralUpward(u16 arg0); +u8 EvolutionSparkles_SpiralUpward(u16 palNum); u8 EvolutionSparkles_ArcDown(void); u8 EvolutionSparkles_CircleInward(void); u8 EvolutionSparkles_SprayAndFlash(u16 species); diff --git a/include/fldeff_misc.h b/include/fldeff_misc.h index 4acca79448a2..38dec23b0fbf 100644 --- a/include/fldeff_misc.h +++ b/include/fldeff_misc.h @@ -22,7 +22,7 @@ void PlaySecretBaseMusicNoteMatSound(s16 metatileId); void DoSecretBaseGlitterMatSparkle(void); bool8 FldEff_SandPillar(void); void InteractWithShieldOrTVDecoration(void); -bool8 IsLargeBreakableDecoration(u16 arg0, u8 arg1); +bool8 IsLargeBreakableDecoration(u16 metatileId, bool8 checkBase); void FldEffPoison_Start(void); bool32 FldEffPoison_IsActive(void); void DoWateringBerryTreeAnim(void); diff --git a/include/list_menu.h b/include/list_menu.h index 1c18f3dff061..e70a92bab17d 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -98,9 +98,9 @@ struct CursorStruct extern struct ScrollArrowsTemplate gTempScrollArrowTemplate; extern struct ListMenuTemplate gMultiuseListMenuTemplate; -s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palNum); +s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 drawMode, u16 tileNum, u16 palNum); u8 ListMenuInit(struct ListMenuTemplate *listMenuTemplate, u16 scrollOffset, u16 selectedRow); -u8 ListMenuInitInRect(struct ListMenuTemplate *listMenuTemplate, struct ListMenuWindowRect *arg1, u16 scrollOffset, u16 selectedRow); +u8 ListMenuInitInRect(struct ListMenuTemplate *listMenuTemplate, struct ListMenuWindowRect *rect, u16 scrollOffset, u16 selectedRow); s32 ListMenu_ProcessInput(u8 listTaskId); void DestroyListMenuTask(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow); void RedrawListMenu(u8 listTaskId); @@ -111,10 +111,10 @@ 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 arg0, u8 arg1, struct ListMenu *list); +void ListMenuDefaultCursorMoveFunc(s32 itemIndex, u8 onInit, struct ListMenu *list); s32 ListMenuGetUnkIndicatorsStructFields(u8 taskId, u8 field); void ListMenuSetUnkIndicatorsStructField(u8 taskId, u8 field, s32 value); -u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 *arg1); +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); void RemoveScrollIndicatorArrowPair(u8 taskId); void Task_ScrollIndicatorArrowPairOnMainMenu(u8 taskId); diff --git a/include/menu.h b/include/menu.h index bf3f56aeab46..9a940a48a71d 100644 --- a/include/menu.h +++ b/include/menu.h @@ -56,7 +56,7 @@ void SetStandardWindowBorderStyle(u8 windowId, bool8 copyToVram); void DisplayYesNoMenuDefaultYes(void); u32 GetPlayerTextSpeed(void); u8 GetPlayerTextSpeedDelay(void); -void Menu_LoadStdPalAt(u16 arg0); +void Menu_LoadStdPalAt(u16 offset); void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextPrinterTemplate *, u16)); void BgDmaFill(u32 bg, u8 a1, int a2, int a3); void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str); diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 0e063e5c1f89..f9a418a93868 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -18,11 +18,11 @@ struct YesNoFuncTable void ResetVramOamAndBgCntRegs(void); void ResetAllBgsCoordinates(void); void SetVBlankHBlankCallbacksToNull(void); -void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc); +void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 tileNum, u8 paletteNum, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc); bool16 RunTextPrintersRetIsActive(u8 textPrinterId); void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data); -void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo); -bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1); +void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 unused1, u8 unused2, u8 unused3, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo); +bool8 AdjustQuantityAccordingToDPadInput(s16 *quantity, u16 max); u8 GetLRKeysPressed(void); u8 GetLRKeysPressedAndHeld(void); bool8 IsHoldingItemAllowed(u16 itemId); diff --git a/include/menu_specialized.h b/include/menu_specialized.h index d1e30d4d6b52..10a2110464e1 100644 --- a/include/menu_specialized.h +++ b/include/menu_specialized.h @@ -95,7 +95,7 @@ void ConditionGraph_Draw(struct ConditionGraph *graph); bool8 ConditionGraph_TryUpdate(struct ConditionGraph *graph); void ConditionGraph_Update(struct ConditionGraph *graph); void ConditionGraph_CalcPositions(u8 *conditions, struct UCoords16 *positions); -void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords16 *arg1, struct UCoords16 *arg2); +void ConditionGraph_SetNewPositions(struct ConditionGraph *graph, struct UCoords16 *old, struct UCoords16 *new); // Condition menu bool8 ConditionMenu_UpdateMonEnter(struct ConditionGraph *graph, s16 *x); diff --git a/include/pokemon.h b/include/pokemon.h index 8039a4fdd4ba..7885c2ac52ff 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -337,7 +337,7 @@ u8 GetBoxMonGender(struct BoxPokemon *boxMon); u8 GetGenderFromSpeciesAndPersonality(u16 species, u32 personality); void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition); void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerSpriteId, u8 battlerPosition); -void SetMultiuseSpriteTemplateToTrainerFront(u16 arg0, u8 battlerPosition); +void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPosition); // These are full type signatures for GetMonData() and GetBoxMonData(), // but they are not used since some code erroneously omits the third arg. @@ -426,8 +426,8 @@ void SetWildMonHeldItem(void); bool8 IsMonShiny(struct Pokemon *mon); bool8 IsShinyOtIdPersonality(u32 otId, u32 personality); const u8 *GetTrainerPartnerName(void); -void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3); -void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3); +void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 panMode); +void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 panModeAnimFlag); void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneFrame); void StopPokemonAnimationDelayTask(void); void BattleAnimateBackSprite(struct Sprite* sprite, u16 species); diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index b7fca23311d9..eb25c0ff27c1 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -26,7 +26,7 @@ struct PokemonStorage extern struct PokemonStorage *gPokemonStoragePtr; -void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 arg2, u8 arg3, s32 bytesToBuffer); +void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero2, s32 bytesToBuffer); u8 CountMonsInBox(u8 boxId); s16 GetFirstFreeBoxSpot(u8 boxId); u8 CountPartyAliveNonEggMonsExcept(u8 slotToIgnore); @@ -52,7 +52,7 @@ void ZeroBoxMonAt(u8 boxId, u8 boxPosition); void BoxMonAtToMon(u8 boxId, u8 boxPosition, struct Pokemon *dst); struct BoxPokemon *GetBoxedMonPtr(u8 boxId, u8 boxPosition); u8 *GetBoxNamePtr(u8 boxId); -s16 AdvanceStorageMonIndex(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 arg3); +s16 AdvanceStorageMonIndex(struct BoxPokemon *boxMons, u8 currIndex, u8 maxIndex, u8 mode); bool8 CheckFreePokemonStorageSpace(void); bool32 CheckBoxMonSanityAt(u32 boxId, u32 boxPosition); u32 CountStorageNonEggMons(void); diff --git a/include/pokenav.h b/include/pokenav.h index d3edb14223fb..07beae957f1c 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -356,10 +356,10 @@ void MatchCall_GetNameAndDesc(u32 idx, const u8 **desc, const u8 **name); // pokenav_main_menu.c bool32 InitPokenavMainMenu(void); void CopyPaletteIntoBufferUnfaded(const u16 *palette, u32 bufferOffset, u32 size); -void RunMainMenuLoopedTask(u32 a0); +void RunMainMenuLoopedTask(u32 state); u32 IsActiveMenuLoopTaskActive(void); -void LoadLeftHeaderGfxForIndex(u32 arg0); -void ShowLeftHeaderGfx(u32 menugfxId, bool32 arg1, bool32 isOnRightSide); +void LoadLeftHeaderGfxForIndex(u32 menuGfxId); +void ShowLeftHeaderGfx(u32 menugfxId, bool32 isMain, bool32 isOnRightSide); void PokenavFadeScreen(s32 fadeType); bool32 AreLeftHeaderSpritesMoving(void); void InitBgTemplates(const struct BgTemplate *templates, int count); @@ -373,7 +373,7 @@ void PokenavCopyPalette(const u16 *a0, const u16 *a1, int a2, int a3, int a4, u1 void FadeToBlackExceptPrimary(void); struct Sprite *GetSpinningPokenavSprite(void); void HideSpinningPokenavSprite(void); -void UpdateRegionMapRightHeaderTiles(u32 arg0); +void UpdateRegionMapRightHeaderTiles(u32 menuGfxId); void HideMainOrSubMenuLeftHeader(u32 id, bool32 onRightSide); void SlideMenuHeaderUp(void); void PokenavFillPalette(u32 palIndex, u16 fillValue); @@ -417,8 +417,8 @@ int GetMatchCallTrainerPic(int index); const u8 *GetMatchCallFlavorText(int index, int textType); const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest); u16 GetMatchCallOptionCursorPos(void); -u16 GetMatchCallOptionId(int arg0); -void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry * arg0, u8 *str); +u16 GetMatchCallOptionId(int optionId); +void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry *matchCallEntry, u8 *str); u8 GetMatchTableMapSectionId(int rematchIndex); int GetIndexDeltaOfNextCheckPageDown(int index); int GetIndexDeltaOfNextCheckPageUp(int index); diff --git a/include/trainer_card.h b/include/trainer_card.h index f5e73da8394a..f14335ae8981 100644 --- a/include/trainer_card.h +++ b/include/trainer_card.h @@ -69,7 +69,7 @@ u32 CountPlayerTrainerStars(void); u8 GetTrainerCardStars(u8 cardId); void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion); void ShowPlayerTrainerCard(void (*callback)(void)); -void ShowTrainerCardInLink(u8 arg0, void (*callback)(void)); +void ShowTrainerCardInLink(u8 cardId, void (*callback)(void)); void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *); #endif // GUARD_TRAINER_CARD_H diff --git a/src/bard_music.c b/src/bard_music.c index bdc5ac808ac5..dd986371d32b 100644 --- a/src/bard_music.c +++ b/src/bard_music.c @@ -7,9 +7,9 @@ #include "data/bard_music/default_sound.h" #include "data/bard_music/length_table.h" -static s16 CalcWordPitch(int arg0, int songPos) +static s16 CalcWordPitch(int pitchIdx, int songPos) { - return sBardSoundPitchTables[arg0][songPos]; + return sBardSoundPitchTables[pitchIdx][songPos]; } const struct BardSound *GetWordSounds(u16 word) diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index f73393de4ec7..fcd594db5f53 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -3717,6 +3717,26 @@ void AnimTask_SlideMonForFocusBand(u8 taskId) gTasks[taskId].func = AnimTask_SlideMonForFocusBand_Step1; } +#define IDX_ACTIVE_SPRITES 2 // Used by the sprite callback to modify the number of active sprites + +// Task data for AnimTask_SquishAndSweatDroplets +#define tState data[0] +#define tTimer data[1] +#define tActiveSprites data[IDX_ACTIVE_SPRITES] +#define tNumSquishes data[3] +#define tBaseX data[4] +#define tBaseY data[5] +#define tSubpriority data[6] +// data[7]-data[15] used by PrepareAffineAnimInTaskData +#define tBattlerSpriteId data[15] + +// Sprite data for AnimFacadeSweatDrop +#define sTimer data[0] +#define sVelocX data[1] +#define sVelocY data[2] +#define sTaskId data[3] +#define sActiveSpritesIdx data[4] + // Squishes the mon vertically and emits sweat droplets a few times. // arg 0: battler // arg 1: num squishes @@ -3728,20 +3748,20 @@ void AnimTask_SquishAndSweatDroplets(u8 taskId) if (!gBattleAnimArgs[1]) DestroyAnimVisualTask(taskId); - task->data[0] = 0; - task->data[1] = 0; - task->data[2] = 0; - task->data[3] = gBattleAnimArgs[1]; + task->tState = 0; + task->tTimer = 0; + task->tActiveSprites = 0; + task->tNumSquishes = gBattleAnimArgs[1]; if (gBattleAnimArgs[0] == ANIM_ATTACKER) battler = gBattleAnimAttacker; else battler = gBattleAnimTarget; - task->data[4] = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); - task->data[5] = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y); - task->data[6] = GetBattlerSpriteSubpriority(battler); - task->data[15] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); - PrepareAffineAnimInTaskData(task, task->data[15], gFacadeSquishAffineAnimCmds); + task->tBaseX = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); + task->tBaseY = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y); + task->tSubpriority = GetBattlerSpriteSubpriority(battler); + task->tBattlerSpriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); + PrepareAffineAnimInTaskData(task, task->tBattlerSpriteId, gFacadeSquishAffineAnimCmds); task->func = AnimTask_SquishAndSweatDroplets_Step; } @@ -3749,37 +3769,40 @@ static void AnimTask_SquishAndSweatDroplets_Step(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: - task->data[1]++; - if (task->data[1] == 6) + task->tTimer++; + if (task->tTimer == 6) CreateSweatDroplets(taskId, TRUE); - if (task->data[1] == 18) + if (task->tTimer == 18) CreateSweatDroplets(taskId, FALSE); if (!RunAffineAnimFromTaskData(task)) { - if (--task->data[3] == 0) + if (--task->tNumSquishes == 0) { - task->data[0]++; + // Animation is finished + task->tState++; } else { - task->data[1] = 0; - PrepareAffineAnimInTaskData(task, task->data[15], gFacadeSquishAffineAnimCmds); + // Animation continues, more droplet sprites to create + task->tTimer = 0; + PrepareAffineAnimInTaskData(task, task->tBattlerSpriteId, gFacadeSquishAffineAnimCmds); } } break; case 1: - if (task->data[2] == 0) + // Wait for sprites to be destroyed before ending task + if (task->tActiveSprites == 0) DestroyAnimVisualTask(taskId); break; } } -static void CreateSweatDroplets(u8 taskId, bool8 arg1) +static void CreateSweatDroplets(u8 taskId, bool8 lowerDroplets) { u8 i; s8 xOffset, yOffset; @@ -3788,7 +3811,7 @@ static void CreateSweatDroplets(u8 taskId, bool8 arg1) s16 yCoords[2]; task = &gTasks[taskId]; - if (!arg1) + if (!lowerDroplets) { xOffset = 18; yOffset = -20; @@ -3799,39 +3822,54 @@ static void CreateSweatDroplets(u8 taskId, bool8 arg1) yOffset = 20; } - xCoords[0] = task->data[4] - xOffset; - xCoords[1] = task->data[4] - xOffset - 4; - xCoords[2] = task->data[4] + xOffset; - xCoords[3] = task->data[4] + xOffset + 4; - yCoords[0] = task->data[5] + yOffset; - yCoords[1] = task->data[5] + yOffset + 6; + xCoords[0] = task->tBaseX - xOffset; + xCoords[1] = task->tBaseX - xOffset - 4; + xCoords[2] = task->tBaseX + xOffset; + xCoords[3] = task->tBaseX + xOffset + 4; + yCoords[0] = task->tBaseY + yOffset; + yCoords[1] = task->tBaseY + yOffset + 6; for (i = 0; i < 4; i++) { - u8 spriteId = CreateSprite(&gFacadeSweatDropSpriteTemplate, xCoords[i], yCoords[i & 1], task->data[6] - 5); + u8 spriteId = CreateSprite(&gFacadeSweatDropSpriteTemplate, xCoords[i], yCoords[i & 1], task->tSubpriority - 5); if (spriteId != MAX_SPRITES) { - gSprites[spriteId].data[0] = 0; - gSprites[spriteId].data[1] = i < 2 ? -2 : 2; - gSprites[spriteId].data[2] = -1; - gSprites[spriteId].data[3] = taskId; - gSprites[spriteId].data[4] = 2; - task->data[2]++; + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].sVelocX = i < 2 ? -2 : 2; // First two travel left, remaining travel right + gSprites[spriteId].sVelocY = -1; + gSprites[spriteId].sTaskId = taskId; + gSprites[spriteId].sActiveSpritesIdx = IDX_ACTIVE_SPRITES; + task->tActiveSprites++; } } } static void AnimFacadeSweatDrop(struct Sprite *sprite) { - sprite->x += sprite->data[1]; - sprite->y += sprite->data[2]; - if (++sprite->data[0] > 6) + sprite->x += sprite->sVelocX; + sprite->y += sprite->sVelocY; + if (++sprite->sTimer > 6) { - gTasks[sprite->data[3]].data[sprite->data[4]]--; + gTasks[sprite->sTaskId].data[sprite->sActiveSpritesIdx]--; DestroySprite(sprite); } } +#undef IDX_ACTIVE_SPRITES +#undef tState +#undef tTimer +#undef tActiveSprites +#undef tNumSquishes +#undef tBaseX +#undef tBaseY +#undef tSubpriority +#undef tBattlerSpriteId +#undef sTimer +#undef sVelocX +#undef sVelocY +#undef sTaskId +#undef sActiveSpritesIdx + // Blends the mon sprite's color with a rotating set of colors. // arg 0: battler // arg 1: duration @@ -3927,6 +3965,26 @@ static void AnimRoarNoiseLine_Step(struct Sprite *sprite) DestroyAnimSprite(sprite); } +#define IDX_ACTIVE_SPRITES 10 // Used by the sprite callback to modify the number of active sprites + +// Task data for AnimTask_GlareEyeDots +#define tState data[0] +#define tTimer data[1] +#define tPairNum data[2] +#define tPairMax data[5] +#define tDotOffset data[6] +#define tIsContest data[7] +#define tActiveSprites data[IDX_ACTIVE_SPRITES] +#define tStartX data[11] +#define tStartY data[12] +#define tEndX data[13] +#define tEndY data[14] + +// Sprite data for AnimGlareEyeDot +#define sTimer data[0] +#define sTaskId data[1] +#define sActiveSpritesIdx data[2] + // Makes a series of dots in a trail from the attacker to the target. // arg 0: unused void AnimTask_GlareEyeDots(u8 taskId) @@ -3935,25 +3993,25 @@ void AnimTask_GlareEyeDots(u8 taskId) if (IsContest()) { - task->data[5] = 8; - task->data[6] = 3; - task->data[7] = 1; + task->tPairMax = 8; + task->tDotOffset = 3; + task->tIsContest = TRUE; } else { - task->data[5] = 12; - task->data[6] = 3; - task->data[7] = 0; + task->tPairMax = 12; + task->tDotOffset = 3; + task->tIsContest = FALSE; } if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) - task->data[11] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; + task->tStartX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; else - task->data[11] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; + task->tStartX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; - task->data[12] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) - GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; - task->data[13] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - task->data[14] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + task->tStartY = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) - GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / 4; + task->tEndX = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + task->tEndY = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); task->func = AnimTask_GlareEyeDots_Step; } @@ -3963,103 +4021,122 @@ static void AnimTask_GlareEyeDots_Step(u8 taskId) s16 x, y; struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: - if (++task->data[1] > 3) + // Wait to create next pair of dots + if (++task->tTimer > 3) { - task->data[1] = 0; + task->tTimer = 0; GetGlareEyeDotCoords( - task->data[11], - task->data[12], - task->data[13], - task->data[14], - task->data[5], - task->data[2], + task->tStartX, + task->tStartY, + task->tEndX, + task->tEndY, + task->tPairMax, + task->tPairNum, &x, &y); + // Create dot pair for (i = 0; i < 2; i++) { u8 spriteId = CreateSprite(&gGlareEyeDotSpriteTemplate, x, y, 35); if (spriteId != MAX_SPRITES) { - if (task->data[7] == 0) + if (!task->tIsContest) { if (i == 0) - gSprites[spriteId].x2 = gSprites[spriteId].y2 = -task->data[6]; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = -task->tDotOffset; else - gSprites[spriteId].x2 = gSprites[spriteId].y2 = task->data[6]; + gSprites[spriteId].x2 = gSprites[spriteId].y2 = task->tDotOffset; } else { if (i == 0) { - gSprites[spriteId].x2 = -task->data[6]; - gSprites[spriteId].y2 = task->data[6]; + gSprites[spriteId].x2 = -task->tDotOffset; + gSprites[spriteId].y2 = task->tDotOffset; } else { - gSprites[spriteId].x2 = task->data[6]; - gSprites[spriteId].y2 = -task->data[6]; + gSprites[spriteId].x2 = task->tDotOffset; + gSprites[spriteId].y2 = -task->tDotOffset; } } - gSprites[spriteId].data[0] = 0; - gSprites[spriteId].data[1] = taskId; - gSprites[spriteId].data[2] = 10; - task->data[10]++; + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].sTaskId = taskId; + gSprites[spriteId].sActiveSpritesIdx = IDX_ACTIVE_SPRITES; + task->tActiveSprites++; } } - if (task->data[2] == task->data[5]) - task->data[0]++; + if (task->tPairNum == task->tPairMax) + task->tState++; - task->data[2]++; + task->tPairNum++; } break; case 1: - if (task->data[10] == 0) + // Wait for sprites to be destroyed before ending task + if (task->tActiveSprites == 0) DestroyAnimVisualTask(taskId); break; } } -static void GetGlareEyeDotCoords(s16 arg0, s16 arg1, s16 arg2, s16 arg3, u8 arg4, u8 arg5, s16 *x, s16 *y) +static void GetGlareEyeDotCoords(s16 startX, s16 startY, s16 endX, s16 endY, u8 pairMax, u8 pairNum, s16 *x, s16 *y) { int x2; int y2; - if (arg5 == 0) + if (pairNum == 0) { - *x = arg0; - *y = arg1; + *x = startX; + *y = startY; return; } - if (arg5 >= arg4) + if (pairNum >= pairMax) { - *x = arg2; - *y = arg3; + *x = endX; + *y = endY; return; } - arg4--; - x2 = (arg0 << 8) + arg5 * (((arg2 - arg0) << 8) / arg4); - y2 = (arg1 << 8) + arg5 * (((arg3 - arg1) << 8) / arg4); + pairMax--; + x2 = (startX << 8) + pairNum * (((endX - startX) << 8) / pairMax); + y2 = (startY << 8) + pairNum * (((endY - startY) << 8) / pairMax); *x = x2 >> 8; *y = y2 >> 8; } static void AnimGlareEyeDot(struct Sprite *sprite) { - if (++sprite->data[0] > 36) + if (++sprite->sTimer > 36) { - gTasks[sprite->data[1]].data[sprite->data[2]]--; + gTasks[sprite->sTaskId].data[sprite->sActiveSpritesIdx]--; DestroySprite(sprite); } } +#undef IDX_ACTIVE_SPRITES +#undef tState +#undef tTimer +#undef tPairNum +#undef tPairMax +#undef tDotOffset +#undef tIsContest +#undef tActiveSprites +#undef tStartX +#undef tStartY +#undef tEndX +#undef tEndY +#undef sTimer +#undef sTaskId +#undef sActiveSpritesIdx + // Moves a pawprint in a straight line. // arg 0: initial x position // arg 1: initial y position diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 5b69030dfc37..954192f0ab27 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -96,8 +96,8 @@ static void PlayerCmdEnd(void); static void PlayerBufferRunCommand(void); static void HandleInputChooseTarget(void); static void HandleInputChooseMove(void); -static void MoveSelectionCreateCursorAt(u8 cursorPos, u8 arg1); -static void MoveSelectionDestroyCursorAt(u8 cursorPos); +static void MoveSelectionCreateCursorAt(u8, u8); +static void MoveSelectionDestroyCursorAt(u8); static void MoveSelectionDisplayPpNumber(void); static void MoveSelectionDisplayPpString(void); static void MoveSelectionDisplayMoveType(void); @@ -106,18 +106,18 @@ static void HandleMoveSwitching(void); static void SwitchIn_HandleSoundAndEnd(void); static void WaitForMonSelection(void); static void CompleteWhenChoseItem(void); -static void Task_LaunchLvlUpAnim(u8 taskId); -static void Task_PrepareToGiveExpWithExpBar(u8 taskId); -static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId); -static void Task_GiveExpWithExpBar(u8 taskId); -static void Task_UpdateLvlInHealthbox(u8 taskId); +static void Task_LaunchLvlUpAnim(u8); +static void Task_PrepareToGiveExpWithExpBar(u8); +static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8); +static void Task_GiveExpWithExpBar(u8); +static void Task_UpdateLvlInHealthbox(u8); static void PrintLinkStandbyMsg(void); -static u32 CopyPlayerMonData(u8 monId, u8 *dst); -static void SetPlayerMonData(u8 monId); -static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit); +static u32 CopyPlayerMonData(u8, u8 *); +static void SetPlayerMonData(u8); +static void StartSendOutAnim(u8, bool8); static void DoSwitchOutAnimation(void); static void PlayerDoMoveAnimation(void); -static void Task_StartSendOutAnim(u8 taskId); +static void Task_StartSendOutAnim(u8); static void EndDrawPartyStatusSummary(void); static void (*const sPlayerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = @@ -1507,11 +1507,11 @@ static void MoveSelectionDisplayMoveType(void) BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE); } -static void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 arg1) +static void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 baseTileNum) { u16 src[2]; - src[0] = arg1 + 1; - src[1] = arg1 + 2; + src[0] = baseTileNum + 1; + src[1] = baseTileNum + 2; CopyToBgTilemapBufferRect_ChangePalette(0, src, 9 * (cursorPosition & 1) + 1, 55 + (cursorPosition & 2), 1, 2, 0x11); CopyBgTilemapBufferToVram(0); @@ -1527,7 +1527,7 @@ static void MoveSelectionDestroyCursorAt(u8 cursorPosition) CopyBgTilemapBufferToVram(0); } -void ActionSelectionCreateCursorAt(u8 cursorPosition, u8 arg1) +void ActionSelectionCreateCursorAt(u8 cursorPosition, u8 baseTileNum) { u16 src[2]; src[0] = 1; diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 7d2717e2cc50..369f735f2482 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -1168,13 +1168,13 @@ void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpN PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, sizeof(*movePpData) + 4); } -void BtlController_EmitChooseItem(u8 bufferId, u8 *arg1) +void BtlController_EmitChooseItem(u8 bufferId, u8 *battlePartyOrder) { s32 i; sBattleBuffersTransferData[0] = CONTROLLER_OPENBAG; - for (i = 0; i < 3; i++) - sBattleBuffersTransferData[1 + i] = arg1[i]; + for (i = 0; i < PARTY_SIZE / 2; i++) + sBattleBuffersTransferData[1 + i] = battlePartyOrder[i]; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } @@ -1309,12 +1309,12 @@ void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 3); } -void BtlController_EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2) +void BtlController_EmitTwoReturnValues(u8 bufferId, u8 ret8, u16 ret16) { sBattleBuffersTransferData[0] = CONTROLLER_TWORETURNVALUES; - sBattleBuffersTransferData[1] = arg1; - sBattleBuffersTransferData[2] = arg2; - sBattleBuffersTransferData[3] = (arg2 & 0xFF00) >> 8; + sBattleBuffersTransferData[1] = ret8; + sBattleBuffersTransferData[2] = ret16; + sBattleBuffersTransferData[3] = (ret16 & 0xFF00) >> 8; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } @@ -1329,20 +1329,20 @@ void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 partyId, u8 *battleP PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 5); } -void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1) +void BtlController_EmitOneReturnValue(u8 bufferId, u16 ret) { sBattleBuffersTransferData[0] = CONTROLLER_ONERETURNVALUE; - sBattleBuffersTransferData[1] = arg1; - sBattleBuffersTransferData[2] = (arg1 & 0xFF00) >> 8; + sBattleBuffersTransferData[1] = ret; + sBattleBuffersTransferData[2] = (ret & 0xFF00) >> 8; sBattleBuffersTransferData[3] = 0; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b) +void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 ret) { sBattleBuffersTransferData[0] = CONTROLLER_ONERETURNVALUE_DUPLICATE; - sBattleBuffersTransferData[1] = b; - sBattleBuffersTransferData[2] = (b & 0xFF00) >> 8; + sBattleBuffersTransferData[1] = ret; + sBattleBuffersTransferData[2] = (ret & 0xFF00) >> 8; sBattleBuffersTransferData[3] = 0; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } diff --git a/src/battle_dome.c b/src/battle_dome.c index aadd85afd6b9..c9614e6fc6f8 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -73,40 +73,39 @@ struct TourneyTreeLineSection #define tMode data[2] #define tPrevTaskId data[3] -// This file's functions. -static u8 GetDomeTrainerMonIvs(u16 trainerId); -static void SwapDomeTrainers(int id1, int id2, u16 *statsArray); -static void CalcDomeMonStats(u16 species, int level, int ivs, u8 evBits, u8 nature, int *stats); -static void CreateDomeOpponentMons(u16 tournamentTrainerId); -static int SelectOpponentMonsUsingPersonality(u16 tournamentTrainerId, bool8 arg1); -static int SelectOpponentMonsUsingOtId(u16 tournamentTrainerId, bool8 arg1); -static int GetTypeEffectivenessPoints(int move, int species, int arg2); -static int SelectOpponentMonsFromParty(int *arr, bool8 arg1); -static void Task_ShowTourneyInfoCard(u8 taskId); -static void Task_HandleInfoCardInput(u8 taskId); -static u8 Task_GetInfoCardInput(u8 taskId); +static u8 GetDomeTrainerMonIvs(u16); +static void SwapDomeTrainers(int, int, u16 *); +static void CalcDomeMonStats(u16, int, int, u8, u8, int *); +static void CreateDomeOpponentMons(u16); +static int SelectOpponentMonsUsingPersonality(u16, bool8); +static int SelectOpponentMonsUsingOtId(u16, bool8); +static int GetTypeEffectivenessPoints(int, int, int); +static int SelectOpponentMonsFromParty(int *, bool8); +static void Task_ShowTourneyInfoCard(u8); +static void Task_HandleInfoCardInput(u8); +static u8 Task_GetInfoCardInput(u8); static void SetFacilityTrainerAndMonPtrs(void); -static int TrainerIdToTournamentId(u16 trainerId); +static int TrainerIdToTournamentId(u16); static u16 TrainerIdOfPlayerOpponent(void); -static void Task_ShowTourneyTree(u8 taskId); -static void Task_HandleStaticTourneyTreeInput(u8 taskId); +static void Task_ShowTourneyTree(u8); +static void Task_HandleStaticTourneyTreeInput(u8); static void CB2_TourneyTree(void); static void VblankCb_TourneyInfoCard(void); -static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo); -static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId); +static void DisplayMatchInfoOnCard(u8, u8); +static void DisplayTrainerInfoOnCard(u8, u8); static int BufferDomeWinString(u8, u8*); static u8 GetDomeBrainTrainerPicId(void); static u8 GetDomeBrainTrainerClass(void); -static void CopyDomeBrainTrainerName(u8 *str); -static void CopyDomeTrainerName(u8 *str, u16 trainerId); +static void CopyDomeBrainTrainerName(u8 *); +static void CopyDomeTrainerName(u8 *, u16); static void HblankCb_TourneyTree(void); static void VblankCb_TourneyTree(void); -static u8 UpdateTourneyTreeCursor(u8 taskId); -static void DecideRoundWinners(u8 roundId); -static u8 GetOpposingNPCTournamentIdByRound(u8 tournamentId, u8); +static u8 UpdateTourneyTreeCursor(u8); +static void DecideRoundWinners(u8); +static u8 GetOpposingNPCTournamentIdByRound(u8, u8); static void DrawTourneyAdvancementLine(u8, u8); -static void SpriteCb_HorizontalScrollArrow(struct Sprite *sprite); -static void SpriteCb_VerticalScrollArrow(struct Sprite *sprite); +static void SpriteCb_HorizontalScrollArrow(struct Sprite *); +static void SpriteCb_VerticalScrollArrow(struct Sprite *); static void InitDomeChallenge(void); static void GetDomeData(void); static void SetDomeData(void); @@ -130,7 +129,6 @@ static void BufferLastDomeWinnerName(void); static void InitRandomTourneyTreeResults(void); static void InitDomeTrainers(void); -// EWRAM variables. EWRAM_DATA u32 gPlayerPartyLostHP = 0; // never read static EWRAM_DATA u32 sPlayerPartyMaxHP = 0; // never read static EWRAM_DATA struct TourneyTreeInfoCard *sInfoCard = {0}; @@ -2080,7 +2078,6 @@ static const u8 sTourneyTreeLineSectionArrayCounts[DOME_TOURNAMENT_TRAINERS_COUN {ARRAY_COUNT(sLineSectionTrainer16Round1), ARRAY_COUNT(sLineSectionTrainer16Round2), ARRAY_COUNT(sLineSectionTrainer16Semifinal), ARRAY_COUNT(sLineSectionTrainer16Final)}, }; -// code void CallBattleDomeFunction(void) { sBattleDomeFunctions[gSpecialVar_0x8004](); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 2a690d129d2a..d0981324f8c7 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -353,12 +353,12 @@ void SpriteCB_WaitForBattlerBallReleaseAnim(struct Sprite *sprite) } } -static void UnusedDoBattleSpriteAffineAnim(struct Sprite *sprite, bool8 arg1) +static void UnusedDoBattleSpriteAffineAnim(struct Sprite *sprite, bool8 pointless) { sprite->animPaused = TRUE; sprite->callback = SpriteCallbackDummy; - if (!arg1) + if (!pointless) StartSpriteAffineAnim(sprite, 1); else StartSpriteAffineAnim(sprite, 1); @@ -783,7 +783,7 @@ bool8 BattleLoadAllHealthBoxesGfx(u8 state) return retVal; } -void LoadBattleBarGfx(u8 arg0) +void LoadBattleBarGfx(u8 unused) { LZDecompressWram(gBattleInterfaceGfx_BattleBar, gMonSpritesGfxPtr->barFontGfx); } diff --git a/src/battle_interface.c b/src/battle_interface.c index 26209fe2d7fe..6d869df780a3 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -158,36 +158,36 @@ enum HEALTHBOX_GFX_FRAME_END_BAR, }; -static const u8 *GetHealthboxElementGfxPtr(u8 elementId); -static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 bgColor, u32 *windowId); +static const u8 *GetHealthboxElementGfxPtr(u8); +static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *, u32, u32, u32, u32 *); static void RemoveWindowOnHealthbox(u32 windowId); -static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent); -static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId); - -static void TextIntoHealthboxObject(void *dest, u8 *windowTileData, s32 windowWidth); -static void SafariTextIntoHealthboxObject(void *dest, u8 *windowTileData, u32 windowWidth); -static void HpTextIntoHealthboxObject(void *dest, u8 *windowTileData, u32 windowWidth); -static void FillHealthboxObject(void *dest, u32 arg1, u32 arg2); - -static void Task_HidePartyStatusSummary_BattleStart_1(u8 taskId); -static void Task_HidePartyStatusSummary_BattleStart_2(u8 taskId); -static void Task_HidePartyStatusSummary_DuringBattle(u8 taskId); - -static void SpriteCB_HealthBoxOther(struct Sprite *sprite); -static void SpriteCB_HealthBar(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBar_Enter(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBar_Exit(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBalls_Enter(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBalls_Exit(struct Sprite *sprite); -static void SpriteCB_StatusSummaryBalls_OnSwitchout(struct Sprite *sprite); - -static u8 GetStatusIconForBattlerId(u8 statusElementId, u8 battlerId); -static s32 CalcNewBarValue(s32 maxValue, s32 currValue, s32 receivedValue, s32 *arg3, u8 arg4, u16 arg5); -static u8 GetScaledExpFraction(s32 currValue, s32 receivedValue, s32 maxValue, u8 scale); -static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar); -static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 *currValue, u8 *arg4, u8 scale); -static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *arg1, u16 *arg2); +static void UpdateHpTextInHealthboxInDoubles(u8, s16, u8); +static void UpdateStatusIconInHealthbox(u8); + +static void TextIntoHealthboxObject(void *, u8 *, s32); +static void SafariTextIntoHealthboxObject(void *, u8 *, u32); +static void HpTextIntoHealthboxObject(void *, u8 *, u32); +static void FillHealthboxObject(void *, u32, u32); + +static void Task_HidePartyStatusSummary_BattleStart_1(u8); +static void Task_HidePartyStatusSummary_BattleStart_2(u8); +static void Task_HidePartyStatusSummary_DuringBattle(u8); + +static void SpriteCB_HealthBoxOther(struct Sprite *); +static void SpriteCB_HealthBar(struct Sprite *); +static void SpriteCB_StatusSummaryBar_Enter(struct Sprite *); +static void SpriteCB_StatusSummaryBar_Exit(struct Sprite *); +static void SpriteCB_StatusSummaryBalls_Enter(struct Sprite *); +static void SpriteCB_StatusSummaryBalls_Exit(struct Sprite *); +static void SpriteCB_StatusSummaryBalls_OnSwitchout(struct Sprite *); + +static u8 GetStatusIconForBattlerId(u8, u8); +static s32 CalcNewBarValue(s32, s32, s32, s32 *, u8, u16); +static u8 GetScaledExpFraction(s32, s32, s32, u8); +static void MoveBattleBarGraphically(u8, u8); +static u8 CalcBarFilledPixels(s32, s32, s32, s32 *, u8 *, u8); +static void Debug_TestHealthBar_Helper(struct TestingBar *, s32 *, u16 *); static const struct OamData sOamData_64x32 = { @@ -814,11 +814,11 @@ static void Debug_DrawNumber(s16 number, u16 *dest, bool8 unk) } // Unused -static void Debug_DrawNumberPair(s16 number1, s16 number2, u16 *arg2) +static void Debug_DrawNumberPair(s16 number1, s16 number2, u16 *dest) { - arg2[4] = 0x1E; - Debug_DrawNumber(number2, arg2, 0); - Debug_DrawNumber(number1, arg2 + 5, 1); + dest[4] = 0x1E; + Debug_DrawNumber(number2, dest, 0); + Debug_DrawNumber(number1, dest + 5, 1); } // Because the healthbox is too large to fit into one sprite, it is divided into two sprites. @@ -2453,19 +2453,19 @@ static s16 Debug_TestHealthBar(struct TestingBar *barInfo, s32 *currValue, u16 * return ret; } -static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *currValue, u16 *arg2) +static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *currValue, u16 *dest) { u8 sp8[6]; - u16 sp10[6]; + u16 src[6]; u8 i; CalcBarFilledPixels(barInfo->maxValue, barInfo->oldValue, barInfo->receivedValue, currValue, sp8, B_HEALTHBAR_PIXELS / 8); for (i = 0; i < 6; i++) - sp10[i] = (barInfo->unkC_0 << 12) | (barInfo->unk10 + sp8[i]); + src[i] = (barInfo->unkC_0 << 12) | (barInfo->unk10 + sp8[i]); - CpuCopy16(sp10, arg2, sizeof(sp10)); + CpuCopy16(src, dest, sizeof(src)); } static u8 GetScaledExpFraction(s32 oldValue, s32 receivedValue, s32 maxValue, u8 scale) diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 9039f60f2cda..b0bcdfd5e92f 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -83,18 +83,18 @@ static void ClearPyramidPartyHeldItems(void); static void SetPyramidFloorPalette(void); static void BattlePyramidStartMenu(void); static void RestorePyramidPlayerParty(void); -static void InitPyramidBagItems(u8 lvlMode); +static void InitPyramidBagItems(u8); static u8 GetPyramidFloorTemplateId(void); static u8 GetPostBattleDirectionHintTextIndex(int *, u8, u8); -static void Task_SetPyramidFloorPalette(u8 taskId); -static void MarkPyramidTrainerAsBattled(u16 trainerId); -static void GetPyramidFloorLayoutOffsets(u8 *layoutOffsets); +static void Task_SetPyramidFloorPalette(u8); +static void MarkPyramidTrainerAsBattled(u16); +static void GetPyramidFloorLayoutOffsets(u8 *); static void GetPyramidEntranceAndExitSquareIds(u8 *, u8 *); static void SetPyramidObjectPositionsUniformly(u8); static bool8 SetPyramidObjectPositionsInAndNearSquare(u8, u8); static bool8 SetPyramidObjectPositionsNearSquare(u8, u8); -static bool8 TrySetPyramidObjectEventPositionInSquare(u8 arg0, u8 *floorLayoutOffsets, u8 squareId, u8 objectEventId); -static bool8 TrySetPyramidObjectEventPositionAtCoords(bool8 objType, u8 x, u8 y, u8 *floorLayoutOffsets, u8 squareId, u8 objectEventId); +static bool8 TrySetPyramidObjectEventPositionInSquare(u8, u8 *, u8, u8); +static bool8 TrySetPyramidObjectEventPositionAtCoords(bool8, u8, u8, u8 *, u8, u8); // Const rom data. #define ABILITY_RANDOM 2 // For wild mons data. diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index 5d17cca84e87..a6b558195b76 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -92,11 +92,22 @@ static const struct SpriteTemplate sEvoSparkleSpriteTemplate = .callback = SpriteCB_Sparkle_Dummy }; -static const s16 sEvoSparkleMatrices[] = +static const u16 sEvoSparkleMatrices[] = { - 0x3C0, 0x380, 0x340, 0x300, 0x2C0, 0x280, 0x240, 0x200, 0x1C0, - 0x180, 0x140, 0x100, -4, 0x10, -3, 0x30, -2, 0x50, - -1, 0x70, 0x1, 0x70, 0x2, 0x50, 0x3, 0x30, 0x4, 0x10 + 0x3C0, 0x380, 0x340, 0x300, 0x2C0, 0x280, + 0x240, 0x200, 0x1C0, 0x180, 0x140, 0x100 +}; + +static const s16 sUnused[] = +{ + -4, 0x10, + -3, 0x30, + -2, 0x50, + -1, 0x70, + 1, 0x70, + 2, 0x50, + 3, 0x30, + 4, 0x10 }; static void SpriteCB_Sparkle_Dummy(struct Sprite *sprite) @@ -107,30 +118,33 @@ static void SpriteCB_Sparkle_Dummy(struct Sprite *sprite) static void SetEvoSparklesMatrices(void) { u16 i; - for (i = 0; i < 12; i++) - { + for (i = 0; i < ARRAY_COUNT(sEvoSparkleMatrices); i++) SetOamMatrix(20 + i, sEvoSparkleMatrices[i], 0, 0, sEvoSparkleMatrices[i]); - } } +#define sSpeed data[3] +#define sAmplitude data[5] +#define sTrigIdx data[6] +#define sTimer data[7] + static void SpriteCB_Sparkle_SpiralUpward(struct Sprite* sprite) { if (sprite->y > 8) { u8 matrixNum; - sprite->y = 88 - (sprite->data[7] * sprite->data[7]) / 80; - sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; - sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); - sprite->data[6] += 4; - if (sprite->data[7] & 1) - sprite->data[5]--; - sprite->data[7]++; + sprite->y = 88 - (sprite->sTimer * sprite->sTimer) / 80; + sprite->y2 = Sin((u8)sprite->sTrigIdx, sprite->sAmplitude) / 4; + sprite->x2 = Cos((u8)sprite->sTrigIdx, sprite->sAmplitude); + sprite->sTrigIdx += 4; + if (sprite->sTimer & 1) + sprite->sAmplitude--; + sprite->sTimer++; if (sprite->y2 > 0) sprite->subpriority = 1; else sprite->subpriority = 20; - matrixNum = sprite->data[5] / 4 + 20; + matrixNum = sprite->sAmplitude / 4 + 20; if (matrixNum > 31) matrixNum = 31; sprite->oam.matrixNum = matrixNum; @@ -139,17 +153,17 @@ static void SpriteCB_Sparkle_SpiralUpward(struct Sprite* sprite) DestroySprite(sprite); } -static void CreateSparkle_SpiralUpward(u8 arg0) +static void CreateSparkle_SpiralUpward(u8 trigIdx) { - u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 88, 0); - if (spriteID != MAX_SPRITES) + u8 spriteId = CreateSprite(&sEvoSparkleSpriteTemplate, DISPLAY_WIDTH / 2, 88, 0); + if (spriteId != MAX_SPRITES) { - gSprites[spriteID].data[5] = 48; - gSprites[spriteID].data[6] = arg0; - gSprites[spriteID].data[7] = 0; - gSprites[spriteID].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteID].oam.matrixNum = 31; - gSprites[spriteID].callback = SpriteCB_Sparkle_SpiralUpward; + gSprites[spriteId].sAmplitude = 48; + gSprites[spriteId].sTrigIdx = trigIdx; + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; + gSprites[spriteId].oam.matrixNum = 31; + gSprites[spriteId].callback = SpriteCB_Sparkle_SpiralUpward; } } @@ -157,85 +171,85 @@ static void SpriteCB_Sparkle_ArcDown(struct Sprite* sprite) { if (sprite->y < 88) { - sprite->y = 8 + (sprite->data[7] * sprite->data[7]) / 5; - sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; - sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); - sprite->data[5] = 8 + Sin((u8)(sprite->data[7] * 4), 40); - sprite->data[7]++; + sprite->y = 8 + (sprite->sTimer * sprite->sTimer) / 5; + sprite->y2 = Sin((u8)sprite->sTrigIdx, sprite->sAmplitude) / 4; + sprite->x2 = Cos((u8)sprite->sTrigIdx, sprite->sAmplitude); + sprite->sAmplitude = 8 + Sin((u8)(sprite->sTimer * 4), 40); + sprite->sTimer++; } else DestroySprite(sprite); } -static void CreateSparkle_ArcDown(u8 arg0) +static void CreateSparkle_ArcDown(u8 trigIdx) { - u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 8, 0); - if (spriteID != MAX_SPRITES) + u8 spriteId = CreateSprite(&sEvoSparkleSpriteTemplate, DISPLAY_WIDTH / 2, 8, 0); + if (spriteId != MAX_SPRITES) { - gSprites[spriteID].data[5] = 8; - gSprites[spriteID].data[6] = arg0; - gSprites[spriteID].data[7] = 0; - gSprites[spriteID].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteID].oam.matrixNum = 25; - gSprites[spriteID].subpriority = 1; - gSprites[spriteID].callback = SpriteCB_Sparkle_ArcDown; + gSprites[spriteId].sAmplitude = 8; + gSprites[spriteId].sTrigIdx = trigIdx; + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; + gSprites[spriteId].oam.matrixNum = 25; + gSprites[spriteId].subpriority = 1; + gSprites[spriteId].callback = SpriteCB_Sparkle_ArcDown; } } static void SpriteCB_Sparkle_CircleInward(struct Sprite* sprite) { - if (sprite->data[5] > 8) + if (sprite->sAmplitude > 8) { - sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]); - sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]); - sprite->data[5] -= sprite->data[3]; - sprite->data[6] += 4; + sprite->y2 = Sin((u8)sprite->sTrigIdx, sprite->sAmplitude); + sprite->x2 = Cos((u8)sprite->sTrigIdx, sprite->sAmplitude); + sprite->sAmplitude -= sprite->sSpeed; + sprite->sTrigIdx += 4; } else DestroySprite(sprite); } -static void CreateSparkle_CircleInward(u8 arg0, u8 arg1) +static void CreateSparkle_CircleInward(u8 trigIdx, u8 speed) { - u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 56, 0); - if (spriteID != MAX_SPRITES) + u8 spriteId = CreateSprite(&sEvoSparkleSpriteTemplate, DISPLAY_WIDTH / 2, 56, 0); + if (spriteId != MAX_SPRITES) { - gSprites[spriteID].data[3] = arg1; - gSprites[spriteID].data[5] = 120; - gSprites[spriteID].data[6] = arg0; - gSprites[spriteID].data[7] = 0; - gSprites[spriteID].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteID].oam.matrixNum = 31; - gSprites[spriteID].subpriority = 1; - gSprites[spriteID].callback = SpriteCB_Sparkle_CircleInward; + gSprites[spriteId].sSpeed = speed; + gSprites[spriteId].sAmplitude = 120; + gSprites[spriteId].sTrigIdx = trigIdx; + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; + gSprites[spriteId].oam.matrixNum = 31; + gSprites[spriteId].subpriority = 1; + gSprites[spriteId].callback = SpriteCB_Sparkle_CircleInward; } } static void SpriteCB_Sparkle_Spray(struct Sprite* sprite) { - if (!(sprite->data[7] & 3)) + if (!(sprite->sTimer & 3)) sprite->y++; - if (sprite->data[6] < 128) + if (sprite->sTrigIdx < 128) { u8 matrixNum; - sprite->y2 = -Sin((u8)(sprite->data[6]), sprite->data[5]); - sprite->x = 120 + (sprite->data[3] * sprite->data[7]) / 3; - sprite->data[6]++; - matrixNum = 31 - (sprite->data[6] * 12 / 128); - if (sprite->data[6] > 64) + sprite->y2 = -Sin((u8)sprite->sTrigIdx, sprite->sAmplitude); + sprite->x = (DISPLAY_WIDTH / 2) + (sprite->sSpeed * sprite->sTimer) / 3; + sprite->sTrigIdx++; + matrixNum = 31 - (sprite->sTrigIdx * 12 / 128); + if (sprite->sTrigIdx > 64) sprite->subpriority = 1; else { sprite->invisible = FALSE; sprite->subpriority = 20; - if (sprite->data[6] > 112 && sprite->data[6] & 1) + if (sprite->sTrigIdx > 112 && sprite->sTrigIdx & 1) sprite->invisible = TRUE; } if (matrixNum < 20) matrixNum = 20; sprite->oam.matrixNum = matrixNum; - sprite->data[7]++; + sprite->sTimer++; } else DestroySprite(sprite); @@ -243,16 +257,16 @@ static void SpriteCB_Sparkle_Spray(struct Sprite* sprite) static void CreateSparkle_Spray(u8 id) { - u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 56, 0); - if (spriteID != MAX_SPRITES) + u8 spriteId = CreateSprite(&sEvoSparkleSpriteTemplate, DISPLAY_WIDTH / 2, 56, 0); + if (spriteId != MAX_SPRITES) { - gSprites[spriteID].data[3] = 3 - (Random() % 7); - gSprites[spriteID].data[5] = 48 + (Random() & 0x3F); - gSprites[spriteID].data[7] = 0; - gSprites[spriteID].oam.affineMode = ST_OAM_AFFINE_NORMAL; - gSprites[spriteID].oam.matrixNum = 31; - gSprites[spriteID].subpriority = 20; - gSprites[spriteID].callback = SpriteCB_Sparkle_Spray; + gSprites[spriteId].sSpeed = 3 - (Random() % 7); + gSprites[spriteId].sAmplitude = 48 + (Random() & 0x3F); + gSprites[spriteId].sTimer = 0; + gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; + gSprites[spriteId].oam.matrixNum = 31; + gSprites[spriteId].subpriority = 20; + gSprites[spriteId].callback = SpriteCB_Sparkle_Spray; } } @@ -289,7 +303,7 @@ static void Task_Sparkles_SpiralUpward(u8 taskId) { u8 i; for (i = 0; i < 4; i++) - CreateSparkle_SpiralUpward((0x78 & gTasks[taskId].tTimer) * 2 + i * 64); + CreateSparkle_SpiralUpward((gTasks[taskId].tTimer & 120) * 2 + i * 64); } gTasks[taskId].tTimer++; } diff --git a/src/list_menu.c b/src/list_menu.c index ccb1838912dd..8ba13a6cf8a2 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -312,14 +312,14 @@ static void ListMenuDummyTask(u8 taskId) } -s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palNum) +s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 drawMode, u16 tileNum, u16 palNum) { switch (sMysteryGiftLinkMenu.state) { case 0: default: sMysteryGiftLinkMenu.windowId = AddWindow(windowTemplate); - switch (arg2) + switch (drawMode) { case 2: LoadUserWindowBorderGfx(sMysteryGiftLinkMenu.windowId, tileNum, palNum); @@ -346,13 +346,13 @@ s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str } if (sMysteryGiftLinkMenu.state == 2) { - if (arg2 == 0) + if (drawMode == 0) { ClearWindowTilemap(sMysteryGiftLinkMenu.windowId); } else { - switch (arg2) + switch (drawMode) { case 0: // can never be reached, because of the if statement above ClearStdWindowAndFrame(sMysteryGiftLinkMenu.windowId, FALSE); diff --git a/src/menu_helpers.c b/src/menu_helpers.c index e9f3e571f088..7decd695c3b2 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -153,7 +153,7 @@ void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data) gTasks[taskId].func = Task_CallYesOrNoCallback; } -void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo) +void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 unused1, u8 unused2, u8 unused3, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo) { CreateYesNoMenu(template, tileStart, palette, 0); sYesNo = *yesNo; @@ -176,17 +176,18 @@ static void Task_CallYesOrNoCallback(u8 taskId) } } -bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1) +// Returns TRUE if the quantity was changed, FALSE if it remained the same +bool8 AdjustQuantityAccordingToDPadInput(s16 *quantity, u16 max) { - s16 valBefore = (*arg0); + s16 valBefore = *quantity; - if ((JOY_REPEAT(DPAD_ANY)) == DPAD_UP) + if (JOY_REPEAT(DPAD_ANY) == DPAD_UP) { - (*arg0)++; - if ((*arg0) > arg1) - (*arg0) = 1; + (*quantity)++; + if (*quantity > max) + *quantity = 1; - if ((*arg0) == valBefore) + if (*quantity == valBefore) { return FALSE; } @@ -196,13 +197,13 @@ bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1) return TRUE; } } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_DOWN) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_DOWN) { - (*arg0)--; - if ((*arg0) <= 0) - (*arg0) = arg1; + (*quantity)--; + if (*quantity <= 0) + *quantity = max; - if ((*arg0) == valBefore) + if (*quantity == valBefore) { return FALSE; } @@ -212,13 +213,13 @@ bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1) return TRUE; } } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_RIGHT) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_RIGHT) { - (*arg0) += 10; - if ((*arg0) > arg1) - (*arg0) = arg1; + *quantity += 10; + if (*quantity > max) + *quantity = max; - if ((*arg0) == valBefore) + if (*quantity == valBefore) { return FALSE; } @@ -228,13 +229,13 @@ bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1) return TRUE; } } - else if ((JOY_REPEAT(DPAD_ANY)) == DPAD_LEFT) + else if (JOY_REPEAT(DPAD_ANY) == DPAD_LEFT) { - (*arg0) -= 10; - if ((*arg0) <= 0) - (*arg0) = 1; + *quantity -= 10; + if (*quantity <= 0) + *quantity = 1; - if ((*arg0) == valBefore) + if (*quantity == valBefore) { return FALSE; } diff --git a/src/mystery_gift_client.c b/src/mystery_gift_client.c index adf3ce8a62cd..9405b133ccb3 100644 --- a/src/mystery_gift_client.c +++ b/src/mystery_gift_client.c @@ -230,7 +230,7 @@ static u32 Client_Run(struct MysteryGiftClient * client) MysteryGift_TrySaveStamp(client->recvBuffer); break; case CLI_SAVE_RAM_SCRIPT: - InitRamScript_NoObjectEvent(client->recvBuffer, 1000); + InitRamScript_NoObjectEvent(client->recvBuffer, sizeof(struct RamScriptData)); break; case CLI_RECV_EREADER_TRAINER: memcpy(&gSaveBlock2Ptr->frontier.ereaderTrainer, client->recvBuffer, sizeof(gSaveBlock2Ptr->frontier.ereaderTrainer)); diff --git a/src/pokeball.c b/src/pokeball.c index a9ccd42d6076..cf7f49b7eff6 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -438,7 +438,7 @@ static void SpriteCB_BallThrow(struct Sprite *sprite) sprite->y2 = 0; sprite->data[5] = 0; ballId = ItemIdToBallId(GetBattlerPokeballItemId(opponentBattler)); - AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId); sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBattler, 14, ballId); sprite->sBattler = opponentBattler; sprite->data[7] = noOfShakes; @@ -752,7 +752,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) StartSpriteAnim(sprite, 1); ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId)); - AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId); + AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId); sprite->data[0] = LaunchBallFadeMonTask(TRUE, sprite->sBattler, 14, ballId); sprite->callback = HandleBallAnimEnd; @@ -1000,14 +1000,14 @@ static void SpriteCB_OpponentMonSendOut(struct Sprite *sprite) #undef sBattler -static u8 AnimateBallOpenParticlesForPokeball(u8 x, u8 y, u8 kindOfStars, u8 d) +static u8 AnimateBallOpenParticlesForPokeball(u8 x, u8 y, u8 kindOfStars, u8 subpriority) { - return AnimateBallOpenParticles(x, y, kindOfStars, d, BALL_POKE); + return AnimateBallOpenParticles(x, y, kindOfStars, subpriority, BALL_POKE); } -static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 battlerId, u32 arg2) +static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 battlerId, u32 selectedPalettes) { - return LaunchBallFadeMonTask(unFadeLater, battlerId, arg2, BALL_POKE); + return LaunchBallFadeMonTask(unFadeLater, battlerId, selectedPalettes, BALL_POKE); } // Pokeball in Birch intro, and when receiving via trade @@ -1041,24 +1041,24 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) { if (sprite->data[1] == 0) { - u8 r5; - u8 r7 = sprite->data[0]; + u8 subpriority; + u8 spriteId = sprite->data[0]; u8 battlerId = sprite->data[2]; - u32 r4 = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + u32 selectedPalettes = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); if (sprite->subpriority != 0) - r5 = sprite->subpriority - 1; + subpriority = sprite->subpriority - 1; else - r5 = 0; + subpriority = 0; StartSpriteAnim(sprite, 1); - AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r5); - sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4); + AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); + sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, selectedPalettes); sprite->callback = SpriteCB_ReleasedMonFlyOut; - gSprites[r7].invisible = FALSE; - StartSpriteAffineAnim(&gSprites[r7], BATTLER_AFFINE_EMERGE); - AnimateSprite(&gSprites[r7]); - gSprites[r7].data[1] = 0x1000; + gSprites[spriteId].invisible = FALSE; + StartSpriteAffineAnim(&gSprites[spriteId], BATTLER_AFFINE_EMERGE); + AnimateSprite(&gSprites[spriteId]); + gSprites[spriteId].data[1] = 0x1000; sprite->data[7] = 0; } else @@ -1134,19 +1134,19 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) { if (sprite->data[1] == 0) { - u8 r6; + u8 subpriority; u8 monSpriteId = sprite->data[0]; - u8 r8 = sprite->data[2]; - u32 r5 = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + u8 battlerId = sprite->data[2]; + u32 selectedPalettes = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); if (sprite->subpriority != 0) - r6 = sprite->subpriority - 1; + subpriority = sprite->subpriority - 1; else - r6 = 0; + subpriority = 0; StartSpriteAnim(sprite, 1); - AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r6); - sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5); + AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); + sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, selectedPalettes); sprite->callback = SpriteCB_TradePokeballSendOff; #ifdef BUGFIX // FIX: If this is used on a sprite that has previously had an affine animation, it will not diff --git a/src/pokemon.c b/src/pokemon.c index 61125e36204d..af5771a6ac78 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5379,10 +5379,10 @@ u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit) return offset; } -static void BufferStatRoseMessage(s32 arg0) +static void BufferStatRoseMessage(s32 statIdx) { gBattlerTarget = gBattlerInMenuId; - StringCopy(gBattleTextBuff1, gStatNamesTable[sStatsToRaise[arg0]]); + StringCopy(gBattleTextBuff1, gStatNamesTable[sStatsToRaise[statIdx]]); StringCopy(gBattleTextBuff2, gText_StatRose); BattleStringExpandPlaceholdersToDisplayedString(gText_DefendersStatRose); } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index f6aa82391d51..e00f5dbc8fad 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -2205,7 +2205,7 @@ static bool32 AreLinkQueuesEmpty(void) return !gRfu.recvQueue.count && !gRfu.sendQueue.count; } -static int GetNumPlayersForBonus(u8 *arg0) +static int GetNumPlayersForBonus(u8 *atJumpPeak) { int i = 0; int flags = 0; @@ -2213,7 +2213,7 @@ static int GetNumPlayersForBonus(u8 *arg0) for (; i < MAX_RFU_PLAYERS; i++) { - if (arg0[i]) + if (atJumpPeak[i]) { flags |= 1 << i; count++; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 8bf12c2bda46..e38d46c845fb 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -8476,11 +8476,11 @@ static void MultiMove_ClearIconFromBg(u8 x, u8 y) } } -static void MultiMove_InitMove(u16 x, u16 y, u16 arg2) +static void MultiMove_InitMove(u16 x, u16 y, u16 moveSteps) { sMultiMove->bgX = x; sMultiMove->bgY = y; - sMultiMove->bgMoveSteps = arg2; + sMultiMove->bgMoveSteps = moveSteps; } static u8 MultiMove_UpdateMove(void) diff --git a/src/pokenav_conditions.c b/src/pokenav_conditions.c index 94ed4e8d8ccb..e0645bac0b6d 100644 --- a/src/pokenav_conditions.c +++ b/src/pokenav_conditions.c @@ -332,7 +332,7 @@ u8 *CopyStringLeftAlignedToConditionData(u8 *dst, const u8 *src, s16 n) return dst; } -static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) +static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 skipPadding) { u16 boxId, monId, gender, species, level, lvlDigits; struct BoxPokemon *boxMon; @@ -412,7 +412,7 @@ static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 arg3) str_ = ConvertIntToDecimalStringN(str_, level, STR_CONV_MODE_LEFT_ALIGN, 3); lvlDigits = str_ - txtPtr; *(str_++) = CHAR_SPACE; - if (!arg3) + if (!skipPadding) { lvlDigits = 3 - lvlDigits; while (lvlDigits-- != 0) diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index 2e919f550a7e..a95d8624edb5 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -81,14 +81,11 @@ static const u8 sMovement_FaceUp[] = MOVEMENT_ACTION_STEP_END }; -// This file's functions. -static void SaveRotatingTileObject(u8 eventTemplateId, u8 arg1); -static void TurnUnsavedRotatingTileObject(u8 eventTemplateId, u8 arg1); +static void SaveRotatingTileObject(u8, u8); +static void TurnUnsavedRotatingTileObject(u8, u8); -// EWRAM vars EWRAM_DATA static struct RotatingTilePuzzle *sRotatingTilePuzzle = NULL; -// code void InitRotatingTilePuzzle(bool8 isTrickHouse) { if (sRotatingTilePuzzle == NULL) From a8437493c1358f2bb7c95c4187569a12e726e13c Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 31 May 2022 15:08:34 -0400 Subject: [PATCH 586/762] Document generic argument names in battle anim palettes --- data/battle_anim_scripts.s | 528 ++++++++++++++++---------------- include/battle_anim.h | 4 +- include/constants/battle_anim.h | 17 + src/battle_anim_effects_1.c | 4 +- src/battle_anim_effects_2.c | 2 +- src/battle_anim_ghost.c | 2 +- src/battle_anim_mons.c | 32 +- src/battle_anim_normal.c | 44 +-- src/battle_anim_throw.c | 2 +- src/battle_anim_utility_funcs.c | 14 +- 10 files changed, 335 insertions(+), 314 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 1cfc5230c09a..538286e15672 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -763,7 +763,7 @@ Move_TAKE_DOWN: setalpha 12, 8 createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10 delay 35 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 4, -10, 0, ANIM_TARGET, 0 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET delay 1 @@ -783,14 +783,14 @@ Move_TAKE_DOWN: Move_DOUBLE_EDGE: loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 4, 2, RGB_WHITE, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 4, 2, RGB_WHITE, 10, RGB_BLACK, 0 waitforvisualfinish delay 10 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER waitplaysewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER, 8 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 2, 4 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 16, 16, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 16, 16, RGB_WHITE createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 20, 0, 0, 4 delay 3 waitforvisualfinish @@ -802,7 +802,7 @@ Move_DOUBLE_EDGE: createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 0 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_WHITE waitforvisualfinish createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 1 createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 1 @@ -860,7 +860,7 @@ Move_FIRE_BLAST: call FireBlastRing call FireBlastRing delay 24 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 3, 0, 8, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 8, RGB_BLACK waitforvisualfinish delay 19 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 20, 1 @@ -882,7 +882,7 @@ Move_FIRE_BLAST: delay 3 call FireBlastCross waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 2, 8, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 2, 8, 0, RGB_BLACK waitforvisualfinish end FireBlastRing: @@ -941,17 +941,17 @@ Move_MEGA_PUNCH: loadspritegfx ANIM_TAG_HANDS_AND_FEET monbg ANIM_TARGET delay 2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 0, 16, RGB_BLACK setalpha 12, 8 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET createsprite gMegaPunchKickSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 50 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 7, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_WHITE delay 50 call SetImpactBackground createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 0, RGB_WHITE + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -984,18 +984,18 @@ Move_MEGA_KICK: loadspritegfx ANIM_TAG_HANDS_AND_FEET monbg ANIM_TARGET delay 2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 0, 16, RGB_BLACK setalpha 12, 8 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET createsprite gMegaPunchKickSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 50 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 7, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_WHITE delay 50 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET call SetImpactBackground createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 0, RGB_WHITE + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -1054,21 +1054,21 @@ SonicBoomHit: Move_THUNDER_SHOCK: loadspritegfx ANIM_TAG_SPARK loadspritegfx ANIM_TAG_SPARK_2 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 0, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 6, RGB_BLACK waitforvisualfinish delay 10 createvisualtask AnimTask_ElectricBolt, 5, 0, -44, 0 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET delay 9 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 0, 0, 13, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 0, 13, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 0, 13, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 13, 0, RGB_BLACK waitforvisualfinish delay 20 call ElectricityEffect waitforvisualfinish delay 20 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 6, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 6, 0, RGB_BLACK waitforvisualfinish end @@ -1076,7 +1076,7 @@ Move_THUNDERBOLT: loadspritegfx ANIM_TAG_SPARK loadspritegfx ANIM_TAG_SHOCK_3 loadspritegfx ANIM_TAG_SPARK_2 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 0, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 6, RGB_BLACK waitforvisualfinish delay 10 createvisualtask AnimTask_ElectricBolt, 5, 24, -52, 0 @@ -1088,9 +1088,9 @@ Move_THUNDERBOLT: createvisualtask AnimTask_ElectricBolt, 5, 0, -60, 1 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET delay 9 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 0, 0, 13, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 0, 13, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 0, 13, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 13, 0, RGB_BLACK waitforvisualfinish delay 20 createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 44, 0, 0, 3 @@ -1104,20 +1104,20 @@ Move_THUNDERBOLT: createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 224, 40, 2, -32765 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET delay 0 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 2, 2, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 2, 2, RGB_BLACK delay 6 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 6, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 6, 6, RGB_BLACK delay 6 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 2, 2, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 2, 2, RGB_BLACK delay 6 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 6, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 6, 6, RGB_BLACK waitforvisualfinish delay 20 waitplaysewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 19 call ElectricityEffect waitforvisualfinish delay 20 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 6, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 6, 0, RGB_BLACK waitforvisualfinish end @@ -1125,7 +1125,7 @@ Move_THUNDER_WAVE: loadspritegfx ANIM_TAG_SPARK loadspritegfx ANIM_TAG_SPARK_2 loadspritegfx ANIM_TAG_SPARK_H - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 0, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 6, RGB_BLACK waitforvisualfinish delay 10 createvisualtask AnimTask_ElectricBolt, 5, 0, -48, 0 @@ -1138,7 +1138,7 @@ Move_THUNDER_WAVE: delay 4 createsprite gThunderWaveSpriteTemplate, ANIM_TARGET, 2, -16, 16 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 6, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 6, 0, RGB_BLACK waitforvisualfinish end @@ -1247,10 +1247,10 @@ Move_REVERSAL: loadspritegfx ANIM_TAG_HANDS_AND_FEET loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB_WHITE, 8, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 3, RGB_WHITE, 8, RGB_BLACK, 0 waitforvisualfinish delay 30 - createvisualtask AnimTask_BlendColorCycle, 2, 31, 3, 2, 0, 10, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 2, 0, 10, RGB_WHITE delay 10 playsewithpan SE_M_REVERSAL, SOUND_PAN_ATTACKER createsprite gReversalOrbSpriteTemplate, ANIM_ATTACKER, 2, 26, 0 @@ -1264,7 +1264,7 @@ Move_REVERSAL: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 8 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 8, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_WHITE, 8, RGB_BLACK, 0 createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 10, 1, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 5, FALSE, 1, 8, 1, 0 @@ -1348,7 +1348,7 @@ Move_PSYCH_UP: delay 4 playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 9, 2, 2, 10, 0, RGB_YELLOW + createvisualtask AnimTask_BlendBattleAnimPal, 9, F_PAL_ATTACKER, 2, 10, 0, RGB_YELLOW delay 30 clearmonbg ANIM_ATK_PARTNER blendoff @@ -1446,18 +1446,18 @@ FuryCutterRight: createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 1 goto FuryCutterContinue FuryCutterMedium: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(9, 8, 10), 4, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 FuryCutterStrong: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 FuryCutterStrongest: - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 3, RGB(9, 8, 10), 4, RGB_BLACK, 0 goto FuryCutterContinue2 Move_SELF_DESTRUCT: loadspritegfx ANIM_TAG_EXPLOSION - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 0, 9, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 9, RGB_RED createvisualtask AnimTask_ShakeMon2, 5, 4, 6, 0, 38, 1 createvisualtask AnimTask_ShakeMon2, 5, 5, 6, 0, 38, 1 createvisualtask AnimTask_ShakeMon2, 5, 6, 6, 0, 38, 1 @@ -1466,7 +1466,7 @@ Move_SELF_DESTRUCT: call SelfDestructExplode call SelfDestructExplode waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 9, 0, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 9, 0, RGB_RED end SelfDestructExplode: playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_ATTACKER @@ -1623,7 +1623,7 @@ RisingWaterHitEffect: Move_EXPLOSION: loadspritegfx ANIM_TAG_EXPLOSION - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 9, RGB(26, 8, 8), 8, RGB_BLACK, 8 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 8, 9, RGB(26, 8, 8), 8, RGB_BLACK, 8 createvisualtask AnimTask_ShakeMon2, 5, 4, 8, 0, 40, 1 createvisualtask AnimTask_ShakeMon2, 5, 5, 8, 0, 40, 1 createvisualtask AnimTask_ShakeMon2, 5, 6, 8, 0, 40, 1 @@ -1632,9 +1632,9 @@ Move_EXPLOSION: call Explosion1 call Explosion1 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 1, 16, 16, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 16, RGB_WHITE delay 50 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 3, 16, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 16, 0, RGB_WHITE end Explosion1: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER @@ -1678,16 +1678,16 @@ Move_PROTECT: Move_DETECT: loadspritegfx ANIM_TAG_SPARKLE_4 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 9, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 9, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 0, 9, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 9, RGB_WHITE delay 18 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 20, -20 waitforvisualfinish delay 10 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 9, 0, RGB_BLACK - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 2, 9, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 9, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB_WHITE waitforvisualfinish end @@ -1709,7 +1709,7 @@ Frustration_Continue: Frustration_Strongest: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 5, ANIM_ATTACKER, 1, 0, 15, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 3, 0, 9, 31 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 3, 0, 9, RGB_RED waitforvisualfinish delay 20 playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER @@ -1740,12 +1740,12 @@ Frustration_Strongest: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 18, -18, ANIM_TARGET, 0 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 3, 9, 0, 31 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 3, 9, 0, RGB_RED goto Frustration_Continue Frustration_Strong: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 5, ANIM_ATTACKER, 1, 0, 15, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 3, 0, 9, 31 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 3, 0, 9, RGB_RED waitforvisualfinish delay 20 playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER @@ -1766,7 +1766,7 @@ Frustration_Strong: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -12, -6, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 6, 1 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 3, 9, 0, 31 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 3, 9, 0, RGB_RED goto Frustration_Continue Frustration_Medium: playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER @@ -1808,7 +1808,7 @@ Move_SAFEGUARD: createsprite gGuardRingSpriteTemplate, ANIM_ATTACKER, 2 waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendColorCycle, 2, 10, 0, 2, 0, 10, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATK_SIDE, 0, 2, 0, 10, RGB_WHITE waitforvisualfinish clearmonbg ANIM_ATK_PARTNER blendoff @@ -1864,13 +1864,13 @@ Move_GUILLOTINE: playsewithpan SE_M_VICEGRIP, SOUND_PAN_TARGET createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 0 createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 16, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 16, RGB_BLACK delay 9 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 23, 1 delay 46 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 8, 1 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -1900,7 +1900,7 @@ Move_PAY_DAY: Move_OUTRAGE: loadspritegfx ANIM_TAG_SMALL_EMBER loopsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER, 8, 3 - createvisualtask AnimTask_BlendColorCycle, 2, 7, 2, 5, 3, 8, RGB(14, 13, 0) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, 2, 5, 3, 8, RGB(14, 13, 0) createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 5, 4 delay 0 createsprite gOutrageFlameSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 1280, 0, 3 @@ -1946,25 +1946,25 @@ Move_SPARK: loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_SPARK_2 delay 0 - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 5, 5, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 5, 5, RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 0, 0, RGB(31, 31, 22) delay 10 - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 5, 5, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 5, 5, RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 0, 0, RGB(31, 31, 22) delay 20 - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 7, 7, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 7, 7, RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 0, 20, 0, 0 createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 64, 20, 1, 0 @@ -1976,14 +1976,14 @@ Move_SPARK: createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 224, 20, 2, 0 delay 4 waitforvisualfinish - createvisualtask AnimTask_BlendColorCycle, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_ATTACKER, -31, 1, 0, 0, RGB(31, 31, 22) createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 4 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, ANIM_TARGET, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish - createvisualtask AnimTask_BlendColorCycle, 2, 4, -31, 2, 0, 6, RGB(31, 31, 22) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, -31, 2, 0, 6, RGB(31, 31, 22) call ElectricityEffect waitforvisualfinish end @@ -2014,7 +2014,7 @@ Move_ATTRACT: createsprite gRedHeartRisingSpriteTemplate, ANIM_ATTACKER, 40, 112, 256, 90 createsprite gRedHeartRisingSpriteTemplate, ANIM_ATTACKER, 40, 200, 272, 90 delay 75 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 4, 4, 0, 10, RGB(31, 25, 27) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 4, 4, 0, 10, RGB(31, 25, 27) end Move_GROWTH: @@ -2024,7 +2024,7 @@ Move_GROWTH: waitforvisualfinish end GrowthEffect: - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 8, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 2, 0, 8, RGB_WHITE playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -3, -3, 16, ANIM_ATTACKER, 0 return @@ -2084,12 +2084,12 @@ Move_MEAN_LOOK: loadspritegfx ANIM_TAG_EYE monbg ANIM_DEF_PARTNER playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 16, RGB_BLACK loopsewithpan SE_M_CONFUSE_RAY, SOUND_PAN_TARGET, 15, 4 waitplaysewithpan SE_M_LEER, SOUND_PAN_TARGET, 85 createsprite gMeanLookEyeSpriteTemplate, ANIM_ATTACKER, 2 delay 120 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_BLACK delay 30 clearmonbg ANIM_DEF_PARTNER waitforvisualfinish @@ -2229,7 +2229,7 @@ Move_ICY_WIND: loadspritegfx ANIM_TAG_ICE_CRYSTALS loadspritegfx ANIM_TAG_ICE_SPIKES monbg ANIM_DEF_PARTNER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 11, 4, 0, 4, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_ATK_SIDE, 4, 0, 4, RGB_BLACK fadetobg BG_ICE waitbgfadeout playsewithpan SE_M_ICY_WIND, 0 @@ -2246,7 +2246,7 @@ Move_ICY_WIND: clearmonbg ANIM_DEF_PARTNER restorebg waitbgfadeout - createvisualtask AnimTask_BlendBattleAnimPal, 10, 11, 4, 4, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_ATK_SIDE, 4, 4, 0, RGB_BLACK waitbgfadein end IcyWindSwirlingSnowballs: @@ -2601,9 +2601,9 @@ Move_EARTHQUAKE: createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 playsewithpan SE_M_EARTHQUAKE, 0 delay 10 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 16 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 end Move_FISSURE: @@ -2614,11 +2614,11 @@ Move_FISSURE: delay 8 call FissureDirtPlumeFar delay 15 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 15 call FissureDirtPlumeClose delay 15 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 15 call FissureDirtPlumeFar delay 50 @@ -2846,7 +2846,7 @@ SkullBashAttack: playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER waitforvisualfinish playse SE_BANG - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1 createsprite gFlashingHitSplatSpriteTemplate, ANIM_TARGET, 4, 0, 0, ANIM_TARGET, 0 @@ -2892,7 +2892,7 @@ Move_GLARE: createvisualtask AnimTask_GlareEyeDots, 5, 0 playsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 5, 1, 0, 0, 16, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 5, F_PAL_BG, 0, 0, 16, RGB_BLACK waitforvisualfinish createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, -16, -8 createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, 16, -8 @@ -2901,7 +2901,7 @@ Move_GLARE: delay 2 createvisualtask AnimTask_ShakeTargetInPattern, 3, 20, 1, FALSE waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 5, 1, 0, 16, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 5, F_PAL_BG, 0, 16, 0, RGB_BLACK end Move_BARRAGE: @@ -2926,17 +2926,17 @@ SkyAttackSetUp: jumpretfalse SkyAttackSetUpAgainstOpponent goto SkyAttackSetUpAgainstPartner SkyAttackSetUpAgainstOpponent: - createvisualtask AnimTask_BlendBattleAnimPal, 10, 27, 1, 0, 12, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_ATK_SIDE | F_PAL_DEF_PARTNER, 1, 0, 12, RGB_BLACK waitforvisualfinish delay 12 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 8, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 8, 0, RGB_BLACK createvisualtask AnimTask_HorizontalShake, 5, ANIM_ATTACKER, 2, 16 loopsewithpan SE_M_STAT_INCREASE, SOUND_PAN_ATTACKER, 4, 8 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 0, 15, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 15, RGB_WHITE delay 20 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 15, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 15, 0, RGB_WHITE waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 25, 1, 8, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_ATK_PARTNER | F_PAL_DEF_PARTNER, 1, 8, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -2945,13 +2945,13 @@ SkyAttackSetUpAgainstPartner: createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, ANIM_TARGET, 1, 0, 12, RGB_BLACK waitforvisualfinish delay 12 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 8, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 8, 0, RGB_BLACK createvisualtask AnimTask_HorizontalShake, 5, ANIM_ATTACKER, 2, 16 playsewithpan SE_M_STAT_INCREASE, SOUND_PAN_ATTACKER delay 8 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 0, 15, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 15, RGB_WHITE delay 20 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 1, 15, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 15, 0, RGB_WHITE waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, 4, 1, 8, 0, RGB_BLACK waitforvisualfinish @@ -2963,7 +2963,7 @@ SkyAttackUnleash: loadspritegfx ANIM_TAG_BIRD call SetSkyBg monbg ANIM_ATTACKER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 0, 0, 16, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 0, 16, RGB_WHITE delay 4 createvisualtask AnimTask_AttackerFadeToInvisible, 5, 0 waitforvisualfinish @@ -2975,7 +2975,7 @@ SkyAttackUnleash: delay 20 createvisualtask AnimTask_AttackerFadeFromInvisible, 5, 1 delay 2 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 0, 15, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 15, 0, RGB_WHITE waitforvisualfinish clearmonbg ANIM_ATTACKER call UnsetSkyBg @@ -3025,7 +3025,7 @@ Move_SUPER_FANG: createsprite gSuperFangSpriteTemplate, ANIM_TARGET, 2 playsewithpan SE_M_BITE, SOUND_PAN_TARGET delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB(31, 2, 2), 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB(31, 2, 2), 14, RGB_WHITE, 14 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 7, 12, 1 waitforvisualfinish blendoff @@ -3113,7 +3113,7 @@ Move_SPITE: playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER waitbgfadein monbg ANIM_DEF_PARTNER - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 6, 0, 8, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 6, 0, 8, RGB_WHITE createvisualtask AnimTask_SpiteTargetShadow, 2 loopsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET, 20, 3 waitforvisualfinish @@ -3198,7 +3198,7 @@ Move_ENDURE: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect delay 8 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 11, RGB_RED + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 11, RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 call EndureEffect delay 8 @@ -3332,9 +3332,9 @@ MagnitudeIntense: createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 0, 50 loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 10 delay 10 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 delay 16 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_BLACK, 14, RGB_WHITE, 14 goto MagnitudeEnd Move_RAPID_SPIN: @@ -3361,7 +3361,7 @@ Move_MOONLIGHT: loadspritegfx ANIM_TAG_GREEN_SPARKLE loadspritegfx ANIM_TAG_BLUE_STAR setalpha 0, 16 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 16, RGB_BLACK waitforvisualfinish createsprite gMoonSpriteTemplate, ANIM_ATTACKER, 2, 120, 56 createvisualtask AnimTask_AlphaFadeIn, 3, 0, 16, 16, 0, 1 @@ -3484,12 +3484,12 @@ Move_HEAT_WAVE: Move_HAIL: loadspritegfx ANIM_TAG_HAIL loadspritegfx ANIM_TAG_ICE_CRYSTALS - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 3, 0, 6, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 6, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_Hail, 5 loopsewithpan SE_M_HAIL, 0, 8, 10 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 3, 6, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 6, 0, RGB_BLACK end Move_TORMENT: @@ -3567,7 +3567,7 @@ Move_CHARGE: loadspritegfx ANIM_TAG_ELECTRICITY monbg ANIM_ATTACKER setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 4, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 4, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER @@ -3591,7 +3591,7 @@ Move_CHARGE: createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -16, -16 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 4, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 4, 4, 0, RGB_BLACK clearmonbg ANIM_ATTACKER blendoff end @@ -3721,13 +3721,13 @@ BrickBreakNormal: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET delay 20 createvisualtask AnimTask_WindUpLunge, 2, ANIM_ATTACKER, -24, 0, 24, 10, 24, 3 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 6, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 6, RGB_BLACK delay 37 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 createsprite gFistFootSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 10, 1, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 6, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 6, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_TARGET end @@ -3747,7 +3747,7 @@ BrickBreakShatteredWall: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET delay 20 createvisualtask AnimTask_WindUpLunge, 2, ANIM_ATTACKER, -24, 0, 24, 10, 24, 3 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 6, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 6, RGB_BLACK delay 37 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 createsprite gFistFootSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 10, 1, 0 @@ -3759,7 +3759,7 @@ BrickBreakShatteredWall: createsprite gBrickBreakWallShardSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 3, 8, 12 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 6, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 6, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_TARGET end @@ -3798,7 +3798,7 @@ Move_ENDEAVOR: Move_ERUPTION: loadspritegfx ANIM_TAG_WARM_ROCK - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 2, 0, 4, RGB_RED + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 2, 0, 4, RGB_RED waitforvisualfinish createvisualtask AnimTask_EruptionLaunchRocks, 2 waitplaysewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER, 60 @@ -3818,7 +3818,7 @@ Move_ERUPTION: createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 8, 60 loopsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET, 16, 12 delay 80 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 40, 31, 4, 4, 0, RGB_RED + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 40, F_PAL_BG | F_PAL_BATTLERS, 4, 4, 0, RGB_RED end Move_SKILL_SWAP: @@ -3873,13 +3873,13 @@ Move_CAMOUFLAGE: monbg ANIM_ATK_PARTNER splitbgprio ANIM_ATTACKER setalpha 16, 0 - createvisualtask AnimTask_SetCamouflageBlend, 5, 2, 3, 0, 14 + createvisualtask AnimTask_SetCamouflageBlend, 5, F_PAL_ATTACKER, 3, 0, 14 delay 16 createvisualtask AnimTask_AttackerFadeToInvisible, 2, 4 playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER waitforvisualfinish delay 8 - createvisualtask AnimTask_SetCamouflageBlend, 5, 2, 0, 0, 0 + createvisualtask AnimTask_SetCamouflageBlend, 5, F_PAL_ATTACKER, 0, 0, 0 waitforvisualfinish createvisualtask AnimTask_AttackerFadeFromInvisible, 2, 1 waitforvisualfinish @@ -3891,13 +3891,13 @@ Move_TAIL_GLOW: loadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT monbg ANIM_ATTACKER setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 4, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 4, RGB_BLACK waitforvisualfinish createsprite gTailGlowOrbSpriteTemplate, ANIM_ATTACKER, 66, ANIM_ATTACKER delay 18 loopsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER, 16, 6 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 4, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 4, 4, 0, RGB_BLACK clearmonbg ANIM_ATTACKER blendoff delay 1 @@ -3955,15 +3955,15 @@ Move_MIST_BALL: waitforvisualfinish playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 10, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16 delay 0 playsewithpan SE_M_HAZE, 0 createvisualtask AnimTask_LoadMistTiles, 5 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 3, 0, 16, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 3, 0, 16, RGB_WHITE delay 8 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0 delay 70 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 16, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 16, 0, RGB_WHITE end Move_FEATHER_DANCE: @@ -4133,7 +4133,7 @@ Move_AROMATHERAPY: loadspritegfx ANIM_TAG_FLOWER loadspritegfx ANIM_TAG_THIN_RING loadspritegfx ANIM_TAG_SPARKLE_2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 0, 0, 7, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 0, 0, 7, RGB(13, 31, 12) delay 1 monbg ANIM_ATTACKER delay 1 @@ -4151,7 +4151,7 @@ Move_AROMATHERAPY: waitforvisualfinish clearmonbg ANIM_ATTACKER delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 0, 7, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 0, 7, 0, RGB(13, 31, 12) delay 1 playsewithpan SE_M_STAT_INCREASE, SOUND_PAN_ATTACKER createvisualtask AnimTask_StatusClearedEffect, 2, 1 @@ -4162,7 +4162,7 @@ Move_AROMATHERAPY: createsprite gSparklingStarsSpriteTemplate, ANIM_ATTACKER, 16, 12, -5, 0, 0, 32, 60, 1 waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 43, 3, 10, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG | F_PAL_ATK_SIDE | F_PAL_ANIM_1, 3, 10, 0, RGB(13, 31, 12) createsprite gBlendThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 16, 0, 0, 0, 1 waitforvisualfinish end @@ -4223,13 +4223,13 @@ Move_ODOR_SLEUTH: waitforvisualfinish clearmonbg ANIM_TARGET delay 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 1, RGB_WHITEALPHA, 16, RGB_WHITEALPHA, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 1, RGB_WHITEALPHA, 16, RGB_WHITEALPHA, 0 playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER end Move_GRASS_WHISTLE: loadspritegfx ANIM_TAG_MUSIC_NOTES - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 4, RGB(18, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 4, RGB(18, 31, 12) waitforvisualfinish createvisualtask AnimTask_MusicNotesRainbowBlend, 2 waitforvisualfinish @@ -4260,19 +4260,19 @@ Move_GRASS_WHISTLE: delay 4 waitforvisualfinish createvisualtask AnimTask_MusicNotesClearRainbowBlend, 2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 4, 0, RGB(18, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 4, 4, 0, RGB(18, 31, 12) waitforvisualfinish end Move_TICKLE: loadspritegfx ANIM_TAG_EYE_SPARKLE - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 0, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 0, 0, 16, RGB_BLACK waitforvisualfinish createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, -16, -8 createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, 16, -8 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 0, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 0, 16, 0, RGB_BLACK waitforvisualfinish delay 20 createvisualtask AnimTask_SwayMon, 3, 0, 6, 1280, 3, ANIM_ATTACKER @@ -4351,7 +4351,7 @@ Move_AERIAL_ACE: playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 10, RGB_BLACK, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -4361,7 +4361,7 @@ Move_AERIAL_ACE: Move_IRON_DEFENSE: loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER, 28, 2 createvisualtask AnimTask_MetallicShine, 5, 0, 0, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 8, 2, RGB_WHITEALPHA, 14, RGB_WHITEALPHA, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 8, 2, RGB_WHITEALPHA, 14, RGB_WHITEALPHA, 0 waitforvisualfinish end @@ -4414,7 +4414,7 @@ Move_VOLT_TACKLE: loadspritegfx ANIM_TAG_ELECTRICITY monbg ANIM_ATTACKER setalpha 12, 8 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 0, 8, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 8, RGB_BLACK waitforvisualfinish createsprite gVoltTackleOrbSlideSpriteTemplate, ANIM_ATTACKER, 1 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER @@ -4451,7 +4451,7 @@ Move_VOLT_TACKLE: delay 2 createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -16, -16 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 8, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 8, 0, RGB_BLACK waitforvisualfinish end @@ -4547,7 +4547,7 @@ Move_SHOCK_WAVE: loadspritegfx ANIM_TAG_LIGHTNING monbg ANIM_ATTACKER setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 4, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 4, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 20, 0, 2 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER @@ -4561,10 +4561,10 @@ Move_SHOCK_WAVE: playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 6, 18, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 5, 1, 3, 16, 0, RGB_WHITE - createvisualtask AnimTask_BlendBattleAnimPal, 5, 4, 0, 16, 16, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 5, F_PAL_BG, 3, 16, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 5, F_PAL_TARGET, 0, 16, 16, RGB_BLACK delay 4 - createvisualtask AnimTask_BlendBattleAnimPal, 5, 4, 0, 0, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 5, F_PAL_TARGET, 0, 0, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_ATTACKER blendoff @@ -4629,7 +4629,7 @@ Move_MIND_READER: createsprite gWhiteHaloSpriteTemplate, ANIM_ATTACKER, 5 delay 40 playsewithpan SE_M_LEER, SOUND_PAN_TARGET - createvisualtask AnimTask_BlendColorCycle, 2, 1, 1, 2, 0, 10, RGB_BLACK + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG, 1, 2, 0, 10, RGB_BLACK call MindReaderEyeSpikeEffect waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -4665,8 +4665,8 @@ Move_ICE_PUNCH: loadspritegfx ANIM_TAG_ICE_CRYSTALS loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_HANDS_AND_FEET - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 7, RGB_BLACK - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 9, RGB(12, 26, 31) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 7, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB(12, 26, 31) delay 20 playsewithpan SE_M_STRING_SHOT, SOUND_PAN_TARGET createsprite gIceCrystalSpiralInwardSmall, ANIM_ATTACKER, 2, 0 @@ -4688,9 +4688,9 @@ Move_ICE_PUNCH: delay 15 call IceCrystalEffectShort delay 5 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 9, 0, RGB(12, 26, 31) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 9, 0, RGB(12, 26, 31) waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 7, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -4712,7 +4712,7 @@ Move_CONFUSION: call SetPsychicBackground setalpha 8, 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 8, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 2, 0, 8, RGB_WHITE waitforvisualfinish playsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 15, 1 @@ -4729,7 +4729,7 @@ Move_PSYCHIC: call SetPsychicBackground setalpha 8, 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 8, RGB(31, 23, 0) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 2, 0, 8, RGB(31, 23, 0) waitforvisualfinish loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 3 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 15, 1 @@ -4754,7 +4754,7 @@ FutureSight: call SetPsychicBackground setalpha 8, 8 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 8, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 2, 0, 8, RGB_WHITE createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_ATTACKER, 1 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER @@ -4767,7 +4767,7 @@ Move_THUNDER: waitbgfadeout createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 waitbgfadein - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 16, RGB_BLACK delay 16 createvisualtask AnimTask_InvertScreenColor, 2, 257, 257, 257 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET @@ -4811,7 +4811,7 @@ Move_THUNDER: delay 2 createvisualtask AnimTask_InvertScreenColor, 2, 257, 257, 257 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_TARGET, 2, 1, 2, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_TARGET, 2, F_PAL_BG, 2, 16, 0, RGB_BLACK waitforvisualfinish restorebg waitbgfadeout @@ -4825,7 +4825,7 @@ Move_THUNDER_PUNCH: loadspritegfx ANIM_TAG_LIGHTNING monbg ANIM_TARGET setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 16, RGB_BLACK waitforvisualfinish playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 8, 1, 0 @@ -4845,7 +4845,7 @@ Move_THUNDER_PUNCH: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 2 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_BLACK delay 20 waitforvisualfinish clearmonbg ANIM_TARGET @@ -4931,7 +4931,7 @@ Move_DRAGON_BREATH: delay 2 createsprite gDragonBreathFireSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0, 0, 20 delay 2 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 0, 9, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 9, RGB_RED createsprite gDragonBreathFireSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0, 0, 20 delay 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 21, 1 @@ -4951,7 +4951,7 @@ Move_DRAGON_BREATH: delay 2 createsprite gDragonBreathFireSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0, 0, 20 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 9, 0, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 9, 0, RGB_RED waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end @@ -5135,7 +5135,7 @@ Move_SMOG: call SmogCloud delay 120 loopsewithpan SE_M_TOXIC, SOUND_PAN_TARGET, 18, 2 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 2, 2, 0, 12, RGB(26, 0, 26) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 2, 2, 0, 12, RGB(26, 0, 26) delay 10 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 15, 1 waitforvisualfinish @@ -5269,14 +5269,14 @@ Move_DRAGON_RAGE: Move_RAIN_DANCE: loadspritegfx ANIM_TAG_RAIN_DROPS playsewithpan SE_M_RAIN_DANCE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 2, 0, 4, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 2, 0, 4, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120 createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120 delay 120 delay 30 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 2, 4, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 2, 4, 0, RGB_BLACK waitforvisualfinish end @@ -5347,7 +5347,7 @@ Move_ICE_BEAM: splitbgprio ANIM_TARGET setalpha 12, 8 loadspritegfx ANIM_TAG_ICE_CRYSTALS - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 7, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 7, RGB_BLACK waitforvisualfinish createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_BUBBLE_BEAM2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 4, 4, 0, 10 createsprite gIceBeamOuterCrystalSpriteTemplate, ANIM_ATTACKER, 2, 20, 12, 0, 12, 20 @@ -5356,7 +5356,7 @@ Move_ICE_BEAM: call IceBeamCreateCrystals call IceBeamCreateCrystals call IceBeamCreateCrystals - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 4, -31, 0, 7, RGB(0, 20, 31) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_TARGET, -31, 0, 7, RGB(0, 20, 31) createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 25, 1 call IceBeamCreateCrystals call IceBeamCreateCrystals @@ -5372,9 +5372,9 @@ Move_ICE_BEAM: waitforvisualfinish delay 20 call IceCrystalEffectShort - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 4, 5, 7, 0, RGB(0, 20, 31) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_TARGET, 5, 7, 0, RGB(0, 20, 31) waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 7, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -5437,7 +5437,7 @@ SolarBeamEnd: SolarBeamSetUp: monbg ANIM_ATK_PARTNER setalpha 12, 8 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 1, 4, 0, 11, RGB(31, 31, 11) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 1, 4, 0, 11, RGB(31, 31, 11) playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER call SolarBeamAbsorbEffect waitforvisualfinish @@ -5482,7 +5482,7 @@ SolarBeamUnleash: delay 4 createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 delay 4 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 0, 10, RGB(25, 31, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 10, RGB(25, 31, 0) createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 delay 4 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 65, 1 @@ -5497,7 +5497,7 @@ SolarBeamUnleash: call SolarBeamUnleash1 call SolarBeamUnleash1 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 1, 10, 0, RGB(25, 31, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 10, 0, RGB(25, 31, 0) call UnsetSolarBeamBg goto SolarBeamEnd SolarBeamUnleash1: @@ -5572,7 +5572,7 @@ BlizzardAgainstPlayer: Move_POWDER_SNOW: loadspritegfx ANIM_TAG_ICE_CRYSTALS monbg ANIM_DEF_PARTNER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 1, 0, 3, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 1, 0, 3, RGB_BLACK waitforvisualfinish panse SE_M_GUST, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call PowderSnowSnowballs @@ -5584,7 +5584,7 @@ Move_POWDER_SNOW: waitforvisualfinish clearmonbg ANIM_DEF_PARTNER delay 20 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 1, 3, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 1, 3, 0, RGB_BLACK end PowderSnowSnowballs: createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0, 56, 4, 4, 1 @@ -5665,7 +5665,7 @@ Move_SIGNAL_BEAM: call SignalBeamOrbs call SignalBeamOrbs createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 25, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 4, 8, 5, RGB_RED, 8, RGB(1, 30, 0), 8 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_TARGET, 8, 5, RGB_RED, 8, RGB(1, 30, 0), 8 call SignalBeamOrbs call SignalBeamOrbs call SignalBeamOrbs @@ -5698,7 +5698,7 @@ Move_ABSORB: monbg ANIM_DEF_PARTNER splitbgprio_foes ANIM_TARGET setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 4, RGB(13, 31, 12) waitforvisualfinish playsewithpan SE_M_ABSORB, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 2 @@ -5711,7 +5711,7 @@ Move_ABSORB: delay 15 call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 4, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 4, 0, RGB(13, 31, 12) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -5751,7 +5751,7 @@ Move_MEGA_DRAIN: monbg ANIM_DEF_PARTNER splitbgprio_foes ANIM_TARGET setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 8, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 8, RGB(13, 31, 12) waitforvisualfinish playsewithpan SE_M_ABSORB, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 1 @@ -5764,7 +5764,7 @@ Move_MEGA_DRAIN: delay 15 call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 8, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 8, 0, RGB(13, 31, 12) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -5812,7 +5812,7 @@ Move_GIGA_DRAIN: monbg ANIM_DEF_PARTNER splitbgprio_foes ANIM_TARGET setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 12, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 12, RGB(13, 31, 12) waitforvisualfinish playsewithpan SE_M_ABSORB, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 @@ -5825,7 +5825,7 @@ Move_GIGA_DRAIN: delay 15 call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 12, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 12, 0, RGB(13, 31, 12) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -5891,14 +5891,14 @@ Move_LEECH_LIFE: delay 2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 7, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 7, RGB_BLACK waitforvisualfinish call AbsorbEffect waitforvisualfinish delay 15 call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 7, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 7, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -5906,7 +5906,7 @@ Move_LEECH_LIFE: Move_SYNTHESIS: loadspritegfx ANIM_TAG_SPARKLE_2 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 16, RGB(27, 31, 18) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 16, RGB(27, 31, 18) playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER call GrantingStarsEffect waitforvisualfinish @@ -5948,7 +5948,7 @@ Move_SLUDGE: createsprite gSludgeProjectileSpriteTemplate, ANIM_TARGET, 2, 20, 0, 40, 0 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 1, 2, 0, 12, RGB(30, 0, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 1, 2, 0, 12, RGB(30, 0, 31) call PoisonBubblesEffect waitforvisualfinish end @@ -5966,7 +5966,7 @@ Move_SLUDGE_BOMB: call SludgeBombProjectile call SludgeBombProjectile createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 3, 0, 15, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 1, 2, 0, 12, RGB(30, 0, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 1, 2, 0, 12, RGB(30, 0, 31) createsprite gSludgeBombHitParticleSpriteTemplate, ANIM_TARGET, 2, 42, 27, 20 createsprite gSludgeBombHitParticleSpriteTemplate, ANIM_TARGET, 2, -27, 44, 20 createsprite gSludgeBombHitParticleSpriteTemplate, ANIM_TARGET, 2, 39, -28, 20 @@ -6010,7 +6010,7 @@ Move_ACID: delay 15 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 10, 1 createvisualtask AnimTask_ShakeMon2, 5, ANIM_DEF_PARTNER, 2, 0, 10, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 20, 2, 2, 0, 12, RGB(30, 0, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_DEF_SIDE, 2, 2, 0, 12, RGB(30, 0, 31) createsprite gAcidPoisonDropletSpriteTemplate, ANIM_TARGET, 2, 0, -22, 0, 15, 55 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 @@ -6060,7 +6060,7 @@ Move_BONE_CLUB: delay 12 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_BLACK, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, 5, 1, RGB_BLACK, 10, RGB_BLACK, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -6124,7 +6124,7 @@ MegahornContinue: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -16, 4, 1, 4 waitforvisualfinish createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, -4, 1, 12, 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 7, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 delay 10 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 11 delay 3 @@ -6266,7 +6266,7 @@ Move_CRABHAMMER: createsprite gWaterHitSplatSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, ANIM_TARGET, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 1 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB(13, 21, 31), 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB(13, 21, 31), 10, RGB_BLACK, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -24, 0, 0, 4 waitforvisualfinish delay 8 @@ -6362,14 +6362,14 @@ Move_WHIRLPOOL: splitbgprio ANIM_TARGET setalpha 12, 8 delay 0 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 0, 7, RGB(0, 13, 23) playsewithpan SE_M_WHIRLPOOL, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 50, 1 call WhirlpoolEffect call WhirlpoolEffect call WhirlpoolEffect delay 12 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 7, 0, RGB(0, 13, 23) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 7, 0, RGB(0, 13, 23) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end @@ -6469,7 +6469,7 @@ Move_CROSS_CHOP: createsprite gCrossChopHandSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1 delay 40 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_WHITE, 10, RGB_BLACK, 10 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_WHITE, 10, RGB_BLACK, 10 createsprite gCrossImpactSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 20 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 7, 0, 9, 1 waitforvisualfinish @@ -6721,7 +6721,7 @@ Move_SUNNY_DAY: loadspritegfx ANIM_TAG_SUNLIGHT monbg ANIM_ATK_PARTNER setalpha 13, 3 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 1, 0, 6, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 1, 0, 6, RGB_WHITE waitforvisualfinish panse_adjustnone SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 call SunnyDayLightRay @@ -6729,7 +6729,7 @@ Move_SUNNY_DAY: call SunnyDayLightRay call SunnyDayLightRay waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 1, 6, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 1, 6, 0, RGB_WHITE waitforvisualfinish clearmonbg ANIM_ATK_PARTNER blendoff @@ -6929,7 +6929,7 @@ Move_MIST: call MistCloud call MistCloud delay 32 - createvisualtask AnimTask_BlendColorCycle, 2, 10, 8, 2, 0, 14, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATK_SIDE, 8, 2, 0, 14, RGB_WHITE waitforvisualfinish clearmonbg ANIM_ATK_PARTNER blendoff @@ -6945,9 +6945,9 @@ Move_HAZE: playsewithpan SE_M_HAZE, 0 createvisualtask AnimTask_HazeScrollingFog, 5 delay 30 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x780, 2, 0, 16, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 16, RGB_BLACK delay 90 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x780, 1, 16, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 1, 16, 0, RGB_BLACK end Move_FIRE_PUNCH: @@ -6956,7 +6956,7 @@ Move_FIRE_PUNCH: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 8 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 9, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB_RED createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 0 createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 64 createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 128 @@ -6970,7 +6970,7 @@ Move_FIRE_PUNCH: delay 4 playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 0, 9, 0, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 9, 0, RGB_RED waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -7099,7 +7099,7 @@ Move_POISON_GAS: createsprite gPoisonGasCloudSpriteTemplate, ANIM_TARGET, 0, 64, 0, 0, -32, -6, 4192, 1072, 0 delay 40 loopsewithpan SE_M_MIST, SOUND_PAN_TARGET, 28, 6 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 6, 2, 0, 12, RGB(26, 0, 26) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 6, 2, 0, 12, RGB(26, 0, 26) waitforvisualfinish blendoff clearmonbg ANIM_DEF_PARTNER @@ -7133,7 +7133,7 @@ Move_PSYBEAM: call PsybeamRings call PsybeamRings createvisualtask AnimTask_SwayMon, 5, 0, 6, 2048, 4, ANIM_TARGET - createvisualtask AnimTask_BlendColorCycle, 2, 4, 2, 2, 0, 12, RGB(31, 18, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 2, 2, 0, 12, RGB(31, 18, 31) call PsybeamRings call PsybeamRings call PsybeamRings @@ -7158,7 +7158,7 @@ Move_HYPNOSIS: call HypnosisRings call HypnosisRings call HypnosisRings - createvisualtask AnimTask_BlendColorCycle, 2, 4, 2, 2, 0, 12, RGB(31, 18, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 2, 2, 0, 12, RGB(31, 18, 31) waitforvisualfinish delay 1 call UnsetPsychicBackground @@ -7178,7 +7178,7 @@ Move_PSYWAVE: createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_TELEPORT, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 9, 0, 10 call PsywaveRings call PsywaveRings - createvisualtask AnimTask_BlendColorCycle, 2, 4, 1, 4, 0, 12, RGB(31, 18, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 1, 4, 0, 12, RGB(31, 18, 31) call PsywaveRings call PsywaveRings call PsywaveRings @@ -7314,7 +7314,7 @@ Move_NIGHT_SHADE: createvisualtask AnimTask_NightShadeClone, 5, 85 delay 70 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 12, 1 - createvisualtask AnimTask_BlendColorCycle, 2, 4, 0, 2, 0, 13, RGB_BLACK + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 0, 2, 0, 13, RGB_BLACK waitforvisualfinish clearmonbg ANIM_ATTACKER delay 1 @@ -7376,7 +7376,7 @@ Move_FOCUS_ENERGY: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect delay 8 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 11, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 11, RGB_WHITE createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 call EndureEffect delay 8 @@ -7389,7 +7389,7 @@ Move_BIDE: end BideSetUp: loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER, 9, 2 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 11, RGB_RED + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 11, RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 waitforvisualfinish end @@ -7399,7 +7399,7 @@ BideUnleash: monbg ANIM_DEF_PARTNER setalpha 12, 8 loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER, 9, 2 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 2, 0, 11, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 11, RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, 0, 0, 4 @@ -7418,7 +7418,7 @@ BideUnleash: delay 5 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 7 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 2, 11, 0, RGB_RED + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 11, 0, RGB_RED waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -7429,7 +7429,7 @@ Move_STRING_SHOT: loadspritegfx ANIM_TAG_WEB_THREAD monbg ANIM_DEF_PARTNER delay 0 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 0, 9, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, F_PAL_BG, 2, 0, 9, RGB_BLACK waitforvisualfinish loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 9, 6 call StringShotThread @@ -7461,7 +7461,7 @@ Move_STRING_SHOT: clearmonbg ANIM_DEF_PARTNER delay 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 9, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, F_PAL_BG, 2, 9, 0, RGB_BLACK end StringShotThread: @@ -7474,7 +7474,7 @@ Move_SPIDER_WEB: loadspritegfx ANIM_TAG_WEB_THREAD monbg ANIM_DEF_PARTNER delay 0 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 0, 9, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, F_PAL_BG, 2, 0, 9, RGB_BLACK waitforvisualfinish splitbgprio ANIM_TARGET loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 9, 6 @@ -7498,7 +7498,7 @@ Move_SPIDER_WEB: waitforvisualfinish clearmonbg ANIM_DEF_PARTNER delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 9, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, F_PAL_BG, 2, 9, 0, RGB_BLACK end SpiderWebThread: @@ -7566,7 +7566,7 @@ Move_RECOVER: monbg ANIM_ATK_PARTNER setalpha 12, 8 loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 13, 3 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 6, 0, 11, RGB(31, 31, 11) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 6, 0, 11, RGB(31, 31, 11) call RecoverAbsorbEffect call RecoverAbsorbEffect call RecoverAbsorbEffect @@ -7608,7 +7608,7 @@ Move_MIMIC: setarg 7, 0xFFFF waitforvisualfinish playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 11, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 2, 0, 11, RGB_WHITE waitforvisualfinish clearmonbg_static ANIM_DEF_PARTNER blendoff @@ -7655,7 +7655,7 @@ CurseGhost: createsprite gCurseGhostSpriteTemplate, ANIM_TARGET, 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 14, 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 16, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end @@ -7673,7 +7673,7 @@ CurseStats: CurseStats1: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_DrawFallingWhiteLinesOnAttacker, 5 - createvisualtask AnimTask_BlendColorCycle, 5, 2, 4, 2, 0, 10, RGB_RED + createvisualtask AnimTask_BlendColorCycle, 5, F_PAL_ATTACKER, 4, 2, 0, 10, RGB_RED return Move_SOFT_BOILED: @@ -7688,7 +7688,7 @@ Move_SOFT_BOILED: delay 120 delay 7 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 10, 0, RGB(12, 24, 30) createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 31, 16, 0, 1 delay 8 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 31, 16, 0, 1 @@ -7703,7 +7703,7 @@ Move_HEAL_BELL: loadspritegfx ANIM_TAG_BELL loadspritegfx ANIM_TAG_MUSIC_NOTES_2 loadspritegfx ANIM_TAG_THIN_RING - createvisualtask AnimTask_BlendBattleAnimPal, 10, 10, 0, 0, 10, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATK_SIDE, 0, 0, 10, RGB_WHITE waitforvisualfinish createvisualtask AnimTask_LoadMusicNotesPals, 5 createsprite gBellSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 0, 1 @@ -7741,12 +7741,12 @@ Move_HEAL_BELL: loadspritegfx ANIM_TAG_THIN_RING playsewithpan SE_SHINY, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, 4, 3, 10, 0, RGB(12, 24, 30) - createvisualtask AnimTask_BlendBattleAnimPal, 10, 10, 3, 10, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATK_SIDE, 3, 10, 0, RGB_WHITE createsprite gBlendThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 16, 0, 0, 0, 1 end HealBellRing: createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, 4, 3, 8, 0, RGB(12, 24, 30) - createvisualtask AnimTask_BlendBattleAnimPal, 10, 10, 3, 2, 10, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATK_SIDE, 3, 2, 10, RGB_WHITE createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 40, 0, -24, 0, 1 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER return @@ -7759,12 +7759,12 @@ Move_FAKE_OUT: createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 createvisualtask AnimTask_StretchTargetUp, 3 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 16, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 16, 0, RGB_WHITE end Move_SCARY_FACE: loadspritegfx ANIM_TAG_EYE_SPARKLE - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 27, 3, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_ATK_SIDE | F_PAL_DEF_PARTNER, 3, 0, 16, RGB_BLACK playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER waitforvisualfinish delay 10 @@ -7776,7 +7776,7 @@ Move_SCARY_FACE: waitforvisualfinish createvisualtask AnimTask_ShakeTargetInPattern, 3, 20, 1, FALSE playsewithpan SE_M_STRING_SHOT2, SOUND_PAN_TARGET - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 27, 3, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_ATK_SIDE | F_PAL_DEF_PARTNER, 3, 16, 0, RGB_BLACK waitforvisualfinish end @@ -7920,7 +7920,7 @@ PresentHeal: Move_BATON_PASS: loadspritegfx ANIM_TAG_POKEBALL playsewithpan SE_M_BATON_PASS, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendColorCycle, 2, 31, 1, 2, 0, 11, RGB(31, 22, 30) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG | F_PAL_BATTLERS, 1, 2, 0, 11, RGB(31, 22, 30) createsprite gBatonPassPokeballSpriteTemplate, ANIM_ATTACKER, 2 end @@ -7946,13 +7946,13 @@ Move_PERISH_SONG: delay 20 panse SE_M_PERISH_SONG, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 delay 80 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 0, 16, RGB_BLACK createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 4, 0 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 5, 0 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 6, 0 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 7, 0 delay 100 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 16, 0, RGB_BLACK createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 4, 1 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 5, 1 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, 6, 1 @@ -8027,7 +8027,7 @@ Move_TRI_ATTACK: delay 20 createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_TRI_ATTACK, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 5, 6, 0, 7 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 16, RGB_BLACK delay 16 loadspritegfx ANIM_TAG_FIRE createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, -1, 0 @@ -8063,7 +8063,7 @@ Move_TRI_ATTACK: waitforvisualfinish loadspritegfx ANIM_TAG_ICE_CRYSTALS call IceCrystalEffectShort - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_BLACK waitforvisualfinish end @@ -8149,7 +8149,7 @@ Move_TRICK: Move_WISH: loadspritegfx ANIM_TAG_GOLD_STARS loadspritegfx ANIM_TAG_SPARKLE_2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 10, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 0, 10, RGB_BLACK waitforvisualfinish panse_adjustall SE_M_REFLECT, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0 createsprite gWishStarSpriteTemplate, ANIM_ATTACKER, 40 @@ -8158,19 +8158,19 @@ Move_WISH: loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 16, 3 call GrantingStarsEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 10, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 10, 0, RGB_BLACK waitforvisualfinish end Move_STOCKPILE: loadspritegfx ANIM_TAG_GRAY_ORB playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendColorCycle, 2, 2, 8, 1, 0, 12, RGB_WHITE + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 8, 1, 0, 12, RGB_WHITE createvisualtask AnimTask_StockpileDeformMon, 5 call StockpileAbsorb call StockpileAbsorb waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 0, 12, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 0, 12, 0, RGB_WHITE end StockpileAbsorb: createsprite gStockpileAbsorptionOrbSpriteTemplate, ANIM_ATTACKER, 2, 55, 55, 13 @@ -8288,7 +8288,7 @@ Move_MORNING_SUN: loadspritegfx ANIM_TAG_BLUE_STAR createvisualtask AnimTask_MorningSunLightBeam, 5 delay 8 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 8, 0, 12, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 8, 0, 12, RGB_WHITE delay 14 call MorningSunStar call MorningSunStar @@ -8305,7 +8305,7 @@ Move_MORNING_SUN: call MorningSunStar call MorningSunStar call MorningSunStar - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 3, 12, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 3, 12, 0, RGB_WHITE waitforvisualfinish waitsound call HealingEffect @@ -8324,7 +8324,7 @@ Move_SWEET_SCENT: call SweetScentEffect createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 55, 0 setpan SOUND_PAN_TARGET - createvisualtask AnimTask_BlendColorCycle, 2, 20, 1, 5, 5, 13, RGB(31, 21, 21) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_DEF_SIDE, 1, 5, 5, 13, RGB(31, 21, 21) call SweetScentEffect waitforvisualfinish end @@ -8355,7 +8355,7 @@ SweetScentEffect: Move_HYPER_BEAM: loadspritegfx ANIM_TAG_ORBS - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 0, 16, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 4, 0, 16, RGB_BLACK waitforvisualfinish delay 10 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_ATTACKER @@ -8371,7 +8371,7 @@ Move_HYPER_BEAM: call HyperBeamOrbs call HyperBeamOrbs createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 50, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 11, RGB(25, 25, 25) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 11, RGB(25, 25, 25) call HyperBeamOrbs call HyperBeamOrbs call HyperBeamOrbs @@ -8393,9 +8393,9 @@ Move_HYPER_BEAM: call HyperBeamOrbs call HyperBeamOrbs call HyperBeamOrbs - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 11, 0, RGB(25, 25, 25) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(25, 25, 25) waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 16, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 4, 16, 0, RGB_BLACK end HyperBeamOrbs: createsprite gHyperBeamOrbSpriteTemplate, ANIM_TARGET, 2 @@ -8450,17 +8450,17 @@ CreateFlatterConfetti: Move_ROLE_PLAY: monbg ANIM_ATK_PARTNER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 16, RGB_WHITE - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 10, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 16, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 0, 10, RGB_BLACK waitforvisualfinish playsewithpan SE_M_TRI_ATTACK, SOUND_PAN_ATTACKER waitplaysewithpan SE_M_DETECT, SOUND_PAN_ATTACKER, 30 createvisualtask AnimTask_RolePlaySilhouette, 2 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 16, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 16, 0, RGB_WHITE delay 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 10, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 10, 0, RGB_BLACK end Move_REFRESH: @@ -8473,7 +8473,7 @@ Move_REFRESH: call GrantingStarsEffect waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 10, 0, RGB(12, 24, 30) createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 end @@ -8485,13 +8485,13 @@ Move_BLAZE_KICK: setalpha 12, 8 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_TARGET createsprite gSpinningHandOrFootSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 30 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 7, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_WHITE delay 30 playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 14, 1 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_WHITE - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 0, RGB_WHITE + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 1, RGB_BLACK, 8, RGB_BLACK, 0 call FireSpreadEffect waitforvisualfinish clearmonbg ANIM_TARGET @@ -8510,7 +8510,7 @@ Move_HYPER_VOICE: end HyperVoiceEffect: - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 8, 0, RGB_YELLOW + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 3, 8, 0, RGB_YELLOW createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 @@ -8521,14 +8521,14 @@ HyperVoiceEffect: Move_SAND_TOMB: loadspritegfx ANIM_TAG_MUD_SAND - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(19, 17, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 0, 7, RGB(19, 17, 0) createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 43, 1 playsewithpan SE_M_SAND_TOMB, SOUND_PAN_TARGET call SandTombSwirlingDirt call SandTombSwirlingDirt call SandTombSwirlingDirt delay 22 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 7, 0, RGB(19, 17, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 7, 0, RGB(19, 17, 0) waitforvisualfinish end @@ -8627,7 +8627,7 @@ Move_DRAGON_CLAW: loadspritegfx ANIM_TAG_SMALL_EMBER loadspritegfx ANIM_TAG_CLAW_SLASH playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 4, 0, 8, RGB(31, 19, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 4, 0, 8, RGB(31, 19, 0) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 15, 1 call DragonClawFireSpiral call DragonClawFireSpiral @@ -8664,7 +8664,7 @@ Move_DRAGON_CLAW: createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 4, 8, 0, RGB(31, 19, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 4, 8, 0, RGB(31, 19, 0) waitforvisualfinish end DragonClawFireSpiral: @@ -8747,7 +8747,7 @@ Move_REVENGE: playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER createsprite gRevengeSmallScratchSpriteTemplate, ANIM_ATTACKER, 2, 10, -10 waitforvisualfinish - createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 4, 2, 8, RGB_RED + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 4, 2, 8, RGB_RED waitforvisualfinish unloadspritegfx ANIM_TAG_PURPLE_SCRATCH loadspritegfx ANIM_TAG_PURPLE_SWIPE @@ -8777,7 +8777,7 @@ Move_POISON_FANG: delay 10 createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 3, 0, 10, 1 waitforvisualfinish - createvisualtask AnimTask_BlendColorCycle, 2, 4, 0, 4, 0, 12, RGB(26, 0, 26) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_TARGET, 0, 4, 0, 12, RGB(26, 0, 26) call PoisonBubblesEffect waitforvisualfinish end @@ -8793,7 +8793,7 @@ Move_FRENZY_PLANT: monbg ANIM_TARGET splitbgprio ANIM_TARGET setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 2, 0, 5, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 2, 0, 5, RGB_BLACK waitforvisualfinish createsprite gFrenzyPlantRootSpriteTemplate, ANIM_ATTACKER, 2, 10, 8, 2, 0, 0, 100 playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER @@ -8841,7 +8841,7 @@ Move_FRENZY_PLANT: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 10, ANIM_TARGET, 1 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 2, 5, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 2, 5, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -8983,7 +8983,7 @@ ReturnStrong: createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1 goto ReturnContinue ReturnStrongest: - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 6, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 0, 6, RGB_BLACK waitforvisualfinish createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 16, 1, ANIM_ATTACKER createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER @@ -9040,7 +9040,7 @@ ReturnStrongest: createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, -5, 3, ANIM_TARGET, 0 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_MEGA_KICK2, SOUND_PAN_TARGET waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 6, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 6, 0, RGB_BLACK goto ReturnContinue ReturnStrongestHit: createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 4, 3, ANIM_ATTACKER @@ -9170,7 +9170,7 @@ Move_SILVER_WIND: createvisualtask AnimTask_StartSlidingBg, 5, 1536, 0, 0, -1 SilverWindContinue: delay 0 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 1, 0, 4, 4, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 4, 4, RGB_BLACK waitbgfadein createsprite gSilverWindBigSparkSpriteTemplate, ANIM_TARGET, 66, -32, 16, 0, 6, 2, 3, 1 createsprite gSilverWindBigSparkSpriteTemplate, ANIM_TARGET, 66, -8, 18, 64, 3, 2, 2, 1 @@ -9284,7 +9284,7 @@ Move_OVERHEAT: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 18 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 5, RGB(28, 0, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 5, RGB(28, 0, 0) waitforvisualfinish createvisualtask AnimTask_AllocBackupPalBuffer, 5 waitforvisualfinish @@ -9295,7 +9295,7 @@ Move_OVERHEAT: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_CopyPalUnfadedToBackup, 5, 1, 0 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 1, 0, 13, RGB(28, 0, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 1, 0, 13, RGB(28, 0, 0) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 2, 0, 15, 1 waitforvisualfinish playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER @@ -9341,12 +9341,12 @@ Move_OVERHEAT: playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_CopyPalFadedToUnfaded, 5, 1 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, -1, 0, 13, RGB(18, 18, 18) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, -1, 0, 13, RGB(18, 18, 18) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 3, 0, 15, 1 waitforvisualfinish createvisualtask AnimTask_CopyPalUnfadedFromBackup, 5, 0, 1 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 5, 0, RGB(28, 0, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 5, 0, RGB(28, 0, 0) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -9354,7 +9354,7 @@ Move_OVERHEAT: delay 15 createvisualtask AnimTask_CopyPalUnfadedFromBackup, 5, 1, 0 delay 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 0, 13, 0, RGB(18, 18, 18) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 0, 13, 0, RGB(18, 18, 18) waitforvisualfinish createvisualtask AnimTask_FreeBackupPalBuffer, 5 waitforvisualfinish @@ -9498,7 +9498,7 @@ Move_WATER_PULSE: monbg ANIM_TARGET splitbgprio ANIM_TARGET playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 7, RGB(0, 25, 28) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 0, 0, 7, RGB(0, 25, 28) delay 10 createsprite gWaterPulseBubbleSpriteTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 createsprite gWaterPulseBubbleSpriteTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 @@ -9518,7 +9518,7 @@ Move_WATER_PULSE: delay 13 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 8, 18, 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 7, 0, RGB(0, 25, 28) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 7, 0, RGB(0, 25, 28) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end @@ -9531,7 +9531,7 @@ Move_PSYCHO_BOOST: createvisualtask AnimTask_FadeScreenToWhite, 5 waitbgfadein delay 6 - createvisualtask AnimTask_BlendColorCycle, 2, 1, 2, 8, 0, 10, RGB_BLACK + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_BG, 2, 8, 0, 10, RGB_BLACK delay 0 splitbgprio ANIM_ATTACKER setalpha 8, 8 @@ -9558,7 +9558,7 @@ Move_KNOCK_OFF: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET createsprite gKnockOffStrikeSpriteTemplate, ANIM_TARGET, 2, -16, -16 delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -12, 10, 0, 3 @@ -9576,7 +9576,7 @@ Move_DOOM_DESIRE: delay 1 monbg ANIM_ATK_PARTNER createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_TARGET, FALSE - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 4, RGB_BLACK waitforvisualfinish setalpha 8, 8 playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER @@ -9584,7 +9584,7 @@ Move_DOOM_DESIRE: waitforvisualfinish delay 20 createvisualtask AnimTask_SetGrayscaleOrOriginalPal, 5, ANIM_TARGET, TRUE - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 4, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 4, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_ATK_PARTNER blendoff @@ -9836,7 +9836,7 @@ Move_WEATHER_BALL: waitforvisualfinish delay 15 playsewithpan SE_M_DETECT, 0 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 5, 1, RGB_WHITE, 10, RGB_BLACK, 0 waitforvisualfinish createvisualtask AnimTask_GetWeather, 2 delay 1 @@ -10218,7 +10218,7 @@ UnsetSolarBeamBg: Status_Poison: loopsewithpan SE_M_TOXIC, SOUND_PAN_TARGET, 13, 6 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 18, 2 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 12, RGB(30, 0, 31) + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 12, RGB(30, 0, 31) end Status_Confusion: @@ -10320,13 +10320,13 @@ General_StatsChange: General_SubstituteFade: monbg ANIM_ATTACKER createvisualtask AnimTask_SubstituteFadeToInvisible, 5 - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 0, 0, 16, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 0, 16, RGB_WHITE waitforvisualfinish delay 1 clearmonbg ANIM_ATTACKER delay 2 blendoff - createvisualtask AnimTask_BlendBattleAnimPal, 10, 2, 0, 0, 0, RGB_WHITE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 0, 0, RGB_WHITE createvisualtask AnimTask_SwapMonSpriteToFromSubstitute, 2, TRUE end @@ -10389,13 +10389,13 @@ Status_Whirlpool: splitbgprio ANIM_TARGET setalpha 12, 8 delay 0 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 0, 7, RGB(0, 13, 23) playsewithpan SE_M_WHIRLPOOL, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 30, 1 call WhirlpoolEffect call WhirlpoolEffect delay 12 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 7, 0, RGB(0, 13, 23) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 7, 0, RGB(0, 13, 23) waitforvisualfinish stopsound clearmonbg ANIM_DEF_PARTNER @@ -10420,13 +10420,13 @@ Status_Clamp: Status_SandTomb: loadspritegfx ANIM_TAG_MUD_SAND - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(19, 17, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 0, 7, RGB(19, 17, 0) createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 30, 1 playsewithpan SE_M_SAND_TOMB, SOUND_PAN_TARGET call SandTombSwirlingDirt call SandTombSwirlingDirt delay 22 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 7, 0, RGB(19, 17, 0) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_TARGET, 2, 7, 0, RGB(19, 17, 0) waitforvisualfinish stopsound end @@ -10448,7 +10448,7 @@ General_HeldItemEffect: call GrantingStarsEffect waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 3, 7, 0, RGB(17, 31, 25) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_ATTACKER, 3, 7, 0, RGB(17, 31, 25) createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitforvisualfinish end @@ -10492,11 +10492,11 @@ General_SmokeballEscape: end General_FocusBand: - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 2, 7, 0, 9, RGB_RED + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_ATTACKER, 7, 0, 9, RGB_RED playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_SlideMonForFocusBand, 5, 30, 128, 0, 1, 2, 0, 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 2, 4, 9, 0, RGB_RED + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_ATTACKER, 4, 9, 0, RGB_RED waitforvisualfinish delay 6 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 0, 0, 0, 15 @@ -10505,13 +10505,13 @@ General_FocusBand: General_Rain: loadspritegfx ANIM_TAG_RAIN_DROPS playsewithpan SE_M_RAIN_DANCE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 2, 0, 4, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 2, 0, 4, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 delay 50 waitforvisualfinish - createvisualtask AnimTask_BlendBattleAnimPal, 10, 0x781, 2, 4, 0, RGB_BLACK + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG | F_PAL_BATTLERS_2, 2, 4, 0, RGB_BLACK waitforvisualfinish end @@ -10595,7 +10595,7 @@ General_FutureSightHit: General_DoomDesireHit: createvisualtask AnimTask_SetAnimTargetToBattlerTarget, 2 loadspritegfx ANIM_TAG_EXPLOSION - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 16, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 0, 16, RGB_WHITE waitforvisualfinish delay 10 createvisualtask AnimTask_DoomDesireLightBeam, 5 @@ -10622,7 +10622,7 @@ General_DoomDesireHit: playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, 1, 1 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 16, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 16, 0, RGB_WHITE waitforvisualfinish end @@ -10631,7 +10631,7 @@ General_FocusPunchSetUp: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect delay 8 - createvisualtask AnimTask_BlendColorCycle, 2, 2, 2, 2, 0, 11, RGB_RED + createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 2, 2, 0, 11, RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 call EndureEffect delay 8 @@ -10644,7 +10644,7 @@ General_IngrainHeal: loadspritegfx ANIM_TAG_BLUE_STAR monbg ANIM_DEF_PARTNER setalpha 12, 8 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 0, 4, RGB(13, 31, 12) waitforvisualfinish delay 3 call AbsorbEffect @@ -10652,7 +10652,7 @@ General_IngrainHeal: delay 15 call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 4, 0, RGB(13, 31, 12) + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 1, 4, 0, RGB(13, 31, 12) waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -10660,7 +10660,7 @@ General_IngrainHeal: General_WishHeal: loadspritegfx ANIM_TAG_SPARKLE_2 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 10, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 0, 10, RGB_BLACK waitforvisualfinish playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER call GrantingStarsEffect @@ -10669,7 +10669,7 @@ General_WishHeal: loadspritegfx ANIM_TAG_BLUE_STAR call HealingEffect waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 10, 0, RGB_BLACK + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 3, 10, 0, RGB_BLACK end SnatchMoveTrySwapFromSubstitute: diff --git a/include/battle_anim.h b/include/battle_anim.h index 9d1cf7be2a10..c42fa033b629 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -118,7 +118,7 @@ void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation); void InitSpriteDataForLinearTranslation(struct Sprite *sprite); void PrepareBattlerSpriteForRotScale(u8 spriteId, u8 objMode); void SetBattlerSpriteYOffsetFromRotation(u8 spriteId); -u32 GetBattleBgPalettesMask(u8 battleBackground, u8 attacker, u8 target, u8 attackerPartner, u8 targetPartner, u8 a6, u8 a7); +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 AnimDummyReturnArg(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); @@ -229,7 +229,7 @@ void DestroyAnimSpriteAfterTimer(struct Sprite *sprite); // battle_anim_smokescreen.c u8 SmokescreenImpact(s16 x, s16 y, u8 a3); -u32 UnpackSelectedBattleBgPalettes(s16); +u32 UnpackSelectedBattlePalettes(s16); u8 GetBattlerSpriteFinal_Y(u8, u16, u8); diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 2ff9318be0cf..00ad083eb50d 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -413,4 +413,21 @@ #define ANIM_WEATHER_SANDSTORM 3 #define ANIM_WEATHER_HAIL 4 +// Flags given to various functions to indicate which palettes to consider. +// Handled by UnpackSelectedBattlePalettes +#define F_PAL_BG (1 << 0) +#define F_PAL_ATTACKER (1 << 1) +#define F_PAL_TARGET (1 << 2) +#define F_PAL_ATK_PARTNER (1 << 3) +#define F_PAL_DEF_PARTNER (1 << 4) +#define F_PAL_ANIM_1 (1 << 5) // Palette set for GetBattleAnimBg1Data/GetBgDataForTransform. Only used (ineffectually?) by Aromatherapy. +#define F_PAL_ANIM_2 (1 << 6) // Palette set for GetBattleAnimBgData/GetBgDataForTransform. Unused. +#define F_PAL_ATK_SIDE (F_PAL_ATTACKER | F_PAL_ATK_PARTNER) +#define F_PAL_DEF_SIDE (F_PAL_TARGET | F_PAL_DEF_PARTNER) +#define F_PAL_BATTLERS (F_PAL_ATK_SIDE | F_PAL_DEF_SIDE) +// The below are only used by AnimTask_BlendBattleAnimPal to get battler sprite palettes by position rather than by role. +// It's redundant with F_PAL_BATTLERS, because they're only ever used together to refer to all the battlers at once. +#define F_PAL_BATTLERS_2 (1 << 7 | 1 << 8 | 1 << 9 | 1 << 10) + + #endif // GUARD_CONSTANTS_BATTLE_ANIM_H diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index d460b9236b68..76868342fd83 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -4343,7 +4343,7 @@ static void AnimLockOnTarget_Step4(struct Sprite* sprite) sprite->data[1] = 0; } - BlendPalettes(GetBattleBgPalettesMask(1, 1, 1, 1, 1, 0, 0), sprite->data[1], RGB(31, 31, 31)); + BlendPalettes(GetBattlePalettesMask(TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE), sprite->data[1], RGB(31, 31, 31)); if (sprite->data[1] == 16) { int pal; @@ -4998,7 +4998,7 @@ static void AnimMoonlightSparkle_Step(struct Sprite* sprite) void AnimTask_MoonlightEndFade(u8 taskId) { - int a = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0) & 0xFFFF; + int a = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE) & 0xFFFF; int b; int c; int d; diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 101b255df8e0..9764d5522a6e 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3116,7 +3116,7 @@ static void AnimTask_FakeOut_Step2(u8 taskId) { gTasks[taskId].data[11] = 0x88; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG3 | BLDCNT_EFFECT_LIGHTEN); - BlendPalettes(GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0), 16, RGB(31, 31, 31)); + BlendPalettes(GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE), 16, RGB(31, 31, 31)); } else if (gTasks[taskId].data[10] > 4) { diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 02b89b965a8d..16af298604d0 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -1004,7 +1004,7 @@ static void AnimTask_CurseStretchingBlackBg_Step1(u8 taskId) right = DISPLAY_WIDTH; top = 0; bottom = 112; - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); BeginNormalPaletteFade(selectedPalettes, 0, 16, 16, RGB(0, 0, 0)); gTasks[taskId].func = AnimTask_CurseStretchingBlackBg_Step2; } diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index a03196ee17b0..cee50df3fac4 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -908,13 +908,17 @@ bool8 IsDoubleBattle(void) return IS_DOUBLE_BATTLE(); } +#define BG_ANIM_PAL_1 8 +#define BG_ANIM_PAL_2 9 +#define BG_ANIM_PAL_CONTEST 14 + void GetBattleAnimBg1Data(struct BattleAnimBgData *out) { if (IsContest()) { out->bgTiles = gBattleAnimBgTileBuffer; out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; - out->paletteId = 14; + out->paletteId = BG_ANIM_PAL_CONTEST; out->bgId = 1; out->tilesOffset = 0; out->unused = 0; @@ -923,7 +927,7 @@ void GetBattleAnimBg1Data(struct BattleAnimBgData *out) { out->bgTiles = gBattleAnimBgTileBuffer; out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; - out->paletteId = 8; + out->paletteId = BG_ANIM_PAL_1; out->bgId = 1; out->tilesOffset = 0x200; out->unused = 0; @@ -936,7 +940,7 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) { out->bgTiles = gBattleAnimBgTileBuffer; out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; - out->paletteId = 14; + out->paletteId = BG_ANIM_PAL_CONTEST; out->bgId = 1; out->tilesOffset = 0; out->unused = 0; @@ -949,7 +953,7 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId) { out->bgTiles = gBattleAnimBgTileBuffer; out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; - out->paletteId = 9; + out->paletteId = BG_ANIM_PAL_2; out->bgId = 2; out->tilesOffset = 0x300; out->unused = 0; @@ -962,21 +966,21 @@ void GetBgDataForTransform(struct BattleAnimBgData *out, u8 battlerId) out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer; if (IsContest()) { - out->paletteId = 14; + out->paletteId = BG_ANIM_PAL_CONTEST; out->bgId = 1; out->tilesOffset = 0; out->unused = 0; } else if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1) { - out->paletteId = 8; + out->paletteId = BG_ANIM_PAL_1; out->bgId = 1; out->tilesOffset = 0x200; out->unused = 0; } else { - out->paletteId = 9; + out->paletteId = BG_ANIM_PAL_2; out->bgId = 2; out->tilesOffset = 0x300; out->unused = 0; @@ -1401,7 +1405,7 @@ void SetGrayscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor) } } -u32 GetBattleBgPalettesMask(u8 battleBackground, u8 attacker, u8 target, u8 attackerPartner, u8 targetPartner, u8 a6, u8 a7) +u32 GetBattlePalettesMask(bool8 battleBackground, bool8 attacker, bool8 target, bool8 attackerPartner, bool8 targetPartner, bool8 anim1, bool8 anim2) { u32 selectedPalettes = 0; u32 shift; @@ -1409,7 +1413,7 @@ u32 GetBattleBgPalettesMask(u8 battleBackground, u8 attacker, u8 target, u8 atta if (battleBackground) { if (!IsContest()) - selectedPalettes = 0xe; + selectedPalettes = 0xe; // Palettes 1, 2, and 3 else selectedPalettes = 1 << GetBattleBgPaletteNum(); } @@ -1439,17 +1443,17 @@ u32 GetBattleBgPalettesMask(u8 battleBackground, u8 attacker, u8 target, u8 atta selectedPalettes |= 1 << shift; } } - if (a6) + if (anim1) { if (!IsContest()) - selectedPalettes |= 0x100; + selectedPalettes |= 1 << BG_ANIM_PAL_1; else - selectedPalettes |= 0x4000; + selectedPalettes |= 1 << BG_ANIM_PAL_CONTEST; } - if (a7) + if (anim2) { if (!IsContest()) - selectedPalettes |= 0x200; + selectedPalettes |= 1 << BG_ANIM_PAL_2; } return selectedPalettes; } diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index ebf9a588f663..a92428f83b5d 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -304,7 +304,7 @@ static void AnimConfusionDuck_Step(struct Sprite *sprite) // arg 4: blend color static void AnimSimplePaletteBlend(struct Sprite *sprite) { - u32 selectedPalettes = UnpackSelectedBattleBgPalettes(gBattleAnimArgs[0]); + u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]); BeginNormalPaletteFade(selectedPalettes, gBattleAnimArgs[1], gBattleAnimArgs[2], gBattleAnimArgs[3], gBattleAnimArgs[4]); sprite->invisible = TRUE; sprite->callback = AnimSimplePaletteBlend_Step; @@ -312,23 +312,23 @@ static void AnimSimplePaletteBlend(struct Sprite *sprite) // Unpacks a bitfield and returns a bitmask of its selected palettes. // Bits 0-6 of the selector parameter result in the following palettes being selected: -// 0: battle background palettes (BG palettes 1, 2, and 3) -// 1: gBattleAnimAttacker OBJ palette -// 2: gBattleAnimTarget OBJ palette -// 3: gBattleAnimAttacker partner OBJ palette -// 4: gBattleAnimTarget partner OBJ palette -// 5: BG palette 4 -// 6: BG palette 5 -u32 UnpackSelectedBattleBgPalettes(s16 selector) +// 0: F_PAL_BG, battle background palettes (BG palettes 1, 2, and 3) +// 1: F_PAL_ATTACKER, gBattleAnimAttacker OBJ palette +// 2: F_PAL_TARGET, gBattleAnimTarget OBJ palette +// 3: F_PAL_ATK_PARTNER, gBattleAnimAttacker partner OBJ palette +// 4: F_PAL_DEF_PARTNER, gBattleAnimTarget partner OBJ palette +// 5: F_PAL_ANIM_1, BG palette 8 (or 14, if in Contest) +// 6: F_PAL_ANIM_2, BG palette 9 +u32 UnpackSelectedBattlePalettes(s16 selector) { - u8 battleBackground = selector & 1; - u8 attacker = (selector >> 1) & 1; - u8 target = (selector >> 2) & 1; - u8 attackerPartner = (selector >> 3) & 1; - u8 targetPartner = (selector >> 4) & 1; - u8 arg5 = (selector >> 5) & 1; - u8 arg6 = (selector >> 6) & 1; - return GetBattleBgPalettesMask(battleBackground, attacker, target, attackerPartner, targetPartner, arg5, arg6); + bool8 battleBackground = selector & 1; + bool8 attacker = (selector >> 1) & 1; + bool8 target = (selector >> 2) & 1; + bool8 attackerPartner = (selector >> 3) & 1; + bool8 targetPartner = (selector >> 4) & 1; + bool8 anim1 = (selector >> 5) & 1; + bool8 anim2 = (selector >> 6) & 1; + return GetBattlePalettesMask(battleBackground, attacker, target, attackerPartner, targetPartner, anim1, anim2); } static void AnimSimplePaletteBlend_Step(struct Sprite *sprite) @@ -350,7 +350,7 @@ static void AnimComplexPaletteBlend(struct Sprite *sprite) sprite->data[6] = gBattleAnimArgs[6]; sprite->data[7] = gBattleAnimArgs[0]; - selectedPalettes = UnpackSelectedBattleBgPalettes(sprite->data[7]); + selectedPalettes = UnpackSelectedBattlePalettes(sprite->data[7]); BlendPalettes(selectedPalettes, gBattleAnimArgs[4], gBattleAnimArgs[3]); sprite->invisible = TRUE; sprite->callback = AnimComplexPaletteBlend_Step1; @@ -375,7 +375,7 @@ static void AnimComplexPaletteBlend_Step1(struct Sprite *sprite) return; } - selectedPalettes = UnpackSelectedBattleBgPalettes(sprite->data[7]); + selectedPalettes = UnpackSelectedBattlePalettes(sprite->data[7]); if (sprite->data[1] & 0x100) BlendPalettes(selectedPalettes, sprite->data[4], sprite->data[3]); else @@ -392,7 +392,7 @@ static void AnimComplexPaletteBlend_Step2(struct Sprite *sprite) if (!gPaletteFade.active) { - selectedPalettes = UnpackSelectedBattleBgPalettes(sprite->data[7]); + selectedPalettes = UnpackSelectedBattlePalettes(sprite->data[7]); BlendPalettes(selectedPalettes, 0, 0); DestroyAnimSprite(sprite); } @@ -442,7 +442,7 @@ void AnimTask_BlendColorCycle(u8 taskId) static void BlendColorCycle(u8 taskId, u8 startBlendAmount, u8 targetBlendAmount) { - u32 selectedPalettes = UnpackSelectedBattleBgPalettes(gTasks[taskId].tPalSelector); + u32 selectedPalettes = UnpackSelectedBattlePalettes(gTasks[taskId].tPalSelector); BeginNormalPaletteFade( selectedPalettes, gTasks[taskId].tDelay, @@ -721,7 +721,7 @@ void AnimTask_InvertScreenColor(u8 taskId) u8 targetBattler = gBattleAnimTarget; if (gBattleAnimArgs[0] & 0x100) - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); if (gBattleAnimArgs[1] & 0x100) selectedPalettes |= (0x10000 << attackerBattler); diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index bf95a319c342..fa06f1a1ccba 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -690,7 +690,7 @@ void AnimTask_SwitchOutBallEffect(u8 taskId) priority = gSprites[spriteId].oam.priority; subpriority = gSprites[spriteId].subpriority; gTasks[taskId].data[10] = AnimateBallOpenParticles(x, y + 32, priority, subpriority, ballId); - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); gTasks[taskId].data[11] = LaunchBallFadeMonTask(FALSE, gBattleAnimAttacker, selectedPalettes, ballId); gTasks[taskId].data[0]++; break; diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index e2c674c57ff7..d33c0c184e3d 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -47,7 +47,7 @@ const u8 gBattleAnimBgCntGet[] = {REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFS void AnimTask_BlendBattleAnimPal(u8 taskId) { - u32 selectedPalettes = UnpackSelectedBattleBgPalettes(gBattleAnimArgs[0]); + u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]); selectedPalettes |= GetBattleMonSpritePalettesMask((gBattleAnimArgs[0] >> 7) & 1, (gBattleAnimArgs[0] >> 8) & 1, (gBattleAnimArgs[0] >> 9) & 1, @@ -62,7 +62,7 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId) u8 animBattlers[2]; animBattlers[1] = 0xFF; - selectedPalettes = UnpackSelectedBattleBgPalettes(1); + selectedPalettes = UnpackSelectedBattlePalettes(F_PAL_BG); switch (gBattleAnimArgs[0]) { case 2: @@ -105,7 +105,7 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId) void AnimTask_SetCamouflageBlend(u8 taskId) { - u32 selectedPalettes = UnpackSelectedBattleBgPalettes(gBattleAnimArgs[0]); + u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]); switch (gBattleTerrain) { case BATTLE_TERRAIN_GRASS: @@ -607,7 +607,7 @@ void AnimTask_Flash(u8 taskId) SetPalettesToColor(selectedPalettes, RGB_BLACK); gTasks[taskId].data[14] = selectedPalettes >> 16; - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0) & 0xFFFF; + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE) & 0xFFFF; SetPalettesToColor(selectedPalettes, RGB_WHITEALPHA); gTasks[taskId].data[15] = selectedPalettes; @@ -923,7 +923,7 @@ void AnimTask_CopyPalUnfadedToBackup(u8 taskId) if (gBattleAnimArgs[0] == 0) { - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); while ((selectedPalettes & 1) == 0) { selectedPalettes >>= 1; @@ -950,7 +950,7 @@ void AnimTask_CopyPalUnfadedFromBackup(u8 taskId) if (gBattleAnimArgs[0] == 0) { - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); while ((selectedPalettes & 1) == 0) { selectedPalettes >>= 1; @@ -977,7 +977,7 @@ void AnimTask_CopyPalFadedToUnfaded(u8 taskId) if (gBattleAnimArgs[0] == 0) { - selectedPalettes = GetBattleBgPalettesMask(1, 0, 0, 0, 0, 0, 0); + selectedPalettes = GetBattlePalettesMask(TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE); while ((selectedPalettes & 1) == 0) { selectedPalettes >>= 1; From 380cb469197aee7c1495086e2da297342bea8fee Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 3 Jun 2022 15:04:52 +0100 Subject: [PATCH 587/762] Correct CreateRegionMapPlayerIcon's argument names Correct CreateRegionMapPlayerIcon's argument names in include/region_map.h --- include/region_map.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/region_map.h b/include/region_map.h index 02d711afa5a9..85793badcb01 100644 --- a/include/region_map.h +++ b/include/region_map.h @@ -99,7 +99,7 @@ u8 DoRegionMapInputCallback(void); bool8 UpdateRegionMapZoom(void); void FreeRegionMapIconResources(void); u16 GetRegionMapSecIdAt(u16 x, u16 y); -void CreateRegionMapPlayerIcon(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); From d03756dfd29e245bd80d729f40dc4a4410af0ba7 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 3 Jun 2022 15:42:53 +0100 Subject: [PATCH 588/762] Use the TRY_FREE_AND_SET_NULL macro where appropriate --- src/battle_factory_screen.c | 3 +-- src/easy_chat.c | 9 +++------ src/field_region_map.c | 5 +---- src/hall_of_fame.c | 18 ++++++------------ src/pokemon_storage_system.c | 3 +-- src/pokenav.c | 3 +-- src/region_map.c | 6 +----- src/rotating_tile_puzzle.c | 3 +-- src/slot_machine.c | 24 ++++++++---------------- src/union_room_chat.c | 3 +-- 10 files changed, 24 insertions(+), 53 deletions(-) diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 787dc474061a..88e93475945a 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1131,8 +1131,7 @@ static void CB2_InitSelectScreen(void) switch (gMain.state) { case 0: - if (sFactorySelectMons != NULL) - FREE_AND_SET_NULL(sFactorySelectMons); + TRY_FREE_AND_SET_NULL(sFactorySelectMons); SetHBlankCallback(NULL); SetVBlankCallback(NULL); CpuFill32(0, (void *)VRAM, VRAM_SIZE); diff --git a/src/easy_chat.c b/src/easy_chat.c index 734fd4f18b2f..4d6006f1c66e 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1672,8 +1672,7 @@ static bool8 InitEasyChatScreenStruct(u8 type, u16 *words, u8 displayedPersonTyp static void FreeEasyChatScreenStruct(void) { - if (sEasyChatScreen != NULL) - FREE_AND_SET_NULL(sEasyChatScreen); + TRY_FREE_AND_SET_NULL(sEasyChatScreen); } // Returns the function ID of the action to take as a result of player's input. @@ -3075,8 +3074,7 @@ static bool8 LoadEasyChatScreen(void) static void FreeEasyChatScreenControl(void) { - if (sScreenControl) - FREE_AND_SET_NULL(sScreenControl); + TRY_FREE_AND_SET_NULL(sScreenControl); } static void StartEasyChatFunction(u16 funcId) @@ -5573,8 +5571,7 @@ static bool8 InitEasyChatScreenWordData(void) static void FreeEasyChatScreenWordData(void) { - if (sWordData) - FREE_AND_SET_NULL(sWordData); + TRY_FREE_AND_SET_NULL(sWordData); } static void SetUnlockedEasyChatGroups(void) diff --git a/src/field_region_map.c b/src/field_region_map.c index 26ae736a686f..adf5e4ed7a39 100644 --- a/src/field_region_map.c +++ b/src/field_region_map.c @@ -192,10 +192,7 @@ static void FieldUpdateRegionMap(void) { FreeRegionMapIconResources(); SetMainCallback2(sFieldRegionMapHandler->callback); - if (sFieldRegionMapHandler != NULL) - { - FREE_AND_SET_NULL(sFieldRegionMapHandler); - } + TRY_FREE_AND_SET_NULL(sFieldRegionMapHandler); FreeAllWindowBuffers(); } break; diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index a195bddcf115..38f096af84c7 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -529,10 +529,8 @@ static void Task_Hof_TrySaveData(u8 taskId) UnsetBgTilemapBuffer(3); FreeAllWindowBuffers(); - if (sHofGfxPtr != NULL) - FREE_AND_SET_NULL(sHofGfxPtr); - if (sHofMonPtr != NULL) - FREE_AND_SET_NULL(sHofMonPtr); + TRY_FREE_AND_SET_NULL(sHofGfxPtr); + TRY_FREE_AND_SET_NULL(sHofMonPtr); DestroyTask(taskId); } @@ -773,10 +771,8 @@ static void Task_Hof_HandleExit(u8 taskId) ResetBgsAndClearDma3BusyFlags(0); DestroyTask(taskId); - if (sHofGfxPtr != NULL) - FREE_AND_SET_NULL(sHofGfxPtr); - if (sHofMonPtr != NULL) - FREE_AND_SET_NULL(sHofMonPtr); + TRY_FREE_AND_SET_NULL(sHofGfxPtr); + TRY_FREE_AND_SET_NULL(sHofMonPtr); StartCredits(); } @@ -1081,10 +1077,8 @@ static void Task_HofPC_HandleExit(u8 taskId) ResetBgsAndClearDma3BusyFlags(0); DestroyTask(taskId); - if (sHofGfxPtr != NULL) - FREE_AND_SET_NULL(sHofGfxPtr); - if (sHofMonPtr != NULL) - FREE_AND_SET_NULL(sHofMonPtr); + TRY_FREE_AND_SET_NULL(sHofGfxPtr); + TRY_FREE_AND_SET_NULL(sHofMonPtr); ReturnFromHallOfFamePC(); } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 8f80b0b37401..a0eca498e008 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -5417,8 +5417,7 @@ static bool32 WaitForWallpaperGfxLoad(void) if (IsDma3ManagerBusyWithBgCopy()) return FALSE; - if (sStorage->wallpaperTiles != NULL) - FREE_AND_SET_NULL(sStorage->wallpaperTiles); + TRY_FREE_AND_SET_NULL(sStorage->wallpaperTiles); return TRUE; } diff --git a/src/pokenav.c b/src/pokenav.c index f9a6614a8957..04e87f38c066 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -557,8 +557,7 @@ void *GetSubstructPtr(u32 index) void FreePokenavSubstruct(u32 index) { - if (gPokenavResources->substructPtrs[index] != NULL) - FREE_AND_SET_NULL(gPokenavResources->substructPtrs[index]); + TRY_FREE_AND_SET_NULL(gPokenavResources->substructPtrs[index]); } u32 GetPokenavMode(void) diff --git a/src/region_map.c b/src/region_map.c index 5b3b8b00866b..a4db1cb04885 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -2024,11 +2024,7 @@ static void CB_ExitFlyMap(void) { SetMainCallback2(CB2_ReturnToPartyMenuFromFlyMap); } - if (sFlyMap != NULL) - { - free(sFlyMap); - sFlyMap = NULL; - } + TRY_FREE_AND_SET_NULL(sFlyMap); FreeAllWindowBuffers(); } break; diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index 2e919f550a7e..b8912aa3d8f9 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -101,8 +101,7 @@ void FreeRotatingTilePuzzle(void) { u8 id; - if (sRotatingTilePuzzle != NULL) - FREE_AND_SET_NULL(sRotatingTilePuzzle); + TRY_FREE_AND_SET_NULL(sRotatingTilePuzzle); id = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[id]); diff --git a/src/slot_machine.c b/src/slot_machine.c index 828d0c1611aa..4796a56844d3 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1756,14 +1756,10 @@ static bool8 SlotTask_FreeDataStructures(struct Task *task) FREE_AND_SET_NULL(sImageTable_DigitalDisplay_Number); FREE_AND_SET_NULL(sImageTable_DigitalDisplay_Pokeball); FREE_AND_SET_NULL(sImageTable_DigitalDisplay_DPad); - if (sImageTable_ReelTimePikachu != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimePikachu); - if (sImageTable_ReelTimeMachineAntennae != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimeMachineAntennae); - if (sImageTable_ReelTimeMachine != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimeMachine); - if (sImageTable_BrokenReelTimeMachine != NULL) - FREE_AND_SET_NULL(sImageTable_BrokenReelTimeMachine); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimePikachu); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimeMachineAntennae); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimeMachine); + TRY_FREE_AND_SET_NULL(sImageTable_BrokenReelTimeMachine); FREE_AND_SET_NULL(sMenuGfx); FREE_AND_SET_NULL(sSelectedPikaPowerTile); FREE_AND_SET_NULL(sReelOverlay_Tilemap); @@ -4178,8 +4174,7 @@ static void CreateReelTimePikachuSprite(void) static void DestroyReelTimePikachuSprite(void) { DestroySprite(&gSprites[sSlotMachine->reelTimePikachuSpriteId]); - if (sImageTable_ReelTimePikachu != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimePikachu); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimePikachu); } static void SpriteCB_ReelTimePikachu(struct Sprite *sprite) @@ -4308,10 +4303,8 @@ static void DestroyReelTimeMachineSprites(void) for (i = 0; i < ARRAY_COUNT(sSlotMachine->reelTimeMachineSpriteIds); i++) DestroySprite(&gSprites[sSlotMachine->reelTimeMachineSpriteIds[i]]); - if (sImageTable_ReelTimeMachineAntennae != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimeMachineAntennae); - if (sImageTable_ReelTimeMachine != NULL) - FREE_AND_SET_NULL(sImageTable_ReelTimeMachine); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimeMachineAntennae); + TRY_FREE_AND_SET_NULL(sImageTable_ReelTimeMachine); for (i = 0; i < ARRAY_COUNT(sSlotMachine->reelTimeNumberSpriteIds); i++) DestroySprite(&gSprites[sSlotMachine->reelTimeNumberSpriteIds[i]]); @@ -4328,8 +4321,7 @@ static void DestroyReelTimeShadowSprites(void) static void DestroyBrokenReelTimeMachineSprite(void) { DestroySprite(&gSprites[sSlotMachine->reelTimeBrokenMachineSpriteId]); - if (sImageTable_BrokenReelTimeMachine != NULL) - FREE_AND_SET_NULL(sImageTable_BrokenReelTimeMachine); + TRY_FREE_AND_SET_NULL(sImageTable_BrokenReelTimeMachine); } #define sDelayTimer data[0] diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 9890bc1f88b1..f8513b9f46b0 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -2160,8 +2160,7 @@ static bool32 IsDisplaySubtask0Active(void) static void FreeDisplay(void) { FreeSprites(); - if (sDisplay) - FREE_AND_SET_NULL(sDisplay); + TRY_FREE_AND_SET_NULL(sDisplay); FreeAllWindowBuffers(); gScanlineEffect.state = 3; From 284e46927a3584ec6ffdc0be61f237fee3773b6a Mon Sep 17 00:00:00 2001 From: sphericalice Date: Fri, 3 Jun 2022 15:56:11 +0100 Subject: [PATCH 589/762] Use the FREE_AND_SET_NULL macro where appropriate --- src/battle_anim_utility_funcs.c | 3 +-- src/battle_main.c | 9 +++------ src/evolution_scene.c | 6 ++---- src/mystery_gift_client.c | 3 +-- src/mystery_gift_server.c | 3 +-- src/mystery_gift_view.c | 6 ++---- 6 files changed, 10 insertions(+), 20 deletions(-) diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index e2c674c57ff7..aae8d6b5d8c3 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -594,8 +594,7 @@ static void StatsChangeAnimation_Step3(u8 taskId) if (gTasks[taskId].data[6] == 1) gSprites[gTasks[taskId].data[7]].oam.priority++; - Free(sAnimStatsChangeData); - sAnimStatsChangeData = NULL; + FREE_AND_SET_NULL(sAnimStatsChangeData); DestroyAnimVisualTask(taskId); break; } diff --git a/src/battle_main.c b/src/battle_main.c index 682849af7336..f61d5eaae015 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -1498,8 +1498,7 @@ static void CB2_PreInitMultiBattle(void) gBattleTypeFlags = *savedBattleTypeFlags; gMain.savedCallback = *savedCallback; SetMainCallback2(CB2_InitBattleInternal); - Free(sMultiPartnerPartyBuffer); - sMultiPartnerPartyBuffer = NULL; + FREE_AND_SET_NULL(sMultiPartnerPartyBuffer); } } else if (gReceivedRemoteLinkPlayers == 0) @@ -1507,8 +1506,7 @@ static void CB2_PreInitMultiBattle(void) gBattleTypeFlags = *savedBattleTypeFlags; gMain.savedCallback = *savedCallback; SetMainCallback2(CB2_InitBattleInternal); - Free(sMultiPartnerPartyBuffer); - sMultiPartnerPartyBuffer = NULL; + FREE_AND_SET_NULL(sMultiPartnerPartyBuffer); } break; } @@ -1544,8 +1542,7 @@ static void CB2_PreInitIngamePlayerPartnerBattle(void) gBattleTypeFlags = *savedBattleTypeFlags; gMain.savedCallback = *savedCallback; SetMainCallback2(CB2_InitBattleInternal); - Free(sMultiPartnerPartyBuffer); - sMultiPartnerPartyBuffer = NULL; + FREE_AND_SET_NULL(sMultiPartnerPartyBuffer); } break; } diff --git a/src/evolution_scene.c b/src/evolution_scene.c index bde11ddb5ea2..eb458d39d44b 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -816,8 +816,7 @@ static void Task_EvolutionScene(u8 taskId) DestroyTask(taskId); FreeMonSpritesGfx(); - Free(sEvoStructPtr); - sEvoStructPtr = NULL; + FREE_AND_SET_NULL(sEvoStructPtr); FreeAllWindowBuffers(); SetMainCallback2(gCB2_AfterEvolution); } @@ -1223,8 +1222,7 @@ static void Task_TradeEvolutionScene(u8 taskId) if (!IsTextPrinterActive(0)) { DestroyTask(taskId); - Free(sEvoStructPtr); - sEvoStructPtr = NULL; + FREE_AND_SET_NULL(sEvoStructPtr); gTextFlags.useAlternateDownArrow = 0; SetMainCallback2(gCB2_AfterEvolution); } diff --git a/src/mystery_gift_client.c b/src/mystery_gift_client.c index adf3ce8a62cd..eeebec5d689e 100644 --- a/src/mystery_gift_client.c +++ b/src/mystery_gift_client.c @@ -44,8 +44,7 @@ u32 MysteryGiftClient_Run(u16 * endVal) { *endVal = sClient->param; MysteryGiftClient_Free(sClient); - Free(sClient); - sClient = NULL; + FREE_AND_SET_NULL(sClient); } return result; } diff --git a/src/mystery_gift_server.c b/src/mystery_gift_server.c index 0e0acb642822..891870659db4 100644 --- a/src/mystery_gift_server.c +++ b/src/mystery_gift_server.c @@ -44,8 +44,7 @@ u32 MysterGiftServer_Run(u16 * endVal) { *endVal = sServer->param; MysteryGiftServer_Free(sServer); - Free(sServer); - sServer = NULL; + FREE_AND_SET_NULL(sServer); } return result; } diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 3047a219e8e5..ff34c8853630 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -207,8 +207,7 @@ void WonderCard_Destroy(void) if (sWonderCardData != NULL) { *sWonderCardData = (struct WonderCardData){}; - Free(sWonderCardData); - sWonderCardData = NULL; + FREE_AND_SET_NULL(sWonderCardData); } } @@ -660,8 +659,7 @@ void WonderNews_Destroy(void) if (sWonderNewsData != NULL) { *sWonderNewsData = (struct WonderNewsData){}; - Free(sWonderNewsData); - sWonderNewsData = NULL; + FREE_AND_SET_NULL(sWonderNewsData); } } From af6bf17930204aa140243cbbbfbf0ff25a8cc353 Mon Sep 17 00:00:00 2001 From: sneed Date: Fri, 3 Jun 2022 21:04:14 +0300 Subject: [PATCH 590/762] Include config.h in siirtc.c --- src/siirtc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/siirtc.c b/src/siirtc.c index 5f4fc0a23c7c..0e598f717225 100644 --- a/src/siirtc.c +++ b/src/siirtc.c @@ -4,6 +4,7 @@ #include "gba/gba.h" #include "siirtc.h" +#include "config.h" #define STATUS_INTFE 0x02 // frequency interrupt enable #define STATUS_INTME 0x08 // per-minute interrupt enable From 34438e6bc4537dda15f8f1a15e5e23553a2bc854 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 1 Jun 2022 12:41:57 -0400 Subject: [PATCH 591/762] Continue documenting generic arguments --- data/battle_anim_scripts.s | 18 +- gflib/bg.h | 2 +- gflib/sprite.c | 9 +- gflib/sprite.h | 2 +- gflib/text.c | 8 +- include/battle_anim.h | 18 +- include/battle_interface.h | 2 +- include/constants/battle_string_ids.h | 2 + include/contest.h | 8 +- include/decompress.h | 2 +- include/field_camera.h | 8 +- include/field_player_avatar.h | 42 ++-- include/field_special_scene.h | 8 +- include/fldeff.h | 4 +- include/fldeff_misc.h | 4 +- include/gba/m4a_internal.h | 2 +- include/intro_credits_graphics.h | 6 +- include/link.h | 2 +- include/main_menu.h | 2 +- include/mauville_old_man.h | 4 +- include/menu.h | 12 +- include/overworld.h | 6 +- include/pokeball.h | 4 +- include/pokemon.h | 4 +- include/pokenav.h | 2 +- include/scanline_effect.h | 2 +- include/trade.h | 4 +- src/battle_anim_effects_1.c | 92 ++++---- src/battle_anim_effects_3.c | 2 +- src/battle_anim_fire.c | 274 +++++++++++++--------- src/battle_anim_mons.c | 8 +- src/battle_anim_psychic.c | 4 +- src/battle_anim_smokescreen.c | 66 +++--- src/battle_anim_throw.c | 8 +- src/battle_dome.c | 99 ++++---- src/battle_interface.c | 36 +-- src/battle_message.c | 6 +- src/battle_script_commands.c | 2 +- src/berry_blender.c | 2 +- src/contest.c | 24 +- src/credits.c | 6 +- src/decompress.c | 6 +- src/dodrio_berry_picking.c | 6 +- src/event_object_movement.c | 16 +- src/field_camera.c | 6 +- src/field_player_avatar.c | 148 ++++++------ src/field_special_scene.c | 202 +++++++++------- src/field_specials.c | 56 ++--- src/field_weather.c | 6 +- src/field_weather_effect.c | 57 +++-- src/intro_credits_graphics.c | 3 +- src/item_use.c | 44 ++-- src/link.c | 12 +- src/main_menu.c | 41 ++-- src/mauville_old_man.c | 2 +- src/menu.c | 8 +- src/mystery_event_script.c | 35 +-- src/overworld.c | 6 +- src/palette.c | 56 ++--- src/player_pc.c | 116 +++++----- src/pokeball.c | 153 ++++++++----- src/pokedex.c | 12 +- src/pokedex_area_region_map.c | 4 +- src/pokemon.c | 10 +- src/pokemon_jump.c | 3 +- src/pokemon_summary_screen.c | 128 +++++------ src/pokenav.c | 10 +- src/pokenav_list.c | 318 +++++++++++++------------- src/slot_machine.c | 40 ++-- src/trade.c | 8 +- src/tv.c | 4 +- 71 files changed, 1251 insertions(+), 1081 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 538286e15672..eff53de84511 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -5031,17 +5031,17 @@ Move_LIGHT_SCREEN: end SpecialScreenSparkle: - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 23, 0, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 23, 0, ANIM_ATTACKER, TRUE delay 6 - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 31, -8, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 31, -8, ANIM_ATTACKER, TRUE delay 5 - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 30, 20, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 30, 20, ANIM_ATTACKER, TRUE delay 7 - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, -15, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, -15, ANIM_ATTACKER, TRUE delay 6 - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 20, 10, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 20, 10, ANIM_ATTACKER, TRUE delay 6 - createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, 18, ANIM_ATTACKER, 1 + createsprite gSpecialScreenSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, 18, ANIM_ATTACKER, TRUE return Move_MIRROR_COAT: @@ -5064,11 +5064,11 @@ Move_REFLECT: waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 15 createsprite gReflectWallSpriteTemplate, ANIM_ATTACKER, 1, 40, 0, ANIM_TAG_BLUE_LIGHT_WALL delay 20 - createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 30, 0, ANIM_ATTACKER, 1 + createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 30, 0, ANIM_ATTACKER, TRUE delay 7 - createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 19, -12, ANIM_ATTACKER, 1 + createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 19, -12, ANIM_ATTACKER, TRUE delay 7 - createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, 20, ANIM_ATTACKER, 1 + createsprite gReflectSparkleSpriteTemplate, ANIM_ATTACKER, 2, 10, 20, ANIM_ATTACKER, TRUE waitforvisualfinish delay 1 blendoff diff --git a/gflib/bg.h b/gflib/bg.h index d8b5a540439f..02ff0736945b 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -76,7 +76,7 @@ s32 ChangeBgY(u8 bg, s32 value, u8 op); s32 ChangeBgY_ScreenOff(u8 bg, s32 value, u8 op); s32 GetBgY(u8 bg); void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dispCenterY, s16 scaleX, s16 scaleY, u16 rotationAngle); -u8 Unused_AdjustBgMosaic(u8 a1, u8 a2); +u8 Unused_AdjustBgMosaic(u8 val, u8 mode); void SetBgTilemapBuffer(u8 bg, void *tilemap); void UnsetBgTilemapBuffer(u8 bg); void* GetBgTilemapBuffer(u8 bg); diff --git a/gflib/sprite.c b/gflib/sprite.c index f05fe76f2cd5..e5bf89063431 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -94,7 +94,7 @@ static void ApplyAffineAnimFrame(u8 matrixNum, struct AffineAnimFrameCmd *frameC static u8 IndexOfSpriteTileTag(u16 tag); static void AllocSpriteTileRange(u16 tag, u16 start, u16 count); static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset); -static void UpdateSpriteMatrixAnchorPos(struct Sprite* sprite, s32 a1, s32 a2); +static void UpdateSpriteMatrixAnchorPos(struct Sprite*, s32, s32); typedef void (*AnimFunc)(struct Sprite *); typedef void (*AnimCmdFunc)(struct Sprite *); @@ -632,14 +632,11 @@ void DestroySprite(struct Sprite *sprite) } } -void ResetOamRange(u8 a, u8 b) +void ResetOamRange(u8 start, u8 end) { u8 i; - - for (i = a; i < b; i++) - { + for (i = start; i < end; i++) gMain.oamBuffer[i] = *(struct OamData *)&gDummyOamData; - } } void LoadOam(void) diff --git a/gflib/sprite.h b/gflib/sprite.h index e53737981b2d..f7ef16532814 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -270,7 +270,7 @@ u8 CreateSpriteAtEnd(const struct SpriteTemplate *template, s16 x, s16 y, u8 sub u8 CreateInvisibleSprite(void (*callback)(struct Sprite *)); u8 CreateSpriteAndAnimate(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority); void DestroySprite(struct Sprite *sprite); -void ResetOamRange(u8 a, u8 b); +void ResetOamRange(u8 start, u8 end); void LoadOam(void); void SetOamMatrix(u8 matrixNum, u16 a, u16 b, u16 c, u16 d); void CalcCenterToCornerVec(struct Sprite *sprite, u8 shape, u8 size, u8 affineMode); diff --git a/gflib/text.c b/gflib/text.c index 557c11704b9d..c400c0582397 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -326,14 +326,14 @@ void RunTextPrinters(void) { if (sTextPrinters[i].active) { - u16 temp = RenderFont(&sTextPrinters[i]); - switch (temp) + u16 renderCmd = RenderFont(&sTextPrinters[i]); + switch (renderCmd) { case RENDER_PRINT: CopyWindowToVram(sTextPrinters[i].printerTemplate.windowId, COPYWIN_GFX); case RENDER_UPDATE: - if (sTextPrinters[i].callback != 0) - sTextPrinters[i].callback(&sTextPrinters[i].printerTemplate, temp); + if (sTextPrinters[i].callback != NULL) + sTextPrinters[i].callback(&sTextPrinters[i].printerTemplate, renderCmd); break; case RENDER_FINISH: sTextPrinters[i].active = FALSE; diff --git a/include/battle_anim.h b/include/battle_anim.h index c42fa033b629..c98766ea852c 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -62,7 +62,7 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) bool8 IsContest(void); s8 BattleAnimAdjustPanning(s8 pan); s8 BattleAnimAdjustPanning2(s8 pan); -s16 KeepPanInRange(s16 a, int oldPan); +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); @@ -91,14 +91,14 @@ bool8 AnimTranslateLinear(struct Sprite *sprite); void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite); u8 GetBattlerSpriteCoord2(u8 battlerId, u8 attributeId); void InitAnimLinearTranslationWithSpeed(struct Sprite *sprite); -u16 ArcTan2Neg(s16 a, s16 b); -void TrySetSpriteRotScale(struct Sprite *sprite, bool8 a2, s16 xScale, s16 yScale, u16 rotation); +u16 ArcTan2Neg(s16 x, s16 y); +void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation); void RunStoredCallbackWhenAffineAnimEnds(struct Sprite *sprite); void TranslateSpriteLinearAndFlicker(struct Sprite *sprite); void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite); void RunStoredCallbackWhenAnimEnds(struct Sprite *sprite); -void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 a2); -s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 a2); +void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset); +s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr); u8 GetBattlerYCoordWithElevation(u8 battlerId); void WaitAnimForDuration(struct Sprite *sprite); void AnimTravelDiagonally(struct Sprite *sprite); @@ -129,7 +129,7 @@ void AnimLoadCompressedBgGfx(u32, const u32*, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircle(struct Sprite *); void SetBattlerSpriteYOffsetFromYScale(u8 spriteId); -void PrepareEruptAnimTaskData(struct Task *task, u8 a2, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7); +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 AnimLoadCompressedBgTilemap(u32 bgId, const void *src); @@ -146,7 +146,7 @@ void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union Aff bool8 RunAffineAnimFromTaskData(struct Task *task); void AnimThrowProjectile(struct Sprite *sprite); void GetBgDataForTransform(struct BattleAnimBgData *dest, u8 battlerId); -u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 a3, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm); +u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm); void ResetSpriteRotScale_PreserveAffine(struct Sprite *sprite); void TradeMenuBouncePartySprites(struct Sprite *sprite); void DestroyAnimVisualTaskAndDisableBlend(u8 taskId); @@ -209,7 +209,7 @@ void AnimTask_HorizontalShake(u8 taskId); void TryShinyAnimation(u8 battler, struct Pokemon *mon); u8 ItemIdToBallId(u16 itemId); u8 AnimateBallOpenParticles(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId); -u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 selectedPalettes, u8 ballId); +u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 spritePalNum, u32 selectedPalettes, u8 ballId); // battle_anim_utility_funcs.c void InitStatsChangeAnimation(u8); @@ -227,7 +227,7 @@ void AnimWaterPulseRing(struct Sprite *sprite); void DestroyAnimSpriteAfterTimer(struct Sprite *sprite); // battle_anim_smokescreen.c -u8 SmokescreenImpact(s16 x, s16 y, u8 a3); +u8 SmokescreenImpact(s16 x, s16 y, bool8 persist); u32 UnpackSelectedBattlePalettes(s16); diff --git a/include/battle_interface.h b/include/battle_interface.h index 6cc02c3fcdf6..c4816e8da51b 100644 --- a/include/battle_interface.h +++ b/include/battle_interface.h @@ -71,7 +71,7 @@ void UpdateOamPriorityInAllHealthboxes(u8 priority); void InitBattlerHealthboxCoords(u8 battler); void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent); void SwapHpBarsWithHpText(void); -u8 CreatePartyStatusSummarySprites(u8 battler, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart); +u8 CreatePartyStatusSummarySprites(u8 battler, struct HpAndStatus *partyInfo, bool8 skipPlayer, bool8 isBattleStart); void Task_HidePartyStatusSummary(u8 taskId); void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId); s32 MoveBattleBar(u8 battler, u8 healthboxSpriteId, u8 whichBar, u8 unused); diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index d5d0698b9177..ae18b61ef282 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -599,4 +599,6 @@ #define B_MSG_REF_DRAW 7 #define B_MSG_REF_COMMENCE_BATTLE 8 +#define NUM_TRAPPING_MOVES 6 + #endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H diff --git a/include/contest.h b/include/contest.h index e7acb5a113d3..c5dc232d5f0e 100644 --- a/include/contest.h +++ b/include/contest.h @@ -340,11 +340,11 @@ void SetLinkAIContestants(u8 contestType, u8 rank, bool32 isPostgame); u8 GetContestEntryEligibility(struct Pokemon *pkmn); void CalculateRound1Points(u8 contestCategory); bool8 IsSpeciesNotUnown(u16 species); -bool8 Contest_IsMonsTurnDisabled(u8 a); +bool8 Contest_IsMonsTurnDisabled(u8 contestant); void SaveLinkContestResults(void); -void SortContestants(bool8 a); -void SetContestantEffectStringID(u8 a, u8 b); -void SetContestantEffectStringID2(u8 a, u8 b); +void SortContestants(bool8 useRanking); +void SetContestantEffectStringID(u8 contestant, u8 effectStringId); +void SetContestantEffectStringID2(u8 contestant, u8 effectStringId); void SetStartledString(u8 contestant, u8 jam); void MakeContestantNervous(u8 p); s8 Contest_GetMoveExcitement(u16 move); diff --git a/include/decompress.h b/include/decompress.h index 02412defb650..14906211cf6b 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -13,7 +13,7 @@ void LoadCompressedSpriteSheetOverrideBuffer(const struct CompressedSpriteSheet bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src); void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src); -void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer); +void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *src, void *buffer); bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src); void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species); diff --git a/include/field_camera.h b/include/field_camera.h index b245fca8426f..6e8af1a539fa 100644 --- a/include/field_camera.h +++ b/include/field_camera.h @@ -17,14 +17,14 @@ extern u16 gTotalCameraPixelOffsetY; void DrawWholeMapView(void); void CurrentMapDrawMetatileAt(int x, int y); -void GetCameraOffsetWithPan(s16 *a0, s16 *a1); +void GetCameraOffsetWithPan(s16 *x, s16 *y); void DrawDoorMetatileAt(int x, int y, u16 *arr); void ResetFieldCamera(void); void ResetCameraUpdateInfo(void); -u32 InitCameraUpdateCallback(u8 a); +u32 InitCameraUpdateCallback(u8 trackedSpriteId); void CameraUpdate(void); -void SetCameraPanningCallback(void (*a)(void)); -void SetCameraPanning(s16 a, s16 b); +void SetCameraPanningCallback(void (*callback)(void)); +void SetCameraPanning(s16 horizontal, s16 vertical); void InstallCameraPanAheadCallback(void); void UpdateCameraPanning(void); void FieldUpdateBgTilemapScroll(void); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index d382de08c8fa..2bf2df26978c 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -11,29 +11,29 @@ void PlayerGetDestCoords(s16 *, s16 *); u8 GetPlayerFacingDirection(void); u8 GetPlayerMovementDirection(void); u8 PlayerGetCopyableMovement(void); -void PlayerWalkNormal(u8); -void PlayerWalkFast(u8); -void PlayerRideWaterCurrent(u8); -void PlayerWalkFaster(u8); -void PlayerOnBikeCollide(u8); -void PlayerFaceDirection(u8 a); -void PlayerTurnInPlace(u8 a); -void PlayerJumpLedge(u8 a); -void PlayerIdleWheelie(u8 a); -void PlayerStartWheelie(u8 a); -void PlayerEndWheelie(u8 a); -void PlayerStandingHoppingWheelie(u8 a); -void PlayerMovingHoppingWheelie(u8 a); -void PlayerLedgeHoppingWheelie(u8 a); -void PlayerAcroTurnJump(u8 a); -void PlayerSetAnimId(u8 a, u8 b); +void PlayerWalkNormal(u8 direction); +void PlayerWalkFast(u8 direction); +void PlayerRideWaterCurrent(u8 direction); +void PlayerWalkFaster(u8 direction); +void PlayerOnBikeCollide(u8 direction); +void PlayerFaceDirection(u8 direction); +void PlayerTurnInPlace(u8 direction); +void PlayerJumpLedge(u8 direction); +void PlayerIdleWheelie(u8 direction); +void PlayerStartWheelie(u8 direction); +void PlayerEndWheelie(u8 direction); +void PlayerStandingHoppingWheelie(u8 direction); +void PlayerMovingHoppingWheelie(u8 direction); +void PlayerLedgeHoppingWheelie(u8 direction); +void PlayerAcroTurnJump(u8 direction); +void PlayerSetAnimId(u8 movementActionId, u8 copyableMovement); bool8 IsPlayerCollidingWithFarawayIslandMew(u8 direction); void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction); -u8 CheckForObjectEventCollision(struct ObjectEvent *a, s16 b, s16 c, u8 d, u8 e); +u8 CheckForObjectEventCollision(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 direction, u8 metatileBehavior); u8 PlayerGetElevation(void); -void SetPlayerAvatarTransitionFlags(u16 a); +void SetPlayerAvatarTransitionFlags(u16 transitionFlags); void CancelPlayerForcedMovement(void); -void InitPlayerAvatar(s16 a, s16 b, u8 c, u8 d); +void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender); void PlayerFreeze(void); void StopPlayerAvatar(void); void SetSpinStartFacingDir(u8); @@ -41,8 +41,8 @@ void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8); void SetPlayerAvatarFieldMove(void); u8 GetPlayerAvatarGraphicsIdByCurrentState(void); -void SetPlayerAvatarStateMask(u8 a); -u8 GetPlayerAvatarGraphicsIdByStateId(u8 a); +void SetPlayerAvatarStateMask(u8 flags); +u8 GetPlayerAvatarGraphicsIdByStateId(u8 state); u8 GetJumpSpecialMovementAction(u32); bool8 PartyHasMonWithSurf(void); bool8 IsPlayerFacingSurfableFishableWater(void); diff --git a/include/field_special_scene.h b/include/field_special_scene.h index 3f701f41bf05..111723c836ab 100644 --- a/include/field_special_scene.h +++ b/include/field_special_scene.h @@ -1,14 +1,8 @@ #ifndef GUARD_FIELD_SPECIAL_SCENE_H #define GUARD_FIELD_SPECIAL_SCENE_H -s16 GetTruckCameraBobbingY(int a1); -s16 GetTruckBoxMovement(int a1); -void Task_Truck1(u8 taskId); -void Task_Truck2(u8 taskId); -void Task_Truck3(u8 taskId); -void Task_HandleTruckSequence(u8 taskId); void ExecuteTruckSequence(void); -void EndTruckSequence(u8); +void EndTruckSequence(u8 taskId); void FieldCB_ShowPortholeView(void); #endif // GUARD_FIELD_SPECIAL_SCENE_H diff --git a/include/fldeff.h b/include/fldeff.h index 597ce6f47537..0ad0e3d6063a 100644 --- a/include/fldeff.h +++ b/include/fldeff.h @@ -25,8 +25,8 @@ void ChooseMonForSoftboiled(u8 taskId); // flash bool8 SetUpFieldMove_Flash(void); void CB2_DoChangeMap(void); -bool8 GetMapPairFadeToType(u8 a1, u8 a2); -bool8 GetMapPairFadeFromType(u8 a1, u8 a2); +bool8 GetMapPairFadeToType(u8 _fromType, u8 _toType); +bool8 GetMapPairFadeFromType(u8 _fromType, u8 _toType); // strength bool8 SetUpFieldMove_Strength(void); diff --git a/include/fldeff_misc.h b/include/fldeff_misc.h index 38dec23b0fbf..61078466dbcd 100644 --- a/include/fldeff_misc.h +++ b/include/fldeff_misc.h @@ -1,8 +1,8 @@ #ifndef GUARD_FLDEFF_MISC_H #define GUARD_FLDEFF_MISC_H -void ComputerScreenOpenEffect(u16 a0, u16 a1, u8 a2); -void ComputerScreenCloseEffect(u16 a0, u16 a1, u8 a2); +void ComputerScreenOpenEffect(u16 increment, u16 unused, u8 priority); +void ComputerScreenCloseEffect(u16 increment, u16 unused, u8 priority); bool8 IsComputerScreenOpenEffectActive(void); bool8 IsComputerScreenCloseEffectActive(void); bool8 SetUpFieldMove_SecretPower(void); diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index a057c2da61e1..40a25ba05966 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -423,7 +423,7 @@ void Clear64byte(void *addr); void SoundInit(struct SoundInfo *soundInfo); void MPlayExtender(struct CgbChannel *cgbChans); void m4aSoundMode(u32 mode); -void MPlayOpen(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track, u8 a3); +void MPlayOpen(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *tracks, u8 trackCount); void CgbSound(void); void CgbOscOff(u8); void CgbModVol(struct CgbChannel *chan); diff --git a/include/intro_credits_graphics.h b/include/intro_credits_graphics.h index bed30ffe82df..c6f4a73c554c 100644 --- a/include/intro_credits_graphics.h +++ b/include/intro_credits_graphics.h @@ -33,11 +33,11 @@ extern const struct CompressedSpriteSheet gSpriteSheet_CreditsRivalBrendan[]; extern const struct CompressedSpriteSheet gSpriteSheet_CreditsRivalMay[]; extern const struct SpritePalette gSpritePalettes_Credits[]; -void LoadIntroPart2Graphics(u8 scene); -void SetIntroPart2BgCnt(u8 a); +void LoadIntroPart2Graphics(u8 scenery); +void SetIntroPart2BgCnt(u8 scenery); void LoadCreditsSceneGraphics(u8); void SetCreditsSceneBgCnt(u8); -u8 CreateBicycleBgAnimationTask(u8 a, u16 b, u16 c, u16 d); +u8 CreateBicycleBgAnimationTask(u8 mode, u16 bg1Speed, u16 bg2Speed, u16 bg3Speed); void CycleSceneryPalette(u8); u8 CreateIntroBrendanSprite(s16 x, s16 y); u8 CreateIntroMaySprite(s16 x, s16 y); diff --git a/include/link.h b/include/link.h index 96a76e120c9e..120c25784eda 100644 --- a/include/link.h +++ b/include/link.h @@ -300,7 +300,7 @@ void LocalLinkPlayerToBlock(void); void LinkPlayerFromBlock(u32 who); bool32 Link_AnyPartnersPlayingFRLG_JP(void); void ResetLinkPlayerCount(void); -void SaveLinkPlayers(u8 a0); +void SaveLinkPlayers(u8 playerCount); void SetWirelessCommType0(void); bool32 IsLinkRecvQueueAtOverworldMax(void); diff --git a/include/main_menu.h b/include/main_menu.h index 1944f4ecc5cb..5f92719d5e75 100644 --- a/include/main_menu.h +++ b/include/main_menu.h @@ -2,6 +2,6 @@ #define GUARD_MAIN_MENU_H void CB2_InitMainMenu(void); -void CreateYesNoMenuParameterized(u8 a, u8 b, u16 c, u16 d, u8 e, u8 f); +void CreateYesNoMenuParameterized(u8 x, u8 y, u16 baseTileNum, u16 baseBlock, u8 yesNoPalNum, u8 winPalNum); #endif // GUARD_MAIN_MENU_H diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h index b22294f1bef5..9e5986ee8151 100644 --- a/include/mauville_old_man.h +++ b/include/mauville_old_man.h @@ -7,8 +7,8 @@ void SetMauvilleOldMan(void); u8 GetCurrentMauvilleOldMan(void); void SetMauvilleOldManObjEventGfx(void); void SanitizeMauvilleOldManForRuby(OldMan *dest); -void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 r1, u32 r6); -void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 unused, u32 a2); +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 9a940a48a71d..c38e87cbd667 100644 --- a/include/menu.h +++ b/include/menu.h @@ -57,8 +57,8 @@ void DisplayYesNoMenuDefaultYes(void); u32 GetPlayerTextSpeed(void); u8 GetPlayerTextSpeedDelay(void); void Menu_LoadStdPalAt(u16 offset); -void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextPrinterTemplate *, u16)); -void BgDmaFill(u32 bg, u8 a1, int a2, int a3); +void AddTextPrinterWithCallbackForMessage(bool8 canSpeedUp, void (*callback)(struct TextPrinterTemplate *, u16)); +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); @@ -69,7 +69,7 @@ u8 InitMenuInUpperLeftCornerNormal(u8 windowId, u8 numItems, u8 initialCursorPos u8 Menu_GetCursorPos(void); s8 Menu_ProcessInput(void); s8 Menu_ProcessInputNoWrap(void); -void BlitMenuInfoIcon(u8 winId, u8 a2, u16 x, u16 y); +void BlitMenuInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y); void ResetTempTileDataBuffers(void); void *DecompressAndCopyTileDataToVram(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); bool8 FreeTempTileDataBuffersIfPossible(void); @@ -81,14 +81,14 @@ 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 DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 a2, u8 a3); +void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 tileNum, u8 paletteNum); void PrintMenuActionTextsInUpperLeftCorner(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram); void *malloc_and_decompress(const void *src, u32 *sizeOut); 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 *strs, const u8 *a8); -void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 itemCount, u8 itemCount2, const struct MenuAction *strs, const u8 *a8); +void PrintMenuActionTexts(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds); +void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *menuActions, const u8 *actionIds); u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); u8 ChangeMenuGridCursorPosition(s8 deltaX, s8 deltaY); u8 GetStartMenuWindowId(void); diff --git a/include/overworld.h b/include/overworld.h index b8794ea70fb1..adaa6aad04fc 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -77,7 +77,7 @@ 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 SetWarpDestinationToHealLocation(u8 a1); +void SetWarpDestinationToHealLocation(u8 healLocationId); void SetWarpDestinationToLastHealLocation(void); void SetLastHealLocationWarp(u8 healLocationId); void UpdateEscapeWarp(s16 x, s16 y); @@ -86,7 +86,7 @@ void SetWarpDestinationToEscapeWarp(void); void SetFixedDiveWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); void SetFixedHoleWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y); -void SetContinueGameWarpToHealLocation(u8 a1); +void SetContinueGameWarpToHealLocation(u8 healLocationId); void SetContinueGameWarpToDynamicWarp(int unused); const struct MapConnection *GetMapConnection(u8 dir); bool8 SetDiveWarpEmerge(u16 x, u16 y); @@ -130,7 +130,7 @@ void CB1_Overworld(void); void CB2_OverworldBasic(void); void CB2_Overworld(void); void SetMainCallback1(void (*cb)(void)); -void SetUnusedCallback(void *a0); +void SetUnusedCallback(void *func); void CB2_NewGame(void); void CB2_WhiteOut(void); void CB2_LoadMap(void); diff --git a/include/pokeball.h b/include/pokeball.h index 297788db12d4..1149791b866a 100644 --- a/include/pokeball.h +++ b/include/pokeball.h @@ -34,8 +34,8 @@ extern const struct SpriteTemplate gBallSpriteTemplates[]; #define POKEBALL_OPPONENT_SENDOUT 0xFE u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow); -void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battler, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 g, u32 h, u16 species); -u8 CreateTradePokeballSprite(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h); +void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 delay, u32 fadePalettes, u16 species); +u8 CreateTradePokeballSprite(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 delay, u32 fadePalettes); void StartHealthboxSlideIn(u8 battler); void DoHitAnimHealthboxEffect(u8 battler); void LoadBallGfx(u8 ballId); diff --git a/include/pokemon.h b/include/pokemon.h index 7885c2ac52ff..0da71e78ee82 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -381,11 +381,11 @@ u16 SpeciesToNationalPokedexNum(u16 species); u16 SpeciesToHoennPokedexNum(u16 species); u16 HoennToNationalOrder(u16 hoennNum); u16 SpeciesToCryId(u16 species); -void DrawSpindaSpots(u16 species, u32 personality, u8 *dest, u8 a4); +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); -s32 GetBattlerMultiplayerId(u16 a1); +s32 GetBattlerMultiplayerId(u16 id); u8 GetTrainerEncounterMusicId(u16 trainerOpponentId); u16 ModifyStatByNature(u8 nature, u16 n, u8 statIndex); void AdjustFriendship(struct Pokemon *mon, u8 event); diff --git a/include/pokenav.h b/include/pokenav.h index 07beae957f1c..593c68489021 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -412,7 +412,7 @@ int GetNumberRegistered(void); struct PokenavMatchCallEntry *GetMatchCallList(void); u16 GetMatchCallMapSec(int); bool32 ShouldDrawRematchPokeballIcon(int index); -void ClearRematchPokeballIcon(u16 windowId, u32 a1); +void ClearRematchPokeballIcon(u16 windowId, u32 tileOffset); int GetMatchCallTrainerPic(int index); const u8 *GetMatchCallFlavorText(int index, int textType); const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest); diff --git a/include/scanline_effect.h b/include/scanline_effect.h index 5bd8b554686e..ae534d96997b 100644 --- a/include/scanline_effect.h +++ b/include/scanline_effect.h @@ -43,6 +43,6 @@ void ScanlineEffect_Stop(void); void ScanlineEffect_Clear(void); void ScanlineEffect_SetParams(struct ScanlineEffectParams); void ScanlineEffect_InitHBlankDmaTransfer(void); -u8 ScanlineEffect_InitWave(u8 startLine, u8 endLine, u8 frequency, u8 amplitude, u8 delayInterval, u8 regOffset, bool8 a7); +u8 ScanlineEffect_InitWave(u8 startLine, u8 endLine, u8 frequency, u8 amplitude, u8 delayInterval, u8 regOffset, bool8 applyBattleBgOffsets); #endif // GUARD_SCANLINE_EFFECT_H diff --git a/include/trade.h b/include/trade.h index a0cb320a88b9..27b5ee8bdf1c 100644 --- a/include/trade.h +++ b/include/trade.h @@ -12,8 +12,8 @@ extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate; s32 GetGameProgressForLinkTrade(void); void CB2_StartCreateTradeMenu(void); void CB2_LinkTrade(void); -int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData a0, u16, u16, u8); -int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData a0, struct RfuGameCompatibilityData a1, u16 a2, u16 a3, u8 a4, u16 a5, u8 a6); +int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, bool8 isEventLegal); +int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, bool8 isEventLegal); int CanSpinTradeMon(struct Pokemon*, u16); void InitTradeSequenceBgGpuRegs(void); void LinkTradeDrawWindow(void); diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 76868342fd83..cd9cb8b303e9 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -128,7 +128,7 @@ static void AnimHornHit_Step(struct Sprite *); static void AnimSuperFang(struct Sprite *); static void AnimWavyMusicNotes(struct Sprite *); static void AnimWavyMusicNotes_Step(struct Sprite *); -static void AnimWavyMusicNotesGetNextPos(s16, s16, s16 *, s16 *, s8); +static void AnimWavyMusicNotes_CalcVelocity(s16, s16, s16 *, s16 *, s8); static void AnimFlyingMusicNotes(struct Sprite *); static void AnimFlyingMusicNotes_Step(struct Sprite *); static void AnimBellyDrumHand(struct Sprite *); @@ -5279,79 +5279,87 @@ void AnimTask_MusicNotesClearRainbowBlend(u8 taskId) DestroyAnimVisualTask(taskId); } +#define sMoveTimer data[0] +#define sBlendTableIdx data[1] +#define sBlendTimer data[2] +#define sBlendCycleTime data[3] +#define sX data[4] +#define sY data[5] +#define sVelocX data[6] +#define sVelocY data[7] + static void AnimWavyMusicNotes(struct Sprite* sprite) { u8 index; - u8 a; - u8 b; + u8 x, y; SetSpriteCoordsToAnimAttackerCoords(sprite); StartSpriteAnim(sprite, gBattleAnimArgs[0]); if ((index = IndexOfSpritePaletteTag(gParticlesColorBlendTable[gBattleAnimArgs[1]][0])) != 0xFF) sprite->oam.paletteNum = index; - sprite->data[1] = gBattleAnimArgs[1]; - sprite->data[2] = 0; - sprite->data[3] = gBattleAnimArgs[2]; + sprite->sBlendTableIdx = gBattleAnimArgs[1]; + sprite->sBlendTimer = 0; + sprite->sBlendCycleTime = gBattleAnimArgs[2]; if (IsContest()) { - a = 48; - b = 40; + x = 48; + y = 40; } else { - a = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); - b = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); + x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } - sprite->data[4] = sprite->x << 4; - sprite->data[5] = sprite->y << 4; - AnimWavyMusicNotesGetNextPos(a - sprite->x, b - sprite->y, &sprite->data[6], &sprite->data[7], 40); + sprite->sX = sprite->x << 4; + sprite->sY = sprite->y << 4; + AnimWavyMusicNotes_CalcVelocity(x - sprite->x, y - sprite->y, &sprite->sVelocX, &sprite->sVelocY, 40); sprite->callback = AnimWavyMusicNotes_Step; } -static void AnimWavyMusicNotesGetNextPos(s16 a, s16 b, s16* c, s16* d, s8 e) +static void AnimWavyMusicNotes_CalcVelocity(s16 x, s16 y, s16* velocX, s16* velocY, s8 xSpeedFactor) { - int f; - int g; - if (a < 0) - e = -e; + int x2; + int time; + if (x < 0) + xSpeedFactor = -xSpeedFactor; - f = a << 8; - g = f / e; - if (g == 0) - g = 1; + x2 = x << 8; + time = x2 / xSpeedFactor; + if (time == 0) + time = 1; - *c = f / g; - *d = (b << 8) / g; + *velocX = x2 / time; + *velocY = (y << 8) / time; } static void AnimWavyMusicNotes_Step(struct Sprite* sprite) { - s16 y, yDelta; + s16 y, trigIdx; u8 index; - sprite->data[0]++; - yDelta = sprite->data[0] * 5 - ((sprite->data[0] * 5 / 256) << 8); - sprite->data[4] += sprite->data[6]; - sprite->data[5] += sprite->data[7]; - sprite->x = sprite->data[4] >> 4; - sprite->y = sprite->data[5] >> 4; - sprite->y2 = Sin(yDelta, 15); + sprite->sMoveTimer++; + trigIdx = sprite->sMoveTimer * 5 - ((sprite->sMoveTimer * 5 / 256) << 8); + sprite->sX += sprite->sVelocX; + sprite->sY += sprite->sVelocY; + sprite->x = sprite->sX >> 4; + sprite->y = sprite->sY >> 4; + sprite->y2 = Sin(trigIdx, 15); y = sprite->y; - if (sprite->x < -16 || sprite->x > 256 || y < -16 || y > 128) + if (sprite->x < -16 || sprite->x > DISPLAY_WIDTH + 16 || y < -16 || y > DISPLAY_HEIGHT - 32) { DestroySpriteAndMatrix(sprite); } else { - if (sprite->data[3] && ++sprite->data[2] > sprite->data[3]) + if (sprite->sBlendCycleTime && ++sprite->sBlendTimer > sprite->sBlendCycleTime) { - sprite->data[2] = 0; - if (++sprite->data[1] > 3) - sprite->data[1] = 0; + sprite->sBlendTimer = 0; + if (++sprite->sBlendTableIdx > (int)ARRAY_COUNT(gParticlesColorBlendTable) - 1) + sprite->sBlendTableIdx = 0; - index = IndexOfSpritePaletteTag(gParticlesColorBlendTable[sprite->data[1]][0]); + index = IndexOfSpritePaletteTag(gParticlesColorBlendTable[sprite->sBlendTableIdx][0]); if (index != 0xFF) sprite->oam.paletteNum = index; } @@ -5467,7 +5475,7 @@ void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) static void AnimThoughtBubble(struct Sprite* sprite) { - u8 a; + u8 animNum; u8 battler; if (gBattleAnimArgs[0] == 0) battler = gBattleAnimAttacker; @@ -5475,10 +5483,10 @@ static void AnimThoughtBubble(struct Sprite* sprite) battler = gBattleAnimTarget; SetSpriteNextToMonHead(battler, sprite); - a = (GetBattlerSide(battler) == B_SIDE_PLAYER) ? 0 : 1; + animNum = (GetBattlerSide(battler) == B_SIDE_PLAYER) ? 0 : 1; sprite->data[0] = gBattleAnimArgs[1]; - sprite->data[1] = a + 2; - StartSpriteAnim(sprite, a); + sprite->data[1] = animNum + 2; + StartSpriteAnim(sprite, animNum); StoreSpriteCallbackInData6(sprite, AnimThoughtBubble_Step); sprite->callback = RunStoredCallbackWhenAnimEnds; } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index fcd594db5f53..3b4f6729f87c 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1213,7 +1213,7 @@ void AnimTask_SmokescreenImpact(u8 taskId) SmokescreenImpact( GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 8, GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 8, - 0); + FALSE); DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 8ecb60713251..b523a3771bd7 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -26,18 +26,18 @@ static void AnimFireCross(struct Sprite *); static void AnimFireSpiralOutward(struct Sprite *); static void AnimFireSpiralOutward_Step1(struct Sprite *); static void AnimFireSpiralOutward_Step2(struct Sprite *); -static void AnimTask_EruptionLaunchRocks_Step(u8 taskId); -static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3); +static void AnimTask_EruptionLaunchRocks_Step(u8); +static void CreateEruptionLaunchRocks(u8, u8, u8); static void AnimEruptionLaunchRock(struct Sprite *); -static u16 GetEruptionLaunchRockInitialYPos(u8 spriteId); -static void InitEruptionLaunchRockCoordData(struct Sprite *sprite, s16 x, s16 y); +static u16 GetEruptionLaunchRockInitialYPos(u8); +static void InitEruptionLaunchRockCoordData(struct Sprite *, s16, s16); static void UpdateEruptionLaunchRockPos(struct Sprite *); static void AnimEruptionFallingRock(struct Sprite *); static void AnimEruptionFallingRock_Step(struct Sprite *); static void AnimWillOWispOrb(struct Sprite *); static void AnimWillOWispOrb_Step(struct Sprite *); static void AnimWillOWispFire(struct Sprite *); -static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId); +static void AnimTask_MoveHeatWaveTargets_Step(u8); static const union AnimCmd sAnim_FireSpiralSpread_0[] = { @@ -355,7 +355,7 @@ const struct SpriteTemplate gEruptionLaunchRockSpriteTemplate = .callback = AnimEruptionLaunchRock, }; -static const s16 sEruptionLaunchRockCoords[][2] = +static const s16 sEruptionLaunchRockSpeeds[][2] = { {-2, -5}, {-1, -1}, @@ -770,22 +770,43 @@ static void AnimFireSpiralOutward_Step2(struct Sprite *sprite) DestroyAnimSprite(sprite); } +#define IDX_ACTIVE_SPRITES 6 // Used by the sprite callback to modify the number of active sprites + +#define tState data[0] +#define tTimer1 data[1] +#define tTimer2 data[2] +#define tTimer3 data[3] +#define tAttackerY data[4] +#define tAttackerSide data[5] +#define tActiveSprites data[IDX_ACTIVE_SPRITES] +// data[8]-data[15] used by PrepareEruptAnimTaskData / UpdateEruptAnimTask +#define tAttackerSpriteId data[15] + +#define sSpeedDelay data[0] +#define sLaunchStage data[1] +#define sX data[2] +#define sY data[3] +#define sSpeedX data[4] +#define sSpeedY data[5] +#define sTaskId data[6] +#define sActiveSpritesIdx data[7] + // Animates first stage of Eruption where the attacker squishes and launches rocks away from themself void AnimTask_EruptionLaunchRocks(u8 taskId) { struct Task *task = &gTasks[taskId]; - task->data[15] = GetAnimBattlerSpriteId(ANIM_ATTACKER); + task->tAttackerSpriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); - task->data[0] = 0; - task->data[1] = 0; - task->data[2] = 0; - task->data[3] = 0; - task->data[4] = gSprites[task->data[15]].y; - task->data[5] = GetBattlerSide(gBattleAnimAttacker); - task->data[6] = 0; + task->tState = 0; + task->tTimer1 = 0; + task->tTimer2 = 0; + task->tTimer3 = 0; + task->tAttackerY = gSprites[task->tAttackerSpriteId].y; + task->tAttackerSide = GetBattlerSide(gBattleAnimAttacker); + task->tActiveSprites = 0; - PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL); + PrepareBattlerSpriteForRotScale(task->tAttackerSpriteId, ST_OAM_OBJ_NORMAL); task->func = AnimTask_EruptionLaunchRocks_Step; } @@ -794,102 +815,102 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) { struct Task *task = &gTasks[taskId]; - switch (task->data[0]) + switch (task->tState) { case 0: - PrepareEruptAnimTaskData(task, task->data[15], 0x100, 0x100, 0xE0, 0x200, 32); - task->data[0]++; + PrepareEruptAnimTaskData(task, task->tAttackerSpriteId, 0x100, 0x100, 0xE0, 0x200, 32); + task->tState++; case 1: - if (++task->data[1] > 1) + if (++task->tTimer1 > 1) { - task->data[1] = 0; + task->tTimer1 = 0; - if (++task->data[2] & 0x1) - gSprites[task->data[15]].x2 = 3; + if (++task->tTimer2 & 1) + gSprites[task->tAttackerSpriteId].x2 = 3; else - gSprites[task->data[15]].x2 = -3; + gSprites[task->tAttackerSpriteId].x2 = -3; } - if (task->data[5] != B_SIDE_PLAYER) + if (task->tAttackerSide != B_SIDE_PLAYER) { - if (++task->data[3] > 4) + if (++task->tTimer3 > 4) { - task->data[3] = 0; - gSprites[task->data[15]].y++; + task->tTimer3 = 0; + gSprites[task->tAttackerSpriteId].y++; } } if(!UpdateEruptAnimTask(task)) { - SetBattlerSpriteYOffsetFromYScale(task->data[15]); - gSprites[task->data[15]].x2 = 0; + SetBattlerSpriteYOffsetFromYScale(task->tAttackerSpriteId); + gSprites[task->tAttackerSpriteId].x2 = 0; - task->data[1] = 0; - task->data[2] = 0; - task->data[3] = 0; - task->data[0]++; + task->tTimer1 = 0; + task->tTimer2 = 0; + task->tTimer3 = 0; + task->tState++; } break; case 2: - if (++task->data[1] > 4) + if (++task->tTimer1 > 4) { - if (task->data[5] != B_SIDE_PLAYER) - PrepareEruptAnimTaskData(task, task->data[15], 0xE0, 0x200, 0x180, 0xF0, 6); + if (task->tAttackerSide != B_SIDE_PLAYER) + PrepareEruptAnimTaskData(task, task->tAttackerSpriteId, 0xE0, 0x200, 0x180, 0xF0, 6); else - PrepareEruptAnimTaskData(task, task->data[15], 0xE0, 0x200, 0x180, 0xC0, 6); + PrepareEruptAnimTaskData(task, task->tAttackerSpriteId, 0xE0, 0x200, 0x180, 0xC0, 6); - task->data[1] = 0; - task->data[0]++; + task->tTimer1 = 0; + task->tState++; } break; case 3: if (!UpdateEruptAnimTask(task)) { - CreateEruptionLaunchRocks(task->data[15], taskId, 6); - task->data[0]++; + CreateEruptionLaunchRocks(task->tAttackerSpriteId, taskId, IDX_ACTIVE_SPRITES); + task->tState++; } break; case 4: - if (++task->data[1] > 1) + if (++task->tTimer1 > 1) { - task->data[1] = 0; + task->tTimer1 = 0; - if (++task->data[2] & 1) - gSprites[task->data[15]].y2 += 3; + if (++task->tTimer2 & 1) + gSprites[task->tAttackerSpriteId].y2 += 3; else - gSprites[task->data[15]].y2 -= 3; + gSprites[task->tAttackerSpriteId].y2 -= 3; } - if (++task->data[3] > 0x18) + if (++task->tTimer3 > 24) { - if (task->data[5] != B_SIDE_PLAYER) - PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xF0, 0x100, 0x100, 8); + if (task->tAttackerSide != B_SIDE_PLAYER) + PrepareEruptAnimTaskData(task, task->tAttackerSpriteId, 0x180, 0xF0, 0x100, 0x100, 8); else - PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 8); + PrepareEruptAnimTaskData(task, task->tAttackerSpriteId, 0x180, 0xC0, 0x100, 0x100, 8); - if (task->data[2] & 1) - gSprites[task->data[15]].y2 -= 3; + if (task->tTimer2 & 1) + gSprites[task->tAttackerSpriteId].y2 -= 3; - task->data[1] = 0; - task->data[2] = 0; - task->data[3] = 0; - task->data[0]++; + task->tTimer1 = 0; + task->tTimer2 = 0; + task->tTimer3 = 0; + task->tState++; } break; case 5: - if (task->data[5] != B_SIDE_PLAYER) - gSprites[task->data[15]].y--; + if (task->tAttackerSide != B_SIDE_PLAYER) + gSprites[task->tAttackerSpriteId].y--; if (!UpdateEruptAnimTask(task)) { - gSprites[task->data[15]].y = task->data[4]; - ResetSpriteRotScale(task->data[15]); - task->data[2] = 0; - task->data[0]++; + gSprites[task->tAttackerSpriteId].y = task->tAttackerY; + ResetSpriteRotScale(task->tAttackerSpriteId); + task->tTimer2 = 0; + task->tState++; } break; case 6: - if (!task->data[6]) + if (task->tActiveSprites == 0) DestroyAnimVisualTask(taskId); break; default: @@ -897,7 +918,7 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) } } -static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3) +static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 activeSpritesIdx) { u16 i, j; s8 sign; @@ -907,12 +928,12 @@ static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3) if(!GetBattlerSide(gBattleAnimAttacker)) { - x -= 0xC; + x -= 12; sign = 1; } else { - x += 0x10; + x += 16; sign = -1; } @@ -920,18 +941,18 @@ static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3) { u8 spriteId = CreateSprite(&gEruptionLaunchRockSpriteTemplate, x, y, 2); - if (spriteId != 0x40) + if (spriteId != MAX_SPRITES) { gSprites[spriteId].oam.tileNum += j * 4 + 0x40; if (++j >= 5) j = 0; - InitEruptionLaunchRockCoordData(&gSprites[spriteId], sEruptionLaunchRockCoords[i][0] * sign, sEruptionLaunchRockCoords[i][1]); - gSprites[spriteId].data[6] = taskId; - gSprites[spriteId].data[7] = a3; + InitEruptionLaunchRockCoordData(&gSprites[spriteId], sEruptionLaunchRockSpeeds[i][0] * sign, sEruptionLaunchRockSpeeds[i][1]); + gSprites[spriteId].sTaskId = taskId; + gSprites[spriteId].sActiveSpritesIdx = activeSpritesIdx; - gTasks[taskId].data[a3]++; + gTasks[taskId].data[activeSpritesIdx]++; } } } @@ -942,7 +963,7 @@ static void AnimEruptionLaunchRock(struct Sprite *sprite) if (sprite->invisible) { - gTasks[sprite->data[6]].data[sprite->data[7]]--; + gTasks[sprite->sTaskId].data[sprite->sActiveSpritesIdx]--; DestroySprite(sprite); } } @@ -959,46 +980,71 @@ static u16 GetEruptionLaunchRockInitialYPos(u8 spriteId) return y; } -static void InitEruptionLaunchRockCoordData(struct Sprite *sprite, s16 x, s16 y) +static void InitEruptionLaunchRockCoordData(struct Sprite *sprite, s16 speedX, s16 speedY) { - sprite->data[0] = 0; - sprite->data[1] = 0; - sprite->data[2] = (u16)sprite->x * 8; - sprite->data[3] = (u16)sprite->y * 8; - sprite->data[4] = x * 8; - sprite->data[5] = y * 8; + sprite->sSpeedDelay = 0; + sprite->sLaunchStage = 0; + sprite->sX = (u16)sprite->x * 8; + sprite->sY = (u16)sprite->y * 8; + sprite->sSpeedX = speedX * 8; + sprite->sSpeedY = speedY * 8; } static void UpdateEruptionLaunchRockPos(struct Sprite *sprite) { - int var1; - if (++sprite->data[0] > 2) + int extraLaunchSpeed; + if (++sprite->sSpeedDelay > 2) { - sprite->data[0] = 0; - ++sprite->data[1]; - var1 = (u16)sprite->data[1] * (u16)sprite->data[1]; - sprite->data[3] += var1; + sprite->sSpeedDelay = 0; + ++sprite->sLaunchStage; + extraLaunchSpeed = (u16)sprite->sLaunchStage * (u16)sprite->sLaunchStage; + sprite->sY += extraLaunchSpeed; } - sprite->data[2] += sprite->data[4]; - sprite->x = sprite->data[2] >> 3; - sprite->data[3] += sprite->data[5]; - sprite->y = sprite->data[3] >> 3; + sprite->sX += sprite->sSpeedX; + sprite->x = sprite->sX >> 3; + sprite->sY += sprite->sSpeedY; + sprite->y = sprite->sY >> 3; - if (sprite->x < -8 || sprite->x > 0xf8 || sprite->y < -8 || sprite->y > 120) + if (sprite->x < -8 || sprite->x > DISPLAY_WIDTH + 8 || sprite->y < -8 || sprite->y > 120) sprite->invisible = TRUE; } +#undef IDX_ACTIVE_SPRITES +#undef tState +#undef tTimer1 +#undef tTimer2 +#undef tTimer3 +#undef tAttackerY +#undef tAttackerSide +#undef tActiveSprites +#undef tAttackerSpriteId +#undef sSpeedDelay +#undef sLaunchStage +#undef sX +#undef sY +#undef sSpeedX +#undef sSpeedY +#undef sTaskId +#undef sActiveSpritesIdx + +#define sState data[0] +#define sBounceTimer data[1] +#define sBounceDir data[2] +#define sEndTimer data[3] +#define sFallDelay data[6] +#define sTargetY data[7] + static void AnimEruptionFallingRock(struct Sprite *sprite) { sprite->x = gBattleAnimArgs[0]; sprite->y = gBattleAnimArgs[1]; - sprite->data[0] = 0; - sprite->data[1] = 0; - sprite->data[2] = 0; - sprite->data[6] = gBattleAnimArgs[2]; - sprite->data[7] = gBattleAnimArgs[3]; + sprite->sState = 0; + sprite->sBounceTimer = 0; + sprite->sBounceDir = 0; + sprite->sFallDelay = gBattleAnimArgs[2]; + sprite->sTargetY = gBattleAnimArgs[3]; sprite->oam.tileNum += gBattleAnimArgs[4] * 16; sprite->callback = AnimEruptionFallingRock_Step; @@ -1006,47 +1052,51 @@ static void AnimEruptionFallingRock(struct Sprite *sprite) static void AnimEruptionFallingRock_Step(struct Sprite *sprite) { - switch (sprite->data[0]) + switch (sprite->sState) { case 0: - if (sprite->data[6] != 0) + // Wait to begin falling + if (sprite->sFallDelay != 0) { - sprite->data[6]--; + sprite->sFallDelay--; return; } - sprite->data[0]++; + sprite->sState++; // fall through case 1: + // Rock is falling sprite->y += 8; - if (sprite->y >= sprite->data[7]) + if (sprite->y >= sprite->sTargetY) { - sprite->y = sprite->data[7]; - sprite->data[0]++; + sprite->y = sprite->sTargetY; + sprite->sState++; } break; case 2: - if (++sprite->data[1] > 1) + // Bounce up and down on landing spot + if (++sprite->sBounceTimer > 1) { - sprite->data[1] = 0; - if ((++sprite->data[2] & 1) != 0) - { + sprite->sBounceTimer = 0; + if ((++sprite->sBounceDir & 1) != 0) sprite->y2 = -3; - } else - { sprite->y2 = 3; - } } - if (++sprite->data[3] > 16) - { + if (++sprite->sEndTimer > 16) DestroyAnimSprite(sprite); - } break; } } +#undef sState +#undef sBounceTimer +#undef sBounceDir +#undef sEndTimer +#undef sFallDelay +#undef sTargetY + static void AnimWillOWispOrb(struct Sprite *sprite) { switch (sprite->data[0]) diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index cee50df3fac4..2fbe858d7b43 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1365,14 +1365,14 @@ void ResetSpriteRotScale_PreserveAffine(struct Sprite *sprite) CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); } -static u16 ArcTan2_(s16 a, s16 b) +static u16 ArcTan2_(s16 x, s16 y) { - return ArcTan2(a, b); + return ArcTan2(x, y); } -u16 ArcTan2Neg(s16 a, s16 b) +u16 ArcTan2Neg(s16 x, s16 y) { - u16 var = ArcTan2_(a, b); + u16 var = ArcTan2_(x, y); return -var; } diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index a7faa7658602..aebf76cc0659 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -583,9 +583,9 @@ static void AnimWallSparkle(struct Sprite *sprite) { if (sprite->data[0] == 0) { - int arg3 = gBattleAnimArgs[3]; + bool32 ignoreOffsets = gBattleAnimArgs[3]; bool8 respectMonPicOffsets = FALSE; - if (arg3 == 0) + if (!ignoreOffsets) respectMonPicOffsets = TRUE; if (!IsContest() && IsDoubleBattle()) diff --git a/src/battle_anim_smokescreen.c b/src/battle_anim_smokescreen.c index 0819796d276a..c7be8d41c4c4 100644 --- a/src/battle_anim_smokescreen.c +++ b/src/battle_anim_smokescreen.c @@ -7,8 +7,13 @@ #include "util.h" #include "constants/battle_palace.h" -static void SmokescreenImpact_Callback(struct Sprite *); -static void SpriteCB_DestroySprite(struct Sprite *sprite); +#define TAG_SMOKESCREEN 55019 + +#define PALTAG_SHADOW 55039 +#define GFXTAG_SHADOW 55129 + +static void SpriteCB_SmokescreenImpactMain(struct Sprite *); +static void SpriteCB_SmokescreenImpact(struct Sprite *); // The below data for smokescreen starts and ends with some data that belongs to battle_gfx_sfx_util.c @@ -43,12 +48,12 @@ const u8 gBattlePalaceNatureToMoveTarget[NUM_NATURES] = static const struct CompressedSpriteSheet sSmokescreenImpactSpriteSheet = { - .data = gSmokescreenImpactTiles, .size = 0x180, .tag = 55019 + .data = gSmokescreenImpactTiles, .size = 0x180, .tag = TAG_SMOKESCREEN }; static const struct CompressedSpritePalette sSmokescreenImpactSpritePalette = { - .data = gSmokescreenImpactPalette, .tag = 55019 + .data = gSmokescreenImpactPalette, .tag = TAG_SMOKESCREEN }; static const struct OamData sOamData_SmokescreenImpact = @@ -110,18 +115,18 @@ static const union AnimCmd *const sAnims_SmokescreenImpact[] = static const struct SpriteTemplate sSmokescreenImpactSpriteTemplate = { - .tileTag = 55019, - .paletteTag = 55019, + .tileTag = TAG_SMOKESCREEN, + .paletteTag = TAG_SMOKESCREEN, .oam = &sOamData_SmokescreenImpact, .anims = sAnims_SmokescreenImpact, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_DestroySprite + .callback = SpriteCB_SmokescreenImpact }; const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow = { - .data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = 55129 + .data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = GFXTAG_SHADOW }; static const struct OamData sOamData_EnemyShadow = @@ -143,8 +148,8 @@ static const struct OamData sOamData_EnemyShadow = const struct SpriteTemplate gSpriteTemplate_EnemyShadow = { - .tileTag = 55129, - .paletteTag = 55039, + .tileTag = GFXTAG_SHADOW, + .paletteTag = PALTAG_SHADOW, .oam = &sOamData_EnemyShadow, .anims = gDummySpriteAnimTable, .images = NULL, @@ -152,7 +157,12 @@ const struct SpriteTemplate gSpriteTemplate_EnemyShadow = .callback = SpriteCB_SetInvisible }; -u8 SmokescreenImpact(s16 x, s16 y, u8 a3) +#define sActiveSprites data[0] +#define sPersist data[1] + +#define sMainSpriteId data[0] + +u8 SmokescreenImpact(s16 x, s16 y, bool8 persist) { u8 mainSpriteId; u8 spriteId1, spriteId2, spriteId3, spriteId4; @@ -164,54 +174,58 @@ u8 SmokescreenImpact(s16 x, s16 y, u8 a3) LoadCompressedSpritePaletteUsingHeap(&sSmokescreenImpactSpritePalette); } - mainSpriteId = CreateInvisibleSpriteWithCallback(SmokescreenImpact_Callback); + mainSpriteId = CreateInvisibleSpriteWithCallback(SpriteCB_SmokescreenImpactMain); mainSprite = &gSprites[mainSpriteId]; - mainSprite->data[1] = a3; + mainSprite->sPersist = persist; + // Top left sprite spriteId1 = CreateSprite(&sSmokescreenImpactSpriteTemplate, x - 16, y - 16, 2); - gSprites[spriteId1].data[0] = mainSpriteId; - mainSprite->data[0]++; + gSprites[spriteId1].sMainSpriteId = mainSpriteId; + mainSprite->sActiveSprites++; AnimateSprite(&gSprites[spriteId1]); + // Top right sprite spriteId2 = CreateSprite(&sSmokescreenImpactSpriteTemplate, x, y - 16, 2); - gSprites[spriteId2].data[0] = mainSpriteId; - mainSprite->data[0]++; + gSprites[spriteId2].sMainSpriteId = mainSpriteId; + mainSprite->sActiveSprites++; StartSpriteAnim(&gSprites[spriteId2], 1); AnimateSprite(&gSprites[spriteId2]); + // Bottom left sprite spriteId3 = CreateSprite(&sSmokescreenImpactSpriteTemplate, x - 16, y, 2); - gSprites[spriteId3].data[0] = mainSpriteId; - mainSprite->data[0]++; + gSprites[spriteId3].sMainSpriteId = mainSpriteId; + mainSprite->sActiveSprites++; StartSpriteAnim(&gSprites[spriteId3], 2); AnimateSprite(&gSprites[spriteId3]); + // Bottom right sprite spriteId4 = CreateSprite(&sSmokescreenImpactSpriteTemplate, x, y, 2); - gSprites[spriteId4].data[0] = mainSpriteId; - mainSprite->data[0]++; + gSprites[spriteId4].sMainSpriteId = mainSpriteId; + mainSprite->sActiveSprites++; StartSpriteAnim(&gSprites[spriteId4], 3); AnimateSprite(&gSprites[spriteId4]); return mainSpriteId; } -static void SmokescreenImpact_Callback(struct Sprite *sprite) +static void SpriteCB_SmokescreenImpactMain(struct Sprite *sprite) { - if (!sprite->data[0]) + if (sprite->sActiveSprites == 0) { FreeSpriteTilesByTag(sSmokescreenImpactSpriteSheet.tag); FreeSpritePaletteByTag(sSmokescreenImpactSpritePalette.tag); - if (!sprite->data[1]) + if (!sprite->sPersist) DestroySprite(sprite); else sprite->callback = SpriteCallbackDummy; } } -static void SpriteCB_DestroySprite(struct Sprite *sprite) +static void SpriteCB_SmokescreenImpact(struct Sprite *sprite) { if (sprite->animEnded) { - gSprites[sprite->data[0]].data[0]--; + gSprites[sprite->sMainSpriteId].sActiveSprites--; DestroySprite(sprite); } } diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index fa06f1a1ccba..2f095a043a7f 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -2018,24 +2018,24 @@ static void DestroyBallOpenAnimationParticle(struct Sprite *sprite) #define tPaletteHi data[11] #define tBallId data[15] -u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 battler, u32 selectedPalettes, u8 ballId) +u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 spritePalNum, u32 selectedPalettes, u8 ballId) { u8 taskId; taskId = CreateTask(Task_FadeMon_ToBallColor, 5); gTasks[taskId].tBallId = ballId; - gTasks[taskId].tPalOffset = battler; + gTasks[taskId].tPalOffset = spritePalNum; gTasks[taskId].tPaletteLo = selectedPalettes; gTasks[taskId].tPaletteHi = selectedPalettes >> 16; if (!unfadeLater) { - BlendPalette(battler * 16 + 0x100, 16, 0, gBallOpenFadeColors[ballId]); + BlendPalette(spritePalNum * 16 + 0x100, 16, 0, gBallOpenFadeColors[ballId]); gTasks[taskId].tdCoeff = 1; } else { - BlendPalette(battler * 16 + 0x100, 16, 16, gBallOpenFadeColors[ballId]); + BlendPalette(spritePalNum * 16 + 0x100, 16, 16, gBallOpenFadeColors[ballId]); gTasks[taskId].tCoeff = 16; gTasks[taskId].tdCoeff = -1; gTasks[taskId].func = Task_FadeMon_ToNormal; diff --git a/src/battle_dome.c b/src/battle_dome.c index c9614e6fc6f8..2f86e707d930 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -73,12 +73,16 @@ struct TourneyTreeLineSection #define tMode data[2] #define tPrevTaskId data[3] +#define EFFECTIVENESS_MODE_GOOD 0 +#define EFFECTIVENESS_MODE_BAD 1 +#define EFFECTIVENESS_MODE_AI_VS_AI 2 + static u8 GetDomeTrainerMonIvs(u16); static void SwapDomeTrainers(int, int, u16 *); static void CalcDomeMonStats(u16, int, int, u8, u8, int *); static void CreateDomeOpponentMons(u16); -static int SelectOpponentMonsUsingPersonality(u16, bool8); -static int SelectOpponentMonsUsingOtId(u16, bool8); +static int SelectOpponentMons_Good(u16, bool8); +static int SelectOpponentMons_Bad(u16, bool8); static int GetTypeEffectivenessPoints(int, int, int); static int SelectOpponentMonsFromParty(int *, bool8); static void Task_ShowTourneyInfoCard(u8); @@ -2589,28 +2593,33 @@ static void CreateDomeOpponentMons(u16 tournamentTrainerId) } } +// Returns a bitmask representing which 2 of the trainer's 3 pokemon to select. +// The choice is calculated solely depending on the type effectiveness of their +// movesets against the player's pokemon. +// 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. int GetDomeTrainerSelectedMons(u16 tournamentTrainerId) { int selectedMonBits; if (Random() & 1) { - selectedMonBits = SelectOpponentMonsUsingPersonality(tournamentTrainerId, FALSE); + selectedMonBits = SelectOpponentMons_Good(tournamentTrainerId, FALSE); if (selectedMonBits == 0) - selectedMonBits = SelectOpponentMonsUsingOtId(tournamentTrainerId, TRUE); + selectedMonBits = SelectOpponentMons_Bad(tournamentTrainerId, TRUE); } else { - selectedMonBits = SelectOpponentMonsUsingOtId(tournamentTrainerId, FALSE); + selectedMonBits = SelectOpponentMons_Bad(tournamentTrainerId, FALSE); if (selectedMonBits == 0) - selectedMonBits = SelectOpponentMonsUsingPersonality(tournamentTrainerId, TRUE); + selectedMonBits = SelectOpponentMons_Good(tournamentTrainerId, TRUE); } return selectedMonBits; } -// Could probably use a better name once GetTypeEffectivenessPoints is clarified -// Personality seems to be used to select a different weighting system for type effectiveness points -static int SelectOpponentMonsUsingPersonality(u16 tournamentTrainerId, bool8 allowRandom) +static int SelectOpponentMons_Good(u16 tournamentTrainerId, bool8 allowRandom) { int i, moveId, playerMonId; int partyMovePoints[FRONTIER_PARTY_SIZE]; @@ -2625,12 +2634,12 @@ static int SelectOpponentMonsUsingPersonality(u16 tournamentTrainerId, bool8 all if (DOME_TRAINERS[tournamentTrainerId].trainerId == TRAINER_FRONTIER_BRAIN) { partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveId), - GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), MON_DATA_PERSONALITY); + GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_GOOD); } else { partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveId], - GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), MON_DATA_PERSONALITY); + GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_GOOD); } } } @@ -2638,8 +2647,8 @@ static int SelectOpponentMonsUsingPersonality(u16 tournamentTrainerId, bool8 all return SelectOpponentMonsFromParty(partyMovePoints, allowRandom); } -// See above function, identical but uses MON_DATA_OT_ID -static int SelectOpponentMonsUsingOtId(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 partyMovePoints[FRONTIER_PARTY_SIZE]; @@ -2654,12 +2663,12 @@ static int SelectOpponentMonsUsingOtId(u16 tournamentTrainerId, bool8 allowRando if (DOME_TRAINERS[tournamentTrainerId].trainerId == TRAINER_FRONTIER_BRAIN) { partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveId), - GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), MON_DATA_OT_ID); + GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_BAD); } else { partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveId], - GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), MON_DATA_OT_ID); + GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_BAD); } } } @@ -2732,7 +2741,7 @@ static int SelectOpponentMonsFromParty(int *partyMovePoints, bool8 allowRandom) #define TYPE_x2 40 #define TYPE_x4 80 -static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) +static int GetTypeEffectivenessPoints(int move, int targetSpecies, int mode) { int defType1, defType2, defAbility, moveType; int i = 0; @@ -2748,11 +2757,20 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) if (defAbility == ABILITY_LEVITATE && moveType == TYPE_GROUND) { - if (arg2 == 1) + // They likely meant to return here, as 8 is the number of points normally used in this mode for moves with no effect. + // Because there's no return the value instead gets interpreted by the switch, and the number of points becomes 0. + if (mode == EFFECTIVENESS_MODE_BAD) + { typePower = 8; + #ifdef BUGFIX + return; + #endif + } } else { + // Calculate a "type power" value to determine the benefit of using this type move against the target. + // This value will then be used to get the number of points to assign to the move. while (TYPE_EFFECT_ATK_TYPE(i) != TYPE_ENDTABLE) { if (TYPE_EFFECT_ATK_TYPE(i) == TYPE_FORESIGHT) @@ -2764,33 +2782,30 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) { // BUG: the value of TYPE_x2 does not exist in gTypeEffectiveness, so if defAbility is ABILITY_WONDER_GUARD, the conditional always fails #ifndef BUGFIX - if (TYPE_EFFECT_DEF_TYPE(i) == defType1) - if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_x2) || defAbility != ABILITY_WONDER_GUARD) - typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; - if (TYPE_EFFECT_DEF_TYPE(i) == defType2 && defType1 != defType2) - if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_x2) || defAbility != ABILITY_WONDER_GUARD) - typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; + #define WONDER_GUARD_EFFECTIVENESS TYPE_x2 #else + #define WONDER_GUARD_EFFECTIVENESS TYPE_MUL_SUPER_EFFECTIVE + #endif if (TYPE_EFFECT_DEF_TYPE(i) == defType1) - if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE) || defAbility != ABILITY_WONDER_GUARD) + if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == WONDER_GUARD_EFFECTIVENESS) || defAbility != ABILITY_WONDER_GUARD) typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; if (TYPE_EFFECT_DEF_TYPE(i) == defType2 && defType1 != defType2) - if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE) || defAbility != ABILITY_WONDER_GUARD) + if ((defAbility == ABILITY_WONDER_GUARD && TYPE_EFFECT_MULTIPLIER(i) == WONDER_GUARD_EFFECTIVENESS) || defAbility != ABILITY_WONDER_GUARD) typePower = (typePower * TYPE_EFFECT_MULTIPLIER(i)) / 10; - #endif } i += 3; } } - switch (arg2) + switch (mode) { - case 0: + case EFFECTIVENESS_MODE_GOOD: + // Weights moves that more effective. switch (typePower) { - case TYPE_x0_50: - case TYPE_x0_25: case TYPE_x0: + case TYPE_x0_25: + case TYPE_x0_50: default: typePower = 0; break; @@ -2805,22 +2820,24 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) break; } break; - case 1: + case EFFECTIVENESS_MODE_BAD: + // Weights moves that are less effective. + // Odd that there's no limit on this being used, even the Frontier Brain could end up using this. switch (typePower) { - default: - case TYPE_x1: - typePower = 0; + case TYPE_x0: + typePower = 8; break; case TYPE_x0_25: typePower = 4; break; - case TYPE_x0: - typePower = 8; - break; case TYPE_x0_50: typePower = 2; break; + default: + case TYPE_x1: + typePower = 0; + break; case TYPE_x2: typePower = -2; break; @@ -2829,7 +2846,9 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int arg2) break; } break; - case 2: + case EFFECTIVENESS_MODE_AI_VS_AI: + // Used as part of calculating the winner in a battle between two AIs. + // Weights moves that are more effective much more strongly in both directions. switch (typePower) { case TYPE_x0: @@ -5987,7 +6006,7 @@ static void DecideRoundWinners(u8 roundId) for (monId2 = 0; monId2 < FRONTIER_PARTY_SIZE; monId2++) { points1 += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentId1][monId1]].moves[moveSlot], - gFacilityTrainerMons[DOME_MONS[tournamentId2][monId2]].species, 2); + gFacilityTrainerMons[DOME_MONS[tournamentId2][monId2]].species, EFFECTIVENESS_MODE_AI_VS_AI); } } species = gFacilityTrainerMons[DOME_MONS[tournamentId1][monId1]].species; @@ -6010,7 +6029,7 @@ static void DecideRoundWinners(u8 roundId) for (monId2 = 0; monId2 < FRONTIER_PARTY_SIZE; monId2++) { points2 += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentId2][monId1]].moves[moveSlot], - gFacilityTrainerMons[DOME_MONS[tournamentId1][monId2]].species, 2); + gFacilityTrainerMons[DOME_MONS[tournamentId1][monId2]].species, EFFECTIVENESS_MODE_AI_VS_AI); } } species = gFacilityTrainerMons[DOME_MONS[tournamentId2][monId1]].species; diff --git a/src/battle_interface.c b/src/battle_interface.c index 6d869df780a3..dbcab4a9cc0e 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -817,8 +817,8 @@ static void Debug_DrawNumber(s16 number, u16 *dest, bool8 unk) static void Debug_DrawNumberPair(s16 number1, s16 number2, u16 *dest) { dest[4] = 0x1E; - Debug_DrawNumber(number2, dest, 0); - Debug_DrawNumber(number1, dest + 5, 1); + Debug_DrawNumber(number2, dest, FALSE); + Debug_DrawNumber(number1, dest + 5, TRUE); } // Because the healthbox is too large to fit into one sprite, it is divided into two sprites. @@ -1420,7 +1420,7 @@ void SwapHpBarsWithHpText(void) #define tIsBattleStart data[10] #define tBlend data[15] -u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart) +u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, bool8 skipPlayer, bool8 isBattleStart) { bool8 isOpponent; s16 bar_X, bar_Y, bar_pos2_X, bar_data0; @@ -1429,7 +1429,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 ballIconSpritesIds[PARTY_SIZE]; u8 taskId; - if (!arg2 || GetBattlerPosition(battlerId) != B_POSITION_OPPONENT_RIGHT) + if (!skipPlayer || GetBattlerPosition(battlerId) != B_POSITION_OPPONENT_RIGHT) { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) { @@ -1442,7 +1442,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, { isOpponent = TRUE; - if (!arg2 || !IsDoubleBattle()) + if (!skipPlayer || !IsDoubleBattle()) bar_X = 104, bar_Y = 40; else bar_X = 104, bar_Y = 16; @@ -2383,7 +2383,7 @@ static s32 CalcNewBarValue(s32 maxValue, s32 oldValue, s32 receivedValue, s32 *c return ret; } -static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 *currValue, u8 *arg4, u8 scale) +static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 *currValue, u8 *pixelsArray, u8 scale) { u8 pixels, filledPixels, totalPixels; u8 i; @@ -2397,7 +2397,7 @@ static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 totalPixels = scale * 8; for (i = 0; i < scale; i++) - arg4[i] = 0; + pixelsArray[i] = 0; if (maxValue < totalPixels) pixels = (*currValue * totalPixels / maxValue) >> 8; @@ -2408,7 +2408,7 @@ static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 if (filledPixels == 0 && newValue > 0) { - arg4[0] = 1; + pixelsArray[0] = 1; filledPixels = 1; } else @@ -2417,11 +2417,11 @@ static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 { if (pixels >= 8) { - arg4[i] = 8; + pixelsArray[i] = 8; } else { - arg4[i] = pixels; + pixelsArray[i] = pixels; break; } pixels -= 8; @@ -2433,7 +2433,7 @@ static u8 CalcBarFilledPixels(s32 maxValue, s32 oldValue, s32 receivedValue, s32 // Unused // These two functions seem as if they were made for testing the health bar. -static s16 Debug_TestHealthBar(struct TestingBar *barInfo, s32 *currValue, u16 *arg2, s32 arg3) +static s16 Debug_TestHealthBar(struct TestingBar *barInfo, s32 *currValue, u16 *dest, s32 unused) { s16 ret, var; @@ -2441,29 +2441,29 @@ static s16 Debug_TestHealthBar(struct TestingBar *barInfo, s32 *currValue, u16 * barInfo->oldValue, barInfo->receivedValue, currValue, B_HEALTHBAR_PIXELS / 8, 1); - Debug_TestHealthBar_Helper(barInfo, currValue, arg2); + Debug_TestHealthBar_Helper(barInfo, currValue, dest); if (barInfo->maxValue < B_HEALTHBAR_PIXELS) var = *currValue >> 8; else var = *currValue; - DummiedOutFunction(barInfo->maxValue, var, arg3); + DummiedOutFunction(barInfo->maxValue, var, unused); return ret; } static void Debug_TestHealthBar_Helper(struct TestingBar *barInfo, s32 *currValue, u16 *dest) { - u8 sp8[6]; + u8 pixels[6]; u16 src[6]; u8 i; CalcBarFilledPixels(barInfo->maxValue, barInfo->oldValue, - barInfo->receivedValue, currValue, sp8, B_HEALTHBAR_PIXELS / 8); + barInfo->receivedValue, currValue, pixels, B_HEALTHBAR_PIXELS / 8); for (i = 0; i < 6; i++) - src[i] = (barInfo->unkC_0 << 12) | (barInfo->unk10 + sp8[i]); + src[i] = (barInfo->unkC_0 << 12) | (barInfo->unk10 + pixels[i]); CpuCopy16(src, dest, sizeof(src)); } @@ -2546,9 +2546,9 @@ static void RemoveWindowOnHealthbox(u32 windowId) RemoveWindow(windowId); } -static void FillHealthboxObject(void *dest, u32 arg1, u32 arg2) +static void FillHealthboxObject(void *dest, u32 valMult, u32 numTiles) { - CpuFill32(0x11111111 * arg1, dest, arg2 * TILE_SIZE_4BPP); + CpuFill32(0x11111111 * valMult, dest, numTiles * TILE_SIZE_4BPP); } static void HpTextIntoHealthboxObject(void *dest, u8 *windowTileData, u32 windowWidth) diff --git a/src/battle_message.c b/src/battle_message.c index 9d1b88ba7f39..2776c952b0f2 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1035,7 +1035,7 @@ const u16 gFirstTurnOfTwoStringIds[] = }; // Index copied from move's index in gTrappingMoves -const u16 gWrappedStringIds[] = +const u16 gWrappedStringIds[NUM_TRAPPING_MOVES] = { STRINGID_PKMNSQUEEZEDBYBIND, // MOVE_BIND STRINGID_PKMNWRAPPEDBY, // MOVE_WRAP @@ -1253,7 +1253,7 @@ const u16 gCaughtMonStringIds[] = [B_MSG_LANETTES_BOX_FULL] = STRINGID_PKMNBOXLANETTESPCFULL, }; -const u16 gTrappingMoves[] = +const u16 gTrappingMoves[NUM_TRAPPING_MOVES + 1] = { MOVE_BIND, MOVE_WRAP, @@ -1261,7 +1261,7 @@ const u16 gTrappingMoves[] = MOVE_CLAMP, MOVE_WHIRLPOOL, MOVE_SAND_TOMB, - 0xFFFF + 0xFFFF // Never read }; const u8 gText_PkmnIsEvolving[] = _("What?\n{STR_VAR_1} is evolving!"); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 3c8bbfdee42e..4f31f0f01c76 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -2596,7 +2596,7 @@ void SetMoveEffect(bool8 primary, u8 certain) for (gBattleCommunication[MULTISTRING_CHOOSER] = 0; ; gBattleCommunication[MULTISTRING_CHOOSER]++) { - if (gBattleCommunication[MULTISTRING_CHOOSER] > 4) + if (gBattleCommunication[MULTISTRING_CHOOSER] >= NUM_TRAPPING_MOVES - 1) break; if (gTrappingMoves[gBattleCommunication[MULTISTRING_CHOOSER]] == gCurrentMove) break; diff --git a/src/berry_blender.c b/src/berry_blender.c index 27ea641ce128..9e510f7b3929 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -2238,7 +2238,7 @@ static void CB2_PlayBlender(void) UpdatePaletteFade(); } -static void Blender_DummiedOutFunc(s16 a0, s16 a1) +static void Blender_DummiedOutFunc(s16 bgX, s16 bgY) { } diff --git a/src/contest.c b/src/contest.c index ced9f90cdead..68bb5211419b 100644 --- a/src/contest.c +++ b/src/contest.c @@ -93,7 +93,7 @@ static void Task_ContestReturnToField(u8); static void FieldCB_ContestReturnToField(void); static bool8 IsPlayerLinkLeader(void); static void PrintContestantTrainerName(u8); -static void PrintContestantTrainerNameWithColor(u8 a0, u8 a1); +static void PrintContestantTrainerNameWithColor(u8, u8); static void PrintContestantMonName(u8); static void PrintContestantMonNameWithColor(u8, u8); static u8 CreateJudgeSprite(void); @@ -3186,14 +3186,14 @@ static u16 GetMoveEffectSymbolTileOffset(u16 move, u8 contestant) return offset; } -static void PrintContestMoveDescription(u16 a) +static void PrintContestMoveDescription(u16 move) { u8 category; u16 categoryTile; u8 numHearts; // The contest category icon is implemented as a 5x2 group of tiles. - category = gContestMoves[a].contestCategory; + category = gContestMoves[move].contestCategory; if (category == CONTEST_CATEGORY_COOL) categoryTile = 0x4040; else if (category == CONTEST_CATEGORY_BEAUTY) @@ -3209,27 +3209,27 @@ static void PrintContestMoveDescription(u16 a) ContestBG_FillBoxWithIncrementingTile(0, categoryTile + 0x10, 0x0b, 0x20, 0x05, 0x01, 0x11, 0x01); // Appeal hearts - if (gContestEffects[gContestMoves[a].effect].appeal == 0xFF) + if (gContestEffects[gContestMoves[move].effect].appeal == 0xFF) numHearts = 0; else - numHearts = gContestEffects[gContestMoves[a].effect].appeal / 10; + numHearts = gContestEffects[gContestMoves[move].effect].appeal / 10; if (numHearts > MAX_CONTEST_MOVE_HEARTS) numHearts = MAX_CONTEST_MOVE_HEARTS; ContestBG_FillBoxWithTile(0, TILE_EMPTY_APPEAL_HEART, 0x15, 0x1f, MAX_CONTEST_MOVE_HEARTS, 0x01, 0x11); ContestBG_FillBoxWithTile(0, TILE_FILLED_APPEAL_HEART, 0x15, 0x1f, numHearts, 0x01, 0x11); // Jam hearts - if (gContestEffects[gContestMoves[a].effect].jam == 0xFF) + if (gContestEffects[gContestMoves[move].effect].jam == 0xFF) numHearts = 0; else - numHearts = gContestEffects[gContestMoves[a].effect].jam / 10; + numHearts = gContestEffects[gContestMoves[move].effect].jam / 10; if (numHearts > MAX_CONTEST_MOVE_HEARTS) numHearts = MAX_CONTEST_MOVE_HEARTS; ContestBG_FillBoxWithTile(0, TILE_EMPTY_JAM_HEART, 0x15, 0x20, MAX_CONTEST_MOVE_HEARTS, 0x01, 0x11); ContestBG_FillBoxWithTile(0, TILE_FILLED_JAM_HEART, 0x15, 0x20, numHearts, 0x01, 0x11); FillWindowPixelBuffer(WIN_MOVE_DESCRIPTION, PIXEL_FILL(0)); - Contest_PrintTextToBg0WindowStd(WIN_MOVE_DESCRIPTION, gContestEffectDescriptionPointers[gContestMoves[a].effect]); + Contest_PrintTextToBg0WindowStd(WIN_MOVE_DESCRIPTION, gContestEffectDescriptionPointers[gContestMoves[move].effect]); Contest_PrintTextToBg0WindowStd(WIN_SLASH, gText_Slash); } @@ -4537,14 +4537,14 @@ static void CalculateAppealMoveImpact(u8 contestant) eContestantStatus[contestant].contestantAnimTarget = i; } -void SetContestantEffectStringID(u8 a, u8 b) +void SetContestantEffectStringID(u8 contestant, u8 effectStringId) { - eContestantStatus[a].effectStringId = b; + eContestantStatus[contestant].effectStringId = effectStringId; } -void SetContestantEffectStringID2(u8 a, u8 b) +void SetContestantEffectStringID2(u8 contestant, u8 effectStringId) { - eContestantStatus[a].effectStringId2 = b; + eContestantStatus[contestant].effectStringId2 = effectStringId; } void SetStartledString(u8 contestant, u8 jam) diff --git a/src/credits.c b/src/credits.c index 43c8d66283c8..33362fb38b2f 100644 --- a/src/credits.c +++ b/src/credits.c @@ -1285,18 +1285,18 @@ static void ResetCreditsTasks(u8 taskId) gIntroCredits_MovingSceneryState = INTROCRED_SCENERY_DESTROY; } -static void LoadTheEndScreen(u16 arg0, u16 arg1, u16 palOffset) +static void LoadTheEndScreen(u16 tileOffsetLoad, u16 tileOffsetWrite, u16 palOffset) { u16 baseTile; u16 i; - LZ77UnCompVram(sCreditsCopyrightEnd_Gfx, (void *)(VRAM + arg0)); + LZ77UnCompVram(sCreditsCopyrightEnd_Gfx, (void *)(VRAM + tileOffsetLoad)); LoadPalette(gIntroCopyright_Pal, palOffset, sizeof(gIntroCopyright_Pal)); baseTile = (palOffset / 16) << 12; for (i = 0; i < 32 * 32; i++) - ((u16 *) (VRAM + arg1))[i] = baseTile + 1; + ((u16 *) (VRAM + tileOffsetWrite))[i] = baseTile + 1; } static u16 GetLetterMapTile(u8 baseTiles) diff --git a/src/decompress.c b/src/decompress.c index b74d4e814ae6..92c840a6387a 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -51,13 +51,13 @@ void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src) LoadSpritePalette(&dest); } -void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer) +void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *src, void *buffer) { struct SpritePalette dest; - LZ77UnCompWram(a->data, buffer); + LZ77UnCompWram(src->data, buffer); dest.data = buffer; - dest.tag = a->tag; + dest.tag = src->tag; LoadSpritePalette(&dest); } diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 691ca6b2ab0d..620fe59e5e82 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -2879,10 +2879,10 @@ static u8 TryGivePrize(void) return PRIZE_RECEIVED; } -static u32 IncrementWithLimit(u32 a, u32 max) +static u32 IncrementWithLimit(u32 num, u32 max) { - if (a < max) - return a + 1; + if (num < max) + return num + 1; else return max; } diff --git a/src/event_object_movement.c b/src/event_object_movement.c index eb699e89f823..07ce2ed08e56 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -164,7 +164,7 @@ static void CreateLevitateMovementTask(struct ObjectEvent *); static void DestroyLevitateMovementTask(u8); static bool8 NpcTakeStep(struct Sprite *); static bool8 IsElevationMismatchAt(u8, s16, s16); -static bool8 AreElevationsCompatible(u8 a, u8 b); +static bool8 AreElevationsCompatible(u8, u8); static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; @@ -7837,7 +7837,7 @@ void GroundEffect_FlowingWater(struct ObjectEvent *objEvent, struct Sprite *spri StartFieldEffectForObjectEvent(FLDEFF_FEET_IN_FLOWING_WATER, objEvent); } -static void (*const sGroundEffectTracksFuncs[])(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) = { +static void (*const sGroundEffectTracksFuncs[])(struct ObjectEvent *objEvent, struct Sprite *sprite, bool8 isDeepSand) = { [TRACKS_NONE] = DoTracksGroundEffect_None, [TRACKS_FOOT] = DoTracksGroundEffect_Footprints, [TRACKS_BIKE_TIRE] = DoTracksGroundEffect_BikeTireTracks, @@ -7846,20 +7846,20 @@ static void (*const sGroundEffectTracksFuncs[])(struct ObjectEvent *objEvent, st void GroundEffect_SandTracks(struct ObjectEvent *objEvent, struct Sprite *sprite) { const struct ObjectEventGraphicsInfo *info = GetObjectEventGraphicsInfo(objEvent->graphicsId); - sGroundEffectTracksFuncs[info->tracks](objEvent, sprite, 0); + sGroundEffectTracksFuncs[info->tracks](objEvent, sprite, FALSE); } void GroundEffect_DeepSandTracks(struct ObjectEvent *objEvent, struct Sprite *sprite) { const struct ObjectEventGraphicsInfo *info = GetObjectEventGraphicsInfo(objEvent->graphicsId); - sGroundEffectTracksFuncs[info->tracks](objEvent, sprite, 1); + sGroundEffectTracksFuncs[info->tracks](objEvent, sprite, TRUE); } -static void DoTracksGroundEffect_None(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) +static void DoTracksGroundEffect_None(struct ObjectEvent *objEvent, struct Sprite *sprite, bool8 isDeepSand) { } -static void DoTracksGroundEffect_Footprints(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) +static void DoTracksGroundEffect_Footprints(struct ObjectEvent *objEvent, struct Sprite *sprite, bool8 isDeepSand) { // First half-word is a Field Effect script id. (gFieldEffectScriptPointers) u16 sandFootprints_FieldEffectData[2] = { @@ -7872,10 +7872,10 @@ static void DoTracksGroundEffect_Footprints(struct ObjectEvent *objEvent, struct gFieldEffectArguments[2] = 149; gFieldEffectArguments[3] = 2; gFieldEffectArguments[4] = objEvent->facingDirection; - FieldEffectStart(sandFootprints_FieldEffectData[a]); + FieldEffectStart(sandFootprints_FieldEffectData[isDeepSand]); } -static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) +static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent *objEvent, struct Sprite *sprite, bool8 isDeepSand) { // Specifies which bike track shape to show next. // For example, when the bike turns from up to right, it will show diff --git a/src/field_camera.c b/src/field_camera.c index 0a00dcbee9d2..4ccf70db9cd6 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -437,10 +437,10 @@ void SetCameraPanningCallback(void (*callback)(void)) sFieldCameraPanningCallback = callback; } -void SetCameraPanning(s16 a, s16 b) +void SetCameraPanning(s16 horizontal, s16 vertical) { - sHorizontalCameraPan = a; - sVerticalCameraPan = b + 32; + sHorizontalCameraPan = horizontal; + sVerticalCameraPan = vertical + 32; } void InstallCameraPanAheadCallback(void) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index 964a62187af8..b374e132d169 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -79,13 +79,13 @@ static bool8 TryPushBoulder(s16, s16, u8); static void CheckAcroBikeCollision(s16, s16, u8, u8 *); static void DoPlayerAvatarTransition(void); -static void PlayerAvatarTransition_Dummy(struct ObjectEvent *a); -static void PlayerAvatarTransition_Normal(struct ObjectEvent *a); -static void PlayerAvatarTransition_MachBike(struct ObjectEvent *a); -static void PlayerAvatarTransition_AcroBike(struct ObjectEvent *a); -static void PlayerAvatarTransition_Surfing(struct ObjectEvent *a); -static void PlayerAvatarTransition_Underwater(struct ObjectEvent *a); -static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *a); +static void PlayerAvatarTransition_Dummy(struct ObjectEvent *); +static void PlayerAvatarTransition_Normal(struct ObjectEvent *); +static void PlayerAvatarTransition_MachBike(struct ObjectEvent *); +static void PlayerAvatarTransition_AcroBike(struct ObjectEvent *); +static void PlayerAvatarTransition_Surfing(struct ObjectEvent *); +static void PlayerAvatarTransition_Underwater(struct ObjectEvent *); +static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *); static bool8 PlayerAnimIsMultiFrameStationary(void); static bool8 PlayerAnimIsMultiFrameStationaryAndStateNotTurning(void); @@ -96,51 +96,51 @@ static void PlayerRun(u8); static void PlayerNotOnBikeCollide(u8); static void PlayerNotOnBikeCollideWithFarawayIslandMew(u8); -static void PlayCollisionSoundIfNotFacingWarp(u8 a); +static void PlayCollisionSoundIfNotFacingWarp(u8); static void HideShowWarpArrow(struct ObjectEvent *); static void StartStrengthAnim(u8, u8); -static void Task_PushBoulder(u8 taskId); -static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject); -static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject); -static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject); +static void Task_PushBoulder(u8); +static bool8 PushBoulder_Start(struct Task *, struct ObjectEvent *, struct ObjectEvent *); +static bool8 PushBoulder_Move(struct Task *, struct ObjectEvent *, struct ObjectEvent *); +static bool8 PushBoulder_End(struct Task *, struct ObjectEvent *, struct ObjectEvent *); static void DoPlayerMatJump(void); -static void DoPlayerAvatarSecretBaseMatJump(u8 taskId); -static u8 PlayerAvatar_DoSecretBaseMatJump(struct Task *task, struct ObjectEvent *objectEvent); +static void DoPlayerAvatarSecretBaseMatJump(u8); +static u8 PlayerAvatar_DoSecretBaseMatJump(struct Task *, struct ObjectEvent *); static void DoPlayerMatSpin(void); -static void PlayerAvatar_DoSecretBaseMatSpin(u8 taskId); -static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *task, struct ObjectEvent *objectEvent); -static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task *task, struct ObjectEvent *objectEvent); -static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task *task, struct ObjectEvent *objectEvent); -static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *task, struct ObjectEvent *objectEvent); +static void PlayerAvatar_DoSecretBaseMatSpin(u8); +static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *, struct ObjectEvent *); +static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task *, struct ObjectEvent *); +static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task *, struct ObjectEvent *); +static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *, struct ObjectEvent *); static void CreateStopSurfingTask(u8); -static void Task_StopSurfingInit(u8 taskId); -static void Task_WaitStopSurfing(u8 taskId); - -static void Task_Fishing(u8 taskId); -static u8 Fishing_Init(struct Task *task); -static u8 Fishing_GetRodOut(struct Task *task); -static u8 Fishing_WaitBeforeDots(struct Task *task); -static u8 Fishing_InitDots(struct Task *task); -static u8 Fishing_ShowDots(struct Task *task); -static u8 Fishing_CheckForBite(struct Task *task); -static u8 Fishing_GotBite(struct Task *task); -static u8 Fishing_WaitForA(struct Task *task); -static u8 Fishing_CheckMoreDots(struct Task *task); -static u8 Fishing_MonOnHook(struct Task *task); -static u8 Fishing_StartEncounter(struct Task *task); -static u8 Fishing_NotEvenNibble(struct Task *task); -static u8 Fishing_GotAway(struct Task *task); -static u8 Fishing_NoMon(struct Task *task); -static u8 Fishing_PutRodAway(struct Task *task); -static u8 Fishing_EndNoMon(struct Task *task); +static void Task_StopSurfingInit(u8); +static void Task_WaitStopSurfing(u8); + +static void Task_Fishing(u8); +static u8 Fishing_Init(struct Task *); +static u8 Fishing_GetRodOut(struct Task *); +static u8 Fishing_WaitBeforeDots(struct Task *); +static u8 Fishing_InitDots(struct Task *); +static u8 Fishing_ShowDots(struct Task *); +static u8 Fishing_CheckForBite(struct Task *); +static u8 Fishing_GotBite(struct Task *); +static u8 Fishing_WaitForA(struct Task *); +static u8 Fishing_CheckMoreDots(struct Task *); +static u8 Fishing_MonOnHook(struct Task *); +static u8 Fishing_StartEncounter(struct Task *); +static u8 Fishing_NotEvenNibble(struct Task *); +static u8 Fishing_GotAway(struct Task *); +static u8 Fishing_NoMon(struct Task *); +static u8 Fishing_PutRodAway(struct Task *); +static u8 Fishing_EndNoMon(struct Task *); static void AlignFishingAnimationFrames(void); -static u8 TrySpinPlayerForWarp(struct ObjectEvent *object, s16 *a1); +static u8 TrySpinPlayerForWarp(struct ObjectEvent *, s16 *); static bool8 (*const sForcedMovementTestFuncs[NUM_FORCED_MOVEMENTS])(u8) = { @@ -1445,68 +1445,68 @@ static void HideShowWarpArrow(struct ObjectEvent *objectEvent) /* Strength */ -static void StartStrengthAnim(u8 a, u8 b) +#define tState data[0] +#define tBoulderObjId data[1] +#define tDirection data[2] + +static void StartStrengthAnim(u8 objectEventId, u8 direction) { u8 taskId = CreateTask(Task_PushBoulder, 0xFF); - gTasks[taskId].data[1] = a; - gTasks[taskId].data[2] = b; + gTasks[taskId].tBoulderObjId = objectEventId; + gTasks[taskId].tDirection = direction; Task_PushBoulder(taskId); } static void Task_PushBoulder(u8 taskId) { - while (sPushBoulderFuncs[gTasks[taskId].data[0]](&gTasks[taskId], + while (sPushBoulderFuncs[gTasks[taskId].tState](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], - &gObjectEvents[gTasks[taskId].data[1]])) + &gObjectEvents[gTasks[taskId].tBoulderObjId])) ; } -static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject) +static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder) { ScriptContext2_Enable(); gPlayerAvatar.preventStep = TRUE; - task->data[0]++; + task->tState++; return FALSE; } -static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject) +static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder) { - if (ObjectEventIsHeldMovementActive(playerObject)) - { - ObjectEventClearHeldMovementIfFinished(playerObject); - } + if (ObjectEventIsHeldMovementActive(player)) + ObjectEventClearHeldMovementIfFinished(player); - if (ObjectEventIsHeldMovementActive(strengthObject)) - { - ObjectEventClearHeldMovementIfFinished(strengthObject); - } + if (ObjectEventIsHeldMovementActive(boulder)) + ObjectEventClearHeldMovementIfFinished(boulder); - if (!ObjectEventIsMovementOverridden(playerObject) - && !ObjectEventIsMovementOverridden(strengthObject)) + if (!ObjectEventIsMovementOverridden(player) + && !ObjectEventIsMovementOverridden(boulder)) { - ObjectEventClearHeldMovementIfFinished(playerObject); - ObjectEventClearHeldMovementIfFinished(strengthObject); - ObjectEventSetHeldMovement(playerObject, GetWalkInPlaceNormalMovementAction((u8)task->data[2])); - ObjectEventSetHeldMovement(strengthObject, GetWalkSlowMovementAction((u8)task->data[2])); - gFieldEffectArguments[0] = strengthObject->currentCoords.x; - gFieldEffectArguments[1] = strengthObject->currentCoords.y; - gFieldEffectArguments[2] = strengthObject->previousElevation; - gFieldEffectArguments[3] = gSprites[strengthObject->spriteId].oam.priority; + ObjectEventClearHeldMovementIfFinished(player); + ObjectEventClearHeldMovementIfFinished(boulder); + ObjectEventSetHeldMovement(player, GetWalkInPlaceNormalMovementAction((u8)task->tDirection)); + ObjectEventSetHeldMovement(boulder, GetWalkSlowMovementAction((u8)task->tDirection)); + gFieldEffectArguments[0] = boulder->currentCoords.x; + gFieldEffectArguments[1] = boulder->currentCoords.y; + gFieldEffectArguments[2] = boulder->previousElevation; + gFieldEffectArguments[3] = gSprites[boulder->spriteId].oam.priority; FieldEffectStart(FLDEFF_DUST); PlaySE(SE_M_STRENGTH); - task->data[0]++; + task->tState++; } return FALSE; } -static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject) +static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder) { - if (ObjectEventCheckHeldMovementStatus(playerObject) - && ObjectEventCheckHeldMovementStatus(strengthObject)) + if (ObjectEventCheckHeldMovementStatus(player) + && ObjectEventCheckHeldMovementStatus(boulder)) { - ObjectEventClearHeldMovementIfFinished(playerObject); - ObjectEventClearHeldMovementIfFinished(strengthObject); + ObjectEventClearHeldMovementIfFinished(player); + ObjectEventClearHeldMovementIfFinished(boulder); gPlayerAvatar.preventStep = FALSE; ScriptContext2_Disable(); DestroyTask(FindTaskIdByFunc(Task_PushBoulder)); @@ -1514,6 +1514,10 @@ static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject return FALSE; } +#undef tState +#undef tBoulderObjId +#undef tDirection + /* Some field effect */ static void DoPlayerMatJump(void) diff --git a/src/field_special_scene.c b/src/field_special_scene.c index d8b9eb05d16f..31e75613e446 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -19,7 +19,19 @@ #include "constants/songs.h" #include "constants/metatile_labels.h" -#define SECONDS(value) ((signed) (60.0 * value + 0.5)) +// Most of the boxes in the moving truck are map tiles, with the +// exception of three boxes that are map events that jostle around +// while the truck is driving. In addition, their sprite's placement +// is slightly offset to make them look less perfectly stacked. +// Box 1 (LOCALID_TRUCK_BOX_TOP) +#define BOX1_X_OFFSET 3 +#define BOX1_Y_OFFSET 3 +// Box 2 (LOCALID_TRUCK_BOX_BOTTOM_L) +#define BOX2_X_OFFSET 0 +#define BOX2_Y_OFFSET -3 +// Box 3 (LOCALID_TRUCK_BOX_BOTTOM_R) +#define BOX3_X_OFFSET -3 +#define BOX3_Y_OFFSET 0 // porthole states enum @@ -30,8 +42,7 @@ enum EXIT_PORTHOLE, }; -//. rodata -static const s8 gTruckCamera_HorizontalTable[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, -1, -1, -1, 0}; +static const s8 sTruckCamera_HorizontalTable[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, -1, -1, -1, 0}; static const u8 sSSTidalSailEastMovementScript[] = { @@ -45,175 +56,194 @@ static const u8 sSSTidalSailWestMovementScript[] = MOVEMENT_ACTION_STEP_END }; -// .text static void Task_Truck3(u8); -s16 GetTruckCameraBobbingY(int a1) +static s16 GetTruckCameraBobbingY(int time) { - if (!(a1 % 120)) + if (!(time % 120)) return -1; - else if ((a1 % 10) <= 4) + else if ((time % 10) <= 4) return 1; return 0; } -s16 GetTruckBoxMovement(int a1) // for the box movement? +// Determines the frequency that the truck boxes bounce at. +// The return value of this function is multiplied and added +// to the boxes resting y offset, the result of which is that +// when it returns 0 they remain vertically still and when it +// returns -1 they jump upward. +// Box 1 has 30 added to the time so it jumps earlier, and +// box 2 has the return value multiplied by less, so it doesn't +// jump as high. +static s16 GetTruckBoxYMovement(int time) { - if (!((a1 + 120) % 180)) + if (!((time + 120) % 180)) return -1; return 0; } -void Task_Truck1(u8 taskId) +#define tTimer data[0] + +static void Task_Truck1(u8 taskId) { s16 *data = gTasks[taskId].data; s16 cameraXpan = 0, cameraYpan = 0; - s16 box1, box2, box3; + s16 yBox1, yBox2, yBox3; - box1 = GetTruckBoxMovement(data[0] + 30) * 4; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); - box2 = GetTruckBoxMovement(data[0]) * 2; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); - box3 = GetTruckBoxMovement(data[0]) * 4; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); + yBox1 = GetTruckBoxYMovement(tTimer + 30) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX1_X_OFFSET - cameraXpan, BOX1_Y_OFFSET + yBox1); + yBox2 = GetTruckBoxYMovement(tTimer) * 2; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX2_X_OFFSET - cameraXpan, BOX2_Y_OFFSET + yBox2); + yBox3 = GetTruckBoxYMovement(tTimer) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX3_X_OFFSET - cameraXpan, BOX3_Y_OFFSET + yBox3); - if (++data[0] == SECONDS(500)) // this will never run - data[0] = 0; // reset the timer if it gets stuck. + // Arbitrary timer limit that won't be reached + if (++tTimer == 30000) + tTimer = 0; - cameraYpan = GetTruckCameraBobbingY(data[0]); + cameraYpan = GetTruckCameraBobbingY(tTimer); SetCameraPanning(cameraXpan, cameraYpan); } -void Task_Truck2(u8 taskId) +#undef tTimer + +#define tTimerHorizontal data[0] +#define tMoveStep data[1] +#define tTimerVertical data[2] + +static void Task_Truck2(u8 taskId) { s16 *data = gTasks[taskId].data; - s16 cameraYpan; - s16 cameraXpan; - s16 box1; - s16 box2; - s16 box3; + s16 cameraYpan, cameraXpan; + s16 yBox1, yBox2, yBox3; - data[0]++; - data[2]++; + tTimerHorizontal++; + tTimerVertical++; - if (data[0] > 5) + if (tTimerHorizontal > 5) { - data[0] = 0; - data[1]++; + tTimerHorizontal = 0; + tMoveStep++; } - if ((u16)data[1] == 19) + if ((u16)tMoveStep == ARRAY_COUNT(sTruckCamera_HorizontalTable)) { + // Never reached, the task function is changed below before finishing the table DestroyTask(taskId); } else { - if (gTruckCamera_HorizontalTable[data[1]] == 2) + if (sTruckCamera_HorizontalTable[tMoveStep] == 2) gTasks[taskId].func = Task_Truck3; - cameraXpan = gTruckCamera_HorizontalTable[data[1]]; - cameraYpan = GetTruckCameraBobbingY(data[2]); + cameraXpan = sTruckCamera_HorizontalTable[tMoveStep]; + cameraYpan = GetTruckCameraBobbingY(tTimerVertical); SetCameraPanning(cameraXpan, cameraYpan); - box1 = GetTruckBoxMovement(data[2] + 30) * 4; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, box1 + 3); - box2 = GetTruckBoxMovement(data[2]) * 2; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, box2 - 3); - box3 = GetTruckBoxMovement(data[2]) * 4; - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, box3); + yBox1 = GetTruckBoxYMovement(tTimerVertical + 30) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX1_X_OFFSET - cameraXpan, BOX1_Y_OFFSET + yBox1); + yBox2 = GetTruckBoxYMovement(tTimerVertical) * 2; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX2_X_OFFSET - cameraXpan, BOX2_Y_OFFSET + yBox2); + yBox3 = GetTruckBoxYMovement(tTimerVertical) * 4; + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX3_X_OFFSET - cameraXpan, BOX3_Y_OFFSET + yBox3); } } static void Task_Truck3(u8 taskId) { s16 *data = gTasks[taskId].data; - s16 cameraXpan; - s16 cameraYpan; + s16 cameraXpan, cameraYpan; - data[0]++; + tTimerHorizontal++; - if (data[0] > 5) + if (tTimerHorizontal > 5) { - data[0] = 0; - data[1]++; + tTimerHorizontal = 0; + tMoveStep++; } - if ((u16)data[1] == 19) + if ((u16)tMoveStep == ARRAY_COUNT(sTruckCamera_HorizontalTable)) { DestroyTask(taskId); } else { - cameraXpan = gTruckCamera_HorizontalTable[data[1]]; + cameraXpan = sTruckCamera_HorizontalTable[tMoveStep]; cameraYpan = 0; SetCameraPanning(cameraXpan, 0); - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3 - cameraXpan, cameraYpan + 3); - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -cameraXpan, cameraYpan - 3); - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3 - cameraXpan, cameraYpan); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX1_X_OFFSET - cameraXpan, BOX1_Y_OFFSET + cameraYpan); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX2_X_OFFSET - cameraXpan, BOX2_Y_OFFSET + cameraYpan); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX3_X_OFFSET - cameraXpan, BOX3_Y_OFFSET + cameraYpan); } } -void Task_HandleTruckSequence(u8 taskId) +#undef tTimerHorizontal +#undef tMoveStep +#undef tTimerVertical + +#define tState data[0] +#define tTimer data[1] +#define tTaskId1 data[2] +#define tTaskId2 data[3] + +static void Task_HandleTruckSequence(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { - /* - Each case has a timer which is handled with data[1], incrementing - until it reaches the if function's condition, which sets the next task up. - */ case 0: - data[1]++; - if (data[1] == SECONDS(1.5)) + tTimer++; + if (tTimer == 90) { SetCameraPanningCallback(NULL); - data[1] = 0; // reset the timer. - data[2] = CreateTask(Task_Truck1, 0xA); - data[0] = 1; // run the next case. + tTimer = 0; + tTaskId1 = CreateTask(Task_Truck1, 0xA); + tState = 1; PlaySE(SE_TRUCK_MOVE); } break; case 1: - data[1]++; - if (data[1] == SECONDS(2.5)) + tTimer++; + if (tTimer == 150) { FadeInFromBlack(); - data[1] = 0; - data[0] = 2; + tTimer = 0; + tState = 2; } break; case 2: - data[1]++; - if (!gPaletteFade.active && data[1] > SECONDS(5)) + tTimer++; + if (!gPaletteFade.active && tTimer > 300) { - data[1] = 0; - DestroyTask(data[2]); - data[3] = CreateTask(Task_Truck2, 0xA); - data[0] = 3; + tTimer = 0; + DestroyTask(tTaskId1); + tTaskId2 = CreateTask(Task_Truck2, 0xA); + tState = 3; PlaySE(SE_TRUCK_STOP); } break; case 3: - if (!gTasks[data[3]].isActive) // is Truck2 no longer active (is Truck3 active?) + if (!gTasks[tTaskId2].isActive) { + // Task_Truck2 / Task_Truck3 has finished InstallCameraPanAheadCallback(); - data[1] = 0; - data[0] = 4; + tTimer = 0; + tState = 4; } break; case 4: - data[1]++; - if (data[1] == 90) + tTimer++; + if (tTimer == 90) { PlaySE(SE_TRUCK_UNLOAD); - data[1] = 0; - data[0] = 5; + tTimer = 0; + tState = 5; } break; case 5: - data[1]++; - if (data[1] == 120) + tTimer++; + if (tTimer == 120) { MapGridSetMetatileIdAt(4 + MAP_OFFSET, 1 + MAP_OFFSET, METATILE_InsideOfTruck_ExitLight_Top); MapGridSetMetatileIdAt(4 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_InsideOfTruck_ExitLight_Mid); @@ -242,9 +272,9 @@ void EndTruckSequence(u8 taskId) { if (!FuncIsActiveTask(Task_HandleTruckSequence)) { - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 3, 3); - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, 0, -3); - SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, -3, 0); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_TOP, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX1_X_OFFSET, BOX1_Y_OFFSET); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_L, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX2_X_OFFSET, BOX2_Y_OFFSET); + SetObjectEventSpritePosByLocalIdAndMap(LOCALID_TRUCK_BOX_BOTTOM_R, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, BOX3_X_OFFSET, BOX3_Y_OFFSET); } } @@ -259,7 +289,7 @@ bool8 TrySetPortholeWarpDestination(void) } else { - SetWarpDestination(mapGroup, mapNum, -1, x, y); + SetWarpDestination(mapGroup, mapNum, WARP_ID_NONE, x, y); return TRUE; } } diff --git a/src/field_specials.c b/src/field_specials.c index a4cdafafc266..4ed2a2e03db8 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -90,44 +90,44 @@ void SetPlayerGotFirstFans(void); u16 GetNumFansOfPlayerInTrainerFanClub(void); static void RecordCyclingRoadResults(u32, u8); -static void LoadLinkPartnerObjectEventSpritePalette(u8 graphicsId, u8 localEventId, u8 paletteNum); -static void Task_PetalburgGymSlideOpenRoomDoors(u8 taskId); -static void PetalburgGymSetDoorMetatiles(u8 roomNumber, u16 metatileId); +static void LoadLinkPartnerObjectEventSpritePalette(u8, u8, u8); +static void Task_PetalburgGymSlideOpenRoomDoors(u8); +static void PetalburgGymSetDoorMetatiles(u8, u16); static void Task_PCTurnOnEffect(u8); static void PCTurnOnEffect_0(struct Task *); static void PCTurnOnEffect_1(s16, s8, s8); static void PCTurnOffEffect(void); static void Task_LotteryCornerComputerEffect(u8); static void LotteryCornerComputerEffect(struct Task *); -static void Task_ShakeCamera(u8 taskId); -static void StopCameraShake(u8 taskId); -static void Task_MoveElevator(u8 taskId); -static void MoveElevatorWindowLights(u16 floorDelta, bool8 descending); -static void Task_MoveElevatorWindowLights(u8 taskId); -static void Task_ShowScrollableMultichoice(u8 taskId); -static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection); -static void ShowBattleFrontierTutorWindow(u8 menu, u16 selection); +static void Task_ShakeCamera(u8); +static void StopCameraShake(u8); +static void Task_MoveElevator(u8); +static void MoveElevatorWindowLights(u16, bool8); +static void Task_MoveElevatorWindowLights(u8); +static void Task_ShowScrollableMultichoice(u8); +static void FillFrontierExchangeCornerWindowAndItemIcon(u16, u16); +static void ShowBattleFrontierTutorWindow(u8, u16); static void InitScrollableMultichoice(void); -static void ScrollableMultichoice_ProcessInput(u8 taskId); -static void ScrollableMultichoice_UpdateScrollArrows(u8 taskId); -static void ScrollableMultichoice_MoveCursor(s32 itemIndex, bool8 onInit, struct ListMenu *list); -static void HideFrontierExchangeCornerItemIcon(u16 menu, u16 unused); -static void ShowBattleFrontierTutorMoveDescription(u8 menu, u16 selection); -static void CloseScrollableMultichoice(u8 taskId); -static void ScrollableMultichoice_RemoveScrollArrows(u8 taskId); -static void Task_ScrollableMultichoice_WaitReturnToList(u8 taskId); -static void Task_ScrollableMultichoice_ReturnToList(u8 taskId); -static void ShowFrontierExchangeCornerItemIcon(u16 item); -static void Task_DeoxysRockInteraction(u8 taskId); -static void ChangeDeoxysRockLevel(u8 a0); -static void WaitForDeoxysRockMovement(u8 taskId); -static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId); -static void Task_LoopWingFlapSE(u8 taskId); -static void Task_CloseBattlePikeCurtain(u8 taskId); +static void ScrollableMultichoice_ProcessInput(u8); +static void ScrollableMultichoice_UpdateScrollArrows(u8); +static void ScrollableMultichoice_MoveCursor(s32, bool8, struct ListMenu *); +static void HideFrontierExchangeCornerItemIcon(u16, u16); +static void ShowBattleFrontierTutorMoveDescription(u8, u16); +static void CloseScrollableMultichoice(u8); +static void ScrollableMultichoice_RemoveScrollArrows(u8); +static void Task_ScrollableMultichoice_WaitReturnToList(u8); +static void Task_ScrollableMultichoice_ReturnToList(u8); +static void ShowFrontierExchangeCornerItemIcon(u16); +static void Task_DeoxysRockInteraction(u8); +static void ChangeDeoxysRockLevel(u8); +static void WaitForDeoxysRockMovement(u8); +static void Task_LinkRetireStatusWithBattleTowerPartner(u8); +static void Task_LoopWingFlapSE(u8); +static void Task_CloseBattlePikeCurtain(u8); static u8 DidPlayerGetFirstFans(void); static void SetInitialFansOfPlayer(void); static u16 PlayerGainRandomTrainerFan(void); -static void BufferFanClubTrainerName_(struct LinkBattleRecords *linkRecords, u8 a, u8 b); +static void BufferFanClubTrainerName_(struct LinkBattleRecords *, u8, u8); void Special_ShowDiploma(void) { diff --git a/src/field_weather.c b/src/field_weather.c index cd343644149a..a9d007e168ca 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -863,10 +863,10 @@ void LoadCustomWeatherSpritePalette(const u16 *palette) UpdateSpritePaletteWithWeather(gWeatherPtr->weatherPicSpritePalIndex); } -static void LoadDroughtWeatherPalette(u8 *gammaIndexPtr, u8 *a1) +static void LoadDroughtWeatherPalette(u8 *palsIndex, u8 *palsOffset) { - *gammaIndexPtr = 0x20; - *a1 = 0x20; + *palsIndex = 0x20; + *palsOffset = 0x20; } void ResetDroughtWeatherPaletteLoading(void) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 2b87557c21a6..c10867062fc6 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -14,11 +14,9 @@ #include "trig.h" #include "gpu_regs.h" -// EWRAM EWRAM_DATA static u8 gCurrentAbnormalWeather = 0; EWRAM_DATA static u16 gUnusedWeatherRelated = 0; -// CONST const u16 gCloudsWeatherPalette[] = INCBIN_U16("graphics/weather/cloud.gbapal"); const u16 gSandstormWeatherPalette[] = INCBIN_U16("graphics/weather/sandstorm.gbapal"); const u8 gWeatherFogDiagonalTiles[] = INCBIN_U8("graphics/weather/fog_diagonal.4bpp"); @@ -2427,34 +2425,39 @@ static void UpdateBubbleSprite(struct Sprite *sprite) //------------------------------------------------------------------------------ // Unused function. -static void UnusedSetCurrentAbnormalWeather(u32 a0, u32 a1) +static void UnusedSetCurrentAbnormalWeather(u32 weather, u32 unknown) { - gCurrentAbnormalWeather = a0; - gUnusedWeatherRelated = a1; + gCurrentAbnormalWeather = weather; + gUnusedWeatherRelated = unknown; } +#define tState data[0] +#define tWeatherA data[1] +#define tWeatherB data[2] +#define tDelay data[15] + static void Task_DoAbnormalWeather(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: - if (data[15]-- <= 0) + if (tDelay-- <= 0) { - SetNextWeather(data[1]); - gCurrentAbnormalWeather = data[1]; - data[15] = 600; - data[0]++; + SetNextWeather(tWeatherA); + gCurrentAbnormalWeather = tWeatherA; + tDelay = 600; + tState++; } break; case 1: - if (data[15]-- <= 0) + if (tDelay-- <= 0) { - SetNextWeather(data[2]); - gCurrentAbnormalWeather = data[2]; - data[15] = 600; - data[0] = 0; + SetNextWeather(tWeatherB); + gCurrentAbnormalWeather = tWeatherB; + tDelay = 600; + tState = 0; } break; } @@ -2465,25 +2468,33 @@ static void CreateAbnormalWeatherTask(void) u8 taskId = CreateTask(Task_DoAbnormalWeather, 0); s16 *data = gTasks[taskId].data; - data[15] = 600; + tDelay = 600; if (gCurrentAbnormalWeather == WEATHER_DOWNPOUR) { - data[1] = WEATHER_DROUGHT; - data[2] = WEATHER_DOWNPOUR; + // Currently Downpour, next will be Drought + tWeatherA = WEATHER_DROUGHT; + tWeatherB = WEATHER_DOWNPOUR; } else if (gCurrentAbnormalWeather == WEATHER_DROUGHT) { - data[1] = WEATHER_DOWNPOUR; - data[2] = WEATHER_DROUGHT; + // Currently Drought, next will be Downpour + tWeatherA = WEATHER_DOWNPOUR; + tWeatherB = WEATHER_DROUGHT; } else { + // Default to starting with Downpour gCurrentAbnormalWeather = WEATHER_DOWNPOUR; - data[1] = WEATHER_DROUGHT; - data[2] = WEATHER_DOWNPOUR; + tWeatherA = WEATHER_DROUGHT; + tWeatherB = WEATHER_DOWNPOUR; } } +#undef tState +#undef tWeatherA +#undef tWeatherB +#undef tDelay + static u8 TranslateWeatherNum(u8); static void UpdateRainCounter(u8, u8); diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index e7039e02bd30..0942e82f175d 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -757,10 +757,9 @@ void LoadIntroPart2Graphics(u8 scenery) gReservedSpritePaletteCount = 8; } -// Note: This is only called with a=1. +// Note: This is only called with scenery=1. void SetIntroPart2BgCnt(u8 scenery) { - // Only called with scenery = 1 switch (scenery) { default: diff --git a/src/item_use.c b/src/item_use.c index c03ede61bd22..af8f2504f355 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -42,33 +42,33 @@ #include "constants/items.h" #include "constants/songs.h" -static void SetUpItemUseCallback(u8 taskId); +static void SetUpItemUseCallback(u8); static void FieldCB_UseItemOnField(void); -static void Task_CallItemUseOnFieldCallback(u8 taskId); -static void Task_UseItemfinder(u8 taskId); -static void Task_CloseItemfinderMessage(u8 taskId); -static void Task_HiddenItemNearby(u8 taskId); -static void Task_StandingOnHiddenItem(u8 taskId); +static void Task_CallItemUseOnFieldCallback(u8); +static void Task_UseItemfinder(u8); +static void Task_CloseItemfinderMessage(u8); +static void Task_HiddenItemNearby(u8); +static void Task_StandingOnHiddenItem(u8); static bool8 ItemfinderCheckForHiddenItems(const struct MapEvents *, u8); -static u8 GetDirectionToHiddenItem(s16 distanceX, s16 distanceY); -static void PlayerFaceHiddenItem(u8 a); -static void CheckForHiddenItemsInMapConnection(u8 taskId); -static void Task_OpenRegisteredPokeblockCase(u8 taskId); -static void ItemUseOnFieldCB_Bike(u8 taskId); +static u8 GetDirectionToHiddenItem(s16, s16); +static void PlayerFaceHiddenItem(u8); +static void CheckForHiddenItemsInMapConnection(u8); +static void Task_OpenRegisteredPokeblockCase(u8); +static void ItemUseOnFieldCB_Bike(u8); static void ItemUseOnFieldCB_Rod(u8); static void ItemUseOnFieldCB_Itemfinder(u8); -static void ItemUseOnFieldCB_Berry(u8 taskId); -static void ItemUseOnFieldCB_WailmerPailBerry(u8 taskId); -static void ItemUseOnFieldCB_WailmerPailSudowoodo(u8 taskId); +static void ItemUseOnFieldCB_Berry(u8); +static void ItemUseOnFieldCB_WailmerPailBerry(u8); +static void ItemUseOnFieldCB_WailmerPailSudowoodo(u8); static bool8 TryToWaterSudowoodo(void); -static void BootUpSoundTMHM(u8 taskId); -static void Task_ShowTMHMContainedMessage(u8 taskId); -static void UseTMHMYesNo(u8 taskId); -static void UseTMHM(u8 taskId); -static void Task_StartUseRepel(u8 taskId); -static void Task_UseRepel(u8 taskId); -static void Task_CloseCantUseKeyItemMessage(u8 taskId); -static void SetDistanceOfClosestHiddenItem(u8 taskId, s16 x, s16 y); +static void BootUpSoundTMHM(u8); +static void Task_ShowTMHMContainedMessage(u8); +static void UseTMHMYesNo(u8); +static void UseTMHM(u8); +static void Task_StartUseRepel(u8); +static void Task_UseRepel(u8); +static void Task_CloseCantUseKeyItemMessage(u8); +static void SetDistanceOfClosestHiddenItem(u8, s16, s16); static void CB2_OpenPokeblockFromBag(void); // EWRAM variables diff --git a/src/link.c b/src/link.c index aa9a0d73df68..e88cde55a320 100644 --- a/src/link.c +++ b/src/link.c @@ -120,18 +120,18 @@ static EWRAM_DATA void *sLinkErrorBgTilemapBuffer = NULL; static void InitLocalLinkPlayer(void); static void VBlankCB_LinkError(void); static void CB2_LinkTest(void); -static void ProcessRecvCmds(u8 unused); +static void ProcessRecvCmds(u8); static void LinkCB_SendHeldKeys(void); static void ResetBlockSend(void); -static bool32 InitBlockSend(const void *src, size_t size); +static bool32 InitBlockSend(const void *, size_t); static void LinkCB_BlockSendBegin(void); static void LinkCB_BlockSend(void); static void LinkCB_BlockSendEnd(void); -static void SetBlockReceivedFlag(u8 who); -static u16 LinkTestCalcBlockChecksum(const u16 *src, u16 size); -static void LinkTest_PrintHex(u32 pos, u8 a0, u8 a1, u8 a2); +static void SetBlockReceivedFlag(u8); +static u16 LinkTestCalcBlockChecksum(const u16 *, u16); +static void LinkTest_PrintHex(u32, u8, u8, u8); static void LinkCB_RequestPlayerDataExchange(void); -static void Task_PrintTestData(u8 taskId); +static void Task_PrintTestData(u8); static void LinkCB_ReadyCloseLink(void); static void LinkCB_WaitCloseLink(void); diff --git a/src/main_menu.c b/src/main_menu.c index ed6158a9cf51..361118e54422 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -198,7 +198,7 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8, u8); static void NewGameBirchSpeech_ClearWindow(u8); static void Task_NewGameBirchSpeech_ThisIsAPokemon(u8); static void Task_NewGameBirchSpeech_MainSpeech(u8); -static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 a); +static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *, u16); static void Task_NewGameBirchSpeech_AndYouAre(u8); static void Task_NewGameBirchSpeechSub_WaitForLotad(u8); static void Task_NewGameBirchSpeech_StartBirchLotadPlatformFade(u8); @@ -1371,7 +1371,7 @@ static void Task_NewGameBirchSpeechSub_InitPokeBall(u8 taskId) gSprites[spriteId].invisible = FALSE; gSprites[spriteId].data[0] = 0; - CreatePokeballSpriteToReleaseMon(spriteId, gSprites[spriteId].oam.paletteNum, 112, 58, 0, 0, 32, 0x0000FFFF, SPECIES_LOTAD); + CreatePokeballSpriteToReleaseMon(spriteId, gSprites[spriteId].oam.paletteNum, 112, 58, 0, 0, 32, PALETTES_BG, SPECIES_LOTAD); gTasks[taskId].func = Task_NewGameBirchSpeechSub_WaitForLotad; gTasks[sBirchSpeechMainTaskId].tTimer = 0; } @@ -2221,9 +2221,9 @@ static void ClearMainMenuWindowTilemap(const struct WindowTemplate *template) CopyBgTilemapBufferToVram(template->bg); } -static void NewGameBirchSpeech_ClearGenderWindowTilemap(u8 a, u8 b, u8 c, u8 d, u8 e, u8 unused) +static void NewGameBirchSpeech_ClearGenderWindowTilemap(u8 bg, u8 x, u8 y, u8 width, u8 height, u8 unused) { - FillBgTilemapBufferRect(a, 0, b + 0xFF, c + 0xFF, d + 2, e + 2, 2); + FillBgTilemapBufferRect(bg, 0, x + 255, y + 255, width + 2, height + 2, 2); } static void NewGameBirchSpeech_ClearGenderWindow(u8 windowId, bool8 copyToVram) @@ -2247,7 +2247,7 @@ static void NewGameBirchSpeech_ClearWindow(u8 windowId) CopyWindowToVram(windowId, COPYWIN_GFX); } -static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 a) +static void NewGameBirchSpeech_WaitForThisIsPokemonText(struct TextPrinterTemplate *printer, u16 renderCmd) { // Wait for Birch's "This is a PokĂ©mon" text to reach the pause // Then start the PokĂ©Ball release (if it hasn't been started already) @@ -2273,21 +2273,22 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8 windowId, u8 copyToVram) CopyWindowToVram(windowId, 3); } -static void NewGameBirchSpeech_CreateDialogueWindowBorder(u8 a, u8 b, u8 c, u8 d, u8 e, u8 f) -{ - FillBgTilemapBufferRect(a, 0xFD, b-2, c-1, 1, 1, f); - FillBgTilemapBufferRect(a, 0xFF, b-1, c-1, 1, 1, f); - FillBgTilemapBufferRect(a, 0x100, b, c-1, d, 1, f); - FillBgTilemapBufferRect(a, 0x101, b+d-1, c-1, 1, 1, f); - FillBgTilemapBufferRect(a, 0x102, b+d, c-1, 1, 1, f); - FillBgTilemapBufferRect(a, 0x103, b-2, c, 1, 5, f); - FillBgTilemapBufferRect(a, 0x105, b-1, c, d+1, 5, f); - FillBgTilemapBufferRect(a, 0x106, b+d, c, 1, 5, f); - FillBgTilemapBufferRect(a, BG_TILE_V_FLIP(0xFD), b-2, c+e, 1, 1, f); - FillBgTilemapBufferRect(a, BG_TILE_V_FLIP(0xFF), b-1, c+e, 1, 1, f); - FillBgTilemapBufferRect(a, BG_TILE_V_FLIP(0x100), b, c+e, d-1, 1, f); - FillBgTilemapBufferRect(a, BG_TILE_V_FLIP(0x101), b+d-1, c+e, 1, 1, f); - FillBgTilemapBufferRect(a, BG_TILE_V_FLIP(0x102), b+d, c+e, 1, 1, f); +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, 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); } static void Task_NewGameBirchSpeech_ReturnFromNamingScreenShowTextbox(u8 taskId) diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 681a3dadfdc5..637bf2c7f89d 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -438,7 +438,7 @@ static void EnableTextPrinters(void) gDisableTextPrinters = FALSE; } -static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 a1) +static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 renderCmd) { gDisableTextPrinters = TRUE; } diff --git a/src/menu.c b/src/menu.c index 49baddded570..c4540942ba97 100644 --- a/src/menu.c +++ b/src/menu.c @@ -542,9 +542,9 @@ void RemoveMapNamePopUpWindow(void) } } -void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextPrinterTemplate *, u16)) +void AddTextPrinterWithCallbackForMessage(bool8 canSpeedUp, void (*callback)(struct TextPrinterTemplate *, u16)) { - gTextFlags.canABSpeedUpPrint = a1; + gTextFlags.canABSpeedUpPrint = canSpeedUp; AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); } @@ -1245,9 +1245,9 @@ static void PrintMenuActionGridText(u8 windowId, u8 fontId, u8 left, u8 top, u8 } // Unused -static void PrintMenuActionGridTextAtTop(u8 windowId, u8 fontId, u8 a2, u8 a3, u8 a4, u8 a5, const struct MenuAction *menuActions) +static void PrintMenuActionGridTextAtTop(u8 windowId, u8 fontId, u8 width, u8 height, u8 columns, u8 rows, const struct MenuAction *menuActions) { - PrintMenuActionGridText(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, a2, a3, a4, a5, menuActions); + PrintMenuActionGridText(windowId, fontId, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH), 0, width, height, columns, rows, menuActions); } void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 horizontalCount, u8 verticalCount, const struct MenuAction *menuActions, const u8 *actionIds) diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 5f08c629486e..e0f789bcbd2c 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -19,8 +19,8 @@ extern ScrCmdFunc gMysteryEventScriptCmdTable[]; extern ScrCmdFunc gMysteryEventScriptCmdTableEnd[]; -#define LANGUAGE_MASK 0x1 -#define VERSION_MASK 0x200 +// 0x1 in FireRed, 0x2 in LeafGreen, 0x80 in Ruby, 0x100 in Sapphire +#define VERSION_MASK (1 << 9) #define mScriptBase data[0] #define mOffset data[1] @@ -29,18 +29,21 @@ extern ScrCmdFunc gMysteryEventScriptCmdTableEnd[]; EWRAM_DATA static struct ScriptContext sMysteryEventScriptContext = {0}; -static bool32 CheckCompatibility(u16 a1, u32 a2, u16 a3, u32 a4) +static bool32 CheckCompatibility(u16 unk0, u32 unk1, u16 unk2, u32 version) { - if (!(a1 & LANGUAGE_MASK)) + // 0x1 in English FRLG, 0x2 in English RS, 0x4 in German RS + if (!(unk0 & 0x1)) return FALSE; - if (!(a2 & LANGUAGE_MASK)) + // Same as above + if (!(unk1 & 0x1)) return FALSE; - if (!(a3 & 0x4)) + // 0x1 in FRLG, 0x4 in RS + if (!(unk2 & 0x4)) return FALSE; - if (!(a4 & VERSION_MASK)) + if (!(version & VERSION_MASK)) return FALSE; return TRUE; @@ -174,18 +177,18 @@ bool8 MEScrCmd_end(struct ScriptContext *ctx) bool8 MEScrCmd_checkcompat(struct ScriptContext *ctx) { - u16 v1; - u32 v2; - u16 v3; - u32 v4; + u16 unk0; + u32 unk1; + u16 unk2; + u32 version; ctx->mOffset = ScriptReadWord(ctx); - v1 = ScriptReadHalfword(ctx); - v2 = ScriptReadWord(ctx); - v3 = ScriptReadHalfword(ctx); - v4 = ScriptReadWord(ctx); + unk0 = ScriptReadHalfword(ctx); + unk1 = ScriptReadWord(ctx); + unk2 = ScriptReadHalfword(ctx); + version = ScriptReadWord(ctx); - if (CheckCompatibility(v1, v2, v3, v4) == TRUE) + if (CheckCompatibility(unk0, unk1, unk2, version) == TRUE) ctx->mValid = TRUE; else SetIncompatible(); diff --git a/src/overworld.c b/src/overworld.c index ba6eaa16790e..dc7eda4223f4 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2477,9 +2477,9 @@ static u16 KeyInterCB_ReadButtons(u32 key) return LINK_KEY_CODE_EMPTY; } -static u16 GetDirectionForDpadKey(u16 a1) +static u16 GetDirectionForDpadKey(u16 key) { - switch (a1) + switch (key) { case LINK_KEY_CODE_DPAD_RIGHT: return FACING_RIGHT; @@ -2598,7 +2598,7 @@ static u16 KeyInterCB_Ready(u32 keyOrPlayerId) } } -static u16 KeyInterCB_SetReady(u32 a1) +static u16 KeyInterCB_SetReady(u32 key) { SetKeyInterceptCallback(KeyInterCB_Ready); return LINK_KEY_CODE_READY; diff --git a/src/palette.c b/src/palette.c index 9fec449bc485..23ad02b737d5 100644 --- a/src/palette.c +++ b/src/palette.c @@ -237,63 +237,63 @@ static void PaletteStruct_Run(u8 a1, u32 *unkFlags) } } -static void PaletteStruct_Copy(struct PaletteStruct *a1, u32 *unkFlags) +static void PaletteStruct_Copy(struct PaletteStruct *palStruct, u32 *unkFlags) { s32 srcIndex; s32 srcCount; u8 i = 0; - u16 srcOffset = a1->srcIndex * a1->template->size; + u16 srcOffset = palStruct->srcIndex * palStruct->template->size; - if (!a1->template->pst_field_8_0) + if (!palStruct->template->pst_field_8_0) { - while (i < a1->template->size) + while (i < palStruct->template->size) { - gPlttBufferUnfaded[a1->destOffset] = a1->template->src[srcOffset]; - gPlttBufferFaded[a1->destOffset] = a1->template->src[srcOffset]; + gPlttBufferUnfaded[palStruct->destOffset] = palStruct->template->src[srcOffset]; + gPlttBufferFaded[palStruct->destOffset] = palStruct->template->src[srcOffset]; i++; - a1->destOffset++; + palStruct->destOffset++; srcOffset++; } } else { - while (i < a1->template->size) + while (i < palStruct->template->size) { - gPlttBufferFaded[a1->destOffset] = a1->template->src[srcOffset]; + gPlttBufferFaded[palStruct->destOffset] = palStruct->template->src[srcOffset]; i++; - a1->destOffset++; + palStruct->destOffset++; srcOffset++; } } - a1->destOffset = a1->baseDestOffset; - a1->countdown1 = a1->template->time1; - a1->srcIndex++; + palStruct->destOffset = palStruct->baseDestOffset; + palStruct->countdown1 = palStruct->template->time1; + palStruct->srcIndex++; - srcIndex = a1->srcIndex; - srcCount = a1->template->srcCount; + srcIndex = palStruct->srcIndex; + srcCount = palStruct->template->srcCount; if (srcIndex >= srcCount) { - if (a1->countdown2) - a1->countdown2--; - a1->srcIndex = 0; + if (palStruct->countdown2) + palStruct->countdown2--; + palStruct->srcIndex = 0; } - *unkFlags |= 1 << (a1->baseDestOffset >> 4); + *unkFlags |= 1 << (palStruct->baseDestOffset >> 4); } -static void PaletteStruct_Blend(struct PaletteStruct *a1, u32 *unkFlags) +static void PaletteStruct_Blend(struct PaletteStruct *palStruct, u32 *unkFlags) { - if (gPaletteFade.active && ((1 << (a1->baseDestOffset >> 4)) & gPaletteFade_selectedPalettes)) + if (gPaletteFade.active && ((1 << (palStruct->baseDestOffset >> 4)) & gPaletteFade_selectedPalettes)) { - if (!a1->template->pst_field_8_0) + if (!palStruct->template->pst_field_8_0) { if (gPaletteFade.delayCounter != gPaletteFade_delay) { BlendPalette( - a1->baseDestOffset, - a1->template->size, + palStruct->baseDestOffset, + palStruct->template->size, gPaletteFade.y, gPaletteFade.blendColor); } @@ -302,13 +302,13 @@ static void PaletteStruct_Blend(struct PaletteStruct *a1, u32 *unkFlags) { if (!gPaletteFade.delayCounter) { - if (a1->countdown1 != a1->template->time1) + if (palStruct->countdown1 != palStruct->template->time1) { - u32 srcOffset = a1->srcIndex * a1->template->size; + u32 srcOffset = palStruct->srcIndex * palStruct->template->size; u8 i; - for (i = 0; i < a1->template->size; i++) - gPlttBufferFaded[a1->baseDestOffset + i] = a1->template->src[srcOffset + i]; + for (i = 0; i < palStruct->template->size; i++) + gPlttBufferFaded[palStruct->baseDestOffset + i] = palStruct->template->src[srcOffset + i]; } } } diff --git a/src/player_pc.c b/src/player_pc.c index bf8479ce1155..9e3d7b166bc0 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -97,84 +97,84 @@ struct ItemStorageMenu u8 swapLineSpriteIds[SWAP_LINE_LENGTH]; }; -static void InitPlayerPCMenu(u8 taskId); -static void PlayerPCProcessMenuInput(u8 taskId); -static void InitItemStorageMenu(u8 taskId, u8 var); +static void InitPlayerPCMenu(u8); +static void PlayerPCProcessMenuInput(u8); +static void InitItemStorageMenu(u8, u8); static u8 GetMailboxMailCount(void); static void Mailbox_CompactMailList(void); -static void Mailbox_DrawMailboxMenu(u8 taskId); -static void Mailbox_ProcessInput(u8 taskId); -static void Mailbox_PrintWhatToDoWithPlayerMailText(u8 taskId); +static void Mailbox_DrawMailboxMenu(u8); +static void Mailbox_ProcessInput(u8); +static void Mailbox_PrintWhatToDoWithPlayerMailText(u8); static void Mailbox_ReturnToPlayerPC(u8); -static void Mailbox_PrintMailOptions(u8 taskId); -static void Mailbox_MailOptionsProcessInput(u8 taskId); - -static void PlayerPC_ItemStorage(u8 taskId); -static void PlayerPC_Mailbox(u8 taskId); -static void PlayerPC_Decoration(u8 var); -static void PlayerPC_TurnOff(u8 taskId); - -static void Mailbox_DoMailMoveToBag(u8 taskId); -static void Mailbox_DoMailRead(u8 taskId); -static void Mailbox_MoveToBag(u8 taskId); -static void Mailbox_Give(u8 taskId); -static void Mailbox_Cancel(u8 taskId); - -static void Mailbox_CancelMoveToBag(u8 taskId); -static void Mailbox_HandleConfirmMoveToBag(u8 taskId); -static void Mailbox_AskConfirmMoveToBag(u8 taskId); -static void Mailbox_DoGiveMailPokeMenu(u8 taskId); -static void Mailbox_NoPokemonForMail(u8 taskId); - -static void Mailbox_FadeAndReadMail(u8 taskId); +static void Mailbox_PrintMailOptions(u8); +static void Mailbox_MailOptionsProcessInput(u8); + +static void PlayerPC_ItemStorage(u8); +static void PlayerPC_Mailbox(u8); +static void PlayerPC_Decoration(u8); +static void PlayerPC_TurnOff(u8); + +static void Mailbox_DoMailMoveToBag(u8); +static void Mailbox_DoMailRead(u8); +static void Mailbox_MoveToBag(u8); +static void Mailbox_Give(u8); +static void Mailbox_Cancel(u8); + +static void Mailbox_CancelMoveToBag(u8); +static void Mailbox_HandleConfirmMoveToBag(u8); +static void Mailbox_AskConfirmMoveToBag(u8); +static void Mailbox_DoGiveMailPokeMenu(u8); +static void Mailbox_NoPokemonForMail(u8); + +static void Mailbox_FadeAndReadMail(u8); static void Mailbox_ReturnToFieldFromReadMail(void); static void Mailbox_ReshowAfterMail(void); -static void Mailbox_HandleReturnToProcessInput(u8 taskId); +static void Mailbox_HandleReturnToProcessInput(u8); static void Mailbox_UpdateMailListAfterDeposit(void); -static void ItemStorage_Withdraw(u8 taskId); -static void ItemStorage_Deposit(u8 taskId); -static void ItemStorage_Toss(u8 taskId); -static void ItemStorage_Exit(u8 taskId); -static void ItemStorage_TossItemYes(u8 taskId); -static void ItemStorage_TossItemNo(u8 taskId); +static void ItemStorage_Withdraw(u8); +static void ItemStorage_Deposit(u8); +static void ItemStorage_Toss(u8); +static void ItemStorage_Exit(u8); +static void ItemStorage_TossItemYes(u8); +static void ItemStorage_TossItemNo(u8); static void ItemStorageMenuPrint(const u8 *); -static void ItemStorageMenuProcessInput(u8 taskId); +static void ItemStorageMenuProcessInput(u8); static void SetPlayerPCListCount(u8); -static void ItemStorage_HandleReturnToProcessInput(u8 taskId); +static void ItemStorage_HandleReturnToProcessInput(u8); -static void ItemStorage_Enter(u8 taskId, bool8 toss); -static void ItemStorage_CreateListMenu(u8 taskId); -static void ItemStorage_ProcessInput(u8 taskId); -static void Task_ItemStorage_Deposit(u8 taskId); +static void ItemStorage_Enter(u8, bool8); +static void ItemStorage_CreateListMenu(u8); +static void ItemStorage_ProcessInput(u8); +static void Task_ItemStorage_Deposit(u8); static void ItemStorage_ReshowAfterBagMenu(void); -static void ItemStorage_DoItemWithdraw(u8 taskId); -static void ItemStorage_DoItemToss(u8 taskid); -static void ItemStorage_HandleQuantityRolling(u8 taskid); -static void ItemStorage_ExitItemList(u8 taskId); -static void ItemStorage_StartItemSwap(u8 taskId); -static void ItemStorage_DoItemAction(u8 taskId); -static void ItemStorage_FinishItemSwap(u8 taskId, bool8 a); -static void ItemStorage_HandleRemoveItem(u8 taskId); -static void ItemStorage_HandleErrorMessageInput(u8 taskId); -static void ItemStorage_ReturnToListInput(u8 taskId); +static void ItemStorage_DoItemWithdraw(u8); +static void ItemStorage_DoItemToss(u8); +static void ItemStorage_HandleQuantityRolling(u8); +static void ItemStorage_ExitItemList(u8); +static void ItemStorage_StartItemSwap(u8); +static void ItemStorage_DoItemAction(u8); +static void ItemStorage_FinishItemSwap(u8, bool8); +static void ItemStorage_HandleRemoveItem(u8); +static void ItemStorage_HandleErrorMessageInput(u8); +static void ItemStorage_ReturnToListInput(u8); static const u8* ItemStorage_GetMessage(u16); -static void CopyItemName_PlayerPC(u8 *string, u16 itemId); +static void CopyItemName_PlayerPC(u8 *, u16); static void ItemStorage_Init(void); -static void ItemStorage_DrawSwapArrow(u8 y, u8, u8 speed); +static void ItemStorage_DrawSwapArrow(u8, u8, u8); static void ItemStorage_RemoveWindow(u8); static void ItemStorage_UpdateSwapLinePos(u8); -static void ItemStorage_ProcessItemSwapInput(u8 taskId); +static void ItemStorage_ProcessItemSwapInput(u8); static void ItemStorage_EraseItemIcon(void); -static void ItemStorage_DrawItemIcon(u16 itemId); -static void ItemStorage_PrintDescription(s32 id); -static void ItemStorage_EraseMainMenu(u8 taskId); -static void ItemStorage_MoveCursor(s32 id, bool8 b, struct ListMenu * thisMenu); -static void ItemStorage_PrintMenuItem(u8 windowId, u32 id, u8 yOffset); +static void ItemStorage_DrawItemIcon(u16); +static void ItemStorage_PrintDescription(s32); +static void ItemStorage_EraseMainMenu(u8); +static void ItemStorage_MoveCursor(s32, bool8, struct ListMenu *); +static void ItemStorage_PrintMenuItem(u8, u32, u8); static EWRAM_DATA const u8 *sTopMenuOptionOrder = NULL; static EWRAM_DATA u8 sTopMenuNumOptions = 0; diff --git a/src/pokeball.c b/src/pokeball.c index cf7f49b7eff6..f203633a589f 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1005,32 +1005,45 @@ static u8 AnimateBallOpenParticlesForPokeball(u8 x, u8 y, u8 kindOfStars, u8 sub return AnimateBallOpenParticles(x, y, kindOfStars, subpriority, BALL_POKE); } -static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 battlerId, u32 selectedPalettes) +static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 spritePalNum, u32 selectedPalettes) { - return LaunchBallFadeMonTask(unFadeLater, battlerId, selectedPalettes, BALL_POKE); + return LaunchBallFadeMonTask(unFadeLater, spritePalNum, selectedPalettes, BALL_POKE); } +// Sprite data for the pokemon +#define sSpecies data[7] + +// Sprite data for the pokeball +#define sMonSpriteId data[0] +#define sDelay data[1] +#define sMonPalNum data[2] +#define sFadePalsLo data[3] +#define sFadePalsHi data[4] +#define sFinalMonX data[5] +#define sFinalMonY data[6] +#define sTrigIdx data[7] + // Pokeball in Birch intro, and when receiving via trade -void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 g, u32 h, u16 species) +void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 delay, u32 fadePalettes, u16 species) { u8 spriteId; - LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[0]); - LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]); - spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy); + LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[BALL_POKE]); + LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[BALL_POKE]); + spriteId = CreateSprite(&gBallSpriteTemplates[BALL_POKE], x, y, subpriortiy); - gSprites[spriteId].data[0] = monSpriteId; - gSprites[spriteId].data[5] = gSprites[monSpriteId].x; - gSprites[spriteId].data[6] = gSprites[monSpriteId].y; + gSprites[spriteId].sMonSpriteId = monSpriteId; + gSprites[spriteId].sFinalMonX = gSprites[monSpriteId].x; + gSprites[spriteId].sFinalMonY = gSprites[monSpriteId].y; gSprites[monSpriteId].x = x; gSprites[monSpriteId].y = y; - gSprites[monSpriteId].data[7] = species; + gSprites[monSpriteId].sSpecies = species; - gSprites[spriteId].data[1] = g; - gSprites[spriteId].data[2] = battlerId; - gSprites[spriteId].data[3] = h; - gSprites[spriteId].data[4] = h >> 0x10; + gSprites[spriteId].sDelay = delay; + gSprites[spriteId].sMonPalNum = monPalNum; + gSprites[spriteId].sFadePalsLo = fadePalettes; + gSprites[spriteId].sFadePalsHi = fadePalettes >> 16; gSprites[spriteId].oam.priority = oamPriority; gSprites[spriteId].callback = SpriteCB_PokeballReleaseMon; @@ -1039,12 +1052,12 @@ void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y, static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) { - if (sprite->data[1] == 0) + if (sprite->sDelay == 0) { u8 subpriority; - u8 spriteId = sprite->data[0]; - u8 battlerId = sprite->data[2]; - u32 selectedPalettes = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + u8 spriteId = sprite->sMonSpriteId; + u8 monPalNum = sprite->sMonPalNum; + u32 selectedPalettes = (u16)sprite->sFadePalsLo | ((u16)sprite->sFadePalsHi << 16); if (sprite->subpriority != 0) subpriority = sprite->subpriority - 1; @@ -1053,78 +1066,89 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) StartSpriteAnim(sprite, 1); AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); - sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, selectedPalettes); + // sDelay re-used to store task id but never read + sprite->sDelay = LaunchBallFadeMonTaskForPokeball(1, monPalNum, selectedPalettes); sprite->callback = SpriteCB_ReleasedMonFlyOut; gSprites[spriteId].invisible = FALSE; StartSpriteAffineAnim(&gSprites[spriteId], BATTLER_AFFINE_EMERGE); AnimateSprite(&gSprites[spriteId]); gSprites[spriteId].data[1] = 0x1000; - sprite->data[7] = 0; + sprite->sTrigIdx = 0; } else { - sprite->data[1]--; + sprite->sDelay--; } } static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite) { - bool8 r12 = FALSE; - bool8 r6 = FALSE; - u8 monSpriteId = sprite->data[0]; - u16 var1; - u16 var2; + bool8 emergeAnimFinished = FALSE; + bool8 atFinalPosition = FALSE; + u8 monSpriteId = sprite->sMonSpriteId; + u16 x, y; if (sprite->animEnded) sprite->invisible = TRUE; + if (gSprites[monSpriteId].affineAnimEnded) { StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_NORMAL); - r12 = TRUE; + emergeAnimFinished = TRUE; } - var1 = (sprite->data[5] - sprite->x) * sprite->data[7] / 128 + sprite->x; - var2 = (sprite->data[6] - sprite->y) * sprite->data[7] / 128 + sprite->y; - gSprites[monSpriteId].x = var1; - gSprites[monSpriteId].y = var2; - if (sprite->data[7] < 128) + + x = (sprite->sFinalMonX - sprite->x) * sprite->sTrigIdx / 128 + sprite->x; + y = (sprite->sFinalMonY - sprite->y) * sprite->sTrigIdx / 128 + sprite->y; + gSprites[monSpriteId].x = x; + gSprites[monSpriteId].y = y; + + if (sprite->sTrigIdx < 128) { - s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8); + s16 sine = -(gSineTable[(u8)sprite->sTrigIdx] / 8); - sprite->data[7] += 4; + sprite->sTrigIdx += 4; gSprites[monSpriteId].x2 = sine; gSprites[monSpriteId].y2 = sine; } else { - gSprites[monSpriteId].x = sprite->data[5]; - gSprites[monSpriteId].y = sprite->data[6]; + gSprites[monSpriteId].x = sprite->sFinalMonX; + gSprites[monSpriteId].y = sprite->sFinalMonY; gSprites[monSpriteId].x2 = 0; gSprites[monSpriteId].y2 = 0; - r6 = TRUE; + atFinalPosition = TRUE; } - if (sprite->animEnded && r12 && r6) + if (sprite->animEnded && emergeAnimFinished && atFinalPosition) { - if (gSprites[monSpriteId].data[7] == SPECIES_EGG) - DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].data[7], TRUE, 0); + if (gSprites[monSpriteId].sSpecies == SPECIES_EGG) + DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].sSpecies, TRUE, 0); else - DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].data[7], FALSE, 0); + DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].sSpecies, FALSE, 0); DestroySpriteAndFreeResources(sprite); } } -u8 CreateTradePokeballSprite(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h) +#undef sSpecies +#undef sFinalMonX +#undef sFinalMonY +#undef sTrigIdx + + +#define sTimer data[5] + +u8 CreateTradePokeballSprite(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 delay, u32 fadePalettes) { u8 spriteId; - LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[0]); - LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]); - spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subPriority); - gSprites[spriteId].data[0] = a; - gSprites[spriteId].data[1] = g; - gSprites[spriteId].data[2] = b; - gSprites[spriteId].data[3] = h; - gSprites[spriteId].data[4] = h >> 16; + LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[BALL_POKE]); + LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[BALL_POKE]); + spriteId = CreateSprite(&gBallSpriteTemplates[BALL_POKE], x, y, subPriority); + gSprites[spriteId].sMonSpriteId = monSpriteId; + gSprites[spriteId].sDelay = delay; + gSprites[spriteId].sMonPalNum = monPalNum; + gSprites[spriteId].sFadePalsLo = fadePalettes; + gSprites[spriteId].sFadePalsHi = fadePalettes >> 16; gSprites[spriteId].oam.priority = oamPriority; gSprites[spriteId].callback = SpriteCB_TradePokeball; return spriteId; @@ -1132,12 +1156,12 @@ u8 CreateTradePokeballSprite(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPrior static void SpriteCB_TradePokeball(struct Sprite *sprite) { - if (sprite->data[1] == 0) + if (sprite->sDelay == 0) { u8 subpriority; - u8 monSpriteId = sprite->data[0]; - u8 battlerId = sprite->data[2]; - u32 selectedPalettes = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + u8 monSpriteId = sprite->sMonSpriteId; + u8 monPalNum = sprite->sMonPalNum; + u32 selectedPalettes = (u16)sprite->sFadePalsLo | ((u16)sprite->sFadePalsHi << 16); if (sprite->subpriority != 0) subpriority = sprite->subpriority - 1; @@ -1146,7 +1170,8 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) StartSpriteAnim(sprite, 1); AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); - sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, selectedPalettes); + // sDelay re-used to store task id but never read + sprite->sDelay = LaunchBallFadeMonTaskForPokeball(1, monPalNum, selectedPalettes); sprite->callback = SpriteCB_TradePokeballSendOff; #ifdef BUGFIX // FIX: If this is used on a sprite that has previously had an affine animation, it will not @@ -1159,7 +1184,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) } else { - sprite->data[1]--; + sprite->sDelay--; } } @@ -1167,15 +1192,16 @@ static void SpriteCB_TradePokeballSendOff(struct Sprite *sprite) { u8 monSpriteId; - sprite->data[5]++; - if (sprite->data[5] == 11) + sprite->sTimer++; + if (sprite->sTimer == 11) PlaySE(SE_BALL_TRADE); - monSpriteId = sprite->data[0]; + + monSpriteId = sprite->sMonSpriteId; if (gSprites[monSpriteId].affineAnimEnded) { StartSpriteAnim(sprite, 2); gSprites[monSpriteId].invisible = TRUE; - sprite->data[5] = 0; + sprite->sTimer = 0; sprite->callback = SpriteCB_TradePokeballEnd; } else @@ -1191,6 +1217,13 @@ static void SpriteCB_TradePokeballEnd(struct Sprite *sprite) sprite->callback = SpriteCallbackDummy; } +#undef sMonSpriteId +#undef sDelay +#undef sMonPalNum +#undef sFadePalsLo +#undef sFadePalsHi +#undef sTimer + static void Unref_DestroySpriteAndFreeResources(struct Sprite *sprite) { DestroySpriteAndFreeResources(sprite); diff --git a/src/pokedex.c b/src/pokedex.c index 206782e59e15..b247c8c8d20f 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -4428,37 +4428,37 @@ bool16 HasAllMons(void) return TRUE; } -static void ResetOtherVideoRegisters(u16 a) +static void ResetOtherVideoRegisters(u16 regBits) { - if (!(a & DISPCNT_BG0_ON)) + if (!(regBits & DISPCNT_BG0_ON)) { ClearGpuRegBits(0, DISPCNT_BG0_ON); SetGpuReg(REG_OFFSET_BG0CNT, 0); SetGpuReg(REG_OFFSET_BG0HOFS, 0); SetGpuReg(REG_OFFSET_BG0VOFS, 0); } - if (!(a & DISPCNT_BG1_ON)) + if (!(regBits & DISPCNT_BG1_ON)) { ClearGpuRegBits(0, DISPCNT_BG1_ON); SetGpuReg(REG_OFFSET_BG1CNT, 0); SetGpuReg(REG_OFFSET_BG1HOFS, 0); SetGpuReg(REG_OFFSET_BG1VOFS, 0); } - if (!(a & DISPCNT_BG2_ON)) + if (!(regBits & DISPCNT_BG2_ON)) { ClearGpuRegBits(0, DISPCNT_BG2_ON); SetGpuReg(REG_OFFSET_BG2CNT, 0); SetGpuReg(REG_OFFSET_BG2HOFS, 0); SetGpuReg(REG_OFFSET_BG2VOFS, 0); } - if (!(a & DISPCNT_BG3_ON)) + if (!(regBits & DISPCNT_BG3_ON)) { ClearGpuRegBits(0, DISPCNT_BG3_ON); SetGpuReg(REG_OFFSET_BG3CNT, 0); SetGpuReg(REG_OFFSET_BG3HOFS, 0); SetGpuReg(REG_OFFSET_BG3VOFS, 0); } - if (!(a & DISPCNT_OBJ_ON)) + if (!(regBits & DISPCNT_OBJ_ON)) { ClearGpuRegBits(0, DISPCNT_OBJ_ON); ResetSpriteData(); diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c index 4926c019dd8d..ff32f8eef134 100644 --- a/src/pokedex_area_region_map.c +++ b/src/pokedex_area_region_map.c @@ -63,7 +63,7 @@ void FreePokedexAreaMapBgNum(void) TRY_FREE_AND_SET_NULL(sPokedexAreaMapBgNum); } -void PokedexAreaMapChangeBgY(u32 a0) +void PokedexAreaMapChangeBgY(u32 move) { - ChangeBgY(*sPokedexAreaMapBgNum, a0 * 0x100, BG_COORD_SET); + ChangeBgY(*sPokedexAreaMapBgNum, move * 0x100, BG_COORD_SET); } diff --git a/src/pokemon.c b/src/pokemon.c index af5771a6ac78..db0febe26bd9 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -5798,13 +5798,13 @@ u16 GetLinkTrainerFlankId(u8 linkPlayerId) return flankId; } -s32 GetBattlerMultiplayerId(u16 a1) +s32 GetBattlerMultiplayerId(u16 id) { - s32 id; - for (id = 0; id < MAX_LINK_PLAYERS; id++) - if (gLinkPlayers[id].id == a1) + s32 multiplayerId; + for (multiplayerId = 0; multiplayerId < MAX_LINK_PLAYERS; multiplayerId++) + if (gLinkPlayers[multiplayerId].id == id) break; - return id; + return multiplayerId; } u8 GetTrainerEncounterMusicId(u16 trainerOpponentId) diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index e00f5dbc8fad..32333ee67bc7 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3612,7 +3612,6 @@ static u32 AddMessageWindow(u32 left, u32 top, u32 width, u32 height) static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos) { struct WindowTemplate window; - u8 a = cursorPos; window.bg = BG_INTERFACE; window.tilemapLeft = left; @@ -3622,7 +3621,7 @@ static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos) window.paletteNum = 2; window.baseBlock = 0x2B; - CreateYesNoMenu(&window, 1, 0xD, a); + CreateYesNoMenu(&window, 1, 0xD, cursorPos); } // "Points" for jump score and "times" for number of jumps in a row diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 10c69a4226d9..e33e79460db1 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -195,62 +195,62 @@ static bool8 LoadGraphics(void); static void CB2_InitSummaryScreen(void); static void InitBGs(void); static bool8 DecompressGraphics(void); -static void CopyMonToSummaryStruct(struct Pokemon* a); -static bool8 ExtractMonDataToSummaryStruct(struct Pokemon* a); +static void CopyMonToSummaryStruct(struct Pokemon*); +static bool8 ExtractMonDataToSummaryStruct(struct Pokemon*); static void SetDefaultTilemaps(void); -static void CloseSummaryScreen(u8 taskId); -static void Task_HandleInput(u8 taskId); -static void ChangeSummaryPokemon(u8 taskId, s8 a); -static void Task_ChangeSummaryMon(u8 taskId); -static s8 AdvanceMonIndex(s8 delta); -static s8 AdvanceMultiBattleMonIndex(s8 delta); -static bool8 IsValidToViewInMulti(struct Pokemon* mon); -static void ChangePage(u8 taskId, s8 a); -static void PssScrollRight(u8 taskId); -static void PssScrollRightEnd(u8 taskId); -static void PssScrollLeft(u8 taskId); -static void PssScrollLeftEnd(u8 taskId); +static void CloseSummaryScreen(u8); +static void Task_HandleInput(u8); +static void ChangeSummaryPokemon(u8, s8); +static void Task_ChangeSummaryMon(u8); +static s8 AdvanceMonIndex(s8); +static s8 AdvanceMultiBattleMonIndex(s8); +static bool8 IsValidToViewInMulti(struct Pokemon*); +static void ChangePage(u8, s8); +static void PssScrollRight(u8); +static void PssScrollRightEnd(u8); +static void PssScrollLeft(u8); +static void PssScrollLeftEnd(u8); static void TryDrawExperienceProgressBar(void); -static void SwitchToMoveSelection(u8 taskId); -static void Task_HandleInput_MoveSelect(u8 taskId); +static void SwitchToMoveSelection(u8); +static void Task_HandleInput_MoveSelect(u8); static bool8 HasMoreThanOneMove(void); -static void ChangeSelectedMove(s16 *taskData, s8 direction, u8 *moveIndexPtr); -static void CloseMoveSelectMode(u8 taskId); -static void SwitchToMovePositionSwitchMode(u8 a); -static void Task_HandleInput_MovePositionSwitch(u8 taskId); -static void ExitMovePositionSwitchMode(u8 taskId, bool8 swapMoves); -static void SwapMonMoves(struct Pokemon *mon, u8 moveIndex1, u8 moveIndex2); -static void SwapBoxMonMoves(struct BoxPokemon *mon, u8 moveIndex1, u8 moveIndex2); -static void Task_SetHandleReplaceMoveInput(u8 taskId); -static void Task_HandleReplaceMoveInput(u8 taskId); +static void ChangeSelectedMove(s16 *, s8, u8 *); +static void CloseMoveSelectMode(u8); +static void SwitchToMovePositionSwitchMode(u8); +static void Task_HandleInput_MovePositionSwitch(u8); +static void ExitMovePositionSwitchMode(u8, bool8); +static void SwapMonMoves(struct Pokemon *, u8, u8); +static void SwapBoxMonMoves(struct BoxPokemon *, u8, u8); +static void Task_SetHandleReplaceMoveInput(u8); +static void Task_HandleReplaceMoveInput(u8); static bool8 CanReplaceMove(void); -static void ShowCantForgetHMsWindow(u8 taskId); -static void Task_HandleInputCantForgetHMsMoves(u8 taskId); +static void ShowCantForgetHMsWindow(u8); +static void Task_HandleInputCantForgetHMsMoves(u8); static void DrawPagination(void); -static void HandlePowerAccTilemap(u16 a, s16 b); -static void Task_ShowPowerAccWindow(u8 taskId); -static void HandleAppealJamTilemap(u16 a, s16 b, u16 c); -static void Task_ShowAppealJamWindow(u8 taskId); -static void HandleStatusTilemap(u16 a, s16 b); -static void Task_ShowStatusWindow(u8 taskId); -static void TilemapFiveMovesDisplay(u16 *dst, u16 palette, bool8 remove); -static void DrawPokerusCuredSymbol(struct Pokemon* mon); -static void DrawExperienceProgressBar(struct Pokemon* mon); -static void DrawContestMoveHearts(u16 move); +static void HandlePowerAccTilemap(u16, s16); +static void Task_ShowPowerAccWindow(u8); +static void HandleAppealJamTilemap(u16, s16, u16); +static void Task_ShowAppealJamWindow(u8); +static void HandleStatusTilemap(u16, s16); +static void Task_ShowStatusWindow(u8); +static void TilemapFiveMovesDisplay(u16 *, u16, bool8); +static void DrawPokerusCuredSymbol(struct Pokemon*); +static void DrawExperienceProgressBar(struct Pokemon*); +static void DrawContestMoveHearts(u16); static void LimitEggSummaryPageDisplay(void); static void ResetWindows(void); static void PrintMonInfo(void); static void PrintNotEggInfo(void); static void PrintEggInfo(void); -static void PrintGenderSymbol(struct Pokemon *mon, u16 a); +static void PrintGenderSymbol(struct Pokemon *, u16); static void PrintPageNamesAndStats(void); -static void PutPageWindowTilemaps(u8 a); -static void ClearPageWindowTilemaps(u8 a); -static void RemoveWindowByIndex(u8 a); -static void PrintPageSpecificText(u8 a); -static void CreateTextPrinterTask(u8 a); +static void PutPageWindowTilemaps(u8); +static void ClearPageWindowTilemaps(u8); +static void RemoveWindowByIndex(u8); +static void PrintPageSpecificText(u8); +static void CreateTextPrinterTask(u8); static void PrintInfoPageText(void); -static void Task_PrintInfoPage(u8 taskId); +static void Task_PrintInfoPage(u8); static void PrintMonOTName(void); static void PrintMonOTID(void); static void PrintMonAbilityName(void); @@ -258,7 +258,7 @@ static void PrintMonAbilityDescription(void); static void BufferMonTrainerMemo(void); static void PrintMonTrainerMemo(void); static void BufferNatureString(void); -static void GetMetLevelString(u8 *a); +static void GetMetLevelString(u8 *); static bool8 DoesMonOTMatchOwner(void); static bool8 DidMonComeFromGBAGames(void); static bool8 IsInGamePartnerMon(void); @@ -266,7 +266,7 @@ static void PrintEggOTName(void); static void PrintEggOTID(void); static void PrintEggState(void); static void PrintEggMemo(void); -static void Task_PrintSkillsPage(u8 taskId); +static void Task_PrintSkillsPage(u8); static void PrintHeldItemName(void); static void PrintSkillsPageText(void); static void PrintRibbonCount(void); @@ -276,18 +276,18 @@ static void BufferRightColumnStats(void); static void PrintRightColumnStats(void); static void PrintExpPointsNextLevel(void); static void PrintBattleMoves(void); -static void Task_PrintBattleMoves(u8 taskId); -static void PrintMoveNameAndPP(u8 a); +static void Task_PrintBattleMoves(u8); +static void PrintMoveNameAndPP(u8); static void PrintContestMoves(void); -static void Task_PrintContestMoves(u8 taskId); -static void PrintContestMoveDescription(u8 a); -static void PrintMoveDetails(u16 a); +static void Task_PrintContestMoves(u8); +static void PrintContestMoveDescription(u8); +static void PrintMoveDetails(u16); static void PrintNewMoveDetailsOrCancelText(void); static void AddAndFillMoveNamesWindow(void); -static void SwapMovesNamesPP(u8 moveIndex1, u8 moveIndex2); +static void SwapMovesNamesPP(u8, u8); static void PrintHMMovesCantBeForgotten(void); static void ResetSpriteIds(void); -static void SetSpriteInvisibility(u8 spriteArrayId, bool8 invisible); +static void SetSpriteInvisibility(u8, bool8); static void HidePageSpecificSprites(void); static void SetTypeIcons(void); static void CreateMoveTypeIcons(void); @@ -295,20 +295,20 @@ static void SetMonTypeIcons(void); static void SetMoveTypeIcons(void); static void SetContestMoveTypeIcons(void); static void SetNewMoveTypeIcon(void); -static void SwapMovesTypeSprites(u8 moveIndex1, u8 moveIndex2); -static u8 LoadMonGfxAndSprite(struct Pokemon *a, s16 *b); -static u8 CreateMonSprite(struct Pokemon *unused); +static void SwapMovesTypeSprites(u8, u8); +static u8 LoadMonGfxAndSprite(struct Pokemon *, s16 *); +static u8 CreateMonSprite(struct Pokemon *); static void SpriteCB_Pokemon(struct Sprite *); static void StopPokemonAnimations(void); -static void CreateMonMarkingsSprite(struct Pokemon *mon); -static void RemoveAndCreateMonMarkingsSprite(struct Pokemon *mon); -static void CreateCaughtBallSprite(struct Pokemon *mon); +static void CreateMonMarkingsSprite(struct Pokemon *); +static void RemoveAndCreateMonMarkingsSprite(struct Pokemon *); +static void CreateCaughtBallSprite(struct Pokemon *); static void CreateSetStatusSprite(void); -static void CreateMoveSelectorSprites(u8 idArrayStart); -static void SpriteCb_MoveSelector(struct Sprite *sprite); -static void DestroyMoveSelectorSprites(u8 firstArrayId); -static void SetMainMoveSelectorColor(u8 whichColor); -static void KeepMoveSelectorVisible(u8 firstSpriteId); +static void CreateMoveSelectorSprites(u8); +static void SpriteCb_MoveSelector(struct Sprite *); +static void DestroyMoveSelectorSprites(u8); +static void SetMainMoveSelectorColor(u8); +static void KeepMoveSelectorVisible(u8); static void SummaryScreen_DestroyAnimDelayTask(void); // const rom data diff --git a/src/pokenav.c b/src/pokenav.c index f9a6614a8957..5e8727c642cd 100644 --- a/src/pokenav.c +++ b/src/pokenav.c @@ -37,16 +37,16 @@ struct PokenavCallbacks static u32 GetCurrentMenuCB(void); static u32 IsActiveMenuLoopTaskActive_(void); -static bool32 SetActivePokenavMenu(u32 menuId); +static bool32 SetActivePokenavMenu(u32); static bool32 AnyMonHasRibbon(void); -static void InitPokenavResources(struct PokenavResources *a0); +static void InitPokenavResources(struct PokenavResources *); static void InitKeys_(void); static void FreePokenavResources(void); static void VBlankCB_Pokenav(void); static void CB2_Pokenav(void); -static void Task_RunLoopedTask_LinkMode(u8 a0); -static void Task_RunLoopedTask(u8 taskId); -static void Task_Pokenav(u8 taskId); +static void Task_RunLoopedTask_LinkMode(u8); +static void Task_RunLoopedTask(u8); +static void Task_Pokenav(u8); static void CB2_InitPokenavForTutorial(void); const struct PokenavCallbacks PokenavMenuCallbacks[15] = diff --git a/src/pokenav_list.c b/src/pokenav_list.c index bdba1d2c09b1..350a78504289 100644 --- a/src/pokenav_list.c +++ b/src/pokenav_list.c @@ -40,7 +40,7 @@ struct PokenavListWindowState { struct PokenavListSub { struct PokenavListMenuWindow listWindow; - u32 unk10; + u32 printStart; u32 printIndex; u32 itemSize; void * listPtr; @@ -59,7 +59,7 @@ struct PokenavListSub struct PokenavList { - struct PokenavListSub list; + struct PokenavListSub sub; u8 tilemapBuffer[BG_SCREEN_SIZE]; struct PokenavListWindowState windowState; s32 eraseIndex; @@ -100,12 +100,12 @@ static EWRAM_DATA u32 sMoveWindowDownIndex = 0; // Read, but pointlessly bool32 CreatePokenavList(const struct BgTemplate *bgTemplate, struct PokenavListTemplate *listTemplate, s32 tileOffset) { - struct PokenavList *structPtr = AllocSubstruct(POKENAV_SUBSTRUCT_LIST, sizeof(struct PokenavList)); - if (structPtr == NULL) + struct PokenavList *list = AllocSubstruct(POKENAV_SUBSTRUCT_LIST, sizeof(struct PokenavList)); + if (list == NULL) return FALSE; - InitPokenavListWindowState(&structPtr->windowState, listTemplate); - if (!CopyPokenavListMenuTemplate(&structPtr->list, bgTemplate, listTemplate, tileOffset)) + InitPokenavListWindowState(&list->windowState, listTemplate); + if (!CopyPokenavListMenuTemplate(&list->sub, bgTemplate, listTemplate, tileOffset)) return FALSE; CreateLoopedTask(LoopedTask_CreatePokenavList, 6); @@ -119,31 +119,31 @@ bool32 IsCreatePokenavListTaskActive(void) void DestroyPokenavList(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - DestroyListArrows(&structPtr->list); - RemoveWindow(structPtr->list.listWindow.windowId); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + DestroyListArrows(&list->sub); + RemoveWindow(list->sub.listWindow.windowId); FreePokenavSubstruct(POKENAV_SUBSTRUCT_LIST); } static u32 LoopedTask_CreatePokenavList(s32 state) { - struct PokenavList *structPtr; + struct PokenavList *list; if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - InitPokenavListBg(structPtr); + InitPokenavListBg(list); return LT_INC_AND_PAUSE; case 1: - InitPokenavListWindow(&structPtr->list.listWindow); + InitPokenavListWindow(&list->sub.listWindow); return LT_INC_AND_PAUSE; case 2: - InitListItems(&structPtr->windowState, &structPtr->list); + InitListItems(&list->windowState, &list->sub); return LT_INC_AND_PAUSE; case 3: if (IsPrintListItemsTaskActive()) @@ -156,24 +156,24 @@ static u32 LoopedTask_CreatePokenavList(s32 state) return LT_INC_AND_CONTINUE; } case 4: - CreateListArrowSprites(&structPtr->windowState, &structPtr->list); + CreateListArrowSprites(&list->windowState, &list->sub); return LT_FINISH; default: return LT_FINISH; } } -static void InitPokenavListBg(struct PokenavList *a0) +static void InitPokenavListBg(struct PokenavList *list) { - u16 tileNum = (a0->list.listWindow.fillValue << 12) | a0->list.listWindow.tileOffset; - BgDmaFill(a0->list.listWindow.bg, PIXEL_FILL(1), a0->list.listWindow.tileOffset, 1); - BgDmaFill(a0->list.listWindow.bg, PIXEL_FILL(4), a0->list.listWindow.tileOffset + 1, 1); - SetBgTilemapBuffer(a0->list.listWindow.bg, a0->tilemapBuffer); - FillBgTilemapBufferRect_Palette0(a0->list.listWindow.bg, tileNum, 0, 0, 32, 32); - ChangeBgY(a0->list.listWindow.bg, 0, BG_COORD_SET); - ChangeBgX(a0->list.listWindow.bg, 0, BG_COORD_SET); - ChangeBgY(a0->list.listWindow.bg, a0->list.listWindow.y << 11, BG_COORD_SUB); - CopyBgTilemapBufferToVram(a0->list.listWindow.bg); + u16 tileNum = (list->sub.listWindow.fillValue << 12) | list->sub.listWindow.tileOffset; + BgDmaFill(list->sub.listWindow.bg, PIXEL_FILL(1), list->sub.listWindow.tileOffset, 1); + BgDmaFill(list->sub.listWindow.bg, PIXEL_FILL(4), list->sub.listWindow.tileOffset + 1, 1); + SetBgTilemapBuffer(list->sub.listWindow.bg, list->tilemapBuffer); + FillBgTilemapBufferRect_Palette0(list->sub.listWindow.bg, tileNum, 0, 0, 32, 32); + ChangeBgY(list->sub.listWindow.bg, 0, BG_COORD_SET); + ChangeBgX(list->sub.listWindow.bg, 0, BG_COORD_SET); + ChangeBgY(list->sub.listWindow.bg, list->sub.listWindow.y << 11, BG_COORD_SUB); + CopyBgTilemapBufferToVram(list->sub.listWindow.bg); } static void InitPokenavListWindow(struct PokenavListMenuWindow *listWindow) @@ -183,16 +183,16 @@ static void InitPokenavListWindow(struct PokenavListMenuWindow *listWindow) CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } -static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavListSub *a1) +static void InitListItems(struct PokenavListWindowState *windowState, struct PokenavListSub *subPtr) { s32 numToPrint = windowState->listLength - windowState->windowTopIndex; if (numToPrint > windowState->entriesOnscreen) numToPrint = windowState->entriesOnscreen; - PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, a1); + PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, subPtr); } -static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 a4, struct PokenavListSub *list) +static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 printStart, struct PokenavListSub *list) { if (numItems == 0) return; @@ -202,7 +202,7 @@ static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemS list->listWindow.numPrinted = 0; list->listWindow.numToPrint = numItems; list->printIndex = topIndex; - list->unk10 = a4; + list->printStart = printStart; CreateLoopedTask(LoopedTask_PrintListItems, 5); } @@ -214,31 +214,31 @@ static bool32 IsPrintListItemsTaskActive(void) static u32 LoopedTask_PrintListItems(s32 state) { u32 row; - struct PokenavListSub *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListSub *listSub = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - row = (structPtr->listWindow.unkA + structPtr->listWindow.numPrinted + structPtr->unk10) & 0xF; - structPtr->bufferItemFunc(structPtr->listPtr, structPtr->itemTextBuffer); - if (structPtr->iconDrawFunc != NULL) - structPtr->iconDrawFunc(structPtr->listWindow.windowId, structPtr->printIndex, row); + row = (listSub->listWindow.unkA + listSub->listWindow.numPrinted + listSub->printStart) & 0xF; + listSub->bufferItemFunc(listSub->listPtr, listSub->itemTextBuffer); + if (listSub->iconDrawFunc != NULL) + listSub->iconDrawFunc(listSub->listWindow.windowId, listSub->printIndex, row); - AddTextPrinterParameterized(structPtr->listWindow.windowId, structPtr->listWindow.fontId, structPtr->itemTextBuffer, 8, (row << 4) + 1, TEXT_SKIP_DRAW, NULL); - if (++structPtr->listWindow.numPrinted >= structPtr->listWindow.numToPrint) + AddTextPrinterParameterized(listSub->listWindow.windowId, listSub->listWindow.fontId, listSub->itemTextBuffer, 8, (row << 4) + 1, TEXT_SKIP_DRAW, NULL); + if (++listSub->listWindow.numPrinted >= listSub->listWindow.numToPrint) { // Finished printing items. If icons were being drawn, draw the // window tilemap and graphics. Otherwise just do the graphics - if (structPtr->iconDrawFunc != NULL) - CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_FULL); + if (listSub->iconDrawFunc != NULL) + CopyWindowToVram(listSub->listWindow.windowId, COPYWIN_FULL); else - CopyWindowToVram(structPtr->listWindow.windowId, COPYWIN_GFX); + CopyWindowToVram(listSub->listWindow.windowId, COPYWIN_GFX); return LT_INC_AND_PAUSE; } else { - structPtr->listPtr += structPtr->itemSize; - structPtr->printIndex++; + listSub->listPtr += listSub->itemSize; + listSub->printIndex++; return LT_CONTINUE; } case 1: @@ -251,42 +251,42 @@ static u32 LoopedTask_PrintListItems(s32 state) static bool32 ShouldShowUpArrow(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - return (structPtr->windowState.windowTopIndex != 0); + return (list->windowState.windowTopIndex != 0); } static bool32 ShouldShowDownArrow(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - struct PokenavListWindowState *subPtr = &structPtr->windowState; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *windowState = &list->windowState; - return (subPtr->windowTopIndex + subPtr->entriesOnscreen < subPtr->listLength); + return (windowState->windowTopIndex + windowState->entriesOnscreen < windowState->listLength); } static void MoveListWindow(s32 delta, bool32 printItems) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - struct PokenavListWindowState *subPtr = &structPtr->windowState; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *windowState = &list->windowState; if (delta < 0) { - if (subPtr->windowTopIndex + delta < 0) - delta = -1 * subPtr->windowTopIndex; + if (windowState->windowTopIndex + delta < 0) + delta = -1 * windowState->windowTopIndex; if (printItems) - PrintListItems(subPtr->listPtr, subPtr->windowTopIndex + delta, delta * -1, subPtr->listItemSize, delta, &structPtr->list); + PrintListItems(windowState->listPtr, windowState->windowTopIndex + delta, delta * -1, windowState->listItemSize, delta, &list->sub); } else if (printItems) { - s32 index = sMoveWindowDownIndex = subPtr->windowTopIndex + subPtr->entriesOnscreen; - if (index + delta >= subPtr->listLength) - delta = subPtr->listLength - index; + s32 index = sMoveWindowDownIndex = windowState->windowTopIndex + windowState->entriesOnscreen; + if (index + delta >= windowState->listLength) + delta = windowState->listLength - index; - PrintListItems(subPtr->listPtr, index, delta, subPtr->listItemSize, subPtr->entriesOnscreen, &structPtr->list); + PrintListItems(windowState->listPtr, index, delta, windowState->listItemSize, windowState->entriesOnscreen, &list->sub); } - CreateMoveListWindowTask(delta, &structPtr->list); - subPtr->windowTopIndex += delta; + CreateMoveListWindowTask(delta, &list->sub); + windowState->windowTopIndex += delta; } static void CreateMoveListWindowTask(s32 delta, struct PokenavListSub *list) @@ -305,8 +305,8 @@ static u32 LoopedTask_MoveListWindow(s32 state) { s32 oldY, newY; bool32 finished; - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - struct PokenavListSub *subPtr = &structPtr->list; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListSub *subPtr = &list->sub; switch (state) { @@ -342,23 +342,23 @@ static u32 LoopedTask_MoveListWindow(s32 state) bool32 PokenavList_IsMoveWindowTaskActive(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - return IsLoopedTaskActive(structPtr->list.loopedTaskId); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + return IsLoopedTaskActive(list->sub.loopedTaskId); } static struct PokenavListWindowState *GetPokenavListWindowState(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - return &structPtr->windowState; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + return &list->windowState; } int PokenavList_MoveCursorUp(void) { - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); - if (structPtr->selectedIndexOffset != 0) + if (windowState->selectedIndexOffset != 0) { - structPtr->selectedIndexOffset--; + windowState->selectedIndexOffset--; return 1; } if (ShouldShowUpArrow()) @@ -371,13 +371,13 @@ int PokenavList_MoveCursorUp(void) int PokenavList_MoveCursorDown(void) { - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); - if (structPtr->windowTopIndex + structPtr->selectedIndexOffset >= structPtr->listLength - 1) + if (windowState->windowTopIndex + windowState->selectedIndexOffset >= windowState->listLength - 1) return 0; - if (structPtr->selectedIndexOffset < structPtr->entriesOnscreen - 1) + if (windowState->selectedIndexOffset < windowState->entriesOnscreen - 1) { - structPtr->selectedIndexOffset++; + windowState->selectedIndexOffset++; return 1; } if (ShouldShowDownArrow()) @@ -391,20 +391,20 @@ int PokenavList_MoveCursorDown(void) int PokenavList_PageUp(void) { s32 scroll; - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); if (ShouldShowUpArrow()) { - if (structPtr->windowTopIndex >= structPtr->entriesOnscreen) - scroll = structPtr->entriesOnscreen; + if (windowState->windowTopIndex >= windowState->entriesOnscreen) + scroll = windowState->entriesOnscreen; else - scroll = structPtr->windowTopIndex; + scroll = windowState->windowTopIndex; MoveListWindow(scroll * -1, TRUE); return 2; } - else if (structPtr->selectedIndexOffset != 0) + else if (windowState->selectedIndexOffset != 0) { - structPtr->selectedIndexOffset = 0; + windowState->selectedIndexOffset = 0; return 1; } return 0; @@ -412,112 +412,112 @@ int PokenavList_PageUp(void) int PokenavList_PageDown(void) { - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); if (ShouldShowDownArrow()) { - s32 windowBottomIndex = structPtr->windowTopIndex + structPtr->entriesOnscreen; - s32 scroll = structPtr->entriesOffscreen - structPtr->windowTopIndex; + s32 windowBottomIndex = windowState->windowTopIndex + windowState->entriesOnscreen; + s32 scroll = windowState->entriesOffscreen - windowState->windowTopIndex; - if (windowBottomIndex <= structPtr->entriesOffscreen) - scroll = structPtr->entriesOnscreen; + if (windowBottomIndex <= windowState->entriesOffscreen) + scroll = windowState->entriesOnscreen; MoveListWindow(scroll, TRUE); return 2; } else { s32 cursor, lastVisibleIndex; - if (structPtr->listLength >= structPtr->entriesOnscreen) + if (windowState->listLength >= windowState->entriesOnscreen) { - cursor = structPtr->selectedIndexOffset; - lastVisibleIndex = structPtr->entriesOnscreen; + cursor = windowState->selectedIndexOffset; + lastVisibleIndex = windowState->entriesOnscreen; } else { - cursor = structPtr->selectedIndexOffset; - lastVisibleIndex = structPtr->listLength; + cursor = windowState->selectedIndexOffset; + lastVisibleIndex = windowState->listLength; } lastVisibleIndex -= 1; if (cursor >= lastVisibleIndex) return 0; - structPtr->selectedIndexOffset = lastVisibleIndex; + windowState->selectedIndexOffset = lastVisibleIndex; return 1; } } u32 PokenavList_GetSelectedIndex(void) { - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); - return structPtr->windowTopIndex + structPtr->selectedIndexOffset; + return windowState->windowTopIndex + windowState->selectedIndexOffset; } u32 PokenavList_GetTopIndex(void) { - struct PokenavListWindowState *structPtr = GetPokenavListWindowState(); + struct PokenavListWindowState *windowState = GetPokenavListWindowState(); - return structPtr->windowTopIndex; + return windowState->windowTopIndex; } void PokenavList_EraseListForCheckPage(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->eraseIndex = 0; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_EraseListForCheckPage, 6); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + list->eraseIndex = 0; + list->loopedTaskId = CreateLoopedTask(LoopedTask_EraseListForCheckPage, 6); } void PrintCheckPageInfo(s16 delta) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->windowState.windowTopIndex += delta; - structPtr->eraseIndex = 0; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + list->windowState.windowTopIndex += delta; + list->eraseIndex = 0; + list->loopedTaskId = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6); } void PokenavList_ReshowListFromCheckPage(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->eraseIndex = 0; - structPtr->loopedTaskId = CreateLoopedTask(LoopedTask_ReshowListFromCheckPage, 6); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + list->eraseIndex = 0; + list->loopedTaskId = CreateLoopedTask(LoopedTask_ReshowListFromCheckPage, 6); } bool32 PokenavList_IsTaskActive(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - return IsLoopedTaskActive(structPtr->loopedTaskId); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + return IsLoopedTaskActive(list->loopedTaskId); } void PokenavList_DrawCurrentItemIcon(void) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - struct PokenavListWindowState *subPtr = &structPtr->windowState; - structPtr->list.iconDrawFunc(structPtr->list.listWindow.windowId, subPtr->windowTopIndex + subPtr->selectedIndexOffset, (structPtr->list.listWindow.unkA + subPtr->selectedIndexOffset) & 0xF); - CopyWindowToVram(structPtr->list.listWindow.windowId, COPYWIN_MAP); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavListWindowState *windowState = &list->windowState; + list->sub.iconDrawFunc(list->sub.listWindow.windowId, windowState->windowTopIndex + windowState->selectedIndexOffset, (list->sub.listWindow.unkA + windowState->selectedIndexOffset) & 0xF); + CopyWindowToVram(list->sub.listWindow.windowId, COPYWIN_MAP); } static u32 LoopedTask_EraseListForCheckPage(s32 state) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); switch (state) { case 0: - ToggleListArrows(&structPtr->list, 1); + ToggleListArrows(&list->sub, 1); // fall-through case 1: - if (structPtr->eraseIndex != structPtr->windowState.selectedIndexOffset) - EraseListEntry(&structPtr->list.listWindow, structPtr->eraseIndex, 1); + if (list->eraseIndex != list->windowState.selectedIndexOffset) + EraseListEntry(&list->sub.listWindow, list->eraseIndex, 1); - structPtr->eraseIndex++; + list->eraseIndex++; return LT_INC_AND_PAUSE; case 2: if (!IsDma3ManagerBusyWithBgCopy()) { - if (structPtr->eraseIndex != structPtr->windowState.entriesOnscreen) + if (list->eraseIndex != list->windowState.entriesOnscreen) return LT_SET_STATE(1); - if (structPtr->windowState.selectedIndexOffset != 0) - EraseListEntry(&structPtr->list.listWindow, structPtr->eraseIndex, structPtr->windowState.selectedIndexOffset); + if (list->windowState.selectedIndexOffset != 0) + EraseListEntry(&list->sub.listWindow, list->eraseIndex, list->windowState.selectedIndexOffset); return LT_INC_AND_PAUSE; } @@ -525,9 +525,9 @@ static u32 LoopedTask_EraseListForCheckPage(s32 state) case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - if (structPtr->windowState.selectedIndexOffset != 0) + if (list->windowState.selectedIndexOffset != 0) { - MoveListWindow(structPtr->windowState.selectedIndexOffset, FALSE); + MoveListWindow(list->windowState.selectedIndexOffset, FALSE); return LT_INC_AND_PAUSE; } return LT_FINISH; @@ -537,7 +537,7 @@ static u32 LoopedTask_EraseListForCheckPage(s32 state) if (PokenavList_IsMoveWindowTaskActive()) return LT_PAUSE; - structPtr->windowState.selectedIndexOffset = 0; + list->windowState.selectedIndexOffset = 0; return LT_FINISH; } return LT_FINISH; @@ -545,35 +545,35 @@ static u32 LoopedTask_EraseListForCheckPage(s32 state) static u32 LoopedTask_PrintCheckPageInfo(s32 state) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; switch (state) { case 0: - PrintCheckPageTrainerName(&structPtr->windowState, &structPtr->list); + PrintCheckPageTrainerName(&list->windowState, &list->sub); break; case 1: - PrintMatchCallFieldNames(&structPtr->list, 0); + PrintMatchCallFieldNames(&list->sub, 0); break; case 2: - PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_STRATEGY); + PrintMatchCallFlavorText(&list->windowState, &list->sub, CHECK_PAGE_STRATEGY); break; case 3: - PrintMatchCallFieldNames(&structPtr->list, 1); + PrintMatchCallFieldNames(&list->sub, 1); break; case 4: - PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_POKEMON); + PrintMatchCallFlavorText(&list->windowState, &list->sub, CHECK_PAGE_POKEMON); break; case 5: - PrintMatchCallFieldNames(&structPtr->list, 2); + PrintMatchCallFieldNames(&list->sub, 2); break; case 6: - PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_INTRO_1); + PrintMatchCallFlavorText(&list->windowState, &list->sub, CHECK_PAGE_INTRO_1); break; case 7: - PrintMatchCallFlavorText(&structPtr->windowState, &structPtr->list, CHECK_PAGE_INTRO_2); + PrintMatchCallFlavorText(&list->windowState, &list->sub, CHECK_PAGE_INTRO_2); break; default: return LT_FINISH; @@ -583,30 +583,30 @@ static u32 LoopedTask_PrintCheckPageInfo(s32 state) static u32 LoopedTask_ReshowListFromCheckPage(s32 state) { - struct PokenavList *structPtr; + struct PokenavList *list; struct PokenavListWindowState *windowState; - struct PokenavListSub *subPtr0; + struct PokenavListSub *subPtr; s32 r5, *ptr; if (IsDma3ManagerBusyWithBgCopy()) return LT_PAUSE; - structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - windowState = &structPtr->windowState; - subPtr0 = &structPtr->list; + list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + windowState = &list->windowState; + subPtr = &list->sub; switch (state) { case 0: // Rewrite the name of the trainer whose check page was just being viewed. // This is done to erase the red background it had. - PrintMatchCallListTrainerName(windowState, subPtr0); + PrintMatchCallListTrainerName(windowState, subPtr); return LT_INC_AND_PAUSE; case 1: - ptr = &structPtr->eraseIndex; - if (++(*ptr) < structPtr->windowState.entriesOnscreen) + ptr = &list->eraseIndex; + if (++(*ptr) < list->windowState.entriesOnscreen) { - EraseListEntry(&subPtr0->listWindow, *ptr, 1); + EraseListEntry(&subPtr->listWindow, *ptr, 1); return LT_PAUSE; } @@ -617,7 +617,7 @@ static u32 LoopedTask_ReshowListFromCheckPage(s32 state) { s32 r4 = windowState->windowTopIndex; r5 = -r4; - EraseListEntry(&subPtr0->listWindow, r5, r4); + EraseListEntry(&subPtr->listWindow, r5, r4); windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; @@ -629,7 +629,7 @@ static u32 LoopedTask_ReshowListFromCheckPage(s32 state) { s32 r4 = windowState->windowTopIndex + windowState->entriesOnscreen - windowState->listLength; r5 = -r4; - EraseListEntry(&subPtr0->listWindow, r5, r4); + EraseListEntry(&subPtr->listWindow, r5, r4); windowState->selectedIndexOffset = r4; *ptr = r5; return LT_INC_AND_PAUSE; @@ -637,55 +637,55 @@ static u32 LoopedTask_ReshowListFromCheckPage(s32 state) } return LT_SET_STATE(4); case 2: - MoveListWindow(structPtr->eraseIndex, FALSE); + MoveListWindow(list->eraseIndex, FALSE); return LT_INC_AND_PAUSE; case 3: if (!PokenavList_IsMoveWindowTaskActive()) { - structPtr->eraseIndex = 0; + list->eraseIndex = 0; return LT_INC_AND_CONTINUE; } return LT_PAUSE; case 4: - PrintListItems(windowState->listPtr, windowState->windowTopIndex + structPtr->eraseIndex, 1, windowState->listItemSize, structPtr->eraseIndex, &structPtr->list); + PrintListItems(windowState->listPtr, windowState->windowTopIndex + list->eraseIndex, 1, windowState->listItemSize, list->eraseIndex, &list->sub); return LT_INC_AND_PAUSE; case 5: if (IsPrintListItemsTaskActive()) return LT_PAUSE; - if (++structPtr->eraseIndex >= windowState->listLength || structPtr->eraseIndex >= windowState->entriesOnscreen) + if (++list->eraseIndex >= windowState->listLength || list->eraseIndex >= windowState->entriesOnscreen) return LT_INC_AND_CONTINUE; return LT_SET_STATE(4); case 6: - ToggleListArrows(subPtr0, 0); + ToggleListArrows(subPtr, 0); return LT_FINISH; } return LT_FINISH; } -static void EraseListEntry(struct PokenavListMenuWindow *listWindow, s32 a1, s32 a2) +static void EraseListEntry(struct PokenavListMenuWindow *listWindow, s32 offset, s32 entries) { u8 *tileData = (u8*)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); u32 width = listWindow->width * 64; - a1 = (listWindow->unkA + a1) & 0xF; - if (a1 + a2 <= 16) + offset = (listWindow->unkA + offset) & 0xF; + if (offset + entries <= 16) { - CpuFastFill8(PIXEL_FILL(1), tileData + a1 * width, a2 * width); + CpuFastFill8(PIXEL_FILL(1), tileData + offset * width, entries * width); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } else { - u32 v3 = 16 - a1; - u32 v4 = a2 - v3; + u32 v3 = 16 - offset; + u32 v4 = entries - v3; - CpuFastFill8(PIXEL_FILL(1), tileData + a1 * width, v3 * width); + CpuFastFill8(PIXEL_FILL(1), tileData + offset * width, v3 * width); CpuFastFill8(PIXEL_FILL(1), tileData, v4 * width); CopyWindowToVram(listWindow->windowId, COPYWIN_GFX); } - for (a2--; a2 != -1; a1 = (a1 + 1) & 0xF, a2--) - ClearRematchPokeballIcon(listWindow->windowId, a1); + for (entries--; entries != -1; offset = (offset + 1) & 0xF, entries--) + ClearRematchPokeballIcon(listWindow->windowId, offset); CopyWindowToVram(listWindow->windowId, COPYWIN_MAP); } @@ -744,7 +744,7 @@ static void PrintMatchCallFieldNames(struct PokenavListSub *list, u32 fieldId) CopyWindowRectToVram(list->listWindow.windowId, COPYWIN_GFX, 0, top << 1, list->listWindow.width, 2); } -static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct PokenavListSub *list, u32 checkPageEntry) +static void PrintMatchCallFlavorText(struct PokenavListWindowState *windowState, struct PokenavListSub *list, u32 checkPageEntry) { // lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] = { @@ -755,7 +755,7 @@ static void PrintMatchCallFlavorText(struct PokenavListWindowState *a0, struct P }; u32 r6 = (list->listWindow.unkA + lineOffsets[checkPageEntry]) & 0xF; - const u8 *str = GetMatchCallFlavorText(a0->windowTopIndex, checkPageEntry); + const u8 *str = GetMatchCallFlavorText(windowState->windowTopIndex, checkPageEntry); if (str != NULL) { @@ -894,8 +894,8 @@ static void ToggleListArrows(struct PokenavListSub *list, bool32 invisible) static void SpriteCB_RightArrow(struct Sprite *sprite) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - sprite->y2 = structPtr->windowState.selectedIndexOffset << 4; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + sprite->y2 = list->windowState.selectedIndexOffset << 4; } #define sTimer data[0] @@ -940,9 +940,9 @@ static void SpriteCB_UpArrow(struct Sprite *sprite) void PokenavList_ToggleVerticalArrows(bool32 invisible) { - struct PokenavList *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); - structPtr->list.upArrow->sInvisible = invisible; - structPtr->list.downArrow->sInvisible = invisible; + struct PokenavList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_LIST); + list->sub.upArrow->sInvisible = invisible; + list->sub.downArrow->sInvisible = invisible; } #undef sTimer diff --git a/src/slot_machine.c b/src/slot_machine.c index 1dfa026e5f3d..60b53f5a48d3 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -3865,21 +3865,15 @@ static void ReelTime_EndFailure(struct Task *task) static void LoadReelTimeWindowTilemap(s16 a0, s16 a1) { s16 i; - for (i = 4; i < 15; i++) - { LoadBgTilemap(1, &sReelTimeWindow_Tilemap[a1 + (i - 4) * 20], 2, 32 * i + a0); - } } static void ClearReelTimeWindowTilemap(s16 a0) { u8 i; - for (i = 4; i < 15; i++) - { LoadBgTilemap(1, sEmptyTilemap, 2, 32 * i + a0); - } } #undef tState @@ -4116,32 +4110,44 @@ static void CreateCreditPayoutNumberSprites(void) CreateCoinNumberSprite(x, 23, TRUE, i); } -static void CreateCoinNumberSprite(s16 x, s16 y, bool8 isPayout, s16 a3) +#define sIsPayout data[0] +#define sDigitMin data[1] +#define sDigitMax data[2] +#define sCurNum data[3] // Only used to determine whether the sprite has already been updated to show the correct digit + +static void CreateCoinNumberSprite(s16 x, s16 y, bool8 isPayout, s16 digitMult) { struct Sprite *sprite = &gSprites[CreateSprite(&sSpriteTemplate_CoinNumber, x, y, 13)]; sprite->oam.priority = 2; - sprite->data[0] = isPayout; - sprite->data[1] = a3; - sprite->data[2] = a3 * 10; - sprite->data[3] = -1; + sprite->sIsPayout = isPayout; + sprite->sDigitMin = digitMult; + sprite->sDigitMax = digitMult * 10; + sprite->sCurNum = -1; } static void SpriteCB_CoinNumber(struct Sprite *sprite) { u16 tag = sSlotMachine->coins; - if (sprite->data[0]) + if (sprite->sIsPayout) tag = sSlotMachine->payout; - if (sprite->data[3] != tag) + if (sprite->sCurNum != tag) { - sprite->data[3] = tag; - tag %= (u16)sprite->data[2]; - tag /= (u16)sprite->data[1]; - tag += 7; + // Convert total to current digit + sprite->sCurNum = tag; + tag %= (u16)sprite->sDigitMax; + tag /= (u16)sprite->sDigitMin; + + tag += GFXTAG_NUM_0; sprite->sheetTileStart = GetSpriteTileStartByTag(tag); SetSpriteSheetFrameTileNum(sprite); } } +#undef sIsPayout +#undef sDigitMin +#undef sDigitMax +#undef sCurNum + static void CreateReelBackgroundSprite(void) { u8 spriteId = CreateSprite(&sSpriteTemplate_ReelBackground, 88, 72, 15); diff --git a/src/trade.c b/src/trade.c index dd0851bbda0d..5e311f313594 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2435,7 +2435,7 @@ static bool32 IsDeoxysOrMewUntradable(u16 species, bool8 isEventLegal) return FALSE; } -int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, u8 isEventLegal) +int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, bool8 isEventLegal) { bool8 playerHasNationalDex = player.hasNationalDex; bool8 playerIsChampion = player.isChampion; @@ -2496,7 +2496,7 @@ int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct Rf return UR_TRADE_MSG_NONE; } -int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, u8 isEventLegal) +int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, bool8 isEventLegal) { bool8 hasNationalDex = player.hasNationalDex; @@ -3744,7 +3744,7 @@ static bool8 AnimateTradeSequenceCable(void) gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x2 = 0; gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 = 0; StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); - CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); + CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, PALETTES_BG | (0xF << 16), sTradeData->monSpecies[TRADE_PARTNER]); FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); DestroySprite(&gSprites[sTradeData->bouncingPokeballSpriteId]); sTradeData->state++; @@ -4244,7 +4244,7 @@ static bool8 AnimateTradeSequenceWireless(void) gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].x2 = 0; gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].y2 = 0; StartSpriteAnim(&gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]], 0); - CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF, sTradeData->monSpecies[TRADE_PARTNER]); + CreatePokeballSpriteToReleaseMon(sTradeData->monSpriteIds[TRADE_PARTNER], gSprites[sTradeData->monSpriteIds[TRADE_PARTNER]].oam.paletteNum, 120, 84, 2, 1, 20, PALETTES_BG | (0xF << 16), sTradeData->monSpecies[TRADE_PARTNER]); FreeSpriteOamMatrix(&gSprites[sTradeData->bouncingPokeballSpriteId]); DestroySprite(&gSprites[sTradeData->bouncingPokeballSpriteId]); sTradeData->state++; diff --git a/src/tv.c b/src/tv.c index b9d064026ccd..2c8233a2f497 100644 --- a/src/tv.c +++ b/src/tv.c @@ -1449,7 +1449,7 @@ static void InterviewAfter_BravoTrainerPokemonProfile(void) } } -void BravoTrainerPokemonProfile_BeforeInterview1(u16 a0) +void BravoTrainerPokemonProfile_BeforeInterview1(u16 move) { TVShow *show = &gSaveBlock1Ptr->tvShows[LAST_TVSHOW_IDX]; InterviewBefore_BravoTrainerPkmnProfile(); @@ -1457,7 +1457,7 @@ void BravoTrainerPokemonProfile_BeforeInterview1(u16 a0) if (sCurTVShowSlot != -1) { DeleteTVShowInArrayByIdx(gSaveBlock1Ptr->tvShows, LAST_TVSHOW_IDX); - show->bravoTrainer.move = a0; + show->bravoTrainer.move = move; show->bravoTrainer.kind = TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE; } } From bc2dbd772ea61afe228683e4c83b6cbd82b21b70 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 3 Jun 2022 16:18:34 -0400 Subject: [PATCH 592/762] Add warning to NUM_OBJ_EVENT_GFX --- include/constants/event_objects.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 6b99f19bd4ee..8278c6a66bde 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -241,6 +241,15 @@ #define OBJ_EVENT_GFX_LUGIA 237 #define OBJ_EVENT_GFX_HOOH 238 +// NOTE: By default, the max value for NUM_OBJ_EVENT_GFX is 239. +// +// Object event graphics ids are 1 byte in size (max value of 255), and the dynamic +// graphics ids that start after NUM_OBJ_EVENT_GFX reach this limit. No graphics id +// uses the value 239 itself, so removing the "+ 1" in OBJ_EVENT_GFX_VARS would +// allow increasing NUM_OBJ_EVENT_GFX to 240. There are also a handful of unused +// object graphics that can be removed. If more graphics are needed, anything that +// stores graphics ids will need to be increased in size. See wiki entry below: +// https://github.com/pret/pokeemerald/wiki/Feature-Branches#overworld-expansion #define NUM_OBJ_EVENT_GFX 239 From ceaff148f743ca8520e01554188c70b450c54f36 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 9 Jun 2022 10:52:19 -0400 Subject: [PATCH 593/762] Shift to multiply --- src/battle_anim_effects_1.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index cd9cb8b303e9..c590572b922d 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -5324,13 +5324,13 @@ static void AnimWavyMusicNotes_CalcVelocity(s16 x, s16 y, s16* velocX, s16* velo if (x < 0) xSpeedFactor = -xSpeedFactor; - x2 = x << 8; + x2 = x * 256; time = x2 / xSpeedFactor; if (time == 0) time = 1; *velocX = x2 / time; - *velocY = (y << 8) / time; + *velocY = (y * 256) / time; } static void AnimWavyMusicNotes_Step(struct Sprite* sprite) From 7143865f6f7dd8c17077111eac49a8972fb31399 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 6 Jun 2022 15:15:46 -0400 Subject: [PATCH 594/762] Add some battle frontier constant usage --- include/constants/battle_frontier.h | 10 +++ include/constants/battle_pike.h | 2 + include/constants/battle_pyramid.h | 7 ++ include/constants/battle_tent.h | 6 ++ include/constants/union_room.h | 2 + include/global.h | 2 +- src/battle_dome.c | 2 +- src/battle_factory.c | 44 ++++++----- src/battle_pike.c | 24 +++--- src/battle_pyramid.c | 78 +++++++++---------- src/battle_pyramid_bag.c | 6 +- src/battle_tent.c | 40 +++++----- src/battle_tower.c | 66 +++++++++------- .../battle_pyramid_open_level_wild_mons.h | 2 +- src/frontier_util.c | 17 ++-- src/map_name_popup.c | 5 +- src/mystery_gift_client.c | 2 +- src/party_menu.c | 6 +- src/pokemon.c | 2 +- src/start_menu.c | 7 +- src/union_room.c | 2 +- 21 files changed, 189 insertions(+), 143 deletions(-) diff --git a/include/constants/battle_frontier.h b/include/constants/battle_frontier.h index b6d15e6b2695..6cfdc793149f 100644 --- a/include/constants/battle_frontier.h +++ b/include/constants/battle_frontier.h @@ -1,6 +1,8 @@ #ifndef GUARD_CONSTANTS_BATTLE_FRONTIER_H #define GUARD_CONSTANTS_BATTLE_FRONTIER_H +#include "constants/pokemon.h" + #define FRONTIER_CHALLENGE(facility, mode) ((facility << 8) + mode) // Battle Frontier facility ids. @@ -46,6 +48,14 @@ #define MAX_BATTLE_FRONTIER_POINTS 9999 #define MAX_STREAK 9999 +#define FRONTIER_MAX_LEVEL_50 50 +#define FRONTIER_MIN_LEVEL_OPEN 60 +#define FRONTIER_MAX_LEVEL_OPEN MAX_LEVEL + +// This is the default number of battles (or floors, in Battle Pyramid) per challenge. +// There are 2 facilities that differ: Battle Dome (DOME_ROUNDS_COUNT) and Battle Pike (NUM_PIKE_ROOMS). +#define FRONTIER_STAGES_PER_CHALLENGE 7 + // These sets of facility ids would be redundant if the order was consistent // The order is important for this set so that all the non-link records can be continuous #define RANKING_HALL_TOWER_SINGLES 0 diff --git a/include/constants/battle_pike.h b/include/constants/battle_pike.h index 76309436e1db..eebfd741a620 100644 --- a/include/constants/battle_pike.h +++ b/include/constants/battle_pike.h @@ -1,6 +1,8 @@ #ifndef GUARD_CONSTANTS_BATTLE_PIKE_H #define GUARD_CONSTANTS_BATTLE_PIKE_H +#define NUM_PIKE_ROOMS 14 + #define PIKE_ROOM_SINGLE_BATTLE 0 #define PIKE_ROOM_HEAL_FULL 1 #define PIKE_ROOM_NPC 2 diff --git a/include/constants/battle_pyramid.h b/include/constants/battle_pyramid.h index ebb753882315..297f3b1fff59 100644 --- a/include/constants/battle_pyramid.h +++ b/include/constants/battle_pyramid.h @@ -14,6 +14,13 @@ #define HINT_EXIT_FAR_REMAINING_TRAINERS 7 #define HINT_EXIT_FAR_REMAINING_ITEMS 8 +#define MAX_PYRAMID_TRAINERS 8 + +// Each floor of the Battle Pyramid is 32x32 metatiles, subdivided into a 4x4 grid of 8x8 metatile squares +#define PYRAMID_FLOOR_SQUARES_WIDE 4 +#define PYRAMID_FLOOR_SQUARES_HIGH 4 +#define NUM_PYRAMID_FLOOR_SQUARES (PYRAMID_FLOOR_SQUARES_WIDE * PYRAMID_FLOOR_SQUARES_HIGH) + #define OBJ_TRAINERS 0 #define OBJ_ITEMS 1 diff --git a/include/constants/battle_tent.h b/include/constants/battle_tent.h index 666ada6bd958..6f9989b7adc8 100644 --- a/include/constants/battle_tent.h +++ b/include/constants/battle_tent.h @@ -1,6 +1,12 @@ #ifndef GUARD_CONSTANTS_BATTLE_TENT_H #define GUARD_CONSTANTS_BATTLE_TENT_H +#define TENT_MIN_LEVEL 30 + +// The number of battles in each Battle Tent challenge. +// Battle Tent equivalent of FRONTIER_STAGES_PER_CHALLENGE. +#define TENT_STAGES_PER_CHALLENGE 3 + #define VERDANTURF_TENT_FUNC_INIT 0 #define VERDANTURF_TENT_FUNC_GET_PRIZE 1 #define VERDANTURF_TENT_FUNC_SET_PRIZE 2 diff --git a/include/constants/union_room.h b/include/constants/union_room.h index 6e08c9ebbdc0..f47a8723ff58 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -11,6 +11,8 @@ #define UNION_ROOM_SPAWN_IN 1 #define UNION_ROOM_SPAWN_OUT 2 +#define UNION_ROOM_MAX_LEVEL 30 + #define ACTIVITY_NONE 0 #define ACTIVITY_BATTLE_SINGLE 1 #define ACTIVITY_BATTLE_DOUBLE 2 diff --git a/include/global.h b/include/global.h index 60476b13f1e9..64af518ce890 100644 --- a/include/global.h +++ b/include/global.h @@ -409,7 +409,7 @@ struct BattleFrontier /*0xE1A*/ u16 pyramidWinStreaks[FRONTIER_LVL_MODE_COUNT]; /*0xE1E*/ u16 pyramidRecordStreaks[FRONTIER_LVL_MODE_COUNT]; /*0xE22*/ u16 pyramidRandoms[4]; - /*0xE2A*/ u8 pyramidTrainerFlags; + /*0xE2A*/ u8 pyramidTrainerFlags; // 1 bit for each trainer (MAX_PYRAMID_TRAINERS) /*0xE2C*/ struct PyramidBag pyramidBag; /*0xE68*/ u8 pyramidLightRadius; /*0xE6A*/ u16 verdanturfTentPrize; diff --git a/src/battle_dome.c b/src/battle_dome.c index aadd85afd6b9..5c18cff42230 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -5847,7 +5847,7 @@ static void InitRandomTourneyTreeResults(void) DOME_TRAINERS[i].forfeited = FALSE; } - monLevel = 50; + monLevel = FRONTIER_MAX_LEVEL_50; for (i = 0; i < DOME_TOURNAMENT_TRAINERS_COUNT; i++) { monTypesBits = 0; diff --git a/src/battle_factory.c b/src/battle_factory.c index d88ed37f9500..a68ef81809eb 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -12,15 +12,15 @@ #include "constants/battle_factory.h" #include "constants/battle_frontier.h" #include "constants/battle_frontier_mons.h" +#include "constants/battle_tent.h" #include "constants/frontier_util.h" #include "constants/layouts.h" #include "constants/trainers.h" #include "constants/moves.h" +#include "constants/items.h" -// IWRAM bss static bool8 sPerformedRentalSwap; -// This file's functions. static void InitFactoryChallenge(void); static void GetBattleFactoryData(void); static void SetBattleFactoryData(void); @@ -212,7 +212,7 @@ static void InitFactoryChallenge(void) } sPerformedRentalSwap = FALSE; - for (i = 0; i < 6; i++) + for (i = 0; i < ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); i++) gSaveBlock2Ptr->frontier.rentalMons[i].monId = 0xFFFF; for (i = 0; i < FRONTIER_PARTY_SIZE; i++) gFrontierTempParty[i] = 0xFFFF; @@ -310,11 +310,12 @@ static void GenerateOpponentMons(void) u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); u32 winStreak = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode]; - u32 challengeNum = winStreak / 7; + u32 challengeNum = winStreak / FRONTIER_STAGES_PER_CHALLENGE; gFacilityTrainers = gBattleFrontierTrainers; do { + // Choose a random trainer, ensuring no repeats in this challenge trainerId = GetRandomScaledFrontierTrainerId(challengeNum, gSaveBlock2Ptr->frontier.curChallengeBattleNum); for (i = 0; i < gSaveBlock2Ptr->frontier.curChallengeBattleNum; i++) { @@ -324,27 +325,32 @@ static void GenerateOpponentMons(void) } while (i != gSaveBlock2Ptr->frontier.curChallengeBattleNum); gTrainerBattleOpponent_A = trainerId; - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 6) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < FRONTIER_STAGES_PER_CHALLENGE - 1) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum] = trainerId; i = 0; while (i != FRONTIER_PARTY_SIZE) { u16 monId = GetFactoryMonId(lvlMode, challengeNum, FALSE); + + // Unown (FRONTIER_MON_UNOWN) is forbidden on opponent Factory teams. if (gFacilityTrainerMons[monId].species == SPECIES_UNOWN) continue; - for (j = 0; j < 6; j++) + // Ensure none of the opponent's pokemon are the same as the potential rental pokemon 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) break; } - if (j != 6) + if (j != (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons)) continue; + // "High tier" pokemon are only allowed on open level mode if (lvlMode == FRONTIER_LVL_50 && monId > FRONTIER_MONS_HIGH_TIER) continue; + // Ensure this species hasn't already been chosen for the opponent for (k = firstMonId; k < firstMonId + i; k++) { if (species[k] == gFacilityTrainerMons[monId].species) @@ -353,14 +359,16 @@ static void GenerateOpponentMons(void) if (k != firstMonId + i) continue; + // Ensure held items don't repeat on the opponent's team for (k = firstMonId; k < firstMonId + i; k++) { - if (heldItems[k] != 0 && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) + if (heldItems[k] != ITEM_NONE && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) break; } if (k != firstMonId + i) continue; + // Successful selection species[i] = gFacilityTrainerMons[monId].species; heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]; gFrontierTempParty[i] = monId; @@ -406,15 +414,15 @@ static void SetPlayerAndOpponentParties(void) if (gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_TENT) { gFacilityTrainerMons = gSlateportBattleTentMons; - monLevel = 30; + monLevel = TENT_MIN_LEVEL; } else { gFacilityTrainerMons = gBattleFrontierMons; if (gSaveBlock2Ptr->frontier.lvlMode != FRONTIER_LVL_50) - monLevel = 100; + monLevel = FRONTIER_MAX_LEVEL_OPEN; else - monLevel = 50; + monLevel = FRONTIER_MAX_LEVEL_50; } if (gSpecialVar_0x8005 < 2) @@ -618,9 +626,9 @@ static void GetOpponentMostCommonMonType(void) // Determine which are the two most-common types. // The second most-common type is only updated if // its count is equal to the most-common type. - mostCommonTypes[0] = TYPE_NORMAL; - mostCommonTypes[1] = TYPE_NORMAL; - for (i = TYPE_FIGHTING; i < NUMBER_OF_MON_TYPES; i++) + mostCommonTypes[0] = 0; + mostCommonTypes[1] = 0; + for (i = 1; i < NUMBER_OF_MON_TYPES; i++) { if (typeCounts[mostCommonTypes[0]] < typeCounts[i]) mostCommonTypes[0] = i; @@ -765,15 +773,15 @@ void FillFactoryBrainParty(void) if (gFacilityTrainerMons[monId].species == SPECIES_UNOWN) continue; - if (monLevel == 50 && monId > FRONTIER_MONS_HIGH_TIER) + if (monLevel == FRONTIER_MAX_LEVEL_50 && monId > FRONTIER_MONS_HIGH_TIER) continue; - for (j = 0; j < 6; j++) + for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++) { if (monId == gSaveBlock2Ptr->frontier.rentalMons[j].monId) break; } - if (j != 6) + if (j != (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons)) continue; for (k = 0; k < i; k++) @@ -786,7 +794,7 @@ void FillFactoryBrainParty(void) for (k = 0; k < i; k++) { - if (heldItems[k] != 0 && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) + if (heldItems[k] != ITEM_NONE && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]) break; } if (k != i) diff --git a/src/battle_pike.c b/src/battle_pike.c index 2b0cf6420501..6c97c99fc0a0 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -684,7 +684,7 @@ static void SetBattlePikeData(void) static void IsNextRoomFinal(void) { - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum > 14) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum > NUM_PIKE_ROOMS) gSpecialVar_Result = TRUE; else gSpecialVar_Result = FALSE; @@ -1117,20 +1117,20 @@ bool32 TryGenerateBattlePikeWildMon(bool8 checkKeenEyeIntimidate) if (gSaveBlock2Ptr->frontier.lvlMode != FRONTIER_LVL_50) { monLevel = GetHighestLevelInPlayerParty(); - if (monLevel < 60) + if (monLevel < FRONTIER_MIN_LEVEL_OPEN) { - monLevel = 60; + monLevel = FRONTIER_MIN_LEVEL_OPEN; } else { monLevel -= wildMons[headerId][pikeMonId].levelDelta; - if (monLevel < 60) - monLevel = 60; + if (monLevel < FRONTIER_MIN_LEVEL_OPEN) + monLevel = FRONTIER_MIN_LEVEL_OPEN; } } else { - monLevel = 50 - wildMons[headerId][pikeMonId].levelDelta; + monLevel = FRONTIER_MAX_LEVEL_50 - wildMons[headerId][pikeMonId].levelDelta; } if (checkKeenEyeIntimidate == TRUE && !CanEncounterWildMon(monLevel)) @@ -1395,7 +1395,7 @@ static void PrepareOneTrainer(bool8 difficult) battleNum = 6; lvlMode = gSaveBlock2Ptr->frontier.lvlMode; - challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / 14; + challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / NUM_PIKE_ROOMS; do { trainerId = GetRandomScaledFrontierTrainerId(challengeNum, battleNum); @@ -1409,7 +1409,7 @@ static void PrepareOneTrainer(bool8 difficult) gTrainerBattleOpponent_A = trainerId; gFacilityTrainers = gBattleFrontierTrainers; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 14) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < NUM_PIKE_ROOMS) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum - 1] = gTrainerBattleOpponent_A; } @@ -1418,7 +1418,7 @@ static void PrepareTwoTrainers(void) int i; u16 trainerId; u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; - u16 challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / 14; + u16 challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / NUM_PIKE_ROOMS; gFacilityTrainers = gBattleFrontierTrainers; do @@ -1433,7 +1433,7 @@ static void PrepareTwoTrainers(void) gTrainerBattleOpponent_A = trainerId; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum <= 14) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum <= NUM_PIKE_ROOMS) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum - 1] = gTrainerBattleOpponent_A; do @@ -1448,7 +1448,7 @@ static void PrepareTwoTrainers(void) gTrainerBattleOpponent_B = trainerId; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_B, 1); - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 14) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < NUM_PIKE_ROOMS) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum - 2] = gTrainerBattleOpponent_B; } @@ -1456,7 +1456,7 @@ static void ClearPikeTrainerIds(void) { u8 i; - for (i = 0; i < 14; i++) + for (i = 0; i < NUM_PIKE_ROOMS; i++) gSaveBlock2Ptr->frontier.trainerIds[i] = 0xFFFF; } diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 9039f60f2cda..bbd4c84dc985 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -279,9 +279,9 @@ static const u8 sPyramidFloorTemplateOptions[][2] = {100, 15} }; -static const u8 sFloorTemplateOffsets[] = +static const u8 sFloorTemplateOffsets[FRONTIER_STAGES_PER_CHALLENGE] = { - 0, 4, 9, 14, 19, 24, 29, 0 + 0, 4, 9, 14, 19, 24, 29 }; static const u16 sPickupItemsLvl50[TOTAL_ROUNDS][PICKUP_ITEMS_PER_ROUND] = @@ -406,7 +406,7 @@ static const u8 sPickupItemSlots[][2] = {100, 9}, }; -static const u8 sPickupItemOffsets[] = {0, 9, 18, 27, 36, 45, 54}; +static const u8 sPickupItemOffsets[FRONTIER_STAGES_PER_CHALLENGE] = {0, 9, 18, 27, 36, 45, 54}; static const struct PyramidTrainerEncounterMusic sTrainerClassEncounterMusic[54] = { @@ -963,7 +963,7 @@ static void SeedPyramidFloor(void) { int i; - for (i = 0; i < 4; i++) + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.pyramidRandoms); i++) gSaveBlock2Ptr->frontier.pyramidRandoms[i] = Random(); gSaveBlock2Ptr->frontier.pyramidTrainerFlags = 0; @@ -977,7 +977,7 @@ static void SetPickupItem(void) u8 id; u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u32 floor = gSaveBlock2Ptr->frontier.curChallengeBattleNum; - u32 round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / 7) % TOTAL_ROUNDS; + u32 round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / FRONTIER_STAGES_PER_CHALLENGE) % TOTAL_ROUNDS; if (round >= TOTAL_ROUNDS) round = TOTAL_ROUNDS - 1; @@ -1016,8 +1016,8 @@ static void HidePyramidItem(void) { // Rather than using event flags to hide the item object event, // it moves them far off the map bounds. - events[i].x = 0x7FFF; - events[i].y = 0x7FFF; + events[i].x = SHRT_MAX; + events[i].y = SHRT_MAX; break; } i++; @@ -1063,7 +1063,7 @@ static void ShowPostBattleHintText(void) case HINT_REMAINING_ITEMS: for (i = 0; i < GetNumBattlePyramidObjectEvents(); i++) { - if (events[i].graphicsId == OBJ_EVENT_GFX_ITEM_BALL && events[i].x != 0x7FFF && events[i].y != 0x7FFF) + if (events[i].graphicsId == OBJ_EVENT_GFX_ITEM_BALL && events[i].x != SHRT_MAX && events[i].y != SHRT_MAX) textIndex++; } i = 1; @@ -1071,7 +1071,7 @@ static void ShowPostBattleHintText(void) case HINT_REMAINING_TRAINERS: id = GetPyramidFloorTemplateId(); textIndex = sPyramidFloorTemplates[id].numTrainers; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_PYRAMID_TRAINERS; i++) { if (gBitTable[i] & gSaveBlock2Ptr->frontier.pyramidTrainerFlags) textIndex--; @@ -1326,7 +1326,7 @@ static void MarkPyramidTrainerAsBattled(u16 trainerId) { int i; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_PYRAMID_TRAINERS; i++) { if (gSaveBlock2Ptr->frontier.trainerIds[i] == trainerId) gSaveBlock2Ptr->frontier.pyramidTrainerFlags |= gBitTable[i]; @@ -1345,7 +1345,7 @@ void GenerateBattlePyramidWildMon(void) const struct PyramidWildMon *wildMons; u32 id; u32 lvl = gSaveBlock2Ptr->frontier.lvlMode; - u16 round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvl] / 7) % TOTAL_ROUNDS; + u16 round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvl] / FRONTIER_STAGES_PER_CHALLENGE) % TOTAL_ROUNDS; if (round >= TOTAL_ROUNDS) round = TOTAL_ROUNDS - 1; @@ -1488,13 +1488,13 @@ static u16 GetUniqueTrainerId(u8 objectEventId) int i; u16 trainerId; u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; - u32 challengeNum = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / 7; - u32 battleNum = gSaveBlock2Ptr->frontier.curChallengeBattleNum; - if (battleNum == 7) + u32 challengeNum = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; + u32 floor = gSaveBlock2Ptr->frontier.curChallengeBattleNum; + if (floor == FRONTIER_STAGES_PER_CHALLENGE) { do { - trainerId = GetRandomScaledFrontierTrainerId(challengeNum + 1, battleNum); + trainerId = GetRandomScaledFrontierTrainerId(challengeNum + 1, floor); for (i = 0; i < objectEventId; i++) { if (gSaveBlock2Ptr->frontier.trainerIds[i] == trainerId) @@ -1506,7 +1506,7 @@ static u16 GetUniqueTrainerId(u8 objectEventId) { do { - trainerId = GetRandomScaledFrontierTrainerId(challengeNum, battleNum); + trainerId = GetRandomScaledFrontierTrainerId(challengeNum, floor); for (i = 0; i < objectEventId; i++) { if (gSaveBlock2Ptr->frontier.trainerIds[i] == trainerId) @@ -1523,11 +1523,11 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio int y, x; int i; u8 entranceSquareId, exitSquareId; - u8 *floorLayoutOffsets = AllocZeroed(16); + u8 *floorLayoutOffsets = AllocZeroed(NUM_PYRAMID_FLOOR_SQUARES); GetPyramidFloorLayoutOffsets(floorLayoutOffsets); GetPyramidEntranceAndExitSquareIds(&entranceSquareId, &exitSquareId); - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_PYRAMID_FLOOR_SQUARES; i++) { u16 *map; int yOffset, xOffset; @@ -1535,11 +1535,11 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio const u16 *layoutMap = mapLayout->map; gBackupMapLayout.map = backupMapData; - gBackupMapLayout.width = mapLayout->width * 4 + MAP_OFFSET_W; - gBackupMapLayout.height = mapLayout->height * 4 + MAP_OFFSET_H; + gBackupMapLayout.width = mapLayout->width * PYRAMID_FLOOR_SQUARES_WIDE + MAP_OFFSET_W; + gBackupMapLayout.height = mapLayout->height * PYRAMID_FLOOR_SQUARES_HIGH + MAP_OFFSET_H; map = backupMapData; - yOffset = ((i / 4 * mapLayout->height) + MAP_OFFSET) * gBackupMapLayout.width; - xOffset = (i % 4 * mapLayout->width) + MAP_OFFSET; + yOffset = ((i / PYRAMID_FLOOR_SQUARES_WIDE * mapLayout->height) + MAP_OFFSET) * gBackupMapLayout.width; + xOffset = (i % PYRAMID_FLOOR_SQUARES_WIDE * mapLayout->width) + MAP_OFFSET; map += yOffset + xOffset; for (y = 0; y < mapLayout->height; y++) { @@ -1553,8 +1553,8 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio { if (i == entranceSquareId && setPlayerPosition == FALSE) { - gSaveBlock1Ptr->pos.x = (mapLayout->width * (i % 4)) + x; - gSaveBlock1Ptr->pos.y = (mapLayout->height * (i / 4)) + y; + gSaveBlock1Ptr->pos.x = (mapLayout->width * (i % PYRAMID_FLOOR_SQUARES_WIDE)) + x; + gSaveBlock1Ptr->pos.y = (mapLayout->height * (i / PYRAMID_FLOOR_SQUARES_WIDE)) + y; } map[x] = (layoutMap[x] & (MAPGRID_ELEVATION_MASK | MAPGRID_COLLISION_MASK)) | METATILE_BattlePyramid_Floor; } @@ -1563,7 +1563,7 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio map[x] = layoutMap[x]; } } - map += MAP_OFFSET_W + (mapLayout->width * 4); + map += MAP_OFFSET_W + (mapLayout->width * PYRAMID_FLOOR_SQUARES_WIDE); layoutMap += mapLayout->width; } } @@ -1577,7 +1577,7 @@ void LoadBattlePyramidObjectEventTemplates(void) u8 id; u8 entranceSquareId, exitSquareId; - for (i = 0; i < 8; i++) + for (i = 0; i < MAX_PYRAMID_TRAINERS; i++) gSaveBlock2Ptr->frontier.trainerIds[i] = 0xFFFF; id = GetPyramidFloorTemplateId(); @@ -1633,13 +1633,13 @@ void LoadBattlePyramidFloorObjectEventScripts(void) static void GetPyramidEntranceAndExitSquareIds(u8 *entranceSquareId, u8 *exitSquareId) { - *entranceSquareId = gSaveBlock2Ptr->frontier.pyramidRandoms[3] % 16; - *exitSquareId = gSaveBlock2Ptr->frontier.pyramidRandoms[0] % 16; + *entranceSquareId = gSaveBlock2Ptr->frontier.pyramidRandoms[3] % NUM_PYRAMID_FLOOR_SQUARES; + *exitSquareId = gSaveBlock2Ptr->frontier.pyramidRandoms[0] % NUM_PYRAMID_FLOOR_SQUARES; if (*entranceSquareId == *exitSquareId) { - *entranceSquareId = (gSaveBlock2Ptr->frontier.pyramidRandoms[3] + 1 ) % 16; - *exitSquareId = (gSaveBlock2Ptr->frontier.pyramidRandoms[0] + 15) % 16; + *entranceSquareId = (gSaveBlock2Ptr->frontier.pyramidRandoms[3] + 1 ) % NUM_PYRAMID_FLOOR_SQUARES; + *exitSquareId = (gSaveBlock2Ptr->frontier.pyramidRandoms[0] + NUM_PYRAMID_FLOOR_SQUARES - 1) % NUM_PYRAMID_FLOOR_SQUARES; } } @@ -1651,10 +1651,10 @@ static void SetPyramidObjectPositionsUniformly(u8 objType) int squareId; u32 bits = 0; u8 id = GetPyramidFloorTemplateId(); - u8 *floorLayoutOffsets = AllocZeroed(16); + u8 *floorLayoutOffsets = AllocZeroed(NUM_PYRAMID_FLOOR_SQUARES); GetPyramidFloorLayoutOffsets(floorLayoutOffsets); - squareId = gSaveBlock2Ptr->frontier.pyramidRandoms[2] % 16; + squareId = gSaveBlock2Ptr->frontier.pyramidRandoms[2] % NUM_PYRAMID_FLOOR_SQUARES; if (objType == OBJ_TRAINERS) { numObjects = sPyramidFloorTemplates[id].numTrainers; @@ -1682,10 +1682,10 @@ static void SetPyramidObjectPositionsUniformly(u8 objType) if (gBitTable[squareId] & gSaveBlock2Ptr->frontier.pyramidRandoms[3]) bits |= 2; } - if (++squareId >= 16) + if (++squareId >= NUM_PYRAMID_FLOOR_SQUARES) squareId = 0; - if (squareId == gSaveBlock2Ptr->frontier.pyramidRandoms[2] % 16) + if (squareId == gSaveBlock2Ptr->frontier.pyramidRandoms[2] % NUM_PYRAMID_FLOOR_SQUARES) { if (bits & 1) bits |= 6; @@ -1709,7 +1709,7 @@ static bool8 SetPyramidObjectPositionsInAndNearSquare(u8 objType, u8 squareId) int numPlacedObjects = 0; int numObjects; u8 id = GetPyramidFloorTemplateId(); - u8 *floorLayoutOffsets = AllocZeroed(16); + u8 *floorLayoutOffsets = AllocZeroed(NUM_PYRAMID_FLOOR_SQUARES); GetPyramidFloorLayoutOffsets(floorLayoutOffsets); if (objType == OBJ_TRAINERS) @@ -1775,7 +1775,7 @@ static bool8 SetPyramidObjectPositionsNearSquare(u8 objType, u8 squareId) int r8 = 0; int numObjects; u8 id = GetPyramidFloorTemplateId(); - u8 *floorLayoutOffsets = AllocZeroed(16); + u8 *floorLayoutOffsets = AllocZeroed(NUM_PYRAMID_FLOOR_SQUARES); GetPyramidFloorLayoutOffsets(floorLayoutOffsets); if (objType == OBJ_TRAINERS) @@ -1900,7 +1900,7 @@ static void GetPyramidFloorLayoutOffsets(u8 *layoutOffsets) int rand = (gSaveBlock2Ptr->frontier.pyramidRandoms[0]) | (gSaveBlock2Ptr->frontier.pyramidRandoms[1] << 16); u8 id = GetPyramidFloorTemplateId(); - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_PYRAMID_FLOOR_SQUARES; i++) { layoutOffsets[i] = sPyramidFloorTemplates[id].layoutOffsets[rand & 0x7]; rand >>= 3; @@ -1931,7 +1931,7 @@ u8 GetNumBattlePyramidObjectEvents(void) u8 i; struct ObjectEventTemplate *events = gSaveBlock1Ptr->objectEventTemplates; - for (i = 0; i < 16; i++) + for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { if (events[i].localId == 0) break; @@ -1959,7 +1959,7 @@ u16 GetBattlePyramidPickupItemId(void) int rand; u32 i; u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; - int round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / 7); + int round = (gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / FRONTIER_STAGES_PER_CHALLENGE); if (round >= TOTAL_ROUNDS) round = TOTAL_ROUNDS - 1; diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index d1b946146560..66b4cd97d1ca 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -1410,7 +1410,7 @@ void TryStoreHeldItemsInPyramidBag(void) memcpy(newItems, gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); memcpy(newQuantities, gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); - for (i = 0; i < 3; i++) + for (i = 0; i < FRONTIER_PARTY_SIZE; i++) { heldItem = GetMonData(&party[i], MON_DATA_HELD_ITEM); if (heldItem != ITEM_NONE && !AddBagItem(heldItem, 1)) @@ -1426,10 +1426,8 @@ void TryStoreHeldItemsInPyramidBag(void) } heldItem = ITEM_NONE; - for (i = 0; i < 3; i++) - { + for (i = 0; i < FRONTIER_PARTY_SIZE; i++) SetMonData(&party[i], MON_DATA_HELD_ITEM, &heldItem); - } gSpecialVar_Result = 0; Free(newItems); Free(newQuantities); diff --git a/src/battle_tent.c b/src/battle_tent.c index 53c91c87137c..dba9e6e8a013 100644 --- a/src/battle_tent.c +++ b/src/battle_tent.c @@ -56,10 +56,8 @@ static void GenerateInitialRentalMons(void); * */ -// IWRAM bss -static u16 sRandMonSetId; +static u16 sRandMonId; -// const rom data void static (*const sVerdanturfTentFuncs[])(void) = { [VERDANTURF_TENT_FUNC_INIT] = InitVerdanturfTentChallenge, @@ -357,7 +355,7 @@ static void GenerateOpponentMons(void) const u16 *monSet; u16 species[FRONTIER_PARTY_SIZE]; u16 heldItems[FRONTIER_PARTY_SIZE]; - s32 monId = 0; + s32 numMons = 0; gFacilityTrainers = gSlateportBattleTentTrainers; gFacilityTrainerMons = gSlateportBattleTentMons; @@ -366,6 +364,7 @@ static void GenerateOpponentMons(void) { do { + // Choose a random trainer, ensuring no repeats in this challenge trainerId = Random() % NUM_BATTLE_TENT_TRAINERS; for (i = 0; i < gSaveBlock2Ptr->frontier.curChallengeBattleNum; i++) { @@ -376,48 +375,53 @@ static void GenerateOpponentMons(void) gTrainerBattleOpponent_A = trainerId; monSet = gFacilityTrainers[gTrainerBattleOpponent_A].monSet; - while (monSet[monId] != 0xFFFF) - monId++; - if (monId > 8) + while (monSet[numMons] != 0xFFFF) + numMons++; + if (numMons > 8) break; - monId = 0; + numMons = 0; } - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 2) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < TENT_STAGES_PER_CHALLENGE - 1) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum] = gTrainerBattleOpponent_A; monSet = gFacilityTrainers[gTrainerBattleOpponent_A].monSet; i = 0; while (i != FRONTIER_PARTY_SIZE) { - sRandMonSetId = monSet[Random() % monId]; - for (j = 0; j < 6; j++) + sRandMonId = monSet[Random() % numMons]; + + // Ensure none of the opponent's pokemon are the same as the potential rental pokemon for the player + for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++) { - if (gFacilityTrainerMons[sRandMonSetId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species) + if (gFacilityTrainerMons[sRandMonId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species) break; } - if (j != 6) + if (j != (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons)) continue; + // Ensure this species hasn't already been chosen for the opponent for (k = 0; k < i; k++) { - if (species[k] == gFacilityTrainerMons[sRandMonSetId].species) + if (species[k] == gFacilityTrainerMons[sRandMonId].species) break; } if (k != i) continue; + // Ensure held items don't repeat on the opponent's team for (k = 0; k < i; k++) { - if (heldItems[k] != 0 && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[sRandMonSetId].itemTableId]) + if (heldItems[k] != ITEM_NONE && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[sRandMonId].itemTableId]) break; } if (k != i) continue; - species[i] = gFacilityTrainerMons[sRandMonSetId].species; - heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[sRandMonSetId].itemTableId]; - gFrontierTempParty[i] = sRandMonSetId; + // Successful selection + species[i] = gFacilityTrainerMons[sRandMonId].species; + heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[sRandMonId].itemTableId]; + gFrontierTempParty[i] = sRandMonId; i++; } } diff --git a/src/battle_tower.c b/src/battle_tower.c index e652038ac071..839b99b2421c 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -27,6 +27,7 @@ #include "constants/battle_dome.h" #include "constants/battle_frontier.h" #include "constants/battle_frontier_mons.h" +#include "constants/battle_tent.h" #include "constants/battle_tent_mons.h" #include "constants/battle_tent_trainers.h" #include "constants/battle_tower.h" @@ -1060,7 +1061,7 @@ static void SetNextFacilityOpponent(void) u16 id; u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); u16 winStreak = GetCurrentFacilityWinStreak(); - u32 challengeNum = winStreak / 7; + u32 challengeNum = winStreak / FRONTIER_STAGES_PER_CHALLENGE; SetFacilityPtrsGetLevel(); if (battleMode == FRONTIER_MODE_MULTIS || battleMode == FRONTIER_MODE_LINK_MULTIS) @@ -1095,7 +1096,7 @@ static void SetNextFacilityOpponent(void) gTrainerBattleOpponent_A = id; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum + 1 < 7) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum + 1 < FRONTIER_STAGES_PER_CHALLENGE) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum] = gTrainerBattleOpponent_A; } } @@ -1107,7 +1108,7 @@ u16 GetRandomScaledFrontierTrainerId(u8 challengeNum, u8 battleNum) if (challengeNum <= 7) { - if (battleNum == 6) + if (battleNum == FRONTIER_STAGES_PER_CHALLENGE - 1) { // The last battle in each challenge has a jump in difficulty, pulls from a table with higher ranges trainerId = (sFrontierTrainerIdRangesHard[challengeNum][1] - sFrontierTrainerIdRangesHard[challengeNum][0]) + 1; @@ -1136,7 +1137,7 @@ static void GetRandomScaledFrontierTrainerIdRange(u8 challengeNum, u8 battleNum, if (challengeNum <= 7) { - if (battleNum == 6) + if (battleNum == FRONTIER_STAGES_PER_CHALLENGE - 1) { // The last battle in each challenge has a jump in difficulty, pulls from a table with higher ranges range = (sFrontierTrainerIdRangesHard[challengeNum][1] - sFrontierTrainerIdRangesHard[challengeNum][0]) + 1; @@ -1691,7 +1692,10 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) while (i != monCount) { u16 monId = monSet[Random() % bfMonCount]; - if ((level == 50 || level == 20) && monId > FRONTIER_MONS_HIGH_TIER) + + // "High tier" pokemon 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. @@ -1767,9 +1771,9 @@ static void Unused_CreateApprenticeMons(u16 trainerId, u8 firstMonId) fixedIV = 9; if (gSaveBlock2Ptr->frontier.lvlMode != FRONTIER_LVL_50) - level = 100; + level = FRONTIER_MAX_LEVEL_OPEN; else - level = 50; + level = FRONTIER_MAX_LEVEL_50; for (i = 0; i != 3; i++) { @@ -1802,8 +1806,10 @@ u16 GetRandomFrontierMonFromSet(u16 trainerId) do { + // "High tier" pokemon are only allowed on open level mode + // 20 is not a possible value for level here monId = monSet[Random() % numMons]; - } while((level == 50 || level == 20) && monId > FRONTIER_MONS_HIGH_TIER); + } while((level == FRONTIER_MAX_LEVEL_50 || level == 20) && monId > FRONTIER_MONS_HIGH_TIER); return monId; } @@ -1831,11 +1837,11 @@ static void FillFactoryFrontierTrainerParty(u16 trainerId, u8 firstMonId) u8 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); // By mistake Battle Tower's Level 50 challenge number is used to determine the IVs for Battle Factory. #ifdef BUGFIX - u8 challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7; + u8 challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; #else - u8 challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][FRONTIER_LVL_50] / 7; + u8 challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][FRONTIER_LVL_50] / FRONTIER_STAGES_PER_CHALLENGE; #endif - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < 6) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum < FRONTIER_STAGES_PER_CHALLENGE - 1) fixedIV = GetFactoryMonFixedIV(challengeNum, FALSE); else fixedIV = GetFactoryMonFixedIV(challengeNum, TRUE); // Last trainer in challenge uses higher IVs @@ -1882,7 +1888,7 @@ static void FillFactoryTentTrainerParty(u16 trainerId, u8 firstMonId) { u8 i, j; u8 friendship; - u8 level = 30; + u8 level = TENT_MIN_LEVEL; u8 fixedIV = 0; u32 otID = T1_READ_32(gSaveBlock2Ptr->playerTrainerId); @@ -2043,7 +2049,7 @@ void DoSpecialTrainerBattle(void) break; case SPECIAL_BATTLE_EREADER: ZeroEnemyPartyMons(); - for (i = 0; i < 3; i++) + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.ereaderTrainer.party); i++) CreateBattleTowerMon(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.ereaderTrainer.party[i]); gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_EREADER_TRAINER; gTrainerBattleOpponent_A = 0; @@ -2189,7 +2195,7 @@ static void SaveTowerChallenge(void) { u16 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u16 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); - s32 challengeNum = (signed)(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / 7); + s32 challengeNum = (signed)(gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE); if (gSpecialVar_0x8005 == 0 && (challengeNum > 1 || gSaveBlock2Ptr->frontier.curChallengeBattleNum != 0)) SaveBattleTowerRecord(); @@ -2279,7 +2285,7 @@ static void LoadMultiPartnerCandidatesData(void) objEventTemplates = gSaveBlock1Ptr->objectEventTemplates; lvlMode = gSaveBlock2Ptr->frontier.lvlMode; battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); - challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; species1 = GetMonData(&gPlayerParty[0], MON_DATA_SPECIES, NULL); species2 = GetMonData(&gPlayerParty[1], MON_DATA_SPECIES, NULL); level = SetFacilityPtrsGetLevel(); @@ -2338,7 +2344,7 @@ static void LoadMultiPartnerCandidatesData(void) for (i = 0; i < APPRENTICE_COUNT; i++) { if (gSaveBlock2Ptr->apprentices[i].lvlMode != 0 - && sApprenticeChallengeThreshold[gSaveBlock2Ptr->apprentices[i].numQuestions] / 7 <= challengeNum + && sApprenticeChallengeThreshold[gSaveBlock2Ptr->apprentices[i].numQuestions] / FRONTIER_STAGES_PER_CHALLENGE <= challengeNum && gSaveBlock2Ptr->apprentices[i].lvlMode - 1 == lvlMode) { k = 0; @@ -2377,7 +2383,7 @@ static void LoadMultiPartnerCandidatesData(void) checksum += record[j]; } - if (gSaveBlock2Ptr->frontier.towerRecords[i].winStreak / 7 <= challengeNum + if (gSaveBlock2Ptr->frontier.towerRecords[i].winStreak / FRONTIER_STAGES_PER_CHALLENGE <= challengeNum && gSaveBlock2Ptr->frontier.towerRecords[i].lvlMode == lvlMode && recordHasData && gSaveBlock2Ptr->frontier.towerRecords[i].checksum == checksum) @@ -2458,7 +2464,7 @@ static void ShowPartnerCandidateMessage(void) s32 monId; s32 level = SetFacilityPtrsGetLevel(); u16 winStreak = GetCurrentFacilityWinStreak(); - s32 challengeNum = winStreak / 7; + s32 challengeNum = winStreak / FRONTIER_STAGES_PER_CHALLENGE; s32 k = gSpecialVar_LastTalked - 2; s32 trainerId = gSaveBlock2Ptr->frontier.trainerIds[k]; @@ -2517,7 +2523,7 @@ static void ShowPartnerCandidateMessage(void) gSaveBlock2Ptr->frontier.trainerIds[18] = gFrontierTempParty[0]; gSaveBlock2Ptr->frontier.trainerIds[19] = gFrontierTempParty[1]; } - for (k = 0; k < 14; k++) + for (k = 0; k < FRONTIER_STAGES_PER_CHALLENGE * 2; k++) { while (1) { @@ -2576,7 +2582,7 @@ static void LoadLinkMultiOpponentsData(void) case 0: if (battleMode == FRONTIER_MODE_LINK_MULTIS) { - challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; if (IsLinkTaskFinished()) { SendBlock(BitmaskAllOtherLinkPlayers(), &challengeNum, sizeof(challengeNum)); @@ -2596,7 +2602,7 @@ static void LoadLinkMultiOpponentsData(void) challengeNum = gBlockRecvBuffer[0][0]; else challengeNum = gBlockRecvBuffer[1][0]; - for (i = 0; i < 14; i++) + for (i = 0; i < FRONTIER_STAGES_PER_CHALLENGE * 2; i++) { do { @@ -2840,7 +2846,7 @@ static void FillEReaderTrainerWithPlayerData(void) ereaderTrainer->winStreak = 1; j = 7; - for (i = 0; i < 6; i++) + for (i = 0; i < EASY_CHAT_BATTLE_WORDS_COUNT; i++) { ereaderTrainer->greeting[i] = gSaveBlock1Ptr->easyChatBattleStart[i]; ereaderTrainer->farewellPlayerLost[i] = j; @@ -2848,7 +2854,7 @@ static void FillEReaderTrainerWithPlayerData(void) j++; } - for (i = 0; i < 3; i++) + for (i = 0; i < (int)ARRAY_COUNT(ereaderTrainer->party); i++) ConvertPokemonToBattleTowerPokemon(&gPlayerParty[i], &ereaderTrainer->party[i]); SetEReaderTrainerChecksum(ereaderTrainer); @@ -3246,12 +3252,12 @@ u8 GetFrontierEnemyMonLevel(u8 lvlMode) { default: case FRONTIER_LVL_50: - level = 50; + level = FRONTIER_MAX_LEVEL_50; break; case FRONTIER_LVL_OPEN: level = GetHighestLevelInPlayerParty(); - if (level < 60) - level = 60; + if (level < FRONTIER_MIN_LEVEL_OPEN) + level = FRONTIER_MIN_LEVEL_OPEN; break; } @@ -3321,7 +3327,7 @@ static u16 GetBattleTentTrainerId(void) static u8 SetTentPtrsGetLevel(void) { - u8 level = 30; + u8 level = TENT_MIN_LEVEL; u32 facility = VarGet(VAR_FRONTIER_FACILITY); if (facility == FRONTIER_FACILITY_FACTORY) @@ -3346,8 +3352,8 @@ static u8 SetTentPtrsGetLevel(void) } level = GetHighestLevelInPlayerParty(); - if (level < 30) - level = 30; + if (level < TENT_MIN_LEVEL) + level = TENT_MIN_LEVEL; return level; } @@ -3369,7 +3375,7 @@ static void SetNextBattleTentOpponent(void) gTrainerBattleOpponent_A = trainerId; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum + 1 < 3) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum + 1 < TENT_STAGES_PER_CHALLENGE) gSaveBlock2Ptr->frontier.trainerIds[gSaveBlock2Ptr->frontier.curChallengeBattleNum] = gTrainerBattleOpponent_A; } diff --git a/src/data/battle_frontier/battle_pyramid_open_level_wild_mons.h b/src/data/battle_frontier/battle_pyramid_open_level_wild_mons.h index 8738b0de6464..f09448b82c5a 100644 --- a/src/data/battle_frontier/battle_pyramid_open_level_wild_mons.h +++ b/src/data/battle_frontier/battle_pyramid_open_level_wild_mons.h @@ -1038,7 +1038,7 @@ static const struct PyramidWildMon sOpenLevelWildMons_Round20[] = } }; -static const struct PyramidWildMon *const sOpenLevelWildMonPointers[] = +static const struct PyramidWildMon *const sOpenLevelWildMonPointers[TOTAL_ROUNDS] = { sOpenLevelWildMons_Round1, sOpenLevelWildMons_Round2, diff --git a/src/frontier_util.c b/src/frontier_util.c index 03d7b0cb519a..a08ccad4fdc0 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -29,6 +29,7 @@ #include "load_save.h" #include "battle_dome.h" #include "constants/battle_frontier.h" +#include "constants/battle_pike.h" #include "constants/frontier_util.h" #include "constants/trainers.h" #include "constants/game_stat.h" @@ -968,7 +969,7 @@ static void PrintHyphens(s32 y) s32 i; u8 text[37]; - for (i = 0; i < 36; i++) + for (i = 0; i < (int)ARRAY_COUNT(text) - 1; i++) text[i] = CHAR_HYPHEN; text[i] = EOS; @@ -1860,25 +1861,25 @@ static void GiveBattlePoints(void) switch (facility) { case FRONTIER_FACILITY_TOWER: - challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; break; case FRONTIER_FACILITY_DOME: challengeNum = gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode]; break; case FRONTIER_FACILITY_PALACE: - challengeNum = gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; break; case FRONTIER_FACILITY_ARENA: - challengeNum = gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.arenaWinStreaks[lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; break; case FRONTIER_FACILITY_FACTORY: - challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; break; case FRONTIER_FACILITY_PIKE: - challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / 14; + challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / NUM_PIKE_ROOMS; break; case FRONTIER_FACILITY_PYRAMID: - challengeNum = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / 7; + challengeNum = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode] / FRONTIER_STAGES_PER_CHALLENGE; break; } @@ -1982,7 +1983,7 @@ static void AppendIfValid(u16 species, u16 heldItem, u16 hp, u8 lvlMode, u8 monL if (gFrontierBannedSpecies[i] != 0xFFFF) return; - if (lvlMode == FRONTIER_LVL_50 && monLevel > 50) + if (lvlMode == FRONTIER_LVL_50 && monLevel > FRONTIER_MAX_LEVEL_50) return; for (i = 0; i < *count && speciesArray[i] != species; i++) diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 363f2bc06132..9eaa035cafc7 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -12,6 +12,7 @@ #include "string_util.h" #include "task.h" #include "text.h" +#include "constants/battle_frontier.h" #include "constants/layouts.h" #include "constants/region_map_sections.h" #include "constants/weather.h" @@ -185,7 +186,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[] = +static const u8 * const sBattlePyramid_MapHeaderStrings[FRONTIER_STAGES_PER_CHALLENGE + 1] = { sText_PyramidFloor1, sText_PyramidFloor2, @@ -309,7 +310,7 @@ static void ShowMapNamePopUpWindow(void) if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP) { withoutPrefixPtr = &(mapDisplayHeader[3]); - mapDisplayHeaderSource = sBattlePyramid_MapHeaderStrings[7]; + mapDisplayHeaderSource = sBattlePyramid_MapHeaderStrings[FRONTIER_STAGES_PER_CHALLENGE]; } else { diff --git a/src/mystery_gift_client.c b/src/mystery_gift_client.c index eeebec5d689e..bd177e6f81f5 100644 --- a/src/mystery_gift_client.c +++ b/src/mystery_gift_client.c @@ -202,7 +202,7 @@ static u32 Client_Run(struct MysteryGiftClient * client) MysteryGiftLink_InitSend(&client->link, MG_LINKID_GAME_DATA, client->sendBuffer, sizeof(struct MysteryGiftLinkGameData)); break; case CLI_LOAD_TOSS_RESPONSE: - // param here is set by MG_STATE_LINK_ASK_TOSS or MG_STATE_LINK_ASK_TOSS_UNRECEIVED + // param here is set by MG_STATE_CLIENT_ASK_TOSS or MG_STATE_CLIENT_ASK_TOSS_UNRECEIVED MysteryGiftClient_InitSendWord(client, MG_LINKID_RESPONSE, client->param); break; case CLI_SAVE_CARD: diff --git a/src/party_menu.c b/src/party_menu.c index cbe127bb9ec9..016c359cb9bc 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -5647,11 +5647,11 @@ static u8 GetBattleEntryLevelCap(void) case FACILITY_MULTI_OR_EREADER: return MAX_LEVEL; case FACILITY_UNION_ROOM: - return 30; + return UNION_ROOM_MAX_LEVEL; default: // Battle Frontier if (gSpecialVar_0x8004 == FRONTIER_LVL_50) - return 50; - return MAX_LEVEL; + return FRONTIER_MAX_LEVEL_50; + return FRONTIER_MAX_LEVEL_OPEN; } } diff --git a/src/pokemon.c b/src/pokemon.c index 7cdad72e94fe..b0bc41897dff 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -2464,7 +2464,7 @@ void CreateBattleTowerMon_HandleLevel(struct Pokemon *mon, struct BattleTowerPok if (gSaveBlock2Ptr->frontier.lvlMode != FRONTIER_LVL_50) level = GetFrontierEnemyMonLevel(gSaveBlock2Ptr->frontier.lvlMode); else if (lvl50) - level = 50; + level = FRONTIER_MAX_LEVEL_50; else level = src->level; diff --git a/src/start_menu.c b/src/start_menu.c index 90230c3ddf7a..11189ee83195 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -42,9 +42,10 @@ #include "text_window.h" #include "trainer_card.h" #include "window.h" -#include "constants/songs.h" #include "union_room.h" +#include "constants/battle_frontier.h" #include "constants/rgb.h" +#include "constants/songs.h" // Menu actions enum @@ -138,7 +139,7 @@ static bool8 FieldCB_ReturnToFieldStartMenu(void); static const struct WindowTemplate sSafariBallsWindowTemplate = {0, 1, 1, 9, 4, 0xF, 8}; -static const u8* const sPyramidFloorNames[] = +static const u8* const sPyramidFloorNames[FRONTIER_STAGES_PER_CHALLENGE + 1] = { gText_Floor1, gText_Floor2, @@ -392,7 +393,7 @@ static void ShowSafariBallsWindow(void) static void ShowPyramidFloorWindow(void) { - if (gSaveBlock2Ptr->frontier.curChallengeBattleNum == 7) + if (gSaveBlock2Ptr->frontier.curChallengeBattleNum == FRONTIER_STAGES_PER_CHALLENGE) sBattlePyramidFloorWindowId = AddWindow(&sPyramidFloorWindowTemplate_1); else sBattlePyramidFloorWindowId = AddWindow(&sPyramidFloorWindowTemplate_2); diff --git a/src/union_room.c b/src/union_room.c index 9a743dbab902..05b41a088098 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -4318,7 +4318,7 @@ static bool32 HasAtLeastTwoMonsOfLevel30OrLower(void) for (i = 0; i < gPlayerPartyCount; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_LEVEL) <= 30 + if (GetMonData(&gPlayerParty[i], MON_DATA_LEVEL) <= UNION_ROOM_MAX_LEVEL && GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) != SPECIES_EGG) count++; } From 7470a56d44fa05749c4832e7c18570978afc5163 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 9 Jun 2022 14:59:21 -0300 Subject: [PATCH 595/762] Untangled CheckPartnersMonForRibbons --- src/trade.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/trade.c b/src/trade.c index df3cb4d3384e..25614c91ae77 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4813,7 +4813,7 @@ static void CheckPartnersMonForRibbons(void) { u8 i; u8 numRibbons = 0; - for (i = 0; i < 12; i ++) + for (i = 0; i < (MON_DATA_UNUSED_RIBBONS - MON_DATA_CHAMPION_RIBBON); i ++) { numRibbons += GetMonData(&gEnemyParty[gSelectedTradeMonPositions[TRADE_PARTNER] % PARTY_SIZE], MON_DATA_CHAMPION_RIBBON + i); } From dec54e6e928217cdb6249fdad03d1b6492c7c7ff Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 9 Jun 2022 15:32:08 -0400 Subject: [PATCH 596/762] Additional constant usage --- data/maps/BattleFrontier_Lounge2/scripts.inc | 26 ++++++++-------- src/battle_pike.c | 8 ++--- src/battle_tower.c | 32 ++++++++++---------- src/frontier_util.c | 26 ++++++++-------- 4 files changed, 47 insertions(+), 45 deletions(-) diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc index 8efc17293663..12eda4a5eed5 100644 --- a/data/maps/BattleFrontier_Lounge2/scripts.inc +++ b/data/maps/BattleFrontier_Lounge2/scripts.inc @@ -22,18 +22,20 @@ BattleFrontier_Lounge2_EventScript_AlreadyMetManiac:: end BattleFrontier_Lounge2_EventScript_GiveAdvice:: - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 0, BattleFrontier_Lounge2_EventScript_BufferSingle - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 1, BattleFrontier_Lounge2_EventScript_BufferDouble - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 2, BattleFrontier_Lounge2_EventScript_BufferMulti - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 3, BattleFrontier_Lounge2_EventScript_BufferMultiLink - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 4, BattleFrontier_Lounge2_EventScript_BufferBattleDome - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 5, BattleFrontier_Lounge2_EventScript_BufferBattleFactory - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 6, BattleFrontier_Lounge2_EventScript_BufferBattlePalace - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 7, BattleFrontier_Lounge2_EventScript_BufferBattleArena - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 8, BattleFrontier_Lounge2_EventScript_BufferBattlePike - call_if_eq VAR_FRONTIER_MANIAC_FACILITY, 9, BattleFrontier_Lounge2_EventScript_BufferBattlePyramid - call_if_le VAR_FRONTIER_MANIAC_FACILITY, 3, BattleFrontier_Lounge2_EventScript_BattleTowerNews - call_if_ge VAR_FRONTIER_MANIAC_FACILITY, 4, BattleFrontier_Lounge2_EventScript_FacilityNews + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_TOWER_SINGLES, BattleFrontier_Lounge2_EventScript_BufferSingle + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_TOWER_DOUBLES, BattleFrontier_Lounge2_EventScript_BufferDouble + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_TOWER_MULTIS, BattleFrontier_Lounge2_EventScript_BufferMulti + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_TOWER_LINK, BattleFrontier_Lounge2_EventScript_BufferMultiLink + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_DOME, BattleFrontier_Lounge2_EventScript_BufferBattleDome + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_FACTORY, BattleFrontier_Lounge2_EventScript_BufferBattleFactory + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_PALACE, BattleFrontier_Lounge2_EventScript_BufferBattlePalace + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_ARENA, BattleFrontier_Lounge2_EventScript_BufferBattleArena + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_PIKE, BattleFrontier_Lounge2_EventScript_BufferBattlePike + call_if_eq VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_PYRAMID, BattleFrontier_Lounge2_EventScript_BufferBattlePyramid +@ <= FRONTIER_MANIAC_TOWER_LINK is any Battle Tower mode + call_if_le VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_TOWER_LINK, BattleFrontier_Lounge2_EventScript_BattleTowerNews +@ >= FRONTIER_MANIAC_DOME is any facility other than Battle Tower + call_if_ge VAR_FRONTIER_MANIAC_FACILITY, FRONTIER_MANIAC_DOME, BattleFrontier_Lounge2_EventScript_FacilityNews special ShowFrontierManiacMessage waitmessage waitbuttonpress diff --git a/src/battle_pike.c b/src/battle_pike.c index 6c97c99fc0a0..433dd0a083d5 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -1158,11 +1158,11 @@ u8 GetBattlePikeWildMonHeaderId(void) u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u16 winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode]; - if (winStreak <= 280) + if (winStreak <= 20 * NUM_PIKE_ROOMS) headerId = 0; - else if (winStreak <= 560) + else if (winStreak <= 40 * NUM_PIKE_ROOMS) headerId = 1; - else if (winStreak <= 840) + else if (winStreak <= 60 * NUM_PIKE_ROOMS) headerId = 2; else headerId = 3; @@ -1392,7 +1392,7 @@ static void PrepareOneTrainer(bool8 difficult) if (!difficult) battleNum = 1; else - battleNum = 6; + battleNum = FRONTIER_STAGES_PER_CHALLENGE - 1; lvlMode = gSaveBlock2Ptr->frontier.lvlMode; challengeNum = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode] / NUM_PIKE_ROOMS; diff --git a/src/battle_tower.c b/src/battle_tower.c index 839b99b2421c..354a087c415d 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -1327,19 +1327,19 @@ void PutNewBattleTowerRecord(struct EmeraldBattleTowerRecord *newRecordEm) if (gSaveBlock2Ptr->frontier.towerRecords[i].trainerId[j] != newRecord->trainerId[j]) break; } - if (j == 4) + if (j == TRAINER_ID_LENGTH) { for (k = 0; k < PLAYER_NAME_LENGTH; k++) { - #ifdef BUGFIX - if (gSaveBlock2Ptr->frontier.towerRecords[i].name[k] != newRecord->name[k]) + // Incorrect index being used + #ifdef BUGFIX + #define INDEX k + #else + #define INDEX j + #endif + if (gSaveBlock2Ptr->frontier.towerRecords[i].name[INDEX] != newRecord->name[INDEX]) break; - if (newRecord->name[k] == EOS) - #else - if (gSaveBlock2Ptr->frontier.towerRecords[i].name[j] != newRecord->name[j]) - break; - if (newRecord->name[j] == EOS) - #endif + if (newRecord->name[INDEX] == EOS) { k = PLAYER_NAME_LENGTH; break; @@ -1635,7 +1635,7 @@ static void FillTentTrainerParty(u8 monsCount) static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) { s32 i, j; - u16 chosenMonIndices[4]; + u16 chosenMonIndices[MAX_FRONTIER_PARTY_SIZE]; u8 friendship = MAX_FRIENDSHIP; u8 level = SetFacilityPtrsGetLevel(); u8 fixedIV = 0; @@ -1651,7 +1651,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) } else if (trainerId == TRAINER_EREADER) { - for (i = firstMonId; i < firstMonId + 3; i++) + for (i = firstMonId; i < firstMonId + FRONTIER_PARTY_SIZE; i++) CreateBattleTowerMon(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.ereaderTrainer.party[i - firstMonId]); return; } @@ -1676,7 +1676,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount) else { // Apprentice. - for (i = firstMonId; i < firstMonId + 3; i++) + for (i = firstMonId; i < firstMonId + FRONTIER_PARTY_SIZE; i++) CreateApprenticeMon(&gEnemyParty[i], &gSaveBlock2Ptr->apprentices[trainerId - TRAINER_RECORD_MIXING_APPRENTICE], i - firstMonId); return; } @@ -1775,7 +1775,7 @@ static void Unused_CreateApprenticeMons(u16 trainerId, u8 firstMonId) else level = FRONTIER_MAX_LEVEL_50; - for (i = 0; i != 3; i++) + for (i = 0; i != FRONTIER_PARTY_SIZE; i++) { CreateMonWithEVSpread(&gEnemyParty[firstMonId + i], apprentice->party[i].species, level, fixedIV, 8); friendship = MAX_FRIENDSHIP; @@ -1848,7 +1848,7 @@ static void FillFactoryFrontierTrainerParty(u16 trainerId, u8 firstMonId) } else if (trainerId == TRAINER_EREADER) { - for (i = firstMonId; i < firstMonId + 3; i++) + for (i = firstMonId; i < firstMonId + FRONTIER_PARTY_SIZE; i++) CreateBattleTowerMon(&gEnemyParty[i], &gSaveBlock2Ptr->frontier.ereaderTrainer.party[i - firstMonId]); return; } @@ -2743,8 +2743,8 @@ u16 GetCurrentBattleTowerWinStreak(u8 lvlMode, u8 battleMode) { u16 winStreak = gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode]; - if (winStreak > 9999) - return 9999; + if (winStreak > MAX_STREAK) + return MAX_STREAK; else return winStreak; } diff --git a/src/frontier_util.c b/src/frontier_util.c index a08ccad4fdc0..545f48ac0734 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -595,13 +595,13 @@ static const u8 sBattlePointAwards[][NUM_FRONTIER_FACILITIES][FRONTIER_MODE_COUN // First bit is has battled them before and not won yet, second bit is has battled them and won (obtained a Symbol) static const u16 sBattledBrainBitFlags[NUM_FRONTIER_FACILITIES][2] = { - [FRONTIER_FACILITY_TOWER] = {0x0001, 0x0002}, - [FRONTIER_FACILITY_DOME] = {0x0004, 0x0008}, - [FRONTIER_FACILITY_PALACE] = {0x0010, 0x0020}, - [FRONTIER_FACILITY_ARENA] = {0x0040, 0x0080}, - [FRONTIER_FACILITY_FACTORY] = {0x0100, 0x0200}, - [FRONTIER_FACILITY_PIKE] = {0x0400, 0x0800}, - [FRONTIER_FACILITY_PYRAMID] = {0x1000, 0x2000}, + [FRONTIER_FACILITY_TOWER] = {1 << 0, 1 << 1}, + [FRONTIER_FACILITY_DOME] = {1 << 2, 1 << 3}, + [FRONTIER_FACILITY_PALACE] = {1 << 4, 1 << 5}, + [FRONTIER_FACILITY_ARENA] = {1 << 6, 1 << 7}, + [FRONTIER_FACILITY_FACTORY] = {1 << 8, 1 << 9}, + [FRONTIER_FACILITY_PIKE] = {1 << 10, 1 << 11}, + [FRONTIER_FACILITY_PYRAMID] = {1 << 12, 1 << 13}, }; static void (* const sFrontierUtilFuncs[])(void) = @@ -636,8 +636,8 @@ static const struct WindowTemplate sFrontierResultsWindowTemplate = .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, - .width = 0x1c, - .height = 0x12, + .width = 28, + .height = 18, .paletteNum = 15, .baseBlock = 1 }; @@ -647,7 +647,7 @@ static const struct WindowTemplate sLinkContestResultsWindowTemplate = .bg = 0, .tilemapLeft = 2, .tilemapTop = 2, - .width = 0x1a, + .width = 26, .height = 15, .paletteNum = 15, .baseBlock = 1 @@ -658,7 +658,7 @@ static const struct WindowTemplate sRankingHallRecordsWindowTemplate = .bg = 0, .tilemapLeft = 2, .tilemapTop = 1, - .width = 0x1a, + .width = 26, .height = 17, .paletteNum = 15, .baseBlock = 1 @@ -959,7 +959,7 @@ static bool8 IsWinStreakActive(u32 challenge) static void PrintAligned(const u8 *str, s32 y) { - s32 x = GetStringCenterAlignXOffset(FONT_NORMAL, str, 224); + s32 x = GetStringCenterAlignXOffset(FONT_NORMAL, str, DISPLAY_WIDTH - 16); y = (y * 8) + 1; AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, str, x, y, TEXT_SKIP_DRAW, NULL); } @@ -2345,7 +2345,7 @@ static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) StringCopy(gStringVar1, sRecordsWindowChallengeTexts[hallFacilityId][0]); StringExpandPlaceholders(gStringVar4, sRecordsWindowChallengeTexts[hallFacilityId][1]); AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, gStringVar4, 0, 1, TEXT_SKIP_DRAW, NULL); - x = GetStringRightAlignXOffset(FONT_NORMAL, sLevelModeText[lvlMode], 0xD0); + x = GetStringRightAlignXOffset(FONT_NORMAL, sLevelModeText[lvlMode], DISPLAY_WIDTH - 32); AddTextPrinterParameterized(gRecordsWindowId, FONT_NORMAL, sLevelModeText[lvlMode], x, 1, TEXT_SKIP_DRAW, NULL); if (hallFacilityId == RANKING_HALL_TOWER_LINK) { From 95f075ec905da35ff1bc97f70a92c13a5a218c9a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 13 Jun 2022 15:01:04 -0400 Subject: [PATCH 597/762] Remove erroneous bugfix --- src/match_call.c | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/src/match_call.c b/src/match_call.c index de7f13416d46..8b25d5b44dea 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -33,6 +33,13 @@ #include "constants/songs.h" #include "constants/trainers.h" +// In this file only the values normally associated with Battle Pike and Factory are swapped. +// Note that this is *not* a bug, because they are properly swapped consistently in this file. +// There would only be an issue if anything in this file interacted with something expecting +// the usual value order, or vice versa. +#define MATCH_CALL_FACTORY FRONTIER_FACILITY_PIKE +#define MATCH_CALL_PIKE FRONTIER_FACILITY_FACTORY + // Each match call message has variables that can be populated randomly or // dependent on the trainer. The below are IDs for how to populate the vars // in a given message. @@ -1590,6 +1597,7 @@ static const struct MatchCallText *GetGeneralMatchCallText(int matchCallId, u8 * rand = Random(); if (!(rand & 1)) { + // Count the number of facilities with a win streak for (count = 0, i = 0; i < NUM_FRONTIER_FACILITIES; i++) { if (GetFrontierStreakInfo(i, &topic) > 1) @@ -1598,6 +1606,8 @@ static const struct MatchCallText *GetGeneralMatchCallText(int matchCallId, u8 * if (count) { + // At least one facility with a win streak + // Randomly choose one to have a call about count = Random() % count; for (i = 0; i < NUM_FRONTIER_FACILITIES; i++) { @@ -1807,15 +1817,15 @@ static void PopulateSpeciesFromTrainerParty(int matchCallId, u8 *destStr) StringCopy(destStr, speciesName); } -static const u8 *const sBattleFrontierFacilityNames[] = +static const u8 *const sBattleFrontierFacilityNames[NUM_FRONTIER_FACILITIES] = { - gText_BattleTower2, - gText_BattleDome, - gText_BattlePalace, - gText_BattleArena, - gText_BattlePike, - gText_BattleFactory, - gText_BattlePyramid, + [FRONTIER_FACILITY_TOWER] = gText_BattleTower2, + [FRONTIER_FACILITY_DOME] = gText_BattleDome, + [FRONTIER_FACILITY_PALACE] = gText_BattlePalace, + [FRONTIER_FACILITY_ARENA] = gText_BattleArena, + [MATCH_CALL_PIKE] = gText_BattlePike, + [MATCH_CALL_FACTORY] = gText_BattleFactory, + [FRONTIER_FACILITY_PYRAMID] = gText_BattlePyramid, }; static void PopulateBattleFrontierFacilityName(int matchCallId, u8 *destStr) @@ -1899,7 +1909,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) switch (facilityId) { case FRONTIER_FACILITY_DOME: - for (i = 0; i < 2; i++) + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.domeRecordWinStreaks); i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { @@ -1909,11 +1919,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) } *topicTextId = GEN_TOPIC_B_DOME - 1; break; - #ifdef BUGFIX - case FRONTIER_FACILITY_PIKE: - #else - case FRONTIER_FACILITY_FACTORY: - #endif + case MATCH_CALL_PIKE: for (i = 0; i < FRONTIER_LVL_MODE_COUNT; i++) { if (streak < gSaveBlock2Ptr->frontier.pikeRecordStreaks[i]) @@ -1922,7 +1928,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) *topicTextId = GEN_TOPIC_B_PIKE - 1; break; case FRONTIER_FACILITY_TOWER: - for (i = 0; i < 4; i++) + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.towerRecordWinStreaks); i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { @@ -1933,7 +1939,7 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; case FRONTIER_FACILITY_PALACE: - for (i = 0; i < 2; i++) + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.palaceRecordWinStreaks); i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { @@ -1943,12 +1949,8 @@ static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId) } *topicTextId = GEN_TOPIC_STREAK_RECORD - 1; break; - #ifdef BUGFIX - case FRONTIER_FACILITY_FACTORY: - #else - case FRONTIER_FACILITY_PIKE: - #endif - for (i = 0; i < 2; i++) + case MATCH_CALL_FACTORY: + for (i = 0; i < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.factoryRecordWinStreaks); i++) { for (j = 0; j < FRONTIER_LVL_MODE_COUNT; j++) { From 4660f8c88baeccf3ab0baba03e8f0b7430ed73df Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 14 Jun 2022 09:18:55 -0400 Subject: [PATCH 598/762] Document battle tower TV show --- data/text/tv.inc | 30 +++++------ include/constants/tv.h | 17 ++++++ include/event_scripts.h | 30 +++++------ src/easy_chat.c | 2 +- src/frontier_util.c | 60 +++++++++++----------- src/tv.c | 111 ++++++++++++++++++++-------------------- 6 files changed, 134 insertions(+), 116 deletions(-) diff --git a/data/text/tv.inc b/data/text/tv.inc index 68b842158439..6cfc289d2c13 100644 --- a/data/text/tv.inc +++ b/data/text/tv.inc @@ -166,7 +166,7 @@ BattleFrontier_BattleTowerLobby_Text_LookingForwardToNextBattle:: .string "I'll be looking forward to your\n" .string "next battle!$" -gTVBravoTrainerBattleTowerText00:: +BravoTrainerBattleTower_Text_Intro:: .string "Yeah!\n" .string "It's BRAVO TRAINER time!\p" .string "Today, we're going to profile {STR_VAR_1},\n" @@ -174,12 +174,12 @@ gTVBravoTrainerBattleTowerText00:: .string "For the challenge, {STR_VAR_1} entered\n" .string "one wicked {STR_VAR_2}.$" -gTVBravoTrainerBattleTowerText01:: +BravoTrainerBattleTower_Text_NewRecord:: .string "The pair set a new record of {STR_VAR_2} wins\n" .string "in a row in {STR_VAR_1} competition!\l" .string "Bravo, TRAINER!$" -gTVBravoTrainerBattleTowerText02:: +BravoTrainerBattleTower_Text_Lost:: .string "The twosome finally succumbed to\n" .string "{STR_VAR_1} in match number {STR_VAR_2}.\l" .string "Nice try, TRAINER!\p" @@ -188,7 +188,7 @@ gTVBravoTrainerBattleTowerText02:: .string "We asked the TRAINER for impressions\n" .string "on the match with {STR_VAR_1}.$" -gTVBravoTrainerBattleTowerText03:: +BravoTrainerBattleTower_Text_Won:: .string "The twosome won it all by defeating\n" .string "{STR_VAR_1}'s {STR_VAR_2} thoroughly.\l" .string "Bravo, TRAINER!\p" @@ -197,7 +197,7 @@ gTVBravoTrainerBattleTowerText03:: .string "We asked the TRAINER for impressions\n" .string "on the moment of glory.$" -gTVBravoTrainerBattleTowerText04:: +BravoTrainerBattleTower_Text_LostFinal:: .string "After a string of wins, the pair finally\n" .string "succumbed to {STR_VAR_1}'s {STR_VAR_2},\l" .string "their final hurdle.\p" @@ -208,7 +208,7 @@ gTVBravoTrainerBattleTowerText04:: .string "We asked the TRAINER for impressions\n" .string "on battling the celebrity pair.$" -gTVBravoTrainerBattleTowerText05:: +BravoTrainerBattleTower_Text_Satisfied:: .string "This is what the TRAINER had to say:\n" .string "“I'm satisfied!”\p" .string "Now isn't that a refreshing reply?\n" @@ -218,7 +218,7 @@ gTVBravoTrainerBattleTowerText05:: .string "I found out exactly how satisfied\n" .string "when I heard the TRAINER say this:$" -gTVBravoTrainerBattleTowerText06:: +BravoTrainerBattleTower_Text_Unsatisfied:: .string "This is what the TRAINER had to say:\n" .string "“I'm not satisfied…”\p" .string "Our TRAINER was obviously a little down\n" @@ -228,22 +228,22 @@ gTVBravoTrainerBattleTowerText06:: .string "Anyway, I found out how dissatisfied\n" .string "our TRAINER was when I heard this:$" -gTVBravoTrainerBattleTowerText07:: +BravoTrainerBattleTower_Text_None1:: .string "None$" -gTVBravoTrainerBattleTowerText08:: +BravoTrainerBattleTower_Text_None2:: .string "None$" -gTVBravoTrainerBattleTowerText09:: +BravoTrainerBattleTower_Text_None3:: .string "None$" -gTVBravoTrainerBattleTowerText10:: +BravoTrainerBattleTower_Text_None4:: .string "None$" -gTVBravoTrainerBattleTowerText11:: +BravoTrainerBattleTower_Text_Response:: .string "“{STR_VAR_1}.”$" -gTVBravoTrainerBattleTowerText12:: +BravoTrainerBattleTower_Text_ResponseSatisfied:: .string "“{STR_VAR_1}.”\n" .string "Now isn't that great?\p" .string "It really expresses {STR_VAR_2}'s joy,\n" @@ -252,7 +252,7 @@ gTVBravoTrainerBattleTowerText12:: .string "end… It really was what you'd call\l" .string "“{STR_VAR_1}”!$" -gTVBravoTrainerBattleTowerText13:: +BravoTrainerBattleTower_Text_ResponseUnsatisfied:: .string "“{STR_VAR_1}.”\n" .string "Now isn't that fitting?\p" .string "That battle with {STR_VAR_3} at the\n" @@ -261,7 +261,7 @@ gTVBravoTrainerBattleTowerText13:: .string "{STR_VAR_2}'s disappointment comes across\n" .string "loud and clear, I'd say!$" -gTVBravoTrainerBattleTowerText14:: +BravoTrainerBattleTower_Text_Outro:: .string "Bravo, {STR_VAR_1}!\n" .string "Bravo, {STR_VAR_2}!\p" .string "I hope we can count on seeing\n" diff --git a/include/constants/tv.h b/include/constants/tv.h index 4c8dd4fa8389..87748a31de90 100644 --- a/include/constants/tv.h +++ b/include/constants/tv.h @@ -274,4 +274,21 @@ #define SMARTSHOPPER_NUM_ITEMS 3 +// TV Show states for Bravo Trainer's Battle Tower interview +#define BRAVOTOWER_STATE_INTRO 0 +#define BRAVOTOWER_STATE_NEW_RECORD 1 +#define BRAVOTOWER_STATE_LOST 2 +#define BRAVOTOWER_STATE_WON 3 +#define BRAVOTOWER_STATE_LOST_FINAL 4 +#define BRAVOTOWER_STATE_SATISFIED 5 +#define BRAVOTOWER_STATE_UNSATISFIED 6 +#define BRAVOTOWER_STATE_UNUSED_1 7 +#define BRAVOTOWER_STATE_UNUSED_2 8 +#define BRAVOTOWER_STATE_UNUSED_3 9 +#define BRAVOTOWER_STATE_UNUSED_4 10 +#define BRAVOTOWER_STATE_RESPONSE 11 +#define BRAVOTOWER_STATE_RESPONSE_SATISFIED 12 +#define BRAVOTOWER_STATE_RESPONSE_UNSATISFIED 13 +#define BRAVOTOWER_STATE_OUTRO 14 + #endif //GUARD_CONSTANTS_TV_H diff --git a/include/event_scripts.h b/include/event_scripts.h index a19d4553a4c6..4e0a88f82ac1 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -21,21 +21,21 @@ extern const u8 gTVBravoTrainerText05[]; extern const u8 gTVBravoTrainerText06[]; extern const u8 gTVBravoTrainerText07[]; extern const u8 gTVBravoTrainerText08[]; -extern const u8 gTVBravoTrainerBattleTowerText00[]; -extern const u8 gTVBravoTrainerBattleTowerText01[]; -extern const u8 gTVBravoTrainerBattleTowerText02[]; -extern const u8 gTVBravoTrainerBattleTowerText03[]; -extern const u8 gTVBravoTrainerBattleTowerText04[]; -extern const u8 gTVBravoTrainerBattleTowerText05[]; -extern const u8 gTVBravoTrainerBattleTowerText06[]; -extern const u8 gTVBravoTrainerBattleTowerText07[]; -extern const u8 gTVBravoTrainerBattleTowerText08[]; -extern const u8 gTVBravoTrainerBattleTowerText09[]; -extern const u8 gTVBravoTrainerBattleTowerText10[]; -extern const u8 gTVBravoTrainerBattleTowerText11[]; -extern const u8 gTVBravoTrainerBattleTowerText12[]; -extern const u8 gTVBravoTrainerBattleTowerText13[]; -extern const u8 gTVBravoTrainerBattleTowerText14[]; +extern const u8 BravoTrainerBattleTower_Text_Intro[]; +extern const u8 BravoTrainerBattleTower_Text_NewRecord[]; +extern const u8 BravoTrainerBattleTower_Text_Lost[]; +extern const u8 BravoTrainerBattleTower_Text_Won[]; +extern const u8 BravoTrainerBattleTower_Text_LostFinal[]; +extern const u8 BravoTrainerBattleTower_Text_Satisfied[]; +extern const u8 BravoTrainerBattleTower_Text_Unsatisfied[]; +extern const u8 BravoTrainerBattleTower_Text_None1[]; +extern const u8 BravoTrainerBattleTower_Text_None2[]; +extern const u8 BravoTrainerBattleTower_Text_None3[]; +extern const u8 BravoTrainerBattleTower_Text_None4[]; +extern const u8 BravoTrainerBattleTower_Text_Response[]; +extern const u8 BravoTrainerBattleTower_Text_ResponseSatisfied[]; +extern const u8 BravoTrainerBattleTower_Text_ResponseUnsatisfied[]; +extern const u8 BravoTrainerBattleTower_Text_Outro[]; extern const u8 gTVFanClubOpinionsText00[]; extern const u8 gTVFanClubOpinionsText01[]; extern const u8 gTVFanClubOpinionsText02[]; diff --git a/src/easy_chat.c b/src/easy_chat.c index 4d6006f1c66e..2bbd16cb27a9 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1492,7 +1492,7 @@ void ShowEasyChatScreen(void) displayedPersonType = EASY_CHAT_PERSON_REPORTER_MALE; break; case EASY_CHAT_TYPE_BATTLE_TOWER_INTERVIEW: - words = gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].fanclubOpinions.words18; + words = gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].bravoTrainerTower.words; displayedPersonType = EASY_CHAT_PERSON_REPORTER_FEMALE; break; case EASY_CHAT_TYPE_GOOD_SAYING: diff --git a/src/frontier_util.c b/src/frontier_util.c index 545f48ac0734..f5dde452fc59 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -500,94 +500,94 @@ static const struct FrontierBrainMon sFrontierBrainsMons[][2][FRONTIER_PARTY_SIZ static const u8 sBattlePointAwards[][NUM_FRONTIER_FACILITIES][FRONTIER_MODE_COUNT] = { { - {1, 2, 3, 3}, {1, 1, 0, 0}, {4, 5, 0, 0}, {1, 0, 0, 0}, {3, 4, 0, 0}, {1, 0, 0, 0}, {5, 0, 0, 0} + {1, 2, 3, 3}, {1, 1}, {4, 5}, {1}, {3, 4}, {1}, {5} }, { - {2, 3, 4, 4}, {1, 1, 0, 0}, {4, 5, 0, 0}, {1, 0, 0, 0}, {3, 4, 0, 0}, {1, 0, 0, 0}, {5, 0, 0, 0} + {2, 3, 4, 4}, {1, 1}, {4, 5}, {1}, {3, 4}, {1}, {5} }, { - {3, 4, 5, 5}, {2, 2, 0, 0}, {5, 6, 0, 0}, {1, 0, 0, 0}, {4, 5, 0, 0}, {2, 0, 0, 0}, {6, 0, 0, 0} + {3, 4, 5, 5}, {2, 2}, {5, 6}, {1}, {4, 5}, {2}, {6} }, { - {4, 5, 6, 6}, {2, 2, 0, 0}, {5, 6, 0, 0}, {2, 0, 0, 0}, {4, 5, 0, 0}, {2, 0, 0, 0}, {6, 0, 0, 0} + {4, 5, 6, 6}, {2, 2}, {5, 6}, {2}, {4, 5}, {2}, {6} }, { - {5, 6, 7, 7}, {3, 3, 0, 0}, {6, 7, 0, 0}, {2, 0, 0, 0}, {5, 6, 0, 0}, {2, 0, 0, 0}, {7, 0, 0, 0} + {5, 6, 7, 7}, {3, 3}, {6, 7}, {2}, {5, 6}, {2}, {7} }, { - {6, 7, 8, 8}, {3, 3, 0, 0}, {6, 7, 0, 0}, {2, 0, 0, 0}, {5, 6, 0, 0}, {4, 0, 0, 0}, {7, 0, 0, 0} + {6, 7, 8, 8}, {3, 3}, {6, 7}, {2}, {5, 6}, {4}, {7} }, { - {7, 8, 9, 9}, {4, 4, 0, 0}, {7, 8, 0, 0}, {3, 0, 0, 0}, {6, 7, 0, 0}, {4, 0, 0, 0}, {8, 0, 0, 0} + {7, 8, 9, 9}, {4, 4}, {7, 8}, {3}, {6, 7}, {4}, {8} }, { - {8, 9, 10, 10}, {4, 4, 0, 0}, {7, 8, 0, 0}, {3, 0, 0, 0},{6, 7, 0, 0}, {4, 0, 0, 0}, {8, 0, 0, 0} + {8, 9, 10, 10}, {4, 4}, {7, 8}, {3},{6, 7}, {4}, {8} }, { - {9, 10, 11, 11}, {5, 5, 0, 0}, {8, 9, 0, 0}, {4, 0, 0, 0}, {7, 8, 0, 0}, {8, 0, 0, 0}, {9, 0, 0, 0} + {9, 10, 11, 11}, {5, 5}, {8, 9}, {4}, {7, 8}, {8}, {9} }, { - {10, 11, 12, 12}, {5, 5, 0, 0}, {8, 9, 0, 0}, {4, 0, 0, 0}, {7, 8, 0, 0}, {8, 0, 0, 0}, {9, 0, 0, 0} + {10, 11, 12, 12}, {5, 5}, {8, 9}, {4}, {7, 8}, {8}, {9} }, { - {11, 12, 13, 13}, {6, 6, 0, 0}, {9, 10, 0, 0}, {5, 0, 0,0}, {8, 9, 0, 0}, {8, 0, 0, 0}, {10, 0, 0, 0} + {11, 12, 13, 13}, {6, 6}, {9, 10}, {5,0}, {8, 9}, {8}, {10} }, { - {12, 13, 14, 14}, {6, 6, 0, 0}, {9, 10, 0, 0}, {6, 0, 0,0}, {8, 9, 0, 0}, {8, 0, 0, 0}, {10, 0, 0, 0} + {12, 13, 14, 14}, {6, 6}, {9, 10}, {6,0}, {8, 9}, {8}, {10} }, { - {13, 14, 15, 15}, {7, 7, 0, 0}, {10, 11, 0, 0}, {7, 0, 0, 0}, {9, 10, 0, 0}, {10, 0, 0, 0}, {11, 0, 0, 0} + {13, 14, 15, 15}, {7, 7}, {10, 11}, {7}, {9, 10}, {10}, {11} }, { - {14, 15, 15, 15}, {7, 7, 0, 0}, {10, 11, 0, 0}, {8, 0, 0, 0}, {9, 10, 0, 0}, {10, 0, 0, 0}, {11, 0, 0, 0} + {14, 15, 15, 15}, {7, 7}, {10, 11}, {8}, {9, 10}, {10}, {11} }, { - {15, 15, 15, 15}, {8, 8, 0, 0}, {11, 12, 0, 0}, {9, 0, 0, 0}, {10, 11, 0, 0}, {10, 0, 0, 0}, {12, 0, 0, 0} + {15, 15, 15, 15}, {8, 8}, {11, 12}, {9}, {10, 11}, {10}, {12} }, { - {15, 15, 15, 15}, {8, 8, 0, 0}, {11, 12, 0, 0}, {10, 0, 0, 0}, {10, 11, 0, 0}, {10, 0, 0, 0}, {12, 0, 0, 0} + {15, 15, 15, 15}, {8, 8}, {11, 12}, {10}, {10, 11}, {10}, {12} }, { - {15, 15, 15, 15}, {9, 9, 0, 0}, {12, 13, 0, 0}, {11, 0, 0, 0}, {11, 12, 0, 0}, {12, 0, 0, 0}, {13, 0, 0, 0} + {15, 15, 15, 15}, {9, 9}, {12, 13}, {11}, {11, 12}, {12}, {13} }, { - {15, 15, 15, 15}, {9, 9, 0, 0}, {12, 13, 0, 0}, {12, 0, 0, 0}, {11, 12, 0, 0}, {12, 0, 0, 0}, {13, 0, 0, 0} + {15, 15, 15, 15}, {9, 9}, {12, 13}, {12}, {11, 12}, {12}, {13} }, { - {15, 15, 15, 15}, {10, 10, 0, 0}, {13, 14, 0, 0}, {13, 0, 0, 0}, {12, 13, 0, 0}, {12, 0, 0, 0}, {14, 0, 0, 0} + {15, 15, 15, 15}, {10, 10}, {13, 14}, {13}, {12, 13}, {12}, {14} }, { - {15, 15, 15, 15}, {10, 10, 0, 0}, {13, 14, 0, 0}, {14, 0, 0, 0}, {12, 13, 0, 0}, {12, 0, 0, 0}, {14, 0, 0, 0} + {15, 15, 15, 15}, {10, 10}, {13, 14}, {14}, {12, 13}, {12}, {14} }, { - {15, 15, 15, 15}, {11, 11, 0, 0}, {14, 15, 0, 0}, {15, 0, 0, 0}, {13, 14, 0, 0}, {12, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {11, 11}, {14, 15}, {15}, {13, 14}, {12}, {15} }, { - {15, 15, 15, 15}, {11, 11, 0, 0}, {14, 15, 0, 0}, {15, 0, 0, 0}, {13, 14, 0, 0}, {14, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {11, 11}, {14, 15}, {15}, {13, 14}, {14}, {15} }, { - {15, 15, 15, 15}, {12, 12, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {14, 15, 0, 0}, {14, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {12, 12}, {15, 15}, {15}, {14, 15}, {14}, {15} }, { - {15, 15, 15, 15}, {12, 12, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {14, 15, 0, 0}, {14, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {12, 12}, {15, 15}, {15}, {14, 15}, {14}, {15} }, { - {15, 15, 15, 15}, {13, 13, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {14, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {13, 13}, {15, 15}, {15}, {15, 15}, {14}, {15} }, { - {15, 15, 15, 15}, {13, 13, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {13, 13}, {15, 15}, {15}, {15, 15}, {15}, {15} }, { - {15, 15, 15, 15}, {14, 14, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {14, 14}, {15, 15}, {15}, {15, 15}, {15}, {15} }, { - {15, 15, 15, 15}, {14, 14, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {14, 14}, {15, 15}, {15}, {15, 15}, {15}, {15} }, { - {15, 15, 15, 15}, {15, 15, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {15, 15}, {15, 15}, {15}, {15, 15}, {15}, {15} }, { - {15, 15, 15, 15}, {15, 15, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 15, 0, 0}, {15, 0, 0, 0}, {15, 0, 0, 0} + {15, 15, 15, 15}, {15, 15}, {15, 15}, {15}, {15, 15}, {15}, {15} }, }; diff --git a/src/tv.c b/src/tv.c index 5cca91ff7b91..ec36a3ff0ad0 100644 --- a/src/tv.c +++ b/src/tv.c @@ -373,21 +373,21 @@ static const u8 *const sTV3CheersForPokeblocksTextGroup[] = { }; static const u8 *const sTVBravoTrainerBattleTowerTextGroup[] = { - gTVBravoTrainerBattleTowerText00, - gTVBravoTrainerBattleTowerText01, - gTVBravoTrainerBattleTowerText02, - gTVBravoTrainerBattleTowerText03, - gTVBravoTrainerBattleTowerText04, - gTVBravoTrainerBattleTowerText05, - gTVBravoTrainerBattleTowerText06, - gTVBravoTrainerBattleTowerText07, - gTVBravoTrainerBattleTowerText08, - gTVBravoTrainerBattleTowerText09, - gTVBravoTrainerBattleTowerText10, - gTVBravoTrainerBattleTowerText11, - gTVBravoTrainerBattleTowerText12, - gTVBravoTrainerBattleTowerText13, - gTVBravoTrainerBattleTowerText14 + [BRAVOTOWER_STATE_INTRO] = BravoTrainerBattleTower_Text_Intro, + [BRAVOTOWER_STATE_NEW_RECORD] = BravoTrainerBattleTower_Text_NewRecord, + [BRAVOTOWER_STATE_LOST] = BravoTrainerBattleTower_Text_Lost, + [BRAVOTOWER_STATE_WON] = BravoTrainerBattleTower_Text_Won, + [BRAVOTOWER_STATE_LOST_FINAL] = BravoTrainerBattleTower_Text_LostFinal, + [BRAVOTOWER_STATE_SATISFIED] = BravoTrainerBattleTower_Text_Satisfied, + [BRAVOTOWER_STATE_UNSATISFIED] = BravoTrainerBattleTower_Text_Unsatisfied, + [BRAVOTOWER_STATE_UNUSED_1] = BravoTrainerBattleTower_Text_None1, + [BRAVOTOWER_STATE_UNUSED_2] = BravoTrainerBattleTower_Text_None2, + [BRAVOTOWER_STATE_UNUSED_3] = BravoTrainerBattleTower_Text_None3, + [BRAVOTOWER_STATE_UNUSED_4] = BravoTrainerBattleTower_Text_None4, + [BRAVOTOWER_STATE_RESPONSE] = BravoTrainerBattleTower_Text_Response, + [BRAVOTOWER_STATE_RESPONSE_SATISFIED] = BravoTrainerBattleTower_Text_ResponseSatisfied, + [BRAVOTOWER_STATE_RESPONSE_UNSATISFIED] = BravoTrainerBattleTower_Text_ResponseUnsatisfied, + [BRAVOTOWER_STATE_OUTRO] = BravoTrainerBattleTower_Text_Outro }; static const u8 *const sTVContestLiveUpdatesTextGroup[] = { @@ -1490,9 +1490,9 @@ static void InterviewAfter_BravoTrainerBattleTowerProfile(void) show->bravoTrainerTower.numFights = GetCurrentBattleTowerWinStreak(gSaveBlock2Ptr->frontier.towerLvlMode, 0); show->bravoTrainerTower.wonTheChallenge = gSaveBlock2Ptr->frontier.towerBattleOutcome; if (gSaveBlock2Ptr->frontier.towerLvlMode == FRONTIER_LVL_50) - show->bravoTrainerTower.btLevel = 50; + show->bravoTrainerTower.btLevel = FRONTIER_MAX_LEVEL_50; else - show->bravoTrainerTower.btLevel = 100; + show->bravoTrainerTower.btLevel = FRONTIER_MAX_LEVEL_OPEN; show->bravoTrainerTower.interviewResponse = gSpecialVar_0x8004; StorePlayerIdInNormalShow(show); show->bravoTrainerTower.language = gGameLanguage; @@ -4371,6 +4371,9 @@ static void DoTVShowBravoTrainerPokemonProfile(void) ShowFieldMessage(sTVBravoTrainerTextGroup[state]); } +// This is the TV show triggered by accepting the reporter's interview in the lobby of Battle Tower. +// The reporter had asked the player if they were satisfied or not with the challenge, and then asked +// for a one word Easy Chat description of their feelings about the challenge. static void DoTVShowBravoTrainerBattleTower(void) { TVShow *show; @@ -4381,85 +4384,83 @@ static void DoTVShowBravoTrainerBattleTower(void) state = sTVShowState; switch(state) { - case 0: + case BRAVOTOWER_STATE_INTRO: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); - if (show->bravoTrainerTower.numFights >= 7) - sTVShowState = 1; + if (show->bravoTrainerTower.numFights >= FRONTIER_STAGES_PER_CHALLENGE) + sTVShowState = BRAVOTOWER_STATE_NEW_RECORD; else - sTVShowState = 2; + sTVShowState = BRAVOTOWER_STATE_LOST; break; - case 1: - if (show->bravoTrainerTower.btLevel == 50) - { + case BRAVOTOWER_STATE_NEW_RECORD: + // The TV show states a "new record" was achieved as long as all the battles in the challenge were attempted, + // regardless of any previous records or whether the final battle was won or lost. + if (show->bravoTrainerTower.btLevel == FRONTIER_MAX_LEVEL_50) StringCopy(gStringVar1, gText_Lv50); - } else - { StringCopy(gStringVar1, gText_OpenLevel); - } ConvertIntToDecimalString(1, show->bravoTrainerTower.numFights); if (show->bravoTrainerTower.wonTheChallenge == TRUE) - sTVShowState = 3; + sTVShowState = BRAVOTOWER_STATE_WON; else - sTVShowState = 4; + sTVShowState = BRAVOTOWER_STATE_LOST_FINAL; break; - case 2: + case BRAVOTOWER_STATE_LOST: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); ConvertIntToDecimalString(1, show->bravoTrainerTower.numFights + 1); if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; + sTVShowState = BRAVOTOWER_STATE_SATISFIED; else - sTVShowState = 6; + sTVShowState = BRAVOTOWER_STATE_UNSATISFIED; break; - case 3: + case BRAVOTOWER_STATE_WON: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; + sTVShowState = BRAVOTOWER_STATE_SATISFIED; else - sTVShowState = 6; + sTVShowState = BRAVOTOWER_STATE_UNSATISFIED; break; - case 4: + case BRAVOTOWER_STATE_LOST_FINAL: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]); if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 5; + sTVShowState = BRAVOTOWER_STATE_SATISFIED; else - sTVShowState = 6; + sTVShowState = BRAVOTOWER_STATE_UNSATISFIED; break; - case 5: + case BRAVOTOWER_STATE_SATISFIED: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 11; + sTVShowState = BRAVOTOWER_STATE_RESPONSE; break; - case 6: + case BRAVOTOWER_STATE_UNSATISFIED: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 11; + sTVShowState = BRAVOTOWER_STATE_RESPONSE; break; - case 7: - sTVShowState = 11; + case BRAVOTOWER_STATE_UNUSED_1: + sTVShowState = BRAVOTOWER_STATE_RESPONSE; break; - case 8: - case 9: - case 10: + case BRAVOTOWER_STATE_UNUSED_2: + case BRAVOTOWER_STATE_UNUSED_3: + case BRAVOTOWER_STATE_UNUSED_4: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); - sTVShowState = 11; + sTVShowState = BRAVOTOWER_STATE_RESPONSE; break; - case 11: + case BRAVOTOWER_STATE_RESPONSE: CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); if (show->bravoTrainerTower.interviewResponse == 0) - sTVShowState = 12; + sTVShowState = BRAVOTOWER_STATE_RESPONSE_SATISFIED; else - sTVShowState = 13; + sTVShowState = BRAVOTOWER_STATE_RESPONSE_UNSATISFIED; break; - case 12: - case 13: + case BRAVOTOWER_STATE_RESPONSE_SATISFIED: + case BRAVOTOWER_STATE_RESPONSE_UNSATISFIED: CopyEasyChatWord(gStringVar1, show->bravoTrainerTower.words[0]); TVShowConvertInternationalString(gStringVar2, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); TVShowConvertInternationalString(gStringVar3, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage); - sTVShowState = 14; + sTVShowState = BRAVOTOWER_STATE_OUTRO; break; - case 14: + case BRAVOTOWER_STATE_OUTRO: TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language); StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]); TVShowDone(); From e48341f7fcd7dba2aaf352ece4e7e24c16eef043 Mon Sep 17 00:00:00 2001 From: Simply BLG <61010688+SimplyBLGDev@users.noreply.github.com> Date: Fri, 17 Jun 2022 11:52:54 -0300 Subject: [PATCH 599/762] Format newlines in contest_string.inc Some of the strings declared in contest_string.inc were poorly formatted, containing newline characters in the middle of the string, opposing the format used by every string in data/text, I just updated them to match the format, making it more readable. --- data/text/contest_strings.inc | 135 ++++++++++++++++++++++------------ 1 file changed, 90 insertions(+), 45 deletions(-) diff --git a/data/text/contest_strings.inc b/data/text/contest_strings.inc index e57e76a52814..23de25af65da 100644 --- a/data/text/contest_strings.inc +++ b/data/text/contest_strings.inc @@ -4,145 +4,190 @@ gText_HighlyAppealingMove:: .string "A highly appealing move.$" gText_UserMoreEasilyStartled:: - .string "After this move, the user is\nmore easily startled.$" + .string "After this move, the user is\n" + .string "more easily startled.$" gText_GreatAppealButNoMoreToEnd:: - .string "Makes a great appeal, but\nallows no more to the end.$" + .string "Makes a great appeal, but\n" + .string "allows no more to the end.$" gText_UsedRepeatedlyWithoutBoringJudge:: .string "Can be repeatedly used\nwithout boring the JUDGE.$" gText_AvoidStartledByOthersOnce:: - .string "Can avoid being startled\nby others once.$" + .string "Can avoid being startled\n" + .string "by others once.$" gText_AvoidStartledByOthers:: - .string "Can avoid being startled\nby others.$" + .string "Can avoid being startled\n" + .string "by others.$" gText_AvoidStartledByOthersLittle:: - .string "Can avoid being startled\nby others a little.$" + .string "Can avoid being startled\n" + .string "by others a little.$" gText_UserLessLikelyStartled:: - .string "After this move, the user is\nless likely to be startled.$" + .string "After this move, the user is\n" + .string "less likely to be startled.$" gText_SlightlyStartleFrontMon:: - .string "Slightly startles the\nPOKĂ©MON in front.$" + .string "Slightly startles the\n" + .string "POKĂ©MON in front.$" gText_SlightlyStartleAppealed:: - .string "Slightly startles those\nthat have made appeals.$" + .string "Slightly startles those\n" + .string "that have made appeals.$" gText_StartleAppealedBeforeUser:: - .string "Startles the POKĂ©MON that\nappealed before the user.$" + .string "Startles the POKĂ©MON that\n" + .string "appealed before the user.$" gText_StartleAllAppealed:: - .string "Startles all POKĂ©MON that\nhave done their appeals.$" + .string "Startles all POKĂ©MON that\n" + .string "have done their appeals.$" gText_BadlyStartleFrontMon:: - .string "Badly startles the\nPOKĂ©MON in front.$" + .string "Badly startles the\n" + .string "POKĂ©MON in front.$" gText_BadlyStartleAppealed:: - .string "Badly startles those that\nhave made appeals.$" + .string "Badly startles those that\n" + .string "have made appeals.$" gText_StartleAppealedBeforeUser2:: - .string "Startles the POKĂ©MON that\nappealed before the user.$" + .string "Startles the POKĂ©MON that\n" + .string "appealed before the user.$" gText_StartleAllAppealed2:: - .string "Startles all POKĂ©MON that\nhave done their appeals.$" + .string "Startles all POKĂ©MON that\n" + .string "have done their appeals.$" gText_ShiftJudgesAttentionFromOthers:: - .string "Shifts the JUDGE's\nattention from others.$" + .string "Shifts the JUDGE's\n" + .string "attention from others.$" gText_StartleMonHasJudgesAttention:: - .string "Startles the POKĂ©MON that\nhas the JUDGE's attention.$" + .string "Startles the POKĂ©MON that\n" + .string "has the JUDGE's attention.$" gText_JamOthersMissesTurn:: - .string "Jams the others, and misses\none turn of appeals.$" + .string "Jams the others, and misses\n" + .string "one turn of appeals.$" gText_StartleMonsMadeSameTypeAppeal:: - .string "Startles POKĂ©MON that\nmade a same-type appeal.$" + .string "Startles POKĂ©MON that\n" + .string "made a same-type appeal.$" gText_BadlyStartleCoolAppeals:: - .string "Badly startles POKĂ©MON\nthat made COOL appeals.$" + .string "Badly startles POKĂ©MON\n" + .string "that made COOL appeals.$" gText_BadlyStartleBeautyAppeals:: - .string "Badly startles POKĂ©MON\nthat made BEAUTY appeals.$" + .string "Badly startles POKĂ©MON\n" + .string "that made BEAUTY appeals.$" gText_BadlyStartleCuteAppeals:: - .string "Badly startles POKĂ©MON\nthat made CUTE appeals.$" + .string "Badly startles POKĂ©MON\n" + .string "that made CUTE appeals.$" gText_BadlyStartleSmartAppeals:: - .string "Badly startles POKĂ©MON\nthat made SMART appeals.$" + .string "Badly startles POKĂ©MON\n" + .string "that made SMART appeals.$" gText_BadlyStartleToughAppeals:: - .string "Badly startles POKĂ©MON\nthat made TOUGH appeals.$" + .string "Badly startles POKĂ©MON\n" + .string "that made TOUGH appeals.$" gText_MakeMonAfterUserNervous:: - .string "Makes one POKĂ©MON after\nthe user nervous.$" + .string "Makes one POKĂ©MON after\n" + .string "the user nervous.$" gText_MakeAllMonsAfterUserNervous:: - .string "Makes all POKĂ©MON after\nthe user nervous.$" + .string "Makes all POKĂ©MON after\n" + .string "the user nervous.$" gText_WorsenConditionOfThoseMadeAppeals:: - .string "Worsens the condition of\nthose that made appeals.$" + .string "Worsens the condition of\n" + .string "those that made appeals.$" gText_BadlyStartleMonsGoodCondition:: - .string "Badly startles POKĂ©MON in\ngood condition.$" + .string "Badly startles POKĂ©MON in\n" + .string "good condition.$" gText_AppealGreatIfPerformedFirst:: - .string "The appeal works great if\nperformed first.$" + .string "The appeal works great if\n" + .string "performed first.$" gText_AppealGreatIfPerformedLast:: - .string "The appeal works great if\nperformed last.$" + .string "The appeal works great if\n" + .string "performed last.$" gText_AppealAsGoodAsThoseBeforeIt:: - .string "Makes the appeal as good\nas those before it.$" + .string "Makes the appeal as good\n" + .string "as those before it.$" gText_AppealAsGoodAsOneBeforeIt:: - .string "Makes the appeal as good\nas the one before it.$" + .string "Makes the appeal as good\n" + .string "as the one before it.$" gText_AppealBetterLaterItsPerformed:: - .string "The appeal works better\nthe later it is performed.$" + .string "The appeal works better\n" + .string "the later it is performed.$" gText_AppealVariesDependingOnTiming:: .string "The appeal's quality varies\ndepending on its timing.$" gText_WorksWellIfSameTypeAsBefore:: - .string "Works well if it's the same\ntype as the one before.$" + .string "Works well if it's the same\n" + .string "type as the one before.$" gText_WorksWellIfDifferentTypeAsBefore:: - .string "Works well if different in\ntype than the one before.$" + .string "Works well if different in\n" + .string "type than the one before.$" gText_AffectedByAppealInFront:: - .string "Affected by how well the\nappeal in front goes.$" + .string "Affected by how well the\n" + .string "appeal in front goes.$" gText_UpsConditionHelpsPreventNervousness:: - .string "Ups the user's condition.\nHelps prevent nervousness.$" + .string "Ups the user's condition.\n" + .string "Helps prevent nervousness.$" gText_AppealWorksWellIfConditionGood:: - .string "The appeal works well if the\nuser's condition is good.$" + .string "The appeal works well if the\n" + .string "user's condition is good.$" gText_NextAppealMadeEarlier:: - .string "The next appeal can be\nmade earlier next turn.$" + .string "The next appeal can be\n" + .string "made earlier next turn.$" gText_NextAppealMadeLater:: - .string "The next appeal can be\nmade later next turn.$" + .string "The next appeal can be\n" + .string "made later next turn.$" gText_TurnOrderMoreEasilyScrambled:: - .string "Makes the next turn's order\nmore easily scrambled.$" + .string "Makes the next turn's order\n" + .string "more easily scrambled.$" gText_ScrambleOrderOfNextAppeals:: - .string "Scrambles the order of\nappeals on the next turn.$" + .string "Scrambles the order of\n" + .string "appeals on the next turn.$" gText_AppealExcitesAudienceInAnyContest:: - .string "An appeal that excites the\naudience in any CONTEST.$" + .string "An appeal that excites the\n" + .string "audience in any CONTEST.$" gText_BadlyStartlesMonsGoodAppeals:: - .string "Badly startles all POKĂ©MON\nthat made good appeals.$" + .string "Badly startles all POKĂ©MON\n" + .string "that made good appeals.$" gText_AppealBestMoreCrowdExcited:: - .string "The appeal works best the\nmore the crowd is excited.$" + .string "The appeal works best the\n" + .string "more the crowd is excited.$" gText_TemporarilyStopCrowdExcited:: - .string "Temporarily stops the\ncrowd from growing excited.$" + .string "Temporarily stops the\n" + .string "crowd from growing excited.$" @ Unused move names From 1860b61fe35941d7c8a15266e6e4a2689eb1ed62 Mon Sep 17 00:00:00 2001 From: Simply BLG <61010688+SimplyBLGDev@users.noreply.github.com> Date: Fri, 17 Jun 2022 12:05:32 -0300 Subject: [PATCH 600/762] Corrected two missing newlines --- data/text/contest_strings.inc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/data/text/contest_strings.inc b/data/text/contest_strings.inc index 23de25af65da..948c19922d29 100644 --- a/data/text/contest_strings.inc +++ b/data/text/contest_strings.inc @@ -12,7 +12,8 @@ gText_GreatAppealButNoMoreToEnd:: .string "allows no more to the end.$" gText_UsedRepeatedlyWithoutBoringJudge:: - .string "Can be repeatedly used\nwithout boring the JUDGE.$" + .string "Can be repeatedly used\n" + .string "without boring the JUDGE.$" gText_AvoidStartledByOthersOnce:: .string "Can avoid being startled\n" @@ -135,7 +136,8 @@ gText_AppealBetterLaterItsPerformed:: .string "the later it is performed.$" gText_AppealVariesDependingOnTiming:: - .string "The appeal's quality varies\ndepending on its timing.$" + .string "The appeal's quality varies\n" + .string "depending on its timing.$" gText_WorksWellIfSameTypeAsBefore:: .string "Works well if it's the same\n" From 380cc8615b3c33191e4aa6de059bcbb76220fc1f Mon Sep 17 00:00:00 2001 From: Simply BLG <61010688+SimplyBLGDev@users.noreply.github.com> Date: Fri, 17 Jun 2022 14:22:31 -0300 Subject: [PATCH 601/762] Format newlines in pc_transfer.inc --- data/text/pc_transfer.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/text/pc_transfer.inc b/data/text/pc_transfer.inc index 53a82c8f1f69..3fa255340b8b 100644 --- a/data/text/pc_transfer.inc +++ b/data/text/pc_transfer.inc @@ -5,7 +5,8 @@ gText_PkmnTransferredSomeonesPC:: .string "BOX “{STR_VAR_1}.”$" gText_PkmnTransferredLanettesPC:: - .string "{STR_VAR_2} was transferred to\nLANETTE'S PC.\p" + .string "{STR_VAR_2} was transferred to\n" + .string "LANETTE'S PC.\p" .string "It was placed in \n" .string "BOX “{STR_VAR_1}.”$" From 324a157b3497405dc41c5988fa04ccdf70da95b7 Mon Sep 17 00:00:00 2001 From: Simply BLG <61010688+SimplyBLGDev@users.noreply.github.com> Date: Fri, 17 Jun 2022 15:21:12 -0300 Subject: [PATCH 602/762] Format newlines in surf.inc One of the strings declared in surf.inc was poorly formatted. ## Description Some of the strings declared in surf.inc contained newline characters in the middle of the .string line, opposing the format used by every string in the `data/text` directory, I just updated them to match the format, making it more readable. --- data/text/surf.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/text/surf.inc b/data/text/surf.inc index 453a3d5b1450..13854f7aa7d3 100644 --- a/data/text/surf.inc +++ b/data/text/surf.inc @@ -1,5 +1,6 @@ gText_WantToUseSurf:: - .string "The water is dyed a deep blue…\nWould you like to SURF?$" + .string "The water is dyed a deep blue…\n" + .string "Would you like to SURF?$" gText_PlayerUsedSurf:: .string "{STR_VAR_1} used SURF!$" From e42498ab40f72a136a20c277442a209d00701934 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Fri, 17 Jun 2022 18:06:37 -0300 Subject: [PATCH 603/762] Add bugfix from bugs_and_glitches.md to BUGFIX Item flicker fix now in `BUGFIX` Supersedes and resolves #1680 Fixes #1215 Fixes #1514 --- src/item_menu_icons.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index b1e1634992f5..c436f0feb66c 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -544,7 +544,20 @@ void AddBagItemIconSprite(u16 itemId, u8 id) void RemoveBagItemIconSprite(u8 id) { - RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); + #ifdef BUGFIX + u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM]; + + if (spriteId[id ^ 1] != SPRITE_NONE) + gSprites[spriteId[id ^ 1]].invisible = TRUE; + + if (spriteId[id] != SPRITE_NONE) + { + DestroySpriteAndFreeResources(&gSprites[spriteId[id]]); + spriteId[id] = SPRITE_NONE; + } + #else + RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); + #endif } void CreateItemMenuSwapLine(void) From b17fb2ff569ef27070c4fa9dbd67532cd640a260 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Fri, 17 Jun 2022 18:07:46 -0300 Subject: [PATCH 604/762] Delete bugs_and_glitches.md --- docs/bugs_and_glitches.md | 51 --------------------------------------- 1 file changed, 51 deletions(-) delete mode 100644 docs/bugs_and_glitches.md diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md deleted file mode 100644 index ce06c14898a5..000000000000 --- a/docs/bugs_and_glitches.md +++ /dev/null @@ -1,51 +0,0 @@ - -# Bugs and Glitches - -These are known bugs and glitches in the original PokĂ©mon Emerald game: code that clearly does not work as intended, or that only works in limited circumstances but has the possibility to fail or crash. Defining the `BUGFIX` and `UBFIX` preprocessor variables will fix some of these automatically. `UBFIX` will already be defined for MODERN builds. - -Fixes are written in the `diff` format. If you've used Git before, this should look familiar: - -```diff - this is some code --delete red - lines -+add green + lines -``` - -## Contents - -- [Scrolling through items in the bag causes the image to flicker](#scrolling-through-items-in-the-bag-causes-the-image-to-flicker) - - -## Scrolling through items in the bag causes the image to flicker - -**Fix:** Add the following function to [src/item_menu_icons.c](https://github.com/pret/pokeemerald/blob/master/src/item_menu_icons.c): -```diff -+void HideBagItemIconSprite(u8 id) -+{ -+ u8 *spriteId = &gBagMenu->spriteId[10]; -+ if (spriteId[id] != 0xFF) -+ { -+ gSprites[spriteId[id]].invisible = TRUE; -+ } -+} - -``` - -and its corresponding declaration in [include/item_menu_icons.h](https://github.com/pret/pokeemerald/blob/master/include/item_menu_icons.h): - -```diff -+void HideBagItemIconSprite(u8 id); - -``` - -Then edit `BagMenu_MoveCursorCallback` in [src/item_menu.c](https://github.com/pret/pokeemerald/blob/master/src/item_menu.c): - -```diff - ... -{ -- RemoveBagItemIconSprite(1 ^ gBagMenu->itemIconSlot); -+ HideBagItemIconSprite(gBagMenu->itemIconSlot ^ 1); -+ RemoveBagItemIconSprite(gBagMenu->itemIconSlot); - if (itemIndex != LIST_CANCEL) - ... -``` From b885e01b39b0e17acd1b23305143f8218c9ecd47 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Fri, 17 Jun 2022 18:16:14 -0300 Subject: [PATCH 605/762] Update src/item_menu_icons.c Co-authored-by: sneed <56992013+Sneed69@users.noreply.github.com> --- src/item_menu_icons.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index c436f0feb66c..d06f908095e0 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -544,20 +544,20 @@ void AddBagItemIconSprite(u16 itemId, u8 id) void RemoveBagItemIconSprite(u8 id) { - #ifdef BUGFIX - u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM]; +#ifdef BUGFIX + u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM]; - if (spriteId[id ^ 1] != SPRITE_NONE) - gSprites[spriteId[id ^ 1]].invisible = TRUE; +if (spriteId[id ^ 1] != SPRITE_NONE) + gSprites[spriteId[id ^ 1]].invisible = TRUE; - if (spriteId[id] != SPRITE_NONE) - { - DestroySpriteAndFreeResources(&gSprites[spriteId[id]]); - spriteId[id] = SPRITE_NONE; - } - #else - RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); - #endif +if (spriteId[id] != SPRITE_NONE) +{ + DestroySpriteAndFreeResources(&gSprites[spriteId[id]]); + spriteId[id] = SPRITE_NONE; +} +#else + RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); +#endif } void CreateItemMenuSwapLine(void) From d7ab1ba58896287ca83509d94b7b51c26b49b880 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Fri, 17 Jun 2022 18:22:47 -0300 Subject: [PATCH 606/762] Fix formatting --- src/item_menu_icons.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index d06f908095e0..24f0db242eff 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -547,14 +547,14 @@ void RemoveBagItemIconSprite(u8 id) #ifdef BUGFIX u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM]; -if (spriteId[id ^ 1] != SPRITE_NONE) - gSprites[spriteId[id ^ 1]].invisible = TRUE; + if (spriteId[id ^ 1] != SPRITE_NONE) + gSprites[spriteId[id ^ 1]].invisible = TRUE; -if (spriteId[id] != SPRITE_NONE) -{ - DestroySpriteAndFreeResources(&gSprites[spriteId[id]]); - spriteId[id] = SPRITE_NONE; -} + if (spriteId[id] != SPRITE_NONE) + { + DestroySpriteAndFreeResources(&gSprites[spriteId[id]]); + spriteId[id] = SPRITE_NONE; + } #else RemoveBagSprite(id + ITEMMENUSPRITE_ITEM); #endif From f02ea58a683b3617f306f5529ec269ee3c9ec6b9 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Fri, 17 Jun 2022 18:32:46 -0300 Subject: [PATCH 607/762] Add comment description of this bugfix --- src/item_menu_icons.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 24f0db242eff..5ac44f5adeb8 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -544,6 +544,8 @@ void AddBagItemIconSprite(u16 itemId, u8 id) void RemoveBagItemIconSprite(u8 id) { +// BUG: For one frame, the item you scroll to in the Bag menu +// will have an incorrect palette and may be seen as a flicker. #ifdef BUGFIX u8 *spriteId = &gBagMenu->spriteIds[ITEMMENUSPRITE_ITEM]; From 7a6b417b8e2b34a5ea4081ad3ccd0860810ebe6e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 17 Jun 2022 15:47:56 -0400 Subject: [PATCH 608/762] Remove UBFIX related to task destruction --- src/battle_anim_sound_tasks.c | 16 ++++++++++------ src/battle_factory_screen.c | 7 +------ src/battle_transition.c | 4 +--- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index 6b14d3863113..f329ea2107f2 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -135,10 +135,12 @@ void SoundTask_PlayCryHighPitch(u8 taskId) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) species = gContestResources->moveAnim->species; - #ifndef UBFIX + // Destroying the task twice (here and at end of function) + // results in an incorrect value for gAnimVisualTaskCount + #ifndef BUGFIX else - DestroyAnimVisualTask(taskId); // UB: task gets destroyed twice. - #endif + DestroyAnimVisualTask(taskId); + #endif } else { @@ -181,10 +183,12 @@ void SoundTask_PlayDoubleCry(u8 taskId) { if (gBattleAnimArgs[0] == ANIM_ATTACKER) species = gContestResources->moveAnim->species; - #ifndef UBFIX + // Destroying the task twice (here and at end of function) + // results in an incorrect value for gAnimVisualTaskCount + #ifndef BUGFIX else - DestroyAnimVisualTask(taskId); // UB: task gets destroyed twice. - #endif + DestroyAnimVisualTask(taskId); + #endif } else { diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 88e93475945a..14c63b7b88e9 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -4220,17 +4220,12 @@ static void Task_OpenMonPic(u8 taskId) return; break; default: - #ifndef UBFIX DestroyTask(taskId); - #endif - // UB: Should not use the task after it has been deleted. + // Accessing data of destroyed task. Task data isn't reset until a new task needs that task id. if (gTasks[taskId].tIsSwapScreen == TRUE) Swap_CreateMonSprite(); else Select_CreateMonSprite(); - #ifdef UBFIX - DestroyTask(taskId); - #endif return; } task->tState++; diff --git a/src/battle_transition.c b/src/battle_transition.c index 1e421b5e470a..c523cbe7b9ad 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -4762,10 +4762,8 @@ static bool8 FrontierSquaresScroll_End(struct Task *task) BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); DestroyTask(FindTaskIdByFunc(task->func)); + task->tState++; // Changing value of a destroyed task -#ifndef UBFIX - task->tState++; // UB: changing value of a destroyed task -#endif return FALSE; } From 23e9455e0a6c1ed9f115149f5a3fe78cf0a4e2ba Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Jun 2022 21:52:58 -0400 Subject: [PATCH 609/762] document design oddity, use constants, correct comment --- src/battle_ai_switch_items.c | 51 ++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 6ded48467919..9c9bc4eefafb 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2,6 +2,7 @@ #include "battle.h" #include "battle_anim.h" #include "battle_controllers.h" +#include "battle_main.h" #include "data.h" #include "pokemon.h" #include "random.h" @@ -66,13 +67,13 @@ static bool8 ShouldSwitchIfWonderGuard(void) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == B_FLANK_LEFT) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) @@ -162,13 +163,13 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == B_FLANK_LEFT) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) @@ -357,13 +358,13 @@ static bool8 FindMonWithFlagsAndSuperEffective(u8 flags, u8 moduloPercent) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == 0) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) @@ -468,13 +469,13 @@ static bool8 ShouldSwitch(void) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == B_FLANK_LEFT) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) @@ -559,13 +560,13 @@ void AI_TrySwitchOrUseItem(void) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == B_FLANK_LEFT) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } for (monToSwitchId = firstId; monToSwitchId < lastId; monToSwitchId++) @@ -615,10 +616,10 @@ static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 { // Check type1. if (TYPE_EFFECT_DEF_TYPE(i) == defType1) - *var = (*var * TYPE_EFFECT_MULTIPLIER(i)) / 10; + *var = (*var * TYPE_EFFECT_MULTIPLIER(i)) / TYPE_MUL_NORMAL; // Check type2. if (TYPE_EFFECT_DEF_TYPE(i) == defType2 && defType1 != defType2) - *var = (*var * TYPE_EFFECT_MULTIPLIER(i)) / 10; + *var = (*var * TYPE_EFFECT_MULTIPLIER(i)) / TYPE_MUL_NORMAL; } i += 3; } @@ -627,7 +628,7 @@ static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 u8 GetMostSuitableMonToSwitchInto(void) { u8 opposingBattler; - u8 bestDmg; // Note : should be changed to u32 for obvious reasons. + u8 bestDmg; // Note: should be changed to s32 since it is also used for the actual damage done later u8 bestMonId; u8 battlerIn1, battlerIn2; s32 firstId; @@ -665,13 +666,13 @@ u8 GetMostSuitableMonToSwitchInto(void) if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) { if ((gActiveBattler & BIT_FLANK) == B_FLANK_LEFT) - firstId = 0, lastId = 3; + firstId = 0, lastId = PARTY_SIZE / 2; else - firstId = 3, lastId = 6; + firstId = PARTY_SIZE / 2, lastId = PARTY_SIZE; } else { - firstId = 0, lastId = 6; + firstId = 0, lastId = PARTY_SIZE; } if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) @@ -683,7 +684,7 @@ u8 GetMostSuitableMonToSwitchInto(void) while (invalidMons != 0x3F) // All mons are invalid. { - bestDmg = 0; + bestDmg = ; bestMonId = 6; // Find the mon whose type is the most suitable offensively. for (i = firstId; i < lastId; i++) @@ -699,9 +700,13 @@ u8 GetMostSuitableMonToSwitchInto(void) { u8 type1 = gBaseStats[species].type1; u8 type2 = gBaseStats[species].type2; - u8 typeDmg = 10; + u8 typeDmg = TYPE_MUL_NORMAL; ModulateByTypeEffectiveness(gBattleMons[opposingBattler].type1, type1, type2, &typeDmg); ModulateByTypeEffectiveness(gBattleMons[opposingBattler].type2, 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 + is a legitimate mistake or if it's an intentional, if weird, design choice*/ if (bestDmg < typeDmg) { bestDmg = typeDmg; From d3c8346a676cec0a0e18f0acb4a9b4c8b418dde6 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Fri, 17 Jun 2022 21:58:56 -0400 Subject: [PATCH 610/762] fix type, add bugfix --- src/battle_ai_switch_items.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 9c9bc4eefafb..c872717220ef 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -628,7 +628,11 @@ static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 u8 GetMostSuitableMonToSwitchInto(void) { u8 opposingBattler; +#ifdef BUGFIX + s32 bestDmg; +#else u8 bestDmg; // Note: should be changed to s32 since it is also used for the actual damage done later +#endif u8 bestMonId; u8 battlerIn1, battlerIn2; s32 firstId; @@ -684,8 +688,8 @@ u8 GetMostSuitableMonToSwitchInto(void) while (invalidMons != 0x3F) // All mons are invalid. { - bestDmg = ; - bestMonId = 6; + bestDmg = TYPE_MUL_NO_EFFECT; + bestMonId = PARTY_SIZE; // Find the mon whose type is the most suitable offensively. for (i = firstId; i < lastId; i++) { @@ -706,7 +710,7 @@ u8 GetMostSuitableMonToSwitchInto(void) /* 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 - is a legitimate mistake or if it's an intentional, if weird, design choice*/ + is a legitimate mistake or if it's an intentional, if weird, design choice */ if (bestDmg < typeDmg) { bestDmg = typeDmg; From c8e6d69fdcacab404ae69cbefe7c318e7c363c54 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Sat, 18 Jun 2022 11:49:13 -0300 Subject: [PATCH 611/762] Format newline in BattleBattleFrontier_BattlePikeLobby/scripts.inc One of the strings declared in BattleFrontier_BattlePikeLobby/scripts.inc was poorly formatted. --- data/maps/BattleFrontier_BattlePikeLobby/scripts.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc index 320e12d996a4..3e729e21211f 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc @@ -364,7 +364,8 @@ BattleFrontier_BattlePikeLobby_Text_AwardYouTheseBattlePoints2: @ Unused BattleFrontier_BattlePikeLobby_Text_ReachedBattlePointLimit: .string "You appear to have reached the limit\n" - .string "for Battle Points…\pPlease exchange some Battle Points\n" + .string "for Battle Points…\p" + .string "Please exchange some Battle Points\n" .string "for prizes, then return…$" BattleFrontier_BattlePikeLobby_Text_FailedToSaveBeforeQuitting: From 3de23b332a7e67e0748bdb469b059f718fb8c029 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Sat, 18 Jun 2022 21:51:05 -0300 Subject: [PATCH 612/762] Supplant https://github.com/pret/pokeemerald/pull/1579 --- data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc index 406ab46aecf7..def903b1dfeb 100644 --- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc @@ -5,6 +5,10 @@ .set LOCALID_PLAYER, 13 .set LOCALID_OPPONENT, 15 +.set NO_DRAW, 0 +.set DRAW_TRAINER, 1 +.set DRAW_TUCKER, 2 + BattleFrontier_BattleDomeBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleDomeBattleRoom_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeBattleRoom_OnFrame @@ -12,10 +16,6 @@ BattleFrontier_BattleDomeBattleRoom_MapScripts:: map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleDomeBattleRoom_OnResume .byte 0 - .set NO_DRAW, 0 - .set DRAW_TRAINER, 1 - .set DRAW_TUCKER, 2 - BattleFrontier_BattleDomeBattleRoom_OnTransition: dome_setopponentgfx frontier_get FRONTIER_DATA_BATTLE_NUM From 5d7140fa83ab5745ce0f56841c66805fab59f149 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Sun, 19 Jun 2022 13:33:47 +0100 Subject: [PATCH 613/762] Fix missing COPYWIN_FULL constant use --- src/main_menu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main_menu.c b/src/main_menu.c index a69f73d1783c..d11784133ccb 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -2270,7 +2270,7 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8 windowId, u8 copyToVram) FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); PutWindowTilemap(windowId); if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); + CopyWindowToVram(windowId, COPYWIN_FULL); } static void NewGameBirchSpeech_CreateDialogueWindowBorder(u8 bg, u8 x, u8 y, u8 width, u8 height, u8 palNum) From 8950a41bfd1488c06aca80d38a6b1e56f135c704 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 21 Jun 2022 18:31:09 -0400 Subject: [PATCH 614/762] Update some GF rom header names --- src/rom_header_gf.c | 49 +++++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index 782a05c75cb9..b854c899e5bb 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -30,10 +30,10 @@ struct GFRomHeader u32 pokedexFlag; u32 mysteryEventFlag; u32 pokedexCount; - u8 unk1; + u8 playerNameLength; u8 unk2; - u8 unk3; - u8 unk4; + u8 pokemonNameLength1; + u8 pokemonNameLength2; u8 unk5; u8 unk6; u8 unk7; @@ -79,8 +79,8 @@ struct GFRomHeader u32 pcItemsOffset; u32 giftRibbonsOffset; u32 enigmaBerryOffset; - u32 mapViewOffset; - u32 unk19; + u32 enigmaBerrySize; + const u8 * moveDescriptions; u32 unk20; }; @@ -110,23 +110,24 @@ static const struct GFRomHeader sGFRomHeader = { .pokedexFlag = FLAG_RECEIVED_POKEDEX_FROM_BIRCH, .mysteryEventFlag = FLAG_SYS_MYSTERY_EVENT_ENABLE, .pokedexCount = NATIONAL_DEX_COUNT, - .unk1 = 0x07, - .unk2 = 0x0a, - .unk3 = 0x0a, - .unk4 = 0x0a, - .unk5 = 0x0c, - .unk6 = 0x0c, - .unk7 = 0x06, - .unk8 = 0x0c, - .unk9 = 0x06, - .unk10 = 0x10, - .unk11 = 0x12, - .unk12 = 0x0c, - .unk13 = 0x0f, - .unk14 = 0x0b, - .unk15 = 0x01, - .unk16 = 0x08, - .unk17 = 0x0c, + .playerNameLength = PLAYER_NAME_LENGTH, + .unk2 = 10, + .pokemonNameLength1 = POKEMON_NAME_LENGTH, + .pokemonNameLength2 = POKEMON_NAME_LENGTH, + // Two of the below 12s are likely move/ability name length, given their presence in this header + .unk5 = 12, + .unk6 = 12, + .unk7 = 6, + .unk8 = 12, + .unk9 = 6, + .unk10 = 16, + .unk11 = 18, + .unk12 = 12, + .unk13 = 15, + .unk14 = 11, + .unk15 = 1, + .unk16 = 8, + .unk17 = 12, .saveBlock2Size = sizeof(struct SaveBlock2), .saveBlock1Size = sizeof(struct SaveBlock1), .partyCountOffset = offsetof(struct SaveBlock1, playerPartyCount), @@ -159,7 +160,7 @@ static const struct GFRomHeader sGFRomHeader = { .pcItemsOffset = offsetof(struct SaveBlock1, pcItems), .giftRibbonsOffset = offsetof(struct SaveBlock1, giftRibbons), .enigmaBerryOffset = offsetof(struct SaveBlock1, enigmaBerry), - .mapViewOffset = offsetof(struct SaveBlock1, mapView), - .unk19 = 0x00000000, + .enigmaBerrySize = sizeof(struct EnigmaBerry), + .moveDescriptions = NULL, .unk20 = 0x00000000, // 0xFFFFFFFF in FRLG }; From 2e7f50064c71cdd261af196b39aa877653852b81 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Tue, 28 Jun 2022 00:11:59 -0400 Subject: [PATCH 615/762] use floats for tempo calculation --- tools/mid2agb/agb.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/mid2agb/agb.cpp b/tools/mid2agb/agb.cpp index d4d79f133747..caa6f0ecd9e6 100644 --- a/tools/mid2agb/agb.cpp +++ b/tools/mid2agb/agb.cpp @@ -18,6 +18,7 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +#include #include #include #include @@ -503,7 +504,7 @@ void PrintAgbTrack(std::vector& events) ResetTrackVars(); break; case EventType::Tempo: - PrintByte("TEMPO , %u*%s_tbs/2", 60000000 / event.param2, g_asmLabel.c_str()); + PrintByte("TEMPO , %u*%s_tbs/2", static_cast(round(60000000.0f / static_cast(event.param2))), g_asmLabel.c_str()); PrintWait(event.time); break; case EventType::InstrumentChange: From 4e76ffb4cac99a9df34eb1dd04f6e67a93ad81a0 Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Mon, 4 Jul 2022 21:25:19 +0100 Subject: [PATCH 616/762] Identify a % 16 --- src/field_camera.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/field_camera.c b/src/field_camera.c index 95c7ed9522aa..9b129e6b2613 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -404,9 +404,9 @@ void CameraUpdate(void) } gFieldCamera.x += movementSpeedX; - gFieldCamera.x = gFieldCamera.x - 16 * (gFieldCamera.x / 16); + gFieldCamera.x %= 16; gFieldCamera.y += movementSpeedY; - gFieldCamera.y = gFieldCamera.y - 16 * (gFieldCamera.y / 16); + gFieldCamera.y %= 16; if (deltaX != 0 || deltaY != 0) { From c9958e3087eac6e4bc9c5bbe06022690cbe06d75 Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Tue, 5 Jul 2022 14:17:46 +0100 Subject: [PATCH 617/762] Simplify GetBattleTransitionTypeByMap --- src/battle_setup.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/battle_setup.c b/src/battle_setup.c index f928cf3f94fb..be2f7e85911b 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -699,21 +699,22 @@ static u8 GetBattleTransitionTypeByMap(void) PlayerGetDestCoords(&x, &y); tileBehavior = MapGridGetMetatileBehaviorAt(x, y); + if (GetFlashLevel()) return TRANSITION_TYPE_FLASH; - if (!MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) + + if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) + return TRANSITION_TYPE_WATER; + + switch (gMapHeader.mapType) { - switch (gMapHeader.mapType) - { - case MAP_TYPE_UNDERGROUND: - return TRANSITION_TYPE_CAVE; - case MAP_TYPE_UNDERWATER: - return TRANSITION_TYPE_WATER; - default: - return TRANSITION_TYPE_NORMAL; - } + case MAP_TYPE_UNDERGROUND: + return TRANSITION_TYPE_CAVE; + case MAP_TYPE_UNDERWATER: + return TRANSITION_TYPE_WATER; + default: + return TRANSITION_TYPE_NORMAL; } - return TRANSITION_TYPE_WATER; } static u16 GetSumOfPlayerPartyLevel(u8 numMons) From e6a374f2b6bd0edc44459e74e76ecd668998b2b3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 6 Jul 2022 14:38:27 -0400 Subject: [PATCH 618/762] Rename faintifabilitynotdamp and jumpifattackandspecialattackcannotfall --- asm/macros/battle_script.inc | 4 ++-- data/battle_scripts_1.s | 18 ++++++++++-------- src/battle_script_commands.c | 18 ++++++++++++------ 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 73b3beca0ba8..0a44f6075af3 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -668,7 +668,7 @@ .byte 0x77 .endm - .macro faintifabilitynotdamp + .macro tryexplosion .byte 0x78 .endm @@ -1031,7 +1031,7 @@ .byte 0xc8 .endm - .macro jumpifattackandspecialattackcannotfall ptr:req + .macro trymemento ptr:req .byte 0xc9 .4byte \ptr .endm diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index e3408a3a789c..8dd80c915813 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -374,7 +374,8 @@ BattleScript_EffectExplosion:: attackcanceler attackstring ppreduce - faintifabilitynotdamp +@ Below jumps to BattleScript_DampStopsExplosion if it fails (only way it can) + tryexplosion setatkhptozero waitstate jumpifbyte CMP_NO_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_MISSED, BattleScript_ExplosionDoAnimStartLoop @@ -2201,10 +2202,10 @@ BattleScript_AlreadyBurned:: BattleScript_EffectMemento:: attackcanceler - jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_MementoFailProtect + jumpifbyte CMP_EQUAL, cMISS_TYPE, B_MSG_PROTECTED, BattleScript_MementoTargetProtect attackstring ppreduce - jumpifattackandspecialattackcannotfall BattleScript_ButItFailed + trymemento BattleScript_ButItFailed setatkhptozero attackanimation waitanimation @@ -2214,7 +2215,7 @@ BattleScript_EffectMemento:: playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_ATK, 2, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk - @ Greater than STAT_FELL is checking if the stat cannot decrease +@ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTrySpAtk printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG @@ -2222,7 +2223,7 @@ BattleScript_EffectMementoTrySpAtk: playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTryFaint - @ Greater than STAT_FELL is checking if the stat cannot decrease +@ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTryFaint printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG @@ -2233,11 +2234,12 @@ BattleScript_EffectMementoPrintNoEffect: printstring STRINGID_BUTNOEFFECT waitmessage B_WAIT_TIME_LONG goto BattleScript_EffectMementoTryFaint -BattleScript_MementoFailProtect: +@ If the target is protected there's no need to check the target's stats or animate, the user will just faint +BattleScript_MementoTargetProtect: attackstring ppreduce - jumpifattackandspecialattackcannotfall BattleScript_MementoFailEnd -BattleScript_MementoFailEnd: + trymemento BattleScript_MementoTargetProtectEnd +BattleScript_MementoTargetProtectEnd: setatkhptozero pause B_WAIT_TIME_LONG effectivenesssound diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 4f31f0f01c76..560b13966476 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -196,7 +196,7 @@ static void Cmd_hpthresholds2(void); static void Cmd_useitemonopponent(void); static void Cmd_various(void); static void Cmd_setprotectlike(void); -static void Cmd_faintifabilitynotdamp(void); +static void Cmd_tryexplosion(void); static void Cmd_setatkhptozero(void); static void Cmd_jumpifnexttargetvalid(void); static void Cmd_tryhealhalfhealth(void); @@ -277,7 +277,7 @@ static void Cmd_setsemiinvulnerablebit(void); static void Cmd_clearsemiinvulnerablebit(void); static void Cmd_setminimize(void); static void Cmd_sethail(void); -static void Cmd_jumpifattackandspecialattackcannotfall(void); +static void Cmd_trymemento(void); static void Cmd_setforcedtarget(void); static void Cmd_setcharge(void); static void Cmd_callterrainattack(void); @@ -448,7 +448,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_useitemonopponent, //0x75 Cmd_various, //0x76 Cmd_setprotectlike, //0x77 - Cmd_faintifabilitynotdamp, //0x78 + Cmd_tryexplosion, //0x78 Cmd_setatkhptozero, //0x79 Cmd_jumpifnexttargetvalid, //0x7A Cmd_tryhealhalfhealth, //0x7B @@ -529,7 +529,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_clearsemiinvulnerablebit, //0xC6 Cmd_setminimize, //0xC7 Cmd_sethail, //0xC8 - Cmd_jumpifattackandspecialattackcannotfall, //0xC9 + Cmd_trymemento, //0xC9 Cmd_setforcedtarget, //0xCA Cmd_setcharge, //0xCB Cmd_callterrainattack, //0xCC @@ -6489,11 +6489,12 @@ static void Cmd_setprotectlike(void) // protect and endure gBattlescriptCurrInstr++; } -static void Cmd_faintifabilitynotdamp(void) +static void Cmd_tryexplosion(void) { if (gBattleControllerExecFlags) return; + // Explosion can only fail if any battler has Damp for (gBattlerTarget = 0; gBattlerTarget < gBattlersCount; gBattlerTarget++) { if (gBattleMons[gBattlerTarget].ability == ABILITY_DAMP) @@ -6502,12 +6503,14 @@ static void Cmd_faintifabilitynotdamp(void) if (gBattlerTarget == gBattlersCount) { + // 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); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr++; + // Mark Explosion user as absent for (gBattlerTarget = 0; gBattlerTarget < gBattlersCount; gBattlerTarget++) { if (gBattlerTarget == gBattlerAttacker) @@ -6518,6 +6521,7 @@ static void Cmd_faintifabilitynotdamp(void) } else { + // Failed, a battler has Damp gLastUsedAbility = ABILITY_DAMP; RecordAbilityBattle(gBattlerTarget, gBattleMons[gBattlerTarget].ability); gBattlescriptCurrInstr = BattleScript_DampStopsExplosion; @@ -8950,16 +8954,18 @@ static void Cmd_sethail(void) gBattlescriptCurrInstr++; } -static void Cmd_jumpifattackandspecialattackcannotfall(void) // memento +static void Cmd_trymemento(void) { if (gBattleMons[gBattlerTarget].statStages[STAT_ATK] == MIN_STAT_STAGE && gBattleMons[gBattlerTarget].statStages[STAT_SPATK] == MIN_STAT_STAGE && gBattleCommunication[MISS_TYPE] != B_MSG_PROTECTED) { + // Failed, unprotected target already has minimum Attack and Special Attack. gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } else { + // Success, drop user's HP bar to 0 gActiveBattler = gBattlerAttacker; gBattleMoveDamage = gBattleMons[gActiveBattler].hp; BtlController_EmitHealthBarUpdate(BUFFER_A, INSTANT_HP_BAR_DROP); From 2c4c9497d2012a3568910a95e6161a2dcbe6a1a0 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 6 Jul 2022 15:02:17 -0400 Subject: [PATCH 619/762] Fix comment --- src/battle_script_commands.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 560b13966476..be02ba34b9dd 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6510,7 +6510,7 @@ static void Cmd_tryexplosion(void) MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr++; - // Mark Explosion user as absent + // Find first target for (gBattlerTarget = 0; gBattlerTarget < gBattlersCount; gBattlerTarget++) { if (gBattlerTarget == gBattlerAttacker) From 06dc93fc2f3159276373aafa868c0c3414d5ff91 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 6 Jul 2022 21:04:54 -0400 Subject: [PATCH 620/762] Clean up field_poison.c --- include/strings.h | 2 +- src/field_poison.c | 58 ++++++++++++++++++++++------------------------ src/fldeff_misc.c | 22 +++++++++++------- src/strings.c | 2 +- 4 files changed, 44 insertions(+), 40 deletions(-) diff --git a/include/strings.h b/include/strings.h index a22aa307bb7c..9570ca80f9a5 100644 --- a/include/strings.h +++ b/include/strings.h @@ -179,7 +179,7 @@ extern const u8 gText_EmptyString2[]; extern const u8 gText_Confirm3[]; extern const u8 gText_Cancel4[]; extern const u8 gText_IsThisTheCorrectTime[]; -extern const u8 gText_PkmnFainted3[]; +extern const u8 gText_PkmnFainted_FldPsn[]; extern const u8 gText_Coins[]; extern const u8 gText_Silver[]; extern const u8 gText_Gold[]; diff --git a/src/field_poison.c b/src/field_poison.c index 90013243cd8a..a74057f21677 100644 --- a/src/field_poison.c +++ b/src/field_poison.c @@ -21,9 +21,8 @@ static bool32 IsMonValidSpecies(struct Pokemon *pokemon) { u16 species = GetMonData(pokemon, MON_DATA_SPECIES2); if (species == SPECIES_NONE || species == SPECIES_EGG) - { return FALSE; - } + return TRUE; } @@ -35,16 +34,14 @@ static bool32 AllMonsFainted(void) for (i = 0; i < PARTY_SIZE; i++, pokemon++) { if (IsMonValidSpecies(pokemon) && GetMonData(pokemon, MON_DATA_HP) != 0) - { return FALSE; - } } return TRUE; } static void FaintFromFieldPoison(u8 partyIdx) { - struct Pokemon *pokemon = gPlayerParty + partyIdx; + struct Pokemon *pokemon = &gPlayerParty[partyIdx]; u32 status = STATUS1_NONE; AdjustFriendship(pokemon, FRIENDSHIP_EVENT_FAINT_FIELD_PSN); @@ -55,49 +52,47 @@ static void FaintFromFieldPoison(u8 partyIdx) static bool32 MonFaintedFromPoison(u8 partyIdx) { - struct Pokemon *pokemon = gPlayerParty + partyIdx; + struct Pokemon *pokemon = &gPlayerParty[partyIdx]; if (IsMonValidSpecies(pokemon) && GetMonData(pokemon, MON_DATA_HP) == 0 && GetAilmentFromStatus(GetMonData(pokemon, MON_DATA_STATUS)) == AILMENT_PSN) - { return TRUE; - } + return FALSE; } +#define tState data[0] +#define tPartyIdx data[1] + static void Task_TryFieldPoisonWhiteOut(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: - for (; data[1] < PARTY_SIZE; data[1]++) + for (; tPartyIdx < PARTY_SIZE; tPartyIdx++) { - if (MonFaintedFromPoison(data[1])) + if (MonFaintedFromPoison(tPartyIdx)) { - FaintFromFieldPoison(data[1]); - ShowFieldMessage(gText_PkmnFainted3); - data[0]++; + FaintFromFieldPoison(tPartyIdx); + ShowFieldMessage(gText_PkmnFainted_FldPsn); + tState++; return; } } - data[0] = 2; + tState = 2; // Finished checking party break; case 1: + // Wait for "{mon} fainted" message, then return to party loop if (IsFieldMessageBoxHidden()) - { - data[0]--; - } + tState--; break; case 2: if (AllMonsFainted()) { + // Battle facilities have their own white out script to handle the challenge loss if (InBattlePyramid() | InBattlePike() || InTrainerHillChallenge()) - { gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT; - } else - { gSpecialVar_Result = FLDPSN_WHITEOUT; - } } else { @@ -109,6 +104,9 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId) } } +#undef tState +#undef tPartyIdx + void TryFieldPoisonWhiteOut(void) { CreateTask(Task_TryFieldPoisonWhiteOut, 80); @@ -122,31 +120,31 @@ s32 DoPoisonFieldEffect(void) struct Pokemon *pokemon = gPlayerParty; u32 numPoisoned = 0; u32 numFainted = 0; + for (i = 0; i < PARTY_SIZE; i++) { if (GetMonData(pokemon, MON_DATA_SANITY_HAS_SPECIES) && GetAilmentFromStatus(GetMonData(pokemon, MON_DATA_STATUS)) == AILMENT_PSN) { + // Apply poison damage hp = GetMonData(pokemon, MON_DATA_HP); if (hp == 0 || --hp == 0) - { numFainted++; - } + SetMonData(pokemon, MON_DATA_HP, &hp); numPoisoned++; } pokemon++; } + + // Do screen flash effect if (numFainted != 0 || numPoisoned != 0) - { FldEffPoison_Start(); - } + if (numFainted != 0) - { return FLDPSN_FNT; - } + if (numPoisoned != 0) - { return FLDPSN_PSN; - } + return FLDPSN_NONE; } diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index 4f3f53fa60c5..fe14d36425cc 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -1200,29 +1200,35 @@ bool8 IsLargeBreakableDecoration(u16 metatileId, bool8 checkBase) return FALSE; } +#define tState data[0] +#define tMosaic data[1] + static void Task_FieldPoisonEffect(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: - data[1] += 2; - if (data[1] > 8) - data[0]++; + tMosaic += 2; + if (tMosaic > 8) + tState++; break; case 1: - data[1] -= 2; - if (data[1] == 0) - data[0]++; + tMosaic -= 2; + if (tMosaic == 0) + tState++; break; case 2: DestroyTask(taskId); return; } - SetGpuReg(REG_OFFSET_MOSAIC, (data[1] << 4) | data[1]); + SetGpuReg(REG_OFFSET_MOSAIC, (tMosaic << 4) | tMosaic); } +#undef tState +#undef tMosaic + void FldEffPoison_Start(void) { PlaySE(SE_FIELD_POISON); diff --git a/src/strings.c b/src/strings.c index 492a9601d214..d2a82ada48e4 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1186,7 +1186,7 @@ const u8 gText_PsychUp48BP[] = _("PSYCH UP{CLEAR_TO 0x4E}48BP"); const u8 gText_IcePunch48BP[] = _("ICE PUNCH{CLEAR_TO 0x4E}48BP"); const u8 gText_ThunderPunch48BP[] = _("THUNDERPUNCH{CLEAR_TO 0x4E}48BP"); const u8 gText_FirePunch48BP[] = _("FIRE PUNCH{CLEAR_TO 0x4E}48BP"); -const u8 gText_PkmnFainted3[] = _("{STR_VAR_1} fainted…\p\n"); +const u8 gText_PkmnFainted_FldPsn[] = _("{STR_VAR_1} fainted…\p\n"); const u8 gText_Marco[] = _("MARCO"); const u8 gText_TrainerCardName[] = _("NAME: "); const u8 gText_TrainerCardIDNo[] = _("IDNo."); From 15f386ede6c604511559224c485fbd0604a761ab Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 8 Jul 2022 01:34:38 -0400 Subject: [PATCH 621/762] Move make compare to its own build section --- INSTALL.md | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 7f1d47879ff2..02851644ad34 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -418,21 +418,16 @@ If you aren't in the pokeemerald directory already, then **change directory** to ```bash cd pokeemerald ``` -To build **pokeemerald.gba** for the first time and confirm it matches the official ROM image (Note: to speed up builds, see [Parallel builds](#parallel-builds)): +To build **pokeemerald.gba** (Note: to speed up builds, see [Parallel builds](#parallel-builds)): ```bash -make compare +make ``` -If an OK is returned, then the installation went smoothly. +If it has built successfully you will have the output file **pokeemerald.gba** in your project folder.
Note for Windows... > If you switched terminals since the last build (e.g. from msys2 to WSL1), you must run `make clean-tools` once before any subsequent `make` commands.
-To build **pokeemerald.gba** with your changes: -```bash -make -``` - # Building guidance ## Parallel builds @@ -451,6 +446,22 @@ Replace `` with the number that the `nproc` command returned. `nproc` is not available on macOS. The alternative is `sysctl -n hw.ncpu` ([relevant Stack Overflow thread](https://stackoverflow.com/questions/1715580)). +## Compare ROM to the original + +For contributing, or if you'd simply like to verify that your ROM is identical to the original game, run: +```bash +make compare +``` +If it matches, you will see the following at the end of the output: +```bash +pokeemerald.gba: OK +``` +If there are any changes from the original game, you will instead see: +```bash +pokeemerald.gba: FAILED +shasum: WARNING: 1 computed checksum did NOT match +``` + ## devkitARM's C compiler This project supports the `arm-none-eabi-gcc` compiler included with devkitARM. If devkitARM (a.k.a. gba-dev) has already been installed as part of the platform-specific instructions, simply run: From a1004485c558538e1401c5bffbb0e517f54d8431 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Sun, 10 Jul 2022 20:08:28 -0300 Subject: [PATCH 622/762] Relocated TYPE_NAME_LENGTH and ABILITY_NAME_LENGTH --- include/battle_main.h | 3 --- include/constants/global.h | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/battle_main.h b/include/battle_main.h index b7691b4fd14e..449131e534ec 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -22,9 +22,6 @@ struct MultiPartnerMenuPokemon /*0x1D*/ u8 language; }; -#define TYPE_NAME_LENGTH 6 -#define ABILITY_NAME_LENGTH 12 - // defines for the u8 array gTypeEffectiveness #define TYPE_EFFECT_ATK_TYPE(i)((gTypeEffectiveness[i + 0])) #define TYPE_EFFECT_DEF_TYPE(i)((gTypeEffectiveness[i + 1])) diff --git a/include/constants/global.h b/include/constants/global.h index 096094220d6b..f4b503c327bb 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -101,6 +101,8 @@ #define WONDER_NEWS_TEXT_LENGTH 40 #define WONDER_CARD_BODY_TEXT_LINES 4 #define WONDER_NEWS_BODY_TEXT_LINES 10 +#define TYPE_NAME_LENGTH 6 +#define ABILITY_NAME_LENGTH 12 #define MAX_STAMP_CARD_STAMPS 7 From 186f2c0232238653a1aa9eda718cc993996e7443 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 11 Jul 2022 15:18:13 +0100 Subject: [PATCH 623/762] Introduce a MOVE_UNAVAILABLE constant --- include/constants/moves.h | 3 + src/battle_ai_switch_items.c | 15 ++-- src/battle_dome.c | 2 +- src/battle_script_commands.c | 149 +++++++++++++++++++---------------- src/battle_util.c | 20 ++--- src/contest.c | 6 +- src/pokemon.c | 6 +- 7 files changed, 112 insertions(+), 89 deletions(-) diff --git a/include/constants/moves.h b/include/constants/moves.h index 85c02e3da5b5..324bfb899628 100644 --- a/include/constants/moves.h +++ b/include/constants/moves.h @@ -359,4 +359,7 @@ #define MOVES_COUNT 355 +// Used for checks for moves affected by Disable, Mimic, etc. +#define MOVE_UNAVAILABLE 0xFFFF + #endif // GUARD_CONSTANTS_MOVES_H diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index c872717220ef..169fa5f4f6b7 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -127,9 +127,9 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) if (HasSuperEffectiveMoveAgainstOpponents(TRUE) && Random() % 3 != 0) return FALSE; - if (gLastLandedMoves[gActiveBattler] == 0) + if (gLastLandedMoves[gActiveBattler] == MOVE_NONE) return FALSE; - if (gLastLandedMoves[gActiveBattler] == 0xFFFF) + if (gLastLandedMoves[gActiveBattler] == MOVE_UNAVAILABLE) return FALSE; if (gBattleMoves[gLastLandedMoves[gActiveBattler]].power == 0) return FALSE; @@ -224,13 +224,16 @@ static bool8 ShouldSwitchIfNaturalCure(void) if (gBattleMons[gActiveBattler].hp < gBattleMons[gActiveBattler].maxHP / 2) return FALSE; - if ((gLastLandedMoves[gActiveBattler] == 0 || gLastLandedMoves[gActiveBattler] == 0xFFFF) && Random() & 1) + if ((gLastLandedMoves[gActiveBattler] == MOVE_NONE + || gLastLandedMoves[gActiveBattler] == MOVE_UNAVAILABLE) + && Random() & 1) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } - else if (gBattleMoves[gLastLandedMoves[gActiveBattler]].power == 0 && Random() & 1) + else if (gBattleMoves[gLastLandedMoves[gActiveBattler]].power == 0 + && Random() & 1) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); @@ -332,9 +335,9 @@ static bool8 FindMonWithFlagsAndSuperEffective(u8 flags, u8 moduloPercent) u16 move; u8 moveFlags; - if (gLastLandedMoves[gActiveBattler] == 0) + if (gLastLandedMoves[gActiveBattler] == MOVE_NONE) return FALSE; - if (gLastLandedMoves[gActiveBattler] == 0xFFFF) + if (gLastLandedMoves[gActiveBattler] == MOVE_UNAVAILABLE) return FALSE; if (gLastHitBy[gActiveBattler] == 0xFF) return FALSE; diff --git a/src/battle_dome.c b/src/battle_dome.c index cbd9d0b6b97f..8385e831b0b7 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2747,7 +2747,7 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int mode) int i = 0; int typePower = TYPE_x1; - if (move == MOVE_NONE || move == 0xFFFF || gBattleMoves[move].power == 0) + if (move == MOVE_NONE || move == MOVE_UNAVAILABLE || gBattleMoves[move].power == 0) return 0; defType1 = gBaseStats[targetSpecies].type1; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 4f31f0f01c76..4689e4fb0289 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -2355,7 +2355,7 @@ void SetMoveEffect(bool8 primary, u8 certain) break; if (gBattleMons[gEffectBattler].status1) break; - if (noSunCanFreeze == 0) + if (noSunCanFreeze == FALSE) break; if (gBattleMons[gEffectBattler].ability == ABILITY_MAGMA_ARMOR) break; @@ -2553,9 +2553,9 @@ void SetMoveEffect(bool8 primary, u8 certain) case MOVE_EFFECT_PAYDAY: if (GET_BATTLER_SIDE(gBattlerAttacker) == B_SIDE_PLAYER) { - u16 PayDay = gPaydayMoney; + u16 payDay = gPaydayMoney; gPaydayMoney += (gBattleMons[gBattlerAttacker].level * 5); - if (PayDay > gPaydayMoney) + if (payDay > gPaydayMoney) gPaydayMoney = 0xFFFF; } BattleScriptPush(gBattlescriptCurrInstr + 1); @@ -2743,10 +2743,10 @@ void SetMoveEffect(bool8 primary, u8 certain) gLastUsedAbility = gBattleMons[gBattlerTarget].ability; RecordAbilityBattle(gBattlerTarget, gLastUsedAbility); } - else if (gBattleMons[gBattlerAttacker].item != 0 + else if (gBattleMons[gBattlerAttacker].item != ITEM_NONE || gBattleMons[gBattlerTarget].item == ITEM_ENIGMA_BERRY || IS_ITEM_MAIL(gBattleMons[gBattlerTarget].item) - || gBattleMons[gBattlerTarget].item == 0) + || gBattleMons[gBattlerTarget].item == ITEM_NONE) { gBattlescriptCurrInstr++; } @@ -4184,8 +4184,8 @@ static void Cmd_moveend(void) u8 endMode, endState; u16 originallyUsedMove; - if (gChosenMove == 0xFFFF) - originallyUsedMove = 0; + if (gChosenMove == MOVE_UNAVAILABLE) + originallyUsedMove = MOVE_NONE; else originallyUsedMove = gChosenMove; @@ -4206,10 +4206,13 @@ static void Cmd_moveend(void) { case MOVEEND_RAGE: // rage check if (gBattleMons[gBattlerTarget].status2 & STATUS2_RAGE - && gBattleMons[gBattlerTarget].hp != 0 && gBattlerAttacker != gBattlerTarget + && gBattleMons[gBattlerTarget].hp != 0 + && gBattlerAttacker != gBattlerTarget && GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gBattlerTarget) - && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) && TARGET_TURN_DAMAGED - && gBattleMoves[gCurrentMove].power && gBattleMons[gBattlerTarget].statStages[STAT_ATK] < MAX_STAT_STAGE) + && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) + && TARGET_TURN_DAMAGED + && gBattleMoves[gCurrentMove].power != 0 + && gBattleMons[gBattlerTarget].statStages[STAT_ATK] < MAX_STAT_STAGE) { gBattleMons[gBattlerTarget].statStages[STAT_ATK]++; BattleScriptPushCursor(); @@ -4220,9 +4223,11 @@ static void Cmd_moveend(void) break; case MOVEEND_DEFROST: // defrosting check if (gBattleMons[gBattlerTarget].status1 & STATUS1_FREEZE - && gBattleMons[gBattlerTarget].hp != 0 && gBattlerAttacker != gBattlerTarget + && gBattleMons[gBattlerTarget].hp != 0 + && gBattlerAttacker != gBattlerTarget && gSpecialStatuses[gBattlerTarget].specialDmg - && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) && moveType == TYPE_FIRE) + && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) + && moveType == TYPE_FIRE) { gBattleMons[gBattlerTarget].status1 &= ~STATUS1_FREEZE; gActiveBattler = gBattlerTarget; @@ -4259,7 +4264,7 @@ static void Cmd_moveend(void) if (gHitMarker & HITMARKER_OBEYS && holdEffectAtk == HOLD_EFFECT_CHOICE_BAND && gChosenMove != MOVE_STRUGGLE - && (*choicedMoveAtk == 0 || *choicedMoveAtk == 0xFFFF)) + && (*choicedMoveAtk == MOVE_NONE || *choicedMoveAtk == MOVE_UNAVAILABLE)) { if (gChosenMove == MOVE_BATON_PASS && !(gMoveResultFlags & MOVE_RESULT_FAILED)) { @@ -4274,17 +4279,17 @@ static void Cmd_moveend(void) break; } if (i == MAX_MON_MOVES) - *choicedMoveAtk = 0; + *choicedMoveAtk = MOVE_NONE; ++gBattleScripting.moveendState; break; case MOVEEND_CHANGED_ITEMS: // changed held items for (i = 0; i < gBattlersCount; i++) { u16* changedItem = &gBattleStruct->changedItems[i]; - if (*changedItem != 0) + if (*changedItem != ITEM_NONE) { gBattleMons[i].item = *changedItem; - *changedItem = 0; + *changedItem = ITEM_NONE; } } gBattleScripting.moveendState++; @@ -4371,8 +4376,8 @@ static void Cmd_moveend(void) } else { - gLastMoves[gBattlerAttacker] = 0xFFFF; - gLastResultingMoves[gBattlerAttacker] = 0xFFFF; + gLastMoves[gBattlerAttacker] = MOVE_UNAVAILABLE; + gLastResultingMoves[gBattlerAttacker] = MOVE_UNAVAILABLE; } if (!(gHitMarker & HITMARKER_FAINTED(gBattlerTarget))) @@ -4380,7 +4385,7 @@ static void Cmd_moveend(void) if (gHitMarker & HITMARKER_OBEYS && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)) { - if (gChosenMove == 0xFFFF) + if (gChosenMove == MOVE_UNAVAILABLE) { gLastLandedMoves[gBattlerTarget] = gChosenMove; } @@ -4392,15 +4397,18 @@ static void Cmd_moveend(void) } else { - gLastLandedMoves[gBattlerTarget] = 0xFFFF; + gLastLandedMoves[gBattlerTarget] = MOVE_UNAVAILABLE; } } gBattleScripting.moveendState++; break; case MOVEEND_MIRROR_MOVE: // mirror move - if (!(gAbsentBattlerFlags & gBitTable[gBattlerAttacker]) && !(gBattleStruct->absentBattlerFlags & gBitTable[gBattlerAttacker]) - && gBattleMoves[originallyUsedMove].flags & FLAG_MIRROR_MOVE_AFFECTED && gHitMarker & HITMARKER_OBEYS - && gBattlerAttacker != gBattlerTarget && !(gHitMarker & HITMARKER_FAINTED(gBattlerTarget)) + if (!(gAbsentBattlerFlags & gBitTable[gBattlerAttacker]) + && !(gBattleStruct->absentBattlerFlags & gBitTable[gBattlerAttacker]) + && gBattleMoves[originallyUsedMove].flags & FLAG_MIRROR_MOVE_AFFECTED + && gHitMarker & HITMARKER_OBEYS + && gBattlerAttacker != gBattlerTarget + && !(gHitMarker & HITMARKER_FAINTED(gBattlerTarget)) && !(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)) { u8 target, attacker; @@ -6585,10 +6593,10 @@ static void Cmd_trymirrormove(void) s32 validMovesCount; s32 i; u16 move; - u16 movesArray[4]; + u16 validMoves[MAX_BATTLERS_COUNT]; - for (i = 0; i < 3; i++) - movesArray[i] = 0; + for (i = 0; i < (MAX_BATTLERS_COUNT - 1); i++) // -1 to exclude the user + validMoves[i] = MOVE_NONE; for (validMovesCount = 0, i = 0; i < gBattlersCount; i++) { @@ -6597,9 +6605,9 @@ static void Cmd_trymirrormove(void) move = *(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) | (*(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) << 8); - if (move != 0 && move != 0xFFFF) + if (move != MOVE_NONE && move != MOVE_UNAVAILABLE) { - movesArray[validMovesCount] = move; + validMoves[validMovesCount] = move; validMovesCount++; } } @@ -6608,24 +6616,24 @@ static void Cmd_trymirrormove(void) move = *(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 0) | (*(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 1) << 8); - if (move != 0 && move != 0xFFFF) + if (move != MOVE_NONE && move != MOVE_UNAVAILABLE) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = move; gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; } - else if (validMovesCount) + else if (validMovesCount != 0) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; i = Random() % validMovesCount; - gCurrentMove = movesArray[i]; + gCurrentMove = validMoves[i]; gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr = gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]; } - else + else // no valid moves found { - gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1; + gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = TRUE; gBattlescriptCurrInstr++; } } @@ -7164,7 +7172,7 @@ static void Cmd_forcerandomswitch(void) || (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER && gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK) || (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)) { - if ((gBattlerTarget & BIT_FLANK) != 0) + if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT) { firstMonId = 3; lastMonId = 6; @@ -7182,7 +7190,7 @@ static void Cmd_forcerandomswitch(void) else if ((gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK) || (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)) { - if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gBattlerTarget)) == 1) + if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gBattlerTarget)) == B_FLANK_RIGHT) { firstMonId = 3; lastMonId = 6; @@ -7208,7 +7216,7 @@ static void Cmd_forcerandomswitch(void) } else { - if ((gBattlerTarget & BIT_FLANK) != 0) + if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT) { firstMonId = 3; lastMonId = 6; @@ -7305,7 +7313,7 @@ static void Cmd_tryconversiontypechange(void) // randomly changes user's type to while (validMoves < MAX_MON_MOVES) { - if (gBattleMons[gBattlerAttacker].moves[validMoves] == 0) + if (gBattleMons[gBattlerAttacker].moves[validMoves] == MOVE_NONE) break; validMoves++; @@ -7674,7 +7682,7 @@ static void Cmd_setfocusenergy(void) static void Cmd_transformdataexecution(void) { - gChosenMove = 0xFFFF; + gChosenMove = MOVE_UNAVAILABLE; gBattlescriptCurrInstr++; if (gBattleMons[gBattlerTarget].status2 & STATUS2_TRANSFORMED || gStatuses3[gBattlerTarget] & STATUS3_SEMI_INVULNERABLE) @@ -7688,7 +7696,7 @@ static void Cmd_transformdataexecution(void) u8 *battleMonAttacker, *battleMonTarget; gBattleMons[gBattlerAttacker].status2 |= STATUS2_TRANSFORMED; - gDisableStructs[gBattlerAttacker].disabledMove = 0; + gDisableStructs[gBattlerAttacker].disabledMove = MOVE_NONE; gDisableStructs[gBattlerAttacker].disableTimer = 0; gDisableStructs[gBattlerAttacker].transformedMonPersonality = gBattleMons[gBattlerTarget].personality; gDisableStructs[gBattlerAttacker].mimickedMoves = 0; @@ -7754,12 +7762,12 @@ static bool8 IsMoveUncopyableByMimic(u16 move) static void Cmd_mimicattackcopy(void) { - gChosenMove = 0xFFFF; + gChosenMove = MOVE_UNAVAILABLE; if (IsMoveUncopyableByMimic(gLastMoves[gBattlerTarget]) || gBattleMons[gBattlerAttacker].status2 & STATUS2_TRANSFORMED - || gLastMoves[gBattlerTarget] == 0 - || gLastMoves[gBattlerTarget] == 0xFFFF) + || gLastMoves[gBattlerTarget] == MOVE_NONE + || gLastMoves[gBattlerTarget] == MOVE_UNAVAILABLE) { gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -7900,7 +7908,7 @@ static void Cmd_disablelastusedattack(void) if (gBattleMons[gBattlerTarget].moves[i] == gLastMoves[gBattlerTarget]) break; } - if (gDisableStructs[gBattlerTarget].disabledMove == 0 + if (gDisableStructs[gBattlerTarget].disabledMove == MOVE_NONE && i != MAX_MON_MOVES && gBattleMons[gBattlerTarget].pp[i] != 0) { PREPARE_MOVE_BUFFER(gBattleTextBuff1, gBattleMons[gBattlerTarget].moves[i]) @@ -7933,7 +7941,7 @@ static void Cmd_trysetencore(void) i = 4; } - if (gDisableStructs[gBattlerTarget].encoredMove == 0 + if (gDisableStructs[gBattlerTarget].encoredMove == MOVE_NONE && i != 4 && gBattleMons[gBattlerTarget].pp[i] != 0) { gDisableStructs[gBattlerTarget].encoredMove = gBattleMons[gBattlerTarget].moves[i]; @@ -7975,7 +7983,7 @@ static void Cmd_painsplitdmgcalc(void) static void Cmd_settypetorandomresistance(void) // conversion 2 { if (gLastLandedMoves[gBattlerAttacker] == MOVE_NONE - || gLastLandedMoves[gBattlerAttacker] == 0xFFFF) + || gLastLandedMoves[gBattlerAttacker] == MOVE_UNAVAILABLE) { gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } @@ -8042,12 +8050,12 @@ static void Cmd_setalwayshitflag(void) static void Cmd_copymovepermanently(void) // sketch { - gChosenMove = 0xFFFF; + gChosenMove = MOVE_UNAVAILABLE; if (!(gBattleMons[gBattlerAttacker].status2 & STATUS2_TRANSFORMED) && gLastPrintedMoves[gBattlerTarget] != MOVE_STRUGGLE - && gLastPrintedMoves[gBattlerTarget] != 0 - && gLastPrintedMoves[gBattlerTarget] != 0xFFFF + && gLastPrintedMoves[gBattlerTarget] != MOVE_NONE + && gLastPrintedMoves[gBattlerTarget] != MOVE_UNAVAILABLE && gLastPrintedMoves[gBattlerTarget] != MOVE_SKETCH) { s32 i; @@ -8096,11 +8104,11 @@ static void Cmd_copymovepermanently(void) // sketch static bool8 IsTwoTurnsMove(u16 move) { if (gBattleMoves[move].effect == EFFECT_SKULL_BASH - || gBattleMoves[move].effect == EFFECT_RAZOR_WIND - || gBattleMoves[move].effect == EFFECT_SKY_ATTACK - || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM - || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE - || gBattleMoves[move].effect == EFFECT_BIDE) + || gBattleMoves[move].effect == EFFECT_RAZOR_WIND + || gBattleMoves[move].effect == EFFECT_SKY_ATTACK + || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM + || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE + || gBattleMoves[move].effect == EFFECT_BIDE) return TRUE; else return FALSE; @@ -8108,8 +8116,11 @@ static bool8 IsTwoTurnsMove(u16 move) static bool8 IsInvalidForSleepTalkOrAssist(u16 move) { - if (move == 0 || move == MOVE_SLEEP_TALK || move == MOVE_ASSIST - || move == MOVE_MIRROR_MOVE || move == MOVE_METRONOME) + if (move == MOVE_NONE + || move == MOVE_SLEEP_TALK + || move == MOVE_ASSIST + || move == MOVE_MIRROR_MOVE + || move == MOVE_METRONOME) return TRUE; else return FALSE; @@ -8123,11 +8134,11 @@ static u8 AttacksThisTurn(u8 battlerId, u16 move) // Note: returns 1 if it's a c return 2; if (gBattleMoves[move].effect == EFFECT_SKULL_BASH - || gBattleMoves[move].effect == EFFECT_RAZOR_WIND - || gBattleMoves[move].effect == EFFECT_SKY_ATTACK - || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM - || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE - || gBattleMoves[move].effect == EFFECT_BIDE) + || gBattleMoves[move].effect == EFFECT_RAZOR_WIND + || gBattleMoves[move].effect == EFFECT_SKY_ATTACK + || gBattleMoves[move].effect == EFFECT_SOLAR_BEAM + || gBattleMoves[move].effect == EFFECT_SEMI_INVULNERABLE + || gBattleMoves[move].effect == EFFECT_BIDE) { if ((gHitMarker & HITMARKER_CHARGING)) return 1; @@ -8215,8 +8226,8 @@ static void Cmd_remaininghptopower(void) static void Cmd_tryspiteppreduce(void) { - if (gLastMoves[gBattlerTarget] != 0 - && gLastMoves[gBattlerTarget] != 0xFFFF) + if (gLastMoves[gBattlerTarget] != MOVE_NONE + && gLastMoves[gBattlerTarget] != MOVE_UNAVAILABLE) { s32 i; @@ -9092,7 +9103,7 @@ static void Cmd_tryswapitems(void) // trick } // can't swap if two pokemon don't have an item // or if either of them is an enigma berry or a mail - else if ((gBattleMons[gBattlerAttacker].item == 0 && gBattleMons[gBattlerTarget].item == 0) + else if ((gBattleMons[gBattlerAttacker].item == ITEM_NONE && gBattleMons[gBattlerTarget].item == ITEM_NONE) || gBattleMons[gBattlerAttacker].item == ITEM_ENIGMA_BERRY || gBattleMons[gBattlerTarget].item == ITEM_ENIGMA_BERRY || IS_ITEM_MAIL(gBattleMons[gBattlerAttacker].item) @@ -9150,7 +9161,7 @@ static void Cmd_tryswapitems(void) // trick static void Cmd_trycopyability(void) // role play { - if (gBattleMons[gBattlerTarget].ability != 0 + if (gBattleMons[gBattlerTarget].ability != ABILITY_NONE && gBattleMons[gBattlerTarget].ability != ABILITY_WONDER_GUARD) { gBattleMons[gBattlerAttacker].ability = gBattleMons[gBattlerTarget].ability; @@ -9263,8 +9274,8 @@ static void Cmd_scaledamagebyhealthratio(void) static void Cmd_tryswapabilities(void) // skill swap { - if ((gBattleMons[gBattlerAttacker].ability == 0 - && gBattleMons[gBattlerTarget].ability == 0) + if ((gBattleMons[gBattlerAttacker].ability == ABILITY_NONE + && gBattleMons[gBattlerTarget].ability == ABILITY_NONE) || gBattleMons[gBattlerAttacker].ability == ABILITY_WONDER_GUARD || gBattleMons[gBattlerTarget].ability == ABILITY_WONDER_GUARD || gMoveResultFlags & MOVE_RESULT_NO_EFFECT) @@ -9358,7 +9369,7 @@ static void Cmd_assistattackselect(void) s32 chooseableMovesNo = 0; struct Pokemon* party; s32 monId, moveId; - u16* movesArray = gBattleStruct->assistPossibleMoves; + u16* validMoves = gBattleStruct->assistPossibleMoves; if (GET_BATTLER_SIDE(gBattlerAttacker) != B_SIDE_PLAYER) party = gEnemyParty; @@ -9389,14 +9400,14 @@ static void Cmd_assistattackselect(void) if (move == MOVE_NONE) continue; - movesArray[chooseableMovesNo] = move; + validMoves[chooseableMovesNo] = move; chooseableMovesNo++; } } if (chooseableMovesNo) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; - gCalledMove = movesArray[((Random() & 0xFF) * chooseableMovesNo) >> 8]; + gCalledMove = validMoves[((Random() & 0xFF) * chooseableMovesNo) >> 8]; gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); gBattlescriptCurrInstr += 5; } diff --git a/src/battle_util.c b/src/battle_util.c index f34c39eb044a..865b0112cea2 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -679,10 +679,12 @@ void HandleAction_ActionFinished(void) gBattleResources->battleScriptsStack->size = 0; } +#define SOUND_MOVES_END 0xFFFF + static const u16 sSoundMovesTable[] = { MOVE_GROWL, MOVE_ROAR, MOVE_SING, MOVE_SUPERSONIC, MOVE_SCREECH, MOVE_SNORE, - MOVE_UPROAR, MOVE_METAL_SOUND, MOVE_GRASS_WHISTLE, MOVE_HYPER_VOICE, 0xFFFF + MOVE_UPROAR, MOVE_METAL_SOUND, MOVE_GRASS_WHISTLE, MOVE_HYPER_VOICE, SOUND_MOVES_END }; u8 GetBattlerForBattleScript(u8 caseId) @@ -1029,7 +1031,7 @@ u8 TrySetCantSelectMoveBattleScript(void) gPotentialItemEffectBattler = gActiveBattler; - if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != 0xFFFF && *choicedMove != move) + if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != MOVE_UNAVAILABLE && *choicedMove != move) { gCurrentMove = *choicedMove; gLastUsedItem = gBattleMons[gActiveBattler].item; @@ -1097,7 +1099,7 @@ u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check) if (gDisableStructs[battlerId].encoreTimer && gDisableStructs[battlerId].encoredMove != gBattleMons[battlerId].moves[i]) unusableMoves |= gBitTable[i]; // Choice Band - if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != 0xFFFF && *choicedMove != gBattleMons[battlerId].moves[i]) + if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != MOVE_UNAVAILABLE && *choicedMove != gBattleMons[battlerId].moves[i]) unusableMoves |= gBitTable[i]; } return unusableMoves; @@ -2640,12 +2642,12 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA case ABILITYEFFECT_MOVES_BLOCK: // 2 if (gLastUsedAbility == ABILITY_SOUNDPROOF) { - for (i = 0; sSoundMovesTable[i] != 0xFFFF; i++) + for (i = 0; sSoundMovesTable[i] != SOUND_MOVES_END; i++) { if (sSoundMovesTable[i] == move) break; } - if (sSoundMovesTable[i] != 0xFFFF) + if (sSoundMovesTable[i] != SOUND_MOVES_END) { if (gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS) gHitMarker |= HITMARKER_NO_PPDEDUCT; @@ -3005,22 +3007,22 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA target2 = GetBattlerAtPosition(side + BIT_FLANK); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - if (gBattleMons[target1].ability != 0 && gBattleMons[target1].hp != 0 - && gBattleMons[target2].ability != 0 && gBattleMons[target2].hp != 0) + if (gBattleMons[target1].ability != ABILITY_NONE && gBattleMons[target1].hp != 0 + && gBattleMons[target2].ability != ABILITY_NONE && gBattleMons[target2].hp != 0) { gActiveBattler = GetBattlerAtPosition(((Random() & 1) * 2) | side); gBattleMons[i].ability = gBattleMons[gActiveBattler].ability; gLastUsedAbility = gBattleMons[gActiveBattler].ability; effect++; } - else if (gBattleMons[target1].ability != 0 && gBattleMons[target1].hp != 0) + else if (gBattleMons[target1].ability != ABILITY_NONE && gBattleMons[target1].hp != 0) { gActiveBattler = target1; gBattleMons[i].ability = gBattleMons[gActiveBattler].ability; gLastUsedAbility = gBattleMons[gActiveBattler].ability; effect++; } - else if (gBattleMons[target2].ability != 0 && gBattleMons[target2].hp != 0) + else if (gBattleMons[target2].ability != ABILITY_NONE && gBattleMons[target2].hp != 0) { gActiveBattler = target2; gBattleMons[i].ability = gBattleMons[gActiveBattler].ability; diff --git a/src/contest.c b/src/contest.c index da57d9e2894e..a520588a0926 100644 --- a/src/contest.c +++ b/src/contest.c @@ -5694,6 +5694,8 @@ static void SetContestLiveUpdateFlags(u8 contestant) } } +#define APPEAL_MOVES_END 0xFFFF + static void CalculateContestLiveUpdateData(void) { u8 loser; @@ -5758,7 +5760,7 @@ static void CalculateContestLiveUpdateData(void) appealMoves[i] = MOVE_NONE; numMoveUses[i] = 0; } - appealMoves[CONTEST_NUM_APPEALS] = 0xFFFF; + appealMoves[CONTEST_NUM_APPEALS] = APPEAL_MOVES_END; numMoveUses[CONTEST_NUM_APPEALS] = 0; for (i = 0; i < CONTEST_NUM_APPEALS; i++) @@ -5787,7 +5789,7 @@ static void CalculateContestLiveUpdateData(void) moveCandidates[0] = appealMoves[0]; mostUses = numMoveUses[0]; numMoveCandidates = 0; - for (i = 1; appealMoves[i] != 0xFFFF; i++) + for (i = 1; appealMoves[i] != APPEAL_MOVES_END; i++) { if (mostUses < numMoveUses[i]) { diff --git a/src/pokemon.c b/src/pokemon.c index 17042539162d..60722fe02a6f 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -2093,10 +2093,12 @@ static const s8 sFriendshipEventModifiers[][3] = [FRIENDSHIP_EVENT_FAINT_LARGE] = {-5, -5, -10}, }; +#define HM_MOVES_END 0xFFFF + static const u16 sHMMoves[] = { MOVE_CUT, MOVE_FLY, MOVE_SURF, MOVE_STRENGTH, MOVE_FLASH, - MOVE_ROCK_SMASH, MOVE_WATERFALL, MOVE_DIVE, 0xFFFF + MOVE_ROCK_SMASH, MOVE_WATERFALL, MOVE_DIVE, HM_MOVES_END }; static const struct SpeciesItem sAlteringCaveWildMonHeldItems[] = @@ -6479,7 +6481,7 @@ const struct CompressedSpritePalette *GetMonSpritePalStructFromOtIdPersonality(u bool32 IsHMMove2(u16 move) { int i = 0; - while (sHMMoves[i] != 0xFFFF) + while (sHMMoves[i] != HM_MOVES_END) { if (sHMMoves[i++] == move) return TRUE; From 167353223cafd8ec3ef52d33edcb051443209b78 Mon Sep 17 00:00:00 2001 From: sphericalice Date: Mon, 11 Jul 2022 15:23:23 +0100 Subject: [PATCH 624/762] Use MAX_MON_MOVES in Cmd_trysetencore --- src/battle_script_commands.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 4689e4fb0289..fa27d8aa8f44 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -2553,9 +2553,9 @@ void SetMoveEffect(bool8 primary, u8 certain) case MOVE_EFFECT_PAYDAY: if (GET_BATTLER_SIDE(gBattlerAttacker) == B_SIDE_PLAYER) { - u16 payDay = gPaydayMoney; + u16 payday = gPaydayMoney; gPaydayMoney += (gBattleMons[gBattlerAttacker].level * 5); - if (payDay > gPaydayMoney) + if (payday > gPaydayMoney) gPaydayMoney = 0xFFFF; } BattleScriptPush(gBattlescriptCurrInstr + 1); @@ -7938,11 +7938,11 @@ static void Cmd_trysetencore(void) || gLastMoves[gBattlerTarget] == MOVE_ENCORE || gLastMoves[gBattlerTarget] == MOVE_MIRROR_MOVE) { - i = 4; + i = MAX_MON_MOVES; } if (gDisableStructs[gBattlerTarget].encoredMove == MOVE_NONE - && i != 4 && gBattleMons[gBattlerTarget].pp[i] != 0) + && i != MAX_MON_MOVES && gBattleMons[gBattlerTarget].pp[i] != 0) { gDisableStructs[gBattlerTarget].encoredMove = gBattleMons[gBattlerTarget].moves[i]; gDisableStructs[gBattlerTarget].encoredMovePos = i; From f85b4699dc7e396baf332839fecaa85a11eb4ea9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 12 Jul 2022 21:29:36 -0400 Subject: [PATCH 625/762] Fix conditional in SpriteCB_DeoxysRockFragment --- src/field_effect.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/field_effect.c b/src/field_effect.c index 369239f6b62f..789b5a803c2c 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3816,7 +3816,7 @@ static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite) sprite->y += 12; break; } - if ((u16)(sprite->x + 4) > DISPLAY_WIDTH + 8 || sprite->y < -4 || sprite->y > DISPLAY_HEIGHT + 4) + if (sprite->x < -4 || sprite->x > DISPLAY_WIDTH + 4 || sprite->y < -4 || sprite->y > DISPLAY_HEIGHT + 4) DestroySprite(sprite); } From 16ab534ddbdfb03d4fea9e8ea39d42797336f269 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 14 Jul 2022 10:27:51 -0400 Subject: [PATCH 626/762] Add some missing pocket constant usage --- src/item_menu_icons.c | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 5ac44f5adeb8..1ceef9464a7b 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -93,12 +93,12 @@ static const union AnimCmd sSpriteAnim_Bag_Berries[] = static const union AnimCmd *const sBagSpriteAnimTable[] = { - sSpriteAnim_Bag_Closed, - sSpriteAnim_Bag_Items, - sSpriteAnim_Bag_Pokeballs, - sSpriteAnim_Bag_TMsHMs, - sSpriteAnim_Bag_Berries, - sSpriteAnim_Bag_KeyItems + [POCKET_NONE] = sSpriteAnim_Bag_Closed, + [POCKET_ITEMS] = sSpriteAnim_Bag_Items, + [POCKET_POKE_BALLS] = sSpriteAnim_Bag_Pokeballs, + [POCKET_TM_HM] = sSpriteAnim_Bag_TMsHMs, + [POCKET_BERRIES] = sSpriteAnim_Bag_Berries, + [POCKET_KEY_ITEMS] = sSpriteAnim_Bag_KeyItems, }; static const union AffineAnimCmd sSpriteAffineAnim_BagNormal[] = @@ -116,10 +116,15 @@ static const union AffineAnimCmd sSpriteAffineAnim_BagShake[] = AFFINEANIMCMD_END }; +enum { + ANIM_BAG_NORMAL, + ANIM_BAG_SHAKE, +}; + static const union AffineAnimCmd *const sBagAffineAnimCmds[] = { - sSpriteAffineAnim_BagNormal, - sSpriteAffineAnim_BagShake + [ANIM_BAG_NORMAL] = sSpriteAffineAnim_BagNormal, + [ANIM_BAG_SHAKE] = sSpriteAffineAnim_BagShake }; const struct CompressedSpriteSheet gBagMaleSpriteSheet = @@ -436,6 +441,8 @@ void AddBagVisualSprite(u8 bagPocketId) SetBagVisualPocketId(bagPocketId, FALSE); } +#define sPocketId data[0] + void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets) { struct Sprite *sprite = &gSprites[gBagMenu->spriteIds[ITEMMENUSPRITE_BAG]]; @@ -443,8 +450,8 @@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets) { sprite->y2 = -5; sprite->callback = SpriteCB_BagVisualSwitchingPockets; - sprite->data[0] = bagPocketId + 1; - StartSpriteAnim(sprite, 0); + sprite->sPocketId = bagPocketId + 1; + StartSpriteAnim(sprite, POCKET_NONE); } else { @@ -460,26 +467,29 @@ static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite) } else { - StartSpriteAnim(sprite, sprite->data[0]); + StartSpriteAnim(sprite, sprite->sPocketId); sprite->callback = SpriteCallbackDummy; } } +#undef sPocketId + void ShakeBagSprite(void) { struct Sprite *sprite = &gSprites[gBagMenu->spriteIds[ITEMMENUSPRITE_BAG]]; if (sprite->affineAnimEnded) { - StartSpriteAffineAnim(sprite, 1); + StartSpriteAffineAnim(sprite, ANIM_BAG_SHAKE); sprite->callback = SpriteCB_ShakeBagSprite; } } static void SpriteCB_ShakeBagSprite(struct Sprite *sprite) { + // Wait for shaking to end if (sprite->affineAnimEnded) { - StartSpriteAffineAnim(sprite, 0); + StartSpriteAffineAnim(sprite, ANIM_BAG_NORMAL); sprite->callback = SpriteCallbackDummy; } } From 26e03dcda82e8a088f633c46b665ae05d8cf533e Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Fri, 15 Jul 2022 04:45:05 -0300 Subject: [PATCH 627/762] Linked MENU_ACTION constants to the items in sStartMenuItems --- src/start_menu.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/start_menu.c b/src/start_menu.c index 11189ee83195..6a5e7c046a58 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -156,19 +156,19 @@ static const struct WindowTemplate sPyramidFloorWindowTemplate_1 = {0, 1, 1, 0xC static const struct MenuAction sStartMenuItems[] = { - {gText_MenuPokedex, {.u8_void = StartMenuPokedexCallback}}, - {gText_MenuPokemon, {.u8_void = StartMenuPokemonCallback}}, - {gText_MenuBag, {.u8_void = StartMenuBagCallback}}, - {gText_MenuPokenav, {.u8_void = StartMenuPokeNavCallback}}, - {gText_MenuPlayer, {.u8_void = StartMenuPlayerNameCallback}}, - {gText_MenuSave, {.u8_void = StartMenuSaveCallback}}, - {gText_MenuOption, {.u8_void = StartMenuOptionCallback}}, - {gText_MenuExit, {.u8_void = StartMenuExitCallback}}, - {gText_MenuRetire, {.u8_void = StartMenuSafariZoneRetireCallback}}, - {gText_MenuPlayer, {.u8_void = StartMenuLinkModePlayerNameCallback}}, - {gText_MenuRest, {.u8_void = StartMenuSaveCallback}}, - {gText_MenuRetire, {.u8_void = StartMenuBattlePyramidRetireCallback}}, - {gText_MenuBag, {.u8_void = StartMenuBattlePyramidBagCallback}} + [MENU_ACTION_POKEDEX] = {gText_MenuPokedex, {.u8_void = StartMenuPokedexCallback}}, + [MENU_ACTION_POKEMON] = {gText_MenuPokemon, {.u8_void = StartMenuPokemonCallback}}, + [MENU_ACTION_BAG] = {gText_MenuBag, {.u8_void = StartMenuBagCallback}}, + [MENU_ACTION_POKENAV] = {gText_MenuPokenav, {.u8_void = StartMenuPokeNavCallback}}, + [MENU_ACTION_PLAYER] = {gText_MenuPlayer, {.u8_void = StartMenuPlayerNameCallback}}, + [MENU_ACTION_SAVE] = {gText_MenuSave, {.u8_void = StartMenuSaveCallback}}, + [MENU_ACTION_OPTION] = {gText_MenuOption, {.u8_void = StartMenuOptionCallback}}, + [MENU_ACTION_EXIT] = {gText_MenuExit, {.u8_void = StartMenuExitCallback}}, + [MENU_ACTION_RETIRE_SAFARI] = {gText_MenuRetire, {.u8_void = StartMenuSafariZoneRetireCallback}}, + [MENU_ACTION_PLAYER_LINK] = {gText_MenuPlayer, {.u8_void = StartMenuLinkModePlayerNameCallback}}, + [MENU_ACTION_REST_FRONTIER] = {gText_MenuRest, {.u8_void = StartMenuSaveCallback}}, + [MENU_ACTION_RETIRE_FRONTIER] = {gText_MenuRetire, {.u8_void = StartMenuBattlePyramidRetireCallback}}, + [MENU_ACTION_PYRAMID_BAG] = {gText_MenuBag, {.u8_void = StartMenuBattlePyramidBagCallback}} }; static const struct BgTemplate sBgTemplates_LinkBattleSave[] = From a8c93dcf352cb7b9c5873f328c3c5fc572c9e58f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 18 Jul 2022 02:36:25 -0400 Subject: [PATCH 628/762] Add missing font constants after EXT_CTRL_CODE_FONT --- gflib/string_util.c | 2 +- src/battle_controller_player.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gflib/string_util.c b/gflib/string_util.c index bc6f976c7131..4bf8d946db0f 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -387,7 +387,7 @@ u8 *StringBraille(u8 *dest, const u8 *src) const u8 setBrailleFont[] = { EXT_CTRL_CODE_BEGIN, EXT_CTRL_CODE_FONT, - 6, + FONT_BRAILLE, EOS }; const u8 gotoLine2[] = { diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 954192f0ab27..91546655b06c 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1501,7 +1501,7 @@ static void MoveSelectionDisplayMoveType(void) txtPtr = StringCopy(gDisplayedStringBattle, gText_MoveInterfaceType); *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; *(txtPtr)++ = EXT_CTRL_CODE_FONT; - *(txtPtr)++ = 1; + *(txtPtr)++ = FONT_NORMAL; StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE); From 151b5a5f8a9a8dcc7b75a60e4308fea9935763a6 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Sat, 23 Jul 2022 12:23:04 +0200 Subject: [PATCH 629/762] Change GAME_LANGUAGE to LANGUAGE_ENGLISH --- src/international_string_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/international_string_util.c b/src/international_string_util.c index e4b793b66c46..6d2867dfac0d 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -211,7 +211,7 @@ int GetNicknameLanguage(u8 *str) if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN) return LANGUAGE_JAPANESE; else - return GAME_LANGUAGE; + return LANGUAGE_ENGLISH; } // Used by PokĂ©nav's Match Call to erase the previous trainer's flavor text when switching between their info pages. From a37d8b1346992e193f4f9274708f9c23188586f7 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 25 Jul 2022 14:59:14 -0400 Subject: [PATCH 630/762] Documented boolean uses --- include/battle_main.h | 4 ++-- include/mail.h | 2 +- src/AgbRfu_LinkManager.c | 2 +- src/apprentice.c | 4 ++-- src/battle_anim_bug.c | 8 ++++---- src/battle_anim_dark.c | 2 +- src/battle_anim_effects_1.c | 4 ++-- src/battle_anim_effects_2.c | 6 +++--- src/battle_anim_effects_3.c | 4 ++-- src/battle_anim_electric.c | 2 +- src/battle_anim_fight.c | 4 ++-- src/battle_anim_fire.c | 6 +++--- src/battle_anim_flying.c | 14 +++++++------- src/battle_anim_ghost.c | 2 +- src/battle_anim_ground.c | 2 +- src/battle_anim_ice.c | 14 +++++++------- src/battle_anim_mons.c | 2 +- src/battle_anim_normal.c | 10 +++++----- src/battle_anim_poison.c | 6 +++--- src/battle_anim_rock.c | 6 +++--- src/battle_anim_throw.c | 4 ++-- src/battle_anim_utility_funcs.c | 6 +++--- src/battle_factory_screen.c | 4 ++-- src/battle_pyramid_bag.c | 6 +++--- src/berry.c | 2 +- src/berry_blender.c | 6 +++--- src/berry_crush.c | 22 +++++++++++----------- src/cable_club.c | 2 +- src/clear_save_data_screen.c | 2 +- src/contest.c | 14 +++++++------- src/contest_util.c | 2 +- src/decoration.c | 24 ++++++++++++------------ src/field_effect.c | 4 ++-- src/field_message_box.c | 4 ++-- src/field_region_map.c | 4 ++-- src/field_specials.c | 14 +++++++------- src/hall_of_fame.c | 4 ++-- src/item_menu.c | 2 +- src/item_use.c | 6 +++--- src/link_rfu_2.c | 2 +- src/main_menu.c | 18 +++++++++--------- src/mauville_old_man.c | 2 +- src/menu_specialized.c | 12 ++++++------ src/mystery_event_menu.c | 4 ++-- src/naming_screen.c | 2 +- src/overworld.c | 2 +- src/party_menu.c | 8 ++++---- src/player_pc.c | 10 +++++----- src/pokeball.c | 4 ++-- src/pokeblock.c | 2 +- src/pokeblock_feed.c | 2 +- src/pokemon_storage_system.c | 2 +- src/pokenav_conditions_gfx.c | 4 ++-- src/pokenav_conditions_search_results.c | 4 ++-- src/pokenav_list.c | 6 +++--- src/pokenav_match_call_gfx.c | 2 +- src/pokenav_menu_handler_gfx.c | 6 +++--- src/pokenav_region_map.c | 2 +- src/pokenav_ribbons_list.c | 2 +- src/record_mixing.c | 2 +- src/roulette.c | 2 +- src/scrcmd.c | 6 +++--- src/script_menu.c | 14 +++++++------- src/secret_base.c | 14 +++++++------- src/shop.c | 14 +++++++------- src/trainer_card.c | 2 +- src/union_room.c | 6 +++--- src/wild_encounter.c | 2 +- 68 files changed, 197 insertions(+), 197 deletions(-) diff --git a/include/battle_main.h b/include/battle_main.h index 449131e534ec..96efe9ded3f5 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -58,8 +58,8 @@ void SpriteCb_HideAsMoveTarget(struct Sprite *sprite); void SpriteCB_OpponentMonFromBall(struct Sprite *sprite); void SpriteCB_BattleSpriteStartSlideLeft(struct Sprite *sprite); void SpriteCB_FaintSlideAnim(struct Sprite *sprite); -void DoBounceEffect(u8 battlerId, u8 b, s8 c, s8 d); -void EndBounceEffect(u8 battlerId, bool8 b); +void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude); +void EndBounceEffect(u8 battler, u8 which); void SpriteCB_PlayerMonFromBall(struct Sprite *sprite); void SpriteCB_TrainerThrowObject(struct Sprite *sprite); void AnimSetCenterToCornerVecX(struct Sprite *sprite); diff --git a/include/mail.h b/include/mail.h index 68c532b31057..f4590a70ec44 100644 --- a/include/mail.h +++ b/include/mail.h @@ -15,7 +15,7 @@ || itemId == ITEM_RETRO_MAIL)) // mail.h -void ReadMail(struct Mail *mail, void (*callback)(void), bool8 flag); +void ReadMail(struct Mail *mail, void (*exitCallback)(void), bool8 hasText); // mail_data.h void ClearAllMail(void); diff --git a/src/AgbRfu_LinkManager.c b/src/AgbRfu_LinkManager.c index f6ebcc7265c5..747a6c784937 100644 --- a/src/AgbRfu_LinkManager.c +++ b/src/AgbRfu_LinkManager.c @@ -49,7 +49,7 @@ u32 rfu_LMAN_REQBN_softReset_and_checkID(void) return id; } -void rfu_LMAN_REQ_sendData(u8 clockChangeFlag) +void rfu_LMAN_REQ_sendData(bool8 clockChangeFlag) { if (gRfuLinkStatus->parentChild == MODE_CHILD) { diff --git a/src/apprentice.c b/src/apprentice.c index 591ab79e4d31..f2752817273c 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -638,7 +638,7 @@ static void CreateApprenticeMenu(u8 menu) width = ConvertPixelWidthToTileWidth(pixelWidth); left = ScriptMenu_AdjustLeftCoordFromWidth(left, width); windowId = CreateAndShowWindow(left, top, width, count * 2); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); for (i = 0; i < count; i++) AddTextPrinterParameterized(windowId, FONT_NORMAL, strings[i], 8, (i * 16) + 1, TEXT_SKIP_DRAW, NULL); @@ -910,7 +910,7 @@ static void Script_PrintApprenticeMessage(void) FreezeObjectEvents(); PlayerFreeze(); StopPlayerAvatar(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); PrintApprenticeMessage(); } diff --git a/src/battle_anim_bug.c b/src/battle_anim_bug.c index 14b98fcb215f..14abc88fb3c1 100644 --- a/src/battle_anim_bug.c +++ b/src/battle_anim_bug.c @@ -271,7 +271,7 @@ static void AnimTranslateWebThread(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->data[2], &sprite->data[4]); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->data[2], &sprite->data[4]); } InitAnimLinearTranslationWithSpeed(sprite); @@ -294,7 +294,7 @@ static void AnimTranslateWebThread_Step(struct Sprite *sprite) // Second stage of String Shot static void AnimStringWrap(struct Sprite *sprite) { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker)) sprite->x -= gBattleAnimArgs[0]; else @@ -392,7 +392,7 @@ static void AnimTranslateStinger(struct Sprite *sprite) } } - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; @@ -417,7 +417,7 @@ static void AnimTranslateStinger(struct Sprite *sprite) // arg 5: wave amplitude static void AnimMissileArc(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker)) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index fe8b181052b1..a063af66d789 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -786,7 +786,7 @@ void AnimTask_InitMementoShadow(u8 taskId) void AnimTask_MementoHandleBg(u8 taskId) { - u8 toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) ^ 1 ? 1 : 0; + bool8 toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) ^ 1 ? TRUE : FALSE; ResetBattleAnimBg(toBG2); if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index c590572b922d..8f3b91b7df23 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2709,7 +2709,7 @@ static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) void AnimMoveTwisterParticle(struct Sprite* sprite) { if (IsDoubleBattle() == TRUE) - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y); sprite->y += 32; sprite->data[0] = gBattleAnimArgs[0]; @@ -3716,7 +3716,7 @@ static void AnimNeedleArmSpike(struct Sprite* sprite) if (IsContest()) c -= 0x8000; - TrySetSpriteRotScale(sprite, 0, 0x100, 0x100, c); + TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, c); sprite->callback = AnimNeedleArmSpike_Step; } } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 9764d5522a6e..078b55105a73 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1684,7 +1684,7 @@ void AnimTask_AirCutterProjectile(u8 taskId) if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget))) { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &targetX, &targetY); + SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &targetX, &targetY); } else { @@ -3720,7 +3720,7 @@ static void AnimPerishSongMusicNote2(struct Sprite *sprite) } if (++sprite->data[0] == sprite->data[1]) - SetGrayscaleOrOriginalPalette(sprite->oam.paletteNum + 16, 0); + SetGrayscaleOrOriginalPalette(sprite->oam.paletteNum + 16, FALSE); if (sprite->data[0] == sprite->data[1] + 80) DestroyAnimSprite(sprite); @@ -3807,7 +3807,7 @@ static void AnimGuardRing(struct Sprite *sprite) { if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) { - SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimAttacker, FALSE, &sprite->x, &sprite->y); sprite->y += 40; StartSpriteAffineAnim(sprite, 1); diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 3b4f6729f87c..6fca60369a84 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2677,7 +2677,7 @@ static void AnimWeakFrustrationAngerMark(struct Sprite *sprite) { if (sprite->data[0] == 0) { - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); sprite->data[0]++; } else if (sprite->data[0]++ > 20) @@ -4807,7 +4807,7 @@ void AnimTask_MonToSubstitute(u8 taskId) } else { - LoadBattleMonGfxAndAnimate(gBattleAnimAttacker, 0, spriteId); + LoadBattleMonGfxAndAnimate(gBattleAnimAttacker, FALSE, spriteId); if (IsContest()) { gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].affineAnims = gAffineAnims_BattleSpriteContest; diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 635aa550e79c..ce1c5b19943e 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -571,7 +571,7 @@ static void AnimSparkElectricity(struct Sprite *sprite) static void AnimZapCannonSpark(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[3]; sprite->data[1] = sprite->x; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index ca4668e0239b..dc668e6ff6cb 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -454,7 +454,7 @@ static void AnimBasicFistOrFoot(struct Sprite *sprite) StartSpriteAnim(sprite, gBattleAnimArgs[4]); if (gBattleAnimArgs[3] == 0) - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); else InitSpritePosToAnimTarget(sprite, TRUE); @@ -964,7 +964,7 @@ static void AnimArmThrustHit(struct Sprite *sprite) static void AnimRevengeScratch(struct Sprite *sprite) { if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); else InitSpritePosToAnimTarget(sprite, FALSE); diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index b523a3771bd7..cbfe21c6098a 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -649,7 +649,7 @@ static void AnimBurnFlame(struct Sprite *sprite) //void AnimFireRing(struct Sprite *sprite) void AnimFireRing(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[7] = gBattleAnimArgs[2]; sprite->data[0] = 0; @@ -736,7 +736,7 @@ static void AnimFireCross(struct Sprite *sprite) static void AnimFireSpiralOutward(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[1] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[3]; @@ -1102,7 +1102,7 @@ static void AnimWillOWispOrb(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); StartSpriteAnim(sprite, gBattleAnimArgs[2]); sprite->data[7] = gBattleAnimArgs[2]; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 3c6341faa217..a3534bad3574 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -456,7 +456,7 @@ static void AnimAirWaveCrescent(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->data[2], &sprite->data[4]); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->data[2], &sprite->data[4]); } sprite->data[2] = sprite->data[2] + gBattleAnimArgs[2]; @@ -906,7 +906,7 @@ static void AnimWhirlwindLine(struct Sprite * sprite) u8 mult; if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); else InitSpritePosToAnimTarget(sprite, FALSE); @@ -971,7 +971,7 @@ static void AnimBounceBallShrink(struct Sprite *sprite) switch (sprite->data[0]) { case 0: - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = TRUE; ++sprite->data[0]; break; @@ -1009,7 +1009,7 @@ static void AnimBounceBallLand(struct Sprite *sprite) static void AnimDiveBall(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[3]; sprite->callback = AnimDiveBall_Step1; @@ -1067,7 +1067,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite) sprite->data[1] = 0x200; - TrySetSpriteRotScale(sprite, 0, 0x100, sprite->data[1], 0); + TrySetSpriteRotScale(sprite, FALSE, 0x100, sprite->data[1], 0); sprite->data[0]++; break; case 1: @@ -1078,7 +1078,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite) sprite->data[2]++; - TrySetSpriteRotScale(sprite, 0, 0x100, sprite->data[1], 0); + TrySetSpriteRotScale(sprite, FALSE, 0x100, sprite->data[1], 0); matrixNum = sprite->oam.matrixNum; @@ -1202,7 +1202,7 @@ static void AnimSkyAttackBird(struct Sprite *sprite) rotation = ArcTan2Neg(posx - sprite->x, posy - sprite->y); rotation -= 16384; - TrySetSpriteRotScale(sprite, 1, 0x100, 0x100, rotation); + TrySetSpriteRotScale(sprite, TRUE, 0x100, 0x100, rotation); sprite->callback = AnimSkyAttackBird_Step; } diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index a59e549001dd..819b60969bce 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -1034,7 +1034,7 @@ static void AnimCurseNail(struct Sprite *sprite) s16 xDelta; s16 xDelta2; - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { xDelta = 24; diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index 0e581035e815..7b810b56c2e6 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -205,7 +205,7 @@ static void AnimDirtScatter(struct Sprite *sprite) u8 targetXPos, targetYPos; s16 xOffset, yOffset; - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); targetXPos = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X_2); targetYPos = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 0b89c1f5931e..6a0ff1154acc 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -631,7 +631,7 @@ static void AnimIceEffectParticle(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; @@ -676,7 +676,7 @@ static void AnimSwirlingSnowball(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->data[2], &sprite->data[4]); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->data[2], &sprite->data[4]); } if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -796,7 +796,7 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->data[2], &sprite->data[4]); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->data[2], &sprite->data[4]); } if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -867,7 +867,7 @@ static void AnimWaveFromCenterOfTarget(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; @@ -905,7 +905,7 @@ static void InitSwirlingFogAnim(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimAttacker, FALSE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) sprite->x -= gBattleAnimArgs[0]; else @@ -924,7 +924,7 @@ static void InitSwirlingFogAnim(struct Sprite *sprite) } else { - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &sprite->x, &sprite->y); if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER) sprite->x -= gBattleAnimArgs[0]; else @@ -1497,7 +1497,7 @@ static void InitIceBallAnim(struct Sprite *sprite) animNum = 4; StartSpriteAffineAnim(sprite, animNum); - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[4]; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 2fbe858d7b43..a889fc8b59a8 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1578,7 +1578,7 @@ void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite) void AnimThrowProjectile(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker)) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index a92428f83b5d..1c90a3d641f0 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -945,7 +945,7 @@ static void AnimHitSplatBasic(struct Sprite *sprite) { StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); else InitSpritePosToAnimTarget(sprite, TRUE); @@ -958,7 +958,7 @@ static void AnimHitSplatPersistent(struct Sprite *sprite) { StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); else InitSpritePosToAnimTarget(sprite, TRUE); @@ -984,7 +984,7 @@ static void AnimHitSplatRandom(struct Sprite *sprite) StartSpriteAffineAnim(sprite, gBattleAnimArgs[1]); if (gBattleAnimArgs[0] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); else InitSpritePosToAnimTarget(sprite, FALSE); @@ -1010,7 +1010,7 @@ static void AnimHitSplatOnMonEdge(struct Sprite *sprite) static void AnimCrossImpact(struct Sprite *sprite) { if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); else InitSpritePosToAnimTarget(sprite, TRUE); @@ -1023,7 +1023,7 @@ static void AnimFlashingHitSplat(struct Sprite *sprite) { StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); if (gBattleAnimArgs[2] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); else InitSpritePosToAnimTarget(sprite, TRUE); diff --git a/src/battle_anim_poison.c b/src/battle_anim_poison.c index 664df389d68e..d9a15c835cf6 100644 --- a/src/battle_anim_poison.c +++ b/src/battle_anim_poison.c @@ -190,7 +190,7 @@ static void AnimSludgeProjectile(struct Sprite *sprite) if (!gBattleAnimArgs[3]) StartSpriteAnim(sprite, 2); - InitSpritePosToAnimAttacker(sprite, 1); + InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); @@ -214,8 +214,8 @@ static void AnimAcidPoisonBubble(struct Sprite *sprite) if (!gBattleAnimArgs[3]) StartSpriteAnim(sprite, 2); - InitSpritePosToAnimAttacker(sprite, 1); - SetAverageBattlerPositions(gBattleAnimTarget, 1, &l1, &l2); + InitSpritePosToAnimAttacker(sprite, TRUE); + SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &l1, &l2); if (GetBattlerSide(gBattleAnimAttacker)) gBattleAnimArgs[4] = -gBattleAnimArgs[4]; diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index 5aa8f28c306a..e2ea43fb671c 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -297,7 +297,7 @@ const struct SpriteTemplate gWeatherBallRockDownSpriteTemplate = static void AnimFallingRock(struct Sprite *sprite) { if (gBattleAnimArgs[3] != 0) - SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y); + SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &sprite->x, &sprite->y); sprite->x += gBattleAnimArgs[0]; sprite->y += 14; @@ -363,7 +363,7 @@ static void AnimRockFragment(struct Sprite *sprite) static void AnimParticleInVortex(struct Sprite *sprite) { if (gBattleAnimArgs[6] == ANIM_ATTACKER) - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); else InitSpritePosToAnimTarget(sprite, FALSE); @@ -544,7 +544,7 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite) static void AnimRaiseSprite(struct Sprite *sprite) { StartSpriteAnim(sprite, gBattleAnimArgs[4]); - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); sprite->data[0] = gBattleAnimArgs[3]; sprite->data[2] = sprite->x; diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index 2f095a043a7f..b029951426b3 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -515,7 +515,7 @@ static void AnimTask_UnusedLevelUpHealthBox_Step(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[12], 16 - gTasks[taskId].data[12])); if (gTasks[taskId].data[12] == 0) { - ResetBattleAnimBg(0); + ResetBattleAnimBg(FALSE); gBattle_WIN0H = 0; gBattle_WIN0V = 0; SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); @@ -2408,7 +2408,7 @@ void AnimTask_FreePokeblockGfx(u8 taskId) static void SpriteCB_PokeBlock_Throw(struct Sprite *sprite) { - InitSpritePosToAnimAttacker(sprite, 0); + InitSpritePosToAnimAttacker(sprite, FALSE); sprite->sDuration = 30; sprite->sTargetX = GetBattlerSpriteCoord(GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT), BATTLER_COORD_X) + gBattleAnimArgs[2]; sprite->sTargetY = GetBattlerSpriteCoord(GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT), BATTLER_COORD_Y) + gBattleAnimArgs[3]; diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index b5455a19c93a..217f96c4a55a 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -356,7 +356,7 @@ static void AnimTask_DrawFallingWhiteLinesOnAttacker_Step(u8 taskId) gBattle_BG1_Y += 64; if (++gTasks[taskId].data[11] == 4) { - ResetBattleAnimBg(0); + ResetBattleAnimBg(FALSE); gBattle_WIN0H = 0; gBattle_WIN0V = 0; SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR @@ -568,7 +568,7 @@ static void StatsChangeAnimation_Step3(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[12], 16 - gTasks[taskId].data[12])); if (gTasks[taskId].data[12] == 0) { - ResetBattleAnimBg(0); + ResetBattleAnimBg(FALSE); gTasks[taskId].data[15]++; } } @@ -869,7 +869,7 @@ static void UpdateMonScrollingBgMask(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[12], 16 - gTasks[taskId].data[12])); if (gTasks[taskId].data[12] == 0) { - ResetBattleAnimBg(0); + ResetBattleAnimBg(FALSE); gBattle_WIN0H = 0; gBattle_WIN0V = 0; SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 14c63b7b88e9..8edece391771 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -1747,9 +1747,9 @@ static void CreateFrontierFactorySelectableMons(u8 firstMonId) u16 monId = gSaveBlock2Ptr->frontier.rentalMons[i].monId; sFactorySelectScreen->mons[i + firstMonId].monId = monId; if (i < rentalRank) - ivs = GetFactoryMonFixedIV(challengeNum + 1, 0); + ivs = GetFactoryMonFixedIV(challengeNum + 1, FALSE); else - ivs = GetFactoryMonFixedIV(challengeNum, 0); + ivs = GetFactoryMonFixedIV(challengeNum, FALSE); CreateMonWithEVSpreadNatureOTID(&sFactorySelectScreen->mons[i + firstMonId].monData, gFacilityTrainerMons[monId].species, level, diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 66b4cd97d1ca..4eca1598537b 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -1195,7 +1195,7 @@ static void Task_ChooseHowManyToToss(u8 taskId) { // Toss PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, 0); + ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, FALSE); ClearWindowTilemap(WIN_TOSS_NUM); ScheduleBgCopyTilemapToVram(1); AskConfirmToss(taskId); @@ -1204,7 +1204,7 @@ static void Task_ChooseHowManyToToss(u8 taskId) { // Cancel tossing PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, 0); + ClearStdWindowAndFrameToTransparent(WIN_TOSS_NUM, FALSE); ClearWindowTilemap(WIN_TOSS_NUM); ScheduleBgCopyTilemapToVram(1); DontTossItem(taskId); @@ -1464,7 +1464,7 @@ static void PyramidBagPrint_Quantity(u8 windowId, const u8 *src, u8 x, u8 y, u8 static void DrawTossNumberWindow(u8 windowId) { - DrawStdFrameWithCustomTileAndPalette(windowId, 0, 1, 0xE); + DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 1, 0xE); ScheduleBgCopyTilemapToVram(1); } diff --git a/src/berry.c b/src/berry.c index d56ec801ca9e..75373e6b0c46 100644 --- a/src/berry.c +++ b/src/berry.c @@ -1300,7 +1300,7 @@ void ObjectEventInteractionPlantBerryTree(void) { u8 berry = ItemIdToBerryType(gSpecialVar_ItemId); - PlantBerryTree(GetObjectEventBerryTreeId(gSelectedObjectEvent), berry, 1, TRUE); + PlantBerryTree(GetObjectEventBerryTreeId(gSelectedObjectEvent), berry, BERRY_STAGE_PLANTED, TRUE); ObjectEventInteractionGetBerryTreeData(); } diff --git a/src/berry_blender.c b/src/berry_blender.c index bdf7858ceebc..f7e2c5df5dc1 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -3553,7 +3553,7 @@ static bool8 PrintBlendingResults(void) sBerryBlender->mainState++; break; case 5: - ClearStdWindowAndFrameToTransparent(5, 1); + ClearStdWindowAndFrameToTransparent(5, TRUE); for (i = 0; i < BLENDER_MAX_PLAYERS; i++) { @@ -3692,7 +3692,7 @@ static bool8 PrintBlendingRanking(void) } break; case 3: - DrawStdFrameWithCustomTileAndPalette(5, 0, 1, 0xD); + DrawStdFrameWithCustomTileAndPalette(5, FALSE, 1, 0xD); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_Ranking, 168); Blender_AddTextPrinter(5, sText_Ranking, xPos, 1, TEXT_SKIP_DRAW, 0); @@ -3764,7 +3764,7 @@ void ShowBerryBlenderRecordWindow(void) winTemplate = sBlenderRecordWindowTemplate; gRecordsWindowId = AddWindow(&winTemplate); - DrawStdWindowFrame(gRecordsWindowId, 0); + DrawStdWindowFrame(gRecordsWindowId, FALSE); FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gText_BlenderMaxSpeedRecord, 144); diff --git a/src/berry_crush.c b/src/berry_crush.c index e6e2d874277e..ffc708e6b360 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1752,7 +1752,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGa break; case 2: LoadUserWindowBorderGfx_(gfx->resultsWindowId, 541, 208); - DrawStdFrameWithCustomTileAndPalette(gfx->resultsWindowId, 0, 541, 13); + DrawStdFrameWithCustomTileAndPalette(gfx->resultsWindowId, FALSE, 541, 13); break; case 3: playerCountIdx = game->playerCount - 2; @@ -1788,7 +1788,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGa static void CloseResultsWindow(struct BerryCrushGame *game) { - ClearStdWindowAndFrameToTransparent(game->gfx.resultsWindowId, 1); + ClearStdWindowAndFrameToTransparent(game->gfx.resultsWindowId, TRUE); RemoveWindow(game->gfx.resultsWindowId); DrawPlayerNameWindows(game); } @@ -1810,7 +1810,7 @@ static void Task_ShowRankings(u8 taskId) PutWindowTilemap(tWindowId); FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0)); LoadUserWindowBorderGfx_(tWindowId, 541, 208); - DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 541, 13); + DrawStdFrameWithCustomTileAndPalette(tWindowId, FALSE, 541, 13); break; case 1: // Print header text @@ -1849,7 +1849,7 @@ static void Task_ShowRankings(u8 taskId) else return; case 3: - ClearStdWindowAndFrameToTransparent(tWindowId, 1); + ClearStdWindowAndFrameToTransparent(tWindowId, TRUE); ClearWindowTilemap(tWindowId); RemoveWindow(tWindowId); DestroyTask(taskId); @@ -1885,9 +1885,9 @@ static void HideTimer(struct BerryCrushGame_Gfx *gfx) { gfx->timerSprites[0]->invisible = TRUE; gfx->timerSprites[1]->invisible = TRUE; - DigitObjUtil_HideOrShow(2, 1); - DigitObjUtil_HideOrShow(1, 1); - DigitObjUtil_HideOrShow(0, 1); + DigitObjUtil_HideOrShow(2, TRUE); + DigitObjUtil_HideOrShow(1, TRUE); + DigitObjUtil_HideOrShow(0, TRUE); } static void CreatePlayerNameWindows(struct BerryCrushGame *game) @@ -2282,7 +2282,7 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) break; case 3: if (args[1] & F_MSG_CLEAR) - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); RunOrScheduleCommand(game->nextCmd, SCHEDULE_CMD, NULL); game->cmdState = args[4]; return 0; @@ -2402,7 +2402,7 @@ static u32 Cmd_WaitForOthersToPickBerries(struct BerryCrushGame *game, u8 *args) game->targetDepth = MathUtil_Div32(Q_24_8(game->targetAPresses), Q_24_8(32)); break; case 5: - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); RunOrScheduleCommand(CMD_DROP_BERRIES, SCHEDULE_CMD, NULL); game->gameState = STATE_DROP_BERRIES; game->cmdState = 0; @@ -3295,7 +3295,7 @@ static u32 Cmd_AskPlayAgain(struct BerryCrushGame *game, u8 *args) } // Close Yes/No and start communication - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); SetPrintMessageArgs(args, MSG_COMM_STANDBY, 0, 0, 0); game->nextCmd = CMD_COMM_PLAY_AGAIN; RunOrScheduleCommand(CMD_PRINT_MSG, SCHEDULE_CMD, NULL); @@ -3367,7 +3367,7 @@ static u32 Cmd_PlayAgain(struct BerryCrushGame *game, u8 *args) return 0; break; case 2: - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); ResetCrusherPos(game); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); UpdatePaletteFade(); diff --git a/src/cable_club.c b/src/cable_club.c index 4ee2797f4d6d..5c7d32d4b6f7 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -97,7 +97,7 @@ static void PrintNumPlayersInLink(u16 windowId, u32 numPlayers) u8 xPos; ConvertIntToDecimalStringN(gStringVar1, numPlayers, STR_CONV_MODE_LEFT_ALIGN, 1); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); StringExpandPlaceholders(gStringVar4, gText_NumPlayerLink); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gStringVar4, 88); AddTextPrinterParameterized(windowId, FONT_NORMAL, gStringVar4, xPos, 1, TEXT_SKIP_DRAW, NULL); diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index 9bde45e97b0a..9b79b48f1fb1 100644 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -79,7 +79,7 @@ void CB2_InitClearSaveDataScreen(void) static void Task_DoClearSaveDataScreenYesNo(u8 taskId) { - DrawStdFrameWithCustomTileAndPalette(0, 0, 2, 14); + DrawStdFrameWithCustomTileAndPalette(0, FALSE, 2, 14); AddTextPrinterParameterized(0, FONT_NORMAL, gText_ClearAllSaveData, 0, 1, 0, 0); CreateYesNoMenu(sClearSaveYesNo, 2, 14, 1); gTasks[taskId].func = Task_ClearSaveDataScreenYesNoChoice; diff --git a/src/contest.c b/src/contest.c index a520588a0926..edaaef7f8654 100644 --- a/src/contest.c +++ b/src/contest.c @@ -1582,7 +1582,7 @@ static void Task_HandleMoveSelectInput(u8 taskId) StringCopy(gDisplayedStringBattle, gText_AppealNumButItCantParticipate); ContestClearGeneralTextWindow(); StringExpandPlaceholders(gStringVar4, gDisplayedStringBattle); - Contest_StartTextPrinter(gStringVar4, 0); + Contest_StartTextPrinter(gStringVar4, FALSE); gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; gTasks[taskId].func = Task_TryShowMoveSelectScreen; @@ -1814,7 +1814,7 @@ static void Task_DoAppeals(u8 taskId) else StringCopy(gStringVar2, sInvalidContestMoveNames[eContestantStatus[contestant].moveCategory]); StringExpandPlaceholders(gStringVar4, gText_MonAppealedWithMove); - Contest_StartTextPrinter(gStringVar4, 1); + Contest_StartTextPrinter(gStringVar4, TRUE); gTasks[taskId].tState = APPEALSTATE_WAIT_USED_MOVE_MSG; } return; @@ -2076,7 +2076,7 @@ static void Task_DoAppeals(u8 taskId) ContestClearGeneralTextWindow(); StringCopy(gStringVar1, gContestMons[contestant].nickname); StringExpandPlaceholders(gStringVar4, gText_MonCantAppealNextTurn); - Contest_StartTextPrinter(gStringVar4, 1); + Contest_StartTextPrinter(gStringVar4, TRUE); } gTasks[taskId].tState = APPEALSTATE_WAIT_SKIP_NEXT_TURN_MSG; } @@ -2118,7 +2118,7 @@ static void Task_DoAppeals(u8 taskId) ContestClearGeneralTextWindow(); StringCopy(gStringVar1, gContestMons[contestant].nickname); StringExpandPlaceholders(gStringVar4, gText_JudgeLookedAtMonExpectantly); - Contest_StartTextPrinter(gStringVar4, 1); + Contest_StartTextPrinter(gStringVar4, TRUE); DoJudgeSpeechBubble(JUDGE_SYMBOL_ONE_EXCLAMATION); gTasks[taskId].tCounter = 0; gTasks[taskId].tState = APPEALSTATE_WAIT_JUDGE_COMBO; @@ -2231,7 +2231,7 @@ static void Task_DoAppeals(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_MonsXWentOverGreat); else StringExpandPlaceholders(gStringVar4, gText_MonsXGotTheCrowdGoing); - Contest_StartTextPrinter(gStringVar4, 1); + Contest_StartTextPrinter(gStringVar4, TRUE); gTasks[taskId].tCounter = 0; gTasks[taskId].data[11] = 0; if (r3 < 0) @@ -3666,7 +3666,7 @@ static void ContestPrintLinkStandby(void) gBattle_BG0_Y = 0; gBattle_BG2_Y = 0; ContestClearGeneralTextWindow(); - Contest_StartTextPrinter(gText_LinkStandby4, 0); + Contest_StartTextPrinter(gText_LinkStandby4, FALSE); } static void FillContestantWindowBgs(void) @@ -4577,7 +4577,7 @@ static void PrintAppealMoveResultText(u8 contestant, u8 stringId) StringCopy(gStringVar3, gText_Contest_Fear); StringExpandPlaceholders(gStringVar4, sAppealResultTexts[stringId]); ContestClearGeneralTextWindow(); - Contest_StartTextPrinter(gStringVar4, 1); + Contest_StartTextPrinter(gStringVar4, TRUE); } void MakeContestantNervous(u8 p) diff --git a/src/contest_util.c b/src/contest_util.c index d8726d860f56..ddec85b2ad26 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -2639,7 +2639,7 @@ static void Task_ShowContestEntryMonPic(u8 taskId) break; case 1: task->data[5] = CreateWindowFromRect(10, 3, 8, 8); - SetStandardWindowBorderStyle(task->data[5], 1); + SetStandardWindowBorderStyle(task->data[5], TRUE); task->data[0]++; break; case 2: diff --git a/src/decoration.c b/src/decoration.c index 547b05acf41b..2838beb1e1cc 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -643,7 +643,7 @@ static void DecorationMenuAction_PutAway(u8 taskId) else { RemoveDecorationWindow(WINDOW_MAIN_MENU); - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); FadeScreen(FADE_TO_BLACK, 0); gTasks[taskId].tState = 0; gTasks[taskId].func = Task_ContinuePuttingAwayDecorations; @@ -688,7 +688,7 @@ static void ReturnToDecorationActionsAfterInvalidSelection(u8 taskId) static void SecretBasePC_PrepMenuForSelectingStoredDecors(u8 taskId) { LoadPalette(sDecorationMenuPalette, 0xd0, 0x20); - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); RemoveDecorationWindow(WINDOW_MAIN_MENU); InitDecorationCategoriesWindow(taskId); } @@ -810,7 +810,7 @@ static void SelectDecorationCategory(u8 taskId) static void ReturnToDecorationCategoriesAfterInvalidSelection(u8 taskId) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); InitDecorationCategoriesWindow(taskId); } @@ -834,7 +834,7 @@ static void ReturnToActionsMenuFromCategories(u8 taskId) void ShowDecorationCategoriesWindow(u8 taskId) { LoadPalette(sDecorationMenuPalette, 0xd0, 0x20); - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); gTasks[taskId].tDecorationMenuCommand = DECOR_MENU_TRADE; sCurDecorationCategory = DECORCAT_DESK; InitDecorationCategoriesWindow(taskId); @@ -1141,7 +1141,7 @@ static void Task_ShowDecorationItemsWindow(u8 taskId) static void DontTossDecoration(u8 taskId) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); gTasks[taskId].func = Task_ShowDecorationItemsWindow; } @@ -1149,7 +1149,7 @@ static void ReturnToDecorationItemsAfterInvalidSelection(u8 taskId) { if (JOY_NEW(A_BUTTON | B_BUTTON)) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); AddDecorationWindow(WINDOW_DECORATION_CATEGORIES); ShowDecorationItemsWindow(taskId); } @@ -1640,7 +1640,7 @@ static void PlaceDecorationPrompt(u8 taskId) static void PlaceDecoration(u8 taskId) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); PlaceDecoration_(taskId); if (gDecorations[gCurDecorationItems[gCurDecorationIndex]].permission != DECORPERM_SPRITE) { @@ -1706,7 +1706,7 @@ static void CancelDecoratingPrompt(u8 taskId) static void CancelDecorating(u8 taskId) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); CancelDecorating_(taskId); } @@ -1891,7 +1891,7 @@ static void Task_SelectLocation(u8 taskId) static void ContinueDecorating(u8 taskId) { - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0; gTasks[taskId].tButton = 0; gTasks[taskId].func = Task_SelectLocation; @@ -2247,7 +2247,7 @@ static void Task_PutAwayDecoration(u8 taskId) if (!gPaletteFade.active) { DrawWholeMapView(); ScriptContext1_SetupScript(SecretBase_EventScript_PutAwayDecoration); - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); gTasks[taskId].tState = 2; } break; @@ -2331,7 +2331,7 @@ static void Task_ContinuePuttingAwayDecorations(u8 taskId) static void ContinuePuttingAwayDecorations(u8 taskId) { - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0; gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE; gSprites[sDecor_CameraSpriteObjectIdx1].callback = InitializeCameraSprite1; @@ -2604,7 +2604,7 @@ static void StopPuttingAwayDecorationsPrompt(u8 taskId) static void StopPuttingAwayDecorations(u8 taskId) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); StopPuttingAwayDecorations_(taskId); } diff --git a/src/field_effect.c b/src/field_effect.c index 789b5a803c2c..ea0374e1eb30 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -904,7 +904,7 @@ u8 AddNewGameBirchObject(s16 x, s16 y, u8 subpriority) u8 CreateMonSprite_PicBox(u16 species, s16 x, s16 y, u8 subpriority) { - s32 spriteId = CreateMonPicSprite_HandleDeoxys(species, 0, 0x8000, 1, x, y, 0, gMonPaletteTable[species].tag); + s32 spriteId = CreateMonPicSprite_HandleDeoxys(species, 0, 0x8000, TRUE, x, y, 0, gMonPaletteTable[species].tag); PreservePaletteInWeather(IndexOfSpritePaletteTag(gMonPaletteTable[species].tag) + 0x10); if (spriteId == 0xFFFF) return MAX_SPRITES; @@ -915,7 +915,7 @@ u8 CreateMonSprite_PicBox(u16 species, s16 x, s16 y, u8 subpriority) u8 CreateMonSprite_FieldMove(u16 species, u32 otId, u32 personality, s16 x, s16 y, u8 subpriority) { const struct CompressedSpritePalette *spritePalette = GetMonSpritePalStructFromOtIdPersonality(species, otId, personality); - u16 spriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, 1, x, y, 0, spritePalette->tag); + u16 spriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, TRUE, x, y, 0, spritePalette->tag); PreservePaletteInWeather(IndexOfSpritePaletteTag(spritePalette->tag) + 0x10); if (spriteId == 0xFFFF) return MAX_SPRITES; diff --git a/src/field_message_box.c b/src/field_message_box.c index 95d0a94c961c..fa792ee565da 100755 --- a/src/field_message_box.c +++ b/src/field_message_box.c @@ -132,7 +132,7 @@ static void StartDrawFieldMessage(void) void HideFieldMessageBox(void) { DestroyTask_DrawFieldMessage(); - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); sFieldMessageBoxMode = FIELD_MESSAGE_BOX_HIDDEN; } @@ -152,7 +152,7 @@ bool8 IsFieldMessageBoxHidden(void) static void ReplaceFieldMessageWithFrame(void) { DestroyTask_DrawFieldMessage(); - DrawStdWindowFrame(0, 1); + DrawStdWindowFrame(0, TRUE); sFieldMessageBoxMode = FIELD_MESSAGE_BOX_HIDDEN; } diff --git a/src/field_region_map.c b/src/field_region_map.c index adf5e4ed7a39..5e14920fbad1 100644 --- a/src/field_region_map.c +++ b/src/field_region_map.c @@ -150,11 +150,11 @@ static void FieldUpdateRegionMap(void) sFieldRegionMapHandler->state++; break; case 1: - DrawStdFrameWithCustomTileAndPalette(1, 0, 0x27, 0xd); + DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x27, 0xd); offset = GetStringCenterAlignXOffset(FONT_NORMAL, gText_Hoenn, 0x38); AddTextPrinterParameterized(1, FONT_NORMAL, gText_Hoenn, offset, 1, 0, NULL); ScheduleBgCopyTilemapToVram(0); - DrawStdFrameWithCustomTileAndPalette(0, 0, 0x27, 0xd); + DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x27, 0xd); PrintRegionMapSecName(); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); sFieldRegionMapHandler->state++; diff --git a/src/field_specials.c b/src/field_specials.c index 4ed2a2e03db8..032baa234e25 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1825,7 +1825,7 @@ void ShowDeptStoreElevatorFloorSelect(void) int xPos; sTutorMoveAndElevatorWindowId = AddWindow(&gElevatorFloor_WindowTemplate); - SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, 0); + SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, FALSE); xPos = GetStringCenterAlignXOffset(FONT_NORMAL, gText_ElevatorNowOn, 64); AddTextPrinterParameterized(sTutorMoveAndElevatorWindowId, FONT_NORMAL, gText_ElevatorNowOn, xPos, 1, TEXT_SKIP_DRAW, NULL); @@ -2507,7 +2507,7 @@ static void Task_ShowScrollableMultichoice(u8 taskId) template = CreateWindowTemplate(0, task->tLeft, task->tTop, task->tWidth, task->tHeight, 0xF, 0x64); windowId = AddWindow(&template); task->tWindowId = windowId; - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); gScrollableMultichoice_ListMenuTemplate.totalItems = task->tNumItems; gScrollableMultichoice_ListMenuTemplate.maxShowed = task->tMaxItemsOnScreen; @@ -2606,7 +2606,7 @@ static void CloseScrollableMultichoice(u8 taskId) ScrollableMultichoice_RemoveScrollArrows(taskId); DestroyListMenuTask(task->tListTaskId, NULL, NULL); Free(sScrollableMultichoice_ListMenuItem); - ClearStdWindowAndFrameToTransparent(task->tWindowId, 1); + ClearStdWindowAndFrameToTransparent(task->tWindowId, TRUE); FillWindowPixelBuffer(task->tWindowId, PIXEL_FILL(0)); CopyWindowToVram(task->tWindowId, COPYWIN_GFX); RemoveWindow(task->tWindowId); @@ -2850,7 +2850,7 @@ void ShowBattlePointsWindow(void) }; sBattlePointsWindowId = AddWindow(&sBattlePoints_WindowTemplate); - SetStandardWindowBorderStyle(sBattlePointsWindowId, 0); + SetStandardWindowBorderStyle(sBattlePointsWindowId, FALSE); UpdateBattlePointsWindow(); CopyWindowToVram(sBattlePointsWindowId, COPYWIN_GFX); } @@ -2896,7 +2896,7 @@ void ShowFrontierExchangeCornerItemIconWindow(void) }; sFrontierExchangeCorner_ItemIconWindowId = AddWindow(&sFrontierExchangeCorner_ItemIconWindowTemplate); - SetStandardWindowBorderStyle(sFrontierExchangeCorner_ItemIconWindowId, 0); + SetStandardWindowBorderStyle(sFrontierExchangeCorner_ItemIconWindowId, FALSE); CopyWindowToVram(sFrontierExchangeCorner_ItemIconWindowId, COPYWIN_GFX); } @@ -3040,7 +3040,7 @@ static void ShowBattleFrontierTutorWindow(u8 menu, u16 selection) if (gSpecialVar_0x8006 == 0) { sTutorMoveAndElevatorWindowId = AddWindow(&sBattleFrontierTutor_WindowTemplate); - SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, 0); + SetStandardWindowBorderStyle(sTutorMoveAndElevatorWindowId, FALSE); } ShowBattleFrontierTutorMoveDescription(menu, selection); } @@ -3104,7 +3104,7 @@ void ScrollableMultichoice_RedrawPersistentMenu(void) { struct Task *task = &gTasks[taskId]; ListMenuGetScrollAndRow(task->tListTaskId, &scrollOffset, &selectedRow); - SetStandardWindowBorderStyle(task->tWindowId, 0); + SetStandardWindowBorderStyle(task->tWindowId, FALSE); for (i = 0; i < MAX_SCROLL_MULTI_ON_SCREEN; i++) AddTextPrinterParameterized5(task->tWindowId, FONT_NORMAL, sScrollableMultichoiceOptions[gSpecialVar_0x8004][scrollOffset + i], 10, i * 16, TEXT_SKIP_DRAW, NULL, 0, 0); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 38f096af84c7..324661489e38 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -700,7 +700,7 @@ static void Task_Hof_DisplayPlayer(u8 taskId) ShowBg(0); ShowBg(1); ShowBg(3); - gTasks[taskId].tPlayerSpriteID = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), 1, 120, 72, 6, TAG_NONE); + gTasks[taskId].tPlayerSpriteID = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), TRUE, 120, 72, 6, TAG_NONE); AddWindow(&sHof_WindowTemplate); LoadWindowGfx(1, gSaveBlock2Ptr->optionsWindowFrameType, 0x21D, 0xD0); LoadPalette(GetTextWindowPalette(1), 0xE0, 0x20); @@ -931,7 +931,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId) if (currMon->species == SPECIES_EGG) posY += 10; - spriteId = CreateMonPicSprite_HandleDeoxys(currMon->species, currMon->tid, currMon->personality, 1, posX, posY, i, TAG_NONE); + spriteId = CreateMonPicSprite_HandleDeoxys(currMon->species, currMon->tid, currMon->personality, TRUE, posX, posY, i, TAG_NONE); gSprites[spriteId].oam.priority = 1; gTasks[taskId].tMonSpriteId(i) = spriteId; } diff --git a/src/item_menu.c b/src/item_menu.c index cd0bc159d67b..fc64fdc22447 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2478,7 +2478,7 @@ static u8 BagMenu_AddWindow(u8 windowType) if (*windowId == WINDOW_NONE) { *windowId = AddWindow(&sContextMenuWindowTemplates[windowType]); - DrawStdFrameWithCustomTileAndPalette(*windowId, 0, 1, 14); + DrawStdFrameWithCustomTileAndPalette(*windowId, FALSE, 1, 14); ScheduleBgCopyTilemapToVram(1); } return *windowId; diff --git a/src/item_use.c b/src/item_use.c index af8f2504f355..fc2425fc0cc3 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -163,7 +163,7 @@ static void DisplayCannotDismountBikeMessage(u8 taskId, bool8 isUsingRegisteredK static void Task_CloseCantUseKeyItemMessage(u8 taskId) { - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); DestroyTask(taskId); ScriptUnfreezeObjectEvents(); ScriptContext2_Disable(); @@ -184,7 +184,7 @@ static void CB2_CheckMail(void) { struct Mail mail; mail.itemId = gSpecialVar_ItemId; - ReadMail(&mail, CB2_ReturnToBagMenuPocket, 0); + ReadMail(&mail, CB2_ReturnToBagMenuPocket, FALSE); } void ItemUseOutOfBattle_Mail(u8 taskId) @@ -335,7 +335,7 @@ static void Task_UseItemfinder(u8 taskId) static void Task_CloseItemfinderMessage(u8 taskId) { - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); ScriptUnfreezeObjectEvents(); ScriptContext2_Disable(); DestroyTask(taskId); diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 87e9f8e9d2d3..ae151fb1e5d3 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -2004,7 +2004,7 @@ static void RfuMain1_UnionRoom(void) { rfu_REQ_recvData(); rfu_waitREQComplete(); - rfu_LMAN_REQ_sendData(0); + rfu_LMAN_REQ_sendData(FALSE); } } diff --git a/src/main_menu.c b/src/main_menu.c index d11784133ccb..9f21a4b09cd2 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1333,7 +1333,7 @@ static void Task_NewGameBirchSpeech_WaitForSpriteFadeInWelcome(u8 taskId) CopyWindowToVram(0, COPYWIN_GFX); NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_Welcome); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_ThisIsAPokemon; } } @@ -1345,7 +1345,7 @@ static void Task_NewGameBirchSpeech_ThisIsAPokemon(u8 taskId) { gTasks[taskId].func = Task_NewGameBirchSpeech_MainSpeech; StringExpandPlaceholders(gStringVar4, gText_ThisIsAPokemon); - AddTextPrinterWithCallbackForMessage(1, NewGameBirchSpeech_WaitForThisIsPokemonText); + AddTextPrinterWithCallbackForMessage(TRUE, NewGameBirchSpeech_WaitForThisIsPokemonText); sBirchSpeechMainTaskId = taskId; } } @@ -1355,7 +1355,7 @@ static void Task_NewGameBirchSpeech_MainSpeech(u8 taskId) if (!RunTextPrintersAndIsPrinter0Active()) { StringExpandPlaceholders(gStringVar4, gText_Birch_MainSpeech); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_AndYouAre; } } @@ -1410,7 +1410,7 @@ static void Task_NewGameBirchSpeech_AndYouAre(u8 taskId) { sStartedPokeBallTask = FALSE; StringExpandPlaceholders(gStringVar4, gText_Birch_AndYouAre); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_StartBirchLotadPlatformFade; } } @@ -1482,7 +1482,7 @@ static void Task_NewGameBirchSpeech_BoyOrGirl(u8 taskId) { NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_BoyOrGirl); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_WaitToShowGenderMenu; } @@ -1572,7 +1572,7 @@ static void Task_NewGameBirchSpeech_WhatsYourName(u8 taskId) { NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_WhatsYourName); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_WaitForWhatsYourNameToPrint; } @@ -1607,7 +1607,7 @@ static void Task_NewGameBirchSpeech_SoItsPlayerName(u8 taskId) { NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_SoItsPlayer); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_CreateNameYesNo; } @@ -1673,7 +1673,7 @@ static void Task_NewGameBirchSpeech_ReshowBirchLotad(u8 taskId) NewGameBirchSpeech_StartFadePlatformOut(taskId, 1); NewGameBirchSpeech_ClearWindow(0); StringExpandPlaceholders(gStringVar4, gText_Birch_YourePlayer); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_WaitForSpriteFadeInAndTextPrinter; } } @@ -1721,7 +1721,7 @@ static void Task_NewGameBirchSpeech_AreYouReady(u8 taskId) NewGameBirchSpeech_StartFadeInTarget1OutTarget2(taskId, 2); NewGameBirchSpeech_StartFadePlatformOut(taskId, 1); StringExpandPlaceholders(gStringVar4, gText_Birch_AreYouReady); - AddTextPrinterForMessage(1); + AddTextPrinterForMessage(TRUE); gTasks[taskId].func = Task_NewGameBirchSpeech_ShrinkPlayer; } } diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 2b6c71c8a2dd..241aed00c13f 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -1336,7 +1336,7 @@ static void PrintStoryList(void) width = curWidth; } sStorytellerWindowId = CreateWindowFromRect(0, 0, ConvertPixelWidthToTileWidth(width), GetFreeStorySlot() * 2 + 2); - SetStandardWindowBorderStyle(sStorytellerWindowId, 0); + SetStandardWindowBorderStyle(sStorytellerWindowId, FALSE); for (i = 0; i < NUM_STORYTELLER_TALES; i++) { u16 gameStatID = sStorytellerPtr->gameStatIDs[i]; diff --git a/src/menu_specialized.c b/src/menu_specialized.c index cd77f4a59c68..a8231f3fbb28 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -223,14 +223,14 @@ u8 MailboxMenu_AddWindow(u8 windowIdx) { sMailboxWindowIds[windowIdx] = AddWindow(&sWindowTemplates_MailboxMenu[windowIdx]); } - SetStandardWindowBorderStyle(sMailboxWindowIds[windowIdx], 0); + SetStandardWindowBorderStyle(sMailboxWindowIds[windowIdx], FALSE); } return sMailboxWindowIds[windowIdx]; } void MailboxMenu_RemoveWindow(u8 windowIdx) { - ClearStdWindowAndFrameToTransparent(sMailboxWindowIds[windowIdx], 0); + ClearStdWindowAndFrameToTransparent(sMailboxWindowIds[windowIdx], FALSE); ClearWindowTilemap(sMailboxWindowIds[windowIdx]); RemoveWindow(sMailboxWindowIds[windowIdx]); sMailboxWindowIds[windowIdx] = WINDOW_NONE; @@ -716,17 +716,17 @@ void InitMoveRelearnerWindows(bool8 useContextWindow) if (!useContextWindow) { PutWindowTilemap(0); - DrawStdFrameWithCustomTileAndPalette(0, 0, 0x1, 0xE); + DrawStdFrameWithCustomTileAndPalette(0, FALSE, 0x1, 0xE); } else { PutWindowTilemap(1); - DrawStdFrameWithCustomTileAndPalette(1, 0, 1, 0xE); + DrawStdFrameWithCustomTileAndPalette(1, FALSE, 1, 0xE); } PutWindowTilemap(2); PutWindowTilemap(3); - DrawStdFrameWithCustomTileAndPalette(2, 0, 1, 0xE); - DrawStdFrameWithCustomTileAndPalette(3, 0, 1, 0xE); + DrawStdFrameWithCustomTileAndPalette(2, FALSE, 1, 0xE); + DrawStdFrameWithCustomTileAndPalette(3, FALSE, 1, 0xE); MoveRelearnerDummy(); ScheduleBgCopyTilemapToVram(1); } diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 0007664ba178..702e87b3e987 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -131,7 +131,7 @@ static void CB2_MysteryEventMenu(void) switch (gMain.state) { case 0: - DrawStdFrameWithCustomTileAndPalette(0, 1, 1, 0xD); + DrawStdFrameWithCustomTileAndPalette(0, TRUE, 1, 0xD); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); ShowBg(0); @@ -178,7 +178,7 @@ static void CB2_MysteryEventMenu(void) { PlaySE(SE_SELECT); CheckShouldAdvanceLinkState(); - DrawStdFrameWithCustomTileAndPalette(1, 1, 1, 0xD); + DrawStdFrameWithCustomTileAndPalette(1, TRUE, 1, 0xD); PrintMysteryMenuText(1, gText_LoadingEvent, 1, 2, 0); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); diff --git a/src/naming_screen.c b/src/naming_screen.c index 0019a51b1daf..a295cfd3fbf2 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -738,7 +738,7 @@ static void DisplaySentToPCMessage(void) stringToDisplay++; StringExpandPlaceholders(gStringVar4, sTransferredToPCMessages[stringToDisplay]); - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); gTextFlags.canABSpeedUpPrint = TRUE; AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); diff --git a/src/overworld.c b/src/overworld.c index a2b6a6433da4..2e4ce012638d 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -3209,7 +3209,7 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite) else StartSpriteAnimIfDifferent(sprite, GetMoveDirectionAnimNum(linkDirection(objEvent))); - UpdateObjectEventSpriteInvisibility(sprite, 0); + UpdateObjectEventSpriteInvisibility(sprite, FALSE); if (objEvent->triggerGroundEffectsOnMove) { sprite->invisible = ((sprite->data[7] & 4) >> 2); diff --git a/src/party_menu.c b/src/party_menu.c index 016c359cb9bc..70f00f305131 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -1641,7 +1641,7 @@ static void Task_PrintAndWaitForText(u8 taskId) { if (gTasks[taskId].tKeepOpen == FALSE) { - ClearStdWindowAndFrameToTransparent(6, 0); + ClearStdWindowAndFrameToTransparent(6, FALSE); ClearWindowTilemap(6); } DestroyTask(taskId); @@ -1668,7 +1668,7 @@ static void Task_ReturnToChooseMonAfterText(u8 taskId) { if (IsPartyMenuTextPrinterActive() != TRUE) { - ClearStdWindowAndFrameToTransparent(6, 0); + ClearStdWindowAndFrameToTransparent(6, FALSE); ClearWindowTilemap(6); if (MenuHelpers_IsLinkActive() == TRUE) { @@ -2371,7 +2371,7 @@ static void PartyMenuRemoveWindow(u8 *ptr) { if (*ptr != WINDOW_NONE) { - ClearStdWindowAndFrameToTransparent(*ptr, 0); + ClearStdWindowAndFrameToTransparent(*ptr, FALSE); RemoveWindow(*ptr); *ptr = WINDOW_NONE; ScheduleBgCopyTilemapToVram(2); @@ -3309,7 +3309,7 @@ static void CursorCb_Read(u8 taskId) static void CB2_ReadHeldMail(void) { - ReadMail(&gSaveBlock1Ptr->mail[GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_MAIL)], CB2_ReturnToPartyMenuFromReadingMail, 1); + ReadMail(&gSaveBlock1Ptr->mail[GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_MAIL)], CB2_ReturnToPartyMenuFromReadingMail, TRUE); } static void CB2_ReturnToPartyMenuFromReadingMail(void) diff --git a/src/player_pc.c b/src/player_pc.c index 0ca78dea8678..07a51a7dd953 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -398,7 +398,7 @@ static void InitPlayerPCMenu(u8 taskId) windowTemplate.width = GetMaxWidthInSubsetOfMenuTable(sPlayerPCMenuActions, sTopMenuOptionOrder, sTopMenuNumOptions); tWindowId = AddWindow(&windowTemplate); - SetStandardWindowBorderStyle(tWindowId, 0); + SetStandardWindowBorderStyle(tWindowId, FALSE); PrintMenuActionTextsInUpperLeftCorner(tWindowId, sTopMenuNumOptions, sPlayerPCMenuActions, sTopMenuOptionOrder); InitMenuInUpperLeftCornerNormal(tWindowId, sTopMenuNumOptions, 0); ScheduleBgCopyTilemapToVram(0); @@ -467,7 +467,7 @@ static void PlayerPC_Mailbox(u8 taskId) SetPlayerPCListCount(taskId); if (MailboxMenu_Alloc(gPlayerPCItemPageInfo.count) == TRUE) { - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); Mailbox_DrawMailboxMenu(taskId); gTasks[taskId].func = Mailbox_ProcessInput; } @@ -509,7 +509,7 @@ static void InitItemStorageMenu(u8 taskId, u8 var) windowTemplate = sWindowTemplates_MainMenus[WIN_ITEM_STORAGE_MENU]; windowTemplate.width = GetMaxWidthInMenuTable(sItemStorage_MenuActions, ARRAY_COUNT(sItemStorage_MenuActions)); tWindowId = AddWindow(&windowTemplate); - SetStandardWindowBorderStyle(tWindowId, 0); + SetStandardWindowBorderStyle(tWindowId, FALSE); PrintMenuTable(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), sItemStorage_MenuActions); InitMenuInUpperLeftCornerNormal(tWindowId, ARRAY_COUNT(sItemStorage_MenuActions), var); ScheduleBgCopyTilemapToVram(0); @@ -632,7 +632,7 @@ static void ItemStorage_Enter(u8 taskId, bool8 toss) FreeAndReserveObjectSpritePalettes(); LoadListMenuSwapLineGfx(); CreateSwapLineSprites(sItemStorageMenu->swapLineSpriteIds, SWAP_LINE_LENGTH); - ClearDialogWindowAndFrame(0,0); + ClearDialogWindowAndFrame(0, FALSE); gTasks[taskId].func = ItemStorage_CreateListMenu; } @@ -928,7 +928,7 @@ static void Mailbox_NoPokemonForMail(u8 taskId) static void Mailbox_Cancel(u8 taskId) { MailboxMenu_RemoveWindow(MAILBOXWIN_OPTIONS); - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); Mailbox_DrawMailboxMenu(taskId); ScheduleBgCopyTilemapToVram(0); gTasks[taskId].func = Mailbox_ProcessInput; diff --git a/src/pokeball.c b/src/pokeball.c index f203633a589f..42751eb31ef7 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1067,7 +1067,7 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite) StartSpriteAnim(sprite, 1); AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); // sDelay re-used to store task id but never read - sprite->sDelay = LaunchBallFadeMonTaskForPokeball(1, monPalNum, selectedPalettes); + sprite->sDelay = LaunchBallFadeMonTaskForPokeball(TRUE, monPalNum, selectedPalettes); sprite->callback = SpriteCB_ReleasedMonFlyOut; gSprites[spriteId].invisible = FALSE; StartSpriteAffineAnim(&gSprites[spriteId], BATTLER_AFFINE_EMERGE); @@ -1171,7 +1171,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite) StartSpriteAnim(sprite, 1); AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, subpriority); // sDelay re-used to store task id but never read - sprite->sDelay = LaunchBallFadeMonTaskForPokeball(1, monPalNum, selectedPalettes); + sprite->sDelay = LaunchBallFadeMonTaskForPokeball(TRUE, monPalNum, selectedPalettes); sprite->callback = SpriteCB_TradePokeballSendOff; #ifdef BUGFIX // FIX: If this is used on a sprite that has previously had an affine animation, it will not diff --git a/src/pokeblock.c b/src/pokeblock.c index 58348e1cc5e1..03a8f7b0d5a8 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -1148,7 +1148,7 @@ static void ShowPokeblockActionsWindow(u8 taskId) tWindowId = WIN_ACTIONS; DestroyScrollArrows(); - DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 1, 0xE); + DrawStdFrameWithCustomTileAndPalette(tWindowId, FALSE, 1, 0xE); PrintMenuActionTextsInUpperLeftCorner(tWindowId, sPokeblockMenu->numActions, sPokeblockMenuActions, sPokeblockMenu->pokeblockActionIds); InitMenuInUpperLeftCornerNormal(tWindowId, sPokeblockMenu->numActions, 0); PutWindowTilemap(tWindowId); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 98a76421c1e6..14170763f15a 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -660,7 +660,7 @@ static bool8 LoadPokeblockFeedScene(void) gMain.state++; break; case 10: - DrawStdFrameWithCustomTileAndPalette(0, 1, 1, 14); + DrawStdFrameWithCustomTileAndPalette(0, TRUE, 1, 14); gMain.state++; break; case 11: diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 008fae3c96dc..676d6f22915c 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1547,7 +1547,7 @@ static void Task_PCMainMenu(u8 taskId) case STATE_LOAD: CreateMainMenu(task->tSelectedOption, &task->tWindowId); LoadMessageBoxAndBorderGfx(); - DrawDialogueFrame(0, 0); + DrawDialogueFrame(0, FALSE); FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SKIP_DRAW, NULL, 2, 1, 3); CopyWindowToVram(0, COPYWIN_FULL); diff --git a/src/pokenav_conditions_gfx.c b/src/pokenav_conditions_gfx.c index d2fb715ab80b..60c505201b5f 100644 --- a/src/pokenav_conditions_gfx.c +++ b/src/pokenav_conditions_gfx.c @@ -299,8 +299,8 @@ static u32 LoopedTask_OpenConditionGraphMenu(s32 state) if (!IsConditionMenuSearchMode()) { LoadLeftHeaderGfxForIndex(POKENAV_GFX_PARTY_MENU); - ShowLeftHeaderGfx(POKENAV_GFX_CONDITION_MENU, TRUE, 0); - ShowLeftHeaderGfx(POKENAV_GFX_PARTY_MENU, TRUE, 0); + ShowLeftHeaderGfx(POKENAV_GFX_CONDITION_MENU, TRUE, FALSE); + ShowLeftHeaderGfx(POKENAV_GFX_PARTY_MENU, TRUE, FALSE); } return LT_INC_AND_PAUSE; case 16: diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index bbc07df2c3d6..540102ee4c5d 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -464,8 +464,8 @@ static u32 LoopedTask_OpenConditionSearchResults(s32 state) { u8 searchGfxId = GetSelectedConditionSearch() + POKENAV_MENUITEM_CONDITION_SEARCH_COOL; LoadLeftHeaderGfxForIndex(searchGfxId); - ShowLeftHeaderGfx(searchGfxId, 1, 0); - ShowLeftHeaderGfx(POKENAV_GFX_CONDITION_MENU, 1, 0); + ShowLeftHeaderGfx(searchGfxId, TRUE, FALSE); + ShowLeftHeaderGfx(POKENAV_GFX_CONDITION_MENU, TRUE, FALSE); } PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; diff --git a/src/pokenav_list.c b/src/pokenav_list.c index 350a78504289..6e5a22eb1d26 100644 --- a/src/pokenav_list.c +++ b/src/pokenav_list.c @@ -72,7 +72,7 @@ static void InitPokenavListWindowState(struct PokenavListWindowState *, struct P static void SpriteCB_UpArrow(struct Sprite *); static void SpriteCB_DownArrow(struct Sprite *); static void SpriteCB_RightArrow(struct Sprite *); -static void ToggleListArrows(struct PokenavListSub *, u32); +static void ToggleListArrows(struct PokenavListSub *, bool32); static void DestroyListArrows(struct PokenavListSub *); static void CreateListArrowSprites(struct PokenavListWindowState *, struct PokenavListSub *); static void LoadListArrowGfx(void); @@ -503,7 +503,7 @@ static u32 LoopedTask_EraseListForCheckPage(s32 state) switch (state) { case 0: - ToggleListArrows(&list->sub, 1); + ToggleListArrows(&list->sub, TRUE); // fall-through case 1: if (list->eraseIndex != list->windowState.selectedIndexOffset) @@ -656,7 +656,7 @@ static u32 LoopedTask_ReshowListFromCheckPage(s32 state) return LT_INC_AND_CONTINUE; return LT_SET_STATE(4); case 6: - ToggleListArrows(subPtr, 0); + ToggleListArrows(subPtr, FALSE); return LT_FINISH; } diff --git a/src/pokenav_match_call_gfx.c b/src/pokenav_match_call_gfx.c index 056ab2f1d2c7..fd5b36fae08a 100755 --- a/src/pokenav_match_call_gfx.c +++ b/src/pokenav_match_call_gfx.c @@ -379,7 +379,7 @@ static u32 LoopedTask_OpenMatchCall(s32 state) ShowBg(1); AllocMatchCallSprites(); LoadLeftHeaderGfxForIndex(3); - ShowLeftHeaderGfx(POKENAV_GFX_MATCH_CALL_MENU, 1, 0); + ShowLeftHeaderGfx(POKENAV_GFX_MATCH_CALL_MENU, TRUE, FALSE); PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; case 7: diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c index b9dd130468c4..bc55fa7515f4 100644 --- a/src/pokenav_menu_handler_gfx.c +++ b/src/pokenav_menu_handler_gfx.c @@ -579,7 +579,7 @@ static u32 LoopedTask_OpenConditionMenu(s32 state) case 0: ResetBldCnt(); StartOptionAnimations_Exit(); - HideMainOrSubMenuLeftHeader(POKENAV_GFX_MAIN_MENU, 0); + HideMainOrSubMenuLeftHeader(POKENAV_GFX_MAIN_MENU, FALSE); PlaySE(SE_SELECT); return LT_INC_AND_PAUSE; case 1: @@ -618,7 +618,7 @@ static u32 LoopedTask_ReturnToMainMenu(s32 state) case 0: ResetBldCnt(); StartOptionAnimations_Exit(); - HideMainOrSubMenuLeftHeader(POKENAV_GFX_CONDITION_MENU, 0); + HideMainOrSubMenuLeftHeader(POKENAV_GFX_CONDITION_MENU, FALSE); return LT_INC_AND_PAUSE; case 1: if (AreMenuOptionSpritesMoving()) @@ -689,7 +689,7 @@ static u32 LoopedTask_ReturnToConditionMenu(s32 state) case 0: ResetBldCnt(); StartOptionAnimations_Exit(); - HideMainOrSubMenuLeftHeader(POKENAV_GFX_SEARCH_MENU, 0); + HideMainOrSubMenuLeftHeader(POKENAV_GFX_SEARCH_MENU, FALSE); return LT_INC_AND_PAUSE; case 1: if (AreMenuOptionSpritesMoving()) diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 828bd525df37..39c1659a9a26 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -366,7 +366,7 @@ static u32 LoopedTask_OpenRegionMap(s32 taskState) menuGfxId = POKENAV_GFX_MAP_MENU_ZOOMED_IN; LoadLeftHeaderGfxForIndex(menuGfxId); - ShowLeftHeaderGfx(menuGfxId, 1, 1); + ShowLeftHeaderGfx(menuGfxId, TRUE, TRUE); PokenavFadeScreen(POKENAV_FADE_FROM_BLACK); return LT_INC_AND_PAUSE; case 7: diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index 724ced507ee1..81e4f38bd22e 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -464,7 +464,7 @@ static u32 LoopedTask_OpenRibbonsMonList(s32 state) if (!menu->fromSummary) { LoadLeftHeaderGfxForIndex(POKENAV_GFX_RIBBONS_MENU); - ShowLeftHeaderGfx(POKENAV_GFX_RIBBONS_MENU, 1, 0); + ShowLeftHeaderGfx(POKENAV_GFX_RIBBONS_MENU, TRUE, FALSE); } return LT_INC_AND_PAUSE; case 5: diff --git a/src/record_mixing.c b/src/record_mixing.c index 4365f2cb3d99..18b1d7df2f46 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -363,7 +363,7 @@ static void Task_RecordMixing_Main(u8 taskId) SetLinkWaitingForScript(); if (gWirelessCommType != 0) CreateTask(Task_ReturnToFieldRecordMixing, 10); - ClearDialogWindowAndFrame(0, 1); + ClearDialogWindowAndFrame(0, TRUE); DestroyTask(taskId); EnableBothScriptContexts(); } diff --git a/src/roulette.c b/src/roulette.c index 5b870fb604f9..2caa3214881f 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1293,7 +1293,7 @@ static void Task_StartPlaying(u8 taskId) static void Task_AskKeepPlaying(u8 taskId) { DisplayYesNoMenuDefaultYes(); - DrawStdWindowFrame(sTextWindowId, 0); + DrawStdWindowFrame(sTextWindowId, FALSE); AddTextPrinterParameterized(sTextWindowId, FONT_NORMAL, Roulette_Text_KeepPlaying, 0, 1, TEXT_SKIP_DRAW, 0); CopyWindowToVram(sTextWindowId, COPYWIN_FULL); DoYesNoFuncWithChoice(taskId, &sYesNoTable_KeepPlaying); diff --git a/src/scrcmd.c b/src/scrcmd.c index 418bf5877061..d6422e89821b 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1305,7 +1305,7 @@ bool8 ScrCmd_messageinstant(struct ScriptContext *ctx) if (msg == NULL) msg = (const u8 *)ctx->data[0]; LoadMessageBoxAndBorderGfx(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); AddTextPrinterParameterized(0, FONT_NORMAL, msg, 0, 1, 0, NULL); return FALSE; } @@ -1527,7 +1527,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx) winTemplate = CreateWindowTemplate(0, xWindow, yWindow + 1, width, height, 0xF, 0x1); sBrailleWindowId = AddWindow(&winTemplate); LoadUserWindowBorderGfx(sBrailleWindowId, 0x214, 0xE0); - DrawStdWindowFrame(sBrailleWindowId, 0); + DrawStdWindowFrame(sBrailleWindowId, FALSE); PutWindowTilemap(sBrailleWindowId); FillWindowPixelBuffer(sBrailleWindowId, PIXEL_FILL(1)); AddTextPrinterParameterized(sBrailleWindowId, FONT_BRAILLE, gStringVar4, xText, yText, TEXT_SKIP_DRAW, NULL); @@ -2268,7 +2268,7 @@ bool8 ScrCmd_setmonmetlocation(struct ScriptContext *ctx) static void CloseBrailleWindow(void) { - ClearStdWindowAndFrame(sBrailleWindowId, 1); + ClearStdWindowAndFrame(sBrailleWindowId, TRUE); RemoveWindow(sBrailleWindowId); } diff --git a/src/script_menu.c b/src/script_menu.c index 1680758f2126..6b3cccd3f99c 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -107,7 +107,7 @@ static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, bool8 ignoreB newWidth = ConvertPixelWidthToTileWidth(width); left = ScriptMenu_AdjustLeftCoordFromWidth(left, newWidth); windowId = CreateWindowFromRect(left, top, newWidth, count * 2); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); PrintMenuTable(windowId, count, actions); InitMenuInUpperLeftCornerNormal(windowId, count, cursorPos); ScheduleBgCopyTilemapToVram(0); @@ -277,7 +277,7 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignore gTasks[taskId].tIgnoreBPress = ignoreBPress; gTasks[taskId].tWindowId = CreateWindowFromRect(left, top, columnCount * newWidth, rowCount * 2); - SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, 0); + SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, FALSE); PrintMenuGridTable(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, sMultichoiceLists[multichoiceId].list); InitMenuActionGrid(gTasks[taskId].tWindowId, newWidth * 8, columnCount, rowCount, 0); CopyWindowToVram(gTasks[taskId].tWindowId, COPYWIN_FULL); @@ -352,7 +352,7 @@ static void CreatePCMultichoice(void) { numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SKIP_DRAW, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SKIP_DRAW, NULL); } @@ -360,7 +360,7 @@ static void CreatePCMultichoice(void) { numChoices = 3; windowId = CreateWindowFromRect(0, 0, width, 6); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SKIP_DRAW, NULL); } @@ -521,7 +521,7 @@ static void CreateLilycoveSSTidalMultichoice(void) width = ConvertPixelWidthToTileWidth(pixelWidth); windowId = CreateWindowFromRect(MAX_MULTICHOICE_WIDTH - width, (6 - count) * 2, width, count * 2); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); for (selectionCount = 0, i = 0; i < SSTIDAL_SELECTION_COUNT; i++) { @@ -595,7 +595,7 @@ bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y) gTasks[taskId].tMonSpriteId = spriteId; gSprites[spriteId].callback = SpriteCallbackDummy; gSprites[spriteId].oam.priority = 0; - SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, 1); + SetStandardWindowBorderStyle(gTasks[taskId].tWindowId, TRUE); ScheduleBgCopyTilemapToVram(0); return TRUE; } @@ -688,7 +688,7 @@ bool16 ScriptMenu_CreateStartMenuForPokenavTutorial(void) static void CreateStartMenuForPokenavTutorial(void) { u8 windowId = CreateWindowFromRect(21, 0, 7, 18); - SetStandardWindowBorderStyle(windowId, 0); + SetStandardWindowBorderStyle(windowId, FALSE); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokedex, 8, 9, TEXT_SKIP_DRAW, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionPokemon, 8, 25, TEXT_SKIP_DRAW, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_MenuOptionBag, 8, 41, TEXT_SKIP_DRAW, NULL); diff --git a/src/secret_base.c b/src/secret_base.c index fa424889e07a..d2cbcb98678a 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -920,7 +920,7 @@ static void Task_ShowSecretBaseRegistryMenu(u8 taskId) { tSelectedRow = 0; tScrollOffset = 0; - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); sRegistryMenu = calloc(1, sizeof(*sRegistryMenu)); tMainWindowId = AddWindow(&sRegistryWindowTemplates[0]); BuildRegistryMenuItems(taskId); @@ -976,7 +976,7 @@ static void RegistryMenu_OnCursorMove(s32 unused, bool8 flag, struct ListMenu *m static void FinalizeRegistryMenu(u8 taskId) { s16 *data = gTasks[taskId].data; - SetStandardWindowBorderStyle(tMainWindowId, 0); + SetStandardWindowBorderStyle(tMainWindowId, FALSE); tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, tScrollOffset, tSelectedRow); AddRegistryMenuScrollArrows(taskId); ScheduleBgCopyTilemapToVram(0); @@ -1002,7 +1002,7 @@ static void HandleRegistryMenuInput(u8 taskId) PlaySE(SE_SELECT); DestroyListMenuTask(tListTaskId, NULL, NULL); RemoveScrollIndicatorArrowPair(tArrowTaskId); - ClearStdWindowAndFrame(tMainWindowId, 0); + ClearStdWindowAndFrame(tMainWindowId, FALSE); ClearWindowTilemap(tMainWindowId); RemoveWindow(tMainWindowId); ScheduleBgCopyTilemapToVram(0); @@ -1025,7 +1025,7 @@ static void ShowRegistryMenuActions(u8 taskId) template = sRegistryWindowTemplates[1]; template.width = GetMaxWidthInMenuTable(sRegistryMenuActions, 2); tActionWindowId = AddWindow(&template); - SetStandardWindowBorderStyle(tActionWindowId, 0); + SetStandardWindowBorderStyle(tActionWindowId, FALSE); PrintMenuTable(tActionWindowId, ARRAY_COUNT(sRegistryMenuActions), sRegistryMenuActions); InitMenuInUpperLeftCornerNormal(tActionWindowId, ARRAY_COUNT(sRegistryMenuActions), 0); ScheduleBgCopyTilemapToVram(0); @@ -1073,7 +1073,7 @@ static void ShowRegistryMenuDeleteYesNo(u8 taskId) void DeleteRegistry_Yes_Callback(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); DestroyListMenuTask(tListTaskId, &tScrollOffset, &tSelectedRow); gSaveBlock1Ptr->secretBases[tSelectedBaseId].registryStatus = UNREGISTERED; BuildRegistryMenuItems(taskId); @@ -1090,7 +1090,7 @@ static void DeleteRegistry_Yes(u8 taskId) static void DeleteRegistry_No(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearDialogWindowAndFrame(0, 0); + ClearDialogWindowAndFrame(0, FALSE); DestroyListMenuTask(tListTaskId, &tScrollOffset, &tSelectedRow); FinalizeRegistryMenu(taskId); gTasks[taskId].func = HandleRegistryMenuInput; @@ -1100,7 +1100,7 @@ static void ReturnToMainRegistryMenu(u8 taskId) { s16 *data = gTasks[taskId].data; AddRegistryMenuScrollArrows(taskId); - ClearStdWindowAndFrame(tActionWindowId, 0); + ClearStdWindowAndFrame(tActionWindowId, FALSE); ClearWindowTilemap(tActionWindowId); RemoveWindow(tActionWindowId); ScheduleBgCopyTilemapToVram(0); diff --git a/src/shop.c b/src/shop.c index 700a53e37ab6..c69bed5017f8 100755 --- a/src/shop.c +++ b/src/shop.c @@ -299,7 +299,7 @@ static u8 CreateShopMenu(u8 martType) numMenuItems = ARRAY_COUNT(sShopMenuActions_BuyQuit); } - SetStandardWindowBorderStyle(sMartInfo.windowId, 0); + SetStandardWindowBorderStyle(sMartInfo.windowId, FALSE); PrintMenuTable(sMartInfo.windowId, numMenuItems, sMartInfo.menuActions); InitMenuInUpperLeftCornerNormal(sMartInfo.windowId, numMenuItems, 0); PutWindowTilemap(sMartInfo.windowId); @@ -370,7 +370,7 @@ void CB2_ExitSellMenu(void) static void Task_HandleShopMenuQuit(u8 taskId) { - ClearStdWindowAndFrameToTransparent(sMartInfo.windowId, 2); + ClearStdWindowAndFrameToTransparent(sMartInfo.windowId, 2); // Incorrect use, making it not copy it to vram. RemoveWindow(sMartInfo.windowId); TryPutSmartShopperOnAir(); ScriptContext2_Disable(); @@ -1022,8 +1022,8 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(4, 0); - ClearStdWindowAndFrameToTransparent(3, 0); + ClearStdWindowAndFrameToTransparent(4, FALSE); + ClearStdWindowAndFrameToTransparent(3, FALSE); ClearWindowTilemap(4); ClearWindowTilemap(3); PutWindowTilemap(1); @@ -1035,8 +1035,8 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(4, 0); - ClearStdWindowAndFrameToTransparent(3, 0); + ClearStdWindowAndFrameToTransparent(4, FALSE); + ClearStdWindowAndFrameToTransparent(3, FALSE); ClearWindowTilemap(4); ClearWindowTilemap(3); BuyMenuReturnToItemList(taskId); @@ -1131,7 +1131,7 @@ static void BuyMenuReturnToItemList(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearDialogWindowAndFrameToTransparent(5, 0); + ClearDialogWindowAndFrameToTransparent(5, FALSE); BuyMenuPrintCursor(tListTaskId, 1); PutWindowTilemap(1); PutWindowTilemap(2); diff --git a/src/trainer_card.c b/src/trainer_card.c index 264f15742a87..65f996003816 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -496,7 +496,7 @@ static void Task_TrainerCard(u8 taskId) break; case STATE_WAIT_LINK_PARTNER: SetCloseLinkCallback(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); AddTextPrinterParameterized(0, FONT_NORMAL, gText_WaitingTrainerFinishReading, 0, 1, 255, 0); CopyWindowToVram(0, COPYWIN_FULL); sData->mainState = STATE_CLOSE_CARD_LINK; diff --git a/src/union_room.c b/src/union_room.c index 05b41a088098..07fd30ca78ad 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1950,7 +1950,7 @@ static void Task_SendMysteryGift(u8 taskId) data->state = 7; break; case 7: - switch (DoMysteryGiftYesNo(&data->textState, &data->yesNoWindowId, 0, gStringVar4)) + switch (DoMysteryGiftYesNo(&data->textState, &data->yesNoWindowId, FALSE, gStringVar4)) { case 0: LoadWirelessStatusIndicatorSpriteGfx(); @@ -3585,7 +3585,7 @@ static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList * l static bool32 UR_PrintFieldMessage(const u8 *src) { LoadMessageBoxAndBorderGfx(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); StringExpandPlaceholders(gStringVar4, src); AddTextPrinterWithCustomSpeedForMessage(FALSE, 1); return FALSE; @@ -3605,7 +3605,7 @@ static bool8 PrintOnTextbox(u8 *textState, const u8 *str) { case 0: LoadMessageBoxAndBorderGfx(); - DrawDialogueFrame(0, 1); + DrawDialogueFrame(0, TRUE); StringExpandPlaceholders(gStringVar4, str); AddTextPrinterForMessage_2(TRUE); (*textState)++; diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 4b3402e5acfd..6d250bb7291b 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -665,7 +665,7 @@ void RockSmashWildEncounter(void) { gSpecialVar_Result = FALSE; } - else if (DoWildEncounterRateTest(wildPokemonInfo->encounterRate, 1) == TRUE + else if (DoWildEncounterRateTest(wildPokemonInfo->encounterRate, TRUE) == TRUE && TryGenerateWildMon(wildPokemonInfo, WILD_AREA_ROCKS, WILD_CHECK_REPEL | WILD_CHECK_KEEN_EYE) == TRUE) { BattleSetup_StartWildBattle(); From b59f7aed7f6ddcd576af8f065c77f158edc42de0 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 25 Jul 2022 23:59:13 -0300 Subject: [PATCH 631/762] Added a constant for NPC trainer name length (#1712) --- include/constants/global.h | 1 + include/constants/trainer_hill.h | 2 -- include/data.h | 2 +- include/global.tv.h | 3 ++- include/trainer_hill.h | 2 +- src/rom_header_gf.c | 4 ++-- src/trainer_hill.c | 6 +++--- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/constants/global.h b/include/constants/global.h index f4b503c327bb..2a0ac7d6f1ed 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -103,6 +103,7 @@ #define WONDER_NEWS_BODY_TEXT_LINES 10 #define TYPE_NAME_LENGTH 6 #define ABILITY_NAME_LENGTH 12 +#define TRAINER_NAME_LENGTH 10 #define MAX_STAMP_CARD_STAMPS 7 diff --git a/include/constants/trainer_hill.h b/include/constants/trainer_hill.h index 371763faf35c..e0f660b6f004 100644 --- a/include/constants/trainer_hill.h +++ b/include/constants/trainer_hill.h @@ -52,8 +52,6 @@ #define TRAINER_HILL_PLAYER_STATUS_ECARD_SCANNED 1 #define TRAINER_HILL_PLAYER_STATUS_NORMAL 2 -#define HILL_TRAINER_NAME_LENGTH 11 - #define TRAINER_HILL_OTID 0x10000000 // The full map of each Trainer Hill floor is 16x21. diff --git a/include/data.h b/include/data.h index 2d3619e679ee..8846cc93e96c 100644 --- a/include/data.h +++ b/include/data.h @@ -71,7 +71,7 @@ struct Trainer /*0x01*/ u8 trainerClass; /*0x02*/ u8 encounterMusic_gender; // last bit is gender /*0x03*/ u8 trainerPic; - /*0x04*/ u8 trainerName[12]; + /*0x04*/ u8 trainerName[TRAINER_NAME_LENGTH + 1]; /*0x10*/ u16 items[MAX_TRAINER_ITEMS]; /*0x18*/ bool8 doubleBattle; /*0x1C*/ u32 aiFlags; diff --git a/include/global.tv.h b/include/global.tv.h index e24ead3f21d6..1fb1b8a33375 100644 --- a/include/global.tv.h +++ b/include/global.tv.h @@ -81,7 +81,8 @@ typedef union // size = 0x24 /*0x01*/ bool8 active; /*0x02*/ u16 species; /*0x04*/ u8 pokemonName[POKEMON_NAME_LENGTH + 1]; - /*0x0F*/ u8 trainerName[11]; + /*0x0F*/ u8 trainerName[PLAYER_NAME_LENGTH + 1]; + /*0x17*/ u8 unused[3]; /*0x1A*/ u8 random; /*0x1B*/ u8 random2; /*0x1C*/ u16 randomSpecies; diff --git a/include/trainer_hill.h b/include/trainer_hill.h index 954087e1bb44..6e2ec0ba0ac6 100644 --- a/include/trainer_hill.h +++ b/include/trainer_hill.h @@ -5,7 +5,7 @@ struct TrainerHillTrainer { - u8 name[HILL_TRAINER_NAME_LENGTH]; + u8 name[TRAINER_NAME_LENGTH + 1]; u8 facilityClass; bool32 unused; // Set to TRUE on JP trainers u16 speechBefore[EASY_CHAT_BATTLE_WORDS_COUNT]; diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index b854c899e5bb..2723e1200ed7 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -31,7 +31,7 @@ struct GFRomHeader u32 mysteryEventFlag; u32 pokedexCount; u8 playerNameLength; - u8 unk2; + u8 trainerNameLength; u8 pokemonNameLength1; u8 pokemonNameLength2; u8 unk5; @@ -111,7 +111,7 @@ static const struct GFRomHeader sGFRomHeader = { .mysteryEventFlag = FLAG_SYS_MYSTERY_EVENT_ENABLE, .pokedexCount = NATIONAL_DEX_COUNT, .playerNameLength = PLAYER_NAME_LENGTH, - .unk2 = 10, + .trainerNameLength = TRAINER_NAME_LENGTH, .pokemonNameLength1 = POKEMON_NAME_LENGTH, .pokemonNameLength2 = POKEMON_NAME_LENGTH, // Two of the below 12s are likely move/ability name length, given their presence in this header diff --git a/src/trainer_hill.c b/src/trainer_hill.c index dad6b97ea3ac..4549166ac4ac 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -36,7 +36,7 @@ struct FloorTrainers { - u8 name[HILL_TRAINERS_PER_FLOOR][HILL_TRAINER_NAME_LENGTH]; + u8 name[HILL_TRAINERS_PER_FLOOR][TRAINER_NAME_LENGTH + 1]; u8 facilityClass[HILL_TRAINERS_PER_FLOOR]; }; @@ -305,7 +305,7 @@ void GetTrainerHillTrainerName(u8 *dst, u16 trainerId) s32 i; u8 id = trainerId - 1; - for (i = 0; i < HILL_TRAINER_NAME_LENGTH; i++) + for (i = 0; i < TRAINER_NAME_LENGTH + 1; i++) dst[i] = sFloorTrainers->name[id][i]; } @@ -330,7 +330,7 @@ void InitTrainerHillBattleStruct(void) for (i = 0; i < HILL_TRAINERS_PER_FLOOR; i++) { - for (j = 0; j < HILL_TRAINER_NAME_LENGTH; j++) + for (j = 0; j < TRAINER_NAME_LENGTH + 1; j++) sFloorTrainers->name[i][j] = sHillData->floors[sHillData->floorId].trainers[i].name[j]; sFloorTrainers->facilityClass[i] = sHillData->floors[sHillData->floorId].trainers[i].facilityClass; From c557c4eb27a2befe5528afc27cbc84b4ace4fb5a Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Tue, 26 Jul 2022 14:44:53 +0200 Subject: [PATCH 632/762] Add a comment --- src/international_string_util.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/international_string_util.c b/src/international_string_util.c index 6d2867dfac0d..df509b7f1671 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -206,6 +206,7 @@ void TVShowConvertInternationalString(u8 *dest, const u8 *src, int language) ConvertInternationalString(dest, language); } +// It's impossible to distinguish between Latin languages just from a string alone, so the function defaults to LANGUAGE_ENGLISH. This is the case in all of the versions the game. int GetNicknameLanguage(u8 *str) { if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN) From b7c78571a6d3ebe071860eb86ba019b169d9a36d Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Tue, 26 Jul 2022 15:39:29 +0200 Subject: [PATCH 633/762] Update src/international_string_util.c Co-authored-by: LOuroboros --- src/international_string_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/international_string_util.c b/src/international_string_util.c index df509b7f1671..6a1423e5e5f9 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -206,7 +206,7 @@ void TVShowConvertInternationalString(u8 *dest, const u8 *src, int language) ConvertInternationalString(dest, language); } -// It's impossible to distinguish between Latin languages just from a string alone, so the function defaults to LANGUAGE_ENGLISH. This is the case in all of the versions the game. +// It's impossible to distinguish between Latin languages just from a string alone, so the function defaults to LANGUAGE_ENGLISH. This is the case in all of the versions of the game. int GetNicknameLanguage(u8 *str) { if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN) From 2380d13a433b99a56a30254d8e3de674a89a98da Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Wed, 27 Jul 2022 23:23:28 +0100 Subject: [PATCH 634/762] Macros for keeping .partyFlags, .partySize, and .party in sync --- include/data.h | 5 + src/data/trainers.h | 3416 +++++++++++-------------------------------- 2 files changed, 859 insertions(+), 2562 deletions(-) diff --git a/include/data.h b/include/data.h index 8846cc93e96c..0cd87fc99ac7 100644 --- a/include/data.h +++ b/include/data.h @@ -57,6 +57,11 @@ struct TrainerMonItemCustomMoves u16 moves[MAX_MON_MOVES]; }; +#define NO_ITEM_DEFAULT_MOVES(party) { .NoItemDefaultMoves = party }, .partySize = ARRAY_COUNT(party), .partyFlags = 0 +#define NO_ITEM_CUSTOM_MOVES(party) { .NoItemCustomMoves = party }, .partySize = ARRAY_COUNT(party), .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET +#define ITEM_DEFAULT_MOVES(party) { .ItemDefaultMoves = party }, .partySize = ARRAY_COUNT(party), .partyFlags = F_TRAINER_PARTY_HELD_ITEM +#define ITEM_CUSTOM_MOVES(party) { .ItemCustomMoves = party }, .partySize = ARRAY_COUNT(party), .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET | F_TRAINER_PARTY_HELD_ITEM + union TrainerMonPtr { const struct TrainerMonNoItemDefaultMoves *NoItemDefaultMoves; diff --git a/src/data/trainers.h b/src/data/trainers.h index 01cf0259afaf..b4c1b0575233 100644 --- a/src/data/trainers.h +++ b/src/data/trainers.h @@ -15,7 +15,6 @@ const struct Trainer gTrainers[] = { [TRAINER_SAWYER_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -23,13 +22,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sawyer1), - .party = {.NoItemDefaultMoves = sParty_Sawyer1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sawyer1), }, [TRAINER_GRUNT_AQUA_HIDEOUT_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -37,13 +34,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout1), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout1), }, [TRAINER_GRUNT_AQUA_HIDEOUT_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -51,13 +46,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout2), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout2), }, [TRAINER_GRUNT_AQUA_HIDEOUT_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -65,13 +58,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout3), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout3), }, [TRAINER_GRUNT_AQUA_HIDEOUT_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -79,13 +70,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout4), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout4), }, [TRAINER_GRUNT_SEAFLOOR_CAVERN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -93,13 +82,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSeafloorCavern1), - .party = {.NoItemDefaultMoves = sParty_GruntSeafloorCavern1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSeafloorCavern1), }, [TRAINER_GRUNT_SEAFLOOR_CAVERN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -107,13 +94,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSeafloorCavern2), - .party = {.NoItemDefaultMoves = sParty_GruntSeafloorCavern2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSeafloorCavern2), }, [TRAINER_GRUNT_SEAFLOOR_CAVERN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -121,13 +106,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSeafloorCavern3), - .party = {.NoItemDefaultMoves = sParty_GruntSeafloorCavern3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSeafloorCavern3), }, [TRAINER_GABRIELLE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -135,13 +118,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gabrielle1), - .party = {.NoItemDefaultMoves = sParty_Gabrielle1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gabrielle1), }, [TRAINER_GRUNT_PETALBURG_WOODS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -149,13 +130,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntPetalburgWoods), - .party = {.NoItemDefaultMoves = sParty_GruntPetalburgWoods}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntPetalburgWoods), }, [TRAINER_MARCEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -163,13 +142,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Marcel), - .party = {.NoItemDefaultMoves = sParty_Marcel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Marcel), }, [TRAINER_ALBERTO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -177,13 +154,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alberto), - .party = {.NoItemDefaultMoves = sParty_Alberto}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alberto), }, [TRAINER_ED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -191,13 +166,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ed), - .party = {.NoItemDefaultMoves = sParty_Ed}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ed), }, [TRAINER_GRUNT_SEAFLOOR_CAVERN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -205,13 +178,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSeafloorCavern4), - .party = {.NoItemDefaultMoves = sParty_GruntSeafloorCavern4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSeafloorCavern4), }, [TRAINER_DECLAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -219,13 +190,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Declan), - .party = {.NoItemDefaultMoves = sParty_Declan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Declan), }, [TRAINER_GRUNT_RUSTURF_TUNNEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -233,13 +202,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntRusturfTunnel), - .party = {.NoItemDefaultMoves = sParty_GruntRusturfTunnel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntRusturfTunnel), }, [TRAINER_GRUNT_WEATHER_INST_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -247,13 +214,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntWeatherInst1), - .party = {.NoItemDefaultMoves = sParty_GruntWeatherInst1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntWeatherInst1), }, [TRAINER_GRUNT_WEATHER_INST_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -261,13 +226,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntWeatherInst2), - .party = {.NoItemDefaultMoves = sParty_GruntWeatherInst2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntWeatherInst2), }, [TRAINER_GRUNT_WEATHER_INST_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -275,13 +238,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntWeatherInst3), - .party = {.NoItemDefaultMoves = sParty_GruntWeatherInst3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntWeatherInst3), }, [TRAINER_GRUNT_MUSEUM_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -289,13 +250,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMuseum1), - .party = {.NoItemDefaultMoves = sParty_GruntMuseum1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMuseum1), }, [TRAINER_GRUNT_MUSEUM_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -303,13 +262,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMuseum2), - .party = {.NoItemDefaultMoves = sParty_GruntMuseum2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMuseum2), }, [TRAINER_GRUNT_SPACE_CENTER_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -317,13 +274,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter1), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter1), }, [TRAINER_GRUNT_MT_PYRE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -331,13 +286,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtPyre1), - .party = {.NoItemDefaultMoves = sParty_GruntMtPyre1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtPyre1), }, [TRAINER_GRUNT_MT_PYRE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -345,13 +298,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtPyre2), - .party = {.NoItemDefaultMoves = sParty_GruntMtPyre2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtPyre2), }, [TRAINER_GRUNT_MT_PYRE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -359,13 +310,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtPyre3), - .party = {.NoItemDefaultMoves = sParty_GruntMtPyre3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtPyre3), }, [TRAINER_GRUNT_WEATHER_INST_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -373,13 +322,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntWeatherInst4), - .party = {.NoItemDefaultMoves = sParty_GruntWeatherInst4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntWeatherInst4), }, [TRAINER_GRUNT_AQUA_HIDEOUT_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -387,13 +334,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout5), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout5), }, [TRAINER_GRUNT_AQUA_HIDEOUT_6] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -401,13 +346,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout6), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout6}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout6), }, [TRAINER_FREDRICK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -415,13 +358,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Fredrick), - .party = {.NoItemDefaultMoves = sParty_Fredrick}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fredrick), }, [TRAINER_MATT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AQUA_ADMIN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_ADMIN_M, @@ -429,13 +370,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Matt), - .party = {.NoItemDefaultMoves = sParty_Matt}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Matt), }, [TRAINER_ZANDER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -443,13 +382,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Zander), - .party = {.NoItemDefaultMoves = sParty_Zander}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Zander), }, [TRAINER_SHELLY_WEATHER_INSTITUTE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AQUA_ADMIN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_ADMIN_F, @@ -457,13 +394,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_ShellyWeatherInstitute), - .party = {.NoItemDefaultMoves = sParty_ShellyWeatherInstitute}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_ShellyWeatherInstitute), }, [TRAINER_SHELLY_SEAFLOOR_CAVERN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AQUA_ADMIN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_ADMIN_F, @@ -471,13 +406,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_ShellySeafloorCavern), - .party = {.NoItemDefaultMoves = sParty_ShellySeafloorCavern}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_ShellySeafloorCavern), }, [TRAINER_ARCHIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AQUA_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_LEADER_ARCHIE, @@ -485,13 +418,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Archie), - .party = {.NoItemDefaultMoves = sParty_Archie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Archie), }, [TRAINER_LEAH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -499,13 +430,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Leah), - .party = {.NoItemDefaultMoves = sParty_Leah}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Leah), }, [TRAINER_DAISY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -513,13 +442,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Daisy), - .party = {.NoItemDefaultMoves = sParty_Daisy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Daisy), }, [TRAINER_ROSE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -527,13 +454,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rose1), - .party = {.NoItemDefaultMoves = sParty_Rose1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rose1), }, [TRAINER_FELIX] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -541,13 +466,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Felix), - .party = {.NoItemCustomMoves = sParty_Felix}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Felix), }, [TRAINER_VIOLET] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -555,13 +478,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Violet), - .party = {.NoItemDefaultMoves = sParty_Violet}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Violet), }, [TRAINER_ROSE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -569,13 +490,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rose2), - .party = {.NoItemDefaultMoves = sParty_Rose2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rose2), }, [TRAINER_ROSE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -583,13 +502,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rose3), - .party = {.NoItemDefaultMoves = sParty_Rose3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rose3), }, [TRAINER_ROSE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -597,13 +514,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rose4), - .party = {.NoItemDefaultMoves = sParty_Rose4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rose4), }, [TRAINER_ROSE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -611,13 +526,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rose5), - .party = {.NoItemDefaultMoves = sParty_Rose5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rose5), }, [TRAINER_DUSTY_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -625,13 +538,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dusty1), - .party = {.NoItemCustomMoves = sParty_Dusty1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Dusty1), }, [TRAINER_CHIP] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -639,13 +550,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chip), - .party = {.NoItemCustomMoves = sParty_Chip}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Chip), }, [TRAINER_FOSTER] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -653,13 +562,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Foster), - .party = {.NoItemCustomMoves = sParty_Foster}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Foster), }, [TRAINER_DUSTY_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -667,13 +574,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dusty2), - .party = {.NoItemCustomMoves = sParty_Dusty2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Dusty2), }, [TRAINER_DUSTY_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -681,13 +586,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dusty3), - .party = {.NoItemCustomMoves = sParty_Dusty3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Dusty3), }, [TRAINER_DUSTY_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -695,13 +598,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dusty4), - .party = {.NoItemCustomMoves = sParty_Dusty4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Dusty4), }, [TRAINER_DUSTY_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -709,13 +610,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dusty5), - .party = {.NoItemCustomMoves = sParty_Dusty5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Dusty5), }, [TRAINER_GABBY_AND_TY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -723,13 +622,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy1), - .party = {.NoItemDefaultMoves = sParty_GabbyAndTy1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GabbyAndTy1), }, [TRAINER_GABBY_AND_TY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -737,13 +634,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy2), - .party = {.NoItemDefaultMoves = sParty_GabbyAndTy2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GabbyAndTy2), }, [TRAINER_GABBY_AND_TY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -751,13 +646,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy3), - .party = {.NoItemDefaultMoves = sParty_GabbyAndTy3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GabbyAndTy3), }, [TRAINER_GABBY_AND_TY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -765,13 +658,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy4), - .party = {.NoItemDefaultMoves = sParty_GabbyAndTy4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GabbyAndTy4), }, [TRAINER_GABBY_AND_TY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -779,13 +670,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy5), - .party = {.NoItemDefaultMoves = sParty_GabbyAndTy5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GabbyAndTy5), }, [TRAINER_GABBY_AND_TY_6] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_INTERVIEWER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTERVIEWER, .trainerPic = TRAINER_PIC_INTERVIEWER, @@ -793,13 +682,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GabbyAndTy6), - .party = {.NoItemCustomMoves = sParty_GabbyAndTy6}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_GabbyAndTy6), }, [TRAINER_LOLA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -807,13 +694,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lola1), - .party = {.NoItemDefaultMoves = sParty_Lola1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lola1), }, [TRAINER_AUSTINA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -821,13 +706,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Austina), - .party = {.NoItemDefaultMoves = sParty_Austina}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Austina), }, [TRAINER_GWEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -835,13 +718,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gwen), - .party = {.NoItemDefaultMoves = sParty_Gwen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gwen), }, [TRAINER_LOLA_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -849,13 +730,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lola2), - .party = {.NoItemDefaultMoves = sParty_Lola2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lola2), }, [TRAINER_LOLA_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -863,13 +742,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lola3), - .party = {.NoItemDefaultMoves = sParty_Lola3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lola3), }, [TRAINER_LOLA_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -877,13 +754,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lola4), - .party = {.NoItemDefaultMoves = sParty_Lola4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lola4), }, [TRAINER_LOLA_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -891,13 +766,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lola5), - .party = {.NoItemDefaultMoves = sParty_Lola5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lola5), }, [TRAINER_RICKY_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -905,13 +778,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ricky1), - .party = {.NoItemCustomMoves = sParty_Ricky1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ricky1), }, [TRAINER_SIMON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -919,13 +790,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Simon), - .party = {.NoItemDefaultMoves = sParty_Simon}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Simon), }, [TRAINER_CHARLIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -933,13 +802,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Charlie), - .party = {.NoItemDefaultMoves = sParty_Charlie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Charlie), }, [TRAINER_RICKY_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -947,13 +814,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ricky2), - .party = {.NoItemCustomMoves = sParty_Ricky2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ricky2), }, [TRAINER_RICKY_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -961,13 +826,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ricky3), - .party = {.NoItemCustomMoves = sParty_Ricky3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ricky3), }, [TRAINER_RICKY_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -975,13 +838,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ricky4), - .party = {.NoItemCustomMoves = sParty_Ricky4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ricky4), }, [TRAINER_RICKY_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -989,13 +850,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ricky5), - .party = {.NoItemCustomMoves = sParty_Ricky5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ricky5), }, [TRAINER_RANDALL] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1003,13 +862,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Randall), - .party = {.ItemCustomMoves = sParty_Randall}, + .party = ITEM_CUSTOM_MOVES(sParty_Randall), }, [TRAINER_PARKER] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1017,13 +874,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Parker), - .party = {.ItemCustomMoves = sParty_Parker}, + .party = ITEM_CUSTOM_MOVES(sParty_Parker), }, [TRAINER_GEORGE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1031,13 +886,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_George), - .party = {.ItemCustomMoves = sParty_George}, + .party = ITEM_CUSTOM_MOVES(sParty_George), }, [TRAINER_BERKE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1045,13 +898,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Berke), - .party = {.ItemCustomMoves = sParty_Berke}, + .party = ITEM_CUSTOM_MOVES(sParty_Berke), }, [TRAINER_BRAXTON] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1059,13 +910,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Braxton), - .party = {.NoItemCustomMoves = sParty_Braxton}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Braxton), }, [TRAINER_VINCENT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1073,13 +922,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Vincent), - .party = {.NoItemDefaultMoves = sParty_Vincent}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Vincent), }, [TRAINER_LEROY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1087,13 +934,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Leroy), - .party = {.NoItemDefaultMoves = sParty_Leroy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Leroy), }, [TRAINER_WILTON_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1101,13 +946,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wilton1), - .party = {.NoItemDefaultMoves = sParty_Wilton1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wilton1), }, [TRAINER_EDGAR] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1115,13 +958,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Edgar), - .party = {.NoItemDefaultMoves = sParty_Edgar}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edgar), }, [TRAINER_ALBERT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1129,13 +970,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Albert), - .party = {.NoItemDefaultMoves = sParty_Albert}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Albert), }, [TRAINER_SAMUEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1143,13 +982,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Samuel), - .party = {.NoItemDefaultMoves = sParty_Samuel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Samuel), }, [TRAINER_VITO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1157,13 +994,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Vito), - .party = {.NoItemDefaultMoves = sParty_Vito}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Vito), }, [TRAINER_OWEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1171,13 +1006,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Owen), - .party = {.NoItemDefaultMoves = sParty_Owen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Owen), }, [TRAINER_WILTON_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1185,13 +1018,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wilton2), - .party = {.NoItemDefaultMoves = sParty_Wilton2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wilton2), }, [TRAINER_WILTON_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1199,13 +1030,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wilton3), - .party = {.NoItemDefaultMoves = sParty_Wilton3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wilton3), }, [TRAINER_WILTON_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1213,13 +1042,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wilton4), - .party = {.NoItemDefaultMoves = sParty_Wilton4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wilton4), }, [TRAINER_WILTON_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1227,13 +1054,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wilton5), - .party = {.NoItemDefaultMoves = sParty_Wilton5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wilton5), }, [TRAINER_WARREN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -1241,13 +1066,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Warren), - .party = {.NoItemDefaultMoves = sParty_Warren}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Warren), }, [TRAINER_MARY] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1255,13 +1078,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Mary), - .party = {.ItemCustomMoves = sParty_Mary}, + .party = ITEM_CUSTOM_MOVES(sParty_Mary), }, [TRAINER_ALEXIA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1269,13 +1090,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Alexia), - .party = {.ItemCustomMoves = sParty_Alexia}, + .party = ITEM_CUSTOM_MOVES(sParty_Alexia), }, [TRAINER_JODY] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1283,13 +1102,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Jody), - .party = {.ItemCustomMoves = sParty_Jody}, + .party = ITEM_CUSTOM_MOVES(sParty_Jody), }, [TRAINER_WENDY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1297,13 +1114,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Wendy), - .party = {.NoItemCustomMoves = sParty_Wendy}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Wendy), }, [TRAINER_KEIRA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1311,13 +1126,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Keira), - .party = {.NoItemDefaultMoves = sParty_Keira}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Keira), }, [TRAINER_BROOKE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1325,13 +1138,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brooke1), - .party = {.NoItemDefaultMoves = sParty_Brooke1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brooke1), }, [TRAINER_JENNIFER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1339,13 +1150,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jennifer), - .party = {.NoItemDefaultMoves = sParty_Jennifer}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jennifer), }, [TRAINER_HOPE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1353,13 +1162,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Hope), - .party = {.NoItemDefaultMoves = sParty_Hope}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hope), }, [TRAINER_SHANNON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1367,13 +1174,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shannon), - .party = {.NoItemDefaultMoves = sParty_Shannon}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shannon), }, [TRAINER_MICHELLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1381,13 +1186,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Michelle), - .party = {.NoItemDefaultMoves = sParty_Michelle}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Michelle), }, [TRAINER_CAROLINE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1395,13 +1198,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Caroline), - .party = {.NoItemDefaultMoves = sParty_Caroline}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Caroline), }, [TRAINER_JULIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1409,13 +1210,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Julie), - .party = {.NoItemDefaultMoves = sParty_Julie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Julie), }, [TRAINER_BROOKE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1423,13 +1222,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brooke2), - .party = {.NoItemDefaultMoves = sParty_Brooke2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brooke2), }, [TRAINER_BROOKE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1437,13 +1234,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brooke3), - .party = {.NoItemDefaultMoves = sParty_Brooke3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brooke3), }, [TRAINER_BROOKE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1451,13 +1246,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brooke4), - .party = {.NoItemDefaultMoves = sParty_Brooke4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brooke4), }, [TRAINER_BROOKE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -1465,13 +1258,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brooke5), - .party = {.NoItemDefaultMoves = sParty_Brooke5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brooke5), }, [TRAINER_PATRICIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1479,13 +1270,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Patricia), - .party = {.NoItemDefaultMoves = sParty_Patricia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Patricia), }, [TRAINER_KINDRA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1493,13 +1282,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kindra), - .party = {.NoItemDefaultMoves = sParty_Kindra}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kindra), }, [TRAINER_TAMMY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1507,13 +1294,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tammy), - .party = {.NoItemDefaultMoves = sParty_Tammy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tammy), }, [TRAINER_VALERIE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1521,13 +1306,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Valerie1), - .party = {.NoItemDefaultMoves = sParty_Valerie1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Valerie1), }, [TRAINER_TASHA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1535,13 +1318,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tasha), - .party = {.NoItemDefaultMoves = sParty_Tasha}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tasha), }, [TRAINER_VALERIE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1549,13 +1330,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Valerie2), - .party = {.NoItemDefaultMoves = sParty_Valerie2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Valerie2), }, [TRAINER_VALERIE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1563,13 +1342,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Valerie3), - .party = {.NoItemDefaultMoves = sParty_Valerie3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Valerie3), }, [TRAINER_VALERIE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1577,13 +1354,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Valerie4), - .party = {.NoItemDefaultMoves = sParty_Valerie4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Valerie4), }, [TRAINER_VALERIE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -1591,13 +1366,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Valerie5), - .party = {.NoItemDefaultMoves = sParty_Valerie5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Valerie5), }, [TRAINER_CINDY_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1605,13 +1378,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy1), - .party = {.ItemDefaultMoves = sParty_Cindy1}, + .party = ITEM_DEFAULT_MOVES(sParty_Cindy1), }, [TRAINER_DAPHNE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1619,13 +1390,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Daphne), - .party = {.ItemCustomMoves = sParty_Daphne}, + .party = ITEM_CUSTOM_MOVES(sParty_Daphne), }, [TRAINER_GRUNT_SPACE_CENTER_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -1633,13 +1402,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter2), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter2), }, [TRAINER_CINDY_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1647,13 +1414,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy2), - .party = {.ItemCustomMoves = sParty_Cindy2}, + .party = ITEM_CUSTOM_MOVES(sParty_Cindy2), }, [TRAINER_BRIANNA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1661,13 +1426,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brianna), - .party = {.ItemDefaultMoves = sParty_Brianna}, + .party = ITEM_DEFAULT_MOVES(sParty_Brianna), }, [TRAINER_NAOMI] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1675,13 +1438,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Naomi), - .party = {.ItemDefaultMoves = sParty_Naomi}, + .party = ITEM_DEFAULT_MOVES(sParty_Naomi), }, [TRAINER_CINDY_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1689,13 +1450,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy3), - .party = {.ItemDefaultMoves = sParty_Cindy3}, + .party = ITEM_DEFAULT_MOVES(sParty_Cindy3), }, [TRAINER_CINDY_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1703,13 +1462,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy4), - .party = {.ItemDefaultMoves = sParty_Cindy4}, + .party = ITEM_DEFAULT_MOVES(sParty_Cindy4), }, [TRAINER_CINDY_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1717,13 +1474,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy5), - .party = {.ItemDefaultMoves = sParty_Cindy5}, + .party = ITEM_DEFAULT_MOVES(sParty_Cindy5), }, [TRAINER_CINDY_6] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -1731,13 +1486,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cindy6), - .party = {.ItemCustomMoves = sParty_Cindy6}, + .party = ITEM_CUSTOM_MOVES(sParty_Cindy6), }, [TRAINER_MELISSA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1745,13 +1498,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Melissa), - .party = {.NoItemDefaultMoves = sParty_Melissa}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Melissa), }, [TRAINER_SHEILA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1759,13 +1510,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sheila), - .party = {.NoItemDefaultMoves = sParty_Sheila}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sheila), }, [TRAINER_SHIRLEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1773,13 +1522,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Shirley), - .party = {.NoItemDefaultMoves = sParty_Shirley}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shirley), }, [TRAINER_JESSICA_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1787,13 +1534,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jessica1), - .party = {.NoItemCustomMoves = sParty_Jessica1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jessica1), }, [TRAINER_CONNIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1801,13 +1546,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Connie), - .party = {.NoItemDefaultMoves = sParty_Connie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Connie), }, [TRAINER_BRIDGET] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1815,13 +1558,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bridget), - .party = {.NoItemDefaultMoves = sParty_Bridget}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bridget), }, [TRAINER_OLIVIA] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1829,13 +1570,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Olivia), - .party = {.NoItemCustomMoves = sParty_Olivia}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Olivia), }, [TRAINER_TIFFANY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1843,13 +1582,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tiffany), - .party = {.NoItemDefaultMoves = sParty_Tiffany}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tiffany), }, [TRAINER_JESSICA_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1857,13 +1594,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jessica2), - .party = {.NoItemCustomMoves = sParty_Jessica2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jessica2), }, [TRAINER_JESSICA_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1871,13 +1606,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jessica3), - .party = {.NoItemCustomMoves = sParty_Jessica3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jessica3), }, [TRAINER_JESSICA_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1885,13 +1618,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jessica4), - .party = {.NoItemCustomMoves = sParty_Jessica4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jessica4), }, [TRAINER_JESSICA_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -1899,13 +1630,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jessica5), - .party = {.NoItemCustomMoves = sParty_Jessica5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jessica5), }, [TRAINER_WINSTON_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1913,13 +1642,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Winston1), - .party = {.ItemDefaultMoves = sParty_Winston1}, + .party = ITEM_DEFAULT_MOVES(sParty_Winston1), }, [TRAINER_MOLLIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -1927,13 +1654,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Mollie), - .party = {.NoItemDefaultMoves = sParty_Mollie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Mollie), }, [TRAINER_GARRET] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1941,13 +1666,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Garret), - .party = {.ItemDefaultMoves = sParty_Garret}, + .party = ITEM_DEFAULT_MOVES(sParty_Garret), }, [TRAINER_WINSTON_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1955,13 +1678,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Winston2), - .party = {.ItemDefaultMoves = sParty_Winston2}, + .party = ITEM_DEFAULT_MOVES(sParty_Winston2), }, [TRAINER_WINSTON_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1969,13 +1690,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Winston3), - .party = {.ItemDefaultMoves = sParty_Winston3}, + .party = ITEM_DEFAULT_MOVES(sParty_Winston3), }, [TRAINER_WINSTON_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1983,13 +1702,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Winston4), - .party = {.ItemDefaultMoves = sParty_Winston4}, + .party = ITEM_DEFAULT_MOVES(sParty_Winston4), }, [TRAINER_WINSTON_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -1997,13 +1714,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Winston5), - .party = {.ItemCustomMoves = sParty_Winston5}, + .party = ITEM_CUSTOM_MOVES(sParty_Winston5), }, [TRAINER_STEVE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2011,13 +1726,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Steve1), - .party = {.NoItemDefaultMoves = sParty_Steve1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Steve1), }, [TRAINER_THALIA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -2025,13 +1738,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thalia1), - .party = {.NoItemDefaultMoves = sParty_Thalia1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thalia1), }, [TRAINER_MARK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2039,13 +1750,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Mark), - .party = {.NoItemDefaultMoves = sParty_Mark}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Mark), }, [TRAINER_GRUNT_MT_CHIMNEY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_F, @@ -2053,13 +1762,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtChimney1), - .party = {.NoItemDefaultMoves = sParty_GruntMtChimney1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtChimney1), }, [TRAINER_STEVE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2067,13 +1774,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Steve2), - .party = {.NoItemDefaultMoves = sParty_Steve2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Steve2), }, [TRAINER_STEVE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2081,13 +1786,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Steve3), - .party = {.NoItemDefaultMoves = sParty_Steve3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Steve3), }, [TRAINER_STEVE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2095,13 +1798,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Steve4), - .party = {.NoItemDefaultMoves = sParty_Steve4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Steve4), }, [TRAINER_STEVE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -2109,13 +1810,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Steve5), - .party = {.NoItemDefaultMoves = sParty_Steve5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Steve5), }, [TRAINER_LUIS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2123,13 +1822,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Luis), - .party = {.NoItemDefaultMoves = sParty_Luis}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Luis), }, [TRAINER_DOMINIK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2137,13 +1834,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dominik), - .party = {.NoItemDefaultMoves = sParty_Dominik}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dominik), }, [TRAINER_DOUGLAS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2151,13 +1846,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Douglas), - .party = {.NoItemDefaultMoves = sParty_Douglas}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Douglas), }, [TRAINER_DARRIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2165,13 +1858,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Darrin), - .party = {.NoItemDefaultMoves = sParty_Darrin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Darrin), }, [TRAINER_TONY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2179,13 +1870,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tony1), - .party = {.NoItemDefaultMoves = sParty_Tony1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tony1), }, [TRAINER_JEROME] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2193,13 +1882,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerome), - .party = {.NoItemDefaultMoves = sParty_Jerome}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerome), }, [TRAINER_MATTHEW] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2207,13 +1894,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Matthew), - .party = {.NoItemDefaultMoves = sParty_Matthew}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Matthew), }, [TRAINER_DAVID] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2221,13 +1906,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_David), - .party = {.NoItemDefaultMoves = sParty_David}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_David), }, [TRAINER_SPENCER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2235,13 +1918,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Spencer), - .party = {.NoItemDefaultMoves = sParty_Spencer}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Spencer), }, [TRAINER_ROLAND] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2249,13 +1930,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Roland), - .party = {.NoItemDefaultMoves = sParty_Roland}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Roland), }, [TRAINER_NOLEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2263,13 +1942,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nolen), - .party = {.NoItemDefaultMoves = sParty_Nolen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nolen), }, [TRAINER_STAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2277,13 +1954,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Stan), - .party = {.NoItemDefaultMoves = sParty_Stan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Stan), }, [TRAINER_BARRY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2291,13 +1966,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Barry), - .party = {.NoItemDefaultMoves = sParty_Barry}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Barry), }, [TRAINER_DEAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2305,13 +1978,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dean), - .party = {.NoItemDefaultMoves = sParty_Dean}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dean), }, [TRAINER_RODNEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2319,13 +1990,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rodney), - .party = {.NoItemDefaultMoves = sParty_Rodney}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rodney), }, [TRAINER_RICHARD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2333,13 +2002,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Richard), - .party = {.NoItemDefaultMoves = sParty_Richard}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Richard), }, [TRAINER_HERMAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2347,13 +2014,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Herman), - .party = {.NoItemDefaultMoves = sParty_Herman}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Herman), }, [TRAINER_SANTIAGO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2361,13 +2026,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Santiago), - .party = {.NoItemDefaultMoves = sParty_Santiago}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Santiago), }, [TRAINER_GILBERT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2375,13 +2038,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gilbert), - .party = {.NoItemDefaultMoves = sParty_Gilbert}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gilbert), }, [TRAINER_FRANKLIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2389,13 +2050,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Franklin), - .party = {.NoItemDefaultMoves = sParty_Franklin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Franklin), }, [TRAINER_KEVIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2403,13 +2062,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kevin), - .party = {.NoItemDefaultMoves = sParty_Kevin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kevin), }, [TRAINER_JACK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2417,13 +2074,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jack), - .party = {.NoItemDefaultMoves = sParty_Jack}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jack), }, [TRAINER_DUDLEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2431,13 +2086,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dudley), - .party = {.NoItemDefaultMoves = sParty_Dudley}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dudley), }, [TRAINER_CHAD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2445,13 +2098,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chad), - .party = {.NoItemDefaultMoves = sParty_Chad}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Chad), }, [TRAINER_TONY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2459,13 +2110,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tony2), - .party = {.NoItemDefaultMoves = sParty_Tony2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tony2), }, [TRAINER_TONY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2473,13 +2122,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tony3), - .party = {.NoItemDefaultMoves = sParty_Tony3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tony3), }, [TRAINER_TONY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2487,13 +2134,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tony4), - .party = {.NoItemDefaultMoves = sParty_Tony4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tony4), }, [TRAINER_TONY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -2501,13 +2146,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tony5), - .party = {.NoItemDefaultMoves = sParty_Tony5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tony5), }, [TRAINER_TAKAO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2515,13 +2158,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Takao), - .party = {.NoItemDefaultMoves = sParty_Takao}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Takao), }, [TRAINER_HITOSHI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2529,13 +2170,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hitoshi), - .party = {.NoItemDefaultMoves = sParty_Hitoshi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hitoshi), }, [TRAINER_KIYO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2543,13 +2182,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kiyo), - .party = {.NoItemDefaultMoves = sParty_Kiyo}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kiyo), }, [TRAINER_KOICHI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2557,13 +2194,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koichi), - .party = {.NoItemDefaultMoves = sParty_Koichi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koichi), }, [TRAINER_NOB_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2571,13 +2206,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nob1), - .party = {.NoItemDefaultMoves = sParty_Nob1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nob1), }, [TRAINER_NOB_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2585,13 +2218,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nob2), - .party = {.NoItemDefaultMoves = sParty_Nob2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nob2), }, [TRAINER_NOB_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2599,13 +2230,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nob3), - .party = {.NoItemDefaultMoves = sParty_Nob3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nob3), }, [TRAINER_NOB_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2613,13 +2242,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nob4), - .party = {.NoItemDefaultMoves = sParty_Nob4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nob4), }, [TRAINER_NOB_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2627,13 +2254,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nob5), - .party = {.ItemDefaultMoves = sParty_Nob5}, + .party = ITEM_DEFAULT_MOVES(sParty_Nob5), }, [TRAINER_YUJI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2641,13 +2266,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Yuji), - .party = {.NoItemDefaultMoves = sParty_Yuji}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Yuji), }, [TRAINER_DAISUKE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2655,13 +2278,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Daisuke), - .party = {.NoItemDefaultMoves = sParty_Daisuke}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Daisuke), }, [TRAINER_ATSUSHI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -2669,13 +2290,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Atsushi), - .party = {.NoItemDefaultMoves = sParty_Atsushi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Atsushi), }, [TRAINER_KIRK] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2683,13 +2302,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kirk), - .party = {.NoItemCustomMoves = sParty_Kirk}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Kirk), }, [TRAINER_GRUNT_AQUA_HIDEOUT_7] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -2697,13 +2314,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout7), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout7}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout7), }, [TRAINER_GRUNT_AQUA_HIDEOUT_8] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -2711,13 +2326,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntAquaHideout8), - .party = {.NoItemDefaultMoves = sParty_GruntAquaHideout8}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntAquaHideout8), }, [TRAINER_SHAWN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2725,13 +2338,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Shawn), - .party = {.NoItemDefaultMoves = sParty_Shawn}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shawn), }, [TRAINER_FERNANDO_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2739,13 +2350,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fernando1), - .party = {.NoItemDefaultMoves = sParty_Fernando1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fernando1), }, [TRAINER_DALTON_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2753,13 +2362,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dalton1), - .party = {.NoItemDefaultMoves = sParty_Dalton1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dalton1), }, [TRAINER_DALTON_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2767,13 +2374,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dalton2), - .party = {.NoItemDefaultMoves = sParty_Dalton2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dalton2), }, [TRAINER_DALTON_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2781,13 +2386,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dalton3), - .party = {.NoItemDefaultMoves = sParty_Dalton3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dalton3), }, [TRAINER_DALTON_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2795,13 +2398,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dalton4), - .party = {.NoItemDefaultMoves = sParty_Dalton4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dalton4), }, [TRAINER_DALTON_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -2809,13 +2410,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dalton5), - .party = {.NoItemDefaultMoves = sParty_Dalton5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dalton5), }, [TRAINER_COLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2823,13 +2422,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cole), - .party = {.NoItemDefaultMoves = sParty_Cole}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cole), }, [TRAINER_JEFF] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2837,13 +2434,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeff), - .party = {.NoItemDefaultMoves = sParty_Jeff}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jeff), }, [TRAINER_AXLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2851,13 +2446,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Axle), - .party = {.NoItemDefaultMoves = sParty_Axle}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Axle), }, [TRAINER_JACE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2865,13 +2458,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jace), - .party = {.NoItemDefaultMoves = sParty_Jace}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jace), }, [TRAINER_KEEGAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2879,13 +2470,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Keegan), - .party = {.NoItemDefaultMoves = sParty_Keegan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Keegan), }, [TRAINER_BERNIE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2893,13 +2482,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bernie1), - .party = {.NoItemDefaultMoves = sParty_Bernie1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bernie1), }, [TRAINER_BERNIE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2907,13 +2494,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bernie2), - .party = {.NoItemDefaultMoves = sParty_Bernie2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bernie2), }, [TRAINER_BERNIE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2921,13 +2506,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bernie3), - .party = {.NoItemDefaultMoves = sParty_Bernie3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bernie3), }, [TRAINER_BERNIE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2935,13 +2518,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bernie4), - .party = {.NoItemDefaultMoves = sParty_Bernie4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bernie4), }, [TRAINER_BERNIE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -2949,13 +2530,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bernie5), - .party = {.NoItemDefaultMoves = sParty_Bernie5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bernie5), }, [TRAINER_DREW] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -2963,13 +2542,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Drew), - .party = {.NoItemCustomMoves = sParty_Drew}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Drew), }, [TRAINER_BEAU] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -2977,13 +2554,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Beau), - .party = {.NoItemCustomMoves = sParty_Beau}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Beau), }, [TRAINER_LARRY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -2991,13 +2566,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Larry), - .party = {.NoItemDefaultMoves = sParty_Larry}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Larry), }, [TRAINER_SHANE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3005,13 +2578,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Shane), - .party = {.NoItemDefaultMoves = sParty_Shane}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shane), }, [TRAINER_JUSTIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3019,13 +2590,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Justin), - .party = {.NoItemDefaultMoves = sParty_Justin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Justin), }, [TRAINER_ETHAN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3033,13 +2602,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ethan1), - .party = {.NoItemDefaultMoves = sParty_Ethan1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ethan1), }, [TRAINER_AUTUMN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -3047,13 +2614,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Autumn), - .party = {.NoItemDefaultMoves = sParty_Autumn}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Autumn), }, [TRAINER_TRAVIS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3061,13 +2626,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Travis), - .party = {.NoItemDefaultMoves = sParty_Travis}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Travis), }, [TRAINER_ETHAN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3075,13 +2638,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ethan2), - .party = {.NoItemDefaultMoves = sParty_Ethan2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ethan2), }, [TRAINER_ETHAN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3089,13 +2650,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ethan3), - .party = {.NoItemDefaultMoves = sParty_Ethan3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ethan3), }, [TRAINER_ETHAN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3103,13 +2662,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ethan4), - .party = {.NoItemDefaultMoves = sParty_Ethan4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ethan4), }, [TRAINER_ETHAN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -3117,13 +2674,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ethan5), - .party = {.NoItemDefaultMoves = sParty_Ethan5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ethan5), }, [TRAINER_BRENT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3131,13 +2686,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brent), - .party = {.NoItemDefaultMoves = sParty_Brent}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brent), }, [TRAINER_DONALD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3145,13 +2698,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Donald), - .party = {.NoItemDefaultMoves = sParty_Donald}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Donald), }, [TRAINER_TAYLOR] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3159,13 +2710,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Taylor), - .party = {.NoItemDefaultMoves = sParty_Taylor}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Taylor), }, [TRAINER_JEFFREY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3173,13 +2722,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeffrey1), - .party = {.NoItemDefaultMoves = sParty_Jeffrey1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jeffrey1), }, [TRAINER_DEREK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3187,13 +2734,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Derek), - .party = {.NoItemDefaultMoves = sParty_Derek}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Derek), }, [TRAINER_JEFFREY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3201,13 +2746,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeffrey2), - .party = {.NoItemDefaultMoves = sParty_Jeffrey2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jeffrey2), }, [TRAINER_JEFFREY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3215,13 +2758,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeffrey3), - .party = {.NoItemDefaultMoves = sParty_Jeffrey3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jeffrey3), }, [TRAINER_JEFFREY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3229,13 +2770,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeffrey4), - .party = {.NoItemDefaultMoves = sParty_Jeffrey4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jeffrey4), }, [TRAINER_JEFFREY_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -3243,13 +2782,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jeffrey5), - .party = {.ItemDefaultMoves = sParty_Jeffrey5}, + .party = ITEM_DEFAULT_MOVES(sParty_Jeffrey5), }, [TRAINER_EDWARD] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3257,13 +2794,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edward), - .party = {.NoItemCustomMoves = sParty_Edward}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Edward), }, [TRAINER_PRESTON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3271,13 +2806,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Preston), - .party = {.NoItemDefaultMoves = sParty_Preston}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Preston), }, [TRAINER_VIRGIL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3285,13 +2818,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Virgil), - .party = {.NoItemDefaultMoves = sParty_Virgil}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Virgil), }, [TRAINER_BLAKE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3299,13 +2830,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Blake), - .party = {.NoItemDefaultMoves = sParty_Blake}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Blake), }, [TRAINER_WILLIAM] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3313,13 +2842,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_William), - .party = {.NoItemDefaultMoves = sParty_William}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_William), }, [TRAINER_JOSHUA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3327,13 +2854,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Joshua), - .party = {.NoItemDefaultMoves = sParty_Joshua}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Joshua), }, [TRAINER_CAMERON_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3341,13 +2866,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cameron1), - .party = {.NoItemDefaultMoves = sParty_Cameron1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cameron1), }, [TRAINER_CAMERON_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3355,13 +2878,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cameron2), - .party = {.NoItemDefaultMoves = sParty_Cameron2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cameron2), }, [TRAINER_CAMERON_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3369,13 +2890,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cameron3), - .party = {.NoItemDefaultMoves = sParty_Cameron3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cameron3), }, [TRAINER_CAMERON_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3383,13 +2902,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cameron4), - .party = {.NoItemDefaultMoves = sParty_Cameron4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cameron4), }, [TRAINER_CAMERON_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -3397,13 +2914,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cameron5), - .party = {.NoItemDefaultMoves = sParty_Cameron5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cameron5), }, [TRAINER_JACLYN] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3411,13 +2926,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jaclyn), - .party = {.NoItemCustomMoves = sParty_Jaclyn}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jaclyn), }, [TRAINER_HANNAH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3425,13 +2938,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hannah), - .party = {.NoItemDefaultMoves = sParty_Hannah}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hannah), }, [TRAINER_SAMANTHA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3439,13 +2950,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Samantha), - .party = {.NoItemDefaultMoves = sParty_Samantha}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Samantha), }, [TRAINER_MAURA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3453,13 +2962,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maura), - .party = {.NoItemDefaultMoves = sParty_Maura}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maura), }, [TRAINER_KAYLA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3467,13 +2974,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kayla), - .party = {.NoItemDefaultMoves = sParty_Kayla}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kayla), }, [TRAINER_ALEXIS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3481,13 +2986,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alexis), - .party = {.NoItemDefaultMoves = sParty_Alexis}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alexis), }, [TRAINER_JACKI_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3495,13 +2998,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacki1), - .party = {.NoItemDefaultMoves = sParty_Jacki1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacki1), }, [TRAINER_JACKI_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3509,13 +3010,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacki2), - .party = {.NoItemDefaultMoves = sParty_Jacki2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacki2), }, [TRAINER_JACKI_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3523,13 +3022,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacki3), - .party = {.NoItemDefaultMoves = sParty_Jacki3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacki3), }, [TRAINER_JACKI_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3537,13 +3034,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacki4), - .party = {.NoItemDefaultMoves = sParty_Jacki4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacki4), }, [TRAINER_JACKI_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -3551,13 +3046,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacki5), - .party = {.NoItemDefaultMoves = sParty_Jacki5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacki5), }, [TRAINER_WALTER_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3565,13 +3058,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Walter1), - .party = {.NoItemDefaultMoves = sParty_Walter1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Walter1), }, [TRAINER_MICAH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3579,13 +3070,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Micah), - .party = {.NoItemDefaultMoves = sParty_Micah}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Micah), }, [TRAINER_THOMAS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3593,13 +3082,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thomas), - .party = {.NoItemDefaultMoves = sParty_Thomas}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thomas), }, [TRAINER_WALTER_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3607,13 +3094,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Walter2), - .party = {.NoItemDefaultMoves = sParty_Walter2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Walter2), }, [TRAINER_WALTER_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3621,13 +3106,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Walter3), - .party = {.NoItemCustomMoves = sParty_Walter3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Walter3), }, [TRAINER_WALTER_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3635,13 +3118,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Walter4), - .party = {.NoItemCustomMoves = sParty_Walter4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Walter4), }, [TRAINER_WALTER_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -3649,13 +3130,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Walter5), - .party = {.NoItemCustomMoves = sParty_Walter5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Walter5), }, [TRAINER_SIDNEY] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_ELITE_FOUR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR, .trainerPic = TRAINER_PIC_ELITE_FOUR_SIDNEY, @@ -3663,13 +3142,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Sidney), - .party = {.ItemCustomMoves = sParty_Sidney}, + .party = ITEM_CUSTOM_MOVES(sParty_Sidney), }, [TRAINER_PHOEBE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_ELITE_FOUR, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR, .trainerPic = TRAINER_PIC_ELITE_FOUR_PHOEBE, @@ -3677,13 +3154,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Phoebe), - .party = {.ItemCustomMoves = sParty_Phoebe}, + .party = ITEM_CUSTOM_MOVES(sParty_Phoebe), }, [TRAINER_GLACIA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_ELITE_FOUR, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR, .trainerPic = TRAINER_PIC_ELITE_FOUR_GLACIA, @@ -3691,13 +3166,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Glacia), - .party = {.ItemCustomMoves = sParty_Glacia}, + .party = ITEM_CUSTOM_MOVES(sParty_Glacia), }, [TRAINER_DRAKE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_ELITE_FOUR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR, .trainerPic = TRAINER_PIC_ELITE_FOUR_DRAKE, @@ -3705,13 +3178,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Drake), - .party = {.ItemCustomMoves = sParty_Drake}, + .party = ITEM_CUSTOM_MOVES(sParty_Drake), }, [TRAINER_ROXANNE_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_ROXANNE, @@ -3719,13 +3190,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_POTION, ITEM_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Roxanne1), - .party = {.ItemCustomMoves = sParty_Roxanne1}, + .party = ITEM_CUSTOM_MOVES(sParty_Roxanne1), }, [TRAINER_BRAWLY_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_BRAWLY, @@ -3733,13 +3202,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brawly1), - .party = {.ItemCustomMoves = sParty_Brawly1}, + .party = ITEM_CUSTOM_MOVES(sParty_Brawly1), }, [TRAINER_WATTSON_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_WATTSON, @@ -3747,13 +3214,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wattson1), - .party = {.ItemCustomMoves = sParty_Wattson1}, + .party = ITEM_CUSTOM_MOVES(sParty_Wattson1), }, [TRAINER_FLANNERY_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_FLANNERY, @@ -3761,13 +3226,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Flannery1), - .party = {.ItemCustomMoves = sParty_Flannery1}, + .party = ITEM_CUSTOM_MOVES(sParty_Flannery1), }, [TRAINER_NORMAN_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_NORMAN, @@ -3775,13 +3238,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Norman1), - .party = {.ItemCustomMoves = sParty_Norman1}, + .party = ITEM_CUSTOM_MOVES(sParty_Norman1), }, [TRAINER_WINONA_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_WINONA, @@ -3789,13 +3250,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_RISKY, - .partySize = ARRAY_COUNT(sParty_Winona1), - .party = {.ItemCustomMoves = sParty_Winona1}, + .party = ITEM_CUSTOM_MOVES(sParty_Winona1), }, [TRAINER_TATE_AND_LIZA_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_TATE_AND_LIZA, @@ -3803,13 +3262,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_HYPER_POTION}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TateAndLiza1), - .party = {.ItemCustomMoves = sParty_TateAndLiza1}, + .party = ITEM_CUSTOM_MOVES(sParty_TateAndLiza1), }, [TRAINER_JUAN_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_JUAN, @@ -3817,13 +3274,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Juan1), - .party = {.ItemCustomMoves = sParty_Juan1}, + .party = ITEM_CUSTOM_MOVES(sParty_Juan1), }, [TRAINER_JERRY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3831,13 +3286,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerry1), - .party = {.NoItemDefaultMoves = sParty_Jerry1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerry1), }, [TRAINER_TED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3845,13 +3298,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ted), - .party = {.NoItemDefaultMoves = sParty_Ted}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ted), }, [TRAINER_PAUL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3859,13 +3310,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Paul), - .party = {.NoItemDefaultMoves = sParty_Paul}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Paul), }, [TRAINER_JERRY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3873,13 +3322,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerry2), - .party = {.NoItemDefaultMoves = sParty_Jerry2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerry2), }, [TRAINER_JERRY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3887,13 +3334,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerry3), - .party = {.NoItemDefaultMoves = sParty_Jerry3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerry3), }, [TRAINER_JERRY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3901,13 +3346,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerry4), - .party = {.NoItemDefaultMoves = sParty_Jerry4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerry4), }, [TRAINER_JERRY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SCHOOL_KID_M, @@ -3915,13 +3358,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jerry5), - .party = {.NoItemDefaultMoves = sParty_Jerry5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jerry5), }, [TRAINER_KAREN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3929,13 +3370,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Karen1), - .party = {.NoItemDefaultMoves = sParty_Karen1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Karen1), }, [TRAINER_GEORGIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3943,13 +3382,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Georgia), - .party = {.NoItemDefaultMoves = sParty_Georgia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Georgia), }, [TRAINER_KAREN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3957,13 +3394,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Karen2), - .party = {.NoItemDefaultMoves = sParty_Karen2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Karen2), }, [TRAINER_KAREN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3971,13 +3406,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Karen3), - .party = {.NoItemDefaultMoves = sParty_Karen3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Karen3), }, [TRAINER_KAREN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3985,13 +3418,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Karen4), - .party = {.NoItemDefaultMoves = sParty_Karen4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Karen4), }, [TRAINER_KAREN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SCHOOL_KID, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_SCHOOL_KID_F, @@ -3999,13 +3430,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Karen5), - .party = {.NoItemDefaultMoves = sParty_Karen5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Karen5), }, [TRAINER_KATE_AND_JOY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4013,13 +3442,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KateAndJoy), - .party = {.NoItemCustomMoves = sParty_KateAndJoy}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_KateAndJoy), }, [TRAINER_ANNA_AND_MEG_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4027,13 +3454,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AnnaAndMeg1), - .party = {.NoItemCustomMoves = sParty_AnnaAndMeg1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AnnaAndMeg1), }, [TRAINER_ANNA_AND_MEG_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4041,13 +3466,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AnnaAndMeg2), - .party = {.NoItemCustomMoves = sParty_AnnaAndMeg2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AnnaAndMeg2), }, [TRAINER_ANNA_AND_MEG_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4055,13 +3478,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AnnaAndMeg3), - .party = {.NoItemCustomMoves = sParty_AnnaAndMeg3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AnnaAndMeg3), }, [TRAINER_ANNA_AND_MEG_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4069,13 +3490,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AnnaAndMeg4), - .party = {.NoItemCustomMoves = sParty_AnnaAndMeg4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AnnaAndMeg4), }, [TRAINER_ANNA_AND_MEG_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -4083,13 +3502,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AnnaAndMeg5), - .party = {.NoItemCustomMoves = sParty_AnnaAndMeg5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AnnaAndMeg5), }, [TRAINER_VICTOR] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_WINSTRATE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4097,13 +3514,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Victor), - .party = {.ItemDefaultMoves = sParty_Victor}, + .party = ITEM_DEFAULT_MOVES(sParty_Victor), }, [TRAINER_MIGUEL_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4111,13 +3526,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Miguel1), - .party = {.ItemDefaultMoves = sParty_Miguel1}, + .party = ITEM_DEFAULT_MOVES(sParty_Miguel1), }, [TRAINER_COLTON] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4125,13 +3538,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Colton), - .party = {.ItemCustomMoves = sParty_Colton}, + .party = ITEM_CUSTOM_MOVES(sParty_Colton), }, [TRAINER_MIGUEL_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4139,13 +3550,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Miguel2), - .party = {.ItemDefaultMoves = sParty_Miguel2}, + .party = ITEM_DEFAULT_MOVES(sParty_Miguel2), }, [TRAINER_MIGUEL_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4153,13 +3562,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Miguel3), - .party = {.ItemDefaultMoves = sParty_Miguel3}, + .party = ITEM_DEFAULT_MOVES(sParty_Miguel3), }, [TRAINER_MIGUEL_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4167,13 +3574,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Miguel4), - .party = {.ItemDefaultMoves = sParty_Miguel4}, + .party = ITEM_DEFAULT_MOVES(sParty_Miguel4), }, [TRAINER_MIGUEL_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -4181,13 +3586,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Miguel5), - .party = {.ItemDefaultMoves = sParty_Miguel5}, + .party = ITEM_DEFAULT_MOVES(sParty_Miguel5), }, [TRAINER_VICTORIA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_WINSTRATE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4195,13 +3598,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Victoria), - .party = {.ItemDefaultMoves = sParty_Victoria}, + .party = ITEM_DEFAULT_MOVES(sParty_Victoria), }, [TRAINER_VANESSA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4209,13 +3610,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Vanessa), - .party = {.ItemDefaultMoves = sParty_Vanessa}, + .party = ITEM_DEFAULT_MOVES(sParty_Vanessa), }, [TRAINER_BETHANY] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4223,13 +3622,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bethany), - .party = {.ItemDefaultMoves = sParty_Bethany}, + .party = ITEM_DEFAULT_MOVES(sParty_Bethany), }, [TRAINER_ISABEL_1] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4237,13 +3634,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabel1), - .party = {.ItemDefaultMoves = sParty_Isabel1}, + .party = ITEM_DEFAULT_MOVES(sParty_Isabel1), }, [TRAINER_ISABEL_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4251,13 +3646,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabel2), - .party = {.ItemDefaultMoves = sParty_Isabel2}, + .party = ITEM_DEFAULT_MOVES(sParty_Isabel2), }, [TRAINER_ISABEL_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4265,13 +3658,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabel3), - .party = {.ItemDefaultMoves = sParty_Isabel3}, + .party = ITEM_DEFAULT_MOVES(sParty_Isabel3), }, [TRAINER_ISABEL_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4279,13 +3670,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabel4), - .party = {.ItemDefaultMoves = sParty_Isabel4}, + .party = ITEM_DEFAULT_MOVES(sParty_Isabel4), }, [TRAINER_ISABEL_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -4293,13 +3682,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabel5), - .party = {.ItemDefaultMoves = sParty_Isabel5}, + .party = ITEM_DEFAULT_MOVES(sParty_Isabel5), }, [TRAINER_TIMOTHY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -4307,13 +3694,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Timothy1), - .party = {.NoItemDefaultMoves = sParty_Timothy1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Timothy1), }, [TRAINER_TIMOTHY_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -4321,13 +3706,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Timothy2), - .party = {.NoItemCustomMoves = sParty_Timothy2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Timothy2), }, [TRAINER_TIMOTHY_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -4335,13 +3718,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Timothy3), - .party = {.NoItemCustomMoves = sParty_Timothy3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Timothy3), }, [TRAINER_TIMOTHY_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -4349,13 +3730,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Timothy4), - .party = {.NoItemCustomMoves = sParty_Timothy4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Timothy4), }, [TRAINER_TIMOTHY_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -4363,13 +3742,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Timothy5), - .party = {.NoItemCustomMoves = sParty_Timothy5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Timothy5), }, [TRAINER_VICKY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_WINSTRATE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4377,13 +3754,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Vicky), - .party = {.NoItemCustomMoves = sParty_Vicky}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Vicky), }, [TRAINER_SHELBY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4391,13 +3766,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shelby1), - .party = {.NoItemDefaultMoves = sParty_Shelby1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shelby1), }, [TRAINER_SHELBY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4405,13 +3778,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shelby2), - .party = {.NoItemDefaultMoves = sParty_Shelby2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shelby2), }, [TRAINER_SHELBY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4419,13 +3790,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shelby3), - .party = {.NoItemDefaultMoves = sParty_Shelby3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shelby3), }, [TRAINER_SHELBY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4433,13 +3802,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shelby4), - .party = {.NoItemDefaultMoves = sParty_Shelby4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shelby4), }, [TRAINER_SHELBY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -4447,13 +3814,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Shelby5), - .party = {.NoItemDefaultMoves = sParty_Shelby5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shelby5), }, [TRAINER_CALVIN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4461,13 +3826,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Calvin1), - .party = {.NoItemDefaultMoves = sParty_Calvin1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Calvin1), }, [TRAINER_BILLY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4475,13 +3838,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Billy), - .party = {.NoItemDefaultMoves = sParty_Billy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Billy), }, [TRAINER_JOSH] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4489,13 +3850,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Josh), - .party = {.NoItemCustomMoves = sParty_Josh}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Josh), }, [TRAINER_TOMMY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4503,13 +3862,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tommy), - .party = {.NoItemDefaultMoves = sParty_Tommy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tommy), }, [TRAINER_JOEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4517,13 +3874,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Joey), - .party = {.NoItemDefaultMoves = sParty_Joey}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Joey), }, [TRAINER_BEN] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4531,13 +3886,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ben), - .party = {.NoItemCustomMoves = sParty_Ben}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Ben), }, [TRAINER_QUINCY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -4545,13 +3898,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Quincy), - .party = {.NoItemCustomMoves = sParty_Quincy}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Quincy), }, [TRAINER_KATELYNN] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -4559,13 +3910,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Katelynn), - .party = {.NoItemCustomMoves = sParty_Katelynn}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Katelynn), }, [TRAINER_JAYLEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4573,13 +3922,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jaylen), - .party = {.NoItemDefaultMoves = sParty_Jaylen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jaylen), }, [TRAINER_DILLON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4587,13 +3934,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dillon), - .party = {.NoItemDefaultMoves = sParty_Dillon}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dillon), }, [TRAINER_CALVIN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4601,13 +3946,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Calvin2), - .party = {.NoItemDefaultMoves = sParty_Calvin2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Calvin2), }, [TRAINER_CALVIN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4615,13 +3958,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Calvin3), - .party = {.NoItemDefaultMoves = sParty_Calvin3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Calvin3), }, [TRAINER_CALVIN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4629,13 +3970,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Calvin4), - .party = {.NoItemDefaultMoves = sParty_Calvin4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Calvin4), }, [TRAINER_CALVIN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4643,13 +3982,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Calvin5), - .party = {.NoItemDefaultMoves = sParty_Calvin5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Calvin5), }, [TRAINER_EDDIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4657,13 +3994,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Eddie), - .party = {.NoItemDefaultMoves = sParty_Eddie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Eddie), }, [TRAINER_ALLEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4671,13 +4006,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Allen), - .party = {.NoItemDefaultMoves = sParty_Allen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Allen), }, [TRAINER_TIMMY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -4685,13 +4018,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Timmy), - .party = {.NoItemDefaultMoves = sParty_Timmy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Timmy), }, [TRAINER_WALLACE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_CHAMPION, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CHAMPION_WALLACE, @@ -4699,13 +4030,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wallace), - .party = {.ItemCustomMoves = sParty_Wallace}, + .party = ITEM_CUSTOM_MOVES(sParty_Wallace), }, [TRAINER_ANDREW] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4713,13 +4042,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andrew), - .party = {.NoItemDefaultMoves = sParty_Andrew}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andrew), }, [TRAINER_IVAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4727,13 +4054,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ivan), - .party = {.NoItemDefaultMoves = sParty_Ivan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ivan), }, [TRAINER_CLAUDE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4741,13 +4066,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Claude), - .party = {.NoItemDefaultMoves = sParty_Claude}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Claude), }, [TRAINER_ELLIOT_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4755,13 +4078,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Elliot1), - .party = {.NoItemDefaultMoves = sParty_Elliot1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elliot1), }, [TRAINER_NED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4769,13 +4090,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ned), - .party = {.NoItemDefaultMoves = sParty_Ned}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ned), }, [TRAINER_DALE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4783,13 +4102,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dale), - .party = {.NoItemDefaultMoves = sParty_Dale}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dale), }, [TRAINER_NOLAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4797,13 +4114,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nolan), - .party = {.NoItemDefaultMoves = sParty_Nolan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nolan), }, [TRAINER_BARNY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4811,13 +4126,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Barny), - .party = {.NoItemDefaultMoves = sParty_Barny}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Barny), }, [TRAINER_WADE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4825,13 +4138,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Wade), - .party = {.NoItemDefaultMoves = sParty_Wade}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wade), }, [TRAINER_CARTER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4839,13 +4150,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Carter), - .party = {.NoItemDefaultMoves = sParty_Carter}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Carter), }, [TRAINER_ELLIOT_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4853,13 +4162,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Elliot2), - .party = {.NoItemDefaultMoves = sParty_Elliot2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elliot2), }, [TRAINER_ELLIOT_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4867,13 +4174,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Elliot3), - .party = {.NoItemDefaultMoves = sParty_Elliot3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elliot3), }, [TRAINER_ELLIOT_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4881,13 +4186,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Elliot4), - .party = {.NoItemDefaultMoves = sParty_Elliot4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elliot4), }, [TRAINER_ELLIOT_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4895,13 +4198,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Elliot5), - .party = {.NoItemDefaultMoves = sParty_Elliot5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elliot5), }, [TRAINER_RONALD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -4909,13 +4210,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ronald), - .party = {.NoItemDefaultMoves = sParty_Ronald}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ronald), }, [TRAINER_JACOB] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4923,13 +4222,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jacob), - .party = {.NoItemDefaultMoves = sParty_Jacob}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jacob), }, [TRAINER_ANTHONY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4937,13 +4234,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Anthony), - .party = {.NoItemDefaultMoves = sParty_Anthony}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Anthony), }, [TRAINER_BENJAMIN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4951,13 +4246,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benjamin1), - .party = {.NoItemDefaultMoves = sParty_Benjamin1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benjamin1), }, [TRAINER_BENJAMIN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4965,13 +4258,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benjamin2), - .party = {.NoItemDefaultMoves = sParty_Benjamin2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benjamin2), }, [TRAINER_BENJAMIN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4979,13 +4270,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benjamin3), - .party = {.NoItemDefaultMoves = sParty_Benjamin3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benjamin3), }, [TRAINER_BENJAMIN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -4993,13 +4282,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benjamin4), - .party = {.NoItemDefaultMoves = sParty_Benjamin4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benjamin4), }, [TRAINER_BENJAMIN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -5007,13 +4294,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benjamin5), - .party = {.NoItemDefaultMoves = sParty_Benjamin5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benjamin5), }, [TRAINER_ABIGAIL_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5021,13 +4306,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Abigail1), - .party = {.NoItemDefaultMoves = sParty_Abigail1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Abigail1), }, [TRAINER_JASMINE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5035,13 +4318,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jasmine), - .party = {.NoItemDefaultMoves = sParty_Jasmine}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jasmine), }, [TRAINER_ABIGAIL_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5049,13 +4330,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Abigail2), - .party = {.NoItemDefaultMoves = sParty_Abigail2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Abigail2), }, [TRAINER_ABIGAIL_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5063,13 +4342,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Abigail3), - .party = {.NoItemDefaultMoves = sParty_Abigail3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Abigail3), }, [TRAINER_ABIGAIL_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5077,13 +4354,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Abigail4), - .party = {.NoItemDefaultMoves = sParty_Abigail4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Abigail4), }, [TRAINER_ABIGAIL_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -5091,13 +4366,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Abigail5), - .party = {.NoItemDefaultMoves = sParty_Abigail5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Abigail5), }, [TRAINER_DYLAN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_M, @@ -5105,13 +4378,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dylan1), - .party = {.NoItemDefaultMoves = sParty_Dylan1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dylan1), }, [TRAINER_DYLAN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_M, @@ -5119,13 +4390,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dylan2), - .party = {.NoItemDefaultMoves = sParty_Dylan2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dylan2), }, [TRAINER_DYLAN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_M, @@ -5133,13 +4402,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dylan3), - .party = {.NoItemDefaultMoves = sParty_Dylan3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dylan3), }, [TRAINER_DYLAN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_M, @@ -5147,13 +4414,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dylan4), - .party = {.NoItemDefaultMoves = sParty_Dylan4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dylan4), }, [TRAINER_DYLAN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_M, @@ -5161,13 +4426,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dylan5), - .party = {.NoItemDefaultMoves = sParty_Dylan5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dylan5), }, [TRAINER_MARIA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -5175,13 +4438,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maria1), - .party = {.NoItemDefaultMoves = sParty_Maria1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maria1), }, [TRAINER_MARIA_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -5189,13 +4450,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maria2), - .party = {.NoItemDefaultMoves = sParty_Maria2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maria2), }, [TRAINER_MARIA_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -5203,13 +4462,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maria3), - .party = {.NoItemDefaultMoves = sParty_Maria3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maria3), }, [TRAINER_MARIA_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -5217,13 +4474,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maria4), - .party = {.NoItemDefaultMoves = sParty_Maria4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maria4), }, [TRAINER_MARIA_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -5231,13 +4486,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Maria5), - .party = {.NoItemDefaultMoves = sParty_Maria5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Maria5), }, [TRAINER_CAMDEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5245,13 +4498,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Camden), - .party = {.NoItemDefaultMoves = sParty_Camden}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Camden), }, [TRAINER_DEMETRIUS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -5259,13 +4510,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Demetrius), - .party = {.NoItemDefaultMoves = sParty_Demetrius}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Demetrius), }, [TRAINER_ISAIAH_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5273,13 +4522,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaiah1), - .party = {.NoItemDefaultMoves = sParty_Isaiah1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaiah1), }, [TRAINER_PABLO_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5287,13 +4534,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pablo1), - .party = {.NoItemDefaultMoves = sParty_Pablo1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pablo1), }, [TRAINER_CHASE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5301,13 +4546,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chase), - .party = {.NoItemDefaultMoves = sParty_Chase}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Chase), }, [TRAINER_ISAIAH_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5315,13 +4558,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaiah2), - .party = {.NoItemDefaultMoves = sParty_Isaiah2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaiah2), }, [TRAINER_ISAIAH_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5329,13 +4570,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaiah3), - .party = {.NoItemDefaultMoves = sParty_Isaiah3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaiah3), }, [TRAINER_ISAIAH_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5343,13 +4582,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaiah4), - .party = {.NoItemDefaultMoves = sParty_Isaiah4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaiah4), }, [TRAINER_ISAIAH_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -5357,13 +4594,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaiah5), - .party = {.NoItemDefaultMoves = sParty_Isaiah5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaiah5), }, [TRAINER_ISOBEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5371,13 +4606,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isobel), - .party = {.NoItemDefaultMoves = sParty_Isobel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isobel), }, [TRAINER_DONNY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5385,13 +4618,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Donny), - .party = {.NoItemDefaultMoves = sParty_Donny}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Donny), }, [TRAINER_TALIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5399,13 +4630,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Talia), - .party = {.NoItemDefaultMoves = sParty_Talia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Talia), }, [TRAINER_KATELYN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5413,13 +4642,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katelyn1), - .party = {.NoItemDefaultMoves = sParty_Katelyn1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katelyn1), }, [TRAINER_ALLISON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5427,13 +4654,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Allison), - .party = {.NoItemDefaultMoves = sParty_Allison}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Allison), }, [TRAINER_KATELYN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5441,13 +4666,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katelyn2), - .party = {.NoItemDefaultMoves = sParty_Katelyn2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katelyn2), }, [TRAINER_KATELYN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5455,13 +4678,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katelyn3), - .party = {.NoItemDefaultMoves = sParty_Katelyn3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katelyn3), }, [TRAINER_KATELYN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5469,13 +4690,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katelyn4), - .party = {.NoItemDefaultMoves = sParty_Katelyn4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katelyn4), }, [TRAINER_KATELYN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -5483,13 +4702,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katelyn5), - .party = {.NoItemDefaultMoves = sParty_Katelyn5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katelyn5), }, [TRAINER_NICOLAS_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5497,13 +4714,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicolas1), - .party = {.NoItemDefaultMoves = sParty_Nicolas1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nicolas1), }, [TRAINER_NICOLAS_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5511,13 +4726,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicolas2), - .party = {.NoItemDefaultMoves = sParty_Nicolas2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nicolas2), }, [TRAINER_NICOLAS_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5525,13 +4738,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicolas3), - .party = {.NoItemDefaultMoves = sParty_Nicolas3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nicolas3), }, [TRAINER_NICOLAS_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5539,13 +4750,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicolas4), - .party = {.NoItemDefaultMoves = sParty_Nicolas4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nicolas4), }, [TRAINER_NICOLAS_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5553,13 +4762,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicolas5), - .party = {.ItemDefaultMoves = sParty_Nicolas5}, + .party = ITEM_DEFAULT_MOVES(sParty_Nicolas5), }, [TRAINER_AARON] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_DRAGON_TAMER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_DRAGON_TAMER, @@ -5567,13 +4774,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Aaron), - .party = {.NoItemCustomMoves = sParty_Aaron}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Aaron), }, [TRAINER_PERRY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5581,13 +4786,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Perry), - .party = {.NoItemDefaultMoves = sParty_Perry}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Perry), }, [TRAINER_HUGH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5595,13 +4798,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hugh), - .party = {.NoItemDefaultMoves = sParty_Hugh}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hugh), }, [TRAINER_PHIL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5609,13 +4810,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Phil), - .party = {.NoItemDefaultMoves = sParty_Phil}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Phil), }, [TRAINER_JARED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5623,13 +4822,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jared), - .party = {.NoItemDefaultMoves = sParty_Jared}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jared), }, [TRAINER_HUMBERTO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5637,13 +4834,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Humberto), - .party = {.NoItemDefaultMoves = sParty_Humberto}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Humberto), }, [TRAINER_PRESLEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5651,13 +4846,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Presley), - .party = {.NoItemDefaultMoves = sParty_Presley}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Presley), }, [TRAINER_EDWARDO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5665,13 +4858,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwardo), - .party = {.NoItemDefaultMoves = sParty_Edwardo}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwardo), }, [TRAINER_COLIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5679,13 +4870,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Colin), - .party = {.NoItemDefaultMoves = sParty_Colin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Colin), }, [TRAINER_ROBERT_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5693,13 +4882,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robert1), - .party = {.NoItemDefaultMoves = sParty_Robert1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robert1), }, [TRAINER_BENNY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5707,13 +4894,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Benny), - .party = {.NoItemDefaultMoves = sParty_Benny}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Benny), }, [TRAINER_CHESTER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5721,13 +4906,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chester), - .party = {.NoItemDefaultMoves = sParty_Chester}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Chester), }, [TRAINER_ROBERT_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5735,13 +4918,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robert2), - .party = {.NoItemDefaultMoves = sParty_Robert2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robert2), }, [TRAINER_ROBERT_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5749,13 +4930,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robert3), - .party = {.NoItemDefaultMoves = sParty_Robert3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robert3), }, [TRAINER_ROBERT_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5763,13 +4942,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robert4), - .party = {.NoItemDefaultMoves = sParty_Robert4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robert4), }, [TRAINER_ROBERT_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5777,13 +4954,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robert5), - .party = {.NoItemDefaultMoves = sParty_Robert5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robert5), }, [TRAINER_ALEX] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5791,13 +4966,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alex), - .party = {.NoItemDefaultMoves = sParty_Alex}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alex), }, [TRAINER_BECK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -5805,13 +4978,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Beck), - .party = {.NoItemDefaultMoves = sParty_Beck}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Beck), }, [TRAINER_YASU] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5819,13 +4990,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Yasu), - .party = {.NoItemDefaultMoves = sParty_Yasu}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Yasu), }, [TRAINER_TAKASHI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5833,13 +5002,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Takashi), - .party = {.NoItemDefaultMoves = sParty_Takashi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Takashi), }, [TRAINER_DIANNE] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -5847,13 +5014,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Dianne), - .party = {.ItemCustomMoves = sParty_Dianne}, + .party = ITEM_CUSTOM_MOVES(sParty_Dianne), }, [TRAINER_JANI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -5861,13 +5026,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Jani), - .party = {.NoItemDefaultMoves = sParty_Jani}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jani), }, [TRAINER_LAO_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5875,13 +5038,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lao1), - .party = {.NoItemCustomMoves = sParty_Lao1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Lao1), }, [TRAINER_LUNG] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5889,13 +5050,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lung), - .party = {.NoItemDefaultMoves = sParty_Lung}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lung), }, [TRAINER_LAO_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5903,13 +5062,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lao2), - .party = {.NoItemCustomMoves = sParty_Lao2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Lao2), }, [TRAINER_LAO_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5917,13 +5074,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lao3), - .party = {.NoItemCustomMoves = sParty_Lao3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Lao3), }, [TRAINER_LAO_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5931,13 +5086,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lao4), - .party = {.NoItemCustomMoves = sParty_Lao4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Lao4), }, [TRAINER_LAO_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -5945,13 +5098,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Lao5), - .party = {.ItemCustomMoves = sParty_Lao5}, + .party = ITEM_CUSTOM_MOVES(sParty_Lao5), }, [TRAINER_JOCELYN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -5959,13 +5110,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jocelyn), - .party = {.NoItemDefaultMoves = sParty_Jocelyn}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jocelyn), }, [TRAINER_LAURA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -5973,13 +5122,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Laura), - .party = {.NoItemDefaultMoves = sParty_Laura}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Laura), }, [TRAINER_CYNDY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -5987,13 +5134,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cyndy1), - .party = {.NoItemDefaultMoves = sParty_Cyndy1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cyndy1), }, [TRAINER_CORA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6001,13 +5146,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cora), - .party = {.NoItemDefaultMoves = sParty_Cora}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cora), }, [TRAINER_PAULA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6015,13 +5158,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Paula), - .party = {.NoItemDefaultMoves = sParty_Paula}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Paula), }, [TRAINER_CYNDY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6029,13 +5170,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cyndy2), - .party = {.NoItemDefaultMoves = sParty_Cyndy2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cyndy2), }, [TRAINER_CYNDY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6043,13 +5182,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cyndy3), - .party = {.NoItemDefaultMoves = sParty_Cyndy3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cyndy3), }, [TRAINER_CYNDY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6057,13 +5194,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cyndy4), - .party = {.NoItemDefaultMoves = sParty_Cyndy4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cyndy4), }, [TRAINER_CYNDY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -6071,13 +5206,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cyndy5), - .party = {.NoItemDefaultMoves = sParty_Cyndy5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cyndy5), }, [TRAINER_MADELINE_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6085,13 +5218,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Madeline1), - .party = {.NoItemCustomMoves = sParty_Madeline1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Madeline1), }, [TRAINER_CLARISSA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6099,13 +5230,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Clarissa), - .party = {.NoItemDefaultMoves = sParty_Clarissa}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Clarissa), }, [TRAINER_ANGELICA] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6113,13 +5242,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Angelica), - .party = {.NoItemCustomMoves = sParty_Angelica}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Angelica), }, [TRAINER_MADELINE_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6127,13 +5254,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Madeline2), - .party = {.NoItemCustomMoves = sParty_Madeline2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Madeline2), }, [TRAINER_MADELINE_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6141,13 +5266,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Madeline3), - .party = {.NoItemCustomMoves = sParty_Madeline3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Madeline3), }, [TRAINER_MADELINE_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6155,13 +5278,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Madeline4), - .party = {.NoItemCustomMoves = sParty_Madeline4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Madeline4), }, [TRAINER_MADELINE_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -6169,13 +5290,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Madeline5), - .party = {.NoItemCustomMoves = sParty_Madeline5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Madeline5), }, [TRAINER_BEVERLY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6183,13 +5302,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Beverly), - .party = {.NoItemDefaultMoves = sParty_Beverly}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Beverly), }, [TRAINER_IMANI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6197,13 +5314,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Imani), - .party = {.NoItemDefaultMoves = sParty_Imani}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Imani), }, [TRAINER_KYLA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6211,13 +5326,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kyla), - .party = {.NoItemDefaultMoves = sParty_Kyla}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kyla), }, [TRAINER_DENISE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6225,13 +5338,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Denise), - .party = {.NoItemDefaultMoves = sParty_Denise}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Denise), }, [TRAINER_BETH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6239,13 +5350,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Beth), - .party = {.NoItemDefaultMoves = sParty_Beth}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Beth), }, [TRAINER_TARA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6253,13 +5362,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tara), - .party = {.NoItemDefaultMoves = sParty_Tara}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tara), }, [TRAINER_MISSY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6267,13 +5374,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Missy), - .party = {.NoItemDefaultMoves = sParty_Missy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Missy), }, [TRAINER_ALICE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6281,13 +5386,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alice), - .party = {.NoItemDefaultMoves = sParty_Alice}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alice), }, [TRAINER_JENNY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6295,13 +5398,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jenny1), - .party = {.NoItemDefaultMoves = sParty_Jenny1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenny1), }, [TRAINER_GRACE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6309,13 +5410,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Grace), - .party = {.NoItemDefaultMoves = sParty_Grace}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Grace), }, [TRAINER_TANYA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6323,13 +5422,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tanya), - .party = {.NoItemDefaultMoves = sParty_Tanya}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tanya), }, [TRAINER_SHARON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6337,13 +5434,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sharon), - .party = {.NoItemDefaultMoves = sParty_Sharon}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sharon), }, [TRAINER_NIKKI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6351,13 +5446,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nikki), - .party = {.NoItemDefaultMoves = sParty_Nikki}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nikki), }, [TRAINER_BRENDA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6365,13 +5458,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brenda), - .party = {.NoItemDefaultMoves = sParty_Brenda}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brenda), }, [TRAINER_KATIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6379,13 +5470,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Katie), - .party = {.NoItemDefaultMoves = sParty_Katie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Katie), }, [TRAINER_SUSIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6393,13 +5482,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Susie), - .party = {.NoItemDefaultMoves = sParty_Susie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Susie), }, [TRAINER_KARA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6407,13 +5494,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kara), - .party = {.NoItemDefaultMoves = sParty_Kara}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kara), }, [TRAINER_DANA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6421,13 +5506,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dana), - .party = {.NoItemDefaultMoves = sParty_Dana}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dana), }, [TRAINER_SIENNA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6435,13 +5518,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sienna), - .party = {.NoItemDefaultMoves = sParty_Sienna}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sienna), }, [TRAINER_DEBRA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6449,13 +5530,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Debra), - .party = {.NoItemDefaultMoves = sParty_Debra}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Debra), }, [TRAINER_LINDA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6463,13 +5542,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Linda), - .party = {.NoItemDefaultMoves = sParty_Linda}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Linda), }, [TRAINER_KAYLEE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6477,13 +5554,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kaylee), - .party = {.NoItemDefaultMoves = sParty_Kaylee}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kaylee), }, [TRAINER_LAUREL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6491,13 +5566,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Laurel), - .party = {.NoItemDefaultMoves = sParty_Laurel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Laurel), }, [TRAINER_CARLEE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6505,13 +5578,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Carlee), - .party = {.NoItemDefaultMoves = sParty_Carlee}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Carlee), }, [TRAINER_JENNY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6519,13 +5590,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jenny2), - .party = {.NoItemDefaultMoves = sParty_Jenny2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenny2), }, [TRAINER_JENNY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6533,13 +5602,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jenny3), - .party = {.NoItemDefaultMoves = sParty_Jenny3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenny3), }, [TRAINER_JENNY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6547,13 +5614,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jenny4), - .party = {.NoItemDefaultMoves = sParty_Jenny4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenny4), }, [TRAINER_JENNY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -6561,13 +5626,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jenny5), - .party = {.NoItemDefaultMoves = sParty_Jenny5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenny5), }, [TRAINER_HEIDI] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6575,13 +5638,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Heidi), - .party = {.NoItemCustomMoves = sParty_Heidi}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Heidi), }, [TRAINER_BECKY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6589,13 +5650,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Becky), - .party = {.NoItemCustomMoves = sParty_Becky}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Becky), }, [TRAINER_CAROL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6603,13 +5662,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Carol), - .party = {.NoItemDefaultMoves = sParty_Carol}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Carol), }, [TRAINER_NANCY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6617,13 +5674,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nancy), - .party = {.NoItemDefaultMoves = sParty_Nancy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nancy), }, [TRAINER_MARTHA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6631,13 +5686,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Martha), - .party = {.NoItemDefaultMoves = sParty_Martha}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Martha), }, [TRAINER_DIANA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6645,13 +5698,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Diana1), - .party = {.NoItemDefaultMoves = sParty_Diana1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Diana1), }, [TRAINER_CEDRIC] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -6659,13 +5710,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cedric), - .party = {.NoItemCustomMoves = sParty_Cedric}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Cedric), }, [TRAINER_IRENE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6673,13 +5722,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Irene), - .party = {.NoItemDefaultMoves = sParty_Irene}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Irene), }, [TRAINER_DIANA_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6687,13 +5734,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Diana2), - .party = {.NoItemDefaultMoves = sParty_Diana2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Diana2), }, [TRAINER_DIANA_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6701,13 +5746,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Diana3), - .party = {.NoItemDefaultMoves = sParty_Diana3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Diana3), }, [TRAINER_DIANA_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6715,13 +5758,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Diana4), - .party = {.NoItemDefaultMoves = sParty_Diana4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Diana4), }, [TRAINER_DIANA_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -6729,13 +5770,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Diana5), - .party = {.NoItemDefaultMoves = sParty_Diana5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Diana5), }, [TRAINER_AMY_AND_LIV_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6743,13 +5782,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv1), - .party = {.NoItemDefaultMoves = sParty_AmyAndLiv1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_AmyAndLiv1), }, [TRAINER_AMY_AND_LIV_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6757,13 +5794,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv2), - .party = {.NoItemDefaultMoves = sParty_AmyAndLiv2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_AmyAndLiv2), }, [TRAINER_GINA_AND_MIA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6771,13 +5806,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GinaAndMia1), - .party = {.NoItemDefaultMoves = sParty_GinaAndMia1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GinaAndMia1), }, [TRAINER_MIU_AND_YUKI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6785,13 +5818,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_MiuAndYuki), - .party = {.NoItemDefaultMoves = sParty_MiuAndYuki}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MiuAndYuki), }, [TRAINER_AMY_AND_LIV_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6799,13 +5830,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv3), - .party = {.NoItemDefaultMoves = sParty_AmyAndLiv3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_AmyAndLiv3), }, [TRAINER_GINA_AND_MIA_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6813,13 +5842,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GinaAndMia2), - .party = {.NoItemCustomMoves = sParty_GinaAndMia2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_GinaAndMia2), }, [TRAINER_AMY_AND_LIV_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6827,13 +5854,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv4), - .party = {.NoItemDefaultMoves = sParty_AmyAndLiv4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_AmyAndLiv4), }, [TRAINER_AMY_AND_LIV_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6841,13 +5866,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv5), - .party = {.NoItemCustomMoves = sParty_AmyAndLiv5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AmyAndLiv5), }, [TRAINER_AMY_AND_LIV_6] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -6855,13 +5878,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_AmyAndLiv6), - .party = {.NoItemCustomMoves = sParty_AmyAndLiv6}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_AmyAndLiv6), }, [TRAINER_HUEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6869,13 +5890,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Huey), - .party = {.NoItemDefaultMoves = sParty_Huey}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Huey), }, [TRAINER_EDMOND] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6883,13 +5902,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edmond), - .party = {.NoItemDefaultMoves = sParty_Edmond}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edmond), }, [TRAINER_ERNEST_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6897,13 +5914,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ernest1), - .party = {.NoItemDefaultMoves = sParty_Ernest1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ernest1), }, [TRAINER_DWAYNE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6911,13 +5926,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dwayne), - .party = {.NoItemDefaultMoves = sParty_Dwayne}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dwayne), }, [TRAINER_PHILLIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6925,13 +5938,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Phillip), - .party = {.NoItemDefaultMoves = sParty_Phillip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Phillip), }, [TRAINER_LEONARD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6939,13 +5950,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Leonard), - .party = {.NoItemDefaultMoves = sParty_Leonard}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Leonard), }, [TRAINER_DUNCAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6953,13 +5962,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Duncan), - .party = {.NoItemDefaultMoves = sParty_Duncan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Duncan), }, [TRAINER_ERNEST_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6967,13 +5974,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ernest2), - .party = {.NoItemDefaultMoves = sParty_Ernest2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ernest2), }, [TRAINER_ERNEST_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6981,13 +5986,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ernest3), - .party = {.NoItemDefaultMoves = sParty_Ernest3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ernest3), }, [TRAINER_ERNEST_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -6995,13 +5998,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ernest4), - .party = {.NoItemDefaultMoves = sParty_Ernest4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ernest4), }, [TRAINER_ERNEST_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -7009,13 +6010,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ernest5), - .party = {.NoItemDefaultMoves = sParty_Ernest5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ernest5), }, [TRAINER_ELI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -7023,13 +6022,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Eli), - .party = {.NoItemDefaultMoves = sParty_Eli}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Eli), }, [TRAINER_ANNIKA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_F, @@ -7037,13 +6034,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Annika), - .party = {.ItemCustomMoves = sParty_Annika}, + .party = ITEM_CUSTOM_MOVES(sParty_Annika), }, [TRAINER_JAZMYN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER_2, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -7051,13 +6046,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jazmyn), - .party = {.NoItemDefaultMoves = sParty_Jazmyn}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jazmyn), }, [TRAINER_JONAS] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -7065,13 +6058,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jonas), - .party = {.NoItemCustomMoves = sParty_Jonas}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Jonas), }, [TRAINER_KAYLEY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -7079,13 +6070,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kayley), - .party = {.NoItemCustomMoves = sParty_Kayley}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Kayley), }, [TRAINER_AURON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -7093,13 +6082,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Auron), - .party = {.NoItemDefaultMoves = sParty_Auron}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Auron), }, [TRAINER_KELVIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -7107,13 +6094,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kelvin), - .party = {.NoItemDefaultMoves = sParty_Kelvin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kelvin), }, [TRAINER_MARLEY] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -7121,13 +6106,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Marley), - .party = {.ItemCustomMoves = sParty_Marley}, + .party = ITEM_CUSTOM_MOVES(sParty_Marley), }, [TRAINER_REYNA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -7135,13 +6118,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Reyna), - .party = {.NoItemDefaultMoves = sParty_Reyna}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Reyna), }, [TRAINER_HUDSON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -7149,13 +6130,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hudson), - .party = {.NoItemDefaultMoves = sParty_Hudson}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hudson), }, [TRAINER_CONOR] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -7163,13 +6142,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Conor), - .party = {.NoItemDefaultMoves = sParty_Conor}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Conor), }, [TRAINER_EDWIN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7177,13 +6154,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwin1), - .party = {.NoItemDefaultMoves = sParty_Edwin1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwin1), }, [TRAINER_HECTOR] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7191,13 +6166,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hector), - .party = {.NoItemDefaultMoves = sParty_Hector}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hector), }, [TRAINER_TABITHA_MOSSDEEP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_ADMIN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_ADMIN, @@ -7205,13 +6178,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_TabithaMossdeep), - .party = {.NoItemDefaultMoves = sParty_TabithaMossdeep}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_TabithaMossdeep), }, [TRAINER_EDWIN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7219,13 +6190,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwin2), - .party = {.NoItemDefaultMoves = sParty_Edwin2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwin2), }, [TRAINER_EDWIN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7233,13 +6202,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwin3), - .party = {.NoItemDefaultMoves = sParty_Edwin3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwin3), }, [TRAINER_EDWIN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7247,13 +6214,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwin4), - .party = {.NoItemDefaultMoves = sParty_Edwin4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwin4), }, [TRAINER_EDWIN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COLLECTOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_COLLECTOR, @@ -7261,13 +6226,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Edwin5), - .party = {.NoItemDefaultMoves = sParty_Edwin5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Edwin5), }, [TRAINER_WALLY_VR_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -7275,13 +6238,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyVR1), - .party = {.NoItemCustomMoves = sParty_WallyVR1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_WallyVR1), }, [TRAINER_BRENDAN_ROUTE_103_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7289,13 +6250,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute103Mudkip), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute103Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute103Mudkip), }, [TRAINER_BRENDAN_ROUTE_110_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7303,13 +6262,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute110Mudkip), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute110Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute110Mudkip), }, [TRAINER_BRENDAN_ROUTE_119_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7317,13 +6274,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute119Mudkip), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute119Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute119Mudkip), }, [TRAINER_BRENDAN_ROUTE_103_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7331,13 +6286,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_BrendanRoute103Treecko), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute103Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute103Treecko), }, [TRAINER_BRENDAN_ROUTE_110_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7345,13 +6298,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute110Treecko), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute110Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute110Treecko), }, [TRAINER_BRENDAN_ROUTE_119_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7359,13 +6310,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute119Treecko), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute119Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute119Treecko), }, [TRAINER_BRENDAN_ROUTE_103_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7373,13 +6322,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute103Torchic), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute103Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute103Torchic), }, [TRAINER_BRENDAN_ROUTE_110_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7387,13 +6334,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute110Torchic), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute110Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute110Torchic), }, [TRAINER_BRENDAN_ROUTE_119_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -7401,13 +6346,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRoute119Torchic), - .party = {.NoItemDefaultMoves = sParty_BrendanRoute119Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRoute119Torchic), }, [TRAINER_MAY_ROUTE_103_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7415,13 +6358,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute103Mudkip), - .party = {.NoItemDefaultMoves = sParty_MayRoute103Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute103Mudkip), }, [TRAINER_MAY_ROUTE_110_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7429,13 +6370,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute110Mudkip), - .party = {.NoItemDefaultMoves = sParty_MayRoute110Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute110Mudkip), }, [TRAINER_MAY_ROUTE_119_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7443,13 +6382,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute119Mudkip), - .party = {.NoItemDefaultMoves = sParty_MayRoute119Mudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute119Mudkip), }, [TRAINER_MAY_ROUTE_103_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7457,13 +6394,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute103Treecko), - .party = {.NoItemDefaultMoves = sParty_MayRoute103Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute103Treecko), }, [TRAINER_MAY_ROUTE_110_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7471,13 +6406,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute110Treecko), - .party = {.NoItemDefaultMoves = sParty_MayRoute110Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute110Treecko), }, [TRAINER_MAY_ROUTE_119_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7485,13 +6418,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute119Treecko), - .party = {.NoItemDefaultMoves = sParty_MayRoute119Treecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute119Treecko), }, [TRAINER_MAY_ROUTE_103_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7499,13 +6430,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute103Torchic), - .party = {.NoItemDefaultMoves = sParty_MayRoute103Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute103Torchic), }, [TRAINER_MAY_ROUTE_110_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7513,13 +6442,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute110Torchic), - .party = {.NoItemDefaultMoves = sParty_MayRoute110Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute110Torchic), }, [TRAINER_MAY_ROUTE_119_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -7527,13 +6454,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRoute119Torchic), - .party = {.NoItemDefaultMoves = sParty_MayRoute119Torchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRoute119Torchic), }, [TRAINER_ISAAC_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -7541,13 +6466,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaac1), - .party = {.NoItemDefaultMoves = sParty_Isaac1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaac1), }, [TRAINER_DAVIS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -7555,13 +6478,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Davis), - .party = {.NoItemDefaultMoves = sParty_Davis}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Davis), }, [TRAINER_MITCHELL] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -7569,13 +6490,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Mitchell), - .party = {.NoItemCustomMoves = sParty_Mitchell}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Mitchell), }, [TRAINER_ISAAC_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -7583,13 +6502,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaac2), - .party = {.NoItemDefaultMoves = sParty_Isaac2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaac2), }, [TRAINER_ISAAC_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -7597,13 +6514,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaac3), - .party = {.NoItemDefaultMoves = sParty_Isaac3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaac3), }, [TRAINER_ISAAC_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -7611,13 +6526,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaac4), - .party = {.NoItemDefaultMoves = sParty_Isaac4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaac4), }, [TRAINER_ISAAC_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -7625,13 +6538,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isaac5), - .party = {.NoItemDefaultMoves = sParty_Isaac5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isaac5), }, [TRAINER_LYDIA_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -7639,13 +6550,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lydia1), - .party = {.NoItemDefaultMoves = sParty_Lydia1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lydia1), }, [TRAINER_HALLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -7653,13 +6562,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Halle), - .party = {.NoItemDefaultMoves = sParty_Halle}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Halle), }, [TRAINER_GARRISON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -7667,13 +6574,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Garrison), - .party = {.NoItemDefaultMoves = sParty_Garrison}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Garrison), }, [TRAINER_LYDIA_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -7681,13 +6586,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lydia2), - .party = {.NoItemDefaultMoves = sParty_Lydia2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lydia2), }, [TRAINER_LYDIA_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -7695,13 +6598,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lydia3), - .party = {.NoItemDefaultMoves = sParty_Lydia3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lydia3), }, [TRAINER_LYDIA_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -7709,13 +6610,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lydia4), - .party = {.NoItemDefaultMoves = sParty_Lydia4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lydia4), }, [TRAINER_LYDIA_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -7723,13 +6622,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lydia5), - .party = {.NoItemDefaultMoves = sParty_Lydia5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lydia5), }, [TRAINER_JACKSON_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7737,13 +6634,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jackson1), - .party = {.NoItemDefaultMoves = sParty_Jackson1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jackson1), }, [TRAINER_LORENZO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7751,13 +6646,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Lorenzo), - .party = {.NoItemDefaultMoves = sParty_Lorenzo}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lorenzo), }, [TRAINER_SEBASTIAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7765,13 +6658,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sebastian), - .party = {.NoItemDefaultMoves = sParty_Sebastian}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sebastian), }, [TRAINER_JACKSON_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7779,13 +6670,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Jackson2), - .party = {.NoItemDefaultMoves = sParty_Jackson2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jackson2), }, [TRAINER_JACKSON_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7793,13 +6682,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jackson3), - .party = {.NoItemDefaultMoves = sParty_Jackson3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jackson3), }, [TRAINER_JACKSON_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7807,13 +6694,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Jackson4), - .party = {.NoItemDefaultMoves = sParty_Jackson4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jackson4), }, [TRAINER_JACKSON_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_M, @@ -7821,13 +6706,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Jackson5), - .party = {.NoItemDefaultMoves = sParty_Jackson5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jackson5), }, [TRAINER_CATHERINE_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7835,13 +6718,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Catherine1), - .party = {.NoItemDefaultMoves = sParty_Catherine1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Catherine1), }, [TRAINER_JENNA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7849,13 +6730,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Jenna), - .party = {.NoItemDefaultMoves = sParty_Jenna}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jenna), }, [TRAINER_SOPHIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7863,13 +6742,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sophia), - .party = {.NoItemDefaultMoves = sParty_Sophia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sophia), }, [TRAINER_CATHERINE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7877,13 +6754,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Catherine2), - .party = {.NoItemDefaultMoves = sParty_Catherine2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Catherine2), }, [TRAINER_CATHERINE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7891,13 +6766,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Catherine3), - .party = {.NoItemDefaultMoves = sParty_Catherine3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Catherine3), }, [TRAINER_CATHERINE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7905,13 +6778,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Catherine4), - .party = {.NoItemDefaultMoves = sParty_Catherine4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Catherine4), }, [TRAINER_CATHERINE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_RANGER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_POKEMON_RANGER_F, @@ -7919,13 +6790,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Catherine5), - .party = {.NoItemDefaultMoves = sParty_Catherine5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Catherine5), }, [TRAINER_JULIO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_M, @@ -7933,13 +6802,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Julio), - .party = {.NoItemDefaultMoves = sParty_Julio}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Julio), }, [TRAINER_GRUNT_SEAFLOOR_CAVERN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_M, @@ -7947,13 +6814,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSeafloorCavern5), - .party = {.NoItemDefaultMoves = sParty_GruntSeafloorCavern5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSeafloorCavern5), }, [TRAINER_GRUNT_UNUSED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -7961,13 +6826,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntUnused), - .party = {.NoItemDefaultMoves = sParty_GruntUnused}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntUnused), }, [TRAINER_GRUNT_MT_PYRE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -7975,13 +6838,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtPyre4), - .party = {.NoItemDefaultMoves = sParty_GruntMtPyre4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtPyre4), }, [TRAINER_GRUNT_JAGGED_PASS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -7989,13 +6850,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntJaggedPass), - .party = {.NoItemDefaultMoves = sParty_GruntJaggedPass}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntJaggedPass), }, [TRAINER_MARC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8003,13 +6862,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Marc), - .party = {.NoItemDefaultMoves = sParty_Marc}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Marc), }, [TRAINER_BRENDEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -8017,13 +6874,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brenden), - .party = {.NoItemDefaultMoves = sParty_Brenden}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brenden), }, [TRAINER_LILITH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -8031,13 +6886,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lilith), - .party = {.NoItemDefaultMoves = sParty_Lilith}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lilith), }, [TRAINER_CRISTIAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -8045,13 +6898,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cristian), - .party = {.NoItemDefaultMoves = sParty_Cristian}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristian), }, [TRAINER_SYLVIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -8059,13 +6910,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sylvia), - .party = {.NoItemDefaultMoves = sParty_Sylvia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sylvia), }, [TRAINER_LEONARDO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -8073,13 +6922,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Leonardo), - .party = {.NoItemDefaultMoves = sParty_Leonardo}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Leonardo), }, [TRAINER_ATHENA] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -8087,13 +6934,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Athena), - .party = {.ItemCustomMoves = sParty_Athena}, + .party = ITEM_CUSTOM_MOVES(sParty_Athena), }, [TRAINER_HARRISON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -8101,13 +6946,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Harrison), - .party = {.NoItemDefaultMoves = sParty_Harrison}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Harrison), }, [TRAINER_GRUNT_MT_CHIMNEY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -8115,13 +6958,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMtChimney2), - .party = {.NoItemDefaultMoves = sParty_GruntMtChimney2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMtChimney2), }, [TRAINER_CLARENCE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -8129,13 +6970,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Clarence), - .party = {.NoItemDefaultMoves = sParty_Clarence}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Clarence), }, [TRAINER_TERRY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -8143,13 +6982,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Terry), - .party = {.NoItemDefaultMoves = sParty_Terry}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Terry), }, [TRAINER_NATE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -8157,13 +6994,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nate), - .party = {.NoItemDefaultMoves = sParty_Nate}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nate), }, [TRAINER_KATHLEEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HEX_MANIAC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_HEX_MANIAC, @@ -8171,13 +7006,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kathleen), - .party = {.NoItemDefaultMoves = sParty_Kathleen}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kathleen), }, [TRAINER_CLIFFORD] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -8185,13 +7018,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Clifford), - .party = {.NoItemDefaultMoves = sParty_Clifford}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Clifford), }, [TRAINER_NICHOLAS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -8199,13 +7030,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Nicholas), - .party = {.NoItemDefaultMoves = sParty_Nicholas}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Nicholas), }, [TRAINER_GRUNT_SPACE_CENTER_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_F, @@ -8213,13 +7042,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter3), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter3), }, [TRAINER_GRUNT_SPACE_CENTER_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -8227,13 +7054,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter4), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter4), }, [TRAINER_GRUNT_SPACE_CENTER_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -8241,13 +7066,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter5), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter5), }, [TRAINER_GRUNT_SPACE_CENTER_6] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -8255,13 +7078,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter6), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter6}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter6), }, [TRAINER_GRUNT_SPACE_CENTER_7] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -8269,13 +7090,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntSpaceCenter7), - .party = {.NoItemDefaultMoves = sParty_GruntSpaceCenter7}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntSpaceCenter7), }, [TRAINER_MACEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -8283,13 +7102,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Macey), - .party = {.NoItemDefaultMoves = sParty_Macey}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Macey), }, [TRAINER_BRENDAN_RUSTBORO_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -8297,13 +7114,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_BrendanRustboroTreecko), - .party = {.NoItemDefaultMoves = sParty_BrendanRustboroTreecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRustboroTreecko), }, [TRAINER_BRENDAN_RUSTBORO_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -8311,13 +7126,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_BrendanRustboroMudkip), - .party = {.NoItemDefaultMoves = sParty_BrendanRustboroMudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRustboroMudkip), }, [TRAINER_PAXTON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_M, @@ -8325,13 +7138,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Paxton), - .party = {.NoItemDefaultMoves = sParty_Paxton}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Paxton), }, [TRAINER_ISABELLA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_F, @@ -8339,13 +7150,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabella), - .party = {.NoItemDefaultMoves = sParty_Isabella}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isabella), }, [TRAINER_GRUNT_WEATHER_INST_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_AQUA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_AQUA, .trainerPic = TRAINER_PIC_AQUA_GRUNT_F, @@ -8353,13 +7162,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntWeatherInst5), - .party = {.NoItemDefaultMoves = sParty_GruntWeatherInst5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntWeatherInst5), }, [TRAINER_TABITHA_MT_CHIMNEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_ADMIN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_ADMIN, @@ -8367,13 +7174,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TabithaMtChimney), - .party = {.NoItemDefaultMoves = sParty_TabithaMtChimney}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_TabithaMtChimney), }, [TRAINER_JONATHAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -8381,13 +7186,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_Jonathan), - .party = {.NoItemDefaultMoves = sParty_Jonathan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jonathan), }, [TRAINER_BRENDAN_RUSTBORO_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -8395,13 +7198,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanRustboroTorchic), - .party = {.NoItemDefaultMoves = sParty_BrendanRustboroTorchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanRustboroTorchic), }, [TRAINER_MAY_RUSTBORO_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -8409,13 +7210,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_MayRustboroMudkip), - .party = {.NoItemDefaultMoves = sParty_MayRustboroMudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRustboroMudkip), }, [TRAINER_MAXIE_MAGMA_HIDEOUT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_LEADER_MAXIE, @@ -8423,13 +7222,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MaxieMagmaHideout), - .party = {.NoItemDefaultMoves = sParty_MaxieMagmaHideout}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MaxieMagmaHideout), }, [TRAINER_MAXIE_MT_CHIMNEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_LEADER_MAXIE, @@ -8437,13 +7234,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_SUPER_POTION, ITEM_SUPER_POTION, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MaxieMtChimney), - .party = {.NoItemDefaultMoves = sParty_MaxieMtChimney}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MaxieMtChimney), }, [TRAINER_TIANA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8451,13 +7246,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tiana), - .party = {.NoItemDefaultMoves = sParty_Tiana}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tiana), }, [TRAINER_HALEY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8465,13 +7258,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Haley1), - .party = {.NoItemDefaultMoves = sParty_Haley1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Haley1), }, [TRAINER_JANICE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8479,13 +7270,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Janice), - .party = {.NoItemDefaultMoves = sParty_Janice}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Janice), }, [TRAINER_VIVI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_WINSTRATE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8493,13 +7282,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Vivi), - .party = {.NoItemDefaultMoves = sParty_Vivi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Vivi), }, [TRAINER_HALEY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8507,13 +7294,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Haley2), - .party = {.NoItemDefaultMoves = sParty_Haley2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Haley2), }, [TRAINER_HALEY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8521,13 +7306,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Haley3), - .party = {.NoItemDefaultMoves = sParty_Haley3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Haley3), }, [TRAINER_HALEY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8535,13 +7318,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Haley4), - .party = {.NoItemDefaultMoves = sParty_Haley4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Haley4), }, [TRAINER_HALEY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8549,13 +7330,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Haley5), - .party = {.NoItemDefaultMoves = sParty_Haley5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Haley5), }, [TRAINER_SALLY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8563,13 +7342,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sally), - .party = {.NoItemDefaultMoves = sParty_Sally}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sally), }, [TRAINER_ROBIN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8577,13 +7354,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Robin), - .party = {.NoItemDefaultMoves = sParty_Robin}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Robin), }, [TRAINER_ANDREA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8591,13 +7366,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andrea), - .party = {.NoItemDefaultMoves = sParty_Andrea}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andrea), }, [TRAINER_CRISSY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_LASS, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LASS, @@ -8605,13 +7378,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Crissy), - .party = {.NoItemDefaultMoves = sParty_Crissy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Crissy), }, [TRAINER_RICK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8619,13 +7390,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rick), - .party = {.NoItemDefaultMoves = sParty_Rick}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rick), }, [TRAINER_LYLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8633,13 +7402,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lyle), - .party = {.NoItemDefaultMoves = sParty_Lyle}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lyle), }, [TRAINER_JOSE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8647,13 +7414,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jose), - .party = {.NoItemDefaultMoves = sParty_Jose}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jose), }, [TRAINER_DOUG] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8661,13 +7426,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Doug), - .party = {.NoItemDefaultMoves = sParty_Doug}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Doug), }, [TRAINER_GREG] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8675,13 +7438,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Greg), - .party = {.NoItemDefaultMoves = sParty_Greg}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Greg), }, [TRAINER_KENT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8689,13 +7450,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kent), - .party = {.NoItemDefaultMoves = sParty_Kent}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kent), }, [TRAINER_JAMES_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8703,13 +7462,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_James1), - .party = {.NoItemDefaultMoves = sParty_James1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_James1), }, [TRAINER_JAMES_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8717,13 +7474,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_James2), - .party = {.NoItemDefaultMoves = sParty_James2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_James2), }, [TRAINER_JAMES_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8731,13 +7486,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_James3), - .party = {.NoItemDefaultMoves = sParty_James3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_James3), }, [TRAINER_JAMES_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8745,13 +7498,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_James4), - .party = {.NoItemDefaultMoves = sParty_James4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_James4), }, [TRAINER_JAMES_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_CATCHER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BUG_CATCHER, @@ -8759,13 +7510,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_James5), - .party = {.NoItemDefaultMoves = sParty_James5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_James5), }, [TRAINER_BRICE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8773,13 +7522,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brice), - .party = {.NoItemDefaultMoves = sParty_Brice}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brice), }, [TRAINER_TRENT_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8787,13 +7534,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Trent1), - .party = {.NoItemDefaultMoves = sParty_Trent1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Trent1), }, [TRAINER_LENNY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8801,13 +7546,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lenny), - .party = {.NoItemDefaultMoves = sParty_Lenny}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lenny), }, [TRAINER_LUCAS_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8815,13 +7558,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lucas1), - .party = {.NoItemDefaultMoves = sParty_Lucas1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lucas1), }, [TRAINER_ALAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8829,13 +7570,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alan), - .party = {.NoItemDefaultMoves = sParty_Alan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alan), }, [TRAINER_CLARK] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8843,13 +7582,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Clark), - .party = {.NoItemDefaultMoves = sParty_Clark}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Clark), }, [TRAINER_ERIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8857,13 +7594,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Eric), - .party = {.NoItemDefaultMoves = sParty_Eric}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Eric), }, [TRAINER_LUCAS_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8871,13 +7606,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lucas2), - .party = {.NoItemCustomMoves = sParty_Lucas2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Lucas2), }, [TRAINER_MIKE_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8885,13 +7618,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Mike1), - .party = {.NoItemCustomMoves = sParty_Mike1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Mike1), }, [TRAINER_MIKE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8899,13 +7630,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Mike2), - .party = {.NoItemDefaultMoves = sParty_Mike2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Mike2), }, [TRAINER_TRENT_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8913,13 +7642,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Trent2), - .party = {.NoItemDefaultMoves = sParty_Trent2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Trent2), }, [TRAINER_TRENT_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8927,13 +7654,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Trent3), - .party = {.NoItemDefaultMoves = sParty_Trent3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Trent3), }, [TRAINER_TRENT_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8941,13 +7666,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Trent4), - .party = {.NoItemDefaultMoves = sParty_Trent4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Trent4), }, [TRAINER_TRENT_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -8955,13 +7678,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Trent5), - .party = {.NoItemDefaultMoves = sParty_Trent5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Trent5), }, [TRAINER_DEZ_AND_LUKE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -8969,13 +7690,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_DezAndLuke), - .party = {.NoItemDefaultMoves = sParty_DezAndLuke}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_DezAndLuke), }, [TRAINER_LEA_AND_JED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -8983,13 +7702,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LeaAndJed), - .party = {.NoItemDefaultMoves = sParty_LeaAndJed}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LeaAndJed), }, [TRAINER_KIRA_AND_DAN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -8997,13 +7714,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KiraAndDan1), - .party = {.NoItemDefaultMoves = sParty_KiraAndDan1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_KiraAndDan1), }, [TRAINER_KIRA_AND_DAN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -9011,13 +7726,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KiraAndDan2), - .party = {.NoItemDefaultMoves = sParty_KiraAndDan2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_KiraAndDan2), }, [TRAINER_KIRA_AND_DAN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -9025,13 +7738,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KiraAndDan3), - .party = {.NoItemDefaultMoves = sParty_KiraAndDan3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_KiraAndDan3), }, [TRAINER_KIRA_AND_DAN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -9039,13 +7750,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KiraAndDan4), - .party = {.NoItemDefaultMoves = sParty_KiraAndDan4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_KiraAndDan4), }, [TRAINER_KIRA_AND_DAN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -9053,13 +7762,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KiraAndDan5), - .party = {.NoItemDefaultMoves = sParty_KiraAndDan5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_KiraAndDan5), }, [TRAINER_JOHANNA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -9067,13 +7774,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Johanna), - .party = {.NoItemDefaultMoves = sParty_Johanna}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Johanna), }, [TRAINER_GERALD] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -9081,13 +7786,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Gerald), - .party = {.NoItemCustomMoves = sParty_Gerald}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Gerald), }, [TRAINER_VIVIAN] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -9095,13 +7798,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Vivian), - .party = {.NoItemCustomMoves = sParty_Vivian}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Vivian), }, [TRAINER_DANIELLE] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -9109,13 +7810,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Danielle), - .party = {.NoItemCustomMoves = sParty_Danielle}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Danielle), }, [TRAINER_HIDEO] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -9123,13 +7822,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Hideo), - .party = {.NoItemCustomMoves = sParty_Hideo}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Hideo), }, [TRAINER_KEIGO] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -9137,13 +7834,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Keigo), - .party = {.NoItemCustomMoves = sParty_Keigo}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Keigo), }, [TRAINER_RILEY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -9151,13 +7846,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT, - .partySize = ARRAY_COUNT(sParty_Riley), - .party = {.NoItemCustomMoves = sParty_Riley}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Riley), }, [TRAINER_FLINT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -9165,13 +7858,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Flint), - .party = {.NoItemDefaultMoves = sParty_Flint}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Flint), }, [TRAINER_ASHLEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -9179,13 +7870,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Ashley), - .party = {.NoItemDefaultMoves = sParty_Ashley}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ashley), }, [TRAINER_WALLY_MAUVILLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -9193,13 +7882,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyMauville), - .party = {.NoItemDefaultMoves = sParty_WallyMauville}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_WallyMauville), }, [TRAINER_WALLY_VR_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -9207,13 +7894,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyVR2), - .party = {.NoItemCustomMoves = sParty_WallyVR2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_WallyVR2), }, [TRAINER_WALLY_VR_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -9221,13 +7906,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyVR3), - .party = {.NoItemCustomMoves = sParty_WallyVR3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_WallyVR3), }, [TRAINER_WALLY_VR_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -9235,13 +7918,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyVR4), - .party = {.NoItemCustomMoves = sParty_WallyVR4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_WallyVR4), }, [TRAINER_WALLY_VR_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_WALLY, @@ -9249,13 +7930,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_WallyVR5), - .party = {.NoItemCustomMoves = sParty_WallyVR5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_WallyVR5), }, [TRAINER_BRENDAN_LILYCOVE_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -9263,13 +7942,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanLilycoveMudkip), - .party = {.NoItemDefaultMoves = sParty_BrendanLilycoveMudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanLilycoveMudkip), }, [TRAINER_BRENDAN_LILYCOVE_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -9277,13 +7954,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanLilycoveTreecko), - .party = {.NoItemDefaultMoves = sParty_BrendanLilycoveTreecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanLilycoveTreecko), }, [TRAINER_BRENDAN_LILYCOVE_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_BRENDAN, @@ -9291,13 +7966,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_BrendanLilycoveTorchic), - .party = {.NoItemDefaultMoves = sParty_BrendanLilycoveTorchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanLilycoveTorchic), }, [TRAINER_MAY_LILYCOVE_MUDKIP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -9305,13 +7978,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayLilycoveMudkip), - .party = {.NoItemDefaultMoves = sParty_MayLilycoveMudkip}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayLilycoveMudkip), }, [TRAINER_MAY_LILYCOVE_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -9319,13 +7990,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayLilycoveTreecko), - .party = {.NoItemDefaultMoves = sParty_MayLilycoveTreecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayLilycoveTreecko), }, [TRAINER_MAY_LILYCOVE_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -9333,13 +8002,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayLilycoveTorchic), - .party = {.NoItemDefaultMoves = sParty_MayLilycoveTorchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayLilycoveTorchic), }, [TRAINER_JONAH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9347,13 +8014,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jonah), - .party = {.NoItemDefaultMoves = sParty_Jonah}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jonah), }, [TRAINER_HENRY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9361,13 +8026,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Henry), - .party = {.NoItemDefaultMoves = sParty_Henry}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Henry), }, [TRAINER_ROGER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9375,13 +8038,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Roger), - .party = {.NoItemDefaultMoves = sParty_Roger}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Roger), }, [TRAINER_ALEXA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -9389,13 +8050,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Alexa), - .party = {.NoItemDefaultMoves = sParty_Alexa}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alexa), }, [TRAINER_RUBEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -9403,13 +8062,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Ruben), - .party = {.NoItemDefaultMoves = sParty_Ruben}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Ruben), }, [TRAINER_KOJI_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -9417,13 +8074,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koji1), - .party = {.NoItemDefaultMoves = sParty_Koji1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koji1), }, [TRAINER_WAYNE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9431,13 +8086,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Wayne), - .party = {.NoItemDefaultMoves = sParty_Wayne}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wayne), }, [TRAINER_AIDAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -9445,13 +8098,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Aidan), - .party = {.NoItemDefaultMoves = sParty_Aidan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Aidan), }, [TRAINER_REED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -9459,13 +8110,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Reed), - .party = {.NoItemDefaultMoves = sParty_Reed}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Reed), }, [TRAINER_TISHA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -9473,13 +8122,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tisha), - .party = {.NoItemDefaultMoves = sParty_Tisha}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tisha), }, [TRAINER_TORI_AND_TIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TWINS, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_TWINS, @@ -9487,13 +8134,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_ToriAndTia), - .party = {.NoItemDefaultMoves = sParty_ToriAndTia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_ToriAndTia), }, [TRAINER_KIM_AND_IRIS] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -9501,13 +8146,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_KimAndIris), - .party = {.NoItemCustomMoves = sParty_KimAndIris}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_KimAndIris), }, [TRAINER_TYRA_AND_IVY] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_SR_AND_JR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_SR_AND_JR, @@ -9515,13 +8158,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_TyraAndIvy), - .party = {.NoItemCustomMoves = sParty_TyraAndIvy}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_TyraAndIvy), }, [TRAINER_MEL_AND_PAUL] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_YOUNG_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_YOUNG_COUPLE, @@ -9529,13 +8170,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_MelAndPaul), - .party = {.NoItemCustomMoves = sParty_MelAndPaul}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_MelAndPaul), }, [TRAINER_JOHN_AND_JAY_1] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_OLD_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_OLD_COUPLE, @@ -9543,13 +8182,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_JohnAndJay1), - .party = {.NoItemCustomMoves = sParty_JohnAndJay1}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_JohnAndJay1), }, [TRAINER_JOHN_AND_JAY_2] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_OLD_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_OLD_COUPLE, @@ -9557,13 +8194,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_JohnAndJay2), - .party = {.NoItemCustomMoves = sParty_JohnAndJay2}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_JohnAndJay2), }, [TRAINER_JOHN_AND_JAY_3] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_OLD_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_OLD_COUPLE, @@ -9571,13 +8206,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_JohnAndJay3), - .party = {.NoItemCustomMoves = sParty_JohnAndJay3}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_JohnAndJay3), }, [TRAINER_JOHN_AND_JAY_4] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_OLD_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_OLD_COUPLE, @@ -9585,13 +8218,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_SETUP_FIRST_TURN, - .partySize = ARRAY_COUNT(sParty_JohnAndJay4), - .party = {.NoItemCustomMoves = sParty_JohnAndJay4}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_JohnAndJay4), }, [TRAINER_JOHN_AND_JAY_5] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_OLD_COUPLE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_OLD_COUPLE, @@ -9599,13 +8230,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_JohnAndJay5), - .party = {.NoItemCustomMoves = sParty_JohnAndJay5}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_JohnAndJay5), }, [TRAINER_RELI_AND_IAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9613,13 +8242,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_ReliAndIan), - .party = {.NoItemDefaultMoves = sParty_ReliAndIan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_ReliAndIan), }, [TRAINER_LILA_AND_ROY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9627,13 +8254,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LilaAndRoy1), - .party = {.NoItemDefaultMoves = sParty_LilaAndRoy1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LilaAndRoy1), }, [TRAINER_LILA_AND_ROY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9641,13 +8266,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LilaAndRoy2), - .party = {.NoItemDefaultMoves = sParty_LilaAndRoy2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LilaAndRoy2), }, [TRAINER_LILA_AND_ROY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9655,13 +8278,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LilaAndRoy3), - .party = {.NoItemDefaultMoves = sParty_LilaAndRoy3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LilaAndRoy3), }, [TRAINER_LILA_AND_ROY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9669,13 +8290,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LilaAndRoy4), - .party = {.NoItemDefaultMoves = sParty_LilaAndRoy4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LilaAndRoy4), }, [TRAINER_LILA_AND_ROY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9683,13 +8302,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LilaAndRoy5), - .party = {.NoItemDefaultMoves = sParty_LilaAndRoy5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LilaAndRoy5), }, [TRAINER_LISA_AND_RAY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SIS_AND_BRO, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SIS_AND_BRO, @@ -9697,13 +8314,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_LisaAndRay), - .party = {.NoItemDefaultMoves = sParty_LisaAndRay}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_LisaAndRay), }, [TRAINER_CHRIS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9711,13 +8326,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chris), - .party = {.NoItemDefaultMoves = sParty_Chris}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Chris), }, [TRAINER_DAWSON] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_RICH_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_RICH_BOY, @@ -9725,13 +8338,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dawson), - .party = {.ItemDefaultMoves = sParty_Dawson}, + .party = ITEM_DEFAULT_MOVES(sParty_Dawson), }, [TRAINER_SARAH] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LADY, @@ -9739,13 +8350,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sarah), - .party = {.ItemDefaultMoves = sParty_Sarah}, + .party = ITEM_DEFAULT_MOVES(sParty_Sarah), }, [TRAINER_DARIAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9753,13 +8362,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Darian), - .party = {.NoItemDefaultMoves = sParty_Darian}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Darian), }, [TRAINER_HAILEY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_F, @@ -9767,13 +8374,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hailey), - .party = {.NoItemDefaultMoves = sParty_Hailey}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hailey), }, [TRAINER_CHANDLER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TUBER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_TUBER_M, @@ -9781,13 +8386,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Chandler), - .party = {.NoItemDefaultMoves = sParty_Chandler}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Chandler), }, [TRAINER_KALEB] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM, .trainerClass = TRAINER_CLASS_POKEFAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_TWINS, .trainerPic = TRAINER_PIC_POKEFAN_M, @@ -9795,13 +8398,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kaleb), - .party = {.ItemDefaultMoves = sParty_Kaleb}, + .party = ITEM_DEFAULT_MOVES(sParty_Kaleb), }, [TRAINER_JOSEPH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -9809,13 +8410,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Joseph), - .party = {.NoItemDefaultMoves = sParty_Joseph}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Joseph), }, [TRAINER_ALYSSA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_CYCLING_TRIATHLETE_F, @@ -9823,13 +8422,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alyssa), - .party = {.NoItemDefaultMoves = sParty_Alyssa}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alyssa), }, [TRAINER_MARCOS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -9837,13 +8434,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Marcos), - .party = {.NoItemDefaultMoves = sParty_Marcos}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Marcos), }, [TRAINER_RHETT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -9851,13 +8446,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rhett), - .party = {.NoItemDefaultMoves = sParty_Rhett}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rhett), }, [TRAINER_TYRON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -9865,13 +8458,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Tyron), - .party = {.NoItemDefaultMoves = sParty_Tyron}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tyron), }, [TRAINER_CELINA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -9879,13 +8470,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Celina), - .party = {.NoItemDefaultMoves = sParty_Celina}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Celina), }, [TRAINER_BIANCA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -9893,13 +8482,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bianca), - .party = {.NoItemDefaultMoves = sParty_Bianca}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bianca), }, [TRAINER_HAYDEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -9907,13 +8494,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Hayden), - .party = {.NoItemDefaultMoves = sParty_Hayden}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Hayden), }, [TRAINER_SOPHIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -9921,13 +8506,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Sophie), - .party = {.NoItemDefaultMoves = sParty_Sophie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sophie), }, [TRAINER_COBY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -9935,13 +8518,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Coby), - .party = {.NoItemDefaultMoves = sParty_Coby}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Coby), }, [TRAINER_LAWRENCE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -9949,13 +8530,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Lawrence), - .party = {.NoItemDefaultMoves = sParty_Lawrence}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lawrence), }, [TRAINER_WYATT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_POKEMANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_POKEMANIAC, @@ -9963,13 +8542,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Wyatt), - .party = {.NoItemDefaultMoves = sParty_Wyatt}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Wyatt), }, [TRAINER_ANGELINA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -9977,13 +8554,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Angelina), - .party = {.NoItemDefaultMoves = sParty_Angelina}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Angelina), }, [TRAINER_KAI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FISHERMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_FISHERMAN, @@ -9991,13 +8566,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kai), - .party = {.NoItemDefaultMoves = sParty_Kai}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kai), }, [TRAINER_CHARLOTTE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -10005,13 +8578,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Charlotte), - .party = {.NoItemDefaultMoves = sParty_Charlotte}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Charlotte), }, [TRAINER_DEANDRE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -10019,13 +8590,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Deandre), - .party = {.NoItemDefaultMoves = sParty_Deandre}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Deandre), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10033,13 +8602,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout1), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout1), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10047,13 +8614,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout2), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout2), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10061,13 +8626,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout3), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout3), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10075,13 +8638,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout4), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout4), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10089,13 +8650,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout5), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout5), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_6] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10103,13 +8662,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout6), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout6}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout6), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_7] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10117,13 +8674,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout7), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout7}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout7), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_8] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10131,13 +8686,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout8), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout8}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout8), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_9] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10145,13 +8698,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout9), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout9}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout9), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_10] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10159,13 +8710,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout10), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout10}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout10), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_11] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10173,13 +8722,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout11), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout11}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout11), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_12] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10187,13 +8734,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout12), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout12}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout12), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_13] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_M, @@ -10201,13 +8746,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout13), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout13}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout13), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_14] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_F, @@ -10215,13 +8758,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout14), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout14}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout14), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_15] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_F, @@ -10229,13 +8770,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout15), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout15}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout15), }, [TRAINER_GRUNT_MAGMA_HIDEOUT_16] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TEAM_MAGMA, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_GRUNT_F, @@ -10243,13 +8782,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_GruntMagmaHideout16), - .party = {.NoItemDefaultMoves = sParty_GruntMagmaHideout16}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_GruntMagmaHideout16), }, [TRAINER_TABITHA_MAGMA_HIDEOUT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_ADMIN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_ADMIN, @@ -10257,13 +8794,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_TabithaMagmaHideout), - .party = {.NoItemDefaultMoves = sParty_TabithaMagmaHideout}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_TabithaMagmaHideout), }, [TRAINER_DARCY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -10271,13 +8806,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Darcy), - .party = {.NoItemDefaultMoves = sParty_Darcy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Darcy), }, [TRAINER_MAXIE_MOSSDEEP] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_MAGMA_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MAGMA, .trainerPic = TRAINER_PIC_MAGMA_LEADER_MAXIE, @@ -10285,13 +8818,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MaxieMossdeep), - .party = {.NoItemDefaultMoves = sParty_MaxieMossdeep}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MaxieMossdeep), }, [TRAINER_PETE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_M, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_M, @@ -10299,13 +8830,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pete), - .party = {.NoItemDefaultMoves = sParty_Pete}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pete), }, [TRAINER_ISABELLE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SWIMMER_F, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMER_F, @@ -10313,13 +8842,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Isabelle), - .party = {.NoItemDefaultMoves = sParty_Isabelle}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Isabelle), }, [TRAINER_ANDRES_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -10327,13 +8854,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andres1), - .party = {.NoItemDefaultMoves = sParty_Andres1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andres1), }, [TRAINER_JOSUE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -10341,13 +8866,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Josue), - .party = {.NoItemDefaultMoves = sParty_Josue}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Josue), }, [TRAINER_CAMRON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -10355,13 +8878,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Camron), - .party = {.NoItemDefaultMoves = sParty_Camron}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Camron), }, [TRAINER_CORY_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -10369,13 +8890,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cory1), - .party = {.NoItemDefaultMoves = sParty_Cory1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cory1), }, [TRAINER_CAROLINA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -10383,13 +8902,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Carolina), - .party = {.NoItemDefaultMoves = sParty_Carolina}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Carolina), }, [TRAINER_ELIJAH] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -10397,13 +8914,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Elijah), - .party = {.NoItemDefaultMoves = sParty_Elijah}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Elijah), }, [TRAINER_CELIA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PICNICKER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_GIRL, .trainerPic = TRAINER_PIC_PICNICKER, @@ -10411,13 +8926,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Celia), - .party = {.NoItemDefaultMoves = sParty_Celia}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Celia), }, [TRAINER_BRYAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -10425,13 +8938,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bryan), - .party = {.NoItemDefaultMoves = sParty_Bryan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bryan), }, [TRAINER_BRANDEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_CAMPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_CAMPER, @@ -10439,13 +8950,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Branden), - .party = {.NoItemDefaultMoves = sParty_Branden}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Branden), }, [TRAINER_BRYANT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -10453,13 +8962,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Bryant), - .party = {.NoItemDefaultMoves = sParty_Bryant}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Bryant), }, [TRAINER_SHAYLA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_AROMA_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_AROMA_LADY, @@ -10467,13 +8974,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Shayla), - .party = {.NoItemDefaultMoves = sParty_Shayla}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Shayla), }, [TRAINER_KYRA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -10481,13 +8986,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Kyra), - .party = {.NoItemDefaultMoves = sParty_Kyra}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Kyra), }, [TRAINER_JAIDEN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_NINJA_BOY, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_NINJA_BOY, @@ -10495,13 +8998,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Jaiden), - .party = {.NoItemDefaultMoves = sParty_Jaiden}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Jaiden), }, [TRAINER_ALIX] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -10509,13 +9010,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Alix), - .party = {.NoItemDefaultMoves = sParty_Alix}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alix), }, [TRAINER_HELENE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -10523,13 +9022,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Helene), - .party = {.NoItemDefaultMoves = sParty_Helene}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Helene), }, [TRAINER_MARLENE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -10537,13 +9034,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Marlene), - .party = {.NoItemDefaultMoves = sParty_Marlene}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Marlene), }, [TRAINER_DEVAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -10551,13 +9046,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Devan), - .party = {.NoItemDefaultMoves = sParty_Devan}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Devan), }, [TRAINER_JOHNSON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_YOUNGSTER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_YOUNGSTER, @@ -10565,13 +9058,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Johnson), - .party = {.NoItemDefaultMoves = sParty_Johnson}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Johnson), }, [TRAINER_MELINA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_RUNNING_TRIATHLETE_F, @@ -10579,13 +9070,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Melina), - .party = {.NoItemDefaultMoves = sParty_Melina}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Melina), }, [TRAINER_BRANDI] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -10593,13 +9082,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Brandi), - .party = {.NoItemDefaultMoves = sParty_Brandi}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brandi), }, [TRAINER_AISHA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -10607,13 +9094,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Aisha), - .party = {.NoItemDefaultMoves = sParty_Aisha}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Aisha), }, [TRAINER_MAKAYLA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_EXPERT, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_EXPERT_F, @@ -10621,13 +9106,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Makayla), - .party = {.NoItemDefaultMoves = sParty_Makayla}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Makayla), }, [TRAINER_FABIAN] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -10635,13 +9118,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fabian), - .party = {.NoItemDefaultMoves = sParty_Fabian}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fabian), }, [TRAINER_DAYTON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_KINDLER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_KINDLER, @@ -10649,13 +9130,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Dayton), - .party = {.NoItemDefaultMoves = sParty_Dayton}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Dayton), }, [TRAINER_RACHEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PARASOL_LADY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_PARASOL_LADY, @@ -10663,13 +9142,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Rachel), - .party = {.NoItemDefaultMoves = sParty_Rachel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Rachel), }, [TRAINER_LEONEL] = { - .partyFlags = F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_M, @@ -10677,13 +9154,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Leonel), - .party = {.NoItemCustomMoves = sParty_Leonel}, + .party = NO_ITEM_CUSTOM_MOVES(sParty_Leonel), }, [TRAINER_CALLIE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BATTLE_GIRL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BATTLE_GIRL, @@ -10691,13 +9166,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Callie), - .party = {.NoItemDefaultMoves = sParty_Callie}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Callie), }, [TRAINER_CALE] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -10705,13 +9178,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cale), - .party = {.NoItemDefaultMoves = sParty_Cale}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cale), }, [TRAINER_MYLES] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_M, @@ -10719,13 +9190,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Myles), - .party = {.NoItemDefaultMoves = sParty_Myles}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Myles), }, [TRAINER_PAT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -10733,13 +9202,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pat), - .party = {.NoItemDefaultMoves = sParty_Pat}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pat), }, [TRAINER_CRISTIN_1] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -10747,13 +9214,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Cristin1), - .party = {.NoItemDefaultMoves = sParty_Cristin1}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristin1), }, [TRAINER_MAY_RUSTBORO_TREECKO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -10761,13 +9226,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRustboroTreecko), - .party = {.NoItemDefaultMoves = sParty_MayRustboroTreecko}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRustboroTreecko), }, [TRAINER_MAY_RUSTBORO_TORCHIC] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_MAY, @@ -10775,13 +9238,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_MayRustboroTorchic), - .party = {.NoItemDefaultMoves = sParty_MayRustboroTorchic}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayRustboroTorchic), }, [TRAINER_ROXANNE_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_ROXANNE, @@ -10789,13 +9250,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Roxanne2), - .party = {.ItemCustomMoves = sParty_Roxanne2}, + .party = ITEM_CUSTOM_MOVES(sParty_Roxanne2), }, [TRAINER_ROXANNE_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_ROXANNE, @@ -10803,13 +9262,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Roxanne3), - .party = {.ItemCustomMoves = sParty_Roxanne3}, + .party = ITEM_CUSTOM_MOVES(sParty_Roxanne3), }, [TRAINER_ROXANNE_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_ROXANNE, @@ -10817,13 +9274,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Roxanne4), - .party = {.ItemCustomMoves = sParty_Roxanne4}, + .party = ITEM_CUSTOM_MOVES(sParty_Roxanne4), }, [TRAINER_ROXANNE_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_ROXANNE, @@ -10831,13 +9286,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Roxanne5), - .party = {.ItemCustomMoves = sParty_Roxanne5}, + .party = ITEM_CUSTOM_MOVES(sParty_Roxanne5), }, [TRAINER_BRAWLY_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_BRAWLY, @@ -10845,13 +9298,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brawly2), - .party = {.ItemCustomMoves = sParty_Brawly2}, + .party = ITEM_CUSTOM_MOVES(sParty_Brawly2), }, [TRAINER_BRAWLY_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_BRAWLY, @@ -10859,13 +9310,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brawly3), - .party = {.ItemCustomMoves = sParty_Brawly3}, + .party = ITEM_CUSTOM_MOVES(sParty_Brawly3), }, [TRAINER_BRAWLY_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_BRAWLY, @@ -10873,13 +9322,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brawly4), - .party = {.ItemCustomMoves = sParty_Brawly4}, + .party = ITEM_CUSTOM_MOVES(sParty_Brawly4), }, [TRAINER_BRAWLY_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_BRAWLY, @@ -10887,13 +9334,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brawly5), - .party = {.ItemCustomMoves = sParty_Brawly5}, + .party = ITEM_CUSTOM_MOVES(sParty_Brawly5), }, [TRAINER_WATTSON_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_WATTSON, @@ -10901,13 +9346,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wattson2), - .party = {.ItemCustomMoves = sParty_Wattson2}, + .party = ITEM_CUSTOM_MOVES(sParty_Wattson2), }, [TRAINER_WATTSON_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_WATTSON, @@ -10915,13 +9358,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wattson3), - .party = {.ItemCustomMoves = sParty_Wattson3}, + .party = ITEM_CUSTOM_MOVES(sParty_Wattson3), }, [TRAINER_WATTSON_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_WATTSON, @@ -10929,13 +9370,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wattson4), - .party = {.ItemCustomMoves = sParty_Wattson4}, + .party = ITEM_CUSTOM_MOVES(sParty_Wattson4), }, [TRAINER_WATTSON_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_WATTSON, @@ -10943,13 +9382,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Wattson5), - .party = {.ItemCustomMoves = sParty_Wattson5}, + .party = ITEM_CUSTOM_MOVES(sParty_Wattson5), }, [TRAINER_FLANNERY_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_FLANNERY, @@ -10957,13 +9394,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Flannery2), - .party = {.ItemCustomMoves = sParty_Flannery2}, + .party = ITEM_CUSTOM_MOVES(sParty_Flannery2), }, [TRAINER_FLANNERY_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_FLANNERY, @@ -10971,13 +9406,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Flannery3), - .party = {.ItemCustomMoves = sParty_Flannery3}, + .party = ITEM_CUSTOM_MOVES(sParty_Flannery3), }, [TRAINER_FLANNERY_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_FLANNERY, @@ -10985,13 +9418,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Flannery4), - .party = {.ItemCustomMoves = sParty_Flannery4}, + .party = ITEM_CUSTOM_MOVES(sParty_Flannery4), }, [TRAINER_FLANNERY_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_FLANNERY, @@ -10999,13 +9430,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Flannery5), - .party = {.ItemCustomMoves = sParty_Flannery5}, + .party = ITEM_CUSTOM_MOVES(sParty_Flannery5), }, [TRAINER_NORMAN_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_NORMAN, @@ -11013,13 +9442,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Norman2), - .party = {.ItemCustomMoves = sParty_Norman2}, + .party = ITEM_CUSTOM_MOVES(sParty_Norman2), }, [TRAINER_NORMAN_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_NORMAN, @@ -11027,13 +9454,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Norman3), - .party = {.ItemCustomMoves = sParty_Norman3}, + .party = ITEM_CUSTOM_MOVES(sParty_Norman3), }, [TRAINER_NORMAN_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_NORMAN, @@ -11041,13 +9466,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Norman4), - .party = {.ItemCustomMoves = sParty_Norman4}, + .party = ITEM_CUSTOM_MOVES(sParty_Norman4), }, [TRAINER_NORMAN_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_NORMAN, @@ -11055,13 +9478,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Norman5), - .party = {.ItemCustomMoves = sParty_Norman5}, + .party = ITEM_CUSTOM_MOVES(sParty_Norman5), }, [TRAINER_WINONA_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_WINONA, @@ -11069,13 +9490,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_RISKY, - .partySize = ARRAY_COUNT(sParty_Winona2), - .party = {.ItemCustomMoves = sParty_Winona2}, + .party = ITEM_CUSTOM_MOVES(sParty_Winona2), }, [TRAINER_WINONA_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_WINONA, @@ -11083,13 +9502,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_RISKY, - .partySize = ARRAY_COUNT(sParty_Winona3), - .party = {.ItemCustomMoves = sParty_Winona3}, + .party = ITEM_CUSTOM_MOVES(sParty_Winona3), }, [TRAINER_WINONA_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_WINONA, @@ -11097,13 +9514,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_RISKY, - .partySize = ARRAY_COUNT(sParty_Winona4), - .party = {.ItemCustomMoves = sParty_Winona4}, + .party = ITEM_CUSTOM_MOVES(sParty_Winona4), }, [TRAINER_WINONA_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_WINONA, @@ -11111,13 +9526,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY | AI_SCRIPT_RISKY, - .partySize = ARRAY_COUNT(sParty_Winona5), - .party = {.ItemCustomMoves = sParty_Winona5}, + .party = ITEM_CUSTOM_MOVES(sParty_Winona5), }, [TRAINER_TATE_AND_LIZA_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_TATE_AND_LIZA, @@ -11125,13 +9538,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TateAndLiza2), - .party = {.ItemCustomMoves = sParty_TateAndLiza2}, + .party = ITEM_CUSTOM_MOVES(sParty_TateAndLiza2), }, [TRAINER_TATE_AND_LIZA_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_TATE_AND_LIZA, @@ -11139,13 +9550,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TateAndLiza3), - .party = {.ItemCustomMoves = sParty_TateAndLiza3}, + .party = ITEM_CUSTOM_MOVES(sParty_TateAndLiza3), }, [TRAINER_TATE_AND_LIZA_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_TATE_AND_LIZA, @@ -11153,13 +9562,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TateAndLiza4), - .party = {.ItemCustomMoves = sParty_TateAndLiza4}, + .party = ITEM_CUSTOM_MOVES(sParty_TateAndLiza4), }, [TRAINER_TATE_AND_LIZA_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_LEADER_TATE_AND_LIZA, @@ -11167,13 +9574,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_TateAndLiza5), - .party = {.ItemCustomMoves = sParty_TateAndLiza5}, + .party = ITEM_CUSTOM_MOVES(sParty_TateAndLiza5), }, [TRAINER_JUAN_2] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_JUAN, @@ -11181,13 +9586,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Juan2), - .party = {.ItemCustomMoves = sParty_Juan2}, + .party = ITEM_CUSTOM_MOVES(sParty_Juan2), }, [TRAINER_JUAN_3] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_JUAN, @@ -11195,13 +9598,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Juan3), - .party = {.ItemCustomMoves = sParty_Juan3}, + .party = ITEM_CUSTOM_MOVES(sParty_Juan3), }, [TRAINER_JUAN_4] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_JUAN, @@ -11209,13 +9610,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Juan4), - .party = {.ItemCustomMoves = sParty_Juan4}, + .party = ITEM_CUSTOM_MOVES(sParty_Juan4), }, [TRAINER_JUAN_5] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_LEADER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEADER_JUAN, @@ -11223,13 +9622,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_NONE}, .doubleBattle = TRUE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Juan5), - .party = {.ItemCustomMoves = sParty_Juan5}, + .party = ITEM_CUSTOM_MOVES(sParty_Juan5), }, [TRAINER_ANGELO] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_BUG_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SUSPICIOUS, .trainerPic = TRAINER_PIC_BUG_MANIAC, @@ -11237,13 +9634,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Angelo), - .party = {.ItemCustomMoves = sParty_Angelo}, + .party = ITEM_CUSTOM_MOVES(sParty_Angelo), }, [TRAINER_DARIUS] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BIRD_KEEPER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_BIRD_KEEPER, @@ -11251,13 +9646,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Darius), - .party = {.NoItemDefaultMoves = sParty_Darius}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Darius), }, [TRAINER_STEVEN] = { - .partyFlags = F_TRAINER_PARTY_HELD_ITEM | F_TRAINER_PARTY_CUSTOM_MOVESET, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_STEVEN, @@ -11265,13 +9658,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE, ITEM_FULL_RESTORE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Steven), - .party = {.ItemCustomMoves = sParty_Steven}, + .party = ITEM_CUSTOM_MOVES(sParty_Steven), }, [TRAINER_ANABEL] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SALON_MAIDEN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SALON_MAIDEN_ANABEL, @@ -11279,13 +9670,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Anabel), - .party = {.NoItemDefaultMoves = sParty_Anabel}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Anabel), }, [TRAINER_TUCKER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_DOME_ACE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_DOME_ACE_TUCKER, @@ -11293,13 +9682,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Tucker), - .party = {.NoItemDefaultMoves = sParty_Tucker}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Tucker), }, [TRAINER_SPENSER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PALACE_MAVEN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_PALACE_MAVEN_SPENSER, @@ -11307,13 +9694,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Spenser), - .party = {.NoItemDefaultMoves = sParty_Spenser}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Spenser), }, [TRAINER_GRETA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_ARENA_TYCOON, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_ARENA_TYCOON_GRETA, @@ -11321,13 +9706,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Greta), - .party = {.NoItemDefaultMoves = sParty_Greta}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Greta), }, [TRAINER_NOLAND] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_FACTORY_HEAD, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_FACTORY_HEAD_NOLAND, @@ -11335,13 +9718,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Noland), - .party = {.NoItemDefaultMoves = sParty_Noland}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Noland), }, [TRAINER_LUCY] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PIKE_QUEEN, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_PIKE_QUEEN_LUCY, @@ -11349,13 +9730,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Lucy), - .party = {.NoItemDefaultMoves = sParty_Lucy}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Lucy), }, [TRAINER_BRANDON] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PYRAMID_KING, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_PYRAMID_KING_BRANDON, @@ -11363,13 +9742,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Brandon), - .party = {.NoItemDefaultMoves = sParty_Brandon}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Brandon), }, [TRAINER_ANDRES_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -11377,13 +9754,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andres2), - .party = {.NoItemDefaultMoves = sParty_Andres2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andres2), }, [TRAINER_ANDRES_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -11391,13 +9766,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andres3), - .party = {.NoItemDefaultMoves = sParty_Andres3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andres3), }, [TRAINER_ANDRES_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -11405,13 +9778,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andres4), - .party = {.NoItemDefaultMoves = sParty_Andres4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andres4), }, [TRAINER_ANDRES_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RUIN_MANIAC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_RUIN_MANIAC, @@ -11419,13 +9790,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Andres5), - .party = {.NoItemDefaultMoves = sParty_Andres5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Andres5), }, [TRAINER_CORY_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -11433,13 +9802,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cory2), - .party = {.NoItemDefaultMoves = sParty_Cory2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cory2), }, [TRAINER_CORY_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -11447,13 +9814,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cory3), - .party = {.NoItemDefaultMoves = sParty_Cory3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cory3), }, [TRAINER_CORY_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -11461,13 +9826,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cory4), - .party = {.NoItemDefaultMoves = sParty_Cory4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cory4), }, [TRAINER_CORY_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_SAILOR, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_SAILOR, @@ -11475,13 +9838,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Cory5), - .party = {.NoItemDefaultMoves = sParty_Cory5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cory5), }, [TRAINER_PABLO_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -11489,13 +9850,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pablo2), - .party = {.NoItemDefaultMoves = sParty_Pablo2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pablo2), }, [TRAINER_PABLO_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -11503,13 +9862,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pablo3), - .party = {.NoItemDefaultMoves = sParty_Pablo3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pablo3), }, [TRAINER_PABLO_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -11517,13 +9874,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pablo4), - .party = {.NoItemDefaultMoves = sParty_Pablo4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pablo4), }, [TRAINER_PABLO_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_TRIATHLETE, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_SWIMMER, .trainerPic = TRAINER_PIC_SWIMMING_TRIATHLETE_M, @@ -11531,13 +9886,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Pablo5), - .party = {.NoItemDefaultMoves = sParty_Pablo5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Pablo5), }, [TRAINER_KOJI_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -11545,13 +9898,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koji2), - .party = {.NoItemDefaultMoves = sParty_Koji2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koji2), }, [TRAINER_KOJI_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -11559,13 +9910,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koji3), - .party = {.NoItemDefaultMoves = sParty_Koji3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koji3), }, [TRAINER_KOJI_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -11573,13 +9922,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koji4), - .party = {.NoItemDefaultMoves = sParty_Koji4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koji4), }, [TRAINER_KOJI_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BLACK_BELT, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_BLACK_BELT, @@ -11587,13 +9934,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Koji5), - .party = {.NoItemDefaultMoves = sParty_Koji5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Koji5), }, [TRAINER_CRISTIN_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -11601,13 +9946,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Cristin2), - .party = {.NoItemDefaultMoves = sParty_Cristin2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristin2), }, [TRAINER_CRISTIN_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -11615,13 +9958,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Cristin3), - .party = {.NoItemDefaultMoves = sParty_Cristin3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristin3), }, [TRAINER_CRISTIN_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -11629,13 +9970,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Cristin4), - .party = {.NoItemDefaultMoves = sParty_Cristin4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristin4), }, [TRAINER_CRISTIN_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_COOLTRAINER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_COOL, .trainerPic = TRAINER_PIC_COOLTRAINER_F, @@ -11643,13 +9982,11 @@ const struct Trainer gTrainers[] = { .items = {ITEM_HYPER_POTION, ITEM_NONE, ITEM_NONE, ITEM_NONE}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Cristin5), - .party = {.NoItemDefaultMoves = sParty_Cristin5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Cristin5), }, [TRAINER_FERNANDO_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -11657,13 +9994,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fernando2), - .party = {.NoItemDefaultMoves = sParty_Fernando2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fernando2), }, [TRAINER_FERNANDO_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -11671,13 +10006,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fernando3), - .party = {.NoItemDefaultMoves = sParty_Fernando3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fernando3), }, [TRAINER_FERNANDO_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -11685,13 +10018,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fernando4), - .party = {.NoItemDefaultMoves = sParty_Fernando4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fernando4), }, [TRAINER_FERNANDO_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GUITARIST, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_GUITARIST, @@ -11699,13 +10030,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Fernando5), - .party = {.NoItemDefaultMoves = sParty_Fernando5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Fernando5), }, [TRAINER_SAWYER_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -11713,13 +10042,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sawyer2), - .party = {.NoItemDefaultMoves = sParty_Sawyer2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sawyer2), }, [TRAINER_SAWYER_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -11727,13 +10054,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sawyer3), - .party = {.NoItemDefaultMoves = sParty_Sawyer3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sawyer3), }, [TRAINER_SAWYER_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -11741,13 +10066,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sawyer4), - .party = {.NoItemDefaultMoves = sParty_Sawyer4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sawyer4), }, [TRAINER_SAWYER_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_HIKER, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_HIKER, .trainerPic = TRAINER_PIC_HIKER, @@ -11755,13 +10078,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY, - .partySize = ARRAY_COUNT(sParty_Sawyer5), - .party = {.NoItemDefaultMoves = sParty_Sawyer5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Sawyer5), }, [TRAINER_GABRIELLE_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -11769,13 +10090,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gabrielle2), - .party = {.NoItemDefaultMoves = sParty_Gabrielle2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gabrielle2), }, [TRAINER_GABRIELLE_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -11783,13 +10102,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gabrielle3), - .party = {.NoItemDefaultMoves = sParty_Gabrielle3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gabrielle3), }, [TRAINER_GABRIELLE_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -11797,13 +10114,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gabrielle4), - .party = {.NoItemDefaultMoves = sParty_Gabrielle4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gabrielle4), }, [TRAINER_GABRIELLE_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PKMN_BREEDER, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_POKEMON_BREEDER_F, @@ -11811,13 +10126,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Gabrielle5), - .party = {.NoItemDefaultMoves = sParty_Gabrielle5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Gabrielle5), }, [TRAINER_THALIA_2] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -11825,13 +10138,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thalia2), - .party = {.NoItemDefaultMoves = sParty_Thalia2}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thalia2), }, [TRAINER_THALIA_3] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -11839,13 +10150,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thalia3), - .party = {.NoItemDefaultMoves = sParty_Thalia3}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thalia3), }, [TRAINER_THALIA_4] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -11853,13 +10162,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thalia4), - .party = {.NoItemDefaultMoves = sParty_Thalia4}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thalia4), }, [TRAINER_THALIA_5] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_BEAUTY, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_FEMALE, .trainerPic = TRAINER_PIC_BEAUTY, @@ -11867,13 +10174,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = AI_SCRIPT_CHECK_BAD_MOVE, - .partySize = ARRAY_COUNT(sParty_Thalia5), - .party = {.NoItemDefaultMoves = sParty_Thalia5}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Thalia5), }, [TRAINER_MARIELA] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_F, @@ -11881,13 +10186,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Mariela), - .party = {.NoItemDefaultMoves = sParty_Mariela}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Mariela), }, [TRAINER_ALVARO] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_PSYCHIC, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_INTENSE, .trainerPic = TRAINER_PIC_PSYCHIC_M, @@ -11895,13 +10198,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Alvaro), - .party = {.NoItemDefaultMoves = sParty_Alvaro}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Alvaro), }, [TRAINER_EVERETT] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_GENTLEMAN, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_RICH, .trainerPic = TRAINER_PIC_GENTLEMAN, @@ -11909,13 +10210,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Everett), - .party = {.NoItemDefaultMoves = sParty_Everett}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Everett), }, [TRAINER_RED] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RED, @@ -11923,13 +10222,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Red), - .party = {.NoItemDefaultMoves = sParty_Red}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Red), }, [TRAINER_LEAF] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RIVAL, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_LEAF, @@ -11937,13 +10234,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_Leaf), - .party = {.NoItemDefaultMoves = sParty_Leaf}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_Leaf), }, [TRAINER_BRENDAN_PLACEHOLDER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RS_PROTAG, .encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RS_BRENDAN, @@ -11951,13 +10246,11 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_BrendanLinkPlaceholder), - .party = {.NoItemDefaultMoves = sParty_BrendanLinkPlaceholder}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_BrendanLinkPlaceholder), }, [TRAINER_MAY_PLACEHOLDER] = { - .partyFlags = 0, .trainerClass = TRAINER_CLASS_RS_PROTAG, .encounterMusic_gender = F_TRAINER_FEMALE | TRAINER_ENCOUNTER_MUSIC_MALE, .trainerPic = TRAINER_PIC_RS_MAY, @@ -11965,7 +10258,6 @@ const struct Trainer gTrainers[] = { .items = {}, .doubleBattle = FALSE, .aiFlags = 0, - .partySize = ARRAY_COUNT(sParty_MayLinkPlaceholder), - .party = {.NoItemDefaultMoves = sParty_MayLinkPlaceholder}, + .party = NO_ITEM_DEFAULT_MOVES(sParty_MayLinkPlaceholder), }, }; From b00bd8b181a1e858c06d6b52e483cca8fbfcce25 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Wed, 27 Jul 2022 18:51:32 -0400 Subject: [PATCH 635/762] Cleaned by comparing evolution_scene.c with pokefirered --- src/battle_anim_dark.c | 8 +-- src/battle_script_commands.c | 2 +- src/berry_tag_screen.c | 2 +- src/evolution_scene.c | 124 +++++++++++++++++------------------ src/link.c | 2 +- src/mystery_event_menu.c | 2 +- src/rayquaza_scene.c | 8 +-- 7 files changed, 74 insertions(+), 74 deletions(-) diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index a063af66d789..1281ccc8b47e 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -426,7 +426,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) GetBattleAnimBg1Data(&animBg); task->data[10] = gBattle_BG1_Y; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1); - FillPalette(0, animBg.paletteId * 16, 32); + FillPalette(RGB_BLACK, animBg.paletteId * 16, 32); scanlineParams.dmaDest = ®_BG1VOFS; var0 = WINOUT_WIN01_BG1; if (!IsContest()) @@ -436,7 +436,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) { task->data[10] = gBattle_BG2_Y; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2); - FillPalette(0, 144, 32); + FillPalette(RGB_BLACK, 144, 32); scanlineParams.dmaDest = ®_BG2VOFS; var0 = WINOUT_WIN01_BG2; if (!IsContest()) @@ -566,12 +566,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId) { GetBattleAnimBg1Data(&animBg); task->data[10] = gBattle_BG1_Y; - FillPalette(0, animBg.paletteId * 16, 32); + FillPalette(RGB_BLACK, animBg.paletteId * 16, 32); } else { task->data[10] = gBattle_BG2_Y; - FillPalette(0, 9 * 16, 32); + FillPalette(RGB_BLACK, 9 * 16, 32); } SetAllBattlersSpritePriority(3); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 7d1bb46a9e14..5f0ecad6899a 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1037,7 +1037,7 @@ static void Cmd_jumpifaffectedbyprotect(void) } } -bool8 JumpIfMoveAffectedByProtect(u16 move) +static bool8 JumpIfMoveAffectedByProtect(u16 move) { bool8 affected = FALSE; if (DEFENDER_IS_PROTECTED) diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index 219454ab26d5..f683c73f45cd 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -276,7 +276,7 @@ static bool8 InitBerryTagScreen(void) gMain.state++; break; case 14: - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); gMain.state++; break; case 15: diff --git a/src/evolution_scene.c b/src/evolution_scene.c index eb458d39d44b..01ad688983f5 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -212,7 +212,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u u16 currSpecies; u32 trainerId, personality; const struct CompressedSpritePalette* pokePal; - u8 ID; + u8 id; SetHBlankCallback(NULL); SetVBlankCallback(NULL); @@ -267,11 +267,11 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u SetMultiuseSpriteTemplateToPokemon(currSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; - sEvoStructPtr->preEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); + sEvoStructPtr->preEvoSpriteId = id = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); - gSprites[ID].callback = SpriteCallbackDummy_2; - gSprites[ID].oam.paletteNum = 1; - gSprites[ID].invisible = TRUE; + gSprites[id].callback = SpriteCallbackDummy_2; + gSprites[id].oam.paletteNum = 1; + gSprites[id].invisible = TRUE; // postEvo sprite DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies], @@ -282,21 +282,21 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; - sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); - gSprites[ID].callback = SpriteCallbackDummy_2; - gSprites[ID].oam.paletteNum = 2; - gSprites[ID].invisible = TRUE; + sEvoStructPtr->postEvoSpriteId = id = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); + gSprites[id].callback = SpriteCallbackDummy_2; + gSprites[id].oam.paletteNum = 2; + gSprites[id].invisible = TRUE; LoadEvoSparkleSpriteAndPal(); - sEvoStructPtr->evoTaskId = ID = CreateTask(Task_EvolutionScene, 0); - gTasks[ID].tState = 0; - gTasks[ID].tPreEvoSpecies = currSpecies; - gTasks[ID].tPostEvoSpecies = postEvoSpecies; - gTasks[ID].tCanStop = canStopEvo; - gTasks[ID].tLearnsFirstMove = TRUE; - gTasks[ID].tEvoWasStopped = FALSE; - gTasks[ID].tPartyId = partyId; + sEvoStructPtr->evoTaskId = id = CreateTask(Task_EvolutionScene, 0); + gTasks[id].tState = 0; + gTasks[id].tPreEvoSpecies = currSpecies; + gTasks[id].tPostEvoSpecies = postEvoSpecies; + gTasks[id].tCanStop = canStopEvo; + gTasks[id].tLearnsFirstMove = TRUE; + gTasks[id].tEvoWasStopped = FALSE; + gTasks[id].tPartyId = partyId; memcpy(&sEvoStructPtr->savedPalette, &gPlttBufferUnfaded[0x20], sizeof(sEvoStructPtr->savedPalette)); @@ -310,7 +310,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u static void CB2_EvolutionSceneLoadGraphics(void) { - u8 ID; + u8 id; const struct CompressedSpritePalette* pokePal; u16 postEvoSpecies; u32 trainerId, personality; @@ -360,10 +360,10 @@ static void CB2_EvolutionSceneLoadGraphics(void) SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; - sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); + sEvoStructPtr->postEvoSpriteId = id = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); - gSprites[ID].callback = SpriteCallbackDummy_2; - gSprites[ID].oam.paletteNum = 2; + gSprites[id].callback = SpriteCallbackDummy_2; + gSprites[id].oam.paletteNum = 2; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_1D_MAP); @@ -433,14 +433,14 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) break; case 5: { - u8 ID; + u8 id; SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; - sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); + sEvoStructPtr->postEvoSpriteId = id = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); - gSprites[ID].callback = SpriteCallbackDummy_2; - gSprites[ID].oam.paletteNum = 2; + gSprites[id].callback = SpriteCallbackDummy_2; + gSprites[id].oam.paletteNum = 2; gMain.state++; LinkTradeDrawWindow(); } @@ -451,7 +451,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); } - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); gMain.state++; break; case 7: @@ -471,7 +471,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit u16 currSpecies; u32 trainerId, personality; const struct CompressedSpritePalette* pokePal; - u8 ID; + u8 id; GetMonData(mon, MON_DATA_NICKNAME, name); StringCopy_Nickname(gStringVar1, name); @@ -496,21 +496,21 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; - sEvoStructPtr->postEvoSpriteId = ID = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); + sEvoStructPtr->postEvoSpriteId = id = CreateSprite(&gMultiuseSpriteTemplate, 120, 64, 30); - gSprites[ID].callback = SpriteCallbackDummy_2; - gSprites[ID].oam.paletteNum = 2; - gSprites[ID].invisible = TRUE; + gSprites[id].callback = SpriteCallbackDummy_2; + gSprites[id].oam.paletteNum = 2; + gSprites[id].invisible = TRUE; LoadEvoSparkleSpriteAndPal(); - sEvoStructPtr->evoTaskId = ID = CreateTask(Task_TradeEvolutionScene, 0); - gTasks[ID].tState = 0; - gTasks[ID].tPreEvoSpecies = currSpecies; - gTasks[ID].tPostEvoSpecies = postEvoSpecies; - gTasks[ID].tLearnsFirstMove = TRUE; - gTasks[ID].tEvoWasStopped = FALSE; - gTasks[ID].tPartyId = partyId; + sEvoStructPtr->evoTaskId = id = CreateTask(Task_TradeEvolutionScene, 0); + gTasks[id].tState = 0; + gTasks[id].tPreEvoSpecies = currSpecies; + gTasks[id].tPostEvoSpecies = postEvoSpecies; + gTasks[id].tLearnsFirstMove = TRUE; + gTasks[id].tEvoWasStopped = FALSE; + gTasks[id].tPartyId = partyId; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; @@ -521,7 +521,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit gBattle_BG3_X = 256; gBattle_BG3_Y = 0; - gTextFlags.useAlternateDownArrow = 1; + gTextFlags.useAlternateDownArrow = TRUE; SetVBlankCallback(VBlankCB_TradeEvolutionScene); SetMainCallback2(CB2_TradeEvolutionSceneUpdate); @@ -657,7 +657,7 @@ static void Task_EvolutionScene(u8 taskId) ShowBg(2); ShowBg(3); break; - case EVOSTATE_INTRO_MSG: + case EVOSTATE_INTRO_MSG: // print 'whoa, poke is evolving!!!' msg if (!gPaletteFade.active) { StringExpandPlaceholders(gStringVar4, gText_PkmnIsEvolving); @@ -665,7 +665,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_INTRO_MON_ANIM: + case EVOSTATE_INTRO_MON_ANIM: // wait for string, animate mon(and play its cry) if (!IsTextPrinterActive(0)) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->preEvoSpriteId, gTasks[taskId].tPreEvoSpecies); @@ -679,7 +679,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_START_MUSIC: + case EVOSTATE_START_MUSIC: // play evolution music and fade screen black if (!IsSEPlaying()) { // Start music, fade background to black @@ -688,7 +688,7 @@ static void Task_EvolutionScene(u8 taskId) BeginNormalPaletteFade(0x1C, 4, 0, 0x10, RGB_BLACK); } break; - case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL: + case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL: // launch moving bg task, preapre evo sparkles if (!gPaletteFade.active) { StartBgAnimation(FALSE); @@ -696,7 +696,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_SPARKLE_ARC: + case EVOSTATE_SPARKLE_ARC: // another set of evo sparkles if (!gTasks[sEvoGraphicsTaskId].isActive) { gTasks[taskId].tState++; @@ -711,7 +711,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_WAIT_CYCLE_MON_SPRITE: + case EVOSTATE_WAIT_CYCLE_MON_SPRITE: // wait for the above task to finish if (--sEvoStructPtr->delayTimer == 0) { sEvoStructPtr->delayTimer = 3; @@ -719,7 +719,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_SPARKLE_CIRCLE: + case EVOSTATE_SPARKLE_CIRCLE: // post evo sparkles sEvoGraphicsTaskId = EvolutionSparkles_CircleInward(); gTasks[taskId].tState++; break; @@ -730,7 +730,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_EVO_SOUND: + case EVOSTATE_EVO_SOUND: // play tu du sound after evolution if (!gTasks[sEvoGraphicsTaskId].isActive) { PlaySE(SE_EXP); @@ -747,14 +747,14 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_EVO_MON_ANIM: + case EVOSTATE_EVO_MON_ANIM: // animate mon if (!gPaletteFade.active) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->postEvoSpriteId, gTasks[taskId].tPostEvoSpecies); gTasks[taskId].tState++; } break; - case EVOSTATE_SET_MON_EVOLVED: + case EVOSTATE_SET_MON_EVOLVED: // congratulations string and rename prompt if (IsCryFinished()) { StringExpandPlaceholders(gStringVar4, gText_CongratsPkmnEvolved); @@ -769,7 +769,7 @@ static void Task_EvolutionScene(u8 taskId) IncrementGameStat(GAME_STAT_EVOLVED_POKEMON); } break; - case EVOSTATE_TRY_LEARN_MOVE: + case EVOSTATE_TRY_LEARN_MOVE: // check if it wants to learn a new move if (!IsTextPrinterActive(0)) { var = MonTryLearningNewMove(mon, gTasks[taskId].tLearnsFirstMove); @@ -803,7 +803,7 @@ static void Task_EvolutionScene(u8 taskId) } } break; - case EVOSTATE_END: + case EVOSTATE_END: // task has finished, return if (!gPaletteFade.active) { if (!(gTasks[taskId].tBits & TASK_BIT_LEARN_MOVE)) @@ -821,7 +821,7 @@ static void Task_EvolutionScene(u8 taskId) SetMainCallback2(gCB2_AfterEvolution); } break; - case EVOSTATE_CANCEL: + case EVOSTATE_CANCEL: // evolution has been canceled, stop music and re-fade palette if (!gTasks[sEvoGraphicsTaskId].isActive) { m4aMPlayAllStop(); @@ -829,19 +829,19 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_CANCEL_MON_ANIM: + case EVOSTATE_CANCEL_MON_ANIM: // animate pokemon trying to evolve again, evolution has been stopped if (!gPaletteFade.active) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->preEvoSpriteId, gTasks[taskId].tPreEvoSpecies); gTasks[taskId].tState++; } break; - case EVOSTATE_CANCEL_MSG: + case EVOSTATE_CANCEL_MSG: // after the animation, print the string 'WHOA IT DId NOT EVOLVE!!!' if (EvoScene_IsMonAnimFinished(sEvoStructPtr->preEvoSpriteId)) { - if (gTasks[taskId].tEvoWasStopped) + if (gTasks[taskId].tEvoWasStopped) // FRLG auto cancellation StringExpandPlaceholders(gStringVar4, gText_EllipsisQuestionMark); - else // Fire Red leftover probably + else StringExpandPlaceholders(gStringVar4, gText_PkmnStoppedEvolving); BattlePutTextOnWindow(gStringVar4, B_WIN_MSG); @@ -849,7 +849,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; } break; - case EVOSTATE_LEARNED_MOVE: + case EVOSTATE_LEARNED_MOVE: // pokemon learned a new move, print string and play a fanfare if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BufferMoveToLearnIntoBattleTextBuff2(); @@ -860,11 +860,11 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_TRY_LEARN_ANOTHER_MOVE: + case EVOSTATE_TRY_LEARN_ANOTHER_MOVE: // wait a bit and check if can learn another move if (!IsTextPrinterActive(0) && !IsSEPlaying() && --gTasks[taskId].tLearnsFirstMove == 0) gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; break; - case EVOSTATE_REPLACE_MOVE: + case EVOSTATE_REPLACE_MOVE: // try to learn a new move switch (gTasks[taskId].tLearnMoveState) { case MVSTATE_INTRO_MSG_1: @@ -1223,7 +1223,7 @@ static void Task_TradeEvolutionScene(u8 taskId) { DestroyTask(taskId); FREE_AND_SET_NULL(sEvoStructPtr); - gTextFlags.useAlternateDownArrow = 0; + gTextFlags.useAlternateDownArrow = FALSE; SetMainCallback2(gCB2_AfterEvolution); } break; @@ -1644,7 +1644,7 @@ static void PauseBgPaletteAnim(void) if (taskId != TASK_NONE) gTasks[taskId].tPaused = TRUE; - FillPalette(0, 0xA0, 0x20); + FillPalette(RGB_BLACK, 0xA0, 0x20); } #undef tPaused @@ -1658,7 +1658,7 @@ static void StopBgAnimation(void) if ((taskId = FindTaskIdByFunc(Task_AnimateBg)) != TASK_NONE) DestroyTask(taskId); - FillPalette(0, 0xA0, 0x20); + FillPalette(RGB_BLACK, 0xA0, 0x20); RestoreBgAfterAnim(); } diff --git a/src/link.c b/src/link.c index e88cde55a320..57e33c8115e4 100644 --- a/src/link.c +++ b/src/link.c @@ -1595,7 +1595,7 @@ void CB2_LinkError(void) ResetSpriteData(); FreeAllSpritePalettes(); ResetPaletteFadeControl(); - FillPalette(0, 0, 2); + FillPalette(RGB_BLACK, 0, 2); ResetTasks(); ScanlineEffect_Stop(); if (gWirelessCommType) diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index 702e87b3e987..c35fe8ed805e 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -102,7 +102,7 @@ void CB2_InitMysteryEventMenu(void) BuildOamBuffer(); RunTextPrinters(); UpdatePaletteFade(); - FillPalette(0, 0, 2); + FillPalette(RGB_BLACK, 0, 2); SetMainCallback2(CB2_MysteryEventMenu); } } diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index 5572ef833843..e3669e1f1214 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -1627,7 +1627,7 @@ static void Task_DuoFightAnim(u8 taskId) StopMapMusic(); } - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); SetVBlankCallback(VBlankCB_DuoFight); PlaySE(SE_DOWNPOUR); @@ -2284,7 +2284,7 @@ static void Task_RayDescendsAnim(u8 taskId) LoadDescendsSceneGfx(); SetGpuRegBits(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16)); - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); SetVBlankCallback(VBlankCB_RayquazaScene); sRayScene->revealedLightLine = 0; sRayScene->revealedLightTimer = 0; @@ -2501,7 +2501,7 @@ static void Task_RayChargesAnim(u8 taskId) InitChargesSceneBgs(); LoadChargesSceneGfx(); SetWindowsHideVertBorders(); - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); SetVBlankCallback(VBlankCB_RayquazaScene); tState = 0; tTimer = 0; @@ -2697,7 +2697,7 @@ static void Task_RayChasesAwayAnim(u8 taskId) ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG2_ON); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_TGT2_BG1 | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(9, 14)); - BlendPalettes(PALETTES_ALL, 0x10, 0); + BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); SetVBlankCallback(VBlankCB_RayquazaScene); tState = 0; tTimer = 0; From dc47a959da7e8e9160dd9fd60fb203e32e0f504d Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Wed, 27 Jul 2022 20:33:34 -0400 Subject: [PATCH 636/762] Reverted comments from pokefirered --- src/evolution_scene.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 01ad688983f5..085f88da5846 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -657,7 +657,7 @@ static void Task_EvolutionScene(u8 taskId) ShowBg(2); ShowBg(3); break; - case EVOSTATE_INTRO_MSG: // print 'whoa, poke is evolving!!!' msg + case EVOSTATE_INTRO_MSG: if (!gPaletteFade.active) { StringExpandPlaceholders(gStringVar4, gText_PkmnIsEvolving); @@ -665,7 +665,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_INTRO_MON_ANIM: // wait for string, animate mon(and play its cry) + case EVOSTATE_INTRO_MON_ANIM: if (!IsTextPrinterActive(0)) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->preEvoSpriteId, gTasks[taskId].tPreEvoSpecies); @@ -679,7 +679,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_START_MUSIC: // play evolution music and fade screen black + case EVOSTATE_START_MUSIC: if (!IsSEPlaying()) { // Start music, fade background to black @@ -688,7 +688,7 @@ static void Task_EvolutionScene(u8 taskId) BeginNormalPaletteFade(0x1C, 4, 0, 0x10, RGB_BLACK); } break; - case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL: // launch moving bg task, preapre evo sparkles + case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL: if (!gPaletteFade.active) { StartBgAnimation(FALSE); @@ -696,7 +696,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_SPARKLE_ARC: // another set of evo sparkles + case EVOSTATE_SPARKLE_ARC: if (!gTasks[sEvoGraphicsTaskId].isActive) { gTasks[taskId].tState++; @@ -711,7 +711,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_WAIT_CYCLE_MON_SPRITE: // wait for the above task to finish + case EVOSTATE_WAIT_CYCLE_MON_SPRITE: if (--sEvoStructPtr->delayTimer == 0) { sEvoStructPtr->delayTimer = 3; @@ -719,7 +719,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_SPARKLE_CIRCLE: // post evo sparkles + case EVOSTATE_SPARKLE_CIRCLE: sEvoGraphicsTaskId = EvolutionSparkles_CircleInward(); gTasks[taskId].tState++; break; @@ -730,7 +730,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_EVO_SOUND: // play tu du sound after evolution + case EVOSTATE_EVO_SOUND: if (!gTasks[sEvoGraphicsTaskId].isActive) { PlaySE(SE_EXP); @@ -747,14 +747,14 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_EVO_MON_ANIM: // animate mon + case EVOSTATE_EVO_MON_ANIM: if (!gPaletteFade.active) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->postEvoSpriteId, gTasks[taskId].tPostEvoSpecies); gTasks[taskId].tState++; } break; - case EVOSTATE_SET_MON_EVOLVED: // congratulations string and rename prompt + case EVOSTATE_SET_MON_EVOLVED: if (IsCryFinished()) { StringExpandPlaceholders(gStringVar4, gText_CongratsPkmnEvolved); @@ -769,7 +769,7 @@ static void Task_EvolutionScene(u8 taskId) IncrementGameStat(GAME_STAT_EVOLVED_POKEMON); } break; - case EVOSTATE_TRY_LEARN_MOVE: // check if it wants to learn a new move + case EVOSTATE_TRY_LEARN_MOVE: if (!IsTextPrinterActive(0)) { var = MonTryLearningNewMove(mon, gTasks[taskId].tLearnsFirstMove); @@ -803,7 +803,7 @@ static void Task_EvolutionScene(u8 taskId) } } break; - case EVOSTATE_END: // task has finished, return + case EVOSTATE_END: if (!gPaletteFade.active) { if (!(gTasks[taskId].tBits & TASK_BIT_LEARN_MOVE)) @@ -821,7 +821,7 @@ static void Task_EvolutionScene(u8 taskId) SetMainCallback2(gCB2_AfterEvolution); } break; - case EVOSTATE_CANCEL: // evolution has been canceled, stop music and re-fade palette + case EVOSTATE_CANCEL: if (!gTasks[sEvoGraphicsTaskId].isActive) { m4aMPlayAllStop(); @@ -829,14 +829,14 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_CANCEL_MON_ANIM: // animate pokemon trying to evolve again, evolution has been stopped + case EVOSTATE_CANCEL_MON_ANIM: if (!gPaletteFade.active) { EvoScene_DoMonAnimAndCry(sEvoStructPtr->preEvoSpriteId, gTasks[taskId].tPreEvoSpecies); gTasks[taskId].tState++; } break; - case EVOSTATE_CANCEL_MSG: // after the animation, print the string 'WHOA IT DId NOT EVOLVE!!!' + case EVOSTATE_CANCEL_MSG: if (EvoScene_IsMonAnimFinished(sEvoStructPtr->preEvoSpriteId)) { if (gTasks[taskId].tEvoWasStopped) // FRLG auto cancellation @@ -849,7 +849,7 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; } break; - case EVOSTATE_LEARNED_MOVE: // pokemon learned a new move, print string and play a fanfare + case EVOSTATE_LEARNED_MOVE: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BufferMoveToLearnIntoBattleTextBuff2(); @@ -860,11 +860,11 @@ static void Task_EvolutionScene(u8 taskId) gTasks[taskId].tState++; } break; - case EVOSTATE_TRY_LEARN_ANOTHER_MOVE: // wait a bit and check if can learn another move + case EVOSTATE_TRY_LEARN_ANOTHER_MOVE: if (!IsTextPrinterActive(0) && !IsSEPlaying() && --gTasks[taskId].tLearnsFirstMove == 0) gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE; break; - case EVOSTATE_REPLACE_MOVE: // try to learn a new move + case EVOSTATE_REPLACE_MOVE: switch (gTasks[taskId].tLearnMoveState) { case MVSTATE_INTRO_MSG_1: From 09af7422d526b8c8029d88ddd5b0ba72f46e8fe9 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 28 Jul 2022 01:27:05 -0400 Subject: [PATCH 637/762] Further cleaning after comparing with pokefirered STAT_BUFF changed to STAT_CHANGE, as it also uses debuffs --- data/battle_scripts_1.s | 62 +++++++++---------- include/constants/battle_script_commands.h | 4 +- src/battle_main.c | 38 ++++++------ src/battle_script_commands.c | 72 +++++++++++----------- 4 files changed, 89 insertions(+), 87 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 8dd80c915813..880957859ac8 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -490,7 +490,7 @@ BattleScript_EffectStatUp:: BattleScript_EffectStatUpAfterAtkCanceler:: attackstring ppreduce - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_StatUpEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_StatUpEnd jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpAttackAnim pause B_WAIT_TIME_SHORT goto BattleScript_StatUpPrintString @@ -536,7 +536,7 @@ BattleScript_EffectStatDown:: accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_StatDownEnd + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_StatDownEnd jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_StatDownDoAnim jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_FELL_EMPTY, BattleScript_StatDownEnd pause B_WAIT_TIME_SHORT @@ -1492,17 +1492,17 @@ BattleScript_CurseTrySpeed:: attackanimation waitanimation setstatchanger STAT_SPEED, 1, TRUE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryAttack + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseTryAttack printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG BattleScript_CurseTryAttack:: setstatchanger STAT_ATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseTryDefense + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseTryDefense printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_CurseTryDefense:: setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CurseEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CurseEnd printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_CurseEnd:: @@ -1614,7 +1614,7 @@ BattleScript_EffectSwagger:: attackanimation waitanimation setstatchanger STAT_ATK, 2, FALSE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_SwaggerTryConfuse + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_SwaggerTryConfuse jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SwaggerTryConfuse setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 @@ -1813,7 +1813,7 @@ BattleScript_EffectSkullBash:: setbyte sTWOTURN_STRINGID, B_MSG_TURN1_SKULL_BASH call BattleScriptFirstChargingTurn setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_SkullBashEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_SkullBashEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_SkullBashEnd setgraphicalstatchangevalues playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 @@ -2016,7 +2016,7 @@ BattleScript_EffectDefenseCurl:: ppreduce setdefensecurlbit setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DefenseCurlDoStatUpAnim + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DefenseCurlDoStatUpAnim jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_StatUpPrintString attackanimation waitanimation @@ -2157,7 +2157,7 @@ BattleScript_EffectFlatter:: attackanimation waitanimation setstatchanger STAT_SPATK, 1, FALSE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_FlatterTryConfuse + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_FlatterTryConfuse jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_FlatterTryConfuse setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 @@ -2214,7 +2214,7 @@ BattleScript_EffectMemento:: playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_MULTIPLE_STATS playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_ATK, 2, TRUE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectMementoTrySpAtk @ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTrySpAtk printfromtable gStatDownStringIds @@ -2222,7 +2222,7 @@ BattleScript_EffectMemento:: BattleScript_EffectMementoTrySpAtk: playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_EffectMementoTryFaint + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectMementoTryFaint @ Greater than B_MSG_DEFENDER_STAT_FELL is checking if the stat cannot decrease jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, B_MSG_DEFENDER_STAT_FELL, BattleScript_EffectMementoTryFaint printfromtable gStatDownStringIds @@ -2662,14 +2662,14 @@ BattleScript_TickleDoMoveAnim:: playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE setstatchanger STAT_ATK, 1, TRUE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleTryLowerDef + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleTryLowerDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleTryLowerDef printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG BattleScript_TickleTryLowerDef:: playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE - statbuffchange STAT_BUFF_ALLOW_PTR, BattleScript_TickleEnd + statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_TickleEnd printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG @@ -2695,13 +2695,13 @@ BattleScript_CosmicPowerDoMoveAnim:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0 setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CosmicPowerTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerTrySpDef printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_CosmicPowerTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CosmicPowerEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CosmicPowerEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CosmicPowerEnd printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG @@ -2724,13 +2724,13 @@ BattleScript_BulkUpDoMoveAnim:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0 setstatchanger STAT_ATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpTryDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BulkUpTryDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpTryDef printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_BulkUpTryDef:: setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BulkUpEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BulkUpEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_BulkUpEnd printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG @@ -2749,13 +2749,13 @@ BattleScript_CalmMindDoMoveAnim:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0 setstatchanger STAT_SPATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindTrySpDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CalmMindTrySpDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindTrySpDef printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_CalmMindTrySpDef:: setstatchanger STAT_SPDEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_CalmMindEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_CalmMindEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_CalmMindEnd printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG @@ -2781,13 +2781,13 @@ BattleScript_DragonDanceDoMoveAnim:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0 setstatchanger STAT_ATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceTrySpeed + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DragonDanceTrySpeed jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceTrySpeed printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_DragonDanceTrySpeed:: setstatchanger STAT_SPEED, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_DragonDanceEnd + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_DragonDanceEnd jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_DragonDanceEnd printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG @@ -3458,27 +3458,27 @@ BattleScript_AllStatsUpAtk:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0 setstatchanger STAT_ATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpDef printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpDef:: setstatchanger STAT_DEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpeed + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpeed printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpeed:: setstatchanger STAT_SPEED, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpAtk + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpAtk printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpAtk:: setstatchanger STAT_SPATK, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpSpDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpSpDef printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpSpDef:: setstatchanger STAT_SPDEF, 1, FALSE - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_AllStatsUpRet + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_AllStatsUpRet printfromtable gStatUpStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AllStatsUpRet:: @@ -3625,14 +3625,14 @@ BattleScript_AtkDefDown:: playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS playstatchangeanimation BS_ATTACKER, BIT_ATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE setstatchanger STAT_ATK, 1, TRUE - statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_TryDef + statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_AtkDefDown_TryDef jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_TryDef printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG BattleScript_AtkDefDown_TryDef:: playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE - statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_AtkDefDown_End + statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_AtkDefDown_End jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_AtkDefDown_End printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG @@ -3698,7 +3698,7 @@ BattleScript_SAtkDown2:: setbyte sSTAT_ANIM_PLAYED, FALSE playstatchangeanimation BS_ATTACKER, BIT_SPATK, STAT_CHANGE_CANT_PREVENT | STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO setstatchanger STAT_SPATK, 2, TRUE - statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_BUFF_ALLOW_PTR, BattleScript_SAtkDown2End + statbuffchange MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN | STAT_CHANGE_ALLOW_PTR, BattleScript_SAtkDown2End jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_DECREASE, BattleScript_SAtkDown2End printfromtable gStatDownStringIds waitmessage B_WAIT_TIME_LONG @@ -4029,7 +4029,7 @@ BattleScript_IntimidateActivatesLoop: jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidatePrevented - statbuffchange STAT_BUFF_NOT_PROTECT_AFFECTED | STAT_BUFF_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement + statbuffchange STAT_CHANGE_NOT_PROTECT_AFFECTED | STAT_CHANGE_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateActivatesLoopIncrement setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 @@ -4408,7 +4408,7 @@ BattleScript_BerryConfuseHealEnd2:: BattleScript_BerryStatRaiseEnd2:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT - statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_BerryStatRaiseDoStatUp BattleScript_BerryStatRaiseDoStatUp:: setbyte cMULTISTRING_CHOOSER, B_MSG_STAT_ROSE_ITEM call BattleScript_StatUp diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index 83aacf316065..0c7d1faebc3d 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -115,8 +115,8 @@ #define SWITCH_IGNORE_ESCAPE_PREVENTION (1 << 7) // Cmd_statbuffchange -#define STAT_BUFF_ALLOW_PTR (1 << 0) // If set, allow use of jumpptr. Set in every use of statbuffchange -#define STAT_BUFF_NOT_PROTECT_AFFECTED (1 << 5) +#define STAT_CHANGE_ALLOW_PTR (1 << 0) // If set, allow use of jumpptr. Set in every use of statbuffchange +#define STAT_CHANGE_NOT_PROTECT_AFFECTED (1 << 5) // stat change flags for Cmd_playstatchangeanimation #define STAT_CHANGE_NEGATIVE (1 << 0) diff --git a/src/battle_main.c b/src/battle_main.c index f61d5eaae015..480a616c81b0 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3275,25 +3275,25 @@ void FaintClearSetData(void) for (i = 0; i < sizeof(struct DisableStruct); i++) ptr[i] = 0; - gProtectStructs[gActiveBattler].protected = 0; - gProtectStructs[gActiveBattler].endured = 0; - gProtectStructs[gActiveBattler].noValidMoves = 0; - gProtectStructs[gActiveBattler].helpingHand = 0; - gProtectStructs[gActiveBattler].bounceMove = 0; - gProtectStructs[gActiveBattler].stealMove = 0; - gProtectStructs[gActiveBattler].flag0Unknown = 0; - gProtectStructs[gActiveBattler].prlzImmobility = 0; - gProtectStructs[gActiveBattler].confusionSelfDmg = 0; - gProtectStructs[gActiveBattler].targetNotAffected = 0; - gProtectStructs[gActiveBattler].chargingTurn = 0; - gProtectStructs[gActiveBattler].fleeType = 0; - gProtectStructs[gActiveBattler].usedImprisonedMove = 0; - gProtectStructs[gActiveBattler].loveImmobility = 0; - gProtectStructs[gActiveBattler].usedDisabledMove = 0; - gProtectStructs[gActiveBattler].usedTauntedMove = 0; - gProtectStructs[gActiveBattler].flag2Unknown = 0; - gProtectStructs[gActiveBattler].flinchImmobility = 0; - gProtectStructs[gActiveBattler].notFirstStrike = 0; + gProtectStructs[gActiveBattler].protected = FALSE; + gProtectStructs[gActiveBattler].endured = FALSE; + gProtectStructs[gActiveBattler].noValidMoves = FALSE; + gProtectStructs[gActiveBattler].helpingHand = FALSE; + gProtectStructs[gActiveBattler].bounceMove = FALSE; + gProtectStructs[gActiveBattler].stealMove = FALSE; + gProtectStructs[gActiveBattler].flag0Unknown = FALSE; + gProtectStructs[gActiveBattler].prlzImmobility = FALSE; + gProtectStructs[gActiveBattler].confusionSelfDmg = FALSE; + gProtectStructs[gActiveBattler].targetNotAffected = FALSE; + gProtectStructs[gActiveBattler].chargingTurn = FALSE; + gProtectStructs[gActiveBattler].fleeType = FALSE; + gProtectStructs[gActiveBattler].usedImprisonedMove = FALSE; + gProtectStructs[gActiveBattler].loveImmobility = FALSE; + gProtectStructs[gActiveBattler].usedDisabledMove = FALSE; + gProtectStructs[gActiveBattler].usedTauntedMove = FALSE; + gProtectStructs[gActiveBattler].flag2Unknown = FALSE; + gProtectStructs[gActiveBattler].flinchImmobility = FALSE; + gProtectStructs[gActiveBattler].notFirstStrike = FALSE; gDisableStructs[gActiveBattler].isFirstTurn = 2; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 5f0ecad6899a..ea857a3fe534 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -961,7 +961,7 @@ static void Cmd_attackcanceler(void) if (gProtectStructs[gBattlerTarget].bounceMove && gBattleMoves[gCurrentMove].flags & FLAG_MAGIC_COAT_AFFECTED) { PressurePPLose(gBattlerAttacker, gBattlerTarget, MOVE_MAGIC_COAT); - gProtectStructs[gBattlerTarget].bounceMove = 0; + gProtectStructs[gBattlerTarget].bounceMove = FALSE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_MagicCoatBounce; return; @@ -972,7 +972,7 @@ static void Cmd_attackcanceler(void) if ((gProtectStructs[gBattlerByTurnOrder[i]].stealMove) && gBattleMoves[gCurrentMove].flags & FLAG_SNATCH_AFFECTED) { PressurePPLose(gBattlerAttacker, gBattlerByTurnOrder[i], MOVE_SNATCH); - gProtectStructs[gBattlerByTurnOrder[i]].stealMove = 0; + gProtectStructs[gBattlerByTurnOrder[i]].stealMove = FALSE; gBattleScripting.battler = gBattlerByTurnOrder[i]; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_SnatchedMove; @@ -982,7 +982,7 @@ static void Cmd_attackcanceler(void) if (gSpecialStatuses[gBattlerTarget].lightningRodRedirected) { - gSpecialStatuses[gBattlerTarget].lightningRodRedirected = 0; + gSpecialStatuses[gBattlerTarget].lightningRodRedirected = FALSE; gLastUsedAbility = ABILITY_LIGHTNING_ROD; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_TookAttack; @@ -2754,7 +2754,7 @@ void SetMoveEffect(bool8 primary, u8 certain) { u16* changedItem = &gBattleStruct->changedItems[gBattlerAttacker]; gLastUsedItem = *changedItem = gBattleMons[gBattlerTarget].item; - gBattleMons[gBattlerTarget].item = 0; + gBattleMons[gBattlerTarget].item = ITEM_NONE; gActiveBattler = gBattlerAttacker; BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gLastUsedItem), &gLastUsedItem); @@ -2851,7 +2851,7 @@ void SetMoveEffect(bool8 primary, u8 certain) side = GetBattlerSide(gEffectBattler); gLastUsedItem = gBattleMons[gEffectBattler].item; - gBattleMons[gEffectBattler].item = 0; + gBattleMons[gEffectBattler].item = ITEM_NONE; gWishFutureKnock.knockedOffMons[side] |= gBitTable[gBattlerPartyIndexes[gEffectBattler]]; BattleScriptPush(gBattlescriptCurrInstr + 1); @@ -3055,7 +3055,7 @@ static void Cmd_jumpifstatus(void) u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2); const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); - if (gBattleMons[battlerId].status1 & flags && gBattleMons[battlerId].hp) + if (gBattleMons[battlerId].status1 & flags && gBattleMons[battlerId].hp != 0) gBattlescriptCurrInstr = jumpPtr; else gBattlescriptCurrInstr += 10; @@ -3067,7 +3067,7 @@ static void Cmd_jumpifstatus2(void) u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2); const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); - if (gBattleMons[battlerId].status2 & flags && gBattleMons[battlerId].hp) + if (gBattleMons[battlerId].status2 & flags && gBattleMons[battlerId].hp != 0) gBattlescriptCurrInstr = jumpPtr; else gBattlescriptCurrInstr += 10; @@ -3322,7 +3322,9 @@ static void Cmd_getexp(void) else { // music change in wild battle after fainting a poke - if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER) && gBattleMons[0].hp && !gBattleStruct->wildVictorySong) + if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER) + && gBattleMons[0].hp + && !gBattleStruct->wildVictorySong) { BattleStopLowHpSound(); PlayBGM(MUS_VICTORY_WILD); @@ -3488,8 +3490,8 @@ static void Cmd_getexp(void) if (gBattleControllerExecFlags == 0) { // not sure why gf clears the item and ability here - gBattleMons[gBattlerFainted].item = 0; - gBattleMons[gBattlerFainted].ability = 0; + gBattleMons[gBattlerFainted].item = ITEM_NONE; + gBattleMons[gBattlerFainted].ability = ABILITY_NONE; gBattlescriptCurrInstr += 2; } break; @@ -4609,7 +4611,7 @@ static void Cmd_switchindataupdate(void) i = GetBattlerSide(gActiveBattler); if (gWishFutureKnock.knockedOffMons[i] & gBitTable[gBattlerPartyIndexes[gActiveBattler]]) { - gBattleMons[gActiveBattler].item = 0; + gBattleMons[gActiveBattler].item = ITEM_NONE; } if (gBattleMoves[gCurrentMove].effect == EFFECT_BATON_PASS) @@ -5251,7 +5253,7 @@ static void Cmd_switchineffects(void) u32 hitmarkerFaintBits = gHitMarker >> 28; gBattlerFainted++; - while (1) + while (TRUE) { if (hitmarkerFaintBits & gBitTable[gBattlerFainted] && !(gAbsentBattlerFlags & gBitTable[gBattlerFainted])) break; @@ -5872,7 +5874,7 @@ static void Cmd_removeitem(void) usedHeldItem = &gBattleStruct->usedHeldItems[gActiveBattler]; *usedHeldItem = gBattleMons[gActiveBattler].item; - gBattleMons[gActiveBattler].item = 0; + gBattleMons[gActiveBattler].item = ITEM_NONE; BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item); MarkBattlerForControllerExec(gActiveBattler); @@ -6895,8 +6897,8 @@ static void Cmd_negativedamage(void) gBattlescriptCurrInstr++; } -#define STAT_BUFF_WORKED 0 -#define STAT_BUFF_DIDNT_WORK 1 +#define STAT_CHANGE_WORKED 0 +#define STAT_CHANGE_DIDNT_WORK 1 static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) { @@ -6915,9 +6917,9 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) certain++; flags &= ~MOVE_EFFECT_CERTAIN; - if (flags & STAT_BUFF_NOT_PROTECT_AFFECTED) + if (flags & STAT_CHANGE_NOT_PROTECT_AFFECTED) notProtectAffected++; - flags &= ~STAT_BUFF_NOT_PROTECT_AFFECTED; + flags &= ~STAT_CHANGE_NOT_PROTECT_AFFECTED; PREPARE_STAT_BUFFER(gBattleTextBuff1, statId) @@ -6926,7 +6928,7 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) if (gSideTimers[GET_BATTLER_SIDE(gActiveBattler)].mistTimer && !certain && gCurrentMove != MOVE_CURSE) { - if (flags == STAT_BUFF_ALLOW_PTR) + if (flags == STAT_CHANGE_ALLOW_PTR) { if (gSpecialStatuses[gActiveBattler].statLowered) { @@ -6940,19 +6942,19 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gSpecialStatuses[gActiveBattler].statLowered = 1; } } - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else if (gCurrentMove != MOVE_CURSE && notProtectAffected != TRUE && JumpIfMoveAffectedByProtect(0)) { gBattlescriptCurrInstr = BattleScript_ButItFailed; - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else if ((gBattleMons[gActiveBattler].ability == ABILITY_CLEAR_BODY || gBattleMons[gActiveBattler].ability == ABILITY_WHITE_SMOKE) && !certain && gCurrentMove != MOVE_CURSE) { - if (flags == STAT_BUFF_ALLOW_PTR) + if (flags == STAT_CHANGE_ALLOW_PTR) { if (gSpecialStatuses[gActiveBattler].statLowered) { @@ -6968,12 +6970,12 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gSpecialStatuses[gActiveBattler].statLowered = 1; } } - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else if (gBattleMons[gActiveBattler].ability == ABILITY_KEEN_EYE && !certain && statId == STAT_ACC) { - if (flags == STAT_BUFF_ALLOW_PTR) + if (flags == STAT_CHANGE_ALLOW_PTR) { BattleScriptPush(BS_ptr); gBattleScripting.battler = gActiveBattler; @@ -6981,12 +6983,12 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gLastUsedAbility = gBattleMons[gActiveBattler].ability; RecordAbilityBattle(gActiveBattler, gLastUsedAbility); } - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else if (gBattleMons[gActiveBattler].ability == ABILITY_HYPER_CUTTER && !certain && statId == STAT_ATK) { - if (flags == STAT_BUFF_ALLOW_PTR) + if (flags == STAT_CHANGE_ALLOW_PTR) { BattleScriptPush(BS_ptr); gBattleScripting.battler = gActiveBattler; @@ -6994,11 +6996,11 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gLastUsedAbility = gBattleMons[gActiveBattler].ability; RecordAbilityBattle(gActiveBattler, gLastUsedAbility); } - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else if (gBattleMons[gActiveBattler].ability == ABILITY_SHIELD_DUST && flags == 0) { - return STAT_BUFF_DIDNT_WORK; + return STAT_CHANGE_DIDNT_WORK; } else // try to decrease { @@ -7059,19 +7061,19 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) if (gBattleMons[gActiveBattler].statStages[statId] > MAX_STAT_STAGE) gBattleMons[gActiveBattler].statStages[statId] = MAX_STAT_STAGE; - if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && flags & STAT_BUFF_ALLOW_PTR) + if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && flags & STAT_CHANGE_ALLOW_PTR) gMoveResultFlags |= MOVE_RESULT_MISSED; - if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && !(flags & STAT_BUFF_ALLOW_PTR)) - return STAT_BUFF_DIDNT_WORK; + if (gBattleCommunication[MULTISTRING_CHOOSER] == B_MSG_STAT_WONT_INCREASE && !(flags & STAT_CHANGE_ALLOW_PTR)) + return STAT_CHANGE_DIDNT_WORK; - return STAT_BUFF_WORKED; + return STAT_CHANGE_WORKED; } static void Cmd_statbuffchange(void) { const u8* jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2); - if (ChangeStatBuffs(gBattleScripting.statChanger & 0xF0, GET_STAT_BUFF_ID(gBattleScripting.statChanger), gBattlescriptCurrInstr[1], jumpPtr) == STAT_BUFF_WORKED) + if (ChangeStatBuffs(gBattleScripting.statChanger & 0xF0, GET_STAT_BUFF_ID(gBattleScripting.statChanger), gBattlescriptCurrInstr[1], jumpPtr) == STAT_CHANGE_WORKED) gBattlescriptCurrInstr += 6; } @@ -7808,7 +7810,7 @@ static void Cmd_mimicattackcopy(void) static void Cmd_metronome(void) { - while (1) + while (TRUE) { s32 i; @@ -7819,7 +7821,7 @@ static void Cmd_metronome(void) for (i = 0; i < MAX_MON_MOVES; i++); // ? i = -1; - while (1) + while (TRUE) { i++; if (sMovesForbiddenToCopy[i] == gCurrentMove) @@ -9433,7 +9435,7 @@ static void Cmd_trysetmagiccoat(void) } else { - gProtectStructs[gBattlerAttacker].bounceMove = 1; + gProtectStructs[gBattlerAttacker].bounceMove = TRUE; gBattlescriptCurrInstr += 5; } } From 7a8c28cccafd4ee9e575dc07a4d8cabe316343f7 Mon Sep 17 00:00:00 2001 From: Jaizu Date: Fri, 29 Jul 2022 10:52:36 +0200 Subject: [PATCH 638/762] Remove duplicated CB2_InitCopyrightScreenAfterBootup --- include/intro.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/intro.h b/include/intro.h index 198ae2669639..8ba030a28706 100644 --- a/include/intro.h +++ b/include/intro.h @@ -7,7 +7,6 @@ // Exported ROM declarations void CB2_InitCopyrightScreenAfterBootup(void); -void CB2_InitCopyrightScreenAfterBootup(void); void CB2_InitCopyrightScreenAfterTitleScreen(void); void PanFadeAndZoomScreen(u16, u16, u16, u16); From 9caca170645f1dca20463ef88ce789fd6dc6329c Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 09:43:16 -0400 Subject: [PATCH 639/762] Cleanup by syncing src/battle_script_commands.c with pokefirered --- include/constants/battle.h | 12 ++-- include/constants/battle_script_commands.h | 6 +- src/battle_arena.c | 2 +- src/battle_script_commands.c | 79 ++++++++++------------ src/battle_util.c | 2 +- 5 files changed, 47 insertions(+), 54 deletions(-) diff --git a/include/constants/battle.h b/include/constants/battle.h index 31bc7fa3fb92..2c35c5657cdb 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -53,17 +53,17 @@ #define BATTLE_TYPE_MULTI (1 << 6) #define BATTLE_TYPE_SAFARI (1 << 7) #define BATTLE_TYPE_BATTLE_TOWER (1 << 8) -#define BATTLE_TYPE_WALLY_TUTORIAL (1 << 9) +#define BATTLE_TYPE_WALLY_TUTORIAL (1 << 9) // Used in pokefirered as BATTLE_TYPE_OLD_MAN_TUTORIAL. #define BATTLE_TYPE_ROAMER (1 << 10) #define BATTLE_TYPE_EREADER_TRAINER (1 << 11) #define BATTLE_TYPE_KYOGRE_GROUDON (1 << 12) #define BATTLE_TYPE_LEGENDARY (1 << 13) #define BATTLE_TYPE_REGI (1 << 14) -#define BATTLE_TYPE_TWO_OPPONENTS (1 << 15) -#define BATTLE_TYPE_DOME (1 << 16) -#define BATTLE_TYPE_PALACE (1 << 17) -#define BATTLE_TYPE_ARENA (1 << 18) -#define BATTLE_TYPE_FACTORY (1 << 19) +#define BATTLE_TYPE_TWO_OPPONENTS (1 << 15) // Used in pokefirered as BATTLE_TYPE_GHOST. +#define BATTLE_TYPE_DOME (1 << 16) // Used in pokefirered as BATTLE_TYPE_POKEDUDE. +#define BATTLE_TYPE_PALACE (1 << 17) // Used in pokefirered as BATTLE_TYPE_WILD_SCRIPTED. +#define BATTLE_TYPE_ARENA (1 << 18) // Used in pokefirered as BATTLE_TYPE_LEGENDARY_FRLG. +#define BATTLE_TYPE_FACTORY (1 << 19) // Used in pokefirered as BATTLE_TYPE_TRAINER_TOWER. #define BATTLE_TYPE_PIKE (1 << 20) #define BATTLE_TYPE_PYRAMID (1 << 21) #define BATTLE_TYPE_INGAME_PARTNER (1 << 22) diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index 0c7d1faebc3d..c21276a4eff8 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -53,15 +53,15 @@ #define BS_EFFECT_BATTLER 2 #define BS_FAINTED 3 #define BS_ATTACKER_WITH_PARTNER 4 // for Cmd_updatestatusicon -#define BS_FAINTED_LINK_MULTIPLE_1 5 -#define BS_FAINTED_LINK_MULTIPLE_2 6 +#define BS_FAINTED_LINK_MULTIPLE_1 5 // for openpartyscreen +#define BS_FAINTED_LINK_MULTIPLE_2 6 // for openpartyscreen #define BS_BATTLER_0 7 #define BS_ATTACKER_SIDE 8 // for Cmd_jumpifability #define BS_NOT_ATTACKER_SIDE 9 // for Cmd_jumpifability #define BS_SCRIPTING 10 #define BS_PLAYER1 11 #define BS_OPPONENT1 12 -#define BS_PLAYER2 13 +#define BS_PLAYER2 13 // for Cmd_updatestatusicon #define BS_OPPONENT2 14 // Cmd_accuracycheck diff --git a/src/battle_arena.c b/src/battle_arena.c index a7c74366b515..9fb477a6dcf3 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -719,7 +719,7 @@ void BattleArena_AddSkillPoints(u8 battler) } else if (gMoveResultFlags & MOVE_RESULT_NO_EFFECT) { - if (!(gMoveResultFlags & MOVE_RESULT_MISSED) || gBattleCommunication[6] != 1) + if (!(gMoveResultFlags & MOVE_RESULT_MISSED) || gBattleCommunication[MISS_TYPE] != 1) skillPoints[battler] -= 2; } else if ((gMoveResultFlags & MOVE_RESULT_SUPER_EFFECTIVE) && (gMoveResultFlags & MOVE_RESULT_NOT_VERY_EFFECTIVE)) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index ea857a3fe534..8e4c93153583 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -667,7 +667,8 @@ static const u8* const sMoveEffectBS_Ptrs[] = [MOVE_EFFECT_RECOIL_33] = BattleScript_MoveEffectRecoil, }; -static const struct WindowTemplate sUnusedWinTemplate = { +static const struct WindowTemplate sUnusedWinTemplate = +{ .bg = 0, .tilemapLeft = 1, .tilemapTop = 3, @@ -1190,7 +1191,8 @@ static void Cmd_accuracycheck(void) static void Cmd_attackstring(void) { if (gBattleControllerExecFlags) - return; + return; + if (!(gHitMarker & (HITMARKER_NO_ATTACKSTRING | HITMARKER_ATTACKSTRING_PRINTED))) { PrepareStringBattle(STRINGID_USEDMOVE, gBattlerAttacker); @@ -1751,8 +1753,8 @@ static void Cmd_attackanimation(void) else { if ((gBattleMoves[gCurrentMove].target & MOVE_TARGET_BOTH - || gBattleMoves[gCurrentMove].target & MOVE_TARGET_FOES_AND_ALLY - || gBattleMoves[gCurrentMove].target & MOVE_TARGET_DEPENDS) + || gBattleMoves[gCurrentMove].target & MOVE_TARGET_FOES_AND_ALLY + || gBattleMoves[gCurrentMove].target & MOVE_TARGET_DEPENDS) && gBattleScripting.animTargetsHit) { gBattlescriptCurrInstr++; @@ -1777,8 +1779,8 @@ static void Cmd_attackanimation(void) multihit = gMultiHitCounter; BtlController_EmitMoveAnimation(BUFFER_A, gCurrentMove, gBattleScripting.animTurn, gBattleMovePower, gBattleMoveDamage, gBattleMons[gBattlerAttacker].friendship, &gDisableStructs[gBattlerAttacker], multihit); - gBattleScripting.animTurn += 1; - gBattleScripting.animTargetsHit += 1; + gBattleScripting.animTurn++; + gBattleScripting.animTargetsHit++; MarkBattlerForControllerExec(gBattlerAttacker); gBattlescriptCurrInstr++; } @@ -2154,7 +2156,7 @@ static void Cmd_printfromtable(void) { if (gBattleControllerExecFlags == 0) { - const u16 *ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u16* ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); ptr += gBattleCommunication[MULTISTRING_CHOOSER]; PrepareStringBattle(*ptr, gBattlerAttacker); @@ -2168,7 +2170,7 @@ static void Cmd_printselectionstringfromtable(void) { if (gBattleControllerExecFlags == 0) { - const u16 *ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u16* ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); ptr += gBattleCommunication[MULTISTRING_CHOOSER]; gActiveBattler = gBattlerAttacker; @@ -2537,7 +2539,6 @@ void SetMoveEffect(bool8 primary, u8 certain) case MOVE_EFFECT_UPROAR: if (!(gBattleMons[gEffectBattler].status2 & STATUS2_UPROAR)) { - gBattleMons[gEffectBattler].status2 |= STATUS2_MULTIPLETURNS; gLockedMoves[gEffectBattler] = gCurrentMove; gBattleMons[gEffectBattler].status2 |= STATUS2_UPROAR_TURN((Random() & 3) + 2); // 2-5 turns @@ -2641,7 +2642,7 @@ void SetMoveEffect(bool8 primary, u8 certain) case MOVE_EFFECT_EVS_MINUS_1: if (ChangeStatBuffs(SET_STAT_BUFF_VALUE(1) | STAT_BUFF_NEGATIVE, gBattleCommunication[MOVE_EFFECT_BYTE] - MOVE_EFFECT_ATK_MINUS_1 + 1, - affectsUser, 0)) + affectsUser, 0)) { gBattlescriptCurrInstr++; } @@ -2770,7 +2771,6 @@ void SetMoveEffect(bool8 primary, u8 certain) *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 1) = 0; } - } break; case MOVE_EFFECT_PREVENT_ESCAPE: @@ -2834,7 +2834,7 @@ void SetMoveEffect(bool8 primary, u8 certain) case MOVE_EFFECT_KNOCK_OFF: if (gBattleMons[gEffectBattler].ability == ABILITY_STICKY_HOLD) { - if (gBattleMons[gEffectBattler].item == 0) + if (gBattleMons[gEffectBattler].item == ITEM_NONE) { gBattlescriptCurrInstr++; } @@ -3446,7 +3446,7 @@ static void Cmd_getexp(void) gBattleMons[0].spAttack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPATK); gBattleMons[0].spDefense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF); } - + // What is else if? if (gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId && gBattleMons[2].hp && (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gBattleMons[2].level = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL); @@ -4246,7 +4246,7 @@ static void Cmd_moveend(void) effect = TRUE; gBattleScripting.moveendState++; break; - case MOVEEND_ON_DAMAGE_ABILITIES: // Contact abilities and Color Change + case MOVEEND_ON_DAMAGE_ABILITIES: // Such as abilities activating on contact(Poison Spore, Rough Skin, etc.). if (AbilityBattleEffects(ABILITYEFFECT_ON_DAMAGE, gBattlerTarget, 0, 0, 0)) effect = TRUE; gBattleScripting.moveendState++; @@ -4270,19 +4270,19 @@ static void Cmd_moveend(void) { if (gChosenMove == MOVE_BATON_PASS && !(gMoveResultFlags & MOVE_RESULT_FAILED)) { - ++gBattleScripting.moveendState; + gBattleScripting.moveendState++; break; } *choicedMoveAtk = gChosenMove; } - for (i = 0; i < MAX_MON_MOVES; ++i) + for (i = 0; i < MAX_MON_MOVES; i++) { if (gBattleMons[gBattlerAttacker].moves[i] == *choicedMoveAtk) break; } if (i == MAX_MON_MOVES) *choicedMoveAtk = MOVE_NONE; - ++gBattleScripting.moveendState; + gBattleScripting.moveendState++; break; case MOVEEND_CHANGED_ITEMS: // changed held items for (i = 0; i < gBattlersCount; i++) @@ -4653,7 +4653,7 @@ static void Cmd_switchinanim(void) | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_FRONTIER))) - HandleSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gActiveBattler].species), FLAG_SET_SEEN, gBattleMons[gActiveBattler].personality); + HandleSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gActiveBattler].species), FLAG_SET_SEEN, gBattleMons[gActiveBattler].personality); gAbsentBattlerFlags &= ~(gBitTable[gActiveBattler]); @@ -6225,19 +6225,19 @@ static void Cmd_jumpifplayerran(void) static void Cmd_hpthresholds(void) { - u8 opposingBank; + u8 opposingBattler; s32 result; if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - opposingBank = gActiveBattler ^ BIT_SIDE; + opposingBattler = gActiveBattler ^ BIT_SIDE; - result = gBattleMons[opposingBank].hp * 100 / gBattleMons[opposingBank].maxHP; + result = gBattleMons[opposingBattler].hp * 100 / gBattleMons[opposingBattler].maxHP; if (result == 0) result = 1; - if (result > 69 || !gBattleMons[opposingBank].hp) + if (result > 69 || !gBattleMons[opposingBattler].hp) gBattleStruct->hpScale = 0; else if (result > 39) gBattleStruct->hpScale = 1; @@ -6252,18 +6252,18 @@ static void Cmd_hpthresholds(void) static void Cmd_hpthresholds2(void) { - u8 opposingBank; + u8 opposingBattler; s32 result; u8 hpSwitchout; if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - opposingBank = gActiveBattler ^ BIT_SIDE; - hpSwitchout = *(gBattleStruct->hpOnSwitchout + GetBattlerSide(opposingBank)); - result = (hpSwitchout - gBattleMons[opposingBank].hp) * 100 / hpSwitchout; + opposingBattler = gActiveBattler ^ BIT_SIDE; + hpSwitchout = *(gBattleStruct->hpOnSwitchout + GetBattlerSide(opposingBattler)); + result = (hpSwitchout - gBattleMons[opposingBattler].hp) * 100 / hpSwitchout; - if (gBattleMons[opposingBank].hp >= hpSwitchout) + if (gBattleMons[opposingBattler].hp >= hpSwitchout) gBattleStruct->hpScale = 0; else if (result <= 29) gBattleStruct->hpScale = 1; @@ -6280,7 +6280,7 @@ static void Cmd_useitemonopponent(void) { gBattlerInMenuId = gBattlerAttacker; PokemonUseItemEffects(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker]], gLastUsedItem, gBattlerPartyIndexes[gBattlerAttacker], 0, TRUE); - gBattlescriptCurrInstr += 1; + gBattlescriptCurrInstr++; } static void Cmd_various(void) @@ -6337,7 +6337,7 @@ static void Cmd_various(void) break; } if (i == MAX_MON_MOVES) - *choicedMove = 0; + *choicedMove = MOVE_NONE; } break; case VARIOUS_RESET_PLAYER_FAINTED: @@ -6608,8 +6608,7 @@ static void Cmd_trymirrormove(void) { if (i != gBattlerAttacker) { - move = *(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) - | (*(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) << 8); + move = T1_READ_16(i * 2 + gBattlerAttacker * 8 + gBattleStruct->lastTakenMoveFrom); if (move != MOVE_NONE && move != MOVE_UNAVAILABLE) { @@ -6619,8 +6618,7 @@ static void Cmd_trymirrormove(void) } } - move = *(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 0) - | (*(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 1) << 8); + move = T1_READ_16(gBattleStruct->lastTakenMove + gBattlerAttacker * 2); if (move != MOVE_NONE && move != MOVE_UNAVAILABLE) { @@ -7026,7 +7024,6 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STAT_WONT_DECREASE; else gBattleCommunication[MULTISTRING_CHOOSER] = (gBattlerTarget == gActiveBattler); // B_MSG_ATTACKER_STAT_FELL or B_MSG_DEFENDER_STAT_FELL - } } else // stat increase @@ -7351,7 +7348,6 @@ static void Cmd_tryconversiontypechange(void) // randomly changes user's type to { do { - while ((moveChecked = Random() & (MAX_MON_MOVES - 1)) >= validMoves); moveType = gBattleMoves[gBattleMons[gBattlerAttacker].moves[moveChecked]].type; @@ -7795,7 +7791,6 @@ static void Cmd_mimicattackcopy(void) else gBattleMons[gBattlerAttacker].pp[gCurrMovePos] = 5; - PREPARE_MOVE_BUFFER(gBattleTextBuff1, gLastMoves[gBattlerTarget]) gDisableStructs[gBattlerAttacker].mimickedMoves |= gBitTable[gCurrMovePos]; @@ -8166,7 +8161,6 @@ static void Cmd_trychoosesleeptalkmove(void) { unusableMovesBits |= gBitTable[i]; } - } unusableMovesBits = CheckMoveLimitations(gBattlerAttacker, unusableMovesBits, ~MOVE_LIMITATION_PP); @@ -8611,7 +8605,6 @@ static void Cmd_magnitudedamagecalculation(void) magnitude = 10; } - PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff1, 2, magnitude) for (gBattlerTarget = 0; gBattlerTarget < gBattlersCount; gBattlerTarget++) @@ -8879,7 +8872,7 @@ static void Cmd_trydobeatup(void) && GetMonData(&party[gBattleCommunication[0]], MON_DATA_SPECIES2) && GetMonData(&party[gBattleCommunication[0]], MON_DATA_SPECIES2) != SPECIES_EGG && !GetMonData(&party[gBattleCommunication[0]], MON_DATA_STATUS)) - break; + break; } if (gBattleCommunication[0] < PARTY_SIZE) { @@ -9230,9 +9223,9 @@ static void Cmd_trysetroots(void) // ingrain static void Cmd_doubledamagedealtifdamaged(void) { - if ((gProtectStructs[gBattlerAttacker].physicalDmg + if ((gProtectStructs[gBattlerAttacker].physicalDmg != 0 && gProtectStructs[gBattlerAttacker].physicalBattlerId == gBattlerTarget) - || (gProtectStructs[gBattlerAttacker].specialDmg + || (gProtectStructs[gBattlerAttacker].specialDmg != 0 && gProtectStructs[gBattlerAttacker].specialBattlerId == gBattlerTarget)) { gBattleScripting.dmgMultiplier = 2; @@ -9485,7 +9478,7 @@ static void Cmd_switchoutabilities(void) { case ABILITY_NATURAL_CURE: gBattleMons[gActiveBattler].status1 = 0; - BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, gBitTable[*(gBattleStruct->battlerPartyIndexes + gActiveBattler)], sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1); @@ -10164,7 +10157,7 @@ static void Cmd_trygivecaughtmonnick(void) } break; case 3: - if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active ) + if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gBattleStruct->caughtMonNick); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); diff --git a/src/battle_util.c b/src/battle_util.c index 865b0112cea2..ceedfcbfacc4 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -93,7 +93,7 @@ void HandleAction_UseMove(void) gBattleStruct->atkCancellerTracker = 0; gMoveResultFlags = 0; gMultiHitCounter = 0; - gBattleCommunication[6] = 0; + gBattleCommunication[MISS_TYPE] = 0; gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerAttacker); // choose move From 7b3401ee27998f61a8ad8b5256fd26df654c169e Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 10:17:58 -0400 Subject: [PATCH 640/762] Standarized use of star in pointer types --- gflib/bg.c | 14 +-- gflib/text.c | 14 +-- gflib/text.h | 2 +- gflib/window.c | 20 +-- include/battle.h | 2 +- include/battle_anim.h | 2 +- include/battle_controllers.h | 4 +- include/battle_message.h | 14 +-- include/battle_util.h | 6 +- include/fieldmap.h | 2 +- include/global.h | 2 +- include/international_string_util.h | 2 +- include/item_menu.h | 2 +- include/menu.h | 2 +- include/money.h | 10 +- include/party_menu.h | 4 +- include/pokedex_area_screen.h | 2 +- include/save.h | 4 +- include/script_menu.h | 2 +- include/start_menu.h | 2 +- include/util.h | 2 +- src/battle_anim_effects_1.c | 2 +- src/battle_anim_effects_2.c | 2 +- src/battle_anim_flying.c | 2 +- src/battle_controller_link_opponent.c | 4 +- src/battle_controller_link_partner.c | 4 +- src/battle_controller_opponent.c | 4 +- src/battle_controller_player.c | 6 +- src/battle_controller_player_partner.c | 4 +- src/battle_controller_recorded_opponent.c | 4 +- src/battle_controller_recorded_player.c | 4 +- src/battle_controller_safari.c | 2 +- src/battle_controller_wally.c | 4 +- src/battle_controllers.c | 22 ++-- src/battle_dome.c | 2 +- src/battle_gfx_sfx_util.c | 2 +- src/battle_interface.c | 6 +- src/battle_main.c | 88 ++++++------- src/battle_message.c | 18 +-- src/battle_script_commands.c | 146 +++++++++++----------- src/battle_setup.c | 6 +- src/battle_tower.c | 12 +- src/battle_transition.c | 20 +-- src/battle_util.c | 4 +- src/battle_util2.c | 4 +- src/berry.c | 6 +- src/berry_blender.c | 26 ++-- src/cable_club.c | 2 +- src/contest.c | 10 +- src/decompress.c | 4 +- src/dodrio_berry_picking.c | 2 +- src/egg_hatch.c | 6 +- src/ereader_screen.c | 4 +- src/event_object_movement.c | 34 ++--- src/field_effect.c | 20 +-- src/field_effect_helpers.c | 4 +- src/field_message_box.c | 4 +- src/fieldmap.c | 10 +- src/image_processing_effects.c | 26 ++-- src/international_string_util.c | 2 +- src/item_menu.c | 102 +++++++-------- src/item_use.c | 6 +- src/libisagbprn.c | 2 +- src/librfu_intr.c | 36 +++--- src/librfu_stwi.c | 2 +- src/link_rfu_2.c | 4 +- src/m4a.c | 2 +- src/main_menu.c | 18 +-- src/map_name_popup.c | 2 +- src/menu.c | 10 +- src/mirage_tower.c | 8 +- src/money.c | 10 +- src/mystery_event_script.c | 2 +- src/naming_screen.c | 4 +- src/overworld.c | 4 +- src/party_menu.c | 60 ++++----- src/player_pc.c | 12 +- src/pokeblock_feed.c | 2 +- src/pokedex.c | 22 ++-- src/pokedex_cry_screen.c | 2 +- src/pokemon.c | 4 +- src/pokemon_icon.c | 8 +- src/pokemon_storage_system.c | 12 +- src/pokemon_summary_screen.c | 6 +- src/pokenav_list.c | 4 +- src/save.c | 14 +-- src/scrcmd.c | 2 +- src/script.c | 4 +- src/shop.c | 8 +- src/start_menu.c | 2 +- src/trainer_card.c | 18 +-- src/union_room.c | 2 +- src/util.c | 2 +- src/walda_phrase.c | 6 +- 94 files changed, 524 insertions(+), 524 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index 6e97be2073f7..ad413b3c95cd 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -923,7 +923,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi { for (destX16 = destX; destX16 < (destX + width); destX16++) { - ((u16*)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++; + ((u16 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++; } } break; @@ -936,7 +936,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi { for (destX16 = destX; destX16 < (destX + width); destX16++) { - ((u8*)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++; + ((u8 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++; } } break; @@ -984,7 +984,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 { for (j = destX; j < (destX + rectWidth); j++) { - *(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + tileOffset; + *(u8 *)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8 *)(srcPtr) + tileOffset; srcPtr++; } srcPtr += (srcWidth - rectWidth); @@ -1009,7 +1009,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, { for (x16 = x; x16 < (x + width); x16++) { - ((u16*)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum; + ((u16 *)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum; } } break; @@ -1019,7 +1019,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, { for (x16 = x; x16 < (x + width); x16++) { - ((u8*)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum; + ((u8 *)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum; } } break; @@ -1052,7 +1052,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt { for (x16 = x; x16 < (x + width); x16++) { - CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0); + CopyTileMapEntry(&firstTileNum, &((u16 *)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0); firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK); } } @@ -1063,7 +1063,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt { for (x16 = x; x16 < (x + width); x16++) { - ((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum; + ((u8 *)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum; firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK); } } diff --git a/gflib/text.c b/gflib/text.c index c400c0582397..c7efdccce3bb 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -652,7 +652,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width) struct Window *window; struct Bitmap pixels_data; struct TextGlyph *glyph; - u8* glyphHeight; + u8 *glyphHeight; if (sLastTextBgColor != TEXT_COLOR_TRANSPARENT) { @@ -1684,7 +1684,7 @@ u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension) static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese) { - const u16* glyphs; + const u16 *glyphs; if (isJapanese == 1) { @@ -1726,7 +1726,7 @@ static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese) static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese) { - const u16* glyphs; + const u16 *glyphs; if (isJapanese == TRUE) { @@ -1768,7 +1768,7 @@ static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese) static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese) { - const u16* glyphs; + const u16 *glyphs; if (isJapanese == TRUE) { @@ -1810,7 +1810,7 @@ static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese) static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese) { - const u16* glyphs; + const u16 *glyphs; if (isJapanese == TRUE) { @@ -1854,7 +1854,7 @@ static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese) static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese) { - const u16* glyphs; + const u16 *glyphs; if (isJapanese == TRUE) { @@ -1896,7 +1896,7 @@ static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese) static void DecompressGlyph_Bold(u16 glyphId) { - const u16* glyphs; + const u16 *glyphs; glyphs = sFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF)); DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop); diff --git a/gflib/text.h b/gflib/text.h index 2f660354fcaf..c07817290d3c 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -65,7 +65,7 @@ struct TextPrinterSubStruct struct TextPrinterTemplate { - const u8* currentChar; + const u8 *currentChar; u8 windowId; u8 fontId; u8 x; diff --git a/gflib/window.c b/gflib/window.c index 8ca1a4b6288c..ff9e8a6e01cb 100644 --- a/gflib/window.c +++ b/gflib/window.c @@ -35,7 +35,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) int j; u8 bgLayer; u16 attrib; - u8* allocatedTilemapBuffer; + u8 *allocatedTilemapBuffer; int allocatedBaseBlock; for (i = 0; i < NUM_BACKGROUNDS; ++i) @@ -405,7 +405,7 @@ void BlitBitmapRectToWindow(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u struct Bitmap sourceRect; struct Bitmap destRect; - sourceRect.pixels = (u8*)pixels; + sourceRect.pixels = (u8 *)pixels; sourceRect.width = srcWidth; sourceRect.height = srcHeight; @@ -421,7 +421,7 @@ static void BlitBitmapRectToWindowWithColorKey(u8 windowId, const u8 *pixels, u1 struct Bitmap sourceRect; struct Bitmap destRect; - sourceRect.pixels = (u8*)pixels; + sourceRect.pixels = (u8 *)pixels; sourceRect.width = srcWidth; sourceRect.height = srcHeight; @@ -463,9 +463,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue) destOffset = i + (a); \ srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \ if (srcOffset < size) \ - *(u32*)(tileData + destOffset) = *(u32*)(tileData + srcOffset); \ + *(u32 *)(tileData + destOffset) = *(u32 *)(tileData + srcOffset); \ else \ - *(u32*)(tileData + destOffset) = fillValue32; \ + *(u32 *)(tileData + destOffset) = fillValue32; \ distanceLoop++; \ } @@ -474,9 +474,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue) destOffset = i + (a); \ srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \ if (srcOffset < size) \ - *(u32*)(tileData - destOffset) = *(u32*)(tileData - srcOffset); \ + *(u32 *)(tileData - destOffset) = *(u32 *)(tileData - srcOffset); \ else \ - *(u32*)(tileData - destOffset) = fillValue32; \ + *(u32 *)(tileData - destOffset) = fillValue32; \ distanceLoop++; \ } @@ -550,7 +550,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value) gWindows[windowId].window.baseBlock = value; return FALSE; case WINDOW_TILE_DATA: - gWindows[windowId].tileData = (u8*)(value); + gWindows[windowId].tileData = (u8 *)(value); return TRUE; case WINDOW_BG: case WINDOW_WIDTH: @@ -605,7 +605,7 @@ static void DummyWindowBgTilemap8Bit(void) u16 AddWindow8Bit(const struct WindowTemplate *template) { u16 windowId; - u8* memAddress; + u8 *memAddress; u8 bgLayer; for (windowId = 0; windowId < WINDOWS_MAX; windowId++) @@ -675,7 +675,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u struct Bitmap sourceRect; struct Bitmap destRect; - sourceRect.pixels = (u8*) pixels; + sourceRect.pixels = (u8 *) pixels; sourceRect.width = srcWidth; sourceRect.height = srcHeight; diff --git a/include/battle.h b/include/battle.h index 9656bab8d4e5..bccf2f7548dd 100644 --- a/include/battle.h +++ b/include/battle.h @@ -591,7 +591,7 @@ struct MonSpritesGfx void* firstDecompressed; // ptr to the decompressed sprite of the first pokemon union { void* ptr[MAX_BATTLERS_COUNT]; - u8* byte[MAX_BATTLERS_COUNT]; + u8 *byte[MAX_BATTLERS_COUNT]; } sprites; struct SpriteTemplate templates[MAX_BATTLERS_COUNT]; struct SpriteFrameImage frameImages[MAX_BATTLERS_COUNT][4]; diff --git a/include/battle_anim.h b/include/battle_anim.h index c98766ea852c..8097df8aa51f 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -125,7 +125,7 @@ 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 AnimLoadCompressedBgGfx(u32, const u32 *, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircle(struct Sprite *); void SetBattlerSpriteYOffsetFromYScale(u8 spriteId); diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 5b6ba30bdd37..c8009347c6a6 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -222,8 +222,8 @@ void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId); void BtlController_EmitChooseAction(u8 bufferId, u8 action, u16 itemId); void BtlController_EmitYesNoBox(u8 bufferId); void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData); -void BtlController_EmitChooseItem(u8 bufferId, u8* battlePartyOrder); -void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8* data); +void BtlController_EmitChooseItem(u8 bufferId, u8 *battlePartyOrder); +void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8 *data); void BtlController_EmitCmd23(u8 bufferId); // unused void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue); void BtlController_EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints); diff --git a/include/battle_message.h b/include/battle_message.h index da3009d63f86..cc18a13d220b 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -211,18 +211,18 @@ struct BattleMsgData }; void BufferStringBattle(u16 stringID); -u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src); -u32 BattleStringExpandPlaceholders(const u8* src, u8* dst); -void BattlePutTextOnWindow(const u8* text, u8 windowId); +u32 BattleStringExpandPlaceholdersToDisplayedString(const u8 *src); +u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst); +void BattlePutTextOnWindow(const u8 *text, u8 windowId); void SetPpNumbersPaletteInMoveSelection(void); u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp); extern struct BattleMsgData *gBattleMsgDataPtr; -extern const u8* const gBattleStringsTable[]; -extern const u8* const gStatNamesTable[]; -extern const u8* const gPokeblockWasTooXStringTable[]; -extern const u8* const gRefereeStringsTable[]; +extern const u8 *const gBattleStringsTable[]; +extern const u8 *const gStatNamesTable[]; +extern const u8 *const gPokeblockWasTooXStringTable[]; +extern const u8 *const gRefereeStringsTable[]; extern const u8 *const gRoundsStringTable[]; extern const u8 gText_PkmnIsEvolving[]; diff --git a/include/battle_util.h b/include/battle_util.h index d15d4583ea04..8428be8d9ee2 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -73,7 +73,7 @@ void PrepareStringBattle(u16 stringId, u8 battlerId); void ResetSentPokesToOpponentValue(void); void OpponentSwitchInResetSentPokesToOpponentValue(u8 battlerId); void UpdateSentPokesToOpponentValue(u8 battlerId); -void BattleScriptPush(const u8* bsPtr); +void BattleScriptPush(const u8 *bsPtr); void BattleScriptPushCursor(void); void BattleScriptPop(void); u8 TrySetCantSelectMoveBattleScript(void); @@ -89,8 +89,8 @@ 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); -void BattleScriptExecute(const u8* BS_ptr); -void BattleScriptPushCursorAndCallback(const u8* BS_ptr); +void BattleScriptExecute(const u8 *BS_ptr); +void BattleScriptPushCursorAndCallback(const u8 *BS_ptr); u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn); void ClearFuryCutterDestinyBondGrudge(u8 battlerId); void HandleAction_RunBattleScript(void); diff --git a/include/fieldmap.h b/include/fieldmap.h index e7497f7bd4ae..a166e785a916 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -25,7 +25,7 @@ u32 MapGridGetMetatileIdAt(int, int); u32 MapGridGetMetatileBehaviorAt(int, int); void MapGridSetMetatileIdAt(int, int, u16); void MapGridSetMetatileEntryAt(int, int, u16); -void GetCameraCoords(u16*, u16*); +void GetCameraCoords(u16 *, u16 *); bool8 MapGridIsImpassableAt(int, int); int GetMapBorderIdAt(int x, int y); bool32 CanCameraMoveInDirection(int direction); diff --git a/include/global.h b/include/global.h index 64af518ce890..ce4e75f4591d 100644 --- a/include/global.h +++ b/include/global.h @@ -102,7 +102,7 @@ #define T1_READ_8(ptr) ((ptr)[0]) #define T1_READ_16(ptr) ((ptr)[0] | ((ptr)[1] << 8)) #define T1_READ_32(ptr) ((ptr)[0] | ((ptr)[1] << 8) | ((ptr)[2] << 16) | ((ptr)[3] << 24)) -#define T1_READ_PTR(ptr) (u8*) T1_READ_32(ptr) +#define T1_READ_PTR(ptr) (u8 *) T1_READ_32(ptr) // T2_READ_8 is a duplicate to remain consistent with each group. #define T2_READ_8(ptr) ((ptr)[0]) diff --git a/include/international_string_util.h b/include/international_string_util.h index dd5c6ac5feea..b0ac8afb6b0b 100644 --- a/include/international_string_util.h +++ b/include/international_string_util.h @@ -11,7 +11,7 @@ int GetStringRightAlignXOffset(int fontId, const u8 *str, int totalWidth); int GetStringCenterAlignXOffsetWithLetterSpacing(int fontId, const u8 *str, int totalWidth, int letterSpacing); int GetStringWidthDifference(int fontId, const u8 *str, int totalWidth, int letterSpacing); int GetMaxWidthInMenuTable(const struct MenuAction *actions, int numActions); -int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8* actionIds, int numActions); +int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8 *actionIds, int numActions); int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu); void CopyMonCategoryText(int dexNum, u8 *dest); u8 *GetStringClearToWidth(u8 *dest, int fontId, const u8 *str, int totalStringWidth); diff --git a/include/item_menu.h b/include/item_menu.h index fd576c3b5a2b..ce03cdacb824 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -71,7 +71,7 @@ struct BagMenu u8 unused1[2]; u8 pocketScrollArrowsTask; u8 pocketSwitchArrowsTask; - const u8* contextMenuItemsPtr; + const u8 *contextMenuItemsPtr; u8 contextMenuItemsBuffer[4]; u8 contextMenuNumItems; u8 numItemStacks[POCKETS_COUNT]; diff --git a/include/menu.h b/include/menu.h index c38e87cbd667..5c6bbd3d6688 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, const u8 *, u16, u16); void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram); void SetStandardWindowBorderStyle(u8 windowId, bool8 copyToVram); void DisplayYesNoMenuDefaultYes(void); diff --git a/include/money.h b/include/money.h index 5c7c1c984236..e7a8379787ce 100644 --- a/include/money.h +++ b/include/money.h @@ -1,11 +1,11 @@ #ifndef GUARD_MONEY_H #define GUARD_MONEY_H -u32 GetMoney(u32* moneyPtr); -void SetMoney(u32* moneyPtr, u32 newValue); -bool8 IsEnoughMoney(u32* moneyPtr, u32 cost); -void AddMoney(u32* moneyPtr, u32 toAdd); -void RemoveMoney(u32* moneyPtr, u32 toSub); +u32 GetMoney(u32 *moneyPtr); +void SetMoney(u32 *moneyPtr, u32 newValue); +bool8 IsEnoughMoney(u32 *moneyPtr, u32 cost); +void AddMoney(u32 *moneyPtr, u32 toAdd); +void RemoveMoney(u32 *moneyPtr, u32 toSub); bool8 IsEnoughForCostInVar0x8005(void); void SubtractMoneyFromVar0x8005(void); void PrintMoneyAmountInMoneyBox(u8 windowId, int amount, u8 speed); diff --git a/include/party_menu.h b/include/party_menu.h index 7f51d08c9ff8..40029f77b017 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -36,8 +36,8 @@ bool8 IsMultiBattle(void); u8 GetCursorSelectionMonId(void); u8 GetPartyMenuType(void); void Task_HandleChooseMonInput(u8 taskId); -u8* GetMonNickname(struct Pokemon *mon, u8 *dest); -u8 DisplayPartyMenuMessage(const u8* str, bool8 keepOpen); +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); u8 GetAilmentFromStatus(u32 status); diff --git a/include/pokedex_area_screen.h b/include/pokedex_area_screen.h index 027d3e4a78e6..86dfaa6c5be4 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, u8 *); #endif // GUARD_POKEDEX_AREA_SCREEN_H diff --git a/include/save.h b/include/save.h index 89fc9ad33eaf..4f2903f0996d 100644 --- a/include/save.h +++ b/include/save.h @@ -104,8 +104,8 @@ bool8 WriteSaveBlock2(void); bool8 WriteSaveBlock1Sector(void); u8 LoadGameSave(u8 saveType); u16 GetSaveBlocksPointersBaseOffset(void); -u32 TryReadSpecialSaveSector(u8 sector, u8* dst); -u32 TryWriteSpecialSaveSector(u8 sector, u8* src); +u32 TryReadSpecialSaveSector(u8 sector, u8 *dst); +u32 TryWriteSpecialSaveSector(u8 sector, u8 *src); void Task_LinkFullSave(u8 taskId); // save_failed_screen.c diff --git a/include/script_menu.h b/include/script_menu.h index a690ef8b8b58..36b66bf987be 100644 --- a/include/script_menu.h +++ b/include/script_menu.h @@ -12,7 +12,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 width); int ScriptMenu_AdjustLeftCoordFromWidth(int left, int width); bool16 ScriptMenu_CreatePCMultichoice(void); void ScriptMenu_DisplayPCStartupPrompt(void); diff --git a/include/start_menu.h b/include/start_menu.h index 1ddd82066d73..94d0f9d5b677 100644 --- a/include/start_menu.h +++ b/include/start_menu.h @@ -11,6 +11,6 @@ void SaveGame(void); void CB2_SetUpSaveAfterLinkBattle(void); void SaveForBattleTowerLink(void); void HideStartMenu(void); -void AppendToList(u8* list, u8* pos, u8 newEntry); +void AppendToList(u8 *list, u8 *pos, u8 newEntry); #endif // GUARD_START_MENU_H diff --git a/include/util.h b/include/util.h index 77062de96e87..8f2079a0ba57 100644 --- a/include/util.h +++ b/include/util.h @@ -12,7 +12,7 @@ void LoadWordFromTwoHalfwords(u16 *, u32 *); int CountTrailingZeroBits(u32 value); u16 CalcCRC16(const u8 *data, s32 length); u16 CalcCRC16WithTable(const u8 *data, u32 length); -u32 CalcByteArraySum(const u8* data, u32 length); +u32 CalcByteArraySum(const u8 *data, u32 length); void BlendPalette(u16 palOffset, u16 numEntries, u8 coeff, u16 blendColor); void DoBgAffineSet(struct BgAffineDstData *dest, u32 texX, u32 texY, s16 scrX, s16 scrY, s16 sx, s16 sy, u16 alpha); void CopySpriteTiles(u8 shape, u8 size, u8 *tiles, u16 *tilemap, u8 *output); diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 8f3b91b7df23..550692dcb5ca 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -5317,7 +5317,7 @@ static void AnimWavyMusicNotes(struct Sprite* sprite) sprite->callback = AnimWavyMusicNotes_Step; } -static void AnimWavyMusicNotes_CalcVelocity(s16 x, s16 y, s16* velocX, s16* velocY, s8 xSpeedFactor) +static void AnimWavyMusicNotes_CalcVelocity(s16 x, s16 y, s16 *velocX, s16 *velocY, s8 xSpeedFactor) { int x2; int time; diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 078b55105a73..0a301f8747a0 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1838,7 +1838,7 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite) { int i; u16 rand; - s16* ptr; + s16 *ptr; PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(63)); sprite->x += sprite->x2; sprite->y += sprite->y2; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index a3534bad3574..59474eae3a4e 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -595,7 +595,7 @@ static void AnimFallingFeather(struct Sprite *sprite) data->unkA = (gBattleAnimArgs[2] >> 8) & 0xFF; data->unk4 = gBattleAnimArgs[3]; data->unk6 = gBattleAnimArgs[4]; - *(u16*)(data->unkC) = gBattleAnimArgs[5]; + *(u16 *)(data->unkC) = gBattleAnimArgs[5]; if (data->unk2 >= 64 && data->unk2 <= 191) { diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 668dd01b42fc..a0756b8cb5f1 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -627,7 +627,7 @@ static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gEnemyParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gEnemyParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1466,7 +1466,7 @@ static void LinkOpponentHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 14d806576ae1..c072ae12ff61 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -514,7 +514,7 @@ static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gPlayerParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gPlayerParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1298,7 +1298,7 @@ static void LinkPartnerHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index ead5a8768a49..071a7d2a28f2 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -627,7 +627,7 @@ static u32 GetOpponentMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gEnemyParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gEnemyParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1519,7 +1519,7 @@ static void OpponentHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 91546655b06c..58515d376d38 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1672,7 +1672,7 @@ static u32 CopyPlayerMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gPlayerParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gPlayerParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -2546,7 +2546,7 @@ static void PlayerHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2; @@ -2797,7 +2797,7 @@ static void PlayerHandleDMA3Transfer(void) u16 sizeArg = gBattleBufferA[gActiveBattler][5] | (gBattleBufferA[gActiveBattler][6] << 8); const u8 *src = &gBattleBufferA[gActiveBattler][7]; - u8 *dst = (u8*)(dstArg); + u8 *dst = (u8 *)(dstArg); u32 size = sizeArg; while (1) diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index c2ff08a239a7..e82c802232bd 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -698,7 +698,7 @@ static u32 CopyPlayerPartnerMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gPlayerParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gPlayerParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1488,7 +1488,7 @@ static void PlayerPartnerHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2; diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 4a35ef723d40..ebfdbc909ccd 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -610,7 +610,7 @@ static u32 CopyRecordedOpponentMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gEnemyParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gEnemyParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1393,7 +1393,7 @@ static void RecordedOpponentHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index e25482fb5781..6200b5ef63cf 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -589,7 +589,7 @@ static u32 CopyRecordedPlayerMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gPlayerParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gPlayerParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1399,7 +1399,7 @@ static void RecordedPlayerHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 78a57a0f797a..5e8ef2d28655 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -422,7 +422,7 @@ static void SafariHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index c4c0c11a9e95..8e02831776af 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -516,7 +516,7 @@ static u32 CopyWallyMonData(u8 monId, u8 *dst) moveData.pp[size] = GetMonData(&gPlayerParty[monId], MON_DATA_PP1 + size); } moveData.ppBonuses = GetMonData(&gPlayerParty[monId], MON_DATA_PP_BONUSES); - src = (u8*)(&moveData); + src = (u8 *)(&moveData); for (size = 0; size < sizeof(moveData); size++) dst[size] = src[size]; break; @@ -1176,7 +1176,7 @@ static void WallyHandlePrintString(void) gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - stringId = (u16*)(&gBattleBufferA[gActiveBattler][2]); + stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]); BufferStringBattle(*stringId); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG); gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter; diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 369f735f2482..bbb6757cad4b 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -99,10 +99,10 @@ void InitBattleControllers(void) } for (i = 0; i < sizeof(gBattleStruct->tvMovePoints); i++) - *((u8*)(&gBattleStruct->tvMovePoints) + i) = 0; + *((u8 *)(&gBattleStruct->tvMovePoints) + i) = 0; for (i = 0; i < sizeof(gBattleStruct->tv); i++) - *((u8*)(&gBattleStruct->tv) + i) = 0; + *((u8 *)(&gBattleStruct->tv) + i) = 0; } static void InitSinglePlayerBtlControllers(void) @@ -930,7 +930,7 @@ void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 b sBattleBuffersTransferData[1] = requestId; sBattleBuffersTransferData[2] = monToCheck; for (i = 0; i < bytes; i++) - sBattleBuffersTransferData[3 + i] = *(u8*)(data++); + sBattleBuffersTransferData[3 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 3 + bytes); } @@ -942,7 +942,7 @@ void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data sBattleBuffersTransferData[1] = monId; sBattleBuffersTransferData[2] = bytes; for (i = 0; i < bytes; i++) - sBattleBuffersTransferData[3 + i] = *(u8*)(data++); + sBattleBuffersTransferData[3 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, bytes + 3); } @@ -1039,7 +1039,7 @@ void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data) sBattleBuffersTransferData[0] = CONTROLLER_PAUSE; sBattleBuffersTransferData[1] = toWait; for (i = 0; i < toWait * 3; i++) - sBattleBuffersTransferData[2 + i] = *(u8*)(data++); + sBattleBuffersTransferData[2 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, toWait * 3 + 2); } @@ -1164,7 +1164,7 @@ void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpN sBattleBuffersTransferData[2] = NoPpNumber; sBattleBuffersTransferData[3] = 0; for (i = 0; i < sizeof(*movePpData); i++) - sBattleBuffersTransferData[4 + i] = *((u8*)(movePpData) + i); + sBattleBuffersTransferData[4 + i] = *((u8 *)(movePpData) + i); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, sizeof(*movePpData) + 4); } @@ -1261,7 +1261,7 @@ void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data) sBattleBuffersTransferData[2] = size; sBattleBuffersTransferData[3] = (size & 0xFF00) >> 8; for (i = 0; i < size; i++) - sBattleBuffersTransferData[4 + i] = *(u8*)(data++); + sBattleBuffersTransferData[4 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 4); } @@ -1277,7 +1277,7 @@ void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data sBattleBuffersTransferData[5] = size; sBattleBuffersTransferData[6] = (size & 0xFF00) >> 8; for (i = 0; i < size; i++) - sBattleBuffersTransferData[7 + i] = *(u8*)(data++); + sBattleBuffersTransferData[7 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7); } @@ -1293,7 +1293,7 @@ void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data) // Nonsense loop using songId as a size // Would go out of bounds for any song id after SE_RG_BAG_POCKET (253) for (i = 0; i < songId; i++) - sBattleBuffersTransferData[3 + i] = *(u8*)(data++); + sBattleBuffersTransferData[3 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3); } @@ -1305,7 +1305,7 @@ void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data) sBattleBuffersTransferData[1] = size; sBattleBuffersTransferData[2] = (size & 0xFF00) >> 8; for (i = 0; i < size; i++) - sBattleBuffersTransferData[3 + i] = *(u8*)(data++); + sBattleBuffersTransferData[3 + i] = *(u8 *)(data++); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 3); } @@ -1451,7 +1451,7 @@ void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* h sBattleBuffersTransferData[2] = (flags & PARTY_SUMM_SKIP_DRAW_DELAY) >> 7; // If true, skip delay after drawing. True during intro sBattleBuffersTransferData[3] = CONTROLLER_DRAWPARTYSTATUSSUMMARY; for (i = 0; i < (s32)(sizeof(struct HpAndStatus) * PARTY_SIZE); i++) - sBattleBuffersTransferData[4 + i] = *(i + (u8*)(hpAndStatus)); + sBattleBuffersTransferData[4 + i] = *(i + (u8 *)(hpAndStatus)); PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, sizeof(struct HpAndStatus) * PARTY_SIZE + 4); } diff --git a/src/battle_dome.c b/src/battle_dome.c index 8385e831b0b7..23b5ebdfcd1b 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -97,7 +97,7 @@ static void CB2_TourneyTree(void); static void VblankCb_TourneyInfoCard(void); static void DisplayMatchInfoOnCard(u8, u8); static void DisplayTrainerInfoOnCard(u8, u8); -static int BufferDomeWinString(u8, u8*); +static int BufferDomeWinString(u8, u8 *); static u8 GetDomeBrainTrainerPicId(void); static u8 GetDomeBrainTrainerClass(void); static void CopyDomeBrainTrainerName(u8 *); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index d547dec0f9d1..d3ea6a9b2c27 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1219,7 +1219,7 @@ void HideBattlerShadowSprite(u8 battlerId) // Color the background tiles surrounding the action selection and move windows void FillAroundBattleWindows(void) { - u16 *vramPtr = (u16*)(VRAM + 0x240); + u16 *vramPtr = (u16 *)(VRAM + 0x240); s32 i; s32 j; diff --git a/src/battle_interface.c b/src/battle_interface.c index dbcab4a9cc0e..155609ba3dbe 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -159,7 +159,7 @@ enum }; static const u8 *GetHealthboxElementGfxPtr(u8); -static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *, u32, u32, u32, u32 *); +static u8 *AddTextPrinterAndCreateWindowOnHealthbox(const u8 *, u32, u32, u32, u32 *); static void RemoveWindowOnHealthbox(u32 windowId); static void UpdateHpTextInHealthboxInDoubles(u8, s16, u8); @@ -2522,7 +2522,7 @@ u8 GetHPBarLevel(s16 hp, s16 maxhp) return result; } -static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 bgColor, u32 *windowId) +static u8 *AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 bgColor, u32 *windowId) { u16 winId; u8 color[3]; @@ -2538,7 +2538,7 @@ static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, AddTextPrinterParameterized4(winId, FONT_SMALL, x, y, 0, 0, color, TEXT_SKIP_DRAW, str); *windowId = winId; - return (u8*)(GetWindowAttribute(winId, WINDOW_TILE_DATA)); + return (u8 *)(GetWindowAttribute(winId, WINDOW_TILE_DATA)); } static void RemoveWindowOnHealthbox(u32 windowId) diff --git a/src/battle_main.c b/src/battle_main.c index 480a616c81b0..cc473044a3a2 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -1805,7 +1805,7 @@ static void CB2_HandleStartMultiBattle(void) case 8: if (IsLinkTaskFinished()) { - u32* ptr = gBattleStruct->multiBuffer.battleVideo; + u32 *ptr = gBattleStruct->multiBuffer.battleVideo; ptr[0] = gBattleTypeFlags; ptr[1] = gRecordedBattleRngSeed; // UB: overwrites berry data SendBlock(BitmaskAllOtherLinkPlayers(), ptr, sizeof(gBattleStruct->multiBuffer.battleVideo)); @@ -1899,7 +1899,7 @@ static void SpriteCB_UnusedBattleInit(struct Sprite* sprite) static void SpriteCB_UnusedBattleInit_Main(struct Sprite *sprite) { - u16 *arr = (u16*)gDecompressionBuffer; + u16 *arr = (u16 *)gDecompressionBuffer; switch (sprite->sState) { @@ -2787,7 +2787,7 @@ static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite) } else // Erase bottom part of the sprite to create a smooth illusion of mon falling down. { - u8* dst = gMonSpritesGfxPtr->sprites.byte[GetBattlerPosition(sprite->sBattler)] + (gBattleMonForms[sprite->sBattler] << 11) + (sprite->data[3] << 8); + u8 *dst = gMonSpritesGfxPtr->sprites.byte[GetBattlerPosition(sprite->sBattler)] + (gBattleMonForms[sprite->sBattler] << 11) + (sprite->data[3] << 8); for (i = 0; i < 0x100; i++) *(dst++) = 0; @@ -3109,10 +3109,10 @@ static void BattleStartClearSetData(void) *((u8 *)gBattleStruct->usedHeldItems + i) = 0; *((u8 *)gBattleStruct->choicedMove + i) = 0; *((u8 *)gBattleStruct->changedItems + i) = 0; - *(i + 0 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(i + 1 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(i + 2 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(i + 3 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i + 0 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i + 1 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i + 2 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i + 3 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; } for (i = 0; i < MAX_BATTLERS_COUNT; i++) @@ -3214,14 +3214,14 @@ void SwitchInClearSetData(void) *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0; *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0; - *(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(2 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(2 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(3 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(3 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; gBattleStruct->palaceFlags &= ~(gBitTable[gActiveBattler]); @@ -3232,12 +3232,12 @@ void SwitchInClearSetData(void) *(gBattleStruct->lastTakenMove + i * 2 + 0) = 0; *(gBattleStruct->lastTakenMove + i * 2 + 1) = 0; } - *(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; } - *(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; gBattleResources->flags->flags[gActiveBattler] = 0; gCurrentMove = 0; @@ -3304,19 +3304,19 @@ void FaintClearSetData(void) gLastPrintedMoves[gActiveBattler] = 0; gLastHitBy[gActiveBattler] = 0xFF; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0; *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0; - *(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; - *(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(2 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(2 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(3 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(3 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; gBattleStruct->palaceFlags &= ~(gBitTable[gActiveBattler]); @@ -3327,8 +3327,8 @@ void FaintClearSetData(void) *(gBattleStruct->lastTakenMove + i * 2 + 0) = 0; *(gBattleStruct->lastTakenMove + i * 2 + 1) = 0; } - *(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; - *(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; + *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; + *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; } gBattleResources->flags->flags[gActiveBattler] = 0; @@ -3395,7 +3395,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) } else { - u16* hpOnSwitchout; + u16 *hpOnSwitchout; ptr = (u8 *)&gBattleMons[gActiveBattler]; for (i = 0; i < sizeof(struct BattlePokemon); i++) @@ -4055,7 +4055,7 @@ void SwitchPartyOrder(u8 battler) u8 partyId2; for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - gBattlePartyCurrentOrder[i] = *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)); + gBattlePartyCurrentOrder[i] = *(battler * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)); partyId1 = GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battler]); partyId2 = GetPartyIdFromBattlePartyId(*(gBattleStruct->monToSwitchIntoId + battler)); @@ -4065,15 +4065,15 @@ void SwitchPartyOrder(u8 battler) { for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) { - *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; - *(BATTLE_PARTNER(battler) * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; + *(battler * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; + *(BATTLE_PARTNER(battler) * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } else { for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) { - *(battler * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; + *(battler * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } } @@ -4543,13 +4543,13 @@ static void UpdateBattlerPartyOrdersOnSwitch(void) if (gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI) { - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } } @@ -4831,7 +4831,7 @@ static void TurnValuesCleanUp(bool8 var0) } else { - dataPtr = (u8*)(&gProtectStructs[gActiveBattler]); + dataPtr = (u8 *)(&gProtectStructs[gActiveBattler]); for (i = 0; i < sizeof(struct ProtectStruct); i++) dataPtr[i] = 0; @@ -4859,7 +4859,7 @@ void SpecialStatusesClear(void) for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++) { s32 i; - u8 *dataPtr = (u8*)(&gSpecialStatuses[gActiveBattler]); + u8 *dataPtr = (u8 *)(&gSpecialStatuses[gActiveBattler]); for (i = 0; i < sizeof(struct SpecialStatus); i++) dataPtr[i] = 0; diff --git a/src/battle_message.c b/src/battle_message.c index 2776c952b0f2..121abde40425 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2346,17 +2346,17 @@ void BufferStringBattle(u16 stringID) BattleStringExpandPlaceholdersToDisplayedString(stringPtr); } -u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src) +u32 BattleStringExpandPlaceholdersToDisplayedString(const u8 *src) { BattleStringExpandPlaceholders(src, gDisplayedStringBattle); } -static const u8* TryGetStatusString(u8 *src) +static const u8 *TryGetStatusString(u8 *src) { u32 i; u8 status[8]; u32 chars1, chars2; - u8* statusPtr; + u8 *statusPtr; memcpy(status, sDummyWeirdStatusString, 8); @@ -2369,13 +2369,13 @@ static const u8* TryGetStatusString(u8 *src) statusPtr++; } - chars1 = *(u32*)(&status[0]); - chars2 = *(u32*)(&status[4]); + chars1 = *(u32 *)(&status[0]); + chars2 = *(u32 *)(&status[4]); for (i = 0; i < ARRAY_COUNT(gStatusConditionStringsTable); i++) { - if (chars1 == *(u32*)(&gStatusConditionStringsTable[i][0][0]) - && chars2 == *(u32*)(&gStatusConditionStringsTable[i][0][4])) + if (chars1 == *(u32 *)(&gStatusConditionStringsTable[i][0][0]) + && chars2 == *(u32 *)(&gStatusConditionStringsTable[i][0][4])) return gStatusConditionStringsTable[i][1]; } return NULL; @@ -2966,7 +2966,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) // unused, since the value loaded into the buffer is not read; it loaded one of // two particles (either "ăŻ" or "ă®") which works in tandem with ChooseTypeOfMoveUsedString // below to effect changes in the meaning of the line. -static void ChooseMoveUsedParticle(u8* textBuff) +static void ChooseMoveUsedParticle(u8 *textBuff) { s32 counter = 0; u32 i = 0; @@ -3006,7 +3006,7 @@ static void ChooseMoveUsedParticle(u8* textBuff) // // sText_ExclamationMark5 was " ă“ă†ă’ăŤďĽ" This resulted in a translation of // "'s attack!". -static void ChooseTypeOfMoveUsedString(u8* dst) +static void ChooseTypeOfMoveUsedString(u8 *dst) { s32 counter = 0; s32 i = 0; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 8e4c93153583..94e087402cc2 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -52,7 +52,7 @@ #include "constants/songs.h" #include "constants/trainers.h" -extern const u8* const gBattleScriptsForMoveEffects[]; +extern const u8 *const gBattleScriptsForMoveEffects[]; #define DEFENDER_IS_PROTECTED ((gProtectStructs[gBattlerTarget].protected) && (gBattleMoves[gCurrentMove].flags & FLAG_PROTECT_AFFECTED)) @@ -65,7 +65,7 @@ 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 void CheckWonderGuardAndLevitate(void); -static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8, const u8* BS_ptr); +static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8, const u8 *BS_ptr); static bool32 IsMonGettingExpSentOut(void); static void InitLevelUpBanner(void); static bool8 SlideInLevelUpBanner(void); @@ -624,7 +624,7 @@ static const u32 sStatusFlagsForMoveEffects[NUM_MOVE_EFFECTS] = [MOVE_EFFECT_THRASH] = STATUS2_LOCK_CONFUSE, }; -static const u8* const sMoveEffectBS_Ptrs[] = +static const u8 *const sMoveEffectBS_Ptrs[] = { [0] = BattleScript_MoveEffectSleep, [MOVE_EFFECT_SLEEP] = BattleScript_MoveEffectSleep, @@ -1498,7 +1498,7 @@ static void CheckWonderGuardAndLevitate(void) } } -static void ModulateDmgByType2(u8 multiplier, u16 move, u8* flags) // same as ModulateDmgByType except different arguments +static void ModulateDmgByType2(u8 multiplier, u16 move, u8 *flags) // same as ModulateDmgByType except different arguments { gBattleMoveDamage = gBattleMoveDamage * multiplier / 10; if (gBattleMoveDamage == 0 && multiplier != 0) @@ -2156,7 +2156,7 @@ static void Cmd_printfromtable(void) { if (gBattleControllerExecFlags == 0) { - const u16* ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u16 *ptr = (const u16 *) T1_READ_PTR(gBattlescriptCurrInstr + 1); ptr += gBattleCommunication[MULTISTRING_CHOOSER]; PrepareStringBattle(*ptr, gBattlerAttacker); @@ -2170,7 +2170,7 @@ static void Cmd_printselectionstringfromtable(void) { if (gBattleControllerExecFlags == 0) { - const u16* ptr = (const u16*) T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u16 *ptr = (const u16 *) T1_READ_PTR(gBattlescriptCurrInstr + 1); ptr += gBattleCommunication[MULTISTRING_CHOOSER]; gActiveBattler = gBattlerAttacker; @@ -2476,7 +2476,7 @@ void SetMoveEffect(bool8 primary, u8 certain) || gBattleCommunication[MOVE_EFFECT_BYTE] == MOVE_EFFECT_PARALYSIS || gBattleCommunication[MOVE_EFFECT_BYTE] == MOVE_EFFECT_BURN) { - u8* synchronizeEffect = &gBattleStruct->synchronizeMoveEffect; + u8 *synchronizeEffect = &gBattleStruct->synchronizeMoveEffect; *synchronizeEffect = gBattleCommunication[MOVE_EFFECT_BYTE]; gHitMarker |= HITMARKER_SYNCHRONISE_EFFECT; } @@ -2753,7 +2753,7 @@ void SetMoveEffect(bool8 primary, u8 certain) } else { - u16* changedItem = &gBattleStruct->changedItems[gBattlerAttacker]; + u16 *changedItem = &gBattleStruct->changedItems[gBattlerAttacker]; gLastUsedItem = *changedItem = gBattleMons[gBattlerTarget].item; gBattleMons[gBattlerTarget].item = ITEM_NONE; @@ -2768,8 +2768,8 @@ void SetMoveEffect(bool8 primary, u8 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_ItemSteal; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerTarget]) + 1) = 0; } } break; @@ -2857,8 +2857,8 @@ void SetMoveEffect(bool8 primary, u8 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_KnockedOff; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gEffectBattler]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gEffectBattler]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gEffectBattler]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gEffectBattler]) + 1) = 0; } else { @@ -3053,7 +3053,7 @@ static void Cmd_jumpifstatus(void) { u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2); - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); if (gBattleMons[battlerId].status1 & flags && gBattleMons[battlerId].hp != 0) gBattlescriptCurrInstr = jumpPtr; @@ -3065,7 +3065,7 @@ static void Cmd_jumpifstatus2(void) { u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2); - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6); if (gBattleMons[battlerId].status2 & flags && gBattleMons[battlerId].hp != 0) gBattlescriptCurrInstr = jumpPtr; @@ -3077,7 +3077,7 @@ static void Cmd_jumpifability(void) { u8 battlerId; u8 ability = gBattlescriptCurrInstr[2]; - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); if (gBattlescriptCurrInstr[1] == BS_ATTACKER_SIDE) { @@ -3124,7 +3124,7 @@ static void Cmd_jumpifsideaffecting(void) { u8 side; u16 flags; - const u8* jumpPtr; + const u8 *jumpPtr; if (gBattlescriptCurrInstr[1] == BS_ATTACKER) side = GET_BATTLER_SIDE(gBattlerAttacker); @@ -3209,7 +3209,7 @@ static void Cmd_jumpiftype(void) { u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); u8 type = gBattlescriptCurrInstr[2]; - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); if (IS_BATTLER_OF_TYPE(battlerId, type)) gBattlescriptCurrInstr = jumpPtr; @@ -3627,9 +3627,9 @@ static void Cmd_goto(void) static void Cmd_jumpifbyte(void) { u8 caseID = gBattlescriptCurrInstr[1]; - const u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 2); + const u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 2); u8 value = gBattlescriptCurrInstr[6]; - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 7); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 7); gBattlescriptCurrInstr += 11; @@ -3665,9 +3665,9 @@ static void Cmd_jumpifbyte(void) static void Cmd_jumpifhalfword(void) { u8 caseID = gBattlescriptCurrInstr[1]; - const u16* memHword = T2_READ_PTR(gBattlescriptCurrInstr + 2); + const u16 *memHword = T2_READ_PTR(gBattlescriptCurrInstr + 2); u16 value = T2_READ_16(gBattlescriptCurrInstr + 6); - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 8); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 8); gBattlescriptCurrInstr += 12; @@ -3703,9 +3703,9 @@ static void Cmd_jumpifhalfword(void) static void Cmd_jumpifword(void) { u8 caseID = gBattlescriptCurrInstr[1]; - const u32* memWord = T2_READ_PTR(gBattlescriptCurrInstr + 2); + const u32 *memWord = T2_READ_PTR(gBattlescriptCurrInstr + 2); u32 value = T1_READ_32(gBattlescriptCurrInstr + 6); - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); gBattlescriptCurrInstr += 14; @@ -3740,10 +3740,10 @@ static void Cmd_jumpifword(void) static void Cmd_jumpifarrayequal(void) { - const u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1); - const u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5); + const u8 *mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5); u32 size = gBattlescriptCurrInstr[9]; - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); u8 i; for (i = 0; i < size; i++) @@ -3763,10 +3763,10 @@ static void Cmd_jumpifarrayequal(void) static void Cmd_jumpifarraynotequal(void) { u8 equalBytes = 0; - const u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1); - const u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5); + const u8 *mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5); u32 size = gBattlescriptCurrInstr[9]; - const u8* jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); + const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 10); u8 i; for (i = 0; i < size; i++) @@ -3784,7 +3784,7 @@ static void Cmd_jumpifarraynotequal(void) static void Cmd_setbyte(void) { - u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); *memByte = gBattlescriptCurrInstr[5]; gBattlescriptCurrInstr += 6; @@ -3792,22 +3792,22 @@ static void Cmd_setbyte(void) static void Cmd_addbyte(void) { - u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); *memByte += gBattlescriptCurrInstr[5]; gBattlescriptCurrInstr += 6; } static void Cmd_subbyte(void) { - u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); *memByte -= gBattlescriptCurrInstr[5]; gBattlescriptCurrInstr += 6; } static void Cmd_copyarray(void) { - u8* dest = T2_READ_PTR(gBattlescriptCurrInstr + 1); - const u8* src = T2_READ_PTR(gBattlescriptCurrInstr + 5); + u8 *dest = T2_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *src = T2_READ_PTR(gBattlescriptCurrInstr + 5); s32 size = gBattlescriptCurrInstr[9]; s32 i; @@ -3819,9 +3819,9 @@ static void Cmd_copyarray(void) static void Cmd_copyarraywithindex(void) { - u8* dest = T2_READ_PTR(gBattlescriptCurrInstr + 1); - const u8* src = T2_READ_PTR(gBattlescriptCurrInstr + 5); - const u8* index = T2_READ_PTR(gBattlescriptCurrInstr + 9); + u8 *dest = T2_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *src = T2_READ_PTR(gBattlescriptCurrInstr + 5); + const u8 *index = T2_READ_PTR(gBattlescriptCurrInstr + 9); s32 size = gBattlescriptCurrInstr[13]; s32 i; @@ -3833,14 +3833,14 @@ static void Cmd_copyarraywithindex(void) static void Cmd_orbyte(void) { - u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); *memByte |= gBattlescriptCurrInstr[5]; gBattlescriptCurrInstr += 6; } static void Cmd_orhalfword(void) { - u16* memHword = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u16 *memHword = T2_READ_PTR(gBattlescriptCurrInstr + 1); u16 val = T2_READ_16(gBattlescriptCurrInstr + 5); *memHword |= val; @@ -3849,7 +3849,7 @@ static void Cmd_orhalfword(void) static void Cmd_orword(void) { - u32* memWord = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u32 *memWord = T2_READ_PTR(gBattlescriptCurrInstr + 1); u32 val = T2_READ_32(gBattlescriptCurrInstr + 5); *memWord |= val; @@ -3858,14 +3858,14 @@ static void Cmd_orword(void) static void Cmd_bicbyte(void) { - u8* memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u8 *memByte = T2_READ_PTR(gBattlescriptCurrInstr + 1); *memByte &= ~(gBattlescriptCurrInstr[5]); gBattlescriptCurrInstr += 6; } static void Cmd_bichalfword(void) { - u16* memHword = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u16 *memHword = T2_READ_PTR(gBattlescriptCurrInstr + 1); u16 val = T2_READ_16(gBattlescriptCurrInstr + 5); *memHword &= ~val; @@ -3874,7 +3874,7 @@ static void Cmd_bichalfword(void) static void Cmd_bicword(void) { - u32* memWord = T2_READ_PTR(gBattlescriptCurrInstr + 1); + u32 *memWord = T2_READ_PTR(gBattlescriptCurrInstr + 1); u32 val = T2_READ_32(gBattlescriptCurrInstr + 5); *memWord &= ~val; @@ -3972,7 +3972,7 @@ static void Cmd_endselectionscript(void) static void Cmd_playanimation(void) { - const u16* argumentPtr; + const u16 *argumentPtr; gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); argumentPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3); @@ -4014,8 +4014,8 @@ static void Cmd_playanimation(void) // Same as playanimation, except it takes a pointer to some animation id, instead of taking the value directly static void Cmd_playanimation_var(void) { - const u16* argumentPtr; - const u8* animationIdPtr; + const u16 *argumentPtr; + const u8 *animationIdPtr; gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); animationIdPtr = T2_READ_PTR(gBattlescriptCurrInstr + 2); @@ -4287,7 +4287,7 @@ static void Cmd_moveend(void) case MOVEEND_CHANGED_ITEMS: // changed held items for (i = 0; i < gBattlersCount; i++) { - u16* changedItem = &gBattleStruct->changedItems[i]; + u16 *changedItem = &gBattleStruct->changedItems[i]; if (*changedItem != ITEM_NONE) { gBattleMons[i].item = *changedItem; @@ -4420,11 +4420,11 @@ static void Cmd_moveend(void) target = gBattlerTarget; attacker = gBattlerAttacker; - *(attacker * 2 + target * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = gChosenMove; + *(attacker * 2 + target * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = gChosenMove; target = gBattlerTarget; attacker = gBattlerAttacker; - *(attacker * 2 + target * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = gChosenMove >> 8; + *(attacker * 2 + target * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = gChosenMove >> 8; } gBattleScripting.moveendState++; break; @@ -4598,7 +4598,7 @@ static void Cmd_switchindataupdate(void) gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); oldData = gBattleMons[gActiveBattler]; - monData = (u8*)(&gBattleMons[gActiveBattler]); + monData = (u8 *)(&gBattleMons[gActiveBattler]); for (i = 0; i < sizeof(struct BattlePokemon); i++) monData[i] = gBattleBufferB[gActiveBattler][4 + i]; @@ -5159,13 +5159,13 @@ static void Cmd_switchhandleorder(void) if (gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI) { - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); - *(gActiveBattler * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= 0xF; + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); + *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8*)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } else if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) { @@ -5244,7 +5244,7 @@ static void Cmd_switchineffects(void) for (i = 0; i < gBattlersCount; i++) { - u16* hpOnSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(i)]; + u16 *hpOnSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(i)]; *hpOnSwitchout = gBattleMons[i].hp; } @@ -5868,7 +5868,7 @@ static void Cmd_adjustsetdamage(void) // The same as adjustnormaldamage, except static void Cmd_removeitem(void) { - u16* usedHeldItem; + u16 *usedHeldItem; gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); @@ -6117,14 +6117,14 @@ static bool8 SlideOutLevelUpBanner(void) static void PutMonIconOnLvlUpBanner(void) { u8 spriteId; - const u16* iconPal; + const u16 *iconPal; struct SpriteSheet iconSheet; struct SpritePalette iconPalSheet; u16 species = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPECIES); u32 personality = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_PERSONALITY); - const u8* iconPtr = GetMonIconPtr(species, personality, 1); + const u8 *iconPtr = GetMonIconPtr(species, personality, 1); iconSheet.data = iconPtr; iconSheet.size = 0x200; iconSheet.tag = TAG_LVLUP_BANNER_MON_ICON; @@ -6578,7 +6578,7 @@ static void Cmd_jumpifnexttargetvalid(void) static void Cmd_tryhealhalfhealth(void) { - const u8* failPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *failPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); if (gBattlescriptCurrInstr[5] == BS_ATTACKER) gBattlerTarget = gBattlerAttacker; @@ -6749,7 +6749,7 @@ static void Cmd_trysetrest(void) static void Cmd_jumpifnotfirstturn(void) { - const u8* failJump = T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *failJump = T1_READ_PTR(gBattlescriptCurrInstr + 1); if (gDisableStructs[gBattlerAttacker].isFirstTurn) gBattlescriptCurrInstr += 5; @@ -6831,7 +6831,7 @@ static void Cmd_stockpile(void) static void Cmd_stockpiletobasedamage(void) { - const u8* jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); if (gDisableStructs[gBattlerAttacker].stockpileCounter == 0) { gBattlescriptCurrInstr = jumpPtr; @@ -6857,7 +6857,7 @@ static void Cmd_stockpiletobasedamage(void) static void Cmd_stockpiletohpheal(void) { - const u8* jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + const u8 *jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 1); if (gDisableStructs[gBattlerAttacker].stockpileCounter == 0) { @@ -7069,7 +7069,7 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) static void Cmd_statbuffchange(void) { - const u8* jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2); + const u8 *jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2); if (ChangeStatBuffs(gBattleScripting.statChanger & 0xF0, GET_STAT_BUFF_ID(gBattleScripting.statChanger), gBattlescriptCurrInstr[1], jumpPtr) == STAT_CHANGE_WORKED) gBattlescriptCurrInstr += 6; } @@ -7705,8 +7705,8 @@ static void Cmd_transformdataexecution(void) PREPARE_SPECIES_BUFFER(gBattleTextBuff1, gBattleMons[gBattlerTarget].species) - battleMonAttacker = (u8*)(&gBattleMons[gBattlerAttacker]); - battleMonTarget = (u8*)(&gBattleMons[gBattlerTarget]); + battleMonAttacker = (u8 *)(&gBattleMons[gBattlerAttacker]); + battleMonTarget = (u8 *)(&gBattleMons[gBattlerTarget]); for (i = 0; i < offsetof(struct BattlePokemon, pp); i++) battleMonAttacker[i] = battleMonTarget[i]; @@ -7963,7 +7963,7 @@ static void Cmd_painsplitdmgcalc(void) { s32 hpDiff = (gBattleMons[gBattlerAttacker].hp + gBattleMons[gBattlerTarget].hp) / 2; s32 painSplitHp = gBattleMoveDamage = gBattleMons[gBattlerTarget].hp - hpDiff; - u8* storeLoc = (void*)(&gBattleScripting.painSplitHp); + u8 *storeLoc = (void*)(&gBattleScripting.painSplitHp); storeLoc[0] = (painSplitHp); storeLoc[1] = (painSplitHp & 0x0000FF00) >> 8; @@ -9139,11 +9139,11 @@ static void Cmd_tryswapitems(void) // trick BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item); MarkBattlerForControllerExec(gBattlerTarget); - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerTarget]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerTarget]) + 1) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerAttacker]) + 0) = 0; - *(u8*)((u8*)(&gBattleStruct->choicedMove[gBattlerAttacker]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerAttacker]) + 0) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerAttacker]) + 1) = 0; gBattlescriptCurrInstr += 5; @@ -9370,7 +9370,7 @@ static void Cmd_assistattackselect(void) s32 chooseableMovesNo = 0; struct Pokemon* party; s32 monId, moveId; - u16* validMoves = gBattleStruct->assistPossibleMoves; + u16 *validMoves = gBattleStruct->assistPossibleMoves; if (GET_BATTLER_SIDE(gBattlerAttacker) != B_SIDE_PLAYER) party = gEnemyParty; diff --git a/src/battle_setup.c b/src/battle_setup.c index be2f7e85911b..f8bc2d5ca794 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -1037,17 +1037,17 @@ static void InitTrainerBattleVariables(void) static inline void SetU8(void *ptr, u8 value) { - *(u8*)(ptr) = value; + *(u8 *)(ptr) = value; } static inline void SetU16(void *ptr, u16 value) { - *(u16*)(ptr) = value; + *(u16 *)(ptr) = value; } static inline void SetU32(void *ptr, u32 value) { - *(u32*)(ptr) = value; + *(u32 *)(ptr) = value; } static inline void SetPtr(const void *ptr, const void* value) diff --git a/src/battle_tower.c b/src/battle_tower.c index 354a087c415d..bebbdee7da4f 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -996,7 +996,7 @@ static bool8 ChooseSpecialBattleTowerTrainer(void) winStreak = GetCurrentBattleTowerWinStreak(lvlMode, battleMode); for (i = 0; i < BATTLE_TOWER_RECORD_COUNT; i++) { - u32 *record = (u32*)(&gSaveBlock2Ptr->frontier.towerRecords[i]); + u32 *record = (u32 *)(&gSaveBlock2Ptr->frontier.towerRecords[i]); u32 recordHasData = 0; u32 checksum = 0; for (j = 0; j < (sizeof(struct EmeraldBattleTowerRecord) - 4) / 4; j++) // - 4, because of the last field being the checksum itself. @@ -2374,7 +2374,7 @@ static void LoadMultiPartnerCandidatesData(void) r10 = 0; for (i = 0; i < BATTLE_TOWER_RECORD_COUNT; i++) { - u32 *record = (u32*)(&gSaveBlock2Ptr->frontier.towerRecords[i]); + u32 *record = (u32 *)(&gSaveBlock2Ptr->frontier.towerRecords[i]); u32 recordHasData = 0; u32 checksum = 0; for (j = 0; j < (sizeof(struct EmeraldBattleTowerRecord) - 4) / 4; j++) // - 4, because of the last field being the checksum itself. @@ -2690,7 +2690,7 @@ static void SetTowerInterviewData(void) static void ValidateBattleTowerRecordChecksums(void) { s32 i, j; - u32 *record = (u32*)(&gSaveBlock2Ptr->frontier.towerPlayer); + u32 *record = (u32 *)(&gSaveBlock2Ptr->frontier.towerPlayer); u32 checksum = 0; for (j = 0; j < (sizeof(struct EmeraldBattleTowerRecord) - 4) / 4; j++) // - 4, because of the last field being the checksum itself. @@ -2702,7 +2702,7 @@ static void ValidateBattleTowerRecordChecksums(void) for (i = 0; i < BATTLE_TOWER_RECORD_COUNT; i++) { - record = (u32*)(&gSaveBlock2Ptr->frontier.towerRecords[i]); + record = (u32 *)(&gSaveBlock2Ptr->frontier.towerRecords[i]); checksum = 0; for (j = 0; j < (sizeof(struct EmeraldBattleTowerRecord) - 4) / 4; j++) // - 4, because of the last field being the checksum itself. { @@ -3195,7 +3195,7 @@ static void ValidateApprenticesChecksums(void) for (i = 0; i < APPRENTICE_COUNT; i++) { - u32 *data = (u32*) &gSaveBlock2Ptr->apprentices[i]; + u32 *data = (u32 *) &gSaveBlock2Ptr->apprentices[i]; u32 checksum = 0; for (j = 0; j < (sizeof(struct Apprentice) - 4) / 4; j++) checksum += data[j]; @@ -3504,7 +3504,7 @@ u8 FacilityClassToGraphicsId(u8 facilityClass) bool32 ValidateBattleTowerRecord(u8 recordId) // unused { s32 i; - u32 *record = (u32*)(&gSaveBlock2Ptr->frontier.towerRecords[recordId]); + u32 *record = (u32 *)(&gSaveBlock2Ptr->frontier.towerRecords[recordId]); u32 checksum = 0; u32 hasData = 0; for (i = 0; i < (sizeof(struct EmeraldBattleTowerRecord) - 4) / 4; i++) // - 4, because of the last fjeld bejng the checksum jtself. diff --git a/src/battle_transition.c b/src/battle_transition.c index c523cbe7b9ad..507d5f230e00 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -2186,7 +2186,7 @@ static bool8 Wave_Init(struct Task *task) static bool8 Wave_Main(struct Task *task) { u8 i, sinIndex; - u16* toStore; + u16 *toStore; bool8 finished; sTransitionData->VBlank_DMA = FALSE; @@ -2347,7 +2347,7 @@ static bool8 Mugshot_SetGfx(struct Task *task) static bool8 Mugshot_ShowBanner(struct Task *task) { u8 i, sinIndex; - u16* toStore; + u16 *toStore; s16 x; s32 mergedValue; @@ -2388,7 +2388,7 @@ static bool8 Mugshot_ShowBanner(struct Task *task) if (task->tBottomBannerX < 0) task->tBottomBannerX = 0; - mergedValue = *(s32*)(&task->tTopBannerX); + mergedValue = *(s32 *)(&task->tTopBannerX); if (mergedValue == DISPLAY_WIDTH) task->tState++; @@ -2401,7 +2401,7 @@ static bool8 Mugshot_ShowBanner(struct Task *task) static bool8 Mugshot_StartOpponentSlide(struct Task *task) { u8 i; - u16* toStore; + u16 *toStore; sTransitionData->VBlank_DMA = FALSE; @@ -3716,8 +3716,8 @@ static void SpriteCB_WhiteBarFade(struct Sprite *sprite) else { u16 i; - u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->y]; - u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + DISPLAY_HEIGHT]; + u16 *ptr1 = &gScanlineEffectRegBuffers[0][sprite->y]; + u16 *ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + DISPLAY_HEIGHT]; for (i = 0; i < DISPLAY_HEIGHT / NUM_WHITE_BARS; i++) { ptr1[i] = sprite->sFade >> 8; @@ -3783,7 +3783,7 @@ static bool8 GridSquares_Init(struct Task *task) static bool8 GridSquares_Main(struct Task *task) { - u16* tileset; + u16 *tileset; if (task->tDelay == 0) { @@ -4061,7 +4061,7 @@ static void GetBg0TilemapDst(u16 **tileset) { u16 charBase = REG_BG0CNT >> 2; charBase <<= 14; - *tileset = (u16*)(BG_VRAM + charBase); + *tileset = (u16 *)(BG_VRAM + charBase); } void GetBg0TilesDst(u16 **tilemap, u16 **tileset) @@ -4072,8 +4072,8 @@ void GetBg0TilesDst(u16 **tilemap, u16 **tileset) screenBase <<= 11; charBase <<= 14; - *tilemap = (u16*)(BG_VRAM + screenBase); - *tileset = (u16*)(BG_VRAM + charBase); + *tilemap = (u16 *)(BG_VRAM + screenBase); + *tileset = (u16 *)(BG_VRAM + charBase); } static void FadeScreenBlack(void) diff --git a/src/battle_util.c b/src/battle_util.c index ceedfcbfacc4..e75d3f01d6f1 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -961,7 +961,7 @@ u8 TrySetCantSelectMoveBattleScript(void) u8 limitations = 0; u16 move = gBattleMons[gActiveBattler].moves[gBattleBufferB[gActiveBattler][2]]; u8 holdEffect; - u16* choicedMove = &gBattleStruct->choicedMove[gActiveBattler]; + u16 *choicedMove = &gBattleStruct->choicedMove[gActiveBattler]; if (gDisableStructs[gActiveBattler].disabledMove == move && move != MOVE_NONE) { @@ -1199,7 +1199,7 @@ u8 DoFieldEndTurnEffects(void) // It's stupid, but won't match without it { - u8* var = &gBattleStruct->turnCountersTracker; + u8 *var = &gBattleStruct->turnCountersTracker; (*var)++; gBattleStruct->turnSideTracker = 0; } diff --git a/src/battle_util2.c b/src/battle_util2.c index 767e31492731..8a202c98679f 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -109,12 +109,12 @@ void SwitchPartyOrderInGameMulti(u8 battlerId, u8 arg1) { s32 i; for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - gBattlePartyCurrentOrder[i] = *(0 * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)); + gBattlePartyCurrentOrder[i] = *(0 * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)); SwitchPartyMonSlots(GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battlerId]), GetPartyIdFromBattlePartyId(arg1)); for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++) - *(0 * 3 + i + (u8*)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; + *(0 * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i]; } } diff --git a/src/berry.c b/src/berry.c index 75373e6b0c46..eaf23d09ab9b 100644 --- a/src/berry.c +++ b/src/berry.c @@ -946,7 +946,7 @@ void ClearEnigmaBerries(void) void SetEnigmaBerry(u8 *src) { u32 i; - u8 *dest = (u8*)&gSaveBlock1Ptr->enigmaBerry; + u8 *dest = (u8 *)&gSaveBlock1Ptr->enigmaBerry; for (i = 0; i < sizeof(gSaveBlock1Ptr->enigmaBerry); i++) dest[i] = src[i]; @@ -958,7 +958,7 @@ static u32 GetEnigmaBerryChecksum(struct EnigmaBerry *enigmaBerry) u32 checksum; u8 *dest; - dest = (u8*)enigmaBerry; + dest = (u8 *)enigmaBerry; checksum = 0; for (i = 0; i < sizeof(gSaveBlock1Ptr->enigmaBerry) - sizeof(gSaveBlock1Ptr->enigmaBerry.checksum); i++) checksum += dest[i]; @@ -1172,7 +1172,7 @@ void GetBerryNameByBerryType(u8 berry, u8 *string) string[BERRY_NAME_LENGTH] = EOS; } -void GetBerryCountStringByBerryType(u8 berry, u8* dest, u32 berryCount) +void GetBerryCountStringByBerryType(u8 berry, u8 *dest, u32 berryCount) { GetBerryCountString(dest, GetBerryInfo(berry)->name, berryCount); } diff --git a/src/berry_blender.c b/src/berry_blender.c index f7e2c5df5dc1..83493c8d2b40 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -215,7 +215,7 @@ static void SetPlayerBerryData(u8, u16); static void Blender_AddTextPrinter(u8, const u8 *, u8, u8, s32, s32); static void ResetLinkCmds(void); static void CreateParticleSprites(void); -static void ShakeBgCoordForHit(s16*, u16); +static void ShakeBgCoordForHit(s16 *, u16); static void TryUpdateProgressBar(u16, u16); static void UpdateRPM(u16); static void RestoreBgCoords(void); @@ -265,7 +265,7 @@ static const u8 sText_Master[] = _("MASTER"); static const u8 sText_Dude[] = _("DUDE"); static const u8 sText_Miss[] = _("MISS"); -static const u8* const sBlenderOpponentsNames[] = +static const u8 *const sBlenderOpponentsNames[] = { [BLENDER_MISTER] = sText_Mister, [BLENDER_LADDIE] = sText_Laddie, @@ -2260,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; @@ -2494,7 +2494,7 @@ static void CalculatePokeblock(struct BlenderBerry *berries, struct Pokeblock *p } // Unused -static void Debug_CalculatePokeblock(struct BlenderBerry* berries, struct Pokeblock* pokeblock, u8 numPlayers, u8* flavors, u16 maxRPM) +static void Debug_CalculatePokeblock(struct BlenderBerry* berries, struct Pokeblock* pokeblock, u8 numPlayers, u8 *flavors, u16 maxRPM) { CalculatePokeblock(berries, pokeblock, numPlayers, flavors, maxRPM); } @@ -3318,7 +3318,7 @@ static void UpdateProgressBar(u16 value, u16 limit) s32 amountFilled, maxFilledSegment, subSegmentsFilled, i; u16 *vram; - vram = (u16*)(BG_SCREEN_ADDR(12)); + vram = (u16 *)(BG_SCREEN_ADDR(12)); amountFilled = (value * 64) / limit; maxFilledSegment = amountFilled / 8; @@ -3368,22 +3368,22 @@ static void UpdateRPM(u16 speed) digits[i] = currentRPM % 10; currentRPM /= 10; } - *((u16*)(BG_SCREEN_ADDR(12) + 0x458)) = digits[4] + RPM_DIGIT; - *((u16*)(BG_SCREEN_ADDR(12) + 0x45A)) = digits[3] + RPM_DIGIT; - *((u16*)(BG_SCREEN_ADDR(12) + 0x45C)) = digits[2] + RPM_DIGIT; - *((u16*)(BG_SCREEN_ADDR(12) + 0x460)) = digits[1] + RPM_DIGIT; - *((u16*)(BG_SCREEN_ADDR(12) + 0x462)) = digits[0] + RPM_DIGIT; + *((u16 *)(BG_SCREEN_ADDR(12) + 0x458)) = digits[4] + RPM_DIGIT; + *((u16 *)(BG_SCREEN_ADDR(12) + 0x45A)) = digits[3] + RPM_DIGIT; + *((u16 *)(BG_SCREEN_ADDR(12) + 0x45C)) = digits[2] + RPM_DIGIT; + *((u16 *)(BG_SCREEN_ADDR(12) + 0x460)) = digits[1] + RPM_DIGIT; + *((u16 *)(BG_SCREEN_ADDR(12) + 0x462)) = digits[0] + RPM_DIGIT; } // Passed a pointer to the bg x/y // Used when hitting a Best at high RPM -static void ShakeBgCoordForHit(s16* coord, u16 speed) +static void ShakeBgCoordForHit(s16 *coord, u16 speed) { if (*coord == 0) *coord = (Random() % speed) - (speed / 2); } -static void RestoreBgCoord(s16* coord) +static void RestoreBgCoord(s16 *coord) { if (*coord < 0) (*coord)++; @@ -3398,7 +3398,7 @@ static void RestoreBgCoords(void) RestoreBgCoord(&sBerryBlender->bg_Y); } -static void BlenderLandShakeBgCoord(s16* coord, u16 timer) +static void BlenderLandShakeBgCoord(s16 *coord, u16 timer) { s32 strength; diff --git a/src/cable_club.c b/src/cable_club.c index 5c7d32d4b6f7..e43163bbeee8 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -879,7 +879,7 @@ static void Task_StartWiredCableClubBattle(u8 taskId) static void Task_StartWirelessCableClubBattle(u8 taskId) { int i; - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; switch (tState) { diff --git a/src/contest.c b/src/contest.c index edaaef7f8654..ae0b5c8c17de 100644 --- a/src/contest.c +++ b/src/contest.c @@ -859,19 +859,19 @@ static const struct CompressedSpriteSheet sSpriteSheets_ContestantsTurnBlinkEffe static const struct SpritePalette sSpritePalettes_ContestantsTurnBlinkEffect[CONTESTANT_COUNT] = { { - .data = (u16*)(gHeap + 0x1A0A4), + .data = (u16 *)(gHeap + 0x1A0A4), .tag = TAG_BLINK_EFFECT_CONTESTANT0 }, { - .data = (u16*)(gHeap + 0x1A0C4), + .data = (u16 *)(gHeap + 0x1A0C4), .tag = TAG_BLINK_EFFECT_CONTESTANT1 }, { - .data = (u16*)(gHeap + 0x1A0E4), + .data = (u16 *)(gHeap + 0x1A0E4), .tag = TAG_BLINK_EFFECT_CONTESTANT2 }, { - .data = (u16*)(gHeap + 0x1A104), + .data = (u16 *)(gHeap + 0x1A104), .tag = TAG_BLINK_EFFECT_CONTESTANT3 } }; @@ -1396,7 +1396,7 @@ static void Task_RaiseCurtainAtStart(u8 taskId) gTasks[taskId].data[0]++; break; case 1: - *(s16*)&gBattle_BG1_Y += 7; + *(s16 *)&gBattle_BG1_Y += 7; if ((s16)gBattle_BG1_Y <= DISPLAY_HEIGHT) break; gTasks[taskId].data[0]++; diff --git a/src/decompress.c b/src/decompress.c index 92c840a6387a..647f7f60ed69 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -268,7 +268,7 @@ bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src struct SpriteSheet dest; void* buffer; - buffer = AllocZeroed(*((u32*)(&src->data[0])) >> 8); + buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); LZ77UnCompWram(src->data, buffer); dest.data = buffer; @@ -285,7 +285,7 @@ bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette struct SpritePalette dest; void* buffer; - buffer = AllocZeroed(*((u32*)(&src->data[0])) >> 8); + buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); LZ77UnCompWram(src->data, buffer); dest.data = buffer; dest.tag = src->tag; diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index b87fe3092b00..d061c218e264 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -323,7 +323,7 @@ static bool32 TryPickBerry(u8, u8, u8); static void UpdateFallingBerries(void); static void UpdateGame_Leader(void); static void UpdateGame_Member(void); -static void GetActiveBerryColumns(u8, u8*, u8*); +static void GetActiveBerryColumns(u8, u8 *, u8 *); static bool32 AllPlayersReadyToStart(void); static void ResetReadyToStart(void); static bool32 ReadyToEndGame_Leader(void); diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 5dd83c9b1fc7..469033b3471e 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -76,7 +76,7 @@ static void SpriteCB_Egg_WaitHatch(struct Sprite*); static void SpriteCB_Egg_Hatch(struct Sprite*); static void SpriteCB_Egg_Reveal(struct Sprite*); static void SpriteCB_EggShard(struct Sprite*); -static void EggHatchPrintMessage(u8, u8*, u8, u8, u8); +static void EggHatchPrintMessage(u8, u8 *, u8, u8, u8); static void CreateRandomEggShardSprite(void); static void CreateEggShardSprite(u8, u8, s16, s16, s16, u8); @@ -420,7 +420,7 @@ bool8 CheckDaycareMonReceivedMail(void) return _CheckDaycareMonReceivedMail(&gSaveBlock1Ptr->daycare, gSpecialVar_0x8004); } -static u8 EggHatchCreateMonSprite(u8 useAlt, u8 state, u8 partyId, u16* speciesLoc) +static u8 EggHatchCreateMonSprite(u8 useAlt, u8 state, u8 partyId, u16 *speciesLoc) { u8 position = 0; u8 spriteId = 0; @@ -914,7 +914,7 @@ static void CreateEggShardSprite(u8 x, u8 y, s16 velocityX, s16 velocityY, s16 a StartSpriteAnim(&gSprites[spriteId], spriteAnimIndex); } -static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed) +static void EggHatchPrintMessage(u8 windowId, u8 *string, u8 x, u8 y, u8 speed) { FillWindowPixelBuffer(windowId, PIXEL_FILL(15)); sEggHatchData->textColor[0] = 0; diff --git a/src/ereader_screen.c b/src/ereader_screen.c index a22b85babdaf..3baff84a8580 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -397,8 +397,8 @@ static void Task_EReader(u8 taskId) break; case ER_STATE_CONNECTING: AddTextPrinterToWindow1(gJPText_Connecting); - // XXX: This (u32*) cast is discarding the const qualifier from gMultiBootProgram_EReader_Start - EReader_Load(&gEReaderData, gMultiBootProgram_EReader_End - gMultiBootProgram_EReader_Start, (u32*)gMultiBootProgram_EReader_Start); + // XXX: This (u32 *) cast is discarding the const qualifier from gMultiBootProgram_EReader_Start + EReader_Load(&gEReaderData, gMultiBootProgram_EReader_End - gMultiBootProgram_EReader_Start, (u32 *)gMultiBootProgram_EReader_Start); data->state = ER_STATE_TRANSFER; break; case ER_STATE_TRANSFER: diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 90e713e638a1..b1b3ae5bc60a 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -94,20 +94,20 @@ static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *, s16, s16); static void UpdateObjectEventOffscreen(struct ObjectEvent *, struct Sprite *); static void UpdateObjectEventSpriteVisibility(struct ObjectEvent *, struct Sprite *); static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent*); -static void GetGroundEffectFlags_Reflection(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_SandHeap(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_HotSprings(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_Tracks(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_Puddle(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_Ripple(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_Seaweed(struct ObjectEvent*, u32*); -static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent*, u32*); +static void GetGroundEffectFlags_Reflection(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_SandHeap(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_HotSprings(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_Tracks(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_Puddle(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_Ripple(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_Seaweed(struct ObjectEvent*, u32 *); +static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent*, u32 *); static u8 ObjectEventGetNearbyReflectionType(struct ObjectEvent*); static u8 GetReflectionTypeByMetatileBehavior(u32); static void InitObjectPriorityByElevation(struct Sprite *, u8); @@ -1911,9 +1911,9 @@ void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible) void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup) { - *(u8*)(localId) = objectEvent->localId; - *(u8*)(mapNum) = objectEvent->mapNum; - *(u8*)(mapGroup) = objectEvent->mapGroup; + *(u8 *)(localId) = objectEvent->localId; + *(u8 *)(mapNum) = objectEvent->mapNum; + *(u8 *)(mapGroup) = objectEvent->mapGroup; } void AllowObjectAtPosTriggerGroundEffects(s16 x, s16 y) diff --git a/src/field_effect.c b/src/field_effect.c index ea0374e1eb30..f84dd58b6e0a 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -223,9 +223,9 @@ static void FlyInFieldEffect_WaitBirdReturn(struct Task *); static void FlyInFieldEffect_End(struct Task *); static void Task_DestroyDeoxysRock(u8 taskId); -static void DestroyDeoxysRockEffect_CameraShake(s16*, u8); -static void DestroyDeoxysRockEffect_RockFragments(s16*, u8); -static void DestroyDeoxysRockEffect_WaitAndEnd(s16*, u8); +static void DestroyDeoxysRockEffect_CameraShake(s16 *, u8); +static void DestroyDeoxysRockEffect_RockFragments(s16 *, u8); +static void DestroyDeoxysRockEffect_WaitAndEnd(s16 *, u8); static void CreateDeoxysRockFragments(struct Sprite*); static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite); @@ -3088,15 +3088,15 @@ u8 FldEff_RayquazaSpotlight(void) { for (j = 12; j < 18; j++) { - ((u16*)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0xBFF4 + i * 6 + j + 1; + ((u16 *)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0xBFF4 + i * 6 + j + 1; } } for (k = 0; k < 90; k++) { for (i = 0; i < 8; i++) { - *(u16*)(BG_CHAR_ADDR(2) + (k + 1) * 32 + i * 4) = (sSpotlight_Gfx[k * 32 + i * 4 + 1] << 8) + sSpotlight_Gfx[k * 32 + i * 4]; - *(u16*)(BG_CHAR_ADDR(2) + (k + 1) * 32 + i * 4 + 2) = (sSpotlight_Gfx[k * 32 + i * 4 + 3] << 8) + sSpotlight_Gfx[k * 32 + i * 4 + 2]; + *(u16 *)(BG_CHAR_ADDR(2) + (k + 1) * 32 + i * 4) = (sSpotlight_Gfx[k * 32 + i * 4 + 1] << 8) + sSpotlight_Gfx[k * 32 + i * 4]; + *(u16 *)(BG_CHAR_ADDR(2) + (k + 1) * 32 + i * 4 + 2) = (sSpotlight_Gfx[k * 32 + i * 4 + 3] << 8) + sSpotlight_Gfx[k * 32 + i * 4 + 2]; } } return spriteId; @@ -3675,7 +3675,7 @@ static void StartEndingDeoxysRockCameraShake(u8 taskId) #undef tEndDelay #undef tEnding -static void (*const sDestroyDeoxysRockEffectFuncs[])(s16*, u8) = { +static void (*const sDestroyDeoxysRockEffectFuncs[])(s16 *, u8) = { DestroyDeoxysRockEffect_CameraShake, DestroyDeoxysRockEffect_RockFragments, DestroyDeoxysRockEffect_WaitAndEnd, @@ -3689,7 +3689,7 @@ static void Task_DestroyDeoxysRock(u8 taskId) sDestroyDeoxysRockEffectFuncs[tState](data, taskId); } -static void DestroyDeoxysRockEffect_CameraShake(s16* data, u8 taskId) +static void DestroyDeoxysRockEffect_CameraShake(s16 *data, u8 taskId) { u8 newTaskId = CreateTask(Task_DeoxysRockCameraShake, 90); PlaySE(SE_THUNDER2); @@ -3697,7 +3697,7 @@ static void DestroyDeoxysRockEffect_CameraShake(s16* data, u8 taskId) tState++; } -static void DestroyDeoxysRockEffect_RockFragments(s16* data, u8 taskId) +static void DestroyDeoxysRockEffect_RockFragments(s16 *data, u8 taskId) { if (++tTimer > 120) { @@ -3713,7 +3713,7 @@ static void DestroyDeoxysRockEffect_RockFragments(s16* data, u8 taskId) } } -static void DestroyDeoxysRockEffect_WaitAndEnd(s16* data, u8 taskId) +static void DestroyDeoxysRockEffect_WaitAndEnd(s16 *data, u8 taskId) { if (!gPaletteFade.active && !FuncIsActiveTask(Task_DeoxysRockCameraShake)) { diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index c3332c7fc681..5b8123a71d98 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -1525,7 +1525,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) { for (j = 12; j < 18; j++) { - ((u16*)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0xBFF4 + i * 6 + j + 1; + ((u16 *)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0xBFF4 + i * 6 + j + 1; } } } @@ -1611,7 +1611,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite) { for (j = 12; j < 18; j++) { - ((u16*)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0; + ((u16 *)(BG_SCREEN_ADDR(31)))[i * 32 + j] = 0; } } SetGpuReg(REG_OFFSET_BG0VOFS, 0); diff --git a/src/field_message_box.c b/src/field_message_box.c index fa792ee565da..64734cc2092e 100755 --- a/src/field_message_box.c +++ b/src/field_message_box.c @@ -8,7 +8,7 @@ static EWRAM_DATA u8 sFieldMessageBoxMode = 0; -static void ExpandStringAndStartDrawFieldMessage(const u8*, bool32); +static void ExpandStringAndStartDrawFieldMessage(const u8 *, bool32); static void StartDrawFieldMessage(void); void InitFieldMessageBox(void) @@ -116,7 +116,7 @@ bool8 ShowFieldMessageFromBuffer(void) return TRUE; } -static void ExpandStringAndStartDrawFieldMessage(const u8* str, bool32 allowSkippingDelayWithButtonPress) +static void ExpandStringAndStartDrawFieldMessage(const u8 *str, bool32 allowSkippingDelayWithButtonPress) { StringExpandPlaceholders(gStringVar4, str); AddTextPrinterForMessage(allowSkippingDelayWithButtonPress); diff --git a/src/fieldmap.c b/src/fieldmap.c index a02355e721de..581005af0fa3 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -43,7 +43,7 @@ static void FillWestConnection(struct MapHeader const *mapHeader, struct MapHead static void FillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset); static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader); static void LoadSavedMapView(void); -static bool8 SkipCopyingMetatileFromSavedMap(u16* mapBlock, u16 mapWidth, u8 yMode); +static bool8 SkipCopyingMetatileFromSavedMap(u16 *mapBlock, u16 mapWidth, u8 yMode); static struct MapConnection *GetIncomingConnection(u8 direction, int x, int y); static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, struct MapConnection *connection); static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset); @@ -823,7 +823,7 @@ void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable) } } -static bool8 SkipCopyingMetatileFromSavedMap(u16* mapBlock, u16 mapWidth, u8 yMode) +static bool8 SkipCopyingMetatileFromSavedMap(u16 *mapBlock, u16 mapWidth, u8 yMode) { if (yMode == 0xFF) return FALSE; @@ -879,17 +879,17 @@ void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) if (tileset->isSecondary == FALSE) { LoadPalette(&black, destOffset, 2); - LoadPalette(((u16*)tileset->palettes) + 1, destOffset + 1, size - 2); + LoadPalette(((u16 *)tileset->palettes) + 1, destOffset + 1, size - 2); FieldmapPaletteDummy(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) { - LoadPalette(((u16*)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); + LoadPalette(((u16 *)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); FieldmapPaletteDummy(destOffset, size >> 1); } else { - LoadCompressedPalette((u32*)tileset->palettes, destOffset, size); + LoadCompressedPalette((u32 *)tileset->palettes, destOffset, size); FieldmapPaletteDummy(destOffset, size >> 1); } } diff --git a/src/image_processing_effects.c b/src/image_processing_effects.c index 60b105163ed7..51a5d13993a9 100644 --- a/src/image_processing_effects.c +++ b/src/image_processing_effects.c @@ -28,14 +28,14 @@ static void ApplyImageEffect_PersonalityColor(u8); static void ApplyImageEffect_RedChannelGrayscale(u8); static void ApplyImageEffect_RedChannelGrayscaleHighlight(u8); static void AddPointillismPoints(u16); -static u16 ConvertColorToGrayscale(u16*); -static u16 QuantizePixel_Blur(u16*, u16*, u16*); -static u16 QuantizePixel_PersonalityColor(u16*, u8); -static u16 QuantizePixel_BlackAndWhite(u16*); -static u16 QuantizePixel_BlackOutline(u16*, u16*); -static u16 QuantizePixel_Invert(u16*); -static u16 QuantizePixel_BlurHard(u16*, u16*, u16*); -static u16 QuantizePixel_MotionBlur(u16*, u16*); +static u16 ConvertColorToGrayscale(u16 *); +static u16 QuantizePixel_Blur(u16 *, u16 *, u16 *); +static u16 QuantizePixel_PersonalityColor(u16 *, u8); +static u16 QuantizePixel_BlackAndWhite(u16 *); +static u16 QuantizePixel_BlackOutline(u16 *, u16 *); +static u16 QuantizePixel_Invert(u16 *); +static u16 QuantizePixel_BlurHard(u16 *, u16 *, u16 *); +static u16 QuantizePixel_MotionBlur(u16 *, u16 *); static u16 GetColorFromPersonality(u8); static void QuantizePalette_Standard(bool8); static void SetPresetPalette_PrimaryColors(void); @@ -46,10 +46,10 @@ static void SetPresetPalette_GrayscaleSmall(void); static void QuantizePalette_GrayscaleSmall(void); static void SetPresetPalette_BlackAndWhite(void); static void QuantizePalette_BlackAndWhite(void); -static u16 QuantizePixel_Standard(u16*); -static u16 QuantizePixel_GrayscaleSmall(u16*); -static u16 QuantizePixel_Grayscale(u16*); -static u16 QuantizePixel_PrimaryColors(u16*); +static u16 QuantizePixel_Standard(u16 *); +static u16 QuantizePixel_GrayscaleSmall(u16 *); +static u16 QuantizePixel_Grayscale(u16 *); +static u16 QuantizePixel_PrimaryColors(u16 *); #define MAX_DIMENSION 64 @@ -1091,7 +1091,7 @@ static u16 QuantizePixel_Standard(u16 *pixel) return RGB2(red, green, blue); } -static u16 QuantizePixel_PrimaryColors(u16* color) +static u16 QuantizePixel_PrimaryColors(u16 *color) { u16 red = GET_R(*color); u16 green = GET_G(*color); diff --git a/src/international_string_util.c b/src/international_string_util.c index 6a1423e5e5f9..f71734fa7eac 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -48,7 +48,7 @@ int GetMaxWidthInMenuTable(const struct MenuAction *actions, int numActions) return ConvertPixelWidthToTileWidth(maxWidth); } -int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8* actionIds, int numActions) +int GetMaxWidthInSubsetOfMenuTable(const struct MenuAction *actions, const u8 *actionIds, int numActions) { int i, maxWidth; diff --git a/src/item_menu.c b/src/item_menu.c index fc64fdc22447..addf8465dddd 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -128,7 +128,7 @@ static bool8 LoadBagMenu_Graphics(void); static void LoadBagMenuTextWindows(void); static void AllocateBagItemListBuffers(void); static void LoadBagItemListBuffers(u8); -static void PrintPocketNames(const u8*, const u8*); +static void PrintPocketNames(const u8 *, const u8 *); static void CopyPocketNameToWindow(u32); static void DrawPocketIndicatorSquare(u8, bool8); static void CreatePocketScrollArrowPair(void); @@ -138,10 +138,10 @@ static void PrepareTMHMMoveWindow(void); static bool8 IsWallysBag(void); static void Task_WallyTutorialBagMenu(u8); static void Task_BagMenu_HandleInput(u8); -static void GetItemName(s8*, u16); +static void GetItemName(s8 *, 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); +static void BagMenu_Print(u8, u8, const u8 *, u8, u8, u8, u8, u8, u8); static void Task_CloseBagMenu(u8); static u8 AddItemMessageWindow(u8); static void RemoveItemMessageWindow(u8); @@ -1080,7 +1080,7 @@ void Task_FadeAndCloseBagMenu(u8 taskId) static void Task_CloseBagMenu(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!gPaletteFade.active) { DestroyListMenuTask(tListTaskId, &gBagPosition.scrollPosition[gBagPosition.pocket], &gBagPosition.cursorPosition[gBagPosition.pocket]); @@ -1162,7 +1162,7 @@ u8 GetItemListPosition(u8 pocketId) void DisplayItemMessage(u8 taskId, u8 fontId, const u8 *str, void (*callback)(u8 taskId)) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; tMsgWindowId = AddItemMessageWindow(ITEMWIN_MESSAGE); FillWindowPixelBuffer(tMsgWindowId, PIXEL_FILL(1)); @@ -1172,9 +1172,9 @@ void DisplayItemMessage(u8 taskId, u8 fontId, const u8 *str, void (*callback)(u8 void CloseItemMessage(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; RemoveItemMessageWindow(ITEMWIN_MESSAGE); DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); UpdatePocketItemList(gBagPosition.pocket); @@ -1210,9 +1210,9 @@ static void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned) static void Task_BagMenu_HandleInput(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; s32 listPosition; if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE && !gPaletteFade.active) @@ -1313,7 +1313,7 @@ static void ChangeBagPocketId(u8 *bagPocketId, s8 deltaBagPocketId) static void SwitchBagPocket(u8 taskId, s16 deltaBagPocketId, bool16 skipEraseList) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; u8 newPocket; tPocketSwitchState = 0; @@ -1352,7 +1352,7 @@ static void SwitchBagPocket(u8 taskId, s16 deltaBagPocketId, bool16 skipEraseLis static void Task_SwitchBagPocket(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!MenuHelpers_IsLinkActive() && !IsWallysBag()) { @@ -1430,7 +1430,7 @@ static bool8 CanSwapItems(void) static void StartItemSwap(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; ListMenuSetUnkIndicatorsStructField(tListTaskId, 16, 1); tListPosition = gBagPosition.scrollPosition[gBagPosition.pocket] + gBagPosition.cursorPosition[gBagPosition.pocket]; @@ -1447,7 +1447,7 @@ static void StartItemSwap(u8 taskId) static void Task_HandleSwappingItemsInput(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { @@ -1485,9 +1485,9 @@ static void Task_HandleSwappingItemsInput(u8 taskId) static void DoItemSwap(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; u16 realPos = (*scrollPos + *cursorPos); if (tListPosition == realPos || tListPosition == realPos - 1) @@ -1512,9 +1512,9 @@ static void DoItemSwap(u8 taskId) static void CancelItemSwap(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; gBagMenu->toSwapPos = NOT_SWAPPING; DestroyListMenuTask(tListTaskId, scrollPos, cursorPos); @@ -1806,7 +1806,7 @@ static void ItemMenu_UseOutOfBattle(u8 taskId) static void ItemMenu_Toss(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; RemoveContextWindow(); tItemCount = 1; @@ -1827,7 +1827,7 @@ static void ItemMenu_Toss(u8 taskId) static void AskTossItems(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); @@ -1839,7 +1839,7 @@ static void AskTossItems(u8 taskId) static void CancelToss(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; PrintItemDescription(tListPosition); BagMenu_PrintCursor(tListTaskId, COLORID_NORMAL); @@ -1848,7 +1848,7 @@ static void CancelToss(u8 taskId) static void Task_ChooseHowManyToToss(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { @@ -1870,7 +1870,7 @@ static void Task_ChooseHowManyToToss(u8 taskId) static void ConfirmToss(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, MAX_ITEM_DIGITS); @@ -1884,9 +1884,9 @@ static void ConfirmToss(u8 taskId) // For when items are tossed or deposited static void Task_RemoveItemFromBag(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; if (JOY_NEW(A_BUTTON | B_BUTTON)) { @@ -1904,9 +1904,9 @@ static void Task_RemoveItemFromBag(u8 taskId) static void ItemMenu_Register(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; if (gSaveBlock1Ptr->registeredItem == gSpecialVar_ItemId) gSaveBlock1Ptr->registeredItem = 0; @@ -1973,7 +1973,7 @@ static void ItemMenu_CheckTag(u8 taskId) static void ItemMenu_Cancel(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; RemoveContextWindow(); PrintItemDescription(tListPosition); @@ -2066,7 +2066,7 @@ bool8 UseRegisteredKeyItemOnField(void) static void Task_ItemContext_Sell(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (ItemId_GetPrice(gSpecialVar_ItemId) == 0) { @@ -2093,7 +2093,7 @@ static void Task_ItemContext_Sell(u8 taskId) static void DisplaySellItemPriceAndConfirm(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_ICanPayVar1); @@ -2107,7 +2107,7 @@ static void AskSellItems(u8 taskId) static void CancelSell(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; RemoveMoneyWindow(); RemoveItemMessageWindow(ITEMWIN_MESSAGE); @@ -2117,7 +2117,7 @@ static void CancelSell(u8 taskId) static void InitSellHowManyInput(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; u8 windowId = BagMenu_AddWindow(ITEMWIN_QUANTITY_WIDE); PrintItemSoldAmount(windowId, 1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount); @@ -2127,7 +2127,7 @@ static void InitSellHowManyInput(u8 taskId) static void Task_ChooseHowManyToSell(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { @@ -2152,7 +2152,7 @@ static void Task_ChooseHowManyToSell(u8 taskId) static void ConfirmSell(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; CopyItemName(gSpecialVar_ItemId, gStringVar2); ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6); @@ -2162,9 +2162,9 @@ static void ConfirmSell(u8 taskId) static void SellItem(u8 taskId) { - s16* data = gTasks[taskId].data; - u16* scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; - u16* cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; + s16 *data = gTasks[taskId].data; + u16 *scrollPos = &gBagPosition.scrollPosition[gBagPosition.pocket]; + u16 *cursorPos = &gBagPosition.cursorPosition[gBagPosition.pocket]; PlaySE(SE_SHOP); RemoveBagItem(gSpecialVar_ItemId, tItemCount); @@ -2191,7 +2191,7 @@ static void WaitAfterItemSell(u8 taskId) static void Task_ItemContext_Deposit(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; tItemCount = 1; if (tQuantity == 1) @@ -2211,7 +2211,7 @@ static void Task_ItemContext_Deposit(u8 taskId) static void Task_ChooseHowManyToDeposit(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE) { @@ -2235,7 +2235,7 @@ static void Task_ChooseHowManyToDeposit(u8 taskId) static void TryDepositItem(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0)); if (ItemId_GetImportance(gSpecialVar_ItemId)) @@ -2263,7 +2263,7 @@ static void TryDepositItem(u8 taskId) static void WaitDepositErrorMessage(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (JOY_NEW(A_BUTTON | B_BUTTON)) { @@ -2327,7 +2327,7 @@ void DoWallyTutorialBagMenu(void) static void Task_WallyTutorialBagMenu(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!gPaletteFade.active) { @@ -2423,19 +2423,19 @@ static void PrintPocketNames(const u8 *pocketName1, const u8 *pocketName2) offset = GetStringCenterAlignXOffset(FONT_NORMAL, pocketName2, 0x40); BagMenu_Print(windowId, FONT_NORMAL, pocketName2, offset + 0x40, 1, 0, 0, TEXT_SKIP_DRAW, COLORID_POCKET_NAME); } - CpuCopy32((u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, sizeof(gBagMenu->pocketNameBuffer)); + CpuCopy32((u8 *)GetWindowAttribute(windowId, WINDOW_TILE_DATA), gBagMenu->pocketNameBuffer, sizeof(gBagMenu->pocketNameBuffer)); RemoveWindow(windowId); } static void CopyPocketNameToWindow(u32 a) { u8 (* tileDataBuffer)[32][32]; - u8* windowTileData; + u8 *windowTileData; int b; if (a > 8) a = 8; tileDataBuffer = &gBagMenu->pocketNameBuffer; - windowTileData = (u8*)GetWindowAttribute(2, WINDOW_TILE_DATA); + windowTileData = (u8 *)GetWindowAttribute(2, WINDOW_TILE_DATA); CpuCopy32(tileDataBuffer[0][a], windowTileData, 0x100); // Top half of pocket name b = a + 16; CpuCopy32(tileDataBuffer[0][b], windowTileData + 0x100, 0x100); // Bottom half of pocket name @@ -2551,7 +2551,7 @@ static void PrintTMHMMoveData(u16 itemId) { u8 i; u16 moveId; - const u8* text; + const u8 *text; FillWindowPixelBuffer(WIN_TMHM_INFO, PIXEL_FILL(0)); if (itemId == ITEM_NONE) diff --git a/src/item_use.c b/src/item_use.c index fc2425fc0cc3..e3604b064534 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -195,7 +195,7 @@ void ItemUseOutOfBattle_Mail(u8 taskId) void ItemUseOutOfBattle_Bike(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; s16 coordsY; s16 coordsX; u8 behavior; @@ -301,7 +301,7 @@ static void Task_UseItemfinder(u8 taskId) u8 playerDir; u8 playerDirToItem; u8 i; - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (tCounter == 0) { if (tItemfinderBeeps == 4) @@ -843,7 +843,7 @@ void ItemUseOutOfBattle_Repel(u8 taskId) static void Task_StartUseRepel(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (++data[8] > 7) { diff --git a/src/libisagbprn.c b/src/libisagbprn.c index 7a70cf41fa96..6fb9d5ec084b 100644 --- a/src/libisagbprn.c +++ b/src/libisagbprn.c @@ -160,7 +160,7 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP /* void NoCashGBAPrint(const char *pBuf) { - *(volatile u32*)NOCASHGBAPRINTADDR2 = (u32)pBuf; + *(volatile u32 *)NOCASHGBAPRINTADDR2 = (u32)pBuf; } void NoCashGBAPrintf(const char *pBuf, ...) diff --git a/src/librfu_intr.c b/src/librfu_intr.c index d902b1c45be6..ab4392e22964 100644 --- a/src/librfu_intr.c +++ b/src/librfu_intr.c @@ -41,7 +41,7 @@ static void sio32intr_clock_master(void) { if (gSTWIStatus->reqNext <= gSTWIStatus->reqLength) { - REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket->rfuPacket8.data)[gSTWIStatus->reqNext]; + REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket->rfuPacket8.data)[gSTWIStatus->reqNext]; gSTWIStatus->reqNext++; } else @@ -62,7 +62,7 @@ static void sio32intr_clock_master(void) if ((regSIODATA32 & 0xFFFF0000) == 0x99660000) { gSTWIStatus->ackNext = 0; - ((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32; + ((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32; gSTWIStatus->ackNext++; gSTWIStatus->ackActiveCommand = regSIODATA32; gSTWIStatus->ackLength = ackLen = regSIODATA32 >> 8; @@ -85,7 +85,7 @@ static void sio32intr_clock_master(void) } else if (gSTWIStatus->state == 2) // master receive ack { - ((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32; + ((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32; gSTWIStatus->ackNext++; if (gSTWIStatus->ackLength < gSTWIStatus->ackNext) gSTWIStatus->state = 3; // master done ack @@ -158,7 +158,7 @@ static void sio32intr_clock_slave(void) regSIODATA32 = REG_SIODATA32; if (gSTWIStatus->state == 5) // slave receive req init { - ((u32*)gSTWIStatus->rxPacket)[0] = regSIODATA32; + ((u32 *)gSTWIStatus->rxPacket)[0] = regSIODATA32; gSTWIStatus->reqNext = 1; r0 = 0x99660000; // variable reuse required @@ -179,24 +179,24 @@ static void sio32intr_clock_slave(void) ) { gSTWIStatus->ackActiveCommand = gSTWIStatus->reqActiveCommand + 0x80; - ((u32*)gSTWIStatus->txPacket)[0] = 0x99660000 + gSTWIStatus->ackActiveCommand; + ((u32 *)gSTWIStatus->txPacket)[0] = 0x99660000 + gSTWIStatus->ackActiveCommand; gSTWIStatus->ackLength = 0; } else { - ((u32*)gSTWIStatus->txPacket)[0] = 0x996601EE; + ((u32 *)gSTWIStatus->txPacket)[0] = 0x996601EE; if (gSTWIStatus->reqActiveCommand >= 0x10 && gSTWIStatus->reqActiveCommand <= 0x3D) { - ((u32*)gSTWIStatus->txPacket)[1] = 1; + ((u32 *)gSTWIStatus->txPacket)[1] = 1; } else { - ((u32*)gSTWIStatus->txPacket)[1] = 2; + ((u32 *)gSTWIStatus->txPacket)[1] = 2; } gSTWIStatus->ackLength = 1; gSTWIStatus->error = ERR_REQ_CMD_ACK_REJECTION; } - REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[0]; + REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[0]; gSTWIStatus->ackNext = 1; gSTWIStatus->state = 7; // slave send ack } @@ -216,7 +216,7 @@ static void sio32intr_clock_slave(void) } else if (gSTWIStatus->state == 6) // slave receive req { - ((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->reqNext] = regSIODATA32; + ((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->reqNext] = regSIODATA32; gSTWIStatus->reqNext++; if (gSTWIStatus->reqLength < gSTWIStatus->reqNext) { @@ -227,24 +227,24 @@ static void sio32intr_clock_slave(void) ) { gSTWIStatus->ackActiveCommand = gSTWIStatus->reqActiveCommand + 0x80; - ((u32*)gSTWIStatus->txPacket)[0] = 0x99660000 | gSTWIStatus->ackActiveCommand; + ((u32 *)gSTWIStatus->txPacket)[0] = 0x99660000 | gSTWIStatus->ackActiveCommand; gSTWIStatus->ackLength = 0; } else { - ((u32*)gSTWIStatus->txPacket)[0] = 0x996601EE; + ((u32 *)gSTWIStatus->txPacket)[0] = 0x996601EE; if (gSTWIStatus->reqActiveCommand >= 0x10 && gSTWIStatus->reqActiveCommand <= 0x3D) { - ((u32*)gSTWIStatus->txPacket)[1] = 1; + ((u32 *)gSTWIStatus->txPacket)[1] = 1; } else { - ((u32*)gSTWIStatus->txPacket)[1] = 2; + ((u32 *)gSTWIStatus->txPacket)[1] = 2; } gSTWIStatus->ackLength = 1; gSTWIStatus->error = ERR_REQ_CMD_ACK_REJECTION; } - REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[0]; + REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[0]; gSTWIStatus->ackNext = 1; gSTWIStatus->state = 7; // slave send ack } @@ -263,7 +263,7 @@ static void sio32intr_clock_slave(void) } else { - REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[gSTWIStatus->ackNext]; + REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[gSTWIStatus->ackNext]; gSTWIStatus->ackNext++; } } @@ -336,8 +336,8 @@ static u16 handshake_wait(u16 slot) static void STWI_set_timer_in_RAM(u8 count) { - vu16* regTMCNTL = ®_TMCNT_L(gSTWIStatus->timerSelect); - vu16* regTMCNTH = ®_TMCNT_H(gSTWIStatus->timerSelect); + vu16 *regTMCNTL = ®_TMCNT_L(gSTWIStatus->timerSelect); + vu16 *regTMCNTH = ®_TMCNT_H(gSTWIStatus->timerSelect); REG_IME = 0; switch (count) { diff --git a/src/librfu_stwi.c b/src/librfu_stwi.c index 8d8d10c4068d..b515f338e0ef 100644 --- a/src/librfu_stwi.c +++ b/src/librfu_stwi.c @@ -235,7 +235,7 @@ void STWI_send_SystemConfigREQ(u16 availSlotFlag, u8 maxMFrame, u8 mcTimer) packetBytes += sizeof(u32); *packetBytes++ = mcTimer; *packetBytes++ = maxMFrame; - *(u16*)packetBytes = availSlotFlag; + *(u16 *)packetBytes = availSlotFlag; STWI_start_Command(); } } diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index ae151fb1e5d3..9a1805cac9a9 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -2747,7 +2747,7 @@ static void Task_RfuReconnectWithParent(u8 taskId) if (CanTryReconnectParent()) { - u8 id = GetPartnerIndexByNameAndTrainerID((u8*)data, ReadU16(&data[8])); + u8 id = GetPartnerIndexByNameAndTrainerID((u8 *)data, ReadU16(&data[8])); if (id != 0xFF) { if (gRfuLinkStatus->partner[id].slot != 0xFF) @@ -2797,7 +2797,7 @@ void CreateTask_RfuReconnectWithParent(const u8 *name, u16 trainerId) gRfu.status = RFU_STATUS_OK; taskId = CreateTask(Task_RfuReconnectWithParent, 3); data = gTasks[taskId].data; - StringCopy((u8*)(data), name); + StringCopy((u8 *)(data), name); data[8] = trainerId; } diff --git a/src/m4a.c b/src/m4a.c index faeef83e79aa..7774d09cba57 100644 --- a/src/m4a.c +++ b/src/m4a.c @@ -1178,7 +1178,7 @@ void CgbSound(void) *nrx3ptr = channels->frequency; else *nrx3ptr = (*nrx3ptr & 0x08) | channels->frequency; - channels->n4 = (channels->n4 & 0xC0) + (*((u8*)(&channels->frequency) + 1)); + channels->n4 = (channels->n4 & 0xC0) + (*((u8 *)(&channels->frequency) + 1)); *nrx4ptr = (s8)(channels->n4 & mask); } diff --git a/src/main_menu.c b/src/main_menu.c index 9f21a4b09cd2..1494d9ad67f3 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -178,7 +178,7 @@ static u32 InitMainMenu(bool8); static void Task_MainMenuCheckSaveFile(u8); static void Task_MainMenuCheckBattery(u8); static void Task_WaitForSaveFileErrorWindow(u8); -static void CreateMainMenuErrorWindow(const u8*); +static void CreateMainMenuErrorWindow(const u8 *); static void ClearMainMenuWindowTilemap(const struct WindowTemplate*); static void Task_DisplayMainMenu(u8); static void Task_WaitForBatteryDryErrorWindow(u8); @@ -621,7 +621,7 @@ static u32 InitMainMenu(bool8 returningFromOptionsMenu) static void Task_MainMenuCheckSaveFile(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (!gPaletteFade.active) { @@ -736,7 +736,7 @@ static void Task_WaitForBatteryDryErrorWindow(u8 taskId) static void Task_DisplayMainMenu(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; u16 palette; if (!gPaletteFade.active) @@ -880,7 +880,7 @@ static void Task_HighlightSelectedMainMenuItem(u8 taskId) static bool8 HandleMainMenuInput(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (JOY_NEW(A_BUTTON)) { @@ -1807,8 +1807,8 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void) DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill16(3, 0, PLTT, PLTT_SIZE); ResetPaletteFade(); - LZ77UnCompVram(sBirchSpeechShadowGfx, (u8*)VRAM); - LZ77UnCompVram(sBirchSpeechBgMap, (u8*)(BG_SCREEN_ADDR(7))); + LZ77UnCompVram(sBirchSpeechShadowGfx, (u8 *)VRAM); + LZ77UnCompVram(sBirchSpeechBgMap, (u8 *)(BG_SCREEN_ADDR(7))); LoadPalette(sBirchSpeechBgPals, 0, 64); LoadPalette(&sBirchSpeechBgGradientPal[1], 1, 16); ResetTasks(); @@ -2102,7 +2102,7 @@ static s8 NewGameBirchSpeech_ProcessGenderMenuInput(void) static void NewGameBirchSpeech_SetDefaultPlayerName(u8 nameId) { - const u8* name; + const u8 *name; u8 i; if (gSaveBlock2Ptr->playerGender == MALE) @@ -2114,7 +2114,7 @@ static void NewGameBirchSpeech_SetDefaultPlayerName(u8 nameId) gSaveBlock2Ptr->playerName[PLAYER_NAME_LENGTH] = EOS; } -static void CreateMainMenuErrorWindow(const u8* str) +static void CreateMainMenuErrorWindow(const u8 *str) { FillWindowPixelBuffer(7, PIXEL_FILL(1)); AddTextPrinterParameterized(7, FONT_NORMAL, str, 0, 1, 2, 0); @@ -2143,7 +2143,7 @@ static void MainMenu_FormatSavegamePlayer(void) static void MainMenu_FormatSavegameTime(void) { u8 str[0x20]; - u8* ptr; + u8 *ptr; StringExpandPlaceholders(gStringVar4, gText_ContinueMenuTime); AddTextPrinterParameterized3(2, FONT_NORMAL, 0x6C, 17, sTextColor_MenuInfo, TEXT_SKIP_DRAW, gStringVar4); diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 9eaa035cafc7..41054d16d2d0 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -303,7 +303,7 @@ static void ShowMapNamePopUpWindow(void) u8 mapDisplayHeader[24]; u8 *withoutPrefixPtr; u8 x; - const u8* mapDisplayHeaderSource; + const u8 *mapDisplayHeaderSource; if (InBattlePyramid()) { diff --git a/src/menu.c b/src/menu.c index c4540942ba97..acbbde5482a6 100644 --- a/src/menu.c +++ b/src/menu.c @@ -2038,7 +2038,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u pixelsDst--; if (loopDstX & 1) { - toOrr = *(vu16*)pixelsDst; + toOrr = *(vu16 *)pixelsDst; toOrr &= 0x0fff; if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) << 8); @@ -2047,7 +2047,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u } else { - toOrr = *(vu16*)pixelsDst; + toOrr = *(vu16 *)pixelsDst; toOrr &= 0xf0ff; if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) << 4); @@ -2059,7 +2059,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u { if (loopDstX & 1) { - toOrr = *(vu16*)pixelsDst; + toOrr = *(vu16 *)pixelsDst; toOrr &= 0xff0f; if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) << 0); @@ -2068,7 +2068,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u } else { - toOrr = *(vu16*)pixelsDst; + toOrr = *(vu16 *)pixelsDst; toOrr &= 0xfff0; if (loopSrcX & 1) toOrr |= ((*pixelsSrc & 0xf0) >> 4); @@ -2076,7 +2076,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u toOrr |= ((*pixelsSrc & 0x0f) >> 0); } } - *(vu16*)pixelsDst = toOrr; + *(vu16 *)pixelsDst = toOrr; } } } diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 7300262988b2..6b06b2074c74 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -72,7 +72,7 @@ static void DoMirageTowerDisintegration(u8); static void InitMirageTowerShake(u8); static void Task_FossilFallAndSink(u8); static void SpriteCB_FallingFossil(struct Sprite *); -static void UpdateDisintegrationEffect(u8*, u16, u8, u8, u8); +static void UpdateDisintegrationEffect(u8 *, u16, u8, u8, u8); static const u8 sBlankTile_Gfx[32] = {0}; static const u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp"); @@ -249,8 +249,8 @@ static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleLarge = { .callback = SpriteCB_CeilingCrumble }; -EWRAM_DATA static u8* sMirageTowerGfxBuffer = NULL; -EWRAM_DATA static u8* sMirageTowerTilemapBuffer = NULL; +EWRAM_DATA static u8 *sMirageTowerGfxBuffer = NULL; +EWRAM_DATA static u8 *sMirageTowerTilemapBuffer = NULL; EWRAM_DATA static struct FallAnim_Fossil *sFallingFossil = NULL; EWRAM_DATA static struct FallAnim_Tower *sFallingTower = NULL; EWRAM_DATA static struct BgRegOffsets *sBgShakeOffsets = NULL; @@ -748,7 +748,7 @@ static void SpriteCB_FallingFossil(struct Sprite *sprite) } } -static void UpdateDisintegrationEffect(u8* tiles, u16 randId, u8 c, u8 size, u8 offset) +static void UpdateDisintegrationEffect(u8 *tiles, u16 randId, u8 c, u8 size, u8 offset) { u8 heightTiles, height, widthTiles, width; u16 var, baseOffset; diff --git a/src/money.c b/src/money.c index 5723974a8300..b1f4afbf84b8 100644 --- a/src/money.c +++ b/src/money.c @@ -69,17 +69,17 @@ static const struct CompressedSpritePalette sSpritePalette_MoneyLabel = .tag = MONEY_LABEL_TAG }; -u32 GetMoney(u32* moneyPtr) +u32 GetMoney(u32 *moneyPtr) { return *moneyPtr ^ gSaveBlock2Ptr->encryptionKey; } -void SetMoney(u32* moneyPtr, u32 newValue) +void SetMoney(u32 *moneyPtr, u32 newValue) { *moneyPtr = gSaveBlock2Ptr->encryptionKey ^ newValue; } -bool8 IsEnoughMoney(u32* moneyPtr, u32 cost) +bool8 IsEnoughMoney(u32 *moneyPtr, u32 cost) { if (GetMoney(moneyPtr) >= cost) return TRUE; @@ -87,7 +87,7 @@ bool8 IsEnoughMoney(u32* moneyPtr, u32 cost) return FALSE; } -void AddMoney(u32* moneyPtr, u32 toAdd) +void AddMoney(u32 *moneyPtr, u32 toAdd) { u32 toSet = GetMoney(moneyPtr); @@ -107,7 +107,7 @@ void AddMoney(u32* moneyPtr, u32 toAdd) SetMoney(moneyPtr, toSet); } -void RemoveMoney(u32* moneyPtr, u32 toSub) +void RemoveMoney(u32 *moneyPtr, u32 toSub) { u32 toSet = GetMoney(moneyPtr); diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index e0f789bcbd2c..6854229671ea 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -104,7 +104,7 @@ static int CalcRecordMixingGiftChecksum(void) { unsigned int i; int sum = 0; - u8 *data = (u8*)(&gSaveBlock1Ptr->recordMixingGift.data); + u8 *data = (u8 *)(&gSaveBlock1Ptr->recordMixingGift.data); for (i = 0; i < sizeof(gSaveBlock1Ptr->recordMixingGift.data); i++) sum += data[i]; diff --git a/src/naming_screen.c b/src/naming_screen.c index a295cfd3fbf2..613928030360 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -333,7 +333,7 @@ static const struct SpriteTemplate sSpriteTemplate_Cursor; static const struct SpriteTemplate sSpriteTemplate_InputArrow; static const struct SpriteTemplate sSpriteTemplate_Underscore; static const struct SpriteTemplate sSpriteTemplate_PCIcon; -static const u8* const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT]; +static const u8 *const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT]; static const struct SpriteSheet sSpriteSheets[]; static const struct SpritePalette sSpritePalettes[]; @@ -2520,7 +2520,7 @@ static const struct SpriteTemplate sSpriteTemplate_PCIcon = .callback = SpriteCallbackDummy }; -static const u8* const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT] = +static const u8 *const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT] = { [KEYBOARD_LETTERS_LOWER] = { diff --git a/src/overworld.c b/src/overworld.c index 2e4ce012638d..812568d0143d 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -127,7 +127,7 @@ static void CreateLinkPlayerSprites(void); static void ClearAllPlayerKeys(void); static void ResetAllPlayerLinkStates(void); static void UpdateHeldKeyCode(u16); -static void UpdateAllLinkPlayers(u16*, s32); +static void UpdateAllLinkPlayers(u16 *, s32); static u8 FlipVerticalAndClearForced(u8, u8); static u8 LinkPlayerDetectCollision(u8, u8, s16, s16); static void CreateLinkPlayerSprite(u8, u8); @@ -2923,7 +2923,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), fieldEffectSpriteId) - 1] // -> rangeX static void SpawnLinkPlayerObjectEvent(u8 linkPlayerId, s16 x, s16 y, u8 gender) { diff --git a/src/party_menu.c b/src/party_menu.c index 70f00f305131..3f763245c4a7 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -193,9 +193,9 @@ static void DisplayPartyPokemonDescriptionText(u8, struct PartyMenuBox *, u8); static bool8 IsMonAllowedInMinigame(u8); static void DisplayPartyPokemonDataToTeachMove(u8, u16, u8); static u8 CanMonLearnTMTutor(struct Pokemon *, u16, u8); -static void DisplayPartyPokemonBarDetail(u8, const u8*, u8, const u8*); +static void DisplayPartyPokemonBarDetail(u8, const u8 *, u8, const u8 *); static void DisplayPartyPokemonLevel(u8, struct PartyMenuBox *); -static void DisplayPartyPokemonGender(u8, u16, u8*, struct PartyMenuBox *); +static void DisplayPartyPokemonGender(u8, u16, u8 *, struct PartyMenuBox *); static void DisplayPartyPokemonHP(u16, struct PartyMenuBox *); static void DisplayPartyPokemonMaxHP(u16, struct PartyMenuBox *); static void DisplayPartyPokemonHPBar(u16, u16, struct PartyMenuBox *); @@ -220,12 +220,12 @@ static u8 GetPartyIdFromBattleSlot(u8); static void Task_ClosePartyMenuAndSetCB2(u8); static void UpdatePartyToFieldOrder(void); static void MoveCursorToConfirm(void); -static void HandleChooseMonCancel(u8, s8*); -static void HandleChooseMonSelection(u8, s8*); -static u16 PartyMenuButtonHandler(s8*); -static s8* GetCurrentPartySlotPtr(void); -static bool8 IsSelectedMonNotEgg(u8*); -static void PartyMenuRemoveWindow(u8*); +static void HandleChooseMonCancel(u8, s8 *); +static void HandleChooseMonSelection(u8, s8 *); +static u16 PartyMenuButtonHandler(s8 *); +static s8 *GetCurrentPartySlotPtr(void); +static bool8 IsSelectedMonNotEgg(u8 *); +static void PartyMenuRemoveWindow(u8 *); static void CB2_SetUpExitToBattleScreen(void); static void Task_ClosePartyMenuAfterText(u8); static void TryTutorSelectedMon(u8); @@ -237,16 +237,16 @@ static void Task_TryCreateSelectionWindow(u8); static void FinishTwoMonAction(u8); static void CancelParticipationPrompt(u8); static bool8 DisplayCancelChooseMonYesNo(u8); -static const u8* GetFacilityCancelString(void); +static const u8 *GetFacilityCancelString(void); static void Task_CancelChooseMonYesNo(u8); static void PartyMenuDisplayYesNoMenu(void); static void Task_HandleCancelChooseMonYesNoInput(u8); static void Task_ReturnToChooseMonAfterText(u8); -static void UpdateCurrentPartySelection(s8*, s8); -static void UpdatePartySelectionSingleLayout(s8*, s8); -static void UpdatePartySelectionDoubleLayout(s8*, s8); +static void UpdateCurrentPartySelection(s8 *, s8); +static void UpdatePartySelectionSingleLayout(s8 *, s8); +static void UpdatePartySelectionDoubleLayout(s8 *, s8); static s8 GetNewSlotDoubleLayout(s8, s8); -static void PartyMenuPrintText(const u8*); +static void PartyMenuPrintText(const u8 *); static void Task_PrintAndWaitForText(u8); static bool16 IsMonAllowedInPokemonJump(struct Pokemon*); static bool16 IsMonAllowedInDodrioBerryPicking(struct Pokemon*); @@ -311,7 +311,7 @@ static void Task_SetSacredAshCB(u8); static void CB2_ReturnToBagMenu(void); static void Task_DisplayHPRestoredMessage(u8); static u16 ItemEffectToMonEv(struct Pokemon*, u8); -static void ItemEffectToStatString(u8, u8*); +static void ItemEffectToStatString(u8, u8 *); static void ReturnToUseOnWhichMon(u8); static void SetSelectedMoveForPPItem(u8); static void TryUsePPItem(u8); @@ -331,7 +331,7 @@ static void Task_PartyMenuReplaceMove(u8); static void Task_StopLearningMoveYesNo(u8); static void Task_HandleStopLearningMoveYesNoInput(u8); static void Task_TryLearningNextMoveAfterText(u8); -static void BufferMonStatsToTaskData(struct Pokemon*, s16*); +static void BufferMonStatsToTaskData(struct Pokemon*, s16 *); static void UpdateMonDisplayInfoAfterRareCandy(u8, struct Pokemon*); static void Task_DisplayLevelUpStatsPg1(u8); static void DisplayLevelUpStatsPg1(u8); @@ -362,8 +362,8 @@ static u8 GetBattleEntryLevelCap(void); static u8 GetMaxBattleEntries(void); static u8 GetMinBattleEntries(void); static void Task_ContinueChoosingHalfParty(u8); -static void BufferBattlePartyOrder(u8*, bool8); -static void BufferBattlePartyOrderBySide(u8*, u8, u8); +static void BufferBattlePartyOrder(u8 *, bool8); +static void BufferBattlePartyOrderBySide(u8 *, u8, u8); static void Task_InitMultiPartnerPartySlideIn(u8); static void Task_MultiPartnerPartySlideIn(u8); static void SlideMultiPartyMenuBoxSpritesOneStep(u8); @@ -972,7 +972,7 @@ static bool8 RenderPartyMenuBoxes(void) return FALSE; } -static u8* GetPartyMenuBgTile(u16 tileId) +static u8 *GetPartyMenuBgTile(u16 tileId) { return &sPartyBgGfxTilemap[tileId << 5]; } @@ -1203,7 +1203,7 @@ void Task_HandleChooseMonInput(u8 taskId) } } -static s8* GetCurrentPartySlotPtr(void) +static s8 *GetCurrentPartySlotPtr(void) { if (gPartyMenu.action == PARTY_ACTION_SWITCH || gPartyMenu.action == PARTY_ACTION_SOFTBOILED) return &gPartyMenu.slotId2; @@ -1222,14 +1222,14 @@ static void HandleChooseMonSelection(u8 taskId, s8 *slotPtr) switch (gPartyMenu.action) { case PARTY_ACTION_SOFTBOILED: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[1]); Task_TryUseSoftboiledOnPartyMon(taskId); } break; case PARTY_ACTION_USE_ITEM: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { if (gPartyMenu.menuType == PARTY_MENU_TYPE_IN_BATTLE) sPartyMenuInternal->exitCallback = CB2_SetUpExitToBattleScreen; @@ -1239,7 +1239,7 @@ static void HandleChooseMonSelection(u8 taskId, s8 *slotPtr) } break; case PARTY_ACTION_MOVE_TUTOR: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { PlaySE(SE_SELECT); PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[1]); @@ -1247,7 +1247,7 @@ static void HandleChooseMonSelection(u8 taskId, s8 *slotPtr) } break; case PARTY_ACTION_GIVE_MAILBOX_MAIL: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { PlaySE(SE_SELECT); PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[1]); @@ -1256,7 +1256,7 @@ static void HandleChooseMonSelection(u8 taskId, s8 *slotPtr) break; case PARTY_ACTION_GIVE_ITEM: case PARTY_ACTION_GIVE_PC_ITEM: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { PlaySE(SE_SELECT); PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[1]); @@ -1272,7 +1272,7 @@ static void HandleChooseMonSelection(u8 taskId, s8 *slotPtr) Task_ClosePartyMenu(taskId); break; case PARTY_ACTION_MINIGAME: - if (IsSelectedMonNotEgg((u8*)slotPtr)) + if (IsSelectedMonNotEgg((u8 *)slotPtr)) { TryEnterMonForMinigame(taskId, (u8)*slotPtr); } @@ -1329,7 +1329,7 @@ static void HandleChooseMonCancel(u8 taskId, s8 *slotPtr) static bool8 DisplayCancelChooseMonYesNo(u8 taskId) { - const u8* stringPtr = NULL; + const u8 *stringPtr = NULL; if (gPartyMenu.menuType == PARTY_MENU_TYPE_CONTEST) stringPtr = gText_CancelParticipation; @@ -1617,7 +1617,7 @@ static s8 GetNewSlotDoubleLayout(s8 slotId, s8 movementDir) } } -u8* GetMonNickname(struct Pokemon *mon, u8 *dest) +u8 *GetMonNickname(struct Pokemon *mon, u8 *dest) { GetMonData(mon, MON_DATA_NICKNAME, dest); return StringGet_Nickname(dest); @@ -1625,7 +1625,7 @@ u8* GetMonNickname(struct Pokemon *mon, u8 *dest) #define tKeepOpen data[0] -u8 DisplayPartyMenuMessage(const u8* str, bool8 keepOpen) +u8 DisplayPartyMenuMessage(const u8 *str, bool8 keepOpen) { u8 taskId; @@ -2064,7 +2064,7 @@ static void CreateCancelConfirmWindows(bool8 chooseHalf) } } -static u16* GetPartyMenuPalBufferPtr(u8 paletteId) +static u16 *GetPartyMenuPalBufferPtr(u8 paletteId) { return &sPartyMenuInternal->palBuffer[paletteId]; } @@ -5655,7 +5655,7 @@ static u8 GetBattleEntryLevelCap(void) } } -static const u8* GetFacilityCancelString(void) +static const u8 *GetFacilityCancelString(void) { u8 facilityNum = VarGet(VAR_FRONTIER_FACILITY); diff --git a/src/player_pc.c b/src/player_pc.c index 07a51a7dd953..288b999909c3 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -161,7 +161,7 @@ static void ItemStorage_HandleRemoveItem(u8); static void ItemStorage_HandleErrorMessageInput(u8); static void ItemStorage_ReturnToListInput(u8); -static const u8* ItemStorage_GetMessage(u16); +static const u8 *ItemStorage_GetMessage(u16); static void CopyItemName_PlayerPC(u8 *, u16); static void ItemStorage_Init(void); @@ -1039,7 +1039,7 @@ static void ItemStorage_PrintMenuItem(u8 windowId, u32 id, u8 yOffset) static void ItemStorage_PrintDescription(s32 id) { - const u8* description; + const u8 *description; u8 windowId = sItemStorageMenu->windowIds[ITEMPC_WIN_MESSAGE]; // Get item description (or Cancel text) @@ -1088,7 +1088,7 @@ static void ItemStorage_DrawSwapArrow(u8 y, u8 b, u8 speed) static void ItemStorage_DrawItemIcon(u16 itemId) { u8 spriteId; - u8* spriteIdLoc = &sItemStorageMenu->spriteId; + u8 *spriteIdLoc = &sItemStorageMenu->spriteId; if (*spriteIdLoc == SPRITE_NONE) { @@ -1107,7 +1107,7 @@ static void ItemStorage_DrawItemIcon(u16 itemId) static void ItemStorage_EraseItemIcon(void) { - u8* spriteIdLoc = &sItemStorageMenu->spriteId; + u8 *spriteIdLoc = &sItemStorageMenu->spriteId; if (*spriteIdLoc != SPRITE_NONE) { FreeSpriteTilesByTag(TAG_ITEM_ICON); @@ -1133,7 +1133,7 @@ static void ItemStorage_CreateListMenu(u8 taskId) s16 *data; bool32 toss; u32 i, x; - const u8* text; + const u8 *text; data = gTasks[taskId].data; for (i = 0; i <= ITEMPC_WIN_LIST_END; i++) @@ -1154,7 +1154,7 @@ static void ItemStorage_CreateListMenu(u8 taskId) gTasks[taskId].func = ItemStorage_ProcessInput; } -static const u8* ItemStorage_GetMessage(u16 itemId) +static const u8 *ItemStorage_GetMessage(u16 itemId) { const u8 *string; diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 14170763f15a..23fdfe628734 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -466,7 +466,7 @@ static const struct WindowTemplate sWindowTemplates[] = }; // - 1 excludes PBLOCK_CLR_NONE -static const u32* const sPokeblocksPals[] = +static const u32 *const sPokeblocksPals[] = { [PBLOCK_CLR_RED - 1] = gPokeblockRed_Pal, [PBLOCK_CLR_BLUE - 1] = gPokeblockBlue_Pal, diff --git a/src/pokedex.c b/src/pokedex.c index 9592aee9ce38..067e8fffbd3f 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -294,10 +294,10 @@ static void PrintSearchParameterText(u8); static u8 GetSearchModeSelection(u8 taskId, u8 option); static void SetDefaultSearchModeAndOrder(u8); static void CreateSearchParameterScrollArrows(u8); -static void EraseAndPrintSearchTextBox(const u8*); +static void EraseAndPrintSearchTextBox(const u8 *); static void EraseSelectorArrow(u32); static void PrintSelectorArrow(u32); -static void PrintSearchParameterTitle(u32, const u8*); +static void PrintSearchParameterTitle(u32, const u8 *); static void ClearSearchParameterBoxText(void); // const rom data @@ -2317,7 +2317,7 @@ static void CreatePokedexList(u8 dexMode, u8 order) } } -static void PrintMonDexNumAndName(u8 windowId, u8 fontId, const u8* str, u8 left, u8 top) +static void PrintMonDexNumAndName(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top) { u8 color[3]; @@ -2440,7 +2440,7 @@ static void CreateCaughtBall(bool16 owned, u8 x, u8 y, u16 unused) static u8 CreateMonName(u16 num, u8 left, u8 top) { - const u8* str; + const u8 *str; num = NationalPokedexNumToSpecies(num); if (num) @@ -3160,7 +3160,7 @@ static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite) } } -static void PrintInfoScreenText(const u8* str, u8 left, u8 top) +static void PrintInfoScreenText(const u8 *str, u8 left, u8 top) { u8 color[3]; color[0] = TEXT_COLOR_TRANSPARENT; @@ -3872,7 +3872,7 @@ static void HighlightScreenSelectBarItem(u8 selectedScreen, u16 unused) { u8 i; u8 j; - u16* ptr = GetBgTilemapBuffer(1); + u16 *ptr = GetBgTilemapBuffer(1); for (i = 0; i < SCREEN_COUNT; i++) { @@ -3899,7 +3899,7 @@ static void HighlightSubmenuScreenSelectBarItem(u8 a, u16 b) { u8 i; u8 j; - u16* ptr = GetBgTilemapBuffer(1); + u16 *ptr = GetBgTilemapBuffer(1); for (i = 0; i < 4; i++) { @@ -4511,7 +4511,7 @@ static u8 PrintCryScreenSpeciesName(u8 windowId, u16 num, u8 left, u8 top) return i; } -static void UnusedPrintMonName(u8 windowId, const u8* name, u8 left, u8 top) +static void UnusedPrintMonName(u8 windowId, const u8 *name, u8 left, u8 top) { u8 str[POKEMON_NAME_LENGTH + 1]; u8 i; @@ -5419,7 +5419,7 @@ static void DrawOrEraseSearchParameterBox(bool8 erase) { u16 i; u16 j; - u16* ptr = GetBgTilemapBuffer(3); + u16 *ptr = GetBgTilemapBuffer(3); if (!erase) { @@ -5612,7 +5612,7 @@ static void CreateSearchParameterScrollArrows(u8 taskId) #undef sTaskId #undef sIsDownArrow -static void EraseAndPrintSearchTextBox(const u8* str) +static void EraseAndPrintSearchTextBox(const u8 *str) { ClearSearchMenuRect(8, 120, 224, 32); PrintSearchText(str, 8, 121); @@ -5628,7 +5628,7 @@ static void PrintSelectorArrow(u32 y) PrintSearchText(gText_SelectorArrow, 144, y * 16 + 9); } -static void PrintSearchParameterTitle(u32 y, const u8* str) +static void PrintSearchParameterTitle(u32 y, const u8 *str) { PrintSearchText(str, 152, y * 16 + 9); } diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c index 28e2bd1632a8..406d1377d68b 100644 --- a/src/pokedex_cry_screen.c +++ b/src/pokedex_cry_screen.c @@ -234,7 +234,7 @@ bool8 LoadCryWaveformWindow(struct CryScreenWindow *window, u8 windowId) if (!sDexCryScreen) { sDexCryScreen = AllocZeroed(sizeof(*sDexCryScreen)); - sCryWaveformWindowTiledata = (u8*)GetWindowAttribute(windowId, WINDOW_TILE_DATA); + sCryWaveformWindowTiledata = (u8 *)GetWindowAttribute(windowId, WINDOW_TILE_DATA); } sDexCryScreen->unk = window->unk0; diff --git a/src/pokemon.c b/src/pokemon.c index 60722fe02a6f..c29a1b95c2f1 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -3620,7 +3620,7 @@ static union PokemonSubstruct *GetSubstruct(struct BoxPokemon *boxMon, u32 perso return substruct; } -u32 GetMonData(struct Pokemon *mon, s32 field, u8* data) +u32 GetMonData(struct Pokemon *mon, s32 field, u8 *data) { u32 ret; @@ -4613,7 +4613,7 @@ void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex) void CopyPlayerPartyMonToBattleData(u8 battlerId, u8 partyIndex) { - u16* hpSwitchout; + u16 *hpSwitchout; s32 i; u8 nickname[POKEMON_NAME_LENGTH * 2]; diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 2c010f35e678..7f9b146a41d2 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1186,12 +1186,12 @@ void SpriteCB_MonIcon(struct Sprite *sprite) UpdateMonIconFrame(sprite); } -const u8* GetMonIconTiles(u16 species, bool32 handleDeoxys) +const u8 *GetMonIconTiles(u16 species, bool32 handleDeoxys) { - const u8* iconSprite = gMonIconTable[species]; + const u8 *iconSprite = gMonIconTable[species]; if (species == SPECIES_DEOXYS && handleDeoxys == TRUE) { - iconSprite = (const u8*)(0x400 + (u32)iconSprite); // use the specific Deoxys form icon (Speed in this case) + iconSprite = (const u8 *)(0x400 + (u32)iconSprite); // use the specific Deoxys form icon (Speed in this case) } return iconSprite; } @@ -1225,7 +1225,7 @@ u8 GetMonIconPaletteIndexFromSpecies(u16 species) return gMonIconPaletteIndices[species]; } -const u16* GetValidMonIconPalettePtr(u16 species) +const u16 *GetValidMonIconPalettePtr(u16 species) { if (species > NUM_SPECIES) species = INVALID_ICON_SPECIES; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 676d6f22915c..19f1db52d7f1 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1337,7 +1337,7 @@ void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero winTemplate.height = 2; windowId = AddWindow(&winTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(zero2)); - tileData1 = (u8*) GetWindowAttribute(windowId, WINDOW_TILE_DATA); + tileData1 = (u8 *) GetWindowAttribute(windowId, WINDOW_TILE_DATA); tileData2 = (winTemplate.width * TILE_SIZE_4BPP) + tileData1; if (!zero1) @@ -1385,7 +1385,7 @@ static void UnusedDrawTextWindow(const u8 *string, void *dst, u16 offset, u8 bgC tilesSize = winTemplate.width * TILE_SIZE_4BPP; windowId = AddWindow(&winTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(bgColor)); - tileData1 = (u8*) GetWindowAttribute(windowId, WINDOW_TILE_DATA); + tileData1 = (u8 *) GetWindowAttribute(windowId, WINDOW_TILE_DATA); tileData2 = (winTemplate.width * TILE_SIZE_4BPP) + tileData1; txtColor[0] = bgColor; txtColor[1] = fgColor; @@ -6555,7 +6555,7 @@ static void InitCanReleaseMonVars(void) } GetRestrictedReleaseMoves(sStorage->restrictedMoveList); - sStorage->restrictedReleaseMonMoves = GetMonData(&sStorage->tempMon, MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + sStorage->restrictedReleaseMonMoves = GetMonData(&sStorage->tempMon, MON_DATA_KNOWN_MOVES, (u8 *)sStorage->restrictedMoveList); if (sStorage->restrictedReleaseMonMoves != 0) { // PokĂ©mon knows at least one restricted release move @@ -6621,7 +6621,7 @@ static s8 RunCanReleaseMon(void) // Make sure party PokĂ©mon isn't the one we're releasing first if (sStorage->releaseBoxId != TOTAL_BOXES_COUNT || sStorage->releaseBoxPos != i) { - knownMoves = GetMonData(&gPlayerParty[i], MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + knownMoves = GetMonData(&gPlayerParty[i], MON_DATA_KNOWN_MOVES, (u8 *)sStorage->restrictedMoveList); sStorage->restrictedReleaseMonMoves &= ~(knownMoves); } } @@ -6646,7 +6646,7 @@ static s8 RunCanReleaseMon(void) // moves the release PokĂ©mon knows for (i = 0; i < IN_BOX_COUNT; i++) { - knownMoves = GetAndCopyBoxMonDataAt(sStorage->releaseCheckBoxId, sStorage->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8*)sStorage->restrictedMoveList); + knownMoves = GetAndCopyBoxMonDataAt(sStorage->releaseCheckBoxId, sStorage->releaseCheckBoxPos, MON_DATA_KNOWN_MOVES, (u8 *)sStorage->restrictedMoveList); if (knownMoves != 0 && !(sStorage->releaseBoxId == sStorage->releaseCheckBoxId && sStorage->releaseBoxPos == sStorage->releaseCheckBoxPos)) { @@ -9648,7 +9648,7 @@ bool32 AnyStorageMonWithMove(u16 moveId) { if (GetBoxMonData(&gPokemonStoragePtr->boxes[i][j], MON_DATA_SANITY_HAS_SPECIES) && !GetBoxMonData(&gPokemonStoragePtr->boxes[i][j], MON_DATA_SANITY_IS_EGG) - && GetBoxMonData(&gPokemonStoragePtr->boxes[i][j], MON_DATA_KNOWN_MOVES, (u8*)moves)) + && GetBoxMonData(&gPokemonStoragePtr->boxes[i][j], MON_DATA_KNOWN_MOVES, (u8 *)moves)) return TRUE; } } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index c25d58ae653a..c69d50d55eb6 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -2027,7 +2027,7 @@ static void SwitchToMovePositionSwitchMode(u8 taskId) static void Task_HandleInput_MovePositionSwitch(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { @@ -2168,7 +2168,7 @@ static void Task_SetHandleReplaceMoveInput(u8 taskId) static void Task_HandleReplaceMoveInput(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; if (MenuHelpers_ShouldWaitForLinkRecv() != TRUE) { @@ -2244,7 +2244,7 @@ static void ShowCantForgetHMsWindow(u8 taskId) // This redraws the power/accuracy window when the player scrolls out of the "HM Moves can't be forgotten" message static void Task_HandleInputCantForgetHMsMoves(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; u16 move; if (FuncIsActiveTask(Task_ShowPowerAccWindow) != 1) { diff --git a/src/pokenav_list.c b/src/pokenav_list.c index 6e5a22eb1d26..ed3d40dee2b2 100644 --- a/src/pokenav_list.c +++ b/src/pokenav_list.c @@ -665,7 +665,7 @@ static u32 LoopedTask_ReshowListFromCheckPage(s32 state) static void EraseListEntry(struct PokenavListMenuWindow *listWindow, s32 offset, s32 entries) { - u8 *tileData = (u8*)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); + u8 *tileData = (u8 *)GetWindowAttribute(listWindow->windowId, WINDOW_TILE_DATA); u32 width = listWindow->width * 64; offset = (listWindow->unkA + offset) & 0xF; @@ -694,7 +694,7 @@ static void EraseListEntry(struct PokenavListMenuWindow *listWindow, s32 offset, static void SetListMarginTile(struct PokenavListMenuWindow *listWindow, bool32 draw) { u16 var; - u16 *tilemapBuffer = (u16*)GetBgTilemapBuffer(GetWindowAttribute(listWindow->windowId, WINDOW_BG)); + u16 *tilemapBuffer = (u16 *)GetBgTilemapBuffer(GetWindowAttribute(listWindow->windowId, WINDOW_BG)); tilemapBuffer += (listWindow->unkA << 6) + listWindow->x - 1; if (draw) diff --git a/src/save.c b/src/save.c index 52cdaa5ddcb3..60a190c68edd 100644 --- a/src/save.c +++ b/src/save.c @@ -924,17 +924,17 @@ u16 GetSaveBlocksPointersBaseOffset(void) return 0; } -u32 TryReadSpecialSaveSector(u8 sector, u8* dst) +u32 TryReadSpecialSaveSector(u8 sector, u8 *dst) { s32 i; s32 size; - u8* savData; + u8 *savData; if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE) return SAVE_STATUS_ERROR; ReadFlash(sector, 0, (u8 *)&gSaveDataBuffer, SECTOR_SIZE); - if (*(u32*)(&gSaveDataBuffer.data[0]) != SPECIAL_SECTOR_SENTINEL) + if (*(u32 *)(&gSaveDataBuffer.data[0]) != SPECIAL_SECTOR_SENTINEL) return SAVE_STATUS_ERROR; // Copies whole save sector except u32 counter @@ -946,18 +946,18 @@ u32 TryReadSpecialSaveSector(u8 sector, u8* dst) return SAVE_STATUS_OK; } -u32 TryWriteSpecialSaveSector(u8 sector, u8* src) +u32 TryWriteSpecialSaveSector(u8 sector, u8 *src) { s32 i; s32 size; - u8* savData; + u8 *savData; void* savDataBuffer; if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE) return SAVE_STATUS_ERROR; savDataBuffer = &gSaveDataBuffer; - *(u32*)(savDataBuffer) = SPECIAL_SECTOR_SENTINEL; + *(u32 *)(savDataBuffer) = SPECIAL_SECTOR_SENTINEL; // Copies whole save sector except u32 counter i = 0; @@ -978,7 +978,7 @@ u32 TryWriteSpecialSaveSector(u8 sector, u8* src) // Most notably it does save the PC data. void Task_LinkFullSave(u8 taskId) { - s16* data = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; switch (tState) { diff --git a/src/scrcmd.c b/src/scrcmd.c index d6422e89821b..fe5cf95d7635 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -2229,7 +2229,7 @@ bool8 ScrCmd_checkmoneventlegal(struct ScriptContext *ctx) bool8 ScrCmd_trywondercardscript(struct ScriptContext *ctx) { - const u8* script = GetSavedRamScriptIfValid(); + const u8 *script = GetSavedRamScriptIfValid(); if (script) { diff --git a/src/script.c b/src/script.c index 4728e739cdc2..9d14a3bc395f 100644 --- a/src/script.c +++ b/src/script.c @@ -14,7 +14,7 @@ enum { SCRIPT_MODE_NATIVE, }; -extern const u8* gRamScriptRetAddr; +extern const u8 *gRamScriptRetAddr; static u8 sScriptContext1Status; static struct ScriptContext sScriptContext1; @@ -349,7 +349,7 @@ void TryRunOnWarpIntoMapScript(void) u32 CalculateRamScriptChecksum(void) { - return CalcCRC16WithTable((u8*)(&gSaveBlock1Ptr->ramScript.data), sizeof(gSaveBlock1Ptr->ramScript.data)); + return CalcCRC16WithTable((u8 *)(&gSaveBlock1Ptr->ramScript.data), sizeof(gSaveBlock1Ptr->ramScript.data)); } void ClearRamScript(void) diff --git a/src/shop.c b/src/shop.c index c69bed5017f8..c9582166e95a 100755 --- a/src/shop.c +++ b/src/shop.c @@ -63,7 +63,7 @@ static void BuyMenuBuildListMenuTemplate(void); static void BuyMenuInitBgs(void); static void BuyMenuInitWindows(void); static void BuyMenuDecompressBgGraphics(void); -static void BuyMenuSetListEntry(struct ListMenuItem*, u16, u8*); +static void BuyMenuSetListEntry(struct ListMenuItem*, u16, u8 *); static void BuyMenuAddItemIcon(u16, u8); static void BuyMenuRemoveItemIcon(u16, u8); static void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet); @@ -73,7 +73,7 @@ static void BuyMenuCollectObjectEventData(void); static void BuyMenuDrawObjectEvents(void); static void BuyMenuDrawMapBg(void); static bool8 BuyMenuCheckForOverlapWithMenuBg(int, int); -static void BuyMenuDrawMapMetatile(s16, s16, const u16*, u8); +static void BuyMenuDrawMapMetatile(s16, s16, const u16 *, u8); static void BuyMenuDrawMapMetatileLayer(u16 *dest, s16 offset1, s16 offset2, const u16 *src); static bool8 BuyMenuCheckIfObjectEventOverlapsMenuBg(s16 *); static void ExitBuyMenu(u8 taskId); @@ -747,11 +747,11 @@ static void BuyMenuDrawMapBg(void) if (metatile < NUM_METATILES_IN_PRIMARY) { - BuyMenuDrawMapMetatile(i, j, (u16*)mapLayout->primaryTileset->metatiles + metatile * 8, metatileLayerType); + BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->primaryTileset->metatiles + metatile * 8, metatileLayerType); } else { - BuyMenuDrawMapMetatile(i, j, (u16*)mapLayout->secondaryTileset->metatiles + ((metatile - NUM_METATILES_IN_PRIMARY) * 8), metatileLayerType); + BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->secondaryTileset->metatiles + ((metatile - NUM_METATILES_IN_PRIMARY) * 8), metatileLayerType); } } } diff --git a/src/start_menu.c b/src/start_menu.c index 6a5e7c046a58..bdacae9de3ca 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -139,7 +139,7 @@ static bool8 FieldCB_ReturnToFieldStartMenu(void); static const struct WindowTemplate sSafariBallsWindowTemplate = {0, 1, 1, 9, 4, 0xF, 8}; -static const u8* const sPyramidFloorNames[FRONTIER_STAGES_PER_CHALLENGE + 1] = +static const u8 *const sPyramidFloorNames[FRONTIER_STAGES_PER_CHALLENGE + 1] = { gText_Floor1, gText_Floor2, diff --git a/src/trainer_card.c b/src/trainer_card.c index 65f996003816..d6e3ca4ecb8b 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -97,8 +97,8 @@ static void CloseTrainerCard(u8 task); static bool8 PrintAllOnCardFront(void); static void DrawTrainerCardWindow(u8); static void CreateTrainerCardTrainerPic(void); -static void DrawCardScreenBackground(u16*); -static void DrawCardFrontOrBack(u16*); +static void DrawCardScreenBackground(u16 *); +static void DrawCardFrontOrBack(u16 *); static void DrawStarsAndBadgesOnCard(void); static void PrintTimeOnCard(void); static void FlipTrainerCard(void); @@ -147,7 +147,7 @@ static void BufferUnionRoomStats(void); static void BufferLinkPokeblocksNum(void); static void BufferLinkContestNum(void); static void BufferBattleFacilityStats(void); -static void PrintStatOnBackOfCard(u8 top, const u8* str1, u8* str2, const u8* color); +static void PrintStatOnBackOfCard(u8 top, const u8 *str1, u8 *str2, const u8 *color); static void LoadStickerGfx(void); static u8 SetCardBgsAndPals(void); static void DrawCardBackStats(void); @@ -772,7 +772,7 @@ void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) trainerCard->version = GAME_VERSION; SetPlayerCardData(trainerCard, CARD_TYPE_EMERALD); trainerCard->linkHasAllFrontierSymbols = HasAllFrontierSymbols(); - *((u16*)&trainerCard->linkPoints.frontier) = gSaveBlock2Ptr->frontier.cardBattlePoints; + *((u16 *)&trainerCard->linkPoints.frontier) = gSaveBlock2Ptr->frontier.cardBattlePoints; if (trainerCard->linkHasAllFrontierSymbols) trainerCard->stars++; @@ -799,7 +799,7 @@ void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 ga memcpy(dst, src, 0x60); dst->linkPoints.frontier = 0; dst->hasAllFrontierSymbols = src->linkHasAllFrontierSymbols; - dst->frontierBP = *((u16*)&src->linkPoints.frontier); + dst->frontierBP = *((u16 *)&src->linkPoints.frontier); break; } } @@ -996,7 +996,7 @@ static void BufferTextsVarsForCardPage2(void) static void PrintNameOnCardFront(void) { u8 buffer[32]; - u8* txtPtr; + u8 *txtPtr; txtPtr = StringCopy(buffer, gText_TrainerCardName); StringCopy(txtPtr, sData->trainerCard.playerName); ConvertInternationalString(txtPtr, sData->language); @@ -1009,7 +1009,7 @@ static void PrintNameOnCardFront(void) static void PrintIdOnCard(void) { u8 buffer[32]; - u8* txtPtr; + u8 *txtPtr; s32 xPos; u32 top; txtPtr = StringCopy(buffer, gText_TrainerCardIDNo); @@ -1186,7 +1186,7 @@ static void BufferHofDebutTime(void) } } -static void PrintStatOnBackOfCard(u8 top, const u8* statName, u8* stat, const u8* color) +static void PrintStatOnBackOfCard(u8 top, const u8 *statName, u8 *stat, const u8 *color) { static const u8 xOffsets[] = {8, 16}; static const u8 widths[] = {216, 216}; @@ -1471,7 +1471,7 @@ static void DrawCardScreenBackground(u16 *ptr) CopyBgTilemapBufferToVram(2); } -static void DrawCardFrontOrBack(u16* ptr) +static void DrawCardFrontOrBack(u16 *ptr) { s16 i, j; u16 *dst = sData->cardTilemapBuffer; diff --git a/src/union_room.c b/src/union_room.c index 07fd30ca78ad..3cb1e6f8af4e 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1750,7 +1750,7 @@ static void Task_StartActivity(u8 taskId) static void Task_RunScriptAndFadeToActivity(u8 taskId) { s16 *data = gTasks[taskId].data; - u16 *sendBuff = (u16*)(gBlockSendBuffer); + u16 *sendBuff = (u16 *)(gBlockSendBuffer); switch (data[0]) { diff --git a/src/util.c b/src/util.c index a4e3fa4cfc21..32f31a26dda3 100644 --- a/src/util.c +++ b/src/util.c @@ -253,7 +253,7 @@ u16 CalcCRC16WithTable(const u8 *data, u32 length) return ~crc; } -u32 CalcByteArraySum(const u8* data, u32 length) +u32 CalcByteArraySum(const u8 *data, u32 length) { u32 sum, i; for (sum = 0, i = 0; i < length; i++) diff --git a/src/walda_phrase.c b/src/walda_phrase.c index aa85c0d60bef..025f900e5a70 100644 --- a/src/walda_phrase.c +++ b/src/walda_phrase.c @@ -140,7 +140,7 @@ static u8 GetLetterTableId(u8 letter) #define KEY data[8] #define NUM_WALLPAPER_DATA_BYTES 9 #define TO_BIT_OFFSET(i) (3 + (8 * (i))) // Convert a position in the phrase to a bit number into the wallpaper data array -static bool32 TryCalculateWallpaper(u16* backgroundClr, u16 *foregroundClr, u8 *iconId, u8 *patternId, u16 trainerId, u8 *phrase) +static bool32 TryCalculateWallpaper(u16 *backgroundClr, u16 *foregroundClr, u8 *iconId, u8 *patternId, u16 trainerId, u8 *phrase) { s32 i; ALIGNED(2) u8 data[NUM_WALLPAPER_DATA_BYTES]; @@ -186,10 +186,10 @@ static bool32 TryCalculateWallpaper(u16* backgroundClr, u16 *foregroundClr, u8 * return FALSE; // Successful phrase, save resulting wallpaper - ptr = (u16*) &BG_COLOR_LO; + ptr = (u16 *) &BG_COLOR_LO; *backgroundClr = *ptr; - ptr = (u16*) &FG_COLOR_LO; + ptr = (u16 *) &FG_COLOR_LO; *foregroundClr = *ptr; *iconId = ICON_ID; From fa32f337be1fa43cbdc6ef31791166d5ca4858db Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 10:21:20 -0400 Subject: [PATCH 641/762] Review changes --- src/battle_script_commands.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 94e087402cc2..f176d0b253c4 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3323,7 +3323,7 @@ static void Cmd_getexp(void) { // music change in wild battle after fainting a poke if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER) - && gBattleMons[0].hp + && gBattleMons[0].hp != 0 && !gBattleStruct->wildVictorySong) { BattleStopLowHpSound(); @@ -4246,7 +4246,7 @@ static void Cmd_moveend(void) effect = TRUE; gBattleScripting.moveendState++; break; - case MOVEEND_ON_DAMAGE_ABILITIES: // Such as abilities activating on contact(Poison Spore, Rough Skin, etc.). + case MOVEEND_ON_DAMAGE_ABILITIES: // Such as abilities activating on contact (Effect Spore, Rough Skin, etc.). if (AbilityBattleEffects(ABILITYEFFECT_ON_DAMAGE, gBattlerTarget, 0, 0, 0)) effect = TRUE; gBattleScripting.moveendState++; @@ -6237,7 +6237,7 @@ static void Cmd_hpthresholds(void) if (result == 0) result = 1; - if (result > 69 || !gBattleMons[opposingBattler].hp) + if (result > 69 || !gBattleMons[opposingBattler].hp == 0) gBattleStruct->hpScale = 0; else if (result > 39) gBattleStruct->hpScale = 1; From aa93af40838b6754be2b95c6ddf61574119bd9ce Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 10:34:21 -0400 Subject: [PATCH 642/762] Fixed check --- src/battle_script_commands.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index f176d0b253c4..74d7ac1c0e68 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6237,7 +6237,7 @@ static void Cmd_hpthresholds(void) if (result == 0) result = 1; - if (result > 69 || !gBattleMons[opposingBattler].hp == 0) + if (result > 69 || gBattleMons[opposingBattler].hp == 0) gBattleStruct->hpScale = 0; else if (result > 39) gBattleStruct->hpScale = 1; From 13672680b096c7156bfb37d3292ff45ebdbb99e1 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 10:52:35 -0400 Subject: [PATCH 643/762] void pointer standarized --- gflib/bg.c | 16 ++-- gflib/bg.h | 6 +- gflib/window.h | 2 +- include/battle.h | 4 +- include/battle_anim.h | 2 +- include/decompress.h | 6 +- include/gba/isagbprint.h | 8 +- include/global.h | 2 +- src/apprentice.c | 2 +- src/battle_anim.c | 18 ++-- src/battle_anim_effects_1.c | 2 +- src/battle_bg.c | 154 +++++++++++++++++------------------ src/battle_factory_screen.c | 6 +- src/battle_interface.c | 80 +++++++++--------- src/battle_main.c | 8 +- src/battle_records.c | 2 +- src/battle_script_commands.c | 2 +- src/battle_setup.c | 8 +- src/berry_crush.c | 6 +- src/contest_util.c | 2 +- src/decompress.c | 12 +-- src/evolution_scene.c | 6 +- src/link_rfu_2.c | 4 +- src/list_menu.c | 44 +++++----- src/load_save.c | 6 +- src/main_menu.c | 4 +- src/menu.c | 2 +- src/menu_helpers.c | 6 +- src/option_menu.c | 2 +- src/pokeball.c | 2 +- src/pokedex.c | 4 +- src/pokemon.c | 2 +- src/pokemon_jump.c | 2 +- src/pokemon_storage_system.c | 10 +-- src/pokenav_conditions_gfx.c | 2 +- src/record_mixing.c | 2 +- src/recorded_battle.c | 8 +- src/reshow_battle_screen.c | 2 +- src/save.c | 8 +- src/union_room.c | 22 ++--- src/use_pokeblock.c | 4 +- 41 files changed, 245 insertions(+), 245 deletions(-) diff --git a/gflib/bg.c b/gflib/bg.c index ad413b3c95cd..4b0379de01b0 100644 --- a/gflib/bg.c +++ b/gflib/bg.c @@ -33,7 +33,7 @@ struct BgConfig2 u32 basePalette:4; u32 unk_3:18; - void* tilemap; + void *tilemap; s32 bg_x; s32 bg_y; }; @@ -183,14 +183,14 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode) case 0x1: offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE; offset = destOffset + offset; - cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0); + cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0); if (cursor == -1) return -1; break; case 0x2: offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE; offset = destOffset + offset; - cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0); + cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0); if (cursor == -1) return -1; break; @@ -372,7 +372,7 @@ void SetBgMode(u8 bgMode) SetBgModeInternal(bgMode); } -u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset) +u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset) { u16 tileOffset; u8 cursor; @@ -422,7 +422,7 @@ u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset) if (!IsInvalidBg32(bg)) { u16 paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2); - cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, 0); + cursor = RequestDma3Copy(src, (void *)(paletteOffset + BG_PLTT), size, 0); if (cursor == -1) { @@ -863,7 +863,7 @@ void UnsetBgTilemapBuffer(u8 bg) } } -void* GetBgTilemapBuffer(u8 bg) +void *GetBgTilemapBuffer(u8 bg) { if (IsInvalidBg32(bg)) return NULL; @@ -906,7 +906,7 @@ void CopyBgTilemapBufferToVram(u8 bg) } } -void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height) +void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height) { u16 destX16; u16 destY16; @@ -1240,7 +1240,7 @@ bool32 IsInvalidBg32(u8 bg) bool32 IsTileMapOutsideWram(u8 bg) { - if (sGpuBgConfigs2[bg].tilemap > (void*)IWRAM_END) + if (sGpuBgConfigs2[bg].tilemap > (void *)IWRAM_END) return TRUE; else if (sGpuBgConfigs2[bg].tilemap == NULL) return TRUE; diff --git a/gflib/bg.h b/gflib/bg.h index 02ff0736945b..4b9744561695 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -62,7 +62,7 @@ void ResetBgsAndClearDma3BusyFlags(u32 leftoverFireRedLeafGreenVariable); void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates); void InitBgFromTemplate(const struct BgTemplate *template); void SetBgMode(u8 bgMode); -u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset); +u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset); u16 LoadBgTilemap(u8 bg, const void *src, u16 size, u16 destOffset); u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset); bool8 IsDma3ManagerBusyWithBgCopy(void); @@ -79,10 +79,10 @@ void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dis u8 Unused_AdjustBgMosaic(u8 val, u8 mode); void SetBgTilemapBuffer(u8 bg, void *tilemap); void UnsetBgTilemapBuffer(u8 bg); -void* GetBgTilemapBuffer(u8 bg); +void *GetBgTilemapBuffer(u8 bg); void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset); void CopyBgTilemapBufferToVram(u8 bg); -void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height); +void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height); void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette); void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2); void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height); diff --git a/gflib/window.h b/gflib/window.h index 6cb98c8456af..583e7e167372 100644 --- a/gflib/window.h +++ b/gflib/window.h @@ -73,7 +73,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u void CopyWindowToVram8Bit(u8 windowId, u8 mode); extern struct Window gWindows[]; -extern void* gWindowBgTilemapBuffers[]; +extern void *gWindowBgTilemapBuffers[]; extern u32 gUnusedWindowVar1; extern u32 gUnusedWindowVar2; extern u32 gUnusedWindowVar3; diff --git a/include/battle.h b/include/battle.h index bccf2f7548dd..0b349e4b6950 100644 --- a/include/battle.h +++ b/include/battle.h @@ -588,9 +588,9 @@ 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 pokemon union { - void* ptr[MAX_BATTLERS_COUNT]; + void *ptr[MAX_BATTLERS_COUNT]; u8 *byte[MAX_BATTLERS_COUNT]; } sprites; struct SpriteTemplate templates[MAX_BATTLERS_COUNT]; diff --git a/include/battle_anim.h b/include/battle_anim.h index 8097df8aa51f..ebbffd3bacca 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -124,7 +124,7 @@ u8 AnimDummyReturnArg(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); void DestroySpriteWithActiveSheet(struct Sprite*); u8 CreateInvisibleSpriteCopy(int, u8, int); -void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void*, bool32); +void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void *, bool32); void AnimLoadCompressedBgGfx(u32, const u32 *, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircle(struct Sprite *); diff --git a/include/decompress.h b/include/decompress.h index 14906211cf6b..cded1fdde6b6 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -16,9 +16,9 @@ void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src); void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *src, void *buffer); bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src); -void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species); -void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void* buffer, s32 species); -void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void* buffer, s32 species); +void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void *buffer, s32 species); +void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void *buffer, s32 species); +void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *buffer, s32 species); void HandleLoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); void HandleLoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality); diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 1be3852e3b2c..13687825ef80 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -23,14 +23,14 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP #ifdef NDEBUG #define AGB_ASSERT(exp) #else -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1); +#define AGB_ASSERT(exp) (exp) ? ((void *)0) : AGBAssert(__FILE__, __LINE__, #exp, 1); #endif #undef AGB_WARNING #ifdef NDEBUG #define AGB_WARNING(exp) #else -#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0); +#define AGB_WARNING(exp) (exp) ? ((void *)0) : AGBAssert(__FILE__, __LINE__, #exp, 0); #endif // for matching purposes @@ -38,13 +38,13 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP #ifdef NDEBUG #define AGB_ASSERT_EX(exp, file, line) #else -#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 1); +#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void *)0) : AGBAssert(file, line, #exp, 1); #endif #ifdef NDEBUG #define AGB_WARNING_EX(exp, file, line) #else -#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 0); +#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void *)0) : AGBAssert(file, line, #exp, 0); #endif #endif // GUARD_GBA_ISAGBPRINT_H diff --git a/include/global.h b/include/global.h index ce4e75f4591d..b1fd21d8b143 100644 --- a/include/global.h +++ b/include/global.h @@ -108,7 +108,7 @@ #define T2_READ_8(ptr) ((ptr)[0]) #define T2_READ_16(ptr) ((ptr)[0] + ((ptr)[1] << 8)) #define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24)) -#define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr) +#define T2_READ_PTR(ptr) (void *) T2_READ_32(ptr) // Macros for checking the joypad #define TEST_BUTTON(field, button) ((field) & (button)) diff --git a/src/apprentice.c b/src/apprentice.c index f2752817273c..16ce0a859cb6 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -1289,7 +1289,7 @@ static void Task_ExecuteFuncAfterButtonPress(u8 taskId) { if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON)) { - gApprenticeFunc = (void*)(u32)(((u16)gTasks[taskId].data[0] | (gTasks[taskId].data[1] << 16))); + gApprenticeFunc = (void *)(u32)(((u16)gTasks[taskId].data[0] | (gTasks[taskId].data[1] << 16))); gApprenticeFunc(); DestroyTask(taskId); } diff --git a/src/battle_anim.c b/src/battle_anim.c index 4273ac607e26..375363212bc7 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -676,13 +676,13 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) if (IsContest() == TRUE) { - RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(16)), 0x2000, 1); - RequestDma3Fill(0xFF, (void*)(BG_SCREEN_ADDR(30)), 0x1000, 0); + RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(16)), 0x2000, 1); + RequestDma3Fill(0xFF, (void *)(BG_SCREEN_ADDR(30)), 0x1000, 0); } else { - RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(8)), 0x2000, 1); - RequestDma3Fill(0xFF, (void*)(BG_SCREEN_ADDR(28)), 0x1000, 0); + RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(8)), 0x2000, 1); + RequestDma3Fill(0xFF, (void *)(BG_SCREEN_ADDR(28)), 0x1000, 0); } GetBattleAnimBg1Data(&animBg); @@ -707,7 +707,7 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], animBg.paletteId * 16, 0x20); - CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + animBg.paletteId * 32), 0x20); + CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + animBg.paletteId * 32), 0x20); if (IsContest()) battlerPosition = 0; @@ -721,8 +721,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) } else { - RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(12)), 0x2000, 1); - RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(30)), 0x1000, 1); + RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(12)), 0x2000, 1); + RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(30)), 0x1000, 1); GetBattleAnimBgData(&animBg, 2); CpuFill16(0, animBg.bgTiles + 0x1000, 0x1000); CpuFill16(0, animBg.bgTilemap + 0x400, 0x800); @@ -742,7 +742,7 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible) SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20); - CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + 0x120), 0x20); + CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + 0x120), 0x20); DrawBattlerOnBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset); } @@ -1203,7 +1203,7 @@ static void LoadMoveBg(u16 bgId) void *dmaDest; LZDecompressWram(tilemap, gDecompressionBuffer); - RelocateBattleBgPal(GetBattleBgPaletteNum(), (void*)gDecompressionBuffer, 0x100, FALSE); + RelocateBattleBgPal(GetBattleBgPaletteNum(), (void *)gDecompressionBuffer, 0x100, FALSE); dmaSrc = gDecompressionBuffer; dmaDest = (void *)BG_SCREEN_ADDR(26); DmaCopy32(3, dmaSrc, dmaDest, 0x800); diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 550692dcb5ca..49b4bcde5368 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -5015,7 +5015,7 @@ void AnimTask_MoonlightEndFade(u8 taskId) gTasks[taskId].data[9] = 15; b = GetBattleMonSpritePalettesMask(1, 1, 1, 1); c = a | b; - StorePointerInVars(&gTasks[taskId].data[14], &gTasks[taskId].data[15], (void*)c); + StorePointerInVars(&gTasks[taskId].data[14], &gTasks[taskId].data[15], (void *)c); b = b | (0x10000 << IndexOfSpritePaletteTag(ANIM_TAG_MOON)); d = IndexOfSpritePaletteTag(ANIM_TAG_GREEN_SPARKLE); BeginNormalPaletteFade((0x10000 << d) | b, 0, 0, 16, RGB(27, 29, 31)); diff --git a/src/battle_bg.c b/src/battle_bg.c index ed32c009cb33..94d4c194e078 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -760,26 +760,26 @@ 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))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); } else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) { - LZDecompressVram(gBattleTerrainTiles_Cave, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Cave, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Groudon, 0x20, 0x60); } else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE) { - LZDecompressVram(gBattleTerrainTiles_Water, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Water, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Water, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Kyogre, 0x20, 0x60); } else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA) { - LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Rayquaza, 0x20, 0x60); } else @@ -789,15 +789,15 @@ 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))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, 0x20, 0x60); return; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, 0x20, 0x60); return; } @@ -807,48 +807,48 @@ 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))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, 0x20, 0x60); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, 0x20, 0x60); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, 0x20, 0x60); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, 0x20, 0x60); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, 0x20, 0x60); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, 0x20, 0x60); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, 0x20, 0x60); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); break; } @@ -857,7 +857,7 @@ void DrawMainBattleBackground(void) void LoadBattleTextboxAndBackground(void) { - LZDecompressVram(gBattleTextboxTiles, (void*)(BG_CHAR_ADDR(0))); + LZDecompressVram(gBattleTextboxTiles, (void *)(BG_CHAR_ADDR(0))); CopyToBgTilemapBuffer(0, gBattleTextboxTilemap, 0, 0); CopyBgTilemapBufferToVram(0); LoadCompressedPalette(gBattleTextboxPalette, 0, 0x40); @@ -1124,8 +1124,8 @@ void DrawBattleEntryBackground(void) { if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - LZDecompressVram(gBattleVSFrame_Gfx, (void*)(BG_CHAR_ADDR(1))); - LZDecompressVram(gVsLettersGfx, (void*)OBJ_VRAM0); + LZDecompressVram(gBattleVSFrame_Gfx, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gVsLettersGfx, (void *)OBJ_VRAM0); LoadCompressedPalette(gBattleVSFrame_Pal, 0x60, 0x20); SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1); SetGpuReg(REG_OFFSET_BG1CNT, 0x5C04); @@ -1143,8 +1143,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(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); } else { @@ -1160,18 +1160,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(gBattleTerrainAnimTiles_Cave, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_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(gBattleTerrainAnimTiles_Underwater, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_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(gBattleTerrainAnimTiles_Rayquaza, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(28))); } else { @@ -1180,27 +1180,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(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_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(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_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(sBattleTerrainTable[gBattleTerrain].entryTileset, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTilemap, (void *)(BG_SCREEN_ADDR(28))); } else { - LZDecompressVram(gBattleTerrainAnimTiles_Building, (void*)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void*)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); } } } @@ -1212,7 +1212,7 @@ bool8 LoadChosenBattleElement(u8 caseId) switch (caseId) { case 0: - LZDecompressVram(gBattleTextboxTiles, (void*)(BG_CHAR_ADDR(0))); + LZDecompressVram(gBattleTextboxTiles, (void *)(BG_CHAR_ADDR(0))); break; case 1: CopyToBgTilemapBuffer(0, gBattleTextboxTilemap, 0, 0); @@ -1224,11 +1224,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(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); } else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) { - LZDecompressVram(gBattleTerrainTiles_Cave, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2))); } else { @@ -1237,12 +1237,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(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; } } @@ -1251,31 +1251,31 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTiles_Building, (void*)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; } } @@ -1283,14 +1283,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(gBattleTerrainTilemap_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(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); else - LZDecompressVram(gBattleTerrainTilemap_Water, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); } else { @@ -1299,12 +1299,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(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; } } @@ -1313,31 +1313,31 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; } } diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index 8edece391771..e2b626a6348e 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -2473,7 +2473,7 @@ static void Swap_Task_HandleYesNo(u8 taskId) gTasks[taskId].tSaidYes = TRUE; hiPtr = gTasks[taskId].tFollowUpTaskPtrHi; loPtr = gTasks[taskId].tFollowUpTaskPtrLo; - gTasks[taskId].func = (void*)((hiPtr << 16) | loPtr); + gTasks[taskId].func = (void *)((hiPtr << 16) | loPtr); } else { @@ -2482,7 +2482,7 @@ static void Swap_Task_HandleYesNo(u8 taskId) Swap_ErasePopupMenu(SWAP_WIN_YES_NO); hiPtr = gTasks[taskId].tFollowUpTaskPtrHi; loPtr = gTasks[taskId].tFollowUpTaskPtrLo; - gTasks[taskId].func = (void*)((hiPtr << 16) | loPtr); + gTasks[taskId].func = (void *)((hiPtr << 16) | loPtr); } } else if (JOY_NEW(B_BUTTON)) @@ -2492,7 +2492,7 @@ static void Swap_Task_HandleYesNo(u8 taskId) Swap_ErasePopupMenu(SWAP_WIN_YES_NO); hiPtr = gTasks[taskId].tFollowUpTaskPtrHi; loPtr = gTasks[taskId].tFollowUpTaskPtrLo; - gTasks[taskId].func = (void*)((hiPtr << 16) | loPtr); + gTasks[taskId].func = (void *)((hiPtr << 16) | loPtr); } else if (JOY_REPEAT(DPAD_UP)) { diff --git a/src/battle_interface.c b/src/battle_interface.c index 155609ba3dbe..1fc25f265047 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -908,7 +908,7 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId) healthBarSpritePtr->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; healthBarSpritePtr->oam.priority = 1; - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void*)(OBJ_VRAM0 + healthBarSpritePtr->oam.tileNum * TILE_SIZE_4BPP), 64); + 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; @@ -1094,7 +1094,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) if (GetBattlerSide(gSprites[healthboxSpriteId].hMain_Battler) == B_SIDE_PLAYER) { - objVram = (void*)(OBJ_VRAM0); + objVram = (void *)(OBJ_VRAM0); if (!IsDoubleBattle()) objVram += spriteTileNum + 0x820; else @@ -1102,7 +1102,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) } else { - objVram = (void*)(OBJ_VRAM0); + objVram = (void *)(OBJ_VRAM0); objVram += spriteTileNum + 0x400; } TextIntoHealthboxObject(objVram, windowTileData, 3); @@ -1123,7 +1123,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) { ConvertIntToDecimalStringN(text, value, STR_CONV_MODE_RIGHT_ALIGN, 3); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 0, 5, 2, &windowId); - objVram = (void*)(OBJ_VRAM0); + objVram = (void *)(OBJ_VRAM0); objVram += spriteTileNum + 0xB40; HpTextIntoHealthboxObject(objVram, windowTileData, 2); RemoveWindowOnHealthbox(windowId); @@ -1134,10 +1134,10 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) text[3] = CHAR_SLASH; text[4] = EOS; windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 4, 5, 2, &windowId); - objVram = (void*)(OBJ_VRAM0); + objVram = (void *)(OBJ_VRAM0); objVram += spriteTileNum + 0x3E0; HpTextIntoHealthboxObject(objVram, windowTileData, 1); - objVram = (void*)(OBJ_VRAM0); + objVram = (void *)(OBJ_VRAM0); objVram += spriteTileNum + 0xB00; HpTextIntoHealthboxObject(objVram, windowTileData + 0x20, 2); RemoveWindowOnHealthbox(windowId); @@ -1179,7 +1179,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) for (i = 0; i < 3; i++) { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[i * 64 + 32], - (void*)((OBJ_VRAM0) + TILE_SIZE_4BPP * (gSprites[healthboxSpriteId].oam.tileNum + var + i)), + (void *)((OBJ_VRAM0) + TILE_SIZE_4BPP * (gSprites[healthboxSpriteId].oam.tileNum + var + i)), 0x20); } } @@ -1198,16 +1198,16 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 if (gBattleSpritesDataPtr->battlerData[gSprites[healthboxSpriteId].data[6]].hpNumbersNoBars) // don't print text if only bars are visible { spriteTileNum = gSprites[gSprites[healthboxSpriteId].data[5]].oam.tileNum * TILE_SIZE_4BPP; - objVram = (void*)(OBJ_VRAM0) + spriteTileNum; + objVram = (void *)(OBJ_VRAM0) + spriteTileNum; if (maxOrCurrent != HP_CURRENT) // doubles, max hp { ConvertIntToDecimalStringN(text, value, STR_CONV_MODE_RIGHT_ALIGN, 3); windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 0, 5, 0, &windowId); - HpTextIntoHealthboxObject((void*)(OBJ_VRAM0) + spriteTileNum + 0xC0, windowTileData, 2); + HpTextIntoHealthboxObject((void *)(OBJ_VRAM0) + spriteTileNum + 0xC0, windowTileData, 2); RemoveWindowOnHealthbox(windowId); CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END), - (void*)(OBJ_VRAM0 + 0x680) + (gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP), + (void *)(OBJ_VRAM0 + 0x680) + (gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x20); } else @@ -1217,7 +1217,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 text[4] = EOS; windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 4, 5, 0, &windowId); FillHealthboxObject(objVram, 0, 3); // Erases HP bar leftover. - HpTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x60) + spriteTileNum, windowTileData, 3); + HpTextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x60) + spriteTileNum, windowTileData, 3); RemoveWindowOnHealthbox(windowId); } } @@ -1250,13 +1250,13 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 if (i < 3) { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[((i - var) * 64) + 32], - (void*)((OBJ_VRAM0) + 32 * (1 + gSprites[r7].oam.tileNum + i)), + (void *)((OBJ_VRAM0) + 32 * (1 + gSprites[r7].oam.tileNum + i)), 0x20); } else { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[((i - var) * 64) + 32], - (void*)((OBJ_VRAM0 + 0x20) + 32 * (i + gSprites[r7].oam.tileNum)), + (void *)((OBJ_VRAM0 + 0x20) + 32 * (i + gSprites[r7].oam.tileNum)), 0x20); } } @@ -1264,16 +1264,16 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 if (maxOrCurrent == HP_CURRENT) { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[224], - (void*)((OBJ_VRAM0) + ((gSprites[r7].oam.tileNum + 4) * TILE_SIZE_4BPP)), + (void *)((OBJ_VRAM0) + ((gSprites[r7].oam.tileNum + 4) * TILE_SIZE_4BPP)), 0x20); - CpuFill32(0, (void*)((OBJ_VRAM0) + (gSprites[r7].oam.tileNum * TILE_SIZE_4BPP)), 0x20); + CpuFill32(0, (void *)((OBJ_VRAM0) + (gSprites[r7].oam.tileNum * TILE_SIZE_4BPP)), 0x20); } else { if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) // Impossible to reach part, because the battlerId is from the opponent's side. { CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END), - (void*)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP), + (void *)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP), 0x20); } } @@ -1313,11 +1313,11 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) for (j = 1; j < var + 1; j++) { spriteTileNum = (gSprites[healthboxSpriteId].oam.tileNum + (j - (j / 8 * 8)) + (j / 8 * 64)) * TILE_SIZE_4BPP; - CpuCopy32(barFontGfx, (void*)(OBJ_VRAM0) + (spriteTileNum), 0x20); + CpuCopy32(barFontGfx, (void *)(OBJ_VRAM0) + (spriteTileNum), 0x20); barFontGfx += 0x20; spriteTileNum = (8 + gSprites[healthboxSpriteId].oam.tileNum + (j - (j / 8 * 8)) + (j / 8 * 64)) * TILE_SIZE_4BPP; - CpuCopy32(barFontGfx, (void*)(OBJ_VRAM0) + (spriteTileNum), 0x20); + CpuCopy32(barFontGfx, (void *)(OBJ_VRAM0) + (spriteTileNum), 0x20); barFontGfx += 0x20; } @@ -1334,13 +1334,13 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon) if (j <= 1) { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[0x40 * j + 0x20], - (void*)(OBJ_VRAM0) + (gSprites[healthBarSpriteId].oam.tileNum + 2 + j) * TILE_SIZE_4BPP, + (void *)(OBJ_VRAM0) + (gSprites[healthBarSpriteId].oam.tileNum + 2 + j) * TILE_SIZE_4BPP, 32); } else { CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[0x40 * j + 0x20], - (void*)(OBJ_VRAM0 + 0xC0) + (j + gSprites[healthBarSpriteId].oam.tileNum) * TILE_SIZE_4BPP, + (void *)(OBJ_VRAM0 + 0xC0) + (j + gSprites[healthBarSpriteId].oam.tileNum) * TILE_SIZE_4BPP, 32); } } @@ -1372,7 +1372,7 @@ void SwapHpBarsWithHpText(void) { healthBarSpriteId = gSprites[gHealthboxSpriteIds[i]].hMain_HealthBarSpriteId; - CpuFill32(0, (void*)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x100); + CpuFill32(0, (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x100); UpdateHpTextInHealthboxInDoubles(gHealthboxSpriteIds[i], GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_HP), HP_CURRENT); UpdateHpTextInHealthboxInDoubles(gHealthboxSpriteIds[i], GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_MAX_HP), HP_MAX); } @@ -1380,7 +1380,7 @@ void SwapHpBarsWithHpText(void) { UpdateStatusIconInHealthbox(gHealthboxSpriteIds[i]); UpdateHealthboxAttribute(gHealthboxSpriteIds[i], &gPlayerParty[gBattlerPartyIndexes[i]], HEALTHBOX_HEALTH_BAR); - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END_BAR), (void*)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32); + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END_BAR), (void *)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32); } } else @@ -1924,8 +1924,8 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) if (GetBattlerSide(gSprites[healthboxSpriteId].data[6]) == B_SIDE_PLAYER) { - TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x40 + spriteTileNum), windowTileData, 6); - ptr = (void*)(OBJ_VRAM0); + TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x40 + spriteTileNum), windowTileData, 6); + ptr = (void *)(OBJ_VRAM0); if (!IsDoubleBattle()) ptr += spriteTileNum + 0x800; else @@ -1934,7 +1934,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) } else { - TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x20 + spriteTileNum), windowTileData, 7); + TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x20 + spriteTileNum), windowTileData, 7); } RemoveWindowOnHealthbox(windowId); @@ -1958,9 +1958,9 @@ static void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus) healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId; if (noStatus) - CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_STATUS_BALL_CAUGHT), (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); + CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_STATUS_BALL_CAUGHT), (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); else - CpuFill32(0, (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); + CpuFill32(0, (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32); } static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId) @@ -2018,7 +2018,7 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId) statusGfxPtr = GetHealthboxElementGfxPtr(HEALTHBOX_GFX_39); for (i = 0; i < 3; i++) - CpuCopy32(statusGfxPtr, (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder + i) * TILE_SIZE_4BPP), 32); + CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder + i) * TILE_SIZE_4BPP), 32); if (!gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars) CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 64); @@ -2031,14 +2031,14 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId) pltAdder += battlerId + 12; FillPalette(sStatusIconColors[statusPalId], pltAdder + 0x100, 2); - CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void*)(OBJ_PLTT + pltAdder * 2), 2); - CpuCopy32(statusGfxPtr, (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 96); + CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void *)(OBJ_PLTT + pltAdder * 2), 2); + CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 96); if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT) { if (!gBattleSpritesDataPtr->battlerData[battlerId].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); + 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); } } TryAddPokeballIconToHealthbox(healthboxSpriteId, FALSE); @@ -2111,8 +2111,8 @@ static void UpdateSafariBallsTextOnHealthbox(u8 healthboxSpriteId) windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(gText_SafariBalls, 0, 3, 2, &windowId); spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP; - TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x40) + spriteTileNum, windowTileData, 6); - TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x800) + spriteTileNum, windowTileData + 0xC0, 2); + TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x40) + spriteTileNum, windowTileData, 6); + TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x800) + spriteTileNum, windowTileData + 0xC0, 2); RemoveWindowOnHealthbox(windowId); } @@ -2128,8 +2128,8 @@ static void UpdateLeftNoOfBallsTextOnHealthbox(u8 healthboxSpriteId) windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, GetStringRightAlignXOffset(FONT_SMALL, text, 0x2F), 3, 2, &windowId); spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP; - SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x2C0) + spriteTileNum, windowTileData, 2); - SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0xA00) + spriteTileNum, windowTileData + 0x40, 4); + SafariTextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x2C0) + spriteTileNum, windowTileData, 2); + SafariTextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0xA00) + spriteTileNum, windowTileData + 0x40, 4); RemoveWindowOnHealthbox(windowId); } @@ -2273,10 +2273,10 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar) u8 healthbarSpriteId = gSprites[gBattleSpritesDataPtr->battleBars[battlerId].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); + (void *)(OBJ_VRAM0 + (gSprites[healthbarSpriteId].oam.tileNum + 2 + i) * TILE_SIZE_4BPP), 32); else CpuCopy32(GetHealthboxElementGfxPtr(barElementId) + array[i] * 32, - (void*)(OBJ_VRAM0 + 64 + (i + gSprites[healthbarSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32); + (void *)(OBJ_VRAM0 + 64 + (i + gSprites[healthbarSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32); } break; case EXP_BAR: @@ -2295,10 +2295,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[battlerId].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[battlerId].healthboxSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32); } break; } diff --git a/src/battle_main.c b/src/battle_main.c index cc473044a3a2..af9eda4fcb0e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -606,7 +606,7 @@ static void CB2_InitBattleInternal(void) SetHBlankCallback(NULL); SetVBlankCallback(NULL); - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); @@ -2178,7 +2178,7 @@ void CB2_InitEndLinkBattle(void) } else { - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuReg(REG_OFFSET_WIN0H, DISPLAY_WIDTH); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(DISPLAY_HEIGHT / 2, DISPLAY_HEIGHT / 2 + 1)); @@ -2319,7 +2319,7 @@ static void EndLinkBattleInSteps(void) } break; case 3: - CpuFill32(0, (void*)VRAM, VRAM_SIZE); + CpuFill32(0, (void *)VRAM, VRAM_SIZE); for (i = 0; i < 2; i++) LoadChosenBattleElement(i); @@ -2406,7 +2406,7 @@ static void CB2_InitAskRecordBattle(void) SetHBlankCallback(NULL); SetVBlankCallback(NULL); - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); ResetPaletteFade(); gBattle_BG0_X = 0; gBattle_BG0_Y = 0; diff --git a/src/battle_records.c b/src/battle_records.c index f576d5912de5..6cab28d21b59 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -388,7 +388,7 @@ static void RemoveTrainerHillRecordsWindow(u8 windowId) static void ClearVramOamPlttRegs(void) { - DmaClearLarge16(3, (void*)(VRAM), VRAM_SIZE, 0x1000); + DmaClearLarge16(3, (void *)(VRAM), VRAM_SIZE, 0x1000); DmaClear32(3, OAM, OAM_SIZE); DmaClear16(3, PLTT, PLTT_SIZE); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 74d7ac1c0e68..13fa9c231362 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -7963,7 +7963,7 @@ static void Cmd_painsplitdmgcalc(void) { s32 hpDiff = (gBattleMons[gBattlerAttacker].hp + gBattleMons[gBattlerTarget].hp) / 2; s32 painSplitHp = gBattleMoveDamage = gBattleMons[gBattlerTarget].hp - hpDiff; - u8 *storeLoc = (void*)(&gBattleScripting.painSplitHp); + u8 *storeLoc = (void *)(&gBattleScripting.painSplitHp); storeLoc[0] = (painSplitHp); storeLoc[1] = (painSplitHp & 0x0000FF00) >> 8; diff --git a/src/battle_setup.c b/src/battle_setup.c index f8bc2d5ca794..da51a7be699b 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -600,7 +600,7 @@ void StartRegiBattle(void) static void CB2_EndWildBattle(void) { - CpuFill16(0, (void*)(BG_PLTT), BG_PLTT_SIZE); + CpuFill16(0, (void *)(BG_PLTT), BG_PLTT_SIZE); ResetOamRange(0, 128); if (IsPlayerDefeated(gBattleOutcome) == TRUE && !InBattlePyramid() && !InBattlePike()) @@ -616,7 +616,7 @@ static void CB2_EndWildBattle(void) static void CB2_EndScriptedWildBattle(void) { - CpuFill16(0, (void*)(BG_PLTT), BG_PLTT_SIZE); + CpuFill16(0, (void *)(BG_PLTT), BG_PLTT_SIZE); ResetOamRange(0, 128); if (IsPlayerDefeated(gBattleOutcome) == TRUE) @@ -1050,9 +1050,9 @@ static inline void SetU32(void *ptr, u32 value) *(u32 *)(ptr) = value; } -static inline void SetPtr(const void *ptr, const void* value) +static inline void SetPtr(const void *ptr, const void *value) { - *(const void**)(ptr) = value; + *(const void **)(ptr) = value; } static void TrainerBattleLoadArgs(const struct TrainerBattleParameter *specs, const u8 *data) diff --git a/src/berry_crush.c b/src/berry_crush.c index ffc708e6b360..88321e68dc3e 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -874,7 +874,7 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 156, .y = 0, - .spriteSheet = (void*) &sSpriteSheets[3], + .spriteSheet = (void *) &sSpriteSheets[3], .spritePal = &sSpritePals[2], }, { // Seconds @@ -886,7 +886,7 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 180, .y = 0, - .spriteSheet = (void*) &sSpriteSheets[3], + .spriteSheet = (void *) &sSpriteSheets[3], .spritePal = &sSpritePals[2], }, { // 1/60ths of a second @@ -898,7 +898,7 @@ static const struct DigitObjUtilTemplate sDigitObjTemplates[] = .xDelta = 8, .x = 204, .y = 0, - .spriteSheet = (void*) &sSpriteSheets[3], + .spriteSheet = (void *) &sSpriteSheets[3], .spritePal = &sSpritePals[2], } }; diff --git a/src/contest_util.c b/src/contest_util.c index ddec85b2ad26..941a691a11c5 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1196,7 +1196,7 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) spriteTilePtrs[0] = (u8 *)(sprite->oam.tileNum * 32 + OBJ_VRAM0); for (i = 1; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) - spriteTilePtrs[i] = (void*)(gSprites[sprite->data[i - 1]].oam.tileNum * 32 + OBJ_VRAM0); + spriteTilePtrs[i] = (void *)(gSprites[sprite->data[i - 1]].oam.tileNum * 32 + OBJ_VRAM0); for (i = 0; i < (int)ARRAY_COUNT(spriteTilePtrs); i++) CpuFill32(0, spriteTilePtrs[i], 0x400); diff --git a/src/decompress.c b/src/decompress.c index 647f7f60ed69..69c0be74caf6 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -46,7 +46,7 @@ void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src) struct SpritePalette dest; LZ77UnCompWram(src->data, gDecompressionBuffer); - dest.data = (void*) gDecompressionBuffer; + dest.data = (void *) gDecompressionBuffer; dest.tag = src->tag; LoadSpritePalette(&dest); } @@ -61,7 +61,7 @@ void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePale LoadSpritePalette(&dest); } -void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species) +void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void *buffer, s32 species) { if (species > NUM_SPECIES) LZ77UnCompWram(gMonFrontPicTable[0].data, buffer); @@ -266,7 +266,7 @@ u32 GetDecompressedDataSize(const u32 *ptr) bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src) { struct SpriteSheet dest; - void* buffer; + void *buffer; buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); LZ77UnCompWram(src->data, buffer); @@ -283,7 +283,7 @@ bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src) { struct SpritePalette dest; - void* buffer; + void *buffer; buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); LZ77UnCompWram(src->data, buffer); @@ -295,7 +295,7 @@ bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette return FALSE; } -void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void* buffer, s32 species) // a copy of DecompressPicFromTable +void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void *buffer, s32 species) // a copy of DecompressPicFromTable { if (species > NUM_SPECIES) LZ77UnCompWram(gMonFrontPicTable[0].data, buffer); @@ -342,7 +342,7 @@ void HandleLoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *d LoadSpecialPokePic_2(src, dest, species, personality, isFrontPic); } -void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void* buffer, s32 species) +void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *buffer, s32 species) { if (species > NUM_SPECIES) LZ77UnCompWram(gMonFrontPicTable[0].data, buffer); diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 085f88da5846..8bd24597b06b 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -216,7 +216,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u SetHBlankCallback(NULL); SetVBlankCallback(NULL); - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuReg(REG_OFFSET_WIN0H, 0); @@ -322,7 +322,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) SetHBlankCallback(NULL); SetVBlankCallback(NULL); - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); SetGpuReg(REG_OFFSET_MOSAIC, 0); SetGpuReg(REG_OFFSET_WIN0H, 0); @@ -761,7 +761,7 @@ static void Task_EvolutionScene(u8 taskId) BattlePutTextOnWindow(gStringVar4, B_WIN_MSG); PlayBGM(MUS_EVOLVED); gTasks[taskId].tState++; - SetMonData(mon, MON_DATA_SPECIES, (void*)(&gTasks[taskId].tPostEvoSpecies)); + SetMonData(mon, MON_DATA_SPECIES, (void *)(&gTasks[taskId].tPostEvoSpecies)); CalculateMonStats(mon); EvolutionRenameMon(mon, gTasks[taskId].tPreEvoSpecies, gTasks[taskId].tPostEvoSpecies); GetSetPokedexFlag(SpeciesToNationalPokedexNum(gTasks[taskId].tPostEvoSpecies), FLAG_SET_SEEN); diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 9a1805cac9a9..c54d6c3d34ba 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -2947,7 +2947,7 @@ static void Debug_PrintStatus(void) if ((gRfuLinkStatus->getNameFlag >> i) & 1) { Debug_PrintNum(gRfuLinkStatus->partner[i].serialNo, 1, i + 3, 4); - Debug_PrintString((void*)gRfuLinkStatus->partner[i].gname, 6, i + 3); + Debug_PrintString((void *)gRfuLinkStatus->partner[i].gname, 6, i + 3); Debug_PrintString(gRfuLinkStatus->partner[i].uname, 22, i + 3); } } @@ -2967,7 +2967,7 @@ static void Debug_PrintStatus(void) Debug_PrintString(sASCII_8Spaces, 22, i + 3); } Debug_PrintNum(gRfuLinkStatus->partner[gRfu.childSlot].serialNo, 1, 3, 4); - Debug_PrintString((void*)gRfuLinkStatus->partner[gRfu.childSlot].gname, 6, 3); + Debug_PrintString((void *)gRfuLinkStatus->partner[gRfu.childSlot].gname, 6, 3); Debug_PrintString(gRfuLinkStatus->partner[gRfu.childSlot].uname, 22, 3); } else diff --git a/src/list_menu.c b/src/list_menu.c index 8ba13a6cf8a2..e6736cacf826 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -408,7 +408,7 @@ u8 ListMenuInitInRect(struct ListMenuTemplate *listMenuTemplate, struct ListMenu s32 ListMenu_ProcessInput(u8 listTaskId) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; if (JOY_NEW(A_BUTTON)) { @@ -469,7 +469,7 @@ s32 ListMenu_ProcessInput(u8 listTaskId) void DestroyListMenuTask(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; if (scrollOffset != NULL) *scrollOffset = list->scrollOffset; @@ -484,7 +484,7 @@ void DestroyListMenuTask(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow) void RedrawListMenu(u8 listTaskId) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; FillWindowPixelBuffer(list->template.windowId, PIXEL_FILL(list->template.fillValue)); ListMenuPrintEntries(list, list->scrollOffset, 0, list->template.maxShowed); @@ -495,7 +495,7 @@ void RedrawListMenu(u8 listTaskId) // unused void ChangeListMenuPals(u8 listTaskId, u8 cursorPal, u8 fillValue, u8 cursorShadowPal) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; list->template.cursorPal = cursorPal; list->template.fillValue = fillValue; @@ -505,7 +505,7 @@ void ChangeListMenuPals(u8 listTaskId, u8 cursorPal, u8 fillValue, u8 cursorShad // unused void ChangeListMenuCoords(u8 listTaskId, u8 x, u8 y) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; SetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_LEFT, x); SetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_TOP, y); @@ -537,7 +537,7 @@ s32 ListMenuTestInput(struct ListMenuTemplate *template, u32 scrollOffset, u32 s void ListMenuGetCurrentItemArrayId(u8 listTaskId, u16 *arrayId) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; if (arrayId != NULL) *arrayId = list->scrollOffset + list->selectedRow; @@ -545,7 +545,7 @@ void ListMenuGetCurrentItemArrayId(u8 listTaskId, u16 *arrayId) void ListMenuGetScrollAndRow(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; if (scrollOffset != NULL) *scrollOffset = list->scrollOffset; @@ -555,7 +555,7 @@ void ListMenuGetScrollAndRow(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow) u16 ListMenuGetYCoordForPrintingArrowCursor(u8 listTaskId) { - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; u8 yMultiplier = GetFontAttribute(list->template.fontId, FONTATTR_MAX_LETTER_HEIGHT) + list->template.itemVerticalPadding; return list->selectedRow * yMultiplier + list->template.upText_Y; @@ -564,7 +564,7 @@ u16 ListMenuGetYCoordForPrintingArrowCursor(u8 listTaskId) static u8 ListMenuInitInternal(struct ListMenuTemplate *listMenuTemplate, u16 scrollOffset, u16 selectedRow) { u8 listTaskId = CreateTask(ListMenuDummyTask, 0); - struct ListMenu *list = (void*) gTasks[listTaskId].data; + struct ListMenu *list = (void *) gTasks[listTaskId].data; list->template = *listMenuTemplate; list->scrollOffset = scrollOffset; @@ -902,7 +902,7 @@ void ListMenuDefaultCursorMoveFunc(s32 itemIndex, bool8 onInit, struct ListMenu // unused s32 ListMenuGetUnkIndicatorsStructFields(u8 taskId, u8 field) { - struct UnkIndicatorsStruct *data = (void*) gTasks[taskId].data; + struct UnkIndicatorsStruct *data = (void *) gTasks[taskId].data; switch (field) { @@ -946,13 +946,13 @@ s32 ListMenuGetUnkIndicatorsStructFields(u8 taskId, u8 field) void ListMenuSetUnkIndicatorsStructField(u8 taskId, u8 field, s32 value) { - struct UnkIndicatorsStruct *data = (void*) &gTasks[taskId].data; + struct UnkIndicatorsStruct *data = (void *) &gTasks[taskId].data; switch (field) { case 0: case 1: - data->field_4 = (void*)(value); + data->field_4 = (void *)(value); break; case 2: data->field_C = value; @@ -1088,7 +1088,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 } taskId = CreateTask(Task_ScrollIndicatorArrowPair, 0); - data = (void*) gTasks[taskId].data; + data = (void *) gTasks[taskId].data; data->field_0 = 0; data->scrollOffset = scrollOffset; @@ -1140,7 +1140,7 @@ u8 AddScrollIndicatorArrowPairParameterized(u32 arrowType, s32 commonPos, s32 fi static void Task_ScrollIndicatorArrowPair(u8 taskId) { - struct ScrollIndicatorPair *data = (void*) gTasks[taskId].data; + struct ScrollIndicatorPair *data = (void *) gTasks[taskId].data; u16 currItem = (*data->scrollOffset); if (currItem == data->fullyUpThreshold && currItem != 0xFFFF) @@ -1159,7 +1159,7 @@ static void Task_ScrollIndicatorArrowPair(u8 taskId) void Task_ScrollIndicatorArrowPairOnMainMenu(u8 taskId) { s16 *data = gTasks[taskId].data; - struct ScrollIndicatorPair *scrollData = (void*) data; + struct ScrollIndicatorPair *scrollData = (void *) data; if (tIsScrolled) { @@ -1177,7 +1177,7 @@ void Task_ScrollIndicatorArrowPairOnMainMenu(u8 taskId) void RemoveScrollIndicatorArrowPair(u8 taskId) { - struct ScrollIndicatorPair *data = (void*) gTasks[taskId].data; + struct ScrollIndicatorPair *data = (void *) gTasks[taskId].data; if (data->tileTag != TAG_NONE) FreeSpriteTilesByTag(data->tileTag); @@ -1334,7 +1334,7 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor) } taskId = CreateTask(Task_RedOutlineCursor, 0); - data = (void*) gTasks[taskId].data; + data = (void *) gTasks[taskId].data; data->tileTag = cursor->tileTag; data->palTag = cursor->palTag; @@ -1362,7 +1362,7 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor) static void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y) { - struct RedOutlineCursor *data = (void*) gTasks[taskId].data; + struct RedOutlineCursor *data = (void *) gTasks[taskId].data; gSprites[data->spriteId].x = x + 120; gSprites[data->spriteId].y = y + 120; @@ -1370,7 +1370,7 @@ static void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y) static void ListMenuRemoveRedOutlineCursorObject(u8 taskId) { - struct RedOutlineCursor *data = (void*) gTasks[taskId].data; + struct RedOutlineCursor *data = (void *) gTasks[taskId].data; Free(data->subspritesPtr); @@ -1419,7 +1419,7 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) } taskId = CreateTask(Task_RedArrowCursor, 0); - data = (void*) gTasks[taskId].data; + data = (void *) gTasks[taskId].data; data->tileTag = cursor->tileTag; data->palTag = cursor->palTag; @@ -1442,7 +1442,7 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y) { - struct RedArrowCursor *data = (void*) gTasks[taskId].data; + struct RedArrowCursor *data = (void *) gTasks[taskId].data; gSprites[data->spriteId].x = x; gSprites[data->spriteId].y = y; @@ -1450,7 +1450,7 @@ static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y) static void ListMenuRemoveRedArrowCursorObject(u8 taskId) { - struct RedArrowCursor *data = (void*) gTasks[taskId].data; + struct RedArrowCursor *data = (void *) gTasks[taskId].data; if (data->tileTag != TAG_NONE) FreeSpriteTilesByTag(data->tileTag); diff --git a/src/load_save.c b/src/load_save.c index f2b12acf0c11..494a61bcf292 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -73,9 +73,9 @@ void SetSaveBlocksPointers(u16 offset) offset = (offset + Random()) & (SAVEBLOCK_MOVE_RANGE - 4); - gSaveBlock2Ptr = (void*)(&gSaveblock2) + offset; - *sav1_LocalVar = (void*)(&gSaveblock1) + offset; - gPokemonStoragePtr = (void*)(&gPokemonStorage) + offset; + gSaveBlock2Ptr = (void *)(&gSaveblock2) + offset; + *sav1_LocalVar = (void *)(&gSaveblock1) + offset; + gPokemonStoragePtr = (void *)(&gPokemonStorage) + offset; SetBagItemsPointers(); SetDecorationInventoriesPointers(); diff --git a/src/main_menu.c b/src/main_menu.c index 1494d9ad67f3..847befa287a4 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1272,8 +1272,8 @@ static void Task_NewGameBirchSpeech_Init(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); - LZ77UnCompVram(sBirchSpeechShadowGfx, (void*)VRAM); - LZ77UnCompVram(sBirchSpeechBgMap, (void*)(BG_SCREEN_ADDR(7))); + LZ77UnCompVram(sBirchSpeechShadowGfx, (void *)VRAM); + LZ77UnCompVram(sBirchSpeechBgMap, (void *)(BG_SCREEN_ADDR(7))); LoadPalette(sBirchSpeechBgPals, 0, 64); LoadPalette(sBirchSpeechPlatformBlackPal, 1, 16); ScanlineEffect_Stop(); diff --git a/src/menu.c b/src/menu.c index acbbde5482a6..8b3b82d980b3 100644 --- a/src/menu.c +++ b/src/menu.c @@ -2031,7 +2031,7 @@ static void UnusedBlitBitmapRect(const struct Bitmap *src, struct Bitmap *dst, u for (loopSrcX = srcX, loopDstX = dstX; loopSrcX < xEnd; loopSrcX++, loopDstX++) { pixelsSrc = src->pixels + ((loopSrcX >> 1) & 3) + ((loopSrcX >> 3) << 5) + (((loopSrcY >> 3) * multiplierSrcY) << 5) + ((u32)(loopSrcY << 29) >> 27); - pixelsDst = (void*) dst->pixels + ((loopDstX >> 1) & 3) + ((loopDstX >> 3) << 5) + ((( loopDstY >> 3) * multiplierDstY) << 5) + ((u32)(loopDstY << 29) >> 27); + pixelsDst = (void *) dst->pixels + ((loopDstX >> 1) & 3) + ((loopDstX >> 3) << 5) + ((( loopDstY >> 3) * multiplierDstY) << 5) + ((u32)(loopDstY << 29) >> 27); if ((uintptr_t)pixelsDst & 1) { diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 7decd695c3b2..949a3d89a81c 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -98,9 +98,9 @@ void ResetVramOamAndBgCntRegs(void) SetGpuReg(REG_OFFSET_BG2CNT, 0); SetGpuReg(REG_OFFSET_BG1CNT, 0); SetGpuReg(REG_OFFSET_BG0CNT, 0); - CpuFill16(0, (void*) VRAM, VRAM_SIZE); - CpuFill32(0, (void*) OAM, OAM_SIZE); - CpuFill16(0, (void*) PLTT, PLTT_SIZE); + CpuFill16(0, (void *) VRAM, VRAM_SIZE); + CpuFill32(0, (void *) OAM, OAM_SIZE); + CpuFill16(0, (void *) PLTT, PLTT_SIZE); } void ResetAllBgsCoordinates(void) diff --git a/src/option_menu.c b/src/option_menu.c index 2991913d7808..3ca9857e84b3 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -167,7 +167,7 @@ void CB2_InitOptionMenu(void) gMain.state++; break; case 1: - DmaClearLarge16(3, (void*)(VRAM), VRAM_SIZE, 0x1000); + DmaClearLarge16(3, (void *)(VRAM), VRAM_SIZE, 0x1000); DmaClear32(3, OAM, OAM_SIZE); DmaClear16(3, PLTT, PLTT_SIZE); SetGpuReg(REG_OFFSET_DISPCNT, 0); diff --git a/src/pokeball.c b/src/pokeball.c index 42751eb31ef7..de23ac1eff81 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -667,7 +667,7 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId) u16 species = gTasks[taskId].tCryTaskSpecies; u8 battlerId = gTasks[taskId].tCryTaskBattler; u8 monSpriteId = gTasks[taskId].tCryTaskMonSpriteId; - struct Pokemon *mon = (void*)(u32)((gTasks[taskId].tCryTaskMonPtr1 << 16) | (u16)(gTasks[taskId].tCryTaskMonPtr2)); + struct Pokemon *mon = (void *)(u32)((gTasks[taskId].tCryTaskMonPtr1 << 16) | (u16)(gTasks[taskId].tCryTaskMonPtr2)); switch (gTasks[taskId].tCryTaskState) { diff --git a/src/pokedex.c b/src/pokedex.c index 067e8fffbd3f..1d5f86ba59b4 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -2154,7 +2154,7 @@ static void LoadPokedexBgPalette(bool8 isSearchResults) static void FreeWindowAndBgBuffers(void) { - void* tilemapBuffer; + void *tilemapBuffer; FreeAllWindowBuffers(); tilemapBuffer = GetBgTilemapBuffer(0); @@ -4880,7 +4880,7 @@ static void Task_LoadSearchMenu(u8 taskId) static void FreeSearchWindowAndBgBuffers(void) { - void* tilemapBuffer; + void *tilemapBuffer; FreeAllWindowBuffers(); tilemapBuffer = GetBgTilemapBuffer(0); diff --git a/src/pokemon.c b/src/pokemon.c index c29a1b95c2f1..ec948194844b 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6675,7 +6675,7 @@ const u8 *GetTrainerPartnerName(void) } #define READ_PTR_FROM_TASK(taskId, dataId) \ - (void*)( \ + (void *)( \ ((u16)(gTasks[taskId].data[dataId]) | \ ((u16)(gTasks[taskId].data[dataId + 1]) << 16))) diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 32333ee67bc7..ada9a7948650 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3765,7 +3765,7 @@ static void InitDigitPrinters(void) .xDelta = 8, .x = 108, .y = 6, - .spriteSheet = (void*) &sSpriteSheet_Digits, + .spriteSheet = (void *) &sSpriteSheet_Digits, .spritePal = &sSpritePalette_Digits, }; diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 19f1db52d7f1..2073712d1515 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -3871,7 +3871,7 @@ static void CreateMarkingComboSprite(void) sStorage->markingComboSprite->subpriority = 1; sStorage->markingComboSprite->x = 40; sStorage->markingComboSprite->y = 150; - sStorage->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); + sStorage->markingComboTilesPtr = (void *) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO); } static void CreateWaveformSprites(void) @@ -3959,7 +3959,7 @@ static void CreateDisplayMonSprite(void) sStorage->displayMonSprite = &gSprites[spriteId]; sStorage->displayMonPalOffset = palSlot * 16 + 0x100; - sStorage->displayMonTilePtr = (void*) OBJ_VRAM0 + tileStart * TILE_SIZE_4BPP; + sStorage->displayMonTilePtr = (void *) OBJ_VRAM0 + tileStart * TILE_SIZE_4BPP; } while (0); if (sStorage->displayMonSprite == NULL) @@ -5119,7 +5119,7 @@ static u16 TryLoadMonIconTiles(u16 species) sStorage->iconSpeciesList[i] = species; sStorage->numIconsPerSpecies[i]++; offset = 16 * i; - CpuCopy32(GetMonIconTiles(species, TRUE), (void*)(OBJ_VRAM0) + offset * TILE_SIZE_4BPP, 0x200); + CpuCopy32(GetMonIconTiles(species, TRUE), (void *)(OBJ_VRAM0) + offset * TILE_SIZE_4BPP, 0x200); return offset; } @@ -8010,7 +8010,7 @@ static void AddMenu(void) sStorage->menuWindowId = AddWindow(&sStorage->menuWindow); ClearWindowTilemap(sStorage->menuWindowId); DrawStdFrameWithCustomTileAndPalette(sStorage->menuWindowId, FALSE, 11, 14); - PrintMenuTable(sStorage->menuWindowId, sStorage->menuItemsCount, (void*)sStorage->menuItems); + PrintMenuTable(sStorage->menuWindowId, sStorage->menuItemsCount, (void *)sStorage->menuItems); InitMenuInUpperLeftCornerNormal(sStorage->menuWindowId, sStorage->menuItemsCount, 0); ScheduleBgCopyTilemapToVram(0); sStorage->menuUnusedField = 0; @@ -8743,7 +8743,7 @@ static void CreateItemIconSprites(void) { spriteSheet.tag = GFXTAG_ITEM_ICON_0 + i; LoadCompressedSpriteSheet(&spriteSheet); - sStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void*)(OBJ_VRAM0); + sStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void *)(OBJ_VRAM0); sStorage->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); sStorage->itemIcons[i].palIndex *= 16; sStorage->itemIcons[i].palIndex += 0x100; diff --git a/src/pokenav_conditions_gfx.c b/src/pokenav_conditions_gfx.c index 60c505201b5f..5631f5bb2af3 100644 --- a/src/pokenav_conditions_gfx.c +++ b/src/pokenav_conditions_gfx.c @@ -826,7 +826,7 @@ static void CreateConditionMonPic(u8 id) { menu->monPicSpriteId = spriteId; gSprites[menu->monPicSpriteId].callback = MonPicGfxSpriteCallback; - menu->monGfxPtr = (void*)VRAM + BG_VRAM_SIZE + (menu->monGfxTileStart * 32); + menu->monGfxPtr = (void *)VRAM + BG_VRAM_SIZE + (menu->monGfxTileStart * 32); menu->monPalIndex = (menu->monPalIndex * 16) + 0x100; } } diff --git a/src/record_mixing.c b/src/record_mixing.c index 18b1d7df2f46..d19b6f0a2cb0 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -1174,7 +1174,7 @@ static void ReceiveApprenticeData(struct Apprentice *records, size_t recordSize, u32 apprenticeSaveId; ShufflePlayerIndices(mixIndices); - mixApprentice = (void*)records + (recordSize * mixIndices[multiplayerId]); + mixApprentice = (void *)records + (recordSize * mixIndices[multiplayerId]); numApprentices = 0; apprenticeId = 0; for (i = 0; i < 2; i++) diff --git a/src/recorded_battle.c b/src/recorded_battle.c index 951572636a16..8256ce1fc945 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -302,7 +302,7 @@ static bool32 IsRecordedBattleSaveValid(struct RecordedBattleSave *save) return FALSE; if (save->battleFlags & ILLEGAL_BATTLE_TYPES) return FALSE; - if (CalcByteArraySum((void*)(save), sizeof(*save) - 4) != save->checksum) + if (CalcByteArraySum((void *)(save), sizeof(*save) - 4) != save->checksum) return FALSE; return TRUE; @@ -313,9 +313,9 @@ static bool32 RecordedBattleToSave(struct RecordedBattleSave *battleSave, struct memset(saveSector, 0, SECTOR_SIZE); memcpy(saveSector, battleSave, sizeof(*battleSave)); - saveSector->checksum = CalcByteArraySum((void*)(saveSector), sizeof(*saveSector) - 4); + saveSector->checksum = CalcByteArraySum((void *)(saveSector), sizeof(*saveSector) - 4); - if (TryWriteSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void*)(saveSector)) != SAVE_STATUS_OK) + if (TryWriteSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void *)(saveSector)) != SAVE_STATUS_OK) return FALSE; else return TRUE; @@ -481,7 +481,7 @@ bool32 MoveRecordedBattleToSaveData(void) static bool32 TryCopyRecordedBattleSaveData(struct RecordedBattleSave *dst, struct SaveSector *saveBuffer) { - if (TryReadSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void*)(saveBuffer)) != SAVE_STATUS_OK) + if (TryReadSpecialSaveSector(SECTOR_ID_RECORDED_BATTLE, (void *)(saveBuffer)) != SAVE_STATUS_OK) return FALSE; memcpy(dst, saveBuffer, sizeof(struct RecordedBattleSave)); diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 1b49a374c862..3a087b7d78de 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -63,7 +63,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) gBattle_BG3_Y = 0; break; case 1: - CpuFastFill(0, (void*)(VRAM), VRAM_SIZE); + CpuFastFill(0, (void *)(VRAM), VRAM_SIZE); break; case 2: LoadBattleTextboxAndBackground(); diff --git a/src/save.c b/src/save.c index 60a190c68edd..1f4189fb8425 100644 --- a/src/save.c +++ b/src/save.c @@ -689,18 +689,18 @@ static u16 CalculateChecksum(void *data, u16 size) static void UpdateSaveAddresses(void) { int i = SECTOR_ID_SAVEBLOCK2; - gRamSaveSectorLocations[i].data = (void*)(gSaveBlock2Ptr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].data = (void *)(gSaveBlock2Ptr) + sSaveSlotLayout[i].offset; gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; for (i = SECTOR_ID_SAVEBLOCK1_START; i <= SECTOR_ID_SAVEBLOCK1_END; i++) { - gRamSaveSectorLocations[i].data = (void*)(gSaveBlock1Ptr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].data = (void *)(gSaveBlock1Ptr) + sSaveSlotLayout[i].offset; gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; } for (; i <= SECTOR_ID_PKMN_STORAGE_END; i++) //setting i to SECTOR_ID_PKMN_STORAGE_START does not match { - gRamSaveSectorLocations[i].data = (void*)(gPokemonStoragePtr) + sSaveSlotLayout[i].offset; + gRamSaveSectorLocations[i].data = (void *)(gPokemonStoragePtr) + sSaveSlotLayout[i].offset; gRamSaveSectorLocations[i].size = sSaveSlotLayout[i].size; } } @@ -951,7 +951,7 @@ u32 TryWriteSpecialSaveSector(u8 sector, u8 *src) s32 i; s32 size; u8 *savData; - void* savDataBuffer; + void *savDataBuffer; if (sector != SECTOR_ID_TRAINER_HILL && sector != SECTOR_ID_RECORDED_BATTLE) return SAVE_STATUS_ERROR; diff --git a/src/union_room.c b/src/union_room.c index 3cb1e6f8af4e..59d662f4f51b 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -378,7 +378,7 @@ void TryBecomeLinkLeader(void) struct WirelessLink_Leader *data; taskId = CreateTask(Task_TryBecomeLinkLeader, 0); - sWirelessLinkMain.leader = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.leader = data = (void *)(gTasks[taskId].data); sLeader = data; data->state = LL_STATE_INIT; @@ -971,7 +971,7 @@ void TryJoinLinkGroup(void) struct WirelessLink_Group *data; taskId = CreateTask(Task_TryJoinLinkGroup, 0); - sWirelessLinkMain.group = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.group = data = (void *)(gTasks[taskId].data); sGroup = data; data->state = LG_STATE_INIT; @@ -1297,7 +1297,7 @@ u8 CreateTask_ListenToWireless(void) struct WirelessLink_Group *data; taskId = CreateTask(Task_ListenToWireless, 0); - sWirelessLinkMain.group = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.group = data = (void *)(gTasks[taskId].data); data->state = 0; data->textState = 0; @@ -1869,7 +1869,7 @@ void CreateTask_SendMysteryGift(u32 activity) struct WirelessLink_Leader *data; taskId = CreateTask(Task_SendMysteryGift, 0); - sWirelessLinkMain.leader = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.leader = data = (void *)(gTasks[taskId].data); data->state = 0; data->textState = 0; @@ -2077,7 +2077,7 @@ void CreateTask_LinkMysteryGiftWithFriend(u32 activity) struct WirelessLink_Group *data; taskId = CreateTask(Task_CardOrNewsWithFriend, 0); - sWirelessLinkMain.group = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.group = data = (void *)(gTasks[taskId].data); sGroup = data; data->state = 0; @@ -2246,7 +2246,7 @@ void CreateTask_LinkMysteryGiftOverWireless(u32 activity) struct WirelessLink_Group *data; taskId = CreateTask(Task_CardOrNewsOverWireless, 0); - sWirelessLinkMain.group = data = (void*)(gTasks[taskId].data); + sWirelessLinkMain.group = data = (void *)(gTasks[taskId].data); sGroup = data; data->state = 0; @@ -3467,7 +3467,7 @@ static void Task_SearchForChildOrParent(u8 taskId) { s32 i, j; struct RfuPlayerData rfu; - struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **list = (void *) gTasks[taskId].data; bool8 isParent; for (i = 0; i < RFU_CHILD_MAX; i++) @@ -3510,7 +3510,7 @@ static u8 CreateTask_SearchForChildOrParent(struct RfuIncomingPlayerList * paren static void Task_ListenForCompatiblePartners(u8 taskId) { s32 i, j; - struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **list = (void *) gTasks[taskId].data; for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -3553,7 +3553,7 @@ static bool32 HasWonderCardOrNewsByLinkGroup(struct RfuGameData *data, s16 linkG static void Task_ListenForWonderDistributor(u8 taskId) { s32 i; - struct RfuIncomingPlayerList **list = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **list = (void *) gTasks[taskId].data; for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -3567,7 +3567,7 @@ static void Task_ListenForWonderDistributor(u8 taskId) static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList * list, u32 linkGroup) { u8 taskId = CreateTask(Task_ListenForCompatiblePartners, 0); - struct RfuIncomingPlayerList **oldList = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **oldList = (void *) gTasks[taskId].data; oldList[0] = list; gTasks[taskId].data[2] = linkGroup; return taskId; @@ -3576,7 +3576,7 @@ static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList * static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList * list, u32 linkGroup) { u8 taskId = CreateTask(Task_ListenForWonderDistributor, 0); - struct RfuIncomingPlayerList **oldList = (void*) gTasks[taskId].data; + struct RfuIncomingPlayerList **oldList = (void *) gTasks[taskId].data; oldList[0] = list; gTasks[taskId].data[2] = linkGroup; return taskId; diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c index 8f041a6ff212..2f16f220aa94 100644 --- a/src/use_pokeblock.c +++ b/src/use_pokeblock.c @@ -497,7 +497,7 @@ static void LoadUsePokeblockMenu(void) break; case 2: SetVBlankCallback(NULL); - CpuFill32(0, (void*)(VRAM), VRAM_SIZE); + CpuFill32(0, (void *)(VRAM), VRAM_SIZE); sInfo->mainState++; break; case 3: @@ -1232,7 +1232,7 @@ static void UpdateMonPic(u8 loadId) sMenu->curMonSpriteId = spriteId; gSprites[sMenu->curMonSpriteId].callback = SpriteCB_MonPic; gSprites[sMenu->curMonSpriteId].y2 -= 34; - sMenu->curMonTileStart = (void*)(OBJ_VRAM0 + (sMenu->curMonSheet * 32)); + sMenu->curMonTileStart = (void *)(OBJ_VRAM0 + (sMenu->curMonSheet * 32)); sMenu->curMonPalette = (sMenu->curMonPalette * 16) + 0x100; } } From 01558ff8f36862a567ea98f028cd89765a41621c Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 11:15:33 -0400 Subject: [PATCH 644/762] Struct pointers star standarizing --- gflib/sprite.c | 4 +- gflib/sprite.h | 2 +- include/battle_anim.h | 14 +- include/decompress.h | 2 +- include/evolution_scene.h | 6 +- include/faraway_island.h | 2 +- include/field_effect.h | 4 +- include/field_effect_helpers.h | 36 ++-- include/menu.h | 2 +- include/pokedex_cry_screen.h | 4 +- include/pokemon.h | 8 +- include/trade.h | 2 +- src/battle_anim_effects_1.c | 270 ++++++++++++------------ src/battle_anim_effects_2.c | 46 ++-- src/battle_anim_mon_movement.c | 2 +- src/battle_anim_mons.c | 2 +- src/battle_anim_utility_funcs.c | 2 +- src/battle_anim_water.c | 8 +- src/battle_controller_opponent.c | 2 +- src/battle_controller_player.c | 10 +- src/battle_controller_player_partner.c | 2 +- src/battle_controllers.c | 6 +- src/battle_gfx_sfx_util.c | 2 +- src/battle_main.c | 4 +- src/battle_message.c | 4 +- src/battle_script_commands.c | 10 +- src/berry.c | 2 +- src/berry_blender.c | 20 +- src/cable_club.c | 4 +- src/decompress.c | 2 +- src/digit_obj_util.c | 2 +- src/dodrio_berry_picking.c | 2 +- src/egg_hatch.c | 32 +-- src/event_object_movement.c | 50 ++--- src/evolution_graphics.c | 12 +- src/evolution_scene.c | 20 +- src/faraway_island.c | 8 +- src/field_control_avatar.c | 4 +- src/field_effect.c | 18 +- src/hall_of_fame.c | 24 +-- src/intro_credits_graphics.c | 4 +- src/item_menu.c | 2 +- src/main_menu.c | 6 +- src/mirage_tower.c | 4 +- src/party_menu.c | 36 ++-- src/pokeblock_feed.c | 6 +- src/pokedex.c | 6 +- src/pokemon.c | 12 +- src/pokemon_summary_screen.c | 12 +- src/pokenav_conditions_search_results.c | 4 +- src/pokenav_main_menu.c | 2 +- src/pokenav_match_call_list.c | 2 +- src/pokenav_menu_handler.c | 6 +- src/pokenav_ribbons_list.c | 6 +- src/shop.c | 2 +- src/slot_machine.c | 2 +- src/start_menu.c | 2 +- src/trainer_card.c | 30 +-- src/union_room.c | 4 +- 59 files changed, 402 insertions(+), 402 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index e5bf89063431..28b33dfff6f7 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -94,7 +94,7 @@ static void ApplyAffineAnimFrame(u8 matrixNum, struct AffineAnimFrameCmd *frameC static u8 IndexOfSpriteTileTag(u16 tag); static void AllocSpriteTileRange(u16 tag, u16 start, u16 count); static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset); -static void UpdateSpriteMatrixAnchorPos(struct Sprite*, s32, s32); +static void UpdateSpriteMatrixAnchorPos(struct Sprite *, s32, s32); typedef void (*AnimFunc)(struct Sprite *); typedef void (*AnimCmdFunc)(struct Sprite *); @@ -1201,7 +1201,7 @@ u8 GetSpriteMatrixNum(struct Sprite *sprite) // Used to shift a sprite's position as it scales. // Only used by the minigame countdown, so that for instance the numbers don't slide up as they squish down before jumping. -void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y) +void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y) { sprite->sAnchorX = x; sprite->sAnchorY = y; diff --git a/gflib/sprite.h b/gflib/sprite.h index f7ef16532814..86527bc4c035 100644 --- a/gflib/sprite.h +++ b/gflib/sprite.h @@ -282,7 +282,7 @@ void FreeSpritePalette(struct Sprite *sprite); void FreeSpriteOamMatrix(struct Sprite *sprite); void DestroySpriteAndFreeResources(struct Sprite *sprite); void AnimateSprite(struct Sprite *sprite); -void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y); +void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y); void StartSpriteAnim(struct Sprite *sprite, u8 animNum); void StartSpriteAnimIfDifferent(struct Sprite *sprite, u8 animNum); void SeekSpriteAnim(struct Sprite *sprite, u8 animCmdIndex); diff --git a/include/battle_anim.h b/include/battle_anim.h index ebbffd3bacca..5ac512346aad 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -108,8 +108,8 @@ u8 GetBattlerSpriteBGPriority(u8 battlerId); void *LoadPointerFromVars(s16 bottom, s16 top); void StorePointerInVars(s16 *bottom, s16 *top, const void *ptr); void InitPrioritiesForVisibleBattlers(void); -void GetBattleAnimBg1Data(struct BattleAnimBgData*); -void GetBattleAnimBgData(struct BattleAnimBgData*, u32 bgId); +void GetBattleAnimBg1Data(struct BattleAnimBgData *); +void GetBattleAnimBgData(struct BattleAnimBgData *, u32 bgId); u8 GetBattlerSpriteSubpriority(u8 battlerId); bool8 TranslateAnimHorizontalArc(struct Sprite *sprite); void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite); @@ -122,9 +122,9 @@ u32 GetBattlePalettesMask(bool8 battleBackground, bool8 attacker, bool8 target, u32 GetBattleMonSpritePalettesMask(u8 playerLeft, u8 playerRight, u8 opponentLeft, u8 opponentRight); u8 AnimDummyReturnArg(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); -void DestroySpriteWithActiveSheet(struct Sprite*); +void DestroySpriteWithActiveSheet(struct Sprite *); u8 CreateInvisibleSpriteCopy(int, u8, int); -void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData*, const void *, bool32); +void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData *, const void *, bool32); void AnimLoadCompressedBgGfx(u32, const u32 *, u32); void UpdateAnimBg3ScreenSize(bool8); void TranslateSpriteInGrowingCircle(struct Sprite *); @@ -186,7 +186,7 @@ u8 GetAnimBattlerSpriteId(u8 wantedBattler); bool8 IsDoubleBattle(void); u8 GetBattleBgPaletteNum(void); u8 GetBattlerSpriteBGPriorityRank(u8 battlerId); -void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*spriteCallback)(struct Sprite*)); +void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*spriteCallback)(struct Sprite *)); void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite); u8 GetBattlerSpriteDefault_Y(u8 battlerId); u8 GetSubstituteSpriteDefault_Y(u8 battlerId); @@ -216,8 +216,8 @@ 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); // battle_anim_effects_1.c -void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite); -void AnimMoveTwisterParticle(struct Sprite* sprite); +void SetSpriteNextToMonHead(u8 battler, struct Sprite *sprite); +void AnimMoveTwisterParticle(struct Sprite *sprite); void AnimParticleBurst(struct Sprite *); // battle_anim_water.c diff --git a/include/decompress.h b/include/decompress.h index cded1fdde6b6..5e33665b727d 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -10,7 +10,7 @@ void LZDecompressVram(const u32 *src, void *dest); u16 LoadCompressedSpriteSheet(const struct CompressedSpriteSheet *src); void LoadCompressedSpriteSheetOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer); -bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src); +bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet *src); void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src); void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *src, void *buffer); diff --git a/include/evolution_scene.h b/include/evolution_scene.h index 5f8c534b9371..25d34eddfb5f 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 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); extern void (*gCB2_AfterEvolution)(void); diff --git a/include/faraway_island.h b/include/faraway_island.h index a5243c6a70bd..9fd2a69fc41b 100755 --- a/include/faraway_island.h +++ b/include/faraway_island.h @@ -2,7 +2,7 @@ #define GUARD_FARAWAY_ISLAND_H u32 GetMewMoveDirection(void); -bool8 ShouldMewShakeGrass(struct ObjectEvent*); +bool8 ShouldMewShakeGrass(struct ObjectEvent *); void UpdateFarawayIslandStepCounter(void); bool8 ObjectEventIsFarawayIslandMew(struct ObjectEvent *); bool8 IsMewPlayingHideAndSeek(void); diff --git a/include/field_effect.h b/include/field_effect.h index 731fb9c59f3b..b35a8c869423 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -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 *); +void SpriteCB_AshLaunch(struct 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 528492d81407..2ae5d79f7566 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -20,25 +20,25 @@ 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*); +void SetUpReflection(struct ObjectEvent *, struct Sprite *, u8); +u32 StartFieldEffectForObjectEvent(u8, struct 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 *); +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 SetSpriteInvisible(u8 spriteId); void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y); diff --git a/include/menu.h b/include/menu.h index 5c6bbd3d6688..43b564da28fb 100644 --- a/include/menu.h +++ b/include/menu.h @@ -61,7 +61,7 @@ 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 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); diff --git a/include/pokedex_cry_screen.h b/include/pokedex_cry_screen.h index 4d2043292d8b..3401db22da4c 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); +bool8 LoadCryWaveformWindow(struct CryScreenWindow *, u8); void UpdateCryWaveformWindow(u8); void CryScreenPlayButton(u16); -bool8 LoadCryMeter(struct CryScreenWindow*, u8); +bool8 LoadCryMeter(struct CryScreenWindow *, u8); void FreeCryScreen(void); #endif diff --git a/include/pokemon.h b/include/pokemon.h index d173387fb9e3..e7b1d738b527 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -426,11 +426,11 @@ void SetWildMonHeldItem(void); bool8 IsMonShiny(struct Pokemon *mon); bool8 IsShinyOtIdPersonality(u32 otId, u32 personality); const u8 *GetTrainerPartnerName(void); -void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 panMode); -void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 panModeAnimFlag); -void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneFrame); +void BattleAnimateFrontSprite(struct Sprite *sprite, u16 species, bool8 noCry, u8 panMode); +void DoMonFrontSpriteAnimation(struct Sprite *sprite, u16 species, bool8 noCry, u8 panModeAnimFlag); +void PokemonSummaryDoMonAnimation(struct Sprite *sprite, u16 species, bool8 oneFrame); void StopPokemonAnimationDelayTask(void); -void BattleAnimateBackSprite(struct Sprite* sprite, u16 species); +void BattleAnimateBackSprite(struct Sprite *sprite, u16 species); u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId); u16 FacilityClassToPicIndex(u16 facilityClass); u16 PlayerGenderToFrontTrainerPicId(u8 playerGender); diff --git a/include/trade.h b/include/trade.h index 27b5ee8bdf1c..65b6f335cf59 100644 --- a/include/trade.h +++ b/include/trade.h @@ -14,7 +14,7 @@ void CB2_StartCreateTradeMenu(void); void CB2_LinkTrade(void); int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, bool8 isEventLegal); int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, bool8 isEventLegal); -int CanSpinTradeMon(struct Pokemon*, u16); +int CanSpinTradeMon(struct Pokemon *, u16); void InitTradeSequenceBgGpuRegs(void); void LinkTradeDrawWindow(void); void InitTradeBg(void); diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 49b4bcde5368..0387d3929133 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2197,7 +2197,7 @@ const struct SpriteTemplate gTauntFingerSpriteTemplate = // arg 3: vertical movement speed (sub-pixel value) // arg 4: wave amplitude // arg 5: wave speed -static void AnimMovePowderParticle(struct Sprite* sprite) +static void AnimMovePowderParticle(struct Sprite *sprite) { sprite->x += gBattleAnimArgs[0]; sprite->y += gBattleAnimArgs[1]; @@ -2217,7 +2217,7 @@ static void AnimMovePowderParticle(struct Sprite* sprite) sprite->callback = AnimMovePowderParticle_Step; } -static void AnimMovePowderParticle_Step(struct Sprite* sprite) +static void AnimMovePowderParticle_Step(struct Sprite *sprite) { if (sprite->data[0] > 0) { @@ -2237,7 +2237,7 @@ static void AnimMovePowderParticle_Step(struct Sprite* sprite) // arg 0: initial x pixel offset // arg 1: initial y pixel offset // arg 2: duration -static void AnimPowerAbsorptionOrb(struct Sprite* sprite) +static void AnimPowerAbsorptionOrb(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; @@ -2252,7 +2252,7 @@ static void AnimPowerAbsorptionOrb(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: duration // arg 3: sprite anim number -static void AnimSolarBeamBigOrb(struct Sprite* sprite) +static void AnimSolarBeamBigOrb(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); StartSpriteAnim(sprite, gBattleAnimArgs[3]); @@ -2269,7 +2269,7 @@ static void AnimSolarBeamBigOrb(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: duration // arg 3: initial wave offset -static void AnimSolarBeamSmallOrb(struct Sprite* sprite) +static void AnimSolarBeamSmallOrb(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[2]; @@ -2283,7 +2283,7 @@ static void AnimSolarBeamSmallOrb(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimSolarBeamSmallOrb_Step(struct Sprite* sprite) +static void AnimSolarBeamSmallOrb_Step(struct Sprite *sprite) { if (AnimTranslateLinear(sprite)) { @@ -2327,7 +2327,7 @@ void AnimTask_CreateSmallSolarBeamOrbs(u8 taskId) // arg 1: initial y pixel offset // arg 2: wave amplitude // arg 3: wave period (lower means faster wave) -static void AnimAbsorptionOrb(struct Sprite* sprite) +static void AnimAbsorptionOrb(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[3]; @@ -2338,7 +2338,7 @@ static void AnimAbsorptionOrb(struct Sprite* sprite) sprite->callback = AnimAbsorptionOrb_Step; } -static void AnimAbsorptionOrb_Step(struct Sprite* sprite) +static void AnimAbsorptionOrb_Step(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) DestroyAnimSprite(sprite); @@ -2346,7 +2346,7 @@ static void AnimAbsorptionOrb_Step(struct Sprite* sprite) // Moves an orb in a wave-like fashion towards the target mon. The wave's // properties and the sprite anim are randomly determined. -static void AnimHyperBeamOrb(struct Sprite* sprite) +static void AnimHyperBeamOrb(struct Sprite *sprite) { u16 speed; u16 animNum = Random2(); @@ -2372,7 +2372,7 @@ static void AnimHyperBeamOrb(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimHyperBeamOrb_Step(struct Sprite* sprite) +static void AnimHyperBeamOrb_Step(struct Sprite *sprite) { if (AnimFastTranslateLinear(sprite)) { @@ -2399,7 +2399,7 @@ static void AnimHyperBeamOrb_Step(struct Sprite* sprite) // arg 3: target y pixel offset // arg 4: duration // arg 5: wave amplitude -static void AnimLeechSeed(struct Sprite* sprite) +static void AnimLeechSeed(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -2413,7 +2413,7 @@ static void AnimLeechSeed(struct Sprite* sprite) sprite->callback = AnimLeechSeed_Step; } -static void AnimLeechSeed_Step(struct Sprite* sprite) +static void AnimLeechSeed_Step(struct Sprite *sprite) { if (TranslateAnimHorizontalArc(sprite)) { @@ -2424,7 +2424,7 @@ static void AnimLeechSeed_Step(struct Sprite* sprite) } } -static void AnimLeechSeedSprouts(struct Sprite* sprite) +static void AnimLeechSeedSprouts(struct Sprite *sprite) { sprite->invisible = FALSE; StartSpriteAnim(sprite, 1); @@ -2441,7 +2441,7 @@ static void AnimLeechSeedSprouts(struct Sprite* sprite) // arg 2: initial wave offset // arg 3: duration // arg 4: blend (0 = off, 1 = on) -static void AnimSporeParticle(struct Sprite* sprite) +static void AnimSporeParticle(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, TRUE); StartSpriteAnim(sprite, gBattleAnimArgs[4]); @@ -2454,7 +2454,7 @@ static void AnimSporeParticle(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimSporeParticle_Step(struct Sprite* sprite) +static void AnimSporeParticle_Step(struct Sprite *sprite) { sprite->x2 = Sin(sprite->data[1], 32); sprite->y2 = Cos(sprite->data[1], -3) + ((sprite->data[2] += 24) >> 8); @@ -2503,7 +2503,7 @@ void AnimTask_SporeDoubleBattle(u8 taskId) // arg 1: initial y pixel offset // arg 2: target y pixel offset // arg 3: duration -static void AnimPetalDanceBigFlower(struct Sprite* sprite) +static void AnimPetalDanceBigFlower(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, FALSE); sprite->data[0] = gBattleAnimArgs[3]; @@ -2517,7 +2517,7 @@ static void AnimPetalDanceBigFlower(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimPetalDanceBigFlower_Step(struct Sprite* sprite) +static void AnimPetalDanceBigFlower_Step(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { @@ -2541,7 +2541,7 @@ static void AnimPetalDanceBigFlower_Step(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: target y pixel offset // arg 3: duration -static void AnimPetalDanceSmallFlower(struct Sprite* sprite) +static void AnimPetalDanceSmallFlower(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); sprite->data[0] = gBattleAnimArgs[3]; @@ -2555,7 +2555,7 @@ static void AnimPetalDanceSmallFlower(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimPetalDanceSmallFlower_Step(struct Sprite* sprite) +static void AnimPetalDanceSmallFlower_Step(struct Sprite *sprite) { if (!AnimTranslateLinear(sprite)) { @@ -2576,7 +2576,7 @@ static void AnimPetalDanceSmallFlower_Step(struct Sprite* sprite) // arg 0: upward x delta per frame // arg 1: upward y delta per frame // arg 2: upward duration -static void AnimRazorLeafParticle(struct Sprite* sprite) +static void AnimRazorLeafParticle(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); @@ -2586,7 +2586,7 @@ static void AnimRazorLeafParticle(struct Sprite* sprite) sprite->callback = AnimRazorLeafParticle_Step1; } -static void AnimRazorLeafParticle_Step1(struct Sprite* sprite) +static void AnimRazorLeafParticle_Step1(struct Sprite *sprite) { if (!sprite->data[2]) { @@ -2612,7 +2612,7 @@ static void AnimRazorLeafParticle_Step1(struct Sprite* sprite) } } -static void AnimRazorLeafParticle_Step2(struct Sprite* sprite) +static void AnimRazorLeafParticle_Step2(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker)) sprite->x2 = -Sin(sprite->data[0], 25); @@ -2639,7 +2639,7 @@ static void AnimRazorLeafParticle_Step2(struct Sprite* sprite) // arg 4: translation duration // arg 5: wave amplitude // arg 6: target between double battle opponents (boolean) -static void AnimTranslateLinearSingleSineWave(struct Sprite* sprite) +static void AnimTranslateLinearSingleSineWave(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, TRUE); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -2668,7 +2668,7 @@ static void AnimTranslateLinearSingleSineWave(struct Sprite* sprite) sprite->callback = AnimTranslateLinearSingleSineWave_Step; } -static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) +static void AnimTranslateLinearSingleSineWave_Step(struct Sprite *sprite) { bool8 destroy = FALSE; s16 a = sprite->data[0]; @@ -2706,7 +2706,7 @@ static void AnimTranslateLinearSingleSineWave_Step(struct Sprite* sprite) // arg 2: wave period (higher means faster wave) // arg 3: wave amplitude // arg 4: speedup frame (particles move faster at the end of the animation) -void AnimMoveTwisterParticle(struct Sprite* sprite) +void AnimMoveTwisterParticle(struct Sprite *sprite) { if (IsDoubleBattle() == TRUE) SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y); @@ -2720,7 +2720,7 @@ void AnimMoveTwisterParticle(struct Sprite* sprite) sprite->callback = AnimMoveTwisterParticle_Step; } -static void AnimMoveTwisterParticle_Step(struct Sprite* sprite) +static void AnimMoveTwisterParticle_Step(struct Sprite *sprite) { if (sprite->data[1] == 0xFF) { @@ -2753,7 +2753,7 @@ static void AnimMoveTwisterParticle_Step(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: affine anim num // arg 3: num squeezes -static void AnimConstrictBinding(struct Sprite* sprite) +static void AnimConstrictBinding(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, FALSE); sprite->affineAnimPaused = 1; @@ -2763,7 +2763,7 @@ static void AnimConstrictBinding(struct Sprite* sprite) sprite->callback = AnimConstrictBinding_Step1; } -static void AnimConstrictBinding_Step1(struct Sprite* sprite) +static void AnimConstrictBinding_Step1(struct Sprite *sprite) { u8 spriteId; @@ -2776,7 +2776,7 @@ static void AnimConstrictBinding_Step1(struct Sprite* sprite) } } -static void AnimConstrictBinding_Step2(struct Sprite* sprite) +static void AnimConstrictBinding_Step2(struct Sprite *sprite) { u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); if (!sprite->data[2]) @@ -2870,7 +2870,7 @@ static void AnimTask_DuplicateAndShrinkToPos_Step2(u8 taskId) // Moves an orb from the target mon to the attacking mon. // arg 0: initial x pixel offset // arg 1: initial y pixel offset -static void AnimMimicOrb(struct Sprite* sprite) +static void AnimMimicOrb(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -2904,7 +2904,7 @@ static void AnimMimicOrb(struct Sprite* sprite) // arg 2: sprite subpriority offset // arg 3: sprite anim num // arg 4: duration -static void AnimIngrainRoot(struct Sprite* sprite) +static void AnimIngrainRoot(struct Sprite *sprite) { if (!sprite->data[0]) { @@ -2952,7 +2952,7 @@ static void AnimFrenzyPlantRoot(struct Sprite *sprite) sFrenzyPlantRootData.targetY = targetY; } -static void AnimRootFlickerOut(struct Sprite* sprite) +static void AnimRootFlickerOut(struct Sprite *sprite) { if (++sprite->data[0] > (sprite->data[2] - 10)) sprite->invisible = sprite->data[0] % 2; @@ -2967,7 +2967,7 @@ static void AnimRootFlickerOut(struct Sprite* sprite) // arg 2: horizontal velocity // arg 3: wave amplitude // arg 4: duration -static void AnimIngrainOrb(struct Sprite* sprite) +static void AnimIngrainOrb(struct Sprite *sprite) { if (!sprite->data[0]) { @@ -2985,7 +2985,7 @@ static void AnimIngrainOrb(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void InitItemBagData(struct Sprite* sprite, s16 c) +static void InitItemBagData(struct Sprite *sprite, s16 c) { int a = (sprite->x << 8) | sprite->y; int b = (sprite->data[6] << 8) | sprite->data[7]; @@ -2995,7 +2995,7 @@ static void InitItemBagData(struct Sprite* sprite, s16 c) sprite->data[7] = c; } -bool8 moveAlongLinearPath(struct Sprite* sprite) +bool8 moveAlongLinearPath(struct Sprite *sprite) { u16 xStartPos = (u8)(sprite->data[5] >> 8); u16 yStartPos = (u8)sprite->data[5]; @@ -3026,7 +3026,7 @@ bool8 moveAlongLinearPath(struct Sprite* sprite) return FALSE; } -static void AnimItemSteal_Step2(struct Sprite* sprite) +static void AnimItemSteal_Step2(struct Sprite *sprite) { if (sprite->data[0] == 10) StartSpriteAffineAnim(sprite, 1); @@ -3036,7 +3036,7 @@ static void AnimItemSteal_Step2(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimItemSteal_Step1(struct Sprite* sprite) +static void AnimItemSteal_Step1(struct Sprite *sprite) { sprite->data[0] += sprite->data[3] * 128 / sprite->data[4]; if (sprite->data[0] >= 128) @@ -3054,7 +3054,7 @@ static void AnimItemSteal_Step1(struct Sprite* sprite) } } -static void AnimPresent(struct Sprite* sprite) +static void AnimPresent(struct Sprite *sprite) { s16 targetX; s16 targetY; @@ -3080,7 +3080,7 @@ static void AnimPresent(struct Sprite* sprite) sprite->callback = AnimItemSteal_Step1; } -static void AnimKnockOffOpponentsItem(struct Sprite* sprite) +static void AnimKnockOffOpponentsItem(struct Sprite *sprite) { int zero; sprite->data[0] += ((sprite->data[3] * 128) / sprite->data[4]); @@ -3100,7 +3100,7 @@ static void AnimKnockOffOpponentsItem(struct Sprite* sprite) } } -static void AnimKnockOffItem(struct Sprite* sprite) +static void AnimKnockOffItem(struct Sprite *sprite) { s16 targetY = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) @@ -3131,7 +3131,7 @@ static void AnimKnockOffItem(struct Sprite* sprite) // arg 1: initial y pixel offset // arg 2: vertical velocity // arg 3: unused -static void AnimPresentHealParticle(struct Sprite* sprite) +static void AnimPresentHealParticle(struct Sprite *sprite) { if (!sprite->data[0]) { @@ -3145,7 +3145,7 @@ static void AnimPresentHealParticle(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimItemSteal(struct Sprite* sprite) +static void AnimItemSteal(struct Sprite *sprite) { s16 attackerX; s16 attackerY; @@ -3171,7 +3171,7 @@ static void AnimItemSteal(struct Sprite* sprite) sprite->callback = AnimItemSteal_Step3; } -static void AnimItemSteal_Step3(struct Sprite* sprite) +static void AnimItemSteal_Step3(struct Sprite *sprite) { int zero; sprite->data[0] += ((sprite->data[3] * 128) / sprite->data[4]); @@ -3198,7 +3198,7 @@ static void AnimItemSteal_Step3(struct Sprite* sprite) // Moves a bag in a circular motion. // arg 0: y position // arg 1: initial wave offset -static void AnimTrickBag(struct Sprite* sprite) +static void AnimTrickBag(struct Sprite *sprite) { int a; int b; @@ -3235,7 +3235,7 @@ static void AnimTrickBag(struct Sprite* sprite) } } -static void AnimTrickBag_Step1(struct Sprite* sprite) +static void AnimTrickBag_Step1(struct Sprite *sprite) { switch (sprite->data[3]) { @@ -3265,7 +3265,7 @@ static void AnimTrickBag_Step1(struct Sprite* sprite) } } -static void AnimTrickBag_Step2(struct Sprite* sprite) +static void AnimTrickBag_Step2(struct Sprite *sprite) { if (sprite->data[2] == gTrickBagCoordinates[sprite->data[0]][1]) { @@ -3295,7 +3295,7 @@ static void AnimTrickBag_Step2(struct Sprite* sprite) } } -static void AnimTrickBag_Step3(struct Sprite* sprite) +static void AnimTrickBag_Step3(struct Sprite *sprite) { if (sprite->data[0] > 20) DestroyAnimSprite(sprite); @@ -3332,8 +3332,8 @@ void AnimTask_LeafBlade(u8 taskId) static void AnimTask_LeafBlade_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; - struct Sprite* sprite = &gSprites[task->data[2]]; + struct Task *task = &gTasks[taskId]; + struct Sprite *sprite = &gSprites[task->data[2]]; int a = task->data[0]; switch (a) { @@ -3515,7 +3515,7 @@ static void AnimTask_LeafBlade_Step(u8 taskId) } } -static s16 LeafBladeGetPosFactor(struct Sprite* sprite) +static s16 LeafBladeGetPosFactor(struct Sprite *sprite) { s16 var = 8; if (sprite->data[4] < sprite->y) @@ -3524,7 +3524,7 @@ static s16 LeafBladeGetPosFactor(struct Sprite* sprite) return var; } -static void AnimTask_LeafBlade_Step2(struct Task* task, u8 taskId) +static void AnimTask_LeafBlade_Step2(struct Task *task, u8 taskId) { task->data[14]++; if (task->data[14] > 0) @@ -3550,7 +3550,7 @@ static void AnimTask_LeafBlade_Step2(struct Task* task, u8 taskId) } } -static void AnimTask_LeafBlade_Step2_Callback(struct Sprite* sprite) +static void AnimTask_LeafBlade_Step2_Callback(struct Sprite *sprite) { sprite->data[0]++; if (sprite->data[0] > 1) @@ -3566,7 +3566,7 @@ static void AnimTask_LeafBlade_Step2_Callback(struct Sprite* sprite) } } -static void AnimFlyingParticle(struct Sprite* sprite) +static void AnimFlyingParticle(struct Sprite *sprite) { u8 battler; if (!gBattleAnimArgs[6]) @@ -3614,7 +3614,7 @@ static void AnimFlyingParticle(struct Sprite* sprite) sprite->callback = AnimFlyingParticle_Step; } -static void AnimFlyingParticle_Step(struct Sprite* sprite) +static void AnimFlyingParticle_Step(struct Sprite *sprite) { int a = sprite->data[7]; sprite->data[7]++; @@ -3637,7 +3637,7 @@ static void AnimFlyingParticle_Step(struct Sprite* sprite) void AnimTask_CycleMagicalLeafPal(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[0]) { case 0: @@ -3665,7 +3665,7 @@ void AnimTask_CycleMagicalLeafPal(u8 taskId) DestroyAnimVisualTask(taskId); } -static void AnimNeedleArmSpike(struct Sprite* sprite) +static void AnimNeedleArmSpike(struct Sprite *sprite) { u8 a; u8 b; @@ -3721,7 +3721,7 @@ static void AnimNeedleArmSpike(struct Sprite* sprite) } } -static void AnimNeedleArmSpike_Step(struct Sprite* sprite) +static void AnimNeedleArmSpike_Step(struct Sprite *sprite) { if (sprite->data[0]) { @@ -3737,13 +3737,13 @@ static void AnimNeedleArmSpike_Step(struct Sprite* sprite) } } -static void AnimWhipHit_WaitEnd(struct Sprite* sprite) +static void AnimWhipHit_WaitEnd(struct Sprite *sprite) { if (sprite->animEnded) DestroyAnimSprite(sprite); } -static void AnimSlidingHit(struct Sprite* sprite) +static void AnimSlidingHit(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { @@ -3760,7 +3760,7 @@ static void AnimSlidingHit(struct Sprite* sprite) StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } -static void AnimWhipHit(struct Sprite* sprite) +static void AnimWhipHit(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) StartSpriteAnim(sprite, 1); @@ -3770,7 +3770,7 @@ static void AnimWhipHit(struct Sprite* sprite) sprite->y += gBattleAnimArgs[1]; } -static void AnimFlickeringPunch(struct Sprite* sprite) +static void AnimFlickeringPunch(struct Sprite *sprite) { sprite->x += gBattleAnimArgs[0]; sprite->y += gBattleAnimArgs[1]; @@ -3788,7 +3788,7 @@ static void AnimFlickeringPunch(struct Sprite* sprite) // arg 0: initial x pixel offset // arg 1: initial y pixel offset // arg 2: slice direction; 0 = right-to-left, 1 = left-to-right -static void AnimCuttingSlice(struct Sprite* sprite) +static void AnimCuttingSlice(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); @@ -3814,7 +3814,7 @@ static void AnimCuttingSlice(struct Sprite* sprite) sprite->data[1] = -sprite->data[1]; } -static void AnimAirCutterSlice(struct Sprite* sprite) +static void AnimAirCutterSlice(struct Sprite *sprite) { u8 x, y; switch (gBattleAnimArgs[3]) @@ -3863,7 +3863,7 @@ static void AnimAirCutterSlice(struct Sprite* sprite) sprite->data[1] = -sprite->data[1]; } -static void AnimSlice_Step(struct Sprite* sprite) +static void AnimSlice_Step(struct Sprite *sprite) { sprite->data[3] += sprite->data[1]; sprite->data[4] += sprite->data[2]; @@ -3884,7 +3884,7 @@ static void AnimSlice_Step(struct Sprite* sprite) } } -static void UnusedFlickerAnim(struct Sprite* sprite) +static void UnusedFlickerAnim(struct Sprite *sprite) { if (sprite->data[2] > 1) { @@ -3917,7 +3917,7 @@ static void UnusedFlickerAnim(struct Sprite* sprite) } } -static void AnimCirclingMusicNote(struct Sprite* sprite) +static void AnimCirclingMusicNote(struct Sprite *sprite) { sprite->data[0] = gBattleAnimArgs[2]; if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) @@ -3933,7 +3933,7 @@ static void AnimCirclingMusicNote(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimCirclingMusicNote_Step(struct Sprite* sprite) +static void AnimCirclingMusicNote_Step(struct Sprite *sprite) { sprite->x2 = Cos(sprite->data[0], 100); sprite->y2 = Sin(sprite->data[0], 20); @@ -3950,7 +3950,7 @@ static void AnimCirclingMusicNote_Step(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimProtect(struct Sprite* sprite) +static void AnimProtect(struct Sprite *sprite) { if (IsContest()) gBattleAnimArgs[1] += 8; @@ -4013,7 +4013,7 @@ static void AnimProtect_Step(struct Sprite *sprite) } } -static void AnimMilkBottle(struct Sprite* sprite) +static void AnimMilkBottle(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 0xFFE8; @@ -4029,7 +4029,7 @@ static void AnimMilkBottle(struct Sprite* sprite) sprite->callback = AnimMilkBottle_Step1; } -static void AnimMilkBottle_Step1(struct Sprite* sprite) +static void AnimMilkBottle_Step1(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -4102,7 +4102,7 @@ static void AnimMilkBottle_Step1(struct Sprite* sprite) } } -static void AnimMilkBottle_Step2(struct Sprite* sprite, int unk1, int unk2) +static void AnimMilkBottle_Step2(struct Sprite *sprite, int unk1, int unk2) { if (sprite->data[3] <= 11) sprite->data[4] += 2; @@ -4123,7 +4123,7 @@ static void AnimMilkBottle_Step2(struct Sprite* sprite, int unk1, int unk2) sprite->data[3] = 0; } -static void AnimGrantingStars(struct Sprite* sprite) +static void AnimGrantingStars(struct Sprite *sprite) { if (!gBattleAnimArgs[2]) SetSpriteCoordsToAnimAttackerCoords(sprite); @@ -4137,7 +4137,7 @@ static void AnimGrantingStars(struct Sprite* sprite) sprite->callback = TranslateSpriteLinearFixedPoint; } -static void AnimSparkingStars(struct Sprite* sprite) +static void AnimSparkingStars(struct Sprite *sprite) { u8 battler; if (!gBattleAnimArgs[2]) @@ -4174,7 +4174,7 @@ static void AnimSparkingStars(struct Sprite* sprite) sprite->callback = TranslateSpriteLinearFixedPoint; } -static void AnimBubbleBurst(struct Sprite* sprite) +static void AnimBubbleBurst(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) @@ -4192,7 +4192,7 @@ static void AnimBubbleBurst(struct Sprite* sprite) sprite->callback = AnimBubbleBurst_Step; } -static void AnimBubbleBurst_Step(struct Sprite* sprite) +static void AnimBubbleBurst_Step(struct Sprite *sprite) { if (++sprite->data[0] > 30) { @@ -4205,7 +4205,7 @@ static void AnimBubbleBurst_Step(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimSleepLetterZ(struct Sprite* sprite) +static void AnimSleepLetterZ(struct Sprite *sprite) { SetSpriteCoordsToAnimAttackerCoords(sprite); if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) @@ -4225,7 +4225,7 @@ static void AnimSleepLetterZ(struct Sprite* sprite) sprite->callback = AnimSleepLetterZ_Step; } -static void AnimSleepLetterZ_Step(struct Sprite* sprite) +static void AnimSleepLetterZ_Step(struct Sprite *sprite) { sprite->y2 = -(sprite->data[0] / 0x28); sprite->x2 = sprite->data[4] / 10; @@ -4235,7 +4235,7 @@ static void AnimSleepLetterZ_Step(struct Sprite* sprite) DestroySpriteAndMatrix(sprite); } -static void AnimLockOnTarget(struct Sprite* sprite) +static void AnimLockOnTarget(struct Sprite *sprite) { sprite->x -= 32; sprite->y -= 32; @@ -4244,7 +4244,7 @@ static void AnimLockOnTarget(struct Sprite* sprite) StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step1); } -static void AnimLockOnTarget_Step1(struct Sprite* sprite) +static void AnimLockOnTarget_Step1(struct Sprite *sprite) { switch (sprite->data[5] & 1) { @@ -4271,7 +4271,7 @@ static void AnimLockOnTarget_Step1(struct Sprite* sprite) sprite->data[5] ^= 1; } -static void AnimLockOnTarget_Step2(struct Sprite* sprite) +static void AnimLockOnTarget_Step2(struct Sprite *sprite) { if ((sprite->data[5] >> 8) == 4) { @@ -4285,7 +4285,7 @@ static void AnimLockOnTarget_Step2(struct Sprite* sprite) } } -static void AnimLockOnTarget_Step3(struct Sprite* sprite) +static void AnimLockOnTarget_Step3(struct Sprite *sprite) { s16 a; s16 b; @@ -4331,7 +4331,7 @@ static void AnimLockOnTarget_Step3(struct Sprite* sprite) } } -static void AnimLockOnTarget_Step4(struct Sprite* sprite) +static void AnimLockOnTarget_Step4(struct Sprite *sprite) { if (sprite->data[2] == 0) { @@ -4358,7 +4358,7 @@ static void AnimLockOnTarget_Step4(struct Sprite* sprite) } } -static void AnimLockOnTarget_Step5(struct Sprite* sprite) +static void AnimLockOnTarget_Step5(struct Sprite *sprite) { if ((u16)gBattleAnimArgs[7] == 0xFFFF) { @@ -4368,7 +4368,7 @@ static void AnimLockOnTarget_Step5(struct Sprite* sprite) } } -static void AnimLockOnTarget_Step6(struct Sprite* sprite) +static void AnimLockOnTarget_Step6(struct Sprite *sprite) { if (sprite->data[0] % 3 == 0) { @@ -4381,7 +4381,7 @@ static void AnimLockOnTarget_Step6(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimLockOnMoveTarget(struct Sprite* sprite) +static void AnimLockOnMoveTarget(struct Sprite *sprite) { sprite->oam.affineParam = gBattleAnimArgs[0]; if ((s16)sprite->oam.affineParam == 1) @@ -4413,7 +4413,7 @@ static void AnimLockOnMoveTarget(struct Sprite* sprite) sprite->callback(sprite); } -static void AnimBowMon(struct Sprite* sprite) +static void AnimBowMon(struct Sprite *sprite) { sprite->invisible = TRUE; sprite->data[0] = 0; @@ -4434,7 +4434,7 @@ static void AnimBowMon(struct Sprite* sprite) } } -static void AnimBowMon_Step1(struct Sprite* sprite) +static void AnimBowMon_Step1(struct Sprite *sprite) { sprite->data[0] = 6; sprite->data[1] = (GetBattlerSide(gBattleAnimAttacker)) ? 2 : -2; @@ -4444,7 +4444,7 @@ static void AnimBowMon_Step1(struct Sprite* sprite) sprite->callback = TranslateSpriteLinearById; } -static void AnimBowMon_Step1_Callback(struct Sprite* sprite) +static void AnimBowMon_Step1_Callback(struct Sprite *sprite) { if (sprite->data[0] == 0) { @@ -4464,7 +4464,7 @@ static void AnimBowMon_Step1_Callback(struct Sprite* sprite) } } -static void AnimBowMon_Step2(struct Sprite* sprite) +static void AnimBowMon_Step2(struct Sprite *sprite) { sprite->data[0] = 4; sprite->data[1] = (GetBattlerSide(gBattleAnimAttacker)) ? -3 : 3; @@ -4474,7 +4474,7 @@ static void AnimBowMon_Step2(struct Sprite* sprite) sprite->callback = TranslateSpriteLinearById; } -static void AnimBowMon_Step3(struct Sprite* sprite) +static void AnimBowMon_Step3(struct Sprite *sprite) { if (++sprite->data[0] > 8) { @@ -4483,7 +4483,7 @@ static void AnimBowMon_Step3(struct Sprite* sprite) } } -static void AnimBowMon_Step3_Callback(struct Sprite* sprite) +static void AnimBowMon_Step3_Callback(struct Sprite *sprite) { if (sprite->data[0] == 0) { @@ -4511,7 +4511,7 @@ static void AnimBowMon_Step3_Callback(struct Sprite* sprite) } } -static void AnimBowMon_Step4(struct Sprite* sprite) +static void AnimBowMon_Step4(struct Sprite *sprite) { DestroyAnimSprite(sprite); } @@ -4690,7 +4690,7 @@ static void AnimTask_SkullBashPositionSet(u8 taskId) static void AnimTask_SkullBashPositionReset(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (task->data[3]) { task->data[4] -= task->data[5]; @@ -4705,7 +4705,7 @@ static void AnimTask_SkullBashPositionReset(u8 taskId) } } -static void AnimSlashSlice(struct Sprite* sprite) +static void AnimSlashSlice(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { @@ -4724,7 +4724,7 @@ static void AnimSlashSlice(struct Sprite* sprite) sprite->callback = RunStoredCallbackWhenAnimEnds; } -static void AnimFalseSwipeSlice(struct Sprite* sprite) +static void AnimFalseSwipeSlice(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); @@ -4732,7 +4732,7 @@ static void AnimFalseSwipeSlice(struct Sprite* sprite) sprite->callback = RunStoredCallbackWhenAnimEnds; } -static void AnimFalseSwipePositionedSlice(struct Sprite* sprite) +static void AnimFalseSwipePositionedSlice(struct Sprite *sprite) { sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0 + gBattleAnimArgs[0]; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); @@ -4742,7 +4742,7 @@ static void AnimFalseSwipePositionedSlice(struct Sprite* sprite) sprite->callback = AnimFalseSwipeSlice_Step3; } -static void AnimFalseSwipeSlice_Step1(struct Sprite* sprite) +static void AnimFalseSwipeSlice_Step1(struct Sprite *sprite) { if (++sprite->data[0] > 8) { @@ -4754,14 +4754,14 @@ static void AnimFalseSwipeSlice_Step1(struct Sprite* sprite) } } -static void AnimFalseSwipeSlice_Step2(struct Sprite* sprite) +static void AnimFalseSwipeSlice_Step2(struct Sprite *sprite) { sprite->data[0] = 0; sprite->data[1] = 0; sprite->callback = AnimFalseSwipeSlice_Step3; } -static void AnimFalseSwipeSlice_Step3(struct Sprite* sprite) +static void AnimFalseSwipeSlice_Step3(struct Sprite *sprite) { if (++sprite->data[0] > 1) { @@ -4772,7 +4772,7 @@ static void AnimFalseSwipeSlice_Step3(struct Sprite* sprite) } } -static void AnimEndureEnergy(struct Sprite* sprite) +static void AnimEndureEnergy(struct Sprite *sprite) { if (gBattleAnimArgs[0] == 0) { @@ -4790,7 +4790,7 @@ static void AnimEndureEnergy(struct Sprite* sprite) sprite->callback = AnimEndureEnergy_Step; } -static void AnimEndureEnergy_Step(struct Sprite* sprite) +static void AnimEndureEnergy_Step(struct Sprite *sprite) { if (++sprite->data[0] > sprite->data[1]) { @@ -4803,7 +4803,7 @@ static void AnimEndureEnergy_Step(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimSharpenSphere(struct Sprite* sprite) +static void AnimSharpenSphere(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) - 12; @@ -4816,7 +4816,7 @@ static void AnimSharpenSphere(struct Sprite* sprite) sprite->callback = AnimSharpenSphere_Step; } -static void AnimSharpenSphere_Step(struct Sprite* sprite) +static void AnimSharpenSphere_Step(struct Sprite *sprite) { if (++sprite->data[0] >= sprite->data[1]) { @@ -4840,7 +4840,7 @@ static void AnimSharpenSphere_Step(struct Sprite* sprite) DestroyAnimSprite(sprite); } -static void AnimConversion(struct Sprite* sprite) +static void AnimConversion(struct Sprite *sprite) { if (sprite->data[0] == 0) { @@ -4880,7 +4880,7 @@ void AnimTask_ConversionAlphaBlend(u8 taskId) } } -static void AnimConversion2(struct Sprite* sprite) +static void AnimConversion2(struct Sprite *sprite) { InitSpritePosToAnimTarget(sprite, FALSE); sprite->animPaused = 1; @@ -4888,7 +4888,7 @@ static void AnimConversion2(struct Sprite* sprite) sprite->callback = AnimConversion2_Step; } -static void AnimConversion2_Step(struct Sprite* sprite) +static void AnimConversion2_Step(struct Sprite *sprite) { if (sprite->data[0]) { @@ -4943,7 +4943,7 @@ static void AnimTask_ShowBattlersHealthbox(u8 taskId) DestroyAnimVisualTask(taskId); } -static void AnimMoon(struct Sprite* sprite) +static void AnimMoon(struct Sprite *sprite) { if (IsContest()) { @@ -4962,13 +4962,13 @@ static void AnimMoon(struct Sprite* sprite) sprite->callback = AnimMoon_Step; } -static void AnimMoon_Step(struct Sprite* sprite) +static void AnimMoon_Step(struct Sprite *sprite) { if (sprite->data[0]) DestroyAnimSprite(sprite); } -static void AnimMoonlightSparkle(struct Sprite* sprite) +static void AnimMoonlightSparkle(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; sprite->y = gBattleAnimArgs[1]; @@ -4980,7 +4980,7 @@ static void AnimMoonlightSparkle(struct Sprite* sprite) sprite->callback = AnimMoonlightSparkle_Step; } -static void AnimMoonlightSparkle_Step(struct Sprite* sprite) +static void AnimMoonlightSparkle_Step(struct Sprite *sprite) { if (++sprite->data[1] > 1) { @@ -5025,7 +5025,7 @@ void AnimTask_MoonlightEndFade(u8 taskId) static void AnimTask_MoonlightEndFade_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[0]) { case 0: @@ -5101,7 +5101,7 @@ static void AnimTask_MoonlightEndFade_Step(u8 taskId) } } -static void AnimHornHit(struct Sprite* sprite) +static void AnimHornHit(struct Sprite *sprite) { if (gBattleAnimArgs[2] < 2) gBattleAnimArgs[2] = 2; @@ -5148,7 +5148,7 @@ static void AnimHornHit(struct Sprite* sprite) sprite->callback = AnimHornHit_Step; } -static void AnimHornHit_Step(struct Sprite* sprite) +static void AnimHornHit_Step(struct Sprite *sprite) { sprite->data[2] += sprite->data[3]; sprite->data[4] += sprite->data[5]; @@ -5170,7 +5170,7 @@ void AnimTask_DoubleTeam(u8 taskId) int obj; u16 r3; u16 r4; - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[1] = AllocSpritePalette(ANIM_TAG_BENT_SPOON); r3 = (task->data[1] * 16) + 0x100; @@ -5201,7 +5201,7 @@ void AnimTask_DoubleTeam(u8 taskId) static void AnimTask_DoubleTeam_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (!task->data[3]) { if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1) @@ -5214,7 +5214,7 @@ static void AnimTask_DoubleTeam_Step(u8 taskId) } } -static void AnimDoubleTeam(struct Sprite* sprite) +static void AnimDoubleTeam(struct Sprite *sprite) { if (++sprite->data[3] > 1) { @@ -5236,7 +5236,7 @@ static void AnimDoubleTeam(struct Sprite* sprite) } } -static void AnimSuperFang(struct Sprite* sprite) +static void AnimSuperFang(struct Sprite *sprite) { StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); sprite->callback = RunStoredCallbackWhenAnimEnds; @@ -5288,7 +5288,7 @@ void AnimTask_MusicNotesClearRainbowBlend(u8 taskId) #define sVelocX data[6] #define sVelocY data[7] -static void AnimWavyMusicNotes(struct Sprite* sprite) +static void AnimWavyMusicNotes(struct Sprite *sprite) { u8 index; u8 x, y; @@ -5333,7 +5333,7 @@ static void AnimWavyMusicNotes_CalcVelocity(s16 x, s16 y, s16 *velocX, s16 *velo *velocY = (y * 256) / time; } -static void AnimWavyMusicNotes_Step(struct Sprite* sprite) +static void AnimWavyMusicNotes_Step(struct Sprite *sprite) { s16 y, trigIdx; u8 index; @@ -5366,7 +5366,7 @@ static void AnimWavyMusicNotes_Step(struct Sprite* sprite) } } -static void AnimFlyingMusicNotes(struct Sprite* sprite) +static void AnimFlyingMusicNotes(struct Sprite *sprite) { if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; @@ -5383,7 +5383,7 @@ static void AnimFlyingMusicNotes(struct Sprite* sprite) sprite->callback = AnimFlyingMusicNotes_Step; } -static void AnimFlyingMusicNotes_Step(struct Sprite* sprite) +static void AnimFlyingMusicNotes_Step(struct Sprite *sprite) { sprite->data[4] += sprite->data[6]; sprite->data[5] += sprite->data[7]; @@ -5402,7 +5402,7 @@ static void AnimFlyingMusicNotes_Step(struct Sprite* sprite) DestroySpriteAndMatrix(sprite); } -static void AnimBellyDrumHand(struct Sprite* sprite) +static void AnimBellyDrumHand(struct Sprite *sprite) { s16 a; if (gBattleAnimArgs[0] == 1) @@ -5422,7 +5422,7 @@ static void AnimBellyDrumHand(struct Sprite* sprite) StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } -void AnimSlowFlyingMusicNotes(struct Sprite* sprite) +void AnimSlowFlyingMusicNotes(struct Sprite *sprite) { s16 xDiff; u8 index; @@ -5444,7 +5444,7 @@ void AnimSlowFlyingMusicNotes(struct Sprite* sprite) sprite->callback = AnimSlowFlyingMusicNotes_Step; } -static void AnimSlowFlyingMusicNotes_Step(struct Sprite* sprite) +static void AnimSlowFlyingMusicNotes_Step(struct Sprite *sprite) { if (AnimTranslateLinear(sprite) == 0) { @@ -5463,7 +5463,7 @@ static void AnimSlowFlyingMusicNotes_Step(struct Sprite* sprite) } } -void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) +void SetSpriteNextToMonHead(u8 battler, struct Sprite *sprite) { if (GetBattlerSide(battler) == B_SIDE_PLAYER) sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) + 8; @@ -5473,7 +5473,7 @@ void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; } -static void AnimThoughtBubble(struct Sprite* sprite) +static void AnimThoughtBubble(struct Sprite *sprite) { u8 animNum; u8 battler; @@ -5491,7 +5491,7 @@ static void AnimThoughtBubble(struct Sprite* sprite) sprite->callback = RunStoredCallbackWhenAnimEnds; } -static void AnimThoughtBubble_Step(struct Sprite* sprite) +static void AnimThoughtBubble_Step(struct Sprite *sprite) { if (--sprite->data[0] == 0) { @@ -5501,7 +5501,7 @@ static void AnimThoughtBubble_Step(struct Sprite* sprite) } } -static void AnimMetronomeFinger(struct Sprite* sprite) +static void AnimMetronomeFinger(struct Sprite *sprite) { u8 battler; if (gBattleAnimArgs[0] == 0) @@ -5515,7 +5515,7 @@ static void AnimMetronomeFinger(struct Sprite* sprite) sprite->callback = RunStoredCallbackWhenAffineAnimEnds; } -static void AnimMetronomeFinger_Step(struct Sprite* sprite) +static void AnimMetronomeFinger_Step(struct Sprite *sprite) { if (++sprite->data[0] > 16) { @@ -5525,7 +5525,7 @@ static void AnimMetronomeFinger_Step(struct Sprite* sprite) } } -static void AnimFollowMeFinger(struct Sprite* sprite) +static void AnimFollowMeFinger(struct Sprite *sprite) { u8 battler; if (gBattleAnimArgs[0] == 0) @@ -5547,13 +5547,13 @@ static void AnimFollowMeFinger(struct Sprite* sprite) sprite->callback = RunStoredCallbackWhenAffineAnimEnds; } -static void AnimFollowMeFinger_Step1(struct Sprite* sprite) +static void AnimFollowMeFinger_Step1(struct Sprite *sprite) { if (++sprite->data[4] > 12) sprite->callback = AnimFollowMeFinger_Step2; } -static void AnimFollowMeFinger_Step2(struct Sprite* sprite) +static void AnimFollowMeFinger_Step2(struct Sprite *sprite) { s16 x1, x2; @@ -5583,7 +5583,7 @@ static void AnimFollowMeFinger_Step2(struct Sprite* sprite) sprite->x2 = (x1 >> 3) + (x2 >> 1); } -static void AnimTauntFinger(struct Sprite* sprite) +static void AnimTauntFinger(struct Sprite *sprite) { u8 battler; if (gBattleAnimArgs[0] == 0) @@ -5606,7 +5606,7 @@ static void AnimTauntFinger(struct Sprite* sprite) sprite->callback = AnimTauntFinger_Step1; } -static void AnimTauntFinger_Step1(struct Sprite* sprite) +static void AnimTauntFinger_Step1(struct Sprite *sprite) { if (++sprite->data[1] > 10) { @@ -5617,7 +5617,7 @@ static void AnimTauntFinger_Step1(struct Sprite* sprite) } } -static void AnimTauntFinger_Step2(struct Sprite* sprite) +static void AnimTauntFinger_Step2(struct Sprite *sprite) { if (++sprite->data[1] > 5) DestroyAnimSprite(sprite); diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 0a301f8747a0..33065c0dd834 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1534,7 +1534,7 @@ static void AnimAirWaveProjectile_Step2(struct Sprite *sprite) static void AnimAirWaveProjectile_Step1(struct Sprite *sprite) { - struct Task* task = &gTasks[sprite->data[7]]; + struct Task *task = &gTasks[sprite->data[7]]; if (sprite->data[0] > task->data[5]) { sprite->data[5] += sprite->data[3]; @@ -1571,7 +1571,7 @@ static void AnimAirWaveProjectile(struct Sprite *sprite) s16 b; s16 c; - struct Task* task = &gTasks[sprite->data[7]]; + struct Task *task = &gTasks[sprite->data[7]]; sprite->data[1] += (-2 & task->data[7]); sprite->data[2] += (-2 & task->data[8]); if (1 & task->data[7]) @@ -2035,7 +2035,7 @@ static void AnimTask_GrowAndGrayscale_Step(u8 taskId) // No args. void AnimTask_Minimize(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[0] = spriteId; PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); @@ -2051,7 +2051,7 @@ void AnimTask_Minimize(u8 taskId) static void AnimTask_Minimize_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[1]) { case 0: @@ -2115,7 +2115,7 @@ static void AnimTask_Minimize_Step(u8 taskId) } } -static void CreateMinimizeSprite(struct Task* task, u8 taskId) +static void CreateMinimizeSprite(struct Task *task, u8 taskId) { u16 matrixNum; s16 spriteId = CloneBattlerSpriteWithBlend(ANIM_ATTACKER); @@ -2160,7 +2160,7 @@ static void ClonedMinizeSprite_Step(struct Sprite *sprite) // arg 1: num hops void AnimTask_Splash(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (gBattleAnimArgs[1] == 0) { DestroyAnimVisualTask(taskId); @@ -2180,7 +2180,7 @@ void AnimTask_Splash(u8 taskId) static void AnimTask_Splash_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[1]) { case 0: @@ -2234,7 +2234,7 @@ static void AnimTask_Splash_Step(u8 taskId) // No args. void AnimTask_GrowAndShrink(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); PrepareAffineAnimInTaskData(task, spriteId, gGrowAndShrinkAffineAnimCmds); task->func = AnimTask_GrowAndShrink_Step; @@ -2242,7 +2242,7 @@ void AnimTask_GrowAndShrink(u8 taskId) static void AnimTask_GrowAndShrink_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (!RunAffineAnimFromTaskData(task)) DestroyAnimVisualTask(taskId); } @@ -2301,7 +2301,7 @@ static void AnimAngerMark(struct Sprite *sprite) // left/right movements void AnimTask_ThrashMoveMonHorizontal(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[0] = spriteId; task->data[1] = 0; @@ -2311,7 +2311,7 @@ void AnimTask_ThrashMoveMonHorizontal(u8 taskId) static void AnimTask_ThrashMoveMonHorizontal_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (!RunAffineAnimFromTaskData(task)) DestroyAnimVisualTask(taskId); } @@ -2319,7 +2319,7 @@ static void AnimTask_ThrashMoveMonHorizontal_Step(u8 taskId) // up/down movements void AnimTask_ThrashMoveMonVertical(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[1] = 0; task->data[2] = 4; @@ -2338,7 +2338,7 @@ void AnimTask_ThrashMoveMonVertical(u8 taskId) static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (++task->data[7] > 2) { task->data[7] = 0; @@ -2389,7 +2389,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId) void AnimTask_SketchDrawMon(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; struct ScanlineEffectParams params; s16 i; @@ -2430,7 +2430,7 @@ void AnimTask_SketchDrawMon(u8 taskId) static void AnimTask_SketchDrawMon_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[4]) { @@ -2791,7 +2791,7 @@ static void AnimSoftBoiledEgg_Step4_Callback(struct Sprite *sprite) // Used by Extremespeed void AnimTask_AttackerStretchAndDisappear(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[0] = spriteId; PrepareAffineAnimInTaskData(task, spriteId, gStretchAttackerAffineAnimCmds); @@ -2800,7 +2800,7 @@ void AnimTask_AttackerStretchAndDisappear(u8 taskId) static void AnimTask_AttackerStretchAndDisappear_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (!RunAffineAnimFromTaskData(task)) { gSprites[task->data[0]].y2 = 0; @@ -2811,7 +2811,7 @@ static void AnimTask_AttackerStretchAndDisappear_Step(u8 taskId) void AnimTask_ExtremeSpeedImpact(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; task->data[0] = 0; task->data[1] = 0; task->data[2] = 0; @@ -2834,7 +2834,7 @@ void AnimTask_ExtremeSpeedImpact(u8 taskId) static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[0]) { @@ -2880,7 +2880,7 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId) void AnimTask_ExtremeSpeedMonReappear(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; task->data[0] = 0; task->data[1] = 0; task->data[2] = 0; @@ -2894,7 +2894,7 @@ void AnimTask_ExtremeSpeedMonReappear(u8 taskId) static void AnimTask_ExtremeSpeedMonReappear_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; if (task->data[0] == 0 && ++task->data[1] > task->data[4]) { task->data[1] = 0; @@ -2922,7 +2922,7 @@ static void AnimTask_ExtremeSpeedMonReappear_Step(u8 taskId) void AnimTask_SpeedDust(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; task->data[0] = 0; task->data[1] = 4; task->data[2] = 0; @@ -2940,7 +2940,7 @@ void AnimTask_SpeedDust(u8 taskId) static void AnimTask_SpeedDust_Step(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->data[8]) { case 0: diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index ba2cbe29ac0f..77e50c9a455f 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -14,7 +14,7 @@ static void AnimTask_TranslateMonElliptical_Step(u8 taskId); static void DoHorizontalLunge(struct Sprite *sprite); static void ReverseHorizontalLungeDirection(struct Sprite *sprite); static void DoVerticalDip(struct Sprite *sprite); -static void ReverseVerticalDipDirection(struct Sprite* sprite); +static void ReverseVerticalDipDirection(struct Sprite *sprite); static void SlideMonToOriginalPos(struct Sprite *sprite); static void SlideMonToOriginalPos_Step(struct Sprite *sprite); static void SlideMonToOffset(struct Sprite *sprite); diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index a889fc8b59a8..05b0daf3f419 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -414,7 +414,7 @@ u8 GetAnimBattlerSpriteId(u8 animBattler) } } -void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*callback)(struct Sprite*)) +void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*callback)(struct Sprite *)) { sprite->data[6] = (u32)(callback) & 0xffff; sprite->data[7] = (u32)(callback) >> 16; diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 217f96c4a55a..688a6e5aea84 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -27,7 +27,7 @@ static void StartBlendAnimSpriteColor(u8, u32); static void AnimTask_BlendSpriteColor_Step2(u8); static void AnimTask_HardwarePaletteFade_Step(u8); static void AnimTask_TraceMonBlended_Step(u8); -static void AnimMonTrace(struct Sprite*); +static void AnimMonTrace(struct Sprite *); static void AnimTask_DrawFallingWhiteLinesOnAttacker_Step(u8); static void StatsChangeAnimation_Step1(u8); static void StatsChangeAnimation_Step2(u8); diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index c0898ce81174..b7c2df3d1141 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -48,11 +48,11 @@ static void AnimTask_SurfWaveScanlineEffect(u8); static void AnimTask_WaterSpoutLaunch_Step(u8); static void AnimTask_WaterSpoutRain_Step(u8); static u8 GetWaterSpoutPowerForAnim(void); -static void CreateWaterSpoutLaunchDroplets(struct Task*, u8); -static void CreateWaterSpoutRainDroplet(struct Task*, u8); +static void CreateWaterSpoutLaunchDroplets(struct Task *, u8); +static void CreateWaterSpoutRainDroplet(struct Task *, u8); static void AnimTask_WaterSport_Step(u8); -static void CreateWaterSportDroplet(struct Task*); -static void CreateWaterPulseRingBubbles(struct Sprite*, int, int); +static void CreateWaterSportDroplet(struct Task *); +static void CreateWaterPulseRingBubbles(struct Sprite *, int, int); static const u8 sUnusedWater_Gfx[] = INCBIN_U8("graphics/battle_anims/unused/water_gfx.4bpp"); static const u8 sUnusedWater[] = INCBIN_U8("graphics/battle_anims/unused/water.bin"); diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 071a7d2a28f2..cf155dc76444 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1552,7 +1552,7 @@ static void OpponentHandleChooseMove(void) else { u8 chosenMoveId; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); if (gBattleTypeFlags & (BATTLE_TYPE_TRAINER | BATTLE_TYPE_FIRST_BATTLE | BATTLE_TYPE_SAFARI | BATTLE_TYPE_ROAMER)) { diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 58515d376d38..27adb9ee4b2c 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -471,7 +471,7 @@ static void HandleInputChooseTarget(void) static void HandleInputChooseMove(void) { bool32 canSelectTarget = FALSE; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); if (JOY_HELD(DPAD_ANY) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_L_EQUALS_A) gPlayerDpadHoldFrames++; @@ -676,7 +676,7 @@ static void HandleMoveSwitching(void) if (gMoveSelectionCursor[gActiveBattler] != gMultiUsePlayerCursor) { - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); s32 i; // swap moves and pp @@ -1456,7 +1456,7 @@ static void PlayerHandleYesNoInput(void) static void MoveSelectionDisplayMoveNames(void) { s32 i; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); gNumberOfMovesToChoose = 0; for (i = 0; i < MAX_MON_MOVES; i++) @@ -1485,7 +1485,7 @@ static void MoveSelectionDisplayPpNumber(void) return; SetPpNumbersPaletteInMoveSelection(); - moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); txtPtr = ConvertIntToDecimalStringN(gDisplayedStringBattle, moveInfo->currentPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2); *(txtPtr)++ = CHAR_SLASH; ConvertIntToDecimalStringN(txtPtr, moveInfo->maxPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2); @@ -1496,7 +1496,7 @@ static void MoveSelectionDisplayPpNumber(void) static void MoveSelectionDisplayMoveType(void) { u8 *txtPtr; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); txtPtr = StringCopy(gDisplayedStringBattle, gText_MoveInterfaceType); *(txtPtr)++ = EXT_CTRL_CODE_BEGIN; diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index e82c802232bd..3812a8ffee88 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -1513,7 +1513,7 @@ static void PlayerPartnerHandleYesNoBox(void) static void PlayerPartnerHandleChooseMove(void) { u8 chosenMoveId; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); BattleAI_SetupAIData(0xF); chosenMoveId = BattleAI_ChooseMoveOrAction(); diff --git a/src/battle_controllers.c b/src/battle_controllers.c index bbb6757cad4b..42bdba8998b2 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -1076,14 +1076,14 @@ void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 m void BtlController_EmitPrintString(u8 bufferId, u16 stringID) { s32 i; - struct BattleMsgData* stringInfo; + struct BattleMsgData *stringInfo; sBattleBuffersTransferData[0] = CONTROLLER_PRINTSTRING; sBattleBuffersTransferData[1] = gBattleOutcome; sBattleBuffersTransferData[2] = stringID; sBattleBuffersTransferData[3] = (stringID & 0xFF00) >> 8; - stringInfo = (struct BattleMsgData*)(&sBattleBuffersTransferData[4]); + stringInfo = (struct BattleMsgData *)(&sBattleBuffersTransferData[4]); stringInfo->currentMove = gCurrentMove; stringInfo->originallyUsedMove = gChosenMove; stringInfo->lastItem = gLastUsedItem; @@ -1115,7 +1115,7 @@ void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringID) sBattleBuffersTransferData[2] = stringID; sBattleBuffersTransferData[3] = (stringID & 0xFF00) >> 8; - stringInfo = (struct BattleMsgData*)(&sBattleBuffersTransferData[4]); + stringInfo = (struct BattleMsgData *)(&sBattleBuffersTransferData[4]); stringInfo->currentMove = gCurrentMove; stringInfo->originallyUsedMove = gChosenMove; stringInfo->lastItem = gLastUsedItem; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index d3ea6a9b2c27..ca6be9d4e2e8 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -110,7 +110,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) { s32 i, var1, var2; s32 chosenMoveId = -1; - struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); u8 unusableMovesBits = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); s32 percent = Random() % 100; diff --git a/src/battle_main.c b/src/battle_main.c index af9eda4fcb0e..481b12eb4b74 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -118,7 +118,7 @@ static void HandleEndTurn_BattleLost(void); static void HandleEndTurn_RanFromBattle(void); static void HandleEndTurn_MonFled(void); static void HandleEndTurn_FinishBattle(void); -static void SpriteCB_UnusedBattleInit(struct Sprite* sprite); +static void SpriteCB_UnusedBattleInit(struct Sprite *sprite); static void SpriteCB_UnusedBattleInit_Main(struct Sprite *sprite); EWRAM_DATA u16 gBattle_BG0_X = 0; @@ -1891,7 +1891,7 @@ void CB2_QuitRecordedBattle(void) #define sState data[0] #define sDelay data[4] -static void SpriteCB_UnusedBattleInit(struct Sprite* sprite) +static void SpriteCB_UnusedBattleInit(struct Sprite *sprite) { sprite->sState = 0; sprite->callback = SpriteCB_UnusedBattleInit_Main; diff --git a/src/battle_message.c b/src/battle_message.c index 121abde40425..20f07d6c3068 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2059,7 +2059,7 @@ void BufferStringBattle(u16 stringID) s32 i; const u8 *stringPtr = NULL; - gBattleMsgDataPtr = (struct BattleMsgData*)(&gBattleBufferA[gActiveBattler][4]); + gBattleMsgDataPtr = (struct BattleMsgData *)(&gBattleBufferA[gActiveBattler][4]); gLastUsedItem = gBattleMsgDataPtr->lastItem; gLastUsedAbility = gBattleMsgDataPtr->lastAbility; gBattleScripting.battler = gBattleMsgDataPtr->scrActive; @@ -3119,7 +3119,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) void SetPpNumbersPaletteInMoveSelection(void) { - struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]); + struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]); const u16 *palPtr = gPPTextPalette; u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]], chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 13fa9c231362..d456a57dad8b 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -74,7 +74,7 @@ static void DrawLevelUpWindow1(void); static void DrawLevelUpWindow2(void); static void PutMonIconOnLvlUpBanner(void); static void DrawLevelUpBannerText(void); -static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite* sprite); +static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite *sprite); static void Cmd_attackcanceler(void); static void Cmd_accuracycheck(void); @@ -5629,7 +5629,7 @@ static void Cmd_updatebattlermoves(void) if (gBattleControllerExecFlags == 0) { s32 i; - struct BattlePokemon *bufferPoke = (struct BattlePokemon*) &gBattleBufferB[gActiveBattler][4]; + struct BattlePokemon *bufferPoke = (struct BattlePokemon *) &gBattleBufferB[gActiveBattler][4]; for (i = 0; i < MAX_MON_MOVES; i++) { gBattleMons[gActiveBattler].moves[i] = bufferPoke->moves[i]; @@ -6141,7 +6141,7 @@ static void PutMonIconOnLvlUpBanner(void) gSprites[spriteId].sXOffset = gBattle_BG2_X; } -static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite* sprite) +static void SpriteCB_MonIconOnLvlUpBanner(struct Sprite *sprite) { sprite->x2 = sprite->sXOffset - gBattle_BG2_X; @@ -7160,7 +7160,7 @@ static void Cmd_forcerandomswitch(void) s32 firstMonId; s32 lastMonId = 0; // + 1 s32 monsCount; - struct Pokemon* party = NULL; + struct Pokemon *party = NULL; s32 validMons = 0; s32 minNeeded; @@ -9368,7 +9368,7 @@ static void Cmd_weightdamagecalculation(void) static void Cmd_assistattackselect(void) { s32 chooseableMovesNo = 0; - struct Pokemon* party; + struct Pokemon *party; s32 monId, moveId; u16 *validMoves = gBattleStruct->assistPossibleMoves; diff --git a/src/berry.c b/src/berry.c index eaf23d09ab9b..389a09a10644 100644 --- a/src/berry.c +++ b/src/berry.c @@ -980,7 +980,7 @@ bool32 IsEnigmaBerryValid(void) const struct Berry *GetBerryInfo(u8 berry) { if (berry == ITEM_TO_BERRY(ITEM_ENIGMA_BERRY) && IsEnigmaBerryValid()) - return (struct Berry*)(&gSaveBlock1Ptr->enigmaBerry.berry); + return (struct Berry *)(&gSaveBlock1Ptr->enigmaBerry.berry); else { if (berry == BERRY_NONE || berry > ITEM_TO_BERRY(LAST_BERRY_INDEX)) diff --git a/src/berry_blender.c b/src/berry_blender.c index 83493c8d2b40..efede23bde35 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1145,7 +1145,7 @@ static void CB2_LoadBerryBlender(void) #define sYDownSpeed data[7] // For throwing berries into the machine -static void SpriteCB_Berry(struct Sprite* sprite) +static void SpriteCB_Berry(struct Sprite *sprite) { sprite->sX += sprite->sXSpeed; sprite->sY -= sprite->sYUpSpeed; @@ -1166,7 +1166,7 @@ static void SpriteCB_Berry(struct Sprite* sprite) sprite->y = sprite->sY; } -static void SetBerrySpriteData(struct Sprite* sprite, s16 x, s16 y, s16 bounceSpeed, s16 xSpeed, s16 ySpeed) +static void SetBerrySpriteData(struct Sprite *sprite, s16 x, s16 y, s16 bounceSpeed, s16 xSpeed, s16 ySpeed) { sprite->sTargetY = y; sprite->sX = x; @@ -2628,7 +2628,7 @@ static void CB2_EndBlenderGame(void) if (gReceivedRemoteLinkPlayers && gWirelessCommType) { - struct BlenderGameBlock *receivedBlock = (struct BlenderGameBlock*)(&gBlockRecvBuffer); + struct BlenderGameBlock *receivedBlock = (struct BlenderGameBlock *)(&gBlockRecvBuffer); sBerryBlender->maxRPM = receivedBlock->timeRPM.maxRPM; sBerryBlender->gameFrameTime = receivedBlock->timeRPM.time; @@ -2641,7 +2641,7 @@ static void CB2_EndBlenderGame(void) } else { - struct TimeAndRPM *receivedBlock = (struct TimeAndRPM*)(&gBlockRecvBuffer); + struct TimeAndRPM *receivedBlock = (struct TimeAndRPM *)(&gBlockRecvBuffer); sBerryBlender->maxRPM = receivedBlock->maxRPM; sBerryBlender->gameFrameTime = receivedBlock->time; @@ -3159,7 +3159,7 @@ static void SetBgPos(void) SetGpuReg(REG_OFFSET_BG0VOFS, sBerryBlender->bg_Y); } -static void SpriteCB_Particle(struct Sprite* sprite) +static void SpriteCB_Particle(struct Sprite *sprite) { sprite->data[2] += sprite->data[0]; sprite->data[3] += sprite->data[1]; @@ -3194,7 +3194,7 @@ static void CreateParticleSprites(void) } } -static void SpriteCB_ScoreSymbol(struct Sprite* sprite) +static void SpriteCB_ScoreSymbol(struct Sprite *sprite) { sprite->data[0]++; sprite->y2 = -(sprite->data[0] / 3); @@ -3203,7 +3203,7 @@ static void SpriteCB_ScoreSymbol(struct Sprite* sprite) DestroySprite(sprite); } -static void SpriteCB_ScoreSymbolBest(struct Sprite* sprite) +static void SpriteCB_ScoreSymbolBest(struct Sprite *sprite) { sprite->data[0]++; sprite->y2 = -(sprite->data[0] * 2); @@ -3225,7 +3225,7 @@ static void SetPlayerBerryData(u8 playerId, u16 itemId) #define sDelay data[2] #define sAnimId data[3] -static void SpriteCB_CountdownNumber(struct Sprite* sprite) +static void SpriteCB_CountdownNumber(struct Sprite *sprite) { switch (sprite->sState) { @@ -3272,7 +3272,7 @@ static void SpriteCB_CountdownNumber(struct Sprite* sprite) #undef sDelay #undef sAnimId -static void SpriteCB_Start(struct Sprite* sprite) +static void SpriteCB_Start(struct Sprite *sprite) { switch (sprite->data[0]) { @@ -3443,7 +3443,7 @@ static bool8 UpdateBlenderLandScreenShake(void) return FALSE; } -static void SpriteCB_PlayerArrow(struct Sprite* sprite) +static void SpriteCB_PlayerArrow(struct Sprite *sprite) { sprite->x2 = -(sBerryBlender->bg_X); sprite->y2 = -(sBerryBlender->bg_Y); diff --git a/src/cable_club.c b/src/cable_club.c index e43163bbeee8..da32cee9cab6 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -833,7 +833,7 @@ static void SetLinkBattleTypeFlags(int linkService) static void Task_StartWiredCableClubBattle(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->tState) { @@ -1042,7 +1042,7 @@ void ExitLinkRoom(void) // Note: gSpecialVar_0x8005 contains the id of the seat the player entered static void Task_EnterCableClubSeat(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch (task->tState) { diff --git a/src/decompress.c b/src/decompress.c index 69c0be74caf6..6e94a54759a9 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -263,7 +263,7 @@ u32 GetDecompressedDataSize(const u32 *ptr) return (ptr8[3] << 16) | (ptr8[2] << 8) | (ptr8[1]); } -bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src) +bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet *src) { struct SpriteSheet dest; void *buffer; diff --git a/src/digit_obj_util.c b/src/digit_obj_util.c index f887dafb95df..f68f0446c3d4 100644 --- a/src/digit_obj_util.c +++ b/src/digit_obj_util.c @@ -138,7 +138,7 @@ bool32 DigitObjUtil_CreatePrinter(u32 id, s32 num, const struct DigitObjUtilTemp { struct CompressedSpriteSheet compSpriteSheet; - compSpriteSheet = *(struct CompressedSpriteSheet*)(template->spriteSheet); + compSpriteSheet = *(struct CompressedSpriteSheet *)(template->spriteSheet); compSpriteSheet.size = GetDecompressedDataSize(template->spriteSheet->data); sOamWork->array[id].tileStart = LoadCompressedSpriteSheet(&compSpriteSheet); } diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index d061c218e264..4c84f378de24 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -1795,7 +1795,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); } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 469033b3471e..cd688997924f 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -69,13 +69,13 @@ extern const u8 gText_NicknameHatchPrompt[]; static void Task_EggHatch(u8); static void CB2_LoadEggHatch(void); static void CB2_EggHatch(void); -static void SpriteCB_Egg_Shake1(struct Sprite*); -static void SpriteCB_Egg_Shake2(struct Sprite*); -static void SpriteCB_Egg_Shake3(struct Sprite*); -static void SpriteCB_Egg_WaitHatch(struct Sprite*); -static void SpriteCB_Egg_Hatch(struct Sprite*); -static void SpriteCB_Egg_Reveal(struct Sprite*); -static void SpriteCB_EggShard(struct Sprite*); +static void SpriteCB_Egg_Shake1(struct Sprite *); +static void SpriteCB_Egg_Shake2(struct Sprite *); +static void SpriteCB_Egg_Shake3(struct Sprite *); +static void SpriteCB_Egg_WaitHatch(struct Sprite *); +static void SpriteCB_Egg_Hatch(struct Sprite *); +static void SpriteCB_Egg_Reveal(struct Sprite *); +static void SpriteCB_EggShard(struct Sprite *); static void EggHatchPrintMessage(u8, u8 *, u8, u8, u8); static void CreateRandomEggShardSprite(void); static void CreateEggShardSprite(u8, u8, s16, s16, s16, u8); @@ -363,7 +363,7 @@ static void AddHatchedMonToParty(u8 id) u16 ball; u16 metLevel; u8 metLocation; - struct Pokemon* mon = &gPlayerParty[id]; + struct Pokemon *mon = &gPlayerParty[id]; CreateHatchedMon(mon, &gEnemyParty[0]); SetMonData(mon, MON_DATA_IS_EGG, &isEgg); @@ -424,7 +424,7 @@ static u8 EggHatchCreateMonSprite(u8 useAlt, u8 state, u8 partyId, u16 *speciesL { u8 position = 0; u8 spriteId = 0; - struct Pokemon* mon = NULL; + struct Pokemon *mon = NULL; if (useAlt == FALSE) { @@ -728,7 +728,7 @@ static void CB2_EggHatch(void) #define sSinIdx data[1] #define sDelayTimer data[2] -static void SpriteCB_Egg_Shake1(struct Sprite* sprite) +static void SpriteCB_Egg_Shake1(struct Sprite *sprite) { if (++sprite->sTimer > 20) { @@ -750,7 +750,7 @@ static void SpriteCB_Egg_Shake1(struct Sprite* sprite) } } -static void SpriteCB_Egg_Shake2(struct Sprite* sprite) +static void SpriteCB_Egg_Shake2(struct Sprite *sprite) { if (++sprite->sDelayTimer > 30) { @@ -775,7 +775,7 @@ static void SpriteCB_Egg_Shake2(struct Sprite* sprite) } } -static void SpriteCB_Egg_Shake3(struct Sprite* sprite) +static void SpriteCB_Egg_Shake3(struct Sprite *sprite) { if (++sprite->sDelayTimer > 30) { @@ -813,7 +813,7 @@ static void SpriteCB_Egg_Shake3(struct Sprite* sprite) } } -static void SpriteCB_Egg_WaitHatch(struct Sprite* sprite) +static void SpriteCB_Egg_WaitHatch(struct Sprite *sprite) { if (++sprite->sTimer > 50) { @@ -822,7 +822,7 @@ static void SpriteCB_Egg_WaitHatch(struct Sprite* sprite) } } -static void SpriteCB_Egg_Hatch(struct Sprite* sprite) +static void SpriteCB_Egg_Hatch(struct Sprite *sprite) { s16 i; @@ -849,7 +849,7 @@ static void SpriteCB_Egg_Hatch(struct Sprite* sprite) } } -static void SpriteCB_Egg_Reveal(struct Sprite* sprite) +static void SpriteCB_Egg_Reveal(struct Sprite *sprite) { if (sprite->sTimer == 0) { @@ -877,7 +877,7 @@ static void SpriteCB_Egg_Reveal(struct Sprite* sprite) #define sDeltaX data[4] #define sDeltaY data[5] -static void SpriteCB_EggShard(struct Sprite* sprite) +static void SpriteCB_EggShard(struct Sprite *sprite) { sprite->sDeltaX += sprite->sVelocX; sprite->sDeltaY += sprite->sVelocY; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index b1b3ae5bc60a..7ea712be613e 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -93,33 +93,33 @@ static bool8 IsMetatileDirectionallyImpassable(struct ObjectEvent *, s16, s16, u static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *, s16, s16); static void UpdateObjectEventOffscreen(struct ObjectEvent *, struct Sprite *); static void UpdateObjectEventSpriteVisibility(struct ObjectEvent *, struct Sprite *); -static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent*); -static void GetGroundEffectFlags_Reflection(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_SandHeap(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_HotSprings(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_Tracks(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_Puddle(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_Ripple(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_Seaweed(struct ObjectEvent*, u32 *); -static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent*, u32 *); -static u8 ObjectEventGetNearbyReflectionType(struct ObjectEvent*); +static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent *); +static void GetGroundEffectFlags_Reflection(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_SandHeap(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_HotSprings(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_Tracks(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_Puddle(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_Ripple(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_Seaweed(struct ObjectEvent *, u32 *); +static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent *, u32 *); +static u8 ObjectEventGetNearbyReflectionType(struct ObjectEvent *); static u8 GetReflectionTypeByMetatileBehavior(u32); static void InitObjectPriorityByElevation(struct Sprite *, u8); -static void ObjectEventUpdateSubpriority(struct ObjectEvent*, struct Sprite*); -static void DoTracksGroundEffect_None(struct ObjectEvent*, struct Sprite*, u8); -static void DoTracksGroundEffect_Footprints(struct ObjectEvent*, struct Sprite*, u8); -static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent*, struct Sprite*, u8); -static void DoRippleFieldEffect(struct ObjectEvent*, struct Sprite*); -static void DoGroundEffects_OnSpawn(struct ObjectEvent*, struct Sprite*); -static void DoGroundEffects_OnBeginStep(struct ObjectEvent*, struct Sprite*); -static void DoGroundEffects_OnFinishStep(struct ObjectEvent*, struct Sprite*); -static void VirtualObject_UpdateAnim(struct Sprite*); +static void ObjectEventUpdateSubpriority(struct ObjectEvent *, struct Sprite *); +static void DoTracksGroundEffect_None(struct ObjectEvent *, struct Sprite *, u8); +static void DoTracksGroundEffect_Footprints(struct ObjectEvent *, struct Sprite *, u8); +static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent *, struct Sprite *, u8); +static void DoRippleFieldEffect(struct ObjectEvent *, struct Sprite *); +static void DoGroundEffects_OnSpawn(struct ObjectEvent *, struct Sprite *); +static void DoGroundEffects_OnBeginStep(struct ObjectEvent *, struct Sprite *); +static void DoGroundEffects_OnFinishStep(struct ObjectEvent *, struct Sprite *); +static void VirtualObject_UpdateAnim(struct Sprite *); static void ApplyLevitateMovement(u8); static bool8 MovementType_Disguise_Callback(struct ObjectEvent *, struct Sprite *); static bool8 MovementType_Buried_Callback(struct ObjectEvent *, struct Sprite *); diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index a6b558195b76..01465f741179 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -10,7 +10,7 @@ #include "palette.h" #include "constants/rgb.h" -static void SpriteCB_Sparkle_Dummy(struct Sprite* sprite); +static void SpriteCB_Sparkle_Dummy(struct Sprite *sprite); static void Task_Sparkles_SpiralUpward_Init(u8 taskId); static void Task_Sparkles_SpiralUpward(u8 taskId); @@ -127,7 +127,7 @@ static void SetEvoSparklesMatrices(void) #define sTrigIdx data[6] #define sTimer data[7] -static void SpriteCB_Sparkle_SpiralUpward(struct Sprite* sprite) +static void SpriteCB_Sparkle_SpiralUpward(struct Sprite *sprite) { if (sprite->y > 8) { @@ -167,7 +167,7 @@ static void CreateSparkle_SpiralUpward(u8 trigIdx) } } -static void SpriteCB_Sparkle_ArcDown(struct Sprite* sprite) +static void SpriteCB_Sparkle_ArcDown(struct Sprite *sprite) { if (sprite->y < 88) { @@ -196,7 +196,7 @@ static void CreateSparkle_ArcDown(u8 trigIdx) } } -static void SpriteCB_Sparkle_CircleInward(struct Sprite* sprite) +static void SpriteCB_Sparkle_CircleInward(struct Sprite *sprite) { if (sprite->sAmplitude > 8) { @@ -225,7 +225,7 @@ static void CreateSparkle_CircleInward(u8 trigIdx, u8 speed) } } -static void SpriteCB_Sparkle_Spray(struct Sprite* sprite) +static void SpriteCB_Sparkle_Spray(struct Sprite *sprite) { if (!(sprite->sTimer & 3)) sprite->y++; @@ -492,7 +492,7 @@ static void Task_Sparkles_SprayAndFlashTrade(u8 taskId) #undef tTimer #undef tSpecies -static void SpriteCB_EvolutionMonSprite(struct Sprite* sprite) +static void SpriteCB_EvolutionMonSprite(struct Sprite *sprite) { } diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 8bd24597b06b..1e26c596159d 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -170,7 +170,7 @@ static void CB2_BeginEvolutionScene(void) static void Task_BeginEvolutionScene(u8 taskId) { - struct Pokemon* mon = NULL; + struct Pokemon *mon = NULL; switch (gTasks[taskId].tState) { case 0: @@ -196,7 +196,7 @@ static void Task_BeginEvolutionScene(u8 taskId) } } -void BeginEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId) +void BeginEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId) { u8 taskId = CreateTask(Task_BeginEvolutionScene, 0); gTasks[taskId].tState = 0; @@ -206,7 +206,7 @@ void BeginEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopE SetMainCallback2(CB2_BeginEvolutionScene); } -void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId) +void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId) { u8 name[20]; u16 currSpecies; @@ -314,7 +314,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) const struct CompressedSpritePalette* pokePal; u16 postEvoSpecies; u32 trainerId, personality; - struct Pokemon* mon = &gPlayerParty[gTasks[sEvoStructPtr->evoTaskId].tPartyId]; + struct Pokemon *mon = &gPlayerParty[gTasks[sEvoStructPtr->evoTaskId].tPartyId]; postEvoSpecies = gTasks[sEvoStructPtr->evoTaskId].tPostEvoSpecies; trainerId = GetMonData(mon, MON_DATA_OT_ID); @@ -381,7 +381,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) static void CB2_TradeEvolutionSceneLoadGraphics(void) { - struct Pokemon* mon = &gPlayerParty[gTasks[sEvoStructPtr->evoTaskId].tPartyId]; + struct Pokemon *mon = &gPlayerParty[gTasks[sEvoStructPtr->evoTaskId].tPartyId]; u16 postEvoSpecies = gTasks[sEvoStructPtr->evoTaskId].tPostEvoSpecies; switch (gMain.state) @@ -465,7 +465,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) } } -void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSpriteId, u8 partyId) +void TradeEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, u8 preEvoSpriteId, u8 partyId) { u8 name[20]; u16 currSpecies; @@ -545,13 +545,13 @@ static void CB2_TradeEvolutionSceneUpdate(void) RunTasks(); } -static void CreateShedinja(u16 preEvoSpecies, struct Pokemon* mon) +static void CreateShedinja(u16 preEvoSpecies, struct Pokemon *mon) { u32 data = 0; if (gEvolutionTable[preEvoSpecies][0].method == EVO_LEVEL_NINJASK && gPlayerPartyCount < PARTY_SIZE) { s32 i; - struct Pokemon* shedinja = &gPlayerParty[gPlayerPartyCount]; + struct Pokemon *shedinja = &gPlayerParty[gPlayerPartyCount]; CopyMon(&gPlayerParty[gPlayerPartyCount], mon, sizeof(struct Pokemon)); SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_SPECIES, &gEvolutionTable[preEvoSpecies][1].targetSpecies); @@ -632,7 +632,7 @@ enum { static void Task_EvolutionScene(u8 taskId) { u32 var; - struct Pokemon* mon = &gPlayerParty[gTasks[taskId].tPartyId]; + struct Pokemon *mon = &gPlayerParty[gTasks[taskId].tPartyId]; // check if B Button was held, so the evolution gets stopped if (gMain.heldKeys == B_BUTTON @@ -1081,7 +1081,7 @@ enum { static void Task_TradeEvolutionScene(u8 taskId) { u32 var = 0; - struct Pokemon* mon = &gPlayerParty[gTasks[taskId].tPartyId]; + struct Pokemon *mon = &gPlayerParty[gTasks[taskId].tPartyId]; switch (gTasks[taskId].tState) { diff --git a/src/faraway_island.c b/src/faraway_island.c index 9ddb66de5c2e..4f34cf30e6fd 100755 --- a/src/faraway_island.c +++ b/src/faraway_island.c @@ -10,10 +10,10 @@ #include "constants/metatile_behaviors.h" static u8 GetValidMewMoveDirection(u8); -static bool8 ShouldMewMoveNorth(struct ObjectEvent*, u8); -static bool8 ShouldMewMoveSouth(struct ObjectEvent*, u8); -static bool8 ShouldMewMoveEast(struct ObjectEvent*, u8); -static bool8 ShouldMewMoveWest(struct ObjectEvent*, u8); +static bool8 ShouldMewMoveNorth(struct ObjectEvent *, u8); +static bool8 ShouldMewMoveSouth(struct ObjectEvent *, u8); +static bool8 ShouldMewMoveEast(struct ObjectEvent *, u8); +static bool8 ShouldMewMoveWest(struct ObjectEvent *, u8); static u8 GetRandomMewDirectionCandidate(u8); static bool8 CanMewMoveToCoords(s16, s16); diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index cdb0db6d149e..ad02b00c1d6c 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -43,8 +43,8 @@ u8 gSelectedObjectEvent; static void GetPlayerPosition(struct MapPosition *); static void GetInFrontOfPlayerPosition(struct MapPosition *); static u16 GetPlayerCurMetatileBehavior(int); -static bool8 TryStartInteractionScript(struct MapPosition*, u16, u8); -static const u8 *GetInteractionScript(struct MapPosition*, u8, u8); +static bool8 TryStartInteractionScript(struct MapPosition *, u16, u8); +static const u8 *GetInteractionScript(struct MapPosition *, u8, u8); static const u8 *GetInteractedObjectEventScript(struct MapPosition *, u8, u8); static const u8 *GetInteractedBackgroundEventScript(struct MapPosition *, u8, u8); static const u8 *GetInteractedMetatileScript(struct MapPosition *, u8, u8); diff --git a/src/field_effect.c b/src/field_effect.c index f84dd58b6e0a..0bf2046312ab 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -146,10 +146,10 @@ static void EscapeRopeWarpInEffect_Init(struct Task *); static void EscapeRopeWarpInEffect_Spin(struct Task *); static void Task_TeleportWarpOut(u8); -static void TeleportWarpOutFieldEffect_Init(struct Task*); -static void TeleportWarpOutFieldEffect_SpinGround(struct Task*); -static void TeleportWarpOutFieldEffect_SpinExit(struct Task*); -static void TeleportWarpOutFieldEffect_End(struct Task*); +static void TeleportWarpOutFieldEffect_Init(struct Task *); +static void TeleportWarpOutFieldEffect_SpinGround(struct Task *); +static void TeleportWarpOutFieldEffect_SpinExit(struct Task *); +static void TeleportWarpOutFieldEffect_End(struct Task *); static void FieldCallback_TeleportWarpIn(void); static void Task_TeleportWarpIn(u8); @@ -226,8 +226,8 @@ static void Task_DestroyDeoxysRock(u8 taskId); static void DestroyDeoxysRockEffect_CameraShake(s16 *, u8); static void DestroyDeoxysRockEffect_RockFragments(s16 *, u8); static void DestroyDeoxysRockEffect_WaitAndEnd(s16 *, u8); -static void CreateDeoxysRockFragments(struct Sprite*); -static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite); +static void CreateDeoxysRockFragments(struct Sprite *); +static void SpriteCB_DeoxysRockFragment(struct Sprite *sprite); static void Task_MoveDeoxysRock(u8 taskId); @@ -3776,7 +3776,7 @@ static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = { .callback = SpriteCB_DeoxysRockFragment }; -static void CreateDeoxysRockFragments(struct Sprite* sprite) +static void CreateDeoxysRockFragments(struct Sprite *sprite) { int i; int xPos = (s16)gTotalCameraPixelOffsetX + sprite->x + sprite->x2; @@ -3794,7 +3794,7 @@ static void CreateDeoxysRockFragments(struct Sprite* sprite) } } -static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite) +static void SpriteCB_DeoxysRockFragment(struct Sprite *sprite) { // 1 case for each fragment, fly off in 4 different directions switch (sprite->data[0]) @@ -3820,7 +3820,7 @@ static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite) DestroySprite(sprite); } -bool8 FldEff_MoveDeoxysRock(struct Sprite* sprite) +bool8 FldEff_MoveDeoxysRock(struct Sprite *sprite) { u8 objectEventIdBuffer; if (!TryGetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2], &objectEventIdBuffer)) diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 324661489e38..d8c62d25e0e2 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -101,7 +101,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2); static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2); static void Task_DoDomeConfetti(u8 taskId); -static void SpriteCB_HofConfetti(struct Sprite* sprite); +static void SpriteCB_HofConfetti(struct Sprite *sprite); static const struct BgTemplate sHof_BgTemplates[] = { @@ -484,7 +484,7 @@ static void Task_Hof_InitMonData(u8 taskId) static void Task_Hof_InitTeamSaveData(u8 taskId) { u16 i; - struct HallofFameTeam* lastSavedTeam = (struct HallofFameTeam*)(gDecompressionBuffer); + struct HallofFameTeam *lastSavedTeam = (struct HallofFameTeam *)(gDecompressionBuffer); if (!gHasHallOfFameRecords) { @@ -503,8 +503,8 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) } if (i >= HALL_OF_FAME_MAX_TEAMS) { - struct HallofFameTeam *afterTeam = (struct HallofFameTeam*)(gDecompressionBuffer); - struct HallofFameTeam *beforeTeam = (struct HallofFameTeam*)(gDecompressionBuffer); + struct HallofFameTeam *afterTeam = (struct HallofFameTeam *)(gDecompressionBuffer); + struct HallofFameTeam *beforeTeam = (struct HallofFameTeam *)(gDecompressionBuffer); afterTeam++; for (i = 0; i < HALL_OF_FAME_MAX_TEAMS - 1; i++, beforeTeam++, afterTeam++) { @@ -821,7 +821,7 @@ void CB2_DoHallOfFamePC(void) case 3: if (!LoadHofBgs()) { - struct HallofFameTeam *fameTeam = (struct HallofFameTeam*)(gDecompressionBuffer); + struct HallofFameTeam *fameTeam = (struct HallofFameTeam *)(gDecompressionBuffer); fameTeam->mon[0] = sDummyFameMon; ComputerScreenOpenEffect(0, 0, 0); SetVBlankCallback(VBlankCB_HallOfFame); @@ -867,7 +867,7 @@ static void Task_HofPC_CopySaveData(u8 taskId) else { u16 i; - struct HallofFameTeam* savedTeams; + struct HallofFameTeam *savedTeams; CpuCopy16(gDecompressionBuffer, sHofMonPtr, SECTOR_SIZE * NUM_HOF_SECTORS); savedTeams = sHofMonPtr; @@ -890,7 +890,7 @@ static void Task_HofPC_CopySaveData(u8 taskId) static void Task_HofPC_DrawSpritesPrintText(u8 taskId) { - struct HallofFameTeam* savedTeams = sHofMonPtr; + struct HallofFameTeam *savedTeams = sHofMonPtr; struct HallofFameMon* currMon; u16 i; @@ -956,7 +956,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId) static void Task_HofPC_PrintMonInfo(u8 taskId) { - struct HallofFameTeam* savedTeams = sHofMonPtr; + struct HallofFameTeam *savedTeams = sHofMonPtr; struct HallofFameMon* currMon; u16 i; u16 currMonID; @@ -1042,10 +1042,10 @@ static void Task_HofPC_HandleInput(u8 taskId) static void Task_HofPC_HandlePaletteOnExit(u8 taskId) { - struct HallofFameTeam* fameTeam; + struct HallofFameTeam *fameTeam; CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); - fameTeam = (struct HallofFameTeam*)(gDecompressionBuffer); + fameTeam = (struct HallofFameTeam *)(gDecompressionBuffer); fameTeam->mon[0] = sDummyFameMon; ComputerScreenCloseEffect(0, 0, 0); gTasks[taskId].func = Task_HofPC_HandleExit; @@ -1369,7 +1369,7 @@ static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite) #define sSineIdx data[0] #define sExtraY data[1] -static void SpriteCB_HofConfetti(struct Sprite* sprite) +static void SpriteCB_HofConfetti(struct Sprite *sprite) { if (sprite->y2 > 120) { @@ -1394,7 +1394,7 @@ static void SpriteCB_HofConfetti(struct Sprite* sprite) static bool8 CreateHofConfettiSprite(void) { u8 spriteID; - struct Sprite* sprite; + struct Sprite *sprite; s16 posX = Random() % DISPLAY_WIDTH; s16 posY = -(Random() % 8); diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c index 0942e82f175d..cf193018a40f 100644 --- a/src/intro_credits_graphics.c +++ b/src/intro_credits_graphics.c @@ -1106,7 +1106,7 @@ static void SpriteCB_Player(struct Sprite *sprite) #define sPlayerSpriteId data[0] -static void SpriteCB_Bicycle(struct Sprite* sprite) +static void SpriteCB_Bicycle(struct Sprite *sprite) { sprite->invisible = gSprites[sprite->sPlayerSpriteId].invisible; sprite->x = gSprites[sprite->sPlayerSpriteId].x; @@ -1139,7 +1139,7 @@ static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite) #define sLeftSpriteId data[0] -static void SpriteCB_FlygonRightHalf(struct Sprite* sprite) +static void SpriteCB_FlygonRightHalf(struct Sprite *sprite) { sprite->invisible = gSprites[sprite->sLeftSpriteId].invisible; sprite->y = gSprites[sprite->sLeftSpriteId].y; diff --git a/src/item_menu.c b/src/item_menu.c index addf8465dddd..526952a6b860 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -189,7 +189,7 @@ static void InitPocketListPositions(void); static void InitPocketScrollPositions(void); static u8 CreateBagInputHandlerTask(u8); static void DrawItemListBgRow(u8); -static void BagMenu_MoveCursorCallback(s32, bool8, struct ListMenu*); +static void BagMenu_MoveCursorCallback(s32, bool8, struct ListMenu *); static void BagMenu_ItemPrintCallback(u8, u32, u8); static void ItemMenu_UseOutOfBattle(u8); static void ItemMenu_Toss(u8); diff --git a/src/main_menu.c b/src/main_menu.c index 847befa287a4..b8abffda5704 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -179,7 +179,7 @@ static void Task_MainMenuCheckSaveFile(u8); static void Task_MainMenuCheckBattery(u8); static void Task_WaitForSaveFileErrorWindow(u8); static void CreateMainMenuErrorWindow(const u8 *); -static void ClearMainMenuWindowTilemap(const struct WindowTemplate*); +static void ClearMainMenuWindowTilemap(const struct WindowTemplate *); static void Task_DisplayMainMenu(u8); static void Task_WaitForBatteryDryErrorWindow(u8); static void MainMenu_FormatSavegameText(void); @@ -209,7 +209,7 @@ static void Task_NewGameBirchSpeech_StartPlayerFadeIn(u8); static void Task_NewGameBirchSpeech_WaitForPlayerFadeIn(u8); static void Task_NewGameBirchSpeech_BoyOrGirl(u8); static void LoadMainMenuWindowFrameTiles(u8, u16); -static void DrawMainMenuWindowBorder(const struct WindowTemplate*, u16); +static void DrawMainMenuWindowBorder(const struct WindowTemplate *, u16); static void Task_HighlightSelectedMainMenuItem(u8); static void Task_NewGameBirchSpeech_WaitToShowGenderMenu(u8); static void Task_NewGameBirchSpeech_ChooseGender(u8); @@ -232,7 +232,7 @@ static void Task_NewGameBirchSpeech_ReshowBirchLotad(u8); static void Task_NewGameBirchSpeech_WaitForSpriteFadeInAndTextPrinter(u8); static void Task_NewGameBirchSpeech_AreYouReady(u8); static void Task_NewGameBirchSpeech_ShrinkPlayer(u8); -static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite*); +static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite *); static void Task_NewGameBirchSpeech_WaitForPlayerShrink(u8); static void Task_NewGameBirchSpeech_FadePlayerToWhite(u8); static void Task_NewGameBirchSpeech_Cleanup(u8); diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 6b06b2074c74..6cd6e565e7e2 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -67,7 +67,7 @@ static void IncrementCeilingCrumbleFinishedCount(void); static void WaitCeilingCrumble(u8); static void FinishCeilingCrumbleTask(u8); static void CreateCeilingCrumbleSprites(void); -static void SpriteCB_CeilingCrumble(struct Sprite*); +static void SpriteCB_CeilingCrumble(struct Sprite *); static void DoMirageTowerDisintegration(u8); static void InitMirageTowerShake(u8); static void Task_FossilFallAndSink(u8); @@ -463,7 +463,7 @@ static void CreateCeilingCrumbleSprites(void) } } -static void SpriteCB_CeilingCrumble(struct Sprite* sprite) +static void SpriteCB_CeilingCrumble(struct Sprite *sprite) { sprite->data[1] += 2; sprite->y2 = sprite->data[1] / 2; diff --git a/src/party_menu.c b/src/party_menu.c index 3f763245c4a7..c23d9e36fe11 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -248,15 +248,15 @@ static void UpdatePartySelectionDoubleLayout(s8 *, s8); static s8 GetNewSlotDoubleLayout(s8, s8); static void PartyMenuPrintText(const u8 *); static void Task_PrintAndWaitForText(u8); -static bool16 IsMonAllowedInPokemonJump(struct Pokemon*); -static bool16 IsMonAllowedInDodrioBerryPicking(struct Pokemon*); +static bool16 IsMonAllowedInPokemonJump(struct Pokemon *); +static bool16 IsMonAllowedInDodrioBerryPicking(struct Pokemon *); static void Task_CancelParticipationYesNo(u8); static void Task_HandleCancelParticipationYesNoInput(u8); static bool8 CanLearnTutorMove(u16, u8); static u16 GetTutorMove(u8); static bool8 ShouldUseChooseMonText(void); -static void SetPartyMonFieldSelectionActions(struct Pokemon*, u8); -static u8 GetPartyMenuActionsTypeInBattle(struct Pokemon*); +static void SetPartyMonFieldSelectionActions(struct Pokemon *, u8); +static u8 GetPartyMenuActionsTypeInBattle(struct Pokemon *); static u8 GetPartySlotEntryStatus(s8); static void Task_UpdateHeldItemSprite(u8); static void Task_HandleSelectionMenuInput(u8); @@ -277,7 +277,7 @@ static void Task_HandleSwitchItemsYesNoInput(u8); static void Task_WriteMailToGiveMonAfterText(u8); static void CB2_ReturnToPartyMenuFromWritingMail(void); static void Task_DisplayGaveMailFromPartyMessage(u8); -static void UpdatePartyMonHeldItemSprite(struct Pokemon*, struct PartyMenuBox*); +static void UpdatePartyMonHeldItemSprite(struct Pokemon *, struct PartyMenuBox *); static void Task_TossHeldItemYesNo(u8 taskId); static void Task_HandleTossHeldItemYesNoInput(u8); static void Task_TossHeldItem(u8); @@ -298,19 +298,19 @@ static void Task_FieldMoveExitAreaYesNo(u8); static void Task_HandleFieldMoveExitAreaYesNoInput(u8); static void Task_FieldMoveWaitForFade(u8); static u16 GetFieldMoveMonSpecies(void); -static void UpdatePartyMonHPBar(u8, struct Pokemon*); -static void SpriteCB_UpdatePartyMonIcon(struct Sprite*); -static void SpriteCB_BouncePartyMonIcon(struct Sprite*); -static void ShowOrHideHeldItemSprite(u16, struct PartyMenuBox*); +static void UpdatePartyMonHPBar(u8, struct Pokemon *); +static void SpriteCB_UpdatePartyMonIcon(struct Sprite *); +static void SpriteCB_BouncePartyMonIcon(struct Sprite *); +static void ShowOrHideHeldItemSprite(u16, struct PartyMenuBox *); static void CreateHeldItemSpriteForTrade(u8, bool8); -static void SpriteCB_HeldItem(struct Sprite*); -static void SetPartyMonAilmentGfx(struct Pokemon*, struct PartyMenuBox*); -static void UpdatePartyMonAilmentGfx(u8, struct PartyMenuBox*); +static void SpriteCB_HeldItem(struct Sprite *); +static void SetPartyMonAilmentGfx(struct Pokemon *, struct PartyMenuBox *); +static void UpdatePartyMonAilmentGfx(u8, struct PartyMenuBox *); static u8 GetPartyLayoutFromBattleType(void); static void Task_SetSacredAshCB(u8); static void CB2_ReturnToBagMenu(void); static void Task_DisplayHPRestoredMessage(u8); -static u16 ItemEffectToMonEv(struct Pokemon*, u8); +static u16 ItemEffectToMonEv(struct Pokemon *, u8); static void ItemEffectToStatString(u8, u8 *); static void ReturnToUseOnWhichMon(u8); static void SetSelectedMoveForPPItem(u8); @@ -331,8 +331,8 @@ static void Task_PartyMenuReplaceMove(u8); static void Task_StopLearningMoveYesNo(u8); static void Task_HandleStopLearningMoveYesNoInput(u8); static void Task_TryLearningNextMoveAfterText(u8); -static void BufferMonStatsToTaskData(struct Pokemon*, s16 *); -static void UpdateMonDisplayInfoAfterRareCandy(u8, struct Pokemon*); +static void BufferMonStatsToTaskData(struct Pokemon *, s16 *); +static void UpdateMonDisplayInfoAfterRareCandy(u8, struct Pokemon *); static void Task_DisplayLevelUpStatsPg1(u8); static void DisplayLevelUpStatsPg1(u8); static void Task_DisplayLevelUpStatsPg2(u8); @@ -356,7 +356,7 @@ static bool8 ReturnGiveItemToBagOrPC(u16); static void Task_DisplayGaveMailFromBagMessage(u8); static void Task_HandleSwitchItemsFromBagYesNoInput(u8); static void Task_ValidateChosenHalfParty(u8); -static bool8 GetBattleEntryEligibility(struct Pokemon*); +static bool8 GetBattleEntryEligibility(struct Pokemon *); static bool8 HasPartySlotAlreadyBeenSelected(u8); static u8 GetBattleEntryLevelCap(void); static u8 GetMaxBattleEntries(void); @@ -376,7 +376,7 @@ static void Task_ChoosePartyMon(u8 taskId); static void Task_ChooseMonForMoveRelearner(u8); static void CB2_ChooseMonForMoveRelearner(void); static void Task_BattlePyramidChooseMonHeldItems(u8); -static void ShiftMoveSlot(struct Pokemon*, u8, u8); +static void ShiftMoveSlot(struct Pokemon *, u8, u8); static void BlitBitmapToPartyWindow_LeftColumn(u8, u8, u8, u8, u8, bool8); static void BlitBitmapToPartyWindow_RightColumn(u8, u8, u8, u8, u8, bool8); static void CursorCb_Summary(u8); @@ -1732,7 +1732,7 @@ static void GiveItemToMon(struct Pokemon *mon, u16 item) SetMonData(mon, MON_DATA_HELD_ITEM, itemBytes); } -static u8 TryTakeMonItem(struct Pokemon* mon) +static u8 TryTakeMonItem(struct Pokemon *mon) { u16 item = GetMonData(mon, MON_DATA_HELD_ITEM); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 23fdfe628734..7e71f255bac6 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -905,7 +905,7 @@ static void Task_FadeOutPokeblockFeed(u8 taskId) #define sAccel data[1] #define sSpecies data[2] -static u8 CreateMonSprite(struct Pokemon* mon) +static u8 CreateMonSprite(struct Pokemon *mon) { u16 species = GetMonData(mon, MON_DATA_SPECIES2); u8 spriteId = CreateSprite(&gMultiuseSpriteTemplate, MON_X, MON_Y, 2); @@ -937,7 +937,7 @@ static void StartMonJumpForPokeblock(u8 spriteId) gSprites[spriteId].callback = SpriteCB_MonJumpForPokeblock; } -static void SpriteCB_MonJumpForPokeblock(struct Sprite* sprite) +static void SpriteCB_MonJumpForPokeblock(struct Sprite *sprite) { sprite->x += 4; sprite->y += sprite->sSpeed; @@ -982,7 +982,7 @@ static u8 CreatePokeblockSprite(void) return spriteId; } -static void SpriteCB_ThrownPokeblock(struct Sprite* sprite) +static void SpriteCB_ThrownPokeblock(struct Sprite *sprite) { sprite->x -= 4; sprite->y += sprite->sSpeed; diff --git a/src/pokedex.c b/src/pokedex.c index 1d5f86ba59b4..fceb065aa26f 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -239,9 +239,9 @@ static void SpriteCB_RotatingPokeBall(struct Sprite *sprite); static void SpriteCB_SeenOwnInfo(struct Sprite *sprite); static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite); static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite); -static u8 LoadInfoScreen(struct PokedexListItem*, u8 monSpriteId); +static u8 LoadInfoScreen(struct PokedexListItem *, u8 monSpriteId); static bool8 IsInfoScreenScrolling(u8); -static u8 StartInfoScreenScroll(struct PokedexListItem*, u8); +static u8 StartInfoScreenScroll(struct PokedexListItem *, u8); static void Task_LoadInfoScreen(u8); static void Task_HandleInfoScreenInput(u8); static void Task_SwitchScreensFromInfoScreen(u8); @@ -3177,7 +3177,7 @@ static void PrintInfoScreenText(const u8 *str, u8 left, u8 top) #define tMonSpriteId data[4] #define tTrainerSpriteId data[5] -static u8 LoadInfoScreen(struct PokedexListItem* item, u8 monSpriteId) +static u8 LoadInfoScreen(struct PokedexListItem *item, u8 monSpriteId) { u8 taskId; diff --git a/src/pokemon.c b/src/pokemon.c index ec948194844b..3cd9836670b1 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -61,7 +61,7 @@ static void Task_PlayMapChosenOrBattleBGM(u8 taskId); static bool8 ShouldGetStatBadgeBoost(u16 flagId, u8 battlerId); static u16 GiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move); static bool8 ShouldSkipFriendshipChange(void); -static u8 SendMonToPC(struct Pokemon* mon); +static u8 SendMonToPC(struct Pokemon *mon); EWRAM_DATA static u8 sLearningMoveTableID = 0; EWRAM_DATA u8 gPlayerPartyCount = 0; @@ -4390,7 +4390,7 @@ u8 GiveMonToPlayer(struct Pokemon *mon) return MON_GIVEN_TO_PARTY; } -static u8 SendMonToPC(struct Pokemon* mon) +static u8 SendMonToPC(struct Pokemon *mon) { s32 boxNo, boxPos; @@ -6707,7 +6707,7 @@ static void Task_PokemonSummaryAnimateAfterDelay(u8 taskId) } } -void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 panMode) +void BattleAnimateFrontSprite(struct Sprite *sprite, u16 species, bool8 noCry, u8 panMode) { if (gHitMarker & HITMARKER_NO_ANIMATIONS && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))) DoMonFrontSpriteAnimation(sprite, species, noCry, panMode | SKIP_FRONT_ANIM); @@ -6715,7 +6715,7 @@ void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u DoMonFrontSpriteAnimation(sprite, species, noCry, panMode); } -void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, u8 panModeAnimFlag) +void DoMonFrontSpriteAnimation(struct Sprite *sprite, u16 species, bool8 noCry, u8 panModeAnimFlag) { s8 pan; switch (panModeAnimFlag & (u8)~SKIP_FRONT_ANIM) // Exclude anim flag to get pan mode @@ -6762,7 +6762,7 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry, } } -void PokemonSummaryDoMonAnimation(struct Sprite* sprite, u16 species, bool8 oneFrame) +void PokemonSummaryDoMonAnimation(struct Sprite *sprite, u16 species, bool8 oneFrame) { if (!oneFrame && HasTwoFramesAnimation(species)) StartSpriteAnim(sprite, 1); @@ -6790,7 +6790,7 @@ void StopPokemonAnimationDelayTask(void) DestroyTask(delayTaskId); } -void BattleAnimateBackSprite(struct Sprite* sprite, u16 species) +void BattleAnimateBackSprite(struct Sprite *sprite, u16 species) { if (gHitMarker & HITMARKER_NO_ANIMATIONS && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))) { diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index c69d50d55eb6..6a4612a20235 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -195,8 +195,8 @@ static bool8 LoadGraphics(void); static void CB2_InitSummaryScreen(void); static void InitBGs(void); static bool8 DecompressGraphics(void); -static void CopyMonToSummaryStruct(struct Pokemon*); -static bool8 ExtractMonDataToSummaryStruct(struct Pokemon*); +static void CopyMonToSummaryStruct(struct Pokemon *); +static bool8 ExtractMonDataToSummaryStruct(struct Pokemon *); static void SetDefaultTilemaps(void); static void CloseSummaryScreen(u8); static void Task_HandleInput(u8); @@ -204,7 +204,7 @@ static void ChangeSummaryPokemon(u8, s8); static void Task_ChangeSummaryMon(u8); static s8 AdvanceMonIndex(s8); static s8 AdvanceMultiBattleMonIndex(s8); -static bool8 IsValidToViewInMulti(struct Pokemon*); +static bool8 IsValidToViewInMulti(struct Pokemon *); static void ChangePage(u8, s8); static void PssScrollRight(u8); static void PssScrollRightEnd(u8); @@ -234,8 +234,8 @@ static void Task_ShowAppealJamWindow(u8); static void HandleStatusTilemap(u16, s16); static void Task_ShowStatusWindow(u8); static void TilemapFiveMovesDisplay(u16 *, u16, bool8); -static void DrawPokerusCuredSymbol(struct Pokemon*); -static void DrawExperienceProgressBar(struct Pokemon*); +static void DrawPokerusCuredSymbol(struct Pokemon *); +static void DrawExperienceProgressBar(struct Pokemon *); static void DrawContestMoveHearts(u16); static void LimitEggSummaryPageDisplay(void); static void ResetWindows(void); @@ -1725,7 +1725,7 @@ static s8 AdvanceMultiBattleMonIndex(s8 delta) } } -static bool8 IsValidToViewInMulti(struct Pokemon* mon) +static bool8 IsValidToViewInMulti(struct Pokemon *mon) { if (GetMonData(mon, MON_DATA_SPECIES) == SPECIES_NONE) return FALSE; diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c index 540102ee4c5d..d0d2b7c55a60 100644 --- a/src/pokenav_conditions_search_results.c +++ b/src/pokenav_conditions_search_results.c @@ -267,7 +267,7 @@ static u32 BuildPartyMonSearchResults(s32 state) item.boxId = TOTAL_BOXES_COUNT; for (i = 0; i < PARTY_SIZE; i++) { - struct Pokemon * pokemon = &gPlayerParty[i]; + struct Pokemon *pokemon = &gPlayerParty[i]; if (!GetMonData(pokemon, MON_DATA_SANITY_HAS_SPECIES)) return LT_INC_AND_CONTINUE; if (!GetMonData(pokemon, MON_DATA_SANITY_IS_EGG)) @@ -697,7 +697,7 @@ static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest) // Mon is in party if (item->boxId == TOTAL_BOXES_COUNT) { - struct Pokemon * mon = &gPlayerParty[item->monId]; + struct Pokemon *mon = &gPlayerParty[item->monId]; gender = GetMonGender(mon); level = GetLevelFromMonExp(mon); GetMonData(mon, MON_DATA_NICKNAME, gStringVar3); diff --git a/src/pokenav_main_menu.c b/src/pokenav_main_menu.c index 7d668c67f2f8..c51ab10baefc 100644 --- a/src/pokenav_main_menu.c +++ b/src/pokenav_main_menu.c @@ -50,7 +50,7 @@ static void InitHelpBar(void); static u32 LoopedTask_SlideMenuHeaderUp(s32); static u32 LoopedTask_SlideMenuHeaderDown(s32); static void DrawHelpBar(u32); -static void SpriteCB_SpinningPokenav(struct Sprite*); +static void SpriteCB_SpinningPokenav(struct Sprite *); static u32 LoopedTask_InitPokenavMenu(s32); static const u16 sSpinningPokenav_Pal[] = INCBIN_U16("graphics/pokenav/nav_icon.gbapal"); diff --git a/src/pokenav_match_call_list.c b/src/pokenav_match_call_list.c index d56cfdb62ec7..b00c76b48af9 100755 --- a/src/pokenav_match_call_list.c +++ b/src/pokenav_match_call_list.c @@ -24,7 +24,7 @@ struct Pokenav_MatchCallMenu u16 numSpecialTrainers; bool32 initFinished; u32 loopedTaskId; - u32 (*callback)(struct Pokenav_MatchCallMenu*); + u32 (*callback)(struct Pokenav_MatchCallMenu *); struct PokenavMatchCallEntry matchCallEntries[MAX_REMATCH_ENTRIES - 1]; }; diff --git a/src/pokenav_menu_handler.c b/src/pokenav_menu_handler.c index b72247742cc7..b81b4c892f63 100644 --- a/src/pokenav_menu_handler.c +++ b/src/pokenav_menu_handler.c @@ -12,7 +12,7 @@ struct Pokenav_Menu u16 currMenuItem; u16 helpBarIndex; u32 menuId; - u32 (*callback)(struct Pokenav_Menu*); + u32 (*callback)(struct Pokenav_Menu *); }; static bool32 UpdateMenuCursorPos(struct Pokenav_Menu *); @@ -28,7 +28,7 @@ static u32 HandleCantOpenRibbonsInput(struct Pokenav_Menu *); static u32 HandleMainMenuInputEndTutorial(struct Pokenav_Menu *); static u32 HandleMainMenuInputTutorial(struct Pokenav_Menu *); static u32 HandleMainMenuInput(struct Pokenav_Menu *); -static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu*); +static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu *); static void SetMenuInputHandler(struct Pokenav_Menu *); // Number of entries - 1 for that menu type @@ -186,7 +186,7 @@ static void SetMenuInputHandler(struct Pokenav_Menu *menu) } } -static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu*) +static u32 (*GetMainMenuInputHandler(void))(struct Pokenav_Menu *) { switch (GetPokenavMode()) { diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c index 81e4f38bd22e..ca5559d96648 100644 --- a/src/pokenav_ribbons_list.c +++ b/src/pokenav_ribbons_list.c @@ -22,7 +22,7 @@ enum struct Pokenav_RibbonsMonList { - u32 (*callback)(struct Pokenav_RibbonsMonList*); + u32 (*callback)(struct Pokenav_RibbonsMonList *); u32 loopedTaskId; u16 winid; s32 boxId; @@ -256,7 +256,7 @@ static u32 BuildPartyMonRibbonList(s32 state) item.boxId = TOTAL_BOXES_COUNT; for (i = 0; i < PARTY_SIZE; i++) { - struct Pokemon * pokemon = &gPlayerParty[i]; + struct Pokemon *pokemon = &gPlayerParty[i]; if (!GetMonData(pokemon, MON_DATA_SANITY_HAS_SPECIES)) return LT_INC_AND_CONTINUE; if (!GetMonData(pokemon, MON_DATA_SANITY_IS_EGG) && !GetMonData(pokemon, MON_DATA_SANITY_IS_BAD_EGG)) @@ -707,7 +707,7 @@ static void BufferRibbonMonInfoText(struct PokenavListItem * listItem, u8 * dest // Mon is in party if (item->boxId == TOTAL_BOXES_COUNT) { - struct Pokemon * mon = &gPlayerParty[item->monId]; + struct Pokemon *mon = &gPlayerParty[item->monId]; gender = GetMonGender(mon); level = GetLevelFromMonExp(mon); GetMonData(mon, MON_DATA_NICKNAME, gStringVar3); diff --git a/src/shop.c b/src/shop.c index c9582166e95a..d23c4a56461e 100755 --- a/src/shop.c +++ b/src/shop.c @@ -63,7 +63,7 @@ static void BuyMenuBuildListMenuTemplate(void); static void BuyMenuInitBgs(void); static void BuyMenuInitWindows(void); static void BuyMenuDecompressBgGraphics(void); -static void BuyMenuSetListEntry(struct ListMenuItem*, u16, u8 *); +static void BuyMenuSetListEntry(struct ListMenuItem *, u16, u8 *); static void BuyMenuAddItemIcon(u16, u8); static void BuyMenuRemoveItemIcon(u16, u8); static void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet); diff --git a/src/slot_machine.c b/src/slot_machine.c index cb6a380d670b..ffae7f0f42ab 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -605,7 +605,7 @@ static bool8 IsReelTimeSmokeAnimFinished(void); static void DestroyReelTimeSmokeSprite(void); static u8 CreatePikaPowerBoltSprite(s16, s16); static void DestroyPikaPowerBoltSprite(u8); -static u8 CreateDigitalDisplaySprite(u8, void (*callback)(struct Sprite*), s16, s16, s16); +static u8 CreateDigitalDisplaySprite(u8, void (*callback)(struct Sprite *), s16, s16, s16); static void LoadSlotMachineGfx(void); static void LoadReelBackground(void); static void LoadMenuGfx(void); diff --git a/src/start_menu.c b/src/start_menu.c index bdacae9de3ca..316a5063b41a 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -535,7 +535,7 @@ void ShowReturnToFieldStartMenu(void) void Task_ShowStartMenu(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task *task = &gTasks[taskId]; switch(task->data[0]) { diff --git a/src/trainer_card.c b/src/trainer_card.c index d6e3ca4ecb8b..ab7b3c9131b9 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -107,10 +107,10 @@ static bool8 LoadCardGfx(void); static void CB2_InitTrainerCard(void); static u32 GetCappedGameStat(u8 statId, u32 maxValue); static bool8 HasAllFrontierSymbols(void); -static u8 GetRubyTrainerStars(struct TrainerCard*); +static u8 GetRubyTrainerStars(struct TrainerCard *); static u16 GetCaughtMonsCount(void); -static void SetPlayerCardData(struct TrainerCard*, u8); -static void TrainerCard_GenerateCardForPlayer(struct TrainerCard*); +static void SetPlayerCardData(struct TrainerCard *, u8); +static void TrainerCard_GenerateCardForPlayer(struct TrainerCard *); static u8 VersionToCardType(u8); static void SetDataFromTrainerCard(void); static void InitGpuRegs(void); @@ -152,12 +152,12 @@ static void LoadStickerGfx(void); static u8 SetCardBgsAndPals(void); static void DrawCardBackStats(void); static void Task_DoCardFlipTask(u8); -static bool8 Task_BeginCardFlip(struct Task* task); -static bool8 Task_AnimateCardFlipDown(struct Task* task); -static bool8 Task_DrawFlippedCardSide(struct Task* task); -static bool8 Task_SetCardFlipped(struct Task* task); -static bool8 Task_AnimateCardFlipUp(struct Task* task); -static bool8 Task_EndCardFlip(struct Task* task); +static bool8 Task_BeginCardFlip(struct Task *task); +static bool8 Task_AnimateCardFlipDown(struct Task *task); +static bool8 Task_DrawFlippedCardSide(struct Task *task); +static bool8 Task_SetCardFlipped(struct Task *task); +static bool8 Task_AnimateCardFlipUp(struct Task *task); +static bool8 Task_EndCardFlip(struct Task *task); static void UpdateCardFlipRegs(u16); static void LoadMonIconGfx(void); @@ -1570,7 +1570,7 @@ static void BlinkTimeColon(void) u8 GetTrainerCardStars(u8 cardId) { - struct TrainerCard* trainerCards = gTrainerCards; + struct TrainerCard *trainerCards = gTrainerCards; return trainerCards[cardId].stars; } @@ -1598,7 +1598,7 @@ static void Task_DoCardFlipTask(u8 taskId) ; } -static bool8 Task_BeginCardFlip(struct Task* task) +static bool8 Task_BeginCardFlip(struct Task *task) { u32 i; @@ -1615,7 +1615,7 @@ static bool8 Task_BeginCardFlip(struct Task* task) // Note: Cannot be DISPLAY_HEIGHT / 2, or cardHeight will be 0 #define CARD_FLIP_Y ((DISPLAY_HEIGHT / 2) - 3) -static bool8 Task_AnimateCardFlipDown(struct Task* task) +static bool8 Task_AnimateCardFlipDown(struct Task *task) { u32 cardHeight, r5, r10, cardTop, r6, var_24, cardBottom, var; s16 i; @@ -1660,7 +1660,7 @@ static bool8 Task_AnimateCardFlipDown(struct Task* task) return FALSE; } -static bool8 Task_DrawFlippedCardSide(struct Task* task) +static bool8 Task_DrawFlippedCardSide(struct Task *task) { sData->allowDMACopy = FALSE; if (Overworld_IsRecvQueueAtMax() == TRUE) @@ -1714,7 +1714,7 @@ static bool8 Task_DrawFlippedCardSide(struct Task* task) return FALSE; } -static bool8 Task_SetCardFlipped(struct Task* task) +static bool8 Task_SetCardFlipped(struct Task *task) { sData->allowDMACopy = FALSE; @@ -1734,7 +1734,7 @@ static bool8 Task_SetCardFlipped(struct Task* task) return FALSE; } -static bool8 Task_AnimateCardFlipUp(struct Task* task) +static bool8 Task_AnimateCardFlipUp(struct Task *task) { u32 cardHeight, r5, r10, cardTop, r6, var_24, cardBottom, var; s16 i; diff --git a/src/union_room.c b/src/union_room.c index 59d662f4f51b..c1dd298c6614 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -275,7 +275,7 @@ static s32 IsRequestedTypeOrEggInPlayerParty(u32, u32); static bool32 UR_PrintFieldMessage(const u8 *); static s32 GetChatLeaderActionRequestMessage(u8 *, u32, u16 *, struct WirelessLink_URoom *); static void Task_InitUnionRoom(u8 taskId); -static bool8 ArePlayersDifferent(struct RfuPlayerData*, const struct RfuPlayerData*); +static bool8 ArePlayersDifferent(struct RfuPlayerData *, const struct RfuPlayerData *); static void ItemPrintFunc_PossibleGroupMembers(u8, u32, u8); static void ListMenuItemPrintFunc_UnionRoomGroups(u8, u32, u8); static void TradeBoardListMenuItemPrintFunc(u8, u32, u8); @@ -1487,7 +1487,7 @@ static void Task_StartUnionRoomTrade(u8 taskId) case 1: if (GetBlockReceivedStatus() == 3) { - gEnemyParty[0] = *(struct Pokemon*)(gBlockRecvBuffer[GetMultiplayerId() ^ 1]); + gEnemyParty[0] = *(struct Pokemon *)(gBlockRecvBuffer[GetMultiplayerId() ^ 1]); IncrementGameStat(GAME_STAT_NUM_UNION_ROOM_BATTLES); ResetBlockReceivedFlags(); gTasks[taskId].data[0]++; From 9dc64b67cdbf75dc2b98470b408e18c327e79837 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 15:38:23 -0400 Subject: [PATCH 645/762] Review changes --- include/sound.h | 1 - src/battle_arena.c | 2 +- src/battle_main.c | 2 +- src/battle_script_commands.c | 6 ++---- src/sound.c | 3 ++- 5 files changed, 6 insertions(+), 8 deletions(-) diff --git a/include/sound.h b/include/sound.h index a5463a456159..b39a7306a63e 100644 --- a/include/sound.h +++ b/include/sound.h @@ -12,7 +12,6 @@ void StopMapMusic(void); void FadeOutMapMusic(u8 speed); void FadeOutAndPlayNewMapMusic(u16 songNum, u8 speed); void FadeOutAndFadeInNewMapMusic(u16 songNum, u8 fadeOutSpeed, u8 fadeInSpeed); -void FadeInNewMapMusic(u16 songNum, u8 speed); bool8 IsNotWaitingForBGMStop(void); void PlayFanfareByFanfareNum(u8 fanfareNum); bool8 WaitFanfare(bool8 stop); diff --git a/src/battle_arena.c b/src/battle_arena.c index 9fb477a6dcf3..e405e2795021 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -719,7 +719,7 @@ void BattleArena_AddSkillPoints(u8 battler) } else if (gMoveResultFlags & MOVE_RESULT_NO_EFFECT) { - if (!(gMoveResultFlags & MOVE_RESULT_MISSED) || gBattleCommunication[MISS_TYPE] != 1) + if (!(gMoveResultFlags & MOVE_RESULT_MISSED) || gBattleCommunication[MISS_TYPE] != B_MSG_PROTECTED) skillPoints[battler] -= 2; } else if ((gMoveResultFlags & MOVE_RESULT_SUPER_EFFECTIVE) && (gMoveResultFlags & MOVE_RESULT_NOT_VERY_EFFECTIVE)) diff --git a/src/battle_main.c b/src/battle_main.c index 481b12eb4b74..d9469470e93a 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3286,7 +3286,7 @@ void FaintClearSetData(void) gProtectStructs[gActiveBattler].confusionSelfDmg = FALSE; gProtectStructs[gActiveBattler].targetNotAffected = FALSE; gProtectStructs[gActiveBattler].chargingTurn = FALSE; - gProtectStructs[gActiveBattler].fleeType = FALSE; + gProtectStructs[gActiveBattler].fleeType = 0; gProtectStructs[gActiveBattler].usedImprisonedMove = FALSE; gProtectStructs[gActiveBattler].loveImmobility = FALSE; gProtectStructs[gActiveBattler].usedDisabledMove = FALSE; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index d456a57dad8b..20a613c76821 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3322,9 +3322,7 @@ static void Cmd_getexp(void) else { // music change in wild battle after fainting a poke - if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER) - && gBattleMons[0].hp != 0 - && !gBattleStruct->wildVictorySong) + if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER) && gBattleMons[0].hp != 0 && !gBattleStruct->wildVictorySong) { BattleStopLowHpSound(); PlayBGM(MUS_VICTORY_WILD); @@ -3446,7 +3444,7 @@ static void Cmd_getexp(void) gBattleMons[0].spAttack = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPATK); gBattleMons[0].spDefense = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF); } - // What is else if? + if (gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId && gBattleMons[2].hp && (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gBattleMons[2].level = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL); diff --git a/src/sound.c b/src/sound.c index ad9993b5462d..aa6fb32ee793 100644 --- a/src/sound.c +++ b/src/sound.c @@ -156,7 +156,8 @@ void FadeOutAndFadeInNewMapMusic(u16 songNum, u8 fadeOutSpeed, u8 fadeInSpeed) sMapMusicFadeInSpeed = fadeInSpeed; } -void FadeInNewMapMusic(u16 songNum, u8 speed) +// Unused +static void FadeInNewMapMusic(u16 songNum, u8 speed) { FadeInNewBGM(songNum, speed); sCurrentMapMusic = songNum; From 5d4b76c0badffc2bf1d7b9db750971a95799277a Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 17:00:07 -0400 Subject: [PATCH 646/762] Review changes from pokefirered #524 --- include/battle_controllers.h | 2 +- include/trade.h | 2 +- src/battle_message.c | 2 +- src/battle_script_commands.c | 140 ++++++++++++++++++++--------------- src/evolution_scene.c | 2 +- src/trade.c | 2 +- 6 files changed, 85 insertions(+), 65 deletions(-) diff --git a/include/battle_controllers.h b/include/battle_controllers.h index c8009347c6a6..f6ac07b91349 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -92,7 +92,7 @@ enum { LINK_STANDBY_MSG_ONLY, }; -#define INSTANT_HP_BAR_DROP 32767 +#define INSTANT_HP_BAR_DROP 0x7FFF #define PARTY_SUMM_SKIP_DRAW_DELAY (1 << 7) diff --git a/include/trade.h b/include/trade.h index 65b6f335cf59..d63749653a09 100644 --- a/include/trade.h +++ b/include/trade.h @@ -17,7 +17,7 @@ int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct Rf int CanSpinTradeMon(struct Pokemon *, u16); void InitTradeSequenceBgGpuRegs(void); void LinkTradeDrawWindow(void); -void InitTradeBg(void); +void LoadTradeAnimGfx(void); void DrawTextOnTradeWindow(u8, const u8 *, u8); #endif //GUARD_TRADE_H diff --git a/src/battle_message.c b/src/battle_message.c index 20f07d6c3068..677bb2fe3863 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1010,7 +1010,7 @@ const u16 gStatUpStringIds[] = [B_MSG_STAT_WONT_INCREASE] = STRINGID_STATSWONTINCREASE, [B_MSG_STAT_ROSE_EMPTY] = STRINGID_EMPTYSTRING3, [B_MSG_STAT_ROSE_ITEM] = STRINGID_USINGITEMSTATOFPKMNROSE, - [B_MSG_USED_DIRE_HIT] = STRINGID_PKMNUSEDXTOGETPUMPED, + [B_MSG_USED_DIRE_HIT] = STRINGID_PKMNUSEDXTOGETPUMPED, }; const u16 gStatDownStringIds[] = diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 20a613c76821..10f11bf636f3 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1176,8 +1176,8 @@ static void Cmd_accuracycheck(void) if ((Random() % 100 + 1) > calc) { gMoveResultFlags |= MOVE_RESULT_MISSED; - if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && - (gBattleMoves[move].target == MOVE_TARGET_BOTH || gBattleMoves[move].target == MOVE_TARGET_FOES_AND_ALLY)) + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE + && (gBattleMoves[move].target == MOVE_TARGET_BOTH || gBattleMoves[move].target == MOVE_TARGET_FOES_AND_ALLY)) gBattleCommunication[MISS_TYPE] = B_MSG_AVOIDED_ATK; else gBattleCommunication[MISS_TYPE] = B_MSG_MISSED; @@ -1498,7 +1498,8 @@ static void CheckWonderGuardAndLevitate(void) } } -static void ModulateDmgByType2(u8 multiplier, u16 move, u8 *flags) // same as ModulateDmgByType except different arguments +// Same as ModulateDmgByType except different arguments +static void ModulateDmgByType2(u8 multiplier, u16 move, u8 *flags) { gBattleMoveDamage = gBattleMoveDamage * multiplier / 10; if (gBattleMoveDamage == 0 && multiplier != 0) @@ -1696,7 +1697,8 @@ static void Cmd_adjustnormaldamage(void) gBattlescriptCurrInstr++; } -static void Cmd_adjustnormaldamage2(void) // The same as adjustnormaldamage except it doesn't check for false swipe move effect. +// The same as adjustnormaldamage except it doesn't check for false swipe move effect. +static void Cmd_adjustnormaldamage2(void) { u8 holdEffect, param; @@ -2717,20 +2719,20 @@ void SetMoveEffect(bool8 primary, u8 certain) side = GetBattlerSide(gBattlerAttacker); if (GetBattlerSide(gBattlerAttacker) == B_SIDE_OPPONENT && !(gBattleTypeFlags & - (BATTLE_TYPE_EREADER_TRAINER - | BATTLE_TYPE_FRONTIER - | BATTLE_TYPE_LINK - | BATTLE_TYPE_RECORDED_LINK - | BATTLE_TYPE_SECRET_BASE))) + (BATTLE_TYPE_EREADER_TRAINER + | BATTLE_TYPE_FRONTIER + | BATTLE_TYPE_LINK + | BATTLE_TYPE_RECORDED_LINK + | BATTLE_TYPE_SECRET_BASE))) { gBattlescriptCurrInstr++; } else if (!(gBattleTypeFlags & - (BATTLE_TYPE_EREADER_TRAINER - | BATTLE_TYPE_FRONTIER - | BATTLE_TYPE_LINK - | BATTLE_TYPE_RECORDED_LINK - | BATTLE_TYPE_SECRET_BASE)) + (BATTLE_TYPE_EREADER_TRAINER + | BATTLE_TYPE_FRONTIER + | BATTLE_TYPE_LINK + | BATTLE_TYPE_RECORDED_LINK + | BATTLE_TYPE_SECRET_BASE)) && (gWishFutureKnock.knockedOffMons[side] & gBitTable[gBattlerPartyIndexes[gBattlerAttacker]])) { gBattlescriptCurrInstr++; @@ -3931,7 +3933,8 @@ static void Cmd_end2(void) gCurrentActionFuncId = B_ACTION_TRY_FINISH; } -static void Cmd_end3(void) // pops the main function stack +// Pops the main function stack +static void Cmd_end3(void) { BattleScriptPop(); if (gBattleResources->battleCallbackStack->size != 0) @@ -5824,7 +5827,8 @@ static void Cmd_cancelallactions(void) gBattlescriptCurrInstr++; } -static void Cmd_adjustsetdamage(void) // The same as adjustnormaldamage, except there's no random damage multiplier. +// The same as adjustnormaldamage, except there's no random damage multiplier. +static void Cmd_adjustsetdamage(void) { u8 holdEffect, param; @@ -6462,7 +6466,8 @@ static void Cmd_various(void) gBattlescriptCurrInstr += 3; } -static void Cmd_setprotectlike(void) // protect and endure + // Protect and Endure +static void Cmd_setprotectlike(void) { bool8 notLastTurn = TRUE; u16 lastMove = gLastResultingMoves[gBattlerAttacker]; @@ -7036,12 +7041,9 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gBattleTextBuff2[3] = STRINGID_STATSHARPLY >> 8; index = 4; } - gBattleTextBuff2[index] = B_BUFF_STRING; - index++; - gBattleTextBuff2[index] = STRINGID_STATROSE; - index++; - gBattleTextBuff2[index] = STRINGID_STATROSE >> 8; - index++; + gBattleTextBuff2[index++] = B_BUFF_STRING; + gBattleTextBuff2[index++] = STRINGID_STATROSE; + gBattleTextBuff2[index++] = STRINGID_STATROSE >> 8; gBattleTextBuff2[index] = B_BUFF_EOS; if (gBattleMons[gActiveBattler].statStages[statId] == MAX_STAT_STAGE) @@ -7072,7 +7074,8 @@ static void Cmd_statbuffchange(void) gBattlescriptCurrInstr += 6; } -static void Cmd_normalisebuffs(void) // haze +// Haze +static void Cmd_normalisebuffs(void) { s32 i, j; @@ -7175,15 +7178,15 @@ static void Cmd_forcerandomswitch(void) { if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT) { - firstMonId = 3; - lastMonId = 6; + firstMonId = PARTY_SIZE / 2; + lastMonId = PARTY_SIZE; } else { firstMonId = 0; - lastMonId = 3; + lastMonId = PARTY_SIZE / 2; } - monsCount = 3; + monsCount = PARTY_SIZE / 2; minNeeded = 1; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; @@ -7193,15 +7196,15 @@ static void Cmd_forcerandomswitch(void) { if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gBattlerTarget)) == B_FLANK_RIGHT) { - firstMonId = 3; - lastMonId = 6; + firstMonId = PARTY_SIZE / 2; + lastMonId = PARTY_SIZE; } else { firstMonId = 0; - lastMonId = 3; + lastMonId = PARTY_SIZE / 2; } - monsCount = 3; + monsCount = PARTY_SIZE / 2; minNeeded = 1; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; @@ -7211,23 +7214,23 @@ static void Cmd_forcerandomswitch(void) if (GetBattlerSide(gBattlerTarget) == B_SIDE_PLAYER) { firstMonId = 0; - lastMonId = 6; - monsCount = 6; + lastMonId = PARTY_SIZE; + monsCount = PARTY_SIZE; minNeeded = 2; // since there are two opponents, it has to be a double battle } else { if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT) { - firstMonId = 3; - lastMonId = 6; + firstMonId = PARTY_SIZE / 2; + lastMonId = PARTY_SIZE; } else { firstMonId = 0; - lastMonId = 3; + lastMonId = PARTY_SIZE / 2; } - monsCount = 3; + monsCount = PARTY_SIZE / 2; minNeeded = 1; } battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; @@ -7236,8 +7239,8 @@ static void Cmd_forcerandomswitch(void) else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { firstMonId = 0; - lastMonId = 6; - monsCount = 6; + lastMonId = PARTY_SIZE; + monsCount = PARTY_SIZE; minNeeded = 2; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; @@ -7245,8 +7248,8 @@ static void Cmd_forcerandomswitch(void) else { firstMonId = 0; - lastMonId = 6; - monsCount = 6; + lastMonId = PARTY_SIZE; + monsCount = PARTY_SIZE; minNeeded = 1; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; // there is only one pokemon out in single battles battler1PartyId = gBattlerPartyIndexes[gBattlerTarget]; @@ -7306,7 +7309,8 @@ static void Cmd_forcerandomswitch(void) } } -static void Cmd_tryconversiontypechange(void) // randomly changes user's type to one of its moves' type +// Randomly changes user's type to one of its moves' type +static void Cmd_tryconversiontypechange(void) { u8 validMoves = 0; u8 moveChecked; @@ -7493,7 +7497,8 @@ static void Cmd_tryKO(void) } } -static void Cmd_damagetohalftargethp(void) // super fang +// Super Fang +static void Cmd_damagetohalftargethp(void) { gBattleMoveDamage = gBattleMons[gBattlerTarget].hp / 2; if (gBattleMoveDamage == 0) @@ -7875,7 +7880,8 @@ static void Cmd_counterdamagecalculator(void) } } -static void Cmd_mirrorcoatdamagecalculator(void) // a copy of Cmd with the physical -> special field changes +// A copy of Cmd with the physical -> special field changes +static void Cmd_mirrorcoatdamagecalculator(void) { u8 sideAttacker = GetBattlerSide(gBattlerAttacker); u8 sideTarget = GetBattlerSide(gProtectStructs[gBattlerAttacker].specialBattlerId); @@ -7979,7 +7985,8 @@ static void Cmd_painsplitdmgcalc(void) } } -static void Cmd_settypetorandomresistance(void) // conversion 2 +// Conversion 2 +static void Cmd_settypetorandomresistance(void) { if (gLastLandedMoves[gBattlerAttacker] == MOVE_NONE || gLastLandedMoves[gBattlerAttacker] == MOVE_UNAVAILABLE) @@ -8047,7 +8054,8 @@ static void Cmd_setalwayshitflag(void) gBattlescriptCurrInstr++; } -static void Cmd_copymovepermanently(void) // sketch +// Sketch +static void Cmd_copymovepermanently(void) { gChosenMove = MOVE_UNAVAILABLE; @@ -8677,7 +8685,8 @@ static void Cmd_setsunny(void) gBattlescriptCurrInstr++; } -static void Cmd_maxattackhalvehp(void) // belly drum +// Belly Drum +static void Cmd_maxattackhalvehp(void) { u32 halfHp = gBattleMons[gBattlerAttacker].maxHP / 2; @@ -8700,7 +8709,8 @@ static void Cmd_maxattackhalvehp(void) // belly drum } } -static void Cmd_copyfoestats(void) // psych up +// Psych Up +static void Cmd_copyfoestats(void) { s32 i; @@ -8978,7 +8988,8 @@ static void Cmd_trymemento(void) } } -static void Cmd_setforcedtarget(void) // follow me +// Follow Me +static void Cmd_setforcedtarget(void) { gSideTimers[GetBattlerSide(gBattlerAttacker)].followmeTimer = 1; gSideTimers[GetBattlerSide(gBattlerAttacker)].followmeTarget = gBattlerAttacker; @@ -8993,7 +9004,8 @@ static void Cmd_setcharge(void) gBattlescriptCurrInstr++; } -static void Cmd_callterrainattack(void) // nature power +// Nature Power +static void Cmd_callterrainattack(void) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; gCurrentMove = sNaturePowerMoves[gBattleTerrain]; @@ -9002,7 +9014,8 @@ static void Cmd_callterrainattack(void) // nature power gBattlescriptCurrInstr++; } -static void Cmd_cureifburnedparalysedorpoisoned(void) // refresh +// Refresh +static void Cmd_cureifburnedparalysedorpoisoned(void) { if (gBattleMons[gBattlerAttacker].status1 & (STATUS1_POISON | STATUS1_BURN | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON)) { @@ -9071,7 +9084,8 @@ static void Cmd_trysethelpinghand(void) } } -static void Cmd_tryswapitems(void) // trick +// Trick +static void Cmd_tryswapitems(void) { // opponent can't swap items with player in regular battles if (gBattleTypeFlags & BATTLE_TYPE_TRAINER_HILL @@ -9158,7 +9172,8 @@ static void Cmd_tryswapitems(void) // trick } } -static void Cmd_trycopyability(void) // role play +// Role Play +static void Cmd_trycopyability(void) { if (gBattleMons[gBattlerTarget].ability != ABILITY_NONE && gBattleMons[gBattlerTarget].ability != ABILITY_WONDER_GUARD) @@ -9206,7 +9221,8 @@ static void Cmd_trywish(void) } } -static void Cmd_trysetroots(void) // ingrain +// Ingrain +static void Cmd_trysetroots(void) { if (gStatuses3[gBattlerAttacker] & STATUS3_ROOTED) { @@ -9271,7 +9287,8 @@ static void Cmd_scaledamagebyhealthratio(void) gBattlescriptCurrInstr++; } -static void Cmd_tryswapabilities(void) // skill swap +// Skill Swap +static void Cmd_tryswapabilities(void) { if ((gBattleMons[gBattlerAttacker].ability == ABILITY_NONE && gBattleMons[gBattlerTarget].ability == ABILITY_NONE) @@ -9431,7 +9448,8 @@ static void Cmd_trysetmagiccoat(void) } } -static void Cmd_trysetsnatch(void) // snatch +// Snatch +static void Cmd_trysetsnatch(void) { gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1; if (gCurrentTurnActionNumber == gBattlersCount - 1) // moves last turn @@ -9635,7 +9653,8 @@ static void Cmd_trycastformdatachange(void) } } -static void Cmd_settypebasedhalvers(void) // water and mud sport +// Water and Mud Sport +static void Cmd_settypebasedhalvers(void) { bool8 worked = FALSE; @@ -9648,7 +9667,7 @@ static void Cmd_settypebasedhalvers(void) // water and mud sport worked = TRUE; } } - else // water sport + else // Water Sport { if (!(gStatuses3[gBattlerAttacker] & STATUS3_WATERSPORT)) { @@ -9759,7 +9778,8 @@ static void Cmd_snatchsetbattlers(void) gBattlescriptCurrInstr++; } -static void Cmd_removelightscreenreflect(void) // brick break +// Brick Break +static void Cmd_removelightscreenreflect(void) { u8 opposingSide = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 1e26c596159d..48b514e636de 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -410,7 +410,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) gMain.state++; break; case 2: - InitTradeBg(); + LoadTradeAnimGfx(); gMain.state++; break; case 3: diff --git a/src/trade.c b/src/trade.c index 25614c91ae77..dc0774e3a952 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4821,7 +4821,7 @@ static void CheckPartnersMonForRibbons(void) FlagSet(FLAG_SYS_RIBBON_GET); } -void InitTradeBg(void) +void LoadTradeAnimGfx(void) { InitTradeBgInternal(); } From 2214b01954da5ee68c1c9e2f3eb3213c0262486e Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 17:07:56 -0400 Subject: [PATCH 647/762] Forgot to include this fix --- src/battle_script_commands.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 10f11bf636f3..575b9c987aee 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -7015,12 +7015,9 @@ static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8 flags, const u8 *BS_ptr) gBattleTextBuff2[3] = STRINGID_STATHARSHLY >> 8; index = 4; } - gBattleTextBuff2[index] = B_BUFF_STRING; - index++; - gBattleTextBuff2[index] = STRINGID_STATFELL; - index++; - gBattleTextBuff2[index] = STRINGID_STATFELL >> 8; - index++; + gBattleTextBuff2[index++] = B_BUFF_STRING; + gBattleTextBuff2[index++] = STRINGID_STATFELL; + gBattleTextBuff2[index++] = STRINGID_STATFELL >> 8; gBattleTextBuff2[index] = B_BUFF_EOS; if (gBattleMons[gActiveBattler].statStages[statId] == MIN_STAT_STAGE) From 2e1bf0d9654354f89a696915e5d79811c283fde8 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 21:27:39 -0400 Subject: [PATCH 648/762] OamData mosaic FALSE --- gflib/sprite.c | 2 +- src/battle_anim_smokescreen.c | 4 ++-- src/battle_arena.c | 2 +- src/battle_bg.c | 4 ++-- src/battle_dome.c | 8 ++++---- src/battle_factory_screen.c | 16 ++++++++-------- src/battle_interface.c | 8 ++++---- src/battle_pyramid_bag.c | 2 +- src/battle_script_commands.c | 2 +- src/battle_transition.c | 2 +- src/battle_transition_frontier.c | 2 +- src/berry_blender.c | 10 +++++----- src/contest.c | 4 ++-- src/contest_util.c | 6 +++--- src/credits.c | 2 +- src/data/party_menu.h | 8 ++++---- src/decoration.c | 2 +- src/dodrio_berry_picking.c | 8 ++++---- src/easy_chat.c | 12 ++++++------ src/egg_hatch.c | 4 ++-- src/evolution_graphics.c | 2 +- src/field_weather_effect.c | 8 ++++---- src/fldeff_cut.c | 2 +- src/hall_of_fame.c | 2 +- src/intro.c | 24 ++++++++++++------------ src/item_icon.c | 2 +- src/item_menu_icons.c | 10 +++++----- src/list_menu.c | 4 ++-- src/menu_helpers.c | 2 +- src/menu_specialized.c | 4 ++-- src/minigame_countdown.c | 4 ++-- src/mirage_tower.c | 6 +++--- src/mon_markings.c | 6 +++--- src/money.c | 2 +- src/move_relearner.c | 6 +++--- src/pokeball.c | 2 +- src/pokeblock.c | 2 +- src/pokeblock_feed.c | 2 +- src/pokedex.c | 12 ++++++------ src/pokemon.c | 2 +- src/pokemon_jump.c | 10 +++++----- src/pokemon_storage_system.c | 8 ++++---- src/pokemon_summary_screen.c | 6 +++--- src/pokenav_ribbons_summary.c | 2 +- src/rayquaza_scene.c | 16 ++++++++-------- src/reset_rtc_screen.c | 2 +- src/rotating_gate.c | 4 ++-- src/save_failed_screen.c | 2 +- src/slot_machine.c | 16 ++++++++-------- src/starter_choose.c | 6 +++--- src/title_screen.c | 8 ++++---- src/trainer_see.c | 2 +- 52 files changed, 147 insertions(+), 147 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 28b33dfff6f7..9fc597cc3b21 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -105,7 +105,7 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *); .y = DISPLAY_HEIGHT, \ .affineMode = 0, \ .objMode = 0, \ - .mosaic = 0, \ + .mosaic = FALSE, \ .bpp = 0, \ .shape = SPRITE_SHAPE(8x8), \ .x = DISPLAY_WIDTH + 64, \ diff --git a/src/battle_anim_smokescreen.c b/src/battle_anim_smokescreen.c index c7be8d41c4c4..e395be5f8411 100644 --- a/src/battle_anim_smokescreen.c +++ b/src/battle_anim_smokescreen.c @@ -61,7 +61,7 @@ static const struct OamData sOamData_SmokescreenImpact = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -134,7 +134,7 @@ static const struct OamData sOamData_EnemyShadow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/battle_arena.c b/src/battle_arena.c index e405e2795021..92b7c66a3a8c 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -404,7 +404,7 @@ static const struct OamData sJudgementIconOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/battle_bg.c b/src/battle_bg.c index 94d4c194e078..ace4ea24fa11 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -41,7 +41,7 @@ static const struct OamData sVsLetter_V_OamData = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -58,7 +58,7 @@ static const struct OamData sVsLetter_S_OamData = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/battle_dome.c b/src/battle_dome.c index 23b5ebdfcd1b..e82470d9aed7 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -894,7 +894,7 @@ static const struct OamData sOamData_TourneyTreePokeball = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -912,7 +912,7 @@ static const struct OamData sOamData_TourneyTreeCloseButton = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -929,7 +929,7 @@ static const struct OamData sOamData_VerticalScrollArrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x8), .x = 0, @@ -946,7 +946,7 @@ static const struct OamData sOamData_HorizontalScrollArrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x16), .x = 0, diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c index e2b626a6348e..0e3ebaeff87d 100644 --- a/src/battle_factory_screen.c +++ b/src/battle_factory_screen.c @@ -410,7 +410,7 @@ static const struct OamData sOam_Select_Pokeball = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -427,7 +427,7 @@ static const struct OamData sOam_Select_Arrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -444,7 +444,7 @@ static const struct OamData sOam_Select_MenuHighlight = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -461,7 +461,7 @@ static const struct OamData sOam_Select_MonPicBgAnim = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_BLEND, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -661,7 +661,7 @@ static const struct OamData sOam_Swap_Pokeball = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -678,7 +678,7 @@ static const struct OamData sOam_Swap_Arrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -695,7 +695,7 @@ static const struct OamData sOam_Swap_MenuHighlight = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -712,7 +712,7 @@ static const struct OamData sOam_Swap_MonPicBgAnim = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_BLEND, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/battle_interface.c b/src/battle_interface.c index 1fc25f265047..ed4aa9ed8a17 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -194,7 +194,7 @@ static const struct OamData sOamData_64x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -266,7 +266,7 @@ static const struct OamData sOamData_Healthbar = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, @@ -635,7 +635,7 @@ static const struct OamData sOamData_Unused64x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -652,7 +652,7 @@ static const struct OamData sOamData_StatusSummaryBalls = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 4eca1598537b..de460c131fdf 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -309,7 +309,7 @@ static const struct OamData sOamData_PyramidBag = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 575b9c987aee..01d8a489def5 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -693,7 +693,7 @@ static const struct OamData sOamData_MonIconOnLvlUpBanner = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, diff --git a/src/battle_transition.c b/src/battle_transition.c index 507d5f230e00..bc289efa7f8d 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -827,7 +827,7 @@ static const struct OamData sOam_UnusedBrendanLass = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c index a1a39abdab78..088865dbab90 100644 --- a/src/battle_transition_frontier.c +++ b/src/battle_transition_frontier.c @@ -58,7 +58,7 @@ static const struct OamData sOamData_LogoCircles = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/berry_blender.c b/src/berry_blender.c index efede23bde35..d099a14ba21c 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -456,7 +456,7 @@ static const struct OamData sOam_PlayerArrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -599,7 +599,7 @@ static const struct OamData sOam_ScoreSymbols = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -668,7 +668,7 @@ static const struct OamData sOam_Particles = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -755,7 +755,7 @@ static const struct OamData sOam_CountdownNumbers = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -813,7 +813,7 @@ static const struct OamData sOam_Start = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, diff --git a/src/contest.c b/src/contest.c index ae0b5c8c17de..6dd2264d92de 100644 --- a/src/contest.c +++ b/src/contest.c @@ -388,7 +388,7 @@ static const struct OamData sOam_SliderHeart = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -473,7 +473,7 @@ static const struct OamData sOam_NextTurn = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/contest_util.c b/src/contest_util.c index 941a691a11c5..40ef7a939aa8 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -196,7 +196,7 @@ static const struct OamData sOamData_ResultsTextWindow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -242,7 +242,7 @@ static const struct OamData sOamData_Confetti = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -365,7 +365,7 @@ static const struct OamData sOamData_WirelessIndicatorWindow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/credits.c b/src/credits.c index 33362fb38b2f..c318595999db 100644 --- a/src/credits.c +++ b/src/credits.c @@ -286,7 +286,7 @@ static const struct OamData sOamData_MonBg = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/data/party_menu.h b/src/data/party_menu.h index 7735dae58dc5..fdceb9b7d985 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -867,7 +867,7 @@ static const struct OamData sOamData_HeldItem = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -923,7 +923,7 @@ static const struct OamData sOamData_MenuPokeball = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -980,7 +980,7 @@ static const struct OamData sOamData_MenuPokeballSmall = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -1061,7 +1061,7 @@ static const struct OamData sOamData_StatusCondition = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/decoration.c b/src/decoration.c index 2838beb1e1cc..5eb8134dd2b3 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1985,7 +1985,7 @@ static void SetDecorSelectionBoxOamAttributes(u8 decorShape) sDecorSelectorOam.y = 0; sDecorSelectorOam.affineMode = ST_OAM_AFFINE_OFF; sDecorSelectorOam.objMode = ST_OAM_OBJ_NORMAL; - sDecorSelectorOam.mosaic = 0; + sDecorSelectorOam.mosaic = FALSE; sDecorSelectorOam.bpp = ST_OAM_4BPP; sDecorSelectorOam.shape = sDecorationMovementInfo[decorShape].shape; sDecorSelectorOam.x = 0; diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 4c84f378de24..37cba02f5058 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3608,7 +3608,7 @@ static const struct OamData sOamData_Dodrio = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -3626,7 +3626,7 @@ static const struct OamData sOamData_16x16_Priority0 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -3643,7 +3643,7 @@ static const struct OamData sOamData_Berry = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -3660,7 +3660,7 @@ static const struct OamData sOamData_Cloud = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, diff --git a/src/easy_chat.c b/src/easy_chat.c index 2bbd16cb27a9..91b44fb26b16 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -932,7 +932,7 @@ static const struct OamData sOamData_TriangleCursor = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -958,7 +958,7 @@ static const struct OamData sOamData_RectangleCursor = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -1019,7 +1019,7 @@ static const struct OamData sOamData_ModeWindow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -1089,7 +1089,7 @@ static const struct OamData sOamData_ButtonWindow = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -1115,7 +1115,7 @@ static const struct OamData sOamData_StartSelectButton = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, @@ -1131,7 +1131,7 @@ static const struct OamData sOamData_ScrollIndicator = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/egg_hatch.c b/src/egg_hatch.c index cd688997924f..2e9d55d16f53 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -91,7 +91,7 @@ static const struct OamData sOamData_Egg = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -178,7 +178,7 @@ static const struct OamData sOamData_EggShard = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index 01465f741179..a86f16201f71 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -58,7 +58,7 @@ static const struct OamData sOamData_EvoSparkle = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 8349de559f0c..6df10f3a26c6 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -58,7 +58,7 @@ static const struct OamData sCloudSpriteOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_BLEND, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -393,7 +393,7 @@ static const struct OamData sRainSpriteOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x32), .x = 0, @@ -839,7 +839,7 @@ static const struct OamData sSnowflakeSpriteOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -1272,7 +1272,7 @@ static const struct OamData sOamData_FogH = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_BLEND, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 9129c5208cb7..0641c6519c24 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -93,7 +93,7 @@ static const struct OamData sOamData_CutGrass = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index d8c62d25e0e2..326402511347 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -182,7 +182,7 @@ static const struct OamData sOamData_Confetti = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/intro.c b/src/intro.c index a1d0508f4f4f..7e9a751690ee 100644 --- a/src/intro.c +++ b/src/intro.c @@ -216,7 +216,7 @@ static const struct OamData sOamData_Sparkle = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -284,7 +284,7 @@ static const struct OamData sOamData_Volbeat = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -320,7 +320,7 @@ static const struct OamData sOamData_Torchic = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -380,7 +380,7 @@ static const struct OamData sOamData_Manectric = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -428,7 +428,7 @@ static const struct OamData sOamData_Lightning = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -519,7 +519,7 @@ static const struct OamData sOamData_Bubbles = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x32), .x = 0, @@ -558,7 +558,7 @@ static const struct OamData sOamData_WaterDrop = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -660,7 +660,7 @@ static const struct OamData sOamData_GameFreakLetter = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -676,7 +676,7 @@ static const struct OamData sOamData_PresentsLetter = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -692,7 +692,7 @@ static const struct OamData sOamData_GameFreakLogo = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_BLEND, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x64), .x = 0, @@ -931,7 +931,7 @@ static const struct OamData sOamData_FlygonSilhouette = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -983,7 +983,7 @@ static const struct OamData sOamData_RayquazaOrb = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/item_icon.c b/src/item_icon.c index dc69d0331863..274ed03b3637 100644 --- a/src/item_icon.c +++ b/src/item_icon.c @@ -18,7 +18,7 @@ static const struct OamData sOamData_ItemIcon = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 1ceef9464a7b..e5d2d68ed302 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -43,7 +43,7 @@ static const struct OamData sBagOamData = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -158,7 +158,7 @@ static const struct OamData sRotatingBallOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -229,7 +229,7 @@ static const struct OamData sBerryPicOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -246,7 +246,7 @@ static const struct OamData sBerryPicRotatingOamData = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -386,7 +386,7 @@ static const struct OamData sBerryCheckCircleOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/list_menu.c b/src/list_menu.c index e6736cacf826..64692ce1f641 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -127,7 +127,7 @@ static const struct OamData sOamData_ScrollArrowIndicator = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -267,7 +267,7 @@ static const struct OamData sOamData_RedArrowCursor = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 949a3d89a81c..50933b2e4693 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -32,7 +32,7 @@ static const struct OamData sOamData_SwapLine = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/menu_specialized.c b/src/menu_specialized.c index a8231f3fbb28..42c80b5ee3ec 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -1124,7 +1124,7 @@ static const struct OamData sOam_ConditionMonPic = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -1141,7 +1141,7 @@ static const struct OamData sOam_ConditionSelectionIcon = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 4c72136d4c7f..5aaed0cb2365 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -618,7 +618,7 @@ static const struct OamData sOamData_Numbers = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -635,7 +635,7 @@ static const struct OamData sOamData_Start = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 6cd6e565e7e2..e7805ff69051 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -133,7 +133,7 @@ static const struct OamData sOamData_FallingFossil = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -189,7 +189,7 @@ static const struct OamData sOamData_CeilingCrumbleSmall = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -227,7 +227,7 @@ static const struct OamData sOamData_CeilingCrumbleLarge = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/mon_markings.c b/src/mon_markings.c index 1e03179e9458..74cb25b9b3cd 100644 --- a/src/mon_markings.c +++ b/src/mon_markings.c @@ -30,7 +30,7 @@ static const struct OamData sOamData_MenuWindow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -48,7 +48,7 @@ static const struct OamData sOamData_8x8 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -157,7 +157,7 @@ static const struct OamData sOamData_MarkingCombo = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/money.c b/src/money.c index b1f4afbf84b8..88e1fea6400e 100644 --- a/src/money.c +++ b/src/money.c @@ -22,7 +22,7 @@ static const struct OamData sOamData_MoneyLabel = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, diff --git a/src/move_relearner.c b/src/move_relearner.c index 2b925135f04c..e2a88d412248 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -185,7 +185,7 @@ static const struct OamData sHeartSpriteOamData = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -202,7 +202,7 @@ static const struct OamData sUnusedOam1 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x16), .x = 0, @@ -219,7 +219,7 @@ static const struct OamData sUnusedOam2 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x8), .x = 0, diff --git a/src/pokeball.c b/src/pokeball.c index de23ac1eff81..2c069c92c51d 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -94,7 +94,7 @@ static const struct OamData sBallOamData = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/pokeblock.c b/src/pokeblock.c index 03a8f7b0d5a8..cf0513f80e7b 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -237,7 +237,7 @@ static const struct OamData sOamData_PokeblockCase = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 7e71f255bac6..7d839455f921 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -545,7 +545,7 @@ static const struct OamData sOamData_Pokeblock = .y = 0, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/pokedex.c b/src/pokedex.c index fceb065aa26f..522bbcb56e21 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -308,7 +308,7 @@ static const struct OamData sOamData_ScrollBar = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -325,7 +325,7 @@ static const struct OamData sOamData_ScrollArrow = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x8), .x = 0, @@ -342,7 +342,7 @@ static const struct OamData sOamData_InterfaceText = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -359,7 +359,7 @@ static const struct OamData sOamData_RotatingPokeBall = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_WINDOW, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -376,7 +376,7 @@ static const struct OamData sOamData_SeenOwnText = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -393,7 +393,7 @@ static const struct OamData sOamData_Dex8x16 = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x16), .x = 0, diff --git a/src/pokemon.c b/src/pokemon.c index 3cd9836670b1..d9976b6a208f 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -2119,7 +2119,7 @@ static const struct OamData sOamData_64x64 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index ada9a7948650..98f1eee06ba0 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -2431,7 +2431,7 @@ static const struct OamData sOamData_JumpMon = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -2448,7 +2448,7 @@ static const struct OamData sOamData_Vine16x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x32), .x = 0, @@ -2465,7 +2465,7 @@ static const struct OamData sOamData_Vine32x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -2482,7 +2482,7 @@ static const struct OamData sOamData_Vine32x16 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -2636,7 +2636,7 @@ static const struct OamData sOamData_Star = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 2073712d1515..7eab5da97694 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1113,7 +1113,7 @@ static const struct OamData sOamData_DisplayMon = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -1130,7 +1130,7 @@ static const struct OamData sOamData_Waveform = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x8), .x = 0, @@ -1206,7 +1206,7 @@ static const struct OamData sOamData_MonIcon = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -8643,7 +8643,7 @@ static const struct OamData sOamData_ItemIcon = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 6a4612a20235..bdbca31d02bf 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -736,7 +736,7 @@ static const struct OamData sOamData_MoveTypes = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -912,7 +912,7 @@ static const struct OamData sOamData_MoveSelector = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -1002,7 +1002,7 @@ static const struct OamData sOamData_StatusCondition = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/pokenav_ribbons_summary.c b/src/pokenav_ribbons_summary.c index 581228ff41fb..15f9db5e6a0d 100644 --- a/src/pokenav_ribbons_summary.c +++ b/src/pokenav_ribbons_summary.c @@ -1154,7 +1154,7 @@ static const struct OamData sOamData_RibbonIconBig = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index e3669e1f1214..83298b03df45 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -154,7 +154,7 @@ static const struct OamData sOam_64x64 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -171,7 +171,7 @@ static const struct OamData sOam_32x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -188,7 +188,7 @@ static const struct OamData sOam_64x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -205,7 +205,7 @@ static const struct OamData sOam_32x16 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x16), .x = 0, @@ -222,7 +222,7 @@ static const struct OamData sOam_16x8 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x8), .x = 0, @@ -239,7 +239,7 @@ static const struct OamData sOam_16x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x32), .x = 0, @@ -256,7 +256,7 @@ static const struct OamData sOam_16x16 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -273,7 +273,7 @@ static const struct OamData sOam_32x8 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, diff --git a/src/reset_rtc_screen.c b/src/reset_rtc_screen.c index 25e3a7330201..0a9ec4911326 100644 --- a/src/reset_rtc_screen.c +++ b/src/reset_rtc_screen.c @@ -159,7 +159,7 @@ static const struct OamData sOamData_Arrow = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, diff --git a/src/rotating_gate.c b/src/rotating_gate.c index e2fd575a1837..5d03c486e472 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -233,7 +233,7 @@ static const struct OamData sOamData_RotatingGateLarge = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, @@ -250,7 +250,7 @@ static const struct OamData sOamData_RotatingGateRegular = .y = 0, .affineMode = ST_OAM_AFFINE_NORMAL, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index 9b32a938ffa3..877482728f6b 100644 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -50,7 +50,7 @@ static const struct OamData sClockOamData = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, diff --git a/src/slot_machine.c b/src/slot_machine.c index ffae7f0f42ab..dd2622e2be30 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -5672,7 +5672,7 @@ static const struct OamData sOam_8x8 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x8), .x = 0, @@ -5689,7 +5689,7 @@ static const struct OamData sOam_8x16 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(8x16), .x = 0, @@ -5706,7 +5706,7 @@ static const struct OamData sOam_16x16 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, @@ -5723,7 +5723,7 @@ static const struct OamData sOam_16x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x32), .x = 0, @@ -5740,7 +5740,7 @@ static const struct OamData sOam_32x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -5757,7 +5757,7 @@ static const struct OamData sOam_32x64 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x64), .x = 0, @@ -5774,7 +5774,7 @@ static const struct OamData sOam_64x32 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -5791,7 +5791,7 @@ static const struct OamData sOam_64x64 = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/starter_choose.c b/src/starter_choose.c index 81a88e7714eb..cbe0c7ee61a4 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -160,7 +160,7 @@ static const struct OamData sOam_Hand = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -177,7 +177,7 @@ static const struct OamData sOam_Pokeball = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x32), .x = 0, @@ -194,7 +194,7 @@ static const struct OamData sOam_StarterCircle = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_DOUBLE, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/title_screen.c b/src/title_screen.c index d64ee6024fa4..25a1d60d055a 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -105,7 +105,7 @@ static const struct OamData sVersionBannerLeftOamData = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_8BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -122,7 +122,7 @@ static const struct OamData sVersionBannerRightOamData = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_8BPP, .shape = SPRITE_SHAPE(64x32), .x = 0, @@ -193,7 +193,7 @@ static const struct OamData sOamData_CopyrightBanner = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(32x8), .x = 0, @@ -305,7 +305,7 @@ static const struct OamData sPokemonLogoShineOamData = .y = DISPLAY_HEIGHT, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(64x64), .x = 0, diff --git a/src/trainer_see.c b/src/trainer_see.c index dc6c3b9177a7..439f7ac94b3a 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -115,7 +115,7 @@ static const struct OamData sOamData_Icons = .y = 0, .affineMode = ST_OAM_AFFINE_OFF, .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = 0, + .mosaic = FALSE, .bpp = ST_OAM_4BPP, .shape = SPRITE_SHAPE(16x16), .x = 0, From 40805fffc0d188f332195749d5375c7aaeb546e0 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 21:28:39 -0400 Subject: [PATCH 649/762] Space cleanup --- INSTALL.md | 20 ++++++++++---------- include/link_rfu.h | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 02851644ad34..2759124bee9e 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -44,15 +44,15 @@ WSL1 is the preferred terminal to build **pokeemerald**. The following instructi 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.
Note for advanced users... - - > You can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested. + + > 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 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).
@@ -102,8 +102,8 @@ cd /mnt/c/Users//Desktop/decomps
Notes... -> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. -> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. +> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. +> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed
@@ -213,8 +213,8 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer
Notes... -> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. -> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed +> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. +> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed
If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). @@ -283,8 +283,8 @@ Note that the directory **must exist** in the folder system. If you want to stor
Note... - -> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"` + +> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"`
If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). @@ -305,7 +305,7 @@ Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to > then you will have to install devkitARM. Install all the above packages except binutils-arm-none-eabi, and follow the instructions to > [install devkitARM on Debian/Ubuntu-based distributions](#installing-devkitarm-on-debianubuntu-based-distributions). - + ### Arch Linux Run this command as root to install the necessary packages: ```bash diff --git a/include/link_rfu.h b/include/link_rfu.h index dfbc716575c1..673b19ff9015 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -98,7 +98,7 @@ struct RfuGameCompatibilityData // anything the developers want. This struct is what GF decided to use it for. // It can be up to 13 bytes in size (RFU_GAME_NAME_LENGTH). // The player's name is sent separately as the username ("uname"), and does not -// use a struct (gHostRfuUsername). +// use a struct (gHostRfuUsername). struct __attribute__((packed, aligned(2))) RfuGameData { struct RfuGameCompatibilityData compatibility; From 897b3d07f6a9f4c8e0fe4d90a592eea2db1f7242 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 29 Jul 2022 21:29:12 -0400 Subject: [PATCH 650/762] Sync src/pokeball.c with pokefirered --- src/pokeball.c | 141 +++++++++++++++++++++++++------------------------ 1 file changed, 72 insertions(+), 69 deletions(-) diff --git a/src/pokeball.c b/src/pokeball.c index 2c069c92c51d..8eafa574429b 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -44,49 +44,49 @@ static u16 GetBattlerPokeballItemId(u8 battlerId); // rom const data -#define GFX_TAG_POKEBALL 55000 -#define GFX_TAG_GREATBALL 55001 -#define GFX_TAG_SAFARIBALL 55002 -#define GFX_TAG_ULTRABALL 55003 -#define GFX_TAG_MASTERBALL 55004 -#define GFX_TAG_NETBALL 55005 -#define GFX_TAG_DIVEBALL 55006 -#define GFX_TAG_NESTBALL 55007 -#define GFX_TAG_REPEATBALL 55008 -#define GFX_TAG_TIMERBALL 55009 -#define GFX_TAG_LUXURYBALL 55010 -#define GFX_TAG_PREMIERBALL 55011 +#define GFX_TAG_POKE_BALL 55000 +#define GFX_TAG_GREAT_BALL 55001 +#define GFX_TAG_SAFARI_BALL 55002 +#define GFX_TAG_ULTRA_BALL 55003 +#define GFX_TAG_MASTER_BALL 55004 +#define GFX_TAG_NET_BALL 55005 +#define GFX_TAG_DIVE_BALL 55006 +#define GFX_TAG_NEST_BALL 55007 +#define GFX_TAG_REPEAT_BALL 55008 +#define GFX_TAG_TIMER_BALL 55009 +#define GFX_TAG_LUXURY_BALL 55010 +#define GFX_TAG_PREMIER_BALL 55011 const struct CompressedSpriteSheet gBallSpriteSheets[POKEBALL_COUNT] = { - [BALL_POKE] = {gBallGfx_Poke, 384, GFX_TAG_POKEBALL}, - [BALL_GREAT] = {gBallGfx_Great, 384, GFX_TAG_GREATBALL}, - [BALL_SAFARI] = {gBallGfx_Safari, 384, GFX_TAG_SAFARIBALL}, - [BALL_ULTRA] = {gBallGfx_Ultra, 384, GFX_TAG_ULTRABALL}, - [BALL_MASTER] = {gBallGfx_Master, 384, GFX_TAG_MASTERBALL}, - [BALL_NET] = {gBallGfx_Net, 384, GFX_TAG_NETBALL}, - [BALL_DIVE] = {gBallGfx_Dive, 384, GFX_TAG_DIVEBALL}, - [BALL_NEST] = {gBallGfx_Nest, 384, GFX_TAG_NESTBALL}, - [BALL_REPEAT] = {gBallGfx_Repeat, 384, GFX_TAG_REPEATBALL}, - [BALL_TIMER] = {gBallGfx_Timer, 384, GFX_TAG_TIMERBALL}, - [BALL_LUXURY] = {gBallGfx_Luxury, 384, GFX_TAG_LUXURYBALL}, - [BALL_PREMIER] = {gBallGfx_Premier, 384, GFX_TAG_PREMIERBALL}, + [BALL_POKE] = {gBallGfx_Poke, 384, GFX_TAG_POKE_BALL}, + [BALL_GREAT] = {gBallGfx_Great, 384, GFX_TAG_GREAT_BALL}, + [BALL_SAFARI] = {gBallGfx_Safari, 384, GFX_TAG_SAFARI_BALL}, + [BALL_ULTRA] = {gBallGfx_Ultra, 384, GFX_TAG_ULTRA_BALL}, + [BALL_MASTER] = {gBallGfx_Master, 384, GFX_TAG_MASTER_BALL}, + [BALL_NET] = {gBallGfx_Net, 384, GFX_TAG_NET_BALL}, + [BALL_DIVE] = {gBallGfx_Dive, 384, GFX_TAG_DIVE_BALL}, + [BALL_NEST] = {gBallGfx_Nest, 384, GFX_TAG_NEST_BALL}, + [BALL_REPEAT] = {gBallGfx_Repeat, 384, GFX_TAG_REPEAT_BALL}, + [BALL_TIMER] = {gBallGfx_Timer, 384, GFX_TAG_TIMER_BALL}, + [BALL_LUXURY] = {gBallGfx_Luxury, 384, GFX_TAG_LUXURY_BALL}, + [BALL_PREMIER] = {gBallGfx_Premier, 384, GFX_TAG_PREMIER_BALL}, }; const struct CompressedSpritePalette gBallSpritePalettes[POKEBALL_COUNT] = { - [BALL_POKE] = {gBallPal_Poke, GFX_TAG_POKEBALL}, - [BALL_GREAT] = {gBallPal_Great, GFX_TAG_GREATBALL}, - [BALL_SAFARI] = {gBallPal_Safari, GFX_TAG_SAFARIBALL}, - [BALL_ULTRA] = {gBallPal_Ultra, GFX_TAG_ULTRABALL}, - [BALL_MASTER] = {gBallPal_Master, GFX_TAG_MASTERBALL}, - [BALL_NET] = {gBallPal_Net, GFX_TAG_NETBALL}, - [BALL_DIVE] = {gBallPal_Dive, GFX_TAG_DIVEBALL}, - [BALL_NEST] = {gBallPal_Nest, GFX_TAG_NESTBALL}, - [BALL_REPEAT] = {gBallPal_Repeat, GFX_TAG_REPEATBALL}, - [BALL_TIMER] = {gBallPal_Timer, GFX_TAG_TIMERBALL}, - [BALL_LUXURY] = {gBallPal_Luxury, GFX_TAG_LUXURYBALL}, - [BALL_PREMIER] = {gBallPal_Premier, GFX_TAG_PREMIERBALL}, + [BALL_POKE] = {gBallPal_Poke, GFX_TAG_POKE_BALL}, + [BALL_GREAT] = {gBallPal_Great, GFX_TAG_GREAT_BALL}, + [BALL_SAFARI] = {gBallPal_Safari, GFX_TAG_SAFARI_BALL}, + [BALL_ULTRA] = {gBallPal_Ultra, GFX_TAG_ULTRA_BALL}, + [BALL_MASTER] = {gBallPal_Master, GFX_TAG_MASTER_BALL}, + [BALL_NET] = {gBallPal_Net, GFX_TAG_NET_BALL}, + [BALL_DIVE] = {gBallPal_Dive, GFX_TAG_DIVE_BALL}, + [BALL_NEST] = {gBallPal_Nest, GFX_TAG_NEST_BALL}, + [BALL_REPEAT] = {gBallPal_Repeat, GFX_TAG_REPEAT_BALL}, + [BALL_TIMER] = {gBallPal_Timer, GFX_TAG_TIMER_BALL}, + [BALL_LUXURY] = {gBallPal_Luxury, GFX_TAG_LUXURY_BALL}, + [BALL_PREMIER] = {gBallPal_Premier, GFX_TAG_PREMIER_BALL}, }; static const struct OamData sBallOamData = @@ -206,8 +206,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = { [BALL_POKE] = { - .tileTag = GFX_TAG_POKEBALL, - .paletteTag = GFX_TAG_POKEBALL, + .tileTag = GFX_TAG_POKE_BALL, + .paletteTag = GFX_TAG_POKE_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -216,8 +216,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_GREAT] = { - .tileTag = GFX_TAG_GREATBALL, - .paletteTag = GFX_TAG_GREATBALL, + .tileTag = GFX_TAG_GREAT_BALL, + .paletteTag = GFX_TAG_GREAT_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -226,8 +226,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_SAFARI] = { - .tileTag = GFX_TAG_SAFARIBALL, - .paletteTag = GFX_TAG_SAFARIBALL, + .tileTag = GFX_TAG_SAFARI_BALL, + .paletteTag = GFX_TAG_SAFARI_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -236,8 +236,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_ULTRA] = { - .tileTag = GFX_TAG_ULTRABALL, - .paletteTag = GFX_TAG_ULTRABALL, + .tileTag = GFX_TAG_ULTRA_BALL, + .paletteTag = GFX_TAG_ULTRA_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -246,8 +246,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_MASTER] = { - .tileTag = GFX_TAG_MASTERBALL, - .paletteTag = GFX_TAG_MASTERBALL, + .tileTag = GFX_TAG_MASTER_BALL, + .paletteTag = GFX_TAG_MASTER_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -256,8 +256,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_NET] = { - .tileTag = GFX_TAG_NETBALL, - .paletteTag = GFX_TAG_NETBALL, + .tileTag = GFX_TAG_NET_BALL, + .paletteTag = GFX_TAG_NET_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -266,8 +266,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_DIVE] = { - .tileTag = GFX_TAG_DIVEBALL, - .paletteTag = GFX_TAG_DIVEBALL, + .tileTag = GFX_TAG_DIVE_BALL, + .paletteTag = GFX_TAG_DIVE_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -276,8 +276,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_NEST] = { - .tileTag = GFX_TAG_NESTBALL, - .paletteTag = GFX_TAG_NESTBALL, + .tileTag = GFX_TAG_NEST_BALL, + .paletteTag = GFX_TAG_NEST_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -286,8 +286,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_REPEAT] = { - .tileTag = GFX_TAG_REPEATBALL, - .paletteTag = GFX_TAG_REPEATBALL, + .tileTag = GFX_TAG_REPEAT_BALL, + .paletteTag = GFX_TAG_REPEAT_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -296,8 +296,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_TIMER] = { - .tileTag = GFX_TAG_TIMERBALL, - .paletteTag = GFX_TAG_TIMERBALL, + .tileTag = GFX_TAG_TIMER_BALL, + .paletteTag = GFX_TAG_TIMER_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -306,8 +306,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_LUXURY] = { - .tileTag = GFX_TAG_LUXURYBALL, - .paletteTag = GFX_TAG_LUXURYBALL, + .tileTag = GFX_TAG_LUXURY_BALL, + .paletteTag = GFX_TAG_LUXURY_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -316,8 +316,8 @@ const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = }, [BALL_PREMIER] = { - .tileTag = GFX_TAG_PREMIERBALL, - .paletteTag = GFX_TAG_PREMIERBALL, + .tileTag = GFX_TAG_PREMIER_BALL, + .paletteTag = GFX_TAG_PREMIER_BALL, .oam = &sBallOamData, .anims = sBallAnimSequences, .images = NULL, @@ -337,7 +337,7 @@ u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow) u8 taskId; gDoingBattleAnim = TRUE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive = 1; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive = TRUE; taskId = CreateTask(Task_DoPokeballSendOutAnim, 5); gTasks[taskId].tPan = pan; @@ -407,7 +407,7 @@ static void Task_DoPokeballSendOutAnim(u8 taskId) } // this will perform an unused ball throw animation - gSprites[ballSpriteId].data[0] = 0x22; + gSprites[ballSpriteId].data[0] = 34; gSprites[ballSpriteId].data[2] = GetBattlerSpriteCoord(gBattlerTarget, BATTLER_COORD_X); gSprites[ballSpriteId].data[4] = GetBattlerSpriteCoord(gBattlerTarget, BATTLER_COORD_Y) - 16; gSprites[ballSpriteId].data[5] = -40; @@ -431,7 +431,7 @@ static void SpriteCB_BallThrow(struct Sprite *sprite) u8 noOfShakes = gTasks[taskId].tThrowId; StartSpriteAnim(sprite, 1); - sprite->affineAnimPaused = 1; + sprite->affineAnimPaused = TRUE; sprite->x += sprite->x2; sprite->y += sprite->y2; sprite->x2 = 0; @@ -475,6 +475,7 @@ static void SpriteCB_BallThrow_ShrinkMon(struct Sprite *sprite) sprite->data[5]++; if (sprite->data[5] == 11) PlaySE(SE_BALL_TRADE); + if (gSprites[gBattlerSpriteIds[sprite->sBattler]].affineAnimEnded) { StartSpriteAnim(sprite, 2); @@ -644,6 +645,7 @@ static void SpriteCB_BallThrow_Shake(struct Sprite *sprite) StartSpriteAffineAnim(sprite, 2); else StartSpriteAffineAnim(sprite, 1); + PlaySE(SE_BALL); } break; @@ -864,13 +866,13 @@ static void HandleBallAnimEnd(struct Sprite *sprite) gSprites[gBattlerSpriteIds[battlerId]].y2 = 0; gDoingBattleAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = 0; + gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE; FreeSpriteOamMatrix(sprite); DestroySprite(sprite); for (doneBattlers = 0, i = 0; i < MAX_BATTLERS_COUNT; i++) { - if (gBattleSpritesDataPtr->healthBoxesData[i].ballAnimActive == 0) + if (gBattleSpritesDataPtr->healthBoxesData[i].ballAnimActive == FALSE) doneBattlers++; } if (doneBattlers == MAX_BATTLERS_COUNT) @@ -902,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 = 0; + gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE; } } @@ -1134,7 +1136,6 @@ static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite) #undef sFinalMonY #undef sTrigIdx - #define sTimer data[5] u8 CreateTradePokeballSprite(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 delay, u32 fadePalettes) @@ -1224,7 +1225,8 @@ static void SpriteCB_TradePokeballEnd(struct Sprite *sprite) #undef sFadePalsHi #undef sTimer -static void Unref_DestroySpriteAndFreeResources(struct Sprite *sprite) +// Unreferenced here and in RS, but used in FRLG, possibly by mistake. +static void DestroySpriteAndFreeResources_Ball(struct Sprite *sprite) { DestroySpriteAndFreeResources(sprite); } @@ -1306,11 +1308,12 @@ void LoadBallGfx(u8 ballId) { u16 var; - if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == 0xFFFF) + if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == TAG_NONE) { LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[ballId]); LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[ballId]); } + switch (ballId) { case BALL_DIVE: From a72d4c4168988ca70ca02e2f2ed3cd1f0ee776dd Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 30 Jul 2022 12:41:12 -0400 Subject: [PATCH 651/762] Cleanup from syncing pss and mon markings --- src/berry_crush.c | 10 +++++----- src/decoration.c | 2 +- src/dodrio_berry_picking.c | 2 +- src/field_player_avatar.c | 6 +++--- src/field_specials.c | 8 ++++---- src/hall_of_fame.c | 6 +++--- src/menu.c | 8 ++++---- src/menu_helpers.c | 2 +- src/mon_markings.c | 4 +--- src/naming_screen.c | 2 +- src/party_menu.c | 2 +- src/pokeblock_feed.c | 2 +- src/pokemon_storage_system.c | 20 +++++++++++--------- src/script_menu.c | 14 +++++++------- 14 files changed, 44 insertions(+), 44 deletions(-) diff --git a/src/berry_crush.c b/src/berry_crush.c index 88321e68dc3e..c6b5023bbd8f 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -2258,11 +2258,11 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame *game, u8 *args) if (args[1] & F_MSG_EXPAND) { StringExpandPlaceholders(gStringVar4, sMessages[args[0]]); - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } else { - AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[args[0]], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[args[0]], game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } CopyWindowToVram(0, COPYWIN_FULL); break; @@ -3242,7 +3242,7 @@ static u32 Cmd_SaveGame(struct BerryCrushGame *game, u8 *args) if (!IsLinkTaskFinished()) return 0; DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); CreateTask(Task_LinkFullSave, 0); break; @@ -3391,9 +3391,9 @@ static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args) case 0: DrawDialogueFrame(0, FALSE); if (game->playAgainState == PLAY_AGAIN_NO_BERRIES) - AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_NO_BERRIES], game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); else - AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_DROPPED], game->textSpeed, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMessages[MSG_DROPPED], game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); break; case 1: diff --git a/src/decoration.c b/src/decoration.c index 5eb8134dd2b3..eadca95b08b9 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -615,7 +615,7 @@ static void HandleDecorationActionsMenuInput(u8 taskId) static void PrintCurMainMenuDescription(void) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sSecretBasePCMenuItemDescriptions[sDecorationActionsCursorPos], 0, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sSecretBasePCMenuItemDescriptions[sDecorationActionsCursorPos], 0, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } static void DecorationMenuAction_Decorate(u8 taskId) diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 37cba02f5058..e250000a7c3f 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -5025,7 +5025,7 @@ static void Msg_SavingDontTurnOff(void) { case 0: DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); sGfx->state++; break; case 1: diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index b374e132d169..bcfeb4429be6 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1911,7 +1911,7 @@ static bool8 Fishing_MonOnHook(struct Task *task) { AlignFishingAnimationFrames(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PokemonOnHook, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PokemonOnHook, 1, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tStep++; task->tFrameCounter = 0; return FALSE; @@ -1958,7 +1958,7 @@ static bool8 Fishing_NotEvenNibble(struct Task *task) AlignFishingAnimationFrames(); StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection())); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_NotEvenANibble, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_NotEvenANibble, 1, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tStep = FISHING_SHOW_RESULT; return TRUE; } @@ -1968,7 +1968,7 @@ static bool8 Fishing_GotAway(struct Task *task) AlignFishingAnimationFrames(); StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection())); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_ItGotAway, 1, 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_ItGotAway, 1, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tStep++; return TRUE; } diff --git a/src/field_specials.c b/src/field_specials.c index 032baa234e25..34b454103893 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -2918,7 +2918,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) switch (menu) { case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); if (sFrontierExchangeCorner_Decor1[selection] == 0xFFFF) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor1[selection]); @@ -2931,7 +2931,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); if (sFrontierExchangeCorner_Decor2[selection] == 0xFFFF) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor2[selection]); @@ -2944,11 +2944,11 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) } break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_VITAMIN_VENDOR: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_VitaminsDescriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Vitamins[selection]); break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_HOLD_ITEM_VENDOR: - AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_HoldItemsDescriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_HoldItems[selection]); break; } diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 326402511347..8be5372e98c9 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -515,7 +515,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId) *lastSavedTeam = *sHofMonPtr; DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffPower, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_TrySaveData; } @@ -723,7 +723,7 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId) FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20); HallOfFame_PrintPlayerInfo(1, 2); DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_LeagueChamp, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_LeagueChamp, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_Hof_ExitOnKeyPressed; } @@ -1088,7 +1088,7 @@ static void Task_HofPC_PrintDataIsCorrupted(u8 taskId) { HofPCTopBar_Print(gText_AButtonExit, 8, TRUE); DrawDialogueFrame(0, FALSE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_HOFCorrupted, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); gTasks[taskId].func = Task_HofPC_ExitOnButtonPress; } diff --git a/src/menu.c b/src/menu.c index 8b3b82d980b3..937c39143656 100644 --- a/src/menu.c +++ b/src/menu.c @@ -191,19 +191,19 @@ void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress) { void (*callback)(struct TextPrinterTemplate *, u16) = NULL; gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress) { gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed) { gTextFlags.canABSpeedUpPrint = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, speed, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, speed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } void LoadMessageBoxAndBorderGfx(void) @@ -545,7 +545,7 @@ void RemoveMapNamePopUpWindow(void) void AddTextPrinterWithCallbackForMessage(bool8 canSpeedUp, void (*callback)(struct TextPrinterTemplate *, u16)) { gTextFlags.canABSpeedUpPrint = canSpeedUp; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), callback, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } void EraseFieldMessageBox(bool8 copyToVram) diff --git a/src/menu_helpers.c b/src/menu_helpers.c index 50933b2e4693..d810508ae403 100644 --- a/src/menu_helpers.c +++ b/src/menu_helpers.c @@ -130,7 +130,7 @@ void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 tileNum, u8 palet StringExpandPlaceholders(gStringVar4, string); gTextFlags.canABSpeedUpPrint = 1; - AddTextPrinterParameterized2(windowId, fontId, gStringVar4, textSpeed, NULL, 2, 1, 3); + AddTextPrinterParameterized2(windowId, fontId, gStringVar4, textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); sMessageNextTask = taskFunc; gTasks[taskId].func = Task_ContinueTaskAfterMessagePrints; } diff --git a/src/mon_markings.c b/src/mon_markings.c index 74cb25b9b3cd..81f898f9ba5e 100644 --- a/src/mon_markings.c +++ b/src/mon_markings.c @@ -495,7 +495,6 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base } sMenu->windowSprites[1]->y = y + 96; - // Create marking sprites template.tileTag++; template.paletteTag++; @@ -548,7 +547,6 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base { sMenu->cursorSprite = NULL; } - } static void SpriteCB_Dummy(struct Sprite *sprite) @@ -610,7 +608,7 @@ static struct Sprite *CreateMarkingComboSprite(u16 tileTag, u16 paletteTag, cons spriteId = CreateSprite(&template, 0, 0, 0); if (spriteId != MAX_SPRITES) - return &gSprites[spriteId]; + return &gSprites[spriteId]; else return NULL; } diff --git a/src/naming_screen.c b/src/naming_screen.c index 613928030360..9dcd9674207c 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -740,7 +740,7 @@ static void DisplaySentToPCMessage(void) StringExpandPlaceholders(gStringVar4, sTransferredToPCMessages[stringToDisplay]); DrawDialogueFrame(0, FALSE); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); } diff --git a/src/party_menu.c b/src/party_menu.c index c23d9e36fe11..c3a5da441ee7 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2489,7 +2489,7 @@ static void PartyMenuPrintText(const u8 *text) { DrawStdFrameWithCustomTileAndPalette(6, FALSE, 0x4F, 13); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(6, FONT_NORMAL, text, GetPlayerTextSpeedDelay(), 0, 2, 1, 3); + AddTextPrinterParameterized2(6, FONT_NORMAL, text, GetPlayerTextSpeedDelay(), 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } static void PartyMenuDisplayYesNoMenu(void) diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index 7d839455f921..5267c3b848c0 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -872,7 +872,7 @@ static void Task_PrintAtePokeblockMessage(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_Var1DisdainfullyAteVar2); gTextFlags.canABSpeedUpPrint = TRUE; - AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gStringVar4, GetPlayerTextSpeedDelay(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); gTasks[taskId].func = Task_WaitForAtePokeblockMessage; } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 7eab5da97694..822ff6770da3 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -263,6 +263,8 @@ enum { // between 2 PokĂ©mon with held items #define MAX_ITEM_ICONS 3 +#define MAX_MENU_ITEMS 7 + // IDs for the item icons affine anims enum { ITEM_ANIM_NONE, @@ -472,9 +474,9 @@ struct PokemonStorageSystemData u8 iconScrollCurColumn; s8 iconScrollDirection; // Unnecessary duplicate of scrollDirection u8 iconScrollState; - u8 iconScrollToBoxId; // Unnecessary duplicate of scrollToBoxId + u8 iconScrollToBoxId; // Unused duplicate of scrollToBoxId struct WindowTemplate menuWindow; - struct StorageMenu menuItems[7]; + struct StorageMenu menuItems[MAX_MENU_ITEMS]; u8 menuItemsCount; u8 menuWidth; u8 menuUnusedField; // Never read. @@ -1549,7 +1551,7 @@ static void Task_PCMainMenu(u8 taskId) LoadMessageBoxAndBorderGfx(); DrawDialogueFrame(0, FALSE); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SKIP_DRAW, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, TEXT_SKIP_DRAW, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); CopyWindowToVram(0, COPYWIN_FULL); CopyWindowToVram(task->tWindowId, COPYWIN_FULL); task->tState++; @@ -1573,7 +1575,7 @@ static void Task_PCMainMenu(u8 taskId) { task->tSelectedOption = task->tNextOption; FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } break; case MENU_B_PRESSED: @@ -1589,14 +1591,14 @@ static void Task_PCMainMenu(u8 taskId) { // Can't withdraw FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PartyFull, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_PartyFull, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tState = STATE_ERROR_MSG; } else if (task->tInput == OPTION_DEPOSIT && CountPartyMons() == 1) { // Can't deposit FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_JustOnePkmn, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_JustOnePkmn, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tState = STATE_ERROR_MSG; } else @@ -1614,7 +1616,7 @@ static void Task_PCMainMenu(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON)) { FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_UP)) @@ -1624,7 +1626,7 @@ static void Task_PCMainMenu(u8 taskId) Menu_MoveCursor(-1); task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tState = STATE_HANDLE_INPUT; } else if (JOY_NEW(DPAD_DOWN)) @@ -1634,7 +1636,7 @@ static void Task_PCMainMenu(u8 taskId) Menu_MoveCursor(1); task->tSelectedOption = Menu_GetCursorPos(); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sMainMenuTexts[task->tSelectedOption].desc, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); task->tState = STATE_HANDLE_INPUT; } break; diff --git a/src/script_menu.c b/src/script_menu.c index 6b3cccd3f99c..463123e669f7 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -380,7 +380,7 @@ static void CreatePCMultichoice(void) void ScriptMenu_DisplayPCStartupPrompt(void) { LoadMessageBoxAndFrameGfx(0, TRUE); - AddTextPrinterParameterized2(0, FONT_NORMAL, gText_WhichPCShouldBeAccessed, 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, gText_WhichPCShouldBeAccessed, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); } bool8 ScriptMenu_CreateLilycoveSSTidalMultichoice(void) @@ -646,27 +646,27 @@ static void DrawLinkServicesMultichoiceMenu(u8 multichoiceId) { case MULTI_WIRELESS_NO_BERRY: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptionsNoBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptionsNoBerryCrush[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; case MULTI_CABLE_CLUB_WITH_RECORD_MIX: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_WithRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_WithRecordMix[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; case MULTI_WIRELESS_NO_RECORD: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; case MULTI_WIRELESS_ALL_SERVICES: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_AllServices[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_AllServices[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; case MULTI_WIRELESS_NO_RECORD_BERRY: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMixBerryCrush[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sWirelessOptions_NoRecordMixBerryCrush[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; case MULTI_CABLE_CLUB_NO_RECORD_MIX: FillWindowPixelBuffer(0, PIXEL_FILL(1)); - AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, 2, 1, 3); + AddTextPrinterParameterized2(0, FONT_NORMAL, sCableClubOptions_NoRecordMix[Menu_GetCursorPos()], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); break; } } From 7ea49adf3c6a4270b6bbe64b027b2e6be92de685 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 1 Aug 2022 08:04:48 -0400 Subject: [PATCH 652/762] CpuCopy16 in UnkUtil_CpuRun --- src/pokemon_storage_system.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 822ff6770da3..79edcb301643 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -10034,7 +10034,7 @@ static void UnkUtil_CpuRun(struct UnkUtilData *data) for (i = 0; i < data->height; i++) { - CpuSet(data->src, data->dest, data->size / 2); + CpuCopy16(data->src, data->dest, data->size); data->dest += 64; data->src += data->unk * 2; } From cc288e3786f4e42658b06585bf8d0a32f0c6be00 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 1 Aug 2022 15:14:21 -0400 Subject: [PATCH 653/762] Review changes --- src/pokeball.c | 2 +- src/pokemon_storage_system.c | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/pokeball.c b/src/pokeball.c index 8eafa574429b..b9f63e58068c 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1308,7 +1308,7 @@ void LoadBallGfx(u8 ballId) { u16 var; - if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == TAG_NONE) + if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == 0xFFFF) { LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[ballId]); LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[ballId]); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 79edcb301643..f72f3216fe1a 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -263,8 +263,6 @@ enum { // between 2 PokĂ©mon with held items #define MAX_ITEM_ICONS 3 -#define MAX_MENU_ITEMS 7 - // IDs for the item icons affine anims enum { ITEM_ANIM_NONE, @@ -476,7 +474,7 @@ struct PokemonStorageSystemData u8 iconScrollState; u8 iconScrollToBoxId; // Unused duplicate of scrollToBoxId struct WindowTemplate menuWindow; - struct StorageMenu menuItems[MAX_MENU_ITEMS]; + struct StorageMenu menuItems[7]; u8 menuItemsCount; u8 menuWidth; u8 menuUnusedField; // Never read. From b49f8c10ad7380cf5778dcf8b379354e906e6541 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 1 Aug 2022 15:37:05 -0400 Subject: [PATCH 654/762] Review changes from https://github.com/pret/pokefirered/pull/525 --- src/mon_markings.c | 8 ++------ src/pokemon_storage_system.c | 14 +++++++------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/mon_markings.c b/src/mon_markings.c index 81f898f9ba5e..d7a61c27e757 100644 --- a/src/mon_markings.c +++ b/src/mon_markings.c @@ -396,20 +396,16 @@ bool8 HandleMonMarkingsMenuInput(void) if (JOY_NEW(DPAD_UP)) { - s8 pos; PlaySE(SE_SELECT); - pos = --sMenu->cursorPos; - if (pos < 0) + if (--sMenu->cursorPos < 0) sMenu->cursorPos = SELECTION_CANCEL; return TRUE; } if (JOY_NEW(DPAD_DOWN)) { - s8 pos; PlaySE(SE_SELECT); - pos = ++sMenu->cursorPos; - if (pos > SELECTION_CANCEL) + if (++sMenu->cursorPos > SELECTION_CANCEL) sMenu->cursorPos = 0; return TRUE; } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index f72f3216fe1a..00338a847569 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -9241,16 +9241,16 @@ static bool8 UpdateItemInfoWindowSlideOut(void) return TRUE; } -static void DrawItemInfoWindow(u32 pos) +static void DrawItemInfoWindow(u32 x) { - if (pos != 0) + if (x != 0) { - FillBgTilemapBufferRect(0, 0x13A, 0, 0xC, pos, 1, 0xFu); - FillBgTilemapBufferRect(0, 0x93A, 0, 0x14, pos, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13A, 0, 0xC, x, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x93A, 0, 0x14, x, 1, 0xFu); } - FillBgTilemapBufferRect(0, 0x13B, pos, 0xD, 1, 7, 0xFu); - FillBgTilemapBufferRect(0, 0x13C, pos, 0xC, 1, 1, 0xFu); - FillBgTilemapBufferRect(0, 0x13D, pos, 0x14, 1, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13B, x, 0xD, 1, 7, 0xFu); + FillBgTilemapBufferRect(0, 0x13C, x, 0xC, 1, 1, 0xFu); + FillBgTilemapBufferRect(0, 0x13D, x, 0x14, 1, 1, 0xFu); ScheduleBgCopyTilemapToVram(0); } From e5c36cd74507e33aedda1804cdbe210e0b34df1d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 3 Aug 2022 14:21:13 -0400 Subject: [PATCH 655/762] MapGridIsImpassableAt -> MapGridGetCollisionAt, and add fixes --- include/fieldmap.h | 2 +- src/event_object_movement.c | 4 ++-- src/fieldmap.c | 2 +- src/fldeff_cut.c | 7 ++++++- src/item_use.c | 2 +- src/overworld.c | 10 +++++----- src/rotating_gate.c | 7 ++++++- 7 files changed, 22 insertions(+), 12 deletions(-) diff --git a/include/fieldmap.h b/include/fieldmap.h index a166e785a916..7caadfcaaa67 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -26,7 +26,7 @@ u32 MapGridGetMetatileBehaviorAt(int, int); void MapGridSetMetatileIdAt(int, int, u16); void MapGridSetMetatileEntryAt(int, int, u16); void GetCameraCoords(u16 *, u16 *); -bool8 MapGridIsImpassableAt(int, int); +u8 MapGridGetCollisionAt(int, int); int GetMapBorderIdAt(int x, int y); bool32 CanCameraMoveInDirection(int direction); u16 GetMetatileAttributesById(u16 metatileId); diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 7ea712be613e..69377cac617b 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -4630,7 +4630,7 @@ u8 GetCollisionAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u32 dir) u8 direction = dir; if (IsCoordOutsideObjectEventMovementRange(objectEvent, x, y)) return COLLISION_OUTSIDE_RANGE; - else if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction)) + else if (MapGridGetCollisionAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction)) return COLLISION_IMPASSABLE; else if (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction)) return COLLISION_IMPASSABLE; @@ -4647,7 +4647,7 @@ u8 GetCollisionFlagsAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u8 d if (IsCoordOutsideObjectEventMovementRange(objectEvent, x, y)) flags |= 1 << (COLLISION_OUTSIDE_RANGE - 1); - if (MapGridIsImpassableAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction) || (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction))) + if (MapGridGetCollisionAt(x, y) || GetMapBorderIdAt(x, y) == CONNECTION_INVALID || IsMetatileDirectionallyImpassable(objectEvent, x, y, direction) || (objectEvent->trackedByCamera && !CanCameraMoveInDirection(direction))) flags |= 1 << (COLLISION_IMPASSABLE - 1); if (IsElevationMismatchAt(objectEvent->currentElevation, x, y)) flags |= 1 << (COLLISION_ELEVATION_MISMATCH - 1); diff --git a/src/fieldmap.c b/src/fieldmap.c index 581005af0fa3..2b981dc6e543 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -352,7 +352,7 @@ u8 MapGridGetElevationAt(int x, int y) return block >> MAPGRID_ELEVATION_SHIFT; } -bool8 MapGridIsImpassableAt(int x, int y) +u8 MapGridGetCollisionAt(int x, int y) { u16 block = GetMapGridBlockAt(x, y); diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 9129c5208cb7..689958ca200a 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -191,7 +191,12 @@ bool8 SetUpFieldMove_Cut(void) sHyperCutTiles[6 + (i * 5) + j] = TRUE; ret = TRUE; } - if (MapGridIsImpassableAt(x, y) == TRUE) + #ifdef BUGFIX + // Collision has a range 0-3, any value != 0 is impassable + if (MapGridGetCollisionAt(x, y)) + #else + if (MapGridGetCollisionAt(x, y) == 1) + #endif { cutTiles[i * 3 + j] = FALSE; } diff --git a/src/item_use.c b/src/item_use.c index e3604b064534..4d0919dac7c8 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -247,7 +247,7 @@ static bool32 CanFish(void) } else { - if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior) && !MapGridIsImpassableAt(x, y)) + if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior) && MapGridGetCollisionAt(x, y) == 0) return TRUE; if (MetatileBehavior_IsBridgeOverWaterNoEdge(tileBehavior) == TRUE) return TRUE; diff --git a/src/overworld.c b/src/overworld.c index 812568d0143d..66d7be99b31f 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -129,7 +129,7 @@ static void ResetAllPlayerLinkStates(void); static void UpdateHeldKeyCode(u16); static void UpdateAllLinkPlayers(u16 *, s32); static u8 FlipVerticalAndClearForced(u8, u8); -static u8 LinkPlayerDetectCollision(u8, u8, s16, s16); +static u8 LinkPlayerGetCollision(u8, u8, s16, s16); static void CreateLinkPlayerSprite(u8, u8); static void GetLinkPlayerCoords(u8, u16 *, u16 *); static u8 GetLinkPlayerFacingDirection(u8); @@ -3087,7 +3087,7 @@ static bool8 FacingHandler_DpadMovement(struct LinkPlayerObjectEvent *linkPlayer linkDirection(objEvent) = FlipVerticalAndClearForced(dir, linkDirection(objEvent)); ObjectEventMoveDestCoords(objEvent, linkDirection(objEvent), &x, &y); - if (LinkPlayerDetectCollision(linkPlayerObjEvent->objEventId, linkDirection(objEvent), x, y)) + if (LinkPlayerGetCollision(linkPlayerObjEvent->objEventId, linkDirection(objEvent), x, y)) { return FALSE; } @@ -3147,7 +3147,7 @@ static u8 FlipVerticalAndClearForced(u8 newFacing, u8 oldFacing) return oldFacing; } -static bool8 LinkPlayerDetectCollision(u8 selfObjEventId, u8 direction, s16 x, s16 y) +static u8 LinkPlayerGetCollision(u8 selfObjEventId, u8 direction, s16 x, s16 y) { u8 i; for (i = 0; i < OBJECT_EVENTS_COUNT; i++) @@ -3157,11 +3157,11 @@ static bool8 LinkPlayerDetectCollision(u8 selfObjEventId, u8 direction, s16 x, s if ((gObjectEvents[i].currentCoords.x == x && gObjectEvents[i].currentCoords.y == y) || (gObjectEvents[i].previousCoords.x == x && gObjectEvents[i].previousCoords.y == y)) { - return TRUE; + return 1; } } } - return MapGridIsImpassableAt(x, y); + return MapGridGetCollisionAt(x, y); } static void CreateLinkPlayerSprite(u8 linkPlayerId, u8 gameVersion) diff --git a/src/rotating_gate.c b/src/rotating_gate.c index e2fd575a1837..1db3ad4ec750 100644 --- a/src/rotating_gate.c +++ b/src/rotating_gate.c @@ -874,7 +874,12 @@ static s32 RotatingGate_CanRotate(u8 gateId, s32 rotationDirection) if (sRotatingGate_ArmLayout[shape][2 * i + j]) { - if (MapGridIsImpassableAt(x + armPos[armIndex].x, y + armPos[armIndex].y) == TRUE) + #ifdef BUGFIX + // Collision has a range 0-3, any value != 0 is impassable + if (MapGridGetCollisionAt(x + armPos[armIndex].x, y + armPos[armIndex].y)) + #else + if (MapGridGetCollisionAt(x + armPos[armIndex].x, y + armPos[armIndex].y) == 1) + #endif return FALSE; } } From c991131b751f3be411995ff75c8dcf04c4ff5815 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Thu, 4 Aug 2022 11:53:16 +0200 Subject: [PATCH 656/762] Change language stuff based on the french decomp --- include/battle_script_commands.h | 3 +++ include/config.h | 2 ++ ld_script.txt | 1 + src/battle_controller_player.c | 6 ++--- src/battle_main.c | 10 ++++---- src/battle_script_commands.c | 20 ++++++++-------- src/evolution_scene.c | 6 ++--- src/field_specials.c | 2 +- src/pokedex.c | 14 ++++++----- src/union_room.c | 40 ++++++++++++++++---------------- 10 files changed, 56 insertions(+), 48 deletions(-) diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h index ed90d787f05c..5cb18ab460c7 100644 --- a/include/battle_script_commands.h +++ b/include/battle_script_commands.h @@ -7,6 +7,9 @@ #define WINDOW_CLEAR (1 << 0) #define WINDOW_BG1 (1 << 7) +// 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); u8 AI_TypeCalc(u16 move, u16 targetSpecies, u8 targetAbility); diff --git a/include/config.h b/include/config.h index 4c231a84deaa..5f2fa4d2cc9e 100644 --- a/include/config.h +++ b/include/config.h @@ -19,8 +19,10 @@ #ifdef ENGLISH #define UNITS_IMPERIAL +#define CHAR_DEC_SEPARATOR CHAR_PERIOD // Period is used as a decimal separator only in the UK and the US. #else #define UNITS_METRIC +#define CHAR_DEC_SEPARATOR CHAR_COMMA #endif // Uncomment to fix some identified minor bugs diff --git a/ld_script.txt b/ld_script.txt index 1460c844353a..b387c79f9752 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -694,6 +694,7 @@ SECTIONS { src/battle_transition_frontier.o(.rodata); src/text_input_strings.o(.rodata); src/fonts.o(.rodata); + src/international_string_util.o(.rodata); src/mystery_event_msg.o(.rodata); data/mystery_gift.o(.rodata); src/m4a_tables.o(.rodata); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 27adb9ee4b2c..272e0120c6f4 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1435,7 +1435,7 @@ static void PlayerHandleYesNoInput(void) } if (JOY_NEW(A_BUTTON)) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); PlaySE(SE_SELECT); if (gMultiUsePlayerCursor != 0) @@ -1447,7 +1447,7 @@ static void PlayerHandleYesNoInput(void) } if (JOY_NEW(B_BUTTON)) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); PlaySE(SE_SELECT); PlayerBufferExecCompleted(); } @@ -2592,7 +2592,7 @@ static void PlayerHandleYesNoBox(void) { if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gMultiUsePlayerCursor = 1; BattleCreateYesNoCursorAt(1); diff --git a/src/battle_main.c b/src/battle_main.c index d9469470e93a..6a4244b1ae28 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -1068,7 +1068,7 @@ static void CB2_HandleStartBattle(void) // Recv PokĂ©mon 5-6 ResetBlockReceivedFlags(); memcpy(&gEnemyParty[4], gBlockRecvBuffer[enemyMultiplayerId], sizeof(struct Pokemon) * 2); - + TryCorrectShedinjaLanguage(&gEnemyParty[0]); TryCorrectShedinjaLanguage(&gEnemyParty[1]); TryCorrectShedinjaLanguage(&gEnemyParty[2]); @@ -2489,7 +2489,7 @@ static void AskRecordBattle(void) case STATE_PRINT_YES_NO: if (!IsTextPrinterActive(B_WIN_MSG)) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[CURSOR_POSITION] = 1; BattleCreateYesNoCursorAt(1); @@ -2525,7 +2525,7 @@ static void AskRecordBattle(void) if (gBattleCommunication[CURSOR_POSITION] == 0) { // Selected Yes - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); gBattleCommunication[1] = MoveRecordedBattleToSaveData(); gBattleCommunication[MULTIUSE_STATE] = STATE_RECORD_YES; } @@ -2544,7 +2544,7 @@ static void AskRecordBattle(void) case STATE_RECORD_NO: if (IsLinkTaskFinished() == TRUE) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); if (gMain.anyLinkBattlerHasFrontierPass) { // Other battlers may be recording, wait for them @@ -2985,7 +2985,7 @@ static void SpriteCB_TrainerThrowObject_Main(struct Sprite *sprite) sprite->callback = SpriteCB_Idle; } -// Sprite callback for a trainer back pic to throw an object +// Sprite callback for a trainer back pic to throw an object // (Wally throwing a ball, throwing PokĂ©blocks/balls in the Safari Zone) void SpriteCB_TrainerThrowObject(struct Sprite *sprite) { diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 01d8a489def5..653221583343 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5369,7 +5369,7 @@ static void Cmd_yesnoboxlearnmove(void) switch (gBattleScripting.learnMoveState) { case 0: - HandleBattleWindow(24, 8, 29, 13, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleScripting.learnMoveState++; gBattleCommunication[CURSOR_POSITION] = 0; @@ -5395,7 +5395,7 @@ static void Cmd_yesnoboxlearnmove(void) PlaySE(SE_SELECT); if (gBattleCommunication[1] == 0) { - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gBattleScripting.learnMoveState++; } @@ -5466,7 +5466,7 @@ static void Cmd_yesnoboxlearnmove(void) } break; case 5: - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); gBattlescriptCurrInstr += 5; break; case 6: @@ -5483,7 +5483,7 @@ static void Cmd_yesnoboxstoplearningmove(void) switch (gBattleScripting.learnMoveState) { case 0: - HandleBattleWindow(24, 8, 29, 13, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleScripting.learnMoveState++; gBattleCommunication[CURSOR_POSITION] = 0; @@ -5513,13 +5513,13 @@ static void Cmd_yesnoboxstoplearningmove(void) else gBattlescriptCurrInstr += 5; - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); } else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); } break; } @@ -5779,7 +5779,7 @@ static void Cmd_yesnobox(void) switch (gBattleCommunication[0]) { case 0: - HandleBattleWindow(24, 8, 29, 13, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[0]++; gBattleCommunication[CURSOR_POSITION] = 0; @@ -5804,13 +5804,13 @@ static void Cmd_yesnobox(void) { gBattleCommunication[CURSOR_POSITION] = 1; PlaySE(SE_SELECT); - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); gBattlescriptCurrInstr++; } else if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - HandleBattleWindow(24, 8, 29, 13, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); gBattlescriptCurrInstr++; } break; @@ -10116,7 +10116,7 @@ static void Cmd_trygivecaughtmonnick(void) switch (gBattleCommunication[MULTIUSE_STATE]) { case 0: - HandleBattleWindow(24, 8, 29, 13, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gBattleCommunication[MULTIUSE_STATE]++; gBattleCommunication[CURSOR_POSITION] = 0; diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 48b514e636de..2c4e225c1b0c 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -899,7 +899,7 @@ static void Task_EvolutionScene(u8 taskId) case MVSTATE_PRINT_YES_NO: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, 0); + HandleBattleWindow(YESNOBOX_X_Y, 0); BattlePutTextOnWindow(gText_BattleYesNoChoice, B_WIN_YESNO); gTasks[taskId].tLearnMoveState++; sEvoCursorPos = 0; @@ -928,7 +928,7 @@ static void Task_EvolutionScene(u8 taskId) } if (JOY_NEW(A_BUTTON)) { - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); PlaySE(SE_SELECT); if (sEvoCursorPos != 0) @@ -947,7 +947,7 @@ static void Task_EvolutionScene(u8 taskId) if (JOY_NEW(B_BUTTON)) { // Equivalent to selecting NO - HandleBattleWindow(0x18, 8, 0x1D, 0xD, WINDOW_CLEAR); + HandleBattleWindow(YESNOBOX_X_Y, WINDOW_CLEAR); PlaySE(SE_SELECT); gTasks[taskId].tLearnMoveState = gTasks[taskId].tLearnMoveNoState; } diff --git a/src/field_specials.c b/src/field_specials.c index 34b454103893..262056b7db44 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -182,7 +182,7 @@ static void DetermineCyclingRoadResults(u32 numFrames, u8 numBikeCollisions) if (numFrames < 3600) { ConvertIntToDecimalStringN(gStringVar2, numFrames / 60, STR_CONV_MODE_RIGHT_ALIGN, 2); - gStringVar2[2] = CHAR_PERIOD; + gStringVar2[2] = CHAR_DEC_SEPARATOR; ConvertIntToDecimalStringN(&gStringVar2[3], ((numFrames % 60) * 100) / 60, STR_CONV_MODE_LEADING_ZEROS, 2); StringAppend(gStringVar2, gText_SpaceSeconds); } diff --git a/src/pokedex.c b/src/pokedex.c index 522bbcb56e21..8abf97248841 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -270,6 +270,7 @@ static void PrintMonHeight(u16 height, u8 left, u8 top); static void PrintMonWeight(u16 weight, u8 left, u8 top); static void ResetOtherVideoRegisters(u16); static u8 PrintCryScreenSpeciesName(u8, u16, u8, u8); +static void PrintDecimalNum(u8 windowId, u16 num, u8 left, u8 top); static void DrawFootprint(u8 windowId, u16 dexNum); static u16 CreateSizeScreenTrainerPic(u16, s16, s16, s8); static u16 GetNextPosition(u8, u16, u16, u16); @@ -4531,13 +4532,14 @@ static void UnusedPrintMonName(u8 windowId, const u8 *name, u8 left, u8 top) PrintInfoSubMenuText(windowId, str, left, top); } -static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) +// Unused in the English version, used to print height/weight in versions which use metric system. +static void PrintDecimalNum(u8 windowId, u16 num, u8 left, u8 top) { u8 str[6]; bool8 outputted = FALSE; u8 result; - result = b / 1000; + result = num / 1000; if (result == 0) { str[0] = CHAR_SPACER; @@ -4549,7 +4551,7 @@ static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) outputted = TRUE; } - result = (b % 1000) / 100; + result = (num % 1000) / 100; if (result == 0 && !outputted) { str[1] = CHAR_SPACER; @@ -4561,9 +4563,9 @@ static void UnusedPrintDecimalNum(u8 windowId, u16 b, u8 left, u8 top) outputted = TRUE; } - str[2] = CHAR_0 + ((b % 1000) % 100) / 10; - str[3] = CHAR_PERIOD; - str[4] = CHAR_0 + ((b % 1000) % 100) % 10; + str[2] = CHAR_0 + ((num % 1000) % 100) / 10; + str[3] = CHAR_DEC_SEPARATOR; + str[4] = CHAR_0 + ((num % 1000) % 100) % 10; str[5] = EOS; PrintInfoSubMenuText(windowId, str, left, top); } diff --git a/src/union_room.c b/src/union_room.c index c1dd298c6614..cf10861d8382 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -289,19 +289,19 @@ static void PrintNumPlayersWaitingForMsg(u8 windowId, u8 capacityCode, u8 string switch (capacityCode << 8) { case LINK_GROUP_CAPACITY(0, 2): - PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[0][stringId - 1], 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, sPlayersNeededOrModeTexts[0][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(0, 4): - PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[1][stringId - 1], 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, sPlayersNeededOrModeTexts[1][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(2, 5): - PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[2][stringId - 1], 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, sPlayersNeededOrModeTexts[2][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(3, 5): - PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[3][stringId - 1], 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, sPlayersNeededOrModeTexts[3][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; case LINK_GROUP_CAPACITY(2, 4): - PrintUnionRoomText(windowId, 1, sPlayersNeededOrModeTexts[4][stringId - 1], 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, sPlayersNeededOrModeTexts[4][stringId - 1], 0, 1, UR_COLOR_DEFAULT); break; } @@ -313,10 +313,10 @@ static void PrintPlayerNameAndIdOnWindow(u8 windowId) u8 text[30]; u8 *txtPtr; - PrintUnionRoomText(windowId, 1, gSaveBlock2Ptr->playerName, 0, 1, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, gSaveBlock2Ptr->playerName, 0, 1, UR_COLOR_DEFAULT); txtPtr = StringCopy(text, sText_ID); ConvertIntToDecimalStringN(txtPtr, ReadAsU16(gSaveBlock2Ptr->playerTrainerId), STR_CONV_MODE_LEADING_ZEROS, 5); - PrintUnionRoomText(windowId, 1, text, 0, 17, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, text, 0, 17, UR_COLOR_DEFAULT); } static void GetAwaitingCommunicationText(u8 *dst, u8 caseId) @@ -431,7 +431,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->nPlayerModeWindowId = AddWindow(&sWindowTemplate_NumPlayerMode); FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); - PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_BButtonCancel, 8, 1, UR_COLOR_CANCEL); + PrintUnionRoomText(data->bButtonCancelWindowId, FONT_SMALL, sText_BButtonCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); CopyWindowToVram(data->bButtonCancelWindowId, COPYWIN_GFX); @@ -1011,7 +1011,7 @@ static void Task_TryJoinLinkGroup(u8 taskId) data->playerNameAndIdWindowId = AddWindow(&sWindowTemplate_PlayerNameAndId); FillWindowPixelBuffer(data->bButtonCancelWindowId, PIXEL_FILL(2)); - PrintUnionRoomText(data->bButtonCancelWindowId, 0, sText_ChooseJoinCancel, 8, 1, UR_COLOR_CANCEL); + PrintUnionRoomText(data->bButtonCancelWindowId, FONT_SMALL, sText_ChooseJoinCancel, 8, 1, UR_COLOR_CANCEL); PutWindowTilemap(data->bButtonCancelWindowId); CopyWindowToVram(data->bButtonCancelWindowId, COPYWIN_GFX); @@ -2469,7 +2469,7 @@ static void ScheduleFieldMessageAndExit(const u8 *src) static void CopyPlayerListToBuffer(struct WirelessLink_URoom *uroom) { memcpy(&gDecompressionBuffer[sizeof(gDecompressionBuffer) - (MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer))], - uroom->playerList, + uroom->playerList, MAX_UNION_ROOM_LEADERS * sizeof(struct RfuPlayer)); } @@ -3656,7 +3656,7 @@ static u8 CreateTradeBoardWindow(const struct WindowTemplate * template) u8 windowId = AddWindow(template); DrawStdWindowFrame(windowId, FALSE); FillWindowPixelBuffer(windowId, PIXEL_FILL(15)); - PrintUnionRoomText(windowId, 1, sText_NameWantedOfferLv, 8, 1, UR_COLOR_TRADE_BOARD_OTHER); + PrintUnionRoomText(windowId, FONT_NORMAL, sText_NameWantedOfferLv, 8, 1, UR_COLOR_TRADE_BOARD_OTHER); CopyWindowToVram(windowId, COPYWIN_GFX); PutWindowTilemap(windowId); return windowId; @@ -3971,17 +3971,17 @@ static void PrintGroupMemberOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlayer * ConvertIntToDecimalStringN(gStringVar4, id + 1, STR_CONV_MODE_LEADING_ZEROS, 2); StringAppend(gStringVar4, sText_Colon); - PrintUnionRoomText(windowId, 1, gStringVar4, x, y, UR_COLOR_DEFAULT); + PrintUnionRoomText(windowId, FONT_NORMAL, gStringVar4, x, y, UR_COLOR_DEFAULT); x += 18; activity = player->rfu.data.activity; if (player->groupScheduledAnim == UNION_ROOM_SPAWN_IN && !(activity & IN_UNION_ROOM)) { CopyAndTranslatePlayerName(gStringVar4, player); - PrintUnionRoomText(windowId, 1, gStringVar4, x, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, gStringVar4, x, y, colorIdx); ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x88), y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x88), y, colorIdx); } } @@ -3992,11 +3992,11 @@ static void PrintGroupCandidateOnWindow(u8 windowId, u8 x, u8 y, struct RfuPlaye if (player->groupScheduledAnim == UNION_ROOM_SPAWN_IN) { CopyAndTranslatePlayerName(gStringVar4, player); - PrintUnionRoomText(windowId, 1, gStringVar4, x, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, gStringVar4, x, y, colorIdx); ConvertIntToDecimalStringN(trainerId, player->rfu.data.compatibility.playerTrainerId[0] | (player->rfu.data.compatibility.playerTrainerId[1] << 8), STR_CONV_MODE_LEADING_ZEROS, 5); StringCopy(gStringVar4, sText_ID); StringAppend(gStringVar4, trainerId); - PrintUnionRoomText(windowId, 1, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x68), y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, gStringVar4, GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 0x68), y, colorIdx); } } @@ -4101,17 +4101,17 @@ static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData * data u8 type = data->tradeType; u8 level = data->tradeLevel; - PrintUnionRoomText(windowId, 1, playerName, 8, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, playerName, 8, y, colorIdx); if (species == SPECIES_EGG) { - PrintUnionRoomText(windowId, 1, sText_EggTrade, 68, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, sText_EggTrade, 68, y, colorIdx); } else { BlitMenuInfoIcon(windowId, type + 1, 68, y); - PrintUnionRoomText(windowId, 1, gSpeciesNames[species], 118, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, gSpeciesNames[species], 118, y, colorIdx); ConvertIntToDecimalStringN(levelStr, level, STR_CONV_MODE_RIGHT_ALIGN, 3); - PrintUnionRoomText(windowId, 1, levelStr, 198, y, colorIdx); + PrintUnionRoomText(windowId, FONT_NORMAL, levelStr, 198, y, colorIdx); } } From 2487ddb1285e8f8a022aa2493bf330acfabaeeb3 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 5 Aug 2022 10:31:50 -0400 Subject: [PATCH 657/762] Sector security -> signature --- include/save.h | 12 +++---- src/save.c | 88 +++++++++++++++++++++++++------------------------- src/trade.c | 4 +-- 3 files changed, 52 insertions(+), 52 deletions(-) diff --git a/include/save.h b/include/save.h index 4f2903f0996d..41913d1df415 100644 --- a/include/save.h +++ b/include/save.h @@ -9,8 +9,8 @@ #define NUM_SAVE_SLOTS 2 -// If the sector's security field is not this value then the sector is either invalid or empty. -#define SECTOR_SECURITY_NUM 0x8012025 +// If the sector's signature field is not this value then the sector is either invalid or empty. +#define SECTOR_SIGNATURE 0x8012025 #define SPECIAL_SECTOR_SENTINEL 0xB39D @@ -72,12 +72,12 @@ struct SaveSector u8 unused[SECTOR_FOOTER_SIZE - 12]; // Unused portion of the footer u16 id; u16 checksum; - u32 security; + u32 signature; u32 counter; }; // size is SECTOR_SIZE (0x1000) -#define SECTOR_SECURITY_OFFSET offsetof(struct SaveSector, security) -#define SECTOR_COUNTER_OFFSET offsetof(struct SaveSector, counter) +#define SECTOR_SIGNATURE_OFFSET offsetof(struct SaveSector, signature) +#define SECTOR_COUNTER_OFFSET offsetof(struct SaveSector, counter) extern u16 gLastWrittenSector; extern u32 gLastSaveCounter; @@ -99,7 +99,7 @@ u8 TrySavingData(u8 saveType); bool8 LinkFullSave_Init(void); bool8 LinkFullSave_WriteSector(void); bool8 LinkFullSave_ReplaceLastSector(void); -bool8 LinkFullSave_SetLastSectorSecurity(void); +bool8 LinkFullSave_SetLastSectorSignature(void); bool8 WriteSaveBlock2(void); bool8 WriteSaveBlock1Sector(void); u8 LoadGameSave(u8 saveType); diff --git a/src/save.c b/src/save.c index 1f4189fb8425..e7c91580e520 100644 --- a/src/save.c +++ b/src/save.c @@ -196,7 +196,7 @@ static u8 HandleWriteSector(u16 sectorId, const struct SaveSectorLocation *locat // Set footer data gReadWriteSector->id = sectorId; - gReadWriteSector->security = SECTOR_SECURITY_NUM; + gReadWriteSector->signature = SECTOR_SIGNATURE; gReadWriteSector->counter = gSaveCounter; // Copy current data to temp buffer for writing @@ -217,7 +217,7 @@ static u8 HandleWriteSectorNBytes(u8 sectorId, u8 *data, u16 size) for (i = 0; i < SECTOR_SIZE; i++) ((u8 *)sector)[i] = 0; - sector->security = SECTOR_SECURITY_NUM; + sector->signature = SECTOR_SIGNATURE; // Copy data to temp buffer for writing for (i = 0; i < size; i++) @@ -306,7 +306,7 @@ static u8 HandleReplaceSectorAndVerify(u16 sectorId, const struct SaveSectorLoca return status; } -// Similar to HandleWriteSector, but fully erases the sector first, and skips writing the first security byte +// Similar to HandleWriteSector, but fully erases the sector first, and skips writing the first signature byte static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *locations) { u16 i; @@ -330,7 +330,7 @@ static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *loc // Set footer data gReadWriteSector->id = sectorId; - gReadWriteSector->security = SECTOR_SECURITY_NUM; + gReadWriteSector->signature = SECTOR_SIGNATURE; gReadWriteSector->counter = gSaveCounter; // Copy current data to temp buffer for writing @@ -344,8 +344,8 @@ static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *loc status = SAVE_STATUS_OK; - // Write new save data up to security field - for (i = 0; i < SECTOR_SECURITY_OFFSET; i++) + // Write new save data up to signature field + for (i = 0; i < SECTOR_SIGNATURE_OFFSET; i++) { if (ProgramFlashByte(sector, i, ((u8 *)gReadWriteSector)[i])) { @@ -362,14 +362,14 @@ static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *loc } else { - // Writing save data succeeded, write security and counter + // Writing save data succeeded, write signature and counter status = SAVE_STATUS_OK; - // Write security (skipping the first byte) and counter fields. - // The byte of security that is skipped is instead written by WriteSectorSecurityByte or WriteSectorSecurityByte_NoOffset - for (i = 0; i < SECTOR_SIZE - (SECTOR_SECURITY_OFFSET + 1); i++) + // Write signature (skipping the first byte) and counter fields. + // The byte of signature that is skipped is instead written by WriteSectorSignatureByte or WriteSectorSignatureByte_NoOffset + for (i = 0; i < SECTOR_SIZE - (SECTOR_SIGNATURE_OFFSET + 1); i++) { - if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET + 1 + i, ((u8 *)gReadWriteSector)[SECTOR_SECURITY_OFFSET + 1 + i])) + if (ProgramFlashByte(sector, SECTOR_SIGNATURE_OFFSET + 1 + i, ((u8 *)gReadWriteSector)[SECTOR_SIGNATURE_OFFSET + 1 + i])) { status = SAVE_STATUS_ERROR; break; @@ -378,7 +378,7 @@ static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *loc if (status == SAVE_STATUS_ERROR) { - // Writing security/counter failed + // Writing signature/counter failed SetDamagedSectorBits(ENABLE, sector); return SAVE_STATUS_ERROR; } @@ -391,16 +391,16 @@ static u8 HandleReplaceSector(u16 sectorId, const struct SaveSectorLocation *loc } } -static u8 WriteSectorSecurityByte_NoOffset(u16 sectorId, const struct SaveSectorLocation *locations) +static u8 WriteSectorSignatureByte_NoOffset(u16 sectorId, const struct SaveSectorLocation *locations) { // Adjust sector id for current save slot - // This first line lacking -1 is the only difference from WriteSectorSecurityByte + // This first line lacking -1 is the only difference from WriteSectorSignatureByte u16 sector = sectorId + gLastWrittenSector; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - // Write just the first byte of the security field, which was skipped by HandleReplaceSector - if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, SECTOR_SECURITY_NUM & 0xFF)) + // Write just the first byte of the signature field, which was skipped by HandleReplaceSector + if (ProgramFlashByte(sector, SECTOR_SIGNATURE_OFFSET, SECTOR_SIGNATURE & 0xFF)) { // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); @@ -416,15 +416,15 @@ static u8 WriteSectorSecurityByte_NoOffset(u16 sectorId, const struct SaveSector } } -static u8 CopySectorSecurityByte(u16 sectorId, const struct SaveSectorLocation *locations) +static u8 CopySectorSignatureByte(u16 sectorId, const struct SaveSectorLocation *locations) { // Adjust sector id for current save slot u16 sector = sectorId + gLastWrittenSector - 1; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - // Copy just the first byte of the security field from the read/write buffer - if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, ((u8 *)gReadWriteSector)[SECTOR_SECURITY_OFFSET])) + // Copy just the first byte of the signature field from the read/write buffer + if (ProgramFlashByte(sector, SECTOR_SIGNATURE_OFFSET, ((u8 *)gReadWriteSector)[SECTOR_SIGNATURE_OFFSET])) { // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); @@ -440,15 +440,15 @@ static u8 CopySectorSecurityByte(u16 sectorId, const struct SaveSectorLocation * } } -static u8 WriteSectorSecurityByte(u16 sectorId, const struct SaveSectorLocation *locations) +static u8 WriteSectorSignatureByte(u16 sectorId, const struct SaveSectorLocation *locations) { // Adjust sector id for current save slot u16 sector = sectorId + gLastWrittenSector - 1; sector %= NUM_SECTORS_PER_SLOT; sector += NUM_SECTORS_PER_SLOT * (gSaveCounter % NUM_SAVE_SLOTS); - // Write just the first byte of the security field, which was skipped by HandleReplaceSector - if (ProgramFlashByte(sector, SECTOR_SECURITY_OFFSET, SECTOR_SECURITY_NUM & 0xFF)) + // Write just the first byte of the signature field, which was skipped by HandleReplaceSector + if (ProgramFlashByte(sector, SECTOR_SIGNATURE_OFFSET, SECTOR_SIGNATURE & 0xFF)) { // Sector is damaged, so enable the bit in gDamagedSaveSectors and restore the last written sector and save counter. SetDamagedSectorBits(ENABLE, sector); @@ -500,8 +500,8 @@ static u8 CopySaveSlotData(u16 sectorId, struct SaveSectorLocation *locations) checksum = CalculateChecksum(gReadWriteSector->data, locations[id].size); - // Only copy data for sectors whose security and checksum fields are correct - if (gReadWriteSector->security == SECTOR_SECURITY_NUM && gReadWriteSector->checksum == checksum) + // Only copy data for sectors whose signature and checksum fields are correct + if (gReadWriteSector->signature == SECTOR_SIGNATURE && gReadWriteSector->checksum == checksum) { u16 j; for (j = 0; j < locations[id].size; j++) @@ -519,7 +519,7 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) u32 saveSlot1Counter = 0; u32 saveSlot2Counter = 0; u32 validSectorFlags = 0; - bool8 securityPassed = FALSE; + bool8 signatureValid = FALSE; u8 saveSlot1Status; u8 saveSlot2Status; @@ -527,9 +527,9 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { ReadFlashSector(i, gReadWriteSector); - if (gReadWriteSector->security == SECTOR_SECURITY_NUM) + if (gReadWriteSector->signature == SECTOR_SIGNATURE) { - securityPassed = TRUE; + signatureValid = TRUE; checksum = CalculateChecksum(gReadWriteSector->data, locations[gReadWriteSector->id].size); if (gReadWriteSector->checksum == checksum) { @@ -539,7 +539,7 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) } } - if (securityPassed) + if (signatureValid) { if (validSectorFlags == (1 << NUM_SECTORS_PER_SLOT) - 1) saveSlot1Status = SAVE_STATUS_OK; @@ -548,20 +548,20 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) } else { - // No sectors in slot 1 have the security number, treat it as empty + // No sectors in slot 1 have the correct signature, treat it as empty saveSlot1Status = SAVE_STATUS_EMPTY; } validSectorFlags = 0; - securityPassed = FALSE; + signatureValid = FALSE; // Check save slot 2 for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { ReadFlashSector(i + NUM_SECTORS_PER_SLOT, gReadWriteSector); - if (gReadWriteSector->security == SECTOR_SECURITY_NUM) + if (gReadWriteSector->signature == SECTOR_SIGNATURE) { - securityPassed = TRUE; + signatureValid = TRUE; checksum = CalculateChecksum(gReadWriteSector->data, locations[gReadWriteSector->id].size); if (gReadWriteSector->checksum == checksum) { @@ -571,7 +571,7 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) } } - if (securityPassed) + if (signatureValid) { if (validSectorFlags == (1 << NUM_SECTORS_PER_SLOT) - 1) saveSlot2Status = SAVE_STATUS_OK; @@ -580,7 +580,7 @@ static u8 GetSaveValidStatus(const struct SaveSectorLocation *locations) } else { - // No sectors in slot 2 have the security number, treat it as empty. + // No sectors in slot 2 have the correct signature, treat it as empty. saveSlot2Status = SAVE_STATUS_EMPTY; } @@ -642,12 +642,12 @@ static u8 TryLoadSaveSector(u8 sectorId, u8 *data, u16 size) u16 i; struct SaveSector *sector = &gSaveDataBuffer; ReadFlashSector(sectorId, sector); - if (sector->security == SECTOR_SECURITY_NUM) + if (sector->signature == SECTOR_SIGNATURE) { u16 checksum = CalculateChecksum(sector->data, size); if (sector->id == checksum) { - // Security and checksum are correct, copy data + // Signature and checksum are correct, copy data for (i = 0; i < size; i++) data[i] = sector->data[i]; return SAVE_STATUS_OK; @@ -660,7 +660,7 @@ static u8 TryLoadSaveSector(u8 sectorId, u8 *data, u16 size) } else { - // Incorrect security value + // Incorrect signature value return SAVE_STATUS_EMPTY; } } @@ -747,7 +747,7 @@ u8 HandleSavingData(u8 saveType) for(i = SECTOR_ID_SAVEBLOCK2; i <= SECTOR_ID_SAVEBLOCK1_END; i++) HandleReplaceSector(i, gRamSaveSectorLocations); for(i = SECTOR_ID_SAVEBLOCK2; i <= SECTOR_ID_SAVEBLOCK1_END; i++) - WriteSectorSecurityByte_NoOffset(i, gRamSaveSectorLocations); + WriteSectorSignatureByte_NoOffset(i, gRamSaveSectorLocations); break; case SAVE_OVERWRITE_DIFFERENT_FILE: // Erase Hall of Fame @@ -818,9 +818,9 @@ bool8 LinkFullSave_ReplaceLastSector(void) return FALSE; } -bool8 LinkFullSave_SetLastSectorSecurity(void) +bool8 LinkFullSave_SetLastSectorSignature(void) { - CopySectorSecurityByte(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); + CopySectorSignatureByte(NUM_SECTORS_PER_SLOT, gRamSaveSectorLocations); if (gDamagedSaveSectors) DoSaveFailedScreen(SAVE_NORMAL); return FALSE; @@ -852,14 +852,14 @@ bool8 WriteSaveBlock1Sector(void) { // Write a single sector of SaveBlock1 HandleReplaceSectorAndVerify(gIncrementalSectorId + 1, gRamSaveSectorLocations); - WriteSectorSecurityByte(sectorId, gRamSaveSectorLocations); + WriteSectorSignatureByte(sectorId, gRamSaveSectorLocations); } else { // Beyond SaveBlock1, don't write the sector. - // Does write 1 byte of the next sector's security field, but as these + // Does write 1 byte of the next sector's signature field, but as these // are the same for all valid sectors it doesn't matter. - WriteSectorSecurityByte(sectorId, gRamSaveSectorLocations); + WriteSectorSignatureByte(sectorId, gRamSaveSectorLocations); finished = TRUE; } @@ -1030,7 +1030,7 @@ void Task_LinkFullSave(u8 taskId) case 8: if (IsLinkTaskFinished()) { - LinkFullSave_SetLastSectorSecurity(); + LinkFullSave_SetLastSectorSignature(); tState = 9; } break; diff --git a/src/trade.c b/src/trade.c index dc0774e3a952..e99b578cad5e 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4708,7 +4708,7 @@ static void CB2_SaveAndEndTrade(void) case 42: if (_IsLinkTaskFinished()) { - LinkFullSave_SetLastSectorSecurity(); + LinkFullSave_SetLastSectorSignature(); gMain.state = 5; } break; @@ -5012,7 +5012,7 @@ static void CB2_SaveAndEndWirelessTrade(void) case 8: if (_IsLinkTaskFinished()) { - LinkFullSave_SetLastSectorSecurity(); + LinkFullSave_SetLastSectorSignature(); gMain.state = 9; } break; From 079b1762ac666ceff38297c5e38c7eedabb35eae Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 5 Aug 2022 12:11:33 -0400 Subject: [PATCH 658/762] Update special save sector size checks --- src/ereader_helpers.c | 3 ++- src/recorded_battle.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c index cf3ca16c312e..894ad00123c9 100755 --- a/src/ereader_helpers.c +++ b/src/ereader_helpers.c @@ -15,7 +15,8 @@ #include "constants/items.h" #include "constants/trainer_hill.h" -STATIC_ASSERT(sizeof(struct TrainerHillChallenge) <= SECTOR_DATA_SIZE, TrainerHillChallengeFreeSpace); +// Save data using TryWriteSpecialSaveSector is allowed to exceed SECTOR_DATA_SIZE (up to the counter field) +STATIC_ASSERT(sizeof(struct TrainerHillChallenge) <= SECTOR_COUNTER_OFFSET, TrainerHillChallengeFreeSpace); struct SendRecvMgr { diff --git a/src/recorded_battle.c b/src/recorded_battle.c index 8256ce1fc945..e8785b5f82af 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -67,7 +67,8 @@ struct RecordedBattleSave u32 checksum; }; -STATIC_ASSERT(sizeof(struct RecordedBattleSave) <= SECTOR_DATA_SIZE, RecordedBattleSaveFreeSpace); +// Save data using TryWriteSpecialSaveSector is allowed to exceed SECTOR_DATA_SIZE (up to the counter field) +STATIC_ASSERT(sizeof(struct RecordedBattleSave) <= SECTOR_COUNTER_OFFSET, RecordedBattleSaveFreeSpace); EWRAM_DATA u32 gRecordedBattleRngSeed = 0; EWRAM_DATA u32 gBattlePalaceMoveSelectionRngValue = 0; From 4b08a511c3f587cf9f8d659984b50dad4cc49fc4 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 7 Aug 2022 22:40:15 -0400 Subject: [PATCH 659/762] Cleanup from https://github.com/pret/pokefirered/pull/532 --- gflib/text.c | 6 +- gflib/window.c | 16 ++-- include/battle_main.h | 6 +- include/battle_util.h | 1 - include/constants/battle.h | 5 ++ src/battle_arena.c | 6 +- src/battle_controller_player.c | 14 ++-- src/battle_dome.c | 104 ++++++++++++------------- src/battle_gfx_sfx_util.c | 4 +- src/battle_main.c | 127 +++++++++++++++---------------- src/battle_message.c | 10 +-- src/battle_util.c | 51 +++++++------ src/fldeff_cut.c | 2 +- src/librfu_rfu.c | 76 +++++++++--------- src/librfu_stwi.c | 4 +- src/map_name_popup.c | 2 +- src/mauville_old_man.c | 4 +- src/pokemon.c | 4 +- src/pokemon_summary_screen.c | 6 +- src/rom_header_gf.c | 4 +- src/scrcmd.c | 2 +- src/trader.c | 2 +- tools/jsonproc/inja.hpp | 4 +- tools/jsonproc/nlohmann/json.hpp | 30 ++++---- 24 files changed, 247 insertions(+), 243 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index c7efdccce3bb..9d7e14efa6fa 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -301,7 +301,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi sTempTextPrinter.textSpeed = 0; // Render all text (up to limit) at once - for (j = 0; j < 0x400; ++j) + for (j = 0; j < 0x400; j++) { if (RenderFont(&sTempTextPrinter) == RENDER_FINISH) break; @@ -322,7 +322,7 @@ void RunTextPrinters(void) if (!gDisableTextPrinters) { - for (i = 0; i < NUM_TEXT_PRINTERS; ++i) + for (i = 0; i < NUM_TEXT_PRINTERS; i++) { if (sTextPrinters[i].active) { @@ -1318,7 +1318,7 @@ static u32 (*GetFontWidthFunc(u8 fontId))(u16, bool32) { u32 i; - for (i = 0; i < ARRAY_COUNT(sGlyphWidthFuncs); ++i) + for (i = 0; i < ARRAY_COUNT(sGlyphWidthFuncs); i++) { if (fontId == sGlyphWidthFuncs[i].fontId) return sGlyphWidthFuncs[i].func; diff --git a/gflib/window.c b/gflib/window.c index ff9e8a6e01cb..27faac38445a 100644 --- a/gflib/window.c +++ b/gflib/window.c @@ -38,7 +38,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) u8 *allocatedTilemapBuffer; int allocatedBaseBlock; - for (i = 0; i < NUM_BACKGROUNDS; ++i) + for (i = 0; i < NUM_BACKGROUNDS; i++) { bgTilemapBuffer = GetBgTilemapBuffer(i); if (bgTilemapBuffer != NULL) @@ -47,7 +47,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) gWindowBgTilemapBuffers[i] = bgTilemapBuffer; } - for (i = 0; i < WINDOWS_MAX; ++i) + for (i = 0; i < WINDOWS_MAX; i++) { gWindows[i].window = sDummyWindowTemplate; gWindows[i].tileData = NULL; @@ -76,7 +76,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) return FALSE; } - for (j = 0; j < attrib; ++j) + for (j = 0; j < attrib; j++) allocatedTilemapBuffer[j] = 0; gWindowBgTilemapBuffers[bgLayer] = allocatedTilemapBuffer; @@ -151,7 +151,7 @@ u16 AddWindow(const struct WindowTemplate *template) if (allocatedTilemapBuffer == NULL) return WINDOW_NONE; - for (i = 0; i < attrib; ++i) + for (i = 0; i < attrib; i++) allocatedTilemapBuffer[i] = 0; gWindowBgTilemapBuffers[bgLayer] = allocatedTilemapBuffer; @@ -249,7 +249,7 @@ void FreeAllWindowBuffers(void) { int i; - for (i = 0; i < NUM_BACKGROUNDS; ++i) + for (i = 0; i < NUM_BACKGROUNDS; i++) { if (gWindowBgTilemapBuffers[i] != NULL && gWindowBgTilemapBuffers[i] != DummyWindowBgTilemap) { @@ -258,7 +258,7 @@ void FreeAllWindowBuffers(void) } } - for (i = 0; i < WINDOWS_MAX; ++i) + for (i = 0; i < WINDOWS_MAX; i++) { if (gWindows[i].tileData != NULL) { @@ -342,7 +342,7 @@ void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 h u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, BG_ATTR_BASETILE); int i; - for (i = 0; i < height; ++i) + for (i = 0; i < height; i++) { WriteSequenceToBgTilemapBuffer( windowLocal.window.bg, @@ -379,7 +379,7 @@ void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height) u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, BG_ATTR_BASETILE); int i; - for (i = 0; i < height; ++i) + for (i = 0; i < height; i++) { WriteSequenceToBgTilemapBuffer( windowLocal.window.bg, diff --git a/include/battle_main.h b/include/battle_main.h index 96efe9ded3f5..e3e0cb7ea4b2 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -50,11 +50,11 @@ void SpriteCB_VsLetterInit(struct Sprite *sprite); void CB2_InitEndLinkBattle(void); u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId); u32 GetBattleWindowTemplatePixelWidth(u32 setId, u32 tableId); -void SpriteCb_WildMon(struct Sprite *sprite); +void SpriteCB_WildMon(struct Sprite *sprite); void SpriteCallbackDummy_2(struct Sprite *sprite); void SpriteCB_FaintOpponentMon(struct Sprite *sprite); -void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite); -void SpriteCb_HideAsMoveTarget(struct Sprite *sprite); +void SpriteCB_ShowAsMoveTarget(struct Sprite *sprite); +void SpriteCB_HideAsMoveTarget(struct Sprite *sprite); void SpriteCB_OpponentMonFromBall(struct Sprite *sprite); void SpriteCB_BattleSpriteStartSlideLeft(struct Sprite *sprite); void SpriteCB_FaintSlideAnim(struct Sprite *sprite); diff --git a/include/battle_util.h b/include/battle_util.h index 8428be8d9ee2..c7de9aae86de 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -64,7 +64,6 @@ u8 GetBattlerForBattleScript(u8 caseId); void PressurePPLose(u8 target, u8 attacker, u16 move); void PressurePPLoseOnUsingPerishSong(u8 attacker); void PressurePPLoseOnUsingImprison(u8 attacker); -void MarkAllBattlersForControllerExec(void); // unused void MarkBattlerForControllerExec(u8 battlerId); void MarkBattlerReceivedLinkData(u8 battlerId); void CancelMultiTurnMoves(u8 battlerId); diff --git a/include/constants/battle.h b/include/constants/battle.h index 2c35c5657cdb..41bdb7a883c5 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -316,6 +316,11 @@ #define FLEE_ITEM 1 #define FLEE_ABILITY 2 +// Return value for IsRunningFromBattleImpossible. +#define BATTLE_RUN_SUCCESS 0 +#define BATTLE_RUN_FORBIDDEN 1 +#define BATTLE_RUN_FAILURE 2 + #define B_WIN_TYPE_NORMAL 0 #define B_WIN_TYPE_ARENA 1 diff --git a/src/battle_arena.c b/src/battle_arena.c index 92b7c66a3a8c..36f7286018c7 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -35,7 +35,7 @@ static void SaveArenaChallenge(void); static void SetArenaPrize(void); static void GiveArenaPrize(void); static void BufferArenaOpponentName(void); -static void SpriteCb_JudgmentIcon(struct Sprite *sprite); +static void SpriteCB_JudgmentIcon(struct Sprite *sprite); static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler); static const s8 sMindRatings[] = @@ -456,7 +456,7 @@ static const struct SpriteTemplate sSpriteTemplate_JudgmentIcon = .anims = sJudgementIconAnimCmds, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_JudgmentIcon, + .callback = SpriteCB_JudgmentIcon, }; static const struct CompressedSpriteSheet sBattleArenaJudgementSymbolsSpriteSheet[] = @@ -679,7 +679,7 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) StartSpriteAnim(&gSprites[pointsPlayer], animNum); } -static void SpriteCb_JudgmentIcon(struct Sprite *sprite) +static void SpriteCB_JudgmentIcon(struct Sprite *sprite) { if (gBattleCommunication[0] > 8) DestroySprite(sprite); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 272e0120c6f4..cf74fefbe06c 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -364,7 +364,7 @@ static void HandleInputChooseTarget(void) if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_HideAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_HideAsMoveTarget; BtlController_EmitTwoReturnValues(BUFFER_B, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8)); EndBounceEffect(gMultiUsePlayerCursor, BOUNCE_HEALTHBOX); PlayerBufferExecCompleted(); @@ -372,7 +372,7 @@ static void HandleInputChooseTarget(void) else if (JOY_NEW(B_BUTTON) || gPlayerDpadHoldFrames > 59) { PlaySE(SE_SELECT); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_HideAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_HideAsMoveTarget; gBattlerControllerFuncs[gActiveBattler] = HandleInputChooseMove; DoBounceEffect(gActiveBattler, BOUNCE_HEALTHBOX, 7, 1); DoBounceEffect(gActiveBattler, BOUNCE_MON, 7, 1); @@ -381,7 +381,7 @@ static void HandleInputChooseTarget(void) else if (JOY_NEW(DPAD_LEFT | DPAD_UP)) { PlaySE(SE_SELECT); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_HideAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_HideAsMoveTarget; do { @@ -422,12 +422,12 @@ static void HandleInputChooseTarget(void) if (gAbsentBattlerFlags & gBitTable[gMultiUsePlayerCursor]) i = 0; } while (i == 0); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_ShowAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_ShowAsMoveTarget; } else if (JOY_NEW(DPAD_RIGHT | DPAD_DOWN)) { PlaySE(SE_SELECT); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_HideAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_HideAsMoveTarget; do { @@ -464,7 +464,7 @@ static void HandleInputChooseTarget(void) if (gAbsentBattlerFlags & gBitTable[gMultiUsePlayerCursor]) i = 0; } while (i == 0); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_ShowAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_ShowAsMoveTarget; } } @@ -537,7 +537,7 @@ static void HandleInputChooseMove(void) else gMultiUsePlayerCursor = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); - gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCb_ShowAsMoveTarget; + gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_ShowAsMoveTarget; } } else if (JOY_NEW(B_BUTTON) || gPlayerDpadHoldFrames > 59) diff --git a/src/battle_dome.c b/src/battle_dome.c index e82470d9aed7..45aed3ca8bc6 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -108,8 +108,8 @@ static u8 UpdateTourneyTreeCursor(u8); static void DecideRoundWinners(u8); static u8 GetOpposingNPCTournamentIdByRound(u8, u8); static void DrawTourneyAdvancementLine(u8, u8); -static void SpriteCb_HorizontalScrollArrow(struct Sprite *); -static void SpriteCb_VerticalScrollArrow(struct Sprite *); +static void SpriteCB_HorizontalScrollArrow(struct Sprite *); +static void SpriteCB_VerticalScrollArrow(struct Sprite *); static void InitDomeChallenge(void); static void GetDomeData(void); static void SetDomeData(void); @@ -1089,7 +1089,7 @@ static const struct SpriteTemplate sHorizontalScrollArrowSpriteTemplate = .anims = sSpriteAnimTable_HorizontalScrollArrow, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_HorizontalScrollArrow + .callback = SpriteCB_HorizontalScrollArrow }; static const struct SpriteTemplate sVerticalScrollArrowSpriteTemplate = @@ -1100,7 +1100,7 @@ static const struct SpriteTemplate sVerticalScrollArrowSpriteTemplate = .anims = sSpriteAnimTable_VerticalScrollArrow, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCb_VerticalScrollArrow + .callback = SpriteCB_VerticalScrollArrow }; // Organized by seed starting position, i.e. seed 0 battles seed 8 first @@ -3115,7 +3115,7 @@ static void Task_ShowTourneyInfoCard(u8 taskId) // Note: Card scrolling up means the current card goes down and another one appears from top. // The same is true for scrolling left. // That means that the sprite needs to move with the moving card in the opposite scrolling direction. -static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite) +static void SpriteCB_TrainerIconCardScrollUp(struct Sprite *sprite) { sprite->y += 4; if (sprite->data[0] != 0) @@ -3135,7 +3135,7 @@ static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite) } } -static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite) +static void SpriteCB_TrainerIconCardScrollDown(struct Sprite *sprite) { sprite->y -= 4; if (sprite->data[0] != 0) @@ -3155,7 +3155,7 @@ static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite) } } -static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite) +static void SpriteCB_TrainerIconCardScrollLeft(struct Sprite *sprite) { sprite->x += 4; if (sprite->data[0] != 0) @@ -3175,7 +3175,7 @@ static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite) } } -static void SpriteCb_TrainerIconCardScrollRight(struct Sprite *sprite) +static void SpriteCB_TrainerIconCardScrollRight(struct Sprite *sprite) { sprite->x -= 4; if (sprite->data[0] != 0) @@ -3197,13 +3197,13 @@ static void SpriteCb_TrainerIconCardScrollRight(struct Sprite *sprite) #define sMonIconStill data[3] -static void SpriteCb_MonIcon(struct Sprite *sprite) +static void SpriteCB_MonIconDomeInfo(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); } -static void SpriteCb_MonIconCardScrollUp(struct Sprite *sprite) +static void SpriteCB_MonIconCardScrollUp(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); @@ -3213,7 +3213,7 @@ static void SpriteCb_MonIconCardScrollUp(struct Sprite *sprite) if (sprite->y >= -16) sprite->invisible = FALSE; if (++sprite->data[1] == 40) - sprite->callback = SpriteCb_MonIcon; + sprite->callback = SpriteCB_MonIconDomeInfo; } else { @@ -3225,7 +3225,7 @@ static void SpriteCb_MonIconCardScrollUp(struct Sprite *sprite) } } -static void SpriteCb_MonIconCardScrollDown(struct Sprite *sprite) +static void SpriteCB_MonIconCardScrollDown(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); @@ -3235,7 +3235,7 @@ static void SpriteCb_MonIconCardScrollDown(struct Sprite *sprite) if (sprite->y <= 176) sprite->invisible = FALSE; if (++sprite->data[1] == 40) - sprite->callback = SpriteCb_MonIcon; + sprite->callback = SpriteCB_MonIconDomeInfo; } else { @@ -3247,7 +3247,7 @@ static void SpriteCb_MonIconCardScrollDown(struct Sprite *sprite) } } -static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite) +static void SpriteCB_MonIconCardScrollLeft(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); @@ -3257,7 +3257,7 @@ static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite) if (sprite->x >= -16) sprite->invisible = FALSE; if (++sprite->data[1] == 64) - sprite->callback = SpriteCb_MonIcon; + sprite->callback = SpriteCB_MonIconDomeInfo; } else { @@ -3269,7 +3269,7 @@ static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite) } } -static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite) +static void SpriteCB_MonIconCardScrollRight(struct Sprite *sprite) { if (!sprite->sMonIconStill) UpdateMonIconFrame(sprite); @@ -3279,7 +3279,7 @@ static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite) if (sprite->x <= DISPLAY_WIDTH + 16) sprite->invisible = FALSE; if (++sprite->data[1] == 64) - sprite->callback = SpriteCb_MonIcon; + sprite->callback = SpriteCB_MonIconDomeInfo; } else { @@ -3291,7 +3291,7 @@ static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite) } } -static void SpriteCb_HorizontalScrollArrow(struct Sprite *sprite) +static void SpriteCB_HorizontalScrollArrow(struct Sprite *sprite) { int taskId1 = sprite->data[0]; int arrId = gTasks[gTasks[taskId1].data[4]].data[1]; @@ -3360,7 +3360,7 @@ static void SpriteCb_HorizontalScrollArrow(struct Sprite *sprite) } } -static void SpriteCb_VerticalScrollArrow(struct Sprite *sprite) +static void SpriteCB_VerticalScrollArrow(struct Sprite *sprite) { int taskId1 = sprite->data[0]; @@ -3526,7 +3526,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollUp; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollUp; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3537,7 +3537,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollUp; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollUp; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3550,7 +3550,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollUp; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollUp; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3561,7 +3561,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollUp; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollUp; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3642,7 +3642,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollDown; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollDown; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3653,7 +3653,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollDown; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollDown; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3666,7 +3666,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollDown; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollDown; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3677,7 +3677,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollDown; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollDown; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3725,7 +3725,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3736,7 +3736,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3749,7 +3749,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3760,7 +3760,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3808,7 +3808,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3819,7 +3819,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3832,7 +3832,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3843,7 +3843,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollLeft; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollLeft; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3889,7 +3889,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3900,7 +3900,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3913,7 +3913,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3924,7 +3924,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3972,7 +3972,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3983,7 +3983,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot ^ 1; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -3996,7 +3996,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_TrainerIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_TrainerIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -4007,7 +4007,7 @@ static void Task_HandleInfoCardInput(u8 taskId) { if (sInfoCard->spriteIds[i] != SPRITE_NONE) { - gSprites[sInfoCard->spriteIds[i]].callback = SpriteCb_MonIconCardScrollRight; + gSprites[sInfoCard->spriteIds[i]].callback = SpriteCB_MonIconCardScrollRight; gSprites[sInfoCard->spriteIds[i]].data[0] = gTasks[taskId].tUsingAlternateSlot; gSprites[sInfoCard->spriteIds[i]].data[1] = 0; gSprites[sInfoCard->spriteIds[i]].data[2] = i; @@ -4297,7 +4297,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) if (trainerId == TRAINER_PLAYER) { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(DOME_MONS[trainerTourneyId][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sInfoTrainerMonX[i], y + sInfoTrainerMonY[i], 0, 0, TRUE); @@ -4306,7 +4306,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) else if (trainerId == TRAINER_FRONTIER_BRAIN) { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(DOME_MONS[trainerTourneyId][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sInfoTrainerMonX[i], y + sInfoTrainerMonY[i], 0, 0, TRUE); @@ -4315,7 +4315,7 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId) else { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(gFacilityTrainerMons[DOME_MONS[trainerTourneyId][i]].species, - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sInfoTrainerMonX[i], y + sInfoTrainerMonY[i], 0, 0, TRUE); @@ -4786,7 +4786,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) if (trainerIds[0] == TRAINER_PLAYER) { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(DOME_MONS[tournamentIds[0]][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sLeftTrainerMonX[i], y + sLeftTrainerMonY[i], 0, 0, TRUE); @@ -4795,7 +4795,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) else if (trainerIds[0] == TRAINER_FRONTIER_BRAIN) { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(DOME_MONS[tournamentIds[0]][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sLeftTrainerMonX[i], y + sLeftTrainerMonY[i], 0, 0, TRUE); @@ -4804,7 +4804,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) else { sInfoCard->spriteIds[2 + i + arrId] = CreateMonIcon(gFacilityTrainerMons[DOME_MONS[tournamentIds[0]][i]].species, - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sLeftTrainerMonX[i], y + sLeftTrainerMonY[i], 0, 0, TRUE); @@ -4826,7 +4826,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) if (trainerIds[1] == TRAINER_PLAYER) { sInfoCard->spriteIds[5 + i + arrId] = CreateMonIcon(DOME_MONS[tournamentIds[1]][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sRightTrainerMonX[i], y + sRightTrainerMonY[i], 0, 0, TRUE); @@ -4835,7 +4835,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) else if (trainerIds[1] == TRAINER_FRONTIER_BRAIN) { sInfoCard->spriteIds[5 + i + arrId] = CreateMonIcon(DOME_MONS[tournamentIds[1]][i], - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sRightTrainerMonX[i], y + sRightTrainerMonY[i], 0, 0, TRUE); @@ -4844,7 +4844,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo) else { sInfoCard->spriteIds[5 + i + arrId] = CreateMonIcon(gFacilityTrainerMons[DOME_MONS[tournamentIds[1]][i]].species, - SpriteCb_MonIcon, + SpriteCB_MonIconDomeInfo, x | sRightTrainerMonX[i], y + sRightTrainerMonY[i], 0, 0, TRUE); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index ca6be9d4e2e8..1cb3d65bc693 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; diff --git a/src/battle_main.c b/src/battle_main.c index 6a4244b1ae28..d80542f7beb1 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -78,12 +78,12 @@ static void EndLinkBattleInSteps(void); static void CB2_InitAskRecordBattle(void); static void CB2_AskRecordBattle(void); static void AskRecordBattle(void); -static void SpriteCb_MoveWildMonToRight(struct Sprite *sprite); -static void SpriteCb_WildMonShowHealthbox(struct Sprite *sprite); -static void SpriteCb_WildMonAnimate(struct Sprite *sprite); +static void SpriteCB_MoveWildMonToRight(struct Sprite *sprite); +static void SpriteCB_WildMonShowHealthbox(struct Sprite *sprite); +static void SpriteCB_WildMonAnimate(struct Sprite *sprite); static void SpriteCB_Flicker(struct Sprite *sprite); static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite); -static void SpriteCb_BlinkVisible(struct Sprite *sprite); +static void SpriteCB_BlinkVisible(struct Sprite *sprite); static void SpriteCB_Idle(struct Sprite *sprite); static void SpriteCB_BattleSpriteSlideLeft(struct Sprite *sprite); static void TurnValuesCleanUp(bool8 var0); @@ -557,7 +557,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}, @@ -816,8 +816,8 @@ static void SetAllPlayersBerryData(void) gEnigmaBerries[2].itemEffect[i] = 0; } - gEnigmaBerries[0].holdEffect = 0; - gEnigmaBerries[2].holdEffect = 0; + gEnigmaBerries[0].holdEffect = HOLD_EFFECT_NONE; + gEnigmaBerries[2].holdEffect = HOLD_EFFECT_NONE; gEnigmaBerries[0].holdEffectParam = 0; gEnigmaBerries[2].holdEffectParam = 0; } @@ -2650,38 +2650,38 @@ u32 GetBattleWindowTemplatePixelWidth(u32 windowsType, u32 tableId) #define sBattler data[0] #define sSpeciesId data[2] -void SpriteCb_WildMon(struct Sprite *sprite) +void SpriteCB_WildMon(struct Sprite *sprite) { - sprite->callback = SpriteCb_MoveWildMonToRight; + sprite->callback = SpriteCB_MoveWildMonToRight; StartSpriteAnimIfDifferent(sprite, 0); BeginNormalPaletteFade(0x20000, 0, 10, 10, RGB(8, 8, 8)); } -static void SpriteCb_MoveWildMonToRight(struct Sprite *sprite) +static void SpriteCB_MoveWildMonToRight(struct Sprite *sprite) { if ((gIntroSlideFlags & 1) == 0) { sprite->x2 += 2; if (sprite->x2 == 0) { - sprite->callback = SpriteCb_WildMonShowHealthbox; + sprite->callback = SpriteCB_WildMonShowHealthbox; } } } -static void SpriteCb_WildMonShowHealthbox(struct Sprite *sprite) +static void SpriteCB_WildMonShowHealthbox(struct Sprite *sprite) { if (sprite->animEnded) { StartHealthboxSlideIn(sprite->sBattler); SetHealthboxSpriteVisible(gHealthboxSpriteIds[sprite->sBattler]); - sprite->callback = SpriteCb_WildMonAnimate; + sprite->callback = SpriteCB_WildMonAnimate; StartSpriteAnimIfDifferent(sprite, 0); BeginNormalPaletteFade(0x20000, 0, 10, 0, RGB(8, 8, 8)); } } -static void SpriteCb_WildMonAnimate(struct Sprite *sprite) +static void SpriteCB_WildMonAnimate(struct Sprite *sprite) { if (!gPaletteFade.active) { @@ -2798,14 +2798,14 @@ static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite) } // Used when selecting a move, which can hit multiple targets, in double battles. -void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite) +void SpriteCB_ShowAsMoveTarget(struct Sprite *sprite) { sprite->data[3] = 8; sprite->data[4] = sprite->invisible; - sprite->callback = SpriteCb_BlinkVisible; + sprite->callback = SpriteCB_BlinkVisible; } -static void SpriteCb_BlinkVisible(struct Sprite *sprite) +static void SpriteCB_BlinkVisible(struct Sprite *sprite) { if (--sprite->data[3] == 0) { @@ -2814,7 +2814,7 @@ static void SpriteCb_BlinkVisible(struct Sprite *sprite) } } -void SpriteCb_HideAsMoveTarget(struct Sprite *sprite) +void SpriteCB_HideAsMoveTarget(struct Sprite *sprite) { sprite->invisible = sprite->data[4]; sprite->data[4] = FALSE; @@ -3038,13 +3038,13 @@ static void BattleStartClearSetData(void) gDisableStructs[i].isFirstTurn = 2; sUnusedBattlersArray[i] = 0; - gLastMoves[i] = 0; - gLastLandedMoves[i] = 0; + gLastMoves[i] = MOVE_NONE; + gLastLandedMoves[i] = MOVE_NONE; gLastHitByType[i] = 0; - gLastResultingMoves[i] = 0; + gLastResultingMoves[i] = MOVE_NONE; gLastHitBy[i] = 0xFF; - gLockedMoves[i] = 0; - gLastPrintedMoves[i] = 0; + gLockedMoves[i] = MOVE_NONE; + gLastPrintedMoves[i] = MOVE_NONE; gBattleResources->flags->flags[i] = 0; gPalaceSelectionBattleScripts[i] = 0; } @@ -3105,10 +3105,10 @@ static void BattleStartClearSetData(void) for (i = 0; i < 8; i++) { - *((u8 *)gBattleStruct->lastTakenMove + i) = 0; - *((u8 *)gBattleStruct->usedHeldItems + i) = 0; - *((u8 *)gBattleStruct->choicedMove + i) = 0; - *((u8 *)gBattleStruct->changedItems + i) = 0; + *((u8 *)gBattleStruct->lastTakenMove + i) = MOVE_NONE; + *((u8 *)gBattleStruct->usedHeldItems + i) = ITEM_NONE; + *((u8 *)gBattleStruct->choicedMove + i) = MOVE_NONE; + *((u8 *)gBattleStruct->changedItems + i) = ITEM_NONE; *(i + 0 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(i + 1 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(i + 2 * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; @@ -3205,15 +3205,15 @@ void SwitchInClearSetData(void) gMoveResultFlags = 0; gDisableStructs[gActiveBattler].isFirstTurn = 2; gDisableStructs[gActiveBattler].truantSwitchInHack = disableStructCopy.truantSwitchInHack; - gLastMoves[gActiveBattler] = 0; - gLastLandedMoves[gActiveBattler] = 0; + gLastMoves[gActiveBattler] = MOVE_NONE; + gLastLandedMoves[gActiveBattler] = MOVE_NONE; gLastHitByType[gActiveBattler] = 0; - gLastResultingMoves[gActiveBattler] = 0; - gLastPrintedMoves[gActiveBattler] = 0; + gLastResultingMoves[gActiveBattler] = MOVE_NONE; + gLastPrintedMoves[gActiveBattler] = MOVE_NONE; gLastHitBy[gActiveBattler] = 0xFF; - *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0; - *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0; + *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = MOVE_NONE; + *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = MOVE_NONE; *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; @@ -3229,18 +3229,18 @@ void SwitchInClearSetData(void) { if (i != gActiveBattler && GetBattlerSide(i) != GetBattlerSide(gActiveBattler)) { - *(gBattleStruct->lastTakenMove + i * 2 + 0) = 0; - *(gBattleStruct->lastTakenMove + i * 2 + 1) = 0; + *(gBattleStruct->lastTakenMove + i * 2 + 0) = MOVE_NONE; + *(gBattleStruct->lastTakenMove + i * 2 + 1) = MOVE_NONE; } *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; } - *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; - *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = MOVE_NONE; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = MOVE_NONE; gBattleResources->flags->flags[gActiveBattler] = 0; - gCurrentMove = 0; + gCurrentMove = MOVE_NONE; gBattleStruct->arenaTurnCounter = 0xFF; ClearBattlerMoveHistory(gActiveBattler); @@ -3297,18 +3297,18 @@ void FaintClearSetData(void) gDisableStructs[gActiveBattler].isFirstTurn = 2; - gLastMoves[gActiveBattler] = 0; - gLastLandedMoves[gActiveBattler] = 0; + gLastMoves[gActiveBattler] = MOVE_NONE; + gLastLandedMoves[gActiveBattler] = MOVE_NONE; gLastHitByType[gActiveBattler] = 0; - gLastResultingMoves[gActiveBattler] = 0; - gLastPrintedMoves[gActiveBattler] = 0; + gLastResultingMoves[gActiveBattler] = MOVE_NONE; + gLastPrintedMoves[gActiveBattler] = MOVE_NONE; gLastHitBy[gActiveBattler] = 0xFF; - *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0; - *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = MOVE_NONE; + *(u8 *)((u8 *)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = MOVE_NONE; - *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0; - *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0; + *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = MOVE_NONE; + *(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = MOVE_NONE; *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(0 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; *(1 * 2 + gActiveBattler * 8 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; @@ -3324,8 +3324,8 @@ void FaintClearSetData(void) { if (i != gActiveBattler && GetBattlerSide(i) != GetBattlerSide(gActiveBattler)) { - *(gBattleStruct->lastTakenMove + i * 2 + 0) = 0; - *(gBattleStruct->lastTakenMove + i * 2 + 1) = 0; + *(gBattleStruct->lastTakenMove + i * 2 + 0) = MOVE_NONE; + *(gBattleStruct->lastTakenMove + i * 2 + 1) = MOVE_NONE; } *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 0) = 0; *(i * 8 + gActiveBattler * 2 + (u8 *)(gBattleStruct->lastTakenMoveFrom) + 1) = 0; @@ -3371,8 +3371,8 @@ static void BattleIntroPrepareBackgroundSlide(void) BtlController_EmitIntroSlide(BUFFER_A, gBattleTerrain); MarkBattlerForControllerExec(gActiveBattler); gBattleMainFunc = BattleIntroDrawTrainersOrMonsSprites; - gBattleCommunication[0] = 0; - gBattleCommunication[1] = 0; + gBattleCommunication[MULTIUSE_STATE] = 0; + gBattleCommunication[SPRITES_INIT_STATE1] = 0; } } @@ -3387,7 +3387,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void) for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++) { if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI) - && GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) + && GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { ptr = (u8 *)&gBattleMons[gActiveBattler]; for (i = 0; i < sizeof(struct BattlePokemon); i++) @@ -3545,7 +3545,6 @@ static void BattleIntroDrawPartySummaryScreens(void) gBattleMainFunc = BattleIntroPrintWildMonAttacked; } - } static void BattleIntroPrintTrainerWantsToBattle(void) @@ -3839,7 +3838,7 @@ static void TryDoEventsBeforeFirstTurn(void) gBattleStruct->switchInAbilitiesCounter++; - if (effect) + if (effect != 0) return; } if (AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE1, 0, 0, 0, 0) != 0) @@ -3854,7 +3853,7 @@ static void TryDoEventsBeforeFirstTurn(void) gBattleStruct->switchInItemsCounter++; - if (effect) + if (effect != 0) return; } for (i = 0; i < MAX_BATTLERS_COUNT; i++) @@ -3997,11 +3996,11 @@ u8 IsRunningFromBattleImpossible(void) gPotentialItemEffectBattler = gActiveBattler; if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN) - return 0; + return BATTLE_RUN_SUCCESS; if (gBattleTypeFlags & BATTLE_TYPE_LINK) - return 0; + return BATTLE_RUN_SUCCESS; if (gBattleMons[gActiveBattler].ability == ABILITY_RUN_AWAY) - return 0; + return BATTLE_RUN_SUCCESS; side = GetBattlerSide(gActiveBattler); @@ -4013,7 +4012,7 @@ u8 IsRunningFromBattleImpossible(void) gBattleScripting.battler = i; gLastUsedAbility = gBattleMons[i].ability; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; - return 2; + return BATTLE_RUN_FAILURE; } if (side != GetBattlerSide(i) && gBattleMons[gActiveBattler].ability != ABILITY_LEVITATE @@ -4023,7 +4022,7 @@ u8 IsRunningFromBattleImpossible(void) gBattleScripting.battler = i; gLastUsedAbility = gBattleMons[i].ability; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; - return 2; + return BATTLE_RUN_FAILURE; } } i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0); @@ -4032,20 +4031,20 @@ u8 IsRunningFromBattleImpossible(void) gBattleScripting.battler = i - 1; gLastUsedAbility = gBattleMons[i - 1].ability; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PREVENTS_ESCAPE; - return 2; + return BATTLE_RUN_FAILURE; } if ((gBattleMons[gActiveBattler].status2 & (STATUS2_ESCAPE_PREVENTION | STATUS2_WRAPPED)) || (gStatuses3[gActiveBattler] & STATUS3_ROOTED)) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CANT_ESCAPE; - return 1; + return BATTLE_RUN_FORBIDDEN; } if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DONT_LEAVE_BIRCH; - return 1; + return BATTLE_RUN_FORBIDDEN; } - return 0; + return BATTLE_RUN_SUCCESS; } void SwitchPartyOrder(u8 battler) @@ -4301,7 +4300,7 @@ static void HandleTurnActionSelectionState(void) BattleScriptExecute(BattleScript_PrintCantRunFromTrainer); gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN; } - else if (IsRunningFromBattleImpossible() + else if (IsRunningFromBattleImpossible() != BATTLE_RUN_SUCCESS && gBattleBufferB[gActiveBattler][1] == B_ACTION_RUN) { gSelectionBattleScripts[gActiveBattler] = BattleScript_PrintCantEscapeFromBattle; diff --git a/src/battle_message.c b/src/battle_message.c index 677bb2fe3863..9e274926de49 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 @@ -1405,7 +1405,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, diff --git a/src/battle_util.c b/src/battle_util.c index e75d3f01d6f1..498db41620fb 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -471,7 +471,7 @@ bool8 TryRunFromBattle(u8 battler) gBattleStruct->runTries++; } - if (effect) + if (effect != 0) { gCurrentTurnActionNumber = gBattlersCount; gBattleOutcome = B_OUTCOME_RAN; @@ -823,7 +823,8 @@ void PressurePPLoseOnUsingPerishSong(u8 attacker) } } -void MarkAllBattlersForControllerExec(void) // unused +// Unused +static void MarkAllBattlersForControllerExec(void) { int i; @@ -1220,7 +1221,7 @@ u8 DoFieldEndTurnEffects(void) } } gBattleStruct->turnSideTracker++; - if (effect) + if (effect != 0) break; } if (!effect) @@ -1246,7 +1247,7 @@ u8 DoFieldEndTurnEffects(void) } } gBattleStruct->turnSideTracker++; - if (effect) + if (effect != 0) break; } if (!effect) @@ -1270,7 +1271,7 @@ u8 DoFieldEndTurnEffects(void) effect++; } gBattleStruct->turnSideTracker++; - if (effect) + if (effect != 0) break; } if (!effect) @@ -1294,7 +1295,7 @@ u8 DoFieldEndTurnEffects(void) } } gBattleStruct->turnSideTracker++; - if (effect) + if (effect != 0) break; } if (!effect) @@ -1316,7 +1317,7 @@ u8 DoFieldEndTurnEffects(void) effect++; } gBattleStruct->turnSideTracker++; - if (effect) + if (effect != 0) break; } if (!effect) @@ -1687,12 +1688,12 @@ u8 DoBattlerEndTurnEffects(void) } if (i == MAX_MON_MOVES) // pokemon does not have the disabled move anymore { - gDisableStructs[gActiveBattler].disabledMove = 0; + gDisableStructs[gActiveBattler].disabledMove = MOVE_NONE; gDisableStructs[gActiveBattler].disableTimer = 0; } else if (--gDisableStructs[gActiveBattler].disableTimer == 0) // disable ends { - gDisableStructs[gActiveBattler].disabledMove = 0; + gDisableStructs[gActiveBattler].disabledMove = MOVE_NONE; BattleScriptExecute(BattleScript_DisabledNoMore); effect++; } @@ -1704,13 +1705,13 @@ u8 DoBattlerEndTurnEffects(void) { if (gBattleMons[gActiveBattler].moves[gDisableStructs[gActiveBattler].encoredMovePos] != gDisableStructs[gActiveBattler].encoredMove) // pokemon does not have the encored move anymore { - gDisableStructs[gActiveBattler].encoredMove = 0; + gDisableStructs[gActiveBattler].encoredMove = MOVE_NONE; gDisableStructs[gActiveBattler].encoreTimer = 0; } else if (--gDisableStructs[gActiveBattler].encoreTimer == 0 || gBattleMons[gActiveBattler].pp[gDisableStructs[gActiveBattler].encoredMovePos] == 0) { - gDisableStructs[gActiveBattler].encoredMove = 0; + gDisableStructs[gActiveBattler].encoredMove = MOVE_NONE; gDisableStructs[gActiveBattler].encoreTimer = 0; BattleScriptExecute(BattleScript_EncoredNoMore); effect++; @@ -2103,7 +2104,7 @@ u8 AtkCanceller_UnableToUseMove(void) gBattleStruct->atkCancellerTracker++; break; case CANCELLER_DISABLED: // disabled move - if (gDisableStructs[gBattlerAttacker].disabledMove == gCurrentMove && gDisableStructs[gBattlerAttacker].disabledMove != 0) + if (gDisableStructs[gBattlerAttacker].disabledMove == gCurrentMove && gDisableStructs[gBattlerAttacker].disabledMove != MOVE_NONE) { gProtectStructs[gBattlerAttacker].usedDisabledMove = 1; gBattleScripting.battler = gBattlerAttacker; @@ -2172,7 +2173,7 @@ u8 AtkCanceller_UnableToUseMove(void) if ((gBattleMons[gBattlerAttacker].status1 & STATUS1_PARALYSIS) && (Random() % 4) == 0) { gProtectStructs[gBattlerAttacker].prlzImmobility = 1; - // This is removed in Emerald for some reason + // This is removed in FRLG and Emerald for some reason //CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsParalyzed; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; @@ -2210,7 +2211,7 @@ u8 AtkCanceller_UnableToUseMove(void) } else { - // This is removed in Emerald for some reason + // This is removed in FRLG and Emerald for some reason //gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_MULTIPLETURNS; if (gTakenDmg[gBattlerAttacker]) { @@ -2506,7 +2507,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA break; } } - if (effect) + if (effect != 0) { gBattleCommunication[MULTISTRING_CHOOSER] = GetCurrentWeather(); BattleScriptPushCursorAndCallback(BattleScript_OverworldWeatherStarts); @@ -2548,7 +2549,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA break; case ABILITY_FORECAST: effect = CastformDataTypeChange(battler); - if (effect) + if (effect != 0) { BattleScriptPushCursorAndCallback(BattleScript_CastformChange); gBattleScripting.battler = battler; @@ -2569,7 +2570,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA for (target1 = 0; target1 < gBattlersCount; target1++) { effect = CastformDataTypeChange(target1); - if (effect) + if (effect != 0) { BattleScriptPushCursorAndCallback(BattleScript_CastformChange); gBattleScripting.battler = target1; @@ -2909,7 +2910,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA } break; } - if (effect) + if (effect != 0) { switch (effect) { @@ -2940,7 +2941,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (gBattleMons[battler].ability == ABILITY_FORECAST) { effect = CastformDataTypeChange(battler); - if (effect) + if (effect != 0) { BattleScriptPushCursorAndCallback(BattleScript_CastformChange); gBattleScripting.battler = battler; @@ -3040,7 +3041,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA effect++; } } - if (effect) + if (effect != 0) { BattleScriptPushCursorAndCallback(BattleScript_TraceActivates); gStatuses3[i] &= ~STATUS3_TRACE; @@ -3300,7 +3301,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) effect = ITEM_STATS_CHANGE; } } - if (effect) + if (effect != 0) { gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; @@ -3371,7 +3372,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) effect = ITEM_STATS_CHANGE; } } - if (effect) + if (effect != 0) { gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; @@ -3583,7 +3584,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; } - if (effect) + if (effect != 0) { gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; @@ -3727,7 +3728,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) effect = ITEM_STATS_CHANGE; } } - if (effect) + if (effect != 0) { gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; @@ -3737,7 +3738,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } break; } - if (effect) + if (effect != 0) { gBattleScripting.battler = battlerId; gPotentialItemEffectBattler = battlerId; diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 0641c6519c24..6cccec8bac90 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -226,7 +226,7 @@ bool8 SetUpFieldMove_Cut(void) y = gPlayerFacingPosition.y + sHyperCutStruct[i].y; tileCuttable = TRUE; - for (j = 0; j < 2; ++j) + for (j = 0; j < 2; j++) { if (sHyperCutStruct[i].unk2[j] == 0) break; // one line required to match -g if (cutTiles[(u8)(sHyperCutStruct[i].unk2[j] - 1)] == FALSE) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 9a5db6d9df53..2e1d7e069eae 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -164,7 +164,7 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p gRfuFixed = (void *)APIBuffer + 0xdc; // + sizeof(*gRfuStatic) gRfuSlotStatusNI[0] = (void *)APIBuffer + 0x1bc; // + sizeof(*gRfuFixed) gRfuSlotStatusUNI[0] = (void *)APIBuffer + 0x37c; // + sizeof(*gRfuSlotStatusNI[0]) * RFU_CHILD_MAX - for (i = 1; i < RFU_CHILD_MAX; ++i) + for (i = 1; i < RFU_CHILD_MAX; i++) { gRfuSlotStatusNI[i] = &gRfuSlotStatusNI[i - 1][1]; gRfuSlotStatusUNI[i] = &gRfuSlotStatusUNI[i - 1][1]; @@ -173,7 +173,7 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p gRfuFixed->STWIBuffer = (struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1]; STWI_init_all((struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1], sioIntrTable_p, copyInterruptToRam); rfu_STC_clearAPIVariables(); - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { gRfuSlotStatusNI[i]->recvBuffer = NULL; gRfuSlotStatusNI[i]->recvBufferSize = 0; @@ -214,7 +214,7 @@ static void rfu_STC_clearAPIVariables(void) gRfuLinkStatus->parentChild = MODE_NEUTRAL; rfu_clearAllSlot(); gRfuStatic->SCStartFlag = 0; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) gRfuStatic->cidBak[i] = 0; REG_IME = IMEBackup; } @@ -294,7 +294,7 @@ static void rfu_CB_defaultCallback(u8 reqCommand, u16 reqResult) if (gRfuStatic->flags & 8) gRfuFixed->reqCallback(reqCommand, reqResult); bmSlotFlags = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) if ((bmSlotFlags >> i) & 1) rfu_STC_removeLinkData(i, 1); gRfuLinkStatus->parentChild = MODE_NEUTRAL; @@ -351,7 +351,7 @@ u16 rfu_MBOOT_CHILD_inheritanceLinkStatus(void) // The size of struct RfuLinkStatus is 180 checksum = 0; - for (i = 0; i < 180/2; ++i) + for (i = 0; i < 180/2; i++) checksum += *mb_buff_iwram_p++; if (checksum != *(u16 *)0x30000FA) return 1; @@ -455,11 +455,11 @@ void rfu_REQ_configGameData(u8 mbootFlag, u16 serialNo, const u8 *gname, const u packet[1] = serialNo >> 8; if (mbootFlag != 0) packet[1] = (serialNo >> 8) | 0x80; - for (i = 2; i < 15; ++i) + for (i = 2; i < 15; i++) packet[i] = *gname++; check_sum = 0; unameBackup = uname; - for (i = 0; i < 8; ++i) + for (i = 0; i < 8; i++) { check_sum += *unameBackup++; check_sum += *gnameBackup++; @@ -493,10 +493,10 @@ static void rfu_CB_configGameData(u8 reqCommand, u16 reqResult) { gRfuLinkStatus->my.mbootFlag = 0; } - for (i = 0; i < RFU_GAME_NAME_LENGTH; ++i) + for (i = 0; i < RFU_GAME_NAME_LENGTH; i++) gRfuLinkStatus->my.gname[i] = *gname_uname_p++; ++gname_uname_p; - for (i = 0; i < PLAYER_NAME_LENGTH + 1; ++i) + for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) gRfuLinkStatus->my.uname[i] = *gname_uname_p++; } rfu_STC_REQ_callback(reqCommand, reqResult); @@ -546,7 +546,7 @@ static void rfu_STC_clearLinkStatus(u8 parentChild) CpuFill16(0, gRfuLinkStatus->partner, sizeof(gRfuLinkStatus->partner)); gRfuLinkStatus->findParentCount = 0; } - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) gRfuLinkStatus->strength[i] = 0; gRfuLinkStatus->connCount = 0; gRfuLinkStatus->connSlotFlag = 0; @@ -609,7 +609,7 @@ static void rfu_STC_readChildList(void) if (STWI_poll_CommandEnd() == 0) { data_p = &gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4]; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) true_slots[i] = *data_p++; } gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket32.data[0] = stwiParam; @@ -696,7 +696,7 @@ static void rfu_STC_readParentCandidateList(void) numSlots = packet_p[1]; packet_p += 4; gRfuLinkStatus->findParentCount = 0; - for (i = 0; i < RFU_CHILD_MAX && numSlots != 0; ++i) + for (i = 0; i < RFU_CHILD_MAX && numSlots != 0; i++) { numSlots -= 7; uname_p = packet_p + 6; @@ -704,7 +704,7 @@ static void rfu_STC_readParentCandidateList(void) check_sum = ~*packet_p; ++packet_p; my_check_sum = 0; - for (j = 0; j < 8; ++j) + for (j = 0; j < 8; j++) { my_check_sum += *packet_p++; my_check_sum += *uname_p++; @@ -723,10 +723,10 @@ static void rfu_STC_readParentCandidateList(void) else target->mbootFlag = 0; packet_p += 2; - for (j = 0; j < RFU_GAME_NAME_LENGTH; ++j) + for (j = 0; j < RFU_GAME_NAME_LENGTH; j++) target->gname[j] = *packet_p++; ++packet_p; - for (j = 0; j < PLAYER_NAME_LENGTH + 1; ++j) + for (j = 0; j < PLAYER_NAME_LENGTH + 1; j++) target->uname[j] = *packet_p++; ++gRfuLinkStatus->findParentCount; } @@ -737,7 +737,7 @@ void rfu_REQ_startConnectParent(u16 pid) { u16 result = 0; u8 i; - for (i = 0; i < RFU_CHILD_MAX && gRfuLinkStatus->partner[i].id != pid; ++i) + for (i = 0; i < RFU_CHILD_MAX && gRfuLinkStatus->partner[i].id != pid; i++) ; if (i == RFU_CHILD_MAX) result = ERR_PID_NOT_FOUND; @@ -782,7 +782,7 @@ static void rfu_CB_pollConnectParent(u8 reqCommand, u16 reqResult) ++gRfuLinkStatus->connCount; gRfuLinkStatus->parentChild = MODE_CHILD; gRfuStatic->flags |= 0x80; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { if (gRfuLinkStatus->partner[i].id == gRfuStatic->tryPid) { @@ -868,7 +868,7 @@ u16 rfu_syncVBlank(void) { gRfuStatic->flags &= 0xFB; bmSlotFlag = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) if ((bmSlotFlag >> i) & 1) rfu_STC_removeLinkData(i, 1); gRfuLinkStatus->parentChild = MODE_NEUTRAL; @@ -921,7 +921,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason newLinkLossFlag ^= gRfuLinkStatus->connSlotFlag; *bmLinkLossSlot = newLinkLossFlag & gRfuLinkStatus->connSlotFlag; *linkLossReason = REASON_LINK_LOSS; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { if ((*bmLinkLossSlot >> i) & 1) { @@ -941,7 +941,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason if (reqResult == 0) { packet_p = &gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4]; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) gRfuLinkStatus->strength[i] = *packet_p++; to_req_disconnect = 0; i = 0; @@ -951,7 +951,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason rfu_STC_REQ_callback(ID_LINK_STATUS_REQ, reqResult); return reqResult; } - for (; i < RFU_CHILD_MAX; ++i) + for (; i < RFU_CHILD_MAX; i++) { #if LIBRFU_VERSION >= 1026 if (gRfuStatic->lsFixedCount[i] != 0) @@ -1128,7 +1128,7 @@ static void rfu_CB_disconnect(u8 reqCommand, u16 reqResult) gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[8] = gRfuStatic->recoveryBmSlot; if (reqResult == 0) { - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { bm_slot_flag = 1 << i; if (bm_slot_flag & gRfuStatic->recoveryBmSlot) @@ -1153,7 +1153,7 @@ void rfu_REQ_CHILD_startConnectRecovery(u8 bmRecoverySlot) u8 i; gRfuStatic->recoveryBmSlot = bmRecoverySlot; - for (i = 0; i < RFU_CHILD_MAX && !((bmRecoverySlot >> i) & 1); ++i) + for (i = 0; i < RFU_CHILD_MAX && !((bmRecoverySlot >> i) & 1); i++) ; STWI_set_Callback_M(rfu_STC_REQ_callback); // if i == 4, gRfuLinkStatus->partner[i].id becomes gRfuLinkStatus->my.id @@ -1174,7 +1174,7 @@ static void rfu_CB_CHILD_pollConnectRecovery(u8 reqCommand, u16 reqResult) if (reqResult == 0 && gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4] == 0 && gRfuStatic->recoveryBmSlot) { gRfuLinkStatus->parentChild = MODE_CHILD; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { bm_slot_flag = 1 << i; rfuLinkStatus = gRfuLinkStatus; // ??? @@ -1256,7 +1256,7 @@ void rfu_clearAllSlot(void) u16 IMEBackup = REG_IME; REG_IME = 0; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { CpuFill16(0, gRfuSlotStatusNI[i], 2 * sizeof(struct NIComm)); CpuFill16(0, gRfuSlotStatusUNI[i], sizeof(struct UNISend) + sizeof(struct UNIRecv)); @@ -1324,7 +1324,7 @@ u16 rfu_clearSlot(u8 connTypeFlag, u8 slotStatusIndex) if (NI_comm->state & SLOT_BUSY_FLAG) { rfu_STC_releaseFrame(slotStatusIndex, send_recv, NI_comm); - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) if ((NI_comm->bmSlotOrg >> i) & 1) NI_comm->failCounter = 0; } @@ -1450,7 +1450,7 @@ static u16 rfu_STC_setSendData_org(u8 ni_or_uni, u8 bmSendSlot, u8 subFrameSize, slotStatus_NI->send.src = src; slotStatus_NI->send.ack = 0; slotStatus_NI->send.phase = 0; - for (i = 0; i < WINDOW_COUNT; ++i) + for (i = 0; i < WINDOW_COUNT; i++) { slotStatus_NI->send.recvAckFlag[i] = 0; slotStatus_NI->send.n[i] = 1; @@ -1503,7 +1503,7 @@ u16 rfu_changeSendTarget(u8 connType, u8 slotStatusIndex, u8 bmNewTgtSlot) { imeBak = REG_IME; REG_IME = 0; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { if ((connType >> i) & 1) gRfuSlotStatusNI[i]->send.failCounter = 0; @@ -1536,7 +1536,7 @@ u16 rfu_changeSendTarget(u8 connType, u8 slotStatusIndex, u8 bmNewTgtSlot) if (gRfuSlotStatusUNI[slotStatusIndex]->send.state != SLOT_STATE_SEND_UNI) return ERR_SLOT_NOT_SENDING; - for (bmSlot = 0, i = 0; i < RFU_CHILD_MAX; ++i) + for (bmSlot = 0, i = 0; i < RFU_CHILD_MAX; i++) if (i != slotStatusIndex) bmSlot |= gRfuSlotStatusUNI[i]->send.bmSlot; if (bmNewTgtSlot & bmSlot) @@ -1695,7 +1695,7 @@ static void rfu_CB_sendData(UNUSED u8 reqCommand, u16 reqResult) if (reqResult == 0) { - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { if (gRfuSlotStatusUNI[i]->send.dataReadyFlag) gRfuSlotStatusUNI[i]->send.dataReadyFlag = 0; @@ -1739,7 +1739,7 @@ static void rfu_constructSendLLFrame(void) gRfuLinkStatus->LLFReadyFlag = 0; pakcketSize = 0; llf_p = (u8 *)&gRfuFixed->LLFBuffer[1]; - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { currSize = 0; if (gRfuSlotStatusNI[i]->send.state & SLOT_BUSY_FLAG) @@ -1815,7 +1815,7 @@ static u16 rfu_STC_NI_constructLLSF(u8 bm_slot_id, u8 **dest_pp, struct NIComm * if (gRfuLinkStatus->parentChild == MODE_PARENT) frame |= NI_comm->bmSlot << 18; frame8_p = (u8 *)&frame; - for (i = 0; i < llsf->frameSize; ++i) + for (i = 0; i < llsf->frameSize; i++) *(*dest_pp)++ = *frame8_p++; if (size != 0) { @@ -1853,7 +1853,7 @@ static u16 rfu_STC_UNI_constructLLSF(u8 bm_slot_id, u8 **dest_p) if (gRfuLinkStatus->parentChild == MODE_PARENT) frame |= UNI_send->bmSlot << 18; frame8_p = (u8 *)&frame; - for (i = 0; i < llsf->frameSize; ++i) + for (i = 0; i < llsf->frameSize; i++) *(*dest_p)++ = *frame8_p++; src_p = UNI_send->src; gRfuFixed->fastCopyPtr(&src_p, dest_p, UNI_send->payloadSize); @@ -1888,7 +1888,7 @@ static void rfu_CB_recvData(u8 reqCommand, u16 reqResult) rfu_STC_PARENT_analyzeRecvPacket(); else rfu_STC_CHILD_analyzeRecvPacket(); - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { slotStatusNI = gRfuSlotStatusNI[i]; if (slotStatusNI->recv.state == SLOT_STATE_RECV_LAST && !((gRfuStatic->NIEndRecvFlag >> i) & 1)) @@ -1972,7 +1972,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) if (last_frame < llsf_p->frameSize) return last_frame; frames = 0; - for (i = 0; i < llsf_p->frameSize; ++i) + for (i = 0; i < llsf_p->frameSize; i++) frames |= *src++ << 8 * i; llsf_NI.recvFirst = (frames >> llsf_p->recvFirstShift) & llsf_p->recvFirstMask; llsf_NI.connSlotFlag = (frames >> llsf_p->connSlotFlagShift) & llsf_p->connSlotFlagMask; @@ -1998,7 +1998,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) } else { - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) if (((gRfuSlotStatusNI[i]->send.bmSlot >> slot_id) & 1) && ((gRfuLinkStatus->sendSlotNIFlag >> slot_id) & 1)) break; @@ -2013,7 +2013,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) if (conSlots) { - for (i = 0; i < RFU_CHILD_MAX; ++i) + for (i = 0; i < RFU_CHILD_MAX; i++) { if ((conSlots >> i) & 1) { @@ -2104,7 +2104,7 @@ static void rfu_STC_NI_receive_Sender(u8 NI_slot, u8 bm_flag, const struct RfuLo NI_comm->phase = 0; if (NI_comm->state == SLOT_STATE_SEND_START) { - for (i = 0; i < WINDOW_COUNT; ++i) + for (i = 0; i < WINDOW_COUNT; i++) { NI_comm->n[i] = 1; NI_comm->now_p[i] = NI_comm->src + NI_comm->payloadSize * i; diff --git a/src/librfu_stwi.c b/src/librfu_stwi.c index b515f338e0ef..b765f00fb989 100644 --- a/src/librfu_stwi.c +++ b/src/librfu_stwi.c @@ -208,13 +208,13 @@ void STWI_send_GameConfigREQ(const u8 *serial_gname, const u8 *uname) *(u16 *)packetBytes = *(u16 *)serial_gname; packetBytes += sizeof(u16); serial_gname += sizeof(u16); - for (i = 0; i < 14; ++i) + for (i = 0; i < 14; i++) { *packetBytes = *serial_gname; ++packetBytes; ++serial_gname; } - for (i = 0; i < 8; ++i) + for (i = 0; i < 8; i++) { *packetBytes = *uname; ++packetBytes; diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 41054d16d2d0..866072a2c36b 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -186,7 +186,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, diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 241aed00c13f..9ae387cffd43 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -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, diff --git a/src/pokemon.c b/src/pokemon.c index d9976b6a208f..8786405c8b55 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1945,7 +1945,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = .anims = NULL, .images = gBattlerPicTable_OpponentLeft, .affineAnims = gAffineAnims_BattleSpriteOpponentSide, - .callback = SpriteCb_WildMon, + .callback = SpriteCB_WildMon, }, [B_POSITION_PLAYER_RIGHT] = { .tileTag = TAG_NONE, @@ -1963,7 +1963,7 @@ const struct SpriteTemplate gBattlerSpriteTemplates[MAX_BATTLERS_COUNT] = .anims = NULL, .images = gBattlerPicTable_OpponentRight, .affineAnims = gAffineAnims_BattleSpriteOpponentSide, - .callback = SpriteCb_WildMon + .callback = SpriteCB_WildMon }, }; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index bdbca31d02bf..aa55e42c70cc 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -305,7 +305,7 @@ static void RemoveAndCreateMonMarkingsSprite(struct Pokemon *); static void CreateCaughtBallSprite(struct Pokemon *); static void CreateSetStatusSprite(void); static void CreateMoveSelectorSprites(u8); -static void SpriteCb_MoveSelector(struct Sprite *); +static void SpriteCB_MoveSelector(struct Sprite *); static void DestroyMoveSelectorSprites(u8); static void SetMainMoveSelectorColor(u8); static void KeepMoveSelectorVisible(u8); @@ -4082,14 +4082,14 @@ static void CreateMoveSelectorSprites(u8 idArrayStart) else StartSpriteAnim(&gSprites[spriteIds[i]], 6); // middle - gSprites[spriteIds[i]].callback = SpriteCb_MoveSelector; + gSprites[spriteIds[i]].callback = SpriteCB_MoveSelector; gSprites[spriteIds[i]].data[0] = idArrayStart; gSprites[spriteIds[i]].data[1] = 0; } } } -static void SpriteCb_MoveSelector(struct Sprite *sprite) +static void SpriteCB_MoveSelector(struct Sprite *sprite) { if (sprite->animNum > 3 && sprite->animNum < 7) { diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index 2723e1200ed7..62eaed8cd776 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -15,7 +15,7 @@ struct GFRomHeader const struct CompressedSpriteSheet * monBackPics; const struct CompressedSpritePalette * monNormalPalettes; const struct CompressedSpritePalette * monShinyPalettes; - const u8 * const * monIcons; + const u8 *const * monIcons; const u8 * monIconPaletteIds; const struct SpritePalette * monIconPalettes; const u8 (* monSpeciesNames)[]; @@ -62,7 +62,7 @@ struct GFRomHeader u32 unk18; const struct BaseStats * baseStats; const u8 (* abilityNames)[]; - const u8 * const * abilityDescriptions; + const u8 *const * abilityDescriptions; const struct Item * items; const struct BattleMove * moves; const struct CompressedSpriteSheet * ballGfx; diff --git a/src/scrcmd.c b/src/scrcmd.c index fe5cf95d7635..53a5d4a2940f 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -84,7 +84,7 @@ static const u8 sScriptConditionTable[6][3] = 1, 0, 1, // != }; -static u8 * const sScriptStringVars[] = +static u8 *const sScriptStringVars[] = { gStringVar1, gStringVar2, diff --git a/src/trader.c b/src/trader.c index 040ee695b3f4..3de2a4846b2f 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, diff --git a/tools/jsonproc/inja.hpp b/tools/jsonproc/inja.hpp index d5bf5bcba42e..56e4027f8e9d 100755 --- a/tools/jsonproc/inja.hpp +++ b/tools/jsonproc/inja.hpp @@ -2811,7 +2811,7 @@ class Renderer { if ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop) { popArgs -= 1; } - for (unsigned int i = 0; i < popArgs; ++i) { + for (unsigned int i = 0; i < popArgs; i++) { m_stack.pop_back(); } } @@ -2925,7 +2925,7 @@ class Renderer { void render_to(std::ostream& os, const Template& tmpl, const json& data) { m_data = &data; - for (size_t i = 0; i < tmpl.bytecodes.size(); ++i) { + for (size_t i = 0; i < tmpl.bytecodes.size(); i++) { const auto& bc = tmpl.bytecodes[i]; switch (bc.op) { diff --git a/tools/jsonproc/nlohmann/json.hpp b/tools/jsonproc/nlohmann/json.hpp index 5003a4fa2ddc..15ab684dd2d3 100755 --- a/tools/jsonproc/nlohmann/json.hpp +++ b/tools/jsonproc/nlohmann/json.hpp @@ -1438,7 +1438,7 @@ auto from_json_array_impl(const BasicJsonType& j, std::array& arr, priority_tag<2> /*unused*/) -> decltype(j.template get(), void()) { - for (std::size_t i = 0; i < N; ++i) + for (std::size_t i = 0; i < N; i++) { arr[i] = j.at(i).template get(); } @@ -4301,7 +4301,7 @@ class binary_reader if (len != std::size_t(-1)) { - for (std::size_t i = 0; i < len; ++i) + for (std::size_t i = 0; i < len; i++) { if (JSON_UNLIKELY(not parse_cbor_internal())) { @@ -4338,7 +4338,7 @@ class binary_reader string_t key; if (len != std::size_t(-1)) { - for (std::size_t i = 0; i < len; ++i) + for (std::size_t i = 0; i < len; i++) { get(); if (JSON_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) @@ -4832,7 +4832,7 @@ class binary_reader return false; } - for (std::size_t i = 0; i < len; ++i) + for (std::size_t i = 0; i < len; i++) { if (JSON_UNLIKELY(not parse_msgpack_internal())) { @@ -4855,7 +4855,7 @@ class binary_reader } string_t key; - for (std::size_t i = 0; i < len; ++i) + for (std::size_t i = 0; i < len; i++) { get(); if (JSON_UNLIKELY(not get_msgpack_string(key) or not sax->key(key))) @@ -5190,7 +5190,7 @@ class binary_reader { if (size_and_type.second != 'N') { - for (std::size_t i = 0; i < size_and_type.first; ++i) + for (std::size_t i = 0; i < size_and_type.first; i++) { if (JSON_UNLIKELY(not get_ubjson_value(size_and_type.second))) { @@ -5201,7 +5201,7 @@ class binary_reader } else { - for (std::size_t i = 0; i < size_and_type.first; ++i) + for (std::size_t i = 0; i < size_and_type.first; i++) { if (JSON_UNLIKELY(not parse_ubjson_internal())) { @@ -5251,7 +5251,7 @@ class binary_reader if (size_and_type.second != 0) { - for (std::size_t i = 0; i < size_and_type.first; ++i) + for (std::size_t i = 0; i < size_and_type.first; i++) { if (JSON_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) { @@ -5266,7 +5266,7 @@ class binary_reader } else { - for (std::size_t i = 0; i < size_and_type.first; ++i) + for (std::size_t i = 0; i < size_and_type.first; i++) { if (JSON_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) { @@ -5356,7 +5356,7 @@ class binary_reader { // step 1: read input into array with system's byte order std::array vec; - for (std::size_t i = 0; i < sizeof(NumberType); ++i) + for (std::size_t i = 0; i < sizeof(NumberType); i++) { get(); if (JSON_UNLIKELY(not unexpect_eof(format, "number"))) @@ -6705,7 +6705,7 @@ class lexer token_type return_type) { assert(current == literal_text[0]); - for (std::size_t i = 1; i < length; ++i) + for (std::size_t i = 1; i < length; i++) { if (JSON_UNLIKELY(get() != literal_text[i])) { @@ -9235,7 +9235,7 @@ class json_pointer else { // iterate array and use index as reference string - for (std::size_t i = 0; i < value.m_value.array->size(); ++i) + for (std::size_t i = 0; i < value.m_value.array->size(); i++) { flatten(reference_string + "/" + std::to_string(i), value.m_value.array->operator[](i), result); @@ -12183,7 +12183,7 @@ class serializer // first n-1 elements for (auto i = val.m_value.array->cbegin(); - i != val.m_value.array->cend() - 1; ++i) + i != val.m_value.array->cend() - 1; i++) { o->write_characters(indent_string.c_str(), new_indent); dump(*i, true, ensure_ascii, indent_step, new_indent); @@ -12205,7 +12205,7 @@ class serializer // first n-1 elements for (auto i = val.m_value.array->cbegin(); - i != val.m_value.array->cend() - 1; ++i) + i != val.m_value.array->cend() - 1; i++) { dump(*i, false, ensure_ascii, indent_step, current_indent); o->write_character(','); @@ -12302,7 +12302,7 @@ class serializer std::size_t bytes_after_last_accept = 0; std::size_t undumped_chars = 0; - for (std::size_t i = 0; i < s.size(); ++i) + for (std::size_t i = 0; i < s.size(); i++) { const auto byte = static_cast(s[i]); From 75d52dc762df9a2547f315dadcabea9370218634 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 8 Aug 2022 18:18:17 -0400 Subject: [PATCH 660/762] Convert MON_DATA constants into enum to ease editing and addition of fields. --- include/constants/pokemon.h | 91 ------------------------------ include/constants/pokemon_data.h | 97 ++++++++++++++++++++++++++++++++ include/global.h | 1 + 3 files changed, 98 insertions(+), 91 deletions(-) create mode 100644 include/constants/pokemon_data.h diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 0a74e751eb60..40af999fde52 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -93,97 +93,6 @@ // Shiny odds #define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536 -// Flags for Get(Box)MonData / Set(Box)MonData -#define MON_DATA_PERSONALITY 0 -#define MON_DATA_OT_ID 1 -#define MON_DATA_NICKNAME 2 -#define MON_DATA_LANGUAGE 3 -#define MON_DATA_SANITY_IS_BAD_EGG 4 -#define MON_DATA_SANITY_HAS_SPECIES 5 -#define MON_DATA_SANITY_IS_EGG 6 -#define MON_DATA_OT_NAME 7 -#define MON_DATA_MARKINGS 8 -#define MON_DATA_CHECKSUM 9 -#define MON_DATA_ENCRYPT_SEPARATOR 10 -#define MON_DATA_SPECIES 11 -#define MON_DATA_HELD_ITEM 12 -#define MON_DATA_MOVE1 13 -#define MON_DATA_MOVE2 14 -#define MON_DATA_MOVE3 15 -#define MON_DATA_MOVE4 16 -#define MON_DATA_PP1 17 -#define MON_DATA_PP2 18 -#define MON_DATA_PP3 19 -#define MON_DATA_PP4 20 -#define MON_DATA_PP_BONUSES 21 -#define MON_DATA_COOL 22 -#define MON_DATA_BEAUTY 23 -#define MON_DATA_CUTE 24 -#define MON_DATA_EXP 25 -#define MON_DATA_HP_EV 26 -#define MON_DATA_ATK_EV 27 -#define MON_DATA_DEF_EV 28 -#define MON_DATA_SPEED_EV 29 -#define MON_DATA_SPATK_EV 30 -#define MON_DATA_SPDEF_EV 31 -#define MON_DATA_FRIENDSHIP 32 -#define MON_DATA_SMART 33 -#define MON_DATA_POKERUS 34 -#define MON_DATA_MET_LOCATION 35 -#define MON_DATA_MET_LEVEL 36 -#define MON_DATA_MET_GAME 37 -#define MON_DATA_POKEBALL 38 -#define MON_DATA_HP_IV 39 -#define MON_DATA_ATK_IV 40 -#define MON_DATA_DEF_IV 41 -#define MON_DATA_SPEED_IV 42 -#define MON_DATA_SPATK_IV 43 -#define MON_DATA_SPDEF_IV 44 -#define MON_DATA_IS_EGG 45 -#define MON_DATA_ABILITY_NUM 46 -#define MON_DATA_TOUGH 47 -#define MON_DATA_SHEEN 48 -#define MON_DATA_OT_GENDER 49 -#define MON_DATA_COOL_RIBBON 50 -#define MON_DATA_BEAUTY_RIBBON 51 -#define MON_DATA_CUTE_RIBBON 52 -#define MON_DATA_SMART_RIBBON 53 -#define MON_DATA_TOUGH_RIBBON 54 -#define MON_DATA_STATUS 55 -#define MON_DATA_LEVEL 56 -#define MON_DATA_HP 57 -#define MON_DATA_MAX_HP 58 -#define MON_DATA_ATK 59 -#define MON_DATA_DEF 60 -#define MON_DATA_SPEED 61 -#define MON_DATA_SPATK 62 -#define MON_DATA_SPDEF 63 -#define MON_DATA_MAIL 64 -#define MON_DATA_SPECIES2 65 -#define MON_DATA_IVS 66 -#define MON_DATA_CHAMPION_RIBBON 67 -#define MON_DATA_WINNING_RIBBON 68 -#define MON_DATA_VICTORY_RIBBON 69 -#define MON_DATA_ARTIST_RIBBON 70 -#define MON_DATA_EFFORT_RIBBON 71 -#define MON_DATA_MARINE_RIBBON 72 -#define MON_DATA_LAND_RIBBON 73 -#define MON_DATA_SKY_RIBBON 74 -#define MON_DATA_COUNTRY_RIBBON 75 -#define MON_DATA_NATIONAL_RIBBON 76 -#define MON_DATA_EARTH_RIBBON 77 -#define MON_DATA_WORLD_RIBBON 78 -#define MON_DATA_UNUSED_RIBBONS 79 -#define MON_DATA_EVENT_LEGAL 80 -#define MON_DATA_KNOWN_MOVES 81 -#define MON_DATA_RIBBON_COUNT 82 -#define MON_DATA_RIBBONS 83 -#define MON_DATA_ATK2 84 -#define MON_DATA_DEF2 85 -#define MON_DATA_SPEED2 86 -#define MON_DATA_SPATK2 87 -#define MON_DATA_SPDEF2 88 - // Ribbon IDs used by TV and PokĂ©nav #define CHAMPION_RIBBON 0 #define COOL_RIBBON_NORMAL 1 diff --git a/include/constants/pokemon_data.h b/include/constants/pokemon_data.h new file mode 100644 index 000000000000..4c783ce6bb92 --- /dev/null +++ b/include/constants/pokemon_data.h @@ -0,0 +1,97 @@ +#ifndef GUARD_CONSTANTS_POKEMON_DATA_H +#define GUARD_CONSTANTS_POKEMON_DATA_H + +// Flags for Get(Box)MonData / Set(Box)MonData +enum { + MON_DATA_PERSONALITY, + MON_DATA_OT_ID, + MON_DATA_NICKNAME, + MON_DATA_LANGUAGE, + MON_DATA_SANITY_IS_BAD_EGG, + MON_DATA_SANITY_HAS_SPECIES, + MON_DATA_SANITY_IS_EGG, + MON_DATA_OT_NAME, + MON_DATA_MARKINGS, + MON_DATA_CHECKSUM, + MON_DATA_ENCRYPT_SEPARATOR, + MON_DATA_SPECIES, + MON_DATA_HELD_ITEM, + MON_DATA_MOVE1, + MON_DATA_MOVE2, + MON_DATA_MOVE3, + MON_DATA_MOVE4, + MON_DATA_PP1, + MON_DATA_PP2, + MON_DATA_PP3, + MON_DATA_PP4, + MON_DATA_PP_BONUSES, + MON_DATA_COOL, + MON_DATA_BEAUTY, + MON_DATA_CUTE, + MON_DATA_EXP, + MON_DATA_HP_EV, + MON_DATA_ATK_EV, + MON_DATA_DEF_EV, + MON_DATA_SPEED_EV, + MON_DATA_SPATK_EV, + MON_DATA_SPDEF_EV, + MON_DATA_FRIENDSHIP, + MON_DATA_SMART, + MON_DATA_POKERUS, + MON_DATA_MET_LOCATION, + MON_DATA_MET_LEVEL, + MON_DATA_MET_GAME, + MON_DATA_POKEBALL, + MON_DATA_HP_IV, + MON_DATA_ATK_IV, + MON_DATA_DEF_IV, + MON_DATA_SPEED_IV, + MON_DATA_SPATK_IV, + MON_DATA_SPDEF_IV, + MON_DATA_IS_EGG, + MON_DATA_ABILITY_NUM, + MON_DATA_TOUGH, + MON_DATA_SHEEN, + MON_DATA_OT_GENDER, + MON_DATA_COOL_RIBBON, + MON_DATA_BEAUTY_RIBBON, + MON_DATA_CUTE_RIBBON, + MON_DATA_SMART_RIBBON, + MON_DATA_TOUGH_RIBBON, + MON_DATA_STATUS, + MON_DATA_LEVEL, + MON_DATA_HP, + MON_DATA_MAX_HP, + MON_DATA_ATK, + MON_DATA_DEF, + MON_DATA_SPEED, + MON_DATA_SPATK, + MON_DATA_SPDEF, + MON_DATA_MAIL, + MON_DATA_SPECIES2, + MON_DATA_IVS, + MON_DATA_CHAMPION_RIBBON, + MON_DATA_WINNING_RIBBON, + MON_DATA_VICTORY_RIBBON, + MON_DATA_ARTIST_RIBBON, + MON_DATA_EFFORT_RIBBON, + MON_DATA_MARINE_RIBBON, + MON_DATA_LAND_RIBBON, + MON_DATA_SKY_RIBBON, + MON_DATA_COUNTRY_RIBBON, + MON_DATA_NATIONAL_RIBBON, + MON_DATA_EARTH_RIBBON, + MON_DATA_WORLD_RIBBON, + MON_DATA_UNUSED_RIBBONS, + MON_DATA_EVENT_LEGAL, + MON_DATA_KNOWN_MOVES, + MON_DATA_RIBBON_COUNT, + MON_DATA_RIBBONS, + MON_DATA_ATK2, + MON_DATA_DEF2, + MON_DATA_SPEED2, + MON_DATA_SPATK2, + MON_DATA_SPDEF2, +}; + +#endif // GUARD_CONSTANTS_POKEMON_DATA_H diff --git a/include/global.h b/include/global.h index b1fd21d8b143..c66d2a0d71fb 100644 --- a/include/global.h +++ b/include/global.h @@ -13,6 +13,7 @@ #include "constants/berry.h" #include "constants/maps.h" #include "constants/pokemon.h" +#include "constants/pokemon_data.h" #include "constants/easy_chat.h" #include "constants/trainer_hill.h" From 1fd1870a1321d27f768bc79e94ecb0c2e3291220 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 8 Aug 2022 18:40:47 -0400 Subject: [PATCH 661/762] Moved enum to include/pokemon.h --- include/constants/pokemon_data.h | 97 -------------------------------- include/global.h | 1 - include/pokemon.h | 93 ++++++++++++++++++++++++++++++ 3 files changed, 93 insertions(+), 98 deletions(-) delete mode 100644 include/constants/pokemon_data.h diff --git a/include/constants/pokemon_data.h b/include/constants/pokemon_data.h deleted file mode 100644 index 4c783ce6bb92..000000000000 --- a/include/constants/pokemon_data.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef GUARD_CONSTANTS_POKEMON_DATA_H -#define GUARD_CONSTANTS_POKEMON_DATA_H - -// Flags for Get(Box)MonData / Set(Box)MonData -enum { - MON_DATA_PERSONALITY, - MON_DATA_OT_ID, - MON_DATA_NICKNAME, - MON_DATA_LANGUAGE, - MON_DATA_SANITY_IS_BAD_EGG, - MON_DATA_SANITY_HAS_SPECIES, - MON_DATA_SANITY_IS_EGG, - MON_DATA_OT_NAME, - MON_DATA_MARKINGS, - MON_DATA_CHECKSUM, - MON_DATA_ENCRYPT_SEPARATOR, - MON_DATA_SPECIES, - MON_DATA_HELD_ITEM, - MON_DATA_MOVE1, - MON_DATA_MOVE2, - MON_DATA_MOVE3, - MON_DATA_MOVE4, - MON_DATA_PP1, - MON_DATA_PP2, - MON_DATA_PP3, - MON_DATA_PP4, - MON_DATA_PP_BONUSES, - MON_DATA_COOL, - MON_DATA_BEAUTY, - MON_DATA_CUTE, - MON_DATA_EXP, - MON_DATA_HP_EV, - MON_DATA_ATK_EV, - MON_DATA_DEF_EV, - MON_DATA_SPEED_EV, - MON_DATA_SPATK_EV, - MON_DATA_SPDEF_EV, - MON_DATA_FRIENDSHIP, - MON_DATA_SMART, - MON_DATA_POKERUS, - MON_DATA_MET_LOCATION, - MON_DATA_MET_LEVEL, - MON_DATA_MET_GAME, - MON_DATA_POKEBALL, - MON_DATA_HP_IV, - MON_DATA_ATK_IV, - MON_DATA_DEF_IV, - MON_DATA_SPEED_IV, - MON_DATA_SPATK_IV, - MON_DATA_SPDEF_IV, - MON_DATA_IS_EGG, - MON_DATA_ABILITY_NUM, - MON_DATA_TOUGH, - MON_DATA_SHEEN, - MON_DATA_OT_GENDER, - MON_DATA_COOL_RIBBON, - MON_DATA_BEAUTY_RIBBON, - MON_DATA_CUTE_RIBBON, - MON_DATA_SMART_RIBBON, - MON_DATA_TOUGH_RIBBON, - MON_DATA_STATUS, - MON_DATA_LEVEL, - MON_DATA_HP, - MON_DATA_MAX_HP, - MON_DATA_ATK, - MON_DATA_DEF, - MON_DATA_SPEED, - MON_DATA_SPATK, - MON_DATA_SPDEF, - MON_DATA_MAIL, - MON_DATA_SPECIES2, - MON_DATA_IVS, - MON_DATA_CHAMPION_RIBBON, - MON_DATA_WINNING_RIBBON, - MON_DATA_VICTORY_RIBBON, - MON_DATA_ARTIST_RIBBON, - MON_DATA_EFFORT_RIBBON, - MON_DATA_MARINE_RIBBON, - MON_DATA_LAND_RIBBON, - MON_DATA_SKY_RIBBON, - MON_DATA_COUNTRY_RIBBON, - MON_DATA_NATIONAL_RIBBON, - MON_DATA_EARTH_RIBBON, - MON_DATA_WORLD_RIBBON, - MON_DATA_UNUSED_RIBBONS, - MON_DATA_EVENT_LEGAL, - MON_DATA_KNOWN_MOVES, - MON_DATA_RIBBON_COUNT, - MON_DATA_RIBBONS, - MON_DATA_ATK2, - MON_DATA_DEF2, - MON_DATA_SPEED2, - MON_DATA_SPATK2, - MON_DATA_SPDEF2, -}; - -#endif // GUARD_CONSTANTS_POKEMON_DATA_H diff --git a/include/global.h b/include/global.h index c66d2a0d71fb..b1fd21d8b143 100644 --- a/include/global.h +++ b/include/global.h @@ -13,7 +13,6 @@ #include "constants/berry.h" #include "constants/maps.h" #include "constants/pokemon.h" -#include "constants/pokemon_data.h" #include "constants/easy_chat.h" #include "constants/trainer_hill.h" diff --git a/include/pokemon.h b/include/pokemon.h index e7b1d738b527..11feb5b183f1 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -3,6 +3,99 @@ #include "sprite.h" +// Flags for Get(Box)MonData / Set(Box)MonData +enum { + MON_DATA_PERSONALITY, + MON_DATA_OT_ID, + MON_DATA_NICKNAME, + MON_DATA_LANGUAGE, + MON_DATA_SANITY_IS_BAD_EGG, + MON_DATA_SANITY_HAS_SPECIES, + MON_DATA_SANITY_IS_EGG, + MON_DATA_OT_NAME, + MON_DATA_MARKINGS, + MON_DATA_CHECKSUM, + MON_DATA_ENCRYPT_SEPARATOR, + MON_DATA_SPECIES, + MON_DATA_HELD_ITEM, + MON_DATA_MOVE1, + MON_DATA_MOVE2, + MON_DATA_MOVE3, + MON_DATA_MOVE4, + MON_DATA_PP1, + MON_DATA_PP2, + MON_DATA_PP3, + MON_DATA_PP4, + MON_DATA_PP_BONUSES, + MON_DATA_COOL, + MON_DATA_BEAUTY, + MON_DATA_CUTE, + MON_DATA_EXP, + MON_DATA_HP_EV, + MON_DATA_ATK_EV, + MON_DATA_DEF_EV, + MON_DATA_SPEED_EV, + MON_DATA_SPATK_EV, + MON_DATA_SPDEF_EV, + MON_DATA_FRIENDSHIP, + MON_DATA_SMART, + MON_DATA_POKERUS, + MON_DATA_MET_LOCATION, + MON_DATA_MET_LEVEL, + MON_DATA_MET_GAME, + MON_DATA_POKEBALL, + MON_DATA_HP_IV, + MON_DATA_ATK_IV, + MON_DATA_DEF_IV, + MON_DATA_SPEED_IV, + MON_DATA_SPATK_IV, + MON_DATA_SPDEF_IV, + MON_DATA_IS_EGG, + MON_DATA_ABILITY_NUM, + MON_DATA_TOUGH, + MON_DATA_SHEEN, + MON_DATA_OT_GENDER, + MON_DATA_COOL_RIBBON, + MON_DATA_BEAUTY_RIBBON, + MON_DATA_CUTE_RIBBON, + MON_DATA_SMART_RIBBON, + MON_DATA_TOUGH_RIBBON, + MON_DATA_STATUS, + MON_DATA_LEVEL, + MON_DATA_HP, + MON_DATA_MAX_HP, + MON_DATA_ATK, + MON_DATA_DEF, + MON_DATA_SPEED, + MON_DATA_SPATK, + MON_DATA_SPDEF, + MON_DATA_MAIL, + MON_DATA_SPECIES2, + MON_DATA_IVS, + MON_DATA_CHAMPION_RIBBON, + MON_DATA_WINNING_RIBBON, + MON_DATA_VICTORY_RIBBON, + MON_DATA_ARTIST_RIBBON, + MON_DATA_EFFORT_RIBBON, + MON_DATA_MARINE_RIBBON, + MON_DATA_LAND_RIBBON, + MON_DATA_SKY_RIBBON, + MON_DATA_COUNTRY_RIBBON, + MON_DATA_NATIONAL_RIBBON, + MON_DATA_EARTH_RIBBON, + MON_DATA_WORLD_RIBBON, + MON_DATA_UNUSED_RIBBONS, + MON_DATA_EVENT_LEGAL, + MON_DATA_KNOWN_MOVES, + MON_DATA_RIBBON_COUNT, + MON_DATA_RIBBONS, + MON_DATA_ATK2, + MON_DATA_DEF2, + MON_DATA_SPEED2, + MON_DATA_SPATK2, + MON_DATA_SPDEF2, +}; + struct PokemonSubstruct0 { u16 species; From bfdbbad4689332e8a6cdb04cb890c8c748d6ea62 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 8 Aug 2022 13:14:07 -0400 Subject: [PATCH 662/762] Split naming screen palettes/graphics, use correct image palettes, clean up --- graphics/naming_screen/back_button.png | Bin 0 -> 285 bytes graphics/naming_screen/buttons.pal | 19 ++++ graphics/naming_screen/cursor.pal | 19 ++++ graphics/naming_screen/cursor.png | Bin 223 -> 159 bytes graphics/naming_screen/cursor_filled.png | Bin 0 -> 166 bytes graphics/naming_screen/cursor_squished.png | Bin 0 -> 164 bytes graphics/naming_screen/input_arrow.png | Bin 95 -> 153 bytes graphics/naming_screen/menu.pal | 82 +----------------- graphics/naming_screen/ok_button.png | Bin 0 -> 271 bytes graphics/naming_screen/page_button.png | Bin 89 -> 0 bytes graphics/naming_screen/page_swap_button.png | Bin 0 -> 145 bytes graphics/naming_screen/page_swap_frame.png | Bin 0 -> 253 bytes graphics/naming_screen/page_swap_lower.pal | 19 ++++ graphics/naming_screen/page_swap_lower.png | Bin 0 -> 186 bytes graphics/naming_screen/page_swap_others.pal | 19 ++++ graphics/naming_screen/page_swap_others.png | Bin 0 -> 192 bytes graphics/naming_screen/page_swap_upper.pal | 19 ++++ graphics/naming_screen/page_swap_upper.png | Bin 0 -> 194 bytes .../{pc_icon/off.png => pc_icon_off.png} | Bin .../{pc_icon/on.png => pc_icon_on.png} | Bin .../naming_screen/{unused.pal => rival.pal} | 0 graphics/naming_screen/roptions.png | Bin 309 -> 0 bytes graphics/naming_screen/rwindow.png | Bin 480 -> 0 bytes graphics/naming_screen/underscore.png | Bin 81 -> 137 bytes graphics_file_rules.mk | 10 +++ include/graphics.h | 20 +++-- include/strings.h | 7 ++ src/graphics.c | 36 +++++--- src/naming_screen.c | 76 +++++++--------- 29 files changed, 184 insertions(+), 142 deletions(-) create mode 100644 graphics/naming_screen/back_button.png create mode 100644 graphics/naming_screen/buttons.pal create mode 100644 graphics/naming_screen/cursor.pal create mode 100644 graphics/naming_screen/cursor_filled.png create mode 100644 graphics/naming_screen/cursor_squished.png create mode 100644 graphics/naming_screen/ok_button.png delete mode 100644 graphics/naming_screen/page_button.png create mode 100644 graphics/naming_screen/page_swap_button.png create mode 100644 graphics/naming_screen/page_swap_frame.png create mode 100644 graphics/naming_screen/page_swap_lower.pal create mode 100644 graphics/naming_screen/page_swap_lower.png create mode 100644 graphics/naming_screen/page_swap_others.pal create mode 100644 graphics/naming_screen/page_swap_others.png create mode 100644 graphics/naming_screen/page_swap_upper.pal create mode 100644 graphics/naming_screen/page_swap_upper.png rename graphics/naming_screen/{pc_icon/off.png => pc_icon_off.png} (100%) rename graphics/naming_screen/{pc_icon/on.png => pc_icon_on.png} (100%) rename graphics/naming_screen/{unused.pal => rival.pal} (100%) delete mode 100644 graphics/naming_screen/roptions.png delete mode 100644 graphics/naming_screen/rwindow.png diff --git a/graphics/naming_screen/back_button.png b/graphics/naming_screen/back_button.png new file mode 100644 index 0000000000000000000000000000000000000000..bf7730024d425d2cd9b71a9239051358ae181602 GIT binary patch literal 285 zcmV+&0pk9NP)y`&)K-dZ_1IXO8wCMx8h0001} zNklIL)E>irR>x;3W31mEqpxxV9c$P zF{ioHmErT-=sy1#K5V0p!uJ^wUup~pmkc9VhiX6w1tM&A4Ge6du_{*{!G%~Stvx1( zJ-IwUJ6-nV4YA&H_@m+9I|)pQT}j|V(@LI*te)gEq?Hlhl011|l9RwiARUql)1LHF j%y8?Or!RWS^ueBgGsFRSDzM!Y00000NkvXXu0mjfzfyUX literal 0 HcmV?d00001 diff --git a/graphics/naming_screen/buttons.pal b/graphics/naming_screen/buttons.pal new file mode 100644 index 000000000000..fdf80bdb060f --- /dev/null +++ b/graphics/naming_screen/buttons.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +106 156 213 +255 255 255 +57 57 57 +139 139 131 +197 189 180 +230 222 213 +74 115 139 +123 172 197 +172 115 74 +213 156 115 +98 156 57 +148 189 106 +189 164 32 +230 222 90 +57 57 57 +57 57 57 diff --git a/graphics/naming_screen/cursor.pal b/graphics/naming_screen/cursor.pal new file mode 100644 index 000000000000..8950f9b34b12 --- /dev/null +++ b/graphics/naming_screen/cursor.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +106 156 213 +255 8 8 +222 57 74 +180 65 82 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +230 222 213 +0 0 0 +230 222 213 +0 0 0 diff --git a/graphics/naming_screen/cursor.png b/graphics/naming_screen/cursor.png index 3d92ef6f49717486d8ff0f648413d930d1809810..e0f5022bede18df5971a850950cb4cfc6923da65 100644 GIT binary patch delta 84 zcmcc5IG=HXIF|$qGXnzyV_$;(L`8dhEl(H65RRG22?+u$Ol%4XEQTx%JOT$fgqXO6 n6B3w`N)E1Vh~_G1D`jA)_hedm(f{dBpl$|FS3j3^P6fr)*opj}jT$(m2MHL62iGw)E2AQ&A_+s+!g5*Xt z;A_N8MX?*7mMY`xotunV>TXQ`0qJ_fNms5|@B9Gk>K0KLTC80F0000%6DBM$6c9*|Xl68O kmWVCTelYFOTt`_32FV(p`8#g9t_0cO>FVdQ&MBb@0K$ML1^@s6 literal 0 HcmV?d00001 diff --git a/graphics/naming_screen/cursor_squished.png b/graphics/naming_screen/cursor_squished.png new file mode 100644 index 0000000000000000000000000000000000000000..5126fcccaebd6dca631ef6d85ed28ded7c2207b0 GIT binary patch literal 164 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRm!VDxC`x5MdltF+`h-=oItN%GT?pb(Rvq2Ww} i_d(IaTMzRtv1DNQ#=y>o|%Dx!Ax=S4j^R^;1lASHRtO8|Nkv5EsKkbfnqT5pMe32lIB=euL+v6 zH|yxLIalB9-9EMB5m1qer;B3<$IRq}prnL^grFb>L9YZSMi&VN&QyWx4ULUAXEZW0 Y=v-%tIs41E1!SnFtDnm{rv%0(02W{_E&u=k delta 76 zcmbQq7(YSMjR6Q$rtpLTDK$?Q#}JO0$v>*U|F3V`U;e(iV|T(MyABI}m3Iw0p8q%g dWBK{NJwu?lY}@`lD(^r#Jzf1=);T3K0RTW89!dZJ diff --git a/graphics/naming_screen/menu.pal b/graphics/naming_screen/menu.pal index 0da3b93f2ffb..2f5c86a56808 100644 --- a/graphics/naming_screen/menu.pal +++ b/graphics/naming_screen/menu.pal @@ -1,6 +1,6 @@ JASC-PAL 0100 -96 +16 106 156 213 255 255 255 115 115 115 @@ -17,83 +17,3 @@ JASC-PAL 230 222 90 238 230 139 246 238 197 -106 156 213 -255 255 255 -57 57 57 -115 115 115 -0 0 0 -0 0 0 -0 0 0 -0 0 255 -0 0 255 -0 0 255 -0 0 255 -74 115 139 -98 139 164 -123 172 197 -156 205 230 -180 222 246 -106 156 213 -255 255 255 -57 57 57 -115 115 115 -0 0 0 -0 0 0 -0 0 0 -0 0 255 -0 0 255 -0 0 255 -0 0 255 -172 115 74 -189 131 90 -213 156 115 -246 205 164 -255 230 197 -106 156 213 -255 255 255 -57 57 57 -115 115 115 -0 0 0 -0 0 0 -0 0 0 -0 0 255 -0 0 255 -0 0 255 -0 0 255 -98 156 57 -123 172 82 -148 189 106 -197 230 156 -213 238 189 -106 156 213 -255 255 255 -57 57 57 -139 139 131 -197 189 180 -230 222 213 -74 115 139 -123 172 197 -172 115 74 -213 156 115 -98 156 57 -148 189 106 -189 164 32 -230 222 90 -57 57 57 -57 57 57 -106 156 213 -255 8 8 -222 57 74 -180 65 82 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -230 222 213 -0 0 0 -230 222 213 -0 0 0 diff --git a/graphics/naming_screen/ok_button.png b/graphics/naming_screen/ok_button.png new file mode 100644 index 0000000000000000000000000000000000000000..3850f462a43691a0ab2332fe6946633b9d037184 GIT binary patch literal 271 zcmV+q0r38bP)y`&)K-dZ_1IXO8wCMx8h0001* zNkl2ZGpQVO0fjv*3LlYjK{YAkH{&%?a% mh47{sc5L$*XZw{n*t#?oR4nQoZKroU_li-23K!Yg-9Wk&LH{V~E7m|PX54G^elJy`(M+u`Zr7@{%p>?B*h z1_d6sk8DMZ)vUsEV^hBWTU=-^wEKGheikM_y?ty_a=fi9OZOG}i%wXU)Dm;P>1ND? zZas@VcYg12H)n|~``4Otck|Ch&u(ka5n=cCky&z;V_VdOn?X~W63n?1`-4>-lX6;E zTaDMQ|2kD|^%uoko~L%X`@FihWBHXm^^^E*9w%M(K6i-WBhXC@p00i_>zopr04XMD AJOBUy literal 0 HcmV?d00001 diff --git a/graphics/naming_screen/page_swap_lower.pal b/graphics/naming_screen/page_swap_lower.pal new file mode 100644 index 000000000000..0fac7e37521f --- /dev/null +++ b/graphics/naming_screen/page_swap_lower.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +106 156 213 +255 255 255 +57 57 57 +115 115 115 +0 0 0 +0 0 0 +0 0 0 +0 0 255 +0 0 255 +0 0 255 +0 0 255 +172 115 74 +189 131 90 +213 156 115 +246 205 164 +255 230 197 diff --git a/graphics/naming_screen/page_swap_lower.png b/graphics/naming_screen/page_swap_lower.png new file mode 100644 index 0000000000000000000000000000000000000000..5747c6265d651fb00fbb1255c26f9cb74534770d GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^8bHj!!VDxUYZhbxDT4r?5ZA0ZSO5S2Z)s`S-Q9e2 z@0Mrxu6h-BSFbs`rr7K1oZ_T8mQ(g-?Omeq>|PX54G^elJy`(M>+0#^7{W2L^o$|j z0RtYVi!leKuctO&oLzg{%z5^bp#MKwBwp4@``b&fP4K8vY?bVkeJ&taQZIN)R&@;jK4Q&CI8fCQUV&t;OXk;vd$@?2>>FIMUMag literal 0 HcmV?d00001 diff --git a/graphics/naming_screen/page_swap_others.pal b/graphics/naming_screen/page_swap_others.pal new file mode 100644 index 000000000000..0bb9d4f7192f --- /dev/null +++ b/graphics/naming_screen/page_swap_others.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +106 156 213 +255 255 255 +57 57 57 +115 115 115 +0 0 0 +0 0 0 +0 0 0 +0 0 255 +0 0 255 +0 0 255 +0 0 255 +98 156 57 +123 172 82 +148 189 106 +197 230 156 +213 238 189 diff --git a/graphics/naming_screen/page_swap_others.png b/graphics/naming_screen/page_swap_others.png new file mode 100644 index 0000000000000000000000000000000000000000..1c878a7532b7b805c317817e8b730199d6a0144b GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^8bHj!!VDxUYZhbxDT4r?5ZA0ZSO5S2Z)s`S-Q9e2 z@0Mrxu6h-BSFbs`rr7K1oZ_T8mQ(g-?Omeq>|PX54G^elJy`(M>+R{{7{W0#wcC*E zfC0~uPps>I{ayR~WcHt(YE#TEoch7m=%)W-_QwmcKPS7c(e`>Y)uV0e17&Yc!A+l( p3!mETys*w$QholsZ~wl`j=vnLpT!|PX54G^elJy`(M>+9*_7{W0#wbzjE zfB_HFXIA|^>vasOJNL(zXH3!HQJBlZqjI>hr|;wHg$zNm)+Tn|_YEoz1uS^IF!^$T q)lVId3$3rdzs<y`&)K-dZ_1IXO8wCMx8h0002M zNklpcCPt2~@m$aSv zhmedhi&;YI7@}zj!Hn208i0_tJDRwR7$NEt;c|0LF|Au#V;u0%(DBWHwLGvA=&Dpj z=tL69L^_Fb$0~&gK(dq@Qm$q1bs=eOkOIBF=RN1POFru#hv0W9$`YiI00000NkvXX Hu0mjfSs;q> diff --git a/graphics/naming_screen/rwindow.png b/graphics/naming_screen/rwindow.png deleted file mode 100644 index 9571abb805b971600754b099f256070b9d06bf33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 480 zcmV<60U!Q}P)y`&)K-dZ_1IXO8wCMx8h0004N zNkl?Z9m zUwmhu>#M8F^z|?ZP!GBTeEHbuQGWtHsg2$&Fe8(G&IE>zR9doPF<9YVQ=s z#Ot%&Mo)PnL)Ygi&PbfQP`F8_!fwh8Xu=`wnNarxQ-Rn>5EG|IM2qu~ph+<7oEh@! zr1Uai8?!_=xh>J?zICuJ`wpU-D9{MA@pq>*<`7-V^TKLs zvsTjZ0u?E`e@<7UVuOSOfS|y5zB&WLhm*vpd@|%QsXF7%* W7Sj2R!hq8N0000N7STHTc24sk*tDnm{ Hr-UW|AS@@} delta 62 zcmeBV44fco!2kp*Q+UFFl!T{?V+hC03T-G@yGywoW5fqdF diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 9e5c19193028..42b1e6d74abf 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -20,6 +20,7 @@ MISCGFXDIR := graphics/misc JPCONTESTGFXDIR := graphics/contest/japanese POKEDEXGFXDIR := graphics/pokedex STARTERGFXDIR := graphics/starter_choose +NAMINGGFXDIR := graphics/naming_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 @@ -710,3 +711,12 @@ $(POKEDEXGFXDIR)/region_map_affine.8bpp: %.8bpp: %.png $(STARTERGFXDIR)/birch_help.4bpp: $(STARTERGFXDIR)/birch_bag.4bpp $(STARTERGFXDIR)/birch_grass.4bpp @cat $^ >$@ + +$(NAMINGGFXDIR)/cursor.4bpp: %.4bpp: %.png + $(GFX) $< $@ -num_tiles 5 + +$(NAMINGGFXDIR)/cursor_squished.4bpp: %.4bpp: %.png + $(GFX) $< $@ -num_tiles 5 + +$(NAMINGGFXDIR)/cursor_filled.4bpp: %.4bpp: %.png + $(GFX) $< $@ -num_tiles 5 diff --git a/include/graphics.h b/include/graphics.h index 0972743c5f25..08a2a1c4215c 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4063,18 +4063,24 @@ extern const u16 gBattleInterface_BallStatusBarPal[]; extern const u16 gBattleInterface_BallDisplayPal[]; extern const u8 gHealthboxElementsGfxTable[][32]; -extern const u16 gNamingScreenMenu_Pal[]; +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 u8 gNamingScreenRWindow_Gfx[]; -extern const u8 gNamingScreenPageButton_Gfx[]; -extern const u8 gNamingScreenROptions_Gfx[]; -extern const u8 gNamingScreenCursor_Gfx[]; -extern const u8 gNamingScreenInputArrow_Gfx[]; -extern const u8 gNamingScreenUnderscore_Gfx[]; +extern const u32 gNamingScreenPageSwapFrame_Gfx[]; +extern const u32 gNamingScreenBackButton_Gfx[]; +extern const u32 gNamingScreenOKButton_Gfx[]; +extern const u32 gNamingScreenPageSwapButton_Gfx[]; +extern const u32 gNamingScreenPageSwapUpper_Gfx[]; +extern const u32 gNamingScreenPageSwapLower_Gfx[]; +extern const u32 gNamingScreenPageSwapOthers_Gfx[]; +extern const u32 gNamingScreenCursor_Gfx[]; +extern const u32 gNamingScreenCursorSquished_Gfx[]; +extern const u32 gNamingScreenCursorFilled_Gfx[]; +extern const u32 gNamingScreenInputArrow_Gfx[]; +extern const u32 gNamingScreenUnderscore_Gfx[]; extern const u32 gPokeblockFeedBg_Tilemap[]; diff --git a/include/strings.h b/include/strings.h index a22aa307bb7c..26bdb2153fef 100644 --- a/include/strings.h +++ b/include/strings.h @@ -3021,4 +3021,11 @@ extern const u8 gText_PkmnForSwap[]; extern const u8 gText_SamePkmnInPartyAlready[]; extern const u8 gText_Cancel3[]; +// Naming Screen +extern const u8 gText_MoveOkBack[]; +extern const u8 gText_YourName[]; +extern const u8 gText_BoxName[]; +extern const u8 gText_PkmnsNickname[]; +extern const u8 gText_TellHimTheWords[]; + #endif // GUARD_STRINGS_H diff --git a/src/graphics.c b/src/graphics.c index 9f708f18b458..eb798433df01 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1400,17 +1400,31 @@ const u32 gStorageSystemPartyMenu_Tilemap[] = INCBIN_U32("graphics/pokemon_stora // naming screen -const u16 gNamingScreenMenu_Pal[] = INCBIN_U16("graphics/naming_screen/menu.gbapal"); -const u32 gNamingScreenMenu_Gfx[] = INCBIN_U32("graphics/naming_screen/menu.4bpp.lz"); -const u8 gNamingScreenRWindow_Gfx[] = INCBIN_U8("graphics/naming_screen/rwindow.4bpp"); -const u8 gNamingScreenROptions_Gfx[] = INCBIN_U8("graphics/naming_screen/roptions.4bpp"); -const u8 gNamingScreenCursor_Gfx[] = INCBIN_U8("graphics/naming_screen/cursor.4bpp"); -const u8 gNamingScreenPageButton_Gfx[] = INCBIN_U8("graphics/naming_screen/page_button.4bpp"); -const u8 gNamingScreenInputArrow_Gfx[] = INCBIN_U8("graphics/naming_screen/input_arrow.4bpp"); -const u8 gNamingScreenUnderscore_Gfx[] = INCBIN_U8("graphics/naming_screen/underscore.4bpp"); -const u32 gNamingScreenBackground_Tilemap[] = INCBIN_U32("graphics/naming_screen/background.bin.lz"); -const u32 gNamingScreenKeyboardUpper_Tilemap[] = INCBIN_U32("graphics/naming_screen/keyboard_upper.bin.lz"); -const u32 gNamingScreenKeyboardLower_Tilemap[] = INCBIN_U32("graphics/naming_screen/keyboard_lower.bin.lz"); +const u16 gNamingScreenMenu_Pal[6][16] = +{ + INCBIN_U16("graphics/naming_screen/menu.gbapal"), + INCBIN_U16("graphics/naming_screen/page_swap_upper.gbapal"), + INCBIN_U16("graphics/naming_screen/page_swap_lower.gbapal"), + INCBIN_U16("graphics/naming_screen/page_swap_others.gbapal"), + INCBIN_U16("graphics/naming_screen/buttons.gbapal"), + INCBIN_U16("graphics/naming_screen/cursor.gbapal"), +}; +const u32 gNamingScreenMenu_Gfx[] = INCBIN_U32("graphics/naming_screen/menu.4bpp.lz"); +const u32 gNamingScreenPageSwapFrame_Gfx[] = INCBIN_U32("graphics/naming_screen/page_swap_frame.4bpp"); +const u32 gNamingScreenBackButton_Gfx[] = INCBIN_U32("graphics/naming_screen/back_button.4bpp"); +const u32 gNamingScreenOKButton_Gfx[] = INCBIN_U32("graphics/naming_screen/ok_button.4bpp"); +const u32 gNamingScreenPageSwapUpper_Gfx[] = INCBIN_U32("graphics/naming_screen/page_swap_upper.4bpp"); +const u32 gNamingScreenPageSwapLower_Gfx[] = INCBIN_U32("graphics/naming_screen/page_swap_lower.4bpp"); +const u32 gNamingScreenPageSwapOthers_Gfx[] = INCBIN_U32("graphics/naming_screen/page_swap_others.4bpp"); +const u32 gNamingScreenCursor_Gfx[] = INCBIN_U32("graphics/naming_screen/cursor.4bpp"); +const u32 gNamingScreenCursorSquished_Gfx[] = INCBIN_U32("graphics/naming_screen/cursor_squished.4bpp"); +const u32 gNamingScreenCursorFilled_Gfx[] = INCBIN_U32("graphics/naming_screen/cursor_filled.4bpp"); +const u32 gNamingScreenPageSwapButton_Gfx[] = INCBIN_U32("graphics/naming_screen/page_swap_button.4bpp"); +const u32 gNamingScreenInputArrow_Gfx[] = INCBIN_U32("graphics/naming_screen/input_arrow.4bpp"); +const u32 gNamingScreenUnderscore_Gfx[] = INCBIN_U32("graphics/naming_screen/underscore.4bpp"); +const u32 gNamingScreenBackground_Tilemap[] = INCBIN_U32("graphics/naming_screen/background.bin.lz"); +const u32 gNamingScreenKeyboardUpper_Tilemap[] = INCBIN_U32("graphics/naming_screen/keyboard_upper.bin.lz"); +const u32 gNamingScreenKeyboardLower_Tilemap[] = INCBIN_U32("graphics/naming_screen/keyboard_lower.bin.lz"); const u32 gNamingScreenKeyboardSymbols_Tilemap[] = INCBIN_U32("graphics/naming_screen/keyboard_symbols.bin.lz"); // union room chat diff --git a/src/naming_screen.c b/src/naming_screen.c index 613928030360..3dbc0aaac03d 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -26,6 +26,7 @@ #include "text_window.h" #include "overworld.h" #include "walda_phrase.h" +#include "main.h" #include "constants/event_objects.h" #include "constants/rgb.h" @@ -61,10 +62,10 @@ enum { }; enum { - PALTAG_PC_ICON, + PALTAG_MENU, // Also the PC icon PALTAG_PAGE_SWAP_UPPER, PALTAG_PAGE_SWAP_LOWER, - PALTAG_PAGE_SWAP_OTHERS, + PALTAG_PAGE_SWAP_OTHERS, // Also the input arrow/underscore PALTAG_PAGE_SWAP, PALTAG_CURSOR, PALTAG_BACK_BUTTON, @@ -180,21 +181,11 @@ struct NamingScreenData }; EWRAM_DATA static struct NamingScreenData *sNamingScreen = NULL; -extern u16 gKeyRepeatStartDelay; -// extern text -extern const u8 gText_MoveOkBack[]; -extern const u8 gText_YourName[]; -extern const u8 gText_BoxName[]; -extern const u8 gText_PkmnsNickname[]; -extern const u8 gText_TellHimTheWords[]; - - -// start of .rodata -static const u8 sPCIconOff_Gfx[] = INCBIN_U8("graphics/naming_screen/pc_icon/off.4bpp"); -static const u8 sPCIconOn_Gfx[] = INCBIN_U8("graphics/naming_screen/pc_icon/on.4bpp"); +static const u8 sPCIconOff_Gfx[] = INCBIN_U8("graphics/naming_screen/pc_icon_off.4bpp"); +static const u8 sPCIconOn_Gfx[] = INCBIN_U8("graphics/naming_screen/pc_icon_on.4bpp"); static const u16 sKeyboard_Pal[] = INCBIN_U16("graphics/naming_screen/keyboard.gbapal"); -static const u16 sUnused_Pal[] = INCBIN_U16("graphics/naming_screen/unused.gbapal"); +static const u16 sRival_Pal[] = INCBIN_U16("graphics/naming_screen/rival.gbapal"); // Unused, leftover from FRLG rival static const u8 *const sTransferredToPCMessages[] = { @@ -312,13 +303,12 @@ static const u8 sPageColumnCounts[KBPAGE_COUNT] = { [KEYBOARD_LETTERS_UPPER] = KBCOL_COUNT, [KEYBOARD_SYMBOLS] = 6 }; -static const u8 sPageColumnXPos[KBPAGE_COUNT * KBCOL_COUNT] = { - 0, 12, 24, 56, 68, 80, 92, 123, // KEYBOARD_LETTERS_LOWER - 0, 12, 24, 56, 68, 80, 92, 123, // KEYBOARD_LETTERS_UPPER - 0, 22, 44, 66, 88, 110 // KEYBOARD_SYMBOLS +static const u8 sPageColumnXPos[KBPAGE_COUNT][KBCOL_COUNT] = { + [KEYBOARD_LETTERS_LOWER] = {0, 12, 24, 56, 68, 80, 92, 123}, + [KEYBOARD_LETTERS_UPPER] = {0, 12, 24, 56, 68, 80, 92, 123}, + [KEYBOARD_SYMBOLS] = {0, 22, 44, 66, 88, 110} }; -// forward declarations static const struct NamingScreenTemplate *const sNamingScreenTemplates[]; static const struct SubspriteTable sSubspriteTable_PageSwapFrame[]; static const struct SubspriteTable sSubspriteTable_PageSwapText[]; @@ -1142,7 +1132,7 @@ static void SetCursorPos(s16 x, s16 y) struct Sprite *cursorSprite = &gSprites[sNamingScreen->cursorSpriteId]; if (x < sPageColumnCounts[CurrentPageToKeyboardId()]) - cursorSprite->x = sPageColumnXPos[x + CurrentPageToKeyboardId() * KBCOL_COUNT] + 38; + cursorSprite->x = sPageColumnXPos[CurrentPageToKeyboardId()][x] + 38; else cursorSprite->x = 0; @@ -1890,7 +1880,7 @@ static void CreateHelperTasks(void) static void LoadPalettes(void) { - LoadPalette(gNamingScreenMenu_Pal, 0, 0xC0); + LoadPalette(gNamingScreenMenu_Pal, 0, sizeof(gNamingScreenMenu_Pal)); LoadPalette(sKeyboard_Pal, 0xA0, sizeof(sKeyboard_Pal)); LoadPalette(GetTextWindowPalette(2), 0xB0, 0x20); } @@ -2512,7 +2502,7 @@ static const struct SpriteTemplate sSpriteTemplate_Underscore = static const struct SpriteTemplate sSpriteTemplate_PCIcon = { .tileTag = TAG_NONE, - .paletteTag = PALTAG_PC_ICON, + .paletteTag = PALTAG_MENU, .oam = &sOam_8x8, .anims = sAnims_PCIcon, .images = sImageTable_PCIcon, @@ -2547,31 +2537,31 @@ static const u8 *const sNamingScreenKeyboardText[KBPAGE_COUNT][KBROW_COUNT] = static const struct SpriteSheet sSpriteSheets[] = { - {gNamingScreenRWindow_Gfx + 0x280, 0x1E0, GFXTAG_BACK_BUTTON}, - {gNamingScreenRWindow_Gfx + 0x460, 0x1E0, GFXTAG_OK_BUTTON}, - {gNamingScreenRWindow_Gfx, 0x280, GFXTAG_PAGE_SWAP_FRAME}, - {gNamingScreenPageButton_Gfx + 0x20, 0x100, GFXTAG_PAGE_SWAP_BUTTON}, - {gNamingScreenROptions_Gfx, 0x060, GFXTAG_PAGE_SWAP_UPPER}, - {gNamingScreenROptions_Gfx + 0xA0, 0x060, GFXTAG_PAGE_SWAP_LOWER}, - {gNamingScreenROptions_Gfx + 0x140, 0x060, GFXTAG_PAGE_SWAP_OTHERS}, - {gNamingScreenCursor_Gfx, 0x080, GFXTAG_CURSOR}, - {gNamingScreenCursor_Gfx + 0xA0, 0x080, GFXTAG_CURSOR_SQUISHED}, - {gNamingScreenCursor_Gfx + 0x140, 0x080, GFXTAG_CURSOR_FILLED}, - {gNamingScreenInputArrow_Gfx, 0x020, GFXTAG_INPUT_ARROW}, - {gNamingScreenUnderscore_Gfx, 0x020, GFXTAG_UNDERSCORE}, + {gNamingScreenBackButton_Gfx, 0x1E0, GFXTAG_BACK_BUTTON}, + {gNamingScreenOKButton_Gfx, 0x1E0, GFXTAG_OK_BUTTON}, + {gNamingScreenPageSwapFrame_Gfx, 0x280, GFXTAG_PAGE_SWAP_FRAME}, + {gNamingScreenPageSwapButton_Gfx, 0x100, GFXTAG_PAGE_SWAP_BUTTON}, + {gNamingScreenPageSwapUpper_Gfx, 0x060, GFXTAG_PAGE_SWAP_UPPER}, + {gNamingScreenPageSwapLower_Gfx, 0x060, GFXTAG_PAGE_SWAP_LOWER}, + {gNamingScreenPageSwapOthers_Gfx, 0x060, GFXTAG_PAGE_SWAP_OTHERS}, + {gNamingScreenCursor_Gfx, 0x080, GFXTAG_CURSOR}, + {gNamingScreenCursorSquished_Gfx, 0x080, GFXTAG_CURSOR_SQUISHED}, + {gNamingScreenCursorFilled_Gfx, 0x080, GFXTAG_CURSOR_FILLED}, + {gNamingScreenInputArrow_Gfx, 0x020, GFXTAG_INPUT_ARROW}, + {gNamingScreenUnderscore_Gfx, 0x020, GFXTAG_UNDERSCORE}, {} }; static const struct SpritePalette sSpritePalettes[] = { - {gNamingScreenMenu_Pal, PALTAG_PC_ICON}, - {gNamingScreenMenu_Pal + 0x10, PALTAG_PAGE_SWAP_UPPER}, - {gNamingScreenMenu_Pal + 0x20, PALTAG_PAGE_SWAP_LOWER}, - {gNamingScreenMenu_Pal + 0x30, PALTAG_PAGE_SWAP_OTHERS}, - {gNamingScreenMenu_Pal + 0x40, PALTAG_PAGE_SWAP}, - {gNamingScreenMenu_Pal + 0x50, PALTAG_CURSOR}, - {gNamingScreenMenu_Pal + 0x40, PALTAG_BACK_BUTTON}, - {gNamingScreenMenu_Pal + 0x40, PALTAG_OK_BUTTON}, + {gNamingScreenMenu_Pal[0], PALTAG_MENU}, + {gNamingScreenMenu_Pal[1], PALTAG_PAGE_SWAP_UPPER}, + {gNamingScreenMenu_Pal[2], PALTAG_PAGE_SWAP_LOWER}, + {gNamingScreenMenu_Pal[3], PALTAG_PAGE_SWAP_OTHERS}, + {gNamingScreenMenu_Pal[4], PALTAG_PAGE_SWAP}, + {gNamingScreenMenu_Pal[5], PALTAG_CURSOR}, + {gNamingScreenMenu_Pal[4], PALTAG_BACK_BUTTON}, + {gNamingScreenMenu_Pal[4], PALTAG_OK_BUTTON}, {} }; From f534e8e44a8566a0009fe5ad8ad2b38b46cb7212 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Aug 2022 14:21:55 -0400 Subject: [PATCH 663/762] Move party menu data constants --- src/data/party_menu.h | 117 ++++++++++-------------------------------- src/party_menu.c | 76 ++++++++++++++++++++++++++- 2 files changed, 103 insertions(+), 90 deletions(-) diff --git a/src/data/party_menu.h b/src/data/party_menu.h index 7735dae58dc5..b2313f7a14f1 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -1,9 +1,3 @@ -enum { - TAG_POKEBALL = 1200, - TAG_POKEBALL_SMALL, - TAG_STATUS_ICONS, -}; - static const struct BgTemplate sPartyMenuBgTemplates[] = { { @@ -35,12 +29,6 @@ static const struct BgTemplate sPartyMenuBgTemplates[] = }, }; -enum -{ - PARTY_BOX_LEFT_COLUMN, - PARTY_BOX_RIGHT_COLUMN -}; - static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] = { [PARTY_BOX_LEFT_COLUMN] = @@ -663,51 +651,6 @@ static const u16 sUnusedData[] = 0x0121, 0x013b, 0x000f, 0x0013, 0x0039, 0x0046, 0x0094, 0x00f9, 0x007f, 0x0123, }; -enum -{ - MENU_SUMMARY, - MENU_SWITCH, - MENU_CANCEL1, - MENU_ITEM, - MENU_GIVE, - MENU_TAKE_ITEM, - MENU_MAIL, - MENU_TAKE_MAIL, - MENU_READ, - MENU_CANCEL2, - MENU_SHIFT, - MENU_SEND_OUT, - MENU_ENTER, - MENU_NO_ENTRY, - MENU_STORE, - MENU_REGISTER, - MENU_TRADE1, - MENU_TRADE2, - MENU_TOSS, - MENU_FIELD_MOVES, -}; - -enum -{ - FIELD_MOVE_CUT, - FIELD_MOVE_FLASH, - FIELD_MOVE_ROCK_SMASH, - FIELD_MOVE_STRENGTH, - FIELD_MOVE_SURF, - FIELD_MOVE_FLY, - FIELD_MOVE_DIVE, - FIELD_MOVE_WATERFALL, - FIELD_MOVE_TELEPORT, - FIELD_MOVE_DIG, - FIELD_MOVE_SECRET_POWER, - FIELD_MOVE_MILK_DRINK, - FIELD_MOVE_SOFT_BOILED, - FIELD_MOVE_SWEET_SCENT, -}; - -// What a weird choice of table termination; -#define FIELD_MOVE_TERMINATOR MOVE_SWORDS_DANCE - struct { const u8 *text; @@ -763,25 +706,6 @@ static const u8 sPartyMenuAction_TradeSummaryCancel1[] = {MENU_TRADE1, MENU_SUMM static const u8 sPartyMenuAction_TradeSummaryCancel2[] = {MENU_TRADE2, MENU_SUMMARY, MENU_CANCEL1}; static const u8 sPartyMenuAction_TakeItemTossCancel[] = {MENU_TAKE_ITEM, MENU_TOSS, MENU_CANCEL1}; -// IDs for the action lists that appear when a party mon is selected -enum -{ - ACTIONS_NONE, - ACTIONS_SWITCH, - ACTIONS_SHIFT, - ACTIONS_SEND_OUT, - ACTIONS_ENTER, - ACTIONS_NO_ENTRY, - ACTIONS_STORE, - ACTIONS_SUMMARY_ONLY, - ACTIONS_ITEM, - ACTIONS_MAIL, - ACTIONS_REGISTER, - ACTIONS_TRADE, - ACTIONS_SPIN_TRADE, - ACTIONS_TAKEITEM_TOSS -}; - static const u8 *const sPartyMenuActions[] = { [ACTIONS_NONE] = NULL, @@ -818,17 +742,32 @@ static const u8 sPartyMenuActionCounts[] = [ACTIONS_TAKEITEM_TOSS] = ARRAY_COUNT(sPartyMenuAction_TakeItemTossCancel) }; -static const u16 sFieldMoves[] = +static const u16 sFieldMoves[FIELD_MOVES_COUNT + 1] = { - MOVE_CUT, MOVE_FLASH, MOVE_ROCK_SMASH, MOVE_STRENGTH, MOVE_SURF, MOVE_FLY, MOVE_DIVE, MOVE_WATERFALL, MOVE_TELEPORT, - MOVE_DIG, MOVE_SECRET_POWER, MOVE_MILK_DRINK, MOVE_SOFT_BOILED, MOVE_SWEET_SCENT, FIELD_MOVE_TERMINATOR + [FIELD_MOVE_CUT] = MOVE_CUT, + [FIELD_MOVE_FLASH] = MOVE_FLASH, + [FIELD_MOVE_ROCK_SMASH] = MOVE_ROCK_SMASH, + [FIELD_MOVE_STRENGTH] = MOVE_STRENGTH, + [FIELD_MOVE_SURF] = MOVE_SURF, + [FIELD_MOVE_FLY] = MOVE_FLY, + [FIELD_MOVE_DIVE] = MOVE_DIVE, + [FIELD_MOVE_WATERFALL] = MOVE_WATERFALL, + [FIELD_MOVE_TELEPORT] = MOVE_TELEPORT, + [FIELD_MOVE_DIG] = MOVE_DIG, + [FIELD_MOVE_SECRET_POWER] = MOVE_SECRET_POWER, + [FIELD_MOVE_MILK_DRINK] = MOVE_MILK_DRINK, + [FIELD_MOVE_SOFT_BOILED] = MOVE_SOFT_BOILED, + [FIELD_MOVE_SWEET_SCENT] = MOVE_SWEET_SCENT, + // NOTE: This value is used as the terminal value for the table. There's no reason to do this, as the size of the table is known. + // Whichever move shares this value (MOVE_SWORDS_DANCE by default) if present will be treated as the end of the array rather than a field move. + [FIELD_MOVES_COUNT] = FIELD_MOVES_COUNT }; struct { bool8 (*fieldMoveFunc)(void); u8 msgId; -} static const sFieldMoveCursorCallbacks[] = +} static const sFieldMoveCursorCallbacks[FIELD_MOVES_COUNT] = { [FIELD_MOVE_CUT] = {SetUpFieldMove_Cut, PARTY_MSG_NOTHING_TO_CUT}, [FIELD_MOVE_FLASH] = {SetUpFieldMove_Flash, PARTY_MSG_CANT_USE_HERE}, @@ -899,23 +838,23 @@ static const union AnimCmd *const sSpriteAnimTable_HeldItem[] = static const struct SpriteSheet sSpriteSheet_HeldItem = { - sHeldItemGfx, sizeof(sHeldItemGfx), 0xd750 + .data = sHeldItemGfx, .size = sizeof(sHeldItemGfx), .tag = TAG_HELD_ITEM }; static const struct SpritePalette sSpritePalette_HeldItem = { - sHeldItemPalette, 0xd750 + .data = sHeldItemPalette, .tag = TAG_HELD_ITEM }; static const struct SpriteTemplate sSpriteTemplate_HeldItem = { - 0xd750, - 0xd750, - &sOamData_HeldItem, - sSpriteAnimTable_HeldItem, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy + .tileTag = TAG_HELD_ITEM, + .paletteTag = TAG_HELD_ITEM, + .oam = &sOamData_HeldItem, + .anims = sSpriteAnimTable_HeldItem, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy }; static const struct OamData sOamData_MenuPokeball = diff --git a/src/party_menu.c b/src/party_menu.c index c23d9e36fe11..3c4aa0d83be9 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -73,6 +73,80 @@ #include "constants/rgb.h" #include "constants/songs.h" +enum { + MENU_SUMMARY, + MENU_SWITCH, + MENU_CANCEL1, + MENU_ITEM, + MENU_GIVE, + MENU_TAKE_ITEM, + MENU_MAIL, + MENU_TAKE_MAIL, + MENU_READ, + MENU_CANCEL2, + MENU_SHIFT, + MENU_SEND_OUT, + MENU_ENTER, + MENU_NO_ENTRY, + MENU_STORE, + MENU_REGISTER, + MENU_TRADE1, + MENU_TRADE2, + MENU_TOSS, + MENU_FIELD_MOVES +}; + +// IDs for the action lists that appear when a party mon is selected +enum { + ACTIONS_NONE, + ACTIONS_SWITCH, + ACTIONS_SHIFT, + ACTIONS_SEND_OUT, + ACTIONS_ENTER, + ACTIONS_NO_ENTRY, + ACTIONS_STORE, + ACTIONS_SUMMARY_ONLY, + ACTIONS_ITEM, + ACTIONS_MAIL, + ACTIONS_REGISTER, + ACTIONS_TRADE, + ACTIONS_SPIN_TRADE, + ACTIONS_TAKEITEM_TOSS, +}; + +// In CursorCb_FieldMove, field moves <= FIELD_MOVE_WATERFALL are assumed to line up with the badge flags. +// Badge flag names are commented here for people searching for references to remove the badge requirement. +enum { + FIELD_MOVE_CUT, // FLAG_BADGE01_GET + FIELD_MOVE_FLASH, // FLAG_BADGE02_GET + FIELD_MOVE_ROCK_SMASH, // FLAG_BADGE03_GET + FIELD_MOVE_STRENGTH, // FLAG_BADGE04_GET + FIELD_MOVE_SURF, // FLAG_BADGE05_GET + FIELD_MOVE_FLY, // FLAG_BADGE06_GET + FIELD_MOVE_DIVE, // FLAG_BADGE07_GET + FIELD_MOVE_WATERFALL, // FLAG_BADGE08_GET + FIELD_MOVE_TELEPORT, + FIELD_MOVE_DIG, + FIELD_MOVE_SECRET_POWER, + FIELD_MOVE_MILK_DRINK, + FIELD_MOVE_SOFT_BOILED, + FIELD_MOVE_SWEET_SCENT, + FIELD_MOVES_COUNT +}; + +enum { + PARTY_BOX_LEFT_COLUMN, + PARTY_BOX_RIGHT_COLUMN, +}; + +enum { + TAG_POKEBALL = 1200, + TAG_POKEBALL_SMALL, + TAG_STATUS_ICONS, +}; + +#define TAG_HELD_ITEM 55120 + #define PARTY_PAL_SELECTED (1 << 0) #define PARTY_PAL_FAINTED (1 << 1) #define PARTY_PAL_TO_SWITCH (1 << 2) @@ -2536,7 +2610,7 @@ static void SetPartyMonFieldSelectionActions(struct Pokemon *mons, u8 slotId) // Add field moves to action list for (i = 0; i < MAX_MON_MOVES; i++) { - for (j = 0; sFieldMoves[j] != FIELD_MOVE_TERMINATOR; j++) + for (j = 0; sFieldMoves[j] != FIELD_MOVES_COUNT; j++) { if (GetMonData(&mons[slotId], i + MON_DATA_MOVE1) == sFieldMoves[j]) { From e06ba39751d44faa4d9ac3f91c1a8d669be0a5fe Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 10 Aug 2022 15:14:35 -0400 Subject: [PATCH 664/762] Use button constants in Task_HandleChooseMonInput --- src/party_menu.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/party_menu.c b/src/party_menu.c index 3c4aa0d83be9..fbc5f633892a 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -1260,13 +1260,13 @@ void Task_HandleChooseMonInput(u8 taskId) switch (PartyMenuButtonHandler(slotPtr)) { - case 1: // Selected mon + case A_BUTTON: // Selected mon HandleChooseMonSelection(taskId, slotPtr); break; - case 2: // Selected Cancel + case B_BUTTON: // Selected Cancel / pressed B HandleChooseMonCancel(taskId, slotPtr); break; - case 8: // Start button + case START_BUTTON: if (sPartyMenuInternal->chooseHalf) { PlaySE(SE_SELECT); @@ -1483,7 +1483,7 @@ static u16 PartyMenuButtonHandler(s8 *slotPtr) } if (JOY_NEW(START_BUTTON)) - return 8; + return START_BUTTON; if (movementDir) { @@ -1492,8 +1492,8 @@ static u16 PartyMenuButtonHandler(s8 *slotPtr) } // Pressed Cancel - if ((JOY_NEW(A_BUTTON)) && *slotPtr == PARTY_SIZE + 1) - return 2; + if (JOY_NEW(A_BUTTON) && *slotPtr == PARTY_SIZE + 1) + return B_BUTTON; return JOY_NEW(A_BUTTON | B_BUTTON); } From 86881b12ef3510ccd1719a7b63f6c0a10b45593f Mon Sep 17 00:00:00 2001 From: WhenGryphonsFly <84215159+WhenGryphonsFly@users.noreply.github.com> Date: Wed, 10 Aug 2022 19:09:59 -0500 Subject: [PATCH 665/762] Use PARTY_SIZE for Pokerus Nurse Conversation --- src/field_specials.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/field_specials.c b/src/field_specials.c index 262056b7db44..2739565641e4 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1412,7 +1412,7 @@ bool8 ScriptCheckFreePokemonStorageSpace(void) bool8 IsPokerusInParty(void) { - if (!CheckPartyPokerus(gPlayerParty, 0x3f)) + if (!CheckPartyPokerus(gPlayerParty, (1 << PARTY_SIZE) - 1)) return FALSE; return TRUE; From 475658116ed518cafb459abbc9f00f40f6cc1bc2 Mon Sep 17 00:00:00 2001 From: WhenGryphonsFly <84215159+WhenGryphonsFly@users.noreply.github.com> Date: Wed, 10 Aug 2022 20:00:16 -0500 Subject: [PATCH 666/762] Fix BUGFIX return statement in battle_dome.c --- src/battle_dome.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_dome.c b/src/battle_dome.c index e82470d9aed7..90180503117d 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2763,7 +2763,7 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int mode) { typePower = 8; #ifdef BUGFIX - return; + return typePower; #endif } } From 63468f9fcbc676ed139dedae20281e668f031b82 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 11 Aug 2022 12:02:56 -0400 Subject: [PATCH 667/762] Add some missing battle arena constants --- data/battle_scripts_1.s | 8 +- include/battle_arena.h | 2 + include/constants/battle_arena.h | 6 + src/battle_arena.c | 236 ++++++++----------------------- src/battle_script_commands.c | 5 +- 5 files changed, 75 insertions(+), 182 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 880957859ac8..ce8d581c8a92 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1,6 +1,7 @@ #include "constants/global.h" #include "constants/battle.h" #include "constants/pokemon.h" +#include "constants/battle_arena.h" #include "constants/battle_script_commands.h" #include "constants/battle_anim.h" #include "constants/battle_string_ids.h" @@ -4482,7 +4483,7 @@ BattleScript_ArenaDoJudgment:: arenajudgmentstring B_MSG_REF_THATS_IT arenawaitmessage B_MSG_REF_THATS_IT pause B_WAIT_TIME_LONG - setbyte gBattleCommunication, 0 + setbyte gBattleCommunication, 0 @ Reset state for arenajudgmentwindow arenajudgmentwindow pause B_WAIT_TIME_LONG arenajudgmentwindow @@ -4495,8 +4496,9 @@ BattleScript_ArenaDoJudgment:: arenajudgmentstring B_MSG_REF_JUDGE_BODY arenawaitmessage B_MSG_REF_JUDGE_BODY arenajudgmentwindow - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 3, BattleScript_ArenaJudgmentPlayerLoses - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 4, BattleScript_ArenaJudgmentDraw + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, AREAN_RESULT_PLAYER_LOST, BattleScript_ArenaJudgmentPlayerLoses + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, AREAN_RESULT_TIE, BattleScript_ArenaJudgmentDraw +@ ARENA_RESULT_PLAYER_WON arenajudgmentstring B_MSG_REF_PLAYER_WON arenawaitmessage B_MSG_REF_PLAYER_WON arenajudgmentwindow diff --git a/include/battle_arena.h b/include/battle_arena.h index cc0e72c0c15f..469c0961296c 100644 --- a/include/battle_arena.h +++ b/include/battle_arena.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_ARENA_H #define GUARD_BATTLE_ARENA_H +#include "constants/battle_arena.h" + void CallBattleArenaFunction(void); u8 BattleArena_ShowJudgmentWindow(u8 *state); void BattleArena_InitPoints(void); diff --git a/include/constants/battle_arena.h b/include/constants/battle_arena.h index e04211115d61..c300459b39e1 100644 --- a/include/constants/battle_arena.h +++ b/include/constants/battle_arena.h @@ -17,4 +17,10 @@ #define ARENA_CATEGORY_SKILL 1 #define ARENA_CATEGORY_BODY 2 +#define ARENA_RESULT_RUNNING 0 // For intermediate steps, when BattleArena_ShowJudgmentWindow should be called again immediately +#define ARENA_RESULT_STEP_DONE 1 // A step has been completed, the script may advance to the next instruction +#define ARENA_RESULT_PLAYER_WON 2 +#define AREAN_RESULT_PLAYER_LOST 3 +#define AREAN_RESULT_TIE 4 + #endif //GUARD_CONSTANTS_BATTLE_ARENA_H diff --git a/src/battle_arena.c b/src/battle_arena.c index 92b7c66a3a8c..e0f917e18af9 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -38,9 +38,25 @@ static void BufferArenaOpponentName(void); static void SpriteCb_JudgmentIcon(struct Sprite *sprite); static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler); -static const s8 sMindRatings[] = +#define JUDGEMENT_STATE_FINISHED 8 + +#define TAG_JUDGEMENT_ICON 1000 + +enum { + ANIM_ICON_X, // Player lost + ANIM_ICON_TRIANGLE, // Tie + ANIM_ICON_CIRCLE, // Player won + ANIM_ICON_LINE, // Line segment for separating the score total at the bottom +}; + +// This table holds the number of points to add to the 'mind' score for each move. +// All moves with power != 0 give 1 point, with the following exceptions: +// - Counter, Mirror Coat, and Bide give 0 points +// - Fake Out subtracts 1 point +// All moves with power == 0 give 0 points, with the following exceptions: +// - Protect, Detect, and Endure subtract 1 point +static const s8 sMindRatings[MOVES_COUNT] = { - [MOVE_NONE] = 0, [MOVE_POUND] = 1, [MOVE_KARATE_CHOP] = 1, [MOVE_DOUBLE_SLAP] = 1, @@ -54,11 +70,9 @@ static const s8 sMindRatings[] = [MOVE_VICE_GRIP] = 1, [MOVE_GUILLOTINE] = 1, [MOVE_RAZOR_WIND] = 1, - [MOVE_SWORDS_DANCE] = 0, [MOVE_CUT] = 1, [MOVE_GUST] = 1, [MOVE_WING_ATTACK] = 1, - [MOVE_WHIRLWIND] = 0, [MOVE_FLY] = 1, [MOVE_BIND] = 1, [MOVE_SLAM] = 1, @@ -68,7 +82,6 @@ static const s8 sMindRatings[] = [MOVE_MEGA_KICK] = 1, [MOVE_JUMP_KICK] = 1, [MOVE_ROLLING_KICK] = 1, - [MOVE_SAND_ATTACK] = 0, [MOVE_HEADBUTT] = 1, [MOVE_HORN_ATTACK] = 1, [MOVE_FURY_ATTACK] = 1, @@ -79,22 +92,14 @@ static const s8 sMindRatings[] = [MOVE_TAKE_DOWN] = 1, [MOVE_THRASH] = 1, [MOVE_DOUBLE_EDGE] = 1, - [MOVE_TAIL_WHIP] = 0, [MOVE_POISON_STING] = 1, [MOVE_TWINEEDLE] = 1, [MOVE_PIN_MISSILE] = 1, - [MOVE_LEER] = 0, [MOVE_BITE] = 1, - [MOVE_GROWL] = 0, - [MOVE_ROAR] = 0, - [MOVE_SING] = 0, - [MOVE_SUPERSONIC] = 0, [MOVE_SONIC_BOOM] = 1, - [MOVE_DISABLE] = 0, [MOVE_ACID] = 1, [MOVE_EMBER] = 1, [MOVE_FLAMETHROWER] = 1, - [MOVE_MIST] = 0, [MOVE_WATER_GUN] = 1, [MOVE_HYDRO_PUMP] = 1, [MOVE_SURF] = 1, @@ -108,58 +113,27 @@ static const s8 sMindRatings[] = [MOVE_DRILL_PECK] = 1, [MOVE_SUBMISSION] = 1, [MOVE_LOW_KICK] = 1, - [MOVE_COUNTER] = 0, [MOVE_SEISMIC_TOSS] = 1, [MOVE_STRENGTH] = 1, [MOVE_ABSORB] = 1, [MOVE_MEGA_DRAIN] = 1, - [MOVE_LEECH_SEED] = 0, - [MOVE_GROWTH] = 0, [MOVE_RAZOR_LEAF] = 1, [MOVE_SOLAR_BEAM] = 1, - [MOVE_POISON_POWDER] = 0, - [MOVE_STUN_SPORE] = 0, - [MOVE_SLEEP_POWDER] = 0, [MOVE_PETAL_DANCE] = 1, - [MOVE_STRING_SHOT] = 0, [MOVE_DRAGON_RAGE] = 1, [MOVE_FIRE_SPIN] = 1, [MOVE_THUNDER_SHOCK] = 1, [MOVE_THUNDERBOLT] = 1, - [MOVE_THUNDER_WAVE] = 0, [MOVE_THUNDER] = 1, [MOVE_ROCK_THROW] = 1, [MOVE_EARTHQUAKE] = 1, [MOVE_FISSURE] = 1, [MOVE_DIG] = 1, - [MOVE_TOXIC] = 0, [MOVE_CONFUSION] = 1, [MOVE_PSYCHIC] = 1, - [MOVE_HYPNOSIS] = 0, - [MOVE_MEDITATE] = 0, - [MOVE_AGILITY] = 0, [MOVE_QUICK_ATTACK] = 1, [MOVE_RAGE] = 1, - [MOVE_TELEPORT] = 0, [MOVE_NIGHT_SHADE] = 1, - [MOVE_MIMIC] = 0, - [MOVE_SCREECH] = 0, - [MOVE_DOUBLE_TEAM] = 0, - [MOVE_RECOVER] = 0, - [MOVE_HARDEN] = 0, - [MOVE_MINIMIZE] = 0, - [MOVE_SMOKESCREEN] = 0, - [MOVE_CONFUSE_RAY] = 0, - [MOVE_WITHDRAW] = 0, - [MOVE_DEFENSE_CURL] = 0, - [MOVE_BARRIER] = 0, - [MOVE_LIGHT_SCREEN] = 0, - [MOVE_HAZE] = 0, - [MOVE_REFLECT] = 0, - [MOVE_FOCUS_ENERGY] = 0, - [MOVE_BIDE] = 0, - [MOVE_METRONOME] = 0, - [MOVE_MIRROR_MOVE] = 0, [MOVE_SELF_DESTRUCT] = 1, [MOVE_EGG_BOMB] = 1, [MOVE_LICK] = 1, @@ -173,118 +147,67 @@ static const s8 sMindRatings[] = [MOVE_SKULL_BASH] = 1, [MOVE_SPIKE_CANNON] = 1, [MOVE_CONSTRICT] = 1, - [MOVE_AMNESIA] = 0, - [MOVE_KINESIS] = 0, - [MOVE_SOFT_BOILED] = 0, [MOVE_HI_JUMP_KICK] = 1, - [MOVE_GLARE] = 0, [MOVE_DREAM_EATER] = 1, - [MOVE_POISON_GAS] = 0, [MOVE_BARRAGE] = 1, [MOVE_LEECH_LIFE] = 1, - [MOVE_LOVELY_KISS] = 0, [MOVE_SKY_ATTACK] = 1, - [MOVE_TRANSFORM] = 0, [MOVE_BUBBLE] = 1, [MOVE_DIZZY_PUNCH] = 1, - [MOVE_SPORE] = 0, - [MOVE_FLASH] = 0, [MOVE_PSYWAVE] = 1, - [MOVE_SPLASH] = 0, - [MOVE_ACID_ARMOR] = 0, [MOVE_CRABHAMMER] = 1, [MOVE_EXPLOSION] = 1, [MOVE_FURY_SWIPES] = 1, [MOVE_BONEMERANG] = 1, - [MOVE_REST] = 0, [MOVE_ROCK_SLIDE] = 1, [MOVE_HYPER_FANG] = 1, - [MOVE_SHARPEN] = 0, - [MOVE_CONVERSION] = 0, [MOVE_TRI_ATTACK] = 1, [MOVE_SUPER_FANG] = 1, [MOVE_SLASH] = 1, - [MOVE_SUBSTITUTE] = 0, [MOVE_STRUGGLE] = 1, - [MOVE_SKETCH] = 0, [MOVE_TRIPLE_KICK] = 1, [MOVE_THIEF] = 1, - [MOVE_SPIDER_WEB] = 0, - [MOVE_MIND_READER] = 0, - [MOVE_NIGHTMARE] = 0, [MOVE_FLAME_WHEEL] = 1, [MOVE_SNORE] = 1, - [MOVE_CURSE] = 0, [MOVE_FLAIL] = 1, - [MOVE_CONVERSION_2] = 0, [MOVE_AEROBLAST] = 1, - [MOVE_COTTON_SPORE] = 0, [MOVE_REVERSAL] = 1, - [MOVE_SPITE] = 0, [MOVE_POWDER_SNOW] = 1, [MOVE_PROTECT] = -1, [MOVE_MACH_PUNCH] = 1, - [MOVE_SCARY_FACE] = 0, [MOVE_FAINT_ATTACK] = 1, - [MOVE_SWEET_KISS] = 0, - [MOVE_BELLY_DRUM] = 0, [MOVE_SLUDGE_BOMB] = 1, [MOVE_MUD_SLAP] = 1, [MOVE_OCTAZOOKA] = 1, - [MOVE_SPIKES] = 0, [MOVE_ZAP_CANNON] = 1, - [MOVE_FORESIGHT] = 0, - [MOVE_DESTINY_BOND] = 0, - [MOVE_PERISH_SONG] = 0, [MOVE_ICY_WIND] = 1, [MOVE_DETECT] = -1, [MOVE_BONE_RUSH] = 1, - [MOVE_LOCK_ON] = 0, [MOVE_OUTRAGE] = 1, - [MOVE_SANDSTORM] = 0, [MOVE_GIGA_DRAIN] = 1, [MOVE_ENDURE] = -1, - [MOVE_CHARM] = 0, [MOVE_ROLLOUT] = 1, [MOVE_FALSE_SWIPE] = 1, - [MOVE_SWAGGER] = 0, - [MOVE_MILK_DRINK] = 0, [MOVE_SPARK] = 1, [MOVE_FURY_CUTTER] = 1, [MOVE_STEEL_WING] = 1, - [MOVE_MEAN_LOOK] = 0, - [MOVE_ATTRACT] = 0, - [MOVE_SLEEP_TALK] = 0, - [MOVE_HEAL_BELL] = 0, [MOVE_RETURN] = 1, [MOVE_PRESENT] = 1, [MOVE_FRUSTRATION] = 1, - [MOVE_SAFEGUARD] = 0, - [MOVE_PAIN_SPLIT] = 0, [MOVE_SACRED_FIRE] = 1, [MOVE_MAGNITUDE] = 1, [MOVE_DYNAMIC_PUNCH] = 1, [MOVE_MEGAHORN] = 1, [MOVE_DRAGON_BREATH] = 1, - [MOVE_BATON_PASS] = 0, - [MOVE_ENCORE] = 0, [MOVE_PURSUIT] = 1, [MOVE_RAPID_SPIN] = 1, - [MOVE_SWEET_SCENT] = 0, [MOVE_IRON_TAIL] = 1, [MOVE_METAL_CLAW] = 1, [MOVE_VITAL_THROW] = 1, - [MOVE_MORNING_SUN] = 0, - [MOVE_SYNTHESIS] = 0, - [MOVE_MOONLIGHT] = 0, [MOVE_HIDDEN_POWER] = 1, [MOVE_CROSS_CHOP] = 1, [MOVE_TWISTER] = 1, - [MOVE_RAIN_DANCE] = 0, - [MOVE_SUNNY_DAY] = 0, [MOVE_CRUNCH] = 1, - [MOVE_MIRROR_COAT] = 0, - [MOVE_PSYCH_UP] = 0, [MOVE_EXTREME_SPEED] = 1, [MOVE_ANCIENT_POWER] = 1, [MOVE_SHADOW_BALL] = 1, @@ -294,56 +217,25 @@ static const s8 sMindRatings[] = [MOVE_BEAT_UP] = 1, [MOVE_FAKE_OUT] = -1, [MOVE_UPROAR] = 1, - [MOVE_STOCKPILE] = 0, [MOVE_SPIT_UP] = 1, - [MOVE_SWALLOW] = 0, [MOVE_HEAT_WAVE] = 1, - [MOVE_HAIL] = 0, - [MOVE_TORMENT] = 0, - [MOVE_FLATTER] = 0, - [MOVE_WILL_O_WISP] = 0, - [MOVE_MEMENTO] = 0, [MOVE_FACADE] = 1, [MOVE_FOCUS_PUNCH] = 1, [MOVE_SMELLING_SALT] = 1, - [MOVE_FOLLOW_ME] = 0, - [MOVE_NATURE_POWER] = 0, - [MOVE_CHARGE] = 0, - [MOVE_TAUNT] = 0, - [MOVE_HELPING_HAND] = 0, - [MOVE_TRICK] = 0, - [MOVE_ROLE_PLAY] = 0, - [MOVE_WISH] = 0, - [MOVE_ASSIST] = 0, - [MOVE_INGRAIN] = 0, [MOVE_SUPERPOWER] = 1, - [MOVE_MAGIC_COAT] = 0, - [MOVE_RECYCLE] = 0, [MOVE_REVENGE] = 1, [MOVE_BRICK_BREAK] = 1, - [MOVE_YAWN] = 0, [MOVE_KNOCK_OFF] = 1, [MOVE_ENDEAVOR] = 1, [MOVE_ERUPTION] = 1, - [MOVE_SKILL_SWAP] = 0, - [MOVE_IMPRISON] = 0, - [MOVE_REFRESH] = 0, - [MOVE_GRUDGE] = 0, - [MOVE_SNATCH] = 0, [MOVE_SECRET_POWER] = 1, [MOVE_DIVE] = 1, [MOVE_ARM_THRUST] = 1, - [MOVE_CAMOUFLAGE] = 0, - [MOVE_TAIL_GLOW] = 0, [MOVE_LUSTER_PURGE] = 1, [MOVE_MIST_BALL] = 1, - [MOVE_FEATHER_DANCE] = 0, - [MOVE_TEETER_DANCE] = 0, [MOVE_BLAZE_KICK] = 1, - [MOVE_MUD_SPORT] = 0, [MOVE_ICE_BALL] = 1, [MOVE_NEEDLE_ARM] = 1, - [MOVE_SLACK_OFF] = 0, [MOVE_HYPER_VOICE] = 1, [MOVE_POISON_FANG] = 1, [MOVE_CRUSH_CLAW] = 1, @@ -352,17 +244,10 @@ static const s8 sMindRatings[] = [MOVE_METEOR_MASH] = 1, [MOVE_ASTONISH] = 1, [MOVE_WEATHER_BALL] = 1, - [MOVE_AROMATHERAPY] = 0, - [MOVE_FAKE_TEARS] = 0, [MOVE_AIR_CUTTER] = 1, [MOVE_OVERHEAT] = 1, - [MOVE_ODOR_SLEUTH] = 0, [MOVE_ROCK_TOMB] = 1, [MOVE_SILVER_WIND] = 1, - [MOVE_METAL_SOUND] = 0, - [MOVE_GRASS_WHISTLE] = 0, - [MOVE_TICKLE] = 0, - [MOVE_COSMIC_POWER] = 0, [MOVE_WATER_SPOUT] = 1, [MOVE_SIGNAL_BEAM] = 1, [MOVE_SHADOW_PUNCH] = 1, @@ -374,22 +259,15 @@ static const s8 sMindRatings[] = [MOVE_BULLET_SEED] = 1, [MOVE_AERIAL_ACE] = 1, [MOVE_ICICLE_SPEAR] = 1, - [MOVE_IRON_DEFENSE] = 0, - [MOVE_BLOCK] = 0, - [MOVE_HOWL] = 0, [MOVE_DRAGON_CLAW] = 1, [MOVE_FRENZY_PLANT] = 1, - [MOVE_BULK_UP] = 0, [MOVE_BOUNCE] = 1, [MOVE_MUD_SHOT] = 1, [MOVE_POISON_TAIL] = 1, [MOVE_COVET] = 1, [MOVE_VOLT_TACKLE] = 1, [MOVE_MAGICAL_LEAF] = 1, - [MOVE_WATER_SPORT] = 0, - [MOVE_CALM_MIND] = 0, [MOVE_LEAF_BLADE] = 1, - [MOVE_DRAGON_DANCE] = 0, [MOVE_ROCK_BLAST] = 1, [MOVE_SHOCK_WAVE] = 1, [MOVE_WATER_PULSE] = 1, @@ -397,9 +275,7 @@ static const s8 sMindRatings[] = [MOVE_PSYCHO_BOOST] = 1, }; -#define TAG_JUDGEMENT_ICON 1000 - -static const struct OamData sJudgementIconOamData = +static const struct OamData sOam_JudgementIcon = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -416,44 +292,44 @@ static const struct OamData sJudgementIconOamData = .affineParam = 0 }; -static const union AnimCmd sJudgementIconAnimCmd0[] = +static const union AnimCmd sAnim_JudgementIcon_X[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sJudgementIconAnimCmd1[] = +static const union AnimCmd sAnim_JudgementIcon_Triangle[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_END }; -static const union AnimCmd sJudgementIconAnimCmd2[] = +static const union AnimCmd sAnim_JudgementIcon_Circle[] = { ANIMCMD_FRAME(8, 1), ANIMCMD_END }; -static const union AnimCmd sJudgementIconAnimCmd3[] = +static const union AnimCmd sAnim_JudgementIcon_Line[] = { ANIMCMD_FRAME(12, 1), ANIMCMD_END }; -static const union AnimCmd *const sJudgementIconAnimCmds[] = +static const union AnimCmd *const sAnims_JudgementIcon[] = { - sJudgementIconAnimCmd0, - sJudgementIconAnimCmd1, - sJudgementIconAnimCmd2, - sJudgementIconAnimCmd3 + [ANIM_ICON_X] = sAnim_JudgementIcon_X, + [ANIM_ICON_TRIANGLE] = sAnim_JudgementIcon_Triangle, + [ANIM_ICON_CIRCLE] = sAnim_JudgementIcon_Circle, + [ANIM_ICON_LINE] = sAnim_JudgementIcon_Line, }; static const struct SpriteTemplate sSpriteTemplate_JudgmentIcon = { .tileTag = TAG_JUDGEMENT_ICON, .paletteTag = TAG_NONE, - .oam = &sJudgementIconOamData, - .anims = sJudgementIconAnimCmds, + .oam = &sOam_JudgementIcon, + .anims = sAnims_JudgementIcon, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCb_JudgmentIcon, @@ -507,12 +383,12 @@ void CallBattleArenaFunction(void) u8 BattleArena_ShowJudgmentWindow(u8 *state) { int i; - u8 ret = 0; + u8 result = ARENA_RESULT_RUNNING; switch (*state) { case 0: BeginNormalPaletteFade(0x7FFFFF1C, 4, 0, 8, RGB_BLACK); - SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); + SetGpuReg(REG_OFFSET_WININ, (WININ_WIN0_ALL & ~WININ_WIN0_BG0) | WININ_WIN1_ALL); LoadCompressedSpriteSheet(sBattleArenaJudgementSymbolsSpriteSheet); LoadCompressedPalette(gBattleArenaJudgementSymbolsPalette, 0x1F0, 0x20); gBattle_WIN0H = 0xFF; @@ -549,13 +425,15 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL); + + // Create dividing line for the the score totals at the bottom for (i = 0; i < 8; i++) { u8 spriteId = CreateSprite(&sSpriteTemplate_JudgmentIcon, 64 + i * 16, 84, 0); - StartSpriteAnim(&gSprites[spriteId], 3); + StartSpriteAnim(&gSprites[spriteId], ANIM_ICON_LINE); } - ret = 1; + result = ARENA_RESULT_STEP_DONE; (*state)++; } break; @@ -566,7 +444,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; - ret = 1; + result = ARENA_RESULT_STEP_DONE; break; case 5: PlaySE(SE_ARENA_TIMEUP1); @@ -575,7 +453,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; - ret = 1; + result = ARENA_RESULT_STEP_DONE; break; case 6: PlaySE(SE_ARENA_TIMEUP1); @@ -584,49 +462,50 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); (*state)++; - ret = 1; + result = ARENA_RESULT_STEP_DONE; break; case 7: PlaySE(SE_ARENA_TIMEUP2); if (gBattleTextBuff1[0] > gBattleTextBuff2[0]) { - ret = 2; + result = ARENA_RESULT_PLAYER_WON; gBattleScripting.battler = 0; } else if (gBattleTextBuff1[0] < gBattleTextBuff2[0]) { - ret = 3; + result = AREAN_RESULT_PLAYER_LOST; gBattleScripting.battler = 1; } else { - ret = 4; + result = AREAN_RESULT_TIE; } (*state)++; break; - case 8: + case JUDGEMENT_STATE_FINISHED: + // Finishing this state is the indicator to SpriteCB_JudgmentIcon that its safe to destroy the judgement icon sprites (*state)++; break; - case 9: - SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); + case JUDGEMENT_STATE_FINISHED + 1: + SetGpuReg(REG_OFFSET_WININ, (WININ_WIN0_ALL & ~WININ_WIN0_BG0) | WININ_WIN1_ALL); HandleBattleWindow(5, 0, 24, 13, WINDOW_CLEAR); CopyBgTilemapBufferToVram(0); m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256); BeginNormalPaletteFade(0x7FFFFF1C, 4, 8, 0, RGB_BLACK); (*state)++; break; - case 10: + case JUDGEMENT_STATE_FINISHED + 2: if (!gPaletteFade.active) { - SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR); + SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL); FreeSpriteTilesByTag(TAG_JUDGEMENT_ICON); - ret = 1; + result = ARENA_RESULT_STEP_DONE; (*state)++; } break; } - return ret; + return result; } static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) @@ -656,7 +535,8 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) if (pointsPlayer > pointsOpponent) { - animNum = 2; + animNum = ANIM_ICON_CIRCLE; + // +2 to score total for winning if (battler != 0) gBattleTextBuff2[0] += 2; else @@ -664,7 +544,8 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) } else if (pointsPlayer == pointsOpponent) { - animNum = 1; + animNum = ANIM_ICON_TRIANGLE; + // +1 to score total for a tie if (battler != 0) gBattleTextBuff2[0] += 1; else @@ -672,7 +553,7 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) } else { - animNum = 0; + animNum = ANIM_ICON_X; } pointsPlayer = CreateSprite(&sSpriteTemplate_JudgmentIcon, x, y, 0); @@ -681,7 +562,7 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) static void SpriteCb_JudgmentIcon(struct Sprite *sprite) { - if (gBattleCommunication[0] > 8) + if (gBattleCommunication[0] > JUDGEMENT_STATE_FINISHED) DestroySprite(sprite); } @@ -701,8 +582,7 @@ void BattleArena_InitPoints(void) void BattleArena_AddMindPoints(u8 battler) { - s8 *mindPoints = gBattleStruct->arenaMindPoints; - mindPoints[battler] += sMindRatings[gCurrentMove]; + gBattleStruct->arenaMindPoints[battler] += sMindRatings[gCurrentMove]; } void BattleArena_AddSkillPoints(u8 battler) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 653221583343..7c009e0775b5 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6368,7 +6368,10 @@ static void Cmd_various(void) break; case VARIOUS_ARENA_JUDGMENT_WINDOW: i = BattleArena_ShowJudgmentWindow(&gBattleCommunication[0]); - if (i == 0) + + // BattleArena_ShowJudgmentWindow's last state was an intermediate step. + // Return without advancing the current instruction so that it will be called again. + if (i == ARENA_RESULT_RUNNING) return; gBattleCommunication[1] = i; From cf4d05e9e78c25eec55818b372bfb0c4d8fb4b13 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 11 Aug 2022 12:09:38 -0400 Subject: [PATCH 668/762] Fix typo --- data/battle_scripts_1.s | 4 ++-- include/constants/battle_arena.h | 4 ++-- src/battle_arena.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index ce8d581c8a92..1f4ff74b2046 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -4496,8 +4496,8 @@ BattleScript_ArenaDoJudgment:: arenajudgmentstring B_MSG_REF_JUDGE_BODY arenawaitmessage B_MSG_REF_JUDGE_BODY arenajudgmentwindow - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, AREAN_RESULT_PLAYER_LOST, BattleScript_ArenaJudgmentPlayerLoses - jumpifbyte CMP_EQUAL, gBattleCommunication + 1, AREAN_RESULT_TIE, BattleScript_ArenaJudgmentDraw + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, ARENA_RESULT_PLAYER_LOST, BattleScript_ArenaJudgmentPlayerLoses + jumpifbyte CMP_EQUAL, gBattleCommunication + 1, ARENA_RESULT_TIE, BattleScript_ArenaJudgmentDraw @ ARENA_RESULT_PLAYER_WON arenajudgmentstring B_MSG_REF_PLAYER_WON arenawaitmessage B_MSG_REF_PLAYER_WON diff --git a/include/constants/battle_arena.h b/include/constants/battle_arena.h index c300459b39e1..d4288d04fcbe 100644 --- a/include/constants/battle_arena.h +++ b/include/constants/battle_arena.h @@ -20,7 +20,7 @@ #define ARENA_RESULT_RUNNING 0 // For intermediate steps, when BattleArena_ShowJudgmentWindow should be called again immediately #define ARENA_RESULT_STEP_DONE 1 // A step has been completed, the script may advance to the next instruction #define ARENA_RESULT_PLAYER_WON 2 -#define AREAN_RESULT_PLAYER_LOST 3 -#define AREAN_RESULT_TIE 4 +#define ARENA_RESULT_PLAYER_LOST 3 +#define ARENA_RESULT_TIE 4 #endif //GUARD_CONSTANTS_BATTLE_ARENA_H diff --git a/src/battle_arena.c b/src/battle_arena.c index e0f917e18af9..32b52e009fbf 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -473,12 +473,12 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) } else if (gBattleTextBuff1[0] < gBattleTextBuff2[0]) { - result = AREAN_RESULT_PLAYER_LOST; + result = ARENA_RESULT_PLAYER_LOST; gBattleScripting.battler = 1; } else { - result = AREAN_RESULT_TIE; + result = ARENA_RESULT_TIE; } (*state)++; break; From 5515e328b2c44240d1bcc5656a3818b1b3b8343e Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Aug 2022 21:18:10 -0400 Subject: [PATCH 669/762] Clean up lock/unlock anim movement --- asm/macros/movement.inc | 4 +-- data/maps/Route111/scripts.inc | 2 +- include/constants/event_object_movement.h | 4 +-- include/event_object_movement.h | 2 +- .../movement_action_func_tables.h | 12 +++---- src/event_object_movement.c | 34 +++++++++---------- src/rotating_tile_puzzle.c | 16 ++++----- 7 files changed, 37 insertions(+), 37 deletions(-) diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc index 62618379b6fd..a43dc07ac53f 100644 --- a/asm/macros/movement.inc +++ b/asm/macros/movement.inc @@ -152,8 +152,8 @@ create_movement_action walk_slow_diag_northeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT create_movement_action walk_slow_diag_southwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT create_movement_action walk_slow_diag_southeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT - create_movement_action store_lock_anim, MOVEMENT_ACTION_STORE_AND_LOCK_ANIM - create_movement_action free_unlock_anim, MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM + create_movement_action lock_anim, MOVEMENT_ACTION_LOCK_ANIM + create_movement_action unlock_anim, MOVEMENT_ACTION_UNLOCK_ANIM create_movement_action walk_left_affine, MOVEMENT_ACTION_WALK_LEFT_AFFINE create_movement_action walk_right_affine, MOVEMENT_ACTION_WALK_RIGHT_AFFINE create_movement_action levitate, MOVEMENT_ACTION_LEVITATE diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc index 6cb83b452810..f97326c54363 100644 --- a/data/maps/Route111/scripts.inc +++ b/data/maps/Route111/scripts.inc @@ -144,7 +144,7 @@ Route111_EventScript_RootFossilDisappeared:: @ Unused Route111_Movement_PlayerFall:: - store_lock_anim + lock_anim walk_fast_down walk_fast_down walk_fast_down diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index a9d59935ecc0..af5af5340354 100755 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -232,8 +232,8 @@ #define MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT 0x91 #define MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT 0x92 #define MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT 0x93 -#define MOVEMENT_ACTION_STORE_AND_LOCK_ANIM 0x94 -#define MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM 0x95 +#define MOVEMENT_ACTION_LOCK_ANIM 0x94 +#define MOVEMENT_ACTION_UNLOCK_ANIM 0x95 #define MOVEMENT_ACTION_WALK_LEFT_AFFINE 0x96 #define MOVEMENT_ACTION_WALK_RIGHT_AFFINE 0x97 #define MOVEMENT_ACTION_LEVITATE 0x98 diff --git a/include/event_object_movement.h b/include/event_object_movement.h index d31802a67f38..22cef492194a 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -63,7 +63,7 @@ struct PairedPalettes struct LockedAnimObjectEvents { - u8 objectEventIds[OBJECT_EVENTS_COUNT]; + u8 localIds[OBJECT_EVENTS_COUNT]; u8 count; }; diff --git a/src/data/object_events/movement_action_func_tables.h b/src/data/object_events/movement_action_func_tables.h index 8070e98774c9..2e1b6b3b31a8 100755 --- a/src/data/object_events/movement_action_func_tables.h +++ b/src/data/object_events/movement_action_func_tables.h @@ -253,9 +253,9 @@ u8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *, struct Spr u8 MovementAction_Levitate_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_StopLevitate_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_LockAnim_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_Finish(struct ObjectEvent *, struct Sprite *); -u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *, struct Sprite *); +u8 MovementAction_UnlockAnim_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_FlyUp_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementAction_FlyUp_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementAction_Fly_Finish(struct ObjectEvent *, struct Sprite *); @@ -410,8 +410,8 @@ u8 (*const gMovementActionFuncs_WalkSlowDiagonalUpLeft[])(struct ObjectEvent *, u8 (*const gMovementActionFuncs_WalkSlowDiagonalUpRight[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkSlowDiagonalDownLeft[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkSlowDiagonalDownRight[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_StoreAndLockAnim[])(struct ObjectEvent *, struct Sprite *); -u8 (*const gMovementActionFuncs_FreeAndUnlockAnim[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_LockAnim[])(struct ObjectEvent *, struct Sprite *); +u8 (*const gMovementActionFuncs_UnlockAnim[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkLeftAffine[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_WalkRightAffine[])(struct ObjectEvent *, struct Sprite *); u8 (*const gMovementActionFuncs_Levitate[])(struct ObjectEvent *, struct Sprite *); @@ -570,8 +570,8 @@ u8 (*const *const gMovementActionFuncs[])(struct ObjectEvent *, struct Sprite *) [MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT] = gMovementActionFuncs_WalkSlowDiagonalUpRight, [MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT] = gMovementActionFuncs_WalkSlowDiagonalDownLeft, [MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT] = gMovementActionFuncs_WalkSlowDiagonalDownRight, - [MOVEMENT_ACTION_STORE_AND_LOCK_ANIM] = gMovementActionFuncs_StoreAndLockAnim, - [MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM] = gMovementActionFuncs_FreeAndUnlockAnim, + [MOVEMENT_ACTION_LOCK_ANIM] = gMovementActionFuncs_LockAnim, + [MOVEMENT_ACTION_UNLOCK_ANIM] = gMovementActionFuncs_UnlockAnim, [MOVEMENT_ACTION_WALK_LEFT_AFFINE] = gMovementActionFuncs_WalkLeftAffine, [MOVEMENT_ACTION_WALK_RIGHT_AFFINE] = gMovementActionFuncs_WalkRightAffine, [MOVEMENT_ACTION_LEVITATE] = gMovementActionFuncs_Levitate, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 7ea712be613e..e411082bb189 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -8746,13 +8746,13 @@ static void DoRippleFieldEffect(struct ObjectEvent *objectEvent, struct Sprite * FieldEffectStart(FLDEFF_RIPPLE); } -u8 (*const gMovementActionFuncs_StoreAndLockAnim[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_StoreAndLockAnim_Step0, +u8 (*const gMovementActionFuncs_LockAnim[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_LockAnim_Step0, MovementAction_Finish, }; -u8 (*const gMovementActionFuncs_FreeAndUnlockAnim[])(struct ObjectEvent *, struct Sprite *) = { - MovementAction_FreeAndUnlockAnim_Step0, +u8 (*const gMovementActionFuncs_UnlockAnim[])(struct ObjectEvent *, struct Sprite *) = { + MovementAction_UnlockAnim_Step0, MovementAction_Finish, }; @@ -8768,36 +8768,36 @@ u8 (*const gMovementActionFuncs_FlyDown[])(struct ObjectEvent *, struct Sprite * MovementAction_Fly_Finish, }; -u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +u8 MovementAction_LockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { bool32 ableToStore = FALSE; if (sLockedAnimObjectEvents == NULL) { sLockedAnimObjectEvents = AllocZeroed(sizeof(struct LockedAnimObjectEvents)); - sLockedAnimObjectEvents->objectEventIds[0] = objectEvent->localId; + sLockedAnimObjectEvents->localIds[0] = objectEvent->localId; sLockedAnimObjectEvents->count = 1; ableToStore = TRUE; } else { u8 i; - u8 firstFreeSlot; - bool32 found; - for (firstFreeSlot = 16, found = FALSE, i = 0; i < 16; i++) + u8 firstFreeSlot = OBJECT_EVENTS_COUNT; + bool32 found = FALSE; + for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { - if (firstFreeSlot == 16 && sLockedAnimObjectEvents->objectEventIds[i] == 0) + if (firstFreeSlot == OBJECT_EVENTS_COUNT && sLockedAnimObjectEvents->localIds[i] == 0) firstFreeSlot = i; - if (sLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) + if (sLockedAnimObjectEvents->localIds[i] == objectEvent->localId) { found = TRUE; break; } } - if (!found && firstFreeSlot != 16) + if (!found && firstFreeSlot != OBJECT_EVENTS_COUNT) { - sLockedAnimObjectEvents->objectEventIds[firstFreeSlot] = objectEvent->localId; + sLockedAnimObjectEvents->localIds[firstFreeSlot] = objectEvent->localId; sLockedAnimObjectEvents->count++; ableToStore = TRUE; } @@ -8813,7 +8813,7 @@ u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *objectEvent, struct return TRUE; } -u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) +u8 MovementAction_UnlockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite) { bool32 ableToStore; u8 index; @@ -8823,9 +8823,9 @@ u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *objectEvent, struc { ableToStore = FALSE; index = FindLockedObjectEventIndex(objectEvent); - if (index != 16) + if (index != OBJECT_EVENTS_COUNT) { - sLockedAnimObjectEvents->objectEventIds[index] = 0; + sLockedAnimObjectEvents->localIds[index] = 0; sLockedAnimObjectEvents->count--; ableToStore = TRUE; } @@ -8848,7 +8848,7 @@ u8 FindLockedObjectEventIndex(struct ObjectEvent *objectEvent) for (i = 0; i < OBJECT_EVENTS_COUNT; i++) { - if (sLockedAnimObjectEvents->objectEventIds[i] == objectEvent->localId) + if (sLockedAnimObjectEvents->localIds[i] == objectEvent->localId) return i; } return OBJECT_EVENTS_COUNT; diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c index 4581f6e5bedf..7581b81072a4 100644 --- a/src/rotating_tile_puzzle.c +++ b/src/rotating_tile_puzzle.c @@ -27,33 +27,33 @@ struct RotatingTilePuzzle static const u8 sMovement_ShiftRight[] = { - MOVEMENT_ACTION_STORE_AND_LOCK_ANIM, + MOVEMENT_ACTION_LOCK_ANIM, MOVEMENT_ACTION_WALK_NORMAL_RIGHT, - MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM, + MOVEMENT_ACTION_UNLOCK_ANIM, MOVEMENT_ACTION_STEP_END }; static const u8 sMovement_ShiftDown[] = { - MOVEMENT_ACTION_STORE_AND_LOCK_ANIM, + MOVEMENT_ACTION_LOCK_ANIM, MOVEMENT_ACTION_WALK_NORMAL_DOWN, - MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM, + MOVEMENT_ACTION_UNLOCK_ANIM, MOVEMENT_ACTION_STEP_END }; static const u8 sMovement_ShiftLeft[] = { - MOVEMENT_ACTION_STORE_AND_LOCK_ANIM, + MOVEMENT_ACTION_LOCK_ANIM, MOVEMENT_ACTION_WALK_NORMAL_LEFT, - MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM, + MOVEMENT_ACTION_UNLOCK_ANIM, MOVEMENT_ACTION_STEP_END }; static const u8 sMovement_ShiftUp[] = { - MOVEMENT_ACTION_STORE_AND_LOCK_ANIM, + MOVEMENT_ACTION_LOCK_ANIM, MOVEMENT_ACTION_WALK_NORMAL_UP, - MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM, + MOVEMENT_ACTION_UNLOCK_ANIM, MOVEMENT_ACTION_STEP_END }; From c5b30b7f21343b1bd928f20bc3feb2b5ba603555 Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Sat, 13 Aug 2022 06:35:35 +0100 Subject: [PATCH 670/762] Wildcards in ld_script.txt Allows hacks to introduce new files and variables without needing to change ld_script.txt similar to ld_script_modern.txt. --- ld_script.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ld_script.txt b/ld_script.txt index b387c79f9752..ca011ef2a10e 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -20,6 +20,9 @@ SECTIONS { . = 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); @@ -33,12 +36,18 @@ SECTIONS { { /* .bss starts at 0x3000000 */ INCLUDE "sym_bss.ld" + src/*.o(.bss); + gflib/*.o(.bss); + data/*.o(.bss); /* .bss.code starts at 0x3001AA8 */ src/m4a.o(.bss.code); /* COMMON starts at 0x30022A8 */ INCLUDE "sym_common.ld" + src/*.o(COMMON); + gflib/*.o(COMMON); + *libc.a:sbrkr.o(COMMON); end = .; . = 0x8000; @@ -1309,6 +1318,16 @@ SECTIONS { src/graphics.o(.rodata); } =0 + extra : + ALIGN(4) + { + src/*.o(.text); + gflib/*.o(.text); + src/*.o(.rodata); + gflib/*.o(.rodata); + data/*.o(.rodata); + } = 0 + /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ From 63e4a8adcd93a0955dbc4cbc1230c2a9c0d1edee Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 14:32:01 -0400 Subject: [PATCH 671/762] Fixed instances of .string being used with spaces instead of tabs --- .../scripts.inc | 4 +- data/scripts/mauville_man.inc | 2 +- data/text/event_ticket_2.inc | 104 +++--- data/text/pkmn_center_nurse.inc | 64 ++-- data/text/secret_base_trainers.inc | 334 +++++++++--------- 5 files changed, 254 insertions(+), 254 deletions(-) diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc index 481f7000db81..2a8903fe6f32 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc @@ -472,8 +472,8 @@ BattleFrontier_BattlePalaceLobby_Text_FeatWillBeRecorded: @ Unused BattleFrontier_BattlePalaceLobby_Text_BattlePointsFor7WinStreak: - .string "For the feat of your 7-win streak,\n" - .string "we present you with Battle Point(s).$" + .string "For the feat of your 7-win streak,\n" + .string "we present you with Battle Point(s).$" BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize: .string "You seem to have no space for\n" diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc index e1fa3d1799fb..eda3505bf4a9 100644 --- a/data/scripts/mauville_man.inc +++ b/data/scripts/mauville_man.inc @@ -315,7 +315,7 @@ MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory:: .string "the HOENN region!$" MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle:: - .string "The BERRY-Planting TRAINER$" + .string "The BERRY-Planting TRAINER$" MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction:: .string "Planted BERRIES$" diff --git a/data/text/event_ticket_2.inc b/data/text/event_ticket_2.inc index 0165b5fde9ec..e5536eebf886 100644 --- a/data/text/event_ticket_2.inc +++ b/data/text/event_ticket_2.inc @@ -1,71 +1,71 @@ EventTicket_Text_OldSeaMapTooFar: - .string "What's up, youngster?\p" - .string "What, it's you who's supposed to have\n" - .string "a tattered old map?\p" - .string "Let's have a look.\n" - .string "… … … … … …\p" - .string "Boy, this is quite a ways away.\n" - .string "I'm afraid I can't help you…$" + .string "What's up, youngster?\p" + .string "What, it's you who's supposed to have\n" + .string "a tattered old map?\p" + .string "Let's have a look.\n" + .string "… … … … … …\p" + .string "Boy, this is quite a ways away.\n" + .string "I'm afraid I can't help you…$" EventTicket_Text_BrineyHoldOnASecond: - .string "BRINEY: Hold on a second!\p" - .string "What's the idea of turning down\n" - .string "someone that I owe so much to?$" + .string "BRINEY: Hold on a second!\p" + .string "What's the idea of turning down\n" + .string "someone that I owe so much to?$" EventTicket_Text_BrineyLetsSail: - .string "{PLAYER}{KUN}, I'm terribly sorry.\p" - .string "You came to me seeking my help,\n" - .string "and we almost turned you away.\p" - .string "Well, let me make things right.\p" - .string "We'll sail right away, of course!\p" - .string "Let's find this island on\n" - .string "this OLD SEA MAP!$" + .string "{PLAYER}{KUN}, I'm terribly sorry.\p" + .string "You came to me seeking my help,\n" + .string "and we almost turned you away.\p" + .string "Well, let me make things right.\p" + .string "We'll sail right away, of course!\p" + .string "Let's find this island on\n" + .string "this OLD SEA MAP!$" EventTicket_Text_OddTicketGetOnBoard: - .string "Is it you who brought that odd\n" - .string "ticket?\p" - .string "Where you're trying to go is an island\n" - .string "that's far, far away.\p" - .string "No one knows what awaits there…\p" - .string "The very thought excites my blood\n" - .string "as a sailing man!\p" - .string "Get on board, youngster!$" + .string "Is it you who brought that odd\n" + .string "ticket?\p" + .string "Where you're trying to go is an island\n" + .string "that's far, far away.\p" + .string "No one knows what awaits there…\p" + .string "The very thought excites my blood\n" + .string "as a sailing man!\p" + .string "Get on board, youngster!$" FarawayIsland_Entrance_Text_SailorReturn: - .string "CAPT. BRINEY can be so maddeningly\n" - .string "fickle…\p" - .string "Do you want to return to LILYCOVE?$" + .string "CAPT. BRINEY can be so maddeningly\n" + .string "fickle…\p" + .string "Do you want to return to LILYCOVE?$" BirthIsland_Harbor_Text_SailorReturn: - .string "What an oddly shaped island, eh?\n" - .string "Do you want to return to LILYCOVE?$" + .string "What an oddly shaped island, eh?\n" + .string "Do you want to return to LILYCOVE?$" EventTicket_Text_OddTicketsWhereTo: - .string "Is it you who brought those\n" - .string "odd tickets?\p" - .string "… … …Hm.\p" - .string "These tickets will get you to islands\n" - .string "that are far, far away.\p" - .string "No one knows what awaits there,\n" - .string "or what may happen there.\p" - .string "The very thought excites my blood\n" - .string "as a sailing man!\p" - .string "Get on board, youngster!\n" - .string "Where shall we sail first?$" + .string "Is it you who brought those\n" + .string "odd tickets?\p" + .string "… … …Hm.\p" + .string "These tickets will get you to islands\n" + .string "that are far, far away.\p" + .string "No one knows what awaits there,\n" + .string "or what may happen there.\p" + .string "The very thought excites my blood\n" + .string "as a sailing man!\p" + .string "Get on board, youngster!\n" + .string "Where shall we sail first?$" NavelRock_Harbor_Text_SailorReturn: - .string "Did… Did you hear that?\n" - .string "That low growling from deep in there.\p" - .string "Are you sure it's safe?\n" - .string "Do you think we should leave?$" + .string "Did… Did you hear that?\n" + .string "That low growling from deep in there.\p" + .string "Are you sure it's safe?\n" + .string "Do you think we should leave?$" FarawayIsland_Entrance_Text_Sign: - .string "The writing is fading as if it was\n" - .string "written a long time ago…\p" - .string "“…ber, 6th day\n" - .string "If any human…sets foot here…\l" - .string "again…et it be a kindhearted pers…\l" - .string "…ith that hope, I depar…”$" + .string "The writing is fading as if it was\n" + .string "written a long time ago…\p" + .string "“…ber, 6th day\n" + .string "If any human…sets foot here…\l" + .string "again…et it be a kindhearted pers…\l" + .string "…ith that hope, I depar…”$" FarawayIsland_Interior_Text_Mew: - .string "Myuu…$" + .string "Myuu…$" diff --git a/data/text/pkmn_center_nurse.inc b/data/text/pkmn_center_nurse.inc index 05a186f2faf6..eb0a0dc46d7c 100644 --- a/data/text/pkmn_center_nurse.inc +++ b/data/text/pkmn_center_nurse.inc @@ -1,51 +1,51 @@ gText_WouldYouLikeToRestYourPkmn:: - .string "Hello, and welcome to\n" - .string "the POKĂ©MON CENTER.\p" - .string "We restore your tired POKĂ©MON\n" - .string "to full health.\p" - .string "Would you like to rest your POKĂ©MON?$" + .string "Hello, and welcome to\n" + .string "the POKĂ©MON CENTER.\p" + .string "We restore your tired POKĂ©MON\n" + .string "to full health.\p" + .string "Would you like to rest your POKĂ©MON?$" gText_IllTakeYourPkmn:: - .string "Okay, I'll take your POKĂ©MON\n" - .string "for a few seconds.$" + .string "Okay, I'll take your POKĂ©MON\n" + .string "for a few seconds.$" gText_RestoredPkmnToFullHealth:: - .string "Thank you for waiting.\p" - .string "We've restored your POKĂ©MON\n" - .string "to full health.$" + .string "Thank you for waiting.\p" + .string "We've restored your POKĂ©MON\n" + .string "to full health.$" gText_WeHopeToSeeYouAgain:: - .string "We hope to see you again!$" + .string "We hope to see you again!$" gText_WelcomeCutShort:: - .string "Hello, and welcome to\n" - .string "the POKĂ©MON CENTER.\p" - .string "We restore your tired POKĂ©MON\n" - .string "to full health.\p" - .string "Would you like to…$" + .string "Hello, and welcome to\n" + .string "the POKĂ©MON CENTER.\p" + .string "We restore your tired POKĂ©MON\n" + .string "to full health.\p" + .string "Would you like to…$" gText_NoticesGoldCard:: - .string "Th-that card…\n" - .string "Could it be… The GOLD CARD?!\p" - .string "Oh, the gold color is brilliant!\n" - .string "The four stars seem to sparkle!\p" - .string "I've seen several TRAINERS with\n" - .string "a SILVER CARD before, but, {PLAYER},\l" - .string "you're the first TRAINER I've ever\l" - .string "seen with a GOLD CARD!\p" - .string "Okay, {PLAYER}, please allow me\n" - .string "the honor of resting your POKĂ©MON!$" + .string "Th-that card…\n" + .string "Could it be… The GOLD CARD?!\p" + .string "Oh, the gold color is brilliant!\n" + .string "The four stars seem to sparkle!\p" + .string "I've seen several TRAINERS with\n" + .string "a SILVER CARD before, but, {PLAYER},\l" + .string "you're the first TRAINER I've ever\l" + .string "seen with a GOLD CARD!\p" + .string "Okay, {PLAYER}, please allow me\n" + .string "the honor of resting your POKĂ©MON!$" gText_YouWantTheUsual:: - .string "I'm delighted to see you, {PLAYER}!\n" - .string "You want the usual, am I right?$" + .string "I'm delighted to see you, {PLAYER}!\n" + .string "You want the usual, am I right?$" gText_IllTakeYourPkmn2:: - .string "Okay, I'll take your POKĂ©MON\n" - .string "for a few seconds.$" + .string "Okay, I'll take your POKĂ©MON\n" + .string "for a few seconds.$" gText_ThankYouForWaiting:: - .string "Thank you for waiting.$" + .string "Thank you for waiting.$" gText_WeHopeToSeeYouAgain2:: - .string "We hope to see you again!$" + .string "We hope to see you again!$" diff --git a/data/text/secret_base_trainers.inc b/data/text/secret_base_trainers.inc index f1881533abed..ef8ba4dca5db 100644 --- a/data/text/secret_base_trainers.inc +++ b/data/text/secret_base_trainers.inc @@ -1,286 +1,286 @@ SecretBase_Text_Trainer0Intro: - .string "Have you made a SECRET BASE already?\p" - .string "I went here, there, everywhere before\n" - .string "choosing this place.\p" - .string "Since you're already here, how would\n" - .string "you like to battle?$" + .string "Have you made a SECRET BASE already?\p" + .string "I went here, there, everywhere before\n" + .string "choosing this place.\p" + .string "Since you're already here, how would\n" + .string "you like to battle?$" SecretBase_Text_Trainer0AcceptBattle: - .string "Okay!\n" - .string "Here we come!$" + .string "Okay!\n" + .string "Here we come!$" SecretBase_Text_Trainer0DeclineBattle: - .string "Hunh?\n" - .string "Oh, you can't now…$" + .string "Hunh?\n" + .string "Oh, you can't now…$" SecretBase_Text_Trainer0Defeated:: - .string "Waaargh! You're too strong!\n" - .string "About me losing… Please keep it secret!$" + .string "Waaargh! You're too strong!\n" + .string "About me losing… Please keep it secret!$" SecretBase_Text_Trainer0PostBattle: - .string "What do you think of my SECRET BASE?\n" - .string "Come visit me again tomorrow.$" + .string "What do you think of my SECRET BASE?\n" + .string "Come visit me again tomorrow.$" SecretBase_Text_Trainer0PreChampion: - .string "Have you made a SECRET BASE already?\p" - .string "I went here, there, everywhere before\n" - .string "choosing this place.\p" - .string "Feel free to hang out!$" + .string "Have you made a SECRET BASE already?\p" + .string "I went here, there, everywhere before\n" + .string "choosing this place.\p" + .string "Feel free to hang out!$" SecretBase_Text_Trainer5Intro: - .string "There're a lot of places where\n" - .string "you can make a SECRET BASE.\p" - .string "But I like this spot best.\n" - .string "Don't you think it's nice?\p" - .string "Oh, would you like to have a battle?$" + .string "There're a lot of places where\n" + .string "you can make a SECRET BASE.\p" + .string "But I like this spot best.\n" + .string "Don't you think it's nice?\p" + .string "Oh, would you like to have a battle?$" SecretBase_Text_Trainer5AcceptBattle: - .string "Okay, here goes!$" + .string "Okay, here goes!$" SecretBase_Text_Trainer5DeclineBattle: - .string "Oh…\n" - .string "You can't now, okay.$" + .string "Oh…\n" + .string "You can't now, okay.$" SecretBase_Text_Trainer5Defeated:: - .string "Hmmm… It's our loss…\n" - .string "But don't tell anyone!\l" - .string "It's a confidential secret!$" + .string "Hmmm… It's our loss…\n" + .string "But don't tell anyone!\l" + .string "It's a confidential secret!$" SecretBase_Text_Trainer5PostBattle: - .string "If you're in this area again,\n" - .string "I hope you'll visit me.$" + .string "If you're in this area again,\n" + .string "I hope you'll visit me.$" SecretBase_Text_Trainer5PreChampion: - .string "There're a lot of places where you can\n" - .string "make a SECRET BASE.\p" - .string "But I like this spot best.\n" - .string "Don't you think it's nice?$" + .string "There're a lot of places where you can\n" + .string "make a SECRET BASE.\p" + .string "But I like this spot best.\n" + .string "Don't you think it's nice?$" SecretBase_Text_Trainer1Intro: - .string "This is a popular spot.\n" - .string "It's always taken.\p" - .string "Oh! Were you thinking about\n" - .string "taking this spot, too?\p" - .string "I'll tell you what, you can have this\n" - .string "spot if you can beat me.$" + .string "This is a popular spot.\n" + .string "It's always taken.\p" + .string "Oh! Were you thinking about\n" + .string "taking this spot, too?\p" + .string "I'll tell you what, you can have this\n" + .string "spot if you can beat me.$" SecretBase_Text_Trainer1AcceptBattle: - .string "Okay!\n" - .string "I'm going to defend my SECRET BASE!$" + .string "Okay!\n" + .string "I'm going to defend my SECRET BASE!$" SecretBase_Text_Trainer1DeclineBattle: - .string "Hunh? Is that right?\n" - .string "You're not interested in this spot?$" + .string "Hunh? Is that right?\n" + .string "You're not interested in this spot?$" SecretBase_Text_Trainer1Defeated:: - .string "I can't keep going!\n" - .string "I surrender!$" + .string "I can't keep going!\n" + .string "I surrender!$" SecretBase_Text_Trainer1PostBattle: - .string "Okay, when I move one day,\n" - .string "this place will be yours!$" + .string "Okay, when I move one day,\n" + .string "this place will be yours!$" SecretBase_Text_Trainer1PreChampion: - .string "This is a popular spot.\n" - .string "It's always taken.\p" - .string "I waited a long time for it to open.\n" - .string "I finally got to use it!$" + .string "This is a popular spot.\n" + .string "It's always taken.\p" + .string "I waited a long time for it to open.\n" + .string "I finally got to use it!$" SecretBase_Text_Trainer6Intro: - .string "Welcome to my POKĂ©MON LAB.\p" - .string "I carry out research on battling in\n" - .string "secrecy.\p" - .string "Would you like to see how strong I am?$" + .string "Welcome to my POKĂ©MON LAB.\p" + .string "I carry out research on battling in\n" + .string "secrecy.\p" + .string "Would you like to see how strong I am?$" SecretBase_Text_Trainer6AcceptBattle: - .string "I'm going to go all out!$" + .string "I'm going to go all out!$" SecretBase_Text_Trainer6DeclineBattle: - .string "Oh.\n" - .string "Some other time, then!$" + .string "Oh.\n" + .string "Some other time, then!$" SecretBase_Text_Trainer6Defeated:: - .string "Hmm… I've still got lots to learn.\n" - .string "I have to study some more.$" + .string "Hmm… I've still got lots to learn.\n" + .string "I have to study some more.$" SecretBase_Text_Trainer6PostBattle: - .string "Thanks for battling with me.\n" - .string "Please come back again tomorrow.$" + .string "Thanks for battling with me.\n" + .string "Please come back again tomorrow.$" SecretBase_Text_Trainer6PreChampion: - .string "Welcome to my POKĂ©MON LAB.\p" - .string "I carry out research on battling in\n" - .string "secrecy.$" + .string "Welcome to my POKĂ©MON LAB.\p" + .string "I carry out research on battling in\n" + .string "secrecy.$" SecretBase_Text_Trainer2Intro: - .string "A big mansion is nice, but I like this\n" - .string "sort of place more.\p" - .string "I like it because all kinds of people\n" - .string "come visit me.\p" - .string "So, how would you like a battle?$" + .string "A big mansion is nice, but I like this\n" + .string "sort of place more.\p" + .string "I like it because all kinds of people\n" + .string "come visit me.\p" + .string "So, how would you like a battle?$" SecretBase_Text_Trainer2AcceptBattle: - .string "That's the way!$" + .string "That's the way!$" SecretBase_Text_Trainer2DeclineBattle: - .string "When you're ready, give me a shout!$" + .string "When you're ready, give me a shout!$" SecretBase_Text_Trainer2Defeated:: - .string "Aww! Done in!\n" - .string "But it's still fun to battle!$" + .string "Aww! Done in!\n" + .string "But it's still fun to battle!$" SecretBase_Text_Trainer2PostBattle: - .string "Well, anyway, I should go buy some\n" - .string "decorations and furniture.\p" - .string "I want my SECRET BASE to be a place\n" - .string "other people can enjoy.$" + .string "Well, anyway, I should go buy some\n" + .string "decorations and furniture.\p" + .string "I want my SECRET BASE to be a place\n" + .string "other people can enjoy.$" SecretBase_Text_Trainer2PreChampion: - .string "A big mansion is nice, but I like this\n" - .string "sort of place more.\p" - .string "I like it because all kinds of people\n" - .string "come visit me.$" + .string "A big mansion is nice, but I like this\n" + .string "sort of place more.\p" + .string "I like it because all kinds of people\n" + .string "come visit me.$" SecretBase_Text_Trainer7Intro: - .string "I simply adore shopping for decorations\n" - .string "and furniture.\p" - .string "I also love raising POKĂ©MON just\n" - .string "as much.\p" - .string "If you would be so kind, will you battle\n" - .string "with my POKĂ©MON?$" + .string "I simply adore shopping for decorations\n" + .string "and furniture.\p" + .string "I also love raising POKĂ©MON just\n" + .string "as much.\p" + .string "If you would be so kind, will you battle\n" + .string "with my POKĂ©MON?$" SecretBase_Text_Trainer7AcceptBattle: - .string "Thank you.\n" - .string "Shall we begin?$" + .string "Thank you.\n" + .string "Shall we begin?$" SecretBase_Text_Trainer7DeclineBattle: - .string "Oh.\n" - .string "How disappointing…$" + .string "Oh.\n" + .string "How disappointing…$" SecretBase_Text_Trainer7Defeated:: - .string "I concede…$" + .string "I concede…$" SecretBase_Text_Trainer7PostBattle: - .string "That was all in good fun!\n" - .string "I should go enjoy shopping now.$" + .string "That was all in good fun!\n" + .string "I should go enjoy shopping now.$" SecretBase_Text_Trainer7PreChampion: - .string "I simply adore shopping for decorations\n" - .string "and furniture.\p" - .string "I also love raising POKĂ©MON just\n" - .string "as much.$" + .string "I simply adore shopping for decorations\n" + .string "and furniture.\p" + .string "I also love raising POKĂ©MON just\n" + .string "as much.$" SecretBase_Text_Trainer3Intro: - .string "Some people make their SECRET BASES in\n" - .string "hard-to-find places.\l" - .string "Do they want to just lie low?\p" - .string "But since you found me, how about we\n" - .string "have a battle?$" + .string "Some people make their SECRET BASES in\n" + .string "hard-to-find places.\l" + .string "Do they want to just lie low?\p" + .string "But since you found me, how about we\n" + .string "have a battle?$" SecretBase_Text_Trainer3AcceptBattle: - .string "I'm not going down easily!$" + .string "I'm not going down easily!$" SecretBase_Text_Trainer3DeclineBattle: - .string "Oh… Are you maybe tired from searching\n" - .string "for this place?$" + .string "Oh… Are you maybe tired from searching\n" + .string "for this place?$" SecretBase_Text_Trainer3Defeated:: - .string "I went down…$" + .string "I went down…$" SecretBase_Text_Trainer3PostBattle: - .string "Where's your SECRET BASE?\n" - .string "I should go visit you there.$" + .string "Where's your SECRET BASE?\n" + .string "I should go visit you there.$" SecretBase_Text_Trainer3PreChampion: - .string "Some people make their SECRET BASES in\n" - .string "hard-to-find places.\l" - .string "Do they want to just lie low?$" + .string "Some people make their SECRET BASES in\n" + .string "hard-to-find places.\l" + .string "Do they want to just lie low?$" SecretBase_Text_Trainer8Intro: - .string "People have told me that you can get\n" - .string "decorations in several ways.\p" - .string "We should have a race to see who can\n" - .string "get nicer decorations and furniture!\p" - .string "In the meantime, want to battle?$" + .string "People have told me that you can get\n" + .string "decorations in several ways.\p" + .string "We should have a race to see who can\n" + .string "get nicer decorations and furniture!\p" + .string "In the meantime, want to battle?$" SecretBase_Text_Trainer8AcceptBattle: - .string "This is my SECRET BASE.\n" - .string "I can't lose!$" + .string "This is my SECRET BASE.\n" + .string "I can't lose!$" SecretBase_Text_Trainer8DeclineBattle: - .string "I'll battle with you anytime.$" + .string "I'll battle with you anytime.$" SecretBase_Text_Trainer8Defeated:: - .string "Huh?\n" - .string "Did I just lose?$" + .string "Huh?\n" + .string "Did I just lose?$" SecretBase_Text_Trainer8PostBattle: - .string "I won't lose at collecting decorations.\n" - .string "Come visit again!$" + .string "I won't lose at collecting decorations.\n" + .string "Come visit again!$" SecretBase_Text_Trainer8PreChampion: - .string "People have told me that you can get\n" - .string "decorations in several ways.\p" - .string "We should have a race to see who can\n" - .string "get nicer decorations and furniture!$" + .string "People have told me that you can get\n" + .string "decorations in several ways.\p" + .string "We should have a race to see who can\n" + .string "get nicer decorations and furniture!$" SecretBase_Text_Trainer4Intro: - .string "I found a spot I liked, and I did it up\n" - .string "with my favorite decorations.\p" - .string "I raise my favorite POKĂ©MON and grow\n" - .string "stronger with it.\p" - .string "That's what I do.\n" - .string "Want to battle with me?$" + .string "I found a spot I liked, and I did it up\n" + .string "with my favorite decorations.\p" + .string "I raise my favorite POKĂ©MON and grow\n" + .string "stronger with it.\p" + .string "That's what I do.\n" + .string "Want to battle with me?$" SecretBase_Text_Trainer4AcceptBattle: - .string "Show me what you're made of!$" + .string "Show me what you're made of!$" SecretBase_Text_Trainer4DeclineBattle: - .string "I guess there are times when you're not\n" - .string "into it.$" + .string "I guess there are times when you're not\n" + .string "into it.$" SecretBase_Text_Trainer4Defeated:: - .string "I know exactly what you're made of now.$" + .string "I know exactly what you're made of now.$" SecretBase_Text_Trainer4PostBattle: - .string "We can both become stronger.\n" - .string "Let's keep at it!$" + .string "We can both become stronger.\n" + .string "Let's keep at it!$" SecretBase_Text_Trainer4PreChampion: - .string "I found a spot I liked, and I did it up\n" - .string "with my favorite decorations.\p" - .string "I raise my favorite POKĂ©MON and grow\n" - .string "stronger with it.\p" - .string "Every day is a great day.$" + .string "I found a spot I liked, and I did it up\n" + .string "with my favorite decorations.\p" + .string "I raise my favorite POKĂ©MON and grow\n" + .string "stronger with it.\p" + .string "Every day is a great day.$" SecretBase_Text_Trainer9Intro: - .string "You can learn a lot about the taste\n" - .string "and sense of people by the kinds of\l" - .string "decorations they have, and how they\l" - .string "display them.\p" - .string "What do you think of my taste?\n" - .string "Are you speechless?\p" - .string "Want to see my taste in battling?$" + .string "You can learn a lot about the taste\n" + .string "and sense of people by the kinds of\l" + .string "decorations they have, and how they\l" + .string "display them.\p" + .string "What do you think of my taste?\n" + .string "Are you speechless?\p" + .string "Want to see my taste in battling?$" SecretBase_Text_Trainer9AcceptBattle: - .string "There's no holding back!$" + .string "There's no holding back!$" SecretBase_Text_Trainer9DeclineBattle: - .string "I'll be happy to demonstrate my style\n" - .string "anytime.$" + .string "I'll be happy to demonstrate my style\n" + .string "anytime.$" SecretBase_Text_Trainer9Defeated:: - .string "You're supremely talented!\n" - .string "Your power seems to be limitless…$" + .string "You're supremely talented!\n" + .string "Your power seems to be limitless…$" SecretBase_Text_Trainer9PostBattle: - .string "What did you think of my style?\n" - .string "I'll keep on polishing it!$" + .string "What did you think of my style?\n" + .string "I'll keep on polishing it!$" SecretBase_Text_Trainer9PreChampion: - .string "You can learn a lot about the taste\n" - .string "and sense of people by the kinds of\l" - .string "decorations they have, and how they\l" - .string "display them.\p" - .string "What do you think of my taste?\n" - .string "Are you speechless?$" + .string "You can learn a lot about the taste\n" + .string "and sense of people by the kinds of\l" + .string "decorations they have, and how they\l" + .string "display them.\p" + .string "What do you think of my taste?\n" + .string "Are you speechless?$" From 1cb659df8c10e671e250a84f6fa7c15d0fb61251 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Mon, 15 Aug 2022 15:18:12 -0400 Subject: [PATCH 672/762] Renaming Script Contexts - Determined how the various script contexts were used and renamed accordingly. - ScriptContext2_Enable/Disable => Lock/UnlockPlayerFieldControls - The sole purpose of the flag is to make sure the player can't move around in the overworld. It has nothing to do with script contexts. - ScriptContext1 => ScriptContext - It is the global script context used to set up scripts which run over many frames. - ScriptContext2_RunNewScript => RunScriptImmediately - ScriptContext2's sole purpose was to run scripts immediately and in a separate context, usually while the global context is waiting for things like map loads or screen changes. --- asm/macros/event.inc | 2 +- include/apprentice.h | 2 +- include/script.h | 43 ++++++++++++---- include/secret_base.h | 2 +- src/apprentice.c | 14 ++--- src/battle_pike.c | 2 +- src/battle_pyramid.c | 2 +- src/battle_pyramid_bag.c | 2 +- src/battle_setup.c | 32 ++++++------ src/berry_crush.c | 6 +-- src/braille_puzzles.c | 8 +-- src/cable_car.c | 2 +- src/cable_club.c | 28 +++++----- src/contest.c | 4 +- src/contest_util.c | 16 +++--- src/daycare.c | 4 +- src/decoration.c | 22 ++++---- src/dodrio_berry_picking.c | 2 +- src/egg_hatch.c | 2 +- src/field_control_avatar.c | 36 ++++++------- src/field_effect.c | 42 +++++++-------- src/field_player_avatar.c | 18 +++---- src/field_poison.c | 4 +- src/field_screen_effect.c | 94 +++++++++++++++++----------------- src/field_special_scene.c | 6 +-- src/field_specials.c | 30 +++++------ src/field_tasks.c | 2 +- src/field_weather_effect.c | 2 +- src/fldeff_cut.c | 8 +-- src/fldeff_flash.c | 2 +- src/fldeff_misc.c | 20 ++++---- src/fldeff_rocksmash.c | 6 +-- src/fldeff_strength.c | 4 +- src/fldeff_sweetscent.c | 2 +- src/hof_pc.c | 4 +- src/item_menu.c | 6 +-- src/item_use.c | 18 +++---- src/lilycove_lady.c | 4 +- src/match_call.c | 4 +- src/mauville_old_man.c | 6 +-- src/mirage_tower.c | 10 ++-- src/move_relearner.c | 2 +- src/mystery_event_script.c | 2 +- src/new_game.c | 2 +- src/overworld.c | 68 ++++++++++++------------ src/party_menu.c | 12 ++--- src/player_pc.c | 6 +-- src/pokemon_jump.c | 2 +- src/pokemon_storage_system.c | 6 +-- src/record_mixing.c | 2 +- src/roulette.c | 6 +-- src/safari_zone.c | 10 ++-- src/scrcmd.c | 36 ++++++------- src/script.c | 84 ++++++++++++++++-------------- src/script_menu.c | 6 +-- src/secret_base.c | 16 +++--- src/shop.c | 10 ++-- src/start_menu.c | 16 +++--- src/time_events.c | 2 +- src/trade.c | 2 +- src/trader.c | 6 +-- src/trainer_see.c | 2 +- src/union_room.c | 22 ++++---- src/union_room_player_avatar.c | 2 +- src/wild_encounter.c | 2 +- 65 files changed, 438 insertions(+), 409 deletions(-) diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 661e675c9773..cea21aeb28f3 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -277,7 +277,7 @@ .endm @ Blocks script execution until a command or C code manually unblocks it. Generally used with specific - @ commands and specials. Calling EnableBothScriptContexts for instance will allow execution to continue. + @ commands and specials. Calling ScriptContext_Enable for instance will allow execution to continue. .macro waitstate .byte 0x27 .endm diff --git a/include/apprentice.h b/include/apprentice.h index 27ce0371e08c..582d41435e6e 100644 --- a/include/apprentice.h +++ b/include/apprentice.h @@ -16,7 +16,7 @@ struct ApprenticeTrainer extern const struct ApprenticeTrainer gApprentices[]; void BufferApprenticeChallengeText(u8 saveApprenticeId); -void Apprentice_EnableBothScriptContexts(void); +void Apprentice_ScriptContext_Enable(void); void ResetApprenticeStruct(struct Apprentice *apprentice); void ResetAllApprenticeData(void); void CallApprenticeFunction(void); diff --git a/include/script.h b/include/script.h index 63f6f5aef9dc..7a2d7d4a6cd9 100644 --- a/include/script.h +++ b/include/script.h @@ -31,16 +31,39 @@ void ScriptCall(struct ScriptContext *ctx, const u8 *ptr); void ScriptReturn(struct ScriptContext *ctx); u16 ScriptReadHalfword(struct ScriptContext *ctx); u32 ScriptReadWord(struct ScriptContext *ctx); -void ScriptContext2_Enable(void); -void ScriptContext2_Disable(void); -bool8 ScriptContext2_IsEnabled(void); -void ScriptContext1_Init(void); -bool8 ScriptContext1_IsScriptSetUp(void); -bool8 ScriptContext2_RunScript(void); -void ScriptContext1_SetupScript(const u8 *ptr); -void ScriptContext1_Stop(void); -void EnableBothScriptContexts(void); -void ScriptContext2_RunNewScript(const u8 *ptr); + +// Formerly ScriptContext2_Enable / Disable / IsEnabled + +void LockPlayerFieldControls(void); +void UnlockPlayerFieldControls(void); +bool8 ArePlayerFieldControlsLocked(void); + +// Formerly ScriptContext1_*() +// The ScriptContext_* functions work with the primary script context, +// which yields control back to native code should the script make a wait call. + +// Re-initializes the global script context to zero. +void ScriptContext_Init(void); +// Checks if the global script context is able to be run right now. +bool8 ScriptContext_IsEnabled(void); +// Runs the script until the script makes a wait* call, then returns true if +// there's more script to run, or false if the script has hit the end. +// This function also returns false if the context is finished +// or waiting (after a call to _Stop) +bool8 ScriptContext_RunScript(void); +// Sets up a new script in the global context and enables the context +void ScriptContext_SetupScript(const u8 *ptr); +// Puts the script into waiting mode; usually called from a wait* script command. +void ScriptContext_Stop(void); +// Puts the script into running mode. +void ScriptContext_Enable(void); + +// Formerly ScriptContext2_RunNewScript() +// Sets up and runs a script in its own context immediately. The script will be +// finished when this function returns. Used mainly by all of the map header +// scripts (except the frame table scripts). +void RunScriptImmediately(const u8 *ptr); + u8 *MapHeaderGetScriptTable(u8 tag); void MapHeaderRunScriptType(u8 tag); u8 *MapHeaderCheckScriptTable(u8 tag); diff --git a/include/secret_base.h b/include/secret_base.h index b7d36a8ee9e5..cb3b95ee780e 100644 --- a/include/secret_base.h +++ b/include/secret_base.h @@ -24,7 +24,7 @@ void SetCurSecretBaseIdFromPosition(const struct MapPosition *position, const st void TrySetCurSecretBaseIndex(void); void CheckPlayerHasSecretBase(void); void ToggleSecretBaseEntranceMetatile(void); -void EnableBothScriptContexts(void); +void ScriptContext_Enable(void); void ReceiveSecretBasesData(void *records, size_t recordSize, u8 linkIdx); #endif //GUARD_SECRET_BASE_H diff --git a/src/apprentice.c b/src/apprentice.c index 16ce0a859cb6..89017de33ab6 100644 --- a/src/apprentice.c +++ b/src/apprentice.c @@ -132,9 +132,9 @@ void BufferApprenticeChallengeText(u8 saveApprenticeId) StringExpandPlaceholders(gStringVar4, challengeText); } -void Apprentice_EnableBothScriptContexts(void) +void Apprentice_ScriptContext_Enable(void) { - EnableBothScriptContexts(); + ScriptContext_Enable(); } void ResetApprenticeStruct(struct Apprentice *apprentice) @@ -679,7 +679,7 @@ static void Task_ChooseAnswer(u8 taskId) RemoveAndHideWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } static u8 CreateAndShowWindow(u8 left, u8 top, u8 width, u8 height) @@ -815,9 +815,9 @@ static void Task_WaitForPrintingMessage(u8 taskId) { DestroyTask(taskId); if (gSpecialVar_0x8005) - ExecuteFuncAfterButtonPress(EnableBothScriptContexts); + ExecuteFuncAfterButtonPress(ScriptContext_Enable); else - EnableBothScriptContexts(); + ScriptContext_Enable(); } } @@ -895,7 +895,7 @@ static void PrintApprenticeMessage(void) } else { - EnableBothScriptContexts(); + ScriptContext_Enable(); return; } @@ -906,7 +906,7 @@ static void PrintApprenticeMessage(void) static void Script_PrintApprenticeMessage(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); PlayerFreeze(); StopPlayerAvatar(); diff --git a/src/battle_pike.c b/src/battle_pike.c index 433dd0a083d5..139ea497ba4d 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -1251,7 +1251,7 @@ static void Task_DoStatusInflictionScreenFlash(u8 taskId) { if (IsStatusInflictionScreenFlashTaskFinished()) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index a885f1c8eaf1..6e8c6a37eaa4 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1480,7 +1480,7 @@ u8 GetTrainerEncounterMusicIdInBattlePyramid(u16 trainerId) // Unused static void BattlePyramidRetireChallenge(void) { - ScriptContext1_SetupScript(BattlePyramid_Retire); + ScriptContext_SetupScript(BattlePyramid_Retire); } static u16 GetUniqueTrainerId(u8 objectEventId) diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index de460c131fdf..9fab996da884 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -393,7 +393,7 @@ static void OpenBattlePyramidBagInBattle(void) // make room. void ChooseItemsToTossFromPyramidBag(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_ChooseItemsToTossFromPyramidBag, 10); } diff --git a/src/battle_setup.c b/src/battle_setup.c index da51a7be699b..2ba9429d3238 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -400,7 +400,7 @@ void BattleSetup_StartBattlePikeWildBattle(void) static void DoStandardWildBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; @@ -419,7 +419,7 @@ static void DoStandardWildBattle(void) void BattleSetup_StartRoamerBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; @@ -433,7 +433,7 @@ void BattleSetup_StartRoamerBattle(void) static void DoSafariBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); StopPlayerAvatar(); gMain.savedCallback = CB2_EndSafariBattle; @@ -443,7 +443,7 @@ static void DoSafariBattle(void) static void DoBattlePikeWildBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); StopPlayerAvatar(); gMain.savedCallback = CB2_EndWildBattle; @@ -479,7 +479,7 @@ static void DoBattlePyramidTrainerHillBattle(void) void StartWallyTutorialBattle(void) { CreateMaleMon(&gEnemyParty[0], SPECIES_RALTS, 5); - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_ReturnToFieldContinueScriptPlayMapMusic; gBattleTypeFlags = BATTLE_TYPE_WALLY_TUTORIAL; CreateBattleStartTask(B_TRANSITION_SLICE, 0); @@ -487,7 +487,7 @@ void StartWallyTutorialBattle(void) void BattleSetup_StartScriptedWildBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_EndScriptedWildBattle; gBattleTypeFlags = 0; CreateBattleStartTask(GetWildBattleTransition(), 0); @@ -499,7 +499,7 @@ void BattleSetup_StartScriptedWildBattle(void) void BattleSetup_StartLatiBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_EndScriptedWildBattle; gBattleTypeFlags = BATTLE_TYPE_LEGENDARY; CreateBattleStartTask(GetWildBattleTransition(), 0); @@ -511,7 +511,7 @@ void BattleSetup_StartLatiBattle(void) void BattleSetup_StartLegendaryBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_EndScriptedWildBattle; gBattleTypeFlags = BATTLE_TYPE_LEGENDARY; @@ -550,7 +550,7 @@ void BattleSetup_StartLegendaryBattle(void) void StartGroudonKyogreBattle(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_EndScriptedWildBattle; gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_KYOGRE_GROUDON; @@ -570,7 +570,7 @@ void StartRegiBattle(void) u8 transitionId; u16 species; - ScriptContext2_Enable(); + LockPlayerFieldControls(); gMain.savedCallback = CB2_EndScriptedWildBattle; gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI; @@ -1194,8 +1194,8 @@ void ConfigureAndSetUpOneTrainerBattle(u8 trainerObjEventId, const u8 *trainerSc gSelectedObjectEvent = trainerObjEventId; gSpecialVar_LastTalked = gObjectEvents[trainerObjEventId].localId; BattleSetup_ConfigureTrainerBattle(trainerScript + 1); - ScriptContext1_SetupScript(EventScript_StartTrainerApproach); - ScriptContext2_Enable(); + ScriptContext_SetupScript(EventScript_StartTrainerApproach); + LockPlayerFieldControls(); } void ConfigureTwoTrainersBattle(u8 trainerObjEventId, const u8 *trainerScript) @@ -1207,8 +1207,8 @@ void ConfigureTwoTrainersBattle(u8 trainerObjEventId, const u8 *trainerScript) void SetUpTwoTrainersBattle(void) { - ScriptContext1_SetupScript(EventScript_StartTrainerApproach); - ScriptContext2_Enable(); + ScriptContext_SetupScript(EventScript_StartTrainerApproach); + LockPlayerFieldControls(); } bool32 GetTrainerFlagFromScriptPointer(const u8 *data) @@ -1320,7 +1320,7 @@ void BattleSetup_StartTrainerBattle(void) else DoTrainerBattle(); - ScriptContext1_Stop(); + ScriptContext_Stop(); } static void CB2_EndTrainerBattle(void) @@ -1371,7 +1371,7 @@ void BattleSetup_StartRematchBattle(void) gBattleTypeFlags = BATTLE_TYPE_TRAINER; gMain.savedCallback = CB2_EndRematchBattle; DoTrainerBattle(); - ScriptContext1_Stop(); + ScriptContext_Stop(); } void ShowTrainerIntroSpeech(void) diff --git a/src/berry_crush.c b/src/berry_crush.c index c6b5023bbd8f..19c03391d3d7 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -1853,8 +1853,8 @@ static void Task_ShowRankings(u8 taskId) ClearWindowTilemap(tWindowId); RemoveWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); - ScriptContext2_Disable(); + ScriptContext_Enable(); + UnlockPlayerFieldControls(); tState = 0; return; } @@ -1865,7 +1865,7 @@ void ShowBerryCrushRankings(void) { u8 taskId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); taskId = CreateTask(Task_ShowRankings, 0); gTasks[taskId].tPressingSpeeds(0) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[0]; gTasks[taskId].tPressingSpeeds(1) = gSaveBlock2Ptr->berryCrush.pressingSpeeds[1]; diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index 876e6b4a7323..6b5d66d315c4 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -86,7 +86,7 @@ void DoBrailleDigEffect(void) DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_BRAILLE_DIG); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } bool8 CheckRelicanthWailord(void) @@ -152,7 +152,7 @@ static void Task_SealedChamberShakingEffect(u8 taskId) if (task->tShakeCounter == task->tNumShakes) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); InstallCameraPanAheadCallback(); } } @@ -213,7 +213,7 @@ static void DoBrailleRegirockEffect(void) DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } bool8 ShouldDoBrailleRegisteelEffect(void) @@ -252,7 +252,7 @@ static void DoBrailleRegisteelEffect(void) DrawWholeMapView(); PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } // theory: another commented out DoBrailleWait and Task_BrailleWait. diff --git a/src/cable_car.c b/src/cable_car.c index c81764728b42..562e9eceb758 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -245,7 +245,7 @@ static void Task_LoadCableCar(u8 taskId) void CableCar(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_LoadCableCar, 1); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB(0, 0, 0)); } diff --git a/src/cable_club.c b/src/cable_club.c index da32cee9cab6..913a1b72872d 100644 --- a/src/cable_club.c +++ b/src/cable_club.c @@ -486,7 +486,7 @@ static void FinishLinkup(u16 *linkupStatus, u32 taskId) { // Successful battle tower linkup ClearLinkPlayerCountWindow(gTasks[taskId].tWindowId); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } @@ -494,7 +494,7 @@ static void FinishLinkup(u16 *linkupStatus, u32 taskId) { // Successful linkup ClearLinkPlayerCountWindow(gTasks[taskId].tWindowId); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } @@ -531,7 +531,7 @@ static void Task_StopLinkup(u8 taskId) if (!gReceivedRemoteLinkPlayers) { ClearLinkPlayerCountWindow(gTasks[taskId].tWindowId); - EnableBothScriptContexts(); + ScriptContext_Enable(); RemoveWindow(gTasks[taskId].tWindowId); DestroyTask(taskId); } @@ -543,7 +543,7 @@ static void Task_LinkupFailed(u8 taskId) ClearLinkPlayerCountWindow(gTasks[taskId].tWindowId); StopFieldMessage(); RemoveWindow(gTasks[taskId].tWindowId); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } @@ -553,7 +553,7 @@ static void Task_LinkupConnectionError(u8 taskId) ClearLinkPlayerCountWindow(gTasks[taskId].tWindowId); RemoveWindow(gTasks[taskId].tWindowId); HideFieldMessageBox(); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } @@ -688,13 +688,13 @@ static void Task_ValidateMixingGameLanguage(u8 taskId) return; } } - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; case 1: if (!gReceivedRemoteLinkPlayers) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } break; @@ -1080,7 +1080,7 @@ static void Task_EnterCableClubSeat(u8 taskId) SetLinkWaitingForScript(); EraseFieldMessageBox(TRUE); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); break; } } @@ -1089,7 +1089,7 @@ void CreateTask_EnterCableClubSeat(TaskFunc followupFunc) { u8 taskId = CreateTask(Task_EnterCableClubSeat, 80); SetTaskFuncWithFollowupFunc(taskId, Task_EnterCableClubSeat, followupFunc); - ScriptContext1_Stop(); + ScriptContext_Stop(); } static void Task_StartWiredTrade(u8 taskId) @@ -1099,7 +1099,7 @@ static void Task_StartWiredTrade(u8 taskId) switch (task->tState) { case 0: - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); ClearLinkCallback_2(); task->tState++; @@ -1132,7 +1132,7 @@ static void Task_StartWirelessTrade(u8 taskId) switch (tState) { case 0: - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); ClearLinkRfuCallback(); tState++; @@ -1176,7 +1176,7 @@ static void CreateTask_StartWiredTrade(void) void Script_StartWiredTrade(void) { // CreateTask_StartWiredTrade(); - // ScriptContext1_Stop(); + // ScriptContext_Stop(); } void ColosseumPlayerSpotTriggered(void) @@ -1193,7 +1193,7 @@ void ColosseumPlayerSpotTriggered(void) static void CreateTask_EnterCableClubSeatNoFollowup(void) { u8 taskId = CreateTask(Task_EnterCableClubSeat, 80); - ScriptContext1_Stop(); + ScriptContext_Stop(); } void Script_ShowLinkTrainerCard(void) @@ -1257,7 +1257,7 @@ static void Task_WaitExitToScript(u8 taskId) { if (!gReceivedRemoteLinkPlayers) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } diff --git a/src/contest.c b/src/contest.c index 6dd2264d92de..b2c875a5833e 100644 --- a/src/contest.c +++ b/src/contest.c @@ -2753,8 +2753,8 @@ static void Task_ContestReturnToField(u8 taskId) static void FieldCB_ContestReturnToField(void) { - ScriptContext2_Disable(); - EnableBothScriptContexts(); + UnlockPlayerFieldControls(); + ScriptContext_Enable(); } static void TryPutPlayerLast(void) diff --git a/src/contest_util.c b/src/contest_util.c index 40ef7a939aa8..d44b47373ce7 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -2129,7 +2129,7 @@ static void Task_StartContest(u8 taskId) void StartContest(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_StartContest, 10); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } @@ -2150,7 +2150,7 @@ static void Task_StartShowContestResults(u8 taskId) void ShowContestResults(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_StartShowContestResults, 10); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } @@ -2163,7 +2163,7 @@ void GetContestPlayerId(void) void ContestLinkTransfer(u8 category) { u8 newTaskId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); newTaskId = CreateTask(Task_LinkContest_Init, 0); SetTaskFuncWithFollowupFunc(newTaskId, Task_LinkContest_Init, Task_StartCommunication); gTasks[newTaskId].data[9] = category; @@ -2265,8 +2265,8 @@ void Task_LinkContest_FinalizeConnection(u8 taskId) DestroyTask(taskId); SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, WARP_ID_NONE); - ScriptContext2_Disable(); - EnableBothScriptContexts(); + UnlockPlayerFieldControls(); + ScriptContext_Enable(); } } @@ -2281,8 +2281,8 @@ static void Task_LinkContest_WaitDisconnect(u8 taskId) if (!gReceivedRemoteLinkPlayers) { DestroyTask(taskId); - ScriptContext2_Disable(); - EnableBothScriptContexts(); + UnlockPlayerFieldControls(); + ScriptContext_Enable(); } } @@ -2726,7 +2726,7 @@ static void Task_LinkContestWaitForConnection(u8 taskId) default: if (IsLinkTaskFinished() == 1) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } break; diff --git a/src/daycare.c b/src/daycare.c index ebbab762ade7..19d5edbb2c40 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -1258,7 +1258,7 @@ static void Task_HandleDaycareLevelMenuInput(u8 taskId) ClearStdWindowAndFrame(gTasks[taskId].tWindowId, TRUE); RemoveWindow(gTasks[taskId].tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } else if (JOY_NEW(B_BUTTON)) { @@ -1267,7 +1267,7 @@ static void Task_HandleDaycareLevelMenuInput(u8 taskId) ClearStdWindowAndFrame(gTasks[taskId].tWindowId, TRUE); RemoveWindow(gTasks[taskId].tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } diff --git a/src/decoration.c b/src/decoration.c index eadca95b08b9..cc740f189ee9 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -563,7 +563,7 @@ static void AddDecorationActionsWindow(void) static void InitDecorationActionsWindow(void) { sDecorationActionsCursorPos = 0; - ScriptContext2_Enable(); + LockPlayerFieldControls(); AddDecorationActionsWindow(); PrintCurMainMenuDescription(); } @@ -670,7 +670,7 @@ static void DecorationMenuAction_Cancel(u8 taskId) RemoveDecorationWindow(WINDOW_MAIN_MENU); if (!sDecorationContext.isPlayerRoom) { - ScriptContext1_SetupScript(SecretBase_EventScript_PCCancel); + ScriptContext_SetupScript(SecretBase_EventScript_PCCancel); DestroyTask(taskId); } else @@ -1650,7 +1650,7 @@ static void PlaceDecoration(u8 taskId) { sCurDecorMapX = gTasks[taskId].tCursorX - MAP_OFFSET; sCurDecorMapY = gTasks[taskId].tCursorY - MAP_OFFSET; - ScriptContext1_SetupScript(SecretBase_EventScript_SetDecoration); + ScriptContext_SetupScript(SecretBase_EventScript_SetDecoration); } gSprites[sDecor_CameraSpriteObjectIdx1].y += 2; @@ -1722,7 +1722,7 @@ static void c1_overworld_prev_quest(u8 taskId) switch (gTasks[taskId].tState) { case 0: - ScriptContext2_Enable(); + LockPlayerFieldControls(); if (!gPaletteFade.active) { WarpToInitialPosition(taskId); @@ -1749,11 +1749,11 @@ static void Task_InitDecorationItemsWindow(u8 taskId) tState++; break; case 1: - ScriptContext1_SetupScript(SecretBase_EventScript_InitDecorations); + ScriptContext_SetupScript(SecretBase_EventScript_InitDecorations); tState++; break; case 2: - ScriptContext2_Enable(); + LockPlayerFieldControls(); tState++; break; case 3: @@ -1767,7 +1767,7 @@ static void FieldCB_InitDecorationItemsWindow(void) { u8 taskId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeInFromBlack(); taskId = CreateTask(Task_InitDecorationItemsWindow, 8); AddDecorationItemsWindow(taskId); @@ -2246,13 +2246,13 @@ static void Task_PutAwayDecoration(u8 taskId) case 1: if (!gPaletteFade.active) { DrawWholeMapView(); - ScriptContext1_SetupScript(SecretBase_EventScript_PutAwayDecoration); + ScriptContext_SetupScript(SecretBase_EventScript_PutAwayDecoration); ClearDialogWindowAndFrame(0, TRUE); gTasks[taskId].tState = 2; } break; case 2: - ScriptContext2_Enable(); + LockPlayerFieldControls(); IdentifyOwnedDecorationsCurrentlyInUseInternal(taskId); FadeInFromBlack(); gTasks[taskId].tState = 3; @@ -2645,11 +2645,11 @@ static void Task_ReinitializeDecorationMenuHandler(u8 taskId) tState++; break; case 1: - ScriptContext1_SetupScript(SecretBase_EventScript_InitDecorations); + ScriptContext_SetupScript(SecretBase_EventScript_InitDecorations); tState++; break; case 2: - ScriptContext2_Enable(); + LockPlayerFieldControls(); tState++; break; case 3: diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index e250000a7c3f..11bf12925b6f 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -2988,7 +2988,7 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId) { RemoveWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } break; } diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 2e9d55d16f53..d714fb95054e 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -471,7 +471,7 @@ static void VBlankCB_EggHatch(void) void EggHatch(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_EggHatch, 10); FadeScreen(FADE_TO_BLACK, 0); } diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index ad02b00c1d6c..2ba4c29cd03d 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -233,7 +233,7 @@ static bool8 TryStartInteractionScript(struct MapPosition *position, u16 metatil && script != EventScript_PC) PlaySE(SE_SELECT); - ScriptContext1_SetupScript(script); + ScriptContext_SetupScript(script); return TRUE; } @@ -464,7 +464,7 @@ static bool32 TrySetupDiveDownScript(void) { if (FlagGet(FLAG_BADGE07_GET) && TrySetDiveWarp() == 2) { - ScriptContext1_SetupScript(EventScript_UseDive); + ScriptContext_SetupScript(EventScript_UseDive); return TRUE; } return FALSE; @@ -474,7 +474,7 @@ static bool32 TrySetupDiveEmergeScript(void) { if (FlagGet(FLAG_BADGE07_GET) && gMapHeader.mapType == MAP_TYPE_UNDERWATER && TrySetDiveWarp() == 1) { - ScriptContext1_SetupScript(EventScript_UseDiveUnderwater); + ScriptContext_SetupScript(EventScript_UseDiveUnderwater); return TRUE; } return FALSE; @@ -501,7 +501,7 @@ static bool8 TryStartCoordEventScript(struct MapPosition *position) if (script == NULL) return FALSE; - ScriptContext1_SetupScript(script); + ScriptContext_SetupScript(script); return TRUE; } @@ -511,12 +511,12 @@ static bool8 TryStartMiscWalkingScripts(u16 metatileBehavior) if (MetatileBehavior_IsCrackedFloorHole(metatileBehavior)) { - ScriptContext1_SetupScript(EventScript_FallDownHole); + ScriptContext_SetupScript(EventScript_FallDownHole); return TRUE; } else if (MetatileBehavior_IsBattlePyramidWarp(metatileBehavior)) { - ScriptContext1_SetupScript(BattlePyramid_WarpToNextFloor); + ScriptContext_SetupScript(BattlePyramid_WarpToNextFloor); return TRUE; } else if (MetatileBehavior_IsSecretBaseGlitterMat(metatileBehavior) == TRUE) @@ -548,48 +548,48 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior) { if (UpdatePoisonStepCounter() == TRUE) { - ScriptContext1_SetupScript(EventScript_FieldPoison); + ScriptContext_SetupScript(EventScript_FieldPoison); return TRUE; } if (ShouldEggHatch()) { IncrementGameStat(GAME_STAT_HATCHED_EGGS); - ScriptContext1_SetupScript(EventScript_EggHatch); + ScriptContext_SetupScript(EventScript_EggHatch); return TRUE; } if (AbnormalWeatherHasExpired() == TRUE) { - ScriptContext1_SetupScript(AbnormalWeather_EventScript_EndEventAndCleanup_1); + ScriptContext_SetupScript(AbnormalWeather_EventScript_EndEventAndCleanup_1); return TRUE; } if (ShouldDoBrailleRegicePuzzle() == TRUE) { - ScriptContext1_SetupScript(IslandCave_EventScript_OpenRegiEntrance); + ScriptContext_SetupScript(IslandCave_EventScript_OpenRegiEntrance); return TRUE; } if (ShouldDoWallyCall() == TRUE) { - ScriptContext1_SetupScript(MauvilleCity_EventScript_RegisterWallyCall); + ScriptContext_SetupScript(MauvilleCity_EventScript_RegisterWallyCall); return TRUE; } if (ShouldDoScottFortreeCall() == TRUE) { - ScriptContext1_SetupScript(Route119_EventScript_ScottWonAtFortreeGymCall); + ScriptContext_SetupScript(Route119_EventScript_ScottWonAtFortreeGymCall); return TRUE; } if (ShouldDoScottBattleFrontierCall() == TRUE) { - ScriptContext1_SetupScript(LittlerootTown_ProfessorBirchsLab_EventScript_ScottAboardSSTidalCall); + ScriptContext_SetupScript(LittlerootTown_ProfessorBirchsLab_EventScript_ScottAboardSSTidalCall); return TRUE; } if (ShouldDoRoxanneCall() == TRUE) { - ScriptContext1_SetupScript(RustboroCity_Gym_EventScript_RegisterRoxanne); + ScriptContext_SetupScript(RustboroCity_Gym_EventScript_RegisterRoxanne); return TRUE; } if (ShouldDoRivalRayquazaCall() == TRUE) { - ScriptContext1_SetupScript(MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall); + ScriptContext_SetupScript(MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall); return TRUE; } } @@ -598,7 +598,7 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior) return TRUE; if (CountSSTidalStep(1) == TRUE) { - ScriptContext1_SetupScript(SSTidalCorridor_EventScript_ReachedStepCount); + ScriptContext_SetupScript(SSTidalCorridor_EventScript_ReachedStepCount); return TRUE; } if (TryStartMatchCall()) @@ -735,7 +735,7 @@ static bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileB } if (MetatileBehavior_IsMtPyreHole(metatileBehavior) == TRUE) { - ScriptContext1_SetupScript(EventScript_FallDownHoleMtPyre); + ScriptContext_SetupScript(EventScript_FallDownHoleMtPyre); return TRUE; } if (MetatileBehavior_IsMossdeepGymWarp(metatileBehavior) == TRUE) @@ -886,7 +886,7 @@ static u8 *TryRunCoordEventScript(struct CoordEvent *coordEvent) } if (coordEvent->trigger == 0) { - ScriptContext2_RunNewScript(coordEvent->script); + RunScriptImmediately(coordEvent->script); return NULL; } if (VarGet(coordEvent->trigger) == (u8)coordEvent->index) diff --git a/src/field_effect.c b/src/field_effect.c index 0bf2046312ab..ba917b56543e 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -1337,7 +1337,7 @@ static void FieldCallback_UseFly(void) { FadeInFromBlack(); CreateTask(Task_UseFly, 0); - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); gFieldCallback = NULL; } @@ -1378,7 +1378,7 @@ static void FieldCallback_FlyIntoMap(void) { ObjectEventTurn(&gObjectEvents[gPlayerAvatar.objectEventId], DIR_WEST); } - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); gFieldCallback = NULL; } @@ -1398,7 +1398,7 @@ static void Task_FlyIntoMap(u8 taskId) } if (!FieldEffectActiveListContains(FLDEFF_FLY_IN)) { - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); UnfreezeObjectEvents(); DestroyTask(taskId); } @@ -1417,7 +1417,7 @@ void FieldCB_FallWarpExit(void) { Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); CreateTask(Task_FallWarpFieldEffect, 0); gFieldCallback = NULL; @@ -1531,7 +1531,7 @@ static bool8 FallWarpEffect_CameraShake(struct Task *task) static bool8 FallWarpEffect_End(struct Task *task) { gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); CameraObjectReset1(); UnfreezeObjectEvents(); InstallCameraPanAheadCallback(); @@ -1683,7 +1683,7 @@ static void FieldCallback_EscalatorWarpIn(void) { Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_EscalatorWarpIn, 0); gFieldCallback = NULL; } @@ -1804,7 +1804,7 @@ static bool8 EscalatorWarpIn_End(struct Task *task) if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { CameraObjectReset1(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); ObjectEventSetHeldMovement(objectEvent, GetWalkNormalMovementAction(DIR_EAST)); DestroyTask(FindTaskIdByFunc(Task_EscalatorWarpIn)); } @@ -1832,7 +1832,7 @@ static void Task_UseWaterfall(u8 taskId) static bool8 WaterfallFieldEffect_Init(struct Task *task, struct ObjectEvent *objectEvent) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gPlayerAvatar.preventStep = TRUE; task->tState++; return FALSE; @@ -1840,7 +1840,7 @@ static bool8 WaterfallFieldEffect_Init(struct Task *task, struct ObjectEvent *ob static bool8 WaterfallFieldEffect_ShowMon(struct Task *task, struct ObjectEvent *objectEvent) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); if (!ObjectEventIsMovementOverridden(objectEvent)) { ObjectEventClearHeldMovementIfFinished(objectEvent); @@ -1880,7 +1880,7 @@ static bool8 WaterfallFieldEffect_ContinueRideOrEnd(struct Task *task, struct Ob return TRUE; } - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); gPlayerAvatar.preventStep = FALSE; DestroyTask(FindTaskIdByFunc(Task_UseWaterfall)); FieldEffectActiveListRemove(FLDEFF_USE_WATERFALL); @@ -1914,7 +1914,7 @@ static bool8 DiveFieldEffect_Init(struct Task *task) static bool8 DiveFieldEffect_ShowMon(struct Task *task) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gFieldEffectArguments[0] = task->data[15]; FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT); task->data[0]++; @@ -2052,7 +2052,7 @@ static void FieldCB_LavaridgeGymB1FWarpExit(void) { Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); gFieldCallback = NULL; CreateTask(Task_LavaridgeGymB1FWarpExit, 0); } @@ -2105,7 +2105,7 @@ static bool8 LavaridgeGymB1FWarpExitEffect_End(struct Task *task, struct ObjectE if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); UnfreezeObjectEvents(); DestroyTask(FindTaskIdByFunc(Task_LavaridgeGymB1FWarpExit)); } @@ -2229,7 +2229,7 @@ void SpriteCB_AshPuff(struct Sprite *sprite) void StartEscapeRopeFieldEffect(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); CreateTask(Task_EscapeRopeWarpOut, 80); } @@ -2286,7 +2286,7 @@ static void FieldCallback_EscapeRopeWarpIn(void) { Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); gFieldCallback = NULL; gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE; @@ -2320,7 +2320,7 @@ static void EscapeRopeWarpInEffect_Spin(struct Task *task) if (task->tNumTurns >= 32 && task->tStartDir == GetPlayerFacingDirection()) { objectEvent->invisible = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); UnfreezeObjectEvents(); DestroyTask(FindTaskIdByFunc(Task_EscapeRopeWarpIn)); return; @@ -2360,7 +2360,7 @@ static void Task_TeleportWarpOut(u8 taskId) static void TeleportWarpOutFieldEffect_Init(struct Task *task) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); CameraObjectReset2(); task->data[15] = GetPlayerFacingDirection(); @@ -2440,7 +2440,7 @@ static void FieldCallback_TeleportWarpIn(void) { Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); gFieldCallback = NULL; gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE; @@ -2527,7 +2527,7 @@ static void TeleportWarpInFieldEffect_SpinGround(struct Task *task) task->data[1] = 8; if ((++task->data[2]) > 4 && task->data[14] == objectEvent->facingDirection) { - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); CameraObjectReset1(); UnfreezeObjectEvents(); DestroyTask(FindTaskIdByFunc(Task_TeleportWarpIn)); @@ -2993,7 +2993,7 @@ static void Task_SurfFieldEffect(u8 taskId) static void SurfFieldEffect_Init(struct Task *task) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); gPlayerAvatar.preventStep = TRUE; SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_SURFING); @@ -3054,7 +3054,7 @@ static void SurfFieldEffect_End(struct Task *task) ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->movementDirection)); SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_PLAYER_AND_MON); UnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); FieldEffectActiveListRemove(FLDEFF_USE_SURF); DestroyTask(FindTaskIdByFunc(Task_SurfFieldEffect)); } diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index bcfeb4429be6..5f4573c533b4 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1468,7 +1468,7 @@ static void Task_PushBoulder(u8 taskId) static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gPlayerAvatar.preventStep = TRUE; task->tState++; return FALSE; @@ -1508,7 +1508,7 @@ static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *player, stru ObjectEventClearHeldMovementIfFinished(player); ObjectEventClearHeldMovementIfFinished(boulder); gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(FindTaskIdByFunc(Task_PushBoulder)); } return FALSE; @@ -1570,7 +1570,7 @@ static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *task, struct Objec task->data[0]++; task->data[1] = objectEvent->movementDirection; gPlayerAvatar.preventStep = TRUE; - ScriptContext2_Enable(); + LockPlayerFieldControls(); PlaySE(SE_WARP_IN); return TRUE; } @@ -1616,7 +1616,7 @@ static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *task, struct Objec if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { ObjectEventSetHeldMovement(objectEvent, GetWalkSlowMovementAction(GetOppositeDirection(task->data[1]))); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); gPlayerAvatar.preventStep = FALSE; DestroyTask(FindTaskIdByFunc(PlayerAvatar_DoSecretBaseMatSpin)); } @@ -1627,7 +1627,7 @@ static void CreateStopSurfingTask(u8 direction) { u8 taskId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_ClearSavedMusic(); Overworld_ChangeMusicToDefault(); gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_SURFING; @@ -1661,7 +1661,7 @@ static void Task_WaitStopSurfing(u8 taskId) ObjectEventSetGraphicsId(playerObjEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_NORMAL)); ObjectEventSetHeldMovement(playerObjEvent, GetFaceDirectionMovementAction(playerObjEvent->facingDirection)); gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroySprite(&gSprites[playerObjEvent->fieldEffectSpriteId]); DestroyTask(taskId); } @@ -1720,7 +1720,7 @@ static void Task_Fishing(u8 taskId) static bool8 Fishing_Init(struct Task *task) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gPlayerAvatar.preventStep = TRUE; task->tStep++; return FALSE; @@ -1945,7 +1945,7 @@ static bool8 Fishing_StartEncounter(struct Task *task) if (task->tFrameCounter != 0) { gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); FishingWildEncounter(task->tFishingRod); RecordFishingAttemptForTV(TRUE); DestroyTask(FindTaskIdByFunc(Task_Fishing)); @@ -2004,7 +2004,7 @@ static bool8 Fishing_EndNoMon(struct Task *task) if (!IsTextPrinterActive(0)) { gPlayerAvatar.preventStep = FALSE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); UnfreezeObjectEvents(); ClearDialogWindowAndFrame(0, TRUE); RecordFishingAttemptForTV(FALSE); diff --git a/src/field_poison.c b/src/field_poison.c index a74057f21677..e29e1ac988cd 100644 --- a/src/field_poison.c +++ b/src/field_poison.c @@ -98,7 +98,7 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId) { gSpecialVar_Result = FLDPSN_NO_WHITEOUT; } - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; } @@ -110,7 +110,7 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId) void TryFieldPoisonWhiteOut(void) { CreateTask(Task_TryFieldPoisonWhiteOut, 80); - ScriptContext1_Stop(); + ScriptContext_Stop(); } s32 DoPoisonFieldEffect(void) diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 77978c269035..948d812e816e 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -124,7 +124,7 @@ static void Task_WaitForUnionRoomFade(u8 taskId) void FieldCB_ContinueScriptUnionRoom(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); FadeInFromBlack(); CreateTask(Task_WaitForUnionRoomFade, 10); @@ -135,13 +135,13 @@ static void Task_WaitForFadeAndEnableScriptCtx(u8 taskID) if (WaitForWeatherFadeIn() == TRUE) { DestroyTask(taskID); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } void FieldCB_ContinueScriptHandleMusic(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); FadeInFromBlack(); CreateTask(Task_WaitForFadeAndEnableScriptCtx, 10); @@ -149,7 +149,7 @@ void FieldCB_ContinueScriptHandleMusic(void) void FieldCB_ContinueScript(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeInFromBlack(); CreateTask(Task_WaitForFadeAndEnableScriptCtx, 10); } @@ -174,7 +174,7 @@ static void Task_ReturnToFieldCableLink(u8 taskId) case 2: if (WaitForWeatherFadeIn() == TRUE) { - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } break; @@ -183,7 +183,7 @@ static void Task_ReturnToFieldCableLink(u8 taskId) void FieldCB_ReturnToFieldCableLink(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); FillPalBufferBlack(); CreateTask(Task_ReturnToFieldCableLink, 10); @@ -215,7 +215,7 @@ static void Task_ReturnToFieldWirelessLink(u8 taskId) if (WaitForWeatherFadeIn() == TRUE) { StartSendingKeysToLink(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } break; @@ -239,7 +239,7 @@ void Task_ReturnToFieldRecordMixing(u8 taskId) case 2: StartSendingKeysToLink(); ResetAllMultiplayerState(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); break; } @@ -247,7 +247,7 @@ void Task_ReturnToFieldRecordMixing(u8 taskId) void FieldCB_ReturnToFieldWirelessLink(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); FillPalBufferBlack(); CreateTask(Task_ReturnToFieldWirelessLink, 10); @@ -275,7 +275,7 @@ void FieldCB_DefaultWarpExit(void) Overworld_PlaySpecialMapMusic(); WarpFadeInScreen(); SetUpWarpExitTask(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void FieldCB_WarpExitFadeFromWhite(void) @@ -283,7 +283,7 @@ void FieldCB_WarpExitFadeFromWhite(void) Overworld_PlaySpecialMapMusic(); FadeInFromWhite(); SetUpWarpExitTask(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void FieldCB_WarpExitFadeFromBlack(void) @@ -292,7 +292,7 @@ void FieldCB_WarpExitFadeFromBlack(void) Overworld_PlaySpecialMapMusic(); FadeInFromBlack(); SetUpWarpExitTask(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static void FieldCB_SpinEnterWarp(void) @@ -301,7 +301,7 @@ static void FieldCB_SpinEnterWarp(void) WarpFadeInScreen(); PlaySE(SE_WARP_OUT); CreateTask(Task_SpinEnterWarp, 10); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static void FieldCB_MossdeepGymWarpExit(void) @@ -310,7 +310,7 @@ static void FieldCB_MossdeepGymWarpExit(void) WarpFadeInScreen(); PlaySE(SE_WARP_OUT); CreateTask(Task_ExitNonDoor, 10); - ScriptContext2_Enable(); + LockPlayerFieldControls(); SetObjectEventLoadFlag((~SKIP_OBJECT_EVENT_LOAD) & 0xF); } @@ -357,7 +357,7 @@ static void Task_ExitDoor(u8 taskId) } break; case 4: - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); break; } @@ -395,7 +395,7 @@ static void Task_ExitNonAnimDoor(u8 taskId) } break; case 3: - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); break; } @@ -407,14 +407,14 @@ static void Task_ExitNonDoor(u8 taskId) { case 0: FreezeObjectEvents(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); gTasks[taskId].tState++; break; case 1: if (WaitForWeatherFadeIn()) { UnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } break; @@ -434,7 +434,7 @@ void ReturnToFieldOpenStartMenu(void) { FadeInFromBlack(); CreateTask(Task_WaitForFadeShowStartMenu, 0x50); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } bool8 FieldCB_ReturnToFieldOpenStartMenu(void) @@ -447,7 +447,7 @@ static void Task_ReturnToFieldNoScript(u8 taskId) { if (WaitForWeatherFadeIn() == 1) { - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); ScriptUnfreezeObjectEvents(); } @@ -455,14 +455,14 @@ static void Task_ReturnToFieldNoScript(u8 taskId) void FieldCB_ReturnToFieldNoScript(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeInFromBlack(); CreateTask(Task_ReturnToFieldNoScript, 10); } void FieldCB_ReturnToFieldNoScriptCheckMusic(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); FadeInFromBlack(); CreateTask(Task_ReturnToFieldNoScript, 10); @@ -483,7 +483,7 @@ static bool32 WaitForWeatherFadeIn(void) void DoWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); @@ -494,7 +494,7 @@ void DoWarp(void) void DoDiveWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); @@ -504,7 +504,7 @@ void DoDiveWarp(void) void DoWhiteFadeWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); FadeScreen(FADE_TO_WHITE, 8); PlayRainStoppingSoundEffect(); @@ -514,7 +514,7 @@ void DoWhiteFadeWarp(void) void DoDoorWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gFieldCallback = FieldCB_DefaultWarpExit; CreateTask(Task_DoDoorWarp, 10); } @@ -527,19 +527,19 @@ void DoFallWarp(void) void DoEscalatorWarp(u8 metatileBehavior) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); StartEscalatorWarp(metatileBehavior, 10); } void DoLavaridgeGymB1FWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); StartLavaridgeGymB1FWarp(10); } void DoLavaridgeGym1FWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); StartLavaridgeGym1FWarp(10); } @@ -548,7 +548,7 @@ void DoLavaridgeGym1FWarp(void) // Used by teleporting tiles, e.g. in Aqua Hideout (For the move Teleport see FldEff_TeleportWarpOut) void DoTeleportTileWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); PlaySE(SE_WARP_IN); @@ -559,7 +559,7 @@ void DoTeleportTileWarp(void) void DoMossdeepGymWarp(void) { SetObjectEventLoadFlag(SKIP_OBJECT_EVENT_LOAD); - ScriptContext2_Enable(); + LockPlayerFieldControls(); SaveObjectEvents(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); @@ -570,7 +570,7 @@ void DoMossdeepGymWarp(void) void DoPortholeWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); WarpFadeOutScreen(); CreateTask(Task_WarpAndLoadMap, 10); gFieldCallback = FieldCB_ShowPortholeView; @@ -583,7 +583,7 @@ static void Task_DoCableClubWarp(u8 taskId) switch (task->tState) { case 0: - ScriptContext2_Enable(); + LockPlayerFieldControls(); task->tState++; break; case 1: @@ -600,7 +600,7 @@ static void Task_DoCableClubWarp(u8 taskId) void DoCableClubWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); PlaySE(SE_EXIT); @@ -651,7 +651,7 @@ static void Task_WarpAndLoadMap(u8 taskId) { case 0: FreezeObjectEvents(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); task->tState++; break; case 1: @@ -735,7 +735,7 @@ static void Task_DoContestHallWarp(u8 taskId) { case 0: FreezeObjectEvents(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); task->tState++; break; case 1: @@ -754,7 +754,7 @@ static void Task_DoContestHallWarp(u8 taskId) void DoContestHallWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); TryFadeOutOldMapMusic(); WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); @@ -916,7 +916,7 @@ static void Task_WaitForFlashUpdate(u8 taskId) { if (!FuncIsActiveTask(UpdateFlashLevelEffect)) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } @@ -979,7 +979,7 @@ void AnimateFlash(u8 newFlashLevel) fullBrightness = TRUE; StartUpdateFlashLevelEffect(DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelToRadius[curFlashLevel], sFlashLevelToRadius[newFlashLevel], fullBrightness, 1); StartWaitForFlashUpdate(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void WriteFlashScanlineEffectBuffer(u8 flashLevel) @@ -1003,7 +1003,7 @@ static void Task_SpinEnterWarp(u8 taskId) { case 0: FreezeObjectEvents(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); DoPlayerSpinEntrance(); gTasks[taskId].tState++; break; @@ -1011,7 +1011,7 @@ static void Task_SpinEnterWarp(u8 taskId) if (WaitForWeatherFadeIn() && IsPlayerSpinEntranceActive() != TRUE) { UnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } break; @@ -1026,7 +1026,7 @@ static void Task_SpinExitWarp(u8 taskId) { case 0: FreezeObjectEvents(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); PlaySE(SE_WARP_IN); DoPlayerSpinExit(); task->tState++; @@ -1054,7 +1054,7 @@ static void Task_SpinExitWarp(u8 taskId) // DoTeleportTileWarp is used instead void DoSpinEnterWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_WarpAndLoadMap, 10); gFieldCallback = FieldCB_SpinEnterWarp; } @@ -1063,7 +1063,7 @@ void DoSpinEnterWarp(void) // Player exits current map by spinning up offscreen, enters new map with a fade in void DoSpinExitWarp(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); gFieldCallback = FieldCB_DefaultWarpExit; CreateTask(Task_SpinExitWarp, 10); } @@ -1152,7 +1152,7 @@ static void Task_OrbEffect(u8 taskId) case 2: if (!FuncIsActiveTask(UpdateOrbFlashEffect)) { - EnableBothScriptContexts(); + ScriptContext_Enable(); tState = 3; } break; @@ -1200,7 +1200,7 @@ static void Task_OrbEffect(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, tBldAlpha); SetGpuReg(REG_OFFSET_WININ, tWinIn); SetGpuReg(REG_OFFSET_WINOUT, tWinOut); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; } @@ -1263,6 +1263,6 @@ static void Task_EnableScriptAfterMusicFade(u8 taskId) if (BGMusicStopped() == TRUE) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } diff --git a/src/field_special_scene.c b/src/field_special_scene.c index 7493467288ee..7c98703c6b36 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -251,7 +251,7 @@ static void Task_HandleTruckSequence(u8 taskId) DrawWholeMapView(); PlaySE(SE_TRUCK_DOOR); DestroyTask(taskId); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } break; } @@ -263,7 +263,7 @@ void ExecuteTruckSequence(void) MapGridSetMetatileIdAt(4 + MAP_OFFSET, 2 + MAP_OFFSET, METATILE_InsideOfTruck_DoorClosedFloor_Mid); MapGridSetMetatileIdAt(4 + MAP_OFFSET, 3 + MAP_OFFSET, METATILE_InsideOfTruck_DoorClosedFloor_Bottom); DrawWholeMapView(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); CpuFastFill(0, gPlttBufferFaded, 0x400); CreateTask(Task_HandleTruckSequence, 0xA); } @@ -371,7 +371,7 @@ void FieldCB_ShowPortholeView(void) gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE; FadeInFromBlack(); CreateTask(Task_HandlePorthole, 80); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void LookThroughPorthole(void) diff --git a/src/field_specials.c b/src/field_specials.c index 2739565641e4..7c226e7a39f8 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -132,14 +132,14 @@ static void BufferFanClubTrainerName_(struct LinkBattleRecords *, u8, u8); void Special_ShowDiploma(void) { SetMainCallback2(CB2_ShowDiploma); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void Special_ViewWallClock(void) { gMain.savedCallback = CB2_ReturnToField; SetMainCallback2(CB2_ViewWallClock); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void ResetCyclingRoadChallengeData(void) @@ -799,7 +799,7 @@ static void Task_PetalburgGymSlideOpenRoomDoors(u8 taskId) if ((++sSlidingDoorFrame) == ARRAY_COUNT(sPetalburgGymSlidingDoorMetatiles)) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } else @@ -1459,7 +1459,7 @@ static void Task_ShakeCamera(u8 taskId) static void StopCameraShake(u8 taskId) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } #undef horizontalPan @@ -1814,7 +1814,7 @@ static void Task_MoveElevator(u8 taskId) { PlaySE(SE_DING_DONG); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); InstallCameraPanAheadCallback(); } } @@ -2476,7 +2476,7 @@ static void Task_ShowScrollableMultichoice(u8 taskId) struct WindowTemplate template; struct Task *task = &gTasks[taskId]; - ScriptContext2_Enable(); + LockPlayerFieldControls(); sScrollableMultichoice_ScrollOffset = 0; sScrollableMultichoice_ItemSpriteId = MAX_SPRITES; FillFrontierExchangeCornerWindowAndItemIcon(task->tScrollMultiId, 0); @@ -2591,7 +2591,7 @@ static void ScrollableMultichoice_ProcessInput(u8 taskId) // Handle selection while keeping the menu open ScrollableMultichoice_RemoveScrollArrows(taskId); task->func = Task_ScrollableMultichoice_WaitReturnToList; - EnableBothScriptContexts(); + ScriptContext_Enable(); } break; } @@ -2611,7 +2611,7 @@ static void CloseScrollableMultichoice(u8 taskId) CopyWindowToVram(task->tWindowId, COPYWIN_GFX); RemoveWindow(task->tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } // Never run, tKeepOpenAfterSelect is FALSE for all scrollable multichoices. @@ -2634,14 +2634,14 @@ void ScrollableMultichoice_TryReturnToList(void) { u8 taskId = FindTaskIdByFunc(Task_ScrollableMultichoice_WaitReturnToList); if (taskId == TASK_NONE) - EnableBothScriptContexts(); + ScriptContext_Enable(); else gTasks[taskId].tKeepOpenAfterSelect++; // Return to list } static void Task_ScrollableMultichoice_ReturnToList(u8 taskId) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); ScrollableMultichoice_UpdateScrollArrows(taskId); gTasks[taskId].func = ScrollableMultichoice_ProcessInput; } @@ -3228,7 +3228,7 @@ static void Task_DeoxysRockInteraction(u8 taskId) if (FlagGet(FLAG_DEOXYS_ROCK_COMPLETE) == TRUE) { gSpecialVar_Result = 3; - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } else @@ -3249,7 +3249,7 @@ static void Task_DeoxysRockInteraction(u8 taskId) { FlagSet(FLAG_DEOXYS_ROCK_COMPLETE); gSpecialVar_Result = 2; - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } else @@ -3294,7 +3294,7 @@ static void WaitForDeoxysRockMovement(u8 taskId) { if (FieldEffectActiveListContains(FLDEFF_MOVE_DEOXYS_ROCK) == FALSE) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } @@ -3700,7 +3700,7 @@ static void Task_LinkRetireStatusWithBattleTowerPartner(u8 taskId) SetCloseLinkCallback(); gBattleTypeFlags = sBattleTowerMultiBattleTypeFlags; - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; } @@ -3786,7 +3786,7 @@ static void Task_CloseBattlePikeCurtain(u8 taskId) if (tCurrentFrame == 3) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } } diff --git a/src/field_tasks.c b/src/field_tasks.c index 8e8875993d0e..099014a4d42c 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -166,7 +166,7 @@ static void Task_RunTimeBasedEvents(u8 taskId) { s16 *data = gTasks[taskId].data; - if (!ScriptContext2_IsEnabled()) + if (!ArePlayerFieldControlsLocked()) { RunTimeBasedEvents(data); UpdateAmbientCry(&tAmbientCryState, &tAmbientCryDelay); diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 6df10f3a26c6..820628ff8390 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -339,7 +339,7 @@ static void UpdateDroughtBlend(u8 taskId) task->tState++; break; case 4: - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; } diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index f546cbc50d9f..0fd9263e513b 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -294,7 +294,7 @@ bool8 FldEff_UseCutOnGrass(void) static void FieldCallback_CutTree(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(EventScript_UseCut); + ScriptContext_SetupScript(EventScript_UseCut); } bool8 FldEff_UseCutOnTree(void) @@ -583,10 +583,10 @@ static void CutGrassSpriteCallbackEnd(struct Sprite *sprite) FieldEffectStop(&gSprites[sCutGrassSpriteArrayPtr[0]], FLDEFF_CUT_GRASS); FREE_AND_SET_NULL(sCutGrassSpriteArrayPtr); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); if (IsMewPlayingHideAndSeek() == TRUE) - ScriptContext1_SetupScript(FarawayIsland_Interior_EventScript_HideMewWhenGrassCut); + ScriptContext_SetupScript(FarawayIsland_Interior_EventScript_HideMewWhenGrassCut); } void FixLongGrassMetatilesWindowTop(s16 x, s16 y) @@ -643,5 +643,5 @@ static void StartCutTreeFieldEffect(void) { PlaySE(SE_M_CUT); FieldEffectActiveListRemove(FLDEFF_USE_CUT_ON_TREE); - EnableBothScriptContexts(); + ScriptContext_Enable(); } diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c index a303b8423bce..abdca2a88a70 100644 --- a/src/fldeff_flash.c +++ b/src/fldeff_flash.c @@ -102,7 +102,7 @@ static void FldEff_UseFlash(void) { PlaySE(SE_M_REFLECT); FlagSet(FLAG_SYS_USE_FLASH); - ScriptContext1_SetupScript(EventScript_UseFlash); + ScriptContext_SetupScript(EventScript_UseFlash); } static void CB2_ChangeMapMain(void) diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c index fe14d36425cc..c01e88b5122e 100644 --- a/src/fldeff_misc.c +++ b/src/fldeff_misc.c @@ -586,7 +586,7 @@ bool8 SetUpFieldMove_SecretPower(void) static void FieldCallback_SecretBaseCave(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(SecretBase_EventScript_CaveUseSecretPower); + ScriptContext_SetupScript(SecretBase_EventScript_CaveUseSecretPower); } bool8 FldEff_UseSecretPowerCave(void) @@ -640,13 +640,13 @@ static void SpriteCB_CaveEntranceOpen(struct Sprite *sprite) static void SpriteCB_CaveEntranceEnd(struct Sprite *sprite) { FieldEffectStop(sprite, FLDEFF_SECRET_POWER_CAVE); - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void FieldCallback_SecretBaseTree(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(SecretBase_EventScript_TreeUseSecretPower); + ScriptContext_SetupScript(SecretBase_EventScript_TreeUseSecretPower); } bool8 FldEff_UseSecretPowerTree(void) @@ -714,13 +714,13 @@ static void SpriteCB_TreeEntranceOpen(struct Sprite *sprite) static void SpriteCB_TreeEntranceEnd(struct Sprite *sprite) { FieldEffectStop(sprite, FLDEFF_SECRET_POWER_TREE); - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void FieldCallback_SecretBaseShrub(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(SecretBase_EventScript_ShrubUseSecretPower); + ScriptContext_SetupScript(SecretBase_EventScript_ShrubUseSecretPower); } bool8 FldEff_UseSecretPowerShrub(void) @@ -778,7 +778,7 @@ static void SpriteCB_ShrubEntranceOpen(struct Sprite *sprite) static void SpriteCB_ShrubEntranceEnd(struct Sprite *sprite) { FieldEffectStop(sprite, FLDEFF_SECRET_POWER_SHRUB); - EnableBothScriptContexts(); + ScriptContext_Enable(); } #define tX data[0] @@ -820,7 +820,7 @@ static void Task_SecretBasePCTurnOn(u8 taskId) MapGridSetMetatileIdAt(tX, tY, METATILE_SecretBase_PC_On); CurrentMapDrawMetatileAt(tX, tY); FieldEffectActiveListRemove(FLDEFF_PCTURN_ON); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); return; } @@ -1034,7 +1034,7 @@ bool8 FldEff_SandPillar(void) { s16 x, y; - ScriptContext2_Enable(); + LockPlayerFieldControls(); GetXYCoordsOneStepInFrontOfPlayer(&x, &y); gFieldEffectArguments[5] = x; @@ -1113,7 +1113,7 @@ static void SpriteCB_SandPillar_BreakBase(struct Sprite *sprite) static void SpriteCB_SandPillar_End(struct Sprite *sprite) { FieldEffectStop(sprite, FLDEFF_SAND_PILLAR); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void InteractWithShieldOrTVDecoration(void) @@ -1279,7 +1279,7 @@ static void Task_WateringBerryTreeAnim_End(u8 taskId) { SetPlayerAvatarTransitionFlags(GetPlayerAvatarFlags()); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void DoWateringBerryTreeAnim(void) diff --git a/src/fldeff_rocksmash.c b/src/fldeff_rocksmash.c index a30000e526bc..27689b02e303 100644 --- a/src/fldeff_rocksmash.c +++ b/src/fldeff_rocksmash.c @@ -55,7 +55,7 @@ static void Task_DoFieldMove_Init(u8 taskId) { u8 objEventId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); gPlayerAvatar.preventStep = TRUE; objEventId = gPlayerAvatar.objectEventId; if (!ObjectEventIsMovementOverridden(&gObjectEvents[objEventId]) @@ -144,7 +144,7 @@ bool8 SetUpFieldMove_RockSmash(void) static void FieldCallback_RockSmash(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(EventScript_UseRockSmash); + ScriptContext_SetupScript(EventScript_UseRockSmash); } bool8 FldEff_UseRockSmash(void) @@ -162,5 +162,5 @@ static void FieldMove_RockSmash(void) { PlaySE(SE_M_ROCK_THROW); FieldEffectActiveListRemove(FLDEFF_USE_ROCK_SMASH); - EnableBothScriptContexts(); + ScriptContext_Enable(); } diff --git a/src/fldeff_strength.c b/src/fldeff_strength.c index 61960d0ffc2b..931215040331 100644 --- a/src/fldeff_strength.c +++ b/src/fldeff_strength.c @@ -30,7 +30,7 @@ bool8 SetUpFieldMove_Strength(void) static void FieldCallback_Strength(void) { gFieldEffectArguments[0] = GetCursorSelectionMonId(); - ScriptContext1_SetupScript(EventScript_UseStrength); + ScriptContext_SetupScript(EventScript_UseStrength); } bool8 FldEff_UseStrength(void) @@ -46,5 +46,5 @@ bool8 FldEff_UseStrength(void) static void StartStrengthFieldEffect(void) { FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH); - EnableBothScriptContexts(); + ScriptContext_Enable(); } diff --git a/src/fldeff_sweetscent.c b/src/fldeff_sweetscent.c index e34d195045b5..7e935260947a 100644 --- a/src/fldeff_sweetscent.c +++ b/src/fldeff_sweetscent.c @@ -93,7 +93,7 @@ static void FailSweetScentEncounter(u8 taskId) { CpuFastSet(gPaletteDecompressionBuffer, gPlttBufferUnfaded, 0x100); SetWeatherPalStateIdle(); - ScriptContext1_SetupScript(EventScript_FailSweetScent); + ScriptContext_SetupScript(EventScript_FailSweetScent); DestroyTask(taskId); } } diff --git a/src/hof_pc.c b/src/hof_pc.c index f74448cca6fc..79ba4b4b4646 100644 --- a/src/hof_pc.c +++ b/src/hof_pc.c @@ -14,7 +14,7 @@ static void Task_WaitForPaletteFade(u8); void AccessHallOfFamePC(void) { SetMainCallback2(CB2_DoHallOfFamePC); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } void ReturnFromHallOfFamePC(void) @@ -25,7 +25,7 @@ void ReturnFromHallOfFamePC(void) static void ReshowPCMenuAfterHallOfFamePC(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); Overworld_PlaySpecialMapMusic(); ScriptMenu_CreatePCMultichoice(); ScriptMenu_DisplayPCStartupPrompt(); diff --git a/src/item_menu.c b/src/item_menu.c index 526952a6b860..288c2d956509 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -2044,7 +2044,7 @@ bool8 UseRegisteredKeyItemOnField(void) { if (CheckBagHasItem(gSaveBlock1Ptr->registeredItem, 1) == TRUE) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); PlayerFreeze(); StopPlayerAvatar(); @@ -2058,7 +2058,7 @@ bool8 UseRegisteredKeyItemOnField(void) gSaveBlock1Ptr->registeredItem = ITEM_NONE; } } - ScriptContext1_SetupScript(EventScript_SelectWithoutRegisteredItem); + ScriptContext_SetupScript(EventScript_SelectWithoutRegisteredItem); return TRUE; } @@ -2373,7 +2373,7 @@ static void ItemMenu_Show(u8 taskId) static void CB2_ApprenticeExitBagMenu(void) { - gFieldCallback = Apprentice_EnableBothScriptContexts; + gFieldCallback = Apprentice_ScriptContext_Enable; SetMainCallback2(CB2_ReturnToField); } diff --git a/src/item_use.c b/src/item_use.c index 4d0919dac7c8..e5c78d091035 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -166,7 +166,7 @@ static void Task_CloseCantUseKeyItemMessage(u8 taskId) ClearDialogWindowAndFrame(0, TRUE); DestroyTask(taskId); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId) @@ -222,7 +222,7 @@ static void ItemUseOnFieldCB_Bike(u8 taskId) else // ACRO_BIKE GetOnOffBike(PLAYER_AVATAR_FLAG_ACRO_BIKE); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } @@ -337,7 +337,7 @@ static void Task_CloseItemfinderMessage(u8 taskId) { ClearDialogWindowAndFrame(0, TRUE); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } @@ -692,8 +692,8 @@ void ItemUseOutOfBattle_Berry(u8 taskId) static void ItemUseOnFieldCB_Berry(u8 taskId) { RemoveBagItem(gSpecialVar_ItemId, 1); - ScriptContext2_Enable(); - ScriptContext1_SetupScript(BerryTree_EventScript_ItemUsePlantBerry); + LockPlayerFieldControls(); + ScriptContext_SetupScript(BerryTree_EventScript_ItemUsePlantBerry); DestroyTask(taskId); } @@ -717,8 +717,8 @@ void ItemUseOutOfBattle_WailmerPail(u8 taskId) static void ItemUseOnFieldCB_WailmerPailBerry(u8 taskId) { - ScriptContext2_Enable(); - ScriptContext1_SetupScript(BerryTree_EventScript_ItemUseWailmerPail); + LockPlayerFieldControls(); + ScriptContext_SetupScript(BerryTree_EventScript_ItemUseWailmerPail); DestroyTask(taskId); } @@ -738,8 +738,8 @@ static bool8 TryToWaterSudowoodo(void) static void ItemUseOnFieldCB_WailmerPailSudowoodo(u8 taskId) { - ScriptContext2_Enable(); - ScriptContext1_SetupScript(BattleFrontier_OutsideEast_EventScript_WaterSudowoodo); + LockPlayerFieldControls(); + ScriptContext_SetupScript(BattleFrontier_OutsideEast_EventScript_WaterSudowoodo); DestroyTask(taskId); } diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 85340ed96ef3..e7a5862f074b 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -294,7 +294,7 @@ void SetFavorLadyState_Complete(void) void FieldCallback_FavorLadyEnableScriptContexts(void) { - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void QuizLadyPickQuestion(void) @@ -571,7 +571,7 @@ void BufferQuizCorrectAnswer(void) void FieldCallback_QuizLadyEnableScriptContexts(void) { - EnableBothScriptContexts(); + ScriptContext_Enable(); } void QuizLadyClearQuestionForRecordMix(const LilycoveLady *lilycoveLady) diff --git a/src/match_call.c b/src/match_call.c index 8b25d5b44dea..4f6a7b9821db 100644 --- a/src/match_call.c +++ b/src/match_call.c @@ -1183,7 +1183,7 @@ static void StartMatchCall(void) { if (!sMatchCallState.triggeredFromScript) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjectEvents(); PlayerFreeze(); StopPlayerAvatar(); @@ -1371,7 +1371,7 @@ static bool32 MatchCall_EndCall(u8 taskId) ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]); ScriptMovement_UnfreezeObjectEvents(); UnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } return TRUE; diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 241aed00c13f..5c9dd712501e 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -222,7 +222,7 @@ static void PrepareSongText(void) void PlayBardSong(void) { StartBardSong(gSpecialVar_0x8004); - ScriptContext1_Stop(); + ScriptContext_Stop(); } void GetHipsterSpokenFlag(void) @@ -627,7 +627,7 @@ static void Task_BardSong(u8 taskId) // End song FadeInBGM(6); m4aMPlayFadeOutTemporarily(&gMPlayInfo_SE2, 2); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } else if (gStringVar4[task->tCharIndex] == CHAR_SPACE) @@ -1375,7 +1375,7 @@ static void Task_StoryListMenu(u8 taskId) } ClearToTransparentAndRemoveWindow(sStorytellerWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); break; } } diff --git a/src/mirage_tower.c b/src/mirage_tower.c index e7805ff69051..69c2e8154035 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -361,7 +361,7 @@ static void PlayerDescendMirageTower(u8 taskId) (gSprites[player->spriteId].y + gSprites[player->spriteId].y2)) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } @@ -439,7 +439,7 @@ static void FinishCeilingCrumbleTask(u8 taskId) { FreeSpriteTilesByTag(TAG_CEILING_CRUMBLE); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void CreateCeilingCrumbleSprites(void) @@ -565,7 +565,7 @@ static void InitMirageTowerShake(u8 taskId) sBgShakeOffsets->bgVOFS = zero; CreateTask(UpdateBgShake, 10); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); break; } } @@ -654,7 +654,7 @@ static void DoMirageTowerDisintegration(u8 taskId) break; case 8: DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); break; } gTasks[taskId].tState++; @@ -719,7 +719,7 @@ static void Task_FossilFallAndSink(u8 taskId) FREE_AND_SET_NULL(sFallingFossil); break; case 8: - EnableBothScriptContexts(); + ScriptContext_Enable(); break; } gTasks[taskId].tState++; diff --git a/src/move_relearner.c b/src/move_relearner.c index e2a88d412248..d9c943b576cd 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -365,7 +365,7 @@ static void VBlankCB_MoveRelearner(void) // Script arguments: The pokemon to teach is in VAR_0x8004 void TeachMoveRelearnerMove(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_WaitForFadeOut, 10); // Fade to black BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c index 6854229671ea..d1b514a173a6 100644 --- a/src/mystery_event_script.c +++ b/src/mystery_event_script.c @@ -220,7 +220,7 @@ bool8 MEScrCmd_setmsg(struct ScriptContext *ctx) bool8 MEScrCmd_runscript(struct ScriptContext *ctx) { u8 *script = (u8 *)(ScriptReadWord(ctx) - ctx->mOffset + ctx->mScriptBase); - ScriptContext2_RunNewScript(script); + RunScriptImmediately(script); return FALSE; } diff --git a/src/new_game.c b/src/new_game.c index 077b86775c0e..4ecb670c037c 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -192,7 +192,7 @@ void NewGameInitData(void) ResetFanClub(); ResetLotteryCorner(); WarpToTruck(); - ScriptContext2_RunNewScript(EventScript_ResetAllMapFlags); + RunScriptImmediately(EventScript_ResetAllMapFlags); ResetMiniGamesRecords(); InitUnionRoomChatRegisteredTexts(); InitLilycoveLady(); diff --git a/src/overworld.c b/src/overworld.c index 66d7be99b31f..cb0d1f06e148 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -360,7 +360,7 @@ static void (*const sMovementStatusHandler[])(struct LinkPlayerObjectEvent *, st // code void DoWhiteOut(void) { - ScriptContext2_RunNewScript(EventScript_WhiteOut); + RunScriptImmediately(EventScript_WhiteOut); SetMoney(&gSaveBlock1Ptr->money, GetMoney(&gSaveBlock1Ptr->money) / 2); HealPlayerParty(); Overworld_ResetStateAfterWhiteOut(); @@ -386,7 +386,7 @@ void Overworld_ResetStateAfterTeleport(void) FlagClear(FLAG_SYS_SAFARI_MODE); FlagClear(FLAG_SYS_USE_STRENGTH); FlagClear(FLAG_SYS_USE_FLASH); - ScriptContext2_RunNewScript(EventScript_ResetMrBriney); + RunScriptImmediately(EventScript_ResetMrBriney); } void Overworld_ResetStateAfterDigEscRope(void) @@ -1432,11 +1432,11 @@ static void DoCB1_Overworld(u16 newKeys, u16 heldKeys) UpdatePlayerAvatarTransitionState(); FieldClearPlayerInput(&inputStruct); FieldGetPlayerInput(&inputStruct, newKeys, heldKeys); - if (!ScriptContext2_IsEnabled()) + if (!ArePlayerFieldControlsLocked()) { if (ProcessPlayerFieldInput(&inputStruct) == 1) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); HideMapNamePopUpWindow(); } else @@ -1454,7 +1454,7 @@ void CB1_Overworld(void) static void OverworldBasic(void) { - ScriptContext2_RunScript(); + ScriptContext_RunScript(); RunTasks(); AnimateSprites(); CameraUpdate(); @@ -1527,8 +1527,8 @@ void CB2_NewGame(void) NewGameInitData(); ResetInitialPlayerAvatarState(); PlayTimeCounter_Start(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); gFieldCallback = ExecuteTruckSequence; gFieldCallback2 = NULL; DoMapLoadLoop(&gMain.state); @@ -1548,8 +1548,8 @@ void CB2_WhiteOut(void) ResetSafariZoneFlag_(); DoWhiteOut(); ResetInitialPlayerAvatarState(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); gFieldCallback = FieldCB_WarpExitFadeFromBlack; state = 0; DoMapLoadLoop(&state); @@ -1562,8 +1562,8 @@ void CB2_WhiteOut(void) void CB2_LoadMap(void) { FieldClearVBlankHBlankCallbacks(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); SetMainCallback1(NULL); SetMainCallback2(CB2_DoChangeMap); gMain.savedCallback = CB2_LoadMap2; @@ -1582,8 +1582,8 @@ void CB2_ReturnToFieldContestHall(void) if (!gMain.state) { FieldClearVBlankHBlankCallbacks(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); SetMainCallback1(NULL); } if (LoadMapInStepsLocal(&gMain.state, TRUE)) @@ -1652,8 +1652,8 @@ void CB2_ReturnToFieldFromMultiplayer(void) else gFieldCallback = FieldCB_ReturnToFieldCableLink; - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); CB2_ReturnToField(); } @@ -1723,8 +1723,8 @@ void CB2_ContinueSavedGame(void) InitMapFromSavedGame(); PlayTimeCounter_Start(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); InitMatchCallCounters(); if (UseContinueGameWarp() == TRUE) { @@ -1803,8 +1803,8 @@ static bool32 LoadMapInStepsLink(u8 *state) { case 0: InitOverworldBgs(); - ScriptContext1_Init(); - ScriptContext2_Disable(); + ScriptContext_Init(); + UnlockPlayerFieldControls(); ResetMirageTowerAndSaveBlockPtrs(); ResetScreenForMapLoad(); (*state)++; @@ -2505,7 +2505,7 @@ static void ResetPlayerHeldKeys(u16 *keys) static u16 KeyInterCB_SelfIdle(u32 key) { - if (ScriptContext2_IsEnabled() == TRUE) + if (ArePlayerFieldControlsLocked() == TRUE) return LINK_KEY_CODE_EMPTY; if (GetLinkRecvQueueLength() > 4) return LINK_KEY_CODE_HANDLE_RECV_QUEUE; @@ -2525,7 +2525,7 @@ static u16 KeyInterCB_Idle(u32 key) static u16 KeyInterCB_DeferToEventScript(u32 key) { u16 retVal; - if (ScriptContext2_IsEnabled() == TRUE) + if (ArePlayerFieldControlsLocked() == TRUE) { retVal = LINK_KEY_CODE_EMPTY; } @@ -2548,7 +2548,7 @@ static u16 KeyInterCB_DeferToRecvQueue(u32 key) else { retVal = LINK_KEY_CODE_IDLE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); SetKeyInterceptCallback(KeyInterCB_Idle); } return retVal; @@ -2565,7 +2565,7 @@ static u16 KeyInterCB_DeferToSendQueue(u32 key) else { retVal = LINK_KEY_CODE_IDLE; - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); SetKeyInterceptCallback(KeyInterCB_Idle); } return retVal; @@ -2618,7 +2618,7 @@ static u16 KeyInterCB_WaitForPlayersToExit(u32 keyOrPlayerId) CheckRfuKeepAliveTimer(); if (AreAllPlayersInLinkState(PLAYER_LINK_STATE_EXITING_ROOM) == TRUE) { - ScriptContext1_SetupScript(EventScript_DoLinkRoomExit); + ScriptContext_SetupScript(EventScript_DoLinkRoomExit); SetKeyInterceptCallback(KeyInterCB_SendNothing); } return LINK_KEY_CODE_EMPTY; @@ -2797,41 +2797,41 @@ static u16 GetDirectionForEventScript(const u8 *script) static void InitLinkPlayerQueueScript(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static void InitLinkRoomStartMenuScript(void) { PlaySE(SE_WIN_OPEN); ShowStartMenu(); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static void RunInteractLocalPlayerScript(const u8 *script) { PlaySE(SE_SELECT); - ScriptContext1_SetupScript(script); - ScriptContext2_Enable(); + ScriptContext_SetupScript(script); + LockPlayerFieldControls(); } static void RunConfirmLeaveCableClubScript(void) { PlaySE(SE_WIN_OPEN); - ScriptContext1_SetupScript(EventScript_ConfirmLeaveCableClubRoom); - ScriptContext2_Enable(); + ScriptContext_SetupScript(EventScript_ConfirmLeaveCableClubRoom); + LockPlayerFieldControls(); } static void InitMenuBasedScript(const u8 *script) { PlaySE(SE_SELECT); - ScriptContext1_SetupScript(script); - ScriptContext2_Enable(); + ScriptContext_SetupScript(script); + LockPlayerFieldControls(); } static void RunTerminateLinkScript(void) { - ScriptContext1_SetupScript(EventScript_TerminateLink); - ScriptContext2_Enable(); + ScriptContext_SetupScript(EventScript_TerminateLink); + LockPlayerFieldControls(); } bool32 Overworld_IsRecvQueueAtMax(void) diff --git a/src/party_menu.c b/src/party_menu.c index c3a5da441ee7..623f2eecaba5 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -6148,14 +6148,14 @@ static void Task_PartyMenuWaitForFade(u8 taskId) if (IsWeatherNotFadingIn()) { DestroyTask(taskId); - ScriptContext2_Disable(); - EnableBothScriptContexts(); + UnlockPlayerFieldControls(); + ScriptContext_Enable(); } } void ChooseContestMon(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_ChooseContestMon, 10); } @@ -6183,7 +6183,7 @@ static void CB2_ChooseContestMon(void) // Used as a script special for showing a party mon to various npcs (e.g. in-game trades, move deleter) void ChoosePartyMon(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_ChoosePartyMon, 10); } @@ -6200,7 +6200,7 @@ static void Task_ChoosePartyMon(u8 taskId) void ChooseMonForMoveRelearner(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_ChooseMonForMoveRelearner, 10); } @@ -6245,7 +6245,7 @@ void DoBattlePyramidMonsHaveHeldItem(void) // The player can then select to toss items from the bag or take/toss held items from the party void BattlePyramidChooseMonHeldItems(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FadeScreen(FADE_TO_BLACK, 0); CreateTask(Task_BattlePyramidChooseMonHeldItems, 10); } diff --git a/src/player_pc.c b/src/player_pc.c index 288b999909c3..9ec36d61d23d 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -489,13 +489,13 @@ static void PlayerPC_TurnOff(u8 taskId) if (sTopMenuNumOptions == NUM_BEDROOM_PC_OPTIONS) // Flimsy way to determine if Bedroom PC is in use { if (gSaveBlock2Ptr->playerGender == MALE) - ScriptContext1_SetupScript(LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC); + ScriptContext_SetupScript(LittlerootTown_BrendansHouse_2F_EventScript_TurnOffPlayerPC); else - ScriptContext1_SetupScript(LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC); + ScriptContext_SetupScript(LittlerootTown_MaysHouse_2F_EventScript_TurnOffPlayerPC); } else { - EnableBothScriptContexts(); + ScriptContext_Enable(); } DestroyTask(taskId); } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 98f1eee06ba0..4f2a14fdf05f 100755 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -4195,7 +4195,7 @@ static void Task_ShowPokemonJumpRecords(u8 taskId) { RemoveWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } break; } diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 00338a847569..32069153e6c7 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1579,8 +1579,8 @@ static void Task_PCMainMenu(u8 taskId) case MENU_B_PRESSED: case OPTION_EXIT: ClearStdWindowAndFrame(task->tWindowId, TRUE); - ScriptContext2_Disable(); - EnableBothScriptContexts(); + UnlockPlayerFieldControls(); + ScriptContext_Enable(); RemoveWindow(task->tWindowId); DestroyTask(taskId); break; @@ -1655,7 +1655,7 @@ void ShowPokemonStorageSystemPC(void) u8 taskId = CreateTask(Task_PCMainMenu, 80); gTasks[taskId].tState = 0; gTasks[taskId].tSelectedOption = 0; - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static void FieldTask_ReturnToPcMenu(void) diff --git a/src/record_mixing.c b/src/record_mixing.c index d19b6f0a2cb0..3a831c8ce1a7 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -365,7 +365,7 @@ static void Task_RecordMixing_Main(u8 taskId) CreateTask(Task_ReturnToFieldRecordMixing, 10); ClearDialogWindowAndFrame(0, TRUE); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } break; } diff --git a/src/roulette.c b/src/roulette.c index 2caa3214881f..e96ec30b07ad 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -3401,7 +3401,7 @@ static void Task_DeclineMinBet(u8 taskId) { ClearStdWindowAndFrame(0, FALSE); HideCoinsWindow(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } @@ -3413,7 +3413,7 @@ static void Task_NotEnoughForMinBet(u8 taskId) gSpecialVar_0x8004 = 1; HideCoinsWindow(); ClearStdWindowAndFrame(0, TRUE); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); } } @@ -3475,7 +3475,7 @@ static void Task_PrintRouletteEntryMsg(u8 taskId) void PlayRoulette(void) { u8 taskId; - ScriptContext2_Enable(); + LockPlayerFieldControls(); ShowCoinsWindow(GetCoins(), 1, 1); taskId = CreateTask(Task_PrintRouletteEntryMsg, 0); gTasks[taskId].tCoins = GetCoins(); diff --git a/src/safari_zone.c b/src/safari_zone.c index 1f13976569e6..ab4d4736ce15 100644 --- a/src/safari_zone.c +++ b/src/safari_zone.c @@ -83,7 +83,7 @@ bool8 SafariZoneTakeStep(void) sSafariZoneStepCounter--; if (sSafariZoneStepCounter == 0) { - ScriptContext1_SetupScript(SafariZone_EventScript_TimesUp); + ScriptContext_SetupScript(SafariZone_EventScript_TimesUp); return TRUE; } return FALSE; @@ -91,7 +91,7 @@ bool8 SafariZoneTakeStep(void) void SafariZoneRetirePrompt(void) { - ScriptContext1_SetupScript(SafariZone_EventScript_RetirePrompt); + ScriptContext_SetupScript(SafariZone_EventScript_RetirePrompt); } void CB2_EndSafariBattle(void) @@ -105,15 +105,15 @@ void CB2_EndSafariBattle(void) } else if (gBattleOutcome == B_OUTCOME_NO_SAFARI_BALLS) { - ScriptContext2_RunNewScript(SafariZone_EventScript_OutOfBallsMidBattle); + RunScriptImmediately(SafariZone_EventScript_OutOfBallsMidBattle); WarpIntoMap(); gFieldCallback = FieldCB_ReturnToFieldNoScriptCheckMusic; SetMainCallback2(CB2_LoadMap); } else if (gBattleOutcome == B_OUTCOME_CAUGHT) { - ScriptContext1_SetupScript(SafariZone_EventScript_OutOfBalls); - ScriptContext1_Stop(); + ScriptContext_SetupScript(SafariZone_EventScript_OutOfBalls); + ScriptContext_Stop(); SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic); } } diff --git a/src/scrcmd.c b/src/scrcmd.c index fe5cf95d7635..6ca02019d8a5 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -141,7 +141,7 @@ bool8 ScrCmd_callnative(struct ScriptContext *ctx) bool8 ScrCmd_waitstate(struct ScriptContext *ctx) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -605,7 +605,7 @@ bool8 ScrCmd_incrementgamestat(struct ScriptContext *ctx) bool8 ScrCmd_animateflash(struct ScriptContext *ctx) { AnimateFlash(ScriptReadByte(ctx)); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1344,7 +1344,7 @@ bool8 ScrCmd_yesnobox(struct ScriptContext *ctx) if (ScriptMenu_YesNo(left, top) == TRUE) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } else @@ -1362,7 +1362,7 @@ bool8 ScrCmd_multichoice(struct ScriptContext *ctx) if (ScriptMenu_Multichoice(left, top, multichoiceId, ignoreBPress) == TRUE) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } else @@ -1381,7 +1381,7 @@ bool8 ScrCmd_multichoicedefault(struct ScriptContext *ctx) if (ScriptMenu_MultichoiceWithDefault(left, top, multichoiceId, ignoreBPress, defaultChoice) == TRUE) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } else @@ -1411,7 +1411,7 @@ bool8 ScrCmd_multichoicegrid(struct ScriptContext *ctx) if (ScriptMenu_MultichoiceGrid(left, top, multichoiceId, ignoreBPress, numColumns) == TRUE) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } else @@ -1440,7 +1440,7 @@ bool8 ScrCmd_drawboxtext(struct ScriptContext *ctx) /*if (Multichoice(left, top, multichoiceId, ignoreBPress) == TRUE) { - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; }*/ return FALSE; @@ -1477,7 +1477,7 @@ bool8 ScrCmd_showcontestpainting(struct ScriptContext *ctx) SetContestWinnerForPainting(contestWinnerId); ShowContestPainting(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1882,7 +1882,7 @@ bool8 ScrCmd_setwildbattle(struct ScriptContext *ctx) bool8 ScrCmd_dowildbattle(struct ScriptContext *ctx) { BattleSetup_StartScriptedWildBattle(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1891,7 +1891,7 @@ bool8 ScrCmd_pokemart(struct ScriptContext *ctx) const void *ptr = (void *)ScriptReadWord(ctx); CreatePokemartMenu(ptr); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1900,7 +1900,7 @@ bool8 ScrCmd_pokemartdecoration(struct ScriptContext *ctx) const void *ptr = (void *)ScriptReadWord(ctx); CreateDecorationShop1Menu(ptr); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1910,7 +1910,7 @@ bool8 ScrCmd_pokemartdecoration2(struct ScriptContext *ctx) const void *ptr = (void *)ScriptReadWord(ctx); CreateDecorationShop2Menu(ptr); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1919,7 +1919,7 @@ bool8 ScrCmd_playslotmachine(struct ScriptContext *ctx) u8 machineId = VarGet(ScriptReadHalfword(ctx)); PlaySlotMachine(machineId, CB2_ReturnToFieldContinueScriptPlayMapMusic); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1947,7 +1947,7 @@ bool8 ScrCmd_getpokenewsactive(struct ScriptContext *ctx) bool8 ScrCmd_choosecontestmon(struct ScriptContext *ctx) { ChooseContestMon(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -1955,21 +1955,21 @@ bool8 ScrCmd_choosecontestmon(struct ScriptContext *ctx) bool8 ScrCmd_startcontest(struct ScriptContext *ctx) { StartContest(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } bool8 ScrCmd_showcontestresults(struct ScriptContext *ctx) { ShowContestResults(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } bool8 ScrCmd_contestlinktransfer(struct ScriptContext *ctx) { ContestLinkTransfer(gSpecialVar_ContestCategory); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE; } @@ -2124,7 +2124,7 @@ bool8 ScrCmd_addelevmenuitem(struct ScriptContext *ctx) bool8 ScrCmd_showelevmenu(struct ScriptContext *ctx) { /*ScriptShowElevatorMenu(); - ScriptContext1_Stop(); + ScriptContext_Stop(); return TRUE;*/ return FALSE; } diff --git a/src/script.c b/src/script.c index 9d14a3bc395f..231f59f07fef 100644 --- a/src/script.c +++ b/src/script.c @@ -14,12 +14,18 @@ enum { SCRIPT_MODE_NATIVE, }; +enum { + CONTEXT_RUNNING, + CONTEXT_WAITING, + CONTEXT_SHUTDOWN, +}; + extern const u8 *gRamScriptRetAddr; -static u8 sScriptContext1Status; -static struct ScriptContext sScriptContext1; -static struct ScriptContext sScriptContext2; -static bool8 sScriptContext2Enabled; +static u8 sGlobalScriptContextStatus; +static struct ScriptContext sGlobalScriptContext; +static struct ScriptContext sImmediateScriptContext; +static bool8 sLockFieldControls; extern ScrCmdFunc gScriptCmdTable[]; extern ScrCmdFunc gScriptCmdTableEnd[]; @@ -173,79 +179,79 @@ u32 ScriptReadWord(struct ScriptContext *ctx) return (((((value3 << 8) + value2) << 8) + value1) << 8) + value0; } -void ScriptContext2_Enable(void) +void LockPlayerFieldControls(void) { - sScriptContext2Enabled = TRUE; + sLockFieldControls = TRUE; } -void ScriptContext2_Disable(void) +void UnlockPlayerFieldControls(void) { - sScriptContext2Enabled = FALSE; + sLockFieldControls = FALSE; } -bool8 ScriptContext2_IsEnabled(void) +bool8 ArePlayerFieldControlsLocked(void) { - return sScriptContext2Enabled; + return sLockFieldControls; } -bool8 ScriptContext1_IsScriptSetUp(void) +bool8 ScriptContext_IsEnabled(void) { - if (sScriptContext1Status == 0) + if (sGlobalScriptContextStatus == CONTEXT_RUNNING) return TRUE; else return FALSE; } -void ScriptContext1_Init(void) +void ScriptContext_Init(void) { - InitScriptContext(&sScriptContext1, gScriptCmdTable, gScriptCmdTableEnd); - sScriptContext1Status = 2; + InitScriptContext(&sGlobalScriptContext, gScriptCmdTable, gScriptCmdTableEnd); + sGlobalScriptContextStatus = CONTEXT_SHUTDOWN; } -bool8 ScriptContext2_RunScript(void) +bool8 ScriptContext_RunScript(void) { - if (sScriptContext1Status == 2) + if (sGlobalScriptContextStatus == CONTEXT_SHUTDOWN) return FALSE; - if (sScriptContext1Status == 1) + if (sGlobalScriptContextStatus == CONTEXT_WAITING) return FALSE; - ScriptContext2_Enable(); + LockPlayerFieldControls(); - if (!RunScriptCommand(&sScriptContext1)) + if (!RunScriptCommand(&sGlobalScriptContext)) { - sScriptContext1Status = 2; - ScriptContext2_Disable(); + sGlobalScriptContextStatus = CONTEXT_SHUTDOWN; + UnlockPlayerFieldControls(); return FALSE; } return TRUE; } -void ScriptContext1_SetupScript(const u8 *ptr) +void ScriptContext_SetupScript(const u8 *ptr) { - InitScriptContext(&sScriptContext1, gScriptCmdTable, gScriptCmdTableEnd); - SetupBytecodeScript(&sScriptContext1, ptr); - ScriptContext2_Enable(); - sScriptContext1Status = 0; + InitScriptContext(&sGlobalScriptContext, gScriptCmdTable, gScriptCmdTableEnd); + SetupBytecodeScript(&sGlobalScriptContext, ptr); + LockPlayerFieldControls(); + sGlobalScriptContextStatus = CONTEXT_RUNNING; } -void ScriptContext1_Stop(void) +void ScriptContext_Stop(void) { - sScriptContext1Status = 1; + sGlobalScriptContextStatus = CONTEXT_WAITING; } -void EnableBothScriptContexts(void) +void ScriptContext_Enable(void) { - sScriptContext1Status = 0; - ScriptContext2_Enable(); + sGlobalScriptContextStatus = CONTEXT_RUNNING; + LockPlayerFieldControls(); } -void ScriptContext2_RunNewScript(const u8 *ptr) +void RunScriptImmediately(const u8 *ptr) { - InitScriptContext(&sScriptContext2, gScriptCmdTable, gScriptCmdTableEnd); - SetupBytecodeScript(&sScriptContext2, ptr); - while (RunScriptCommand(&sScriptContext2) == TRUE); + InitScriptContext(&sImmediateScriptContext, gScriptCmdTable, gScriptCmdTableEnd); + SetupBytecodeScript(&sImmediateScriptContext, ptr); + while (RunScriptCommand(&sImmediateScriptContext) == TRUE); } u8 *MapHeaderGetScriptTable(u8 tag) @@ -272,7 +278,7 @@ void MapHeaderRunScriptType(u8 tag) { u8 *ptr = MapHeaderGetScriptTable(tag); if (ptr) - ScriptContext2_RunNewScript(ptr); + RunScriptImmediately(ptr); } u8 *MapHeaderCheckScriptTable(u8 tag) @@ -336,7 +342,7 @@ bool8 TryRunOnFrameMapScript(void) if (!ptr) return FALSE; - ScriptContext1_SetupScript(ptr); + ScriptContext_SetupScript(ptr); return TRUE; } @@ -344,7 +350,7 @@ void TryRunOnWarpIntoMapScript(void) { u8 *ptr = MapHeaderCheckScriptTable(MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE); if (ptr) - ScriptContext2_RunNewScript(ptr); + RunScriptImmediately(ptr); } u32 CalculateRamScriptChecksum(void) diff --git a/src/script_menu.c b/src/script_menu.c index 463123e669f7..d25f28cb2974 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -190,7 +190,7 @@ static void Task_HandleMultichoiceInput(u8 taskId) } ClearToTransparentAndRemoveWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } } @@ -245,7 +245,7 @@ static void Task_HandleYesNoInput(u8 taskId) } DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress, u8 columnCount) @@ -307,7 +307,7 @@ static void Task_HandleMultichoiceGridInput(u8 taskId) ClearToTransparentAndRemoveWindow(tWindowId); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } #undef tWindowId diff --git a/src/secret_base.c b/src/secret_base.c index d2cbcb98678a..74129d3ff550 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -461,7 +461,7 @@ static void EnterNewlyCreatedSecretBase_WaitFadeIn(u8 taskId) ObjectEventTurn(&gObjectEvents[gPlayerAvatar.objectEventId], DIR_NORTH); if (IsWeatherNotFadingIn() == TRUE) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } @@ -470,7 +470,7 @@ static void EnterNewlyCreatedSecretBase_StartFadeIn(void) { s16 x, y; - ScriptContext2_Enable(); + LockPlayerFieldControls(); HideMapNamePopUpWindow(); FindMetatileIdMapCoords(&x, &y, METATILE_SecretBase_PC); x += MAP_OFFSET; @@ -673,7 +673,7 @@ void WarpIntoSecretBase(const struct MapPosition *position, const struct MapEven { SetCurSecretBaseIdFromPosition(position, events); TrySetCurSecretBaseIndex(); - ScriptContext1_SetupScript(SecretBase_EventScript_Enter); + ScriptContext_SetupScript(SecretBase_EventScript_Enter); } bool8 TrySetCurSecretBase(void) @@ -691,7 +691,7 @@ static void Task_WarpOutOfSecretBase(u8 taskId) switch (gTasks[taskId].data[0]) { case 0: - ScriptContext2_Enable(); + LockPlayerFieldControls(); gTasks[taskId].data[0] = 1; break; case 1: @@ -703,7 +703,7 @@ static void Task_WarpOutOfSecretBase(u8 taskId) WarpIntoMap(); gFieldCallback = FieldCB_DefaultWarpExit; SetMainCallback2(CB2_LoadMap); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); break; } @@ -914,7 +914,7 @@ void ShowSecretBaseRegistryMenu(void) static void Task_ShowSecretBaseRegistryMenu(u8 taskId) { s16 *data = gTasks[taskId].data; - ScriptContext2_Enable(); + LockPlayerFieldControls(); tNumBases = GetNumRegisteredSecretBases(); if (tNumBases != 0) { @@ -1110,9 +1110,9 @@ static void ReturnToMainRegistryMenu(u8 taskId) static void GoToSecretBasePCRegisterMenu(u8 taskId) { if (VarGet(VAR_CURRENT_SECRET_BASE) == 0) - ScriptContext1_SetupScript(SecretBase_EventScript_PCCancel); + ScriptContext_SetupScript(SecretBase_EventScript_PCCancel); else - ScriptContext1_SetupScript(SecretBase_EventScript_ShowRegisterMenu); + ScriptContext_SetupScript(SecretBase_EventScript_ShowRegisterMenu); DestroyTask(taskId); } diff --git a/src/shop.c b/src/shop.c index d23c4a56461e..451fa171cba3 100755 --- a/src/shop.c +++ b/src/shop.c @@ -277,7 +277,7 @@ static u8 CreateShopMenu(u8 martType) { int numMenuItems; - ScriptContext2_Enable(); + LockPlayerFieldControls(); sMartInfo.martType = martType; if (martType == MART_TYPE_NORMAL) @@ -373,7 +373,7 @@ static void Task_HandleShopMenuQuit(u8 taskId) ClearStdWindowAndFrameToTransparent(sMartInfo.windowId, 2); // Incorrect use, making it not copy it to vram. RemoveWindow(sMartInfo.windowId); TryPutSmartShopperOnAir(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); DestroyTask(taskId); if (sMartInfo.callback) @@ -1210,19 +1210,19 @@ void CreatePokemartMenu(const u16 *itemsForSale) CreateShopMenu(MART_TYPE_NORMAL); SetShopItemsForSale(itemsForSale); ClearItemPurchases(); - SetShopMenuCallback(EnableBothScriptContexts); + SetShopMenuCallback(ScriptContext_Enable); } void CreateDecorationShop1Menu(const u16 *itemsForSale) { CreateShopMenu(MART_TYPE_DECOR); SetShopItemsForSale(itemsForSale); - SetShopMenuCallback(EnableBothScriptContexts); + SetShopMenuCallback(ScriptContext_Enable); } void CreateDecorationShop2Menu(const u16 *itemsForSale) { CreateShopMenu(MART_TYPE_DECOR2); SetShopItemsForSale(itemsForSale); - SetShopMenuCallback(EnableBothScriptContexts); + SetShopMenuCallback(ScriptContext_Enable); } diff --git a/src/start_menu.c b/src/start_menu.c index 316a5063b41a..2a45f8d69c68 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -562,7 +562,7 @@ void ShowStartMenu(void) StopPlayerAvatar(); } CreateStartMenuTask(Task_ShowStartMenu); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static bool8 HandleStartMenuInput(void) @@ -763,7 +763,7 @@ void ShowBattlePyramidStartMenu(void) ClearDialogWindowAndFrameToTransparent(0, FALSE); ScriptUnfreezeObjectEvents(); CreateStartMenuTask(Task_ShowStartMenu); - ScriptContext2_Enable(); + LockPlayerFieldControls(); } static bool8 StartMenuBattlePyramidBagCallback(void) @@ -804,7 +804,7 @@ static bool8 SaveCallback(void) case SAVE_ERROR: // Close start menu ClearDialogWindowAndFrameToTransparent(0, TRUE); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); SoftResetInBattlePyramid(); return TRUE; } @@ -841,8 +841,8 @@ static bool8 BattlePyramidRetireCallback(void) case SAVE_CANCELED: // Yes (Retire from battle pyramid) ClearDialogWindowAndFrameToTransparent(0, TRUE); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); - ScriptContext1_SetupScript(BattlePyramid_Retire); + UnlockPlayerFieldControls(); + ScriptContext_SetupScript(BattlePyramid_Retire); return TRUE; } @@ -901,7 +901,7 @@ static void SaveGameTask(u8 taskId) } DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void HideSaveMessageWindow(void) @@ -1378,7 +1378,7 @@ static void Task_WaitForBattleTowerLinkSave(u8 taskId) if (!FuncIsActiveTask(Task_LinkFullSave)) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } } @@ -1398,7 +1398,7 @@ static void HideStartMenuWindow(void) ClearStdWindowAndFrame(GetStartMenuWindowId(), TRUE); RemoveStartMenuWindow(); ScriptUnfreezeObjectEvents(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } void HideStartMenu(void) diff --git a/src/time_events.c b/src/time_events.c index 3f56d3ab5e1a..cec6a44c3415 100644 --- a/src/time_events.c +++ b/src/time_events.c @@ -95,7 +95,7 @@ static void Task_WaitWeather(u8 taskId) { if (IsWeatherChangeComplete()) { - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } } diff --git a/src/trade.c b/src/trade.c index e99b578cad5e..7c712b5803b2 100644 --- a/src/trade.c +++ b/src/trade.c @@ -4794,7 +4794,7 @@ static void CB2_FreeTradeData(void) void DoInGameTradeScene(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); CreateTask(Task_InGameTrade, 10); BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); } diff --git a/src/trader.c b/src/trader.c index 040ee695b3f4..254d809458d4 100644 --- a/src/trader.c +++ b/src/trader.c @@ -109,7 +109,7 @@ void Task_BufferDecorSelectionAndCloseWindow(u8 taskId, u8 decorationId) RemoveWindow(tWindowId); ScheduleBgCopyTilemapToVram(0); DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void Task_HandleGetDecorationMenuInput(u8 taskId) @@ -186,14 +186,14 @@ void DecorationItemsMenuAction_Trade(u8 taskId) gSpecialVar_0x8006 = 0xFFFF; } DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void ExitTraderMenu(u8 taskId) { gSpecialVar_0x8006 = 0; DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void TraderDoDecorationTrade(void) diff --git a/src/trainer_see.c b/src/trainer_see.c index 439f7ac94b3a..b333e03241ed 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -660,7 +660,7 @@ void DoTrainerApproach(void) static void Task_EndTrainerApproach(u8 taskId) { DestroyTask(taskId); - EnableBothScriptContexts(); + ScriptContext_Enable(); } void TryPrepareSecondApproachingTrainer(void) diff --git a/src/union_room.c b/src/union_room.c index cf10861d8382..67d1059ee04d 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -686,12 +686,12 @@ static void Task_TryBecomeLinkLeader(u8 taskId) data->state++; // LL_STATE_RETRY or LL_STATE_FAILED break; case LL_STATE_FAILED: - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); gSpecialVar_Result = LINKUP_FAILED; break; case LL_STATE_RETRY: - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); gSpecialVar_Result = LINKUP_RETRY_ROLE_ASSIGN; break; @@ -1744,7 +1744,7 @@ static void Task_StartActivity(u8 taskId) DestroyTask(taskId); gSpecialVar_Result = LINKUP_SUCCESS; if (gPlayerCurrActivity != (ACTIVITY_TRADE | IN_UNION_ROOM)) - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); } static void Task_RunScriptAndFadeToActivity(u8 taskId) @@ -1779,13 +1779,13 @@ static void Task_RunScriptAndFadeToActivity(u8 taskId) SaveLinkTrainerNames(); DestroyTask(taskId); default: - EnableBothScriptContexts(); + ScriptContext_Enable(); data[0] = 1; break; } break; case 1: - if (!ScriptContext1_IsScriptSetUp()) + if (!ScriptContext_IsEnabled()) { FadeScreen(FADE_TO_BLACK, 0); data[0] = 2; @@ -1833,7 +1833,7 @@ static void Task_RunScriptAndFadeToActivity(u8 taskId) } break; case 6: - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); break; case 7: @@ -1844,7 +1844,7 @@ static void Task_RunScriptAndFadeToActivity(u8 taskId) if (gReceivedRemoteLinkPlayers == 0) { DestroyWirelessStatusIndicatorSprite(); - EnableBothScriptContexts(); + ScriptContext_Enable(); DestroyTask(taskId); } break; @@ -2592,7 +2592,7 @@ static void Task_RunUnionRoom(u8 taskId) gSpecialVar_Result = 0; } } - else if (ScriptContext2_IsEnabled() != TRUE) + else if (ArePlayerFieldControlsLocked() != TRUE) { if (JOY_NEW(A_BUTTON)) { @@ -3781,7 +3781,7 @@ static void UR_ClearBg0(void) static void JoinGroup_EnableScriptContexts(void) { - EnableBothScriptContexts(); + ScriptContext_Enable(); } static void PrintUnionRoomText(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 colorIdx) @@ -4403,7 +4403,7 @@ static u32 GetPartyPositionOfRegisteredMon(struct UnionRoomTrade *trade, u8 mult static void HandleCancelActivity(bool32 setData) { UR_ClearBg0(); - ScriptContext2_Disable(); + UnlockPlayerFieldControls(); UnionRoom_UnlockPlayerAndChatPartner(); gPlayerCurrActivity = ACTIVITY_NONE; if (setData) @@ -4415,7 +4415,7 @@ static void HandleCancelActivity(bool32 setData) static void StartScriptInteraction(void) { - ScriptContext2_Enable(); + LockPlayerFieldControls(); FreezeObjects_WaitForPlayer(); } diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 908eb8f21ff3..b60c263ae34e 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -205,7 +205,7 @@ static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 leaderId) if (!ObjectEventClearHeldMovementIfFinished(object)) return FALSE; - if (!ScriptContext2_IsEnabled()) + if (!ArePlayerFieldControlsLocked()) UnfreezeObjectEvent(object); else FreezeObjectEvent(object); diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 6d250bb7291b..4f9697753e58 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -852,7 +852,7 @@ bool8 UpdateRepelCounter(void) VarSet(VAR_REPEL_STEP_COUNT, steps); if (steps == 0) { - ScriptContext1_SetupScript(EventScript_RepelWoreOff); + ScriptContext_SetupScript(EventScript_RepelWoreOff); return TRUE; } } From ec73158f16a668d984b7af033470ce2c02081339 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Mon, 15 Aug 2022 16:37:38 -0400 Subject: [PATCH 673/762] Moving documentation comments per request from the discord chat. --- include/script.h | 23 ----------------------- src/script.c | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 23 deletions(-) diff --git a/include/script.h b/include/script.h index 7a2d7d4a6cd9..7c180e961b3a 100644 --- a/include/script.h +++ b/include/script.h @@ -31,39 +31,16 @@ void ScriptCall(struct ScriptContext *ctx, const u8 *ptr); void ScriptReturn(struct ScriptContext *ctx); u16 ScriptReadHalfword(struct ScriptContext *ctx); u32 ScriptReadWord(struct ScriptContext *ctx); - -// Formerly ScriptContext2_Enable / Disable / IsEnabled - void LockPlayerFieldControls(void); void UnlockPlayerFieldControls(void); bool8 ArePlayerFieldControlsLocked(void); - -// Formerly ScriptContext1_*() -// The ScriptContext_* functions work with the primary script context, -// which yields control back to native code should the script make a wait call. - -// Re-initializes the global script context to zero. void ScriptContext_Init(void); -// Checks if the global script context is able to be run right now. bool8 ScriptContext_IsEnabled(void); -// Runs the script until the script makes a wait* call, then returns true if -// there's more script to run, or false if the script has hit the end. -// This function also returns false if the context is finished -// or waiting (after a call to _Stop) bool8 ScriptContext_RunScript(void); -// Sets up a new script in the global context and enables the context void ScriptContext_SetupScript(const u8 *ptr); -// Puts the script into waiting mode; usually called from a wait* script command. void ScriptContext_Stop(void); -// Puts the script into running mode. void ScriptContext_Enable(void); - -// Formerly ScriptContext2_RunNewScript() -// Sets up and runs a script in its own context immediately. The script will be -// finished when this function returns. Used mainly by all of the map header -// scripts (except the frame table scripts). void RunScriptImmediately(const u8 *ptr); - u8 *MapHeaderGetScriptTable(u8 tag); void MapHeaderRunScriptType(u8 tag); u8 *MapHeaderCheckScriptTable(u8 tag); diff --git a/src/script.c b/src/script.c index 231f59f07fef..484f8e96622a 100644 --- a/src/script.c +++ b/src/script.c @@ -194,6 +194,10 @@ bool8 ArePlayerFieldControlsLocked(void) return sLockFieldControls; } +// The ScriptContext_* functions work with the primary script context, +// which yields control back to native code should the script make a wait call. + +// Checks if the global script context is able to be run right now. bool8 ScriptContext_IsEnabled(void) { if (sGlobalScriptContextStatus == CONTEXT_RUNNING) @@ -202,12 +206,17 @@ bool8 ScriptContext_IsEnabled(void) return FALSE; } +// Re-initializes the global script context to zero. void ScriptContext_Init(void) { InitScriptContext(&sGlobalScriptContext, gScriptCmdTable, gScriptCmdTableEnd); sGlobalScriptContextStatus = CONTEXT_SHUTDOWN; } +// Runs the script until the script makes a wait* call, then returns true if +// there's more script to run, or false if the script has hit the end. +// This function also returns false if the context is finished +// or waiting (after a call to _Stop) bool8 ScriptContext_RunScript(void) { if (sGlobalScriptContextStatus == CONTEXT_SHUTDOWN) @@ -228,6 +237,7 @@ bool8 ScriptContext_RunScript(void) return TRUE; } +// Sets up a new script in the global context and enables the context void ScriptContext_SetupScript(const u8 *ptr) { InitScriptContext(&sGlobalScriptContext, gScriptCmdTable, gScriptCmdTableEnd); @@ -236,17 +246,22 @@ void ScriptContext_SetupScript(const u8 *ptr) sGlobalScriptContextStatus = CONTEXT_RUNNING; } +// Puts the script into waiting mode; usually called from a wait* script command. void ScriptContext_Stop(void) { sGlobalScriptContextStatus = CONTEXT_WAITING; } +// Puts the script into running mode. void ScriptContext_Enable(void) { sGlobalScriptContextStatus = CONTEXT_RUNNING; LockPlayerFieldControls(); } +// Sets up and runs a script in its own context immediately. The script will be +// finished when this function returns. Used mainly by all of the map header +// scripts (except the frame table scripts). void RunScriptImmediately(const u8 *ptr) { InitScriptContext(&sImmediateScriptContext, gScriptCmdTable, gScriptCmdTableEnd); From e8a05e92e476ad2e50dc1be235b549e332cda5fc Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 17:04:34 -0400 Subject: [PATCH 674/762] Corrected additional inconsistent uses of whitespace --- data/battle_ai_scripts.s | 1010 ++++++++--------- .../EverGrandeCity_ChampionsRoom/scripts.inc | 4 +- .../FortreeCity_DecorationShop/scripts.inc | 2 +- gflib/bg.h | 32 +- include/pokenav.h | 74 +- src/data/easy_chat/easy_chat_group_pokemon2.h | 502 ++++---- src/fonts.c | 64 +- src/rom_header.s | 20 +- src/roulette.c | 12 +- src/trainer_hill.c | 40 +- sym_common.txt | 36 +- 11 files changed, 898 insertions(+), 898 deletions(-) diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s index d856b926a299..c776c25327aa 100644 --- a/data/battle_ai_scripts.s +++ b/data/battle_ai_scripts.s @@ -850,46 +850,46 @@ AI_CV_MirrorMove_End: end AI_CV_MirrorMove_EncouragedMovesToMirror: - .2byte MOVE_SLEEP_POWDER - .2byte MOVE_LOVELY_KISS - .2byte MOVE_SPORE - .2byte MOVE_HYPNOSIS - .2byte MOVE_SING - .2byte MOVE_GRASS_WHISTLE - .2byte MOVE_SHADOW_PUNCH - .2byte MOVE_SAND_ATTACK - .2byte MOVE_SMOKESCREEN - .2byte MOVE_TOXIC - .2byte MOVE_GUILLOTINE - .2byte MOVE_HORN_DRILL - .2byte MOVE_FISSURE - .2byte MOVE_SHEER_COLD - .2byte MOVE_CROSS_CHOP - .2byte MOVE_AEROBLAST - .2byte MOVE_CONFUSE_RAY - .2byte MOVE_SWEET_KISS - .2byte MOVE_SCREECH - .2byte MOVE_COTTON_SPORE - .2byte MOVE_SCARY_FACE - .2byte MOVE_FAKE_TEARS - .2byte MOVE_METAL_SOUND - .2byte MOVE_THUNDER_WAVE - .2byte MOVE_GLARE - .2byte MOVE_POISON_POWDER - .2byte MOVE_SHADOW_BALL - .2byte MOVE_DYNAMIC_PUNCH - .2byte MOVE_HYPER_BEAM - .2byte MOVE_EXTREME_SPEED - .2byte MOVE_THIEF - .2byte MOVE_COVET - .2byte MOVE_ATTRACT - .2byte MOVE_SWAGGER - .2byte MOVE_TORMENT - .2byte MOVE_FLATTER - .2byte MOVE_TRICK - .2byte MOVE_SUPERPOWER - .2byte MOVE_SKILL_SWAP - .2byte -1 + .2byte MOVE_SLEEP_POWDER + .2byte MOVE_LOVELY_KISS + .2byte MOVE_SPORE + .2byte MOVE_HYPNOSIS + .2byte MOVE_SING + .2byte MOVE_GRASS_WHISTLE + .2byte MOVE_SHADOW_PUNCH + .2byte MOVE_SAND_ATTACK + .2byte MOVE_SMOKESCREEN + .2byte MOVE_TOXIC + .2byte MOVE_GUILLOTINE + .2byte MOVE_HORN_DRILL + .2byte MOVE_FISSURE + .2byte MOVE_SHEER_COLD + .2byte MOVE_CROSS_CHOP + .2byte MOVE_AEROBLAST + .2byte MOVE_CONFUSE_RAY + .2byte MOVE_SWEET_KISS + .2byte MOVE_SCREECH + .2byte MOVE_COTTON_SPORE + .2byte MOVE_SCARY_FACE + .2byte MOVE_FAKE_TEARS + .2byte MOVE_METAL_SOUND + .2byte MOVE_THUNDER_WAVE + .2byte MOVE_GLARE + .2byte MOVE_POISON_POWDER + .2byte MOVE_SHADOW_BALL + .2byte MOVE_DYNAMIC_PUNCH + .2byte MOVE_HYPER_BEAM + .2byte MOVE_EXTREME_SPEED + .2byte MOVE_THIEF + .2byte MOVE_COVET + .2byte MOVE_ATTRACT + .2byte MOVE_SWAGGER + .2byte MOVE_TORMENT + .2byte MOVE_FLATTER + .2byte MOVE_TRICK + .2byte MOVE_SUPERPOWER + .2byte MOVE_SKILL_SWAP + .2byte -1 AI_CV_AttackUp: if_stat_level_less_than AI_USER, STAT_ATK, 9, AI_CV_AttackUp2 @@ -940,16 +940,16 @@ AI_CV_DefenseUp_End: end AI_CV_DefenseUp_PhysicalTypes: - .byte TYPE_NORMAL - .byte TYPE_FIGHTING - .byte TYPE_POISON - .byte TYPE_GROUND - .byte TYPE_FLYING - .byte TYPE_ROCK - .byte TYPE_BUG - .byte TYPE_GHOST - .byte TYPE_STEEL - .byte -1 + .byte TYPE_NORMAL + .byte TYPE_FIGHTING + .byte TYPE_POISON + .byte TYPE_GROUND + .byte TYPE_FLYING + .byte TYPE_ROCK + .byte TYPE_BUG + .byte TYPE_GHOST + .byte TYPE_STEEL + .byte -1 AI_CV_SpeedUp: if_target_faster AI_CV_SpeedUp2 @@ -1011,16 +1011,16 @@ AI_CV_SpDefUp_End: end AI_CV_SpDefUp_PhysicalTypes: - .byte TYPE_NORMAL - .byte TYPE_FIGHTING - .byte TYPE_POISON - .byte TYPE_GROUND - .byte TYPE_FLYING - .byte TYPE_ROCK - .byte TYPE_BUG - .byte TYPE_GHOST - .byte TYPE_STEEL - .byte -1 + .byte TYPE_NORMAL + .byte TYPE_FIGHTING + .byte TYPE_POISON + .byte TYPE_GROUND + .byte TYPE_FLYING + .byte TYPE_ROCK + .byte TYPE_BUG + .byte TYPE_GHOST + .byte TYPE_STEEL + .byte -1 AI_CV_AccuracyUp: if_stat_level_less_than AI_USER, STAT_ACC, 9, AI_CV_AccuracyUp2 @@ -1108,13 +1108,13 @@ AI_CV_AttackDown_End: end AI_CV_AttackDown_UnknownTypeList: - .byte TYPE_NORMAL - .byte TYPE_FIGHTING - .byte TYPE_GROUND - .byte TYPE_ROCK - .byte TYPE_BUG - .byte TYPE_STEEL - .byte -1 + .byte TYPE_NORMAL + .byte TYPE_FIGHTING + .byte TYPE_GROUND + .byte TYPE_ROCK + .byte TYPE_BUG + .byte TYPE_STEEL + .byte -1 AI_CV_DefenseDown: if_hp_less_than AI_USER, 70, AI_CV_DefenseDown2 @@ -1168,15 +1168,15 @@ AI_CV_SpAtkDown_End: end AI_CV_SpAtkDown_SpecialTypeList: - .byte TYPE_FIRE - .byte TYPE_WATER - .byte TYPE_GRASS - .byte TYPE_ELECTRIC - .byte TYPE_PSYCHIC - .byte TYPE_ICE - .byte TYPE_DRAGON - .byte TYPE_DARK - .byte -1 + .byte TYPE_FIRE + .byte TYPE_WATER + .byte TYPE_GRASS + .byte TYPE_ELECTRIC + .byte TYPE_PSYCHIC + .byte TYPE_ICE + .byte TYPE_DRAGON + .byte TYPE_DARK + .byte -1 AI_CV_SpDefDown: if_hp_less_than AI_USER, 70, AI_CV_SpDefDown2 @@ -1378,15 +1378,15 @@ AI_CV_LightScreen_End: end AI_CV_LightScreen_SpecialTypeList: - .byte TYPE_FIRE - .byte TYPE_WATER - .byte TYPE_GRASS - .byte TYPE_ELECTRIC - .byte TYPE_PSYCHIC - .byte TYPE_ICE - .byte TYPE_DRAGON - .byte TYPE_DARK - .byte -1 + .byte TYPE_FIRE + .byte TYPE_WATER + .byte TYPE_GRASS + .byte TYPE_ELECTRIC + .byte TYPE_PSYCHIC + .byte TYPE_ICE + .byte TYPE_DRAGON + .byte TYPE_DARK + .byte -1 AI_CV_Rest: if_target_faster AI_CV_Rest4 @@ -1497,16 +1497,16 @@ AI_CV_Reflect_End: end AI_CV_Reflect_PhysicalTypeList: - .byte TYPE_NORMAL - .byte TYPE_FIGHTING - .byte TYPE_FLYING - .byte TYPE_POISON - .byte TYPE_GROUND - .byte TYPE_ROCK - .byte TYPE_BUG - .byte TYPE_GHOST - .byte TYPE_STEEL - .byte -1 + .byte TYPE_NORMAL + .byte TYPE_FIGHTING + .byte TYPE_FLYING + .byte TYPE_POISON + .byte TYPE_GROUND + .byte TYPE_ROCK + .byte TYPE_BUG + .byte TYPE_GHOST + .byte TYPE_STEEL + .byte -1 AI_CV_Poison: if_hp_less_than AI_USER, 50, AI_CV_Poison_ScoreDown1 @@ -1657,16 +1657,16 @@ AI_CV_Counter_End: end AI_CV_Counter_PhysicalTypeList: - .byte TYPE_NORMAL - .byte TYPE_FIGHTING - .byte TYPE_FLYING - .byte TYPE_POISON - .byte TYPE_GROUND - .byte TYPE_ROCK - .byte TYPE_BUG - .byte TYPE_GHOST - .byte TYPE_STEEL - .byte -1 + .byte TYPE_NORMAL + .byte TYPE_FIGHTING + .byte TYPE_FLYING + .byte TYPE_POISON + .byte TYPE_GROUND + .byte TYPE_ROCK + .byte TYPE_BUG + .byte TYPE_GHOST + .byte TYPE_STEEL + .byte -1 AI_CV_Encore: if_any_move_disabled AI_TARGET, AI_CV_Encore2 @@ -1685,69 +1685,69 @@ AI_CV_Encore_End: end AI_CV_Encore_EncouragedMovesToEncore: - .byte EFFECT_DREAM_EATER - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_HAZE - .byte EFFECT_ROAR - .byte EFFECT_CONVERSION - .byte EFFECT_TOXIC - .byte EFFECT_LIGHT_SCREEN - .byte EFFECT_REST - .byte EFFECT_SUPER_FANG - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_CONFUSE - .byte EFFECT_POISON - .byte EFFECT_PARALYZE - .byte EFFECT_LEECH_SEED - .byte EFFECT_SPLASH - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_ENCORE - .byte EFFECT_CONVERSION_2 - .byte EFFECT_LOCK_ON - .byte EFFECT_HEAL_BELL - .byte EFFECT_MEAN_LOOK - .byte EFFECT_NIGHTMARE - .byte EFFECT_PROTECT - .byte EFFECT_SKILL_SWAP - .byte EFFECT_FORESIGHT - .byte EFFECT_PERISH_SONG - .byte EFFECT_SANDSTORM - .byte EFFECT_ENDURE - .byte EFFECT_SWAGGER - .byte EFFECT_ATTRACT - .byte EFFECT_SAFEGUARD - .byte EFFECT_RAIN_DANCE - .byte EFFECT_SUNNY_DAY - .byte EFFECT_BELLY_DRUM - .byte EFFECT_PSYCH_UP - .byte EFFECT_FUTURE_SIGHT - .byte EFFECT_FAKE_OUT - .byte EFFECT_STOCKPILE - .byte EFFECT_SPIT_UP - .byte EFFECT_SWALLOW - .byte EFFECT_HAIL - .byte EFFECT_TORMENT - .byte EFFECT_WILL_O_WISP - .byte EFFECT_FOLLOW_ME - .byte EFFECT_CHARGE - .byte EFFECT_TRICK - .byte EFFECT_ROLE_PLAY - .byte EFFECT_INGRAIN - .byte EFFECT_RECYCLE - .byte EFFECT_KNOCK_OFF - .byte EFFECT_SKILL_SWAP - .byte EFFECT_IMPRISON - .byte EFFECT_REFRESH - .byte EFFECT_GRUDGE - .byte EFFECT_TEETER_DANCE - .byte EFFECT_MUD_SPORT - .byte EFFECT_WATER_SPORT - .byte EFFECT_DRAGON_DANCE - .byte EFFECT_CAMOUFLAGE - .byte -1 + .byte EFFECT_DREAM_EATER + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_HAZE + .byte EFFECT_ROAR + .byte EFFECT_CONVERSION + .byte EFFECT_TOXIC + .byte EFFECT_LIGHT_SCREEN + .byte EFFECT_REST + .byte EFFECT_SUPER_FANG + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_CONFUSE + .byte EFFECT_POISON + .byte EFFECT_PARALYZE + .byte EFFECT_LEECH_SEED + .byte EFFECT_SPLASH + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_ENCORE + .byte EFFECT_CONVERSION_2 + .byte EFFECT_LOCK_ON + .byte EFFECT_HEAL_BELL + .byte EFFECT_MEAN_LOOK + .byte EFFECT_NIGHTMARE + .byte EFFECT_PROTECT + .byte EFFECT_SKILL_SWAP + .byte EFFECT_FORESIGHT + .byte EFFECT_PERISH_SONG + .byte EFFECT_SANDSTORM + .byte EFFECT_ENDURE + .byte EFFECT_SWAGGER + .byte EFFECT_ATTRACT + .byte EFFECT_SAFEGUARD + .byte EFFECT_RAIN_DANCE + .byte EFFECT_SUNNY_DAY + .byte EFFECT_BELLY_DRUM + .byte EFFECT_PSYCH_UP + .byte EFFECT_FUTURE_SIGHT + .byte EFFECT_FAKE_OUT + .byte EFFECT_STOCKPILE + .byte EFFECT_SPIT_UP + .byte EFFECT_SWALLOW + .byte EFFECT_HAIL + .byte EFFECT_TORMENT + .byte EFFECT_WILL_O_WISP + .byte EFFECT_FOLLOW_ME + .byte EFFECT_CHARGE + .byte EFFECT_TRICK + .byte EFFECT_ROLE_PLAY + .byte EFFECT_INGRAIN + .byte EFFECT_RECYCLE + .byte EFFECT_KNOCK_OFF + .byte EFFECT_SKILL_SWAP + .byte EFFECT_IMPRISON + .byte EFFECT_REFRESH + .byte EFFECT_GRUDGE + .byte EFFECT_TEETER_DANCE + .byte EFFECT_MUD_SPORT + .byte EFFECT_WATER_SPORT + .byte EFFECT_DRAGON_DANCE + .byte EFFECT_CAMOUFLAGE + .byte -1 AI_CV_PainSplit: if_hp_less_than AI_TARGET, 80, AI_CV_PainSplit_ScoreDown1 @@ -1842,14 +1842,14 @@ AI_CV_Thief_End: end AI_CV_Thief_EncourageItemsToSteal: - .byte HOLD_EFFECT_CURE_SLP - .byte HOLD_EFFECT_CURE_STATUS - .byte HOLD_EFFECT_RESTORE_HP - .byte HOLD_EFFECT_EVASION_UP - .byte HOLD_EFFECT_LEFTOVERS - .byte HOLD_EFFECT_LIGHT_BALL - .byte HOLD_EFFECT_THICK_CLUB - .byte -1 + .byte HOLD_EFFECT_CURE_SLP + .byte HOLD_EFFECT_CURE_STATUS + .byte HOLD_EFFECT_RESTORE_HP + .byte HOLD_EFFECT_EVASION_UP + .byte HOLD_EFFECT_LEFTOVERS + .byte HOLD_EFFECT_LIGHT_BALL + .byte HOLD_EFFECT_THICK_CLUB + .byte -1 AI_CV_Curse: get_user_type1 @@ -2144,15 +2144,15 @@ AI_CV_MirrorCoat_End: end AI_CV_MirrorCoat_SpecialTypeList: - .byte TYPE_FIRE - .byte TYPE_WATER - .byte TYPE_GRASS - .byte TYPE_ELECTRIC - .byte TYPE_PSYCHIC - .byte TYPE_ICE - .byte TYPE_DRAGON - .byte TYPE_DARK - .byte -1 + .byte TYPE_FIRE + .byte TYPE_WATER + .byte TYPE_GRASS + .byte TYPE_ELECTRIC + .byte TYPE_PSYCHIC + .byte TYPE_ICE + .byte TYPE_DRAGON + .byte TYPE_DARK + .byte -1 AI_CV_ChargeUpMove: if_type_effectiveness AI_EFFECTIVENESS_x0_25, AI_CV_ChargeUpMove_ScoreDown2 @@ -2214,10 +2214,10 @@ AI_CV_SemiInvulnerable_End: end AI_CV_SandstormResistantTypes: - .byte TYPE_GROUND - .byte TYPE_ROCK - .byte TYPE_STEEL - .byte -1 + .byte TYPE_GROUND + .byte TYPE_ROCK + .byte TYPE_STEEL + .byte -1 AI_CV_FakeOut: score +2 @@ -2315,18 +2315,18 @@ AI_CV_Trick_End: end AI_CV_Trick_EffectsToEncourage: - .byte HOLD_EFFECT_CONFUSE_SPICY - .byte HOLD_EFFECT_CONFUSE_DRY - .byte HOLD_EFFECT_CONFUSE_SWEET - .byte HOLD_EFFECT_CONFUSE_BITTER - .byte HOLD_EFFECT_CONFUSE_SOUR - .byte HOLD_EFFECT_MACHO_BRACE - .byte HOLD_EFFECT_CHOICE_BAND - .byte -1 + .byte HOLD_EFFECT_CONFUSE_SPICY + .byte HOLD_EFFECT_CONFUSE_DRY + .byte HOLD_EFFECT_CONFUSE_SWEET + .byte HOLD_EFFECT_CONFUSE_BITTER + .byte HOLD_EFFECT_CONFUSE_SOUR + .byte HOLD_EFFECT_MACHO_BRACE + .byte HOLD_EFFECT_CHOICE_BAND + .byte -1 AI_CV_Trick_EffectsToEncourage2: - .byte HOLD_EFFECT_CHOICE_BAND - .byte -1 + .byte HOLD_EFFECT_CHOICE_BAND + .byte -1 AI_CV_ChangeSelfAbility: get_ability AI_USER @@ -2344,23 +2344,23 @@ AI_CV_ChangeSelfAbility_End: end AI_CV_ChangeSelfAbility_AbilitiesToEncourage: - .byte ABILITY_SPEED_BOOST - .byte ABILITY_BATTLE_ARMOR - .byte ABILITY_SAND_VEIL - .byte ABILITY_STATIC - .byte ABILITY_FLASH_FIRE - .byte ABILITY_WONDER_GUARD - .byte ABILITY_EFFECT_SPORE - .byte ABILITY_SWIFT_SWIM - .byte ABILITY_HUGE_POWER - .byte ABILITY_RAIN_DISH - .byte ABILITY_CUTE_CHARM - .byte ABILITY_SHED_SKIN - .byte ABILITY_MARVEL_SCALE - .byte ABILITY_PURE_POWER - .byte ABILITY_CHLOROPHYLL - .byte ABILITY_SHIELD_DUST - .byte -1 + .byte ABILITY_SPEED_BOOST + .byte ABILITY_BATTLE_ARMOR + .byte ABILITY_SAND_VEIL + .byte ABILITY_STATIC + .byte ABILITY_FLASH_FIRE + .byte ABILITY_WONDER_GUARD + .byte ABILITY_EFFECT_SPORE + .byte ABILITY_SWIFT_SWIM + .byte ABILITY_HUGE_POWER + .byte ABILITY_RAIN_DISH + .byte ABILITY_CUTE_CHARM + .byte ABILITY_SHED_SKIN + .byte ABILITY_MARVEL_SCALE + .byte ABILITY_PURE_POWER + .byte ABILITY_CHLOROPHYLL + .byte ABILITY_SHIELD_DUST + .byte -1 AI_CV_Superpower: if_type_effectiveness AI_EFFECTIVENESS_x0_25, AI_CV_Superpower_ScoreDown1 @@ -2409,10 +2409,10 @@ AI_CV_Recycle_End: end AI_CV_Recycle_ItemsToEncourage: - .byte ITEM_CHESTO_BERRY - .byte ITEM_LUM_BERRY - .byte ITEM_STARF_BERRY - .byte -1 + .byte ITEM_CHESTO_BERRY + .byte ITEM_LUM_BERRY + .byte ITEM_STARF_BERRY + .byte -1 AI_CV_Revenge: if_status AI_TARGET, STATUS1_SLEEP, AI_CV_Revenge_ScoreDown2 @@ -2620,62 +2620,62 @@ AI_SetupFirstTurn_End: end AI_SetupFirstTurn_SetupEffectsToEncourage: - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_SPECIAL_DEFENSE_UP - .byte EFFECT_ACCURACY_UP - .byte EFFECT_EVASION_UP - .byte EFFECT_ATTACK_DOWN - .byte EFFECT_DEFENSE_DOWN - .byte EFFECT_SPEED_DOWN - .byte EFFECT_SPECIAL_ATTACK_DOWN - .byte EFFECT_SPECIAL_DEFENSE_DOWN - .byte EFFECT_ACCURACY_DOWN - .byte EFFECT_EVASION_DOWN - .byte EFFECT_CONVERSION - .byte EFFECT_LIGHT_SCREEN - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_FOCUS_ENERGY - .byte EFFECT_CONFUSE - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_DEFENSE_UP_2 - .byte EFFECT_SPEED_UP_2 - .byte EFFECT_SPECIAL_ATTACK_UP_2 - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_ACCURACY_UP_2 - .byte EFFECT_EVASION_UP_2 - .byte EFFECT_ATTACK_DOWN_2 - .byte EFFECT_DEFENSE_DOWN_2 - .byte EFFECT_SPEED_DOWN_2 - .byte EFFECT_SPECIAL_ATTACK_DOWN_2 - .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 - .byte EFFECT_ACCURACY_DOWN_2 - .byte EFFECT_EVASION_DOWN_2 - .byte EFFECT_REFLECT - .byte EFFECT_POISON - .byte EFFECT_PARALYZE - .byte EFFECT_SUBSTITUTE - .byte EFFECT_LEECH_SEED - .byte EFFECT_MINIMIZE - .byte EFFECT_CURSE - .byte EFFECT_SWAGGER - .byte EFFECT_CAMOUFLAGE - .byte EFFECT_YAWN - .byte EFFECT_DEFENSE_CURL - .byte EFFECT_TORMENT - .byte EFFECT_FLATTER - .byte EFFECT_WILL_O_WISP - .byte EFFECT_INGRAIN - .byte EFFECT_IMPRISON - .byte EFFECT_TEETER_DANCE - .byte EFFECT_TICKLE - .byte EFFECT_COSMIC_POWER - .byte EFFECT_BULK_UP - .byte EFFECT_CALM_MIND - .byte EFFECT_CAMOUFLAGE - .byte -1 + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_SPECIAL_DEFENSE_UP + .byte EFFECT_ACCURACY_UP + .byte EFFECT_EVASION_UP + .byte EFFECT_ATTACK_DOWN + .byte EFFECT_DEFENSE_DOWN + .byte EFFECT_SPEED_DOWN + .byte EFFECT_SPECIAL_ATTACK_DOWN + .byte EFFECT_SPECIAL_DEFENSE_DOWN + .byte EFFECT_ACCURACY_DOWN + .byte EFFECT_EVASION_DOWN + .byte EFFECT_CONVERSION + .byte EFFECT_LIGHT_SCREEN + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_FOCUS_ENERGY + .byte EFFECT_CONFUSE + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_DEFENSE_UP_2 + .byte EFFECT_SPEED_UP_2 + .byte EFFECT_SPECIAL_ATTACK_UP_2 + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_ACCURACY_UP_2 + .byte EFFECT_EVASION_UP_2 + .byte EFFECT_ATTACK_DOWN_2 + .byte EFFECT_DEFENSE_DOWN_2 + .byte EFFECT_SPEED_DOWN_2 + .byte EFFECT_SPECIAL_ATTACK_DOWN_2 + .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 + .byte EFFECT_ACCURACY_DOWN_2 + .byte EFFECT_EVASION_DOWN_2 + .byte EFFECT_REFLECT + .byte EFFECT_POISON + .byte EFFECT_PARALYZE + .byte EFFECT_SUBSTITUTE + .byte EFFECT_LEECH_SEED + .byte EFFECT_MINIMIZE + .byte EFFECT_CURSE + .byte EFFECT_SWAGGER + .byte EFFECT_CAMOUFLAGE + .byte EFFECT_YAWN + .byte EFFECT_DEFENSE_CURL + .byte EFFECT_TORMENT + .byte EFFECT_FLATTER + .byte EFFECT_WILL_O_WISP + .byte EFFECT_INGRAIN + .byte EFFECT_IMPRISON + .byte EFFECT_TEETER_DANCE + .byte EFFECT_TICKLE + .byte EFFECT_COSMIC_POWER + .byte EFFECT_BULK_UP + .byte EFFECT_CALM_MIND + .byte EFFECT_CAMOUFLAGE + .byte -1 @ ~60% chance to prefer moves that do 0 or 1 damage, or are in sIgnoredPowerfulMoveEffects @ Oddly this group includes moves like Explosion and Eruption, so the AI strategy isn't very coherent @@ -2698,26 +2698,26 @@ AI_Risky_End: end AI_Risky_EffectsToEncourage: - .byte EFFECT_SLEEP - .byte EFFECT_EXPLOSION - .byte EFFECT_MIRROR_MOVE - .byte EFFECT_OHKO - .byte EFFECT_HIGH_CRITICAL - .byte EFFECT_CONFUSE - .byte EFFECT_METRONOME - .byte EFFECT_PSYWAVE - .byte EFFECT_COUNTER - .byte EFFECT_DESTINY_BOND - .byte EFFECT_SWAGGER - .byte EFFECT_ATTRACT - .byte EFFECT_PRESENT - .byte EFFECT_ALL_STATS_UP_HIT - .byte EFFECT_BELLY_DRUM - .byte EFFECT_MIRROR_COAT - .byte EFFECT_FOCUS_PUNCH - .byte EFFECT_REVENGE - .byte EFFECT_TEETER_DANCE - .byte -1 + .byte EFFECT_SLEEP + .byte EFFECT_EXPLOSION + .byte EFFECT_MIRROR_MOVE + .byte EFFECT_OHKO + .byte EFFECT_HIGH_CRITICAL + .byte EFFECT_CONFUSE + .byte EFFECT_METRONOME + .byte EFFECT_PSYWAVE + .byte EFFECT_COUNTER + .byte EFFECT_DESTINY_BOND + .byte EFFECT_SWAGGER + .byte EFFECT_ATTRACT + .byte EFFECT_PRESENT + .byte EFFECT_ALL_STATS_UP_HIT + .byte EFFECT_BELLY_DRUM + .byte EFFECT_MIRROR_COAT + .byte EFFECT_FOCUS_PUNCH + .byte EFFECT_REVENGE + .byte EFFECT_TEETER_DANCE + .byte -1 AI_PreferBatonPass: if_target_is_ally AI_Ret @@ -2748,9 +2748,9 @@ AI_PreferBatonPass_End: end sMovesTable_ProtectMoves: - .2byte MOVE_PROTECT - .2byte MOVE_DETECT - .2byte -1 + .2byte MOVE_PROTECT + .2byte MOVE_DETECT + .2byte -1 AI_PreferBatonPass_EncourageIfHighStats: get_turn_count @@ -2950,222 +2950,222 @@ AI_HPAware_End: end AI_HPAware_DiscouragedEffectsWhenHighHP: - .byte EFFECT_EXPLOSION - .byte EFFECT_RESTORE_HP - .byte EFFECT_REST - .byte EFFECT_DESTINY_BOND - .byte EFFECT_FLAIL - .byte EFFECT_ENDURE - .byte EFFECT_MORNING_SUN - .byte EFFECT_SYNTHESIS - .byte EFFECT_MOONLIGHT - .byte EFFECT_SOFTBOILED - .byte EFFECT_MEMENTO - .byte EFFECT_GRUDGE - .byte EFFECT_OVERHEAT - .byte -1 + .byte EFFECT_EXPLOSION + .byte EFFECT_RESTORE_HP + .byte EFFECT_REST + .byte EFFECT_DESTINY_BOND + .byte EFFECT_FLAIL + .byte EFFECT_ENDURE + .byte EFFECT_MORNING_SUN + .byte EFFECT_SYNTHESIS + .byte EFFECT_MOONLIGHT + .byte EFFECT_SOFTBOILED + .byte EFFECT_MEMENTO + .byte EFFECT_GRUDGE + .byte EFFECT_OVERHEAT + .byte -1 AI_HPAware_DiscouragedEffectsWhenMediumHP: - .byte EFFECT_EXPLOSION - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_SPECIAL_DEFENSE_UP - .byte EFFECT_ACCURACY_UP - .byte EFFECT_EVASION_UP - .byte EFFECT_ATTACK_DOWN - .byte EFFECT_DEFENSE_DOWN - .byte EFFECT_SPEED_DOWN - .byte EFFECT_SPECIAL_ATTACK_DOWN - .byte EFFECT_SPECIAL_DEFENSE_DOWN - .byte EFFECT_ACCURACY_DOWN - .byte EFFECT_EVASION_DOWN - .byte EFFECT_BIDE - .byte EFFECT_CONVERSION - .byte EFFECT_LIGHT_SCREEN - .byte EFFECT_MIST - .byte EFFECT_FOCUS_ENERGY - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_DEFENSE_UP_2 - .byte EFFECT_SPEED_UP_2 - .byte EFFECT_SPECIAL_ATTACK_UP_2 - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_ACCURACY_UP_2 - .byte EFFECT_EVASION_UP_2 - .byte EFFECT_ATTACK_DOWN_2 - .byte EFFECT_DEFENSE_DOWN_2 - .byte EFFECT_SPEED_DOWN_2 - .byte EFFECT_SPECIAL_ATTACK_DOWN_2 - .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 - .byte EFFECT_ACCURACY_DOWN_2 - .byte EFFECT_EVASION_DOWN_2 - .byte EFFECT_CONVERSION_2 - .byte EFFECT_SAFEGUARD - .byte EFFECT_BELLY_DRUM - .byte EFFECT_TICKLE - .byte EFFECT_COSMIC_POWER - .byte EFFECT_BULK_UP - .byte EFFECT_CALM_MIND - .byte EFFECT_DRAGON_DANCE - .byte -1 + .byte EFFECT_EXPLOSION + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_SPECIAL_DEFENSE_UP + .byte EFFECT_ACCURACY_UP + .byte EFFECT_EVASION_UP + .byte EFFECT_ATTACK_DOWN + .byte EFFECT_DEFENSE_DOWN + .byte EFFECT_SPEED_DOWN + .byte EFFECT_SPECIAL_ATTACK_DOWN + .byte EFFECT_SPECIAL_DEFENSE_DOWN + .byte EFFECT_ACCURACY_DOWN + .byte EFFECT_EVASION_DOWN + .byte EFFECT_BIDE + .byte EFFECT_CONVERSION + .byte EFFECT_LIGHT_SCREEN + .byte EFFECT_MIST + .byte EFFECT_FOCUS_ENERGY + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_DEFENSE_UP_2 + .byte EFFECT_SPEED_UP_2 + .byte EFFECT_SPECIAL_ATTACK_UP_2 + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_ACCURACY_UP_2 + .byte EFFECT_EVASION_UP_2 + .byte EFFECT_ATTACK_DOWN_2 + .byte EFFECT_DEFENSE_DOWN_2 + .byte EFFECT_SPEED_DOWN_2 + .byte EFFECT_SPECIAL_ATTACK_DOWN_2 + .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 + .byte EFFECT_ACCURACY_DOWN_2 + .byte EFFECT_EVASION_DOWN_2 + .byte EFFECT_CONVERSION_2 + .byte EFFECT_SAFEGUARD + .byte EFFECT_BELLY_DRUM + .byte EFFECT_TICKLE + .byte EFFECT_COSMIC_POWER + .byte EFFECT_BULK_UP + .byte EFFECT_CALM_MIND + .byte EFFECT_DRAGON_DANCE + .byte -1 AI_HPAware_DiscouragedEffectsWhenLowHP: - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_SPECIAL_DEFENSE_UP - .byte EFFECT_ACCURACY_UP - .byte EFFECT_EVASION_UP - .byte EFFECT_ATTACK_DOWN - .byte EFFECT_DEFENSE_DOWN - .byte EFFECT_SPEED_DOWN - .byte EFFECT_SPECIAL_ATTACK_DOWN - .byte EFFECT_SPECIAL_DEFENSE_DOWN - .byte EFFECT_ACCURACY_DOWN - .byte EFFECT_EVASION_DOWN - .byte EFFECT_BIDE - .byte EFFECT_CONVERSION - .byte EFFECT_LIGHT_SCREEN - .byte EFFECT_MIST - .byte EFFECT_FOCUS_ENERGY - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_DEFENSE_UP_2 - .byte EFFECT_SPEED_UP_2 - .byte EFFECT_SPECIAL_ATTACK_UP_2 - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_ACCURACY_UP_2 - .byte EFFECT_EVASION_UP_2 - .byte EFFECT_ATTACK_DOWN_2 - .byte EFFECT_DEFENSE_DOWN_2 - .byte EFFECT_SPEED_DOWN_2 - .byte EFFECT_SPECIAL_ATTACK_DOWN_2 - .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 - .byte EFFECT_ACCURACY_DOWN_2 - .byte EFFECT_EVASION_DOWN_2 - .byte EFFECT_RAGE - .byte EFFECT_CONVERSION_2 - .byte EFFECT_LOCK_ON - .byte EFFECT_SAFEGUARD - .byte EFFECT_BELLY_DRUM - .byte EFFECT_PSYCH_UP - .byte EFFECT_MIRROR_COAT - .byte EFFECT_SOLAR_BEAM - .byte EFFECT_ERUPTION - .byte EFFECT_TICKLE - .byte EFFECT_COSMIC_POWER - .byte EFFECT_BULK_UP - .byte EFFECT_CALM_MIND - .byte EFFECT_DRAGON_DANCE - .byte -1 + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_SPECIAL_DEFENSE_UP + .byte EFFECT_ACCURACY_UP + .byte EFFECT_EVASION_UP + .byte EFFECT_ATTACK_DOWN + .byte EFFECT_DEFENSE_DOWN + .byte EFFECT_SPEED_DOWN + .byte EFFECT_SPECIAL_ATTACK_DOWN + .byte EFFECT_SPECIAL_DEFENSE_DOWN + .byte EFFECT_ACCURACY_DOWN + .byte EFFECT_EVASION_DOWN + .byte EFFECT_BIDE + .byte EFFECT_CONVERSION + .byte EFFECT_LIGHT_SCREEN + .byte EFFECT_MIST + .byte EFFECT_FOCUS_ENERGY + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_DEFENSE_UP_2 + .byte EFFECT_SPEED_UP_2 + .byte EFFECT_SPECIAL_ATTACK_UP_2 + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_ACCURACY_UP_2 + .byte EFFECT_EVASION_UP_2 + .byte EFFECT_ATTACK_DOWN_2 + .byte EFFECT_DEFENSE_DOWN_2 + .byte EFFECT_SPEED_DOWN_2 + .byte EFFECT_SPECIAL_ATTACK_DOWN_2 + .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 + .byte EFFECT_ACCURACY_DOWN_2 + .byte EFFECT_EVASION_DOWN_2 + .byte EFFECT_RAGE + .byte EFFECT_CONVERSION_2 + .byte EFFECT_LOCK_ON + .byte EFFECT_SAFEGUARD + .byte EFFECT_BELLY_DRUM + .byte EFFECT_PSYCH_UP + .byte EFFECT_MIRROR_COAT + .byte EFFECT_SOLAR_BEAM + .byte EFFECT_ERUPTION + .byte EFFECT_TICKLE + .byte EFFECT_COSMIC_POWER + .byte EFFECT_BULK_UP + .byte EFFECT_CALM_MIND + .byte EFFECT_DRAGON_DANCE + .byte -1 AI_HPAware_DiscouragedEffectsWhenTargetHighHP: - .byte -1 + .byte -1 AI_HPAware_DiscouragedEffectsWhenTargetMediumHP: - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_SPECIAL_DEFENSE_UP - .byte EFFECT_ACCURACY_UP - .byte EFFECT_EVASION_UP - .byte EFFECT_ATTACK_DOWN - .byte EFFECT_DEFENSE_DOWN - .byte EFFECT_SPEED_DOWN - .byte EFFECT_SPECIAL_ATTACK_DOWN - .byte EFFECT_SPECIAL_DEFENSE_DOWN - .byte EFFECT_ACCURACY_DOWN - .byte EFFECT_EVASION_DOWN - .byte EFFECT_MIST - .byte EFFECT_FOCUS_ENERGY - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_DEFENSE_UP_2 - .byte EFFECT_SPEED_UP_2 - .byte EFFECT_SPECIAL_ATTACK_UP_2 - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_ACCURACY_UP_2 - .byte EFFECT_EVASION_UP_2 - .byte EFFECT_ATTACK_DOWN_2 - .byte EFFECT_DEFENSE_DOWN_2 - .byte EFFECT_SPEED_DOWN_2 - .byte EFFECT_SPECIAL_ATTACK_DOWN_2 - .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 - .byte EFFECT_ACCURACY_DOWN_2 - .byte EFFECT_EVASION_DOWN_2 - .byte EFFECT_POISON - .byte EFFECT_PAIN_SPLIT - .byte EFFECT_PERISH_SONG - .byte EFFECT_SAFEGUARD - .byte EFFECT_TICKLE - .byte EFFECT_COSMIC_POWER - .byte EFFECT_BULK_UP - .byte EFFECT_CALM_MIND - .byte EFFECT_DRAGON_DANCE - .byte -1 + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_SPECIAL_DEFENSE_UP + .byte EFFECT_ACCURACY_UP + .byte EFFECT_EVASION_UP + .byte EFFECT_ATTACK_DOWN + .byte EFFECT_DEFENSE_DOWN + .byte EFFECT_SPEED_DOWN + .byte EFFECT_SPECIAL_ATTACK_DOWN + .byte EFFECT_SPECIAL_DEFENSE_DOWN + .byte EFFECT_ACCURACY_DOWN + .byte EFFECT_EVASION_DOWN + .byte EFFECT_MIST + .byte EFFECT_FOCUS_ENERGY + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_DEFENSE_UP_2 + .byte EFFECT_SPEED_UP_2 + .byte EFFECT_SPECIAL_ATTACK_UP_2 + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_ACCURACY_UP_2 + .byte EFFECT_EVASION_UP_2 + .byte EFFECT_ATTACK_DOWN_2 + .byte EFFECT_DEFENSE_DOWN_2 + .byte EFFECT_SPEED_DOWN_2 + .byte EFFECT_SPECIAL_ATTACK_DOWN_2 + .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 + .byte EFFECT_ACCURACY_DOWN_2 + .byte EFFECT_EVASION_DOWN_2 + .byte EFFECT_POISON + .byte EFFECT_PAIN_SPLIT + .byte EFFECT_PERISH_SONG + .byte EFFECT_SAFEGUARD + .byte EFFECT_TICKLE + .byte EFFECT_COSMIC_POWER + .byte EFFECT_BULK_UP + .byte EFFECT_CALM_MIND + .byte EFFECT_DRAGON_DANCE + .byte -1 AI_HPAware_DiscouragedEffectsWhenTargetLowHP: - .byte EFFECT_SLEEP - .byte EFFECT_EXPLOSION - .byte EFFECT_ATTACK_UP - .byte EFFECT_DEFENSE_UP - .byte EFFECT_SPEED_UP - .byte EFFECT_SPECIAL_ATTACK_UP - .byte EFFECT_SPECIAL_DEFENSE_UP - .byte EFFECT_ACCURACY_UP - .byte EFFECT_EVASION_UP - .byte EFFECT_ATTACK_DOWN - .byte EFFECT_DEFENSE_DOWN - .byte EFFECT_SPEED_DOWN - .byte EFFECT_SPECIAL_ATTACK_DOWN - .byte EFFECT_SPECIAL_DEFENSE_DOWN - .byte EFFECT_ACCURACY_DOWN - .byte EFFECT_EVASION_DOWN - .byte EFFECT_BIDE - .byte EFFECT_CONVERSION - .byte EFFECT_TOXIC - .byte EFFECT_LIGHT_SCREEN - .byte EFFECT_OHKO - .byte EFFECT_SUPER_FANG //Maybe supposed to be EFFECT_RAZOR_WIND - .byte EFFECT_SUPER_FANG - .byte EFFECT_MIST - .byte EFFECT_FOCUS_ENERGY - .byte EFFECT_CONFUSE - .byte EFFECT_ATTACK_UP_2 - .byte EFFECT_DEFENSE_UP_2 - .byte EFFECT_SPEED_UP_2 - .byte EFFECT_SPECIAL_ATTACK_UP_2 - .byte EFFECT_SPECIAL_DEFENSE_UP_2 - .byte EFFECT_ACCURACY_UP_2 - .byte EFFECT_EVASION_UP_2 - .byte EFFECT_ATTACK_DOWN_2 - .byte EFFECT_DEFENSE_DOWN_2 - .byte EFFECT_SPEED_DOWN_2 - .byte EFFECT_SPECIAL_ATTACK_DOWN_2 - .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 - .byte EFFECT_ACCURACY_DOWN_2 - .byte EFFECT_EVASION_DOWN_2 - .byte EFFECT_POISON - .byte EFFECT_PARALYZE - .byte EFFECT_PAIN_SPLIT - .byte EFFECT_CONVERSION_2 - .byte EFFECT_LOCK_ON - .byte EFFECT_SPITE - .byte EFFECT_PERISH_SONG - .byte EFFECT_SWAGGER - .byte EFFECT_FURY_CUTTER - .byte EFFECT_ATTRACT - .byte EFFECT_SAFEGUARD - .byte EFFECT_PSYCH_UP - .byte EFFECT_MIRROR_COAT - .byte EFFECT_WILL_O_WISP - .byte EFFECT_TICKLE - .byte EFFECT_COSMIC_POWER - .byte EFFECT_BULK_UP - .byte EFFECT_CALM_MIND - .byte EFFECT_DRAGON_DANCE - .byte -1 + .byte EFFECT_SLEEP + .byte EFFECT_EXPLOSION + .byte EFFECT_ATTACK_UP + .byte EFFECT_DEFENSE_UP + .byte EFFECT_SPEED_UP + .byte EFFECT_SPECIAL_ATTACK_UP + .byte EFFECT_SPECIAL_DEFENSE_UP + .byte EFFECT_ACCURACY_UP + .byte EFFECT_EVASION_UP + .byte EFFECT_ATTACK_DOWN + .byte EFFECT_DEFENSE_DOWN + .byte EFFECT_SPEED_DOWN + .byte EFFECT_SPECIAL_ATTACK_DOWN + .byte EFFECT_SPECIAL_DEFENSE_DOWN + .byte EFFECT_ACCURACY_DOWN + .byte EFFECT_EVASION_DOWN + .byte EFFECT_BIDE + .byte EFFECT_CONVERSION + .byte EFFECT_TOXIC + .byte EFFECT_LIGHT_SCREEN + .byte EFFECT_OHKO + .byte EFFECT_SUPER_FANG //Maybe supposed to be EFFECT_RAZOR_WIND + .byte EFFECT_SUPER_FANG + .byte EFFECT_MIST + .byte EFFECT_FOCUS_ENERGY + .byte EFFECT_CONFUSE + .byte EFFECT_ATTACK_UP_2 + .byte EFFECT_DEFENSE_UP_2 + .byte EFFECT_SPEED_UP_2 + .byte EFFECT_SPECIAL_ATTACK_UP_2 + .byte EFFECT_SPECIAL_DEFENSE_UP_2 + .byte EFFECT_ACCURACY_UP_2 + .byte EFFECT_EVASION_UP_2 + .byte EFFECT_ATTACK_DOWN_2 + .byte EFFECT_DEFENSE_DOWN_2 + .byte EFFECT_SPEED_DOWN_2 + .byte EFFECT_SPECIAL_ATTACK_DOWN_2 + .byte EFFECT_SPECIAL_DEFENSE_DOWN_2 + .byte EFFECT_ACCURACY_DOWN_2 + .byte EFFECT_EVASION_DOWN_2 + .byte EFFECT_POISON + .byte EFFECT_PARALYZE + .byte EFFECT_PAIN_SPLIT + .byte EFFECT_CONVERSION_2 + .byte EFFECT_LOCK_ON + .byte EFFECT_SPITE + .byte EFFECT_PERISH_SONG + .byte EFFECT_SWAGGER + .byte EFFECT_FURY_CUTTER + .byte EFFECT_ATTRACT + .byte EFFECT_SAFEGUARD + .byte EFFECT_PSYCH_UP + .byte EFFECT_MIRROR_COAT + .byte EFFECT_WILL_O_WISP + .byte EFFECT_TICKLE + .byte EFFECT_COSMIC_POWER + .byte EFFECT_BULK_UP + .byte EFFECT_CALM_MIND + .byte EFFECT_DRAGON_DANCE + .byte -1 @ Given the AI_TryOnAlly at the beginning it's possible that this was the start of a more @ comprehensive double battle AI script diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc index 103942280894..f9723ffa0f4b 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc +++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc @@ -33,8 +33,8 @@ EverGrandeCity_ChampionsRoom_EventScript_EnterRoom:: waitmovement 0 setvar VAR_TEMP_1, 1 goto EverGrandeCity_ChampionsRoom_EventScript_Wallace - releaseall - end + releaseall + end EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace: walk_up diff --git a/data/maps/FortreeCity_DecorationShop/scripts.inc b/data/maps/FortreeCity_DecorationShop/scripts.inc index a42f47af7394..43943128769e 100644 --- a/data/maps/FortreeCity_DecorationShop/scripts.inc +++ b/data/maps/FortreeCity_DecorationShop/scripts.inc @@ -19,7 +19,7 @@ FortreeCity_DecorationShop_EventScript_ClerkDesks:: release end - .align 2 + .align 2 FortreeCity_DecorationShop_PokemartDecor_Desks: .2byte DECOR_SMALL_DESK .2byte DECOR_POKEMON_DESK diff --git a/gflib/bg.h b/gflib/bg.h index 4b9744561695..98183399100e 100644 --- a/gflib/bg.h +++ b/gflib/bg.h @@ -3,29 +3,29 @@ enum { - BG_ATTR_CHARBASEINDEX = 1, - BG_ATTR_MAPBASEINDEX, - BG_ATTR_SCREENSIZE, - BG_ATTR_PALETTEMODE, - BG_ATTR_MOSAIC, - BG_ATTR_WRAPAROUND, - BG_ATTR_PRIORITY, - BG_ATTR_METRIC, - BG_ATTR_TYPE, - BG_ATTR_BASETILE, + BG_ATTR_CHARBASEINDEX = 1, + BG_ATTR_MAPBASEINDEX, + BG_ATTR_SCREENSIZE, + BG_ATTR_PALETTEMODE, + BG_ATTR_MOSAIC, + BG_ATTR_WRAPAROUND, + BG_ATTR_PRIORITY, + BG_ATTR_METRIC, + BG_ATTR_TYPE, + BG_ATTR_BASETILE, }; enum { - BG_TYPE_NORMAL, - BG_TYPE_AFFINE, - BG_TYPE_NONE = 0xFFFF + BG_TYPE_NORMAL, + BG_TYPE_AFFINE, + BG_TYPE_NONE = 0xFFFF }; // Modes for ChangeBgX / ChangeBgY enum { - BG_COORD_SET, - BG_COORD_ADD, - BG_COORD_SUB, + BG_COORD_SET, + BG_COORD_ADD, + BG_COORD_SUB, }; // Modes for Unused_AdjustBgMosaic diff --git a/include/pokenav.h b/include/pokenav.h index 593c68489021..959998383f71 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -116,21 +116,21 @@ enum #define POKENAV_MENU_IDS_START 100000 enum { - POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons - POKENAV_MAIN_MENU_CURSOR_ON_MAP, - POKENAV_CONDITION_MENU, // The first Condition screen where the player selects Party or Search - POKENAV_CONDITION_SEARCH_MENU, // The Condition search menu where the player selects a search parameter - POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL, - POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS, - POKENAV_REGION_MAP, - POKENAV_CONDITION_GRAPH_PARTY, // The Condition graph screen when Party has been selected - POKENAV_CONDITION_SEARCH_RESULTS, // The list of results from a Condition search - POKENAV_CONDITION_GRAPH_SEARCH, // The Condition graph screen when a search result has been selected - POKENAV_RETURN_CONDITION_SEARCH, // Exited the graph screen back to the list of Condition search results - POKENAV_MATCH_CALL, - POKENAV_RIBBONS_MON_LIST, // The list of PokĂ©mon with ribbons - POKENAV_RIBBONS_SUMMARY_SCREEN, // The ribbon summary screen shown when a PokĂ©mon has been selected - POKENAV_RIBBONS_RETURN_TO_MON_LIST, // Exited the summary screen back to the ribbon list + POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons + POKENAV_MAIN_MENU_CURSOR_ON_MAP, + POKENAV_CONDITION_MENU, // The first Condition screen where the player selects Party or Search + POKENAV_CONDITION_SEARCH_MENU, // The Condition search menu where the player selects a search parameter + POKENAV_MAIN_MENU_CURSOR_ON_MATCH_CALL, + POKENAV_MAIN_MENU_CURSOR_ON_RIBBONS, + POKENAV_REGION_MAP, + POKENAV_CONDITION_GRAPH_PARTY, // The Condition graph screen when Party has been selected + POKENAV_CONDITION_SEARCH_RESULTS, // The list of results from a Condition search + POKENAV_CONDITION_GRAPH_SEARCH, // The Condition graph screen when a search result has been selected + POKENAV_RETURN_CONDITION_SEARCH, // Exited the graph screen back to the list of Condition search results + POKENAV_MATCH_CALL, + POKENAV_RIBBONS_MON_LIST, // The list of PokĂ©mon with ribbons + POKENAV_RIBBONS_SUMMARY_SCREEN, // The ribbon summary screen shown when a PokĂ©mon has been selected + POKENAV_RIBBONS_RETURN_TO_MON_LIST, // Exited the summary screen back to the ribbon list }; enum @@ -185,28 +185,28 @@ enum enum { - MC_HEADER_MR_STONE, - MC_HEADER_PROF_BIRCH, - MC_HEADER_BRENDAN, - MC_HEADER_MAY, - MC_HEADER_WALLY, - MC_HEADER_NORMAN, - MC_HEADER_MOM, - MC_HEADER_STEVEN, - MC_HEADER_SCOTT, - MC_HEADER_ROXANNE, - MC_HEADER_BRAWLY, - MC_HEADER_WATTSON, - MC_HEADER_FLANNERY, - MC_HEADER_WINONA, - MC_HEADER_TATE_LIZA, - MC_HEADER_JUAN, - MC_HEADER_SIDNEY, - MC_HEADER_PHOEBE, - MC_HEADER_GLACIA, - MC_HEADER_DRAKE, - MC_HEADER_WALLACE, - MC_HEADER_COUNT + MC_HEADER_MR_STONE, + MC_HEADER_PROF_BIRCH, + MC_HEADER_BRENDAN, + MC_HEADER_MAY, + MC_HEADER_WALLY, + MC_HEADER_NORMAN, + MC_HEADER_MOM, + MC_HEADER_STEVEN, + MC_HEADER_SCOTT, + MC_HEADER_ROXANNE, + MC_HEADER_BRAWLY, + MC_HEADER_WATTSON, + MC_HEADER_FLANNERY, + MC_HEADER_WINONA, + MC_HEADER_TATE_LIZA, + MC_HEADER_JUAN, + MC_HEADER_SIDNEY, + MC_HEADER_PHOEBE, + MC_HEADER_GLACIA, + MC_HEADER_DRAKE, + MC_HEADER_WALLACE, + MC_HEADER_COUNT }; enum diff --git a/src/data/easy_chat/easy_chat_group_pokemon2.h b/src/data/easy_chat/easy_chat_group_pokemon2.h index 44dce0cc847c..331c5ac6c3a7 100755 --- a/src/data/easy_chat/easy_chat_group_pokemon2.h +++ b/src/data/easy_chat/easy_chat_group_pokemon2.h @@ -1,253 +1,253 @@ const u16 gEasyChatGroup_Pokemon2[] = { - SPECIES_ABRA, - SPECIES_AERODACTYL, - SPECIES_AIPOM, - SPECIES_ALAKAZAM, - SPECIES_AMPHAROS, - SPECIES_ARBOK, - SPECIES_ARCANINE, - SPECIES_ARIADOS, - SPECIES_ARTICUNO, - SPECIES_AZUMARILL, - SPECIES_BAYLEEF, - SPECIES_BEEDRILL, - SPECIES_BELLOSSOM, - SPECIES_BELLSPROUT, - SPECIES_BLASTOISE, - SPECIES_BLISSEY, - SPECIES_BULBASAUR, - SPECIES_BUTTERFREE, - SPECIES_CATERPIE, - SPECIES_CELEBI, - SPECIES_CHANSEY, - SPECIES_CHARIZARD, - SPECIES_CHARMANDER, - SPECIES_CHARMELEON, - SPECIES_CHIKORITA, - SPECIES_CHINCHOU, - SPECIES_CLEFABLE, - SPECIES_CLEFAIRY, - SPECIES_CLEFFA, - SPECIES_CLOYSTER, - SPECIES_CORSOLA, - SPECIES_CROBAT, - SPECIES_CROCONAW, - SPECIES_CUBONE, - SPECIES_CYNDAQUIL, - SPECIES_DELIBIRD, - SPECIES_DEWGONG, - SPECIES_DIGLETT, - SPECIES_DITTO, - SPECIES_DODRIO, - SPECIES_DODUO, - SPECIES_DONPHAN, - SPECIES_DRAGONAIR, - SPECIES_DRAGONITE, - SPECIES_DRATINI, - SPECIES_DROWZEE, - SPECIES_DUGTRIO, - SPECIES_DUNSPARCE, - SPECIES_EEVEE, - SPECIES_EKANS, - SPECIES_ELECTABUZZ, - SPECIES_ELECTRODE, - SPECIES_ELEKID, - SPECIES_ENTEI, - SPECIES_ESPEON, - SPECIES_EXEGGCUTE, - SPECIES_EXEGGUTOR, - SPECIES_FARFETCHD, - SPECIES_FEAROW, - SPECIES_FERALIGATR, - SPECIES_FLAAFFY, - SPECIES_FLAREON, - SPECIES_FORRETRESS, - SPECIES_FURRET, - SPECIES_GASTLY, - SPECIES_GENGAR, - SPECIES_GEODUDE, - SPECIES_GIRAFARIG, - SPECIES_GLIGAR, - SPECIES_GLOOM, - SPECIES_GOLBAT, - SPECIES_GOLDEEN, - SPECIES_GOLDUCK, - SPECIES_GOLEM, - SPECIES_GRANBULL, - SPECIES_GRAVELER, - SPECIES_GRIMER, - SPECIES_GROWLITHE, - SPECIES_GYARADOS, - SPECIES_HAUNTER, - SPECIES_HERACROSS, - SPECIES_HITMONCHAN, - SPECIES_HITMONLEE, - SPECIES_HITMONTOP, - SPECIES_HO_OH, - SPECIES_HOOTHOOT, - SPECIES_HOPPIP, - SPECIES_HORSEA, - SPECIES_HOUNDOOM, - SPECIES_HOUNDOUR, - SPECIES_HYPNO, - SPECIES_IGGLYBUFF, - SPECIES_IVYSAUR, - SPECIES_JIGGLYPUFF, - SPECIES_JOLTEON, - SPECIES_JUMPLUFF, - SPECIES_JYNX, - SPECIES_KABUTO, - SPECIES_KABUTOPS, - SPECIES_KADABRA, - SPECIES_KAKUNA, - SPECIES_KANGASKHAN, - SPECIES_KINGDRA, - SPECIES_KINGLER, - SPECIES_KOFFING, - SPECIES_KRABBY, - SPECIES_LANTURN, - SPECIES_LAPRAS, - SPECIES_LARVITAR, - SPECIES_LEDIAN, - SPECIES_LEDYBA, - SPECIES_LICKITUNG, - SPECIES_LUGIA, - SPECIES_MACHAMP, - SPECIES_MACHOKE, - SPECIES_MACHOP, - SPECIES_MAGBY, - SPECIES_MAGCARGO, - SPECIES_MAGIKARP, - SPECIES_MAGMAR, - SPECIES_MAGNEMITE, - SPECIES_MAGNETON, - SPECIES_MANKEY, - SPECIES_MANTINE, - SPECIES_MAREEP, - SPECIES_MARILL, - SPECIES_MAROWAK, - SPECIES_MEGANIUM, - SPECIES_MEOWTH, - SPECIES_METAPOD, - SPECIES_MEW, - SPECIES_MEWTWO, - SPECIES_MILTANK, - SPECIES_MISDREAVUS, - SPECIES_MOLTRES, - SPECIES_MR_MIME, - SPECIES_MUK, - SPECIES_MURKROW, - SPECIES_NATU, - SPECIES_NIDOKING, - SPECIES_NIDOQUEEN, - SPECIES_NIDORAN_F, - SPECIES_NIDORAN_M, - SPECIES_NIDORINA, - SPECIES_NIDORINO, - SPECIES_NINETALES, - SPECIES_NOCTOWL, - SPECIES_OCTILLERY, - SPECIES_ODDISH, - SPECIES_OMANYTE, - SPECIES_OMASTAR, - SPECIES_ONIX, - SPECIES_PARAS, - SPECIES_PARASECT, - SPECIES_PERSIAN, - SPECIES_PHANPY, - SPECIES_PICHU, - SPECIES_PIDGEOT, - SPECIES_PIDGEOTTO, - SPECIES_PIDGEY, - SPECIES_PIKACHU, - SPECIES_PILOSWINE, - SPECIES_PINECO, - SPECIES_PINSIR, - SPECIES_POLITOED, - SPECIES_POLIWAG, - SPECIES_POLIWHIRL, - SPECIES_POLIWRATH, - SPECIES_PONYTA, - SPECIES_PORYGON, - SPECIES_PORYGON2, - SPECIES_PRIMEAPE, - SPECIES_PSYDUCK, - SPECIES_PUPITAR, - SPECIES_QUAGSIRE, - SPECIES_QUILAVA, - SPECIES_QWILFISH, - SPECIES_RAICHU, - SPECIES_RAIKOU, - SPECIES_RAPIDASH, - SPECIES_RATICATE, - SPECIES_RATTATA, - SPECIES_REMORAID, - SPECIES_RHYDON, - SPECIES_RHYHORN, - SPECIES_SANDSHREW, - SPECIES_SANDSLASH, - SPECIES_SCIZOR, - SPECIES_SCYTHER, - SPECIES_SEADRA, - SPECIES_SEAKING, - SPECIES_SEEL, - SPECIES_SENTRET, - SPECIES_SHELLDER, - SPECIES_SHUCKLE, - SPECIES_SKARMORY, - SPECIES_SKIPLOOM, - SPECIES_SLOWBRO, - SPECIES_SLOWKING, - SPECIES_SLOWPOKE, - SPECIES_SLUGMA, - SPECIES_SMEARGLE, - SPECIES_SMOOCHUM, - SPECIES_SNEASEL, - SPECIES_SNORLAX, - SPECIES_SNUBBULL, - SPECIES_SPEAROW, - SPECIES_SPINARAK, - SPECIES_SQUIRTLE, - SPECIES_STANTLER, - SPECIES_STARMIE, - SPECIES_STARYU, - SPECIES_STEELIX, - SPECIES_SUDOWOODO, - SPECIES_SUICUNE, - SPECIES_SUNFLORA, - SPECIES_SUNKERN, - SPECIES_SWINUB, - SPECIES_TANGELA, - SPECIES_TAUROS, - SPECIES_TEDDIURSA, - SPECIES_TENTACOOL, - SPECIES_TENTACRUEL, - SPECIES_TOGEPI, - SPECIES_TOGETIC, - SPECIES_TOTODILE, - SPECIES_TYPHLOSION, - SPECIES_TYRANITAR, - SPECIES_TYROGUE, - SPECIES_UMBREON, - SPECIES_UNOWN, - SPECIES_URSARING, - SPECIES_VAPOREON, - SPECIES_VENOMOTH, - SPECIES_VENONAT, - SPECIES_VENUSAUR, - SPECIES_VICTREEBEL, - SPECIES_VILEPLUME, - SPECIES_VOLTORB, - SPECIES_VULPIX, - SPECIES_WARTORTLE, - SPECIES_WEEDLE, - SPECIES_WEEPINBELL, - SPECIES_WEEZING, - SPECIES_WIGGLYTUFF, - SPECIES_WOBBUFFET, - SPECIES_WOOPER, - SPECIES_XATU, - SPECIES_YANMA, - SPECIES_ZAPDOS, - SPECIES_ZUBAT, + SPECIES_ABRA, + SPECIES_AERODACTYL, + SPECIES_AIPOM, + SPECIES_ALAKAZAM, + SPECIES_AMPHAROS, + SPECIES_ARBOK, + SPECIES_ARCANINE, + SPECIES_ARIADOS, + SPECIES_ARTICUNO, + SPECIES_AZUMARILL, + SPECIES_BAYLEEF, + SPECIES_BEEDRILL, + SPECIES_BELLOSSOM, + SPECIES_BELLSPROUT, + SPECIES_BLASTOISE, + SPECIES_BLISSEY, + SPECIES_BULBASAUR, + SPECIES_BUTTERFREE, + SPECIES_CATERPIE, + SPECIES_CELEBI, + SPECIES_CHANSEY, + SPECIES_CHARIZARD, + SPECIES_CHARMANDER, + SPECIES_CHARMELEON, + SPECIES_CHIKORITA, + SPECIES_CHINCHOU, + SPECIES_CLEFABLE, + SPECIES_CLEFAIRY, + SPECIES_CLEFFA, + SPECIES_CLOYSTER, + SPECIES_CORSOLA, + SPECIES_CROBAT, + SPECIES_CROCONAW, + SPECIES_CUBONE, + SPECIES_CYNDAQUIL, + SPECIES_DELIBIRD, + SPECIES_DEWGONG, + SPECIES_DIGLETT, + SPECIES_DITTO, + SPECIES_DODRIO, + SPECIES_DODUO, + SPECIES_DONPHAN, + SPECIES_DRAGONAIR, + SPECIES_DRAGONITE, + SPECIES_DRATINI, + SPECIES_DROWZEE, + SPECIES_DUGTRIO, + SPECIES_DUNSPARCE, + SPECIES_EEVEE, + SPECIES_EKANS, + SPECIES_ELECTABUZZ, + SPECIES_ELECTRODE, + SPECIES_ELEKID, + SPECIES_ENTEI, + SPECIES_ESPEON, + SPECIES_EXEGGCUTE, + SPECIES_EXEGGUTOR, + SPECIES_FARFETCHD, + SPECIES_FEAROW, + SPECIES_FERALIGATR, + SPECIES_FLAAFFY, + SPECIES_FLAREON, + SPECIES_FORRETRESS, + SPECIES_FURRET, + SPECIES_GASTLY, + SPECIES_GENGAR, + SPECIES_GEODUDE, + SPECIES_GIRAFARIG, + SPECIES_GLIGAR, + SPECIES_GLOOM, + SPECIES_GOLBAT, + SPECIES_GOLDEEN, + SPECIES_GOLDUCK, + SPECIES_GOLEM, + SPECIES_GRANBULL, + SPECIES_GRAVELER, + SPECIES_GRIMER, + SPECIES_GROWLITHE, + SPECIES_GYARADOS, + SPECIES_HAUNTER, + SPECIES_HERACROSS, + SPECIES_HITMONCHAN, + SPECIES_HITMONLEE, + SPECIES_HITMONTOP, + SPECIES_HO_OH, + SPECIES_HOOTHOOT, + SPECIES_HOPPIP, + SPECIES_HORSEA, + SPECIES_HOUNDOOM, + SPECIES_HOUNDOUR, + SPECIES_HYPNO, + SPECIES_IGGLYBUFF, + SPECIES_IVYSAUR, + SPECIES_JIGGLYPUFF, + SPECIES_JOLTEON, + SPECIES_JUMPLUFF, + SPECIES_JYNX, + SPECIES_KABUTO, + SPECIES_KABUTOPS, + SPECIES_KADABRA, + SPECIES_KAKUNA, + SPECIES_KANGASKHAN, + SPECIES_KINGDRA, + SPECIES_KINGLER, + SPECIES_KOFFING, + SPECIES_KRABBY, + SPECIES_LANTURN, + SPECIES_LAPRAS, + SPECIES_LARVITAR, + SPECIES_LEDIAN, + SPECIES_LEDYBA, + SPECIES_LICKITUNG, + SPECIES_LUGIA, + SPECIES_MACHAMP, + SPECIES_MACHOKE, + SPECIES_MACHOP, + SPECIES_MAGBY, + SPECIES_MAGCARGO, + SPECIES_MAGIKARP, + SPECIES_MAGMAR, + SPECIES_MAGNEMITE, + SPECIES_MAGNETON, + SPECIES_MANKEY, + SPECIES_MANTINE, + SPECIES_MAREEP, + SPECIES_MARILL, + SPECIES_MAROWAK, + SPECIES_MEGANIUM, + SPECIES_MEOWTH, + SPECIES_METAPOD, + SPECIES_MEW, + SPECIES_MEWTWO, + SPECIES_MILTANK, + SPECIES_MISDREAVUS, + SPECIES_MOLTRES, + SPECIES_MR_MIME, + SPECIES_MUK, + SPECIES_MURKROW, + SPECIES_NATU, + SPECIES_NIDOKING, + SPECIES_NIDOQUEEN, + SPECIES_NIDORAN_F, + SPECIES_NIDORAN_M, + SPECIES_NIDORINA, + SPECIES_NIDORINO, + SPECIES_NINETALES, + SPECIES_NOCTOWL, + SPECIES_OCTILLERY, + SPECIES_ODDISH, + SPECIES_OMANYTE, + SPECIES_OMASTAR, + SPECIES_ONIX, + SPECIES_PARAS, + SPECIES_PARASECT, + SPECIES_PERSIAN, + SPECIES_PHANPY, + SPECIES_PICHU, + SPECIES_PIDGEOT, + SPECIES_PIDGEOTTO, + SPECIES_PIDGEY, + SPECIES_PIKACHU, + SPECIES_PILOSWINE, + SPECIES_PINECO, + SPECIES_PINSIR, + SPECIES_POLITOED, + SPECIES_POLIWAG, + SPECIES_POLIWHIRL, + SPECIES_POLIWRATH, + SPECIES_PONYTA, + SPECIES_PORYGON, + SPECIES_PORYGON2, + SPECIES_PRIMEAPE, + SPECIES_PSYDUCK, + SPECIES_PUPITAR, + SPECIES_QUAGSIRE, + SPECIES_QUILAVA, + SPECIES_QWILFISH, + SPECIES_RAICHU, + SPECIES_RAIKOU, + SPECIES_RAPIDASH, + SPECIES_RATICATE, + SPECIES_RATTATA, + SPECIES_REMORAID, + SPECIES_RHYDON, + SPECIES_RHYHORN, + SPECIES_SANDSHREW, + SPECIES_SANDSLASH, + SPECIES_SCIZOR, + SPECIES_SCYTHER, + SPECIES_SEADRA, + SPECIES_SEAKING, + SPECIES_SEEL, + SPECIES_SENTRET, + SPECIES_SHELLDER, + SPECIES_SHUCKLE, + SPECIES_SKARMORY, + SPECIES_SKIPLOOM, + SPECIES_SLOWBRO, + SPECIES_SLOWKING, + SPECIES_SLOWPOKE, + SPECIES_SLUGMA, + SPECIES_SMEARGLE, + SPECIES_SMOOCHUM, + SPECIES_SNEASEL, + SPECIES_SNORLAX, + SPECIES_SNUBBULL, + SPECIES_SPEAROW, + SPECIES_SPINARAK, + SPECIES_SQUIRTLE, + SPECIES_STANTLER, + SPECIES_STARMIE, + SPECIES_STARYU, + SPECIES_STEELIX, + SPECIES_SUDOWOODO, + SPECIES_SUICUNE, + SPECIES_SUNFLORA, + SPECIES_SUNKERN, + SPECIES_SWINUB, + SPECIES_TANGELA, + SPECIES_TAUROS, + SPECIES_TEDDIURSA, + SPECIES_TENTACOOL, + SPECIES_TENTACRUEL, + SPECIES_TOGEPI, + SPECIES_TOGETIC, + SPECIES_TOTODILE, + SPECIES_TYPHLOSION, + SPECIES_TYRANITAR, + SPECIES_TYROGUE, + SPECIES_UMBREON, + SPECIES_UNOWN, + SPECIES_URSARING, + SPECIES_VAPOREON, + SPECIES_VENOMOTH, + SPECIES_VENONAT, + SPECIES_VENUSAUR, + SPECIES_VICTREEBEL, + SPECIES_VILEPLUME, + SPECIES_VOLTORB, + SPECIES_VULPIX, + SPECIES_WARTORTLE, + SPECIES_WEEDLE, + SPECIES_WEEPINBELL, + SPECIES_WEEZING, + SPECIES_WIGGLYTUFF, + SPECIES_WOBBUFFET, + SPECIES_WOOPER, + SPECIES_XATU, + SPECIES_YANMA, + SPECIES_ZAPDOS, + SPECIES_ZUBAT, }; diff --git a/src/fonts.c b/src/fonts.c index df904bacafec..8ef32bfef2c5 100644 --- a/src/fonts.c +++ b/src/fonts.c @@ -110,38 +110,38 @@ ALIGNED(4) const u8 gFontNarrowLatinGlyphWidths[] = { ALIGNED(4) const u16 gFontShortLatinGlyphs[] = INCBIN_U16("graphics/fonts/short.latfont"); ALIGNED(4) const u8 gFontShortLatinGlyphWidths[] = { - 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, - 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3, - 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 8, 8, 3, - 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6, - 3, 3, 3, 3, 3, 3, 3, 6, 3, 12, 12, 12, 12, 1, 2, 3, - 4, 5, 6, 7, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 5, - 6, 6, 6, 3, 3, 6, 6, 8, 5, 9, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 4, 6, 5, - 5, 6, 5, 6, 6, 6, 5, 5, 5, 6, 6, 6, 6, 6, 6, 8, - 5, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 12, 12, 12, 12, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, - 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, + 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, + 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3, + 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 8, 8, 3, + 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6, + 3, 3, 3, 3, 3, 3, 3, 6, 3, 12, 12, 12, 12, 1, 2, 3, + 4, 5, 6, 7, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 5, + 6, 6, 6, 3, 3, 6, 6, 8, 5, 9, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 4, 6, 5, + 5, 6, 5, 6, 6, 6, 5, 5, 5, 6, 6, 6, 6, 6, 6, 8, + 5, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 12, 12, 12, 12, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, }; ALIGNED(4) const u16 gFontNormalLatinGlyphs[] = INCBIN_U16("graphics/fonts/normal.latfont"); diff --git a/src/rom_header.s b/src/rom_header.s index 9ab7240fba08..c5fa5ddf40e0 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -1,5 +1,5 @@ @ Note: ROM header data is empty space here. -@ It's populated by gbafix using data provided in the Makefile. +@ It's populated by gbafix using data provided in the Makefile. .global Start Start: @@ -41,20 +41,20 @@ RomHeaderChecksum: RomHeaderReserved2: .space 2 - .word 0 + .word 0 - .global GPIOPortData + .global GPIOPortData GPIOPortData: - .2byte 0 + .2byte 0 - .global GPIOPortDirection + .global GPIOPortDirection GPIOPortDirection: - .2byte 0 + .2byte 0 - .global GPIOPortReadEnable + .global GPIOPortReadEnable GPIOPortReadEnable: - .2byte 0 + .2byte 0 - .2byte 0 + .2byte 0 - .space 0x34 + .space 0x34 diff --git a/src/roulette.c b/src/roulette.c index 2caa3214881f..c375c40d3b68 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1040,11 +1040,11 @@ static const struct YesNoFuncTable sYesNoTable_KeepPlaying = static void CB2_Roulette(void) { - RunTasks(); - AnimateSprites(); - BuildOamBuffer(); - if (sRoulette->flashUtil.enabled) - RouletteFlash_Run(&sRoulette->flashUtil); + RunTasks(); + AnimateSprites(); + BuildOamBuffer(); + if (sRoulette->flashUtil.enabled) + RouletteFlash_Run(&sRoulette->flashUtil); } static void VBlankCB_Roulette(void) @@ -4516,7 +4516,7 @@ static void SpriteCB_ShroomishExit(struct Sprite *sprite) // Delay for screen shaking, then exit left if (sprite->data[1]++ >= sprite->data[3]) { - sprite->x -= 2; + sprite->x -= 2; if (sprite->x < -16) { if (!sRoulette->ballUnstuck) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 4549166ac4ac..ad4a84947a93 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -165,30 +165,30 @@ static const u16 sPrizeListAttract[] = {ITEM_TM45_ATTRACT, ITEM_ETHER, I static const u16 *const sPrizeLists1[NUM_TRAINER_HILL_PRIZE_LISTS] = { - sPrizeListRareCandy1, - sPrizeListLuxuryBall1, - sPrizeListMaxRevive1, - sPrizeListMaxEther1, - sPrizeListElixir1, - sPrizeListRoar, - sPrizeListSludgeBomb, - sPrizeListToxic, - sPrizeListSunnyDay, - sPrizeListEarthQuake + sPrizeListRareCandy1, + sPrizeListLuxuryBall1, + sPrizeListMaxRevive1, + sPrizeListMaxEther1, + sPrizeListElixir1, + sPrizeListRoar, + sPrizeListSludgeBomb, + sPrizeListToxic, + sPrizeListSunnyDay, + sPrizeListEarthQuake }; static const u16 *const sPrizeLists2[NUM_TRAINER_HILL_PRIZE_LISTS] = { - sPrizeListRareCandy2, - sPrizeListLuxuryBall2, - sPrizeListMaxRevive2, - sPrizeListMaxEther2, - sPrizeListElixir2, - sPrizeListBrickBreak, - sPrizeListTorment, - sPrizeListSkillSwap, - sPrizeListGigaDrain, - sPrizeListAttract + sPrizeListRareCandy2, + sPrizeListLuxuryBall2, + sPrizeListMaxRevive2, + sPrizeListMaxEther2, + sPrizeListElixir2, + sPrizeListBrickBreak, + sPrizeListTorment, + sPrizeListSkillSwap, + sPrizeListGigaDrain, + sPrizeListAttract }; static const u16 *const *const sPrizeListSets[] = diff --git a/sym_common.txt b/sym_common.txt index 938b78fbe4d3..407b183a7f85 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -3,35 +3,35 @@ @ ../gflib/bg.o .align 2 gWindowTileAutoAllocEnabled: - .space 4 + .space 4 @ ../gflib/window.o - .align 4 + .align 4 gTransparentTileNumber: - .space 1 - .align 4 + .space 1 + .align 4 gWindowBgTilemapBuffers: - .space 16 + .space 16 @ ../gflib/text.o - .align 4 + .align 4 gFonts: - .space 4 - .align 2 + .space 4 + .align 2 gDisableTextPrinters: - .space 1 - .align 4 + .space 1 + .align 4 gCurGlyph: - .space 132 - .align 2 + .space 132 + .align 2 gTextFlags: - .space 4 + .space 4 @ ../gflib/sprite.o - .align 2 + .align 2 gOamMatrixAllocBitmap: - .space 4 - .align 2 + .space 4 + .align 2 gReservedSpritePaletteCount: - .space 1 - .align 4 + .space 1 + .align 4 .include "link.o" .include "AgbRfu_LinkManager.o" .include "link_rfu_2.o" From 0149f420f9ce3346cf395c8f7863eb3ab9d05057 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 17:36:55 -0400 Subject: [PATCH 675/762] Corrected comment --- include/pokemon.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/pokemon.h b/include/pokemon.h index 11feb5b183f1..79b662bf1d8d 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -3,7 +3,7 @@ #include "sprite.h" -// Flags for Get(Box)MonData / Set(Box)MonData +// Property labels for Get(Box)MonData / Set(Box)MonData enum { MON_DATA_PERSONALITY, MON_DATA_OT_ID, From 44b26cc8aa1203e6a6824f21cf4d43335d1fe6a0 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 18:27:37 -0400 Subject: [PATCH 676/762] From pokefirered --- src/battle_main.c | 3 +-- src/battle_util.c | 52 +++++++++++++++++++++++------------------------ 2 files changed, 26 insertions(+), 29 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index d80542f7beb1..0b1561ddff6d 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -772,8 +772,7 @@ static void SetPlayerBerryDataInBattleStruct(void) static void SetAllPlayersBerryData(void) { - s32 i; - s32 j; + s32 i, j; if (!(gBattleTypeFlags & BATTLE_TYPE_LINK)) { diff --git a/src/battle_util.c b/src/battle_util.c index 498db41620fb..4ba9376a5a5b 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1109,8 +1109,7 @@ u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check) #define ALL_MOVES_MASK ((1 << MAX_MON_MOVES) - 1) bool8 AreAllMovesUnusable(void) { - u8 unusable; - unusable = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); + u8 unusable = CheckMoveLimitations(gActiveBattler, 0, MOVE_LIMITATIONS_ALL); if (unusable == ALL_MOVES_MASK) // All moves are unusable. { @@ -1261,8 +1260,7 @@ u8 DoFieldEndTurnEffects(void) { side = gBattleStruct->turnSideTracker; gActiveBattler = gBattlerAttacker = gSideTimers[side].mistBattlerId; - if (gSideTimers[side].mistTimer != 0 - && --gSideTimers[side].mistTimer == 0) + if (gSideTimers[side].mistTimer != 0 && --gSideTimers[side].mistTimer == 0) { gSideStatuses[side] &= ~SIDE_STATUS_MIST; BattleScriptExecute(BattleScript_SideStatusWoreOff); @@ -2262,8 +2260,8 @@ u8 AtkCanceller_UnableToUseMove(void) bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) { + u8 playerId, flankId; struct Pokemon *party; - u8 id1, id2; s32 i; if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) @@ -2276,15 +2274,15 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) else party = gEnemyParty; - id1 = ((battler & BIT_FLANK) / 2); - for (i = id1 * MULTI_PARTY_SIZE; i < id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) + playerId = ((battler & BIT_FLANK) / 2); + for (i = playerId * MULTI_PARTY_SIZE; i < playerId * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG) break; } - return (i == id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); + return (i == playerId * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); } else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { @@ -2293,76 +2291,76 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) if (GetBattlerSide(battler) == B_SIDE_PLAYER) { party = gPlayerParty; - id2 = GetBattlerMultiplayerId(battler); - id1 = GetLinkTrainerFlankId(id2); + flankId = GetBattlerMultiplayerId(battler); + playerId = GetLinkTrainerFlankId(flankId); } else { party = gEnemyParty; if (battler == 1) - id1 = 0; + playerId = 0; else - id1 = 1; + playerId = 1; } } else { - id2 = GetBattlerMultiplayerId(battler); + flankId = GetBattlerMultiplayerId(battler); if (GetBattlerSide(battler) == B_SIDE_PLAYER) party = gPlayerParty; else party = gEnemyParty; - id1 = GetLinkTrainerFlankId(id2); + playerId = GetLinkTrainerFlankId(flankId); } - for (i = id1 * MULTI_PARTY_SIZE; i < id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) + for (i = playerId * MULTI_PARTY_SIZE; i < playerId * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG) break; } - return (i == id1 * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); + return (i == playerId * MULTI_PARTY_SIZE + MULTI_PARTY_SIZE); } else if ((gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) && GetBattlerSide(battler) == B_SIDE_OPPONENT) { party = gEnemyParty; if (battler == 1) - id1 = 0; + playerId = 0; else - id1 = MULTI_PARTY_SIZE; + playerId = MULTI_PARTY_SIZE; - for (i = id1; i < id1 + MULTI_PARTY_SIZE; i++) + for (i = playerId; i < playerId + MULTI_PARTY_SIZE; i++) { if (GetMonData(&party[i], MON_DATA_HP) != 0 && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG) break; } - return (i == id1 + 3); + return (i == playerId + 3); } else { if (GetBattlerSide(battler) == B_SIDE_OPPONENT) { - id2 = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); - id1 = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT); + flankId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); + playerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT); party = gEnemyParty; } else { - id2 = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); - id1 = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT); + flankId = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); + playerId = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT); party = gPlayerParty; } if (partyIdBattlerOn1 == PARTY_SIZE) - partyIdBattlerOn1 = gBattlerPartyIndexes[id2]; + partyIdBattlerOn1 = gBattlerPartyIndexes[flankId]; if (partyIdBattlerOn2 == PARTY_SIZE) - partyIdBattlerOn2 = gBattlerPartyIndexes[id1]; + partyIdBattlerOn2 = gBattlerPartyIndexes[playerId]; for (i = 0; i < PARTY_SIZE; i++) { @@ -2370,7 +2368,7 @@ bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2) && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG && i != partyIdBattlerOn1 && i != partyIdBattlerOn2 - && i != *(gBattleStruct->monToSwitchIntoId + id2) && i != id1[gBattleStruct->monToSwitchIntoId]) + && i != *(gBattleStruct->monToSwitchIntoId + flankId) && i != playerId[gBattleStruct->monToSwitchIntoId]) break; } return (i == PARTY_SIZE); From 7b0c8ec97245b9eebdf354acae4fd00ea408a8a9 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 20:41:12 -0400 Subject: [PATCH 677/762] Revert style changes --- gflib/text.c | 6 +-- gflib/window.c | 16 +++---- src/battle_gfx_sfx_util.c | 4 +- src/battle_main.c | 2 +- src/battle_message.c | 10 ++--- src/battle_util.c | 10 ++--- src/fldeff_cut.c | 2 +- src/librfu_rfu.c | 76 ++++++++++++++++---------------- src/librfu_stwi.c | 4 +- src/map_name_popup.c | 2 +- src/mauville_old_man.c | 4 +- src/rom_header_gf.c | 4 +- src/scrcmd.c | 2 +- src/trader.c | 2 +- tools/jsonproc/inja.hpp | 4 +- tools/jsonproc/nlohmann/json.hpp | 30 ++++++------- 16 files changed, 89 insertions(+), 89 deletions(-) diff --git a/gflib/text.c b/gflib/text.c index 9d7e14efa6fa..c7efdccce3bb 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -301,7 +301,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi sTempTextPrinter.textSpeed = 0; // Render all text (up to limit) at once - for (j = 0; j < 0x400; j++) + for (j = 0; j < 0x400; ++j) { if (RenderFont(&sTempTextPrinter) == RENDER_FINISH) break; @@ -322,7 +322,7 @@ void RunTextPrinters(void) if (!gDisableTextPrinters) { - for (i = 0; i < NUM_TEXT_PRINTERS; i++) + for (i = 0; i < NUM_TEXT_PRINTERS; ++i) { if (sTextPrinters[i].active) { @@ -1318,7 +1318,7 @@ static u32 (*GetFontWidthFunc(u8 fontId))(u16, bool32) { u32 i; - for (i = 0; i < ARRAY_COUNT(sGlyphWidthFuncs); i++) + for (i = 0; i < ARRAY_COUNT(sGlyphWidthFuncs); ++i) { if (fontId == sGlyphWidthFuncs[i].fontId) return sGlyphWidthFuncs[i].func; diff --git a/gflib/window.c b/gflib/window.c index 27faac38445a..ff9e8a6e01cb 100644 --- a/gflib/window.c +++ b/gflib/window.c @@ -38,7 +38,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) u8 *allocatedTilemapBuffer; int allocatedBaseBlock; - for (i = 0; i < NUM_BACKGROUNDS; i++) + for (i = 0; i < NUM_BACKGROUNDS; ++i) { bgTilemapBuffer = GetBgTilemapBuffer(i); if (bgTilemapBuffer != NULL) @@ -47,7 +47,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) gWindowBgTilemapBuffers[i] = bgTilemapBuffer; } - for (i = 0; i < WINDOWS_MAX; i++) + for (i = 0; i < WINDOWS_MAX; ++i) { gWindows[i].window = sDummyWindowTemplate; gWindows[i].tileData = NULL; @@ -76,7 +76,7 @@ bool16 InitWindows(const struct WindowTemplate *templates) return FALSE; } - for (j = 0; j < attrib; j++) + for (j = 0; j < attrib; ++j) allocatedTilemapBuffer[j] = 0; gWindowBgTilemapBuffers[bgLayer] = allocatedTilemapBuffer; @@ -151,7 +151,7 @@ u16 AddWindow(const struct WindowTemplate *template) if (allocatedTilemapBuffer == NULL) return WINDOW_NONE; - for (i = 0; i < attrib; i++) + for (i = 0; i < attrib; ++i) allocatedTilemapBuffer[i] = 0; gWindowBgTilemapBuffers[bgLayer] = allocatedTilemapBuffer; @@ -249,7 +249,7 @@ void FreeAllWindowBuffers(void) { int i; - for (i = 0; i < NUM_BACKGROUNDS; i++) + for (i = 0; i < NUM_BACKGROUNDS; ++i) { if (gWindowBgTilemapBuffers[i] != NULL && gWindowBgTilemapBuffers[i] != DummyWindowBgTilemap) { @@ -258,7 +258,7 @@ void FreeAllWindowBuffers(void) } } - for (i = 0; i < WINDOWS_MAX; i++) + for (i = 0; i < WINDOWS_MAX; ++i) { if (gWindows[i].tileData != NULL) { @@ -342,7 +342,7 @@ void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 h u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, BG_ATTR_BASETILE); int i; - for (i = 0; i < height; i++) + for (i = 0; i < height; ++i) { WriteSequenceToBgTilemapBuffer( windowLocal.window.bg, @@ -379,7 +379,7 @@ void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height) u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, BG_ATTR_BASETILE); int i; - for (i = 0; i < height; i++) + for (i = 0; i < height; ++i) { WriteSequenceToBgTilemapBuffer( windowLocal.window.bg, diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 1cb3d65bc693..ca6be9d4e2e8 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; diff --git a/src/battle_main.c b/src/battle_main.c index 0b1561ddff6d..b748fb5b1ef0 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -557,7 +557,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}, diff --git a/src/battle_message.c b/src/battle_message.c index 9e274926de49..677bb2fe3863 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 @@ -1405,7 +1405,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, diff --git a/src/battle_util.c b/src/battle_util.c index 4ba9376a5a5b..fd63494dde79 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1223,7 +1223,7 @@ u8 DoFieldEndTurnEffects(void) if (effect != 0) break; } - if (!effect) + if (effect == 0) { gBattleStruct->turnCountersTracker++; gBattleStruct->turnSideTracker = 0; @@ -1249,7 +1249,7 @@ u8 DoFieldEndTurnEffects(void) if (effect != 0) break; } - if (!effect) + if (effect == 0) { gBattleStruct->turnCountersTracker++; gBattleStruct->turnSideTracker = 0; @@ -1272,7 +1272,7 @@ u8 DoFieldEndTurnEffects(void) if (effect != 0) break; } - if (!effect) + if (effect == 0) { gBattleStruct->turnCountersTracker++; gBattleStruct->turnSideTracker = 0; @@ -1296,7 +1296,7 @@ u8 DoFieldEndTurnEffects(void) if (effect != 0) break; } - if (!effect) + if (effect == 0) { gBattleStruct->turnCountersTracker++; gBattleStruct->turnSideTracker = 0; @@ -1318,7 +1318,7 @@ u8 DoFieldEndTurnEffects(void) if (effect != 0) break; } - if (!effect) + if (effect == 0) { gBattleStruct->turnCountersTracker++; } diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 6cccec8bac90..0641c6519c24 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -226,7 +226,7 @@ bool8 SetUpFieldMove_Cut(void) y = gPlayerFacingPosition.y + sHyperCutStruct[i].y; tileCuttable = TRUE; - for (j = 0; j < 2; j++) + for (j = 0; j < 2; ++j) { if (sHyperCutStruct[i].unk2[j] == 0) break; // one line required to match -g if (cutTiles[(u8)(sHyperCutStruct[i].unk2[j] - 1)] == FALSE) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 2e1d7e069eae..9a5db6d9df53 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -164,7 +164,7 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p gRfuFixed = (void *)APIBuffer + 0xdc; // + sizeof(*gRfuStatic) gRfuSlotStatusNI[0] = (void *)APIBuffer + 0x1bc; // + sizeof(*gRfuFixed) gRfuSlotStatusUNI[0] = (void *)APIBuffer + 0x37c; // + sizeof(*gRfuSlotStatusNI[0]) * RFU_CHILD_MAX - for (i = 1; i < RFU_CHILD_MAX; i++) + for (i = 1; i < RFU_CHILD_MAX; ++i) { gRfuSlotStatusNI[i] = &gRfuSlotStatusNI[i - 1][1]; gRfuSlotStatusUNI[i] = &gRfuSlotStatusUNI[i - 1][1]; @@ -173,7 +173,7 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p gRfuFixed->STWIBuffer = (struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1]; STWI_init_all((struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1], sioIntrTable_p, copyInterruptToRam); rfu_STC_clearAPIVariables(); - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { gRfuSlotStatusNI[i]->recvBuffer = NULL; gRfuSlotStatusNI[i]->recvBufferSize = 0; @@ -214,7 +214,7 @@ static void rfu_STC_clearAPIVariables(void) gRfuLinkStatus->parentChild = MODE_NEUTRAL; rfu_clearAllSlot(); gRfuStatic->SCStartFlag = 0; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) gRfuStatic->cidBak[i] = 0; REG_IME = IMEBackup; } @@ -294,7 +294,7 @@ static void rfu_CB_defaultCallback(u8 reqCommand, u16 reqResult) if (gRfuStatic->flags & 8) gRfuFixed->reqCallback(reqCommand, reqResult); bmSlotFlags = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) if ((bmSlotFlags >> i) & 1) rfu_STC_removeLinkData(i, 1); gRfuLinkStatus->parentChild = MODE_NEUTRAL; @@ -351,7 +351,7 @@ u16 rfu_MBOOT_CHILD_inheritanceLinkStatus(void) // The size of struct RfuLinkStatus is 180 checksum = 0; - for (i = 0; i < 180/2; i++) + for (i = 0; i < 180/2; ++i) checksum += *mb_buff_iwram_p++; if (checksum != *(u16 *)0x30000FA) return 1; @@ -455,11 +455,11 @@ void rfu_REQ_configGameData(u8 mbootFlag, u16 serialNo, const u8 *gname, const u packet[1] = serialNo >> 8; if (mbootFlag != 0) packet[1] = (serialNo >> 8) | 0x80; - for (i = 2; i < 15; i++) + for (i = 2; i < 15; ++i) packet[i] = *gname++; check_sum = 0; unameBackup = uname; - for (i = 0; i < 8; i++) + for (i = 0; i < 8; ++i) { check_sum += *unameBackup++; check_sum += *gnameBackup++; @@ -493,10 +493,10 @@ static void rfu_CB_configGameData(u8 reqCommand, u16 reqResult) { gRfuLinkStatus->my.mbootFlag = 0; } - for (i = 0; i < RFU_GAME_NAME_LENGTH; i++) + for (i = 0; i < RFU_GAME_NAME_LENGTH; ++i) gRfuLinkStatus->my.gname[i] = *gname_uname_p++; ++gname_uname_p; - for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) + for (i = 0; i < PLAYER_NAME_LENGTH + 1; ++i) gRfuLinkStatus->my.uname[i] = *gname_uname_p++; } rfu_STC_REQ_callback(reqCommand, reqResult); @@ -546,7 +546,7 @@ static void rfu_STC_clearLinkStatus(u8 parentChild) CpuFill16(0, gRfuLinkStatus->partner, sizeof(gRfuLinkStatus->partner)); gRfuLinkStatus->findParentCount = 0; } - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) gRfuLinkStatus->strength[i] = 0; gRfuLinkStatus->connCount = 0; gRfuLinkStatus->connSlotFlag = 0; @@ -609,7 +609,7 @@ static void rfu_STC_readChildList(void) if (STWI_poll_CommandEnd() == 0) { data_p = &gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4]; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) true_slots[i] = *data_p++; } gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket32.data[0] = stwiParam; @@ -696,7 +696,7 @@ static void rfu_STC_readParentCandidateList(void) numSlots = packet_p[1]; packet_p += 4; gRfuLinkStatus->findParentCount = 0; - for (i = 0; i < RFU_CHILD_MAX && numSlots != 0; i++) + for (i = 0; i < RFU_CHILD_MAX && numSlots != 0; ++i) { numSlots -= 7; uname_p = packet_p + 6; @@ -704,7 +704,7 @@ static void rfu_STC_readParentCandidateList(void) check_sum = ~*packet_p; ++packet_p; my_check_sum = 0; - for (j = 0; j < 8; j++) + for (j = 0; j < 8; ++j) { my_check_sum += *packet_p++; my_check_sum += *uname_p++; @@ -723,10 +723,10 @@ static void rfu_STC_readParentCandidateList(void) else target->mbootFlag = 0; packet_p += 2; - for (j = 0; j < RFU_GAME_NAME_LENGTH; j++) + for (j = 0; j < RFU_GAME_NAME_LENGTH; ++j) target->gname[j] = *packet_p++; ++packet_p; - for (j = 0; j < PLAYER_NAME_LENGTH + 1; j++) + for (j = 0; j < PLAYER_NAME_LENGTH + 1; ++j) target->uname[j] = *packet_p++; ++gRfuLinkStatus->findParentCount; } @@ -737,7 +737,7 @@ void rfu_REQ_startConnectParent(u16 pid) { u16 result = 0; u8 i; - for (i = 0; i < RFU_CHILD_MAX && gRfuLinkStatus->partner[i].id != pid; i++) + for (i = 0; i < RFU_CHILD_MAX && gRfuLinkStatus->partner[i].id != pid; ++i) ; if (i == RFU_CHILD_MAX) result = ERR_PID_NOT_FOUND; @@ -782,7 +782,7 @@ static void rfu_CB_pollConnectParent(u8 reqCommand, u16 reqResult) ++gRfuLinkStatus->connCount; gRfuLinkStatus->parentChild = MODE_CHILD; gRfuStatic->flags |= 0x80; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { if (gRfuLinkStatus->partner[i].id == gRfuStatic->tryPid) { @@ -868,7 +868,7 @@ u16 rfu_syncVBlank(void) { gRfuStatic->flags &= 0xFB; bmSlotFlag = gRfuLinkStatus->connSlotFlag | gRfuLinkStatus->linkLossSlotFlag; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) if ((bmSlotFlag >> i) & 1) rfu_STC_removeLinkData(i, 1); gRfuLinkStatus->parentChild = MODE_NEUTRAL; @@ -921,7 +921,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason newLinkLossFlag ^= gRfuLinkStatus->connSlotFlag; *bmLinkLossSlot = newLinkLossFlag & gRfuLinkStatus->connSlotFlag; *linkLossReason = REASON_LINK_LOSS; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { if ((*bmLinkLossSlot >> i) & 1) { @@ -941,7 +941,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason if (reqResult == 0) { packet_p = &gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4]; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) gRfuLinkStatus->strength[i] = *packet_p++; to_req_disconnect = 0; i = 0; @@ -951,7 +951,7 @@ u16 rfu_REQBN_watchLink(u16 reqCommandId, u8 *bmLinkLossSlot, u8 *linkLossReason rfu_STC_REQ_callback(ID_LINK_STATUS_REQ, reqResult); return reqResult; } - for (; i < RFU_CHILD_MAX; i++) + for (; i < RFU_CHILD_MAX; ++i) { #if LIBRFU_VERSION >= 1026 if (gRfuStatic->lsFixedCount[i] != 0) @@ -1128,7 +1128,7 @@ static void rfu_CB_disconnect(u8 reqCommand, u16 reqResult) gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[8] = gRfuStatic->recoveryBmSlot; if (reqResult == 0) { - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { bm_slot_flag = 1 << i; if (bm_slot_flag & gRfuStatic->recoveryBmSlot) @@ -1153,7 +1153,7 @@ void rfu_REQ_CHILD_startConnectRecovery(u8 bmRecoverySlot) u8 i; gRfuStatic->recoveryBmSlot = bmRecoverySlot; - for (i = 0; i < RFU_CHILD_MAX && !((bmRecoverySlot >> i) & 1); i++) + for (i = 0; i < RFU_CHILD_MAX && !((bmRecoverySlot >> i) & 1); ++i) ; STWI_set_Callback_M(rfu_STC_REQ_callback); // if i == 4, gRfuLinkStatus->partner[i].id becomes gRfuLinkStatus->my.id @@ -1174,7 +1174,7 @@ static void rfu_CB_CHILD_pollConnectRecovery(u8 reqCommand, u16 reqResult) if (reqResult == 0 && gRfuFixed->STWIBuffer->rxPacketAlloc.rfuPacket8.data[4] == 0 && gRfuStatic->recoveryBmSlot) { gRfuLinkStatus->parentChild = MODE_CHILD; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { bm_slot_flag = 1 << i; rfuLinkStatus = gRfuLinkStatus; // ??? @@ -1256,7 +1256,7 @@ void rfu_clearAllSlot(void) u16 IMEBackup = REG_IME; REG_IME = 0; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { CpuFill16(0, gRfuSlotStatusNI[i], 2 * sizeof(struct NIComm)); CpuFill16(0, gRfuSlotStatusUNI[i], sizeof(struct UNISend) + sizeof(struct UNIRecv)); @@ -1324,7 +1324,7 @@ u16 rfu_clearSlot(u8 connTypeFlag, u8 slotStatusIndex) if (NI_comm->state & SLOT_BUSY_FLAG) { rfu_STC_releaseFrame(slotStatusIndex, send_recv, NI_comm); - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) if ((NI_comm->bmSlotOrg >> i) & 1) NI_comm->failCounter = 0; } @@ -1450,7 +1450,7 @@ static u16 rfu_STC_setSendData_org(u8 ni_or_uni, u8 bmSendSlot, u8 subFrameSize, slotStatus_NI->send.src = src; slotStatus_NI->send.ack = 0; slotStatus_NI->send.phase = 0; - for (i = 0; i < WINDOW_COUNT; i++) + for (i = 0; i < WINDOW_COUNT; ++i) { slotStatus_NI->send.recvAckFlag[i] = 0; slotStatus_NI->send.n[i] = 1; @@ -1503,7 +1503,7 @@ u16 rfu_changeSendTarget(u8 connType, u8 slotStatusIndex, u8 bmNewTgtSlot) { imeBak = REG_IME; REG_IME = 0; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { if ((connType >> i) & 1) gRfuSlotStatusNI[i]->send.failCounter = 0; @@ -1536,7 +1536,7 @@ u16 rfu_changeSendTarget(u8 connType, u8 slotStatusIndex, u8 bmNewTgtSlot) if (gRfuSlotStatusUNI[slotStatusIndex]->send.state != SLOT_STATE_SEND_UNI) return ERR_SLOT_NOT_SENDING; - for (bmSlot = 0, i = 0; i < RFU_CHILD_MAX; i++) + for (bmSlot = 0, i = 0; i < RFU_CHILD_MAX; ++i) if (i != slotStatusIndex) bmSlot |= gRfuSlotStatusUNI[i]->send.bmSlot; if (bmNewTgtSlot & bmSlot) @@ -1695,7 +1695,7 @@ static void rfu_CB_sendData(UNUSED u8 reqCommand, u16 reqResult) if (reqResult == 0) { - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { if (gRfuSlotStatusUNI[i]->send.dataReadyFlag) gRfuSlotStatusUNI[i]->send.dataReadyFlag = 0; @@ -1739,7 +1739,7 @@ static void rfu_constructSendLLFrame(void) gRfuLinkStatus->LLFReadyFlag = 0; pakcketSize = 0; llf_p = (u8 *)&gRfuFixed->LLFBuffer[1]; - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { currSize = 0; if (gRfuSlotStatusNI[i]->send.state & SLOT_BUSY_FLAG) @@ -1815,7 +1815,7 @@ static u16 rfu_STC_NI_constructLLSF(u8 bm_slot_id, u8 **dest_pp, struct NIComm * if (gRfuLinkStatus->parentChild == MODE_PARENT) frame |= NI_comm->bmSlot << 18; frame8_p = (u8 *)&frame; - for (i = 0; i < llsf->frameSize; i++) + for (i = 0; i < llsf->frameSize; ++i) *(*dest_pp)++ = *frame8_p++; if (size != 0) { @@ -1853,7 +1853,7 @@ static u16 rfu_STC_UNI_constructLLSF(u8 bm_slot_id, u8 **dest_p) if (gRfuLinkStatus->parentChild == MODE_PARENT) frame |= UNI_send->bmSlot << 18; frame8_p = (u8 *)&frame; - for (i = 0; i < llsf->frameSize; i++) + for (i = 0; i < llsf->frameSize; ++i) *(*dest_p)++ = *frame8_p++; src_p = UNI_send->src; gRfuFixed->fastCopyPtr(&src_p, dest_p, UNI_send->payloadSize); @@ -1888,7 +1888,7 @@ static void rfu_CB_recvData(u8 reqCommand, u16 reqResult) rfu_STC_PARENT_analyzeRecvPacket(); else rfu_STC_CHILD_analyzeRecvPacket(); - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { slotStatusNI = gRfuSlotStatusNI[i]; if (slotStatusNI->recv.state == SLOT_STATE_RECV_LAST && !((gRfuStatic->NIEndRecvFlag >> i) & 1)) @@ -1972,7 +1972,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) if (last_frame < llsf_p->frameSize) return last_frame; frames = 0; - for (i = 0; i < llsf_p->frameSize; i++) + for (i = 0; i < llsf_p->frameSize; ++i) frames |= *src++ << 8 * i; llsf_NI.recvFirst = (frames >> llsf_p->recvFirstShift) & llsf_p->recvFirstMask; llsf_NI.connSlotFlag = (frames >> llsf_p->connSlotFlagShift) & llsf_p->connSlotFlagMask; @@ -1998,7 +1998,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) } else { - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) if (((gRfuSlotStatusNI[i]->send.bmSlot >> slot_id) & 1) && ((gRfuLinkStatus->sendSlotNIFlag >> slot_id) & 1)) break; @@ -2013,7 +2013,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) if (conSlots) { - for (i = 0; i < RFU_CHILD_MAX; i++) + for (i = 0; i < RFU_CHILD_MAX; ++i) { if ((conSlots >> i) & 1) { @@ -2104,7 +2104,7 @@ static void rfu_STC_NI_receive_Sender(u8 NI_slot, u8 bm_flag, const struct RfuLo NI_comm->phase = 0; if (NI_comm->state == SLOT_STATE_SEND_START) { - for (i = 0; i < WINDOW_COUNT; i++) + for (i = 0; i < WINDOW_COUNT; ++i) { NI_comm->n[i] = 1; NI_comm->now_p[i] = NI_comm->src + NI_comm->payloadSize * i; diff --git a/src/librfu_stwi.c b/src/librfu_stwi.c index b765f00fb989..b515f338e0ef 100644 --- a/src/librfu_stwi.c +++ b/src/librfu_stwi.c @@ -208,13 +208,13 @@ void STWI_send_GameConfigREQ(const u8 *serial_gname, const u8 *uname) *(u16 *)packetBytes = *(u16 *)serial_gname; packetBytes += sizeof(u16); serial_gname += sizeof(u16); - for (i = 0; i < 14; i++) + for (i = 0; i < 14; ++i) { *packetBytes = *serial_gname; ++packetBytes; ++serial_gname; } - for (i = 0; i < 8; i++) + for (i = 0; i < 8; ++i) { *packetBytes = *uname; ++packetBytes; diff --git a/src/map_name_popup.c b/src/map_name_popup.c index 866072a2c36b..41054d16d2d0 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -186,7 +186,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, diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 9ae387cffd43..241aed00c13f 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -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, diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index 62eaed8cd776..2723e1200ed7 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -15,7 +15,7 @@ struct GFRomHeader const struct CompressedSpriteSheet * monBackPics; const struct CompressedSpritePalette * monNormalPalettes; const struct CompressedSpritePalette * monShinyPalettes; - const u8 *const * monIcons; + const u8 * const * monIcons; const u8 * monIconPaletteIds; const struct SpritePalette * monIconPalettes; const u8 (* monSpeciesNames)[]; @@ -62,7 +62,7 @@ struct GFRomHeader u32 unk18; const struct BaseStats * baseStats; const u8 (* abilityNames)[]; - const u8 *const * abilityDescriptions; + const u8 * const * abilityDescriptions; const struct Item * items; const struct BattleMove * moves; const struct CompressedSpriteSheet * ballGfx; diff --git a/src/scrcmd.c b/src/scrcmd.c index 53a5d4a2940f..fe5cf95d7635 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -84,7 +84,7 @@ static const u8 sScriptConditionTable[6][3] = 1, 0, 1, // != }; -static u8 *const sScriptStringVars[] = +static u8 * const sScriptStringVars[] = { gStringVar1, gStringVar2, diff --git a/src/trader.c b/src/trader.c index 3de2a4846b2f..040ee695b3f4 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, diff --git a/tools/jsonproc/inja.hpp b/tools/jsonproc/inja.hpp index 56e4027f8e9d..d5bf5bcba42e 100755 --- a/tools/jsonproc/inja.hpp +++ b/tools/jsonproc/inja.hpp @@ -2811,7 +2811,7 @@ class Renderer { if ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop) { popArgs -= 1; } - for (unsigned int i = 0; i < popArgs; i++) { + for (unsigned int i = 0; i < popArgs; ++i) { m_stack.pop_back(); } } @@ -2925,7 +2925,7 @@ class Renderer { void render_to(std::ostream& os, const Template& tmpl, const json& data) { m_data = &data; - for (size_t i = 0; i < tmpl.bytecodes.size(); i++) { + for (size_t i = 0; i < tmpl.bytecodes.size(); ++i) { const auto& bc = tmpl.bytecodes[i]; switch (bc.op) { diff --git a/tools/jsonproc/nlohmann/json.hpp b/tools/jsonproc/nlohmann/json.hpp index 15ab684dd2d3..5003a4fa2ddc 100755 --- a/tools/jsonproc/nlohmann/json.hpp +++ b/tools/jsonproc/nlohmann/json.hpp @@ -1438,7 +1438,7 @@ auto from_json_array_impl(const BasicJsonType& j, std::array& arr, priority_tag<2> /*unused*/) -> decltype(j.template get(), void()) { - for (std::size_t i = 0; i < N; i++) + for (std::size_t i = 0; i < N; ++i) { arr[i] = j.at(i).template get(); } @@ -4301,7 +4301,7 @@ class binary_reader if (len != std::size_t(-1)) { - for (std::size_t i = 0; i < len; i++) + for (std::size_t i = 0; i < len; ++i) { if (JSON_UNLIKELY(not parse_cbor_internal())) { @@ -4338,7 +4338,7 @@ class binary_reader string_t key; if (len != std::size_t(-1)) { - for (std::size_t i = 0; i < len; i++) + for (std::size_t i = 0; i < len; ++i) { get(); if (JSON_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) @@ -4832,7 +4832,7 @@ class binary_reader return false; } - for (std::size_t i = 0; i < len; i++) + for (std::size_t i = 0; i < len; ++i) { if (JSON_UNLIKELY(not parse_msgpack_internal())) { @@ -4855,7 +4855,7 @@ class binary_reader } string_t key; - for (std::size_t i = 0; i < len; i++) + for (std::size_t i = 0; i < len; ++i) { get(); if (JSON_UNLIKELY(not get_msgpack_string(key) or not sax->key(key))) @@ -5190,7 +5190,7 @@ class binary_reader { if (size_and_type.second != 'N') { - for (std::size_t i = 0; i < size_and_type.first; i++) + for (std::size_t i = 0; i < size_and_type.first; ++i) { if (JSON_UNLIKELY(not get_ubjson_value(size_and_type.second))) { @@ -5201,7 +5201,7 @@ class binary_reader } else { - for (std::size_t i = 0; i < size_and_type.first; i++) + for (std::size_t i = 0; i < size_and_type.first; ++i) { if (JSON_UNLIKELY(not parse_ubjson_internal())) { @@ -5251,7 +5251,7 @@ class binary_reader if (size_and_type.second != 0) { - for (std::size_t i = 0; i < size_and_type.first; i++) + for (std::size_t i = 0; i < size_and_type.first; ++i) { if (JSON_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) { @@ -5266,7 +5266,7 @@ class binary_reader } else { - for (std::size_t i = 0; i < size_and_type.first; i++) + for (std::size_t i = 0; i < size_and_type.first; ++i) { if (JSON_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) { @@ -5356,7 +5356,7 @@ class binary_reader { // step 1: read input into array with system's byte order std::array vec; - for (std::size_t i = 0; i < sizeof(NumberType); i++) + for (std::size_t i = 0; i < sizeof(NumberType); ++i) { get(); if (JSON_UNLIKELY(not unexpect_eof(format, "number"))) @@ -6705,7 +6705,7 @@ class lexer token_type return_type) { assert(current == literal_text[0]); - for (std::size_t i = 1; i < length; i++) + for (std::size_t i = 1; i < length; ++i) { if (JSON_UNLIKELY(get() != literal_text[i])) { @@ -9235,7 +9235,7 @@ class json_pointer else { // iterate array and use index as reference string - for (std::size_t i = 0; i < value.m_value.array->size(); i++) + for (std::size_t i = 0; i < value.m_value.array->size(); ++i) { flatten(reference_string + "/" + std::to_string(i), value.m_value.array->operator[](i), result); @@ -12183,7 +12183,7 @@ class serializer // first n-1 elements for (auto i = val.m_value.array->cbegin(); - i != val.m_value.array->cend() - 1; i++) + i != val.m_value.array->cend() - 1; ++i) { o->write_characters(indent_string.c_str(), new_indent); dump(*i, true, ensure_ascii, indent_step, new_indent); @@ -12205,7 +12205,7 @@ class serializer // first n-1 elements for (auto i = val.m_value.array->cbegin(); - i != val.m_value.array->cend() - 1; i++) + i != val.m_value.array->cend() - 1; ++i) { dump(*i, false, ensure_ascii, indent_step, current_indent); o->write_character(','); @@ -12302,7 +12302,7 @@ class serializer std::size_t bytes_after_last_accept = 0; std::size_t undumped_chars = 0; - for (std::size_t i = 0; i < s.size(); i++) + for (std::size_t i = 0; i < s.size(); ++i) { const auto byte = static_cast(s[i]); From e43f65cc692e415148b1be4df33a86f37dcea74e Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 15 Aug 2022 21:06:26 -0400 Subject: [PATCH 678/762] using BATTLE_RUN constants in BattleScript_EffectTeleport --- data/battle_scripts_1.s | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 880957859ac8..3adc07132c6c 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1927,8 +1927,8 @@ BattleScript_EffectTeleport:: ppreduce jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed getifcantrunfrombattle BS_ATTACKER - jumpifbyte CMP_EQUAL, gBattleCommunication, 1, BattleScript_ButItFailed - jumpifbyte CMP_EQUAL, gBattleCommunication, 2, BattleScript_PrintAbilityMadeIneffective + jumpifbyte CMP_EQUAL, gBattleCommunication, BATTLE_RUN_FORBIDDEN, BattleScript_ButItFailed + jumpifbyte CMP_EQUAL, gBattleCommunication, BATTLE_RUN_FAILURE, BattleScript_PrintAbilityMadeIneffective attackanimation waitanimation printstring STRINGID_PKMNFLEDFROMBATTLE From 2ec8f27811888cfb9968112c2dc130da2734400a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 16 Aug 2022 13:00:28 -0400 Subject: [PATCH 679/762] Add missing usage of SOUND_PAN_* --- src/battle_anim_effects_1.c | 10 +++++----- src/battle_anim_effects_2.c | 6 +++--- src/battle_anim_effects_3.c | 20 ++++++++++---------- src/battle_anim_electric.c | 2 +- src/battle_anim_psychic.c | 2 +- src/battle_anim_rock.c | 4 ++-- src/battle_anim_utility_funcs.c | 4 ++-- 7 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 0387d3929133..0ae945c0c7c3 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -3184,14 +3184,14 @@ static void AnimItemSteal_Step3(struct Sprite *sprite) sprite->y2 = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8); if (sprite->y2 == 0) - PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); if (moveAlongLinearPath(sprite)) { sprite->y2 = 0; sprite->data[0] = 0; sprite->callback = AnimItemSteal_Step2; - PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); } } @@ -4264,7 +4264,7 @@ static void AnimLockOnTarget_Step1(struct Sprite *sprite) sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step2); sprite->data[5] += 0x100; - PlaySE12WithPanning(SE_M_LOCK_ON, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_LOCK_ON, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); break; } @@ -4350,7 +4350,7 @@ static void AnimLockOnTarget_Step4(struct Sprite *sprite) sprite->data[2]++; pal = sprite->oam.paletteNum; LoadPalette(&gPlttBufferUnfaded[0x108 + pal * 16], pal * 16 | 0x101, 4); - PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); } else if (sprite->data[1] == 0) { @@ -4812,7 +4812,7 @@ static void AnimSharpenSphere(struct Sprite *sprite) sprite->data[2] = 0; sprite->data[3] = 0; sprite->data[4] = 0; - sprite->data[5] = BattleAnimAdjustPanning(-64); + sprite->data[5] = BattleAnimAdjustPanning(SOUND_PAN_ATTACKER); sprite->callback = AnimSharpenSphere_Step; } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 33065c0dd834..82f3b77d5a1d 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1642,7 +1642,7 @@ static void AirCutterProjectileStep1(u8 taskId) gTasks[taskId].data[gTasks[taskId].data[1] + 13] = spriteId; gTasks[taskId].data[0] = gTasks[taskId].data[3]; gTasks[taskId].data[1]++; - PlaySE12WithPanning(SE_M_BLIZZARD2, BattleAnimAdjustPanning(-63)); + PlaySE12WithPanning(SE_M_BLIZZARD2, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER + 1)); if (gTasks[taskId].data[1] > 2) gTasks[taskId].func = AirCutterProjectileStep2; } @@ -1839,7 +1839,7 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite) int i; u16 rand; s16 *ptr; - PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); sprite->x += sprite->x2; sprite->y += sprite->y2; sprite->y2 = 0; @@ -2485,7 +2485,7 @@ static void AnimPencil(struct Sprite *sprite) sprite->data[3] = 16; sprite->data[4] = 0; sprite->data[5] = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_HEIGHT) + 2; - sprite->data[6] = BattleAnimAdjustPanning(63); + sprite->data[6] = BattleAnimAdjustPanning(SOUND_PAN_TARGET); sprite->callback = AnimPencil_Step; } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 6fca60369a84..f613ff5979fe 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1646,7 +1646,7 @@ static void AnimClappingHand_Step(struct Sprite *sprite) sprite->data[2]++; if (sprite->data[3] == 0) { - PlaySE1WithPanning(SE_M_ENCORE, BattleAnimAdjustPanning(-64)); + PlaySE1WithPanning(SE_M_ENCORE, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); } } } @@ -1930,7 +1930,7 @@ static void TormentAttacker_Step(u8 taskId) y = task->data[3] + task->data[5]; spriteId = CreateSprite(&gThoughtBubbleSpriteTemplate, x, y, 6 - task->data[1]); - PlaySE12WithPanning(SE_M_METRONOME, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_METRONOME, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); if (spriteId != MAX_SPRITES) { @@ -2411,7 +2411,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId) gTasks[taskId].data[11] = gBattle_BG1_Y; gTasks[taskId].data[0]++; - PlaySE12WithPanning(SE_M_MORNING_SUN, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_MORNING_SUN, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); break; case 1: if (gTasks[taskId].data[4]++ > 0) @@ -2446,7 +2446,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId) { gTasks[taskId].data[3] = 0; gTasks[taskId].data[0] = 1; - PlaySE12WithPanning(SE_M_MORNING_SUN, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_MORNING_SUN, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); } break; case 4: @@ -4845,7 +4845,7 @@ static void AnimTask_MonToSubstituteDoll(u8 taskId) if (gSprites[spriteId].y2 == 0) { - PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); gTasks[taskId].data[10] -= 0x800; gTasks[taskId].data[0]++; } @@ -4867,7 +4867,7 @@ static void AnimTask_MonToSubstituteDoll(u8 taskId) if (gSprites[spriteId].y2 == 0) { - PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_BUBBLE2, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); DestroyAnimVisualTask(taskId); } break; @@ -4904,7 +4904,7 @@ static void AnimBlockX_Step(struct Sprite *sprite) sprite->y2 += 10; if (sprite->y2 >= 0) { - PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); sprite->y2 = 0; sprite->data[0]++; } @@ -4914,7 +4914,7 @@ static void AnimBlockX_Step(struct Sprite *sprite) sprite->y2 = -(gSineTable[sprite->data[1]] >> 3); if (sprite->data[1] > 0x7F) { - PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_SKETCH, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); sprite->data[1] = 0; sprite->y2 = 0; sprite->data[0]++; @@ -4933,7 +4933,7 @@ static void AnimBlockX_Step(struct Sprite *sprite) case 3: if (++sprite->data[1] > 8) { - PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); sprite->data[1] = 0; sprite->data[0]++; } @@ -5227,7 +5227,7 @@ static void AnimUnusedItemBagSteal(struct Sprite *sprite) case 0: if (gBattleAnimArgs[7] == -1) { - PlaySE12WithPanning(SE_M_VITAL_THROW, BattleAnimAdjustPanning(63)); + PlaySE12WithPanning(SE_M_VITAL_THROW, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + 16; sprite->data[0] = -32; sprite->data[7]++; diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index ce1c5b19943e..6a92fd607d84 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -1159,7 +1159,7 @@ void AnimTask_ShockWaveProgressingBolt(u8 taskId) task->data[4] = 7; task->data[5] = -1; task->data[11] = 12; - task->data[12] = BattleAnimAdjustPanning(task->data[11] - 76); + task->data[12] = BattleAnimAdjustPanning(SOUND_PAN_ATTACKER); task->data[13] = BattleAnimAdjustPanning(SOUND_PAN_TARGET); task->data[14] = task->data[12]; task->data[15] = (task->data[13] - task->data[12]) / 3; diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index aebf76cc0659..c68ec5d8a5f9 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -1137,7 +1137,7 @@ static void AnimPsychoBoost(struct Sprite *sprite) case 1: if (sprite->affineAnimEnded) { - PlaySE12WithPanning(SE_M_TELEPORT, BattleAnimAdjustPanning(-64)); + PlaySE12WithPanning(SE_M_TELEPORT, BattleAnimAdjustPanning(SOUND_PAN_ATTACKER)); ChangeSpriteAffineAnim(sprite, 1); sprite->data[0]++; } diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index e2ea43fb671c..287a332b5627 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -596,8 +596,8 @@ void AnimTask_Rollout(u8 taskId) task->data[6] = 0; task->data[7] = 0; - pan1 = BattleAnimAdjustPanning(-64); - pan2 = BattleAnimAdjustPanning(63); + pan1 = BattleAnimAdjustPanning(SOUND_PAN_ATTACKER); + pan2 = BattleAnimAdjustPanning(SOUND_PAN_TARGET); task->data[13] = pan1; task->data[14] = (pan2 - pan1) / task->data[8]; diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 688a6e5aea84..4071ce9b98fb 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -535,9 +535,9 @@ static void StatsChangeAnimation_Step2(u8 taskId) gTasks[taskId].func = StatsChangeAnimation_Step3; if (sAnimStatsChangeData->data[0] == 0) - PlaySE12WithPanning(SE_M_STAT_INCREASE, BattleAnimAdjustPanning2(-64)); + PlaySE12WithPanning(SE_M_STAT_INCREASE, BattleAnimAdjustPanning2(SOUND_PAN_ATTACKER)); else - PlaySE12WithPanning(SE_M_STAT_DECREASE, BattleAnimAdjustPanning2(-64)); + PlaySE12WithPanning(SE_M_STAT_DECREASE, BattleAnimAdjustPanning2(SOUND_PAN_ATTACKER)); } static void StatsChangeAnimation_Step3(u8 taskId) From 5933c42439dcdfcfbef28ec5a51ba4dc9645f924 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Tue, 16 Aug 2022 18:23:37 -0400 Subject: [PATCH 680/762] Synced Route 4 and 10's MapSec labels --- include/constants/region_map_sections.h | 4 ++-- src/data/region_map/region_map_entries.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/constants/region_map_sections.h b/include/constants/region_map_sections.h index 65aa3e1ca891..5b8029acf5a9 100644 --- a/include/constants/region_map_sections.h +++ b/include/constants/region_map_sections.h @@ -100,8 +100,8 @@ #define MAPSEC_CINNABAR_ISLAND 0x60 #define MAPSEC_INDIGO_PLATEAU 0x61 #define MAPSEC_SAFFRON_CITY 0x62 -#define MAPSEC_ROUTE_4_FLYDUP 0x63 -#define MAPSEC_ROUTE_10_FLYDUP 0x64 +#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 diff --git a/src/data/region_map/region_map_entries.h b/src/data/region_map/region_map_entries.h index 6b433f90fafa..d1913cd8a002 100644 --- a/src/data/region_map/region_map_entries.h +++ b/src/data/region_map/region_map_entries.h @@ -299,8 +299,8 @@ const struct RegionMapLocation gRegionMapEntries[] = { [MAPSEC_CINNABAR_ISLAND] = { 0, 0, 1, 1, sMapName_CinnabarIsland}, [MAPSEC_INDIGO_PLATEAU] = { 0, 0, 1, 1, sMapName_IndigoPlateau}, [MAPSEC_SAFFRON_CITY] = { 0, 0, 1, 1, sMapName_SaffronCity}, - [MAPSEC_ROUTE_4_FLYDUP] = { 0, 0, 1, 1, sMapName_Route4}, - [MAPSEC_ROUTE_10_FLYDUP] = { 0, 0, 1, 1, sMapName_Route10}, + [MAPSEC_ROUTE_4_POKECENTER] = { 0, 0, 1, 1, sMapName_Route4}, + [MAPSEC_ROUTE_10_POKECENTER] = { 0, 0, 1, 1, sMapName_Route10}, [MAPSEC_ROUTE_1] = { 0, 0, 1, 1, sMapName_Route1}, [MAPSEC_ROUTE_2] = { 0, 0, 1, 1, sMapName_Route2}, [MAPSEC_ROUTE_3] = { 0, 0, 1, 1, sMapName_Route3}, From 936ebbd9737eccbecd93760a36a9d137d7f029f5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Aug 2022 11:47:00 -0400 Subject: [PATCH 681/762] Fix phaseShit typo --- src/librfu_rfu.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 9a5db6d9df53..319743d0d2f4 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -16,7 +16,7 @@ struct LLSFStruct u8 connSlotFlagShift; u8 slotStateShift; u8 ackShift; - u8 phaseShit; + u8 phaseShift; u8 nShift; u8 recvFirstMask; u8 connSlotFlagMask; @@ -89,7 +89,7 @@ static const struct LLSFStruct llsf_struct[2] = { .connSlotFlagShift = 0, .slotStateShift = 10, .ackShift = 9, - .phaseShit = 5, + .phaseShift = 5, .nShift = 7, .recvFirstMask = 2, .connSlotFlagMask = 0, @@ -105,7 +105,7 @@ static const struct LLSFStruct llsf_struct[2] = { .connSlotFlagShift = 18, .slotStateShift = 14, .ackShift = 13, - .phaseShit = 9, + .phaseShift = 9, .nShift = 11, .recvFirstMask = 3, .connSlotFlagMask = 15, @@ -1809,7 +1809,7 @@ static u16 rfu_STC_NI_constructLLSF(u8 bm_slot_id, u8 **dest_pp, struct NIComm * } frame = (NI_comm->state & 0xF) << llsf->slotStateShift | NI_comm->ack << llsf->ackShift - | NI_comm->phase << llsf->phaseShit + | NI_comm->phase << llsf->phaseShift | NI_comm->n[NI_comm->phase] << llsf->nShift | size; if (gRfuLinkStatus->parentChild == MODE_PARENT) @@ -1978,7 +1978,7 @@ static u16 rfu_STC_analyzeLLSF(u8 slot_id, const u8 *src, u16 last_frame) llsf_NI.connSlotFlag = (frames >> llsf_p->connSlotFlagShift) & llsf_p->connSlotFlagMask; llsf_NI.slotState = (frames >> llsf_p->slotStateShift) & llsf_p->slotStateMask; llsf_NI.ack = (frames >> llsf_p->ackShift) & llsf_p->ackMask; - llsf_NI.phase = (frames >> llsf_p->phaseShit) & llsf_p->phaseMask; + llsf_NI.phase = (frames >> llsf_p->phaseShift) & llsf_p->phaseMask; llsf_NI.n = (frames >> llsf_p->nShift) & llsf_p->nMask; llsf_NI.frame = (frames & llsf_p->framesMask) & frames; retVal = llsf_NI.frame + llsf_p->frameSize; From 59f89bde9e8ced4c8240bdaded3b938ee1454def Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 18 Aug 2022 14:23:45 -0400 Subject: [PATCH 682/762] Misc cleanup --- gflib/sprite.c | 2 +- include/battle.h | 2 +- src/battle_controller_link_opponent.c | 21 +++++++++------------ src/battle_controller_opponent.c | 6 +++--- src/battle_controller_recorded_opponent.c | 6 +++--- 5 files changed, 17 insertions(+), 20 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 9fc597cc3b21..cbcd6fb7c0fb 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -103,7 +103,7 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *); #define DUMMY_OAM_DATA \ { \ .y = DISPLAY_HEIGHT, \ - .affineMode = 0, \ + .affineMode = ST_OAM_AFFINE_OFF, \ .objMode = 0, \ .mosaic = FALSE, \ .bpp = 0, \ diff --git a/include/battle.h b/include/battle.h index 0b349e4b6950..38c4cd779d84 100644 --- a/include/battle.h +++ b/include/battle.h @@ -551,7 +551,7 @@ struct BattleHealthboxInfo u8 specialAnimActive:1; // x40 u8 triedShinyMonAnim:1; u8 finishedShinyMonAnim:1; - u8 field_1_x1E:4; + u8 opponentDrawPartyStatusSummaryDelay:4; u8 bgmRestored:1; u8 waitForCry:1; u8 healthboxSlideInStarted:1; diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index a0756b8cb5f1..a9629f6622d6 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -368,16 +368,13 @@ static void TryShinyAnimAfterMonAnim(void) { TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); } - else + else if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) - { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); - FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); - LinkOpponentBufferExecCompleted(); - } + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; + FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); + FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); + LinkOpponentBufferExecCompleted(); } } } @@ -1758,14 +1755,14 @@ static void LinkOpponentHandleDrawPartyStatusSummary(void) if (gBattleBufferA[gActiveBattler][2] != 0) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E < 2) + if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay < 2) { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E++; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay++; return; } else { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E = 0; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay = 0; } } diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index cf155dc76444..641cbd0ace4a 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -1929,14 +1929,14 @@ static void OpponentHandleDrawPartyStatusSummary(void) if (gBattleBufferA[gActiveBattler][2] != 0) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E < 2) + if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay < 2) { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E++; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay++; return; } else { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E = 0; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay = 0; } } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index ebfdbc909ccd..49538b834e29 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -1698,14 +1698,14 @@ static void RecordedOpponentHandleDrawPartyStatusSummary(void) if (gBattleBufferA[gActiveBattler][2] != 0) { - if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E < 2) + if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay < 2) { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E++; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay++; return; } else { - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].field_1_x1E = 0; + gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].opponentDrawPartyStatusSummaryDelay = 0; } } From 3bc2cf921c79530862c8c4b2fff0ce7a5bfef4c9 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 8 Aug 2022 10:06:30 -0400 Subject: [PATCH 683/762] Sync src/battle_controllers.c with pokefirered --- include/battle.h | 2 +- include/battle_controllers.h | 14 ---------- include/battle_message.h | 2 +- src/battle_controllers.c | 54 ++++++++++++++++++++++-------------- src/battle_message.c | 4 +-- 5 files changed, 37 insertions(+), 39 deletions(-) diff --git a/include/battle.h b/include/battle.h index 38c4cd779d84..0eaa60f30f6f 100644 --- a/include/battle.h +++ b/include/battle.h @@ -368,7 +368,7 @@ struct BattleStruct u8 faintedActionsState; u8 faintedActionsBattlerId; u16 expValue; - u8 field_52; + u8 scriptPartyIdx; // for printing the nickname u8 sentInPokes; bool8 selectionScriptFinished[MAX_BATTLERS_COUNT]; u8 battlerPartyIndexes[MAX_BATTLERS_COUNT]; diff --git a/include/battle_controllers.h b/include/battle_controllers.h index f6ac07b91349..064c080f6181 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -202,9 +202,7 @@ void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data); // emitters void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck); -void BtlController_EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes); // unused void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data); -void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data); // unused void BtlController_EmitLoadMonSprite(u8 bufferId); void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit); void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim); @@ -212,10 +210,7 @@ void BtlController_EmitDrawTrainerPic(u8 bufferId); void BtlController_EmitTrainerSlide(u8 bufferId); void BtlController_EmitTrainerSlideBack(u8 bufferId); void BtlController_EmitFaintAnimation(u8 bufferId); -void BtlController_EmitPaletteFade(u8 bufferId); // unused -void BtlController_EmitSuccessBallThrowAnim(u8 bufferId); // unused void BtlController_EmitBallThrowAnim(u8 bufferId, u8 caseId); -void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data); // unused void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr, u8 multihit); void BtlController_EmitPrintString(u8 bufferId, u16 stringId); void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId); @@ -224,24 +219,15 @@ void BtlController_EmitYesNoBox(u8 bufferId); void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData); void BtlController_EmitChooseItem(u8 bufferId, u8 *battlePartyOrder); void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abilityId, u8 *data); -void BtlController_EmitCmd23(u8 bufferId); // unused void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue); void BtlController_EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints); void BtlController_EmitStatusIconUpdate(u8 bufferId, u32 status1, u32 status2); void BtlController_EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status); -void BtlController_EmitStatusXor(u8 bufferId, u8 b); // unused void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data); -void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused -void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data); // unused -void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data); // unused void BtlController_EmitTwoReturnValues(u8 bufferId, u8 ret8, u16 ret16); void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 partyId, u8 *battlePartyOrder); void BtlController_EmitOneReturnValue(u8 bufferId, u16 ret); void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 ret); -void BtlController_EmitClearUnkVar(u8 bufferId); // unused -void BtlController_EmitSetUnkVar(u8 bufferId, u8 b); // unused -void BtlController_EmitClearUnkFlag(u8 bufferId); // unused -void BtlController_EmitToggleUnkFlag(u8 bufferId); // unused void BtlController_EmitHitAnimation(u8 bufferId); void BtlController_EmitCantSwitch(u8 bufferId); void BtlController_EmitPlaySE(u8 bufferId, u16 songId); diff --git a/include/battle_message.h b/include/battle_message.h index cc18a13d220b..ed642fb6ec98 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -202,7 +202,7 @@ struct BattleMsgData u16 lastItem; u8 lastAbility; u8 scrActive; - u8 unk1605E; + u8 bakScriptPartyIdx; u8 hpScale; u8 itemEffectBattler; u8 moveType; diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 42bdba8998b2..20681b27ce1e 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -8,7 +8,6 @@ #include "link.h" #include "link_rfu.h" #include "party_menu.h" -#include "pokemon.h" #include "recorded_battle.h" #include "task.h" #include "util.h" @@ -595,7 +594,7 @@ static void SetBattlePartyIds(void) if (GetMonData(&gPlayerParty[j], MON_DATA_HP) != 0 && GetMonData(&gPlayerParty[j], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&gPlayerParty[j], MON_DATA_SPECIES2) != SPECIES_EGG - && GetMonData(&gPlayerParty[j], MON_DATA_IS_EGG) == 0) + && !GetMonData(&gPlayerParty[j], MON_DATA_IS_EGG)) { gBattlerPartyIndexes[i] = j; break; @@ -606,7 +605,7 @@ static void SetBattlePartyIds(void) if (GetMonData(&gEnemyParty[j], MON_DATA_HP) != 0 && GetMonData(&gEnemyParty[j], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&gEnemyParty[j], MON_DATA_SPECIES2) != SPECIES_EGG - && GetMonData(&gEnemyParty[j], MON_DATA_IS_EGG) == 0) + && !GetMonData(&gEnemyParty[j], MON_DATA_IS_EGG)) { gBattlerPartyIndexes[i] = j; break; @@ -620,7 +619,7 @@ static void SetBattlePartyIds(void) if (GetMonData(&gPlayerParty[j], MON_DATA_HP) != 0 && GetMonData(&gPlayerParty[j], MON_DATA_SPECIES) != SPECIES_NONE // Probably a typo by Game Freak. The rest use SPECIES2. && GetMonData(&gPlayerParty[j], MON_DATA_SPECIES2) != SPECIES_EGG - && GetMonData(&gPlayerParty[j], MON_DATA_IS_EGG) == 0 + && !GetMonData(&gPlayerParty[j], MON_DATA_IS_EGG) && gBattlerPartyIndexes[i - 2] != j) { gBattlerPartyIndexes[i] = j; @@ -632,7 +631,7 @@ static void SetBattlePartyIds(void) if (GetMonData(&gEnemyParty[j], MON_DATA_HP) != 0 && GetMonData(&gEnemyParty[j], MON_DATA_SPECIES2) != SPECIES_NONE && GetMonData(&gEnemyParty[j], MON_DATA_SPECIES2) != SPECIES_EGG - && GetMonData(&gEnemyParty[j], MON_DATA_IS_EGG) == 0 + && !GetMonData(&gEnemyParty[j], MON_DATA_IS_EGG) && gBattlerPartyIndexes[i - 2] != j) { gBattlerPartyIndexes[i] = j; @@ -913,7 +912,8 @@ void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes) +// Unused +static void BtlController_EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes) { sBattleBuffersTransferData[0] = CONTROLLER_GETRAWMONDATA; sBattleBuffersTransferData[1] = monId; @@ -934,7 +934,8 @@ void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 b PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 3 + bytes); } -void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data) +// Unused +static void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data) { s32 i; @@ -1007,7 +1008,8 @@ void BtlController_EmitFaintAnimation(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitPaletteFade(u8 bufferId) +// Unused +static void BtlController_EmitPaletteFade(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_PALETTEFADE; sBattleBuffersTransferData[1] = CONTROLLER_PALETTEFADE; @@ -1016,7 +1018,8 @@ void BtlController_EmitPaletteFade(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitSuccessBallThrowAnim(u8 bufferId) +// Unused +static void BtlController_EmitSuccessBallThrowAnim(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_SUCCESSBALLTHROWANIM; sBattleBuffersTransferData[1] = CONTROLLER_SUCCESSBALLTHROWANIM; @@ -1032,7 +1035,8 @@ void BtlController_EmitBallThrowAnim(u8 bufferId, u8 caseId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2); } -void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data) +// Unused +static void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data) { s32 i; @@ -1089,7 +1093,7 @@ void BtlController_EmitPrintString(u8 bufferId, u16 stringID) stringInfo->lastItem = gLastUsedItem; stringInfo->lastAbility = gLastUsedAbility; stringInfo->scrActive = gBattleScripting.battler; - stringInfo->unk1605E = gBattleStruct->field_52; + stringInfo->bakScriptPartyIdx = gBattleStruct->scriptPartyIdx; stringInfo->hpScale = gBattleStruct->hpScale; stringInfo->itemEffectBattler = gPotentialItemEffectBattler; stringInfo->moveType = gBattleMoves[gCurrentMove].type; @@ -1121,7 +1125,7 @@ void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringID) stringInfo->lastItem = gLastUsedItem; stringInfo->lastAbility = gLastUsedAbility; stringInfo->scrActive = gBattleScripting.battler; - stringInfo->unk1605E = gBattleStruct->field_52; + stringInfo->bakScriptPartyIdx = gBattleStruct->scriptPartyIdx; for (i = 0; i < MAX_BATTLERS_COUNT; i++) stringInfo->abilities[i] = gBattleMons[i].ability; @@ -1191,7 +1195,8 @@ void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 slotId, u8 abili PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 8); // Only 7 bytes were written. } -void BtlController_EmitCmd23(u8 bufferId) +// Unused +static void BtlController_EmitCmd23(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_23; sBattleBuffersTransferData[1] = CONTROLLER_23; @@ -1245,7 +1250,8 @@ void BtlController_EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 6); } -void BtlController_EmitStatusXor(u8 bufferId, u8 b) +// Unused +static void BtlController_EmitStatusXor(u8 bufferId, u8 b) { sBattleBuffersTransferData[0] = CONTROLLER_STATUSXOR; sBattleBuffersTransferData[1] = b; @@ -1265,7 +1271,8 @@ void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 4); } -void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data) +// Unused +static void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data) { s32 i; @@ -1282,7 +1289,7 @@ void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data } // Unused -void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data) +static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data) { s32 i; @@ -1297,7 +1304,8 @@ void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3); } -void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data) +// Unused +static void BtlController_EmitCmd32(u8 bufferId, u16 size, void *data) { s32 i; @@ -1347,7 +1355,8 @@ void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 ret) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitClearUnkVar(u8 bufferId) +// Unused +static void BtlController_EmitClearUnkVar(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_CLEARUNKVAR; sBattleBuffersTransferData[1] = CONTROLLER_CLEARUNKVAR; @@ -1356,14 +1365,16 @@ void BtlController_EmitClearUnkVar(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitSetUnkVar(u8 bufferId, u8 b) +// Unused +static void BtlController_EmitSetUnkVar(u8 bufferId, u8 b) { sBattleBuffersTransferData[0] = CONTROLLER_SETUNKVAR; sBattleBuffersTransferData[1] = b; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2); } -void BtlController_EmitClearUnkFlag(u8 bufferId) +// Unused +static void BtlController_EmitClearUnkFlag(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_CLEARUNKFLAG; sBattleBuffersTransferData[1] = CONTROLLER_CLEARUNKFLAG; @@ -1372,7 +1383,8 @@ void BtlController_EmitClearUnkFlag(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitToggleUnkFlag(u8 bufferId) +// Unused +static void BtlController_EmitToggleUnkFlag(u8 bufferId) { sBattleBuffersTransferData[0] = CONTROLLER_TOGGLEUNKFLAG; sBattleBuffersTransferData[1] = CONTROLLER_TOGGLEUNKFLAG; diff --git a/src/battle_message.c b/src/battle_message.c index 677bb2fe3863..99325e9e805a 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2063,7 +2063,7 @@ void BufferStringBattle(u16 stringID) gLastUsedItem = gBattleMsgDataPtr->lastItem; gLastUsedAbility = gBattleMsgDataPtr->lastAbility; gBattleScripting.battler = gBattleMsgDataPtr->scrActive; - *(&gBattleStruct->field_52) = gBattleMsgDataPtr->unk1605E; + *(&gBattleStruct->scriptPartyIdx) = gBattleMsgDataPtr->bakScriptPartyIdx; *(&gBattleStruct->hpScale) = gBattleMsgDataPtr->hpScale; gPotentialItemEffectBattler = gBattleMsgDataPtr->itemEffectBattler; *(&gBattleStruct->stringMoveType) = gBattleMsgDataPtr->moveType; @@ -2713,7 +2713,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst) } break; case B_TXT_26: // ? - HANDLE_NICKNAME_STRING_CASE(gBattleScripting.battler, *(&gBattleStruct->field_52)) + HANDLE_NICKNAME_STRING_CASE(gBattleScripting.battler, *(&gBattleStruct->scriptPartyIdx)) break; case B_TXT_PC_CREATOR_NAME: // lanette pc if (FlagGet(FLAG_SYS_PC_LANETTE)) From 5e593a62fbfb631068772d1589d556c8a998142e Mon Sep 17 00:00:00 2001 From: Martin Griffin Date: Fri, 19 Aug 2022 04:07:25 +0100 Subject: [PATCH 684/762] Ignore num_tiles if it would truncate non-transparent tiles (#1729) --- graphics/battle_transitions/rayquaza.png | Bin 2308 -> 2074 bytes graphics/battle_transitions/regis.png | Bin 231 -> 256 bytes graphics/picture_frame/lobby.png | Bin 666 -> 719 bytes graphics_file_rules.mk | 222 +++++++++++------------ tools/gbagfx/gfx.c | 32 +++- tools/gbagfx/gfx.h | 8 +- tools/gbagfx/main.c | 9 +- tools/gbagfx/options.h | 2 + 8 files changed, 154 insertions(+), 119 deletions(-) diff --git a/graphics/battle_transitions/rayquaza.png b/graphics/battle_transitions/rayquaza.png index 5c3a914749b5f85021200c247847848369b313e9..00df7d741515db4ec8447efa05ff6ea1d47782ad 100644 GIT binary patch delta 2072 zcmV+z2i}2c=0wK~#9!?VK@k-8K-0i3@13 zRU)PEj4qIw=m0LFK221oirRE}r6=9MO94JH0XsI}mIvru zaK~|C=Yl1@&?wVCbuMszT}>)rQ_nor7b8Hm;C?J{6nJ71aO48Iy4q=&uuB4*7VL&T z#TxMS1mL(}hkv>h)xy_P0BV6dsCW0H*T-ugfL&ng?~EgcTKIYbKrPViw_{3Qj)38M z0GJyHpkJz?2Q|Sw7GEpC4;Y}Hii_KAOB!4sy8m0k;Tn=L14*aDM@w3+`P2zI8MKVBKcqXg{|A z&@>;{YiQe@8I?mHDN}$SCn7DNy9FAs_5l?FoKM_j-yRK6bvwWxFEn77Q0=t?ur9!W zbqDBMKmdG-0MQ&pC@PF^b3w7&f1n>u+1;Cfp$_3bXp>ACa;psL8P##zr34Xlr0m10g^`VvE#|sib zcY%@M#|u&uxbe<1zCW*^c%h2^ z8Ug^+?;-#>=5 z24Jl#wlD?Y$u{Mk#~jWNKL1Nd@z zIX?dE%mdtn0IwZDdx<2R83{eWb-@VeXMeT<@Gp|^w~;Uanjl~#v=IqO!0U~PFcuJy zpbK_$NeFPf83}Dff(5(}0d$yng8@?sNq`PCZ_Gri9)I!6`1sTBQ8&f_I@HzuRM$QJ z;$nRK=_vw09RYNN4p48mdKy9!PK^W$Xd-VOz{v>sj3oSJB+LQ21xH=~*#klnW`6;C z$zuTl3G)Cg0-%jZpa3+YjYz196)RS(Sg~ToiWMtXjBa3TarNm{R{iJ?3+gW*!0e68 z`k4d~x+yaNl1wExAgd7~OIS`h!4yE1AQ!O@2oMY5v@(JVAV?4u6Chdq0{{f`0epbu zO5_3rcbq%}fMmX{1yBG5@O%JePJes~k?9FU=f_{6@E2KZ0Dqy$Ug|#nYMsB~U~hT& zn=baYFK^>1xLaSr-Fyq~_Fr%l5Q3Wm5!@t9YIKp(KpAO;0${(Q&lgZSp}61)wBQN! zf#eDRt_uZA0#p@Cf^GmuLf-)3Hej&?{bYs&82(!(!9I4O1QhUdB}~=}ynl|UDsJtn zVh-lRNT`YxD^{#nv0`7Du@1vj!d3-XwwjZe#a_KEJPm_gnMmPC$OU+dPD#n=h|IOV44pZs?o9`;3r=2u7|Xb2e+V**%=+cEpVDm z&FGAK4dL!O=ouZ9M}J}^WHNs9`~b1jnUZ>PR%ZSpl+mdY`4Cb@r;28DNV6+1J<3ne zvQxzDBsD)x&Q8?xKNYY)R`5TU@ITn_KN;~qTBR~N#fp7B1_wC6Rsdf;fH|1~u>Pio z0JPnbiyj~Ofm&Y%qXS)kDn!xi3$$9#A($P4yWkfYgudul(|;rn=zkGIdTul>B(F}u zZj{|^GkH|&2l;xn9HIn>cO#GmfDHDmpzc~j1qD$;yc|(NyckVFsuW2=S0KLKA^?&n z^C`#nlj~{1S?`%5^UL)ak@IbsdBkiRW(&-<;ShkdljaJ{dU;Obd@O~B1rSDBx{+f3 zut>Vd;{ym=+kdp1C@Uf;fCBhG0KB363|?pUl=k?uGC#1eL)+s=XZ8Yvzrx6bNvWF!FF|Abui>p9jOjMWm~n~J)+C{bHzW};sclI+E-MO6a=*QAGo!S-il$<* znKDQzwu|ICq+FIn8#&0xC{eDJOUkzA{Qmhp=lSFFJpVoCIiGW$ESiX(rip>?_=U=~ z1VH)k-3~iEV{$%ZRfny%pfx^-$Wh=ks*KKchXzS$i^$V?CAC~#6faTbn)rC-JKr*U zcS(;b0kIIYA;fUSs<>1A{D+G0(>d%T8KhjcIQiZKi^VBh`wg~%CGR4GBRZD4E_4dR zZ@8R9Wsep--MRRYWE_j!gmP^mh8>?vZ(t)XalU!K&6|lpV*jocypGUUe=IR2+hfKl z%#@X4oTSDW&64b>-$q86#f3J>TJlH)Wgir7P`WRVR0B-;j_NC`h23m$TK3}SUUbiQ z7XeJhQh%mt29x8n7sL}ltNoTw686i$!TZET3RHpZ4=TGNJ?GZYt;PQhEQ?P8<5m+} z%hf?am!giWg`um<)gc?CF73(Gr*23l*1dK_gr9W~aPEF>NDRp<0^iKSF%JLm&420Z(bf#0?QNsByyJr|AM z){rFw_%ng`5d|?%z-K#rESomz_g$6d0pbbF*KP#7V^uiQIIYWsq>QbyNj9_EzXSeO zxmXnZetP0p!lF7Dl%E8j6w`DKH4${ohZ@g2OHvDJ~R#d#sD>O#GrhkJz=8) zDo`y(ys@nJJ2$8av8LUOuePaB5i5!FdKWpd^e_S{v>WHn(-(NvnZVbh_d}r9v`5`o zvia9bu<`xGHZU1?HMGP}=G?AVsY6ljQl(37PQ-#Mp=)vOtQC`1yb9svkBz^2XM5Zj zEkE1<_F=POk?pYC1^iN1$=}(_<*_Of8_FjOZ57b1ih(&z_&{!1iR+vhuMvtmRPq?gY?bssj37ozpE2kg{2A(mymx{kn*t;+Fcl2`@`$Wg?l z=4>|Dha|?I= zgjk`wO(?v7RC0nkU5Eb+>Wqpt%KH7M19sxSTAVGFS-}@)t~U253<997WY@A(YnFfd zpe{)Ja6N)R0s*9B70KZ^uhYqViU91?~6Al4W@AqCc24JBgs2c^!z>dM{U(_H^kkH0ZTy73~K!SLfNvif22= z9`8YWqj&aSUkGZ>QsSsbC}Gs+Bj7TJ#M2qM>=s-w>?Bw%DZrcr40#sCP#NOYQNPFQ zNMfgz^0+>)Qc*h%Ua$pB&Ig_*68L|VZw7&18EfE(+c&ru2KWx(;7##$<-3;6=VN6D zp$67o6!)E3)_`Wx?|t&hI(L4J)iYj%|%Op_iqvJ&S1j20bv>$R0G?bh<>FdUApM{U)7!{V)^Z2R07WW^>uzIn>8j3 ziQNbS64OFXv;a+Aq}O^hz833gBKV~SRf-3S979t~w;7)iXxHucIxQmzT#aHG%8(DA z;wRBNwH#!Mw2wdjC4wV!Q7-$YlilIV^{pGs({8_bQN+>guE2Z}GFnGO__^hBg$Dgv z!Zn?;biz(|SeJfCJrF?v`x{qbyUhf#d_q zBtx%fwh|=codec~!Dh%=*z_h*+TUbgF-!<{3%`(5%hBKNOb9dx(!{NIwpQt-8x?)O zT%T4;HH=2L;&c0?EtpVaWwXo8zRI%q$L?;N3H@2g z6Br+@TlZWg28#fL$AKlD)uM+M%1*c}bgr~$Pe_9Vj+GCe$5kokSEWF=lSolxWILqP z2&o#J2wWeUS5y)#CWSDr`RCr6pn5sae}QqWu{`gi3wl%zB{?p2wHtgQDzL)ip1mfu z$6-Tq1`g%;Ho61_L{*6#1E1t+r|%c&z;i>F0Vauo7Be6mYj&$jr$9NowFX$fso@J+ z1a5644>8{=JVZF7B*o_JwPVoFv-|EjAWiH2rH=-nqwoOqbDS4qc*|M5@aXy>B`nA&CC zrAx=s-B7bbe@M5b?olyNoz!|4)(WF(O=j*ZaW4b9$KCJm8N!sD7oRu@C1$ECMwh71 XK88E{zfJ4-Z}05h>E>|TjwkpR*N^R3 diff --git a/graphics/battle_transitions/regis.png b/graphics/battle_transitions/regis.png index a0831073746388464d2a66d223c6d51f3a4d5d78..4926b165b75f73f915aeadab416d23942e95a6ee 100644 GIT binary patch delta 239 zcmVi}0Ey;Ma)r p04Ea8M4rmH7kD%AZshGOVh5LV7pxn662kxh002ovPDHLkV1mF9YF_{V delta 214 zcmV;{04e`~0_Opc8Gir(0026Xu z@7p*HO#g-X-#9%F9uuh`aXNV>5i}0$NE#K~zY`#n!!Un@|)7aPkJd zws5B^ikD6q5JTm3=#m$p(p|h|Y3DBOE0}on0_|j3mC}P04}YBst^5Lh1|Fc26LobY z=s6b-A$(k6Q>lN19TE8X+~aV9VPHflvvS<*4FXW9o@;QP%OY3vsK`x*xSqN?2tqn{ z^sdNN0hphPSaT@i;pM)n03hNDMs|@B@PUgOS@RpN|Jrjs0$eW$3CJsW%>{lh1H1wP z{5+xOf?C7pV1KLD@KXagW0jW#e93v^zoKXjc zRUq#Igjp9FfjhX3380^Az|8j*08vE1i+C5;fZuX@rv>mu0r=7geDx)?1Fn|=xC9Nb zYzLk;u^EtBz{>%u08WzzU@xaaTLI)1Y+HbIzZ`0sIDc~$5JAue+%JW#1^gU{T7cck zUbOuoonzBzo7fi#ovQ1hkFyCZIOfcd%M;O~3LBHn5IufP{h5KWa+}Fsi|MFyWdR2<0@s zkkf7e-ha+3u7KNz$8Krw3M}nP@YtGm2Kb%kK^>3{fJ8vnf%7H+=Rxt!Gl1()0ryV8 zJwUonvv4yPbPR%yz{4iy?sEl`H~VDsut_=r|1RR0VVsB_fawTfI(-0XI`aPleV1^8 zms2B;2OKHQ9sqtm0#5xIuxo77q0Q#Ut%HF}Q#%SFolAaTJYos-xqX&k5imS{3F9%A o;5^RvBLMsdJ?H_5O1fV67o5VyG1l973IG5A07*qoM6N<$f{wX8>;M1& delta 653 zcmV;80&@M&1)2qr8Gir(0022}z+(Ua0%1u+K~zYI#n!!Un@|)7aFF7)N-XsOcm}_K z)k3EZj>KuC%JS60;?cpc&@7qTC7YKkl^4j;p|Lt351G0+iaOQEzIlVV=Uh0~gfD>^ z`bS`yz|ZHNgcBQkjLc-7O_02R3o7|*>AgXRze49`X6sxeNPpm~yIt3zYd7C?ZZr^o z(OJzv$H&_}RRMs_6>K7%3~}zoo#W3z^$`F8?Bk#Y_`ak2AHL>*G~ARr;DI`@%>!u{z)8AL z3Y@{YMF71i0Dp7OQvldD0e`H%RRCU##aS(Y2L<4v6!_=~s0IQ*0dNU5z@!>@*~D@{ z)B=7APzCU4mH<7mkhK*+TEUp$GHWN87ROPw0{8(b1pN|K9mFbkw(C7t+TrH zbjpGJP$i&htd{|WvEGOAlxupE-Y|rb6#g+nE^*EtUIx22H@j7 z<_frdc8?8hbKd`5s*L8HU~gH?f1{J0}zK&#$gvg#G&}VK-VQaYFMy diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 42b1e6d74abf..3335179d1e6c 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -64,31 +64,31 @@ $(CASTFORMGFXDIR)/shiny.gbapal: $(CASTFORMGFXDIR)/shiny_normal_form.gbapal \ ### Tilesets ### $(TILESETGFXDIR)/secondary/petalburg/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 159 + $(GFX) $< $@ -num_tiles 159 -Wnum_tiles $(TILESETGFXDIR)/secondary/rustboro/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 498 + $(GFX) $< $@ -num_tiles 498 -Wnum_tiles $(TILESETGFXDIR)/secondary/dewford/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 503 + $(GFX) $< $@ -num_tiles 503 -Wnum_tiles $(TILESETGFXDIR)/secondary/slateport/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 504 + $(GFX) $< $@ -num_tiles 504 -Wnum_tiles $(TILESETGFXDIR)/secondary/mauville/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 503 + $(GFX) $< $@ -num_tiles 503 -Wnum_tiles $(TILESETGFXDIR)/secondary/lavaridge/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 450 + $(GFX) $< $@ -num_tiles 450 -Wnum_tiles $(TILESETGFXDIR)/secondary/fortree/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 493 + $(GFX) $< $@ -num_tiles 493 -Wnum_tiles $(TILESETGFXDIR)/secondary/pacifidlog/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 504 + $(GFX) $< $@ -num_tiles 504 -Wnum_tiles $(TILESETGFXDIR)/secondary/sootopolis/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 328 + $(GFX) $< $@ -num_tiles 328 -Wnum_tiles SOOTOPOLISANIMDIR := $(TILESETGFXDIR)/secondary/sootopolis/anim @@ -125,169 +125,169 @@ $(SOOTOPOLISANIMDIR)/stormy_water/7.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/7_ky @cat $^ >$@ $(TILESETGFXDIR)/secondary/battle_frontier_outside_west/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 508 + $(GFX) $< $@ -num_tiles 508 -Wnum_tiles $(TILESETGFXDIR)/secondary/battle_frontier_outside_east/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 508 + $(GFX) $< $@ -num_tiles 508 -Wnum_tiles $(TILESETGFXDIR)/primary/building/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 502 + $(GFX) $< $@ -num_tiles 502 -Wnum_tiles $(TILESETGFXDIR)/secondary/shop/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 502 + $(GFX) $< $@ -num_tiles 502 -Wnum_tiles $(TILESETGFXDIR)/secondary/pokemon_center/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 478 + $(GFX) $< $@ -num_tiles 478 -Wnum_tiles $(TILESETGFXDIR)/secondary/cave/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 425 + $(GFX) $< $@ -num_tiles 425 -Wnum_tiles $(TILESETGFXDIR)/secondary/pokemon_school/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 278 + $(GFX) $< $@ -num_tiles 278 -Wnum_tiles $(TILESETGFXDIR)/secondary/pokemon_fan_club/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 319 + $(GFX) $< $@ -num_tiles 319 -Wnum_tiles $(TILESETGFXDIR)/secondary/unused_1/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 17 + $(GFX) $< $@ -num_tiles 17 -Wnum_tiles $(TILESETGFXDIR)/secondary/meteor_falls/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 460 + $(GFX) $< $@ -num_tiles 460 -Wnum_tiles $(TILESETGFXDIR)/secondary/oceanic_museum/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 319 + $(GFX) $< $@ -num_tiles 319 -Wnum_tiles $(TILESETGFXDIR)/secondary/cable_club/unknown_tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 120 + $(GFX) $< $@ -num_tiles 120 -Wnum_tiles $(TILESETGFXDIR)/secondary/seashore_house/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 312 + $(GFX) $< $@ -num_tiles 312 -Wnum_tiles $(TILESETGFXDIR)/secondary/pretty_petal_flower_shop/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 345 + $(GFX) $< $@ -num_tiles 345 -Wnum_tiles $(TILESETGFXDIR)/secondary/pokemon_day_care/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 355 + $(GFX) $< $@ -num_tiles 355 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/brown_cave/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/brown_cave/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/tree/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/tree/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/shrub/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/shrub/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/blue_cave/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/blue_cave/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/yellow_cave/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/yellow_cave/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/red_cave/unused_tiles.4bpp: $(TILESETGFXDIR)/secondary/secret_base/red_cave/tiles.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/brown_cave/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/tree/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/shrub/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/blue_cave/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/yellow_cave/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/secret_base/red_cave/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 83 + $(GFX) $< $@ -num_tiles 83 -Wnum_tiles $(TILESETGFXDIR)/secondary/inside_of_truck/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 62 + $(GFX) $< $@ -num_tiles 62 -Wnum_tiles $(TILESETGFXDIR)/secondary/contest/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 430 + $(GFX) $< $@ -num_tiles 430 -Wnum_tiles $(TILESETGFXDIR)/secondary/lilycove_museum/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 431 + $(GFX) $< $@ -num_tiles 431 -Wnum_tiles $(TILESETGFXDIR)/secondary/lab/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 500 + $(GFX) $< $@ -num_tiles 500 -Wnum_tiles $(TILESETGFXDIR)/secondary/underwater/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 500 + $(GFX) $< $@ -num_tiles 500 -Wnum_tiles $(TILESETGFXDIR)/secondary/generic_building/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 509 + $(GFX) $< $@ -num_tiles 509 -Wnum_tiles $(TILESETGFXDIR)/secondary/mauville_game_corner/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 469 + $(GFX) $< $@ -num_tiles 469 -Wnum_tiles $(TILESETGFXDIR)/secondary/unused_2/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 150 + $(GFX) $< $@ -num_tiles 150 -Wnum_tiles $(TILESETGFXDIR)/secondary/rustboro_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 60 + $(GFX) $< $@ -num_tiles 60 -Wnum_tiles $(TILESETGFXDIR)/secondary/dewford_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 61 + $(GFX) $< $@ -num_tiles 61 -Wnum_tiles $(TILESETGFXDIR)/secondary/lavaridge_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 54 + $(GFX) $< $@ -num_tiles 54 -Wnum_tiles $(TILESETGFXDIR)/secondary/petalburg_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 148 + $(GFX) $< $@ -num_tiles 148 -Wnum_tiles $(TILESETGFXDIR)/secondary/fortree_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 61 + $(GFX) $< $@ -num_tiles 61 -Wnum_tiles $(TILESETGFXDIR)/secondary/mossdeep_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 82 + $(GFX) $< $@ -num_tiles 82 -Wnum_tiles $(TILESETGFXDIR)/secondary/sootopolis_gym/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 484 + $(GFX) $< $@ -num_tiles 484 -Wnum_tiles $(TILESETGFXDIR)/secondary/trick_house_puzzle/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 294 + $(GFX) $< $@ -num_tiles 294 -Wnum_tiles $(TILESETGFXDIR)/secondary/inside_ship/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 342 + $(GFX) $< $@ -num_tiles 342 -Wnum_tiles $(TILESETGFXDIR)/secondary/elite_four/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 505 + $(GFX) $< $@ -num_tiles 505 -Wnum_tiles $(TILESETGFXDIR)/secondary/battle_frontier/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 310 + $(GFX) $< $@ -num_tiles 310 -Wnum_tiles $(TILESETGFXDIR)/secondary/battle_factory/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 424 + $(GFX) $< $@ -num_tiles 424 -Wnum_tiles $(TILESETGFXDIR)/secondary/battle_pike/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 382 + $(GFX) $< $@ -num_tiles 382 -Wnum_tiles $(TILESETGFXDIR)/secondary/mirage_tower/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 420 + $(GFX) $< $@ -num_tiles 420 -Wnum_tiles $(TILESETGFXDIR)/secondary/mossdeep_game_corner/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 95 + $(GFX) $< $@ -num_tiles 95 -Wnum_tiles $(TILESETGFXDIR)/secondary/island_harbor/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 503 + $(GFX) $< $@ -num_tiles 503 -Wnum_tiles $(TILESETGFXDIR)/secondary/trainer_hill/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 374 + $(GFX) $< $@ -num_tiles 374 -Wnum_tiles $(TILESETGFXDIR)/secondary/navel_rock/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 420 + $(GFX) $< $@ -num_tiles 420 -Wnum_tiles $(TILESETGFXDIR)/secondary/battle_frontier_ranking_hall/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 136 + $(GFX) $< $@ -num_tiles 136 -Wnum_tiles $(TILESETGFXDIR)/secondary/mystery_events_house/tiles.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 509 + $(GFX) $< $@ -num_tiles 509 -Wnum_tiles @@ -335,13 +335,13 @@ graphics/title_screen/pokemon_logo.gbapal: %.gbapal: %.pal $(GFX) $< $@ -num_colors 224 graphics/pokemon_jump/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 63 + $(GFX) $< $@ -num_tiles 63 -Wnum_tiles graphics/pokenav/region_map.8bpp: %.8bpp: %.png - $(GFX) $< $@ -num_tiles 233 + $(GFX) $< $@ -num_tiles 233 -Wnum_tiles $(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 29 + $(GFX) $< $@ -num_tiles 29 -Wnum_tiles $(BATINTGFXDIR)/textbox.gbapal: $(BATINTGFXDIR)/textbox_0.gbapal \ $(BATINTGFXDIR)/textbox_1.gbapal @@ -385,10 +385,10 @@ $(UNUSEDGFXDIR)/redyellowgreen_frame.bin: $(UNUSEDGFXDIR)/red_frame.bin \ @cat $^ >$@ $(UNUSEDGFXDIR)/color_frames.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 353 + $(GFX) $< $@ -num_tiles 353 -Wnum_tiles $(BATINTGFXDIR)/unused_window2bar.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 5 + $(GFX) $< $@ -num_tiles 5 -Wnum_tiles $(JPCONTESTGFXDIR)/composite_1.4bpp: $(JPCONTESTGFXDIR)/frame_1.4bpp \ $(JPCONTESTGFXDIR)/floor.4bpp \ @@ -404,7 +404,7 @@ $(JPCONTESTGFXDIR)/composite_2.4bpp: $(JPCONTESTGFXDIR)/interface.4bpp \ @cat $^ >$@ $(JPCONTESTGFXDIR)/voltage.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 36 + $(GFX) $< $@ -num_tiles 36 -Wnum_tiles $(BTLANMSPRGFXDIR)/ice_crystals.4bpp: $(BTLANMSPRGFXDIR)/ice_crystals_0.4bpp \ $(BTLANMSPRGFXDIR)/ice_crystals_1.4bpp \ @@ -426,13 +426,13 @@ $(BTLANMSPRGFXDIR)/spark.4bpp: $(BTLANMSPRGFXDIR)/spark_0.4bpp \ @cat $^ >$@ $(MASKSGFXDIR)/unused_level_up.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 14 + $(GFX) $< $@ -num_tiles 14 -Wnum_tiles $(BATTRANSGFXDIR)/vs_frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 16 + $(GFX) $< $@ -num_tiles 16 -Wnum_tiles graphics/party_menu/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 62 + $(GFX) $< $@ -num_tiles 62 -Wnum_tiles $(TYPESGFXDIR)/move_types.4bpp: $(types:%=$(TYPESGFXDIR)/%.4bpp) $(contest_types:%=$(TYPESGFXDIR)/contest_%.4bpp) @cat $^ >$@ @@ -443,29 +443,29 @@ $(TYPESGFXDIR)/move_types.gbapal: $(TYPESGFXDIR)/move_types_1.gbapal \ @cat $^ >$@ graphics/bag/menu.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 53 + $(GFX) $< $@ -num_tiles 53 -Wnum_tiles $(RAYQUAZAGFXDIR)/scene_2/rayquaza.8bpp: %.8bpp: %.png - $(GFX) $< $@ -num_tiles 227 + $(GFX) $< $@ -num_tiles 227 -Wnum_tiles $(RAYQUAZAGFXDIR)/scene_2/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 313 + $(GFX) $< $@ -num_tiles 313 -Wnum_tiles $(RAYQUAZAGFXDIR)/scene_3/rayquaza.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 124 + $(GFX) $< $@ -num_tiles 124 -Wnum_tiles $(RAYQUAZAGFXDIR)/scene_3/rayquaza_tail_fix.4bpp: $(RAYQUAZAGFXDIR)/scene_3/rayquaza_tail.4bpp cp $< $@ head -c 12 /dev/zero >> $@ $(RAYQUAZAGFXDIR)/scene_4/streaks.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 19 + $(GFX) $< $@ -num_tiles 19 -Wnum_tiles $(RAYQUAZAGFXDIR)/scene_4/rayquaza.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 155 + $(GFX) $< $@ -num_tiles 155 -Wnum_tiles graphics/picture_frame/lobby.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 86 + $(GFX) $< $@ -num_tiles 86 -Wnum_tiles $(ROULETTEGFXDIR)/roulette_tilt.4bpp: $(ROULETTEGFXDIR)/shroomish.4bpp \ $(ROULETTEGFXDIR)/tailow.4bpp @@ -478,10 +478,10 @@ $(ROULETTEGFXDIR)/wheel_icons.4bpp: $(ROULETTEGFXDIR)/wynaut.4bpp \ @cat $^ >$@ $(BATTRANSGFXDIR)/regis.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 53 + $(GFX) $< $@ -num_tiles 53 -Wnum_tiles $(BATTRANSGFXDIR)/rayquaza.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 938 + $(GFX) $< $@ -num_tiles 938 -Wnum_tiles $(BATTRANSGFXDIR)/frontier_square_1.4bpp: $(BATTRANSGFXDIR)/frontier_squares_blanktiles.4bpp \ $(BATTRANSGFXDIR)/frontier_squares_1.4bpp @@ -504,20 +504,20 @@ $(SLOTMACHINEGFXDIR)/reel_time_gfx.4bpp: $(SLOTMACHINEGFXDIR)/reel_time_pikachu. @cat $^ >$@ graphics/birch_speech/unused_beauty.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 822 + $(GFX) $< $@ -num_tiles 822 -Wnum_tiles ### PokĂ©mon Storage System ### $(WALLPAPERGFXDIR)/forest/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 55 + $(GFX) $< $@ -num_tiles 55 -Wnum_tiles $(WALLPAPERGFXDIR)/forest/tiles.4bpp: $(WALLPAPERGFXDIR)/forest/frame.4bpp $(WALLPAPERGFXDIR)/forest/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/city/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 52 + $(GFX) $< $@ -num_tiles 52 -Wnum_tiles $(WALLPAPERGFXDIR)/city/tiles.4bpp: $(WALLPAPERGFXDIR)/city/frame.4bpp $(WALLPAPERGFXDIR)/city/bg.4bpp @cat $^ >$@ @@ -526,97 +526,97 @@ $(WALLPAPERGFXDIR)/desert/tiles.4bpp: $(WALLPAPERGFXDIR)/desert/frame.4bpp $(WAL @cat $^ >$@ $(WALLPAPERGFXDIR)/savanna/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 45 + $(GFX) $< $@ -num_tiles 45 -Wnum_tiles $(WALLPAPERGFXDIR)/savanna/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 23 + $(GFX) $< $@ -num_tiles 23 -Wnum_tiles $(WALLPAPERGFXDIR)/savanna/tiles.4bpp: $(WALLPAPERGFXDIR)/savanna/frame.4bpp $(WALLPAPERGFXDIR)/savanna/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/crag/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 49 + $(GFX) $< $@ -num_tiles 49 -Wnum_tiles $(WALLPAPERGFXDIR)/crag/tiles.4bpp: $(WALLPAPERGFXDIR)/crag/frame.4bpp $(WALLPAPERGFXDIR)/crag/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/volcano/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 56 + $(GFX) $< $@ -num_tiles 56 -Wnum_tiles $(WALLPAPERGFXDIR)/volcano/tiles.4bpp: $(WALLPAPERGFXDIR)/volcano/frame.4bpp $(WALLPAPERGFXDIR)/volcano/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/snow/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 57 + $(GFX) $< $@ -num_tiles 57 -Wnum_tiles $(WALLPAPERGFXDIR)/snow/tiles.4bpp: $(WALLPAPERGFXDIR)/snow/frame.4bpp $(WALLPAPERGFXDIR)/snow/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/cave/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 55 + $(GFX) $< $@ -num_tiles 55 -Wnum_tiles $(WALLPAPERGFXDIR)/cave/tiles.4bpp: $(WALLPAPERGFXDIR)/cave/frame.4bpp $(WALLPAPERGFXDIR)/cave/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/beach/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 46 + $(GFX) $< $@ -num_tiles 46 -Wnum_tiles $(WALLPAPERGFXDIR)/beach/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 23 + $(GFX) $< $@ -num_tiles 23 -Wnum_tiles $(WALLPAPERGFXDIR)/beach/tiles.4bpp: $(WALLPAPERGFXDIR)/beach/frame.4bpp $(WALLPAPERGFXDIR)/beach/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/seafloor/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 54 + $(GFX) $< $@ -num_tiles 54 -Wnum_tiles $(WALLPAPERGFXDIR)/seafloor/tiles.4bpp: $(WALLPAPERGFXDIR)/seafloor/frame.4bpp $(WALLPAPERGFXDIR)/seafloor/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/river/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 51 + $(GFX) $< $@ -num_tiles 51 -Wnum_tiles $(WALLPAPERGFXDIR)/river/bg.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 11 + $(GFX) $< $@ -num_tiles 11 -Wnum_tiles $(WALLPAPERGFXDIR)/river/tiles.4bpp: $(WALLPAPERGFXDIR)/river/frame.4bpp $(WALLPAPERGFXDIR)/river/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/sky/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 45 + $(GFX) $< $@ -num_tiles 45 -Wnum_tiles $(WALLPAPERGFXDIR)/sky/tiles.4bpp: $(WALLPAPERGFXDIR)/sky/frame.4bpp $(WALLPAPERGFXDIR)/sky/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/polkadot/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 54 + $(GFX) $< $@ -num_tiles 54 -Wnum_tiles $(WALLPAPERGFXDIR)/polkadot/tiles.4bpp: $(WALLPAPERGFXDIR)/polkadot/frame.4bpp $(WALLPAPERGFXDIR)/polkadot/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/pokecenter/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 35 + $(GFX) $< $@ -num_tiles 35 -Wnum_tiles $(WALLPAPERGFXDIR)/pokecenter/tiles.4bpp: $(WALLPAPERGFXDIR)/pokecenter/frame.4bpp $(WALLPAPERGFXDIR)/pokecenter/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/machine/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 33 + $(GFX) $< $@ -num_tiles 33 -Wnum_tiles $(WALLPAPERGFXDIR)/machine/tiles.4bpp: $(WALLPAPERGFXDIR)/machine/frame.4bpp $(WALLPAPERGFXDIR)/machine/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/plain/frame.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 18 + $(GFX) $< $@ -num_tiles 18 -Wnum_tiles $(WALLPAPERGFXDIR)/plain/tiles.4bpp: $(WALLPAPERGFXDIR)/plain/frame.4bpp $(WALLPAPERGFXDIR)/plain/bg.4bpp @cat $^ >$@ $(WALLPAPERGFXDIR)/friends_frame1.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 57 + $(GFX) $< $@ -num_tiles 57 -Wnum_tiles $(WALLPAPERGFXDIR)/friends_frame2.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 57 + $(GFX) $< $@ -num_tiles 57 -Wnum_tiles $(WALLPAPERGFXDIR)/zigzagoon/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame1.4bpp $(WALLPAPERGFXDIR)/zigzagoon/bg.4bpp @cat $^ >$@ @@ -667,13 +667,13 @@ $(WALLPAPERGFXDIR)/whiscash/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $ @cat $^ >$@ $(OBJEVENTGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 11 + $(GFX) $< $@ -num_tiles 11 -Wnum_tiles $(INTERFACEGFXDIR)/selector_outline.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 8 + $(GFX) $< $@ -num_tiles 8 -Wnum_tiles $(BATTRANSGFXDIR)/frontier_logo_center.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 43 + $(GFX) $< $@ -num_tiles 43 -Wnum_tiles @@ -695,19 +695,19 @@ $(PKNAVOPTIONSGFXDIR)/options.4bpp: $(PKNAVOPTIONSGFXDIR)/hoenn_map.4bpp \ @cat $^ >$@ $(PKNAVGFXDIR)/header.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 53 + $(GFX) $< $@ -num_tiles 53 -Wnum_tiles $(PKNAVGFXDIR)/device_outline.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 53 + $(GFX) $< $@ -num_tiles 53 -Wnum_tiles $(PKNAVGFXDIR)/match_call/ui.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 13 + $(GFX) $< $@ -num_tiles 13 -Wnum_tiles $(POKEDEXGFXDIR)/region_map.8bpp: %.8bpp: %.png - $(GFX) $< $@ -num_tiles 232 + $(GFX) $< $@ -num_tiles 232 -Wnum_tiles $(POKEDEXGFXDIR)/region_map_affine.8bpp: %.8bpp: %.png - $(GFX) $< $@ -num_tiles 233 + $(GFX) $< $@ -num_tiles 233 -Wnum_tiles $(STARTERGFXDIR)/birch_help.4bpp: $(STARTERGFXDIR)/birch_bag.4bpp $(STARTERGFXDIR)/birch_grass.4bpp @cat $^ >$@ diff --git a/tools/gbagfx/gfx.c b/tools/gbagfx/gfx.c index 4e85953fdc58..832e9bb39710 100644 --- a/tools/gbagfx/gfx.c +++ b/tools/gbagfx/gfx.c @@ -397,7 +397,7 @@ void ReadImage(char *path, int tilesWidth, int bitDepth, int metatileWidth, int free(buffer); } -void WriteImage(char *path, int numTiles, int bitDepth, int metatileWidth, int metatileHeight, struct Image *image, bool invertColors) +void WriteImage(char *path, enum NumTilesMode numTilesMode, int numTiles, int bitDepth, int metatileWidth, int metatileHeight, struct Image *image, bool invertColors) { int tileSize = bitDepth * 8; @@ -424,7 +424,8 @@ void WriteImage(char *path, int numTiles, int bitDepth, int metatileWidth, int m FATAL_ERROR("The specified number of tiles (%d) is greater than the maximum possible value (%d).\n", numTiles, maxNumTiles); int bufferSize = numTiles * tileSize; - unsigned char *buffer = malloc(bufferSize); + int maxBufferSize = maxNumTiles * tileSize; + unsigned char *buffer = malloc(maxBufferSize); if (buffer == NULL) FATAL_ERROR("Failed to allocate memory for pixels.\n"); @@ -433,17 +434,36 @@ void WriteImage(char *path, int numTiles, int bitDepth, int metatileWidth, int m switch (bitDepth) { case 1: - ConvertToTiles1Bpp(image->pixels, buffer, numTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); + ConvertToTiles1Bpp(image->pixels, buffer, maxNumTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); break; case 4: - ConvertToTiles4Bpp(image->pixels, buffer, numTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); + ConvertToTiles4Bpp(image->pixels, buffer, maxNumTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); break; case 8: - ConvertToTiles8Bpp(image->pixels, buffer, numTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); + ConvertToTiles8Bpp(image->pixels, buffer, maxNumTiles, metatilesWide, metatileWidth, metatileHeight, invertColors); break; } - WriteWholeFile(path, buffer, bufferSize); + bool zeroPadded = true; + for (int i = bufferSize; i < maxBufferSize && zeroPadded; i++) { + if (buffer[i] != 0) + { + switch (numTilesMode) + { + case NUM_TILES_IGNORE: + break; + case NUM_TILES_WARN: + fprintf(stderr, "Ignoring -num_tiles %d because tile %d contains non-transparent pixels.\n", numTiles, 1 + i / tileSize); + zeroPadded = false; + break; + case NUM_TILES_ERROR: + FATAL_ERROR("Tile %d contains non-transparent pixels.\n", 1 + i / tileSize); + break; + } + } + } + + WriteWholeFile(path, buffer, zeroPadded ? bufferSize : maxBufferSize); free(buffer); } diff --git a/tools/gbagfx/gfx.h b/tools/gbagfx/gfx.h index edb9e62c41d0..f1dbfcf4f720 100644 --- a/tools/gbagfx/gfx.h +++ b/tools/gbagfx/gfx.h @@ -44,8 +44,14 @@ struct Image { bool isAffine; }; +enum NumTilesMode { + NUM_TILES_IGNORE, + NUM_TILES_WARN, + NUM_TILES_ERROR, +}; + void ReadImage(char *path, int tilesWidth, int bitDepth, int metatileWidth, int metatileHeight, struct Image *image, bool invertColors); -void WriteImage(char *path, int numTiles, int bitDepth, int metatileWidth, int metatileHeight, struct Image *image, bool invertColors); +void WriteImage(char *path, enum NumTilesMode numTilesMode, int numTiles, int bitDepth, int metatileWidth, int metatileHeight, struct Image *image, bool invertColors); void FreeImage(struct Image *image); void ReadGbaPalette(char *path, struct Palette *palette); void WriteGbaPalette(char *path, struct Palette *palette); diff --git a/tools/gbagfx/main.c b/tools/gbagfx/main.c index cf3031696133..5d4faacab044 100644 --- a/tools/gbagfx/main.c +++ b/tools/gbagfx/main.c @@ -77,7 +77,7 @@ void ConvertPngToGba(char *inputPath, char *outputPath, struct PngToGbaOptions * ReadPng(inputPath, &image); - WriteImage(outputPath, options->numTiles, options->bitDepth, options->metatileWidth, options->metatileHeight, &image, !image.hasPalette); + WriteImage(outputPath, options->numTilesMode, options->numTiles, options->bitDepth, options->metatileWidth, options->metatileHeight, &image, !image.hasPalette); FreeImage(&image); } @@ -179,6 +179,7 @@ void HandlePngToGbaCommand(char *inputPath, char *outputPath, int argc, char **a char *outputFileExtension = GetFileExtensionAfterDot(outputPath); int bitDepth = outputFileExtension[0] - '0'; struct PngToGbaOptions options; + options.numTilesMode = NUM_TILES_IGNORE; options.numTiles = 0; options.bitDepth = bitDepth; options.metatileWidth = 1; @@ -203,6 +204,12 @@ void HandlePngToGbaCommand(char *inputPath, char *outputPath, int argc, char **a if (options.numTiles < 1) FATAL_ERROR("Number of tiles must be positive.\n"); } + else if (strcmp(option, "-Wnum_tiles") == 0) { + options.numTilesMode = NUM_TILES_WARN; + } + else if (strcmp(option, "-Werror=num_tiles") == 0) { + options.numTilesMode = NUM_TILES_ERROR; + } else if (strcmp(option, "-mwidth") == 0) { if (i + 1 >= argc) diff --git a/tools/gbagfx/options.h b/tools/gbagfx/options.h index 3b038f572dfb..250b723450aa 100644 --- a/tools/gbagfx/options.h +++ b/tools/gbagfx/options.h @@ -4,6 +4,7 @@ #define OPTIONS_H #include +#include "gfx.h" struct GbaToPngOptions { char *paletteFilePath; @@ -18,6 +19,7 @@ struct GbaToPngOptions { struct PngToGbaOptions { int numTiles; + enum NumTilesMode numTilesMode; int bitDepth; int metatileWidth; int metatileHeight; From cce99189080cea6b8745aca84cfd75d0858c0822 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 18 Aug 2022 23:13:27 -0400 Subject: [PATCH 685/762] Add Wnum_tiles to additional num_tiles rules --- graphics_file_rules.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 3335179d1e6c..742f7d1b866d 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -713,10 +713,10 @@ $(STARTERGFXDIR)/birch_help.4bpp: $(STARTERGFXDIR)/birch_bag.4bpp $(STARTERGFXDI @cat $^ >$@ $(NAMINGGFXDIR)/cursor.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 5 + $(GFX) $< $@ -num_tiles 5 -Wnum_tiles $(NAMINGGFXDIR)/cursor_squished.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 5 + $(GFX) $< $@ -num_tiles 5 -Wnum_tiles $(NAMINGGFXDIR)/cursor_filled.4bpp: %.4bpp: %.png - $(GFX) $< $@ -num_tiles 5 + $(GFX) $< $@ -num_tiles 5 -Wnum_tiles From c2d5dd2a1fd85b48c3dec49e89f5a26ed3bc4a44 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 17 Aug 2022 11:44:20 -0400 Subject: [PATCH 686/762] Additional battle anim sync --- data/battle_anim_scripts.s | 20 +++++++++--------- include/battle_anim.h | 2 +- include/battle_interface.h | 11 ++++++---- src/battle_anim_effects_1.c | 6 +++--- src/battle_anim_effects_2.c | 7 ++----- src/battle_anim_effects_3.c | 14 ++++++------- src/battle_anim_electric.c | 2 +- src/battle_anim_fight.c | 4 ++-- src/battle_anim_fire.c | 4 ++-- src/battle_anim_flying.c | 8 +++---- src/battle_anim_ice.c | 32 +++++++++++++++------------- src/battle_anim_mon_movement.c | 37 ++++++++++++--------------------- src/battle_anim_mons.c | 30 +++++++++++++------------- src/battle_anim_psychic.c | 6 ++---- src/battle_anim_sound_tasks.c | 4 ++-- src/battle_anim_throw.c | 14 ++++++------- src/battle_anim_utility_funcs.c | 2 +- 17 files changed, 97 insertions(+), 106 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index eff53de84511..8eaff7c07f6b 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -798,14 +798,14 @@ Move_DOUBLE_EDGE: createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, ANIM_TARGET, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -32, 0, 0, 3 waitforvisualfinish - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 0 - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 0 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 0 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_WHITE waitforvisualfinish - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 1 - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 1 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 1 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 1 waitforvisualfinish createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5 delay 3 @@ -2441,7 +2441,7 @@ Move_HORN_ATTACK: Move_FURY_ATTACK: loadspritegfx ANIM_TAG_IMPACT loadspritegfx ANIM_TAG_HORN_HIT - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, 0, 2 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, ANIM_ATTACKER, 2 choosetwoturnanim FuryAttackRight, FuryAttackLeft FuryAttackContinue: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 @@ -2590,7 +2590,7 @@ Move_LOW_KICK: createsprite gSlidingKickSpriteTemplate, ANIM_TARGET, 2, -24, 28, 40, 8, 160, 0 delay 4 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, ANIM_TARGET, 2 - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, 1, 2 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, ANIM_TARGET, 2 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 4 @@ -2835,7 +2835,7 @@ SkullBashSetUpHeadDown: createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -24, 0, 0, 10, 0 playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, 0, 2 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, ANIM_ATTACKER, 2 waitforvisualfinish createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 10, 1 waitforvisualfinish @@ -3958,7 +3958,7 @@ Move_MIST_BALL: createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16 delay 0 playsewithpan SE_M_HAZE, 0 - createvisualtask AnimTask_LoadMistTiles, 5 + createvisualtask AnimTask_MistBallFog, 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 3, 0, 16, RGB_WHITE delay 8 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0 @@ -8570,14 +8570,14 @@ Move_ARM_THRUST: loadspritegfx ANIM_TAG_IMPACT splitbgprio ANIM_TARGET setalpha 12, 8 - createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 0 + createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 0 delay 6 createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 3 delay 4 playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET createsprite gArmThrustHandSpriteTemplate, ANIM_TARGET, 2, 10, -8, 14, 3 waitforvisualfinish - createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 1 + createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 1 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET choosetwoturnanim ArmThrustRight, ArmThrustLeft ArmThrustContinue: diff --git a/include/battle_anim.h b/include/battle_anim.h index 5ac512346aad..0fe0d189801e 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -120,7 +120,7 @@ void PrepareBattlerSpriteForRotScale(u8 spriteId, u8 objMode); 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 AnimDummyReturnArg(u8 battler); +u8 GetSpritePalIdxByBattler(u8 battler); s16 CloneBattlerSpriteWithBlend(u8); void DestroySpriteWithActiveSheet(struct Sprite *); u8 CreateInvisibleSpriteCopy(int, u8, int); diff --git a/include/battle_interface.h b/include/battle_interface.h index c4816e8da51b..ed71b88454b8 100644 --- a/include/battle_interface.h +++ b/include/battle_interface.h @@ -34,16 +34,19 @@ enum #define TAG_HEALTHBAR_PLAYER2_TILE 0xD706 #define TAG_HEALTHBAR_OPPONENT2_TILE 0xD707 +#define TAG_HEALTHBOX_PALS_1 0xD709 +#define TAG_HEALTHBOX_PALS_2 0xD70A #define TAG_HEALTHBOX_SAFARI_TILE 0xD70B - #define TAG_STATUS_SUMMARY_BAR_TILE 0xD70C -#define TAG_STATUS_SUMMARY_BALLS_TILE 0xD714 -#define TAG_HEALTHBOX_PAL 0xD6FF -#define TAG_HEALTHBAR_PAL 0xD704 #define TAG_STATUS_SUMMARY_BAR_PAL 0xD710 #define TAG_STATUS_SUMMARY_BALLS_PAL 0xD712 +#define TAG_STATUS_SUMMARY_BALLS_TILE 0xD714 + +#define TAG_HEALTHBAR_PAL TAG_HEALTHBAR_PLAYER1_TILE +#define TAG_HEALTHBOX_PAL TAG_HEALTHBOX_PLAYER1_TILE + enum { HEALTHBOX_ALL, diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 0ae945c0c7c3..757576efa1ec 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -84,7 +84,7 @@ static void AnimMilkBottle(struct Sprite *); static void AnimMilkBottle_Step1(struct Sprite *); static void AnimMilkBottle_Step2(struct Sprite *, int, int); static void AnimGrantingStars(struct Sprite *); -static void AnimSparkingStars(struct Sprite *); +static void AnimSparklingStars(struct Sprite *); static void AnimBubbleBurst(struct Sprite *); static void AnimBubbleBurst_Step(struct Sprite *); static void AnimSleepLetterZ(struct Sprite *); @@ -1416,7 +1416,7 @@ const struct SpriteTemplate gSparklingStarsSpriteTemplate = .anims = gGrantingStarsAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimSparkingStars, + .callback = AnimSparklingStars, }; static const union AnimCmd sAnim_BubbleBurst[] = @@ -4137,7 +4137,7 @@ static void AnimGrantingStars(struct Sprite *sprite) sprite->callback = TranslateSpriteLinearFixedPoint; } -static void AnimSparkingStars(struct Sprite *sprite) +static void AnimSparklingStars(struct Sprite *sprite) { u8 battler; if (!gBattleAnimArgs[2]) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 82f3b77d5a1d..5bd28acea112 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -3043,9 +3043,7 @@ void AnimTask_FreeMusicNotesPals(u8 taskId) static void SetMusicNotePalette(struct Sprite *sprite, u8 a, u8 b) { - u8 tile; - tile = (b & 1); - tile = ((-tile | tile) >> 31) & 32; + u8 tile = (b & 1) ? 32 : 0; sprite->oam.tileNum += tile + (a << 2); sprite->oam.paletteNum = IndexOfSpritePaletteTag(sMusicNotePaletteTagsTable[b >> 1]); } @@ -3792,8 +3790,7 @@ static void AnimPerishSongMusicNote_Step2(struct Sprite *sprite) if (sprite->data[4] > 3) { - int var1 = sprite->data[2]; - sprite->invisible = var1 - (((s32)(var1 + ((u32)var1 >> 31)) >> 1) << 1); + sprite->invisible = sprite->data[2] % 2; DestroyAnimSprite(sprite); } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index f613ff5979fe..c0f400a5559e 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2107,7 +2107,7 @@ static void AnimWishStar(struct Sprite *sprite) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) sprite->x = -16; else - sprite->x = 256; + sprite->x = DISPLAY_WIDTH + 16; sprite->y = 0; sprite->callback = AnimWishStar_Step; @@ -2136,7 +2136,7 @@ static void AnimWishStar_Step(struct Sprite *sprite) } newX = sprite->x + sprite->x2 + 32; - if (newX > 304) + if (newX > DISPLAY_WIDTH + 64) DestroyAnimSprite(sprite); } @@ -3183,7 +3183,7 @@ static void AnimReversalOrb_Step(struct Sprite *sprite) // Copies the target mon's sprite, and makes a white silhouette that shrinks away. void AnimTask_RolePlaySilhouette(u8 taskId) { - u8 isBackPic; + bool8 isBackPic; u32 personality; u32 otId; u16 species; @@ -3206,7 +3206,7 @@ void AnimTask_RolePlaySilhouette(u8 taskId) { if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { - isBackPic = 0; + isBackPic = FALSE; personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gBattleAnimTarget]], MON_DATA_PERSONALITY); otId = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gBattleAnimTarget]], MON_DATA_OT_ID); if (gBattleSpritesDataPtr->battlerData[gBattleAnimTarget].transformSpecies == SPECIES_NONE) @@ -3226,7 +3226,7 @@ void AnimTask_RolePlaySilhouette(u8 taskId) } else { - isBackPic = 1; + isBackPic = TRUE; personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattleAnimTarget]], MON_DATA_PERSONALITY); otId = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattleAnimTarget]], MON_DATA_OT_ID); if (gBattleSpritesDataPtr->battlerData[gBattleAnimTarget].transformSpecies == SPECIES_NONE) @@ -5097,7 +5097,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) gTasks[taskId].data[1] &= 0xFF; x = gSprites[spriteId].x + gSprites[spriteId].x2; - if ((u16)(x + 32) > 304) + if (x < -32 || x > DISPLAY_WIDTH + 32) { gTasks[taskId].data[1] = 0; gTasks[taskId].data[0]++; @@ -5180,7 +5180,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) } } - if ((u16)(x + 32) > 304) + if (x < -32 || x > DISPLAY_WIDTH + 32) { gTasks[taskId].data[1] = 0; gTasks[taskId].data[0]++; diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 6a92fd607d84..b6a82b8d9a1e 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -583,7 +583,7 @@ static void AnimZapCannonSpark(struct Sprite *sprite) sprite->data[7] = gBattleAnimArgs[4]; sprite->oam.tileNum += gBattleAnimArgs[6] * 4; sprite->callback = AnimZapCannonSpark_Step; - AnimZapCannonSpark_Step(sprite); + sprite->callback(sprite); } static void AnimZapCannonSpark_Step(struct Sprite *sprite) diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index dc668e6ff6cb..0d7b977e9d53 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -500,7 +500,7 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite) sprite->data[0] = gBattleAnimArgs[1]; sprite->data[7] = CreateSprite(&gBasicHitSplatSpriteTemplate, sprite->x, sprite->y, sprite->subpriority + 1); - if (sprite->data[7] != 64) + if (sprite->data[7] != MAX_SPRITES) { StartSpriteAffineAnim(&gSprites[sprite->data[7]], 0); gSprites[sprite->data[7]].callback = SpriteCallbackDummy; @@ -513,7 +513,7 @@ static void AnimFistOrFootRandomPos_Step(struct Sprite *sprite) { if (sprite->data[0] == 0) { - if (sprite->data[7] != 64) + if (sprite->data[7] != MAX_SPRITES) { FreeOamMatrix(gSprites[sprite->data[7]].oam.matrixNum); DestroySprite(&gSprites[sprite->data[7]]); diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index cbfe21c6098a..72d802f19ae1 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -1227,8 +1227,8 @@ void AnimTask_MoveHeatWaveTargets(u8 taskId) { struct Task *task = &gTasks[taskId]; - task->data[12] = !GetBattlerSide(gBattleAnimAttacker) ? 1 : -1; - task->data[13] = IsBattlerSpriteVisible(gBattleAnimTarget ^ 2) + 1; + task->data[12] = GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER ? 1 : -1; + task->data[13] = IsBattlerSpriteVisible(gBattleAnimTarget ^ BIT_FLANK) + 1; task->data[14] = GetAnimBattlerSpriteId(ANIM_TARGET); task->data[15] = GetAnimBattlerSpriteId(ANIM_DEF_PARTNER); diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 59474eae3a4e..8609a8e172f2 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -528,8 +528,8 @@ static void AnimFlyBallAttack_Step(struct Sprite *sprite) } if (sprite->x + sprite->x2 < -32 - || sprite->x + sprite->x2 > DISPLAY_WIDTH + 32 - || sprite->y + sprite->y2 > DISPLAY_HEIGHT) + || sprite->x + sprite->x2 > DISPLAY_WIDTH + 32 + || sprite->y + sprite->y2 > DISPLAY_HEIGHT) { gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; DestroyAnimSprite(sprite); @@ -1215,8 +1215,8 @@ void AnimSkyAttackBird_Step(struct Sprite *sprite) sprite->x = sprite->data[4] >> 4; sprite->y = sprite->data[5] >> 4; - if (sprite->x > 285 || sprite->x < -45 - || sprite->y > 157 || sprite->y < -45) + if (sprite->x > DISPLAY_WIDTH + 45 || sprite->x < -45 + || sprite->y > 157 || sprite->y < -45) DestroySpriteAndMatrix(sprite); } diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 6a0ff1154acc..433a7daf087b 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -45,7 +45,7 @@ static void AnimThrowIceBall(struct Sprite *); static void InitIceBallParticle(struct Sprite *); static void AnimIceBallParticle(struct Sprite *); static void AnimTask_HazeScrollingFog_Step(u8); -static void AnimTask_LoadMistTiles_Step(u8); +static void AnimTask_MistBallFog_Step(u8); static void AnimTask_Hail2(u8); static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId, u8 c); @@ -353,7 +353,7 @@ const struct SpriteTemplate gMistBallSpriteTemplate = .callback = AnimThrowMistBall, }; -static const u8 wMistBlendAmounts[] = +static const u8 sMistBlendAmounts[] = { 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, }; @@ -696,7 +696,8 @@ static void AnimSwirlingSnowball(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 16 + || sprite->x + sprite->x2 < -16 || sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16) break; @@ -762,7 +763,8 @@ static void AnimSwirlingSnowball_End(struct Sprite *sprite) sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + if (sprite->x + sprite->x2 > 256 + || sprite->x + sprite->x2 < -16 || sprite->y + sprite->y2 > 256 || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); @@ -816,7 +818,8 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite) { sprite->data[0] = 1; AnimFastTranslateLinear(sprite); - if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 16 + || sprite->x + sprite->x2 < -16 || sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16) break; @@ -846,7 +849,8 @@ static void AnimWiggleParticleTowardsTarget(struct Sprite *sprite) sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF; if (sprite->data[0] == 1) { - if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32 + if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 16 + || sprite->x + sprite->x2 < -16 || sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16) DestroyAnimSprite(sprite); @@ -1086,7 +1090,7 @@ static void AnimThrowMistBall(struct Sprite *sprite) } // Displays misty background in Mist Ball. -void AnimTask_LoadMistTiles(u8 taskId) +void AnimTask_MistBallFog(u8 taskId) { struct BattleAnimBgData animBg; @@ -1109,10 +1113,10 @@ void AnimTask_LoadMistTiles(u8 taskId) LoadPalette(&gFogPalette, animBg.paletteId * 16, 32); gTasks[taskId].data[15] = -1; - gTasks[taskId].func = AnimTask_LoadMistTiles_Step; + gTasks[taskId].func = AnimTask_MistBallFog_Step; } -static void AnimTask_LoadMistTiles_Step(u8 taskId) +static void AnimTask_MistBallFog_Step(u8 taskId) { struct BattleAnimBgData animBg; @@ -1123,7 +1127,7 @@ static void AnimTask_LoadMistTiles_Step(u8 taskId) { case 0: gTasks[taskId].data[9] += 1; - gTasks[taskId].data[11] = wMistBlendAmounts[gTasks[taskId].data[9]]; + gTasks[taskId].data[11] = sMistBlendAmounts[gTasks[taskId].data[9]]; SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[11], 17 - gTasks[taskId].data[11])); if (gTasks[taskId].data[11] == 5) { @@ -1410,14 +1414,14 @@ static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId, } else { - battlerX = (sHailCoordData[hailStructId].x); - battlerY = (sHailCoordData[hailStructId].y); + battlerX = sHailCoordData[hailStructId].x; + battlerY = sHailCoordData[hailStructId].y; } } else { - battlerX = (sHailCoordData[hailStructId].x); - battlerY = (sHailCoordData[hailStructId].y); + battlerX = sHailCoordData[hailStructId].x; + battlerY = sHailCoordData[hailStructId].y; } spriteX = battlerX - ((battlerY + 8) / 2); id = CreateSprite(&gHailParticleSpriteTemplate, spriteX, -8, 18); diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index 77e50c9a455f..09393a2a7b9f 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -5,7 +5,6 @@ #include "task.h" #include "trig.h" -// This file's functions. static void AnimTask_ShakeMon_Step(u8 taskId); static void AnimTask_ShakeMon2_Step(u8 taskId); static void AnimTask_ShakeMonInPlace_Step(u8 taskId); @@ -108,7 +107,7 @@ void AnimTask_ShakeMon(u8 taskId) gTasks[taskId].data[4] = gBattleAnimArgs[1]; gTasks[taskId].data[5] = gBattleAnimArgs[2]; gTasks[taskId].func = AnimTask_ShakeMon_Step; - AnimTask_ShakeMon_Step(taskId); + gTasks[taskId].func(taskId); } static void AnimTask_ShakeMon_Step(u8 taskId) @@ -156,17 +155,14 @@ static void AnimTask_ShakeMon_Step(u8 taskId) void AnimTask_ShakeMon2(u8 taskId) { u8 spriteId; - bool8 destroy = FALSE; + bool8 abort = FALSE; u8 battlerId; if (gBattleAnimArgs[0] < MAX_BATTLERS_COUNT) { spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); if (spriteId == SPRITE_NONE) - { - DestroyAnimVisualTask(taskId); - return; - } + abort = TRUE; } else if (gBattleAnimArgs[0] != 8) { @@ -188,7 +184,7 @@ void AnimTask_ShakeMon2(u8 taskId) } if (IsBattlerSpriteVisible(battlerId) == FALSE) - destroy = TRUE; + abort = TRUE; spriteId = gBattlerSpriteIds[battlerId]; } @@ -197,7 +193,7 @@ void AnimTask_ShakeMon2(u8 taskId) spriteId = gBattlerSpriteIds[gBattleAnimAttacker]; } - if (destroy) + if (abort) { DestroyAnimVisualTask(taskId); return; @@ -332,10 +328,8 @@ void AnimTask_ShakeAndSinkMon(u8 taskId) static void AnimTask_ShakeAndSinkMon_Step(u8 taskId) { - s16 x; - u8 spriteId; - spriteId = gTasks[taskId].data[0]; - x = gTasks[taskId].data[1]; + u8 spriteId = gTasks[taskId].data[0]; + s16 x = gTasks[taskId].data[1]; if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++) { gTasks[taskId].data[8] = 0; @@ -365,11 +359,8 @@ static void AnimTask_ShakeAndSinkMon_Step(u8 taskId) void AnimTask_TranslateMonElliptical(u8 taskId) { u8 i; - u8 spriteId; - u8 wavePeriod; - - wavePeriod = 1; - spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); + u8 wavePeriod = 1; + u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); if (gBattleAnimArgs[4] > 5) gBattleAnimArgs[4] = 5; @@ -742,7 +733,7 @@ static void AnimTask_SlideOffScreen_Step(u8 taskId) { u8 spriteId = gTasks[taskId].data[0]; gSprites[spriteId].x2 += gTasks[taskId].data[1]; - if (gSprites[spriteId].x2 + gSprites[spriteId].x + 0x20 > 0x130u) + if (gSprites[spriteId].x2 + gSprites[spriteId].x < -32 || gSprites[spriteId].x2 + gSprites[spriteId].x > DISPLAY_WIDTH + 32) { DestroyAnimVisualTask(taskId); return; @@ -831,8 +822,7 @@ static void AnimTask_SwayMonStep(u8 taskId) // arg 4: sprite object mode void AnimTask_ScaleMonAndRestore(u8 taskId) { - u8 spriteId; - spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[3]); + u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[3]); PrepareBattlerSpriteForRotScale(spriteId, gBattleAnimArgs[4]); gTasks[taskId].data[0] = gBattleAnimArgs[0]; gTasks[taskId].data[1] = gBattleAnimArgs[1]; @@ -893,7 +883,7 @@ void AnimTask_RotateMonSpriteToSide(u8 taskId) } else { - if (gBattleAnimArgs[2] == 0) + if (gBattleAnimArgs[2] == ANIM_ATTACKER) { gTasks[taskId].data[7] = !GetBattlerSide(gBattleAnimAttacker); } @@ -916,8 +906,7 @@ void AnimTask_RotateMonSpriteToSide(u8 taskId) // Rotates mon to side and back to original position. For Peck and when a held item activates void AnimTask_RotateMonToSideAndRestore(u8 taskId) { - u8 spriteId; - spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]); + u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]); PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); gTasks[taskId].data[1] = 0; gTasks[taskId].data[2] = gBattleAnimArgs[0]; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 05b0daf3f419..4ce33251ac6f 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -81,7 +81,7 @@ static const u8 sCastformBackSpriteYCoords[NUM_CASTFORM_FORMS] = #define TAG_MOVE_EFFECT_MON_1 55125 #define TAG_MOVE_EFFECT_MON_2 55126 -static const struct SpriteTemplate sSpriteTemplate_MoveEffectMons[] = +static const struct SpriteTemplate sSpriteTemplates_MoveEffectMons[] = { { .tileTag = TAG_MOVE_EFFECT_MON_1, @@ -103,7 +103,7 @@ static const struct SpriteTemplate sSpriteTemplate_MoveEffectMons[] = } }; -static const struct SpriteSheet sSpriteSheet_MoveEffectMons[] = +static const struct SpriteSheet sSpriteSheets_MoveEffectMons[] = { { gMiscBlank_Gfx, MON_PIC_SIZE, TAG_MOVE_EFFECT_MON_1, }, { gMiscBlank_Gfx, MON_PIC_SIZE, TAG_MOVE_EFFECT_MON_2, }, @@ -440,7 +440,7 @@ void SetCallbackToStoredInData6(struct Sprite *sprite) #define sAmplitudeX sAmplitude #define sAmplitudeY data[4] -// TranslateSpriteInWavePattern +// TranslateSpriteInLissajousCurve #define sCirclePosX sCirclePos #define sCircleSpeedX sCircleSpeed #define sCirclePosY data[4] @@ -487,7 +487,7 @@ void TranslateSpriteInGrowingCircle(struct Sprite *sprite) // Unused // Exact shape depends on arguments. Can move in a figure-8-like pattern, or circular, etc. -static void TranslateSpriteInWavePattern(struct Sprite *sprite) +static void TranslateSpriteInLissajousCurve(struct Sprite *sprite) { if (sprite->sDuration) { @@ -1508,13 +1508,13 @@ u32 GetBattleMonSpritePalettesMask(u8 playerLeft, u8 playerRight, u8 opponentLef return selectedPalettes; } -// Presumably something commented here, just returns arg -u8 AnimDummyReturnArg(u8 battler) +u8 GetSpritePalIdxByBattler(u8 battler) { return battler; } -static u8 GetBattlerAtPosition_(u8 position) +// Unused +static u8 GetSpritePalIdxByPosition(u8 position) { return GetBattlerAtPosition(position); } @@ -1552,20 +1552,20 @@ void AnimSpriteOnMonPos(struct Sprite *sprite) // arg 5: lower 8 bits = location on attacking mon, upper 8 bits = location on target mon pick to target void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite) { - bool8 v1; + bool8 respectMonPicOffsets; u8 coordType; if (!(gBattleAnimArgs[5] & 0xff00)) - v1 = TRUE; + respectMonPicOffsets = TRUE; else - v1 = FALSE; + respectMonPicOffsets = FALSE; if (!(gBattleAnimArgs[5] & 0xff)) coordType = BATTLER_COORD_Y_PIC_OFFSET; else coordType = BATTLER_COORD_Y; - InitSpritePosToAnimAttacker(sprite, v1); + InitSpritePosToAnimAttacker(sprite, respectMonPicOffsets); if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; @@ -2097,8 +2097,8 @@ u8 GetBattlerSpriteBGPriorityRank(u8 battlerId) u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm) { u8 spriteId; - u16 sheet = LoadSpriteSheet(&sSpriteSheet_MoveEffectMons[id]); - u16 palette = AllocSpritePalette(sSpriteTemplate_MoveEffectMons[id].paletteTag); + u16 sheet = LoadSpriteSheet(&sSpriteSheets_MoveEffectMons[id]); + u16 palette = AllocSpritePalette(sSpriteTemplates_MoveEffectMons[id].paletteTag); if (gMonSpritesGfxPtr != NULL && gMonSpritesGfxPtr->buffer == NULL) gMonSpritesGfxPtr->buffer = AllocZeroed(0x2000); @@ -2139,9 +2139,9 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 FREE_AND_SET_NULL(gMonSpritesGfxPtr->buffer); if (!isBackpic) - spriteId = CreateSprite(&sSpriteTemplate_MoveEffectMons[id], x, y + gMonFrontPicCoords[species].y_offset, subpriority); + spriteId = CreateSprite(&sSpriteTemplates_MoveEffectMons[id], x, y + gMonFrontPicCoords[species].y_offset, subpriority); else - spriteId = CreateSprite(&sSpriteTemplate_MoveEffectMons[id], x, y + gMonBackPicCoords[species].y_offset, subpriority); + spriteId = CreateSprite(&sSpriteTemplates_MoveEffectMons[id], x, y + gMonBackPicCoords[species].y_offset, subpriority); if (IsContest()) { diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index c68ec5d8a5f9..976682821fda 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -818,7 +818,7 @@ static void AnimTask_ImprisonOrbs_Step(u8 taskId) { for (i = 8; i < 13; i++) { - if (task->data[i] != 64) + if (task->data[i] != MAX_SPRITES) DestroySprite(&gSprites[task->data[i]]); } @@ -997,12 +997,10 @@ void AnimTask_ExtrasensoryDistortion(u8 taskId) scanlineParams.dmaDest = ®_BG2HOFS; } - i = task->data[14]; - while (i <= task->data[14] + 64) + for (i = task->data[14]; i <= task->data[14] + 64; i++) { gScanlineEffectRegBuffers[0][i] = task->data[10]; gScanlineEffectRegBuffers[1][i] = task->data[10]; - i++; } scanlineParams.dmaControl = SCANLINE_EFFECT_DMACNT_16BIT; diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c index f329ea2107f2..1fde3a982394 100644 --- a/src/battle_anim_sound_tasks.c +++ b/src/battle_anim_sound_tasks.c @@ -100,7 +100,7 @@ void SoundTask_LoopSEAdjustPanning(u8 taskId) gTasks[taskId].data[12] = r9; gTasks[taskId].func = SoundTask_LoopSEAdjustPanning_Step; - SoundTask_LoopSEAdjustPanning_Step(taskId); + gTasks[taskId].func(taskId); } static void SoundTask_LoopSEAdjustPanning_Step(u8 taskId) @@ -385,7 +385,7 @@ void SoundTask_AdjustPanningVar(u8 taskId) gTasks[taskId].data[11] = sourcePan; gTasks[taskId].func = SoundTask_AdjustPanningVar_Step; - SoundTask_AdjustPanningVar_Step(taskId); + gTasks[taskId].func(taskId); } static void SoundTask_AdjustPanningVar_Step(u8 taskId) diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c index b029951426b3..d81b532c5867 100755 --- a/src/battle_anim_throw.c +++ b/src/battle_anim_throw.c @@ -550,8 +550,8 @@ static void LoadHealthboxPalsForLevelUp(u8 *paletteId1, u8 *paletteId2, u8 battl healthBoxSpriteId = gHealthboxSpriteIds[battler]; spriteId1 = gSprites[healthBoxSpriteId].oam.affineParam; spriteId2 = gSprites[healthBoxSpriteId].data[5]; - *paletteId1 = AllocSpritePalette(0xD709); - *paletteId2 = AllocSpritePalette(0xD70A); + *paletteId1 = AllocSpritePalette(TAG_HEALTHBOX_PALS_1); + *paletteId2 = AllocSpritePalette(TAG_HEALTHBOX_PALS_2); offset1 = (gSprites[healthBoxSpriteId].oam.paletteNum * 16) + 0x100; offset2 = (gSprites[spriteId2].oam.paletteNum * 16) + 0x100; @@ -580,10 +580,10 @@ static void FreeHealthboxPalsForLevelUp(u8 battler) spriteId1 = gSprites[healthBoxSpriteId].oam.affineParam; spriteId2 = gSprites[healthBoxSpriteId].data[5]; - FreeSpritePaletteByTag(0xD709); - FreeSpritePaletteByTag(0xD70A); - paletteId1 = IndexOfSpritePaletteTag(0xD6FF); - paletteId2 = IndexOfSpritePaletteTag(0xD704); + FreeSpritePaletteByTag(TAG_HEALTHBOX_PALS_1); + FreeSpritePaletteByTag(TAG_HEALTHBOX_PALS_2); + paletteId1 = IndexOfSpritePaletteTag(TAG_HEALTHBOX_PAL); + paletteId2 = IndexOfSpritePaletteTag(TAG_HEALTHBAR_PAL); gSprites[healthBoxSpriteId].oam.paletteNum = paletteId1; gSprites[spriteId1].oam.paletteNum = paletteId1; gSprites[spriteId2].oam.paletteNum = paletteId2; @@ -611,7 +611,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId) if (gTasks[taskId].data[0]++ >= gTasks[taskId].data[11]) { gTasks[taskId].data[0] = 0; - paletteNum = IndexOfSpritePaletteTag(0xD709); + paletteNum = IndexOfSpritePaletteTag(TAG_HEALTHBOX_PALS_1); colorOffset = gTasks[taskId].data[10] == 0 ? 6 : 2; switch (gTasks[taskId].data[1]) { diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 4071ce9b98fb..403939f883f0 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -97,7 +97,7 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId) for (battler = 0; battler < MAX_BATTLERS_COUNT; battler++) { if (battler != animBattlers[0] && battler != animBattlers[1] && IsBattlerSpriteVisible(battler)) - selectedPalettes |= 0x10000 << AnimDummyReturnArg(battler); + selectedPalettes |= 0x10000 << GetSpritePalIdxByBattler(battler); } StartBlendAnimSpriteColor(taskId, selectedPalettes); From 11b4958f230bafa46611c7b4f04142d32d54451d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 19 Aug 2022 19:45:15 -0400 Subject: [PATCH 687/762] Incorporate commented bug fixes in contest AI scripts --- data/contest_ai_scripts.s | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/data/contest_ai_scripts.s b/data/contest_ai_scripts.s index ef4feb25ffd8..ecd3103ae2ec 100644 --- a/data/contest_ai_scripts.s +++ b/data/contest_ai_scripts.s @@ -435,11 +435,15 @@ AI_CGM_BetterWhenAudienceExcited: AI_CGM_BetterWhenAudienceExcited_1stUp: @ BUG: Should be if_appeal_num_eq 0 @ 1st up on 1st appeal excitement will always be 0 - if_appeal_num_not_eq 0, AI_CGM_BetterWhenAudienceExcited_Not1stAppeal +.ifdef BUGFIX + if_appeal_num_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal +.else + if_appeal_num_not_eq 0, AI_CGM_BetterWhenAudienceExcited_1stAppeal +.endif if_excitement_eq 4, AI_CGM_BetterWhenAudienceExcited_1AwayFromMax if_excitement_eq 3, AI_CGM_BetterWhenAudienceExcited_2AwayFromMax end -AI_CGM_BetterWhenAudienceExcited_Not1stAppeal: +AI_CGM_BetterWhenAudienceExcited_1stAppeal: if_random_less_than 125, AI_CGM_End score -15 end @@ -542,7 +546,11 @@ AI_CGM_TargetMonWithJudgesAttention: end AI_CGM_TargetMonWithJudgesAttention_CheckMon1: if_cannot_participate MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2 +.ifdef BUGFIX + if_not_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2 +.else if_used_combo_starter MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2 +.endif if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon2 score +2 if_not_completed_combo MON_1, AI_CGM_TargetMonWithJudgesAttention_CheckMon2 @@ -551,7 +559,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon1: AI_CGM_TargetMonWithJudgesAttention_CheckMon2: if_user_order_eq MON_2, AI_CGM_End if_cannot_participate MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3 +.ifdef BUGFIX + if_not_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3 +.else if_used_combo_starter MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3 +.endif if_random_less_than 125, AI_CGM_TargetMonWithJudgesAttention_CheckMon3 score +2 if_not_completed_combo MON_2, AI_CGM_TargetMonWithJudgesAttention_CheckMon3 @@ -560,7 +572,11 @@ AI_CGM_TargetMonWithJudgesAttention_CheckMon2: AI_CGM_TargetMonWithJudgesAttention_CheckMon3: if_user_order_eq MON_3, AI_CGM_End if_cannot_participate MON_3, AI_CGM_End +.ifdef BUGFIX + if_not_used_combo_starter MON_3, AI_CGM_End +.else if_used_combo_starter MON_3, AI_CGM_End +.endif if_random_less_than 125, AI_CGM_End score +2 if_not_completed_combo MON_3, AI_CGM_End From 261b0ff118bc24e7d6353180d1bdac3f3942ef48 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 20 Aug 2022 22:58:46 -0400 Subject: [PATCH 688/762] Standardize judgement vs judgment spelling --- ...symbols.png => arena_judgment_symbols.png} | Bin include/battle_message.h | 2 +- include/constants/battle.h | 4 +- include/graphics.h | 4 +- src/battle_arena.c | 66 +++++++++--------- src/battle_bg.c | 4 +- src/battle_message.c | 10 +-- src/battle_script_commands.c | 6 +- src/graphics.c | 4 +- 9 files changed, 50 insertions(+), 50 deletions(-) rename graphics/battle_frontier/{arena_judgement_symbols.png => arena_judgment_symbols.png} (100%) diff --git a/graphics/battle_frontier/arena_judgement_symbols.png b/graphics/battle_frontier/arena_judgment_symbols.png similarity index 100% rename from graphics/battle_frontier/arena_judgement_symbols.png rename to graphics/battle_frontier/arena_judgment_symbols.png diff --git a/include/battle_message.h b/include/battle_message.h index cc18a13d220b..1ced84f50afe 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -283,7 +283,7 @@ extern const u8 gText_OpponentMon1Name[]; extern const u8 gText_Mind[]; extern const u8 gText_Skill[]; extern const u8 gText_Body[]; -extern const u8 gText_Judgement[]; +extern const u8 gText_Judgment[]; extern const u8 gText_EmptyString3[]; extern const u8 gText_RecordBattleToPass[]; extern const u8 gText_BattleRecordedOnPass[]; diff --git a/include/constants/battle.h b/include/constants/battle.h index 41bdb7a883c5..3eec42f15c14 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -357,8 +357,8 @@ #define ARENA_WIN_MIND 18 #define ARENA_WIN_SKILL 19 #define ARENA_WIN_BODY 20 -#define ARENA_WIN_JUDGEMENT_TITLE 21 -#define ARENA_WIN_JUDGEMENT_TEXT 22 +#define ARENA_WIN_JUDGMENT_TITLE 21 +#define ARENA_WIN_JUDGMENT_TEXT 22 // Flag for BattlePutTextOnWindow. Never set #define B_WIN_COPYTOVRAM (1 << 7) diff --git a/include/graphics.h b/include/graphics.h index 08a2a1c4215c..8bdc85dc4a24 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4138,8 +4138,8 @@ extern const u16 gTilesetAnims_BattleDomePals0_1[]; extern const u16 gTilesetAnims_BattleDomePals0_2[]; extern const u16 gTilesetAnims_BattleDomePals0_3[]; -extern const u32 gBattleArenaJudgementSymbolsGfx[]; -extern const u32 gBattleArenaJudgementSymbolsPalette[]; +extern const u32 gBattleArenaJudgmentSymbolsGfx[]; +extern const u32 gBattleArenaJudgmentSymbolsPalette[]; extern const u32 gBattleWindowTextPalette[]; diff --git a/src/battle_arena.c b/src/battle_arena.c index 79d7d50297d4..cdd1843d7097 100644 --- a/src/battle_arena.c +++ b/src/battle_arena.c @@ -38,9 +38,9 @@ static void BufferArenaOpponentName(void); static void SpriteCB_JudgmentIcon(struct Sprite *sprite); static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler); -#define JUDGEMENT_STATE_FINISHED 8 +#define JUDGMENT_STATE_FINISHED 8 -#define TAG_JUDGEMENT_ICON 1000 +#define TAG_JUDGMENT_ICON 1000 enum { ANIM_ICON_X, // Player lost @@ -275,7 +275,7 @@ static const s8 sMindRatings[MOVES_COUNT] = [MOVE_PSYCHO_BOOST] = 1, }; -static const struct OamData sOam_JudgementIcon = +static const struct OamData sOam_JudgmentIcon = { .y = 0, .affineMode = ST_OAM_AFFINE_OFF, @@ -292,52 +292,52 @@ static const struct OamData sOam_JudgementIcon = .affineParam = 0 }; -static const union AnimCmd sAnim_JudgementIcon_X[] = +static const union AnimCmd sAnim_JudgmentIcon_X[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sAnim_JudgementIcon_Triangle[] = +static const union AnimCmd sAnim_JudgmentIcon_Triangle[] = { ANIMCMD_FRAME(4, 1), ANIMCMD_END }; -static const union AnimCmd sAnim_JudgementIcon_Circle[] = +static const union AnimCmd sAnim_JudgmentIcon_Circle[] = { ANIMCMD_FRAME(8, 1), ANIMCMD_END }; -static const union AnimCmd sAnim_JudgementIcon_Line[] = +static const union AnimCmd sAnim_JudgmentIcon_Line[] = { ANIMCMD_FRAME(12, 1), ANIMCMD_END }; -static const union AnimCmd *const sAnims_JudgementIcon[] = +static const union AnimCmd *const sAnims_JudgmentIcon[] = { - [ANIM_ICON_X] = sAnim_JudgementIcon_X, - [ANIM_ICON_TRIANGLE] = sAnim_JudgementIcon_Triangle, - [ANIM_ICON_CIRCLE] = sAnim_JudgementIcon_Circle, - [ANIM_ICON_LINE] = sAnim_JudgementIcon_Line, + [ANIM_ICON_X] = sAnim_JudgmentIcon_X, + [ANIM_ICON_TRIANGLE] = sAnim_JudgmentIcon_Triangle, + [ANIM_ICON_CIRCLE] = sAnim_JudgmentIcon_Circle, + [ANIM_ICON_LINE] = sAnim_JudgmentIcon_Line, }; static const struct SpriteTemplate sSpriteTemplate_JudgmentIcon = { - .tileTag = TAG_JUDGEMENT_ICON, + .tileTag = TAG_JUDGMENT_ICON, .paletteTag = TAG_NONE, - .oam = &sOam_JudgementIcon, - .anims = sAnims_JudgementIcon, + .oam = &sOam_JudgmentIcon, + .anims = sAnims_JudgmentIcon, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_JudgmentIcon, }; -static const struct CompressedSpriteSheet sBattleArenaJudgementSymbolsSpriteSheet[] = +static const struct CompressedSpriteSheet sBattleArenaJudgmentSymbolsSpriteSheet[] = { - {gBattleArenaJudgementSymbolsGfx, 0x200, TAG_JUDGEMENT_ICON}, + {gBattleArenaJudgmentSymbolsGfx, 0x200, TAG_JUDGMENT_ICON}, {0} }; @@ -389,8 +389,8 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) case 0: BeginNormalPaletteFade(0x7FFFFF1C, 4, 0, 8, RGB_BLACK); SetGpuReg(REG_OFFSET_WININ, (WININ_WIN0_ALL & ~WININ_WIN0_BG0) | WININ_WIN1_ALL); - LoadCompressedSpriteSheet(sBattleArenaJudgementSymbolsSpriteSheet); - LoadCompressedPalette(gBattleArenaJudgementSymbolsPalette, 0x1F0, 0x20); + LoadCompressedSpriteSheet(sBattleArenaJudgmentSymbolsSpriteSheet); + LoadCompressedPalette(gBattleArenaJudgmentSymbolsPalette, 0x1F0, 0x20); gBattle_WIN0H = 0xFF; gBattle_WIN0V = 0x70; (*state)++; @@ -417,8 +417,8 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) BattlePutTextOnWindow(gText_Mind, ARENA_WIN_MIND); BattlePutTextOnWindow(gText_Skill, ARENA_WIN_SKILL); BattlePutTextOnWindow(gText_Body, ARENA_WIN_BODY); - BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); + BattleStringExpandPlaceholdersToDisplayedString(gText_Judgment); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGMENT_TITLE); (*state)++; } break; @@ -441,8 +441,8 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) PlaySE(SE_ARENA_TIMEUP1); ShowJudgmentSprite(80, 40, ARENA_CATEGORY_MIND, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 40, ARENA_CATEGORY_MIND, B_POSITION_OPPONENT_LEFT); - BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); + BattleStringExpandPlaceholdersToDisplayedString(gText_Judgment); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGMENT_TITLE); (*state)++; result = ARENA_RESULT_STEP_DONE; break; @@ -450,8 +450,8 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) PlaySE(SE_ARENA_TIMEUP1); ShowJudgmentSprite(80, 56, ARENA_CATEGORY_SKILL, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 56, ARENA_CATEGORY_SKILL, B_POSITION_OPPONENT_LEFT); - BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); + BattleStringExpandPlaceholdersToDisplayedString(gText_Judgment); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGMENT_TITLE); (*state)++; result = ARENA_RESULT_STEP_DONE; break; @@ -459,8 +459,8 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) PlaySE(SE_ARENA_TIMEUP1); ShowJudgmentSprite(80, 72, ARENA_CATEGORY_BODY, B_POSITION_PLAYER_LEFT); ShowJudgmentSprite(160, 72, ARENA_CATEGORY_BODY, B_POSITION_OPPONENT_LEFT); - BattleStringExpandPlaceholdersToDisplayedString(gText_Judgement); - BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TITLE); + BattleStringExpandPlaceholdersToDisplayedString(gText_Judgment); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGMENT_TITLE); (*state)++; result = ARENA_RESULT_STEP_DONE; break; @@ -482,11 +482,11 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) } (*state)++; break; - case JUDGEMENT_STATE_FINISHED: - // Finishing this state is the indicator to SpriteCB_JudgmentIcon that its safe to destroy the judgement icon sprites + case JUDGMENT_STATE_FINISHED: + // Finishing this state is the indicator to SpriteCB_JudgmentIcon that its safe to destroy the judgment icon sprites (*state)++; break; - case JUDGEMENT_STATE_FINISHED + 1: + case JUDGMENT_STATE_FINISHED + 1: SetGpuReg(REG_OFFSET_WININ, (WININ_WIN0_ALL & ~WININ_WIN0_BG0) | WININ_WIN1_ALL); HandleBattleWindow(5, 0, 24, 13, WINDOW_CLEAR); CopyBgTilemapBufferToVram(0); @@ -494,11 +494,11 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state) BeginNormalPaletteFade(0x7FFFFF1C, 4, 8, 0, RGB_BLACK); (*state)++; break; - case JUDGEMENT_STATE_FINISHED + 2: + case JUDGMENT_STATE_FINISHED + 2: if (!gPaletteFade.active) { SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_ALL | WININ_WIN1_ALL); - FreeSpriteTilesByTag(TAG_JUDGEMENT_ICON); + FreeSpriteTilesByTag(TAG_JUDGMENT_ICON); result = ARENA_RESULT_STEP_DONE; (*state)++; } @@ -562,7 +562,7 @@ static void ShowJudgmentSprite(u8 x, u8 y, u8 category, u8 battler) static void SpriteCB_JudgmentIcon(struct Sprite *sprite) { - if (gBattleCommunication[0] > JUDGEMENT_STATE_FINISHED) + if (gBattleCommunication[0] > JUDGMENT_STATE_FINISHED) DestroySprite(sprite); } diff --git a/src/battle_bg.c b/src/battle_bg.c index ace4ea24fa11..8bbe18ab2807 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -571,7 +571,7 @@ static const struct WindowTemplate sBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x013c, }, - [ARENA_WIN_JUDGEMENT_TITLE] = { + [ARENA_WIN_JUDGMENT_TITLE] = { .bg = 0, .tilemapLeft = 8, .tilemapTop = 11, @@ -580,7 +580,7 @@ static const struct WindowTemplate sBattleArenaWindowTemplates[] = .paletteNum = 5, .baseBlock = 0x0148, }, - [ARENA_WIN_JUDGEMENT_TEXT] = { + [ARENA_WIN_JUDGMENT_TEXT] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, diff --git a/src/battle_message.c b/src/battle_message.c index 677bb2fe3863..fa2fedd85b8d 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1371,7 +1371,7 @@ const u8 gText_OpponentMon1Name[] = _("{B_OPPONENT_MON1_NAME}"); const u8 gText_Mind[] = _("Mind"); const u8 gText_Skill[] = _("Skill"); const u8 gText_Body[] = _("Body"); -const u8 gText_Judgement[] = _("{B_BUFF1}{CLEAR 13}Judgment{CLEAR 13}{B_BUFF2}"); +const u8 gText_Judgment[] = _("{B_BUFF1}{CLEAR 13}Judgment{CLEAR 13}{B_BUFF2}"); static const u8 sText_TwoTrainersSentPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} sent\nout {B_OPPONENT_MON1_NAME}!\p{B_TRAINER2_CLASS} {B_TRAINER2_NAME} sent\nout {B_OPPONENT_MON2_NAME}!"); static const u8 sText_Trainer2SentOutPkmn[] = _("{B_TRAINER2_CLASS} {B_TRAINER2_NAME} sent\nout {B_BUFF1}!"); static const u8 sText_TwoTrainersWantToBattle[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} and\n{B_TRAINER2_CLASS} {B_TRAINER2_NAME}\lwant to battle!\p"); @@ -2020,7 +2020,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .bgColor = TEXT_DYNAMIC_COLOR_5, .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - [ARENA_WIN_JUDGEMENT_TITLE] = { + [ARENA_WIN_JUDGMENT_TITLE] = { .fillValue = PIXEL_FILL(0xE), .fontId = FONT_NORMAL, .x = -1, @@ -2032,7 +2032,7 @@ static const struct BattleWindowText sTextOnWindowsInfo_Arena[] = .bgColor = TEXT_DYNAMIC_COLOR_5, .shadowColor = TEXT_DYNAMIC_COLOR_6, }, - [ARENA_WIN_JUDGEMENT_TEXT] = { + [ARENA_WIN_JUDGMENT_TEXT] = { .fillValue = PIXEL_FILL(0x1), .fontId = FONT_NORMAL, .x = 0, @@ -3081,7 +3081,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) printerTemplate.x = printerTemplate.currentX = alignX; } - if (windowId == ARENA_WIN_JUDGEMENT_TEXT) + if (windowId == ARENA_WIN_JUDGMENT_TEXT) gTextFlags.useAlternateDownArrow = FALSE; else gTextFlags.useAlternateDownArrow = TRUE; @@ -3091,7 +3091,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) else gTextFlags.autoScroll = FALSE; - if (windowId == B_WIN_MSG || windowId == ARENA_WIN_JUDGEMENT_TEXT) + if (windowId == B_WIN_MSG || windowId == ARENA_WIN_JUDGMENT_TEXT) { if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK)) speed = 1; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 7c009e0775b5..e4c22000d661 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5226,7 +5226,7 @@ static void Cmd_switchineffects(void) else { // There is a hack here to ensure the truant counter will be 0 when the battler's next turn starts. - // The truant counter is not updated in the case where a mon switches in after a lost judgement in the battle arena. + // The truant counter is not updated in the case where a mon switches in after a lost judgment in the battle arena. if (gBattleMons[gActiveBattler].ability == ABILITY_TRUANT && !gDisableStructs[gActiveBattler].truantSwitchInHack) gDisableStructs[gActiveBattler].truantCounter = 1; @@ -6412,10 +6412,10 @@ static void Cmd_various(void) break; case VARIOUS_ARENA_JUDGMENT_STRING: BattleStringExpandPlaceholdersToDisplayedString(gRefereeStringsTable[gBattlescriptCurrInstr[1]]); - BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGEMENT_TEXT); + BattlePutTextOnWindow(gDisplayedStringBattle, ARENA_WIN_JUDGMENT_TEXT); break; case VARIOUS_ARENA_WAIT_STRING: - if (IsTextPrinterActive(ARENA_WIN_JUDGEMENT_TEXT)) + if (IsTextPrinterActive(ARENA_WIN_JUDGMENT_TEXT)) return; break; case VARIOUS_WAIT_CRY: diff --git a/src/graphics.c b/src/graphics.c index eb798433df01..06007d759b97 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -963,8 +963,8 @@ const u32 gDomeTourneyTree_Pal[] = INCBIN_U32("graphics/battle_frontier/tourney. 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"); -const u32 gBattleArenaJudgementSymbolsGfx[] = INCBIN_U32("graphics/battle_frontier/arena_judgement_symbols.4bpp.lz"); -const u32 gBattleArenaJudgementSymbolsPalette[] = INCBIN_U32("graphics/battle_frontier/arena_judgement_symbols.gbapal.lz"); +const u32 gBattleArenaJudgmentSymbolsGfx[] = INCBIN_U32("graphics/battle_frontier/arena_judgment_symbols.4bpp.lz"); +const u32 gBattleArenaJudgmentSymbolsPalette[] = INCBIN_U32("graphics/battle_frontier/arena_judgment_symbols.gbapal.lz"); const u32 gBattleWindowTextPalette[] = INCBIN_U32("graphics/battle_interface/text.gbapal.lz"); const u16 gPPTextPalette[] = INCBIN_U16("graphics/battle_interface/text_pp.gbapal"); From 8a8ba92f21f6e6238d551dd656c6c7e5027d8ff5 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 22 Aug 2022 19:04:47 -0400 Subject: [PATCH 689/762] Revert COMMON wildcards --- ld_script.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/ld_script.txt b/ld_script.txt index ca011ef2a10e..34b8d85c41cf 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -45,9 +45,6 @@ SECTIONS { /* COMMON starts at 0x30022A8 */ INCLUDE "sym_common.ld" - src/*.o(COMMON); - gflib/*.o(COMMON); - *libc.a:sbrkr.o(COMMON); end = .; . = 0x8000; From 3771abbe087df2a18963fd4a4e0f8a117c1b059a Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 23 Aug 2022 12:39:24 -0400 Subject: [PATCH 690/762] Fix names and constant usage for union room classes --- include/constants/pokemon.h | 3 --- include/constants/union_room.h | 4 ++++ include/pokemon.h | 2 +- include/trainer_card.h | 2 +- src/pokemon.c | 19 +++++++++++-------- src/trainer_card.c | 11 ++++++----- src/union_room_player_avatar.c | 5 +++-- 7 files changed, 26 insertions(+), 20 deletions(-) diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 40af999fde52..f93df1fca9ab 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -247,9 +247,6 @@ #define EVO_MODE_ITEM_USE 2 #define EVO_MODE_ITEM_CHECK 3 // If an Everstone is being held, still want to show that the stone *could* be used on that PokĂ©mon to evolve -#define NUM_MALE_LINK_FACILITY_CLASSES 8 -#define NUM_FEMALE_LINK_FACILITY_CLASSES 8 - #define MON_PIC_WIDTH 64 #define MON_PIC_HEIGHT 64 #define MON_PIC_SIZE (MON_PIC_WIDTH * MON_PIC_HEIGHT / 2) diff --git a/include/constants/union_room.h b/include/constants/union_room.h index f47a8723ff58..5c0c57a6062a 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -13,6 +13,10 @@ #define UNION_ROOM_MAX_LEVEL 30 +// The number of possible trainer classes for a trainer of a given gender in the Union Room. +// This value is necessarily a power of 2 because of the way it's treated in GetUnionRoomTrainerPic / GetUnionRoomTrainerClass +#define NUM_UNION_ROOM_CLASSES (1 << 3) // 8 + #define ACTIVITY_NONE 0 #define ACTIVITY_BATTLE_SINGLE 1 #define ACTIVITY_BATTLE_DOUBLE 2 diff --git a/include/pokemon.h b/include/pokemon.h index 79b662bf1d8d..63c5c74eb781 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -382,7 +382,7 @@ extern const u8 gPPUpGetMask[]; extern const u8 gPPUpClearMask[]; extern const u8 gPPUpAddValues[]; extern const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2]; -extern const u16 gLinkPlayerFacilityClasses[]; +extern const u16 gUnionRoomFacilityClasses[]; extern const struct SpriteTemplate gBattlerSpriteTemplates[]; extern const s8 gNatureStatTable[][5]; diff --git a/include/trainer_card.h b/include/trainer_card.h index f14335ae8981..7c37a84a6c2e 100644 --- a/include/trainer_card.h +++ b/include/trainer_card.h @@ -54,7 +54,7 @@ struct TrainerCard /*0x4C*/ bool8 shouldDrawStickers; // FRLG only /*0x4D*/ u8 unused; /*0x4E*/ u8 monIconTint; // FRLG only - /*0x4F*/ u8 facilityClass; + /*0x4F*/ u8 unionRoomClass; /*0x50*/ u8 stickers[TRAINER_CARD_STICKER_TYPES]; // FRLG only /*0x54*/ u16 monSpecies[PARTY_SIZE]; // FRLG only // Note: Link players use linkHasAllFrontierSymbols, not the field below, diff --git a/src/pokemon.c b/src/pokemon.c index 8786405c8b55..244717c79a4b 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -46,6 +46,7 @@ #include "constants/moves.h" #include "constants/songs.h" #include "constants/trainers.h" +#include "constants/union_room.h" struct SpeciesItem { @@ -1884,7 +1885,9 @@ static const u16 sDeoxysBaseStats[] = [STAT_SPDEF] = 90, }; -const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE_LINK_FACILITY_CLASSES] = +// The classes used by other players in the Union Room. +// These should correspond with the overworld graphics in sUnionRoomObjGfxIds +const u16 gUnionRoomFacilityClasses[NUM_UNION_ROOM_CLASSES * GENDER_COUNT] = { // Male classes FACILITY_CLASS_COOLTRAINER_M, @@ -1895,7 +1898,7 @@ const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE FACILITY_CLASS_BUG_CATCHER, FACILITY_CLASS_PKMN_BREEDER_M, FACILITY_CLASS_GUITARIST, - // Female Classes + // Female classes FACILITY_CLASS_COOLTRAINER_F, FACILITY_CLASS_HEX_MANIAC, FACILITY_CLASS_PICNICKER, @@ -2740,9 +2743,9 @@ u16 GetUnionRoomTrainerPic(void) else linkId = GetMultiplayerId() ^ 1; - arrId = gLinkPlayers[linkId].trainerId & 7; - arrId |= gLinkPlayers[linkId].gender << 3; - return FacilityClassToPicIndex(gLinkPlayerFacilityClasses[arrId]); + arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES; + arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES; + return FacilityClassToPicIndex(gUnionRoomFacilityClasses[arrId]); } u16 GetUnionRoomTrainerClass(void) @@ -2755,9 +2758,9 @@ u16 GetUnionRoomTrainerClass(void) else linkId = GetMultiplayerId() ^ 1; - arrId = gLinkPlayers[linkId].trainerId & 7; - arrId |= gLinkPlayers[linkId].gender << 3; - return gFacilityClassToTrainerClass[gLinkPlayerFacilityClasses[arrId]]; + arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES; + arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES; + return gFacilityClassToTrainerClass[gUnionRoomFacilityClasses[arrId]]; } void CreateEventLegalEnemyMon(void) diff --git a/src/trainer_card.c b/src/trainer_card.c index ab7b3c9131b9..04b8f686abcc 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -31,6 +31,7 @@ #include "constants/battle_frontier.h" #include "constants/rgb.h" #include "constants/trainers.h" +#include "constants/union_room.h" struct TrainerCardData { @@ -761,9 +762,9 @@ static void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard) trainerCard->stars++; if (trainerCard->gender == FEMALE) - trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES]; else - trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES]; } void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) @@ -777,9 +778,9 @@ void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) trainerCard->stars++; if (trainerCard->gender == FEMALE) - trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES]; else - trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES]; } void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion) @@ -1876,7 +1877,7 @@ static void CreateTrainerCardTrainerPic(void) { if (InUnionRoom() == TRUE && gReceivedRemoteLinkPlayers == 1) { - CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.facilityClass), + CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.unionRoomClass), TRUE, sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][0], sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][1], diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index b60c263ae34e..beff4440d09f 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -24,7 +24,8 @@ static u32 IsUnionRoomPlayerInvisible(u32, u32); static void SetUnionRoomObjectFacingDirection(s32, s32, u8); // + 2 is just to match, those elements are empty and never read -static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_LEADERS + 2] = { +// Graphics ids should correspond with the classes in gUnionRoomFacilityClasses +static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][NUM_UNION_ROOM_CLASSES + 2] = { [MALE] = { OBJ_EVENT_GFX_MAN_3, OBJ_EVENT_GFX_BLACK_BELT, @@ -132,7 +133,7 @@ static bool32 IsPlayerStandingStill(void) // Gender and trainer id are used to determine which sprite a player appears as static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id) { - return sUnionRoomObjGfxIds[gender][id % MAX_UNION_ROOM_LEADERS]; + return sUnionRoomObjGfxIds[gender][id % NUM_UNION_ROOM_CLASSES]; } static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 * x, s32 * y) From 90f72a745adde802c9ab287a217b8c80b36b7d21 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 24 Aug 2022 17:01:36 -0300 Subject: [PATCH 691/762] Fixed switch syntax in Task_TryFieldPoisonWhiteOut --- src/field_poison.c | 62 +++++++++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/src/field_poison.c b/src/field_poison.c index e29e1ac988cd..fcb47acdb8b2 100644 --- a/src/field_poison.c +++ b/src/field_poison.c @@ -67,40 +67,40 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId) s16 *data = gTasks[taskId].data; switch (tState) { - case 0: - for (; tPartyIdx < PARTY_SIZE; tPartyIdx++) - { - if (MonFaintedFromPoison(tPartyIdx)) - { - FaintFromFieldPoison(tPartyIdx); - ShowFieldMessage(gText_PkmnFainted_FldPsn); - tState++; - return; - } - } - tState = 2; // Finished checking party - break; - case 1: - // Wait for "{mon} fainted" message, then return to party loop - if (IsFieldMessageBoxHidden()) - tState--; - break; - case 2: - if (AllMonsFainted()) + case 0: + for (; tPartyIdx < PARTY_SIZE; tPartyIdx++) + { + if (MonFaintedFromPoison(tPartyIdx)) { - // Battle facilities have their own white out script to handle the challenge loss - if (InBattlePyramid() | InBattlePike() || InTrainerHillChallenge()) - gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT; - else - gSpecialVar_Result = FLDPSN_WHITEOUT; + FaintFromFieldPoison(tPartyIdx); + ShowFieldMessage(gText_PkmnFainted_FldPsn); + tState++; + return; } + } + tState = 2; // Finished checking party + break; + case 1: + // Wait for "{mon} fainted" message, then return to party loop + if (IsFieldMessageBoxHidden()) + tState--; + break; + case 2: + if (AllMonsFainted()) + { + // Battle facilities have their own white out script to handle the challenge loss + if (InBattlePyramid() | InBattlePike() || InTrainerHillChallenge()) + gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT; else - { - gSpecialVar_Result = FLDPSN_NO_WHITEOUT; - } - ScriptContext_Enable(); - DestroyTask(taskId); - break; + gSpecialVar_Result = FLDPSN_WHITEOUT; + } + else + { + gSpecialVar_Result = FLDPSN_NO_WHITEOUT; + } + ScriptContext_Enable(); + DestroyTask(taskId); + break; } } From 3a6552929335551a214df051eb3a30434aefb22b Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 24 Aug 2022 17:12:59 -0300 Subject: [PATCH 692/762] Fixed KeyInterCB_DeferToEventScript comment --- src/overworld.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/overworld.c b/src/overworld.c index cb0d1f06e148..4c4dd5217d38 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -2520,8 +2520,7 @@ static u16 KeyInterCB_Idle(u32 key) return LINK_KEY_CODE_EMPTY; } -// Ignore the player's inputs as long as there is an event script -// in ScriptContext2. +// Ignore the player's inputs as long as there is an event script being executed. static u16 KeyInterCB_DeferToEventScript(u32 key) { u16 retVal; From 015961c00ac46551408e8c43b6ce14a2b2ecb36e Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 24 Aug 2022 17:19:24 -0300 Subject: [PATCH 693/762] Re-aligned READ_PTR_FROM_TASK's 2nd line EoL --- src/pokemon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pokemon.c b/src/pokemon.c index 8786405c8b55..4b22947cb0e2 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6675,7 +6675,7 @@ const u8 *GetTrainerPartnerName(void) } #define READ_PTR_FROM_TASK(taskId, dataId) \ - (void *)( \ + (void *)( \ ((u16)(gTasks[taskId].data[dataId]) | \ ((u16)(gTasks[taskId].data[dataId + 1]) << 16))) From 1f4ef2a0fb26f10f37686aa9c0da6b356f898721 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 25 Aug 2022 10:32:14 -0300 Subject: [PATCH 694/762] Added constants for GetLeadMonFriendshipScore --- data/maps/PacifidlogTown_House2/scripts.inc | 4 ++-- .../maps/SlateportCity_PokemonFanClub/scripts.inc | 2 +- .../scripts.inc | 14 +++++++------- include/constants/pokemon.h | 9 +++++++++ src/field_specials.c | 15 ++++++++------- 5 files changed, 27 insertions(+), 17 deletions(-) diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index 3dedcec30f05..b5868625f0fa 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -11,9 +11,9 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, 4, PacifidlogTown_House2_EventScript_GiveReturn + goto_if_ge VAR_RESULT, FRIENDSHIP_GE_150, PacifidlogTown_House2_EventScript_GiveReturn specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, 2, PacifidlogTown_House2_EventScript_PutInEffort + goto_if_ge VAR_RESULT, FRIENDSHIP_GE_50, PacifidlogTown_House2_EventScript_PutInEffort goto PacifidlogTown_House2_EventScript_GiveFrustration end diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index b97e29a02865..22145e774be3 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -192,7 +192,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, 4, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell + goto_if_ge VAR_RESULT, FRIENDSHIP_GE_150, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell release end diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc index 84cdef029ed3..98ac7273e067 100644 --- a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc +++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc @@ -7,13 +7,13 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater:: msgbox VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou, MSGBOX_DEFAULT specialvar VAR_RESULT, GetLeadMonFriendshipScore switch VAR_RESULT - case 0, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou - case 1, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary - case 2, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou - case 3, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou - case 4, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot - case 5, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy - case 6, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou + case FRIENDSHIP_NONE, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou + case FRIENDSHIP_GE_1, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary + case FRIENDSHIP_GE_50, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou + case FRIENDSHIP_GE_100, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou + case FRIENDSHIP_GE_150, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot + case FRIENDSHIP_GE_200, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy + case FRIENDSHIP_MAX, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou release end diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 40af999fde52..01449fab90fe 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -181,6 +181,15 @@ #define FRIENDSHIP_EVENT_FAINT_FIELD_PSN 7 #define FRIENDSHIP_EVENT_FAINT_LARGE 8 // If opponent was >= 30 levels higher. See AdjustFriendshipOnBattleFaint +// Constants for GetLeadMonFriendshipScore +#define FRIENDSHIP_NONE 0 +#define FRIENDSHIP_GE_1 1 +#define FRIENDSHIP_GE_50 2 +#define FRIENDSHIP_GE_100 3 +#define FRIENDSHIP_GE_150 4 +#define FRIENDSHIP_GE_200 5 +#define FRIENDSHIP_MAX 6 + #define MAX_FRIENDSHIP 255 #define MAX_SHEEN 255 #define MAX_CONDITION 255 diff --git a/src/field_specials.c b/src/field_specials.c index 7c226e7a39f8..41f84dff7029 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -65,6 +65,7 @@ #include "constants/weather.h" #include "constants/metatile_labels.h" #include "palette.h" +#include "constants/pokemon.h" EWRAM_DATA bool8 gBikeCyclingChallenge = FALSE; EWRAM_DATA u8 gBikeCollisions = 0; @@ -941,19 +942,19 @@ u8 GetLeadMonFriendshipScore(void) { struct Pokemon *pokemon = &gPlayerParty[GetLeadMonIndex()]; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) == MAX_FRIENDSHIP) - return 6; + return FRIENDSHIP_MAX; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 200) - return 5; + return FRIENDSHIP_GE_200; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 150) - return 4; + return FRIENDSHIP_GE_150; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 100) - return 3; + return FRIENDSHIP_GE_100; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 50) - return 2; + return FRIENDSHIP_GE_50; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 1) - return 1; + return FRIENDSHIP_GE_1; - return 0; + return FRIENDSHIP_NONE; } static void CB2_FieldShowRegionMap(void) From 8a1130d0461aac5e29fc1966f5ae6405bf2d2afe Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 25 Aug 2022 10:21:41 -0400 Subject: [PATCH 695/762] Missing constant in friendshiptodamagecalculation --- src/battle_script_commands.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 7c009e0775b5..09535e0794b6 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -8520,7 +8520,7 @@ static void Cmd_friendshiptodamagecalculation(void) if (gBattleMoves[gCurrentMove].effect == EFFECT_RETURN) gDynamicBasePower = 10 * (gBattleMons[gBattlerAttacker].friendship) / 25; else // EFFECT_FRUSTRATION - gDynamicBasePower = 10 * (255 - gBattleMons[gBattlerAttacker].friendship) / 25; + gDynamicBasePower = 10 * (MAX_FRIENDSHIP - gBattleMons[gBattlerAttacker].friendship) / 25; gBattlescriptCurrInstr++; } From 11d6ae48205d01710d4fc8c961bd29f053272678 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 25 Aug 2022 11:34:37 -0300 Subject: [PATCH 696/762] Renamed the GetLeadMonFriendshipScore constants --- data/maps/PacifidlogTown_House2/scripts.inc | 4 ++-- data/maps/SlateportCity_PokemonFanClub/scripts.inc | 2 +- .../scripts.inc | 10 +++++----- include/constants/pokemon.h | 14 +++++++------- src/field_specials.c | 10 +++++----- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc index b5868625f0fa..175b477e7a4c 100644 --- a/data/maps/PacifidlogTown_House2/scripts.inc +++ b/data/maps/PacifidlogTown_House2/scripts.inc @@ -11,9 +11,9 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother:: call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, FRIENDSHIP_GE_150, PacifidlogTown_House2_EventScript_GiveReturn + goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, PacifidlogTown_House2_EventScript_GiveReturn specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, FRIENDSHIP_GE_50, PacifidlogTown_House2_EventScript_PutInEffort + goto_if_ge VAR_RESULT, FRIENDSHIP_50_TO_99, PacifidlogTown_House2_EventScript_PutInEffort goto PacifidlogTown_House2_EventScript_GiveFrustration end diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc index 22145e774be3..3b50428614ca 100644 --- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc +++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc @@ -192,7 +192,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman:: goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT specialvar VAR_RESULT, GetLeadMonFriendshipScore - goto_if_ge VAR_RESULT, FRIENDSHIP_GE_150, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell + goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell release end diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc index 98ac7273e067..97e522471fbe 100644 --- a/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc +++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/scripts.inc @@ -8,11 +8,11 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater:: specialvar VAR_RESULT, GetLeadMonFriendshipScore switch VAR_RESULT case FRIENDSHIP_NONE, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou - case FRIENDSHIP_GE_1, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary - case FRIENDSHIP_GE_50, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou - case FRIENDSHIP_GE_100, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou - case FRIENDSHIP_GE_150, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot - case FRIENDSHIP_GE_200, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy + case FRIENDSHIP_1_TO_49, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary + case FRIENDSHIP_50_TO_99, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou + case FRIENDSHIP_100_TO_149, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou + case FRIENDSHIP_150_TO_199, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot + case FRIENDSHIP_200_TO_254, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy case FRIENDSHIP_MAX, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou release end diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 01449fab90fe..0e17357a32e4 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -182,13 +182,13 @@ #define FRIENDSHIP_EVENT_FAINT_LARGE 8 // If opponent was >= 30 levels higher. See AdjustFriendshipOnBattleFaint // Constants for GetLeadMonFriendshipScore -#define FRIENDSHIP_NONE 0 -#define FRIENDSHIP_GE_1 1 -#define FRIENDSHIP_GE_50 2 -#define FRIENDSHIP_GE_100 3 -#define FRIENDSHIP_GE_150 4 -#define FRIENDSHIP_GE_200 5 -#define FRIENDSHIP_MAX 6 +#define FRIENDSHIP_NONE 0 +#define FRIENDSHIP_1_TO_49 1 +#define FRIENDSHIP_50_TO_99 2 +#define FRIENDSHIP_100_TO_149 3 +#define FRIENDSHIP_150_TO_199 4 +#define FRIENDSHIP_200_TO_254 5 +#define FRIENDSHIP_MAX 6 #define MAX_FRIENDSHIP 255 #define MAX_SHEEN 255 diff --git a/src/field_specials.c b/src/field_specials.c index 41f84dff7029..9a2742b70b02 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -944,15 +944,15 @@ u8 GetLeadMonFriendshipScore(void) if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) == MAX_FRIENDSHIP) return FRIENDSHIP_MAX; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 200) - return FRIENDSHIP_GE_200; + return FRIENDSHIP_200_TO_254; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 150) - return FRIENDSHIP_GE_150; + return FRIENDSHIP_150_TO_199; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 100) - return FRIENDSHIP_GE_100; + return FRIENDSHIP_100_TO_149; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 50) - return FRIENDSHIP_GE_50; + return FRIENDSHIP_50_TO_99; if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 1) - return FRIENDSHIP_GE_1; + return FRIENDSHIP_1_TO_49; return FRIENDSHIP_NONE; } From 23bf67c63ffd46258f8a435314c8fb67213cd9b6 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Thu, 25 Aug 2022 11:43:01 -0300 Subject: [PATCH 697/762] Removed unnecessary inclusion of header in src/field_specials.c --- src/field_specials.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/field_specials.c b/src/field_specials.c index 9a2742b70b02..6aa62d22f4fb 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -65,7 +65,6 @@ #include "constants/weather.h" #include "constants/metatile_labels.h" #include "palette.h" -#include "constants/pokemon.h" EWRAM_DATA bool8 gBikeCyclingChallenge = FALSE; EWRAM_DATA u8 gBikeCollisions = 0; From 6fb4da68f398905917e5579f955a74cbd609e741 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 25 Aug 2022 22:00:24 -0400 Subject: [PATCH 698/762] Corrected Oldale Town Sign labels --- data/maps/OldaleTown/map.json | 2 +- data/maps/OldaleTown/scripts.inc | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/maps/OldaleTown/map.json b/data/maps/OldaleTown/map.json index ee6101ff6c1b..cc4bd008c386 100644 --- a/data/maps/OldaleTown/map.json +++ b/data/maps/OldaleTown/map.json @@ -158,7 +158,7 @@ "y": 9, "elevation": 0, "player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY", - "script": "OldaleTown_EventScript_CitySign" + "script": "OldaleTown_EventScript_TownSign" }, { "type": "sign", diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc index 3f43386cb37e..b2c25a6dfbc6 100644 --- a/data/maps/OldaleTown/scripts.inc +++ b/data/maps/OldaleTown/scripts.inc @@ -29,8 +29,8 @@ OldaleTown_EventScript_MoveMartEmployee:: setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN return -OldaleTown_EventScript_CitySign:: - msgbox OldaleTown_Text_CitySign, MSGBOX_SIGN +OldaleTown_EventScript_TownSign:: + msgbox OldaleTown_Text_TownSign, MSGBOX_SIGN end OldaleTown_EventScript_Girl:: @@ -395,7 +395,7 @@ OldaleTown_Text_BrendanLetsGoBack: .string "LAB now.\l" .string "{PLAYER}, you should hustle back, too.$" -OldaleTown_Text_CitySign: +OldaleTown_Text_TownSign: .string "OLDALE TOWN\n" .string "“Where things start off scarce.”$" From 578064d79966ebfcd0de8782f8b7294415fd6c87 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 26 Aug 2022 15:23:54 -0400 Subject: [PATCH 699/762] Add missing use of METATILE_ROW_WIDTH --- src/field_specials.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/field_specials.c b/src/field_specials.c index 6aa62d22f4fb..2e33b443ca7e 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -868,7 +868,7 @@ static void PetalburgGymSetDoorMetatiles(u8 roomNumber, u16 metatileId) for (i = 0; i < nDoors; i++) { MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET, metatileId | MAPGRID_COLLISION_MASK); - MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET + 1, (metatileId + 8) | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(doorCoordsX[i] + MAP_OFFSET, doorCoordsY[i] + MAP_OFFSET + 1, (metatileId + METATILE_ROW_WIDTH) | MAPGRID_COLLISION_MASK); } DrawWholeMapView(); } From 481210b7f318ee4811a4193216d77c3eefadf848 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 00:54:30 -0400 Subject: [PATCH 700/762] Missing uses of MAX_SPRITES --- src/battle_anim_ice.c | 2 +- src/battle_anim_psychic.c | 2 +- src/intro.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index 6a0ff1154acc..c974ecf661ca 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -1454,7 +1454,7 @@ static void AnimHailBegin(struct Sprite *sprite) sprite->data[3], sprite->data[4], sprite->subpriority); sprite->data[0] = spriteId; - if (spriteId != 64) + if (spriteId != MAX_SPRITES) { gSprites[sprite->data[0]].callback = AnimHailContinue; gSprites[sprite->data[0]].data[6] = sprite->data[6]; diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index aebf76cc0659..833c46c2f33f 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -918,7 +918,7 @@ static void AnimTask_SkillSwap_Step(u8 taskId) { task->data[1] = 0; spriteId = CreateSprite(&gSkillSwapOrbSpriteTemplate, task->data[11], task->data[12], 0); - if (spriteId != 64) + if (spriteId != MAX_SPRITES) { gSprites[spriteId].data[0] = 16; gSprites[spriteId].data[2] = task->data[13]; diff --git a/src/intro.c b/src/intro.c index 7e9a751690ee..b067891429fb 100644 --- a/src/intro.c +++ b/src/intro.c @@ -2933,7 +2933,7 @@ static void SpriteCB_WaterDrop_ReachLeafEnd(struct Sprite *sprite) SetOamMatrix(sprite->data[1], sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); SetOamMatrix(sprite->data[1] + 1, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); SetOamMatrix(sprite->data[1] + 2, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64); - if (sprite->data[4] != 64) + if (sprite->data[4] != MAX_SPRITES) { u16 sinIdx; sprite->data[4] -= 8; From 6c457f42afb948c3697f03d92ee9042dab8e4b5b Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 00:59:12 -0400 Subject: [PATCH 701/762] Corrected uses of GetBattlerSide --- src/battle_anim_bug.c | 6 +++--- src/battle_anim_fire.c | 2 +- src/battle_anim_flying.c | 4 ++-- src/battle_anim_mon_movement.c | 4 ++-- src/battle_anim_mons.c | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/battle_anim_bug.c b/src/battle_anim_bug.c index 14abc88fb3c1..377665684a0c 100644 --- a/src/battle_anim_bug.c +++ b/src/battle_anim_bug.c @@ -203,7 +203,7 @@ static void AnimMegahornHorn(struct Sprite *sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[0] = -gBattleAnimArgs[0]; } - else if (!GetBattlerSide(gBattleAnimTarget)) + else if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) { StartSpriteAffineAnim(sprite, 1); gBattleAnimArgs[1] = -gBattleAnimArgs[1]; @@ -230,7 +230,7 @@ static void AnimLeechLifeNeedle(struct Sprite *sprite) gBattleAnimArgs[0] = -gBattleAnimArgs[0]; StartSpriteAffineAnim(sprite, 2); } - else if (!GetBattlerSide(gBattleAnimTarget)) + else if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) { gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[0] = -gBattleAnimArgs[0]; @@ -301,7 +301,7 @@ static void AnimStringWrap(struct Sprite *sprite) sprite->x += gBattleAnimArgs[0]; sprite->y += gBattleAnimArgs[1]; - if (!GetBattlerSide(gBattleAnimTarget)) + if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) sprite->y += 8; sprite->callback = AnimStringWrap_Step; diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 72d802f19ae1..2ac00f443ba7 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -926,7 +926,7 @@ static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 activeSpritesId u16 y = GetEruptionLaunchRockInitialYPos(spriteId); u16 x = gSprites[spriteId].x; - if(!GetBattlerSide(gBattleAnimAttacker)) + if(GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) { x -= 12; sign = 1; diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 8609a8e172f2..746e3bdd7365 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -910,8 +910,8 @@ static void AnimWhirlwindLine(struct Sprite * sprite) else InitSpritePosToAnimTarget(sprite, FALSE); - if ((gBattleAnimArgs[2] == ANIM_ATTACKER && !GetBattlerSide(gBattleAnimAttacker)) - || (gBattleAnimArgs[2] == ANIM_TARGET && !GetBattlerSide(gBattleAnimTarget))) + if ((gBattleAnimArgs[2] == ANIM_ATTACKER && GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) + || (gBattleAnimArgs[2] == ANIM_TARGET && GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)) { sprite->x += 8; } diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index 09393a2a7b9f..8a11c2c5b572 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -885,11 +885,11 @@ void AnimTask_RotateMonSpriteToSide(u8 taskId) { if (gBattleAnimArgs[2] == ANIM_ATTACKER) { - gTasks[taskId].data[7] = !GetBattlerSide(gBattleAnimAttacker); + gTasks[taskId].data[7] = GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER; } else { - gTasks[taskId].data[7] = !GetBattlerSide(gBattleAnimTarget); + gTasks[taskId].data[7] = GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER; } } if (gTasks[taskId].data[7]) diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 4ce33251ac6f..f8fc5647eaac 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -2519,7 +2519,7 @@ void AnimWeatherBallUp(struct Sprite *sprite) { sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); - if (!GetBattlerSide(gBattleAnimAttacker)) + if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) sprite->data[0] = 5; else sprite->data[0] = -10; @@ -2545,7 +2545,7 @@ void AnimWeatherBallDown(struct Sprite *sprite) sprite->data[0] = gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[4]; sprite->data[4] = sprite->y + gBattleAnimArgs[5]; - if (!GetBattlerSide(gBattleAnimTarget)) + if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) { x = (u16)gBattleAnimArgs[4] + 30; sprite->x += x; From 15d611ba65eb5f6f7c0fde16ee487f3650bbf017 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 01:26:13 -0400 Subject: [PATCH 702/762] Usage of BATTLE_PARTNER --- include/constants/battle.h | 4 +-- src/battle_ai_script_commands.c | 12 +++---- src/battle_ai_switch_items.c | 10 +++--- src/battle_anim.c | 8 ++--- src/battle_anim_dark.c | 4 +-- src/battle_anim_fire.c | 2 +- src/battle_anim_ghost.c | 2 +- src/battle_anim_psychic.c | 2 +- src/battle_controller_link_partner.c | 12 +++---- src/battle_controller_opponent.c | 40 +++++++++++------------ src/battle_controller_player.c | 40 +++++++++++------------ src/battle_controller_player_partner.c | 20 ++++++------ src/battle_controller_recorded_opponent.c | 34 +++++++++---------- src/battle_controller_recorded_player.c | 30 ++++++++--------- src/battle_controller_wally.c | 22 ++++++------- src/battle_gfx_sfx_util.c | 6 ++-- src/battle_main.c | 8 ++--- src/battle_script_commands.c | 28 ++++++++-------- src/battle_util.c | 12 +++---- 19 files changed, 148 insertions(+), 148 deletions(-) diff --git a/include/constants/battle.h b/include/constants/battle.h index 41bdb7a883c5..9adeeea91612 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -31,8 +31,8 @@ #define B_POSITION_OPPONENT_RIGHT 3 // These macros can be used with either battler ID or positions to get the partner or the opposite mon -#define BATTLE_OPPOSITE(id) ((id) ^ 1) -#define BATTLE_PARTNER(id) ((id) ^ 2) +#define BATTLE_OPPOSITE(id) ((id) ^ BIT_SIDE) +#define BATTLE_PARTNER(id) ((id) ^ BIT_FLANK) #define B_SIDE_PLAYER 0 #define B_SIDE_OPPONENT 1 diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index e9f55bd8bc9f..93e4768379c3 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -541,7 +541,7 @@ static u8 ChooseMoveOrAction_Doubles(void) bestMovePointsForTarget[i] = mostViableMovesScores[0]; // Don't use a move against ally if it has less than 100 points. - if (i == (sBattler_AI ^ BIT_FLANK) && bestMovePointsForTarget[i] < 100) + if (i == (BATTLE_PARTNER(sBattler_AI)) && bestMovePointsForTarget[i] < 100) { bestMovePointsForTarget[i] = -1; mostViableMovesScores[0] = mostViableMovesScores[0]; // Needed to match. @@ -1151,9 +1151,9 @@ static u8 BattleAI_GetWantedBattler(u8 wantedBattler) default: return gBattlerTarget; case AI_USER_PARTNER: - return sBattler_AI ^ BIT_FLANK; + return BATTLE_PARTNER(sBattler_AI); case AI_TARGET_PARTNER: - return gBattlerTarget ^ BIT_FLANK; + return BATTLE_PARTNER(gBattlerTarget); } } @@ -1316,7 +1316,7 @@ static void Cmd_count_usable_party_mons(void) { u32 position; battlerOnField1 = gBattlerPartyIndexes[battlerId]; - position = GetBattlerPosition(battlerId) ^ BIT_FLANK; + position = BATTLE_PARTNER(GetBattlerPosition(battlerId)); battlerOnField2 = gBattlerPartyIndexes[GetBattlerAtPosition(position)]; } else // In singles there's only one battlerId by side. @@ -1799,7 +1799,7 @@ static void Cmd_if_has_move(void) gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4); break; case AI_USER_PARTNER: - if (gBattleMons[sBattler_AI ^ BIT_FLANK].hp == 0) + if (gBattleMons[BATTLE_PARTNER(sBattler_AI)].hp == 0) { gAIScriptPtr += 8; break; @@ -1808,7 +1808,7 @@ static void Cmd_if_has_move(void) { for (i = 0; i < MAX_MON_MOVES; i++) { - if (gBattleMons[sBattler_AI ^ BIT_FLANK].moves[i] == *movePtr) + if (gBattleMons[BATTLE_PARTNER(sBattler_AI)].moves[i] == *movePtr) break; } } diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 169fa5f4f6b7..736dfa9d4814 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -458,10 +458,10 @@ static bool8 ShouldSwitch(void) if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { battlerIn1 = *activeBattlerPtr; - if (gAbsentBattlerFlags & gBitTable[GetBattlerAtPosition(GetBattlerPosition(*activeBattlerPtr) ^ BIT_FLANK)]) + if (gAbsentBattlerFlags & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(*activeBattlerPtr)))]) battlerIn2 = *activeBattlerPtr; else - battlerIn2 = GetBattlerAtPosition(GetBattlerPosition(*activeBattlerPtr) ^ BIT_FLANK); + battlerIn2 = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(*activeBattlerPtr))); } else { @@ -557,7 +557,7 @@ void AI_TrySwitchOrUseItem(void) else { battlerIn1 = GetBattlerAtPosition(battlerIdentity); - battlerIn2 = GetBattlerAtPosition(battlerIdentity ^ BIT_FLANK); + battlerIn2 = GetBattlerAtPosition(BATTLE_PARTNER(battlerIdentity)); } if (gBattleTypeFlags & (BATTLE_TYPE_TWO_OPPONENTS | BATTLE_TYPE_TOWER_LINK_MULTI)) @@ -653,10 +653,10 @@ u8 GetMostSuitableMonToSwitchInto(void) if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { battlerIn1 = gActiveBattler; - if (gAbsentBattlerFlags & gBitTable[GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_FLANK)]) + if (gAbsentBattlerFlags & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler)))]) battlerIn2 = gActiveBattler; else - battlerIn2 = GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_FLANK); + battlerIn2 = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler))); // UB: It considers the opponent only player's side even though it can battle alongside player. opposingBattler = Random() & BIT_FLANK; diff --git a/src/battle_anim.c b/src/battle_anim.c index 375363212bc7..255028eda352 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -883,7 +883,7 @@ static void Cmd_clearmonbg(void) if (sMonAnimTaskIdArray[0] != TASK_NONE) gSprites[gBattlerSpriteIds[battlerId]].invisible = FALSE; if (animBattlerId > 1 && sMonAnimTaskIdArray[1] != TASK_NONE) - gSprites[gBattlerSpriteIds[battlerId ^ BIT_FLANK]].invisible = FALSE; + gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battlerId)]].invisible = FALSE; else animBattlerId = 0; @@ -990,8 +990,8 @@ static void Cmd_clearmonbg_static(void) if (IsBattlerSpriteVisible(battlerId)) gSprites[gBattlerSpriteIds[battlerId]].invisible = FALSE; - if (animBattlerId > 1 && IsBattlerSpriteVisible(battlerId ^ BIT_FLANK)) - gSprites[gBattlerSpriteIds[battlerId ^ BIT_FLANK]].invisible = FALSE; + if (animBattlerId > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battlerId))) + gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battlerId)]].invisible = FALSE; else animBattlerId = 0; @@ -1017,7 +1017,7 @@ static void Task_ClearMonBgStatic(u8 taskId) if (IsBattlerSpriteVisible(battlerId)) ResetBattleAnimBg(toBG_2); - if (gTasks[taskId].data[0] > 1 && IsBattlerSpriteVisible(battlerId ^ BIT_FLANK)) + if (gTasks[taskId].data[0] > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battlerId))) ResetBattleAnimBg(toBG_2 ^ 1); DestroyTask(taskId); diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index 1281ccc8b47e..b7b98a32882a 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -777,8 +777,8 @@ void AnimTask_InitMementoShadow(u8 taskId) if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) { - MoveBattlerSpriteToBG(gBattleAnimAttacker ^ 2, toBG2 ^ 1, TRUE); - gSprites[gBattlerSpriteIds[gBattleAnimAttacker ^ 2]].invisible = FALSE; + MoveBattlerSpriteToBG(BATTLE_PARTNER(gBattleAnimAttacker), toBG2 ^ 1, TRUE); + gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].invisible = FALSE; } DestroyAnimVisualTask(taskId); diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 2ac00f443ba7..fedd4c919f4c 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -1228,7 +1228,7 @@ void AnimTask_MoveHeatWaveTargets(u8 taskId) struct Task *task = &gTasks[taskId]; task->data[12] = GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER ? 1 : -1; - task->data[13] = IsBattlerSpriteVisible(gBattleAnimTarget ^ BIT_FLANK) + 1; + task->data[13] = IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget)) + 1; task->data[14] = GetAnimBattlerSpriteId(ANIM_TARGET); task->data[15] = GetAnimBattlerSpriteId(ANIM_DEF_PARTNER); diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 819b60969bce..792c1ecaf1a8 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -814,7 +814,7 @@ void AnimTask_DestinyBondWhiteShadow(u8 taskId) for (battler = 0; battler < MAX_BATTLERS_COUNT; battler++) { if (battler != gBattleAnimAttacker - && battler != (gBattleAnimAttacker ^ 2) + && battler != BATTLE_PARTNER(gBattleAnimAttacker) && IsBattlerSpriteVisible(battler)) { spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55); diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index 66b895c4a609..978d14c4cdc9 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -570,7 +570,7 @@ static void AnimDefensiveWall_Step5(struct Sprite *sprite) if (IsBattlerSpriteVisible(battler)) ResetBattleAnimBg(toBG2); - battler = battlerCopy ^ 2; + battler = BATTLE_PARTNER(battlerCopy); if (IsBattlerSpriteVisible(battler)) ResetBattleAnimBg(toBG2 ^ var0); } diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index c072ae12ff61..5024faaa9d28 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -217,7 +217,7 @@ static void Intro_WaitForHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { finished = TRUE; } @@ -236,7 +236,7 @@ static void Intro_WaitForHealthbox(void) static void Intro_ShowHealthbox(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive && gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy && ++gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay != 1) @@ -245,10 +245,10 @@ static void Intro_ShowHealthbox(void) if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 641cbd0ace4a..4c274f17e360 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -234,25 +234,25 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) healthboxAnimDone = TRUE; twoMons = TRUE; } gBattleControllerOpponentHealthboxData = &gBattleSpritesDataPtr->healthBoxesData[gActiveBattler]; - gBattleControllerOpponentFlankHealthboxData = &gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK]; + gBattleControllerOpponentFlankHealthboxData = &gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)]; if (healthboxAnimDone) { if (twoMons == TRUE) { if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim - && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + && gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim = FALSE; FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); } @@ -263,8 +263,8 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) { if (GetBattlerPosition(gActiveBattler) == 3) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) { FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); @@ -296,20 +296,20 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) && !(gBattleTypeFlags & BATTLE_TYPE_MULTI) && IsDoubleBattle() - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) - TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) + TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL); StartHealthboxSlideIn(gActiveBattler); @@ -320,7 +320,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].waitForCry && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].waitForCry + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].waitForCry && !IsCryPlayingOrClearCrySongs()) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored) @@ -349,8 +349,8 @@ static void Intro_TryShinyAnimShowHealthbox(void) { if (gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { battlerAnimsDone = TRUE; } @@ -360,8 +360,8 @@ static void Intro_TryShinyAnimShowHealthbox(void) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); - SetBattlerShadowSpriteCallback(gActiveBattler ^ BIT_FLANK, GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], MON_DATA_SPECIES)); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); + SetBattlerShadowSpriteCallback(BATTLE_PARTNER(gActiveBattler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], MON_DATA_SPECIES)); } DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index cf74fefbe06c..2e1f9417b8db 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -950,26 +950,26 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) healthboxAnimDone = TRUE; } // If healthbox and shiny anim are done if (healthboxAnimDone && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim - && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + && gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) { // Reset shiny anim (even if it didn't occur) gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim = FALSE; FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler); if (IsDoubleBattle()) - HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], gActiveBattler ^ BIT_FLANK); + HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], BATTLE_PARTNER(gActiveBattler)); gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 3; gBattlerControllerFuncs[gActiveBattler] = Intro_DelayAndEnd; @@ -987,21 +987,21 @@ static void Intro_TryShinyAnimShowHealthbox(void) TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]); // Start shiny animation if applicable for 2nd pokemon - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) - TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) + TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]); // Show healthbox after ball anim if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL); StartHealthboxSlideIn(gActiveBattler); @@ -1013,7 +1013,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) // Restore bgm after cry has played and healthbox anim is started if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].waitForCry && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].waitForCry + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].waitForCry && !IsCryPlayingOrClearCrySongs()) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored) @@ -1040,8 +1040,8 @@ static void Intro_TryShinyAnimShowHealthbox(void) { if (gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { battlerAnimsDone = TRUE; } @@ -1051,7 +1051,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (bgmRestored && battlerAnimsDone) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); gBattleSpritesDataPtr->animationData->introAnimActive = FALSE; @@ -1178,7 +1178,7 @@ static void Task_GiveExpToMon(u8 taskId) gActiveBattler = savedActiveBattler; if (IsDoubleBattle() == TRUE - && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[battlerId ^ BIT_FLANK])) + && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])) gTasks[taskId].func = Task_LaunchLvlUpAnim; else gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter; @@ -1273,7 +1273,7 @@ static void Task_LaunchLvlUpAnim(u8 taskId) u8 battlerId = gTasks[taskId].tExpTask_battler; u8 monIndex = gTasks[taskId].tExpTask_monId; - if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[battlerId ^ BIT_FLANK]) + if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]) battlerId ^= BIT_FLANK; InitAndLaunchSpecialAnimation(battlerId, battlerId, battlerId, B_ANIM_LVL_UP); @@ -1290,8 +1290,8 @@ static void Task_UpdateLvlInHealthbox(u8 taskId) GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value. - if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[battlerId ^ BIT_FLANK]) - UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId ^ BIT_FLANK], &gPlayerParty[monIndex], HEALTHBOX_ALL); + if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]) + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battlerId)], &gPlayerParty[monIndex], HEALTHBOX_ALL); else UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId], &gPlayerParty[monIndex], HEALTHBOX_ALL); diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 3812a8ffee88..a77144e297f8 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -229,7 +229,7 @@ static void Intro_WaitForHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { finished = TRUE; } @@ -248,7 +248,7 @@ static void Intro_WaitForHealthbox(void) static void Intro_ShowHealthbox(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive && gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy && ++gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay != 1) @@ -257,10 +257,10 @@ static void Intro_ShowHealthbox(void) if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); @@ -336,7 +336,7 @@ static void Task_GiveExpToMon(u8 taskId) gActiveBattler = savedActiveBank; if (IsDoubleBattle() == TRUE - && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[battlerId ^ BIT_FLANK])) + && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])) gTasks[taskId].func = Task_LaunchLvlUpAnim; else gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter; @@ -431,7 +431,7 @@ static void Task_LaunchLvlUpAnim(u8 taskId) u8 battlerId = gTasks[taskId].tExpTask_bank; u8 monIndex = gTasks[taskId].tExpTask_monId; - if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[battlerId ^ BIT_FLANK]) + if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]) battlerId ^= BIT_FLANK; InitAndLaunchSpecialAnimation(battlerId, battlerId, battlerId, B_ANIM_LVL_UP); @@ -448,8 +448,8 @@ static void Task_UpdateLvlInHealthbox(u8 taskId) GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value - if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[battlerId ^ BIT_FLANK]) - UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId ^ BIT_FLANK], &gPlayerParty[monIndex], HEALTHBOX_ALL); + if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]) + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battlerId)], &gPlayerParty[monIndex], HEALTHBOX_ALL); else UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId], &gPlayerParty[monIndex], HEALTHBOX_ALL); diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 49538b834e29..0fb14f20d5d1 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -226,9 +226,9 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded - && gSprites[gBattlerSpriteIds[gActiveBattler ^ BIT_FLANK]].animEnded) + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gActiveBattler)]].animEnded) healthboxAnimDone = TRUE; } @@ -238,13 +238,13 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim) return; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) return; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim = FALSE; FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); } @@ -263,19 +263,19 @@ static void Intro_TryShinyAnimShowHealthbox(void) && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) - TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) + TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL); StartHealthboxSlideIn(gActiveBattler); @@ -286,7 +286,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].waitForCry && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].waitForCry + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].waitForCry && !IsCryPlayingOrClearCrySongs()) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored) @@ -317,8 +317,8 @@ static void Intro_TryShinyAnimShowHealthbox(void) { if (gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { battlerAnimsDone = TRUE; } @@ -328,8 +328,8 @@ static void Intro_TryShinyAnimShowHealthbox(void) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); - SetBattlerShadowSpriteCallback(gActiveBattler ^ BIT_FLANK, GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], MON_DATA_SPECIES)); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); + SetBattlerShadowSpriteCallback(BATTLE_PARTNER(gActiveBattler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], MON_DATA_SPECIES)); } DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index 6200b5ef63cf..b5f0a465d447 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -215,27 +215,27 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { healthboxAnimDone = TRUE; } } if (healthboxAnimDone && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim - && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + && gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim = FALSE; FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler); if (IsDoubleBattle()) - HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], gActiveBattler ^ BIT_FLANK); + HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], BATTLE_PARTNER(gActiveBattler)); gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 3; gBattlerControllerFuncs[gActiveBattler] = Intro_DelayAndEnd; @@ -251,7 +251,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) else { if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy - && gSprites[gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]].callback == SpriteCallbackDummy) + && gSprites[gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]].callback == SpriteCallbackDummy) { healthboxAnimDone = TRUE; } @@ -278,21 +278,21 @@ static void Intro_TryShinyAnimShowHealthbox(void) && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) - TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) + TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]); } if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL); StartHealthboxSlideIn(gActiveBattler); @@ -303,7 +303,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].healthboxSlideInStarted && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].waitForCry - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].waitForCry + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].waitForCry && !IsCryPlayingOrClearCrySongs()) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored) @@ -327,7 +327,7 @@ static void Intro_TryShinyAnimShowHealthbox(void) && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); gBattleSpritesDataPtr->animationData->introAnimActive = FALSE; diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 8e02831776af..f600a46f732c 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -289,21 +289,21 @@ static void Intro_TryShinyAnimShowHealthbox(void) && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive) TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive) - TryShinyAnimation(gActiveBattler ^ BIT_FLANK, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]]); + if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive) + TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]); if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive && gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy && gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) { - DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]); - UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL); - StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK); - SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]); + DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(gActiveBattler)]]); + UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)], &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]], HEALTHBOX_ALL); + StartHealthboxSlideIn(BATTLE_PARTNER(gActiveBattler)); + SetHealthboxSpriteVisible(gHealthboxSpriteIds[BATTLE_PARTNER(gActiveBattler)]); } DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]); UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL); @@ -324,13 +324,13 @@ static void Intro_WaitForShinyAnimAndHealthbox(void) healthboxAnimDone = TRUE; if (healthboxAnimDone && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim - && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim) + && gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim) { gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE; gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE; - gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].finishedShinyMonAnim = FALSE; FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS); FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS); diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index ca6be9d4e2e8..f97a460897ba 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1060,7 +1060,7 @@ void HandleLowHpMusicChange(struct Pokemon *mon, u8 battlerId) { if (!gBattleSpritesDataPtr->battlerData[battlerId].lowHpSong) { - if (!gBattleSpritesDataPtr->battlerData[battlerId ^ BIT_FLANK].lowHpSong) + if (!gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battlerId)].lowHpSong) PlaySE(SE_LOW_HEALTH); gBattleSpritesDataPtr->battlerData[battlerId].lowHpSong = 1; } @@ -1073,7 +1073,7 @@ void HandleLowHpMusicChange(struct Pokemon *mon, u8 battlerId) m4aSongNumStop(SE_LOW_HEALTH); return; } - if (IsDoubleBattle() && !gBattleSpritesDataPtr->battlerData[battlerId ^ BIT_FLANK].lowHpSong) + if (IsDoubleBattle() && !gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battlerId)].lowHpSong) { m4aSongNumStop(SE_LOW_HEALTH); return; @@ -1087,7 +1087,7 @@ void BattleStopLowHpSound(void) gBattleSpritesDataPtr->battlerData[playerBattler].lowHpSong = 0; if (IsDoubleBattle()) - gBattleSpritesDataPtr->battlerData[playerBattler ^ BIT_FLANK].lowHpSong = 0; + gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(playerBattler)].lowHpSong = 0; m4aSongNumStop(SE_LOW_HEALTH); } diff --git a/src/battle_main.c b/src/battle_main.c index b748fb5b1ef0..ad4ea88b9e17 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -4432,7 +4432,7 @@ static void HandleTurnActionSelectionState(void) if (((gBattleTypeFlags & BATTLE_TYPE_MULTI) || !(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) || (position & BIT_FLANK) != B_FLANK_LEFT - || (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)])) + || (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(position))])) { BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE, i); } @@ -4545,9 +4545,9 @@ static void UpdateBattlerPartyOrdersOnSwitch(void) *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 09535e0794b6..61dfa4df6269 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5087,7 +5087,7 @@ static void Cmd_openpartyscreen(void) *(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; gBattleStruct->field_93 &= ~(gBitTable[gActiveBattler]); - BtlController_EmitChoosePokemon(BUFFER_A, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + (gActiveBattler ^ 2)), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); + BtlController_EmitChoosePokemon(BUFFER_A, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + (BATTLE_PARTNER(gActiveBattler))), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 6; @@ -5164,9 +5164,9 @@ static void Cmd_switchhandleorder(void) *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0); *(gActiveBattler * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 1) = gBattleBufferB[gActiveBattler][3]; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; - *((gActiveBattler ^ BIT_FLANK) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) &= (0xF0); + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 0) |= (gBattleBufferB[gActiveBattler][2] & 0xF0) >> 4; + *((BATTLE_PARTNER(gActiveBattler)) * 3 + (u8 *)(gBattleStruct->battlerPartyOrders) + 2) = gBattleBufferB[gActiveBattler][3]; } else if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) { @@ -7189,7 +7189,7 @@ static void Cmd_forcerandomswitch(void) monsCount = PARTY_SIZE / 2; minNeeded = 1; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; - battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; + battler1PartyId = gBattlerPartyIndexes[BATTLE_PARTNER(gBattlerTarget)]; } else if ((gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK) || (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)) @@ -7207,7 +7207,7 @@ static void Cmd_forcerandomswitch(void) monsCount = PARTY_SIZE / 2; minNeeded = 1; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; - battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; + battler1PartyId = gBattlerPartyIndexes[BATTLE_PARTNER(gBattlerTarget)]; } else if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) { @@ -7234,7 +7234,7 @@ static void Cmd_forcerandomswitch(void) minNeeded = 1; } battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; - battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; + battler1PartyId = gBattlerPartyIndexes[BATTLE_PARTNER(gBattlerTarget)]; } else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { @@ -7243,7 +7243,7 @@ static void Cmd_forcerandomswitch(void) monsCount = PARTY_SIZE; minNeeded = 2; battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; - battler1PartyId = gBattlerPartyIndexes[gBattlerTarget ^ BIT_FLANK]; + battler1PartyId = gBattlerPartyIndexes[BATTLE_PARTNER(gBattlerTarget)]; } else { @@ -7296,7 +7296,7 @@ static void Cmd_forcerandomswitch(void) || (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI)) { SwitchPartyOrderLinkMulti(gBattlerTarget, i, 0); - SwitchPartyOrderLinkMulti(gBattlerTarget ^ BIT_FLANK, i, 1); + SwitchPartyOrderLinkMulti(BATTLE_PARTNER(gBattlerTarget), i, 1); } if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) @@ -7642,7 +7642,7 @@ static void Cmd_updatestatusicon(void) } if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { - gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); + gActiveBattler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker))); if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler])) { BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2); @@ -8310,7 +8310,7 @@ static void Cmd_healpartystatus(void) gBattleCommunication[MULTISTRING_CHOOSER] |= B_MSG_BELL_SOUNDPROOF_ATTACKER; } - gActiveBattler = gBattleScripting.battler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); + gActiveBattler = gBattleScripting.battler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker))); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBattlerFlags & gBitTable[gActiveBattler])) @@ -8360,7 +8360,7 @@ static void Cmd_healpartystatus(void) gBattleMons[gBattlerAttacker].status1 = 0; gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_NIGHTMARE; - gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); + gActiveBattler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker))); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBattlerFlags & gBitTable[gActiveBattler])) { @@ -9068,7 +9068,7 @@ static void Cmd_settaunt(void) static void Cmd_trysethelpinghand(void) { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker))); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBattlerFlags & gBitTable[gBattlerTarget]) @@ -9745,7 +9745,7 @@ static void Cmd_settypetoterrain(void) // Unused static void Cmd_pursuitdoubles(void) { - gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_FLANK); + gActiveBattler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker))); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gAbsentBattlerFlags & gBitTable[gActiveBattler]) diff --git a/src/battle_util.c b/src/battle_util.c index fd63494dde79..f178e03c11f0 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -200,13 +200,13 @@ void HandleAction_UseMove(void) { if (GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gBattlerTarget)) { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerTarget) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } else { gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_SIDE); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerTarget) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } } } @@ -239,7 +239,7 @@ void HandleAction_UseMove(void) if (gAbsentBattlerFlags & gBitTable[gBattlerTarget] && GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gBattlerTarget)) { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerTarget) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } } else @@ -249,13 +249,13 @@ void HandleAction_UseMove(void) { if (GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gBattlerTarget)) { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerTarget) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } else { gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_SIDE); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerTarget) ^ BIT_FLANK); + gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } } } @@ -1799,7 +1799,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void) BattleScriptExecute(BattleScript_MonTookFutureAttack); if (gWishFutureKnock.futureSightCounter[gActiveBattler] == 0 - && gWishFutureKnock.futureSightCounter[gActiveBattler ^ BIT_FLANK] == 0) + && gWishFutureKnock.futureSightCounter[BATTLE_PARTNER(gActiveBattler)] == 0) { gSideStatuses[GET_BATTLER_SIDE(gBattlerTarget)] &= ~SIDE_STATUS_FUTUREATTACK; } From 1f0a952546c29584b17684581de69cea92d8a19b Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 01:44:39 -0400 Subject: [PATCH 703/762] Usage of BATTLE_OPPOSITE --- src/battle_ai_script_commands.c | 4 ++-- src/battle_ai_switch_items.c | 4 ++-- src/battle_controller_player.c | 2 +- src/battle_gfx_sfx_util.c | 8 ++++---- src/battle_script_commands.c | 36 ++++++++++++++++----------------- src/battle_util.c | 16 +++++++-------- 6 files changed, 35 insertions(+), 35 deletions(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 93e4768379c3..96b2e1184c7a 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -351,14 +351,14 @@ void BattleAI_SetupAIData(u8 defaultScoreMoves) // Decide a random target battlerId in doubles. if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - gBattlerTarget = (Random() & BIT_FLANK) + (GetBattlerSide(gActiveBattler) ^ BIT_SIDE); + gBattlerTarget = (Random() & BIT_FLANK) + (BATTLE_OPPOSITE(GetBattlerSide(gActiveBattler))); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) gBattlerTarget ^= BIT_FLANK; } // There's only one choice in single battles. else { - gBattlerTarget = sBattler_AI ^ BIT_SIDE; + gBattlerTarget = BATTLE_OPPOSITE(sBattler_AI); } // Choose proper trainer ai scripts. diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 736dfa9d4814..9e314286fc59 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -601,7 +601,7 @@ void AI_TrySwitchOrUseItem(void) } } - BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, (gActiveBattler ^ BIT_SIDE) << 8); + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, BATTLE_OPPOSITE(gActiveBattler) << 8); } static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 *var) @@ -665,7 +665,7 @@ u8 GetMostSuitableMonToSwitchInto(void) } else { - opposingBattler = GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_SIDE); + opposingBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler))); battlerIn1 = gActiveBattler; battlerIn2 = gActiveBattler; } diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 2e1f9417b8db..96a3d6bf01ce 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -498,7 +498,7 @@ static void HandleInputChooseMove(void) if (moveTarget & MOVE_TARGET_USER) gMultiUsePlayerCursor = gActiveBattler; else - gMultiUsePlayerCursor = GetBattlerAtPosition((GetBattlerPosition(gActiveBattler) & BIT_SIDE) ^ BIT_SIDE); + gMultiUsePlayerCursor = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE)); if (!gBattleBufferA[gActiveBattler][1]) // not a double battle { diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index f97a460897ba..c2d4fad186aa 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -254,7 +254,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) else if (moveTarget == MOVE_TARGET_SELECTED) chosenMoveId |= GetBattlePalaceTarget(); else - chosenMoveId |= (GetBattlerAtPosition((GetBattlerPosition(gActiveBattler) & BIT_SIDE) ^ BIT_SIDE) << 8); + chosenMoveId |= (GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE)) << 8); return chosenMoveId; } @@ -310,7 +310,7 @@ static u16 GetBattlePalaceTarget(void) } if (gBattleMons[opposing1].hp == gBattleMons[opposing2].hp) - return (((gActiveBattler & BIT_SIDE) ^ BIT_SIDE) + (Random() & 2)) << 8; + return (BATTLE_OPPOSITE(gActiveBattler & BIT_SIDE) + (Random() & 2)) << 8; switch (gBattlePalaceNatureToMoveTarget[GetNatureFromPersonality(gBattleMons[gActiveBattler].personality)]) { @@ -325,11 +325,11 @@ static u16 GetBattlePalaceTarget(void) else return opposing2 << 8; case PALACE_TARGET_RANDOM: - return (((gActiveBattler & BIT_SIDE) ^ BIT_SIDE) + (Random() & 2)) << 8; + return (BATTLE_OPPOSITE(gActiveBattler & BIT_SIDE) + (Random() & 2)) << 8; } } - return (gActiveBattler ^ BIT_SIDE) << 8; + return BATTLE_OPPOSITE(gActiveBattler) << 8; } // Wait for the pokemon to finish appearing out from the pokeball on send out diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 61dfa4df6269..22a2f6caf907 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5108,7 +5108,7 @@ static void Cmd_openpartyscreen(void) } else { - gActiveBattler = GetBattlerAtPosition(GetBattlerPosition(battlerId) ^ BIT_SIDE); + gActiveBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(battlerId))); if (gAbsentBattlerFlags & gBitTable[gActiveBattler]) gActiveBattler ^= BIT_FLANK; @@ -6233,7 +6233,7 @@ static void Cmd_hpthresholds(void) if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - opposingBattler = gActiveBattler ^ BIT_SIDE; + opposingBattler = BATTLE_OPPOSITE(gActiveBattler); result = gBattleMons[opposingBattler].hp * 100 / gBattleMons[opposingBattler].maxHP; if (result == 0) @@ -6261,7 +6261,7 @@ static void Cmd_hpthresholds2(void) if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) { gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); - opposingBattler = gActiveBattler ^ BIT_SIDE; + opposingBattler = BATTLE_OPPOSITE(gActiveBattler); hpSwitchout = *(gBattleStruct->hpOnSwitchout + GetBattlerSide(opposingBattler)); result = (hpSwitchout - gBattleMons[opposingBattler].hp) * 100 / hpSwitchout; @@ -6299,7 +6299,7 @@ static void Cmd_various(void) break; case VARIOUS_SET_MAGIC_COAT_TARGET: gBattlerAttacker = gBattlerTarget; - side = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (gSideTimers[side].followmeTimer != 0 && gBattleMons[gSideTimers[side].followmeTarget].hp != 0) gBattlerTarget = gSideTimers[side].followmeTarget; else @@ -8399,7 +8399,7 @@ static void Cmd_cursetarget(void) static void Cmd_trysetspikes(void) { - u8 targetSide = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + u8 targetSide = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (gSideTimers[targetSide].spikesAmount == 3) { @@ -9781,7 +9781,7 @@ static void Cmd_snatchsetbattlers(void) // Brick Break static void Cmd_removelightscreenreflect(void) { - u8 opposingSide = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + u8 opposingSide = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (gSideTimers[opposingSide].reflectTimer || gSideTimers[opposingSide].lightscreenTimer) { @@ -9809,7 +9809,7 @@ static void Cmd_handleballthrow(void) return; gActiveBattler = gBattlerAttacker; - gBattlerTarget = gBattlerAttacker ^ BIT_SIDE; + gBattlerTarget = BATTLE_OPPOSITE(gBattlerAttacker); if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) { @@ -9951,18 +9951,18 @@ static void Cmd_handleballthrow(void) static void Cmd_givecaughtmon(void) { - if (GiveMonToPlayer(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]]) != MON_GIVEN_TO_PARTY) + if (GiveMonToPlayer(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]]) != MON_GIVEN_TO_PARTY) { if (!ShouldShowBoxWasFullMessage()) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SENT_SOMEONES_PC; StringCopy(gStringVar1, GetBoxNamePtr(VarGet(VAR_PC_BOX_TO_SEND_MON))); - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gStringVar2); + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_NICKNAME, gStringVar2); } else { StringCopy(gStringVar1, GetBoxNamePtr(VarGet(VAR_PC_BOX_TO_SEND_MON))); // box the mon was sent to - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gStringVar2); + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_NICKNAME, gStringVar2); StringCopy(gStringVar3, GetBoxNamePtr(GetPCBoxToSendMon())); //box the mon was going to be sent to gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_SOMEONES_BOX_FULL; } @@ -9972,9 +9972,9 @@ static void Cmd_givecaughtmon(void) gBattleCommunication[MULTISTRING_CHOOSER]++; } - gBattleResults.caughtMonSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_SPECIES, NULL); - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gBattleResults.caughtMonNick); - gBattleResults.caughtMonBall = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_POKEBALL, NULL); + gBattleResults.caughtMonSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_SPECIES, NULL); + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_NICKNAME, gBattleResults.caughtMonNick); + gBattleResults.caughtMonBall = GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_POKEBALL, NULL); gBattlescriptCurrInstr++; } @@ -10162,13 +10162,13 @@ static void Cmd_trygivecaughtmonnick(void) case 2: if (!gPaletteFade.active) { - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gBattleStruct->caughtMonNick); + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_NICKNAME, gBattleStruct->caughtMonNick); FreeAllWindowBuffers(); DoNamingScreen(NAMING_SCREEN_CAUGHT_MON, gBattleStruct->caughtMonNick, - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_SPECIES), - GetMonGender(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]]), - GetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_PERSONALITY, NULL), + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_SPECIES), + GetMonGender(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]]), + GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_PERSONALITY, NULL), BattleMainCB2); gBattleCommunication[MULTIUSE_STATE]++; @@ -10177,7 +10177,7 @@ static void Cmd_trygivecaughtmonnick(void) case 3: if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active) { - SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerAttacker ^ BIT_SIDE]], MON_DATA_NICKNAME, gBattleStruct->caughtMonNick); + SetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_OPPOSITE(gBattlerAttacker)]], MON_DATA_NICKNAME, gBattleStruct->caughtMonNick); gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); } break; diff --git a/src/battle_util.c b/src/battle_util.c index f178e03c11f0..4315c8a9b58d 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -146,7 +146,7 @@ void HandleAction_UseMove(void) } // choose target - side = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (gSideTimers[side].followmeTimer != 0 && gBattleMoves[gCurrentMove].target == MOVE_TARGET_SELECTED && GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gSideTimers[side].followmeTarget) @@ -204,7 +204,7 @@ void HandleAction_UseMove(void) } else { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_SIDE); + gBattlerTarget = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker))); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } @@ -253,7 +253,7 @@ void HandleAction_UseMove(void) } else { - gBattlerTarget = GetBattlerAtPosition(GetBattlerPosition(gBattlerAttacker) ^ BIT_SIDE); + gBattlerTarget = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker))); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) gBattlerTarget = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget))); } @@ -3001,7 +3001,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 = (GetBattlerPosition(i) ^ BIT_SIDE) & BIT_SIDE; // side of the opposing pokemon + side = (BATTLE_OPPOSITE(GetBattlerPosition(i))) & BIT_SIDE; // side of the opposing pokemon target1 = GetBattlerAtPosition(side); target2 = GetBattlerAtPosition(side + BIT_FLANK); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) @@ -3820,7 +3820,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) switch (moveTarget) { case MOVE_TARGET_SELECTED: - side = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp) targetBattler = gSideTimers[side].followmeTarget; else @@ -3844,12 +3844,12 @@ u8 GetMoveTarget(u16 move, u8 setTarget) case MOVE_TARGET_BOTH: case MOVE_TARGET_FOES_AND_ALLY: case MOVE_TARGET_OPPONENTS_FIELD: - targetBattler = GetBattlerAtPosition((GetBattlerPosition(gBattlerAttacker) & BIT_SIDE) ^ BIT_SIDE); + targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE)); if (gAbsentBattlerFlags & gBitTable[targetBattler]) targetBattler ^= BIT_FLANK; break; case MOVE_TARGET_RANDOM: - side = GetBattlerSide(gBattlerAttacker) ^ BIT_SIDE; + 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) @@ -3872,7 +3872,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) targetBattler ^= BIT_FLANK; } else - targetBattler = GetBattlerAtPosition((GetBattlerPosition(gBattlerAttacker) & BIT_SIDE) ^ BIT_SIDE); + targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE)); break; case MOVE_TARGET_USER_OR_SELECTED: case MOVE_TARGET_USER: From 866d916f2fb27c16fc064386766f99d5a9f36bf2 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 02:07:58 -0400 Subject: [PATCH 704/762] SpriteTemplate formatting --- src/cable_car.c | 13 +++++++------ src/easy_chat.c | 18 ++++++++++++------ src/field_effect.c | 3 ++- src/mirage_tower.c | 6 ++++-- src/mystery_gift_view.c | 3 ++- src/roulette.c | 4 ++-- src/union_room_chat.c | 15 ++++++++++----- 7 files changed, 39 insertions(+), 23 deletions(-) diff --git a/src/cable_car.c b/src/cable_car.c index 562e9eceb758..dd1da3176216 100644 --- a/src/cable_car.c +++ b/src/cable_car.c @@ -202,7 +202,7 @@ static const struct OamData sOam_Cable = .paletteNum = 0, }; -static const struct SpriteTemplate sSpriteTemplate_CableCar[] = +static const struct SpriteTemplate sSpriteTemplates_CableCar[] = { { .tileTag = TAG_CABLE_CAR, @@ -224,7 +224,8 @@ static const struct SpriteTemplate sSpriteTemplate_CableCar[] = }, }; -static const struct SpriteTemplate sSpriteTemplate_Cable = { +static const struct SpriteTemplate sSpriteTemplate_Cable = +{ .tileTag = TAG_CABLE, .paletteTag = TAG_CABLE_CAR, .oam = &sOam_Cable, @@ -836,12 +837,12 @@ static void CreateCableCarSprites(void) gSprites[spriteId].sYPos = 73; } // Create car sprite - spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 176, 43, 0x67); + spriteId = CreateSprite(&sSpriteTemplates_CableCar[0], 176, 43, 0x67); gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32; gSprites[spriteId].sXPos = 176; gSprites[spriteId].sYPos = 43; // Create door sprite - spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 200, 99, 0x65); + spriteId = CreateSprite(&sSpriteTemplates_CableCar[1], 200, 99, 0x65); gSprites[spriteId].x2 = 8; gSprites[spriteId].y2 = 4; gSprites[spriteId].sXPos = 200; @@ -864,12 +865,12 @@ static void CreateCableCarSprites(void) gSprites[spriteId].sYPos = 39; } // Create car sprite - spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 104, 9, 0x67); + spriteId = CreateSprite(&sSpriteTemplates_CableCar[0], 104, 9, 0x67); gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32; gSprites[spriteId].sXPos = 104; gSprites[spriteId].sYPos = 9; // Create door sprite - spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 128, 65, 0x65); + spriteId = CreateSprite(&sSpriteTemplates_CableCar[1], 128, 65, 0x65); gSprites[spriteId].x2 = 8; gSprites[spriteId].y2 = 4; gSprites[spriteId].sXPos = 128; diff --git a/src/easy_chat.c b/src/easy_chat.c index 91b44fb26b16..ebc843b3cc22 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -944,7 +944,8 @@ static const struct OamData sOamData_TriangleCursor = { .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_TriangleCursor = { +static const struct SpriteTemplate sSpriteTemplate_TriangleCursor = +{ .tileTag = PALTAG_TRIANGLE_CURSOR, .paletteTag = GFXTAG_TRIANGLE_CURSOR, .oam = &sOamData_TriangleCursor, @@ -1005,7 +1006,8 @@ static const union AnimCmd *const sAnims_RectangleCursor[] = { [RECTCURSOR_ANIM_ON_LETTER] = sAnim_RectangleCursor_OnLetter, }; -static const struct SpriteTemplate sSpriteTemplate_RectangleCursor = { +static const struct SpriteTemplate sSpriteTemplate_RectangleCursor = +{ .tileTag = GFXTAG_RECTANGLE_CURSOR, .paletteTag = PALTAG_RECTANGLE_CURSOR, .oam = &sOamData_RectangleCursor, @@ -1075,7 +1077,8 @@ static const union AnimCmd *const sAnims_ModeWindow[] = { [MODEWINDOW_ANIM_TRANSITION] = sAnim_ModeWindow_Transition, }; -static const struct SpriteTemplate sSpriteTemplate_ModeWindow = { +static const struct SpriteTemplate sSpriteTemplate_ModeWindow = +{ .tileTag = GFXTAG_MODE_WINDOW, .paletteTag = PALTAG_MISC_UI, .oam = &sOamData_ModeWindow, @@ -1101,7 +1104,8 @@ static const struct OamData sOamData_ButtonWindow = { .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_ButtonWindow = { +static const struct SpriteTemplate sSpriteTemplate_ButtonWindow = +{ .tileTag = GFXTAG_BUTTON_WINDOW, .paletteTag = PALTAG_MISC_UI, .oam = &sOamData_ButtonWindow, @@ -1159,7 +1163,8 @@ static const union AnimCmd *const sAnims_TwoFrame[] = { sAnim_Frame1, }; -static const struct SpriteTemplate sSpriteTemplate_StartSelectButton = { +static const struct SpriteTemplate sSpriteTemplate_StartSelectButton = +{ .tileTag = GFXTAG_START_SELECT_BUTTONS, .paletteTag = PALTAG_MISC_UI, .oam = &sOamData_StartSelectButton, @@ -1169,7 +1174,8 @@ static const struct SpriteTemplate sSpriteTemplate_StartSelectButton = { .callback = SpriteCallbackDummy, }; -static const struct SpriteTemplate sSpriteTemplate_ScrollIndicator = { +static const struct SpriteTemplate sSpriteTemplate_ScrollIndicator = +{ .tileTag = GFXTAG_SCROLL_INDICATOR, .paletteTag = PALTAG_MISC_UI, .oam = &sOamData_ScrollIndicator, diff --git a/src/field_effect.c b/src/field_effect.c index ba917b56543e..1ab45bb25c26 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3766,7 +3766,8 @@ static const union AnimCmd *const sAnims_DeoxysRockFragment[] = { sAnim_RockFragment_BottomRight, }; -static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = { +static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = +{ .tileTag = TAG_NONE, .paletteTag = 4378, .oam = &sOam_8x8, diff --git a/src/mirage_tower.c b/src/mirage_tower.c index 69c2e8154035..37096619d36c 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -201,7 +201,8 @@ static const struct OamData sOamData_CeilingCrumbleSmall = .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleSmall = { +static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleSmall = +{ .tileTag = TAG_CEILING_CRUMBLE, .paletteTag = TAG_NONE, .oam = &sOamData_CeilingCrumbleSmall, @@ -239,7 +240,8 @@ static const struct OamData sOamData_CeilingCrumbleLarge = .affineParam = 0, }; -static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleLarge = { +static const struct SpriteTemplate sSpriteTemplate_CeilingCrumbleLarge = +{ .tileTag = TAG_CEILING_CRUMBLE, .paletteTag = TAG_NONE, .oam = &sOamData_CeilingCrumbleLarge, diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index ff34c8853630..384e8ef74b9b 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -162,7 +162,8 @@ static const struct SpritePalette sSpritePalettes_StampShadow[] = { {sStampShadowPal8, TAG_STAMP_SHADOW} }; -static const struct SpriteTemplate sSpriteTemplate_StampShadow = { +static const struct SpriteTemplate sSpriteTemplate_StampShadow = +{ .tileTag = TAG_STAMP_SHADOW, .paletteTag = TAG_STAMP_SHADOW, .oam = &gOamData_AffineOff_ObjNormal_32x16, diff --git a/src/roulette.c b/src/roulette.c index a8be6ad7ca64..52efc8779fd3 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -2662,7 +2662,7 @@ static const struct SpriteTemplate sSpriteTemplates_ColorHeaders[NUM_BOARD_COLOR } }; -static const struct SpriteTemplate sSpriteTemplate_GridIcons[NUM_BOARD_POKES] = +static const struct SpriteTemplate sSpriteTemplates_GridIcons[NUM_BOARD_POKES] = { { .tileTag = GFXTAG_GRID_ICONS, @@ -3537,7 +3537,7 @@ static void CreateGridSprites(void) u8 y = i * 24; for (j = 0; j < NUM_BOARD_POKES; j++) { - spriteId = sRoulette->spriteIds[(i * NUM_BOARD_POKES) + SPR_GRID_ICONS + j] = CreateSprite(&sSpriteTemplate_GridIcons[j], (j * 24) + 148, y + 92, 30); + spriteId = sRoulette->spriteIds[(i * NUM_BOARD_POKES) + SPR_GRID_ICONS + j] = CreateSprite(&sSpriteTemplates_GridIcons[j], (j * 24) + 148, y + 92, 30); gSprites[spriteId].animPaused = TRUE; y += 24; if (y >= 72) diff --git a/src/union_room_chat.c b/src/union_room_chat.c index f8513b9f46b0..5c26d1ea3616 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -793,7 +793,8 @@ static const union AnimCmd *const sAnims_KeyboardCursor[] = { sAnim_KeyboardCursorWide_Closed }; -static const struct SpriteTemplate sSpriteTemplate_KeyboardCursor = { +static const struct SpriteTemplate sSpriteTemplate_KeyboardCursor = +{ .tileTag = GFXTAG_KEYBOARD_CURSOR, .paletteTag = PALTAG_INTERFACE, .oam = &sOam_KeyboardCursor, @@ -809,7 +810,8 @@ static const struct OamData sOam_TextEntrySprite = { .priority = 2 }; -static const struct SpriteTemplate sSpriteTemplate_TextEntryCursor = { +static const struct SpriteTemplate sSpriteTemplate_TextEntryCursor = +{ .tileTag = GFXTAG_TEXT_ENTRY_CURSOR, .paletteTag = PALTAG_INTERFACE, .oam = &sOam_TextEntrySprite, @@ -819,7 +821,8 @@ static const struct SpriteTemplate sSpriteTemplate_TextEntryCursor = { .callback = SpriteCB_TextEntryCursor }; -static const struct SpriteTemplate sSpriteTemplate_TextEntryArrow = { +static const struct SpriteTemplate sSpriteTemplate_TextEntryArrow = +{ .tileTag = GFXTAG_TEXT_ENTRY_ARROW, .paletteTag = PALTAG_INTERFACE, .oam = &sOam_TextEntrySprite, @@ -868,7 +871,8 @@ static const union AnimCmd *const sAnims_RButtonLabels[] = { sAnim_RegisterIcon }; -static const struct SpriteTemplate sSpriteTemplate_RButtonIcon = { +static const struct SpriteTemplate sSpriteTemplate_RButtonIcon = +{ .tileTag = GFXTAG_RBUTTON_ICON, .paletteTag = PALTAG_INTERFACE, .oam = &sOam_RButtonIcon, @@ -878,7 +882,8 @@ static const struct SpriteTemplate sSpriteTemplate_RButtonIcon = { .callback = SpriteCallbackDummy }; -static const struct SpriteTemplate sSpriteTemplate_RButtonLabels = { +static const struct SpriteTemplate sSpriteTemplate_RButtonLabels = +{ .tileTag = GFXTAG_RBUTTON_LABELS, .paletteTag = PALTAG_INTERFACE, .oam = &sOam_RButtonLabel, From 99fbad92e21003c474b608ba8dc47fe3570184e5 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 02:50:55 -0400 Subject: [PATCH 705/762] IS_BATTLER_OF_TYPE --- src/battle_ai_switch_items.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 9e314286fc59..261349dce1d8 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -446,9 +446,7 @@ static bool8 ShouldSwitch(void) return FALSE; if (ABILITY_ON_FIELD2(ABILITY_MAGNET_PULL)) { - if (gBattleMons[gActiveBattler].type1 == TYPE_STEEL) - return FALSE; - if (gBattleMons[gActiveBattler].type2 == TYPE_STEEL) + if (IS_BATTLER_OF_TYPE(gActiveBattler, TYPE_STEEL)) return FALSE; } if (gBattleTypeFlags & BATTLE_TYPE_ARENA) From 1c8d3a49225a16ff28b0507f79ee041b9bddbb0f Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 27 Aug 2022 11:19:50 -0400 Subject: [PATCH 706/762] Removed unnecessary parenthesis --- src/battle_ai_script_commands.c | 4 ++-- src/battle_script_commands.c | 2 +- src/battle_util.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 96b2e1184c7a..1ddcc9805fdf 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -351,7 +351,7 @@ void BattleAI_SetupAIData(u8 defaultScoreMoves) // Decide a random target battlerId in doubles. if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { - gBattlerTarget = (Random() & BIT_FLANK) + (BATTLE_OPPOSITE(GetBattlerSide(gActiveBattler))); + gBattlerTarget = (Random() & BIT_FLANK) + BATTLE_OPPOSITE(GetBattlerSide(gActiveBattler)); if (gAbsentBattlerFlags & gBitTable[gBattlerTarget]) gBattlerTarget ^= BIT_FLANK; } @@ -541,7 +541,7 @@ static u8 ChooseMoveOrAction_Doubles(void) bestMovePointsForTarget[i] = mostViableMovesScores[0]; // Don't use a move against ally if it has less than 100 points. - if (i == (BATTLE_PARTNER(sBattler_AI)) && bestMovePointsForTarget[i] < 100) + if (i == BATTLE_PARTNER(sBattler_AI) && bestMovePointsForTarget[i] < 100) { bestMovePointsForTarget[i] = -1; mostViableMovesScores[0] = mostViableMovesScores[0]; // Needed to match. diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 22a2f6caf907..a40a4b6f0197 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5087,7 +5087,7 @@ static void Cmd_openpartyscreen(void) *(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(BUFFER_A, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + BATTLE_PARTNER(gActiveBattler)), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]); MarkBattlerForControllerExec(gActiveBattler); gBattlescriptCurrInstr += 6; diff --git a/src/battle_util.c b/src/battle_util.c index 4315c8a9b58d..9bfeacd2d2bb 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3001,7 +3001,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 pokemon target1 = GetBattlerAtPosition(side); target2 = GetBattlerAtPosition(side + BIT_FLANK); if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) From e02b33ee112f9f08c0866a27fb8c2ad1e763ad20 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 31 Aug 2022 22:56:39 -0300 Subject: [PATCH 707/762] Automatized the contents of some sideof in src/item.c --- src/item.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/item.c b/src/item.c index 63287693a8d6..641c1ce6180e 100644 --- a/src/item.c +++ b/src/item.c @@ -740,11 +740,11 @@ bool8 AddPyramidBagItem(u16 itemId, u16 count) u16 *items = gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode]; u8 *quantities = gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode]; - u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); - memcpy(newItems, items, PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(newQuantities, quantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(newItems, items, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(newQuantities, quantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); for (i = 0; i < PYRAMID_BAG_ITEMS_COUNT; i++) { @@ -792,8 +792,8 @@ bool8 AddPyramidBagItem(u16 itemId, u16 count) if (count == 0) { - memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); Free(newItems); Free(newQuantities); return TRUE; @@ -823,11 +823,11 @@ bool8 RemovePyramidBagItem(u16 itemId, u16 count) } else { - u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); - memcpy(newItems, items, PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(newQuantities, quantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(newItems, items, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(newQuantities, quantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); for (i = 0; i < PYRAMID_BAG_ITEMS_COUNT; i++) { @@ -854,8 +854,8 @@ bool8 RemovePyramidBagItem(u16 itemId, u16 count) if (count == 0) { - memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); Free(newItems); Free(newQuantities); return TRUE; From ea345f90f5d2e9cb8a63ad12343aeea49e67340c Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 31 Aug 2022 23:05:06 -0300 Subject: [PATCH 708/762] Picked the correct pointers for correctness' sake --- src/item.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/item.c b/src/item.c index 641c1ce6180e..0f5746027bb4 100644 --- a/src/item.c +++ b/src/item.c @@ -792,8 +792,8 @@ bool8 AddPyramidBagItem(u16 itemId, u16 count) if (count == 0) { - memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); - memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); + memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*items)); + memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*quantities)); Free(newItems); Free(newQuantities); return TRUE; @@ -854,8 +854,8 @@ bool8 RemovePyramidBagItem(u16 itemId, u16 count) if (count == 0) { - memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); - memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); + memcpy(items, newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*items)); + memcpy(quantities, newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*quantities)); Free(newItems); Free(newQuantities); return TRUE; From 5d346fd9392eb718dce06875a26538691343f582 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 31 Aug 2022 23:49:43 -0300 Subject: [PATCH 709/762] Updated a couple more sizeofs --- src/battle_pyramid_bag.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 9fab996da884..7a4d981f0188 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -1404,20 +1404,20 @@ void TryStoreHeldItemsInPyramidBag(void) { u8 i; struct Pokemon *party = gPlayerParty; - u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + u16 *newItems = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + u8 *newQuantities = Alloc(PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); u16 heldItem; - memcpy(newItems, gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(newQuantities, gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(newItems, gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(newQuantities, gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode], PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); for (i = 0; i < FRONTIER_PARTY_SIZE; i++) { heldItem = GetMonData(&party[i], MON_DATA_HELD_ITEM); if (heldItem != ITEM_NONE && !AddBagItem(heldItem, 1)) { // Cant store party held items in pyramid bag because bag is full - memcpy(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode], newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(u16)); - memcpy(gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode], newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(u8)); + memcpy(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode], newItems, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newItems)); + memcpy(gSaveBlock2Ptr->frontier.pyramidBag.quantity[gSaveBlock2Ptr->frontier.lvlMode], newQuantities, PYRAMID_BAG_ITEMS_COUNT * sizeof(*newQuantities)); Free(newItems); Free(newQuantities); gSpecialVar_Result = 1; From c7fc2e13f771cb30a0eb579d1f77e76a85d3be5d Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 2 Sep 2022 16:54:58 -0400 Subject: [PATCH 710/762] Renamed TM flags to keep consistency with the rest of the repo --- .../AbandonedShip_HiddenFloorRooms/map.json | 2 +- data/maps/AbandonedShip_Room_B1F/map.json | 2 +- data/maps/MeteorFalls_1F_1R/map.json | 2 +- data/maps/MeteorFalls_B1F_2R/map.json | 2 +- data/maps/MtPyre_6F/map.json | 2 +- data/maps/MtPyre_Exterior/map.json | 2 +- data/maps/Route111/map.json | 2 +- data/maps/Route113/map.json | 2 +- data/maps/Route115/map.json | 2 +- data/maps/SafariZone_Northwest/map.json | 2 +- data/maps/ScorchedSlab/map.json | 2 +- data/maps/SeafloorCavern_Room9/map.json | 2 +- data/maps/ShoalCave_LowTideIceRoom/map.json | 2 +- data/maps/VictoryRoad_B1F/map.json | 2 +- include/constants/flags.h | 28 +++++++++---------- 15 files changed, 28 insertions(+), 28 deletions(-) diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/map.json b/data/maps/AbandonedShip_HiddenFloorRooms/map.json index b81c33c84301..e9442f22e260 100644 --- a/data/maps/AbandonedShip_HiddenFloorRooms/map.json +++ b/data/maps/AbandonedShip_HiddenFloorRooms/map.json @@ -51,7 +51,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "AbandonedShip_HiddenFloorRooms_EventScript_ItemTM18", - "flag": "FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18" + "flag": "FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM18" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/AbandonedShip_Room_B1F/map.json b/data/maps/AbandonedShip_Room_B1F/map.json index f5d14ac595b4..537f0ec6456f 100644 --- a/data/maps/AbandonedShip_Room_B1F/map.json +++ b/data/maps/AbandonedShip_Room_B1F/map.json @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "AbandonedShip_Room_B1F_EventScript_ItemTM13", - "flag": "FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13" + "flag": "FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM13" } ], "warp_events": [ diff --git a/data/maps/MeteorFalls_1F_1R/map.json b/data/maps/MeteorFalls_1F_1R/map.json index f177410e274a..145289ce798b 100644 --- a/data/maps/MeteorFalls_1F_1R/map.json +++ b/data/maps/MeteorFalls_1F_1R/map.json @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "MeteorFalls_1F_1R_EventScript_ItemTM23", - "flag": "FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23" + "flag": "FLAG_ITEM_METEOR_FALLS_1F_1R_TM23" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/MeteorFalls_B1F_2R/map.json b/data/maps/MeteorFalls_B1F_2R/map.json index 57276d86dbd0..7fc43762f585 100644 --- a/data/maps/MeteorFalls_B1F_2R/map.json +++ b/data/maps/MeteorFalls_B1F_2R/map.json @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "MeteorFalls_B1F_2R_EventScript_ItemTM02", - "flag": "FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02" + "flag": "FLAG_ITEM_METEOR_FALLS_B1F_2R_TM02" } ], "warp_events": [ diff --git a/data/maps/MtPyre_6F/map.json b/data/maps/MtPyre_6F/map.json index dc2e7f9b00ba..88c091f3e302 100644 --- a/data/maps/MtPyre_6F/map.json +++ b/data/maps/MtPyre_6F/map.json @@ -38,7 +38,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "MtPyre_6F_EventScript_ItemTM30", - "flag": "FLAG_ITEM_MT_PYRE_6F_TM_30" + "flag": "FLAG_ITEM_MT_PYRE_6F_TM30" }, { "graphics_id": "OBJ_EVENT_GFX_PSYCHIC_M", diff --git a/data/maps/MtPyre_Exterior/map.json b/data/maps/MtPyre_Exterior/map.json index 58c865305fd4..2df79262c2c9 100644 --- a/data/maps/MtPyre_Exterior/map.json +++ b/data/maps/MtPyre_Exterior/map.json @@ -38,7 +38,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "MtPyre_Exterior_EventScript_ItemTM48", - "flag": "FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48" + "flag": "FLAG_ITEM_MT_PYRE_EXTERIOR_TM48" } ], "warp_events": [ diff --git a/data/maps/Route111/map.json b/data/maps/Route111/map.json index 4621591e4357..566e7c9629e5 100644 --- a/data/maps/Route111/map.json +++ b/data/maps/Route111/map.json @@ -262,7 +262,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "Route111_EventScript_ItemTM37", - "flag": "FLAG_ITEM_ROUTE_111_TM_37" + "flag": "FLAG_ITEM_ROUTE_111_TM37" }, { "graphics_id": "OBJ_EVENT_GFX_BERRY_TREE", diff --git a/data/maps/Route113/map.json b/data/maps/Route113/map.json index 422b88e6ef6f..783406346ec7 100644 --- a/data/maps/Route113/map.json +++ b/data/maps/Route113/map.json @@ -451,7 +451,7 @@ "y": 5, "elevation": 3, "item": "ITEM_TM32", - "flag": "FLAG_HIDDEN_ITEM_ROUTE_113_TM_32" + "flag": "FLAG_HIDDEN_ITEM_ROUTE_113_TM32" }, { "type": "hidden_item", diff --git a/data/maps/Route115/map.json b/data/maps/Route115/map.json index bbac132f5218..a5e2b10f9e18 100644 --- a/data/maps/Route115/map.json +++ b/data/maps/Route115/map.json @@ -166,7 +166,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "Route115_EventScript_ItemTM01", - "flag": "FLAG_ITEM_ROUTE_115_TM_01" + "flag": "FLAG_ITEM_ROUTE_115_TM01" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/SafariZone_Northwest/map.json b/data/maps/SafariZone_Northwest/map.json index 1e27def2cd3a..20fffd0498a4 100644 --- a/data/maps/SafariZone_Northwest/map.json +++ b/data/maps/SafariZone_Northwest/map.json @@ -49,7 +49,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SafariZone_Northwest_EventScript_ItemTM22", - "flag": "FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22" + "flag": "FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM22" } ], "warp_events": [], diff --git a/data/maps/ScorchedSlab/map.json b/data/maps/ScorchedSlab/map.json index e90f1f5c1f90..cb9789490386 100644 --- a/data/maps/ScorchedSlab/map.json +++ b/data/maps/ScorchedSlab/map.json @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "ScorchedSlab_EventScript_ItemTM11", - "flag": "FLAG_ITEM_SCORCHED_SLAB_TM_11" + "flag": "FLAG_ITEM_SCORCHED_SLAB_TM11" } ], "warp_events": [ diff --git a/data/maps/SeafloorCavern_Room9/map.json b/data/maps/SeafloorCavern_Room9/map.json index 0557b0c3eb73..7942b3d1d40d 100644 --- a/data/maps/SeafloorCavern_Room9/map.json +++ b/data/maps/SeafloorCavern_Room9/map.json @@ -90,7 +90,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "SeafloorCavern_Room9_EventScript_ItemTM26", - "flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26" + "flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM26" }, { "graphics_id": "OBJ_EVENT_GFX_KYOGRE_ASLEEP", diff --git a/data/maps/ShoalCave_LowTideIceRoom/map.json b/data/maps/ShoalCave_LowTideIceRoom/map.json index ea4f0cedf490..3195d408b334 100644 --- a/data/maps/ShoalCave_LowTideIceRoom/map.json +++ b/data/maps/ShoalCave_LowTideIceRoom/map.json @@ -25,7 +25,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "ShoalCave_LowTideIceRoom_EventScript_ItemTM07", - "flag": "FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07" + "flag": "FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM07" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/data/maps/VictoryRoad_B1F/map.json b/data/maps/VictoryRoad_B1F/map.json index 6e290ce6de2e..68b013ef4673 100644 --- a/data/maps/VictoryRoad_B1F/map.json +++ b/data/maps/VictoryRoad_B1F/map.json @@ -246,7 +246,7 @@ "trainer_type": "TRAINER_TYPE_NONE", "trainer_sight_or_berry_tree_id": "0", "script": "VictoryRoad_B1F_EventScript_ItemTM29", - "flag": "FLAG_ITEM_VICTORY_ROAD_B1F_TM_29" + "flag": "FLAG_ITEM_VICTORY_ROAD_B1F_TM29" }, { "graphics_id": "OBJ_EVENT_GFX_ITEM_BALL", diff --git a/include/constants/flags.h b/include/constants/flags.h index 8fbc24630038..4e108e1fe98b 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -568,7 +568,7 @@ #define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B) #define FLAG_HIDDEN_ITEM_FALLARBOR_TOWN_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x1C) #define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D) -#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E) +#define FLAG_HIDDEN_ITEM_ROUTE_113_TM32 (FLAG_HIDDEN_ITEMS_START + 0x1E) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY (FLAG_HIDDEN_ITEMS_START + 0x1F) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY (FLAG_HIDDEN_ITEMS_START + 0x20) #define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY (FLAG_HIDDEN_ITEMS_START + 0x21) @@ -1053,7 +1053,7 @@ #define FLAG_ITEM_ROUTE_109_PP_UP 0x3ED #define FLAG_ITEM_ROUTE_109_RARE_CANDY 0x3EE #define FLAG_ITEM_ROUTE_110_DIRE_HIT 0x3EF -#define FLAG_ITEM_ROUTE_111_TM_37 0x3F0 +#define FLAG_ITEM_ROUTE_111_TM37 0x3F0 #define FLAG_ITEM_ROUTE_111_STARDUST 0x3F1 #define FLAG_ITEM_ROUTE_111_HP_UP 0x3F2 #define FLAG_ITEM_ROUTE_112_NUGGET 0x3F3 @@ -1062,7 +1062,7 @@ #define FLAG_ITEM_ROUTE_114_RARE_CANDY 0x3F6 #define FLAG_ITEM_ROUTE_114_PROTEIN 0x3F7 #define FLAG_ITEM_ROUTE_115_SUPER_POTION 0x3F8 -#define FLAG_ITEM_ROUTE_115_TM_01 0x3F9 +#define FLAG_ITEM_ROUTE_115_TM01 0x3F9 #define FLAG_ITEM_ROUTE_115_IRON 0x3FA #define FLAG_ITEM_ROUTE_116_ETHER 0x3FB #define FLAG_ITEM_ROUTE_116_REPEL 0x3FC @@ -1089,7 +1089,7 @@ #define FLAG_ITEM_RUSTBORO_CITY_X_DEFEND 0x411 #define FLAG_ITEM_LILYCOVE_CITY_MAX_REPEL 0x412 #define FLAG_ITEM_MOSSDEEP_CITY_NET_BALL 0x413 -#define FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23 0x414 +#define FLAG_ITEM_METEOR_FALLS_1F_1R_TM23 0x414 #define FLAG_ITEM_METEOR_FALLS_1F_1R_FULL_HEAL 0x415 #define FLAG_ITEM_METEOR_FALLS_1F_1R_MOON_STONE 0x416 #define FLAG_ITEM_METEOR_FALLS_1F_1R_PP_UP 0x417 @@ -1119,35 +1119,35 @@ #define FLAG_ITEM_AQUA_HIDEOUT_B1F_MAX_ELIXIR 0x42F #define FLAG_ITEM_AQUA_HIDEOUT_B2F_NEST_BALL 0x430 #define FLAG_ITEM_MT_PYRE_EXTERIOR_MAX_POTION 0x431 -#define FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48 0x432 +#define FLAG_ITEM_MT_PYRE_EXTERIOR_TM48 0x432 #define FLAG_ITEM_NEW_MAUVILLE_ULTRA_BALL 0x433 #define FLAG_ITEM_NEW_MAUVILLE_ESCAPE_ROPE 0x434 #define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_6_LUXURY_BALL 0x435 #define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER 0x436 -#define FLAG_ITEM_SCORCHED_SLAB_TM_11 0x437 -#define FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02 0x438 +#define FLAG_ITEM_SCORCHED_SLAB_TM11 0x437 +#define FLAG_ITEM_METEOR_FALLS_B1F_2R_TM02 0x438 #define FLAG_ITEM_SHOAL_CAVE_ENTRANCE_BIG_PEARL 0x439 #define FLAG_ITEM_SHOAL_CAVE_INNER_ROOM_RARE_CANDY 0x43A #define FLAG_ITEM_SHOAL_CAVE_STAIRS_ROOM_ICE_HEAL 0x43B #define FLAG_ITEM_VICTORY_ROAD_1F_MAX_ELIXIR 0x43C #define FLAG_ITEM_VICTORY_ROAD_1F_PP_UP 0x43D -#define FLAG_ITEM_VICTORY_ROAD_B1F_TM_29 0x43E +#define FLAG_ITEM_VICTORY_ROAD_B1F_TM29 0x43E #define FLAG_ITEM_VICTORY_ROAD_B1F_FULL_RESTORE 0x43F #define FLAG_ITEM_VICTORY_ROAD_B2F_FULL_HEAL 0x440 -#define FLAG_ITEM_MT_PYRE_6F_TM_30 0x441 -#define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26 0x442 +#define FLAG_ITEM_MT_PYRE_6F_TM30 0x441 +#define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM26 0x442 #define FLAG_ITEM_FIERY_PATH_TM06 0x443 #define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444 #define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445 -#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446 +#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM22 0x446 #define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447 #define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448 #define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449 -#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM13 0x44A #define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B #define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C #define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D -#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM18 0x44E #define FLAG_ITEM_ROUTE_121_CARBOS 0x44F #define FLAG_ITEM_ROUTE_123_ULTRA_BALL 0x450 #define FLAG_ITEM_ROUTE_126_GREEN_SHARD 0x451 @@ -1157,7 +1157,7 @@ #define FLAG_ITEM_ROUTE_123_ELIXIR 0x455 #define FLAG_ITEM_NEW_MAUVILLE_THUNDER_STONE 0x456 #define FLAG_ITEM_FIERY_PATH_FIRE_STONE 0x457 -#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07 0x458 +#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM07 0x458 #define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_NEVER_MELT_ICE 0x459 #define FLAG_ITEM_ROUTE_103_GUARD_SPEC 0x45A #define FLAG_ITEM_ROUTE_104_X_ACCURACY 0x45B From 03a98c72bc435bf92e535de26f21ce0c06df6dd9 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Sep 2022 19:29:35 -0400 Subject: [PATCH 711/762] Sync fieldmap --- include/fieldmap.h | 2 +- include/global.fieldmap.h | 10 +++++----- src/fieldmap.c | 13 +++++++------ src/item_use.c | 2 +- src/scrcmd.c | 8 ++++---- 5 files changed, 18 insertions(+), 17 deletions(-) diff --git a/include/fieldmap.h b/include/fieldmap.h index 7caadfcaaa67..2f7eaba66be9 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -47,7 +47,7 @@ void CopySecondaryTilesetToVramUsingHeap(struct MapLayout const *mapLayout); void CopyPrimaryTilesetToVram(const struct MapLayout *); void CopySecondaryTilesetToVram(const struct MapLayout *); struct MapHeader const *const GetMapHeaderFromConnection(struct MapConnection *connection); -struct MapConnection *GetConnectionAtCoords(s16 x, s16 y); +struct MapConnection *GetMapConnectionAtPos(s16 x, s16 y); void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable); // field_region_map.c diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 974fa3382b04..2be44a5f3bee 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -4,9 +4,9 @@ // Masks/shifts for blocks in the map grid // Map grid blocks consist of a 10 bit metatile id, a 2 bit collision value, and a 4 bit elevation value // This is the data stored in each data/layouts/*/map.bin file -#define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 1-10 -#define MAPGRID_COLLISION_MASK 0x0C00 // Bits 11-12 -#define MAPGRID_ELEVATION_MASK 0xF000 // Bits 13-16 +#define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 0-9 +#define MAPGRID_COLLISION_MASK 0x0C00 // Bits 10-11 +#define MAPGRID_ELEVATION_MASK 0xF000 // Bits 12-15 #define MAPGRID_COLLISION_SHIFT 10 #define MAPGRID_ELEVATION_SHIFT 12 @@ -16,8 +16,8 @@ // Masks/shifts for metatile attributes // Metatile attributes consist of an 8 bit behavior value, 4 unused bits, and a 4 bit layer type value // This is the data stored in each data/tilesets/*/*/metatile_attributes.bin file -#define METATILE_ATTR_BEHAVIOR_MASK 0x00FF // Bits 1-8 -#define METATILE_ATTR_LAYER_MASK 0xF000 // Bits 13-16 +#define METATILE_ATTR_BEHAVIOR_MASK 0x00FF // Bits 0-7 +#define METATILE_ATTR_LAYER_MASK 0xF000 // Bits 12-15 #define METATILE_ATTR_LAYER_SHIFT 12 enum { diff --git a/src/fieldmap.c b/src/fieldmap.c index 2b981dc6e543..8dfa23bf34e0 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -753,7 +753,7 @@ static int IsPosInConnectingMap(struct MapConnection *connection, int x, int y) return FALSE; } -struct MapConnection *GetConnectionAtCoords(s16 x, s16 y) +struct MapConnection *GetMapConnectionAtPos(s16 x, s16 y) { int count; struct MapConnection *connection; @@ -860,12 +860,13 @@ static void CopyTilesetToVramUsingHeap(struct Tileset const *tileset, u16 numTil } } -static void FieldmapPaletteDummy(u16 offset, u16 size) +// Below two are dummied functions from FRLG, used to tint the overworld palettes for the Quest Log +static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size) { } -static void FieldmapUnkDummy(void) +static void ApplyGlobalTintToPaletteSlot(void) { } @@ -880,17 +881,17 @@ void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) { LoadPalette(&black, destOffset, 2); LoadPalette(((u16 *)tileset->palettes) + 1, destOffset + 1, size - 2); - FieldmapPaletteDummy(destOffset + 1, (size - 2) >> 1); + ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) { LoadPalette(((u16 *)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); - FieldmapPaletteDummy(destOffset, size >> 1); + ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } else { LoadCompressedPalette((u32 *)tileset->palettes, destOffset, size); - FieldmapPaletteDummy(destOffset, size >> 1); + ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } } } diff --git a/src/item_use.c b/src/item_use.c index e5c78d091035..41e888496807 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -456,7 +456,7 @@ static void CheckForHiddenItemsInMapConnection(u8 taskId) || var2 > y || y >= height) { - struct MapConnection *conn = GetConnectionAtCoords(x, y); + struct MapConnection *conn = GetMapConnectionAtPos(x, y); if (conn && IsHiddenItemPresentInConnection(conn, x, y) == TRUE) SetDistanceOfClosestHiddenItem(taskId, x - playerX, y - playerY); } diff --git a/src/scrcmd.c b/src/scrcmd.c index 6ca02019d8a5..3d67c69e5115 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -2038,15 +2038,15 @@ bool8 ScrCmd_setmetatile(struct ScriptContext *ctx) { u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - u16 tileId = VarGet(ScriptReadHalfword(ctx)); - u16 isImpassable = VarGet(ScriptReadHalfword(ctx)); + u16 metatileId = VarGet(ScriptReadHalfword(ctx)); + bool16 isImpassable = VarGet(ScriptReadHalfword(ctx)); x += MAP_OFFSET; y += MAP_OFFSET; if (!isImpassable) - MapGridSetMetatileIdAt(x, y, tileId); + MapGridSetMetatileIdAt(x, y, metatileId); else - MapGridSetMetatileIdAt(x, y, tileId | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, metatileId | MAPGRID_COLLISION_MASK); return FALSE; } From 7f1c4720a246702c97ef04f7191648ccac587232 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Sep 2022 19:36:46 -0400 Subject: [PATCH 712/762] Update arguments for ApplyGlobalTintToPaletteSlot --- src/fieldmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fieldmap.c b/src/fieldmap.c index 8dfa23bf34e0..149084d35e1f 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -866,7 +866,7 @@ static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size) } -static void ApplyGlobalTintToPaletteSlot(void) +static void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count) { } From 8b7230c3c456f23cc87b3581f641688e41e82987 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Sep 2022 19:41:28 -0400 Subject: [PATCH 713/762] CpuFastFill -> CpuFastFill16 in fieldmap --- src/fieldmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fieldmap.c b/src/fieldmap.c index 149084d35e1f..bcd2d1019ab7 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -87,13 +87,13 @@ void InitMapFromSavedGame(void) void InitBattlePyramidMap(bool8 setPlayerPosition) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + CpuFastFill16(MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); GenerateBattlePyramidFloorLayout(sBackupMapData, setPlayerPosition); } void InitTrainerHillMap(void) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + CpuFastFill16(MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); GenerateTrainerHillFloorLayout(sBackupMapData); } From 97021baec6f9f112b27ce1356b7e3ca0873327ba Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 2 Sep 2022 21:53:44 -0400 Subject: [PATCH 714/762] Drop usage of global directive --- src/crt0.s | 6 ++---- src/rom_header.s | 21 +++++++-------------- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/src/crt0.s b/src/crt0.s index 523061f52db1..580814722018 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -5,8 +5,7 @@ .arm .align 2, 0 - .global Init -Init: +Init:: mov r0, #PSR_IRQ_MODE msr cpsr_cf, r0 ldr sp, sp_irq @@ -33,8 +32,7 @@ sp_irq: .word IWRAM_END - 0x60 .arm .align 2, 0 - .global IntrMain -IntrMain: +IntrMain:: mov r3, #REG_BASE add r3, r3, #OFFSET_REG_IE ldr r2, [r3] diff --git a/src/rom_header.s b/src/rom_header.s index c5fa5ddf40e0..4f80d8f63f2e 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -1,19 +1,16 @@ @ Note: ROM header data is empty space here. @ It's populated by gbafix using data provided in the Makefile. - .global Start -Start: +Start:: b Init - .global RomHeaderNintendoLogo -RomHeaderNintendoLogo: +RomHeaderNintendoLogo:: .space 156 RomHeaderGameTitle: .space 12 - .global RomHeaderGameCode -RomHeaderGameCode: +RomHeaderGameCode:: .space 4 RomHeaderMakerCode: @@ -31,8 +28,7 @@ RomHeaderDeviceType: RomHeaderReserved1: .space 7 - .global RomHeaderSoftwareVersion -RomHeaderSoftwareVersion: +RomHeaderSoftwareVersion:: .byte 0 RomHeaderChecksum: @@ -43,16 +39,13 @@ RomHeaderReserved2: .word 0 - .global GPIOPortData -GPIOPortData: +GPIOPortData:: .2byte 0 - .global GPIOPortDirection -GPIOPortDirection: +GPIOPortDirection:: .2byte 0 - .global GPIOPortReadEnable -GPIOPortReadEnable: +GPIOPortReadEnable:: .2byte 0 .2byte 0 From 790bdd69f81a3ea43f7e30c783eee651f8496b5d Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 3 Sep 2022 00:28:32 -0400 Subject: [PATCH 715/762] Using GET_BATTLER_SIDE and GET_BATTLER_SIDE2 --- src/battle_anim_effects_2.c | 2 +- src/battle_anim_fight.c | 2 +- src/battle_anim_ice.c | 4 ++-- src/battle_controller_player.c | 2 +- src/battle_gfx_sfx_util.c | 2 +- src/battle_util.c | 4 ++-- src/pokemon.c | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 5bd28acea112..6b60440528d8 100755 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1667,7 +1667,7 @@ void AnimTask_AirCutterProjectile(u8 taskId) } else { - if ((gBattlerPositions[gBattleAnimTarget] & BIT_SIDE) == B_SIDE_PLAYER) + if (GET_BATTLER_SIDE2(gBattleAnimTarget) == B_SIDE_PLAYER) { gTasks[taskId].data[4] = 1; gBattleAnimArgs[0] = -gBattleAnimArgs[0]; diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index 0d7b977e9d53..764a951ef81f 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -492,7 +492,7 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite) if (Random2() & 1) y *= -1; - if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER) + if (GET_BATTLER_SIDE2(battler) == B_SIDE_PLAYER) y += 0xFFF0; sprite->x += x; diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index d2779d141590..3032db7f3f29 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -1193,12 +1193,12 @@ static void InitPoisonGasCloudAnim(struct Sprite *sprite) if (GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) < GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2)) sprite->data[7] = 0x8000; - if ((gBattlerPositions[gBattleAnimTarget] & BIT_SIDE) == B_SIDE_PLAYER) + if (GET_BATTLER_SIDE2(gBattleAnimTarget) == B_SIDE_PLAYER) { gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[3] = -gBattleAnimArgs[3]; - if ((sprite->data[7] & 0x8000) && (gBattlerPositions[gBattleAnimAttacker] & BIT_SIDE) == B_SIDE_PLAYER) + if ((sprite->data[7] & 0x8000) && GET_BATTLER_SIDE2(gBattleAnimAttacker) == B_SIDE_PLAYER) sprite->subpriority = gSprites[GetAnimBattlerSpriteId(ANIM_TARGET)].subpriority + 1; sprite->data[6] = 1; diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 96a3d6bf01ce..265bb7f65703 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -498,7 +498,7 @@ static void HandleInputChooseMove(void) if (moveTarget & MOVE_TARGET_USER) gMultiUsePlayerCursor = gActiveBattler; else - gMultiUsePlayerCursor = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE)); + gMultiUsePlayerCursor = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gActiveBattler))); if (!gBattleBufferA[gActiveBattler][1]) // not a double battle { diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index c2d4fad186aa..9c5243548dd7 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -254,7 +254,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void) else if (moveTarget == MOVE_TARGET_SELECTED) chosenMoveId |= GetBattlePalaceTarget(); else - chosenMoveId |= (GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE)) << 8); + chosenMoveId |= (GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gActiveBattler))) << 8); return chosenMoveId; } diff --git a/src/battle_util.c b/src/battle_util.c index 9bfeacd2d2bb..bbf34ab31631 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3844,7 +3844,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) case MOVE_TARGET_BOTH: case MOVE_TARGET_FOES_AND_ALLY: case MOVE_TARGET_OPPONENTS_FIELD: - targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE)); + targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gBattlerAttacker))); if (gAbsentBattlerFlags & gBitTable[targetBattler]) targetBattler ^= BIT_FLANK; break; @@ -3872,7 +3872,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget) targetBattler ^= BIT_FLANK; } else - targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE)); + targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gBattlerAttacker))); break; case MOVE_TARGET_USER_OR_SELECTED: case MOVE_TARGET_USER: diff --git a/src/pokemon.c b/src/pokemon.c index 4b22947cb0e2..d4931f8e5e3c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -3405,7 +3405,7 @@ static bool8 ShouldGetStatBadgeBoost(u16 badgeFlag, u8 battlerId) u8 GetDefaultMoveTarget(u8 battlerId) { - u8 opposing = BATTLE_OPPOSITE(GetBattlerPosition(battlerId) & BIT_SIDE); + u8 opposing = BATTLE_OPPOSITE(GET_BATTLER_SIDE(battlerId)); if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) return GetBattlerAtPosition(opposing); From 41bf6bde258af3e52867800c7b2fdb02f0540674 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 3 Sep 2022 00:28:53 -0400 Subject: [PATCH 716/762] Removed pointless macro --- include/battle.h | 3 +-- src/battle_anim_mons.c | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/battle.h b/include/battle.h index 0eaa60f30f6f..5cc552185992 100644 --- a/include/battle.h +++ b/include/battle.h @@ -13,9 +13,8 @@ #include "battle_bg.h" #include "pokeball.h" -#define GET_BATTLER_POSITION(battler) (gBattlerPositions[battler]) #define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE) -#define GET_BATTLER_SIDE2(battler) (GET_BATTLER_POSITION(battler) & BIT_SIDE) +#define GET_BATTLER_SIDE2(battler) (gBattlerPositions[battler] & BIT_SIDE) // Used to exclude moves learned temporarily by Transform or Mimic #define MOVE_IS_PERMANENT(battler, moveSlot) \ diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index f8fc5647eaac..25817c0740a9 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -857,7 +857,7 @@ u8 GetBattlerSide(u8 battlerId) u8 GetBattlerPosition(u8 battlerId) { - return GET_BATTLER_POSITION(battlerId); + return gBattlerPositions[battlerId]; } u8 GetBattlerAtPosition(u8 position) From 7500435a8040c1ae3b62cf47eac6e1e9a5c60fbe Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 4 Sep 2022 21:24:12 -0300 Subject: [PATCH 717/762] Implemented review changes from https://github.com/pret/pokefirered/pull/548 --- src/battle_controller_link_opponent.c | 4 ---- src/battle_controller_opponent.c | 2 -- src/battle_controller_recorded_opponent.c | 4 ---- src/battle_controllers.c | 15 ++++----------- src/battle_main.c | 10 +++++----- src/battle_tower.c | 2 +- src/berry_crush.c | 2 +- src/dodrio_berry_picking.c | 4 ++-- src/link_rfu_2.c | 2 +- src/minigame_countdown.c | 2 +- src/mystery_event_menu.c | 2 +- src/mystery_gift_menu.c | 4 ++-- src/record_mixing.c | 2 +- src/reshow_battle_screen.c | 2 +- src/trade.c | 2 +- src/union_room.c | 4 ++-- 16 files changed, 23 insertions(+), 40 deletions(-) diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index a9629f6622d6..0f1ce1b17f29 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -386,13 +386,9 @@ static void CompleteOnHealthbarDone(void) SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], hpValue, HP_CURRENT); - } else - { LinkOpponentBufferExecCompleted(); - } } static void HideHealthboxAfterMonFaint(void) diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 4c274f17e360..b3554dc5af17 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -397,9 +397,7 @@ static void CompleteOnHealthbarDone(void) s16 hpValue = MoveBattleBar(gActiveBattler, gHealthboxSpriteIds[gActiveBattler], HEALTH_BAR, 0); SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], hpValue, HP_CURRENT); - } else OpponentBufferExecCompleted(); } diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 0fb14f20d5d1..872a61c0e76f 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -373,13 +373,9 @@ static void CompleteOnHealthbarDone(void) SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], hpValue, HP_CURRENT); - } else - { RecordedOpponentBufferExecCompleted(); - } } static void HideHealthboxAfterMonFaint(void) diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 20681b27ce1e..e5cfb3be68f9 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -660,18 +660,12 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size) switch (bufferId) { case BUFFER_A: - for (i = 0; i < size; i++) - { + for (i = 0; i < size; data++, i++) gBattleBufferA[gActiveBattler][i] = *data; - data++; - } break; case BUFFER_B: - for (i = 0; i < size; i++) - { + for (i = 0; i < size; data++, i++) gBattleBufferB[gActiveBattler][i] = *data; - data++; - } break; } } @@ -808,8 +802,7 @@ static void Task_HandleSendLinkBuffersData(u8 taskId) } break; case 5: - gTasks[taskId].data[13]--; - if (gTasks[taskId].data[13] == 0) + if (--gTasks[taskId].data[13] == 0) { gTasks[taskId].data[13] = 1; gTasks[taskId].data[11] = 3; @@ -824,7 +817,7 @@ void TryReceiveLinkBattleData(void) s32 j; u8 *recvBuffer; - if (gReceivedRemoteLinkPlayers != 0 && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE)) + if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE)) { DestroyTask_RfuIdle(); for (i = 0; i < GetLinkPlayerCount(); i++) diff --git a/src/battle_main.c b/src/battle_main.c index ad4ea88b9e17..52a1005989cf 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -967,7 +967,7 @@ static void CB2_HandleStartBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsLinkTaskFinished()) { @@ -1175,7 +1175,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { u8 language; @@ -1442,7 +1442,7 @@ static void CB2_PreInitMultiBattle(void) switch (gBattleCommunication[MULTIUSE_STATE]) { case 0: - if (gReceivedRemoteLinkPlayers != 0 && IsLinkTaskFinished()) + if (gReceivedRemoteLinkPlayers && IsLinkTaskFinished()) { sMultiPartnerPartyBuffer = Alloc(sizeof(gMultiPartnerParty)); SetMultiPartnerMenuParty(0); @@ -1578,7 +1578,7 @@ static void CB2_HandleStartMultiBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsLinkTaskFinished()) { @@ -5183,7 +5183,7 @@ static void ReturnFromBattleToOverworld(void) PartySpreadPokerus(gPlayerParty); } - if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers != 0) + if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers) return; gSpecialVar_Result = gBattleOutcome; diff --git a/src/battle_tower.c b/src/battle_tower.c index bebbdee7da4f..62feb7f8384a 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -2635,7 +2635,7 @@ static void LoadLinkMultiOpponentsData(void) gTrainerBattleOpponent_B = gSaveBlock2Ptr->frontier.trainerIds[battleNum * 2 + 1]; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_B, 1); - if (gReceivedRemoteLinkPlayers != 0 && gWirelessCommType == 0) + if (gReceivedRemoteLinkPlayers && gWirelessCommType == 0) gSpecialVar_Result = 4; else gSpecialVar_Result = 6; diff --git a/src/berry_crush.c b/src/berry_crush.c index 19c03391d3d7..d93dbe80ad18 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -3428,7 +3428,7 @@ static u32 Cmd_CloseLink(struct BerryCrushGame *game, u8 *args) SetCloseLinkCallback(); break; case 2: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) return 0; game->nextCmd = CMD_QUIT; RunOrScheduleCommand(CMD_HIDE_GAME, SCHEDULE_CMD, NULL); diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 11bf12925b6f..a3710e04fb0a 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -665,7 +665,7 @@ void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void)) { sExitingGame = FALSE; - if (gReceivedRemoteLinkPlayers != 0 && (sGame = AllocZeroed(sizeof(*sGame)))) + if (gReceivedRemoteLinkPlayers && (sGame = AllocZeroed(sizeof(*sGame)))) { ResetTasksAndSprites(); InitDodrioGame(sGame); @@ -775,7 +775,7 @@ static void Task_StartDodrioGame(u8 taskId) case 3: if (IsLinkTaskFinished()) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index c54d6c3d34ba..437cec2fdbd4 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -1115,7 +1115,7 @@ static void RfuHandleReceiveCommand(u8 unused) { gRfu.recvBlock[i].receiving = RECV_STATE_FINISHED; Rfu_SetBlockReceivedFlag(i); - if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers != 0 && gRfu.parentChild == MODE_CHILD) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers && gRfu.parentChild == MODE_CHILD) ValidateAndReceivePokemonSioInfo(gBlockRecvBuffer); } } diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 5aaed0cb2365..b4d3b6558bc7 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -315,7 +315,7 @@ static void Task_StaticCountdown_Run(u8 taskId) u16 packet[RFU_PACKET_SIZE]; s16 *data = gTasks[taskId].data; - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { // Read link timer if (gRecvCmds[0][1] == LINKCMD_COUNTDOWN) diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index c35fe8ed805e..b6610a64037e 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -201,7 +201,7 @@ static void CB2_MysteryEventMenu(void) case 6: if (IsLinkConnectionEstablished()) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (GetLinkPlayerDataExchangeStatusTimed(2, 2) == EXCHANGE_DIFF_SELECTIONS) { diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index b970711fd3a2..92e544a27b5a 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -1232,7 +1232,7 @@ static void Task_MysteryGift(u8 taskId) data->state = MG_STATE_CLIENT_LINK_WAIT; break; case MG_STATE_CLIENT_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ClearScreenInBg0(TRUE); data->state = MG_STATE_CLIENT_COMMUNICATING; @@ -1528,7 +1528,7 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_SERVER_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ClearScreenInBg0(TRUE); data->state = MG_STATE_SERVER_LINK_START; diff --git a/src/record_mixing.c b/src/record_mixing.c index 3a831c8ce1a7..b03d7be2f325 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -444,7 +444,7 @@ static void Task_MixingRecordsRecv(u8 taskId) } break; case 1: // wait for handshake - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ConvertIntToDecimalStringN(gStringVar1, GetMultiplayerId_(), STR_CONV_MODE_LEADING_ZEROS, 2); task->tState = 5; diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 3a087b7d78de..4217d78c731a 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -149,7 +149,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) ActionSelectionCreateCursorAt(gActionSelectionCursor[gBattlerInMenuId], 0); - if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers != 0) + if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers) { LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); diff --git a/src/trade.c b/src/trade.c index 7c712b5803b2..e24051e04120 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2391,7 +2391,7 @@ s32 GetGameProgressForLinkTrade(void) s32 isGameFrLg; u16 version; - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { isGameFrLg = 0; version = (gLinkPlayers[GetMultiplayerId() ^ 1].version & 0xFF); diff --git a/src/union_room.c b/src/union_room.c index 67d1059ee04d..7d1417671786 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -702,7 +702,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } else { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsActivityWithVariableGroupSize(gPlayerCurrActivity)) GetOtherPlayersInfoFlags(); @@ -2047,7 +2047,7 @@ static void Task_SendMysteryGift(u8 taskId) { data->state = 13; } - else if (gReceivedRemoteLinkPlayers != 0) + else if (gReceivedRemoteLinkPlayers) { UpdateGameData_GroupLockedIn(TRUE); data->state++; From 33f10d2139b4e47d9f6705c8b9b30ef5533d48e0 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Mon, 5 Sep 2022 09:49:20 -0400 Subject: [PATCH 718/762] Adding missing externs If there are not externs on these forward declarations, it's entirely possible for the program to link and missing data to be assigned to someplace presumed in IWRAM or something. --- .../field_effect_object_template_pointers.h | 74 +-- .../object_event_graphics_info_pointers.h | 492 +++++++++--------- 2 files changed, 283 insertions(+), 283 deletions(-) diff --git a/src/data/field_effects/field_effect_object_template_pointers.h b/src/data/field_effects/field_effect_object_template_pointers.h index 41d6271bf27c..64a3c3283b00 100755 --- a/src/data/field_effects/field_effect_object_template_pointers.h +++ b/src/data/field_effects/field_effect_object_template_pointers.h @@ -1,40 +1,40 @@ -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge; -const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ash; -const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob; -const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow; -const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash; -const struct SpriteTemplate gFieldEffectObjectTemplate_Splash; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash; -const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand; -const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing; -const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion; -const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle; -const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints; -const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise; -const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bird; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; -const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle; -const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Splash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bird; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = { [FLDEFFOBJ_SHADOW_S] = &gFieldEffectObjectTemplate_ShadowSmall, diff --git a/src/data/object_events/object_event_graphics_info_pointers.h b/src/data/object_events/object_event_graphics_info_pointers.h index 1c94919a7558..ae1117164a72 100755 --- a/src/data/object_events/object_event_graphics_info_pointers.h +++ b/src/data/object_events/object_event_graphics_info_pointers.h @@ -1,249 +1,249 @@ -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2; const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM_OBJ_EVENT_GFX] = { From c8afeea1824f01e8435e5bf1115b366bec65ff82 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 5 Sep 2022 16:09:45 -0400 Subject: [PATCH 719/762] Generate trainer pic palettes from image --- .../{brendan_back_pic.png => brendan.png} | Bin ...re_brendan_back_pic.png => brendan_rs.png} | Bin .../back_pics/{leaf_back_pic.png => leaf.png} | Bin .../back_pics/{may_back_pic.png => may.png} | Bin ...y_sapphire_may_back_pic.png => may_rs.png} | Bin .../back_pics/{red_back_pic.png => red.png} | Bin .../{steven_back_pic.png => steven.png} | Bin .../{wally_back_pic.png => wally.png} | Bin ...admin_f_front_pic.png => aqua_admin_f.png} | Bin ...admin_m_front_pic.png => aqua_admin_m.png} | Bin ...grunt_f_front_pic.png => aqua_grunt_f.png} | Bin ...grunt_m_front_pic.png => aqua_grunt_m.png} | Bin ...e_front_pic.png => aqua_leader_archie.png} | Bin ...a_front_pic.png => arena_tycoon_greta.png} | Bin ...roma_lady_front_pic.png => aroma_lady.png} | Bin ...tle_girl_front_pic.png => battle_girl.png} | Bin .../{beauty_front_pic.png => beauty.png} | Bin ...d_keeper_front_pic.png => bird_keeper.png} | Bin ...lack_belt_front_pic.png => black_belt.png} | Bin .../{brendan_front_pic.png => brendan.png} | Bin ...e_brendan_front_pic.png => brendan_rs.png} | Bin ..._catcher_front_pic.png => bug_catcher.png} | Bin ...ug_maniac_front_pic.png => bug_maniac.png} | Bin .../{camper_front_pic.png => camper.png} | Bin ...ace_front_pic.png => champion_wallace.png} | Bin ...{collector_front_pic.png => collector.png} | Bin ...iner_f_front_pic.png => cooltrainer_f.png} | Bin ...iner_m_front_pic.png => cooltrainer_m.png} | Bin ...front_pic.png => cycling_triathlete_f.png} | Bin ...front_pic.png => cycling_triathlete_m.png} | Bin ...cker_front_pic.png => dome_ace_tucker.png} | Bin ...n_tamer_front_pic.png => dragon_tamer.png} | Bin ...ake_front_pic.png => elite_four_drake.png} | Bin ...ia_front_pic.png => elite_four_glacia.png} | Bin ...be_front_pic.png => elite_four_phoebe.png} | Bin ...ey_front_pic.png => elite_four_sidney.png} | Bin .../{expert_f_front_pic.png => expert_f.png} | Bin .../{expert_m_front_pic.png => expert_m.png} | Bin ..._front_pic.png => factory_head_noland.png} | Bin ...{fisherman_front_pic.png => fisherman.png} | Bin ...{gentleman_front_pic.png => gentleman.png} | Bin ...{guitarist_front_pic.png => guitarist.png} | Bin ...ex_maniac_front_pic.png => hex_maniac.png} | Bin .../{hiker_front_pic.png => hiker.png} | Bin ...erviewer_front_pic.png => interviewer.png} | Bin .../{kindler_front_pic.png => kindler.png} | Bin .../{lady_front_pic.png => lady.png} | Bin .../{lass_front_pic.png => lass.png} | Bin ...brawly_front_pic.png => leader_brawly.png} | Bin ...nery_front_pic.png => leader_flannery.png} | Bin ...der_juan_front_pic.png => leader_juan.png} | Bin ...norman_front_pic.png => leader_norman.png} | Bin ...xanne_front_pic.png => leader_roxanne.png} | Bin ...front_pic.png => leader_tate_and_liza.png} | Bin ...ttson_front_pic.png => leader_wattson.png} | Bin ...winona_front_pic.png => leader_winona.png} | Bin .../{leaf_front_pic.png => leaf.png} | Bin ...ma_admin_front_pic.png => magma_admin.png} | Bin ...runt_f_front_pic.png => magma_grunt_f.png} | Bin ...runt_m_front_pic.png => magma_grunt_m.png} | Bin ...e_front_pic.png => magma_leader_maxie.png} | Bin .../front_pics/{may_front_pic.png => may.png} | Bin ..._sapphire_may_front_pic.png => may_rs.png} | Bin ...{ninja_boy_front_pic.png => ninja_boy.png} | Bin ...ld_couple_front_pic.png => old_couple.png} | Bin ...front_pic.png => palace_maven_spenser.png} | Bin ...ol_lady_front_pic.png => parasol_lady.png} | Bin ...{picnicker_front_pic.png => picnicker.png} | Bin ...lucy_front_pic.png => pike_queen_lucy.png} | Bin ...{pokefan_f_front_pic.png => pokefan_f.png} | Bin ...{pokefan_m_front_pic.png => pokefan_m.png} | Bin ...okemaniac_front_pic.png => pokemaniac.png} | Bin ..._f_front_pic.png => pokemon_breeder_f.png} | Bin ..._m_front_pic.png => pokemon_breeder_m.png} | Bin ...r_f_front_pic.png => pokemon_ranger_f.png} | Bin ...r_m_front_pic.png => pokemon_ranger_m.png} | Bin ...{psychic_f_front_pic.png => psychic_f.png} | Bin ...{psychic_m_front_pic.png => psychic_m.png} | Bin ...front_pic.png => pyramid_king_brandon.png} | Bin .../front_pics/{red_front_pic.png => red.png} | Bin .../{rich_boy_front_pic.png => rich_boy.png} | Bin ...n_maniac_front_pic.png => ruin_maniac.png} | Bin ...front_pic.png => running_triathlete_f.png} | Bin ...front_pic.png => running_triathlete_m.png} | Bin .../{sailor_front_pic.png => sailor.png} | Bin ..._front_pic.png => salon_maiden_anabel.png} | Bin ...l_kid_f_front_pic.png => school_kid_f.png} | Bin ...l_kid_m_front_pic.png => school_kid_m.png} | Bin ..._and_bro_front_pic.png => sis_and_bro.png} | Bin ...{sr_and_jr_front_pic.png => sr_and_jr.png} | Bin .../{steven_front_pic.png => steven.png} | Bin ...{swimmer_f_front_pic.png => swimmer_f.png} | Bin ...{swimmer_m_front_pic.png => swimmer_m.png} | Bin ...ront_pic.png => swimming_triathlete_f.png} | Bin ...ront_pic.png => swimming_triathlete_m.png} | Bin .../{tuber_f_front_pic.png => tuber_f.png} | Bin .../{tuber_m_front_pic.png => tuber_m.png} | Bin .../{twins_front_pic.png => twins.png} | Bin .../{wally_front_pic.png => wally.png} | Bin ..._couple_front_pic.png => young_couple.png} | Bin ...{youngster_front_pic.png => youngster.png} | Bin graphics/trainers/palettes/aqua_admin_f.pal | 19 - graphics/trainers/palettes/aqua_admin_m.pal | 19 - graphics/trainers/palettes/aqua_grunt_f.pal | 19 - graphics/trainers/palettes/aqua_grunt_m.pal | 19 - .../trainers/palettes/aqua_leader_archie.pal | 19 - .../trainers/palettes/arena_tycoon_greta.pal | 19 - graphics/trainers/palettes/aroma_lady.pal | 19 - graphics/trainers/palettes/battle_girl.pal | 19 - graphics/trainers/palettes/beauty.pal | 19 - graphics/trainers/palettes/bird_keeper.pal | 19 - graphics/trainers/palettes/black_belt.pal | 19 - ...by_sapphire_brendan.pal => brendan_rs.pal} | 0 graphics/trainers/palettes/bug_catcher.pal | 19 - graphics/trainers/palettes/bug_maniac.pal | 19 - graphics/trainers/palettes/camper.pal | 19 - .../trainers/palettes/champion_wallace.pal | 19 - graphics/trainers/palettes/collector.pal | 19 - graphics/trainers/palettes/cooltrainer_f.pal | 19 - graphics/trainers/palettes/cooltrainer_m.pal | 19 - .../palettes/cycling_triathlete_f.pal | 19 - .../palettes/cycling_triathlete_m.pal | 19 - .../trainers/palettes/dome_ace_tucker.pal | 19 - graphics/trainers/palettes/dragon_tamer.pal | 19 - .../trainers/palettes/elite_four_drake.pal | 19 - .../trainers/palettes/elite_four_glacia.pal | 19 - .../trainers/palettes/elite_four_phoebe.pal | 19 - .../trainers/palettes/elite_four_sidney.pal | 19 - graphics/trainers/palettes/expert_f.pal | 19 - graphics/trainers/palettes/expert_m.pal | 19 - .../trainers/palettes/factory_head_noland.pal | 19 - graphics/trainers/palettes/fisherman.pal | 19 - graphics/trainers/palettes/gentleman.pal | 19 - graphics/trainers/palettes/guitarist.pal | 19 - graphics/trainers/palettes/hex_maniac.pal | 19 - graphics/trainers/palettes/hiker.pal | 19 - graphics/trainers/palettes/interviewer.pal | 19 - graphics/trainers/palettes/kindler.pal | 19 - graphics/trainers/palettes/lady.pal | 19 - graphics/trainers/palettes/lass.pal | 19 - graphics/trainers/palettes/leader_brawly.pal | 19 - .../trainers/palettes/leader_flannery.pal | 19 - graphics/trainers/palettes/leader_juan.pal | 19 - graphics/trainers/palettes/leader_norman.pal | 19 - graphics/trainers/palettes/leader_roxanne.pal | 19 - .../palettes/leader_tate_and_liza.pal | 19 - graphics/trainers/palettes/leader_wattson.pal | 19 - graphics/trainers/palettes/leader_winona.pal | 19 - graphics/trainers/palettes/leaf.pal | 19 - graphics/trainers/palettes/leaf_back_pic.pal | 19 - graphics/trainers/palettes/magma_admin.pal | 19 - graphics/trainers/palettes/magma_grunt_f.pal | 19 - graphics/trainers/palettes/magma_grunt_m.pal | 19 - .../trainers/palettes/magma_leader_maxie.pal | 19 - .../{ruby_sapphire_may.pal => may_rs.pal} | 0 graphics/trainers/palettes/ninja_boy.pal | 19 - graphics/trainers/palettes/old_couple.pal | 19 - .../palettes/palace_maven_spenser.pal | 19 - graphics/trainers/palettes/parasol_lady.pal | 19 - graphics/trainers/palettes/picnicker.pal | 19 - .../trainers/palettes/pike_queen_lucy.pal | 19 - graphics/trainers/palettes/pokefan_f.pal | 19 - graphics/trainers/palettes/pokefan_m.pal | 19 - graphics/trainers/palettes/pokemaniac.pal | 19 - .../trainers/palettes/pokemon_breeder_f.pal | 19 - .../trainers/palettes/pokemon_breeder_m.pal | 19 - .../trainers/palettes/pokemon_ranger_f.pal | 19 - .../trainers/palettes/pokemon_ranger_m.pal | 19 - graphics/trainers/palettes/psychic_f.pal | 19 - graphics/trainers/palettes/psychic_m.pal | 19 - .../palettes/pyramid_king_brandon.pal | 19 - graphics/trainers/palettes/red.pal | 19 - graphics/trainers/palettes/red_back_pic.pal | 19 - graphics/trainers/palettes/rich_boy.pal | 19 - graphics/trainers/palettes/ruin_maniac.pal | 19 - .../palettes/running_triathlete_f.pal | 19 - .../palettes/running_triathlete_m.pal | 19 - graphics/trainers/palettes/sailor.pal | 19 - .../trainers/palettes/salon_maiden_anabel.pal | 19 - graphics/trainers/palettes/school_kid_f.pal | 19 - graphics/trainers/palettes/school_kid_m.pal | 19 - graphics/trainers/palettes/sis_and_bro.pal | 19 - graphics/trainers/palettes/sr_and_jr.pal | 19 - graphics/trainers/palettes/swimmer_f.pal | 19 - graphics/trainers/palettes/swimmer_m.pal | 19 - .../palettes/swimming_triathlete_f.pal | 19 - .../palettes/swimming_triathlete_m.pal | 19 - graphics/trainers/palettes/tuber_f.pal | 19 - graphics/trainers/palettes/tuber_m.pal | 19 - graphics/trainers/palettes/twins.pal | 19 - graphics/trainers/palettes/young_couple.pal | 19 - graphics/trainers/palettes/youngster.pal | 19 - src/data/graphics/trainers.h | 386 +++++++++--------- 193 files changed, 193 insertions(+), 1884 deletions(-) rename graphics/trainers/back_pics/{brendan_back_pic.png => brendan.png} (100%) rename graphics/trainers/back_pics/{ruby_sapphire_brendan_back_pic.png => brendan_rs.png} (100%) rename graphics/trainers/back_pics/{leaf_back_pic.png => leaf.png} (100%) rename graphics/trainers/back_pics/{may_back_pic.png => may.png} (100%) rename graphics/trainers/back_pics/{ruby_sapphire_may_back_pic.png => may_rs.png} (100%) rename graphics/trainers/back_pics/{red_back_pic.png => red.png} (100%) rename graphics/trainers/back_pics/{steven_back_pic.png => steven.png} (100%) rename graphics/trainers/back_pics/{wally_back_pic.png => wally.png} (100%) rename graphics/trainers/front_pics/{aqua_admin_f_front_pic.png => aqua_admin_f.png} (100%) rename graphics/trainers/front_pics/{aqua_admin_m_front_pic.png => aqua_admin_m.png} (100%) rename graphics/trainers/front_pics/{aqua_grunt_f_front_pic.png => aqua_grunt_f.png} (100%) rename graphics/trainers/front_pics/{aqua_grunt_m_front_pic.png => aqua_grunt_m.png} (100%) rename graphics/trainers/front_pics/{aqua_leader_archie_front_pic.png => aqua_leader_archie.png} (100%) rename graphics/trainers/front_pics/{arena_tycoon_greta_front_pic.png => arena_tycoon_greta.png} (100%) rename graphics/trainers/front_pics/{aroma_lady_front_pic.png => aroma_lady.png} (100%) rename graphics/trainers/front_pics/{battle_girl_front_pic.png => battle_girl.png} (100%) rename graphics/trainers/front_pics/{beauty_front_pic.png => beauty.png} (100%) rename graphics/trainers/front_pics/{bird_keeper_front_pic.png => bird_keeper.png} (100%) rename graphics/trainers/front_pics/{black_belt_front_pic.png => black_belt.png} (100%) rename graphics/trainers/front_pics/{brendan_front_pic.png => brendan.png} (100%) rename graphics/trainers/front_pics/{ruby_sapphire_brendan_front_pic.png => brendan_rs.png} (100%) rename graphics/trainers/front_pics/{bug_catcher_front_pic.png => bug_catcher.png} (100%) rename graphics/trainers/front_pics/{bug_maniac_front_pic.png => bug_maniac.png} (100%) rename graphics/trainers/front_pics/{camper_front_pic.png => camper.png} (100%) rename graphics/trainers/front_pics/{champion_wallace_front_pic.png => champion_wallace.png} (100%) rename graphics/trainers/front_pics/{collector_front_pic.png => collector.png} (100%) rename graphics/trainers/front_pics/{cooltrainer_f_front_pic.png => cooltrainer_f.png} (100%) rename graphics/trainers/front_pics/{cooltrainer_m_front_pic.png => cooltrainer_m.png} (100%) rename graphics/trainers/front_pics/{cycling_triathlete_f_front_pic.png => cycling_triathlete_f.png} (100%) rename graphics/trainers/front_pics/{cycling_triathlete_m_front_pic.png => cycling_triathlete_m.png} (100%) rename graphics/trainers/front_pics/{dome_ace_tucker_front_pic.png => dome_ace_tucker.png} (100%) rename graphics/trainers/front_pics/{dragon_tamer_front_pic.png => dragon_tamer.png} (100%) rename graphics/trainers/front_pics/{elite_four_drake_front_pic.png => elite_four_drake.png} (100%) rename graphics/trainers/front_pics/{elite_four_glacia_front_pic.png => elite_four_glacia.png} (100%) rename graphics/trainers/front_pics/{elite_four_phoebe_front_pic.png => elite_four_phoebe.png} (100%) rename graphics/trainers/front_pics/{elite_four_sidney_front_pic.png => elite_four_sidney.png} (100%) rename graphics/trainers/front_pics/{expert_f_front_pic.png => expert_f.png} (100%) rename graphics/trainers/front_pics/{expert_m_front_pic.png => expert_m.png} (100%) rename graphics/trainers/front_pics/{factory_head_noland_front_pic.png => factory_head_noland.png} (100%) rename graphics/trainers/front_pics/{fisherman_front_pic.png => fisherman.png} (100%) rename graphics/trainers/front_pics/{gentleman_front_pic.png => gentleman.png} (100%) rename graphics/trainers/front_pics/{guitarist_front_pic.png => guitarist.png} (100%) rename graphics/trainers/front_pics/{hex_maniac_front_pic.png => hex_maniac.png} (100%) rename graphics/trainers/front_pics/{hiker_front_pic.png => hiker.png} (100%) rename graphics/trainers/front_pics/{interviewer_front_pic.png => interviewer.png} (100%) rename graphics/trainers/front_pics/{kindler_front_pic.png => kindler.png} (100%) rename graphics/trainers/front_pics/{lady_front_pic.png => lady.png} (100%) rename graphics/trainers/front_pics/{lass_front_pic.png => lass.png} (100%) rename graphics/trainers/front_pics/{leader_brawly_front_pic.png => leader_brawly.png} (100%) rename graphics/trainers/front_pics/{leader_flannery_front_pic.png => leader_flannery.png} (100%) rename graphics/trainers/front_pics/{leader_juan_front_pic.png => leader_juan.png} (100%) rename graphics/trainers/front_pics/{leader_norman_front_pic.png => leader_norman.png} (100%) rename graphics/trainers/front_pics/{leader_roxanne_front_pic.png => leader_roxanne.png} (100%) rename graphics/trainers/front_pics/{leader_tate_and_liza_front_pic.png => leader_tate_and_liza.png} (100%) rename graphics/trainers/front_pics/{leader_wattson_front_pic.png => leader_wattson.png} (100%) rename graphics/trainers/front_pics/{leader_winona_front_pic.png => leader_winona.png} (100%) rename graphics/trainers/front_pics/{leaf_front_pic.png => leaf.png} (100%) rename graphics/trainers/front_pics/{magma_admin_front_pic.png => magma_admin.png} (100%) rename graphics/trainers/front_pics/{magma_grunt_f_front_pic.png => magma_grunt_f.png} (100%) rename graphics/trainers/front_pics/{magma_grunt_m_front_pic.png => magma_grunt_m.png} (100%) rename graphics/trainers/front_pics/{magma_leader_maxie_front_pic.png => magma_leader_maxie.png} (100%) rename graphics/trainers/front_pics/{may_front_pic.png => may.png} (100%) rename graphics/trainers/front_pics/{ruby_sapphire_may_front_pic.png => may_rs.png} (100%) rename graphics/trainers/front_pics/{ninja_boy_front_pic.png => ninja_boy.png} (100%) rename graphics/trainers/front_pics/{old_couple_front_pic.png => old_couple.png} (100%) rename graphics/trainers/front_pics/{palace_maven_spenser_front_pic.png => palace_maven_spenser.png} (100%) rename graphics/trainers/front_pics/{parasol_lady_front_pic.png => parasol_lady.png} (100%) rename graphics/trainers/front_pics/{picnicker_front_pic.png => picnicker.png} (100%) rename graphics/trainers/front_pics/{pike_queen_lucy_front_pic.png => pike_queen_lucy.png} (100%) rename graphics/trainers/front_pics/{pokefan_f_front_pic.png => pokefan_f.png} (100%) rename graphics/trainers/front_pics/{pokefan_m_front_pic.png => pokefan_m.png} (100%) rename graphics/trainers/front_pics/{pokemaniac_front_pic.png => pokemaniac.png} (100%) rename graphics/trainers/front_pics/{pokemon_breeder_f_front_pic.png => pokemon_breeder_f.png} (100%) rename graphics/trainers/front_pics/{pokemon_breeder_m_front_pic.png => pokemon_breeder_m.png} (100%) rename graphics/trainers/front_pics/{pokemon_ranger_f_front_pic.png => pokemon_ranger_f.png} (100%) rename graphics/trainers/front_pics/{pokemon_ranger_m_front_pic.png => pokemon_ranger_m.png} (100%) rename graphics/trainers/front_pics/{psychic_f_front_pic.png => psychic_f.png} (100%) rename graphics/trainers/front_pics/{psychic_m_front_pic.png => psychic_m.png} (100%) rename graphics/trainers/front_pics/{pyramid_king_brandon_front_pic.png => pyramid_king_brandon.png} (100%) rename graphics/trainers/front_pics/{red_front_pic.png => red.png} (100%) rename graphics/trainers/front_pics/{rich_boy_front_pic.png => rich_boy.png} (100%) rename graphics/trainers/front_pics/{ruin_maniac_front_pic.png => ruin_maniac.png} (100%) rename graphics/trainers/front_pics/{running_triathlete_f_front_pic.png => running_triathlete_f.png} (100%) rename graphics/trainers/front_pics/{running_triathlete_m_front_pic.png => running_triathlete_m.png} (100%) rename graphics/trainers/front_pics/{sailor_front_pic.png => sailor.png} (100%) rename graphics/trainers/front_pics/{salon_maiden_anabel_front_pic.png => salon_maiden_anabel.png} (100%) rename graphics/trainers/front_pics/{school_kid_f_front_pic.png => school_kid_f.png} (100%) rename graphics/trainers/front_pics/{school_kid_m_front_pic.png => school_kid_m.png} (100%) rename graphics/trainers/front_pics/{sis_and_bro_front_pic.png => sis_and_bro.png} (100%) rename graphics/trainers/front_pics/{sr_and_jr_front_pic.png => sr_and_jr.png} (100%) rename graphics/trainers/front_pics/{steven_front_pic.png => steven.png} (100%) rename graphics/trainers/front_pics/{swimmer_f_front_pic.png => swimmer_f.png} (100%) rename graphics/trainers/front_pics/{swimmer_m_front_pic.png => swimmer_m.png} (100%) rename graphics/trainers/front_pics/{swimming_triathlete_f_front_pic.png => swimming_triathlete_f.png} (100%) rename graphics/trainers/front_pics/{swimming_triathlete_m_front_pic.png => swimming_triathlete_m.png} (100%) rename graphics/trainers/front_pics/{tuber_f_front_pic.png => tuber_f.png} (100%) rename graphics/trainers/front_pics/{tuber_m_front_pic.png => tuber_m.png} (100%) rename graphics/trainers/front_pics/{twins_front_pic.png => twins.png} (100%) rename graphics/trainers/front_pics/{wally_front_pic.png => wally.png} (100%) rename graphics/trainers/front_pics/{young_couple_front_pic.png => young_couple.png} (100%) rename graphics/trainers/front_pics/{youngster_front_pic.png => youngster.png} (100%) delete mode 100644 graphics/trainers/palettes/aqua_admin_f.pal delete mode 100644 graphics/trainers/palettes/aqua_admin_m.pal delete mode 100644 graphics/trainers/palettes/aqua_grunt_f.pal delete mode 100644 graphics/trainers/palettes/aqua_grunt_m.pal delete mode 100644 graphics/trainers/palettes/aqua_leader_archie.pal delete mode 100644 graphics/trainers/palettes/arena_tycoon_greta.pal delete mode 100644 graphics/trainers/palettes/aroma_lady.pal delete mode 100644 graphics/trainers/palettes/battle_girl.pal delete mode 100644 graphics/trainers/palettes/beauty.pal delete mode 100644 graphics/trainers/palettes/bird_keeper.pal delete mode 100644 graphics/trainers/palettes/black_belt.pal rename graphics/trainers/palettes/{ruby_sapphire_brendan.pal => brendan_rs.pal} (100%) delete mode 100644 graphics/trainers/palettes/bug_catcher.pal delete mode 100644 graphics/trainers/palettes/bug_maniac.pal delete mode 100644 graphics/trainers/palettes/camper.pal delete mode 100644 graphics/trainers/palettes/champion_wallace.pal delete mode 100644 graphics/trainers/palettes/collector.pal delete mode 100644 graphics/trainers/palettes/cooltrainer_f.pal delete mode 100644 graphics/trainers/palettes/cooltrainer_m.pal delete mode 100644 graphics/trainers/palettes/cycling_triathlete_f.pal delete mode 100644 graphics/trainers/palettes/cycling_triathlete_m.pal delete mode 100644 graphics/trainers/palettes/dome_ace_tucker.pal delete mode 100644 graphics/trainers/palettes/dragon_tamer.pal delete mode 100644 graphics/trainers/palettes/elite_four_drake.pal delete mode 100644 graphics/trainers/palettes/elite_four_glacia.pal delete mode 100644 graphics/trainers/palettes/elite_four_phoebe.pal delete mode 100644 graphics/trainers/palettes/elite_four_sidney.pal delete mode 100644 graphics/trainers/palettes/expert_f.pal delete mode 100644 graphics/trainers/palettes/expert_m.pal delete mode 100644 graphics/trainers/palettes/factory_head_noland.pal delete mode 100644 graphics/trainers/palettes/fisherman.pal delete mode 100644 graphics/trainers/palettes/gentleman.pal delete mode 100644 graphics/trainers/palettes/guitarist.pal delete mode 100644 graphics/trainers/palettes/hex_maniac.pal delete mode 100644 graphics/trainers/palettes/hiker.pal delete mode 100644 graphics/trainers/palettes/interviewer.pal delete mode 100644 graphics/trainers/palettes/kindler.pal delete mode 100644 graphics/trainers/palettes/lady.pal delete mode 100644 graphics/trainers/palettes/lass.pal delete mode 100644 graphics/trainers/palettes/leader_brawly.pal delete mode 100644 graphics/trainers/palettes/leader_flannery.pal delete mode 100644 graphics/trainers/palettes/leader_juan.pal delete mode 100644 graphics/trainers/palettes/leader_norman.pal delete mode 100644 graphics/trainers/palettes/leader_roxanne.pal delete mode 100644 graphics/trainers/palettes/leader_tate_and_liza.pal delete mode 100644 graphics/trainers/palettes/leader_wattson.pal delete mode 100644 graphics/trainers/palettes/leader_winona.pal delete mode 100644 graphics/trainers/palettes/leaf.pal delete mode 100644 graphics/trainers/palettes/leaf_back_pic.pal delete mode 100644 graphics/trainers/palettes/magma_admin.pal delete mode 100644 graphics/trainers/palettes/magma_grunt_f.pal delete mode 100644 graphics/trainers/palettes/magma_grunt_m.pal delete mode 100644 graphics/trainers/palettes/magma_leader_maxie.pal rename graphics/trainers/palettes/{ruby_sapphire_may.pal => may_rs.pal} (100%) delete mode 100644 graphics/trainers/palettes/ninja_boy.pal delete mode 100644 graphics/trainers/palettes/old_couple.pal delete mode 100644 graphics/trainers/palettes/palace_maven_spenser.pal delete mode 100644 graphics/trainers/palettes/parasol_lady.pal delete mode 100644 graphics/trainers/palettes/picnicker.pal delete mode 100644 graphics/trainers/palettes/pike_queen_lucy.pal delete mode 100644 graphics/trainers/palettes/pokefan_f.pal delete mode 100644 graphics/trainers/palettes/pokefan_m.pal delete mode 100644 graphics/trainers/palettes/pokemaniac.pal delete mode 100644 graphics/trainers/palettes/pokemon_breeder_f.pal delete mode 100644 graphics/trainers/palettes/pokemon_breeder_m.pal delete mode 100644 graphics/trainers/palettes/pokemon_ranger_f.pal delete mode 100644 graphics/trainers/palettes/pokemon_ranger_m.pal delete mode 100644 graphics/trainers/palettes/psychic_f.pal delete mode 100644 graphics/trainers/palettes/psychic_m.pal delete mode 100644 graphics/trainers/palettes/pyramid_king_brandon.pal delete mode 100644 graphics/trainers/palettes/red.pal delete mode 100644 graphics/trainers/palettes/red_back_pic.pal delete mode 100644 graphics/trainers/palettes/rich_boy.pal delete mode 100644 graphics/trainers/palettes/ruin_maniac.pal delete mode 100644 graphics/trainers/palettes/running_triathlete_f.pal delete mode 100644 graphics/trainers/palettes/running_triathlete_m.pal delete mode 100644 graphics/trainers/palettes/sailor.pal delete mode 100644 graphics/trainers/palettes/salon_maiden_anabel.pal delete mode 100644 graphics/trainers/palettes/school_kid_f.pal delete mode 100644 graphics/trainers/palettes/school_kid_m.pal delete mode 100644 graphics/trainers/palettes/sis_and_bro.pal delete mode 100644 graphics/trainers/palettes/sr_and_jr.pal delete mode 100644 graphics/trainers/palettes/swimmer_f.pal delete mode 100644 graphics/trainers/palettes/swimmer_m.pal delete mode 100644 graphics/trainers/palettes/swimming_triathlete_f.pal delete mode 100644 graphics/trainers/palettes/swimming_triathlete_m.pal delete mode 100644 graphics/trainers/palettes/tuber_f.pal delete mode 100644 graphics/trainers/palettes/tuber_m.pal delete mode 100644 graphics/trainers/palettes/twins.pal delete mode 100644 graphics/trainers/palettes/young_couple.pal delete mode 100644 graphics/trainers/palettes/youngster.pal diff --git a/graphics/trainers/back_pics/brendan_back_pic.png b/graphics/trainers/back_pics/brendan.png similarity index 100% rename from graphics/trainers/back_pics/brendan_back_pic.png rename to graphics/trainers/back_pics/brendan.png diff --git a/graphics/trainers/back_pics/ruby_sapphire_brendan_back_pic.png b/graphics/trainers/back_pics/brendan_rs.png similarity index 100% rename from graphics/trainers/back_pics/ruby_sapphire_brendan_back_pic.png rename to graphics/trainers/back_pics/brendan_rs.png diff --git a/graphics/trainers/back_pics/leaf_back_pic.png b/graphics/trainers/back_pics/leaf.png similarity index 100% rename from graphics/trainers/back_pics/leaf_back_pic.png rename to graphics/trainers/back_pics/leaf.png diff --git a/graphics/trainers/back_pics/may_back_pic.png b/graphics/trainers/back_pics/may.png similarity index 100% rename from graphics/trainers/back_pics/may_back_pic.png rename to graphics/trainers/back_pics/may.png diff --git a/graphics/trainers/back_pics/ruby_sapphire_may_back_pic.png b/graphics/trainers/back_pics/may_rs.png similarity index 100% rename from graphics/trainers/back_pics/ruby_sapphire_may_back_pic.png rename to graphics/trainers/back_pics/may_rs.png diff --git a/graphics/trainers/back_pics/red_back_pic.png b/graphics/trainers/back_pics/red.png similarity index 100% rename from graphics/trainers/back_pics/red_back_pic.png rename to graphics/trainers/back_pics/red.png diff --git a/graphics/trainers/back_pics/steven_back_pic.png b/graphics/trainers/back_pics/steven.png similarity index 100% rename from graphics/trainers/back_pics/steven_back_pic.png rename to graphics/trainers/back_pics/steven.png diff --git a/graphics/trainers/back_pics/wally_back_pic.png b/graphics/trainers/back_pics/wally.png similarity index 100% rename from graphics/trainers/back_pics/wally_back_pic.png rename to graphics/trainers/back_pics/wally.png diff --git a/graphics/trainers/front_pics/aqua_admin_f_front_pic.png b/graphics/trainers/front_pics/aqua_admin_f.png similarity index 100% rename from graphics/trainers/front_pics/aqua_admin_f_front_pic.png rename to graphics/trainers/front_pics/aqua_admin_f.png diff --git a/graphics/trainers/front_pics/aqua_admin_m_front_pic.png b/graphics/trainers/front_pics/aqua_admin_m.png similarity index 100% rename from graphics/trainers/front_pics/aqua_admin_m_front_pic.png rename to graphics/trainers/front_pics/aqua_admin_m.png diff --git a/graphics/trainers/front_pics/aqua_grunt_f_front_pic.png b/graphics/trainers/front_pics/aqua_grunt_f.png similarity index 100% rename from graphics/trainers/front_pics/aqua_grunt_f_front_pic.png rename to graphics/trainers/front_pics/aqua_grunt_f.png diff --git a/graphics/trainers/front_pics/aqua_grunt_m_front_pic.png b/graphics/trainers/front_pics/aqua_grunt_m.png similarity index 100% rename from graphics/trainers/front_pics/aqua_grunt_m_front_pic.png rename to graphics/trainers/front_pics/aqua_grunt_m.png diff --git a/graphics/trainers/front_pics/aqua_leader_archie_front_pic.png b/graphics/trainers/front_pics/aqua_leader_archie.png similarity index 100% rename from graphics/trainers/front_pics/aqua_leader_archie_front_pic.png rename to graphics/trainers/front_pics/aqua_leader_archie.png diff --git a/graphics/trainers/front_pics/arena_tycoon_greta_front_pic.png b/graphics/trainers/front_pics/arena_tycoon_greta.png similarity index 100% rename from graphics/trainers/front_pics/arena_tycoon_greta_front_pic.png rename to graphics/trainers/front_pics/arena_tycoon_greta.png diff --git a/graphics/trainers/front_pics/aroma_lady_front_pic.png b/graphics/trainers/front_pics/aroma_lady.png similarity index 100% rename from graphics/trainers/front_pics/aroma_lady_front_pic.png rename to graphics/trainers/front_pics/aroma_lady.png diff --git a/graphics/trainers/front_pics/battle_girl_front_pic.png b/graphics/trainers/front_pics/battle_girl.png similarity index 100% rename from graphics/trainers/front_pics/battle_girl_front_pic.png rename to graphics/trainers/front_pics/battle_girl.png diff --git a/graphics/trainers/front_pics/beauty_front_pic.png b/graphics/trainers/front_pics/beauty.png similarity index 100% rename from graphics/trainers/front_pics/beauty_front_pic.png rename to graphics/trainers/front_pics/beauty.png diff --git a/graphics/trainers/front_pics/bird_keeper_front_pic.png b/graphics/trainers/front_pics/bird_keeper.png similarity index 100% rename from graphics/trainers/front_pics/bird_keeper_front_pic.png rename to graphics/trainers/front_pics/bird_keeper.png diff --git a/graphics/trainers/front_pics/black_belt_front_pic.png b/graphics/trainers/front_pics/black_belt.png similarity index 100% rename from graphics/trainers/front_pics/black_belt_front_pic.png rename to graphics/trainers/front_pics/black_belt.png diff --git a/graphics/trainers/front_pics/brendan_front_pic.png b/graphics/trainers/front_pics/brendan.png similarity index 100% rename from graphics/trainers/front_pics/brendan_front_pic.png rename to graphics/trainers/front_pics/brendan.png diff --git a/graphics/trainers/front_pics/ruby_sapphire_brendan_front_pic.png b/graphics/trainers/front_pics/brendan_rs.png similarity index 100% rename from graphics/trainers/front_pics/ruby_sapphire_brendan_front_pic.png rename to graphics/trainers/front_pics/brendan_rs.png diff --git a/graphics/trainers/front_pics/bug_catcher_front_pic.png b/graphics/trainers/front_pics/bug_catcher.png similarity index 100% rename from graphics/trainers/front_pics/bug_catcher_front_pic.png rename to graphics/trainers/front_pics/bug_catcher.png diff --git a/graphics/trainers/front_pics/bug_maniac_front_pic.png b/graphics/trainers/front_pics/bug_maniac.png similarity index 100% rename from graphics/trainers/front_pics/bug_maniac_front_pic.png rename to graphics/trainers/front_pics/bug_maniac.png diff --git a/graphics/trainers/front_pics/camper_front_pic.png b/graphics/trainers/front_pics/camper.png similarity index 100% rename from graphics/trainers/front_pics/camper_front_pic.png rename to graphics/trainers/front_pics/camper.png diff --git a/graphics/trainers/front_pics/champion_wallace_front_pic.png b/graphics/trainers/front_pics/champion_wallace.png similarity index 100% rename from graphics/trainers/front_pics/champion_wallace_front_pic.png rename to graphics/trainers/front_pics/champion_wallace.png diff --git a/graphics/trainers/front_pics/collector_front_pic.png b/graphics/trainers/front_pics/collector.png similarity index 100% rename from graphics/trainers/front_pics/collector_front_pic.png rename to graphics/trainers/front_pics/collector.png diff --git a/graphics/trainers/front_pics/cooltrainer_f_front_pic.png b/graphics/trainers/front_pics/cooltrainer_f.png similarity index 100% rename from graphics/trainers/front_pics/cooltrainer_f_front_pic.png rename to graphics/trainers/front_pics/cooltrainer_f.png diff --git a/graphics/trainers/front_pics/cooltrainer_m_front_pic.png b/graphics/trainers/front_pics/cooltrainer_m.png similarity index 100% rename from graphics/trainers/front_pics/cooltrainer_m_front_pic.png rename to graphics/trainers/front_pics/cooltrainer_m.png diff --git a/graphics/trainers/front_pics/cycling_triathlete_f_front_pic.png b/graphics/trainers/front_pics/cycling_triathlete_f.png similarity index 100% rename from graphics/trainers/front_pics/cycling_triathlete_f_front_pic.png rename to graphics/trainers/front_pics/cycling_triathlete_f.png diff --git a/graphics/trainers/front_pics/cycling_triathlete_m_front_pic.png b/graphics/trainers/front_pics/cycling_triathlete_m.png similarity index 100% rename from graphics/trainers/front_pics/cycling_triathlete_m_front_pic.png rename to graphics/trainers/front_pics/cycling_triathlete_m.png diff --git a/graphics/trainers/front_pics/dome_ace_tucker_front_pic.png b/graphics/trainers/front_pics/dome_ace_tucker.png similarity index 100% rename from graphics/trainers/front_pics/dome_ace_tucker_front_pic.png rename to graphics/trainers/front_pics/dome_ace_tucker.png diff --git a/graphics/trainers/front_pics/dragon_tamer_front_pic.png b/graphics/trainers/front_pics/dragon_tamer.png similarity index 100% rename from graphics/trainers/front_pics/dragon_tamer_front_pic.png rename to graphics/trainers/front_pics/dragon_tamer.png diff --git a/graphics/trainers/front_pics/elite_four_drake_front_pic.png b/graphics/trainers/front_pics/elite_four_drake.png similarity index 100% rename from graphics/trainers/front_pics/elite_four_drake_front_pic.png rename to graphics/trainers/front_pics/elite_four_drake.png diff --git a/graphics/trainers/front_pics/elite_four_glacia_front_pic.png b/graphics/trainers/front_pics/elite_four_glacia.png similarity index 100% rename from graphics/trainers/front_pics/elite_four_glacia_front_pic.png rename to graphics/trainers/front_pics/elite_four_glacia.png diff --git a/graphics/trainers/front_pics/elite_four_phoebe_front_pic.png b/graphics/trainers/front_pics/elite_four_phoebe.png similarity index 100% rename from graphics/trainers/front_pics/elite_four_phoebe_front_pic.png rename to graphics/trainers/front_pics/elite_four_phoebe.png diff --git a/graphics/trainers/front_pics/elite_four_sidney_front_pic.png b/graphics/trainers/front_pics/elite_four_sidney.png similarity index 100% rename from graphics/trainers/front_pics/elite_four_sidney_front_pic.png rename to graphics/trainers/front_pics/elite_four_sidney.png diff --git a/graphics/trainers/front_pics/expert_f_front_pic.png b/graphics/trainers/front_pics/expert_f.png similarity index 100% rename from graphics/trainers/front_pics/expert_f_front_pic.png rename to graphics/trainers/front_pics/expert_f.png diff --git a/graphics/trainers/front_pics/expert_m_front_pic.png b/graphics/trainers/front_pics/expert_m.png similarity index 100% rename from graphics/trainers/front_pics/expert_m_front_pic.png rename to graphics/trainers/front_pics/expert_m.png diff --git a/graphics/trainers/front_pics/factory_head_noland_front_pic.png b/graphics/trainers/front_pics/factory_head_noland.png similarity index 100% rename from graphics/trainers/front_pics/factory_head_noland_front_pic.png rename to graphics/trainers/front_pics/factory_head_noland.png diff --git a/graphics/trainers/front_pics/fisherman_front_pic.png b/graphics/trainers/front_pics/fisherman.png similarity index 100% rename from graphics/trainers/front_pics/fisherman_front_pic.png rename to graphics/trainers/front_pics/fisherman.png diff --git a/graphics/trainers/front_pics/gentleman_front_pic.png b/graphics/trainers/front_pics/gentleman.png similarity index 100% rename from graphics/trainers/front_pics/gentleman_front_pic.png rename to graphics/trainers/front_pics/gentleman.png diff --git a/graphics/trainers/front_pics/guitarist_front_pic.png b/graphics/trainers/front_pics/guitarist.png similarity index 100% rename from graphics/trainers/front_pics/guitarist_front_pic.png rename to graphics/trainers/front_pics/guitarist.png diff --git a/graphics/trainers/front_pics/hex_maniac_front_pic.png b/graphics/trainers/front_pics/hex_maniac.png similarity index 100% rename from graphics/trainers/front_pics/hex_maniac_front_pic.png rename to graphics/trainers/front_pics/hex_maniac.png diff --git a/graphics/trainers/front_pics/hiker_front_pic.png b/graphics/trainers/front_pics/hiker.png similarity index 100% rename from graphics/trainers/front_pics/hiker_front_pic.png rename to graphics/trainers/front_pics/hiker.png diff --git a/graphics/trainers/front_pics/interviewer_front_pic.png b/graphics/trainers/front_pics/interviewer.png similarity index 100% rename from graphics/trainers/front_pics/interviewer_front_pic.png rename to graphics/trainers/front_pics/interviewer.png diff --git a/graphics/trainers/front_pics/kindler_front_pic.png b/graphics/trainers/front_pics/kindler.png similarity index 100% rename from graphics/trainers/front_pics/kindler_front_pic.png rename to graphics/trainers/front_pics/kindler.png diff --git a/graphics/trainers/front_pics/lady_front_pic.png b/graphics/trainers/front_pics/lady.png similarity index 100% rename from graphics/trainers/front_pics/lady_front_pic.png rename to graphics/trainers/front_pics/lady.png diff --git a/graphics/trainers/front_pics/lass_front_pic.png b/graphics/trainers/front_pics/lass.png similarity index 100% rename from graphics/trainers/front_pics/lass_front_pic.png rename to graphics/trainers/front_pics/lass.png diff --git a/graphics/trainers/front_pics/leader_brawly_front_pic.png b/graphics/trainers/front_pics/leader_brawly.png similarity index 100% rename from graphics/trainers/front_pics/leader_brawly_front_pic.png rename to graphics/trainers/front_pics/leader_brawly.png diff --git a/graphics/trainers/front_pics/leader_flannery_front_pic.png b/graphics/trainers/front_pics/leader_flannery.png similarity index 100% rename from graphics/trainers/front_pics/leader_flannery_front_pic.png rename to graphics/trainers/front_pics/leader_flannery.png diff --git a/graphics/trainers/front_pics/leader_juan_front_pic.png b/graphics/trainers/front_pics/leader_juan.png similarity index 100% rename from graphics/trainers/front_pics/leader_juan_front_pic.png rename to graphics/trainers/front_pics/leader_juan.png diff --git a/graphics/trainers/front_pics/leader_norman_front_pic.png b/graphics/trainers/front_pics/leader_norman.png similarity index 100% rename from graphics/trainers/front_pics/leader_norman_front_pic.png rename to graphics/trainers/front_pics/leader_norman.png diff --git a/graphics/trainers/front_pics/leader_roxanne_front_pic.png b/graphics/trainers/front_pics/leader_roxanne.png similarity index 100% rename from graphics/trainers/front_pics/leader_roxanne_front_pic.png rename to graphics/trainers/front_pics/leader_roxanne.png diff --git a/graphics/trainers/front_pics/leader_tate_and_liza_front_pic.png b/graphics/trainers/front_pics/leader_tate_and_liza.png similarity index 100% rename from graphics/trainers/front_pics/leader_tate_and_liza_front_pic.png rename to graphics/trainers/front_pics/leader_tate_and_liza.png diff --git a/graphics/trainers/front_pics/leader_wattson_front_pic.png b/graphics/trainers/front_pics/leader_wattson.png similarity index 100% rename from graphics/trainers/front_pics/leader_wattson_front_pic.png rename to graphics/trainers/front_pics/leader_wattson.png diff --git a/graphics/trainers/front_pics/leader_winona_front_pic.png b/graphics/trainers/front_pics/leader_winona.png similarity index 100% rename from graphics/trainers/front_pics/leader_winona_front_pic.png rename to graphics/trainers/front_pics/leader_winona.png diff --git a/graphics/trainers/front_pics/leaf_front_pic.png b/graphics/trainers/front_pics/leaf.png similarity index 100% rename from graphics/trainers/front_pics/leaf_front_pic.png rename to graphics/trainers/front_pics/leaf.png diff --git a/graphics/trainers/front_pics/magma_admin_front_pic.png b/graphics/trainers/front_pics/magma_admin.png similarity index 100% rename from graphics/trainers/front_pics/magma_admin_front_pic.png rename to graphics/trainers/front_pics/magma_admin.png diff --git a/graphics/trainers/front_pics/magma_grunt_f_front_pic.png b/graphics/trainers/front_pics/magma_grunt_f.png similarity index 100% rename from graphics/trainers/front_pics/magma_grunt_f_front_pic.png rename to graphics/trainers/front_pics/magma_grunt_f.png diff --git a/graphics/trainers/front_pics/magma_grunt_m_front_pic.png b/graphics/trainers/front_pics/magma_grunt_m.png similarity index 100% rename from graphics/trainers/front_pics/magma_grunt_m_front_pic.png rename to graphics/trainers/front_pics/magma_grunt_m.png diff --git a/graphics/trainers/front_pics/magma_leader_maxie_front_pic.png b/graphics/trainers/front_pics/magma_leader_maxie.png similarity index 100% rename from graphics/trainers/front_pics/magma_leader_maxie_front_pic.png rename to graphics/trainers/front_pics/magma_leader_maxie.png diff --git a/graphics/trainers/front_pics/may_front_pic.png b/graphics/trainers/front_pics/may.png similarity index 100% rename from graphics/trainers/front_pics/may_front_pic.png rename to graphics/trainers/front_pics/may.png diff --git a/graphics/trainers/front_pics/ruby_sapphire_may_front_pic.png b/graphics/trainers/front_pics/may_rs.png similarity index 100% rename from graphics/trainers/front_pics/ruby_sapphire_may_front_pic.png rename to graphics/trainers/front_pics/may_rs.png diff --git a/graphics/trainers/front_pics/ninja_boy_front_pic.png b/graphics/trainers/front_pics/ninja_boy.png similarity index 100% rename from graphics/trainers/front_pics/ninja_boy_front_pic.png rename to graphics/trainers/front_pics/ninja_boy.png diff --git a/graphics/trainers/front_pics/old_couple_front_pic.png b/graphics/trainers/front_pics/old_couple.png similarity index 100% rename from graphics/trainers/front_pics/old_couple_front_pic.png rename to graphics/trainers/front_pics/old_couple.png diff --git a/graphics/trainers/front_pics/palace_maven_spenser_front_pic.png b/graphics/trainers/front_pics/palace_maven_spenser.png similarity index 100% rename from graphics/trainers/front_pics/palace_maven_spenser_front_pic.png rename to graphics/trainers/front_pics/palace_maven_spenser.png diff --git a/graphics/trainers/front_pics/parasol_lady_front_pic.png b/graphics/trainers/front_pics/parasol_lady.png similarity index 100% rename from graphics/trainers/front_pics/parasol_lady_front_pic.png rename to graphics/trainers/front_pics/parasol_lady.png diff --git a/graphics/trainers/front_pics/picnicker_front_pic.png b/graphics/trainers/front_pics/picnicker.png similarity index 100% rename from graphics/trainers/front_pics/picnicker_front_pic.png rename to graphics/trainers/front_pics/picnicker.png diff --git a/graphics/trainers/front_pics/pike_queen_lucy_front_pic.png b/graphics/trainers/front_pics/pike_queen_lucy.png similarity index 100% rename from graphics/trainers/front_pics/pike_queen_lucy_front_pic.png rename to graphics/trainers/front_pics/pike_queen_lucy.png diff --git a/graphics/trainers/front_pics/pokefan_f_front_pic.png b/graphics/trainers/front_pics/pokefan_f.png similarity index 100% rename from graphics/trainers/front_pics/pokefan_f_front_pic.png rename to graphics/trainers/front_pics/pokefan_f.png diff --git a/graphics/trainers/front_pics/pokefan_m_front_pic.png b/graphics/trainers/front_pics/pokefan_m.png similarity index 100% rename from graphics/trainers/front_pics/pokefan_m_front_pic.png rename to graphics/trainers/front_pics/pokefan_m.png diff --git a/graphics/trainers/front_pics/pokemaniac_front_pic.png b/graphics/trainers/front_pics/pokemaniac.png similarity index 100% rename from graphics/trainers/front_pics/pokemaniac_front_pic.png rename to graphics/trainers/front_pics/pokemaniac.png diff --git a/graphics/trainers/front_pics/pokemon_breeder_f_front_pic.png b/graphics/trainers/front_pics/pokemon_breeder_f.png similarity index 100% rename from graphics/trainers/front_pics/pokemon_breeder_f_front_pic.png rename to graphics/trainers/front_pics/pokemon_breeder_f.png diff --git a/graphics/trainers/front_pics/pokemon_breeder_m_front_pic.png b/graphics/trainers/front_pics/pokemon_breeder_m.png similarity index 100% rename from graphics/trainers/front_pics/pokemon_breeder_m_front_pic.png rename to graphics/trainers/front_pics/pokemon_breeder_m.png diff --git a/graphics/trainers/front_pics/pokemon_ranger_f_front_pic.png b/graphics/trainers/front_pics/pokemon_ranger_f.png similarity index 100% rename from graphics/trainers/front_pics/pokemon_ranger_f_front_pic.png rename to graphics/trainers/front_pics/pokemon_ranger_f.png diff --git a/graphics/trainers/front_pics/pokemon_ranger_m_front_pic.png b/graphics/trainers/front_pics/pokemon_ranger_m.png similarity index 100% rename from graphics/trainers/front_pics/pokemon_ranger_m_front_pic.png rename to graphics/trainers/front_pics/pokemon_ranger_m.png diff --git a/graphics/trainers/front_pics/psychic_f_front_pic.png b/graphics/trainers/front_pics/psychic_f.png similarity index 100% rename from graphics/trainers/front_pics/psychic_f_front_pic.png rename to graphics/trainers/front_pics/psychic_f.png diff --git a/graphics/trainers/front_pics/psychic_m_front_pic.png b/graphics/trainers/front_pics/psychic_m.png similarity index 100% rename from graphics/trainers/front_pics/psychic_m_front_pic.png rename to graphics/trainers/front_pics/psychic_m.png diff --git a/graphics/trainers/front_pics/pyramid_king_brandon_front_pic.png b/graphics/trainers/front_pics/pyramid_king_brandon.png similarity index 100% rename from graphics/trainers/front_pics/pyramid_king_brandon_front_pic.png rename to graphics/trainers/front_pics/pyramid_king_brandon.png diff --git a/graphics/trainers/front_pics/red_front_pic.png b/graphics/trainers/front_pics/red.png similarity index 100% rename from graphics/trainers/front_pics/red_front_pic.png rename to graphics/trainers/front_pics/red.png diff --git a/graphics/trainers/front_pics/rich_boy_front_pic.png b/graphics/trainers/front_pics/rich_boy.png similarity index 100% rename from graphics/trainers/front_pics/rich_boy_front_pic.png rename to graphics/trainers/front_pics/rich_boy.png diff --git a/graphics/trainers/front_pics/ruin_maniac_front_pic.png b/graphics/trainers/front_pics/ruin_maniac.png similarity index 100% rename from graphics/trainers/front_pics/ruin_maniac_front_pic.png rename to graphics/trainers/front_pics/ruin_maniac.png diff --git a/graphics/trainers/front_pics/running_triathlete_f_front_pic.png b/graphics/trainers/front_pics/running_triathlete_f.png similarity index 100% rename from graphics/trainers/front_pics/running_triathlete_f_front_pic.png rename to graphics/trainers/front_pics/running_triathlete_f.png diff --git a/graphics/trainers/front_pics/running_triathlete_m_front_pic.png b/graphics/trainers/front_pics/running_triathlete_m.png similarity index 100% rename from graphics/trainers/front_pics/running_triathlete_m_front_pic.png rename to graphics/trainers/front_pics/running_triathlete_m.png diff --git a/graphics/trainers/front_pics/sailor_front_pic.png b/graphics/trainers/front_pics/sailor.png similarity index 100% rename from graphics/trainers/front_pics/sailor_front_pic.png rename to graphics/trainers/front_pics/sailor.png diff --git a/graphics/trainers/front_pics/salon_maiden_anabel_front_pic.png b/graphics/trainers/front_pics/salon_maiden_anabel.png similarity index 100% rename from graphics/trainers/front_pics/salon_maiden_anabel_front_pic.png rename to graphics/trainers/front_pics/salon_maiden_anabel.png diff --git a/graphics/trainers/front_pics/school_kid_f_front_pic.png b/graphics/trainers/front_pics/school_kid_f.png similarity index 100% rename from graphics/trainers/front_pics/school_kid_f_front_pic.png rename to graphics/trainers/front_pics/school_kid_f.png diff --git a/graphics/trainers/front_pics/school_kid_m_front_pic.png b/graphics/trainers/front_pics/school_kid_m.png similarity index 100% rename from graphics/trainers/front_pics/school_kid_m_front_pic.png rename to graphics/trainers/front_pics/school_kid_m.png diff --git a/graphics/trainers/front_pics/sis_and_bro_front_pic.png b/graphics/trainers/front_pics/sis_and_bro.png similarity index 100% rename from graphics/trainers/front_pics/sis_and_bro_front_pic.png rename to graphics/trainers/front_pics/sis_and_bro.png diff --git a/graphics/trainers/front_pics/sr_and_jr_front_pic.png b/graphics/trainers/front_pics/sr_and_jr.png similarity index 100% rename from graphics/trainers/front_pics/sr_and_jr_front_pic.png rename to graphics/trainers/front_pics/sr_and_jr.png diff --git a/graphics/trainers/front_pics/steven_front_pic.png b/graphics/trainers/front_pics/steven.png similarity index 100% rename from graphics/trainers/front_pics/steven_front_pic.png rename to graphics/trainers/front_pics/steven.png diff --git a/graphics/trainers/front_pics/swimmer_f_front_pic.png b/graphics/trainers/front_pics/swimmer_f.png similarity index 100% rename from graphics/trainers/front_pics/swimmer_f_front_pic.png rename to graphics/trainers/front_pics/swimmer_f.png diff --git a/graphics/trainers/front_pics/swimmer_m_front_pic.png b/graphics/trainers/front_pics/swimmer_m.png similarity index 100% rename from graphics/trainers/front_pics/swimmer_m_front_pic.png rename to graphics/trainers/front_pics/swimmer_m.png diff --git a/graphics/trainers/front_pics/swimming_triathlete_f_front_pic.png b/graphics/trainers/front_pics/swimming_triathlete_f.png similarity index 100% rename from graphics/trainers/front_pics/swimming_triathlete_f_front_pic.png rename to graphics/trainers/front_pics/swimming_triathlete_f.png diff --git a/graphics/trainers/front_pics/swimming_triathlete_m_front_pic.png b/graphics/trainers/front_pics/swimming_triathlete_m.png similarity index 100% rename from graphics/trainers/front_pics/swimming_triathlete_m_front_pic.png rename to graphics/trainers/front_pics/swimming_triathlete_m.png diff --git a/graphics/trainers/front_pics/tuber_f_front_pic.png b/graphics/trainers/front_pics/tuber_f.png similarity index 100% rename from graphics/trainers/front_pics/tuber_f_front_pic.png rename to graphics/trainers/front_pics/tuber_f.png diff --git a/graphics/trainers/front_pics/tuber_m_front_pic.png b/graphics/trainers/front_pics/tuber_m.png similarity index 100% rename from graphics/trainers/front_pics/tuber_m_front_pic.png rename to graphics/trainers/front_pics/tuber_m.png diff --git a/graphics/trainers/front_pics/twins_front_pic.png b/graphics/trainers/front_pics/twins.png similarity index 100% rename from graphics/trainers/front_pics/twins_front_pic.png rename to graphics/trainers/front_pics/twins.png diff --git a/graphics/trainers/front_pics/wally_front_pic.png b/graphics/trainers/front_pics/wally.png similarity index 100% rename from graphics/trainers/front_pics/wally_front_pic.png rename to graphics/trainers/front_pics/wally.png diff --git a/graphics/trainers/front_pics/young_couple_front_pic.png b/graphics/trainers/front_pics/young_couple.png similarity index 100% rename from graphics/trainers/front_pics/young_couple_front_pic.png rename to graphics/trainers/front_pics/young_couple.png diff --git a/graphics/trainers/front_pics/youngster_front_pic.png b/graphics/trainers/front_pics/youngster.png similarity index 100% rename from graphics/trainers/front_pics/youngster_front_pic.png rename to graphics/trainers/front_pics/youngster.png diff --git a/graphics/trainers/palettes/aqua_admin_f.pal b/graphics/trainers/palettes/aqua_admin_f.pal deleted file mode 100644 index 4bad68770506..000000000000 --- a/graphics/trainers/palettes/aqua_admin_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 131 41 -189 156 90 -238 98 41 -180 65 41 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/aqua_admin_m.pal b/graphics/trainers/palettes/aqua_admin_m.pal deleted file mode 100644 index 2a7a46d4629b..000000000000 --- a/graphics/trainers/palettes/aqua_admin_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 131 41 -189 156 90 -222 82 24 -164 49 24 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/aqua_grunt_f.pal b/graphics/trainers/palettes/aqua_grunt_f.pal deleted file mode 100644 index 4563eba48e55..000000000000 --- a/graphics/trainers/palettes/aqua_grunt_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -164 74 65 -189 156 90 -255 106 98 -205 82 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/aqua_grunt_m.pal b/graphics/trainers/palettes/aqua_grunt_m.pal deleted file mode 100644 index c2b28ead910c..000000000000 --- a/graphics/trainers/palettes/aqua_grunt_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 164 197 -189 156 90 -255 115 148 -213 82 115 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/aqua_leader_archie.pal b/graphics/trainers/palettes/aqua_leader_archie.pal deleted file mode 100644 index a778ea6bb6ce..000000000000 --- a/graphics/trainers/palettes/aqua_leader_archie.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -131 156 180 -106 123 148 -82 90 115 -57 65 98 -213 213 222 -82 90 156 -24 32 49 -148 156 222 -106 115 213 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/arena_tycoon_greta.pal b/graphics/trainers/palettes/arena_tycoon_greta.pal deleted file mode 100644 index 60c45e8e9932..000000000000 --- a/graphics/trainers/palettes/arena_tycoon_greta.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -255 230 106 -213 189 90 -213 222 230 -65 82 123 -189 156 90 -255 115 148 -213 82 115 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/aroma_lady.pal b/graphics/trainers/palettes/aroma_lady.pal deleted file mode 100644 index eb9f3dfd43ce..000000000000 --- a/graphics/trainers/palettes/aroma_lady.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 213 172 -238 197 148 -205 156 115 -115 82 65 -238 230 255 -205 197 213 -156 164 205 -106 98 148 -74 222 148 -172 115 41 -115 65 24 -238 90 131 -189 65 90 -106 255 156 -0 0 0 diff --git a/graphics/trainers/palettes/battle_girl.pal b/graphics/trainers/palettes/battle_girl.pal deleted file mode 100644 index 7f172b169a33..000000000000 --- a/graphics/trainers/palettes/battle_girl.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -255 164 82 -230 106 0 -197 65 65 -156 106 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/beauty.pal b/graphics/trainers/palettes/beauty.pal deleted file mode 100644 index ab549df20ef8..000000000000 --- a/graphics/trainers/palettes/beauty.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 172 131 -205 131 115 -123 82 74 -148 131 139 -255 205 106 -213 172 74 -164 123 82 -115 90 115 -74 49 74 -255 82 57 -180 82 74 -131 74 65 -255 255 255 -0 0 24 diff --git a/graphics/trainers/palettes/bird_keeper.pal b/graphics/trainers/palettes/bird_keeper.pal deleted file mode 100644 index 87194c84a1e9..000000000000 --- a/graphics/trainers/palettes/bird_keeper.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -164 180 197 -131 139 156 -90 98 115 -57 65 82 -213 213 222 -131 16 41 -24 32 49 -213 82 90 -180 41 57 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/black_belt.pal b/graphics/trainers/palettes/black_belt.pal deleted file mode 100644 index 869e5d8df48b..000000000000 --- a/graphics/trainers/palettes/black_belt.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -246 205 189 -222 172 148 -172 131 106 -90 65 49 -148 131 123 -106 90 82 -82 90 115 -49 57 82 -205 189 189 -189 164 164 -156 139 139 -255 98 90 -197 65 65 -246 230 230 -0 0 0 diff --git a/graphics/trainers/palettes/ruby_sapphire_brendan.pal b/graphics/trainers/palettes/brendan_rs.pal similarity index 100% rename from graphics/trainers/palettes/ruby_sapphire_brendan.pal rename to graphics/trainers/palettes/brendan_rs.pal diff --git a/graphics/trainers/palettes/bug_catcher.pal b/graphics/trainers/palettes/bug_catcher.pal deleted file mode 100644 index c68f5669022d..000000000000 --- a/graphics/trainers/palettes/bug_catcher.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 180 148 -213 148 115 -123 90 82 -222 222 164 -197 197 139 -156 139 74 -41 57 98 -197 197 238 -246 238 213 -189 49 57 -98 164 222 -49 123 156 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/bug_maniac.pal b/graphics/trainers/palettes/bug_maniac.pal deleted file mode 100644 index 2aa32917922e..000000000000 --- a/graphics/trainers/palettes/bug_maniac.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -49 123 156 -49 65 131 -65 74 74 -222 222 164 -197 197 139 -205 213 213 -156 139 74 -98 164 222 -106 115 115 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/camper.pal b/graphics/trainers/palettes/camper.pal deleted file mode 100644 index e5c224fd2718..000000000000 --- a/graphics/trainers/palettes/camper.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -230 189 156 -205 156 115 -115 82 65 -131 213 205 -82 164 148 -180 189 222 -57 90 74 -24 49 90 -98 115 230 -57 82 131 -255 98 41 -189 74 41 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/champion_wallace.pal b/graphics/trainers/palettes/champion_wallace.pal deleted file mode 100644 index eaaed070f6b0..000000000000 --- a/graphics/trainers/palettes/champion_wallace.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -222 180 148 -189 139 106 -98 57 65 -189 131 255 -148 106 172 -115 131 255 -82 106 180 -197 197 213 -57 74 115 -139 139 164 -57 41 57 -98 57 98 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/collector.pal b/graphics/trainers/palettes/collector.pal deleted file mode 100644 index d4d9221e2a34..000000000000 --- a/graphics/trainers/palettes/collector.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 180 148 -197 139 115 -123 90 82 -106 139 189 -65 98 148 -32 74 123 -255 98 90 -197 65 65 -213 222 230 -131 74 65 -115 123 131 -164 172 180 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/cooltrainer_f.pal b/graphics/trainers/palettes/cooltrainer_f.pal deleted file mode 100644 index 292d0fc7818d..000000000000 --- a/graphics/trainers/palettes/cooltrainer_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -238 197 156 -205 156 115 -115 82 65 -238 156 115 -205 90 74 -0 189 222 -123 41 24 -180 230 139 -139 180 57 -74 90 32 -255 246 189 -213 205 131 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/cooltrainer_m.pal b/graphics/trainers/palettes/cooltrainer_m.pal deleted file mode 100644 index 52a32e925d2f..000000000000 --- a/graphics/trainers/palettes/cooltrainer_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -246 205 156 -205 156 115 -115 82 65 -238 156 115 -230 98 82 -180 90 74 -131 49 32 -57 90 41 -164 180 106 -98 123 57 -255 246 189 -213 205 131 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/cycling_triathlete_f.pal b/graphics/trainers/palettes/cycling_triathlete_f.pal deleted file mode 100644 index b72bb3011f3c..000000000000 --- a/graphics/trainers/palettes/cycling_triathlete_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -57 41 57 -57 74 106 -131 131 156 -139 156 238 -115 131 205 -98 106 172 -205 197 255 -230 90 65 -189 74 41 -139 74 82 -255 255 255 -0 0 24 diff --git a/graphics/trainers/palettes/cycling_triathlete_m.pal b/graphics/trainers/palettes/cycling_triathlete_m.pal deleted file mode 100644 index 9255a4a94a4b..000000000000 --- a/graphics/trainers/palettes/cycling_triathlete_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -238 189 139 -189 148 115 -139 106 82 -57 41 57 -115 90 106 -156 131 156 -156 213 255 -106 164 222 -82 131 197 -205 197 255 -230 90 65 -189 74 41 -139 74 82 -255 255 255 -0 0 24 diff --git a/graphics/trainers/palettes/dome_ace_tucker.pal b/graphics/trainers/palettes/dome_ace_tucker.pal deleted file mode 100644 index 33bb1aa68c25..000000000000 --- a/graphics/trainers/palettes/dome_ace_tucker.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -246 148 230 -230 115 213 -189 90 172 -139 74 115 -213 205 246 -230 213 106 -156 148 197 -238 238 139 -213 180 98 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/dragon_tamer.pal b/graphics/trainers/palettes/dragon_tamer.pal deleted file mode 100644 index 545c55b74b83..000000000000 --- a/graphics/trainers/palettes/dragon_tamer.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -74 57 49 -164 57 246 -123 49 172 -131 139 148 -255 98 90 -197 65 65 -213 222 230 -74 74 65 -255 205 106 -213 172 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/elite_four_drake.pal b/graphics/trainers/palettes/elite_four_drake.pal deleted file mode 100644 index 6ab0bae73944..000000000000 --- a/graphics/trainers/palettes/elite_four_drake.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -222 172 148 -164 131 106 -98 57 65 -139 131 164 -106 98 123 -41 49 57 -57 65 82 -197 197 213 -255 222 106 -189 156 90 -106 131 238 -65 106 172 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/elite_four_glacia.pal b/graphics/trainers/palettes/elite_four_glacia.pal deleted file mode 100644 index 75b5eb108434..000000000000 --- a/graphics/trainers/palettes/elite_four_glacia.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -115 82 65 -148 148 164 -148 90 164 -115 65 123 -82 41 82 -255 255 164 -213 197 90 -156 148 90 -222 230 238 -189 197 205 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/elite_four_phoebe.pal b/graphics/trainers/palettes/elite_four_phoebe.pal deleted file mode 100644 index 8c07c0d5bfe3..000000000000 --- a/graphics/trainers/palettes/elite_four_phoebe.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -115 82 65 -57 131 255 -32 106 230 -16 82 205 -41 49 123 -164 205 255 -115 98 106 -74 57 65 -255 82 156 -197 65 90 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/elite_four_sidney.pal b/graphics/trainers/palettes/elite_four_sidney.pal deleted file mode 100644 index d778e0ed6ddd..000000000000 --- a/graphics/trainers/palettes/elite_four_sidney.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -222 180 148 -189 139 106 -98 57 65 -131 106 74 -106 98 123 -41 49 57 -57 65 82 -197 197 213 -238 213 139 -197 164 106 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/expert_f.pal b/graphics/trainers/palettes/expert_f.pal deleted file mode 100644 index 2fa5f52020ea..000000000000 --- a/graphics/trainers/palettes/expert_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 180 172 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -139 139 131 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/expert_m.pal b/graphics/trainers/palettes/expert_m.pal deleted file mode 100644 index 2fa5f52020ea..000000000000 --- a/graphics/trainers/palettes/expert_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 180 172 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -139 139 131 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/factory_head_noland.pal b/graphics/trainers/palettes/factory_head_noland.pal deleted file mode 100644 index 03bce8c770a4..000000000000 --- a/graphics/trainers/palettes/factory_head_noland.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -172 172 189 -131 131 164 -98 98 123 -65 65 90 -222 213 246 -238 213 106 -246 131 123 -213 90 90 -180 57 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/fisherman.pal b/graphics/trainers/palettes/fisherman.pal deleted file mode 100644 index 3c18e8f1f19d..000000000000 --- a/graphics/trainers/palettes/fisherman.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 213 189 -222 172 148 -180 131 115 -82 57 57 -123 98 106 -82 82 123 -213 172 82 -180 139 82 -205 205 222 -123 82 49 -49 49 74 -246 123 49 -189 106 49 -238 238 255 -0 0 24 diff --git a/graphics/trainers/palettes/gentleman.pal b/graphics/trainers/palettes/gentleman.pal deleted file mode 100644 index ef021d02681a..000000000000 --- a/graphics/trainers/palettes/gentleman.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -180 148 115 -148 115 82 -123 90 57 -65 49 41 -255 238 156 -213 213 205 -180 180 172 -90 106 172 -57 74 123 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/guitarist.pal b/graphics/trainers/palettes/guitarist.pal deleted file mode 100644 index 74e59e81993c..000000000000 --- a/graphics/trainers/palettes/guitarist.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -172 172 164 -139 131 131 -106 98 98 -65 57 57 -255 238 156 -255 197 90 -205 180 148 -255 98 90 -189 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/hex_maniac.pal b/graphics/trainers/palettes/hex_maniac.pal deleted file mode 100644 index 549d7fac938b..000000000000 --- a/graphics/trainers/palettes/hex_maniac.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -164 123 156 -139 90 131 -106 65 106 -74 41 74 -213 222 230 -189 205 213 -205 57 82 -115 41 65 -180 49 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/hiker.pal b/graphics/trainers/palettes/hiker.pal deleted file mode 100644 index cb8fce7f61cf..000000000000 --- a/graphics/trainers/palettes/hiker.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -222 164 148 -205 131 115 -74 65 57 -123 189 90 -115 148 90 -213 180 98 -172 148 98 -205 205 222 -148 148 148 -123 115 74 -230 98 90 -164 74 74 -255 255 255 -0 0 24 diff --git a/graphics/trainers/palettes/interviewer.pal b/graphics/trainers/palettes/interviewer.pal deleted file mode 100644 index 61ace1935d0c..000000000000 --- a/graphics/trainers/palettes/interviewer.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -148 148 172 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -98 197 255 -90 156 189 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/kindler.pal b/graphics/trainers/palettes/kindler.pal deleted file mode 100644 index af6adf7e876e..000000000000 --- a/graphics/trainers/palettes/kindler.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -115 82 65 -246 246 230 -222 222 189 -180 180 139 -123 115 74 -172 213 246 -115 180 205 -57 123 139 -255 82 57 -255 156 90 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/lady.pal b/graphics/trainers/palettes/lady.pal deleted file mode 100644 index b708731111ad..000000000000 --- a/graphics/trainers/palettes/lady.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 222 -238 180 180 -156 123 106 -172 106 74 -82 82 32 -213 222 230 -255 230 106 -213 172 90 -222 98 123 -148 164 180 -180 238 106 -148 213 82 -123 189 65 -255 255 255 -0 0 24 diff --git a/graphics/trainers/palettes/lass.pal b/graphics/trainers/palettes/lass.pal deleted file mode 100644 index 89e78d683fdc..000000000000 --- a/graphics/trainers/palettes/lass.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -222 148 115 -123 90 82 -164 172 197 -90 98 148 -49 57 82 -41 57 98 -222 230 238 -255 197 90 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_brawly.pal b/graphics/trainers/palettes/leader_brawly.pal deleted file mode 100644 index 5a5a482f2326..000000000000 --- a/graphics/trainers/palettes/leader_brawly.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -49 49 74 -213 213 222 -255 164 197 -115 115 115 -255 139 65 -213 98 24 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_flannery.pal b/graphics/trainers/palettes/leader_flannery.pal deleted file mode 100644 index 20f2f8579968..000000000000 --- a/graphics/trainers/palettes/leader_flannery.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 197 230 -90 156 213 -65 115 164 -49 49 74 -213 213 222 -131 74 16 -115 115 115 -255 139 65 -197 98 32 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_juan.pal b/graphics/trainers/palettes/leader_juan.pal deleted file mode 100644 index 96467bdc373d..000000000000 --- a/graphics/trainers/palettes/leader_juan.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -222 180 148 -180 131 98 -123 90 82 -213 115 222 -148 65 180 -106 148 255 -82 106 189 -74 74 148 -164 180 189 -98 115 123 -98 49 90 -213 213 222 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_norman.pal b/graphics/trainers/palettes/leader_norman.pal deleted file mode 100644 index e53c16837929..000000000000 --- a/graphics/trainers/palettes/leader_norman.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 197 230 -139 156 172 -74 98 123 -49 65 82 -213 213 222 -131 16 41 -115 115 115 -213 82 90 -180 41 57 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_roxanne.pal b/graphics/trainers/palettes/leader_roxanne.pal deleted file mode 100644 index c2b28ead910c..000000000000 --- a/graphics/trainers/palettes/leader_roxanne.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 164 197 -189 156 90 -255 115 148 -213 82 115 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_tate_and_liza.pal b/graphics/trainers/palettes/leader_tate_and_liza.pal deleted file mode 100644 index ab64e9bea17c..000000000000 --- a/graphics/trainers/palettes/leader_tate_and_liza.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 172 65 -255 222 205 -238 180 148 -180 131 106 -106 74 74 -189 189 197 -123 123 131 -74 82 98 -41 49 65 -255 98 90 -164 49 57 -255 197 90 -106 189 255 -90 139 197 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_wattson.pal b/graphics/trainers/palettes/leader_wattson.pal deleted file mode 100644 index c8a4e142084f..000000000000 --- a/graphics/trainers/palettes/leader_wattson.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -123 90 82 -164 139 90 -131 106 74 -139 131 106 -82 65 74 -213 213 222 -255 197 90 -189 156 90 -57 41 49 -222 115 131 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leader_winona.pal b/graphics/trainers/palettes/leader_winona.pal deleted file mode 100644 index 62783523b2ff..000000000000 --- a/graphics/trainers/palettes/leader_winona.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -172 189 213 -139 156 205 -74 98 148 -49 65 82 -205 213 222 -115 57 123 -255 197 90 -189 123 222 -148 90 172 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leaf.pal b/graphics/trainers/palettes/leaf.pal deleted file mode 100644 index 30e2cdde0557..000000000000 --- a/graphics/trainers/palettes/leaf.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 180 -230 189 156 -205 148 115 -123 90 82 -123 189 222 -82 139 180 -49 106 139 -24 41 82 -213 213 222 -255 197 90 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/leaf_back_pic.pal b/graphics/trainers/palettes/leaf_back_pic.pal deleted file mode 100644 index 27436be9202f..000000000000 --- a/graphics/trainers/palettes/leaf_back_pic.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -172 123 65 -255 197 148 -222 148 115 -123 65 65 -65 65 213 -57 57 123 -115 164 197 -106 41 41 -238 238 255 -180 180 213 -255 106 74 -197 57 57 -255 222 90 -189 156 57 -0 0 0 diff --git a/graphics/trainers/palettes/magma_admin.pal b/graphics/trainers/palettes/magma_admin.pal deleted file mode 100644 index a987cdbc1499..000000000000 --- a/graphics/trainers/palettes/magma_admin.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -123 123 123 -90 90 90 -82 98 148 -57 57 65 -65 74 115 -139 49 65 -189 189 180 -222 82 98 -189 57 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/magma_grunt_f.pal b/graphics/trainers/palettes/magma_grunt_f.pal deleted file mode 100644 index a987cdbc1499..000000000000 --- a/graphics/trainers/palettes/magma_grunt_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -123 123 123 -90 90 90 -82 98 148 -57 57 65 -65 74 115 -139 49 65 -189 189 180 -222 82 98 -189 57 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/magma_grunt_m.pal b/graphics/trainers/palettes/magma_grunt_m.pal deleted file mode 100644 index a987cdbc1499..000000000000 --- a/graphics/trainers/palettes/magma_grunt_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -123 123 123 -90 90 90 -82 98 148 -57 57 65 -65 74 115 -139 49 65 -189 189 180 -222 82 98 -189 57 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/magma_leader_maxie.pal b/graphics/trainers/palettes/magma_leader_maxie.pal deleted file mode 100644 index 151bf6d5b695..000000000000 --- a/graphics/trainers/palettes/magma_leader_maxie.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -164 180 197 -115 123 139 -74 82 98 -49 57 82 -213 213 222 -131 16 41 -24 32 49 -213 82 90 -180 41 57 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/ruby_sapphire_may.pal b/graphics/trainers/palettes/may_rs.pal similarity index 100% rename from graphics/trainers/palettes/ruby_sapphire_may.pal rename to graphics/trainers/palettes/may_rs.pal diff --git a/graphics/trainers/palettes/ninja_boy.pal b/graphics/trainers/palettes/ninja_boy.pal deleted file mode 100644 index 524d3f4ba9d1..000000000000 --- a/graphics/trainers/palettes/ninja_boy.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 180 148 -213 148 115 -123 90 82 -164 180 197 -131 139 156 -82 98 115 -49 57 82 -213 213 222 -131 16 41 -255 172 32 -213 82 90 -180 41 57 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/old_couple.pal b/graphics/trainers/palettes/old_couple.pal deleted file mode 100644 index 2fa5f52020ea..000000000000 --- a/graphics/trainers/palettes/old_couple.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 180 172 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -139 139 131 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/palace_maven_spenser.pal b/graphics/trainers/palettes/palace_maven_spenser.pal deleted file mode 100644 index 40a634974052..000000000000 --- a/graphics/trainers/palettes/palace_maven_spenser.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -230 205 156 -189 164 115 -164 131 82 -106 74 74 -172 172 213 -123 131 189 -90 98 148 -57 65 90 -222 213 246 -238 213 106 -246 230 180 -230 115 74 -222 180 98 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/parasol_lady.pal b/graphics/trainers/palettes/parasol_lady.pal deleted file mode 100644 index dc5c6f67fd38..000000000000 --- a/graphics/trainers/palettes/parasol_lady.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -123 82 65 -90 131 189 -65 90 139 -41 65 98 -255 98 90 -197 65 65 -255 156 106 -131 74 65 -255 205 106 -213 172 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/picnicker.pal b/graphics/trainers/palettes/picnicker.pal deleted file mode 100644 index acd90e943651..000000000000 --- a/graphics/trainers/palettes/picnicker.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -246 205 156 -205 156 115 -115 82 65 -131 213 205 -82 164 148 -180 189 222 -57 90 74 -24 49 90 -98 115 230 -57 82 131 -255 98 41 -189 74 41 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pike_queen_lucy.pal b/graphics/trainers/palettes/pike_queen_lucy.pal deleted file mode 100644 index fd3b46b8b34a..000000000000 --- a/graphics/trainers/palettes/pike_queen_lucy.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -205 123 213 -148 90 148 -115 57 106 -57 57 57 -213 222 230 -172 65 65 -255 197 90 -115 106 123 -213 82 115 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokefan_f.pal b/graphics/trainers/palettes/pokefan_f.pal deleted file mode 100644 index 09728f0052a1..000000000000 --- a/graphics/trainers/palettes/pokefan_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 172 189 -65 123 180 -255 0 255 -32 57 82 -197 205 213 -180 139 90 -131 90 41 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokefan_m.pal b/graphics/trainers/palettes/pokefan_m.pal deleted file mode 100644 index 1d1f48875068..000000000000 --- a/graphics/trainers/palettes/pokefan_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -222 189 148 -197 156 115 -156 123 82 -49 57 49 -230 90 41 -131 172 222 -172 49 32 -82 123 172 -255 238 74 -213 189 41 -205 205 213 -98 98 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokemaniac.pal b/graphics/trainers/palettes/pokemaniac.pal deleted file mode 100644 index 3ede03b140bd..000000000000 --- a/graphics/trainers/palettes/pokemaniac.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -246 205 156 -205 156 115 -115 82 65 -246 189 115 -213 123 74 -180 82 74 -139 57 41 -74 74 49 -255 230 57 -98 123 106 -230 82 24 -213 205 230 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokemon_breeder_f.pal b/graphics/trainers/palettes/pokemon_breeder_f.pal deleted file mode 100644 index b15f5db8abf1..000000000000 --- a/graphics/trainers/palettes/pokemon_breeder_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -255 98 90 -164 49 65 -255 148 131 -49 49 74 -213 222 230 -205 74 74 -115 148 197 -49 74 123 -57 115 164 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokemon_breeder_m.pal b/graphics/trainers/palettes/pokemon_breeder_m.pal deleted file mode 100644 index 6551f8482229..000000000000 --- a/graphics/trainers/palettes/pokemon_breeder_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -131 90 74 -255 98 90 -156 65 74 -255 148 131 -49 49 74 -213 222 230 -205 74 74 -115 148 197 -49 74 123 -57 115 164 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokemon_ranger_f.pal b/graphics/trainers/palettes/pokemon_ranger_f.pal deleted file mode 100644 index 93220f5cbf6e..000000000000 --- a/graphics/trainers/palettes/pokemon_ranger_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -131 90 65 -82 49 49 -131 139 156 -82 90 115 -49 57 82 -213 213 222 -255 205 65 -255 131 74 -205 98 74 -156 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pokemon_ranger_m.pal b/graphics/trainers/palettes/pokemon_ranger_m.pal deleted file mode 100644 index 2f16ca0cb926..000000000000 --- a/graphics/trainers/palettes/pokemon_ranger_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -139 106 82 -82 49 49 -131 139 156 -90 98 115 -49 57 82 -213 213 222 -255 205 65 -238 139 82 -197 82 74 -115 57 49 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/psychic_f.pal b/graphics/trainers/palettes/psychic_f.pal deleted file mode 100644 index 232cfd7550f1..000000000000 --- a/graphics/trainers/palettes/psychic_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -246 205 156 -205 156 115 -115 82 65 -98 123 180 -32 98 131 -255 0 246 -41 57 90 -213 131 255 -156 115 180 -115 82 148 -246 139 90 -197 90 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/psychic_m.pal b/graphics/trainers/palettes/psychic_m.pal deleted file mode 100644 index 0ddd2894bf68..000000000000 --- a/graphics/trainers/palettes/psychic_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -230 189 148 -205 156 115 -115 82 65 -98 123 180 -32 98 131 -0 255 0 -41 57 90 -213 131 255 -131 106 172 -90 74 131 -246 139 90 -197 90 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/pyramid_king_brandon.pal b/graphics/trainers/palettes/pyramid_king_brandon.pal deleted file mode 100644 index 77b5483b8816..000000000000 --- a/graphics/trainers/palettes/pyramid_king_brandon.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -164 213 90 -123 172 65 -82 115 41 -57 82 41 -213 205 213 -172 123 90 -139 139 123 -131 98 65 -213 106 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/red.pal b/graphics/trainers/palettes/red.pal deleted file mode 100644 index 30e2cdde0557..000000000000 --- a/graphics/trainers/palettes/red.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 180 -230 189 156 -205 148 115 -123 90 82 -123 189 222 -82 139 180 -49 106 139 -24 41 82 -213 213 222 -255 197 90 -189 156 90 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/red_back_pic.pal b/graphics/trainers/palettes/red_back_pic.pal deleted file mode 100644 index 3097a6556d93..000000000000 --- a/graphics/trainers/palettes/red_back_pic.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -131 123 164 -172 123 65 -255 197 148 -222 148 115 -123 65 65 -65 65 213 -57 57 123 -115 164 197 -106 41 41 -238 238 255 -180 180 213 -255 106 74 -197 57 57 -255 222 90 -189 156 57 -0 0 0 diff --git a/graphics/trainers/palettes/rich_boy.pal b/graphics/trainers/palettes/rich_boy.pal deleted file mode 100644 index 1ebb77204458..000000000000 --- a/graphics/trainers/palettes/rich_boy.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -213 222 230 -255 230 98 -222 180 90 -156 123 115 -115 82 90 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/ruin_maniac.pal b/graphics/trainers/palettes/ruin_maniac.pal deleted file mode 100644 index bbc342a06aad..000000000000 --- a/graphics/trainers/palettes/ruin_maniac.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -255 238 106 -246 246 230 -222 222 189 -180 180 139 -115 106 65 -222 213 246 -115 131 205 -222 189 8 -213 115 139 -172 74 90 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/running_triathlete_f.pal b/graphics/trainers/palettes/running_triathlete_f.pal deleted file mode 100644 index 671c1593f097..000000000000 --- a/graphics/trainers/palettes/running_triathlete_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -180 139 90 -139 65 65 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/running_triathlete_m.pal b/graphics/trainers/palettes/running_triathlete_m.pal deleted file mode 100644 index 13a56a55662d..000000000000 --- a/graphics/trainers/palettes/running_triathlete_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -246 205 180 -230 180 148 -180 139 106 -115 82 65 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -180 139 90 -139 65 65 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/sailor.pal b/graphics/trainers/palettes/sailor.pal deleted file mode 100644 index 3b624857657f..000000000000 --- a/graphics/trainers/palettes/sailor.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -180 180 172 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -139 139 131 -131 180 230 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/salon_maiden_anabel.pal b/graphics/trainers/palettes/salon_maiden_anabel.pal deleted file mode 100644 index 91776562fbb1..000000000000 --- a/graphics/trainers/palettes/salon_maiden_anabel.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -230 139 255 -189 115 213 -148 90 172 -123 74 139 -213 205 246 -255 197 90 -156 148 197 -255 222 115 -213 106 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/school_kid_f.pal b/graphics/trainers/palettes/school_kid_f.pal deleted file mode 100644 index ce758377ac1f..000000000000 --- a/graphics/trainers/palettes/school_kid_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 230 205 -238 189 156 -205 148 115 -106 74 57 -255 139 164 -213 82 131 -131 139 255 -98 115 180 -57 74 131 -246 189 123 -197 131 65 -230 82 41 -139 90 32 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/school_kid_m.pal b/graphics/trainers/palettes/school_kid_m.pal deleted file mode 100644 index dc4298ea0ec7..000000000000 --- a/graphics/trainers/palettes/school_kid_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 180 148 -213 148 115 -123 90 82 -172 164 115 -65 90 148 -49 57 82 -131 123 82 -197 197 238 -255 222 65 -205 189 123 -98 164 222 -49 123 156 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/sis_and_bro.pal b/graphics/trainers/palettes/sis_and_bro.pal deleted file mode 100644 index 823ef66efc69..000000000000 --- a/graphics/trainers/palettes/sis_and_bro.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -246 205 189 -222 164 148 -164 123 98 -74 57 49 -255 139 90 -230 82 74 -180 65 65 -90 65 82 -197 65 65 -213 222 230 -255 230 205 -139 172 213 -90 131 189 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/sr_and_jr.pal b/graphics/trainers/palettes/sr_and_jr.pal deleted file mode 100644 index 72238881fc19..000000000000 --- a/graphics/trainers/palettes/sr_and_jr.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -180 139 90 -131 90 41 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/swimmer_f.pal b/graphics/trainers/palettes/swimmer_f.pal deleted file mode 100644 index 823ef66efc69..000000000000 --- a/graphics/trainers/palettes/swimmer_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -246 205 189 -222 164 148 -164 123 98 -74 57 49 -255 139 90 -230 82 74 -180 65 65 -90 65 82 -197 65 65 -213 222 230 -255 230 205 -139 172 213 -90 131 189 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/swimmer_m.pal b/graphics/trainers/palettes/swimmer_m.pal deleted file mode 100644 index 259a53b9a1d2..000000000000 --- a/graphics/trainers/palettes/swimmer_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -230 197 172 -213 172 148 -172 123 106 -115 82 65 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -172 172 180 -139 65 65 -222 238 238 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/swimming_triathlete_f.pal b/graphics/trainers/palettes/swimming_triathlete_f.pal deleted file mode 100644 index 671c1593f097..000000000000 --- a/graphics/trainers/palettes/swimming_triathlete_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -180 139 90 -139 65 65 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/swimming_triathlete_m.pal b/graphics/trainers/palettes/swimming_triathlete_m.pal deleted file mode 100644 index 671c1593f097..000000000000 --- a/graphics/trainers/palettes/swimming_triathlete_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -90 131 189 -65 90 139 -41 65 98 -49 41 65 -205 213 222 -180 139 90 -139 65 65 -255 98 90 -197 65 65 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/tuber_f.pal b/graphics/trainers/palettes/tuber_f.pal deleted file mode 100644 index b5cb0047aa85..000000000000 --- a/graphics/trainers/palettes/tuber_f.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 230 74 -205 57 82 -238 180 57 -189 131 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/tuber_m.pal b/graphics/trainers/palettes/tuber_m.pal deleted file mode 100644 index b5cb0047aa85..000000000000 --- a/graphics/trainers/palettes/tuber_m.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 230 74 -205 57 82 -238 180 57 -189 131 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/twins.pal b/graphics/trainers/palettes/twins.pal deleted file mode 100644 index 3b162de251cc..000000000000 --- a/graphics/trainers/palettes/twins.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -106 74 74 -139 172 213 -90 131 189 -65 90 139 -57 57 57 -213 222 230 -255 230 74 -180 82 98 -238 180 57 -189 131 74 -255 255 255 -0 0 0 diff --git a/graphics/trainers/palettes/young_couple.pal b/graphics/trainers/palettes/young_couple.pal deleted file mode 100644 index bba95c19a40c..000000000000 --- a/graphics/trainers/palettes/young_couple.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -238 180 148 -197 139 106 -98 65 57 -148 164 172 -82 123 164 -57 82 106 -32 49 74 -205 213 222 -123 197 156 -90 164 131 -255 98 90 -197 65 65 -106 106 139 -0 0 0 diff --git a/graphics/trainers/palettes/youngster.pal b/graphics/trainers/palettes/youngster.pal deleted file mode 100644 index f91520d9b094..000000000000 --- a/graphics/trainers/palettes/youngster.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -115 197 164 -255 222 205 -230 180 148 -213 148 115 -123 90 82 -139 197 222 -65 90 148 -49 57 82 -41 57 98 -197 197 238 -255 222 65 -222 172 90 -98 164 222 -49 123 156 -255 255 255 -0 0 0 diff --git a/src/data/graphics/trainers.h b/src/data/graphics/trainers.h index 206d73a88144..fbdea74729ab 100644 --- a/src/data/graphics/trainers.h +++ b/src/data/graphics/trainers.h @@ -1,290 +1,290 @@ -const u32 gTrainerFrontPic_Hiker[] = INCBIN_U32("graphics/trainers/front_pics/hiker_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Hiker[] = INCBIN_U32("graphics/trainers/palettes/hiker.gbapal.lz"); +const u32 gTrainerFrontPic_Hiker[] = INCBIN_U32("graphics/trainers/front_pics/hiker.4bpp.lz"); +const u32 gTrainerPalette_Hiker[] = INCBIN_U32("graphics/trainers/front_pics/hiker.gbapal.lz"); -const u32 gTrainerFrontPic_AquaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AquaGruntM[] = INCBIN_U32("graphics/trainers/palettes/aqua_grunt_m.gbapal.lz"); +const u32 gTrainerFrontPic_AquaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_m.4bpp.lz"); +const u32 gTrainerPalette_AquaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_m.gbapal.lz"); -const u32 gTrainerFrontPic_PokemonBreederF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokemonBreederF[] = INCBIN_U32("graphics/trainers/palettes/pokemon_breeder_f.gbapal.lz"); +const u32 gTrainerFrontPic_PokemonBreederF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_f.4bpp.lz"); +const u32 gTrainerPalette_PokemonBreederF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_f.gbapal.lz"); -const u32 gTrainerFrontPic_CoolTrainerM[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_CoolTrainerM[] = INCBIN_U32("graphics/trainers/palettes/cooltrainer_m.gbapal.lz"); +const u32 gTrainerFrontPic_CoolTrainerM[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_m.4bpp.lz"); +const u32 gTrainerPalette_CoolTrainerM[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_m.gbapal.lz"); -const u32 gTrainerFrontPic_BirdKeeper[] = INCBIN_U32("graphics/trainers/front_pics/bird_keeper_front_pic.4bpp.lz"); -const u32 gTrainerPalette_BirdKeeper[] = INCBIN_U32("graphics/trainers/palettes/bird_keeper.gbapal.lz"); +const u32 gTrainerFrontPic_BirdKeeper[] = INCBIN_U32("graphics/trainers/front_pics/bird_keeper.4bpp.lz"); +const u32 gTrainerPalette_BirdKeeper[] = INCBIN_U32("graphics/trainers/front_pics/bird_keeper.gbapal.lz"); -const u32 gTrainerFrontPic_Collector[] = INCBIN_U32("graphics/trainers/front_pics/collector_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Collector[] = INCBIN_U32("graphics/trainers/palettes/collector.gbapal.lz"); +const u32 gTrainerFrontPic_Collector[] = INCBIN_U32("graphics/trainers/front_pics/collector.4bpp.lz"); +const u32 gTrainerPalette_Collector[] = INCBIN_U32("graphics/trainers/front_pics/collector.gbapal.lz"); -const u32 gTrainerFrontPic_AquaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AquaGruntF[] = INCBIN_U32("graphics/trainers/palettes/aqua_grunt_f.gbapal.lz"); +const u32 gTrainerFrontPic_AquaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_f.4bpp.lz"); +const u32 gTrainerPalette_AquaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_grunt_f.gbapal.lz"); -const u32 gTrainerFrontPic_SwimmerM[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SwimmerM[] = INCBIN_U32("graphics/trainers/palettes/swimmer_m.gbapal.lz"); +const u32 gTrainerFrontPic_SwimmerM[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_m.4bpp.lz"); +const u32 gTrainerPalette_SwimmerM[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_m.gbapal.lz"); -const u32 gTrainerFrontPic_MagmaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_MagmaGruntM[] = INCBIN_U32("graphics/trainers/palettes/magma_grunt_m.gbapal.lz"); +const u32 gTrainerFrontPic_MagmaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_m.4bpp.lz"); +const u32 gTrainerPalette_MagmaGruntM[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_m.gbapal.lz"); -const u32 gTrainerFrontPic_ExpertM[] = INCBIN_U32("graphics/trainers/front_pics/expert_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_ExpertM[] = INCBIN_U32("graphics/trainers/palettes/expert_m.gbapal.lz"); +const u32 gTrainerFrontPic_ExpertM[] = INCBIN_U32("graphics/trainers/front_pics/expert_m.4bpp.lz"); +const u32 gTrainerPalette_ExpertM[] = INCBIN_U32("graphics/trainers/front_pics/expert_m.gbapal.lz"); -const u32 gTrainerFrontPic_AquaAdminM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AquaAdminM[] = INCBIN_U32("graphics/trainers/palettes/aqua_admin_m.gbapal.lz"); +const u32 gTrainerFrontPic_AquaAdminM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_m.4bpp.lz"); +const u32 gTrainerPalette_AquaAdminM[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_m.gbapal.lz"); -const u32 gTrainerFrontPic_BlackBelt[] = INCBIN_U32("graphics/trainers/front_pics/black_belt_front_pic.4bpp.lz"); -const u32 gTrainerPalette_BlackBelt[] = INCBIN_U32("graphics/trainers/palettes/black_belt.gbapal.lz"); +const u32 gTrainerFrontPic_BlackBelt[] = INCBIN_U32("graphics/trainers/front_pics/black_belt.4bpp.lz"); +const u32 gTrainerPalette_BlackBelt[] = INCBIN_U32("graphics/trainers/front_pics/black_belt.gbapal.lz"); -const u32 gTrainerFrontPic_AquaAdminF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AquaAdminF[] = INCBIN_U32("graphics/trainers/palettes/aqua_admin_f.gbapal.lz"); +const u32 gTrainerFrontPic_AquaAdminF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_f.4bpp.lz"); +const u32 gTrainerPalette_AquaAdminF[] = INCBIN_U32("graphics/trainers/front_pics/aqua_admin_f.gbapal.lz"); -const u32 gTrainerFrontPic_AquaLeaderArchie[] = INCBIN_U32("graphics/trainers/front_pics/aqua_leader_archie_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AquaLeaderArchie[] = INCBIN_U32("graphics/trainers/palettes/aqua_leader_archie.gbapal.lz"); +const u32 gTrainerFrontPic_AquaLeaderArchie[] = INCBIN_U32("graphics/trainers/front_pics/aqua_leader_archie.4bpp.lz"); +const u32 gTrainerPalette_AquaLeaderArchie[] = INCBIN_U32("graphics/trainers/front_pics/aqua_leader_archie.gbapal.lz"); -const u32 gTrainerFrontPic_HexManiac[] = INCBIN_U32("graphics/trainers/front_pics/hex_maniac_front_pic.4bpp.lz"); -const u32 gTrainerPalette_HexManiac[] = INCBIN_U32("graphics/trainers/palettes/hex_maniac.gbapal.lz"); +const u32 gTrainerFrontPic_HexManiac[] = INCBIN_U32("graphics/trainers/front_pics/hex_maniac.4bpp.lz"); +const u32 gTrainerPalette_HexManiac[] = INCBIN_U32("graphics/trainers/front_pics/hex_maniac.gbapal.lz"); -const u32 gTrainerFrontPic_AromaLady[] = INCBIN_U32("graphics/trainers/front_pics/aroma_lady_front_pic.4bpp.lz"); -const u32 gTrainerPalette_AromaLady[] = INCBIN_U32("graphics/trainers/palettes/aroma_lady.gbapal.lz"); +const u32 gTrainerFrontPic_AromaLady[] = INCBIN_U32("graphics/trainers/front_pics/aroma_lady.4bpp.lz"); +const u32 gTrainerPalette_AromaLady[] = INCBIN_U32("graphics/trainers/front_pics/aroma_lady.gbapal.lz"); -const u32 gTrainerFrontPic_RuinManiac[] = INCBIN_U32("graphics/trainers/front_pics/ruin_maniac_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RuinManiac[] = INCBIN_U32("graphics/trainers/palettes/ruin_maniac.gbapal.lz"); +const u32 gTrainerFrontPic_RuinManiac[] = INCBIN_U32("graphics/trainers/front_pics/ruin_maniac.4bpp.lz"); +const u32 gTrainerPalette_RuinManiac[] = INCBIN_U32("graphics/trainers/front_pics/ruin_maniac.gbapal.lz"); -const u32 gTrainerFrontPic_Interviewer[] = INCBIN_U32("graphics/trainers/front_pics/interviewer_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Interviewer[] = INCBIN_U32("graphics/trainers/palettes/interviewer.gbapal.lz"); +const u32 gTrainerFrontPic_Interviewer[] = INCBIN_U32("graphics/trainers/front_pics/interviewer.4bpp.lz"); +const u32 gTrainerPalette_Interviewer[] = INCBIN_U32("graphics/trainers/front_pics/interviewer.gbapal.lz"); -const u32 gTrainerFrontPic_TuberF[] = INCBIN_U32("graphics/trainers/front_pics/tuber_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_TuberF[] = INCBIN_U32("graphics/trainers/palettes/tuber_f.gbapal.lz"); +const u32 gTrainerFrontPic_TuberF[] = INCBIN_U32("graphics/trainers/front_pics/tuber_f.4bpp.lz"); +const u32 gTrainerPalette_TuberF[] = INCBIN_U32("graphics/trainers/front_pics/tuber_f.gbapal.lz"); -const u32 gTrainerFrontPic_TuberM[] = INCBIN_U32("graphics/trainers/front_pics/tuber_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_TuberM[] = INCBIN_U32("graphics/trainers/palettes/tuber_m.gbapal.lz"); +const u32 gTrainerFrontPic_TuberM[] = INCBIN_U32("graphics/trainers/front_pics/tuber_m.4bpp.lz"); +const u32 gTrainerPalette_TuberM[] = INCBIN_U32("graphics/trainers/front_pics/tuber_m.gbapal.lz"); -const u32 gTrainerFrontPic_CoolTrainerF[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_CoolTrainerF[] = INCBIN_U32("graphics/trainers/palettes/cooltrainer_f.gbapal.lz"); +const u32 gTrainerFrontPic_CoolTrainerF[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_f.4bpp.lz"); +const u32 gTrainerPalette_CoolTrainerF[] = INCBIN_U32("graphics/trainers/front_pics/cooltrainer_f.gbapal.lz"); -const u32 gTrainerFrontPic_Lady[] = INCBIN_U32("graphics/trainers/front_pics/lady_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Lady[] = INCBIN_U32("graphics/trainers/palettes/lady.gbapal.lz"); +const u32 gTrainerFrontPic_Lady[] = INCBIN_U32("graphics/trainers/front_pics/lady.4bpp.lz"); +const u32 gTrainerPalette_Lady[] = INCBIN_U32("graphics/trainers/front_pics/lady.gbapal.lz"); -const u32 gTrainerFrontPic_Beauty[] = INCBIN_U32("graphics/trainers/front_pics/beauty_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Beauty[] = INCBIN_U32("graphics/trainers/palettes/beauty.gbapal.lz"); +const u32 gTrainerFrontPic_Beauty[] = INCBIN_U32("graphics/trainers/front_pics/beauty.4bpp.lz"); +const u32 gTrainerPalette_Beauty[] = INCBIN_U32("graphics/trainers/front_pics/beauty.gbapal.lz"); -const u32 gTrainerFrontPic_RichBoy[] = INCBIN_U32("graphics/trainers/front_pics/rich_boy_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RichBoy[] = INCBIN_U32("graphics/trainers/palettes/rich_boy.gbapal.lz"); +const u32 gTrainerFrontPic_RichBoy[] = INCBIN_U32("graphics/trainers/front_pics/rich_boy.4bpp.lz"); +const u32 gTrainerPalette_RichBoy[] = INCBIN_U32("graphics/trainers/front_pics/rich_boy.gbapal.lz"); -const u32 gTrainerFrontPic_ExpertF[] = INCBIN_U32("graphics/trainers/front_pics/expert_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_ExpertF[] = INCBIN_U32("graphics/trainers/palettes/expert_f.gbapal.lz"); +const u32 gTrainerFrontPic_ExpertF[] = INCBIN_U32("graphics/trainers/front_pics/expert_f.4bpp.lz"); +const u32 gTrainerPalette_ExpertF[] = INCBIN_U32("graphics/trainers/front_pics/expert_f.gbapal.lz"); -const u32 gTrainerFrontPic_Pokemaniac[] = INCBIN_U32("graphics/trainers/front_pics/pokemaniac_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Pokemaniac[] = INCBIN_U32("graphics/trainers/palettes/pokemaniac.gbapal.lz"); +const u32 gTrainerFrontPic_Pokemaniac[] = INCBIN_U32("graphics/trainers/front_pics/pokemaniac.4bpp.lz"); +const u32 gTrainerPalette_Pokemaniac[] = INCBIN_U32("graphics/trainers/front_pics/pokemaniac.gbapal.lz"); -const u32 gTrainerFrontPic_MagmaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_MagmaGruntF[] = INCBIN_U32("graphics/trainers/palettes/magma_grunt_f.gbapal.lz"); +const u32 gTrainerFrontPic_MagmaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_f.4bpp.lz"); +const u32 gTrainerPalette_MagmaGruntF[] = INCBIN_U32("graphics/trainers/front_pics/magma_grunt_f.gbapal.lz"); -const u32 gTrainerFrontPic_Guitarist[] = INCBIN_U32("graphics/trainers/front_pics/guitarist_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Guitarist[] = INCBIN_U32("graphics/trainers/palettes/guitarist.gbapal.lz"); +const u32 gTrainerFrontPic_Guitarist[] = INCBIN_U32("graphics/trainers/front_pics/guitarist.4bpp.lz"); +const u32 gTrainerPalette_Guitarist[] = INCBIN_U32("graphics/trainers/front_pics/guitarist.gbapal.lz"); -const u32 gTrainerFrontPic_Kindler[] = INCBIN_U32("graphics/trainers/front_pics/kindler_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Kindler[] = INCBIN_U32("graphics/trainers/palettes/kindler.gbapal.lz"); +const u32 gTrainerFrontPic_Kindler[] = INCBIN_U32("graphics/trainers/front_pics/kindler.4bpp.lz"); +const u32 gTrainerPalette_Kindler[] = INCBIN_U32("graphics/trainers/front_pics/kindler.gbapal.lz"); -const u32 gTrainerFrontPic_Camper[] = INCBIN_U32("graphics/trainers/front_pics/camper_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Camper[] = INCBIN_U32("graphics/trainers/palettes/camper.gbapal.lz"); +const u32 gTrainerFrontPic_Camper[] = INCBIN_U32("graphics/trainers/front_pics/camper.4bpp.lz"); +const u32 gTrainerPalette_Camper[] = INCBIN_U32("graphics/trainers/front_pics/camper.gbapal.lz"); -const u32 gTrainerFrontPic_Picnicker[] = INCBIN_U32("graphics/trainers/front_pics/picnicker_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Picnicker[] = INCBIN_U32("graphics/trainers/palettes/picnicker.gbapal.lz"); +const u32 gTrainerFrontPic_Picnicker[] = INCBIN_U32("graphics/trainers/front_pics/picnicker.4bpp.lz"); +const u32 gTrainerPalette_Picnicker[] = INCBIN_U32("graphics/trainers/front_pics/picnicker.gbapal.lz"); -const u32 gTrainerFrontPic_BugManiac[] = INCBIN_U32("graphics/trainers/front_pics/bug_maniac_front_pic.4bpp.lz"); -const u32 gTrainerPalette_BugManiac[] = INCBIN_U32("graphics/trainers/palettes/bug_maniac.gbapal.lz"); +const u32 gTrainerFrontPic_BugManiac[] = INCBIN_U32("graphics/trainers/front_pics/bug_maniac.4bpp.lz"); +const u32 gTrainerPalette_BugManiac[] = INCBIN_U32("graphics/trainers/front_pics/bug_maniac.gbapal.lz"); -const u32 gTrainerFrontPic_PokemonBreederM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokemonBreederM[] = INCBIN_U32("graphics/trainers/palettes/pokemon_breeder_m.gbapal.lz"); +const u32 gTrainerFrontPic_PokemonBreederM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_m.4bpp.lz"); +const u32 gTrainerPalette_PokemonBreederM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_breeder_m.gbapal.lz"); -const u32 gTrainerFrontPic_PsychicM[] = INCBIN_U32("graphics/trainers/front_pics/psychic_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PsychicM[] = INCBIN_U32("graphics/trainers/palettes/psychic_m.gbapal.lz"); +const u32 gTrainerFrontPic_PsychicM[] = INCBIN_U32("graphics/trainers/front_pics/psychic_m.4bpp.lz"); +const u32 gTrainerPalette_PsychicM[] = INCBIN_U32("graphics/trainers/front_pics/psychic_m.gbapal.lz"); -const u32 gTrainerFrontPic_PsychicF[] = INCBIN_U32("graphics/trainers/front_pics/psychic_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PsychicF[] = INCBIN_U32("graphics/trainers/palettes/psychic_f.gbapal.lz"); +const u32 gTrainerFrontPic_PsychicF[] = INCBIN_U32("graphics/trainers/front_pics/psychic_f.4bpp.lz"); +const u32 gTrainerPalette_PsychicF[] = INCBIN_U32("graphics/trainers/front_pics/psychic_f.gbapal.lz"); -const u32 gTrainerFrontPic_Gentleman[] = INCBIN_U32("graphics/trainers/front_pics/gentleman_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Gentleman[] = INCBIN_U32("graphics/trainers/palettes/gentleman.gbapal.lz"); +const u32 gTrainerFrontPic_Gentleman[] = INCBIN_U32("graphics/trainers/front_pics/gentleman.4bpp.lz"); +const u32 gTrainerPalette_Gentleman[] = INCBIN_U32("graphics/trainers/front_pics/gentleman.gbapal.lz"); -const u32 gTrainerFrontPic_EliteFourSidney[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_sidney_front_pic.4bpp.lz"); -const u32 gTrainerPalette_EliteFourSidney[] = INCBIN_U32("graphics/trainers/palettes/elite_four_sidney.gbapal.lz"); +const u32 gTrainerFrontPic_EliteFourSidney[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_sidney.4bpp.lz"); +const u32 gTrainerPalette_EliteFourSidney[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_sidney.gbapal.lz"); -const u32 gTrainerFrontPic_EliteFourPhoebe[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_phoebe_front_pic.4bpp.lz"); -const u32 gTrainerPalette_EliteFourPhoebe[] = INCBIN_U32("graphics/trainers/palettes/elite_four_phoebe.gbapal.lz"); +const u32 gTrainerFrontPic_EliteFourPhoebe[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_phoebe.4bpp.lz"); +const u32 gTrainerPalette_EliteFourPhoebe[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_phoebe.gbapal.lz"); -const u32 gTrainerFrontPic_EliteFourGlacia[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_glacia_front_pic.4bpp.lz"); -const u32 gTrainerPalette_EliteFourGlacia[] = INCBIN_U32("graphics/trainers/palettes/elite_four_glacia.gbapal.lz"); +const u32 gTrainerFrontPic_EliteFourGlacia[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_glacia.4bpp.lz"); +const u32 gTrainerPalette_EliteFourGlacia[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_glacia.gbapal.lz"); -const u32 gTrainerFrontPic_EliteFourDrake[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_drake_front_pic.4bpp.lz"); -const u32 gTrainerPalette_EliteFourDrake[] = INCBIN_U32("graphics/trainers/palettes/elite_four_drake.gbapal.lz"); +const u32 gTrainerFrontPic_EliteFourDrake[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_drake.4bpp.lz"); +const u32 gTrainerPalette_EliteFourDrake[] = INCBIN_U32("graphics/trainers/front_pics/elite_four_drake.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderRoxanne[] = INCBIN_U32("graphics/trainers/front_pics/leader_roxanne_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderRoxanne[] = INCBIN_U32("graphics/trainers/palettes/leader_roxanne.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderRoxanne[] = INCBIN_U32("graphics/trainers/front_pics/leader_roxanne.4bpp.lz"); +const u32 gTrainerPalette_LeaderRoxanne[] = INCBIN_U32("graphics/trainers/front_pics/leader_roxanne.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderBrawly[] = INCBIN_U32("graphics/trainers/front_pics/leader_brawly_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderBrawly[] = INCBIN_U32("graphics/trainers/palettes/leader_brawly.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderBrawly[] = INCBIN_U32("graphics/trainers/front_pics/leader_brawly.4bpp.lz"); +const u32 gTrainerPalette_LeaderBrawly[] = INCBIN_U32("graphics/trainers/front_pics/leader_brawly.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderWattson[] = INCBIN_U32("graphics/trainers/front_pics/leader_wattson_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderWattson[] = INCBIN_U32("graphics/trainers/palettes/leader_wattson.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderWattson[] = INCBIN_U32("graphics/trainers/front_pics/leader_wattson.4bpp.lz"); +const u32 gTrainerPalette_LeaderWattson[] = INCBIN_U32("graphics/trainers/front_pics/leader_wattson.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderFlannery[] = INCBIN_U32("graphics/trainers/front_pics/leader_flannery_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderFlannery[] = INCBIN_U32("graphics/trainers/palettes/leader_flannery.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderFlannery[] = INCBIN_U32("graphics/trainers/front_pics/leader_flannery.4bpp.lz"); +const u32 gTrainerPalette_LeaderFlannery[] = INCBIN_U32("graphics/trainers/front_pics/leader_flannery.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderNorman[] = INCBIN_U32("graphics/trainers/front_pics/leader_norman_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderNorman[] = INCBIN_U32("graphics/trainers/palettes/leader_norman.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderNorman[] = INCBIN_U32("graphics/trainers/front_pics/leader_norman.4bpp.lz"); +const u32 gTrainerPalette_LeaderNorman[] = INCBIN_U32("graphics/trainers/front_pics/leader_norman.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderWinona[] = INCBIN_U32("graphics/trainers/front_pics/leader_winona_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderWinona[] = INCBIN_U32("graphics/trainers/palettes/leader_winona.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderWinona[] = INCBIN_U32("graphics/trainers/front_pics/leader_winona.4bpp.lz"); +const u32 gTrainerPalette_LeaderWinona[] = INCBIN_U32("graphics/trainers/front_pics/leader_winona.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderTateAndLiza[] = INCBIN_U32("graphics/trainers/front_pics/leader_tate_and_liza_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderTateAndLiza[] = INCBIN_U32("graphics/trainers/palettes/leader_tate_and_liza.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderTateAndLiza[] = INCBIN_U32("graphics/trainers/front_pics/leader_tate_and_liza.4bpp.lz"); +const u32 gTrainerPalette_LeaderTateAndLiza[] = INCBIN_U32("graphics/trainers/front_pics/leader_tate_and_liza.gbapal.lz"); -const u32 gTrainerFrontPic_LeaderJuan[] = INCBIN_U32("graphics/trainers/front_pics/leader_juan_front_pic.4bpp.lz"); -const u32 gTrainerPalette_LeaderJuan[] = INCBIN_U32("graphics/trainers/palettes/leader_juan.gbapal.lz"); +const u32 gTrainerFrontPic_LeaderJuan[] = INCBIN_U32("graphics/trainers/front_pics/leader_juan.4bpp.lz"); +const u32 gTrainerPalette_LeaderJuan[] = INCBIN_U32("graphics/trainers/front_pics/leader_juan.gbapal.lz"); -const u32 gTrainerFrontPic_SchoolKidM[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SchoolKidM[] = INCBIN_U32("graphics/trainers/palettes/school_kid_m.gbapal.lz"); +const u32 gTrainerFrontPic_SchoolKidM[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_m.4bpp.lz"); +const u32 gTrainerPalette_SchoolKidM[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_m.gbapal.lz"); -const u32 gTrainerFrontPic_SchoolKidF[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SchoolKidF[] = INCBIN_U32("graphics/trainers/palettes/school_kid_f.gbapal.lz"); +const u32 gTrainerFrontPic_SchoolKidF[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_f.4bpp.lz"); +const u32 gTrainerPalette_SchoolKidF[] = INCBIN_U32("graphics/trainers/front_pics/school_kid_f.gbapal.lz"); -const u32 gTrainerFrontPic_SrAndJr[] = INCBIN_U32("graphics/trainers/front_pics/sr_and_jr_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SrAndJr[] = INCBIN_U32("graphics/trainers/palettes/sr_and_jr.gbapal.lz"); +const u32 gTrainerFrontPic_SrAndJr[] = INCBIN_U32("graphics/trainers/front_pics/sr_and_jr.4bpp.lz"); +const u32 gTrainerPalette_SrAndJr[] = INCBIN_U32("graphics/trainers/front_pics/sr_and_jr.gbapal.lz"); -const u32 gTrainerFrontPic_PokefanM[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokefanM[] = INCBIN_U32("graphics/trainers/palettes/pokefan_m.gbapal.lz"); +const u32 gTrainerFrontPic_PokefanM[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_m.4bpp.lz"); +const u32 gTrainerPalette_PokefanM[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_m.gbapal.lz"); -const u32 gTrainerFrontPic_PokefanF[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokefanF[] = INCBIN_U32("graphics/trainers/palettes/pokefan_f.gbapal.lz"); +const u32 gTrainerFrontPic_PokefanF[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_f.4bpp.lz"); +const u32 gTrainerPalette_PokefanF[] = INCBIN_U32("graphics/trainers/front_pics/pokefan_f.gbapal.lz"); -const u32 gTrainerFrontPic_Youngster[] = INCBIN_U32("graphics/trainers/front_pics/youngster_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Youngster[] = INCBIN_U32("graphics/trainers/palettes/youngster.gbapal.lz"); +const u32 gTrainerFrontPic_Youngster[] = INCBIN_U32("graphics/trainers/front_pics/youngster.4bpp.lz"); +const u32 gTrainerPalette_Youngster[] = INCBIN_U32("graphics/trainers/front_pics/youngster.gbapal.lz"); -const u32 gTrainerFrontPic_ChampionWallace[] = INCBIN_U32("graphics/trainers/front_pics/champion_wallace_front_pic.4bpp.lz"); -const u32 gTrainerPalette_ChampionWallace[] = INCBIN_U32("graphics/trainers/palettes/champion_wallace.gbapal.lz"); +const u32 gTrainerFrontPic_ChampionWallace[] = INCBIN_U32("graphics/trainers/front_pics/champion_wallace.4bpp.lz"); +const u32 gTrainerPalette_ChampionWallace[] = INCBIN_U32("graphics/trainers/front_pics/champion_wallace.gbapal.lz"); -const u32 gTrainerFrontPic_Fisherman[] = INCBIN_U32("graphics/trainers/front_pics/fisherman_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Fisherman[] = INCBIN_U32("graphics/trainers/palettes/fisherman.gbapal.lz"); +const u32 gTrainerFrontPic_Fisherman[] = INCBIN_U32("graphics/trainers/front_pics/fisherman.4bpp.lz"); +const u32 gTrainerPalette_Fisherman[] = INCBIN_U32("graphics/trainers/front_pics/fisherman.gbapal.lz"); -const u32 gTrainerFrontPic_CyclingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_CyclingTriathleteM[] = INCBIN_U32("graphics/trainers/palettes/cycling_triathlete_m.gbapal.lz"); +const u32 gTrainerFrontPic_CyclingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_m.4bpp.lz"); +const u32 gTrainerPalette_CyclingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_m.gbapal.lz"); -const u32 gTrainerFrontPic_CyclingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_CyclingTriathleteF[] = INCBIN_U32("graphics/trainers/palettes/cycling_triathlete_f.gbapal.lz"); +const u32 gTrainerFrontPic_CyclingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_f.4bpp.lz"); +const u32 gTrainerPalette_CyclingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/cycling_triathlete_f.gbapal.lz"); -const u32 gTrainerFrontPic_RunningTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RunningTriathleteM[] = INCBIN_U32("graphics/trainers/palettes/running_triathlete_m.gbapal.lz"); +const u32 gTrainerFrontPic_RunningTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_m.4bpp.lz"); +const u32 gTrainerPalette_RunningTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_m.gbapal.lz"); -const u32 gTrainerFrontPic_RunningTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RunningTriathleteF[] = INCBIN_U32("graphics/trainers/palettes/running_triathlete_f.gbapal.lz"); +const u32 gTrainerFrontPic_RunningTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_f.4bpp.lz"); +const u32 gTrainerPalette_RunningTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/running_triathlete_f.gbapal.lz"); -const u32 gTrainerFrontPic_SwimmingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SwimmingTriathleteM[] = INCBIN_U32("graphics/trainers/palettes/swimming_triathlete_m.gbapal.lz"); +const u32 gTrainerFrontPic_SwimmingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_m.4bpp.lz"); +const u32 gTrainerPalette_SwimmingTriathleteM[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_m.gbapal.lz"); -const u32 gTrainerFrontPic_SwimmingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SwimmingTriathleteF[] = INCBIN_U32("graphics/trainers/palettes/swimming_triathlete_f.gbapal.lz"); +const u32 gTrainerFrontPic_SwimmingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_f.4bpp.lz"); +const u32 gTrainerPalette_SwimmingTriathleteF[] = INCBIN_U32("graphics/trainers/front_pics/swimming_triathlete_f.gbapal.lz"); -const u32 gTrainerFrontPic_DragonTamer[] = INCBIN_U32("graphics/trainers/front_pics/dragon_tamer_front_pic.4bpp.lz"); -const u32 gTrainerPalette_DragonTamer[] = INCBIN_U32("graphics/trainers/palettes/dragon_tamer.gbapal.lz"); +const u32 gTrainerFrontPic_DragonTamer[] = INCBIN_U32("graphics/trainers/front_pics/dragon_tamer.4bpp.lz"); +const u32 gTrainerPalette_DragonTamer[] = INCBIN_U32("graphics/trainers/front_pics/dragon_tamer.gbapal.lz"); -const u32 gTrainerFrontPic_NinjaBoy[] = INCBIN_U32("graphics/trainers/front_pics/ninja_boy_front_pic.4bpp.lz"); -const u32 gTrainerPalette_NinjaBoy[] = INCBIN_U32("graphics/trainers/palettes/ninja_boy.gbapal.lz"); +const u32 gTrainerFrontPic_NinjaBoy[] = INCBIN_U32("graphics/trainers/front_pics/ninja_boy.4bpp.lz"); +const u32 gTrainerPalette_NinjaBoy[] = INCBIN_U32("graphics/trainers/front_pics/ninja_boy.gbapal.lz"); -const u32 gTrainerFrontPic_BattleGirl[] = INCBIN_U32("graphics/trainers/front_pics/battle_girl_front_pic.4bpp.lz"); -const u32 gTrainerPalette_BattleGirl[] = INCBIN_U32("graphics/trainers/palettes/battle_girl.gbapal.lz"); +const u32 gTrainerFrontPic_BattleGirl[] = INCBIN_U32("graphics/trainers/front_pics/battle_girl.4bpp.lz"); +const u32 gTrainerPalette_BattleGirl[] = INCBIN_U32("graphics/trainers/front_pics/battle_girl.gbapal.lz"); -const u32 gTrainerFrontPic_ParasolLady[] = INCBIN_U32("graphics/trainers/front_pics/parasol_lady_front_pic.4bpp.lz"); -const u32 gTrainerPalette_ParasolLady[] = INCBIN_U32("graphics/trainers/palettes/parasol_lady.gbapal.lz"); +const u32 gTrainerFrontPic_ParasolLady[] = INCBIN_U32("graphics/trainers/front_pics/parasol_lady.4bpp.lz"); +const u32 gTrainerPalette_ParasolLady[] = INCBIN_U32("graphics/trainers/front_pics/parasol_lady.gbapal.lz"); -const u32 gTrainerFrontPic_SwimmerF[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SwimmerF[] = INCBIN_U32("graphics/trainers/palettes/swimmer_f.gbapal.lz"); +const u32 gTrainerFrontPic_SwimmerF[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_f.4bpp.lz"); +const u32 gTrainerPalette_SwimmerF[] = INCBIN_U32("graphics/trainers/front_pics/swimmer_f.gbapal.lz"); -const u32 gTrainerFrontPic_Twins[] = INCBIN_U32("graphics/trainers/front_pics/twins_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Twins[] = INCBIN_U32("graphics/trainers/palettes/twins.gbapal.lz"); +const u32 gTrainerFrontPic_Twins[] = INCBIN_U32("graphics/trainers/front_pics/twins.4bpp.lz"); +const u32 gTrainerPalette_Twins[] = INCBIN_U32("graphics/trainers/front_pics/twins.gbapal.lz"); -const u32 gTrainerFrontPic_Sailor[] = INCBIN_U32("graphics/trainers/front_pics/sailor_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Sailor[] = INCBIN_U32("graphics/trainers/palettes/sailor.gbapal.lz"); +const u32 gTrainerFrontPic_Sailor[] = INCBIN_U32("graphics/trainers/front_pics/sailor.4bpp.lz"); +const u32 gTrainerPalette_Sailor[] = INCBIN_U32("graphics/trainers/front_pics/sailor.gbapal.lz"); -const u32 gTrainerFrontPic_MagmaAdmin[] = INCBIN_U32("graphics/trainers/front_pics/magma_admin_front_pic.4bpp.lz"); -const u32 gTrainerPalette_MagmaAdmin[] = INCBIN_U32("graphics/trainers/palettes/magma_admin.gbapal.lz"); +const u32 gTrainerFrontPic_MagmaAdmin[] = INCBIN_U32("graphics/trainers/front_pics/magma_admin.4bpp.lz"); +const u32 gTrainerPalette_MagmaAdmin[] = INCBIN_U32("graphics/trainers/front_pics/magma_admin.gbapal.lz"); -const u32 gTrainerFrontPic_Wally[] = INCBIN_U32("graphics/trainers/front_pics/wally_front_pic.4bpp.lz"); +const u32 gTrainerFrontPic_Wally[] = INCBIN_U32("graphics/trainers/front_pics/wally.4bpp.lz"); const u32 gTrainerPalette_Wally[] = INCBIN_U32("graphics/trainers/palettes/wally.gbapal.lz"); -const u32 gTrainerFrontPic_Brendan[] = INCBIN_U32("graphics/trainers/front_pics/brendan_front_pic.4bpp.lz"); +const u32 gTrainerFrontPic_Brendan[] = INCBIN_U32("graphics/trainers/front_pics/brendan.4bpp.lz"); const u32 gTrainerPalette_Brendan[] = INCBIN_U32("graphics/trainers/palettes/brendan.gbapal.lz"); -const u32 gTrainerFrontPic_May[] = INCBIN_U32("graphics/trainers/front_pics/may_front_pic.4bpp.lz"); +const u32 gTrainerFrontPic_May[] = INCBIN_U32("graphics/trainers/front_pics/may.4bpp.lz"); const u32 gTrainerPalette_May[] = INCBIN_U32("graphics/trainers/palettes/may.gbapal.lz"); -const u32 gTrainerFrontPic_BugCatcher[] = INCBIN_U32("graphics/trainers/front_pics/bug_catcher_front_pic.4bpp.lz"); -const u32 gTrainerPalette_BugCatcher[] = INCBIN_U32("graphics/trainers/palettes/bug_catcher.gbapal.lz"); +const u32 gTrainerFrontPic_BugCatcher[] = INCBIN_U32("graphics/trainers/front_pics/bug_catcher.4bpp.lz"); +const u32 gTrainerPalette_BugCatcher[] = INCBIN_U32("graphics/trainers/front_pics/bug_catcher.gbapal.lz"); -const u32 gTrainerFrontPic_PokemonRangerM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_m_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokemonRangerM[] = INCBIN_U32("graphics/trainers/palettes/pokemon_ranger_m.gbapal.lz"); +const u32 gTrainerFrontPic_PokemonRangerM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_m.4bpp.lz"); +const u32 gTrainerPalette_PokemonRangerM[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_m.gbapal.lz"); -const u32 gTrainerFrontPic_PokemonRangerF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_f_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PokemonRangerF[] = INCBIN_U32("graphics/trainers/palettes/pokemon_ranger_f.gbapal.lz"); +const u32 gTrainerFrontPic_PokemonRangerF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_f.4bpp.lz"); +const u32 gTrainerPalette_PokemonRangerF[] = INCBIN_U32("graphics/trainers/front_pics/pokemon_ranger_f.gbapal.lz"); -const u32 gTrainerFrontPic_MagmaLeaderMaxie[] = INCBIN_U32("graphics/trainers/front_pics/magma_leader_maxie_front_pic.4bpp.lz"); -const u32 gTrainerPalette_MagmaLeaderMaxie[] = INCBIN_U32("graphics/trainers/palettes/magma_leader_maxie.gbapal.lz"); +const u32 gTrainerFrontPic_MagmaLeaderMaxie[] = INCBIN_U32("graphics/trainers/front_pics/magma_leader_maxie.4bpp.lz"); +const u32 gTrainerPalette_MagmaLeaderMaxie[] = INCBIN_U32("graphics/trainers/front_pics/magma_leader_maxie.gbapal.lz"); -const u32 gTrainerFrontPic_Lass[] = INCBIN_U32("graphics/trainers/front_pics/lass_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Lass[] = INCBIN_U32("graphics/trainers/palettes/lass.gbapal.lz"); +const u32 gTrainerFrontPic_Lass[] = INCBIN_U32("graphics/trainers/front_pics/lass.4bpp.lz"); +const u32 gTrainerPalette_Lass[] = INCBIN_U32("graphics/trainers/front_pics/lass.gbapal.lz"); -const u32 gTrainerFrontPic_YoungCouple[] = INCBIN_U32("graphics/trainers/front_pics/young_couple_front_pic.4bpp.lz"); -const u32 gTrainerPalette_YoungCouple[] = INCBIN_U32("graphics/trainers/palettes/young_couple.gbapal.lz"); +const u32 gTrainerFrontPic_YoungCouple[] = INCBIN_U32("graphics/trainers/front_pics/young_couple.4bpp.lz"); +const u32 gTrainerPalette_YoungCouple[] = INCBIN_U32("graphics/trainers/front_pics/young_couple.gbapal.lz"); -const u32 gTrainerFrontPic_OldCouple[] = INCBIN_U32("graphics/trainers/front_pics/old_couple_front_pic.4bpp.lz"); -const u32 gTrainerPalette_OldCouple[] = INCBIN_U32("graphics/trainers/palettes/old_couple.gbapal.lz"); +const u32 gTrainerFrontPic_OldCouple[] = INCBIN_U32("graphics/trainers/front_pics/old_couple.4bpp.lz"); +const u32 gTrainerPalette_OldCouple[] = INCBIN_U32("graphics/trainers/front_pics/old_couple.gbapal.lz"); -const u32 gTrainerFrontPic_SisAndBro[] = INCBIN_U32("graphics/trainers/front_pics/sis_and_bro_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SisAndBro[] = INCBIN_U32("graphics/trainers/palettes/sis_and_bro.gbapal.lz"); +const u32 gTrainerFrontPic_SisAndBro[] = INCBIN_U32("graphics/trainers/front_pics/sis_and_bro.4bpp.lz"); +const u32 gTrainerPalette_SisAndBro[] = INCBIN_U32("graphics/trainers/front_pics/sis_and_bro.gbapal.lz"); -const u32 gTrainerFrontPic_Steven[] = INCBIN_U32("graphics/trainers/front_pics/steven_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Steven[] = INCBIN_U32("graphics/trainers/palettes/steven.gbapal.lz"); +const u32 gTrainerFrontPic_Steven[] = INCBIN_U32("graphics/trainers/front_pics/steven.4bpp.lz"); +const u32 gTrainerPalette_Steven[] = INCBIN_U32("graphics/trainers/front_pics/steven.gbapal.lz"); -const u32 gTrainerFrontPic_SalonMaidenAnabel[] = INCBIN_U32("graphics/trainers/front_pics/salon_maiden_anabel_front_pic.4bpp.lz"); -const u32 gTrainerPalette_SalonMaidenAnabel[] = INCBIN_U32("graphics/trainers/palettes/salon_maiden_anabel.gbapal.lz"); +const u32 gTrainerFrontPic_SalonMaidenAnabel[] = INCBIN_U32("graphics/trainers/front_pics/salon_maiden_anabel.4bpp.lz"); +const u32 gTrainerPalette_SalonMaidenAnabel[] = INCBIN_U32("graphics/trainers/front_pics/salon_maiden_anabel.gbapal.lz"); -const u32 gTrainerFrontPic_DomeAceTucker[] = INCBIN_U32("graphics/trainers/front_pics/dome_ace_tucker_front_pic.4bpp.lz"); -const u32 gTrainerPalette_DomeAceTucker[] = INCBIN_U32("graphics/trainers/palettes/dome_ace_tucker.gbapal.lz"); +const u32 gTrainerFrontPic_DomeAceTucker[] = INCBIN_U32("graphics/trainers/front_pics/dome_ace_tucker.4bpp.lz"); +const u32 gTrainerPalette_DomeAceTucker[] = INCBIN_U32("graphics/trainers/front_pics/dome_ace_tucker.gbapal.lz"); -const u32 gTrainerFrontPic_PalaceMavenSpenser[] = INCBIN_U32("graphics/trainers/front_pics/palace_maven_spenser_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PalaceMavenSpenser[] = INCBIN_U32("graphics/trainers/palettes/palace_maven_spenser.gbapal.lz"); +const u32 gTrainerFrontPic_PalaceMavenSpenser[] = INCBIN_U32("graphics/trainers/front_pics/palace_maven_spenser.4bpp.lz"); +const u32 gTrainerPalette_PalaceMavenSpenser[] = INCBIN_U32("graphics/trainers/front_pics/palace_maven_spenser.gbapal.lz"); -const u32 gTrainerFrontPic_ArenaTycoonGreta[] = INCBIN_U32("graphics/trainers/front_pics/arena_tycoon_greta_front_pic.4bpp.lz"); -const u32 gTrainerPalette_ArenaTycoonGreta[] = INCBIN_U32("graphics/trainers/palettes/arena_tycoon_greta.gbapal.lz"); +const u32 gTrainerFrontPic_ArenaTycoonGreta[] = INCBIN_U32("graphics/trainers/front_pics/arena_tycoon_greta.4bpp.lz"); +const u32 gTrainerPalette_ArenaTycoonGreta[] = INCBIN_U32("graphics/trainers/front_pics/arena_tycoon_greta.gbapal.lz"); -const u32 gTrainerFrontPic_FactoryHeadNoland[] = INCBIN_U32("graphics/trainers/front_pics/factory_head_noland_front_pic.4bpp.lz"); -const u32 gTrainerPalette_FactoryHeadNoland[] = INCBIN_U32("graphics/trainers/palettes/factory_head_noland.gbapal.lz"); +const u32 gTrainerFrontPic_FactoryHeadNoland[] = INCBIN_U32("graphics/trainers/front_pics/factory_head_noland.4bpp.lz"); +const u32 gTrainerPalette_FactoryHeadNoland[] = INCBIN_U32("graphics/trainers/front_pics/factory_head_noland.gbapal.lz"); -const u32 gTrainerFrontPic_PikeQueenLucy[] = INCBIN_U32("graphics/trainers/front_pics/pike_queen_lucy_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PikeQueenLucy[] = INCBIN_U32("graphics/trainers/palettes/pike_queen_lucy.gbapal.lz"); +const u32 gTrainerFrontPic_PikeQueenLucy[] = INCBIN_U32("graphics/trainers/front_pics/pike_queen_lucy.4bpp.lz"); +const u32 gTrainerPalette_PikeQueenLucy[] = INCBIN_U32("graphics/trainers/front_pics/pike_queen_lucy.gbapal.lz"); -const u32 gTrainerFrontPic_PyramidKingBrandon[] = INCBIN_U32("graphics/trainers/front_pics/pyramid_king_brandon_front_pic.4bpp.lz"); -const u32 gTrainerPalette_PyramidKingBrandon[] = INCBIN_U32("graphics/trainers/palettes/pyramid_king_brandon.gbapal.lz"); +const u32 gTrainerFrontPic_PyramidKingBrandon[] = INCBIN_U32("graphics/trainers/front_pics/pyramid_king_brandon.4bpp.lz"); +const u32 gTrainerPalette_PyramidKingBrandon[] = INCBIN_U32("graphics/trainers/front_pics/pyramid_king_brandon.gbapal.lz"); -const u32 gTrainerFrontPic_Red[] = INCBIN_U32("graphics/trainers/front_pics/red_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Red[] = INCBIN_U32("graphics/trainers/palettes/red.gbapal.lz"); +const u32 gTrainerFrontPic_Red[] = INCBIN_U32("graphics/trainers/front_pics/red.4bpp.lz"); +const u32 gTrainerPalette_Red[] = INCBIN_U32("graphics/trainers/front_pics/red.gbapal.lz"); -const u32 gTrainerFrontPic_Leaf[] = INCBIN_U32("graphics/trainers/front_pics/leaf_front_pic.4bpp.lz"); -const u32 gTrainerPalette_Leaf[] = INCBIN_U32("graphics/trainers/palettes/leaf.gbapal.lz"); +const u32 gTrainerFrontPic_Leaf[] = INCBIN_U32("graphics/trainers/front_pics/leaf.4bpp.lz"); +const u32 gTrainerPalette_Leaf[] = INCBIN_U32("graphics/trainers/front_pics/leaf.gbapal.lz"); -const u32 gTrainerFrontPic_RubySapphireBrendan[] = INCBIN_U32("graphics/trainers/front_pics/ruby_sapphire_brendan_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RubySapphireBrendan[] = INCBIN_U32("graphics/trainers/palettes/ruby_sapphire_brendan.gbapal.lz"); +const u32 gTrainerFrontPic_RubySapphireBrendan[] = INCBIN_U32("graphics/trainers/front_pics/brendan_rs.4bpp.lz"); +const u32 gTrainerPalette_RubySapphireBrendan[] = INCBIN_U32("graphics/trainers/palettes/brendan_rs.gbapal.lz"); -const u32 gTrainerFrontPic_RubySapphireMay[] = INCBIN_U32("graphics/trainers/front_pics/ruby_sapphire_may_front_pic.4bpp.lz"); -const u32 gTrainerPalette_RubySapphireMay[] = INCBIN_U32("graphics/trainers/palettes/ruby_sapphire_may.gbapal.lz"); +const u32 gTrainerFrontPic_RubySapphireMay[] = INCBIN_U32("graphics/trainers/front_pics/may_rs.4bpp.lz"); +const u32 gTrainerPalette_RubySapphireMay[] = INCBIN_U32("graphics/trainers/palettes/may_rs.gbapal.lz"); -const u8 gTrainerBackPic_Brendan[] = INCBIN_U8("graphics/trainers/back_pics/brendan_back_pic.4bpp"); -const u8 gTrainerBackPic_May[] = INCBIN_U8("graphics/trainers/back_pics/may_back_pic.4bpp"); -const u8 gTrainerBackPic_Red[] = INCBIN_U8("graphics/trainers/back_pics/red_back_pic.4bpp"); -const u8 gTrainerBackPic_Leaf[] = INCBIN_U8("graphics/trainers/back_pics/leaf_back_pic.4bpp"); -const u8 gTrainerBackPic_RubySapphireBrendan[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_brendan_back_pic.4bpp"); -const u8 gTrainerBackPic_RubySapphireMay[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_may_back_pic.4bpp"); -const u8 gTrainerBackPic_Wally[] = INCBIN_U8("graphics/trainers/back_pics/wally_back_pic.4bpp"); -const u8 gTrainerBackPic_Steven[] = INCBIN_U8("graphics/trainers/back_pics/steven_back_pic.4bpp"); +const u8 gTrainerBackPic_Brendan[] = INCBIN_U8("graphics/trainers/back_pics/brendan.4bpp"); +const u8 gTrainerBackPic_May[] = INCBIN_U8("graphics/trainers/back_pics/may.4bpp"); +const u8 gTrainerBackPic_Red[] = INCBIN_U8("graphics/trainers/back_pics/red.4bpp"); +const u8 gTrainerBackPic_Leaf[] = INCBIN_U8("graphics/trainers/back_pics/leaf.4bpp"); +const u8 gTrainerBackPic_RubySapphireBrendan[] = INCBIN_U8("graphics/trainers/back_pics/brendan_rs.4bpp"); +const u8 gTrainerBackPic_RubySapphireMay[] = INCBIN_U8("graphics/trainers/back_pics/may_rs.4bpp"); +const u8 gTrainerBackPic_Wally[] = INCBIN_U8("graphics/trainers/back_pics/wally.4bpp"); +const u8 gTrainerBackPic_Steven[] = INCBIN_U8("graphics/trainers/back_pics/steven.4bpp"); -const u32 gTrainerBackPicPalette_Red[] = INCBIN_U32("graphics/trainers/palettes/red_back_pic.gbapal.lz"); -const u32 gTrainerBackPicPalette_Leaf[] = INCBIN_U32("graphics/trainers/palettes/leaf_back_pic.gbapal.lz"); +const u32 gTrainerBackPicPalette_Red[] = INCBIN_U32("graphics/trainers/back_pics/red.gbapal.lz"); +const u32 gTrainerBackPicPalette_Leaf[] = INCBIN_U32("graphics/trainers/back_pics/leaf.gbapal.lz"); From 584bfe022192f6e68ae202c40febc1dc7839db4e Mon Sep 17 00:00:00 2001 From: sbird Date: Tue, 6 Sep 2022 13:40:29 +0200 Subject: [PATCH 720/762] [debug] add support for mgba printf * adds support for mgba printf debugging as well as adding support for switching between debugging configuration * adds `mini_printf` as an alternative to libc printf as well as switches to choose a pretty printing handler * adds a pretty printing format to `mini_printf` to print preproc encoded strings --- include/config.h | 29 +++- include/gba/isagbprint.h | 68 ++++---- include/mini_printf.h | 52 ++++++ src/libisagbprn.c | 134 ++++++++++++++- src/main.c | 7 + src/mini_printf.c | 353 +++++++++++++++++++++++++++++++++++++++ 6 files changed, 603 insertions(+), 40 deletions(-) create mode 100644 include/mini_printf.h create mode 100644 src/mini_printf.c diff --git a/include/config.h b/include/config.h index 5f2fa4d2cc9e..4e2ee21bd18f 100644 --- a/include/config.h +++ b/include/config.h @@ -8,12 +8,31 @@ // Ruby's actual debug build does not use the AGBPrint features. #define NDEBUG -// To enable print debugging, comment out "#define NDEBUG". This allows +// To enable printf debugging, comment out "#define NDEBUG". This allows // the various AGBPrint functions to be used. (See include/gba/isagbprint.h). -// Some emulators support a debug console window: uncomment NoCashGBAPrint() -// and NoCashGBAPrintf() in libisagbprn.c to use no$gba's own proprietary -// printing system. Use NoCashGBAPrint() and NoCashGBAPrintf() like you -// would normally use AGBPrint() and AGBPrintf(). +// See below for enabling different pretty printing versions. + +#ifndef NDEBUG + +#define PRETTY_PRINT_MINI_PRINTF (0) +#define PRETTY_PRINT_LIBC (1) + +#define LOG_HANDLER_AGB_PRINT (0) +#define LOG_HANDLER_NOCASH_PRINT (1) +#define LOG_HANDLER_MGBA_PRINT (2) + +// Use this switch to choose a handler for pretty printing. +// NOTE: mini_printf supports a custom pretty printing formatter to display preproc encoded strings. (%S) +// some libc distributions (especially dkp arm-libc) will fail to link pretty printing. +#define PRETTY_PRINT_HANDLER (PRETTY_PRINT_MINI_PRINTF) + +// Use this switch to choose a handler for printf output. +// NOTE: These will only work on the respective emulators and should not be used in a productive environment. +// Some emulators or real hardware might (and is allowed to) crash if they are used. +// AGB_PRINT is supported on respective debug units. + +#define LOG_HANDLER (LOG_HANDLER_MGBA_PRINT) +#endif #define ENGLISH diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 13687825ef80..abe7fb2107fa 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -1,36 +1,50 @@ #ifndef GUARD_GBA_ISAGBPRINT_H #define GUARD_GBA_ISAGBPRINT_H +#include "gba/types.h" + #ifdef NDEBUG +#define DebugPrintf(pBuf, ...) +#define MgbaOpen() +#define MgbaClose() +#define AGB_ASSERT(exp) +#define AGB_WARNING(exp) #define AGBPrintInit() -#define AGBPutc(cChr) -#define AGBPrint(pBuf) -#define AGBPrintf(pBuf, ...) -#define AGBPrintFlush1Block() -#define AGBPrintFlush() -#define AGBAssert(pFile, nLine, pExpression, nStopProgram) #else -void AGBPrintInit(void); -void AGBPutc(const char cChr); -void AGBPrint(const char *pBuf); +#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) +bool32 MgbaOpen(void); +void MgbaClose(void); +void MgbaPrintf(const char *pBuf, ...); +void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); +#define DebugPrintf(pBuf, ...) MgbaPrintf(pBuf, __VA_ARGS__) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, 1) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, 0) + +// Not used in this configuration +#define AGBPrintfInit() +#elif (LOG_HANDLER == LOG_HANDLER_NOCASH_PRINT) +void NoCashGBAPrintf(const char *pBuf, ...) +void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) +#define DebugPrintf(pBuf, ...) NoCashGBAPrintf(pBuf, __VA_ARGS__) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 1); +#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 0) + +// Not used in this configuration +#define MgbaOpen() +#define MgbaClose() +#define AGBPrintInit() +#else // Default to AGBPrint void AGBPrintf(const char *pBuf, ...); -void AGBPrintFlush1Block(void); -void AGBPrintFlush(void); void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram); -#endif +void AGBPrintInit(void); +#define DebugPrintf(pBuf, ...) AGBPrintf(const char *pBuf, ...) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 0) -#undef AGB_ASSERT -#ifdef NDEBUG -#define AGB_ASSERT(exp) -#else -#define AGB_ASSERT(exp) (exp) ? ((void *)0) : AGBAssert(__FILE__, __LINE__, #exp, 1); +// Not used in this configuration +#define MgbaOpen() +#define MgbaClose() #endif - -#undef AGB_WARNING -#ifdef NDEBUG -#define AGB_WARNING(exp) -#else -#define AGB_WARNING(exp) (exp) ? ((void *)0) : AGBAssert(__FILE__, __LINE__, #exp, 0); #endif // for matching purposes @@ -38,13 +52,7 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP #ifdef NDEBUG #define AGB_ASSERT_EX(exp, file, line) #else -#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void *)0) : AGBAssert(file, line, #exp, 1); -#endif - -#ifdef NDEBUG -#define AGB_WARNING_EX(exp, file, line) -#else -#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void *)0) : AGBAssert(file, line, #exp, 0); +#define AGB_ASSERT_EX(exp, file, line) AGB_ASSERT(exp); #endif #endif // GUARD_GBA_ISAGBPRINT_H diff --git a/include/mini_printf.h b/include/mini_printf.h new file mode 100644 index 000000000000..a891327cc432 --- /dev/null +++ b/include/mini_printf.h @@ -0,0 +1,52 @@ +/* + * The Minimal snprintf() implementation + * + * Copyright (c) 2013 Michal Ludvig + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the auhor nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * Courtey of https://github.com/mludvig/mini-printf + * stripped to reduce file size for agb needs + */ + +#ifndef __MINI_PRINTF__ +#define __MINI_PRINTF__ + +#include +#include "gba/types.h" + +#ifdef NDEBUG + +#define mini_vsnprintf(buffer, buffer_len, fmt, va) +#define mini_vpprintf(buf, fmt, va) + +#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); + +#endif +#endif diff --git a/src/libisagbprn.c b/src/libisagbprn.c index 6fb9d5ec084b..0dbaec157d4e 100644 --- a/src/libisagbprn.c +++ b/src/libisagbprn.c @@ -2,6 +2,8 @@ #include #include "gba/gba.h" #include "config.h" +#include "malloc.h" +#include "mini_printf.h" #define AGB_PRINT_FLUSH_ADDR 0x9FE209D #define AGB_PRINT_STRUCT_ADDR 0x9FE20F8 @@ -14,6 +16,11 @@ #define NOCASHGBAPRINTADDR1 0x4FFFA10 // automatically adds a newline after the string has finished #define NOCASHGBAPRINTADDR2 0x4FFFA14 // does not automatically add the newline. by default, NOCASHGBAPRINTADDR2 is used. this is used to keep strings consistent between no$gba and VBA-RR, but a user can choose to forgo this. +// hardware extensions for LOG_HANDLER_MGBA_PRINT +#define REG_DEBUG_ENABLE ((vu16*) (0x4FFF780)) // handshake: (w)[0xC0DE] -> (r)[0x1DEA] +#define REG_DEBUG_FLAGS ((vu16*) (0x4FFF700)) +#define REG_DEBUG_STRING ((char*) (0x4FFF600)) + struct AGBPrintStruct { u16 m_nRequest; @@ -26,6 +33,8 @@ typedef void (*LPFN_PRINT_FLUSH)(void); #ifndef NDEBUG +// AGBPrint print functions +#if (LOG_HANDLER == LOG_HANDLER_AGB_PRINT) void AGBPrintFlush1Block(void); void AGBPrintInit(void) @@ -87,7 +96,13 @@ void AGBPrintf(const char *pBuf, ...) char bufPrint[0x100]; va_list vArgv; va_start(vArgv, pBuf); - vsprintf(bufPrint, pBuf, vArgv); + #if (PRETTY_PRINT_HANDLER == PRETTY_PRINT_MINI_PRINTF) + mini_vsnprintf(bufPrint, 0x100, pBuf, vArgv); + #elif (PRETTY_PRINT_HANDLER == PRETTY_PRINT_LIBC) + vsnprintf(bufPrint, 0x100, pBuf, vArgv); + #else + #error "unspecified pretty printing handler." + #endif va_end(vArgv); AGBPrint(bufPrint); } @@ -155,9 +170,10 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP AGBPrintf("WARING FILE=[%s] LINE=[%d] EXP=[%s] \n", pFile, nLine, pExpression); } } +#endif -// no$gba print functions, uncomment to use -/* +// no$gba print functions +#if (LOG_HANDLER == LOG_HANDLER_NOCASH_PRINT) void NoCashGBAPrint(const char *pBuf) { *(volatile u32 *)NOCASHGBAPRINTADDR2 = (u32)pBuf; @@ -168,10 +184,118 @@ void NoCashGBAPrintf(const char *pBuf, ...) char bufPrint[0x100]; va_list vArgv; va_start(vArgv, pBuf); - vsprintf(bufPrint, pBuf, vArgv); + #if (PRETTY_PRINT_HANDLER == PRETTY_PRINT_MINI_PRINTF) + mini_vsnprintf(bufPrint, 0x100, pBuf, vArgv); + #elif (PRETTY_PRINT_HANDLER == PRETTY_PRINT_LIBC) + vsnprintf(bufPrint, 0x100, pBuf, vArgv); + #else + #error "unspecified pretty printing handler." + #endif va_end(vArgv); NoCashGBAPrint(bufPrint); } -*/ +void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) +{ + if (nStopProgram) + { + NoCashGBAPrintf("ASSERTION FAILED FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + asm(".hword 0xEFFF"); + } + else + { + NoCashGBAPrintf("WARING FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + } +} +#endif + +// mgba print functions +#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) +#define MGBA_PRINTF_BUFFER_SIZE (4096) + +#define MGBA_LOG_FATAL (0) +#define MGBA_LOG_ERROR (1) +#define MGBA_LOG_WARN (2) +#define MGBA_LOG_INFO (3) +#define MGBA_LOG_DEBUG (4) + +#define MGBA_REG_DEBUG_MAX (256) + +bool32 MgbaOpen(void) +{ + *REG_DEBUG_ENABLE = 0xC0DE; + return *REG_DEBUG_ENABLE == 0x1DEA; +} + +void MgbaClose(void) +{ + *REG_DEBUG_ENABLE = 0; +} + +static void MgbaPrintfBounded(s32 level, const char* ptr, ...) +{ + va_list args; + + level &= 0x7; + va_start(args, ptr); + #if (PRETTY_PRINT_HANDLER == PRETTY_PRINT_MINI_PRINTF) + mini_vsnprintf(REG_DEBUG_STRING, MGBA_REG_DEBUG_MAX, ptr, args); + #elif (PRETTY_PRINT_HANDLER == PRETTY_PRINT_LIBC) + vsnprintf(REG_DEBUG_STRING, MGBA_REG_DEBUG_MAX, ptr, args); + #else + #error "unspecified pretty printing handler." + #endif + va_end(args); + *REG_DEBUG_FLAGS = level | 0x100; +} + +void MgbaPrintf(const char* ptr, ...) +{ + va_list args; + u32 offset = 0; + u32 n = 0; + u32 i; + char *buffer = Alloc(MGBA_PRINTF_BUFFER_SIZE); + AGB_ASSERT(buffer != NULL); + + va_start(args, ptr); + #if (PRETTY_PRINT_HANDLER == PRETTY_PRINT_MINI_PRINTF) + n = mini_vsnprintf(buffer, MGBA_PRINTF_BUFFER_SIZE, ptr, args); + #elif (PRETTY_PRINT_HANDLER == PRETTY_PRINT_LIBC) + n = vsnprintf(buffer, MGBA_PRINTF_BUFFER_SIZE, ptr, args); + #else + #error "unspecified pretty printing handler." + #endif + va_end(args); + + AGB_ASSERT(n < MGBA_PRINTF_BUFFER_SIZE); + + do + { + for (i = 0; i < MGBA_REG_DEBUG_MAX; ++i) + { + REG_DEBUG_STRING[i] = buffer[offset + i]; + if (buffer[offset + i] == 0) + break; + } + offset += i; + *REG_DEBUG_FLAGS = MGBA_LOG_INFO | 0x100; + } while ((i == MGBA_REG_DEBUG_MAX) && (buffer[offset] != '\0')); + + Free(buffer); +} + +void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) +{ + if (nStopProgram) + { + MgbaPrintfBounded(MGBA_LOG_ERROR, "ASSERTION FAILED FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + asm(".hword 0xEFFF"); + } + else + { + MgbaPrintfBounded(MGBA_LOG_WARN, "WARING FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + } +} +#endif #endif diff --git a/src/main.c b/src/main.c index 5fd236447bb9..a0ff6452a617 100644 --- a/src/main.c +++ b/src/main.c @@ -119,6 +119,13 @@ void AgbMain() gLinkTransferringData = FALSE; sUnusedVar = 0xFC0; +#ifndef NDEBUG +#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) + (void) MgbaOpen(); +#elif (LOG_HANDLER == LOG_HANDLER_AGB_PRINT) + AGBPrintfInit(); +#endif +#endif for (;;) { ReadKeys(); diff --git a/src/mini_printf.c b/src/mini_printf.c new file mode 100644 index 000000000000..8345a3935e72 --- /dev/null +++ b/src/mini_printf.c @@ -0,0 +1,353 @@ +/* + * The Minimal snprintf() implementation + * + * Copyright (c) 2013,2014 Michal Ludvig + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the auhor nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * mini-printf courtesy of https://github.com/mludvig/mini-printf + * stripped to reduce file size for agb needs + */ + +#include "mini_printf.h" +#include "gba/types.h" +#include "gba/defines.h" +#include "config.h" +#include "characters.h" +#include "string_util.h" + +#ifndef NDEBUG + +struct mini_buff +{ + char *buffer, *pbuffer; + u32 buffer_len; +}; + +static inline char mini_pchar_decode(char encoded) +{ + char ret = '?'; + if (encoded >= CHAR_a && encoded <= CHAR_z) + ret = encoded-(CHAR_a-'a'); // lower-case characters + else if (encoded >= CHAR_A && encoded <= CHAR_Z) + ret = encoded-(CHAR_A-'A'); // upper-case characters + else if (encoded >= CHAR_0 && encoded <= CHAR_9) + ret = encoded-(CHAR_0-'0'); // numbers + else if (encoded == CHAR_SPACE) + ret = ' '; // space + else if (encoded == CHAR_EXCL_MARK) + ret = '!'; // exclamation point + else if (encoded == CHAR_QUESTION_MARK) + ret = '?'; // question mark + else if (encoded == CHAR_PERIOD) + ret = '.'; // period + else if (encoded == CHAR_DBL_QUOTE_LEFT || encoded == CHAR_DBL_QUOTE_RIGHT) + ret = '"'; // double quote + else if (encoded == CHAR_SGL_QUOTE_LEFT || encoded == CHAR_SGL_QUOTE_RIGHT) + ret = '\''; // single quote + else if (encoded == CHAR_CURRENCY) + ret = '$'; // currency mark (pokemonies in game, dollar sign in logs) + else if (encoded == CHAR_COMMA) + ret = ','; // comma + else if (encoded == CHAR_MULT_SIGN) + ret = '#'; // pound, hashtag, octothorpe, whatever + else if (encoded == CHAR_SLASH) + ret = '/'; // slash + else if (encoded == CHAR_LESS_THAN) + ret = '<'; // less than sign + else if (encoded == CHAR_GREATER_THAN) + ret = '>'; // greater than sign + else if (encoded == CHAR_PERCENT) + ret = '%'; // percentage + else if (encoded == CHAR_LEFT_PAREN) + ret = '('; // opening parentheses + else if (encoded == CHAR_RIGHT_PAREN) + ret = ')'; // closing parentheses + return ret; +} + +static s32 _putsAscii(char *s, s32 len, void *buf) +{ + char *p0; + s32 i; + struct mini_buff *b; + + if (!buf) + return len; + + b = buf; + p0 = b->buffer; + + /* Copy to buffer */ + for (i = 0; i < len; i++) { + if(b->pbuffer == b->buffer + b->buffer_len - 1) { + break; + } + *(b->pbuffer ++) = s[i]; + } + *(b->pbuffer) = 0; + return b->pbuffer - p0; +} + +static s32 _putsEncoded(char *s, s32 len, void *buf) +{ + char *p0; + s32 i; + struct mini_buff *b; + + if (!buf) + return len; + + b = buf; + p0 = b->buffer; + + /* Copy to buffer */ + for (i = 0; i < len; i++) { + if(b->pbuffer == b->buffer + b->buffer_len - 1) { + break; + } + *(b->pbuffer ++) = mini_pchar_decode(s[i]); + } + *(b->pbuffer) = 0; + return b->pbuffer - p0; +} + +static s32 mini_strlen(const char *s) +{ + s32 len = 0; + while (s[len] != '\0') len++; + return len; +} + +static s32 mini_itoa(u32 value, u32 radix, s32 uppercase, bool32 unsig, char *buffer) +{ + char *pbuffer = buffer; + s32 negative = 0; + s32 i, len; + + /* No support for unusual radixes. */ + if (radix > 16) + return 0; + + if (value < 0 && !unsig) + { + negative = 1; + value = -value; + } + + /* This builds the string back to front ... */ + do + { + s32 digit = value % radix; + *(pbuffer++) = (digit < 10 ? '0' + digit : (uppercase ? 'A' : 'a') + digit - 10); + value /= radix; + } while (value > 0); + + if (negative) + *(pbuffer++) = '-'; + + *(pbuffer) = '\0'; + + /* ... now we reverse it (could do it recursively but will + * conserve the stack space) */ + len = (pbuffer - buffer); + for (i = 0; i < len / 2; i++) + { + char j = buffer[i]; + buffer[i] = buffer[len-i-1]; + buffer[len-i-1] = j; + } + + return len; +} + +static s32 mini_pad(char* ptr, s32 len, char pad_char, s32 pad_to, char *buffer) +{ + s32 i; + bool32 overflow = FALSE; + char * pbuffer = buffer; + if(pad_to == 0) + pad_to = len; + if (len > pad_to) { + len = pad_to; + overflow = TRUE; + } + for(i = pad_to - len; i > 0; i --) + { + *(pbuffer++) = pad_char; + } + for(i = len; i > 0; i --) + { + *(pbuffer++) = *(ptr++); + } + len = pbuffer - buffer; + if(overflow) + { + for (i = 0; i < 3 && pbuffer > buffer; i ++) + { + *(pbuffer-- - 1) = '*'; + } + } + return len; +} + +s32 mini_vsnprintf(char *buffer, u32 buffer_len, const char *fmt, va_list va) +{ + struct mini_buff b; + s32 n; + b.buffer = buffer; + b.pbuffer = buffer; + b.buffer_len = buffer_len; + if (buffer_len == 0) + buffer = NULL; + n = mini_vpprintf((buffer != NULL) ? &b : NULL, fmt, va); + if (buffer == NULL) + return n; + return b.pbuffer - b.buffer; +} + +s32 mini_vpprintf(void* buf, const char *fmt, va_list va) +{ + char bf[24]; + char bf2[24]; + char ch; + s32 n; + n = 0; + while ((ch=*(fmt++))) + { + s32 len; + if (ch != '%') + { + len = 1; + len = _putsAscii(&ch, len, buf); + } else + { + char pad_char = ' '; + s32 pad_to = 0; + char l = 0; + char *ptr; + + ch=*(fmt++); + + /* Zero padding requested */ + if (ch == '0') + pad_char = '0'; + while (ch >= '0' && ch <= '9') + { + pad_to = pad_to * 10 + (ch - '0'); + ch= *(fmt++); + } + if(pad_to > (s32) sizeof(bf)) + { + pad_to = sizeof(bf); + } + if (ch == 'l') + { + l = 1; + ch=*(fmt++); + } + + switch (ch) + { + case 0: + goto end; + case 'u': + case 'd': + if(l) + { + len = mini_itoa(va_arg(va, u32), 10, 0, (ch=='u'), bf2); + } else + { + if(ch == 'u') + { + len = mini_itoa((u32) va_arg(va, u32), 10, 0, 1, bf2); + } + else + { + len = mini_itoa((s32) va_arg(va, s32), 10, 0, 0, bf2); + } + } + len = mini_pad(bf2, len, pad_char, pad_to, bf); + len = _putsAscii(bf, len, buf); + break; + + case 'x': + case 'X': + if(l) + { + len = mini_itoa(va_arg(va, u32), 16, (ch=='X'), 1, bf2); + } + else + { + len = mini_itoa((u32) va_arg(va, u32), 16, (ch=='X'), 1, bf2); + } + len = mini_pad(bf2, len, pad_char, pad_to, bf); + len = _putsAscii(bf, len, buf); + break; + + case 'c' : + ch = (char)(va_arg(va, s32)); + len = mini_pad(&ch, 1, pad_char, pad_to, bf); + len = _putsAscii(bf, len, buf); + break; + + case 's' : + ptr = va_arg(va, char*); + len = mini_strlen(ptr); + if (pad_to > 0) + { + len = mini_pad(ptr, len, pad_char, pad_to, bf); + len = _putsAscii(bf, len, buf); + } else + { + len = _putsAscii(ptr, len, buf); + } + break; + case 'S' : // preproc encoded string handler + ptr = va_arg(va, char*); + len = StringLength(ptr); + if (pad_to > 0) + { + len = mini_pad(ptr, len, pad_char, pad_to, bf); + len = _putsEncoded(bf, len, buf); + } else + { + len = _putsEncoded(ptr, len, buf); + } + break; + default: + len = 1; + len = _putsAscii(&ch, len, buf); + break; + } + } + n = n + len; + } +end: + return n; +} + +#endif From 12bb32666b558c3b5b68c7652f03d87483d272a6 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Tue, 6 Sep 2022 17:05:56 -0400 Subject: [PATCH 721/762] Aligned FRONTIER_MONS trainer macros with the rest for consistency --- .../battle_frontier_trainer_mons.h | 198 +++++++++--------- 1 file changed, 99 insertions(+), 99 deletions(-) diff --git a/src/data/battle_frontier/battle_frontier_trainer_mons.h b/src/data/battle_frontier/battle_frontier_trainer_mons.h index efd9ef84dd66..625a602658c5 100644 --- a/src/data/battle_frontier/battle_frontier_trainer_mons.h +++ b/src/data/battle_frontier/battle_frontier_trainer_mons.h @@ -1,67 +1,67 @@ // Also used by early Pkmn Breeder, Collector, and Beauty trainers #define FRONTIER_MONS_YOUNGSTER_LASS_1 \ - FRONTIER_MON_SUNKERN, \ - FRONTIER_MON_AZURILL, \ - FRONTIER_MON_CATERPIE, \ - FRONTIER_MON_WEEDLE, \ - FRONTIER_MON_WURMPLE, \ - FRONTIER_MON_RALTS, \ - FRONTIER_MON_MAGIKARP, \ - FRONTIER_MON_FEEBAS, \ - FRONTIER_MON_PICHU, \ - FRONTIER_MON_IGGLYBUFF, \ - FRONTIER_MON_WOOPER, \ - FRONTIER_MON_TYROGUE, \ - FRONTIER_MON_SENTRET, \ - FRONTIER_MON_CLEFFA, \ - FRONTIER_MON_SEEDOT, \ - FRONTIER_MON_LOTAD, \ - FRONTIER_MON_POOCHYENA, \ - FRONTIER_MON_SHEDINJA, \ - FRONTIER_MON_MAKUHITA, \ - FRONTIER_MON_WHISMUR, \ - FRONTIER_MON_ZIGZAGOON, \ - FRONTIER_MON_ZUBAT, \ - FRONTIER_MON_TOGEPI, \ - FRONTIER_MON_SPINARAK, \ - FRONTIER_MON_MARILL, \ - FRONTIER_MON_HOPPIP, \ - FRONTIER_MON_SLUGMA, \ - FRONTIER_MON_SWINUB, \ - FRONTIER_MON_SMEARGLE, \ - FRONTIER_MON_PIDGEY, \ - FRONTIER_MON_RATTATA, \ - FRONTIER_MON_WYNAUT, \ - FRONTIER_MON_SKITTY, \ - FRONTIER_MON_SPEAROW, \ - FRONTIER_MON_HOOTHOOT, \ - FRONTIER_MON_DIGLETT, \ - FRONTIER_MON_LEDYBA, \ - FRONTIER_MON_NINCADA, \ - FRONTIER_MON_SURSKIT, \ - FRONTIER_MON_JIGGLYPUFF, \ - FRONTIER_MON_TAILLOW, \ - FRONTIER_MON_WINGULL, \ - FRONTIER_MON_NIDORAN_M, \ - FRONTIER_MON_NIDORAN_F, \ - FRONTIER_MON_KIRLIA, \ - FRONTIER_MON_MAREEP, \ - FRONTIER_MON_MEDITITE, \ - FRONTIER_MON_SLAKOTH, \ - FRONTIER_MON_PARAS, \ - FRONTIER_MON_EKANS, \ - FRONTIER_MON_DITTO, \ - FRONTIER_MON_BARBOACH, \ - FRONTIER_MON_MEOWTH, \ - FRONTIER_MON_PINECO, \ - FRONTIER_MON_TRAPINCH, \ - FRONTIER_MON_SPHEAL, \ - FRONTIER_MON_HORSEA, \ - FRONTIER_MON_SHROOMISH, \ - FRONTIER_MON_SHUPPET, \ - FRONTIER_MON_DUSKULL, \ - FRONTIER_MON_ELECTRIKE, \ - FRONTIER_MON_VULPIX, \ + FRONTIER_MON_SUNKERN, \ + FRONTIER_MON_AZURILL, \ + FRONTIER_MON_CATERPIE, \ + FRONTIER_MON_WEEDLE, \ + FRONTIER_MON_WURMPLE, \ + FRONTIER_MON_RALTS, \ + FRONTIER_MON_MAGIKARP, \ + FRONTIER_MON_FEEBAS, \ + FRONTIER_MON_PICHU, \ + FRONTIER_MON_IGGLYBUFF, \ + FRONTIER_MON_WOOPER, \ + FRONTIER_MON_TYROGUE, \ + FRONTIER_MON_SENTRET, \ + FRONTIER_MON_CLEFFA, \ + FRONTIER_MON_SEEDOT, \ + FRONTIER_MON_LOTAD, \ + FRONTIER_MON_POOCHYENA, \ + FRONTIER_MON_SHEDINJA, \ + FRONTIER_MON_MAKUHITA, \ + FRONTIER_MON_WHISMUR, \ + FRONTIER_MON_ZIGZAGOON, \ + FRONTIER_MON_ZUBAT, \ + FRONTIER_MON_TOGEPI, \ + FRONTIER_MON_SPINARAK, \ + FRONTIER_MON_MARILL, \ + FRONTIER_MON_HOPPIP, \ + FRONTIER_MON_SLUGMA, \ + FRONTIER_MON_SWINUB, \ + FRONTIER_MON_SMEARGLE, \ + FRONTIER_MON_PIDGEY, \ + FRONTIER_MON_RATTATA, \ + FRONTIER_MON_WYNAUT, \ + FRONTIER_MON_SKITTY, \ + FRONTIER_MON_SPEAROW, \ + FRONTIER_MON_HOOTHOOT, \ + FRONTIER_MON_DIGLETT, \ + FRONTIER_MON_LEDYBA, \ + FRONTIER_MON_NINCADA, \ + FRONTIER_MON_SURSKIT, \ + FRONTIER_MON_JIGGLYPUFF, \ + FRONTIER_MON_TAILLOW, \ + FRONTIER_MON_WINGULL, \ + FRONTIER_MON_NIDORAN_M, \ + FRONTIER_MON_NIDORAN_F, \ + FRONTIER_MON_KIRLIA, \ + FRONTIER_MON_MAREEP, \ + FRONTIER_MON_MEDITITE, \ + FRONTIER_MON_SLAKOTH, \ + FRONTIER_MON_PARAS, \ + FRONTIER_MON_EKANS, \ + FRONTIER_MON_DITTO, \ + FRONTIER_MON_BARBOACH, \ + FRONTIER_MON_MEOWTH, \ + FRONTIER_MON_PINECO, \ + FRONTIER_MON_TRAPINCH, \ + FRONTIER_MON_SPHEAL, \ + FRONTIER_MON_HORSEA, \ + FRONTIER_MON_SHROOMISH, \ + FRONTIER_MON_SHUPPET, \ + FRONTIER_MON_DUSKULL, \ + FRONTIER_MON_ELECTRIKE, \ + FRONTIER_MON_VULPIX, \ -1 // Also used by early Pkmn Breeder, Collector, and Beauty trainers @@ -113,43 +113,43 @@ -1 #define FRONTIER_MONS_RICH_BOY_LADY_1 \ - FRONTIER_MON_RALTS, \ - FRONTIER_MON_POOCHYENA, \ - FRONTIER_MON_SHEDINJA, \ - FRONTIER_MON_ZUBAT, \ - FRONTIER_MON_SPINARAK, \ - FRONTIER_MON_WYNAUT, \ - FRONTIER_MON_NIDORAN_M, \ - FRONTIER_MON_NIDORAN_F, \ - FRONTIER_MON_KIRLIA, \ - FRONTIER_MON_MEDITITE, \ - FRONTIER_MON_EKANS, \ - FRONTIER_MON_SHUPPET, \ - FRONTIER_MON_DUSKULL, \ - FRONTIER_MON_BELLSPROUT, \ - FRONTIER_MON_BALTOY, \ - FRONTIER_MON_BELDUM, \ - FRONTIER_MON_GULPIN, \ - FRONTIER_MON_VENONAT, \ - FRONTIER_MON_SMOOCHUM, \ - FRONTIER_MON_ABRA, \ - FRONTIER_MON_GASTLY, \ - FRONTIER_MON_SLOWPOKE, \ - FRONTIER_MON_BULBASAUR, \ - FRONTIER_MON_ODDISH, \ - FRONTIER_MON_NATU, \ - FRONTIER_MON_GRIMER, \ - FRONTIER_MON_EXEGGCUTE, \ - FRONTIER_MON_DROWZEE, \ - FRONTIER_MON_HOUNDOUR, \ - FRONTIER_MON_SPOINK, \ - FRONTIER_MON_TENTACOOL, \ - FRONTIER_MON_KOFFING, \ - FRONTIER_MON_NIDORINA, \ - FRONTIER_MON_NIDORINO, \ - FRONTIER_MON_BEEDRILL, \ - FRONTIER_MON_DUSTOX, \ - FRONTIER_MON_ARIADOS, \ + FRONTIER_MON_RALTS, \ + FRONTIER_MON_POOCHYENA, \ + FRONTIER_MON_SHEDINJA, \ + FRONTIER_MON_ZUBAT, \ + FRONTIER_MON_SPINARAK, \ + FRONTIER_MON_WYNAUT, \ + FRONTIER_MON_NIDORAN_M, \ + FRONTIER_MON_NIDORAN_F, \ + FRONTIER_MON_KIRLIA, \ + FRONTIER_MON_MEDITITE, \ + FRONTIER_MON_EKANS, \ + FRONTIER_MON_SHUPPET, \ + FRONTIER_MON_DUSKULL, \ + FRONTIER_MON_BELLSPROUT, \ + FRONTIER_MON_BALTOY, \ + FRONTIER_MON_BELDUM, \ + FRONTIER_MON_GULPIN, \ + FRONTIER_MON_VENONAT, \ + FRONTIER_MON_SMOOCHUM, \ + FRONTIER_MON_ABRA, \ + FRONTIER_MON_GASTLY, \ + FRONTIER_MON_SLOWPOKE, \ + FRONTIER_MON_BULBASAUR, \ + FRONTIER_MON_ODDISH, \ + FRONTIER_MON_NATU, \ + FRONTIER_MON_GRIMER, \ + FRONTIER_MON_EXEGGCUTE, \ + FRONTIER_MON_DROWZEE, \ + FRONTIER_MON_HOUNDOUR, \ + FRONTIER_MON_SPOINK, \ + FRONTIER_MON_TENTACOOL, \ + FRONTIER_MON_KOFFING, \ + FRONTIER_MON_NIDORINA, \ + FRONTIER_MON_NIDORINO, \ + FRONTIER_MON_BEEDRILL, \ + FRONTIER_MON_DUSTOX, \ + FRONTIER_MON_ARIADOS, \ -1 // Also used by early Pkmn Breeder, Collector, and Beauty trainers From 3a0759d458a711196739a7397248cdf1d34069e9 Mon Sep 17 00:00:00 2001 From: sbird Date: Wed, 7 Sep 2022 14:37:03 +0200 Subject: [PATCH 722/762] [doc] fix misnamed dma <--> aslr --- include/load_save.h | 18 +++++++++--------- src/load_save.c | 10 +++++----- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/include/load_save.h b/include/load_save.h index 309e62e2b4f7..389bd5a2b925 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -10,24 +10,24 @@ * toolchains. If this is not done, the ClearSav functions will end up erasing * the wrong memory leading to various glitches. */ -struct SaveBlock2DMA { +struct SaveBlock2ASLR { struct SaveBlock2 block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -struct SaveBlock1DMA { +struct SaveBlock1ASLR { struct SaveBlock1 block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -struct PokemonStorageDMA { +struct PokemonStorageASLR { struct PokemonStorage block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -extern struct SaveBlock1DMA gSaveblock1; -extern struct SaveBlock2DMA gSaveblock2; -extern struct PokemonStorageDMA gPokemonStorage; +extern struct SaveBlock1ASLR gSaveblock1; +extern struct SaveBlock2ASLR gSaveblock2; +extern struct PokemonStorageASLR gPokemonStorage; extern bool32 gFlashMemoryPresent; extern struct SaveBlock1 *gSaveBlock1Ptr; diff --git a/src/load_save.c b/src/load_save.c index 494a61bcf292..44e08b5e9c46 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -29,9 +29,9 @@ struct LoadedSaveData }; // EWRAM DATA -EWRAM_DATA struct SaveBlock2DMA gSaveblock2 = {0}; -EWRAM_DATA struct SaveBlock1DMA gSaveblock1 = {0}; -EWRAM_DATA struct PokemonStorageDMA gPokemonStorage = {0}; +EWRAM_DATA struct SaveBlock2ASLR gSaveblock2 = {0}; +EWRAM_DATA struct SaveBlock1ASLR gSaveblock1 = {0}; +EWRAM_DATA struct PokemonStorageASLR gPokemonStorage = {0}; EWRAM_DATA struct LoadedSaveData gLoadedSaveData = {0}; EWRAM_DATA u32 gLastEncryptionKey = 0; @@ -58,12 +58,12 @@ void CheckForFlashMemory(void) void ClearSav2(void) { - CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2DMA)); + CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2ASLR)); } void ClearSav1(void) { - CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1DMA)); + CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1ASLR)); } // Offset is the sum of the trainer id bytes From 05c13614c64ecc79b4aabf455e0c073a9f9424ae Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Wed, 7 Sep 2022 13:41:48 -0300 Subject: [PATCH 723/762] Undefined temporary preproc macro HIBYTE --- src/pokeball.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pokeball.c b/src/pokeball.c index b9f63e58068c..2633fd5740a0 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -977,6 +977,8 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite) } } +#undef HIBYTE + static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite) { if (sprite->data[0]++ > 24) From d58af1ba9217963706cefbae06a0eb0999ccd441 Mon Sep 17 00:00:00 2001 From: Jaizu Date: Thu, 8 Sep 2022 10:38:52 +0200 Subject: [PATCH 724/762] Fix 'y' actually being 'x' in CreatePCMultichoice --- src/script_menu.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/script_menu.c b/src/script_menu.c index d25f28cb2974..6633332f3fbc 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -328,7 +328,7 @@ bool16 ScriptMenu_CreatePCMultichoice(void) static void CreatePCMultichoice(void) { - u8 y = 8; + u8 x = 8; u32 pixelWidth = 0; u8 width; u8 numChoices; @@ -353,25 +353,25 @@ static void CreatePCMultichoice(void) numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); SetStandardWindowBorderStyle(windowId, FALSE); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, x, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 49, TEXT_SKIP_DRAW, NULL); } else { numChoices = 3; windowId = CreateWindowFromRect(0, 0, width, 6); SetStandardWindowBorderStyle(windowId, FALSE); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 33, TEXT_SKIP_DRAW, NULL); } // Change PC name if player has met Lanette if (FlagGet(FLAG_SYS_PC_LANETTE)) - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, x, 1, TEXT_SKIP_DRAW, NULL); else - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, x, 1, TEXT_SKIP_DRAW, NULL); StringExpandPlaceholders(gStringVar4, gText_PlayersPC); - PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); + PrintPlayerNameOnWindow(windowId, gStringVar4, x, 17); InitMenuInUpperLeftCornerNormal(windowId, numChoices, 0); CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC); From 1fa9bc1b5c5a2eed1f88462757968c3f8d1cb26b Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 8 Sep 2022 18:32:01 -0400 Subject: [PATCH 725/762] Adjusted style of coords tables --- .../pokemon_graphics/back_pic_coordinates.h | 2640 +++-------------- .../pokemon_graphics/front_pic_coordinates.h | 2640 +++-------------- 2 files changed, 880 insertions(+), 4400 deletions(-) diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index addb482851eb..43986dd9b038 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -4,2205 +4,445 @@ // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonBackPicCoords[] = { - [SPECIES_NONE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BULBASAUR] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_IVYSAUR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_VENUSAUR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CHARMANDER] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_CHARMELEON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_CHARIZARD] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SQUIRTLE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_WARTORTLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_BLASTOISE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CATERPIE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_METAPOD] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_BUTTERFREE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_WEEDLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_KAKUNA] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_BEEDRILL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_PIDGEY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_PIDGEOTTO] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_PIDGEOT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_RATTATA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_RATICATE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_SPEAROW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_FEAROW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_EKANS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_ARBOK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_RAICHU] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_SANDSHREW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_SANDSLASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_NIDORAN_F] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_NIDORINA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_NIDOQUEEN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_NIDORAN_M] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_NIDORINO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_NIDOKING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CLEFAIRY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_CLEFABLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_VULPIX] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_NINETALES] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_JIGGLYPUFF] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_WIGGLYTUFF] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_ZUBAT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_GOLBAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ODDISH] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_GLOOM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_VILEPLUME] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PARAS] = - { - .size = MON_COORDS_SIZE(48, 24), - .y_offset = 20, - }, - [SPECIES_PARASECT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_VENONAT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_VENOMOTH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_DIGLETT] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_DUGTRIO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MEOWTH] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_PERSIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PSYDUCK] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GOLDUCK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_MANKEY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_PRIMEAPE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GROWLITHE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_ARCANINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_POLIWAG] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 16, - }, - [SPECIES_POLIWHIRL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_POLIWRATH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_ABRA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_KADABRA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_ALAKAZAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_MACHOP] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_MACHOKE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_MACHAMP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_BELLSPROUT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_WEEPINBELL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_VICTREEBEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TENTACOOL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_TENTACRUEL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_GEODUDE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_GRAVELER] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_GOLEM] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_PONYTA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_RAPIDASH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SLOWPOKE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_SLOWBRO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_MAGNEMITE] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 20, - }, - [SPECIES_MAGNETON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_FARFETCHD] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_DODUO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_DODRIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SEEL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_DEWGONG] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_GRIMER] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_MUK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SHELLDER] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_CLOYSTER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GASTLY] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_HAUNTER] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_GENGAR] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_ONIX] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DROWZEE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_HYPNO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_KRABBY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_KINGLER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_VOLTORB] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_ELECTRODE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_EXEGGCUTE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_EXEGGUTOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_CUBONE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_MAROWAK] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_HITMONLEE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_HITMONCHAN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_LICKITUNG] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_KOFFING] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_WEEZING] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_RHYHORN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_RHYDON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CHANSEY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TANGELA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_KANGASKHAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_HORSEA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SEADRA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_GOLDEEN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_SEAKING] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_STARYU] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_STARMIE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_MR_MIME] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SCYTHER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_JYNX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ELECTABUZZ] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MAGMAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_PINSIR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_TAUROS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_MAGIKARP] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_GYARADOS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_LAPRAS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_DITTO] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_EEVEE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_VAPOREON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_JOLTEON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_FLAREON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_PORYGON] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_OMANYTE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_OMASTAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_KABUTO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_KABUTOPS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_AERODACTYL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SNORLAX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_ARTICUNO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_ZAPDOS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_MOLTRES] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_DRATINI] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_DRAGONAIR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DRAGONITE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_MEWTWO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_MEW] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_CHIKORITA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_BAYLEEF] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MEGANIUM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_CYNDAQUIL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_QUILAVA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_TYPHLOSION] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_TOTODILE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_CROCONAW] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_FERALIGATR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SENTRET] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_FURRET] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_HOOTHOOT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_NOCTOWL] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_LEDYBA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_LEDIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SPINARAK] = - { - .size = MON_COORDS_SIZE(56, 24), - .y_offset = 21, - }, - [SPECIES_ARIADOS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_CROBAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CHINCHOU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_LANTURN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_PICHU] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_CLEFFA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_IGGLYBUFF] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_TOGEPI] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_TOGETIC] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_NATU] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_XATU] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_MAREEP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_FLAAFFY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_AMPHAROS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BELLOSSOM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MARILL] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_AZUMARILL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SUDOWOODO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_POLITOED] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_HOPPIP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SKIPLOOM] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_JUMPLUFF] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_AIPOM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SUNKERN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_SUNFLORA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_YANMA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_WOOPER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_QUAGSIRE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_ESPEON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_UMBREON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MURKROW] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SLOWKING] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MISDREAVUS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN] = - { - .size = MON_COORDS_SIZE(24, 48), - .y_offset = 8, - }, - [SPECIES_WOBBUFFET] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_GIRAFARIG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_PINECO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_FORRETRESS] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_DUNSPARCE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_GLIGAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_STEELIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNUBBULL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_GRANBULL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_QWILFISH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SCIZOR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_SHUCKLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_HERACROSS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_SNEASEL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_TEDDIURSA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_URSARING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SLUGMA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MAGCARGO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_SWINUB] = - { - .size = MON_COORDS_SIZE(48, 24), - .y_offset = 21, - }, - [SPECIES_PILOSWINE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_CORSOLA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_REMORAID] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_OCTILLERY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_DELIBIRD] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_MANTINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SKARMORY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_HOUNDOUR] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_HOUNDOOM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_KINGDRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PHANPY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_DONPHAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_PORYGON2] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_STANTLER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_SMEARGLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_TYROGUE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_HITMONTOP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SMOOCHUM] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_ELEKID] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MAGBY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MILTANK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BLISSEY] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_RAIKOU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ENTEI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SUICUNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_LARVITAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_PUPITAR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_TYRANITAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LUGIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_HO_OH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CELEBI] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_OLD_UNOWN_B] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_C] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_D] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_E] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_F] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_G] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_H] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_I] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_J] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_K] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_L] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_M] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_N] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_O] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_P] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_R] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_S] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_T] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_U] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_V] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_W] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_X] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OLD_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TREECKO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GROVYLE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SCEPTILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_TORCHIC] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_COMBUSKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BLAZIKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MUDKIP] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_MARSHTOMP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SWAMPERT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_POOCHYENA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_MIGHTYENA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ZIGZAGOON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_LINOONE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_WURMPLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_SILCOON] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 21, - }, - [SPECIES_BEAUTIFLY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CASCOON] = - { - .size = MON_COORDS_SIZE(56, 24), - .y_offset = 20, - }, - [SPECIES_DUSTOX] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 20, - }, - [SPECIES_LOTAD] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_LOMBRE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_LUDICOLO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SEEDOT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_NUZLEAF] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_SHIFTRY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_NINCADA] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 20, - }, - [SPECIES_NINJASK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SHEDINJA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TAILLOW] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_SWELLOW] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SHROOMISH] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_BRELOOM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SPINDA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_WINGULL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_PELIPPER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SURSKIT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_MASQUERAIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WAILMER] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 21, - }, - [SPECIES_WAILORD] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 22, - }, - [SPECIES_SKITTY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_DELCATTY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_KECLEON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_BALTOY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CLAYDOL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_NOSEPASS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_TORKOAL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SABLEYE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_BARBOACH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_WHISCASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_LUVDISC] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_CORPHISH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_CRAWDAUNT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_FEEBAS] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_MILOTIC] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_CARVANHA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SHARPEDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TRAPINCH] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_VIBRAVA] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 17, - }, - [SPECIES_FLYGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MAKUHITA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_HARIYAMA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ELECTRIKE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_MANECTRIC] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_NUMEL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_CAMERUPT] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 19, - }, - [SPECIES_SPHEAL] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 18, - }, - [SPECIES_SEALEO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_WALREIN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CACNEA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_CACTURNE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SNORUNT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_GLALIE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_LUNATONE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SOLROCK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_AZURILL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SPOINK] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_GRUMPIG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PLUSLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_MINUN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_MAWILE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MEDITITE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_MEDICHAM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_SWABLU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_ALTARIA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_WYNAUT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_DUSKULL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_DUSCLOPS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_ROSELIA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SLAKOTH] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_VIGOROTH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SLAKING] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GULPIN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SWALOT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TROPIUS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_WHISMUR] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_LOUDRED] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_EXPLOUD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CLAMPERL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_HUNTAIL] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_GOREBYSS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ABSOL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_SHUPPET] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_BANETTE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_SEVIPER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ZANGOOSE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_RELICANTH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ARON] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_LAIRON] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_AGGRON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CASTFORM] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_VOLBEAT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_ILLUMISE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_LILEEP] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CRADILY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_ANORITH] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 23, - }, - [SPECIES_ARMALDO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_RALTS] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_KIRLIA] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_BAGON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_SHELGON] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SALAMENCE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_BELDUM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_METANG] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_METAGROSS] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 20, - }, - [SPECIES_REGIROCK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_REGICE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_REGISTEEL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_KYOGRE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 19, - }, - [SPECIES_GROUDON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_RAYQUAZA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_LATIAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_LATIOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_JIRACHI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DEOXYS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CHIMECHO] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 7, - }, - [SPECIES_EGG] = - { - .size = MON_COORDS_SIZE(24, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_B] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_UNOWN_C] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_UNOWN_D] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_E] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_F] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_G] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_UNOWN_H] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_I] = - { - .size = MON_COORDS_SIZE(24, 56), - .y_offset = 7, - }, - [SPECIES_UNOWN_J] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_UNOWN_K] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_UNOWN_L] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_M] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_N] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_O] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_P] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_R] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_UNOWN_S] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 4, - }, - [SPECIES_UNOWN_T] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_U] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_V] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_UNOWN_W] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_X] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_EMARK] = - { - .size = MON_COORDS_SIZE(24, 56), - .y_offset = 6, - }, - [SPECIES_UNOWN_QMARK] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 6, - }, + [SPECIES_NONE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_IVYSAUR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_VENUSAUR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CHARMANDER] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_CHARMELEON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_CHARIZARD] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SQUIRTLE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_WARTORTLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_BLASTOISE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CATERPIE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_METAPOD] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_BUTTERFREE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_WEEDLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_KAKUNA] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_BEEDRILL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_PIDGEY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_PIDGEOTTO] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_PIDGEOT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_RATTATA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_RATICATE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_SPEAROW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_FEAROW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_EKANS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_ARBOK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_PIKACHU] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_RAICHU] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_SANDSHREW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_SANDSLASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_NIDORAN_F] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_NIDORINA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_NIDOQUEEN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_NIDORAN_M] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_NIDORINO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_NIDOKING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CLEFAIRY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_CLEFABLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_VULPIX] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_NINETALES] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_JIGGLYPUFF] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_WIGGLYTUFF] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_ZUBAT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_GOLBAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ODDISH] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_GLOOM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_VILEPLUME] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PARAS] = { .size = MON_COORDS_SIZE(48, 24), .y_offset = 20 }, + [SPECIES_PARASECT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_VENONAT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_VENOMOTH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_DIGLETT] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_DUGTRIO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MEOWTH] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_PERSIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PSYDUCK] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GOLDUCK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_MANKEY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_PRIMEAPE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GROWLITHE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_ARCANINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_POLIWAG] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 16 }, + [SPECIES_POLIWHIRL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_POLIWRATH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_ABRA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_KADABRA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ALAKAZAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_MACHOP] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_MACHOKE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_MACHAMP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_BELLSPROUT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_WEEPINBELL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_VICTREEBEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TENTACOOL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_TENTACRUEL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_GEODUDE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_GRAVELER] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_GOLEM] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_PONYTA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_RAPIDASH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SLOWPOKE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_SLOWBRO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_MAGNEMITE] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 20 }, + [SPECIES_MAGNETON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_FARFETCHD] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_DODUO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_DODRIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SEEL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_DEWGONG] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_GRIMER] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_MUK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SHELLDER] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_CLOYSTER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GASTLY] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_HAUNTER] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_GENGAR] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_ONIX] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DROWZEE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_HYPNO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_KRABBY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_KINGLER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_VOLTORB] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_ELECTRODE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_EXEGGCUTE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_EXEGGUTOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_CUBONE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_MAROWAK] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_HITMONLEE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_HITMONCHAN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_LICKITUNG] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_KOFFING] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_WEEZING] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_RHYHORN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_RHYDON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CHANSEY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TANGELA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_KANGASKHAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_HORSEA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SEADRA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_GOLDEEN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_SEAKING] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_STARYU] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_STARMIE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_MR_MIME] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SCYTHER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_JYNX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ELECTABUZZ] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MAGMAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_PINSIR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_TAUROS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_MAGIKARP] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_GYARADOS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_LAPRAS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_DITTO] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_EEVEE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_VAPOREON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_JOLTEON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_FLAREON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_PORYGON] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_OMANYTE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_OMASTAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_KABUTO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_KABUTOPS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_AERODACTYL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SNORLAX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_ARTICUNO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_ZAPDOS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_MOLTRES] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_DRATINI] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_DRAGONAIR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DRAGONITE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_MEWTWO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_MEW] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_CHIKORITA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_BAYLEEF] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MEGANIUM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_CYNDAQUIL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_QUILAVA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_TYPHLOSION] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_TOTODILE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_CROCONAW] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_FERALIGATR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SENTRET] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_FURRET] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_HOOTHOOT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_NOCTOWL] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_LEDYBA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_LEDIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SPINARAK] = { .size = MON_COORDS_SIZE(56, 24), .y_offset = 21 }, + [SPECIES_ARIADOS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_CROBAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CHINCHOU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_LANTURN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_PICHU] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_CLEFFA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_IGGLYBUFF] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_TOGEPI] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_TOGETIC] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_NATU] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_XATU] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_MAREEP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_FLAAFFY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_AMPHAROS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BELLOSSOM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MARILL] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_AZUMARILL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SUDOWOODO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_POLITOED] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_HOPPIP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SKIPLOOM] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_JUMPLUFF] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_AIPOM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SUNKERN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_SUNFLORA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_YANMA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_WOOPER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_QUAGSIRE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ESPEON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_UMBREON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MURKROW] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SLOWKING] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MISDREAVUS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_UNOWN] = { .size = MON_COORDS_SIZE(24, 48), .y_offset = 8 }, + [SPECIES_WOBBUFFET] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_GIRAFARIG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_PINECO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_FORRETRESS] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_DUNSPARCE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_GLIGAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_STEELIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNUBBULL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_GRANBULL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_QWILFISH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SCIZOR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_SHUCKLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_HERACROSS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_SNEASEL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_TEDDIURSA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_URSARING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SLUGMA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MAGCARGO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_SWINUB] = { .size = MON_COORDS_SIZE(48, 24), .y_offset = 21 }, + [SPECIES_PILOSWINE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_CORSOLA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_REMORAID] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_OCTILLERY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_DELIBIRD] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_MANTINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SKARMORY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_HOUNDOUR] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_HOUNDOOM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_KINGDRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PHANPY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_DONPHAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_PORYGON2] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_STANTLER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_SMEARGLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_TYROGUE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_HITMONTOP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SMOOCHUM] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_ELEKID] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MAGBY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MILTANK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BLISSEY] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_RAIKOU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ENTEI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SUICUNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_LARVITAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_PUPITAR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_TYRANITAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LUGIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_HO_OH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CELEBI] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_OLD_UNOWN_B] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_C] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_D] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_E] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_F] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_G] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_H] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_I] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_J] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_K] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_L] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_M] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_N] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_O] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_P] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_Q] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_R] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_S] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_T] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_U] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_V] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_W] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_X] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_Y] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OLD_UNOWN_Z] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TREECKO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GROVYLE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SCEPTILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_TORCHIC] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_COMBUSKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BLAZIKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MUDKIP] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_MARSHTOMP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SWAMPERT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_POOCHYENA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_MIGHTYENA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ZIGZAGOON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_LINOONE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_WURMPLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_SILCOON] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 21 }, + [SPECIES_BEAUTIFLY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CASCOON] = { .size = MON_COORDS_SIZE(56, 24), .y_offset = 20 }, + [SPECIES_DUSTOX] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 20 }, + [SPECIES_LOTAD] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_LOMBRE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_LUDICOLO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SEEDOT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_NUZLEAF] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_SHIFTRY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_NINCADA] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 20 }, + [SPECIES_NINJASK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SHEDINJA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TAILLOW] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_SWELLOW] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SHROOMISH] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_BRELOOM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SPINDA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_WINGULL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_PELIPPER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SURSKIT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_MASQUERAIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WAILMER] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 21 }, + [SPECIES_WAILORD] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 22 }, + [SPECIES_SKITTY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_DELCATTY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_KECLEON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_BALTOY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CLAYDOL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_NOSEPASS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_TORKOAL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SABLEYE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_BARBOACH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_WHISCASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_LUVDISC] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_CORPHISH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_CRAWDAUNT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_FEEBAS] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_MILOTIC] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_CARVANHA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SHARPEDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TRAPINCH] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_VIBRAVA] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 17 }, + [SPECIES_FLYGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MAKUHITA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_HARIYAMA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ELECTRIKE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_MANECTRIC] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_NUMEL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_CAMERUPT] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 19 }, + [SPECIES_SPHEAL] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 18 }, + [SPECIES_SEALEO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_WALREIN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CACNEA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_CACTURNE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SNORUNT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_GLALIE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_LUNATONE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SOLROCK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_AZURILL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SPOINK] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_GRUMPIG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PLUSLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_MINUN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_MAWILE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MEDITITE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_MEDICHAM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_SWABLU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_ALTARIA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_WYNAUT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_DUSKULL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_DUSCLOPS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_ROSELIA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SLAKOTH] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_VIGOROTH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SLAKING] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GULPIN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SWALOT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TROPIUS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_WHISMUR] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_LOUDRED] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_EXPLOUD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CLAMPERL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_HUNTAIL] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_GOREBYSS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ABSOL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_SHUPPET] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_BANETTE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_SEVIPER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ZANGOOSE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_RELICANTH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ARON] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_LAIRON] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_AGGRON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CASTFORM] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_VOLBEAT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ILLUMISE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_LILEEP] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CRADILY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_ANORITH] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 23 }, + [SPECIES_ARMALDO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_RALTS] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_KIRLIA] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 6 }, + [SPECIES_GARDEVOIR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_BAGON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_SHELGON] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SALAMENCE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_BELDUM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_METANG] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_METAGROSS] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 20 }, + [SPECIES_REGIROCK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_REGICE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_REGISTEEL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_KYOGRE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 19 }, + [SPECIES_GROUDON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_RAYQUAZA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_LATIAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_LATIOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_JIRACHI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DEOXYS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CHIMECHO] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 7 }, + [SPECIES_EGG] = { .size = MON_COORDS_SIZE(24, 48), .y_offset = 10 }, + [SPECIES_UNOWN_B] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_UNOWN_C] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_UNOWN_D] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_UNOWN_E] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_UNOWN_F] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_UNOWN_G] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_UNOWN_H] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_UNOWN_I] = { .size = MON_COORDS_SIZE(24, 56), .y_offset = 7 }, + [SPECIES_UNOWN_J] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_UNOWN_K] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_UNOWN_L] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_M] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_N] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_O] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_UNOWN_P] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_Q] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_UNOWN_R] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_UNOWN_S] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 4 }, + [SPECIES_UNOWN_T] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_UNOWN_U] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_V] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_UNOWN_W] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_UNOWN_X] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_UNOWN_Y] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_Z] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_EMARK] = { .size = MON_COORDS_SIZE(24, 56), .y_offset = 6 }, + [SPECIES_UNOWN_QMARK] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 6 }, }; diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index 6022f9cc1812..34d5c6744260 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -4,2204 +4,444 @@ // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonFrontPicCoords[] = { - [SPECIES_NONE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BULBASAUR] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_IVYSAUR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_VENUSAUR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CHARMANDER] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_CHARMELEON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_CHARIZARD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SQUIRTLE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_WARTORTLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_BLASTOISE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CATERPIE] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 16, - }, - [SPECIES_METAPOD] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 20, - }, - [SPECIES_BUTTERFREE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_WEEDLE] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 18, - }, - [SPECIES_KAKUNA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_BEEDRILL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_PIDGEY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_PIDGEOTTO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 11, - }, - [SPECIES_PIDGEOT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_RATTATA] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_RATICATE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SPEAROW] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 15, - }, - [SPECIES_FEAROW] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_EKANS] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_ARBOK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PIKACHU] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_RAICHU] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_SANDSHREW] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_SANDSLASH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_NIDORAN_F] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 15, - }, - [SPECIES_NIDORINA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_NIDOQUEEN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_NIDORAN_M] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_NIDORINO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_NIDOKING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_CLEFAIRY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_CLEFABLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_VULPIX] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_NINETALES] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_JIGGLYPUFF] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 16, - }, - [SPECIES_WIGGLYTUFF] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_ZUBAT] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GOLBAT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ODDISH] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 15, - }, - [SPECIES_GLOOM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_VILEPLUME] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_PARAS] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_PARASECT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_VENONAT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_VENOMOTH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_DIGLETT] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 18, - }, - [SPECIES_DUGTRIO] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_MEOWTH] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_PERSIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_PSYDUCK] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_GOLDUCK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_MANKEY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_PRIMEAPE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GROWLITHE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_ARCANINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_POLIWAG] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 19, - }, - [SPECIES_POLIWHIRL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_POLIWRATH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_ABRA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_KADABRA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ALAKAZAM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MACHOP] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_MACHOKE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_MACHAMP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BELLSPROUT] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_WEEPINBELL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_VICTREEBEL] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_TENTACOOL] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_TENTACRUEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GEODUDE] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 18, - }, - [SPECIES_GRAVELER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GOLEM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_PONYTA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_RAPIDASH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SLOWPOKE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SLOWBRO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_MAGNEMITE] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 21, - }, - [SPECIES_MAGNETON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_FARFETCHD] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_DODUO] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_DODRIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SEEL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_DEWGONG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GRIMER] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_MUK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SHELLDER] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_CLOYSTER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_GASTLY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_HAUNTER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_GENGAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ONIX] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_DROWZEE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_HYPNO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_KRABBY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_KINGLER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_VOLTORB] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 19, - }, - [SPECIES_ELECTRODE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_EXEGGCUTE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_EXEGGUTOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CUBONE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_MAROWAK] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_HITMONLEE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_HITMONCHAN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_LICKITUNG] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_KOFFING] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_WEEZING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_RHYHORN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_RHYDON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CHANSEY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_TANGELA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_KANGASKHAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HORSEA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 15, - }, - [SPECIES_SEADRA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GOLDEEN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_SEAKING] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_STARYU] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_STARMIE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MR_MIME] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_SCYTHER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_JYNX] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_ELECTABUZZ] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_MAGMAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_PINSIR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_TAUROS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_MAGIKARP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GYARADOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 8, - }, - [SPECIES_LAPRAS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_DITTO] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_EEVEE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_VAPOREON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_JOLTEON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_FLAREON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_PORYGON] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_OMANYTE] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 15, - }, - [SPECIES_OMASTAR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_KABUTO] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_KABUTOPS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_AERODACTYL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SNORLAX] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ARTICUNO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ZAPDOS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MOLTRES] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DRATINI] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_DRAGONAIR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DRAGONITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MEWTWO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MEW] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_CHIKORITA] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_BAYLEEF] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_MEGANIUM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CYNDAQUIL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_QUILAVA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_TYPHLOSION] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_TOTODILE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_CROCONAW] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_FERALIGATR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SENTRET] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 4, - }, - [SPECIES_FURRET] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_HOOTHOOT] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_NOCTOWL] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 3, - }, - [SPECIES_LEDYBA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_LEDIAN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_SPINARAK] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 19, - }, - [SPECIES_ARIADOS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CROBAT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CHINCHOU] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 16, - }, - [SPECIES_LANTURN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_PICHU] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_CLEFFA] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 20, - }, - [SPECIES_IGGLYBUFF] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_TOGEPI] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 20, - }, - [SPECIES_TOGETIC] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_NATU] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 20, - }, - [SPECIES_XATU] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 7, - }, - [SPECIES_MAREEP] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_FLAAFFY] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_AMPHAROS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_BELLOSSOM] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_MARILL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_AZUMARILL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_SUDOWOODO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_POLITOED] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_HOPPIP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_SKIPLOOM] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_JUMPLUFF] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_AIPOM] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 3, - }, - [SPECIES_SUNKERN] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_SUNFLORA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_YANMA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_WOOPER] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_QUAGSIRE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_ESPEON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_UMBREON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_MURKROW] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SLOWKING] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 1, - }, - [SPECIES_MISDREAVUS] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_UNOWN] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_WOBBUFFET] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_GIRAFARIG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_PINECO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_FORRETRESS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_DUNSPARCE] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 17, - }, - [SPECIES_GLIGAR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_STEELIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNUBBULL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_GRANBULL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 6, - }, - [SPECIES_QWILFISH] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_SCIZOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SHUCKLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_HERACROSS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SNEASEL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_TEDDIURSA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_URSARING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_SLUGMA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_MAGCARGO] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 13, - }, - [SPECIES_SWINUB] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 20, - }, - [SPECIES_PILOSWINE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_CORSOLA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_REMORAID] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_OCTILLERY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_DELIBIRD] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_MANTINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SKARMORY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HOUNDOUR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_HOUNDOOM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_KINGDRA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_PHANPY] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_DONPHAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_PORYGON2] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_STANTLER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SMEARGLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TYROGUE] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_HITMONTOP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_SMOOCHUM] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_ELEKID] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_MAGBY] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_MILTANK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_BLISSEY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_RAIKOU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ENTEI] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SUICUNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LARVITAR] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_PUPITAR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_TYRANITAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LUGIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HO_OH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CELEBI] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_OLD_UNOWN_B] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_C] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_D] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_E] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_F] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_G] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_H] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_I] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_J] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_K] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_L] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_M] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_N] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_O] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_P] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_R] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_S] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_T] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_U] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_V] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_W] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_X] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_OLD_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_TREECKO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_GROVYLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SCEPTILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TORCHIC] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_COMBUSKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BLAZIKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MUDKIP] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_MARSHTOMP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SWAMPERT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_POOCHYENA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_MIGHTYENA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ZIGZAGOON] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_LINOONE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_WURMPLE] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_SILCOON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 17, - }, - [SPECIES_BEAUTIFLY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CASCOON] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 16, - }, - [SPECIES_DUSTOX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 15, - }, - [SPECIES_LOTAD] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_LOMBRE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_LUDICOLO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SEEDOT] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 16, - }, - [SPECIES_NUZLEAF] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_SHIFTRY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_NINCADA] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 18, - }, - [SPECIES_NINJASK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SHEDINJA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_TAILLOW] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_SWELLOW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SHROOMISH] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_BRELOOM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_SPINDA] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 8, - }, - [SPECIES_WINGULL] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 24, - }, - [SPECIES_PELIPPER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_SURSKIT] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_MASQUERAIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_WAILMER] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_WAILORD] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_SKITTY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_DELCATTY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_KECLEON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_BALTOY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_CLAYDOL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_NOSEPASS] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_TORKOAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SABLEYE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_BARBOACH] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_WHISCASH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_LUVDISC] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 24, - }, - [SPECIES_CORPHISH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_CRAWDAUNT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_FEEBAS] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 13, - }, - [SPECIES_MILOTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CARVANHA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SHARPEDO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_TRAPINCH] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_VIBRAVA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_FLYGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_MAKUHITA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_HARIYAMA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_ELECTRIKE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 18, - }, - [SPECIES_MANECTRIC] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_NUMEL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_CAMERUPT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_SPHEAL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 16, - }, - [SPECIES_SEALEO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_WALREIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CACNEA] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 16, - }, - [SPECIES_CACTURNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNORUNT] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_GLALIE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_LUNATONE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SOLROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_AZURILL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_SPOINK] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_GRUMPIG] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_PLUSLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 14, - }, - [SPECIES_MINUN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_MAWILE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_MEDITITE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_MEDICHAM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_SWABLU] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 17, - }, - [SPECIES_ALTARIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_WYNAUT] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_DUSKULL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_DUSCLOPS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ROSELIA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_SLAKOTH] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 18, - }, - [SPECIES_VIGOROTH] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SLAKING] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GULPIN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 18, - }, - [SPECIES_SWALOT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_TROPIUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WHISMUR] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_LOUDRED] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_EXPLOUD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CLAMPERL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_HUNTAIL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_GOREBYSS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_ABSOL] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_SHUPPET] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 14, - }, - [SPECIES_BANETTE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_SEVIPER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_ZANGOOSE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_RELICANTH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 11, - }, - [SPECIES_ARON] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 20, - }, - [SPECIES_LAIRON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_AGGRON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CASTFORM] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_VOLBEAT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_ILLUMISE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_LILEEP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_CRADILY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ANORITH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_ARMALDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_RALTS] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_KIRLIA] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_BAGON] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SHELGON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SALAMENCE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_BELDUM] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_METANG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_METAGROSS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_REGIROCK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_REGICE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_REGISTEEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_KYOGRE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GROUDON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_RAYQUAZA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LATIAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_LATIOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_JIRACHI] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_DEOXYS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CHIMECHO] = - { - .size = MON_COORDS_SIZE(24, 56), - .y_offset = 6, - }, - [SPECIES_EGG] = - { - .size = MON_COORDS_SIZE(24, 24), - .y_offset = 20, - }, - [SPECIES_UNOWN_B] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_C] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_D] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_E] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_F] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_G] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 14, - }, - [SPECIES_UNOWN_H] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_I] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_J] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_K] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_L] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_M] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_N] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 20, - }, - [SPECIES_UNOWN_O] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_P] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 21, - }, - [SPECIES_UNOWN_R] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_S] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_UNOWN_T] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_U] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_V] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_W] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_X] = - { - .size = MON_COORDS_SIZE(24, 24), - .y_offset = 21, - }, - [SPECIES_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_EMARK] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_QMARK] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 13, - }, + [SPECIES_NONE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_IVYSAUR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_VENUSAUR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CHARMANDER] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_CHARMELEON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_CHARIZARD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SQUIRTLE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_WARTORTLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_BLASTOISE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CATERPIE] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 16 }, + [SPECIES_METAPOD] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 20 }, + [SPECIES_BUTTERFREE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_WEEDLE] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 18 }, + [SPECIES_KAKUNA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_BEEDRILL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_PIDGEY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_PIDGEOTTO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 11 }, + [SPECIES_PIDGEOT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_RATTATA] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_RATICATE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SPEAROW] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 15 }, + [SPECIES_FEAROW] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_EKANS] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_ARBOK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PIKACHU] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_RAICHU] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_SANDSHREW] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_SANDSLASH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_NIDORAN_F] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 15 }, + [SPECIES_NIDORINA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_NIDOQUEEN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_NIDORAN_M] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_NIDORINO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_NIDOKING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_CLEFAIRY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_CLEFABLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_VULPIX] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_NINETALES] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_JIGGLYPUFF] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 16 }, + [SPECIES_WIGGLYTUFF] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_ZUBAT] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GOLBAT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ODDISH] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 15 }, + [SPECIES_GLOOM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_VILEPLUME] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_PARAS] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_PARASECT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_VENONAT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_VENOMOTH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_DIGLETT] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 18 }, + [SPECIES_DUGTRIO] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_MEOWTH] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_PERSIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_PSYDUCK] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_GOLDUCK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_MANKEY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_PRIMEAPE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GROWLITHE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_ARCANINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_POLIWAG] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 19 }, + [SPECIES_POLIWHIRL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_POLIWRATH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ABRA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_KADABRA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ALAKAZAM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MACHOP] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_MACHOKE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_MACHAMP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BELLSPROUT] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_WEEPINBELL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_VICTREEBEL] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_TENTACOOL] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_TENTACRUEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GEODUDE] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 18 }, + [SPECIES_GRAVELER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GOLEM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_PONYTA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_RAPIDASH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SLOWPOKE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SLOWBRO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_MAGNEMITE] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 21 }, + [SPECIES_MAGNETON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_FARFETCHD] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_DODUO] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_DODRIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SEEL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_DEWGONG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GRIMER] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_MUK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SHELLDER] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_CLOYSTER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_GASTLY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_HAUNTER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_GENGAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ONIX] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_DROWZEE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_HYPNO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_KRABBY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_KINGLER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_VOLTORB] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 19 }, + [SPECIES_ELECTRODE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_EXEGGCUTE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_EXEGGUTOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CUBONE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_MAROWAK] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_HITMONLEE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_HITMONCHAN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_LICKITUNG] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_KOFFING] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_WEEZING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_RHYHORN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_RHYDON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CHANSEY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_TANGELA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_KANGASKHAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HORSEA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 15 }, + [SPECIES_SEADRA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GOLDEEN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_SEAKING] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_STARYU] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_STARMIE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MR_MIME] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_SCYTHER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_JYNX] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_ELECTABUZZ] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_MAGMAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_PINSIR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_TAUROS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MAGIKARP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GYARADOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 8 }, + [SPECIES_LAPRAS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_DITTO] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_EEVEE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_VAPOREON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_JOLTEON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_FLAREON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_PORYGON] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_OMANYTE] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 15 }, + [SPECIES_OMASTAR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_KABUTO] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_KABUTOPS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_AERODACTYL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SNORLAX] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ARTICUNO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ZAPDOS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MOLTRES] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DRATINI] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_DRAGONAIR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DRAGONITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MEWTWO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MEW] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_CHIKORITA] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_BAYLEEF] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_MEGANIUM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CYNDAQUIL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_QUILAVA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_TYPHLOSION] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_TOTODILE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_CROCONAW] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FERALIGATR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SENTRET] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 4 }, + [SPECIES_FURRET] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_HOOTHOOT] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_NOCTOWL] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 3 }, + [SPECIES_LEDYBA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_LEDIAN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_SPINARAK] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 19 }, + [SPECIES_ARIADOS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CROBAT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CHINCHOU] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 16 }, + [SPECIES_LANTURN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_PICHU] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_CLEFFA] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 20 }, + [SPECIES_IGGLYBUFF] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_TOGEPI] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 20 }, + [SPECIES_TOGETIC] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_NATU] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 20 }, + [SPECIES_XATU] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 7 }, + [SPECIES_MAREEP] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_FLAAFFY] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_AMPHAROS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_BELLOSSOM] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_MARILL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_AZUMARILL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_SUDOWOODO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_POLITOED] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_HOPPIP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_SKIPLOOM] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_JUMPLUFF] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_AIPOM] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 3 }, + [SPECIES_SUNKERN] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_SUNFLORA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_YANMA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_WOOPER] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_QUAGSIRE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_ESPEON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_UMBREON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_MURKROW] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SLOWKING] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 1 }, + [SPECIES_MISDREAVUS] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_UNOWN] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_WOBBUFFET] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_GIRAFARIG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_PINECO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_FORRETRESS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_DUNSPARCE] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 17 }, + [SPECIES_GLIGAR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_STEELIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNUBBULL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_GRANBULL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 6 }, + [SPECIES_QWILFISH] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_SCIZOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SHUCKLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_HERACROSS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SNEASEL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_TEDDIURSA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_URSARING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_SLUGMA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_MAGCARGO] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 13 }, + [SPECIES_SWINUB] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 20 }, + [SPECIES_PILOSWINE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_CORSOLA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_REMORAID] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_OCTILLERY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_DELIBIRD] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_MANTINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SKARMORY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HOUNDOUR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_HOUNDOOM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_KINGDRA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_PHANPY] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_DONPHAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_PORYGON2] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_STANTLER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SMEARGLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TYROGUE] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_HITMONTOP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_SMOOCHUM] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_ELEKID] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_MAGBY] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_MILTANK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_BLISSEY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_RAIKOU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ENTEI] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SUICUNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LARVITAR] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_PUPITAR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_TYRANITAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LUGIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HO_OH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CELEBI] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_OLD_UNOWN_B] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_C] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_D] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_E] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_F] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_G] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_H] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_I] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_J] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_K] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_L] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_M] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_N] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_O] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_P] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_Q] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_R] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_S] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_T] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_U] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_V] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_W] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_X] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_Y] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_OLD_UNOWN_Z] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_TREECKO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_GROVYLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SCEPTILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TORCHIC] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_COMBUSKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BLAZIKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MUDKIP] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_MARSHTOMP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SWAMPERT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_POOCHYENA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_MIGHTYENA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ZIGZAGOON] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_LINOONE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_WURMPLE] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_SILCOON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 17 }, + [SPECIES_BEAUTIFLY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CASCOON] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 16 }, + [SPECIES_DUSTOX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 15 }, + [SPECIES_LOTAD] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_LOMBRE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_LUDICOLO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SEEDOT] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 16 }, + [SPECIES_NUZLEAF] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_SHIFTRY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_NINCADA] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 18 }, + [SPECIES_NINJASK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SHEDINJA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_TAILLOW] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_SWELLOW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SHROOMISH] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_BRELOOM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_SPINDA] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 8 }, + [SPECIES_WINGULL] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 24 }, + [SPECIES_PELIPPER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_SURSKIT] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_MASQUERAIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_WAILMER] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_WAILORD] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_SKITTY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_DELCATTY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_KECLEON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_BALTOY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_CLAYDOL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_NOSEPASS] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_TORKOAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SABLEYE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_BARBOACH] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_WHISCASH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_LUVDISC] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 24 }, + [SPECIES_CORPHISH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_CRAWDAUNT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_FEEBAS] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 13 }, + [SPECIES_MILOTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CARVANHA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SHARPEDO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_TRAPINCH] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_VIBRAVA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_FLYGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_MAKUHITA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_HARIYAMA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_ELECTRIKE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 18 }, + [SPECIES_MANECTRIC] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_NUMEL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_CAMERUPT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_SPHEAL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 16 }, + [SPECIES_SEALEO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_WALREIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CACNEA] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 16 }, + [SPECIES_CACTURNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNORUNT] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_GLALIE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_LUNATONE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SOLROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_AZURILL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_SPOINK] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_GRUMPIG] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_PLUSLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 14 }, + [SPECIES_MINUN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_MAWILE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_MEDITITE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_MEDICHAM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_SWABLU] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 17 }, + [SPECIES_ALTARIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_WYNAUT] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_DUSKULL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_DUSCLOPS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ROSELIA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_SLAKOTH] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 18 }, + [SPECIES_VIGOROTH] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SLAKING] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GULPIN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 18 }, + [SPECIES_SWALOT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_TROPIUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WHISMUR] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_LOUDRED] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_EXPLOUD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CLAMPERL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_HUNTAIL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_GOREBYSS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_ABSOL] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_SHUPPET] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 14 }, + [SPECIES_BANETTE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_SEVIPER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_ZANGOOSE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_RELICANTH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 11 }, + [SPECIES_ARON] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 20 }, + [SPECIES_LAIRON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_AGGRON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CASTFORM] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_VOLBEAT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_ILLUMISE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_LILEEP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_CRADILY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ANORITH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_ARMALDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RALTS] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_KIRLIA] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 6 }, + [SPECIES_GARDEVOIR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_BAGON] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SHELGON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SALAMENCE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_BELDUM] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_METANG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_METAGROSS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_REGIROCK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_REGICE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_REGISTEEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_KYOGRE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GROUDON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_RAYQUAZA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LATIAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_LATIOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_JIRACHI] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_DEOXYS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CHIMECHO] = { .size = MON_COORDS_SIZE(24, 56), .y_offset = 6 }, + [SPECIES_EGG] = { .size = MON_COORDS_SIZE(24, 24), .y_offset = 20 }, + [SPECIES_UNOWN_B] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_C] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_D] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_E] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_F] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_G] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 14 }, + [SPECIES_UNOWN_H] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_I] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_J] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_UNOWN_K] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_L] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_M] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 19 }, + [SPECIES_UNOWN_N] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 20 }, + [SPECIES_UNOWN_O] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_P] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_Q] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 21 }, + [SPECIES_UNOWN_R] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_S] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_UNOWN_T] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 18 }, + [SPECIES_UNOWN_U] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_UNOWN_V] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_UNOWN_W] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 19 }, + [SPECIES_UNOWN_X] = { .size = MON_COORDS_SIZE(24, 24), .y_offset = 21 }, + [SPECIES_UNOWN_Y] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_UNOWN_Z] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_EMARK] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_UNOWN_QMARK] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 13 }, }; From 91447796340c6738c610fd0b003209d54c72456e Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 9 Sep 2022 08:49:16 -0400 Subject: [PATCH 726/762] Removed repeated extern consts in strings.h --- include/strings.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/strings.h b/include/strings.h index abcf5cc47c4b..eeada2b943f8 100644 --- a/include/strings.h +++ b/include/strings.h @@ -2152,9 +2152,7 @@ extern const u8 gText_Switch2[]; extern const u8 gText_Item[]; extern const u8 gText_NotPkmnOtherTrainerWants[]; extern const u8 gText_ThatIsntAnEgg[]; -extern const u8 gText_PkmnCantBeTradedNow[]; extern const u8 gText_OtherTrainersPkmnCantBeTraded[]; -extern const u8 gText_EggCantBeTradedNow[]; extern const u8 gText_OtherTrainerCantAcceptPkmn[]; extern const u8 gText_CantTradeWithTrainer[]; From 61752a4977eb90826593cec40848efe1212529f0 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 11 Sep 2022 13:35:58 -0400 Subject: [PATCH 727/762] Added parenthesis to GET_SHINY_VALUE --- include/pokemon.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/pokemon.h b/include/pokemon.h index 63c5c74eb781..e48618328da7 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -363,7 +363,7 @@ struct Evolution | (((personality) & 0x00000003) >> 0) \ ) % NUM_UNOWN_FORMS) -#define GET_SHINY_VALUE(otId, personality)HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality) +#define GET_SHINY_VALUE(otId, personality) (HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality)) extern u8 gPlayerPartyCount; extern struct Pokemon gPlayerParty[PARTY_SIZE]; From 65108c319265a7a5f232e0fa6af61d091823ad45 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 11 Sep 2022 14:14:49 -0400 Subject: [PATCH 728/762] Cleaned trailing whitespace --- INSTALL.md | 6 +- Makefile | 4 +- asm/macros/battle_ai_script.inc | 26 ++--- asm/macros/battle_anim_script.inc | 6 +- asm/macros/battle_script.inc | 100 +++++++++--------- asm/macros/event.inc | 10 +- data/battle_ai_scripts.s | 2 +- data/battle_scripts_1.s | 6 +- data/scripts/new_game.inc | 2 +- data/scripts/roulette.inc | 2 +- docs/legacy_WSL1_INSTALL.md | 4 +- gflib/text.c | 4 +- graphics_file_rules.mk | 20 ++-- include/battle.h | 2 +- include/global.h | 2 +- include/link_rfu.h | 6 +- include/pokenav.h | 2 +- include/union_room.h | 4 +- src/battle_anim_mons.c | 4 +- src/battle_script_commands.c | 2 +- src/battle_tent.c | 2 +- src/battle_transition.c | 24 ++--- src/data/field_effects/field_effect_objects.h | 2 +- src/decoration.c | 4 +- src/ereader_screen.c | 6 +- src/event_object_movement.c | 2 +- src/field_tasks.c | 18 ++-- src/link_rfu_2.c | 10 +- src/link_rfu_3.c | 2 +- src/metatile_behavior.c | 2 +- src/mystery_gift.c | 8 +- src/mystery_gift_menu.c | 2 +- src/mystery_gift_view.c | 18 ++-- src/pokedex_area_screen.c | 6 +- src/pokemon.c | 10 +- src/pokemon_summary_screen.c | 4 +- src/pokenav_menu_handler_gfx.c | 2 +- src/record_mixing.c | 4 +- src/roamer.c | 6 +- src/rom_header.s | 2 +- src/save.c | 2 +- src/script.c | 6 +- src/slot_machine.c | 20 ++-- src/sound.c | 2 +- src/trade.c | 2 +- src/tv.c | 8 +- src/union_room_player_avatar.c | 2 +- src/walda_phrase.c | 2 +- src/wild_encounter.c | 4 +- src/wonder_news.c | 2 +- sym_common.txt | 10 +- 51 files changed, 204 insertions(+), 204 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 2759124bee9e..5f2a1f05f14f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -106,7 +106,7 @@ cd /mnt/c/Users//Desktop/decomps > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed - + If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using msys2](#windows-msys2). @@ -216,7 +216,7 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer > Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. > Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed - + If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## macOS @@ -539,7 +539,7 @@ devkitARM is now installed. devkitARM is now installed. ### Installing devkitARM on Arch Linux - + 1. Follow [devkitPro's instructions](https://devkitpro.org/wiki/devkitPro_pacman#Customising_Existing_Pacman_Install) to configure `pacman` to download devkitPro packages. 2. Install `gba-dev`: run the following command as root. diff --git a/Makefile b/Makefile index c36cc8e9366a..88303e7f3945 100644 --- a/Makefile +++ b/Makefile @@ -254,7 +254,7 @@ tidynonmodern: 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 @@ -410,7 +410,7 @@ LD_SCRIPT := ld_script.txt 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_DEPS := +LD_SCRIPT_DEPS := endif $(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS) diff --git a/asm/macros/battle_ai_script.inc b/asm/macros/battle_ai_script.inc index 5341e5a4311c..78c8131f6618 100644 --- a/asm/macros/battle_ai_script.inc +++ b/asm/macros/battle_ai_script.inc @@ -550,38 +550,38 @@ .2byte \param1 .4byte \param2 .endm - + @ useful script macros .macro get_curr_move_type get_type AI_TYPE_MOVE .endm - + .macro get_user_type1 get_type AI_TYPE1_USER .endm - + .macro get_user_type2 get_type AI_TYPE2_USER .endm - + .macro get_target_type1 get_type AI_TYPE1_TARGET .endm - + .macro get_target_type2 get_type AI_TYPE2_TARGET .endm - + .macro if_ability battler:req, ability:req, ptr:req check_ability \battler, \ability if_equal 1, \ptr .endm - + .macro if_no_ability battler:req, ability:req, ptr:req check_ability \battler, \ability if_equal 0, \ptr .endm - + .macro if_type battler:req, type:req, ptr:req is_of_type \battler, \type if_equal 1, \ptr @@ -591,20 +591,20 @@ is_of_type \battler, \type if_equal 0, \ptr .endm - + .macro if_target_faster ptr:req if_user_goes 1, \ptr .endm - + .macro if_user_faster ptr:req if_user_goes 0, \ptr .endm - + .macro if_double_battle ptr:req is_double_battle if_equal 1, \ptr .endm - + .macro if_not_double_battle ptr:req is_double_battle if_equal 0, \ptr @@ -613,7 +613,7 @@ .macro if_any_move_disabled battler:req, ptr:req if_any_move_disabled_or_encored \battler, 0, \ptr .endm - + .macro if_any_move_encored battler:req, ptr:req if_any_move_disabled_or_encored \battler, 1, \ptr .endm diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc index 15c48c39f586..67632e988586 100644 --- a/asm/macros/battle_anim_script.inc +++ b/asm/macros/battle_anim_script.inc @@ -270,16 +270,16 @@ .macro stopsound .byte 0x2f .endm - + @ useful macros .macro jumpreteq value:req, ptr:req jumpargeq ARG_RET_ID, \value, \ptr .endm - + .macro jumprettrue ptr:req jumpreteq TRUE, \ptr .endm - + .macro jumpretfalse ptr:req jumpreteq FALSE, \ptr .endm diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 0a44f6075af3..ccb887327fae 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -410,33 +410,33 @@ .byte \endMode .byte \endState .endm - + @ Help macros for 5 uses of moveend command - + @ All cases .macro moveendall setbyte sMOVEEND_STATE, 0 moveend 0, 0 .endm - + @ Chosen case .macro moveendcase case:req setbyte sMOVEEND_STATE, \case moveend 1, 0 .endm - + @ All cases from (inclusive) .macro moveendfrom from:req setbyte sMOVEEND_STATE, \from moveend 0, 0 .endm - + @ All cases from 0 to (not inclusive) .macro moveendto to:req setbyte sMOVEEND_STATE, 0 moveend 2, \to .endm - + @ Cases from (inclusive) to (not inclusive) .macro moveendfromto from:req, to:req setbyte sMOVEEND_STATE, \from @@ -1252,165 +1252,165 @@ .byte 0xf8 .byte \position .endm - + @ various command changed to more readable macros .macro cancelmultiturnmoves battler:req various \battler, VARIOUS_CANCEL_MULTI_TURN_MOVES .endm - + .macro setmagiccoattarget battler:req various \battler, VARIOUS_SET_MAGIC_COAT_TARGET .endm - + .macro getifcantrunfrombattle battler:req various \battler, VARIOUS_IS_RUNNING_IMPOSSIBLE .endm - + .macro getmovetarget battler:req various \battler, VARIOUS_GET_MOVE_TARGET .endm - + .macro getbattlerfainted battler:req various \battler, VARIOUS_GET_BATTLER_FAINTED .endm - + .macro resetintimidatetracebits battler:req various \battler, VARIOUS_RESET_INTIMIDATE_TRACE_BITS .endm - + .macro updatechoicemoveonlvlup battler:req various \battler, VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP .endm - + .macro resetplayerfainted various BS_ATTACKER, VARIOUS_RESET_PLAYER_FAINTED .endm - + .macro palaceflavortext battler:req various \battler, VARIOUS_PALACE_FLAVOR_TEXT .endm - + .macro arenajudgmentwindow various BS_ATTACKER, VARIOUS_ARENA_JUDGMENT_WINDOW .endm - + .macro arenaopponentmonlost various BS_ATTACKER, VARIOUS_ARENA_OPPONENT_MON_LOST .endm - + .macro arenaplayermonlost various BS_ATTACKER, VARIOUS_ARENA_PLAYER_MON_LOST .endm - + .macro arenabothmonlost various BS_ATTACKER, VARIOUS_ARENA_BOTH_MONS_LOST .endm - + .macro forfeityesnobox battler:req various \battler, VARIOUS_EMIT_YESNOBOX .endm - + .macro arenadrawreftextbox various BS_ATTACKER, VARIOUS_DRAW_ARENA_REF_TEXT_BOX .endm - + .macro arenaerasereftextbox various BS_ATTACKER, VARIOUS_ERASE_ARENA_REF_TEXT_BOX .endm - + .macro arenajudgmentstring id:req various \id, VARIOUS_ARENA_JUDGMENT_STRING .endm - + .macro arenawaitmessage id:req various \id, VARIOUS_ARENA_WAIT_STRING .endm - + .macro waitcry battler:req various \battler, VARIOUS_WAIT_CRY .endm - + .macro returnopponentmon1toball battler:req various \battler, VARIOUS_RETURN_OPPONENT_MON1 .endm - + .macro returnopponentmon2toball battler:req various \battler, VARIOUS_RETURN_OPPONENT_MON2 .endm - + .macro volumedown various BS_ATTACKER, VARIOUS_VOLUME_DOWN .endm - + .macro volumeup various BS_ATTACKER, VARIOUS_VOLUME_UP .endm - + .macro setalreadystatusedmoveattempt battler:req various \battler, VARIOUS_SET_ALREADY_STATUS_MOVE_ATTEMPT .endm - + .macro palacetryescapestatus battler:req various \battler, VARIOUS_PALACE_TRY_ESCAPE_STATUS .endm - + .macro setoutcomeonteleport battler:req various \battler, VARIOUS_SET_TELEPORT_OUTCOME .endm - + .macro playtrainerdefeatbgm battler:req various \battler, VARIOUS_PLAY_TRAINER_DEFEATED_MUSIC .endm - + @ helpful macros .macro setstatchanger stat:req, stages:req, down:req setbyte sSTATCHANGER, \stat | \stages << 4 | \down << 7 .endm - + .macro setmoveeffect effect:req setbyte cEFFECT_CHOOSER, \effect .endm - + .macro chosenstatus1animation battler:req, status:req chosenstatusanimation \battler, 0x0, \status .endm - + .macro chosenstatus2animation battler:req, status:req chosenstatusanimation \battler, 0x1, \status .endm - + .macro sethword dst:req, value:req setbyte \dst, (\value) & 0xFF setbyte \dst + 1, ((\value) >> 8) & 0xFF .endm - + .macro setword dst:req, value:req setbyte \dst, (\value) & 0xFF setbyte \dst + 1, ((\value) >> 8) & 0xFF setbyte \dst + 2, ((\value) >> 16) & 0xFF setbyte \dst + 3, ((\value) >> 24) & 0xFF .endm - + .macro copybyte dst:req, src:req copyarray \dst, \src, 0x1 .endm - + .macro copyhword dst:req, src:req copyarray \dst, \src, 0x2 .endm - + .macro copyword dst:req, src:req copyarray \dst, \src, 0x4 .endm - + .macro jumpifbytenotequal byte1:req, byte2:req, jumpptr:req jumpifarraynotequal \byte1, \byte2, 0x1, \jumpptr .endm - + .macro jumpifbyteequal byte1:req, byte2:req, jumpptr:req jumpifarrayequal \byte1, \byte2, 0x1, \jumpptr .endm - + .macro jumpifmove move:req, jumpptr:req jumpifhalfword CMP_EQUAL, gCurrentMove, \move, \jumpptr .endm @@ -1418,23 +1418,23 @@ .macro jumpifnotmove move:req, jumpptr:req jumpifhalfword CMP_NOT_EQUAL, gCurrentMove, \move, \jumpptr .endm - + .macro jumpifstatus3 battler:req, status:req, jumpptr:req jumpifstatus3condition \battler, \status, FALSE, \jumpptr .endm - + .macro jumpifnostatus3 battler:req, status:req, jumpptr:req jumpifstatus3condition \battler, \status, TRUE, \jumpptr .endm - + .macro jumpifmovehadnoeffect jumpptr:req jumpifbyte CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_NO_EFFECT, \jumpptr .endm - + .macro jumpifbattletype flags:req, jumpptr:req jumpifword CMP_COMMON_BITS, gBattleTypeFlags, \flags, \jumpptr .endm - + .macro jumpifnotbattletype flags:req, jumpptr:req jumpifword CMP_NO_COMMON_BITS, gBattleTypeFlags, \flags, \jumpptr .endm diff --git a/asm/macros/event.inc b/asm/macros/event.inc index cea21aeb28f3..77916efe13d6 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -276,7 +276,7 @@ .2byte SPECIAL_\function .endm - @ Blocks script execution until a command or C code manually unblocks it. Generally used with specific + @ 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 @@ -985,7 +985,7 @@ .endm @ 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. + @ 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 .2byte \species @@ -997,7 +997,7 @@ .endm @ 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. + @ 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 .2byte \species @@ -1415,7 +1415,7 @@ .2byte \out .endm - @ Gives 'count' coins to the player, up to a total of MAX_COINS. + @ 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 @@ -1887,7 +1887,7 @@ @ Gives 'amount' of the specified 'item' to the player and prints a message with fanfare. @ If the player doesn't have space for all the items then as many are added as possible, the - @ message indicates there is no room, and VAR_RESULT is set to FALSE. + @ message indicates there is no room, and VAR_RESULT is set to FALSE. @ Otherwise VAR_RESULT is set to TRUE, and the message indicates they have received the item(s). .macro giveitem item:req, amount=1 setorcopyvar VAR_0x8000, \item diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s index c776c25327aa..df6cf1b6f3a8 100644 --- a/data/battle_ai_scripts.s +++ b/data/battle_ai_scripts.s @@ -1909,7 +1909,7 @@ AI_CV_Protect4: if_random_less_than 128, AI_CV_Protect_End score -1 goto AI_CV_Protect_End - + AI_CV_Protect3: get_last_used_bank_move AI_TARGET get_move_effect_from_result diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 39cdafceea40..7e99911b19cb 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -15,7 +15,7 @@ .include "constants/constants.inc" .section script_data, "aw", %progbits - + .align 2 gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectHit @ EFFECT_HIT @@ -2826,7 +2826,7 @@ BattleScript_GiveExp:: setbyte sGIVEEXP_STATE, 0 getexp BS_TARGET end2 - + BattleScript_HandleFaintedMon:: checkteamslost BattleScript_LinkHandleFaintedMonMultiple jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd @@ -4046,7 +4046,7 @@ BattleScript_IntimidatePrevented: printstring STRINGID_PREVENTEDFROMWORKING waitmessage B_WAIT_TIME_LONG goto BattleScript_IntimidateActivatesLoopIncrement - + BattleScript_DroughtActivates:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNSXINTENSIFIEDSUN diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc index 7c5c3fc7deb3..e9c8dd8d56c0 100644 --- a/data/scripts/new_game.inc +++ b/data/scripts/new_game.inc @@ -38,7 +38,7 @@ EventScript_ResetAllBerries:: setberrytree BERRY_TREE_ROUTE_117_WEPEAR_3, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_117_WEPEAR_2, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_117_WEPEAR_1, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES - + @ Route 112 setberrytree BERRY_TREE_ROUTE_112_RAWST_2, ITEM_TO_BERRY(ITEM_RAWST_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_112_PECHA_2, ITEM_TO_BERRY(ITEM_PECHA_BERRY), BERRY_STAGE_BERRIES diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index 7163a449aac3..fcb09bef2789 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -22,7 +22,7 @@ Roulette_EventScript_Play:: special PlayRoulette waitstate end - + Roulette_Text_PlayMinimumWagerIsX:: .string "The minimum wager at this table\n" .string "is {STR_VAR_1}. Do you want to play?$" diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index b9840d1c8297..7d40960f3bf9 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -17,8 +17,8 @@ cd /mnt/c/Users//Downloads ``` - > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. - > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. + > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed 4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitARM. diff --git a/gflib/text.c b/gflib/text.c index c7efdccce3bb..e7a7d5957b3b 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -73,7 +73,7 @@ static const u8 sDarkDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow_alt static const u8 sUnusedFRLGBlankedDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_blanked_down_arrow.4bpp"); static const u8 sUnusedFRLGDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_down_arrow.4bpp"); static const u8 sDownArrowYCoords[] = { 0, 1, 2, 1 }; -static const u8 sWindowVerticalScrollSpeeds[] = { +static const u8 sWindowVerticalScrollSpeeds[] = { [OPTIONS_TEXT_SPEED_SLOW] = 1, [OPTIONS_TEXT_SPEED_MID] = 2, [OPTIONS_TEXT_SPEED_FAST] = 4, @@ -299,7 +299,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi else { sTempTextPrinter.textSpeed = 0; - + // Render all text (up to limit) at once for (j = 0; j < 0x400; ++j) { diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 742f7d1b866d..6f4d1e4227b3 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -93,35 +93,35 @@ $(TILESETGFXDIR)/secondary/sootopolis/tiles.4bpp: %.4bpp: %.png SOOTOPOLISANIMDIR := $(TILESETGFXDIR)/secondary/sootopolis/anim $(SOOTOPOLISANIMDIR)/stormy_water/0.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/0_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/0_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/0_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/1.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/1_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/1_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/1_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/2.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/2_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/2_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/2_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/3.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/3_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/3_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/3_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/4.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/4_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/4_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/4_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/5.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/5_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/5_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/5_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/6.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/6_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/6_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/6_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/7.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/7_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/7_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/7_groudon.4bpp @cat $^ >$@ $(TILESETGFXDIR)/secondary/battle_frontier_outside_west/tiles.4bpp: %.4bpp: %.png @@ -671,7 +671,7 @@ $(OBJEVENTGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png $(INTERFACEGFXDIR)/selector_outline.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 8 -Wnum_tiles - + $(BATTRANSGFXDIR)/frontier_logo_center.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 43 -Wnum_tiles @@ -699,7 +699,7 @@ $(PKNAVGFXDIR)/header.4bpp: %.4bpp: %.png $(PKNAVGFXDIR)/device_outline.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 53 -Wnum_tiles - + $(PKNAVGFXDIR)/match_call/ui.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 13 -Wnum_tiles diff --git a/include/battle.h b/include/battle.h index 5cc552185992..e779dee3df8c 100644 --- a/include/battle.h +++ b/include/battle.h @@ -473,7 +473,7 @@ struct BattleStruct #define SET_STATCHANGER(statId, stage, goesDown)(gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7)) -// NOTE: The members of this struct have hard-coded offsets +// NOTE: The members of this struct have hard-coded offsets // in include/constants/battle_script_commands.h struct BattleScripting { diff --git a/include/global.h b/include/global.h index b1fd21d8b143..6e2cfa9b8043 100644 --- a/include/global.h +++ b/include/global.h @@ -878,7 +878,7 @@ struct MysteryGiftSave struct WonderCardMetadata cardMetadata; u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; struct WonderNewsMetadata newsMetadata; - u32 trainerIds[2][5]; // Saved ids for 10 trainers, 5 each for battles and trades + u32 trainerIds[2][5]; // Saved ids for 10 trainers, 5 each for battles and trades }; // 0x36C 0x3598 // For external event data storage. The majority of these may have never been used. diff --git a/include/link_rfu.h b/include/link_rfu.h index 673b19ff9015..1e434e8303f1 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -97,12 +97,12 @@ struct RfuGameCompatibilityData // wireless play (the kind the Pokémon games use) the gname data can be used for // anything the developers want. This struct is what GF decided to use it for. // It can be up to 13 bytes in size (RFU_GAME_NAME_LENGTH). -// The player's name is sent separately as the username ("uname"), and does not +// The player's name is sent separately as the username ("uname"), and does not // use a struct (gHostRfuUsername). struct __attribute__((packed, aligned(2))) RfuGameData { struct RfuGameCompatibilityData compatibility; - u8 partnerInfo[RFU_CHILD_MAX]; + u8 partnerInfo[RFU_CHILD_MAX]; u16 tradeSpecies:10; u16 tradeType:6; u8 activity:7; @@ -118,7 +118,7 @@ struct __attribute__((packed, aligned(2))) RfuGameData // Bits 0-2 are a shortened trainerId // Bit 3 is the player's gender // Bits 4-6 are unknown/unused -// Bit 7 is an 'active' flag +// Bit 7 is an 'active' flag #define PINFO_TID_MASK 0x7 #define PINFO_GENDER_SHIFT 3 #define PINFO_ACTIVE_FLAG (1 << 7) diff --git a/include/pokenav.h b/include/pokenav.h index 959998383f71..c6a8bb253e88 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -116,7 +116,7 @@ enum #define POKENAV_MENU_IDS_START 100000 enum { - POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons + POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons POKENAV_MAIN_MENU_CURSOR_ON_MAP, POKENAV_CONDITION_MENU, // The first Condition screen where the player selects Party or Search POKENAV_CONDITION_SEARCH_MENU, // The Condition search menu where the player selects a search parameter diff --git a/include/union_room.h b/include/union_room.h index acff4b592904..514a15985027 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -7,7 +7,7 @@ // In the Union Room the player is only ever connected to ≤ 4 other players. // However, there can be up to MAX_UNION_ROOM_LEADERS (8) object events to -// represent leaders of recently discovered link groups, and each of those groups +// represent leaders of recently discovered link groups, and each of those groups // may have up to MAX_RFU_PLAYERS (5) players in it including the leader. // These players are represented on-screen by NPC sprites drawn around the leader. // Thus there can be 40 sprites of other players on-screen, in 8 groups of 5. @@ -16,7 +16,7 @@ // The maximum number of recently connected players that can be tracked. // Note that this is significantly less than NUM_UNION_ROOM_SPRITES, i.e. not // every player that can be shown in the Union Room can be tracked at once. -// Information such as a group member's gender can instead be read from partnerInfo +// Information such as a group member's gender can instead be read from partnerInfo // of the leader's RfuGameData by tracking at least all of the group leaders. #define MAX_RFU_PLAYER_LIST_SIZE 16 diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 25817c0740a9..a5d4659a9dc1 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -495,7 +495,7 @@ static void TranslateSpriteInLissajousCurve(struct Sprite *sprite) sprite->y2 = Cos(sprite->sCirclePosY, sprite->sAmplitude); sprite->sCirclePosX += sprite->sCircleSpeedX; sprite->sCirclePosY += sprite->sCircleSpeedY; - + if (sprite->sCirclePosX >= 0x100) sprite->sCirclePosX -= 0x100; else if (sprite->sCirclePosX < 0) @@ -2429,7 +2429,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) dest = (task->tPaletteNum + 16) * 16; src = (gSprites[task->tBattlerSpriteId].oam.paletteNum + 0x10) * 0x10; - + // Set trace's priority based on battler's subpriority task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); if (task->tPriority == 20 || task->tPriority == 40) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index d2235027c744..fb5a7649a567 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6368,7 +6368,7 @@ static void Cmd_various(void) break; case VARIOUS_ARENA_JUDGMENT_WINDOW: i = BattleArena_ShowJudgmentWindow(&gBattleCommunication[0]); - + // BattleArena_ShowJudgmentWindow's last state was an intermediate step. // Return without advancing the current instruction so that it will be called again. if (i == ARENA_RESULT_RUNNING) diff --git a/src/battle_tent.c b/src/battle_tent.c index dba9e6e8a013..e51ac38a5a2a 100644 --- a/src/battle_tent.c +++ b/src/battle_tent.c @@ -390,7 +390,7 @@ static void GenerateOpponentMons(void) while (i != FRONTIER_PARTY_SIZE) { sRandMonId = monSet[Random() % numMons]; - + // Ensure none of the opponent's pokemon are the same as the potential rental pokemon for the player for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++) { diff --git a/src/battle_transition.c b/src/battle_transition.c index bc289efa7f8d..3675421ee101 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -2434,7 +2434,7 @@ static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task) { sTransitionData->BG0HOFS_Lower -= 8; sTransitionData->BG0HOFS_Upper += 8; - + // Start player's slide in once the opponent is finished if (IsTrainerPicSlideDone(task->tOpponentSpriteId)) { @@ -2770,7 +2770,7 @@ static bool8 Slice_Main(struct Task *task) { u16 *storeLoc1 = &gScanlineEffectRegBuffers[0][i]; u16 *storeLoc2 = &gScanlineEffectRegBuffers[0][i + DISPLAY_HEIGHT]; - + // Alternate rows if (i % 2) { @@ -3251,7 +3251,7 @@ static bool8 RectangularSpiral_Main(struct Task *task) // The line moved to a new position, draw the tile. done = FALSE; position = sRectangularSpiralLines[j].position; - + // Invert position for the two lines that start at the bottom. if ((j % 2) == 1) position = 637 - position; @@ -3281,7 +3281,7 @@ static bool8 RectangularSpiral_End(struct Task *task) 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. @@ -3294,9 +3294,9 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru sDebug_RectangularSpiralData = moveData[2]; sDebug_RectangularSpiralData = moveData[3]; - // Note that for the two lines originating at the bottom the + // Note that for the two lines originating at the bottom the // position is inverted, so the directions are flipped. - // i.e. position += 1 is right for the top lines and left + // i.e. position += 1 is right for the top lines and left // for their inverted partners on the bottom. switch (moveData[0]) { @@ -4170,13 +4170,13 @@ static void InitBlackWipe(s16 *data, s16 startX, s16 startY, s16 endX, s16 endY, static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) { u8 numFinished; - + if (tWipeXDist > tWipeYDist) { // X has further to move, move it first tWipeCurrX += tWipeXMove; - // If it has been far enough since Y's + // If it has been far enough since Y's // last move then move it too tWipeTemp += tWipeYDist; if (tWipeTemp > tWipeXDist) @@ -4190,7 +4190,7 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) // Y has further to move, move it first tWipeCurrY += tWipeYMove; - // If it has been far enough since X's + // If it has been far enough since X's // last move then move it too tWipeTemp += tWipeXDist; if (tWipeTemp > tWipeYDist) @@ -4201,9 +4201,9 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) } numFinished = 0; - + // Has X coord reached end? - if ((tWipeXMove > 0 && tWipeCurrX >= tWipeEndX) + if ((tWipeXMove > 0 && tWipeCurrX >= tWipeEndX) || (tWipeXMove < 0 && tWipeCurrX <= tWipeEndX)) { numFinished++; @@ -4212,7 +4212,7 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) } // Has Y coord reached end? - if ((tWipeYMove > 0 && tWipeCurrY >= tWipeEndY) + if ((tWipeYMove > 0 && tWipeCurrY >= tWipeEndY) || (tWipeYMove < 0 && tWipeCurrY <= tWipeEndY)) { numFinished++; diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 938b6bfc55a6..d19adf6f0b71 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1147,7 +1147,7 @@ static const union AnimCmd *const sAnimTable_AshPuff[] = sAnim_AshPuff, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = +const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = { .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_ASH, diff --git a/src/decoration.c b/src/decoration.c index cc740f189ee9..c5c7c02c34cb 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1211,7 +1211,7 @@ static void ShowDecorationOnMap_(u16 mapX, u16 mapY, u8 decWidth, u8 decHeight, { x = mapX + i; attributes = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + gDecorations[decoration].tiles[j * decWidth + i]); - if (MetatileBehavior_IsSecretBaseImpassable(attributes & METATILE_ATTR_BEHAVIOR_MASK) == TRUE + if (MetatileBehavior_IsSecretBaseImpassable(attributes & METATILE_ATTR_BEHAVIOR_MASK) == TRUE || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (attributes >> METATILE_ATTR_LAYER_SHIFT) != METATILE_LAYER_TYPE_NORMAL)) impassableFlag = MAPGRID_COLLISION_MASK; else @@ -1482,7 +1482,7 @@ static bool8 IsSecretBaseTrainerSpot(u8 behaviorAt, u16 layerType) // Can't place decoration where the player was standing when they interacted with the PC static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 layerType) { - if (x == gTasks[taskId].tInitialX + MAP_OFFSET + if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && layerType != METATILE_LAYER_TYPE_NORMAL) return FALSE; diff --git a/src/ereader_screen.c b/src/ereader_screen.c index 3baff84a8580..b6bf7133a02b 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -112,7 +112,7 @@ static bool32 ValidateEReaderConnection(void) REG_IME = 0; *(u64 *)handshakes = *(u64 *)gLink.handshakeBuffer; REG_IME = backupIME; - + // Validate that we are player 1, the EReader is player 2, // and that players 3 and 4 are empty. if (handshakes[0] == SLAVE_HANDSHAKE && handshakes[1] == EREADER_HANDSHAKE @@ -154,8 +154,8 @@ enum { static u32 TryReceiveCard(u8 *state, u16 *timer) { - if (*state >= RECV_STATE_EXCHANGE - && *state <= RECV_STATE_WAIT_DISCONNECT + if (*state >= RECV_STATE_EXCHANGE + && *state <= RECV_STATE_WAIT_DISCONNECT && HasLinkErrorOccurred()) { // Return error status if an error occurs diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 87249af010d6..a63eeb22b82b 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -2623,7 +2623,7 @@ bool8 ObjectEventIsTrainerAndCloseToPlayer(struct ObjectEvent *objectEvent) minY = objY - objectEvent->trainerRange_berryTreeId; maxX = objX + objectEvent->trainerRange_berryTreeId; maxY = objY + objectEvent->trainerRange_berryTreeId; - if (minX > playerX || maxX < playerX + if (minX > playerX || maxX < playerX || minY > playerY || maxY < playerY) return FALSE; diff --git a/src/field_tasks.c b/src/field_tasks.c index 099014a4d42c..dec5cba8002b 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -251,7 +251,7 @@ static const struct PacifidlogMetatileOffsets *GetPacifidlogBridgeMetatileOffset static void TrySetPacifidlogBridgeMetatiles(const struct PacifidlogMetatileOffsets *offsets, s16 x, s16 y, bool32 redrawMap) { offsets = GetPacifidlogBridgeMetatileOffsets(offsets, MapGridGetMetatileBehaviorAt(x, y)); - + // If offsets is NULL, position is not a log (don't set it) if (offsets) { @@ -301,7 +301,7 @@ static bool32 ShouldRaisePacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) } else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(oldBehavior)) { - // Still on same one if moved from left to right + // Still on same one if moved from left to right if (newX > oldX) return FALSE; } @@ -340,13 +340,13 @@ static bool32 ShouldSinkPacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) } else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(newBehavior)) { - // Still on same one if moved from right to left + // Still on same one if moved from right to left if (newX < oldX) return FALSE; } else if (MetatileBehavior_IsPacifidlogHorizontalLogRight(newBehavior)) { - // Still on same one if moved from left to right + // Still on same one if moved from left to right if (newX > oldX) return FALSE; } @@ -371,7 +371,7 @@ static void PacifidlogBridgePerStepCallback(u8 taskId) case 0: tPrevX = x; tPrevY = y; - + // If player is already standing on a log when the callback // is set then immediately set it to submerged TrySetLogBridgeFullySubmerged(x, y, TRUE); @@ -424,7 +424,7 @@ static void PacifidlogBridgePerStepCallback(u8 taskId) { // If player's current position is a log submerge it fully. TrySetLogBridgeFullySubmerged(x, y, TRUE); - + // Player's previous position is not the other end of a log // they're standing on, try to raise their previous position. if (tToRaiseX != -1 && tToRaiseY != -1) @@ -499,7 +499,7 @@ static void FortreeBridgePerStepCallback(u8 taskId) case 0: tPrevX = x; tPrevY = y; - + // If player is already on bridge when callback is set then lower it immediately. if (MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y))) { @@ -518,7 +518,7 @@ static void FortreeBridgePerStepCallback(u8 taskId) isFortreeBridgeCur = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y)); isFortreeBridgePrev = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(prevX, prevY)); - + // Make sure player isn't below bridge elevation = PlayerGetElevation(); onBridgeElevation = FALSE; @@ -672,7 +672,7 @@ static void SootopolisGymIcePerStepCallback(u8 taskId) // End if player hasn't moved if (x == tPrevX && y == tPrevY) return; - + tPrevX = x; tPrevY = y; tileBehavior = MapGridGetMetatileBehaviorAt(x, y); diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 437cec2fdbd4..4730c74fde16 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -61,7 +61,7 @@ struct SioInfo u8 filler[92]; }; -// Struct is mostly empty, presumably because usage of +// Struct is mostly empty, presumably because usage of // its fields was largely removed before release struct RfuDebug { @@ -1643,7 +1643,7 @@ bool32 RfuTryDisconnectLeavingChildren(void) { u8 childrenLeaving = 0; s32 i; - + // Check all children, get those waiting to be disconnected for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -2123,7 +2123,7 @@ void SetUnionRoomChatPlayerData(u32 numPlayers) // Only trainerId is shifted by the number of children, so the active flag and gender // are only ever set for the first child partnerInfo |= ((PINFO_ACTIVE_FLAG - | ((gLinkPlayers[gRfu.linkPlayerIdx[i]].gender & 1) << PINFO_GENDER_SHIFT) + | ((gLinkPlayers[gRfu.linkPlayerIdx[i]].gender & 1) << PINFO_GENDER_SHIFT) | (gLinkPlayers[gRfu.linkPlayerIdx[i]].trainerId & PINFO_TID_MASK)) << (numConnectedChildren * 8)); numConnectedChildren++; if (numConnectedChildren == numPlayers - 1) @@ -2477,7 +2477,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) rfu_LMAN_stopManager(FALSE); } - if (gRfuLinkStatus->parentChild == MODE_NEUTRAL + if (gRfuLinkStatus->parentChild == MODE_NEUTRAL && !lman.pcswitch_flag && FuncIsActiveTask(Task_UnionRoomListen) == TRUE) gRfu.state = RFUSTATE_UR_CONNECT; @@ -2816,7 +2816,7 @@ static bool32 IsPartnerActivityIncompatible(s16 activity, struct RfuGameData *pa } else if (activity == (ACTIVITY_TRADE | IN_UNION_ROOM)) { - // Verify that the trade offered hasn't changed + // Verify that the trade offered hasn't changed struct RfuGameData *original = &gRfu.parent; if (original->tradeSpecies == SPECIES_EGG) { diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 1e1fe5b34749..0825daea2c45 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -824,7 +824,7 @@ void UpdateWirelessStatusIndicatorSprite(void) struct Sprite *sprite = &gSprites[gWirelessStatusIndicatorSpriteId]; u8 signalStrength = RFU_LINK_ICON_LEVEL4_MAX; u8 i = 0; - + // Get weakest signal strength if (gRfuLinkStatus->parentChild == MODE_PARENT) { diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 72d3ac632f7e..e35a5b29ac3c 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -795,7 +795,7 @@ u8 MetatileBehavior_GetBridgeType(u8 metatileBehavior) && metatileBehavior <= MB_BRIDGE_OVER_POND_HIGH) return metatileBehavior - MB_BRIDGE_OVER_OCEAN; - if (metatileBehavior >= MB_BRIDGE_OVER_POND_MED_EDGE_1 + if (metatileBehavior >= MB_BRIDGE_OVER_POND_MED_EDGE_1 && metatileBehavior <= MB_BRIDGE_OVER_POND_MED_EDGE_2) return BRIDGE_TYPE_POND_MED; diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 72fc2b3774c6..c4e63bfbb81e 100755 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -171,8 +171,8 @@ static bool32 ValidateWonderCard(const struct WonderCard *card) return FALSE; if (card->type >= CARD_TYPE_COUNT) return FALSE; - if (!(card->sendType == SEND_TYPE_DISALLOWED - || card->sendType == SEND_TYPE_ALLOWED + if (!(card->sendType == SEND_TYPE_DISALLOWED + || card->sendType == SEND_TYPE_ALLOWED || card->sendType == SEND_TYPE_ALLOWED_ALWAYS)) return FALSE; if (card->bgType >= NUM_WONDER_BGS) @@ -429,7 +429,7 @@ u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLink u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused) { int stampsMissing = data->maxStamps - GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); - + // Has full stamp card? if (stampsMissing == 0) return 1; @@ -598,7 +598,7 @@ void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId) switch (stat) { case CARD_STAT_NUM_TRADES: - IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, + IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, trainerId, gSaveBlock1Ptr->mysteryGift.trainerIds[1], ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[1])); diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 92e544a27b5a..9e4796bb2059 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -1240,7 +1240,7 @@ static void Task_MysteryGift(u8 taskId) } else if (gSpecialVar_Result == LINKUP_FAILED) { - // Link failed, return to link start menu + // Link failed, return to link start menu ClearScreenInBg0(TRUE); data->state = MG_STATE_SOURCE_PROMPT; } diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 384e8ef74b9b..b059b183c86c 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -340,7 +340,7 @@ static void BufferCardText(void) if (sWonderCardData->card.idNumber > 999999) sWonderCardData->card.idNumber = 999999; ConvertIntToDecimalStringN(sWonderCardData->idNumberText, sWonderCardData->card.idNumber, STR_CONV_MODE_LEFT_ALIGN, 6); - + // Copy body text for (i = 0; i < WONDER_CARD_BODY_TEXT_LINES; i++) { @@ -364,12 +364,12 @@ static void BufferCardText(void) break; case CARD_TYPE_LINK_STAT: sWonderCardData->giftText[0] = EOS; - + // Load stats stats[0] = sWonderCardData->cardMetadata.battlesWon < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesWon : MAX_WONDER_CARD_STAT; stats[1] = sWonderCardData->cardMetadata.battlesLost < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesLost : MAX_WONDER_CARD_STAT; stats[2] = sWonderCardData->cardMetadata.numTrades < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.numTrades : MAX_WONDER_CARD_STAT; - + // Init stat text arrays for (i = 0; i < ARRAY_COUNT(sWonderCardData->statTextData); i++) { @@ -446,7 +446,7 @@ static void DrawCardWindow(u8 whichWindow) sCard_FooterTextOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->footerLine1Text); - + // Print footer line 2 if (sWonderCardData->card.type != CARD_TYPE_LINK_STAT) { @@ -486,7 +486,7 @@ static void CreateCardSprites(void) { u8 i = 0; sWonderCardData->monIconSpriteId = SPRITE_NONE; - + // Create icon sprite if (sWonderCardData->cardMetadata.iconSpecies != SPECIES_NONE) { @@ -505,7 +505,7 @@ static void CreateCardSprites(void) sWonderCardData->stampSpriteIds[i][1] = SPRITE_NONE; sWonderCardData->stampSpriteIds[i][0] = CreateSprite(&sSpriteTemplate_StampShadow, 216 - 32 * i, 144, 8); if (sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i] != SPECIES_NONE) - sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), + sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), SpriteCallbackDummy, 216 - 32 * i, 136, 0, 0); @@ -520,7 +520,7 @@ static void DestroyCardSprites(void) // Destroy icon sprite if (sWonderCardData->monIconSpriteId != SPRITE_NONE) FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->monIconSpriteId]); - + // Destroy stamp sprites if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { @@ -865,7 +865,7 @@ u32 WonderNews_GetInput(u16 input) static void BufferNewsText(void) { u8 i = 0; - + // Copy title text memcpy(sWonderNewsData->titleText, sWonderNewsData->news.titleText, WONDER_NEWS_TEXT_LENGTH); sWonderNewsData->titleText[WONDER_NEWS_TEXT_LENGTH] = EOS; @@ -896,7 +896,7 @@ static void DrawNewsWindows(void) if (x < 0) x = 0; AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], FONT_SHORT_COPY_1, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); - + // Print body text for (; i < WONDER_NEWS_BODY_TEXT_LINES; i++) AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], FONT_SHORT_COPY_1, 0, diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index dde86f1557d5..01cbacb44732 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -560,7 +560,7 @@ static void DoAreaGlow(void) if (sPokedexAreaScreen->markerTimer > 12) { sPokedexAreaScreen->markerTimer = 0; - + // Flash the marker // With a max of 4, the marker will disappear twice sPokedexAreaScreen->markerFlashCounter++; @@ -737,7 +737,7 @@ static void CreateAreaMarkerSprites(void) static void DestroyAreaScreenSprites(void) { u16 i; - + // Destroy area marker sprites FreeSpriteTilesByTag(TAG_AREA_MARKER); FreeSpritePaletteByTag(TAG_AREA_MARKER); @@ -772,7 +772,7 @@ static void CreateAreaUnknownSprites(void) if (sPokedexAreaScreen->numOverworldAreas || sPokedexAreaScreen->numSpecialAreas) { - // The current species is present on the map, don't create any "Area Unknown" sprites + // The current species is present on the map, don't create any "Area Unknown" sprites for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaUnknownSprites); i++) sPokedexAreaScreen->areaUnknownSprites[i] = NULL; } diff --git a/src/pokemon.c b/src/pokemon.c index e16bc64a64d4..b65f97bd8562 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1848,7 +1848,7 @@ static const u8 sMonAnimationDelayTable[NUM_SPECIES - 1] = #define PP_UP_SHIFTS_INV(val) (u8)~(val), (u8)~((val) << 2), (u8)~((val) << 4), (u8)~((val) << 6) // PP Up bonuses are stored for a Pokémon as a single byte. -// There are 2 bits (a value 0-3) for each move slot that +// There are 2 bits (a value 0-3) for each move slot that // represent how many PP Ups have been applied. // The following arrays take a move slot id and return: // gPPUpGetMask - A mask to get the number of PP Ups applied to that move slot @@ -3119,7 +3119,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de spAttack = attacker->spAttack; spDefense = defender->spDefense; - // Get attacker hold item info + // Get attacker hold item info if (attacker->item == ITEM_ENIGMA_BERRY) { attackerHoldEffect = gEnigmaBerries[battlerIdAtk].holdEffect; @@ -5204,7 +5204,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov case 4: // ITEM5_PP_MAX dataUnsigned = (GetMonData(mon, MON_DATA_PP_BONUSES, NULL) & gPPUpGetMask[moveIndex]) >> (moveIndex * 2); temp2 = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex); - + // Check if 3 PP Ups have been applied already, and that the move has a total PP of at least 5 (excludes Sketch) if (dataUnsigned < 3 && temp2 >= 5) { @@ -6918,7 +6918,7 @@ static bool8 ShouldSkipFriendshipChange(void) // Only the 'default' mode (MON_SPR_GFX_MODE_NORMAL) is used, which is set // up to allocate 4 sprites using the battler sprite templates (gBattlerSpriteTemplates). // MON_SPR_GFX_MODE_BATTLE is identical but never used. -// MON_SPR_GFX_MODE_FULL_PARTY is set up to allocate 7 sprites (party + trainer?) +// MON_SPR_GFX_MODE_FULL_PARTY is set up to allocate 7 sprites (party + trainer?) // using a generic 64x64 template, and is also never used. // Between the unnecessarily large sizes below, a mistake allocating the spritePointers @@ -6980,7 +6980,7 @@ struct MonSpritesGfxManager *CreateMonSpritesGfxManager(u8 managerId, u8 mode) gfx->dataSize = 1; gfx->mode = MON_SPR_GFX_MODE_FULL_PARTY; break; - // case MON_SPR_GFX_MODE_BATTLE: + // case MON_SPR_GFX_MODE_BATTLE: case MON_SPR_GFX_MODE_NORMAL: default: gfx->numSprites = MAX_BATTLERS_COUNT; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index aa55e42c70cc..74e1da2cc674 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3879,7 +3879,7 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) summary->species2, summary->pid); else - HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], + HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], summary->species2, summary->pid); @@ -3891,7 +3891,7 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], - summary->species2, + summary->species2, summary->pid); else HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[summary->species2], diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c index bc55fa7515f4..ec8d67cbe233 100644 --- a/src/pokenav_menu_handler_gfx.c +++ b/src/pokenav_menu_handler_gfx.c @@ -904,7 +904,7 @@ static void StartOptionAnimations_Enter(void) // Not selected, set default position x = OPTION_DEFAULT_X; } - + // Slide new options in StartOptionSlide(gfx->iconSprites[i], OPTION_EXIT_X, x, 12); SetOptionInvisibility(gfx->iconSprites[i], FALSE); diff --git a/src/record_mixing.c b/src/record_mixing.c index b03d7be2f325..c899db25e7f7 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -879,7 +879,7 @@ static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *records, size for (i = 0; i < linkPlayerCount; i++) { mixMail = (void *)records + i * recordSize; - + // Count number of players that have at least // one daycare Pokémon with no held item if (canHoldItem[i][0] == TRUE || canHoldItem[i][1] == TRUE) @@ -945,7 +945,7 @@ static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *records, size case 4: // 4 players can swap, select which 2 pairings will swap ptr = idxs; - + // Swap pair 1 playerSlot1 = sDaycareMailSwapIds_4Player[tableId][0]; playerSlot2 = sDaycareMailSwapIds_4Player[tableId][1]; diff --git a/src/roamer.c b/src/roamer.c index c17ec490c8f8..e9dc72a99383 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -127,7 +127,7 @@ void UpdateLocationHistoryForRoamer(void) void RoamerMoveToOtherLocationSet(void) { u8 mapNum = 0; - + if (!ROAMER->active) return; @@ -170,8 +170,8 @@ void RoamerMove(void) // Choose a new map (excluding the first) within this set // Also exclude a map if the roamer was there 2 moves ago mapNum = sRoamerLocations[locSet][(Random() % (NUM_LOCATIONS_PER_SET - 1)) + 1]; - if (!(sLocationHistory[2][MAP_GRP] == ROAMER_MAP_GROUP - && sLocationHistory[2][MAP_NUM] == mapNum) + if (!(sLocationHistory[2][MAP_GRP] == ROAMER_MAP_GROUP + && sLocationHistory[2][MAP_NUM] == mapNum) && mapNum != MAP_NUM(UNDEFINED)) break; } diff --git a/src/rom_header.s b/src/rom_header.s index c5fa5ddf40e0..75edcebd87b2 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -1,5 +1,5 @@ @ Note: ROM header data is empty space here. -@ It's populated by gbafix using data provided in the Makefile. +@ It's populated by gbafix using data provided in the Makefile. .global Start Start: diff --git a/src/save.c b/src/save.c index e7c91580e520..765fb045c3c0 100644 --- a/src/save.c +++ b/src/save.c @@ -913,7 +913,7 @@ u16 GetSaveBlocksPointersBaseOffset(void) for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { ReadFlashSector(i + slotOffset, gReadWriteSector); - + // Base offset for SaveBlock2 is calculated using the trainer id if (gReadWriteSector->id == SECTOR_ID_SAVEBLOCK2) return sector->data[offsetof(struct SaveBlock2, playerTrainerId[0])] + diff --git a/src/script.c b/src/script.c index 484f8e96622a..c252c95f0446 100644 --- a/src/script.c +++ b/src/script.c @@ -213,9 +213,9 @@ void ScriptContext_Init(void) sGlobalScriptContextStatus = CONTEXT_SHUTDOWN; } -// Runs the script until the script makes a wait* call, then returns true if -// there's more script to run, or false if the script has hit the end. -// This function also returns false if the context is finished +// Runs the script until the script makes a wait* call, then returns true if +// there's more script to run, or false if the script has hit the end. +// This function also returns false if the context is finished // or waiting (after a call to _Stop) bool8 ScriptContext_RunScript(void) { diff --git a/src/slot_machine.c b/src/slot_machine.c index dd2622e2be30..3b82afde197a 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1880,7 +1880,7 @@ static u8 TrySelectBias_Regular(void) { s16 rval = Random() & 0xff; s16 value = sBiasProbabilities_Regular[whichBias][sSlotMachine->machineId]; - + // Boost odds of BIAS_POWER if it's a lucky game. if (whichBias == 0 && sSlotMachine->luckyGame == TRUE) { @@ -3668,7 +3668,7 @@ static void ReelTime_CheckExplode(struct Task *task) if (sSlotMachine->reelTimeDraw) { if (sSlotMachine->reelTimeSpinsLeft <= task->tExplodeChecks) - task->tState++; // RT_TASK_LAND + task->tState++; // RT_TASK_LAND } else if (task->tExplodeChecks > 3) { @@ -5309,7 +5309,7 @@ static const u8 sSpecialDrawOdds[NUM_SLOT_MACHINE_IDS][MAX_BET] = { }; static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { - { + { // Probabilities for BIAS_STRAIGHT_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5318,7 +5318,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 40, [SLOT_MACHINE_LUCKIEST] = 50 }, - { + { // Probabilities for BIAS_REELTIME [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5327,7 +5327,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 35, [SLOT_MACHINE_LUCKIEST] = 35 }, - { + { // Probabilities for BIAS_MIXED_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5339,7 +5339,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { }; static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { - { + { // Probabilities for BIAS_POWER [SLOT_MACHINE_UNLUCKIEST] = 20, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5348,7 +5348,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 25, [SLOT_MACHINE_LUCKIEST] = 25 }, - { + { // Probabilities for BIAS_AZURILL [SLOT_MACHINE_UNLUCKIEST] = 12, [SLOT_MACHINE_UNLUCKIER] = 15, @@ -5357,7 +5357,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 19, [SLOT_MACHINE_LUCKIEST] = 22 }, - { + { // Probabilities for BIAS_LOTAD [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5366,7 +5366,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 30, [SLOT_MACHINE_LUCKIEST] = 40 }, - { + { // Probabilities for BIAS_CHERRY [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5375,7 +5375,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 15, [SLOT_MACHINE_LUCKIEST] = 15 }, - { + { // Probabilities for BIAS_REPLAY [SLOT_MACHINE_UNLUCKIEST] = 40, [SLOT_MACHINE_UNLUCKIER] = 40, diff --git a/src/sound.c b/src/sound.c index aa6fb32ee793..15ebee831232 100644 --- a/src/sound.c +++ b/src/sound.c @@ -377,7 +377,7 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode) u8 table; species--; - + // Set default values // May be overridden depending on mode. length = 140; diff --git a/src/trade.c b/src/trade.c index e24051e04120..ba18e8d32cea 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2465,7 +2465,7 @@ int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct Rf else { // Player's Pokémon must be of the type the partner requested - if (gBaseStats[playerSpecies2].type1 != requestedType + if (gBaseStats[playerSpecies2].type1 != requestedType && gBaseStats[playerSpecies2].type2 != requestedType) return UR_TRADE_MSG_NOT_MON_PARTNER_WANTS; } diff --git a/src/tv.c b/src/tv.c index 2f3d17ee2820..0c394acf7666 100644 --- a/src/tv.c +++ b/src/tv.c @@ -2058,7 +2058,7 @@ static void SecretBaseVisit_CalculatePartyData(TVShow *show) { sTV_SecretBaseVisitMonsTemp[numPokemon].level = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); sTV_SecretBaseVisitMonsTemp[numPokemon].species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); - + // Check all the Pokémon's moves, then randomly select one to save numMoves = 0; move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE1); @@ -2093,7 +2093,7 @@ static void SecretBaseVisit_CalculatePartyData(TVShow *show) for (i = 0, sum = 0; i < numPokemon; i++) sum += sTV_SecretBaseVisitMonsTemp[i].level; - // Using the data calculated above, save the data to talk about on the show + // Using the data calculated above, save the data to talk about on the show // (average level, and one randomly selected species / move) show->secretBaseVisit.avgLevel = sum / numPokemon; j = Random() % numPokemon; @@ -2643,7 +2643,7 @@ void DoPokeNews(void) // News event is upcoming, make comment about countdown to event u16 dayCountdown = gSaveBlock1Ptr->pokeNews[i].dayCountdown; ConvertIntToDecimalStringN(gStringVar1, dayCountdown, STR_CONV_MODE_LEFT_ALIGN, 1); - + // Mark as inactive so the countdown TV airing doesn't repeat // Will be flagged as "upcoming" again by UpdatePokeNewsCountdown gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_INACTIVE; @@ -2848,7 +2848,7 @@ static bool8 IsRecordMixShowAlreadySpawned(u8 kind, bool8 delete) static void SortPurchasesByQuantity(void) { u8 i, j; - + for (i = 0; i < SMARTSHOPPER_NUM_ITEMS - 1; i++) { for (j = i + 1; j < SMARTSHOPPER_NUM_ITEMS; j++) diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index beff4440d09f..86a0f1a44ec9 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -569,7 +569,7 @@ bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdP for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { s32 id = UR_PLAYER_SPRITE_ID(i, memberId); - + // Is the player in front of a group member position? if (x != sUnionRoomPlayerCoords[i][0] + sUnionRoomGroupOffsets[memberId][0] + 7) continue; diff --git a/src/walda_phrase.c b/src/walda_phrase.c index 025f900e5a70..e5556b53e303 100644 --- a/src/walda_phrase.c +++ b/src/walda_phrase.c @@ -174,7 +174,7 @@ static bool32 TryCalculateWallpaper(u16 *backgroundClr, u16 *foregroundClr, u8 * if (GetWallpaperDataBits(data, 0, 3) != GetWallpaperDataBits(charsByTableId, TO_BIT_OFFSET(WALDA_PHRASE_LENGTH - 1) + 2, 3)) return FALSE; - // Perform some relatively arbitrary changes to the wallpaper data using the last byte (KEY) + // Perform some relatively arbitrary changes to the wallpaper data using the last byte (KEY) RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES, 21); RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY & 0xF); MaskWallpaperData(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY >> 4); diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 4f9697753e58..01161e6ccbc8 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -64,7 +64,7 @@ static const struct WildPokemon sWildFeebas = {20, 25, SPECIES_FEEBAS}; static const u16 sRoute119WaterTileData[] = { -//yMin, yMax, numSpots in previous sections +//yMin, yMax, numSpots in previous sections 0, 45, 0, 46, 91, NUM_FISHING_SPOTS_1, 92, 139, NUM_FISHING_SPOTS_1 + NUM_FISHING_SPOTS_2, @@ -142,7 +142,7 @@ static bool8 CheckFeebas(void) feebasSpots[i] = FeebasRandom() % NUM_FISHING_SPOTS; if (feebasSpots[i] == 0) feebasSpots[i] = NUM_FISHING_SPOTS; - + // < 1 below is a pointless check, it will never be TRUE. // >= 4 to skip fishing spots 1-3, because these are inaccessible // spots at the top of the map, at (9,7), (7,13), and (15,16). diff --git a/src/wonder_news.c b/src/wonder_news.c index ec93d293edbc..e083575d9525 100644 --- a/src/wonder_news.c +++ b/src/wonder_news.c @@ -76,7 +76,7 @@ u16 RetrieveWonderNewsVal(void) struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); u16 newsVal; - // Checks if Mystery Event is enabled, not Mystery Gift? + // Checks if Mystery Event is enabled, not Mystery Gift? if (!IsMysteryEventEnabled() || !ValidateSavedWonderNews()) return 0; diff --git a/sym_common.txt b/sym_common.txt index 407b183a7f85..7eebcac74e62 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -53,9 +53,9 @@ gReservedSpritePaletteCount: .include "tv.o" .include "mauville_old_man.o" .include "image_processing_effects.o" - + .space 0x4 - + .include "contest_painting.o" .include "field_specials.o" .include "evolution_scene.o" @@ -66,12 +66,12 @@ gReservedSpritePaletteCount: .include "battle_anim_throw.o" .include "battle_factory_screen.o" .include "apprentice.o" - + .space 0x8 - + .include "list_menu.o" .include "party_menu.o" - + .space 0x44 .include "ereader_screen.o" From 041870672ac07c98f4cab39c25737201740728ea Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 12 Sep 2022 15:11:58 -0400 Subject: [PATCH 729/762] Add misc constant usage to field_weather_effect --- src/field_weather_effect.c | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index 820628ff8390..f5769cc230d3 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -596,8 +596,8 @@ static void UpdateRainSprite(struct Sprite *sprite) sprite->y = sprite->tPosY >> 4; if (sprite->tActive - && (sprite->x >= -8 && sprite->x <= 248) - && sprite->y >= -16 && sprite->y <= 176) + && (sprite->x >= -8 && sprite->x <= DISPLAY_WIDTH + 8) + && sprite->y >= -16 && sprite->y <= DISPLAY_HEIGHT + 16) sprite->invisible = FALSE; else sprite->invisible = TRUE; @@ -1442,9 +1442,9 @@ static void FogHorizontalSpriteCallback(struct Sprite *sprite) { sprite->y2 = (u8)gSpriteCoordOffsetY; sprite->x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64; - if (sprite->x > 271) + if (sprite->x >= DISPLAY_WIDTH + 32) { - sprite->x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64; + sprite->x = (DISPLAY_WIDTH * 2) + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64; sprite->x &= 0x1FF; } } @@ -1701,9 +1701,9 @@ static void UpdateAshSprite(struct Sprite *sprite) sprite->y = gSpriteCoordOffsetY + sprite->tOffsetY; sprite->x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->x > 271) + if (sprite->x >= DISPLAY_WIDTH + 32) { - sprite->x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x = gWeatherPtr->ashBaseSpritesX + (DISPLAY_WIDTH * 2) - (4 - sprite->tSpriteColumn) * 64; sprite->x &= 0x1FF; } } @@ -1911,9 +1911,9 @@ static void UpdateFogDiagonalSprite(struct Sprite *sprite) { sprite->y2 = gWeatherPtr->fogDPosY; sprite->x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->x > 271) + if (sprite->x >= DISPLAY_WIDTH + 32) { - sprite->x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x = gWeatherPtr->fogDBaseSpritesX + (DISPLAY_WIDTH * 2) - (4 - sprite->tSpriteColumn) * 64; sprite->x &= 0x1FF; } } @@ -2187,9 +2187,9 @@ static void UpdateSandstormSprite(struct Sprite *sprite) { sprite->y2 = gWeatherPtr->sandstormPosY; sprite->x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64; - if (sprite->x > 271) + if (sprite->x >= DISPLAY_WIDTH + 32) { - sprite->x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; + sprite->x = gWeatherPtr->sandstormBaseSpritesX + (DISPLAY_WIDTH * 2) - (4 - sprite->tSpriteColumn) * 64; sprite->x &= 0x1FF; } } @@ -2206,7 +2206,7 @@ static void UpdateSandstormSwirlSprite(struct Sprite *sprite) if (--sprite->y < -48) { - sprite->y = 208; + sprite->y = DISPLAY_HEIGHT + 48; sprite->tRadius = 4; } @@ -2567,14 +2567,16 @@ void ResumePausedWeather(void) SetCurrentAndNextWeather(weather); } -static const u8 sWeatherCycleRoute119[] = +#define WEATHER_CYCLE_LENGTH 4 + +static const u8 sWeatherCycleRoute119[WEATHER_CYCLE_LENGTH] = { WEATHER_SUNNY, WEATHER_RAIN, WEATHER_RAIN_THUNDERSTORM, WEATHER_RAIN, }; -static const u8 sWeatherCycleRoute123[] = +static const u8 sWeatherCycleRoute123[WEATHER_CYCLE_LENGTH] = { WEATHER_SUNNY, WEATHER_SUNNY, @@ -2611,7 +2613,7 @@ static u8 TranslateWeatherNum(u8 weather) void UpdateWeatherPerDay(u16 increment) { u16 weatherStage = gSaveBlock1Ptr->weatherCycleStage + increment; - weatherStage %= 4; + weatherStage %= WEATHER_CYCLE_LENGTH; gSaveBlock1Ptr->weatherCycleStage = weatherStage; } From 5eb931225082972b013964c1a160989b7d69bd69 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 12 Sep 2022 21:14:15 -0300 Subject: [PATCH 730/762] Added missing labels in headers --- gflib/text.h | 1 - include/event_object_movement.h | 99 ++++++++++++++++----------------- include/field_effect.h | 2 +- include/field_player_avatar.h | 2 +- include/link.h | 2 +- include/menu.h | 2 +- include/palette.h | 22 ++++---- 7 files changed, 64 insertions(+), 66 deletions(-) diff --git a/gflib/text.h b/gflib/text.h index c07817290d3c..a88cb990e18f 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -148,7 +148,6 @@ void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor); void DecompressGlyphTile(const void *src_, void *dest_); void CopyGlyphToWindow(struct TextPrinter *x); void ClearTextSpan(struct TextPrinter *textPrinter, u32 width); -u8 GetMenuCursorDimensionByFont(u8, u8); void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter); void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter); diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 22cef492194a..aad161553c5d 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -77,55 +77,55 @@ extern const struct SpriteFrameImage *const gBerryTreePicTablePointers[]; extern const u8 *const gBerryTreePaletteSlotTablePointers[]; void ResetObjectEvents(void); -u8 GetMoveDirectionAnimNum(u8); -u8 GetObjectEventIdByLocalIdAndMap(u8, u8, u8); -bool8 TryGetObjectEventIdByLocalIdAndMap(u8, u8, u8, u8 *); -u8 GetObjectEventIdByXY(s16, s16); -void SetObjectEventDirection(struct ObjectEvent *, u8); +u8 GetMoveDirectionAnimNum(u8 direction); +u8 GetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId); +bool8 TryGetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId, u8 *objectEventId); +u8 GetObjectEventIdByXY(s16 x, s16 y); +void SetObjectEventDirection(struct ObjectEvent *objectEvent, u8 direction); u8 GetFirstInactiveObjectEventId(void); -void RemoveObjectEventByLocalIdAndMap(u8, u8, u8); -void LoadPlayerObjectReflectionPalette(u16, u8); -void LoadSpecialObjectReflectionPalette(u16, u8); -void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16); -void PatchObjectPalette(u16, u8); -void SpawnObjectEventsOnReturnToField(s16, s16); +void RemoveObjectEventByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup); +void LoadPlayerObjectReflectionPalette(u16 tag, u8 slot); +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 GetMapCoordsFromSpritePos(s16, s16, s16 *, s16 *); -u8 GetFaceDirectionAnimNum(u8); -void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16); +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 TrySpawnObjectEvents(s16, s16); +void TrySpawnObjectEvents(s16 cameraX, s16 cameraY); u8 CreateObjectGraphicsSprite(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); -u8 TrySpawnObjectEvent(u8, u8, u8); +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 *); -void SetSpritePosToMapCoords(s16, s16, s16 *, s16 *); +void SetSpritePosToMapCoords(s16 mapX, s16 mapY, s16 *destX, s16 *destY); void CameraObjectReset1(void); void ObjectEventSetGraphicsId(struct ObjectEvent *, u8 graphicsId); -void ObjectEventTurn(struct ObjectEvent *, u8); -void ObjectEventTurnByLocalIdAndMap(u8, u8, u8, u8); +void ObjectEventTurn(struct ObjectEvent *, u8 direction); +void ObjectEventTurnByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 direction); const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId); -void SetObjectInvisibility(u8, u8, u8, bool8); +void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible); void FreeAndReserveObjectSpritePalettes(void); void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y); -void ResetObjectSubpriority(u8, u8, u8); -void SetObjectSubpriority(u8, u8, u8, u8); -void AllowObjectAtPosTriggerGroundEffects(s16, s16); +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, s16); -void MoveObjectEventToMapCoords(struct ObjectEvent *, s16, s16); -void TryOverrideObjectEventTemplateCoords(u8, u8, u8); +void ShiftObjectEventCoords(struct ObjectEvent *, s16 x, s16 y); +void MoveObjectEventToMapCoords(struct 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); -u8 GetOppositeDirection(u8); +u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8 direction); +u8 GetOppositeDirection(u8 direction); u8 GetWalkInPlaceFasterMovementAction(u32); u8 GetWalkInPlaceFastMovementAction(u32); u8 GetWalkInPlaceNormalMovementAction(u32); u8 GetWalkInPlaceSlowMovementAction(u32); -u8 GetCollisionAtCoords(struct ObjectEvent *, s16, s16, u32); -void MoveCoords(u8, s16 *, s16 *); +u8 GetCollisionAtCoords(struct ObjectEvent *, s16 x, s16 y, u32 dir); +void MoveCoords(u8 direction, s16 *x, s16 *y); bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *); u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *); u8 GetObjectEventIdByPosition(u16 x, u16 y, u8 elevation); @@ -168,22 +168,22 @@ u8 AddCameraObject(u8 linkedSpriteId); void UpdateObjectEventsForCameraUpdate(s16 x, s16 y); u8 GetWalkSlowMovementAction(u32); u8 GetJumpMovementAction(u32); -u8 ElevationToPriority(u8); +u8 ElevationToPriority(u8 elevation); void ObjectEventUpdateElevation(struct ObjectEvent *objEvent); -void SetObjectSubpriorityByElevation(u8, struct Sprite *, u8); +void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *, u8 subpriority); void UnfreezeObjectEvent(struct ObjectEvent *); u8 FindLockedObjectEventIndex(struct ObjectEvent *); -void SetAndStartSpriteAnim(struct Sprite *, u8, u8); +void SetAndStartSpriteAnim(struct Sprite *, u8 animNum, u8 animCmdIndex); bool8 SpriteAnimEnded(struct Sprite *); void UnfreezeObjectEvents(void); void FreezeObjectEventsExceptOne(u8 objectEventId); void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2); void FreezeObjectEvents(void); bool8 FreezeObjectEvent(struct ObjectEvent *objectEvent); -u8 GetMoveDirectionFastAnimNum(u8); -u8 GetMoveDirectionFasterAnimNum(u8); -u8 GetMoveDirectionFastestAnimNum(u8); -u8 GetLedgeJumpDirection(s16, s16, u8); +u8 GetMoveDirectionFastAnimNum(u8 direction); +u8 GetMoveDirectionFasterAnimNum(u8 direction); +u8 GetMoveDirectionFastestAnimNum(u8 direction); +u8 GetLedgeJumpDirection(s16 x, s16 y, u8 direction); void CameraObjectSetFollowedSpriteId(u8 objectId); u16 GetObjectPaletteTag(u8 palSlot); void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible); @@ -192,7 +192,7 @@ s16 GetFigure8YOffset(s16 idx); void CameraObjectReset2(void); u8 GetObjectEventBerryTreeId(u8 objectEventId); void SetBerryTreeJustPicked(u8 mapId, u8 mapNumber, u8 mapGroup); -bool8 IsBerryTreeSparkling(u8, u8, u8); +bool8 IsBerryTreeSparkling(u8 localId, u8 mapNum, u8 mapGroup); void MovementType_None(struct Sprite *); void MovementType_LookAround(struct Sprite *); @@ -250,7 +250,6 @@ void MovementType_RunInPlace(struct Sprite *); void MovementType_Invisible(struct Sprite *); void MovementType_WalkSlowlyInPlace(struct Sprite *); u8 GetSlideMovementAction(u32); -u8 GetJumpInPlaceMovementAction(u32); u8 GetJumpMovementAction(u32); u8 GetJump2MovementAction(u32); u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority); @@ -262,17 +261,17 @@ 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 *); -u8 GetVectorDirection(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_EastNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestSouth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_EastSouth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorthWest(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorthEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_NorthWestEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthWestEast(s16, s16, s16, s16); +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); +u8 GetLimitedVectorDirection_WestNorth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_EastNorth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_WestSouth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_EastSouth(s16 dx, s16 dy, s16 absdx, s16 absdy); +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 *); diff --git a/include/field_effect.h b/include/field_effect.h index b35a8c869423..4cde29e8a3a7 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -18,7 +18,7 @@ void FieldEffectStop(struct Sprite *sprite, u8 id); u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer); void FldEff_TeleportWarpOut(void); void FieldEffectActiveListRemove(u8 id); -void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8); +void MultiplyInvertedPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b); void FieldEffectActiveListAdd(u8 id); void FieldEffectScript_LoadTiles(u8 **script); void FieldEffectScript_LoadFadedPalette(u8 **script); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 2bf2df26978c..39fc886af8a4 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -38,7 +38,7 @@ void PlayerFreeze(void); void StopPlayerAvatar(void); void SetSpinStartFacingDir(u8); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); -u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8); +u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8 state, u8 gender); void SetPlayerAvatarFieldMove(void); u8 GetPlayerAvatarGraphicsIdByCurrentState(void); void SetPlayerAvatarStateMask(u8 flags); diff --git a/include/link.h b/include/link.h index 120c25784eda..7fa5e3fae6fd 100644 --- a/include/link.h +++ b/include/link.h @@ -284,7 +284,7 @@ void SerialCB(void); bool32 InUnionRoom(void); void LoadWirelessStatusIndicatorSpriteGfx(void); bool8 IsLinkTaskFinished(void); -void CreateWirelessStatusIndicatorSprite(u8, u8); +void CreateWirelessStatusIndicatorSprite(u8 x, u8 y); void SetLinkStandbyCallback(void); void SetWirelessCommType1(void); void CheckShouldAdvanceLinkState(void); diff --git a/include/menu.h b/include/menu.h index 43b564da28fb..0b0a42423d74 100644 --- a/include/menu.h +++ b/include/menu.h @@ -92,7 +92,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); u8 ChangeMenuGridCursorPosition(s8 deltaX, s8 deltaY); u8 GetStartMenuWindowId(void); -void ListMenuLoadStdPalAt(u8, u8); +void ListMenuLoadStdPalAt(u8 palOffset, u8 palId); u8 Menu_MoveCursor(s8 cursorDelta); u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta); void DrawStdWindowFrame(u8 windowId, bool8 CopyToVram); diff --git a/include/palette.h b/include/palette.h index 81a1e1caec7c..736fde96bb96 100644 --- a/include/palette.h +++ b/include/palette.h @@ -52,22 +52,22 @@ extern u8 gPaletteDecompressionBuffer[]; extern u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE]; extern u16 gPlttBufferFaded[PLTT_BUFFER_SIZE]; -void LoadCompressedPalette(const u32 *, u16, u16); -void LoadPalette(const void *, u16, u16); -void FillPalette(u16, u16, u16); +void LoadCompressedPalette(const u32 *src, u16 offset, u16 size); +void LoadPalette(const void *src, u16 offset, u16 size); +void FillPalette(u16 value, u16 offset, u16 size); void TransferPlttBuffer(void); u8 UpdatePaletteFade(void); void ResetPaletteFade(void); -bool8 BeginNormalPaletteFade(u32, s8, u8, u8, u16); -void PaletteStruct_ResetById(u16); +bool8 BeginNormalPaletteFade(u32 selectedPalettes, s8 delay, u8 startY, u8 targetY, u16 blendColor); +void PaletteStruct_ResetById(u16 id); void ResetPaletteFadeControl(void); -void InvertPlttBuffer(u32); -void TintPlttBuffer(u32, s8, s8, s8); -void UnfadePlttBuffer(u32); -void BeginFastPaletteFade(u8); -void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); +void InvertPlttBuffer(u32 selectedPalettes); +void TintPlttBuffer(u32 selectedPalettes, s8 r, s8 g, s8 b); +void UnfadePlttBuffer(u32 selectedPalettes); +void BeginFastPaletteFade(u8 submode); +void BeginHardwarePaletteFade(u8 blendCnt, u8 delay, u8 y, u8 targetY, u8 shouldResetBlendRegisters); void BlendPalettes(u32 selectedPalettes, u8 coeff, u16 color); -void BlendPalettesUnfaded(u32, u8, u16); +void BlendPalettesUnfaded(u32 selectedPalettes, u8 coeff, u16 color); void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTarget, u16 color, u8 priority, u8 id); void TintPalette_GrayScale(u16 *palette, u16 count); void TintPalette_GrayScale2(u16 *palette, u16 count); From 222362e8045e653115cf4e4759c1a25732cea899 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 12 Sep 2022 21:26:22 -0300 Subject: [PATCH 731/762] Fixed Raquaza typo --- data/maps/SkyPillar_Top/map.json | 2 +- data/maps/SkyPillar_Top/scripts.inc | 2 +- include/constants/vars.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/data/maps/SkyPillar_Top/map.json b/data/maps/SkyPillar_Top/map.json index a980c6b07baf..2fee121065c2 100644 --- a/data/maps/SkyPillar_Top/map.json +++ b/data/maps/SkyPillar_Top/map.json @@ -56,7 +56,7 @@ "x": 14, "y": 9, "elevation": 3, - "var": "VAR_SKY_PILLAR_RAQUAZA_CRY_DONE", + "var": "VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE", "var_value": "0", "script": "SkyPillar_Top_EventScript_AwakenRayquaza" } diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index 7b65d9e257b0..19cd7e4f42b6 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -128,7 +128,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: special RemoveCameraObject setvar VAR_SOOTOPOLIS_CITY_STATE, 5 setvar VAR_SKY_PILLAR_STATE, 1 - setvar VAR_SKY_PILLAR_RAQUAZA_CRY_DONE, 1 + setvar VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE, 1 releaseall end diff --git a/include/constants/vars.h b/include/constants/vars.h index 8128b6f3210a..dbcb658ff53d 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -231,7 +231,7 @@ #define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL #define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios #define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 -#define VAR_SKY_PILLAR_RAQUAZA_CRY_DONE 0x40D7 +#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 #define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 #define VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT 0x40D9 #define VAR_REGISTER_BIRCH_STATE 0x40DA From cb83a0920318b2e98782a9a10a098b8441a99913 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 12 Sep 2022 21:27:53 -0300 Subject: [PATCH 732/762] Fixed vars alignment --- include/constants/vars.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/constants/vars.h b/include/constants/vars.h index dbcb658ff53d..019585d66d83 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -231,7 +231,7 @@ #define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL #define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios #define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 -#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 +#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 #define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 #define VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT 0x40D9 #define VAR_REGISTER_BIRCH_STATE 0x40DA From 14c6d8b91a49d214d3da2bba2b90e4cb9d811587 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 12 Sep 2022 21:32:42 -0300 Subject: [PATCH 733/762] Fixed alignment for the value of vars 0x4020 to 0x40FF --- include/constants/vars.h | 450 +++++++++++++++++++-------------------- 1 file changed, 225 insertions(+), 225 deletions(-) diff --git a/include/constants/vars.h b/include/constants/vars.h index 019585d66d83..bd988c789b8e 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -46,235 +46,235 @@ #define VAR_OBJ_GFX_ID_F 0x401F // general purpose vars -#define VAR_RECYCLE_GOODS 0x4020 -#define VAR_REPEL_STEP_COUNT 0x4021 -#define VAR_ICE_STEP_COUNT 0x4022 -#define VAR_STARTER_MON 0x4023 // 0=Treecko, 1=Torchic, 2=Mudkip -#define VAR_MIRAGE_RND_H 0x4024 -#define VAR_MIRAGE_RND_L 0x4025 -#define VAR_SECRET_BASE_MAP 0x4026 -#define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 -#define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 -#define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 -#define VAR_FRIENDSHIP_STEP_COUNTER 0x402A -#define VAR_POISON_STEP_COUNTER 0x402B -#define VAR_RESET_RTC_ENABLE 0x402C -#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D -#define VAR_WONDER_NEWS_COUNTER 0x402E +#define VAR_RECYCLE_GOODS 0x4020 +#define VAR_REPEL_STEP_COUNT 0x4021 +#define VAR_ICE_STEP_COUNT 0x4022 +#define VAR_STARTER_MON 0x4023 // 0=Treecko, 1=Torchic, 2=Mudkip +#define VAR_MIRAGE_RND_H 0x4024 +#define VAR_MIRAGE_RND_L 0x4025 +#define VAR_SECRET_BASE_MAP 0x4026 +#define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 +#define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 +#define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 +#define VAR_FRIENDSHIP_STEP_COUNTER 0x402A +#define VAR_POISON_STEP_COUNTER 0x402B +#define VAR_RESET_RTC_ENABLE 0x402C +#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D +#define VAR_WONDER_NEWS_COUNTER 0x402E -#define VAR_FRONTIER_MANIAC_FACILITY 0x402F -#define VAR_FRONTIER_GAMBLER_CHALLENGE 0x4030 -#define VAR_FRONTIER_GAMBLER_SET_CHALLENGE 0x4031 -#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032 -#define VAR_FRONTIER_GAMBLER_STATE 0x4033 +#define VAR_FRONTIER_MANIAC_FACILITY 0x402F +#define VAR_FRONTIER_GAMBLER_CHALLENGE 0x4030 +#define VAR_FRONTIER_GAMBLER_SET_CHALLENGE 0x4031 +#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032 +#define VAR_FRONTIER_GAMBLER_STATE 0x4033 -#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034 -#define VAR_DEOXYS_ROCK_LEVEL 0x4035 -#define VAR_PC_BOX_TO_SEND_MON 0x4036 -#define VAR_ABNORMAL_WEATHER_LOCATION 0x4037 -#define VAR_ABNORMAL_WEATHER_STEP_COUNTER 0x4038 -#define VAR_SHOULD_END_ABNORMAL_WEATHER 0x4039 -#define VAR_FARAWAY_ISLAND_STEP_COUNTER 0x403A -#define VAR_REGICE_STEPS_1 0x403B -#define VAR_REGICE_STEPS_2 0x403C -#define VAR_REGICE_STEPS_3 0x403D -#define VAR_ALTERING_CAVE_WILD_SET 0x403E -#define VAR_DISTRIBUTE_EON_TICKET 0x403F // This var is read and written, but is always zero. The only way to obtain the Eon Ticket in Emerald is via Record Mixing -#define VAR_DAYS 0x4040 -#define VAR_FANCLUB_FAN_COUNTER 0x4041 -#define VAR_FANCLUB_LOSE_FAN_TIMER 0x4042 -#define VAR_DEPT_STORE_FLOOR 0x4043 -#define VAR_TRICK_HOUSE_LEVEL 0x4044 -#define VAR_POKELOT_PRIZE_ITEM 0x4045 -#define VAR_NATIONAL_DEX 0x4046 -#define VAR_SEEDOT_SIZE_RECORD 0x4047 -#define VAR_ASH_GATHER_COUNT 0x4048 -#define VAR_BIRCH_STATE 0x4049 -#define VAR_CRUISE_STEP_COUNT 0x404A -#define VAR_POKELOT_RND1 0x404B -#define VAR_POKELOT_RND2 0x404C -#define VAR_POKELOT_PRIZE_PLACE 0x404D -#define VAR_UNUSED_0x404E 0x404E // Unused Var -#define VAR_LOTAD_SIZE_RECORD 0x404F -#define VAR_LITTLEROOT_TOWN_STATE 0x4050 -#define VAR_OLDALE_TOWN_STATE 0x4051 -#define VAR_DEWFORD_TOWN_STATE 0x4052 // Unused Var -#define VAR_LAVARIDGE_TOWN_STATE 0x4053 -#define VAR_CURRENT_SECRET_BASE 0x4054 // was probably allocated for VAR_FALLARBOR_TOWN_STATE at one point -#define VAR_VERDANTURF_TOWN_STATE 0x4055 // Unused Var -#define VAR_PACIFIDLOG_TOWN_STATE 0x4056 // Unused Var -#define VAR_PETALBURG_CITY_STATE 0x4057 -#define VAR_SLATEPORT_CITY_STATE 0x4058 -#define VAR_MAUVILLE_CITY_STATE 0x4059 // Unused Var -#define VAR_RUSTBORO_CITY_STATE 0x405A -#define VAR_FORTREE_CITY_STATE 0x405B // Unused Var -#define VAR_LILYCOVE_CITY_STATE 0x405C // Unused Var -#define VAR_MOSSDEEP_CITY_STATE 0x405D -#define VAR_SOOTOPOLIS_CITY_STATE 0x405E -#define VAR_EVER_GRANDE_CITY_STATE 0x405F // Unused Var -#define VAR_ROUTE101_STATE 0x4060 -#define VAR_ROUTE102_STATE 0x4061 // Unused Var -#define VAR_ROUTE103_STATE 0x4062 // Unused Var -#define VAR_ROUTE104_STATE 0x4063 -#define VAR_ROUTE105_STATE 0x4064 // Unused Var -#define VAR_ROUTE106_STATE 0x4065 // Unused Var -#define VAR_ROUTE107_STATE 0x4066 // Unused Var -#define VAR_ROUTE108_STATE 0x4067 // Unused Var -#define VAR_ROUTE109_STATE 0x4068 // Unused Var -#define VAR_ROUTE110_STATE 0x4069 -#define VAR_ROUTE111_STATE 0x406A // Unused Var -#define VAR_ROUTE112_STATE 0x406B // Unused Var -#define VAR_ROUTE113_STATE 0x406C // Unused Var -#define VAR_ROUTE114_STATE 0x406D // Unused Var -#define VAR_ROUTE115_STATE 0x406E // Unused Var -#define VAR_ROUTE116_STATE 0x406F -#define VAR_ROUTE117_STATE 0x4070 // Unused Var -#define VAR_ROUTE118_STATE 0x4071 -#define VAR_ROUTE119_STATE 0x4072 -#define VAR_ROUTE120_STATE 0x4073 // Unused Var -#define VAR_ROUTE121_STATE 0x4074 -#define VAR_ROUTE122_STATE 0x4075 // Unused Var -#define VAR_ROUTE123_STATE 0x4076 // Unused Var -#define VAR_ROUTE124_STATE 0x4077 // Unused Var -#define VAR_ROUTE125_STATE 0x4078 // Unused Var -#define VAR_ROUTE126_STATE 0x4079 // Unused Var -#define VAR_ROUTE127_STATE 0x407A // Unused Var -#define VAR_ROUTE128_STATE 0x407B -#define VAR_ROUTE129_STATE 0x407C // Unused Var -#define VAR_ROUTE130_STATE 0x407D // Unused Var -#define VAR_ROUTE131_STATE 0x407E // Unused Var -#define VAR_ROUTE132_STATE 0x407F // Unused Var -#define VAR_ROUTE133_STATE 0x4080 // Unused Var -#define VAR_ROUTE134_STATE 0x4081 // Unused Var -#define VAR_LITTLEROOT_HOUSES_STATE_MAY 0x4082 -#define VAR_UNUSED_0x4083 0x4083 // Unused Var -#define VAR_BIRCH_LAB_STATE 0x4084 -#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman -#define VAR_CONTEST_HALL_STATE 0x4086 -#define VAR_CABLE_CLUB_STATE 0x4087 -#define VAR_CONTEST_TYPE 0x4088 -#define VAR_SECRET_BASE_INITIALIZED 0x4089 -#define VAR_CONTEST_PRIZE_PICKUP 0x408A -#define VAR_UNUSED_0x408B 0x408B // Unused Var -#define VAR_LITTLEROOT_HOUSES_STATE_BRENDAN 0x408C -#define VAR_LITTLEROOT_RIVAL_STATE 0x408D -#define VAR_BOARD_BRINEY_BOAT_STATE 0x408E -#define VAR_DEVON_CORP_3F_STATE 0x408F -#define VAR_BRINEY_HOUSE_STATE 0x4090 -#define VAR_UNUSED_0x4091 0x4091 // Unused Var -#define VAR_LITTLEROOT_INTRO_STATE 0x4092 -#define VAR_MAUVILLE_GYM_STATE 0x4093 -#define VAR_LILYCOVE_MUSEUM_2F_STATE 0x4094 -#define VAR_LILYCOVE_FAN_CLUB_STATE 0x4095 -#define VAR_BRINEY_LOCATION 0x4096 -#define VAR_INIT_SECRET_BASE 0x4097 -#define VAR_PETALBURG_WOODS_STATE 0x4098 -#define VAR_LILYCOVE_CONTEST_LOBBY_STATE 0x4099 -#define VAR_RUSTURF_TUNNEL_STATE 0x409A -#define VAR_UNUSED_0x409B 0x409B // Unused Var -#define VAR_ELITE_4_STATE 0x409C -#define VAR_UNUSED_0x409D 0x409D // Unused Var -#define VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE 0x409E -#define VAR_MOSSDEEP_SPACE_CENTER_STATE 0x409F -#define VAR_SLATEPORT_HARBOR_STATE 0x40A0 -#define VAR_UNUSED_0x40A1 0x40A1 // Unused var -#define VAR_SEAFLOOR_CAVERN_STATE 0x40A2 -#define VAR_CABLE_CAR_STATION_STATE 0x40A3 -#define VAR_SAFARI_ZONE_STATE 0x40A4 // 0: In or out of SZ, 1: Player exiting SZ, 2: Player entering SZ -#define VAR_TRICK_HOUSE_BEING_WATCHED_STATE 0x40A5 -#define VAR_TRICK_HOUSE_FOUND_TRICK_MASTER 0x40A6 -#define VAR_TRICK_HOUSE_ENTRANCE_STATE 0x40A7 -#define VAR_UNUSED_0x40A8 0x40A8 // Unused Var -#define VAR_CYCLING_CHALLENGE_STATE 0x40A9 -#define VAR_SLATEPORT_MUSEUM_1F_STATE 0x40AA -#define VAR_TRICK_HOUSE_PUZZLE_1_STATE 0x40AB -#define VAR_TRICK_HOUSE_PUZZLE_2_STATE 0x40AC -#define VAR_TRICK_HOUSE_PUZZLE_3_STATE 0x40AD -#define VAR_TRICK_HOUSE_PUZZLE_4_STATE 0x40AE -#define VAR_TRICK_HOUSE_PUZZLE_5_STATE 0x40AF -#define VAR_TRICK_HOUSE_PUZZLE_6_STATE 0x40B0 -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE 0x40B1 -#define VAR_TRICK_HOUSE_PUZZLE_8_STATE 0x40B2 -#define VAR_WEATHER_INSTITUTE_STATE 0x40B3 -#define VAR_SS_TIDAL_STATE 0x40B4 -#define VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR 0x40B5 -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE_2 0x40B6 // Leftover from RS, never set -#define VAR_SLATEPORT_FAN_CLUB_STATE 0x40B7 -#define VAR_UNUSED_0x40B8 0x40B8 // Unused Var -#define VAR_MT_PYRE_STATE 0x40B9 -#define VAR_NEW_MAUVILLE_STATE 0x40BA -#define VAR_UNUSED_0x40BB 0x40BB // Unused Var -#define VAR_BRAVO_TRAINER_BATTLE_TOWER_ON 0x40BC -#define VAR_JAGGED_PASS_ASH_WEATHER 0x40BD -#define VAR_GLASS_WORKSHOP_STATE 0x40BE -#define VAR_METEOR_FALLS_STATE 0x40BF -#define VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE 0x40C0 -#define VAR_TRICK_HOUSE_PRIZE_PICKUP 0x40C1 -#define VAR_PACIFIDLOG_TM_RECEIVED_DAY 0x40C2 -#define VAR_VICTORY_ROAD_1F_STATE 0x40C3 -#define VAR_FOSSIL_RESURRECTION_STATE 0x40C4 -#define VAR_WHICH_FOSSIL_REVIVED 0x40C5 -#define VAR_STEVENS_HOUSE_STATE 0x40C6 -#define VAR_OLDALE_RIVAL_STATE 0x40C7 -#define VAR_JAGGED_PASS_STATE 0x40C8 -#define VAR_SCOTT_PETALBURG_ENCOUNTER 0x40C9 -#define VAR_SKY_PILLAR_STATE 0x40CA -#define VAR_MIRAGE_TOWER_STATE 0x40CB -#define VAR_FOSSIL_MANIAC_STATE 0x40CC -#define VAR_CABLE_CLUB_TUTORIAL_STATE 0x40CD -#define VAR_FRONTIER_BATTLE_MODE 0x40CE -#define VAR_FRONTIER_FACILITY 0x40CF -#define VAR_HAS_ENTERED_BATTLE_FRONTIER 0x40D0 // Var is used like a flag. -#define VAR_SCOTT_STATE 0x40D1 -#define VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE 0x40D2 -#define VAR_DEX_UPGRADE_JOHTO_STARTER_STATE 0x40D3 -#define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL -#define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios -#define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 -#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 -#define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 +#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034 +#define VAR_DEOXYS_ROCK_LEVEL 0x4035 +#define VAR_PC_BOX_TO_SEND_MON 0x4036 +#define VAR_ABNORMAL_WEATHER_LOCATION 0x4037 +#define VAR_ABNORMAL_WEATHER_STEP_COUNTER 0x4038 +#define VAR_SHOULD_END_ABNORMAL_WEATHER 0x4039 +#define VAR_FARAWAY_ISLAND_STEP_COUNTER 0x403A +#define VAR_REGICE_STEPS_1 0x403B +#define VAR_REGICE_STEPS_2 0x403C +#define VAR_REGICE_STEPS_3 0x403D +#define VAR_ALTERING_CAVE_WILD_SET 0x403E +#define VAR_DISTRIBUTE_EON_TICKET 0x403F // This var is read and written, but is always zero. The only way to obtain the Eon Ticket in Emerald is via Record Mixing +#define VAR_DAYS 0x4040 +#define VAR_FANCLUB_FAN_COUNTER 0x4041 +#define VAR_FANCLUB_LOSE_FAN_TIMER 0x4042 +#define VAR_DEPT_STORE_FLOOR 0x4043 +#define VAR_TRICK_HOUSE_LEVEL 0x4044 +#define VAR_POKELOT_PRIZE_ITEM 0x4045 +#define VAR_NATIONAL_DEX 0x4046 +#define VAR_SEEDOT_SIZE_RECORD 0x4047 +#define VAR_ASH_GATHER_COUNT 0x4048 +#define VAR_BIRCH_STATE 0x4049 +#define VAR_CRUISE_STEP_COUNT 0x404A +#define VAR_POKELOT_RND1 0x404B +#define VAR_POKELOT_RND2 0x404C +#define VAR_POKELOT_PRIZE_PLACE 0x404D +#define VAR_UNUSED_0x404E 0x404E // Unused Var +#define VAR_LOTAD_SIZE_RECORD 0x404F +#define VAR_LITTLEROOT_TOWN_STATE 0x4050 +#define VAR_OLDALE_TOWN_STATE 0x4051 +#define VAR_DEWFORD_TOWN_STATE 0x4052 // Unused Var +#define VAR_LAVARIDGE_TOWN_STATE 0x4053 +#define VAR_CURRENT_SECRET_BASE 0x4054 // was probably allocated for VAR_FALLARBOR_TOWN_STATE at one point +#define VAR_VERDANTURF_TOWN_STATE 0x4055 // Unused Var +#define VAR_PACIFIDLOG_TOWN_STATE 0x4056 // Unused Var +#define VAR_PETALBURG_CITY_STATE 0x4057 +#define VAR_SLATEPORT_CITY_STATE 0x4058 +#define VAR_MAUVILLE_CITY_STATE 0x4059 // Unused Var +#define VAR_RUSTBORO_CITY_STATE 0x405A +#define VAR_FORTREE_CITY_STATE 0x405B // Unused Var +#define VAR_LILYCOVE_CITY_STATE 0x405C // Unused Var +#define VAR_MOSSDEEP_CITY_STATE 0x405D +#define VAR_SOOTOPOLIS_CITY_STATE 0x405E +#define VAR_EVER_GRANDE_CITY_STATE 0x405F // Unused Var +#define VAR_ROUTE101_STATE 0x4060 +#define VAR_ROUTE102_STATE 0x4061 // Unused Var +#define VAR_ROUTE103_STATE 0x4062 // Unused Var +#define VAR_ROUTE104_STATE 0x4063 +#define VAR_ROUTE105_STATE 0x4064 // Unused Var +#define VAR_ROUTE106_STATE 0x4065 // Unused Var +#define VAR_ROUTE107_STATE 0x4066 // Unused Var +#define VAR_ROUTE108_STATE 0x4067 // Unused Var +#define VAR_ROUTE109_STATE 0x4068 // Unused Var +#define VAR_ROUTE110_STATE 0x4069 +#define VAR_ROUTE111_STATE 0x406A // Unused Var +#define VAR_ROUTE112_STATE 0x406B // Unused Var +#define VAR_ROUTE113_STATE 0x406C // Unused Var +#define VAR_ROUTE114_STATE 0x406D // Unused Var +#define VAR_ROUTE115_STATE 0x406E // Unused Var +#define VAR_ROUTE116_STATE 0x406F +#define VAR_ROUTE117_STATE 0x4070 // Unused Var +#define VAR_ROUTE118_STATE 0x4071 +#define VAR_ROUTE119_STATE 0x4072 +#define VAR_ROUTE120_STATE 0x4073 // Unused Var +#define VAR_ROUTE121_STATE 0x4074 +#define VAR_ROUTE122_STATE 0x4075 // Unused Var +#define VAR_ROUTE123_STATE 0x4076 // Unused Var +#define VAR_ROUTE124_STATE 0x4077 // Unused Var +#define VAR_ROUTE125_STATE 0x4078 // Unused Var +#define VAR_ROUTE126_STATE 0x4079 // Unused Var +#define VAR_ROUTE127_STATE 0x407A // Unused Var +#define VAR_ROUTE128_STATE 0x407B +#define VAR_ROUTE129_STATE 0x407C // Unused Var +#define VAR_ROUTE130_STATE 0x407D // Unused Var +#define VAR_ROUTE131_STATE 0x407E // Unused Var +#define VAR_ROUTE132_STATE 0x407F // Unused Var +#define VAR_ROUTE133_STATE 0x4080 // Unused Var +#define VAR_ROUTE134_STATE 0x4081 // Unused Var +#define VAR_LITTLEROOT_HOUSES_STATE_MAY 0x4082 +#define VAR_UNUSED_0x4083 0x4083 // Unused Var +#define VAR_BIRCH_LAB_STATE 0x4084 +#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman +#define VAR_CONTEST_HALL_STATE 0x4086 +#define VAR_CABLE_CLUB_STATE 0x4087 +#define VAR_CONTEST_TYPE 0x4088 +#define VAR_SECRET_BASE_INITIALIZED 0x4089 +#define VAR_CONTEST_PRIZE_PICKUP 0x408A +#define VAR_UNUSED_0x408B 0x408B // Unused Var +#define VAR_LITTLEROOT_HOUSES_STATE_BRENDAN 0x408C +#define VAR_LITTLEROOT_RIVAL_STATE 0x408D +#define VAR_BOARD_BRINEY_BOAT_STATE 0x408E +#define VAR_DEVON_CORP_3F_STATE 0x408F +#define VAR_BRINEY_HOUSE_STATE 0x4090 +#define VAR_UNUSED_0x4091 0x4091 // Unused Var +#define VAR_LITTLEROOT_INTRO_STATE 0x4092 +#define VAR_MAUVILLE_GYM_STATE 0x4093 +#define VAR_LILYCOVE_MUSEUM_2F_STATE 0x4094 +#define VAR_LILYCOVE_FAN_CLUB_STATE 0x4095 +#define VAR_BRINEY_LOCATION 0x4096 +#define VAR_INIT_SECRET_BASE 0x4097 +#define VAR_PETALBURG_WOODS_STATE 0x4098 +#define VAR_LILYCOVE_CONTEST_LOBBY_STATE 0x4099 +#define VAR_RUSTURF_TUNNEL_STATE 0x409A +#define VAR_UNUSED_0x409B 0x409B // Unused Var +#define VAR_ELITE_4_STATE 0x409C +#define VAR_UNUSED_0x409D 0x409D // Unused Var +#define VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE 0x409E +#define VAR_MOSSDEEP_SPACE_CENTER_STATE 0x409F +#define VAR_SLATEPORT_HARBOR_STATE 0x40A0 +#define VAR_UNUSED_0x40A1 0x40A1 // Unused var +#define VAR_SEAFLOOR_CAVERN_STATE 0x40A2 +#define VAR_CABLE_CAR_STATION_STATE 0x40A3 +#define VAR_SAFARI_ZONE_STATE 0x40A4 // 0: In or out of SZ, 1: Player exiting SZ, 2: Player entering SZ +#define VAR_TRICK_HOUSE_BEING_WATCHED_STATE 0x40A5 +#define VAR_TRICK_HOUSE_FOUND_TRICK_MASTER 0x40A6 +#define VAR_TRICK_HOUSE_ENTRANCE_STATE 0x40A7 +#define VAR_UNUSED_0x40A8 0x40A8 // Unused Var +#define VAR_CYCLING_CHALLENGE_STATE 0x40A9 +#define VAR_SLATEPORT_MUSEUM_1F_STATE 0x40AA +#define VAR_TRICK_HOUSE_PUZZLE_1_STATE 0x40AB +#define VAR_TRICK_HOUSE_PUZZLE_2_STATE 0x40AC +#define VAR_TRICK_HOUSE_PUZZLE_3_STATE 0x40AD +#define VAR_TRICK_HOUSE_PUZZLE_4_STATE 0x40AE +#define VAR_TRICK_HOUSE_PUZZLE_5_STATE 0x40AF +#define VAR_TRICK_HOUSE_PUZZLE_6_STATE 0x40B0 +#define VAR_TRICK_HOUSE_PUZZLE_7_STATE 0x40B1 +#define VAR_TRICK_HOUSE_PUZZLE_8_STATE 0x40B2 +#define VAR_WEATHER_INSTITUTE_STATE 0x40B3 +#define VAR_SS_TIDAL_STATE 0x40B4 +#define VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR 0x40B5 +#define VAR_TRICK_HOUSE_PUZZLE_7_STATE_2 0x40B6 // Leftover from RS, never set +#define VAR_SLATEPORT_FAN_CLUB_STATE 0x40B7 +#define VAR_UNUSED_0x40B8 0x40B8 // Unused Var +#define VAR_MT_PYRE_STATE 0x40B9 +#define VAR_NEW_MAUVILLE_STATE 0x40BA +#define VAR_UNUSED_0x40BB 0x40BB // Unused Var +#define VAR_BRAVO_TRAINER_BATTLE_TOWER_ON 0x40BC +#define VAR_JAGGED_PASS_ASH_WEATHER 0x40BD +#define VAR_GLASS_WORKSHOP_STATE 0x40BE +#define VAR_METEOR_FALLS_STATE 0x40BF +#define VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE 0x40C0 +#define VAR_TRICK_HOUSE_PRIZE_PICKUP 0x40C1 +#define VAR_PACIFIDLOG_TM_RECEIVED_DAY 0x40C2 +#define VAR_VICTORY_ROAD_1F_STATE 0x40C3 +#define VAR_FOSSIL_RESURRECTION_STATE 0x40C4 +#define VAR_WHICH_FOSSIL_REVIVED 0x40C5 +#define VAR_STEVENS_HOUSE_STATE 0x40C6 +#define VAR_OLDALE_RIVAL_STATE 0x40C7 +#define VAR_JAGGED_PASS_STATE 0x40C8 +#define VAR_SCOTT_PETALBURG_ENCOUNTER 0x40C9 +#define VAR_SKY_PILLAR_STATE 0x40CA +#define VAR_MIRAGE_TOWER_STATE 0x40CB +#define VAR_FOSSIL_MANIAC_STATE 0x40CC +#define VAR_CABLE_CLUB_TUTORIAL_STATE 0x40CD +#define VAR_FRONTIER_BATTLE_MODE 0x40CE +#define VAR_FRONTIER_FACILITY 0x40CF +#define VAR_HAS_ENTERED_BATTLE_FRONTIER 0x40D0 // Var is used like a flag. +#define VAR_SCOTT_STATE 0x40D1 +#define VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE 0x40D2 +#define VAR_DEX_UPGRADE_JOHTO_STARTER_STATE 0x40D3 +#define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL +#define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios +#define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 +#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 +#define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 #define VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT 0x40D9 -#define VAR_REGISTER_BIRCH_STATE 0x40DA -#define VAR_UNUSED_0x40DB 0x40DB // Unused Var -#define VAR_UNUSED_0x40DC 0x40DC // Unused Var -#define VAR_GIFT_PICHU_SLOT 0x40DD -#define VAR_GIFT_UNUSED_1 0x40DE // Var is written to, but never read -#define VAR_GIFT_UNUSED_2 0x40DF // Var is written to, but never read -#define VAR_GIFT_UNUSED_3 0x40E0 // Var is written to, but never read -#define VAR_GIFT_UNUSED_4 0x40E1 // Var is written to, but never read -#define VAR_GIFT_UNUSED_5 0x40E2 // Var is written to, but never read -#define VAR_GIFT_UNUSED_6 0x40E3 // Var is written to, but never read -#define VAR_GIFT_UNUSED_7 0x40E4 // var is written to, but never read -#define VAR_UNUSED_0x40E5 0x40E5 // Unused Var -#define VAR_DAILY_SLOTS 0x40E6 -#define VAR_DAILY_WILDS 0x40E7 -#define VAR_DAILY_BLENDER 0x40E8 -#define VAR_DAILY_PLANTED_BERRIES 0x40E9 -#define VAR_DAILY_PICKED_BERRIES 0x40EA -#define VAR_DAILY_ROULETTE 0x40EB -#define VAR_SECRET_BASE_STEP_COUNTER 0x40EC // Used by Secret Base TV programs -#define VAR_SECRET_BASE_LAST_ITEM_USED 0x40ED // Used by Secret Base TV programs -#define VAR_SECRET_BASE_LOW_TV_FLAGS 0x40EE // Used by Secret Base TV programs -#define VAR_SECRET_BASE_HIGH_TV_FLAGS 0x40EF // Used by Secret Base TV programs -#define VAR_SECRET_BASE_IS_NOT_LOCAL 0x40F0 // Set to TRUE while in another player's secret base. -#define VAR_DAILY_BP 0x40F1 -#define VAR_WALLY_CALL_STEP_COUNTER 0x40F2 -#define VAR_SCOTT_FORTREE_CALL_STEP_COUNTER 0x40F3 -#define VAR_ROXANNE_CALL_STEP_COUNTER 0x40F4 -#define VAR_SCOTT_BF_CALL_STEP_COUNTER 0x40F5 -#define VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER 0x40F6 -#define VAR_UNUSED_0x40F7 0x40F7 // Unused Var -#define VAR_UNUSED_0x40F8 0x40F8 // Unused Var -#define VAR_UNUSED_0x40F9 0x40F9 // Unused Var -#define VAR_UNUSED_0x40FA 0x40FA // Unused Var -#define VAR_UNUSED_0x40FB 0x40FB // Unused Var -#define VAR_UNUSED_0x40FC 0x40FC // Unused Var -#define VAR_UNUSED_0x40FD 0x40FD // Unused Var -#define VAR_UNUSED_0x40FE 0x40FE // Unused Var -#define VAR_UNUSED_0x40FF 0x40FF // Unused Var +#define VAR_REGISTER_BIRCH_STATE 0x40DA +#define VAR_UNUSED_0x40DB 0x40DB // Unused Var +#define VAR_UNUSED_0x40DC 0x40DC // Unused Var +#define VAR_GIFT_PICHU_SLOT 0x40DD +#define VAR_GIFT_UNUSED_1 0x40DE // Var is written to, but never read +#define VAR_GIFT_UNUSED_2 0x40DF // Var is written to, but never read +#define VAR_GIFT_UNUSED_3 0x40E0 // Var is written to, but never read +#define VAR_GIFT_UNUSED_4 0x40E1 // Var is written to, but never read +#define VAR_GIFT_UNUSED_5 0x40E2 // Var is written to, but never read +#define VAR_GIFT_UNUSED_6 0x40E3 // Var is written to, but never read +#define VAR_GIFT_UNUSED_7 0x40E4 // var is written to, but never read +#define VAR_UNUSED_0x40E5 0x40E5 // Unused Var +#define VAR_DAILY_SLOTS 0x40E6 +#define VAR_DAILY_WILDS 0x40E7 +#define VAR_DAILY_BLENDER 0x40E8 +#define VAR_DAILY_PLANTED_BERRIES 0x40E9 +#define VAR_DAILY_PICKED_BERRIES 0x40EA +#define VAR_DAILY_ROULETTE 0x40EB +#define VAR_SECRET_BASE_STEP_COUNTER 0x40EC // Used by Secret Base TV programs +#define VAR_SECRET_BASE_LAST_ITEM_USED 0x40ED // Used by Secret Base TV programs +#define VAR_SECRET_BASE_LOW_TV_FLAGS 0x40EE // Used by Secret Base TV programs +#define VAR_SECRET_BASE_HIGH_TV_FLAGS 0x40EF // Used by Secret Base TV programs +#define VAR_SECRET_BASE_IS_NOT_LOCAL 0x40F0 // Set to TRUE while in another player's secret base. +#define VAR_DAILY_BP 0x40F1 +#define VAR_WALLY_CALL_STEP_COUNTER 0x40F2 +#define VAR_SCOTT_FORTREE_CALL_STEP_COUNTER 0x40F3 +#define VAR_ROXANNE_CALL_STEP_COUNTER 0x40F4 +#define VAR_SCOTT_BF_CALL_STEP_COUNTER 0x40F5 +#define VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER 0x40F6 +#define VAR_UNUSED_0x40F7 0x40F7 // Unused Var +#define VAR_UNUSED_0x40F8 0x40F8 // Unused Var +#define VAR_UNUSED_0x40F9 0x40F9 // Unused Var +#define VAR_UNUSED_0x40FA 0x40FA // Unused Var +#define VAR_UNUSED_0x40FB 0x40FB // Unused Var +#define VAR_UNUSED_0x40FC 0x40FC // Unused Var +#define VAR_UNUSED_0x40FD 0x40FD // Unused Var +#define VAR_UNUSED_0x40FE 0x40FE // Unused Var +#define VAR_UNUSED_0x40FF 0x40FF // Unused Var -#define VARS_END 0x40FF -#define VARS_COUNT (VARS_END - VARS_START + 1) +#define VARS_END 0x40FF +#define VARS_COUNT (VARS_END - VARS_START + 1) #define SPECIAL_VARS_START 0x8000 // special vars From 2d841a25f96854ffa449650cc1f04d7154883d0b Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Tue, 13 Sep 2022 15:45:01 -0300 Subject: [PATCH 734/762] Removed unused extern declaration of old gUnknown func --- src/item.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/item.c b/src/item.c index 0f5746027bb4..acb00acc7509 100644 --- a/src/item.c +++ b/src/item.c @@ -15,8 +15,6 @@ #include "constants/items.h" #include "constants/hold_effects.h" -extern u16 gUnknown_0203CF30[]; - // this file's functions static bool8 CheckPyramidBagHasItem(u16 itemId, u16 count); static bool8 CheckPyramidBagHasSpace(u16 itemId, u16 count); From 492380bd24912a80be4e7a14e8e4bf8355c277fd Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Wed, 14 Sep 2022 12:20:59 -0300 Subject: [PATCH 735/762] gReservedSpritePaletteCount using MAX_BATTLERS_COUNT for battles --- src/battle_main.c | 6 +++--- src/reshow_battle_screen.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index 52a1005989cf..903588fe7323 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -665,7 +665,7 @@ static void CB2_InitBattleInternal(void) ResetTasks(); DrawBattleEntryBackground(); FreeAllSpritePalettes(); - gReservedSpritePaletteCount = 4; + gReservedSpritePaletteCount = MAX_BATTLERS_COUNT; SetVBlankCallback(VBlankCB_Battle); SetUpBattleVarsAndBirchZigzagoon(); @@ -2221,7 +2221,7 @@ void CB2_InitEndLinkBattle(void) DrawBattleEntryBackground(); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG0 | WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR); FreeAllSpritePalettes(); - gReservedSpritePaletteCount = 4; + gReservedSpritePaletteCount = MAX_BATTLERS_COUNT; SetVBlankCallback(VBlankCB_Battle); // Show end Vs screen with battle results @@ -2425,7 +2425,7 @@ static void CB2_InitAskRecordBattle(void) ResetSpriteData(); ResetTasks(); FreeAllSpritePalettes(); - gReservedSpritePaletteCount = 4; + gReservedSpritePaletteCount = MAX_BATTLERS_COUNT; SetVBlankCallback(VBlankCB_Battle); SetMainCallback2(CB2_AskRecordBattle); BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 4217d78c731a..fd2ed03ccae1 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -73,7 +73,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) break; case 4: FreeAllSpritePalettes(); - gReservedSpritePaletteCount = 4; + gReservedSpritePaletteCount = MAX_BATTLERS_COUNT; break; case 5: ClearSpritesHealthboxAnimData(); From bca1267ca84af5dab9f82ec1c2209c786eb1f6b7 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 15 Sep 2022 14:52:18 -0300 Subject: [PATCH 736/762] Altered MAX_FRONTIER_PARTY_SIZE to be automatically calculated by the other frontier party sizes --- include/constants/global.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/include/constants/global.h b/include/constants/global.h index 2a0ac7d6f1ed..8e40e637863b 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -35,7 +35,9 @@ #define FRONTIER_PARTY_SIZE 3 #define FRONTIER_DOUBLES_PARTY_SIZE 4 #define FRONTIER_MULTI_PARTY_SIZE 2 -#define MAX_FRONTIER_PARTY_SIZE FRONTIER_DOUBLES_PARTY_SIZE +#define MAX_FRONTIER_PARTY_SIZE (max(FRONTIER_PARTY_SIZE, \ + max(FRONTIER_DOUBLES_PARTY_SIZE,\ + FRONTIER_MULTI_PARTY_SIZE))) #define UNION_ROOM_PARTY_SIZE 2 // capacities of various saveblock objects From 63156b4398213bc89fb6666f2126f751902a4d84 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 16 Sep 2022 20:24:26 -0300 Subject: [PATCH 737/762] Removed malloc macro --- gflib/malloc.h | 1 - src/decoration.c | 2 +- src/diploma.c | 2 +- src/easy_chat.c | 2 +- src/event_object_movement.c | 2 +- src/field_region_map.c | 2 +- src/link.c | 2 +- src/record_mixing.c | 6 +++--- src/region_map.c | 2 +- src/tv.c | 4 ++-- 10 files changed, 12 insertions(+), 13 deletions(-) diff --git a/gflib/malloc.h b/gflib/malloc.h index 8d49e0be7df4..27004adf71fe 100644 --- a/gflib/malloc.h +++ b/gflib/malloc.h @@ -2,7 +2,6 @@ #define GUARD_ALLOC_H #define HEAP_SIZE 0x1C000 -#define malloc Alloc #define calloc(ct, sz) AllocZeroed((ct) * (sz)) #define free Free diff --git a/src/decoration.c b/src/decoration.c index c5c7c02c34cb..2384daa80178 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -2060,7 +2060,7 @@ static u8 AddDecorationIconObjectFromIconTable(u16 tilesTag, u16 paletteTag, u8 palette.data = GetDecorationIconPicOrPalette(decor, 1); palette.tag = paletteTag; LoadCompressedSpritePalette(&palette); - template = malloc(sizeof(struct SpriteTemplate)); + template = Alloc(sizeof(struct SpriteTemplate)); *template = gItemIconSpriteTemplate; template->tileTag = tilesTag; template->paletteTag = paletteTag; diff --git a/src/diploma.c b/src/diploma.c index ce31578dcb0e..a30d7155464b 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -73,7 +73,7 @@ void CB2_ShowDiploma(void) ResetPaletteFade(); FreeAllSpritePalettes(); LoadPalette(sDiplomaPalettes, 0, 64); - sDiplomaTilemapPtr = malloc(0x1000); + sDiplomaTilemapPtr = Alloc(0x1000); InitDiplomaBg(); InitDiplomaWindow(); ResetTempTileDataBuffers(); diff --git a/src/easy_chat.c b/src/easy_chat.c index ebc843b3cc22..054c65c0fba4 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1627,7 +1627,7 @@ static bool8 InitEasyChatScreenStruct(u8 type, u16 *words, u8 displayedPersonTyp u8 templateId; int i; - sEasyChatScreen = malloc(sizeof(*sEasyChatScreen)); + sEasyChatScreen = Alloc(sizeof(*sEasyChatScreen)); if (sEasyChatScreen == NULL) return FALSE; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index a63eeb22b82b..83f12c4bb618 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1537,7 +1537,7 @@ u8 CreateObjectGraphicsSprite(u16 graphicsId, void (*callback)(struct Sprite *), struct Sprite *sprite; u8 spriteId; - spriteTemplate = malloc(sizeof(struct SpriteTemplate)); + spriteTemplate = Alloc(sizeof(struct SpriteTemplate)); CopyObjectGraphicsInfoToSpriteTemplate(graphicsId, callback, spriteTemplate, &subspriteTables); if (spriteTemplate->paletteTag != TAG_NONE) LoadObjectEventPalette(spriteTemplate->paletteTag); diff --git a/src/field_region_map.c b/src/field_region_map.c index 5e14920fbad1..43055174fa55 100644 --- a/src/field_region_map.c +++ b/src/field_region_map.c @@ -92,7 +92,7 @@ static const struct WindowTemplate sFieldRegionMapWindowTemplates[] = void FieldInitRegionMap(MainCallback callback) { SetVBlankCallback(NULL); - sFieldRegionMapHandler = malloc(sizeof(*sFieldRegionMapHandler)); + sFieldRegionMapHandler = Alloc(sizeof(*sFieldRegionMapHandler)); sFieldRegionMapHandler->state = 0; sFieldRegionMapHandler->callback = callback; SetMainCallback2(MCB2_InitRegionMapRegisters); diff --git a/src/link.c b/src/link.c index 57e33c8115e4..b01be9d89041 100644 --- a/src/link.c +++ b/src/link.c @@ -1608,7 +1608,7 @@ void CB2_LinkError(void) SetVBlankCallback(VBlankCB_LinkError); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, sLinkErrorBgTemplates, ARRAY_COUNT(sLinkErrorBgTemplates)); - sLinkErrorBgTilemapBuffer = tilemapBuffer = malloc(BG_SCREEN_SIZE); + sLinkErrorBgTilemapBuffer = tilemapBuffer = Alloc(BG_SCREEN_SIZE); SetBgTilemapBuffer(1, tilemapBuffer); if (InitWindows(sLinkErrorWindowTemplates)) { diff --git a/src/record_mixing.c b/src/record_mixing.c index c899db25e7f7..72edd52f2936 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -315,8 +315,8 @@ static void Task_RecordMixing_Main(u8 taskId) switch (tState) { case 0: // init - sSentRecord = malloc(sizeof(*sSentRecord)); - sReceivedRecords = malloc(sizeof(*sReceivedRecords) * MAX_LINK_PLAYERS); + sSentRecord = Alloc(sizeof(*sSentRecord)); + sReceivedRecords = Alloc(sizeof(*sReceivedRecords) * MAX_LINK_PLAYERS); SetLocalLinkPlayerId(gSpecialVar_0x8005); VarSet(VAR_TEMP_0, 1); sReadyToReceive = FALSE; @@ -689,7 +689,7 @@ static void ReceiveLilycoveLadyData(LilycoveLady *records, size_t recordSize, u8 if (GetLilycoveLadyId() == 0) { - lilycoveLady = malloc(sizeof(*lilycoveLady)); + lilycoveLady = Alloc(sizeof(*lilycoveLady)); if (lilycoveLady == NULL) return; diff --git a/src/region_map.c b/src/region_map.c index a4db1cb04885..8157f8a4e7ec 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1664,7 +1664,7 @@ void CB2_OpenFlyMap(void) SetGpuReg(REG_OFFSET_BG2HOFS, 0); SetGpuReg(REG_OFFSET_BG3HOFS, 0); SetGpuReg(REG_OFFSET_BG3VOFS, 0); - sFlyMap = malloc(sizeof(*sFlyMap)); + sFlyMap = Alloc(sizeof(*sFlyMap)); if (sFlyMap == NULL) { SetMainCallback2(CB2_ReturnToFieldWithOpenMenu); diff --git a/src/tv.c b/src/tv.c index 0c394acf7666..fe663bb35a72 100644 --- a/src/tv.c +++ b/src/tv.c @@ -3450,7 +3450,7 @@ void ReceiveTvShowsData(void *src, u32 size, u8 playersLinkId) TVShow (*rmBuffer2)[MAX_LINK_PLAYERS][TV_SHOWS_COUNT]; TVShow (*rmBuffer)[MAX_LINK_PLAYERS][TV_SHOWS_COUNT]; - rmBuffer2 = malloc(MAX_LINK_PLAYERS * TV_SHOWS_COUNT * sizeof(TVShow)); + rmBuffer2 = Alloc(MAX_LINK_PLAYERS * TV_SHOWS_COUNT * sizeof(TVShow)); if (rmBuffer2 != NULL) { for (i = 0; i < MAX_LINK_PLAYERS; i++) @@ -3835,7 +3835,7 @@ void ReceivePokeNewsData(void *src, u32 size, u8 playersLinkId) PokeNews (*rmBuffer2)[MAX_LINK_PLAYERS][POKE_NEWS_COUNT]; PokeNews (*rmBuffer)[MAX_LINK_PLAYERS][POKE_NEWS_COUNT]; - rmBuffer2 = malloc(MAX_LINK_PLAYERS * POKE_NEWS_COUNT * sizeof(PokeNews)); + rmBuffer2 = Alloc(MAX_LINK_PLAYERS * POKE_NEWS_COUNT * sizeof(PokeNews)); if (rmBuffer2 != NULL) { for (i = 0; i < MAX_LINK_PLAYERS; i++) From e412ec30a0d9ddcf1a1cc427488fdc8279ae08a6 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 16 Sep 2022 20:34:22 -0300 Subject: [PATCH 738/762] Removed calloc macro --- gflib/malloc.h | 1 - src/frontier_util.c | 6 +++--- src/link_rfu_3.c | 2 +- src/mail.c | 2 +- src/secret_base.c | 2 +- src/tv.c | 2 +- 6 files changed, 7 insertions(+), 8 deletions(-) diff --git a/gflib/malloc.h b/gflib/malloc.h index 27004adf71fe..e21bd5a2c86b 100644 --- a/gflib/malloc.h +++ b/gflib/malloc.h @@ -2,7 +2,6 @@ #define GUARD_ALLOC_H #define HEAP_SIZE 0x1C000 -#define calloc(ct, sz) AllocZeroed((ct) * (sz)) #define free Free #define FREE_AND_SET_NULL(ptr) \ diff --git a/src/frontier_util.c b/src/frontier_util.c index f5dde452fc59..7906df73669a 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -2271,7 +2271,7 @@ static void Fill1PRecords(struct RankingHall1P *dst, s32 hallFacilityId, s32 lvl { s32 i, j; struct RankingHall1P record1P[HALL_RECORDS_COUNT + 1]; - struct PlayerHallRecords *playerHallRecords = calloc(1, sizeof(struct PlayerHallRecords)); + struct PlayerHallRecords *playerHallRecords = AllocZeroed(sizeof(struct PlayerHallRecords)); GetPlayerHallRecords(playerHallRecords); for (i = 0; i < HALL_RECORDS_COUNT; i++) @@ -2305,7 +2305,7 @@ static void Fill2PRecords(struct RankingHall2P *dst, s32 lvlMode) { s32 i, j; struct RankingHall2P record2P[HALL_RECORDS_COUNT + 1]; - struct PlayerHallRecords *playerHallRecords = calloc(1, sizeof(struct PlayerHallRecords)); + struct PlayerHallRecords *playerHallRecords = AllocZeroed(sizeof(struct PlayerHallRecords)); GetPlayerHallRecords(playerHallRecords); for (i = 0; i < HALL_RECORDS_COUNT; i++) @@ -2421,7 +2421,7 @@ void ClearRankingHallRecords(void) void SaveGameFrontier(void) { s32 i; - struct Pokemon *monsParty = calloc(PARTY_SIZE, sizeof(struct Pokemon)); + struct Pokemon *monsParty = AllocZeroed(sizeof(struct Pokemon) * PARTY_SIZE); for (i = 0; i < PARTY_SIZE; i++) monsParty[i] = gPlayerParty[i]; diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 0825daea2c45..26102a8c3d65 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -913,7 +913,7 @@ void SaveLinkTrainerNames(void) s32 j; s32 nextSpace; s32 connectedTrainerRecordIndices[MAX_RFU_PLAYERS]; - struct TrainerNameRecord *newRecords = calloc(ARRAY_COUNT(gSaveBlock1Ptr->trainerNameRecords), sizeof(struct TrainerNameRecord)); + struct TrainerNameRecord *newRecords = AllocZeroed(sizeof(gSaveBlock1Ptr->trainerNameRecords)); // Check if we already have a record saved for connected trainers. for (i = 0; i < GetLinkPlayerCount(); i++) diff --git a/src/mail.c b/src/mail.c index 651fcbb84e46..f1e4fbedf3c7 100644 --- a/src/mail.c +++ b/src/mail.c @@ -448,7 +448,7 @@ void ReadMail(struct Mail *mail, void (*exitCallback)(void), bool8 hasText) u16 buffer[2]; u16 species; - sMailRead = calloc(1, sizeof(*sMailRead)); + sMailRead = AllocZeroed(sizeof(*sMailRead)); sMailRead->language = GAME_LANGUAGE; sMailRead->international = TRUE; sMailRead->parserSingle = CopyEasyChatWord; diff --git a/src/secret_base.c b/src/secret_base.c index 74129d3ff550..7459ba66b077 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -921,7 +921,7 @@ static void Task_ShowSecretBaseRegistryMenu(u8 taskId) tSelectedRow = 0; tScrollOffset = 0; ClearDialogWindowAndFrame(0, FALSE); - sRegistryMenu = calloc(1, sizeof(*sRegistryMenu)); + sRegistryMenu = AllocZeroed(sizeof(*sRegistryMenu)); tMainWindowId = AddWindow(&sRegistryWindowTemplates[0]); BuildRegistryMenuItems(taskId); FinalizeRegistryMenu(taskId); diff --git a/src/tv.c b/src/tv.c index fe663bb35a72..530dd5d94335 100644 --- a/src/tv.c +++ b/src/tv.c @@ -3966,7 +3966,7 @@ static void TranslateShowNames(TVShow *show, u32 language) int i; TVShow **shows; - shows = calloc(11, sizeof(TVShow *)); + shows = AllocZeroed(sizeof(TVShow *) * 11); for (i = 0; i < LAST_TVSHOW_IDX; i++) { switch (show[i].common.kind) From 8a68596b6436a28fee13cc216aed290736b3156d Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 16 Sep 2022 20:36:44 -0300 Subject: [PATCH 739/762] Removed free macro --- gflib/malloc.h | 3 +-- src/battle_pike.c | 4 ++-- src/battle_pyramid.c | 8 ++++---- src/decoration.c | 8 ++++---- src/event_object_movement.c | 2 +- src/frontier_util.c | 6 +++--- src/link_rfu_3.c | 2 +- src/record_mixing.c | 6 +++--- src/recorded_battle.c | 4 ++-- src/secret_base.c | 2 +- src/tv.c | 6 +++--- src/union_room.c | 10 +++++----- 12 files changed, 30 insertions(+), 31 deletions(-) diff --git a/gflib/malloc.h b/gflib/malloc.h index e21bd5a2c86b..851db83a62e5 100644 --- a/gflib/malloc.h +++ b/gflib/malloc.h @@ -2,11 +2,10 @@ #define GUARD_ALLOC_H #define HEAP_SIZE 0x1C000 -#define free Free #define FREE_AND_SET_NULL(ptr) \ { \ - free(ptr); \ + Free(ptr); \ ptr = NULL; \ } diff --git a/src/battle_pike.c b/src/battle_pike.c index 139ea497ba4d..4f9af98ea685 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -1084,7 +1084,7 @@ static u8 GetNextRoomType(void) } nextRoomType = roomCandidates[Random() % numRoomCandidates]; - free(roomCandidates); + Free(roomCandidates); if (nextRoomType == PIKE_ROOM_STATUS) TryInflictRandomStatus(); @@ -1363,7 +1363,7 @@ static void SetHintedRoom(void) } gSaveBlock2Ptr->frontier.pikeHintedRoomType = roomCandidates[Random() % count]; - free(roomCandidates); + Free(roomCandidates); if (gSaveBlock2Ptr->frontier.pikeHintedRoomType == PIKE_ROOM_STATUS && !AtLeastOneHealthyMon()) gSaveBlock2Ptr->frontier.pikeHintedRoomType = PIKE_ROOM_NPC; if (gSaveBlock2Ptr->frontier.pikeHintedRoomType == PIKE_ROOM_DOUBLE_BATTLE && !AtLeastTwoAliveMons()) diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 6e8c6a37eaa4..cbc1589bd950 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1568,7 +1568,7 @@ void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPositio } } RunOnLoadMapScript(); - free(floorLayoutOffsets); + Free(floorLayoutOffsets); } void LoadBattlePyramidObjectEventTemplates(void) @@ -1697,7 +1697,7 @@ static void SetPyramidObjectPositionsUniformly(u8 objType) } while (!(bits & 4) && TrySetPyramidObjectEventPositionInSquare(objType, floorLayoutOffsets, squareId, objectStartIndex + i)); bits &= 1; } - free(floorLayoutOffsets); + Free(floorLayoutOffsets); } static bool8 SetPyramidObjectPositionsInAndNearSquare(u8 objType, u8 squareId) @@ -1760,7 +1760,7 @@ static bool8 SetPyramidObjectPositionsInAndNearSquare(u8 objType, u8 squareId) r7 &= 1; } #ifdef BUGFIX - free(floorLayoutOffsets); + Free(floorLayoutOffsets); #endif return (numObjects / 2) > numPlacedObjects; @@ -1814,7 +1814,7 @@ static bool8 SetPyramidObjectPositionsNearSquare(u8 objType, u8 squareId) break; } #ifdef BUGFIX - free(floorLayoutOffsets); + Free(floorLayoutOffsets); #endif return (numObjects / 2) > numPlacedObjects; diff --git a/src/decoration.c b/src/decoration.c index 2384daa80178..cd3e185da3ce 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1000,7 +1000,7 @@ static void HandleDecorationItemsMenuInput(u8 taskId) DestroyListMenuTask(tMenuTaskId, &sDecorationsScrollOffset, &sDecorationsCursorPos); RemoveDecorationWindow(WINDOW_DECORATION_CATEGORIES); RemoveDecorationItemsOtherWindows(); - free(sDecorationItemsMenu); + Free(sDecorationItemsMenu); sSecretBasePC_SelectedDecorationActions[tDecorationMenuCommand][0](taskId); break; } @@ -1161,7 +1161,7 @@ static void DecorationItemsMenuAction_Cancel(u8 taskId) RemoveDecorationItemsScrollIndicators(); RemoveDecorationItemsOtherWindows(); DestroyListMenuTask(tMenuTaskId, NULL, NULL); - free(sDecorationItemsMenu); + Free(sDecorationItemsMenu); ReinitDecorationCategoriesWindow(taskId); } @@ -2066,7 +2066,7 @@ static u8 AddDecorationIconObjectFromIconTable(u16 tilesTag, u16 paletteTag, u8 template->paletteTag = paletteTag; spriteId = CreateSprite(template, 0, 0, 0); FreeItemIconTemporaryBuffers(); - free(template); + Free(template); return spriteId; } @@ -2105,7 +2105,7 @@ static u8 AddDecorationIconObjectFromObjectEvent(u16 tilesTag, u16 paletteTag, u template->tileTag = tilesTag; template->paletteTag = paletteTag; spriteId = CreateSprite(template, 0, 0, 0); - free(template); + Free(template); } else { diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 83f12c4bb618..1e8668d55cc3 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1543,7 +1543,7 @@ u8 CreateObjectGraphicsSprite(u16 graphicsId, void (*callback)(struct Sprite *), LoadObjectEventPalette(spriteTemplate->paletteTag); spriteId = CreateSprite(spriteTemplate, x, y, subpriority); - free(spriteTemplate); + Free(spriteTemplate); if (spriteId != MAX_SPRITES && subspriteTables != NULL) { diff --git a/src/frontier_util.c b/src/frontier_util.c index 7906df73669a..686b69388aac 100644 --- a/src/frontier_util.c +++ b/src/frontier_util.c @@ -2298,7 +2298,7 @@ static void Fill1PRecords(struct RankingHall1P *dst, s32 hallFacilityId, s32 lvl record1P[highestId].winStreak = 0; } - free(playerHallRecords); + Free(playerHallRecords); } static void Fill2PRecords(struct RankingHall2P *dst, s32 lvlMode) @@ -2332,7 +2332,7 @@ static void Fill2PRecords(struct RankingHall2P *dst, s32 lvlMode) record2P[highestId].winStreak = 0; } - free(playerHallRecords); + Free(playerHallRecords); } static void PrintHallRecords(s32 hallFacilityId, s32 lvlMode) @@ -2436,7 +2436,7 @@ void SaveGameFrontier(void) for (i = 0; i < PARTY_SIZE; i++) gPlayerParty[i] = monsParty[i]; - free(monsParty); + Free(monsParty); } // Frontier Brain functions. diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 26102a8c3d65..0d028cd48abc 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -955,7 +955,7 @@ void SaveLinkTrainerNames(void) // Finalize the new list, and clean up. memcpy(gSaveBlock1Ptr->trainerNameRecords, newRecords, sizeof(gSaveBlock1Ptr->trainerNameRecords)); - free(newRecords); + Free(newRecords); } } diff --git a/src/record_mixing.c b/src/record_mixing.c index 72edd52f2936..5d75f3fc8962 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -358,8 +358,8 @@ static void Task_RecordMixing_Main(u8 taskId) case 5: // Wait for the task created by CreateTask_ReestablishCableClubLink if (!gTasks[tLinkTaskId].isActive) { - free(sReceivedRecords); - free(sSentRecord); + Free(sReceivedRecords); + Free(sSentRecord); SetLinkWaitingForScript(); if (gWirelessCommType != 0) CreateTask(Task_ReturnToFieldRecordMixing, 10); @@ -705,7 +705,7 @@ static void ReceiveLilycoveLadyData(LilycoveLady *records, size_t recordSize, u8 if (lilycoveLady != NULL) { QuizLadyClearQuestionForRecordMix(lilycoveLady); - free(lilycoveLady); + Free(lilycoveLady); } } diff --git a/src/recorded_battle.c b/src/recorded_battle.c index e8785b5f82af..dead1dd7e3bc 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -475,8 +475,8 @@ bool32 MoveRecordedBattleToSaveData(void) break; } - free(battleSave); - free(savSection); + Free(battleSave); + Free(savSection); return ret; } diff --git a/src/secret_base.c b/src/secret_base.c index 7459ba66b077..ea199934399e 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1006,7 +1006,7 @@ static void HandleRegistryMenuInput(u8 taskId) ClearWindowTilemap(tMainWindowId); RemoveWindow(tMainWindowId); ScheduleBgCopyTilemapToVram(0); - free(sRegistryMenu); + Free(sRegistryMenu); GoToSecretBasePCRegisterMenu(taskId); break; default: diff --git a/src/tv.c b/src/tv.c index 530dd5d94335..b32881d09067 100644 --- a/src/tv.c +++ b/src/tv.c @@ -3488,7 +3488,7 @@ void ReceiveTvShowsData(void *src, u32 size, u8 playersLinkId) CompactTVShowArray(gSaveBlock1Ptr->tvShows); DeactivateShowsWithUnseenSpecies(); DeactivateGameCompleteShowsIfNotUnlocked(); - free(rmBuffer2); + Free(rmBuffer2); } } @@ -3861,7 +3861,7 @@ void ReceivePokeNewsData(void *src, u32 size, u8 playersLinkId) } ClearInvalidPokeNews(); ClearPokeNewsIfGameNotComplete(); - free(rmBuffer2); + Free(rmBuffer2); } } @@ -4023,7 +4023,7 @@ static void TranslateShowNames(TVShow *show, u32 language) break; } } - free(shows); + Free(shows); } void SanitizeTVShowsForRuby(TVShow *shows) diff --git a/src/union_room.c b/src/union_room.c index 7d1417671786..b47ddb41c006 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -3365,12 +3365,12 @@ static void Task_InitUnionRoom(u8 taskId) } break; case 4: - free(data->spawnPlayer); - free(data->playerList); - free(data->incomingParentList); - free(data->incomingChildList); + Free(data->spawnPlayer); + Free(data->playerList); + Free(data->incomingParentList); + Free(data->incomingChildList); DestroyTask(data->searchTaskId); - free(sWirelessLinkMain.uRoom); + Free(sWirelessLinkMain.uRoom); LinkRfu_Shutdown(); DestroyTask(taskId); break; From 13877f71dcb884aac6a6bb58493ad4a56811dade Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Sat, 17 Sep 2022 13:33:10 -0400 Subject: [PATCH 740/762] Minor documentation Some things I figured out while working on my hack. - The Subsprite tables do not use `DISPLAY_WIDTH`, but rather use -16, since they are signed bytes. The negative numbers better illustrate what the tables are doing. - Figured out the as-of-yet undocumented data in SpriteCB_FlygonSilhouette --- src/battle_interface.c | 40 +++++++++++++++++++++------ src/intro.c | 62 ++++++++++++++++++++++++------------------ 2 files changed, 67 insertions(+), 35 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index ed4aa9ed8a17..bacdec12a8ad 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -318,10 +318,17 @@ static const struct SpriteTemplate sHealthbarSpriteTemplates[MAX_BATTLERS_COUNT] } }; +/* v-- Origin +[0 + ][1 ] +[ ][ ] sUnused_Subsprites_0 +[ ][ ] +[______________][______] 96x40 +[2 ][3 ][4 ] +*/ static const struct Subsprite sUnused_Subsprites_0[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -337,7 +344,7 @@ static const struct Subsprite sUnused_Subsprites_0[] = .priority = 1 }, { - .x = DISPLAY_WIDTH, + .x = -16, .y = 32, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -362,10 +369,11 @@ static const struct Subsprite sUnused_Subsprites_0[] = } }; +// This subsprite table has the same layout as above, but offset by 64 base tiles. static const struct Subsprite sUnused_Subsprites_2[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -381,7 +389,7 @@ static const struct Subsprite sUnused_Subsprites_2[] = .priority = 1 }, { - .x = DISPLAY_WIDTH, + .x = -16, .y = 32, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -406,10 +414,16 @@ static const struct Subsprite sUnused_Subsprites_2[] = } }; +/* v-- Origin +[0 + ][1 ] +[ ][ ] +[ ][ ] +[ ][ ] 96x32 +*/ static const struct Subsprite sUnused_Subsprites_1[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -426,10 +440,11 @@ static const struct Subsprite sUnused_Subsprites_1[] = } }; +// Same as above static const struct Subsprite sUnused_Subsprites_3[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(64x32), .size = SPRITE_SIZE(64x32), @@ -446,10 +461,13 @@ static const struct Subsprite sUnused_Subsprites_3[] = } }; +/* v-- Origin +[0 + ][1 ] 64x8 +*/ static const struct Subsprite sHealthBar_Subsprites_Player[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -466,10 +484,14 @@ static const struct Subsprite sHealthBar_Subsprites_Player[] = } }; +/* v-- Origin +[] [0 + ][1 ] 72x8 +2^ ^--- Note 8px space +*/ static const struct Subsprite sHealthBar_Subsprites_Opponent[] = { { - .x = DISPLAY_WIDTH, + .x = -16, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -485,7 +507,7 @@ static const struct Subsprite sHealthBar_Subsprites_Opponent[] = .priority = 1 }, { - .x = DISPLAY_WIDTH - 16, + .x = -32, .y = 0, .shape = SPRITE_SHAPE(8x8), .size = SPRITE_SIZE(8x8), diff --git a/src/intro.c b/src/intro.c index b067891429fb..b42dc3a05726 100644 --- a/src/intro.c +++ b/src/intro.c @@ -3322,24 +3322,29 @@ static u8 CreateGameFreakLogoSprites(s16 x, s16 y, s16 unused) #undef sLetterX #undef COLOR_CHANGES +#define sScale data[1] +#define sRot data[2] +#define sPos data[3] +#define sTimer data[7] + static void SpriteCB_FlygonSilhouette(struct Sprite *sprite) { - sprite->data[7]++; + sprite->sTimer++; if (sprite->sState != 0) { - s16 sin1; - s16 sin2; + s16 sin; + s16 cos; s16 a, b, c, d; - - sin1 = gSineTable[(u8)sprite->data[2]]; - sin2 = gSineTable[(u8)(sprite->data[2] + 64)]; - - d = Q_8_8_TO_INT(sin2 * sprite->data[1]); - c = Q_8_8_TO_INT(-sin1 * sprite->data[1]); - b = Q_8_8_TO_INT(sin1 * sprite->data[1]); - a = Q_8_8_TO_INT(sin2 * sprite->data[1]); + // Determines rotation of the sprite + sin = gSineTable[(u8)sprite->sRot]; + cos = gSineTable[(u8)(sprite->sRot + 64)]; + // Converts rotation and scale into the OAM matrix + d = Q_8_8_TO_INT( cos * sprite->sScale); + c = Q_8_8_TO_INT(-sin * sprite->sScale); + b = Q_8_8_TO_INT( sin * sprite->sScale); + a = Q_8_8_TO_INT( cos * sprite->sScale); SetOamMatrix(1, a, b, c, d); } @@ -3353,36 +3358,41 @@ static void SpriteCB_FlygonSilhouette(struct Sprite *sprite) CalcCenterToCornerVec(sprite, SPRITE_SHAPE(64x32), SPRITE_SIZE(64x32), ST_OAM_AFFINE_DOUBLE); sprite->invisible = FALSE; sprite->sState = 1; - sprite->data[1] = 0x80; - sprite->data[2] = 0; - sprite->data[3] = 0; + sprite->sScale = 128; + sprite->sRot = 0; + sprite->sPos = 0; break; case 1: - sprite->x2 = -Sin((u8)sprite->data[3], 140); - sprite->y2 = -Sin((u8)sprite->data[3], 120); - sprite->data[1] += 7; - sprite->data[3] += 3; + sprite->x2 = -Sin((u8)sprite->sPos, 140); + sprite->y2 = -Sin((u8)sprite->sPos, 120); + sprite->sScale += 7; + sprite->sPos += 3; if (sprite->x + sprite->x2 <= -16) { sprite->oam.priority = 3; sprite->sState++; sprite->x = 20; sprite->y = 40; - sprite->data[1] = 0x200; - sprite->data[2] = 0; - sprite->data[3] = 0x10; + sprite->sScale = 512; + sprite->sRot = 0; + sprite->sPos = 16; } break; case 2: - sprite->x2 = Sin((u8)sprite->data[3], 34); - sprite->y2 = -Cos((u8)sprite->data[3], 60); - sprite->data[1] += 2; - if (sprite->data[7] % 5 == 0) - sprite->data[3]++; + sprite->x2 = Sin((u8)sprite->sPos, 34); + sprite->y2 = -Cos((u8)sprite->sPos, 60); + sprite->sScale += 2; + if (sprite->sTimer % 5 == 0) + sprite->sPos++; break; } } +#undef sScale +#undef sRot +#undef sPos +#undef sTimer + static void SpriteCB_RayquazaOrb(struct Sprite *sprite) { u16 foo; From c371a44a83616a06bff012dd81dfdd4cca9b7f78 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Sat, 17 Sep 2022 13:34:54 -0400 Subject: [PATCH 741/762] Formatting --- src/battle_interface.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index bacdec12a8ad..4c97879d8246 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -320,8 +320,8 @@ static const struct SpriteTemplate sHealthbarSpriteTemplates[MAX_BATTLERS_COUNT] /* v-- Origin [0 + ][1 ] -[ ][ ] sUnused_Subsprites_0 -[ ][ ] +[ ][ ] +[ ][ ] [______________][______] 96x40 [2 ][3 ][4 ] */ From 5c55e441734458119a8bf7b748d6dadc77c9302a Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Sat, 17 Sep 2022 14:34:20 -0400 Subject: [PATCH 742/762] More diagrams - Diagramed all subsprite tables in the code base. There's a LOT in the slot machine code. --- src/battle_interface.c | 22 +++--- src/contest.c | 3 + src/field_effect.c | 10 +++ src/naming_screen.c | 20 ++++++ src/slot_machine.c | 153 ++++++++++++++++++++++++++++++++++++++++- 5 files changed, 199 insertions(+), 9 deletions(-) diff --git a/src/battle_interface.c b/src/battle_interface.c index 4c97879d8246..355397a1ed27 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -485,7 +485,7 @@ static const struct Subsprite sHealthBar_Subsprites_Player[] = }; /* v-- Origin -[] [0 + ][1 ] 72x8 +[] [0 + ][1 ] 8x8 + 64x8 2^ ^--- Note 8px space */ static const struct Subsprite sHealthBar_Subsprites_Opponent[] = @@ -529,11 +529,13 @@ static const struct SubspriteTable sHealthBar_SubspriteTables[] = [B_SIDE_PLAYER] = {ARRAY_COUNT(sHealthBar_Subsprites_Player), sHealthBar_Subsprites_Player}, [B_SIDE_OPPONENT] = {ARRAY_COUNT(sHealthBar_Subsprites_Opponent), sHealthBar_Subsprites_Opponent} }; - +/* v-- Origin +[0 ][1 ][2 ][3 ] 128x8 +*/ static const struct Subsprite sStatusSummaryBar_Subsprites_Enter[] = { { - .x = 32 * 5, + .x = 32 * -3, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -541,7 +543,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_Enter[] = .priority = 1 }, { - .x = 32 * 6, + .x = 32 * -2, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -549,7 +551,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_Enter[] = .priority = 1 }, { - .x = 32 * 7, + .x = 32 * -1, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -566,10 +568,14 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_Enter[] = } }; +/* v-- Origin +[0 ][1 ][2 ][3 ][4 ][5 ] 192x8 + ^-- uses same tiles --^ +*/ static const struct Subsprite sStatusSummaryBar_Subsprites_Exit[] = { { - .x = 32 * 5, + .x = 32 * -3, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -577,7 +583,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_Exit[] = .priority = 1 }, { - .x = 32 * 6, + .x = 32 * -2, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), @@ -585,7 +591,7 @@ static const struct Subsprite sStatusSummaryBar_Subsprites_Exit[] = .priority = 1 }, { - .x = 32 * 7, + .x = 32 * -1, .y = 0, .shape = SPRITE_SHAPE(32x8), .size = SPRITE_SIZE(32x8), diff --git a/src/contest.c b/src/contest.c index b2c875a5833e..0f77df814c92 100644 --- a/src/contest.c +++ b/src/contest.c @@ -525,6 +525,9 @@ static const struct SpriteTemplate sSpriteTemplates_NextTurn[CONTESTANT_COUNT] = } }; +/* v-- Origin +[0 +][1 ] 64x8 +*/ static const struct Subsprite sSubsprites_NextTurn[] = { { diff --git a/src/field_effect.c b/src/field_effect.c index 1ab45bb25c26..7612935d5144 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -405,6 +405,11 @@ static const struct SpriteFrameImage sPicTable_HofMonitorSmall[] = {.data = sHofMonitorSmall_Gfx, .size = 0x200} // the macro breaks down here }; +/* +[0_][] <-1 24x16 +[2 ][] <-3 + ^-- Origin +*/ static const struct Subsprite sSubsprites_PokecenterMonitor[] = { { @@ -443,6 +448,11 @@ static const struct Subsprite sSubsprites_PokecenterMonitor[] = static const struct SubspriteTable sSubspriteTable_PokecenterMonitor = subsprite_table(sSubsprites_PokecenterMonitor); +/* +[0_____][1_____] 24x16 +[2 ][3 ] + ^-- Origin +*/ static const struct Subsprite sSubsprites_HofMonitorBig[] = { { diff --git a/src/naming_screen.c b/src/naming_screen.c index b4007b2658ca..fe858b8795d6 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -2179,6 +2179,12 @@ static const struct OamData sOam_32x16 = .paletteNum = 0, }; +/* +[0_____][] <-1 40x32 +[2_____][] <-3 +[3___+_][] <-5/Origin +[4 ][] <-7 +*/ static const struct Subsprite sSubsprites_PageSwapFrame[] = { { @@ -2247,6 +2253,10 @@ static const struct Subsprite sSubsprites_PageSwapFrame[] = } }; +/* +[0_][] <-1 24x8 + ^-- Origin +*/ static const struct Subsprite sSubsprites_PageSwapText[] = { { @@ -2267,6 +2277,11 @@ static const struct Subsprite sSubsprites_PageSwapText[] = } }; +/* +[0_____][] <-1 40x24 +[2_____][] <-3 +[3___+_][] <-5/Origin +*/ static const struct Subsprite sSubsprites_Button[] = { { @@ -2319,6 +2334,11 @@ static const struct Subsprite sSubsprites_Button[] = } }; +/* +[0_] 16x24 +[1+] <--Origin +[2_] +*/ static const struct Subsprite sSubsprites_PCIcon[] = { { diff --git a/src/slot_machine.c b/src/slot_machine.c index 3b82afde197a..8a67acae36c6 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -6433,6 +6433,20 @@ static const struct SpriteTemplate sSpriteTemplate_PikaPowerBolt = .callback = SpriteCB_PikaPowerBolt }; +/* +[0 ][1 ] +[ ][ ] +[ ][ ] +[ ][ ] +[ ][ ] +[______________][______________] 128x128 +[ ]+ <- Origin ] +[ ][ ] +[ ][ ] +[ ][ ] +[ ][ ] +[2 ][3 ] +*/ static const struct Subsprite sSubsprites_ReelBackground[] = { { @@ -6474,6 +6488,11 @@ static const struct SubspriteTable sSubspriteTable_ReelBackground[] = ARRAY_COUNT(sSubsprites_ReelBackground), sSubsprites_ReelBackground }; +/* v-- Origin on 3 +[0_____][1_____] +[2_____][3_____] 64x24 +[4 ][5 ] +*/ static const struct Subsprite sSubsprites_ReelTimeMachineAntennae[] = { { @@ -6531,6 +6550,13 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeMachineAntennae[] = ARRAY_COUNT(sSubsprites_ReelTimeMachineAntennae), sSubsprites_ReelTimeMachineAntennae }; +/* +[0 ] +[ ] +[ + Origin] +[______________] 64x40 +[1 ][2 ] +*/ static const struct Subsprite sSubsprites_ReelTimeMachine[] = { { @@ -6564,6 +6590,14 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeMachine[] = ARRAY_COUNT(sSubsprites_ReelTimeMachine), sSubsprites_ReelTimeMachine }; +/* +[0 ] +[ ] +[ + Origin] +[______________] 64x48 +[1 ][2 ] +[3 ][4 ] +*/ static const struct Subsprite sSubsprites_BrokenReelTimeMachine[] = { { @@ -6613,6 +6647,10 @@ static const struct SubspriteTable sSubspriteTable_BrokenReelTimeMachine[] = ARRAY_COUNT(sSubsprites_BrokenReelTimeMachine), sSubsprites_BrokenReelTimeMachine }; +/* v-- Origin on 3 +[0_____][1_____] +[2 ][3 ] 64x16 +*/ static const struct Subsprite sSubsprites_ReelTimeShadow[] = { { @@ -6654,6 +6692,11 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeShadow[] = ARRAY_COUNT(sSubsprites_ReelTimeShadow), sSubsprites_ReelTimeShadow }; +/* +[0_] 16x24 +[1+] <--Origin +[2_] +*/ static const struct Subsprite sSubsprites_ReelTimeNumberGap[] = { { @@ -6687,6 +6730,14 @@ static const struct SubspriteTable sSubspriteTable_ReelTimeNumberGap[] = ARRAY_COUNT(sSubsprites_ReelTimeNumberGap), sSubsprites_ReelTimeNumberGap }; +/* +[0 ] +[ ] +[ + Origin] +[______________] 64x48 +[1 ][2 ] +[3 ][4 ] +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Reel[] = { { @@ -6736,6 +6787,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Reel[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Reel), sSubsprites_DigitalDisplay_Reel }; +/* v-- Origin on 3 +[0_____][1_____] +[2 ][3 ] 64x16 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Time[] = { { @@ -6777,6 +6832,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Time[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Time), sSubsprites_DigitalDisplay_Time }; +/* v-- Origin on 3 +[0_____][1_____] +[2 ][3 ] 64x16 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Insert[] = { { @@ -6818,6 +6877,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Insert[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Insert), sSubsprites_DigitalDisplay_Insert }; +/* v-- Origin on 3 +[0_____][1_____] +[2 ][3 ] 64x16 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Unused1[] = { { @@ -6859,6 +6922,11 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Unused1[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Unused1), sSubsprites_DigitalDisplay_Unused1 }; +/* v-- Origin on 3 +[0_____][1_____] +[2_____][3_____] +[4 ][5 ] 64x24 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Win[] = { { @@ -6950,6 +7018,14 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Unused2[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Unused2), sSubsprites_DigitalDisplay_Unused2 }; +/* +[0_____][1_] +[2_____][3_] +[4_____][5_] +[6_____][7+] <-- Origin +[8_____][9_] +[10____][11] +*/ static const struct Subsprite sSubsprites_DigitalDisplay_Pokeball[] = { { @@ -6962,7 +7038,7 @@ static const struct Subsprite sSubsprites_DigitalDisplay_Pokeball[] = }, { .x = 8, - -24, + .y = -24, .shape = SPRITE_SHAPE(16x8), .size = SPRITE_SIZE(16x8), .tileOffset = 4, @@ -7055,6 +7131,11 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Pokeball[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_Pokeball), sSubsprites_DigitalDisplay_Pokeball }; +/* +[0 ] 32x24 +[ + ] <- Origin +[1 ][2 ] +*/ static const struct Subsprite sSubsprites_DigitalDisplay_DPad[] = { { @@ -7088,6 +7169,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_DPad[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_DPad), sSubsprites_DigitalDisplay_DPad }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_StopS[] = { { @@ -7113,6 +7198,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopS[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_StopS), sSubsprites_DigitalDisplay_StopS }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_StopT[] = { { @@ -7138,6 +7227,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopT[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_StopT), sSubsprites_DigitalDisplay_StopT }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_StopO[] = { { @@ -7163,6 +7256,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopO[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_StopO), sSubsprites_DigitalDisplay_StopO }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_StopP[] = { { @@ -7188,6 +7285,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_StopP[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_StopP), sSubsprites_DigitalDisplay_StopP }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BonusB[] = { { @@ -7213,6 +7314,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusB[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BonusB), sSubsprites_DigitalDisplay_BonusB }; +/* +[]<-0 16x16 +[]<-1 <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BonusO[] = { { @@ -7238,6 +7343,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusO[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BonusO), sSubsprites_DigitalDisplay_BonusO }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BonusN[] = { { @@ -7263,6 +7372,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusN[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BonusN), sSubsprites_DigitalDisplay_BonusN }; +/* +[]<-0 16x16 +[]<-1 <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BonusU[] = { { @@ -7288,6 +7401,10 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusU[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BonusU), sSubsprites_DigitalDisplay_BonusU }; +/* +[0 ] 16x16 +[1+] <- Origin +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BonusS[] = { { @@ -7313,6 +7430,12 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BonusS[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BonusS), sSubsprites_DigitalDisplay_BonusS }; +/* +[0_][] <-1 +[2_][] <-3 +[4_][] <-5 + ^-- Origin on 3 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BigB[] = { { @@ -7370,6 +7493,11 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigB[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BigB), sSubsprites_DigitalDisplay_BigB }; +/* +[0_] 16x24 +[1+] <--Origin +[2_] +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BigI[] = { { @@ -7403,6 +7531,12 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigI[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BigI), sSubsprites_DigitalDisplay_BigI }; +/* +[0_][] <-1 +[2_][] <-3 +[4_][] <-5 + ^-- Origin on 3 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_BigG[] = { { @@ -7460,6 +7594,12 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_BigG[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_BigG), sSubsprites_DigitalDisplay_BigG }; +/* +[0_][] <-1 +[2_][] <-3 +[4_][] <-5 + ^-- Origin on 3 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_RegR[] = { { @@ -7517,6 +7657,11 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_RegR[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_RegR), sSubsprites_DigitalDisplay_RegR }; +/* +[0_] 16x24 +[1+] <--Origin +[2_] +*/ static const struct Subsprite sSubsprites_DigitalDisplay_RegE[] = { { @@ -7550,6 +7695,12 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_RegE[] = ARRAY_COUNT(sSubsprites_DigitalDisplay_RegE), sSubsprites_DigitalDisplay_RegE }; +/* +[0_][] <-1 +[2_][] <-3 +[4_][] <-5 + ^-- Origin on 3 +*/ static const struct Subsprite sSubsprites_DigitalDisplay_RegG[] = { { From 1107ff954d93dff53bdc8025a763d5f6a328f141 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 22 Sep 2022 13:32:35 -0400 Subject: [PATCH 743/762] Clean up shop.c --- include/constants/items.h | 5 +- include/shop.h | 41 --- src/battle_pyramid_bag.c | 2 +- .../battle_frontier_exchange_corner.h | 8 +- src/data/item_icon_table.h | 4 +- src/field_specials.c | 4 +- src/item_icon.c | 4 +- src/item_menu.c | 2 +- src/player_pc.c | 2 +- src/shop.c | 282 ++++++++++-------- 10 files changed, 178 insertions(+), 176 deletions(-) diff --git a/include/constants/items.h b/include/constants/items.h index e9d889cfa055..daf129c76f4d 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -477,7 +477,10 @@ #define ITEM_OLD_SEA_MAP 376 #define ITEMS_COUNT 377 -#define ITEM_FIELD_ARROW ITEMS_COUNT + +// A special item id associated with "Cancel"/"Exit" etc. in a list of items or decorations +// Its icon is defined at ITEMS_COUNT as the "return to field" arrow +#define ITEM_LIST_END 0xFFFF // Range of berries given out by various NPCS #define FIRST_BERRY_MASTER_BERRY ITEM_POMEG_BERRY diff --git a/include/shop.h b/include/shop.h index c338103b4a3d..7fd7669ea551 100644 --- a/include/shop.h +++ b/include/shop.h @@ -3,47 +3,6 @@ extern EWRAM_DATA struct ItemSlot gMartPurchaseHistory[3]; -enum -{ - MART_TYPE_NORMAL, // normal mart - MART_TYPE_DECOR, - MART_TYPE_DECOR2, -}; - -// shop view window NPC info enum -enum -{ - OBJ_EVENT_ID, - X_COORD, - Y_COORD, - ANIM_NUM, - LAYER_TYPE -}; - -struct MartInfo -{ - /*0x0*/ void (*callback)(void); - /*0x4*/ const struct MenuAction *menuActions; - /*0x8*/ const u16 *itemList; - /*0xC*/ u16 itemCount; - /*0xE*/ u8 windowId; - /*0xF*/ u8 martType; -}; - -struct ShopData -{ - /*0x0000*/ u16 tilemapBuffers[4][0x400]; - /*0x2000*/ u32 totalCost; - /*0x2004*/ u16 itemsShowed; - /*0x2006*/ u16 selectedRow; - /*0x2008*/ u16 scrollOffset; - /*0x200A*/ u8 maxQuantity; - /*0x200B*/ u8 scrollIndicatorsTaskId; - /*0x200C*/ u8 iconSlot; - /*0x200D*/ u8 itemSpriteIds[2]; - /*0x2010*/ s16 viewportObjects[OBJECT_EVENTS_COUNT][5]; -}; - void CreatePokemartMenu(const u16 *); void CreateDecorationShop1Menu(const u16 *); void CreateDecorationShop2Menu(const u16 *); diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 7a4d981f0188..67afaefe1bb4 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -645,7 +645,7 @@ static void BagCursorMoved(s32 itemIndex, bool8 onInit, struct ListMenu *list) if (itemIndex != LIST_CANCEL) ShowItemIcon(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][itemIndex], gPyramidBagMenu->isAltIcon); else - ShowItemIcon(0xFFFF, gPyramidBagMenu->isAltIcon); // Show exit arrow if on Cancel + ShowItemIcon(ITEM_LIST_END, gPyramidBagMenu->isAltIcon); // Show exit arrow if on Cancel gPyramidBagMenu->isAltIcon ^= 1; PrintItemDescription(itemIndex); } diff --git a/src/data/battle_frontier/battle_frontier_exchange_corner.h b/src/data/battle_frontier/battle_frontier_exchange_corner.h index 426285e92ede..3a1eef76d462 100644 --- a/src/data/battle_frontier/battle_frontier_exchange_corner.h +++ b/src/data/battle_frontier/battle_frontier_exchange_corner.h @@ -10,7 +10,7 @@ static const u16 sFrontierExchangeCorner_Decor1[] = DECOR_CYNDAQUIL_DOLL, DECOR_CHIKORITA_DOLL, DECOR_TOTODILE_DOLL, - 0xFFFF + ITEM_LIST_END }; static const u16 sFrontierExchangeCorner_Decor2[] = @@ -20,7 +20,7 @@ static const u16 sFrontierExchangeCorner_Decor2[] = DECOR_VENUSAUR_DOLL, DECOR_CHARIZARD_DOLL, DECOR_BLASTOISE_DOLL, - 0xFFFF + ITEM_LIST_END }; static const u16 sFrontierExchangeCorner_Vitamins[] = @@ -31,7 +31,7 @@ static const u16 sFrontierExchangeCorner_Vitamins[] = ITEM_ZINC, ITEM_CARBOS, ITEM_HP_UP, - 0xFFFF + ITEM_LIST_END }; static const u16 sFrontierExchangeCorner_HoldItems[] = @@ -45,7 +45,7 @@ static const u16 sFrontierExchangeCorner_HoldItems[] = ITEM_KINGS_ROCK, ITEM_FOCUS_BAND, ITEM_SCOPE_LENS, - 0xFFFF + ITEM_LIST_END }; static const u8 *const sFrontierExchangeCorner_Decor1Descriptions[] = diff --git a/src/data/item_icon_table.h b/src/data/item_icon_table.h index ea8315e76091..64328f7b1788 100644 --- a/src/data/item_icon_table.h +++ b/src/data/item_icon_table.h @@ -1,4 +1,4 @@ -const u32 *const gItemIconTable[][2] = +const u32 *const gItemIconTable[ITEMS_COUNT + 1][2] = { [ITEM_NONE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // Pokeballs @@ -402,5 +402,5 @@ const u32 *const gItemIconTable[][2] = [ITEM_MAGMA_EMBLEM] = {gItemIcon_MagmaEmblem, gItemIconPalette_MagmaEmblem}, [ITEM_OLD_SEA_MAP] = {gItemIcon_OldSeaMap, gItemIconPalette_OldSeaMap}, // Return to field arrow - [ITEM_FIELD_ARROW] = {gItemIcon_ReturnToFieldArrow, gItemIconPalette_ReturnToFieldArrow}, + [ITEMS_COUNT] = {gItemIcon_ReturnToFieldArrow, gItemIconPalette_ReturnToFieldArrow}, }; diff --git a/src/field_specials.c b/src/field_specials.c index 2e33b443ca7e..11ae04f5541a 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -2919,7 +2919,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) { case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_1: AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor1Descriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); - if (sFrontierExchangeCorner_Decor1[selection] == 0xFFFF) + if (sFrontierExchangeCorner_Decor1[selection] == ITEM_LIST_END) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor1[selection]); } @@ -2932,7 +2932,7 @@ static void FillFrontierExchangeCornerWindowAndItemIcon(u16 menu, u16 selection) break; case SCROLL_MULTI_BF_EXCHANGE_CORNER_DECOR_VENDOR_2: AddTextPrinterParameterized2(0, FONT_NORMAL, sFrontierExchangeCorner_Decor2Descriptions[selection], 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); - if (sFrontierExchangeCorner_Decor2[selection] == 0xFFFF) + if (sFrontierExchangeCorner_Decor2[selection] == ITEM_LIST_END) { ShowFrontierExchangeCornerItemIcon(sFrontierExchangeCorner_Decor2[selection]); } diff --git a/src/item_icon.c b/src/item_icon.c index 274ed03b3637..fd6f041695e1 100644 --- a/src/item_icon.c +++ b/src/item_icon.c @@ -159,8 +159,8 @@ u8 AddCustomItemIconSprite(const struct SpriteTemplate *customSpriteTemplate, u1 const void *GetItemIconPicOrPalette(u16 itemId, u8 which) { - if (itemId == 0xFFFF) - itemId = ITEM_FIELD_ARROW; + if (itemId == ITEM_LIST_END) + itemId = ITEMS_COUNT; // Use last icon, the "return to field" arrow else if (itemId >= ITEMS_COUNT) itemId = 0; diff --git a/src/item_menu.c b/src/item_menu.c index 288c2d956509..9e796652889e 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -937,7 +937,7 @@ static void BagMenu_MoveCursorCallback(s32 itemIndex, bool8 onInit, struct ListM if (itemIndex != LIST_CANCEL) AddBagItemIconSprite(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex), gBagMenu->itemIconSlot); else - AddBagItemIconSprite(-1, gBagMenu->itemIconSlot); + AddBagItemIconSprite(ITEM_LIST_END, gBagMenu->itemIconSlot); gBagMenu->itemIconSlot ^= 1; if (!gBagMenu->inhibitItemDescriptionPrint) PrintItemDescription(itemIndex); diff --git a/src/player_pc.c b/src/player_pc.c index 9ec36d61d23d..b1a323a3289e 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -1015,7 +1015,7 @@ static void ItemStorage_MoveCursor(s32 id, bool8 onInit, struct ListMenu *list) if (id != LIST_CANCEL) ItemStorage_DrawItemIcon(gSaveBlock1Ptr->pcItems[id].itemId); else - ItemStorage_DrawItemIcon(MSG_GO_BACK_TO_PREV); + ItemStorage_DrawItemIcon(ITEM_LIST_END); ItemStorage_PrintDescription(id); } } diff --git a/src/shop.c b/src/shop.c index 451fa171cba3..d3569c2e5406 100755 --- a/src/shop.c +++ b/src/shop.c @@ -42,10 +42,72 @@ #define TAG_SCROLL_ARROW 2100 #define TAG_ITEM_ICON_BASE 2110 +#define MAX_ITEMS_SHOWN 8 + +enum { + WIN_BUY_SELL_QUIT, + WIN_BUY_QUIT, +}; + +enum { + WIN_MONEY, + WIN_ITEM_LIST, + WIN_ITEM_DESCRIPTION, + WIN_QUANTITY_IN_BAG, + WIN_QUANTITY_PRICE, + WIN_MESSAGE, +}; + +enum { + COLORID_NORMAL, // Item descriptions, quantity in bag, and quantity/price + COLORID_ITEM_LIST, // The text in the item list, and the cursor normally + COLORID_GRAY_CURSOR, // When the cursor has selected an item to purchase +}; + +enum { + MART_TYPE_NORMAL, + MART_TYPE_DECOR, + MART_TYPE_DECOR2, +}; + +// shop view window NPC info enum +enum +{ + OBJ_EVENT_ID, + X_COORD, + Y_COORD, + ANIM_NUM, + LAYER_TYPE +}; + +struct MartInfo +{ + void (*callback)(void); + const struct MenuAction *menuActions; + const u16 *itemList; + u16 itemCount; + u8 windowId; + u8 martType; +}; + +struct ShopData +{ + u16 tilemapBuffers[4][0x400]; + u32 totalCost; + u16 itemsShowed; + u16 selectedRow; + u16 scrollOffset; + u8 maxQuantity; + u8 scrollIndicatorsTaskId; + u8 iconSlot; + u8 itemSpriteIds[2]; + s16 viewportObjects[OBJECT_EVENTS_COUNT][5]; +}; + static EWRAM_DATA struct MartInfo sMartInfo = {0}; static EWRAM_DATA struct ShopData *sShopData = NULL; static EWRAM_DATA struct ListMenuItem *sListMenuItems = NULL; -static EWRAM_DATA u8 (*sItemNames)[16] = {0}; +static EWRAM_DATA u8 (*sItemNames)[ITEM_NAME_LENGTH + 2] = {0}; static EWRAM_DATA u8 sPurchaseHistoryId = 0; EWRAM_DATA struct ItemSlot gMartPurchaseHistory[SMARTSHOPPER_NUM_ITEMS] = {0}; @@ -114,7 +176,7 @@ static const struct MenuAction sShopMenuActions_BuyQuit[] = static const struct WindowTemplate sShopMenuWindowTemplates[] = { - { + [WIN_BUY_SELL_QUIT] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 1, @@ -123,7 +185,8 @@ static const struct WindowTemplate sShopMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x0008, }, - { + // Separate shop menu window for decorations, which can't be sold + [WIN_BUY_QUIT] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 1, @@ -141,7 +204,7 @@ static const struct ListMenuTemplate sShopBuyMenuListTemplate = .itemPrintFunc = BuyMenuPrintPriceInList, .totalItems = 0, .maxShowed = 0, - .windowId = 1, + .windowId = WIN_ITEM_LIST, .header_X = 0, .item_X = 8, .cursor_X = 0, @@ -198,7 +261,7 @@ static const struct BgTemplate sShopBuyMenuBgTemplates[] = static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = { - { + [WIN_MONEY] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, @@ -207,7 +270,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x001E, }, - { + [WIN_ITEM_LIST] = { .bg = 0, .tilemapLeft = 14, .tilemapTop = 2, @@ -216,7 +279,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x0032, }, - { + [WIN_ITEM_DESCRIPTION] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, @@ -225,7 +288,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x0122, }, - { + [WIN_QUANTITY_IN_BAG] = { .bg = 0, .tilemapLeft = 1, .tilemapTop = 11, @@ -234,7 +297,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x0176, }, - { + [WIN_QUANTITY_PRICE] = { .bg = 0, .tilemapLeft = 18, .tilemapTop = 11, @@ -243,7 +306,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] = .paletteNum = 15, .baseBlock = 0x018E, }, - { + [WIN_MESSAGE] = { .bg = 0, .tilemapLeft = 2, .tilemapTop = 15, @@ -268,9 +331,9 @@ static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates = static const u8 sShopBuyMenuTextColors[][3] = { - {1, 2, 3}, - {0, 2, 3}, - {0, 3, 2} + [COLORID_NORMAL] = {1, 2, 3}, + [COLORID_ITEM_LIST] = {0, 2, 3}, + [COLORID_GRAY_CURSOR] = {0, 3, 2}, }; static u8 CreateShopMenu(u8 martType) @@ -282,8 +345,7 @@ static u8 CreateShopMenu(u8 martType) if (martType == MART_TYPE_NORMAL) { - struct WindowTemplate winTemplate; - winTemplate = sShopMenuWindowTemplates[0]; + struct WindowTemplate winTemplate = sShopMenuWindowTemplates[WIN_BUY_SELL_QUIT]; winTemplate.width = GetMaxWidthInMenuTable(sShopMenuActions_BuySellQuit, ARRAY_COUNT(sShopMenuActions_BuySellQuit)); sMartInfo.windowId = AddWindow(&winTemplate); sMartInfo.menuActions = sShopMenuActions_BuySellQuit; @@ -291,8 +353,7 @@ static u8 CreateShopMenu(u8 martType) } else { - struct WindowTemplate winTemplate; - winTemplate = sShopMenuWindowTemplates[1]; + struct WindowTemplate winTemplate = sShopMenuWindowTemplates[WIN_BUY_QUIT]; winTemplate.width = GetMaxWidthInMenuTable(sShopMenuActions_BuyQuit, ARRAY_COUNT(sShopMenuActions_BuyQuit)); sMartInfo.windowId = AddWindow(&winTemplate); sMartInfo.menuActions = sShopMenuActions_BuyQuit; @@ -320,6 +381,7 @@ static void SetShopItemsForSale(const u16 *items) sMartInfo.itemList = items; sMartInfo.itemCount = 0; + // Read items until ITEM_NONE / DECOR_NONE is reached while (sMartInfo.itemList[i]) { sMartInfo.itemCount++; @@ -344,11 +406,17 @@ static void Task_ShopMenu(u8 taskId) } } +#define tItemCount data[1] +#define tItemId data[5] +#define tListTaskId data[7] +#define tCallbackHi data[8] +#define tCallbackLo data[9] + static void Task_HandleShopMenuBuy(u8 taskId) { s16 *data = gTasks[taskId].data; - data[8] = (u32)CB2_InitBuyMenu >> 16; - data[9] = (u32)CB2_InitBuyMenu; + tCallbackHi = (u32)CB2_InitBuyMenu >> 16; + tCallbackLo = (u32)CB2_InitBuyMenu; gTasks[taskId].func = Task_GoToBuyOrSellMenu; FadeScreen(FADE_TO_BLACK, 0); } @@ -356,8 +424,8 @@ static void Task_HandleShopMenuBuy(u8 taskId) static void Task_HandleShopMenuSell(u8 taskId) { s16 *data = gTasks[taskId].data; - data[8] = (u32)CB2_GoToSellMenu >> 16; - data[9] = (u32)CB2_GoToSellMenu; + tCallbackHi = (u32)CB2_GoToSellMenu >> 16; + tCallbackLo = (u32)CB2_GoToSellMenu; gTasks[taskId].func = Task_GoToBuyOrSellMenu; FadeScreen(FADE_TO_BLACK, 0); } @@ -386,7 +454,7 @@ static void Task_GoToBuyOrSellMenu(u8 taskId) if (!gPaletteFade.active) { DestroyTask(taskId); - SetMainCallback2((void *)((u16)data[8] << 16 | (u16)data[9])); + SetMainCallback2((void *)((u16)tCallbackHi << 16 | (u16)tCallbackLo)); } } @@ -429,10 +497,6 @@ static void VBlankCB_BuyMenu(void) TransferPlttBuffer(); } -#define tItemCount data[1] -#define tItemId data[5] -#define tListTaskId data[7] - static void CB2_InitBuyMenu(void) { u8 taskId; @@ -472,8 +536,8 @@ static void CB2_InitBuyMenu(void) BuyMenuAddScrollIndicatorArrows(); taskId = CreateTask(Task_BuyMenu, 8); gTasks[taskId].tListTaskId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0); - BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); - BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK); + BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); SetVBlankCallback(VBlankCB_BuyMenu); SetMainCallback2(CB2_BuyMenu); break; @@ -504,8 +568,8 @@ static void BuyMenuBuildListMenuTemplate(void) gMultiuseListMenuTemplate = sShopBuyMenuListTemplate; gMultiuseListMenuTemplate.items = sListMenuItems; gMultiuseListMenuTemplate.totalItems = sMartInfo.itemCount + 1; - if (gMultiuseListMenuTemplate.totalItems > 8) - gMultiuseListMenuTemplate.maxShowed = 8; + if (gMultiuseListMenuTemplate.totalItems > MAX_ITEMS_SHOWN) + gMultiuseListMenuTemplate.maxShowed = MAX_ITEMS_SHOWN; else gMultiuseListMenuTemplate.maxShowed = gMultiuseListMenuTemplate.totalItems; @@ -532,7 +596,7 @@ static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, s if (item != LIST_CANCEL) BuyMenuAddItemIcon(item, sShopData->iconSlot); else - BuyMenuAddItemIcon(-1, sShopData->iconSlot); + BuyMenuAddItemIcon(ITEM_LIST_END, sShopData->iconSlot); BuyMenuRemoveItemIcon(item, sShopData->iconSlot ^ 1); sShopData->iconSlot ^= 1; @@ -548,8 +612,8 @@ static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, s description = gText_QuitShopping; } - FillWindowPixelBuffer(2, PIXEL_FILL(0)); - BuyMenuPrint(2, description, 3, 1, 0, 0); + FillWindowPixelBuffer(WIN_ITEM_DESCRIPTION, PIXEL_FILL(0)); + BuyMenuPrint(WIN_ITEM_DESCRIPTION, description, 3, 1, 0, COLORID_NORMAL); } static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) @@ -576,21 +640,21 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y) } StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1); - x = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 0x78); - AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, 0, 0, sShopBuyMenuTextColors[1], TEXT_SKIP_DRAW, gStringVar4); + x = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 120); + AddTextPrinterParameterized4(windowId, FONT_NARROW, x, y, 0, 0, sShopBuyMenuTextColors[COLORID_ITEM_LIST], TEXT_SKIP_DRAW, gStringVar4); } } static void BuyMenuAddScrollIndicatorArrows(void) { - if (sShopData->scrollIndicatorsTaskId == TASK_NONE && sMartInfo.itemCount + 1 > 8) + if (sShopData->scrollIndicatorsTaskId == TASK_NONE && sMartInfo.itemCount + 1 > MAX_ITEMS_SHOWN) { sShopData->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized( SCROLL_ARROW_UP, 172, 12, 148, - sMartInfo.itemCount - 7, + sMartInfo.itemCount - (MAX_ITEMS_SHOWN - 1), TAG_SCROLL_ARROW, TAG_SCROLL_ARROW, &sShopData->scrollOffset); @@ -609,7 +673,7 @@ static void BuyMenuRemoveScrollIndicatorArrows(void) static void BuyMenuPrintCursor(u8 scrollIndicatorsTaskId, u8 colorSet) { u8 y = ListMenuGetYCoordForPrintingArrowCursor(scrollIndicatorsTaskId); - BuyMenuPrint(1, gText_SelectorArrow2, 0, y, 0, colorSet); + BuyMenuPrint(WIN_ITEM_LIST, gText_SelectorArrow2, 0, y, 0, colorSet); } static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) @@ -619,7 +683,7 @@ static void BuyMenuAddItemIcon(u16 item, u8 iconSlot) if (*spriteIdPtr != SPRITE_NONE) return; - if (sMartInfo.martType == MART_TYPE_NORMAL || item == 0xFFFF) + if (sMartInfo.martType == MART_TYPE_NORMAL || item == ITEM_LIST_END) { spriteId = AddItemIconSprite(iconSlot + TAG_ITEM_ICON_BASE, iconSlot + TAG_ITEM_ICON_BASE, item); if (spriteId != MAX_SPRITES) @@ -683,11 +747,11 @@ static void BuyMenuInitWindows(void) { InitWindows(sShopBuyMenuWindowTemplates); DeactivateAllTextPrinters(); - LoadUserWindowBorderGfx(0, 1, 0xD0); - LoadMessageBoxGfx(0, 0xA, 0xE0); - PutWindowTilemap(0); - PutWindowTilemap(1); - PutWindowTilemap(2); + LoadUserWindowBorderGfx(WIN_MONEY, 1, 0xD0); + LoadMessageBoxGfx(WIN_MONEY, 0xA, 0xE0); + PutWindowTilemap(WIN_MONEY); + PutWindowTilemap(WIN_ITEM_LIST); + PutWindowTilemap(WIN_ITEM_DESCRIPTION); } static void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet) @@ -697,7 +761,7 @@ static void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 c static void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback) { - DisplayMessageAndContinueTask(taskId, 5, 10, 14, FONT_NORMAL, GetPlayerTextSpeedDelay(), text, callback); + DisplayMessageAndContinueTask(taskId, WIN_MESSAGE, 10, 14, FONT_NORMAL, GetPlayerTextSpeedDelay(), text, callback); ScheduleBgCopyTilemapToVram(0); } @@ -706,7 +770,7 @@ static void BuyMenuDrawGraphics(void) BuyMenuDrawMapGraphics(); BuyMenuCopyMenuBgToBg1TilemapBuffer(); AddMoneyLabelObject(19, 11); - PrintMoneyAmountInMoneyBoxWithBorder(0, 1, 13, GetMoney(&gSaveBlock1Ptr->money)); + PrintMoneyAmountInMoneyBoxWithBorder(WIN_MONEY, 1, 13, GetMoney(&gSaveBlock1Ptr->money)); ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(1); ScheduleBgCopyTilemapToVram(2); @@ -722,10 +786,8 @@ static void BuyMenuDrawMapGraphics(void) static void BuyMenuDrawMapBg(void) { - s16 i; - s16 j; - s16 x; - s16 y; + s16 i, j; + s16 x, y; const struct MapLayout *mapLayout; u16 metatile; u8 metatileLayerType; @@ -746,13 +808,9 @@ static void BuyMenuDrawMapBg(void) metatileLayerType = METATILE_LAYER_TYPE_COVERED; if (metatile < NUM_METATILES_IN_PRIMARY) - { BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->primaryTileset->metatiles + metatile * 8, metatileLayerType); - } else - { BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->secondaryTileset->metatiles + ((metatile - NUM_METATILES_IN_PRIMARY) * 8), metatileLayerType); - } } } } @@ -794,11 +852,13 @@ static void BuyMenuCollectObjectEventData(void) s16 facingY; u8 y; u8 x; - u8 r8 = 0; + u8 numObjects = 0; GetXYCoordsOneStepInFrontOfPlayer(&facingX, &facingY); + for (y = 0; y < OBJECT_EVENTS_COUNT; y++) sShopData->viewportObjects[y][OBJ_EVENT_ID] = OBJECT_EVENTS_COUNT; + for (y = 0; y < 5; y++) { for (x = 0; x < 7; x++) @@ -807,28 +867,28 @@ static void BuyMenuCollectObjectEventData(void) if (objEventId != OBJECT_EVENTS_COUNT) { - sShopData->viewportObjects[r8][OBJ_EVENT_ID] = objEventId; - sShopData->viewportObjects[r8][X_COORD] = x; - sShopData->viewportObjects[r8][Y_COORD] = y; - sShopData->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y); + sShopData->viewportObjects[numObjects][OBJ_EVENT_ID] = objEventId; + sShopData->viewportObjects[numObjects][X_COORD] = x; + sShopData->viewportObjects[numObjects][Y_COORD] = y; + sShopData->viewportObjects[numObjects][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y); switch (gObjectEvents[objEventId].facingDirection) { - case DIR_SOUTH: - sShopData->viewportObjects[r8][ANIM_NUM] = 0; - break; - case DIR_NORTH: - sShopData->viewportObjects[r8][ANIM_NUM] = 1; - break; - case DIR_WEST: - sShopData->viewportObjects[r8][ANIM_NUM] = 2; - break; - case DIR_EAST: - default: - sShopData->viewportObjects[r8][ANIM_NUM] = 3; - break; + case DIR_SOUTH: + sShopData->viewportObjects[numObjects][ANIM_NUM] = ANIM_STD_FACE_SOUTH; + break; + case DIR_NORTH: + sShopData->viewportObjects[numObjects][ANIM_NUM] = ANIM_STD_FACE_NORTH; + break; + case DIR_WEST: + sShopData->viewportObjects[numObjects][ANIM_NUM] = ANIM_STD_FACE_WEST; + break; + case DIR_EAST: + default: + sShopData->viewportObjects[numObjects][ANIM_NUM] = ANIM_STD_FACE_EAST; + break; } - r8++; + numObjects++; } } } @@ -867,13 +927,9 @@ static void BuyMenuDrawObjectEvents(void) static bool8 BuyMenuCheckIfObjectEventOverlapsMenuBg(s16 *object) { if (!BuyMenuCheckForOverlapWithMenuBg(object[X_COORD], object[Y_COORD] + 2) && object[LAYER_TYPE] != METATILE_LAYER_TYPE_COVERED) - { return TRUE; - } else - { return FALSE; - } } static void BuyMenuCopyMenuBgToBg1TilemapBuffer(void) @@ -885,9 +941,7 @@ static void BuyMenuCopyMenuBgToBg1TilemapBuffer(void) for (i = 0; i < 1024; i++) { if (src[i] != 0) - { dest[i] = src[i] + 0xC3E3; - } } } @@ -901,9 +955,7 @@ static bool8 BuyMenuCheckForOverlapWithMenuBg(int x, int y) metatile[offset2 + offset1 + 32] == 0 && metatile[offset2 + offset1 + 1] == 0 && metatile[offset2 + offset1 + 33] == 0) - { return TRUE; - } return FALSE; } @@ -928,18 +980,14 @@ static void Task_BuyMenu(u8 taskId) default: PlaySE(SE_SELECT); tItemId = itemId; - ClearWindowTilemap(2); + ClearWindowTilemap(WIN_ITEM_DESCRIPTION); BuyMenuRemoveScrollIndicatorArrows(); - BuyMenuPrintCursor(tListTaskId, 2); + BuyMenuPrintCursor(tListTaskId, COLORID_GRAY_CURSOR); if (sMartInfo.martType == MART_TYPE_NORMAL) - { sShopData->totalCost = (ItemId_GetPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT)); - } else - { sShopData->totalCost = gDecorations[itemId].price; - } if (!IsEnoughMoney(&gSaveBlock1Ptr->money, sShopData->totalCost)) { @@ -985,25 +1033,21 @@ static void Task_BuyHowManyDialogueInit(u8 taskId) u16 quantityInBag = CountTotalItemQuantityInBag(tItemId); u16 maxQuantity; - DrawStdFrameWithCustomTileAndPalette(3, FALSE, 1, 13); + DrawStdFrameWithCustomTileAndPalette(WIN_QUANTITY_IN_BAG, FALSE, 1, 13); ConvertIntToDecimalStringN(gStringVar1, quantityInBag, STR_CONV_MODE_RIGHT_ALIGN, MAX_ITEM_DIGITS + 1); StringExpandPlaceholders(gStringVar4, gText_InBagVar1); - BuyMenuPrint(3, gStringVar4, 0, 1, 0, 0); + BuyMenuPrint(WIN_QUANTITY_IN_BAG, gStringVar4, 0, 1, 0, COLORID_NORMAL); tItemCount = 1; - DrawStdFrameWithCustomTileAndPalette(4, FALSE, 1, 13); + DrawStdFrameWithCustomTileAndPalette(WIN_QUANTITY_PRICE, FALSE, 1, 13); BuyMenuPrintItemQuantityAndPrice(taskId); ScheduleBgCopyTilemapToVram(0); maxQuantity = GetMoney(&gSaveBlock1Ptr->money) / sShopData->totalCost; if (maxQuantity > MAX_BAG_ITEM_CAPACITY) - { sShopData->maxQuantity = MAX_BAG_ITEM_CAPACITY; - } else - { sShopData->maxQuantity = maxQuantity; - } gTasks[taskId].func = Task_BuyHowManyDialogueHandleInput; } @@ -1022,11 +1066,11 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) if (JOY_NEW(A_BUTTON)) { PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(4, FALSE); - ClearStdWindowAndFrameToTransparent(3, FALSE); - ClearWindowTilemap(4); - ClearWindowTilemap(3); - PutWindowTilemap(1); + ClearStdWindowAndFrameToTransparent(WIN_QUANTITY_PRICE, FALSE); + ClearStdWindowAndFrameToTransparent(WIN_QUANTITY_IN_BAG, FALSE); + ClearWindowTilemap(WIN_QUANTITY_PRICE); + ClearWindowTilemap(WIN_QUANTITY_IN_BAG); + PutWindowTilemap(WIN_ITEM_LIST); CopyItemName(tItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, tItemCount, STR_CONV_MODE_LEFT_ALIGN, BAG_ITEM_CAPACITY_DIGITS); ConvertIntToDecimalStringN(gStringVar3, sShopData->totalCost, STR_CONV_MODE_LEFT_ALIGN, 6); @@ -1035,10 +1079,10 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) else if (JOY_NEW(B_BUTTON)) { PlaySE(SE_SELECT); - ClearStdWindowAndFrameToTransparent(4, FALSE); - ClearStdWindowAndFrameToTransparent(3, FALSE); - ClearWindowTilemap(4); - ClearWindowTilemap(3); + ClearStdWindowAndFrameToTransparent(WIN_QUANTITY_PRICE, FALSE); + ClearStdWindowAndFrameToTransparent(WIN_QUANTITY_IN_BAG, FALSE); + ClearWindowTilemap(WIN_QUANTITY_PRICE); + ClearWindowTilemap(WIN_QUANTITY_IN_BAG); BuyMenuReturnToItemList(taskId); } } @@ -1053,7 +1097,7 @@ static void BuyMenuTryMakePurchase(u8 taskId) { s16 *data = gTasks[taskId].data; - PutWindowTilemap(1); + PutWindowTilemap(WIN_ITEM_LIST); if (sMartInfo.martType == MART_TYPE_NORMAL) { @@ -1088,16 +1132,12 @@ static void BuyMenuSubtractMoney(u8 taskId) IncrementGameStat(GAME_STAT_SHOPPED); RemoveMoney(&gSaveBlock1Ptr->money, sShopData->totalCost); PlaySE(SE_SHOP); - PrintMoneyAmountInMoneyBox(0, GetMoney(&gSaveBlock1Ptr->money), 0); + PrintMoneyAmountInMoneyBox(WIN_MONEY, GetMoney(&gSaveBlock1Ptr->money), 0); if (sMartInfo.martType == MART_TYPE_NORMAL) - { gTasks[taskId].func = Task_ReturnToItemListAfterItemPurchase; - } else - { gTasks[taskId].func = Task_ReturnToItemListAfterDecorationPurchase; - } } static void Task_ReturnToItemListAfterItemPurchase(u8 taskId) @@ -1107,14 +1147,12 @@ static void Task_ReturnToItemListAfterItemPurchase(u8 taskId) if (JOY_NEW(A_BUTTON | B_BUTTON)) { PlaySE(SE_SELECT); - if (tItemId == ITEM_POKE_BALL && tItemCount > 9 && AddBagItem(ITEM_PREMIER_BALL, 1) == TRUE) - { + + // Purchasing 10+ Poke Balls gets the player a Premier Ball + if (tItemId == ITEM_POKE_BALL && tItemCount >= 10 && AddBagItem(ITEM_PREMIER_BALL, 1) == TRUE) BuyMenuDisplayMessage(taskId, gText_ThrowInPremierBall, BuyMenuReturnToItemList); - } else - { BuyMenuReturnToItemList(taskId); - } } } @@ -1131,10 +1169,10 @@ static void BuyMenuReturnToItemList(u8 taskId) { s16 *data = gTasks[taskId].data; - ClearDialogWindowAndFrameToTransparent(5, FALSE); - BuyMenuPrintCursor(tListTaskId, 1); - PutWindowTilemap(1); - PutWindowTilemap(2); + ClearDialogWindowAndFrameToTransparent(WIN_MESSAGE, FALSE); + BuyMenuPrintCursor(tListTaskId, COLORID_ITEM_LIST); + PutWindowTilemap(WIN_ITEM_LIST); + PutWindowTilemap(WIN_ITEM_DESCRIPTION); ScheduleBgCopyTilemapToVram(0); BuyMenuAddScrollIndicatorArrows(); gTasks[taskId].func = Task_BuyMenu; @@ -1144,11 +1182,11 @@ static void BuyMenuPrintItemQuantityAndPrice(u8 taskId) { s16 *data = gTasks[taskId].data; - FillWindowPixelBuffer(4, PIXEL_FILL(1)); - PrintMoneyAmount(4, 38, 1, sShopData->totalCost, TEXT_SKIP_DRAW); + FillWindowPixelBuffer(WIN_QUANTITY_PRICE, PIXEL_FILL(1)); + PrintMoneyAmount(WIN_QUANTITY_PRICE, 38, 1, sShopData->totalCost, TEXT_SKIP_DRAW); ConvertIntToDecimalStringN(gStringVar1, tItemCount, STR_CONV_MODE_LEADING_ZEROS, BAG_ITEM_CAPACITY_DIGITS); StringExpandPlaceholders(gStringVar4, gText_xVar1); - BuyMenuPrint(4, gStringVar4, 0, 1, 0, 0); + BuyMenuPrint(WIN_QUANTITY_PRICE, gStringVar4, 0, 1, 0, COLORID_NORMAL); } static void ExitBuyMenu(u8 taskId) @@ -1204,6 +1242,8 @@ static void RecordItemPurchase(u8 taskId) #undef tItemCount #undef tItemId #undef tListTaskId +#undef tCallbackHi +#undef tCallbackLo void CreatePokemartMenu(const u16 *itemsForSale) { From 7e112b0f0ddcc05fcbe08855114e6fea810fc3a6 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 22 Sep 2022 21:43:33 -0300 Subject: [PATCH 744/762] Added missing uses of JOY_xx macros --- src/intro.c | 2 +- src/list_menu.c | 8 ++++---- src/main.c | 6 +++--- src/title_screen.c | 4 ++-- src/union_room_chat.c | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/intro.c b/src/intro.c index b067891429fb..bc81bcbb6f49 100644 --- a/src/intro.c +++ b/src/intro.c @@ -1039,7 +1039,7 @@ static void MainCB2_Intro(void) AnimateSprites(); BuildOamBuffer(); UpdatePaletteFade(); - if (gMain.newKeys && !gPaletteFade.active) + if (gMain.newKeys != 0 && !gPaletteFade.active) SetMainCallback2(MainCB2_EndIntro); else if (gIntroFrameCounter != -1) gIntroFrameCounter++; diff --git a/src/list_menu.c b/src/list_menu.c index 64692ce1f641..112fca75307d 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -440,13 +440,13 @@ s32 ListMenu_ProcessInput(u8 listTaskId) break; case LIST_MULTIPLE_SCROLL_DPAD: // note: JOY_REPEAT won't match here - leftButton = gMain.newAndRepeatedKeys & DPAD_LEFT; - rightButton = gMain.newAndRepeatedKeys & DPAD_RIGHT; + leftButton = JOY_REPEAT(DPAD_LEFT); + rightButton = JOY_REPEAT(DPAD_RIGHT); break; case LIST_MULTIPLE_SCROLL_L_R: // same as above - leftButton = gMain.newAndRepeatedKeys & L_BUTTON; - rightButton = gMain.newAndRepeatedKeys & R_BUTTON; + leftButton = JOY_REPEAT(L_BUTTON); + rightButton = JOY_REPEAT(R_BUTTON); break; } diff --git a/src/main.c b/src/main.c index 5fd236447bb9..29494043fbf9 100644 --- a/src/main.c +++ b/src/main.c @@ -124,8 +124,8 @@ void AgbMain() ReadKeys(); if (gSoftResetDisabled == FALSE - && (gMain.heldKeysRaw & A_BUTTON) - && (gMain.heldKeysRaw & B_START_SELECT) == B_START_SELECT) + && JOY_HELD_RAW(A_BUTTON) + && JOY_HELD_RAW(B_START_SELECT) == B_START_SELECT) { rfu_REQ_stopMode(); rfu_waitREQComplete(); @@ -278,7 +278,7 @@ static void ReadKeys(void) gMain.heldKeys |= A_BUTTON; } - if (gMain.newKeys & gMain.watchedKeysMask) + if (JOY_NEW(gMain.watchedKeysMask)) gMain.watchedKeysPressed = TRUE; } diff --git a/src/title_screen.c b/src/title_screen.c index 25a1d60d055a..689c96863dda 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -634,7 +634,7 @@ static void MainCB2(void) static void Task_TitleScreenPhase1(u8 taskId) { // Skip to next phase when A, B, Start, or Select is pressed - if ((gMain.newKeys & A_B_START_SELECT) || gTasks[taskId].data[1] != 0) + if (JOY_NEW(A_B_START_SELECT) || gTasks[taskId].data[1] != 0) { gTasks[taskId].tSkipToNext = TRUE; gTasks[taskId].tCounter = 0; @@ -681,7 +681,7 @@ static void Task_TitleScreenPhase2(u8 taskId) u32 yPos; // Skip to next phase when A, B, Start, or Select is pressed - if ((gMain.newKeys & A_B_START_SELECT) || gTasks[taskId].tSkipToNext) + if (JOY_NEW(A_B_START_SELECT) || gTasks[taskId].tSkipToNext) { gTasks[taskId].tSkipToNext = TRUE; gTasks[taskId].tCounter = 0; diff --git a/src/union_room_chat.c b/src/union_room_chat.c index 5c26d1ea3616..e1ca7c0b0dcc 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -1044,7 +1044,7 @@ static void Chat_HandleInput(void) { SetChatFunction(CHAT_FUNC_SWITCH); } - else if (gMain.newAndRepeatedKeys & B_BUTTON) + else if (JOY_REPEAT(B_BUTTON)) { if (sChat->bufferCursorPos) { From 44a5a8d31e5920c7f2eab588f772dd13ff7ff5f1 Mon Sep 17 00:00:00 2001 From: sbird Date: Fri, 23 Sep 2022 03:22:57 +0200 Subject: [PATCH 745/762] [debug] fix AGBAssert for AGBPrintf debug block --- include/gba/isagbprint.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index abe7fb2107fa..2fb860be92a5 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -39,7 +39,7 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP void AGBPrintInit(void); #define DebugPrintf(pBuf, ...) AGBPrintf(const char *pBuf, ...) #define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1) -#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 0) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0) // Not used in this configuration #define MgbaOpen() From 22329d3318cde3f07ed5401226c0df2b5d951957 Mon Sep 17 00:00:00 2001 From: sbird Date: Fri, 23 Sep 2022 03:23:44 +0200 Subject: [PATCH 746/762] [debug] use boolean constants for nStopProgram --- include/gba/isagbprint.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 2fb860be92a5..37e2bb080940 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -17,8 +17,8 @@ void MgbaClose(void); void MgbaPrintf(const char *pBuf, ...); void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); #define DebugPrintf(pBuf, ...) MgbaPrintf(pBuf, __VA_ARGS__) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, 1) -#define AGB_WARNING(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, 0) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, TRUE) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, FALSE) // Not used in this configuration #define AGBPrintfInit() @@ -26,8 +26,8 @@ void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nS void NoCashGBAPrintf(const char *pBuf, ...) void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) #define DebugPrintf(pBuf, ...) NoCashGBAPrintf(pBuf, __VA_ARGS__) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 1); -#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, 0) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, TRUE); +#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, FALSE) // Not used in this configuration #define MgbaOpen() @@ -38,8 +38,8 @@ void AGBPrintf(const char *pBuf, ...); void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram); void AGBPrintInit(void); #define DebugPrintf(pBuf, ...) AGBPrintf(const char *pBuf, ...) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1) -#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0) +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, TRUE) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, FALSE) // Not used in this configuration #define MgbaOpen() From 12670e8e3ee0ca49dd88d36e83ec698bfc7b227f Mon Sep 17 00:00:00 2001 From: sbird Date: Fri, 23 Sep 2022 03:48:58 +0200 Subject: [PATCH 747/762] [debug] simplify macros, add EX versions --- include/gba/isagbprint.h | 54 ++++++++++++++++++++-------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 37e2bb080940..59518ecdf74f 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -7,52 +7,52 @@ #define DebugPrintf(pBuf, ...) #define MgbaOpen() #define MgbaClose() -#define AGB_ASSERT(exp) -#define AGB_WARNING(exp) #define AGBPrintInit() +#define DebugAssert(pFile, nLine, pExpression, nStopProgram) #else -#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) + bool32 MgbaOpen(void); void MgbaClose(void); void MgbaPrintf(const char *pBuf, ...); void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); +void NoCashGBAPrintf(const char *pBuf, ...); +void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); +void AGBPrintf(const char *pBuf, ...); +void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram); +void AGBPrintInit(void); + +#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) + #define DebugPrintf(pBuf, ...) MgbaPrintf(pBuf, __VA_ARGS__) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, TRUE) -#define AGB_WARNING(exp) (exp) ? ((void*)0) : MgbaAssert(__FILE__, __LINE__, #exp, FALSE) +#define DebugAssert(pFile, nLine, pExpression, nStopProgram) MgbaAssert(pFile, nLine, pExpression, nStopProgram) -// Not used in this configuration -#define AGBPrintfInit() #elif (LOG_HANDLER == LOG_HANDLER_NOCASH_PRINT) -void NoCashGBAPrintf(const char *pBuf, ...) -void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) + #define DebugPrintf(pBuf, ...) NoCashGBAPrintf(pBuf, __VA_ARGS__) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, TRUE); -#define AGB_WARNING(exp) (exp) ? ((void*)0) : NoCashGBAAssert(__FILE__, __LINE__, #exp, FALSE) +#define DebugAssert(pFile, nLine, pExpression, nStopProgram) NoCashGBAAssert(pFile, nLine, pExpression, nStopProgram) -// Not used in this configuration -#define MgbaOpen() -#define MgbaClose() -#define AGBPrintInit() #else // Default to AGBPrint -void AGBPrintf(const char *pBuf, ...); -void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram); -void AGBPrintInit(void); + #define DebugPrintf(pBuf, ...) AGBPrintf(const char *pBuf, ...) -#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, TRUE) -#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, FALSE) +#define DebugAssert(pFile, nLine, pExpression, nStopProgram) AGBAssert(pFile, nLine, pExpression, nStopProgram) -// Not used in this configuration -#define MgbaOpen() -#define MgbaClose() #endif #endif -// for matching purposes - #ifdef NDEBUG -#define AGB_ASSERT_EX(exp, file, line) + +#define AGB_ASSERT(exp) +#define AGB_WARNING(exp) +#define AGB_ASSERT_EX(exp, file, line) +#define AGB_WARNING_EX(exp, file, line) + #else -#define AGB_ASSERT_EX(exp, file, line) AGB_ASSERT(exp); + +#define AGB_ASSERT(exp) (exp) ? ((void*)0) : DebugAssert(__FILE__, __LINE__, #exp, TRUE) +#define AGB_WARNING(exp) (exp) ? ((void*)0) : DebugAssert(__FILE__, __LINE__, #exp, FALSE) + +#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void *)0) : DebugAssert(file, line, #exp, FALSE); +#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void *)0) : DebugAssert(file, line, #exp, TRUE); #endif #endif // GUARD_GBA_ISAGBPRINT_H From 343d7f7d269be96fbc82be6b421bdc657fa79979 Mon Sep 17 00:00:00 2001 From: sbird Date: Fri, 23 Sep 2022 04:02:30 +0200 Subject: [PATCH 748/762] [debug] do not use heap allocation for MgbaPrintf --- include/gba/isagbprint.h | 10 ++++++-- src/libisagbprn.c | 50 +++------------------------------------- 2 files changed, 11 insertions(+), 49 deletions(-) diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 59518ecdf74f..91aa9f214e1c 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -3,6 +3,12 @@ #include "gba/types.h" +#define MGBA_LOG_FATAL (0) +#define MGBA_LOG_ERROR (1) +#define MGBA_LOG_WARN (2) +#define MGBA_LOG_INFO (3) +#define MGBA_LOG_DEBUG (4) + #ifdef NDEBUG #define DebugPrintf(pBuf, ...) #define MgbaOpen() @@ -13,7 +19,7 @@ bool32 MgbaOpen(void); void MgbaClose(void); -void MgbaPrintf(const char *pBuf, ...); +void MgbaPrintf(s32 level, const char *pBuf, ...); void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); void NoCashGBAPrintf(const char *pBuf, ...); void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram); @@ -23,7 +29,7 @@ void AGBPrintInit(void); #if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) -#define DebugPrintf(pBuf, ...) MgbaPrintf(pBuf, __VA_ARGS__) +#define DebugPrintf(pBuf, ...) MgbaPrintf(MGBA_LOG_INFO, pBuf, __VA_ARGS__) #define DebugAssert(pFile, nLine, pExpression, nStopProgram) MgbaAssert(pFile, nLine, pExpression, nStopProgram) #elif (LOG_HANDLER == LOG_HANDLER_NOCASH_PRINT) diff --git a/src/libisagbprn.c b/src/libisagbprn.c index 0dbaec157d4e..fab9b5990bf0 100644 --- a/src/libisagbprn.c +++ b/src/libisagbprn.c @@ -211,14 +211,6 @@ void NoCashGBAAssert(const char *pFile, s32 nLine, const char *pExpression, bool // mgba print functions #if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) -#define MGBA_PRINTF_BUFFER_SIZE (4096) - -#define MGBA_LOG_FATAL (0) -#define MGBA_LOG_ERROR (1) -#define MGBA_LOG_WARN (2) -#define MGBA_LOG_INFO (3) -#define MGBA_LOG_DEBUG (4) - #define MGBA_REG_DEBUG_MAX (256) bool32 MgbaOpen(void) @@ -232,7 +224,7 @@ void MgbaClose(void) *REG_DEBUG_ENABLE = 0; } -static void MgbaPrintfBounded(s32 level, const char* ptr, ...) +void MgbaPrintf(s32 level, const char* ptr, ...) { va_list args; @@ -249,52 +241,16 @@ static void MgbaPrintfBounded(s32 level, const char* ptr, ...) *REG_DEBUG_FLAGS = level | 0x100; } -void MgbaPrintf(const char* ptr, ...) -{ - va_list args; - u32 offset = 0; - u32 n = 0; - u32 i; - char *buffer = Alloc(MGBA_PRINTF_BUFFER_SIZE); - AGB_ASSERT(buffer != NULL); - - va_start(args, ptr); - #if (PRETTY_PRINT_HANDLER == PRETTY_PRINT_MINI_PRINTF) - n = mini_vsnprintf(buffer, MGBA_PRINTF_BUFFER_SIZE, ptr, args); - #elif (PRETTY_PRINT_HANDLER == PRETTY_PRINT_LIBC) - n = vsnprintf(buffer, MGBA_PRINTF_BUFFER_SIZE, ptr, args); - #else - #error "unspecified pretty printing handler." - #endif - va_end(args); - - AGB_ASSERT(n < MGBA_PRINTF_BUFFER_SIZE); - - do - { - for (i = 0; i < MGBA_REG_DEBUG_MAX; ++i) - { - REG_DEBUG_STRING[i] = buffer[offset + i]; - if (buffer[offset + i] == 0) - break; - } - offset += i; - *REG_DEBUG_FLAGS = MGBA_LOG_INFO | 0x100; - } while ((i == MGBA_REG_DEBUG_MAX) && (buffer[offset] != '\0')); - - Free(buffer); -} - void MgbaAssert(const char *pFile, s32 nLine, const char *pExpression, bool32 nStopProgram) { if (nStopProgram) { - MgbaPrintfBounded(MGBA_LOG_ERROR, "ASSERTION FAILED FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + MgbaPrintf(MGBA_LOG_ERROR, "ASSERTION FAILED FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); asm(".hword 0xEFFF"); } else { - MgbaPrintfBounded(MGBA_LOG_WARN, "WARING FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); + MgbaPrintf(MGBA_LOG_WARN, "WARING FILE=[%s] LINE=[%d] EXP=[%s]", pFile, nLine, pExpression); } } #endif From d8b391906383186ff1b05d1cf7167577527ef8d2 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sat, 24 Sep 2022 18:27:53 -0400 Subject: [PATCH 749/762] Ignore Porymap's prefabs file --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index cac4a07e61a9..8d9502ae8335 100644 --- a/.gitignore +++ b/.gitignore @@ -31,6 +31,7 @@ build/ *.ddump .idea/ porymap.project.cfg +prefabs.json .vscode/ *.a .fuse_hidden* From 0f35f080ecb8a59d3941817c6a4e236d6600cabb Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sat, 24 Sep 2022 23:48:24 -0300 Subject: [PATCH 750/762] =?UTF-8?q?Gender=20icon=20in=20naming=20screen=20?= =?UTF-8?q?based=20on=20Pok=C3=A9mon=20name=20length?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/naming_screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/naming_screen.c b/src/naming_screen.c index b4007b2658ca..a05e501c2be8 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -1771,7 +1771,7 @@ static void DrawGenderIcon(void) StringCopy(text, gText_FemaleSymbol); isFemale = TRUE; } - AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, 0x68, 1, sGenderColors[isFemale], TEXT_SKIP_DRAW, text); + AddTextPrinterParameterized3(sNamingScreen->windows[WIN_TEXT_ENTRY], FONT_NORMAL, (POKEMON_NAME_LENGTH * 4) + 64, 1, sGenderColors[isFemale], TEXT_SKIP_DRAW, text); } } From f695ddd1ba3a9d9a882bf35cde4d18c09b386432 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 25 Sep 2022 18:34:07 -0400 Subject: [PATCH 751/762] Ignore new Porymap config --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 8d9502ae8335..082430d794e2 100644 --- a/.gitignore +++ b/.gitignore @@ -30,7 +30,7 @@ build/ .DS_Store *.ddump .idea/ -porymap.project.cfg +porymap.*.cfg prefabs.json .vscode/ *.a From 5054cf35862326278bdb73827be4c075b483aa14 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 25 Sep 2022 21:33:20 -0300 Subject: [PATCH 752/762] Documented unk40EF in Summary Screen --- include/pokemon_summary_screen.h | 2 +- src/pokemon_storage_system.c | 2 +- src/pokemon_summary_screen.c | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/pokemon_summary_screen.h b/include/pokemon_summary_screen.h index 3996c8e15f5d..b026baa533fb 100755 --- a/include/pokemon_summary_screen.h +++ b/include/pokemon_summary_screen.h @@ -10,7 +10,7 @@ extern const u8 *const gNatureNamePointers[]; void ShowPokemonSummaryScreen(u8 mode, void *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)); void ShowSelectMovePokemonSummaryScreen(struct Pokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void), u16 newMove); -void ShowPokemonSummaryScreenSet40EF(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)); +void ShowPokemonSummaryScreenHandleDeoxys(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)); u8 GetMoveSlotToReplace(void); void SummaryScreen_SetAnimDelayTaskId(u8 taskId); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 32069153e6c7..4d4879d241c3 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -3755,7 +3755,7 @@ static void Task_ChangeScreen(u8 taskId) mode = sStorage->summaryScreenMode; FreePokeStorageData(); if (mode == SUMMARY_MODE_NORMAL && boxMons == &sSavedMovingMon.box) - ShowPokemonSummaryScreenSet40EF(mode, boxMons, monIndex, maxMonIndex, CB2_ReturnToPokeStorage); + ShowPokemonSummaryScreenHandleDeoxys(mode, boxMons, monIndex, maxMonIndex, CB2_ReturnToPokeStorage); else ShowPokemonSummaryScreen(mode, boxMons, monIndex, maxMonIndex, CB2_ReturnToPokeStorage); break; diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 74e1da2cc674..9806a75dc237 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -182,7 +182,7 @@ static EWRAM_DATA struct PokemonSummaryScreenData u8 filler40CA; u8 windowIds[8]; u8 spriteIds[SPRITE_ARR_ID_COUNT]; - bool8 unk40EF; + bool8 handleDeoxys; s16 switchCounter; // Used for various switch statement cases that decompress/load graphics or pokemon data u8 unk_filler4[6]; } *sMonSummaryScreen = NULL; @@ -1122,10 +1122,10 @@ void ShowSelectMovePokemonSummaryScreen(struct Pokemon *mons, u8 monIndex, u8 ma sMonSummaryScreen->newMove = newMove; } -void ShowPokemonSummaryScreenSet40EF(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)) +void ShowPokemonSummaryScreenHandleDeoxys(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void)) { ShowPokemonSummaryScreen(mode, mons, monIndex, maxMonIndex, callback); - sMonSummaryScreen->unk40EF = TRUE; + sMonSummaryScreen->handleDeoxys = TRUE; } static void MainCB2(void) @@ -1406,7 +1406,7 @@ static bool8 ExtractMonDataToSummaryStruct(struct Pokemon *mon) sum->ppBonuses = GetMonData(mon, MON_DATA_PP_BONUSES); break; case 2: - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->handleDeoxys == TRUE) { sum->nature = GetNature(mon); sum->currentHP = GetMonData(mon, MON_DATA_HP); @@ -3888,7 +3888,7 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) { if (gMonSpritesGfxPtr != NULL) { - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->handleDeoxys == TRUE) HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], gMonSpritesGfxPtr->sprites.ptr[B_POSITION_OPPONENT_LEFT], summary->species2, @@ -3901,7 +3901,7 @@ static u8 LoadMonGfxAndSprite(struct Pokemon *mon, s16 *state) } else { - if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->unk40EF == TRUE) + if (sMonSummaryScreen->monList.mons == gPlayerParty || sMonSummaryScreen->mode == SUMMARY_MODE_BOX || sMonSummaryScreen->handleDeoxys == TRUE) HandleLoadSpecialPokePic_2(&gMonFrontPicTable[summary->species2], MonSpritesGfxManager_GetSpritePtr(MON_SPR_GFX_MANAGER_A, B_POSITION_OPPONENT_LEFT), summary->species2, From e515e52abb8f477df32b1bb050ffee5ba149954b Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 26 Sep 2022 12:22:27 -0400 Subject: [PATCH 753/762] Add DISPLAY_TILE_* constants --- include/gba/defines.h | 3 +++ src/berry_blender.c | 4 ++-- src/contest_util.c | 18 +++++++++--------- src/credits.c | 2 +- src/dodrio_berry_picking.c | 14 +++++++------- src/field_screen_effect.c | 2 +- src/frontier_pass.c | 12 ++++++------ src/link.c | 6 +++--- src/mail.c | 4 ++-- src/main_menu.c | 2 +- src/mystery_event_menu.c | 2 +- src/mystery_gift_menu.c | 4 ++-- src/mystery_gift_view.c | 36 ++++++++++++++++++------------------ src/naming_screen.c | 2 +- src/party_menu.c | 4 ++-- src/trade.c | 6 +++--- src/union_room.c | 4 ++-- src/union_room_battle.c | 2 +- 18 files changed, 65 insertions(+), 62 deletions(-) diff --git a/include/gba/defines.h b/include/gba/defines.h index c52d7ef4f9a3..6d96e9a9e71c 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -67,6 +67,9 @@ #define DISPLAY_WIDTH 240 #define DISPLAY_HEIGHT 160 +#define DISPLAY_TILE_WIDTH (DISPLAY_WIDTH / 8) +#define DISPLAY_TILE_HEIGHT (DISPLAY_HEIGHT / 8) + #define TILE_SIZE_4BPP 32 #define TILE_SIZE_8BPP 64 diff --git a/src/berry_blender.c b/src/berry_blender.c index d099a14ba21c..140d1042eb32 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1008,7 +1008,7 @@ static bool8 LoadBerryBlenderGfx(void) static void DrawBlenderBg(void) { - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x1E, 0x14); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); ShowBg(0); ShowBg(1); @@ -1029,7 +1029,7 @@ static void InitBerryBlenderWindows(void) for (i = 0; i < 5; i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x1E, 0x14); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); Menu_LoadStdPalAt(0xE0); } } diff --git a/src/contest_util.c b/src/contest_util.c index d44b47373ce7..9a38251760c4 100644 --- a/src/contest_util.c +++ b/src/contest_util.c @@ -1167,24 +1167,24 @@ static void TryCreateWirelessSprites(void) static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) { u16 windowId; - int origWidth; + int tileWidth; int strWidth; u8 *spriteTilePtrs[4]; u8 *dst; struct WindowTemplate windowTemplate; memset(&windowTemplate, 0, sizeof(windowTemplate)); - windowTemplate.width = 30; + windowTemplate.width = DISPLAY_TILE_WIDTH; windowTemplate.height = 2; windowId = AddWindow(&windowTemplate); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); - origWidth = GetStringWidth(FONT_NORMAL, text, 0); - strWidth = (origWidth + 9) / 8; - if (strWidth > 30) - strWidth = 30; + strWidth = GetStringWidth(FONT_NORMAL, text, 0); + tileWidth = (strWidth + 9) / 8; + if (tileWidth > DISPLAY_TILE_WIDTH) + tileWidth = DISPLAY_TILE_WIDTH; - AddTextPrinterParameterized3(windowId, FONT_NORMAL, (strWidth * 8 - origWidth) / 2, 1, sContestLinkTextColors, TEXT_SKIP_DRAW, text); + AddTextPrinterParameterized3(windowId, FONT_NORMAL, (tileWidth * 8 - strWidth) / 2, 1, sContestLinkTextColors, TEXT_SKIP_DRAW, text); { s32 i; struct Sprite *sprite; @@ -1207,7 +1207,7 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) CpuCopy32(src + 128, dst + 0x200, 0x20); CpuCopy32(src + 64, dst + 0x300, 0x20); - for (i = 0; i < strWidth; i++) + for (i = 0; i < tileWidth; i++) { dst = &spriteTilePtrs[(i + 1) / 8][((i + 1) % 8) * 32]; CpuCopy32(src + 192, dst, 0x20); @@ -1225,7 +1225,7 @@ static s32 DrawResultsTextWindow(const u8 *text, u8 spriteId) } RemoveWindow(windowId); - return (DISPLAY_WIDTH - (strWidth + 2) * 8) / 2; + return (DISPLAY_WIDTH - (tileWidth + 2) * 8) / 2; } static void CreateResultsTextWindowSprites(void) diff --git a/src/credits.c b/src/credits.c index c318595999db..4156e45ba49f 100644 --- a/src/credits.c +++ b/src/credits.c @@ -183,7 +183,7 @@ static const struct WindowTemplate sWindowTemplates[] = .bg = 0, .tilemapLeft = 0, .tilemapTop = 9, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 12, .paletteNum = 8, .baseBlock = 1 diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index a3710e04fb0a..268b930ae8f7 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -4675,7 +4675,7 @@ static void ShowNames(void) ClearWindowTilemap(sGfx->windowIds[i]); RemoveWindow(sGfx->windowIds[i]); } - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; } @@ -4859,7 +4859,7 @@ static void ShowResults(void) sGfx->state++; } - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 5, 30, 15); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 5, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT - 5); RemoveWindow(sGfx->windowIds[1]); sGfx->windowIds[1] = AddWindow(&sWindowTemplate_Prize); ClearWindowTilemap(sGfx->windowIds[1]); @@ -4917,7 +4917,7 @@ static void ShowResults(void) ClearWindowTilemap(sGfx->windowIds[1]); RemoveWindow(sGfx->windowIds[0]); RemoveWindow(sGfx->windowIds[1]); - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; break; @@ -5012,7 +5012,7 @@ static void Msg_WantToPlayAgain(void) ClearWindowTilemap(sGfx->windowIds[WIN_YES_NO]); RemoveWindow(sGfx->windowIds[WIN_PLAY_AGAIN]); RemoveWindow(sGfx->windowIds[WIN_YES_NO]); - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; break; @@ -5044,7 +5044,7 @@ static void Msg_SavingDontTurnOff(void) sGfx->state++; break; default: - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; break; @@ -5083,7 +5083,7 @@ static void EraseMessage(void) { ClearWindowTilemap(sGfx->windowIds[0]); RemoveWindow(sGfx->windowIds[0]); - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; } @@ -5121,7 +5121,7 @@ static void Msg_SomeoneDroppedOut(void) sGfx->playAgainState = PLAY_AGAIN_DROPPED; ClearWindowTilemap(sGfx->windowIds[0]); RemoveWindow(sGfx->windowIds[0]); - FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(BG_INTERFACE); sGfx->finished = TRUE; break; diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 948d812e816e..57f8cc52e4dd 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -1136,7 +1136,7 @@ static void Task_OrbEffect(u8 taskId) SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(12, 7)); SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR); SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ); - SetBgTilemapPalette(0, 0, 0, 0x1E, 0x14, 0xF); + SetBgTilemapPalette(0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT, 0xF); ScheduleBgCopyTilemapToVram(0); SetOrbFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], tCenterX, tCenterY, 1); CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480); diff --git a/src/frontier_pass.c b/src/frontier_pass.c index b143587415bb..d25cb34cff89 100644 --- a/src/frontier_pass.c +++ b/src/frontier_pass.c @@ -760,9 +760,9 @@ static bool32 InitFrontierPass(void) case 7: if (FreeTempTileDataBuffersIfPossible()) return FALSE; - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); @@ -1396,9 +1396,9 @@ static bool32 InitFrontierMap(void) SetBgTilemapBuffer(0, sMapData->tilemapBuff0); SetBgTilemapBuffer(1, sMapData->tilemapBuff1); SetBgTilemapBuffer(2, sMapData->tilemapBuff2); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); diff --git a/src/link.c b/src/link.c index b01be9d89041..06907005fe9e 100644 --- a/src/link.c +++ b/src/link.c @@ -198,7 +198,7 @@ static const struct WindowTemplate sLinkErrorWindowTemplates[] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 0, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 5, .paletteNum = 15, .baseBlock = 0x002 @@ -206,7 +206,7 @@ static const struct WindowTemplate sLinkErrorWindowTemplates[] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 6, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 7, .paletteNum = 15, .baseBlock = 0x098 @@ -214,7 +214,7 @@ static const struct WindowTemplate sLinkErrorWindowTemplates[] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 13, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 7, .paletteNum = 15, .baseBlock = 0x16A diff --git a/src/mail.c b/src/mail.c index f1e4fbedf3c7..63553f172b6e 100644 --- a/src/mail.c +++ b/src/mail.c @@ -556,8 +556,8 @@ static bool8 MailReadBuildGraphics(void) } break; case 10: - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 1, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 1, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyToBgTilemapBuffer(1, sMailGraphics[sMailRead->mailType].tileMap, 0, 0); break; case 11: diff --git a/src/main_menu.c b/src/main_menu.c index b8abffda5704..5b18e440a606 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1121,7 +1121,7 @@ static void Task_DisplayMainMenuInvalidActionError(u8 taskId) switch (gTasks[taskId].tCurrItem) { case 0: - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); switch (gTasks[taskId].tMenuType) { case 0: diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index b6610a64037e..0af051ab7731 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -90,7 +90,7 @@ void CB2_InitMysteryEventMenu(void) for (i = 0; i < 2; i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x1E, 0x14); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); LoadUserWindowBorderGfx(0, 1u, 0xD0u); Menu_LoadStdPalAt(0xE0); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON); diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 9e4796bb2059..a6fb542b8bc7 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -102,7 +102,7 @@ static const struct WindowTemplate sMainWindows[] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 0, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 2, .paletteNum = 12, .baseBlock = 0x0013 @@ -118,7 +118,7 @@ static const struct WindowTemplate sMainWindows[] = { .bg = 0, .tilemapLeft = 0, .tilemapTop = 15, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 5, .paletteNum = 13, .baseBlock = 0x004f diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index b059b183c86c..728605a901d5 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -226,9 +226,9 @@ s32 WonderCard_Enter(void) return 0; break; case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); @@ -244,7 +244,7 @@ s32 WonderCard_Enter(void) gPaletteFade.bufferTransferDisabled = TRUE; LoadPalette(sWonderCardData->gfx->pal, 0x10, 0x20); LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->bgTilemapBuffer); - CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); + CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT, 1, 0x008, 0); CopyBgTilemapBufferToVram(2); break; case 4: @@ -291,9 +291,9 @@ s32 WonderCard_Exit(bool32 useCancel) return 0; break; case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); @@ -595,7 +595,7 @@ static const struct WindowTemplate sNews_WindowTemplates[] = { .tilemapLeft = 1, .tilemapTop = 3, .width = 28, - .height = 20, + .height = DISPLAY_TILE_HEIGHT, .paletteNum = 2, .baseBlock = 0x07C } @@ -688,10 +688,10 @@ s32 WonderNews_Enter(void) SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); break; case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); @@ -707,8 +707,8 @@ s32 WonderNews_Enter(void) gPaletteFade.bufferTransferDisabled = TRUE; LoadPalette(sWonderNewsData->gfx->pal, 0x10, 0x20); LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->bgTilemapBuffer); - CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); - CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); + CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, DISPLAY_TILE_WIDTH, 3, 0, 0, DISPLAY_TILE_WIDTH, 3, 1, 8, 0); + CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, DISPLAY_TILE_WIDTH, 3 + DISPLAY_TILE_HEIGHT, 0, 3, DISPLAY_TILE_WIDTH, 3 + DISPLAY_TILE_HEIGHT, 1, 8, 0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(3); break; @@ -760,10 +760,10 @@ s32 WonderNews_Exit(bool32 useCancel) ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); break; case 2: - FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); - FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 24); - FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 24); + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT + 4); + FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT + 4); CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(2); diff --git a/src/naming_screen.c b/src/naming_screen.c index a05e501c2be8..82cb359bd966 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -267,7 +267,7 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = .bg = 0, .tilemapLeft = 0, .tilemapTop = 0, - .width = 30, + .width = DISPLAY_TILE_WIDTH, .height = 2, .paletteNum = 11, .baseBlock = 0x074 diff --git a/src/party_menu.c b/src/party_menu.c index 8c9b09f52364..7330075cc4d5 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2866,7 +2866,7 @@ static bool8 TryMovePartySlot(s16 x, s16 width, u8 *leftMove, u8 *newX, u8 *newW { if (x + width < 0) return FALSE; - if (x > 31) + if (x >= 32) return FALSE; if (x < 0) @@ -2879,7 +2879,7 @@ static bool8 TryMovePartySlot(s16 x, s16 width, u8 *leftMove, u8 *newX, u8 *newW { *leftMove = 0; *newX = x; - if (x + width > 31) + if (x + width >= 32) *newWidth = 32 - x; else *newWidth = width; diff --git a/src/trade.c b/src/trade.c index ba18e8d32cea..9c8fb2e8e9d5 100644 --- a/src/trade.c +++ b/src/trade.c @@ -351,7 +351,7 @@ static void InitTradeMenu(void) FillWindowPixelBuffer(i, PIXEL_FILL(0)); } - FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 15); + FillBgTilemapBufferRect(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT, 15); LoadUserWindowBorderGfx_(0, 20, 0xC0); LoadUserWindowBorderGfx(2, 1, 0xE0); LoadMonIconPalettes(); @@ -2064,13 +2064,13 @@ static void RedrawTradeMenuParty(u8 whichParty) static void Task_DrawSelectionSummary(u8 taskId) { - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); } static void Task_DrawSelectionTrade(u8 taskId) { - FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT); CopyBgTilemapBufferToVram(0); } diff --git a/src/union_room.c b/src/union_room.c index b47ddb41c006..229ea31643f4 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -3680,8 +3680,8 @@ static s32 ListMenuHandler_AllItemsAvailable(u8 *state, u8 *windowId, u8 *listMe if (winTemplateCopy.width > maxWidth) winTemplateCopy.width = maxWidth; - if (winTemplateCopy.tilemapLeft + winTemplateCopy.width > 29) - winTemplateCopy.tilemapLeft = max(29 - winTemplateCopy.width, 0); + if (winTemplateCopy.tilemapLeft + winTemplateCopy.width >= DISPLAY_TILE_WIDTH) + winTemplateCopy.tilemapLeft = max(DISPLAY_TILE_WIDTH - 1 - winTemplateCopy.width, 0); *windowId = AddWindow(&winTemplateCopy); DrawStdWindowFrame(*windowId, FALSE); diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 1ec8be77b5b0..2e1e5621dfbe 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -129,7 +129,7 @@ void CB2_UnionRoomBattle(void) ClearWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF); + FillBgTilemapBufferRect(0, 0, 0, 0, DISPLAY_TILE_WIDTH, DISPLAY_TILE_HEIGHT, 0xF); LoadUserWindowBorderGfx(0, 1, 0xD0); LoadUserWindowBorderGfx_(0, 1, 0xD0); Menu_LoadStdPal(); From 8dad7cc64990b0b130ec67abbf56bb4dcaea67df Mon Sep 17 00:00:00 2001 From: sbird Date: Thu, 29 Sep 2022 17:33:39 +0200 Subject: [PATCH 754/762] [doc] clean up casts in decompress.c --- src/decompress.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/decompress.c b/src/decompress.c index 6e94a54759a9..c16c2cdb311c 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -268,7 +268,7 @@ bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet *src struct SpriteSheet dest; void *buffer; - buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); + buffer = AllocZeroed(src->data[0] >> 8); LZ77UnCompWram(src->data, buffer); dest.data = buffer; @@ -285,7 +285,7 @@ bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette struct SpritePalette dest; void *buffer; - buffer = AllocZeroed(*((u32 *)(&src->data[0])) >> 8); + buffer = AllocZeroed(src->data[0] >> 8); LZ77UnCompWram(src->data, buffer); dest.data = buffer; dest.tag = src->tag; From 79a34411ce339eca21f4c2e58236b348b89c928d Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 29 Sep 2022 15:22:21 -0400 Subject: [PATCH 755/762] Add additional DISPLAY_TILE_WIDTH usage --- src/mystery_gift_menu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index a6fb542b8bc7..4b81c81a3b49 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -640,8 +640,8 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi width++; windowTemplate.width = width; - if (width < 30) - windowTemplate.tilemapLeft = (30 - width) / 2; + if (width < DISPLAY_TILE_WIDTH) + windowTemplate.tilemapLeft = (DISPLAY_TILE_WIDTH - width) / 2; else windowTemplate.tilemapLeft = 0; From a20334f79a48fcf03744ea8a6f779a0a20661a13 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Tue, 4 Oct 2022 22:06:07 -0300 Subject: [PATCH 756/762] Removed unused functions in item header --- include/item.h | 2 -- src/item.c | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/item.h b/include/item.h index bcd9178e5454..c964e7628a19 100644 --- a/include/item.h +++ b/include/item.h @@ -62,13 +62,11 @@ u16 CountTotalItemQuantityInBag(u16 itemId); bool8 AddPyramidBagItem(u16 itemId, u16 count); bool8 RemovePyramidBagItem(u16 itemId, u16 count); const u8 *ItemId_GetName(u16 itemId); -u16 ItemId_GetId(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_GetRegistrability(u16 itemId); u8 ItemId_GetPocket(u16 itemId); u8 ItemId_GetType(u16 itemId); ItemUseFunc ItemId_GetFieldFunc(u16 itemId); diff --git a/src/item.c b/src/item.c index acb00acc7509..8b375df84499 100644 --- a/src/item.c +++ b/src/item.c @@ -880,6 +880,7 @@ const u8 *ItemId_GetName(u16 itemId) return gItems[SanitizeItemId(itemId)].name; } +// Unused u16 ItemId_GetId(u16 itemId) { return gItems[SanitizeItemId(itemId)].itemId; @@ -910,7 +911,7 @@ u8 ItemId_GetImportance(u16 itemId) return gItems[SanitizeItemId(itemId)].importance; } -// unused +// Unused u8 ItemId_GetRegistrability(u16 itemId) { return gItems[SanitizeItemId(itemId)].registrability; From f3bddd1ea61dc19eba13a8a53e84594ca5d42980 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Thu, 6 Oct 2022 19:36:01 -0400 Subject: [PATCH 757/762] Fix typo --- src/naming_screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/naming_screen.c b/src/naming_screen.c index fe858b8795d6..0a0085058e90 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -2280,7 +2280,7 @@ static const struct Subsprite sSubsprites_PageSwapText[] = /* [0_____][] <-1 40x24 [2_____][] <-3 -[3___+_][] <-5/Origin +[4___+_][] <-5/Origin */ static const struct Subsprite sSubsprites_Button[] = { From ea168d1a6b9e6cf6a3581e9cf18f3dd124d08a19 Mon Sep 17 00:00:00 2001 From: tustin2121 Date: Thu, 6 Oct 2022 20:34:46 -0400 Subject: [PATCH 758/762] Fix typo 2: revelations --- src/naming_screen.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/naming_screen.c b/src/naming_screen.c index 0a0085058e90..901c83fdc8d9 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -2182,8 +2182,8 @@ static const struct OamData sOam_32x16 = /* [0_____][] <-1 40x32 [2_____][] <-3 -[3___+_][] <-5/Origin -[4 ][] <-7 +[4___+_][] <-5/Origin +[6 ][] <-7 */ static const struct Subsprite sSubsprites_PageSwapFrame[] = { From 453da8aa8c8da024814fd2aff48b7aeb2e65b76b Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 7 Oct 2022 15:49:00 -0300 Subject: [PATCH 759/762] Moved ILLEGAL_BATTLE_TYPES to include\constants\battle.h and renamed it to BATTLE_TYPE_RECORDED_INVALID --- include/constants/battle.h | 5 +++++ src/recorded_battle.c | 7 +------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/constants/battle.h b/include/constants/battle.h index cbc6c5adcc02..b4f3a4d9ba35 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -78,6 +78,11 @@ #define BATTLE_TYPE_RECORDED_IS_MASTER (1 << 31) #define BATTLE_TYPE_FRONTIER (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE | BATTLE_TYPE_PYRAMID) #define BATTLE_TYPE_FRONTIER_NO_PYRAMID (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE) +#define BATTLE_TYPE_RECORDED_INVALID ((BATTLE_TYPE_LINK | BATTLE_TYPE_SAFARI | BATTLE_TYPE_FIRST_BATTLE \ + | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_ROAMER | BATTLE_TYPE_EREADER_TRAINER \ + | BATTLE_TYPE_KYOGRE_GROUDON | BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI \ + | BATTLE_TYPE_RECORDED | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_SECRET_BASE \ + | BATTLE_TYPE_GROUDON | BATTLE_TYPE_KYOGRE | BATTLE_TYPE_RAYQUAZA)) // Battle Outcome defines #define B_OUTCOME_WON 1 diff --git a/src/recorded_battle.c b/src/recorded_battle.c index dead1dd7e3bc..33228255d21e 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -21,11 +21,6 @@ #include "constants/rgb.h" #define BATTLER_RECORD_SIZE 664 -#define ILLEGAL_BATTLE_TYPES ((BATTLE_TYPE_LINK | BATTLE_TYPE_SAFARI | BATTLE_TYPE_FIRST_BATTLE \ - | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_ROAMER | BATTLE_TYPE_EREADER_TRAINER \ - | BATTLE_TYPE_KYOGRE_GROUDON | BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI \ - | BATTLE_TYPE_RECORDED | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_SECRET_BASE \ - | BATTLE_TYPE_GROUDON | BATTLE_TYPE_KYOGRE | BATTLE_TYPE_RAYQUAZA)) struct PlayerInfo { @@ -301,7 +296,7 @@ static bool32 IsRecordedBattleSaveValid(struct RecordedBattleSave *save) { if (save->battleFlags == 0) return FALSE; - if (save->battleFlags & ILLEGAL_BATTLE_TYPES) + if (save->battleFlags & BATTLE_TYPE_RECORDED_INVALID) return FALSE; if (CalcByteArraySum((void *)(save), sizeof(*save) - 4) != save->checksum) return FALSE; From 044898fe9540a5e8bebb20445b02f2c926eccb3b Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 7 Oct 2022 15:56:00 -0300 Subject: [PATCH 760/762] Documented missing gSoftResetDisabled uses --- src/start_menu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/start_menu.c b/src/start_menu.c index 2a45f8d69c68..7489f09d6917 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -1264,7 +1264,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) } else { - gSoftResetDisabled = 1; + gSoftResetDisabled = TRUE; *state = 1; } break; @@ -1278,7 +1278,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) { ClearContinueGameWarpStatus2(); *state = 3; - gSoftResetDisabled = 0; + gSoftResetDisabled = FALSE; } break; case 3: From dc97eca92d39da1e91706cb8f284f8a1f34d87e1 Mon Sep 17 00:00:00 2001 From: Kurausukun Date: Mon, 10 Oct 2022 21:00:31 -0400 Subject: [PATCH 761/762] combine "unused" field into tile buffer --- src/pokemon_storage_system.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 4d4879d241c3..9a9e551a2a50 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -550,8 +550,7 @@ struct PokemonStorageSystemData u16 *displayMonTilePtr; struct Sprite *displayMonSprite; u16 displayMonPalBuffer[0x40]; - u8 tileBuffer[0x800]; - u8 unusedBuffer[0x1800]; // Unused + u8 tileBuffer[MON_PIC_SIZE * 4]; // 4x the size of a 'Mon sprite to account for Castform u8 itemIconBuffer[0x800]; u8 wallpaperBgTilemapBuffer[0x1000]; u8 displayMenuTilemapBuffer[0x800]; From a10ec0487e61b4d05e191b0cd3d29694b7b4c506 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 12 Oct 2022 19:19:42 -0400 Subject: [PATCH 762/762] Color rotating gate pngs --- graphics/rotating_gates/l1.png | Bin 119 -> 176 bytes graphics/rotating_gates/l2.png | Bin 136 -> 192 bytes graphics/rotating_gates/l3.png | Bin 136 -> 191 bytes graphics/rotating_gates/l4.png | Bin 136 -> 192 bytes graphics/rotating_gates/t1.png | Bin 122 -> 181 bytes graphics/rotating_gates/t2.png | Bin 144 -> 201 bytes graphics/rotating_gates/t3.png | Bin 144 -> 199 bytes graphics/rotating_gates/t4.png | Bin 142 -> 200 bytes 8 files changed, 0 insertions(+), 0 deletions(-) diff --git a/graphics/rotating_gates/l1.png b/graphics/rotating_gates/l1.png index 93680dbfb0a8c63c512aca7db7d1bf4763523cf8..e2f4779e3c050b8234951274766e776c021bcf8b 100644 GIT binary patch delta 158 zcmXTlz&Js&o|%Dxp)n-=IFK?3@Ck7(KDy-p)h+*zPPsRwxZ2V2|B@|Nv#PrtgQgt) z7S+91z%XdblBDWlM@vhI|Ns93HOc1A1L?K)ba4#Pn3$Y!fU!b<0q32)-D(Bt8@Lj7 zeEDA=Vh2=O|GtSK=E3)W`_mg9ykS*g+|b3nV@raBgp~~=L${*o|AIT4WP#=|c)I$z JtaD0e0sxV_M63V+ delta 100 zcmdnMSUy2AjsXZJKRlrcr0hIh978lFCjaPXlUVRYz1D&?=|QcAhe2#?A&vYz zJU(6u4B`oe2}W#8%C#zt8@Os?q6~Ok8y>1KFjQPRAr$#sVLQk~Pgg&ebxsLQ0P}Gk AN&o-= diff --git a/graphics/rotating_gates/l2.png b/graphics/rotating_gates/l2.png index 1d320ed77ba86f1a53fa8a46f00b88f6e9053b65..78bfe902f2ddf9cf2e8a142045ef87b548a52599 100644 GIT binary patch delta 175 zcmeBRJis_XvYwfNfg!>@=Pi&j2=EDUEk3&B|J5!3k50KarMTMB@&A%7SF@_S9fPJE z{T9`|SHLi6%aWw(Vn<6$iU0rq12xI!&N~jIyggkULp(Z@6BGnL#3?Lz@Gh2#>s^nQ zM5w{4h7wkm;%oo^|9JWnsHIw*r9kV)-v93<6)d{7Cu=l|H25A^*)TzrMb?tb?VyH) b76U`w^}v2%%a0;Ja~V8c{an^LB{Ts5;66z3 delta 118 zcmX@W*ugkKGM@nmygnUf22%c>E{-7{oykA^84MPDw0|iauwaRcL*u6vO@XY7xje!h z4AKn~I2IJy8yFa9HZu6J>hSp-b4Xay@6LFGWeyidq~nE&GZI1$g48z$GcwejTy`hX R+}9Iig{P~Z%Q~loCIB>%C@TN} diff --git a/graphics/rotating_gates/l3.png b/graphics/rotating_gates/l3.png index 6e43079d0d0e554c4859c131b1ddd92c0171fb3a..28aa331b4b3b146b8c144d2cfb175ee11e0d28a6 100644 GIT binary patch delta 174 zcmeBR+|M{cvYwfNfg!>@=Pi&j2=EDUEk3&B|J5!3k50KarMTMB@&A%7SF@_S9fPJE z{T9`|SHLi6%aWw(Vn<6$iU0rq12xI!&N~jIygXeTLp(Z@6C_v{H!vNjZft1UUCybo z!+2GL1uKj5r~mbTKK%je*xSuxAoAzl|L;6P7Tt0?71UWZ)DkolQdk|``?G+MzR0^ delta 118 zcmdnb*ugkKGM@nmygnUf22%c>E{-7{oykA^84P-~Btje9531KPaZQ=Rp%EY#>M)0? zN%3TZV#BGw2M!!q(!ygPvcbYYQkhY?R);IV=RknN39hETBP@%#+(d!8=WsDB+q67{ Svud&<$O=zaKbLh*2~7amTPC>x diff --git a/graphics/rotating_gates/l4.png b/graphics/rotating_gates/l4.png index 77c269dc53678960a8b2e18bbef202e1e1b2258b..c1e68ccbc6632e0631528bd2a59d9d36640ce5b9 100644 GIT binary patch delta 175 zcmeBRJis_XvYwfNfg!>@=Pi&j2=EDUEk3&B|J5!3k50KarMTMB@&A%7SF@_S9fPJE z{T9`|SHLi6%aWw(Vn<6$iU0rq12xI!&N~jIyggkULp(Z@6BGnL#3?Lz@Gh2#>s^nQ zM5w{4h7wkm;%oo^|9JWnsHIw5GC||V-v93xJ=+d&Np bEd~aTmYn5Ad$$9PWnl1h^>bP0l+XkK-o{AI delta 118 zcmX@W*ugkKGM@nmygnUf22%c>E{-7{oykA^84MPDw0|iauwaRcL*u6vO@XY7xje!h z4AKn~I2IJy8yFa9Dl+r1>hSp-^Eluk-_0Z0$~Zx?o|%Dxp)n-=IFK?3@Ck7(KDy-p)h+*zPPsRwxZ2V2|B@|Nv#PrtgQgt) z7S+91z%XdblBDWlM@vhI|Ns93HOc1A1L<|}ba4#Pn3$Y!fU!b<0q32)-D(Bt8@Lj7 zeEDA=Vh2=O|GtSK=E3)W`_mg9ykS*g+|b3nV@raBtko1|4&_Y`85o43JTF$Rp6CZO OjKR~@&t;ucLK6V^RYqh0 delta 103 zcmdnWST#X1kpT!MKRlrcq#Qk6978lFCjaPXlUVRYz1D&?=|QcAhe2#?A&vYz zJU(6u4B`oe2}W#8%C#zt8@Os?q6~OsPcgO#-Yj5X_&9TmgUh3sR*<2du6{1-oD!M< DS@a*C diff --git a/graphics/rotating_gates/t2.png b/graphics/rotating_gates/t2.png index 668feebfbbac557494c35bcedb1b67801d501f87..6e13aefda4a16bf1a5ff6a88544b45e8ad65fbc3 100644 GIT binary patch delta 184 zcmbQhc#?5~WIZzj14D#+&RZa55a1KyT6}cL|EpX6ADwbe*Sj7q ziBN-84JE8B#n=A-|MB!EP)oHqOM%vpz5m}!Dp+)DPd028Y4AO;vSETKi>zf-Lx3;i k!3io6Gy0nX8^jqH9?nlqd}3oF1+;*{)78&qol`;+0LcSQoB#j- delta 126 zcmX@fIDv73WH|#6czrs|45Y$6T^vI^I+K6+GZ-xRX#Y|;V8Id>hsIAUngUrDb9sb2 z7^E8}a4aaYH!v{JY-I3b)#39w=8&+Y-<|OW%N#C_NXH8k7qfC)6%pX^Y-+V+lL$3f b#URPRAj3GB>wS>o1dvspu6{1-oD!MyVhoL^0DDrj2i4YJD9)z4*}Q$iB}1-U4J diff --git a/graphics/rotating_gates/t4.png b/graphics/rotating_gates/t4.png index 5e3a947c5c4eab5a0f11041dff02d4e60d2eb818..fa3a77e38a5a66ae52491f9d2a57dd00ebf36d36 100644 GIT binary patch delta 158 zcmeBUJi$0YvYwfNfg!>@=Pi&j2=EDUEk3&B|J5!3k50KarMTMB@&A%7SF@_S9fPJE z{T9`|SHLi6%aWw(Vn<6$iU0rq12xI!&N~jIf<0XvLp(Z@6C_v{H!vNjZft1UUCybo z!+2GL1uKj5r~mbTKK%je*vrjiA^PXu|L;5kbB>CxRG1hiBl3QKYN7M)0? zN%3TZV#BGw2M!!q!op-By1~LglDToBo!rD3G9tVWCv(MpT`CGP(9_k=Wt~$(697Jb BAkP2*